commit c282272287414af51690ec8d463ff74e4a5174b6 Author: scawful Date: Tue Dec 30 07:43:37 2025 -0500 init: AFS Scawful baseline (config helpers) diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..f4ab9c1 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,22 @@ +# Agent Instructions (AFS Scawful Plugin) + +## Do not invent or market +- No marketing language or product claims. +- If something is unknown, state "Unknown / needs verification" and propose a test. + +## Truth policy +- Only claim what is evidenced in this repo or cited notes. +- Do not guess roadmap, compatibility, or performance. + +## Scope control +- Research-only plugin scope; keep to Scawful-specific tooling. + +## Provenance / separation +- Do not use employer or internal material. +- If provenance is unclear, leave it out. + +## Output style +- Concise, engineering notebook tone. + +## How to verify (tests/commands) +- Unknown / needs verification (no test harness yet). diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ea1e5d8 --- /dev/null +++ b/LICENSE @@ -0,0 +1,6 @@ +Copyright (c) 2025 scawful + +All rights reserved. + +This repository is research-only and is not licensed for redistribution, +modification, or commercial use without explicit permission. diff --git a/README.md b/README.md new file mode 100644 index 0000000..b54441b --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +# AFS Scawful Plugin + +Research-only. Not a product. + +Scope: Scawful-specific plugin utilities, generators, and validators. + +Provenance: avoid employer/internal sources; skip unclear origins. + +Docs: +- `docs/STATUS.md` +- `docs/ROADMAP.md` +- `docs/REPO_FACTS.json` diff --git a/data/bank_00_routines.json b/data/bank_00_routines.json new file mode 100644 index 0000000..57b311f --- /dev/null +++ b/data/bank_00_routines.json @@ -0,0 +1,1046 @@ +[ + { + "name": "Reset", + "code": "Reset:\n #_008000: SEI\n\n #_008001: STZ.w NMITIMEN\n #_008004: STZ.w HDMAEN\n #_008007: STZ.w MDMAEN\n\n #_00800A: STZ.w APUIO0\n #_00800D: STZ.w APUIO1\n #_008010: STZ.w APUIO2\n #_008013: STZ.w APUIO3\n\n #_008016: LDA.b #$80 ; Enable force blank\n #_008018: STA.w INIDISP\n\n #_00801B: CLC\n #_00801C: XCE\n\n #_00801D: REP #$28\n\n #_00801F: LDA.w #$0000\n #_008022: TCD\n\n #_008023: LDA.w #$01FF\n #_008026: TCS\n\n #_008027: SEP #$30\n\n #_008029: JSR LoadIntroSongBank\n #_00802C: JSR InitializeMemoryAndSRAM\n\n #_00802F: LDA.b #$81 ; enable NMI and auto joypad read\n #_008031: STA.w NMITIMEN\n\n; =========================================================\n" + }, + { + "name": "MainGameLoop", + "code": "MainGameLoop:\n #_008034: LDA.b $12\n #_008036: BEQ MainGameLoop\n\n #_008038: CLI\n\n #_008039: BRA .do_frame\n\n; ---------------------------------------------------------\n\n.frame_step\n #_00803B: LDA.b $F6\n #_00803D: AND.b #$20\n #_00803F: BEQ .L_not_pressed\n\n #_008041: INC.w $0FD7\n\n.L_not_pressed\n #_008044: LDA.b $F6\n #_008046: AND.b #$10\n #_008048: BNE .do_frame\n\n #_00804A: LDA.w $0FD7\n #_00804D: AND.b #$01\n #_00804F: BNE .skip_frame\n\n; ---------------------------------------------------------\n\n.do_frame\n #_008051: INC.b $1A\n\n #_008053: JSR ClearOAMBuffer\n #_008056: JSL Module_MainRouting\n\n.skip_frame\n #_00805A: JSR NMI_PrepareSprites\n\n #_00805D: STZ.b $12\n\n #_00805F: BRA MainGameLoop\n\n; =========================================================\n\npool Module_MainRouting\n\n.low\n #_008061: db Module00_Intro>>0\n #_008062: db Module01_FileSelect>>0\n #_008063: db Module02_CopyFile>>0\n #_008064: db Module03_KILLFile>>0\n\n #_008065: db Module04_NameFile>>0\n #_008066: db Module05_LoadFile>>0\n #_008067: db Module06_UnderworldLoad>>0\n #_008068: db Module07_Underworld>>0\n\n #_008069: db Module08_OverworldLoad>>0\n #_00806A: db Module09_Overworld>>0\n #_00806B: db Module0A_OverworldSpecialLoad>>0\n #_00806C: db Module0B_OverworldSpecial>>0\n\n #_00806D: db Module0C_Unused>>0\n #_00806E: db Module0D_Unused>>0\n #_00806F: db Module0E_Interface>>0\n #_008070: db Module0F_SpotlightClose>>0\n\n #_008071: db Module10_SpotlightOpen>>0\n #_008072: db Module11_UnderworldFallingEntrance>>0\n #_008073: db Module12_GameOver>>0\n #_008074: db Module13_BossVictory_Pendant>>0\n\n #_008075: db Module14_Attract>>0\n #_008076: db Module15_MirrorWarpFromAga>>0\n #_008077: db Module16_BossVictory_Crystal>>0\n #_008078: db Module17_SaveAndQuit>>0\n\n #_008079: db Module18_GanonEmerges>>0\n #_00807A: db Module19_TriforceRoom>>0\n #_00807B: db Module1A_Credits>>0\n #_00807C: db Module1B_SpawnSelect>>0\n\n; ---------------------------------------------------------\n\n.mid\n #_00807D: db Module00_Intro>>8\n #_00807E: db Module01_FileSelect>>8\n #_00807F: db Module02_CopyFile>>8\n #_008080: db Module03_KILLFile>>8\n\n #_008081: db Module04_NameFile>>8\n #_008082: db Module05_LoadFile>>8\n #_008083: db Module06_UnderworldLoad>>8\n #_008084: db Module07_Underworld>>8\n\n #_008085: db Module08_OverworldLoad>>8\n #_008086: db Module09_Overworld>>8\n #_008087: db Module0A_OverworldSpecialLoad>>8\n #_008088: db Module0B_OverworldSpecial>>8\n\n #_008089: db Module0C_Unused>>8\n #_00808A: db Module0D_Unused>>8\n #_00808B: db Module0E_Interface>>8\n #_00808C: db Module0F_SpotlightClose>>8\n\n #_00808D: db Module10_SpotlightOpen>>8\n #_00808E: db Module11_UnderworldFallingEntrance>>8\n #_00808F: db Module12_GameOver>>8\n #_008090: db Module13_BossVictory_Pendant>>8\n\n #_008091: db Module14_Attract>>8\n #_008092: db Module15_MirrorWarpFromAga>>8\n #_008093: db Module16_BossVictory_Crystal>>8\n #_008094: db Module17_SaveAndQuit>>8\n\n #_008095: db Module18_GanonEmerges>>8\n #_008096: db Module19_TriforceRoom>>8\n #_008097: db Module1A_Credits>>8\n #_008098: db Module1B_SpawnSelect>>8\n\n; ---------------------------------------------------------\n\n.bank\n #_008099: db Module00_Intro>>16\n #_00809A: db Module01_FileSelect>>16\n #_00809B: db Module02_CopyFile>>16\n #_00809C: db Module03_KILLFile>>16\n\n #_00809D: db Module04_NameFile>>16\n #_00809E: db Module05_LoadFile>>16\n #_00809F: db Module06_UnderworldLoad>>16\n #_0080A0: db Module07_Underworld>>16\n\n #_0080A1: db Module08_OverworldLoad>>16\n #_0080A2: db Module09_Overworld>>16\n #_0080A3: db Module0A_OverworldSpecialLoad>>16\n #_0080A4: db Module0B_OverworldSpecial>>16\n\n #_0080A5: db Module0C_Unused>>16\n #_0080A6: db Module0D_Unused>>16\n #_0080A7: db Module0E_Interface>>16\n #_0080A8: db Module0F_SpotlightClose>>16\n\n #_0080A9: db Module10_SpotlightOpen>>16\n #_0080AA: db Module11_UnderworldFallingEntrance>>16\n #_0080AB: db Module12_GameOver>>16\n #_0080AC: db Module13_BossVictory_Pendant>>16\n\n #_0080AD: db Module14_Attract>>16\n #_0080AE: db Module15_MirrorWarpFromAga>>16\n #_0080AF: db Module16_BossVictory_Crystal>>16\n #_0080B0: db Module17_SaveAndQuit>>16\n\n #_0080B1: db Module18_GanonEmerges>>16\n #_0080B2: db Module19_TriforceRoom>>16\n #_0080B3: db Module1A_Credits>>16\n #_0080B4: db Module1B_SpawnSelect>>16\n\npool off\n\n; ---------------------------------------------------------\n" + }, + { + "name": "Module_MainRouting", + "code": "Module_MainRouting:\n #_0080B5: LDY.b $10\n\n #_0080B7: LDA.w .low,Y\n #_0080BA: STA.b $03\n\n #_0080BC: LDA.w .mid,Y\n #_0080BF: STA.b $04\n\n #_0080C1: LDA.w .bank,Y\n #_0080C4: STA.b $05\n\n #_0080C6: JML.w [$0003]\n\n; =========================================================\n" + }, + { + "name": "Interrupt_NMI", + "code": "Interrupt_NMI:\n #_0080C9: SEI\n #_0080CA: REP #$30\n\n #_0080CC: PHA\n #_0080CD: PHX\n #_0080CE: PHY\n\n #_0080CF: PHD\n #_0080D0: PHB\n\n #_0080D1: LDA.w #$0000\n #_0080D4: TCD\n\n #_0080D5: PHK\n #_0080D6: PLB\n\n #_0080D7: SEP #$30\n\n #_0080D9: LDA.w RDNMI\n\n #_0080DC: LDA.w $012C\n #_0080DF: BNE .song_input\n\n #_0080E1: LDA.w APUIO0\n #_0080E4: CMP.w $0133\n #_0080E7: BNE .handle_sfx1\n\n #_0080E9: STZ.w APUIO0\n\n #_0080EC: BRA .handle_sfx1\n\n.song_input\n #_0080EE: CMP.w $0133\n #_0080F1: BEQ .handle_sfx1\n\n #_0080F3: STA.w APUIO0\n #_0080F6: STA.w $0133\n\n #_0080F9: CMP.b #$F2 ; SONG F2 - half volume\n #_0080FB: BCS .song_command\n\n #_0080FD: STA.w $0130\n\n.song_command\n #_008100: STZ.w $012C\n\n.handle_sfx1\n #_008103: LDA.w $012D\n #_008106: BNE .new_sfx1\n\n #_008108: LDA.w APUIO1\n #_00810B: CMP.w $0131\n #_00810E: BNE .handle_SFX23\n\n #_008110: STZ.w APUIO1\n\n #_008113: BRA .handle_SFX23\n\n.new_sfx1\n #_008115: STA.w $0131\n #_008118: STA.w APUIO1\n\n #_00811B: STZ.w $012D\n\n.handle_SFX23\n #_00811E: LDA.w $012E\n #_008121: STA.w APUIO2\n\n #_008124: LDA.w $012F\n #_008127: STA.w APUIO3\n\n #_00812A: STZ.w $012E\n #_00812D: STZ.w $012F\n\n #_008130: LDA.b #$80\n #_008132: STA.w INIDISP\n #_008135: STZ.w HDMAEN\n\n #_008138: LDA.b $12\n #_00813A: BNE .lag_frame\n\n #_00813C: INC.b $12\n\n #_00813E: JSR NMI_DoUpdates\n #_008141: JSR NMI_ReadJoypads\n\n.lag_frame\n #_008144: LDA.w $012A\n #_008147: BEQ NMI_NoIRQThread\n\n #_008149: JMP.w NMI_SwitchThread\n\n; =========================================================\n" + }, + { + "name": "NMI_NoIRQThread", + "code": "NMI_NoIRQThread:\n #_00814C: LDA.b $96\n #_00814E: STA.w W12SEL\n\n #_008151: LDA.b $97\n #_008153: STA.w W34SEL\n\n #_008156: LDA.b $98\n #_008158: STA.w WOBJSEL\n\n #_00815B: LDA.b $99\n #_00815D: STA.w CGWSEL\n\n #_008160: LDA.b $9A\n #_008162: STA.w CGADSUB\n\n #_008165: LDA.b $9C\n #_008167: STA.w COLDATA\n\n #_00816A: LDA.b $9D\n #_00816C: STA.w COLDATA\n\n #_00816F: LDA.b $9E\n #_008171: STA.w COLDATA\n\n #_008174: LDA.b $1C\n #_008176: STA.w TM\n\n #_008179: LDA.b $1D\n #_00817B: STA.w TS\n\n #_00817E: LDA.b $1E\n #_008180: STA.w TMW\n\n #_008183: LDA.b $1F\n #_008185: STA.w TSW\n\n #_008188: LDA.w $0120\n #_00818B: STA.w BG1HOFS\n\n #_00818E: LDA.w $0121\n #_008191: STA.w BG1HOFS\n\n #_008194: LDA.w $0124\n #_008197: STA.w BG1VOFS\n\n #_00819A: LDA.w $0125\n #_00819D: STA.w BG1VOFS\n\n #_0081A0: LDA.w $011E\n #_0081A3: STA.w BG2HOFS\n\n #_0081A6: LDA.w $011F\n #_0081A9: STA.w BG2HOFS\n\n #_0081AC: LDA.w $0122\n #_0081AF: STA.w BG2VOFS\n\n #_0081B2: LDA.w $0123\n #_0081B5: STA.w BG2VOFS\n\n #_0081B8: LDA.b $E4\n #_0081BA: STA.w BG3HOFS\n\n #_0081BD: LDA.b $E5\n #_0081BF: STA.w BG3HOFS\n\n #_0081C2: LDA.b $EA\n #_0081C4: STA.w BG3VOFS\n\n #_0081C7: LDA.b $EB\n #_0081C9: STA.w BG3VOFS\n\n #_0081CC: LDA.b $95\n #_0081CE: STA.w MOSAIC\n\n; ---------------------------------------------------------\n\n #_0081D1: LDA.b $94\n #_0081D3: STA.w BGMODE\n\n #_0081D6: AND.b #$07\n #_0081D8: CMP.b #$07\n #_0081DA: BNE .not_mode7\n\n #_0081DC: STZ.w M7B\n #_0081DF: STZ.w M7B\n #_0081E2: STZ.w M7C\n #_0081E5: STZ.w M7C\n\n #_0081E8: LDA.w $0638\n #_0081EB: STA.w M7X\n\n #_0081EE: LDA.w $0639\n #_0081F1: STA.w M7X\n\n #_0081F4: LDA.w $063A\n #_0081F7: STA.w M7Y\n\n #_0081FA: LDA.w $063B\n #_0081FD: STA.w M7Y\n\n; ---------------------------------------------------------\n\n.not_mode7\n #_008200: LDA.w $0128\n #_008203: BEQ .IRQ_inactive\n\n #_008205: LDA.w TIMEUP\n\n #_008208: LDA.b #$80\n #_00820A: STA.w VTIMEL\n #_00820D: STZ.w VTIMEH\n\n #_008210: STZ.w HTIMEL\n #_008213: STZ.w HTIMEH\n\n #_008216: LDA.b #$A1\n #_008218: STA.w NMITIMEN\n\n; ---------------------------------------------------------\n\n.IRQ_inactive\n #_00821B: LDA.b $13\n #_00821D: STA.w INIDISP\n\n #_008220: LDA.b $9B\n #_008222: STA.w HDMAEN\n\n #_008225: REP #$30\n\n #_008227: PLB\n #_008228: PLD\n\n #_008229: PLY\n #_00822A: PLX\n #_00822B: PLA\n\n; =========================================================\n" + }, + { + "name": "Interrupt_Unused", + "code": "Interrupt_Unused:\n #_00822C: RTI" + }, + { + "name": "NMI_SwitchThread", + "code": "NMI_SwitchThread:\n #_00822D: JSR NMI_UpdateIRQGFX\n\n #_008230: LDA.b $FF\n #_008232: STA.w VTIMEL\n #_008235: STZ.w VTIMEH\n\n #_008238: LDA.b #$A1 ; enable NMI, IRQ, auto joypad\n #_00823A: STA.w NMITIMEN\n\n #_00823D: LDA.b $96\n #_00823F: STA.w W12SEL\n\n #_008242: LDA.b $97\n #_008244: STA.w W34SEL\n\n #_008247: LDA.b $98\n #_008249: STA.w WOBJSEL\n\n #_00824C: LDA.b $99\n #_00824E: STA.w CGWSEL\n\n #_008251: LDA.b $9A\n #_008253: STA.w CGADSUB\n\n #_008256: LDA.b $9C\n #_008258: STA.w COLDATA\n\n #_00825B: LDA.b $9D\n #_00825D: STA.w COLDATA\n\n #_008260: LDA.b $9E\n #_008262: STA.w COLDATA\n\n #_008265: LDA.b $1C\n #_008267: STA.w TM\n\n #_00826A: LDA.b $1D\n #_00826C: STA.w TS\n\n #_00826F: LDA.b $1E\n #_008271: STA.w TMW\n\n #_008274: LDA.b $1F\n #_008276: STA.w TSW\n\n; ---------------------------------------------------------\n\n #_008279: LDA.w $0120\n #_00827C: STA.w BG1HOFS\n\n #_00827F: LDA.w $0121\n #_008282: STA.w BG1HOFS\n\n #_008285: LDA.w $0124\n #_008288: STA.w BG1VOFS\n\n #_00828B: LDA.w $0125\n #_00828E: STA.w BG1VOFS\n\n #_008291: LDA.w $011E\n #_008294: STA.w BG2HOFS\n\n #_008297: LDA.w $011F\n #_00829A: STA.w BG2HOFS\n\n #_00829D: LDA.w $0122\n #_0082A0: STA.w BG2VOFS\n\n #_0082A3: LDA.w $0123\n #_0082A6: STA.w BG2VOFS\n\n #_0082A9: LDA.b $E4\n #_0082AB: STA.w BG3HOFS\n\n #_0082AE: LDA.b $E5\n #_0082B0: STA.w BG3HOFS\n\n #_0082B3: LDA.b $EA\n #_0082B5: STA.w BG3VOFS\n\n #_0082B8: LDA.b $EB\n #_0082BA: STA.w BG3VOFS\n\n #_0082BD: LDA.b $13\n #_0082BF: STA.w INIDISP\n\n #_0082C2: LDA.b $9B\n #_0082C4: STA.w HDMAEN\n\n; ---------------------------------------------------------\n\n #_0082C7: REP #$30\n\n #_0082C9: TSC\n #_0082CA: TAX\n\n #_0082CB: LDA.w $1F0A\n #_0082CE: TCS\n\n #_0082CF: STX.w $1F0A\n\n #_0082D2: PLB\n #_0082D3: PLD\n\n #_0082D4: PLY\n #_0082D5: PLX\n #_0082D6: PLA\n\n #_0082D7: RTI" + }, + { + "name": "Interrupt_IRQ", + "code": "Interrupt_IRQ:\n #_0082D8: SEI\n #_0082D9: REP #$30\n\n #_0082DB: PHA\n #_0082DC: PHX\n #_0082DD: PHY\n\n #_0082DE: PHD\n #_0082DF: PHB\n\n #_0082E0: PHK\n #_0082E1: PLB\n\n #_0082E2: SEP #$30\n\n #_0082E4: LDA.w $012A\n #_0082E7: BNE .polyhedral\n\n #_0082E9: LDA.w TIMEUP\n #_0082EC: BPL .exit\n\n #_0082EE: LDA.w $0128\n #_0082F1: BEQ .exit\n\n.wait_for_hblank\n #_0082F3: BIT.w HVBJOY\n #_0082F6: BVC .wait_for_hblank\n\n #_0082F8: LDA.w $0630\n #_0082FB: STA.w BG3HOFS\n\n #_0082FE: LDA.w $0631\n #_008301: STA.w BG3HOFS\n\n #_008304: STZ.w BG3VOFS\n #_008307: STZ.w BG3VOFS\n\n #_00830A: LDA.w $0128\n #_00830D: BPL .exit\n\n #_00830F: STZ.w $0128\n\n #_008312: LDA.b #$81\n #_008314: STA.w NMITIMEN\n\n.exit\n #_008317: REP #$30\n\n #_008319: PLB\n #_00831A: PLD\n\n #_00831B: PLY\n #_00831C: PLX\n #_00831D: PLA\n\n #_00831E: RTI" + }, + { + "name": "EraseTilemaps_triforce", + "code": "EraseTilemaps_triforce:\n #_008333: REP #$20\n\n #_008335: LDA.w #$00A9\n #_008338: STA.b $02\n\n #_00833A: LDA.w #$007F\n\n #_00833D: BRA EraseTilemaps\n\n; ---------------------------------------------------------\n" + }, + { + "name": "EraseTilemaps_dungeonmap", + "code": "EraseTilemaps_dungeonmap:\n #_00833F: REP #$20\n\n #_008341: LDA.w #$007F\n #_008344: STA.b $02\n\n #_008346: LDA.w #$0300\n\n #_008349: BRA EraseTilemaps\n\n; ---------------------------------------------------------\n" + }, + { + "name": "EraseTilemaps_normal", + "code": "EraseTilemaps_normal:\n #_00834B: REP #$20\n\n #_00834D: LDA.w #$007F\n #_008350: STA.b $02\n\n #_008352: LDA.w #$01EC\n\n; ---------------------------------------------------------\n" + }, + { + "name": "EraseTilemaps", + "code": "EraseTilemaps:\n #_008355: STA.b $00\n\n #_008357: STZ.w VMAIN\n #_00835A: STZ.w VMADDR\n\n #_00835D: LDA.w #$1808\n #_008360: STA.w DMA1MODE\n\n #_008363: STZ.w DMA1ADDRB\n\n #_008366: LDA.w #$0000\n #_008369: STA.w DMA1ADDRL\n\n #_00836C: LDA.w #$2000\n #_00836F: STA.w DMA1SIZE\n\n #_008372: LDY.b #$02\n #_008374: STY.w MDMAEN\n\n #_008377: LDX.b #$80\n #_008379: STX.w VMAIN\n\n #_00837C: STZ.w VMADDR\n\n #_00837F: STA.w DMA1SIZE\n\n #_008382: LDA.w #$1908\n #_008385: STA.w DMA1MODE\n\n #_008388: LDA.w #$0001\n #_00838B: STA.w DMA1ADDRL\n\n #_00838E: STY.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008391: LDA.b $02\n #_008393: STA.b $00\n\n #_008395: STZ.w VMAIN\n\n #_008398: LDA.w #$6000 ; VRAM $C000\n #_00839B: STA.w VMADDR\n\n #_00839E: LDA.w #$1808\n #_0083A1: STA.w DMA1MODE\n\n #_0083A4: LDA.w #$0000\n #_0083A7: STA.w DMA1ADDRL\n\n #_0083AA: LDA.w #$0800\n #_0083AD: STA.w DMA1SIZE\n\n #_0083B0: STY.w MDMAEN\n\n #_0083B3: STX.w VMAIN\n #_0083B6: STA.w DMA1SIZE\n\n #_0083B9: LDA.w #$6000 ; VRAM $C000\n #_0083BC: STA.w VMADDR\n\n #_0083BF: LDA.w #$1908\n #_0083C2: STA.w DMA1MODE\n\n #_0083C5: LDA.w #$0001\n #_0083C8: STA.w DMA1ADDRL\n\n #_0083CB: STY.w MDMAEN\n\n #_0083CE: SEP #$20\n\n #_0083D0: RTL" + }, + { + "name": "NMI_ReadJoypads", + "code": "NMI_ReadJoypads:\n #_0083D1: STZ.w JOYPAD\n\n #_0083D4: LDA.w JOY1L\n #_0083D7: STA.b $00\n\n #_0083D9: LDA.w JOY1H\n #_0083DC: STA.b $01\n\n #_0083DE: LDA.b $00\n #_0083E0: STA.b $F2\n\n #_0083E2: TAY\n\n #_0083E3: EOR.b $FA\n #_0083E5: AND.b $F2\n #_0083E7: STA.b $F6\n\n #_0083E9: STY.b $FA\n\n #_0083EB: LDA.b $01\n #_0083ED: STA.b $F0\n\n #_0083EF: TAY\n\n #_0083F0: EOR.b $F8\n #_0083F2: AND.b $F0\n #_0083F4: STA.b $F4\n\n #_0083F6: STY.b $F8\n\n; =========================================================\n\n#Player2JoypadReturn:\n #_0083F8: RTS" + }, + { + "name": "ClearOAMBuffer", + "code": "ClearOAMBuffer:\n #_00841E: LDX.b #$60\n\n.next\n #_008420: LDA.b #$F0\n #_008422: STA.w $0801,X\n #_008425: STA.w $0805,X\n #_008428: STA.w $0809,X\n #_00842B: STA.w $080D,X\n\n #_00842E: STA.w $0811,X\n #_008431: STA.w $0815,X\n #_008434: STA.w $0819,X\n #_008437: STA.w $081D,X\n\n #_00843A: STA.w $0881,X\n #_00843D: STA.w $0885,X\n #_008440: STA.w $0889,X\n #_008443: STA.w $088D,X\n\n #_008446: STA.w $0891,X\n #_008449: STA.w $0895,X\n #_00844C: STA.w $0899,X\n #_00844F: STA.w $089D,X\n\n #_008452: STA.w $0901,X\n #_008455: STA.w $0905,X\n #_008458: STA.w $0909,X\n #_00845B: STA.w $090D,X\n\n #_00845E: STA.w $0911,X\n #_008461: STA.w $0915,X\n #_008464: STA.w $0919,X\n #_008467: STA.w $091D,X\n\n #_00846A: STA.w $0981,X\n #_00846D: STA.w $0985,X\n #_008470: STA.w $0989,X\n #_008473: STA.w $098D,X\n\n #_008476: STA.w $0991,X\n #_008479: STA.w $0995,X\n #_00847C: STA.w $0999,X\n #_00847F: STA.w $099D,X\n\n #_008482: TXA\n #_008483: SEC\n #_008484: SBC.b #$20\n #_008486: TAX\n\n #_008487: BPL .next\n\n #_008489: RTS" + }, + { + "name": "SaveFileOffsets", + "code": "SaveFileOffsets:\n #_00848A: dw $700000\n\n; ---------------------------------------------------------\n" + }, + { + "name": "SaveFileCopyOffsets", + "code": "SaveFileCopyOffsets:\n #_00848C: dw $700000, $700500\n #_008490: dw $700A00, $700F00\n\n; =========================================================\n" + }, + { + "name": "DynamicOAM_PushBlockAddresses", + "code": "DynamicOAM_PushBlockAddresses:\n #_008494: dw $7EA480 ; 4/4\n #_008496: dw $7EA4C0 ; 3/4\n #_008498: dw $7EA500 ; 2/4\n #_00849A: dw $7EA540 ; 1/4\n\n; ---------------------------------------------------------\n" + }, + { + "name": "LinkOAM_SwordAddresses", + "code": "LinkOAM_SwordAddresses:\n #_00849C: dw $7E9000, $7E9020, $7E9060, $7E91E0 ; vertical, slash1, left-up, horizontal\n #_0084A4: dw $7E90A0, $7E90C0, $7E9100, $7E9140 ; up-left, slash2, slash whiff, slash3\n\n; ---------------------------------------------------------\n" + }, + { + "name": "LinkOAM_ShieldAddresses", + "code": "LinkOAM_ShieldAddresses:\n #_0084AC: dw $7E9300 ; down\n #_0084AE: dw $7E9340 ; up\n #_0084B0: dw $7E9380 ; side\n\n; ---------------------------------------------------------\n" + }, + { + "name": "DynamicOAM_LinkItemAddresses", + "code": "DynamicOAM_LinkItemAddresses:\n #_0084B2: dw $7E9480, $7E94C0, $7E94E0, $7E95C0 ; rod\n #_0084BA: dw $7E9500, $7E9520, $7E9540, $7E9480 ; rod\n #_0084C2: dw $7E9640, $7E9680, $7E96A0, $7E9780 ; hammer\n #_0084CA: dw $7E96C0, $7E96E0, $7E9700, $7E9480 ; hammer\n\n #_0084D2: dw $7E9800, $7E9840, $7E98A0, $7E9480 ; bow\n #_0084DA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0084E2: dw $7E9AC0, $7E9B00, $7E9480, $7E9480 ; hookshot tip\n #_0084EA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_0084F2: dw $7E9BC0, $7E9C00, $7E9C40, $7E9C80 ; net\n #_0084FA: dw $7E9CC0, $7E9D00, $7E9D40, $7E9480 ; net\n #_008502: dw $7E9F40, $7E9F80, $7E9FC0, $7E9FE0 ; cane\n #_00850A: dw $7EA000, $7E9480, $7E9480, $7E9480 ; cane\n\n #_008512: dw $7EA100, $7E9480, $7E9480, $7E9480 ; book\n #_00851A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008522: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00852A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008532: dw $7E98C0, $7E9900, $7E99C0, $7E99E0 ; shovel, ZZzzzz\n #_00853A: dw $7E9A00, $7E9A20, $7E9A40, $7E9A60 ; Zzzzz, \u266a\n #_008542: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00854A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008552: dw $7E9A80, $7E9480, $7E9480, $7E9480 ; null\n #_00855A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008562: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00856A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008572: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00857A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008582: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00858A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008592: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00859A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0085A2: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0085AA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n; ---------------------------------------------------------\n\n.offsets\n #_0085B2: dw $00E0, $00E0, $0060, $0080\n #_0085BA: dw $01C0, $00E0, $0040, $0000\n #_0085C2: dw $0080, $0000, $0040, $0000\n #_0085CA: dw $0000, $0000, $0000, $0000\n\n; =========================================================\n" + }, + { + "name": "RupeeTile_anim_step", + "code": "RupeeTile_anim_step:\n #_0085D2: dw $000E\n #_0085D4: dw $0004\n #_0085D6: dw $0006\n #_0085D8: dw $0010\n #_0085DA: dw $0006\n #_0085DC: dw $0008\n\n; ---------------------------------------------------------\n" + }, + { + "name": "RupeeTile_anim_stepOffset", + "code": "RupeeTile_anim_stepOffset:\n #_0085DE: dw $0000, $0020, $0040, $0000\n #_0085E6: dw $0020, $0040, $0000, $0040\n #_0085EE: dw $0080, $0000, $0040, $0080\n\n; =========================================================\n" + }, + { + "name": "StarTileOffset", + "code": "StarTileOffset:\n #_0085F6: dw $7EB340\n #_0085F8: dw $7EB400\n #_0085FA: dw $7EB4C0\n\n; =========================================================\n" + }, + { + "name": "NMI_PrepareSprites", + "code": "NMI_PrepareSprites:\n #_0085FC: LDY.b #$1C\n\n.next_block\n #_0085FE: TYA\n #_0085FF: ASL A\n #_008600: ASL A\n #_008601: TAX\n\n #_008602: LDA.w $0A23,X\n #_008605: ASL A\n #_008606: ASL A\n\n #_008607: ORA.w $0A22,X\n #_00860A: ASL A\n #_00860B: ASL A\n\n #_00860C: ORA.w $0A21,X\n #_00860F: ASL A\n #_008610: ASL A\n\n #_008611: ORA.w $0A20,X\n #_008614: STA.w $0A00,Y\n\n #_008617: LDA.w $0A27,X\n #_00861A: ASL A\n #_00861B: ASL A\n\n #_00861C: ORA.w $0A26,X\n #_00861F: ASL A\n #_008620: ASL A\n\n #_008621: ORA.w $0A25,X\n #_008624: ASL A\n #_008625: ASL A\n\n #_008626: ORA.w $0A24,X\n #_008629: STA.w $0A01,Y\n\n #_00862C: LDA.w $0A2B,X\n #_00862F: ASL A\n #_008630: ASL A\n\n #_008631: ORA.w $0A2A,X\n #_008634: ASL A\n #_008635: ASL A\n\n #_008636: ORA.w $0A29,X\n #_008639: ASL A\n #_00863A: ASL A\n\n #_00863B: ORA.w $0A28,X\n #_00863E: STA.w $0A02,Y\n\n #_008641: LDA.w $0A2F,X\n #_008644: ASL A\n #_008645: ASL A\n\n #_008646: ORA.w $0A2E,X\n #_008649: ASL A\n #_00864A: ASL A\n\n #_00864B: ORA.w $0A2D,X\n #_00864E: ASL A\n #_00864F: ASL A\n\n #_008650: ORA.w $0A2C,X\n #_008653: STA.w $0A03,Y\n\n #_008656: DEY\n #_008657: DEY\n #_008658: DEY\n #_008659: DEY\n #_00865A: BPL .next_block\n\n; ---------------------------------------------------------\n\n #_00865C: REP #$31\n\n #_00865E: LDX.w $0100\n\n #_008661: LDA.w LinkOAM_HeadAddresses,X\n #_008664: STA.w $0ACC\n\n #_008667: ADC.w #$0200\n #_00866A: STA.w $0ACE\n\n #_00866D: LDA.w LinkOAM_BodyAddresses,X\n #_008670: STA.w $0AD0\n\n #_008673: CLC\n #_008674: ADC.w #$0200\n #_008677: STA.w $0AD2\n\n #_00867A: LDX.w $0102\n\n #_00867D: LDA.w LinkOAM_AuxAddresses,X\n #_008680: STA.w $0AD4\n\n #_008683: LDX.w $0104\n\n #_008686: LDA.w LinkOAM_AuxAddresses,X\n #_008689: STA.w $0AD6\n\n #_00868C: SEP #$10\n\n #_00868E: LDX.w $0107\n\n #_008691: LDA.w LinkOAM_SwordAddresses,X\n #_008694: STA.w $0AC0\n\n #_008697: CLC\n #_008698: ADC.w #$0180\n #_00869B: STA.w $0AC2\n\n #_00869E: LDX.w $0108\n\n #_0086A1: LDA.w LinkOAM_ShieldAddresses,X\n #_0086A4: STA.w $0AC4\n\n #_0086A7: CLC\n #_0086A8: ADC.w #$00C0\n #_0086AB: STA.w $0AC6\n\n #_0086AE: LDA.w $0109\n #_0086B1: AND.w #$00F8\n #_0086B4: LSR A\n #_0086B5: LSR A\n #_0086B6: TAY\n\n #_0086B7: LDA.w $0109\n #_0086BA: ASL A\n #_0086BB: TAX\n\n #_0086BC: LDA.w DynamicOAM_LinkItemAddresses,X\n #_0086BF: STA.w $0AC8\n\n #_0086C2: CLC\n #_0086C3: TYX\n #_0086C4: ADC.w DynamicOAM_LinkItemAddresses_offsets,X\n #_0086C7: STA.w $0ACA\n\n #_0086CA: LDA.w $02C3\n #_0086CD: AND.w #$0003\n #_0086D0: ASL A\n #_0086D1: TAX\n\n #_0086D2: LDA.w DynamicOAM_PushBlockAddresses,X\n #_0086D5: STA.w $0AD8\n\n #_0086D8: CLC\n #_0086D9: ADC.w #$0100\n #_0086DC: STA.w $0ADA\n\n #_0086DF: LDA.l $7EC00D\n #_0086E3: DEC A\n #_0086E4: STA.l $7EC00D\n #_0086E8: BNE .dont_animate_bg\n\n; ---------------------------------------------------------\n\n #_0086EA: LDA.w #$0009\n\n #_0086ED: LDX.b $8C\n #_0086EF: CPX.b #$B5 ; OW B5\n #_0086F1: BEQ .use_longer_timer\n\n #_0086F3: CPX.b #$BC ; OW BC\n #_0086F5: BNE .use_shorter_timer\n\n.use_longer_timer\n #_0086F7: LDA.w #$0017\n\n.use_shorter_timer\n #_0086FA: STA.l $7EC00D\n\n #_0086FE: LDA.l $7EC00F\n #_008702: CLC\n #_008703: ADC.w #$0400\n #_008706: CMP.w #$0C00\n #_008709: BNE .dont_reset_rupees_tiles\n\n #_00870B: LDA.w #$0000\n\n.dont_reset_rupees_tiles\n #_00870E: STA.l $7EC00F\n\n #_008712: CLC\n #_008713: ADC.w #$7EA680\n #_008716: STA.w $0ADC\n\n.dont_animate_bg\n #_008719: LDA.l $7EC013\n #_00871D: DEC A\n #_00871E: STA.l $7EC013\n #_008722: BNE .dont_animate_rupee\n\n #_008724: LDA.l $7EC015\n #_008728: TAX\n\n #_008729: INX\n #_00872A: INX\n\n #_00872B: CPX.b #$0C\n #_00872D: BNE .rupee_step_fine\n\n #_00872F: LDX.b #$00\n\n.rupee_step_fine\n #_008731: TXA\n #_008732: STA.l $7EC015\n\n #_008736: LDA.w RupeeTile_anim_step,X\n #_008739: STA.l $7EC013\n\n #_00873D: LDA.w #$7EB280\n #_008740: CLC\n #_008741: ADC.w RupeeTile_anim_stepOffset,X\n #_008744: STA.w $0AE0\n\n #_008747: CLC\n #_008748: ADC.w #$0060\n #_00874B: STA.w $0AE2\n\n.dont_animate_rupee\n #_00874E: LDA.w $0AE8\n #_008751: ASL A\n #_008752: ADC.w #$7EB940\n #_008755: STA.w $0AEC\n\n #_008758: ADC.w #$0200\n #_00875B: STA.w $0AEE\n\n #_00875E: LDA.w $0AEA\n #_008761: ASL A\n #_008762: ADC.w #$7EB940\n #_008765: STA.w $0AF0\n\n #_008768: ADC.w #$0200\n #_00876B: STA.w $0AF2\n\n #_00876E: LDA.w $0AF4\n #_008771: ASL A\n #_008772: ADC.w #$7EB540\n #_008775: STA.w $0AF6\n\n #_008778: ADC.w #$0200\n #_00877B: STA.w $0AF8\n\n #_00877E: SEP #$20\n\n #_008780: RTS" + }, + { + "name": "JumpTableLocal", + "code": "JumpTableLocal:\n #_008781: STY.b $03\n\n #_008783: PLY\n #_008784: STY.b $00\n\n #_008786: REP #$30\n\n #_008788: AND.w #$00FF\n #_00878B: ASL A\n #_00878C: TAY\n\n #_00878D: PLA\n #_00878E: STA.b $01\n\n #_008790: INY\n\n #_008791: LDA.b [$00],Y\n #_008793: STA.b $00\n\n #_008795: SEP #$30\n\n #_008797: LDY.b $03\n\n #_008799: JML.w [$0000]\n\n; =========================================================\n" + }, + { + "name": "JumpTableLong", + "code": "JumpTableLong:\n #_00879C: STY.b $05\n\n #_00879E: PLY\n #_00879F: STY.b $02\n\n #_0087A1: REP #$30\n\n #_0087A3: AND.w #$00FF\n #_0087A6: STA.b $03\n\n #_0087A8: ASL A\n #_0087A9: ADC.b $03\n #_0087AB: TAY\n\n #_0087AC: PLA\n #_0087AD: STA.b $03\n\n #_0087AF: INY\n\n #_0087B0: LDA.b [$02],Y\n #_0087B2: STA.b $00\n\n #_0087B4: INY\n\n #_0087B5: LDA.b [$02],Y\n #_0087B7: STA.b $01\n\n #_0087B9: SEP #$30\n\n #_0087BB: LDY.b $05\n\n #_0087BD: JML.w [$0000]\n\n; =========================================================\n" + }, + { + "name": "InitializeMemoryAndSRAM", + "code": "InitializeMemoryAndSRAM:\n #_0087C0: REP #$30\n\n #_0087C2: LDY.w $01FE\n\n #_0087C5: LDX.w #$03FE\n #_0087C8: LDA.w #$0000\n\n.clear_wram\n #_0087CB: STA.w $0000,X\n #_0087CE: STA.w $0400,X\n #_0087D1: STA.w $0800,X\n #_0087D4: STA.w $0C00,X\n\n #_0087D7: STA.w $1000,X\n #_0087DA: STA.w $1400,X\n #_0087DD: STA.w $1800,X\n #_0087E0: STA.w $1C00,X\n\n #_0087E3: DEX\n #_0087E4: DEX\n #_0087E5: BNE .clear_wram\n\n; ---------------------------------------------------------\n\n #_0087E7: STA.l $7EC500 ; writes RGB: #000000\n #_0087EB: STA.l $701FFE ; not selecting any save file\n\n #_0087EF: LDA.l $7003E5\n #_0087F3: CMP.w #$55AA\n #_0087F6: BEQ .sram1_valid\n\n #_0087F8: LDA.w #$0000\n #_0087FB: STA.l $7003E5\n\n.sram1_valid\n #_0087FF: LDA.l $7008E5\n #_008803: CMP.w #$55AA\n #_008806: BEQ .sram2_valid\n\n #_008808: LDA.w #$0000\n #_00880B: STA.l $7008E5\n\n.sram2_valid\n #_00880F: LDA.l $700DE5\n #_008813: CMP.w #$55AA\n #_008816: BEQ .sram3_valid\n\n #_008818: LDA.w #$0000\n #_00881B: STA.l $700DE5\n\n.sram3_valid\n #_00881F: STY.w $01FE\n\n #_008822: STZ.w TMW\n\n #_008825: SEP #$30\n\n #_008827: LDA.b #$80\n #_008829: STA.b $13\n\n #_00882B: INC.b $15\n\n #_00882D: RTS" + }, + { + "name": "Overworld_GetTileTypeAtLocation", + "code": "Overworld_GetTileTypeAtLocation:\n #_00882E: REP #$30\n\n #_008830: LDA.b $00\n #_008832: SEC\n #_008833: SBC.w $0708\n\n #_008836: AND.w $070A\n\n #_008839: ASL A\n #_00883A: ASL A\n #_00883B: ASL A\n\n #_00883C: STA.b $06\n\n #_00883E: LDA.b $02\n #_008840: SEC\n #_008841: SBC.w $070C\n\n #_008844: AND.w $070E\n #_008847: ORA.b $06\n #_008849: TAX\n\n #_00884A: LDA.l $7E2000,X\n #_00884E: ASL A\n #_00884F: ASL A\n #_008850: STA.b $06\n\n #_008852: LDA.b $00\n #_008854: AND.w #$0008\n #_008857: LSR A\n #_008858: LSR A\n #_008859: TSB.b $06\n\n #_00885B: LDA.b $02\n #_00885D: AND.w #$0001\n #_008860: ORA.b $06\n #_008862: ASL A\n #_008863: TAX\n\n #_008864: LDA.l Map16Definitions,X\n #_008868: STA.b $06\n\n #_00886A: AND.w #$01FF\n #_00886D: TAX\n\n #_00886E: LDA.l OverworldTileTypes,X\n\n; ---------------------------------------------------------\n\n #_008872: SEP #$30\n\n #_008874: CMP.b #$10\n #_008876: BCC .exit\n\n #_008878: CMP.b #$1C\n #_00887A: BCS .exit\n\n #_00887C: STA.b $06\n\n #_00887E: LDA.b $07\n #_008880: AND.b #$40\n\n #_008882: ASL A\n #_008883: ROL A\n #_008884: ROL A\n #_008885: ORA.b $06\n\n.exit\n #_008887: RTL" + }, + { + "name": "LoadSongBank", + "code": "LoadSongBank:\n #_008888: PHP\n\n #_008889: REP #$30\n\n #_00888B: LDY.w #$0000\n #_00888E: LDA.w #$BBAA\n\n.apu_not_ready\n #_008891: CMP.w APUIO0\n #_008894: BNE .apu_not_ready\n\n #_008896: SEP #$20\n\n #_008898: LDA.b #$CC\n #_00889A: BRA .setup_transfer\n\n; ---------------------------------------------------------\n\n.next_transfer\n #_00889C: LDA.b [$00],Y\n\n #_00889E: INY\n\n #_00889F: XBA\n #_0088A0: LDA.b #$00\n #_0088A2: BRA .write_zero\n\n.next_byte\n #_0088A4: XBA\n #_0088A5: LDA.b [$00],Y\n\n #_0088A7: INY\n #_0088A8: CPY.w #$8000\n #_0088AB: BNE .no_bank_wrap\n\n #_0088AD: LDY.w #$0000\n\n #_0088B0: INC.b $02\n\n.no_bank_wrap\n #_0088B2: XBA\n\n.wait_for_zero\n #_0088B3: CMP.w APUIO0\n #_0088B6: BNE .wait_for_zero\n\n #_0088B8: INC A\n\n.write_zero\n #_0088B9: REP #$20\n\n #_0088BB: STA.w APUIO0\n\n #_0088BE: SEP #$20\n\n #_0088C0: DEX\n #_0088C1: BNE .next_byte\n\n.wait_for_sync\n #_0088C3: CMP.w APUIO0\n #_0088C6: BNE .wait_for_sync\n\n.make_A_nonzero\n #_0088C8: ADC.b #$03\n #_0088CA: BEQ .make_A_nonzero\n\n; ---------------------------------------------------------\n\n.setup_transfer\n #_0088CC: PHA\n\n #_0088CD: REP #$20\n\n #_0088CF: LDA.b [$00],Y\n #_0088D1: INY\n #_0088D2: INY\n #_0088D3: TAX\n\n #_0088D4: LDA.b [$00],Y\n #_0088D6: INY\n #_0088D7: INY\n #_0088D8: STA.w APUIO2\n\n #_0088DB: SEP #$20\n\n #_0088DD: CPX.w #$0001\n\n #_0088E0: LDA.b #$00\n #_0088E2: ROL A\n #_0088E3: STA.w APUIO1\n\n #_0088E6: ADC.b #$7F\n #_0088E8: PLA\n #_0088E9: STA.w APUIO0\n\n.wait_for_sync_2\n #_0088EC: CMP.w APUIO0\n #_0088EF: BNE .wait_for_sync_2\n\n #_0088F1: BVS .next_transfer\n\n; ---------------------------------------------------------\n\n #_0088F3: STZ.w APUIO0\n #_0088F6: STZ.w APUIO1\n #_0088F9: STZ.w APUIO2\n #_0088FC: STZ.w APUIO3\n\n #_0088FF: PLP\n\n #_008900: RTS" + }, + { + "name": "LoadIntroSongBank", + "code": "LoadIntroSongBank:\n #_008901: LDA.b #SamplePointers>>0\n #_008903: STA.b $00\n\n #_008905: LDA.b #SamplePointers>>8\n #_008907: STA.b $01\n\n #_008909: LDA.b #SamplePointers>>16\n #_00890B: STA.b $02\n\n #_00890D: SEI\n\n #_00890E: JSR LoadSongBank\n\n #_008911: CLI\n\n #_008912: RTS" + }, + { + "name": "LoadOverworldSongs", + "code": "LoadOverworldSongs:\n #_008913: LDA.b #SongBank_Overworld_Main>>0\n #_008915: STA.b $00\n\n #_008917: LDA.b #SongBank_Overworld_Main>>8\n #_008919: STA.b $01\n\n #_00891B: LDA.b #SongBank_Overworld_Main>>16\n\n; ---------------------------------------------------------\n" + }, + { + "name": "PrepareAPUTransfer", + "code": "PrepareAPUTransfer:\n #_00891D: STA.b $02\n\n #_00891F: SEI\n\n #_008920: JSR LoadSongBank\n\n #_008923: CLI\n\n #_008924: RTL" + }, + { + "name": "LoadUnderworldSongs", + "code": "LoadUnderworldSongs:\n #_008925: LDA.b #SongBank_Underworld_Main>>0\n #_008927: STA.b $00\n\n #_008929: LDA.b #SongBank_Underworld_Main>>8\n #_00892B: STA.b $01\n\n #_00892D: LDA.b #SongBank_Underworld_Main>>16\n #_00892F: BRA PrepareAPUTransfer\n\n; =========================================================\n" + }, + { + "name": "LoadCreditsSongs", + "code": "LoadCreditsSongs:\n #_008931: LDA.b #SongBank_Credits_Main>>0\n #_008933: STA.b $00\n\n #_008935: LDA.b #SongBank_Credits_Main>>8\n #_008937: STA.b $01\n\n #_008939: LDA.b #SongBank_Credits_Main>>16\n #_00893B: BRA PrepareAPUTransfer\n\n; =========================================================\n" + }, + { + "name": "EnableForceBlank", + "code": "EnableForceBlank:\n #_00893D: LDA.b #$80\n #_00893F: STA.w INIDISP\n #_008942: STA.b $13\n\n #_008944: STZ.w HDMAEN\n #_008947: STZ.b $9B\n\n #_008949: RTL" + }, + { + "name": "SaveGameFile", + "code": "SaveGameFile:\n #_00894A: PHB\n\n #_00894B: LDA.b #$70\n #_00894D: PHA\n #_00894E: PLB\n\n #_00894F: REP #$30\n\n #_008951: LDX.w $701FFE\n\n #_008954: LDA.l SaveFileOffsets,X\n #_008958: TAY\n\n #_008959: PHY\n\n #_00895A: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.write_save\n #_00895D: LDA.l $7EF000,X\n #_008961: STA.w $700000,Y\n #_008964: STA.w $700F00,Y\n\n #_008967: LDA.l $7EF100,X\n #_00896B: STA.w $700100,Y\n #_00896E: STA.w $701000,Y\n\n #_008971: LDA.l $7EF200,X\n #_008975: STA.w $700200,Y\n #_008978: STA.w $701100,Y\n\n #_00897B: LDA.l $7EF300,X\n #_00897F: STA.w $700300,Y\n #_008982: STA.w $701200,Y\n\n #_008985: LDA.l $7EF400,X\n #_008989: STA.w $700400,Y\n #_00898C: STA.w $701300,Y\n\n #_00898F: INY\n #_008990: INY\n\n #_008991: INX\n #_008992: INX\n\n #_008993: CPX.w #$0100\n #_008996: BNE .write_save\n\n; ---------------------------------------------------------\n\n #_008998: LDX.w #$0000\n #_00899B: TXA\n\n.calc_checksum\n #_00899C: CLC\n #_00899D: ADC.l $7EF000,X\n\n #_0089A1: INX\n #_0089A2: INX\n #_0089A3: CPX.w #$04FE\n #_0089A6: BNE .calc_checksum\n\n #_0089A8: STA.b $00\n\n #_0089AA: PLY\n\n #_0089AB: LDA.w #$5A5A\n #_0089AE: SEC\n #_0089AF: SBC.b $00\n #_0089B1: STA.l $7EF4FE\n\n #_0089B5: TYX\n\n #_0089B6: STA.l $7004FE,X\n #_0089BA: STA.l $7013FE,X\n\n #_0089BE: SEP #$30\n\n #_0089C0: PLB\n\n #_0089C1: RTL" + }, + { + "name": "NULL_0089C2", + "code": "NULL_0089C2:\n #_0089C2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089CA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089D2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089DA: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n" + }, + { + "name": "NMI_DoUpdates", + "code": "NMI_DoUpdates:\n #_0089E0: REP #$10\n\n #_0089E2: LDA.b #$80\n #_0089E4: STA.w VMAIN\n\n #_0089E7: LDA.w $0710\n #_0089EA: BEQ .do_sprite_updates\n\n #_0089EC: JMP.w .skip_sprite_updates\n\n; ---------------------------------------------------------\n\n.do_sprite_updates\n #_0089EF: LDX.w #$1801\n #_0089F2: STX.w DMA0MODE\n #_0089F5: STX.w DMA1MODE\n #_0089F8: STX.w DMA2MODE\n #_0089FB: STX.w DMA3MODE\n #_0089FE: STX.w DMA4MODE\n\n #_008A01: LDA.b #LinkGraphics>>16\n #_008A03: STA.w DMA0ADDRB\n #_008A06: STA.w DMA1ADDRB\n #_008A09: STA.w DMA2ADDRB\n\n #_008A0C: LDY.w #$4100 ; VRAM $8200\n #_008A0F: STY.w VMADDR\n\n #_008A12: LDY.w $0ACE\n #_008A15: STY.w DMA0ADDRL\n\n #_008A18: LDX.w #$0040\n #_008A1B: STX.w DMA0SIZE\n\n #_008A1E: LDY.w $0AD2\n #_008A21: STY.w DMA1ADDRL\n #_008A24: STX.w DMA1SIZE\n\n #_008A27: LDY.w $0AD6\n #_008A2A: STY.w DMA2ADDRL\n\n #_008A2D: LDY.w #$0020\n #_008A30: STY.w DMA2SIZE\n\n #_008A33: LDA.b #$07\n #_008A35: STA.w MDMAEN\n\n #_008A38: STY.w DMA2SIZE\n\n #_008A3B: LDY.w #$4000 ; VRAM $8000\n #_008A3E: STY.w VMADDR\n\n #_008A41: LDY.w $0ACC\n #_008A44: STY.w DMA0ADDRL\n\n #_008A47: STX.w DMA0SIZE\n\n #_008A4A: LDY.w $0AD0\n\n #_008A4D: STY.w DMA1ADDRL\n #_008A50: STX.w DMA1SIZE\n\n #_008A53: LDY.w $0AD4\n #_008A56: STY.w DMA2ADDRL\n\n #_008A59: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008A5C: LDA.b #$7E\n #_008A5E: STA.w DMA0ADDRB\n #_008A61: STA.w DMA1ADDRB\n #_008A64: STA.w DMA2ADDRB\n #_008A67: STA.w DMA3ADDRB\n #_008A6A: STA.w DMA4ADDRB\n\n #_008A6D: LDY.w $0AC0\n #_008A70: STY.w DMA0ADDRL\n\n #_008A73: STX.w DMA0SIZE\n\n #_008A76: LDY.w $0AC4\n #_008A79: STY.w DMA1ADDRL\n\n #_008A7C: STX.w DMA1SIZE\n\n #_008A7F: LDY.w $0AC8\n #_008A82: STY.w DMA2ADDRL\n\n #_008A85: STX.w DMA2SIZE\n\n #_008A88: LDY.w $0AE0\n #_008A8B: STY.w DMA3ADDRL\n\n #_008A8E: LDY.w #$0020\n #_008A91: STY.w DMA3SIZE\n\n #_008A94: LDY.w $0AD8\n #_008A97: STY.w DMA4ADDRL\n\n #_008A9A: STX.w DMA4SIZE\n\n #_008A9D: LDA.b #$1F\n #_008A9F: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008AA2: LDY.w #$4150 ; VRAM $82A0\n #_008AA5: STY.w VMADDR\n\n #_008AA8: LDY.w $0AC2\n #_008AAB: STY.w DMA0ADDRL\n\n #_008AAE: STX.w DMA0SIZE\n\n #_008AB1: LDY.w $0AC6\n #_008AB4: STY.w DMA1ADDRL\n\n #_008AB7: STX.w DMA1SIZE\n\n #_008ABA: LDY.w $0ACA\n #_008ABD: STY.w DMA2ADDRL\n\n #_008AC0: STX.w DMA2SIZE\n\n #_008AC3: LDY.w $0AE2\n #_008AC6: STY.w DMA3ADDRL\n\n #_008AC9: LDY.w #$0020\n #_008ACC: STY.w DMA3SIZE\n\n #_008ACF: LDY.w $0ADA\n #_008AD2: STY.w DMA4ADDRL\n\n #_008AD5: STX.w DMA4SIZE\n\n #_008AD8: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008ADB: LDY.w #$4200 ; VRAM $8400\n #_008ADE: STY.w VMADDR\n\n #_008AE1: LDY.w $0AEC\n #_008AE4: STY.w DMA0ADDRL\n\n #_008AE7: STX.w DMA0SIZE\n\n #_008AEA: LDY.w $0AF0\n\n #_008AED: STY.w DMA1ADDRL\n #_008AF0: STX.w DMA1SIZE\n\n #_008AF3: LDY.w #$7EBD40\n #_008AF6: STY.w DMA2ADDRL\n\n #_008AF9: STX.w DMA2SIZE\n\n #_008AFC: LDA.b #$07\n #_008AFE: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B01: LDY.w #$4300 ; VRAM $8600\n #_008B04: STY.w VMADDR\n\n #_008B07: LDY.w $0AEE\n #_008B0A: STY.w DMA0ADDRL\n\n #_008B0D: STX.w DMA0SIZE\n\n #_008B10: LDY.w $0AF2\n #_008B13: STY.w DMA1ADDRL\n\n #_008B16: STX.w DMA1SIZE\n\n #_008B19: LDY.w #$7EBD80\n #_008B1C: STY.w DMA2ADDRL\n\n #_008B1F: STX.w DMA2SIZE\n\n #_008B22: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B25: LDA.w $0AF4\n #_008B28: BEQ .no_update_swagduck\n\n #_008B2A: LDY.w #$40E0 ; VRAM $81C0\n #_008B2D: STY.w VMADDR\n\n #_008B30: LDY.w $0AF6\n #_008B33: STY.w DMA0ADDRL\n\n #_008B36: STX.w DMA0SIZE\n\n #_008B39: LDA.b #$01\n #_008B3B: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B3E: LDY.w #$41E0 ; VRAM $83C0\n #_008B41: STY.w VMADDR\n\n #_008B44: LDY.w $0AF8\n #_008B47: STY.w DMA0ADDRL\n\n #_008B4A: STX.w DMA0SIZE\n\n #_008B4D: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.no_update_swagduck\n #_008B50: LDX.w $0ADC\n #_008B53: STX.w DMA0ADDRL\n\n #_008B56: LDX.w $0134\n #_008B59: STX.w VMADDR\n\n #_008B5C: LDX.w #$0400\n #_008B5F: STX.w DMA0SIZE\n\n #_008B62: LDA.b #$01\n #_008B64: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_sprite_updates\n #_008B67: LDA.b $16\n #_008B69: BEQ .skip_BG3\n\n #_008B6B: LDX.w $0219\n #_008B6E: STX.w VMADDR\n\n #_008B71: LDX.w #$7EC700>>0\n #_008B74: STX.w DMA0ADDRL\n\n #_008B77: LDA.b #$7EC700>>16\n #_008B79: STA.w DMA0ADDRB\n\n #_008B7C: LDX.w #$014A\n #_008B7F: STX.w DMA0SIZE\n\n #_008B82: LDA.b #$01\n #_008B84: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_BG3\n #_008B87: LDA.b $15\n #_008B89: BEQ .skip_CGRAM\n\n #_008B8B: STZ.w CGADD\n\n #_008B8E: LDY.w #$2200\n #_008B91: STY.w DMA1MODE\n\n #_008B94: LDY.w #$7EC500>>0\n #_008B97: STY.w DMA1ADDRL\n\n #_008B9A: LDA.b #$7EC500>>16\n #_008B9C: STA.w DMA1ADDRB\n\n #_008B9F: LDY.w #$0200\n #_008BA2: STY.w DMA1SIZE\n\n #_008BA5: LDA.b #$02\n #_008BA7: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_CGRAM\n #_008BAA: REP #$20\n #_008BAC: SEP #$10\n\n #_008BAE: STZ.b $15\n\n #_008BB0: STZ.w OAMADDR\n\n #_008BB3: LDA.w #$0400\n #_008BB6: STA.w DMA0MODE\n\n #_008BB9: LDA.w #$0800\n #_008BBC: STA.w DMA0ADDRL\n #_008BBF: STZ.w DMA0ADDRB\n\n #_008BC2: LDA.w #$0220\n #_008BC5: STA.w DMA0SIZE\n\n #_008BC8: LDY.b #$01\n #_008BCA: STY.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008BCD: SEP #$30\n\n #_008BCF: LDY.b $14\n #_008BD1: BEQ .no_stripes\n\n #_008BD3: LDA.w Stripes14_SourceAddress_low-1,Y\n #_008BD6: STA.b $00\n\n #_008BD8: LDA.w Stripes14_SourceAddress_high-1,Y\n #_008BDB: STA.b $01\n\n #_008BDD: LDA.w Stripes14_SourceAddress_bank-1,Y\n #_008BE0: STA.b $02\n\n #_008BE2: JSR HandleStripes14\n\n #_008BE5: LDA.b $14\n #_008BE7: CMP.b #$01\n #_008BE9: BNE .leave_stripes_alone\n\n #_008BEB: STZ.w $1000\n #_008BEE: STZ.w $1001\n\n.leave_stripes_alone\n #_008BF1: STZ.b $14\n\n; ---------------------------------------------------------\n\n.no_stripes\n #_008BF3: LDA.b $19\n #_008BF5: BEQ .no_incremental_upload\n\n #_008BF7: STA.w VMADDH\n\n #_008BFA: REP #$10\n\n #_008BFC: LDX.w #$0080\n #_008BFF: STX.w VMAIN\n\n #_008C02: LDX.w #$1801\n #_008C05: STX.w DMA0MODE\n\n #_008C08: LDX.w $0118\n #_008C0B: STX.w DMA0ADDRL\n\n #_008C0E: LDA.b #$7F\n #_008C10: STA.w DMA0ADDRB\n\n #_008C13: LDX.w #$0200\n #_008C16: STX.w DMA0SIZE\n\n #_008C19: LDA.b #$01\n #_008C1B: STA.w MDMAEN\n\n #_008C1E: STZ.b $19\n\n #_008C20: SEP #$10\n\n; ---------------------------------------------------------\n\n.no_incremental_upload\n #_008C22: LDX.b $18\n #_008C24: BEQ .no_arb_dma\n\n #_008C26: STZ.w DMA1ADDRB\n\n #_008C29: REP #$20\n\n #_008C2B: LDA.w #$1801\n #_008C2E: STA.w DMA1MODE\n\n #_008C31: REP #$10\n\n #_008C33: LDX.w #$0000\n\n #_008C36: LDA.w $1100,X\n\n.next_chunk\n #_008C39: STA.w VMADDR\n\n #_008C3C: TXA\n #_008C3D: CLC\n #_008C3E: ADC.w #$1104\n #_008C41: STA.w DMA1ADDRL\n\n #_008C44: LDA.w $1103,X\n #_008C47: AND.w #$00FF\n #_008C4A: STA.w DMA1SIZE\n\n #_008C4D: CLC\n #_008C4E: ADC.w #$0004\n #_008C51: STA.b $00\n\n #_008C53: SEP #$20\n\n #_008C55: LDA.w $1102,X\n #_008C58: STA.w VMAIN\n\n #_008C5B: LDA.b #$02\n #_008C5D: STA.w MDMAEN\n\n #_008C60: REP #$21\n\n #_008C62: TXA\n #_008C63: ADC.b $00\n #_008C65: TAX\n\n #_008C66: LDA.w $1100,X\n #_008C69: CMP.w #$FFFF\n #_008C6C: BNE .next_chunk\n\n #_008C6E: SEP #$30\n\n #_008C70: STZ.b $18\n #_008C72: STZ.w $0710\n\n; ---------------------------------------------------------\n\n.no_arb_dma\n #_008C75: LDA.b $17\n #_008C77: ASL A\n #_008C78: TAX\n\n #_008C79: STZ.b $17\n\n #_008C7B: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n.vectors\n #_008C7E: dw NMI_NoTileUpdates ; 0x00\n #_008C80: dw NMI_UploadTilemap ; 0x01\n #_008C82: dw NMI_UploadBG3Text ; 0x02\n #_008C84: dw NMI_UpdateOWScroll ; 0x03\n #_008C86: dw NMI_UpdateSubscreenOverlay ; 0x04\n #_008C88: dw NMI_UpdateBG1Wall ; 0x05\n #_008C8A: dw NMI_TilemapNothing ; 0x06\n #_008C8C: dw NMI_UpdateLoadLightWorldMap ; 0x07\n #_008C8E: dw NMI_UpdateBG2Left ; 0x08\n #_008C90: dw NMI_UpdateBGChar3and4 ; 0x09\n #_008C92: dw NMI_UpdateBGChar5and6 ; 0x0A\n #_008C94: dw NMI_UpdateBGCharHalf ; 0x0B\n #_008C96: dw NMI_UploadSubscreenOverlayLatter ; 0x0C\n #_008C98: dw NMI_UploadSubscreenOverlayFormer ; 0x0D\n #_008C9A: dw NMI_UpdateBGChar0 ; 0x0E\n #_008C9C: dw NMI_UpdateBGChar1 ; 0x0F\n #_008C9E: dw NMI_UpdateBGChar2 ; 0x10\n #_008CA0: dw NMI_UpdateBGChar3 ; 0x11\n #_008CA2: dw NMI_UpdateObjChar0 ; 0x12\n #_008CA4: dw NMI_UpdateObjChar2 ; 0x13\n #_008CA6: dw NMI_UpdateObjChar3 ; 0x14\n #_008CA8: dw NMI_UploadDarkWorldMap ; 0x15\n #_008CAA: dw NMI_UploadGameOverText ; 0x16\n #_008CAC: dw NMI_UpdatePegTiles ; 0x17\n #_008CAE: dw NMI_UpdateStarTiles ; 0x18\n\n; =========================================================\n" + }, + { + "name": "NMI_UploadTilemap", + "code": "NMI_UploadTilemap:\n #_008CB0: LDX.w $0116\n\n #_008CB3: LDA.w TilemapUpload_HighBytes,X\n #_008CB6: STA.w VMADDH\n\n #_008CB9: STZ.w DMA0ADDRB\n\n #_008CBC: REP #$20\n\n #_008CBE: LDA.w #$0080\n #_008CC1: STA.w VMAIN\n\n #_008CC4: LDA.w #$1801\n #_008CC7: STA.w DMA0MODE\n\n #_008CCA: LDA.w #$7E1000\n #_008CCD: STA.w DMA0ADDRL\n\n #_008CD0: LDA.w #$0800\n #_008CD3: STA.w DMA0SIZE\n\n #_008CD6: LDY.b #$01\n #_008CD8: STY.w MDMAEN\n\n #_008CDB: STZ.w $1000\n\n #_008CDE: SEP #$20\n\n #_008CE0: STZ.w $0710\n\n; =========================================================\n" + }, + { + "name": "NMI_NoTileUpdates", + "code": "NMI_NoTileUpdates:\n #_008CE3: RTS" + }, + { + "name": "NMI_UploadBG3Text", + "code": "NMI_UploadBG3Text:\n #_008CE4: REP #$10\n\n #_008CE6: LDA.b #$80\n #_008CE8: STA.w VMAIN\n\n #_008CEB: LDX.w #$1801\n #_008CEE: STX.w DMA0MODE\n\n #_008CF1: LDY.w #$7C00 ; VRAM $F800\n #_008CF4: STY.w VMADDR\n\n #_008CF7: LDY.w #$7F0000\n #_008CFA: STY.w DMA0ADDRL\n\n #_008CFD: LDA.b #$7F\n #_008CFF: STA.w DMA0ADDRB\n\n #_008D02: LDX.w #$07E0\n #_008D05: STX.w DMA0SIZE\n\n #_008D08: LDA.b #$01\n #_008D0A: STA.w MDMAEN\n\n #_008D0D: SEP #$10\n\n #_008D0F: STZ.w $0710\n\n #_008D12: RTS" + }, + { + "name": "NMI_UpdateOWScroll", + "code": "NMI_UpdateOWScroll:\n #_008D13: REP #$10\n\n #_008D15: LDX.w #$1801\n #_008D18: STX.w DMA0MODE\n\n #_008D1B: STZ.w DMA0ADDRB\n\n #_008D1E: LDA.w $1101\n #_008D21: AND.b #$80\n #_008D23: ASL A\n #_008D24: ROL A\n #_008D25: ORA.b #$80\n #_008D27: STA.w VMAIN\n\n #_008D2A: REP #$20\n\n #_008D2C: LDA.w $1100\n #_008D2F: AND.w #$3FFF\n #_008D32: TAX\n\n #_008D33: INC A\n #_008D34: INC A\n #_008D35: STA.b $02\n\n #_008D37: LDY.w #$0000\n\n.next_transfer\n #_008D3A: REP #$21\n\n #_008D3C: LDA.w $1102,Y\n #_008D3F: STA.w VMADDR\n\n #_008D42: TYA\n #_008D43: ADC.w #$1104\n #_008D46: STA.w DMA0ADDRL\n\n #_008D49: TYA\n #_008D4A: ADC.b $02\n #_008D4C: TAY\n\n #_008D4D: STX.w DMA0SIZE\n\n #_008D50: SEP #$20\n\n #_008D52: LDA.b #$01\n #_008D54: STA.w MDMAEN\n\n #_008D57: LDA.w $1103,Y\n #_008D5A: BPL .next_transfer\n\n #_008D5C: SEP #$30\n\n #_008D5E: STZ.w $0710\n\n #_008D61: RTS" + }, + { + "name": "NMI_UpdateSubscreenOverlay", + "code": "NMI_UpdateSubscreenOverlay:\n #_008D62: LDA.b #$7F\n #_008D64: STA.w DMA0ADDRB\n\n #_008D67: LDA.b #$80\n #_008D69: STA.w VMAIN\n\n #_008D6C: REP #$31\n\n #_008D6E: LDA.w #$7F2000\n #_008D71: STA.w DMA0ADDRL\n\n #_008D74: LDX.w #$0000 ; start at $7F4000\n #_008D77: LDA.w #$0080 ; 16 chunks\n #_008D7A: BRA NMI_HandleArbitraryTilemap\n\n; =========================================================\n" + }, + { + "name": "NMI_UploadSubscreenOverlayFormer", + "code": "NMI_UploadSubscreenOverlayFormer:\n #_008D7C: LDA.b #$7F\n #_008D7E: STA.w DMA0ADDRB\n\n #_008D81: LDA.b #$80\n #_008D83: STA.w VMAIN\n\n #_008D86: REP #$31\n\n #_008D88: LDA.w #$7F2000\n #_008D8B: STA.w DMA0ADDRL\n\n #_008D8E: LDX.w #$0000 ; start at $7F4000\n #_008D91: LDA.w #$0040 ; 8 chunks\n\n #_008D94: BRA NMI_HandleArbitraryTilemap\n\n; =========================================================\n" + }, + { + "name": "NMI_UploadSubscreenOverlayLatter", + "code": "NMI_UploadSubscreenOverlayLatter:\n #_008D96: LDA.b #$7F\n #_008D98: STA.w DMA0ADDRB\n\n #_008D9B: LDA.b #$80\n #_008D9D: STA.w VMAIN\n\n #_008DA0: REP #$31\n\n #_008DA2: LDA.w #$7F3000\n #_008DA5: STA.w DMA0ADDRL\n\n #_008DA8: LDX.w #$0040 ; start at $7F4040\n #_008DAB: LDA.w #$0080 ; 16 chunks\n\n; =========================================================\n" + }, + { + "name": "NMI_HandleArbitraryTilemap", + "code": "NMI_HandleArbitraryTilemap:\n #_008DAE: STA.b $02\n\n #_008DB0: LDA.w #$1801\n #_008DB3: STA.w DMA0MODE\n\n #_008DB6: LDA.w #$0001\n #_008DB9: STA.b $00\n\n #_008DBB: LDY.w #$0080\n\n\n.next_chunk\n #_008DBE: LDA.l $7F4000,X\n #_008DC2: STA.w VMADDR\n\n #_008DC5: STY.w DMA0SIZE\n\n #_008DC8: LDA.b $00\n #_008DCA: STA.w MDMAEN\n\n #_008DCD: LDA.l $7F4002,X\n #_008DD1: STA.w VMADDR\n\n #_008DD4: STY.w DMA0SIZE\n\n #_008DD7: LDA.b $00\n #_008DD9: STA.w MDMAEN\n\n #_008DDC: LDA.l $7F4004,X\n #_008DE0: STA.w VMADDR\n\n #_008DE3: STY.w DMA0SIZE\n\n #_008DE6: LDA.b $00\n #_008DE8: STA.w MDMAEN\n\n #_008DEB: LDA.l $7F4006,X\n #_008DEF: STA.w VMADDR\n\n #_008DF2: STY.w DMA0SIZE\n\n #_008DF5: LDA.b $00\n #_008DF7: STA.w MDMAEN\n\n #_008DFA: TXA\n #_008DFB: ADC.w #$0008\n #_008DFE: TAX\n\n #_008DFF: CMP.b $02\n #_008E01: BNE .next_chunk\n\n #_008E03: SEP #$30\n\n #_008E05: STZ.w $0710\n\n #_008E08: RTS" + }, + { + "name": "NMI_UpdateBG1Wall", + "code": "NMI_UpdateBG1Wall:\n #_008E09: REP #$20\n\n #_008E0B: LDA.w #$1801\n #_008E0E: STA.w DMA0MODE\n\n #_008E11: LDA.w $0116\n #_008E14: STA.w VMADDR\n\n #_008E17: LDX.b #$81\n #_008E19: STX.w VMAIN\n\n #_008E1C: LDX.b #$7EC880>>16\n #_008E1E: STX.w DMA0ADDRB\n\n #_008E21: LDA.w #$7EC880>>0\n #_008E24: STA.w DMA0ADDRL\n\n #_008E27: LDA.w #$0040\n #_008E2A: STA.w DMA0SIZE\n\n #_008E2D: LDY.b #$01\n #_008E2F: STY.w MDMAEN\n\n #_008E32: STA.w DMA0SIZE\n\n #_008E35: LDA.w $0116\n #_008E38: CLC\n #_008E39: ADC.w #$0800\n #_008E3C: STA.w VMADDR\n\n #_008E3F: LDA.w #$7EC8C0\n #_008E42: STA.w DMA0ADDRL\n\n #_008E45: STY.w MDMAEN\n\n #_008E48: SEP #$20\n\n #_008E4A: RTS" + }, + { + "name": "NMI_TilemapNothing", + "code": "NMI_TilemapNothing:\n #_008E4B: RTS" + }, + { + "name": "NMI_UpdateLoadLightWorldMap", + "code": "NMI_UpdateLoadLightWorldMap:\n #_008E54: STZ.w VMAIN\n\n #_008E57: LDA.b #WorldMap_LightWorldTilemap>>16\n #_008E59: STA.w DMA0ADDRB\n\n #_008E5C: REP #$20\n\n #_008E5E: LDA.w #$1800\n #_008E61: STA.w DMA0MODE\n\n #_008E64: STZ.b $04\n #_008E66: STZ.b $02\n\n; ---------------------------------------------------------\n\n #_008E68: LDY.b #$01\n #_008E6A: LDX.b #$00\n\n.next_quadrant\n #_008E6C: LDA.w #$0020\n #_008E6F: STA.b $06\n\n #_008E71: LDA.w .vram_offset,X\n #_008E74: STA.b $00\n\n.next_row\n #_008E76: LDA.b $00\n #_008E78: STA.w VMADDR\n\n #_008E7B: CLC\n #_008E7C: ADC.w #$0080\n #_008E7F: STA.b $00\n\n #_008E81: LDA.b $02\n #_008E83: CLC\n #_008E84: ADC.w #WorldMap_LightWorldTilemap\n #_008E87: STA.w DMA0ADDRL\n\n #_008E8A: LDA.w #$0020\n #_008E8D: STA.w DMA0SIZE\n\n #_008E90: STY.w MDMAEN\n\n #_008E93: CLC\n #_008E94: ADC.b $02\n #_008E96: STA.b $02\n\n #_008E98: DEC.b $06\n #_008E9A: BNE .next_row\n\n #_008E9C: INC.b $04\n #_008E9E: INC.b $04\n\n #_008EA0: LDX.b $04\n #_008EA2: CPX.b #$08\n #_008EA4: BNE .next_quadrant\n\n #_008EA6: SEP #$20\n\n #_008EA8: RTS" + }, + { + "name": "NMI_UpdateBG2Left", + "code": "NMI_UpdateBG2Left:\n #_008EA9: LDA.b #$80\n\n #_008EAB: STA.w VMAIN\n\n #_008EAE: REP #$10\n\n #_008EB0: LDY.w #$0000 ; VRAM $0000\n #_008EB3: STY.w VMADDR\n\n #_008EB6: LDY.w #$1801\n #_008EB9: STY.w DMA1MODE\n\n #_008EBC: LDY.w #$7F0000\n #_008EBF: STY.w DMA1ADDRL\n\n #_008EC2: LDA.b #$7F\n #_008EC4: STA.w DMA1ADDRB\n\n #_008EC7: LDY.w #$0800\n #_008ECA: STY.w DMA1SIZE\n\n #_008ECD: LDA.b #$02\n #_008ECF: STA.w MDMAEN\n\n #_008ED2: STY.w DMA1SIZE\n\n #_008ED5: LDY.w #$0800\n #_008ED8: STY.w VMADDR\n\n #_008EDB: LDY.w #$7F0800\n #_008EDE: STY.w DMA1ADDRL\n\n #_008EE1: STA.w MDMAEN\n\n #_008EE4: SEP #$10\n\n #_008EE6: RTS" + }, + { + "name": "NMI_UpdateBGChar3and4", + "code": "NMI_UpdateBGChar3and4:\n #_008EE7: REP #$20\n\n #_008EE9: LDA.w #$2C00 ; VRAM $5800\n #_008EEC: STA.w VMADDR\n\n #_008EEF: LDY.b #$80\n #_008EF1: STY.w VMAIN\n\n #_008EF4: LDA.w #$1801\n #_008EF7: STA.w DMA0MODE\n\n #_008EFA: LDA.w #$7F0000\n #_008EFD: STA.w DMA0ADDRL\n\n #_008F00: LDY.b #$7F\n #_008F02: STY.w DMA0ADDRB\n\n #_008F05: LDA.w #$1000\n #_008F08: STA.w DMA0SIZE\n\n #_008F0B: LDY.b #$01\n #_008F0D: STY.w MDMAEN\n\n #_008F10: SEP #$20\n\n #_008F12: STZ.w $0710\n\n #_008F15: RTS" + }, + { + "name": "NMI_UpdateBGChar5and6", + "code": "NMI_UpdateBGChar5and6:\n #_008F16: REP #$20\n\n #_008F18: LDA.w #$3400 ; VRAM $6800\n #_008F1B: STA.w VMADDR\n\n #_008F1E: LDY.b #$80\n #_008F20: STY.w VMAIN\n\n #_008F23: LDA.w #$1801\n #_008F26: STA.w DMA0MODE\n\n #_008F29: LDA.w #$7F1000\n #_008F2C: STA.w DMA0ADDRL\n\n #_008F2F: LDY.b #$7F\n #_008F31: STY.w DMA0ADDRB\n\n #_008F34: LDA.w #$1000\n #_008F37: STA.w DMA0SIZE\n\n #_008F3A: LDY.b #$01\n #_008F3C: STY.w MDMAEN\n\n #_008F3F: SEP #$20\n\n #_008F41: STZ.w $0710\n\n #_008F44: RTS" + }, + { + "name": "NMI_UpdateBGCharHalf", + "code": "NMI_UpdateBGCharHalf:\n #_008F45: LDA.w $0116\n #_008F48: STA.w VMADDH\n\n #_008F4B: REP #$10\n\n #_008F4D: LDX.w #$0080\n #_008F50: STX.w VMAIN\n\n #_008F53: LDX.w #$1801\n #_008F56: STX.w DMA0MODE\n\n #_008F59: LDX.w #$7F1000\n #_008F5C: STX.w DMA0ADDRL\n\n #_008F5F: LDA.b #$7F\n #_008F61: STA.w DMA0ADDRB\n\n #_008F64: LDX.w #$0400\n #_008F67: STX.w DMA0SIZE\n\n #_008F6A: LDA.b #$01\n #_008F6C: STA.w MDMAEN\n\n #_008F6F: SEP #$10\n\n #_008F71: RTS" + }, + { + "name": "NMI_UpdateBGChar0", + "code": "NMI_UpdateBGChar0:\n #_008F72: REP #$20\n\n #_008F74: LDA.w #$2000 ; VRAM $4000\n #_008F77: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n" + }, + { + "name": "NMI_UpdateBGChar1", + "code": "NMI_UpdateBGChar1:\n #_008F79: REP #$20\n\n #_008F7B: LDA.w #$2800 ; VRAM $5000\n #_008F7E: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n" + }, + { + "name": "NMI_UpdateBGChar2", + "code": "NMI_UpdateBGChar2:\n #_008F80: REP #$20\n\n #_008F82: LDA.w #$3000 ; VRAM $6000\n #_008F85: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n" + }, + { + "name": "NMI_UpdateBGChar3", + "code": "NMI_UpdateBGChar3:\n #_008F87: REP #$20\n\n #_008F89: LDA.w #$3800 ; VRAM $7000\n #_008F8C: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n" + }, + { + "name": "NMI_UpdateObjChar0", + "code": "NMI_UpdateObjChar0:\n #_008F8E: REP #$20\n\n #_008F90: LDA.w #$4400 ; VRAM $8800\n #_008F93: STA.w VMADDR\n\n #_008F96: LDA.w #$7F0000\n #_008F99: STA.w DMA0ADDRL\n\n #_008F9C: LDY.b #$80\n #_008F9E: STY.w VMAIN\n\n #_008FA1: LDA.w #$1801\n #_008FA4: STA.w DMA0MODE\n\n #_008FA7: LDY.b #$7F\n #_008FA9: STY.w DMA0ADDRB\n\n #_008FAC: LDA.w #$0800\n #_008FAF: STA.w DMA0SIZE\n\n #_008FB2: LDY.b #$01\n #_008FB4: STY.w MDMAEN\n\n #_008FB7: SEP #$20\n\n #_008FB9: STZ.w $0710\n\n #_008FBC: RTS" + }, + { + "name": "NMI_UpdateObjChar2", + "code": "NMI_UpdateObjChar2:\n #_008FBD: REP #$20\n\n #_008FBF: LDA.w #$5000 ; VRAM $A000\n\n #_008FC2: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n" + }, + { + "name": "NMI_UpdateObjChar3", + "code": "NMI_UpdateObjChar3:\n #_008FC4: REP #$20\n\n #_008FC6: LDA.w #$5800 ; VRAM $B000\n\n; =========================================================\n" + }, + { + "name": "NMI_RunTilemapUpdateDMA", + "code": "NMI_RunTilemapUpdateDMA:\n #_008FC9: STA.w VMADDR\n\n #_008FCC: LDA.w #$7F0000\n #_008FCF: STA.w DMA0ADDRL\n\n #_008FD2: LDY.b #$80\n #_008FD4: STY.w VMAIN\n\n #_008FD7: LDA.w #$1801\n #_008FDA: STA.w DMA0MODE\n\n #_008FDD: LDY.b #$7F\n #_008FDF: STY.w DMA0ADDRB\n\n #_008FE2: LDA.w #$1000\n #_008FE5: STA.w DMA0SIZE\n\n #_008FE8: LDY.b #$01\n #_008FEA: STY.w MDMAEN\n\n #_008FED: SEP #$20\n\n #_008FEF: STZ.w $0710\n\n #_008FF2: RTS" + }, + { + "name": "NMI_UploadDarkWorldMap", + "code": "NMI_UploadDarkWorldMap:\n #_008FF3: STZ.w VMAIN\n\n #_008FF6: STZ.w DMA0ADDRB\n\n #_008FF9: REP #$20\n\n #_008FFB: LDA.w #$1800\n #_008FFE: STA.w DMA0MODE\n\n #_009001: STZ.b $02\n\n #_009003: LDA.w #$0020\n #_009006: STA.b $06\n\n #_009008: LDA.w #$0810 ; VRAM $1020\n #_00900B: STA.b $00\n\n #_00900D: LDY.b #$01\n\n; ---------------------------------------------------------\n\n.next_row\n #_00900F: LDA.b $00\n #_009011: STA.w VMADDR\n\n #_009014: CLC\n #_009015: ADC.w #$0080 ; VRAM +$0100\n #_009018: STA.b $00\n\n #_00901A: LDA.b $02\n #_00901C: CLC\n #_00901D: ADC.w #$1000\n #_009020: STA.w DMA0ADDRL\n\n #_009023: LDA.w #$0020\n #_009026: STA.w DMA0SIZE\n\n #_009029: STY.w MDMAEN\n\n #_00902C: CLC\n #_00902D: ADC.b $02\n #_00902F: STA.b $02\n\n #_009031: DEC.b $06\n #_009033: BNE .next_row\n\n #_009035: SEP #$20\n\n #_009037: RTS" + }, + { + "name": "NMI_UploadGameOverText", + "code": "NMI_UploadGameOverText:\n #_009038: REP #$20\n\n #_00903A: LDA.w #$7800 ; VRAM $F000\n #_00903D: STA.w VMADDR\n\n #_009040: LDA.w #$7E2000\n #_009043: STA.w DMA0ADDRL\n\n #_009046: LDY.b #$80\n #_009048: STY.w VMAIN\n\n #_00904B: LDA.w #$1801\n #_00904E: STA.w DMA0MODE\n\n #_009051: LDY.b #$7E\n #_009053: STY.w DMA0ADDRB\n\n #_009056: LDA.w #$0800\n #_009059: STA.w DMA0SIZE\n\n #_00905C: LDY.b #$01\n #_00905E: STY.w MDMAEN\n\n #_009061: LDA.w #$7D00 ; VRAM $FA00\n #_009064: STA.w VMADDR\n\n #_009067: LDA.w #$7E3400\n #_00906A: STA.w DMA0ADDRL\n\n #_00906D: LDY.b #$80\n #_00906F: STY.w VMAIN\n\n #_009072: LDA.w #$1801\n #_009075: STA.w DMA0MODE\n\n #_009078: LDY.b #$7E\n #_00907A: STY.w DMA0ADDRB\n\n #_00907D: LDA.w #$0600\n #_009080: STA.w DMA0SIZE\n\n #_009083: LDY.b #$01\n #_009085: STY.w MDMAEN\n\n #_009088: SEP #$20\n\n #_00908A: RTS" + }, + { + "name": "NMI_UpdatePegTiles", + "code": "NMI_UpdatePegTiles:\n #_00908B: REP #$10\n\n #_00908D: LDX.w #$3D00 ; VRAM $7A00\n #_009090: STX.w VMADDR\n\n #_009093: LDA.b #$80\n #_009095: STA.w VMAIN\n\n #_009098: LDX.w #$1801\n #_00909B: STX.w DMA0MODE\n\n #_00909E: LDX.w #$7F0000\n #_0090A1: STX.w DMA0ADDRL\n\n #_0090A4: LDA.b #$7F\n #_0090A6: STA.w DMA0ADDRB\n\n #_0090A9: LDX.w #$0100\n #_0090AC: STX.w DMA0SIZE\n\n #_0090AF: LDA.b #$01\n #_0090B1: STA.w MDMAEN\n\n #_0090B4: SEP #$10\n\n #_0090B6: RTS" + }, + { + "name": "NMI_UpdateStarTiles", + "code": "NMI_UpdateStarTiles:\n #_0090B7: REP #$10\n\n #_0090B9: LDX.w #$3ED0 ; VRAM $7DA0\n #_0090BC: STX.w VMADDR\n\n #_0090BF: LDA.b #$80\n #_0090C1: STA.w VMAIN\n\n #_0090C4: LDX.w #$1801\n #_0090C7: STX.w DMA0MODE\n\n #_0090CA: LDX.w #$7F0000\n #_0090CD: STX.w DMA0ADDRL\n\n #_0090D0: LDA.b #$7F\n #_0090D2: STA.w DMA0ADDRB\n\n #_0090D5: LDX.w #$0040\n #_0090D8: STX.w DMA0SIZE\n\n #_0090DB: LDA.b #$01\n #_0090DD: STA.w MDMAEN\n\n #_0090E0: SEP #$10\n\n #_0090E2: RTS" + }, + { + "name": "NMI_UploadTilemap_long", + "code": "NMI_UploadTilemap_long:\n #_0090E3: JSR NMI_UploadTilemap\n\n #_0090E6: RTL" + }, + { + "name": "NMI_UpdateOWScroll_long", + "code": "NMI_UpdateOWScroll_long:\n #_0090E7: JSR NMI_UpdateOWScroll\n\n #_0090EA: RTL" + }, + { + "name": "UNREACHABLE_0090EB", + "code": "UNREACHABLE_0090EB:\n #_0090EB: STA.b $14\n\n #_0090ED: TAY\n\n #_0090EE: LDA.w Stripes14_SourceAddress_low-1,Y\n #_0090F1: STA.b $00\n\n #_0090F3: LDA.w Stripes14_SourceAddress_high-1,Y\n #_0090F6: STA.b $01\n\n #_0090F8: LDA.w Stripes14_SourceAddress_bank-1,Y\n #_0090FB: STA.b $02\n\n #_0090FD: JSR HandleStripes14\n\n #_009100: LDA.b $14\n #_009102: CMP.b #$01\n #_009104: BNE .dont_clear\n\n #_009106: STZ.w $1000\n #_009109: STZ.w $1001\n\n.dont_clear\n #_00910C: STZ.b $14\n\n #_00910E: RTL" + }, + { + "name": "UnderworldTilemapQuadrantOffset", + "code": "UnderworldTilemapQuadrantOffset:\n #_00910F: dw $0000, $1000, $0000, $0040\n #_009117: dw $0040, $1040, $1000, $1040\n #_00911F: dw $1000, $0000, $0040, $0000\n #_009127: dw $1040, $0040, $1040, $1000\n\n; ---------------------------------------------------------\n" + }, + { + "name": "UnderworldTilemapQuadrantVRAMIndex", + "code": "UnderworldTilemapQuadrantVRAMIndex:\n #_00912F: db $01, $05, $09, $0D\n #_009133: db $02, $06, $0A, $0E\n #_009137: db $03, $07, $0B, $0F\n #_00913B: db $04, $08, $0C, $10\n\n; ---------------------------------------------------------\n" + }, + { + "name": "Underworld_PrepareNextRoomQuadrantUpload", + "code": "Underworld_PrepareNextRoomQuadrantUpload:\n #_00913F: REP #$31\n\n #_009141: LDA.w $0418\n #_009144: AND.w #$000F\n #_009147: ADC.w $045C\n #_00914A: PHA\n\n #_00914B: ASL A\n #_00914C: TAY\n\n #_00914D: LDX.w UnderworldTilemapQuadrantOffset,Y\n\n; ---------------------------------------------------------\n\n #_009150: LDY.w #$0000\n\n.next\n #_009153: LDA.l $7E2000,X\n #_009157: STA.w $1000,Y\n\n #_00915A: LDA.l $7E2002,X\n #_00915E: STA.w $1002,Y\n\n #_009161: LDA.l $7E2080,X\n #_009165: STA.w $1040,Y\n\n #_009168: LDA.l $7E2082,X\n #_00916C: STA.w $1042,Y\n\n #_00916F: LDA.l $7E2100,X\n #_009173: STA.w $1080,Y\n\n #_009176: LDA.l $7E2102,X\n #_00917A: STA.w $1082,Y\n\n #_00917D: LDA.l $7E2180,X\n #_009181: STA.w $10C0,Y\n\n #_009184: LDA.l $7E2182,X\n #_009188: STA.w $10C2,Y\n\n #_00918B: INX\n #_00918C: INX\n #_00918D: INX\n #_00918E: INX\n\n #_00918F: INY\n #_009190: INY\n #_009191: INY\n #_009192: INY\n\n #_009193: TYA\n #_009194: AND.w #$003F\n #_009197: BNE .next\n\n; ---------------------------------------------------------\n\n #_009199: TYA\n #_00919A: CLC\n #_00919B: ADC.w #$00C0\n #_00919E: TAY\n\n #_00919F: TXA\n #_0091A0: CLC\n #_0091A1: ADC.w #$01C0\n #_0091A4: TAX\n\n #_0091A5: CPY.w #$0800\n #_0091A8: BNE .next\n\n #_0091AA: PLX\n\n #_0091AB: SEP #$30\n\n #_0091AD: LDA.w $045C\n #_0091B0: CLC\n #_0091B1: ADC.b #$04\n #_0091B3: STA.w $045C\n\n #_0091B6: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_0091B9: STA.w $0116\n\n #_0091BC: LDA.b #$01\n #_0091BE: STA.b $17\n #_0091C0: STA.w $0710\n\n #_0091C3: RTL" + }, + { + "name": "WaterFlood_BuildOneQuadrantForVRAM", + "code": "WaterFlood_BuildOneQuadrantForVRAM:\n #_0091C4: LDA.b $AE\n #_0091C6: CMP.b #$19\n #_0091C8: BNE TilemapPrep_NotWaterOnTag\n\n #_0091CA: LDA.w $0405\n #_0091CD: AND.l DungeonMask+1\n #_0091D1: BEQ WaterFlood_BuildOneQuadrantForVRAM_not_triggered\n\n; =========================================================\n" + }, + { + "name": "TilemapPrep_NotWaterOnTag", + "code": "TilemapPrep_NotWaterOnTag:\n #_0091D3: REP #$31\n\n #_0091D5: LDA.w $0418\n #_0091D8: AND.w #$000F\n #_0091DB: ADC.w $045C\n #_0091DE: PHA\n\n #_0091DF: ASL A\n #_0091E0: TAY\n\n #_0091E1: LDX.w UnderworldTilemapQuadrantOffset,Y\n\n; ---------------------------------------------------------\n\n #_0091E4: LDY.w #$0000\n\n.next\n #_0091E7: LDA.l $7E4000,X\n #_0091EB: STA.w $1000,Y\n\n #_0091EE: LDA.l $7E4002,X\n #_0091F2: STA.w $1002,Y\n\n #_0091F5: LDA.l $7E4080,X\n #_0091F9: STA.w $1040,Y\n\n #_0091FC: LDA.l $7E4082,X\n #_009200: STA.w $1042,Y\n\n #_009203: LDA.l $7E4100,X\n #_009207: STA.w $1080,Y\n\n #_00920A: LDA.l $7E4102,X\n #_00920E: STA.w $1082,Y\n\n #_009211: LDA.l $7E4180,X\n #_009215: STA.w $10C0,Y\n\n #_009218: LDA.l $7E4182,X\n #_00921C: STA.w $10C2,Y\n\n #_00921F: INX\n #_009220: INX\n #_009221: INX\n #_009222: INX\n\n #_009223: INY\n #_009224: INY\n #_009225: INY\n #_009226: INY\n\n #_009227: TYA\n #_009228: AND.w #$003F\n #_00922B: BNE .next\n\n #_00922D: TYA\n #_00922E: CLC\n #_00922F: ADC.w #$00C0\n #_009232: TAY\n\n #_009233: TXA\n #_009234: CLC\n #_009235: ADC.w #$01C0\n #_009238: TAX\n\n #_009239: CPY.w #$0800\n #_00923C: BNE .next\n\n; ---------------------------------------------------------\n\n #_00923E: PLX\n\n #_00923F: SEP #$30\n\n #_009241: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_009244: CLC\n #_009245: ADC.b #$10\n #_009247: STA.w $0116\n\n #_00924A: LDA.b #$01\n #_00924C: STA.b $17\n #_00924E: STA.w $0710\n\n #_009251: RTL" + }, + { + "name": "WaterFlood_BuildOneQuadrantForVRAM_not_triggered", + "code": "WaterFlood_BuildOneQuadrantForVRAM_not_triggered:\n #_009252: REP #$31\n\n #_009254: LDX.w #$00F0\n\n #_009257: LDY.w #$0000\n\n.next\n #_00925A: LDA.w RoomDrawObjectData,X\n #_00925D: STA.w $1000,Y\n #_009260: STA.w $1002,Y\n #_009263: STA.w $1040,Y\n #_009266: STA.w $1042,Y\n #_009269: STA.w $1080,Y\n #_00926C: STA.w $1082,Y\n #_00926F: STA.w $10C0,Y\n #_009272: STA.w $10C2,Y\n\n #_009275: INY\n #_009276: INY\n #_009277: INY\n #_009278: INY\n\n #_009279: TYA\n #_00927A: AND.w #$003F\n #_00927D: BNE .next\n\n #_00927F: TYA\n #_009280: CLC\n #_009281: ADC.w #$00C0\n #_009284: TAY\n\n #_009285: CPY.w #$0800\n #_009288: BNE .next\n\n; ---------------------------------------------------------\n\n #_00928A: LDA.w $0418\n #_00928D: AND.w #$000F\n #_009290: CLC\n #_009291: ADC.w $045C\n #_009294: TAX\n\n #_009295: SEP #$30\n\n #_009297: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_00929A: CLC\n #_00929B: ADC.b #$10\n #_00929D: STA.w $0116\n\n #_0092A0: RTL" + }, + { + "name": "HandleStripes14", + "code": "HandleStripes14:\n #_0092A1: REP #$10\n\n #_0092A3: STA.w DMA1ADDRB\n\n #_0092A6: STZ.b $06\n\n #_0092A8: LDY.w #$0000\n\n #_0092AB: LDA.b [$00],Y\n #_0092AD: BPL .next_stripe\n\n #_0092AF: SEP #$30\n\n #_0092B1: RTS" + }, + { + "name": "NMI_UpdateIRQGFX", + "code": "NMI_UpdateIRQGFX:\n #_009347: LDA.w $1F0C\n #_00934A: BEQ .exit\n\n #_00934C: LDA.b #$80\n #_00934E: STA.w VMAIN\n\n #_009351: REP #$20\n\n #_009353: LDA.w #$5800 ; VRAM $B000\n #_009356: STA.w VMADDR\n\n #_009359: LDA.w #$1801\n #_00935C: STA.w DMA0MODE\n\n #_00935F: LDA.w #$7EE800>>0\n #_009362: STA.w DMA0ADDRL\n\n #_009365: LDX.b #$7EE800>>16\n #_009367: STX.w DMA0ADDRB\n\n #_00936A: LDA.w #$0800\n #_00936D: STA.w DMA0SIZE\n\n #_009370: SEP #$20\n\n #_009372: LDA.b #$01\n #_009374: STA.w MDMAEN\n\n #_009377: STZ.w $1F0C\n\n.exit\n #_00937A: RTS" + }, + { + "name": "Stripes14_SourceAddress", + "code": "Stripes14_SourceAddress:\n\n.low\n #_00937B: db $001002>>0\n #_00937C: db $001000>>0\n #_00937D: db IntroLogoTilemap>>0\n #_00937E: db $00021B>>0\n #_00937F: db NamePlayerTilemap>>0\n #_009380: db FileSelectTilemap>>0\n #_009381: db FileSelectCopyFileTilemap>>0\n #_009382: db FileSelectKILLFileTilemap>>0\n #_009383: db DungeonMap_BG3Tilemap>>0\n\n.high\n #_009384: db $001002>>8\n #_009385: db $001000>>8\n #_009386: db IntroLogoTilemap>>8\n #_009387: db $00021B>>8\n #_009388: db NamePlayerTilemap>>8\n #_009389: db FileSelectTilemap>>8\n #_00938A: db FileSelectCopyFileTilemap>>8\n #_00938B: db FileSelectKILLFileTilemap>>8\n #_00938C: db DungeonMap_BG3Tilemap>>8\n\n.bank\n #_00938D: db $001002>>16\n #_00938E: db $001000>>16\n #_00938F: db IntroLogoTilemap>>16\n #_009390: db $00021B>>16\n #_009391: db NamePlayerTilemap>>16\n #_009392: db FileSelectTilemap>>16\n #_009393: db FileSelectCopyFileTilemap>>16\n #_009394: db FileSelectKILLFileTilemap>>16\n #_009395: db DungeonMap_BG3Tilemap>>16\n\n; =========================================================\n" + }, + { + "name": "LinkOAM_HeadAddresses", + "code": "LinkOAM_HeadAddresses:\n #_009396: dw LinkGraphics+$0080 ; 0x000 - $108080\n #_009398: dw LinkGraphics+$0080 ; 0x001 - $108080\n #_00939A: dw LinkGraphics+$0080 ; 0x002 - $108080\n #_00939C: dw LinkGraphics+$0080 ; 0x003 - $108080\n #_00939E: dw LinkGraphics+$0080 ; 0x004 - $108080\n #_0093A0: dw LinkGraphics+$0040 ; 0x005 - $108040\n #_0093A2: dw LinkGraphics+$0040 ; 0x006 - $108040\n #_0093A4: dw LinkGraphics+$0040 ; 0x007 - $108040\n #_0093A6: dw LinkGraphics+$0040 ; 0x008 - $108040\n #_0093A8: dw LinkGraphics+$0040 ; 0x009 - $108040\n #_0093AA: dw LinkGraphics+$0000 ; 0x00A - $108000\n #_0093AC: dw LinkGraphics+$0000 ; 0x00B - $108000\n #_0093AE: dw LinkGraphics+$0000 ; 0x00C - $108000\n #_0093B0: dw LinkGraphics+$0000 ; 0x00D - $108000\n #_0093B2: dw LinkGraphics+$0000 ; 0x00E - $108000\n #_0093B4: dw LinkGraphics+$0000 ; 0x00F - $108000\n #_0093B6: dw LinkGraphics+$1440 ; 0x010 - $109440\n #_0093B8: dw LinkGraphics+$0080 ; 0x011 - $108080\n #_0093BA: dw LinkGraphics+$0080 ; 0x012 - $108080\n #_0093BC: dw LinkGraphics+$0080 ; 0x013 - $108080\n #_0093BE: dw LinkGraphics+$1400 ; 0x014 - $109400\n #_0093C0: dw LinkGraphics+$0040 ; 0x015 - $108040\n #_0093C2: dw LinkGraphics+$00C0 ; 0x016 - $1080C0\n #_0093C4: dw LinkGraphics+$00C0 ; 0x017 - $1080C0\n #_0093C6: dw LinkGraphics+$0000 ; 0x018 - $108000\n #_0093C8: dw LinkGraphics+$0000 ; 0x019 - $108000\n #_0093CA: dw LinkGraphics+$0000 ; 0x01A - $108000\n #_0093CC: dw LinkGraphics+$0000 ; 0x01B - $108000\n #_0093CE: dw LinkGraphics+$0000 ; 0x01C - $108000\n #_0093D0: dw LinkGraphics+$0000 ; 0x01D - $108000\n #_0093D2: dw LinkGraphics+$0000 ; 0x01E - $108000\n #_0093D4: dw LinkGraphics+$0000 ; 0x01F - $108000\n #_0093D6: dw LinkGraphics+$0080 ; 0x020 - $108080\n #_0093D8: dw LinkGraphics+$0080 ; 0x021 - $108080\n #_0093DA: dw LinkGraphics+$0080 ; 0x022 - $108080\n #_0093DC: dw LinkGraphics+$0080 ; 0x023 - $108080\n #_0093DE: dw LinkGraphics+$0080 ; 0x024 - $108080\n #_0093E0: dw LinkGraphics+$0040 ; 0x025 - $108040\n #_0093E2: dw LinkGraphics+$0040 ; 0x026 - $108040\n #_0093E4: dw LinkGraphics+$0040 ; 0x027 - $108040\n #_0093E6: dw LinkGraphics+$0040 ; 0x028 - $108040\n #_0093E8: dw LinkGraphics+$0040 ; 0x029 - $108040\n #_0093EA: dw LinkGraphics+$0000 ; 0x02A - $108000\n #_0093EC: dw LinkGraphics+$28C0 ; 0x02B - $10A8C0\n #_0093EE: dw LinkGraphics+$2900 ; 0x02C - $10A900\n #_0093F0: dw LinkGraphics+$0000 ; 0x02D - $108000\n #_0093F2: dw LinkGraphics+$28C0 ; 0x02E - $10A8C0\n #_0093F4: dw LinkGraphics+$2900 ; 0x02F - $10A900\n #_0093F6: dw LinkGraphics+$1100 ; 0x030 - $109100\n #_0093F8: dw LinkGraphics+$0080 ; 0x031 - $108080\n #_0093FA: dw LinkGraphics+$0080 ; 0x032 - $108080\n #_0093FC: dw LinkGraphics+$10C0 ; 0x033 - $1090C0\n #_0093FE: dw LinkGraphics+$0040 ; 0x034 - $108040\n #_009400: dw LinkGraphics+$0000 ; 0x035 - $108000\n #_009402: dw LinkGraphics+$0000 ; 0x036 - $108000\n #_009404: dw LinkGraphics+$0000 ; 0x037 - $108000\n #_009406: dw LinkGraphics+$0000 ; 0x038 - $108000\n #_009408: dw LinkGraphics+$0000 ; 0x039 - $108000\n #_00940A: dw LinkGraphics+$0000 ; 0x03A - $108000\n #_00940C: dw LinkGraphics+$1A00 ; 0x03B - $109A00\n #_00940E: dw LinkGraphics+$1140 ; 0x03C - $109140\n #_009410: dw LinkGraphics+$1180 ; 0x03D - $109180\n #_009412: dw LinkGraphics+$0000 ; 0x03E - $108000\n #_009414: dw LinkGraphics+$1500 ; 0x03F - $109500\n #_009416: dw LinkGraphics+$1480 ; 0x040 - $109480\n #_009418: dw LinkGraphics+$14C0 ; 0x041 - $1094C0\n #_00941A: dw LinkGraphics+$14C0 ; 0x042 - $1094C0\n #_00941C: dw LinkGraphics+$1AE0 ; 0x043 - $109AE0\n #_00941E: dw LinkGraphics+$0080 ; 0x044 - $108080\n #_009420: dw LinkGraphics+$0080 ; 0x045 - $108080\n #_009422: dw LinkGraphics+$1A60 ; 0x046 - $109A60\n #_009424: dw LinkGraphics+$00C0 ; 0x047 - $1080C0\n #_009426: dw LinkGraphics+$00C0 ; 0x048 - $1080C0\n #_009428: dw LinkGraphics+$1AA0 ; 0x049 - $109AA0\n #_00942A: dw LinkGraphics+$0000 ; 0x04A - $108000\n #_00942C: dw LinkGraphics+$0000 ; 0x04B - $108000\n #_00942E: dw LinkGraphics+$1AA0 ; 0x04C - $109AA0\n #_009430: dw LinkGraphics+$0000 ; 0x04D - $108000\n #_009432: dw LinkGraphics+$0000 ; 0x04E - $108000\n #_009434: dw LinkGraphics+$0080 ; 0x04F - $108080\n #_009436: dw LinkGraphics+$0080 ; 0x050 - $108080\n #_009438: dw LinkGraphics+$0100 ; 0x051 - $108100\n #_00943A: dw LinkGraphics+$0100 ; 0x052 - $108100\n #_00943C: dw LinkGraphics+$05C0 ; 0x053 - $1085C0\n #_00943E: dw LinkGraphics+$0000 ; 0x054 - $108000\n #_009440: dw LinkGraphics+$0000 ; 0x055 - $108000\n #_009442: dw LinkGraphics+$05C0 ; 0x056 - $1085C0\n #_009444: dw LinkGraphics+$0000 ; 0x057 - $108000\n #_009446: dw LinkGraphics+$0000 ; 0x058 - $108000\n #_009448: dw LinkGraphics+$2DC0 ; 0x059 - $10ADC0\n #_00944A: dw LinkGraphics+$2DC0 ; 0x05A - $10ADC0\n #_00944C: dw LinkGraphics+$2DC0 ; 0x05B - $10ADC0\n #_00944E: dw LinkGraphics+$2DC0 ; 0x05C - $10ADC0\n #_009450: dw LinkGraphics+$2DC0 ; 0x05D - $10ADC0\n #_009452: dw LinkGraphics+$2D40 ; 0x05E - $10AD40\n #_009454: dw LinkGraphics+$2D40 ; 0x05F - $10AD40\n #_009456: dw LinkGraphics+$2D40 ; 0x060 - $10AD40\n #_009458: dw LinkGraphics+$2D40 ; 0x061 - $10AD40\n #_00945A: dw LinkGraphics+$2D40 ; 0x062 - $10AD40\n #_00945C: dw LinkGraphics+$2D80 ; 0x063 - $10AD80\n #_00945E: dw LinkGraphics+$2D80 ; 0x064 - $10AD80\n #_009460: dw LinkGraphics+$2D80 ; 0x065 - $10AD80\n #_009462: dw LinkGraphics+$2D80 ; 0x066 - $10AD80\n #_009464: dw LinkGraphics+$2D80 ; 0x067 - $10AD80\n #_009466: dw LinkGraphics+$2D80 ; 0x068 - $10AD80\n #_009468: dw LinkGraphics+$0040 ; 0x069 - $108040\n #_00946A: dw LinkGraphics+$1400 ; 0x06A - $109400\n #_00946C: dw LinkGraphics+$0040 ; 0x06B - $108040\n #_00946E: dw LinkGraphics+$0000 ; 0x06C - $108000\n #_009470: dw LinkGraphics+$0080 ; 0x06D - $108080\n #_009472: dw LinkGraphics+$0080 ; 0x06E - $108080\n #_009474: dw LinkGraphics+$1440 ; 0x06F - $109440\n #_009476: dw LinkGraphics+$0000 ; 0x070 - $108000\n #_009478: dw LinkGraphics+$0000 ; 0x071 - $108000\n #_00947A: dw LinkGraphics+$0000 ; 0x072 - $108000\n #_00947C: dw LinkGraphics+$0000 ; 0x073 - $108000\n #_00947E: dw LinkGraphics+$0080 ; 0x074 - $108080\n #_009480: dw LinkGraphics+$0040 ; 0x075 - $108040\n #_009482: dw LinkGraphics+$0040 ; 0x076 - $108040\n #_009484: dw LinkGraphics+$0000 ; 0x077 - $108000\n #_009486: dw LinkGraphics+$0000 ; 0x078 - $108000\n #_009488: dw LinkGraphics+$0000 ; 0x079 - $108000\n #_00948A: dw LinkGraphics+$0000 ; 0x07A - $108000\n #_00948C: dw LinkGraphics+$0000 ; 0x07B - $108000\n #_00948E: dw LinkGraphics+$0000 ; 0x07C - $108000\n #_009490: dw LinkGraphics+$4440 ; 0x07D - $10C440\n #_009492: dw LinkGraphics+$0140 ; 0x07E - $108140\n #_009494: dw LinkGraphics+$0140 ; 0x07F - $108140\n #_009496: dw LinkGraphics+$4A40 ; 0x080 - $10CA40\n #_009498: dw LinkGraphics+$0000 ; 0x081 - $108000\n #_00949A: dw LinkGraphics+$0000 ; 0x082 - $108000\n #_00949C: dw LinkGraphics+$0000 ; 0x083 - $108000\n #_00949E: dw LinkGraphics+$0000 ; 0x084 - $108000\n #_0094A0: dw LinkGraphics+$0000 ; 0x085 - $108000\n #_0094A2: dw LinkGraphics+$0000 ; 0x086 - $108000\n #_0094A4: dw LinkGraphics+$0040 ; 0x087 - $108040\n #_0094A6: dw LinkGraphics+$05C0 ; 0x088 - $1085C0\n #_0094A8: dw LinkGraphics+$0040 ; 0x089 - $108040\n #_0094AA: dw LinkGraphics+$05C0 ; 0x08A - $1085C0\n #_0094AC: dw LinkGraphics+$0100 ; 0x08B - $108100\n #_0094AE: dw LinkGraphics+$00C0 ; 0x08C - $1080C0\n #_0094B0: dw LinkGraphics+$11C0 ; 0x08D - $1091C0\n #_0094B2: dw LinkGraphics+$0080 ; 0x08E - $108080\n #_0094B4: dw LinkGraphics+$0080 ; 0x08F - $108080\n #_0094B6: dw LinkGraphics+$0040 ; 0x090 - $108040\n #_0094B8: dw LinkGraphics+$0040 ; 0x091 - $108040\n #_0094BA: dw LinkGraphics+$0000 ; 0x092 - $108000\n #_0094BC: dw LinkGraphics+$0000 ; 0x093 - $108000\n #_0094BE: dw LinkGraphics+$0000 ; 0x094 - $108000\n #_0094C0: dw LinkGraphics+$0000 ; 0x095 - $108000\n #_0094C2: dw LinkGraphics+$0080 ; 0x096 - $108080\n #_0094C4: dw LinkGraphics+$0080 ; 0x097 - $108080\n #_0094C6: dw LinkGraphics+$1100 ; 0x098 - $109100\n #_0094C8: dw LinkGraphics+$20C0 ; 0x099 - $10A0C0\n #_0094CA: dw LinkGraphics+$2100 ; 0x09A - $10A100\n #_0094CC: dw LinkGraphics+$2100 ; 0x09B - $10A100\n #_0094CE: dw LinkGraphics+$21C0 ; 0x09C - $10A1C0\n #_0094D0: dw LinkGraphics+$2400 ; 0x09D - $10A400\n #_0094D2: dw LinkGraphics+$2440 ; 0x09E - $10A440\n #_0094D4: dw LinkGraphics+$21C0 ; 0x09F - $10A1C0\n #_0094D6: dw LinkGraphics+$2400 ; 0x0A0 - $10A400\n #_0094D8: dw LinkGraphics+$2440 ; 0x0A1 - $10A440\n #_0094DA: dw LinkGraphics+$0080 ; 0x0A2 - $108080\n #_0094DC: dw LinkGraphics+$4480 ; 0x0A3 - $10C480\n #_0094DE: dw LinkGraphics+$0080 ; 0x0A4 - $108080\n #_0094E0: dw LinkGraphics+$0040 ; 0x0A5 - $108040\n #_0094E2: dw LinkGraphics+$0040 ; 0x0A6 - $108040\n #_0094E4: dw LinkGraphics+$4A80 ; 0x0A7 - $10CA80\n #_0094E6: dw LinkGraphics+$4A80 ; 0x0A8 - $10CA80\n #_0094E8: dw LinkGraphics+$4A00 ; 0x0A9 - $10CA00\n #_0094EA: dw LinkGraphics+$4400 ; 0x0AA - $10C400\n #_0094EC: dw LinkGraphics+$4A00 ; 0x0AB - $10CA00\n #_0094EE: dw LinkGraphics+$4400 ; 0x0AC - $10C400\n #_0094F0: dw LinkGraphics+$01C0 ; 0x0AD - $1081C0\n #_0094F2: dw LinkGraphics+$0080 ; 0x0AE - $108080\n #_0094F4: dw LinkGraphics+$0080 ; 0x0AF - $108080\n #_0094F6: dw LinkGraphics+$0080 ; 0x0B0 - $108080\n #_0094F8: dw LinkGraphics+$0080 ; 0x0B1 - $108080\n #_0094FA: dw LinkGraphics+$0080 ; 0x0B2 - $108080\n #_0094FC: dw LinkGraphics+$0080 ; 0x0B3 - $108080\n #_0094FE: dw LinkGraphics+$0080 ; 0x0B4 - $108080\n #_009500: dw LinkGraphics+$0080 ; 0x0B5 - $108080\n #_009502: dw LinkGraphics+$0040 ; 0x0B6 - $108040\n #_009504: dw LinkGraphics+$0040 ; 0x0B7 - $108040\n #_009506: dw LinkGraphics+$0040 ; 0x0B8 - $108040\n #_009508: dw LinkGraphics+$0040 ; 0x0B9 - $108040\n #_00950A: dw LinkGraphics+$0040 ; 0x0BA - $108040\n #_00950C: dw LinkGraphics+$0040 ; 0x0BB - $108040\n #_00950E: dw LinkGraphics+$0040 ; 0x0BC - $108040\n #_009510: dw LinkGraphics+$0000 ; 0x0BD - $108000\n #_009512: dw LinkGraphics+$28C0 ; 0x0BE - $10A8C0\n #_009514: dw LinkGraphics+$2900 ; 0x0BF - $10A900\n #_009516: dw LinkGraphics+$0000 ; 0x0C0 - $108000\n #_009518: dw LinkGraphics+$0000 ; 0x0C1 - $108000\n #_00951A: dw LinkGraphics+$28C0 ; 0x0C2 - $10A8C0\n #_00951C: dw LinkGraphics+$2900 ; 0x0C3 - $10A900\n #_00951E: dw LinkGraphics+$0000 ; 0x0C4 - $108000\n #_009520: dw LinkGraphics+$28C0 ; 0x0C5 - $10A8C0\n #_009522: dw LinkGraphics+$2900 ; 0x0C6 - $10A900\n #_009524: dw LinkGraphics+$0000 ; 0x0C7 - $108000\n #_009526: dw LinkGraphics+$0000 ; 0x0C8 - $108000\n #_009528: dw LinkGraphics+$28C0 ; 0x0C9 - $10A8C0\n #_00952A: dw LinkGraphics+$2900 ; 0x0CA - $10A900\n #_00952C: dw LinkGraphics+$0040 ; 0x0CB - $108040\n #_00952E: dw LinkGraphics+$0040 ; 0x0CC - $108040\n #_009530: dw LinkGraphics+$0040 ; 0x0CD - $108040\n #_009532: dw LinkGraphics+$0080 ; 0x0CE - $108080\n #_009534: dw LinkGraphics+$0080 ; 0x0CF - $108080\n #_009536: dw LinkGraphics+$0040 ; 0x0D0 - $108040\n #_009538: dw LinkGraphics+$0040 ; 0x0D1 - $108040\n #_00953A: dw LinkGraphics+$0040 ; 0x0D2 - $108040\n #_00953C: dw LinkGraphics+$0040 ; 0x0D3 - $108040\n #_00953E: dw LinkGraphics+$0000 ; 0x0D4 - $108000\n #_009540: dw LinkGraphics+$0000 ; 0x0D5 - $108000\n #_009542: dw LinkGraphics+$0000 ; 0x0D6 - $108000\n #_009544: dw LinkGraphics+$0000 ; 0x0D7 - $108000\n #_009546: dw LinkGraphics+$5080 ; 0x0D8 - $10D080\n #_009548: dw LinkGraphics+$0080 ; 0x0D9 - $108080\n #_00954A: dw LinkGraphics+$10C0 ; 0x0DA - $1090C0\n #_00954C: dw LinkGraphics+$5000 ; 0x0DB - $10D000\n #_00954E: dw LinkGraphics+$1080 ; 0x0DC - $109080\n #_009550: dw LinkGraphics+$5040 ; 0x0DD - $10D040\n #_009552: dw LinkGraphics+$1080 ; 0x0DE - $109080\n #_009554: dw LinkGraphics+$5040 ; 0x0DF - $10D040\n #_009556: dw LinkGraphics+$5080 ; 0x0E0 - $10D080\n #_009558: dw LinkGraphics+$5080 ; 0x0E1 - $10D080\n #_00955A: dw LinkGraphics+$5080 ; 0x0E2 - $10D080\n #_00955C: dw LinkGraphics+$5080 ; 0x0E3 - $10D080\n #_00955E: dw LinkGraphics+$5080 ; 0x0E4 - $10D080\n #_009560: dw LinkGraphics+$5000 ; 0x0E5 - $10D000\n #_009562: dw LinkGraphics+$5000 ; 0x0E6 - $10D000\n #_009564: dw LinkGraphics+$5000 ; 0x0E7 - $10D000\n #_009566: dw LinkGraphics+$5000 ; 0x0E8 - $10D000\n #_009568: dw LinkGraphics+$5000 ; 0x0E9 - $10D000\n #_00956A: dw LinkGraphics+$5040 ; 0x0EA - $10D040\n #_00956C: dw LinkGraphics+$5040 ; 0x0EB - $10D040\n #_00956E: dw LinkGraphics+$5040 ; 0x0EC - $10D040\n #_009570: dw LinkGraphics+$5040 ; 0x0ED - $10D040\n #_009572: dw LinkGraphics+$5040 ; 0x0EE - $10D040\n #_009574: dw LinkGraphics+$5040 ; 0x0EF - $10D040\n #_009576: dw LinkGraphics+$0040 ; 0x0F0 - $108040\n #_009578: dw LinkGraphics+$5000 ; 0x0F1 - $10D000\n #_00957A: dw LinkGraphics+$05C0 ; 0x0F2 - $1085C0\n #_00957C: dw LinkGraphics+$05C0 ; 0x0F3 - $1085C0\n #_00957E: dw LinkGraphics+$05C0 ; 0x0F4 - $1085C0\n #_009580: dw LinkGraphics+$5C40 ; 0x0F5 - $10DC40\n #_009582: dw LinkGraphics+$5C40 ; 0x0F6 - $10DC40\n #_009584: dw LinkGraphics+$5C40 ; 0x0F7 - $10DC40\n #_009586: dw LinkGraphics+$05C0 ; 0x0F8 - $1085C0\n #_009588: dw LinkGraphics+$05C0 ; 0x0F9 - $1085C0\n #_00958A: dw LinkGraphics+$05C0 ; 0x0FA - $1085C0\n #_00958C: dw LinkGraphics+$5C40 ; 0x0FB - $10DC40\n #_00958E: dw LinkGraphics+$5C40 ; 0x0FC - $10DC40\n #_009590: dw LinkGraphics+$5C40 ; 0x0FD - $10DC40\n #_009592: dw LinkGraphics+$61C0 ; 0x0FE - $10E1C0\n #_009594: dw LinkGraphics+$5000 ; 0x0FF - $10D000\n #_009596: dw LinkGraphics+$0000 ; 0x100 - $108000\n #_009598: dw LinkGraphics+$6400 ; 0x101 - $10E400\n #_00959A: dw LinkGraphics+$6400 ; 0x102 - $10E400\n #_00959C: dw LinkGraphics+$6440 ; 0x103 - $10E440\n #_00959E: dw LinkGraphics+$10C0 ; 0x104 - $1090C0\n #_0095A0: dw LinkGraphics+$10C0 ; 0x105 - $1090C0\n #_0095A2: dw LinkGraphics+$5000 ; 0x106 - $10D000\n #_0095A4: dw LinkGraphics+$0000 ; 0x107 - $108000\n #_0095A6: dw LinkGraphics+$0000 ; 0x108 - $108000\n #_0095A8: dw LinkGraphics+$5040 ; 0x109 - $10D040\n #_0095AA: dw LinkGraphics+$0000 ; 0x10A - $108000\n #_0095AC: dw LinkGraphics+$0000 ; 0x10B - $108000\n #_0095AE: dw LinkGraphics+$5040 ; 0x10C - $10D040\n #_0095B0: dw LinkGraphics+$6400 ; 0x10D - $10E400\n #_0095B2: dw LinkGraphics+$6400 ; 0x10E - $10E400\n #_0095B4: dw LinkGraphics+$6400 ; 0x10F - $10E400\n #_0095B6: dw LinkGraphics+$1080 ; 0x110 - $109080\n #_0095B8: dw LinkGraphics+$25C0 ; 0x111 - $10A5C0\n #_0095BA: dw LinkGraphics+$2C40 ; 0x112 - $10AC40\n #_0095BC: dw LinkGraphics+$6480 ; 0x113 - $10E480\n #_0095BE: dw LinkGraphics+$0180 ; 0x114 - $108180\n #_0095C0: dw LinkGraphics+$10C0 ; 0x115 - $1090C0\n #_0095C2: dw LinkGraphics+$00C0 ; 0x116 - $1080C0\n #_0095C4: dw LinkGraphics+$6180 ; 0x117 - $10E180\n #_0095C6: dw LinkGraphics+$5000 ; 0x118 - $10D000\n #_0095C8: dw LinkGraphics+$64C0 ; 0x119 - $10E4C0\n #_0095CA: dw LinkGraphics+$64C0 ; 0x11A - $10E4C0\n #_0095CC: dw LinkGraphics+$6840 ; 0x11B - $10E840\n #_0095CE: dw LinkGraphics+$6840 ; 0x11C - $10E840\n #_0095D0: dw LinkGraphics+$6840 ; 0x11D - $10E840\n #_0095D2: dw LinkGraphics+$6540 ; 0x11E - $10E540\n #_0095D4: dw LinkGraphics+$6540 ; 0x11F - $10E540\n #_0095D6: dw LinkGraphics+$6540 ; 0x120 - $10E540\n #_0095D8: dw LinkGraphics+$6900 ; 0x121 - $10E900\n #_0095DA: dw LinkGraphics+$6900 ; 0x122 - $10E900\n #_0095DC: dw LinkGraphics+$6900 ; 0x123 - $10E900\n #_0095DE: dw LinkGraphics+$6900 ; 0x124 - $10E900\n #_0095E0: dw LinkGraphics+$0080 ; 0x125 - $108080\n #_0095E2: dw LinkGraphics+$0080 ; 0x126 - $108080\n #_0095E4: dw LinkGraphics+$0000 ; 0x127 - $108000\n #_0095E6: dw LinkGraphics+$29C0 ; 0x128 - $10A9C0\n #_0095E8: dw LinkGraphics+$0080 ; 0x129 - $108080\n #_0095EA: dw LinkGraphics+$0140 ; 0x12A - $108140\n #_0095EC: dw LinkGraphics+$11C0 ; 0x12B - $1091C0\n #_0095EE: dw LinkGraphics+$0040 ; 0x12C - $108040\n #_0095F0: dw LinkGraphics+$2800 ; 0x12D - $10A800\n #_0095F2: dw LinkGraphics+$2840 ; 0x12E - $10A840\n\n; =========================================================\n" + }, + { + "name": "LinkOAM_BodyAddresses", + "code": "LinkOAM_BodyAddresses:\n #_0095F4: dw LinkGraphics+$0840 ; 0x000 - $108840\n #_0095F6: dw LinkGraphics+$0800 ; 0x001 - $108800\n #_0095F8: dw LinkGraphics+$0580 ; 0x002 - $108580\n #_0095FA: dw LinkGraphics+$0800 ; 0x003 - $108800\n #_0095FC: dw LinkGraphics+$0580 ; 0x004 - $108580\n #_0095FE: dw LinkGraphics+$04C0 ; 0x005 - $1084C0\n #_009600: dw LinkGraphics+$0500 ; 0x006 - $108500\n #_009602: dw LinkGraphics+$0540 ; 0x007 - $108540\n #_009604: dw LinkGraphics+$0500 ; 0x008 - $108500\n #_009606: dw LinkGraphics+$0540 ; 0x009 - $108540\n #_009608: dw LinkGraphics+$0400 ; 0x00A - $108400\n #_00960A: dw LinkGraphics+$0440 ; 0x00B - $108440\n #_00960C: dw LinkGraphics+$0480 ; 0x00C - $108480\n #_00960E: dw LinkGraphics+$0400 ; 0x00D - $108400\n #_009610: dw LinkGraphics+$0440 ; 0x00E - $108440\n #_009612: dw LinkGraphics+$0480 ; 0x00F - $108480\n #_009614: dw LinkGraphics+$1640 ; 0x010 - $109640\n #_009616: dw LinkGraphics+$0C40 ; 0x011 - $108C40\n #_009618: dw LinkGraphics+$0C80 ; 0x012 - $108C80\n #_00961A: dw LinkGraphics+$2D00 ; 0x013 - $10AD00\n #_00961C: dw LinkGraphics+$1600 ; 0x014 - $109600\n #_00961E: dw LinkGraphics+$0980 ; 0x015 - $108980\n #_009620: dw LinkGraphics+$0C00 ; 0x016 - $108C00\n #_009622: dw LinkGraphics+$2CC0 ; 0x017 - $10ACC0\n #_009624: dw LinkGraphics+$0880 ; 0x018 - $108880\n #_009626: dw LinkGraphics+$08C0 ; 0x019 - $1088C0\n #_009628: dw LinkGraphics+$0900 ; 0x01A - $108900\n #_00962A: dw LinkGraphics+$0940 ; 0x01B - $108940\n #_00962C: dw LinkGraphics+$0880 ; 0x01C - $108880\n #_00962E: dw LinkGraphics+$08C0 ; 0x01D - $1088C0\n #_009630: dw LinkGraphics+$0900 ; 0x01E - $108900\n #_009632: dw LinkGraphics+$0940 ; 0x01F - $108940\n #_009634: dw LinkGraphics+$30C0 ; 0x020 - $10B0C0\n #_009636: dw LinkGraphics+$3100 ; 0x021 - $10B100\n #_009638: dw LinkGraphics+$3140 ; 0x022 - $10B140\n #_00963A: dw LinkGraphics+$3100 ; 0x023 - $10B100\n #_00963C: dw LinkGraphics+$3140 ; 0x024 - $10B140\n #_00963E: dw LinkGraphics+$3000 ; 0x025 - $10B000\n #_009640: dw LinkGraphics+$3040 ; 0x026 - $10B040\n #_009642: dw LinkGraphics+$3080 ; 0x027 - $10B080\n #_009644: dw LinkGraphics+$6C80 ; 0x028 - $10EC80\n #_009646: dw LinkGraphics+$6CC0 ; 0x029 - $10ECC0\n #_009648: dw LinkGraphics+$3180 ; 0x02A - $10B180\n #_00964A: dw LinkGraphics+$5440 ; 0x02B - $10D440\n #_00964C: dw LinkGraphics+$31C0 ; 0x02C - $10B1C0\n #_00964E: dw LinkGraphics+$3180 ; 0x02D - $10B180\n #_009650: dw LinkGraphics+$5440 ; 0x02E - $10D440\n #_009652: dw LinkGraphics+$31C0 ; 0x02F - $10B1C0\n #_009654: dw LinkGraphics+$0C80 ; 0x030 - $108C80\n #_009656: dw LinkGraphics+$2D00 ; 0x031 - $10AD00\n #_009658: dw LinkGraphics+$15C0 ; 0x032 - $1095C0\n #_00965A: dw LinkGraphics+$19C0 ; 0x033 - $1099C0\n #_00965C: dw LinkGraphics+$3440 ; 0x034 - $10B440\n #_00965E: dw LinkGraphics+$1580 ; 0x035 - $109580\n #_009660: dw LinkGraphics+$3480 ; 0x036 - $10B480\n #_009662: dw LinkGraphics+$34C0 ; 0x037 - $10B4C0\n #_009664: dw LinkGraphics+$1580 ; 0x038 - $109580\n #_009666: dw LinkGraphics+$3480 ; 0x039 - $10B480\n #_009668: dw LinkGraphics+$34C0 ; 0x03A - $10B4C0\n #_00966A: dw LinkGraphics+$1C20 ; 0x03B - $109C20\n #_00966C: dw LinkGraphics+$0000 ; 0x03C - $108000\n #_00966E: dw LinkGraphics+$0000 ; 0x03D - $108000\n #_009670: dw LinkGraphics+$0000 ; 0x03E - $108000\n #_009672: dw LinkGraphics+$1700 ; 0x03F - $109700\n #_009674: dw LinkGraphics+$1680 ; 0x040 - $109680\n #_009676: dw LinkGraphics+$16C0 ; 0x041 - $1096C0\n #_009678: dw LinkGraphics+$16C0 ; 0x042 - $1096C0\n #_00967A: dw LinkGraphics+$1CE0 ; 0x043 - $109CE0\n #_00967C: dw LinkGraphics+$0C80 ; 0x044 - $108C80\n #_00967E: dw LinkGraphics+$3540 ; 0x045 - $10B540\n #_009680: dw LinkGraphics+$1C60 ; 0x046 - $109C60\n #_009682: dw LinkGraphics+$3580 ; 0x047 - $10B580\n #_009684: dw LinkGraphics+$0C00 ; 0x048 - $108C00\n #_009686: dw LinkGraphics+$1CA0 ; 0x049 - $109CA0\n #_009688: dw LinkGraphics+$0900 ; 0x04A - $108900\n #_00968A: dw LinkGraphics+$3500 ; 0x04B - $10B500\n #_00968C: dw LinkGraphics+$1CA0 ; 0x04C - $109CA0\n #_00968E: dw LinkGraphics+$0900 ; 0x04D - $108900\n #_009690: dw LinkGraphics+$3500 ; 0x04E - $10B500\n #_009692: dw LinkGraphics+$0C40 ; 0x04F - $108C40\n #_009694: dw LinkGraphics+$6C40 ; 0x050 - $10EC40\n #_009696: dw LinkGraphics+$0C00 ; 0x051 - $108C00\n #_009698: dw LinkGraphics+$6C00 ; 0x052 - $10EC00\n #_00969A: dw LinkGraphics+$0DC0 ; 0x053 - $108DC0\n #_00969C: dw LinkGraphics+$1540 ; 0x054 - $109540\n #_00969E: dw LinkGraphics+$09C0 ; 0x055 - $1089C0\n #_0096A0: dw LinkGraphics+$0DC0 ; 0x056 - $108DC0\n #_0096A2: dw LinkGraphics+$1540 ; 0x057 - $109540\n #_0096A4: dw LinkGraphics+$09C0 ; 0x058 - $1089C0\n #_0096A6: dw LinkGraphics+$3940 ; 0x059 - $10B940\n #_0096A8: dw LinkGraphics+$3980 ; 0x05A - $10B980\n #_0096AA: dw LinkGraphics+$39C0 ; 0x05B - $10B9C0\n #_0096AC: dw LinkGraphics+$3980 ; 0x05C - $10B980\n #_0096AE: dw LinkGraphics+$39C0 ; 0x05D - $10B9C0\n #_0096B0: dw LinkGraphics+$35C0 ; 0x05E - $10B5C0\n #_0096B2: dw LinkGraphics+$3800 ; 0x05F - $10B800\n #_0096B4: dw LinkGraphics+$3840 ; 0x060 - $10B840\n #_0096B6: dw LinkGraphics+$3800 ; 0x061 - $10B800\n #_0096B8: dw LinkGraphics+$3840 ; 0x062 - $10B840\n #_0096BA: dw LinkGraphics+$3880 ; 0x063 - $10B880\n #_0096BC: dw LinkGraphics+$38C0 ; 0x064 - $10B8C0\n #_0096BE: dw LinkGraphics+$3900 ; 0x065 - $10B900\n #_0096C0: dw LinkGraphics+$3880 ; 0x066 - $10B880\n #_0096C2: dw LinkGraphics+$38C0 ; 0x067 - $10B8C0\n #_0096C4: dw LinkGraphics+$3900 ; 0x068 - $10B900\n #_0096C6: dw LinkGraphics+$0980 ; 0x069 - $108980\n #_0096C8: dw LinkGraphics+$1600 ; 0x06A - $109600\n #_0096CA: dw LinkGraphics+$3CC0 ; 0x06B - $10BCC0\n #_0096CC: dw LinkGraphics+$0400 ; 0x06C - $108400\n #_0096CE: dw LinkGraphics+$3C80 ; 0x06D - $10BC80\n #_0096D0: dw LinkGraphics+$0C40 ; 0x06E - $108C40\n #_0096D2: dw LinkGraphics+$1640 ; 0x06F - $109640\n #_0096D4: dw LinkGraphics+$2040 ; 0x070 - $10A040\n #_0096D6: dw LinkGraphics+$2080 ; 0x071 - $10A080\n #_0096D8: dw LinkGraphics+$2000 ; 0x072 - $10A000\n #_0096DA: dw LinkGraphics+$3C40 ; 0x073 - $10BC40\n #_0096DC: dw LinkGraphics+$3D40 ; 0x074 - $10BD40\n #_0096DE: dw LinkGraphics+$0500 ; 0x075 - $108500\n #_0096E0: dw LinkGraphics+$3D00 ; 0x076 - $10BD00\n #_0096E2: dw LinkGraphics+$3D80 ; 0x077 - $10BD80\n #_0096E4: dw LinkGraphics+$3D80 ; 0x078 - $10BD80\n #_0096E6: dw LinkGraphics+$08C0 ; 0x079 - $1088C0\n #_0096E8: dw LinkGraphics+$0900 ; 0x07A - $108900\n #_0096EA: dw LinkGraphics+$69C0 ; 0x07B - $10E9C0\n #_0096EC: dw LinkGraphics+$0900 ; 0x07C - $108900\n #_0096EE: dw LinkGraphics+$4640 ; 0x07D - $10C640\n #_0096F0: dw LinkGraphics+$4040 ; 0x07E - $10C040\n #_0096F2: dw LinkGraphics+$4000 ; 0x07F - $10C000\n #_0096F4: dw LinkGraphics+$4C40 ; 0x080 - $10CC40\n #_0096F6: dw LinkGraphics+$0940 ; 0x081 - $108940\n #_0096F8: dw LinkGraphics+$08C0 ; 0x082 - $1088C0\n #_0096FA: dw LinkGraphics+$0900 ; 0x083 - $108900\n #_0096FC: dw LinkGraphics+$69C0 ; 0x084 - $10E9C0\n #_0096FE: dw LinkGraphics+$0900 ; 0x085 - $108900\n #_009700: dw LinkGraphics+$0940 ; 0x086 - $108940\n #_009702: dw LinkGraphics+$0D40 ; 0x087 - $108D40\n #_009704: dw LinkGraphics+$0D80 ; 0x088 - $108D80\n #_009706: dw LinkGraphics+$0D40 ; 0x089 - $108D40\n #_009708: dw LinkGraphics+$0D80 ; 0x08A - $108D80\n #_00970A: dw LinkGraphics+$3D00 ; 0x08B - $10BD00\n #_00970C: dw LinkGraphics+$3000 ; 0x08C - $10B000\n #_00970E: dw LinkGraphics+$3000 ; 0x08D - $10B000\n #_009710: dw LinkGraphics+$2480 ; 0x08E - $10A480\n #_009712: dw LinkGraphics+$2480 ; 0x08F - $10A480\n #_009714: dw LinkGraphics+$2480 ; 0x090 - $10A480\n #_009716: dw LinkGraphics+$2480 ; 0x091 - $10A480\n #_009718: dw LinkGraphics+$2C00 ; 0x092 - $10AC00\n #_00971A: dw LinkGraphics+$2C00 ; 0x093 - $10AC00\n #_00971C: dw LinkGraphics+$2C00 ; 0x094 - $10AC00\n #_00971E: dw LinkGraphics+$2C00 ; 0x095 - $10AC00\n #_009720: dw LinkGraphics+$2140 ; 0x096 - $10A140\n #_009722: dw LinkGraphics+$2180 ; 0x097 - $10A180\n #_009724: dw LinkGraphics+$2180 ; 0x098 - $10A180\n #_009726: dw LinkGraphics+$24C0 ; 0x099 - $10A4C0\n #_009728: dw LinkGraphics+$24C0 ; 0x09A - $10A4C0\n #_00972A: dw LinkGraphics+$2500 ; 0x09B - $10A500\n #_00972C: dw LinkGraphics+$1D40 ; 0x09C - $109D40\n #_00972E: dw LinkGraphics+$1D80 ; 0x09D - $109D80\n #_009730: dw LinkGraphics+$1DC0 ; 0x09E - $109DC0\n #_009732: dw LinkGraphics+$1D40 ; 0x09F - $109D40\n #_009734: dw LinkGraphics+$1D80 ; 0x0A0 - $109D80\n #_009736: dw LinkGraphics+$1DC0 ; 0x0A1 - $109DC0\n #_009738: dw LinkGraphics+$0D00 ; 0x0A2 - $108D00\n #_00973A: dw LinkGraphics+$4680 ; 0x0A3 - $10C680\n #_00973C: dw LinkGraphics+$4180 ; 0x0A4 - $10C180\n #_00973E: dw LinkGraphics+$4140 ; 0x0A5 - $10C140\n #_009740: dw LinkGraphics+$0C00 ; 0x0A6 - $108C00\n #_009742: dw LinkGraphics+$4C80 ; 0x0A7 - $10CC80\n #_009744: dw LinkGraphics+$4C80 ; 0x0A8 - $10CC80\n #_009746: dw LinkGraphics+$4C00 ; 0x0A9 - $10CC00\n #_009748: dw LinkGraphics+$4600 ; 0x0AA - $10C600\n #_00974A: dw LinkGraphics+$4C00 ; 0x0AB - $10CC00\n #_00974C: dw LinkGraphics+$4600 ; 0x0AC - $10C600\n #_00974E: dw LinkGraphics+$3D00 ; 0x0AD - $10BD00\n #_009750: dw LinkGraphics+$0580 ; 0x0AE - $108580\n #_009752: dw LinkGraphics+$0800 ; 0x0AF - $108800\n #_009754: dw LinkGraphics+$49C0 ; 0x0B0 - $10C9C0\n #_009756: dw LinkGraphics+$4CC0 ; 0x0B1 - $10CCC0\n #_009758: dw LinkGraphics+$4DC0 ; 0x0B2 - $10CDC0\n #_00975A: dw LinkGraphics+$4D00 ; 0x0B3 - $10CD00\n #_00975C: dw LinkGraphics+$4D40 ; 0x0B4 - $10CD40\n #_00975E: dw LinkGraphics+$4D80 ; 0x0B5 - $10CD80\n #_009760: dw LinkGraphics+$0500 ; 0x0B6 - $108500\n #_009762: dw LinkGraphics+$0540 ; 0x0B7 - $108540\n #_009764: dw LinkGraphics+$4940 ; 0x0B8 - $10C940\n #_009766: dw LinkGraphics+$4980 ; 0x0B9 - $10C980\n #_009768: dw LinkGraphics+$0540 ; 0x0BA - $108540\n #_00976A: dw LinkGraphics+$4940 ; 0x0BB - $10C940\n #_00976C: dw LinkGraphics+$4980 ; 0x0BC - $10C980\n #_00976E: dw LinkGraphics+$0440 ; 0x0BD - $108440\n #_009770: dw LinkGraphics+$0480 ; 0x0BE - $108480\n #_009772: dw LinkGraphics+$41C0 ; 0x0BF - $10C1C0\n #_009774: dw LinkGraphics+$4900 ; 0x0C0 - $10C900\n #_009776: dw LinkGraphics+$4580 ; 0x0C1 - $10C580\n #_009778: dw LinkGraphics+$45C0 ; 0x0C2 - $10C5C0\n #_00977A: dw LinkGraphics+$48C0 ; 0x0C3 - $10C8C0\n #_00977C: dw LinkGraphics+$0440 ; 0x0C4 - $108440\n #_00977E: dw LinkGraphics+$0480 ; 0x0C5 - $108480\n #_009780: dw LinkGraphics+$41C0 ; 0x0C6 - $10C1C0\n #_009782: dw LinkGraphics+$4900 ; 0x0C7 - $10C900\n #_009784: dw LinkGraphics+$4580 ; 0x0C8 - $10C580\n #_009786: dw LinkGraphics+$45C0 ; 0x0C9 - $10C5C0\n #_009788: dw LinkGraphics+$48C0 ; 0x0CA - $10C8C0\n #_00978A: dw LinkGraphics+$3D00 ; 0x0CB - $10BD00\n #_00978C: dw LinkGraphics+$2CC0 ; 0x0CC - $10ACC0\n #_00978E: dw LinkGraphics+$4040 ; 0x0CD - $10C040\n #_009790: dw LinkGraphics+$5540 ; 0x0CE - $10D540\n #_009792: dw LinkGraphics+$5580 ; 0x0CF - $10D580\n #_009794: dw LinkGraphics+$54C0 ; 0x0D0 - $10D4C0\n #_009796: dw LinkGraphics+$5500 ; 0x0D1 - $10D500\n #_009798: dw LinkGraphics+$54C0 ; 0x0D2 - $10D4C0\n #_00979A: dw LinkGraphics+$5500 ; 0x0D3 - $10D500\n #_00979C: dw LinkGraphics+$5440 ; 0x0D4 - $10D440\n #_00979E: dw LinkGraphics+$5480 ; 0x0D5 - $10D480\n #_0097A0: dw LinkGraphics+$5440 ; 0x0D6 - $10D440\n #_0097A2: dw LinkGraphics+$5480 ; 0x0D7 - $10D480\n #_0097A4: dw LinkGraphics+$51C0 ; 0x0D8 - $10D1C0\n #_0097A6: dw LinkGraphics+$5400 ; 0x0D9 - $10D400\n #_0097A8: dw LinkGraphics+$5100 ; 0x0DA - $10D100\n #_0097AA: dw LinkGraphics+$5100 ; 0x0DB - $10D100\n #_0097AC: dw LinkGraphics+$5140 ; 0x0DC - $10D140\n #_0097AE: dw LinkGraphics+$5180 ; 0x0DD - $10D180\n #_0097B0: dw LinkGraphics+$5140 ; 0x0DE - $10D140\n #_0097B2: dw LinkGraphics+$5180 ; 0x0DF - $10D180\n #_0097B4: dw LinkGraphics+$30C0 ; 0x0E0 - $10B0C0\n #_0097B6: dw LinkGraphics+$3100 ; 0x0E1 - $10B100\n #_0097B8: dw LinkGraphics+$3140 ; 0x0E2 - $10B140\n #_0097BA: dw LinkGraphics+$3100 ; 0x0E3 - $10B100\n #_0097BC: dw LinkGraphics+$3140 ; 0x0E4 - $10B140\n #_0097BE: dw LinkGraphics+$5D40 ; 0x0E5 - $10DD40\n #_0097C0: dw LinkGraphics+$5D80 ; 0x0E6 - $10DD80\n #_0097C2: dw LinkGraphics+$5DC0 ; 0x0E7 - $10DDC0\n #_0097C4: dw LinkGraphics+$5D80 ; 0x0E8 - $10DD80\n #_0097C6: dw LinkGraphics+$5DC0 ; 0x0E9 - $10DDC0\n #_0097C8: dw LinkGraphics+$5C80 ; 0x0EA - $10DC80\n #_0097CA: dw LinkGraphics+$5CC0 ; 0x0EB - $10DCC0\n #_0097CC: dw LinkGraphics+$5D00 ; 0x0EC - $10DD00\n #_0097CE: dw LinkGraphics+$5C80 ; 0x0ED - $10DC80\n #_0097D0: dw LinkGraphics+$5CC0 ; 0x0EE - $10DCC0\n #_0097D2: dw LinkGraphics+$5D00 ; 0x0EF - $10DD00\n #_0097D4: dw LinkGraphics+$5100 ; 0x0F0 - $10D100\n #_0097D6: dw LinkGraphics+$5100 ; 0x0F1 - $10D100\n #_0097D8: dw LinkGraphics+$6000 ; 0x0F2 - $10E000\n #_0097DA: dw LinkGraphics+$6040 ; 0x0F3 - $10E040\n #_0097DC: dw LinkGraphics+$6080 ; 0x0F4 - $10E080\n #_0097DE: dw LinkGraphics+$60C0 ; 0x0F5 - $10E0C0\n #_0097E0: dw LinkGraphics+$6100 ; 0x0F6 - $10E100\n #_0097E2: dw LinkGraphics+$6140 ; 0x0F7 - $10E140\n #_0097E4: dw LinkGraphics+$6000 ; 0x0F8 - $10E000\n #_0097E6: dw LinkGraphics+$6040 ; 0x0F9 - $10E040\n #_0097E8: dw LinkGraphics+$6080 ; 0x0FA - $10E080\n #_0097EA: dw LinkGraphics+$60C0 ; 0x0FB - $10E0C0\n #_0097EC: dw LinkGraphics+$6100 ; 0x0FC - $10E100\n #_0097EE: dw LinkGraphics+$6140 ; 0x0FD - $10E140\n #_0097F0: dw LinkGraphics+$0000 ; 0x0FE - $108000\n #_0097F2: dw LinkGraphics+$50C0 ; 0x0FF - $10D0C0\n #_0097F4: dw LinkGraphics+$0000 ; 0x100 - $108000\n #_0097F6: dw LinkGraphics+$3940 ; 0x101 - $10B940\n #_0097F8: dw LinkGraphics+$3980 ; 0x102 - $10B980\n #_0097FA: dw LinkGraphics+$3940 ; 0x103 - $10B940\n #_0097FC: dw LinkGraphics+$5D40 ; 0x104 - $10DD40\n #_0097FE: dw LinkGraphics+$5D80 ; 0x105 - $10DD80\n #_009800: dw LinkGraphics+$5D40 ; 0x106 - $10DD40\n #_009802: dw LinkGraphics+$5C80 ; 0x107 - $10DC80\n #_009804: dw LinkGraphics+$5CC0 ; 0x108 - $10DCC0\n #_009806: dw LinkGraphics+$40C0 ; 0x109 - $10C0C0\n #_009808: dw LinkGraphics+$5C80 ; 0x10A - $10DC80\n #_00980A: dw LinkGraphics+$5CC0 ; 0x10B - $10DCC0\n #_00980C: dw LinkGraphics+$40C0 ; 0x10C - $10C0C0\n #_00980E: dw LinkGraphics+$39C0 ; 0x10D - $10B9C0\n #_009810: dw LinkGraphics+$3980 ; 0x10E - $10B980\n #_009812: dw LinkGraphics+$39C0 ; 0x10F - $10B9C0\n #_009814: dw LinkGraphics+$2560 ; 0x110 - $10A560\n #_009816: dw LinkGraphics+$25A0 ; 0x111 - $10A5A0\n #_009818: dw LinkGraphics+$2C80 ; 0x112 - $10AC80\n #_00981A: dw LinkGraphics+$6D00 ; 0x113 - $10ED00\n #_00981C: dw LinkGraphics+$0000 ; 0x114 - $108000\n #_00981E: dw LinkGraphics+$0CC0 ; 0x115 - $108CC0\n #_009820: dw LinkGraphics+$3D00 ; 0x116 - $10BD00\n #_009822: dw LinkGraphics+$6380 ; 0x117 - $10E380\n #_009824: dw LinkGraphics+$3DC0 ; 0x118 - $10BDC0\n #_009826: dw LinkGraphics+$6500 ; 0x119 - $10E500\n #_009828: dw LinkGraphics+$6500 ; 0x11A - $10E500\n #_00982A: dw LinkGraphics+$6880 ; 0x11B - $10E880\n #_00982C: dw LinkGraphics+$68C0 ; 0x11C - $10E8C0\n #_00982E: dw LinkGraphics+$68C0 ; 0x11D - $10E8C0\n #_009830: dw LinkGraphics+$6800 ; 0x11E - $10E800\n #_009832: dw LinkGraphics+$65C0 ; 0x11F - $10E5C0\n #_009834: dw LinkGraphics+$65C0 ; 0x120 - $10E5C0\n #_009836: dw LinkGraphics+$6940 ; 0x121 - $10E940\n #_009838: dw LinkGraphics+$6980 ; 0x122 - $10E980\n #_00983A: dw LinkGraphics+$6940 ; 0x123 - $10E940\n #_00983C: dw LinkGraphics+$6980 ; 0x124 - $10E980\n #_00983E: dw LinkGraphics+$3D40 ; 0x125 - $10BD40\n #_009840: dw LinkGraphics+$0C80 ; 0x126 - $108C80\n #_009842: dw LinkGraphics+$2080 ; 0x127 - $10A080\n #_009844: dw LinkGraphics+$0000 ; 0x128 - $108000\n #_009846: dw LinkGraphics+$2980 ; 0x129 - $10A980\n #_009848: dw LinkGraphics+$3D00 ; 0x12A - $10BD00\n #_00984A: dw LinkGraphics+$3DC0 ; 0x12B - $10BDC0\n #_00984C: dw LinkGraphics+$3400 ; 0x12C - $10B400\n #_00984E: dw LinkGraphics+$2880 ; 0x12D - $10A880\n #_009850: dw LinkGraphics+$6DC0 ; 0x12E - $10EDC0\n\n; =========================================================\n" + }, + { + "name": "LinkOAM_AuxAddresses", + "code": "LinkOAM_AuxAddresses:\n #_009852: dw LinkGraphics+$1A40 ; 0x000 - $109A40\n #_009854: dw LinkGraphics+$1E00 ; 0x001 - $109E00\n #_009856: dw LinkGraphics+$1D20 ; 0x002 - $109D20\n #_009858: dw LinkGraphics+$1F20 ; 0x003 - $109F20\n #_00985A: dw LinkGraphics+$1B20 ; 0x004 - $109B20\n #_00985C: dw LinkGraphics+$3C20 ; 0x005 - $10BC20\n #_00985E: dw LinkGraphics+$3C20 ; 0x006 - $10BC20\n #_009860: dw LinkGraphics+$3E20 ; 0x007 - $10BE20\n #_009862: dw LinkGraphics+$3E20 ; 0x008 - $10BE20\n #_009864: dw LinkGraphics+$3E00 ; 0x009 - $10BE00\n #_009866: dw LinkGraphics+$3E00 ; 0x00A - $10BE00\n #_009868: dw LinkGraphics+$3E00 ; 0x00B - $10BE00\n #_00986A: dw LinkGraphics+$3E00 ; 0x00C - $10BE00\n #_00986C: dw LinkGraphics+$2540 ; 0x00D - $10A540\n #_00986E: dw LinkGraphics+$2540 ; 0x00E - $10A540\n #_009870: dw LinkGraphics+$2540 ; 0x00F - $10A540\n #_009872: dw LinkGraphics+$2540 ; 0x010 - $10A540\n #_009874: dw LinkGraphics+$3C00 ; 0x011 - $10BC00\n #_009876: dw LinkGraphics+$3C00 ; 0x012 - $10BC00\n #_009878: dw LinkGraphics+$3C00 ; 0x013 - $10BC00\n #_00987A: dw LinkGraphics+$3C00 ; 0x014 - $10BC00\n #_00987C: dw LinkGraphics+$2740 ; 0x015 - $10A740\n #_00987E: dw LinkGraphics+$2740 ; 0x016 - $10A740\n #_009880: dw LinkGraphics+$2740 ; 0x017 - $10A740\n #_009882: dw LinkGraphics+$2740 ; 0x018 - $10A740\n #_009884: dw LinkGraphics+$6780 ; 0x019 - $10E780\n #_009886: dw LinkGraphics+$6780 ; 0x01A - $10E780\n\n; =========================================================\n" + }, + { + "name": "TilemapUpload_HighBytes", + "code": "TilemapUpload_HighBytes:\n #_009888: db $00 ; 0x00 - VRAM $0000>>8\n #_009889: db $00 ; 0x01 - VRAM $0000>>8\n #_00988A: db $04 ; 0x02 - VRAM $0800>>8\n #_00988B: db $08 ; 0x03 - VRAM $1000>>8\n #_00988C: db $0C ; 0x04 - VRAM $1800>>8\n #_00988D: db $08 ; 0x05 - VRAM $1000>>8\n #_00988E: db $0C ; 0x06 - VRAM $1800>>8\n #_00988F: db $00 ; 0x07 - VRAM $0000>>8\n #_009890: db $04 ; 0x08 - VRAM $0800>>8\n #_009891: db $00 ; 0x09 - VRAM $0000>>8\n #_009892: db $08 ; 0x0A - VRAM $1000>>8\n #_009893: db $04 ; 0x0B - VRAM $0800>>8\n #_009894: db $0C ; 0x0C - VRAM $1800>>8\n #_009895: db $04 ; 0x0D - VRAM $0800>>8\n #_009896: db $0C ; 0x0E - VRAM $1800>>8\n #_009897: db $00 ; 0x0F - VRAM $0000>>8\n #_009898: db $08 ; 0x10 - VRAM $1000>>8\n #_009899: db $10 ; 0x11 - VRAM $2000>>8\n #_00989A: db $14 ; 0x12 - VRAM $2800>>8\n #_00989B: db $18 ; 0x13 - VRAM $3000>>8\n #_00989C: db $1C ; 0x14 - VRAM $3800>>8\n #_00989D: db $18 ; 0x15 - VRAM $3000>>8\n #_00989E: db $1C ; 0x16 - VRAM $3800>>8\n #_00989F: db $10 ; 0x17 - VRAM $2000>>8\n #_0098A0: db $14 ; 0x18 - VRAM $2800>>8\n #_0098A1: db $10 ; 0x19 - VRAM $2000>>8\n #_0098A2: db $18 ; 0x1A - VRAM $3000>>8\n #_0098A3: db $14 ; 0x1B - VRAM $2800>>8\n #_0098A4: db $1C ; 0x1C - VRAM $3800>>8\n #_0098A5: db $14 ; 0x1D - VRAM $2800>>8\n #_0098A6: db $1C ; 0x1E - VRAM $3800>>8\n #_0098A7: db $10 ; 0x1F - VRAM $2000>>8\n #_0098A8: db $18 ; 0x20 - VRAM $3000>>8\n #_0098A9: db $60 ; 0x21 - VRAM $C000>>8\n #_0098AA: db $68 ; 0x22 - VRAM $D000>>8\n\n; =========================================================\n; FREE ROM: 0x15\n; =========================================================" + }, + { + "name": "NULL_0098AB", + "code": "NULL_0098AB:\n #_0098AB: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0098B3: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0098BB: db $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n" + }, + { + "name": "DungeonMask", + "code": "DungeonMask:\n #_0098C0: dw $8000 ; Sewers\n #_0098C2: dw $4000 ; Hyrule Castle\n #_0098C4: dw $2000 ; Eastern Palace\n #_0098C6: dw $1000 ; Desert Palace\n" + }, + { + "name": "DoorFlagMasks", + "code": "DoorFlagMasks:\n #_0098C8: dw $0800 ; Agahnim's Tower\n #_0098CA: dw $0400 ; Swamp Palace\n #_0098CC: dw $0200 ; Palace of Darkness\n #_0098CE: dw $0100 ; Misery Mire\n #_0098D0: dw $0080 ; Skull Woods\n #_0098D2: dw $0040 ; Ice Palace\n #_0098D4: dw $0020 ; Tower of Hera\n #_0098D6: dw $0010 ; Thieves' Town\n #_0098D8: dw $0008 ; Turtle Rock\n #_0098DA: dw $0004 ; Ganon's Tower\n #_0098DC: dw $0002 ; Unused\n #_0098DE: dw $0001 ; Unused\n" + }, + { + "name": "DungeonMaskInverted", + "code": "DungeonMaskInverted:\n #_0098E0: dw $7FFF ; Sewers\n #_0098E2: dw $BFFF ; Hyrule Castle\n #_0098E4: dw $DFFF ; Eastern Palace\n #_0098E6: dw $EFFF ; Desert Palace\n #_0098E8: dw $F7FF ; Agahnim's Tower\n #_0098EA: dw $FBFF ; Swamp Palace\n #_0098EC: dw $FDFF ; Palace of Darkness\n #_0098EE: dw $FEFF ; Misery Mire\n #_0098F0: dw $FF7F ; Skull Woods\n #_0098F2: dw $FFBF ; Ice Palace\n #_0098F4: dw $FFDF ; Tower of Hera\n #_0098F6: dw $FFEF ; Thieves' Town\n #_0098F8: dw $FFF7 ; Turtle Rock\n #_0098FA: dw $FFFB ; Ganon's Tower\n #_0098FC: dw $FFFD ; Unused\n #_0098FE: dw $FFFE ; Unused\n\n; =========================================================\n" + }, + { + "name": "RoomFlagMask", + "code": "RoomFlagMask:\n #_009900: dw $0100\n #_009902: dw $0200\n #_009904: dw $0400\n #_009906: dw $0800\n #_009908: dw $1000\n #_00990A: dw $2000\n\n; =========================================================\n" + }, + { + "name": "RoomsWithPitDamage", + "code": "RoomsWithPitDamage:\n #_00990C: dw $0072 ; ROOM 0072\n #_00990E: dw $0082 ; ROOM 0082\n #_009910: dw $0040 ; ROOM 0040\n #_009912: dw $00C0 ; ROOM 00C0\n #_009914: dw $0112 ; ROOM 0112\n #_009916: dw $0056 ; ROOM 0056\n #_009918: dw $0057 ; ROOM 0057\n #_00991A: dw $0058 ; ROOM 0058\n #_00991C: dw $0067 ; ROOM 0067\n #_00991E: dw $0068 ; ROOM 0068\n #_009920: dw $0049 ; ROOM 0049\n #_009922: dw $0098 ; ROOM 0098\n #_009924: dw $00D1 ; ROOM 00D1\n #_009926: dw $00C3 ; ROOM 00C3\n #_009928: dw $00A3 ; ROOM 00A3\n #_00992A: dw $00A2 ; ROOM 00A2\n #_00992C: dw $0092 ; ROOM 0092\n #_00992E: dw $00A0 ; ROOM 00A0\n #_009930: dw $004E ; ROOM 004E\n #_009932: dw $007F ; ROOM 007F\n #_009934: dw $00AF ; ROOM 00AF\n #_009936: dw $00F0 ; ROOM 00F0\n #_009938: dw $00F1 ; ROOM 00F1\n #_00993A: dw $00E6 ; ROOM 00E6\n #_00993C: dw $00E7 ; ROOM 00E7\n #_00993E: dw $00C6 ; ROOM 00C6\n #_009940: dw $00C7 ; ROOM 00C7\n #_009942: dw $00D6 ; ROOM 00D6\n #_009944: dw $00B4 ; ROOM 00B4\n #_009946: dw $00B5 ; ROOM 00B5\n #_009948: dw $00C5 ; ROOM 00C5\n #_00994A: dw $0024 ; ROOM 0024\n #_00994C: dw $00D5 ; ROOM 00D5\n #_00994E: dw $00C9 ; ROOM 00C9\n #_009950: dw $002A ; ROOM 002A\n #_009952: dw $001A ; ROOM 001A\n #_009954: dw $004B ; ROOM 004B\n #_009956: dw $00BC ; ROOM 00BC\n #_009958: dw $0044 ; ROOM 0044\n #_00995A: dw $00FB ; ROOM 00FB\n #_00995C: dw $007B ; ROOM 007B\n #_00995E: dw $007C ; ROOM 007C\n #_009960: dw $008B ; ROOM 008B\n #_009962: dw $008D ; ROOM 008D\n #_009964: dw $009B ; ROOM 009B\n #_009966: dw $009C ; ROOM 009C\n #_009968: dw $009D ; ROOM 009D\n #_00996A: dw $00A5 ; ROOM 00A5\n #_00996C: dw $0095 ; ROOM 0095\n #_00996E: dw $001C ; ROOM 001C\n #_009970: dw $005C ; ROOM 005C\n #_009972: dw $007D ; ROOM 007D\n #_009974: dw $004C ; ROOM 004C\n #_009976: dw $0096 ; ROOM 0096\n #_009978: dw $0120 ; ROOM 0120\n #_00997A: dw $003C ; ROOM 003C\n #_00997C: dw $0123 ; ROOM 0123\n\n; =========================================================\n" + }, + { + "name": "DoorTilemapPositions_NorthWall", + "code": "DoorTilemapPositions_NorthWall:\n #_00997E: dw $021C\n #_009980: dw $023C\n #_009982: dw $025C\n #_009984: dw $039C\n #_009986: dw $03BC\n #_009988: dw $03DC\n" + }, + { + "name": "DoorTilemapPositions_NorthMiddle", + "code": "DoorTilemapPositions_NorthMiddle:\n #_00998A: dw $121C\n #_00998C: dw $123C\n #_00998E: dw $125C\n #_009990: dw $139C\n #_009992: dw $13BC\n #_009994: dw $13DC\n" + }, + { + "name": "DoorTilemapPositions_SouthMiddle", + "code": "DoorTilemapPositions_SouthMiddle:\n #_009996: dw $0D1C\n #_009998: dw $0D3C\n #_00999A: dw $0D5C\n #_00999C: dw $0B9C\n #_00999E: dw $0BBC\n #_0099A0: dw $0BDC\n #_0099A2: dw $1D1C\n #_0099A4: dw $1D3C\n #_0099A6: dw $1D5C\n" + }, + { + "name": "DoorTilemapPositions_LowerLayerEntrance", + "code": "DoorTilemapPositions_LowerLayerEntrance:\n #_0099A8: dw $1B9C\n #_0099AA: dw $1BBC\n #_0099AC: dw $1BDC\n" + }, + { + "name": "DoorTilemapPositions_WestWall", + "code": "DoorTilemapPositions_WestWall:\n #_0099AE: dw $0784\n #_0099B0: dw $0F84\n #_0099B2: dw $1784\n #_0099B4: dw $078A\n #_0099B6: dw $0F8A\n #_0099B8: dw $178A\n" + }, + { + "name": "DoorTilemapPositions_WestMiddle", + "code": "DoorTilemapPositions_WestMiddle:\n #_0099BA: dw $07C4\n #_0099BC: dw $0FC4\n #_0099BE: dw $17C4\n #_0099C0: dw $07CA\n #_0099C2: dw $0FCA\n #_0099C4: dw $17CA\n" + }, + { + "name": "DoorTilemapPositions_EastMiddle", + "code": "DoorTilemapPositions_EastMiddle:\n #_0099C6: dw $07B4\n #_0099C8: dw $0FB4\n #_0099CA: dw $17B4\n #_0099CC: dw $07AE\n #_0099CE: dw $0FAE\n #_0099D0: dw $17AE\n" + }, + { + "name": "DoorTilemapPositions_EastWall", + "code": "DoorTilemapPositions_EastWall:\n #_0099D2: dw $07F4\n #_0099D4: dw $0FF4\n #_0099D6: dw $17F4\n #_0099D8: dw $07EE\n #_0099DA: dw $0FEE\n #_0099DC: dw $17EE\n\n; =========================================================\n" + }, + { + "name": "ExplodingWallTilemapPosition", + "code": "ExplodingWallTilemapPosition:\n #_0099DE: dw $0D8A\n #_0099E0: dw $0DAA\n #_0099E2: dw $0DCA\n #_0099E4: dw $02B6\n #_0099E6: dw $0AB6\n #_0099E8: dw $12B6\n\n; =========================================================\n" + }, + { + "name": "DetectStaircase", + "code": "DetectStaircase:\n\n.offset_y\n #_0099EA: dw $0007\n #_0099EC: dw $0018\n #_0099EE: dw $0008\n #_0099F0: dw $0008\n\n.offset_x\n #_0099F2: dw $0000\n #_0099F4: dw $0000\n #_0099F6: dw $FFFF\n #_0099F8: dw $0011\n\n.index_offset\n #_0099FA: dw $0002\n #_0099FC: dw $0002\n #_0099FE: dw $0080\n #_009A00: dw $0080\n\n; =========================================================\n" + }, + { + "name": "DoorwayReplacementDoorGFX", + "code": "DoorwayReplacementDoorGFX:\n #_009A02: db $00, $00, $02, $00, $00, $00, $00, $00\n #_009A0A: db $00, $00, $00, $00, $00, $00, $00, $00\n #_009A12: db $00, $00, $12, $00, $00, $00, $00, $00\n #_009A1A: db $50, $00, $00, $00, $50, $00, $50, $00\n #_009A22: db $60, $00, $62, $00, $64, $00, $66, $00\n #_009A2A: db $52, $00, $5A, $00, $50, $00, $52, $00\n #_009A32: db $54, $00, $56, $00, $00, $00, $50, $00\n #_009A3A: db $50, $00, $00, $00, $00, $00, $00, $00\n #_009A42: db $40, $00, $58, $00, $58, $00, $00, $00\n #_009A4A: db $58, $00, $58, $00, $00, $00, $00, $00\n" + }, + { + "name": "DoorwayTileProperties", + "code": "DoorwayTileProperties:\n #_009A52: db $80, $80, $84, $84, $00, $00, $01, $01\n #_009A5A: db $84, $84, $8E, $8E, $00, $00, $00, $00\n #_009A62: db $88, $88, $8E, $8E, $80, $80, $80, $80\n #_009A6A: db $82, $82, $80, $80, $80, $80, $80, $80\n #_009A72: db $80, $80, $80, $80, $80, $80, $80, $80\n #_009A7A: db $82, $82, $8E, $8E, $80, $80, $82, $82\n #_009A82: db $80, $80, $80, $80, $80, $80, $82, $82\n #_009A8A: db $82, $82, $80, $80, $80, $80, $80, $80\n #_009A92: db $84, $84, $84, $84, $86, $86, $88, $88\n #_009A9A: db $86, $86, $86, $86, $80, $80, $80, $80\n\n; =========================================================\n" + }, + { + "name": "RoomDraw_DoorPartnerSelfLocation", + "code": "RoomDraw_DoorPartnerSelfLocation:\n #_009AA2: dw $0000, $0010, $0020, $0030, $0040, $0050\n #_009AAE: dw $0061, $0071, $0081, $0091, $00A1, $00B1\n #_009ABA: dw $0002, $0012, $0022, $0032, $0042, $0052\n #_009AC6: dw $0063, $0073, $0083, $0093, $00A3, $00B3\n" + }, + { + "name": "RoomDraw_DoorPartnerLocation", + "code": "RoomDraw_DoorPartnerLocation:\n #_009AD2: dw $0061, $0071, $0081, $0091, $00A1, $00B1\n #_009ADE: dw $0000, $0010, $0020, $0030, $0040, $0050\n #_009AEA: dw $0063, $0073, $0083, $0093, $00A3, $00B3\n #_009AF6: dw $0002, $0012, $0022, $0032, $0042, $0052\n\n; =========================================================\n" + }, + { + "name": "RoomDraw_QuadrantDataOffset", + "code": "RoomDraw_QuadrantDataOffset:\n #_009B02: dw $0000\n #_009B04: dw $0040\n #_009B06: dw $1000\n #_009B08: dw $1040\n\n; =========================================================\n" + }, + { + "name": "RoomDraw_MovingWallDirection", + "code": "RoomDraw_MovingWallDirection:\n #_009B0A: dw $0005\n #_009B0C: dw $0007\n #_009B0E: dw $000B\n #_009B10: dw $000F\n\n; ---------------------------------------------------------\n" + }, + { + "name": "MovingWallObjectCount", + "code": "MovingWallObjectCount:\n #_009B12: dw $0008\n #_009B14: dw $0010\n #_009B16: dw $0018\n #_009B18: dw $0020\n\n; ---------------------------------------------------------\n" + }, + { + "name": "MovingWallEastBoundaries", + "code": "MovingWallEastBoundaries:\n #_009B1A: dw $FFC1\n #_009B1C: dw $FF81\n #_009B1E: dw $FF41\n #_009B20: dw $FF01\n\n #_009B22: dw $FFB9\n #_009B24: dw $FF79\n #_009B26: dw $FF39\n #_009B28: dw $FEF9\n\n; ---------------------------------------------------------\n" + }, + { + "name": "MovingWallWestBoundaries", + "code": "MovingWallWestBoundaries:\n #_009B2A: dw $0042\n #_009B2C: dw $0082\n #_009B2E: dw $00C2\n #_009B30: dw $0102\n\n #_009B32: dw $004A\n #_009B34: dw $008A\n #_009B36: dw $00CA\n #_009B38: dw $010A\n\n; =========================================================\n" + }, + { + "name": "WaterOverlayHDMAPositionOffset", + "code": "WaterOverlayHDMAPositionOffset:\n #_009B3A: dw $0002\n #_009B3C: dw $0003\n #_009B3E: dw $0004\n #_009B40: dw $0005\n" + }, + { + "name": "WaterOverlayHDMASize", + "code": "WaterOverlayHDMASize:\n #_009B42: dw $0020\n #_009B44: dw $0030\n" + }, + { + "name": "WaterOverlayObjectCount", + "code": "WaterOverlayObjectCount:\n #_009B46: dw $0040\n #_009B48: dw $0050\n\n; =========================================================\n" + }, + { + "name": "UNREACHABLE_009B4A", + "code": "UNREACHABLE_009B4A:\n #_009B4A: dw $0003, $0005, $0007, $0009\n\n; =========================================================\n" + }, + { + "name": "RoomDrawObjectData", + "code": "RoomDrawObjectData:\n\n; ---------------------------------------------------------\n\n#obj0000:\n #_009B52: dw $14EE, $14EF, $14EE, $14EF\n #_009B5A: dw $14FE, $14FF, $14FE, $14FF\n\n; ---------------------------------------------------------\n\n#obj0010:\n #_009B62: dw $0CEE, $0CEF, $0CEE, $0CEF\n #_009B6A: dw $0CFE, $0CFF, $0CFE, $0CFF\n\n; ---------------------------------------------------------\n\n#obj0020:\n #_009B72: dw $0CEC, $0CED, $0CEC, $0CED\n #_009B7A: dw $0CFC, $0CFD, $0CFC, $0CFD\n\n; ---------------------------------------------------------\n\n#obj0030:\n #_009B82: dw $14EC, $14ED, $14EC, $14ED\n #_009B8A: dw $14FC, $14FD, $14FC, $14FD\n\n; ---------------------------------------------------------\n\n#obj0040:\n #_009B92: dw $18EE, $18EF, $18EE, $18EF\n #_009B9A: dw $18FE, $18FF, $18FE, $18FF\n\n; ---------------------------------------------------------\n\n#obj0050:\n #_009BA2: dw $10EE, $10EF, $10EE, $10EF\n #_009BAA: dw $10FE, $10FF, $10FE, $10FF\n\n; ---------------------------------------------------------\n\n#obj0060:\n #_009BB2: dw $10EC, $10ED, $10EC, $10ED\n #_009BBA: dw $10FC, $10FD, $10FC, $10FD\n\n; ---------------------------------------------------------\n\n#obj0070:\n #_009BC2: dw $18EC, $18ED, $18EC, $18ED\n #_009BCA: dw $18FC, $18FD, $18FC, $18FD\n\n; ---------------------------------------------------------\n\n#obj0080:\n #_009BD2: dw $10C1, $10C1, $10C1, $10C1\n #_009BDA: dw $10C1, $10C1, $10C1, $10C1\n\n; ---------------------------------------------------------\n\n#obj0090:\n #_009BE2: dw $18CA, $18CB, $18CA, $18CB\n #_009BEA: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj00A0:\n #_009BF2: dw $18C9, $18C9, $18C9, $18C9\n #_009BFA: dw $18C9, $18C9, $18C9, $18C9\n\n; ---------------------------------------------------------\n\n#obj00B0:\n #_009C02: dw $1DB6, $1DB7, $1DB6, $1DB7\n #_009C0A: dw $1DB8, $1DB9, $1DB8, $1DB9\n\n; ---------------------------------------------------------\n\n#obj00C0:\n #_009C12: dw $1DAE, $1DAF, $1DAE, $1DAF\n #_009C1A: dw $1DBE, $1DBF, $1DBE, $1DBF\n\n; ---------------------------------------------------------\n\n#obj00D0:\n #_009C22: dw $090C, $490C, $090C, $490C\n #_009C2A: dw $890C, $C90C, $890C, $C90C\n\n; ---------------------------------------------------------\n\n#obj00E0:\n #_009C32: dw $01EC, $01EC, $01EC, $01EC\n #_009C3A: dw $01EC, $01EC, $01EC, $01EC\n\n; ---------------------------------------------------------\n\n#obj00F0:\n #_009C42: dw $01EB, $01EB, $01EB, $01EB\n #_009C4A: dw $01EB, $01EB, $01EB, $01EB\n\n; ---------------------------------------------------------\n\n#obj0100:\n #_009C52: dw $1DBA, $1DBB, $1DBA, $1DBB\n #_009C5A: dw $1DBC, $1DBD, $1DBC, $1DBD\n\n; ---------------------------------------------------------\n\n#obj0110:\n #_009C62: dw $1DB6, $1DB7, $1DB6, $1DB7\n #_009C6A: dw $1DB8, $1DB9, $1DB8, $1DB9\n\n; ---------------------------------------------------------\n\n#obj0120:\n #_009C72: dw $1DB0, $1DB1, $1DB0, $1DB1\n #_009C7A: dw $9DB0, $9DB1, $9DB0, $9DB1\n\n; ---------------------------------------------------------\n\n#obj0130:\n #_009C82: dw $1DBA, $1DBB, $1DBA, $1DBB\n #_009C8A: dw $1DBC, $1DBD, $1DBC, $1DBD\n\n; ---------------------------------------------------------\n\n#obj0140:\n #_009C92: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj0148:\n #_009C9A: dw $1DA6, $5DA6, $1DA6, $5DA6\n #_009CA2: dw $9DA6, $DDA6, $9DA6, $DDA6\n\n; ---------------------------------------------------------\n\n#obj0158:\n #_009CAA: dw $08D0, $08D0, $08D0, $08D0\n #_009CB2: dw $08D0, $08D0, $08D0, $08D0\n\n; ---------------------------------------------------------\n\n#obj0168:\n #_009CBA: dw $18CA, $18CB, $18CA, $18CB\n #_009CC2: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj0178:\n #_009CCA: dw $0C62, $0C63, $0C62, $0C63\n #_009CD2: dw $0C62, $0C63, $0C62, $0C63\n\n; ---------------------------------------------------------\n\n#obj0188:\n #_009CDA: dw $0DCC, $0DCC, $0DCC, $0DCC\n #_009CE2: dw $0DCC, $0DCC, $0DCC, $0DCC\n\n; ---------------------------------------------------------\n\n#obj0198:\n #_009CEA: dw $090D, $091D, $490D, $491D\n\n; ---------------------------------------------------------\n\n#obj01A0:\n #_009CF2: dw $10EC, $10ED, $10EC, $10ED\n #_009CFA: dw $10FC, $10FD, $10FC, $10FD\n\n; ---------------------------------------------------------\n\n#obj01B0:\n #_009D02: dw $090C, $490C, $090C, $490C\n #_009D0A: dw $890C, $C90C, $890C, $C90C\n\n; ---------------------------------------------------------\n\n#obj01C0:\n #_009D12: dw $190F, $190F, $190F, $190F\n #_009D1A: dw $190F, $190F, $190F, $190F\n\n; ---------------------------------------------------------\n\n#obj01D0:\n #_009D22: dw $09BE, $49BE, $09BE, $49BE\n #_009D2A: dw $09BE, $49BE, $09BE, $49BE\n\n; ---------------------------------------------------------\n\n#obj01E0:\n #_009D32: dw $09BF, $49BF, $09BF, $49BF\n #_009D3A: dw $09BF, $49BF, $09BF, $49BF\n\n; ---------------------------------------------------------\n\n#obj01F0:\n #_009D42: dw $09B1, $09B1, $09B1, $09B1\n #_009D4A: dw $89B1, $89B1, $89B1, $89B1\n\n; ---------------------------------------------------------\n\n#obj0200:\n #_009D52: dw $09B0, $09B0, $09B0, $09B0\n #_009D5A: dw $89B0, $89B0, $89B0, $89B0\n\n; ---------------------------------------------------------\n\n#obj0210:\n #_009D62: dw $0982, $0992, $0983, $0993\n\n; ---------------------------------------------------------\n\n#obj0218:\n #_009D6A: dw $4983, $4993, $4982, $4992\n\n; ---------------------------------------------------------\n\n#obj0220:\n #_009D72: dw $0CCC, $0CCD, $0CDC, $0CCE\n\n#obj0228:\n #_009D7A: dw $0CCC, $0CCF, $0CDC, $0CDD\n\n#obj0230:\n #_009D82: dw $0CCC, $0CCD, $0CDE, $0CDD\n\n#obj0238:\n #_009D8A: dw $0CDF, $0CCD, $0CDC, $0CDD\n\n #_009D92: dw $0CCC, $0CDC, $0CCD, $0CCE\n #_009D9A: dw $0CCC, $0CDC, $0CCF, $0CDD\n #_009DA2: dw $0CCC, $0CDE, $0CCD, $0CDD\n #_009DAA: dw $0CDF, $0CDC, $0CCD, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0260:\n #_009DB2: dw $0CCC, $0CCD, $0CCC, $0CCD\n #_009DBA: dw $0CDC, $0CDD, $0CDC, $0CDD\n #_009DC2: dw $0CCC, $0CCD, $0CCC, $0CCD\n #_009DCA: dw $0CDC, $0CDD, $0CDC, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0280:\n #_009DD2: dw $0CCC, $0CDC, $0CCD, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0288:\n #_009DDA: dw $1C13, $1C41, $1C13, $1C41\n #_009DE2: dw $1C40, $1C42, $1C40, $1C42\n #_009DEA: dw $1C13, $1C41, $1C13, $1C41\n #_009DF2: dw $1C40, $1C42, $1C40, $1C42\n\n; ---------------------------------------------------------\n\n#obj02A8:\n #_009DFA: dw $1576, $1577, $1576, $1577\n #_009E02: dw $1578, $1579, $1578, $1579\n #_009E0A: dw $1576, $1577, $1576, $1577\n #_009E12: dw $1578, $1579, $1578, $1579\n\n; ---------------------------------------------------------\n\n#obj02C8:\n #_009E1A: dw $0892, $0898, $08A4, $0CAD\n #_009E22: dw $0893, $0899, $08A5, $8CAD\n\n; ---------------------------------------------------------\n\n#obj02D8:\n #_009E2A: dw $4CAD, $48A4, $4898, $4892\n #_009E32: dw $CCAD, $48A5, $4899, $4893\n\n; ---------------------------------------------------------\n\n#obj02E8:\n #_009E3A: dw $0890, $0896, $08A2, $0CAC\n #_009E42: dw $0891, $0897, $08A3, $4CAC\n\n; ---------------------------------------------------------\n\n#obj02F8:\n #_009E4A: dw $8CAC, $88A2, $8896, $8890\n #_009E52: dw $CCAC, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj0308:\n #_009E5A: dw $0843, $0844, $0871, $90AD\n #_009E62: dw $0853, $0854, $0871, $10AD\n\n; ---------------------------------------------------------\n\n#obj0318:\n #_009E6A: dw $D0AD, $4871, $4844, $4843\n #_009E72: dw $50AD, $4871, $4854, $4853\n\n; ---------------------------------------------------------\n\n#obj0328:\n #_009E7A: dw $0850, $0860, $0870, $50AC\n #_009E82: dw $0851, $0861, $0870, $10AC\n\n; ---------------------------------------------------------\n\n#obj0338:\n #_009E8A: dw $D0AC, $8870, $8860, $8850\n #_009E92: dw $90AC, $8870, $8861, $8851\n #_009E9A: dw $1C6B, $1C6B, $1C6B, $1C6B\n #_009EA2: dw $1C6C, $1C8D, $5C8D, $5C6C\n #_009EAA: dw $5C6B, $5C6B, $5C6B, $5C6B\n #_009EB2: dw $1C6A, $1C6A, $1C6A, $1C6A\n #_009EBA: dw $1C7A, $1C8E, $9C8E, $9C7A\n #_009EC2: dw $9C6A, $9C6A, $9C6A, $9C6A\n\n; ---------------------------------------------------------\n\n#obj0378:\n #_009ECA: dw $1C6B, $1C6B, $1C6C, $1C6C\n\n; ---------------------------------------------------------\n\n#obj0380:\n #_009ED2: dw $5C6C, $5C6C, $5C6B, $5C6B\n\n; ---------------------------------------------------------\n\n#obj0388:\n #_009EDA: dw $1C6A, $1C7A, $1C6A, $1C7A\n\n; ---------------------------------------------------------\n\n#obj0390:\n #_009EE2: dw $9C7A, $9C6A, $9C7A, $9C6A\n\n; ---------------------------------------------------------\n\n#obj0398:\n #_009EEA: dw $1C7B, $1C6B, $1C6A, $1C45\n\n; ---------------------------------------------------------\n\n#obj03A0:\n #_009EF2: dw $1C6B, $9C7B, $9C45, $9C6A\n\n; ---------------------------------------------------------\n\n#obj03A8:\n #_009EFA: dw $1C6A, $5C45, $5C7B, $5C6B\n\n; ---------------------------------------------------------\n\n#obj03B0:\n #_009F02: dw $DC45, $9C6A, $5C6B, $DC7B\n\n; ---------------------------------------------------------\n\n#obj03B8:\n #_009F0A: dw $1C7C, $1C7A, $1C6C, $1C55\n\n; ---------------------------------------------------------\n\n#obj03C0:\n #_009F12: dw $9C7A, $9C7C, $9C55, $1C6C\n\n; ---------------------------------------------------------\n\n#obj03C8:\n #_009F1A: dw $5C6C, $5C55, $5C7C, $1C7A\n\n; ---------------------------------------------------------\n\n#obj03D0:\n #_009F22: dw $DC55, $5C6C, $9C7A, $DC7C\n\n; ---------------------------------------------------------\n\n#obj03D8:\n #_009F2A: dw $3C15, $3C15, $3C15, $3C15\n\n; ---------------------------------------------------------\n\n#obj03E0:\n #_009F32: dw $0951, $0961, $0941, $0971\n #_009F3A: dw $8951, $8961, $8941, $8971\n\n; ---------------------------------------------------------\n\n#obj03F0:\n #_009F42: dw $4971, $4941, $4961, $4951\n #_009F4A: dw $C971, $C941, $C961, $C951\n\n; ---------------------------------------------------------\n\n#obj0400:\n #_009F52: dw $0950, $0960, $0940, $0970\n #_009F5A: dw $4950, $4960, $4940, $4970\n\n; ---------------------------------------------------------\n\n#obj0410:\n #_009F62: dw $8970, $8940, $8960, $8950\n #_009F6A: dw $C970, $C940, $C960, $C950\n\n; ---------------------------------------------------------\n\n#obj0420:\n #_009F72: dw $0880, $0881, $089A, $089B\n #_009F7A: dw $14AB\n\n; ---------------------------------------------------------\n\n#obj042A:\n #_009F7C: dw $94AB, $889B, $889A, $8881\n #_009F84: dw $8880\n\n; ---------------------------------------------------------\n\n#obj0434:\n #_009F86: dw $4880, $4881, $489A, $489B\n #_009F8E: dw $54AB\n\n; ---------------------------------------------------------\n\n#obj043E:\n #_009F90: dw $D4AB, $C89B, $C89A, $C881\n #_009F98: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0448:\n #_009F9A: dw $0880, $0881, $089A, $089B\n #_009FA2: dw $0CAB\n\n; ---------------------------------------------------------\n\n#obj0452:\n #_009FA4: dw $8CAB, $889B, $889A, $8881\n #_009FAC: dw $8880\n\n; ---------------------------------------------------------\n\n#obj045C:\n #_009FAE: dw $4880, $4881, $489A, $489B\n #_009FB6: dw $4CAB\n\n; ---------------------------------------------------------\n\n#obj0466:\n #_009FB8: dw $CCAB, $C89B, $C89A, $C881\n #_009FC0: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0470:\n #_009FC2: dw $0880, $0881, $089A, $089B\n #_009FCA: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj047A:\n #_009FCC: dw $90AB, $889B, $889A, $8881\n #_009FD4: dw $8880\n\n; ---------------------------------------------------------\n\n#obj0484:\n #_009FD6: dw $4880, $4881, $489A, $489B\n #_009FDE: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj048E:\n #_009FE0: dw $D0AB, $C89B, $C89A, $C881\n #_009FE8: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0498:\n #_009FEA: dw $0849, $084A, $084B, $089C\n #_009FF2: dw $18AB\n\n; ---------------------------------------------------------\n\n#obj04A2:\n #_009FF4: dw $98AB, $889C, $884B, $884A\n #_009FFC: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04AC:\n #_009FFE: dw $4849, $484A, $484B, $489C\n #_00A006: dw $58AB\n\n; ---------------------------------------------------------\n\n#obj04B6:\n #_00A008: dw $D8AB, $C89C, $C84B, $C84A\n #_00A010: dw $C849\n\n; ---------------------------------------------------------\n\n#obj04C0:\n #_00A012: dw $0849, $084A, $084B, $089C\n #_00A01A: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj04CA:\n #_00A01C: dw $90AB, $889C, $884B, $884A\n #_00A024: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04D4:\n #_00A026: dw $4849, $484A, $484B, $489C\n #_00A02E: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj04DE:\n #_00A030: dw $D0AB, $C89C, $C84B, $C84A\n #_00A038: dw $C849\n\n; ---------------------------------------------------------\n\n#obj04E8:\n #_00A03A: dw $0849, $084A, $084B, $089C\n #_00A042: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj04F2:\n #_00A044: dw $90AB, $889C, $884B, $884A\n #_00A04C: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04FC:\n #_00A04E: dw $4849, $484A, $484B, $489C\n #_00A056: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj0506:\n #_00A058: dw $D0AB, $C89C, $C84B, $C84A\n #_00A060: dw $C849\n\n; ---------------------------------------------------------\n\n#obj0510:\n #_00A062: dw $1DAA, $1DAC, $1DAC, $1D8B\n #_00A06A: dw $1DAD, $1D8C, $1D8B, $1DAF\n #_00A072: dw $1DA5, $1D8B, $1DAF, $1DA6\n #_00A07A: dw $1D8B, $1DAF, $1DA6, $1D8B\n #_00A082: dw $1DAF, $5DA5, $1D8B, $5DAD\n #_00A08A: dw $5D8C, $5DAA, $5DAC, $5DAC\n #_00A092: dw $1DAC, $1D8C, $1DA7, $1DAC\n #_00A09A: dw $1D8C, $1DA7, $1DA9, $1DA9\n #_00A0A2: dw $1DA9, $1DA9, $5DA7, $5D8C\n #_00A0AA: dw $5DAC, $5DA7, $5D8C, $5DAC\n #_00A0B2: dw $1DAC, $1DAC, $1DAB, $1D8C\n #_00A0BA: dw $1D9C, $1D9B, $9DA5, $1DAE\n #_00A0C2: dw $1D9B, $9DA6, $1DAE, $1D9B\n #_00A0CA: dw $9DA6, $1DAE, $1D9B, $DDA5\n #_00A0D2: dw $1DAE, $1D9B, $5D8C, $5D9C\n #_00A0DA: dw $1D9B, $5DAC, $5DAC, $5DAB\n\n; ---------------------------------------------------------\n\n#obj0590:\n #_00A0E2: dw $1DA8, $9DA8, $5DA8, $DDA8\n\n; ---------------------------------------------------------\n\n#obj0598:\n #_00A0EA: dw $1D9D, $1D8D, $1D8D, $1D72\n #_00A0F2: dw $1D72, $1D72, $5D9D, $5D8D\n #_00A0FA: dw $5D8D\n\n; ---------------------------------------------------------\n\n#obj05AA:\n #_00A0FC: dw $01E9, $01E9, $01E9, $01E9\n\n; ---------------------------------------------------------\n\n#obj05B2:\n #_00A104: dw $18C9, $18C9, $18C9, $18C9\n\n; ---------------------------------------------------------\n\n#obj05BA:\n #_00A10C: dw $09DA, $09DE, $09DB, $01E9\n #_00A114: dw $09DB, $01E9, $49DA, $49DE\n #_00A11C: dw $09DE, $09DC, $01E9, $09DD\n #_00A124: dw $01E9, $09DD, $49DE, $49DC\n\n; ---------------------------------------------------------\n\n#obj05DA:\n #_00A12C: dw $09DB, $01E9, $01E9, $09DD\n #_00A134: dw $09DB, $01E9, $01E9, $09DD\n #_00A13C: dw $09DB, $01E9, $01E9, $09DD\n #_00A144: dw $09DB, $01E9, $01E9, $09DD\n\n; ---------------------------------------------------------\n\n#obj05FA:\n #_00A14C: dw $08E1, $08E3, $08E1\n\n; ---------------------------------------------------------\n\n#obj0600:\n #_00A152: dw $08E1, $08E2, $08E1\n\n; ---------------------------------------------------------\n\n#obj0606:\n #_00A158: dw $08E0, $08F0, $48E0, $48F0\n #_00A160: dw $08F3, $48F3, $08E0, $08F1\n #_00A168: dw $08E4, $48E0, $48F1, $48E4\n\n; ---------------------------------------------------------\n\n#obj061E:\n #_00A170: dw $08E0, $08F1, $08E4, $48E0\n #_00A178: dw $48F1, $48E4, $08F4, $08F2\n #_00A180: dw $08E5, $08E0, $08F1, $08E4\n #_00A188: dw $48E0, $48F1, $48E4\n\n; ---------------------------------------------------------\n\n#obj063C:\n #_00A18E: dw $09DA, $09DB, $49DA\n\n; ---------------------------------------------------------\n\n#obj0642:\n #_00A194: dw $09DC, $09DD, $49DC\n\n; ---------------------------------------------------------\n\n#obj0648:\n #_00A19A: dw $09DE\n\n; ---------------------------------------------------------\n\n#obj064A:\n #_00A19C: dw $49DE\n\n; ---------------------------------------------------------\n\n#obj064C:\n #_00A19E: dw $09DF, $09DD, $49DF\n\n; ---------------------------------------------------------\n\n#obj0652:\n #_00A1A4: dw $89DF, $09DB, $C9DF\n\n; ---------------------------------------------------------\n\n#obj0658:\n #_00A1AA: dw $09DF, $09DD, $49DC\n\n; ---------------------------------------------------------\n\n#obj065E:\n #_00A1B0: dw $09DC, $09DD, $49DF\n\n; ---------------------------------------------------------\n\n#obj0664:\n #_00A1B6: dw $89DF, $09DB, $49DA\n\n; ---------------------------------------------------------\n\n#obj066A:\n #_00A1BC: dw $09DA, $09DB, $C9DF\n\n; ---------------------------------------------------------\n\n#obj0670:\n #_00A1C2: dw $08E3, $4846, $4843, $4869\n #_00A1CA: dw $4853, $C846\n\n; ---------------------------------------------------------\n\n#obj067C:\n #_00A1CE: dw $08E3, $0846, $0843, $0869\n #_00A1D6: dw $0853, $8846\n\n; ---------------------------------------------------------\n\n#obj0688:\n #_00A1DA: dw $08E2, $8846, $8850, $8868\n #_00A1E2: dw $8851, $C846\n\n; ---------------------------------------------------------\n\n#obj0694:\n #_00A1E6: dw $08E2, $0846, $0850, $0868\n #_00A1EE: dw $0851, $4846\n\n; ---------------------------------------------------------\n\n#obj06A0:\n #_00A1F2: dw $0852\n\n; ---------------------------------------------------------\n\n#obj06A2:\n #_00A1F4: dw $4852\n\n; ---------------------------------------------------------\n\n#obj06A4:\n #_00A1F6: dw $085C\n\n; ---------------------------------------------------------\n\n#obj06A6:\n #_00A1F8: dw $885C\n\n; ---------------------------------------------------------\n\n#obj06A8:\n #_00A1FA: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A202: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A20A: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A212: dw $1CC6, $1CC6, $1CC6, $1CC6\n\n; ---------------------------------------------------------\n\n#obj06C8:\n #_00A21A: dw $0973, $28A0, $28A1, $A8A1\n #_00A222: dw $A8A0, $0867, $09EF, $09EF\n #_00A22A: dw $8867, $0865, $085A, $885A\n #_00A232: dw $8865, $4865, $485A, $C85A\n #_00A23A: dw $C865, $4867, $09EF, $09EF\n #_00A242: dw $C867, $68A0, $68A1, $E8A1\n #_00A24A: dw $E8A0, $28A0, $28A1, $A8A1\n #_00A252: dw $A8A0, $0867, $09EF, $09EF\n #_00A25A: dw $8867, $0865, $085A, $885A\n #_00A262: dw $8865, $4865, $485A, $C85A\n #_00A26A: dw $C865, $4867, $09EF, $09EF\n #_00A272: dw $C867, $68A0, $68A1, $E8A1\n #_00A27A: dw $E8A0\n\n; ---------------------------------------------------------\n\n#obj072A:\n #_00A27C: dw $294E, $2893, $0892, $01EC\n #_00A284: dw $295E, $0898, $01EC, $01EC\n #_00A28C: dw $096E, $0893, $0899, $08A5\n #_00A294: dw $0892, $0898, $08A4, $0893\n #_00A29C: dw $A893, $A94E, $0899, $A95E\n #_00A2A4: dw $01EC, $896E, $01EC, $01EC\n\n; ---------------------------------------------------------\n\n#obj075A:\n #_00A2AC: dw $01EC, $01EC, $496E, $01EC\n #_00A2B4: dw $695E, $4898, $694E, $6893\n #_00A2BC: dw $4892, $48A5, $4899, $4893\n #_00A2C4: dw $48A4, $4898, $4892, $C96E\n #_00A2CC: dw $01EC, $01EC, $4899, $E95E\n #_00A2D4: dw $01EC, $4893, $E893, $E94E\n\n; ---------------------------------------------------------\n\n#obj078A:\n #_00A2DC: dw $096E, $1148, $1168, $1159\n #_00A2E4: dw $496E, $1149, $1169, $5159\n #_00A2EC: dw $096E, $5149, $5169, $1159\n #_00A2F4: dw $496E, $5148, $5168, $5159\n\n; ---------------------------------------------------------\n\n#obj07AA:\n #_00A2FC: dw $097E, $897E, $097E, $897E\n #_00A304: dw $11AE, $1146, $9146, $91AE\n #_00A30C: dw $11AF, $1166, $9166, $91AF\n #_00A314: dw $1156, $9156, $1156, $9156\n\n; ---------------------------------------------------------\n\n#obj07CA:\n #_00A31C: dw $5156, $D156, $5156, $D156\n #_00A324: dw $51AF, $1167, $9167, $D1AF\n #_00A32C: dw $51AE, $1147, $9147, $D1AE\n #_00A334: dw $497E, $C97E, $497E, $C97E\n\n; ---------------------------------------------------------\n\n#obj07EA:\n #_00A33C: dw $096E, $115E, $1178, $1158\n #_00A344: dw $496E, $114E, $1177, $1174\n #_00A34C: dw $096E, $114E, $5177, $5174\n #_00A354: dw $496E, $515E, $5178, $5158\n\n; ---------------------------------------------------------\n\n#obj080A:\n #_00A35C: dw $097E, $897E, $097E, $897E\n #_00A364: dw $11AC, $11AD, $11AD, $91AC\n #_00A36C: dw $1179, $1176, $9176, $9179\n #_00A374: dw $1157, $1175, $9175, $9157\n\n; ---------------------------------------------------------\n\n#obj082A:\n #_00A37C: dw $5157, $5175, $D175, $D157\n #_00A384: dw $5179, $5176, $D176, $D179\n #_00A38C: dw $51AC, $51AD, $51AD, $D1AC\n #_00A394: dw $497E, $C97E, $497E, $C97E\n\n; ---------------------------------------------------------\n\n#obj084A:\n #_00A39C: dw $28E7, $28F7, $28E6, $08F6\n #_00A3A4: dw $68E7, $68F7, $68E6, $48F6\n\n; ---------------------------------------------------------\n\n#obj085A:\n #_00A3AC: dw $2DC2, $2DC3, $2D2C, $0D3C\n #_00A3B4: dw $6DC2, $6DC3, $6D2C, $4D3C\n\n; ---------------------------------------------------------\n\n#obj086A:\n #_00A3BC: dw $0942, $1162, $1152, $0943\n #_00A3C4: dw $1163, $1153, $4943, $5163\n #_00A3CC: dw $5153, $4942, $5162, $5152\n\n; ---------------------------------------------------------\n\n#obj0882:\n #_00A3D4: dw $9152, $9162, $8942, $9153\n #_00A3DC: dw $9163, $8943, $D153, $D163\n #_00A3E4: dw $C943, $D152, $D162, $C942\n\n; ---------------------------------------------------------\n\n#obj089A:\n #_00A3EC: dw $0944, $0954, $8954, $8944\n #_00A3F4: dw $1164, $1165, $9165, $9164\n #_00A3FC: dw $1145, $1155, $9155, $9145\n\n; ---------------------------------------------------------\n\n#obj08B2:\n #_00A404: dw $5145, $5155, $D155, $D145\n #_00A40C: dw $5164, $5165, $D165, $D164\n #_00A414: dw $4944, $4954, $C954, $C944\n\n; ---------------------------------------------------------\n\n#obj08CA:\n #_00A41C: dw $1548, $1549, $5548, $5549\n #_00A424: dw $1548, $1549, $5548, $5549\n\n; ---------------------------------------------------------\n\n#obj08DA:\n #_00A42C: dw $1587, $1588, $5588, $5587\n #_00A434: dw $1597, $1598, $5598, $5597\n #_00A43C: dw $1589, $158A, $558A, $5589\n #_00A444: dw $1599, $159A, $559A, $5599\n\n; ---------------------------------------------------------\n\n#obj08FA:\n #_00A44C: dw $0980, $0990, $4980, $4990\n\n; ---------------------------------------------------------\n\n#obj0902:\n #_00A454: dw $8990, $8980, $C990, $C980\n\n; ---------------------------------------------------------\n\n#obj090A:\n #_00A45C: dw $0981, $8981, $0991, $8991\n\n; ---------------------------------------------------------\n\n#obj0912:\n #_00A464: dw $4991, $C991, $4981, $C981\n\n; ---------------------------------------------------------\n\n#obj091A:\n #_00A46C: dw $1DFE, $1DFC, $5DFE\n\n; ---------------------------------------------------------\n\n#obj0920:\n #_00A472: dw $9DFE, $9DFC, $DDFE\n\n; ---------------------------------------------------------\n\n#obj0926:\n #_00A478: dw $1DFD\n\n; ---------------------------------------------------------\n\n#obj0928:\n #_00A47A: dw $5DFD\n\n; ---------------------------------------------------------\n\n#obj092A:\n #_00A47C: dw $DDFF, $9DFC, $9DFF\n\n; ---------------------------------------------------------\n\n#obj0930:\n #_00A482: dw $5DFF, $1DFC, $1DFF\n\n; ---------------------------------------------------------\n\n#obj0936:\n #_00A488: dw $DDFF, $9DFC, $DDFE\n\n; ---------------------------------------------------------\n\n#obj093C:\n #_00A48E: dw $9DFE, $9DFC, $9DFF\n\n; ---------------------------------------------------------\n\n#obj0942:\n #_00A494: dw $5DFF, $1DFC, $5DFE\n\n; ---------------------------------------------------------\n\n#obj0948:\n #_00A49A: dw $1DFE, $1DFC, $1DFF\n\n; ---------------------------------------------------------\n\n#obj094E:\n #_00A4A0: dw $1DF7, $1C40, $1C41, $1C42\n #_00A4A8: dw $1DB5, $1DB2, $1DB3, $1DB3\n #_00A4B0: dw $1DB4, $1DB5, $5DF7, $5C40\n #_00A4B8: dw $5C41, $5C42, $5DB5\n\n; ---------------------------------------------------------\n\n#obj096C:\n #_00A4BE: dw $1DF7, $1C40, $1DB5, $1DB2\n #_00A4C6: dw $1DB3, $1DB5, $5DF7, $5C40\n #_00A4CE: dw $5DB5\n\n; ---------------------------------------------------------\n\n#obj097E:\n #_00A4D0: dw $0C14, $0C14, $0C14, $0C14\n #_00A4D8: dw $8C14, $8C14, $8C14, $8C14\n\n; ---------------------------------------------------------\n\n#obj098E:\n #_00A4E0: dw $0C64, $0C66, $0C64, $0C66\n #_00A4E8: dw $0C64, $0C66, $0C64, $0C66\n\n; ---------------------------------------------------------\n\n#obj099E:\n #_00A4F0: dw $0D46, $0D56, $157E, $0D47\n #_00A4F8: dw $0D57, $157F, $4D46, $4D56\n #_00A500: dw $557E\n\n; ---------------------------------------------------------\n\n#obj09B0:\n #_00A502: dw $0D46, $4D46, $8DAB, $4DAB\n\n; ---------------------------------------------------------\n\n#obj09B8:\n #_00A50A: dw $0D46, $0DAB, $0D47, $4DAD\n\n; ---------------------------------------------------------\n\n#obj09C0:\n #_00A512: dw $0DAB, $0D56, $4DAC, $0D57\n\n; ---------------------------------------------------------\n\n#obj09C8:\n #_00A51A: dw $0D47, $0DAD, $4D46, $4DAB\n\n; ---------------------------------------------------------\n\n#obj09D0:\n #_00A522: dw $0DAC, $0D57, $4DAB, $4D56\n\n; ---------------------------------------------------------\n\n#obj09D8:\n #_00A52A: dw $0940, $0960, $0950, $0970\n #_00A532: dw $0941, $0961, $0951, $0971\n #_00A53A: dw $4941, $4961, $4951, $4971\n #_00A542: dw $4940, $4960, $4950, $4970\n\n; ---------------------------------------------------------\n\n#obj09F8:\n #_00A54A: dw $0D42\n\n; ---------------------------------------------------------\n\n#obj09FA:\n #_00A54C: dw $0D52\n\n; ---------------------------------------------------------\n\n#obj09FC:\n #_00A54E: dw $0D40\n\n; ---------------------------------------------------------\n\n#obj09FE:\n #_00A550: dw $0D50\n\n; ---------------------------------------------------------\n\n#obj0A00:\n #_00A552: dw $0D41\n\n; ---------------------------------------------------------\n\n#obj0A02:\n #_00A554: dw $0D51\n\n; ---------------------------------------------------------\n\n#obj0A04:\n #_00A556: dw $0D8E\n\n; ---------------------------------------------------------\n\n#obj0A06:\n #_00A558: dw $0D8F\n\n; ---------------------------------------------------------\n\n#obj0A08:\n #_00A55A: dw $0D9E\n\n; ---------------------------------------------------------\n\n#obj0A0A:\n #_00A55C: dw $0D9F\n\n; ---------------------------------------------------------\n\n#obj0A0C:\n #_00A55E: dw $0D43\n\n; ---------------------------------------------------------\n\n#obj0A0E:\n #_00A560: dw $0D53\n\n; ---------------------------------------------------------\n\n#obj0A10:\n #_00A562: dw $0DA9\n\n; ---------------------------------------------------------\n\n#obj0A12:\n #_00A564: dw $0DA8\n\n; ---------------------------------------------------------\n\n#obj0A14:\n #_00A566: dw $09C8, $0DC6, $4DC6, $49C8\n #_00A56E: dw $09CA, $0D02, $4D02, $49CA\n\n; ---------------------------------------------------------\n\n#obj0A24:\n #_00A576: dw $89CA, $8D02, $CD02, $C9CA\n #_00A57E: dw $89C8, $8DC6, $CDC6, $C9C8\n\n; ---------------------------------------------------------\n\n#obj0A34:\n #_00A586: dw $09C9, $0DC7, $8DC7, $89C9\n #_00A58E: dw $09CB, $0D03, $8D03, $89CB\n\n; ---------------------------------------------------------\n\n#obj0A44:\n #_00A596: dw $49CB, $4D03, $CD03, $C9CB\n #_00A59E: dw $49C9, $4DC7, $CDC7, $C9C9\n\n; ---------------------------------------------------------\n\n#obj0A54:\n #_00A5A6: dw $0944, $0954, $8954, $8944\n #_00A5AE: dw $1164, $1165, $9165, $9164\n #_00A5B6: dw $1145, $1155, $9155, $9145\n\n; ---------------------------------------------------------\n\n#obj0A6C:\n #_00A5BE: dw $5145, $5155, $D155, $D145\n #_00A5C6: dw $5164, $5165, $D165, $D164\n #_00A5CE: dw $4944, $4954, $C954, $C944\n\n; ---------------------------------------------------------\n\n#obj0A84:\n #_00A5D6: dw $1146, $1147, $9147, $9146\n #_00A5DE: dw $1166, $1167, $9167, $9166\n #_00A5E6: dw $1156, $1157, $9157, $9156\n\n; ---------------------------------------------------------\n\n#obj0A9C:\n #_00A5EE: dw $5156, $5157, $D157, $D156\n #_00A5F6: dw $5166, $5167, $D167, $D166\n #_00A5FE: dw $5146, $5147, $D147, $D146\n\n; ---------------------------------------------------------\n\n#obj0AB4:\n #_00A606: dw $098E, $098E, $099E, $1CC6\n #_00A60E: dw $1CC6, $099F, $1CC6, $498F\n #_00A616: dw $499E, $1CC6, $0972, $0972\n #_00A61E: dw $1CC6, $098F, $099E, $1CC6\n #_00A626: dw $1CC6, $099F, $498E, $498E\n #_00A62E: dw $499E\n\n; ---------------------------------------------------------\n\n#obj0ADE:\n #_00A630: dw $0DE6, $0DF6, $4DE6, $4DF6\n\n; ---------------------------------------------------------\n\n#obj0AE6:\n #_00A638: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A640: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A648: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A650: dw $1DA9, $1DA9, $1DA9, $1DA9\n\n; ---------------------------------------------------------\n\n#obj0B06:\n #_00A658: dw $9DA8, $9DA6, $DDA8\n\n; ---------------------------------------------------------\n\n#obj0B0C:\n #_00A65E: dw $1DA8, $1DA6, $5DA8\n\n; ---------------------------------------------------------\n\n#obj0B12:\n #_00A664: dw $1DA7\n\n; ---------------------------------------------------------\n\n#obj0B14:\n #_00A666: dw $5DA7\n\n; ---------------------------------------------------------\n\n#obj0B16:\n #_00A668: dw $4D66, $1D64, $1D44, $1D54\n #_00A670: dw $0D66, $5D64, $5D44, $5D54\n\n; ---------------------------------------------------------\n\n#obj0B26:\n #_00A678: dw $0946, $0966, $0956, $0CAC\n #_00A680: dw $0947, $0967, $0957, $4CAC\n\n; ---------------------------------------------------------\n\n#obj0B36:\n #_00A688: dw $8CAC, $8956, $8966, $8946\n #_00A690: dw $CCAC, $8957, $8967, $8947\n\n; ---------------------------------------------------------\n\n#obj0B46:\n #_00A698: dw $0948, $0968, $0958, $0CAD\n #_00A6A0: dw $0949, $0969, $0959, $8CAD\n\n; ---------------------------------------------------------\n\n#obj0B56:\n #_00A6A8: dw $4CAD, $4958, $4968, $4948\n #_00A6B0: dw $CCAD, $4959, $4969, $4949\n\n; ---------------------------------------------------------\n\n#obj0B66:\n #_00A6B8: dw $0894, $0893, $0892, $0893\n #_00A6C0: dw $0891, $089E, $0898, $0899\n #_00A6C8: dw $0890, $0896, $08A6, $08A5\n #_00A6D0: dw $0891, $0897, $08A3, $0CAE\n\n; ---------------------------------------------------------\n\n#obj0B86:\n #_00A6D8: dw $0892, $0893, $0892, $8894\n #_00A6E0: dw $0898, $0899, $889E, $8891\n #_00A6E8: dw $08A4, $88A6, $8896, $8890\n #_00A6F0: dw $8CAE, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj0BA6:\n #_00A6F8: dw $0890, $0896, $08A2, $4CAE\n #_00A700: dw $0891, $0897, $48A6, $48A5\n #_00A708: dw $0890, $489E, $4898, $4899\n #_00A710: dw $4894, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj0BC6:\n #_00A718: dw $CCAE, $88A2, $8896, $8890\n #_00A720: dw $48A4, $C8A6, $8897, $8891\n #_00A728: dw $4898, $4899, $C89E, $8890\n #_00A730: dw $4892, $4893, $4892, $C894\n\n; ---------------------------------------------------------\n\n#obj0BE6:\n #_00A738: dw $0846, $0843, $0853, $0843\n #_00A740: dw $0850, $0847, $0854, $0844\n #_00A748: dw $0851, $0861, $0848, $0871\n #_00A750: dw $0850, $0860, $0870, $10AE\n\n; ---------------------------------------------------------\n\n#obj0C06:\n #_00A758: dw $0853, $0843, $0853, $8846\n #_00A760: dw $0854, $0844, $8847, $8850\n #_00A768: dw $0871, $8848, $8861, $8851\n #_00A770: dw $90AE, $8870, $8860, $8850\n\n; ---------------------------------------------------------\n\n#obj0C26:\n #_00A778: dw $0851, $0861, $0870, $50AE\n #_00A780: dw $0850, $0860, $4848, $4871\n #_00A788: dw $0851, $4847, $4854, $4844\n #_00A790: dw $4846, $4843, $4853, $4843\n\n; ---------------------------------------------------------\n\n#obj0C46:\n #_00A798: dw $D0AE, $8870, $8861, $8851\n #_00A7A0: dw $4871, $C848, $8860, $8850\n #_00A7A8: dw $4854, $4844, $C847, $8851\n #_00A7B0: dw $4853, $4843, $4853, $C846\n\n; ---------------------------------------------------------\n\n#obj0C66:\n #_00A7B8: dw $0895, $0896, $08A2, $0CAC\n #_00A7C0: dw $0898, $089F, $08A3, $4CAC\n #_00A7C8: dw $08A4, $08A5, $08A7, $0CAC\n #_00A7D0: dw $0CAD, $8CAD, $0CAD, $0CAF\n\n; ---------------------------------------------------------\n\n#obj0C86:\n #_00A7D8: dw $8CAC, $88A2, $8896, $8895\n #_00A7E0: dw $CCAC, $88A3, $889F, $0899\n #_00A7E8: dw $8CAC, $88A7, $08A4, $08A5\n #_00A7F0: dw $8CAF, $8CAD, $0CAD, $0CAD\n\n; ---------------------------------------------------------\n\n#obj0CA6:\n #_00A7F8: dw $4CAD, $CCAD, $4CAD, $4CAF\n #_00A800: dw $48A4, $48A5, $48A7, $4CAC\n #_00A808: dw $4898, $489F, $08A2, $0CAC\n #_00A810: dw $4895, $0897, $08A3, $4CAC\n\n; ---------------------------------------------------------\n\n#obj0CC6:\n #_00A818: dw $CCAF, $CCAD, $4CAD, $CCAD\n #_00A820: dw $CCAC, $C8A7, $48A4, $48A5\n #_00A828: dw $8CAC, $88A2, $C89F, $4899\n #_00A830: dw $CCAC, $88A3, $8897, $C895\n\n; ---------------------------------------------------------\n\n#obj0CE6:\n #_00A838: dw $0856, $0861, $0870, $10AC\n #_00A840: dw $0854, $0857, $0870, $50AC\n #_00A848: dw $0871, $0871, $0858, $10AC\n #_00A850: dw $10AD, $90AD, $10AD, $10AF\n\n; ---------------------------------------------------------\n\n#obj0D06:\n #_00A858: dw $90AC, $8870, $8861, $8856\n #_00A860: dw $D0AC, $8870, $8857, $0844\n #_00A868: dw $90AC, $8858, $0871, $0871\n #_00A870: dw $90AF, $90AD, $10AD, $90AD\n\n; ---------------------------------------------------------\n\n#obj0D26:\n #_00A878: dw $50AD, $D0AD, $50AD, $50AF\n #_00A880: dw $4871, $4871, $4858, $50AC\n #_00A888: dw $4854, $4857, $0870, $10AC\n #_00A890: dw $4856, $0860, $0870, $50AC\n\n; ---------------------------------------------------------\n\n#obj0D46:\n #_00A898: dw $D0AF, $D0AD, $50AD, $D0AD\n #_00A8A0: dw $D0AC, $C858, $4871, $4871\n #_00A8A8: dw $90AC, $8870, $C857, $4844\n #_00A8B0: dw $D0AC, $8870, $8860, $C856\n\n; ---------------------------------------------------------\n\n#obj0D66:\n #_00A8B8: dw $0861, $0870, $50AE, $50AF\n #_00A8C0: dw $0860, $4848, $4858, $10AC\n #_00A8C8: dw $4847, $4857, $0870, $50AC\n\n; ---------------------------------------------------------\n\n#obj0D7E:\n #_00A8D0: dw $D0AF, $D0AE, $8870, $8861\n #_00A8D8: dw $90AC, $C858, $C848, $8860\n #_00A8E0: dw $D0AC, $8870, $C857, $C847\n\n; ---------------------------------------------------------\n\n#obj0D96:\n #_00A8E8: dw $0847, $0857, $0870, $50AC\n #_00A8F0: dw $0861, $0848, $0858, $10AC\n #_00A8F8: dw $0860, $0870, $10AE, $10AF\n\n; ---------------------------------------------------------\n\n#obj0DAE:\n #_00A900: dw $D0AC, $8870, $8857, $8847\n #_00A908: dw $90AC, $8858, $8848, $8861\n #_00A910: dw $90AF, $90AE, $8870, $8860\n\n; ---------------------------------------------------------\n\n#obj0DC6:\n #_00A918: dw $0854, $0844, $8847, $0871\n #_00A920: dw $8848, $8857, $90AE, $8858\n #_00A928: dw $0871, $90AF, $90AD, $10AD\n\n; ---------------------------------------------------------\n\n#obj0DDE:\n #_00A930: dw $0847, $0854, $0844, $0857\n #_00A938: dw $0848, $0871, $0871, $0858\n #_00A940: dw $10AE, $90AD, $10AD, $10AF\n\n; ---------------------------------------------------------\n\n#obj0DF6:\n #_00A948: dw $D0AF, $D0AD, $50AD, $D0AE\n #_00A950: dw $C858, $4871, $4871, $C848\n #_00A958: dw $C857, $4854, $4844, $C847\n\n; ---------------------------------------------------------\n\n#obj0E0E:\n #_00A960: dw $D0AD, $50AD, $50AF, $4871\n #_00A968: dw $4858, $50AE, $4857, $4848\n #_00A970: dw $4871, $4847, $4854, $4844\n\n; ---------------------------------------------------------\n\n#obj0E26:\n #_00A978: dw $0D00, $0D10, $0D12, $4D00\n #_00A980: dw $0D11, $0D13\n\n; ---------------------------------------------------------\n\n#obj0E32:\n #_00A984: dw $0D04, $0D14, $0D24, $0D34\n #_00A98C: dw $0D05, $0D15, $0D25, $0D35\n #_00A994: dw $4D05, $4D15, $4D25, $4D35\n #_00A99C: dw $4D04, $4D14, $4D24, $4D34\n\n; ---------------------------------------------------------\n\n#obj0E52:\n #_00A9A4: dw $0922, $0932, $0923, $0933\n\n; ---------------------------------------------------------\n\n#obj0E5A:\n #_00A9AC: dw $0DE5, $0DF5, $4DE5, $4DF5\n\n; ---------------------------------------------------------\n\n#obj0E62:\n #_00A9B4: dw $0DE3, $0DF3, $0DE4, $0DF4\n\n; ---------------------------------------------------------\n\n#obj0E6A:\n #_00A9BC: dw $4DE4, $4DF4, $4DE3, $4DF3\n\n; ---------------------------------------------------------\n\n#obj0E72:\n #_00A9C4: dw $8DF3, $8DE3, $8DF4, $8DE4\n\n; ---------------------------------------------------------\n\n#obj0E7A:\n #_00A9CC: dw $CDF4, $CDE4, $CDF3, $CDE3\n\n; ---------------------------------------------------------\n\n#obj0E82:\n #_00A9D4: dw $0D28, $0D38, $4D28, $4D38\n\n; ---------------------------------------------------------\n\n#obj0E8A:\n #_00A9DC: dw $0D2A, $0D3A, $0D2B, $0D3B\n\n; ---------------------------------------------------------\n\n#obj0E92:\n #_00A9E4: dw $0D01, $0D1C, $4D01, $4D1C\n\n; ---------------------------------------------------------\n\n#obj0E9A:\n #_00A9EC: dw $0DEE, $8DEE, $4DEE, $CDEE\n\n; ---------------------------------------------------------\n\n#obj0EA2:\n #_00A9F4: dw $0DED, $8DED, $4DED, $CDED\n\n; ---------------------------------------------------------\n\n#obj0EAA:\n #_00A9FC: dw $0CD2, $0CEB, $0CD3, $0CFB\n\n; ---------------------------------------------------------\n\n#obj0EB2:\n #_00AA04: dw $0CEE, $0CFE, $0CEF, $0CFF\n\n; ---------------------------------------------------------\n\n#obj0EBA:\n #_00AA0C: dw $0CD4, $0CD6, $0CD5, $0CD7\n\n; ---------------------------------------------------------\n\n#obj0EC2:\n #_00AA14: dw $0DE0, $0DF0, $4DE0, $4DF0\n\n; ---------------------------------------------------------\n\n#obj0ECA:\n #_00AA1C: dw $0DC0, $0DC1, $4DC0, $4DC1\n\n; ---------------------------------------------------------\n\n#obj0ED2:\n #_00AA24: dw $094D, $095D, $096D, $494D\n #_00AA2C: dw $495D, $496D\n\n; ---------------------------------------------------------\n\n#obj0EDE:\n #_00AA30: dw $1587, $1589, $1599, $1588\n #_00AA38: dw $158A, $159A, $5588, $558A\n #_00AA40: dw $559A, $5587, $5589, $5599\n\n; ---------------------------------------------------------\n\n#obj0EF6:\n #_00AA48: dw $158C, $158D, $558D, $558C\n #_00AA50: dw $159C, $159D, $559D, $559C\n #_00AA58: dw $159C, $159D, $559D, $559C\n #_00AA60: dw $159C, $159D, $559D, $559C\n #_00AA68: dw $158B, $159B, $559B, $558B\n\n; ---------------------------------------------------------\n\n#obj0F1E:\n #_00AA70: dw $154A, $155A, $156A, $157A\n #_00AA78: dw $154B, $155B, $156B, $157B\n #_00AA80: dw $554B, $555B, $556B, $557B\n #_00AA88: dw $554A, $555A, $556A, $557A\n\n; ---------------------------------------------------------\n\n#obj0F3E:\n #_00AA90: dw $1525, $1563, $1553, $1555\n #_00AA98: dw $1526, $1564, $1554, $1556\n #_00AAA0: dw $5526, $5564, $5554, $5556\n #_00AAA8: dw $5525, $5563, $5553, $5555\n\n; ---------------------------------------------------------\n\n#obj0F5E:\n #_00AAB0: dw $151D, $151E, $151F, $551D\n #_00AAB8: dw $551E, $551F\n\n; ---------------------------------------------------------\n\n#obj0F6A:\n #_00AABC: dw $1548, $1549, $5548, $5549\n\n; ---------------------------------------------------------\n\n#obj0F72:\n #_00AAC4: dw $094A, $095A, $096A, $097A\n #_00AACC: dw $094B, $095B, $096B, $097B\n #_00AAD4: dw $494B, $495B, $496B, $497B\n #_00AADC: dw $494A, $495A, $496A, $497A\n\n; ---------------------------------------------------------\n\n#obj0F92:\n #_00AAE4: dw $0968, $0969, $4969, $4968\n #_00AAEC: dw $0958, $0959, $4959, $4958\n\n; ---------------------------------------------------------\n\n#obj0FA2:\n #_00AAF4: dw $1588, $156C, $556C, $5588\n #_00AAFC: dw $157D, $157C, $557C, $557D\n\n; ---------------------------------------------------------\n\n#obj0FB2:\n #_00AB04: dw $11A0, $11A1, $51A0, $11A2\n #_00AB0C: dw $11A3, $51A2, $1194, $1195\n #_00AB14: dw $5194\n\n; ---------------------------------------------------------\n\n#obj0FC4:\n #_00AB16: dw $094E, $095E, $096E, $09AE\n #_00AB1E: dw $094F, $095F, $096F, $09AF\n #_00AB26: dw $094F, $095F, $096F, $09AF\n #_00AB2E: dw $094F, $095F, $496F, $09AF\n #_00AB36: dw $094F, $095F, $096F, $09AF\n #_00AB3E: dw $494E, $495E, $496E, $49AE\n\n; ---------------------------------------------------------\n\n#obj0FF4:\n #_00AB46: dw $8D84, $0D84, $0976, $8D85\n #_00AB4E: dw $0D85, $0977, $0D86, $0D96\n #_00AB56: dw $0977, $4D86, $4D96, $4977\n #_00AB5E: dw $CD85, $4D85, $4977, $CD84\n #_00AB66: dw $4D84, $4976\n\n; ---------------------------------------------------------\n\n#obj1018:\n #_00AB6A: dw $0978, $0979, $4978, $4979\n\n; ---------------------------------------------------------\n\n#obj1020:\n #_00AB72: dw $0D92, $0DAA, $0D92, $0DAA\n\n; ---------------------------------------------------------\n\n#obj1028:\n #_00AB7A: dw $0942, $0982, $0992, $0943\n #_00AB82: dw $0983, $0993, $4943, $4983\n #_00AB8A: dw $4993, $4942, $4982, $4992\n\n; ---------------------------------------------------------\n\n#obj1040:\n #_00AB92: dw $0CEE, $18D8, $0CEE, $0CFE\n #_00AB9A: dw $18C8, $18D9, $58D9, $0CFF\n #_00ABA2: dw $18C9, $0CFE, $0CEE, $18D9\n #_00ABAA: dw $0CEF, $58D9, $58D8, $0CFF\n\n; ---------------------------------------------------------\n\n#obj1060:\n #_00ABB2: dw $1197, $1198, $1197, $1198\n #_00ABBA: dw $1187, $1188, $1187, $1188\n\n; ---------------------------------------------------------\n\n#obj1070:\n #_00ABC2: dw $1D76, $1D77, $5D76, $5D77\n\n; ---------------------------------------------------------\n\n#obj1078:\n #_00ABCA: dw $9D77, $9D76, $DD77, $DD76\n\n; ---------------------------------------------------------\n\n#obj1080:\n #_00ABD2: dw $5D79, $DD79, $5D78, $DD78\n\n; ---------------------------------------------------------\n\n#obj1088:\n #_00ABDA: dw $084C, $085D, $086D, $087D\n #_00ABE2: dw $084F, $085E, $086E, $087E\n #_00ABEA: dw $484F, $485E, $486E, $487E\n #_00ABF2: dw $484C, $485D, $486D, $487D\n\n; ---------------------------------------------------------\n\n#obj10A8:\n #_00ABFA: dw $0864, $0866, $0866, $09F8\n #_00AC02: dw $085F, $086F, $087F, $09F9\n #_00AC0A: dw $485F, $486F, $487F, $49F9\n #_00AC12: dw $4864, $4866, $4866, $49F8\n\n; ---------------------------------------------------------\n\n#obj10C8:\n #_00AC1A: dw $084D, $085D, $086D, $087D\n #_00AC22: dw $084E, $085E, $086E, $087E\n #_00AC2A: dw $484E, $485E, $486E, $487E\n #_00AC32: dw $484D, $485D, $486D, $487D\n\n; ---------------------------------------------------------\n\n#obj10E8:\n #_00AC3A: dw $887D, $886D, $885D, $884D\n #_00AC42: dw $887E, $886E, $885E, $884E\n #_00AC4A: dw $C87E, $C86E, $C85E, $C84E\n #_00AC52: dw $C87D, $C86D, $C85D, $C84D\n\n; ---------------------------------------------------------\n\n#obj1108:\n #_00AC5A: dw $0982, $0983, $4983, $4982\n #_00AC62: dw $0992, $0993, $4993, $4992\n #_00AC6A: dw $08C9, $08F4, $48F4, $48C9\n #_00AC72: dw $08CA, $08F5, $48F5, $48CA\n #_00AC7A: dw $0841, $0845, $8845, $8841\n #_00AC82: dw $0842, $0855, $8845, $8842\n #_00AC8A: dw $4842, $4855, $C855, $C842\n #_00AC92: dw $4841, $4845, $C845, $C841\n\n; ---------------------------------------------------------\n\n#obj1148:\n #_00AC9A: dw $28B8, $2808, $0818, $289D\n #_00ACA2: dw $082E, $083E, $689D, $082F\n #_00ACAA: dw $083F, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj1160:\n #_00ACB2: dw $28B8, $2808, $0818, $28B9\n #_00ACBA: dw $09EF, $0819, $68B9, $09EF\n #_00ACC2: dw $081A, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj1178:\n #_00ACCA: dw $28B5, $2808, $080D, $28B7\n #_00ACD2: dw $082E, $083E, $68B7, $082F\n #_00ACDA: dw $083F, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj1190:\n #_00ACE2: dw $28B5, $2808, $080D, $28B6\n #_00ACEA: dw $09EF, $0819, $68B6, $09EF\n #_00ACF2: dw $081A, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj11A8:\n #_00ACFA: dw $28B8, $0808, $0818, $4CAC\n #_00AD02: dw $289D, $0807, $0817, $0CAC\n #_00AD0A: dw $689D, $4807, $4817, $4CAC\n #_00AD12: dw $68B8, $4808, $4818, $0CAC\n\n; ---------------------------------------------------------\n\n#obj11C8:\n #_00AD1A: dw $28B8, $2808, $0818, $4CAC\n #_00AD22: dw $28B9, $09EF, $0816, $0CAC\n #_00AD2A: dw $68B9, $09EF, $4816, $4CAC\n #_00AD32: dw $68B8, $6808, $4818, $0CAC\n\n; ---------------------------------------------------------\n\n#obj11E8:\n #_00AD3A: dw $8CAC, $8818, $8808, $A8B8\n #_00AD42: dw $CCAC, $8817, $8807, $A89D\n #_00AD4A: dw $8CAC, $C817, $C807, $E89D\n #_00AD52: dw $CCAC, $C818, $C808, $E8B8\n\n; ---------------------------------------------------------\n\n#obj1208:\n #_00AD5A: dw $8CAC, $880D, $8808, $A8B8\n #_00AD62: dw $CCAC, $8816, $89EF, $A8B9\n #_00AD6A: dw $8CAC, $C816, $C9EF, $E8B9\n #_00AD72: dw $CCAC, $C80D, $C808, $E8B8\n\n; ---------------------------------------------------------\n\n#obj1228:\n #_00AD7A: dw $28B5, $0808, $080D, $50AC\n #_00AD82: dw $28B7, $0807, $0817, $10AC\n #_00AD8A: dw $68B7, $4807, $4817, $50AC\n #_00AD92: dw $68B5, $4808, $480D, $10AC\n\n; ---------------------------------------------------------\n\n#obj1248:\n #_00AD9A: dw $28B5, $0818, $080D, $50AC\n #_00ADA2: dw $28B6, $09EF, $0816, $10AC\n #_00ADAA: dw $68B6, $09EF, $4816, $50AC\n #_00ADB2: dw $68B7, $4810, $480D, $10AC\n\n; ---------------------------------------------------------\n\n#obj1268:\n #_00ADBA: dw $90AC, $880D, $8808, $A8B5\n #_00ADC2: dw $D0AC, $8817, $8807, $A8B7\n #_00ADCA: dw $90AC, $C817, $C807, $E8B7\n #_00ADD2: dw $D0AC, $C80D, $C808, $E8B5\n\n; ---------------------------------------------------------\n\n#obj1288:\n #_00ADDA: dw $90AC, $880D, $8808, $A8B5\n #_00ADE2: dw $D0AC, $8816, $89EF, $A8B6\n #_00ADEA: dw $90AC, $C816, $C9EF, $E8B6\n #_00ADF2: dw $D0AC, $C80D, $C808, $E8B5\n\n; ---------------------------------------------------------\n\n#obj12A8:\n #_00ADFA: dw $0984, $09A7, $0843, $0853\n #_00AE02: dw $0984, $09A4, $09A8, $0854\n #_00AE0A: dw $0984, $0994, $09A4, $09A8\n #_00AE12: dw $0985, $0995, $09A5, $09A9\n #_00AE1A: dw $0986, $0996, $09A6, $099C\n #_00AE22: dw $4986, $4996, $49A6, $499C\n #_00AE2A: dw $4985, $4995, $49A5, $49A9\n #_00AE32: dw $4984, $4994, $49A4, $49A8\n #_00AE3A: dw $4984, $49A4, $49A8, $4854\n #_00AE42: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AE4A: dw $0984, $09A7, $0843, $0853\n #_00AE52: dw $0984, $0994, $09A8, $0854\n #_00AE5A: dw $0985, $0995, $09A5, $09A8\n #_00AE62: dw $0986, $0996, $09A6, $099C\n #_00AE6A: dw $18CB, $18DB, $18CB, $18DB\n #_00AE72: dw $18CA, $18DA, $18CA, $18DA\n #_00AE7A: dw $4986, $4996, $49A6, $499C\n #_00AE82: dw $4985, $4995, $49A5, $49A8\n #_00AE8A: dw $4984, $4994, $49A8, $4854\n #_00AE92: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AE9A: dw $0984, $09A7, $0843, $0853\n #_00AEA2: dw $0985, $0995, $09A8, $0854\n #_00AEAA: dw $0986, $0996, $09A6, $09A8\n #_00AEB2: dw $18CA, $18DA, $18CA, $18DA\n #_00AEBA: dw $18CB, $18DB, $18CB, $18DB\n #_00AEC2: dw $18CA, $18DA, $18CA, $18DA\n #_00AECA: dw $18CB, $18DB, $18CB, $18DB\n #_00AED2: dw $4986, $4996, $49A6, $49A8\n #_00AEDA: dw $4985, $4995, $49A8, $4854\n #_00AEE2: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AEEA: dw $0985, $09A7, $0843, $0853\n #_00AEF2: dw $0986, $0996, $09A8, $0854\n #_00AEFA: dw $0871, $0871, $098B, $099B\n #_00AF02: dw $18CA, $18DA, $18CA, $18DA\n #_00AF0A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF12: dw $18CA, $18DA, $18CA, $18DA\n #_00AF1A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF22: dw $4871, $4871, $498B, $499B\n #_00AF2A: dw $4986, $4996, $49A8, $4854\n #_00AF32: dw $4985, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n#obj13E8:\n #_00AF3A: dw $0986, $09A7, $0843, $0853\n #_00AF42: dw $0871, $098B, $099B, $0854\n #_00AF4A: dw $0871, $0871, $098B, $099B\n #_00AF52: dw $18CA, $18DA, $18CA, $18DA\n #_00AF5A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF62: dw $18CA, $18DA, $18CA, $18DA\n #_00AF6A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF72: dw $4871, $4871, $498B, $499B\n #_00AF7A: dw $4871, $498B, $499B, $4854\n #_00AF82: dw $4986, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n#obj1438:\n #_00AF8A: dw $18CA, $18CB, $18CA, $18CB\n #_00AF92: dw $18DA, $0974, $4974, $18DB\n #_00AF9A: dw $18CA, $8974, $C974, $18CB\n #_00AFA2: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj1458:\n #_00AFAA: dw $1D48, $1D58, $1568, $1542\n #_00AFB2: dw $1562, $1552, $1D49, $1D59\n #_00AFBA: dw $1D69, $1D43, $1D63, $1D53\n #_00AFC2: dw $1D60, $1D70, $1D78, $1D61\n #_00AFCA: dw $1D71, $1D79, $5D61, $5D71\n #_00AFD2: dw $5D79, $5D60, $5D70, $5D78\n\n; ---------------------------------------------------------\n\n#obj1488:\n #_00AFDA: dw $298D, $298E, $299E, $298F\n #_00AFE2: dw $299F, $299D\n\n; ---------------------------------------------------------\n\n#obj1494:\n #_00AFE6: dw $09A2, $09A3, $49A2, $49A3\n\n; ---------------------------------------------------------\n\n#obj149C:\n #_00AFEE: dw $19E1, $19F1, $59E1, $59F1\n\n; ---------------------------------------------------------\n\n#obj14A4:\n #_00AFF6: dw $19E2, $19F2, $59E2, $59F2\n\n; ---------------------------------------------------------\n\n#obj14AC:\n #_00AFFE: dw $1920, $1930, $1926, $1921\n #_00B006: dw $1931, $1927, $5921, $5931\n #_00B00E: dw $5927, $5920, $5930, $5926\n\n; ---------------------------------------------------------\n\n#obj14C4:\n #_00B016: dw $1906, $1916, $1926, $1907\n #_00B01E: dw $1917, $1927, $5907, $5917\n #_00B026: dw $5927, $5906, $5916, $5926\n\n; ---------------------------------------------------------\n\n#obj14DC:\n #_00B02E: dw $2980, $0990, $09A0, $2981\n #_00B036: dw $0991, $09A1, $2981, $0991\n #_00B03E: dw $09A1, $6981, $4991, $49A1\n #_00B046: dw $6981, $4991, $49A1, $6980\n #_00B04E: dw $4990, $49A1\n\n; ---------------------------------------------------------\n\n#obj1500:\n #_00B052: dw $89A0, $8990, $A980, $89A1\n #_00B05A: dw $8991, $A981, $89A1, $8991\n #_00B062: dw $A981, $C9A1, $C991, $E981\n #_00B06A: dw $C9A1, $C991, $E981, $C9A0\n #_00B072: dw $C990, $E980\n\n; ---------------------------------------------------------\n\n#obj1524:\n #_00B076: dw $2982, $0983, $09A2, $2992\n #_00B07E: dw $0993, $09A3, $2992, $0993\n #_00B086: dw $09A3, $A992, $8993, $89A3\n #_00B08E: dw $A992, $8993, $89A3, $A982\n #_00B096: dw $8983, $89A2\n\n; ---------------------------------------------------------\n\n#obj1548:\n #_00B09A: dw $49A2, $4983, $6982, $49A3\n #_00B0A2: dw $4993, $6992, $49A3, $4993\n #_00B0AA: dw $6992, $C9A3, $C993, $E992\n #_00B0B2: dw $C9A3, $C993, $E992, $C9A2\n #_00B0BA: dw $C983, $E982\n\n; ---------------------------------------------------------\n\n#obj156C:\n #_00B0BE: dw $2984, $0990, $09A0, $2994\n #_00B0C6: dw $0991, $09A1, $2994, $0991\n #_00B0CE: dw $09A1, $6994, $4991, $49A1\n #_00B0D6: dw $6994, $4991, $49A1, $6984\n #_00B0DE: dw $4990, $49A0\n\n; ---------------------------------------------------------\n\n#obj1590:\n #_00B0E2: dw $89A0, $8990, $A984, $89A1\n #_00B0EA: dw $8991, $A994, $89A1, $8991\n #_00B0F2: dw $A994, $C9A1, $C991, $E994\n #_00B0FA: dw $C9A1, $C991, $E994, $C9A0\n #_00B102: dw $C990, $E984\n\n; ---------------------------------------------------------\n\n#obj15B4:\n #_00B106: dw $288A, $288B, $288B, $0809\n #_00B10E: dw $09EF, $09EF, $080A, $0879\n #_00B116: dw $0879, $288A, $A88B, $A88B\n #_00B11E: dw $09EF, $89EF, $8809, $0879\n #_00B126: dw $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj15D8:\n #_00B12A: dw $480A, $4879, $4879, $4809\n #_00B132: dw $49EF, $49EF, $688A, $688B\n #_00B13A: dw $688B, $4879, $C879, $C80A\n #_00B142: dw $49EF, $C9EF, $C809, $688B\n #_00B14A: dw $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj15FC:\n #_00B14E: dw $880D, $8808, $A82C, $8878\n #_00B156: dw $09EF, $A82D, $C878, $09EF\n #_00B15E: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj1614:\n #_00B166: dw $0980, $0981, $4981, $4980\n #_00B16E: dw $0990, $0991, $4991, $4990\n #_00B176: dw $09A0, $09A1, $49A1, $49A0\n\n; ---------------------------------------------------------\n\n#obj162C:\n #_00B17E: dw $0980, $0981, $4981, $4980\n #_00B186: dw $0990, $0991, $4991, $4990\n #_00B18E: dw $09A0, $1DB2, $1DB2, $49A0\n #_00B196: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B19E: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj1654:\n #_00B1A6: dw $2980, $2981, $6981, $6980\n #_00B1AE: dw $2990, $2991, $6991, $6990\n\n #_00B1B6: dw $29A0, $3DB2, $3DB2, $69A0\n #_00B1BE: dw $3DB3, $3DB3, $3DB3, $3DB3\n #_00B1C6: dw $3DB3, $3DB3, $3DB3, $3DB3\n #_00B1CE: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1D6: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj168C:\n #_00B1DE: dw $09A0, $1DB2, $5DB2, $49A0\n #_00B1E6: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1EE: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1F6: dw $1DB5, $1DB5, $1DB5, $1DB5\n #_00B1FE: dw $18CA, $18CB, $18CA, $18CB\n\n; ---------------------------------------------------------\n\n#obj16B4:\n #_00B206: dw $09A0, $1DB2, $5DB2, $49A0\n #_00B20E: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B216: dw $1DB5, $1DB5, $1DB5, $1DB5\n #_00B21E: dw $0870, $0870, $0870, $0870\n #_00B226: dw $18CA, $18CB, $18CA, $18CB\n\n; ---------------------------------------------------------\n\n#obj16DC:\n #_00B22E: dw $01EC, $853E, $853F, $853D\n #_00B236: dw $853D, $853D, $C53D, $C53D\n #_00B23E: dw $C53D, $C53F, $C53E, $01EC\n #_00B246: dw $052A, $853D, $853D, $853D\n #_00B24E: dw $853D, $853D, $C53D, $C53D\n #_00B256: dw $C53D, $C53D, $C53D, $452A\n #_00B25E: dw $05E8, $853D, $853D, $852E\n #_00B266: dw $852F, $852D, $C52D, $C52F\n #_00B26E: dw $C52E, $C53D, $C53D, $45E8\n #_00B276: dw $05E7, $853D, $052B, $852D\n #_00B27E: dw $852D, $852D, $C52D, $C52D\n #_00B286: dw $C52D, $452B, $C53D, $45E7\n #_00B28E: dw $05E7, $853D, $053B, $852D\n #_00B296: dw $852D, $852D, $C52D, $C52D\n #_00B29E: dw $C52D, $453B, $C53D, $45E7\n #_00B2A6: dw $85E8, $853D, $853B, $852D\n #_00B2AE: dw $852D, $852D, $C52D, $C52D\n #_00B2B6: dw $C52D, $C53B, $C53D, $C5E8\n #_00B2BE: dw $852A, $853D, $852B, $852D\n #_00B2C6: dw $852D, $852D, $C52D, $C52D\n #_00B2CE: dw $C52D, $C52B, $C53D, $C52A\n #_00B2D6: dw $01EC, $853A, $853D, $853B\n #_00B2DE: dw $852D, $852D, $C52D, $C52D\n #_00B2E6: dw $C53B, $C53D, $C53A, $01EC\n #_00B2EE: dw $01EC, $852A, $853D, $852B\n #_00B2F6: dw $852D, $852D, $C52D, $C52D\n #_00B2FE: dw $C52B, $C53D, $C52A, $01EC\n #_00B306: dw $01EC, $01EC, $853A, $853D\n #_00B30E: dw $052E, $052F, $452F, $452E\n #_00B316: dw $C53D, $C53A, $01EC, $01EC\n #_00B31E: dw $01EC, $01EC, $852A, $853D\n #_00B326: dw $853D, $853D, $C53D, $C53D\n #_00B32E: dw $C53D, $C52A, $01EC, $01EC\n #_00B336: dw $01EC, $01EC, $01EC, $053E\n #_00B33E: dw $053F, $853D, $C53D, $453F\n #_00B346: dw $453E\n\n; ---------------------------------------------------------\n\n#obj17F6:\n #_00B348: dw $01EC, $01EC, $01EC, $853E\n #_00B350: dw $853F, $053D, $453D, $C53F\n #_00B358: dw $C53E, $01EC, $01EC, $01EC\n #_00B360: dw $01EC, $01EC, $052A, $053D\n #_00B368: dw $053D, $053D, $453D, $453D\n #_00B370: dw $453D, $452A, $01EC, $01EC\n #_00B378: dw $01EC, $01EC, $053A, $053D\n #_00B380: dw $852E, $852F, $C52F, $C52E\n #_00B388: dw $453D, $453A, $01EC, $01EC\n #_00B390: dw $01EC, $052A, $053D, $052B\n #_00B398: dw $052D, $052D, $452D, $452D\n #_00B3A0: dw $452B, $453D, $452A, $01EC\n #_00B3A8: dw $01EC, $053A, $053D, $053B\n #_00B3B0: dw $052D, $052D, $452D, $452D\n #_00B3B8: dw $453B, $453D, $453A, $01EC\n #_00B3C0: dw $052A, $053D, $052B, $052D\n #_00B3C8: dw $052D, $052D, $452D, $452D\n #_00B3D0: dw $452D, $452B, $453D, $452A\n #_00B3D8: dw $05E8, $053D, $053B, $052D\n #_00B3E0: dw $052D, $052D, $452D, $452D\n #_00B3E8: dw $452D, $453B, $453D, $45E8\n #_00B3F0: dw $05E7, $053D, $853B, $052D\n #_00B3F8: dw $052D, $052D, $452D, $452D\n #_00B400: dw $452D, $C53B, $453D, $45E7\n #_00B408: dw $05E7, $053D, $852B, $052D\n #_00B410: dw $052D, $052D, $452D, $452D\n #_00B418: dw $452D, $C52B, $453D, $45E7\n #_00B420: dw $85E8, $053D, $053D, $052E\n #_00B428: dw $052F, $052D, $452D, $452F\n #_00B430: dw $452E, $453D, $453D, $C5E8\n #_00B438: dw $852A, $053D, $053D, $053D\n #_00B440: dw $053D, $053D, $453D, $453D\n #_00B448: dw $453D, $453D, $453D, $C52A\n #_00B450: dw $01EC, $053E, $053F, $053D\n #_00B458: dw $053D, $053D, $453D, $453D\n #_00B460: dw $453D, $453F, $453E\n\n; ---------------------------------------------------------\n\n#obj1914:\n #_00B466: dw $01EC, $853E, $853F, $053D\n #_00B46E: dw $053D, $C53F, $C53E, $01EC\n #_00B476: dw $01EC, $01EC, $01EC, $01EC\n #_00B47E: dw $052A, $053D, $053D, $053D\n #_00B486: dw $053D, $053D, $053D, $C53F\n #_00B48E: dw $C53E, $01EC, $01EC, $01EC\n #_00B496: dw $053A, $053D, $053D, $852E\n #_00B49E: dw $852F, $C52F, $C52E, $053D\n #_00B4A6: dw $053D, $C53F, $C53E, $01EC\n #_00B4AE: dw $053D, $053D, $052B, $052D\n #_00B4B6: dw $052D, $052D, $852D, $C52F\n #_00B4BE: dw $C52E, $053D, $053D, $452A\n #_00B4C6: dw $053D, $053D, $053B, $052D\n #_00B4CE: dw $052D, $052D, $052D, $052D\n #_00B4D6: dw $052D, $452B, $053D, $453A\n #_00B4DE: dw $053D, $053D, $052D, $052D\n #_00B4E6: dw $052D, $052D, $052D, $052D\n #_00B4EE: dw $052D, $453B, $053D, $053D\n #_00B4F6: dw $853D, $853D, $852D, $852D\n #_00B4FE: dw $852D, $852D, $852D, $852D\n #_00B506: dw $852D, $C53B, $853D, $853D\n #_00B50E: dw $853D, $853D, $853B, $852D\n #_00B516: dw $852D, $852D, $852D, $852D\n #_00B51E: dw $852D, $C52B, $853D, $C53A\n #_00B526: dw $853D, $853D, $852B, $852D\n #_00B52E: dw $852D, $852D, $852D, $452F\n #_00B536: dw $452E, $853D, $853D, $C52A\n #_00B53E: dw $853A, $853D, $853D, $052E\n #_00B546: dw $052F, $452F, $452E, $853D\n #_00B54E: dw $853D, $453F, $453E, $01EC\n #_00B556: dw $852A, $853D, $853D, $853D\n #_00B55E: dw $853D, $853D, $853D, $453F\n #_00B566: dw $453E, $01EC, $01EC, $01EC\n #_00B56E: dw $01EC, $053E, $053F, $853D\n #_00B576: dw $853D, $453F, $453E\n\n; ---------------------------------------------------------\n\n#obj1A2A:\n #_00B57C: dw $01EC, $01EC, $01EC, $01EC\n #_00B584: dw $01EC, $853E, $853F, $453D\n #_00B58C: dw $453D, $C53F, $C53E, $01EC\n #_00B594: dw $01EC, $01EC, $01EC, $853E\n #_00B59C: dw $853F, $453D, $453D, $453D\n #_00B5A4: dw $453D, $453D, $453D, $452A\n #_00B5AC: dw $01EC, $853E, $853F, $453D\n #_00B5B4: dw $453D, $852E, $852F, $C52F\n #_00B5BC: dw $C52E, $453D, $453D, $453A\n #_00B5C4: dw $052A, $453D, $453D, $852E\n #_00B5CC: dw $852F, $452D, $452D, $452D\n #_00B5D4: dw $452D, $452B, $453D, $453D\n #_00B5DC: dw $053A, $453D, $052B, $452D\n #_00B5E4: dw $452D, $452D, $452D, $452D\n #_00B5EC: dw $452D, $453B, $453D, $453D\n #_00B5F4: dw $453D, $453D, $053B, $452D\n #_00B5FC: dw $452D, $452D, $452D, $452D\n #_00B604: dw $452D, $452D, $453D, $453D\n #_00B60C: dw $C53D, $C53D, $853B, $C52D\n #_00B614: dw $C52D, $C52D, $C52D, $C52D\n #_00B61C: dw $C52D, $C52D, $C53D, $C53D\n #_00B624: dw $853A, $C53D, $852B, $C52D\n #_00B62C: dw $C52D, $C52D, $C52D, $C52D\n #_00B634: dw $C52D, $C53B, $C53D, $C53D\n #_00B63C: dw $852A, $C53D, $C53D, $052E\n #_00B644: dw $052F, $C52D, $C52D, $C52D\n #_00B64C: dw $C52D, $C52B, $C53D, $C53D\n #_00B654: dw $01EC, $053E, $053F, $C53D\n #_00B65C: dw $C53D, $052E, $052F, $452F\n #_00B664: dw $452E, $C53D, $C53D, $C53A\n #_00B66C: dw $01EC, $01EC, $01EC, $053E\n #_00B674: dw $053F, $C53D, $C53D, $C53D\n #_00B67C: dw $C53D, $C53D, $C53D, $C52A\n #_00B684: dw $01EC, $01EC, $01EC, $01EC\n #_00B68C: dw $01EC, $053E, $053F, $C53D\n #_00B694: dw $C53D, $453F, $453E, $01EC\n\n; ---------------------------------------------------------\n\n#obj1B4A:\n #_00B69C: dw $099D, $098E, $098E, $098E\n #_00B6A4: dw $098E, $098E, $098E, $098E\n #_00B6AC: dw $098E, $098E, $098E, $098E\n #_00B6B4: dw $098E, $099E, $099F, $18C6\n #_00B6BC: dw $18C6, $18C6, $18C6, $18C6\n #_00B6C4: dw $18C6, $18C6, $18C6, $18C6\n #_00B6CC: dw $18C6, $18C6, $18C6, $099F\n #_00B6D4: dw $099F, $18C6, $18C6, $18C6\n #_00B6DC: dw $18C6, $118A, $119A, $118B\n #_00B6E4: dw $119B, $11A0, $18C6, $18C6\n #_00B6EC: dw $18C6, $099F, $099F, $18C6\n #_00B6F4: dw $18C6, $18C6, $18C6, $1183\n #_00B6FC: dw $1193, $1182, $1192, $11A1\n #_00B704: dw $18C6, $18C6, $498F, $499E\n #_00B70C: dw $099F, $18C6, $18D4, $98D4\n #_00B714: dw $18C6, $1189, $1187, $1197\n #_00B71C: dw $118C, $11A2, $18C6, $18C6\n #_00B724: dw $0972, $0972, $099F, $18D6\n #_00B72C: dw $18D5, $98D5, $98D6, $119C\n #_00B734: dw $1188, $1198, $118D, $11A3\n #_00B73C: dw $18C6, $18C6, $0972, $0972\n\n; ---------------------------------------------------------\n\n#obj1BF2:\n #_00B744: dw $0995, $1D99, $0994, $0CAC\n #_00B74C: dw $0995, $1D99, $0994, $0CAC\n #_00B754: dw $0980, $0990, $0986, $09A6\n #_00B75C: dw $4980, $4990, $4986, $49A6\n #_00B764: dw $0995, $1D99, $0994, $0CAC\n #_00B76C: dw $0995, $1D99, $0994, $0CAC\n\n#obj1C22:\n #_00B774: dw $1DA7, $1DA8, $1DA4, $08F5\n #_00B77C: dw $0CD8\n\n#obj1C2C:\n #_00B77E: dw $0981, $0991, $0985, $09A5\n #_00B786: dw $8981, $8991, $8985, $89A5\n #_00B78E: dw $0996, $1D99, $0984, $0CAD\n #_00B796: dw $0996, $1D99, $0984, $0CAD\n #_00B79E: dw $0996, $1D99, $0984, $0CAD\n #_00B7A6: dw $0996, $1D99, $0984, $0CAD\n\n#obj1C5C:\n #_00B7AE: dw $98D9, $D8C7, $98C7, $D8C7\n #_00B7B6: dw $98C8, $14DB, $14CA, $58C8\n #_00B7BE: dw $18C7, $58C7, $18C7, $58D9\n\n#obj1C74:\n #_00B7C6: dw $58D9, $14CA, $D8C7, $98C8\n #_00B7CE: dw $58C7, $18C7, $D8C7, $98C7\n #_00B7D6: dw $58C8, $18C7, $14DB, $98D9\n\n#obj1C8C:\n #_00B7DE: dw $0CD8, $14CB, $D8C8, $58C8\n #_00B7E6: dw $14DB, $14DA, $18D9, $98C7\n #_00B7EE: dw $18C7, $98D9, $D8C8, $58C7\n #_00B7F6: dw $D8C7, $58C7, $D8D9, $98C8\n #_00B7FE: dw $18C7, $98C7, $18C8, $14DA\n #_00B806: dw $14DB, $58D9, $D8D9, $14CB\n #_00B80E: dw $14DB\n\n; ---------------------------------------------------------\n\n#obj1CBE:\n #_00B810: dw $95A6, $958D, $B597, $95A7\n #_00B818: dw $959C, $B598, $D5A7, $D59C\n #_00B820: dw $F598, $D5A6, $D58D, $F597\n #_00B828: dw $B587, $B595, $95A0, $B588\n #_00B830: dw $B596, $9586, $F588, $F596\n #_00B838: dw $D586, $F587, $F595, $D5A0\n\n; ---------------------------------------------------------\n\n#obj1CEE:\n #_00B840: dw $15A0, $3595, $3587, $3586\n #_00B848: dw $3596, $3588, $7586, $7596\n #_00B850: dw $7588, $55A0, $7595, $7587\n #_00B858: dw $3597, $158D, $15A6, $3598\n #_00B860: dw $159C, $15A7, $7598, $559C\n #_00B868: dw $55A7, $7597, $558D, $55A6\n\n; ---------------------------------------------------------\n\n#obj1D1E:\n #_00B870: dw $55A4, $55A5, $D5A5, $D5A4\n #_00B878: dw $558C, $559C, $D59C, $D58C\n #_00B880: dw $758B, $759B, $F59B, $F58B\n #_00B888: dw $758A, $759A, $F59A, $F58A\n #_00B890: dw $7589, $7599, $F599, $F589\n #_00B898: dw $55A1, $7585, $F585, $D5A1\n\n; ---------------------------------------------------------\n\n#obj1D4E:\n #_00B8A0: dw $15A1, $3585, $B585, $95A1\n #_00B8A8: dw $3589, $3599, $B599, $B589\n #_00B8B0: dw $358A, $359A, $B59A, $B58A\n #_00B8B8: dw $358B, $359B, $B59B, $B58B\n #_00B8C0: dw $158C, $159C, $959C, $958C\n #_00B8C8: dw $15A4, $15A5, $95A5, $95A4\n\n; ---------------------------------------------------------\n\n#obj1D7E:\n #_00B8D0: dw $1590, $1590, $5590, $5590\n\n; ---------------------------------------------------------\n\n#obj1D86:\n #_00B8D8: dw $1580, $9580, $1580, $9580\n\n; ---------------------------------------------------------\n\n#obj1D8E:\n #_00B8E0: dw $1581, $1590, $1580, $1591\n\n; ---------------------------------------------------------\n\n#obj1D96:\n #_00B8E8: dw $1590, $1592, $1582, $9580\n\n; ---------------------------------------------------------\n\n#obj1D9E:\n #_00B8F0: dw $1580, $1593, $1583, $5590\n\n; ---------------------------------------------------------\n\n#obj1DA6:\n #_00B8F8: dw $1584, $9580, $5590, $1594\n\n; ---------------------------------------------------------\n\n#obj1DAE:\n #_00B900: dw $15A3, $1590, $55A3, $5590\n\n; ---------------------------------------------------------\n\n#obj1DB6:\n #_00B908: dw $1590, $95A3, $5590, $D5A3\n\n; ---------------------------------------------------------\n\n#obj1DBE:\n #_00B910: dw $95A2, $15A2, $1580, $9580\n\n; ---------------------------------------------------------\n\n#obj1DC6:\n #_00B918: dw $1580, $9580, $D5A2, $55A2\n\n; ---------------------------------------------------------\n\n#obj1DCE:\n #_00B920: dw $159D, $959D, $559D, $D59D\n\n; ---------------------------------------------------------\n\n#obj1DD6:\n #_00B928: dw $19C4, $19C5\n\n; ---------------------------------------------------------\n\n#obj1DDA:\n #_00B92C: dw $0980, $0990, $0981, $0991\n\n; ---------------------------------------------------------\n\n#obj1DE2:\n #_00B934: dw $8990, $8980, $8991, $8981\n\n; ---------------------------------------------------------\n\n#obj1DEA:\n #_00B93C: dw $0D29, $0D39, $4D29, $4D39\n\n; ---------------------------------------------------------\n\n#obj1DF2:\n #_00B944: dw $19CD, $19CE, $59CD, $59CE\n\n; ---------------------------------------------------------\n\n#obj1DFA:\n #_00B94C: dw $01EC, $1585, $1586, $1587\n #_00B954: dw $1588, $1589, $1578, $5586\n #_00B95C: dw $5585, $01EC, $1594, $1595\n #_00B964: dw $1596, $1597, $1598, $1599\n #_00B96C: dw $1579, $5596, $5595, $5594\n #_00B974: dw $158A, $158B, $158C, $158D\n #_00B97C: dw $158E, $158F, $1572, $558C\n #_00B984: dw $558B, $558A, $159A, $159B\n #_00B98C: dw $159C, $159D, $159E, $159F\n #_00B994: dw $559D, $559C, $559B, $559A\n #_00B99C: dw $15AA, $15AB, $15AC, $15AD\n #_00B9A4: dw $15AE, $15AF, $55AD, $55AC\n #_00B9AC: dw $55AB, $55AA, $15A0, $15A1\n #_00B9B4: dw $15A2, $15A3, $15A4, $15A5\n #_00B9BC: dw $55A3, $55A2, $55A1, $55A0\n #_00B9C4: dw $15A7, $15A8, $154E, $156E\n #_00B9CC: dw $1576, $1577, $556E, $554E\n #_00B9D4: dw $55A8, $55A7, $01EC, $15A9\n #_00B9DC: dw $155E, $157E, $1574, $1575\n\n #_00B9E4: dw $557E, $555E, $55A9, $01EC\n\n; ---------------------------------------------------------\n\n#obj1E9A:\n #_00B9EC: dw $01EC, $31AA, $3161, $3162\n #_00B9F4: dw $3163, $7163, $7162, $7161\n #_00B9FC: dw $71AA, $01EC, $01EC, $3170\n #_00BA04: dw $3171, $3172, $317E, $717E\n #_00BA0C: dw $7172, $7171, $7170, $01EC\n #_00BA14: dw $3144, $3145, $3146, $3147\n #_00BA1C: dw $3148, $7148, $7147, $7146\n #_00BA24: dw $7145, $7144, $3154, $3155\n #_00BA2C: dw $3156, $3157, $3158, $7158\n #_00BA34: dw $7157, $7156, $7155, $7154\n #_00BA3C: dw $3164, $3165, $3166, $3167\n #_00BA44: dw $3168, $7168, $7167, $7166\n #_00BA4C: dw $7165, $7164, $3174, $3175\n #_00BA54: dw $3176, $3177, $3178, $7178\n #_00BA5C: dw $7177, $7176, $7175, $7174\n #_00BA64: dw $3149, $3159, $3169, $3179\n #_00BA6C: dw $31AF, $71AF, $7179, $7169\n #_00BA74: dw $7159, $7149, $31AA, $31AB\n #_00BA7C: dw $31AC, $31AD, $31AE, $71AE\n #_00BA84: dw $71AD, $71AC, $71AB, $71AA\n\n; ---------------------------------------------------------\n\n#obj1F3A:\n #_00BA8C: dw $0DCF, $8DCF, $4DCF, $CDCF\n\n; ---------------------------------------------------------\n\n#obj1F42:\n #_00BA94: dw $0D1F, $8D1F, $4D1F, $CD1F\n\n; ---------------------------------------------------------\n\n#obj1F4A:\n #_00BA9C: dw $0D01, $8D01, $4D01, $CD01\n\n; ---------------------------------------------------------\n\n#obj1F52:\n #_00BAA4: dw $19D0, $19D2, $19D1, $19D3\n\n; ---------------------------------------------------------\n\n#obj1F5A:\n #_00BAAC: dw $0DD4, $0DD6, $0DD5, $0DD7\n\n; ---------------------------------------------------------\n\n#obj1F62:\n #_00BAB4: dw $0993, $0D82, $0D84, $0890\n #_00BABC: dw $0D83, $0D85, $0890, $0D92\n #_00BAC4: dw $0D86, $0890, $4D92, $4D86\n #_00BACC: dw $0890, $0D92, $0D86, $0890\n #_00BAD4: dw $4D92, $4D86, $0890, $4D83\n #_00BADC: dw $4D85, $4993, $4D82, $4D84\n\n; ---------------------------------------------------------\n\n#obj1F92:\n #_00BAE4: dw $094A, $094B, $094B, $494B\n #_00BAEC: dw $494B, $494A, $094E, $0978\n #_00BAF4: dw $0979, $4979, $4978, $494E\n #_00BAFC: dw $094E, $094F, $1DB3, $5DB3\n #_00BB04: dw $494F, $494E, $094E, $094F\n #_00BB0C: dw $1DB4, $5DB4, $494F, $494E\n #_00BB14: dw $094E, $094F, $1DB4, $5DB4\n #_00BB1C: dw $494F, $494E, $094E, $094F\n #_00BB24: dw $9DB3, $DDB3, $494F, $494E\n #_00BB2C: dw $096A, $095E, $095F, $495F\n #_00BB34: dw $495E, $496A, $097A, $096E\n #_00BB3C: dw $096F, $496F, $496E, $497A\n\n; ---------------------------------------------------------\n\n#obj1FF2:\n #_00BB44: dw $11A0, $11A2, $1194, $11A1\n #_00BB4C: dw $11A3, $1195, $51A1, $51A3\n #_00BB54: dw $5195, $11A1, $11A3, $1195\n #_00BB5C: dw $51A1, $51A3, $5195, $51A0\n #_00BB64: dw $51A2, $5194\n\n; ---------------------------------------------------------\n\n#obj2016:\n #_00BB68: dw $0DAA, $0DAC, $0DAE, $0DAB\n #_00BB70: dw $0DAD, $0DAF, $4DAB, $4DAD\n #_00BB78: dw $4DAF, $4DAA, $4DAC, $4DAE\n\n; ---------------------------------------------------------\n\n#obj202E:\n #_00BB80: dw $0D51, $0D66, $1D64, $1D44\n #_00BB88: dw $1D54, $1D64, $1D54, $09EF\n #_00BB90: dw $0D55, $0D65, $156B, $157B\n #_00BB98: dw $158B, $1D40, $19B2, $157C\n #_00BBA0: dw $158C, $1D41, $156C, $157D\n #_00BBA8: dw $158C, $5D41, $14E4, $14E5\n #_00BBB0: dw $158D, $1D41\n\n; ---------------------------------------------------------\n\n#obj2062:\n #_00BBB4: dw $1540, $1550, $1576, $1541\n #_00BBBC: dw $1551, $1577, $5541, $5551\n #_00BBC4: dw $5577, $1541, $1551, $1577\n #_00BBCC: dw $5541, $5551, $5577, $5540\n #_00BBD4: dw $5550, $5576\n\n; ---------------------------------------------------------\n\n#obj2086:\n #_00BBD8: dw $1180, $1190, $1190, $1190\n #_00BBE0: dw $1191, $1186, $1196, $1181\n #_00BBE8: dw $5190, $5190, $5190, $5191\n #_00BBF0: dw $5186, $5196, $1182, $1192\n #_00BBF8: dw $1184, $1194, $11A4, $11A4\n #_00BC00: dw $11A4, $1183, $1193, $1185\n #_00BC08: dw $1195, $11A4, $11A4, $11A4\n #_00BC10: dw $5183, $5193, $5185, $5195\n #_00BC18: dw $51A4, $51A4, $51A4, $5182\n #_00BC20: dw $5192, $5184, $5194, $51A4\n #_00BC28: dw $51A4, $51A4, $5181, $1190\n #_00BC30: dw $1190, $1190, $1191, $1186\n #_00BC38: dw $1196, $5180, $5190, $5190\n #_00BC40: dw $5190, $5191, $5186, $5196\n\n; ---------------------------------------------------------\n\n#obj20F6:\n #_00BC48: dw $1593, $1580, $1580, $1580\n #_00BC50: dw $1580, $1580, $1580, $1580\n #_00BC58: dw $1580, $1580, $15A1, $1580\n #_00BC60: dw $1580, $1580, $1580, $1580\n #_00BC68: dw $1580, $1580, $1580, $1580\n #_00BC70: dw $1582, $15A3, $1580, $5583\n #_00BC78: dw $5593, $1580, $1580, $1580\n #_00BC80: dw $1582, $1592, $1580, $1583\n #_00BC88: dw $1596, $1580, $55A1, $D5A1\n #_00BC90: dw $1580, $1580, $1580, $1583\n #_00BC98: dw $1593, $1580, $1580, $55A1\n #_00BCA0: dw $1580, $5582, $5592, $1580\n #_00BCA8: dw $1580, $1580, $1580, $1580\n #_00BCB0: dw $1580, $1580, $55A0, $1580\n #_00BCB8: dw $1580, $1580, $15B4, $15B3\n #_00BCC0: dw $95B3, $95B4, $1580, $1580\n #_00BCC8: dw $1580, $5591, $1580, $1580\n #_00BCD0: dw $15B6, $15B5, $1581, $1581\n #_00BCD8: dw $95B5, $95B6, $1580, $1580\n #_00BCE0: dw $5590, $95A0, $15B7, $15B5\n #_00BCE8: dw $1581, $1581, $1581, $1581\n #_00BCF0: dw $95B5, $95B7, $1580, $55A1\n #_00BCF8: dw $95A1, $15B8, $1581, $1595\n #_00BD00: dw $15A5, $95A5, $9595, $9581\n #_00BD08: dw $95B8, $1580, $55A0, $D5A1\n #_00BD10: dw $15B9, $1585, $15A4, $15A4\n #_00BD18: dw $15A4, $15A4, $9585, $95B9\n #_00BD20: dw $1580, $5591, $D5A0, $15B2\n #_00BD28: dw $1586, $15A4, $15A4, $15A4\n #_00BD30: dw $15A4, $9586, $95B2, $1580\n #_00BD38: dw $5590, $1580, $55B2, $5586\n #_00BD40: dw $15A4, $15A4, $15A4, $15A4\n #_00BD48: dw $D586, $D5B2, $1580, $1590\n #_00BD50: dw $1580, $55B9, $5585, $15A4\n #_00BD58: dw $15A4, $15A4, $15A4, $D585\n #_00BD60: dw $D5B9, $1580, $1591, $1580\n #_00BD68: dw $55B8, $5581, $5595, $55A5\n #_00BD70: dw $D5A5, $D595, $D581, $D5B8\n #_00BD78: dw $1580, $15A0, $1580, $55B7\n #_00BD80: dw $55B5, $5581, $5581, $5581\n #_00BD88: dw $5581, $D5B5, $D5B7, $1582\n #_00BD90: dw $1596, $1580, $1580, $55B6\n #_00BD98: dw $55B5, $5581, $5581, $D5B5\n #_00BDA0: dw $D5B6, $1580, $1583, $1596\n #_00BDA8: dw $95A0, $1580, $1580, $55B4\n #_00BDB0: dw $55B3, $D5B3, $D5B4, $1580\n #_00BDB8: dw $1580, $1580, $1590, $95A1\n #_00BDC0: dw $1580, $1580, $1580, $1580\n #_00BDC8: dw $1580, $1580, $1580, $1580\n #_00BDD0: dw $1580, $1591, $9590, $1580\n #_00BDD8: dw $5583, $5593, $1580, $1582\n #_00BDE0: dw $1592, $1580, $1580, $1580\n #_00BDE8: dw $15A0, $9591, $1580, $55A1\n #_00BDF0: dw $D5A1, $1580, $1583, $1593\n #_00BDF8: dw $1580, $1580, $1580, $15A1\n #_00BE00: dw $95A0, $1580, $5582, $5592\n #_00BE08: dw $1580, $1580, $1580, $1580\n #_00BE10: dw $1580, $1580, $1590, $95A1\n #_00BE18: dw $1580, $1580, $1580, $1580\n #_00BE20: dw $1580, $1580, $1580, $1580\n #_00BE28: dw $1580, $1591\n\n; ---------------------------------------------------------\n\n#obj22DA:\n #_00BE2C: dw $0CEE, $D594, $1584, $15A3\n #_00BE34: dw $5594, $1594\n\n; ---------------------------------------------------------\n\n#obj22E6:\n #_00BE38: dw $0D09, $0D19, $4D09, $4D19\n\n; ---------------------------------------------------------\n\n#obj22EE:\n #_00BE40: dw $0D0A, $0D1A, $4D0A, $4D1A\n\n; ---------------------------------------------------------\n\n#obj22F6:\n #_00BE48: dw $0D4A, $0D5A, $0D6A, $0D7A\n #_00BE50: dw $0D4B, $0D5B, $0D6B, $0D7B\n #_00BE58: dw $4D4B, $4D5B, $4D6B, $4D7B\n #_00BE60: dw $4D4A, $4D5A, $4D6A, $4D7A\n\n; ---------------------------------------------------------\n\n#obj2316:\n #_00BE68: dw $0966, $0956, $1D48, $0967\n #_00BE70: dw $0957, $1DBE, $4967, $4957\n #_00BE78: dw $5DBE, $4966, $4956, $5D48\n\n; ---------------------------------------------------------\n\n#obj232E:\n #_00BE80: dw $9D48, $8956, $8966, $9DBE\n #_00BE88: dw $8957, $8967, $DDBE, $C957\n #_00BE90: dw $C967, $DD48, $C956, $C966\n\n; ---------------------------------------------------------\n\n#obj2346:\n #_00BE98: dw $0968, $0969, $8969, $8968\n #_00BEA0: dw $0958, $0959, $8959, $8958\n #_00BEA8: dw $1D49, $1DBF, $9DBF, $9D49\n\n; ---------------------------------------------------------\n\n#obj235E:\n #_00BEB0: dw $5D49, $5DBF, $DDBF, $DD49\n #_00BEB8: dw $4958, $4959, $C959, $C958\n #_00BEC0: dw $4968, $4969, $C969, $C968\n\n; ---------------------------------------------------------\n\n#obj2376:\n #_00BEC8: dw $113D, $113D, $113D, $113D\n #_00BED0: dw $113D, $113D, $113D, $113D\n #_00BED8: dw $113D, $113D, $113D, $113D\n #_00BEE0: dw $113D, $113D, $113D, $113D\n\n#obj2396:\n #_00BEE8: dw $1164, $1164, $1164, $1174\n #_00BEF0: dw $1165, $1165, $1165, $1175\n #_00BEF8: dw $5165, $5165, $5165, $5175\n #_00BF00: dw $5164, $5164, $5164, $5174\n\n; ---------------------------------------------------------\n\n#obj23B6:\n #_00BF08: dw $1144, $1154, $1154, $1154\n #_00BF10: dw $1176, $112D, $112D, $112D\n #_00BF18: dw $1145, $1155, $1155, $1155\n #_00BF20: dw $1176, $112D, $112D, $112D\n #_00BF28: dw $5176, $512D, $512D, $512D\n #_00BF30: dw $5145, $5155, $5155, $5155\n #_00BF38: dw $5176, $512D, $512D, $512D\n #_00BF40: dw $5144, $5154, $5154, $5154\n #_00BF48: dw $1154, $1154, $1154, $9144\n #_00BF50: dw $112D, $112D, $112D, $9176\n #_00BF58: dw $1155, $1155, $1155, $9145\n #_00BF60: dw $112D, $112D, $112D, $9176\n #_00BF68: dw $512D, $512D, $512D, $D176\n #_00BF70: dw $5155, $5155, $5155, $D145\n #_00BF78: dw $512D, $512D, $512D, $D176\n #_00BF80: dw $5154, $5154, $5154, $D144\n\n; ---------------------------------------------------------\n\n#obj2436:\n #_00BF88: dw $09E5, $09F5, $0936, $09FA\n #_00BF90: dw $49E5, $09F7, $0937, $09FB\n #_00BF98: dw $0000, $0000, $0000, $0CAC\n #_00BFA0: dw $0000, $0000, $0000, $4CAC\n #_00BFA8: dw $0000, $0000, $0000, $0CAC\n #_00BFB0: dw $0000, $0000, $0000, $4CAC\n #_00BFB8: dw $09E5, $49F7, $4937, $49FB\n #_00BFC0: dw $49E5, $49F5, $4936, $49FA\n #_00BFC8: dw $1414, $9414, $1414, $9414\n #_00BFD0: dw $5414, $D414, $5414, $D414\n #_00BFD8: dw $1414, $14E9, $14F9, $9414\n #_00BFE0: dw $5414, $14EA, $14FA, $D414\n #_00BFE8: dw $1414, $54EA, $54FA, $9414\n #_00BFF0: dw $5414, $54E9, $54F9, $D414\n #_00BFF8: dw $1414, $9414, $1414, $9414\n #_00C000: dw $5414, $D414, $5414, $D414\n\n; ---------------------------------------------------------\n\n#obj24B6:\n #_00C008: dw $2984, $09AC, $0994, $2985\n #_00C010: dw $15AD, $1595, $2986, $15AE\n #_00C018: dw $1596, $2987, $09AF, $0997\n #_00C020: dw $6987, $49AF, $4997, $6986\n #_00C028: dw $55AE, $5596, $6985, $55AD\n #_00C030: dw $5595, $6984, $49AC, $4994\n\n; ---------------------------------------------------------\n\n#obj24E6:\n #_00C038: dw $0980, $0990, $09A0, $0981\n #_00C040: dw $0991, $09A1, $0982, $0992\n #_00C048: dw $11A2, $1183, $1193, $11A3\n #_00C050: dw $5183, $5193, $51A3, $4982\n #_00C058: dw $4992, $51A2, $4981, $4991\n #_00C060: dw $49A1, $4980, $4990, $49A0\n\n; ---------------------------------------------------------\n\n#obj2516:\n #_00C068: dw $490C, $C90C, $099A, $09AA\n #_00C070: dw $090C, $098B, $099B, $09AB\n #_00C078: dw $490C, $498B, $499B, $49AB\n #_00C080: dw $090C, $890C, $499A, $49AA\n #_00C088: dw $490C, $09A8, $09A6, $C90C\n #_00C090: dw $098A, $09A9, $09A7, $890C\n #_00C098: dw $498A, $49A9, $49A7, $C90C\n #_00C0A0: dw $090C, $49A8, $49A6, $890C\n\n; ---------------------------------------------------------\n\n#obj2556:\n #_00C0A8: dw $09AC, $0994, $1D8C, $01EC\n #_00C0B0: dw $15AD, $1595, $1D9C, $01EC\n #_00C0B8: dw $15AE, $1596, $1D9C, $01EC\n #_00C0C0: dw $09AF, $0997, $1D9C, $01EC\n #_00C0C8: dw $49AF, $4997, $1D9C, $01EC\n #_00C0D0: dw $55AE, $5596, $1D9C, $01EC\n #_00C0D8: dw $55AD, $5595, $1D9C, $01EC\n #_00C0E0: dw $49AC, $4994, $5D8C, $01EC\n\n#obj2596:\n #_00C0E8: dw $09AC, $0994, $1D8C, $1D8C\n #_00C0F0: dw $15AD, $1595, $1D9C, $1D9C\n #_00C0F8: dw $15AE, $1596, $1D9C, $1D9C\n #_00C100: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C108: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C110: dw $55AE, $5596, $1D9C, $1D9C\n #_00C118: dw $55AD, $5595, $1D9C, $1D9C\n #_00C120: dw $49AC, $4994, $5D8C, $5D8C\n\n#obj25D6:\n #_00C128: dw $09AC, $0994, $1D8C, $1D8C\n #_00C130: dw $15AD, $1595, $1D9C, $1D9C\n #_00C138: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C140: dw $1D88, $1D98, $1D89, $1D99\n #_00C148: dw $1D88, $1D98, $1D89, $1D99\n #_00C150: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C158: dw $55AD, $5595, $1D9C, $1D9C\n #_00C160: dw $49AC, $4994, $5D8C, $5D8C\n\n#obj2616:\n #_00C168: dw $09AC, $0994, $1D8C, $1D8C\n #_00C170: dw $1D8D, $1D98, $1D89, $1D99\n #_00C178: dw $1D88, $1D98, $1D89, $1D99\n #_00C180: dw $1D88, $1D98, $1D89, $1D99\n #_00C188: dw $1D88, $1D98, $1D89, $1D99\n #_00C190: dw $1D88, $1D98, $1D89, $1D99\n #_00C198: dw $5D8D, $1D98, $1D89, $1D99\n #_00C1A0: dw $49AC, $4994, $5D8C, $5D8C\n\n; ---------------------------------------------------------\n\n#obj2656:\n #_00C1A8: dw $08D0, $08D0, $08D0, $08D0\n #_00C1B0: dw $08D0, $48D0, $48D0, $48D0\n #_00C1B8: dw $48D0, $48D0, $08D0, $14C0\n #_00C1C0: dw $14C0, $14C0, $14C0, $54C0\n #_00C1C8: dw $54C0, $54C0, $54C0, $48D0\n #_00C1D0: dw $08D0, $14C0, $14C0, $14C0\n #_00C1D8: dw $14D1, $54D1, $54C0, $54C0\n #_00C1E0: dw $54C0, $48D0, $08D0, $14C0\n #_00C1E8: dw $14C0, $14C2, $14C3, $54C3\n #_00C1F0: dw $54C2, $54C0, $54C0, $48D0\n #_00C1F8: dw $097C, $097D, $097F, $14C4\n #_00C200: dw $14C5, $54C5, $54C4, $497F\n #_00C208: dw $497D, $497C, $096C, $096D\n #_00C210: dw $096F, $0908, $14E8, $54E8\n #_00C218: dw $4908, $496F, $496D, $496C\n #_00C220: dw $095C, $095D, $095F, $0918\n #_00C228: dw $14F8, $54F8, $4918, $495F\n #_00C230: dw $495D, $495C, $094C, $094D\n #_00C238: dw $094F, $A888, $A889, $E889\n #_00C240: dw $E888, $494F, $494D, $494C\n\n; ---------------------------------------------------------\n\n#obj26F6:\n #_00C248: dw $14C8, $097E, $096E, $295E\n #_00C250: dw $14D8, $14C9, $14D9, $294E\n #_00C258: dw $54D8, $54C9, $54D9, $694E\n #_00C260: dw $54C8, $497E, $496E, $695E\n\n; =========================================================\n\n#obj2716:\n #_00C268: dw $2888, $0808, $0818, $2889\n #_00C270: dw $09EF, $0878, $6889, $09EF\n #_00C278: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj272E:\n #_00C280: dw $282C, $0808, $080D, $282D\n #_00C288: dw $09EF, $0878, $682D, $09EF\n #_00C290: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj2746:\n #_00C298: dw $2888, $0808, $0818, $2889\n #_00C2A0: dw $09EF, $0878, $6889, $09EF\n #_00C2A8: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj275E:\n #_00C2B0: dw $0882, $0824, $0834, $0883\n #_00C2B8: dw $0825, $0835, $4883, $4825\n #_00C2C0: dw $4835, $4882, $4824, $4834\n\n; ---------------------------------------------------------\n\n#obj2776:\n #_00C2C8: dw $0890, $0896, $08A2, $0891\n #_00C2D0: dw $0897, $08A3, $0890, $0896\n #_00C2D8: dw $08A2, $0891, $0897, $08A3\n\n; ---------------------------------------------------------\n\n#obj278E:\n #_00C2E0: dw $0882, $0800, $0810, $0883\n #_00C2E8: dw $0802, $0812, $4883, $4802\n #_00C2F0: dw $4812, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27A6:\n #_00C2F8: dw $0882, $0800, $0810, $0883\n #_00C300: dw $0801, $0811, $4883, $4801\n #_00C308: dw $4811, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27BE:\n #_00C310: dw $0882, $0800, $0810, $0883\n #_00C318: dw $0802, $0812, $4883, $4802\n #_00C320: dw $4812, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27D6:\n #_00C328: dw $08B0, $0800, $080B, $08B1\n #_00C330: dw $0802, $0812, $48B1, $4802\n #_00C338: dw $4812, $48B0, $4800, $480B\n\n; ---------------------------------------------------------\n\n#obj27EE:\n #_00C340: dw $0890, $08BA, $08A9, $08B4\n #_00C348: dw $088C, $088E, $48B4, $088D\n #_00C350: dw $088F, $0891, $48BA, $48A9\n\n; ---------------------------------------------------------\n\n#obj2806:\n #_00C358: dw $0882, $0800, $0810, $0883\n #_00C360: dw $0801, $0811, $4883, $4801\n #_00C368: dw $4811, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj281E:\n #_00C370: dw $0890, $0896, $08A2, $0891\n #_00C378: dw $088C, $088E, $0890, $088D\n #_00C380: dw $088F, $0891, $0897, $08A3\n\n; ---------------------------------------------------------\n\n#obj2836:\n #_00C388: dw $0882, $0824, $0834, $0883\n #_00C390: dw $0825, $0835, $4883, $4825\n #_00C398: dw $4835, $4882, $4824, $4834\n\n; ---------------------------------------------------------\n\n#obj284E:\n #_00C3A0: dw $2888, $0808, $0818, $2889\n #_00C3A8: dw $09EF, $0878, $6889, $09EF\n #_00C3B0: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj2866:\n #_00C3B8: dw $282C, $0808, $080D, $282D\n #_00C3C0: dw $09EF, $0878, $682D, $09EF\n #_00C3C8: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj287E:\n #_00C3D0: dw $08B0, $0800, $080B, $08B1\n #_00C3D8: dw $0801, $0811, $48B1, $4801\n #_00C3E0: dw $4811, $48B0, $4800, $480B\n\n; ---------------------------------------------------------\n\n#obj2896:\n #_00C3E8: dw $08B0, $0824, $080C, $08B1\n #_00C3F0: dw $0825, $0835, $48B1, $4825\n #_00C3F8: dw $4835, $48B0, $4824, $480C\n\n; ---------------------------------------------------------\n\n#obj28AE:\n #_00C400: dw $282C, $0808, $080D, $282D\n #_00C408: dw $09EF, $0878, $682D, $09EF\n #_00C410: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj28C6:\n #_00C418: dw $08B0, $0824, $080C, $08B1\n #_00C420: dw $0825, $0835, $48B1, $4825\n #_00C428: dw $4835, $48B0, $4824, $480C\n\n; ---------------------------------------------------------\n\n#obj28DE:\n #_00C430: dw $282C, $0808, $080D, $282D\n #_00C438: dw $09EF, $0878, $682D, $09EF\n #_00C440: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj28F6:\n #_00C448: dw $2882, $0808, $0818, $2883\n #_00C450: dw $09EF, $0878, $6883, $09EF\n #_00C458: dw $4878, $6882, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj290E:\n #_00C460: dw $2886, $0877, $0875, $2887\n #_00C468: dw $09EF, $0859, $6887, $09EF\n #_00C470: dw $4859, $6886, $4877, $4875\n\n; ---------------------------------------------------------\n\n#obj2926:\n #_00C478: dw $0872, $0872, $0872, $0873\n #_00C480: dw $0874, $0875, $0876, $0876\n #_00C488: dw $0876, $0876, $0876, $0876\n #_00C490: dw $085B, $4876, $4876, $4876\n #_00C498: dw $4876, $4876, $4876, $4872\n #_00C4A0: dw $4872, $4872, $4873, $4874\n #_00C4A8: dw $4875\n\n; ---------------------------------------------------------\n\n#obj2958:\n #_00C4AA: dw $296E, $115E, $1178, $1158\n #_00C4B2: dw $696E, $09EF, $0878, $1174\n #_00C4BA: dw $296E, $49EF, $4878, $5174\n #_00C4C2: dw $696E, $515E, $5178, $5158\n\n; ---------------------------------------------------------\n\n#obj2978:\n #_00C4CA: dw $28B0, $0808, $080D, $28B1\n #_00C4D2: dw $09EF, $0878, $68B1, $09EF\n #_00C4DA: dw $4878, $68B0, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj2990:\n #_00C4E2: dw $28B8, $2808, $0818, $289D\n #_00C4EA: dw $082E, $083E, $689D, $082F\n #_00C4F2: dw $083F, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj29A8:\n #_00C4FA: dw $28B8, $2808, $0818, $28B9\n #_00C502: dw $09EF, $0819, $68B9, $09EF\n #_00C50A: dw $081A, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj29C0:\n #_00C512: dw $28B5, $2808, $080D, $28B7\n #_00C51A: dw $082E, $083E, $68B7, $082F\n #_00C522: dw $083F, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj29D8:\n #_00C52A: dw $28B5, $2808, $080D, $28B6\n #_00C532: dw $09EF, $0819, $68B6, $09EF\n #_00C53A: dw $081A, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj29F0:\n #_00C542: dw $8818, $8808, $A888, $8878\n #_00C54A: dw $09EF, $A889, $8878, $09EF\n #_00C552: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A08:\n #_00C55A: dw $880D, $8808, $A82C, $8878\n #_00C562: dw $09EF, $A82D, $C878, $09EF\n #_00C56A: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2A20:\n #_00C572: dw $8818, $8808, $A888, $8878\n #_00C57A: dw $09EF, $A889, $8878, $09EF\n #_00C582: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A38:\n #_00C58A: dw $8834, $8824, $8882, $8835\n #_00C592: dw $8825, $8883, $C835, $C825\n #_00C59A: dw $C883, $C834, $C824, $C882\n\n; ---------------------------------------------------------\n\n#obj2A50:\n #_00C5A2: dw $88A2, $8896, $8890, $88A3\n #_00C5AA: dw $8897, $8891, $88A2, $8896\n #_00C5B2: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2A68:\n #_00C5BA: dw $8810, $8800, $8882, $8812\n #_00C5C2: dw $8802, $8883, $C812, $C802\n #_00C5CA: dw $C883, $C810, $C800, $C882\n\n; ---------------------------------------------------------\n\n#obj2A80:\n #_00C5D2: dw $8818, $8808, $A888, $8878\n #_00C5DA: dw $09EF, $A889, $8878, $09EF\n #_00C5E2: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A98:\n #_00C5EA: dw $88A9, $88BA, $8890, $888E\n #_00C5F2: dw $888C, $88B4, $888F, $888D\n #_00C5FA: dw $C8B4, $C8A9, $C8BA, $8891\n\n; ---------------------------------------------------------\n\n#obj2AB0:\n #_00C602: dw $88A2, $8896, $8890, $888E\n #_00C60A: dw $888C, $8891, $888F, $888D\n #_00C612: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2AC8:\n #_00C61A: dw $8810, $8800, $8882, $8811\n #_00C622: dw $8801, $8883, $C811, $C801\n #_00C62A: dw $C883, $C810, $C800, $C882\n\n; ---------------------------------------------------------\n\n#obj2AE0:\n #_00C632: dw $88A2, $8896, $8890, $888E\n #_00C63A: dw $888C, $8891, $888F, $888D\n #_00C642: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2AF8:\n #_00C64A: dw $8818, $8808, $A888, $8878\n #_00C652: dw $09EF, $A889, $8878, $09EF\n #_00C65A: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2B10:\n #_00C662: dw $8834, $8824, $8882, $8835\n #_00C66A: dw $8825, $8883, $C835, $C825\n #_00C672: dw $C883, $C834, $C824, $C882\n\n; ---------------------------------------------------------\n\n#obj2B28:\n #_00C67A: dw $880D, $8808, $A82C, $8878\n #_00C682: dw $09EF, $A82D, $C878, $09EF\n #_00C68A: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2B40:\n #_00C692: dw $880B, $8800, $88B0, $8811\n #_00C69A: dw $8801, $88B1, $C811, $C801\n #_00C6A2: dw $C8B1, $C80B, $C800, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2B58:\n #_00C6AA: dw $880C, $8824, $88B0, $8835\n #_00C6B2: dw $8825, $88B1, $C835, $C825\n #_00C6BA: dw $C8B1, $C80C, $C824, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2B70:\n #_00C6C2: dw $880D, $8808, $A82C, $8878\n #_00C6CA: dw $09EF, $A82D, $C878, $09EF\n #_00C6D2: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2B88:\n #_00C6DA: dw $880D, $8808, $A82C, $8878\n #_00C6E2: dw $09EF, $A82D, $C878, $09EF\n #_00C6EA: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2BA0:\n #_00C6F2: dw $880C, $8824, $88B0, $8835\n #_00C6FA: dw $8825, $88B1, $C835, $C825\n #_00C702: dw $C8B1, $C80C, $C824, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2BB8:\n #_00C70A: dw $8818, $8808, $A882, $8878\n #_00C712: dw $09EF, $A883, $C878, $09EF\n #_00C71A: dw $E883, $C818, $C808, $E882\n\n; ---------------------------------------------------------\n\n#obj2BD0:\n #_00C722: dw $8875, $8877, $A886, $8859\n #_00C72A: dw $09EF, $A887, $C859, $09EF\n #_00C732: dw $E887, $C875, $C877, $E886\n\n; ---------------------------------------------------------\n\n#obj2BE8:\n #_00C73A: dw $8875, $8874, $8873, $8872\n #_00C742: dw $8872, $8872, $8876, $8876\n #_00C74A: dw $8876, $8876, $8876, $8876\n #_00C752: dw $085B, $C876, $C876, $C876\n #_00C75A: dw $C876, $C876, $C876, $C875\n #_00C762: dw $C874, $C873, $C872, $C872\n #_00C76A: dw $C872\n\n; ---------------------------------------------------------\n\n#obj2C1A:\n #_00C76C: dw $9158, $9178, $915E, $A96E\n #_00C774: dw $9174, $8878, $89EF, $E96E\n #_00C77C: dw $D174, $C878, $C9EF, $A96E\n #_00C784: dw $D158, $D178, $D15E, $E96E\n\n; ---------------------------------------------------------\n\n#obj2C3A:\n #_00C78C: dw $880D, $8808, $A8B0, $8878\n #_00C794: dw $09EF, $A8B1, $C878, $09EF\n #_00C79C: dw $E8B1, $C80D, $C808, $E8B0\n\n; ---------------------------------------------------------\n\n#obj2C52:\n #_00C7A4: dw $0960, $296E, $295E, $14C9\n #_00C7AC: dw $14D9, $294E, $54C9, $54D9\n #_00C7B4: dw $694E, $4960, $696E, $695E\n\n; ---------------------------------------------------------\n\n#obj2C6A:\n #_00C7BC: dw $288A, $288B, $A88B, $A88A\n #_00C7C4: dw $0809, $09EF, $09EF, $8809\n #_00C7CC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2C82:\n #_00C7D4: dw $283C, $283D, $A83D, $A83C\n #_00C7DC: dw $0809, $09EF, $09EF, $8809\n #_00C7E4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2C9A:\n #_00C7EC: dw $288A, $288B, $A88B, $A88A\n #_00C7F4: dw $0809, $09EF, $09EF, $8809\n #_00C7FC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2CB2:\n #_00C804: dw $0884, $0885, $8885, $8884\n #_00C80C: dw $0826, $0836, $8836, $8826\n #_00C814: dw $0827, $0837, $8837, $8827\n\n; ---------------------------------------------------------\n\n#obj2CCA:\n #_00C81C: dw $0892, $0893, $0892, $0893\n #_00C824: dw $0898, $0899, $0898, $0899\n #_00C82C: dw $082D, $083D, $082D, $083D\n\n; ---------------------------------------------------------\n\n#obj2CE2:\n #_00C834: dw $0884, $0885, $8885, $8884\n #_00C83C: dw $0803, $0805, $8805, $8803\n #_00C844: dw $0804, $0806, $8806, $8804\n\n; ---------------------------------------------------------\n\n#obj2CFA:\n #_00C84C: dw $0892, $08A8, $88A8, $0893\n #_00C854: dw $08BB, $08BC, $08BD, $88BB\n #_00C85C: dw $08AA, $08BE, $08BF, $88AA\n\n; ---------------------------------------------------------\n\n#obj2D12:\n #_00C864: dw $0884, $0885, $8885, $8884\n #_00C86C: dw $0803, $0813, $8813, $8803\n #_00C874: dw $0804, $0814, $8814, $8804\n\n; ---------------------------------------------------------\n\n#obj2D2A:\n #_00C87C: dw $0892, $0893, $0892, $0893\n #_00C884: dw $0898, $08BC, $08BD, $0899\n #_00C88C: dw $08A4, $08BE, $08BF, $08A5\n\n; ---------------------------------------------------------\n\n#obj2D42:\n #_00C894: dw $0884, $0885, $8885, $8884\n #_00C89C: dw $0826, $0836, $8836, $8826\n #_00C8A4: dw $0827, $0837, $8837, $8827\n\n; ---------------------------------------------------------\n\n#obj2D5A:\n #_00C8AC: dw $288A, $288B, $A88B, $A88A\n #_00C8B4: dw $0809, $09EF, $09EF, $8809\n #_00C8BC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2D72:\n #_00C8C4: dw $283C, $283D, $A83D, $A83C\n #_00C8CC: dw $0809, $09EF, $09EF, $8809\n #_00C8D4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2D8A:\n #_00C8DC: dw $08B2, $08B3, $88B3, $88B2\n #_00C8E4: dw $0803, $0813, $8813, $8803\n #_00C8EC: dw $081B, $0814, $8814, $881B\n\n; ---------------------------------------------------------\n\n#obj2DA2:\n #_00C8F4: dw $08B2, $08B3, $88B3, $88B2\n #_00C8FC: dw $0826, $0836, $8836, $8826\n #_00C904: dw $081C, $0837, $8837, $881C\n\n; ---------------------------------------------------------\n\n#obj2DBA:\n #_00C90C: dw $283C, $283D, $A83D, $A83C\n #_00C914: dw $0809, $09EF, $09EF, $8809\n #_00C91C: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2DD2:\n #_00C924: dw $08B2, $08B3, $88B3, $88B2\n #_00C92C: dw $0826, $0836, $8836, $8826\n #_00C934: dw $081C, $0837, $8837, $881C\n\n; ---------------------------------------------------------\n\n#obj2DEA:\n #_00C93C: dw $283C, $283D, $A83D, $A83C\n #_00C944: dw $0809, $09EF, $09EF, $8809\n #_00C94C: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2E02:\n #_00C954: dw $2884, $2885, $A885, $A884\n #_00C95C: dw $0809, $09EF, $09EF, $8809\n #_00C964: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2E1A:\n #_00C96C: dw $28A0, $28A1, $A8A1, $A8A0\n #_00C974: dw $0867, $09EF, $09EF, $8867\n #_00C97C: dw $0865, $085A, $885A, $8865\n\n; ---------------------------------------------------------\n\n#obj2E32:\n #_00C984: dw $297E, $A97E, $297E, $A97E\n #_00C98C: dw $11AC, $09EF, $89EF, $91AC\n #_00C994: dw $1179, $0879, $8879, $9179\n #_00C99C: dw $1157, $1175, $9175, $9157\n\n; ---------------------------------------------------------\n\n#obj2E52:\n #_00C9A4: dw $28B2, $28B3, $A8B3, $A8B2\n #_00C9AC: dw $0809, $09EF, $09EF, $8809\n #_00C9B4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2E6A:\n #_00C9BC: dw $480A, $4879, $C879, $C80A\n #_00C9C4: dw $4809, $09EF, $09EF, $C809\n #_00C9CC: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2E82:\n #_00C9D4: dw $481D, $4879, $C879, $C81D\n #_00C9DC: dw $4809, $09EF, $09EF, $C809\n #_00C9E4: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2E9A:\n #_00C9EC: dw $480A, $4879, $C879, $C80A\n #_00C9F4: dw $4809, $09EF, $09EF, $C809\n #_00C9FC: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2EB2:\n #_00CA04: dw $4827, $4837, $C837, $C827\n #_00CA0C: dw $4826, $4836, $C836, $C826\n #_00CA14: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2ECA:\n #_00CA1C: dw $482D, $483D, $482D, $483D\n #_00CA24: dw $4898, $4899, $4898, $4899\n #_00CA2C: dw $4892, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj2EE2:\n #_00CA34: dw $4804, $4806, $C806, $C804\n #_00CA3C: dw $4803, $4805, $C805, $C803\n #_00CA44: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2EFA:\n #_00CA4C: dw $48AA, $48BE, $48BF, $C8AA\n #_00CA54: dw $48BB, $48BC, $48BD, $C8BB\n #_00CA5C: dw $4892, $48A8, $C8A8, $4893\n\n; ---------------------------------------------------------\n\n#obj2F12:\n #_00CA64: dw $4804, $4814, $C814, $C804\n #_00CA6C: dw $4803, $4813, $C813, $C803\n #_00CA74: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2F2A:\n #_00CA7C: dw $48A4, $48BE, $48BF, $48A5\n #_00CA84: dw $4898, $48BC, $48BD, $4899\n #_00CA8C: dw $4892, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj2F42:\n #_00CA94: dw $480A, $4879, $C879, $C80A\n #_00CA9C: dw $4809, $09EF, $09EF, $C809\n #_00CAA4: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2F5A:\n #_00CAAC: dw $4827, $4837, $C837, $C827\n #_00CAB4: dw $4826, $4836, $C836, $C826\n #_00CABC: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2F72:\n #_00CAC4: dw $481D, $4879, $C879, $C81D\n #_00CACC: dw $4809, $09EF, $09EF, $C809\n #_00CAD4: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2F8A:\n #_00CADC: dw $481B, $4814, $C814, $C81B\n #_00CAE4: dw $4803, $4813, $C813, $C803\n #_00CAEC: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj2FA2:\n #_00CAF4: dw $481C, $4837, $C837, $C81C\n #_00CAFC: dw $4826, $4836, $C836, $C826\n #_00CB04: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj2FBA:\n #_00CB0C: dw $481D, $4879, $C879, $C81D\n #_00CB14: dw $4809, $09EF, $09EF, $C809\n #_00CB1C: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2FD2:\n #_00CB24: dw $481D, $4879, $C879, $C81D\n #_00CB2C: dw $4809, $09EF, $09EF, $C809\n #_00CB34: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2FEA:\n #_00CB3C: dw $481C, $4837, $C837, $C81C\n #_00CB44: dw $4826, $4836, $C836, $C826\n #_00CB4C: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj3002:\n #_00CB54: dw $480A, $4879, $C879, $C80A\n #_00CB5C: dw $4809, $09EF, $09EF, $C809\n #_00CB64: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj301A:\n #_00CB6C: dw $4865, $485A, $C85A, $C865\n #_00CB74: dw $4867, $09EF, $09EF, $C867\n #_00CB7C: dw $68A0, $68A1, $E8A1, $E8A0\n\n; ---------------------------------------------------------\n\n#obj3032:\n #_00CB84: dw $5157, $5175, $D175, $D157\n #_00CB8C: dw $5179, $4879, $C879, $D179\n #_00CB94: dw $51AC, $49EF, $C9EF, $D1AC\n #_00CB9C: dw $697E, $E97E, $697E, $E97E\n\n; ---------------------------------------------------------\n\n#obj3052:\n #_00CBA4: dw $481D, $4879, $C879, $C81D\n #_00CBAC: dw $4809, $09EF, $09EF, $C809\n #_00CBB4: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj306A:\n #_00CBBC: dw $2882, $0820, $0830, $2883\n #_00CBC4: dw $0821, $0831, $6883, $4821\n #_00CBCC: dw $4831, $6882, $4820, $4830\n\n; ---------------------------------------------------------\n\n#obj3082:\n #_00CBD4: dw $2882, $0828, $0838, $2883\n #_00CBDC: dw $0829, $0839, $6883, $4829\n #_00CBE4: dw $4839, $6882, $4828, $4838\n\n; ---------------------------------------------------------\n\n#obj309A:\n #_00CBEC: dw $28B0, $0820, $080E, $28B1\n #_00CBF4: dw $0821, $0831, $68B1, $4821\n #_00CBFC: dw $4831, $68B0, $4820, $480E\n\n; ---------------------------------------------------------\n\n#obj30B2:\n #_00CC04: dw $28B0, $0828, $080F, $28B1\n #_00CC0C: dw $0829, $0839, $68B1, $4829\n #_00CC14: dw $4839, $68B0, $4828, $480F\n\n; ---------------------------------------------------------\n\n#obj30CA:\n #_00CC1C: dw $8830, $8820, $A882, $8831\n #_00CC24: dw $8821, $A883, $C831, $C821\n #_00CC2C: dw $E883, $C830, $C820, $E882\n\n; ---------------------------------------------------------\n\n#obj30E2:\n #_00CC34: dw $8838, $8828, $A882, $8839\n #_00CC3C: dw $8829, $A883, $C839, $C829\n #_00CC44: dw $E883, $C838, $C828, $E882\n\n; ---------------------------------------------------------\n\n#obj30FA:\n #_00CC4C: dw $880E, $8820, $A8B0, $8831\n #_00CC54: dw $8821, $A8B1, $C831, $C821\n #_00CC5C: dw $E8B1, $C80E, $C820, $E8B0\n\n; ---------------------------------------------------------\n\n#obj3112:\n #_00CC64: dw $880F, $8828, $A8B0, $8839\n #_00CC6C: dw $8829, $A8B1, $C839, $C829\n #_00CC74: dw $E8B1, $C80F, $C828, $E8B0\n\n; ---------------------------------------------------------\n\n#obj312A:\n #_00CC7C: dw $2884, $2885, $A885, $A884\n #_00CC84: dw $0822, $0832, $8832, $8822\n #_00CC8C: dw $0823, $0833, $8833, $8823\n\n; ---------------------------------------------------------\n\n#obj3142:\n #_00CC94: dw $2884, $2885, $A885, $A884\n #_00CC9C: dw $082A, $083A, $883A, $882A\n #_00CCA4: dw $082B, $083B, $883B, $882B\n\n; ---------------------------------------------------------\n\n#obj315A:\n #_00CCAC: dw $28B2, $28B3, $A8B3, $A8B2\n #_00CCB4: dw $0822, $0832, $8832, $8822\n #_00CCBC: dw $081E, $0833, $8833, $881E\n\n; ---------------------------------------------------------\n\n#obj3172:\n #_00CCC4: dw $28B2, $28B3, $A8B3, $A8B2\n #_00CCCC: dw $082A, $083A, $883A, $882A\n #_00CCD4: dw $081F, $083B, $883B, $881F\n\n; ---------------------------------------------------------\n\n#obj318A:\n #_00CCDC: dw $4823, $4833, $C833, $C823\n #_00CCE4: dw $4822, $4832, $C832, $C822\n #_00CCEC: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj31A2:\n #_00CCF4: dw $482B, $483B, $C83B, $C82B\n #_00CCFC: dw $482A, $483A, $C83A, $C82A\n #_00CD04: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj31BA:\n #_00CD0C: dw $481E, $4833, $C833, $C81E\n #_00CD14: dw $4822, $4832, $C832, $C822\n #_00CD1C: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj31D2:\n #_00CD24: dw $481F, $483B, $C83B, $C81F\n #_00CD2C: dw $482A, $483A, $C83A, $C82A\n #_00CD34: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj31EA:\n #_00CD3C: dw $8875, $8874, $8873, $8872\n #_00CD44: dw $8872, $8872, $0872, $8872\n #_00CD4C: dw $8872, $0873, $0874, $0875\n #_00CD54: dw $8876, $8876, $8876, $8876\n #_00CD5C: dw $8876, $0876, $0876, $0876\n #_00CD64: dw $0876, $0876, $0876, $0876\n #_00CD6C: dw $085B, $C876, $C876, $C876\n #_00CD74: dw $C876, $C876, $4876, $4876\n #_00CD7C: dw $4876, $4876, $4876, $4876\n #_00CD84: dw $4876, $C875, $C874, $C873\n #_00CD8C: dw $C872, $C872, $C872, $4872\n #_00CD94: dw $4872, $4872, $4873, $4874\n #_00CD9C: dw $4875\n\n; =========================================================\n" + }, + { + "name": "DoorGFXDataOffset_North", + "code": "DoorGFXDataOffset_North:\n #_00CD9E: dw obj2716-RoomDrawObjectData ; 0x00 - Normal door\n #_00CDA0: dw obj272E-RoomDrawObjectData ; 0x02 - Normal door (lower layer)\n #_00CDA2: dw obj272E-RoomDrawObjectData ; 0x04 - Exit (lower layer)\n #_00CDA4: dw obj2746-RoomDrawObjectData ; 0x06 - Unused cave exit (lower layer)\n #_00CDA6: dw obj2746-RoomDrawObjectData ; 0x08 - Waterfall door\n #_00CDA8: dw obj2746-RoomDrawObjectData ; 0x0A - Fancy dungeon exit\n #_00CDAA: dw obj2746-RoomDrawObjectData ; 0x0C - Fancy dungeon exit (lower layer)\n #_00CDAC: dw obj2746-RoomDrawObjectData ; 0x0E - Cave exit\n #_00CDAE: dw obj2746-RoomDrawObjectData ; 0x10 - Lit cave exit (lower layer)\n #_00CDB0: dw obj275E-RoomDrawObjectData ; 0x12 - Exit marker\n #_00CDB2: dw obj275E-RoomDrawObjectData ; 0x14 - Dungeon swap marker\n #_00CDB4: dw obj275E-RoomDrawObjectData ; 0x16 - Layer swap marker\n #_00CDB6: dw obj275E-RoomDrawObjectData ; 0x18 - Double sided shutter door\n #_00CDB8: dw obj2776-RoomDrawObjectData ; 0x1A - Eye watch door\n #_00CDBA: dw obj278E-RoomDrawObjectData ; 0x1C - Small key door\n #_00CDBC: dw obj27A6-RoomDrawObjectData ; 0x1E - Big key door\n #_00CDBE: dw obj27BE-RoomDrawObjectData ; 0x20 - Small key stairs (upwards)\n #_00CDC0: dw obj27BE-RoomDrawObjectData ; 0x22 - Small key stairs (downwards)\n #_00CDC2: dw obj27D6-RoomDrawObjectData ; 0x24 - Small key stairs (lower layer; upwards)\n #_00CDC4: dw obj27D6-RoomDrawObjectData ; 0x26 - Small key stairs (lower layer; downwards)\n #_00CDC6: dw obj27EE-RoomDrawObjectData ; 0x28 - Dash wall\n #_00CDC8: dw obj2806-RoomDrawObjectData ; 0x2A - Bombable cave exit\n #_00CDCA: dw obj2806-RoomDrawObjectData ; 0x2C - Unopenable, double-sided big key door\n #_00CDCC: dw obj281E-RoomDrawObjectData ; 0x2E - Bombable door\n #_00CDCE: dw obj2836-RoomDrawObjectData ; 0x30 - Exploding wall\n #_00CDD0: dw obj2836-RoomDrawObjectData ; 0x32 - Curtain door\n #_00CDD2: dw obj2836-RoomDrawObjectData ; 0x34 - Unusable bottom-sided shutter door\n #_00CDD4: dw obj2836-RoomDrawObjectData ; 0x36 - Bottom-sided shutter door\n #_00CDD6: dw obj284E-RoomDrawObjectData ; 0x38 - Top-sided shutter door\n #_00CDD8: dw obj2866-RoomDrawObjectData ; 0x3A - Unusable normal door (lower layer)\n #_00CDDA: dw obj2866-RoomDrawObjectData ; 0x3C - Unusable normal door (lower layer)\n #_00CDDC: dw obj2866-RoomDrawObjectData ; 0x3E - Unusable normal door (lower layer)\n #_00CDDE: dw obj2866-RoomDrawObjectData ; 0x40 - Normal door (lower layer; used with one-sided shutters)\n #_00CDE0: dw obj287E-RoomDrawObjectData ; 0x42 - Unused double-sided shutter\n #_00CDE2: dw obj2896-RoomDrawObjectData ; 0x44 - Double-sided shutter (lower layer)\n #_00CDE4: dw obj28AE-RoomDrawObjectData ; 0x46 - Explicit room door\n #_00CDE6: dw obj28C6-RoomDrawObjectData ; 0x48 - Bottom-sided shutter door (lower layer)\n #_00CDE8: dw obj28DE-RoomDrawObjectData ; 0x4A - Top-sided shutter door (lower layer)\n #_00CDEA: dw obj28F6-RoomDrawObjectData ; 0x4C - Unusable normal door (lower layer)\n #_00CDEC: dw obj28F6-RoomDrawObjectData ; 0x4E - Unusable normal door (lower layer)\n #_00CDEE: dw obj28F6-RoomDrawObjectData ; 0x50 - Unusable normal door (lower layer)\n #_00CDF0: dw obj290E-RoomDrawObjectData ; 0x52 - Unusable bombed-open door (lower layer)\n #_00CDF2: dw obj2926-RoomDrawObjectData ; 0x54 - Unusable glitchy door (lower layer)\n #_00CDF4: dw obj2958-RoomDrawObjectData ; 0x56 - Unusable glitchy door (lower layer)\n #_00CDF6: dw obj2978-RoomDrawObjectData ; 0x58 - Unusable normal door (lower layer)\n #_00CDF8: dw obj2990-RoomDrawObjectData ; 0x5A - Unusable glitchy/stairs up (lower layer)\n #_00CDFA: dw obj2990-RoomDrawObjectData ; 0x5C - Unusable glitchy/stairs up (lower layer)\n #_00CDFC: dw obj2990-RoomDrawObjectData ; 0x5E - Unusable glitchy/stairs up (lower layer)\n #_00CDFE: dw obj2990-RoomDrawObjectData ; 0x60 - Unusable glitchy/stairs up (lower layer)\n #_00CE00: dw obj29A8-RoomDrawObjectData ; 0x62 - Unusable glitchy/stairs down (lower layer)\n #_00CE02: dw obj29C0-RoomDrawObjectData ; 0x64 - Unusable glitchy/stairs up (lower layer)\n #_00CE04: dw obj29D8-RoomDrawObjectData ; 0x66 - Unusable glitchy/stairs down (lower layer)\n\n; ---------------------------------------------------------\n" + }, + { + "name": "DoorGFXDataOffset_South", + "code": "DoorGFXDataOffset_South:\n #_00CE06: dw obj29F0-RoomDrawObjectData\n #_00CE08: dw obj2A08-RoomDrawObjectData\n #_00CE0A: dw obj2A08-RoomDrawObjectData\n #_00CE0C: dw obj2A20-RoomDrawObjectData\n #_00CE0E: dw obj2A20-RoomDrawObjectData\n #_00CE10: dw obj2A20-RoomDrawObjectData\n #_00CE12: dw obj2A20-RoomDrawObjectData\n #_00CE14: dw obj2A20-RoomDrawObjectData\n #_00CE16: dw obj2A20-RoomDrawObjectData\n #_00CE18: dw obj2A38-RoomDrawObjectData\n #_00CE1A: dw obj2A38-RoomDrawObjectData\n #_00CE1C: dw obj2A38-RoomDrawObjectData\n #_00CE1E: dw obj2A38-RoomDrawObjectData\n #_00CE20: dw obj2A50-RoomDrawObjectData\n #_00CE22: dw obj2A68-RoomDrawObjectData\n #_00CE24: dw obj2A80-RoomDrawObjectData\n #_00CE26: dw obj2A98-RoomDrawObjectData\n #_00CE28: dw obj2A98-RoomDrawObjectData\n #_00CE2A: dw obj2A98-RoomDrawObjectData\n #_00CE2C: dw obj2A98-RoomDrawObjectData\n #_00CE2E: dw obj2A98-RoomDrawObjectData\n #_00CE30: dw obj2AB0-RoomDrawObjectData\n #_00CE32: dw obj2AC8-RoomDrawObjectData\n #_00CE34: dw obj2AE0-RoomDrawObjectData\n #_00CE36: dw obj2AF8-RoomDrawObjectData\n #_00CE38: dw obj2AF8-RoomDrawObjectData\n #_00CE3A: dw obj2AF8-RoomDrawObjectData\n #_00CE3C: dw obj2AF8-RoomDrawObjectData\n #_00CE3E: dw obj2B10-RoomDrawObjectData\n #_00CE40: dw obj2B28-RoomDrawObjectData\n #_00CE42: dw obj2B28-RoomDrawObjectData\n #_00CE44: dw obj2B28-RoomDrawObjectData\n #_00CE46: dw obj2B28-RoomDrawObjectData\n #_00CE48: dw obj2B40-RoomDrawObjectData\n #_00CE4A: dw obj2B58-RoomDrawObjectData\n #_00CE4C: dw obj2B70-RoomDrawObjectData\n #_00CE4E: dw obj2B88-RoomDrawObjectData\n #_00CE50: dw obj2BA0-RoomDrawObjectData\n #_00CE52: dw obj2BB8-RoomDrawObjectData\n #_00CE54: dw obj2BB8-RoomDrawObjectData\n #_00CE56: dw obj2BB8-RoomDrawObjectData\n #_00CE58: dw obj2BD0-RoomDrawObjectData\n #_00CE5A: dw obj2BE8-RoomDrawObjectData\n #_00CE5C: dw obj2C1A-RoomDrawObjectData\n #_00CE5E: dw obj2C3A-RoomDrawObjectData\n #_00CE60: dw obj2C52-RoomDrawObjectData\n #_00CE62: dw obj2C6A-RoomDrawObjectData\n #_00CE64: dw obj2C6A-RoomDrawObjectData\n\n; ---------------------------------------------------------\n" + }, + { + "name": "DoorGFXDataOffset_West", + "code": "DoorGFXDataOffset_West:\n #_00CE66: dw obj2C6A-RoomDrawObjectData\n #_00CE68: dw obj2C82-RoomDrawObjectData\n #_00CE6A: dw obj2C82-RoomDrawObjectData\n #_00CE6C: dw obj2C9A-RoomDrawObjectData\n #_00CE6E: dw obj2C9A-RoomDrawObjectData\n #_00CE70: dw obj2C9A-RoomDrawObjectData\n #_00CE72: dw obj2C9A-RoomDrawObjectData\n #_00CE74: dw obj2C9A-RoomDrawObjectData\n #_00CE76: dw obj2C9A-RoomDrawObjectData\n #_00CE78: dw obj2CB2-RoomDrawObjectData\n #_00CE7A: dw obj2CB2-RoomDrawObjectData\n #_00CE7C: dw obj2CB2-RoomDrawObjectData\n #_00CE7E: dw obj2CB2-RoomDrawObjectData\n #_00CE80: dw obj2CCA-RoomDrawObjectData\n #_00CE82: dw obj2CE2-RoomDrawObjectData\n #_00CE84: dw obj2CFA-RoomDrawObjectData\n #_00CE86: dw obj2CFA-RoomDrawObjectData\n #_00CE88: dw obj2CFA-RoomDrawObjectData\n #_00CE8A: dw obj2CFA-RoomDrawObjectData\n #_00CE8C: dw obj2CFA-RoomDrawObjectData\n #_00CE8E: dw obj2CFA-RoomDrawObjectData\n #_00CE90: dw obj2D12-RoomDrawObjectData\n #_00CE92: dw obj2D12-RoomDrawObjectData\n #_00CE94: dw obj2D2A-RoomDrawObjectData\n #_00CE96: dw obj2D42-RoomDrawObjectData\n #_00CE98: dw obj2D42-RoomDrawObjectData\n #_00CE9A: dw obj2D42-RoomDrawObjectData\n #_00CE9C: dw obj2D42-RoomDrawObjectData\n #_00CE9E: dw obj2D5A-RoomDrawObjectData\n #_00CEA0: dw obj2D72-RoomDrawObjectData\n #_00CEA2: dw obj2D72-RoomDrawObjectData\n #_00CEA4: dw obj2D72-RoomDrawObjectData\n #_00CEA6: dw obj2D72-RoomDrawObjectData\n #_00CEA8: dw obj2D8A-RoomDrawObjectData\n #_00CEAA: dw obj2DA2-RoomDrawObjectData\n #_00CEAC: dw obj2DBA-RoomDrawObjectData\n #_00CEAE: dw obj2DD2-RoomDrawObjectData\n #_00CEB0: dw obj2DEA-RoomDrawObjectData\n #_00CEB2: dw obj2E02-RoomDrawObjectData\n #_00CEB4: dw obj2E02-RoomDrawObjectData\n #_00CEB6: dw obj2E02-RoomDrawObjectData\n #_00CEB8: dw obj2E1A-RoomDrawObjectData\n #_00CEBA: dw obj2E32-RoomDrawObjectData\n #_00CEBC: dw obj2E32-RoomDrawObjectData\n #_00CEBE: dw obj2E52-RoomDrawObjectData\n #_00CEC0: dw obj2E6A-RoomDrawObjectData\n #_00CEC2: dw obj2E6A-RoomDrawObjectData\n #_00CEC4: dw obj2E6A-RoomDrawObjectData\n\n; ---------------------------------------------------------\n" + }, + { + "name": "DoorGFXDataOffset_East", + "code": "DoorGFXDataOffset_East:\n #_00CEC6: dw obj2E6A-RoomDrawObjectData\n #_00CEC8: dw obj2E82-RoomDrawObjectData\n #_00CECA: dw obj2E82-RoomDrawObjectData\n #_00CECC: dw obj2E9A-RoomDrawObjectData\n #_00CECE: dw obj2E9A-RoomDrawObjectData\n #_00CED0: dw obj2E9A-RoomDrawObjectData\n #_00CED2: dw obj2E9A-RoomDrawObjectData\n #_00CED4: dw obj2E9A-RoomDrawObjectData\n #_00CED6: dw obj2E9A-RoomDrawObjectData\n #_00CED8: dw obj2EB2-RoomDrawObjectData\n #_00CEDA: dw obj2EB2-RoomDrawObjectData\n #_00CEDC: dw obj2EB2-RoomDrawObjectData\n #_00CEDE: dw obj2EB2-RoomDrawObjectData\n #_00CEE0: dw obj2ECA-RoomDrawObjectData\n #_00CEE2: dw obj2EE2-RoomDrawObjectData\n #_00CEE4: dw obj2EFA-RoomDrawObjectData\n #_00CEE6: dw obj2EFA-RoomDrawObjectData\n #_00CEE8: dw obj2EFA-RoomDrawObjectData\n #_00CEEA: dw obj2EFA-RoomDrawObjectData\n #_00CEEC: dw obj2EFA-RoomDrawObjectData\n #_00CEEE: dw obj2EFA-RoomDrawObjectData\n #_00CEF0: dw obj2F12-RoomDrawObjectData\n #_00CEF2: dw obj2F12-RoomDrawObjectData\n #_00CEF4: dw obj2F2A-RoomDrawObjectData\n #_00CEF6: dw obj2F42-RoomDrawObjectData\n #_00CEF8: dw obj2F42-RoomDrawObjectData\n #_00CEFA: dw obj2F42-RoomDrawObjectData\n #_00CEFC: dw obj2F42-RoomDrawObjectData\n #_00CEFE: dw obj2F5A-RoomDrawObjectData\n #_00CF00: dw obj2F72-RoomDrawObjectData\n #_00CF02: dw obj2F72-RoomDrawObjectData\n #_00CF04: dw obj2F72-RoomDrawObjectData\n #_00CF06: dw obj2F72-RoomDrawObjectData\n #_00CF08: dw obj2F8A-RoomDrawObjectData\n #_00CF0A: dw obj2FA2-RoomDrawObjectData\n #_00CF0C: dw obj2FBA-RoomDrawObjectData\n #_00CF0E: dw obj2FD2-RoomDrawObjectData\n #_00CF10: dw obj2FEA-RoomDrawObjectData\n #_00CF12: dw obj3002-RoomDrawObjectData\n #_00CF14: dw obj3002-RoomDrawObjectData\n #_00CF16: dw obj3002-RoomDrawObjectData\n #_00CF18: dw obj301A-RoomDrawObjectData\n #_00CF1A: dw obj3032-RoomDrawObjectData\n #_00CF1C: dw obj3032-RoomDrawObjectData\n #_00CF1E: dw obj3052-RoomDrawObjectData\n #_00CF20: dw obj306A-RoomDrawObjectData\n #_00CF22: dw obj306A-RoomDrawObjectData\n\n; =========================================================\n" + }, + { + "name": "DoorAnimGFXDataOffset_North", + "code": "DoorAnimGFXDataOffset_North:\n #_00CF24: dw obj306A-RoomDrawObjectData ; Lower layer shutter\n #_00CF26: dw obj306A-RoomDrawObjectData ; Key doors\n #_00CF28: dw obj3082-RoomDrawObjectData ; Shutters\n #_00CF2A: dw obj309A-RoomDrawObjectData ; Lower layer key door\n" + }, + { + "name": "DoorAnimGFXDataOffset_South", + "code": "DoorAnimGFXDataOffset_South:\n #_00CF2C: dw obj30B2-RoomDrawObjectData ; Lower layer shutter\n #_00CF2E: dw obj30CA-RoomDrawObjectData ; Key doors\n #_00CF30: dw obj30E2-RoomDrawObjectData ; Shutters\n #_00CF32: dw obj30FA-RoomDrawObjectData ; Lower layer key door\n" + }, + { + "name": "DoorAnimGFXDataOffset_West", + "code": "DoorAnimGFXDataOffset_West:\n #_00CF34: dw obj3112-RoomDrawObjectData ; Lower layer shutter\n #_00CF36: dw obj312A-RoomDrawObjectData ; Key doors\n #_00CF38: dw obj3142-RoomDrawObjectData ; Shutters\n #_00CF3A: dw obj315A-RoomDrawObjectData ; Lower layer key door\n" + }, + { + "name": "DoorAnimGFXDataOffset_East", + "code": "DoorAnimGFXDataOffset_East:\n #_00CF3C: dw obj3172-RoomDrawObjectData ; Lower layer shutter\n #_00CF3E: dw obj318A-RoomDrawObjectData ; Key doors\n #_00CF40: dw obj31A2-RoomDrawObjectData ; Shutters\n #_00CF42: dw obj31BA-RoomDrawObjectData ; Lower layer key door\n #_00CF44: dw obj31D2-RoomDrawObjectData ; Unused cool looking shutter\n\n; =========================================================\n; FREE ROM: 0x3A\n; =========================================================" + }, + { + "name": "NULL_00CF46", + "code": "NULL_00CF46:\n #_00CF46: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF4E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF56: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF5E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF66: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF6E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF76: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF7E: db $FF, $FF\n\n; =========================================================\n" + }, + { + "name": "GFXSheetPointers", + "code": "GFXSheetPointers:\n\n.background_bank\n #_00CF80: db GFX_00>>16\n #_00CF81: db GFX_01>>16\n #_00CF82: db GFX_02>>16\n #_00CF83: db GFX_03>>16\n #_00CF84: db GFX_04>>16\n #_00CF85: db GFX_05>>16\n #_00CF86: db GFX_06>>16\n #_00CF87: db GFX_07>>16\n #_00CF88: db GFX_08>>16\n #_00CF89: db GFX_09>>16\n #_00CF8A: db GFX_0A>>16\n #_00CF8B: db GFX_0B>>16\n #_00CF8C: db GFX_0C>>16\n #_00CF8D: db GFX_0D>>16\n #_00CF8E: db GFX_0E>>16\n #_00CF8F: db GFX_0F>>16\n #_00CF90: db GFX_10>>16\n #_00CF91: db GFX_11>>16\n #_00CF92: db GFX_12>>16\n #_00CF93: db GFX_13>>16\n #_00CF94: db GFX_14>>16\n #_00CF95: db GFX_15>>16\n #_00CF96: db GFX_16>>16\n #_00CF97: db GFX_17>>16\n #_00CF98: db GFX_18>>16\n #_00CF99: db GFX_19>>16\n #_00CF9A: db GFX_1A>>16\n #_00CF9B: db GFX_1B>>16\n #_00CF9C: db GFX_1C>>16\n #_00CF9D: db GFX_1D>>16\n #_00CF9E: db GFX_1E>>16\n #_00CF9F: db GFX_1F>>16\n #_00CFA0: db GFX_20>>16\n #_00CFA1: db GFX_21>>16\n #_00CFA2: db GFX_22>>16\n #_00CFA3: db GFX_23>>16\n #_00CFA4: db GFX_24>>16\n #_00CFA5: db GFX_25>>16\n #_00CFA6: db GFX_26>>16\n #_00CFA7: db GFX_27>>16\n #_00CFA8: db GFX_28>>16\n #_00CFA9: db GFX_29>>16\n #_00CFAA: db GFX_2A>>16\n #_00CFAB: db GFX_2B>>16\n #_00CFAC: db GFX_2C>>16\n #_00CFAD: db GFX_2D>>16\n #_00CFAE: db GFX_2E>>16\n #_00CFAF: db GFX_2F>>16\n #_00CFB0: db GFX_30>>16\n #_00CFB1: db GFX_31>>16\n #_00CFB2: db GFX_32>>16\n #_00CFB3: db GFX_33>>16\n #_00CFB4: db GFX_34>>16\n #_00CFB5: db GFX_35>>16\n #_00CFB6: db GFX_36>>16\n #_00CFB7: db GFX_37>>16\n #_00CFB8: db GFX_38>>16\n #_00CFB9: db GFX_39>>16\n #_00CFBA: db GFX_3A>>16\n #_00CFBB: db GFX_3B>>16\n #_00CFBC: db GFX_3C>>16\n #_00CFBD: db GFX_3D>>16\n #_00CFBE: db GFX_3E>>16\n #_00CFBF: db GFX_3F>>16\n #_00CFC0: db GFX_40>>16\n #_00CFC1: db GFX_41>>16\n #_00CFC2: db GFX_42>>16\n #_00CFC3: db GFX_43>>16\n #_00CFC4: db GFX_44>>16\n #_00CFC5: db GFX_45>>16\n #_00CFC6: db GFX_46>>16\n #_00CFC7: db GFX_47>>16\n #_00CFC8: db GFX_48>>16\n #_00CFC9: db GFX_49>>16\n #_00CFCA: db GFX_4A>>16\n #_00CFCB: db GFX_4B>>16\n #_00CFCC: db GFX_4C>>16\n #_00CFCD: db GFX_4D>>16\n #_00CFCE: db GFX_4E>>16\n #_00CFCF: db GFX_4F>>16\n #_00CFD0: db GFX_50>>16\n #_00CFD1: db GFX_51>>16\n #_00CFD2: db GFX_52>>16\n #_00CFD3: db GFX_53>>16\n #_00CFD4: db GFX_54>>16\n #_00CFD5: db GFX_55>>16\n #_00CFD6: db GFX_56>>16\n #_00CFD7: db GFX_57>>16\n #_00CFD8: db GFX_58>>16\n #_00CFD9: db GFX_59>>16\n #_00CFDA: db GFX_5A>>16\n #_00CFDB: db GFX_5B>>16\n #_00CFDC: db GFX_5C>>16\n #_00CFDD: db GFX_5D>>16\n #_00CFDE: db GFX_5E>>16\n #_00CFDF: db GFX_5F>>16\n #_00CFE0: db GFX_60>>16\n #_00CFE1: db GFX_61>>16\n #_00CFE2: db GFX_62>>16\n #_00CFE3: db GFX_63>>16\n #_00CFE4: db GFX_64>>16\n #_00CFE5: db GFX_65>>16\n #_00CFE6: db GFX_66>>16\n #_00CFE7: db GFX_67>>16\n #_00CFE8: db GFX_68>>16\n #_00CFE9: db GFX_69>>16\n #_00CFEA: db GFX_6A>>16\n #_00CFEB: db GFX_6B>>16\n #_00CFEC: db GFX_6C>>16\n #_00CFED: db GFX_6D>>16\n #_00CFEE: db GFX_6E>>16\n #_00CFEF: db GFX_6F>>16\n #_00CFF0: db GFX_70>>16\n #_00CFF1: db GFX_DD>>16\n #_00CFF2: db GFX_DE>>16\n\n; ---------------------------------------------------------\n\n.sprite_bank\n #_00CFF3: db GFX_73>>16 ; 0x00\n #_00CFF4: db GFX_74>>16 ; 0x01\n #_00CFF5: db GFX_75>>16 ; 0x02\n #_00CFF6: db GFX_76>>16 ; 0x03\n #_00CFF7: db GFX_77>>16 ; 0x04\n #_00CFF8: db GFX_78>>16 ; 0x05\n #_00CFF9: db GFX_79>>16 ; 0x06\n #_00CFFA: db GFX_7A>>16 ; 0x07\n #_00CFFB: db GFX_7B>>16 ; 0x08\n #_00CFFC: db GFX_7C>>16 ; 0x09\n #_00CFFD: db GFX_7D>>16 ; 0x0A\n #_00CFFE: db GFX_7E>>16 ; 0x0B\n #_00CFFF: db GFX_7F>>16 ; 0x0C\n #_00D000: db GFX_80>>16 ; 0x0D\n #_00D001: db GFX_81>>16 ; 0x0E\n #_00D002: db GFX_82>>16 ; 0x0F\n #_00D003: db GFX_83>>16 ; 0x10\n #_00D004: db GFX_84>>16 ; 0x11\n #_00D005: db GFX_85>>16 ; 0x12\n #_00D006: db GFX_86>>16 ; 0x13\n #_00D007: db GFX_87>>16 ; 0x14\n #_00D008: db GFX_88>>16 ; 0x15\n #_00D009: db GFX_89>>16 ; 0x16\n #_00D00A: db GFX_8A>>16 ; 0x17\n #_00D00B: db GFX_8B>>16 ; 0x18\n #_00D00C: db GFX_8C>>16 ; 0x19\n #_00D00D: db GFX_8D>>16 ; 0x1A\n #_00D00E: db GFX_8E>>16 ; 0x1B\n #_00D00F: db GFX_8F>>16 ; 0x1C\n #_00D010: db GFX_90>>16 ; 0x1D\n #_00D011: db GFX_91>>16 ; 0x1E\n #_00D012: db GFX_92>>16 ; 0x1F\n #_00D013: db GFX_93>>16 ; 0x20\n #_00D014: db GFX_94>>16 ; 0x21\n #_00D015: db GFX_95>>16 ; 0x22\n #_00D016: db GFX_96>>16 ; 0x23\n #_00D017: db GFX_97>>16 ; 0x24\n #_00D018: db GFX_98>>16 ; 0x25\n #_00D019: db GFX_99>>16 ; 0x26\n #_00D01A: db GFX_9A>>16 ; 0x27\n #_00D01B: db GFX_9B>>16 ; 0x28\n #_00D01C: db GFX_9C>>16 ; 0x29\n #_00D01D: db GFX_9D>>16 ; 0x2A\n #_00D01E: db GFX_9E>>16 ; 0x2B\n #_00D01F: db GFX_9F>>16 ; 0x2C\n #_00D020: db GFX_A0>>16 ; 0x2D\n #_00D021: db GFX_A1>>16 ; 0x2E\n #_00D022: db GFX_A2>>16 ; 0x2F\n #_00D023: db GFX_A3>>16 ; 0x30\n #_00D024: db GFX_A4>>16 ; 0x31\n #_00D025: db GFX_A5>>16 ; 0x32\n #_00D026: db GFX_A6>>16 ; 0x33\n #_00D027: db GFX_A7>>16 ; 0x34\n #_00D028: db GFX_A8>>16 ; 0x35\n #_00D029: db GFX_A9>>16 ; 0x36\n #_00D02A: db GFX_AA>>16 ; 0x37\n #_00D02B: db GFX_AB>>16 ; 0x38\n #_00D02C: db GFX_AC>>16 ; 0x39\n #_00D02D: db GFX_AD>>16 ; 0x3A\n #_00D02E: db GFX_AE>>16 ; 0x3B\n #_00D02F: db GFX_AF>>16 ; 0x3C\n #_00D030: db GFX_B0>>16 ; 0x3D\n #_00D031: db GFX_B1>>16 ; 0x3E\n #_00D032: db GFX_B2>>16 ; 0x3F\n #_00D033: db GFX_B3>>16 ; 0x40\n #_00D034: db GFX_B4>>16 ; 0x41\n #_00D035: db GFX_B5>>16 ; 0x42\n #_00D036: db GFX_B6>>16 ; 0x43\n #_00D037: db GFX_B7>>16 ; 0x44\n #_00D038: db GFX_B8>>16 ; 0x45\n #_00D039: db GFX_B9>>16 ; 0x46\n #_00D03A: db GFX_BA>>16 ; 0x47\n #_00D03B: db GFX_BB>>16 ; 0x48\n #_00D03C: db GFX_BC>>16 ; 0x49\n #_00D03D: db GFX_BD>>16 ; 0x4A\n #_00D03E: db GFX_BE>>16 ; 0x4B\n #_00D03F: db GFX_BF>>16 ; 0x4C\n #_00D040: db GFX_C0>>16 ; 0x4D\n #_00D041: db GFX_C1>>16 ; 0x4E\n #_00D042: db GFX_C2>>16 ; 0x4F\n #_00D043: db GFX_C3>>16 ; 0x50\n #_00D044: db GFX_C4>>16 ; 0x51\n #_00D045: db GFX_C5>>16 ; 0x52\n #_00D046: db GFX_C6>>16 ; 0x53\n #_00D047: db GFX_C7>>16 ; 0x54\n #_00D048: db GFX_C8>>16 ; 0x55\n #_00D049: db GFX_C9>>16 ; 0x56\n #_00D04A: db GFX_CA>>16 ; 0x57\n #_00D04B: db GFX_CB>>16 ; 0x58\n #_00D04C: db GFX_CC>>16 ; 0x59\n #_00D04D: db GFX_CD>>16 ; 0x5A\n #_00D04E: db GFX_CE>>16 ; 0x5B\n #_00D04F: db GFX_CF>>16 ; 0x5C\n #_00D050: db GFX_D0>>16 ; 0x5D\n #_00D051: db GFX_D1>>16 ; 0x5E\n #_00D052: db GFX_D2>>16 ; 0x5F\n #_00D053: db GFX_D3>>16 ; 0x60\n #_00D054: db GFX_D4>>16 ; 0x61\n #_00D055: db GFX_D5>>16 ; 0x62\n #_00D056: db GFX_D6>>16 ; 0x63\n #_00D057: db GFX_D7>>16 ; 0x64\n #_00D058: db GFX_D8>>16 ; 0x65\n #_00D059: db GFX_D9>>16 ; 0x66\n #_00D05A: db GFX_DA>>16 ; 0x67\n #_00D05B: db GFX_DB>>16 ; 0x68\n #_00D05C: db GFX_DC>>16 ; 0x69\n #_00D05D: db GFX_DD>>16 ; 0x6A\n #_00D05E: db GFX_DE>>16 ; 0x6B\n\n; ---------------------------------------------------------\n\n.background_high\n #_00D05F: db GFX_00>>8\n #_00D060: db GFX_01>>8\n #_00D061: db GFX_02>>8\n #_00D062: db GFX_03>>8\n #_00D063: db GFX_04>>8\n #_00D064: db GFX_05>>8\n #_00D065: db GFX_06>>8\n #_00D066: db GFX_07>>8\n #_00D067: db GFX_08>>8\n #_00D068: db GFX_09>>8\n #_00D069: db GFX_0A>>8\n #_00D06A: db GFX_0B>>8\n #_00D06B: db GFX_0C>>8\n #_00D06C: db GFX_0D>>8\n #_00D06D: db GFX_0E>>8\n #_00D06E: db GFX_0F>>8\n #_00D06F: db GFX_10>>8\n #_00D070: db GFX_11>>8\n #_00D071: db GFX_12>>8\n #_00D072: db GFX_13>>8\n #_00D073: db GFX_14>>8\n #_00D074: db GFX_15>>8\n #_00D075: db GFX_16>>8\n #_00D076: db GFX_17>>8\n #_00D077: db GFX_18>>8\n #_00D078: db GFX_19>>8\n #_00D079: db GFX_1A>>8\n #_00D07A: db GFX_1B>>8\n #_00D07B: db GFX_1C>>8\n #_00D07C: db GFX_1D>>8\n #_00D07D: db GFX_1E>>8\n #_00D07E: db GFX_1F>>8\n #_00D07F: db GFX_20>>8\n #_00D080: db GFX_21>>8\n #_00D081: db GFX_22>>8\n #_00D082: db GFX_23>>8\n #_00D083: db GFX_24>>8\n #_00D084: db GFX_25>>8\n #_00D085: db GFX_26>>8\n #_00D086: db GFX_27>>8\n #_00D087: db GFX_28>>8\n #_00D088: db GFX_29>>8\n #_00D089: db GFX_2A>>8\n #_00D08A: db GFX_2B>>8\n #_00D08B: db GFX_2C>>8\n #_00D08C: db GFX_2D>>8\n #_00D08D: db GFX_2E>>8\n #_00D08E: db GFX_2F>>8\n #_00D08F: db GFX_30>>8\n #_00D090: db GFX_31>>8\n #_00D091: db GFX_32>>8\n #_00D092: db GFX_33>>8\n #_00D093: db GFX_34>>8\n #_00D094: db GFX_35>>8\n #_00D095: db GFX_36>>8\n #_00D096: db GFX_37>>8\n #_00D097: db GFX_38>>8\n #_00D098: db GFX_39>>8\n #_00D099: db GFX_3A>>8\n #_00D09A: db GFX_3B>>8\n #_00D09B: db GFX_3C>>8\n #_00D09C: db GFX_3D>>8\n #_00D09D: db GFX_3E>>8\n #_00D09E: db GFX_3F>>8\n #_00D09F: db GFX_40>>8\n #_00D0A0: db GFX_41>>8\n #_00D0A1: db GFX_42>>8\n #_00D0A2: db GFX_43>>8\n #_00D0A3: db GFX_44>>8\n #_00D0A4: db GFX_45>>8\n #_00D0A5: db GFX_46>>8\n #_00D0A6: db GFX_47>>8\n #_00D0A7: db GFX_48>>8\n #_00D0A8: db GFX_49>>8\n #_00D0A9: db GFX_4A>>8\n #_00D0AA: db GFX_4B>>8\n #_00D0AB: db GFX_4C>>8\n #_00D0AC: db GFX_4D>>8\n #_00D0AD: db GFX_4E>>8\n #_00D0AE: db GFX_4F>>8\n #_00D0AF: db GFX_50>>8\n #_00D0B0: db GFX_51>>8\n #_00D0B1: db GFX_52>>8\n #_00D0B2: db GFX_53>>8\n #_00D0B3: db GFX_54>>8\n #_00D0B4: db GFX_55>>8\n #_00D0B5: db GFX_56>>8\n #_00D0B6: db GFX_57>>8\n #_00D0B7: db GFX_58>>8\n #_00D0B8: db GFX_59>>8\n #_00D0B9: db GFX_5A>>8\n #_00D0BA: db GFX_5B>>8\n #_00D0BB: db GFX_5C>>8\n #_00D0BC: db GFX_5D>>8\n #_00D0BD: db GFX_5E>>8\n #_00D0BE: db GFX_5F>>8\n #_00D0BF: db GFX_60>>8\n #_00D0C0: db GFX_61>>8\n #_00D0C1: db GFX_62>>8\n #_00D0C2: db GFX_63>>8\n #_00D0C3: db GFX_64>>8\n #_00D0C4: db GFX_65>>8\n #_00D0C5: db GFX_66>>8\n #_00D0C6: db GFX_67>>8\n #_00D0C7: db GFX_68>>8\n #_00D0C8: db GFX_69>>8\n #_00D0C9: db GFX_6A>>8\n #_00D0CA: db GFX_6B>>8\n #_00D0CB: db GFX_6C>>8\n #_00D0CC: db GFX_6D>>8\n #_00D0CD: db GFX_6E>>8\n #_00D0CE: db GFX_6F>>8\n #_00D0CF: db GFX_70>>8\n #_00D0D0: db GFX_DD>>8\n #_00D0D1: db GFX_DE>>8\n\n; ---------------------------------------------------------\n\n.sprite_high\n #_00D0D2: db GFX_73>>8 ; 0x00\n #_00D0D3: db GFX_74>>8 ; 0x01\n #_00D0D4: db GFX_75>>8 ; 0x02\n #_00D0D5: db GFX_76>>8 ; 0x03\n #_00D0D6: db GFX_77>>8 ; 0x04\n #_00D0D7: db GFX_78>>8 ; 0x05\n #_00D0D8: db GFX_79>>8 ; 0x06\n #_00D0D9: db GFX_7A>>8 ; 0x07\n #_00D0DA: db GFX_7B>>8 ; 0x08\n #_00D0DB: db GFX_7C>>8 ; 0x09\n #_00D0DC: db GFX_7D>>8 ; 0x0A\n #_00D0DD: db GFX_7E>>8 ; 0x0B\n #_00D0DE: db GFX_7F>>8 ; 0x0C\n #_00D0DF: db GFX_80>>8 ; 0x0D\n #_00D0E0: db GFX_81>>8 ; 0x0E\n #_00D0E1: db GFX_82>>8 ; 0x0F\n #_00D0E2: db GFX_83>>8 ; 0x10\n #_00D0E3: db GFX_84>>8 ; 0x11\n #_00D0E4: db GFX_85>>8 ; 0x12\n #_00D0E5: db GFX_86>>8 ; 0x13\n #_00D0E6: db GFX_87>>8 ; 0x14\n #_00D0E7: db GFX_88>>8 ; 0x15\n #_00D0E8: db GFX_89>>8 ; 0x16\n #_00D0E9: db GFX_8A>>8 ; 0x17\n #_00D0EA: db GFX_8B>>8 ; 0x18\n #_00D0EB: db GFX_8C>>8 ; 0x19\n #_00D0EC: db GFX_8D>>8 ; 0x1A\n #_00D0ED: db GFX_8E>>8 ; 0x1B\n #_00D0EE: db GFX_8F>>8 ; 0x1C\n #_00D0EF: db GFX_90>>8 ; 0x1D\n #_00D0F0: db GFX_91>>8 ; 0x1E\n #_00D0F1: db GFX_92>>8 ; 0x1F\n #_00D0F2: db GFX_93>>8 ; 0x20\n #_00D0F3: db GFX_94>>8 ; 0x21\n #_00D0F4: db GFX_95>>8 ; 0x22\n #_00D0F5: db GFX_96>>8 ; 0x23\n #_00D0F6: db GFX_97>>8 ; 0x24\n #_00D0F7: db GFX_98>>8 ; 0x25\n #_00D0F8: db GFX_99>>8 ; 0x26\n #_00D0F9: db GFX_9A>>8 ; 0x27\n #_00D0FA: db GFX_9B>>8 ; 0x28\n #_00D0FB: db GFX_9C>>8 ; 0x29\n #_00D0FC: db GFX_9D>>8 ; 0x2A\n #_00D0FD: db GFX_9E>>8 ; 0x2B\n #_00D0FE: db GFX_9F>>8 ; 0x2C\n #_00D0FF: db GFX_A0>>8 ; 0x2D\n #_00D100: db GFX_A1>>8 ; 0x2E\n #_00D101: db GFX_A2>>8 ; 0x2F\n #_00D102: db GFX_A3>>8 ; 0x30\n #_00D103: db GFX_A4>>8 ; 0x31\n #_00D104: db GFX_A5>>8 ; 0x32\n #_00D105: db GFX_A6>>8 ; 0x33\n #_00D106: db GFX_A7>>8 ; 0x34\n #_00D107: db GFX_A8>>8 ; 0x35\n #_00D108: db GFX_A9>>8 ; 0x36\n #_00D109: db GFX_AA>>8 ; 0x37\n #_00D10A: db GFX_AB>>8 ; 0x38\n #_00D10B: db GFX_AC>>8 ; 0x39\n #_00D10C: db GFX_AD>>8 ; 0x3A\n #_00D10D: db GFX_AE>>8 ; 0x3B\n #_00D10E: db GFX_AF>>8 ; 0x3C\n #_00D10F: db GFX_B0>>8 ; 0x3D\n #_00D110: db GFX_B1>>8 ; 0x3E\n #_00D111: db GFX_B2>>8 ; 0x3F\n #_00D112: db GFX_B3>>8 ; 0x40\n #_00D113: db GFX_B4>>8 ; 0x41\n #_00D114: db GFX_B5>>8 ; 0x42\n #_00D115: db GFX_B6>>8 ; 0x43\n #_00D116: db GFX_B7>>8 ; 0x44\n #_00D117: db GFX_B8>>8 ; 0x45\n #_00D118: db GFX_B9>>8 ; 0x46\n #_00D119: db GFX_BA>>8 ; 0x47\n #_00D11A: db GFX_BB>>8 ; 0x48\n #_00D11B: db GFX_BC>>8 ; 0x49\n #_00D11C: db GFX_BD>>8 ; 0x4A\n #_00D11D: db GFX_BE>>8 ; 0x4B\n #_00D11E: db GFX_BF>>8 ; 0x4C\n #_00D11F: db GFX_C0>>8 ; 0x4D\n #_00D120: db GFX_C1>>8 ; 0x4E\n #_00D121: db GFX_C2>>8 ; 0x4F\n #_00D122: db GFX_C3>>8 ; 0x50\n #_00D123: db GFX_C4>>8 ; 0x51\n #_00D124: db GFX_C5>>8 ; 0x52\n #_00D125: db GFX_C6>>8 ; 0x53\n #_00D126: db GFX_C7>>8 ; 0x54\n #_00D127: db GFX_C8>>8 ; 0x55\n #_00D128: db GFX_C9>>8 ; 0x56\n #_00D129: db GFX_CA>>8 ; 0x57\n #_00D12A: db GFX_CB>>8 ; 0x58\n #_00D12B: db GFX_CC>>8 ; 0x59\n #_00D12C: db GFX_CD>>8 ; 0x5A\n #_00D12D: db GFX_CE>>8 ; 0x5B\n #_00D12E: db GFX_CF>>8 ; 0x5C\n #_00D12F: db GFX_D0>>8 ; 0x5D\n #_00D130: db GFX_D1>>8 ; 0x5E\n #_00D131: db GFX_D2>>8 ; 0x5F\n #_00D132: db GFX_D3>>8 ; 0x60\n #_00D133: db GFX_D4>>8 ; 0x61\n #_00D134: db GFX_D5>>8 ; 0x62\n #_00D135: db GFX_D6>>8 ; 0x63\n #_00D136: db GFX_D7>>8 ; 0x64\n #_00D137: db GFX_D8>>8 ; 0x65\n #_00D138: db GFX_D9>>8 ; 0x66\n #_00D139: db GFX_DA>>8 ; 0x67\n #_00D13A: db GFX_DB>>8 ; 0x68\n #_00D13B: db GFX_DC>>8 ; 0x69\n #_00D13C: db GFX_DD>>8 ; 0x6A\n #_00D13D: db GFX_DE>>8 ; 0x6B\n\n; ---------------------------------------------------------\n\n.background_low\n #_00D13E: db GFX_00>>0\n #_00D13F: db GFX_01>>0\n #_00D140: db GFX_02>>0\n #_00D141: db GFX_03>>0\n #_00D142: db GFX_04>>0\n #_00D143: db GFX_05>>0\n #_00D144: db GFX_06>>0\n #_00D145: db GFX_07>>0\n #_00D146: db GFX_08>>0\n #_00D147: db GFX_09>>0\n #_00D148: db GFX_0A>>0\n #_00D149: db GFX_0B>>0\n #_00D14A: db GFX_0C>>0\n #_00D14B: db GFX_0D>>0\n #_00D14C: db GFX_0E>>0\n #_00D14D: db GFX_0F>>0\n #_00D14E: db GFX_10>>0\n #_00D14F: db GFX_11>>0\n #_00D150: db GFX_12>>0\n #_00D151: db GFX_13>>0\n #_00D152: db GFX_14>>0\n #_00D153: db GFX_15>>0\n #_00D154: db GFX_16>>0\n #_00D155: db GFX_17>>0\n #_00D156: db GFX_18>>0\n #_00D157: db GFX_19>>0\n #_00D158: db GFX_1A>>0\n #_00D159: db GFX_1B>>0\n #_00D15A: db GFX_1C>>0\n #_00D15B: db GFX_1D>>0\n #_00D15C: db GFX_1E>>0\n #_00D15D: db GFX_1F>>0\n #_00D15E: db GFX_20>>0\n #_00D15F: db GFX_21>>0\n #_00D160: db GFX_22>>0\n #_00D161: db GFX_23>>0\n #_00D162: db GFX_24>>0\n #_00D163: db GFX_25>>0\n #_00D164: db GFX_26>>0\n #_00D165: db GFX_27>>0\n #_00D166: db GFX_28>>0\n #_00D167: db GFX_29>>0\n #_00D168: db GFX_2A>>0\n #_00D169: db GFX_2B>>0\n #_00D16A: db GFX_2C>>0\n #_00D16B: db GFX_2D>>0\n #_00D16C: db GFX_2E>>0\n #_00D16D: db GFX_2F>>0\n #_00D16E: db GFX_30>>0\n #_00D16F: db GFX_31>>0\n #_00D170: db GFX_32>>0\n #_00D171: db GFX_33>>0\n #_00D172: db GFX_34>>0\n #_00D173: db GFX_35>>0\n #_00D174: db GFX_36>>0\n #_00D175: db GFX_37>>0\n #_00D176: db GFX_38>>0\n #_00D177: db GFX_39>>0\n #_00D178: db GFX_3A>>0\n #_00D179: db GFX_3B>>0\n #_00D17A: db GFX_3C>>0\n #_00D17B: db GFX_3D>>0\n #_00D17C: db GFX_3E>>0\n #_00D17D: db GFX_3F>>0\n #_00D17E: db GFX_40>>0\n #_00D17F: db GFX_41>>0\n #_00D180: db GFX_42>>0\n #_00D181: db GFX_43>>0\n #_00D182: db GFX_44>>0\n #_00D183: db GFX_45>>0\n #_00D184: db GFX_46>>0\n #_00D185: db GFX_47>>0\n #_00D186: db GFX_48>>0\n #_00D187: db GFX_49>>0\n #_00D188: db GFX_4A>>0\n #_00D189: db GFX_4B>>0\n #_00D18A: db GFX_4C>>0\n #_00D18B: db GFX_4D>>0\n #_00D18C: db GFX_4E>>0\n #_00D18D: db GFX_4F>>0\n #_00D18E: db GFX_50>>0\n #_00D18F: db GFX_51>>0\n #_00D190: db GFX_52>>0\n #_00D191: db GFX_53>>0\n #_00D192: db GFX_54>>0\n #_00D193: db GFX_55>>0\n #_00D194: db GFX_56>>0\n #_00D195: db GFX_57>>0\n #_00D196: db GFX_58>>0\n #_00D197: db GFX_59>>0\n #_00D198: db GFX_5A>>0\n #_00D199: db GFX_5B>>0\n #_00D19A: db GFX_5C>>0\n #_00D19B: db GFX_5D>>0\n #_00D19C: db GFX_5E>>0\n #_00D19D: db GFX_5F>>0\n #_00D19E: db GFX_60>>0\n #_00D19F: db GFX_61>>0\n #_00D1A0: db GFX_62>>0\n #_00D1A1: db GFX_63>>0\n #_00D1A2: db GFX_64>>0\n #_00D1A3: db GFX_65>>0\n #_00D1A4: db GFX_66>>0\n #_00D1A5: db GFX_67>>0\n #_00D1A6: db GFX_68>>0\n #_00D1A7: db GFX_69>>0\n #_00D1A8: db GFX_6A>>0\n #_00D1A9: db GFX_6B>>0\n #_00D1AA: db GFX_6C>>0\n #_00D1AB: db GFX_6D>>0\n #_00D1AC: db GFX_6E>>0\n #_00D1AD: db GFX_6F>>0\n #_00D1AE: db GFX_70>>0\n #_00D1AF: db GFX_DD>>0\n #_00D1B0: db GFX_DE>>0\n\n; ---------------------------------------------------------\n\n.sprite_low\n #_00D1B1: db GFX_73>>0 ; 0x00\n #_00D1B2: db GFX_74>>0 ; 0x01\n #_00D1B3: db GFX_75>>0 ; 0x02\n #_00D1B4: db GFX_76>>0 ; 0x03\n #_00D1B5: db GFX_77>>0 ; 0x04\n #_00D1B6: db GFX_78>>0 ; 0x05\n #_00D1B7: db GFX_79>>0 ; 0x06\n #_00D1B8: db GFX_7A>>0 ; 0x07\n #_00D1B9: db GFX_7B>>0 ; 0x08\n #_00D1BA: db GFX_7C>>0 ; 0x09\n #_00D1BB: db GFX_7D>>0 ; 0x0A\n #_00D1BC: db GFX_7E>>0 ; 0x0B\n #_00D1BD: db GFX_7F>>0 ; 0x0C\n #_00D1BE: db GFX_80>>0 ; 0x0D\n #_00D1BF: db GFX_81>>0 ; 0x0E\n #_00D1C0: db GFX_82>>0 ; 0x0F\n #_00D1C1: db GFX_83>>0 ; 0x10\n #_00D1C2: db GFX_84>>0 ; 0x11\n #_00D1C3: db GFX_85>>0 ; 0x12\n #_00D1C4: db GFX_86>>0 ; 0x13\n #_00D1C5: db GFX_87>>0 ; 0x14\n #_00D1C6: db GFX_88>>0 ; 0x15\n #_00D1C7: db GFX_89>>0 ; 0x16\n #_00D1C8: db GFX_8A>>0 ; 0x17\n #_00D1C9: db GFX_8B>>0 ; 0x18\n #_00D1CA: db GFX_8C>>0 ; 0x19\n #_00D1CB: db GFX_8D>>0 ; 0x1A\n #_00D1CC: db GFX_8E>>0 ; 0x1B\n #_00D1CD: db GFX_8F>>0 ; 0x1C\n #_00D1CE: db GFX_90>>0 ; 0x1D\n #_00D1CF: db GFX_91>>0 ; 0x1E\n #_00D1D0: db GFX_92>>0 ; 0x1F\n #_00D1D1: db GFX_93>>0 ; 0x20\n #_00D1D2: db GFX_94>>0 ; 0x21\n #_00D1D3: db GFX_95>>0 ; 0x22\n #_00D1D4: db GFX_96>>0 ; 0x23\n #_00D1D5: db GFX_97>>0 ; 0x24\n #_00D1D6: db GFX_98>>0 ; 0x25\n #_00D1D7: db GFX_99>>0 ; 0x26\n #_00D1D8: db GFX_9A>>0 ; 0x27\n #_00D1D9: db GFX_9B>>0 ; 0x28\n #_00D1DA: db GFX_9C>>0 ; 0x29\n #_00D1DB: db GFX_9D>>0 ; 0x2A\n #_00D1DC: db GFX_9E>>0 ; 0x2B\n #_00D1DD: db GFX_9F>>0 ; 0x2C\n #_00D1DE: db GFX_A0>>0 ; 0x2D\n #_00D1DF: db GFX_A1>>0 ; 0x2E\n #_00D1E0: db GFX_A2>>0 ; 0x2F\n #_00D1E1: db GFX_A3>>0 ; 0x30\n #_00D1E2: db GFX_A4>>0 ; 0x31\n #_00D1E3: db GFX_A5>>0 ; 0x32\n #_00D1E4: db GFX_A6>>0 ; 0x33\n #_00D1E5: db GFX_A7>>0 ; 0x34\n #_00D1E6: db GFX_A8>>0 ; 0x35\n #_00D1E7: db GFX_A9>>0 ; 0x36\n #_00D1E8: db GFX_AA>>0 ; 0x37\n #_00D1E9: db GFX_AB>>0 ; 0x38\n #_00D1EA: db GFX_AC>>0 ; 0x39\n #_00D1EB: db GFX_AD>>0 ; 0x3A\n #_00D1EC: db GFX_AE>>0 ; 0x3B\n #_00D1ED: db GFX_AF>>0 ; 0x3C\n #_00D1EE: db GFX_B0>>0 ; 0x3D\n #_00D1EF: db GFX_B1>>0 ; 0x3E\n #_00D1F0: db GFX_B2>>0 ; 0x3F\n #_00D1F1: db GFX_B3>>0 ; 0x40\n #_00D1F2: db GFX_B4>>0 ; 0x41\n #_00D1F3: db GFX_B5>>0 ; 0x42\n #_00D1F4: db GFX_B6>>0 ; 0x43\n #_00D1F5: db GFX_B7>>0 ; 0x44\n #_00D1F6: db GFX_B8>>0 ; 0x45\n #_00D1F7: db GFX_B9>>0 ; 0x46\n #_00D1F8: db GFX_BA>>0 ; 0x47\n #_00D1F9: db GFX_BB>>0 ; 0x48\n #_00D1FA: db GFX_BC>>0 ; 0x49\n #_00D1FB: db GFX_BD>>0 ; 0x4A\n #_00D1FC: db GFX_BE>>0 ; 0x4B\n #_00D1FD: db GFX_BF>>0 ; 0x4C\n #_00D1FE: db GFX_C0>>0 ; 0x4D\n #_00D1FF: db GFX_C1>>0 ; 0x4E\n #_00D200: db GFX_C2>>0 ; 0x4F\n #_00D201: db GFX_C3>>0 ; 0x50\n #_00D202: db GFX_C4>>0 ; 0x51\n #_00D203: db GFX_C5>>0 ; 0x52\n #_00D204: db GFX_C6>>0 ; 0x53\n #_00D205: db GFX_C7>>0 ; 0x54\n #_00D206: db GFX_C8>>0 ; 0x55\n #_00D207: db GFX_C9>>0 ; 0x56\n #_00D208: db GFX_CA>>0 ; 0x57\n #_00D209: db GFX_CB>>0 ; 0x58\n #_00D20A: db GFX_CC>>0 ; 0x59\n #_00D20B: db GFX_CD>>0 ; 0x5A\n #_00D20C: db GFX_CE>>0 ; 0x5B\n #_00D20D: db GFX_CF>>0 ; 0x5C\n #_00D20E: db GFX_D0>>0 ; 0x5D\n #_00D20F: db GFX_D1>>0 ; 0x5E\n #_00D210: db GFX_D2>>0 ; 0x5F\n #_00D211: db GFX_D3>>0 ; 0x60\n #_00D212: db GFX_D4>>0 ; 0x61\n #_00D213: db GFX_D5>>0 ; 0x62\n #_00D214: db GFX_D6>>0 ; 0x63\n #_00D215: db GFX_D7>>0 ; 0x64\n #_00D216: db GFX_D8>>0 ; 0x65\n #_00D217: db GFX_D9>>0 ; 0x66\n #_00D218: db GFX_DA>>0 ; 0x67\n #_00D219: db GFX_DB>>0 ; 0x68\n #_00D21A: db GFX_DC>>0 ; 0x69\n #_00D21B: db GFX_DD>>0 ; 0x6A\n #_00D21C: db GFX_DE>>0 ; 0x6B\n\n; =========================================================\n\npool LoadItemGFX\n\n.offset\n #_00D21D: dw $0000 ; rods\n #_00D21F: dw $0108 ; hammer\n #_00D221: dw $00C0 ; bow\n #_00D223: dw $0390 ; shovel\n #_00D225: dw $03F0 ; Zzz \u266a\n #_00D227: dw $0438 ; powder dust\n #_00D229: dw $0330 ; hookshot\n #_00D22B: dw $0048 ; net\n #_00D22D: dw $0318 ; cane\n #_00D22F: dw $0450 ; book\n\npool off\n\n; =========================================================\n" + }, + { + "name": "LoadItemGFXIntoWRAM4BPPBuffer", + "code": "LoadItemGFXIntoWRAM4BPPBuffer:\n #_00D231: PHB\n #_00D232: PHK\n #_00D233: PLB\n\n #_00D234: REP #$20\n\n #_00D236: STZ.b $0A\n #_00D238: STZ.b $0C\n\n #_00D23A: LDA.w #$0480\n #_00D23D: STA.b $06\n\n #_00D23F: SEP #$20\n\n #_00D241: LDA.b #$07\n #_00D243: JSR LoadItemGFX_sheet0\n\n #_00D246: LDA.b #$07\n #_00D248: JSR LoadItemGFX_sheet0\n\n #_00D24B: LDA.b #$03\n #_00D24D: JSR LoadItemGFX_sheet0\n\n #_00D250: LDY.b #$5F\n #_00D252: LDA.b #$04\n #_00D254: JSR LoadItemGFX_arbitrary_sheet\n\n #_00D257: LDA.b #$03\n #_00D259: JSR LoadItemGFX_current_sheet\n\n #_00D25C: LDA.b #$01\n #_00D25E: JSR LoadItemGFX_current_sheet\n\n #_00D261: LDA.b #$04\n #_00D263: JSR LoadItemGFX_sheet0\n\n #_00D266: LDY.b #$60\n #_00D268: LDA.b #$0E\n #_00D26A: JSR LoadItemGFX_arbitrary_sheet\n\n #_00D26D: LDA.b #$07\n #_00D26F: JSR LoadItemGFX_current_sheet\n\n #_00D272: LDY.b #$5F\n #_00D274: LDA.b #$02\n #_00D276: JSR LoadItemGFX_arbitrary_sheet\n\n; ---------------------------------------------------------\n\n #_00D279: LDY.b #$54\n #_00D27B: JSR Decompress_sprite_low\n\n #_00D27E: REP #$30\n\n #_00D280: LDA.b $00\n\n #_00D282: LDX.w #$1480\n\n #_00D285: PHA\n\n #_00D286: LDY.w #$0008\n #_00D289: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D28C: PLA\n #_00D28D: CLC\n #_00D28E: ADC.w #$0180\n\n #_00D291: LDY.w #$0008\n #_00D294: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D297: SEP #$30\n\n #_00D299: LDY.b #$60\n #_00D29B: JSR Decompress_sprite_low\n\n #_00D29E: REP #$30\n\n #_00D2A0: LDA.b $00\n #_00D2A2: LDX.w #$2280\n #_00D2A5: LDY.w #$0003\n\n #_00D2A8: PHA\n\n #_00D2A9: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2AC: PLA\n #_00D2AD: CLC\n #_00D2AE: ADC.w #$0180\n\n #_00D2B1: LDY.w #$0003\n #_00D2B4: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2B7: SEP #$30\n\n #_00D2B9: JSR LoadItemGFX_Auxiliary\n\n #_00D2BC: PLB\n\n #_00D2BD: RTL" + }, + { + "name": "DecompressSwordGraphics", + "code": "DecompressSwordGraphics:\n #_00D2C8: PHB\n #_00D2C9: PHK\n #_00D2CA: PLB\n\n #_00D2CB: LDY.b #$5F\n #_00D2CD: JSR Decompress_sprite_high\n\n #_00D2D0: LDY.b #$5E\n #_00D2D2: JSR Decompress_sprite_low\n\n #_00D2D5: REP #$21\n\n #_00D2D7: LDA.l $7EF359\n #_00D2DB: AND.w #$00FF\n #_00D2DE: ASL A\n #_00D2DF: TAY\n\n #_00D2E0: LDA.b $00\n #_00D2E2: ADC.w .offset,Y\n\n #_00D2E5: REP #$10\n\n #_00D2E7: LDX.w #$0000\n #_00D2EA: LDY.w #$000C\n\n #_00D2ED: PHA\n\n #_00D2EE: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2F1: PLA\n #_00D2F2: CLC\n #_00D2F3: ADC.w #$0180\n\n #_00D2F6: LDY.w #$000C\n #_00D2F9: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2FC: SEP #$30\n\n #_00D2FE: PLB\n\n #_00D2FF: RTL" + }, + { + "name": "DecompressShieldGraphics", + "code": "DecompressShieldGraphics:\n #_00D308: PHB\n #_00D309: PHK\n #_00D30A: PLB\n\n #_00D30B: LDY.b #$5F\n #_00D30D: JSR Decompress_sprite_high\n\n #_00D310: LDY.b #$5E\n #_00D312: JSR Decompress_sprite_low\n\n #_00D315: REP #$21\n\n #_00D317: LDA.l $7EF35A\n #_00D31B: ASL A\n #_00D31C: TAY\n\n #_00D31D: LDA.b $00\n #_00D31F: ADC.w .offset,Y\n\n #_00D322: REP #$10\n\n #_00D324: LDX.w #$0300\n\n #_00D327: PHA\n\n #_00D328: JSR Do3bppToWRAM4bpp_RightPal\n\n #_00D32B: PLA\n #_00D32C: CLC\n #_00D32D: ADC.w #$0180\n #_00D330: JSR Do3bppToWRAM4bpp_RightPal\n\n #_00D333: SEP #$30\n\n #_00D335: PLB\n\n #_00D336: RTL" + }, + { + "name": "DecompressAnimatedUnderworldTiles", + "code": "DecompressAnimatedUnderworldTiles:\n #_00D337: PHB\n #_00D338: PHK\n #_00D339: PLB\n\n #_00D33A: JSR Decompress_background_low\n\n #_00D33D: REP #$30\n\n #_00D33F: LDA.b $00\n #_00D341: LDY.w #$0030\n #_00D344: LDX.w #$1680\n #_00D347: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D34A: SEP #$30\n\n #_00D34C: LDY.b #$5C\n #_00D34E: JSR Decompress_background_low\n\n #_00D351: REP #$30\n\n #_00D353: LDA.b $00\n #_00D355: LDY.w #$0030\n #_00D358: LDX.w #$1C80\n #_00D35B: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D35E: LDX.w #$0000\n\n.next_tile_frame\n #_00D361: LDA.l $7EA880,X\n #_00D365: PHA\n\n #_00D366: LDA.l $7EAC80,X\n #_00D36A: STA.l $7EA880,X\n\n #_00D36E: LDA.l $7EAE80,X\n #_00D372: STA.l $7EAC80,X\n\n #_00D376: LDA.l $7EAA80,X\n #_00D37A: STA.l $7EAE80,X\n\n #_00D37E: PLA\n #_00D37F: STA.l $7EAA80,X\n\n #_00D383: INX\n #_00D384: INX\n #_00D385: CPX.w #$0200\n #_00D388: BNE .next_tile_frame\n\n; ---------------------------------------------------------\n\n #_00D38A: LDA.w #$3B00 ; VRAM $7600\n #_00D38D: STA.w $0134\n\n #_00D390: SEP #$30\n\n #_00D392: PLB\n\n #_00D393: RTL" + }, + { + "name": "DecompressAnimatedOverworldTiles", + "code": "DecompressAnimatedOverworldTiles:\n #_00D394: PHB\n #_00D395: PHK\n #_00D396: PLB\n\n #_00D397: PHY\n\n #_00D398: JSR Decompress_background_low\n\n #_00D39B: REP #$30\n\n #_00D39D: LDA.b $00\n #_00D39F: LDY.w #$0040\n #_00D3A2: LDX.w #$1680\n #_00D3A5: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3A8: SEP #$30\n\n #_00D3AA: PLY\n #_00D3AB: INY\n\n #_00D3AC: JSR Decompress_background_low\n\n #_00D3AF: REP #$30\n\n #_00D3B1: LDA.b $00\n #_00D3B3: LDY.w #$0020\n #_00D3B6: LDX.w #$1E80\n #_00D3B9: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3BC: LDA.w #$3C00 ; VRAM $7800\n #_00D3BF: STA.w $0134\n\n #_00D3C2: SEP #$30\n\n #_00D3C4: PLB\n\n #_00D3C5: RTL" + }, + { + "name": "LoadItemGFX_Auxiliary", + "code": "LoadItemGFX_Auxiliary:\n #_00D3C6: LDY.b #$0F\n #_00D3C8: JSR Decompress_background_low\n\n #_00D3CB: REP #$30\n\n #_00D3CD: LDA.b $00\n #_00D3CF: LDY.w #$0010\n #_00D3D2: LDX.w #$2340\n\n #_00D3D5: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3D8: SEP #$30\n\n #_00D3DA: LDY.b #$58\n #_00D3DC: JSR Decompress_sprite_low\n\n #_00D3DF: REP #$30\n\n #_00D3E1: LDA.b $00\n #_00D3E3: LDY.w #$0020\n #_00D3E6: LDX.w #$2540\n\n #_00D3E9: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3EC: SEP #$30\n\n #_00D3EE: LDY.b #$05\n #_00D3F0: JSR Decompress_background_low\n\n #_00D3F3: REP #$30\n\n #_00D3F5: LDA.b $00\n #_00D3F7: CLC\n #_00D3F8: ADC.w #$0480\n\n #_00D3FB: LDY.w #$0002\n #_00D3FE: LDX.w #$2DC0\n #_00D401: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D404: SEP #$30\n\n #_00D406: RTS" + }, + { + "name": "LoadFollowerGraphics", + "code": "LoadFollowerGraphics:\n #_00D423: PHB\n #_00D424: PHK\n #_00D425: PLB\n\n #_00D426: LDY.b #$64\n #_00D428: LDA.l $7EF3CC\n #_00D42C: CMP.b #$01 ; FOLLOWER 01\n #_00D42E: BEQ .start\n\n #_00D430: LDY.b #$66\n #_00D432: LDA.l $7EF3CC\n #_00D436: CMP.b #$09 ; FOLLOWER 09\n #_00D438: BCC .start\n\n #_00D43A: LDY.b #$59\n #_00D43C: CMP.b #$0C\n #_00D43E: BCC .start\n\n #_00D440: LDY.b #$58\n\n; ---------------------------------------------------------\n\n.start\n #_00D442: JSR Decompress_sprite_high\n\n #_00D445: LDY.b #$65\n #_00D447: JSR Decompress_sprite_low\n\n #_00D44A: REP #$30\n\n #_00D44C: LDA.l $7EF3CC\n #_00D450: AND.w #$00FF\n #_00D453: ASL A\n #_00D454: TAX\n\n #_00D455: LDA.b $00\n #_00D457: CLC\n #_00D458: ADC.l .gfx_offset,X\n\n #_00D45C: LDY.w #$0020\n #_00D45F: LDX.w #$2940\n #_00D462: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D465: SEP #$30\n\n #_00D467: PLB\n\n #_00D468: RTL" + }, + { + "name": "WriteTo4BPPBuffer_at_7F4000", + "code": "WriteTo4BPPBuffer_at_7F4000:\n #_00D4DB: PHB\n #_00D4DC: PHK\n #_00D4DD: PLB\n\n #_00D4DE: PHA\n\n #_00D4DF: STZ.b $00\n\n #_00D4E1: LDA.b #$7F4000>>8\n #_00D4E3: STA.b $01\n\n #_00D4E5: LDA.b #$7F4000>>16\n #_00D4E7: STA.b $02\n #_00D4E9: STA.b $05\n\n #_00D4EB: BRA WriteTo4BPPBuffer\n\n; =========================================================\n" + }, + { + "name": "WriteTo4BPPBuffer_item_gfx", + "code": "WriteTo4BPPBuffer_item_gfx:\n #_00D4ED: PHB\n #_00D4EE: PHK\n #_00D4EF: PLB\n\n #_00D4F0: PHA\n\n #_00D4F1: LDY.b #$5D\n #_00D4F3: CMP.b #$23\n #_00D4F5: BEQ .set_a\n\n #_00D4F7: CMP.b #$37\n #_00D4F9: BCS .set_a\n\n #_00D4FB: LDY.b #$5C\n #_00D4FD: CMP.b #$0C\n #_00D4FF: BEQ .set_a\n\n #_00D501: CMP.b #$24\n #_00D503: BCS .set_a\n\n #_00D505: LDY.b #$5B\n\n.set_a\n #_00D507: JSR Decompress_sprite_high\n\n #_00D50A: LDY.b #$5A\n #_00D50C: JSR Decompress_sprite_low\n\n; =========================================================\n" + }, + { + "name": "WriteTo4BPPBuffer", + "code": "WriteTo4BPPBuffer:\n #_00D50F: PLA\n\n #_00D510: REP #$21\n\n #_00D512: AND.w #$00FF\n #_00D515: ASL A\n #_00D516: TAX\n\n #_00D517: LDA.b $00\n #_00D519: ADC.w .offsets,X\n\n #_00D51C: REP #$10\n\n #_00D51E: LDX.w #$2D40\n #_00D521: LDY.w #$0002\n\n #_00D524: PHA\n\n #_00D525: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D528: PLA\n #_00D529: CLC\n #_00D52A: ADC.w #$0180\n\n #_00D52D: LDY.w #$0002\n #_00D530: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D533: SEP #$30\n\n #_00D535: PLB\n\n #_00D536: RTL" + }, + { + "name": "LoadItemGFX_sheet0", + "code": "LoadItemGFX_sheet0:\n #_00D537: STA.b $0A\n\n #_00D539: LDY.b #$00\n\n #_00D53B: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00D53E: STA.b $02\n #_00D540: STA.b $05\n\n #_00D542: LDA.w GFXSheetPointers_sprite_high,Y\n #_00D545: STA.b $01\n\n #_00D547: LDA.w GFXSheetPointers_sprite_low,Y\n #_00D54A: STA.b $00\n\n #_00D54C: BRA LoadItemGFX\n\n; =========================================================\n" + }, + { + "name": "LoadItemGFX_arbitrary_sheet", + "code": "LoadItemGFX_arbitrary_sheet:\n #_00D54E: PHA\n\n #_00D54F: JSR Decompress_sprite_low\n\n #_00D552: PLA\n\n; =========================================================\n" + }, + { + "name": "LoadItemGFX_current_sheet", + "code": "LoadItemGFX_current_sheet:\n #_00D553: STA.b $0A\n\n #_00D555: STZ.b $00\n\n #_00D557: LDA.b #$7F4000>>8\n #_00D559: STA.b $01\n\n #_00D55B: LDA.b #$7F4000>>16\n #_00D55D: STA.b $02\n\n #_00D55F: STA.b $05\n\n; =========================================================\n" + }, + { + "name": "LoadItemGFX", + "code": "LoadItemGFX:\n #_00D561: REP #$31\n\n #_00D563: LDY.b $0C\n\n #_00D565: LDA.b $00\n #_00D567: ADC.w .offset,Y\n\n #_00D56A: LDX.b $06\n #_00D56C: LDY.b $0A\n\n #_00D56E: PHA\n\n #_00D56F: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D572: PLA\n #_00D573: CLC\n #_00D574: ADC.w #$0180\n\n #_00D577: LDY.b $0A\n #_00D579: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D57C: INC.b $0C\n #_00D57E: INC.b $0C\n\n #_00D580: STX.b $06\n\n #_00D582: SEP #$30\n\n #_00D584: RTS" + }, + { + "name": "UNREACHABLE_00D585", + "code": "UNREACHABLE_00D585:\n #_00D585: LDY.w #$0008\n #_00D588: STY.b $0E\n\n.next_tile\n #_00D58A: STA.b $00\n\n #_00D58C: CLC\n #_00D58D: ADC.w #$0010\n #_00D590: STA.b $03\n\n #_00D592: LDY.w #$0007\n\n.next_word\n #_00D595: LDA.b [$00]\n #_00D597: STA.l $7E9000,X\n\n #_00D59B: INC.b $00\n #_00D59D: INC.b $00\n\n #_00D59F: LDA.b [$03]\n #_00D5A1: AND.w #$00FF\n #_00D5A4: STA.l $7E9010,X\n\n #_00D5A8: INC.b $03\n\n #_00D5AA: INX\n #_00D5AB: INX\n\n #_00D5AC: DEY\n #_00D5AD: BPL .next_word\n\n #_00D5AF: TXA\n #_00D5B0: CLC\n #_00D5B1: ADC.w #$0010\n #_00D5B4: TAX\n\n #_00D5B5: LDA.b $03\n #_00D5B7: AND.w #$0078\n #_00D5BA: BNE .same_row\n\n #_00D5BC: LDA.b $03\n #_00D5BE: CLC\n #_00D5BF: ADC.w #$0180\n #_00D5C2: STA.b $03\n\n.same_row\n #_00D5C4: LDA.b $03\n\n #_00D5C6: DEC.b $0E\n #_00D5C8: BNE .next_tile\n\n #_00D5CA: RTS" + }, + { + "name": "Do3bppToWRAM4bpp_LeftPal", + "code": "Do3bppToWRAM4bpp_LeftPal:\n #_00D5CB: LDY.w #$0008\n\n.arbitrary\n #_00D5CE: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00D5D0: STA.b $00\n\n #_00D5D2: CLC\n #_00D5D3: ADC.w #$0010\n #_00D5D6: STA.b $03\n\n #_00D5D8: LDY.w #$0003\n\n.next_word\n #_00D5DB: LDA.b [$00]\n #_00D5DD: STA.l $7E9000,X\n\n #_00D5E1: INC.b $00\n #_00D5E3: INC.b $00\n\n #_00D5E5: LDA.b [$03]\n #_00D5E7: AND.w #$00FF\n #_00D5EA: STA.l $7E9010,X\n\n #_00D5EE: INC.b $03\n\n #_00D5F0: INX\n #_00D5F1: INX\n\n #_00D5F2: LDA.b [$00]\n #_00D5F4: STA.l $7E9000,X\n\n #_00D5F8: INC.b $00\n #_00D5FA: INC.b $00\n\n #_00D5FC: LDA.b [$03]\n #_00D5FE: AND.w #$00FF\n #_00D601: STA.l $7E9010,X\n\n #_00D605: INC.b $03\n\n #_00D607: INX\n #_00D608: INX\n\n #_00D609: DEY\n #_00D60A: BPL .next_word\n\n #_00D60C: TXA\n #_00D60D: CLC\n #_00D60E: ADC.w #$0010\n #_00D611: TAX\n\n #_00D612: LDA.b $03\n\n #_00D614: DEC.b $0E\n #_00D616: BNE .next_tile\n\n #_00D618: RTS" + }, + { + "name": "Do3bppToWRAM4bpp_RightPal", + "code": "Do3bppToWRAM4bpp_RightPal:\n #_00D619: LDY.w #$0006\n\n.arbitrary\n #_00D61C: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00D61E: STA.b $00\n\n #_00D620: CLC\n #_00D621: ADC.w #$0010\n #_00D624: STA.b $03\n\n #_00D626: LDY.w #$0007\n\n.next_word\n #_00D629: LDA.b [$00]\n #_00D62B: STA.l $7E9000,X\n\n #_00D62F: XBA\n #_00D630: ORA.b [$00]\n #_00D632: AND.w #$00FF\n #_00D635: STA.b $08\n\n #_00D637: INC.b $00\n #_00D639: INC.b $00\n\n #_00D63B: LDA.b [$03]\n #_00D63D: AND.w #$00FF\n #_00D640: STA.b $BD\n\n #_00D642: ORA.b $08\n #_00D644: XBA\n #_00D645: ORA.b $BD\n #_00D647: STA.l $7E9010,X\n\n #_00D64B: INC.b $03\n\n #_00D64D: INX\n #_00D64E: INX\n\n #_00D64F: DEY\n #_00D650: BPL .next_word\n\n; ---------------------------------------------------------\n\n #_00D652: TXA\n #_00D653: CLC\n #_00D654: ADC.w #$0010\n #_00D657: TAX\n\n #_00D658: LDA.b $03\n #_00D65A: AND.w #$0078\n #_00D65D: BNE .same_row\n\n #_00D65F: LDA.b $03\n #_00D661: CLC\n #_00D662: ADC.w #$0180\n #_00D665: STA.b $03\n\n.same_row\n #_00D667: LDA.b $03\n\n #_00D669: DEC.b $0E\n #_00D66B: BNE .next_tile\n\n #_00D66D: RTS" + }, + { + "name": "LoadTransAuxGFX", + "code": "LoadTransAuxGFX:\n #_00D66E: PHB\n #_00D66F: PHK\n #_00D670: PLB\n\n #_00D671: STZ.b $00\n\n #_00D673: LDA.b #$7E6000>>8\n #_00D675: STA.b $01\n\n #_00D677: LDA.b #$7E6000>>16\n #_00D679: STA.b $02\n\n #_00D67B: REP #$30\n\n #_00D67D: LDA.w $0AA2\n #_00D680: AND.w #$00FF\n #_00D683: ASL A\n #_00D684: ASL A\n #_00D685: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_00D687: SEP #$20\n\n #_00D689: LDX.b $0E\n\n #_00D68B: LDA.w SheetsTable_AA2+0,X\n #_00D68E: BEQ .skip_bg0\n\n #_00D690: STA.l $7EC2F8\n\n #_00D694: SEP #$10\n\n #_00D696: TAY\n #_00D697: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg0\n #_00D69A: SEP #$10\n\n #_00D69C: LDA.b $01\n #_00D69E: CLC\n #_00D69F: ADC.b #$06\n #_00D6A1: STA.b $01\n\n #_00D6A3: REP #$10\n\n #_00D6A5: LDX.b $0E\n\n #_00D6A7: LDA.w SheetsTable_AA2+1,X\n #_00D6AA: BEQ .skip_bg1\n\n #_00D6AC: STA.l $7EC2F9\n\n #_00D6B0: SEP #$10\n\n #_00D6B2: TAY\n #_00D6B3: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg1\n #_00D6B6: SEP #$10\n\n #_00D6B8: LDA.b $01\n #_00D6BA: CLC\n #_00D6BB: ADC.b #$06\n #_00D6BD: STA.b $01\n\n #_00D6BF: REP #$10\n\n #_00D6C1: LDX.b $0E\n\n #_00D6C3: LDA.w SheetsTable_AA2+2,X\n #_00D6C6: BEQ .skip_bg2\n\n #_00D6C8: STA.l $7EC2FA\n\n #_00D6CC: SEP #$10\n\n #_00D6CE: TAY\n #_00D6CF: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg2\n #_00D6D2: SEP #$10\n\n #_00D6D4: LDA.b $01\n #_00D6D6: CLC\n #_00D6D7: ADC.b #$06\n #_00D6D9: STA.b $01\n\n #_00D6DB: REP #$10\n\n #_00D6DD: LDX.b $0E\n #_00D6DF: LDA.w SheetsTable_AA2+3,X\n #_00D6E2: BEQ .skip_bg3\n\n #_00D6E4: STA.l $7EC2FB\n\n #_00D6E8: SEP #$10\n\n #_00D6EA: TAY\n #_00D6EB: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg3\n #_00D6EE: SEP #$10\n\n #_00D6F0: LDA.b $01\n #_00D6F2: CLC\n #_00D6F3: ADC.b #$06\n #_00D6F5: STA.b $01\n\n #_00D6F7: BRA .continue\n\n; =========================================================\n\n#LoadTransAuxGFX_sprite:\n #_00D6F9: PHB\n #_00D6FA: PHK\n #_00D6FB: PLB\n\n #_00D6FC: STZ.b $00\n\n #_00D6FE: LDA.b #$7E7800>>8\n #_00D700: STA.b $01\n\n #_00D702: LDA.b #$7E7800>>16\n #_00D704: STA.b $02\n\n; =========================================================\n\n.continue\n #_00D706: REP #$30\n\n #_00D708: LDA.w $0AA3\n #_00D70B: AND.w #$00FF\n #_00D70E: ASL A\n #_00D70F: ASL A\n #_00D710: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_00D712: SEP #$20\n\n #_00D714: LDX.b $0E\n #_00D716: LDA.w SheetsTable_AA3+0,X\n #_00D719: BEQ .skip_spr0\n\n #_00D71B: STA.l $7EC2FC\n\n.skip_spr0\n #_00D71F: SEP #$10\n\n #_00D721: LDA.l $7EC2FC\n #_00D725: TAY\n\n #_00D726: JSR Decompress_sprite_arbitrary\n\n #_00D729: LDA.b $01\n #_00D72B: CLC\n #_00D72C: ADC.b #$06\n #_00D72E: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D730: REP #$10\n\n #_00D732: LDX.b $0E\n\n #_00D734: LDA.w SheetsTable_AA3+1,X\n #_00D737: BEQ .skip_spr1\n\n #_00D739: STA.l $7EC2FD\n\n.skip_spr1\n #_00D73D: SEP #$10\n\n #_00D73F: LDA.l $7EC2FD\n #_00D743: TAY\n\n #_00D744: JSR Decompress_sprite_arbitrary\n\n #_00D747: LDA.b $01\n #_00D749: CLC\n #_00D74A: ADC.b #$06\n #_00D74C: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D74E: REP #$10\n\n #_00D750: LDX.b $0E\n\n #_00D752: LDA.w SheetsTable_AA3+2,X\n #_00D755: BEQ .skip_spr2\n\n #_00D757: STA.l $7EC2FE\n\n.skip_spr2\n #_00D75B: SEP #$10\n\n #_00D75D: LDA.l $7EC2FE\n #_00D761: TAY\n\n #_00D762: JSR Decompress_sprite_arbitrary\n\n #_00D765: LDA.b $01\n #_00D767: CLC\n #_00D768: ADC.b #$06\n #_00D76A: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D76C: REP #$10\n\n #_00D76E: LDX.b $0E\n\n #_00D770: LDA.w SheetsTable_AA3+3,X\n #_00D773: BEQ .skip_spr3\n\n #_00D775: STA.l $7EC2FF\n\n.skip_spr3\n #_00D779: SEP #$10\n\n #_00D77B: LDA.l $7EC2FF\n #_00D77F: TAY\n\n #_00D780: JSR Decompress_sprite_arbitrary\n\n #_00D783: STZ.w $0412\n\n #_00D786: PLB\n\n #_00D787: RTL" + }, + { + "name": "ReloadPreviouslyLoadedSheets", + "code": "ReloadPreviouslyLoadedSheets:\n #_00D788: PHB\n #_00D789: PHK\n #_00D78A: PLB\n\n #_00D78B: STZ.b $00\n\n #_00D78D: LDA.b #$7E6000>>8\n #_00D78F: STA.b $01\n\n #_00D791: LDA.b #$7E6000>>16\n #_00D793: STA.b $02\n\n #_00D795: LDA.l $7EC2F8\n #_00D799: TAY\n\n #_00D79A: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D79D: LDA.b $01\n #_00D79F: CLC\n #_00D7A0: ADC.b #$06\n #_00D7A2: STA.b $01\n\n #_00D7A4: LDA.l $7EC2F9\n #_00D7A8: TAY\n\n #_00D7A9: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7AC: LDA.b $01\n #_00D7AE: CLC\n #_00D7AF: ADC.b #$06\n #_00D7B1: STA.b $01\n\n #_00D7B3: LDA.l $7EC2FA\n #_00D7B7: TAY\n\n #_00D7B8: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7BB: LDA.b $01\n #_00D7BD: CLC\n #_00D7BE: ADC.b #$06\n #_00D7C0: STA.b $01\n\n #_00D7C2: LDA.l $7EC2FB\n #_00D7C6: TAY\n\n #_00D7C7: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7CA: STZ.b $00\n\n #_00D7CC: LDA.b #$7E7800>>8\n #_00D7CE: STA.b $01\n\n #_00D7D0: LDA.b #$7E7800>>16\n #_00D7D2: STA.b $02\n\n #_00D7D4: LDA.l $7EC2FC\n #_00D7D8: TAY\n\n #_00D7D9: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7DC: LDA.b $01\n #_00D7DE: CLC\n #_00D7DF: ADC.b #$06\n #_00D7E1: STA.b $01\n\n #_00D7E3: LDA.l $7EC2FD\n #_00D7E7: TAY\n\n #_00D7E8: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7EB: LDA.b $01\n #_00D7ED: CLC\n #_00D7EE: ADC.b #$06\n #_00D7F0: STA.b $01\n\n #_00D7F2: LDA.l $7EC2FE\n #_00D7F6: TAY\n\n #_00D7F7: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7FA: LDA.b $01\n #_00D7FC: CLC\n #_00D7FD: ADC.b #$06\n #_00D7FF: STA.b $01\n\n #_00D801: LDA.l $7EC2FF\n #_00D805: TAY\n\n #_00D806: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D809: STZ.w $0412\n\n #_00D80C: PLB\n\n #_00D80D: RTL" + }, + { + "name": "Attract_DecompressStoryGFX", + "code": "Attract_DecompressStoryGFX:\n #_00D80E: PHB\n #_00D80F: PHK\n #_00D810: PLB\n\n #_00D811: STZ.b $00\n\n #_00D813: LDA.b #$7F4000>>8\n #_00D815: STA.b $01\n\n #_00D817: LDA.b #$7F4000>>16\n #_00D819: STA.b $02\n #_00D81B: STA.b $05\n\n #_00D81D: LDA.b #$67\n #_00D81F: STA.b $0E\n\n.next\n #_00D821: LDY.b $0E\n\n #_00D823: JSR Decompress_sprite_arbitrary\n\n #_00D826: LDA.b $01\n #_00D828: CLC\n #_00D829: ADC.b #$08\n #_00D82B: STA.b $01\n\n #_00D82D: INC.b $0E\n\n #_00D82F: LDA.b $0E\n #_00D831: CMP.b #$69\n #_00D833: BNE .next\n\n #_00D835: PLB\n\n #_00D836: RTL" + }, + { + "name": "AnimateMirrorWarp", + "code": "AnimateMirrorWarp:\n #_00D864: STZ.b $00\n\n #_00D866: LDA.b #$40\n #_00D868: STA.b $01\n\n #_00D86A: LDX.w $0200\n\n #_00D86D: LDA.l .next_tilemap,X\n #_00D871: STA.b $17\n #_00D873: STA.w $0710\n\n #_00D876: LDA.l .vector_low,X\n #_00D87A: STA.b $0E\n\n #_00D87C: LDA.l .vector_high,X\n #_00D880: STA.b $0F\n\n #_00D882: LDX.b #$00\n\n #_00D884: LDA.b $8A\n #_00D886: AND.b #$40\n #_00D888: BEQ .light_world\n\n #_00D88A: LDX.b #$08\n\n.light_world\n #_00D88C: INC.w $0200\n\n #_00D88F: JMP.w ($000E)\n\n; =========================================================\n" + }, + { + "name": "AnimateMirrorWarp_LoadPyramidIfAga", + "code": "AnimateMirrorWarp_LoadPyramidIfAga:\n #_00D892: INC.w $06BA\n\n #_00D895: LDA.w $06BA\n #_00D898: CMP.b #$20\n #_00D89A: BEQ .continue\n\n #_00D89C: STZ.w $0200\n\n #_00D89F: RTL" + }, + { + "name": "AnimateMirrorWarp_TriggerOverlayA_2", + "code": "AnimateMirrorWarp_TriggerOverlayA_2:\n #_00D8A5: JSL MirrorWarp_HandleCastlePyramidSubscreen\n\n #_00D8A9: DEC.b $11\n\n #_00D8AB: LDA.b #$0C\n #_00D8AD: STA.b $17\n #_00D8AF: STA.w $0710\n\n #_00D8B2: RTL" + }, + { + "name": "AnimateMirrorWarp_DrawDestinationScreen", + "code": "AnimateMirrorWarp_DrawDestinationScreen:\n #_00D8B3: JSL Overworld_DrawScreenAtCurrentMirrorPosition\n\n #_00D8B7: INC.w $0710\n\n #_00D8BA: RTL" + }, + { + "name": "AnimateMirrorWarp_DoSpritesPalettes", + "code": "AnimateMirrorWarp_DoSpritesPalettes:\n #_00D8BB: JSL MirrorWarp_LoadSpritesAndColors\n\n #_00D8BF: LDA.b #$0C\n #_00D8C1: STA.b $17\n #_00D8C3: STA.w $0710\n\n #_00D8C6: RTL" + }, + { + "name": "AnimateMirrorWarp_TriggerOverlayB", + "code": "AnimateMirrorWarp_TriggerOverlayB:\n #_00D8C7: LDA.b #$0D\n #_00D8C9: STA.b $17\n #_00D8CB: STA.w $0710\n\n #_00D8CE: RTL" + }, + { + "name": "AnimateMirrorWarp_TriggerBGChar0", + "code": "AnimateMirrorWarp_TriggerBGChar0:\n #_00D8CF: LDA.b #$0E\n #_00D8D1: STA.w $0200\n\n #_00D8D4: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressAnimatedTiles", + "code": "AnimateMirrorWarp_DecompressAnimatedTiles:\n #_00D8D5: LDY.b #$58\n\n #_00D8D7: LDA.b $8A\n #_00D8D9: AND.b #$BF\n #_00D8DB: CMP.b #$03 ; OW 03, 0W 43\n #_00D8DD: BEQ .not_death_mountain\n\n #_00D8DF: CMP.b #$05 ; OW 05, 0W 45\n #_00D8E1: BEQ .not_death_mountain\n\n #_00D8E3: CMP.b #$07 ; OW 07, 0W 47\n #_00D8E5: BEQ .not_death_mountain\n\n #_00D8E7: LDY.b #$5A\n\n.not_death_mountain\n #_00D8E9: JSL DecompressAnimatedOverworldTiles\n\n #_00D8ED: RTL" + }, + { + "name": "SheetsTable_Mirror", + "code": "SheetsTable_Mirror:\n #_00D8EE: db $3A\n #_00D8EF: db $3B\n #_00D8F0: db $3C\n #_00D8F1: db $3D\n #_00D8F2: db $3E\n #_00D8F3: db $5B\n\n; =========================================================\n" + }, + { + "name": "SheetsTable_AA4", + "code": "SheetsTable_AA4:\n #_00D8F4: db $01\n #_00D8F5: db $5A\n #_00D8F6: db $42\n #_00D8F7: db $43\n #_00D8F8: db $44\n #_00D8F9: db $45\n #_00D8FA: db $3F\n #_00D8FB: db $59\n #_00D8FC: db $0B\n #_00D8FD: db $5A\n\n; =========================================================\n" + }, + { + "name": "AnimateMirrorWarp_DecompressNewTileSets", + "code": "AnimateMirrorWarp_DecompressNewTileSets:\n #_00D8FE: PHB\n #_00D8FF: PHK\n #_00D900: PLB\n\n #_00D901: PHX\n\n #_00D902: REP #$30\n\n #_00D904: LDA.w $0AA1\n #_00D907: AND.w #$00FF\n #_00D90A: ASL A\n #_00D90B: ASL A\n #_00D90C: ASL A\n #_00D90D: TAX\n\n #_00D90E: LDA.w $0AA2\n #_00D911: AND.w #$00FF\n #_00D914: ASL A\n #_00D915: ASL A\n #_00D916: TAY\n\n #_00D917: SEP #$20\n\n #_00D919: LDA.w SheetsTable_AA2+0,Y\n #_00D91C: BNE .not_default_a\n\n #_00D91E: LDA.w SheetsTable_AA1+3,X\n\n.not_default_a\n #_00D921: STA.l $7EC2F8\n\n #_00D925: LDA.w SheetsTable_AA2+1,Y\n #_00D928: BNE .not_default_b\n\n #_00D92A: LDA.w SheetsTable_AA1+4,X\n\n.not_default_b\n #_00D92D: STA.l $7EC2F9\n\n #_00D931: LDA.w SheetsTable_AA2+2,Y\n #_00D934: BNE .not_default_c\n\n #_00D936: LDA.w SheetsTable_AA1+5,X\n\n.not_default_c\n #_00D939: STA.l $7EC2FA\n\n #_00D93D: LDA.w SheetsTable_AA2+3,Y\n #_00D940: BNE .not_default_d\n\n #_00D942: LDA.w SheetsTable_AA1+6,X\n\n.not_default_d\n #_00D945: STA.l $7EC2FB\n\n; ---------------------------------------------------------\n\n #_00D949: REP #$20\n\n #_00D94B: LDA.w $0AA3\n #_00D94E: AND.w #$00FF\n #_00D951: ASL A\n #_00D952: ASL A\n #_00D953: TAY\n\n #_00D954: SEP #$20\n\n #_00D956: LDA.w SheetsTable_AA3+0,Y\n #_00D959: BEQ .dont_change_a\n\n #_00D95B: STA.l $7EC2FC\n\n.dont_change_a\n #_00D95F: LDA.w SheetsTable_AA3+1,Y\n #_00D962: BEQ .dont_change_b\n\n #_00D964: STA.l $7EC2FD\n\n.dont_change_b\n #_00D968: LDA.w SheetsTable_AA3+2,Y\n #_00D96B: BEQ .dont_change_c\n\n #_00D96D: STA.l $7EC2FE\n\n.dont_change_c\n #_00D971: LDA.w SheetsTable_AA3+3,Y\n #_00D974: BEQ .dont_change_d\n\n #_00D976: STA.l $7EC2FF\n\n; ---------------------------------------------------------\n\n.dont_change_d\n #_00D97A: SEP #$10\n\n #_00D97C: PLX\n\n #_00D97D: LDA.l SheetsTable_Mirror+1,X\n #_00D981: STA.b $08\n\n #_00D983: LDA.l SheetsTable_Mirror+0,X\n #_00D987: TAY\n\n #_00D988: LDA.b #$7F\n #_00D98A: JSR Decompress_background_arbitrary_bank\n\n #_00D98D: LDA.b $01\n #_00D98F: CLC\n #_00D990: ADC.b #$06\n #_00D992: STA.b $01\n\n #_00D994: LDY.b $08\n #_00D996: JSR Decompress_background_arbitrary\n\n #_00D999: PLB\n\n #_00D99A: LDA.b #$7F\n #_00D99C: STA.b $02\n #_00D99E: STA.b $05\n\n #_00D9A0: REP #$31\n\n #_00D9A2: LDX.w #$0000\n #_00D9A5: LDY.w #$0040\n #_00D9A8: LDA.w #$4000\n #_00D9AB: JSR Do3To4High16Bit\n\n #_00D9AE: LDY.w #$0040\n #_00D9B1: LDA.b $03\n #_00D9B3: JSR Do3To4Low16Bit\n\n #_00D9B6: SEP #$30\n\n #_00D9B8: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsA", + "code": "AnimateMirrorWarp_DecompressBackgroundsA:\n #_00D9B9: PHB\n #_00D9BA: PHK\n #_00D9BB: PLB\n\n #_00D9BC: LDA.l SheetsTable_Mirror+3,X\n #_00D9C0: STA.b $08\n\n #_00D9C2: LDA.l SheetsTable_Mirror+2,X\n #_00D9C6: TAY\n\n #_00D9C7: LDA.b #$7F\n #_00D9C9: JSR Decompress_background_arbitrary_bank\n\n #_00D9CC: LDA.b $01\n #_00D9CE: CLC\n #_00D9CF: ADC.b #$06\n #_00D9D1: STA.b $01\n\n #_00D9D3: LDY.b $08\n #_00D9D5: JSR Decompress_background_arbitrary\n\n #_00D9D8: PLB\n\n #_00D9D9: LDA.b #$7F\n #_00D9DB: STA.b $02\n #_00D9DD: STA.b $05\n\n #_00D9DF: REP #$31\n\n #_00D9E1: LDX.w #$0000\n #_00D9E4: LDY.w #$0040\n #_00D9E7: LDA.w #$4000\n #_00D9EA: JSR Do3To4Low16Bit\n\n #_00D9ED: LDY.w #$0040\n #_00D9F0: LDA.b $03\n #_00D9F2: JSR Do3To4High16Bit\n\n #_00D9F5: SEP #$30\n\n #_00D9F7: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsB", + "code": "AnimateMirrorWarp_DecompressBackgroundsB:\n #_00D9F8: PHB\n #_00D9F9: PHK\n #_00D9FA: PLB\n\n #_00D9FB: LDA.l $7EC2F9\n #_00D9FF: TAY\n\n #_00DA00: LDA.b #$7F\n #_00DA02: JSR Decompress_background_arbitrary_bank\n\n #_00DA05: LDA.b $01\n #_00DA07: CLC\n #_00DA08: ADC.b #$06\n #_00DA0A: STA.b $01\n\n #_00DA0C: LDA.l $7EC2FA\n #_00DA10: TAY\n #_00DA11: JSR Decompress_background_arbitrary\n\n #_00DA14: PLB\n\n #_00DA15: LDA.b #$7F\n #_00DA17: STA.b $02\n #_00DA19: STA.b $05\n\n #_00DA1B: REP #$31\n\n #_00DA1D: LDX.w #$0000\n #_00DA20: LDY.w #$0080\n #_00DA23: LDA.w #$4000\n #_00DA26: JSR Do3To4High16Bit\n\n #_00DA29: SEP #$30\n\n #_00DA2B: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsC", + "code": "AnimateMirrorWarp_DecompressBackgroundsC:\n #_00DA2C: PHB\n #_00DA2D: PHK\n #_00DA2E: PLB\n\n #_00DA2F: LDA.l SheetsTable_Mirror+5,X\n #_00DA33: STA.b $08\n\n #_00DA35: LDA.l SheetsTable_Mirror+4,X\n #_00DA39: TAY\n\n #_00DA3A: LDA.b #$7F\n #_00DA3C: JSR Decompress_background_arbitrary_bank\n\n #_00DA3F: LDA.b $01\n #_00DA41: CLC\n #_00DA42: ADC.b #$06\n #_00DA44: STA.b $01\n\n #_00DA46: LDY.b $08\n #_00DA48: JSR Decompress_background_arbitrary\n\n #_00DA4B: PLB\n\n #_00DA4C: LDA.b #$7F\n #_00DA4E: STA.b $02\n #_00DA50: STA.b $05\n\n #_00DA52: REP #$31\n\n #_00DA54: LDX.w #$0000\n #_00DA57: LDY.w #$0080\n #_00DA5A: LDA.w #$4000\n #_00DA5D: JSR Do3To4Low16Bit\n\n #_00DA60: SEP #$30\n\n #_00DA62: RTL" + }, + { + "name": "AnimateMirrorWarp_LoadSubscreen", + "code": "AnimateMirrorWarp_LoadSubscreen:\n #_00DA63: STZ.b $1D\n\n #_00DA65: LDA.b $8A\n #_00DA67: BEQ .subscreen\n\n #_00DA69: CMP.b #$70 ; OW 70\n #_00DA6B: BEQ .subscreen\n\n #_00DA6D: CMP.b #$40 ; OW 40\n #_00DA6F: BEQ .subscreen\n\n #_00DA71: CMP.b #$5B ; OW 5B\n #_00DA73: BEQ .subscreen\n\n #_00DA75: CMP.b #$03 ; OW 03\n #_00DA77: BEQ .subscreen\n\n #_00DA79: CMP.b #$05 ; OW 05\n #_00DA7B: BEQ .subscreen\n\n #_00DA7D: CMP.b #$07 ; OW 07\n #_00DA7F: BEQ .subscreen\n\n #_00DA81: CMP.b #$43 ; OW 43\n #_00DA83: BEQ .subscreen\n\n #_00DA85: CMP.b #$45 ; OW 45\n #_00DA87: BEQ .subscreen\n\n #_00DA89: CMP.b #$47 ; OW 47\n #_00DA8B: BNE .no_subscreen\n\n.subscreen\n #_00DA8D: LDA.b #$01\n #_00DA8F: STA.b $1D\n\n.no_subscreen\n #_00DA91: PHB\n #_00DA92: PHK\n #_00DA93: PLB\n\n #_00DA94: LDA.l SheetsTable_Mirror+6,X\n #_00DA98: TAY\n\n #_00DA99: LDA.w GFXSheetPointers_sprite_low,Y\n #_00DA9C: STA.b $00\n\n #_00DA9E: LDA.w GFXSheetPointers_sprite_high,Y\n #_00DAA1: STA.b $01\n\n #_00DAA3: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00DAA6: STA.b $02\n #_00DAA8: STA.b $05\n\n #_00DAAA: PLB\n\n #_00DAAB: REP #$31\n\n #_00DAAD: LDX.w #$0000\n #_00DAB0: LDY.w #$0040\n\n #_00DAB3: LDA.b $00\n #_00DAB5: JSR Do3To4High16Bit\n\n #_00DAB8: SEP #$30\n\n #_00DABA: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressSpritesA", + "code": "AnimateMirrorWarp_DecompressSpritesA:\n #_00DABB: PHB\n #_00DABC: PHK\n #_00DABD: PLB\n\n #_00DABE: LDA.l $7EC2FC\n #_00DAC2: TAY\n\n #_00DAC3: LDA.b #$7F\n #_00DAC5: STA.b $02\n #_00DAC7: STA.b $05\n\n #_00DAC9: JSR Decompress_sprite_arbitrary\n\n #_00DACC: LDA.b $01\n #_00DACE: CLC\n #_00DACF: ADC.b #$06\n #_00DAD1: STA.b $01\n\n #_00DAD3: LDA.l $7EC2FD\n #_00DAD7: TAY\n #_00DAD8: JSR Decompress_sprite_arbitrary\n\n #_00DADB: PLB\n\n; ---------------------------------------------------------\n\n #_00DADC: LDA.b #$7F\n #_00DADE: STA.b $02\n #_00DAE0: STA.b $05\n\n #_00DAE2: REP #$31\n\n #_00DAE4: LDX.w #$0000\n #_00DAE7: LDY.w #$0040\n\n #_00DAEA: LDA.l $7EC2FC\n #_00DAEE: CMP.w #$0052\n #_00DAF1: BEQ .right_side_palette\n\n #_00DAF3: CMP.w #$0053\n #_00DAF6: BEQ .right_side_palette\n\n #_00DAF8: CMP.w #$005A\n #_00DAFB: BEQ .right_side_palette\n\n #_00DAFD: CMP.w #$005B\n #_00DB00: BNE .left_side_palette\n\n.right_side_palette\n #_00DB02: LDA.w #$4000\n #_00DB05: JSR Do3To4High16Bit\n\n #_00DB08: BRA .done\n\n.left_side_palette\n #_00DB0A: LDA.w #$4000\n #_00DB0D: JSR Do3To4Low16Bit\n\n.done\n #_00DB10: LDY.w #$0040\n #_00DB13: LDA.b $03\n #_00DB15: JSR Do3To4Low16Bit\n\n #_00DB18: SEP #$30\n\n #_00DB1A: RTL" + }, + { + "name": "AnimateMirrorWarp_DecompressSpritesB", + "code": "AnimateMirrorWarp_DecompressSpritesB:\n #_00DB1B: PHB\n #_00DB1C: PHK\n #_00DB1D: PLB\n\n #_00DB1E: LDA.l $7EC2FE\n #_00DB22: TAY\n\n #_00DB23: LDA.b #$7F\n #_00DB25: STA.b $02\n #_00DB27: STA.b $05\n #_00DB29: JSR Decompress_sprite_arbitrary\n\n #_00DB2C: LDA.b $01\n #_00DB2E: CLC\n #_00DB2F: ADC.b #$06\n #_00DB31: STA.b $01\n\n #_00DB33: LDA.l $7EC2FF\n #_00DB37: TAY\n #_00DB38: JSR Decompress_sprite_arbitrary\n\n #_00DB3B: PLB\n\n #_00DB3C: LDA.b #$7F\n #_00DB3E: STA.b $02\n #_00DB40: STA.b $05\n\n #_00DB42: REP #$31\n\n #_00DB44: LDX.w #$0000\n #_00DB47: LDY.w #$0080\n #_00DB4A: LDA.w #$7F4000\n #_00DB4D: JSR Do3To4Low16Bit\n\n #_00DB50: SEP #$30\n\n #_00DB52: JSL HandleFollowersAfterMirroring\n\n #_00DB56: RTL" + }, + { + "name": "SheetsTable_AA3", + "code": "SheetsTable_AA3:\n #_00DB57: db $00, $49, $00, $00 ; 0x00\n #_00DB5B: db $46, $49, $0C, $1D ; 0x01\n #_00DB5F: db $48, $49, $13, $1D ; 0x02\n #_00DB63: db $46, $49, $13, $0E ; 0x03\n #_00DB67: db $48, $49, $0C, $11 ; 0x04\n #_00DB6B: db $48, $49, $0C, $10 ; 0x05\n #_00DB6F: db $4F, $49, $4A, $50 ; 0x06\n #_00DB73: db $0E, $49, $4A, $11 ; 0x07\n #_00DB77: db $46, $49, $12, $00 ; 0x08\n #_00DB7B: db $00, $49, $00, $50 ; 0x09\n #_00DB7F: db $00, $49, $00, $11 ; 0x0A\n #_00DB83: db $48, $49, $0C, $00 ; 0x0B\n #_00DB87: db $00, $00, $37, $36 ; 0x0C\n #_00DB8B: db $48, $49, $4C, $11 ; 0x0D\n #_00DB8F: db $5D, $2C, $0C, $44 ; 0x0E\n #_00DB93: db $00, $00, $4E, $00 ; 0x0F\n #_00DB97: db $0F, $00, $12, $10 ; 0x10\n #_00DB9B: db $00, $00, $00, $4C ; 0x11\n #_00DB9F: db $00, $0D, $17, $00 ; 0x12\n #_00DBA3: db $16, $0D, $17, $1B ; 0x13\n #_00DBA7: db $16, $0D, $17, $14 ; 0x14\n #_00DBAB: db $15, $0D, $17, $15 ; 0x15\n #_00DBAF: db $16, $0D, $18, $19 ; 0x16\n #_00DBB3: db $16, $0D, $17, $19 ; 0x17\n #_00DBB7: db $16, $0D, $00, $00 ; 0x18\n #_00DBBB: db $16, $0D, $18, $1B ; 0x19\n #_00DBBF: db $0F, $49, $4A, $11 ; 0x1A\n #_00DBC3: db $4B, $2A, $5C, $15 ; 0x1B\n #_00DBC7: db $16, $49, $17, $1D ; 0x1C\n #_00DBCB: db $00, $00, $00, $15 ; 0x1D\n #_00DBCF: db $16, $0D, $17, $10 ; 0x1E\n #_00DBD3: db $16, $49, $12, $00 ; 0x1F\n #_00DBD7: db $16, $49, $0C, $11 ; 0x20\n #_00DBDB: db $00, $00, $12, $10 ; 0x21\n #_00DBDF: db $16, $0D, $00, $11 ; 0x22\n #_00DBE3: db $16, $49, $0C, $00 ; 0x23\n #_00DBE7: db $16, $0D, $4C, $11 ; 0x24\n #_00DBEB: db $0E, $0D, $4A, $11 ; 0x25\n #_00DBEF: db $16, $1A, $17, $1B ; 0x26\n #_00DBF3: db $4F, $34, $4A, $50 ; 0x27\n #_00DBF7: db $35, $4D, $65, $36 ; 0x28\n #_00DBFB: db $4A, $34, $4E, $00 ; 0x29\n #_00DBFF: db $0E, $34, $4A, $11 ; 0x2A\n #_00DC03: db $51, $34, $5D, $59 ; 0x2B\n #_00DC07: db $4B, $49, $4C, $11 ; 0x2C\n #_00DC0B: db $2D, $00, $00, $00 ; 0x2D\n #_00DC0F: db $5D, $00, $12, $59 ; 0x2E\n #_00DC13: db $00, $00, $00, $00 ; 0x2F\n #_00DC17: db $00, $00, $00, $00 ; 0x30\n #_00DC1B: db $00, $00, $00, $00 ; 0x31\n #_00DC1F: db $00, $00, $00, $00 ; 0x32\n #_00DC23: db $00, $00, $00, $00 ; 0x33\n #_00DC27: db $00, $00, $00, $00 ; 0x34\n #_00DC2B: db $00, $00, $00, $00 ; 0x35\n #_00DC2F: db $00, $00, $00, $00 ; 0x36\n #_00DC33: db $00, $00, $00, $00 ; 0x37\n #_00DC37: db $00, $00, $00, $00 ; 0x38\n #_00DC3B: db $00, $00, $00, $00 ; 0x39\n #_00DC3F: db $00, $00, $00, $00 ; 0x3A\n #_00DC43: db $00, $00, $00, $00 ; 0x3B\n #_00DC47: db $00, $00, $00, $00 ; 0x3C\n #_00DC4B: db $00, $00, $00, $00 ; 0x3D\n #_00DC4F: db $00, $00, $00, $00 ; 0x3E\n #_00DC53: db $00, $00, $00, $00 ; 0x3F\n #_00DC57: db $47, $49, $2B, $2D ; 0x40 - 0x00 for underworld\n #_00DC5B: db $46, $49, $1C, $52 ; 0x41 - 0x01 for underworld\n #_00DC5F: db $00, $49, $1C, $52 ; 0x42 - 0x02 for underworld\n #_00DC63: db $5D, $49, $00, $52 ; 0x43 - 0x03 for underworld\n #_00DC67: db $46, $49, $13, $52 ; 0x44 - 0x04 for underworld\n #_00DC6B: db $4B, $4D, $4A, $5A ; 0x45 - 0x05 for underworld\n #_00DC6F: db $47, $49, $1C, $52 ; 0x46 - 0x06 for underworld\n #_00DC73: db $4B, $4D, $39, $36 ; 0x47 - 0x07 for underworld\n #_00DC77: db $1F, $2C, $2E, $52 ; 0x48 - 0x08 for underworld\n #_00DC7B: db $1F, $2C, $2E, $1D ; 0x49 - 0x09 for underworld\n #_00DC7F: db $2F, $2C, $2E, $52 ; 0x4A - 0x0A for underworld\n #_00DC83: db $2F, $2C, $2E, $31 ; 0x4B - 0x0B for underworld\n #_00DC87: db $1F, $1E, $30, $52 ; 0x4C - 0x0C for underworld\n #_00DC8B: db $51, $49, $13, $00 ; 0x4D - 0x0D for underworld\n #_00DC8F: db $4F, $49, $13, $50 ; 0x4E - 0x0E for underworld\n #_00DC93: db $4F, $4D, $4A, $50 ; 0x4F - 0x0F for underworld\n #_00DC97: db $4B, $49, $4C, $2B ; 0x50 - 0x10 for underworld\n #_00DC9B: db $1F, $20, $22, $53 ; 0x51 - 0x11 for underworld\n #_00DC9F: db $55, $3D, $42, $43 ; 0x52 - 0x12 for underworld\n #_00DCA3: db $1F, $1E, $23, $52 ; 0x53 - 0x13 for underworld\n #_00DCA7: db $1F, $1E, $39, $3A ; 0x54 - 0x14 for underworld\n #_00DCAB: db $1F, $1E, $3A, $3E ; 0x55 - 0x15 for underworld\n #_00DCAF: db $1F, $1E, $3C, $3D ; 0x56 - 0x16 for underworld\n #_00DCB3: db $40, $1E, $27, $3F ; 0x57 - 0x17 for underworld\n #_00DCB7: db $55, $1A, $42, $43 ; 0x58 - 0x18 for underworld\n #_00DCBB: db $1F, $1E, $2A, $52 ; 0x59 - 0x19 for underworld\n #_00DCBF: db $1F, $1E, $38, $52 ; 0x5A - 0x1A for underworld\n #_00DCC3: db $1F, $20, $28, $52 ; 0x5B - 0x1B for underworld\n #_00DCC7: db $1F, $20, $26, $52 ; 0x5C - 0x1C for underworld\n #_00DCCB: db $1F, $2C, $25, $52 ; 0x5D - 0x1D for underworld\n #_00DCCF: db $1F, $20, $27, $52 ; 0x5E - 0x1E for underworld\n #_00DCD3: db $1F, $1E, $29, $52 ; 0x5F - 0x1F for underworld\n #_00DCD7: db $1F, $2C, $3B, $52 ; 0x60 - 0x20 for underworld\n #_00DCDB: db $46, $49, $24, $52 ; 0x61 - 0x21 for underworld\n #_00DCDF: db $21, $41, $45, $33 ; 0x62 - 0x22 for underworld\n #_00DCE3: db $1F, $2C, $28, $31 ; 0x63 - 0x23 for underworld\n #_00DCE7: db $1F, $0D, $29, $52 ; 0x64 - 0x24 for underworld\n #_00DCEB: db $1F, $1E, $27, $52 ; 0x65 - 0x25 for underworld\n #_00DCEF: db $1F, $20, $27, $53 ; 0x66 - 0x26 for underworld\n #_00DCF3: db $48, $49, $13, $52 ; 0x67 - 0x27 for underworld\n #_00DCF7: db $0E, $1E, $4A, $50 ; 0x68 - 0x28 for underworld\n #_00DCFB: db $1F, $20, $26, $53 ; 0x69 - 0x29 for underworld\n #_00DCFF: db $15, $00, $00, $00 ; 0x6A - 0x2A for underworld\n #_00DD03: db $1F, $00, $2A, $52 ; 0x6B - 0x2B for underworld\n #_00DD07: db $00, $00, $00, $00 ; 0x6C - 0x2C for underworld\n #_00DD0B: db $00, $00, $00, $00 ; 0x6D - 0x2D for underworld\n #_00DD0F: db $00, $00, $00, $00 ; 0x6E - 0x2E for underworld\n #_00DD13: db $00, $00, $00, $00 ; 0x6F - 0x2F for underworld\n #_00DD17: db $00, $00, $00, $00 ; 0x70 - 0x30 for underworld\n #_00DD1B: db $00, $00, $00, $00 ; 0x71 - 0x31 for underworld\n #_00DD1F: db $00, $00, $00, $00 ; 0x72 - 0x32 for underworld\n #_00DD23: db $00, $00, $00, $00 ; 0x73 - 0x33 for underworld\n #_00DD27: db $00, $00, $00, $00 ; 0x74 - 0x34 for underworld\n #_00DD2B: db $00, $00, $00, $00 ; 0x75 - 0x35 for underworld\n #_00DD2F: db $00, $00, $00, $00 ; 0x76 - 0x36 for underworld\n #_00DD33: db $00, $00, $00, $00 ; 0x77 - 0x37 for underworld\n #_00DD37: db $00, $00, $00, $00 ; 0x78 - 0x38 for underworld\n #_00DD3B: db $00, $00, $00, $00 ; 0x79 - 0x39 for underworld\n #_00DD3F: db $00, $00, $00, $00 ; 0x7A - 0x3A for underworld\n #_00DD43: db $00, $00, $00, $00 ; 0x7B - 0x3B for underworld\n #_00DD47: db $00, $00, $00, $00 ; 0x7C - 0x3C for underworld\n #_00DD4B: db $32, $00, $00, $08 ; 0x7D - 0x3D for underworld\n #_00DD4F: db $5D, $49, $00, $52 ; 0x7E - 0x3E for underworld\n #_00DD53: db $55, $49, $42, $43 ; 0x7F - 0x3F for underworld\n #_00DD57: db $61, $62, $63, $50 ; 0x80 - 0x40 for underworld\n #_00DD5B: db $61, $62, $63, $50 ; 0x81 - 0x41 for underworld\n #_00DD5F: db $61, $62, $63, $50 ; 0x82 - 0x42 for underworld\n #_00DD63: db $61, $62, $63, $50 ; 0x83 - 0x43 for underworld\n #_00DD67: db $61, $62, $63, $50 ; 0x84 - 0x44 for underworld\n #_00DD6B: db $61, $62, $63, $50 ; 0x85 - 0x45 for underworld\n #_00DD6F: db $61, $56, $57, $50 ; 0x86 - 0x46 for underworld\n #_00DD73: db $61, $62, $63, $50 ; 0x87 - 0x47 for underworld\n #_00DD77: db $61, $62, $63, $50 ; 0x88 - 0x48 for underworld\n #_00DD7B: db $61, $56, $57, $50 ; 0x89 - 0x49 for underworld\n #_00DD7F: db $61, $56, $63, $50 ; 0x8A - 0x4A for underworld\n #_00DD83: db $61, $56, $57, $50 ; 0x8B - 0x4B for underworld\n #_00DD87: db $61, $56, $33, $50 ; 0x8C - 0x4C for underworld\n #_00DD8B: db $61, $56, $57, $50 ; 0x8D - 0x4D for underworld\n #_00DD8F: db $61, $62, $63, $50 ; 0x8E - 0x4E for underworld\n #_00DD93: db $61, $62, $63, $50 ; 0x8F - 0x4F for underworld\n\n; =========================================================\n" + }, + { + "name": "SheetsTable_AA2", + "code": "SheetsTable_AA2:\n #_00DD97: db $06, $00, $1F, $18 ; 0x00\n #_00DD9B: db $08, $00, $22, $1B ; 0x01\n #_00DD9F: db $06, $00, $1F, $18 ; 0x02\n #_00DDA3: db $07, $00, $23, $1C ; 0x03\n #_00DDA7: db $07, $00, $21, $18 ; 0x04\n #_00DDAB: db $09, $00, $20, $19 ; 0x05\n #_00DDAF: db $0B, $00, $21, $1A ; 0x06\n #_00DDB3: db $0C, $00, $24, $19 ; 0x07\n #_00DDB7: db $08, $00, $22, $1B ; 0x08\n #_00DDBB: db $0C, $00, $25, $1B ; 0x09\n #_00DDBF: db $0C, $00, $26, $1B ; 0x0A\n #_00DDC3: db $0A, $00, $27, $1D ; 0x0B\n #_00DDC7: db $0A, $00, $28, $1E ; 0x0C\n #_00DDCB: db $0B, $00, $29, $16 ; 0x0D\n #_00DDCF: db $0D, $00, $2A, $18 ; 0x0E\n #_00DDD3: db $07, $00, $23, $1C ; 0x0F\n #_00DDD7: db $07, $00, $04, $05 ; 0x10\n #_00DDDB: db $07, $00, $04, $05 ; 0x11\n #_00DDDF: db $09, $00, $20, $1B ; 0x12\n #_00DDE3: db $09, $00, $2A, $17 ; 0x13\n #_00DDE7: db $0B, $00, $21, $1C ; 0x14\n #_00DDEB: db $09, $00, $20, $19 ; 0x15\n #_00DDEF: db $0B, $00, $21, $1A ; 0x16\n #_00DDF3: db $09, $00, $24, $1B ; 0x17\n #_00DDF7: db $08, $00, $22, $1B ; 0x18\n #_00DDFB: db $09, $00, $25, $1B ; 0x19\n #_00DDFF: db $09, $00, $26, $1B ; 0x1A\n #_00DE03: db $0A, $00, $27, $1D ; 0x1B\n #_00DE07: db $09, $00, $28, $1E ; 0x1C\n #_00DE0B: db $0C, $00, $29, $16 ; 0x1D\n #_00DE0F: db $0D, $00, $2A, $17 ; 0x1E\n #_00DE13: db $72, $00, $2B, $5D ; 0x1F\n\n #_00DE17: db $00, $00, $00, $00 ; 0x20\n #_00DE1B: db $00, $57, $4C, $00 ; 0x21\n #_00DE1F: db $00, $56, $4F, $00 ; 0x22\n #_00DE23: db $00, $53, $4D, $00 ; 0x23\n #_00DE27: db $00, $52, $49, $00 ; 0x24\n #_00DE2B: db $00, $55, $4A, $00 ; 0x25\n #_00DE2F: db $00, $53, $54, $00 ; 0x26\n #_00DE33: db $00, $51, $4E, $00 ; 0x27\n #_00DE37: db $00, $00, $00, $00 ; 0x28\n #_00DE3B: db $00, $50, $4B, $00 ; 0x29\n #_00DE3F: db $00, $53, $4D, $00 ; 0x2A\n #_00DE43: db $00, $55, $54, $00 ; 0x2B\n #_00DE47: db $00, $00, $00, $00 ; 0x2C\n #_00DE4B: db $00, $00, $00, $00 ; 0x2D\n #_00DE4F: db $00, $00, $00, $00 ; 0x2E\n #_00DE53: db $00, $47, $48, $00 ; 0x2F\n #_00DE57: db $00, $00, $00, $00 ; 0x30\n #_00DE5B: db $00, $57, $4C, $00 ; 0x31\n #_00DE5F: db $00, $56, $4F, $00 ; 0x32\n #_00DE63: db $00, $53, $4D, $00 ; 0x33\n #_00DE67: db $00, $52, $49, $00 ; 0x34\n #_00DE6B: db $00, $55, $4A, $00 ; 0x35\n #_00DE6F: db $00, $53, $54, $00 ; 0x36\n #_00DE73: db $00, $51, $4E, $00 ; 0x37\n #_00DE77: db $00, $00, $00, $00 ; 0x38\n #_00DE7B: db $00, $50, $4B, $00 ; 0x39\n #_00DE7F: db $00, $53, $00, $00 ; 0x3A\n #_00DE83: db $00, $35, $36, $00 ; 0x3B\n #_00DE87: db $00, $60, $34, $00 ; 0x3C\n #_00DE8B: db $00, $2B, $2C, $00 ; 0x3D\n #_00DE8F: db $00, $2D, $2E, $00 ; 0x3E\n #_00DE93: db $00, $2F, $30, $00 ; 0x3F\n #_00DE97: db $00, $37, $38, $00 ; 0x40\n #_00DE9B: db $00, $33, $34, $00 ; 0x41\n #_00DE9F: db $00, $31, $32, $00 ; 0x42\n #_00DEA3: db $00, $00, $00, $00 ; 0x43\n #_00DEA7: db $00, $00, $00, $00 ; 0x44\n #_00DEAB: db $00, $00, $00, $00 ; 0x45\n #_00DEAF: db $00, $00, $00, $00 ; 0x46\n #_00DEB3: db $00, $00, $00, $00 ; 0x47\n #_00DEB7: db $00, $00, $00, $00 ; 0x48\n #_00DEBB: db $00, $00, $00, $00 ; 0x49\n #_00DEBF: db $00, $00, $00, $00 ; 0x4A\n #_00DEC3: db $00, $00, $00, $00 ; 0x4B\n #_00DEC7: db $00, $00, $00, $00 ; 0x4C\n #_00DECB: db $00, $00, $00, $00 ; 0x4D\n #_00DECF: db $00, $00, $00, $00 ; 0x4E\n #_00DED3: db $00, $00, $00, $00 ; 0x4F\n #_00DED7: db $72, $71, $72, $71 ; 0x50\n #_00DEDB: db $17, $40, $41, $39 ; 0x51\n\n; =========================================================\n\npool Graphics_IncrementalVRAMUpload\n\n.vram_address_high\n #_00DEDF: db $50 ; VRAM $A000\n #_00DEE0: db $51 ; VRAM $A200\n #_00DEE1: db $52 ; VRAM $A400\n #_00DEE2: db $53 ; VRAM $A600\n #_00DEE3: db $54 ; VRAM $A800\n #_00DEE4: db $55 ; VRAM $AA00\n #_00DEE5: db $56 ; VRAM $AC00\n #_00DEE6: db $57 ; VRAM $AE00\n #_00DEE7: db $58 ; VRAM $B000\n #_00DEE8: db $59 ; VRAM $B200\n #_00DEE9: db $5A ; VRAM $B400\n #_00DEEA: db $5B ; VRAM $B600\n #_00DEEB: db $5C ; VRAM $B800\n #_00DEEC: db $5D ; VRAM $BA00\n #_00DEED: db $5E ; VRAM $BC00\n #_00DEEE: db $5F ; VRAM $BE00\n\n; ---------------------------------------------------------\n\n.buffer_address_high\n #_00DEEF: db $7F0000>>8 ; $50\n #_00DEF0: db $7F0200>>8 ; $51\n #_00DEF1: db $7F0400>>8 ; $52\n #_00DEF2: db $7F0600>>8 ; $53\n #_00DEF3: db $7F0800>>8 ; $54\n #_00DEF4: db $7F0A00>>8 ; $55\n #_00DEF5: db $7F0C00>>8 ; $56\n #_00DEF6: db $7F0E00>>8 ; $57\n #_00DEF7: db $7F1000>>8 ; $58\n #_00DEF8: db $7F1200>>8 ; $59\n #_00DEF9: db $7F1400>>8 ; $5A\n #_00DEFA: db $7F1600>>8 ; $5B\n #_00DEFB: db $7F1800>>8 ; $5C\n #_00DEFC: db $7F1A00>>8 ; $5D\n #_00DEFD: db $7F1C00>>8 ; $5E\n #_00DEFE: db $7F1E00>>8 ; $5F\n\npool off\n\n; ---------------------------------------------------------\n" + }, + { + "name": "Graphics_IncrementalVRAMUpload", + "code": "Graphics_IncrementalVRAMUpload:\n #_00DEFF: LDX.w $0412\n #_00DF02: CPX.b #$10\n #_00DF04: BEQ .exit\n\n #_00DF06: LDA.l .vram_address_high,X\n #_00DF0A: STA.b $19\n\n #_00DF0C: STZ.w $0118\n\n #_00DF0F: LDA.l .buffer_address_high,X\n #_00DF13: STA.w $0119\n\n #_00DF16: INC.w $0412\n\n.exit\n #_00DF19: RTL" + }, + { + "name": "PrepTransAuxGfx", + "code": "PrepTransAuxGfx:\n #_00DF1A: LDA.b #$7E\n #_00DF1C: STA.b $02\n #_00DF1E: STA.b $05\n\n #_00DF20: REP #$31\n\n #_00DF22: LDX.w #$0000\n #_00DF25: LDY.w #$0040\n #_00DF28: LDA.w #$7E6000\n #_00DF2B: JSR Do3To4High16Bit\n\n #_00DF2E: LDY.w #$00C0\n\n #_00DF31: LDA.w $0AA2\n #_00DF34: AND.w #$00FF\n #_00DF37: CMP.w #$0020\n #_00DF3A: BCC .left_side_palettes\n\n #_00DF3C: LDY.w #$0080\n\n #_00DF3F: LDA.b $03\n #_00DF41: JSR Do3To4High16Bit\n\n #_00DF44: LDY.w #$0040\n\n.left_side_palettes\n #_00DF47: LDA.b $03\n #_00DF49: JSR Do3To4Low16Bit\n\n #_00DF4C: SEP #$30\n\n #_00DF4E: RTL" + }, + { + "name": "Do3To4High16Bit", + "code": "Do3To4High16Bit:\n #_00DF4F: STY.b $0C\n\n.next_tile\n #_00DF51: STA.b $00\n\n #_00DF53: CLC\n #_00DF54: ADC.w #$0010\n #_00DF57: STA.b $03\n\n #_00DF59: LDY.w #$0003\n\n.next_convert\n #_00DF5C: LDA.b [$00]\n #_00DF5E: STA.l $7F0000,X\n\n #_00DF62: XBA\n #_00DF63: ORA.b [$00]\n #_00DF65: AND.w #$00FF\n #_00DF68: STA.b $08\n\n #_00DF6A: INC.b $00\n #_00DF6C: INC.b $00\n\n #_00DF6E: LDA.b [$03]\n #_00DF70: AND.w #$00FF\n #_00DF73: STA.b $0A\n\n #_00DF75: ORA.b $08\n #_00DF77: XBA\n #_00DF78: ORA.b $0A\n #_00DF7A: STA.l $7F0010,X\n\n #_00DF7E: INC.b $03\n\n #_00DF80: INX\n #_00DF81: INX\n\n #_00DF82: LDA.b [$00]\n #_00DF84: STA.l $7F0000,X\n\n #_00DF88: XBA\n #_00DF89: ORA.b [$00]\n #_00DF8B: AND.w #$00FF\n #_00DF8E: STA.b $08\n\n #_00DF90: INC.b $00\n #_00DF92: INC.b $00\n\n #_00DF94: LDA.b [$03]\n #_00DF96: AND.w #$00FF\n #_00DF99: STA.b $0A\n\n #_00DF9B: ORA.b $08\n #_00DF9D: XBA\n #_00DF9E: ORA.b $0A\n #_00DFA0: STA.l $7F0010,X\n\n #_00DFA4: INC.b $03\n\n #_00DFA6: INX\n #_00DFA7: INX\n\n #_00DFA8: DEY\n #_00DFA9: BPL .next_convert\n\n #_00DFAB: TXA\n #_00DFAC: CLC\n #_00DFAD: ADC.w #$0010\n #_00DFB0: TAX\n\n #_00DFB1: LDA.b $03\n\n #_00DFB3: DEC.b $0C\n #_00DFB5: BNE .next_tile\n\n #_00DFB7: RTS" + }, + { + "name": "Do3To4Low16Bit", + "code": "Do3To4Low16Bit:\n #_00DFB8: STY.b $0C\n\n.next_tile\n #_00DFBA: STA.b $00\n\n #_00DFBC: CLC\n #_00DFBD: ADC.w #$0010\n #_00DFC0: STA.b $03\n\n #_00DFC2: LDY.w #$0001\n\n.next_convert\n #_00DFC5: LDA.b [$00]\n #_00DFC7: STA.l $7F0000,X\n\n #_00DFCB: INC.b $00\n #_00DFCD: INC.b $00\n\n #_00DFCF: LDA.b [$03]\n #_00DFD1: AND.w #$00FF\n #_00DFD4: STA.l $7F0010,X\n\n #_00DFD8: INC.b $03\n\n #_00DFDA: INX\n #_00DFDB: INX\n\n #_00DFDC: LDA.b [$00]\n #_00DFDE: STA.l $7F0000,X\n\n #_00DFE2: INC.b $00\n #_00DFE4: INC.b $00\n\n #_00DFE6: LDA.b [$03]\n #_00DFE8: AND.w #$00FF\n #_00DFEB: STA.l $7F0010,X\n\n #_00DFEF: INC.b $03\n\n #_00DFF1: INX\n #_00DFF2: INX\n\n #_00DFF3: LDA.b [$00]\n #_00DFF5: STA.l $7F0000,X\n\n #_00DFF9: INC.b $00\n #_00DFFB: INC.b $00\n\n #_00DFFD: LDA.b [$03]\n #_00DFFF: AND.w #$00FF\n #_00E002: STA.l $7F0010,X\n\n #_00E006: INC.b $03\n\n #_00E008: INX\n #_00E009: INX\n\n #_00E00A: LDA.b [$00]\n #_00E00C: STA.l $7F0000,X\n\n #_00E010: INC.b $00\n #_00E012: INC.b $00\n\n #_00E014: LDA.b [$03]\n #_00E016: AND.w #$00FF\n #_00E019: STA.l $7F0010,X\n\n #_00E01D: INC.b $03\n\n #_00E01F: INX\n #_00E020: INX\n\n #_00E021: DEY\n #_00E022: BPL .next_convert\n\n #_00E024: TXA\n #_00E025: CLC\n #_00E026: ADC.w #$0010\n #_00E029: TAX\n\n #_00E02A: LDA.b $03\n\n #_00E02C: DEC.b $0C\n #_00E02E: BNE .next_tile\n\n #_00E030: RTS" + }, + { + "name": "LoadNewSpriteGFXSet", + "code": "LoadNewSpriteGFXSet:\n #_00E031: LDA.b #$7E\n #_00E033: STA.b $02\n #_00E035: STA.b $05\n\n #_00E037: REP #$31\n\n #_00E039: LDX.w #$0000\n\n #_00E03C: LDA.w #$7E7800\n #_00E03F: LDY.w #$00C0\n #_00E042: JSR Do3To4Low16Bit\n\n #_00E045: LDY.w #$0040\n\n #_00E048: LDA.l $7EC2FF\n #_00E04C: AND.w #$00FF\n #_00E04F: CMP.w #$0052\n #_00E052: BEQ .right_side\n\n #_00E054: CMP.w #$0053\n #_00E057: BEQ .right_side\n\n #_00E059: CMP.w #$005A\n #_00E05C: BEQ .right_side\n\n #_00E05E: CMP.w #$005B\n #_00E061: BNE .left_side\n\n.right_side\n #_00E063: LDA.b $03\n #_00E065: JSR Do3To4High16Bit\n\n #_00E068: SEP #$30\n\n #_00E06A: RTL" + }, + { + "name": "SheetsTable_AA1", + "code": "SheetsTable_AA1:\n; Underworld\n #_00E073: db $00, $01, $10, $06, $0E, $1F, $18, $0F ; 0x00\n #_00E07B: db $00, $01, $10, $08, $0E, $22, $1B, $0F ; 0x01\n #_00E083: db $00, $01, $10, $06, $0E, $1F, $18, $0F ; 0x02\n #_00E08B: db $00, $01, $13, $07, $0E, $23, $1C, $0F ; 0x03\n #_00E093: db $00, $01, $10, $07, $0E, $21, $18, $0F ; 0x04\n #_00E09B: db $00, $01, $10, $09, $0E, $20, $19, $0F ; 0x05\n #_00E0A3: db $02, $03, $12, $0B, $0E, $21, $1A, $0F ; 0x06\n #_00E0AB: db $00, $01, $11, $0C, $0E, $24, $1B, $0F ; 0x07\n #_00E0B3: db $00, $01, $11, $08, $0E, $22, $1B, $0F ; 0x08\n #_00E0BB: db $00, $01, $11, $0C, $0E, $25, $1A, $0F ; 0x09\n #_00E0C3: db $00, $01, $11, $0C, $0E, $26, $1B, $0F ; 0x0A\n #_00E0CB: db $00, $01, $14, $0A, $0E, $27, $1D, $0F ; 0x0B\n #_00E0D3: db $00, $01, $11, $0A, $0E, $28, $1E, $0F ; 0x0C\n #_00E0DB: db $02, $03, $12, $0B, $0E, $29, $16, $0F ; 0x0D\n #_00E0E3: db $00, $01, $15, $0D, $0E, $2A, $18, $0F ; 0x0E\n #_00E0EB: db $00, $01, $10, $07, $0E, $23, $1C, $0F ; 0x0F\n #_00E0F3: db $00, $01, $13, $07, $0E, $04, $05, $0F ; 0x10\n #_00E0FB: db $00, $01, $13, $07, $0E, $04, $05, $0F ; 0x11\n #_00E103: db $00, $01, $10, $09, $0E, $20, $1B, $0F ; 0x12\n #_00E10B: db $00, $01, $10, $09, $0E, $2A, $17, $0F ; 0x13\n #_00E113: db $02, $03, $12, $0B, $0E, $21, $1C, $0F ; 0x14\n\n #_00E11B: db $00, $08, $11, $1B, $22, $2E, $5D, $5B ; 0x15\n #_00E123: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x16\n #_00E12B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x17\n\n; Overworld\n #_00E133: db $3A, $3B, $3C, $3D, $53, $4D, $3E, $5B ; 0x18\n #_00E13B: db $42, $43, $44, $45, $20, $2B, $3F, $5D ; 0x19\n #_00E143: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1A\n #_00E14B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1B\n #_00E153: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1C\n #_00E15B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1D\n #_00E163: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1E\n #_00E16B: db $71, $72, $71, $72, $20, $2B, $5D, $5B ; 0x1F\n #_00E173: db $3A, $3B, $3C, $3D, $53, $4D, $3E, $5B ; 0x20\n #_00E17B: db $42, $43, $44, $45, $20, $2B, $3F, $59 ; 0x21\n #_00E183: db $00, $72, $71, $72, $20, $2B, $5D, $0F ; 0x22\n #_00E18B: db $16, $39, $1D, $17, $40, $41, $39, $1E ; 0x23\n #_00E193: db $00, $46, $39, $72, $40, $41, $39, $0F ; 0x24\n\n; =========================================================\n" + }, + { + "name": "InitializeTilesets", + "code": "InitializeTilesets:\n #_00E19B: PHB\n #_00E19C: PHK\n #_00E19D: PLB\n\n #_00E19E: LDA.b #$80\n #_00E1A0: STA.w VMAIN\n\n #_00E1A3: STZ.w VMADDL\n\n #_00E1A6: LDA.b #$44 ; VRAM $8800\n #_00E1A8: STA.w VMADDH\n\n #_00E1AB: JSR LoadCommonSprites\n\n #_00E1AE: REP #$30\n\n #_00E1B0: LDA.w $0AA3\n #_00E1B3: AND.w #$00FF\n #_00E1B6: ASL A\n #_00E1B7: ASL A\n #_00E1B8: TAY\n\n #_00E1B9: SEP #$20\n\n #_00E1BB: LDA.w SheetsTable_AA3+0,Y\n #_00E1BE: BEQ .dont_change_a\n\n #_00E1C0: STA.l $7EC2FC\n\n.dont_change_a\n #_00E1C4: LDA.l $7EC2FC\n #_00E1C8: STA.b $09\n\n #_00E1CA: LDA.w SheetsTable_AA3+1,Y\n #_00E1CD: BEQ .dont_change_b\n\n #_00E1CF: STA.l $7EC2FD\n\n.dont_change_b\n #_00E1D3: LDA.l $7EC2FD\n #_00E1D7: STA.b $08\n\n #_00E1D9: LDA.w SheetsTable_AA3+2,Y\n #_00E1DC: BEQ .dont_change_c\n\n #_00E1DE: STA.l $7EC2FE\n\n.dont_change_c\n #_00E1E2: LDA.l $7EC2FE\n #_00E1E6: STA.b $07\n\n #_00E1E8: LDA.w SheetsTable_AA3+3,Y\n #_00E1EB: BEQ .dont_change_d\n\n #_00E1ED: STA.l $7EC2FF\n\n.dont_change_d\n #_00E1F1: LDA.l $7EC2FF\n #_00E1F5: STA.b $06\n\n; ---------------------------------------------------------\n\n #_00E1F7: SEP #$10\n\n #_00E1F9: LDY.b $09\n\n #_00E1FB: LDA.b #$7E\n #_00E1FD: STA.b $02\n\n #_00E1FF: LDX.b #$78\n #_00E201: JSR LoadSpriteGraphics\n\n #_00E204: LDY.b $08\n #_00E206: LDX.b #$7E\n #_00E208: JSR LoadSpriteGraphics\n\n #_00E20B: LDY.b $07\n #_00E20D: LDX.b #$84\n #_00E20F: JSR LoadSpriteGraphics\n\n #_00E212: LDY.b $06\n #_00E214: LDX.b #$8A\n #_00E216: JSR LoadSpriteGraphics\n\n #_00E219: REP #$30\n\n #_00E21B: LDA.w #$2000 ; VRAM $4000\n #_00E21E: STA.w VMADDR\n\n #_00E221: LDA.w $0AA1\n #_00E224: AND.w #$00FF\n #_00E227: ASL A\n #_00E228: ASL A\n #_00E229: ASL A\n #_00E22A: TAY\n\n #_00E22B: LDA.w $0AA2\n #_00E22E: AND.w #$00FF\n #_00E231: ASL A\n #_00E232: ASL A\n #_00E233: TAX\n\n #_00E234: SEP #$20\n\n #_00E236: LDA.w SheetsTable_AA1+0,Y\n #_00E239: STA.b $0D\n\n #_00E23B: LDA.w SheetsTable_AA1+1,Y\n #_00E23E: STA.b $0C\n\n #_00E240: LDA.w SheetsTable_AA1+2,Y\n #_00E243: STA.b $0B\n\n #_00E245: LDA.w SheetsTable_AA2+0,X\n #_00E248: BNE .not_default_a\n\n #_00E24A: LDA.w SheetsTable_AA1+3,Y\n\n.not_default_a\n #_00E24D: STA.l $7EC2F8\n #_00E251: STA.b $0A\n\n #_00E253: LDA.w SheetsTable_AA2+1,X\n #_00E256: BNE .not_default_b\n\n #_00E258: LDA.w SheetsTable_AA1+4,Y\n\n.not_default_b\n #_00E25B: STA.l $7EC2F9\n #_00E25F: STA.b $09\n\n #_00E261: LDA.w SheetsTable_AA2+2,X\n #_00E264: BNE .not_default_c\n\n #_00E266: LDA.w SheetsTable_AA1+5,Y\n\n.not_default_c\n #_00E269: STA.l $7EC2FA\n #_00E26D: STA.b $08\n\n #_00E26F: LDA.w SheetsTable_AA2+3,X\n #_00E272: BNE .not_default_d\n\n #_00E274: LDA.w SheetsTable_AA1+6,Y\n\n.not_default_d\n #_00E277: STA.l $7EC2FB\n #_00E27B: STA.b $07\n\n; ---------------------------------------------------------\n\n #_00E27D: LDA.w SheetsTable_AA1+7,Y\n #_00E280: STA.b $06\n\n #_00E282: SEP #$10\n\n #_00E284: LDA.b #$07\n #_00E286: STA.b $0F\n\n #_00E288: LDY.b $0D\n #_00E28A: JSR LoadBackgroundGraphics\n\n #_00E28D: DEC.b $0F\n\n #_00E28F: LDY.b $0C\n #_00E291: JSR LoadBackgroundGraphics\n\n #_00E294: DEC.b $0F\n\n #_00E296: LDY.b $0B\n #_00E298: JSR LoadBackgroundGraphics\n\n #_00E29B: DEC.b $0F\n\n #_00E29D: LDY.b $0A\n #_00E29F: LDA.b #$7E\n #_00E2A1: LDX.b #$60\n #_00E2A3: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2A6: DEC.b $0F\n\n #_00E2A8: LDY.b $09\n #_00E2AA: LDA.b #$7E\n #_00E2AC: LDX.b #$66\n #_00E2AE: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2B1: DEC.b $0F\n\n #_00E2B3: LDY.b $08\n #_00E2B5: LDA.b #$7E\n #_00E2B7: LDX.b #$6C\n #_00E2B9: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2BC: DEC.b $0F\n\n #_00E2BE: LDY.b $07\n #_00E2C0: LDA.b #$7E\n #_00E2C2: LDX.b #$72\n #_00E2C4: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2C7: DEC.b $0F\n\n #_00E2C9: LDY.b $06\n #_00E2CB: JSR LoadBackgroundGraphics\n\n #_00E2CE: PLB\n\n #_00E2CF: RTL" + }, + { + "name": "LoadDefaultGraphics", + "code": "LoadDefaultGraphics:\n #_00E2D0: PHB\n #_00E2D1: PHK\n #_00E2D2: PLB\n\n #_00E2D3: LDA.b #$80\n #_00E2D5: STA.w VMAIN\n\n #_00E2D8: LDA.w GFXSheetPointers_sprite_bank\n #_00E2DB: STA.b $02\n\n #_00E2DD: LDA.w GFXSheetPointers_sprite_high\n #_00E2E0: STA.b $01\n\n #_00E2E2: LDA.w GFXSheetPointers_sprite_low\n #_00E2E5: STA.b $00\n\n #_00E2E7: REP #$20\n\n #_00E2E9: LDA.w #$4000 ; VRAM $8000\n #_00E2EC: STA.w VMADDR\n\n #_00E2EF: LDY.b #$40\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E2F1: LDX.b #$0E\n\n.next_planes_a\n #_00E2F3: LDA.b [$00]\n #_00E2F5: STA.w VMDATA\n\n #_00E2F8: XBA\n #_00E2F9: ORA.b [$00]\n #_00E2FB: AND.w #$00FF\n #_00E2FE: STA.b $BF,X\n\n #_00E300: INC.b $00\n #_00E302: INC.b $00\n\n #_00E304: DEX\n #_00E305: DEX\n #_00E306: BPL .next_planes_a\n\n #_00E308: LDX.b #$0E\n\n.next_planes_b\n #_00E30A: LDA.b [$00]\n #_00E30C: AND.w #$00FF\n #_00E30F: STA.b $BD\n\n #_00E311: ORA.b $BF,X\n #_00E313: XBA\n #_00E314: ORA.b $BD\n #_00E316: STA.w VMDATA\n\n #_00E319: INC.b $00\n\n #_00E31B: DEX\n #_00E31C: DEX\n #_00E31D: BPL .next_planes_b\n\n #_00E31F: DEY\n #_00E320: BNE .next_tile\n\n; ---------------------------------------------------------\n\n #_00E322: LDA.w #$7000 ; VRAM $E000\n #_00E325: STA.w VMADDR\n\n #_00E328: SEP #$20\n\n #_00E32A: LDY.b #$6A\n #_00E32C: JSR DecompressAndCopyManually\n\n #_00E32F: LDY.b #$6B\n #_00E331: JSR DecompressAndCopyManually\n\n #_00E334: LDY.b #$69\n #_00E336: JSR DecompressAndCopyManually\n\n #_00E339: PLB\n\n #_00E33A: RTL" + }, + { + "name": "DecompressAndCopyManually", + "code": "DecompressAndCopyManually:\n #_00E33B: JSR Decompress_sprite_low\n\n #_00E33E: REP #$30\n\n #_00E340: LDX.w #$00FF\n\n.copy_next\n #_00E343: LDA.b [$00]\n #_00E345: STA.w VMDATA\n\n #_00E348: INC.b $00\n #_00E34A: INC.b $00\n\n #_00E34C: LDA.b [$00]\n #_00E34E: STA.w VMDATA\n\n #_00E351: INC.b $00\n #_00E353: INC.b $00\n\n #_00E355: LDA.b [$00]\n #_00E357: STA.w VMDATA\n\n #_00E35A: INC.b $00\n #_00E35C: INC.b $00\n\n #_00E35E: LDA.b [$00]\n #_00E360: STA.w VMDATA\n\n #_00E363: INC.b $00\n #_00E365: INC.b $00\n\n #_00E367: DEX\n #_00E368: BPL .copy_next\n\n #_00E36A: SEP #$30\n\n #_00E36C: RTS" + }, + { + "name": "Attract_LoadBG3GFX", + "code": "Attract_LoadBG3GFX:\n #_00E36D: PHB\n #_00E36E: PHK\n #_00E36F: PLB\n\n #_00E370: LDA.b #$80\n #_00E372: STA.w VMAIN\n #_00E375: STZ.w VMADDL\n\n #_00E378: LDA.b #$78\n #_00E37A: STA.w VMADDH\n\n #_00E37D: LDY.b #$67\n #_00E37F: JSR DecompressAndCopyManually\n\n #_00E382: PLB\n\n #_00E383: RTL" + }, + { + "name": "LoadCommonSprites_long", + "code": "LoadCommonSprites_long:\n #_00E384: PHB\n #_00E385: PHK\n #_00E386: PLB\n\n #_00E387: LDA.b #$80\n #_00E389: STA.w VMAIN\n\n #_00E38C: STZ.w VMADDL\n\n #_00E38F: LDA.b #$44 ; VRAM $8800\n #_00E391: STA.w VMADDH\n\n #_00E394: JSR LoadCommonSprites\n\n #_00E397: PLB\n\n #_00E398: RTL" + }, + { + "name": "TransferMode7Characters", + "code": "TransferMode7Characters:\n #_00E399: LDA.b #WorldMap_Mode7TileGFX>>16\n #_00E39B: STA.b $02\n\n #_00E39D: LDA.b #$80\n #_00E39F: STA.w VMAIN\n\n #_00E3A2: STZ.w VMADDL ; VRAM $0000\n #_00E3A5: STZ.w VMADDH\n\n #_00E3A8: REP #$10\n\n #_00E3AA: LDY.w #WorldMap_Mode7TileGFX>>0\n #_00E3AD: STY.b $00\n\n; ---------------------------------------------------------\n\n #_00E3AF: LDY.w #$0000\n\n.next\n #_00E3B2: LDA.b [$00],Y\n #_00E3B4: STA.w VMDATAH\n\n #_00E3B7: INY\n #_00E3B8: LDA.b [$00],Y\n #_00E3BA: STA.w VMDATAH\n\n #_00E3BD: INY\n #_00E3BE: LDA.b [$00],Y\n #_00E3C0: STA.w VMDATAH\n\n #_00E3C3: INY\n #_00E3C4: LDA.b [$00],Y\n #_00E3C6: STA.w VMDATAH\n\n #_00E3C9: INY\n #_00E3CA: CPY.w #$4000\n #_00E3CD: BNE .next\n\n #_00E3CF: SEP #$10\n\n; ---------------------------------------------------------\n\n#EXIT_00E3D1:\n #_00E3D1: RTL" + }, + { + "name": "Graphics_LoadChrHalfSlot", + "code": "Graphics_LoadChrHalfSlot:\n #_00E3FA: LDX.w $0AAA\n #_00E3FD: BEQ EXIT_00E3D1\n\n #_00E3FF: PHB\n #_00E400: PHK\n #_00E401: PLB\n\n #_00E402: LDA.w .palette_id-1,X\n #_00E405: BMI .done_palette\n\n #_00E407: STA.w $0AB1\n\n #_00E40A: CPX.b #$01\n #_00E40C: BNE .not_sheet_1\n\n #_00E40E: LDA.b #$0A\n #_00E410: STA.w $0AB1\n\n #_00E413: LDA.b #$02\n #_00E415: STA.w $0AA9\n\n #_00E418: JSL Palettes_Load_SpriteEnvironment\n\n #_00E41C: INC.b $15\n\n #_00E41E: BRA .done_palette\n\n.not_sheet_1\n #_00E420: LDA.b #$02\n #_00E422: STA.w $0AA9\n\n #_00E425: JSL Palettes_Load_SpriteEnvironment_Underworld\n\n #_00E429: INC.b $15\n\n; ---------------------------------------------------------\n\n.done_palette\n #_00E42B: LDX.w $0AAA\n\n #_00E42E: LDY.b #$44\n\n #_00E430: STZ.b $08\n #_00E432: STZ.b $09\n\n #_00E434: INC.w $0AAA\n\n #_00E437: LDA.w $0AAA\n #_00E43A: LSR A\n #_00E43B: BCC .dont_reset_medallion_flags\n\n #_00E43D: STZ.w $0AAA\n\n #_00E440: CPX.b #$12\n #_00E442: BEQ .dont_reset_medallion_flags\n\n #_00E444: LDA.b #$03\n #_00E446: STA.b $09\n\n #_00E448: LDY.b #$46\n #_00E44A: CPX.b #$02\n #_00E44C: BNE .dont_reset_medallion_flags\n\n #_00E44E: STZ.w $0112\n\n.dont_reset_medallion_flags\n #_00E451: STY.w $0116\n\n #_00E454: LDA.b #$0B\n #_00E456: STA.b $17\n\n #_00E458: LDY.w .sheet_id-1,X\n #_00E45B: CPY.b #$01\n #_00E45D: BNE .dont_reload_from_tileset\n\n #_00E45F: LDY.w $0AA4\n\n.dont_reload_from_tileset\n #_00E462: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E465: STA.b $02\n #_00E467: STA.b $05\n\n #_00E469: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E46C: STA.b $01\n\n #_00E46E: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E471: STA.b $00\n\n #_00E473: REP #$31\n\n #_00E475: LDY.w #$0020\n #_00E478: STY.b $0C\n\n #_00E47A: LDX.w #$0000\n\n #_00E47D: LDA.b $00\n #_00E47F: ADC.b $08\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E481: STA.b $00\n\n #_00E483: CLC\n #_00E484: ADC.w #$0010\n #_00E487: BNE .no_bank_cross_1\n\n #_00E489: LDA.w #$8000\n #_00E48C: INC.b $05\n\n.no_bank_cross_1\n #_00E48E: STA.b $03\n\n #_00E490: LDY.w #$0007\n\n.next_plane\n #_00E493: LDA.b [$00]\n #_00E495: STA.l $7F1000,X\n\n #_00E499: XBA\n #_00E49A: ORA.b [$00]\n #_00E49C: AND.w #$00FF\n #_00E49F: STA.b $08\n\n #_00E4A1: INC.b $00\n #_00E4A3: INC.b $00\n #_00E4A5: BNE .no_bank_cross_2\n\n #_00E4A7: LDA.b $03\n #_00E4A9: INC A\n #_00E4AA: STA.b $00\n\n #_00E4AC: INC.b $02\n\n #_00E4AE: LDA.b $02\n #_00E4B0: STA.b $05\n\n.no_bank_cross_2\n #_00E4B2: LDA.b [$03]\n #_00E4B4: AND.w #$00FF\n #_00E4B7: STA.b $0A\n\n #_00E4B9: ORA.b $08\n #_00E4BB: XBA\n #_00E4BC: ORA.b $0A\n #_00E4BE: STA.l $7F1010,X\n\n #_00E4C2: INC.b $03\n #_00E4C4: BNE .no_bank_cross_3\n\n #_00E4C6: LDA.w #$8000\n #_00E4C9: STA.b $00\n\n #_00E4CB: LDA.w #$8010\n #_00E4CE: STA.b $03\n\n #_00E4D0: INC.b $02\n #_00E4D2: INC.b $05\n\n.no_bank_cross_3\n #_00E4D4: INX\n #_00E4D5: INX\n\n #_00E4D6: DEY\n #_00E4D7: BPL .next_plane\n\n #_00E4D9: TXA\n #_00E4DA: CLC\n #_00E4DB: ADC.w #$0010\n #_00E4DE: TAX\n\n #_00E4DF: LDA.b $03\n\n #_00E4E1: DEC.b $0C\n #_00E4E3: BNE .next_tile\n\n #_00E4E5: SEP #$30\n\n #_00E4E7: PLB\n\n #_00E4E8: RTL" + }, + { + "name": "LoadFileSelectGraphics", + "code": "LoadFileSelectGraphics:\n #_00E4E9: LDA.b #$02\n #_00E4EB: STA.w OBSEL\n\n #_00E4EE: LDA.b #$80\n #_00E4F0: STA.w VMAIN\n #_00E4F3: STZ.w VMADDL\n\n #_00E4F6: LDA.b #$50 ; VRAM $A000\n #_00E4F8: STA.w VMADDH\n\n; ---------------------------------------------------------\n\n #_00E4FB: PHB\n #_00E4FC: PHK\n #_00E4FD: PLB\n\n #_00E4FE: LDY.b #$5E\n #_00E500: JSR Decompress_sprite_low\n\n #_00E503: REP #$20\n\n #_00E505: LDY.b #$3F\n #_00E507: JSR Do3To4High\n\n #_00E50A: LDY.b #$5F\n #_00E50C: JSR Decompress_sprite_low\n\n #_00E50F: REP #$20\n\n #_00E511: LDY.b #$3F\n #_00E513: JSR Do3To4High\n\n #_00E516: PLB\n\n; ---------------------------------------------------------\n\n #_00E517: LDA.b #TheFont>>16\n #_00E519: STA.b $02\n\n #_00E51B: REP #$30\n\n #_00E51D: LDA.w #$7000 ; VRAM $E000\n #_00E520: STA.w VMADDR\n\n #_00E523: LDA.w #TheFont\n #_00E526: STA.b $00\n\n #_00E528: LDX.w #(TheFont_end-TheFont)/2-1\n\n.next_a\n #_00E52B: LDA.b [$00]\n #_00E52D: STA.w VMDATA\n\n #_00E530: INC.b $00\n #_00E532: INC.b $00\n\n #_00E534: DEX\n #_00E535: BPL .next_a\n\n; ---------------------------------------------------------\n\n #_00E537: SEP #$30\n\n #_00E539: PHB\n #_00E53A: PHK\n #_00E53B: PLB\n\n #_00E53C: LDY.b #$6B\n #_00E53E: JSR Decompress_sprite_low\n\n #_00E541: REP #$30\n\n #_00E543: LDX.w #$02FF\n\n.next_b\n #_00E546: LDA.b [$00]\n #_00E548: STA.w VMDATA\n\n #_00E54B: INC.b $00\n #_00E54D: INC.b $00\n\n #_00E54F: DEX\n #_00E550: BPL .next_b\n\n #_00E552: SEP #$30\n\n #_00E554: PLB\n\n #_00E555: RTL" + }, + { + "name": "TransferFontToVRAM", + "code": "TransferFontToVRAM:\n #_00E556: LDA.b #$02\n #_00E558: STA.w OBSEL\n\n #_00E55B: LDA.b #$80\n #_00E55D: STA.w VMAIN\n\n #_00E560: LDA.b #TheFont>>16\n #_00E562: STA.b $02\n\n #_00E564: REP #$30\n\n #_00E566: LDA.w #$7000 ; VRAM $E000\n #_00E569: STA.w VMADDR\n\n #_00E56C: LDA.w #TheFont\n #_00E56F: STA.b $00\n\n #_00E571: LDX.w #(TheFont_end-TheFont)/2-1\n\n.next\n #_00E574: LDA.b [$00]\n #_00E576: STA.w VMDATA\n\n #_00E579: INC.b $00\n #_00E57B: INC.b $00\n\n #_00E57D: DEX\n #_00E57E: BPL .next\n\n #_00E580: SEP #$30\n\n #_00E582: RTL" + }, + { + "name": "LoadSpriteGraphics", + "code": "LoadSpriteGraphics:\n #_00E583: STZ.b $00\n #_00E585: STX.b $01\n\n #_00E587: PHY\n\n #_00E588: JSR Decompress_sprite_arbitrary\n\n #_00E58B: REP #$20\n\n #_00E58D: LDY.b #$3F\n\n #_00E58F: PLX\n\n #_00E590: CPX.b #$52\n #_00E592: BEQ Do3To4High\n\n #_00E594: CPX.b #$53\n #_00E596: BEQ Do3To4High\n\n #_00E598: CPX.b #$5A\n #_00E59A: BEQ Do3To4High\n\n #_00E59C: CPX.b #$5B\n #_00E59E: BEQ Do3To4High\n\n #_00E5A0: CPX.b #$5C\n #_00E5A2: BEQ Do3To4High\n\n #_00E5A4: CPX.b #$5E\n #_00E5A6: BEQ Do3To4High\n\n #_00E5A8: CPX.b #$5F\n #_00E5AA: BEQ Do3To4High\n\n #_00E5AC: JMP.w Do3To4Low\n\n; =========================================================\n" + }, + { + "name": "Do3To4High", + "code": "Do3To4High:\n.next_tile\n #_00E5AF: LDX.b #$0E\n\n.next_planes_a\n #_00E5B1: LDA.b [$00]\n #_00E5B3: STA.w VMDATA\n\n #_00E5B6: XBA\n #_00E5B7: ORA.b [$00]\n #_00E5B9: AND.w #$00FF\n #_00E5BC: STA.b $BF,X\n\n #_00E5BE: INC.b $00\n #_00E5C0: INC.b $00\n\n #_00E5C2: DEX\n #_00E5C3: DEX\n\n #_00E5C4: LDA.b [$00]\n #_00E5C6: STA.w VMDATA\n\n #_00E5C9: XBA\n #_00E5CA: ORA.b [$00]\n #_00E5CC: AND.w #$00FF\n #_00E5CF: STA.b $BF,X\n\n #_00E5D1: INC.b $00\n #_00E5D3: INC.b $00\n\n #_00E5D5: DEX\n #_00E5D6: DEX\n #_00E5D7: BPL .next_planes_a\n\n; ---------------------------------------------------------\n\n #_00E5D9: LDX.b #$0E\n\n.next_planes_b\n #_00E5DB: LDA.b [$00]\n #_00E5DD: AND.w #$00FF\n #_00E5E0: STA.b $BD\n\n #_00E5E2: ORA.b $BF,X\n #_00E5E4: XBA\n #_00E5E5: ORA.b $BD\n #_00E5E7: STA.w VMDATA\n #_00E5EA: INC.b $00\n\n #_00E5EC: DEX\n #_00E5ED: DEX\n\n #_00E5EE: LDA.b [$00]\n #_00E5F0: AND.w #$00FF\n #_00E5F3: STA.b $BD\n\n #_00E5F5: ORA.b $BF,X\n #_00E5F7: XBA\n #_00E5F8: ORA.b $BD\n #_00E5FA: STA.w VMDATA\n\n #_00E5FD: INC.b $00\n\n #_00E5FF: DEX\n #_00E600: DEX\n #_00E601: BPL .next_planes_b\n\n #_00E603: DEY\n #_00E604: BPL .next_tile\n\n #_00E606: SEP #$20\n\n #_00E608: RTS" + }, + { + "name": "LoadBackgroundGraphics", + "code": "LoadBackgroundGraphics:\n #_00E609: LDA.b #$7F4000>>16\n #_00E60B: LDX.b #$7F4000>>8\n\n.arbitrary\n #_00E60D: STZ.b $00\n #_00E60F: STX.b $01\n #_00E611: STA.b $02\n\n #_00E613: JSR Decompress_background_arbitrary\n\n #_00E616: REP #$20\n\n #_00E618: LDY.b #$3F\n\n #_00E61A: LDX.w $0AA1\n #_00E61D: CPX.b #$20\n #_00E61F: BCC .do_low\n\n #_00E621: LDX.b $0F\n #_00E623: CPX.b #$07\n #_00E625: BEQ Do3To4High\n\n #_00E627: CPX.b #$02\n #_00E629: BEQ Do3To4High\n\n #_00E62B: CPX.b #$04\n #_00E62D: BEQ Do3To4High\n\n #_00E62F: CPX.b #$03\n #_00E631: BNE Do3To4Low\n\n.nevermind_do_high\n #_00E633: JMP.w Do3To4High\n\n.do_low\n #_00E636: LDX.b $0F\n #_00E638: CPX.b #$04\n #_00E63A: BCS .nevermind_do_high\n\n; =========================================================\n" + }, + { + "name": "Do3To4Low", + "code": "Do3To4Low:\n\n.next_super\n #_00E63C: LDA.b [$00]\n #_00E63E: STA.w VMDATA\n\n #_00E641: INC.b $00\n #_00E643: INC.b $00\n\n #_00E645: LDA.b [$00]\n #_00E647: STA.w VMDATA\n\n #_00E64A: INC.b $00\n #_00E64C: INC.b $00\n\n #_00E64E: LDA.b [$00]\n #_00E650: STA.w VMDATA\n\n #_00E653: INC.b $00\n #_00E655: INC.b $00\n\n #_00E657: LDA.b [$00]\n #_00E659: STA.w VMDATA\n\n #_00E65C: INC.b $00\n #_00E65E: INC.b $00\n\n #_00E660: LDA.b [$00]\n #_00E662: STA.w VMDATA\n\n #_00E665: INC.b $00\n #_00E667: INC.b $00\n\n #_00E669: LDA.b [$00]\n #_00E66B: STA.w VMDATA\n\n #_00E66E: INC.b $00\n #_00E670: INC.b $00\n\n #_00E672: LDA.b [$00]\n #_00E674: STA.w VMDATA\n\n #_00E677: INC.b $00\n #_00E679: INC.b $00\n\n #_00E67B: LDA.b [$00]\n #_00E67D: STA.w VMDATA\n\n #_00E680: INC.b $00\n #_00E682: INC.b $00\n\n; ---------------------------------------------------------\n\n #_00E684: LDX.b #$01\n\n.next\n #_00E686: LDA.b [$00]\n #_00E688: AND.w #$00FF\n #_00E68B: STA.w VMDATA\n\n #_00E68E: INC.b $00\n\n #_00E690: LDA.b [$00]\n #_00E692: AND.w #$00FF\n #_00E695: STA.w VMDATA\n\n #_00E698: INC.b $00\n\n #_00E69A: LDA.b [$00]\n #_00E69C: AND.w #$00FF\n #_00E69F: STA.w VMDATA\n\n #_00E6A2: INC.b $00\n\n #_00E6A4: LDA.b [$00]\n #_00E6A6: AND.w #$00FF\n #_00E6A9: STA.w VMDATA\n\n #_00E6AC: INC.b $00\n\n #_00E6AE: DEX\n #_00E6AF: BPL .next\n\n; ---------------------------------------------------------\n\n #_00E6B1: DEY\n #_00E6B2: BPL .next_super\n\n #_00E6B4: SEP #$20\n\n #_00E6B6: RTS" + }, + { + "name": "LoadCommonSprites", + "code": "LoadCommonSprites:\n #_00E6B7: LDY.w $0AA4\n\n #_00E6BA: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E6BD: STA.b $02\n\n #_00E6BF: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E6C2: STA.b $01\n\n #_00E6C4: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E6C7: STA.b $00\n\n #_00E6C9: REP #$20\n\n #_00E6CB: LDY.b #$40\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E6CD: LDX.b #$0E\n\n.next_planes_a\n #_00E6CF: LDA.b [$00]\n #_00E6D1: STA.w VMDATA\n\n #_00E6D4: XBA\n #_00E6D5: ORA.b [$00]\n #_00E6D7: AND.w #$00FF\n #_00E6DA: STA.b $BF,X\n\n #_00E6DC: INC.b $00\n #_00E6DE: INC.b $00\n\n #_00E6E0: DEX\n #_00E6E1: DEX\n\n #_00E6E2: LDA.b [$00]\n #_00E6E4: STA.w VMDATA\n\n #_00E6E7: XBA\n #_00E6E8: ORA.b [$00]\n #_00E6EA: AND.w #$00FF\n #_00E6ED: STA.b $BF,X\n\n #_00E6EF: INC.b $00\n #_00E6F1: INC.b $00\n\n #_00E6F3: DEX\n #_00E6F4: DEX\n #_00E6F5: BPL .next_planes_a\n\n; ---------------------------------------------------------\n\n #_00E6F7: LDX.b #$0E\n\n.next_planes_b\n #_00E6F9: LDA.b [$00]\n #_00E6FB: AND.w #$00FF\n #_00E6FE: STA.b $BD\n\n #_00E700: ORA.b $BF,X\n #_00E702: XBA\n #_00E703: ORA.b $BD\n #_00E705: STA.w VMDATA\n\n #_00E708: INC.b $00\n\n #_00E70A: DEX\n #_00E70B: DEX\n\n #_00E70C: LDA.b [$00]\n #_00E70E: AND.w #$00FF\n #_00E711: STA.b $BD\n\n #_00E713: ORA.b $BF,X\n #_00E715: XBA\n #_00E716: ORA.b $BD\n #_00E718: STA.w VMDATA\n\n #_00E71B: INC.b $00\n\n #_00E71D: DEX\n #_00E71E: DEX\n #_00E71F: BPL .next_planes_b\n\n #_00E721: DEY\n #_00E722: BNE .next_tile\n\n; ---------------------------------------------------------\n\n #_00E724: SEP #$20\n\n #_00E726: LDA.b $10\n #_00E728: CMP.b #$01\n #_00E72A: BEQ .in_file_select\n\n #_00E72C: LDY.b #$06\n\n #_00E72E: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E731: STA.b $02\n\n #_00E733: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E736: STA.b $01\n\n #_00E738: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E73B: STA.b $00\n\n #_00E73D: REP #$20\n\n #_00E73F: LDY.b #$7F\n\n #_00E741: JMP.w Do3To4Low\n\n; ---------------------------------------------------------\n\n.in_file_select\n #_00E744: STZ.b $0F\n\n #_00E746: LDY.b #$5E\n #_00E748: STY.b $06\n\n #_00E74A: LDA.b #$7F\n #_00E74C: STA.b $02\n\n #_00E74E: LDX.b #$40\n\n #_00E750: JSR LoadSpriteGraphics\n\n #_00E753: LDY.b #$5F\n #_00E755: STY.b $06\n\n #_00E757: LDX.b #$40\n\n #_00E759: JMP.w LoadSpriteGraphics\n\n; =========================================================\n" + }, + { + "name": "Decompress_sprite_high", + "code": "Decompress_sprite_high:\n #_00E75C: STZ.b $00\n\n #_00E75E: LDA.b #$7F4600>>8\n #_00E760: STA.b $01\n\n #_00E762: LDA.b #$7F4600>>16\n #_00E764: BRA .sprite_set_bank\n\n; =========================================================\n\n#Decompress_sprite_low:\n #_00E766: STZ.b $00\n\n #_00E768: LDA.b #$40\n #_00E76A: STA.b $01\n\n #_00E76C: LDA.b #$7F\n\n; ---------------------------------------------------------\n\n.sprite_set_bank\n #_00E76E: STA.b $02\n #_00E770: STA.b $05\n\n; =========================================================\n" + }, + { + "name": "Decompress_sprite_arbitrary", + "code": "Decompress_sprite_arbitrary:\n #_00E772: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E775: STA.b $CA\n\n #_00E777: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E77A: STA.b $C9\n\n #_00E77C: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E77F: STA.b $C8\n\n #_00E781: BRA Decompress\n\n; =========================================================\n" + }, + { + "name": "Decompress_background_low", + "code": "Decompress_background_low:\n #_00E783: STZ.b $00\n\n #_00E785: LDA.b #$7F4000>>8\n #_00E787: STA.b $01\n\n #_00E789: LDA.b #$7F4000>>16\n\n; =========================================================\n" + }, + { + "name": "Decompress_background_arbitrary_bank", + "code": "Decompress_background_arbitrary_bank:\n #_00E78B: STA.b $02\n #_00E78D: STA.b $05\n\n; =========================================================\n" + }, + { + "name": "Decompress_background_arbitrary", + "code": "Decompress_background_arbitrary:\n #_00E78F: LDA.w GFXSheetPointers_background_bank,Y\n #_00E792: STA.b $CA\n\n #_00E794: LDA.w GFXSheetPointers_background_high,Y\n #_00E797: STA.b $C9\n\n #_00E799: LDA.w GFXSheetPointers_background_low,Y\n #_00E79C: STA.b $C8\n\n; =========================================================\n" + }, + { + "name": "Decompress", + "code": "Decompress:\n #_00E79E: REP #$10\n\n #_00E7A0: LDY.w #$0000\n\n.next_command\n #_00E7A3: JSR Decompression_GetNextByte\n\n #_00E7A6: CMP.b #$FF ; stop decompression\n #_00E7A8: BNE .continue\n\n #_00E7AA: SEP #$10\n\n #_00E7AC: RTS" + }, + { + "name": "Decompression_GetNextByte", + "code": "Decompression_GetNextByte:\n #_00E843: LDA.b [$C8]\n\n #_00E845: LDX.b $C8\n #_00E847: INX\n #_00E848: BNE .no_bank_wrap\n\n #_00E84A: LDX.w #$8000\n #_00E84D: INC.b $CA\n\n.no_bank_wrap\n #_00E84F: STX.b $C8\n\n #_00E851: RTS" + }, + { + "name": "NULL_00E852", + "code": "NULL_00E852:\n #_00E852: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E85A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E862: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E86A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E872: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E87A: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n" + }, + { + "name": "PaletteFilterColorAdd", + "code": "PaletteFilterColorAdd:\n #_00E880: dw $FFFF, $0001\n #_00E884: dw $FFE0, $0020\n #_00E888: dw $FC00, $0400\n" + }, + { + "name": "PaletteFilterColorMasks", + "code": "PaletteFilterColorMasks:\n #_00E88C: dw $FFFF, $FFFF, $FFFE, $FFFF\n #_00E894: dw $7FFF, $7FFF, $7FDF, $FBFF\n #_00E89C: dw $7F7F, $7F7F, $7DF7, $EFBF\n #_00E8A4: dw $7BDF, $7BDF, $77BB, $DDEF\n #_00E8AC: dw $7777, $7777, $6EDD, $BB77\n #_00E8B4: dw $6DB7, $6DB7, $5B6D, $B6DB\n #_00E8BC: dw $5B5B, $5B5B, $56B6, $AD6B\n #_00E8C4: dw $5555, $AD6B, $5555, $AAAB\n #_00E8CC: dw $5555, $5555, $2A55, $5555\n #_00E8D4: dw $2A55, $2A55, $294A, $5295\n #_00E8DC: dw $2525, $2525, $2492, $4925\n #_00E8E4: dw $1249, $1249, $1122, $4489\n #_00E8EC: dw $1111, $1111, $0844, $2211\n #_00E8F4: dw $0421, $0421, $0208, $1041\n #_00E8FC: dw $0101, $0101, $0020, $0401\n #_00E904: dw $0001, $0001, $0000, $0001\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter", + "code": "PaletteFilter:\n #_00E90C: SEP #$20\n\n #_00E90E: LDA.b $1A\n #_00E910: LSR A\n #_00E911: BCC ApplyPaletteFilter\n\n #_00E913: RTL" + }, + { + "name": "ApplyPaletteFilter", + "code": "ApplyPaletteFilter:\n #_00E914: REP #$30\n\n #_00E916: LDX.w #PaletteFilterColorAdd+12\n\n #_00E919: LDA.l $7EC007\n #_00E91D: CMP.w #$0010\n #_00E920: BCC .first_half\n\n #_00E922: INX\n #_00E923: INX\n\n.first_half\n #_00E924: STX.b $B7\n\n #_00E926: AND.w #$000F\n #_00E929: ASL A\n #_00E92A: TAX\n\n #_00E92B: LDA.w DungeonMask,X\n #_00E92E: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_00E930: PHB\n #_00E931: PHK\n #_00E932: PLB\n\n #_00E933: LDA.l $7EC009\n #_00E937: TAX\n\n #_00E938: LDA.w PaletteFilterColorAdd+0,X\n #_00E93B: STA.b $06\n\n #_00E93D: LDA.w PaletteFilterColorAdd+4,X\n #_00E940: STA.b $08\n\n #_00E942: LDA.w PaletteFilterColorAdd+8,X\n #_00E945: STA.b $0A\n\n #_00E947: LDX.w #$0040\n #_00E94A: JSR PaletteFilter_FilterColors\n\n #_00E94D: LDA.l $7EC500\n #_00E951: STA.b $04\n\n; ---------------------------------------------------------\n\n #_00E953: LDA.l $7EC300\n #_00E957: AND.w #$001F\n #_00E95A: ASL A\n #_00E95B: ASL A\n #_00E95C: TAY\n\n #_00E95D: LDA.b ($B7),Y\n #_00E95F: AND.b $0C\n #_00E961: BNE .no_red\n\n #_00E963: LDA.b $04\n #_00E965: ADC.b $06\n #_00E967: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00E969: LDA.l $7EC300\n #_00E96D: AND.w #$03E0\n #_00E970: LSR A\n #_00E971: LSR A\n #_00E972: LSR A\n #_00E973: TAY\n\n #_00E974: LDA.b ($B7),Y\n #_00E976: AND.b $0C\n #_00E978: BNE .no_green\n\n #_00E97A: LDA.b $04\n #_00E97C: ADC.b $08\n #_00E97E: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00E980: LDA.l $7EC301\n #_00E984: AND.w #$007C\n #_00E987: TAY\n\n #_00E988: LDA.b ($B7),Y\n #_00E98A: AND.b $0C\n #_00E98C: BNE .no_blue\n\n #_00E98E: LDA.b $04\n #_00E990: CLC\n #_00E991: ADC.b $0A\n #_00E993: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00E995: LDA.b $04\n #_00E997: STA.l $7EC500\n\n #_00E99B: PLB\n\n #_00E99C: LDA.l $7EC009\n #_00E9A0: BNE .lightening\n\n #_00E9A2: LDA.l $7EC007\n #_00E9A6: INC A\n #_00E9A7: STA.l $7EC007\n\n #_00E9AB: CMP.l $7EC00B\n #_00E9AF: BNE .continue_filtering\n\n.swap\n #_00E9B1: LDA.l $7EC009\n #_00E9B5: EOR.w #$0002\n #_00E9B8: STA.l $7EC009\n\n #_00E9BC: LDA.w #$0000\n #_00E9BF: STA.l $7EC007\n\n #_00E9C3: SEP #$20\n\n #_00E9C5: INC.b $B0\n\n.continue_filtering\n #_00E9C7: SEP #$30\n\n #_00E9C9: INC.b $15\n\n #_00E9CB: RTL" + }, + { + "name": "PaletteFilter_FilterColors", + "code": "PaletteFilter_FilterColors:\n.next_color\n #_00E9E4: LDA.l $7EC500,X\n #_00E9E8: STA.b $04\n\n #_00E9EA: LDA.l $7EC300,X\n #_00E9EE: BEQ .color_is_black\n\n; ---------------------------------------------------------\n\n #_00E9F0: AND.w #$001F\n #_00E9F3: ASL A\n #_00E9F4: ASL A\n #_00E9F5: TAY\n\n #_00E9F6: LDA.b ($B7),Y\n #_00E9F8: AND.b $0C\n #_00E9FA: BNE .no_red\n\n #_00E9FC: LDA.b $04\n #_00E9FE: ADC.b $06\n #_00EA00: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00EA02: LDA.l $7EC300,X\n #_00EA06: AND.w #$03E0\n #_00EA09: LSR A\n #_00EA0A: LSR A\n #_00EA0B: LSR A\n #_00EA0C: TAY\n\n #_00EA0D: LDA.b ($B7),Y\n #_00EA0F: AND.b $0C\n #_00EA11: BNE .no_green\n\n #_00EA13: LDA.b $04\n #_00EA15: ADC.b $08\n #_00EA17: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00EA19: LDA.l $7EC301,X\n #_00EA1D: AND.w #$007C\n #_00EA20: TAY\n\n #_00EA21: LDA.b ($B7),Y\n #_00EA23: AND.b $0C\n #_00EA25: BNE .no_blue\n\n #_00EA27: LDA.b $04\n #_00EA29: CLC\n #_00EA2A: ADC.b $0A\n #_00EA2C: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00EA2E: LDA.b $04\n #_00EA30: STA.l $7EC500,X\n\n.color_is_black\n #_00EA34: INX\n #_00EA35: INX\n #_00EA36: CPX.w #$01B0\n #_00EA39: BCC .next_color\n\n #_00EA3B: BNE .dont_skip_palette_5\n\n #_00EA3D: TXA\n #_00EA3E: CLC\n #_00EA3F: ADC.w #$0010\n #_00EA42: TAX\n\n; ---------------------------------------------------------\n\n.dont_skip_palette_5\n #_00EA43: CPX.w #$01E0\n #_00EA46: BNE .next_color\n\n #_00EA48: RTS" + }, + { + "name": "UNREACHABLE_00EA49", + "code": "UNREACHABLE_00EA49:\n #_00EA49: REP #$30\n\n #_00EA4B: LDX.w #PaletteFilterColorAdd+12\n\n #_00EA4E: LDA.l $7EC007\n #_00EA52: CMP.w #$0010\n #_00EA55: BCC .first_half\n\n #_00EA57: INX\n #_00EA58: INX\n\n.first_half\n #_00EA59: STX.b $B7\n\n #_00EA5B: AND.w #$000F\n #_00EA5E: ASL A\n #_00EA5F: TAX\n\n #_00EA60: LDA.w DungeonMask,X\n #_00EA63: STA.b $0C\n\n #_00EA65: PHB\n #_00EA66: PHK\n #_00EA67: PLB\n\n #_00EA68: LDA.l $7EC009\n #_00EA6C: TAX\n\n #_00EA6D: LDA.w PaletteFilterColorAdd+0,X\n #_00EA70: STA.b $06\n\n #_00EA72: LDA.w PaletteFilterColorAdd+4,X\n #_00EA75: STA.b $08\n\n #_00EA77: LDA.w PaletteFilterColorAdd+8,X\n #_00EA7A: STA.b $0A\n\n #_00EA7C: LDX.w #$0040\n #_00EA7F: LDA.w #$0200\n #_00EA82: JSR FilterColorsEndpoint\n\n #_00EA85: PLB\n\n; ---------------------------------------------------------\n\n #_00EA86: LDA.l $7EC009\n #_00EA8A: BNE .lightening\n\n #_00EA8C: LDA.l $7EC007\n #_00EA90: INC A\n #_00EA91: STA.l $7EC007\n\n #_00EA95: CMP.l $7EC00B\n #_00EA99: BNE .continue_filtering\n\n; ---------------------------------------------------------\n\n.swap\n #_00EA9B: LDA.l $7EC009\n #_00EA9F: EOR.w #$0002\n #_00EAA2: STA.l $7EC009\n\n #_00EAA6: LDA.w #$0000\n #_00EAA9: STA.l $7EC007\n\n #_00EAAD: SEP #$20\n\n #_00EAAF: INC.b $B0\n\n; ---------------------------------------------------------\n\n.continue_filtering\n #_00EAB1: SEP #$30\n\n #_00EAB3: INC.b $15\n\n #_00EAB5: RTL" + }, + { + "name": "FilterColorsEndpoint", + "code": "FilterColorsEndpoint:\n #_00EACE: STA.b $0E\n\n.next_color\n #_00EAD0: LDA.l $7EC500,X\n #_00EAD4: STA.b $04\n\n #_00EAD6: LDA.l $7EC300,X\n #_00EADA: BEQ .skip_color\n\n #_00EADC: AND.w #$001F\n #_00EADF: ASL A\n #_00EAE0: ASL A\n #_00EAE1: TAY\n\n #_00EAE2: LDA.b ($B7),Y\n #_00EAE4: AND.b $0C\n #_00EAE6: BNE .no_red\n\n #_00EAE8: LDA.b $04\n #_00EAEA: CLC\n #_00EAEB: ADC.b $06\n #_00EAED: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00EAEF: LDA.l $7EC300,X\n #_00EAF3: AND.w #$03E0\n #_00EAF6: LSR A\n #_00EAF7: LSR A\n #_00EAF8: LSR A\n #_00EAF9: TAY\n\n #_00EAFA: LDA.b ($B7),Y\n #_00EAFC: AND.b $0C\n #_00EAFE: BNE .no_green\n\n #_00EB00: LDA.b $04\n #_00EB02: CLC\n #_00EB03: ADC.b $08\n #_00EB05: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00EB07: LDA.l $7EC301,X\n #_00EB0B: AND.w #$007C\n #_00EB0E: TAY\n\n #_00EB0F: LDA.b ($B7),Y\n #_00EB11: AND.b $0C\n #_00EB13: BNE .no_blue\n\n #_00EB15: LDA.b $04\n #_00EB17: CLC\n #_00EB18: ADC.b $0A\n #_00EB1A: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00EB1C: LDA.b $04\n #_00EB1E: STA.l $7EC500,X\n\n; ---------------------------------------------------------\n\n.skip_color\n #_00EB22: INX\n #_00EB23: INX\n #_00EB24: CPX.b $0E\n #_00EB26: BNE .next_color\n\n #_00EB28: RTS" + }, + { + "name": "ResetHUDPalettes4and5", + "code": "ResetHUDPalettes4and5:\n #_00EB29: REP #$20\n\n #_00EB2B: LDA.w #$0000 ; RGB: #000000\n\n #_00EB2E: STA.l $7EC520\n #_00EB32: STA.l $7EC522\n #_00EB36: STA.l $7EC524\n #_00EB3A: STA.l $7EC526\n #_00EB3E: STA.l $7EC528\n #_00EB42: STA.l $7EC52A\n #_00EB46: STA.l $7EC52C\n #_00EB4A: STA.l $7EC52E\n\n #_00EB4E: STA.l $7EC007 ; reset mosaic control\n\n #_00EB52: LDA.w #$0002 ; lightening screen\n #_00EB55: STA.l $7EC009\n\n #_00EB59: SEP #$20\n\n #_00EB5B: INC.b $15\n\n #_00EB5D: RTL" + }, + { + "name": "PaletteFilterHistory", + "code": "PaletteFilterHistory:\n #_00EB5E: REP #$30\n\n #_00EB60: LDX.w #PaletteFilterColorAdd+12\n\n #_00EB63: LDA.l $7EC007\n #_00EB67: CMP.w #$0010\n #_00EB6A: BCC .first_half\n\n #_00EB6C: INX\n #_00EB6D: INX\n\n.first_half\n #_00EB6E: STX.b $B7\n\n #_00EB70: AND.w #$000F\n #_00EB73: ASL A\n #_00EB74: TAX\n\n #_00EB75: LDA.l DungeonMask,X\n #_00EB79: STA.b $0C\n\n #_00EB7B: PHB\n #_00EB7C: PHK\n #_00EB7D: PLB\n\n #_00EB7E: LDA.l $7EC009\n #_00EB82: TAX\n\n #_00EB83: LDA.w PaletteFilterColorAdd+0,X\n #_00EB86: STA.b $06\n\n #_00EB88: LDA.w PaletteFilterColorAdd+4,X\n #_00EB8B: STA.b $08\n\n #_00EB8D: LDA.w PaletteFilterColorAdd+8,X\n #_00EB90: STA.b $0A\n\n #_00EB92: LDX.w #$0020\n #_00EB95: LDA.w #$0030\n\n; =========================================================\n\n#PaletteFilterHistory_do_filtering:\n #_00EB98: JSR FilterColorsEndpoint\n\n #_00EB9B: PLB\n\n #_00EB9C: LDA.l $7EC007\n #_00EBA0: INC A\n #_00EBA1: STA.l $7EC007\n\n #_00EBA5: CMP.w #$001F\n #_00EBA8: BNE .still_filtering\n\n #_00EBAA: LDA.w #$0000\n #_00EBAD: STA.l $7EC007\n\n #_00EBB1: LDA.l $7EC009\n #_00EBB5: EOR.w #$0002\n #_00EBB8: STA.l $7EC009\n #_00EBBC: BEQ .still_filtering\n\n #_00EBBE: INC.b $27\n\n.still_filtering\n #_00EBC0: SEP #$30\n\n #_00EBC2: INC.b $15\n\n #_00EBC4: RTL" + }, + { + "name": "PaletteFilter_WishPonds", + "code": "PaletteFilter_WishPonds:\n #_00EBC5: LDA.b #$02\n #_00EBC7: STA.b $1D\n\n #_00EBC9: LDA.b #$30\n #_00EBCB: STA.b $9A\n\n #_00EBCD: BRA .start\n\n; =========================================================\n\n#PaletteFilter_Crystal:\n #_00EBCF: LDA.b #$01\n #_00EBD1: STA.b $1D\n\n; =========================================================\n\n#PaletteFilter_TheEndSprite:\n.start\n #_00EBD3: REP #$20\n\n #_00EBD5: LDX.b #$0E\n #_00EBD7: LDA.w #$0000 ; RGB: #000000\n\n.next_black\n #_00EBDA: STA.l $7EC6A0,X\n\n #_00EBDE: DEX\n #_00EBDF: DEX\n #_00EBE0: BPL .next_black\n\n; ---------------------------------------------------------\n\n #_00EBE2: STA.l $7EC007\n\n #_00EBE6: LDA.w #$0002\n #_00EBE9: STA.l $7EC009\n\n #_00EBED: SEP #$20\n\n #_00EBEF: INC.b $15\n\n #_00EBF1: RTL" + }, + { + "name": "PaletteFilter_RestoreSP5F", + "code": "PaletteFilter_RestoreSP5F:\n #_00EBF2: REP #$20\n\n #_00EBF4: LDX.b #$0E\n\n.next_color\n #_00EBF6: LDA.l $7EC4A0,X\n #_00EBFA: STA.l $7EC6A0,X\n\n #_00EBFE: DEX\n #_00EBFF: DEX\n #_00EC00: BPL .next_color\n\n #_00EC02: SEP #$20\n\n #_00EC04: STZ.b $1D\n\n #_00EC06: LDA.b #$20\n #_00EC08: STA.b $9A\n\n #_00EC0A: INC.b $15\n\n; ---------------------------------------------------------\n\n#EXIT_00EC0C:\n #_00EC0C: RTL" + }, + { + "name": "PaletteFilter_SP5F", + "code": "PaletteFilter_SP5F:\n #_00EC0D: JSL .filter\n\n #_00EC11: LDA.l $7EC007\n #_00EC15: BEQ EXIT_00EC0C\n\n; ---------------------------------------------------------\n\n.filter\n #_00EC17: REP #$30\n\n #_00EC19: LDX.w #PaletteFilterColorAdd+12\n\n #_00EC1C: LDA.l $7EC007\n #_00EC20: CMP.w #$0010\n #_00EC23: BCC .first_half\n\n #_00EC25: INX\n #_00EC26: INX\n\n.first_half\n #_00EC27: STX.b $B7\n\n #_00EC29: AND.w #$000F\n #_00EC2C: ASL A\n #_00EC2D: TAX\n\n #_00EC2E: LDA.l DungeonMask,X\n #_00EC32: STA.b $0C\n\n #_00EC34: PHB\n #_00EC35: PHK\n #_00EC36: PLB\n\n #_00EC37: LDA.l $7EC009\n #_00EC3B: TAX\n\n #_00EC3C: LDA.w PaletteFilterColorAdd+0,X\n #_00EC3F: STA.b $06\n\n #_00EC41: LDA.w PaletteFilterColorAdd+4,X\n #_00EC44: STA.b $08\n\n #_00EC46: LDA.w PaletteFilterColorAdd+8,X\n #_00EC49: STA.b $0A\n\n #_00EC4B: LDX.w #$01A0\n #_00EC4E: LDA.w #$01B0\n #_00EC51: JMP.w PaletteFilterHistory_do_filtering\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter_KholdstareShell_init", + "code": "PaletteFilter_KholdstareShell_init:\n #_00EC54: REP #$20\n\n #_00EC56: LDX.b #$0E\n\n.next_color\n #_00EC58: LDA.l $7EC380,X\n #_00EC5C: STA.l $7EC580,X\n\n #_00EC60: DEX\n #_00EC61: DEX\n #_00EC62: BPL .next_color\n\n; ---------------------------------------------------------\n\n #_00EC64: LDA.w #$0000\n #_00EC67: STA.l $7EC007\n #_00EC6B: STA.l $7EC009\n\n #_00EC6F: SEP #$20\n\n #_00EC71: INC.b $15\n\n #_00EC73: INC.b $B0\n\n #_00EC75: RTL" + }, + { + "name": "PaletteFilter_KholdstareShell_disable_subscreen", + "code": "PaletteFilter_KholdstareShell_disable_subscreen:\n #_00EC76: STZ.b $1D\n\n #_00EC78: RTL" + }, + { + "name": "PaletteFilter_KholdstareShell", + "code": "PaletteFilter_KholdstareShell:\n #_00EC79: LDA.b $B0\n #_00EC7B: BEQ PaletteFilter_KholdstareShell_init\n\n #_00EC7D: JSL .filter\n\n #_00EC81: LDA.l $7EC007\n #_00EC85: BEQ PaletteFilter_KholdstareShell_disable_subscreen\n\n; ---------------------------------------------------------\n\n.filter\n #_00EC87: REP #$30\n\n #_00EC89: LDX.w #PaletteFilterColorAdd+12\n\n #_00EC8C: LDA.l $7EC007\n #_00EC90: CMP.w #$0010\n #_00EC93: BCC .first_half\n\n #_00EC95: INX\n #_00EC96: INX\n\n.first_half\n #_00EC97: STX.b $B7\n\n #_00EC99: AND.w #$000F\n #_00EC9C: ASL A\n #_00EC9D: TAX\n\n #_00EC9E: LDA.l DungeonMask,X\n #_00ECA2: STA.b $0C\n\n #_00ECA4: PHB\n #_00ECA5: PHK\n #_00ECA6: PLB\n\n #_00ECA7: LDA.l $7EC009\n #_00ECAB: TAX\n\n #_00ECAC: LDA.w PaletteFilterColorAdd+0,X\n #_00ECAF: STA.b $06\n\n #_00ECB1: LDA.w PaletteFilterColorAdd+4,X\n #_00ECB4: STA.b $08\n\n #_00ECB6: LDA.w PaletteFilterColorAdd+8,X\n #_00ECB9: STA.b $0A\n\n #_00ECBB: LDX.w #$0080\n #_00ECBE: LDA.w #$0090\n #_00ECC1: JMP.w PaletteFilterHistory_do_filtering\n\n; =========================================================\n\npool AgahnimWarpShadowFilter\n\n.palette_offset\n #_00ECC4: dw $0160\n #_00ECC6: dw $0180\n #_00ECC8: dw $01A0\n\npool off\n\n; ---------------------------------------------------------\n" + }, + { + "name": "AgahnimWarpShadowFilter", + "code": "AgahnimWarpShadowFilter:\n #_00ECCA: PHX\n\n #_00ECCB: TXA\n #_00ECCC: ASL A\n #_00ECCD: TAX\n\n #_00ECCE: REP #$20\n\n #_00ECD0: LDA.l $7EC019,X\n #_00ECD4: STA.l $7EC007\n\n #_00ECD8: LDA.l $7EC01F,X\n #_00ECDC: STA.l $7EC009\n\n #_00ECE0: LDA.l .palette_offset,X\n #_00ECE4: STA.b $00\n\n #_00ECE6: CLC\n #_00ECE7: ADC.w #$0010\n #_00ECEA: STA.b $02\n\n #_00ECEC: REP #$10\n\n #_00ECEE: JSR AgahnimWarpShadowFilter_filter_one\n\n #_00ECF1: LDA.l $7EC007\n #_00ECF5: BEQ .done\n\n #_00ECF7: JSR AgahnimWarpShadowFilter_filter_one\n\n; ---------------------------------------------------------\n\n.done\n #_00ECFA: SEP #$30\n\n #_00ECFC: PLX\n #_00ECFD: PHX\n\n #_00ECFE: TXA\n #_00ECFF: ASL A\n #_00ED00: TAX\n\n #_00ED01: REP #$20\n\n #_00ED03: LDA.l $7EC007\n #_00ED07: STA.l $7EC019,X\n\n #_00ED0B: LDA.l $7EC009\n #_00ED0F: STA.l $7EC01F,X\n\n #_00ED13: SEP #$20\n\n #_00ED15: PLX\n\n #_00ED16: INC.b $15\n\n #_00ED18: RTL" + }, + { + "name": "AgahnimWarpShadowFilter_filter_one", + "code": "AgahnimWarpShadowFilter_filter_one:\n #_00ED19: LDY.w #PaletteFilterColorAdd+12\n\n #_00ED1C: LDA.l $7EC007\n #_00ED20: CMP.w #$0010\n #_00ED23: BCC .first_half\n\n #_00ED25: INY\n #_00ED26: INY\n\n.first_half\n #_00ED27: STY.b $B7\n\n #_00ED29: AND.w #$000F\n #_00ED2C: ASL A\n #_00ED2D: TAX\n\n #_00ED2E: LDA.l DungeonMask,X\n #_00ED32: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_00ED34: PHB\n #_00ED35: PHK\n #_00ED36: PLB\n\n #_00ED37: LDA.l $7EC009\n #_00ED3B: TAX\n\n #_00ED3C: LDA.w PaletteFilterColorAdd+0,X\n #_00ED3F: STA.b $06\n\n #_00ED41: LDA.w PaletteFilterColorAdd+4,X\n #_00ED44: STA.b $08\n\n #_00ED46: LDA.w PaletteFilterColorAdd+8,X\n #_00ED49: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_00ED4B: LDX.b $00\n #_00ED4D: PHX\n\n #_00ED4E: LDA.b $02\n #_00ED50: PHA\n\n #_00ED51: JSR FilterColorsEndpoint\n\n #_00ED54: PLA\n #_00ED55: STA.b $02\n\n #_00ED57: PLX\n #_00ED58: STX.b $00\n\n #_00ED5A: PLB\n\n #_00ED5B: LDA.l $7EC007\n #_00ED5F: INC A\n #_00ED60: STA.l $7EC007\n\n #_00ED64: CMP.w #$001F\n #_00ED67: BNE .exit\n\n #_00ED69: LDA.w #$0000\n #_00ED6C: STA.l $7EC007\n\n #_00ED70: LDA.l $7EC009\n #_00ED74: EOR.w #$0002\n #_00ED77: STA.l $7EC009\n\n.exit\n #_00ED7B: RTS" + }, + { + "name": "IntroLogoPaletteFadeIn", + "code": "IntroLogoPaletteFadeIn:\n #_00ED7C: REP #$30\n\n #_00ED7E: LDX.w #$0100\n #_00ED81: LDA.w #$01A0\n #_00ED84: JSR PaletteFilter_RestoreAdditive\n\n #_00ED87: LDX.w #$00C0\n #_00ED8A: LDA.w #$0100\n #_00ED8D: BRA .finish\n\n; ---------------------------------------------------------\n\n#IntroTitleCardPaletteFadeIn:\n #_00ED8F: REP #$30\n\n #_00ED91: LDX.w #$0040\n #_00ED94: LDA.w #$00C0\n #_00ED97: JSR PaletteFilter_RestoreAdditive\n\n #_00ED9A: LDX.w #$0040\n #_00ED9D: LDA.w #$00C0\n\n; ---------------------------------------------------------\n\n.finish\n #_00EDA0: JSR PaletteFilter_RestoreAdditive\n\n #_00EDA3: SEP #$30\n\n #_00EDA5: LDA.l $7EC007\n #_00EDA9: DEC A\n #_00EDAA: STA.l $7EC007\n\n #_00EDAE: INC.b $15\n\n #_00EDB0: RTL" + }, + { + "name": "PaletteFilter_Restore", + "code": "PaletteFilter_Restore:\n #_00EDB1: REP #$30\n\n #_00EDB3: LDX.w #$00B0\n #_00EDB6: LDA.w #$00C0\n #_00EDB9: JSR PaletteFilter_RestoreAdditive\n\n #_00EDBC: LDX.w #$00D0\n #_00EDBF: LDA.w #$00E0\n #_00EDC2: JSR PaletteFilter_RestoreSubtractive\n\n #_00EDC5: SEP #$30\n\n #_00EDC7: INC.b $15\n\n #_00EDC9: RTL" + }, + { + "name": "PaletteFilter_RestoreAdditive", + "code": "PaletteFilter_RestoreAdditive:\n #_00EDCA: STA.b $0E\n\n.next_color\n #_00EDCC: LDA.l $7EC500,X\n #_00EDD0: TAY\n\n #_00EDD1: AND.w #$001F\n #_00EDD4: STA.b $08\n\n #_00EDD6: TYA\n #_00EDD7: AND.w #$03E0\n #_00EDDA: STA.b $0A\n\n #_00EDDC: TYA\n #_00EDDD: AND.w #$7C00\n #_00EDE0: STA.b $0C\n\n #_00EDE2: LDA.l $7EC300,X\n #_00EDE6: AND.w #$001F\n #_00EDE9: CMP.b $08\n #_00EDEB: BEQ .red_equal\n\n #_00EDED: TYA\n #_00EDEE: CLC\n #_00EDEF: ADC.w #$0001\n #_00EDF2: TAY\n\n.red_equal\n #_00EDF3: LDA.l $7EC300,X\n #_00EDF7: AND.w #$03E0\n #_00EDFA: CMP.b $0A\n #_00EDFC: BEQ .green_equal\n\n #_00EDFE: TYA\n #_00EDFF: CLC\n #_00EE00: ADC.w #$0020\n #_00EE03: TAY\n\n.green_equal\n #_00EE04: LDA.l $7EC300,X\n #_00EE08: AND.w #$7C00\n #_00EE0B: CMP.b $0C\n #_00EE0D: BEQ .blue_equal\n\n #_00EE0F: TYA\n #_00EE10: CLC\n #_00EE11: ADC.w #$0400\n #_00EE14: TAY\n\n.blue_equal\n #_00EE15: TYA\n #_00EE16: STA.l $7EC500,X\n\n #_00EE1A: INX\n #_00EE1B: INX\n #_00EE1C: CPX.b $0E\n #_00EE1E: BNE .next_color\n\n #_00EE20: RTS" + }, + { + "name": "PaletteFilter_RestoreSubtractive", + "code": "PaletteFilter_RestoreSubtractive:\n #_00EE21: STA.b $0E\n\n.next_color\n #_00EE23: LDA.l $7EC500,X\n #_00EE27: TAY\n\n #_00EE28: AND.w #$001F\n #_00EE2B: STA.b $08\n\n #_00EE2D: TYA\n #_00EE2E: AND.w #$03E0\n #_00EE31: STA.b $0A\n\n #_00EE33: TYA\n #_00EE34: AND.w #$7C00\n #_00EE37: STA.b $0C\n\n #_00EE39: LDA.l $7EC300,X\n #_00EE3D: AND.w #$001F\n #_00EE40: CMP.b $08\n #_00EE42: BEQ .red_equal\n\n #_00EE44: TYA\n #_00EE45: SEC\n #_00EE46: SBC.w #$0001\n #_00EE49: TAY\n\n.red_equal\n #_00EE4A: LDA.l $7EC300,X\n #_00EE4E: AND.w #$03E0\n #_00EE51: CMP.b $0A\n #_00EE53: BEQ .green_equal\n\n #_00EE55: TYA\n #_00EE56: SEC\n #_00EE57: SBC.w #$0020\n #_00EE5A: TAY\n\n.green_equal\n #_00EE5B: LDA.l $7EC300,X\n #_00EE5F: AND.w #$7C00\n #_00EE62: CMP.b $0C\n #_00EE64: BEQ .blue_equal\n\n #_00EE66: TYA\n #_00EE67: SEC\n #_00EE68: SBC.w #$0400\n #_00EE6B: TAY\n\n.blue_equal\n #_00EE6C: TYA\n #_00EE6D: STA.l $7EC500,X\n\n #_00EE71: INX\n #_00EE72: INX\n #_00EE73: CPX.b $0E\n #_00EE75: BNE .next_color\n\n #_00EE77: RTS" + }, + { + "name": "PaletteFilter_InitializeWhiteFilter", + "code": "PaletteFilter_InitializeWhiteFilter:\n #_00EE78: REP #$20\n\n #_00EE7A: LDX.b #$00\n\n #_00EE7C: LDA.w #$7FFF ; RGB: #F8F8F8\n\n.next_white\n #_00EE7F: STA.l $7EC300,X\n #_00EE83: STA.l $7EC340,X\n #_00EE87: STA.l $7EC380,X\n #_00EE8B: STA.l $7EC3C0,X\n\n #_00EE8F: STA.l $7EC400,X\n #_00EE93: STA.l $7EC440,X\n #_00EE97: STA.l $7EC480,X\n #_00EE9B: STA.l $7EC4C0,X\n\n #_00EE9F: INX\n #_00EEA0: INX\n #_00EEA1: CPX.b #$40\n #_00EEA3: BNE .next_white\n\n; ---------------------------------------------------------\n\n #_00EEA5: LDA.l $7EC500\n #_00EEA9: STA.l $7EC540\n\n #_00EEAD: LDA.w #$0000\n #_00EEB0: STA.l $7EC007\n\n #_00EEB4: LDA.w #$0002\n #_00EEB7: STA.l $7EC009\n\n #_00EEBB: LDA.b $8A\n #_00EEBD: CMP.w #$001B ; OW 1B\n #_00EEC0: BNE .not_hyrule_castle\n\n #_00EEC2: LDA.w #$0000 ; RGB: #000000\n #_00EEC5: STA.l $7EC300\n #_00EEC9: STA.l $7EC340\n #_00EECD: STA.l $7EC500\n #_00EED1: STA.l $7EC540\n\n.not_hyrule_castle\n #_00EED5: SEP #$20\n\n #_00EED7: LDA.b #$08\n #_00EED9: STA.w $06BB\n #_00EEDC: STZ.w $06BA\n\n #_00EEDF: RTL" + }, + { + "name": "MirrorWarp_GoToSubmodules", + "code": "MirrorWarp_GoToSubmodules:\n #_00EEE0: JSL AnimateMirrorWarp\n\n; ---------------------------------------------------------\n\n#EXIT_00EEE4:\n #_00EEE4: SEP #$30\n\n #_00EEE6: RTL" + }, + { + "name": "MirrorWarp_RunAnimationSubmodules", + "code": "MirrorWarp_RunAnimationSubmodules:\n #_00EEE7: DEC.w $06BB\n #_00EEEA: BNE MirrorWarp_GoToSubmodules\n\n #_00EEEC: LDA.b #$02\n #_00EEEE: STA.w $06BB\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter_BlindingWhite", + "code": "PaletteFilter_BlindingWhite:\n #_00EEF1: REP #$30\n\n #_00EEF3: LDA.l $7EC009\n #_00EEF7: CMP.w #$00FF\n #_00EEFA: BEQ EXIT_00EEE4\n\n #_00EEFC: CMP.w #$0002\n #_00EEFF: BNE .restore_subtractive\n\n #_00EF01: LDX.w #$0040\n #_00EF04: LDA.w #$01B0\n #_00EF07: JSR PaletteFilter_RestoreAdditive\n\n #_00EF0A: LDX.w #$01C0\n #_00EF0D: LDA.w #$01E0\n #_00EF10: JSR PaletteFilter_RestoreAdditive\n\n #_00EF13: BRA PaletteFilter_StartBlindingWhite\n\n.restore_subtractive\n #_00EF15: LDX.w #$0040\n #_00EF18: LDA.w #$01B0\n #_00EF1B: JSR PaletteFilter_RestoreSubtractive\n\n #_00EF1E: LDX.w #$01C0\n #_00EF21: LDA.w #$01E0\n #_00EF24: JSR PaletteFilter_RestoreSubtractive\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter_StartBlindingWhite", + "code": "PaletteFilter_StartBlindingWhite:\n #_00EF27: LDA.l $7EC540\n #_00EF2B: STA.l $7EC500\n\n #_00EF2F: LDA.l $7EC009\n #_00EF33: BNE .check_shorter\n\n #_00EF35: LDA.l $7EC007\n #_00EF39: INC A\n #_00EF3A: STA.l $7EC007\n\n #_00EF3E: CMP.w #$0042\n #_00EF41: BNE .trigger_update\n\n #_00EF43: LDA.w #$00FF\n #_00EF46: STA.l $7EC009\n\n #_00EF4A: SEP #$20\n\n #_00EF4C: LDA.b #$20\n #_00EF4E: STA.w $06BB\n\n.trigger_update\n #_00EF51: SEP #$30\n\n #_00EF53: INC.b $15\n\n #_00EF55: RTL" + }, + { + "name": "PaletteFilter_BlindingWhiteTriforce", + "code": "PaletteFilter_BlindingWhiteTriforce:\n #_00EF8A: REP #$30\n\n #_00EF8C: LDX.w #$0040\n #_00EF8F: LDA.w #$0200\n #_00EF92: JSR PaletteFilter_RestoreAdditive\n\n #_00EF95: BRA PaletteFilter_StartBlindingWhite\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter_WhirlpoolBlue", + "code": "PaletteFilter_WhirlpoolBlue:\n #_00EF97: LDA.b $1A\n #_00EF99: LSR A\n #_00EF9A: BCC .skip\n\n #_00EF9C: REP #$30\n\n #_00EF9E: PHB\n #_00EF9F: PHK\n #_00EFA0: PLB\n\n; ---------------------------------------------------------\n\n #_00EFA1: LDX.w #$0040\n\n.next_color\n #_00EFA4: LDA.l $7EC500,X\n #_00EFA8: TAY\n\n #_00EFA9: AND.w #$7C00\n #_00EFAC: CMP.w #$7C00\n #_00EFAF: BEQ .max_blue\n\n #_00EFB1: TYA\n #_00EFB2: CLC\n #_00EFB3: ADC.w #$0400\n #_00EFB6: TAY\n\n.max_blue\n #_00EFB7: TYA\n #_00EFB8: STA.l $7EC500,X\n\n #_00EFBC: INX\n #_00EFBD: INX\n #_00EFBE: CPX.w #$0200\n #_00EFC1: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00EFC3: LDA.l $7EC540\n #_00EFC7: STA.l $7EC500\n\n #_00EFCB: PLB\n\n #_00EFCC: SEP #$20\n\n #_00EFCE: LDA.l $7EC007\n #_00EFD2: LSR A\n #_00EFD3: BCS .no_mosaic_increment\n\n #_00EFD5: LDA.l $7EC011\n #_00EFD9: CLC\n #_00EFDA: ADC.b #$10\n #_00EFDC: STA.l $7EC011\n\n.no_mosaic_increment\n #_00EFE0: LDA.l $7EC007\n #_00EFE4: INC A\n #_00EFE5: STA.l $7EC007\n\n #_00EFE9: CMP.b #$1F\n #_00EFEB: BNE .skip\n\n #_00EFED: LDA.b #$00\n #_00EFEF: STA.l $7EC007\n\n #_00EFF3: INC.b $B0\n\n #_00EFF5: LDA.b #$F0\n #_00EFF7: STA.l $7EC011\n\n; ---------------------------------------------------------\n\n.skip\n #_00EFFB: SEP #$30\n\n #_00EFFD: LDA.b #$09\n #_00EFFF: STA.b $94\n\n #_00F001: LDA.l $7EC011\n #_00F005: ORA.b #$03\n #_00F007: STA.b $95\n\n #_00F009: INC.b $15\n\n #_00F00B: RTL" + }, + { + "name": "PaletteFilter_IsolateWhirlpoolBlue", + "code": "PaletteFilter_IsolateWhirlpoolBlue:\n #_00F00C: REP #$30\n\n #_00F00E: PHB\n #_00F00F: PHK\n #_00F010: PLB\n\n #_00F011: LDX.w #$0040\n\n.next_color_isolated\n #_00F014: LDA.l $7EC500,X\n #_00F018: TAY\n\n #_00F019: AND.w #$03E0\n #_00F01C: BEQ .no_green\n\n #_00F01E: TYA\n #_00F01F: SEC\n #_00F020: SBC.w #$0020\n #_00F023: TAY\n\n.no_green\n #_00F024: TYA\n #_00F025: AND.w #$001F\n #_00F028: BEQ .no_red\n\n #_00F02A: TYA\n #_00F02B: SEC\n #_00F02C: SBC.w #$0001\n #_00F02F: TAY\n\n.no_red\n #_00F030: TYA\n #_00F031: STA.l $7EC500,X\n\n #_00F035: INX\n #_00F036: INX\n #_00F037: CPX.w #$0200\n #_00F03A: BNE .next_color_isolated\n\n; ---------------------------------------------------------\n\n #_00F03C: LDA.l $7EC540\n #_00F040: STA.l $7EC500\n\n #_00F044: PLB\n\n #_00F045: SEP #$20\n\n #_00F047: JMP.w PaletteFilter_WhirlpoolBlue_no_mosaic_increment\n\n; =========================================================\n" + }, + { + "name": "PaletteFilter_WhirlpoolRestoreBlue", + "code": "PaletteFilter_WhirlpoolRestoreBlue:\n #_00F04A: LDA.b $1A\n #_00F04C: LSR A\n #_00F04D: BCC .skip\n\n #_00F04F: REP #$30\n\n #_00F051: PHB\n #_00F052: PHK\n #_00F053: PLB\n\n #_00F054: LDX.w #$0040\n\n.next_color\n #_00F057: LDA.l $7EC300,X\n #_00F05B: AND.w #$7C00\n #_00F05E: STA.b $00\n\n #_00F060: LDA.l $7EC500,X\n #_00F064: TAY\n\n #_00F065: AND.w #$7C00\n #_00F068: CMP.b $00\n #_00F06A: BEQ .blue_equal\n\n #_00F06C: TYA\n #_00F06D: SEC\n #_00F06E: SBC.w #$0400\n #_00F071: TAY\n\n.blue_equal\n #_00F072: TYA\n #_00F073: STA.l $7EC500,X\n\n #_00F077: INX\n #_00F078: INX\n #_00F079: CPX.w #$0200\n #_00F07C: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00F07E: LDA.l $7EC540\n #_00F082: STA.l $7EC500\n\n #_00F086: PLB\n\n #_00F087: SEP #$20\n\n #_00F089: LDA.l $7EC007\n #_00F08D: LSR A\n #_00F08E: BCS .no_mosaic_decrement\n\n #_00F090: LDA.l $7EC011\n #_00F094: BEQ .no_mosaic_decrement\n\n #_00F096: SEC\n #_00F097: SBC.b #$10\n #_00F099: STA.l $7EC011\n\n.no_mosaic_decrement\n #_00F09D: LDA.l $7EC007\n #_00F0A1: INC A\n #_00F0A2: STA.l $7EC007\n\n #_00F0A6: CMP.b #$1F\n #_00F0A8: BNE .skip\n\n #_00F0AA: LDA.b #$00\n #_00F0AC: STA.l $7EC007\n #_00F0B0: STA.l $7EC011\n\n #_00F0B4: INC.b $B0\n\n; ---------------------------------------------------------\n\n.skip\n #_00F0B6: SEP #$30\n\n #_00F0B8: LDA.b #$09\n #_00F0BA: STA.b $94\n\n #_00F0BC: LDA.l $7EC011\n #_00F0C0: ORA.b #$03\n #_00F0C2: STA.b $95\n\n #_00F0C4: INC.b $15\n\n #_00F0C6: RTL" + }, + { + "name": "PaletteFilter_WhirlpoolRestoreRedGreen", + "code": "PaletteFilter_WhirlpoolRestoreRedGreen:\n #_00F0C7: REP #$30\n\n #_00F0C9: PHB\n #_00F0CA: PHK\n #_00F0CB: PLB\n\n #_00F0CC: LDX.w #$0040\n\n.next_color\n #_00F0CF: LDA.l $7EC300,X\n #_00F0D3: AND.w #$03E0\n #_00F0D6: STA.b $00\n\n #_00F0D8: LDA.l $7EC300,X\n #_00F0DC: AND.w #$001F\n #_00F0DF: STA.b $02\n\n #_00F0E1: LDA.l $7EC500,X\n #_00F0E5: TAY\n\n #_00F0E6: AND.w #$03E0\n #_00F0E9: CMP.b $00\n #_00F0EB: BEQ .green_equal\n\n #_00F0ED: TYA\n #_00F0EE: CLC\n #_00F0EF: ADC.w #$0020\n #_00F0F2: TAY\n\n.green_equal\n #_00F0F3: TYA\n #_00F0F4: AND.w #$001F\n #_00F0F7: CMP.b $02\n #_00F0F9: BEQ .red_equal\n\n #_00F0FB: TYA\n #_00F0FC: CLC\n #_00F0FD: ADC.w #$0001\n #_00F100: TAY\n\n.red_equal\n #_00F101: TYA\n #_00F102: STA.l $7EC500,X\n\n #_00F106: INX\n #_00F107: INX\n #_00F108: CPX.w #$0200\n #_00F10B: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00F10D: LDA.l $7EC540\n #_00F111: STA.l $7EC500\n\n #_00F115: PLB\n\n #_00F116: SEP #$20\n\n #_00F118: LDA.l $7EC007\n\n #_00F11C: INC A\n #_00F11D: STA.l $7EC007\n\n #_00F121: CMP.b #$1F\n #_00F123: BNE .still_going\n\n #_00F125: LDA.b #$00\n #_00F127: STA.l $7EC007\n\n #_00F12B: INC.b $B0\n\n.still_going\n #_00F12D: SEP #$30\n\n #_00F12F: INC.b $15\n\n #_00F131: RTL" + }, + { + "name": "PaletteFilter_RestoreBGSubstractiveStrict", + "code": "PaletteFilter_RestoreBGSubstractiveStrict:\n #_00F135: REP #$30\n\n #_00F137: LDA.l $7EC009\n #_00F13B: CMP.w #$00FF\n #_00F13E: BEQ EXIT_00F132\n\n #_00F140: PHB\n #_00F141: PHK\n #_00F142: PLB\n\n #_00F143: LDX.w #$0040\n #_00F146: LDA.w #$0100\n #_00F149: JSR PaletteFilter_RestoreSubtractive\n\n #_00F14C: PLB\n\n #_00F14D: LDA.l $7EC007\n #_00F151: INC A\n #_00F152: STA.l $7EC007\n\n #_00F156: CMP.w #$0020\n #_00F159: BNE .still_going\n\n #_00F15B: LDA.w #$00FF\n #_00F15E: STA.l $7EC009\n\n #_00F162: STZ.b $1D\n\n.still_going\n #_00F164: SEP #$30\n\n #_00F166: INC.b $15\n\n #_00F168: RTL" + }, + { + "name": "PaletteFilter_RestoreBGAdditiveStrict", + "code": "PaletteFilter_RestoreBGAdditiveStrict:\n #_00F169: REP #$30\n\n #_00F16B: PHB\n #_00F16C: PHK\n #_00F16D: PLB\n\n #_00F16E: LDX.w #$0040\n #_00F171: LDA.w #$0100\n #_00F174: JSR PaletteFilter_RestoreAdditive\n\n #_00F177: PLB\n\n #_00F178: LDA.l $7EC007\n #_00F17C: INC A\n #_00F17D: STA.l $7EC007\n\n #_00F181: BRA PaletteFilter_RestoreBGSubstractiveStrict_still_going\n\n; =========================================================\n" + }, + { + "name": "Trinexx_FlashShellPalette_Red", + "code": "Trinexx_FlashShellPalette_Red:\n #_00F183: LDA.w $04BE\n #_00F186: BNE TrinexxFilterRed_tick_timer\n\n #_00F188: REP #$20\n\n #_00F18A: LDX.b #$00\n\n.next_color\n #_00F18C: LDA.l $7EC582,X\n #_00F190: AND.w #$001F\n #_00F193: CMP.w #$001F\n #_00F196: BEQ .red_equal\n\n #_00F198: CLC\n #_00F199: ADC.w #$0001\n\n.red_equal\n #_00F19C: STA.b $00\n\n #_00F19E: LDA.l $7EC582,X\n #_00F1A2: AND.w #$FFE0\n #_00F1A5: ORA.b $00\n #_00F1A7: STA.l $7EC582,X\n\n #_00F1AB: INX\n #_00F1AC: INX\n #_00F1AD: CPX.b #$0E\n #_00F1AF: BNE .next_color\n\n; ---------------------------------------------------------\n\n#TrinexxFilterRed_continue:\n #_00F1B1: SEP #$20\n\n #_00F1B3: INC.b $15\n\n #_00F1B5: INC.w $04C0\n\n #_00F1B8: LDA.w $04C0\n #_00F1BB: CMP.b #$0C\n #_00F1BD: BCS .done\n\n #_00F1BF: LDA.b #$03\n #_00F1C1: STA.w $04BE\n\n; ---------------------------------------------------------\n\n#TrinexxFilterRed_tick_timer:\n #_00F1C4: DEC.w $04BE\n\n #_00F1C7: RTL" + }, + { + "name": "Trinexx_UnflashShellPalette_Red", + "code": "Trinexx_UnflashShellPalette_Red:\n #_00F1CF: LDA.w $04BE\n #_00F1D2: BNE TrinexxFilterRed_tick_timer\n\n #_00F1D4: REP #$20\n\n #_00F1D6: LDX.b #$00\n\n.next_color\n #_00F1D8: LDA.l $7EC382,X\n #_00F1DC: AND.w #$001F\n #_00F1DF: STA.b $0C\n\n #_00F1E1: LDA.l $7EC582,X\n #_00F1E5: AND.w #$001F\n #_00F1E8: CMP.b $0C\n #_00F1EA: BEQ .red_equal\n\n #_00F1EC: SEC\n #_00F1ED: SBC.w #$0001\n\n.red_equal\n #_00F1F0: STA.b $00\n\n #_00F1F2: LDA.l $7EC582,X\n #_00F1F6: AND.w #$FFE0\n #_00F1F9: ORA.b $00\n #_00F1FB: STA.l $7EC582,X\n\n #_00F1FF: INX\n #_00F200: INX\n #_00F201: CPX.b #$0E\n #_00F203: BNE .next_color\n\n #_00F205: BRA TrinexxFilterRed_continue\n\n; =========================================================\n" + }, + { + "name": "Trinexx_FlashShellPalette_Blue", + "code": "Trinexx_FlashShellPalette_Blue:\n #_00F207: LDA.w $04BF\n #_00F20A: BNE TrinexxFilterBlue_tick_timer\n\n #_00F20C: REP #$20\n\n #_00F20E: LDX.b #$00\n\n.next_color\n #_00F210: LDA.l $7EC582,X\n #_00F214: AND.w #$7C00\n #_00F217: CMP.w #$7C00\n #_00F21A: BEQ .blue_equal\n\n #_00F21C: CLC\n #_00F21D: ADC.w #$0400\n\n.blue_equal\n #_00F220: STA.b $00\n\n #_00F222: LDA.l $7EC582,X\n #_00F226: AND.w #$83FF\n #_00F229: ORA.b $00\n #_00F22B: STA.l $7EC582,X\n\n #_00F22F: INX\n #_00F230: INX\n #_00F231: CPX.b #$0E\n #_00F233: BNE .next_color\n\n; ---------------------------------------------------------\n\n#TrinexxFilterBlue_continue:\n #_00F235: SEP #$20\n\n #_00F237: INC.b $15\n\n #_00F239: INC.w $04C1\n\n #_00F23C: LDA.w $04C1\n #_00F23F: CMP.b #$0C\n #_00F241: BCS .done\n\n #_00F243: LDA.b #$03\n #_00F245: STA.w $04BF\n\n; ---------------------------------------------------------\n\n#TrinexxFilterBlue_tick_timer:\n #_00F248: DEC.w $04BF\n\n #_00F24B: RTL" + }, + { + "name": "Trinexx_UnflashShellPalette_Blue", + "code": "Trinexx_UnflashShellPalette_Blue:\n #_00F253: LDA.w $04BF\n #_00F256: BNE TrinexxFilterBlue_tick_timer\n\n #_00F258: REP #$20\n\n #_00F25A: LDX.b #$00\n\n.next_color\n #_00F25C: LDA.l $7EC382,X\n #_00F260: AND.w #$7C00\n #_00F263: STA.b $0C\n\n #_00F265: LDA.l $7EC582,X\n #_00F269: AND.w #$7C00\n #_00F26C: CMP.b $0C\n #_00F26E: BEQ .blue_equal\n\n #_00F270: SEC\n #_00F271: SBC.w #$0400\n\n.blue_equal\n #_00F274: STA.b $00\n\n #_00F276: LDA.l $7EC582,X\n #_00F27A: AND.w #$83FF\n #_00F27D: ORA.b $00\n #_00F27F: STA.l $7EC582,X\n\n #_00F283: INX\n #_00F284: INX\n #_00F285: CPX.b #$0E\n #_00F287: BNE .next_color\n\n #_00F289: BRA TrinexxFilterBlue_continue\n\n; =========================================================\n" + }, + { + "name": "IrisSpotlight_close", + "code": "IrisSpotlight_close:\n #_00F28B: REP #$10\n\n #_00F28D: LDY.w #$0000\n #_00F290: LDX.w #$007E\n\n #_00F293: BRA .continue\n\n; =========================================================\n\n#IrisSpotlight_open:\n #_00F295: REP #$10\n\n #_00F297: LDY.w #$0002\n #_00F29A: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.continue\n #_00F29D: STY.w $067E\n\n #_00F2A0: STX.w $067C\n\n #_00F2A3: STZ.w HDMAEN\n\n #_00F2A6: LDX.w #$2641\n #_00F2A9: STX.w DMA6MODE\n #_00F2AC: STX.w DMA7MODE\n\n #_00F2AF: LDX.w #.hdma_table>>0\n #_00F2B2: STX.w DMA6ADDRL\n #_00F2B5: STX.w DMA7ADDRL\n\n #_00F2B8: LDA.b #.hdma_table>>16\n #_00F2BA: STA.w DMA6ADDRB\n #_00F2BD: STA.w DMA7ADDRB\n\n #_00F2C0: LDA.b #$00\n #_00F2C2: STA.w HDMA6INDIRECTB\n #_00F2C5: STA.w HDMA7INDIRECTB\n\n; ---------------------------------------------------------\n\n #_00F2C8: LDA.b #$33\n #_00F2CA: STA.b $96\n\n #_00F2CC: LDA.b #$03\n #_00F2CE: STA.b $97\n\n #_00F2D0: LDA.b #$33\n #_00F2D2: STA.b $98\n\n #_00F2D4: LDA.b $1C\n #_00F2D6: STA.b $1E\n\n #_00F2D8: LDA.b $1D\n #_00F2DA: STA.b $1F\n\n #_00F2DC: LDA.b $1B\n #_00F2DE: BNE .indoors\n\n #_00F2E0: LDA.b #$20 ; Fixed color RGB: #000000\n #_00F2E2: STA.b $9C\n\n #_00F2E4: LDA.b #$40\n #_00F2E6: STA.b $9D\n\n #_00F2E8: LDA.b #$80\n #_00F2EA: STA.b $9E\n\n; ---------------------------------------------------------\n\n.indoors\n #_00F2EC: SEP #$10\n\n #_00F2EE: JSL IrisSpotlight_ConfigureTable\n\n #_00F2F2: LDA.b #$80\n #_00F2F4: STA.b $9B\n\n #_00F2F6: LDA.b #$0F\n #_00F2F8: STA.b $13\n\n #_00F2FA: RTL" + }, + { + "name": "IrisSpotlight_ConfigureTable", + "code": "IrisSpotlight_ConfigureTable:\n #_00F312: PHB\n #_00F313: PHK\n #_00F314: PLB\n\n #_00F315: REP #$30\n\n #_00F317: LDA.b $20\n #_00F319: SEC\n #_00F31A: SBC.b $E8\n\n #_00F31C: CLC\n #_00F31D: ADC.w #$000C\n #_00F320: STA.b $0E\n\n #_00F322: SEC\n #_00F323: SBC.w $067C\n #_00F326: STA.w $0674\n\n #_00F329: LDA.b $0E\n #_00F32B: CLC\n #_00F32C: ADC.w $067C\n #_00F32F: STA.w $0676\n\n; ---------------------------------------------------------\n\n #_00F332: LDA.b $22\n #_00F334: SEC\n #_00F335: SBC.b $E2\n\n #_00F337: CLC\n #_00F338: ADC.w #$0008\n #_00F33B: STA.w $0670\n\n #_00F33E: LDA.w $067C\n #_00F341: STA.w $067A\n\n #_00F344: LDA.b $0E\n #_00F346: ASL A\n #_00F347: STA.b $06\n\n; ---------------------------------------------------------\n\n #_00F349: CMP.w #$00E0\n #_00F34C: BCS .big_enough\n\n #_00F34E: LDA.w #$00E0\n #_00F351: STA.b $06\n\n.big_enough\n #_00F353: LDA.b $06\n #_00F355: SEC\n #_00F356: SBC.b $0E\n #_00F358: STA.b $0A\n\n #_00F35A: LDA.b $0E\n #_00F35C: SEC\n #_00F35D: SBC.b $0A\n #_00F35F: STA.b $04\n\n; ---------------------------------------------------------\n\n.next_check\n #_00F361: LDA.w #$00FF\n #_00F364: STA.b $08\n\n #_00F366: LDA.b $06\n #_00F368: CMP.w $0676\n #_00F36B: BCS .past_calced_size\n\n #_00F36D: LDA.w $067A\n #_00F370: BEQ .at_zero\n\n #_00F372: DEC.w $067A\n\n.at_zero\n #_00F375: JSR IrisSpotlight_CalculateCircleValue\n\n.past_calced_size\n #_00F378: LDA.b $04\n #_00F37A: ASL A\n #_00F37B: CMP.w #$01C0\n #_00F37E: BCS .skip_update_a\n\n #_00F380: TAX\n\n #_00F381: LDA.b $08\n #_00F383: STA.l $7F7000,X\n\n.skip_update_a\n #_00F387: LDA.b $06\n #_00F389: ASL A\n #_00F38A: CMP.w #$01C0\n #_00F38D: BCS .skip_update_b\n\n #_00F38F: TAX\n\n #_00F390: LDA.b $08\n #_00F392: STA.l $7F7000,X\n\n.skip_update_b\n #_00F396: LDA.b $0E\n #_00F398: CMP.b $04\n #_00F39A: BEQ .wait_for_scanline\n\n #_00F39C: INC.b $04\n\n #_00F39E: DEC.b $06\n\n #_00F3A0: JMP.w .next_check\n\n; ---------------------------------------------------------\n\n.wait_for_scanline\n #_00F3A3: LDA.w SLVH\n #_00F3A6: LDA.w STAT78\n\n #_00F3A9: LDA.w OPVCT\n #_00F3AC: AND.w #$00FF\n #_00F3AF: CMP.w #$00C0\n #_00F3B2: BCC .wait_for_scanline\n\n #_00F3B4: LDX.w #$0000\n\n.copy_table\n #_00F3B7: LDA.l $7F7000,X\n #_00F3BB: STA.w $1B00,X\n\n #_00F3BE: INX\n #_00F3BF: INX\n #_00F3C0: CPX.w #$01C0\n #_00F3C3: BCC .copy_table\n\n; ---------------------------------------------------------\n\n #_00F3C5: LDX.w $067E\n\n #_00F3C8: LDA.w $067C\n #_00F3CB: CLC\n #_00F3CC: ADC.w .delta,X\n #_00F3CF: STA.w $067C\n\n #_00F3D2: CMP.w .target,X\n #_00F3D5: BNE .exit\n\n #_00F3D7: SEP #$20\n\n #_00F3D9: LDA.w $067E\n #_00F3DC: BNE .reset_table\n\n #_00F3DE: LDA.b #$80\n #_00F3E0: STA.b $13\n #_00F3E2: STA.w INIDISP\n\n #_00F3E5: BRA .continue\n\n; ---------------------------------------------------------\n\n.reset_table\n #_00F3E7: JSL IrisSpotlight_ResetTable\n\n.continue\n #_00F3EB: SEP #$30\n\n #_00F3ED: STZ.b $B0\n #_00F3EF: STZ.b $11\n\n #_00F3F1: LDA.b $10\n #_00F3F3: CMP.b #$07\n #_00F3F5: BEQ .underworld\n\n #_00F3F7: CMP.b #$10\n #_00F3F9: BNE .not_opening\n\n.underworld\n #_00F3FB: LDA.b $1B\n #_00F3FD: BNE .check_music_command\n\n #_00F3FF: LDX.b $8A\n #_00F401: LDA.l $7F5B00,X\n #_00F405: LSR A\n #_00F406: LSR A\n #_00F407: LSR A\n #_00F408: LSR A\n #_00F409: STA.w $012D\n\n.check_music_command\n #_00F40C: LDA.w $0132\n #_00F40F: CMP.b #$FF ; SONG FF - transfer\n #_00F411: BEQ .not_opening\n\n #_00F413: STA.w $012C\n\n.not_opening\n #_00F416: LDA.w $010C\n #_00F419: STA.b $10\n\n #_00F41B: CMP.b #$06\n #_00F41D: BNE .exit\n\n #_00F41F: JSL Sprite_ResetAll\n\n.exit\n #_00F423: SEP #$30\n\n #_00F425: PLB\n\n #_00F426: RTL" + }, + { + "name": "IrisSpotlight_ResetTable", + "code": "IrisSpotlight_ResetTable:\n #_00F427: REP #$30\n\n #_00F429: LDX.w #$003E\n #_00F42C: LDA.w #$FF00\n\n.next\n #_00F42F: STA.w $1B00,X\n #_00F432: STA.w $1B40,X\n #_00F435: STA.w $1B80,X\n #_00F438: STA.w $1BC0,X\n #_00F43B: STA.w $1C00,X\n #_00F43E: STA.w $1C40,X\n #_00F441: STA.w $1C80,X\n\n #_00F444: DEX\n #_00F445: DEX\n #_00F446: BPL .next\n\n #_00F448: SEP #$30\n\n #_00F44A: RTL" + }, + { + "name": "IrisSpotlight_CalculateCircleValue", + "code": "IrisSpotlight_CalculateCircleValue:\n #_00F4CC: SEP #$30\n\n #_00F4CE: STA.w WRDIVH\n #_00F4D1: STZ.w WRDIVL\n\n #_00F4D4: LDA.w $067C\n #_00F4D7: STA.w WRDIVB\n\n #_00F4DA: NOP\n #_00F4DB: NOP\n #_00F4DC: NOP\n #_00F4DD: NOP\n #_00F4DE: NOP\n #_00F4DF: NOP\n\n #_00F4E0: REP #$20\n\n #_00F4E2: LDA.w RDDIV\n #_00F4E5: LSR A\n\n #_00F4E6: SEP #$20\n\n #_00F4E8: TAX\n\n #_00F4E9: LDY.w .multiplicand,X\n #_00F4EC: STY.b $0A\n #_00F4EE: STY.w WRMPYA\n\n #_00F4F1: LDA.w $067C\n #_00F4F4: STA.w WRMPYB\n\n #_00F4F7: NOP\n #_00F4F8: NOP\n\n #_00F4F9: STZ.b $01\n #_00F4FB: STZ.b $0B\n\n #_00F4FD: LDA.w RDMPYH\n #_00F500: STA.b $00\n\n #_00F502: REP #$30\n\n #_00F504: ASL.b $00\n #_00F506: LDA.b $0A\n #_00F508: BEQ .exit\n\n #_00F50A: LDA.b $00\n #_00F50C: CLC\n #_00F50D: ADC.w $0670\n #_00F510: STA.b $02\n\n #_00F512: LDA.w $0670\n #_00F515: SEC\n #_00F516: SBC.b $00\n\n #_00F518: STZ.b $00\n\n #_00F51A: BMI .positive\n\n #_00F51C: BIT.w #$FF00\n #_00F51F: BEQ .zero_high_a\n\n #_00F521: LDA.w #$00FF\n\n.zero_high_a\n #_00F524: STA.b $00\n\n.positive\n #_00F526: LDA.b $02\n #_00F528: BIT.w #$FF00\n #_00F52B: BEQ .zero_high_b\n\n #_00F52D: LDA.w #$00FF\n\n.zero_high_b\n #_00F530: XBA\n #_00F531: ORA.b $00\n #_00F533: CMP.w #$FFFF\n #_00F536: BNE .keep\n\n #_00F538: LDA.w #$00FF\n\n.keep\n #_00F53B: STA.b $08\n\n.exit\n #_00F53D: RTS" + }, + { + "name": "OrientLampLightCone", + "code": "OrientLampLightCone:\n #_00F567: LDA.w $0458\n #_00F56A: BEQ EXIT_00F566\n\n #_00F56C: LDA.b $11\n #_00F56E: CMP.b #$14\n #_00F570: BEQ EXIT_00F566\n\n #_00F572: REP #$30\n\n #_00F574: LDA.b $2F\n #_00F576: AND.w #$00FF\n #_00F579: STA.b $00\n\n #_00F57B: TAX\n\n #_00F57C: LDA.b $6C\n #_00F57E: AND.w #$00FF\n #_00F581: BEQ .not_in_doorway\n\n #_00F583: AND.w #$00FE\n #_00F586: ASL A\n #_00F587: TAX\n #_00F588: BEQ .vertical_doorway\n\n #_00F58A: LDA.b $00\n #_00F58C: CMP.w #$0004\n #_00F58F: BCS .facing_horizontal\n\n #_00F591: LDA.b $22\n #_00F593: CLC\n #_00F594: ADC.w #$0008\n #_00F597: AND.w #$00FF\n\n #_00F59A: BRA .doorway_continue\n\n.facing_horizontal\n #_00F59C: TAX\n\n #_00F59D: BRA .not_in_doorway\n\n; ---------------------------------------------------------\n\n.vertical_doorway\n #_00F59F: LDA.b $00\n #_00F5A1: CMP.w #$0004\n #_00F5A4: BCC .facing_horizontal\n\n #_00F5A6: LDA.b $20\n #_00F5A8: AND.w #$00FF\n\n; ---------------------------------------------------------\n\n.doorway_continue\n #_00F5AB: CMP.w #$0080\n #_00F5AE: BCC .not_in_doorway\n\n #_00F5B0: INX\n #_00F5B1: INX\n\n.not_in_doorway\n #_00F5B2: CPX.w #$0004\n #_00F5B5: BCS OrientHorizontalLampCone\n\n; =========================================================\n" + }, + { + "name": "OrientVerticalLampCone", + "code": "OrientVerticalLampCone:\n #_00F5B7: LDA.b $22\n #_00F5B9: SEC\n #_00F5BA: SBC.w #$0077\n #_00F5BD: STA.b $00\n\n #_00F5BF: LDA.b $E2\n #_00F5C1: SEC\n #_00F5C2: SBC.b $00\n\n #_00F5C4: CLC\n #_00F5C5: ADC.l .horizontal,X\n #_00F5C9: STA.b $E0\n\n #_00F5CB: LDA.b $20\n #_00F5CD: SEC\n #_00F5CE: SBC.w #$0058\n #_00F5D1: STA.b $00\n\n; ---------------------------------------------------------\n\n #_00F5D3: LDA.b $E8\n #_00F5D5: SEC\n #_00F5D6: SBC.b $00\n\n #_00F5D8: CLC\n #_00F5D9: ADC.l .vertical,X\n\n #_00F5DD: CLC\n #_00F5DE: ADC.l .adjust,X\n\n #_00F5E2: CLC\n #_00F5E3: ADC.l .margin,X\n\n #_00F5E7: BPL .lower_in_bounds\n\n #_00F5E9: LDA.w #$0000\n\n.lower_in_bounds\n #_00F5EC: CMP.l .max,X\n #_00F5F0: BCC .upper_in_bounds\n\n #_00F5F2: LDA.l .max,X\n\n.upper_in_bounds\n #_00F5F6: SEC\n #_00F5F7: SBC.l .margin,X\n #_00F5FB: STA.b $E6\n\n #_00F5FD: SEP #$30\n\n #_00F5FF: RTL" + }, + { + "name": "OrientHorizontalLampCone", + "code": "OrientHorizontalLampCone:\n #_00F600: LDA.b $20\n #_00F602: SEC\n #_00F603: SBC.w #$0072\n #_00F606: STA.b $00\n\n #_00F608: LDA.b $E8\n #_00F60A: SEC\n #_00F60B: SBC.b $00\n\n #_00F60D: CLC\n #_00F60E: ADC.l .vertical,X\n #_00F612: STA.b $E6\n\n #_00F614: LDA.b $22\n #_00F616: SEC\n #_00F617: SBC.w #$0058\n #_00F61A: STA.b $00\n\n; ---------------------------------------------------------\n\n #_00F61C: LDA.b $E2\n #_00F61E: SEC\n #_00F61F: SBC.b $00\n\n #_00F621: CLC\n #_00F622: ADC.l .horizontal,X\n\n #_00F626: CLC\n #_00F627: ADC.l .adjust,X\n\n #_00F62B: CLC\n #_00F62C: ADC.l .margin,X\n\n #_00F630: BPL .lower_in_bounds\n\n #_00F632: LDA.w #$0000\n\n.lower_in_bounds\n #_00F635: CMP.l .max,X\n #_00F639: BCC .upper_in_bounds\n\n #_00F63B: LDA.l .max,X\n\n.upper_in_bounds\n #_00F63F: SEC\n #_00F640: SBC.l .margin,X\n #_00F644: STA.b $E0\n\n #_00F646: SEP #$30\n\n #_00F648: RTL" + }, + { + "name": "AdjustWaterHDMAWindow", + "code": "AdjustWaterHDMAWindow:\n #_00F649: REP #$30\n\n #_00F64B: LDA.w $0682\n #_00F64E: SEC\n #_00F64F: SBC.b $E8\n #_00F651: STA.b $0A\n\n #_00F653: SEC\n #_00F654: SBC.w $0684\n #_00F657: STA.w $0674\n\n #_00F65A: LDA.b $0A\n #_00F65C: CLC\n #_00F65D: ADC.w $0684\n\n; =========================================================\n" + }, + { + "name": "AdjustWaterHDMAWindow_Horizontal", + "code": "AdjustWaterHDMAWindow_Horizontal:\n #_00F660: STA.w $0676\n\n #_00F663: LDA.w $0680\n #_00F666: SEC\n #_00F667: SBC.b $E2\n #_00F669: STA.w $0670\n\n #_00F66C: LDA.w $0686\n #_00F66F: BEQ .horizontal_zero\n\n #_00F671: DEC A\n\n.horizontal_zero\n #_00F672: STA.b $0C\n\n #_00F674: CLC\n #_00F675: ADC.w $0670\n #_00F678: STA.b $02\n\n #_00F67A: LDA.w $0670\n #_00F67D: SEC\n #_00F67E: SBC.b $0C\n #_00F680: STA.b $00\n\n #_00F682: LDY.w #$0000\n #_00F685: BMI .positive_a\n\n #_00F687: TAY\n\n #_00F688: AND.w #$FF00\n #_00F68B: BEQ .positive_a\n\n #_00F68D: LDY.w #$00FF\n\n.positive_a\n #_00F690: TYA\n #_00F691: AND.w #$00FF\n #_00F694: STA.b $00\n\n #_00F696: LDA.b $02\n #_00F698: TAY\n\n #_00F699: AND.w #$FF00\n #_00F69C: BEQ .positive_b\n\n #_00F69E: LDY.w #$00FF\n\n.positive_b\n #_00F6A1: TYA\n #_00F6A2: AND.w #$00FF\n #_00F6A5: XBA\n #_00F6A6: ORA.b $00\n #_00F6A8: STA.b $0C\n\n #_00F6AA: LDA.b $0A\n #_00F6AC: ASL A\n #_00F6AD: STA.b $06\n\n #_00F6AF: CMP.w #$00E0\n #_00F6B2: BCS .not_too_far\n\n #_00F6B4: LDA.w #$00E0\n #_00F6B7: STA.b $06\n\n.not_too_far\n #_00F6B9: LDA.b $06\n #_00F6BB: SEC\n #_00F6BC: SBC.b $0A\n #_00F6BE: STA.b $08\n\n #_00F6C0: LDA.b $0A\n #_00F6C2: SEC\n #_00F6C3: SBC.b $08\n #_00F6C5: STA.b $04\n\n #_00F6C7: BRA .start\n\n; ---------------------------------------------------------\n\n.next\n #_00F6C9: INC.b $04\n\n #_00F6CB: DEC.b $06\n\n.start\n #_00F6CD: LDA.b $04\n #_00F6CF: BMI .dont_add_to_hdma_y\n\n #_00F6D1: LDA.w $0674\n #_00F6D4: BMI .no_new_line_y\n\n #_00F6D6: LDA.b $04\n #_00F6D8: CMP.w $0674\n #_00F6DB: BCS .no_new_line_y\n\n #_00F6DD: ASL A\n #_00F6DE: TAX\n\n #_00F6DF: LDA.w #$00FF\n\n #_00F6E2: BRA .check_for_entry_y\n\n.no_new_line_y\n #_00F6E4: LDA.b $04\n #_00F6E6: ASL A\n #_00F6E7: TAX\n\n #_00F6E8: LDA.b $0C\n\n.check_for_entry_y\n #_00F6EA: CPX.w #$01C0\n #_00F6ED: BCS .dont_add_to_hdma_y\n\n #_00F6EF: CMP.w #$FFFF\n #_00F6F2: BNE .not_end_y\n\n #_00F6F4: LDA.w #$00FF\n\n.not_end_y\n #_00F6F7: STA.w $1B00,X\n\n.dont_add_to_hdma_y\n #_00F6FA: LDA.b $06\n #_00F6FC: CMP.w $0676\n #_00F6FF: BCC .no_new_line_x\n\n #_00F701: ASL A\n #_00F702: TAX\n\n #_00F703: LDA.w #$00FF\n #_00F706: BRA .check_for_entry_x\n\n.no_new_line_x\n #_00F708: CMP.w #$00E1\n #_00F70B: BCC .dont_change_boundary_x\n\n #_00F70D: LDA.w $0678\n #_00F710: BEQ .dont_change_boundary_x\n\n #_00F712: DEC.w $0678\n\n.dont_change_boundary_x\n #_00F715: LDA.b $06\n #_00F717: ASL A\n #_00F718: TAX\n\n #_00F719: LDA.b $0C\n\n.check_for_entry_x\n #_00F71B: CPX.w #$01C0\n #_00F71E: BCS .dont_add_to_hdma_x\n\n #_00F720: CMP.w #$FFFF\n #_00F723: BNE .not_end_x\n\n #_00F725: LDA.w #$00FF\n\n.not_end_x\n #_00F728: STA.w $1B00,X\n\n.dont_add_to_hdma_x\n #_00F72B: LDA.b $0A\n #_00F72D: CMP.b $04\n #_00F72F: BNE .next\n\n #_00F731: SEP #$30\n\n #_00F733: RTL" + }, + { + "name": "FloodDam_PrepFloodHDMA", + "code": "FloodDam_PrepFloodHDMA:\n #_00F734: REP #$30\n\n #_00F736: STZ.b $04\n\n #_00F738: LDA.w $0682\n #_00F73B: SEC\n #_00F73C: SBC.b $E8\n #_00F73E: STA.w $0674\n\n #_00F741: LDA.w $0680\n #_00F744: SEC\n #_00F745: SBC.b $E2\n #_00F747: STA.w $0670\n\n #_00F74A: LDA.w $0686\n #_00F74D: EOR.w #$0001\n #_00F750: STA.b $0E\n\n #_00F752: CLC\n #_00F753: ADC.w $0670\n #_00F756: STA.b $02\n\n #_00F758: LDA.w $0670\n #_00F75B: SEC\n #_00F75C: SBC.b $0E\n #_00F75E: AND.w #$00FF\n #_00F761: STA.b $00\n\n #_00F763: LDA.b $02\n #_00F765: AND.w #$00FF\n #_00F768: XBA\n #_00F769: ORA.b $00\n #_00F76B: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next_a\n #_00F76D: LDA.b $04\n #_00F76F: ASL A\n #_00F770: TAX\n\n #_00F771: LDA.w #$FF00\n #_00F774: STA.w $1B00,X\n\n #_00F777: INC.b $04\n\n #_00F779: LDA.b $04\n #_00F77B: CMP.w $0676\n #_00F77E: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_00F780: LDA.b $0E\n #_00F782: SEC\n #_00F783: SBC.w #$0007\n #_00F786: CLC\n #_00F787: ADC.w #$0008\n #_00F78A: STA.b $0C\n\n #_00F78C: CLC\n #_00F78D: ADC.w $0670\n #_00F790: STA.b $02\n\n #_00F792: LDA.w $0670\n #_00F795: SEC\n #_00F796: SBC.b $0C\n #_00F798: AND.w #$00FF\n #_00F79B: STA.b $00\n\n #_00F79D: LDA.b $02\n #_00F79F: AND.w #$00FF\n #_00F7A2: XBA\n #_00F7A3: ORA.b $00\n #_00F7A5: STA.b $0C\n\n #_00F7A7: LDA.w $0676\n #_00F7AA: CLC\n #_00F7AB: ADC.w $0684\n #_00F7AE: EOR.w #$0001\n #_00F7B1: STA.b $0A\n\n; ---------------------------------------------------------\n\n.next_b\n #_00F7B3: LDA.b $04\n #_00F7B5: CMP.b $0A\n #_00F7B7: BCC .shift_in_bounds\n\n #_00F7B9: ASL A\n #_00F7BA: TAX\n\n #_00F7BB: LDA.w #$00FF\n\n #_00F7BE: BRA .continue\n\n.shift_in_bounds\n #_00F7C0: ASL A\n\n #_00F7C1: TAX\n #_00F7C2: CPX.w #$01C0\n #_00F7C5: BCS .shift_in_bounds\n\n #_00F7C7: LDA.b $0C\n\n.continue\n #_00F7C9: CMP.w #$FFFF\n #_00F7CC: BNE .not_neg1\n\n #_00F7CE: LDA.w #$00FF\n\n.not_neg1\n #_00F7D1: STA.w $1B00,X\n\n #_00F7D4: INC.b $04\n\n #_00F7D6: LDA.b $04\n #_00F7D8: CMP.w #$00E1\n #_00F7DB: BCC .next_b\n\n #_00F7DD: SEP #$30\n\n #_00F7DF: RTL" + }, + { + "name": "NULL_00F7E0", + "code": "NULL_00F7E0:\n #_00F7E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n" + }, + { + "name": "Module0E_Interface", + "code": "Module0E_Interface:\n #_00F800: LDA.b $1B\n #_00F802: BEQ .outdoors\n\n #_00F804: LDA.b $11\n #_00F806: CMP.b #$03\n #_00F808: BNE .not_dungeon_map\n\n #_00F80A: LDA.w $0200\n #_00F80D: BEQ .continue\n\n #_00F80F: CMP.b #$07\n #_00F811: BEQ .continue\n\n #_00F813: BRA .skip_core\n\n; ---------------------------------------------------------\n\n.not_dungeon_map\n #_00F815: JSL PushBlock_Handler\n\n #_00F819: BRA .continue\n\n; ---------------------------------------------------------\n\n.outdoors\n #_00F81B: LDA.b $11\n #_00F81D: CMP.b #$07\n #_00F81F: BEQ .overworld_map\n\n #_00F821: CMP.b #$0A ; duck\n #_00F823: BNE .continue\n\n.overworld_map\n #_00F825: LDA.w $0200\n #_00F828: BNE .skip_core\n\n; ---------------------------------------------------------\n\n.continue\n #_00F82A: JSL Sprite_Main\n #_00F82E: JSL LinkOAM_Main\n\n #_00F832: LDA.b $1B\n #_00F834: BNE .indoors\n\n #_00F836: JSL OverworldOverlay_HandleRain\n\n.indoors\n #_00F83A: JSL RefillLogic_long\n\n #_00F83E: LDA.b $11\n #_00F840: CMP.b #$02\n #_00F842: BEQ .skip_core\n\n #_00F844: JSL OrientLampLightCone\n\n; ---------------------------------------------------------\n\n.skip_core\n #_00F848: SEP #$30\n\n #_00F84A: JSL RunInterface\n\n #_00F84E: REP #$21\n\n #_00F850: LDA.b $E2\n #_00F852: ADC.w $011A\n #_00F855: STA.w $011E\n\n #_00F858: LDA.b $E8\n #_00F85A: CLC\n #_00F85B: ADC.w $011C\n #_00F85E: STA.w $0122\n\n #_00F861: LDA.b $E0\n #_00F863: CLC\n #_00F864: ADC.w $011A\n #_00F867: STA.w $0120\n\n #_00F86A: LDA.b $E6\n #_00F86C: CLC\n #_00F86D: ADC.w $011C\n #_00F870: STA.w $0124\n\n #_00F873: SEP #$20\n\n; =========================================================\n" + }, + { + "name": "Module0E_00_Nothing", + "code": "Module0E_00_Nothing:\n #_00F875: RTL" + }, + { + "name": "RunInterface", + "code": "RunInterface:\n #_00F89A: LDX.b $11\n\n #_00F89C: LDA.l .low,X\n #_00F8A0: STA.b $00\n\n #_00F8A2: LDA.l .high,X\n #_00F8A6: STA.b $01\n\n #_00F8A8: LDA.l .bank,X\n #_00F8AC: STA.b $02\n\n #_00F8AE: JML.w [$0000]\n\n; =========================================================\n" + }, + { + "name": "Module0E_05_DesertPrayer", + "code": "Module0E_05_DesertPrayer:\n #_00F8B1: LDA.b $B0\n #_00F8B3: JSL JumpTableLong\n #_00F8B7: dl ResetTransitionPropsAndAdvance_ResetInterface_long\n #_00F8BA: dl ApplyPaletteFilter\n #_00F8BD: dl DesertPrayer_InitializeCutscene\n #_00F8C0: dl DesertPrayer_FadeScene\n #_00F8C3: dl DesertPrayer_WaitForInput\n\n; =========================================================\n" + }, + { + "name": "DesertPrayer_InitializeCutscene", + "code": "DesertPrayer_InitializeCutscene:\n #_00F8C6: JSL DesertPrayer_InitializeIrisHDMA\n\n #_00F8CA: LDA.l $7EC00B\n #_00F8CE: DEC A\n #_00F8CF: STA.l $7EC007\n\n #_00F8D3: LDA.b #$00\n #_00F8D5: STA.l $7EC00B\n\n #_00F8D9: LDA.b #$02\n #_00F8DB: STA.l $7EC009\n\n #_00F8DF: RTL" + }, + { + "name": "DesertPrayer_FadeScene", + "code": "DesertPrayer_FadeScene:\n #_00F8E0: JSL ApplyPaletteFilter\n\n; =========================================================\n" + }, + { + "name": "DesertPrayer_WaitForInput", + "code": "DesertPrayer_WaitForInput:\n #_00F8E4: JSL DesertPrayer_BuildIrisHDMATable\n\n #_00F8E8: RTL" + }, + { + "name": "Module0E_06_Unused", + "code": "Module0E_06_Unused:\n #_00F8E9: LDA.b $B0\n #_00F8EB: JSL JumpTableLong\n #_00F8EF: dl ResetTransitionPropsAndAdvance_ResetInterface_long\n #_00F8F2: dl ApplyPaletteFilter\n #_00F8F5: dl Underworld_HandleTranslucencyAndPalettes_long\n #_00F8F8: dl UnusedInterfacePaletteRecovery_long\n\n; =========================================================\n" + }, + { + "name": "Module0E_04_RedPotion", + "code": "Module0E_04_RedPotion:\n #_00F8FB: JSL AnimatedRefill_Health\n #_00F8FF: BCC .exit\n\n; =========================================================\n\n#Module0E_Interface_RestoreModeFromPotion:\n #_00F901: LDA.b $3A\n #_00F903: AND.b #$BF\n #_00F905: STA.b $3A\n\n #_00F907: INC.b $16\n\n #_00F909: STZ.b $11\n\n #_00F90B: LDA.w $010C\n #_00F90E: STA.b $10\n\n.exit\n #_00F910: RTL" + }, + { + "name": "Module0E_08_GreenPotion", + "code": "Module0E_08_GreenPotion:\n #_00F911: JSL AnimatedRefill_Magic\n #_00F915: BCS Module0E_Interface_RestoreModeFromPotion\n\n #_00F917: RTL" + }, + { + "name": "Module0E_09_BluePotion", + "code": "Module0E_09_BluePotion:\n #_00F918: JSL AnimatedRefill_Health\n #_00F91C: BCC .health_full\n\n #_00F91E: LDA.b #$08\n #_00F920: STA.b $11\n\n.health_full\n #_00F922: JSL AnimatedRefill_Magic\n #_00F926: BCC .magic_full\n\n #_00F928: LDA.b #$04\n #_00F92A: STA.b $11\n\n.magic_full\n #_00F92C: RTL" + }, + { + "name": "PrepareDungeonExitFromBossFight", + "code": "PrepareDungeonExitFromBossFight:\n #_00F945: JSL SaveDeathCount\n #_00F949: JSL SaveDungeonKeys\n\n #_00F94D: LDA.w $0403\n #_00F950: ORA.b #$80\n #_00F952: STA.w $0403\n\n #_00F955: JSL Underworld_FlagRoomData_Quadrants\n\n #_00F959: LDX.b #$0C\n\n #_00F95B: LDA.b $A0\n\n.check_next\n #_00F95D: DEX\n\n #_00F95E: CMP.l .boss_room,X\n #_00F962: BNE .check_next\n\n #_00F964: LDA.l .exit_room,X\n #_00F968: STA.b $A0\n\n #_00F96A: CMP.b #$20\n #_00F96C: BNE .not_aga1\n\n; ---------------------------------------------------------\n\n #_00F96E: LDA.b #$03\n #_00F970: STA.l $7EF3C5\n\n #_00F974: LDA.l $7EF282\n #_00F978: ORA.b #$20\n #_00F97A: STA.l $7EF282\n\n #_00F97E: LDA.l $7EF3CA\n #_00F982: EOR.b #$40\n #_00F984: STA.l $7EF3CA\n\n #_00F988: JSL Sprite_LoadGraphicsProperties_light_world_only\n #_00F98C: JSL Ancilla_TerminateSelectInteractives\n\n #_00F990: STZ.w $037B\n\n #_00F993: STZ.b $3C\n #_00F995: STZ.b $3A\n\n #_00F997: STZ.w $03EF\n\n #_00F99A: LDA.b #$01\n #_00F99C: STA.w $02E4\n\n #_00F99F: LDA.b #$08\n #_00F9A1: STA.w $010C\n\n #_00F9A4: LDA.b #$15\n #_00F9A6: STA.b $10\n\n #_00F9A8: STZ.b $11\n #_00F9AA: STZ.b $B0\n\n #_00F9AC: RTL" + }, + { + "name": "SaveDeathCount", + "code": "SaveDeathCount:\n #_00F9DD: PHX\n\n #_00F9DE: REP #$20\n\n #_00F9E0: LDX.w $040C\n\n #_00F9E3: LDA.l $7EF403\n #_00F9E7: STA.l $7EF3E7,X\n\n #_00F9EB: CPX.b #$08 ; DUNGEON 08\n #_00F9ED: BEQ .aga_tower\n\n #_00F9EF: LDA.w #$0000\n #_00F9F2: STA.l $7EF403\n\n.aga_tower\n #_00F9F6: SEP #$20\n #_00F9F8: PLX\n\n #_00F9F9: RTL" + }, + { + "name": "Module0E_0B_SaveMenu", + "code": "Module0E_0B_SaveMenu:\n #_00F9FA: LDA.b $1B\n #_00F9FC: BNE .indoors\n\n #_00F9FE: JSL FlashGanonTowerPalette\n\n.indoors\n #_00FA02: JSL RenderText\n\n #_00FA06: STZ.b $16\n #_00FA08: STZ.w $0710\n\n #_00FA0B: LDA.b $B0\n #_00FA0D: CMP.b #$03\n #_00FA0F: BCS .done_text_sub\n\n #_00FA11: INC.b $B0\n\n #_00FA13: BRA .continue\n\n.done_text_sub\n #_00FA15: STZ.b $14\n\n.continue\n #_00FA17: LDA.b $11\n #_00FA19: BNE .exit\n\n #_00FA1B: STZ.b $B0\n\n #_00FA1D: LDA.b #$01\n #_00FA1F: STA.b $14\n\n #_00FA21: LDA.w $1CE8\n #_00FA24: BEQ .dont_save\n\n #_00FA26: LDA.b #$0F ; SFX1.0F\n #_00FA28: STA.w $012D\n\n #_00FA2B: LDA.b #$17\n #_00FA2D: STA.b $10\n\n #_00FA2F: LDA.b #$01\n #_00FA31: STA.b $11\n\n #_00FA33: STZ.w $05FC\n #_00FA36: STZ.w $05FD\n\n #_00FA39: RTL" + }, + { + "name": "Sprite_LoadGraphicsProperties", + "code": "Sprite_LoadGraphicsProperties:\n #_00FC41: PHB\n #_00FC42: PHK\n #_00FC43: PLB\n\n #_00FC44: REP #$30\n\n #_00FC46: LDY.w #$00FE\n #_00FC49: LDX.w #$003E\n\n.next_a\n #_00FC4C: LDA.w .sprite_set,Y\n #_00FC4F: STA.l $7EFD00,X\n\n #_00FC53: LDA.w .palette,Y\n #_00FC56: STA.l $7EFD80,X\n\n #_00FC5A: DEY\n #_00FC5B: DEY\n\n #_00FC5C: DEX\n #_00FC5D: DEX\n #_00FC5E: BPL .next_a\n\n #_00FC60: BRA .continue\n\n; =========================================================\n\n#Sprite_LoadGraphicsProperties_light_world_only:\n #_00FC62: PHB\n #_00FC63: PHK\n #_00FC64: PLB\n\n #_00FC65: REP #$30\n\n.continue\n #_00FC67: LDY.w #$003E\n\n #_00FC6A: LDA.l $7EF3C5\n #_00FC6E: AND.w #$00FF\n #_00FC71: CMP.w #$0002\n #_00FC74: BCC .start_lw\n\n #_00FC76: LDY.w #$007E\n #_00FC79: CMP.w #$0003\n #_00FC7C: BNE .start_lw\n\n #_00FC7E: LDY.w #$00BE\n\n; ---------------------------------------------------------\n\n.start_lw\n #_00FC81: LDX.w #$003E\n\n.next_b\n #_00FC84: LDA.w .sprite_set,Y\n #_00FC87: STA.l $7EFCC0,X\n\n #_00FC8B: LDA.w .palette,Y\n #_00FC8E: STA.l $7EFD40,X\n\n #_00FC92: DEY\n #_00FC93: DEY\n\n #_00FC94: DEX\n #_00FC95: DEX\n #_00FC96: BPL .next_b\n\n; ---------------------------------------------------------\n\n #_00FC98: SEP #$30\n\n #_00FC9A: PLB\n\n #_00FC9B: RTL" + }, + { + "name": "GFXAA2ValsOW", + "code": "GFXAA2ValsOW:\n #_00FC9C: db $21, $21, $21, $22, $22, $22, $22, $22\n #_00FCA4: db $21, $21, $21, $22, $22, $22, $22, $27\n #_00FCAC: db $23, $23, $20, $29, $29, $20, $29, $29\n #_00FCB4: db $23, $23, $20, $24, $24, $27, $25, $25\n #_00FCBC: db $23, $23, $23, $24, $24, $20, $25, $25\n #_00FCC4: db $23, $2A, $21, $20, $20, $27, $20, $25\n #_00FCCC: db $2B, $2B, $20, $27, $27, $27, $27, $27\n #_00FCD4: db $2B, $2B, $20, $27, $27, $27, $27, $27\n #_00FCDC: db $3E, $3E, $3E, $41, $41, $41, $41, $3C\n #_00FCE4: db $3E, $3E, $3E, $41, $41, $41, $41, $40\n #_00FCEC: db $3F, $3F, $30, $40, $40, $30, $40, $30\n #_00FCF4: db $3F, $3F, $30, $3B, $3B, $40, $3D, $3D\n #_00FCFC: db $3F, $3F, $3F, $3B, $3B, $30, $3D, $3D\n #_00FD04: db $3F, $3F, $30, $30, $30, $40, $30, $3D\n #_00FD0C: db $42, $42, $30, $40, $40, $42, $42, $40\n #_00FD14: db $42, $42, $30, $40, $40, $42, $42, $30\n\n; =========================================================\n" + }, + { + "name": "OverworldPalettesScreenToSet", + "code": "OverworldPalettesScreenToSet:\n #_00FD1C: db $06, $06, $08, $07, $07, $07, $07, $07\n #_00FD24: db $06, $06, $08, $07, $07, $07, $07, $04\n #_00FD2C: db $08, $08, $00, $01, $01, $00, $09, $00\n #_00FD34: db $08, $08, $00, $02, $02, $04, $09, $09\n #_00FD3C: db $08, $08, $08, $02, $02, $00, $09, $09\n #_00FD44: db $08, $08, $01, $00, $00, $04, $00, $09\n #_00FD4C: db $09, $00, $00, $04, $04, $04, $04, $04\n #_00FD54: db $09, $09, $00, $04, $04, $04, $04, $04\n #_00FD5C: db $1B, $1B, $1E, $17, $17, $17, $17, $18\n #_00FD64: db $1B, $1B, $1E, $17, $17, $17, $17, $1D\n #_00FD6C: db $1E, $1E, $10, $1E, $1E, $10, $1E, $10\n #_00FD74: db $1E, $1E, $10, $12, $12, $10, $1A, $1A\n #_00FD7C: db $1E, $1E, $1E, $12, $12, $10, $1A, $1A\n #_00FD84: db $1E, $10, $12, $10, $10, $1D, $10, $1A\n #_00FD8C: db $1C, $1C, $10, $1D, $1D, $1C, $1C, $1D\n #_00FD94: db $1C, $1C, $10, $1D, $1D, $1C, $1C, $10\n #_00FD9C: db $0A, $0A, $0A, $0A, $02, $02, $02, $0A\n\n; =========================================================\n" + }, + { + "name": "ResetStarTileGraphics", + "code": "ResetStarTileGraphics:\n #_00FDA4: STZ.w $04BC\n\n; =========================================================\n" + }, + { + "name": "ToggleStarTileGraphics", + "code": "ToggleStarTileGraphics:\n #_00FDA7: REP #$10\n\n #_00FDA9: LDX.w #$0000\n #_00FDAC: LDY.w #$0020\n\n #_00FDAF: LDA.w $04BC\n #_00FDB2: BEQ .already_zero\n\n #_00FDB4: TYX\n #_00FDB5: LDY.w #$0000\n\n.already_zero\n #_00FDB8: STY.b $0E\n\n #_00FDBA: PHB\n\n #_00FDBB: LDA.b #$7F\n #_00FDBD: PHA\n #_00FDBE: PLB\n\n; ---------------------------------------------------------\n\n #_00FDBF: REP #$20\n\n #_00FDC1: LDY.w #$0000\n\n.next_a\n #_00FDC4: LDA.l $7EBDC0,X\n #_00FDC8: STA.w $7F0000,Y\n\n #_00FDCB: INX\n #_00FDCC: INX\n\n #_00FDCD: INY\n #_00FDCE: INY\n\n #_00FDCF: CPY.w #$0020\n #_00FDD2: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_00FDD4: LDX.b $0E\n\n.next_b\n #_00FDD6: LDA.l $7EBDC0,X\n #_00FDDA: STA.w $7F0000,Y\n\n #_00FDDD: INX\n #_00FDDE: INX\n\n #_00FDDF: INY\n #_00FDE0: INY\n\n #_00FDE1: CPY.w #$0040\n #_00FDE4: BNE .next_b\n\n; ---------------------------------------------------------\n\n #_00FDE6: SEP #$30\n\n #_00FDE8: PLB\n\n #_00FDE9: LDA.b #$18\n #_00FDEB: STA.b $17\n\n #_00FDED: RTL" + }, + { + "name": "InitializeMirrorHDMA", + "code": "InitializeMirrorHDMA:\n #_00FDEE: STZ.b $9B\n\n #_00FDF0: REP #$20\n\n #_00FDF2: STZ.w $06A0\n #_00FDF5: STZ.w $06AC\n #_00FDF8: STZ.w $06AA\n #_00FDFB: STZ.w $06AE\n #_00FDFE: STZ.w $06B0\n\n #_00FE01: LDA.w #$0008\n #_00FE04: STA.w $06B4\n #_00FE07: STA.w $06B6\n\n #_00FE0A: LDA.w #$0015\n #_00FE0D: STA.w $06B2\n\n #_00FE10: LDA.w #$FFC0\n #_00FE13: STA.w $06A6\n\n #_00FE16: LDA.w #$0040\n #_00FE19: STA.w $06A8\n\n #_00FE1C: LDA.w #$FE00\n #_00FE1F: STA.w $06A2\n\n #_00FE22: LDA.w #$0200\n #_00FE25: STA.w $06A4\n\n #_00FE28: STZ.w $06AC\n #_00FE2B: STZ.w $06AE\n\n #_00FE2E: LDA.w #$0F42\n #_00FE31: STA.w DMA7MODE\n\n #_00FE34: LDA.w #$0D42\n #_00FE37: STA.w DMA6MODE\n\n #_00FE3A: LDX.b #$3E\n\n #_00FE3C: LDA.b $E2\n\n; =========================================================\n" + }, + { + "name": "InitializeHDMATable", + "code": "InitializeHDMATable:\n.next\n #_00FE3E: STA.w $1B00,X\n #_00FE41: STA.w $1B40,X\n #_00FE44: STA.w $1B80,X\n #_00FE47: STA.w $1BC0,X\n #_00FE4A: STA.w $1C00,X\n #_00FE4D: STA.w $1C40,X\n #_00FE50: STA.w $1C80,X\n\n #_00FE53: DEX\n #_00FE54: DEX\n #_00FE55: BPL .next\n\n #_00FE57: SEP #$20\n\n #_00FE59: LDA.b #$C0\n #_00FE5B: STA.b $9B\n\n; ---------------------------------------------------------\n\n#EXIT_00FE5D:\n #_00FE5D: RTL" + }, + { + "name": "MirrorWarp_BuildAndEnableHDMATable", + "code": "MirrorWarp_BuildAndEnableHDMATable:\n #_00FE5E: INC.b $B0\n\n #_00FE60: LDA.b #$C0\n #_00FE62: STA.b $9B\n\n; =========================================================\n" + }, + { + "name": "MirrorWarp_BuildWavingHDMATable", + "code": "MirrorWarp_BuildWavingHDMATable:\n #_00FE64: JSL MirrorWarp_RunAnimationSubmodules\n\n #_00FE68: LDA.b $1A\n #_00FE6A: LSR A\n #_00FE6B: BCS EXIT_00FE5D\n\n #_00FE6D: REP #$30\n\n #_00FE6F: LDX.w #$01A0\n #_00FE72: LDY.w #$01B0\n\n #_00FE75: LDA.w #$0002\n #_00FE78: STA.b $00\n\n #_00FE7A: LDA.w #$0003\n #_00FE7D: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_00FE7F: LDA.w $1B00,X\n #_00FE82: STA.w $1B00,Y\n #_00FE85: STA.w $1B04,Y\n #_00FE88: STA.w $1B08,Y\n #_00FE8B: STA.w $1B0C,Y\n\n #_00FE8E: TXA\n #_00FE8F: SEC\n #_00FE90: SBC.w #$0010\n #_00FE93: TAX\n\n #_00FE94: DEC.b $00\n #_00FE96: BNE .dont_reset_a\n\n #_00FE98: LDA.w #$0008\n #_00FE9B: STA.b $00\n\n.dont_reset_a\n #_00FE9D: TYA\n #_00FE9E: SEC\n #_00FE9F: SBC.w #$0010\n #_00FEA2: TAY\n\n #_00FEA3: DEC.b $02\n #_00FEA5: BNE .dont_reset_b\n\n #_00FEA7: LDA.w #$0008\n #_00FEAA: STA.b $02\n\n.dont_reset_b\n #_00FEAC: CPY.w #$0000\n #_00FEAF: BNE .next\n\n; ---------------------------------------------------------\n\n #_00FEB1: LDX.w $06A0\n\n #_00FEB4: LDA.w $06AC\n #_00FEB7: CLC\n #_00FEB8: ADC.w $06A6,X\n #_00FEBB: PHA\n\n #_00FEBC: SEC\n #_00FEBD: SBC.w $06A2,X\n #_00FEC0: EOR.w $06A2,X\n #_00FEC3: BMI .negative\n\n #_00FEC5: STZ.w $06AA\n #_00FEC8: STZ.w $06AE\n\n #_00FECB: LDA.w $06A0\n #_00FECE: EOR.w #$0002\n #_00FED1: STA.w $06A0\n\n #_00FED4: PLA\n #_00FED5: LDA.w $06A2,X\n\n #_00FED8: PHA\n\n.negative\n #_00FED9: PLA\n #_00FEDA: STA.w $06AC\n\n #_00FEDD: CLC\n #_00FEDE: ADC.w $06AE\n #_00FEE1: PHA\n\n #_00FEE2: AND.w #$00FF\n #_00FEE5: STA.w $06AE\n\n; ---------------------------------------------------------\n\n #_00FEE8: PLA\n #_00FEE9: BPL .positive\n\n #_00FEEB: ORA.w #$00FF\n #_00FEEE: BRA .continue_with_sign\n\n.positive\n #_00FEF0: AND.w #$FF00\n\n.continue_with_sign\n #_00FEF3: XBA\n #_00FEF4: CLC\n #_00FEF5: ADC.w $06AA\n #_00FEF8: STA.w $06AA\n\n #_00FEFB: TAX\n\n #_00FEFC: LDA.l $7EC007\n #_00FF00: CMP.w #$0030\n #_00FF03: BCC .dont_advance\n\n #_00FF05: TXA\n #_00FF06: AND.w #$FFF8\n #_00FF09: BNE .dont_advance\n\n #_00FF0B: LDA.w #$FF00\n #_00FF0E: STA.w $06A2\n\n #_00FF11: LDA.w #$0100\n #_00FF14: STA.w $06A4\n\n #_00FF17: LDX.w #$0000\n\n #_00FF1A: INC.b $B0\n\n; ---------------------------------------------------------\n\n.dont_advance\n #_00FF1C: TXA\n #_00FF1D: CLC\n #_00FF1E: ADC.b $E2\n #_00FF20: STA.w $1B00\n #_00FF23: STA.w $1B04\n #_00FF26: STA.w $1B08\n #_00FF29: STA.w $1B0C\n\n #_00FF2C: SEP #$30\n\n; ---------------------------------------------------------\n\n#EXIT_00FF2E:\n #_00FF2E: RTL" + }, + { + "name": "MirrorWarp_BuildDewavingHDMATable", + "code": "MirrorWarp_BuildDewavingHDMATable:\n #_00FF2F: JSL MirrorWarp_RunAnimationSubmodules\n\n #_00FF33: LDA.b $1A\n #_00FF35: LSR A\n #_00FF36: BCS EXIT_00FF2E\n\n #_00FF38: REP #$30\n\n #_00FF3A: LDX.w #$01A0\n #_00FF3D: LDY.w #$01B0\n\n #_00FF40: LDA.w #$0002\n #_00FF43: STA.b $00\n\n #_00FF45: LDA.w #$0003\n #_00FF48: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_00FF4A: LDA.w $1B00,X\n #_00FF4D: STA.w $1B00,Y\n #_00FF50: STA.w $1B04,Y\n #_00FF53: STA.w $1B08,Y\n #_00FF56: STA.w $1B0C,Y\n\n #_00FF59: TXA\n #_00FF5A: SEC\n #_00FF5B: SBC.w #$0010\n #_00FF5E: TAX\n\n #_00FF5F: DEC.b $00\n #_00FF61: BNE .dont_reset_a\n\n #_00FF63: LDA.w #$0008\n #_00FF66: STA.b $00\n\n.dont_reset_a\n #_00FF68: TYA\n #_00FF69: SEC\n #_00FF6A: SBC.w #$0010\n #_00FF6D: TAY\n\n #_00FF6E: DEC.b $02\n #_00FF70: BNE .dont_reset_b\n\n #_00FF72: LDA.w #$0008\n #_00FF75: STA.b $02\n\n.dont_reset_b\n #_00FF77: CPY.w #$0000\n #_00FF7A: BNE .next\n\n; ---------------------------------------------------------\n\n #_00FF7C: LDA.w $1C80\n #_00FF7F: ORA.w $1C90\n #_00FF82: ORA.w $1CA0\n #_00FF85: ORA.w $1CB0\n\n #_00FF88: CMP.b $E2\n #_00FF8A: BNE .exit\n\n #_00FF8C: SEP #$20\n\n #_00FF8E: STZ.b $9B\n\n #_00FF90: INC.b $B0\n\n #_00FF92: JSL Overworld_SetFixedColAndScroll\n\n #_00FF96: LDA.b $8A\n #_00FF98: AND.b #$3F\n #_00FF9A: CMP.b #$1B ; OW 1B, OW 5B\n #_00FF9C: BEQ .exit\n\n #_00FF9E: REP #$20\n\n #_00FFA0: LDA.b $E2\n #_00FFA2: STA.b $E0\n #_00FFA4: STA.w $0120\n #_00FFA7: STA.w $011E\n\n #_00FFAA: LDA.b $E8\n #_00FFAC: STA.b $E6\n #_00FFAE: STA.w $0122\n #_00FFB1: STA.w $0124\n\n.exit\n #_00FFB4: SEP #$30\n\n #_00FFB6: RTL" + }, + { + "name": "NULL_00FFB7", + "code": "NULL_00FFB7:\n #_00FFB7: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n" + } +] \ No newline at end of file diff --git a/data/master_routines_library.json b/data/master_routines_library.json new file mode 100644 index 0000000..90ab64d --- /dev/null +++ b/data/master_routines_library.json @@ -0,0 +1,41262 @@ +[ + { + "name": "LinkGraphics", + "code": "LinkGraphics:\n#_108000: incbin \"bin/gfx/link.4bpp\"\n\n; =========================================================\n; Uncompressed\n; =========================================================\n#_10F000: GFX_73: incbin \"bin/gfx/GFX73.3bpp\" ; size: 0x0600\n#_10F600: GFX_74: incbin \"bin/gfx/GFX74.3bpp\" ; size: 0x0600\n#_10FC00: GFX_75: incbin \"bin/gfx/GFX75.3bpp\" ; size: 0x0600\n#_118200: GFX_76: incbin \"bin/gfx/GFX76.3bpp\" ; size: 0x0600\n#_118800: GFX_77: incbin \"bin/gfx/GFX77.3bpp\" ; size: 0x0600\n#_118E00: GFX_78: incbin \"bin/gfx/GFX78.3bpp\" ; size: 0x0600\n#_119400: GFX_79: incbin \"bin/gfx/GFX79.3bpp\" ; size: 0x0600\n#_119A00: GFX_7A: incbin \"bin/gfx/GFX7A.3bpp\" ; size: 0x0600\n#_11A000: GFX_7B: incbin \"bin/gfx/GFX7B.3bpp\" ; size: 0x0600\n#_11A600: GFX_7C: incbin \"bin/gfx/GFX7C.3bpp\" ; size: 0x0600\n#_11AC00: GFX_7D: incbin \"bin/gfx/GFX7D.3bpp\" ; size: 0x0600\n#_11B200: GFX_7E: incbin \"bin/gfx/GFX7E.3bpp\" ; size: 0x0600\n\n; =========================================================\n; Background\n; =========================================================\n#_11B800: GFX_00: incbin \"bin/gfx/GFX00.3bppc\" ; size: 0x04E2\n#_11BCE2: GFX_01: incbin \"bin/gfx/GFX01.3bppc\" ; size: 0x047D\n#_11C15F: GFX_02: incbin \"bin/gfx/GFX02.3bppc\" ; size: 0x0516\n#_11C675: GFX_03: incbin \"bin/gfx/GFX03.3bppc\" ; size: 0x050F\n#_11CB84: GFX_04: incbin \"bin/gfx/GFX04.3bppc\" ; size: 0x03C8\n#_11CF4C: GFX_05: incbin \"bin/gfx/GFX05.3bppc\" ; size: 0x0382\n#_11D2CE: GFX_06: incbin \"bin/gfx/GFX06.3bppc\" ; size: 0x0458\n#_11D726: GFX_07: incbin \"bin/gfx/GFX07.3bppc\" ; size: 0x02A9\n#_11D9CF: GFX_08: incbin \"bin/gfx/GFX08.3bppc\" ; size: 0x04F5\n#_11DEC4: GFX_09: incbin \"bin/gfx/GFX09.3bppc\" ; size: 0x04CF\n#_11E393: GFX_0A: incbin \"bin/gfx/GFX0A.3bppc\" ; size: 0x0500\n#_11E893: GFX_0B: incbin \"bin/gfx/GFX0B.3bppc\" ; size: 0x04EA\n#_11ED7D: GFX_0C: incbin \"bin/gfx/GFX0C.3bppc\" ; size: 0x0506\n#_11F283: GFX_0D: incbin \"bin/gfx/GFX0D.3bppc\" ; size: 0x04C3\n#_11F746: GFX_0E: incbin \"bin/gfx/GFX0E.3bppc\" ; size: 0x04DB\n#_11FC21: GFX_0F: incbin \"bin/gfx/GFX0F.3bppc\" ; size: 0x03D1\n#_11FFF2: GFX_10: incbin \"bin/gfx/GFX10.3bppc\" ; size: 0x04A6\n#_128498: GFX_11: incbin \"bin/gfx/GFX11.3bppc\" ; size: 0x0576\n#_128A0E: GFX_12: incbin \"bin/gfx/GFX12.3bppc\" ; size: 0x0522\n#_128F30: GFX_13: incbin \"bin/gfx/GFX13.3bppc\" ; size: 0x03F6\n#_129326: GFX_14: incbin \"bin/gfx/GFX14.3bppc\" ; size: 0x04DE\n#_129804: GFX_15: incbin \"bin/gfx/GFX15.3bppc\" ; size: 0x0557\n#_129D5B: GFX_16: incbin \"bin/gfx/GFX16.3bppc\" ; size: 0x0517\n#_12A272: GFX_17: incbin \"bin/gfx/GFX17.3bppc\" ; size: 0x048C\n#_12A6FE: GFX_18: incbin \"bin/gfx/GFX18.3bppc\" ; size: 0x0379\n#_12AA77: GFX_19: incbin \"bin/gfx/GFX19.3bppc\" ; size: 0x030C\n#_12AD83: GFX_1A: incbin \"bin/gfx/GFX1A.3bppc\" ; size: 0x03E4\n#_12B167: GFX_1B: incbin \"bin/gfx/GFX1B.3bppc\" ; size: 0x03B6\n#_12B51D: GFX_1C: incbin \"bin/gfx/GFX1C.3bppc\" ; size: 0x0323\n#_12B840: GFX_1D: incbin \"bin/gfx/GFX1D.3bppc\" ; size: 0x0514\n#_12BD54: GFX_1E: incbin \"bin/gfx/GFX1E.3bppc\" ; size: 0x0475\n#_12C1C9: GFX_1F: incbin \"bin/gfx/GFX1F.3bppc\" ; size: 0x0574\n#_12C73D: GFX_20: incbin \"bin/gfx/GFX20.3bppc\" ; size: 0x0549\n#_12CC86: GFX_21: incbin \"bin/gfx/GFX21.3bppc\" ; size: 0x0512\n#_12D198: GFX_22: incbin \"bin/gfx/GFX22.3bppc\" ; size: 0x0519\n#_12D6B1: GFX_23: incbin \"bin/gfx/GFX23.3bppc\" ; size: 0x04B9\n#_12DB6A: GFX_24: incbin \"bin/gfx/GFX24.3bppc\" ; size: 0x0580\n#_12E0EA: GFX_25: incbin \"bin/gfx/GFX25.3bppc\" ; size: 0x05D3\n#_12E6BD: GFX_26: incbin \"bin/gfx/GFX26.3bppc\" ; size: 0x0494\n#_12EB51: GFX_27: incbin \"bin/gfx/GFX27.3bppc\" ; size: 0x05E4\n#_12F135: GFX_28: incbin \"bin/gfx/GFX28.3bppc\" ; size: 0x0590\n#_12F6C5: GFX_29: incbin \"bin/gfx/GFX29.3bppc\" ; size: 0x05AC\n#_12FC71: GFX_2A: incbin \"bin/gfx/GFX2A.3bppc\" ; size: 0x04B8\n#_138129: GFX_2B: incbin \"bin/gfx/GFX2B.3bppc\" ; size: 0x056A\n#_138693: GFX_2C: incbin \"bin/gfx/GFX2C.3bppc\" ; size: 0x051A\n#_138BAD: GFX_2D: incbin \"bin/gfx/GFX2D.3bppc\" ; size: 0x056A\n#_139117: GFX_2E: incbin \"bin/gfx/GFX2E.3bppc\" ; size: 0x04F2\n#_139609: GFX_2F: incbin \"bin/gfx/GFX2F.3bppc\" ; size: 0x0518\n#_139B21: GFX_30: incbin \"bin/gfx/GFX30.3bppc\" ; size: 0x0553\n#_13A074: GFX_31: incbin \"bin/gfx/GFX31.3bppc\" ; size: 0x05A5\n#_13A619: GFX_32: incbin \"bin/gfx/GFX32.3bppc\" ; size: 0x0512\n#_13AB2B: GFX_33: incbin \"bin/gfx/GFX33.3bppc\" ; size: 0x04E1\n#_13B00C: GFX_34: incbin \"bin/gfx/GFX34.3bppc\" ; size: 0x04E9\n#_13B4F5: GFX_35: incbin \"bin/gfx/GFX35.3bppc\" ; size: 0x04F6\n#_13B9EB: GFX_36: incbin \"bin/gfx/GFX36.3bppc\" ; size: 0x04D4\n#_13BEBF: GFX_37: incbin \"bin/gfx/GFX37.3bppc\" ; size: 0x050F\n#_13C3CE: GFX_38: incbin \"bin/gfx/GFX38.3bppc\" ; size: 0x0449\n#_13C817: GFX_39: incbin \"bin/gfx/GFX39.3bppc\" ; size: 0x0351\n#_13CB68: GFX_3A: incbin \"bin/gfx/GFX3A.3bppc\" ; size: 0x044D\n#_13CFB5: GFX_3B: incbin \"bin/gfx/GFX3B.3bppc\" ; size: 0x04AB\n#_13D460: GFX_3C: incbin \"bin/gfx/GFX3C.3bppc\" ; size: 0x0462\n#_13D8C2: GFX_3D: incbin \"bin/gfx/GFX3D.3bppc\" ; size: 0x04B8\n#_13DD7A: GFX_3E: incbin \"bin/gfx/GFX3E.3bppc\" ; size: 0x04EC\n#_13E266: GFX_3F: incbin \"bin/gfx/GFX3F.3bppc\" ; size: 0x0549\n#_13E7AF: GFX_40: incbin \"bin/gfx/GFX40.3bppc\" ; size: 0x0536\n#_13ECE5: GFX_41: incbin \"bin/gfx/GFX41.3bppc\" ; size: 0x0560\n#_13F245: GFX_42: incbin \"bin/gfx/GFX42.3bppc\" ; size: 0x04AB\n#_13F6F0: GFX_43: incbin \"bin/gfx/GFX43.3bppc\" ; size: 0x0540\n#_13FC30: GFX_44: incbin \"bin/gfx/GFX44.3bppc\" ; size: 0x04B9\n#_1480E9: GFX_45: incbin \"bin/gfx/GFX45.3bppc\" ; size: 0x0552\n#_14863B: GFX_46: incbin \"bin/gfx/GFX46.3bppc\" ; size: 0x0441\n#_148A7C: GFX_47: incbin \"bin/gfx/GFX47.3bppc\" ; size: 0x04AE\n#_148F2A: GFX_48: incbin \"bin/gfx/GFX48.3bppc\" ; size: 0x041C\n#_149346: GFX_49: incbin \"bin/gfx/GFX49.3bppc\" ; size: 0x04A7\n#_1497ED: GFX_4A: incbin \"bin/gfx/GFX4A.3bppc\" ; size: 0x04D5\n#_149CC2: GFX_4B: incbin \"bin/gfx/GFX4B.3bppc\" ; size: 0x04B1\n#_14A173: GFX_4C: incbin \"bin/gfx/GFX4C.3bppc\" ; size: 0x04AA\n#_14A61D: GFX_4D: incbin \"bin/gfx/GFX4D.3bppc\" ; size: 0x0540\n#_14AB5D: GFX_4E: incbin \"bin/gfx/GFX4E.3bppc\" ; size: 0x0526\n#_14B083: GFX_4F: incbin \"bin/gfx/GFX4F.3bppc\" ; size: 0x043A\n#_14B4BD: GFX_50: incbin \"bin/gfx/GFX50.3bppc\" ; size: 0x0491\n#_14B94E: GFX_51: incbin \"bin/gfx/GFX51.3bppc\" ; size: 0x04C0\n#_14BE0E: GFX_52: incbin \"bin/gfx/GFX52.3bppc\" ; size: 0x0483\n#_14C291: GFX_53: incbin \"bin/gfx/GFX53.3bppc\" ; size: 0x0529\n#_14C7BA: GFX_54: incbin \"bin/gfx/GFX54.3bppc\" ; size: 0x052A\n#_14CCE4: GFX_55: incbin \"bin/gfx/GFX55.3bppc\" ; size: 0x04F7\n#_14D1DB: GFX_56: incbin \"bin/gfx/GFX56.3bppc\" ; size: 0x04E2\n#_14D6BD: GFX_57: incbin \"bin/gfx/GFX57.3bppc\" ; size: 0x04BA\n#_14DB77: GFX_58: incbin \"bin/gfx/GFX58.3bppc\" ; size: 0x035A\n#_14DED1: GFX_59: incbin \"bin/gfx/GFX59.3bppc\" ; size: 0x03DB\n#_14E2AC: GFX_5A: incbin \"bin/gfx/GFX5A.3bppc\" ; size: 0x04A8\n#_14E754: GFX_5B: incbin \"bin/gfx/GFX5B.3bppc\" ; size: 0x045A\n#_14EBAE: GFX_5C: incbin \"bin/gfx/GFX5C.3bppc\" ; size: 0x03A0\n#_14EF4E: GFX_5D: incbin \"bin/gfx/GFX5D.3bppc\" ; size: 0x03BB\n#_14F309: GFX_5E: incbin \"bin/gfx/GFX5E.3bppc\" ; size: 0x03EB\n#_14F6F4: GFX_5F: incbin \"bin/gfx/GFX5F.3bppc\" ; size: 0x0361\n#_14FA55: GFX_60: incbin \"bin/gfx/GFX60.3bppc\" ; size: 0x0537\n\n; =========================================================\n; Blank sheets\n; =========================================================\n#_14FF8C: GFX_61: incbin \"bin/gfx/GFX61.3bppc\" ; size: 0x0007\n#_14FF93: GFX_62: incbin \"bin/gfx/GFX62.3bppc\" ; size: 0x0007\n#_14FF9A: GFX_63: incbin \"bin/gfx/GFX63.3bppc\" ; size: 0x0007\n#_14FFA1: GFX_64: incbin \"bin/gfx/GFX64.3bppc\" ; size: 0x0007\n#_14FFA8: GFX_65: incbin \"bin/gfx/GFX65.3bppc\" ; size: 0x0007\n#_14FFAF: GFX_66: incbin \"bin/gfx/GFX66.3bppc\" ; size: 0x0007\n#_14FFB6: GFX_67: incbin \"bin/gfx/GFX67.3bppc\" ; size: 0x0007\n#_14FFBD: GFX_68: incbin \"bin/gfx/GFX68.3bppc\" ; size: 0x0007\n#_14FFC4: GFX_69: incbin \"bin/gfx/GFX69.3bppc\" ; size: 0x0007\n#_14FFCB: GFX_6A: incbin \"bin/gfx/GFX6A.3bppc\" ; size: 0x0007\n#_14FFD2: GFX_6B: incbin \"bin/gfx/GFX6B.3bppc\" ; size: 0x0007\n#_14FFD9: GFX_6C: incbin \"bin/gfx/GFX6C.3bppc\" ; size: 0x0007\n#_14FFE0: GFX_6D: incbin \"bin/gfx/GFX6D.3bppc\" ; size: 0x0007\n#_14FFE7: GFX_6E: incbin \"bin/gfx/GFX6E.3bppc\" ; size: 0x0007\n#_14FFEE: GFX_6F: incbin \"bin/gfx/GFX6F.3bppc\" ; size: 0x0007\n#_14FFF5: GFX_70: incbin \"bin/gfx/GFX70.3bppc\" ; size: 0x0007\n\n; =========================================================\n; Sprites\n; =========================================================\n#_14FFFC: GFX_7F: incbin \"bin/gfx/GFX7F.3bppc\" ; size: 0x05D8\n#_1585D4: GFX_80: incbin \"bin/gfx/GFX80.3bppc\" ; size: 0x04E2\n#_158AB6: GFX_81: incbin \"bin/gfx/GFX81.3bppc\" ; size: 0x0508\n#_158FBE: GFX_82: incbin \"bin/gfx/GFX82.3bppc\" ; size: 0x043A\n#_1593F8: GFX_83: incbin \"bin/gfx/GFX83.3bppc\" ; size: 0x05AE\n#_1599A6: GFX_84: incbin \"bin/gfx/GFX84.3bppc\" ; size: 0x058C\n#_159F32: GFX_85: incbin \"bin/gfx/GFX85.3bppc\" ; size: 0x04A5\n#_15A3D7: GFX_86: incbin \"bin/gfx/GFX86.3bppc\" ; size: 0x051A\n#_15A8F1: GFX_87: incbin \"bin/gfx/GFX87.3bppc\" ; size: 0x05D5\n#_15AEC6: GFX_88: incbin \"bin/gfx/GFX88.3bppc\" ; size: 0x0552\n#_15B418: GFX_89: incbin \"bin/gfx/GFX89.3bppc\" ; size: 0x052F\n#_15B947: GFX_8A: incbin \"bin/gfx/GFX8A.3bppc\" ; size: 0x0589\n#_15BED0: GFX_8B: incbin \"bin/gfx/GFX8B.3bppc\" ; size: 0x0579\n#_15C449: GFX_8C: incbin \"bin/gfx/GFX8C.3bppc\" ; size: 0x052C\n#_15C975: GFX_8D: incbin \"bin/gfx/GFX8D.3bppc\" ; size: 0x0507\n#_15CE7C: GFX_8E: incbin \"bin/gfx/GFX8E.3bppc\" ; size: 0x0518\n#_15D394: GFX_8F: incbin \"bin/gfx/GFX8F.3bppc\" ; size: 0x0518\n#_15D8AC: GFX_90: incbin \"bin/gfx/GFX90.3bppc\" ; size: 0x0514\n#_15DDC0: GFX_91: incbin \"bin/gfx/GFX91.3bppc\" ; size: 0x058C\n#_15E34C: GFX_92: incbin \"bin/gfx/GFX92.3bppc\" ; size: 0x059C\n#_15E8E8: GFX_93: incbin \"bin/gfx/GFX93.3bppc\" ; size: 0x0549\n#_15EE31: GFX_94: incbin \"bin/gfx/GFX94.3bppc\" ; size: 0x0575\n#_15F3A6: GFX_95: incbin \"bin/gfx/GFX95.3bppc\" ; size: 0x0587\n#_15F92D: GFX_96: incbin \"bin/gfx/GFX96.3bppc\" ; size: 0x058D\n#_15FEBA: GFX_97: incbin \"bin/gfx/GFX97.3bppc\" ; size: 0x0445\n#_1682FF: GFX_98: incbin \"bin/gfx/GFX98.3bppc\" ; size: 0x05E1\n#_1688E0: GFX_99: incbin \"bin/gfx/GFX99.3bppc\" ; size: 0x0561\n#_168E41: GFX_9A: incbin \"bin/gfx/GFX9A.3bppc\" ; size: 0x049E\n#_1692DF: GFX_9B: incbin \"bin/gfx/GFX9B.3bppc\" ; size: 0x05A4\n#_169883: GFX_9C: incbin \"bin/gfx/GFX9C.3bppc\" ; size: 0x044D\n#_169CD0: GFX_9D: incbin \"bin/gfx/GFX9D.3bppc\" ; size: 0x059E\n#_16A26E: GFX_9E: incbin \"bin/gfx/GFX9E.3bppc\" ; size: 0x0007\n#_16A275: GFX_9F: incbin \"bin/gfx/GFX9F.3bppc\" ; size: 0x0512\n#_16A787: GFX_A0: incbin \"bin/gfx/GFXA0.3bppc\" ; size: 0x027F\n#_16AA06: GFX_A1: incbin \"bin/gfx/GFXA1.3bppc\" ; size: 0x0497\n#_16AE9D: GFX_A2: incbin \"bin/gfx/GFXA2.3bppc\" ; size: 0x0562\n#_16B3FF: GFX_A3: incbin \"bin/gfx/GFXA3.3bppc\" ; size: 0x047F\n#_16B87E: GFX_A4: incbin \"bin/gfx/GFXA4.3bppc\" ; size: 0x05ED\n#_16BE6B: GFX_A5: incbin \"bin/gfx/GFXA5.3bppc\" ; size: 0x02D2\n#_16C13D: GFX_A6: incbin \"bin/gfx/GFXA6.3bppc\" ; size: 0x04DC\n#_16C619: GFX_A7: incbin \"bin/gfx/GFXA7.3bppc\" ; size: 0x05A2\n#_16CBBB: GFX_A8: incbin \"bin/gfx/GFXA8.3bppc\" ; size: 0x0536\n#_16D0F1: GFX_A9: incbin \"bin/gfx/GFXA9.3bppc\" ; size: 0x0550\n#_16D641: GFX_AA: incbin \"bin/gfx/GFXAA.3bppc\" ; size: 0x0319\n#_16D95A: GFX_AB: incbin \"bin/gfx/GFXAB.3bppc\" ; size: 0x043F\n#_16DD99: GFX_AC: incbin \"bin/gfx/GFXAC.3bppc\" ; size: 0x04DF\n#_16E278: GFX_AD: incbin \"bin/gfx/GFXAD.3bppc\" ; size: 0x04E8\n#_16E760: GFX_AE: incbin \"bin/gfx/GFXAE.3bppc\" ; size: 0x05C5\n#_16ED25: GFX_AF: incbin \"bin/gfx/GFXAF.3bppc\" ; size: 0x04EA\n#_16F20F: GFX_B0: incbin \"bin/gfx/GFXB0.3bppc\" ; size: 0x04A8\n#_16F6B7: GFX_B1: incbin \"bin/gfx/GFXB1.3bppc\" ; size: 0x03A8\n#_16FA5F: GFX_B2: incbin \"bin/gfx/GFXB2.3bppc\" ; size: 0x02CA\n#_16FD29: GFX_B3: incbin \"bin/gfx/GFXB3.3bppc\" ; size: 0x04A4\n#_1781CD: GFX_B4: incbin \"bin/gfx/GFXB4.3bppc\" ; size: 0x04C0\n#_17868D: GFX_B5: incbin \"bin/gfx/GFXB5.3bppc\" ; size: 0x04D5\n#_178B62: GFX_B6: incbin \"bin/gfx/GFXB6.3bppc\" ; size: 0x0473\n#_178FD5: GFX_B7: incbin \"bin/gfx/GFXB7.3bppc\" ; size: 0x0552\n#_179527: GFX_B8: incbin \"bin/gfx/GFXB8.3bppc\" ; size: 0x0424\n#_17994B: GFX_B9: incbin \"bin/gfx/GFXB9.3bppc\" ; size: 0x055C\n#_179EA7: GFX_BA: incbin \"bin/gfx/GFXBA.3bppc\" ; size: 0x0467\n#_17A30E: GFX_BB: incbin \"bin/gfx/GFXBB.3bppc\" ; size: 0x04F7\n#_17A805: GFX_BC: incbin \"bin/gfx/GFXBC.3bppc\" ; size: 0x04F3\n#_17ACF8: GFX_BD: incbin \"bin/gfx/GFXBD.3bppc\" ; size: 0x05AA\n#_17B2A2: GFX_BE: incbin \"bin/gfx/GFXBE.3bppc\" ; size: 0x0557\n#_17B7F9: GFX_BF: incbin \"bin/gfx/GFXBF.3bppc\" ; size: 0x049A\n#_17BC93: GFX_C0: incbin \"bin/gfx/GFXC0.3bppc\" ; size: 0x05A4\n#_17C237: GFX_C1: incbin \"bin/gfx/GFXC1.3bppc\" ; size: 0x0557\n#_17C78E: GFX_C2: incbin \"bin/gfx/GFXC2.3bppc\" ; size: 0x05C7\n#_17CD55: GFX_C3: incbin \"bin/gfx/GFXC3.3bppc\" ; size: 0x0567\n#_17D2BC: GFX_C4: incbin \"bin/gfx/GFXC4.3bppc\" ; size: 0x0573\n#_17D82F: GFX_C5: incbin \"bin/gfx/GFXC5.3bppc\" ; size: 0x04BD\n#_17DCEC: GFX_C6: incbin \"bin/gfx/GFXC6.3bppc\" ; size: 0x04E0\n#_17E1CC: GFX_C7: incbin \"bin/gfx/GFXC7.3bppc\" ; size: 0x019F\n#_17E36B: GFX_C8: incbin \"bin/gfx/GFXC8.3bppc\" ; size: 0x04D7\n#_17E842: GFX_C9: incbin \"bin/gfx/GFXC9.3bppc\" ; size: 0x02F6\n#_17EB38: GFX_CA: incbin \"bin/gfx/GFXCA.3bppc\" ; size: 0x0220\n#_17ED58: GFX_CB: incbin \"bin/gfx/GFXCB.3bppc\" ; size: 0x0314\n#_17F06C: GFX_CC: incbin \"bin/gfx/GFXCC.3bppc\" ; size: 0x0491\n#_17F4FD: GFX_CD: incbin \"bin/gfx/GFXCD.3bppc\" ; size: 0x053C\n#_17FA39: GFX_CE: incbin \"bin/gfx/GFXCE.3bppc\" ; size: 0x054D\n#_17FF86: GFX_CF: incbin \"bin/gfx/GFXCF.3bppc\" ; size: 0x04D6\n#_18845C: GFX_D0: incbin \"bin/gfx/GFXD0.3bppc\" ; size: 0x0545\n#_1889A1: GFX_D1: incbin \"bin/gfx/GFXD1.3bppc\" ; size: 0x03C3\n#_188D64: GFX_D2: incbin \"bin/gfx/GFXD2.3bppc\" ; size: 0x0439\n#_18919D: GFX_D3: incbin \"bin/gfx/GFXD3.3bppc\" ; size: 0x0473\n#_189610: GFX_D4: incbin \"bin/gfx/GFXD4.3bppc\" ; size: 0x0247\n#_189857: GFX_D5: incbin \"bin/gfx/GFXD5.3bppc\" ; size: 0x02CD\n#_189B24: GFX_D6: incbin \"bin/gfx/GFXD6.3bppc\" ; size: 0x02AE\n\n; =========================================================\n; Followers\n; =========================================================\n#_189DD2: GFX_D7: incbin \"bin/gfx/GFXD7.3bppc\" ; size: 0x026D\n#_18A03F: GFX_D8: incbin \"bin/gfx/GFXD8.3bppc\" ; size: 0x04AE\n#_18A4ED: GFX_D9: incbin \"bin/gfx/GFXD9.3bppc\" ; size: 0x02CD\n\n; =========================================================\n; HUD\n; =========================================================\n#_18A7BA: GFX_DA: incbin \"bin/gfx/GFXDA.2bppc\" ; size: 0x0725\n#_18AEDF: GFX_DB: incbin \"bin/gfx/GFXDB.2bppc\" ; size: 0x002E\n#_18AF0D: GFX_DC: incbin \"bin/gfx/GFXDC.2bppc\" ; size: 0x0613\n#_18B520: GFX_DD: incbin \"bin/gfx/GFXDD.2bppc\" ; size: 0x0433\n#_18B953: GFX_DE: incbin \"bin/gfx/GFXDE.2bppc\" ; size: 0x0662\n\n; =========================================================\n\n; =========================================================\n; FREE ROM: 0x4B\n; =========================================================", + "file": "graphics.asm" + }, + { + "name": "NULL_18BFB5", + "code": "NULL_18BFB5:\n#_18BFB5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFBD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFC5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFCD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFD5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFDD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFE5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFED: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFF5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_18BFFD: db $FF, $FF, $FF\n\n; =========================================================\n", + "file": "graphics.asm" + }, + { + "name": "OverworldMap32_Screen00_High", + "code": "OverworldMap32_Screen00_High: #_0B8000: incbin \"bin/ow/screen00-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen00_Low", + "code": "OverworldMap32_Screen00_Low: #_0B8004: incbin \"bin/ow/screen00-l.bin\" ; size: 0x00D2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen01_High", + "code": "OverworldMap32_Screen01_High: #_0B80D6: incbin \"bin/ow/screen01-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen01_Low", + "code": "OverworldMap32_Screen01_Low: #_0B80DA: incbin \"bin/ow/screen01-l.bin\" ; size: 0x00E8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen02_High", + "code": "OverworldMap32_Screen02_High: #_0B81C2: incbin \"bin/ow/screen02-h.bin\" ; size: 0x0076", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen02_Low", + "code": "OverworldMap32_Screen02_Low: #_0B8238: incbin \"bin/ow/screen02-l.bin\" ; size: 0x00DE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen03_High", + "code": "OverworldMap32_Screen03_High: #_0B8316: incbin \"bin/ow/screen03-h.bin\" ; size: 0x002A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen03_Low", + "code": "OverworldMap32_Screen03_Low: #_0B8340: incbin \"bin/ow/screen03-l.bin\" ; size: 0x00AA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen04_High", + "code": "OverworldMap32_Screen04_High: #_0B83EA: incbin \"bin/ow/screen04-h.bin\" ; size: 0x0076", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen04_Low", + "code": "OverworldMap32_Screen04_Low: #_0B8460: incbin \"bin/ow/screen04-l.bin\" ; size: 0x00AE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen05_High", + "code": "OverworldMap32_Screen05_High: #_0B850E: incbin \"bin/ow/screen05-h.bin\" ; size: 0x0095", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen05_Low", + "code": "OverworldMap32_Screen05_Low: #_0B85A3: incbin \"bin/ow/screen05-l.bin\" ; size: 0x00CE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen06_High", + "code": "OverworldMap32_Screen06_High: #_0B8671: incbin \"bin/ow/screen06-h.bin\" ; size: 0x00B3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen06_Low", + "code": "OverworldMap32_Screen06_Low: #_0B8724: incbin \"bin/ow/screen06-l.bin\" ; size: 0x00EB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen07_High", + "code": "OverworldMap32_Screen07_High: #_0B880F: incbin \"bin/ow/screen07-h.bin\" ; size: 0x00D1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen07_Low", + "code": "OverworldMap32_Screen07_Low: #_0B88E0: incbin \"bin/ow/screen07-l.bin\" ; size: 0x00F3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen08_High", + "code": "OverworldMap32_Screen08_High: #_0B89D3: incbin \"bin/ow/screen08-h.bin\" ; size: 0x00BE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen08_Low", + "code": "OverworldMap32_Screen08_Low: #_0B8A91: incbin \"bin/ow/screen08-l.bin\" ; size: 0x00FF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen09_High", + "code": "OverworldMap32_Screen09_High: #_0B8B90: incbin \"bin/ow/screen09-h.bin\" ; size: 0x00A5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen09_Low", + "code": "OverworldMap32_Screen09_Low: #_0B8C35: incbin \"bin/ow/screen09-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0B_High", + "code": "OverworldMap32_Screen0B_High: #_0B8D24: incbin \"bin/ow/screen0B-h.bin\" ; size: 0x00D2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0B_Low", + "code": "OverworldMap32_Screen0B_Low: #_0B8DF6: incbin \"bin/ow/screen0B-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0C_High", + "code": "OverworldMap32_Screen0C_High: #_0B8EE3: incbin \"bin/ow/screen0C-h.bin\" ; size: 0x00A4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0C_Low", + "code": "OverworldMap32_Screen0C_Low: #_0B8F87: incbin \"bin/ow/screen0C-l.bin\" ; size: 0x00E9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0D_High", + "code": "OverworldMap32_Screen0D_High: #_0B9070: incbin \"bin/ow/screen0D-h.bin\" ; size: 0x00A8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0D_Low", + "code": "OverworldMap32_Screen0D_Low: #_0B9118: incbin \"bin/ow/screen0D-l.bin\" ; size: 0x00D2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0E_High", + "code": "OverworldMap32_Screen0E_High: #_0B91EA: incbin \"bin/ow/screen0E-h.bin\" ; size: 0x00E5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0E_Low", + "code": "OverworldMap32_Screen0E_Low: #_0B92CF: incbin \"bin/ow/screen0E-l.bin\" ; size: 0x00FD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0F_High", + "code": "OverworldMap32_Screen0F_High: #_0B93CC: incbin \"bin/ow/screen0F-h.bin\" ; size: 0x0099", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0F_Low", + "code": "OverworldMap32_Screen0F_Low: #_0B9465: incbin \"bin/ow/screen0F-l.bin\" ; size: 0x00C2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen10_High", + "code": "OverworldMap32_Screen10_High: #_0B9527: incbin \"bin/ow/screen10-h.bin\" ; size: 0x00C0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen10_Low", + "code": "OverworldMap32_Screen10_Low: #_0B95E7: incbin \"bin/ow/screen10-l.bin\" ; size: 0x00EE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen13_High", + "code": "OverworldMap32_Screen13_High: #_0B96D5: incbin \"bin/ow/screen13-h.bin\" ; size: 0x00A0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen13_Low", + "code": "OverworldMap32_Screen13_Low: #_0B9775: incbin \"bin/ow/screen13-l.bin\" ; size: 0x00CE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen14_High", + "code": "OverworldMap32_Screen14_High: #_0B9843: incbin \"bin/ow/screen14-h.bin\" ; size: 0x0084", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen14_Low", + "code": "OverworldMap32_Screen14_Low: #_0B98C7: incbin \"bin/ow/screen14-l.bin\" ; size: 0x00C5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen15_High", + "code": "OverworldMap32_Screen15_High: #_0B998C: incbin \"bin/ow/screen15-h.bin\" ; size: 0x00D9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen15_Low", + "code": "OverworldMap32_Screen15_Low: #_0B9A65: incbin \"bin/ow/screen15-l.bin\" ; size: 0x00F0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen16_High", + "code": "OverworldMap32_Screen16_High: #_0B9B55: incbin \"bin/ow/screen16-h.bin\" ; size: 0x00C3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen16_Low", + "code": "OverworldMap32_Screen16_Low: #_0B9C18: incbin \"bin/ow/screen16-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen18_High", + "code": "OverworldMap32_Screen18_High: #_0B9D07: incbin \"bin/ow/screen18-h.bin\" ; size: 0x00A5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen18_Low", + "code": "OverworldMap32_Screen18_Low: #_0B9DAC: incbin \"bin/ow/screen18-l.bin\" ; size: 0x00DD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen19_High", + "code": "OverworldMap32_Screen19_High: #_0B9E89: incbin \"bin/ow/screen19-h.bin\" ; size: 0x00B0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen19_Low", + "code": "OverworldMap32_Screen19_Low: #_0B9F39: incbin \"bin/ow/screen19-l.bin\" ; size: 0x00DD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1A_High", + "code": "OverworldMap32_Screen1A_High: #_0BA016: incbin \"bin/ow/screen1A-h.bin\" ; size: 0x00F1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1A_Low", + "code": "OverworldMap32_Screen1A_Low: #_0BA107: incbin \"bin/ow/screen1A-l.bin\" ; size: 0x0102", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1B_High", + "code": "OverworldMap32_Screen1B_High: #_0BA209: incbin \"bin/ow/screen1B-h.bin\" ; size: 0x00B8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1B_Low", + "code": "OverworldMap32_Screen1B_Low: #_0BA2C1: incbin \"bin/ow/screen1B-l.bin\" ; size: 0x00E5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1C_High", + "code": "OverworldMap32_Screen1C_High: #_0BA3A6: incbin \"bin/ow/screen1C-h.bin\" ; size: 0x00B8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1C_Low", + "code": "OverworldMap32_Screen1C_Low: #_0BA45E: incbin \"bin/ow/screen1C-l.bin\" ; size: 0x00E5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1D_High", + "code": "OverworldMap32_Screen1D_High: #_0BA543: incbin \"bin/ow/screen1D-h.bin\" ; size: 0x00DF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1D_Low", + "code": "OverworldMap32_Screen1D_Low: #_0BA622: incbin \"bin/ow/screen1D-l.bin\" ; size: 0x00F2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1E_High", + "code": "OverworldMap32_Screen1E_High: #_0BA714: incbin \"bin/ow/screen1E-h.bin\" ; size: 0x0032", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1E_Low", + "code": "OverworldMap32_Screen1E_Low: #_0BA746: incbin \"bin/ow/screen1E-l.bin\" ; size: 0x00D3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1F_High", + "code": "OverworldMap32_Screen1F_High: #_0BA819: incbin \"bin/ow/screen1F-h.bin\" ; size: 0x0051", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen1F_Low", + "code": "OverworldMap32_Screen1F_Low: #_0BA86A: incbin \"bin/ow/screen1F-l.bin\" ; size: 0x00E4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen20_High", + "code": "OverworldMap32_Screen20_High: #_0BA94E: incbin \"bin/ow/screen20-h.bin\" ; size: 0x00AD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen20_Low", + "code": "OverworldMap32_Screen20_Low: #_0BA9FB: incbin \"bin/ow/screen20-l.bin\" ; size: 0x00D3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen21_High", + "code": "OverworldMap32_Screen21_High: #_0BAACE: incbin \"bin/ow/screen21-h.bin\" ; size: 0x00AB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen21_Low", + "code": "OverworldMap32_Screen21_Low: #_0BAB79: incbin \"bin/ow/screen21-l.bin\" ; size: 0x00E6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen22_High", + "code": "OverworldMap32_Screen22_High: #_0BAC5F: incbin \"bin/ow/screen22-h.bin\" ; size: 0x00CF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen22_Low", + "code": "OverworldMap32_Screen22_Low: #_0BAD2E: incbin \"bin/ow/screen22-l.bin\" ; size: 0x00F4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen23_High", + "code": "OverworldMap32_Screen23_High: #_0BAE22: incbin \"bin/ow/screen23-h.bin\" ; size: 0x00AB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen23_Low", + "code": "OverworldMap32_Screen23_Low: #_0BAECD: incbin \"bin/ow/screen23-l.bin\" ; size: 0x00D3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen24_High", + "code": "OverworldMap32_Screen24_High: #_0BAFA0: incbin \"bin/ow/screen24-h.bin\" ; size: 0x00C4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen24_Low", + "code": "OverworldMap32_Screen24_Low: #_0BB064: incbin \"bin/ow/screen24-l.bin\" ; size: 0x00DC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen26_High", + "code": "OverworldMap32_Screen26_High: #_0BB140: incbin \"bin/ow/screen26-h.bin\" ; size: 0x00C4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen26_Low", + "code": "OverworldMap32_Screen26_Low: #_0BB204: incbin \"bin/ow/screen26-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen27_High", + "code": "OverworldMap32_Screen27_High: #_0BB2F3: incbin \"bin/ow/screen27-h.bin\" ; size: 0x00D7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen27_Low", + "code": "OverworldMap32_Screen27_Low: #_0BB3CA: incbin \"bin/ow/screen27-l.bin\" ; size: 0x00E7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen28_High", + "code": "OverworldMap32_Screen28_High: #_0BB4B1: incbin \"bin/ow/screen28-h.bin\" ; size: 0x00B6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen28_Low", + "code": "OverworldMap32_Screen28_Low: #_0BB567: incbin \"bin/ow/screen28-l.bin\" ; size: 0x00DD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen29_High", + "code": "OverworldMap32_Screen29_High: #_0BB644: incbin \"bin/ow/screen29-h.bin\" ; size: 0x00D4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen29_Low", + "code": "OverworldMap32_Screen29_Low: #_0BB718: incbin \"bin/ow/screen29-l.bin\" ; size: 0x00E8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2D_High", + "code": "OverworldMap32_Screen2D_High: #_0BB800: incbin \"bin/ow/screen2D-h.bin\" ; size: 0x00D3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2D_Low", + "code": "OverworldMap32_Screen2D_Low: #_0BB8D3: incbin \"bin/ow/screen2D-l.bin\" ; size: 0x00E8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen30_High", + "code": "OverworldMap32_Screen30_High: #_0BB9BB: incbin \"bin/ow/screen30-h.bin\" ; size: 0x006A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen30_Low", + "code": "OverworldMap32_Screen30_Low: #_0BBA25: incbin \"bin/ow/screen30-l.bin\" ; size: 0x00D9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen31_High", + "code": "OverworldMap32_Screen31_High: #_0BBAFE: incbin \"bin/ow/screen31-h.bin\" ; size: 0x003E", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen31_Low", + "code": "OverworldMap32_Screen31_Low: #_0BBB3C: incbin \"bin/ow/screen31-l.bin\" ; size: 0x00C2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen32_High", + "code": "OverworldMap32_Screen32_High: #_0BBBFE: incbin \"bin/ow/screen32-h.bin\" ; size: 0x00DC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen32_Low", + "code": "OverworldMap32_Screen32_Low: #_0BBCDA: incbin \"bin/ow/screen32-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen35_High", + "code": "OverworldMap32_Screen35_High: #_0BBDC7: incbin \"bin/ow/screen35-h.bin\" ; size: 0x00E5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen35_Low", + "code": "OverworldMap32_Screen35_Low: #_0BBEAC: incbin \"bin/ow/screen35-l.bin\" ; size: 0x00F5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen36_High", + "code": "OverworldMap32_Screen36_High: #_0BBFA1: incbin \"bin/ow/screen36-h.bin\" ; size: 0x00EA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen36_Low", + "code": "OverworldMap32_Screen36_Low: #_0BC08B: incbin \"bin/ow/screen36-l.bin\" ; size: 0x0104", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen38_High", + "code": "OverworldMap32_Screen38_High: #_0BC18F: incbin \"bin/ow/screen38-h.bin\" ; size: 0x0071", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen38_Low", + "code": "OverworldMap32_Screen38_Low: #_0BC200: incbin \"bin/ow/screen38-l.bin\" ; size: 0x00A4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen39_High", + "code": "OverworldMap32_Screen39_High: #_0BC2A4: incbin \"bin/ow/screen39-h.bin\" ; size: 0x005C", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen39_Low", + "code": "OverworldMap32_Screen39_Low: #_0BC300: incbin \"bin/ow/screen39-l.bin\" ; size: 0x00B8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3A_High", + "code": "OverworldMap32_Screen3A_High: #_0BC3B8: incbin \"bin/ow/screen3A-h.bin\" ; size: 0x00E2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3A_Low", + "code": "OverworldMap32_Screen3A_Low: #_0BC49A: incbin \"bin/ow/screen3A-l.bin\" ; size: 0x00F6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3D_High", + "code": "OverworldMap32_Screen3D_High: #_0BC590: incbin \"bin/ow/screen3D-h.bin\" ; size: 0x00E3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3D_Low", + "code": "OverworldMap32_Screen3D_Low: #_0BC673: incbin \"bin/ow/screen3D-l.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3E_High", + "code": "OverworldMap32_Screen3E_High: #_0BC76C: incbin \"bin/ow/screen3E-h.bin\" ; size: 0x00DC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3E_Low", + "code": "OverworldMap32_Screen3E_Low: #_0BC848: incbin \"bin/ow/screen3E-l.bin\" ; size: 0x00F7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen40_High", + "code": "OverworldMap32_Screen40_High: #_0BC93F: incbin \"bin/ow/screen40-h.bin\" ; size: 0x0009", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen40_Low", + "code": "OverworldMap32_Screen40_Low: #_0BC948: incbin \"bin/ow/screen40-l.bin\" ; size: 0x00D1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen41_High", + "code": "OverworldMap32_Screen41_High: #_0BCA19: incbin \"bin/ow/screen41-h.bin\" ; size: 0x005F", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen41_Low", + "code": "OverworldMap32_Screen41_Low: #_0BCA78: incbin \"bin/ow/screen41-l.bin\" ; size: 0x00E2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen42_High", + "code": "OverworldMap32_Screen42_High: #_0BCB5A: incbin \"bin/ow/screen42-h.bin\" ; size: 0x0089", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen42_Low", + "code": "OverworldMap32_Screen42_Low: #_0BCBE3: incbin \"bin/ow/screen42-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen43_High", + "code": "OverworldMap32_Screen43_High: #_0BCCD0: incbin \"bin/ow/screen43-h.bin\" ; size: 0x0088", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen43_Low", + "code": "OverworldMap32_Screen43_Low: #_0BCD58: incbin \"bin/ow/screen43-l.bin\" ; size: 0x00BB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen44_High", + "code": "OverworldMap32_Screen44_High: #_0BCE13: incbin \"bin/ow/screen44-h.bin\" ; size: 0x009D", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen44_Low", + "code": "OverworldMap32_Screen44_Low: #_0BCEB0: incbin \"bin/ow/screen44-l.bin\" ; size: 0x00BC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen45_High", + "code": "OverworldMap32_Screen45_High: #_0BCF6C: incbin \"bin/ow/screen45-h.bin\" ; size: 0x008A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen45_Low", + "code": "OverworldMap32_Screen45_Low: #_0BCFF6: incbin \"bin/ow/screen45-l.bin\" ; size: 0x00BB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen46_High", + "code": "OverworldMap32_Screen46_High: #_0BD0B1: incbin \"bin/ow/screen46-h.bin\" ; size: 0x00B8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen46_Low", + "code": "OverworldMap32_Screen46_Low: #_0BD169: incbin \"bin/ow/screen46-l.bin\" ; size: 0x00DB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen47_High", + "code": "OverworldMap32_Screen47_High: #_0BD244: incbin \"bin/ow/screen47-h.bin\" ; size: 0x00C7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen47_Low", + "code": "OverworldMap32_Screen47_Low: #_0BD30B: incbin \"bin/ow/screen47-l.bin\" ; size: 0x00EB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen48_High", + "code": "OverworldMap32_Screen48_High: #_0BD3F6: incbin \"bin/ow/screen48-h.bin\" ; size: 0x00AE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen48_Low", + "code": "OverworldMap32_Screen48_Low: #_0BD4A4: incbin \"bin/ow/screen48-l.bin\" ; size: 0x00E4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen49_High", + "code": "OverworldMap32_Screen49_High: #_0BD588: incbin \"bin/ow/screen49-h.bin\" ; size: 0x0094", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen49_Low", + "code": "OverworldMap32_Screen49_Low: #_0BD61C: incbin \"bin/ow/screen49-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0A_High", + "code": "OverworldMap32_Screen0A_High: #_0BD709: incbin \"bin/ow/screen0A-h.bin\" ; size: 0x00E7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen0A_Low", + "code": "OverworldMap32_Screen0A_Low: #_0BD7F0: incbin \"bin/ow/screen0A-l.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4B_High", + "code": "OverworldMap32_Screen4B_High: #_0BD8E9: incbin \"bin/ow/screen4B-h.bin\" ; size: 0x00D6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4B_Low", + "code": "OverworldMap32_Screen4B_Low: #_0BD9BF: incbin \"bin/ow/screen4B-l.bin\" ; size: 0x00E8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4C_High", + "code": "OverworldMap32_Screen4C_High: #_0BDAA7: incbin \"bin/ow/screen4C-h.bin\" ; size: 0x00B9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4C_Low", + "code": "OverworldMap32_Screen4C_Low: #_0BDB60: incbin \"bin/ow/screen4C-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4D_High", + "code": "OverworldMap32_Screen4D_High: #_0BDC4D: incbin \"bin/ow/screen4D-h.bin\" ; size: 0x00DD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4D_Low", + "code": "OverworldMap32_Screen4D_Low: #_0BDD2A: incbin \"bin/ow/screen4D-l.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4E_High", + "code": "OverworldMap32_Screen4E_High: #_0BDE23: incbin \"bin/ow/screen4E-h.bin\" ; size: 0x00F0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4E_Low", + "code": "OverworldMap32_Screen4E_Low: #_0BDF13: incbin \"bin/ow/screen4E-l.bin\" ; size: 0x00FE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4F_High", + "code": "OverworldMap32_Screen4F_High: #_0BE011: incbin \"bin/ow/screen4F-h.bin\" ; size: 0x00DF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen4F_Low", + "code": "OverworldMap32_Screen4F_Low: #_0BE0F0: incbin \"bin/ow/screen4F-l.bin\" ; size: 0x00EE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen50_High", + "code": "OverworldMap32_Screen50_High: #_0BE1DE: incbin \"bin/ow/screen50-h.bin\" ; size: 0x00C5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen50_Low", + "code": "OverworldMap32_Screen50_Low: #_0BE2A3: incbin \"bin/ow/screen50-l.bin\" ; size: 0x00F7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen11_High", + "code": "OverworldMap32_Screen11_High: #_0BE39A: incbin \"bin/ow/screen11-h.bin\" ; size: 0x00CE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen11_Low", + "code": "OverworldMap32_Screen11_Low: #_0BE468: incbin \"bin/ow/screen11-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen12_High", + "code": "OverworldMap32_Screen12_High: #_0BE557: incbin \"bin/ow/screen12-h.bin\" ; size: 0x00F3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen12_Low", + "code": "OverworldMap32_Screen12_Low: #_0BE64A: incbin \"bin/ow/screen12-l.bin\" ; size: 0x0101", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen53_High", + "code": "OverworldMap32_Screen53_High: #_0BE74B: incbin \"bin/ow/screen53-h.bin\" ; size: 0x00BC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen53_Low", + "code": "OverworldMap32_Screen53_Low: #_0BE807: incbin \"bin/ow/screen53-l.bin\" ; size: 0x00D8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen54_High", + "code": "OverworldMap32_Screen54_High: #_0BE8DF: incbin \"bin/ow/screen54-h.bin\" ; size: 0x0097", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen54_Low", + "code": "OverworldMap32_Screen54_Low: #_0BE976: incbin \"bin/ow/screen54-l.bin\" ; size: 0x00C1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen55_High", + "code": "OverworldMap32_Screen55_High: #_0BEA37: incbin \"bin/ow/screen55-h.bin\" ; size: 0x00D8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen55_Low", + "code": "OverworldMap32_Screen55_Low: #_0BEB0F: incbin \"bin/ow/screen55-l.bin\" ; size: 0x00F2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen56_High", + "code": "OverworldMap32_Screen56_High: #_0BEC01: incbin \"bin/ow/screen56-h.bin\" ; size: 0x00CA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen56_Low", + "code": "OverworldMap32_Screen56_Low: #_0BECCB: incbin \"bin/ow/screen56-l.bin\" ; size: 0x00F7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen17_High", + "code": "OverworldMap32_Screen17_High: #_0BEDC2: incbin \"bin/ow/screen17-h.bin\" ; size: 0x00E5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen17_Low", + "code": "OverworldMap32_Screen17_Low: #_0BEEA7: incbin \"bin/ow/screen17-l.bin\" ; size: 0x00F3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen58_High", + "code": "OverworldMap32_Screen58_High: #_0BEF9A: incbin \"bin/ow/screen58-h.bin\" ; size: 0x00CD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen58_Low", + "code": "OverworldMap32_Screen58_Low: #_0BF067: incbin \"bin/ow/screen58-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen59_High", + "code": "OverworldMap32_Screen59_High: #_0BF156: incbin \"bin/ow/screen59-h.bin\" ; size: 0x00BD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen59_Low", + "code": "OverworldMap32_Screen59_Low: #_0BF213: incbin \"bin/ow/screen59-l.bin\" ; size: 0x00E1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5A_High", + "code": "OverworldMap32_Screen5A_High: #_0BF2F4: incbin \"bin/ow/screen5A-h.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5A_Low", + "code": "OverworldMap32_Screen5A_Low: #_0BF3E3: incbin \"bin/ow/screen5A-l.bin\" ; size: 0x0101", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5B_High", + "code": "OverworldMap32_Screen5B_High: #_0BF4E4: incbin \"bin/ow/screen5B-h.bin\" ; size: 0x003B", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5B_Low", + "code": "OverworldMap32_Screen5B_Low: #_0BF51F: incbin \"bin/ow/screen5B-l.bin\" ; size: 0x009C", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5C_High", + "code": "OverworldMap32_Screen5C_High: #_0BF5BB: incbin \"bin/ow/screen5C-h.bin\" ; size: 0x0057", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5C_Low", + "code": "OverworldMap32_Screen5C_Low: #_0BF612: incbin \"bin/ow/screen5C-l.bin\" ; size: 0x00A1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5D_High", + "code": "OverworldMap32_Screen5D_High: #_0BF6B3: incbin \"bin/ow/screen5D-h.bin\" ; size: 0x00F1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5D_Low", + "code": "OverworldMap32_Screen5D_Low: #_0BF7A4: incbin \"bin/ow/screen5D-l.bin\" ; size: 0x0100", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5E_High", + "code": "OverworldMap32_Screen5E_High: #_0BF8A4: incbin \"bin/ow/screen5E-h.bin\" ; size: 0x003A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5E_Low", + "code": "OverworldMap32_Screen5E_Low: #_0BF8DE: incbin \"bin/ow/screen5E-l.bin\" ; size: 0x00CC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5F_High", + "code": "OverworldMap32_Screen5F_High: #_0BF9AA: incbin \"bin/ow/screen5F-h.bin\" ; size: 0x0095", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen5F_Low", + "code": "OverworldMap32_Screen5F_Low: #_0BFA3F: incbin \"bin/ow/screen5F-l.bin\" ; size: 0x00D6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen60_High", + "code": "OverworldMap32_Screen60_High: #_0BFB15: incbin \"bin/ow/screen60-h.bin\" ; size: 0x00C0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen60_Low", + "code": "OverworldMap32_Screen60_Low: #_0BFBD5: incbin \"bin/ow/screen60-l.bin\" ; size: 0x00E4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen61_High", + "code": "OverworldMap32_Screen61_High: #_0BFCB9: incbin \"bin/ow/screen61-h.bin\" ; size: 0x00B4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen61_Low", + "code": "OverworldMap32_Screen61_Low: #_0BFD6D: incbin \"bin/ow/screen61-l.bin\" ; size: 0x00F1\n\n; =========================================================\n\norg $0C8000\n", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen62_High", + "code": "OverworldMap32_Screen62_High: #_0C8000: incbin \"bin/ow/screen62-h.bin\" ; size: 0x00D2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen62_Low", + "code": "OverworldMap32_Screen62_Low: #_0C80D2: incbin \"bin/ow/screen62-l.bin\" ; size: 0x00F2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen63_High", + "code": "OverworldMap32_Screen63_High: #_0C81C4: incbin \"bin/ow/screen63-h.bin\" ; size: 0x00A1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen63_Low", + "code": "OverworldMap32_Screen63_Low: #_0C8265: incbin \"bin/ow/screen63-l.bin\" ; size: 0x00BC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen64_High", + "code": "OverworldMap32_Screen64_High: #_0C8321: incbin \"bin/ow/screen64-h.bin\" ; size: 0x00C5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen64_Low", + "code": "OverworldMap32_Screen64_Low: #_0C83E6: incbin \"bin/ow/screen64-l.bin\" ; size: 0x00D7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen25_High", + "code": "OverworldMap32_Screen25_High: #_0C84BD: incbin \"bin/ow/screen25-h.bin\" ; size: 0x00DB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen25_Low", + "code": "OverworldMap32_Screen25_Low: #_0C8598: incbin \"bin/ow/screen25-l.bin\" ; size: 0x00F0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen66_High", + "code": "OverworldMap32_Screen66_High: #_0C8688: incbin \"bin/ow/screen66-h.bin\" ; size: 0x00AC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen66_Low", + "code": "OverworldMap32_Screen66_Low: #_0C8734: incbin \"bin/ow/screen66-l.bin\" ; size: 0x00D9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen67_High", + "code": "OverworldMap32_Screen67_High: #_0C880D: incbin \"bin/ow/screen67-h.bin\" ; size: 0x00D0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen67_Low", + "code": "OverworldMap32_Screen67_Low: #_0C88DD: incbin \"bin/ow/screen67-l.bin\" ; size: 0x00EF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen68_High", + "code": "OverworldMap32_Screen68_High: #_0C89CC: incbin \"bin/ow/screen68-h.bin\" ; size: 0x00D8", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen68_Low", + "code": "OverworldMap32_Screen68_Low: #_0C8AA4: incbin \"bin/ow/screen68-l.bin\" ; size: 0x00F6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen69_High", + "code": "OverworldMap32_Screen69_High: #_0C8B9A: incbin \"bin/ow/screen69-h.bin\" ; size: 0x00D9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen69_Low", + "code": "OverworldMap32_Screen69_Low: #_0C8C73: incbin \"bin/ow/screen69-l.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2A_High", + "code": "OverworldMap32_Screen2A_High: #_0C8D6C: incbin \"bin/ow/screen2A-h.bin\" ; size: 0x00CF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2A_Low", + "code": "OverworldMap32_Screen2A_Low: #_0C8E3B: incbin \"bin/ow/screen2A-l.bin\" ; size: 0x00F0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2B_High", + "code": "OverworldMap32_Screen2B_High: #_0C8F2B: incbin \"bin/ow/screen2B-h.bin\" ; size: 0x00E1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2B_Low", + "code": "OverworldMap32_Screen2B_Low: #_0C900C: incbin \"bin/ow/screen2B-l.bin\" ; size: 0x00FA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2C_High", + "code": "OverworldMap32_Screen2C_High: #_0C9106: incbin \"bin/ow/screen2C-h.bin\" ; size: 0x00EB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2C_Low", + "code": "OverworldMap32_Screen2C_Low: #_0C91F1: incbin \"bin/ow/screen2C-l.bin\" ; size: 0x00F7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen6D_High", + "code": "OverworldMap32_Screen6D_High: #_0C92E8: incbin \"bin/ow/screen6D-h.bin\" ; size: 0x00EC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen6D_Low", + "code": "OverworldMap32_Screen6D_Low: #_0C93D4: incbin \"bin/ow/screen6D-l.bin\" ; size: 0x00FC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2E_High", + "code": "OverworldMap32_Screen2E_High: #_0C94D0: incbin \"bin/ow/screen2E-h.bin\" ; size: 0x00F4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2E_Low", + "code": "OverworldMap32_Screen2E_Low: #_0C95C4: incbin \"bin/ow/screen2E-l.bin\" ; size: 0x00FB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2F_High", + "code": "OverworldMap32_Screen2F_High: #_0C96BF: incbin \"bin/ow/screen2F-h.bin\" ; size: 0x00F4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen2F_Low", + "code": "OverworldMap32_Screen2F_Low: #_0C97B3: incbin \"bin/ow/screen2F-l.bin\" ; size: 0x00FD", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen70_High", + "code": "OverworldMap32_Screen70_High: #_0C98B0: incbin \"bin/ow/screen70-h.bin\" ; size: 0x00BE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen70_Low", + "code": "OverworldMap32_Screen70_Low: #_0C996E: incbin \"bin/ow/screen70-l.bin\" ; size: 0x00DA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen71_High", + "code": "OverworldMap32_Screen71_High: #_0C9A48: incbin \"bin/ow/screen71-h.bin\" ; size: 0x00AC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen71_Low", + "code": "OverworldMap32_Screen71_Low: #_0C9AF4: incbin \"bin/ow/screen71-l.bin\" ; size: 0x00CE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen72_High", + "code": "OverworldMap32_Screen72_High: #_0C9BC2: incbin \"bin/ow/screen72-h.bin\" ; size: 0x00F1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen72_Low", + "code": "OverworldMap32_Screen72_Low: #_0C9CB3: incbin \"bin/ow/screen72-l.bin\" ; size: 0x00FC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen33_High", + "code": "OverworldMap32_Screen33_High: #_0C9DAF: incbin \"bin/ow/screen33-h.bin\" ; size: 0x00D3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen33_Low", + "code": "OverworldMap32_Screen33_Low: #_0C9E82: incbin \"bin/ow/screen33-l.bin\" ; size: 0x00F1", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen34_High", + "code": "OverworldMap32_Screen34_High: #_0C9F73: incbin \"bin/ow/screen34-h.bin\" ; size: 0x00D6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen34_Low", + "code": "OverworldMap32_Screen34_Low: #_0CA049: incbin \"bin/ow/screen34-l.bin\" ; size: 0x00E9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen75_High", + "code": "OverworldMap32_Screen75_High: #_0CA132: incbin \"bin/ow/screen75-h.bin\" ; size: 0x00F4", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen75_Low", + "code": "OverworldMap32_Screen75_Low: #_0CA226: incbin \"bin/ow/screen75-l.bin\" ; size: 0x0103", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen76_High", + "code": "OverworldMap32_Screen76_High: #_0CA329: incbin \"bin/ow/screen76-h.bin\" ; size: 0x00B3", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen76_Low", + "code": "OverworldMap32_Screen76_Low: #_0CA3DC: incbin \"bin/ow/screen76-l.bin\" ; size: 0x00DE", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen37_High", + "code": "OverworldMap32_Screen37_High: #_0CA4BA: incbin \"bin/ow/screen37-h.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen37_Low", + "code": "OverworldMap32_Screen37_Low: #_0CA5B3: incbin \"bin/ow/screen37-l.bin\" ; size: 0x00FF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen78_High", + "code": "OverworldMap32_Screen78_High: #_0CA6B2: incbin \"bin/ow/screen78-h.bin\" ; size: 0x00E7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen78_Low", + "code": "OverworldMap32_Screen78_Low: #_0CA799: incbin \"bin/ow/screen78-l.bin\" ; size: 0x00FF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen79_High", + "code": "OverworldMap32_Screen79_High: #_0CA898: incbin \"bin/ow/screen79-h.bin\" ; size: 0x00D9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen79_Low", + "code": "OverworldMap32_Screen79_Low: #_0CA971: incbin \"bin/ow/screen79-l.bin\" ; size: 0x00FC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7A_High", + "code": "OverworldMap32_Screen7A_High: #_0CAA6D: incbin \"bin/ow/screen7A-h.bin\" ; size: 0x00F7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7A_Low", + "code": "OverworldMap32_Screen7A_Low: #_0CAB64: incbin \"bin/ow/screen7A-l.bin\" ; size: 0x00FB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3B_High", + "code": "OverworldMap32_Screen3B_High: #_0CAC5F: incbin \"bin/ow/screen3B-h.bin\" ; size: 0x00EB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3B_Low", + "code": "OverworldMap32_Screen3B_Low: #_0CAD4A: incbin \"bin/ow/screen3B-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3C_High", + "code": "OverworldMap32_Screen3C_High: #_0CAE37: incbin \"bin/ow/screen3C-h.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3C_Low", + "code": "OverworldMap32_Screen3C_Low: #_0CAF24: incbin \"bin/ow/screen3C-l.bin\" ; size: 0x00F2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7D_High", + "code": "OverworldMap32_Screen7D_High: #_0CB016: incbin \"bin/ow/screen7D-h.bin\" ; size: 0x00F6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7D_Low", + "code": "OverworldMap32_Screen7D_Low: #_0CB10C: incbin \"bin/ow/screen7D-l.bin\" ; size: 0x00FF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7E_High", + "code": "OverworldMap32_Screen7E_High: #_0CB20B: incbin \"bin/ow/screen7E-h.bin\" ; size: 0x00DB", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen7E_Low", + "code": "OverworldMap32_Screen7E_Low: #_0CB2E6: incbin \"bin/ow/screen7E-l.bin\" ; size: 0x00EC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3F_High", + "code": "OverworldMap32_Screen3F_High: #_0CB3D2: incbin \"bin/ow/screen3F-h.bin\" ; size: 0x00F6", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen3F_Low", + "code": "OverworldMap32_Screen3F_Low: #_0CB4C8: incbin \"bin/ow/screen3F-l.bin\" ; size: 0x0100", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9E_High", + "code": "OverworldMap32_Screen9E_High: #_0CB5C8: incbin \"bin/ow/screen9E-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9E_Low", + "code": "OverworldMap32_Screen9E_Low: #_0CB5CC: incbin \"bin/ow/screen9E-l.bin\" ; size: 0x00AF", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen97_High", + "code": "OverworldMap32_Screen97_High: #_0CB67B: incbin \"bin/ow/screen97-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen97_Low", + "code": "OverworldMap32_Screen97_Low: #_0CB67F: incbin \"bin/ow/screen97-l.bin\" ; size: 0x003F", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9F_High", + "code": "OverworldMap32_Screen9F_High: #_0CB6BE: incbin \"bin/ow/screen9F-h.bin\" ; size: 0x0085", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9F_Low", + "code": "OverworldMap32_Screen9F_Low: #_0CB743: incbin \"bin/ow/screen9F-l.bin\" ; size: 0x00F9", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen80_High", + "code": "OverworldMap32_Screen80_High: #_0CB83C: incbin \"bin/ow/screen80-h.bin\" ; size: 0x0070", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen80_Low", + "code": "OverworldMap32_Screen80_Low: #_0CB8AC: incbin \"bin/ow/screen80-l.bin\" ; size: 0x00D0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen81_High", + "code": "OverworldMap32_Screen81_High: #_0CB97C: incbin \"bin/ow/screen81-h.bin\" ; size: 0x009A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen81_Low", + "code": "OverworldMap32_Screen81_Low: #_0CBA16: incbin \"bin/ow/screen81-l.bin\" ; size: 0x00DC", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen82_High", + "code": "OverworldMap32_Screen82_High: #_0CBAF2: incbin \"bin/ow/screen82-h.bin\" ; size: 0x00C7", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen82_Low", + "code": "OverworldMap32_Screen82_Low: #_0CBBB9: incbin \"bin/ow/screen82-l.bin\" ; size: 0x00F5", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen89_High", + "code": "OverworldMap32_Screen89_High: #_0CBCAE: incbin \"bin/ow/screen89-h.bin\" ; size: 0x00B0", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen89_Low", + "code": "OverworldMap32_Screen89_Low: #_0CBD5E: incbin \"bin/ow/screen89-l.bin\" ; size: 0x00ED", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen8A_High", + "code": "OverworldMap32_Screen8A_High: #_0CBE4B: incbin \"bin/ow/screen8A-h.bin\" ; size: 0x00BA", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen8A_Low", + "code": "OverworldMap32_Screen8A_Low: #_0CBF05: incbin \"bin/ow/screen8A-l.bin\" ; size: 0x00D2", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen96_High", + "code": "OverworldMap32_Screen96_High: #_0CBFD7: incbin \"bin/ow/screen96-h.bin\" ; size: 0x0007", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen96_Low", + "code": "OverworldMap32_Screen96_Low: #_0CBFDE: incbin \"bin/ow/screen96-l.bin\" ; size: 0x001C", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen95_High", + "code": "OverworldMap32_Screen95_High: #_0CBFFA: incbin \"bin/ow/screen95-h.bin\" ; size: 0x004A", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen95_Low", + "code": "OverworldMap32_Screen95_Low: #_0CC044: incbin \"bin/ow/screen95-l.bin\" ; size: 0x0068", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9C_High", + "code": "OverworldMap32_Screen9C_High: #_0CC0AC: incbin \"bin/ow/screen9C-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen9C_Low", + "code": "OverworldMap32_Screen9C_Low: #_0CC0B0: incbin \"bin/ow/screen9C-l.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "OverworldMap32_Screen88_High", + "code": "OverworldMap32_Screen88_High: #_0CC0B4: incbin \"bin/ow/screen88-h.bin\" ; size: 0x0004", + "file": "overworlds.asm" + }, + { + "name": "SamplePointers", + "code": "SamplePointers:\n#_198000: dw $0070, SAMPLE_POINTERS ; Transfer size, transfer address\n\nbase SAMPLE_POINTERS\n\n#_198004: #_3C00: dw $4000, $4012 ; 0x00 - Noise\n#_198008: #_3C04: dw $4048, $4063 ; 0x01 - Rain\n#_19800C: #_3C08: dw $47F2, $5395 ; 0x02 - Timpani\n#_198010: #_3C0C: dw $5395, $53B0 ; 0x03 - Square wave\n#_198014: #_3C10: dw $53D4, $53EF ; 0x04 - Saw wave\n#_198018: #_3C14: dw $5413, $542E ; 0x05 - Clink\n#_19801C: #_3C18: dw $5476, $54A3 ; 0x06 - Wobbly lead\n#_198020: #_3C1C: dw $550F, $5521 ; 0x07 - Compound saw\n#_198024: #_3C20: dw $55B1, $5B2D ; 0x08 - Tweet\n#_198028: #_3C24: dw $5B2D, $60BB ; 0x09 - Strings A\n#_19802C: #_3C28: dw $5B2D, $60BB ; 0x0A - Strings B\n#_198030: #_3C2C: dw $68AD, $6C9D ; 0x0B - Trombone\n#_198034: #_3C30: dw $6CD3, $7A65 ; 0x0C - Cymbal\n#_198038: #_3C34: dw $7A65, $7BFA ; 0x0D - Ocarina\n#_19803C: #_3C38: dw $7C03, $7C78 ; 0x0E - Chimes\n#_198040: #_3C3C: dw $7CDB, $7EA6 ; 0x0F - Harp\n#_198044: #_3C40: dw $7EC1, $867D ; 0x10 - Splash\n#_198048: #_3C44: dw $867D, $8D6A ; 0x11 - Trumpet\n#_19804C: #_3C48: dw $8D85, $944E ; 0x12 - Horn\n#_198050: #_3C4C: dw $948D, $A1BC ; 0x13 - Snare A\n#_198054: #_3C50: dw $948D, $A1BC ; 0x14 - Snare B\n#_198058: #_3C54: dw $A1BC, $A6E7 ; 0x15 - Choir\n#_19805C: #_3C58: dw $AEB5, $B0D1 ; 0x16 - Flute\n#_198060: #_3C5C: dw $B0EC, $B32C ; 0x17 - Oof\n#_198064: #_3C60: dw $B32C, $BA61 ; 0x18 - Piano\n#_198068: #_3C64: dw $FFFF, $FFFF ; 0x19 - null\n#_19806C: #_3C68: dw $FFFF, $FFFF ; 0x1A - null\n#_198070: #_3C6C: dw $FFFF, $FFFF ; 0x1B - null\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SampleData", + "code": "SampleData:\n#_198074: dw $7AA0, SAMPLE_DATA ; Transfer size, transfer address\n\nbase SAMPLE_DATA\n\n#_198078: #_4000: incbin \"bin/brr/noise.brr\"\n#_1980C0: #_4048: incbin \"bin/brr/rain.brr\"\n#_19886A: #_47F2: incbin \"bin/brr/timpani.brr\"\n#_19940D: #_5395: incbin \"bin/brr/square.brr\"\n#_19944C: #_53D4: incbin \"bin/brr/saw.brr\"\n#_19948B: #_5413: incbin \"bin/brr/clink.brr\"\n#_1994EE: #_5476: incbin \"bin/brr/wobbly.brr\"\n#_199587: #_550F: incbin \"bin/brr/compoundsaw.brr\"\n#_199629: #_55B1: incbin \"bin/brr/tweet.brr\"\n#_199BA5: #_5B2D: incbin \"bin/brr/strings.brr\"\n#_19A925: #_68AD: incbin \"bin/brr/trombone.brr\"\n#_19AD4B: #_6CD3: incbin \"bin/brr/cymbal.brr\"\n#_19BADD: #_7A65: incbin \"bin/brr/ocarina.brr\"\n#_19BC7B: #_7C03: incbin \"bin/brr/chime.brr\"\n#_19BD53: #_7CDB: incbin \"bin/brr/harp.brr\"\n#_19BF39: #_7EC1: incbin \"bin/brr/splash.brr\"\n#_19C6F5: #_867D: incbin \"bin/brr/trumpet.brr\"\n#_19CDFD: #_8D85: incbin \"bin/brr/horn.brr\"\n#_19D505: #_948D: incbin \"bin/brr/snare.brr\"\n#_19E234: #_A1BC: incbin \"bin/brr/choir.brr\"\n#_19EF2D: #_AEB5: incbin \"bin/brr/flute.brr\"\n#_19F164: #_B0EC: incbin \"bin/brr/OOF.brr\"\n#_19F3A4: #_B32C: incbin \"bin/brr/piano.brr\"\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "InstrumentData", + "code": "InstrumentData:\n#_19FB18: dw $00AE, INSTRUMENT_DATA ; Transfer size, transfer address\n\nbase INSTRUMENT_DATA\n\n; SRCN, ADSR1, ADSR2, GAIN, MULT (big endian)\n#_19FB1C: #_3D00: db $00, $FF, $E0, $B8, $04, $70 ; 0x00 - Noise\n#_19FB22: #_3D06: db $01, $FF, $E0, $B8, $07, $90 ; 0x01 - Rain\n#_19FB28: #_3D0C: db $02, $FF, $E0, $B8, $09, $C0 ; 0x02 - Timpani\n#_19FB2E: #_3D12: db $03, $FF, $E0, $B8, $04, $00 ; 0x03 - Square wave\n#_19FB34: #_3D18: db $04, $FF, $E0, $B8, $04, $00 ; 0x04 - Saw wave\n#_19FB3A: #_3D1E: db $05, $FF, $E0, $B8, $04, $70 ; 0x05 - Clink\n#_19FB40: #_3D24: db $06, $FF, $E0, $B8, $04, $70 ; 0x06 - Wobbly lead\n#_19FB46: #_3D2A: db $07, $FF, $E0, $B8, $04, $70 ; 0x07 - Compound saw\n#_19FB4C: #_3D30: db $08, $FF, $E0, $B8, $07, $A0 ; 0x08 - Tweet\n#_19FB52: #_3D36: db $09, $8F, $E9, $B8, $01, $E0 ; 0x09 - Strings A\n#_19FB58: #_3D3C: db $0A, $8A, $E9, $B8, $01, $E0 ; 0x0A - Strings B\n#_19FB5E: #_3D42: db $0B, $FF, $E0, $B8, $03, $00 ; 0x0B - Trombone\n#_19FB64: #_3D48: db $0C, $FF, $E0, $B8, $03, $A0 ; 0x0C - Cymbal\n#_19FB6A: #_3D4E: db $0D, $FF, $E0, $B8, $01, $00 ; 0x0D - Ocarina\n#_19FB70: #_3D54: db $0E, $FF, $EF, $B8, $0E, $A0 ; 0x0E - Chimes\n#_19FB76: #_3D5A: db $0F, $FF, $EF, $B8, $06, $00 ; 0x0F - Harp\n#_19FB7C: #_3D60: db $10, $FF, $E0, $B8, $03, $D0 ; 0x10 - Splash\n#_19FB82: #_3D66: db $11, $8F, $E0, $B8, $03, $00 ; 0x11 - Trumpet\n#_19FB88: #_3D6C: db $12, $8F, $E0, $B8, $06, $F0 ; 0x12 - Horn\n#_19FB8E: #_3D72: db $13, $FD, $E0, $B8, $07, $A0 ; 0x13 - Snare A\n#_19FB94: #_3D78: db $14, $FF, $E0, $B8, $07, $A0 ; 0x14 - Snare B\n#_19FB9A: #_3D7E: db $15, $FF, $E0, $B8, $03, $D0 ; 0x15 - Choir\n#_19FBA0: #_3D84: db $16, $8F, $E0, $B8, $03, $00 ; 0x16 - Flute\n#_19FBA6: #_3D8A: db $17, $FF, $E0, $B8, $02, $C0 ; 0x17 - Oof\n#_19FBAC: #_3D90: db $18, $FE, $8F, $B8, $06, $F0 ; 0x18 - Piano\n\n; ---------------------------------------------------------\n\n; stacc and attack table (dumb that it's here)", + "file": "sound.asm" + }, + { + "name": "NoteStacc", + "code": "NoteStacc:\n#_19FBB2: #_3D96: db $32, $65, $7F, $98, $B2, $CB, $E5, $FC\n", + "file": "sound.asm" + }, + { + "name": "NoteAttack", + "code": "NoteAttack:\n#_19FBB8: #_3D9E: db $19, $32, $4C, $65, $72, $7F, $8C, $98\n#_19FBBE: #_3DA6: db $A5, $B2, $BF, $CB, $D8, $E5, $F2, $FC\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SPCEngine", + "code": "SPCEngine:\n#_19FBCA: dw $0F9E, SPC_ENGINE ; Transfer size, transfer address\n\nincsrc \"spc.asm\"\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SFX_Data", + "code": "SFX_Data:\n#_1A8B6C: dw $1090, SFX_DATA ; Transfer size, transfer address\n\nbase SFX_DATA\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SFX1_Pointers", + "code": "SFX1_Pointers:\n#_1A8B70: #_17C0: dw SFX1_01\n#_1A8B72: #_17C2: dw SFX1_02\n#_1A8B74: #_17C4: dw SFX1_03\n#_1A8B76: #_17C6: dw SFX1_04\n#_1A8B78: #_17C8: dw SFX1_05\n#_1A8B7A: #_17CA: dw SFX1_05\n#_1A8B7C: #_17CC: dw SFX1_07\n#_1A8B7E: #_17CE: dw SFX1_08\n#_1A8B80: #_17D0: dw SFX1_09\n#_1A8B82: #_17D2: dw SFX1_0A\n#_1A8B84: #_17D4: dw SFX1_0B\n#_1A8B86: #_17D6: dw SFX1_0C\n#_1A8B88: #_17D8: dw SFX1_0D\n#_1A8B8A: #_17DA: dw SFX1_0E\n#_1A8B8C: #_17DC: dw SFX1_0F\n#_1A8B8E: #_17DE: dw SFX1_10\n#_1A8B90: #_17E0: dw SFX1_11\n#_1A8B92: #_17E2: dw SFX1_12\n#_1A8B94: #_17E4: dw SFX1_13\n#_1A8B96: #_17E6: dw SFX1_14\n#_1A8B98: #_17E8: dw SFX1_15\n#_1A8B9A: #_17EA: dw SFX1_16\n#_1A8B9C: #_17EC: dw SFX1_17\n#_1A8B9E: #_17EE: dw SFX1_18\n#_1A8BA0: #_17F0: dw $0000\n#_1A8BA2: #_17F2: dw $0000\n#_1A8BA4: #_17F4: dw SFX1_0B\n#_1A8BA6: #_17F6: dw SFX1_0C\n#_1A8BA8: #_17F8: dw SFX1_0D\n#_1A8BAA: #_17FA: dw SFX1_0E\n#_1A8BAC: #_17FC: dw SFX1_0F\n#_1A8BAE: #_17FE: dw SFX1_10\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "SFX1_Accomp", + "code": "SFX1_Accomp:\n#_1A8BB0: #_1800: db $02 ; SFX1 01\n#_1A8BB1: #_1801: db $00 ; SFX1 02\n#_1A8BB2: #_1802: db $04 ; SFX1 03\n#_1A8BB3: #_1803: db $00 ; SFX1 04\n#_1A8BB4: #_1804: db $06 ; SFX1 05\n#_1A8BB5: #_1805: db $00 ; SFX1 06\n#_1A8BB6: #_1806: db $08 ; SFX1 07\n#_1A8BB7: #_1807: db $00 ; SFX1 08\n#_1A8BB8: #_1808: db $0A ; SFX1 09\n#_1A8BB9: #_1809: db $00 ; SFX1 0A\n#_1A8BBA: #_180A: db $0C ; SFX1 0B\n#_1A8BBB: #_180B: db $00 ; SFX1 0C\n#_1A8BBC: #_180C: db $0E ; SFX1 0D\n#_1A8BBD: #_180D: db $00 ; SFX1 0E\n#_1A8BBE: #_180E: db $10 ; SFX1 0F\n#_1A8BBF: #_180F: db $00 ; SFX1 10\n#_1A8BC0: #_1810: db $12 ; SFX1 11\n#_1A8BC1: #_1811: db $00 ; SFX1 12\n#_1A8BC2: #_1812: db $14 ; SFX1 13\n#_1A8BC3: #_1813: db $00 ; SFX1 14\n#_1A8BC4: #_1814: db $16 ; SFX1 15\n#_1A8BC5: #_1815: db $00 ; SFX1 16\n#_1A8BC6: #_1816: db $18 ; SFX1 17\n#_1A8BC7: #_1817: db $00 ; SFX1 18\n#_1A8BC8: #_1818: db $1A ; SFX1 19\n#_1A8BC9: #_1819: db $00 ; SFX1 1A\n#_1A8BCA: #_181A: db $1C ; SFX1 1B\n#_1A8BCB: #_181B: db $00 ; SFX1 1C\n#_1A8BCC: #_181C: db $1E ; SFX1 1D\n#_1A8BCD: #_181D: db $00 ; SFX1 1E\n#_1A8BCE: #_181E: db $20 ; SFX1 1F\n#_1A8BCF: #_181F: db $00 ; SFX1 20\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SFX2_Pointers", + "code": "SFX2_Pointers:\n#_1A8BD0: #_1820: dw SFX2_01\n#_1A8BD2: #_1822: dw SFX2_02\n#_1A8BD4: #_1824: dw SFX2_03\n#_1A8BD6: #_1826: dw SFX2_04\n#_1A8BD8: #_1828: dw SFX2_05\n#_1A8BDA: #_182A: dw SFX2_06\n#_1A8BDC: #_182C: dw SFX2_07\n#_1A8BDE: #_182E: dw SFX2_08\n#_1A8BE0: #_1830: dw SFX2_09\n#_1A8BE2: #_1832: dw SFX2_0A\n#_1A8BE4: #_1834: dw SFX2_0B\n#_1A8BE6: #_1836: dw SFX2_0C\n#_1A8BE8: #_1838: dw SFX2_0D\n#_1A8BEA: #_183A: dw SFX2_0E\n#_1A8BEC: #_183C: dw SFX2_0F\n#_1A8BEE: #_183E: dw SFX2_10\n#_1A8BF0: #_1840: dw SFX2_11\n#_1A8BF2: #_1842: dw SFX2_12\n#_1A8BF4: #_1844: dw SFX2_13\n#_1A8BF6: #_1846: dw SFX2_14\n#_1A8BF8: #_1848: dw SFX2_15\n#_1A8BFA: #_184A: dw SFX2_16\n#_1A8BFC: #_184C: dw SFX2_17\n#_1A8BFE: #_184E: dw SFX2_18\n#_1A8C00: #_1850: dw SFX2_19\n#_1A8C02: #_1852: dw SFX2_1A\n#_1A8C04: #_1854: dw SFX2_1B\n#_1A8C06: #_1856: dw SFX2_1C\n#_1A8C08: #_1858: dw SFX2_1D\n#_1A8C0A: #_185A: dw SFX2_1E\n#_1A8C0C: #_185C: dw SFX2_1F\n#_1A8C0E: #_185E: dw SFX2_20\n#_1A8C10: #_1860: dw SFX2_21\n#_1A8C12: #_1862: dw SFX2_22\n#_1A8C14: #_1864: dw SFX2_23\n#_1A8C16: #_1866: dw SFX2_24\n#_1A8C18: #_1868: dw SFX2_25\n#_1A8C1A: #_186A: dw SFX2_26\n#_1A8C1C: #_186C: dw SFX2_27\n#_1A8C1E: #_186E: dw SFX2_28\n#_1A8C20: #_1870: dw SFX2_29\n#_1A8C22: #_1872: dw SFX2_2A\n#_1A8C24: #_1874: dw SFX2_2B\n#_1A8C26: #_1876: dw SFX2_2C\n#_1A8C28: #_1878: dw SFX2_2D\n#_1A8C2A: #_187A: dw SFX2_2E\n#_1A8C2C: #_187C: dw SFX2_2F\n#_1A8C2E: #_187E: dw SFX2_30\n#_1A8C30: #_1880: dw SFX2_31\n#_1A8C32: #_1882: dw SFX2_32\n#_1A8C34: #_1884: dw SFX2_33\n#_1A8C36: #_1886: dw SFX2_34\n#_1A8C38: #_1888: dw SFX2_35\n#_1A8C3A: #_188A: dw SFX2_36\n#_1A8C3C: #_188C: dw SFX2_37\n#_1A8C3E: #_188E: dw SFX2_34\n#_1A8C40: #_1890: dw SFX2_39\n#_1A8C42: #_1892: dw SFX2_3A\n#_1A8C44: #_1894: dw SFX2_3B\n#_1A8C46: #_1896: dw SFX2_3C\n#_1A8C48: #_1898: dw SFX2_3D\n#_1A8C4A: #_189A: dw SFX2_3E\n#_1A8C4C: #_189C: dw SFX2_3F\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "SFX2_Accomp", + "code": "SFX2_Accomp:\n#_1A8C4E: #_189E: db $00 ; SFX2 01\n#_1A8C4F: #_189F: db $00 ; SFX2 02\n#_1A8C50: #_18A0: db $00 ; SFX2 03\n#_1A8C51: #_18A1: db $00 ; SFX2 04\n#_1A8C52: #_18A2: db $00 ; SFX2 05\n#_1A8C53: #_18A3: db $00 ; SFX2 06\n#_1A8C54: #_18A4: db $00 ; SFX2 07\n#_1A8C55: #_18A5: db $00 ; SFX2 08\n#_1A8C56: #_18A6: db $00 ; SFX2 09\n#_1A8C57: #_18A7: db $00 ; SFX2 0A\n#_1A8C58: #_18A8: db $00 ; SFX2 0B\n#_1A8C59: #_18A9: db $00 ; SFX2 0C\n#_1A8C5A: #_18AA: db $3F ; SFX2 0D\n#_1A8C5B: #_18AB: db $00 ; SFX2 0E\n#_1A8C5C: #_18AC: db $00 ; SFX2 0F\n#_1A8C5D: #_18AD: db $00 ; SFX2 10\n#_1A8C5E: #_18AE: db $00 ; SFX2 11\n#_1A8C5F: #_18AF: db $00 ; SFX2 12\n#_1A8C60: #_18B0: db $3E ; SFX2 13\n#_1A8C61: #_18B1: db $00 ; SFX2 14\n#_1A8C62: #_18B2: db $00 ; SFX2 15\n#_1A8C63: #_18B3: db $00 ; SFX2 16\n#_1A8C64: #_18B4: db $00 ; SFX2 17\n#_1A8C65: #_18B5: db $00 ; SFX2 18\n#_1A8C66: #_18B6: db $00 ; SFX2 19\n#_1A8C67: #_18B7: db $00 ; SFX2 1A\n#_1A8C68: #_18B8: db $00 ; SFX2 1B\n#_1A8C69: #_18B9: db $00 ; SFX2 1C\n#_1A8C6A: #_18BA: db $00 ; SFX2 1D\n#_1A8C6B: #_18BB: db $00 ; SFX2 1E\n#_1A8C6C: #_18BC: db $00 ; SFX2 1F\n#_1A8C6D: #_18BD: db $00 ; SFX2 20\n#_1A8C6E: #_18BE: db $00 ; SFX2 21\n#_1A8C6F: #_18BF: db $00 ; SFX2 22\n#_1A8C70: #_18C0: db $00 ; SFX2 23\n#_1A8C71: #_18C1: db $3D ; SFX2 24\n#_1A8C72: #_18C2: db $00 ; SFX2 25\n#_1A8C73: #_18C3: db $00 ; SFX2 26\n#_1A8C74: #_18C4: db $00 ; SFX2 27\n#_1A8C75: #_18C5: db $00 ; SFX2 28\n#_1A8C76: #_18C6: db $3B ; SFX2 29\n#_1A8C77: #_18C7: db $00 ; SFX2 2A\n#_1A8C78: #_18C8: db $00 ; SFX2 2B\n#_1A8C79: #_18C9: db $3A ; SFX2 2C\n#_1A8C7A: #_18CA: db $00 ; SFX2 2D\n#_1A8C7B: #_18CB: db $39 ; SFX2 2E\n#_1A8C7C: #_18CC: db $38 ; SFX2 2F\n#_1A8C7D: #_18CD: db $00 ; SFX2 30\n#_1A8C7E: #_18CE: db $00 ; SFX2 31\n#_1A8C7F: #_18CF: db $00 ; SFX2 32\n#_1A8C80: #_18D0: db $00 ; SFX2 33\n#_1A8C81: #_18D1: db $33 ; SFX2 34\n#_1A8C82: #_18D2: db $36 ; SFX2 35\n#_1A8C83: #_18D3: db $00 ; SFX2 36\n#_1A8C84: #_18D4: db $00 ; SFX2 37\n#_1A8C85: #_18D5: db $00 ; SFX2 38\n#_1A8C86: #_18D6: db $00 ; SFX2 39\n#_1A8C87: #_18D7: db $00 ; SFX2 3A\n#_1A8C88: #_18D8: db $00 ; SFX2 3B\n#_1A8C89: #_18D9: db $00 ; SFX2 3C\n#_1A8C8A: #_18DA: db $00 ; SFX2 3D\n#_1A8C8B: #_18DB: db $00 ; SFX2 3E\n#_1A8C8C: #_18DC: db $00 ; SFX2 3F\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "SFX2_Echo", + "code": "SFX2_Echo:\n#_1A8C8D: #_18DD: db $00 ; SFX2 01\n#_1A8C8E: #_18DE: db $00 ; SFX2 02\n#_1A8C8F: #_18DF: db $00 ; SFX2 03\n#_1A8C90: #_18E0: db $00 ; SFX2 04\n#_1A8C91: #_18E1: db $00 ; SFX2 05\n#_1A8C92: #_18E2: db $00 ; SFX2 06\n#_1A8C93: #_18E3: db $00 ; SFX2 07\n#_1A8C94: #_18E4: db $00 ; SFX2 08\n#_1A8C95: #_18E5: db $00 ; SFX2 09\n#_1A8C96: #_18E6: db $00 ; SFX2 0A\n#_1A8C97: #_18E7: db $00 ; SFX2 0B\n#_1A8C98: #_18E8: db $01 ; SFX2 0C\n#_1A8C99: #_18E9: db $00 ; SFX2 0D\n#_1A8C9A: #_18EA: db $00 ; SFX2 0E\n#_1A8C9B: #_18EB: db $00 ; SFX2 0F\n#_1A8C9C: #_18EC: db $00 ; SFX2 10\n#_1A8C9D: #_18ED: db $00 ; SFX2 11\n#_1A8C9E: #_18EE: db $00 ; SFX2 12\n#_1A8C9F: #_18EF: db $00 ; SFX2 13\n#_1A8CA0: #_18F0: db $00 ; SFX2 14\n#_1A8CA1: #_18F1: db $00 ; SFX2 15\n#_1A8CA2: #_18F2: db $00 ; SFX2 16\n#_1A8CA3: #_18F3: db $00 ; SFX2 17\n#_1A8CA4: #_18F4: db $00 ; SFX2 18\n#_1A8CA5: #_18F5: db $00 ; SFX2 19\n#_1A8CA6: #_18F6: db $00 ; SFX2 1A\n#_1A8CA7: #_18F7: db $00 ; SFX2 1B\n#_1A8CA8: #_18F8: db $00 ; SFX2 1C\n#_1A8CA9: #_18F9: db $00 ; SFX2 1D\n#_1A8CAA: #_18FA: db $00 ; SFX2 1E\n#_1A8CAB: #_18FB: db $00 ; SFX2 1F\n#_1A8CAC: #_18FC: db $00 ; SFX2 20\n#_1A8CAD: #_18FD: db $00 ; SFX2 21\n#_1A8CAE: #_18FE: db $00 ; SFX2 22\n#_1A8CAF: #_18FF: db $00 ; SFX2 23\n#_1A8CB0: #_1900: db $00 ; SFX2 24\n#_1A8CB1: #_1901: db $00 ; SFX2 25\n#_1A8CB2: #_1902: db $00 ; SFX2 26\n#_1A8CB3: #_1903: db $00 ; SFX2 27\n#_1A8CB4: #_1904: db $00 ; SFX2 28\n#_1A8CB5: #_1905: db $3B ; SFX2 29\n#_1A8CB6: #_1906: db $01 ; SFX2 2A\n#_1A8CB7: #_1907: db $01 ; SFX2 2B\n#_1A8CB8: #_1908: db $00 ; SFX2 2C\n#_1A8CB9: #_1909: db $01 ; SFX2 2D\n#_1A8CBA: #_190A: db $01 ; SFX2 2E\n#_1A8CBB: #_190B: db $01 ; SFX2 2F\n#_1A8CBC: #_190C: db $00 ; SFX2 30\n#_1A8CBD: #_190D: db $00 ; SFX2 31\n#_1A8CBE: #_190E: db $00 ; SFX2 32\n#_1A8CBF: #_190F: db $00 ; SFX2 33\n#_1A8CC0: #_1910: db $00 ; SFX2 34\n#_1A8CC1: #_1911: db $01 ; SFX2 35\n#_1A8CC2: #_1912: db $01 ; SFX2 36\n#_1A8CC3: #_1913: db $00 ; SFX2 37\n#_1A8CC4: #_1914: db $00 ; SFX2 38\n#_1A8CC5: #_1915: db $00 ; SFX2 39\n#_1A8CC6: #_1916: db $00 ; SFX2 3A\n#_1A8CC7: #_1917: db $00 ; SFX2 3B\n#_1A8CC8: #_1918: db $01 ; SFX2 3C\n#_1A8CC9: #_1919: db $00 ; SFX2 3D\n#_1A8CCA: #_191A: db $3C ; SFX2 3E\n#_1A8CCB: #_191B: db $00 ; SFX2 3F\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SFX3_Pointers", + "code": "SFX3_Pointers:\n#_1A8CCC: #_191C: dw SFX3_01\n#_1A8CCE: #_191E: dw SFX3_02\n#_1A8CD0: #_1920: dw SFX3_03\n#_1A8CD2: #_1922: dw SFX3_04\n#_1A8CD4: #_1924: dw SFX2_07\n#_1A8CD6: #_1926: dw SFX3_06\n#_1A8CD8: #_1928: dw SFX3_07\n#_1A8CDA: #_192A: dw SFX3_08\n#_1A8CDC: #_192C: dw SFX3_09\n#_1A8CDE: #_192E: dw SFX3_0A\n#_1A8CE0: #_1930: dw SFX3_0B\n#_1A8CE2: #_1932: dw SFX3_0C\n#_1A8CE4: #_1934: dw SFX3_0D\n#_1A8CE6: #_1936: dw SFX3_0E\n#_1A8CE8: #_1938: dw SFX3_0F\n#_1A8CEA: #_193A: dw SFX3_10\n#_1A8CEC: #_193C: dw SFX3_11\n#_1A8CEE: #_193E: dw SFX3_12\n#_1A8CF0: #_1940: dw SFX3_13\n#_1A8CF2: #_1942: dw SFX3_14\n#_1A8CF4: #_1944: dw SFX3_15\n#_1A8CF6: #_1946: dw SFX3_16\n#_1A8CF8: #_1948: dw SFX3_17\n#_1A8CFA: #_194A: dw SFX3_18\n#_1A8CFC: #_194C: dw SFX3_19\n#_1A8CFE: #_194E: dw SFX3_1A\n#_1A8D00: #_1950: dw SFX3_1B\n#_1A8D02: #_1952: dw SFX3_1C\n#_1A8D04: #_1954: dw SFX2_2D\n#_1A8D06: #_1956: dw SFX3_1E\n#_1A8D08: #_1958: dw SFX3_1F\n#_1A8D0A: #_195A: dw SFX3_20\n#_1A8D0C: #_195C: dw SFX3_21\n#_1A8D0E: #_195E: dw SFX3_22\n#_1A8D10: #_1960: dw SFX3_23\n#_1A8D12: #_1962: dw SFX3_24\n#_1A8D14: #_1964: dw SFX3_25\n#_1A8D16: #_1966: dw SFX3_26\n#_1A8D18: #_1968: dw SFX3_27\n#_1A8D1A: #_196A: dw SFX3_28\n#_1A8D1C: #_196C: dw SFX3_29\n#_1A8D1E: #_196E: dw SFX3_2A\n#_1A8D20: #_1970: dw SFX3_2B\n#_1A8D22: #_1972: dw SFX3_2C\n#_1A8D24: #_1974: dw SFX3_2D\n#_1A8D26: #_1976: dw SFX3_2E\n#_1A8D28: #_1978: dw SFX3_2F\n#_1A8D2A: #_197A: dw SFX3_30\n#_1A8D2C: #_197C: dw SFX3_31\n#_1A8D2E: #_197E: dw SFX3_32\n#_1A8D30: #_1980: dw SFX3_33\n#_1A8D32: #_1982: dw SFX3_34\n#_1A8D34: #_1984: dw SFX3_35\n#_1A8D36: #_1986: dw SFX3_36\n#_1A8D38: #_1988: dw SFX3_37\n#_1A8D3A: #_198A: dw SFX3_38\n#_1A8D3C: #_198C: dw SFX3_39\n#_1A8D3E: #_198E: dw SFX3_3A\n#_1A8D40: #_1990: dw SFX3_3B\n#_1A8D42: #_1992: dw SFX3_3C\n#_1A8D44: #_1994: dw SFX3_3D\n#_1A8D46: #_1996: dw SFX3_3E\n#_1A8D48: #_1998: dw SFX3_3F\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "SFX3_Accomp", + "code": "SFX3_Accomp:\n#_1A8D4A: #_199A: db $00 ; SFX3 01\n#_1A8D4B: #_199B: db $00 ; SFX3 02\n#_1A8D4C: #_199C: db $00 ; SFX3 03\n#_1A8D4D: #_199D: db $00 ; SFX3 04\n#_1A8D4E: #_199E: db $00 ; SFX3 05\n#_1A8D4F: #_199F: db $00 ; SFX3 06\n#_1A8D50: #_19A0: db $00 ; SFX3 07\n#_1A8D51: #_19A1: db $00 ; SFX3 08\n#_1A8D52: #_19A2: db $00 ; SFX3 09\n#_1A8D53: #_19A3: db $00 ; SFX3 0A\n#_1A8D54: #_19A4: db $00 ; SFX3 0B\n#_1A8D55: #_19A5: db $00 ; SFX3 0C\n#_1A8D56: #_19A6: db $00 ; SFX3 0D\n#_1A8D57: #_19A7: db $00 ; SFX3 0E\n#_1A8D58: #_19A8: db $3C ; SFX3 0F\n#_1A8D59: #_19A9: db $3B ; SFX3 10\n#_1A8D5A: #_19AA: db $00 ; SFX3 11\n#_1A8D5B: #_19AB: db $00 ; SFX3 12\n#_1A8D5C: #_19AC: db $00 ; SFX3 13\n#_1A8D5D: #_19AD: db $00 ; SFX3 14\n#_1A8D5E: #_19AE: db $00 ; SFX3 15\n#_1A8D5F: #_19AF: db $00 ; SFX3 16\n#_1A8D60: #_19B0: db $00 ; SFX3 17\n#_1A8D61: #_19B1: db $00 ; SFX3 18\n#_1A8D62: #_19B2: db $00 ; SFX3 19\n#_1A8D63: #_19B3: db $38 ; SFX3 1A\n#_1A8D64: #_19B4: db $3A ; SFX3 1B\n#_1A8D65: #_19B5: db $00 ; SFX3 1C\n#_1A8D66: #_19B6: db $00 ; SFX3 1D\n#_1A8D67: #_19B7: db $00 ; SFX3 1E\n#_1A8D68: #_19B8: db $00 ; SFX3 1F\n#_1A8D69: #_19B9: db $00 ; SFX3 20\n#_1A8D6A: #_19BA: db $00 ; SFX3 21\n#_1A8D6B: #_19BB: db $00 ; SFX3 22\n#_1A8D6C: #_19BC: db $39 ; SFX3 23\n#_1A8D6D: #_19BD: db $00 ; SFX3 24\n#_1A8D6E: #_19BE: db $00 ; SFX3 25\n#_1A8D6F: #_19BF: db $00 ; SFX3 26\n#_1A8D70: #_19C0: db $00 ; SFX3 27\n#_1A8D71: #_19C1: db $00 ; SFX3 28\n#_1A8D72: #_19C2: db $00 ; SFX3 29\n#_1A8D73: #_19C3: db $00 ; SFX3 2A\n#_1A8D74: #_19C4: db $00 ; SFX3 2B\n#_1A8D75: #_19C5: db $00 ; SFX3 2C\n#_1A8D76: #_19C6: db $37 ; SFX3 2D\n#_1A8D77: #_19C7: db $35 ; SFX3 2E\n#_1A8D78: #_19C8: db $33 ; SFX3 2F\n#_1A8D79: #_19C9: db $00 ; SFX3 30\n#_1A8D7A: #_19CA: db $00 ; SFX3 31\n#_1A8D7B: #_19CB: db $00 ; SFX3 32\n#_1A8D7C: #_19CC: db $00 ; SFX3 33\n#_1A8D7D: #_19CD: db $00 ; SFX3 34\n#_1A8D7E: #_19CE: db $34 ; SFX3 35\n#_1A8D7F: #_19CF: db $00 ; SFX3 36\n#_1A8D80: #_19D0: db $00 ; SFX3 37\n#_1A8D81: #_19D1: db $00 ; SFX3 38\n#_1A8D82: #_19D2: db $00 ; SFX3 39\n#_1A8D83: #_19D3: db $00 ; SFX3 3A\n#_1A8D84: #_19D4: db $00 ; SFX3 3B\n#_1A8D85: #_19D5: db $3D ; SFX3 3C\n#_1A8D86: #_19D6: db $3E ; SFX3 3D\n#_1A8D87: #_19D7: db $3F ; SFX3 3E\n#_1A8D88: #_19D8: db $00 ; SFX3 3F\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "SFX3_Echo", + "code": "SFX3_Echo:\n#_1A8D89: #_19D9: db $00 ; SFX3 01\n#_1A8D8A: #_19DA: db $00 ; SFX3 02\n#_1A8D8B: #_19DB: db $00 ; SFX3 03\n#_1A8D8C: #_19DC: db $00 ; SFX3 04\n#_1A8D8D: #_19DD: db $00 ; SFX3 05\n#_1A8D8E: #_19DE: db $00 ; SFX3 06\n#_1A8D8F: #_19DF: db $00 ; SFX3 07\n#_1A8D90: #_19E0: db $00 ; SFX3 08\n#_1A8D91: #_19E1: db $00 ; SFX3 09\n#_1A8D92: #_19E2: db $00 ; SFX3 0A\n#_1A8D93: #_19E3: db $00 ; SFX3 0B\n#_1A8D94: #_19E4: db $01 ; SFX3 0C\n#_1A8D95: #_19E5: db $01 ; SFX3 0D\n#_1A8D96: #_19E6: db $00 ; SFX3 0E\n#_1A8D97: #_19E7: db $3C ; SFX3 0F\n#_1A8D98: #_19E8: db $3B ; SFX3 10\n#_1A8D99: #_19E9: db $01 ; SFX3 11\n#_1A8D9A: #_19EA: db $01 ; SFX3 12\n#_1A8D9B: #_19EB: db $00 ; SFX3 13\n#_1A8D9C: #_19EC: db $00 ; SFX3 14\n#_1A8D9D: #_19ED: db $00 ; SFX3 15\n#_1A8D9E: #_19EE: db $00 ; SFX3 16\n#_1A8D9F: #_19EF: db $00 ; SFX3 17\n#_1A8DA0: #_19F0: db $00 ; SFX3 18\n#_1A8DA1: #_19F1: db $00 ; SFX3 19\n#_1A8DA2: #_19F2: db $00 ; SFX3 1A\n#_1A8DA3: #_19F3: db $3A ; SFX3 1B\n#_1A8DA4: #_19F4: db $00 ; SFX3 1C\n#_1A8DA5: #_19F5: db $01 ; SFX3 1D\n#_1A8DA6: #_19F6: db $00 ; SFX3 1E\n#_1A8DA7: #_19F7: db $01 ; SFX3 1F\n#_1A8DA8: #_19F8: db $01 ; SFX3 20\n#_1A8DA9: #_19F9: db $01 ; SFX3 21\n#_1A8DAA: #_19FA: db $01 ; SFX3 22\n#_1A8DAB: #_19FB: db $00 ; SFX3 23\n#_1A8DAC: #_19FC: db $01 ; SFX3 24\n#_1A8DAD: #_19FD: db $00 ; SFX3 25\n#_1A8DAE: #_19FE: db $00 ; SFX3 26\n#_1A8DAF: #_19FF: db $00 ; SFX3 27\n#_1A8DB0: #_1A00: db $00 ; SFX3 28\n#_1A8DB1: #_1A01: db $00 ; SFX3 29\n#_1A8DB2: #_1A02: db $00 ; SFX3 2A\n#_1A8DB3: #_1A03: db $00 ; SFX3 2B\n#_1A8DB4: #_1A04: db $00 ; SFX3 2C\n#_1A8DB5: #_1A05: db $01 ; SFX3 2D\n#_1A8DB6: #_1A06: db $01 ; SFX3 2E\n#_1A8DB7: #_1A07: db $01 ; SFX3 2F\n#_1A8DB8: #_1A08: db $00 ; SFX3 30\n#_1A8DB9: #_1A09: db $01 ; SFX3 31\n#_1A8DBA: #_1A0A: db $00 ; SFX3 32\n#_1A8DBB: #_1A0B: db $01 ; SFX3 33\n#_1A8DBC: #_1A0C: db $01 ; SFX3 34\n#_1A8DBD: #_1A0D: db $01 ; SFX3 35\n#_1A8DBE: #_1A0E: db $00 ; SFX3 36\n#_1A8DBF: #_1A0F: db $01 ; SFX3 37\n#_1A8DC0: #_1A10: db $00 ; SFX3 38\n#_1A8DC1: #_1A11: db $00 ; SFX3 39\n#_1A8DC2: #_1A12: db $00 ; SFX3 3A\n#_1A8DC3: #_1A13: db $00 ; SFX3 3B\n#_1A8DC4: #_1A14: db $3D ; SFX3 3C\n#_1A8DC5: #_1A15: db $3E ; SFX3 3D\n#_1A8DC6: #_1A16: db $3F ; SFX3 3E\n#_1A8DC7: #_1A17: db $01 ; SFX3 3F\n\n; =========================================================\n; Sound effects\n; =========================================================\n#_1A8DC8: #_1A18: SFX3_01: incbin \"bin/sfx/sfx3-01.sfx\" ; size: 0x001F\n#_1A8DE7: #_1A37: SFX2_3C: incbin \"bin/sfx/sfx2-3C.sfx\" ; size: 0x000C\n#_1A8DF3: #_1A43: SFX2_37: incbin \"bin/sfx/sfx2-37.sfx\" ; size: 0x0018\n#_1A8E0B: #_1A5B: UnusedSFX_1A5B: incbin \"bin/sfx/unused-1A5B.sfx\" ; size: 0x0007\n#_1A8E12: #_1A62: SFX3_1C: incbin \"bin/sfx/sfx3-1C.sfx\" ; size: 0x0016\n#_1A8E28: #_1A78: SFX3_32: incbin \"bin/sfx/sfx3-32.sfx\" ; size: 0x002F\n#_1A8E57: #_1AA7: SFX3_36: incbin \"bin/sfx/sfx3-36.sfx\" ; size: 0x0023\n#_1A8E7A: #_1ACA: SFX3_31: incbin \"bin/sfx/sfx3-31.sfx\" ; size: 0x0008\n#_1A8E82: #_1AD2: SFX1_13: incbin \"bin/sfx/sfx1-13.sfx\" ; size: 0x000F\n#_1A8E91: #_1AE1: SFX1_14: incbin \"bin/sfx/sfx1-14.sfx\" ; size: 0x000F\n#_1A8EA0: #_1AF0: SFX1_15: incbin \"bin/sfx/sfx1-15.sfx\" ; size: 0x000F\n#_1A8EAF: #_1AFF: SFX1_16: incbin \"bin/sfx/sfx1-16.sfx\" ; size: 0x000F\n#_1A8EBE: #_1B0E: SFX1_0D: incbin \"bin/sfx/sfx1-0D.sfx\" ; size: 0x000F\n#_1A8ECD: #_1B1D: SFX1_0E: incbin \"bin/sfx/sfx1-0E.sfx\" ; size: 0x000F\n#_1A8EDC: #_1B2C: SFX1_0F: incbin \"bin/sfx/sfx1-0F.sfx\" ; size: 0x0012\n#_1A8EEE: #_1B3E: SFX1_10: incbin \"bin/sfx/sfx1-10.sfx\" ; size: 0x0015\n#_1A8F03: #_1B53: SFX3_30: incbin \"bin/sfx/sfx3-30.sfx\" ; size: 0x000F\n#_1A8F12: #_1B62: SFX1_0C: incbin \"bin/sfx/sfx1-0C.sfx\" ; size: 0x0041\n#_1A8F53: #_1BA3: SFX1_0B: incbin \"bin/sfx/sfx1-0B.sfx\" ; size: 0x0040\n#_1A8F93: #_1BE3: SFX1_18: incbin \"bin/sfx/sfx1-18.sfx\" ; size: 0x0041\n#_1A8FD4: #_1C24: SFX1_17: incbin \"bin/sfx/sfx1-17.sfx\" ; size: 0x0040\n#_1A9014: #_1C64: SFX2_36: incbin \"bin/sfx/sfx2-36.sfx\" ; size: 0x0003\n#_1A9017: #_1C67: SFX2_35: incbin \"bin/sfx/sfx2-35.sfx\" ; size: 0x0027\n#_1A903E: #_1C8E: SFX1_09: incbin \"bin/sfx/sfx1-09.sfx\" ; size: 0x002E\n#_1A906C: #_1CBC: SFX1_0A: incbin \"bin/sfx/sfx1-0A.sfx\" ; size: 0x0020\n#_1A908C: #_1CDC: SFX2_33: incbin \"bin/sfx/sfx2-33.sfx\" ; size: 0x0040\n#_1A90CC: #_1D1C: UnusedSFX_1D1C: incbin \"bin/sfx/unused-1D1C.sfx\" ; size: 0x002B\n#_1A90F7: #_1D47: SFX2_32: incbin \"bin/sfx/sfx2-32.sfx\" ; size: 0x0016\n#_1A910D: #_1D5D: SFX3_2E: incbin \"bin/sfx/sfx3-2E.sfx\" ; size: 0x0009\n#_1A9116: #_1D66: SFX3_34: incbin \"bin/sfx/sfx3-34.sfx\" ; size: 0x000D\n#_1A9123: #_1D73: SFX3_35: incbin \"bin/sfx/sfx3-35.sfx\" ; size: 0x000D\n#_1A9130: #_1D80: SFX3_2F: incbin \"bin/sfx/sfx3-2F.sfx\" ; size: 0x0013\n#_1A9143: #_1D93: SFX3_33: incbin \"bin/sfx/sfx3-33.sfx\" ; size: 0x0016\n#_1A9159: #_1DA9: SFX3_2D: incbin \"bin/sfx/sfx3-2D.sfx\" ; size: 0x000B\n#_1A9164: #_1DB4: SFX3_37: incbin \"bin/sfx/sfx3-37.sfx\" ; size: 0x000C\n#_1A9170: #_1DC0: SFX3_2C: incbin \"bin/sfx/sfx3-2C.sfx\" ; size: 0x0033\n#_1A91A3: #_1DF3: SFX3_2B: incbin \"bin/sfx/sfx3-2B.sfx\" ; size: 0x001F\n#_1A91C2: #_1E12: SFX3_2A: incbin \"bin/sfx/sfx3-2A.sfx\" ; size: 0x000F\n#_1A91D1: #_1E21: SFX3_29: incbin \"bin/sfx/sfx3-29.sfx\" ; size: 0x001F\n#_1A91F0: #_1E40: SFX3_27: incbin \"bin/sfx/sfx3-27.sfx\" ; size: 0x003B\n#_1A922B: #_1E7B: SFX3_26: incbin \"bin/sfx/sfx3-26.sfx\" ; size: 0x000F\n#_1A923A: #_1E8A: SFX3_1A: incbin \"bin/sfx/sfx3-1A.sfx\" ; size: 0x0009\n#_1A9243: #_1E93: SFX3_38: incbin \"bin/sfx/sfx3-38.sfx\" ; size: 0x000A\n#_1A924D: #_1E9D: SFX3_25: incbin \"bin/sfx/sfx3-25.sfx\" ; size: 0x000F\n#_1A925C: #_1EAC: SFX1_11: incbin \"bin/sfx/sfx1-11.sfx\" ; size: 0x001C\n#_1A9278: #_1EC8: SFX1_12: incbin \"bin/sfx/sfx1-12.sfx\" ; size: 0x001A\n#_1A9292: #_1EE2: UnusedSFX_1EE2: incbin \"bin/sfx/unused-1EE2.sfx\" ; size: 0x000F\n#_1A92A1: #_1EF1: SFX2_30: incbin \"bin/sfx/sfx2-30.sfx\" ; size: 0x0022\n#_1A92C3: #_1F13: UnusedSFX_1F13: incbin \"bin/sfx/unused-1F13.sfx\" ; size: 0x0034\n#_1A92F7: #_1F47: SFX2_2F: incbin \"bin/sfx/sfx2-2F.sfx\" ; size: 0x0028\n#_1A931F: #_1F6F: SFX2_34: incbin \"bin/sfx/sfx2-34.sfx\" ; size: 0x002D\n#_1A934C: #_1F9C: SFX2_39: incbin \"bin/sfx/sfx2-39.sfx\" ; size: 0x002E\n#_1A937A: #_1FCA: SFX2_2E: incbin \"bin/sfx/sfx2-2E.sfx\" ; size: 0x000F\n#_1A9389: #_1FD9: SFX2_2C: incbin \"bin/sfx/sfx2-2C.sfx\" ; size: 0x000E\n#_1A9397: #_1FE7: SFX2_3A: incbin \"bin/sfx/sfx2-3A.sfx\" ; size: 0x000B\n#_1A93A2: #_1FF2: SFX2_2B: incbin \"bin/sfx/sfx2-2B.sfx\" ; size: 0x000F\n#_1A93B1: #_2001: SFX3_23: incbin \"bin/sfx/sfx3-23.sfx\" ; size: 0x0016\n#_1A93C7: #_2017: SFX3_39: incbin \"bin/sfx/sfx3-39.sfx\" ; size: 0x001C\n#_1A93E3: #_2033: SFX2_2A: incbin \"bin/sfx/sfx2-2A.sfx\" ; size: 0x0010\n#_1A93F3: #_2043: SFX3_24: incbin \"bin/sfx/sfx3-24.sfx\" ; size: 0x0008\n#_1A93FB: #_204B: SFX3_1F: incbin \"bin/sfx/sfx3-1F.sfx\" ; size: 0x0046\n#_1A9441: #_2091: SFX3_1E: incbin \"bin/sfx/sfx3-1E.sfx\" ; size: 0x0015\n#_1A9456: #_20A6: SFX2_2D: incbin \"bin/sfx/sfx2-2D.sfx\" ; size: 0x0010\n#_1A9466: #_20B6: SFX3_1B: incbin \"bin/sfx/sfx3-1B.sfx\" ; size: 0x000A\n#_1A9470: #_20C0: SFX3_3A: incbin \"bin/sfx/sfx3-3A.sfx\" ; size: 0x000E\n#_1A947E: #_20CE: SFX2_31: incbin \"bin/sfx/sfx2-31.sfx\" ; size: 0x000F\n#_1A948D: #_20DD: SFX3_18: incbin \"bin/sfx/sfx3-18.sfx\" ; size: 0x002A\n#_1A94B7: #_2107: SFX2_22: incbin \"bin/sfx/sfx2-22.sfx\" ; size: 0x001C\n#_1A94D3: #_2123: SFX3_16: incbin \"bin/sfx/sfx3-16.sfx\" ; size: 0x000C\n#_1A94DF: #_212F: SFX3_15: incbin \"bin/sfx/sfx3-15.sfx\" ; size: 0x000C\n#_1A94EB: #_213B: SFX3_13: incbin \"bin/sfx/sfx3-13.sfx\" ; size: 0x0014\n#_1A94FF: #_214F: SFX3_11: incbin \"bin/sfx/sfx3-11.sfx\" ; size: 0x000F\n#_1A950E: #_215E: SFX3_12: incbin \"bin/sfx/sfx3-12.sfx\" ; size: 0x000F\n#_1A951D: #_216D: SFX3_10: incbin \"bin/sfx/sfx3-10.sfx\" ; size: 0x0009\n#_1A9526: #_2176: SFX3_3B: incbin \"bin/sfx/sfx3-3B.sfx\" ; size: 0x000C\n#_1A9532: #_2182: SFX3_0E: incbin \"bin/sfx/sfx3-0E.sfx\" ; size: 0x000C\n#_1A953E: #_218E: SFX3_0C: incbin \"bin/sfx/sfx3-0C.sfx\" ; size: 0x000A\n#_1A9548: #_2198: SFX3_0B: incbin \"bin/sfx/sfx3-0B.sfx\" ; size: 0x0011\n#_1A9559: #_21A9: SFX3_0A: incbin \"bin/sfx/sfx3-0A.sfx\" ; size: 0x000C\n#_1A9565: #_21B5: SFX3_0D: incbin \"bin/sfx/sfx3-0D.sfx\" ; size: 0x000C\n#_1A9571: #_21C1: SFX3_09: incbin \"bin/sfx/sfx3-09.sfx\" ; size: 0x0025\n#_1A9596: #_21E6: SFX3_08: incbin \"bin/sfx/sfx3-08.sfx\" ; size: 0x000F\n#_1A95A5: #_21F5: SFX3_06: incbin \"bin/sfx/sfx3-06.sfx\" ; size: 0x0019\n#_1A95BE: #_220E: SFX3_04: incbin \"bin/sfx/sfx3-04.sfx\" ; size: 0x002F\n#_1A95ED: #_223D: SFX3_07: incbin \"bin/sfx/sfx3-07.sfx\" ; size: 0x000D\n#_1A95FA: #_224A: SFX3_03: incbin \"bin/sfx/sfx3-03.sfx\" ; size: 0x0008\n#_1A9602: #_2252: SFX2_27: incbin \"bin/sfx/sfx2-27.sfx\" ; size: 0x0035\n#_1A9637: #_2287: SFX2_28: incbin \"bin/sfx/sfx2-28.sfx\" ; size: 0x000F\n#_1A9646: #_2296: SFX2_25: incbin \"bin/sfx/sfx2-25.sfx\" ; size: 0x000F\n#_1A9655: #_22A5: SFX2_24: incbin \"bin/sfx/sfx2-24.sfx\" ; size: 0x0006\n#_1A965B: #_22AB: SFX2_3D: incbin \"bin/sfx/sfx2-3D.sfx\" ; size: 0x0006\n#_1A9661: #_22B1: SFX2_23: incbin \"bin/sfx/sfx2-23.sfx\" ; size: 0x000A\n#_1A966B: #_22BB: SFX2_1D: incbin \"bin/sfx/sfx2-1D.sfx\" ; size: 0x0014\n#_1A967F: #_22CF: SFX2_21: incbin \"bin/sfx/sfx2-21.sfx\" ; size: 0x000B\n#_1A968A: #_22DA: SFX2_20: incbin \"bin/sfx/sfx2-20.sfx\" ; size: 0x000F\n#_1A9699: #_22E9: SFX2_1F: incbin \"bin/sfx/sfx2-1F.sfx\" ; size: 0x0018\n#_1A96B1: #_2301: SFX2_1C: incbin \"bin/sfx/sfx2-1C.sfx\" ; size: 0x0006\n#_1A96B7: #_2307: SFX2_1B: incbin \"bin/sfx/sfx2-1B.sfx\" ; size: 0x000F\n#_1A96C6: #_2316: SFX2_1A: incbin \"bin/sfx/sfx2-1A.sfx\" ; size: 0x0016\n#_1A96DC: #_232C: SFX2_16: incbin \"bin/sfx/sfx2-16.sfx\" ; size: 0x0018\n#_1A96F4: #_2344: SFX2_17: incbin \"bin/sfx/sfx2-17.sfx\" ; size: 0x0012\n#_1A9706: #_2356: SFX2_18: incbin \"bin/sfx/sfx2-18.sfx\" ; size: 0x0018\n#_1A971E: #_236E: SFX2_19: incbin \"bin/sfx/sfx2-19.sfx\" ; size: 0x0012\n#_1A9730: #_2380: SFX2_14: incbin \"bin/sfx/sfx2-14.sfx\" ; size: 0x0010\n#_1A9740: #_2390: SFX2_15: incbin \"bin/sfx/sfx2-15.sfx\" ; size: 0x0010\n#_1A9750: #_23A0: SFX2_13: incbin \"bin/sfx/sfx2-13.sfx\" ; size: 0x0015\n#_1A9765: #_23B5: SFX2_3E: incbin \"bin/sfx/sfx2-3E.sfx\" ; size: 0x0018\n#_1A977D: #_23CD: SFX2_12: incbin \"bin/sfx/sfx2-12.sfx\" ; size: 0x0023\n#_1A97A0: #_23F0: SFX2_11: incbin \"bin/sfx/sfx2-11.sfx\" ; size: 0x000A\n#_1A97AA: #_23FA: SFX2_10: incbin \"bin/sfx/sfx2-10.sfx\" ; size: 0x000A\n#_1A97B4: #_2404: SFX2_0E: incbin \"bin/sfx/sfx2-0E.sfx\" ; size: 0x0010\n#_1A97C4: #_2414: SFX2_0D: incbin \"bin/sfx/sfx2-0D.sfx\" ; size: 0x0021\n#_1A97E5: #_2435: SFX2_3F: incbin \"bin/sfx/sfx2-3F.sfx\" ; size: 0x000A\n#_1A97EF: #_243F: SFX2_29: incbin \"bin/sfx/sfx2-29.sfx\" ; size: 0x0023\n#_1A9812: #_2462: SFX2_3B: incbin \"bin/sfx/sfx2-3B.sfx\" ; size: 0x000A\n#_1A981C: #_246C: SFX3_14: incbin \"bin/sfx/sfx3-14.sfx\" ; size: 0x000C\n#_1A9828: #_2478: SFX2_0B: incbin \"bin/sfx/sfx2-0B.sfx\" ; size: 0x0008\n#_1A9830: #_2480: SFX3_3F: incbin \"bin/sfx/sfx3-3F.sfx\" ; size: 0x000A\n#_1A983A: #_248A: SFX3_3C: incbin \"bin/sfx/sfx3-3C.sfx\" ; size: 0x000A\n#_1A9844: #_2494: SFX3_3D: incbin \"bin/sfx/sfx3-3D.sfx\" ; size: 0x000A\n#_1A984E: #_249E: SFX3_3E: incbin \"bin/sfx/sfx3-3E.sfx\" ; size: 0x001B\n#_1A9869: #_24B9: SFX3_0F: incbin \"bin/sfx/sfx3-0F.sfx\" ; size: 0x000A\n#_1A9873: #_24C3: SFX2_0F: incbin \"bin/sfx/sfx2-0F.sfx\" ; size: 0x0047\n#_1A98BA: #_250A: SFX3_19: incbin \"bin/sfx/sfx3-19.sfx\" ; size: 0x0023\n#_1A98DD: #_252D: UnusedSFX_252D: incbin \"bin/sfx/unused-252D.sfx\" ; size: 0x0006\n#_1A98E3: #_2533: UnusedSFX_2533: incbin \"bin/sfx/unused-2533.sfx\" ; size: 0x001B\n#_1A98FE: #_254E: SFX3_02: incbin \"bin/sfx/sfx3-02.sfx\" ; size: 0x0029\n#_1A9927: #_2577: SFX2_1E: incbin \"bin/sfx/sfx2-1E.sfx\" ; size: 0x002F\n#_1A9956: #_25A6: SFX3_17: incbin \"bin/sfx/sfx3-17.sfx\" ; size: 0x0007\n#_1A995D: #_25AD: SFX2_09: incbin \"bin/sfx/sfx2-09.sfx\" ; size: 0x000A\n#_1A9967: #_25B7: SFX2_07: incbin \"bin/sfx/sfx2-07.sfx\" ; size: 0x0010\n#_1A9977: #_25C7: SFX2_0A: incbin \"bin/sfx/sfx2-0A.sfx\" ; size: 0x0010\n#_1A9987: #_25D7: SFX2_06: incbin \"bin/sfx/sfx2-06.sfx\" ; size: 0x0006\n#_1A998D: #_25DD: SFX2_05: incbin \"bin/sfx/sfx2-05.sfx\" ; size: 0x0006\n#_1A9993: #_25E3: SFX2_08: incbin \"bin/sfx/sfx2-08.sfx\" ; size: 0x0031\n#_1A99C4: #_2614: SFX2_01: incbin \"bin/sfx/sfx2-01.sfx\" ; size: 0x0011\n#_1A99D5: #_2625: SFX2_02: incbin \"bin/sfx/sfx2-02.sfx\" ; size: 0x000F\n#_1A99E4: #_2634: SFX2_03: incbin \"bin/sfx/sfx2-03.sfx\" ; size: 0x000F\n#_1A99F3: #_2643: SFX2_04: incbin \"bin/sfx/sfx2-04.sfx\" ; size: 0x000F\n#_1A9A02: #_2652: SFX1_01: incbin \"bin/sfx/sfx1-01.sfx\" ; size: 0x0005\n#_1A9A07: #_2657: UnusedSFX_2657: incbin \"bin/sfx/unused-2657.sfx\" ; size: 0x000B\n#_1A9A12: #_2662: SFX1_02: incbin \"bin/sfx/sfx1-02.sfx\" ; size: 0x0015\n#_1A9A27: #_2677: SFX1_03: incbin \"bin/sfx/sfx1-03.sfx\" ; size: 0x0005\n#_1A9A2C: #_267C: UnusedSFX_267C: incbin \"bin/sfx/unused-267C.sfx\" ; size: 0x000B\n#_1A9A37: #_2687: SFX1_04: incbin \"bin/sfx/sfx1-04.sfx\" ; size: 0x0015\n#_1A9A4C: #_269C: SFX2_0C: incbin \"bin/sfx/sfx2-0C.sfx\" ; size: 0x0006\n#_1A9A52: #_26A2: UnusedSFX_26A2: incbin \"bin/sfx/unused-26A2.sfx\" ; size: 0x002D\n#_1A9A7F: #_26CF: SFX3_22: incbin \"bin/sfx/sfx3-22.sfx\" ; size: 0x0028\n#_1A9AA7: #_26F7: SFX3_28: incbin \"bin/sfx/sfx3-28.sfx\" ; size: 0x003F\n#_1A9AE6: #_2736: SFX1_08: incbin \"bin/sfx/sfx1-08.sfx\" ; size: 0x0003\n#_1A9AE9: #_2739: SFX1_07: incbin \"bin/sfx/sfx1-07.sfx\" ; size: 0x0033\n#_1A9B1C: #_276C: SFX3_20: incbin \"bin/sfx/sfx3-20.sfx\" ; size: 0x0012\n#_1A9B2E: #_277E: UnusedSFX_277E: incbin \"bin/sfx/unused-277E.sfx\" ; size: 0x001F\n#_1A9B4D: #_279D: UnusedSFX_279D: incbin \"bin/sfx/unused-279D.sfx\" ; size: 0x002C\n#_1A9B79: #_27C9: UnusedSFX_27C9: incbin \"bin/sfx/unused-27C9.sfx\" ; size: 0x0019\n#_1A9B92: #_27E2: SFX3_21: incbin \"bin/sfx/sfx3-21.sfx\" ; size: 0x0014\n#_1A9BA6: #_27F6: UnusedSFX_27F6: incbin \"bin/sfx/unused-27F6.sfx\" ; size: 0x0011\n#_1A9BB7: #_2807: UnusedSFX_2807: incbin \"bin/sfx/unused-2807.sfx\" ; size: 0x0011\n#_1A9BC8: #_2818: UnusedSFX_2818: incbin \"bin/sfx/unused-2818.sfx\" ; size: 0x0011\n#_1A9BD9: #_2829: UnusedSFX_2829: incbin \"bin/sfx/unused-2829.sfx\" ; size: 0x0008\n#_1A9BE1: #_2831: UnusedSFX_2831: incbin \"bin/sfx/unused-2831.sfx\" ; size: 0x0013\n#_1A9BF4: #_2844: SFX2_26: incbin \"bin/sfx/sfx2-26.sfx\" ; size: 0x0006\n#_1A9BFA: #_284A: SFX_284A: incbin \"bin/sfx/sfx-284A.sfx\" ; size: 0x0005\n#_1A9BFF: #_284F: SFX1_05: incbin \"bin/sfx/sfx1-05.sfx\" ; size: 0x0001\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SFX_Instruments", + "code": "SFX_Instruments:\n#_1A9C00: dw $00E1, INSTRUMENT_DATA_SFX ; Transfer size, transfer address\n\nbase INSTRUMENT_DATA_SFX\n; VOLL VOLR Pitch SRCN ADSR GAIN Mult\n#_1A9C04: #_3E00: db $70, $70 : dw $1000 : db $00, $F6, $6A, $B8, $03 ; 00\n#_1A9C0D: #_3E09: db $70, $70 : dw $1000 : db $01, $8E, $E0, $B8, $02 ; 01\n#_1A9C16: #_3E12: db $70, $70 : dw $1000 : db $14, $FE, $6A, $B8, $02 ; 02\n#_1A9C1F: #_3E1B: db $70, $70 : dw $1000 : db $03, $FE, $F8, $B8, $0D ; 03\n#_1A9C28: #_3E24: db $70, $70 : dw $1000 : db $04, $FE, $6A, $7F, $03 ; 04\n#_1A9C31: #_3E2D: db $70, $70 : dw $1000 : db $02, $FE, $6A, $7F, $03 ; 05\n#_1A9C3A: #_3E36: db $70, $70 : dw $1000 : db $05, $FE, $6A, $70, $03 ; 06\n#_1A9C43: #_3E3F: db $70, $70 : dw $1000 : db $06, $FE, $6A, $70, $03 ; 07\n#_1A9C4C: #_3E48: db $70, $70 : dw $1000 : db $08, $FA, $6A, $70, $03 ; 08\n#_1A9C55: #_3E51: db $70, $70 : dw $1000 : db $06, $FE, $6A, $70, $01 ; 09\n#_1A9C5E: #_3E5A: db $70, $70 : dw $1000 : db $07, $FE, $6A, $70, $05 ; 0A\n#_1A9C67: #_3E63: db $70, $70 : dw $1000 : db $0B, $FE, $6A, $B8, $03 ; 0B\n#_1A9C70: #_3E6C: db $70, $70 : dw $1000 : db $0C, $FE, $E0, $B8, $02 ; 0C\n#_1A9C79: #_3E75: db $70, $70 : dw $1000 : db $0D, $F9, $6E, $B8, $03 ; 0D\n#_1A9C82: #_3E7E: db $70, $70 : dw $1000 : db $0E, $FE, $F5, $B8, $07 ; 0E\n#_1A9C8B: #_3E87: db $70, $70 : dw $1000 : db $0F, $FE, $F5, $B8, $06 ; 0F\n#_1A9C94: #_3E90: db $70, $70 : dw $1000 : db $01, $FE, $FC, $B8, $03 ; 10\n#_1A9C9D: #_3E99: db $70, $70 : dw $1000 : db $10, $8E, $E0, $B8, $03 ; 11\n#_1A9CA6: #_3EA2: db $70, $70 : dw $1000 : db $08, $8E, $E0, $B8, $02 ; 12\n#_1A9CAF: #_3EAB: db $70, $70 : dw $1000 : db $14, $8E, $E0, $B8, $02 ; 13\n#_1A9CB8: #_3EB4: db $70, $70 : dw $1000 : db $0A, $88, $E0, $B8, $02 ; 14\n#_1A9CC1: #_3EBD: db $70, $70 : dw $1000 : db $17, $8E, $E0, $B8, $02 ; 15\n#_1A9CCA: #_3EC6: db $70, $70 : dw $1000 : db $15, $FF, $E0, $B8, $04 ; 16\n#_1A9CD3: #_3ECF: db $70, $70 : dw $1000 : db $03, $DF, $11, $B8, $0F ; 17\n#_1A9CDC: #_3ED8: db $70, $70 : dw $1000 : db $01, $88, $E0, $B8, $01 ; 18\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "Fairy_Theme", + "code": "Fairy_Theme:\n#_1A9CE5: dw $020C, $2880 ; Transfer size, transfer address\n\nbase $2880\n", + "file": "sound.asm" + }, + { + "name": "Song0B_FairyTheme", + "code": "Song0B_FairyTheme:\n#_1A9CE9: #_2880: incbin \"bin/music/song0B.bin\" ; size: 0x020C\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Overworld_Main", + "code": "SongBank_Overworld_Main:\n#_1A9EF5: dw $2DAE, SONG_POINTERS ; Transfer size, transfer address\n\nbase SONG_POINTERS\n#_1A9EF9: #_D000o: dw Song01_TriforceIntro\n#_1A9EFB: #_D002o: dw Song02_LightWorldOverture\n#_1A9EFD: #_D004o: dw Song03_Rain\n#_1A9EFF: #_D006o: dw Song04_BunnyTheme\n#_1A9F01: #_D008o: dw Song05_LostWoods\n#_1A9F03: #_D00Ao: dw Song06_LegendsTheme_Attract\n#_1A9F05: #_D00Co: dw Song07_KakarikoVillage\n#_1A9F07: #_D00Eo: dw Song08_MirrorWarp\n#_1A9F09: #_D010o: dw Song09_DarkWorld\n#_1A9F0B: #_D012o: dw Song0A_PullingTheMasterSword\n#_1A9F0D: #_D014o: dw Song0B_FairyTheme\n#_1A9F0F: #_D016o: dw Song0C_Fugitive\n#_1A9F11: #_D018o: dw Song0D_SkullWoodsMarch\n#_1A9F13: #_D01Ao: dw Song0E_MinigameTheme\n#_1A9F15: #_D01Co: dw Song0F_IntroFanfare\n#_1A9F17: #_D01Eo: dw $0000\n#_1A9F19: #_D020o: dw $0000\n#_1A9F1B: #_D022o: dw $0000\n#_1A9F1D: #_D024o: dw $0000\n#_1A9F1F: #_D026o: dw $0000\n#_1A9F21: #_D028o: dw $0000\n#_1A9F23: #_D02Ao: dw $0000\n#_1A9F25: #_D02Co: dw $0000\n#_1A9F27: #_D02Eo: dw $0000\n#_1A9F29: #_D030o: dw $0000\n#_1A9F2B: #_D032o: dw $0000\n#_1A9F2D: #_D034o: dw $0000\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "Song01_TriforceIntro", + "code": "Song01_TriforceIntro:\n#_1A9F2F: #_D036o: incbin \"bin/music/song01.bin\" ; size: 0x00C9\n", + "file": "sound.asm" + }, + { + "name": "Song02_LightWorldOverture", + "code": "Song02_LightWorldOverture:\n#_1A9FF8: #_D0FFo: incbin \"bin/music/song02.bin\" ; size: 0x076B\n", + "file": "sound.asm" + }, + { + "name": "Song03_Rain", + "code": "Song03_Rain:\n#_1AA763: #_D86Ao: incbin \"bin/music/song03.bin\" ; size: 0x043D\n", + "file": "sound.asm" + }, + { + "name": "Song04_BunnyTheme", + "code": "Song04_BunnyTheme:\n#_1AABA0: #_DCA7o: incbin \"bin/music/song04.bin\" ; size: 0x023E\n", + "file": "sound.asm" + }, + { + "name": "Song05_LostWoods", + "code": "Song05_LostWoods:\n#_1AADDE: #_DEE5o: incbin \"bin/music/song05.bin\" ; size: 0x0485\n", + "file": "sound.asm" + }, + { + "name": "Song06_LegendsTheme_Attract", + "code": "Song06_LegendsTheme_Attract:\n#_1AB263: #_E36Ao: incbin \"bin/music/song06.bin\" ; size: 0x0572\n", + "file": "sound.asm" + }, + { + "name": "Song07_KakarikoVillage", + "code": "Song07_KakarikoVillage:\n#_1AB7D5: #_E8DCo: incbin \"bin/music/song07.bin\" ; size: 0x0535\n", + "file": "sound.asm" + }, + { + "name": "Song08_MirrorWarp", + "code": "Song08_MirrorWarp:\n#_1ABD0A: #_EE11o: incbin \"bin/music/song08.bin\" ; size: 0x015C\n", + "file": "sound.asm" + }, + { + "name": "Song09_DarkWorld", + "code": "Song09_DarkWorld:\n#_1ABE66: #_EF6Do: incbin \"bin/music/song09.bin\" ; size: 0x08A6\n", + "file": "sound.asm" + }, + { + "name": "Song0A_PullingTheMasterSword", + "code": "Song0A_PullingTheMasterSword:\n#_1AC70C: #_F813o: incbin \"bin/music/song0A.bin\" ; size: 0x00E3\n", + "file": "sound.asm" + }, + { + "name": "Song0C_Fugitive", + "code": "Song0C_Fugitive:\n#_1AC7EF: #_F8F6o: incbin \"bin/music/song0C.bin\" ; size: 0x0204\n", + "file": "sound.asm" + }, + { + "name": "Song0F_IntroFanfare", + "code": "Song0F_IntroFanfare:\n#_1AC9F3: #_FAFAo: incbin \"bin/music/song0F.bin\" ; size: 0x02B4\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Overworld_Auxiliary", + "code": "SongBank_Overworld_Auxiliary:\n#_1ACCA7: dw $0688, SONG_POINTERS_AUX ; Transfer size, transfer address\n\nbase SONG_POINTERS_AUX\n", + "file": "sound.asm" + }, + { + "name": "Song0D_SkullWoodsMarch", + "code": "Song0D_SkullWoodsMarch:\n#_1ACCAB: #_2B00o: incbin \"bin/music/song0D.bin\" ; size: 0x04A6\n", + "file": "sound.asm" + }, + { + "name": "Song0E_MinigameTheme", + "code": "Song0E_MinigameTheme:\n#_1AD151: #_2FA6o: incbin \"bin/music/song0E.bin\" ; size: 0x01E2\n\nbase off\n\n; =========================================================\n\n#_1AD333: dw $0000, SPC_ENGINE ; end of transfer\n\n; =========================================================\n; FREE ROM: 0x49\n; including garbage\n; =========================================================", + "file": "sound.asm" + }, + { + "name": "GARBAGE_1AD337", + "code": "GARBAGE_1AD337:\n#_1AD337: db $77, $00, $00, $00, $00, $01, $FF, $00, $00\n", + "file": "sound.asm" + }, + { + "name": "NULL_1AD340", + "code": "NULL_1AD340:\n#_1AD340: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD348: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD350: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD358: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD360: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD368: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD370: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1AD378: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Credits_Main", + "code": "SongBank_Credits_Main:\n#_1AD380: dw $1060, SONG_POINTERS ; Transfer size, transfer address\n\nbase SONG_POINTERS\n#_1AD384: #_D000c: dw $0000\n#_1AD386: #_D002c: dw $0000\n#_1AD388: #_D004c: dw $0000\n#_1AD38A: #_D006c: dw $0000\n#_1AD38C: #_D008c: dw $0000\n#_1AD38E: #_D00Ac: dw $0000\n#_1AD390: #_D00Cc: dw $0000\n#_1AD392: #_D00Ec: dw $0000\n#_1AD394: #_D010c: dw $0000\n#_1AD396: #_D012c: dw $0000\n#_1AD398: #_D014c: dw $0000\n#_1AD39A: #_D016c: dw $0000\n#_1AD39C: #_D018c: dw $0000\n#_1AD39E: #_D01Ac: dw $0000\n#_1AD3A0: #_D01Cc: dw $0000\n#_1AD3A2: #_D01Ec: dw $0000\n#_1AD3A4: #_D020c: dw $0000\n#_1AD3A6: #_D022c: dw $0000\n#_1AD3A8: #_D024c: dw $0000\n#_1AD3AA: #_D026c: dw $0000\n#_1AD3AC: #_D028c: dw $0000\n#_1AD3AE: #_D02Ac: dw $0000\n#_1AD3B0: #_D02Cc: dw $0000\n#_1AD3B2: #_D02Ec: dw $0000\n#_1AD3B4: #_D030c: dw $0000\n#_1AD3B6: #_D032c: dw $0000\n#_1AD3B8: #_D034c: dw $0000\n#_1AD3BA: #_D036c: dw $0000\n#_1AD3BC: #_D038c: dw $0000\n#_1AD3BE: #_D03Ac: dw $0000\n#_1AD3C0: #_D03Cc: dw $0000\n#_1AD3C2: #_D03Ec: dw Song20_TriforceRoom\n#_1AD3C4: #_D040c: dw Song21_EndingTheme\n#_1AD3C6: #_D042c: dw Song22_Credits\n#_1AD3C8: #_D044c: dw $0000\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "Song20_TriforceRoom", + "code": "Song20_TriforceRoom:\n#_1AD3CA: #_D046c: incbin \"bin/music/song20.bin\" ; size: 0x02B7\n", + "file": "sound.asm" + }, + { + "name": "Song22_Credits", + "code": "Song22_Credits:\n#_1AD681: #_D2FDc: incbin \"bin/music/song22.bin\" ; size: 0x0D63\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Credits_Auxiliary", + "code": "SongBank_Credits_Auxiliary:\n#_1AE3E4: dw $1038, CREDITS_AUX_POINTER ; Transfer size, transfer address\n\nbase CREDITS_AUX_POINTER\n", + "file": "sound.asm" + }, + { + "name": "Song21_EndingTheme", + "code": "Song21_EndingTheme:\n#_1AE3E8: #_2900c: incbin \"bin/music/song21.bin\" ; size: 0x1038\n\nbase off\n\n; =========================================================\n\n#_1AF420: dw $0000, SPC_ENGINE ; end of transfer\n\n; =========================================================\n\norg $1B8000\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Underworld_Main", + "code": "SongBank_Underworld_Main:\n#_1B8000: dw $2CBF, SONG_POINTERS ; Transfer size, transfer address\n\nbase SONG_POINTERS\n\n#_1B8004: #_D000u: dw $0000\n#_1B8006: #_D002u: dw $0000\n#_1B8008: #_D004u: dw $0000\n#_1B800A: #_D006u: dw $0000\n#_1B800C: #_D008u: dw $0000\n#_1B800E: #_D00Au: dw $0000\n#_1B8010: #_D00Cu: dw $0000\n#_1B8012: #_D00Eu: dw $0000\n#_1B8014: #_D010u: dw $0000\n#_1B8016: #_D012u: dw $0000\n#_1B8018: #_D014u: dw Song0B_FairyTheme\n#_1B801A: #_D016u: dw $0000\n#_1B801C: #_D018u: dw $0000\n#_1B801E: #_D01Au: dw $0000\n#_1B8020: #_D01Cu: dw $0000\n#_1B8022: #_D01Eu: dw Song10_HyruleCastle\n#_1B8024: #_D020u: dw Song11_PendantDungeon\n#_1B8026: #_D022u: dw Song12_Cave\n#_1B8028: #_D024u: dw Song13_Fanfare\n#_1B802A: #_D026u: dw Song14_Sanctuary\n#_1B802C: #_D028u: dw Song15_Boss\n#_1B802E: #_D02Au: dw Song16_CrystalDungeon\n#_1B8030: #_D02Cu: dw Song17_Shop\n#_1B8032: #_D02Eu: dw Song12_Cave\n#_1B8034: #_D030u: dw Song19_ZeldaRescue\n#_1B8036: #_D032u: dw Song1A_CrystalMaiden\n#_1B8038: #_D034u: dw Song1B_BigFairy\n#_1B803A: #_D036u: dw Song1C_Suspense\n#_1B803C: #_D038u: dw Song1D_AgahnimEscapes\n#_1B803E: #_D03Au: dw Song1E_MeetingGanon\n#_1B8040: #_D03Cu: dw Song1F_KingOfThieves\n#_1B8042: #_D03Eu: dw $0000\n#_1B8044: #_D040u: dw Song1D_AgahnimEscapes\n#_1B8046: #_D042u: dw Song1E_MeetingGanon\n#_1B8048: #_D044u: dw Song1F_KingOfThieves\n\n; ---------------------------------------------------------\n", + "file": "sound.asm" + }, + { + "name": "Song10_HyruleCastle", + "code": "Song10_HyruleCastle:\n#_1B804A: #_D046u: incbin \"bin/music/song10.bin\" ; size: 0x0BA6\n", + "file": "sound.asm" + }, + { + "name": "Song11_PendantDungeon", + "code": "Song11_PendantDungeon:\n#_1B8BF0: #_DBECu: incbin \"bin/music/song11.bin\" ; size: 0x054E\n", + "file": "sound.asm" + }, + { + "name": "Song12_Cave", + "code": "Song12_Cave:\n#_1B913E: #_E13Au: incbin \"bin/music/song12.bin\" ; size: 0x02F7\n", + "file": "sound.asm" + }, + { + "name": "Song13_Fanfare", + "code": "Song13_Fanfare:\n#_1B9435: #_E431u: incbin \"bin/music/song13.bin\" ; size: 0x02C8\n", + "file": "sound.asm" + }, + { + "name": "Song14_Sanctuary", + "code": "Song14_Sanctuary:\n#_1B96FD: #_E6F9u: incbin \"bin/music/song14.bin\" ; size: 0x0225\n", + "file": "sound.asm" + }, + { + "name": "Song15_Boss", + "code": "Song15_Boss:\n#_1B9922: #_E91Eu: incbin \"bin/music/song15.bin\" ; size: 0x02ED\n", + "file": "sound.asm" + }, + { + "name": "Song16_CrystalDungeon", + "code": "Song16_CrystalDungeon:\n#_1B9C0F: #_EC0Bu: incbin \"bin/music/song16.bin\" ; size: 0x05C6\n", + "file": "sound.asm" + }, + { + "name": "Song17_Shop", + "code": "Song17_Shop:\n#_1BA1D5: #_F1D1u: incbin \"bin/music/song17.bin\" ; size: 0x0133\n", + "file": "sound.asm" + }, + { + "name": "Song19_ZeldaRescue", + "code": "Song19_ZeldaRescue:\n#_1BA308: #_F304u: incbin \"bin/music/song19.bin\" ; size: 0x027C\n", + "file": "sound.asm" + }, + { + "name": "Song1A_CrystalMaiden", + "code": "Song1A_CrystalMaiden:\n#_1BA584: #_F580u: incbin \"bin/music/song1A.bin\" ; size: 0x0389\n", + "file": "sound.asm" + }, + { + "name": "Song1B_BigFairy", + "code": "Song1B_BigFairy:\n#_1BA90D: #_F909u: incbin \"bin/music/song1B.bin\" ; size: 0x0261\n", + "file": "sound.asm" + }, + { + "name": "Song1C_Suspense", + "code": "Song1C_Suspense:\n#_1BAB6E: #_FB6Au: incbin \"bin/music/song1C.bin\" ; size: 0x0155\n\nbase off\n\n; =========================================================\n", + "file": "sound.asm" + }, + { + "name": "SongBank_Underworld_Auxiliary", + "code": "SongBank_Underworld_Auxiliary:\n#_1BACC3: dw $050C, SONG_POINTERS_AUX ; Transfer size, transfer address\n\nbase SONG_POINTERS_AUX\n", + "file": "sound.asm" + }, + { + "name": "Song1D_AgahnimEscapes", + "code": "Song1D_AgahnimEscapes:\n#_1BACC7: #_2B00u: incbin \"bin/music/song1D.bin\" ; size: 0x00B3\n", + "file": "sound.asm" + }, + { + "name": "Song1F_KingOfThieves", + "code": "Song1F_KingOfThieves:\n#_1BAD7A: #_2BB3u: incbin \"bin/music/song1F.bin\" ; size: 0x03A6\n", + "file": "sound.asm" + }, + { + "name": "Ancilla_AddHitStars", + "code": "Ancilla_AddHitStars:\n #_098024: PHB\n #_098025: PHK\n #_098026: PLB\n\n #_098027: JSR Ancilla_AddAncilla\n #_09802A: BCS .spawn_failed\n\n #_09802C: STZ.w $0C5E,X\n\n #_09802F: LDA.b #$02\n #_098031: STA.w $03B1,X\n\n #_098034: LDA.b #$01\n #_098036: STA.w $039F,X\n\n #_098039: STZ.w $0C22,X\n #_09803C: STZ.w $0C2C,X\n\n #_09803F: LDA.w $0301\n #_098042: BEQ .nothing_in_hand\n\n #_098044: LDA.b $2F\n #_098046: LSR A\n\n #_098047: CLC\n #_098048: ADC.b #$02\n #_09804A: TAY\n\n #_09804B: BRA .continue\n\n.nothing_in_hand\n #_09804D: LDA.w $037A\n #_098050: BEQ .continue\n\n #_098052: LDY.b #$00\n\n #_098054: LDA.b $2F\n #_098056: CMP.b #$04\n #_098058: BEQ .continue\n\n #_09805A: LDY.b #$01\n\n; ---------------------------------------------------------\n\n.continue\n #_09805C: TYA\n #_09805D: STA.w $0C54,X\n\n #_098060: ASL A\n #_098061: ASL A\n #_098062: TAY\n\n #_098063: REP #$20\n\n #_098065: LDA.w .offset,Y\n #_098068: CLC\n #_098069: ADC.b $20\n #_09806B: STA.b $00\n\n #_09806D: LDA.w .offset+2,Y\n #_098070: CLC\n #_098071: ADC.b $22\n #_098073: STA.b $02\n\n #_098075: TYA\n #_098076: LSR A\n #_098077: TAY\n\n #_098078: LDA.b $22\n #_09807A: CLC\n #_09807B: ADC.w .unknown_offsets,Y\n #_09807E: STA.b $04\n\n #_098080: SEP #$20\n\n #_098082: LDA.b $04\n #_098084: STA.w $038A,X\n\n #_098087: LDA.b $05\n #_098089: STA.w $038F,X\n\n #_09808C: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.spawn_failed\n #_09808F: PLB\n\n #_098090: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Blanket", + "code": "AncillaAdd_Blanket:\n #_098091: PHB\n #_098092: PHK\n #_098093: PLB\n\n #_098094: LDX.b #$00\n\n #_098096: STA.w $0C4A,X\n\n #_098099: PHX\n\n #_09809A: TAX\n\n #_09809B: LDA.l AncillaObjectAllocation,X\n #_09809F: STA.b $0E\n\n #_0980A1: PLX\n\n #_0980A2: LDA.b $0E\n #_0980A4: STA.w $0C90,X\n\n #_0980A7: LDA.b $EE\n #_0980A9: STA.w $0C7C,X\n\n #_0980AC: LDA.w $0476\n #_0980AF: STA.w $03CA,X\n\n #_0980B2: STZ.w $0280,X\n\n #_0980B5: REP #$20\n\n #_0980B7: LDA.w #$2162\n #_0980BA: STA.b $00\n\n #_0980BC: LDA.w #$0938\n #_0980BF: STA.b $02\n\n #_0980C1: SEP #$20\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaInit_SetCoordsAndExit", + "code": "AncillaInit_SetCoordsAndExit:\n #_0980C3: JSR Ancilla_SetCoordinates\n\n #_0980C6: PLB\n\n #_0980C7: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Snoring", + "code": "AncillaAdd_Snoring:\n #_0980C8: PHB\n #_0980C9: PHK\n #_0980CA: PLB\n\n #_0980CB: JSR Ancilla_AddAncilla\n #_0980CE: BCS EXIT_0980FD\n\n; ---------------------------------------------------------\n\n #_0980D0: STZ.w $0C5E,X\n\n #_0980D3: LDA.b #$F8\n #_0980D5: STA.w $0C22,X\n\n #_0980D8: LDA.b #$07\n #_0980DA: STA.w $03B1,X\n\n #_0980DD: INC A\n #_0980DE: STA.w $0C2C,X\n\n #_0980E1: LDA.b #$FF\n #_0980E3: STA.w $0C54,X\n\n #_0980E6: REP #$20\n\n #_0980E8: LDA.b $20\n #_0980EA: CLC\n #_0980EB: ADC.w #$0004\n #_0980EE: STA.b $00\n\n #_0980F0: LDA.b $22\n #_0980F2: CLC\n #_0980F3: ADC.w #$0010\n #_0980F6: STA.b $02\n\n #_0980F8: SEP #$20\n\n #_0980FA: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_0980FD:\n #_0980FD: PLB\n\n #_0980FE: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Bomb", + "code": "AncillaAdd_Bomb:\n #_09811F: PHB\n #_098120: PHK\n #_098121: PLB\n\n #_098122: JSR Ancilla_AddAncilla\n #_098125: BCS EXIT_0980FD\n\n #_098127: LDA.l $7EF343\n #_09812B: BNE .we_have_bombs\n\n #_09812D: STZ.w $0C4A,X\n\n #_098130: BRA .exit\n\n; ---------------------------------------------------------\n\n.we_have_bombs\n #_098132: DEC A\n #_098133: STA.l $7EF343\n #_098137: BNE .we_have_more_bombs_too\n\n #_098139: PHX\n\n #_09813A: JSL RefreshIcon_long\n\n #_09813E: PLX\n\n.we_have_more_bombs_too\n #_09813F: STZ.w $03EA,X\n\n #_098142: STZ.w $0C54,X\n #_098145: STZ.w $0C5E,X\n\n #_098148: STZ.w $03C2,X\n\n #_09814B: STZ.w $0385,X\n\n #_09814E: LDA.l Bomb_timer\n #_098152: STA.w $039F,X\n\n #_098155: LDA.b #$07\n #_098157: STA.w $03C0,X\n\n #_09815A: STZ.w $029E,X\n\n #_09815D: LDA.b #$08\n #_09815F: STA.w $0C68,X\n\n #_098162: LDA.b $2F\n #_098164: LSR A\n #_098165: STA.w $0C72,X\n\n #_098168: STZ.w $03D5,X\n #_09816B: STZ.w $03D2,X\n #_09816E: STZ.w $03E1,X\n\n #_098171: JSL Ancilla_CheckInitialTileCollision_Class2\n #_098175: BCC .use_closer_offsets\n\n; ---------------------------------------------------------\n\n #_098177: LDY.b $2F\n\n #_098179: REP #$20\n\n #_09817B: LDA.b $20\n #_09817D: CLC\n #_09817E: ADC.w .offset_y,Y\n #_098181: STA.b $00\n\n #_098183: LDA.b $22\n #_098185: CLC\n #_098186: ADC.w .offset_x,Y\n #_098189: STA.b $02\n\n #_09818B: SEP #$20\n\n #_09818D: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.use_closer_offsets\n #_09818F: LDY.b $2F\n\n #_098191: REP #$20\n\n #_098193: LDA.b $20\n #_098195: CLC\n #_098196: ADC.w .offset_y_close,Y\n #_098199: STA.b $00\n\n #_09819B: LDA.b $22\n #_09819D: CLC\n #_09819E: ADC.w .offset_x_close,Y\n #_0981A1: STA.b $02\n\n #_0981A3: SEP #$20\n\n; ---------------------------------------------------------\n\n.finish_up\n #_0981A5: JSL Link_CalculateSFXPan\n #_0981A9: ORA.b #$0B ; SFX2.0B\n #_0981AB: STA.w $012E\n\n #_0981AE: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_0981B1: PLB\n\n #_0981B2: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Boomerang", + "code": "AncillaAdd_Boomerang:\n #_09820F: PHB\n #_098210: PHK\n #_098211: PLB\n\n #_098212: JSR Ancilla_AddAncilla\n #_098215: BCC .open_slot\n\n #_098217: BRL .exit\n\n; ---------------------------------------------------------\n\n.open_slot\n #_09821A: STZ.w $03B1,X\n\n #_09821D: STZ.w $0C5E,X\n #_098220: STZ.w $0380,X\n\n #_098223: STZ.w $029E,X\n #_098226: STA.w $0385,X\n\n #_098229: LDA.b #$01\n #_09822B: STA.w $035F\n\n #_09822E: LDA.l $7EF341\n #_098232: DEC A\n #_098233: STA.w $0394,X\n\n #_098236: TAY\n\n #_098237: LDA.w .distance,Y\n #_09823A: STA.w $0C54,X\n\n #_09823D: LDA.w .rotation_speed,Y\n #_098240: STA.w $039F,X\n\n; ---------------------------------------------------------\n\n #_098243: LDY.b #$00\n\n #_098245: LDA.b $F0\n #_098247: AND.b #$0C\n #_098249: BEQ .not_diagonal\n\n #_09824B: LDA.b $F0\n #_09824D: AND.b #$03\n #_09824F: BEQ .not_diagonal\n\n #_098251: INY\n\n.not_diagonal\n #_098252: STY.b $00\n\n #_098254: LDA.w $0394,X\n #_098257: ASL A\n #_098258: CLC\n #_098259: ADC.b $00\n #_09825B: TAY\n\n #_09825C: LDA.w .speed,Y\n #_09825F: STA.b $00\n #_098261: STA.w $03C5,X\n\n #_098264: STY.b $72\n\n; ---------------------------------------------------------\n\n #_098266: LDA.b $F0\n #_098268: AND.b #$0F\n #_09826A: BNE .not_directional\n\n #_09826C: LDA.b $2F\n #_09826E: LSR A\n #_09826F: TAY\n\n #_098270: LDA.w .direction_component,Y\n\n; ---------------------------------------------------------\n\n.not_directional\n #_098273: STA.b $01\n\n #_098275: STZ.w $039D\n\n #_098278: LDY.b $00\n\n #_09827A: LDA.b $01\n #_09827C: AND.b #$0C\n #_09827E: BEQ .nonvertical\n\n #_098280: AND.b #$08\n #_098282: BEQ .down_throw\n\n; ---------------------------------------------------------\n\n.up_throw\n #_098284: TYA\n #_098285: EOR.b #$FF\n #_098287: INC A\n #_098288: TAY\n\n; ---------------------------------------------------------\n\n.down_throw\n #_098289: TYA\n #_09828A: STA.w $0C22,X\n\n #_09828D: LDY.b #$00\n\n #_09828F: LDA.w $0C22,X\n #_098292: BMI .was_up_throw\n\n #_098294: INY\n\n.was_up_throw\n #_098295: TYA\n #_098296: STA.w $0C72,X\n\n #_098299: LDA.w .direction_component,Y\n #_09829C: STA.w $039D\n\n; ---------------------------------------------------------\n\n.nonvertical\n #_09829F: STZ.w $03A9,X\n\n #_0982A2: LDY.b $00\n\n #_0982A4: LDA.b $01\n #_0982A6: AND.b #$03\n #_0982A8: BEQ .nonhorizontal\n\n #_0982AA: AND.b #$02\n #_0982AC: BEQ .right_throw\n\n; ---------------------------------------------------------\n\n.left_throw\n #_0982AE: TYA\n #_0982AF: EOR.b #$FF\n #_0982B1: INC A\n #_0982B2: TAY\n\n #_0982B3: BRA .continue_horizontal\n\n; ---------------------------------------------------------\n\n.right_throw\n #_0982B5: INC.w $03A9,X\n\n.continue_horizontal\n #_0982B8: TYA\n #_0982B9: STA.w $0C2C,X\n\n #_0982BC: LDY.b #$02\n\n #_0982BE: LDA.w $0C2C,X\n #_0982C1: BMI .was_left_throw\n\n #_0982C3: LDY.b #$03\n\n.was_left_throw\n #_0982C5: TYA\n #_0982C6: STA.w $0C72,X\n\n #_0982C9: LDA.w .direction_component,Y\n #_0982CC: ORA.w $039D\n #_0982CF: STA.w $039D\n\n; ---------------------------------------------------------\n\n.nonhorizontal\n #_0982D2: LDY.b #$07\n\n.next_direction_check\n #_0982D4: LDA.w .valid_throw_dpad,Y\n #_0982D7: CMP.b $01\n #_0982D9: BEQ .valid_dpad_press\n\n #_0982DB: DEY\n #_0982DC: BPL .next_direction_check\n\n\n #_0982DE: INY\n\n; ---------------------------------------------------------\n\n.valid_dpad_press\n #_0982DF: LDA.w .initial_rotation,Y\n #_0982E2: STA.w $03A4,X\n\n #_0982E5: TYA\n #_0982E6: ASL A\n #_0982E7: TAY\n\n #_0982E8: STA.w $03CF,X\n\n #_0982EB: LDA.b $3C\n #_0982ED: CMP.b #$09\n #_0982EF: BCC .spin_not_charged\n\n #_0982F1: INC.w $03B1,X\n\n #_0982F4: BRA .check_tile_collision\n\n.spin_not_charged\n #_0982F6: LDA.b $72\n #_0982F8: BNE .magic_or_diagonal\n\n #_0982FA: LDA.b $F0\n #_0982FC: AND.b #$0F\n #_0982FE: BNE .check_tile_collision\n\n.magic_or_diagonal\n #_098300: LDY.b $2F\n\n; ---------------------------------------------------------\n\n.check_tile_collision\n #_098302: JSL Ancilla_CheckInitialTile_A\n #_098306: BCS AncillaAdd_BoomerangAsClink\n\n #_098308: LDA.w $03B1,X\n #_09830B: BEQ .wasnt_during_spin\n\n #_09830D: REP #$20\n\n #_09830F: LDA.b $20\n #_098311: CLC\n #_098312: ADC.w #$0008\n\n #_098315: CLC\n #_098316: ADC.w .offset_y_sword,Y\n #_098319: STA.b $00\n\n #_09831B: LDA.b $22\n #_09831D: CLC\n #_09831E: ADC.w .offset_x_sword,Y\n #_098321: STA.b $02\n\n #_098323: SEP #$20\n\n #_098325: BRL .proceed_to_set_coods\n\n; ---------------------------------------------------------\n\n.wasnt_during_spin\n #_098328: REP #$20\n\n #_09832A: LDA.b $20\n #_09832C: CLC\n #_09832D: ADC.w #$0008\n\n #_098330: CLC\n #_098331: ADC.w .offset_y_standard,Y\n #_098334: STA.b $00\n\n #_098336: LDA.b $22\n #_098338: CLC\n #_098339: ADC.w .offset_x_standard,Y\n #_09833C: STA.b $02\n\n #_09833E: SEP #$20\n\n; ---------------------------------------------------------\n\n.proceed_to_set_coods\n #_098340: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_098343: PLB\n\n #_098344: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BoomerangAsClink", + "code": "AncillaAdd_BoomerangAsClink:\n #_098345: STZ.w $0C4A,X\n #_098348: STZ.w $035F\n\n #_09834B: LDA.w $03E4,X\n #_09834E: CMP.b #$F0 ; TILETYPE F0\n #_098350: BEQ .shut_door\n\n #_098352: JSL Ancilla_CalculateSFXPan\n #_098356: ORA.b #$05 ; SFX2.05\n #_098358: STA.w $012E\n\n #_09835B: BRA .continue\n\n; ---------------------------------------------------------\n\n.shut_door\n #_09835D: JSL Ancilla_CalculateSFXPan\n #_098361: ORA.b #$06 ; SFX2.06\n #_098363: STA.w $012E\n\n; ---------------------------------------------------------\n\n.continue\n #_098366: JSL AncillaAdd_BoomerangWallClink\n\n #_09836A: PLB\n\n #_09836B: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ItemReceipt", + "code": "AncillaAdd_ItemReceipt:\n #_0985E8: PHB\n #_0985E9: PHK\n #_0985EA: PLB\n\n #_0985EB: JSR Ancilla_AddAncilla\n #_0985EE: BCC .free_slot\n\n #_0985F0: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0985F3: LDA.w $02E9\n #_0985F6: CMP.b #$01\n #_0985F8: BNE .not_chest\n\n #_0985FA: LDA.b $72\n #_0985FC: PHA\n\n #_0985FD: LDA.b $73\n #_0985FF: PHA\n\n.not_chest\n #_098600: LDY.b #$01\n\n #_098602: LDA.w $02D8\n #_098605: CMP.b #$20 ; ITEMGET 20\n #_098607: BNE .not_crystal\n\n #_098609: LDY.b #$02\n\n; ---------------------------------------------------------\n\n.not_crystal\n #_09860B: TYA\n #_09860C: STA.w $02E4\n\n #_09860F: PHX\n\n #_098610: LDY.w $02D8\n #_098613: BNE .not_uncle_gear\n\n #_098615: LDX.b #$08 ; ITEMGET 04 but x2\n\n #_098617: LDA.w .sram_write+0,X\n #_09861A: STA.b $00\n\n #_09861C: LDA.w .sram_write+1,X\n #_09861F: STA.b $01\n\n #_098621: LDA.b #$7E\n #_098623: STA.b $02\n\n #_098625: LDA.w .sram_value,Y\n #_098628: STA.b [$00]\n\n; ---------------------------------------------------------\n\n.not_uncle_gear\n #_09862A: TYA\n #_09862B: ASL A\n #_09862C: TAX\n\n #_09862D: LDA.w .sram_write+0,X\n #_098630: STA.b $00\n\n #_098632: LDA.w .sram_write+1,X\n #_098635: STA.b $01\n\n #_098637: LDA.b #$7E\n #_098639: STA.b $02\n\n #_09863B: LDA.w .sram_value,Y\n #_09863E: BMI .dont_write\n\n #_098640: STA.b [$00]\n\n.dont_write\n #_098642: CPY.b #$1F ; ITEMGET 1F\n #_098644: BNE .not_moon_pearl\n\n #_098646: STZ.b $56\n\n; ---------------------------------------------------------\n\n.not_moon_pearl\n #_098648: LDA.b #$04\n\n #_09864A: CPY.b #$4B ; ITEMGET 4B\n #_09864C: BEQ .boots\n\n #_09864E: CPY.b #$1E ; ITEMGET 1E\n #_098650: BNE .not_flippers\n\n.flippers\n #_098652: LDA.b #$02\n\n; ---------------------------------------------------------\n\n.boots\n #_098654: ORA.l $7EF379\n #_098658: STA.l $7EF379\n\n; ---------------------------------------------------------\n\n.not_flippers\n #_09865C: CPY.b #$1B ; ITEMGET 1B\n #_09865E: BEQ .power_glove\n\n #_098660: CPY.b #$1C ; ITEMGET 1C\n #_098662: BNE .not_mitts\n\n.power_glove\n #_098664: JSL Palettes_Load_LinkGloves\n\n; ---------------------------------------------------------\n\n.proceed_to_gfx\n #_098668: BRL .handle_gfx\n\n; ---------------------------------------------------------\n\n.not_mitts\n #_09866B: LDX.b #$04\n #_09866D: CPY.b #$37 ; ITEMGET 37\n #_09866F: BEQ .pendant\n\n #_098671: LDX.b #$01\n #_098673: CPY.b #$38 ; ITEMGET 38\n #_098675: BEQ .pendant\n\n #_098677: LDX.b #$02\n #_098679: CPY.b #$39 ; ITEMGET 39\n #_09867B: BNE .not_pendant\n\n.pendant\n #_09867D: TXA\n #_09867E: ORA.b [$00]\n #_098680: STA.b [$00]\n\n #_098682: INC.w $0200\n #_098685: AND.b #$07\n #_098687: CMP.b #$07\n #_098689: BNE .not_pendant\n\n #_09868B: LDA.b #$04\n #_09868D: STA.l $7EF3C7\n\n; ---------------------------------------------------------\n\n.not_pendant\n #_098691: CPY.b #$22 ; ITEMGET 22\n #_098693: BNE .not_blue_mail\n\n #_098695: LDA.b [$00]\n #_098697: BNE .we_have_good_mail\n\n #_098699: LDA.b #$01\n #_09869B: STA.b [$00]\n\n.we_have_good_mail\n #_09869D: BRA .proceed_to_gfx\n\n; ---------------------------------------------------------\n\n.not_blue_mail\n #_09869F: CPY.b #$25 ; ITEMGET 25\n #_0986A1: BEQ .dungeon_item\n\n #_0986A3: CPY.b #$32 ; ITEMGET 32\n #_0986A5: BEQ .dungeon_item\n\n #_0986A7: CPY.b #$33 ; ITEMGET 33\n #_0986A9: BNE .not_dungeon_item\n\n.dungeon_item\n #_0986AB: LDX.w $040C\n\n #_0986AE: REP #$20\n\n #_0986B0: LDA.w .dungeon_masks,X\n #_0986B3: ORA.b [$00]\n #_0986B5: STA.b [$00]\n\n #_0986B7: SEP #$20\n\n #_0986B9: BRL .handle_gfx\n\n; ---------------------------------------------------------\n\n.not_dungeon_item\n #_0986BC: CPY.b #$3E ; ITEMGET 3E\n #_0986BE: BNE .not_heart_container\n\n #_0986C0: BIT.w $0308\n #_0986C3: BPL .not_heart_container\n\n #_0986C5: LDA.b #$02\n #_0986C7: STA.w $0309\n\n.not_heart_container\n #_0986CA: CPY.b #$20 ; ITEMGET 20\n #_0986CC: BNE .not_crystal_or_caping\n\n #_0986CE: INC.w $0200\n\n; ---------------------------------------------------------\n\n #_0986D1: PHX\n\n #_0986D2: LDX.b #$04\n\n.next_ancilla_check\n #_0986D4: LDA.w $0C4A,X\n #_0986D7: CMP.b #$07 ; ANCILLA 07\n #_0986D9: BEQ .bomb_ancilla\n\n #_0986DB: CMP.b #$2C ; ANCILLA 2C\n #_0986DD: BNE .not_somaria_block\n\n.bomb_ancilla\n #_0986DF: STZ.w $0C4A,X\n\n #_0986E2: STZ.w $0308\n #_0986E5: STZ.w $0309\n\n.not_somaria_block\n #_0986E8: DEX\n #_0986E9: BPL .next_ancilla_check\n\n #_0986EB: PLX\n\n; ---------------------------------------------------------\n\n #_0986EC: LDA.b $55\n #_0986EE: BEQ .not_crystal_or_caping\n\n #_0986F0: LDA.b #$20\n #_0986F2: STA.w $02E2\n\n #_0986F5: STZ.w $037B\n #_0986F8: STZ.b $55\n\n #_0986FA: PHY\n #_0986FB: PHX\n\n #_0986FC: LDY.b #$04\n #_0986FE: LDA.b #$23 ; ANCILLA 23\n #_098700: JSL AncillaAdd_CapePoof\n\n #_098704: JSL Link_CalculateSFXPan\n #_098708: ORA.b #$15 ; SFX2.15\n #_09870A: STA.w $012E\n\n #_09870D: PLX\n #_09870E: PLY\n\n #_09870F: BRL .handle_gfx\n\n; ---------------------------------------------------------\n\n.not_crystal_or_caping\n #_098712: CPY.b #$29 ; ITEMGET 29\n #_098714: BNE .dont_give_mushroom\n\n #_098716: LDA.l $7EF344\n #_09871A: CMP.b #$02\n #_09871C: BEQ .dont_give_mushroom\n\n #_09871E: LDA.b #$01\n #_098720: STA.b [$00]\n #_098722: BRA .refresh_hud\n\n; ---------------------------------------------------------\n\n.dont_give_mushroom\n #_098724: LDX.b #$01\n\n #_098726: CPY.b #$24 ; ITEMGET 24\n #_098728: BEQ .add_to_stock\n\n #_09872A: LDA.w $02E9\n #_09872D: CMP.b #$02\n #_09872F: BEQ .dont_add_to_stock\n\n #_098731: CPY.b #$27 ; ITEMGET 27\n #_098733: BEQ .add_to_stock\n\n #_098735: LDX.b #$03\n\n #_098737: CPY.b #$28 ; ITEMGET 28\n #_098739: BEQ .add_to_stock\n\n #_09873B: CPY.b #$31 ; ITEMGET 31\n #_09873D: BNE .dont_add_to_stock\n\n #_09873F: LDX.b #$0A\n\n; ---------------------------------------------------------\n\n.add_to_stock\n #_098741: TXA\n #_098742: CLC\n #_098743: ADC.b [$00]\n #_098745: STA.b [$00]\n\n #_098747: CMP.b #99\n #_098749: BCC .refresh_hud\n\n #_09874B: LDA.b #99\n #_09874D: STA.b [$00]\n\n.refresh_hud\n #_09874F: JSL RefreshIcon_long\n\n #_098753: BRA .handle_gfx\n\n; ---------------------------------------------------------\n\n.dont_add_to_stock\n #_098755: CPY.b #$17 ; ITEMGET 17\n #_098757: BNE .not_heart_piece\n\n #_098759: LDA.b [$00]\n #_09875B: INC A\n #_09875C: AND.b #$03\n #_09875E: STA.b [$00]\n\n #_098760: JSL Link_CalculateSFXPan\n #_098764: ORA.b #$2D ; SFX3.2D\n #_098766: STA.w $012F\n\n #_098769: BRA .handle_gfx\n\n; ---------------------------------------------------------\n\n.not_heart_piece\n #_09876B: CPY.b #$01 ; ITEMGET 01\n #_09876D: BNE .is_not_ms\n\n #_09876F: PHY\n #_098770: PHX\n\n #_098771: JSL AdjustOverworldAmbiance\n\n #_098775: PLX\n #_098776: PLY\n\n.is_not_ms\n #_098777: JSR ItemReceipt_GiveBottledItem\n\n; ---------------------------------------------------------\n\n.handle_gfx\n #_09877A: LDY.w $02D8\n\n #_09877D: LDA.w .item_gfx_index,Y\n #_098780: STA.b $72\n\n #_098782: CMP.b #$FF\n #_098784: BEQ .null\n\n #_098786: CMP.b #$20\n #_098788: BEQ .shield\n\n #_09878A: CMP.b #$2D\n #_09878C: BEQ .shield\n\n #_09878E: CMP.b #$2E\n #_098790: BNE .extract_graphics\n\n.shield\n #_098792: JSL DecompressShieldGraphics\n #_098796: JSL Palettes_Load_Shield\n\n #_09879A: LDA.b $72\n\n #_09879C: BRA .extract_graphics\n\n.null\n #_09879E: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.extract_graphics\n #_0987A0: JSL WriteTo4BPPBuffer_item_gfx\n\n #_0987A4: LDA.b $72\n\n #_0987A6: CMP.b #$06\n #_0987A8: BEQ .sword\n\n #_0987AA: CMP.b #$18\n #_0987AC: BNE .not_sword\n\n.sword\n #_0987AE: LDA.w $02D8\n #_0987B1: BEQ .not_sword\n\n #_0987B3: JSL DecompressSwordGraphics\n #_0987B7: JSL Palettes_Load_Sword\n\n; ---------------------------------------------------------\n\n.not_sword\n #_0987BB: PLX\n\n #_0987BC: LDA.w $02D8\n #_0987BF: STA.w $0C5E,X\n\n #_0987C2: TAY\n\n #_0987C3: STZ.w $03A4,X\n\n #_0987C6: LDA.b #$09\n #_0987C8: CPY.b #$01 ; ITEMGET 01\n #_0987CA: BNE .not_mastersword\n\n; ---------------------------------------------------------\n\n #_0987CC: STA.w $039F,X\n\n #_0987CF: LDA.w $02E9\n #_0987D2: CMP.b #$02\n #_0987D4: BEQ .ms_from_sprite\n\n #_0987D6: LDA.b #$A0\n #_0987D8: STA.w $0C68,X\n\n #_0987DB: LDA.b #$2B\n #_0987DD: STA.b $11\n\n #_0987DF: LDA.b #$00\n #_0987E1: STA.l $7EC007\n\n #_0987E5: PHX\n #_0987E6: PHY\n\n #_0987E7: LDY.b #$04\n #_0987E9: LDA.b #$35 ; ANCILLA 35\n #_0987EB: JSL AncillaAdd_MSCutscene\n\n #_0987EF: PLY\n #_0987F0: PLX\n\n #_0987F1: LDA.b #$02\n\n; ---------------------------------------------------------\n\n.not_mastersword\n #_0987F3: STA.w $039F,X\n\n.ms_from_sprite\n #_0987F6: LDA.b #$05\n #_0987F8: STA.w $0BF0,X\n\n #_0987FB: PHY\n\n #_0987FC: LDY.b #$60\n\n #_0987FE: LDA.w $02E9\n #_098801: STA.w $0C54,X\n #_098804: BEQ .was_from_text\n\n #_098806: LDY.b #$38\n\n.was_from_text\n #_098808: LDA.w $0C5E,X\n\n #_09880B: CMP.b #$20 ; ITEMGET 20\n #_09880D: BEQ .dungeon_prize\n\n #_09880F: CMP.b #$37 ; ITEMGET 37\n #_098811: BEQ .dungeon_prize\n\n #_098813: CMP.b #$38 ; ITEMGET 38\n #_098815: BEQ .dungeon_prize\n\n #_098817: CMP.b #$39 ; ITEMGET 39\n #_098819: BEQ .dungeon_prize\n\n #_09881B: CMP.b #$26 ; ITEMGET 26\n #_09881D: BNE .not_44_heart\n\n #_09881F: LDY.b #$02\n #_098821: BRA .not_44_heart\n\n.dungeon_prize\n #_098823: LDY.b #$68\n\n; ---------------------------------------------------------\n\n.not_44_heart\n #_098825: TYA\n #_098826: STA.w $03B1,X\n\n #_098829: PLY\n\n #_09882A: LDA.w $02E9\n #_09882D: CMP.b #$01\n #_09882F: BNE .not_from_chest\n\n; ---------------------------------------------------------\n\n #_098831: PLA\n #_098832: STA.b $73\n\n #_098834: PLA\n #_098835: STA.b $72\n\n #_098837: REP #$20\n\n #_098839: LDA.b $72\n #_09883B: AND.w #$1F80\n\n #_09883E: LSR A\n #_09883F: LSR A\n #_098840: LSR A\n #_098841: LSR A\n\n #_098842: STA.b $00\n\n #_098844: LDA.b $72\n #_098846: AND.w #$007E\n #_098849: ASL A\n #_09884A: ASL A\n #_09884B: STA.b $02\n\n; ---------------------------------------------------------\n\n #_09884D: SEP #$20\n\n #_09884F: LDA.b $01\n #_098851: CLC\n #_098852: ADC.w $062F\n #_098855: STA.b $01\n\n #_098857: LDA.b $03\n #_098859: CLC\n #_09885A: ADC.w $062D\n #_09885D: STA.b $03\n\n #_09885F: REP #$20\n\n #_098861: LDA.w .offset_y,Y\n #_098864: AND.w #$00FF\n #_098867: ORA.w #$FF00\n\n #_09886A: CLC\n #_09886B: ADC.b $00\n #_09886D: STA.b $00\n\n #_09886F: LDA.w .offset_x,Y\n #_098872: AND.w #$00FF\n #_098875: CLC\n #_098876: ADC.b $02\n\n #_098878: BRL .proceed_to_finish_coords\n\n; ---------------------------------------------------------\n\n.not_from_chest\n #_09887B: PHY\n\n #_09887C: LDA.w $0C54,X\n #_09887F: BNE .not_text_or_ms\n\n #_098881: LDA.w $0C5E,X\n #_098884: CMP.b #$01 ; ITEMGET 01\n #_098886: BNE .not_text_or_ms\n\n #_098888: JSL Link_CalculateSFXPan\n #_09888C: ORA.b #$2C ; SFX2.2C\n #_09888E: STA.w $012E\n\n #_098891: BRA .done_with_sfx\n\n; ---------------------------------------------------------\n\n.not_text_or_ms\n #_098893: LDA.w $0C5E,X\n\n #_098896: CMP.b #$3E ; ITEMGET 3E\n #_098898: BEQ .done_with_sfx\n\n #_09889A: CMP.b #$17 ; ITEMGET 17\n #_09889C: BEQ .done_with_sfx\n\n #_09889E: CMP.b #$20 ; ITEMGET 20\n #_0988A0: BEQ .dungeon_prize_sfx\n\n #_0988A2: CMP.b #$37 ; ITEMGET 37\n #_0988A4: BEQ .dungeon_prize_sfx\n\n #_0988A6: CMP.b #$38 ; ITEMGET 38\n #_0988A8: BEQ .dungeon_prize_sfx\n\n #_0988AA: CMP.b #$39 ; ITEMGET 39\n #_0988AC: BNE .not_dungeon_prize_sfx\n\n; ---------------------------------------------------------\n\n.dungeon_prize_sfx\n #_0988AE: JSL Link_CalculateSFXPan\n #_0988B2: ORA.b #$13 ; SONG 13\n #_0988B4: STA.w $012C\n\n #_0988B7: BRA .done_with_sfx\n\n; ---------------------------------------------------------\n\n.not_dungeon_prize_sfx\n #_0988B9: JSL Link_CalculateSFXPan\n #_0988BD: ORA.b #$0F ; SFX3.0F\n #_0988BF: STA.w $012F\n\n; ---------------------------------------------------------\n\n.done_with_sfx\n #_0988C2: LDA.b #$0A\n #_0988C4: STA.b $02\n #_0988C6: STZ.b $03\n\n #_0988C8: LDY.w $0C5E,X\n\n #_0988CB: LDA.w .width,Y\n #_0988CE: BEQ .set_coordinates\n\n #_0988D0: CPY.b #$20 ; ITEMGET 20\n #_0988D2: BNE .aint_a_crystal\n\n #_0988D4: STZ.b $02\n #_0988D6: BRA .set_coordinates\n\n; ---------------------------------------------------------\n\n.aint_a_crystal\n #_0988D8: LDA.b #$06\n #_0988DA: STA.b $02\n\n; ---------------------------------------------------------\n\n.set_coordinates\n #_0988DC: LDY.w $02E9\n\n #_0988DF: CPY.b #$03\n #_0988E1: BNE .not_from_ancilla\n\n #_0988E3: LDY.b #$00\n\n.not_from_ancilla\n #_0988E5: STZ.b $08\n #_0988E7: STZ.b $09\n\n #_0988E9: CPY.b #$02\n #_0988EB: BNE .dont_adjust_altitude\n\n #_0988ED: LDA.b #$F8\n #_0988EF: STA.b $08\n #_0988F1: DEC.b $09\n\n.dont_adjust_altitude\n #_0988F3: STY.b $04\n #_0988F5: STZ.b $05\n\n; ---------------------------------------------------------\n\n #_0988F7: PLY\n\n #_0988F8: REP #$20\n\n #_0988FA: LDA.w #$FFF2\n #_0988FD: STA.b $00\n\n #_0988FF: LDA.b $04\n #_098901: BEQ .dont_adjust_y_for_text\n\n #_098903: LDA.w .offset_y,Y\n #_098906: AND.w #$00FF\n #_098909: ORA.w #$FF00\n #_09890C: STA.b $00\n\n.dont_adjust_y_for_text\n #_09890E: LDA.b $00\n #_098910: CLC\n #_098911: ADC.b $20\n\n #_098913: CLC\n #_098914: ADC.b $08\n #_098916: STA.b $00\n\n; ---------------------------------------------------------\n\n #_098918: LDA.b $04\n #_09891A: BEQ .dont_adjust_x_for_text\n\n #_09891C: LDA.w .offset_x,Y\n #_09891F: AND.w #$00FF\n #_098922: STA.b $02\n\n.dont_adjust_x_for_text\n #_098924: LDA.b $02\n #_098926: CLC\n #_098927: ADC.b $22\n\n; ---------------------------------------------------------\n\n.proceed_to_finish_coords\n #_098929: STA.b $02\n\n #_09892B: SEP #$20\n\n #_09892D: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_098930: PLB\n\n #_098931: RTL", + "file": "bank_09.asm" + }, + { + "name": "ItemReceipt_GiveBottledItem", + "code": "ItemReceipt_GiveBottledItem:\n #_09893E: STY.b $0C\n\n #_098940: LDX.b #$06\n\n.next_id_check\n #_098942: LDA.w .bottle_id,X\n #_098945: CMP.b $0C\n #_098947: BEQ .contents_id_found\n\n #_098949: DEX\n #_09894A: BPL .next_id_check\n\n #_09894C: BRA .not_new_bottle\n\n; ---------------------------------------------------------\n\n.contents_id_found\n #_09894E: TXA\n #_09894F: CLC\n #_098950: ADC.b #$02\n #_098952: STA.b $0C\n\n #_098954: LDX.b #$00\n\n.next_free_bottle_check\n #_098956: LDA.l $7EF35C,X\n #_09895A: CMP.b #$02\n #_09895C: BCS .slot_occupied\n\n #_09895E: LDA.b $0C\n #_098960: STA.l $7EF35C,X\n\n #_098964: BRL .exit\n\n.slot_occupied\n #_098967: INX\n #_098968: CPX.b #$04\n #_09896A: BNE .next_free_bottle_check\n\n; ---------------------------------------------------------\n\n.not_new_bottle\n #_09896C: STY.b $0C\n\n #_09896E: LDX.b #$04\n\n.next_refill_check\n #_098970: LDA.w .refill_id,X\n #_098973: CMP.b $0C\n #_098975: BEQ .refill_matched\n\n #_098977: DEX\n #_098978: BPL .next_refill_check\n\n #_09897A: BRA .exit\n\n; ---------------------------------------------------------\n\n.refill_matched\n #_09897C: TXA\n #_09897D: CLC\n #_09897E: ADC.b #$03\n #_098980: STA.b $0C\n\n #_098982: LDX.b #$00\n\n.next_empty_bottle_check\n #_098984: LDA.l $7EF35C,X\n #_098988: CMP.b #$02\n #_09898A: BNE .not_empty_bottle\n\n #_09898C: LDA.b $0C\n #_09898E: STA.l $7EF35C,X\n\n #_098992: BRA .exit\n\n.not_empty_bottle\n #_098994: INX\n #_098995: CPX.b #$04\n #_098997: BNE .next_empty_bottle_check\n\n; ---------------------------------------------------------\n\n.exit\n #_098999: RTS", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_TossedPondItem", + "code": "AncillaAdd_TossedPondItem:\n #_098A32: PHB\n #_098A33: PHK\n #_098A34: PLB\n\n #_098A35: STX.w $02D8\n\n #_098A38: JSR Ancilla_AddAncilla\n #_098A3B: BCS EXIT_098AB8\n\n #_098A3D: JSL Link_CalculateSFXPan\n #_098A41: ORA.b #$13 ; SFX3.13\n #_098A43: STA.w $012F\n\n #_098A46: PHX\n\n #_098A47: LDY.w $02D8\n\n #_098A4A: LDA.w AncillaAdd_ItemReceipt_item_gfx_index,Y\n #_098A4D: STA.b $72\n\n #_098A4F: CMP.b #$FF\n #_098A51: BEQ .invalid\n\n #_098A53: CMP.b #$20\n #_098A55: BNE .continue\n\n #_098A57: JSL DecompressShieldGraphics\n\n #_098A5B: LDA.b $72\n #_098A5D: BRA .continue\n\n.invalid\n #_098A5F: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue\n #_098A61: JSL WriteTo4BPPBuffer_item_gfx\n\n #_098A65: LDA.b $72\n #_098A67: CMP.b #$06\n #_098A69: BNE .not_fighter_sword\n\n #_098A6B: JSL DecompressSwordGraphics\n\n.not_fighter_sword\n #_098A6F: PLX\n\n #_098A70: LDA.b #$80\n #_098A72: STA.w $0308\n #_098A75: STZ.w $0309\n\n #_098A78: STZ.b $2F\n #_098A7A: STZ.b $2E\n\n #_098A7C: LDA.b #$14\n #_098A7E: STA.w $0294,X\n\n #_098A81: LDA.b #$D8\n #_098A83: STA.w $0C22,X\n\n #_098A86: STZ.w $0C2C,X\n #_098A89: STZ.w $029E,X\n\n #_098A8C: LDA.b #$10\n #_098A8E: STA.w $0C68,X\n\n; ---------------------------------------------------------\n\n #_098A91: LDA.w $02D8\n #_098A94: STA.w $0C5E,X\n\n #_098A97: TAY\n\n #_098A98: REP #$20\n\n #_098A9A: LDA.w .offset_y,Y\n #_098A9D: AND.w #$00FF\n #_098AA0: ORA.w #$FF00\n\n #_098AA3: CLC\n #_098AA4: ADC.b $20\n #_098AA6: STA.b $00\n\n #_098AA8: LDA.w .offset_x,Y\n #_098AAB: AND.w #$00FF\n\n #_098AAE: CLC\n #_098AAF: ADC.b $22\n #_098AB1: STA.b $02\n\n #_098AB3: SEP #$20\n\n #_098AB5: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_098AB8:\n #_098AB8: PLB\n\n #_098AB9: RTL", + "file": "bank_09.asm" + }, + { + "name": "AddHappinessPondRupees", + "code": "AddHappinessPondRupees:\n #_098AE0: PHB\n #_098AE1: PHK\n #_098AE2: PLB\n\n #_098AE3: PHX\n #_098AE4: PHA\n\n #_098AE5: LDY.b #$09\n #_098AE7: LDA.b #$42 ; ANCILLA 42\n #_098AE9: JSR Ancilla_AddAncilla\n #_098AEC: BCC .free_slot\n\n #_098AEE: PLA\n #_098AEF: PLX\n\n #_098AF0: BRA EXIT_098AB8\n\n; ---------------------------------------------------------\n\n.free_slot\n #_098AF2: JSL Link_CalculateSFXPan\n #_098AF6: ORA.b #$13 ; SFX3.13\n #_098AF8: STA.w $012F\n\n #_098AFB: LDY.b #$35 ; ITEMGET 35\n #_098AFD: LDA.w AncillaAdd_ItemReceipt_item_gfx_index,Y\n #_098B00: STA.b $72\n\n #_098B02: JSL WriteTo4BPPBuffer_item_gfx\n\n #_098B06: LDA.b #$80\n #_098B08: STA.w $0308\n #_098B0B: STZ.w $0309\n\n #_098B0E: STZ.b $2F\n #_098B10: STZ.b $2E\n\n #_098B12: LDX.b #$09\n #_098B14: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.next_clear\n #_098B16: STA.l $7F586C,X\n\n #_098B1A: DEX\n #_098B1B: BPL .next_clear\n\n #_098B1D: PLA\n #_098B1E: TAX\n\n #_098B1F: LDA.w .end_index,X\n #_098B22: STA.b $0F\n\n #_098B24: LDA.w .start_index,X\n #_098B27: TAY\n\n; ---------------------------------------------------------\n\n #_098B28: LDX.b #$09\n\n.next_rupee\n #_098B2A: LDA.b #$01\n #_098B2C: STA.l $7F586C,X\n\n #_098B30: LDA.w .speed_z,Y\n #_098B33: STA.l $7F5818,X\n\n #_098B37: LDA.w .speed_y,Y\n #_098B3A: STA.l $7F5800,X\n\n #_098B3E: LDA.w .speed_x,Y\n #_098B41: STA.l $7F580C,X\n\n #_098B45: LDA.b #$00\n #_098B47: STA.l $7F5854,X\n #_098B4B: STA.l $7F58AA,X\n\n #_098B4F: LDA.b #$10\n #_098B51: STA.l $7F5860,X\n\n #_098B55: LDA.b #$35\n #_098B57: STA.l $7F587A,X\n\n #_098B5B: REP #$20\n\n #_098B5D: LDA.b $20\n #_098B5F: CLC\n #_098B60: ADC.w #$FFF4\n #_098B63: STA.b $00\n\n #_098B65: LDA.b $22\n #_098B67: CLC\n #_098B68: ADC.w #$0004\n #_098B6B: STA.b $02\n\n #_098B6D: SEP #$20\n\n #_098B6F: LDA.b $00\n #_098B71: STA.l $7F5824,X\n\n #_098B75: LDA.b $01\n #_098B77: STA.l $7F5830,X\n\n #_098B7B: LDA.b $02\n #_098B7D: STA.l $7F583C,X\n\n #_098B81: LDA.b $03\n #_098B83: STA.l $7F5848,X\n\n #_098B87: DEX\n\n #_098B88: DEY\n #_098B89: CPY.b $0F\n #_098B8B: BNE .next_rupee\n\n #_098B8D: PLX\n\n; ---------------------------------------------------------\n\n#EXIT_098B8E:\n #_098B8E: PLB\n\n #_098B8F: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_FallingPrize", + "code": "AncillaAdd_FallingPrize:\n #_098BC1: PHB\n #_098BC2: PHK\n #_098BC3: PLB\n\n #_098BC4: STX.w $02D8\n\n #_098BC7: JSR Ancilla_AddAncilla\n #_098BCA: BCS EXIT_098B8E\n\n #_098BCC: PHX\n\n #_098BCD: LDY.w $02D8\n\n #_098BD0: LDA.w .receipt_ids,Y\n #_098BD3: STA.w $0C5E,X\n\n #_098BD6: CMP.w .ether_id\n #_098BD9: BEQ .is_ether\n\n #_098BDB: CMP.w .bombos_id\n #_098BDE: BNE .not_medallion\n\n.is_ether\n #_098BE0: TAY\n\n #_098BE1: LDA.w AncillaAdd_ItemReceipt_item_gfx_index,Y\n #_098BE4: STA.b $72\n\n #_098BE6: JSL WriteTo4BPPBuffer_item_gfx\n\n; ---------------------------------------------------------\n\n.not_medallion\n #_098BEA: PLX\n\n #_098BEB: LDA.b #$D0\n #_098BED: STA.w $0294,X\n\n #_098BF0: STZ.w $0C22,X\n #_098BF3: STZ.w $0C2C,X\n\n #_098BF6: STZ.w $0C54,X\n\n #_098BF9: LDY.w $02D8\n\n #_098BFC: LDA.w .fall_height,Y\n #_098BFF: STA.w $029E,X\n\n #_098C02: LDA.b #$09\n #_098C04: STA.w $03B1,X\n\n #_098C07: STZ.w $039F,X\n #_098C0A: STZ.w $0385,X\n\n #_098C0D: LDA.w .fall_timer,Y\n #_098C10: STA.w $0394,X\n\n #_098C13: LDA.w $0C5E,X\n #_098C16: STA.w $02D8\n\n #_098C19: CPY.b #$00\n #_098C1B: BEQ .was_medallion\n\n #_098C1D: CPY.b #$05\n #_098C1F: BEQ .was_medallion\n\n #_098C21: LDA.w $040C\n #_098C24: CMP.b #$14 ; DUNGEON 14\n #_098C26: BNE .not_hera\n\n; ---------------------------------------------------------\n\n.hera\n #_098C28: LDA.b $21\n #_098C2A: AND.b #$FE\n #_098C2C: INC A\n #_098C2D: STA.b $01\n #_098C2F: STZ.b $00\n\n #_098C31: LDA.b $23\n #_098C33: AND.b #$FE\n #_098C35: INC A\n #_098C36: STA.b $03\n #_098C38: STZ.b $02\n\n #_098C3A: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.not_hera\n #_098C3D: TYA\n #_098C3E: ASL A\n #_098C3F: TAY\n\n #_098C40: REP #$20\n\n #_098C42: LDA.w .fall_y,Y\n #_098C45: CLC\n #_098C46: ADC.b $E8\n #_098C48: STA.b $00\n\n #_098C4A: LDA.w .fall_x,Y\n #_098C4D: CLC\n #_098C4E: ADC.b $E2\n #_098C50: STA.b $02\n\n #_098C52: SEP #$20\n\n #_098C54: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.was_medallion\n #_098C57: TYA\n #_098C58: ASL A\n #_098C59: TAY\n\n #_098C5A: REP #$20\n\n #_098C5C: LDA.w .fall_y,Y\n #_098C5F: CLC\n #_098C60: ADC.b $E8\n #_098C62: STA.b $00\n\n #_098C64: LDA.b $22\n #_098C66: CLC\n #_098C67: ADC.w #$0000\n #_098C6A: STA.b $02\n\n #_098C6C: SEP #$20\n\n #_098C6E: BRL AncillaInit_SetCoordsAndExit\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_098C71", + "code": "UNREACHABLE_098C71:\n #_098C71: PLB\n\n #_098C72: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_DugUpFlute", + "code": "AncillaAdd_DugUpFlute:\n #_098C73: PHB\n #_098C74: PHK\n #_098C75: PLB\n\n #_098C76: JSR Ancilla_AddAncilla\n #_098C79: BCS .exit\n\n #_098C7B: STZ.w $0C54,X\n #_098C7E: STZ.w $029E,X\n\n #_098C81: LDA.l FluteBounce\n #_098C85: STA.w $0294,X\n\n #_098C88: LDY.b #$08\n #_098C8A: LDA.b $2F\n\n #_098C8C: CMP.b #$04\n #_098C8E: BNE .not_facing_left\n\n #_098C90: LDY.b #$F8\n\n.not_facing_left\n #_098C92: TYA\n #_098C93: STA.w $0C2C,X\n\n #_098C96: PHX\n\n #_098C97: LDA.b #$0C\n #_098C99: JSL WriteTo4BPPBuffer_item_gfx\n\n #_098C9D: PLX\n\n #_098C9E: REP #$20\n\n #_098CA0: LDA.w #$0A8A\n #_098CA3: STA.b $00\n\n #_098CA5: LDA.w #$0490\n #_098CA8: STA.b $02\n\n #_098CAA: SEP #$20\n\n #_098CAC: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_098CAF: PLB\n\n #_098CB0: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ChargedSpinAttackSparkle", + "code": "AncillaAdd_ChargedSpinAttackSparkle:\n #_098CB1: PHB\n #_098CB2: PHK\n #_098CB3: PLB\n\n #_098CB4: LDX.b #$09\n\n.next_slot\n #_098CB6: LDA.w $0C4A,X\n #_098CB9: BEQ .free_slot\n\n #_098CBB: CMP.b #$3C ; ANCILLA 3C\n #_098CBD: BEQ .free_slot\n\n #_098CBF: DEX\n #_098CC0: BPL .next_slot\n\n #_098CC2: BRA .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_098CC4: LDA.b #$0D ; ANCILLA 0D\n #_098CC6: STA.w $0C4A,X\n\n #_098CC9: LDA.b $EE\n #_098CCB: STA.w $0C7C,X\n\n #_098CCE: LDA.b #$06\n #_098CD0: STA.w $0C68,X\n\n.exit\n #_098CD3: PLB\n\n #_098CD4: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ExplodingWeatherVane", + "code": "AncillaAdd_ExplodingWeatherVane:\n #_098D11: PHB\n #_098D12: PHK\n #_098D13: PLB\n\n #_098D14: JSR Ancilla_AddAncilla\n #_098D17: BCS .exit\n\n #_098D19: LDA.b #$0A\n #_098D1B: STA.w $03B1,X\n\n #_098D1E: LDA.b #$80\n #_098D20: STA.w $0394,X\n\n #_098D23: STZ.w $0C54,X\n #_098D26: STZ.w $039F,X\n\n #_098D29: STZ.w $012E\n\n #_098D2C: LDA.b #$F2 ; SONG F2 - half volume\n #_098D2E: STA.w $012C\n\n #_098D31: LDA.b #$17 ; SFX1.17\n #_098D33: STA.w $012D\n\n #_098D36: LDA.b #$00\n #_098D38: STA.l $7F58B8\n\n #_098D3C: REP #$20\n\n #_098D3E: LDA.w #$0280\n #_098D41: STA.l $7F58B6\n\n; ---------------------------------------------------------\n\n #_098D45: SEP #$20\n\n #_098D47: LDX.b #$0B\n\n.next\n #_098D49: LDA.b #$00\n #_098D4B: STA.l $7F5800,X\n\n #_098D4F: LDA.w .speed_x,X\n #_098D52: STA.l $7F580C,X\n\n #_098D56: LDA.w .speed_z,X\n #_098D59: STA.l $7F5818,X\n\n #_098D5D: LDA.w .position_y,X\n #_098D60: STA.l $7F5824,X\n\n #_098D64: LDA.b #$07\n #_098D66: STA.l $7F5830,X\n\n #_098D6A: LDA.w .position_x,X\n #_098D6D: STA.l $7F583C,X\n\n #_098D71: LDA.b #$02\n #_098D73: STA.l $7F5848,X\n\n #_098D77: LDA.w .position_z,X\n #_098D7A: STA.l $7F5854,X\n\n #_098D7E: LDA.b #$01\n #_098D80: STA.l $7F5860,X\n\n #_098D84: TXA\n #_098D85: AND.b #$01\n #_098D87: STA.l $7F586C,X\n\n #_098D8B: DEX\n #_098D8C: BPL .next\n\n; ---------------------------------------------------------\n\n.exit\n #_098D8E: PLB\n\n #_098D8F: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_CutsceneDuck", + "code": "AncillaAdd_CutsceneDuck:\n #_098D90: PHB\n #_098D91: PHK\n #_098D92: PLB\n\n #_098D93: JSR AncillaAdd_CheckForPresence\n #_098D96: BCS .exit\n\n #_098D98: JSR Ancilla_AddAncilla\n #_098D9B: BCS .exit\n\n #_098D9D: LDA.b #$02\n #_098D9F: STA.w $0C72,X\n\n #_098DA2: INC A\n #_098DA3: STA.w $039F,X\n\n #_098DA6: STZ.w $0C54,X\n\n #_098DA9: LDA.b #$20\n #_098DAB: STA.w $03B1,X\n\n #_098DAE: LDA.b #$74\n #_098DB0: STA.w $0C5E,X\n\n #_098DB3: STZ.w $0294,X\n #_098DB6: STZ.w $0385,X\n #_098DB9: STZ.w $029E,X\n #_098DBC: STZ.w $03A9,X\n\n #_098DBF: REP #$20\n #_098DC1: LDA.w #$0788\n #_098DC4: STA.b $00\n\n #_098DC6: LDA.w #$0200\n #_098DC9: STA.b $02\n\n #_098DCB: SEP #$20\n\n #_098DCD: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_098DD0: PLB\n\n #_098DD1: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SomariaPlatformPoof", + "code": "AncillaAdd_SomariaPlatformPoof:\n #_098DD2: LDA.b #$39 ; ANCILLA 39\n #_098DD4: STA.w $0C4A,X\n\n #_098DD7: LDA.b #$07\n #_098DD9: STA.w $03B1,X\n\n #_098DDC: PHX\n #_098DDD: PHY\n\n #_098DDE: LDY.b #$0F\n\n.next_slot\n #_098DE0: LDA.w $0E20,Y\n #_098DE3: CMP.b #$ED ; SPRITE ED\n #_098DE5: BNE .not_platform\n\n #_098DE7: LDA.b #$00\n #_098DE9: STA.w $0DD0,Y\n\n #_098DEC: STA.w $02F5\n\n.not_platform\n #_098DEF: DEY\n #_098DF0: BPL .next_slot\n\n #_098DF2: JSL TileDetect_BigArea_long\n\n #_098DF6: PLY\n #_098DF7: PLX\n\n #_098DF8: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SuperBombExplosion", + "code": "AncillaAdd_SuperBombExplosion:\n #_098DF9: PHB\n #_098DFA: PHK\n #_098DFB: PLB\n\n #_098DFC: JSR Ancilla_AddAncilla\n #_098DFF: BCC .free_slot\n\n #_098E01: BRL .exit\n\n.free_slot\n #_098E04: STZ.w $03EA,X\n #_098E07: STZ.w $0C54,X\n\n #_098E0A: STZ.w $03C2,X\n #_098E0D: STZ.w $0385,X\n\n #_098E10: LDA.l Bomb_timer+1\n #_098E14: STA.w $039F,X\n\n #_098E17: LDA.b #$01\n #_098E19: STA.w $0C5E,X\n\n #_098E1C: PHX\n\n #_098E1D: LDX.w $02CF\n\n #_098E20: LDA.w $1A00,X\n #_098E23: STA.b $00\n\n #_098E25: LDA.w $1A14,X\n #_098E28: STA.b $01\n\n #_098E2A: LDA.w $1A28,X\n #_098E2D: STA.b $02\n\n #_098E2F: LDA.w $1A3C,X\n #_098E32: STA.b $03\n\n #_098E34: PLX\n\n #_098E35: REP #$20\n\n #_098E37: LDA.b $00\n #_098E39: CLC\n #_098E3A: ADC.w #$0010\n #_098E3D: STA.b $00\n\n #_098E3F: LDA.b $02\n #_098E41: CLC\n #_098E42: ADC.w #$0008\n #_098E45: STA.b $02\n\n #_098E47: SEP #$20\n\n #_098E49: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_098E4C: PLB\n\n #_098E4D: RTL", + "file": "bank_09.asm" + }, + { + "name": "ConfigureRevivalAncillae", + "code": "ConfigureRevivalAncillae:\n #_098E4E: PHB\n #_098E4F: PHK\n #_098E50: PLB\n\n #_098E51: LDA.b #$50\n #_098E53: STA.w $0109\n\n #_098E56: LDX.b #$00\n\n #_098E58: LDA.b #$40\n #_098E5A: STA.w $039F,X\n\n #_098E5D: STZ.w $0C54,X\n\n #_098E60: LDA.b #$08\n #_098E62: STA.w $0294,X\n\n #_098E65: STZ.w $0385,X\n\n #_098E68: LDA.b #$05\n #_098E6A: STA.w $0394,X\n\n #_098E6D: STZ.w $0C5E,X\n #_098E70: STZ.w $0380,X\n\n #_098E73: REP #$20\n\n #_098E75: LDA.b $20\n #_098E77: STA.b $00\n\n #_098E79: LDA.b $22\n #_098E7B: STA.b $02\n\n #_098E7D: SEP #$20\n\n #_098E7F: JSR Ancilla_SetCoordinates\n\n #_098E82: STZ.w $029E,X\n\n #_098E85: INX\n\n #_098E86: STZ.w $029E,X\n\n #_098E89: LDA.b #$F0\n #_098E8B: STA.w $039F,X\n\n #_098E8E: STZ.w $0C54,X\n #_098E91: STZ.w $0380,X\n\n #_098E94: INX\n\n #_098E95: LDA.b #$02\n #_098E97: STA.w $0C5E,X\n #_098E9A: STA.b $00\n\n #_098E9C: INC A\n #_098E9D: STA.w $03B1,X\n\n #_098EA0: LDA.b #$08\n #_098EA2: STA.w $039F,X\n\n #_098EA5: STZ.w $0C54,X\n\n; ---------------------------------------------------------\n\n #_098EA8: PHX\n\n #_098EA9: LDA.b #$03\n #_098EAB: STA.w $0C72,X\n\n #_098EAE: TAX\n\n #_098EAF: LDA.l PowderDraw_group_offset,X\n #_098EB3: CLC\n #_098EB4: ADC.b $00\n #_098EB6: TAX\n\n #_098EB7: LDA.l PowderDraw_anim_step,X\n\n #_098EBB: PLX\n\n #_098EBC: STA.w $03C2,X\n\n #_098EBF: LDY.b #$06\n\n #_098EC1: REP #$20\n\n #_098EC3: LDA.b $20\n #_098EC5: CLC\n #_098EC6: ADC.w AncillaAdd_MagicPowder_offset_y,Y\n\n #_098EC9: CLC\n #_098ECA: ADC.w #$FFEC\n #_098ECD: STA.b $00\n\n #_098ECF: LDA.b $22\n #_098ED1: CLC\n #_098ED2: ADC.w #$FFF8\n\n #_098ED5: CLC\n #_098ED6: ADC.w AncillaAdd_MagicPowder_offset_x,Y\n #_098ED9: STA.b $02\n\n #_098EDB: SEP #$20\n\n #_098EDD: BRL AncillaInit_SetCoordsAndExit\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_CaneOfByrnaInitSpark", + "code": "AncillaAdd_CaneOfByrnaInitSpark:\n #_098EE0: PHB\n #_098EE1: PHK\n #_098EE2: PLB\n\n #_098EE3: PHA\n\n; ---------------------------------------------------------\n\n #_098EE4: LDX.b #$04\n\n.next_clear\n #_098EE6: LDA.w $0C4A,X\n #_098EE9: CMP.b #$31 ; ANCILLA 31\n #_098EEB: BNE .not_spark\n\n #_098EED: STZ.w $0C4A,X\n\n.not_spark\n #_098EF0: DEX\n #_098EF1: BPL .next_clear\n\n; ---------------------------------------------------------\n\n #_098EF3: PLA\n #_098EF4: JSR Ancilla_AddAncilla\n #_098EF7: BCS .exit\n\n #_098EF9: STZ.w $0C5E,X\n\n #_098EFC: LDA.b #$09\n #_098EFE: STA.w $03B1,X\n\n #_098F01: LDA.b #$01\n #_098F03: STA.w $037B\n\n #_098F06: INC A\n #_098F07: STA.w $039F,X\n\n.exit\n #_098F0A: PLB\n\n #_098F0B: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_LampFlame", + "code": "AncillaAdd_LampFlame:\n #_098F1C: PHB\n #_098F1D: PHK\n #_098F1E: PLB\n\n #_098F1F: JSR Ancilla_AddAncilla\n #_098F22: BCS .exit\n\n #_098F24: STZ.w $0C5E,X\n #_098F27: STZ.w $03B1,X\n\n #_098F2A: LDA.b #$17\n #_098F2C: STA.w $0C68,X\n\n #_098F2F: LDA.b $2F\n #_098F31: LSR A\n #_098F32: STA.w $0C72,X\n\n #_098F35: LDY.b $2F\n\n #_098F37: REP #$20\n\n #_098F39: LDA.b $20\n #_098F3B: CLC\n #_098F3C: ADC.w .offset_y,Y\n #_098F3F: STA.b $00\n\n #_098F41: LDA.b $22\n #_098F43: CLC\n #_098F44: ADC.w .offset_x,Y\n #_098F47: STA.b $02\n\n #_098F49: SEP #$20\n\n #_098F4B: JSR Ancilla_SetCoordinates\n #_098F4E: JSL Ancilla_CalculateSFXPan\n\n #_098F52: ORA.b #$2A ; SFX2.2A\n #_098F54: STA.w $012E\n\n #_098F57: PLB\n\n #_098F58: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ShovelDirt", + "code": "AncillaAdd_ShovelDirt:\n #_098F5B: PHB\n #_098F5C: PHK\n #_098F5D: PLB\n\n #_098F5E: JSR Ancilla_AddAncilla\n #_098F61: BCS .exit\n\n #_098F63: STZ.w $0C5E,X\n\n #_098F66: LDA.b #$14\n #_098F68: STA.w $0C68,X\n\n #_098F6B: REP #$20\n\n #_098F6D: LDA.b $20\n #_098F6F: STA.b $00\n\n #_098F71: LDA.b $22\n #_098F73: STA.b $02\n\n #_098F75: SEP #$20\n\n #_098F77: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_098F7A: PLB\n\n #_098F7B: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_MSCutscene", + "code": "AncillaAdd_MSCutscene:\n #_098F7C: PHB\n #_098F7D: PHK\n #_098F7E: PLB\n\n #_098F7F: JSR Ancilla_AddAncilla\n #_098F82: BCS .exit\n\n #_098F84: STZ.w $0C5E,X\n\n #_098F87: LDA.b #$02\n #_098F89: STA.w $03B1,X\n\n #_098F8C: LDA.b #$40\n #_098F8E: STA.w $0C68,X\n\n #_098F91: REP #$20\n\n #_098F93: LDA.b $20\n #_098F95: CLC\n #_098F96: ADC.w #$FFF8\n #_098F99: STA.b $00\n\n #_098F9B: LDA.b $22\n #_098F9D: CLC\n #_098F9E: ADC.w #$0008\n #_098FA1: STA.b $02\n\n #_098FA3: SEP #$20\n\n #_098FA5: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_098FA8: PLB\n\n #_098FA9: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_DashDust", + "code": "AncillaAdd_DashDust:\n #_098FBA: PHB\n #_098FBB: PHK\n #_098FBC: PLB\n\n #_098FBD: LDX.b #$01\n #_098FBF: BRA .continue\n\n; ---------------------------------------------------------\n\n#AncillaAdd_DashDust_charging:\n #_098FC1: PHB\n #_098FC2: PHK\n #_098FC3: PLB\n\n #_098FC4: LDX.b #$00\n\n.continue\n #_098FC6: STX.b $72\n\n #_098FC8: JSR Ancilla_AddAncilla\n #_098FCB: BCS .exit\n\n #_098FCD: LDA.b $72\n #_098FCF: STA.w $0C54,X\n\n #_098FD2: STZ.w $0C5E,X\n\n #_098FD5: LDA.b #$03\n #_098FD7: STA.w $0C68,X\n\n #_098FDA: LDY.b $2F\n #_098FDC: TYA\n #_098FDD: LSR A\n #_098FDE: STA.w $0C72,X\n\n #_098FE1: LDA.b $72\n #_098FE3: BNE .mobile\n\n; ---------------------------------------------------------\n\n.immobile\n #_098FE5: REP #$20\n\n #_098FE7: LDA.b $20\n #_098FE9: CLC\n #_098FEA: ADC.w #$0014\n #_098FED: STA.b $00\n\n #_098FEF: LDA.b $22\n #_098FF1: STA.b $02\n\n #_098FF3: SEP #$20\n\n #_098FF5: JMP.w AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.mobile\n #_098FF8: REP #$20\n\n #_098FFA: LDA.b $20\n #_098FFC: CLC\n #_098FFD: ADC.w .offset_y,Y\n #_099000: STA.b $00\n\n #_099002: LDA.b $22\n #_099004: CLC\n #_099005: ADC.w .offset_x,Y\n #_099008: STA.b $02\n\n #_09900A: SEP #$20\n\n #_09900C: JMP.w AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_09900F: PLB\n\n #_099010: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BlastWallFireball", + "code": "AncillaAdd_BlastWallFireball:\n #_099031: PHB\n #_099032: PHK\n #_099033: PLB\n\n #_099034: LDX.b #$0A\n\n.check_next\n #_099036: LDA.w $0C4A,X\n #_099039: BEQ .free_slot\n\n #_09903B: DEX\n #_09903C: CPX.b #$04\n #_09903E: BNE .check_next\n\n #_099040: LDX.b #$FF\n\n #_099042: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_099045: LDA.b #$32 ; ANCILLA 32\n #_099047: STA.w $0C4A,X\n\n #_09904A: LDA.b $EE\n #_09904C: STA.w $0C7C,X\n\n #_09904F: LDA.b #$10\n #_099051: STA.l $7F0040,X\n\n #_099055: LDA.b $1A\n #_099057: AND.b #$0F\n #_099059: ASL A\n #_09905A: TAY\n\n #_09905B: LDA.w .speed+0,Y\n #_09905E: STA.w $0C22,X\n\n #_099061: LDA.w .speed+1,Y\n #_099064: STA.w $0C2C,X\n\n #_099067: REP #$20\n\n #_099069: PHX\n\n #_09906A: LDX.b $04\n\n #_09906C: LDA.l $7F0020,X\n #_099070: CLC\n #_099071: ADC.w #$0008\n #_099074: STA.b $00\n\n #_099076: LDA.l $7F0030,X\n #_09907A: CLC\n #_09907B: ADC.w #$0010\n #_09907E: STA.b $02\n\n #_099080: PLX\n\n #_099081: SEP #$20\n\n #_099083: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_099086: PLB\n\n #_099087: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Arrow", + "code": "AncillaAdd_Arrow:\n #_0990A4: PHB\n #_0990A5: PHK\n #_0990A6: PLB\n\n #_0990A7: STX.b $76\n\n #_0990A9: JSR AncillaAdd_CheckForPresence\n #_0990AC: BCC .none_exist\n\n #_0990AE: BRL .exit\n\n.none_exist\n #_0990B1: JSR AncillaAdd_ArrowFindSlot\n #_0990B4: BCC .free_slot\n\n #_0990B6: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0990B9: JSL Link_CalculateSFXPan\n #_0990BD: ORA.b #$07 ; SFX2.07\n #_0990BF: STA.w $012E\n\n #_0990C2: STZ.w $03C5,X\n\n #_0990C5: LDA.b #$08\n #_0990C7: STA.w $0C5E,X\n\n #_0990CA: LDA.b $76\n #_0990CC: LSR A\n #_0990CD: TAY\n\n #_0990CE: ORA.b #$04\n #_0990D0: STA.w $0C72,X\n\n #_0990D3: LDA.w .speed_y,Y\n #_0990D6: STA.w $0C22,X\n\n #_0990D9: LDA.w .speed_x,Y\n #_0990DC: STA.w $0C2C,X\n\n #_0990DF: LDY.b $76\n\n #_0990E1: REP #$20\n\n #_0990E3: LDA.b $72\n #_0990E5: CLC\n #_0990E6: ADC.w #$0008\n #_0990E9: CLC\n #_0990EA: ADC.w .offset_y,Y\n #_0990ED: STA.b $00\n\n #_0990EF: LDA.b $74\n #_0990F1: CLC\n #_0990F2: ADC.w .offset_x,Y\n #_0990F5: STA.b $02\n\n #_0990F7: SEP #$20\n\n #_0990F9: JSR Ancilla_SetCoordinates\n\n #_0990FC: SEC\n\n #_0990FD: PLB\n\n #_0990FE: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BunnyPoof", + "code": "AncillaAdd_BunnyPoof:\n #_099102: PHB\n #_099103: PHK\n #_099104: PLB\n\n #_099105: JSR Ancilla_AddAncilla\n #_099108: BCS EXIT_09915D\n\n #_09910A: LDA.b #$0C\n #_09910C: STA.b $4B\n\n #_09910E: STZ.w $0C54,X\n\n #_099111: LDA.w $02E0\n #_099114: BNE .bunny\n\n #_099116: JSL Link_CalculateSFXPan\n #_09911A: ORA.b #$14 ; SFX2.14\n #_09911C: STA.w $012E\n\n #_09911F: BRA .proceed\n\n.bunny\n #_099121: JSL Link_CalculateSFXPan\n #_099125: ORA.b #$15 ; SFX2.15\n #_099127: STA.w $012E\n\n.proceed\n #_09912A: BRA AncillaAdd_ArbitraryPoof\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_CapePoof", + "code": "AncillaAdd_CapePoof:\n #_09912C: PHB\n #_09912D: PHK\n #_09912E: PLB\n\n #_09912F: JSR Ancilla_AddAncilla\n #_099132: BCS EXIT_09915D\n\n #_099134: LDA.b #$01\n #_099136: STA.w $0C54,X\n #_099139: STA.w $02E1\n\n #_09913C: TSB.b $50\n\n #_09913E: STZ.b $67\n #_099140: STZ.b $26\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ArbitraryPoof", + "code": "AncillaAdd_ArbitraryPoof:\n #_099142: STZ.w $0C5E,X\n\n #_099145: LDA.b #$07\n #_099147: STA.w $03B1,X\n\n #_09914A: REP #$20\n\n #_09914C: LDA.b $20\n #_09914E: CLC\n #_09914F: ADC.w #$0004\n #_099152: STA.b $00\n\n #_099154: LDA.b $22\n #_099156: STA.b $02\n\n #_099158: SEP #$20\n\n #_09915A: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_09915D:\n #_09915D: PLB\n\n #_09915E: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_DwarfPoof", + "code": "AncillaAdd_DwarfPoof:\n #_09915F: PHB\n #_099160: PHK\n #_099161: PLB\n\n #_099162: JSR Ancilla_AddAncilla\n #_099165: BCS .exit\n\n #_099167: LDA.l $7EF3CC\n #_09916B: CMP.b #$08 ; FOLLOWER 08\n #_09916D: BNE .not_dwarf\n\n #_09916F: JSL Link_CalculateSFXPan\n #_099173: ORA.b #$14 ; SFX2.14\n #_099175: STA.w $012E\n\n #_099178: BRA .continue\n\n.not_dwarf\n #_09917A: JSL Link_CalculateSFXPan\n #_09917E: ORA.b #$15 ; SFX2.15\n #_099180: STA.w $012E\n\n; ---------------------------------------------------------\n\n.continue\n #_099183: STZ.w $0C5E,X\n #_099186: STZ.w $0C54,X\n\n #_099189: LDA.b #$07\n #_09918B: STA.w $03B1,X\n\n #_09918E: LDA.b #$01\n #_099190: STA.w $02F9\n\n #_099193: LDY.w $02CF\n\n #_099196: LDA.w $1A00,Y\n #_099199: STA.b $00\n\n #_09919B: LDA.w $1A14,Y\n #_09919E: STA.b $01\n\n #_0991A0: LDA.w $1A28,Y\n #_0991A3: STA.b $02\n\n #_0991A5: LDA.w $1A3C,Y\n #_0991A8: STA.b $03\n\n #_0991AA: REP #$20\n\n #_0991AC: LDA.b $00\n #_0991AE: CLC\n #_0991AF: ADC.w #$0004\n #_0991B2: STA.b $00\n\n #_0991B4: LDA.b $02\n #_0991B6: CLC\n #_0991B7: ADC.w #$0000\n #_0991BA: STA.b $02\n\n #_0991BC: SEP #$20\n\n #_0991BE: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_0991C1: PLB\n\n #_0991C2: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BushPoof", + "code": "AncillaAdd_BushPoof:\n #_0991C3: PHB\n #_0991C4: PHK\n #_0991C5: PLB\n\n #_0991C6: LDA.w $0301\n #_0991C9: AND.b #$40\n #_0991CB: BEQ .exit\n\n #_0991CD: LDY.b #$04\n #_0991CF: LDA.b #$3F ; ANCILLA 3F\n #_0991D1: JSR Ancilla_AddAncilla\n #_0991D4: BCS .exit\n\n #_0991D6: STZ.w $0C5E,X\n\n #_0991D9: LDA.b #$07\n #_0991DB: STA.w $0C68,X\n\n #_0991DE: JSL Link_CalculateSFXPan\n #_0991E2: ORA.b #$15 ; SFX2.15\n #_0991E4: STA.w $012E\n\n #_0991E7: REP #$20\n\n #_0991E9: LDA.b $74\n #_0991EB: CLC\n #_0991EC: ADC.w #$FFFE\n #_0991EF: STA.b $00\n\n #_0991F1: LDA.b $72\n #_0991F3: STA.b $02\n\n #_0991F5: SEP #$20\n\n #_0991F7: JMP.w AncillaInit_SetCoordsAndExit\n\n.exit\n #_0991FA: PLB\n\n #_0991FB: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_EtherSpell", + "code": "AncillaAdd_EtherSpell:\n #_0991FC: PHB\n #_0991FD: PHK\n #_0991FE: PLB\n\n #_0991FF: JSR Ancilla_AddAncilla\n #_099202: BCC .free_slot\n\n #_099204: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_099207: STZ.w $0C5E,X\n\n #_09920A: STZ.w $03C2,X\n\n #_09920D: STZ.w $0C54,X\n\n #_099210: LDA.b #$01\n #_099212: STA.w $0112\n\n #_099215: INC A\n #_099216: STA.w $03B1,X\n\n #_099219: INC A\n #_09921A: STA.w $039F,X\n\n #_09921D: LDA.b #$7F\n #_09921F: STA.w $0C22,X\n\n #_099222: LDA.b #$28\n #_099224: STA.l $7F5808\n\n #_099228: LDA.b #$09\n #_09922A: STA.w $0AAA\n\n #_09922D: LDA.b #$40\n #_09922F: STA.l $7F5812\n\n #_099233: JSL Link_CalculateSFXPan\n #_099237: ORA.b #$26 ; SFX3.26\n #_099239: STA.w $012F\n\n #_09923C: LDA.b #$00\n #_09923E: STA.l $7F5800\n\n #_099242: LDA.b #$08\n #_099244: STA.l $7F5801\n\n #_099248: LDA.b #$10\n #_09924A: STA.l $7F5802\n\n #_09924E: LDA.b #$18\n #_099250: STA.l $7F5803\n\n #_099254: LDA.b #$20\n #_099256: STA.l $7F5804\n\n #_09925A: LDA.b #$28\n #_09925C: STA.l $7F5805\n\n #_099260: LDA.b #$30\n #_099262: STA.l $7F5806\n\n #_099266: LDA.b #$38\n #_099268: STA.l $7F5807\n\n; ---------------------------------------------------------\n\n #_09926C: REP #$20\n\n #_09926E: LDA.b $20\n #_099270: STA.l $7F5813\n\n #_099274: LDA.w #$FFF0\n #_099277: CLC\n #_099278: ADC.b $E8\n #_09927A: STA.b $00\n\n #_09927C: AND.w #$00F0\n #_09927F: STA.l $7F580C\n\n #_099283: LDA.b $22\n #_099285: STA.b $02\n #_099287: STA.l $7F5815\n\n #_09928B: CLC\n #_09928C: ADC.w #$0008\n #_09928F: STA.l $7F580E\n\n #_099293: LDA.b $20\n #_099295: SEC\n #_099296: SBC.w #$0010\n\n #_099299: STA.l $7F580A\n #_09929D: CLC\n #_09929E: ADC.w #$0024\n #_0992A1: STA.l $7F5810\n\n #_0992A5: SEP #$20\n\n #_0992A7: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_0992AA: PLB\n\n #_0992AB: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_VictorySpin", + "code": "AncillaAdd_VictorySpin:\n #_0992AC: PHB\n #_0992AD: PHK\n #_0992AE: PLB\n\n #_0992AF: LDA.l $7EF359\n #_0992B3: INC A\n #_0992B4: AND.b #$FE\n #_0992B6: BEQ .exit\n\n #_0992B8: LDY.b #$00\n #_0992BA: LDA.b #$3B ; ANCILLA 3B\n #_0992BC: JSR Ancilla_AddAncilla\n #_0992BF: BCS .exit\n\n #_0992C1: STZ.w $0C5E,X\n\n #_0992C4: LDA.b #$01\n #_0992C6: STA.w $039F,X\n\n #_0992C9: LDA.b #$22\n #_0992CB: STA.w $03B1,X\n\n.exit\n #_0992CE: PLB\n\n #_0992CF: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_MagicPowder", + "code": "AncillaAdd_MagicPowder:\n #_0992F0: PHB\n #_0992F1: PHK\n #_0992F2: PLB\n\n #_0992F3: JSR Ancilla_AddAncilla\n #_0992F6: BCC .free_slot\n\n #_0992F8: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0992FB: STZ.w $0C5E,X\n #_0992FE: STZ.w $029E,X\n\n #_099301: LDA.b #$01\n #_099303: STA.w $03B1,X\n\n #_099306: LDA.b #$50\n #_099308: STA.w $0109\n\n #_09930B: PHX\n\n #_09930C: LDY.b $2F\n\n #_09930E: TYA\n #_09930F: LSR A\n #_099310: STA.w $0C72,X\n\n #_099313: TAX\n\n #_099314: LDA.l PowderDraw_group_offset,X\n #_099318: TAX\n\n #_099319: LDA.l PowderDraw_anim_step,X\n\n #_09931D: PLX\n\n #_09931E: STA.w $03C2,X\n\n; ---------------------------------------------------------\n\n #_099321: LDY.b $2F\n\n #_099323: REP #$20\n\n #_099325: LDA.b $20\n #_099327: CLC\n #_099328: ADC.w .tile_check_offset_y,Y\n #_09932B: STA.b $04\n\n #_09932D: LDA.b $22\n #_09932F: CLC\n #_099330: ADC.w .tile_check_offset_x,Y\n #_099333: STA.b $06\n\n #_099335: SEP #$20\n\n #_099337: LDA.b $04\n #_099339: STA.w $0BFA,X\n\n #_09933C: LDA.b $05\n #_09933E: STA.w $0C0E,X\n\n #_099341: LDA.b $06\n #_099343: STA.w $0C04,X\n\n #_099346: LDA.b $07\n #_099348: STA.w $0C18,X\n\n #_09934B: JSL Ancilla_CheckTileCollision_long\n\n #_09934F: LDA.w $03E4,X\n #_099352: STA.w $0333\n\n; ---------------------------------------------------------\n\n #_099355: LDA.w $0304\n #_099358: CMP.b #$09\n #_09935A: BNE .not_lamp\n\n #_09935C: STZ.w $0C4A,X\n\n #_09935F: BRA .exit\n\n.not_lamp\n #_099361: LDY.b $2F\n\n #_099363: REP #$20\n\n #_099365: LDA.b $20\n #_099367: CLC\n #_099368: ADC.w .offset_y,Y\n #_09936B: STA.b $00\n\n #_09936D: LDA.b $22\n #_09936F: CLC\n #_099370: ADC.w .offset_x,Y\n #_099373: STA.b $02\n\n #_099375: SEP #$20\n\n #_099377: JSL Link_CalculateSFXPan\n #_09937B: ORA.b #$0D ; SFX2.0D\n #_09937D: STA.w $012E\n\n #_099380: JMP.w AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_099383: PLB\n\n #_099384: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_WallTapSpark", + "code": "AncillaAdd_WallTapSpark:\n #_099395: PHB\n #_099396: PHK\n #_099397: PLB\n\n #_099398: JSR Ancilla_AddAncilla\n #_09939B: BCS .exit\n\n #_09939D: LDA.b #$05\n #_09939F: STA.w $0C5E,X\n\n #_0993A2: LDA.b #$01\n #_0993A4: STA.w $03B1,X\n\n #_0993A7: LDY.b $2F\n\n #_0993A9: REP #$20\n\n #_0993AB: LDA.b $20\n #_0993AD: CLC\n #_0993AE: ADC.w .offset_y,Y\n #_0993B1: STA.b $00\n\n #_0993B3: LDA.b $22\n #_0993B5: CLC\n #_0993B6: ADC.w .offset_x,Y\n #_0993B9: STA.b $02\n\n #_0993BB: SEP #$20\n\n #_0993BD: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_0993C0: PLB\n\n #_0993C1: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SwordSwingSparkle", + "code": "AncillaAdd_SwordSwingSparkle:\n #_0993C2: PHB\n #_0993C3: PHK\n #_0993C4: PLB\n\n #_0993C5: JSR Ancilla_AddAncilla\n #_0993C8: BCS .exit\n\n #_0993CA: STZ.w $0C5E,X\n\n #_0993CD: LDA.b #$01\n #_0993CF: STA.w $03B1,X\n\n #_0993D2: LDA.b $2F\n #_0993D4: LSR A\n #_0993D5: STA.w $0C72,X\n\n #_0993D8: REP #$20\n\n #_0993DA: LDA.b $20\n #_0993DC: STA.b $00\n\n #_0993DE: LDA.b $22\n #_0993E0: STA.b $02\n\n #_0993E2: SEP #$20\n\n #_0993E4: BRL AncillaInit_SetCoordsAndExit\n\n.exit\n #_0993E7: PLB\n\n #_0993E8: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_DashTremor", + "code": "AncillaAdd_DashTremor:\n #_0993F3: PHB\n #_0993F4: PHK\n #_0993F5: PLB\n\n #_0993F6: JSR AncillaAdd_CheckForPresence\n #_0993F9: BCS .exit\n\n #_0993FB: JSR Ancilla_AddAncilla\n #_0993FE: BCS .exit\n\n #_099400: LDA.b #$10\n #_099402: STA.w $0C5E,X\n\n #_099405: STZ.w $0385,X\n\n #_099408: LDA.b $2F\n #_09940A: LSR A\n #_09940B: TAY\n\n #_09940C: LDA.w .directional_data_offset,Y\n #_09940F: STA.w $0C72,X\n\n #_099412: TAY\n\n #_099413: REP #$20\n\n #_099415: LDA.b $20\n #_099417: SEC\n #_099418: SBC.b $E8\n #_09941A: STA.b $02\n\n #_09941C: LDA.b $22\n #_09941E: SEC\n #_09941F: SBC.b $E2\n #_099421: STA.b $00\n\n #_099423: SEP #$20\n\n #_099425: PHX\n\n #_099426: TYA\n #_099427: LSR A\n #_099428: TAX\n\n #_099429: LDA.w .threshold,X\n #_09942C: STA.b $06\n\n #_09942E: TYX\n\n #_09942F: LDY.b #$00\n\n #_099431: LDA.b $00,X\n #_099433: CMP.b $06\n #_099435: BCC .left_or_up\n\n #_099437: LDY.b #$02\n\n.left_or_up\n #_099439: PLX\n\n #_09943A: LDA.w .offset+0,Y\n #_09943D: STA.w $0BFA,X\n\n #_099440: LDA.w .offset+1,Y\n #_099443: STA.w $0C0E,X\n\n.exit\n #_099446: PLB\n\n #_099447: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BoomerangWallClink", + "code": "AncillaAdd_BoomerangWallClink:\n #_099478: PHB\n #_099479: PHK\n #_09947A: PLB\n\n #_09947B: LDA.w $0BFA,X\n #_09947E: STA.w $0399\n\n #_099481: LDA.w $0C0E,X\n #_099484: STA.w $039A\n\n #_099487: LDA.w $0C04,X\n #_09948A: STA.w $039B\n\n #_09948D: LDA.w $0C18,X\n #_099490: STA.w $039C\n\n; ---------------------------------------------------------\n\n #_099493: LDY.b #$01\n #_099495: LDA.b #$06 ; ANCILLA 06\n #_099497: JSR Ancilla_AddAncilla\n #_09949A: BCS EXIT_0994C4\n\n #_09949C: STZ.w $0C5E,X\n\n #_09949F: LDA.b #$01\n #_0994A1: STA.w $039F,X\n\n #_0994A4: LDY.w $039D\n\n #_0994A7: LDA.w WallClink_offset_index,Y\n #_0994AA: TAY\n\n #_0994AB: REP #$20\n\n #_0994AD: LDA.w $0399\n #_0994B0: CLC\n #_0994B1: ADC.w WallClink_offset_y,Y\n #_0994B4: STA.b $00\n\n #_0994B6: LDA.w $039B\n #_0994B9: CLC\n #_0994BA: ADC.w WallClink_offset_x,Y\n #_0994BD: STA.b $02\n\n #_0994BF: SEP #$20\n\n #_0994C1: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_0994C4:\n #_0994C4: PLB\n\n #_0994C5: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_HookshotWallClink", + "code": "AncillaAdd_HookshotWallClink:\n #_0994C6: PHB\n #_0994C7: PHK\n #_0994C8: PLB\n\n #_0994C9: STX.b $74\n\n #_0994CB: JSR Ancilla_AddAncilla\n #_0994CE: BCS EXIT_0994C4\n\n; ---------------------------------------------------------\n\n #_0994D0: STZ.w $0C5E,X\n\n #_0994D3: LDA.b #$01\n #_0994D5: STA.w $039F,X\n\n #_0994D8: PHX\n\n #_0994D9: LDX.b $74\n #_0994DB: JSR Ancilla_GetCoordinates\n\n #_0994DE: LDA.w $0C72,X\n #_0994E1: ASL A\n #_0994E2: TAY\n\n #_0994E3: REP #$20\n\n #_0994E5: LDA.b $00\n #_0994E7: CLC\n #_0994E8: ADC.w WallClink_offset_y,Y\n #_0994EB: STA.b $00\n\n #_0994ED: LDA.b $02\n #_0994EF: CLC\n #_0994F0: ADC.w WallClink_offset_x,Y\n #_0994F3: STA.b $02\n\n #_0994F5: SEP #$20\n\n #_0994F7: PLX\n\n #_0994F8: BRL AncillaInit_SetCoordsAndExit\n\n; =========================================================\n\n#EXIT_099587_bounce:\n #_0994FB: BRL EXIT_099587\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Duck_take_off", + "code": "AncillaAdd_Duck_take_off:\n #_0994FE: PHB\n #_0994FF: PHK\n #_099500: PLB\n\n #_099501: JSR AncillaAdd_CheckForPresence\n #_099504: BCS EXIT_099587_bounce\n\n #_099506: JSR Ancilla_AddAncilla\n #_099509: BCS EXIT_099587_bounce\n\n; ---------------------------------------------------------\n\n #_09950B: LDA.b #$78\n #_09950D: STA.w $0C68,X\n\n #_099510: STZ.w $0385,X\n #_099513: STZ.w $0294,X\n #_099516: STZ.w $029E,X\n\n #_099519: LDY.b #$00\n\n #_09951B: BRA AncillaAdd_ArbitraryDuck\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Duck_drop_off", + "code": "AncillaAdd_Duck_drop_off:\n #_09951D: PHB\n #_09951E: PHK\n #_09951F: PLB\n\n #_099520: JSR AncillaAdd_CheckForPresence\n #_099523: BCS EXIT_099587\n\n #_099525: JSR Ancilla_AddAncilla\n #_099528: BCS EXIT_099587\n\n #_09952A: LDA.b #$00 ; LINKSTATE 00\n #_09952C: STA.b $5D\n\n #_09952E: STZ.b $5E\n\n #_099530: LDA.b $3A\n #_099532: AND.b #$7E\n #_099534: STA.b $3A\n\n #_099536: STZ.b $3C\n #_099538: STZ.b $3D\n\n #_09953A: LDA.b $50\n #_09953C: AND.b #$FE\n #_09953E: STA.b $50\n\n #_099540: LDA.b #$01\n #_099542: STA.w $0385,X\n\n #_099545: LDA.b #$28\n #_099547: STA.w $0294,X\n\n #_09954A: LDA.b #$CD\n #_09954C: STA.w $029E,X\n\n #_09954F: LDY.b #$02\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ArbitraryDuck", + "code": "AncillaAdd_ArbitraryDuck:\n #_099551: TYA\n #_099552: STA.w $0C54,X\n\n #_099555: STZ.w $0C22,X\n #_099558: STZ.w $0C5E,X\n\n #_09955B: LDA.b #$01\n #_09955D: STA.w $03B1,X\n\n #_099560: LDA.b #$38\n #_099562: STA.w $0C2C,X\n\n #_099565: LDA.b #$03\n #_099567: STA.w $039F,X\n\n #_09956A: STZ.w $0380,X\n #_09956D: STZ.w $0394,X\n\n #_099570: REP #$20\n\n #_099572: LDA.b $20\n #_099574: SEC\n #_099575: SBC.w #$0008\n #_099578: STA.b $00\n\n #_09957A: LDA.w #$FFF0\n #_09957D: CLC\n #_09957E: ADC.b $E2\n #_099580: STA.b $02\n\n #_099582: SEP #$20\n\n #_099584: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_099587:\n #_099587: PLB\n\n #_099588: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_QuakeSpell", + "code": "AncillaAdd_QuakeSpell:\n #_099589: PHB\n #_09958A: PHK\n #_09958B: PLB\n\n #_09958C: JSR Ancilla_AddAncilla\n #_09958F: BCC .free_slot\n\n #_099591: BRL .exit\n\n.free_slot\n #_099594: STZ.w $0C54,X\n #_099597: STZ.w $0C5E,X\n\n #_09959A: LDA.b #$0D\n #_09959C: STA.w $0AAA\n\n #_09959F: LDA.b #$35 ; SFX2.35\n #_0995A1: STA.w $012E\n\n #_0995A4: LDA.b #$00\n #_0995A6: STA.l $7F5805\n #_0995AA: STA.l $7F5806\n #_0995AE: STA.l $7F5807\n #_0995B2: STA.l $7F5808\n #_0995B6: STA.l $7F5809\n #_0995BA: STA.l $7F580A\n\n #_0995BE: INC A\n #_0995BF: STA.l $7F5800\n #_0995C3: STA.l $7F5801\n #_0995C7: STA.l $7F5802\n #_0995CB: STA.l $7F5803\n #_0995CF: STA.l $7F5804\n\n #_0995D3: STA.w $0112\n\n #_0995D6: INC A\n #_0995D7: STA.w $0C68,X\n\n #_0995DA: REP #$20\n\n #_0995DC: LDA.b $20\n #_0995DE: CLC\n #_0995DF: ADC.w #$001A\n #_0995E2: STA.l $7F580B\n\n #_0995E6: LDA.b $22\n #_0995E8: CLC\n #_0995E9: ADC.w #$0008\n #_0995EC: STA.l $7F580D\n\n #_0995F0: LDA.w #$0003\n #_0995F3: STA.l $7F581E\n\n #_0995F7: SEP #$20\n\n.exit\n #_0995F9: PLB\n\n #_0995FA: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SpinAttackInitSpark", + "code": "AncillaAdd_SpinAttackInitSpark:\n #_09960B: PHB\n #_09960C: PHK\n #_09960D: PLB\n\n #_09960E: STX.b $72\n\n #_099610: JSR Ancilla_AddAncilla\n #_099613: BCS .exit\n\n; ---------------------------------------------------------\n\n #_099615: STX.b $00\n\n #_099617: LDX.b #$04\n\n.check_next\n #_099619: LDA.w $0C4A,X\n #_09961C: CMP.b #$31 ; ANCILLA 31\n #_09961E: BNE .not_byrna_spark\n\n #_099620: STZ.w $0C4A,X\n\n.not_byrna_spark\n #_099623: DEX\n #_099624: BPL .check_next\n\n; ---------------------------------------------------------\n\n #_099626: LDX.b $00\n #_099628: STZ.w $0C5E,X\n\n #_09962B: LDY.b #$04\n\n #_09962D: LDA.b $72\n #_09962F: STA.w $0C54,X\n #_099632: BEQ .useless\n\n #_099634: LDY.b #$04\n\n.useless\n #_099636: TYA\n #_099637: STA.w $0C68,X\n\n #_09963A: LDA.b #$03\n #_09963C: STA.w $03B1,X\n\n #_09963F: LDY.b $2F\n\n #_099641: REP #$20\n\n #_099643: LDA.b $20\n #_099645: CLC\n #_099646: ADC.w .offset_y,Y\n #_099649: STA.b $00\n\n #_09964B: LDA.b $22\n #_09964D: CLC\n #_09964E: ADC.w .offset_x,Y\n #_099651: STA.b $02\n\n #_099653: SEP #$20\n\n #_099655: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_099658: PLB\n\n #_099659: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaPanValues", + "code": "AncillaPanValues:\n #_09968A: db $80, $80, $80 ; left\n #_09968D: db $00, $00 ; middle\n #_09968F: db $40, $40, $40 ; right\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_BlastWall", + "code": "AncillaAdd_BlastWall:\n #_099692: PHB\n #_099693: PHK\n #_099694: PLB\n\n #_099695: LDA.b #$33 ; ANCILLA 33\n #_099697: STA.w $0C4A\n #_09969A: STA.w $0C4B\n\n #_09969D: STZ.w $0C4C\n #_0996A0: STZ.w $0C4D\n #_0996A3: STZ.w $0C4E\n #_0996A6: STZ.w $0C4F\n\n #_0996A9: STZ.w $0C5E\n #_0996AC: STZ.w $02EC\n\n #_0996AF: STZ.w $0308\n #_0996B2: STZ.b $50\n #_0996B4: STZ.w $0380\n\n; ---------------------------------------------------------\n\n #_0996B7: LDA.b $EE\n #_0996B9: STA.w $0C7C\n #_0996BC: STA.w $0C7D\n\n #_0996BF: LDA.w $0476\n #_0996C2: STA.w $03CA\n\n #_0996C5: LDA.b #$00\n #_0996C7: STA.l $7F0010\n #_0996CB: STA.l $7F0009\n #_0996CF: STA.l $7F0001\n #_0996D3: STA.l $7F0011\n\n #_0996D7: INC A\n #_0996D8: STA.l $7F0000\n #_0996DC: STA.w $0112\n\n #_0996DF: LDA.b #$03\n #_0996E1: STA.l $7F0008\n\n #_0996E5: LDA.l $7F001C\n #_0996E9: TAY\n\n #_0996EA: REP #$20\n\n #_0996EC: LDA.w .base_offset_y,Y\n #_0996EF: CLC\n #_0996F0: ADC.l $7F0018\n #_0996F4: STA.l $7F0018\n\n #_0996F8: LDA.w .base_offset_x,Y\n #_0996FB: CLC\n #_0996FC: ADC.l $7F001A\n #_099700: STA.l $7F001A\n\n #_099704: SEP #$20\n\n #_099706: LDY.b #$00\n\n #_099708: LDA.l $7F001C\n #_09970C: CMP.b #$04\n #_09970E: BCS .use_second_set\n\n #_099710: LDY.b #$10\n\n.use_second_set\n #_099712: LDX.b #$06\n\n; ---------------------------------------------------------\n\n.next\n #_099714: REP #$20\n\n #_099716: LDA.w .offset_xy+0,Y\n #_099719: CLC\n #_09971A: ADC.l $7F0018\n #_09971E: STA.l $7F0020,X\n\n #_099722: LDA.w .offset_xy+2,Y\n #_099725: CLC\n #_099726: ADC.l $7F001A\n #_09972A: STA.l $7F0030,X\n\n #_09972E: SEC\n #_09972F: SBC.b $E2\n #_099731: STA.b $00\n\n #_099733: SEP #$20\n\n #_099735: LDA.b $01\n #_099737: BNE .to_next\n\n #_099739: PHY\n #_09973A: PHX\n\n #_09973B: LDA.b $00\n #_09973D: LSR A\n #_09973E: LSR A\n #_09973F: LSR A\n #_099740: LSR A\n #_099741: LSR A\n #_099742: TAX\n\n #_099743: LDA.w AncillaPanValues,X\n #_099746: ORA.b #$0C ; SFX2.0C\n #_099748: STA.w $012E\n\n #_09974B: PLX\n #_09974C: PLY\n\n.to_next\n #_09974D: INY\n #_09974E: INY\n #_09974F: INY\n #_099750: INY\n\n #_099751: DEX\n #_099752: DEX\n #_099753: BPL .next\n\n; ---------------------------------------------------------\n\n #_099755: PLB\n\n #_099756: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SwordChargeSparkle", + "code": "AncillaAdd_SwordChargeSparkle:\n #_099757: PHB\n #_099758: PHK\n #_099759: PLB\n\n #_09975A: STX.b $72\n\n #_09975C: LDX.b #$09\n\n.check_next\n #_09975E: LDA.w $0C4A,X\n #_099761: BEQ .free_slot\n\n #_099763: DEX\n #_099764: BPL .check_next\n\n #_099766: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_099769: LDA.b #$3C ; ANCILLA 3C\n #_09976B: STA.w $0C4A,X\n\n #_09976E: LDA.b $EE\n #_099770: STA.w $0C7C,X\n\n #_099773: STZ.w $0C5E,X\n\n #_099776: LDA.b #$04\n #_099778: STA.w $0C68,X\n\n #_09977B: JSL GetRandomNumber\n #_09977F: STA.b $08\n\n #_099781: PHX\n\n #_099782: LDX.b $72\n\n #_099784: JSR Ancilla_GetCoordinates\n\n #_099787: STZ.b $0B\n\n #_099789: LDA.w $029E,X\n\n #_09978C: CMP.b #$F8\n #_09978E: BCC .dont_zero\n\n #_099790: LDA.b #$00\n\n.dont_zero\n #_099792: STA.b $0A\n\n #_099794: PLX\n\n #_099795: LDA.b $08\n #_099797: AND.b #$0F\n #_099799: STA.b $04\n #_09979B: STZ.b $05\n\n #_09979D: LDA.b $08\n #_09979F: LSR A\n #_0997A0: LSR A\n #_0997A1: LSR A\n #_0997A2: LSR A\n #_0997A3: LSR A\n #_0997A4: STA.b $06\n #_0997A6: STZ.b $07\n\n #_0997A8: REP #$20\n\n #_0997AA: LDA.b $0A\n #_0997AC: EOR.w #$FFFF\n #_0997AF: INC A\n #_0997B0: CLC\n #_0997B1: ADC.b $00\n #_0997B3: CLC\n #_0997B4: ADC.w #$FFFE\n #_0997B7: CLC\n #_0997B8: ADC.b $04\n #_0997BA: STA.b $00\n\n #_0997BC: LDA.b $02\n #_0997BE: CLC\n #_0997BF: ADC.b $06\n #_0997C1: CLC\n #_0997C2: ADC.w #$0002\n #_0997C5: STA.b $02\n\n #_0997C7: SEP #$20\n\n #_0997C9: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_0997CC: PLB\n\n #_0997CD: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_SilverArrowSparkle", + "code": "AncillaAdd_SilverArrowSparkle:\n #_0997DE: PHB\n #_0997DF: PHK\n #_0997E0: PLB\n\n #_0997E1: STX.b $72\n\n #_0997E3: LDX.b #$09\n\n.next_slot\n #_0997E5: LDA.w $0C4A,X\n #_0997E8: BEQ .free_slot\n\n #_0997EA: DEX\n #_0997EB: BPL .next_slot\n\n #_0997ED: BRL EXIT_099849\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0997F0: LDA.b #$3C ; ANCILLA 3C\n #_0997F2: STA.w $0C4A,X\n\n #_0997F5: STZ.w $0C5E,X\n\n #_0997F8: LDA.b #$04\n #_0997FA: STA.w $0C68,X\n\n #_0997FD: LDA.b $EE\n #_0997FF: STA.w $0C7C,X\n\n #_099802: JSL GetRandomNumber\n #_099806: STA.b $08\n\n #_099808: PHX\n\n #_099809: LDX.b $72\n\n #_09980B: JSR Ancilla_GetCoordinates\n\n #_09980E: STZ.b $0B\n\n #_099810: LDA.b $08\n #_099812: AND.b #$07\n #_099814: STA.b $04\n #_099816: STZ.b $05\n\n #_099818: LDA.b $08\n #_09981A: AND.b #$70\n #_09981C: LSR A\n #_09981D: LSR A\n #_09981E: LSR A\n #_09981F: LSR A\n #_099820: STA.b $06\n #_099822: STZ.b $07\n\n #_099824: LDA.w $0C72,X\n #_099827: AND.b #$03\n #_099829: ASL A\n #_09982A: TAY\n\n #_09982B: PLX\n\n #_09982C: REP #$20\n\n #_09982E: LDA.b $00\n #_099830: CLC\n #_099831: ADC.w .offset_y,Y\n #_099834: CLC\n #_099835: ADC.b $04\n #_099837: STA.b $00\n\n #_099839: LDA.b $02\n #_09983B: CLC\n #_09983C: ADC.w .offset_x,Y\n #_09983F: CLC\n #_099840: ADC.b $06\n #_099842: STA.b $02\n\n #_099844: SEP #$20\n\n #_099846: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n#EXIT_099849:\n #_099849: PLB\n\n #_09984A: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_IceRodShot", + "code": "AncillaAdd_IceRodShot:\n #_099863: PHB\n #_099864: PHK\n #_099865: PLB\n\n #_099866: JSR Ancilla_AddAncilla\n #_099869: BCC .free_slot\n\n #_09986B: LDX.b #$00\n #_09986D: JSL Refund_Magic\n\n #_099871: BRA EXIT_099849\n\n; ---------------------------------------------------------\n\n.free_slot\n #_099873: JSL Link_CalculateSFXPan\n #_099877: ORA.b #$0F ; SFX2.0F\n #_099879: STA.w $012E\n\n #_09987C: STZ.w $0C54,X\n\n #_09987F: STZ.w $03C2,X\n\n #_099882: LDA.b #$FF\n #_099884: STA.w $0C5E,X\n\n #_099887: LDA.b #$01\n #_099889: STA.w $0385,X\n\n #_09988C: LDA.b #$03\n #_09988E: STA.w $03B1,X\n\n #_099891: LDA.b #$06\n #_099893: STA.w $039F,X\n\n; ---------------------------------------------------------\n\n #_099896: LDA.b $2F\n #_099898: LSR A\n #_099899: STA.w $0C72,X\n\n #_09989C: TAY\n\n #_09989D: LDA.w .speed_y,Y\n #_0998A0: STA.w $0C22,X\n\n #_0998A3: LDA.w .speed_x,Y\n #_0998A6: STA.w $0C2C,X\n\n #_0998A9: PHY\n #_0998AA: PHX\n\n #_0998AB: JSL Ancilla_CheckInitialTile_A\n\n #_0998AF: PLX\n #_0998B0: PLY\n\n #_0998B1: BCS .explode\n\n; ---------------------------------------------------------\n\n #_0998B3: LDY.b $2F\n\n #_0998B5: REP #$20\n\n #_0998B7: LDA.b $20\n #_0998B9: CLC\n #_0998BA: ADC.w .offset_y,Y\n #_0998BD: STA.b $00\n\n #_0998BF: SEC\n #_0998C0: SBC.b $E8\n #_0998C2: STA.b $04\n\n #_0998C4: LDA.b $22\n #_0998C6: CLC\n #_0998C7: ADC.w .offset_x,Y\n #_0998CA: STA.b $02\n\n #_0998CC: SEC\n #_0998CD: SBC.b $E2\n #_0998CF: STA.b $06\n\n #_0998D1: SEP #$20\n\n #_0998D3: LDA.b $05\n #_0998D5: ORA.b $07\n #_0998D7: BEQ .onscreen\n\n #_0998D9: STZ.w $0C4A,X\n\n #_0998DC: BRA .exit\n\n.onscreen\n #_0998DE: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_0998E1: PLB\n\n #_0998E2: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Splash", + "code": "AncillaAdd_Splash:\n #_0998FC: PHB\n #_0998FD: PHK\n #_0998FE: PLB\n\n #_0998FF: JSR Ancilla_AddAncilla\n #_099902: BCS .exit\n\n #_099904: JSL Link_CalculateSFXPan\n #_099908: ORA.b #$24 ; SFX2.24\n #_09990A: STA.w $012E\n\n #_09990D: STZ.w $0C5E,X\n\n #_099910: LDA.b #$02\n #_099912: STA.w $03B1,X\n\n #_099915: LDA.b $1B\n #_099917: BEQ .dont_reset_layer\n\n #_099919: LDA.w $0345\n #_09991C: BNE .dont_reset_layer\n\n #_09991E: STZ.b $EE\n\n.dont_reset_layer\n #_099920: REP #$20\n\n #_099922: LDA.b $20\n #_099924: CLC\n #_099925: ADC.w #$0008\n #_099928: STA.b $00\n\n #_09992A: LDA.b $22\n #_09992C: CLC\n #_09992D: ADC.w #$FFF5\n #_099930: STA.b $02\n\n #_099932: SEP #$20\n\n #_099934: JSR Ancilla_SetCoordinates\n\n #_099937: CLC\n\n.exit\n #_099938: PLB\n\n #_099939: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_GraveStone", + "code": "AncillaAdd_GraveStone:\n #_0999E9: PHB\n #_0999EA: PHK\n #_0999EB: PLB\n\n #_0999EC: JSR Ancilla_AddAncilla\n #_0999EF: BCC .free_slot\n\n #_0999F1: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0999F4: REP #$30\n\n #_0999F6: LDY.b $20\n #_0999F8: TYA\n\n #_0999F9: AND.w #$000F\n #_0999FC: CMP.w #$0007\n #_0999FF: BCS .round_tile\n\n #_099A01: TYA\n\n #_099A02: BRA .clip16px\n\n.round_tile\n #_099A04: TYA\n #_099A05: CLC\n #_099A06: ADC.w #$0010\n\n; ---------------------------------------------------------\n\n.clip16px\n #_099A09: AND.w #$FFF0\n #_099A0C: STA.b $00\n\n; ---------------------------------------------------------\n\n #_099A0E: LDY.w #$000E\n\n.next_y\n #_099A11: LDA.b $00\n #_099A13: CMP.w .position_y,Y\n #_099A16: BEQ .y_found\n\n #_099A18: DEY\n #_099A19: DEY\n #_099A1A: BPL .next_y\n\n #_099A1C: BRA .terminate\n\n; ---------------------------------------------------------\n\n.y_found\n #_099A1E: TYA\n #_099A1F: LSR A\n #_099A20: TAY\n\n #_099A21: LDA.w .offset_data_x+1,Y\n #_099A24: AND.w #$00FF\n #_099A27: STA.b $00\n\n #_099A29: LDA.w .offset_data_x+0,Y\n #_099A2C: AND.w #$00FF\n #_099A2F: TAY\n\n.next_x\n #_099A30: LDA.w .position_x,Y\n #_099A33: CMP.b $22\n #_099A35: BCS .proceed_to_next\n\n #_099A37: CLC\n #_099A38: ADC.w #$000F\n #_099A3B: CMP.b $22\n #_099A3D: BCC .proceed_to_next\n\n #_099A3F: CPY.w #$001A\n #_099A42: BNE .not_dashable\n\n #_099A44: LDA.w $0372\n #_099A47: AND.w #$00FF\n #_099A4A: BEQ .terminate\n\n #_099A4C: BRA .succeed\n\n; ---------------------------------------------------------\n\n.not_dashable\n #_099A4E: LDA.w $0372\n #_099A51: AND.w #$00FF\n #_099A54: BNE .terminate\n\n #_099A56: BRA .succeed\n\n; ---------------------------------------------------------\n\n.proceed_to_next\n #_099A58: INY\n #_099A59: INY\n #_099A5A: CPY.b $00\n #_099A5C: BNE .next_x\n\n; ---------------------------------------------------------\n\n.terminate\n #_099A5E: SEP #$30\n\n #_099A60: STZ.w $0C4A,X\n\n #_099A63: BRL .exit\n\n; ---------------------------------------------------------\n\n.succeed\n #_099A66: LDA.w .gfx_write_addr,Y\n #_099A69: STA.w $0698\n\n #_099A6C: SEC\n #_099A6D: SBC.w #$0080\n #_099A70: STA.b $72\n\n #_099A72: LDA.w .tile_revealed,Y\n #_099A75: STA.w $0692\n\n #_099A78: CMP.w #$0058\n #_099A7B: BEQ .hole\n\n #_099A7D: CMP.w #$0038\n #_099A80: BNE .not_stairs\n\n; ---------------------------------------------------------\n\n #_099A82: SEP #$30\n\n #_099A84: PHX\n\n #_099A85: LDX.b $8A\n\n #_099A87: LDA.l $7EF280,X\n #_099A8B: ORA.b #$20\n #_099A8D: STA.l $7EF280,X\n\n #_099A91: PLX\n\n; ---------------------------------------------------------\n\n.hole\n #_099A92: SEP #$30\n\n #_099A94: JSL Link_CalculateSFXPan\n #_099A98: ORA.b #$1B ; SFX3.1B\n #_099A9A: STA.w $012F\n\n; ---------------------------------------------------------\n\n.not_stairs\n #_099A9D: SEP #$30\n\n #_099A9F: LDA.b $72\n #_099AA1: STA.w $03BA,X\n\n #_099AA4: LDA.b $73\n #_099AA6: STA.w $03B6,X\n\n #_099AA9: PHY\n #_099AAA: PHX\n\n #_099AAB: JSL Overworld_DoMapUpdate32x32_long\n\n #_099AAF: PLX\n #_099AB0: PLY\n\n; ---------------------------------------------------------\n\n #_099AB1: REP #$30\n\n #_099AB3: TYA\n #_099AB4: AND.w #$00FF\n #_099AB7: TAY\n\n #_099AB8: LDA.w .tilemap_y,Y\n #_099ABB: CLC\n #_099ABC: ADC.w #$FFFE\n #_099ABF: STA.b $00\n\n #_099AC1: CLC\n #_099AC2: ADC.w #$FFF0\n #_099AC5: STA.b $04\n\n #_099AC7: LDA.w .tilemap_x,Y\n #_099ACA: STA.b $02\n\n; ---------------------------------------------------------\n\n #_099ACC: SEP #$30\n\n #_099ACE: LDA.w $012F\n #_099AD1: AND.b #$3F\n #_099AD3: CMP.b #$1B ; SFX3.1B\n #_099AD5: BEQ .dont_overwrite_sfx\n\n #_099AD7: JSL Link_CalculateSFXPan\n #_099ADB: ORA.b #$22 ; SFX2.22\n #_099ADD: STA.w $012E\n\n.dont_overwrite_sfx\n #_099AE0: LDA.b #$04\n #_099AE2: STA.b $48\n\n #_099AE4: LDA.b #$01\n #_099AE6: STA.w $03E9\n\n #_099AE9: LDA.b $04\n #_099AEB: STA.w $038A,X\n\n #_099AEE: LDA.b $05\n #_099AF0: STA.w $038F,X\n\n #_099AF3: BRL AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_099AF6: PLB\n\n #_099AF7: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_Hookshot", + "code": "AncillaAdd_Hookshot:\n #_099B10: PHB\n #_099B11: PHK\n #_099B12: PLB\n\n #_099B13: JSR Ancilla_AddAncilla\n #_099B16: BCS .exit\n\n #_099B18: LDA.b #$03\n #_099B1A: STA.w $03B1,X\n\n #_099B1D: STZ.w $0C5E,X\n #_099B20: STZ.w $0C54,X\n #_099B23: STZ.w $0385,X\n\n #_099B26: STZ.w $037E\n #_099B29: STX.w $039D\n\n #_099B2C: STZ.w $0380,X\n\n #_099B2F: LDA.b #$FF\n #_099B31: STA.w $0394,X\n\n #_099B34: STZ.w $03A4,X\n #_099B37: STZ.w $0C68,X\n\n #_099B3A: LDA.b $2F\n #_099B3C: LSR A\n #_099B3D: STA.w $0C72,X\n\n #_099B40: TAY\n\n #_099B41: LDA.w .speed_y,Y\n #_099B44: STA.w $0C22,X\n\n #_099B47: LDA.w .speed_x,Y\n #_099B4A: STA.w $0C2C,X\n\n #_099B4D: LDY.b $2F\n\n #_099B4F: REP #$20\n\n #_099B51: LDA.b $20\n #_099B53: CLC\n #_099B54: ADC.w .offset_y,Y\n #_099B57: STA.b $00\n\n #_099B59: LDA.b $22\n #_099B5B: CLC\n #_099B5C: ADC.w .offset_x,Y\n #_099B5F: STA.b $02\n\n #_099B61: SEP #$20\n\n #_099B63: JMP.w AncillaInit_SetCoordsAndExit\n\n; ---------------------------------------------------------\n\n.exit\n #_099B66: PLB\n\n #_099B67: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_WaterfallSplash", + "code": "AncillaAdd_WaterfallSplash:\n #_099B68: PHB\n #_099B69: PHK\n #_099B6A: PLB\n\n #_099B6B: LDY.b #$04\n #_099B6D: LDA.b #$41 ; ANCILLA 41\n #_099B6F: JSR AncillaAdd_CheckForPresence\n #_099B72: BCS EXIT_099B81\n\n #_099B74: JSR Ancilla_AddAncilla\n #_099B77: BCS EXIT_099B81\n\n #_099B79: LDA.b #$02\n #_099B7B: STA.w $0C68,X\n\n #_099B7E: STZ.w $0C5E,X\n\n; ---------------------------------------------------------\n\n#EXIT_099B81:\n #_099B81: PLB\n\n #_099B82: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_GTCutscene", + "code": "AncillaAdd_GTCutscene:\n #_099B83: PHB\n #_099B84: PHK\n #_099B85: PLB\n\n #_099B86: LDA.w $0308\n #_099B89: AND.b #$80\n #_099B8B: ORA.b $4D\n #_099B8D: BNE EXIT_099B81\n\n #_099B8F: LDA.l $7EF37A\n #_099B93: AND.b #$7F\n #_099B95: CMP.b #$7F\n #_099B97: BNE EXIT_099B81\n\n #_099B99: LDA.l $7EF2C3\n #_099B9D: AND.b #$20\n #_099B9F: BNE EXIT_099B81\n\n #_099BA1: JSL Ancilla_TerminateSparkleObjects\n\n #_099BA5: LDY.b #$04\n #_099BA7: LDA.b #$43 ; ANCILLA 43\n #_099BA9: JSR AncillaAdd_CheckForPresence\n #_099BAC: BCS EXIT_099B81\n\n #_099BAE: JSR Ancilla_AddAncilla\n #_099BB1: BCS EXIT_099B81\n\n; ---------------------------------------------------------\n\n #_099BB3: PHX\n #_099BB4: LDX.b #$0F\n\n.next_sprite\n #_099BB6: LDA.w $0E20,X\n #_099BB9: CMP.b #$37 ; SPRITE 37\n #_099BBB: BNE .skip_sprite\n\n #_099BBD: STZ.w $0DD0,X\n\n.skip_sprite\n #_099BC0: DEX\n #_099BC1: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_099BC3: LDX.b #$17\n #_099BC5: LDA.b #$FF\n\n.next_clear\n #_099BC7: STA.l $7F5837,X\n\n #_099BCB: DEX\n #_099BCC: BPL .next_clear\n\n; ---------------------------------------------------------\n\n #_099BCE: LDA.b #$28\n #_099BD0: STA.b $72\n\n #_099BD2: JSL WriteTo4BPPBuffer_item_gfx\n\n #_099BD6: LDA.b #$04\n #_099BD8: STA.w $0AB1\n\n #_099BDB: LDA.b #$02\n #_099BDD: STA.w $0AA9\n\n #_099BE0: JSL Palettes_Load_SpriteEnvironment_Underworld\n\n #_099BE4: INC.b $15\n\n #_099BE6: PLX\n\n #_099BE7: LDA.b #$01\n #_099BE9: STA.w $02E4\n\n #_099BEC: STZ.w $0C36,X\n #_099BEF: STZ.w $0C40,X\n #_099BF2: STZ.w $0C54,X\n\n #_099BF5: LDA.b #$F0\n #_099BF7: STA.l $7F5812\n\n #_099BFB: LDA.b #$00\n #_099BFD: STA.l $7F5800\n #_099C01: STA.l $7F5808\n\n #_099C05: LDA.b #$0A\n #_099C07: STA.l $7F5801\n\n #_099C0B: LDA.b #$16\n #_099C0D: STA.l $7F5802\n\n #_099C11: LDA.b #$20\n #_099C13: STA.l $7F5803\n\n #_099C17: LDA.b #$2A\n #_099C19: STA.l $7F5804\n\n #_099C1D: LDA.b #$36\n #_099C1F: STA.l $7F5805\n\n #_099C23: REP #$20\n\n #_099C25: LDA.b $20\n #_099C27: CLC\n #_099C28: ADC.w #$FFF0\n #_099C2B: STA.b $00\n\n #_099C2D: LDA.b $22\n #_099C2F: STA.b $02\n\n #_099C31: SEP #$20\n\n #_099C33: BRL AncillaInit_SetCoordsAndExit\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_099C36", + "code": "UNREACHABLE_099C36:\n #_099C36: PLB\n\n #_099C37: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_DoorDebris", + "code": "AncillaAdd_DoorDebris:\n #_099C38: PHB\n #_099C39: PHK\n #_099C3A: PLB\n\n #_099C3B: LDY.b #$01\n #_099C3D: LDA.b #$08 ; ANCILLA 08\n #_099C3F: JSR Ancilla_AddAncilla\n #_099C42: BCS EXIT_099C4D\n\n #_099C44: STZ.w $03C2,X\n\n #_099C47: LDA.b #$07\n #_099C49: STA.w $03C0,X\n\n #_099C4C: CLC\n\n; ---------------------------------------------------------\n\n#EXIT_099C4D:\n #_099C4D: PLB\n\n #_099C4E: RTL", + "file": "bank_09.asm" + }, + { + "name": "FireRodShot_BecomeSkullWoodsFire", + "code": "FireRodShot_BecomeSkullWoodsFire:\n #_099C4F: PHB\n #_099C50: PHK\n #_099C51: PLB\n\n #_099C52: LDA.b $1B\n #_099C54: BNE EXIT_099C4D\n\n #_099C56: LDA.b $8A\n #_099C58: AND.b #$40\n #_099C5A: BEQ EXIT_099C4D\n\n #_099C5C: PHX\n\n #_099C5D: LDY.b #$34 ; ANCILLA 34\n #_099C5F: STY.w $0C4A\n #_099C62: STZ.w $0C4B\n #_099C65: STZ.w $0C4C\n #_099C68: STZ.w $0C4D\n #_099C6B: STZ.w $0C4E\n #_099C6E: STZ.w $0C4F\n\n #_099C71: STZ.w $035F\n\n #_099C74: TYX\n\n #_099C75: LDA.l AncillaObjectAllocation,X\n #_099C79: STA.w $0C90\n\n #_099C7C: PLX\n\n #_099C7D: LDA.b #$FD\n #_099C7F: STA.l $7F0000\n\n #_099C83: INC A\n #_099C84: STA.l $7F0001\n\n #_099C88: INC A\n #_099C89: STA.l $7F0002\n\n #_099C8D: LDA.b #$00\n #_099C8F: STA.l $7F0003\n #_099C93: STA.l $7F0010\n\n #_099C97: LDA.b #$05\n #_099C99: STA.l $7F0008\n #_099C9D: STA.l $7F0009\n #_099CA1: STA.l $7F000A\n #_099CA5: STA.l $7F000B\n\n #_099CA9: STA.w $03B1\n\n #_099CAC: REP #$20\n\n #_099CAE: LDA.w #$0100\n #_099CB1: STA.l $7F0018\n #_099CB5: STA.l $7F0026\n\n #_099CB9: LDA.w #$0098\n #_099CBC: STA.l $7F001A\n #_099CC0: STA.l $7F0036\n\n #_099CC4: SEP #$20\n\n #_099CC6: LDA.b #$02\n #_099CC8: STA.w $04C6\n\n #_099CCB: STZ.b $B0\n #_099CCD: STZ.b $C8\n\n #_099CCF: LDA.b $EE\n #_099CD1: STA.w $0C7C\n\n #_099CD4: LDA.w $0476\n #_099CD7: STA.w $03CA\n\n #_099CDA: STZ.w $0C5E\n #_099CDD: STZ.w $0C54\n\n #_099CE0: PLB\n\n #_099CE1: RTL", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_AddAncilla", + "code": "Ancilla_AddAncilla:\n #_099CE2: PHA\n\n #_099CE3: JSL Ancilla_CheckForAvailableSlot\n\n #_099CE7: PLA\n\n #_099CE8: TYX\n #_099CE9: BMI .fail\n\n #_099CEB: STA.w $0C4A,X\n\n #_099CEE: TAY\n\n #_099CEF: LDA.b $EE\n #_099CF1: STA.w $0C7C,X\n\n #_099CF4: LDA.w $0476\n #_099CF7: STA.w $03CA,X\n\n #_099CFA: STZ.w $0C22,X\n #_099CFD: STZ.w $0C2C,X\n\n #_099D00: STZ.w $0280,X\n #_099D03: STZ.w $028A,X\n\n #_099D06: PHX\n #_099D07: TYX\n\n #_099D08: LDA.l AncillaObjectAllocation,X\n #_099D0C: STA.b $0E\n\n #_099D0E: PLX\n\n #_099D0F: LDA.b $0E\n #_099D11: STA.w $0C90,X\n\n #_099D14: CLC\n\n #_099D15: RTS", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_AddAncilla_Bank09", + "code": "AncillaAdd_AddAncilla_Bank09:\n #_099D18: PHB\n #_099D19: PHK\n #_099D1A: PLB\n\n #_099D1B: JSR Ancilla_AddAncilla\n\n #_099D1E: PLB\n\n #_099D1F: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_CheckForPresence", + "code": "AncillaAdd_CheckForPresence:\n #_099D20: LDX.b #$05\n\n.next\n #_099D22: CMP.w $0C4A,X\n #_099D25: BEQ .match\n\n #_099D27: DEX\n #_099D28: BPL .next\n\n #_099D2A: CLC\n\n #_099D2B: RTS", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_CheckForPresence_long", + "code": "AncillaAdd_CheckForPresence_long:\n #_099D2E: PHB\n #_099D2F: PHK\n #_099D30: PLB\n\n #_099D31: JSR AncillaAdd_CheckForPresence\n\n #_099D34: PLB\n\n #_099D35: RTL", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ArrowFindSlot", + "code": "AncillaAdd_ArrowFindSlot:\n #_099D36: PHA\n\n #_099D37: INY\n #_099D38: STY.b $0E\n\n #_099D3A: LDY.b #$00\n #_099D3C: LDX.b #$04\n\n.next_tally\n #_099D3E: LDA.b #$0A ; ANCILLA 0A\n #_099D40: CMP.w $0C4A,X\n #_099D43: BNE .dont_tally\n\n #_099D45: INY\n\n.dont_tally\n #_099D46: DEX\n #_099D47: BPL .next_tally\n\n; ---------------------------------------------------------\n\n #_099D49: CPY.b $0E\n #_099D4B: BEQ .too_many\n\n #_099D4D: LDY.b #$04\n\n.next_free_check\n #_099D4F: LDA.w $0C4A,Y\n #_099D52: BEQ .replace_this\n\n #_099D54: DEY\n #_099D55: BPL .next_free_check\n\n #_099D57: BRA .replace_this\n\n; ---------------------------------------------------------\n\n.too_many\n #_099D59: DEC.w $03C4\n #_099D5C: BPL .keep_index\n\n.reset_index\n #_099D5E: LDA.b #$04\n #_099D60: STA.w $03C4\n\n.keep_index\n #_099D63: LDY.w $03C4\n\n #_099D66: LDA.w $0C4A,Y\n #_099D69: CMP.b #$0A ; ANCILLA 0A\n #_099D6B: BEQ .replace_this\n\n #_099D6D: DEY\n\n #_099D6E: BPL .too_many\n\n #_099D70: BRA .reset_index\n\n; ---------------------------------------------------------\n\n.replace_this\n #_099D72: PLA\n\n #_099D73: TYX\n #_099D74: BMI .failed\n\n #_099D76: STA.w $0C4A,X\n #_099D79: TAY\n\n #_099D7A: LDA.b $EE\n #_099D7C: STA.w $0C7C,X\n\n #_099D7F: LDA.w $0476\n #_099D82: STA.w $03CA,X\n\n #_099D85: STZ.w $0C22,X\n #_099D88: STZ.w $0C2C,X\n\n #_099D8B: STZ.w $0280,X\n #_099D8E: STZ.w $028A,X\n\n #_099D91: PHX\n\n #_099D92: TYX\n\n #_099D93: LDA.l AncillaObjectAllocation,X\n #_099D97: STA.b $0E\n\n #_099D99: PLX\n\n #_099D9A: LDA.b $0E\n #_099D9C: STA.w $0C90,X\n\n #_099D9F: CLC\n\n #_099DA0: RTS", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_CheckInitialTile_A", + "code": "Ancilla_CheckInitialTile_A:\n #_099DD3: PHB\n #_099DD4: PHK\n #_099DD5: PLB\n\n #_099DD6: PHY\n\n #_099DD7: LDA.b #$02\n #_099DD9: STA.b $72\n\n #_099DDB: LDA.w $0C72,X\n #_099DDE: ASL A\n #_099DDF: STA.b $02\n\n #_099DE1: ASL A\n #_099DE2: CLC\n #_099DE3: ADC.b $02\n #_099DE5: TAY\n\n.next\n #_099DE6: REP #$20\n\n #_099DE8: LDA.w .offset_y,Y\n #_099DEB: CLC\n #_099DEC: ADC.b $20\n #_099DEE: STA.b $02\n\n #_099DF0: LDA.w .offset_x,Y\n #_099DF3: CLC\n #_099DF4: ADC.b $22\n #_099DF6: STA.b $04\n\n #_099DF8: SEP #$20\n\n #_099DFA: LDA.b $02\n #_099DFC: STA.w $0BFA,X\n\n #_099DFF: LDA.b $03\n #_099E01: STA.w $0C0E,X\n\n #_099E04: LDA.b $04\n #_099E06: STA.w $0C04,X\n\n #_099E09: LDA.b $05\n #_099E0B: STA.w $0C18,X\n\n #_099E0E: PHY\n #_099E0F: JSL Ancilla_CheckTileCollision_long\n #_099E13: PLY\n\n #_099E14: BCS .collided\n\n #_099E16: INY\n #_099E17: INY\n\n #_099E18: DEC.b $72\n #_099E1A: BPL .next\n\n; ---------------------------------------------------------\n\n #_099E1C: PLY\n\n #_099E1D: CLC\n\n #_099E1E: PLB\n\n #_099E1F: RTL", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_CheckInitialTileCollision_Class2", + "code": "Ancilla_CheckInitialTileCollision_Class2:\n #_099E44: PHB\n #_099E45: PHK\n #_099E46: PLB\n\n #_099E47: PHY\n\n #_099E48: LDA.b #$02\n #_099E4A: STA.b $72\n\n #_099E4C: LDA.w $0C72,X\n #_099E4F: ASL A\n #_099E50: ASL A\n #_099E51: TAY\n\n; ---------------------------------------------------------\n\n.next\n #_099E52: REP #$20\n\n #_099E54: LDA.w .offset_y,Y\n #_099E57: CLC\n #_099E58: ADC.b $20\n #_099E5A: STA.b $02\n\n #_099E5C: LDA.w .offset_x,Y\n #_099E5F: CLC\n #_099E60: ADC.b $22\n #_099E62: STA.b $04\n\n #_099E64: SEP #$20\n\n #_099E66: LDA.b $02\n #_099E68: STA.w $0BFA,X\n\n #_099E6B: LDA.b $03\n #_099E6D: STA.w $0C0E,X\n\n #_099E70: LDA.b $04\n #_099E72: STA.w $0C04,X\n\n #_099E75: LDA.b $05\n #_099E77: STA.w $0C18,X\n\n #_099E7A: PHY\n #_099E7B: JSL Ancilla_CheckTileCollision_Class2_long\n #_099E7F: PLY\n\n #_099E80: BCS .collided\n\n #_099E82: INY\n #_099E83: INY\n\n #_099E84: DEC.b $72\n #_099E86: BPL .next\n\n; ---------------------------------------------------------\n\n #_099E88: PLY\n\n #_099E89: CLC\n\n #_099E8A: PLB\n\n #_099E8B: RTL", + "file": "bank_09.asm" + }, + { + "name": "Follower_CheckBlindTrigger", + "code": "Follower_CheckBlindTrigger:\n #_099E90: PHB\n #_099E91: PHK\n #_099E92: PLB\n\n #_099E93: LDX.w $02CF\n\n #_099E96: LDA.w $1A00,X\n #_099E99: STA.b $00\n\n #_099E9B: LDA.w $1A14,X\n #_099E9E: STA.b $01\n\n #_099EA0: LDA.w $1A28,X\n #_099EA3: STA.b $02\n\n #_099EA5: LDA.w $1A3C,X\n #_099EA8: STA.b $03\n\n #_099EAA: STZ.b $0B\n\n #_099EAC: LDA.w $1A50,X\n #_099EAF: STA.b $0A\n #_099EB1: BPL .positive_z\n\n #_099EB3: LDA.b #$FF\n #_099EB5: STA.b $0B\n\n; ---------------------------------------------------------\n\n.positive_z\n #_099EB7: REP #$20\n\n #_099EB9: LDA.b $00\n #_099EBB: CLC\n #_099EBC: ADC.b $0A\n #_099EBE: CLC\n #_099EBF: ADC.w #$000C\n #_099EC2: STA.b $00\n\n #_099EC4: LDA.b $02\n #_099EC6: CLC\n #_099EC7: ADC.w #$0008\n #_099ECA: STA.b $02\n\n #_099ECC: LDA.w #$1568\n #_099ECF: SEC\n #_099ED0: SBC.b $00\n #_099ED2: BPL .positive_x\n\n #_099ED4: EOR.w #$FFFF\n #_099ED7: INC A\n\n; ---------------------------------------------------------\n\n.positive_x\n #_099ED8: CMP.w #$0018\n #_099EDB: BCS .fail\n\n #_099EDD: LDA.w #$1980\n #_099EE0: SEC\n #_099EE1: SBC.b $02\n #_099EE3: BPL .positive_y\n\n #_099EE5: EOR.w #$FFFF\n #_099EE8: INC A\n\n; ---------------------------------------------------------\n\n.positive_y\n #_099EE9: CMP.w #$0018\n #_099EEC: BCS .fail\n\n.success\n #_099EEE: SEP #$20\n\n #_099EF0: PLB\n\n #_099EF1: SEC\n\n #_099EF2: RTL", + "file": "bank_09.asm" + }, + { + "name": "FollowerPriority", + "code": "FollowerPriority:\n #_099EF8: db $20, $10, $30, $20\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_Initialize", + "code": "Follower_Initialize:\n #_099EFC: PHB\n #_099EFD: PHK\n #_099EFE: PLB\n\n #_099EFF: LDA.b $20\n #_099F01: STA.w $1A00\n\n #_099F04: LDA.b $21\n #_099F06: STA.w $1A14\n\n #_099F09: LDA.b $22\n #_099F0B: STA.w $1A28\n\n #_099F0E: LDA.b $23\n #_099F10: STA.w $1A3C\n\n #_099F13: LDA.b $2F\n #_099F15: LSR A\n #_099F16: STA.b $00\n\n #_099F18: LDY.b $EE\n\n #_099F1A: LDA.w FollowerPriority,Y\n #_099F1D: LSR A\n #_099F1E: LSR A\n #_099F1F: ORA.b $00\n #_099F21: STA.w $1A64\n\n #_099F24: LDA.b #$40\n #_099F26: STA.w $02D2\n\n #_099F29: STZ.w $02CF\n #_099F2C: STZ.w $02D3\n #_099F2F: STZ.w $02D0\n #_099F32: STZ.w $02D6\n\n #_099F35: STZ.b $5E\n\n #_099F37: PLB\n\n #_099F38: RTL", + "file": "bank_09.asm" + }, + { + "name": "Sprite_BecomeFollower", + "code": "Sprite_BecomeFollower:\n #_099F39: PHB\n #_099F3A: PHK\n #_099F3B: PLB\n\n #_099F3C: PHX\n\n #_099F3D: STZ.w $02F9\n\n #_099F40: LDA.w $0D00,X\n #_099F43: CLC\n #_099F44: ADC.b #$FA\n #_099F46: STA.w $1A00\n\n #_099F49: LDA.w $0D20,X\n #_099F4C: ADC.b #$FF\n #_099F4E: STA.w $1A14\n\n #_099F51: LDA.w $0D10,X\n #_099F54: CLC\n #_099F55: ADC.b #$01\n #_099F57: STA.w $1A28\n\n #_099F5A: LDA.w $0D30,X\n #_099F5D: ADC.b #$00\n #_099F5F: STA.w $1A3C\n\n; ---------------------------------------------------------\n\n #_099F62: LDY.b $EE\n\n #_099F64: LDA.w FollowerPriority,Y\n #_099F67: LSR A\n #_099F68: LSR A\n #_099F69: ORA.b #$01\n #_099F6B: STA.w $1A64\n\n #_099F6E: LDA.b #$40\n #_099F70: STA.w $02D2\n #_099F73: STZ.w $02D3\n\n #_099F76: STZ.w $02CF\n\n #_099F79: STZ.w $02D0\n #_099F7C: STZ.w $02D6\n\n #_099F7F: STZ.b $5E\n\n #_099F81: STZ.w $02F9\n\n #_099F84: LDA.b #$00\n #_099F86: STA.l $7EF3D3\n\n #_099F8A: JSL Follower_MoveTowardsLink\n\n #_099F8E: PLX\n #_099F8F: PLB\n\n #_099F90: RTL", + "file": "bank_09.asm" + }, + { + "name": "Follower_Main", + "code": "Follower_Main:\n #_099F91: PHB\n #_099F92: PHK\n #_099F93: PLB\n\n #_099F94: JSR .execute\n\n #_099F97: PLB\n\n #_099F98: RTL", + "file": "bank_09.asm" + }, + { + "name": "Follower_NoTimedMessage", + "code": "Follower_NoTimedMessage:\n #_09A02B: SEP #$20\n\n #_09A02D: LDA.l $7EF3D3\n #_09A031: BEQ .follower_following\n\n #_09A033: BRL .not_following_bounce\n\n; ---------------------------------------------------------\n\n.follower_following\n #_09A036: LDA.l $7EF3CC\n #_09A03A: CMP.b #$0C ; FOLLOWER 0C\n #_09A03C: BNE .not_purple_chest_a\n\n #_09A03E: LDA.b $4D\n #_09A040: BNE .not_default_game_mode\n\n #_09A042: BRA .continue_a\n\n.not_purple_chest_a\n #_09A044: LDA.l $7EF3CC\n #_09A048: CMP.b #$0D ; FOLLOWER 0D\n #_09A04A: BEQ .not_super_bomb_a\n\n.not_default_game_mode\n #_09A04C: BRL Follower_CheckGameMode\n\n.not_super_bomb_a\n #_09A04F: LDA.b $4D\n #_09A051: CMP.b #$02\n #_09A053: BEQ .recoiling_or_falling\n\n #_09A055: LDA.b $5B\n #_09A057: CMP.b #$02\n #_09A059: BEQ .recoiling_or_falling\n\n; ---------------------------------------------------------\n\n.continue_a\n #_09A05B: LDA.b $11\n #_09A05D: BNE .not_default_game_mode\n\n #_09A05F: LDA.b $4D\n #_09A061: CMP.b #$01\n #_09A063: BEQ Follower_CheckGameMode\n\n #_09A065: BIT.w $0308\n #_09A068: BMI Follower_CheckGameMode\n\n #_09A06A: LDA.w $02F9\n #_09A06D: BNE Follower_CheckGameMode\n\n #_09A06F: LDA.w $02D0\n #_09A072: BNE Follower_CheckGameMode\n\n; ---------------------------------------------------------\n\n #_09A074: LDX.w $02CF\n\n #_09A077: LDA.w $1A50,X\n #_09A07A: BEQ .zero_altitude\n\n #_09A07C: BPL Follower_CheckGameMode\n\n.zero_altitude\n #_09A07E: LDA.b $F6\n #_09A080: AND.b #$80\n #_09A082: BEQ Follower_CheckGameMode\n\n.recoiling_or_falling\n #_09A084: LDA.l $7EF3CC\n #_09A088: CMP.b #$0D ; FOLLOWER 0D\n #_09A08A: BNE .not_superbomb_outdoors\n\n #_09A08C: LDA.b $1B\n #_09A08E: BNE .not_superbomb_outdoors\n\n; ---------------------------------------------------------\n\n #_09A090: LDA.b $5D\n #_09A092: CMP.b #$08 ; LINKSTATE 08\n #_09A094: BEQ Follower_CheckGameMode\n\n #_09A096: CMP.b #$09 ; LINKSTATE 09\n #_09A098: BEQ Follower_CheckGameMode\n\n #_09A09A: CMP.b #$0A ; LINKSTATE 0A\n #_09A09C: BEQ Follower_CheckGameMode\n\n #_09A09E: LDA.b #$03\n #_09A0A0: STA.w $04B4\n\n #_09A0A3: LDA.b #$BB\n #_09A0A5: STA.w $04B5\n\n; ---------------------------------------------------------\n\n.not_superbomb_outdoors\n #_09A0A8: LDA.b #$80\n #_09A0AA: STA.l $7EF3D3\n\n #_09A0AE: LDA.b #$40\n #_09A0B0: STA.w $02D2\n\n #_09A0B3: LDX.w $02CF\n\n #_09A0B6: LDA.w $1A00,X\n #_09A0B9: STA.l $7EF3CD\n\n #_09A0BD: LDA.w $1A14,X\n #_09A0C0: STA.l $7EF3CE\n\n #_09A0C4: LDA.w $1A28,X\n #_09A0C7: STA.l $7EF3CF\n\n #_09A0CB: LDA.w $1A3C,X\n #_09A0CE: STA.l $7EF3D0\n\n #_09A0D2: LDA.b $EE\n #_09A0D4: STA.l $7EF3D2\n\n #_09A0D8: LDA.b $1B\n #_09A0DA: STA.l $7EF3D1\n\n; ---------------------------------------------------------\n\n.not_following_bounce\n #_09A0DE: BRL Follower_NotFollowing\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_CheckGameMode", + "code": "Follower_CheckGameMode:\n #_09A0E1: SEP #$20\n\n #_09A0E3: LDA.w $02E4\n #_09A0E6: BNE .dont_do_anything\n\n #_09A0E8: LDX.b $10\n #_09A0EA: LDY.b $11\n\n #_09A0EC: CPY.b #$0A\n #_09A0EE: BEQ .dont_do_anything\n\n #_09A0F0: CPX.b #$09\n #_09A0F2: BNE .not_overworld\n\n #_09A0F4: CPY.b #$23\n #_09A0F6: BEQ .dont_do_anything\n\n; ---------------------------------------------------------\n\n.not_overworld\n #_09A0F8: CPX.b #$0E\n #_09A0FA: BNE .not_text_mode\n\n #_09A0FC: CPY.b #$01\n #_09A0FE: BEQ .dont_do_anything\n\n #_09A100: CPY.b #$02\n #_09A102: BNE .not_text_mode\n\n.dont_do_anything\n #_09A104: BRL Follower_ExecuteAI\n\n; ---------------------------------------------------------\n\n.not_text_mode\n #_09A107: LDA.b $30\n #_09A109: ORA.b $31\n #_09A10B: BEQ Follower_ExecuteAI\n\n #_09A10D: LDX.w $02D3\n #_09A110: INX\n #_09A111: CPX.b #$14\n #_09A113: BNE .dont_reset_movement_index\n\n #_09A115: LDX.b #$00\n\n.dont_reset_movement_index\n #_09A117: STX.w $02D3\n\n; ---------------------------------------------------------\n\n #_09A11A: LDA.b $24\n #_09A11C: CMP.b #$F0\n #_09A11E: BCC .use_links_altitude\n\n #_09A120: LDA.b #$00\n\n.use_links_altitude\n #_09A122: STA.b $00\n #_09A124: STZ.b $01\n\n #_09A126: LDA.b $00\n #_09A128: STA.w $1A50,X\n\n; ---------------------------------------------------------\n\n #_09A12B: REP #$20\n\n #_09A12D: LDA.b $20\n #_09A12F: SEC\n #_09A130: SBC.b $00\n #_09A132: STA.b $00\n\n #_09A134: SEP #$20\n\n; ---------------------------------------------------------\n\n #_09A136: LDA.b $00\n #_09A138: STA.w $1A00,X\n\n #_09A13B: LDA.b $01\n #_09A13D: STA.w $1A14,X\n\n #_09A140: LDA.b $22\n #_09A142: STA.w $1A28,X\n\n #_09A145: LDA.b $23\n #_09A147: STA.w $1A3C,X\n\n #_09A14A: LDA.b $2F\n #_09A14C: LSR A\n #_09A14D: STA.w $1A64,X\n\n; ---------------------------------------------------------\n\n #_09A150: LDY.b $EE\n\n #_09A152: LDA.w FollowerPriority,Y\n #_09A155: LSR A\n #_09A156: LSR A\n #_09A157: ORA.w $1A64,X\n #_09A15A: STA.w $1A64,X\n\n; ---------------------------------------------------------\n\n #_09A15D: LDA.b $5D\n #_09A15F: CMP.b #$04 ; LINKSTATE 04\n #_09A161: BNE .not_swimming\n\n #_09A163: LDY.b #$20\n\n #_09A165: BRA .set_priority\n\n.not_swimming\n #_09A167: CMP.b #$13 ; LINKSTATE 13\n #_09A169: BNE .not_hookshot_drag\n\n #_09A16B: LDA.w $037E\n #_09A16E: BEQ .not_hookshot_drag\n\n #_09A170: LDA.b #$10\n #_09A172: ORA.w $1A64,X\n #_09A175: STA.w $1A64,X\n\n; ---------------------------------------------------------\n\n.not_hookshot_drag\n #_09A178: LDY.b #$80\n\n #_09A17A: LDA.w $0351\n #_09A17D: BEQ Follower_ExecuteAI\n\n #_09A17F: CMP.b #$01\n #_09A181: BEQ .set_priority\n\n #_09A183: LDY.b #$40\n\n.set_priority\n #_09A185: TYA\n #_09A186: ORA.w $1A64,X\n #_09A189: STA.w $1A64,X\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_ExecuteAI", + "code": "Follower_ExecuteAI:\n #_09A18C: LDA.l $7EF3CC\n #_09A190: DEC A\n #_09A191: ASL A\n #_09A192: TAX\n\n #_09A193: JMP.w (Follower_AIVectors,X)\n\n; =========================================================\n\n#UNREACHABLE_09A196:\n #_09A196: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_BasicMover", + "code": "Follower_BasicMover:\n #_09A197: LDA.w $02E4\n #_09A19A: BNE .not_in_cutscene\n\n #_09A19C: LDX.b $10\n #_09A19E: LDY.b $11\n\n #_09A1A0: CPY.b #$0A\n #_09A1A2: BEQ .not_in_cutscene\n\n #_09A1A4: CPX.b #$09\n #_09A1A6: BNE .not_overworld\n\n #_09A1A8: CPY.b #$23\n #_09A1AA: BEQ .not_in_cutscene\n\n.not_overworld\n #_09A1AC: CPX.b #$0E\n #_09A1AE: BNE .not_text_mode\n\n #_09A1B0: CPY.b #$01\n #_09A1B2: BEQ .not_in_cutscene\n\n #_09A1B4: CPY.b #$02\n #_09A1B6: BNE .not_text_mode\n\n.not_in_cutscene\n #_09A1B8: BRL .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.not_text_mode\n #_09A1BB: JSR Follower_HandleTrigger\n\n #_09A1BE: LDA.l $7EF3CC\n #_09A1C2: CMP.b #$0A ; FOLLOWER 0A\n #_09A1C4: BNE .dont_scare_kiki\n\n #_09A1C6: LDA.b $4D\n #_09A1C8: BEQ .dont_scare_kiki\n\n #_09A1CA: LDA.w $031F\n #_09A1CD: BEQ .dont_scare_kiki\n\n #_09A1CF: LDA.w $02CF\n #_09A1D2: INC A\n #_09A1D3: CMP.b #$14\n #_09A1D5: BNE .no_index_wrap\n\n #_09A1D7: LDA.b #$00\n\n.no_index_wrap\n #_09A1D9: JSL Kiki_SpawnHandler_B\n\n #_09A1DD: LDA.b #$00\n #_09A1DF: STA.l $7EF3CC\n\n #_09A1E3: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_NotFollowing", + "code": "Follower_NotFollowing:\n #_09A2B2: LDA.l $7EF3D1\n #_09A2B6: CMP.b $1B\n #_09A2B8: BNE EXIT_09A2B1\n\n #_09A2BA: LDA.w $0372\n #_09A2BD: BNE .dont_reset_self\n\n #_09A2BF: JSR Follower_CheckProximityToLink\n #_09A2C2: BCS .dont_reset_self\n\n #_09A2C4: JSL Follower_Initialize\n\n #_09A2C8: LDA.b $1B\n #_09A2CA: STA.l $7EF3D1\n\n #_09A2CE: LDA.l $7EF3CC\n #_09A2D2: CMP.b #$0D ; FOLLOWER 0D\n #_09A2D4: BNE .not_superbomb\n\n #_09A2D6: LDA.b #$FE\n #_09A2D8: STA.w $04B4\n #_09A2DB: STZ.w $04B5\n\n.not_superbomb\n #_09A2DE: LDA.b #$00\n #_09A2E0: STA.l $7EF3D3\n\n #_09A2E4: BRL Follower_Draw\n\n; ---------------------------------------------------------\n\n.dont_reset_self\n #_09A2E7: LDA.l $7EF3CC\n #_09A2EB: CMP.b #$0D ; FOLLOWER 0D\n #_09A2ED: BNE .not_superbomb_exploding\n\n #_09A2EF: LDA.b $1B\n #_09A2F1: BNE .not_superbomb_exploding\n\n #_09A2F3: LDA.w $04B4\n #_09A2F6: BNE .not_superbomb_exploding\n\n #_09A2F8: LDY.b #$00\n #_09A2FA: LDA.b #$3A ; ANCILLA 3A\n #_09A2FC: JSL AncillaAdd_SuperBombExplosion\n\n #_09A300: LDA.b #$00\n #_09A302: STA.l $7EF3D3\n\n.not_superbomb_exploding\n #_09A306: BRL Follower_DoLayers\n\n; =========================================================\n\npool Follower_OldMan\n\n.replacement_follower\n #_09A309: db $00 ; 0x00 - No follower\n #_09A30A: db $00 ; 0x01 - Zelda\n #_09A30B: db $03 ; 0x02 - Old man that stops following you \u21d2 FOLLOWER 03\n #_09A30C: db $03 ; 0x03 - Unused old man \u21d2 FOLLOWER 03\n #_09A30D: db $04 ; 0x04 - Normal old man \u21d2 FOLLOWER 04\n #_09A30E: db $00 ; 0x05 - Zelda rescue telepathy\n #_09A30F: db $00 ; 0x06 - Blind maiden\n #_09A310: db $00 ; 0x07 - Frogsmith\n #_09A311: db $00 ; 0x08 - Smithy\n #_09A312: db $00 ; 0x09 - Locksmith\n #_09A313: db $00 ; 0x0A - Kiki\n #_09A314: db $00 ; 0x0B - Unused old man\n #_09A315: db $00 ; 0x0C - Purple chest\n #_09A316: db $00 ; 0x0D - Super bomb\n #_09A317: db $00 ; 0x0E - Master Sword telepathy\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_OldMan", + "code": "Follower_OldMan:\n #_09A318: LDA.w $02E4\n #_09A31B: BNE .proceed_to_just_draw\n\n #_09A31D: LDX.b $10\n #_09A31F: LDY.b $11\n #_09A321: CPY.b #$0A\n #_09A323: BEQ .proceed_to_just_draw\n\n #_09A325: CPX.b #$09\n #_09A327: BNE .not_overworld\n\n #_09A329: CPY.b #$23\n #_09A32B: BEQ .proceed_to_just_draw\n\n.not_overworld\n #_09A32D: CPX.b #$0E\n #_09A32F: BNE .not_textbox\n\n #_09A331: CPY.b #$01\n #_09A333: BEQ .proceed_to_just_draw\n\n #_09A335: CPY.b #$02\n #_09A337: BNE .not_textbox\n\n.proceed_to_just_draw\n #_09A339: BRL .just_draw\n\n; ---------------------------------------------------------\n\n.not_textbox\n #_09A33C: LDA.b $5E\n #_09A33E: CMP.b #$04\n #_09A340: BEQ .dont_reset_link_speed\n\n #_09A342: LDA.b #$0C\n #_09A344: STA.b $5E\n\n.dont_reset_link_speed\n #_09A346: JSR Follower_HandleTrigger\n\n #_09A349: SEP #$30\n\n #_09A34B: LDA.l $7EF3CC\n #_09A34F: BNE .have_old_man_indeed\n\n #_09A351: RTS", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_09A40F", + "code": "UNREACHABLE_09A40F:\n #_09A40F: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_OldManUnused", + "code": "Follower_OldManUnused:\n #_09A41F: LDA.b #$10\n #_09A421: STA.b $5E\n\n #_09A423: LDA.w $0372\n #_09A426: BNE Follower_DoLayers\n\n #_09A428: LDA.b $4D\n #_09A42A: BNE Follower_DoLayers\n\n #_09A42C: LDA.b $5D\n #_09A42E: CMP.b #$04 ; LINKSTATE 04\n #_09A430: BEQ Follower_DoLayers\n\n #_09A432: STZ.b $5E\n\n #_09A434: LDA.b $5D\n #_09A436: CMP.b #$13 ; LINKSTATE 13\n #_09A438: BEQ Follower_DoLayers\n\n #_09A43A: JSR Follower_CheckProximityToLink\n #_09A43D: BCS Follower_DoLayers\n\n #_09A43F: JSL Follower_Initialize\n\n #_09A443: LDA.l $7EF3CC\n #_09A447: TAX\n\n #_09A448: LDA.w .replacement_follower,X\n #_09A44B: STA.l $7EF3CC\n\n #_09A44F: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_DoLayers", + "code": "Follower_DoLayers:\n #_09A450: LDA.l $7EF3D2\n #_09A454: TAX\n\n #_09A455: CPX.b $EE\n #_09A457: BNE .layer_mismatch\n\n #_09A459: LDX.b $EE\n\n.layer_mismatch\n #_09A45B: LDA.w FollowerPriority,X\n #_09A45E: STA.b $65\n #_09A460: STZ.b $64\n\n #_09A462: LDA.l $7EF3CD\n #_09A466: STA.b $00\n\n #_09A468: LDA.l $7EF3CE\n #_09A46C: STA.b $01\n\n #_09A46E: LDA.l $7EF3CF\n #_09A472: STA.b $02\n\n #_09A474: LDA.l $7EF3D0\n #_09A478: STA.b $03\n\n #_09A47A: LDX.b #$02\n\n #_09A47C: LDA.l $7EF3CC\n #_09A480: CMP.b #$0D ; FOLLOWER 0D\n #_09A482: BEQ .bomb_or_chest\n\n #_09A484: CMP.b #$0C ; FOLLOWER 0C\n #_09A486: BEQ .bomb_or_chest\n\n #_09A488: LDX.b #$01\n\n.bomb_or_chest\n #_09A48A: TXA\n #_09A48B: BRL Follower_AnimateMovement_preserved\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_CheckProximityToLink", + "code": "Follower_CheckProximityToLink:\n #_09A48E: DEC.w $02D2\n #_09A491: BPL .too_far\n\n #_09A493: STZ.w $02D2\n\n #_09A496: REP #$20\n\n #_09A498: LDA.l $7EF3CD\n #_09A49C: SEC\n #_09A49D: SBC.w #$0001\n\n #_09A4A0: CMP.b $20\n #_09A4A2: BCS .too_far\n\n #_09A4A4: CLC\n #_09A4A5: ADC.w #$0014\n #_09A4A8: CMP.b $20\n #_09A4AA: BCC .too_far\n\n #_09A4AC: LDA.l $7EF3CF\n #_09A4B0: SEC\n #_09A4B1: SBC.w #$0001\n #_09A4B4: CMP.b $22\n #_09A4B6: BCS .too_far\n\n #_09A4B8: CLC\n #_09A4B9: ADC.w #$0014\n #_09A4BC: CMP.b $22\n #_09A4BE: BCC .too_far\n\n; ---------------------------------------------------------\n\n.good\n #_09A4C0: SEP #$20\n\n #_09A4C2: CLC\n\n #_09A4C3: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_HandleTrigger", + "code": "Follower_HandleTrigger:\n #_09A59E: LDA.b $11\n #_09A5A0: BNE .fail_fast\n\n #_09A5A2: REP #$30\n\n #_09A5A4: LDY.w #$0000\n\n #_09A5A7: LDA.b $1B\n #_09A5A9: AND.w #$00FF\n #_09A5AC: BEQ .overworld\n\n #_09A5AE: INY\n\n #_09A5AF: LDX.w #$000C\n #_09A5B2: LDA.b $A0\n\n.next_room_check\n #_09A5B4: CMP.w .room_id,X\n #_09A5B7: BEQ .room_match\n\n #_09A5B9: DEX\n #_09A5BA: DEX\n #_09A5BB: BPL .next_room_check\n\n #_09A5BD: BRA .fail_fast\n\n; ---------------------------------------------------------\n\n.overworld\n #_09A5BF: LDX.w #$0004\n\n #_09A5C2: LDA.b $8A\n\n.next_screen_check\n #_09A5C4: CMP.w .overworld_id,X\n #_09A5C7: BEQ .overworld_match\n\n #_09A5C9: DEX\n #_09A5CA: DEX\n #_09A5CB: BPL .next_screen_check\n\n.fail_fast\n #_09A5CD: BRL .exit\n\n; ---------------------------------------------------------\n\n.room_match\n #_09A5D0: LDA.w .room_boundaries_check+2,X\n #_09A5D3: STA.b $08\n\n #_09A5D5: LDA.w .room_boundaries_check+0,X\n #_09A5D8: TAX\n\n.next_follower_uw\n #_09A5D9: STX.b $0C\n #_09A5DB: STZ.b $0A\n\n #_09A5DD: LDA.l $7EF3CC\n #_09A5E1: AND.w #$00FF\n #_09A5E4: CMP.w .coordinates_uw+8,X\n #_09A5E7: BNE .wrong_follower_uw\n\n #_09A5E9: LDA.w .coordinates_uw+0,X\n #_09A5EC: STA.b $00\n\n #_09A5EE: LDA.w .coordinates_uw+2,X\n #_09A5F1: STA.b $02\n\n #_09A5F3: LDA.w .coordinates_uw+4,X\n #_09A5F6: STA.b $06\n\n #_09A5F8: LDA.w .coordinates_uw+6,X\n #_09A5FB: STA.b $04\n\n #_09A5FD: SEP #$30\n\n #_09A5FF: JSR Follower_CheckForTrigger\n #_09A602: BCS .trigger_activated\n\n #_09A604: REP #$30\n\n.wrong_follower_uw\n #_09A606: LDA.b $0C\n #_09A608: CLC\n #_09A609: ADC.w #$000A\n #_09A60C: TAX\n\n #_09A60D: CPX.b $08\n #_09A60F: BNE .next_follower_uw\n\n #_09A611: BRL .exit\n\n; ---------------------------------------------------------\n\n.overworld_match\n #_09A614: LDA.w .ow_boundaries_check+2,X\n #_09A617: STA.b $08\n\n #_09A619: LDA.w .ow_boundaries_check+0,X\n #_09A61C: TAX\n\n.next_follower_ow\n #_09A61D: STX.b $0C\n #_09A61F: STZ.b $0A\n\n #_09A621: LDA.l $7EF3CC\n #_09A625: AND.w #$00FF\n #_09A628: CMP.w .coordinates_ow+8,X\n #_09A62B: BNE .wrong_follower_ow\n\n #_09A62D: LDA.w .coordinates_ow+0,X\n #_09A630: STA.b $00\n\n #_09A632: LDA.w .coordinates_ow+2,X\n #_09A635: STA.b $02\n\n #_09A637: LDA.w .coordinates_ow+4,X\n #_09A63A: STA.b $06\n\n #_09A63C: LDA.w .coordinates_ow+6,X\n #_09A63F: STA.b $04\n\n #_09A641: SEP #$30\n\n #_09A643: JSR Follower_CheckForTrigger\n #_09A646: BCS .trigger_activated\n\n #_09A648: REP #$30\n\n.wrong_follower_ow\n #_09A64A: LDA.b $0C\n #_09A64C: CLC\n #_09A64D: ADC.w #$000A\n #_09A650: TAX\n\n #_09A651: CPX.b $08\n #_09A653: BNE .next_follower_ow\n\n #_09A655: BRA .exit\n\n; ---------------------------------------------------------\n\n.trigger_activated\n #_09A657: SEP #$10\n #_09A659: REP #$20\n\n #_09A65B: LDA.w $02F2\n #_09A65E: AND.b $06\n #_09A660: BNE .exit\n\n #_09A662: LDA.b $06\n #_09A664: TSB.w $02F2\n\n #_09A667: LDA.b $04\n #_09A669: STA.w $1CF0\n\n #_09A66C: CMP.w #$FFFF\n #_09A66F: BEQ .no_message\n\n #_09A671: CMP.w #$009D ; MESSAGE 009D\n #_09A674: BEQ .old_man_ow_message\n\n #_09A676: CMP.w #$0028 ; MESSAGE 0028\n #_09A679: BNE .continue_with_message_id\n\n #_09A67B: SEP #$20\n\n #_09A67D: LDA.b #$00\n #_09A67F: STA.l $7EF3CC\n\n #_09A683: BRA .continue_with_message_id\n\n; ---------------------------------------------------------\n\n.old_man_ow_message\n #_09A685: SEP #$20\n\n #_09A687: LDA.w $02CF\n #_09A68A: INC A\n #_09A68B: CMP.b #$14\n #_09A68D: BNE .dont_reset_movement_index_geezer\n\n #_09A68F: LDA.b #$00\n\n.dont_reset_movement_index_geezer\n #_09A691: JSL OldMan_RevertToSprite\n\n.continue_with_message_id\n #_09A695: SEP #$20\n\n #_09A697: JSL Interface_PrepAndDisplayMessage\n\n #_09A69B: BRA .exit\n\n; ---------------------------------------------------------\n\n.no_message\n #_09A69D: SEP #$30\n\n #_09A69F: LDA.w $02CF\n #_09A6A2: INC A\n #_09A6A3: CMP.b #$14\n #_09A6A5: BNE .dont_reset_movement_index_kiki\n\n #_09A6A7: LDA.b #$00\n\n.dont_reset_movement_index_kiki\n #_09A6A9: PHA\n\n #_09A6AA: LDA.b $06\n #_09A6AC: AND.b #$03\n #_09A6AE: BNE .dont_revert_to_sprite\n\n #_09A6B0: PLA\n #_09A6B1: JSL Kiki_RevertToSprite\n\n #_09A6B5: BRA .exit\n\n; ---------------------------------------------------------\n\n.dont_revert_to_sprite\n #_09A6B7: PLA\n #_09A6B8: STA.b $00\n\n #_09A6BA: LDX.b $8A\n\n #_09A6BC: LDA.l $7EF280,X\n #_09A6C0: AND.b #$01\n #_09A6C2: BNE .exit\n\n #_09A6C4: LDA.b $00\n #_09A6C6: JSL Kiki_SpawnHandler_A\n\n; ---------------------------------------------------------\n\n.exit\n #_09A6CA: SEP #$30\n\n #_09A6CC: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_Draw", + "code": "Follower_Draw:\n #_09A907: LDA.w $02F9\n #_09A90A: BEQ .do_indeed_draw\n\n #_09A90C: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_AnimateMovement_preserved", + "code": "Follower_AnimateMovement_preserved:\n #_09A957: PHX\n #_09A958: PHY\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Follower_AnimateMovement", + "code": "Follower_AnimateMovement:\n #_09A959: STA.b $05\n\n #_09A95B: AND.b #$20\n #_09A95D: LSR A\n #_09A95E: LSR A\n #_09A95F: TAY\n\n #_09A960: LDA.b $05\n #_09A962: AND.b #$03\n #_09A964: STA.b $04\n\n #_09A966: STZ.b $72\n\n #_09A968: CPY.b #$08\n #_09A96A: BNE .low_priority\n\n #_09A96C: LDY.b #$00\n\n #_09A96E: LDA.l $7EF3CC\n #_09A972: CMP.b #$06 ; FOLLOWER 06\n #_09A974: BEQ .not_blind_maiden\n\n #_09A976: CMP.b #$01 ; FOLLOWER 01\n #_09A978: BNE .low_priority\n\n.not_blind_maiden\n #_09A97A: LDY.b #$08\n\n #_09A97C: LDA.w $033C\n #_09A97F: ORA.w $033D\n #_09A982: ORA.w $033E\n #_09A985: ORA.w $033F\n #_09A988: BEQ .no_collision\n\n #_09A98A: LDA.b $1A\n #_09A98C: AND.b #$08\n #_09A98E: LSR A\n #_09A98F: BRA FollowerDraw_Drawing\n\n.no_collision\n #_09A991: LDA.b $1A\n #_09A993: AND.b #$10\n #_09A995: LSR A\n #_09A996: LSR A\n\n #_09A997: BRA FollowerDraw_Drawing\n\n; ---------------------------------------------------------\n\n.low_priority\n #_09A999: LDA.b $11\n #_09A99B: CMP.b #$0E\n #_09A99D: BEQ .check_dashing\n\n #_09A99F: CMP.b #$08\n #_09A9A1: BEQ .check_dashing\n\n #_09A9A3: CMP.b #$10\n #_09A9A5: BEQ .check_dashing\n\n #_09A9A7: LDA.l $7EF3CC\n #_09A9AB: CMP.b #$0B ; FOLLOWER 0B\n #_09A9AD: BEQ .not_dashing\n\n #_09A9AF: CMP.b #$0D ; FOLLOWER 0D\n #_09A9B1: BEQ .super_bomb\n\n #_09A9B3: CMP.b #$0C ; FOLLOWER 0C\n #_09A9B5: BNE .not_purple_chest\n\n.super_bomb\n #_09A9B7: LDA.l $7EF3D3\n #_09A9BB: BNE .immobile\n\n; ---------------------------------------------------------\n\n.not_purple_chest\n #_09A9BD: LDA.w $02E4\n #_09A9C0: BNE .immobile\n\n #_09A9C2: LDA.b $11\n #_09A9C4: CMP.b #$0A\n #_09A9C6: BEQ .immobile\n\n #_09A9C8: LDA.b $10\n #_09A9CA: CMP.b #$09\n #_09A9CC: BNE .not_overworld\n\n #_09A9CE: LDA.b $11\n #_09A9D0: CMP.b #$23\n #_09A9D2: BEQ .immobile\n\n; ---------------------------------------------------------\n\n.not_overworld\n #_09A9D4: LDA.b $10\n #_09A9D6: CMP.b #$0E\n #_09A9D8: BNE .not_interface\n\n #_09A9DA: LDA.b $11\n #_09A9DC: CMP.b #$01\n #_09A9DE: BEQ .immobile\n\n #_09A9E0: CMP.b #$02\n #_09A9E2: BEQ .immobile\n\n; ---------------------------------------------------------\n\n.not_interface\n #_09A9E4: LDA.b $30\n #_09A9E6: ORA.b $31\n #_09A9E8: BNE .check_dashing\n\n.immobile\n #_09A9EA: LDA.b #$04\n #_09A9EC: STA.b $72\n\n #_09A9EE: BRA FollowerDraw_Drawing\n\n; ---------------------------------------------------------\n\n.check_dashing\n #_09A9F0: LDA.w $0372\n #_09A9F3: BEQ .not_dashing\n\n #_09A9F5: LDA.b $1A\n #_09A9F7: AND.b #$04\n #_09A9F9: BRA FollowerDraw_Drawing\n\n.not_dashing\n #_09A9FB: LDA.b $1A\n #_09A9FD: AND.b #$08\n #_09A9FF: LSR A\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "FollowerDraw_Drawing", + "code": "FollowerDraw_Drawing:\n #_09AA00: CLC\n #_09AA01: ADC.b $04\n #_09AA03: STA.b $04\n\n #_09AA05: TYA\n #_09AA06: CLC\n #_09AA07: ADC.b $04\n #_09AA09: STA.b $04\n\n; ---------------------------------------------------------\n\n #_09AA0B: REP #$20\n\n #_09AA0D: LDA.w $0FB3\n #_09AA10: AND.w #$00FF\n #_09AA13: ASL A\n #_09AA14: TAY\n\n #_09AA15: LDA.b $20\n #_09AA17: CMP.b $00\n #_09AA19: BEQ .check_priority_for_region\n #_09AA1B: BCS .use_region_b\n\n #_09AA1D: BRA .use_region_a\n\n.check_priority_for_region\n #_09AA1F: LDA.b $05\n #_09AA21: AND.w #$0003\n #_09AA24: BNE .use_region_b\n\n.use_region_a\n #_09AA26: LDA.w .oam_region_offsets_a,Y\n #_09AA29: BRA .set_region\n\n.use_region_b\n #_09AA2B: LDA.w .oam_region_offsets_b,Y\n\n.set_region\n #_09AA2E: PHA\n\n #_09AA2F: LSR A\n #_09AA30: LSR A\n #_09AA31: CLC\n #_09AA32: ADC.w #$0A20\n #_09AA35: STA.b $92\n\n #_09AA37: PLA\n #_09AA38: CLC\n #_09AA39: ADC.w #$0800\n #_09AA3C: STA.b $90\n\n; ---------------------------------------------------------\n\n #_09AA3E: LDA.b $00\n #_09AA40: SEC\n #_09AA41: SBC.b $E8\n #_09AA43: STA.b $06\n\n #_09AA45: LDA.b $02\n #_09AA47: SEC\n #_09AA48: SBC.b $E2\n #_09AA4A: STA.b $08\n\n #_09AA4C: SEP #$20\n\n #_09AA4E: LDY.b #$00\n #_09AA50: LDX.b #$00\n\n #_09AA52: LDA.l $7EF3CC\n\n #_09AA56: CMP.b #$01 ; FOLLOWER 01\n #_09AA58: BEQ .girly_follower\n\n #_09AA5A: CMP.b #$06 ; FOLLOWER 06\n #_09AA5C: BEQ .girly_follower\n\n #_09AA5E: LDA.b $05\n #_09AA60: AND.b #$20\n #_09AA62: BEQ .girly_follower\n\n #_09AA64: BRA .not_girly_follower\n\n.girly_follower\n #_09AA66: LDA.b $05\n #_09AA68: AND.b #$C0\n #_09AA6A: BNE .some_flip\n\n #_09AA6C: BRL .do_chars\n\n.some_flip\n #_09AA6F: LDA.b $05\n #_09AA71: AND.b #$80\n #_09AA73: BNE .not_girly_follower\n\n #_09AA75: LDX.b #$0C\n\n #_09AA77: LDA.b $72\n #_09AA79: BEQ .not_girly_follower\n\n #_09AA7B: LDA.b #$00\n #_09AA7D: BRA .set_repri\n\n.not_girly_follower\n #_09AA7F: LDA.b $1A\n #_09AA81: AND.b #$07\n #_09AA83: BNE .dont_shimmy\n\n #_09AA85: LDA.w $02D7\n #_09AA88: INC A\n #_09AA89: CMP.b #$03\n #_09AA8B: BNE .set_repri\n\n #_09AA8D: LDA.b #$00\n\n.set_repri\n #_09AA8F: STA.w $02D7\n\n; ---------------------------------------------------------\n\n.dont_shimmy\n #_09AA92: LDA.w $02D7\n #_09AA95: ASL A\n #_09AA96: ASL A\n #_09AA97: STA.b $05\n\n #_09AA99: TXA\n #_09AA9A: CLC\n #_09AA9B: ADC.b $05\n #_09AA9D: TAX\n\n #_09AA9E: REP #$20\n\n #_09AAA0: LDA.b $06\n #_09AAA2: CLC\n #_09AAA3: ADC.w #$0010\n #_09AAA6: STA.b $00\n\n #_09AAA8: LDA.b $08\n #_09AAAA: STA.b $02\n\n #_09AAAC: STZ.b $74\n\n; ---------------------------------------------------------\n\n #_09AAAE: SEP #$20\n\n #_09AAB0: JSR FollowerDraw_CalculateOAMCoords\n\n #_09AAB3: LDA.w .head_body_char+0,X\n #_09AAB6: STA.b ($90),Y\n\n #_09AAB8: INY\n\n #_09AAB9: LDA.w .head_body_char+1,X\n #_09AABC: STA.b ($90),Y\n\n #_09AABE: INY\n\n #_09AABF: PHY\n #_09AAC0: TYA\n #_09AAC1: SEC\n #_09AAC2: SBC.b #$04\n\n #_09AAC4: LSR A\n #_09AAC5: LSR A\n #_09AAC6: TAY\n\n #_09AAC7: LDA.b #$00\n #_09AAC9: ORA.b $75\n #_09AACB: STA.b ($92),Y\n\n #_09AACD: PLY\n\n; ---------------------------------------------------------\n\n #_09AACE: REP #$20\n\n #_09AAD0: LDA.b $02\n #_09AAD2: CLC\n #_09AAD3: ADC.w #$0008\n #_09AAD6: STA.b $02\n\n #_09AAD8: STZ.b $74\n\n #_09AADA: SEP #$20\n\n #_09AADC: JSR FollowerDraw_CalculateOAMCoords\n\n #_09AADF: LDA.w .head_body_char+2,X\n #_09AAE2: STA.b ($90),Y\n\n #_09AAE4: INY\n\n #_09AAE5: LDA.w .head_body_char+3,X\n #_09AAE8: STA.b ($90),Y\n\n #_09AAEA: INY\n\n #_09AAEB: PHY\n\n #_09AAEC: TYA\n #_09AAED: SEC\n #_09AAEE: SBC.b #$04\n\n #_09AAF0: LSR A\n #_09AAF1: LSR A\n #_09AAF2: TAY\n\n #_09AAF3: LDA.b #$00\n #_09AAF5: ORA.b $75\n #_09AAF7: STA.b ($92),Y\n\n #_09AAF9: PLY\n\n; ---------------------------------------------------------\n\n.do_chars\n #_09AAFA: LDA.l $7EF3CC\n #_09AAFE: TAX\n\n #_09AAFF: LDA.w .palette,X\n #_09AB02: CMP.b #$07\n #_09AB04: BNE .not_link_palette_a\n\n #_09AB06: TAX\n\n #_09AB07: LDA.w $0ABD\n #_09AB0A: BEQ .no_trans_a\n\n #_09AB0C: LDX.b #$00\n\n.no_trans_a\n #_09AB0E: TXA\n\n; ---------------------------------------------------------\n\n.not_link_palette_a\n #_09AB0F: ASL A\n #_09AB10: STA.b $72\n\n #_09AB12: LDA.l $7EF3CC\n #_09AB16: CMP.b #$0D ; FOLLOWER 0D\n #_09AB18: BNE .not_exploding_superbomb\n\n #_09AB1A: LDA.w $04B4\n #_09AB1D: CMP.b #$01\n #_09AB1F: BNE .not_exploding_superbomb\n\n #_09AB21: LDA.b $1A\n #_09AB23: AND.b #$07\n #_09AB25: ASL A\n #_09AB26: STA.b $72\n\n; ---------------------------------------------------------\n\n.not_exploding_superbomb\n #_09AB28: LDA.l $7EF3CC\n #_09AB2C: CMP.b #$0D ; FOLLOWER 0D\n #_09AB2E: BEQ .bomb_or_chest\n\n #_09AB30: CMP.b #$0C ; FOLLOWER 0C\n #_09AB32: BEQ .bomb_or_chest\n\n; ---------------------------------------------------------\n\n #_09AB34: REP #$30\n\n #_09AB36: PHY\n\n #_09AB37: LDA.b $04\n #_09AB39: AND.w #$00FF\n #_09AB3C: ASL A\n #_09AB3D: ASL A\n #_09AB3E: ASL A\n #_09AB3F: TAY\n\n #_09AB40: LDA.l $7EF3CC\n #_09AB44: AND.w #$00FF\n #_09AB47: ASL A\n #_09AB48: TAX\n\n #_09AB49: TYA\n #_09AB4A: CLC\n #_09AB4B: ADC.w .char_data_offset,X\n #_09AB4E: TAX\n\n #_09AB4F: LDA.w .char_offset+0,X\n #_09AB52: CLC\n #_09AB53: ADC.b $06\n #_09AB55: STA.b $00\n\n #_09AB57: LDA.w .char_offset+2,X\n #_09AB5A: CLC\n #_09AB5B: ADC.b $08\n #_09AB5D: STA.b $02\n\n #_09AB5F: PLY\n\n; ---------------------------------------------------------\n\n #_09AB60: SEP #$30\n\n #_09AB62: JSR FollowerDraw_CalculateOAMCoords\n\n #_09AB65: LDA.b #$20\n #_09AB67: STA.b ($90),Y\n\n #_09AB69: INY\n\n #_09AB6A: LDA.b $04\n #_09AB6C: ASL A\n #_09AB6D: CLC\n #_09AB6E: ADC.b $04\n #_09AB70: TAX\n\n #_09AB71: LDA.w .props+0,X\n #_09AB74: STA.w $0AE8\n\n #_09AB77: LDA.w .props+2,X\n #_09AB7A: AND.b #$F0\n #_09AB7C: ORA.b $72\n #_09AB7E: ORA.b $65\n #_09AB80: STA.b ($90),Y\n\n #_09AB82: INY\n #_09AB83: PHY\n\n #_09AB84: TYA\n #_09AB85: SEC\n #_09AB86: SBC.b #$04\n #_09AB88: LSR A\n #_09AB89: LSR A\n #_09AB8A: TAY\n\n #_09AB8B: LDA.b #$02\n #_09AB8D: ORA.b $75\n #_09AB8F: STA.b ($92),Y\n\n #_09AB91: PLY\n\n; ---------------------------------------------------------\n\n.bomb_or_chest\n #_09AB92: REP #$30\n\n #_09AB94: PHY\n\n #_09AB95: LDA.b $04\n #_09AB97: AND.w #$00FF\n #_09AB9A: ASL A\n #_09AB9B: ASL A\n #_09AB9C: ASL A\n #_09AB9D: TAY\n\n #_09AB9E: LDA.l $7EF3CC\n #_09ABA2: AND.w #$00FF\n #_09ABA5: ASL A\n #_09ABA6: TAX\n\n #_09ABA7: TYA\n #_09ABA8: CLC\n #_09ABA9: ADC.w .char_data_offset,X\n #_09ABAC: TAX\n\n #_09ABAD: LDA.w .char_offset+4,X\n #_09ABB0: CLC\n #_09ABB1: ADC.b $06\n #_09ABB3: CLC\n #_09ABB4: ADC.w #$0008\n #_09ABB7: STA.b $00\n\n #_09ABB9: LDA.w .char_offset+6,X\n #_09ABBC: CLC\n #_09ABBD: ADC.b $08\n #_09ABBF: STA.b $02\n\n #_09ABC1: PLY\n\n; ---------------------------------------------------------\n\n #_09ABC2: SEP #$30\n\n #_09ABC4: JSR FollowerDraw_CalculateOAMCoords\n\n #_09ABC7: LDA.b #$22\n #_09ABC9: STA.b ($90),Y\n\n #_09ABCB: INY\n\n #_09ABCC: LDA.b $04\n #_09ABCE: ASL A\n #_09ABCF: CLC\n #_09ABD0: ADC.b $04\n #_09ABD2: TAX\n\n #_09ABD3: LDA.w .props+1,X\n #_09ABD6: STA.w $0AEA\n\n #_09ABD9: LDA.w .props+2,X\n #_09ABDC: AND.b #$0F\n\n #_09ABDE: ASL A\n #_09ABDF: ASL A\n #_09ABE0: ASL A\n #_09ABE1: ASL A\n\n #_09ABE2: ORA.b $72\n #_09ABE4: ORA.b $65\n #_09ABE6: STA.b ($90),Y\n\n #_09ABE8: INY\n\n #_09ABE9: TYA\n #_09ABEA: SEC\n #_09ABEB: SBC.b #$04\n #_09ABED: LSR A\n #_09ABEE: LSR A\n #_09ABEF: TAY\n\n #_09ABF0: LDA.b #$02\n #_09ABF2: ORA.b $75\n #_09ABF4: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n #_09ABF6: PLY\n #_09ABF7: PLX\n\n #_09ABF8: RTS", + "file": "bank_09.asm" + }, + { + "name": "FollowerDraw_CalculateOAMCoords", + "code": "FollowerDraw_CalculateOAMCoords:\n #_09ABF9: REP #$20\n\n #_09ABFB: LDA.b $02\n #_09ABFD: STA.b ($90),Y\n\n #_09ABFF: INY\n\n #_09AC00: CLC\n #_09AC01: ADC.w #$0080\n #_09AC04: CMP.w #$0180\n #_09AC07: BCS .off_screen\n\n #_09AC09: LDA.b $02\n #_09AC0B: AND.w #$0100\n #_09AC0E: STA.b $74\n\n #_09AC10: LDA.b $00\n #_09AC12: STA.b ($90),Y\n\n #_09AC14: CLC\n #_09AC15: ADC.w #$0010\n #_09AC18: CMP.w #$0100\n #_09AC1B: BCC .on_screen\n\n.off_screen\n #_09AC1D: LDA.w #$00F0\n #_09AC20: STA.b ($90),Y\n\n.on_screen\n #_09AC22: SEP #$20\n\n #_09AC24: INY\n\n #_09AC25: RTS", + "file": "bank_09.asm" + }, + { + "name": "Follower_CheckForTrigger", + "code": "Follower_CheckForTrigger:\n #_09AC26: REP #$20\n\n #_09AC28: LDA.b $00\n #_09AC2A: CLC\n #_09AC2B: ADC.b $0A\n #_09AC2D: CLC\n #_09AC2E: ADC.w #$0008\n #_09AC31: STA.b $00\n\n #_09AC33: LDA.b $02\n #_09AC35: CLC\n #_09AC36: ADC.w #$0008\n #_09AC39: STA.b $02\n\n #_09AC3B: LDA.b $20\n #_09AC3D: CLC\n #_09AC3E: ADC.w #$000C\n #_09AC41: SEC\n #_09AC42: SBC.b $00\n #_09AC44: BPL .positive_y\n\n #_09AC46: EOR.w #$FFFF\n #_09AC49: INC A\n\n.positive_y\n #_09AC4A: CMP.w #$001C\n #_09AC4D: BCS .no_trigger\n\n #_09AC4F: LDA.b $22\n #_09AC51: CLC\n #_09AC52: ADC.w #$000C\n #_09AC55: SEC\n #_09AC56: SBC.b $02\n #_09AC58: BPL .positive_x\n\n #_09AC5A: EOR.w #$FFFF\n #_09AC5D: INC A\n\n.positive_x\n #_09AC5E: CMP.w #$0018\n #_09AC61: BCS .no_trigger\n\n; ---------------------------------------------------------\n\n.trigger\n #_09AC63: SEP #$20\n #_09AC65: SEC\n\n #_09AC66: RTS", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_TerminateSelectInteractives", + "code": "Ancilla_TerminateSelectInteractives:\n #_09AC6B: PHB\n #_09AC6C: PHK\n #_09AC6D: PLB\n\n #_09AC6E: LDX.b #$05\n\n.next_slot\n #_09AC70: LDA.w $0C4A,X\n #_09AC73: CMP.b #$3E ; ANCILLA 3E\n #_09AC75: BNE .not_crystal\n\n #_09AC77: TXY\n\n #_09AC78: BRA .check_carrying\n\n.not_crystal\n #_09AC7A: LDA.w $0C4A,X\n #_09AC7D: CMP.b #$2C ; ANCILLA 2C\n #_09AC7F: BNE .check_carrying\n\n #_09AC81: STZ.w $0646\n\n #_09AC84: LDA.b $48\n #_09AC86: AND.b #$80\n #_09AC88: BEQ .check_carrying\n\n #_09AC8A: STZ.b $48\n #_09AC8C: STZ.b $5E\n\n.check_carrying\n #_09AC8E: LDA.w $0308\n #_09AC91: BPL .not_carrying\n\n #_09AC93: TXA\n #_09AC94: INC A\n #_09AC95: CMP.w $02EC\n #_09AC98: BEQ .nothing_nearby\n\n #_09AC9A: BRA .delete_ancilla\n\n; ---------------------------------------------------------\n\n.not_carrying\n #_09AC9C: TXA\n #_09AC9D: INC A\n #_09AC9E: CMP.w $02EC\n #_09ACA1: BNE .delete_ancilla\n\n #_09ACA3: STZ.w $02EC\n\n.delete_ancilla\n #_09ACA6: STZ.w $0C4A,X\n\n.nothing_nearby\n #_09ACA9: DEX\n #_09ACAA: BPL .next_slot\n\n; ---------------------------------------------------------\n\n #_09ACAC: LDA.w $037A\n #_09ACAF: AND.b #$10\n #_09ACB1: BEQ .not_netting\n\n #_09ACB3: STZ.b $46\n #_09ACB5: STZ.w $037A\n\n.not_netting\n #_09ACB8: STZ.w $03F0\n\n #_09ACBB: STZ.w $02F2\n #_09ACBE: STZ.w $02F3\n\n #_09ACC1: STZ.w $035F\n #_09ACC4: STZ.w $03FC\n\n #_09ACC7: STZ.w $037B\n #_09ACCA: STZ.w $03FD\n\n #_09ACCD: STZ.w $0360\n\n; ---------------------------------------------------------\n\n #_09ACD0: LDA.b $5D\n #_09ACD2: CMP.b #$13 ; LINKSTATE 13\n #_09ACD4: BNE .not_hooking\n\n #_09ACD6: LDA.b #$00 ; LINKSTATE 00\n #_09ACD8: STA.b $5D\n\n #_09ACDA: LDA.b $3A\n #_09ACDC: AND.b #$BF\n #_09ACDE: STA.b $3A\n\n #_09ACE0: LDA.b $50\n #_09ACE2: AND.b #$FE\n #_09ACE4: STA.b $50\n\n #_09ACE6: LDA.w $037A\n #_09ACE9: AND.b #$FB\n #_09ACEB: STA.w $037A\n\n #_09ACEE: STZ.w $037E\n\n; ---------------------------------------------------------\n\n.not_hooking\n #_09ACF1: PLB\n\n #_09ACF2: RTL", + "file": "bank_09.asm" + }, + { + "name": "Follower_Disable", + "code": "Follower_Disable:\n #_09ACF3: LDA.l $7EF3CC\n #_09ACF7: CMP.b #$0A ; FOLLOWER 0A\n #_09ACF9: BEQ .kiki\n\n #_09ACFB: CMP.b #$09 ; FOLLOWER 09\n #_09ACFD: BNE .exit\n\n.kiki\n #_09ACFF: LDA.b #$00\n #_09AD01: STA.l $7EF3CC\n\n.exit\n #_09AD05: RTL", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_SetCoordinates", + "code": "Ancilla_SetCoordinates:\n #_09AD06: LDA.b $00\n #_09AD08: STA.w $0BFA,X\n\n #_09AD0B: LDA.b $01\n #_09AD0D: STA.w $0C0E,X\n\n #_09AD10: LDA.b $02\n #_09AD12: STA.w $0C04,X\n\n #_09AD15: LDA.b $03\n #_09AD17: STA.w $0C18,X\n\n #_09AD1A: RTS", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_GetCoordinates", + "code": "Ancilla_GetCoordinates:\n #_09AD1B: LDA.w $0BFA,X\n #_09AD1E: STA.b $00\n\n #_09AD20: LDA.w $0C0E,X\n #_09AD23: STA.b $01\n\n #_09AD25: LDA.w $0C04,X\n #_09AD28: STA.b $02\n\n #_09AD2A: LDA.w $0C18,X\n #_09AD2D: STA.b $03\n\n #_09AD2F: RTS", + "file": "bank_09.asm" + }, + { + "name": "AncillaAdd_ExplodingSomariaBlock", + "code": "AncillaAdd_ExplodingSomariaBlock:\n #_09AD30: PHB\n #_09AD31: PHK\n #_09AD32: PLB\n\n #_09AD33: LDA.b #$2E ; ANCILLA 2E\n #_09AD35: STA.w $0C4A,X\n\n #_09AD38: PHX\n\n #_09AD39: TAX\n\n #_09AD3A: LDA.l AncillaObjectAllocation,X\n\n #_09AD3E: PLX\n\n #_09AD3F: STA.w $0C90,X\n\n #_09AD42: LDA.b #$03\n #_09AD44: STA.w $03B1,X\n\n #_09AD47: STZ.w $0C54,X\n #_09AD4A: STZ.w $0C5E,X\n\n #_09AD4D: STZ.w $039F,X\n #_09AD50: STZ.w $03A4,X\n\n #_09AD53: STZ.w $03EA,X\n #_09AD56: STZ.w $0280,X\n\n #_09AD59: STZ.w $0646\n\n #_09AD5C: JSL Ancilla_CalculateSFXPan\n #_09AD60: ORA.b #$01 ; SFX3.01\n #_09AD62: STA.w $012F\n\n #_09AD65: PLB\n\n #_09AD66: RTL", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_AddRupees", + "code": "Ancilla_AddRupees:\n #_09AD6C: PHB\n #_09AD6D: PHK\n #_09AD6E: PLB\n\n #_09AD6F: LDA.w $0C5E,X\n #_09AD72: CMP.b #$34 ; ITEMGET 34\n #_09AD74: BEQ .low\n\n #_09AD76: CMP.b #$35 ; ITEMGET 35\n #_09AD78: BEQ .low\n\n #_09AD7A: CMP.b #$36 ; ITEMGET 36\n #_09AD7C: BEQ .low\n\n #_09AD7E: CMP.b #$40 ; ITEMGET 40\n #_09AD80: BEQ .big\n\n #_09AD82: CMP.b #$41 ; ITEMGET 41\n #_09AD84: BEQ .big\n\n #_09AD86: CMP.b #$46 ; ITEMGET 46\n #_09AD88: BEQ .absolutely_massive\n\n #_09AD8A: CMP.b #$47 ; ITEMGET 47\n #_09AD8C: BNE .not_rupees\n\n; ---------------------------------------------------------\n\n.absolutely_massive\n #_09AD8E: LDY.b #$02\n #_09AD90: CMP.b #$47 ; ITEMGET 47\n #_09AD92: BEQ .add_value\n\n #_09AD94: LDA.b #$2C\n #_09AD96: STA.b $00\n\n #_09AD98: LDA.b #$01\n #_09AD9A: STA.b $01\n\n #_09AD9C: BRA .add_to_purse\n\n; ---------------------------------------------------------\n\n.big\n #_09AD9E: SEC\n #_09AD9F: SBC.b #$40 ; ITEMGET 40\n #_09ADA1: CLC\n #_09ADA2: ADC.b #$03\n #_09ADA4: TAY\n\n #_09ADA5: BRA .add_value\n\n; ---------------------------------------------------------\n\n.low\n #_09ADA7: SEC\n #_09ADA8: SBC.b #$34 ; ITEMGET 34\n #_09ADAA: TAY\n\n; ---------------------------------------------------------\n\n.add_value\n #_09ADAB: LDA.w .value,Y\n #_09ADAE: STA.b $00\n #_09ADB0: STZ.b $01\n\n; ---------------------------------------------------------\n\n.add_to_purse\n #_09ADB2: REP #$20\n\n #_09ADB4: LDA.l $7EF360\n #_09ADB8: CLC\n #_09ADB9: ADC.b $00\n #_09ADBB: STA.l $7EF360\n\n; ---------------------------------------------------------\n\n #_09ADBF: SEP #$20\n #_09ADC1: SEC\n\n #_09ADC2: PLB\n\n #_09ADC3: RTL", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_TerminateSparkleObjects", + "code": "Ancilla_TerminateSparkleObjects:\n #_09ADC7: PHX\n\n #_09ADC8: LDX.b #$04\n\n.next_slot\n #_09ADCA: LDA.w $0C4A,X\n\n #_09ADCD: CMP.b #$2A ; ANCILLA 2A\n #_09ADCF: BEQ .delete_this\n\n #_09ADD1: CMP.b #$2B ; ANCILLA 2B\n #_09ADD3: BEQ .delete_this\n\n #_09ADD5: CMP.b #$30 ; ANCILLA 30\n #_09ADD7: BEQ .delete_this\n\n #_09ADD9: CMP.b #$31 ; ANCILLA 31\n #_09ADDB: BEQ .delete_this\n\n #_09ADDD: CMP.b #$18 ; ANCILLA 18\n #_09ADDF: BEQ .delete_this\n\n #_09ADE1: CMP.b #$19 ; ANCILLA 19\n #_09ADE3: BEQ .delete_this\n\n #_09ADE5: CMP.b #$0C ; ANCILLA 0C\n #_09ADE7: BNE .skip\n\n.delete_this\n #_09ADE9: STZ.w $0C4A,X\n\n.skip\n #_09ADEC: DEX\n #_09ADED: BPL .next_slot\n\n; ---------------------------------------------------------\n\n #_09ADEF: PLX\n\n #_09ADF0: RTL", + "file": "bank_09.asm" + }, + { + "name": "DashDust_Motive", + "code": "DashDust_Motive:\n #_09ADF4: PHB\n #_09ADF5: PHK\n #_09ADF6: PLB\n\n #_09ADF7: LDA.w $0C68,X\n #_09ADFA: BNE .delay\n\n #_09ADFC: LDA.b #$03\n #_09ADFE: STA.w $0C68,X\n\n #_09AE01: INC.w $0C5E,X\n\n #_09AE04: LDA.w $0C5E,X\n #_09AE07: CMP.b #$03\n #_09AE09: BNE .delay\n\n #_09AE0B: STZ.w $0C4A,X\n\n #_09AE0E: BRA .exit\n\n.delay\n #_09AE10: LDA.b $2F\n #_09AE12: CMP.b #$02\n #_09AE14: BNE .not_behind\n\n #_09AE16: LDA.b #$04\n #_09AE18: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.not_behind\n #_09AE1C: JSL Ancilla_PrepOAMCoord_long\n\n #_09AE20: PHX\n\n #_09AE21: LDA.w $0C5E,X\n #_09AE24: TAX\n\n #_09AE25: LDY.b #$00\n\n #_09AE27: JSL Ancilla_SetOAM_XY_long\n\n #_09AE2B: LDA.w .char,X\n #_09AE2E: STA.b ($90),Y\n\n #_09AE30: INY\n\n #_09AE31: LDA.b #$04\n #_09AE33: ORA.b $65\n #_09AE35: STA.b ($90),Y\n\n #_09AE37: LDA.b #$00\n #_09AE39: STA.b ($92)\n\n #_09AE3B: PLX\n\n.exit\n #_09AE3C: PLB\n\n #_09AE3D: RTL", + "file": "bank_09.asm" + }, + { + "name": "NULL_09AE3E", + "code": "NULL_09AE3E:\n #_09AE3E: db $FF, $FF\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Sprite_SpawnSuperficialBombBlast", + "code": "Sprite_SpawnSuperficialBombBlast:\n #_09AE40: LDA.b #$4A ; SPRITE 4A\n #_09AE42: JSL Sprite_SpawnDynamically\n #_09AE46: BMI .exit\n\n #_09AE48: LDA.b #$06\n #_09AE4A: STA.w $0DD0,Y\n\n #_09AE4D: LDA.b #$1F\n #_09AE4F: STA.w $0E00,Y\n\n #_09AE52: LDA.b #$03\n #_09AE54: STA.w $0DB0,Y\n #_09AE57: STA.w $0E40,Y\n\n #_09AE5A: INC A\n #_09AE5B: STA.w $0F50,Y\n\n #_09AE5E: LDA.b #$15 ; SFX2.15\n #_09AE60: JSL SpriteSFX_QueueSFX2WithPan\n\n; =========================================================\n\n#Sprite_SetSpawnedCoordinates:\n #_09AE64: LDA.b $00\n #_09AE66: STA.w $0D10,Y\n\n #_09AE69: LDA.b $01\n #_09AE6B: STA.w $0D30,Y\n\n #_09AE6E: LDA.b $02\n #_09AE70: STA.w $0D00,Y\n\n #_09AE73: LDA.b $03\n #_09AE75: STA.w $0D20,Y\n\n #_09AE78: LDA.b $04\n #_09AE7A: STA.w $0F70,Y\n\n.exit\n #_09AE7D: RTL", + "file": "bank_09.asm" + }, + { + "name": "Sprite_SpawnDummyDeathAnimation", + "code": "Sprite_SpawnDummyDeathAnimation:\n #_09AE7E: LDA.b #$0B ; SPRITE 0B\n #_09AE80: JSL Sprite_SpawnDynamically\n #_09AE84: BMI .exit\n\n #_09AE86: JSL Sprite_SetSpawnedCoordinates\n\n #_09AE8A: LDA.b #$06\n #_09AE8C: STA.w $0DD0,Y\n\n #_09AE8F: LDA.b #$0F\n #_09AE91: STA.w $0DF0,Y\n\n #_09AE94: LDA.b #$14 ; SFX2.14\n #_09AE96: JSL SpriteSFX_QueueSFX2WithPan\n\n #_09AE9A: LDA.b #$02\n #_09AE9C: STA.w $0F20,Y\n\n.exit\n #_09AE9F: RTL", + "file": "bank_09.asm" + }, + { + "name": "MagicBat_SpawnLightning", + "code": "MagicBat_SpawnLightning:\n #_09AEA8: JSL .spawn_bolt\n #_09AEAC: JSL .spawn_bolt\n #_09AEB0: JSL .spawn_bolt\n\n; ---------------------------------------------------------\n\n.spawn_bolt\n #_09AEB4: LDA.b #$3A ; SPRITE 3A\n #_09AEB6: JSL Sprite_SpawnDynamically\n #_09AEBA: BMI .exit\n\n #_09AEBC: LDA.b #$01 ; SFX3.01\n #_09AEBE: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n #_09AEC2: JSL Sprite_SetSpawnedCoordinates\n\n #_09AEC6: LDA.b $00\n #_09AEC8: CLC\n #_09AEC9: ADC.b #$04\n #_09AECB: STA.w $0D10,Y\n\n #_09AECE: LDA.b $01\n #_09AED0: ADC.b #$00\n #_09AED2: STA.w $0D30,Y\n\n #_09AED5: LDA.b $02\n #_09AED7: CLC\n #_09AED8: ADC.b #$0C\n #_09AEDA: PHP\n\n #_09AEDB: SEC\n #_09AEDC: SBC.w $0F70,X\n #_09AEDF: STA.w $0D00,Y\n\n #_09AEE2: LDA.b $03\n #_09AEE4: SBC.b #$00\n\n #_09AEE6: PLP\n #_09AEE7: ADC.b #$00\n #_09AEE9: STA.w $0D20,Y\n\n; ---------------------------------------------------------\n\n #_09AEEC: LDA.b #$00\n #_09AEEE: STA.w $0F70,Y\n\n #_09AEF1: LDA.b #$18\n #_09AEF3: STA.w $0D40,Y\n #_09AEF6: STA.w $0EB0,Y\n #_09AEF9: STA.w $0BA0,Y\n\n #_09AEFC: LDA.b #$80\n #_09AEFE: STA.w $0E40,Y\n\n #_09AF01: LDA.b #$03\n #_09AF03: STA.w $0E60,Y\n\n #_09AF06: AND.b #$03\n #_09AF08: STA.w $0F50,Y\n\n #_09AF0B: LDA.b #$20\n #_09AF0D: STA.w $0DF0,Y\n\n #_09AF10: LDA.b #$02\n #_09AF12: STA.w $0DC0,Y\n\n; ---------------------------------------------------------\n\n #_09AF15: PHX\n\n #_09AF16: LDA.w $0ED0,X\n #_09AF19: TAX\n\n #_09AF1A: LDA.l .speed_x,X\n #_09AF1E: STA.w $0D50,Y\n\n #_09AF21: LDA.l .initial_cycle,X\n #_09AF25: STA.w $0E80,Y\n\n #_09AF28: LDA.b #$02\n #_09AF2A: STA.w $0F20,Y\n\n #_09AF2D: PLX\n\n #_09AF2E: INC.w $0ED0,X\n\n; ---------------------------------------------------------\n\n.exit\n #_09AF31: RTL", + "file": "bank_09.asm" + }, + { + "name": "CheckIfScreenIsClear", + "code": "CheckIfScreenIsClear:\n #_09AF32: PHX\n #_09AF33: LDX.b #$0F\n\n.next_sprite\n #_09AF35: LDA.w $0DD0,X\n #_09AF38: BEQ .ignorable_sprite\n\n #_09AF3A: LDA.w $0F60,X\n #_09AF3D: AND.b #$40\n #_09AF3F: BNE .ignorable_sprite\n\n #_09AF41: LDA.w $0D10,X\n #_09AF44: CMP.b $E2\n\n #_09AF46: LDA.w $0D30,X\n #_09AF49: SBC.b $E3\n #_09AF4B: BNE .ignorable_sprite\n\n #_09AF4D: LDA.w $0D00,X\n #_09AF50: CMP.b $E8\n\n #_09AF52: LDA.w $0D20,X\n #_09AF55: SBC.b $E9\n #_09AF57: BNE .ignorable_sprite\n\n.fail\n #_09AF59: PLX\n\n #_09AF5A: CLC\n\n #_09AF5B: RTL", + "file": "bank_09.asm" + }, + { + "name": "CheckIfRoomIsClear", + "code": "CheckIfRoomIsClear:\n #_09AF61: PHX\n #_09AF62: LDX.b #$0F\n\n.next_sprite\n #_09AF64: LDA.w $0DD0,X\n #_09AF67: BEQ .ignorable_sprite\n\n #_09AF69: LDA.w $0F60,X\n #_09AF6C: AND.b #$40\n #_09AF6E: BNE .ignorable_sprite\n\n; ---------------------------------------------------------\n\n#FailBecauseOverlordsNotClear:\n #_09AF70: PLX\n #_09AF71: CLC\n\n #_09AF72: RTL", + "file": "bank_09.asm" + }, + { + "name": "CheckIfOverlordsClear", + "code": "CheckIfOverlordsClear:\n #_09AF76: LDX.b #$07\n\n.next_overlord\n #_09AF78: LDA.w $0B00,X\n #_09AF7B: CMP.b #$14 ; OVERLORD 14\n #_09AF7D: BEQ FailBecauseOverlordsNotClear\n\n #_09AF7F: CMP.b #$18 ; OVERLORD 18\n #_09AF81: BEQ FailBecauseOverlordsNotClear\n\n #_09AF83: DEX\n #_09AF84: BPL .next_overlord\n\n; ---------------------------------------------------------\n\n #_09AF86: PLX\n\n #_09AF87: SEC\n\n #_09AF88: RTL", + "file": "bank_09.asm" + }, + { + "name": "InitializeMirrorPortal", + "code": "InitializeMirrorPortal:\n #_09AF89: PHB\n #_09AF8A: PHK\n #_09AF8B: PLB\n\n #_09AF8C: LDX.b #$0F\n\n.next_sprite\n #_09AF8E: LDA.w $0DD0,X\n #_09AF91: BEQ .skip_sprite\n\n #_09AF93: LDA.w $0E20,X\n #_09AF96: CMP.b #$6C ; SPRITE 6C\n #_09AF98: BNE .skip_sprite\n\n #_09AF9A: STZ.w $0DD0,X\n\n.skip_sprite\n #_09AF9D: DEX\n #_09AF9E: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_09AFA0: LDA.b #$6C ; SPRITE 6C\n #_09AFA2: JSL Sprite_SpawnDynamically\n #_09AFA6: BPL .free_slot\n\n #_09AFA8: LDY.b #$00\n\n.free_slot\n #_09AFAA: LDA.l $001ABF\n #_09AFAE: STA.w $0D10,Y\n\n #_09AFB1: LDA.l $001ACF\n #_09AFB5: STA.w $0D30,Y\n\n #_09AFB8: LDA.l $001ADF\n #_09AFBC: CLC\n #_09AFBD: ADC.b #$08\n #_09AFBF: STA.w $0D00,Y\n\n #_09AFC2: LDA.l $001AEF\n #_09AFC6: ADC.b #$00\n #_09AFC8: STA.w $0D20,Y\n\n #_09AFCB: LDA.b #$00\n #_09AFCD: STA.w $0F20,Y\n\n #_09AFD0: INC A\n #_09AFD1: STA.w $0BA0,Y\n\n #_09AFD4: PLB\n\n #_09AFD5: RTL", + "file": "bank_09.asm" + }, + { + "name": "Sprite_InitializeSlots", + "code": "Sprite_InitializeSlots:\n #_09AFD6: PHB\n #_09AFD7: PHK\n #_09AFD8: PLB\n\n #_09AFD9: LDX.b #$0F\n\n.next_sprite\n #_09AFDB: LDA.w $0DD0,X\n #_09AFDE: BEQ .skip_sprite\n\n #_09AFE0: LDY.w $0E20,X\n #_09AFE3: CMP.b #$0A\n #_09AFE5: BNE .not_carried\n\n #_09AFE7: CPY.b #$EC ; SPRITE EC\n #_09AFE9: BEQ .skip_sprite\n\n #_09AFEB: CPY.b #$D2 ; SPRITE D2\n #_09AFED: BEQ .skip_sprite\n\n #_09AFEF: STZ.w $0309\n #_09AFF2: STZ.w $0308\n\n #_09AFF5: BRA .kill_sprite\n\n.not_carried\n #_09AFF7: CPY.b #$6C ; SPRITE 6C\n #_09AFF9: BEQ .skip_sprite\n\n #_09AFFB: LDA.w $0C9A,X\n #_09AFFE: CMP.w $040A\n #_09B001: BEQ .skip_sprite\n\n.kill_sprite\n #_09B003: STZ.w $0DD0,X\n\n.skip_sprite\n #_09B006: DEX\n #_09B007: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_09B009: LDX.b #$07\n\n.next_overlord\n #_09B00B: LDA.w $0B00,X\n #_09B00E: BEQ .skip_overlord\n\n #_09B010: LDA.w $0CCA,X\n #_09B013: CMP.w $040A\n #_09B016: BEQ .skip_overlord\n\n #_09B018: STZ.w $0B00,X\n\n.skip_overlord\n #_09B01B: DEX\n #_09B01C: BPL .next_overlord\n\n; ---------------------------------------------------------\n\n #_09B01E: PLB\n\n #_09B01F: RTL", + "file": "bank_09.asm" + }, + { + "name": "Fireball_SpawnTrailGarnish", + "code": "Fireball_SpawnTrailGarnish:\n #_09B020: TXA\n #_09B021: EOR.b $1A\n #_09B023: AND.b #$03\n #_09B025: BNE .exit\n\n #_09B027: PHX\n\n #_09B028: LDX.b #$1D\n\n.next_check\n #_09B02A: LDA.l $7FF800,X\n #_09B02E: BEQ .free_slot\n\n #_09B030: DEX\n #_09B031: BPL .next_check\n\n #_09B033: PLX\n\n.exit\n #_09B034: RTL", + "file": "bank_09.asm" + }, + { + "name": "Garnish_ExecuteUpperSlots_long", + "code": "Garnish_ExecuteUpperSlots_long:\n #_09B06E: JSL HandleScreenFlash\n\n #_09B072: LDA.w $0FB4\n #_09B075: BEQ .exit\n\n #_09B077: PHB\n #_09B078: PHK\n #_09B079: PLB\n\n #_09B07A: JSR Garnish_ExecuteUpperSlots\n\n #_09B07D: PLB\n\n.exit\n #_09B07E: RTL", + "file": "bank_09.asm" + }, + { + "name": "Garnish_ExecuteLowerSlots_long", + "code": "Garnish_ExecuteLowerSlots_long:\n #_09B07F: LDA.w $0FB4\n #_09B082: BEQ .exit\n\n #_09B084: PHB\n #_09B085: PHK\n #_09B086: PLB\n\n #_09B087: JSR Garnish_ExecuteLowerSlots\n\n #_09B08A: PLB\n\n.exit\n #_09B08B: RTL", + "file": "bank_09.asm" + }, + { + "name": "Garnish_ExecuteUpperSlots", + "code": "Garnish_ExecuteUpperSlots:\n #_09B08C: LDX.b #$1D\n\n.next\n #_09B08E: JSR Garnish_ExecuteSingle\n\n #_09B091: DEX\n #_09B092: CPX.b #$0E\n #_09B094: BNE .next\n\n #_09B096: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish_ExecuteLowerSlots", + "code": "Garnish_ExecuteLowerSlots:\n #_09B097: LDX.b #$0E\n\n.next\n #_09B099: JSR Garnish_ExecuteSingle\n\n #_09B09C: DEX\n #_09B09D: BPL .next\n\n #_09B09F: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish_ExecuteSingle", + "code": "Garnish_ExecuteSingle:\n #_09B0B6: STX.w $0FA0\n\n #_09B0B9: LDA.l $7FF800,X\n #_09B0BD: BEQ .exit\n\n #_09B0BF: CMP.b #$05\n #_09B0C1: BEQ .ignore_submodule\n\n #_09B0C3: LDA.b $11\n #_09B0C5: ORA.w $0FC1\n #_09B0C8: BNE .dont_terminate\n\n.ignore_submodule\n #_09B0CA: LDA.l $7FF90E,X\n #_09B0CE: BEQ .dont_terminate\n\n #_09B0D0: DEC A\n #_09B0D1: STA.l $7FF90E,X\n #_09B0D5: BNE .dont_terminate\n\n #_09B0D7: STA.l $7FF800,X\n\n #_09B0DB: BRA .exit\n\n; ---------------------------------------------------------\n\n.dont_terminate\n #_09B0DD: LDY.w $0FB3\n #_09B0E0: BEQ .ignore_layer\n\n #_09B0E2: LDA.l $7FF968,X\n #_09B0E6: BEQ .lower_layer\n\n; ---------------------------------------------------------\n\n #_09B0E8: LDA.l $7FF800,X\n #_09B0EC: TAY\n\n #_09B0ED: LDA.w .object_allocation-1,Y\n #_09B0F0: JSL SpriteDraw_AllocateOAMFromRegionF\n\n #_09B0F4: BRA .run_ai\n\n; ---------------------------------------------------------\n\n.lower_layer\n #_09B0F6: LDA.l $7FF800,X\n #_09B0FA: TAY\n\n #_09B0FB: LDA.w .object_allocation-1,Y\n #_09B0FE: JSL SpriteDraw_AllocateOAMFromRegionD\n\n #_09B102: BRA .run_ai\n\n; ---------------------------------------------------------\n\n.ignore_layer\n #_09B104: LDA.l $7FF800,X\n #_09B108: TAY\n\n #_09B109: LDA.w .object_allocation-1,Y\n #_09B10C: JSL SpriteDraw_AllocateOAMFromRegionA\n\n; ---------------------------------------------------------\n\n.run_ai\n #_09B110: LDA.l $7FF800,X\n #_09B114: DEC A\n\n #_09B115: REP #$30\n\n #_09B117: AND.w #$00FF\n #_09B11A: ASL A\n #_09B11B: TAY\n\n #_09B11C: LDA.w .vectors,Y\n #_09B11F: DEC A\n #_09B120: PHA\n\n #_09B121: SEP #$30\n\n.exit\n #_09B123: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish15_ArrghusSplash", + "code": "Garnish15_ArrghusSplash:\n #_09B178: JSR Garnish_PrepOAMCoord\n\n #_09B17B: LDA.l $7FF90E,X\n #_09B17F: LSR A\n #_09B180: AND.b #$06\n #_09B182: STA.b $06\n\n #_09B184: LDA.b #$01\n #_09B186: STA.b $07\n\n #_09B188: PHX\n\n; ---------------------------------------------------------\n\n.next_object\n #_09B189: LDA.b $06\n #_09B18B: ORA.b $07\n #_09B18D: TAX\n\n #_09B18E: LDA.b $00\n #_09B190: CLC\n #_09B191: ADC.w .offset_y,X\n #_09B194: STA.b ($90),Y\n\n #_09B196: LDA.b $02\n #_09B198: CLC\n #_09B199: ADC.w .offset_x,X\n #_09B19C: INY\n #_09B19D: STA.b ($90),Y\n\n #_09B19F: LDA.w .char,X\n #_09B1A2: INY\n #_09B1A3: STA.b ($90),Y\n\n #_09B1A5: LDA.w .prop,X\n #_09B1A8: INY\n #_09B1A9: STA.b ($90),Y\n\n #_09B1AB: PHY\n\n #_09B1AC: TYA\n #_09B1AD: LSR A\n #_09B1AE: LSR A\n #_09B1AF: TAY\n\n #_09B1B0: LDA.w .size,X\n #_09B1B3: STA.b ($92),Y\n\n #_09B1B5: PLY\n #_09B1B6: INY\n\n #_09B1B7: DEC.b $07\n #_09B1B9: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_09B1BB: PLX\n\n #_09B1BC: RTS", + "file": "bank_09.asm" + }, + { + "name": "GarnishSpawn_PyramidDebris", + "code": "GarnishSpawn_PyramidDebris:\n #_09B1BD: LDA.b #$03 ; SFX3.03\n #_09B1BF: STA.w $012F\n\n #_09B1C2: LDA.b #$1F ; SFX2.1F\n #_09B1C4: STA.w $012E\n\n #_09B1C7: LDA.b #$05 ; SFX1.05\n #_09B1C9: STA.w $012D\n\n #_09B1CC: PHX\n #_09B1CD: TXY\n\n #_09B1CE: LDX.b #$1D\n\n.next_slot\n #_09B1D0: LDA.l $7FF800,X\n #_09B1D4: BEQ .open_slot\n\n #_09B1D6: DEX\n #_09B1D7: BPL .next_slot\n\n #_09B1D9: INX\n\n; ---------------------------------------------------------\n\n.open_slot\n #_09B1DA: LDA.b #$13 ; GARNISH 13\n #_09B1DC: STA.l $7FF800,X\n #_09B1E0: STA.w $0FB4\n\n #_09B1E3: LDA.b #$E8\n #_09B1E5: CLC\n #_09B1E6: ADC.b $00\n #_09B1E8: STA.l $7FF83C,X\n\n #_09B1EC: LDA.b #$60\n #_09B1EE: CLC\n #_09B1EF: ADC.b $01\n #_09B1F1: STA.l $7FF81E,X\n\n #_09B1F5: LDA.b $02\n #_09B1F7: STA.l $7FF8B4,X\n\n #_09B1FB: LDA.b $03\n #_09B1FD: STA.l $7FF896,X\n\n #_09B201: JSL GetRandomNumber\n #_09B205: AND.b #$1F\n #_09B207: ADC.b #$30\n #_09B209: STA.l $7FF90E,X\n\n #_09B20D: PLX\n\n #_09B20E: RTL", + "file": "bank_09.asm" + }, + { + "name": "PyramidDebris_DeleteSelf", + "code": "PyramidDebris_DeleteSelf:\n #_09B20F: LDA.b #$00\n #_09B211: STA.l $7FF800,X\n\n #_09B215: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish13_PyramidDebris", + "code": "Garnish13_PyramidDebris:\n #_09B216: JSR Garnish_Move_XY\n\n #_09B219: LDA.l $7FF896,X\n #_09B21D: CLC\n #_09B21E: ADC.b #$03\n #_09B220: STA.l $7FF896,X\n\n #_09B224: LDY.b #$00\n\n #_09B226: LDA.l $7FF83C,X\n #_09B22A: SEC\n #_09B22B: SBC.b $E2\n #_09B22D: CMP.b #$F8\n #_09B22F: BCS PyramidDebris_DeleteSelf\n\n; ---------------------------------------------------------\n\n #_09B231: STA.b ($90),Y\n\n #_09B233: LDA.l $7FF81E,X\n #_09B237: SEC\n #_09B238: SBC.b $E8\n #_09B23A: CMP.b #$F0\n #_09B23C: BCS PyramidDebris_DeleteSelf\n\n #_09B23E: INY\n\n #_09B23F: STA.b ($90),Y\n #_09B241: LDA.b #$5C\n\n #_09B243: INY\n\n #_09B244: STA.b ($90),Y\n\n #_09B246: LDA.b $1A\n #_09B248: ASL A\n #_09B249: ASL A\n #_09B24A: ASL A\n #_09B24B: AND.b #$C0\n #_09B24D: ORA.b #$34\n\n #_09B24F: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish_Move_XY", + "code": "Garnish_Move_XY:\n #_09B252: PHX\n\n #_09B253: TXA\n #_09B254: CLC\n #_09B255: ADC.b #$1E\n #_09B257: TAX\n\n #_09B258: JSR Garnish_Move_Y\n\n #_09B25B: PLX\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish_Move_Y", + "code": "Garnish_Move_Y:\n #_09B25C: LDA.l $7FF896,X\n\n #_09B260: ASL A\n #_09B261: ASL A\n #_09B262: ASL A\n #_09B263: ASL A\n\n #_09B264: CLC\n #_09B265: ADC.l $7FF8D2,X\n #_09B269: STA.l $7FF8D2,X\n\n #_09B26D: LDA.l $7FF896,X\n #_09B271: PHP\n\n #_09B272: LSR A\n #_09B273: LSR A\n #_09B274: LSR A\n #_09B275: LSR A\n\n #_09B276: PLP\n #_09B277: BPL .positive\n\n #_09B279: ORA.b #$F0\n\n.positive\n #_09B27B: ADC.l $7FF81E,X\n #_09B27F: STA.l $7FF81E,X\n\n #_09B283: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish11_WitheringGanonBatFlame", + "code": "Garnish11_WitheringGanonBatFlame:\n #_09B2B2: LDA.b $11\n #_09B2B4: ORA.w $0FC1\n #_09B2B7: BNE .just_draw\n\n #_09B2B9: LDA.l $7FF81E,X\n #_09B2BD: SEC\n #_09B2BE: SBC.b #$01\n #_09B2C0: STA.l $7FF81E,X\n\n #_09B2C4: LDA.l $7FF85A,X\n #_09B2C8: SBC.b #$00\n #_09B2CA: STA.l $7FF85A,X\n\n.just_draw\n #_09B2CE: JSR Garnish_PrepOAMCoord\n\n #_09B2D1: REP #$10\n\n #_09B2D3: LDY.b $90\n\n #_09B2D5: LDA.b $00\n #_09B2D7: STA.w $0000,Y\n\n #_09B2DA: CLC\n #_09B2DB: ADC.b #$08\n #_09B2DD: STA.w $0004,Y\n\n #_09B2E0: LDA.b $02\n #_09B2E2: STA.w $0001,Y\n #_09B2E5: STA.w $0005,Y\n\n #_09B2E8: LDA.b #$A4\n #_09B2EA: STA.w $0002,Y\n\n #_09B2ED: INC A\n #_09B2EE: STA.w $0006,Y\n\n #_09B2F1: LDA.b #$22\n #_09B2F3: STA.w $0003,Y\n #_09B2F6: STA.w $0007,Y\n\n #_09B2F9: LDY.b $92\n\n #_09B2FB: LDA.b #$00\n #_09B2FD: STA.w $0000,Y\n #_09B300: STA.w $0001,Y\n\n #_09B303: SEP #$10\n\n #_09B305: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish10_GanonBatFlame", + "code": "Garnish10_GanonBatFlame:\n #_09B306: LDA.l $7FF90E,X\n #_09B30A: CMP.b #$08\n #_09B30C: BNE .dont_transmute\n\n #_09B30E: LDA.b #$11 ; GARNISH 11\n #_09B310: STA.l $7FF800,X\n\n.dont_transmute\n #_09B314: JSR Garnish_PrepOAMCoord\n\n #_09B317: LDA.b $00\n #_09B319: STA.b ($90),Y\n\n #_09B31B: LDA.b $02\n #_09B31D: INY\n #_09B31E: STA.b ($90),Y\n\n #_09B320: LDA.l $7FF90E,X\n #_09B324: LSR A\n #_09B325: LSR A\n #_09B326: LSR A\n\n #_09B327: PHX\n\n #_09B328: TAX\n\n #_09B329: LDA.w .draw_step,X\n #_09B32C: TAX\n\n #_09B32D: LDA.w .char,X\n #_09B330: INY\n #_09B331: STA.b ($90),Y\n\n #_09B333: LDA.b #$22\n #_09B335: ORA.w .prop,X\n\n #_09B338: PLX\n\n #_09B339: JSR Garnish_FinalizeBigOAMObject\n\n #_09B33C: JMP.w Garnish_CheckDamageToLink\n\n; =========================================================\n\npool Garnish0C_TrinexxIceBreath\n\n.char\n #_09B33F: db $E8, $E8, $E6, $E6\n #_09B343: db $E4, $E4, $E4, $E4\n #_09B347: db $E4, $E4, $E4, $E4\n\n.prop\n #_09B34B: db $00, $40, $C0, $80\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish0C_TrinexxIceBreath", + "code": "Garnish0C_TrinexxIceBreath:\n #_09B34F: LDA.l $7FF90E,X\n #_09B353: CMP.b #$50\n #_09B355: BNE .dont_change_tiles\n\n #_09B357: LDA.b $11\n #_09B359: ORA.w $0FC1\n #_09B35C: BNE .dont_change_tiles\n\n; ---------------------------------------------------------\n\n #_09B35E: PHA\n\n #_09B35F: LDA.l $7FF83C,X\n #_09B363: STA.b $00\n\n #_09B365: LDA.l $7FF878,X\n #_09B369: STA.b $01\n\n #_09B36B: LDA.l $7FF81E,X\n #_09B36F: SEC\n #_09B370: SBC.b #$10\n #_09B372: STA.b $02\n\n #_09B374: LDA.l $7FF85A,X\n #_09B378: SBC.b #$00\n #_09B37A: STA.b $03\n\n #_09B37C: LDY.b #$12\n #_09B37E: JSL Underworld_UpdateTilemapWithCommonTile\n\n #_09B382: PLA\n\n; ---------------------------------------------------------\n\n.dont_change_tiles\n #_09B383: LDA.l $7FF90E,X\n #_09B387: LSR A\n #_09B388: LSR A\n #_09B389: AND.b #$03\n #_09B38B: TAY\n\n #_09B38C: LDA.w .prop,Y\n #_09B38F: STA.b $04\n\n #_09B391: JSR Garnish_PrepOAMCoord\n\n #_09B394: LDA.b $00\n #_09B396: STA.b ($90),Y\n\n #_09B398: LDA.b $02\n #_09B39A: INY\n #_09B39B: STA.b ($90),Y\n\n #_09B39D: LDA.l $7FF90E,X\n\n #_09B3A1: LSR A\n #_09B3A2: LSR A\n #_09B3A3: LSR A\n #_09B3A4: LSR A\n\n #_09B3A5: NOP\n\n #_09B3A6: PHX\n\n #_09B3A7: TAX\n\n #_09B3A8: LDA.w .char,X\n #_09B3AB: INY\n #_09B3AC: STA.b ($90),Y\n\n #_09B3AE: LDA.b #$35\n #_09B3B0: ORA.b $04\n\n #_09B3B2: PLX\n\n #_09B3B3: JMP.w Garnish_FinalizeBigOAMObject\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_09B3B6", + "code": "UNREACHABLE_09B3B6:\n #_09B3B6: JMP.w Garnish_CheckDamageToLink\n\n; =========================================================\n\npool Garnish14_KakKidDashDust\n\n.char\n #_09B3B9: db $DF, $CF, $A9\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish14_KakKidDashDust", + "code": "Garnish14_KakKidDashDust:\n #_09B3BC: LDA.l $7FF90E,X\n\n #_09B3C0: BRA .continue\n\n; =========================================================\n\n#Garnish0B_WaterTrail:\n #_09B3C2: LDA.l $7FF90E,X\n #_09B3C6: LSR A\n\n; =========================================================\n\n.continue\n #_09B3C7: LSR A\n #_09B3C8: LSR A\n #_09B3C9: STA.w $0FB5\n\n #_09B3CC: JSR Garnish_PrepOAMCoord\n\n #_09B3CF: LDA.b $00\n #_09B3D1: STA.b ($90),Y\n\n #_09B3D3: LDA.b $02\n #_09B3D5: INY\n #_09B3D6: STA.b ($90),Y\n\n #_09B3D8: PHX\n\n #_09B3D9: LDX.w $0FB5\n\n #_09B3DC: LDA.w .char,X\n #_09B3DF: INY\n #_09B3E0: STA.b ($90),Y\n\n #_09B3E2: LDA.b #$24\n\n #_09B3E4: PLX\n\n #_09B3E5: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n\npool Garnish0A_CannonSmoke\n\n.char\n #_09B3E8: db $8A, $86\n\n.priority\n #_09B3EA: db $20, $10, $30, $30\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish0A_CannonSmoke", + "code": "Garnish0A_CannonSmoke:\n #_09B3EE: JSR Garnish_PrepOAMCoord\n\n #_09B3F1: LDA.b $00\n #_09B3F3: STA.b ($90),Y\n\n #_09B3F5: LDA.b $02\n #_09B3F7: INY\n #_09B3F8: STA.b ($90),Y\n\n #_09B3FA: LDA.l $7FF90E,X\n #_09B3FE: LSR A\n #_09B3FF: LSR A\n #_09B400: LSR A\n\n #_09B401: PHX\n\n #_09B402: TAX\n\n #_09B403: LDA.w .char,X\n #_09B406: INY\n #_09B407: STA.b ($90),Y\n\n #_09B409: PLX\n #_09B40A: PHX\n\n #_09B40B: LDA.l $7FF92C,X\n #_09B40F: TAX\n\n #_09B410: LDA.w .priority,X\n #_09B413: ORA.b #$04\n\n #_09B415: PLX\n\n #_09B416: JMP.w Garnish_FinalizeBigOAMObject\n\n; =========================================================\n\npool Garnish09_LightningTrail\n\n.char\n #_09B419: db $CC, $EC, $CE, $EE\n #_09B41D: db $CC, $EC, $CE, $EE\n\n.prop\n #_09B421: db $31, $31, $31, $31\n #_09B425: db $71, $71, $71, $71\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish09_LightningTrail", + "code": "Garnish09_LightningTrail:\n #_09B429: JSR Garnish_PrepOAMCoord\n\n #_09B42C: LDA.b $00\n #_09B42E: STA.b ($90),Y\n\n #_09B430: LDA.b $02\n #_09B432: INY\n #_09B433: STA.b ($90),Y\n\n #_09B435: LDA.l $7FF92C,X\n\n #_09B439: PHX\n #_09B43A: TAX\n\n #_09B43B: LDA.w .char,X\n\n #_09B43E: PHX\n\n #_09B43F: LDX.w $048E\n #_09B442: CPX.b #$20 ; ROOM 0020\n #_09B444: BNE .not_aga1\n\n #_09B446: SEC\n #_09B447: SBC.b #$80\n\n.not_aga1\n #_09B449: PLX\n\n #_09B44A: INY\n #_09B44B: STA.b ($90),Y\n\n #_09B44D: LDA.b $1A\n #_09B44F: ASL A\n #_09B450: AND.b #$0E\n #_09B452: ORA.w .prop,X\n\n #_09B455: PLX\n\n #_09B456: JSR Garnish_FinalizeBigOAMObject\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish_CheckDamageToLink", + "code": "Garnish_CheckDamageToLink:\n #_09B459: TXA\n #_09B45A: EOR.b $1A\n #_09B45C: AND.b #$07\n #_09B45E: ORA.w $031F\n #_09B461: ORA.w $037B\n #_09B464: BNE .exit\n\n #_09B466: LDA.b $22\n #_09B468: SBC.b $E2\n #_09B46A: SBC.b $00\n #_09B46C: ADC.b #$0C\n\n #_09B46E: CMP.b #$18\n #_09B470: BCS .exit\n\n #_09B472: LDA.b $20\n #_09B474: SBC.b $E8\n #_09B476: SBC.b $02\n #_09B478: ADC.b #$16\n\n #_09B47A: CMP.b #$1C\n #_09B47C: BCS .exit\n\n #_09B47E: LDA.b #$01\n #_09B480: STA.b $4D\n\n #_09B482: LDA.b #$10\n #_09B484: STA.b $46\n #_09B486: STA.w $0373\n\n #_09B489: LDA.b $28\n #_09B48B: EOR.b #$FF\n #_09B48D: STA.b $28\n\n #_09B48F: LDA.b $27\n #_09B491: EOR.b #$FF\n #_09B493: STA.b $27\n\n.exit\n #_09B495: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish07_BabasuFlash", + "code": "Garnish07_BabasuFlash:\n #_09B49E: JSR Garnish_PrepOAMCoord\n\n #_09B4A1: LDA.b $00\n #_09B4A3: STA.b ($90),Y\n\n #_09B4A5: LDA.b $02\n #_09B4A7: INY\n #_09B4A8: STA.b ($90),Y\n\n #_09B4AA: LDA.l $7FF90E,X\n #_09B4AE: LSR A\n #_09B4AF: LSR A\n #_09B4B0: LSR A\n\n #_09B4B1: PHX\n\n #_09B4B2: TAX\n\n #_09B4B3: LDA.w .char,X\n #_09B4B6: INY\n #_09B4B7: STA.b ($90),Y\n\n #_09B4B9: LDA.w .prop,X\n\n #_09B4BC: PLX\n\n #_09B4BD: JMP.w Garnish_FinalizeBigOAMObject\n\n; =========================================================\n\npool Garnish08_KholdstareTrail\n\n.offset\n #_09B4C0: db -1, -1, 0\n\n.char\n #_09B4C3: db $9C, $9D, $8D\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish08_KholdstareTrail", + "code": "Garnish08_KholdstareTrail:\n #_09B4C6: JSR Garnish_PrepOAMCoord\n\n #_09B4C9: PHX\n\n #_09B4CA: LDA.l $7FF90E,X\n #_09B4CE: LSR A\n #_09B4CF: LSR A\n #_09B4D0: TAX\n\n #_09B4D1: LDA.b $00\n #_09B4D3: CLC\n #_09B4D4: ADC.w .offset,X\n #_09B4D7: STA.b ($90),Y\n\n #_09B4D9: LDA.b $02\n #_09B4DB: CLC\n #_09B4DC: ADC.w .offset,X\n\n #_09B4DF: INY\n\n #_09B4E0: STA.b ($90),Y\n\n #_09B4E2: LDA.w .char,X\n #_09B4E5: INY\n #_09B4E6: STA.b ($90),Y\n\n #_09B4E8: PLX\n\n #_09B4E9: PHY\n\n #_09B4EA: LDA.l $7FF92C,X\n #_09B4EE: TAY\n\n #_09B4EF: LDA.w $0F50,Y\n #_09B4F2: ORA.w $0B89,Y\n #_09B4F5: AND.b #$FE\n\n #_09B4F7: PLY\n\n #_09B4F8: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish06_ZoroTrail", + "code": "Garnish06_ZoroTrail:\n #_09B4FB: JSR Garnish_PrepOAMCoord\n\n #_09B4FE: LDA.b $00\n #_09B500: STA.b ($90),Y\n\n #_09B502: LDA.b $02\n #_09B504: INY\n #_09B505: STA.b ($90),Y\n\n #_09B507: LDA.b #$75\n #_09B509: INY\n #_09B50A: STA.b ($90),Y\n\n #_09B50C: PHY\n\n #_09B50D: LDA.l $7FF92C,X\n #_09B511: TAY\n\n #_09B512: LDA.w $0F50,Y\n #_09B515: ORA.w $0B89,Y\n\n #_09B518: PLY\n\n #_09B519: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n\npool GarnishSparkle\n\n.char\n #_09B51C: db $83, $C7, $80, $B7\n\npool off\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish12_Sparkle", + "code": "Garnish12_Sparkle:\n #_09B520: LDA.l $7FF90E,X\n #_09B524: BRA GarnishSparkle\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish05_SimpleSparkle", + "code": "Garnish05_SimpleSparkle:\n #_09B526: LDA.l $7FF90E,X\n #_09B52A: LSR A\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GarnishSparkle", + "code": "GarnishSparkle:\n #_09B52B: LSR A\n #_09B52C: LSR A\n #_09B52D: STA.b $0F\n\n #_09B52F: JSR Garnish_PrepOAMCoord\n\n #_09B532: LDA.b $00\n #_09B534: STA.b ($90),Y\n\n #_09B536: LDA.b $02\n #_09B538: INY\n #_09B539: STA.b ($90),Y\n\n #_09B53B: PHX\n\n #_09B53C: LDX.b $0F\n #_09B53E: LDA.w .char,X\n\n #_09B541: PLX\n\n #_09B542: INY\n #_09B543: STA.b ($90),Y\n\n #_09B545: PHY\n\n #_09B546: LDA.l $7FF92C,X\n #_09B54A: TAY\n\n #_09B54B: LDA.w $0F50,Y\n #_09B54E: ORA.w $0B89,Y\n #_09B551: AND.b #$F0\n #_09B553: ORA.b #$04\n\n #_09B555: PLY\n\n #_09B556: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n\npool Garnish0E_TrinexxFireBreath\n\n.char\n #_09B559: db $83, $C7, $80, $9D\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish0E_TrinexxFireBreath", + "code": "Garnish0E_TrinexxFireBreath:\n #_09B55D: JSR Garnish_PrepOAMCoord\n\n #_09B560: LDA.b $00\n #_09B562: STA.b ($90),Y\n\n #_09B564: LDA.b $02\n #_09B566: INY\n #_09B567: STA.b ($90),Y\n\n #_09B569: LDA.l $7FF90E,X\n #_09B56D: LSR A\n #_09B56E: LSR A\n #_09B56F: LSR A\n\n #_09B570: PHX\n\n #_09B571: TAX\n\n #_09B572: LDA.w .char,X\n\n #_09B575: PLX\n\n #_09B576: INY\n #_09B577: STA.b ($90),Y\n\n #_09B579: PHY\n\n #_09B57A: LDA.l $7FF92C,X\n #_09B57E: TAY\n\n #_09B57F: LDA.w $0F50,Y\n #_09B582: ORA.w $0B89,Y\n #_09B585: AND.b #$F0\n #_09B587: ORA.b #$0E\n\n #_09B589: PLY\n\n #_09B58A: JMP.w Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n\npool Garnish0F_BlindLaserTrail\n\n.char\n #_09B58D: db $61, $71, $70, $60\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish0F_BlindLaserTrail", + "code": "Garnish0F_BlindLaserTrail:\n #_09B591: JSR Garnish_PrepOAMCoord\n\n #_09B594: LDA.b $00\n #_09B596: STA.b ($90),Y\n\n #_09B598: LDA.b $02\n #_09B59A: INY\n #_09B59B: STA.b ($90),Y\n\n #_09B59D: PHY\n\n #_09B59E: LDA.l $7FF9FE,X\n #_09B5A2: TAY\n\n #_09B5A3: LDA.w .char-7,Y\n\n #_09B5A6: PLY\n #_09B5A7: INY\n\n #_09B5A8: STA.b ($90),Y\n\n #_09B5AA: PHY\n\n #_09B5AB: LDA.l $7FF92C,X\n #_09B5AF: TAY\n\n #_09B5B0: LDA.w $0F50,Y\n #_09B5B3: ORA.w $0B89,Y\n\n #_09B5B6: PLY\n\n #_09B5B7: BRA Garnish_FinalizeSmallOAMObject\n\n; =========================================================\n\npool Garnish04_LaserTrail\n\n.char\n #_09B5B9: db $D2, $F3\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish04_LaserTrail", + "code": "Garnish04_LaserTrail:\n #_09B5BB: JSR Garnish_PrepOAMCoord\n\n #_09B5BE: LDA.b $00\n #_09B5C0: STA.b ($90),Y\n\n #_09B5C2: LDA.b $02\n #_09B5C4: INY\n #_09B5C5: STA.b ($90),Y\n\n #_09B5C7: PHY\n\n #_09B5C8: LDA.l $7FF9FE,X\n #_09B5CC: TAY\n\n #_09B5CD: LDA.w .char,Y\n\n #_09B5D0: PLY\n #_09B5D1: INY\n\n #_09B5D2: STA.b ($90),Y\n\n #_09B5D4: LDA.b #$25\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish_FinalizeSmallOAMObject", + "code": "Garnish_FinalizeSmallOAMObject:\n #_09B5D6: INY\n\n #_09B5D7: STA.b ($90),Y\n\n #_09B5D9: LDA.b #$00\n #_09B5DB: STA.b ($92)\n\n #_09B5DD: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish_PrepOAMCoord", + "code": "Garnish_PrepOAMCoord:\n #_09B5DE: LDA.l $7FF83C,X\n #_09B5E2: SEC\n #_09B5E3: SBC.b $E2\n #_09B5E5: STA.b $00\n\n #_09B5E7: LDA.l $7FF878,X\n #_09B5EB: SBC.b $E3\n #_09B5ED: STA.b $01\n\n #_09B5EF: BNE .off_screen\n\n #_09B5F1: LDA.l $7FF81E,X\n #_09B5F5: SEC\n #_09B5F6: SBC.b $E8\n #_09B5F8: PHA\n\n #_09B5F9: LDA.l $7FF85A,X\n #_09B5FD: SBC.b $E9\n #_09B5FF: BEQ .on_screen\n\n #_09B601: PLA\n\n; ---------------------------------------------------------\n\n.off_screen\n #_09B602: LDA.b #$00\n #_09B604: STA.l $7FF800,X\n\n #_09B608: PLA\n #_09B609: PLA\n\n #_09B60A: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish03_FallingTile", + "code": "Garnish03_FallingTile:\n #_09B627: LDA.l $7FF90E,X\n #_09B62B: CMP.b #$1E\n #_09B62D: BNE .dont_place_pit\n\n #_09B62F: LDA.b $11\n #_09B631: ORA.w $0FC1\n #_09B634: BNE .dont_place_pit\n\n; ---------------------------------------------------------\n\n #_09B636: PHA\n\n #_09B637: LDA.l $7FF83C,X\n #_09B63B: STA.b $00\n\n #_09B63D: LDA.l $7FF878,X\n #_09B641: STA.b $01\n\n #_09B643: LDA.l $7FF81E,X\n #_09B647: SEC\n #_09B648: SBC.b #$10\n #_09B64A: STA.b $02\n\n #_09B64C: LDA.l $7FF85A,X\n #_09B650: SBC.b #$00\n #_09B652: STA.b $03\n\n #_09B654: PHX\n\n #_09B655: LDY.b #$04\n #_09B657: JSL Underworld_UpdateTilemapWithCommonTile\n\n #_09B65B: PLX\n\n #_09B65C: PLA\n\n; ---------------------------------------------------------\n\n.dont_place_pit\n #_09B65D: LSR A\n #_09B65E: LSR A\n #_09B65F: LSR A\n #_09B660: TAY\n\n #_09B661: LDA.w .char,Y\n #_09B664: STA.b $03\n\n #_09B666: LDA.w .prop,Y\n #_09B669: STA.b $05\n\n #_09B66B: LDA.w .size,Y\n #_09B66E: STA.b $06\n\n #_09B670: LDA.l $7FF83C,X\n #_09B674: SEC\n #_09B675: SBC.b $E2\n #_09B677: PHP\n\n #_09B678: CLC\n #_09B679: ADC.w .offset,Y\n #_09B67C: STA.b $00\n\n #_09B67E: LDA.l $7FF878,X\n #_09B682: ADC.b #$00\n #_09B684: PLP\n #_09B685: SBC.b $E3\n #_09B687: BNE .exit\n\n; ---------------------------------------------------------\n\n #_09B689: LDA.l $7FF81E,X\n #_09B68D: SEC\n #_09B68E: SBC.b $E8\n #_09B690: PHP\n\n #_09B691: CLC\n #_09B692: ADC.w .offset,Y\n #_09B695: STA.b $02\n\n #_09B697: LDA.l $7FF85A,X\n #_09B69B: ADC.b #$00\n\n #_09B69D: PLP\n #_09B69E: SBC.b $E9\n #_09B6A0: BEQ .draw\n\n.exit\n #_09B6A2: RTS", + "file": "bank_09.asm" + }, + { + "name": "Garnish01_FireSnakeTail", + "code": "Garnish01_FireSnakeTail:\n #_09B6C0: JSR Garnish_PrepOAMCoord\n\n #_09B6C3: LDA.b $00\n #_09B6C5: STA.b ($90),Y\n\n #_09B6C7: LDA.b $02\n\n #_09B6C9: INY\n #_09B6CA: STA.b ($90),Y\n\n #_09B6CC: INY\n\n #_09B6CD: LDA.b #$28\n #_09B6CF: STA.b ($90),Y\n\n #_09B6D1: PHY\n\n #_09B6D2: LDA.l $7FF92C,X\n #_09B6D6: TAY\n\n #_09B6D7: LDA.w $0F50,Y\n #_09B6DA: ORA.w $0B89,Y\n\n #_09B6DD: PLY\n\n #_09B6DE: JMP.w Garnish_FinalizeBigOAMObject\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish02_MothulaBeamTrail", + "code": "Garnish02_MothulaBeamTrail:\n #_09B6E1: LDY.b #$00\n\n #_09B6E3: LDA.l $7FF83C,X\n #_09B6E7: SEC\n #_09B6E8: SBC.b $E2\n #_09B6EA: STA.b ($90),Y\n\n #_09B6EC: LDA.l $7FF81E,X\n #_09B6F0: SEC\n #_09B6F1: SBC.b $E8\n\n #_09B6F3: INY\n #_09B6F4: STA.b ($90),Y\n\n #_09B6F6: INY\n\n #_09B6F7: LDA.b #$AA\n #_09B6F9: STA.b ($90),Y\n\n #_09B6FB: LDA.l $7FF92C,X\n\n #_09B6FF: PHY\n\n #_09B700: LDA.l $7FF92C,X\n #_09B704: TAY\n\n #_09B705: LDA.w $0F50,Y\n #_09B708: ORA.w $0B89,Y\n\n #_09B70B: PLY\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Garnish_FinalizeBigOAMObject", + "code": "Garnish_FinalizeBigOAMObject:\n #_09B70C: INY\n\n #_09B70D: STA.b ($90),Y\n\n #_09B70F: LDA.b #$02\n #_09B711: STA.b ($92)\n\n #_09B713: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord_SpawnBoulder", + "code": "Overlord_SpawnBoulder:\n #_09B714: LDA.b $1B\n #_09B716: BNE .exit\n\n #_09B718: LDA.w $0FFD\n #_09B71B: BEQ .exit\n\n #_09B71D: LDA.b $11\n #_09B71F: ORA.w $0FC1\n #_09B722: BNE .exit\n\n #_09B724: INC.w $0FFE\n\n #_09B727: LDA.w $0FFE\n #_09B72A: AND.b #$3F\n #_09B72C: BNE .exit\n\n #_09B72E: LDA.b $E9\n #_09B730: SEC\n #_09B731: SBC.w $0FBF\n #_09B734: CMP.b #$02\n #_09B736: BMI .exit\n\n; ---------------------------------------------------------\n\n #_09B738: LDA.b #$C2 ; SPRITE C2\n #_09B73A: LDY.b #$0D\n #_09B73C: JSL Sprite_SpawnDynamically\n #_09B740: BMI .exit\n\n #_09B742: JSL GetRandomNumber\n #_09B746: AND.b #$7F\n\n #_09B748: CLC\n #_09B749: ADC.b #$40\n\n #_09B74B: CLC\n #_09B74C: ADC.b $E2\n #_09B74E: STA.w $0D10,Y\n\n #_09B751: LDA.b $E3\n #_09B753: ADC.b #$00\n #_09B755: STA.w $0D30,Y\n\n #_09B758: LDA.b $E8\n #_09B75A: SEC\n #_09B75B: SBC.b #$30\n #_09B75D: STA.w $0D00,Y\n\n #_09B760: LDA.b $E9\n #_09B762: SBC.b #$00\n #_09B764: STA.w $0D20,Y\n\n #_09B767: LDA.b #$00\n #_09B769: STA.w $0F20,Y\n #_09B76C: STA.w $0DE0,Y\n #_09B76F: STA.w $0F70,Y\n\n.exit\n #_09B772: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord_Main", + "code": "Overlord_Main:\n #_09B773: PHB\n #_09B774: PHK\n #_09B775: PLB\n\n #_09B776: JSR Overlord_ExecuteAll\n #_09B779: JSR Overlord_SpawnBoulder\n\n #_09B77C: PLB\n\n #_09B77D: RTL", + "file": "bank_09.asm" + }, + { + "name": "Overlord_ExecuteAll", + "code": "Overlord_ExecuteAll:\n #_09B77E: LDA.b $11\n #_09B780: ORA.w $0FC1\n #_09B783: BNE .exit\n\n #_09B785: LDX.b #$07\n\n.next\n #_09B787: LDA.w $0B00,X\n #_09B78A: BEQ .skip\n\n #_09B78C: JSR Overlord_ExecuteSingle\n\n.skip\n #_09B78F: DEX\n #_09B790: BPL .next\n\n.exit\n #_09B792: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord_ExecuteSingle", + "code": "Overlord_ExecuteSingle:\n #_09B793: PHA\n\n #_09B794: JSR Overlord_CheckIfActive\n\n #_09B797: PLA\n\n #_09B798: DEC A\n\n #_09B799: REP #$30\n\n #_09B79B: AND.w #$00FF\n #_09B79E: ASL A\n #_09B79F: TAY\n\n #_09B7A0: LDA.w .vectors,Y\n #_09B7A3: DEC A\n #_09B7A4: PHA\n\n #_09B7A5: SEP #$30\n\n #_09B7A7: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord19_ArmosCoordinator_bounce", + "code": "Overlord19_ArmosCoordinator_bounce:\n #_09B7DC: JSL Overlord19_ArmosCoordinator\n\n #_09B7E0: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord18_InvisibleStalfos", + "code": "Overlord18_InvisibleStalfos:\n #_09B7F5: LDA.w $0B08,X\n #_09B7F8: STA.b $00\n\n #_09B7FA: LDA.w $0B10,X\n #_09B7FD: STA.b $01\n\n #_09B7FF: LDA.w $0B18,X\n #_09B802: STA.b $02\n\n #_09B804: LDA.w $0B20,X\n #_09B807: STA.b $03\n\n #_09B809: REP #$20\n\n #_09B80B: LDA.b $00\n #_09B80D: SEC\n #_09B80E: SBC.b $22\n #_09B810: CLC\n #_09B811: ADC.w #$0018\n #_09B814: CMP.w #$0030\n #_09B817: BCS .exit\n\n #_09B819: LDA.b $02\n #_09B81B: SEC\n #_09B81C: SBC.b $20\n #_09B81E: CLC\n #_09B81F: ADC.w #$0018\n #_09B822: CMP.w #$0030\n #_09B825: BCS .exit\n\n #_09B827: SEP #$20\n\n #_09B829: STZ.w $0B00,X\n\n; ---------------------------------------------------------\n\n #_09B82C: LDA.b #$03\n #_09B82E: STA.w $0FB5\n\n.next\n #_09B831: LDA.b #$A7 ; SPRITE A7\n #_09B833: LDY.b #$0C\n #_09B835: JSL Sprite_SpawnDynamically_slot_limited\n #_09B839: BMI .skip\n\n #_09B83B: PHX\n\n #_09B83C: LDX.w $0FB5\n\n #_09B83F: LDA.b $22\n #_09B841: CLC\n #_09B842: ADC.w .offset_x_low,X\n #_09B845: STA.w $0D10,Y\n\n #_09B848: LDA.b $23\n #_09B84A: ADC.w .offset_x_high,X\n #_09B84D: STA.w $0D30,Y\n\n #_09B850: LDA.b $20\n #_09B852: CLC\n #_09B853: ADC.w .offset_y_low,X\n #_09B856: STA.w $0D00,Y\n\n #_09B859: LDA.b $21\n #_09B85B: ADC.w .offset_y_high,X\n #_09B85E: STA.w $0D20,Y\n\n #_09B861: LDA.w .timer,X\n #_09B864: STA.w $0DF0,Y\n\n #_09B867: PLX\n\n #_09B868: LDA.w $0B40,X\n #_09B86B: STA.w $0F20,Y\n\n #_09B86E: LDA.b #$01\n #_09B870: STA.w $0E90,Y\n\n #_09B873: LDA.b #$03\n #_09B875: STA.w $0E40,Y\n\n #_09B878: DEC A\n #_09B879: STA.w $0DE0,Y\n\n.skip\n #_09B87C: DEC.w $0FB5\n #_09B87F: BPL .next\n\n; ---------------------------------------------------------\n\n.exit\n #_09B881: SEP #$20\n\n #_09B883: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord17_PotTrap", + "code": "Overlord17_PotTrap:\n #_09B884: LDA.w $0B08,X\n #_09B887: STA.b $00\n\n #_09B889: LDA.w $0B10,X\n #_09B88C: STA.b $01\n\n #_09B88E: LDA.w $0B18,X\n #_09B891: STA.b $02\n\n #_09B893: LDA.w $0B20,X\n #_09B896: STA.b $03\n\n #_09B898: REP #$20\n\n #_09B89A: LDA.b $00\n #_09B89C: SEC\n #_09B89D: SBC.b $22\n #_09B89F: CLC\n #_09B8A0: ADC.w #$0020\n\n #_09B8A3: CMP.w #$0040\n #_09B8A6: BCS .exit\n\n #_09B8A8: LDA.b $02\n #_09B8AA: SEC\n #_09B8AB: SBC.b $20\n #_09B8AD: CLC\n #_09B8AE: ADC.w #$0020\n\n #_09B8B1: CMP.w #$0040\n #_09B8B4: BCS .exit\n\n #_09B8B6: SEP #$20\n\n #_09B8B8: STZ.w $0B00,X\n\n #_09B8BB: INC.w $0B9E\n\n.exit\n #_09B8BE: SEP #$20\n\n #_09B8C0: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord16_ZoroSpawner", + "code": "Overlord16_ZoroSpawner:\n #_09B8D1: DEC.w $0B30,X\n\n #_09B8D4: LDA.w $0B18,X\n #_09B8D7: CLC\n #_09B8D8: ADC.b #$08\n #_09B8DA: STA.b $00\n\n #_09B8DC: LDA.w $0B20,X\n #_09B8DF: ADC.b #$00\n #_09B8E1: STA.b $01\n\n #_09B8E3: LDA.w $0B08,X\n #_09B8E6: CLC\n #_09B8E7: ADC.b #$08\n #_09B8E9: STA.b $02\n\n #_09B8EB: LDA.w $0B10,X\n #_09B8EE: ADC.b #$00\n #_09B8F0: STA.b $03\n\n #_09B8F2: LDA.w $0B40,X\n #_09B8F5: JSL GetTileType_long\n\n #_09B8F9: CMP.b #$82 ; TILETYPE 82\n #_09B8FB: BNE .exit\n\n #_09B8FD: LDA.w $0B30,X\n #_09B900: CMP.b #$18\n #_09B902: BCS .exit\n\n #_09B904: AND.b #$03\n #_09B906: BNE .exit\n\n; ---------------------------------------------------------\n\n #_09B908: LDA.b #$9C ; SPRITE 9C\n #_09B90A: LDY.b #$0C\n #_09B90C: JSL Sprite_SpawnDynamically_slot_limited\n #_09B910: BMI .exit\n\n #_09B912: PHX\n\n #_09B913: JSL GetRandomNumber\n #_09B917: AND.b #$07\n #_09B919: TAX\n\n #_09B91A: LDA.b $05\n #_09B91C: CLC\n #_09B91D: ADC.w .offset_x_low,X\n #_09B920: PHP\n\n #_09B921: CLC\n #_09B922: ADC.b #$08\n #_09B924: STA.w $0D10,Y\n\n #_09B927: LDA.b $06\n #_09B929: ADC.b #$00\n #_09B92B: PLP\n #_09B92C: ADC.w .offset_x_high,X\n #_09B92F: STA.w $0D30,Y\n\n #_09B932: LDA.b $07\n #_09B934: CLC\n #_09B935: ADC.b #$08\n #_09B937: STA.w $0D00,Y\n\n #_09B93A: LDA.b $08\n #_09B93C: STA.w $0D20,Y\n\n #_09B93F: PLX\n\n #_09B940: LDA.w $0B40,X\n #_09B943: STA.w $0F20,Y\n\n #_09B946: LDA.b #$01\n #_09B948: STA.w $0F60,Y\n #_09B94B: STA.w $0E90,Y\n #_09B94E: STA.w $0BA0,Y\n\n #_09B951: LDA.b #$10\n #_09B953: STA.w $0D40,Y\n\n #_09B956: LDA.b #$20\n #_09B958: STA.w $0E40,Y\n\n #_09B95B: LDA.b #$0D\n #_09B95D: STA.w $0F50,Y\n\n #_09B960: JSL GetRandomNumber\n #_09B964: STA.w $0E80,Y\n\n #_09B967: LDA.b #$30\n #_09B969: STA.w $0DF0,Y\n\n #_09B96C: LDA.b #$03\n #_09B96E: STA.w $0CD2,Y\n\n.exit\n #_09B971: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord15_WizzrobeSpawner", + "code": "Overlord15_WizzrobeSpawner:\n #_09B986: LDA.w $0B30,X\n #_09B989: CMP.b #$80\n #_09B98B: BEQ .spawn\n\n #_09B98D: LDA.b $1A\n #_09B98F: LSR A\n #_09B990: BCC .exit\n\n #_09B992: DEC.w $0B30,X\n\n.exit\n #_09B995: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord14_TileRoom", + "code": "Overlord14_TileRoom:\n #_09B9E8: LDA.w $0B08,X\n #_09B9EB: CMP.b $E2\n\n #_09B9ED: LDA.w $0B10,X\n #_09B9F0: SBC.b $E3\n #_09B9F2: BNE .exit\n\n #_09B9F4: LDA.w $0B18,X\n #_09B9F7: CMP.b $E8\n\n #_09B9F9: LDA.w $0B20,X\n #_09B9FC: SBC.b $E9\n #_09B9FE: BNE .exit\n\n #_09BA00: DEC.w $0B30,X\n\n #_09BA03: LDA.w $0B30,X\n #_09BA06: CMP.b #$80\n #_09BA08: BEQ .continue\n\n #_09BA0A: RTS", + "file": "bank_09.asm" + }, + { + "name": "TileRoom_SpawnTile", + "code": "TileRoom_SpawnTile:\n #_09BA56: LDA.b #$94 ; SPRITE 94\n #_09BA58: JSL Sprite_SpawnDynamically\n #_09BA5C: BMI .exit\n\n #_09BA5E: LDA.b #$01\n #_09BA60: STA.w $0E90,Y\n\n #_09BA63: PHX\n\n #_09BA64: LDA.w $0B28,X\n #_09BA67: TAX\n\n #_09BA68: LDA.w .position_x,X\n #_09BA6B: STA.w $0D10,Y\n\n #_09BA6E: LDA.w .position_y,X\n #_09BA71: SEC\n #_09BA72: SBC.b #$08\n #_09BA74: STA.w $0D00,Y\n\n #_09BA77: PLX\n\n #_09BA78: LDA.w $0B20,X\n #_09BA7B: STA.w $0D20,Y\n\n #_09BA7E: LDA.w $0B10,X\n #_09BA81: STA.w $0D30,Y\n\n #_09BA84: LDA.w $0B40,X\n #_09BA87: STA.w $0F20,Y\n\n #_09BA8A: LDA.b #$04\n #_09BA8C: STA.w $0E50,Y\n\n #_09BA8F: LDA.b #$00\n #_09BA91: STA.w $0BE0,Y\n #_09BA94: STA.w $0E50,Y\n\n #_09BA97: LDA.b #$08\n #_09BA99: STA.w $0CAA,Y\n\n #_09BA9C: LDA.b #$04\n #_09BA9E: STA.w $0E40,Y\n\n #_09BAA1: LDA.b #$01\n #_09BAA3: STA.w $0F50,Y\n\n #_09BAA6: LDA.b #$04\n #_09BAA8: STA.w $0CD2,Y\n\n.exit\n #_09BAAB: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord10_PirogusuSpawner_left", + "code": "Overlord10_PirogusuSpawner_left:", + "file": "bank_09.asm" + }, + { + "name": "Overlord11_PirogusuSpawner_right", + "code": "Overlord11_PirogusuSpawner_right:", + "file": "bank_09.asm" + }, + { + "name": "Overlord12_PirogusuSpawner_top", + "code": "Overlord12_PirogusuSpawner_top:", + "file": "bank_09.asm" + }, + { + "name": "Overlord13_PirogusuSpawner_bottom", + "code": "Overlord13_PirogusuSpawner_bottom:\n #_09BAAC: LDA.w $0B00,X\n #_09BAAF: SEC\n #_09BAB0: SBC.b #$10\n #_09BAB2: STA.w $0FB5\n\n #_09BAB5: LDA.w $0B30,X\n #_09BAB8: CMP.b #$80\n #_09BABA: BEQ .spawn\n\n #_09BABC: DEC.w $0B30,X\n\n #_09BABF: RTS", + "file": "bank_09.asm" + }, + { + "name": "FallingTilesPattern", + "code": "FallingTilesPattern:\n\n.rectangle\n #_09BB24: db $02, $02, $02, $02\n #_09BB28: db $02, $02, $01, $01\n #_09BB2C: db $01, $01, $01, $01\n #_09BB30: db $01, $03, $03, $03\n #_09BB34: db $03, $03, $03, $00\n #_09BB38: db $00, $00, $00, $00\n #_09BB3C: db $00\n\n; ---------------------------------------------------------\n\n.bridge\n #_09BB3D: db $00, $03, $01, $03\n #_09BB41: db $00, $03, $01, $03\n #_09BB45: db $00, $03, $01, $03\n #_09BB49: db $00, $03, $01, $03\n #_09BB4D: db $00, $03, $01, $03\n #_09BB51: db $00, $03, $01, $03\n #_09BB55: db $00, $03, $01, $03\n #_09BB59: db $00, $03, $01, $03\n #_09BB5D: db $00, $03, $01, $03\n #_09BB61: db $00, $03, $01, $03\n #_09BB65: db $00\n\n; ---------------------------------------------------------\n\n.west_to_east\n #_09BB66: db $00, $00, $00, $00\n #_09BB6A: db $00, $00, $00, $00\n #_09BB6E: db $00, $00, $00\n\n.north_to_south\n #_09BB71: db $02, $02, $02, $02\n #_09BB75: db $02, $02, $02, $02\n #_09BB79: db $02, $02\n\n.east_to_west\n #_09BB7B: db $01, $01, $01, $01\n #_09BB7F: db $01, $01, $01, $01\n #_09BB83: db $01, $01, $01\n\n.south_to_north\n #_09BB86: db $03, $03, $03, $03\n #_09BB8A: db $03, $03, $03, $03\n #_09BB8E: db $03, $03\n\n; ---------------------------------------------------------\n\n.adjust_x_low\n #_09BB90: db 16, -16, 0, 0\n\n.adjust_x_high\n #_09BB94: db 0, -1, 0, 0\n\n.adjust_y_low\n #_09BB98: db 0, 0, 16, -16\n\n.adjust_y_high\n #_09BB9C: db 0, 0, 0, -1\n\n; ---------------------------------------------------------\n\n.adjust_limit\n #_09BBA0: db $1A\n #_09BBA1: db $2A\n #_09BBA2: db $0C\n #_09BBA3: db $0B\n #_09BBA4: db $0C\n #_09BBA5: db $0B\n\n; ---------------------------------------------------------\n\n.pointers_low\n #_09BBA6: db .rectangle>>0\n #_09BBA7: db .bridge>>0\n #_09BBA8: db .west_to_east>>0\n #_09BBA9: db .north_to_south>>0\n #_09BBAA: db .east_to_west>>0\n #_09BBAB: db .south_to_north>>0\n\n.pointers_high\n #_09BBAC: db .rectangle>>8\n #_09BBAD: db .bridge>>8\n #_09BBAE: db .west_to_east>>8\n #_09BBAF: db .north_to_south>>8\n #_09BBB0: db .east_to_west>>8\n #_09BBB1: db .south_to_north>>8\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overlord0A_FallingSquare", + "code": "Overlord0A_FallingSquare:", + "file": "bank_09.asm" + }, + { + "name": "Overlord0B_FallingBridge", + "code": "Overlord0B_FallingBridge:", + "file": "bank_09.asm" + }, + { + "name": "Overlord0C_FallingTiles_WestToEast", + "code": "Overlord0C_FallingTiles_WestToEast:", + "file": "bank_09.asm" + }, + { + "name": "Overlord0D_FallingTiles_NorthToSouth", + "code": "Overlord0D_FallingTiles_NorthToSouth:", + "file": "bank_09.asm" + }, + { + "name": "Overlord0E_FallingTiles_EastToWest", + "code": "Overlord0E_FallingTiles_EastToWest:", + "file": "bank_09.asm" + }, + { + "name": "Overlord0F_FallingTiles_SouthToNorth", + "code": "Overlord0F_FallingTiles_SouthToNorth:\n #_09BBB2: LDA.w $0B30,X\n #_09BBB5: BEQ .drop_tile\n\n #_09BBB7: LDA.w $0B38,X\n #_09BBBA: BEQ .check_activeness\n\n #_09BBBC: DEC.w $0B30,X\n\n #_09BBBF: RTS", + "file": "bank_09.asm" + }, + { + "name": "SpawnFallingTile", + "code": "SpawnFallingTile:\n #_09BC31: TXY\n #_09BC32: PHX\n\n #_09BC33: LDX.b #$1D\n\n.next\n #_09BC35: LDA.l $7FF800,X\n #_09BC39: BNE .skip\n\n #_09BC3B: LDA.b #$03 ; GARNISH 03\n #_09BC3D: STA.l $7FF800,X\n\n #_09BC41: LDA.w $0B08,Y\n #_09BC44: STA.l $7FF83C,X\n\n #_09BC48: JSL CalculateSFXPan_Arbitrary\n #_09BC4C: ORA.b #$1F ; SFX2.1F\n #_09BC4E: STA.w $012E\n\n #_09BC51: LDA.w $0B10,Y\n #_09BC54: STA.l $7FF878,X\n\n #_09BC58: LDA.w $0B18,Y\n #_09BC5B: CLC\n #_09BC5C: ADC.b #$10\n #_09BC5E: STA.l $7FF81E,X\n\n #_09BC62: LDA.w $0B20,Y\n #_09BC65: ADC.b #$00\n #_09BC67: STA.l $7FF85A,X\n\n #_09BC6B: LDA.b #$1F\n #_09BC6D: STA.l $7FF90E,X\n\n #_09BC71: STA.w $0FB4\n\n #_09BC74: BRA .exit\n\n.skip\n #_09BC76: DEX\n #_09BC77: BPL .next\n\n; ---------------------------------------------------------\n\n.exit\n #_09BC79: PLX\n\n #_09BC7A: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord09_WallmasterSpawner", + "code": "Overlord09_WallmasterSpawner:\n #_09BC7B: LDA.w $0B30,X\n #_09BC7E: CMP.b #$80\n #_09BC80: BEQ .spawn_master\n\n #_09BC82: LDA.b $1A\n #_09BC84: AND.b #$01\n #_09BC86: BNE .exit\n\n #_09BC88: DEC.w $0B30,X\n\n.exit\n #_09BC8B: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord08_BlobSpawner", + "code": "Overlord08_BlobSpawner:\n #_09BCC3: LDA.w $0B30,X\n #_09BCC6: BEQ .spawn_blob\n\n #_09BCC8: DEC.w $0B30,X\n\n #_09BCCB: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord07_MovingFloor", + "code": "Overlord07_MovingFloor:\n #_09BD3F: LDA.w $0DD0\n #_09BD42: CMP.b #$04\n #_09BD44: BNE .boss_dying\n\n #_09BD46: STZ.w $0B00,X\n #_09BD49: BRA .stop_floor\n\n.boss_dying\n #_09BD4B: LDA.w $0B28,X\n #_09BD4E: BNE .direction_lock\n\n #_09BD50: INC.w $0B30,X\n\n #_09BD53: LDA.w $0B30,X\n #_09BD56: CMP.b #$20\n #_09BD58: BNE .stop_floor\n\n #_09BD5A: STZ.w $0B30,X\n\n #_09BD5D: JSL GetRandomNumber\n #_09BD61: AND.b #$03\n\n #_09BD63: LDY.w $0B08,X\n #_09BD66: BNE .omnidirectional\n\n #_09BD68: AND.b #$01\n\n.omnidirectional\n #_09BD6A: ASL A\n #_09BD6B: STA.w $041A\n\n #_09BD6E: JSL GetRandomNumber\n #_09BD72: AND.b #$7F\n #_09BD74: ADC.b #$80\n #_09BD76: STA.w $0B30,X\n\n #_09BD79: INC.w $0B28,X\n\n #_09BD7C: RTS", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_09BD8C", + "code": "UNREACHABLE_09BD8C:\n #_09BD8C: RTS", + "file": "bank_09.asm" + }, + { + "name": "BlobSpawner", + "code": "BlobSpawner:\n\n.offset_x_low\n #_09BD8D: db 0, 0, -48, 48\n\n.offset_y_low\n #_09BD91: db -40, 56, 8, 8\n\n.offset_x_high\n #_09BD95: db 0, 0, -1, 0\n\n.offset_y_high\n #_09BD99: db -1, 0, 0, 0\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overlord04_Unused", + "code": "Overlord04_Unused:\n #_09BD9D: LDA.w $0B30,X\n #_09BDA0: BEQ .spawn\n\n #_09BDA2: LDA.b $1A\n #_09BDA4: AND.b #$01\n #_09BDA6: BNE .exit\n\n #_09BDA8: DEC.w $0B30,X\n\n.exit\n #_09BDAB: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord05_FallingStalfos", + "code": "Overlord05_FallingStalfos:\n #_09BE0F: LDA.w $0B08,X\n #_09BE12: CMP.b $E2\n\n #_09BE14: LDA.w $0B10,X\n #_09BE17: SBC.b $E3\n #_09BE19: BNE .exit_a\n\n #_09BE1B: LDA.w $0B18,X\n #_09BE1E: CMP.b $E8\n\n #_09BE20: LDA.w $0B20,X\n #_09BE23: SBC.b $E9\n #_09BE25: BNE .exit_a\n\n #_09BE27: LDA.w $0B28,X\n #_09BE2A: BNE .triggered\n\n #_09BE2C: LDA.w $0B9E\n #_09BE2F: BEQ .exit_a\n\n #_09BE31: INC.w $0B28,X\n\n.exit_a\n #_09BE34: RTS", + "file": "bank_09.asm" + }, + { + "name": "OverlordAmbushTimers", + "code": "OverlordAmbushTimers:\n #_09BE6D: db 32, 48, 64, 80\n #_09BE71: db 96, 112, 128, 144\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overlord06_BadSwitchSnake", + "code": "Overlord06_BadSwitchSnake:", + "file": "bank_09.asm" + }, + { + "name": "Overlord1A_BadSwitchBomb", + "code": "Overlord1A_BadSwitchBomb:\n #_09BE75: LDA.w $0B28,X\n #_09BE78: BNE .active\n\n #_09BE7A: LDA.w $0CF4\n #_09BE7D: BEQ .dont_activate_yet\n\n #_09BE7F: INC.w $0B28,X\n\n.dont_activate_yet\n #_09BE82: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord02_FullRoomCannons", + "code": "Overlord02_FullRoomCannons:\n #_09BF09: LDA.w $0B08,X\n #_09BF0C: CMP.b $E2\n\n #_09BF0E: LDA.w $0B10,X\n #_09BF11: SBC.b $E3\n #_09BF13: BNE .exit\n\n #_09BF15: LDA.w $0B18,X\n #_09BF18: CMP.b $E8\n\n #_09BF1A: LDA.w $0B20,X\n #_09BF1D: SBC.b $E9\n #_09BF1F: BNE .exit\n\n #_09BF21: LDA.b $1A\n #_09BF23: AND.b #$0F\n #_09BF25: BNE .exit\n\n #_09BF27: STZ.b $0E\n #_09BF29: STZ.w $0FB6\n\n #_09BF2C: JSL GetRandomNumber\n #_09BF30: AND.b #$0F\n #_09BF32: TAY\n\n #_09BF33: LDA.w .coordinate_index,Y\n #_09BF36: STA.w $0FB5\n\n #_09BF39: LDA.w .coordinate_x,Y\n #_09BF3C: STA.w $0B08,X\n\n #_09BF3F: LDA.b #$00\n #_09BF41: CLC\n #_09BF42: ADC.w $0FB0\n #_09BF45: STA.w $0B10,X\n\n #_09BF48: LDA.w .coordinate_y,Y\n #_09BF4B: STA.w $0B18,X\n\n #_09BF4E: LDA.b #$01\n #_09BF50: CLC\n #_09BF51: ADC.w $0FB1\n #_09BF54: STA.w $0B20,X\n\n #_09BF57: JSR Overlord_SpawnCannonBall\n\n.exit\n #_09BF5A: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord03_VerticalCannon", + "code": "Overlord03_VerticalCannon:\n #_09BF5B: LDA.w $0B08,X\n #_09BF5E: CMP.b $E2\n\n #_09BF60: LDA.w $0B10,X\n #_09BF63: SBC.b $E3\n #_09BF65: BNE .inactive\n\n #_09BF67: LDA.b $1A\n #_09BF69: AND.b #$01\n #_09BF6B: BNE .resist_tick\n\n #_09BF6D: LDA.w $0B30,X\n #_09BF70: BEQ .resist_tick\n\n #_09BF72: DEC.w $0B30,X\n\n.resist_tick\n #_09BF75: LDA.b #$02\n #_09BF77: STA.w $0FB5\n #_09BF7A: STZ.w $0FB6\n\n #_09BF7D: DEC.w $0B28,X\n #_09BF80: BPL .exit\n\n #_09BF82: LDA.b #$38\n #_09BF84: STA.w $0B28,X\n\n #_09BF87: LDA.w $0B30,X\n #_09BF8A: BNE .fire_small_ball\n\n; ---------------------------------------------------------\n\n.fire_big_ball\n #_09BF8C: LDA.b #$A0\n #_09BF8E: STA.w $0B30,X\n #_09BF91: STA.w $0FB6\n\n #_09BF94: LDA.b #$08\n #_09BF96: STA.b $0E\n\n #_09BF98: BRA .fire_ball\n\n; ---------------------------------------------------------\n\n.fire_small_ball\n #_09BF9A: JSL GetRandomNumber\n #_09BF9E: AND.b #$02\n #_09BFA0: ASL A\n #_09BFA1: ASL A\n #_09BFA2: ASL A\n #_09BFA3: STA.b $0E\n\n; ---------------------------------------------------------\n\n.fire_ball\n #_09BFA5: JSR Overlord_SpawnCannonBall\n\n.exit\n #_09BFA8: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord_SpawnCannonBall", + "code": "Overlord_SpawnCannonBall:\n #_09BFAF: LDA.b #$50 ; SPRITE 50\n #_09BFB1: JSL Sprite_SpawnDynamically\n #_09BFB5: BMI .exit\n\n #_09BFB7: PHX\n\n #_09BFB8: LDA.b $05\n #_09BFBA: CLC\n #_09BFBB: ADC.b $0E\n #_09BFBD: STA.w $0D10,Y\n\n #_09BFC0: LDA.b $06\n #_09BFC2: ADC.b #$00\n #_09BFC4: STA.w $0D30,Y\n\n #_09BFC7: LDA.b $07\n #_09BFC9: SEC\n #_09BFCA: SBC.b #$01\n #_09BFCC: STA.w $0D00,Y\n\n #_09BFCF: LDA.b $08\n #_09BFD1: SBC.b #$00\n #_09BFD3: STA.w $0D20,Y\n\n #_09BFD6: LDX.w $0FB5\n\n #_09BFD9: LDA.w .speed_x,X\n #_09BFDC: STA.w $0D50,Y\n\n #_09BFDF: LDA.w .speed_y,X\n #_09BFE2: STA.w $0D40,Y\n\n #_09BFE5: PLX\n\n #_09BFE6: LDA.w $0B40,X\n #_09BFE9: STA.w $0F20,Y\n\n #_09BFEC: LDA.w $0FB6\n #_09BFEF: BEQ .small_ball\n\n; ---------------------------------------------------------\n\n.big_ball\n #_09BFF1: STA.w $0D80,Y\n\n #_09BFF4: LDA.w $0D00,Y\n #_09BFF7: CLC\n #_09BFF8: ADC.b #$08\n #_09BFFA: STA.w $0D00,Y\n\n #_09BFFD: LDA.b #$03\n #_09BFFF: STA.w $0E40,Y\n\n #_09C002: LDA.b #$09\n #_09C004: STA.w $0F60,Y\n\n; ---------------------------------------------------------\n\n.small_ball\n #_09C007: LDA.b #$40\n #_09C009: STA.w $0E10,Y\n\n #_09C00C: PHX\n #_09C00D: TYX\n\n #_09C00E: LDA.b #$07 ; SFX3.07\n #_09C010: JSL SpriteSFX_QueueSFX3WithPan\n\n #_09C014: PLX\n\n.exit\n #_09C015: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overlord01_PositionTarget", + "code": "Overlord01_PositionTarget:\n #_09C01E: TXA\n #_09C01F: STA.w $0FDE\n\n #_09C022: RTS", + "file": "bank_09.asm" + }, + { + "name": "Snitch_SpawnGuard", + "code": "Snitch_SpawnGuard:\n #_09C02F: PHB\n #_09C030: PHK\n #_09C031: PLB\n\n #_09C032: LDA.b #$45 ; SPRITE 45\n #_09C034: LDY.b #$00\n #_09C036: JSL Sprite_SpawnDynamically_slot_limited\n #_09C03A: BMI .exit\n\n #_09C03C: PHX\n\n #_09C03D: LDA.w $0E20,X\n\n #_09C040: LDX.b #$00\n #_09C042: CMP.b #$3D ; SPRITE 3D\n #_09C044: BEQ .spawn_him_already_im_scared\n\n #_09C046: INX\n #_09C047: CMP.b #$35 ; SPRITE 35\n #_09C049: BEQ .spawn_him_already_im_scared\n\n #_09C04B: INX\n\n.spawn_him_already_im_scared\n #_09C04C: LDA.w .position_x_low,X\n #_09C04F: STA.w $0D10,Y\n\n #_09C052: LDA.w .position_x_high,X\n #_09C055: CLC\n #_09C056: ADC.w $0FBD\n #_09C059: STA.w $0D30,Y\n\n #_09C05C: LDA.w .position_y_low,X\n #_09C05F: STA.w $0D00,Y\n\n #_09C062: LDA.w .position_y_high,X\n #_09C065: CLC\n #_09C066: ADC.w $0FBF\n #_09C069: STA.w $0D20,Y\n\n #_09C06C: PLX\n\n; ---------------------------------------------------------\n\n #_09C06D: LDA.b #$00\n #_09C06F: STA.w $0F20,Y\n\n #_09C072: LDA.b #$04\n #_09C074: STA.w $0E50,Y\n\n #_09C077: LDA.b #$80\n #_09C079: STA.w $0CAA,Y\n\n #_09C07C: LDA.b #$90\n #_09C07E: STA.w $0BE0,Y\n\n #_09C081: LDA.b #$0B\n #_09C083: STA.w $0F50,Y\n\n; ---------------------------------------------------------\n\n.exit\n #_09C086: PLB\n\n #_09C087: RTL", + "file": "bank_09.asm" + }, + { + "name": "Overlord_CheckIfActive", + "code": "Overlord_CheckIfActive:\n #_09C08D: LDA.b $1B\n #_09C08F: BNE EXIT_09C08C\n\n #_09C091: LDA.b $1A\n #_09C093: AND.b #$01\n #_09C095: STA.b $01\n #_09C097: STA.b $02\n\n #_09C099: TAY\n\n #_09C09A: LDA.b $E2\n #_09C09C: CLC\n #_09C09D: ADC.w .offset_low,Y\n #_09C0A0: ROL.b $00\n\n #_09C0A2: CMP.w $0B08,X\n #_09C0A5: PHP\n\n #_09C0A6: LDA.b $E3\n #_09C0A8: LSR.b $00\n #_09C0AA: ADC.w .offset_high,Y\n\n #_09C0AD: PLP\n #_09C0AE: SBC.w $0B10,X\n #_09C0B1: STA.b $00\n\n #_09C0B3: LSR.b $01\n #_09C0B5: BCC .positive_x\n\n #_09C0B7: EOR.b #$80\n #_09C0B9: STA.b $00\n\n; ---------------------------------------------------------\n\n.positive_x\n #_09C0BB: LDA.b $00\n #_09C0BD: BMI .negative_x\n\n #_09C0BF: LDA.b $E8\n #_09C0C1: CLC\n #_09C0C2: ADC.w .offset_low,Y\n #_09C0C5: ROL.b $00\n\n #_09C0C7: CMP.w $0B18,X\n #_09C0CA: PHP\n\n #_09C0CB: LDA.b $E9\n #_09C0CD: LSR.b $00\n #_09C0CF: ADC.w .offset_high,Y\n\n #_09C0D2: PLP\n #_09C0D3: SBC.w $0B20,X\n #_09C0D6: STA.b $00\n\n #_09C0D8: LSR.b $02\n #_09C0DA: BCC .negative_y\n\n #_09C0DC: EOR.b #$80\n #_09C0DE: STA.b $00\n\n.negative_y\n #_09C0E0: LDA.b $00\n #_09C0E2: BPL .exit\n\n; ---------------------------------------------------------\n\n.negative_x\n #_09C0E4: STZ.w $0B00,X\n\n #_09C0E7: TXA\n #_09C0E8: ASL A\n #_09C0E9: TAY\n\n #_09C0EA: REP #$20\n\n #_09C0EC: LDA.w $0B48,Y\n #_09C0EF: STA.b $00\n\n #_09C0F1: CMP.w #$FFFF\n #_09C0F4: PHP\n\n #_09C0F5: LSR A\n #_09C0F6: LSR A\n #_09C0F7: LSR A\n #_09C0F8: CLC\n #_09C0F9: ADC.w #$7FEF80\n #_09C0FC: STA.b $01\n\n #_09C0FE: PLP\n #_09C0FF: SEP #$20\n #_09C101: BCS .exit\n\n #_09C103: LDA.b #$7F\n #_09C105: STA.b $03\n\n #_09C107: LDA.b $00\n #_09C109: AND.b #$07\n #_09C10B: TAY\n\n #_09C10C: LDA.b [$01]\n #_09C10E: AND.w SpriteDeathMasks,Y\n #_09C111: STA.b [$01]\n\n.exit\n #_09C113: RTS", + "file": "bank_09.asm" + }, + { + "name": "Underworld_ResetSprites", + "code": "Underworld_ResetSprites:\n #_09C114: PHB\n #_09C115: PHK\n #_09C116: PLB\n\n #_09C117: JSR Underworld_CacheTransSprites\n\n #_09C11A: STZ.w $0309\n #_09C11D: STZ.w $0308\n\n #_09C120: JSL Sprite_DisableAll\n\n #_09C124: REP #$20\n\n #_09C126: LDA.w #$FFFF\n #_09C129: STA.w $0FBA\n #_09C12C: STA.w $0FB8\n\n; ---------------------------------------------------------\n\n #_09C12F: LDX.b #$00\n\n #_09C131: LDA.w $048E\n\n.next_overlord\n #_09C134: CMP.w $0B80,X\n #_09C137: BEQ .finish_up\n\n #_09C139: INX\n #_09C13A: INX\n #_09C13B: CPX.b #$07\n #_09C13D: BCC .next_overlord\n\n; ---------------------------------------------------------\n\n #_09C13F: LDA.w $0B86\n #_09C142: STA.b $00\n\n #_09C144: LDA.w $0B84\n #_09C147: STA.w $0B86\n\n #_09C14A: LDA.w $0B82\n #_09C14D: STA.w $0B84\n\n #_09C150: LDA.w $0B80\n #_09C153: STA.w $0B82\n\n #_09C156: LDA.w $048E\n #_09C159: STA.w $0B80\n\n #_09C15C: REP #$10\n\n #_09C15E: LDA.b $00\n #_09C160: CMP.w #$FFFF\n #_09C163: BEQ .finish_up\n\n #_09C165: ASL A\n #_09C166: TAX\n\n #_09C167: LDA.w #$0000\n #_09C16A: STA.l $7FDF80,X\n\n.finish_up\n #_09C16E: SEP #$30\n\n #_09C170: JSR Underworld_LoadSprites\n\n #_09C173: PLB\n\n #_09C174: RTL", + "file": "bank_09.asm" + }, + { + "name": "Underworld_CacheTransSprites", + "code": "Underworld_CacheTransSprites:\n #_09C176: LDA.b $1B\n #_09C178: BEQ EXIT_09C175\n\n #_09C17A: STA.w $0FFA\n\n #_09C17D: LDX.b #$0F\n\n.next\n #_09C17F: STZ.w $1D00,X\n\n #_09C182: LDA.w $0E20,X\n #_09C185: STA.w $1D10,X\n\n #_09C188: LDA.w $0D10,X\n #_09C18B: STA.w $1D20,X\n\n #_09C18E: LDA.w $0DC0,X\n #_09C191: STA.w $1D60,X\n\n #_09C194: LDA.w $0D30,X\n #_09C197: STA.w $1D30,X\n\n #_09C19A: LDA.w $0D00,X\n #_09C19D: STA.w $1D40,X\n\n #_09C1A0: LDA.w $0D20,X\n #_09C1A3: STA.w $1D50,X\n\n #_09C1A6: LDA.w $0F00,X\n #_09C1A9: BNE .skip\n\n #_09C1AB: LDA.w $0DD0,X\n #_09C1AE: CMP.b #$04\n #_09C1B0: BEQ .skip\n\n #_09C1B2: CMP.b #$0A\n #_09C1B4: BEQ .skip\n\n; ---------------------------------------------------------\n\n #_09C1B6: STA.w $1D00,X\n\n #_09C1B9: LDA.w $0D90,X\n #_09C1BC: STA.w $1D70,X\n\n #_09C1BF: LDA.w $0EB0,X\n #_09C1C2: STA.w $1D80,X\n\n #_09C1C5: LDA.w $0F50,X\n #_09C1C8: STA.w $1D90,X\n\n #_09C1CB: LDA.w $0B89,X\n #_09C1CE: STA.w $1DA0,X\n\n #_09C1D1: LDA.w $0DE0,X\n #_09C1D4: STA.w $1DB0,X\n\n #_09C1D7: LDA.w $0E40,X\n #_09C1DA: STA.w $1DC0,X\n\n #_09C1DD: LDA.w $0F20,X\n #_09C1E0: STA.w $1DD0,X\n\n #_09C1E3: LDA.w $0D80,X\n #_09C1E6: STA.w $1DE0,X\n\n #_09C1E9: LDA.w $0E60,X\n #_09C1EC: STA.w $1DF0,X\n\n #_09C1EF: LDA.w $0DA0,X\n #_09C1F2: STA.l $7FFA5C,X\n\n #_09C1F6: LDA.w $0DB0,X\n #_09C1F9: STA.l $7FFA6C,X\n\n #_09C1FD: LDA.w $0E90,X\n #_09C200: STA.l $7FFA7C,X\n\n #_09C204: LDA.w $0E80,X\n #_09C207: STA.l $7FFA8C,X\n\n #_09C20B: LDA.w $0F70,X\n #_09C20E: STA.l $7FFA9C,X\n\n #_09C212: LDA.w $0DF0,X\n #_09C215: STA.l $7FFAAC,X\n\n #_09C219: LDA.l $7FF9C2,X\n #_09C21D: STA.l $7FFACC,X\n\n #_09C221: LDA.w $0BA0,X\n #_09C224: STA.l $7FFADC,X\n\n; ---------------------------------------------------------\n\n.skip\n #_09C228: DEX\n #_09C229: BMI .exit\n\n #_09C22B: JMP.w .next\n\n.exit\n #_09C22E: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_DisableAll", + "code": "Sprite_DisableAll:\n #_09C22F: LDX.b #$0F\n\n.next_sprite\n #_09C231: LDA.w $0DD0,X\n #_09C234: BEQ .skip\n\n #_09C236: LDA.b $1B\n #_09C238: BNE .delete\n\n #_09C23A: LDA.w $0E20,X\n #_09C23D: CMP.b #$6C ; SPRITE 6C\n #_09C23F: BEQ .skip\n\n.delete\n #_09C241: STZ.w $0DD0,X\n\n.skip\n #_09C244: DEX\n #_09C245: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_09C247: LDX.b #$09\n\n.next_ancilla\n #_09C249: STZ.w $0C4A,X\n\n #_09C24C: DEX\n #_09C24D: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n #_09C24F: STZ.w $02EC\n\n #_09C252: STZ.w $0B6A\n #_09C255: STZ.w $0B9B\n\n #_09C258: STZ.w $0B88\n #_09C25B: STZ.w $0B99\n\n #_09C25E: STZ.w $0FB4\n\n #_09C261: STZ.w $0B9E\n\n #_09C264: STZ.w $0CF4\n\n #_09C267: STZ.w $0FF9\n #_09C26A: STZ.w $0FF8\n\n #_09C26D: STZ.w $0FFB\n #_09C270: STZ.w $0FFC\n #_09C273: STZ.w $0FFD\n\n #_09C276: STZ.w $0FC6\n\n #_09C279: STZ.w $03FC\n\n; ---------------------------------------------------------\n\n #_09C27C: LDX.b #$07\n\n.next_overlord\n #_09C27E: STZ.w $0B00,X\n\n #_09C281: DEX\n #_09C282: BPL .next_overlord\n\n; ---------------------------------------------------------\n\n #_09C284: LDX.b #$1D\n\n.next_garnish\n #_09C286: LDA.b #$00\n #_09C288: STA.l $7FF800,X\n\n #_09C28C: DEX\n #_09C28D: BPL .next_garnish\n\n #_09C28F: RTL", + "file": "bank_09.asm" + }, + { + "name": "Underworld_LoadSprites", + "code": "Underworld_LoadSprites:\n #_09C290: REP #$30\n\n #_09C292: LDA.w $048E\n #_09C295: ASL A\n #_09C296: TAY\n\n #_09C297: LDA.w RoomData_SpritePointers,Y\n #_09C29A: STA.b $00\n\n #_09C29C: LDA.w $048E\n #_09C29F: LSR A\n #_09C2A0: LSR A\n #_09C2A1: LSR A\n\n #_09C2A2: SEP #$30\n\n #_09C2A4: AND.b #$FE\n #_09C2A6: STA.w $0FB1\n\n #_09C2A9: LDA.w $048E\n #_09C2AC: AND.b #$0F\n #_09C2AE: ASL A\n #_09C2AF: STA.w $0FB0\n\n #_09C2B2: LDA.b ($00)\n #_09C2B4: STA.w $0FB3\n\n #_09C2B7: LDA.b #$01\n #_09C2B9: STA.b $04\n\n #_09C2BB: STZ.b $02\n #_09C2BD: STZ.b $03\n\n; ---------------------------------------------------------\n\n.next_sprite\n #_09C2BF: LDY.b $04\n\n #_09C2C1: LDA.b ($00),Y\n #_09C2C3: CMP.b #$FF\n #_09C2C5: BEQ .done\n\n #_09C2C7: JSR Underworld_LoadSingleSprite\n\n #_09C2CA: INC.b $02\n\n #_09C2CC: INC.b $04\n #_09C2CE: INC.b $04\n #_09C2D0: INC.b $04\n\n #_09C2D2: BRA .next_sprite\n\n.done\n #_09C2D4: RTS", + "file": "bank_09.asm" + }, + { + "name": "SpriteSlotToDeathBit", + "code": "SpriteSlotToDeathBit:\n #_09C2D5: dw $0001, $0002, $0004, $0008\n #_09C2DD: dw $0010, $0020, $0040, $0080\n #_09C2E5: dw $0100, $0200, $0400, $0800\n #_09C2ED: dw $1000, $2000, $4000, $8000\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ManuallySetDeathFlagUW", + "code": "Sprite_ManuallySetDeathFlagUW:\n #_09C2F5: PHB\n #_09C2F6: PHK\n #_09C2F7: PLB\n\n #_09C2F8: LDA.b $1B\n #_09C2FA: BEQ .exit\n\n #_09C2FC: LDA.w $0CAA,X\n #_09C2FF: LSR A\n #_09C300: BCS .exit\n\n #_09C302: LDA.w $0BC0,X\n #_09C305: BMI .exit\n\n #_09C307: STA.b $02\n #_09C309: STZ.b $03\n\n #_09C30B: REP #$30\n\n #_09C30D: PHX\n\n #_09C30E: LDA.w $048E\n #_09C311: ASL A\n #_09C312: TAX\n\n #_09C313: LDA.b $02\n #_09C315: ASL A\n #_09C316: TAY\n\n #_09C317: LDA.l $7FDF80,X\n #_09C31B: ORA.w SpriteSlotToDeathBit,Y\n #_09C31E: STA.l $7FDF80,X\n\n #_09C322: PLX\n\n #_09C323: SEP #$30\n\n.exit\n #_09C325: PLB\n\n #_09C326: RTL", + "file": "bank_09.asm" + }, + { + "name": "Underworld_LoadSingleSprite", + "code": "Underworld_LoadSingleSprite:\n #_09C327: INY\n #_09C328: INY\n\n #_09C329: LDA.b ($00),Y\n #_09C32B: TAX\n\n #_09C32C: CPX.b #$E4 ; SPRITE E4\n #_09C32E: BNE .not_key\n\n #_09C330: DEY\n #_09C331: DEY\n\n #_09C332: LDA.b ($00),Y\n\n #_09C334: INY\n #_09C335: INY\n\n #_09C336: CMP.b #$FE\n #_09C338: BEQ .small_key\n\n #_09C33A: CMP.b #$FD\n #_09C33C: BNE .not_overlord_or_bigkey\n\n #_09C33E: JSR .small_key\n\n #_09C341: INC.w $0CBA,X\n\n #_09C344: RTS", + "file": "bank_09.asm" + }, + { + "name": "Underworld_LoadSingleOverlord", + "code": "Underworld_LoadSingleOverlord:\n #_09C3E8: LDX.b #$07\n\n.next_slot\n #_09C3EA: LDA.w $0B00,X\n #_09C3ED: BEQ .open_slot\n\n #_09C3EF: DEX\n #_09C3F0: BPL .next_slot\n\n #_09C3F2: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ResetAll", + "code": "Sprite_ResetAll:\n #_09C44E: JSL Sprite_DisableAll\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ResetBuffers", + "code": "Sprite_ResetBuffers:\n #_09C452: STZ.w $0FDD\n #_09C455: STZ.w $0FDC\n #_09C458: STZ.w $0FFD\n\n #_09C45B: STZ.w $02F0\n\n #_09C45E: STZ.w $0FC6\n\n #_09C461: STZ.w $0B6A\n\n #_09C464: STZ.w $0FB3\n\n #_09C467: LDA.l $7EF3CC\n #_09C46B: CMP.b #$0D ; FOLLOWER 0D\n #_09C46D: BEQ .not_superbomb\n\n #_09C46F: LDA.b #$FE\n #_09C471: STA.w $04B4\n\n.not_superbomb\n #_09C474: REP #$10\n\n; ---------------------------------------------------------\n\n #_09C476: LDX.w #$0FFF\n\n #_09C479: LDA.b #$00\n\n.next_room\n #_09C47B: STA.l $7FDF80,X\n\n #_09C47F: DEX\n #_09C480: BPL .next_room\n\n; ---------------------------------------------------------\n\n #_09C482: LDX.w #$01FF\n\n.next_screen\n #_09C485: STA.l $7FEF80,X\n\n #_09C489: DEX\n #_09C48A: BPL .next_screen\n\n; ---------------------------------------------------------\n\n #_09C48C: SEP #$10\n\n #_09C48E: LDY.b #$07\n #_09C490: LDA.b #$FF\n\n.next_visited_room\n #_09C492: STA.w $0B80,Y\n\n #_09C495: DEY\n #_09C496: BPL .next_visited_room\n\n #_09C498: RTL", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ReloadAll_Overworld", + "code": "Sprite_ReloadAll_Overworld:\n #_09C499: JSL Sprite_DisableAll\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Sprite_LoadAll_Overworld", + "code": "Sprite_LoadAll_Overworld:\n #_09C49D: JSL Sprite_ResetBuffers\n\n #_09C4A1: PHB\n #_09C4A2: PHK\n #_09C4A3: PLB\n\n #_09C4A4: JSR Overworld_LoadSprites\n #_09C4A7: JSR Sprite_ActivateAllProxima\n\n #_09C4AA: PLB\n\n #_09C4AB: RTL", + "file": "bank_09.asm" + }, + { + "name": "Overworld_LoadSprites", + "code": "Overworld_LoadSprites:\n #_09C4AC: LDA.w $040A\n #_09C4AF: AND.b #$07\n #_09C4B1: ASL A\n\n #_09C4B2: STZ.w $0FBC\n #_09C4B5: STA.w $0FBD\n\n #_09C4B8: LDA.w $040A\n #_09C4BB: AND.b #$3F\n #_09C4BD: LSR A\n #_09C4BE: LSR A\n #_09C4BF: AND.b #$0E\n #_09C4C1: STA.w $0FBF\n #_09C4C4: STZ.w $0FBE\n\n #_09C4C7: LDA.w $040A\n #_09C4CA: TAY\n\n #_09C4CB: LDX.w OverworldScreenSizeForLoading,Y\n #_09C4CE: STX.w $0FB9\n #_09C4D1: STZ.w $0FB8\n\n #_09C4D4: STX.w $0FBB\n #_09C4D7: STZ.w $0FBA\n\n #_09C4DA: REP #$30\n\n #_09C4DC: LDA.w $040A\n #_09C4DF: ASL A\n #_09C4E0: TAY\n\n #_09C4E1: SEP #$20\n\n #_09C4E3: LDA.l $7EF3C5\n #_09C4E7: CMP.b #$03\n #_09C4E9: BEQ .aga_dead\n\n #_09C4EB: CMP.b #$02\n #_09C4ED: BEQ .zelda_rescued\n\n; ---------------------------------------------------------\n\n #_09C4EF: LDA.w Overworld_SpritePointers_state_0+0,Y\n #_09C4F2: STA.b $00\n\n #_09C4F4: LDA.w Overworld_SpritePointers_state_0+1,Y\n #_09C4F7: BRA .start_loading\n\n; ---------------------------------------------------------\n\n.aga_dead\n #_09C4F9: LDA.w Overworld_SpritePointers_state_2+0,Y\n #_09C4FC: STA.b $00\n\n #_09C4FE: LDA.w Overworld_SpritePointers_state_2+1,Y\n #_09C501: BRA .start_loading\n\n; ---------------------------------------------------------\n\n.zelda_rescued\n #_09C503: LDA.w Overworld_SpritePointers_state_1+0,Y\n #_09C506: STA.b $00\n\n #_09C508: LDA.w Overworld_SpritePointers_state_1+1,Y\n\n; ---------------------------------------------------------\n\n.start_loading\n #_09C50B: STA.b $01\n\n #_09C50D: LDY.w #$0000\n\n.next_sprite\n #_09C510: LDA.b ($00),Y\n #_09C512: CMP.b #$FF\n #_09C514: BEQ .done_sprites\n\n #_09C516: INY\n #_09C517: INY\n\n #_09C518: LDA.b ($00),Y\n\n #_09C51A: DEY\n #_09C51B: DEY\n\n #_09C51C: CMP.b #$F4\n #_09C51E: BNE .not_boulder_spawner\n\n #_09C520: INC.w $0FFD\n\n #_09C523: INY\n #_09C524: INY\n #_09C525: INY\n\n #_09C526: BRA .next_sprite\n\n.not_boulder_spawner\n #_09C528: LDA.b ($00),Y\n #_09C52A: PHA\n\n #_09C52B: LSR A\n #_09C52C: LSR A\n #_09C52D: LSR A\n #_09C52E: LSR A\n\n #_09C52F: ASL A\n #_09C530: ASL A\n\n #_09C531: STA.b $02\n\n #_09C533: INY\n\n #_09C534: LDA.b ($00),Y\n\n #_09C536: LSR A\n #_09C537: LSR A\n #_09C538: LSR A\n #_09C539: LSR A\n\n #_09C53A: CLC\n #_09C53B: ADC.b $02\n #_09C53D: STA.b $06\n\n #_09C53F: PLA\n\n #_09C540: ASL A\n #_09C541: ASL A\n #_09C542: ASL A\n #_09C543: ASL A\n\n #_09C544: STA.b $07\n\n #_09C546: LDA.b ($00),Y\n #_09C548: AND.b #$0F\n #_09C54A: ORA.b $07\n #_09C54C: STA.b $05\n\n #_09C54E: INY\n\n #_09C54F: LDA.b ($00),Y\n\n #_09C551: LDX.b $05\n\n #_09C553: INC A\n #_09C554: STA.l $7FDF80,X\n\n #_09C558: INY\n\n #_09C559: BRA .next_sprite\n\n; ---------------------------------------------------------\n\n.done_sprites\n #_09C55B: SEP #$10\n\n #_09C55D: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ActivateAllProxima", + "code": "Sprite_ActivateAllProxima:\n #_09C55E: LDA.b $E2\n #_09C560: PHA\n\n #_09C561: LDA.b $E3\n #_09C563: PHA\n\n #_09C564: LDA.w $069F\n #_09C567: PHA\n\n #_09C568: LDA.b #$FF\n #_09C56A: STA.w $069F\n\n #_09C56D: LDY.b #$15\n\n; ---------------------------------------------------------\n\n.next\n #_09C56F: PHY\n\n #_09C570: JSR Sprite_ActivateWhenProximal_Horizontal\n\n #_09C573: PLY\n\n #_09C574: LDA.b $E2\n #_09C576: CLC\n #_09C577: ADC.b #$10\n #_09C579: STA.b $E2\n\n #_09C57B: LDA.b $E3\n #_09C57D: ADC.b #$00\n #_09C57F: STA.b $E3\n\n #_09C581: DEY\n #_09C582: BPL .next\n\n; ---------------------------------------------------------\n\n #_09C584: PLA\n #_09C585: STA.w $069F\n\n #_09C588: PLA\n #_09C589: STA.b $E3\n\n #_09C58B: PLA\n #_09C58C: STA.b $E2\n\n #_09C58E: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ProximityActivation", + "code": "Sprite_ProximityActivation:\n #_09C58F: PHB\n #_09C590: PHK\n #_09C591: PLB\n\n #_09C592: LDA.b $11\n #_09C594: BEQ .good_submode\n\n #_09C596: JSR Sprite_ActivateWhenProximal_Horizontal\n #_09C599: JSR Sprite_ActivateWhenProximal_Vertical\n\n #_09C59C: PLB\n\n #_09C59D: RTL", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ActivateWhenProximal_Horizontal", + "code": "Sprite_ActivateWhenProximal_Horizontal:\n #_09C5BB: LDY.b #$00\n\n #_09C5BD: LDA.w $069F\n #_09C5C0: BEQ .exit\n #_09C5C2: BPL .good\n\n #_09C5C4: INY\n\n.good\n #_09C5C5: LDA.b $E2\n #_09C5C7: CLC\n #_09C5C8: ADC.w .offset_low,Y\n #_09C5CB: STA.b $0E\n\n #_09C5CD: LDA.b $E3\n #_09C5CF: ADC.w .offset_high,Y\n #_09C5D2: STA.b $0F\n\n #_09C5D4: LDA.b $E8\n #_09C5D6: SEC\n #_09C5D7: SBC.b #$30\n #_09C5D9: STA.b $0C\n\n #_09C5DB: LDA.b $E9\n #_09C5DD: SBC.b #$00\n #_09C5DF: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_09C5E1: LDX.b #$15\n\n.next\n #_09C5E3: JSR Overworld_ProximityMotivatedLoad\n\n #_09C5E6: REP #$20\n\n #_09C5E8: LDA.b $0C\n #_09C5EA: CLC\n #_09C5EB: ADC.w #$0010\n #_09C5EE: STA.b $0C\n\n #_09C5F0: SEP #$20\n\n #_09C5F2: DEX\n #_09C5F3: BPL .next\n\n.exit\n #_09C5F5: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_ActivateWhenProximal_Vertical", + "code": "Sprite_ActivateWhenProximal_Vertical:\n #_09C5FA: LDY.b #$00\n\n #_09C5FC: LDA.w $069E\n #_09C5FF: BEQ .done\n\n #_09C601: BPL .good\n\n #_09C603: INY\n\n.good\n #_09C604: LDA.b $E8\n #_09C606: CLC\n #_09C607: ADC.w .offset_low,Y\n #_09C60A: STA.b $0C\n\n #_09C60C: LDA.b $E9\n #_09C60E: ADC.w .offset_high,Y\n #_09C611: STA.b $0D\n\n #_09C613: LDA.b $E2\n #_09C615: SEC\n #_09C616: SBC.b #$30\n #_09C618: STA.b $0E\n\n #_09C61A: LDA.b $E3\n #_09C61C: SBC.b #$00\n #_09C61E: STA.b $0F\n\n; ---------------------------------------------------------\n\n #_09C620: LDX.b #$15\n\n.next\n #_09C622: JSR Overworld_ProximityMotivatedLoad\n\n #_09C625: REP #$20\n\n #_09C627: LDA.b $0E\n #_09C629: CLC\n #_09C62A: ADC.w #$0010\n #_09C62D: STA.b $0E\n\n #_09C62F: SEP #$20\n\n #_09C631: DEX\n #_09C632: BPL .next\n\n.done\n #_09C634: RTS", + "file": "bank_09.asm" + }, + { + "name": "OverworldScreenSizeForLoading", + "code": "OverworldScreenSizeForLoading:\n #_09C635: db $04, $04, $02, $04, $04, $04, $04, $02\n #_09C63D: db $04, $04, $04, $04, $04, $04, $04, $04\n #_09C645: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C64D: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C655: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C65D: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C665: db $04, $04, $02, $02, $02, $04, $04, $02\n #_09C66D: db $04, $04, $02, $02, $02, $04, $04, $02\n\n #_09C675: db $04, $04, $02, $04, $04, $04, $04, $02\n #_09C67D: db $04, $04, $04, $04, $04, $04, $04, $04\n #_09C685: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C68D: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C695: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C69D: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C6A5: db $04, $04, $02, $02, $02, $04, $04, $02\n #_09C6AD: db $04, $04, $02, $02, $02, $04, $04, $02\n\n #_09C6B5: db $04, $04, $02, $04, $04, $04, $04, $02\n #_09C6BD: db $04, $04, $04, $04, $04, $04, $04, $04\n #_09C6C5: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C6CD: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C6D5: db $04, $04, $02, $04, $04, $02, $04, $04\n #_09C6DD: db $02, $02, $02, $02, $02, $02, $02, $02\n #_09C6E5: db $04, $04, $02, $02, $02, $04, $04, $02\n #_09C6ED: db $04, $04, $02, $02, $02, $04, $04, $02\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_ProximityMotivatedLoad", + "code": "Overworld_ProximityMotivatedLoad:\n #_09C6F5: REP #$20\n\n #_09C6F7: LDA.b $0E\n #_09C6F9: SEC\n #_09C6FA: SBC.w $0FBC\n #_09C6FD: CMP.w $0FB8\n #_09C700: BCS .exit\n\n #_09C702: XBA\n #_09C703: STA.b $00\n\n #_09C705: LDA.b $0C\n #_09C707: SEC\n #_09C708: SBC.w $0FBE\n #_09C70B: CMP.w $0FBA\n #_09C70E: BCS .exit\n\n; ---------------------------------------------------------\n\n #_09C710: SEP #$20\n\n #_09C712: XBA\n #_09C713: ASL A\n #_09C714: ASL A\n #_09C715: ORA.b $00\n #_09C717: STA.b $01\n\n #_09C719: LDA.b $0C\n #_09C71B: AND.b #$F0\n #_09C71D: STA.b $00\n\n #_09C71F: LDA.b $0E\n #_09C721: LSR A\n #_09C722: LSR A\n #_09C723: LSR A\n #_09C724: LSR A\n #_09C725: ORA.b $00\n #_09C727: STA.b $00\n\n #_09C729: PHX\n\n #_09C72A: JSR Overworld_LoadProximaSpriteIfAlive\n\n #_09C72D: PLX\n\n.exit\n #_09C72E: SEP #$20\n\n #_09C730: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overworld_AliveStatusBits", + "code": "Overworld_AliveStatusBits:\n #_09C731: db $80, $40, $20, $10, $08, $04, $02, $01\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_LoadProximaSpriteIfAlive", + "code": "Overworld_LoadProximaSpriteIfAlive:\n #_09C739: REP #$20\n\n #_09C73B: LDA.b $00\n #_09C73D: CLC\n #_09C73E: ADC.w #$7FDF80>>0\n #_09C741: STA.b $05\n\n #_09C743: SEP #$20\n\n #_09C745: LDA.b #$7FDF80>>16\n #_09C747: STA.b $07\n\n #_09C749: LDA.b [$05]\n #_09C74B: BEQ .alive\n\n #_09C74D: REP #$20\n\n #_09C74F: LDA.b $00\n #_09C751: LSR A\n #_09C752: LSR A\n #_09C753: LSR A\n #_09C754: CLC\n #_09C755: ADC.w #$7FEF80>>0\n #_09C758: STA.b $02\n\n #_09C75A: SEP #$20\n\n #_09C75C: LDA.b #$7FEF80>>16\n #_09C75E: STA.b $04\n\n #_09C760: LDA.b $00\n #_09C762: AND.b #$07\n #_09C764: TAY\n\n #_09C765: LDA.b [$02]\n #_09C767: AND.w Overworld_AliveStatusBits,Y\n #_09C76A: BNE .alive\n\n #_09C76C: JSR Overworld_LoadSingleSprite\n\n.alive\n #_09C76F: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overworld_LoadSingleSprite", + "code": "Overworld_LoadSingleSprite:\n #_09C770: LDA.b [$05]\n #_09C772: CMP.b #$F4\n #_09C774: BCC .load_sprite\n\n #_09C776: JSR Overworld_LoadSingleOverlord\n\n #_09C779: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overworld_LoadSingleOverlord", + "code": "Overworld_LoadSingleOverlord:\n #_09C80B: LDX.b #$07\n\n.next_check\n #_09C80D: LDA.w $0B00,X\n #_09C810: BEQ .free_slot\n\n #_09C812: DEX\n #_09C813: BPL .next_check\n\n #_09C815: RTS", + "file": "bank_09.asm" + }, + { + "name": "InitSpawnedOevrlord", + "code": "InitSpawnedOevrlord:\n #_09C871: LDA.w $040A\n #_09C874: STA.w $0CCA,X\n\n #_09C877: STZ.w $0B30,X\n #_09C87A: STZ.w $0B28,X\n #_09C87D: STZ.w $0B38,X\n\n #_09C880: RTS", + "file": "bank_09.asm" + }, + { + "name": "Overworld_SpritePointers", + "code": "Overworld_SpritePointers:\n.state_0\n #_09C881: dw Overworld_Sprites_EMPTY ; 00 - Lost Woods\n #_09C883: dw Overworld_Sprites_EMPTY ; 01 - Lost Woods\n #_09C885: dw Overworld_Sprites_EMPTY ; 02 - Lumberjacks\n #_09C887: dw Overworld_Sprites_EMPTY ; 03 - West Death Mountain\n #_09C889: dw Overworld_Sprites_EMPTY ; 04 - West Death Mountain\n #_09C88B: dw Overworld_Sprites_EMPTY ; 05 - East Death Mountain\n #_09C88D: dw Overworld_Sprites_EMPTY ; 06 - East Death Mountain\n #_09C88F: dw Overworld_Sprites_EMPTY ; 07 - Turtle Rock Portalway\n #_09C891: dw Overworld_Sprites_EMPTY ; 08 - Lost Woods\n #_09C893: dw Overworld_Sprites_EMPTY ; 09 - Lost Woods\n #_09C895: dw Overworld_Sprites_EMPTY ; 0A - Death Mountain Foot\n #_09C897: dw Overworld_Sprites_EMPTY ; 0B - West Death Mountain\n #_09C899: dw Overworld_Sprites_EMPTY ; 0C - West Death Mountain\n #_09C89B: dw Overworld_Sprites_EMPTY ; 0D - East Death Mountain\n #_09C89D: dw Overworld_Sprites_EMPTY ; 0E - East Death Mountain\n #_09C89F: dw Overworld_Sprites_EMPTY ; 0F - Waterfall of Wishing\n #_09C8A1: dw Overworld_Sprites_EMPTY ; 10 - Lost Woods Alcove\n #_09C8A3: dw Overworld_Sprites_EMPTY ; 11 - North of Kakariko\n #_09C8A5: dw Overworld_Sprites_EMPTY ; 12 - Northwest Pond\n #_09C8A7: dw Overworld_Sprites_EMPTY ; 13 - Sanctuary\n #_09C8A9: dw Overworld_Sprites_EMPTY ; 14 - Graveyard\n #_09C8AB: dw Overworld_Sprites_EMPTY ; 15 - Hylia River Bend\n #_09C8AD: dw Overworld_Sprites_EMPTY ; 16 - Potion Shop\n #_09C8AF: dw Overworld_Sprites_EMPTY ; 17 - Octorok Pit\n #_09C8B1: dw Overworld_Sprites_EMPTY ; 18 - Kakariko Village\n #_09C8B3: dw Overworld_Sprites_EMPTY ; 19 - Kakariko Village\n #_09C8B5: dw Overworld_Sprites_EMPTY ; 1A - Kakariko Orchard\n #_09C8B7: dw Overworld_Sprites_Screen1B_0 ; 1B - Hyrule Castle\n #_09C8B9: dw Overworld_Sprites_EMPTY ; 1C - Hyrule Castle\n #_09C8BB: dw Overworld_Sprites_Screen1D_0 ; 1D - Hylia River Peninsula\n #_09C8BD: dw Overworld_Sprites_EMPTY ; 1E - Eastern Ruins\n #_09C8BF: dw Overworld_Sprites_EMPTY ; 1F - Eastern Ruins\n #_09C8C1: dw Overworld_Sprites_EMPTY ; 20 - Kakariko Village\n #_09C8C3: dw Overworld_Sprites_EMPTY ; 21 - Kakariko Village\n #_09C8C5: dw Overworld_Sprites_EMPTY ; 22 - Smith's House\n #_09C8C7: dw Overworld_Sprites_EMPTY ; 23 - Hyrule Castle\n #_09C8C9: dw Overworld_Sprites_EMPTY ; 24 - Hyrule Castle\n #_09C8CB: dw Overworld_Sprites_EMPTY ; 25 - Boulder Field\n #_09C8CD: dw Overworld_Sprites_EMPTY ; 26 - Eastern Ruins\n #_09C8CF: dw Overworld_Sprites_EMPTY ; 27 - Eastern Ruins\n #_09C8D1: dw Overworld_Sprites_EMPTY ; 28 - Racing Game\n #_09C8D3: dw Overworld_Sprites_EMPTY ; 29 - South of Kakariko\n #_09C8D5: dw Overworld_Sprites_EMPTY ; 2A - Haunted Grove\n #_09C8D7: dw Overworld_Sprites_Screen2B_0 ; 2B - West of Link's House\n #_09C8D9: dw Overworld_Sprites_Screen2C_0 ; 2C - Link's House\n #_09C8DB: dw Overworld_Sprites_EMPTY ; 2D - Eastern Bridge\n #_09C8DD: dw Overworld_Sprites_EMPTY ; 2E - Lake Hylia River Bend\n #_09C8DF: dw Overworld_Sprites_EMPTY ; 2F - Eastern Portalway\n #_09C8E1: dw Overworld_Sprites_EMPTY ; 30 - Desert\n #_09C8E3: dw Overworld_Sprites_EMPTY ; 31 - Desert\n #_09C8E5: dw Overworld_Sprites_Screen32_0 ; 32 - Haunted Grove Entrance\n #_09C8E7: dw Overworld_Sprites_EMPTY ; 33 - Marshlands Portalway\n #_09C8E9: dw Overworld_Sprites_EMPTY ; 34 - Marshlands Totems\n #_09C8EB: dw Overworld_Sprites_EMPTY ; 35 - Lake Hylia\n #_09C8ED: dw Overworld_Sprites_EMPTY ; 36 - Lake Hylia\n #_09C8EF: dw Overworld_Sprites_EMPTY ; 37 - Lake Hylia River End\n #_09C8F1: dw Overworld_Sprites_EMPTY ; 38 - Desert\n #_09C8F3: dw Overworld_Sprites_EMPTY ; 39 - Desert\n #_09C8F5: dw Overworld_Sprites_EMPTY ; 3A - Desert Pass\n #_09C8F7: dw Overworld_Sprites_EMPTY ; 3B - Marshlands Dam Entrance\n #_09C8F9: dw Overworld_Sprites_EMPTY ; 3C - Marshlands Ravine\n #_09C8FB: dw Overworld_Sprites_EMPTY ; 3D - Lake Hylia\n #_09C8FD: dw Overworld_Sprites_EMPTY ; 3E - Lake Hylia\n #_09C8FF: dw Overworld_Sprites_EMPTY ; 3F - Lake Hylia Waterfall\n\n; ---------------------------------------------------------\n\n.state_1\n #_09C901: dw Overworld_Sprites_Screen00_1 ; 00 - Lost Woods\n #_09C903: dw Overworld_Sprites_EMPTY ; 01 - Lost Woods\n #_09C905: dw Overworld_Sprites_Screen02_1 ; 02 - Lumberjacks\n #_09C907: dw Overworld_Sprites_Screen03_1 ; 03 - West Death Mountain\n #_09C909: dw Overworld_Sprites_EMPTY ; 04 - West Death Mountain\n #_09C90B: dw Overworld_Sprites_Screen05_1 ; 05 - East Death Mountain\n #_09C90D: dw Overworld_Sprites_EMPTY ; 06 - East Death Mountain\n #_09C90F: dw Overworld_Sprites_Screen07_1 ; 07 - Turtle Rock Portalway\n #_09C911: dw Overworld_Sprites_EMPTY ; 08 - Lost Woods\n #_09C913: dw Overworld_Sprites_EMPTY ; 09 - Lost Woods\n #_09C915: dw Overworld_Sprites_Screen0A_1 ; 0A - Death Mountain Foot\n #_09C917: dw Overworld_Sprites_EMPTY ; 0B - West Death Mountain\n #_09C919: dw Overworld_Sprites_EMPTY ; 0C - West Death Mountain\n #_09C91B: dw Overworld_Sprites_EMPTY ; 0D - East Death Mountain\n #_09C91D: dw Overworld_Sprites_EMPTY ; 0E - East Death Mountain\n #_09C91F: dw Overworld_Sprites_Screen0F_1 ; 0F - Waterfall of Wishing\n #_09C921: dw Overworld_Sprites_Screen10_1 ; 10 - Lost Woods Alcove\n #_09C923: dw Overworld_Sprites_Screen11_1 ; 11 - North of Kakariko\n #_09C925: dw Overworld_Sprites_Screen12_1 ; 12 - Northwest Pond\n #_09C927: dw Overworld_Sprites_Screen13_1 ; 13 - Sanctuary\n #_09C929: dw Overworld_Sprites_Screen14_1 ; 14 - Graveyard\n #_09C92B: dw Overworld_Sprites_Screen15_1 ; 15 - Hylia River Bend\n #_09C92D: dw Overworld_Sprites_Screen16_1 ; 16 - Potion Shop\n #_09C92F: dw Overworld_Sprites_Screen17_1 ; 17 - Octorok Pit\n #_09C931: dw Overworld_Sprites_Screen18_1 ; 18 - Kakariko Village\n #_09C933: dw Overworld_Sprites_EMPTY ; 19 - Kakariko Village\n #_09C935: dw Overworld_Sprites_Screen1A_1 ; 1A - Kakariko Orchard\n #_09C937: dw Overworld_Sprites_Screen1B_1 ; 1B - Hyrule Castle\n #_09C939: dw Overworld_Sprites_EMPTY ; 1C - Hyrule Castle\n #_09C93B: dw Overworld_Sprites_Screen1D_1 ; 1D - Hylia River Peninsula\n #_09C93D: dw Overworld_Sprites_Screen1E_1 ; 1E - Eastern Ruins\n #_09C93F: dw Overworld_Sprites_EMPTY ; 1F - Eastern Ruins\n #_09C941: dw Overworld_Sprites_EMPTY ; 20 - Kakariko Village\n #_09C943: dw Overworld_Sprites_EMPTY ; 21 - Kakariko Village\n #_09C945: dw Overworld_Sprites_Screen22_1 ; 22 - Smith's House\n #_09C947: dw Overworld_Sprites_EMPTY ; 23 - Hyrule Castle\n #_09C949: dw Overworld_Sprites_EMPTY ; 24 - Hyrule Castle\n #_09C94B: dw Overworld_Sprites_Screen25_1 ; 25 - Boulder Field\n #_09C94D: dw Overworld_Sprites_EMPTY ; 26 - Eastern Ruins\n #_09C94F: dw Overworld_Sprites_EMPTY ; 27 - Eastern Ruins\n #_09C951: dw Overworld_Sprites_Screen28_1 ; 28 - Racing Game\n #_09C953: dw Overworld_Sprites_EMPTY ; 29 - South of Kakariko\n #_09C955: dw Overworld_Sprites_Screen2A_1 ; 2A - Haunted Grove\n #_09C957: dw Overworld_Sprites_Screen2B_1 ; 2B - West of Link's House\n #_09C959: dw Overworld_Sprites_Screen2C_1 ; 2C - Link's House\n #_09C95B: dw Overworld_Sprites_Screen2D_1 ; 2D - Eastern Bridge\n #_09C95D: dw Overworld_Sprites_Screen2E_1 ; 2E - Lake Hylia River Bend\n #_09C95F: dw Overworld_Sprites_Screen2F_1 ; 2F - Eastern Portalway\n #_09C961: dw Overworld_Sprites_Screen30_1 ; 30 - Desert\n #_09C963: dw Overworld_Sprites_EMPTY ; 31 - Desert\n #_09C965: dw Overworld_Sprites_Screen32_1 ; 32 - Haunted Grove Entrance\n #_09C967: dw Overworld_Sprites_Screen33_1 ; 33 - Marshlands Portalway\n #_09C969: dw Overworld_Sprites_Screen34_1 ; 34 - Marshlands Totems\n #_09C96B: dw Overworld_Sprites_Screen35_1 ; 35 - Lake Hylia\n #_09C96D: dw Overworld_Sprites_EMPTY ; 36 - Lake Hylia\n #_09C96F: dw Overworld_Sprites_Screen37_1 ; 37 - Lake Hylia River End\n #_09C971: dw Overworld_Sprites_EMPTY ; 38 - Desert\n #_09C973: dw Overworld_Sprites_EMPTY ; 39 - Desert\n #_09C975: dw Overworld_Sprites_Screen3A_1 ; 3A - Desert Pass\n #_09C977: dw Overworld_Sprites_Screen3B_1 ; 3B - Marshlands Dam Entrance\n #_09C979: dw Overworld_Sprites_Screen3C_1 ; 3C - Marshlands Ravine\n #_09C97B: dw Overworld_Sprites_EMPTY ; 3D - Lake Hylia\n #_09C97D: dw Overworld_Sprites_EMPTY ; 3E - Lake Hylia\n #_09C97F: dw Overworld_Sprites_Screen3F_1 ; 3F - Lake Hylia Waterfall\n #_09C981: dw Overworld_Sprites_Screen40 ; 40 - Skull Woods\n #_09C983: dw Overworld_Sprites_Screen42 ; 41 - Skull Woods\n #_09C985: dw Overworld_Sprites_Screen42 ; 42 - Dark Lumberjacks\n #_09C987: dw Overworld_Sprites_Screen43 ; 43 - West Dark Death Mountain\n #_09C989: dw Overworld_Sprites_Screen45 ; 44 - West Dark Death Mountain\n #_09C98B: dw Overworld_Sprites_Screen45 ; 45 - East Dark Death Mountain\n #_09C98D: dw Overworld_Sprites_EMPTY ; 46 - East Dark Death Mountain\n #_09C98F: dw Overworld_Sprites_Screen47 ; 47 - Turtle Rock\n #_09C991: dw Overworld_Sprites_EMPTY ; 48 - Skull Woods\n #_09C993: dw Overworld_Sprites_EMPTY ; 49 - Skull Woods\n #_09C995: dw Overworld_Sprites_Screen4A ; 4A - Bumper Ledge\n #_09C997: dw Overworld_Sprites_EMPTY ; 4B - West Dark Death Mountain\n #_09C999: dw Overworld_Sprites_EMPTY ; 4C - West Dark Death Mountain\n #_09C99B: dw Overworld_Sprites_EMPTY ; 4D - East Dark Death Mountain\n #_09C99D: dw Overworld_Sprites_EMPTY ; 4E - East Dark Death Mountain\n #_09C99F: dw Overworld_Sprites_Screen4F ; 4F - Lake of Bad Omens\n #_09C9A1: dw Overworld_Sprites_Screen50 ; 50 - Skull Woods Alcove\n #_09C9A3: dw Overworld_Sprites_Screen51 ; 51 - North of Outcasts\n #_09C9A5: dw Overworld_Sprites_Screen52 ; 52 - Dark Northwest Pond\n #_09C9A7: dw Overworld_Sprites_Screen53 ; 53 - Dark Sanctuary\n #_09C9A9: dw Overworld_Sprites_Screen54 ; 54 - Dark Graveyard\n #_09C9AB: dw Overworld_Sprites_Screen55 ; 55 - Dark Hylia River Bend\n #_09C9AD: dw Overworld_Sprites_Screen56 ; 56 - Dark Northeast Shop\n #_09C9AF: dw Overworld_Sprites_Screen57 ; 57 - Dark Octorok Pit\n #_09C9B1: dw Overworld_Sprites_Screen58 ; 58 - Village of Outcasts\n #_09C9B3: dw Overworld_Sprites_EMPTY ; 59 - Village of Outcasts\n #_09C9B5: dw Overworld_Sprites_Screen5A ; 5A - Outcasts Orchard\n #_09C9B7: dw Overworld_Sprites_Screen5B ; 5B - Pyramid of Power\n #_09C9B9: dw Overworld_Sprites_EMPTY ; 5C - Pyramid of Power\n #_09C9BB: dw Overworld_Sprites_Screen5D ; 5D - Dark Hylia River Peninsula\n #_09C9BD: dw Overworld_Sprites_Screen5E ; 5E - Palace of Darkness Maze\n #_09C9BF: dw Overworld_Sprites_EMPTY ; 5F - Palace of Darkness Maze\n #_09C9C1: dw Overworld_Sprites_EMPTY ; 60 - Village of Outcasts\n #_09C9C3: dw Overworld_Sprites_EMPTY ; 61 - Village of Outcasts\n #_09C9C5: dw Overworld_Sprites_Screen62 ; 62 - Stake Puzzle\n #_09C9C7: dw Overworld_Sprites_EMPTY ; 63 - Pyramid of Power\n #_09C9C9: dw Overworld_Sprites_EMPTY ; 64 - Pyramid of Power\n #_09C9CB: dw Overworld_Sprites_Screen65 ; 65 - Boulder Field\n #_09C9CD: dw Overworld_Sprites_EMPTY ; 66 - Palace of Darkness Maze\n #_09C9CF: dw Overworld_Sprites_EMPTY ; 67 - Palace of Darkness Maze\n #_09C9D1: dw Overworld_Sprites_Screen68 ; 68 - Digging Game\n #_09C9D3: dw Overworld_Sprites_Screen69 ; 69 - South of Outcasts\n #_09C9D5: dw Overworld_Sprites_Screen6A ; 6A - Stumpy Grove\n #_09C9D7: dw Overworld_Sprites_Screen6B ; 6B - West of Bomb Shoppe\n #_09C9D9: dw Overworld_Sprites_Screen6C ; 6C - Bomb Shoppe\n #_09C9DB: dw Overworld_Sprites_Screen6D ; 6D - Hammer Bridge\n #_09C9DD: dw Overworld_Sprites_Screen6E ; 6E - Dark Lake Hylia River Bend\n #_09C9DF: dw Overworld_Sprites_Screen6F ; 6F - East Dark World Portalway\n #_09C9E1: dw Overworld_Sprites_Screen70 ; 70 - Misery Mire\n #_09C9E3: dw Overworld_Sprites_Screen72 ; 71 - Misery Mire\n #_09C9E5: dw Overworld_Sprites_Screen72 ; 72 - Stumpy Grove Entrance\n #_09C9E7: dw Overworld_Sprites_Screen73 ; 73 - Swamplands Portalway\n #_09C9E9: dw Overworld_Sprites_Screen74 ; 74 - Swamplands Totems\n #_09C9EB: dw Overworld_Sprites_Screen75 ; 75 - Dark Lake Hylia\n #_09C9ED: dw Overworld_Sprites_Screen77 ; 76 - Dark Lake Hylia\n #_09C9EF: dw Overworld_Sprites_Screen77 ; 77 - Dark Lake Hylia River End\n #_09C9F1: dw Overworld_Sprites_EMPTY ; 78 - Misery Mire\n #_09C9F3: dw Overworld_Sprites_EMPTY ; 79 - Misery Mire\n #_09C9F5: dw Overworld_Sprites_Screen7A ; 7A - West of Swamplands\n #_09C9F7: dw Overworld_Sprites_Screen7B ; 7B - Swamplands Palace Entrance\n #_09C9F9: dw Overworld_Sprites_Screen7C ; 7C - Swamplands Ravine\n #_09C9FB: dw Overworld_Sprites_EMPTY ; 7D - Dark Lake Hylia\n #_09C9FD: dw Overworld_Sprites_EMPTY ; 7E - Dark Lake Hylia\n #_09C9FF: dw Overworld_Sprites_Screen7F ; 7F - Dark Lake Hylia Waterfall\n #_09CA01: dw Overworld_Sprites_Screen80 ; 80 - Master Sword Pedestal\n #_09CA03: dw Overworld_Sprites_Screen81 ; 81 - Zora's Domain\n #_09CA05: dw Overworld_Sprites_EMPTY ;\n #_09CA07: dw Overworld_Sprites_EMPTY ;\n #_09CA09: dw Overworld_Sprites_EMPTY ;\n #_09CA0B: dw Overworld_Sprites_EMPTY ;\n #_09CA0D: dw Overworld_Sprites_EMPTY ;\n #_09CA0F: dw Overworld_Sprites_EMPTY ;\n #_09CA11: dw Overworld_Sprites_EMPTY ;\n #_09CA13: dw Overworld_Sprites_EMPTY ;\n #_09CA15: dw Overworld_Sprites_EMPTY ;\n #_09CA17: dw Overworld_Sprites_EMPTY ;\n #_09CA19: dw Overworld_Sprites_EMPTY ;\n #_09CA1B: dw Overworld_Sprites_EMPTY ;\n #_09CA1D: dw Overworld_Sprites_EMPTY ;\n #_09CA1F: dw Overworld_Sprites_EMPTY ;\n\n; ---------------------------------------------------------\n\n.state_2\n #_09CA21: dw Overworld_Sprites_Screen00_2 ; 00 - Lost Woods\n #_09CA23: dw Overworld_Sprites_EMPTY ; 01 - Lost Woods\n #_09CA25: dw Overworld_Sprites_Screen02_2 ; 02 - Lumberjacks\n #_09CA27: dw Overworld_Sprites_Screen03_2 ; 03 - West Death Mountain\n #_09CA29: dw Overworld_Sprites_EMPTY ; 04 - West Death Mountain\n #_09CA2B: dw Overworld_Sprites_Screen05_2 ; 05 - East Death Mountain\n #_09CA2D: dw Overworld_Sprites_EMPTY ; 06 - East Death Mountain\n #_09CA2F: dw Overworld_Sprites_Screen07_2 ; 07 - Turtle Rock Portalway\n #_09CA31: dw Overworld_Sprites_EMPTY ; 08 - Lost Woods\n #_09CA33: dw Overworld_Sprites_EMPTY ; 09 - Lost Woods\n #_09CA35: dw Overworld_Sprites_Screen0A_2 ; 0A - Death Mountain Foot\n #_09CA37: dw Overworld_Sprites_EMPTY ; 0B - West Death Mountain\n #_09CA39: dw Overworld_Sprites_EMPTY ; 0C - West Death Mountain\n #_09CA3B: dw Overworld_Sprites_EMPTY ; 0D - East Death Mountain\n #_09CA3D: dw Overworld_Sprites_EMPTY ; 0E - East Death Mountain\n #_09CA3F: dw Overworld_Sprites_Screen0F_2 ; 0F - Waterfall of Wishing\n #_09CA41: dw Overworld_Sprites_Screen10_2 ; 10 - Lost Woods Alcove\n #_09CA43: dw Overworld_Sprites_Screen11_2 ; 11 - North of Kakariko\n #_09CA45: dw Overworld_Sprites_Screen12_2 ; 12 - Northwest Pond\n #_09CA47: dw Overworld_Sprites_Screen13_2 ; 13 - Sanctuary\n #_09CA49: dw Overworld_Sprites_Screen14_2 ; 14 - Graveyard\n #_09CA4B: dw Overworld_Sprites_Screen15_2 ; 15 - Hylia River Bend\n #_09CA4D: dw Overworld_Sprites_Screen16_2 ; 16 - Potion Shop\n #_09CA4F: dw Overworld_Sprites_Screen17_2 ; 17 - Octorok Pit\n #_09CA51: dw Overworld_Sprites_Screen18_2 ; 18 - Kakariko Village\n #_09CA53: dw Overworld_Sprites_EMPTY ; 19 - Kakariko Village\n #_09CA55: dw Overworld_Sprites_Screen1A_2 ; 1A - Kakariko Orchard\n #_09CA57: dw Overworld_Sprites_Screen1B_2 ; 1B - Hyrule Castle\n #_09CA59: dw Overworld_Sprites_EMPTY ; 1C - Hyrule Castle\n #_09CA5B: dw Overworld_Sprites_Screen1D_2 ; 1D - Hylia River Peninsula\n #_09CA5D: dw Overworld_Sprites_Screen1E_2 ; 1E - Eastern Ruins\n #_09CA5F: dw Overworld_Sprites_EMPTY ; 1F - Eastern Ruins\n #_09CA61: dw Overworld_Sprites_EMPTY ; 20 - Kakariko Village\n #_09CA63: dw Overworld_Sprites_EMPTY ; 21 - Kakariko Village\n #_09CA65: dw Overworld_Sprites_Screen22_2 ; 22 - Smith's House\n #_09CA67: dw Overworld_Sprites_EMPTY ; 23 - Hyrule Castle\n #_09CA69: dw Overworld_Sprites_EMPTY ; 24 - Hyrule Castle\n #_09CA6B: dw Overworld_Sprites_Screen25_2 ; 25 - Boulder Field\n #_09CA6D: dw Overworld_Sprites_EMPTY ; 26 - Eastern Ruins\n #_09CA6F: dw Overworld_Sprites_EMPTY ; 27 - Eastern Ruins\n #_09CA71: dw Overworld_Sprites_Screen28_2 ; 28 - Racing Game\n #_09CA73: dw Overworld_Sprites_Screen29_2 ; 29 - South of Kakariko\n #_09CA75: dw Overworld_Sprites_Screen2A_2 ; 2A - Haunted Grove\n #_09CA77: dw Overworld_Sprites_Screen2B_2 ; 2B - West of Link's House\n #_09CA79: dw Overworld_Sprites_Screen2C_2 ; 2C - Link's House\n #_09CA7B: dw Overworld_Sprites_Screen2D_2 ; 2D - Eastern Bridge\n #_09CA7D: dw Overworld_Sprites_Screen2E_2 ; 2E - Lake Hylia River Bend\n #_09CA7F: dw Overworld_Sprites_Screen2F_2 ; 2F - Eastern Portalway\n #_09CA81: dw Overworld_Sprites_Screen30_2 ; 30 - Desert\n #_09CA83: dw Overworld_Sprites_EMPTY ; 31 - Desert\n #_09CA85: dw Overworld_Sprites_Screen32_2 ; 32 - Haunted Grove Entrance\n #_09CA87: dw Overworld_Sprites_Screen33_2 ; 33 - Marshlands Portalway\n #_09CA89: dw Overworld_Sprites_Screen34_2 ; 34 - Marshlands Totems\n #_09CA8B: dw Overworld_Sprites_Screen35_2 ; 35 - Lake Hylia\n #_09CA8D: dw Overworld_Sprites_Screen37_2 ; 36 - Lake Hylia\n #_09CA8F: dw Overworld_Sprites_Screen37_2 ; 37 - Lake Hylia River End\n #_09CA91: dw Overworld_Sprites_Screen3A_2 ; 38 - Desert\n #_09CA93: dw Overworld_Sprites_Screen3A_2 ; 39 - Desert\n #_09CA95: dw Overworld_Sprites_Screen3A_2 ; 3A - Desert Pass\n #_09CA97: dw Overworld_Sprites_Screen3B_2 ; 3B - Marshlands Dam Entrance\n #_09CA99: dw Overworld_Sprites_Screen3C_2 ; 3C - Marshlands Ravine\n #_09CA9B: dw Overworld_Sprites_Screen3F_2 ; 3D - Lake Hylia\n #_09CA9D: dw Overworld_Sprites_Screen3F_2 ; 3E - Lake Hylia\n #_09CA9F: dw Overworld_Sprites_Screen3F_2 ; 3F - Lake Hylia Waterfall\n #_09CAA1: dw Overworld_Sprites_Screen40 ; 40 - Skull Woods\n #_09CAA3: dw Overworld_Sprites_Screen42 ; 41 - Skull Woods\n #_09CAA5: dw Overworld_Sprites_Screen42 ; 42 - Dark Lumberjacks\n #_09CAA7: dw Overworld_Sprites_Screen43 ; 43 - West Dark Death Mountain\n #_09CAA9: dw Overworld_Sprites_Screen45 ; 44 - West Dark Death Mountain\n #_09CAAB: dw Overworld_Sprites_Screen45 ; 45 - East Dark Death Mountain\n #_09CAAD: dw Overworld_Sprites_EMPTY ; 46 - East Dark Death Mountain\n #_09CAAF: dw Overworld_Sprites_Screen47 ; 47 - Turtle Rock\n #_09CAB1: dw Overworld_Sprites_EMPTY ; 48 - Skull Woods\n #_09CAB3: dw Overworld_Sprites_EMPTY ; 49 - Skull Woods\n #_09CAB5: dw Overworld_Sprites_Screen4A ; 4A - Bumper Ledge\n #_09CAB7: dw Overworld_Sprites_EMPTY ; 4B - West Dark Death Mountain\n #_09CAB9: dw Overworld_Sprites_EMPTY ; 4C - West Dark Death Mountain\n #_09CABB: dw Overworld_Sprites_EMPTY ; 4D - East Dark Death Mountain\n #_09CABD: dw Overworld_Sprites_EMPTY ; 4E - East Dark Death Mountain\n #_09CABF: dw Overworld_Sprites_Screen4F ; 4F - Lake of Bad Omens\n #_09CAC1: dw Overworld_Sprites_Screen50 ; 50 - Skull Woods Alcove\n #_09CAC3: dw Overworld_Sprites_Screen51 ; 51 - North of Outcasts\n #_09CAC5: dw Overworld_Sprites_Screen52 ; 52 - Dark Northwest Pond\n #_09CAC7: dw Overworld_Sprites_Screen53 ; 53 - Dark Sanctuary\n #_09CAC9: dw Overworld_Sprites_Screen54 ; 54 - Dark Graveyard\n #_09CACB: dw Overworld_Sprites_Screen55 ; 55 - Dark Hylia River Bend\n #_09CACD: dw Overworld_Sprites_Screen56 ; 56 - Dark Northeast Shop\n #_09CACF: dw Overworld_Sprites_Screen57 ; 57 - Dark Octorok Pit\n #_09CAD1: dw Overworld_Sprites_Screen58 ; 58 - Village of Outcasts\n #_09CAD3: dw Overworld_Sprites_EMPTY ; 59 - Village of Outcasts\n #_09CAD5: dw Overworld_Sprites_Screen5A ; 5A - Outcasts Orchard\n #_09CAD7: dw Overworld_Sprites_Screen5B ; 5B - Pyramid of Power\n #_09CAD9: dw Overworld_Sprites_EMPTY ; 5C - Pyramid of Power\n #_09CADB: dw Overworld_Sprites_Screen5D ; 5D - Dark Hylia River Peninsula\n #_09CADD: dw Overworld_Sprites_Screen5E ; 5E - Palace of Darkness Maze\n #_09CADF: dw Overworld_Sprites_EMPTY ; 5F - Palace of Darkness Maze\n #_09CAE1: dw Overworld_Sprites_EMPTY ; 60 - Village of Outcasts\n #_09CAE3: dw Overworld_Sprites_EMPTY ; 61 - Village of Outcasts\n #_09CAE5: dw Overworld_Sprites_Screen62 ; 62 - Stake Puzzle\n #_09CAE7: dw Overworld_Sprites_EMPTY ; 63 - Pyramid of Power\n #_09CAE9: dw Overworld_Sprites_EMPTY ; 64 - Pyramid of Power\n #_09CAEB: dw Overworld_Sprites_Screen65 ; 65 - Boulder Field\n #_09CAED: dw Overworld_Sprites_EMPTY ; 66 - Palace of Darkness Maze\n #_09CAEF: dw Overworld_Sprites_EMPTY ; 67 - Palace of Darkness Maze\n #_09CAF1: dw Overworld_Sprites_Screen68 ; 68 - Digging Game\n #_09CAF3: dw Overworld_Sprites_Screen69 ; 69 - South of Outcasts\n #_09CAF5: dw Overworld_Sprites_Screen6A ; 6A - Stumpy Grove\n #_09CAF7: dw Overworld_Sprites_Screen6B ; 6B - West of Bomb Shoppe\n #_09CAF9: dw Overworld_Sprites_Screen6C ; 6C - Bomb Shoppe\n #_09CAFB: dw Overworld_Sprites_Screen6D ; 6D - Hammer Bridge\n #_09CAFD: dw Overworld_Sprites_Screen6E ; 6E - Dark Lake Hylia River Bend\n #_09CAFF: dw Overworld_Sprites_Screen6F ; 6F - East Dark World Portalway\n #_09CB01: dw Overworld_Sprites_Screen70 ; 70 - Misery Mire\n #_09CB03: dw Overworld_Sprites_Screen72 ; 71 - Misery Mire\n #_09CB05: dw Overworld_Sprites_Screen72 ; 72 - Stumpy Grove Entrance\n #_09CB07: dw Overworld_Sprites_Screen73 ; 73 - Swamplands Portalway\n #_09CB09: dw Overworld_Sprites_Screen74 ; 74 - Swamplands Totems\n #_09CB0B: dw Overworld_Sprites_Screen75 ; 75 - Dark Lake Hylia\n #_09CB0D: dw Overworld_Sprites_Screen77 ; 76 - Dark Lake Hylia\n #_09CB0F: dw Overworld_Sprites_Screen77 ; 77 - Dark Lake Hylia River End\n #_09CB11: dw Overworld_Sprites_EMPTY ; 78 - Misery Mire\n #_09CB13: dw Overworld_Sprites_EMPTY ; 79 - Misery Mire\n #_09CB15: dw Overworld_Sprites_Screen7A ; 7A - West of Swamplands\n #_09CB17: dw Overworld_Sprites_Screen7B ; 7B - Swamplands Palace Entrance\n #_09CB19: dw Overworld_Sprites_Screen7C ; 7C - Swamplands Ravine\n #_09CB1B: dw Overworld_Sprites_EMPTY ; 7D - Dark Lake Hylia\n #_09CB1D: dw Overworld_Sprites_EMPTY ; 7E - Dark Lake Hylia\n #_09CB1F: dw Overworld_Sprites_Screen7F ; 7F - Dark Lake Hylia Waterfall\n #_09CB21: dw Overworld_Sprites_Screen80 ; 80 - Master Sword Pedestal\n #_09CB23: dw Overworld_Sprites_Screen81 ; 81 - Zora's Domain\n #_09CB25: dw Overworld_Sprites_EMPTY ;\n #_09CB27: dw Overworld_Sprites_EMPTY ;\n #_09CB29: dw Overworld_Sprites_EMPTY ;\n #_09CB2B: dw Overworld_Sprites_EMPTY ;\n #_09CB2D: dw Overworld_Sprites_EMPTY ;\n #_09CB2F: dw Overworld_Sprites_EMPTY ;\n #_09CB31: dw Overworld_Sprites_EMPTY ;\n #_09CB33: dw Overworld_Sprites_EMPTY ;\n #_09CB35: dw Overworld_Sprites_EMPTY ;\n #_09CB37: dw Overworld_Sprites_EMPTY ;\n #_09CB39: dw Overworld_Sprites_EMPTY ;\n #_09CB3B: dw Overworld_Sprites_EMPTY ;\n #_09CB3D: dw Overworld_Sprites_EMPTY ;\n #_09CB3F: dw Overworld_Sprites_EMPTY ;\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_EMPTY", + "code": "Overworld_Sprites_EMPTY:\n #_09CB41: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1B_0", + "code": "Overworld_Sprites_Screen1B_0:\n #_09CB42: db $06, $1F, $40 ; SPRITE 40 | xy: { 0x1F0, 0x060 }\n #_09CB45: db $12, $01, $3F ; SPRITE 3F | xy: { 0x010, 0x120 }\n #_09CB48: db $14, $01, $3F ; SPRITE 3F | xy: { 0x010, 0x140 }\n #_09CB4B: db $13, $1F, $42 ; SPRITE 42 | xy: { 0x1F0, 0x130 }\n #_09CB4E: db $1A, $1F, $4B ; SPRITE 4B | xy: { 0x1F0, 0x1A0 }\n #_09CB51: db $1A, $20, $4B ; SPRITE 4B | xy: { 0x200, 0x1A0 }\n #_09CB54: db $25, $2D, $3F ; SPRITE 3F | xy: { 0x2D0, 0x250 }\n #_09CB57: db $29, $20, $3F ; SPRITE 3F | xy: { 0x200, 0x290 }\n #_09CB5A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1D_0", + "code": "Overworld_Sprites_Screen1D_0:\n #_09CB5B: db $06, $0B, $AC ; SPRITE AC | xy: { 0x0B0, 0x060 }\n #_09CB5E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2B_0", + "code": "Overworld_Sprites_Screen2B_0:\n #_09CB5F: db $1E, $09, $3F ; SPRITE 3F | xy: { 0x090, 0x1E0 }\n #_09CB62: db $1E, $0B, $3F ; SPRITE 3F | xy: { 0x0B0, 0x1E0 }\n #_09CB65: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2C_0", + "code": "Overworld_Sprites_Screen2C_0:\n #_09CB66: db $18, $1E, $3F ; SPRITE 3F | xy: { 0x1E0, 0x180 }\n #_09CB69: db $1A, $1E, $3F ; SPRITE 3F | xy: { 0x1E0, 0x1A0 }\n #_09CB6C: db $1E, $0D, $3F ; SPRITE 3F | xy: { 0x0D0, 0x1E0 }\n #_09CB6F: db $1E, $0F, $3F ; SPRITE 3F | xy: { 0x0F0, 0x1E0 }\n #_09CB72: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen32_0", + "code": "Overworld_Sprites_Screen32_0:\n #_09CB73: db $09, $1A, $DC ; SPRITE DC | xy: { 0x1A0, 0x090 }\n #_09CB76: db $12, $18, $D8 ; SPRITE D8 | xy: { 0x180, 0x120 }\n #_09CB79: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen40", + "code": "Overworld_Sprites_Screen40:\n #_09CB7A: db $07, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x070 }\n #_09CB7D: db $11, $12, $22 ; SPRITE 22 | xy: { 0x120, 0x110 }\n #_09CB80: db $1E, $0A, $22 ; SPRITE 22 | xy: { 0x0A0, 0x1E0 }\n #_09CB83: db $09, $2F, $22 ; SPRITE 22 | xy: { 0x2F0, 0x090 }\n #_09CB86: db $0A, $31, $0E ; SPRITE 0E | xy: { 0x310, 0x0A0 }\n #_09CB89: db $0B, $33, $22 ; SPRITE 22 | xy: { 0x330, 0x0B0 }\n #_09CB8C: db $14, $29, $22 ; SPRITE 22 | xy: { 0x290, 0x140 }\n #_09CB8F: db $16, $23, $22 ; SPRITE 22 | xy: { 0x230, 0x160 }\n #_09CB92: db $17, $39, $AA ; SPRITE AA | xy: { 0x390, 0x170 }\n #_09CB95: db $21, $0A, $22 ; SPRITE 22 | xy: { 0x0A0, 0x210 }\n #_09CB98: db $25, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x250 }\n #_09CB9B: db $28, $0B, $AA ; SPRITE AA | xy: { 0x0B0, 0x280 }\n #_09CB9E: db $30, $1E, $22 ; SPRITE 22 | xy: { 0x1E0, 0x300 }\n #_09CBA1: db $38, $0E, $22 ; SPRITE 22 | xy: { 0x0E0, 0x380 }\n #_09CBA4: db $38, $11, $22 ; SPRITE 22 | xy: { 0x110, 0x380 }\n #_09CBA7: db $39, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x390 }\n #_09CBAA: db $21, $2D, $22 ; SPRITE 22 | xy: { 0x2D0, 0x210 }\n #_09CBAD: db $28, $32, $22 ; SPRITE 22 | xy: { 0x320, 0x280 }\n #_09CBB0: db $32, $37, $22 ; SPRITE 22 | xy: { 0x370, 0x320 }\n #_09CBB3: db $37, $28, $AA ; SPRITE AA | xy: { 0x280, 0x370 }\n #_09CBB6: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen42", + "code": "Overworld_Sprites_Screen42:\n #_09CBB7: db $11, $0C, $0E ; SPRITE 0E | xy: { 0x0C0, 0x110 }\n #_09CBBA: db $13, $0C, $0E ; SPRITE 0E | xy: { 0x0C0, 0x130 }\n #_09CBBD: db $16, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x160 }\n #_09CBC0: db $19, $0E, $12 ; SPRITE 12 | xy: { 0x0E0, 0x190 }\n #_09CBC3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen43", + "code": "Overworld_Sprites_Screen43:\n #_09CBC4: db $0C, $2F, $37 ; SPRITE 37 | xy: { 0x2F0, 0x0C0 }\n #_09CBC7: db $18, $20, $B9 ; SPRITE B9 | xy: { 0x200, 0x180 }\n #_09CBCA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen45", + "code": "Overworld_Sprites_Screen45:\n #_09CBCB: db $0C, $06, $D0 ; SPRITE D0 | xy: { 0x060, 0x0C0 }\n #_09CBCE: db $0E, $1D, $D0 ; SPRITE D0 | xy: { 0x1D0, 0x0E0 }\n #_09CBD1: db $0B, $20, $D0 ; SPRITE D0 | xy: { 0x200, 0x0B0 }\n #_09CBD4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen47", + "code": "Overworld_Sprites_Screen47:\n #_09CBD5: db $14, $16, $33 ; SPRITE 33 | xy: { 0x160, 0x140 }\n #_09CBD8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen4A", + "code": "Overworld_Sprites_Screen4A:\n #_09CBD9: db $06, $0E, $33 ; SPRITE 33 | xy: { 0x0E0, 0x060 }\n #_09CBDC: db $08, $18, $EB ; SPRITE EB | xy: { 0x180, 0x080 }\n #_09CBDF: db $0F, $0B, $12 ; SPRITE 12 | xy: { 0x0B0, 0x0F0 }\n #_09CBE2: db $10, $08, $12 ; SPRITE 12 | xy: { 0x080, 0x100 }\n #_09CBE5: db $13, $16, $12 ; SPRITE 12 | xy: { 0x160, 0x130 }\n #_09CBE8: db $13, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x130 }\n #_09CBEB: db $14, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x140 }\n #_09CBEE: db $18, $0E, $22 ; SPRITE 22 | xy: { 0x0E0, 0x180 }\n #_09CBF1: db $1A, $14, $D3 ; SPRITE D3 | xy: { 0x140, 0x1A0 }\n #_09CBF4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen4F", + "code": "Overworld_Sprites_Screen4F:\n #_09CBF5: db $08, $19, $55 ; SPRITE 55 | xy: { 0x190, 0x080 }\n #_09CBF8: db $0B, $04, $C0 ; SPRITE C0 | xy: { 0x040, 0x0B0 }\n #_09CBFB: db $0D, $18, $D3 ; SPRITE D3 | xy: { 0x180, 0x0D0 }\n #_09CBFE: db $11, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x110 }\n #_09CC01: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen50", + "code": "Overworld_Sprites_Screen50:\n #_09CC02: db $0B, $16, $19 ; SPRITE 19 | xy: { 0x160, 0x0B0 }\n #_09CC05: db $0C, $05, $12 ; SPRITE 12 | xy: { 0x050, 0x0C0 }\n #_09CC08: db $0E, $08, $25 ; SPRITE 25 | xy: { 0x080, 0x0E0 }\n #_09CC0B: db $13, $19, $0B ; SPRITE 0B | xy: { 0x190, 0x130 }\n #_09CC0E: db $18, $08, $12 ; SPRITE 12 | xy: { 0x080, 0x180 }\n #_09CC11: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen51", + "code": "Overworld_Sprites_Screen51:\n #_09CC12: db $0E, $17, $45 ; SPRITE 45 | xy: { 0x170, 0x0E0 }\n #_09CC15: db $10, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x100 }\n #_09CC18: db $10, $09, $E3 ; SPRITE E3 | xy: { 0x090, 0x100 }\n #_09CC1B: db $15, $1C, $D3 ; SPRITE D3 | xy: { 0x1C0, 0x150 }\n #_09CC1E: db $16, $14, $12 ; SPRITE 12 | xy: { 0x140, 0x160 }\n #_09CC21: db $17, $0E, $12 ; SPRITE 12 | xy: { 0x0E0, 0x170 }\n #_09CC24: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen52", + "code": "Overworld_Sprites_Screen52:\n #_09CC25: db $09, $12, $D3 ; SPRITE D3 | xy: { 0x120, 0x090 }\n #_09CC28: db $0D, $15, $12 ; SPRITE 12 | xy: { 0x150, 0x0D0 }\n #_09CC2B: db $10, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x100 }\n #_09CC2E: db $17, $14, $41 ; SPRITE 41 | xy: { 0x140, 0x170 }\n #_09CC31: db $18, $0E, $12 ; SPRITE 12 | xy: { 0x0E0, 0x180 }\n #_09CC34: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen53", + "code": "Overworld_Sprites_Screen53:\n #_09CC35: db $0B, $06, $D3 ; SPRITE D3 | xy: { 0x060, 0x0B0 }\n #_09CC38: db $0C, $15, $11 ; SPRITE 11 | xy: { 0x150, 0x0C0 }\n #_09CC3B: db $0D, $08, $22 ; SPRITE 22 | xy: { 0x080, 0x0D0 }\n #_09CC3E: db $15, $0D, $12 ; SPRITE 12 | xy: { 0x0D0, 0x150 }\n #_09CC41: db $18, $16, $0E ; SPRITE 0E | xy: { 0x160, 0x180 }\n #_09CC44: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen54", + "code": "Overworld_Sprites_Screen54:\n #_09CC45: db $0D, $14, $22 ; SPRITE 22 | xy: { 0x140, 0x0D0 }\n #_09CC48: db $0B, $05, $DC ; SPRITE DC | xy: { 0x050, 0x0B0 }\n #_09CC4B: db $0B, $19, $DB ; SPRITE DB | xy: { 0x190, 0x0B0 }\n #_09CC4E: db $0F, $07, $22 ; SPRITE 22 | xy: { 0x070, 0x0F0 }\n #_09CC51: db $0E, $0F, $E3 ; SPRITE E3 | xy: { 0x0F0, 0x0E0 }\n #_09CC54: db $10, $19, $22 ; SPRITE 22 | xy: { 0x190, 0x100 }\n #_09CC57: db $14, $0D, $22 ; SPRITE 22 | xy: { 0x0D0, 0x140 }\n #_09CC5A: db $19, $11, $11 ; SPRITE 11 | xy: { 0x110, 0x190 }\n #_09CC5D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen55", + "code": "Overworld_Sprites_Screen55:\n #_09CC5E: db $09, $11, $BA ; SPRITE BA | xy: { 0x110, 0x090 }\n #_09CC61: db $0E, $16, $11 ; SPRITE 11 | xy: { 0x160, 0x0E0 }\n #_09CC64: db $0E, $18, $D3 ; SPRITE D3 | xy: { 0x180, 0x0E0 }\n #_09CC67: db $0F, $1B, $DA ; SPRITE DA | xy: { 0x1B0, 0x0F0 }\n #_09CC6A: db $17, $07, $11 ; SPRITE 11 | xy: { 0x070, 0x170 }\n #_09CC6D: db $1A, $0A, $79 ; SPRITE 79 | xy: { 0x0A0, 0x1A0 }\n #_09CC70: db $1B, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x1B0 }\n #_09CC73: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen56", + "code": "Overworld_Sprites_Screen56:\n #_09CC74: db $06, $0A, $55 ; SPRITE 55 | xy: { 0x0A0, 0x060 }\n #_09CC77: db $0A, $13, $55 ; SPRITE 55 | xy: { 0x130, 0x0A0 }\n #_09CC7A: db $0E, $04, $79 ; SPRITE 79 | xy: { 0x040, 0x0E0 }\n #_09CC7D: db $17, $11, $22 ; SPRITE 22 | xy: { 0x110, 0x170 }\n #_09CC80: db $1A, $05, $22 ; SPRITE 22 | xy: { 0x050, 0x1A0 }\n #_09CC83: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen57", + "code": "Overworld_Sprites_Screen57:\n #_09CC84: db $04, $0C, $55 ; SPRITE 55 | xy: { 0x0C0, 0x040 }\n #_09CC87: db $08, $16, $08 ; SPRITE 08 | xy: { 0x160, 0x080 }\n #_09CC8A: db $0A, $18, $08 ; SPRITE 08 | xy: { 0x180, 0x0A0 }\n #_09CC8D: db $0E, $0E, $08 ; SPRITE 08 | xy: { 0x0E0, 0x0E0 }\n #_09CC90: db $10, $0E, $D3 ; SPRITE D3 | xy: { 0x0E0, 0x100 }\n #_09CC93: db $1A, $0E, $08 ; SPRITE 08 | xy: { 0x0E0, 0x1A0 }\n #_09CC96: db $1B, $0D, $08 ; SPRITE 08 | xy: { 0x0D0, 0x1B0 }\n #_09CC99: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen58", + "code": "Overworld_Sprites_Screen58:\n #_09CC9A: db $06, $13, $12 ; SPRITE 12 | xy: { 0x130, 0x060 }\n #_09CC9D: db $0C, $18, $25 ; SPRITE 25 | xy: { 0x180, 0x0C0 }\n #_09CCA0: db $1C, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x1C0 }\n #_09CCA3: db $0A, $35, $12 ; SPRITE 12 | xy: { 0x350, 0x0A0 }\n #_09CCA6: db $0C, $2B, $19 ; SPRITE 19 | xy: { 0x2B0, 0x0C0 }\n #_09CCA9: db $17, $2E, $C4 ; SPRITE C4 | xy: { 0x2E0, 0x170 }\n #_09CCAC: db $1C, $20, $14 ; SPRITE 14 | xy: { 0x200, 0x1C0 }\n #_09CCAF: db $25, $18, $19 ; SPRITE 19 | xy: { 0x180, 0x250 }\n #_09CCB2: db $27, $0D, $C4 ; SPRITE C4 | xy: { 0x0D0, 0x270 }\n #_09CCB5: db $28, $1D, $19 ; SPRITE 19 | xy: { 0x1D0, 0x280 }\n #_09CCB8: db $2E, $12, $12 ; SPRITE 12 | xy: { 0x120, 0x2E0 }\n #_09CCBB: db $34, $16, $0B ; SPRITE 0B | xy: { 0x160, 0x340 }\n #_09CCBE: db $37, $15, $0B ; SPRITE 0B | xy: { 0x150, 0x370 }\n #_09CCC1: db $27, $28, $0B ; SPRITE 0B | xy: { 0x280, 0x270 }\n #_09CCC4: db $2F, $33, $41 ; SPRITE 41 | xy: { 0x330, 0x2F0 }\n #_09CCC7: db $34, $2C, $19 ; SPRITE 19 | xy: { 0x2C0, 0x340 }\n #_09CCCA: db $35, $37, $25 ; SPRITE 25 | xy: { 0x370, 0x350 }\n #_09CCCD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen5A", + "code": "Overworld_Sprites_Screen5A:\n #_09CCCE: db $08, $0F, $12 ; SPRITE 12 | xy: { 0x0F0, 0x080 }\n #_09CCD1: db $08, $12, $25 ; SPRITE 25 | xy: { 0x120, 0x080 }\n #_09CCD4: db $0D, $12, $D3 ; SPRITE D3 | xy: { 0x120, 0x0D0 }\n #_09CCD7: db $0C, $15, $12 ; SPRITE 12 | xy: { 0x150, 0x0C0 }\n #_09CCDA: db $0F, $0B, $11 ; SPRITE 11 | xy: { 0x0B0, 0x0F0 }\n #_09CCDD: db $19, $0E, $12 ; SPRITE 12 | xy: { 0x0E0, 0x190 }\n #_09CCE0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen5B", + "code": "Overworld_Sprites_Screen5B:\n #_09CCE1: db $17, $15, $22 ; SPRITE 22 | xy: { 0x150, 0x170 }\n #_09CCE4: db $12, $34, $EB ; SPRITE EB | xy: { 0x340, 0x120 }\n #_09CCE7: db $24, $13, $33 ; SPRITE 33 | xy: { 0x130, 0x240 }\n #_09CCEA: db $27, $0F, $12 ; SPRITE 12 | xy: { 0x0F0, 0x270 }\n #_09CCED: db $2A, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x2A0 }\n #_09CCF0: db $2A, $0C, $12 ; SPRITE 12 | xy: { 0x0C0, 0x2A0 }\n #_09CCF3: db $2C, $1E, $11 ; SPRITE 11 | xy: { 0x1E0, 0x2C0 }\n #_09CCF6: db $25, $34, $0E ; SPRITE 0E | xy: { 0x340, 0x250 }\n #_09CCF9: db $27, $32, $12 ; SPRITE 12 | xy: { 0x320, 0x270 }\n #_09CCFC: db $29, $30, $12 ; SPRITE 12 | xy: { 0x300, 0x290 }\n #_09CCFF: db $2C, $21, $11 ; SPRITE 11 | xy: { 0x210, 0x2C0 }\n #_09CD02: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen5D", + "code": "Overworld_Sprites_Screen5D:\n #_09CD03: db $08, $0B, $25 ; SPRITE 25 | xy: { 0x0B0, 0x080 }\n #_09CD06: db $09, $07, $11 ; SPRITE 11 | xy: { 0x070, 0x090 }\n #_09CD09: db $0B, $06, $0E ; SPRITE 0E | xy: { 0x060, 0x0B0 }\n #_09CD0C: db $0B, $18, $12 ; SPRITE 12 | xy: { 0x180, 0x0B0 }\n #_09CD0F: db $0E, $17, $D3 ; SPRITE D3 | xy: { 0x170, 0x0E0 }\n #_09CD12: db $10, $1A, $12 ; SPRITE 12 | xy: { 0x1A0, 0x100 }\n #_09CD15: db $11, $08, $41 ; SPRITE 41 | xy: { 0x080, 0x110 }\n #_09CD18: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen5E", + "code": "Overworld_Sprites_Screen5E:\n #_09CD19: db $04, $0D, $22 ; SPRITE 22 | xy: { 0x0D0, 0x040 }\n #_09CD1C: db $11, $03, $22 ; SPRITE 22 | xy: { 0x030, 0x110 }\n #_09CD1F: db $11, $15, $B6 ; SPRITE B6 | xy: { 0x150, 0x110 }\n #_09CD22: db $1A, $12, $22 ; SPRITE 22 | xy: { 0x120, 0x1A0 }\n #_09CD25: db $09, $27, $22 ; SPRITE 22 | xy: { 0x270, 0x090 }\n #_09CD28: db $10, $2F, $22 ; SPRITE 22 | xy: { 0x2F0, 0x100 }\n #_09CD2B: db $15, $25, $12 ; SPRITE 12 | xy: { 0x250, 0x150 }\n #_09CD2E: db $17, $26, $11 ; SPRITE 11 | xy: { 0x260, 0x170 }\n #_09CD31: db $18, $35, $22 ; SPRITE 22 | xy: { 0x350, 0x180 }\n #_09CD34: db $1E, $2A, $22 ; SPRITE 22 | xy: { 0x2A0, 0x1E0 }\n #_09CD37: db $26, $0A, $12 ; SPRITE 12 | xy: { 0x0A0, 0x260 }\n #_09CD3A: db $2B, $0C, $12 ; SPRITE 12 | xy: { 0x0C0, 0x2B0 }\n #_09CD3D: db $35, $07, $22 ; SPRITE 22 | xy: { 0x070, 0x350 }\n #_09CD40: db $37, $16, $11 ; SPRITE 11 | xy: { 0x160, 0x370 }\n #_09CD43: db $38, $09, $0E ; SPRITE 0E | xy: { 0x090, 0x380 }\n #_09CD46: db $24, $32, $12 ; SPRITE 12 | xy: { 0x320, 0x240 }\n #_09CD49: db $28, $35, $0E ; SPRITE 0E | xy: { 0x350, 0x280 }\n #_09CD4C: db $30, $24, $22 ; SPRITE 22 | xy: { 0x240, 0x300 }\n #_09CD4F: db $30, $30, $E3 ; SPRITE E3 | xy: { 0x300, 0x300 }\n #_09CD52: db $36, $35, $11 ; SPRITE 11 | xy: { 0x350, 0x360 }\n #_09CD55: db $37, $29, $00 ; SPRITE 00 | xy: { 0x290, 0x370 }\n #_09CD58: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen62", + "code": "Overworld_Sprites_Screen62:\n #_09CD59: db $05, $0D, $B4 ; SPRITE B4 | xy: { 0x0D0, 0x050 }\n #_09CD5C: db $11, $13, $0B ; SPRITE 0B | xy: { 0x130, 0x110 }\n #_09CD5F: db $13, $11, $0B ; SPRITE 0B | xy: { 0x110, 0x130 }\n #_09CD62: db $15, $15, $0B ; SPRITE 0B | xy: { 0x150, 0x150 }\n #_09CD65: db $16, $09, $0B ; SPRITE 0B | xy: { 0x090, 0x160 }\n #_09CD68: db $17, $11, $0B ; SPRITE 0B | xy: { 0x110, 0x170 }\n #_09CD6B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen65", + "code": "Overworld_Sprites_Screen65:\n #_09CD6C: db $07, $13, $12 ; SPRITE 12 | xy: { 0x130, 0x070 }\n #_09CD6F: db $0A, $0F, $D3 ; SPRITE D3 | xy: { 0x0F0, 0x0A0 }\n #_09CD72: db $0C, $0E, $12 ; SPRITE 12 | xy: { 0x0E0, 0x0C0 }\n #_09CD75: db $11, $05, $11 ; SPRITE 11 | xy: { 0x050, 0x110 }\n #_09CD78: db $16, $0A, $12 ; SPRITE 12 | xy: { 0x0A0, 0x160 }\n #_09CD7B: db $16, $13, $12 ; SPRITE 12 | xy: { 0x130, 0x160 }\n #_09CD7E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen68", + "code": "Overworld_Sprites_Screen68:\n #_09CD7F: db $11, $0E, $D5 ; SPRITE D5 | xy: { 0x0E0, 0x110 }\n #_09CD82: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen69", + "code": "Overworld_Sprites_Screen69:\n #_09CD83: db $09, $06, $1A ; SPRITE 1A | xy: { 0x060, 0x090 }\n #_09CD86: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6A", + "code": "Overworld_Sprites_Screen6A:\n #_09CD87: db $0F, $0E, $2E ; SPRITE 2E | xy: { 0x0E0, 0x0F0 }\n #_09CD8A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6B", + "code": "Overworld_Sprites_Screen6B:\n #_09CD8B: db $08, $16, $25 ; SPRITE 25 | xy: { 0x160, 0x080 }\n #_09CD8E: db $09, $08, $22 ; SPRITE 22 | xy: { 0x080, 0x090 }\n #_09CD91: db $0F, $17, $25 ; SPRITE 25 | xy: { 0x170, 0x0F0 }\n #_09CD94: db $16, $13, $12 ; SPRITE 12 | xy: { 0x130, 0x160 }\n #_09CD97: db $19, $0F, $12 ; SPRITE 12 | xy: { 0x0F0, 0x190 }\n #_09CD9A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6C", + "code": "Overworld_Sprites_Screen6C:\n #_09CD9B: db $06, $15, $0E ; SPRITE 0E | xy: { 0x150, 0x060 }\n #_09CD9E: db $0A, $15, $12 ; SPRITE 12 | xy: { 0x150, 0x0A0 }\n #_09CDA1: db $0D, $14, $12 ; SPRITE 12 | xy: { 0x140, 0x0D0 }\n #_09CDA4: db $16, $14, $11 ; SPRITE 11 | xy: { 0x140, 0x160 }\n #_09CDA7: db $19, $09, $22 ; SPRITE 22 | xy: { 0x090, 0x190 }\n #_09CDAA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6D", + "code": "Overworld_Sprites_Screen6D:\n #_09CDAB: db $05, $0F, $22 ; SPRITE 22 | xy: { 0x0F0, 0x050 }\n #_09CDAE: db $07, $0D, $11 ; SPRITE 11 | xy: { 0x0D0, 0x070 }\n #_09CDB1: db $08, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x080 }\n #_09CDB4: db $0A, $10, $41 ; SPRITE 41 | xy: { 0x100, 0x0A0 }\n #_09CDB7: db $1A, $10, $D3 ; SPRITE D3 | xy: { 0x100, 0x1A0 }\n #_09CDBA: db $1B, $13, $D3 ; SPRITE D3 | xy: { 0x130, 0x1B0 }\n #_09CDBD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6E", + "code": "Overworld_Sprites_Screen6E:\n #_09CDBE: db $08, $0C, $DA ; SPRITE DA | xy: { 0x0C0, 0x080 }\n #_09CDC1: db $09, $10, $79 ; SPRITE 79 | xy: { 0x100, 0x090 }\n #_09CDC4: db $0A, $14, $AC ; SPRITE AC | xy: { 0x140, 0x0A0 }\n #_09CDC7: db $0B, $08, $41 ; SPRITE 41 | xy: { 0x080, 0x0B0 }\n #_09CDCA: db $0E, $10, $41 ; SPRITE 41 | xy: { 0x100, 0x0E0 }\n #_09CDCD: db $18, $1A, $22 ; SPRITE 22 | xy: { 0x1A0, 0x180 }\n #_09CDD0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen6F", + "code": "Overworld_Sprites_Screen6F:\n #_09CDD1: db $08, $0D, $0E ; SPRITE 0E | xy: { 0x0D0, 0x080 }\n #_09CDD4: db $08, $0F, $0E ; SPRITE 0E | xy: { 0x0F0, 0x080 }\n #_09CDD7: db $0B, $0E, $0E ; SPRITE 0E | xy: { 0x0E0, 0x0B0 }\n #_09CDDA: db $0C, $17, $00 ; SPRITE 00 | xy: { 0x170, 0x0C0 }\n #_09CDDD: db $17, $09, $D3 ; SPRITE D3 | xy: { 0x090, 0x170 }\n #_09CDE0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen70", + "code": "Overworld_Sprites_Screen70:\n #_09CDE1: db $1B, $21, $00 ; SPRITE 00 | xy: { 0x210, 0x1B0 }\n #_09CDE4: db $1C, $2B, $55 ; SPRITE 55 | xy: { 0x2B0, 0x1C0 }\n #_09CDE7: db $21, $12, $55 ; SPRITE 55 | xy: { 0x120, 0x210 }\n #_09CDEA: db $24, $1B, $CF ; SPRITE CF | xy: { 0x1B0, 0x240 }\n #_09CDED: db $27, $10, $CF ; SPRITE CF | xy: { 0x100, 0x270 }\n #_09CDF0: db $28, $07, $00 ; SPRITE 00 | xy: { 0x070, 0x280 }\n #_09CDF3: db $2B, $16, $55 ; SPRITE 55 | xy: { 0x160, 0x2B0 }\n #_09CDF6: db $2E, $1E, $55 ; SPRITE 55 | xy: { 0x1E0, 0x2E0 }\n #_09CDF9: db $33, $17, $CF ; SPRITE CF | xy: { 0x170, 0x330 }\n #_09CDFC: db $38, $11, $55 ; SPRITE 55 | xy: { 0x110, 0x380 }\n #_09CDFF: db $2B, $23, $55 ; SPRITE 55 | xy: { 0x230, 0x2B0 }\n #_09CE02: db $2C, $27, $CF ; SPRITE CF | xy: { 0x270, 0x2C0 }\n #_09CE05: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen72", + "code": "Overworld_Sprites_Screen72:\n #_09CE06: db $0B, $1B, $25 ; SPRITE 25 | xy: { 0x1B0, 0x0B0 }\n #_09CE09: db $0D, $10, $41 ; SPRITE 41 | xy: { 0x100, 0x0D0 }\n #_09CE0C: db $0E, $13, $41 ; SPRITE 41 | xy: { 0x130, 0x0E0 }\n #_09CE0F: db $14, $1A, $25 ; SPRITE 25 | xy: { 0x1A0, 0x140 }\n #_09CE12: db $17, $0B, $22 ; SPRITE 22 | xy: { 0x0B0, 0x170 }\n #_09CE15: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen73", + "code": "Overworld_Sprites_Screen73:\n #_09CE16: db $0C, $17, $AA ; SPRITE AA | xy: { 0x170, 0x0C0 }\n #_09CE19: db $0D, $09, $12 ; SPRITE 12 | xy: { 0x090, 0x0D0 }\n #_09CE1C: db $0E, $14, $A8 ; SPRITE A8 | xy: { 0x140, 0x0E0 }\n #_09CE1F: db $1A, $15, $A8 ; SPRITE A8 | xy: { 0x150, 0x1A0 }\n #_09CE22: db $1B, $1B, $A9 ; SPRITE A9 | xy: { 0x1B0, 0x1B0 }\n #_09CE25: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen74", + "code": "Overworld_Sprites_Screen74:\n #_09CE26: db $0D, $0B, $12 ; SPRITE 12 | xy: { 0x0B0, 0x0D0 }\n #_09CE29: db $0E, $17, $33 ; SPRITE 33 | xy: { 0x170, 0x0E0 }\n #_09CE2C: db $11, $10, $A8 ; SPRITE A8 | xy: { 0x100, 0x110 }\n #_09CE2F: db $11, $15, $12 ; SPRITE 12 | xy: { 0x150, 0x110 }\n #_09CE32: db $12, $0A, $AA ; SPRITE AA | xy: { 0x0A0, 0x120 }\n #_09CE35: db $14, $0E, $AC ; SPRITE AC | xy: { 0x0E0, 0x140 }\n #_09CE38: db $17, $11, $12 ; SPRITE 12 | xy: { 0x110, 0x170 }\n #_09CE3B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen75", + "code": "Overworld_Sprites_Screen75:\n #_09CE3C: db $05, $0A, $D3 ; SPRITE D3 | xy: { 0x0A0, 0x050 }\n #_09CE3F: db $07, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x070 }\n #_09CE42: db $09, $0B, $41 ; SPRITE 41 | xy: { 0x0B0, 0x090 }\n #_09CE45: db $13, $07, $08 ; SPRITE 08 | xy: { 0x070, 0x130 }\n #_09CE48: db $16, $18, $A8 ; SPRITE A8 | xy: { 0x180, 0x160 }\n #_09CE4B: db $17, $09, $AA ; SPRITE AA | xy: { 0x090, 0x170 }\n #_09CE4E: db $0C, $30, $55 ; SPRITE 55 | xy: { 0x300, 0x0C0 }\n #_09CE51: db $11, $29, $A9 ; SPRITE A9 | xy: { 0x290, 0x110 }\n #_09CE54: db $15, $36, $A8 ; SPRITE A8 | xy: { 0x360, 0x150 }\n #_09CE57: db $1F, $31, $AA ; SPRITE AA | xy: { 0x310, 0x1F0 }\n #_09CE5A: db $22, $1B, $55 ; SPRITE 55 | xy: { 0x1B0, 0x220 }\n #_09CE5D: db $28, $14, $A8 ; SPRITE A8 | xy: { 0x140, 0x280 }\n #_09CE60: db $2E, $16, $AA ; SPRITE AA | xy: { 0x160, 0x2E0 }\n #_09CE63: db $32, $19, $A8 ; SPRITE A8 | xy: { 0x190, 0x320 }\n #_09CE66: db $35, $0A, $A9 ; SPRITE A9 | xy: { 0x0A0, 0x350 }\n #_09CE69: db $39, $08, $22 ; SPRITE 22 | xy: { 0x080, 0x390 }\n #_09CE6C: db $39, $1B, $55 ; SPRITE 55 | xy: { 0x1B0, 0x390 }\n #_09CE6F: db $26, $2A, $AA ; SPRITE AA | xy: { 0x2A0, 0x260 }\n #_09CE72: db $28, $32, $A8 ; SPRITE A8 | xy: { 0x320, 0x280 }\n #_09CE75: db $2C, $2A, $55 ; SPRITE 55 | xy: { 0x2A0, 0x2C0 }\n #_09CE78: db $35, $32, $55 ; SPRITE 55 | xy: { 0x320, 0x350 }\n #_09CE7B: db $39, $37, $08 ; SPRITE 08 | xy: { 0x370, 0x390 }\n #_09CE7E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen77", + "code": "Overworld_Sprites_Screen77:\n #_09CE7F: db $08, $11, $08 ; SPRITE 08 | xy: { 0x110, 0x080 }\n #_09CE82: db $0A, $09, $D3 ; SPRITE D3 | xy: { 0x090, 0x0A0 }\n #_09CE85: db $0B, $0D, $A9 ; SPRITE A9 | xy: { 0x0D0, 0x0B0 }\n #_09CE88: db $11, $18, $08 ; SPRITE 08 | xy: { 0x180, 0x110 }\n #_09CE8B: db $12, $07, $55 ; SPRITE 55 | xy: { 0x070, 0x120 }\n #_09CE8E: db $19, $12, $55 ; SPRITE 55 | xy: { 0x120, 0x190 }\n #_09CE91: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen7A", + "code": "Overworld_Sprites_Screen7A:\n #_09CE92: db $07, $06, $11 ; SPRITE 11 | xy: { 0x060, 0x070 }\n #_09CE95: db $09, $16, $22 ; SPRITE 22 | xy: { 0x160, 0x090 }\n #_09CE98: db $0B, $14, $22 ; SPRITE 22 | xy: { 0x140, 0x0B0 }\n #_09CE9B: db $0B, $16, $22 ; SPRITE 22 | xy: { 0x160, 0x0B0 }\n #_09CE9E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen7B", + "code": "Overworld_Sprites_Screen7B:\n #_09CE9F: db $06, $12, $A9 ; SPRITE A9 | xy: { 0x120, 0x060 }\n #_09CEA2: db $0A, $16, $AA ; SPRITE AA | xy: { 0x160, 0x0A0 }\n #_09CEA5: db $0F, $0D, $12 ; SPRITE 12 | xy: { 0x0D0, 0x0F0 }\n #_09CEA8: db $10, $0A, $D3 ; SPRITE D3 | xy: { 0x0A0, 0x100 }\n #_09CEAB: db $14, $13, $12 ; SPRITE 12 | xy: { 0x130, 0x140 }\n #_09CEAE: db $18, $16, $22 ; SPRITE 22 | xy: { 0x160, 0x180 }\n #_09CEB1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen7C", + "code": "Overworld_Sprites_Screen7C:\n #_09CEB2: db $05, $03, $D3 ; SPRITE D3 | xy: { 0x030, 0x050 }\n #_09CEB5: db $06, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x060 }\n #_09CEB8: db $06, $0F, $33 ; SPRITE 33 | xy: { 0x0F0, 0x060 }\n #_09CEBB: db $11, $11, $11 ; SPRITE 11 | xy: { 0x110, 0x110 }\n #_09CEBE: db $15, $18, $22 ; SPRITE 22 | xy: { 0x180, 0x150 }\n #_09CEC1: db $19, $16, $22 ; SPRITE 22 | xy: { 0x160, 0x190 }\n #_09CEC4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen7F", + "code": "Overworld_Sprites_Screen7F:\n #_09CEC5: db $06, $10, $A8 ; SPRITE A8 | xy: { 0x100, 0x060 }\n #_09CEC8: db $06, $16, $08 ; SPRITE 08 | xy: { 0x160, 0x060 }\n #_09CECB: db $0C, $07, $BA ; SPRITE BA | xy: { 0x070, 0x0C0 }\n #_09CECE: db $0E, $07, $55 ; SPRITE 55 | xy: { 0x070, 0x0E0 }\n #_09CED1: db $13, $0D, $A8 ; SPRITE A8 | xy: { 0x0D0, 0x130 }\n #_09CED4: db $14, $16, $AA ; SPRITE AA | xy: { 0x160, 0x140 }\n #_09CED7: db $17, $0F, $08 ; SPRITE 08 | xy: { 0x0F0, 0x170 }\n #_09CEDA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen80", + "code": "Overworld_Sprites_Screen80:\n #_09CEDB: db $08, $07, $62 ; SPRITE 62 | xy: { 0x070, 0x080 }\n #_09CEDE: db $0A, $07, $B3 ; SPRITE B3 | xy: { 0x070, 0x0A0 }\n #_09CEE1: db $14, $0F, $5A ; SPRITE 5A | xy: { 0x0F0, 0x140 }\n #_09CEE4: db $16, $00, $59 ; SPRITE 59 | xy: { 0x000, 0x160 }\n #_09CEE7: db $18, $02, $5A ; SPRITE 5A | xy: { 0x020, 0x180 }\n #_09CEEA: db $1A, $0E, $59 ; SPRITE 59 | xy: { 0x0E0, 0x1A0 }\n #_09CEED: db $1B, $0F, $5A ; SPRITE 5A | xy: { 0x0F0, 0x1B0 }\n #_09CEF0: db $04, $16, $2B ; SPRITE 2B | xy: { 0x160, 0x040 }\n #_09CEF3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen81", + "code": "Overworld_Sprites_Screen81:\n #_09CEF4: db $26, $1B, $EB ; SPRITE EB | xy: { 0x1B0, 0x260 }\n #_09CEF7: db $06, $0A, $56 ; SPRITE 56 | xy: { 0x0A0, 0x060 }\n #_09CEFA: db $06, $1C, $56 ; SPRITE 56 | xy: { 0x1C0, 0x060 }\n #_09CEFD: db $07, $11, $55 ; SPRITE 55 | xy: { 0x110, 0x070 }\n #_09CF00: db $0A, $16, $56 ; SPRITE 56 | xy: { 0x160, 0x0A0 }\n #_09CF03: db $0A, $1A, $55 ; SPRITE 55 | xy: { 0x1A0, 0x0A0 }\n #_09CF06: db $0C, $09, $55 ; SPRITE 55 | xy: { 0x090, 0x0C0 }\n #_09CF09: db $0D, $12, $55 ; SPRITE 55 | xy: { 0x120, 0x0D0 }\n #_09CF0C: db $12, $1A, $56 ; SPRITE 56 | xy: { 0x1A0, 0x120 }\n #_09CF0F: db $13, $07, $56 ; SPRITE 56 | xy: { 0x070, 0x130 }\n #_09CF12: db $13, $14, $56 ; SPRITE 56 | xy: { 0x140, 0x130 }\n #_09CF15: db $18, $08, $56 ; SPRITE 56 | xy: { 0x080, 0x180 }\n #_09CF18: db $1C, $04, $56 ; SPRITE 56 | xy: { 0x040, 0x1C0 }\n #_09CF1B: db $04, $3B, $52 ; SPRITE 52 | xy: { 0x3B0, 0x040 }\n #_09CF1E: db $08, $27, $55 ; SPRITE 55 | xy: { 0x270, 0x080 }\n #_09CF21: db $08, $2D, $55 ; SPRITE 55 | xy: { 0x2D0, 0x080 }\n #_09CF24: db $0E, $22, $56 ; SPRITE 56 | xy: { 0x220, 0x0E0 }\n #_09CF27: db $0E, $2D, $55 ; SPRITE 55 | xy: { 0x2D0, 0x0E0 }\n #_09CF2A: db $14, $21, $55 ; SPRITE 55 | xy: { 0x210, 0x140 }\n #_09CF2D: db $20, $0D, $56 ; SPRITE 56 | xy: { 0x0D0, 0x200 }\n #_09CF30: db $31, $08, $56 ; SPRITE 56 | xy: { 0x080, 0x310 }\n #_09CF33: db $31, $14, $55 ; SPRITE 55 | xy: { 0x140, 0x310 }\n #_09CF36: db $33, $0C, $56 ; SPRITE 56 | xy: { 0x0C0, 0x330 }\n #_09CF39: db $35, $0E, $55 ; SPRITE 55 | xy: { 0x0E0, 0x350 }\n #_09CF3C: db $38, $08, $56 ; SPRITE 56 | xy: { 0x080, 0x380 }\n #_09CF3F: db $28, $3B, $56 ; SPRITE 56 | xy: { 0x3B0, 0x280 }\n #_09CF42: db $2B, $3A, $56 ; SPRITE 56 | xy: { 0x3A0, 0x2B0 }\n #_09CF45: db $35, $2D, $56 ; SPRITE 56 | xy: { 0x2D0, 0x350 }\n #_09CF48: db $36, $37, $56 ; SPRITE 56 | xy: { 0x370, 0x360 }\n #_09CF4B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen00_1", + "code": "Overworld_Sprites_Screen00_1:\n #_09CF4C: db $12, $07, $E8 ; SPRITE E8 | xy: { 0x070, 0x120 }\n #_09CF4F: db $0B, $12, $00 ; SPRITE 00 | xy: { 0x120, 0x0B0 }\n #_09CF52: db $15, $1E, $E7 ; SPRITE E7 | xy: { 0x1E0, 0x150 }\n #_09CF55: db $06, $28, $E8 ; SPRITE E8 | xy: { 0x280, 0x060 }\n #_09CF58: db $0A, $31, $0D ; SPRITE 0D | xy: { 0x310, 0x0A0 }\n #_09CF5B: db $0A, $2D, $00 ; SPRITE 00 | xy: { 0x2D0, 0x0A0 }\n #_09CF5E: db $10, $2A, $17 ; SPRITE 17 | xy: { 0x2A0, 0x100 }\n #_09CF61: db $15, $39, $E8 ; SPRITE E8 | xy: { 0x390, 0x150 }\n #_09CF64: db $22, $0E, $C4 ; SPRITE C4 | xy: { 0x0E0, 0x220 }\n #_09CF67: db $2D, $1E, $17 ; SPRITE 17 | xy: { 0x1E0, 0x2D0 }\n #_09CF6A: db $25, $29, $79 ; SPRITE 79 | xy: { 0x290, 0x250 }\n #_09CF6D: db $27, $2A, $33 ; SPRITE 33 | xy: { 0x2A0, 0x270 }\n #_09CF70: db $2D, $36, $00 ; SPRITE 00 | xy: { 0x360, 0x2D0 }\n #_09CF73: db $35, $25, $E8 ; SPRITE E8 | xy: { 0x250, 0x350 }\n #_09CF76: db $35, $29, $C4 ; SPRITE C4 | xy: { 0x290, 0x350 }\n #_09CF79: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen02_1", + "code": "Overworld_Sprites_Screen02_1:\n #_09CF7A: db $13, $04, $0D ; SPRITE 0D | xy: { 0x040, 0x130 }\n #_09CF7D: db $13, $0C, $2C ; SPRITE 2C | xy: { 0x0C0, 0x130 }\n #_09CF80: db $1A, $0D, $17 ; SPRITE 17 | xy: { 0x0D0, 0x1A0 }\n #_09CF83: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen03_1", + "code": "Overworld_Sprites_Screen03_1:\n #_09CF84: db $00, $00, $F4 ; OVERLORD 02 | xy: { 0x000, 0x000 }\n #_09CF87: db $04, $0B, $F2 ; SPRITE F2 | xy: { 0x0B0, 0x040 }\n #_09CF8A: db $0C, $27, $27 ; SPRITE 27 | xy: { 0x270, 0x0C0 }\n #_09CF8D: db $16, $22, $EB ; SPRITE EB | xy: { 0x220, 0x160 }\n #_09CF90: db $35, $0A, $27 ; SPRITE 27 | xy: { 0x0A0, 0x350 }\n #_09CF93: db $36, $06, $27 ; SPRITE 27 | xy: { 0x060, 0x360 }\n #_09CF96: db $3B, $0D, $27 ; SPRITE 27 | xy: { 0x0D0, 0x3B0 }\n #_09CF99: db $3B, $12, $F3 ; OVERLORD 01 | xy: { 0x120, 0x3B0 }\n #_09CF9C: db $2D, $2C, $27 ; SPRITE 27 | xy: { 0x2C0, 0x2D0 }\n #_09CF9F: db $33, $34, $27 ; SPRITE 27 | xy: { 0x340, 0x330 }\n #_09CFA2: db $34, $2F, $27 ; SPRITE 27 | xy: { 0x2F0, 0x340 }\n #_09CFA5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen05_1", + "code": "Overworld_Sprites_Screen05_1:\n #_09CFA6: db $0E, $1E, $27 ; SPRITE 27 | xy: { 0x1E0, 0x0E0 }\n #_09CFA9: db $0F, $1F, $C9 ; SPRITE C9 | xy: { 0x1F0, 0x0F0 }\n #_09CFAC: db $03, $2F, $EB ; SPRITE EB | xy: { 0x2F0, 0x030 }\n #_09CFAF: db $0D, $35, $27 ; SPRITE 27 | xy: { 0x350, 0x0D0 }\n #_09CFB2: db $0F, $29, $C9 ; SPRITE C9 | xy: { 0x290, 0x0F0 }\n #_09CFB5: db $0F, $35, $27 ; SPRITE 27 | xy: { 0x350, 0x0F0 }\n #_09CFB8: db $10, $34, $E3 ; SPRITE E3 | xy: { 0x340, 0x100 }\n #_09CFBB: db $31, $1E, $C9 ; SPRITE C9 | xy: { 0x1E0, 0x310 }\n #_09CFBE: db $2A, $35, $C9 ; SPRITE C9 | xy: { 0x350, 0x2A0 }\n #_09CFC1: db $2F, $2A, $27 ; SPRITE 27 | xy: { 0x2A0, 0x2F0 }\n #_09CFC4: db $2F, $2F, $C9 ; SPRITE C9 | xy: { 0x2F0, 0x2F0 }\n #_09CFC7: db $36, $29, $27 ; SPRITE 27 | xy: { 0x290, 0x360 }\n #_09CFCA: db $36, $36, $27 ; SPRITE 27 | xy: { 0x360, 0x360 }\n #_09CFCD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen07_1", + "code": "Overworld_Sprites_Screen07_1:\n #_09CFCE: db $07, $0E, $27 ; SPRITE 27 | xy: { 0x0E0, 0x070 }\n #_09CFD1: db $0D, $0A, $27 ; SPRITE 27 | xy: { 0x0A0, 0x0D0 }\n #_09CFD4: db $15, $17, $27 ; SPRITE 27 | xy: { 0x170, 0x150 }\n #_09CFD7: db $16, $0F, $27 ; SPRITE 27 | xy: { 0x0F0, 0x160 }\n #_09CFDA: db $16, $12, $27 ; SPRITE 27 | xy: { 0x120, 0x160 }\n #_09CFDD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen0A_1", + "code": "Overworld_Sprites_Screen0A_1:\n #_09CFDE: db $04, $0E, $79 ; SPRITE 79 | xy: { 0x0E0, 0x040 }\n #_09CFE1: db $06, $0E, $33 ; SPRITE 33 | xy: { 0x0E0, 0x060 }\n #_09CFE4: db $09, $05, $00 ; SPRITE 00 | xy: { 0x050, 0x090 }\n #_09CFE7: db $0D, $10, $0D ; SPRITE 0D | xy: { 0x100, 0x0D0 }\n #_09CFEA: db $0E, $0B, $0D ; SPRITE 0D | xy: { 0x0B0, 0x0E0 }\n #_09CFED: db $16, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x160 }\n #_09CFF0: db $16, $0E, $17 ; SPRITE 17 | xy: { 0x0E0, 0x160 }\n #_09CFF3: db $16, $16, $0D ; SPRITE 0D | xy: { 0x160, 0x160 }\n #_09CFF6: db $17, $11, $00 ; SPRITE 00 | xy: { 0x110, 0x170 }\n #_09CFF9: db $1A, $19, $AC ; SPRITE AC | xy: { 0x190, 0x1A0 }\n #_09CFFC: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen0F_1", + "code": "Overworld_Sprites_Screen0F_1:\n #_09CFFD: db $02, $06, $37 ; SPRITE 37 | xy: { 0x060, 0x020 }\n #_09D000: db $0D, $0D, $58 ; SPRITE 58 | xy: { 0x0D0, 0x0D0 }\n #_09D003: db $10, $05, $55 ; SPRITE 55 | xy: { 0x050, 0x100 }\n #_09D006: db $12, $11, $58 ; SPRITE 58 | xy: { 0x110, 0x120 }\n #_09D009: db $13, $08, $BA ; SPRITE BA | xy: { 0x080, 0x130 }\n #_09D00C: db $15, $1C, $00 ; SPRITE 00 | xy: { 0x1C0, 0x150 }\n #_09D00F: db $17, $0E, $0A ; SPRITE 0A | xy: { 0x0E0, 0x170 }\n #_09D012: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen10_1", + "code": "Overworld_Sprites_Screen10_1:\n #_09D013: db $0C, $05, $42 ; SPRITE 42 | xy: { 0x050, 0x0C0 }\n #_09D016: db $0C, $07, $AC ; SPRITE AC | xy: { 0x070, 0x0C0 }\n #_09D019: db $0F, $17, $E0 ; SPRITE E0 | xy: { 0x170, 0x0F0 }\n #_09D01C: db $18, $08, $42 ; SPRITE 42 | xy: { 0x080, 0x180 }\n #_09D01F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen11_1", + "code": "Overworld_Sprites_Screen11_1:\n #_09D020: db $0C, $17, $42 ; SPRITE 42 | xy: { 0x170, 0x0C0 }\n #_09D023: db $0D, $1A, $42 ; SPRITE 42 | xy: { 0x1A0, 0x0D0 }\n #_09D026: db $10, $08, $DC ; SPRITE DC | xy: { 0x080, 0x100 }\n #_09D029: db $17, $08, $0B ; SPRITE 0B | xy: { 0x080, 0x170 }\n #_09D02C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen12_1", + "code": "Overworld_Sprites_Screen12_1:\n #_09D02D: db $0E, $15, $42 ; SPRITE 42 | xy: { 0x150, 0x0E0 }\n #_09D030: db $10, $07, $42 ; SPRITE 42 | xy: { 0x070, 0x100 }\n #_09D033: db $10, $0F, $BA ; SPRITE BA | xy: { 0x0F0, 0x100 }\n #_09D036: db $15, $15, $42 ; SPRITE 42 | xy: { 0x150, 0x150 }\n #_09D039: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen13_1", + "code": "Overworld_Sprites_Screen13_1:\n #_09D03A: db $09, $18, $AC ; SPRITE AC | xy: { 0x180, 0x090 }\n #_09D03D: db $17, $11, $42 ; SPRITE 42 | xy: { 0x110, 0x170 }\n #_09D040: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen14_1", + "code": "Overworld_Sprites_Screen14_1:\n #_09D041: db $11, $15, $48 ; SPRITE 48 | xy: { 0x150, 0x110 }\n #_09D044: db $19, $11, $42 ; SPRITE 42 | xy: { 0x110, 0x190 }\n #_09D047: db $0C, $08, $C5 ; SPRITE C5 | xy: { 0x080, 0x0C0 }\n #_09D04A: db $11, $17, $C5 ; SPRITE C5 | xy: { 0x170, 0x110 }\n #_09D04D: db $0E, $12, $C5 ; SPRITE C5 | xy: { 0x120, 0x0E0 }\n #_09D050: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen15_1", + "code": "Overworld_Sprites_Screen15_1:\n #_09D051: db $09, $11, $BA ; SPRITE BA | xy: { 0x110, 0x090 }\n #_09D054: db $0E, $16, $41 ; SPRITE 41 | xy: { 0x160, 0x0E0 }\n #_09D057: db $0F, $1B, $E3 ; SPRITE E3 | xy: { 0x1B0, 0x0F0 }\n #_09D05A: db $17, $0B, $41 ; SPRITE 41 | xy: { 0x0B0, 0x170 }\n #_09D05D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen16_1", + "code": "Overworld_Sprites_Screen16_1:\n #_09D05E: db $0A, $0D, $0D ; SPRITE 0D | xy: { 0x0D0, 0x0A0 }\n #_09D061: db $15, $0F, $36 ; SPRITE 36 | xy: { 0x0F0, 0x150 }\n #_09D064: db $18, $06, $0D ; SPRITE 0D | xy: { 0x060, 0x180 }\n #_09D067: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen17_1", + "code": "Overworld_Sprites_Screen17_1:\n #_09D068: db $08, $18, $0D ; SPRITE 0D | xy: { 0x180, 0x080 }\n #_09D06B: db $0A, $17, $0D ; SPRITE 0D | xy: { 0x170, 0x0A0 }\n #_09D06E: db $0B, $0D, $0D ; SPRITE 0D | xy: { 0x0D0, 0x0B0 }\n #_09D071: db $0C, $16, $0D ; SPRITE 0D | xy: { 0x160, 0x0C0 }\n #_09D074: db $16, $08, $0D ; SPRITE 0D | xy: { 0x080, 0x160 }\n #_09D077: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen18_1", + "code": "Overworld_Sprites_Screen18_1:\n #_09D078: db $0A, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x0A0 }\n #_09D07B: db $17, $0C, $F3 ; OVERLORD 01 | xy: { 0x0C0, 0x170 }\n #_09D07E: db $16, $18, $75 ; SPRITE 75 | xy: { 0x180, 0x160 }\n #_09D081: db $1C, $0E, $3D ; SPRITE 3D | xy: { 0x0E0, 0x1C0 }\n #_09D084: db $18, $20, $1D ; SPRITE 1D | xy: { 0x200, 0x180 }\n #_09D087: db $1B, $34, $F3 ; OVERLORD 01 | xy: { 0x340, 0x1B0 }\n #_09D08A: db $2E, $1D, $74 ; SPRITE 74 | xy: { 0x1D0, 0x2E0 }\n #_09D08D: db $2C, $19, $2A ; SPRITE 2A | xy: { 0x190, 0x2C0 }\n #_09D090: db $31, $18, $3C ; SPRITE 3C | xy: { 0x180, 0x310 }\n #_09D093: db $35, $16, $0B ; SPRITE 0B | xy: { 0x160, 0x350 }\n #_09D096: db $36, $18, $0B ; SPRITE 0B | xy: { 0x180, 0x360 }\n #_09D099: db $20, $33, $34 ; SPRITE 34 | xy: { 0x330, 0x200 }\n #_09D09C: db $33, $36, $DA ; SPRITE DA | xy: { 0x360, 0x330 }\n #_09D09F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1A_1", + "code": "Overworld_Sprites_Screen1A_1:\n #_09D0A0: db $0C, $14, $41 ; SPRITE 41 | xy: { 0x140, 0x0C0 }\n #_09D0A3: db $0E, $0C, $42 ; SPRITE 42 | xy: { 0x0C0, 0x0E0 }\n #_09D0A6: db $11, $0D, $E3 ; SPRITE E3 | xy: { 0x0D0, 0x110 }\n #_09D0A9: db $17, $17, $DA ; SPRITE DA | xy: { 0x170, 0x170 }\n #_09D0AC: db $18, $0A, $D8 ; SPRITE D8 | xy: { 0x0A0, 0x180 }\n #_09D0AF: db $18, $0F, $43 ; SPRITE 43 | xy: { 0x0F0, 0x180 }\n #_09D0B2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1B_1", + "code": "Overworld_Sprites_Screen1B_1:\n #_09D0B3: db $06, $1F, $40 ; SPRITE 40 | xy: { 0x1F0, 0x060 }\n #_09D0B6: db $11, $09, $49 ; SPRITE 49 | xy: { 0x090, 0x110 }\n #_09D0B9: db $13, $0A, $49 ; SPRITE 49 | xy: { 0x0A0, 0x130 }\n #_09D0BC: db $14, $16, $AC ; SPRITE AC | xy: { 0x160, 0x140 }\n #_09D0BF: db $19, $0E, $4A ; SPRITE 4A | xy: { 0x0E0, 0x190 }\n #_09D0C2: db $1A, $1F, $41 ; SPRITE 41 | xy: { 0x1F0, 0x1A0 }\n #_09D0C5: db $17, $29, $33 ; SPRITE 33 | xy: { 0x290, 0x170 }\n #_09D0C8: db $19, $31, $4A ; SPRITE 4A | xy: { 0x310, 0x190 }\n #_09D0CB: db $1A, $20, $41 ; SPRITE 41 | xy: { 0x200, 0x1A0 }\n #_09D0CE: db $25, $0E, $4A ; SPRITE 4A | xy: { 0x0E0, 0x250 }\n #_09D0D1: db $2D, $14, $42 ; SPRITE 42 | xy: { 0x140, 0x2D0 }\n #_09D0D4: db $2D, $26, $48 ; SPRITE 48 | xy: { 0x260, 0x2D0 }\n #_09D0D7: db $32, $21, $48 ; SPRITE 48 | xy: { 0x210, 0x320 }\n #_09D0DA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1D_1", + "code": "Overworld_Sprites_Screen1D_1:\n #_09D0DB: db $06, $0B, $AC ; SPRITE AC | xy: { 0x0B0, 0x060 }\n #_09D0DE: db $0C, $1B, $46 ; SPRITE 46 | xy: { 0x1B0, 0x0C0 }\n #_09D0E1: db $0D, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x0D0 }\n #_09D0E4: db $0F, $1B, $46 ; SPRITE 46 | xy: { 0x1B0, 0x0F0 }\n #_09D0E7: db $12, $07, $58 ; SPRITE 58 | xy: { 0x070, 0x120 }\n #_09D0EA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1E_1", + "code": "Overworld_Sprites_Screen1E_1:\n #_09D0EB: db $08, $13, $51 ; SPRITE 51 | xy: { 0x130, 0x080 }\n #_09D0EE: db $0E, $0E, $51 ; SPRITE 51 | xy: { 0x0E0, 0x0E0 }\n #_09D0F1: db $1A, $11, $08 ; SPRITE 08 | xy: { 0x110, 0x1A0 }\n #_09D0F4: db $1A, $19, $51 ; SPRITE 51 | xy: { 0x190, 0x1A0 }\n #_09D0F7: db $09, $33, $51 ; SPRITE 51 | xy: { 0x330, 0x090 }\n #_09D0FA: db $09, $37, $51 ; SPRITE 51 | xy: { 0x370, 0x090 }\n #_09D0FD: db $10, $31, $41 ; SPRITE 41 | xy: { 0x310, 0x100 }\n #_09D100: db $17, $2F, $51 ; SPRITE 51 | xy: { 0x2F0, 0x170 }\n #_09D103: db $1D, $35, $0A ; SPRITE 0A | xy: { 0x350, 0x1D0 }\n #_09D106: db $25, $0F, $0A ; SPRITE 0A | xy: { 0x0F0, 0x250 }\n #_09D109: db $28, $09, $08 ; SPRITE 08 | xy: { 0x090, 0x280 }\n #_09D10C: db $2C, $15, $08 ; SPRITE 08 | xy: { 0x150, 0x2C0 }\n #_09D10F: db $33, $14, $51 ; SPRITE 51 | xy: { 0x140, 0x330 }\n #_09D112: db $33, $17, $51 ; SPRITE 51 | xy: { 0x170, 0x330 }\n #_09D115: db $36, $09, $08 ; SPRITE 08 | xy: { 0x090, 0x360 }\n #_09D118: db $25, $24, $51 ; SPRITE 51 | xy: { 0x240, 0x250 }\n #_09D11B: db $29, $28, $51 ; SPRITE 51 | xy: { 0x280, 0x290 }\n #_09D11E: db $29, $3D, $51 ; SPRITE 51 | xy: { 0x3D0, 0x290 }\n #_09D121: db $3B, $2E, $08 ; SPRITE 08 | xy: { 0x2E0, 0x3B0 }\n #_09D124: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen22_1", + "code": "Overworld_Sprites_Screen22_1:\n #_09D125: db $04, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x040 }\n #_09D128: db $12, $17, $42 ; SPRITE 42 | xy: { 0x170, 0x120 }\n #_09D12B: db $14, $12, $0B ; SPRITE 0B | xy: { 0x120, 0x140 }\n #_09D12E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen25_1", + "code": "Overworld_Sprites_Screen25_1:\n #_09D12F: db $08, $0F, $08 ; SPRITE 08 | xy: { 0x0F0, 0x080 }\n #_09D132: db $0C, $05, $08 ; SPRITE 08 | xy: { 0x050, 0x0C0 }\n #_09D135: db $0C, $14, $08 ; SPRITE 08 | xy: { 0x140, 0x0C0 }\n #_09D138: db $0D, $10, $08 ; SPRITE 08 | xy: { 0x100, 0x0D0 }\n #_09D13B: db $11, $0C, $08 ; SPRITE 08 | xy: { 0x0C0, 0x110 }\n #_09D13E: db $16, $18, $08 ; SPRITE 08 | xy: { 0x180, 0x160 }\n #_09D141: db $17, $08, $08 ; SPRITE 08 | xy: { 0x080, 0x170 }\n #_09D144: db $17, $10, $08 ; SPRITE 08 | xy: { 0x100, 0x170 }\n #_09D147: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen28_1", + "code": "Overworld_Sprites_Screen28_1:\n #_09D148: db $13, $07, $EB ; SPRITE EB | xy: { 0x070, 0x130 }\n #_09D14B: db $12, $08, $30 ; SPRITE 30 | xy: { 0x080, 0x120 }\n #_09D14E: db $18, $19, $2F ; SPRITE 2F | xy: { 0x190, 0x180 }\n #_09D151: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2A_1", + "code": "Overworld_Sprites_Screen2A_1:\n #_09D152: db $09, $09, $1D ; SPRITE 1D | xy: { 0x090, 0x090 }\n #_09D155: db $0C, $0E, $9E ; SPRITE 9E | xy: { 0x0E0, 0x0C0 }\n #_09D158: db $0E, $0D, $A0 ; SPRITE A0 | xy: { 0x0D0, 0x0E0 }\n #_09D15B: db $0E, $0E, $2E ; SPRITE 2E | xy: { 0x0E0, 0x0E0 }\n #_09D15E: db $0E, $11, $A0 ; SPRITE A0 | xy: { 0x110, 0x0E0 }\n #_09D161: db $0F, $0C, $9F ; SPRITE 9F | xy: { 0x0C0, 0x0F0 }\n #_09D164: db $10, $11, $9F ; SPRITE 9F | xy: { 0x110, 0x100 }\n #_09D167: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2B_1", + "code": "Overworld_Sprites_Screen2B_1:\n #_09D168: db $0D, $16, $E3 ; SPRITE E3 | xy: { 0x160, 0x0D0 }\n #_09D16B: db $11, $14, $42 ; SPRITE 42 | xy: { 0x140, 0x110 }\n #_09D16E: db $15, $14, $42 ; SPRITE 42 | xy: { 0x140, 0x150 }\n #_09D171: db $17, $10, $42 ; SPRITE 42 | xy: { 0x100, 0x170 }\n #_09D174: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2C_1", + "code": "Overworld_Sprites_Screen2C_1:\n #_09D175: db $14, $18, $42 ; SPRITE 42 | xy: { 0x180, 0x140 }\n #_09D178: db $19, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x190 }\n #_09D17B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2D_1", + "code": "Overworld_Sprites_Screen2D_1:\n #_09D17C: db $0B, $13, $42 ; SPRITE 42 | xy: { 0x130, 0x0B0 }\n #_09D17F: db $10, $10, $46 ; SPRITE 46 | xy: { 0x100, 0x100 }\n #_09D182: db $16, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x160 }\n #_09D185: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2E_1", + "code": "Overworld_Sprites_Screen2E_1:\n #_09D186: db $0C, $0E, $41 ; SPRITE 41 | xy: { 0x0E0, 0x0C0 }\n #_09D189: db $0E, $17, $41 ; SPRITE 41 | xy: { 0x170, 0x0E0 }\n #_09D18C: db $12, $05, $55 ; SPRITE 55 | xy: { 0x050, 0x120 }\n #_09D18F: db $17, $19, $08 ; SPRITE 08 | xy: { 0x190, 0x170 }\n #_09D192: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2F_1", + "code": "Overworld_Sprites_Screen2F_1:\n #_09D193: db $0C, $0F, $41 ; SPRITE 41 | xy: { 0x0F0, 0x0C0 }\n #_09D196: db $17, $07, $51 ; SPRITE 51 | xy: { 0x070, 0x170 }\n #_09D199: db $17, $0C, $51 ; SPRITE 51 | xy: { 0x0C0, 0x170 }\n #_09D19C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen30_1", + "code": "Overworld_Sprites_Screen30_1:\n #_09D19D: db $14, $12, $57 ; SPRITE 57 | xy: { 0x120, 0x140 }\n #_09D1A0: db $19, $12, $B3 ; SPRITE B3 | xy: { 0x120, 0x190 }\n #_09D1A3: db $1C, $0E, $57 ; SPRITE 57 | xy: { 0x0E0, 0x1C0 }\n #_09D1A6: db $1C, $16, $57 ; SPRITE 57 | xy: { 0x160, 0x1C0 }\n #_09D1A9: db $19, $27, $4C ; SPRITE 4C | xy: { 0x270, 0x190 }\n #_09D1AC: db $1C, $22, $01 ; SPRITE 01 | xy: { 0x220, 0x1C0 }\n #_09D1AF: db $1F, $2A, $4C ; SPRITE 4C | xy: { 0x2A0, 0x1F0 }\n #_09D1B2: db $26, $1D, $4C ; SPRITE 4C | xy: { 0x1D0, 0x260 }\n #_09D1B5: db $29, $07, $01 ; SPRITE 01 | xy: { 0x070, 0x290 }\n #_09D1B8: db $29, $0F, $4C ; SPRITE 4C | xy: { 0x0F0, 0x290 }\n #_09D1BB: db $2A, $06, $EB ; SPRITE EB | xy: { 0x060, 0x2A0 }\n #_09D1BE: db $2C, $1B, $4C ; SPRITE 4C | xy: { 0x1B0, 0x2C0 }\n #_09D1C1: db $30, $0A, $4C ; SPRITE 4C | xy: { 0x0A0, 0x300 }\n #_09D1C4: db $35, $14, $4C ; SPRITE 4C | xy: { 0x140, 0x350 }\n #_09D1C7: db $2B, $37, $F2 ; SPRITE F2 | xy: { 0x370, 0x2B0 }\n #_09D1CA: db $21, $36, $D4 ; SPRITE D4 | xy: { 0x360, 0x210 }\n #_09D1CD: db $24, $22, $4C ; SPRITE 4C | xy: { 0x220, 0x240 }\n #_09D1D0: db $25, $29, $D4 ; SPRITE D4 | xy: { 0x290, 0x250 }\n #_09D1D3: db $2C, $20, $4C ; SPRITE 4C | xy: { 0x200, 0x2C0 }\n #_09D1D6: db $32, $23, $4C ; SPRITE 4C | xy: { 0x230, 0x320 }\n #_09D1D9: db $32, $30, $D4 ; SPRITE D4 | xy: { 0x300, 0x320 }\n #_09D1DC: db $33, $34, $01 ; SPRITE 01 | xy: { 0x340, 0x330 }\n #_09D1DF: db $3B, $2D, $D4 ; SPRITE D4 | xy: { 0x2D0, 0x3B0 }\n #_09D1E2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen32_1", + "code": "Overworld_Sprites_Screen32_1:\n #_09D1E3: db $09, $1A, $D8 ; SPRITE D8 | xy: { 0x1A0, 0x090 }\n #_09D1E6: db $0B, $0B, $41 ; SPRITE 41 | xy: { 0x0B0, 0x0B0 }\n #_09D1E9: db $0B, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x0B0 }\n #_09D1EC: db $12, $19, $E3 ; SPRITE E3 | xy: { 0x190, 0x120 }\n #_09D1EF: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen33_1", + "code": "Overworld_Sprites_Screen33_1:\n #_09D1F0: db $0B, $15, $47 ; SPRITE 47 | xy: { 0x150, 0x0B0 }\n #_09D1F3: db $0E, $09, $46 ; SPRITE 46 | xy: { 0x090, 0x0E0 }\n #_09D1F6: db $12, $17, $BA ; SPRITE BA | xy: { 0x170, 0x120 }\n #_09D1F9: db $1B, $1A, $08 ; SPRITE 08 | xy: { 0x1A0, 0x1B0 }\n #_09D1FC: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen34_1", + "code": "Overworld_Sprites_Screen34_1:\n #_09D1FD: db $0D, $0B, $46 ; SPRITE 46 | xy: { 0x0B0, 0x0D0 }\n #_09D200: db $11, $15, $4D ; SPRITE 4D | xy: { 0x150, 0x110 }\n #_09D203: db $12, $11, $47 ; SPRITE 47 | xy: { 0x110, 0x120 }\n #_09D206: db $13, $08, $00 ; SPRITE 00 | xy: { 0x080, 0x130 }\n #_09D209: db $13, $0E, $E3 ; SPRITE E3 | xy: { 0x0E0, 0x130 }\n #_09D20C: db $17, $15, $47 ; SPRITE 47 | xy: { 0x150, 0x170 }\n #_09D20F: db $18, $0C, $46 ; SPRITE 46 | xy: { 0x0C0, 0x180 }\n #_09D212: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen35_1", + "code": "Overworld_Sprites_Screen35_1:\n #_09D213: db $07, $0E, $00 ; SPRITE 00 | xy: { 0x0E0, 0x070 }\n #_09D216: db $09, $0D, $08 ; SPRITE 08 | xy: { 0x0D0, 0x090 }\n #_09D219: db $0C, $0A, $46 ; SPRITE 46 | xy: { 0x0A0, 0x0C0 }\n #_09D21C: db $13, $19, $EB ; SPRITE EB | xy: { 0x190, 0x130 }\n #_09D21F: db $14, $19, $0D ; SPRITE 0D | xy: { 0x190, 0x140 }\n #_09D222: db $17, $07, $58 ; SPRITE 58 | xy: { 0x070, 0x170 }\n #_09D225: db $17, $11, $55 ; SPRITE 55 | xy: { 0x110, 0x170 }\n #_09D228: db $0D, $25, $55 ; SPRITE 55 | xy: { 0x250, 0x0D0 }\n #_09D22B: db $1F, $27, $0D ; SPRITE 0D | xy: { 0x270, 0x1F0 }\n #_09D22E: db $1F, $2F, $0D ; SPRITE 0D | xy: { 0x2F0, 0x1F0 }\n #_09D231: db $35, $0A, $08 ; SPRITE 08 | xy: { 0x0A0, 0x350 }\n #_09D234: db $35, $14, $55 ; SPRITE 55 | xy: { 0x140, 0x350 }\n #_09D237: db $35, $0F, $00 ; SPRITE 00 | xy: { 0x0F0, 0x350 }\n #_09D23A: db $39, $0B, $08 ; SPRITE 08 | xy: { 0x0B0, 0x390 }\n #_09D23D: db $3A, $19, $0D ; SPRITE 0D | xy: { 0x190, 0x3A0 }\n #_09D240: db $3B, $11, $58 ; SPRITE 58 | xy: { 0x110, 0x3B0 }\n #_09D243: db $2B, $24, $55 ; SPRITE 55 | xy: { 0x240, 0x2B0 }\n #_09D246: db $2B, $29, $BA ; SPRITE BA | xy: { 0x290, 0x2B0 }\n #_09D249: db $31, $39, $55 ; SPRITE 55 | xy: { 0x390, 0x310 }\n #_09D24C: db $36, $21, $55 ; SPRITE 55 | xy: { 0x210, 0x360 }\n #_09D24F: db $37, $32, $0D ; SPRITE 0D | xy: { 0x320, 0x370 }\n #_09D252: db $39, $34, $0D ; SPRITE 0D | xy: { 0x340, 0x390 }\n #_09D255: db $3A, $2E, $58 ; SPRITE 58 | xy: { 0x2E0, 0x3A0 }\n #_09D258: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen37_1", + "code": "Overworld_Sprites_Screen37_1:\n #_09D259: db $08, $08, $58 ; SPRITE 58 | xy: { 0x080, 0x080 }\n #_09D25C: db $08, $10, $58 ; SPRITE 58 | xy: { 0x100, 0x080 }\n #_09D25F: db $0B, $0F, $58 ; SPRITE 58 | xy: { 0x0F0, 0x0B0 }\n #_09D262: db $11, $16, $58 ; SPRITE 58 | xy: { 0x160, 0x110 }\n #_09D265: db $15, $0C, $00 ; SPRITE 00 | xy: { 0x0C0, 0x150 }\n #_09D268: db $19, $12, $55 ; SPRITE 55 | xy: { 0x120, 0x190 }\n #_09D26B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3A_1", + "code": "Overworld_Sprites_Screen3A_1:\n #_09D26C: db $05, $17, $39 ; SPRITE 39 | xy: { 0x170, 0x050 }\n #_09D26F: db $09, $0E, $00 ; SPRITE 00 | xy: { 0x0E0, 0x090 }\n #_09D272: db $0A, $0B, $3E ; SPRITE 3E | xy: { 0x0B0, 0x0A0 }\n #_09D275: db $0E, $18, $3E ; SPRITE 3E | xy: { 0x180, 0x0E0 }\n #_09D278: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3B_1", + "code": "Overworld_Sprites_Screen3B_1:\n #_09D279: db $06, $13, $47 ; SPRITE 47 | xy: { 0x130, 0x060 }\n #_09D27C: db $0A, $0C, $46 ; SPRITE 46 | xy: { 0x0C0, 0x0A0 }\n #_09D27F: db $0D, $13, $D2 ; SPRITE D2 | xy: { 0x130, 0x0D0 }\n #_09D282: db $0B, $08, $00 ; SPRITE 00 | xy: { 0x080, 0x0B0 }\n #_09D285: db $0E, $14, $EB ; SPRITE EB | xy: { 0x140, 0x0E0 }\n #_09D288: db $10, $1B, $D2 ; SPRITE D2 | xy: { 0x1B0, 0x100 }\n #_09D28B: db $14, $0F, $4D ; SPRITE 4D | xy: { 0x0F0, 0x140 }\n #_09D28E: db $1B, $14, $00 ; SPRITE 00 | xy: { 0x140, 0x1B0 }\n #_09D291: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3C_1", + "code": "Overworld_Sprites_Screen3C_1:\n #_09D292: db $0C, $08, $47 ; SPRITE 47 | xy: { 0x080, 0x0C0 }\n #_09D295: db $0F, $14, $08 ; SPRITE 08 | xy: { 0x140, 0x0F0 }\n #_09D298: db $0F, $0E, $00 ; SPRITE 00 | xy: { 0x0E0, 0x0F0 }\n #_09D29B: db $11, $09, $17 ; SPRITE 17 | xy: { 0x090, 0x110 }\n #_09D29E: db $15, $14, $0A ; SPRITE 0A | xy: { 0x140, 0x150 }\n #_09D2A1: db $17, $16, $58 ; SPRITE 58 | xy: { 0x160, 0x170 }\n #_09D2A4: db $18, $0B, $08 ; SPRITE 08 | xy: { 0x0B0, 0x180 }\n #_09D2A7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3F_1", + "code": "Overworld_Sprites_Screen3F_1:\n #_09D2A8: db $04, $11, $08 ; SPRITE 08 | xy: { 0x110, 0x040 }\n #_09D2AB: db $05, $16, $08 ; SPRITE 08 | xy: { 0x160, 0x050 }\n #_09D2AE: db $0B, $08, $55 ; SPRITE 55 | xy: { 0x080, 0x0B0 }\n #_09D2B1: db $0C, $07, $BA ; SPRITE BA | xy: { 0x070, 0x0C0 }\n #_09D2B4: db $16, $10, $0F ; SPRITE 0F | xy: { 0x100, 0x160 }\n #_09D2B7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen00_2", + "code": "Overworld_Sprites_Screen00_2:\n #_09D2B8: db $11, $0F, $41 ; SPRITE 41 | xy: { 0x0F0, 0x110 }\n #_09D2BB: db $12, $07, $E8 ; SPRITE E8 | xy: { 0x070, 0x120 }\n #_09D2BE: db $15, $1E, $E7 ; SPRITE E7 | xy: { 0x1E0, 0x150 }\n #_09D2C1: db $1F, $0D, $C4 ; SPRITE C4 | xy: { 0x0D0, 0x1F0 }\n #_09D2C4: db $06, $28, $E8 ; SPRITE E8 | xy: { 0x280, 0x060 }\n #_09D2C7: db $08, $2B, $33 ; SPRITE 33 | xy: { 0x2B0, 0x080 }\n #_09D2CA: db $08, $33, $41 ; SPRITE 41 | xy: { 0x330, 0x080 }\n #_09D2CD: db $0A, $2B, $C4 ; SPRITE C4 | xy: { 0x2B0, 0x0A0 }\n #_09D2D0: db $0A, $31, $0D ; SPRITE 0D | xy: { 0x310, 0x0A0 }\n #_09D2D3: db $10, $2A, $17 ; SPRITE 17 | xy: { 0x2A0, 0x100 }\n #_09D2D6: db $2C, $0D, $17 ; SPRITE 17 | xy: { 0x0D0, 0x2C0 }\n #_09D2D9: db $33, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x330 }\n #_09D2DC: db $25, $29, $79 ; SPRITE 79 | xy: { 0x290, 0x250 }\n #_09D2DF: db $2F, $28, $17 ; SPRITE 17 | xy: { 0x280, 0x2F0 }\n #_09D2E2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen02_2", + "code": "Overworld_Sprites_Screen02_2:\n #_09D2E3: db $12, $0D, $3B ; SPRITE 3B | xy: { 0x0D0, 0x120 }\n #_09D2E6: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen03_2", + "code": "Overworld_Sprites_Screen03_2:\n #_09D2E7: db $00, $00, $F4 ; OVERLORD 02 | xy: { 0x000, 0x000 }\n #_09D2EA: db $04, $0B, $F2 ; SPRITE F2 | xy: { 0x0B0, 0x040 }\n #_09D2ED: db $1A, $10, $C9 ; SPRITE C9 | xy: { 0x100, 0x1A0 }\n #_09D2F0: db $1E, $1A, $C9 ; SPRITE C9 | xy: { 0x1A0, 0x1E0 }\n #_09D2F3: db $0C, $27, $27 ; SPRITE 27 | xy: { 0x270, 0x0C0 }\n #_09D2F6: db $15, $2C, $C9 ; SPRITE C9 | xy: { 0x2C0, 0x150 }\n #_09D2F9: db $16, $22, $EB ; SPRITE EB | xy: { 0x220, 0x160 }\n #_09D2FC: db $19, $28, $C9 ; SPRITE C9 | xy: { 0x280, 0x190 }\n #_09D2FF: db $35, $0A, $27 ; SPRITE 27 | xy: { 0x0A0, 0x350 }\n #_09D302: db $36, $06, $27 ; SPRITE 27 | xy: { 0x060, 0x360 }\n #_09D305: db $3B, $0D, $27 ; SPRITE 27 | xy: { 0x0D0, 0x3B0 }\n #_09D308: db $3B, $12, $F3 ; OVERLORD 01 | xy: { 0x120, 0x3B0 }\n #_09D30B: db $2D, $2C, $27 ; SPRITE 27 | xy: { 0x2C0, 0x2D0 }\n #_09D30E: db $33, $34, $27 ; SPRITE 27 | xy: { 0x340, 0x330 }\n #_09D311: db $34, $2F, $27 ; SPRITE 27 | xy: { 0x2F0, 0x340 }\n #_09D314: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen05_2", + "code": "Overworld_Sprites_Screen05_2:\n #_09D315: db $0B, $07, $27 ; SPRITE 27 | xy: { 0x070, 0x0B0 }\n #_09D318: db $0D, $08, $C9 ; SPRITE C9 | xy: { 0x080, 0x0D0 }\n #_09D31B: db $0E, $1E, $27 ; SPRITE 27 | xy: { 0x1E0, 0x0E0 }\n #_09D31E: db $0F, $1F, $C9 ; SPRITE C9 | xy: { 0x1F0, 0x0F0 }\n #_09D321: db $03, $2F, $EB ; SPRITE EB | xy: { 0x2F0, 0x030 }\n #_09D324: db $0D, $35, $27 ; SPRITE 27 | xy: { 0x350, 0x0D0 }\n #_09D327: db $0F, $29, $C9 ; SPRITE C9 | xy: { 0x290, 0x0F0 }\n #_09D32A: db $0F, $35, $27 ; SPRITE 27 | xy: { 0x350, 0x0F0 }\n #_09D32D: db $10, $34, $E3 ; SPRITE E3 | xy: { 0x340, 0x100 }\n #_09D330: db $31, $1E, $C9 ; SPRITE C9 | xy: { 0x1E0, 0x310 }\n #_09D333: db $2A, $35, $C9 ; SPRITE C9 | xy: { 0x350, 0x2A0 }\n #_09D336: db $2F, $2A, $27 ; SPRITE 27 | xy: { 0x2A0, 0x2F0 }\n #_09D339: db $2F, $2F, $C9 ; SPRITE C9 | xy: { 0x2F0, 0x2F0 }\n #_09D33C: db $36, $29, $27 ; SPRITE 27 | xy: { 0x290, 0x360 }\n #_09D33F: db $36, $36, $27 ; SPRITE 27 | xy: { 0x360, 0x360 }\n #_09D342: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen07_2", + "code": "Overworld_Sprites_Screen07_2:\n #_09D343: db $07, $0E, $27 ; SPRITE 27 | xy: { 0x0E0, 0x070 }\n #_09D346: db $0D, $0A, $27 ; SPRITE 27 | xy: { 0x0A0, 0x0D0 }\n #_09D349: db $15, $17, $27 ; SPRITE 27 | xy: { 0x170, 0x150 }\n #_09D34C: db $16, $0F, $27 ; SPRITE 27 | xy: { 0x0F0, 0x160 }\n #_09D34F: db $16, $12, $27 ; SPRITE 27 | xy: { 0x120, 0x160 }\n #_09D352: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen0A_2", + "code": "Overworld_Sprites_Screen0A_2:\n #_09D353: db $04, $0E, $79 ; SPRITE 79 | xy: { 0x0E0, 0x040 }\n #_09D356: db $0D, $10, $41 ; SPRITE 41 | xy: { 0x100, 0x0D0 }\n #_09D359: db $16, $11, $00 ; SPRITE 00 | xy: { 0x110, 0x160 }\n #_09D35C: db $16, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x160 }\n #_09D35F: db $16, $0E, $17 ; SPRITE 17 | xy: { 0x0E0, 0x160 }\n #_09D362: db $17, $11, $00 ; SPRITE 00 | xy: { 0x110, 0x170 }\n #_09D365: db $1A, $19, $AC ; SPRITE AC | xy: { 0x190, 0x1A0 }\n #_09D368: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen0F_2", + "code": "Overworld_Sprites_Screen0F_2:\n #_09D369: db $02, $06, $37 ; SPRITE 37 | xy: { 0x060, 0x020 }\n #_09D36C: db $0D, $0D, $58 ; SPRITE 58 | xy: { 0x0D0, 0x0D0 }\n #_09D36F: db $10, $05, $55 ; SPRITE 55 | xy: { 0x050, 0x100 }\n #_09D372: db $11, $0A, $55 ; SPRITE 55 | xy: { 0x0A0, 0x110 }\n #_09D375: db $12, $11, $58 ; SPRITE 58 | xy: { 0x110, 0x120 }\n #_09D378: db $13, $08, $BA ; SPRITE BA | xy: { 0x080, 0x130 }\n #_09D37B: db $17, $0E, $0A ; SPRITE 0A | xy: { 0x0E0, 0x170 }\n #_09D37E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen10_2", + "code": "Overworld_Sprites_Screen10_2:\n #_09D37F: db $0C, $05, $41 ; SPRITE 41 | xy: { 0x050, 0x0C0 }\n #_09D382: db $0C, $07, $AC ; SPRITE AC | xy: { 0x070, 0x0C0 }\n #_09D385: db $0F, $17, $E0 ; SPRITE E0 | xy: { 0x170, 0x0F0 }\n #_09D388: db $12, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x120 }\n #_09D38B: db $18, $08, $41 ; SPRITE 41 | xy: { 0x080, 0x180 }\n #_09D38E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen11_2", + "code": "Overworld_Sprites_Screen11_2:\n #_09D38F: db $0C, $17, $41 ; SPRITE 41 | xy: { 0x170, 0x0C0 }\n #_09D392: db $0D, $1A, $41 ; SPRITE 41 | xy: { 0x1A0, 0x0D0 }\n #_09D395: db $10, $08, $DC ; SPRITE DC | xy: { 0x080, 0x100 }\n #_09D398: db $17, $08, $0B ; SPRITE 0B | xy: { 0x080, 0x170 }\n #_09D39B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen12_2", + "code": "Overworld_Sprites_Screen12_2:\n #_09D39C: db $0A, $14, $E3 ; SPRITE E3 | xy: { 0x140, 0x0A0 }\n #_09D39F: db $0E, $15, $41 ; SPRITE 41 | xy: { 0x150, 0x0E0 }\n #_09D3A2: db $10, $0F, $BA ; SPRITE BA | xy: { 0x0F0, 0x100 }\n #_09D3A5: db $15, $15, $42 ; SPRITE 42 | xy: { 0x150, 0x150 }\n #_09D3A8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen13_2", + "code": "Overworld_Sprites_Screen13_2:\n #_09D3A9: db $09, $18, $79 ; SPRITE 79 | xy: { 0x180, 0x090 }\n #_09D3AC: db $0C, $07, $DE ; SPRITE DE | xy: { 0x070, 0x0C0 }\n #_09D3AF: db $17, $0D, $41 ; SPRITE 41 | xy: { 0x0D0, 0x170 }\n #_09D3B2: db $1A, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x1A0 }\n #_09D3B5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen14_2", + "code": "Overworld_Sprites_Screen14_2:\n #_09D3B6: db $0D, $0D, $19 ; SPRITE 19 | xy: { 0x0D0, 0x0D0 }\n #_09D3B9: db $0F, $19, $19 ; SPRITE 19 | xy: { 0x190, 0x0F0 }\n #_09D3BC: db $10, $08, $19 ; SPRITE 19 | xy: { 0x080, 0x100 }\n #_09D3BF: db $11, $14, $19 ; SPRITE 19 | xy: { 0x140, 0x110 }\n #_09D3C2: db $14, $13, $19 ; SPRITE 19 | xy: { 0x130, 0x140 }\n #_09D3C5: db $19, $11, $41 ; SPRITE 41 | xy: { 0x110, 0x190 }\n #_09D3C8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen15_2", + "code": "Overworld_Sprites_Screen15_2:\n #_09D3C9: db $09, $11, $BA ; SPRITE BA | xy: { 0x110, 0x090 }\n #_09D3CC: db $0E, $16, $45 ; SPRITE 45 | xy: { 0x160, 0x0E0 }\n #_09D3CF: db $0F, $1B, $E3 ; SPRITE E3 | xy: { 0x1B0, 0x0F0 }\n #_09D3D2: db $17, $0B, $43 ; SPRITE 43 | xy: { 0x0B0, 0x170 }\n #_09D3D5: db $1A, $04, $AC ; SPRITE AC | xy: { 0x040, 0x1A0 }\n #_09D3D8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen16_2", + "code": "Overworld_Sprites_Screen16_2:\n #_09D3D9: db $0A, $0D, $0D ; SPRITE 0D | xy: { 0x0D0, 0x0A0 }\n #_09D3DC: db $15, $0F, $36 ; SPRITE 36 | xy: { 0x0F0, 0x150 }\n #_09D3DF: db $18, $06, $0D ; SPRITE 0D | xy: { 0x060, 0x180 }\n #_09D3E2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen17_2", + "code": "Overworld_Sprites_Screen17_2:\n #_09D3E3: db $08, $18, $0D ; SPRITE 0D | xy: { 0x180, 0x080 }\n #_09D3E6: db $0A, $17, $0D ; SPRITE 0D | xy: { 0x170, 0x0A0 }\n #_09D3E9: db $0B, $0D, $45 ; SPRITE 45 | xy: { 0x0D0, 0x0B0 }\n #_09D3EC: db $0C, $16, $0D ; SPRITE 0D | xy: { 0x160, 0x0C0 }\n #_09D3EF: db $16, $08, $0D ; SPRITE 0D | xy: { 0x080, 0x160 }\n #_09D3F2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen18_2", + "code": "Overworld_Sprites_Screen18_2:\n #_09D3F3: db $08, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x080 }\n #_09D3F6: db $0A, $18, $DB ; SPRITE DB | xy: { 0x180, 0x0A0 }\n #_09D3F9: db $16, $18, $75 ; SPRITE 75 | xy: { 0x180, 0x160 }\n #_09D3FC: db $1C, $07, $41 ; SPRITE 41 | xy: { 0x070, 0x1C0 }\n #_09D3FF: db $0B, $35, $41 ; SPRITE 41 | xy: { 0x350, 0x0B0 }\n #_09D402: db $18, $20, $1D ; SPRITE 1D | xy: { 0x200, 0x180 }\n #_09D405: db $2E, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x2E0 }\n #_09D408: db $34, $14, $0B ; SPRITE 0B | xy: { 0x140, 0x340 }\n #_09D40B: db $35, $16, $0B ; SPRITE 0B | xy: { 0x160, 0x350 }\n #_09D40E: db $22, $39, $43 ; SPRITE 43 | xy: { 0x390, 0x220 }\n #_09D411: db $2E, $20, $41 ; SPRITE 41 | xy: { 0x200, 0x2E0 }\n #_09D414: db $33, $36, $79 ; SPRITE 79 | xy: { 0x360, 0x330 }\n #_09D417: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1A_2", + "code": "Overworld_Sprites_Screen1A_2:\n #_09D418: db $08, $0F, $41 ; SPRITE 41 | xy: { 0x0F0, 0x080 }\n #_09D41B: db $0E, $0C, $41 ; SPRITE 41 | xy: { 0x0C0, 0x0E0 }\n #_09D41E: db $11, $0D, $E3 ; SPRITE E3 | xy: { 0x0D0, 0x110 }\n #_09D421: db $18, $0A, $D8 ; SPRITE D8 | xy: { 0x0A0, 0x180 }\n #_09D424: db $18, $0F, $45 ; SPRITE 45 | xy: { 0x0F0, 0x180 }\n #_09D427: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1B_2", + "code": "Overworld_Sprites_Screen1B_2:\n #_09D428: db $0D, $06, $45 ; SPRITE 45 | xy: { 0x060, 0x0D0 }\n #_09D42B: db $14, $16, $AC ; SPRITE AC | xy: { 0x160, 0x140 }\n #_09D42E: db $1A, $1F, $45 ; SPRITE 45 | xy: { 0x1F0, 0x1A0 }\n #_09D431: db $13, $37, $41 ; SPRITE 41 | xy: { 0x370, 0x130 }\n #_09D434: db $25, $1E, $BA ; SPRITE BA | xy: { 0x1E0, 0x250 }\n #_09D437: db $28, $08, $43 ; SPRITE 43 | xy: { 0x080, 0x280 }\n #_09D43A: db $2B, $1F, $42 ; SPRITE 42 | xy: { 0x1F0, 0x2B0 }\n #_09D43D: db $29, $38, $41 ; SPRITE 41 | xy: { 0x380, 0x290 }\n #_09D440: db $2D, $21, $41 ; SPRITE 41 | xy: { 0x210, 0x2D0 }\n #_09D443: db $32, $21, $45 ; SPRITE 45 | xy: { 0x210, 0x320 }\n #_09D446: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1D_2", + "code": "Overworld_Sprites_Screen1D_2:\n #_09D447: db $06, $0B, $79 ; SPRITE 79 | xy: { 0x0B0, 0x060 }\n #_09D44A: db $0C, $1B, $46 ; SPRITE 46 | xy: { 0x1B0, 0x0C0 }\n #_09D44D: db $0D, $07, $45 ; SPRITE 45 | xy: { 0x070, 0x0D0 }\n #_09D450: db $0F, $1B, $46 ; SPRITE 46 | xy: { 0x1B0, 0x0F0 }\n #_09D453: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen1E_2", + "code": "Overworld_Sprites_Screen1E_2:\n #_09D454: db $0E, $0E, $51 ; SPRITE 51 | xy: { 0x0E0, 0x0E0 }\n #_09D457: db $1A, $11, $45 ; SPRITE 45 | xy: { 0x110, 0x1A0 }\n #_09D45A: db $1A, $19, $51 ; SPRITE 51 | xy: { 0x190, 0x1A0 }\n #_09D45D: db $04, $33, $33 ; SPRITE 33 | xy: { 0x330, 0x040 }\n #_09D460: db $09, $33, $51 ; SPRITE 51 | xy: { 0x330, 0x090 }\n #_09D463: db $09, $37, $51 ; SPRITE 51 | xy: { 0x370, 0x090 }\n #_09D466: db $10, $31, $45 ; SPRITE 45 | xy: { 0x310, 0x100 }\n #_09D469: db $17, $2F, $51 ; SPRITE 51 | xy: { 0x2F0, 0x170 }\n #_09D46C: db $25, $0F, $41 ; SPRITE 41 | xy: { 0x0F0, 0x250 }\n #_09D46F: db $28, $09, $45 ; SPRITE 45 | xy: { 0x090, 0x280 }\n #_09D472: db $2C, $15, $43 ; SPRITE 43 | xy: { 0x150, 0x2C0 }\n #_09D475: db $33, $14, $51 ; SPRITE 51 | xy: { 0x140, 0x330 }\n #_09D478: db $33, $17, $51 ; SPRITE 51 | xy: { 0x170, 0x330 }\n #_09D47B: db $25, $24, $51 ; SPRITE 51 | xy: { 0x240, 0x250 }\n #_09D47E: db $28, $31, $51 ; SPRITE 51 | xy: { 0x310, 0x280 }\n #_09D481: db $29, $28, $51 ; SPRITE 51 | xy: { 0x280, 0x290 }\n #_09D484: db $29, $3A, $51 ; SPRITE 51 | xy: { 0x3A0, 0x290 }\n #_09D487: db $29, $3D, $51 ; SPRITE 51 | xy: { 0x3D0, 0x290 }\n #_09D48A: db $37, $22, $E3 ; SPRITE E3 | xy: { 0x220, 0x370 }\n #_09D48D: db $3A, $2D, $45 ; SPRITE 45 | xy: { 0x2D0, 0x3A0 }\n #_09D490: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen22_2", + "code": "Overworld_Sprites_Screen22_2:\n #_09D491: db $04, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x040 }\n #_09D494: db $14, $0C, $0B ; SPRITE 0B | xy: { 0x0C0, 0x140 }\n #_09D497: db $14, $12, $0B ; SPRITE 0B | xy: { 0x120, 0x140 }\n #_09D49A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen25_2", + "code": "Overworld_Sprites_Screen25_2:\n #_09D49B: db $08, $0E, $41 ; SPRITE 41 | xy: { 0x0E0, 0x080 }\n #_09D49E: db $0C, $05, $41 ; SPRITE 41 | xy: { 0x050, 0x0C0 }\n #_09D4A1: db $11, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x110 }\n #_09D4A4: db $16, $19, $45 ; SPRITE 45 | xy: { 0x190, 0x160 }\n #_09D4A7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen28_2", + "code": "Overworld_Sprites_Screen28_2:\n #_09D4A8: db $0C, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x0C0 }\n #_09D4AB: db $13, $07, $EB ; SPRITE EB | xy: { 0x070, 0x130 }\n #_09D4AE: db $12, $08, $30 ; SPRITE 30 | xy: { 0x080, 0x120 }\n #_09D4B1: db $18, $19, $2F ; SPRITE 2F | xy: { 0x190, 0x180 }\n #_09D4B4: db $19, $0C, $41 ; SPRITE 41 | xy: { 0x0C0, 0x190 }\n #_09D4B7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen29_2", + "code": "Overworld_Sprites_Screen29_2:\n #_09D4B8: db $05, $0E, $41 ; SPRITE 41 | xy: { 0x0E0, 0x050 }\n #_09D4BB: db $0C, $0C, $45 ; SPRITE 45 | xy: { 0x0C0, 0x0C0 }\n #_09D4BE: db $14, $0B, $41 ; SPRITE 41 | xy: { 0x0B0, 0x140 }\n #_09D4C1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2A_2", + "code": "Overworld_Sprites_Screen2A_2:\n #_09D4C2: db $09, $09, $1D ; SPRITE 1D | xy: { 0x090, 0x090 }\n #_09D4C5: db $0C, $0E, $9E ; SPRITE 9E | xy: { 0x0E0, 0x0C0 }\n #_09D4C8: db $0E, $0D, $A0 ; SPRITE A0 | xy: { 0x0D0, 0x0E0 }\n #_09D4CB: db $0E, $0E, $2E ; SPRITE 2E | xy: { 0x0E0, 0x0E0 }\n #_09D4CE: db $0E, $11, $A0 ; SPRITE A0 | xy: { 0x110, 0x0E0 }\n #_09D4D1: db $0F, $0C, $9F ; SPRITE 9F | xy: { 0x0C0, 0x0F0 }\n #_09D4D4: db $10, $11, $9F ; SPRITE 9F | xy: { 0x110, 0x100 }\n #_09D4D7: db $14, $15, $DB ; SPRITE DB | xy: { 0x150, 0x140 }\n #_09D4DA: db $18, $0F, $DB ; SPRITE DB | xy: { 0x0F0, 0x180 }\n #_09D4DD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2B_2", + "code": "Overworld_Sprites_Screen2B_2:\n #_09D4DE: db $06, $08, $41 ; SPRITE 41 | xy: { 0x080, 0x060 }\n #_09D4E1: db $0D, $16, $E3 ; SPRITE E3 | xy: { 0x160, 0x0D0 }\n #_09D4E4: db $11, $14, $41 ; SPRITE 41 | xy: { 0x140, 0x110 }\n #_09D4E7: db $15, $14, $41 ; SPRITE 41 | xy: { 0x140, 0x150 }\n #_09D4EA: db $17, $10, $41 ; SPRITE 41 | xy: { 0x100, 0x170 }\n #_09D4ED: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2C_2", + "code": "Overworld_Sprites_Screen2C_2:\n #_09D4EE: db $14, $18, $41 ; SPRITE 41 | xy: { 0x180, 0x140 }\n #_09D4F1: db $19, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x190 }\n #_09D4F4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2D_2", + "code": "Overworld_Sprites_Screen2D_2:\n #_09D4F5: db $08, $0F, $0A ; SPRITE 0A | xy: { 0x0F0, 0x080 }\n #_09D4F8: db $0B, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x0B0 }\n #_09D4FB: db $16, $12, $45 ; SPRITE 45 | xy: { 0x120, 0x160 }\n #_09D4FE: db $17, $1C, $55 ; SPRITE 55 | xy: { 0x1C0, 0x170 }\n #_09D501: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2E_2", + "code": "Overworld_Sprites_Screen2E_2:\n #_09D502: db $09, $0C, $E3 ; SPRITE E3 | xy: { 0x0C0, 0x090 }\n #_09D505: db $0B, $14, $79 ; SPRITE 79 | xy: { 0x140, 0x0B0 }\n #_09D508: db $0C, $0E, $45 ; SPRITE 45 | xy: { 0x0E0, 0x0C0 }\n #_09D50B: db $0E, $17, $41 ; SPRITE 41 | xy: { 0x170, 0x0E0 }\n #_09D50E: db $12, $05, $55 ; SPRITE 55 | xy: { 0x050, 0x120 }\n #_09D511: db $17, $19, $08 ; SPRITE 08 | xy: { 0x190, 0x170 }\n #_09D514: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen2F_2", + "code": "Overworld_Sprites_Screen2F_2:\n #_09D515: db $0C, $0F, $45 ; SPRITE 45 | xy: { 0x0F0, 0x0C0 }\n #_09D518: db $17, $07, $51 ; SPRITE 51 | xy: { 0x070, 0x170 }\n #_09D51B: db $17, $0C, $51 ; SPRITE 51 | xy: { 0x0C0, 0x170 }\n #_09D51E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen30_2", + "code": "Overworld_Sprites_Screen30_2:\n #_09D51F: db $14, $12, $57 ; SPRITE 57 | xy: { 0x120, 0x140 }\n #_09D522: db $19, $12, $B3 ; SPRITE B3 | xy: { 0x120, 0x190 }\n #_09D525: db $1C, $0E, $57 ; SPRITE 57 | xy: { 0x0E0, 0x1C0 }\n #_09D528: db $1C, $16, $57 ; SPRITE 57 | xy: { 0x160, 0x1C0 }\n #_09D52B: db $19, $27, $4C ; SPRITE 4C | xy: { 0x270, 0x190 }\n #_09D52E: db $1C, $22, $01 ; SPRITE 01 | xy: { 0x220, 0x1C0 }\n #_09D531: db $1F, $2A, $4C ; SPRITE 4C | xy: { 0x2A0, 0x1F0 }\n #_09D534: db $23, $0C, $D4 ; SPRITE D4 | xy: { 0x0C0, 0x230 }\n #_09D537: db $26, $1D, $4C ; SPRITE 4C | xy: { 0x1D0, 0x260 }\n #_09D53A: db $29, $07, $01 ; SPRITE 01 | xy: { 0x070, 0x290 }\n #_09D53D: db $29, $0F, $4C ; SPRITE 4C | xy: { 0x0F0, 0x290 }\n #_09D540: db $2A, $06, $EB ; SPRITE EB | xy: { 0x060, 0x2A0 }\n #_09D543: db $2C, $1B, $4C ; SPRITE 4C | xy: { 0x1B0, 0x2C0 }\n #_09D546: db $30, $0A, $4C ; SPRITE 4C | xy: { 0x0A0, 0x300 }\n #_09D549: db $35, $14, $4C ; SPRITE 4C | xy: { 0x140, 0x350 }\n #_09D54C: db $2B, $37, $F2 ; SPRITE F2 | xy: { 0x370, 0x2B0 }\n #_09D54F: db $24, $22, $4C ; SPRITE 4C | xy: { 0x220, 0x240 }\n #_09D552: db $2A, $28, $4C ; SPRITE 4C | xy: { 0x280, 0x2A0 }\n #_09D555: db $32, $23, $4C ; SPRITE 4C | xy: { 0x230, 0x320 }\n #_09D558: db $33, $34, $01 ; SPRITE 01 | xy: { 0x340, 0x330 }\n #_09D55B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen32_2", + "code": "Overworld_Sprites_Screen32_2:\n #_09D55C: db $09, $1A, $D8 ; SPRITE D8 | xy: { 0x1A0, 0x090 }\n #_09D55F: db $0C, $0B, $42 ; SPRITE 42 | xy: { 0x0B0, 0x0C0 }\n #_09D562: db $0C, $12, $41 ; SPRITE 41 | xy: { 0x120, 0x0C0 }\n #_09D565: db $10, $13, $42 ; SPRITE 42 | xy: { 0x130, 0x100 }\n #_09D568: db $12, $19, $DD ; SPRITE DD | xy: { 0x190, 0x120 }\n #_09D56B: db $15, $08, $D4 ; SPRITE D4 | xy: { 0x080, 0x150 }\n #_09D56E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen33_2", + "code": "Overworld_Sprites_Screen33_2:\n #_09D56F: db $06, $13, $08 ; SPRITE 08 | xy: { 0x130, 0x060 }\n #_09D572: db $0B, $14, $0A ; SPRITE 0A | xy: { 0x140, 0x0B0 }\n #_09D575: db $12, $17, $BA ; SPRITE BA | xy: { 0x170, 0x120 }\n #_09D578: db $16, $12, $08 ; SPRITE 08 | xy: { 0x120, 0x160 }\n #_09D57B: db $1B, $1A, $08 ; SPRITE 08 | xy: { 0x1A0, 0x1B0 }\n #_09D57E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen34_2", + "code": "Overworld_Sprites_Screen34_2:\n #_09D57F: db $0E, $17, $33 ; SPRITE 33 | xy: { 0x170, 0x0E0 }\n #_09D582: db $13, $08, $00 ; SPRITE 00 | xy: { 0x080, 0x130 }\n #_09D585: db $12, $11, $41 ; SPRITE 41 | xy: { 0x110, 0x120 }\n #_09D588: db $13, $06, $08 ; SPRITE 08 | xy: { 0x060, 0x130 }\n #_09D58B: db $18, $0C, $08 ; SPRITE 08 | xy: { 0x0C0, 0x180 }\n #_09D58E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen35_2", + "code": "Overworld_Sprites_Screen35_2:\n #_09D58F: db $07, $0E, $00 ; SPRITE 00 | xy: { 0x0E0, 0x070 }\n #_09D592: db $09, $0D, $08 ; SPRITE 08 | xy: { 0x0D0, 0x090 }\n #_09D595: db $0C, $0A, $45 ; SPRITE 45 | xy: { 0x0A0, 0x0C0 }\n #_09D598: db $13, $19, $EB ; SPRITE EB | xy: { 0x190, 0x130 }\n #_09D59B: db $14, $19, $0D ; SPRITE 0D | xy: { 0x190, 0x140 }\n #_09D59E: db $17, $11, $55 ; SPRITE 55 | xy: { 0x110, 0x170 }\n #_09D5A1: db $0A, $38, $0A ; SPRITE 0A | xy: { 0x380, 0x0A0 }\n #_09D5A4: db $0D, $25, $55 ; SPRITE 55 | xy: { 0x250, 0x0D0 }\n #_09D5A7: db $19, $37, $55 ; SPRITE 55 | xy: { 0x370, 0x190 }\n #_09D5AA: db $1F, $27, $0D ; SPRITE 0D | xy: { 0x270, 0x1F0 }\n #_09D5AD: db $1F, $2F, $0D ; SPRITE 0D | xy: { 0x2F0, 0x1F0 }\n #_09D5B0: db $26, $1B, $55 ; SPRITE 55 | xy: { 0x1B0, 0x260 }\n #_09D5B3: db $2F, $0D, $00 ; SPRITE 00 | xy: { 0x0D0, 0x2F0 }\n #_09D5B6: db $34, $06, $08 ; SPRITE 08 | xy: { 0x060, 0x340 }\n #_09D5B9: db $35, $0A, $08 ; SPRITE 08 | xy: { 0x0A0, 0x350 }\n #_09D5BC: db $35, $14, $55 ; SPRITE 55 | xy: { 0x140, 0x350 }\n #_09D5BF: db $39, $0B, $08 ; SPRITE 08 | xy: { 0x0B0, 0x390 }\n #_09D5C2: db $3A, $19, $0D ; SPRITE 0D | xy: { 0x190, 0x3A0 }\n #_09D5C5: db $2B, $29, $BA ; SPRITE BA | xy: { 0x290, 0x2B0 }\n #_09D5C8: db $31, $39, $55 ; SPRITE 55 | xy: { 0x390, 0x310 }\n #_09D5CB: db $36, $21, $55 ; SPRITE 55 | xy: { 0x210, 0x360 }\n #_09D5CE: db $37, $32, $0D ; SPRITE 0D | xy: { 0x320, 0x370 }\n #_09D5D1: db $39, $34, $0D ; SPRITE 0D | xy: { 0x340, 0x390 }\n #_09D5D4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen37_2", + "code": "Overworld_Sprites_Screen37_2:\n #_09D5D5: db $08, $08, $58 ; SPRITE 58 | xy: { 0x080, 0x080 }\n #_09D5D8: db $08, $10, $58 ; SPRITE 58 | xy: { 0x100, 0x080 }\n #_09D5DB: db $0B, $0F, $58 ; SPRITE 58 | xy: { 0x0F0, 0x0B0 }\n #_09D5DE: db $11, $16, $58 ; SPRITE 58 | xy: { 0x160, 0x110 }\n #_09D5E1: db $19, $12, $55 ; SPRITE 55 | xy: { 0x120, 0x190 }\n #_09D5E4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3A_2", + "code": "Overworld_Sprites_Screen3A_2:\n #_09D5E5: db $05, $17, $39 ; SPRITE 39 | xy: { 0x170, 0x050 }\n #_09D5E8: db $0A, $0B, $3E ; SPRITE 3E | xy: { 0x0B0, 0x0A0 }\n #_09D5EB: db $0D, $14, $00 ; SPRITE 00 | xy: { 0x140, 0x0D0 }\n #_09D5EE: db $0E, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x0E0 }\n #_09D5F1: db $0F, $14, $00 ; SPRITE 00 | xy: { 0x140, 0x0F0 }\n #_09D5F4: db $10, $13, $00 ; SPRITE 00 | xy: { 0x130, 0x100 }\n #_09D5F7: db $0F, $11, $45 ; SPRITE 45 | xy: { 0x110, 0x0F0 }\n #_09D5FA: db $17, $17, $3E ; SPRITE 3E | xy: { 0x170, 0x170 }\n #_09D5FD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3B_2", + "code": "Overworld_Sprites_Screen3B_2:\n #_09D5FE: db $0D, $13, $D2 ; SPRITE D2 | xy: { 0x130, 0x0D0 }\n #_09D601: db $0F, $0C, $08 ; SPRITE 08 | xy: { 0x0C0, 0x0F0 }\n #_09D604: db $0E, $14, $EB ; SPRITE EB | xy: { 0x140, 0x0E0 }\n #_09D607: db $14, $0F, $0A ; SPRITE 0A | xy: { 0x0F0, 0x140 }\n #_09D60A: db $18, $17, $41 ; SPRITE 41 | xy: { 0x170, 0x180 }\n #_09D60D: db $1B, $14, $00 ; SPRITE 00 | xy: { 0x140, 0x1B0 }\n #_09D610: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3C_2", + "code": "Overworld_Sprites_Screen3C_2:\n #_09D611: db $09, $0B, $00 ; SPRITE 00 | xy: { 0x0B0, 0x090 }\n #_09D614: db $0A, $08, $41 ; SPRITE 41 | xy: { 0x080, 0x0A0 }\n #_09D617: db $0F, $14, $08 ; SPRITE 08 | xy: { 0x140, 0x0F0 }\n #_09D61A: db $11, $09, $45 ; SPRITE 45 | xy: { 0x090, 0x110 }\n #_09D61D: db $15, $14, $0A ; SPRITE 0A | xy: { 0x140, 0x150 }\n #_09D620: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Overworld_Sprites_Screen3F_2", + "code": "Overworld_Sprites_Screen3F_2:\n #_09D621: db $05, $16, $0A ; SPRITE 0A | xy: { 0x160, 0x050 }\n #_09D624: db $0C, $07, $BA ; SPRITE BA | xy: { 0x070, 0x0C0 }\n #_09D627: db $13, $06, $55 ; SPRITE 55 | xy: { 0x060, 0x130 }\n #_09D62A: db $16, $11, $0F ; SPRITE 0F | xy: { 0x110, 0x160 }\n #_09D62D: db $FF ; END\n\n; =========================================================\n; Each room begins with 1 byte to designate the layering of OAM allocation.\n; Following that, each sprite has 3 bytes of data\n; The list is terminated when byte 1 is 0xFF\n;\n; lssyyyyy\n; tttxxxxx\n; iiiiiiii\n; x - x coordinate of sprite, in multiples of 16\n; y - y coordinate of sprite, in multiples of 16\n; l - sprite layer (0: upper | 1: lower)\n; i - sprite ID\n; s - aux part 1\n; t - aux part 2\n; if every bit of t is set, then the entry corresponds to an overlord or a key\n;\n; s and t form a 5 bit auxiliary value written to $0E30,X\n; ...ssttt\n;\n; For entries with ID 0xE4, byte 1 doubles as a flag\n; 0xFE - previous sprite entry is given a small key\n; 0xFD - previous sprite entry is given a big key\n; All other values correspond to a regular key placed as a sprite\n;\n; This data is parsed and formatted as a comment for each entry as:\n; xy: { X, Y, Z } | s: S\n; where:\n; X and Y are pixel coordinates relative to the room's top-left corner\n; Z is the layer (U: upper layer | L: lower layer)\n; S is the auxiliary value\n; =========================================================", + "file": "bank_09.asm" + }, + { + "name": "RoomData_SpritePointers", + "code": "RoomData_SpritePointers:\n #_09D62E: dw RoomData_Sprites_Room0000\n #_09D630: dw RoomData_Sprites_Empty\n #_09D632: dw RoomData_Sprites_Room0002\n #_09D634: dw RoomData_Sprites_Empty\n #_09D636: dw RoomData_Sprites_Room0004\n #_09D638: dw RoomData_Sprites_Empty\n #_09D63A: dw RoomData_Sprites_Room0006\n #_09D63C: dw RoomData_Sprites_Room0007\n #_09D63E: dw RoomData_Sprites_Room0008\n #_09D640: dw RoomData_Sprites_Room0009\n #_09D642: dw RoomData_Sprites_Room000A\n #_09D644: dw RoomData_Sprites_Room000B\n #_09D646: dw RoomData_Sprites_Empty\n #_09D648: dw RoomData_Sprites_Room000D\n #_09D64A: dw RoomData_Sprites_Room000E\n #_09D64C: dw RoomData_Sprites_Empty\n #_09D64E: dw RoomData_Sprites_Empty\n #_09D650: dw RoomData_Sprites_Room0011\n #_09D652: dw RoomData_Sprites_Room0012\n #_09D654: dw RoomData_Sprites_Room0013\n #_09D656: dw RoomData_Sprites_Room0014\n #_09D658: dw RoomData_Sprites_Room0015\n #_09D65A: dw RoomData_Sprites_Room0016\n #_09D65C: dw RoomData_Sprites_Room0017\n #_09D65E: dw RoomData_Sprites_Empty\n #_09D660: dw RoomData_Sprites_Room0019\n #_09D662: dw RoomData_Sprites_Room001A\n #_09D664: dw RoomData_Sprites_Room001B\n #_09D666: dw RoomData_Sprites_Room001C\n #_09D668: dw RoomData_Sprites_Empty\n #_09D66A: dw RoomData_Sprites_Room001E\n #_09D66C: dw RoomData_Sprites_Room001F\n #_09D66E: dw RoomData_Sprites_Room0020\n #_09D670: dw RoomData_Sprites_Room0021\n #_09D672: dw RoomData_Sprites_Room0022\n #_09D674: dw RoomData_Sprites_Room0023\n #_09D676: dw RoomData_Sprites_Room0024\n #_09D678: dw RoomData_Sprites_Room0025\n #_09D67A: dw RoomData_Sprites_Room0026\n #_09D67C: dw RoomData_Sprites_Room0027\n #_09D67E: dw RoomData_Sprites_Room0028\n #_09D680: dw RoomData_Sprites_Room0029\n #_09D682: dw RoomData_Sprites_Room002A\n #_09D684: dw RoomData_Sprites_Room002B\n #_09D686: dw RoomData_Sprites_Room002C\n #_09D688: dw RoomData_Sprites_Empty\n #_09D68A: dw RoomData_Sprites_Room002E\n #_09D68C: dw RoomData_Sprites_Empty\n #_09D68E: dw RoomData_Sprites_Room0030\n #_09D690: dw RoomData_Sprites_Room0031\n #_09D692: dw RoomData_Sprites_Room0032\n #_09D694: dw RoomData_Sprites_Room0033\n #_09D696: dw RoomData_Sprites_Room0034\n #_09D698: dw RoomData_Sprites_Room0035\n #_09D69A: dw RoomData_Sprites_Room0036\n #_09D69C: dw RoomData_Sprites_Room0037\n #_09D69E: dw RoomData_Sprites_Room0038\n #_09D6A0: dw RoomData_Sprites_Room0039\n #_09D6A2: dw RoomData_Sprites_Room003A\n #_09D6A4: dw RoomData_Sprites_Room003B\n #_09D6A6: dw RoomData_Sprites_Room003C\n #_09D6A8: dw RoomData_Sprites_Room003D\n #_09D6AA: dw RoomData_Sprites_Room003E\n #_09D6AC: dw RoomData_Sprites_Room003F\n #_09D6AE: dw RoomData_Sprites_Room0040\n #_09D6B0: dw RoomData_Sprites_Room0041\n #_09D6B2: dw RoomData_Sprites_Room0042\n #_09D6B4: dw RoomData_Sprites_Room0043\n #_09D6B6: dw RoomData_Sprites_Room0044\n #_09D6B8: dw RoomData_Sprites_Room0045\n #_09D6BA: dw RoomData_Sprites_Room0046\n #_09D6BC: dw RoomData_Sprites_Room0047\n #_09D6BE: dw RoomData_Sprites_Empty\n #_09D6C0: dw RoomData_Sprites_Room0049\n #_09D6C2: dw RoomData_Sprites_Room004A\n #_09D6C4: dw RoomData_Sprites_Room004B\n #_09D6C6: dw RoomData_Sprites_Room004C\n #_09D6C8: dw RoomData_Sprites_Room004D\n #_09D6CA: dw RoomData_Sprites_Room004E\n #_09D6CC: dw RoomData_Sprites_Room004F\n #_09D6CE: dw RoomData_Sprites_Room0050\n #_09D6D0: dw RoomData_Sprites_Room0051\n #_09D6D2: dw RoomData_Sprites_Room0052\n #_09D6D4: dw RoomData_Sprites_Room0053\n #_09D6D6: dw RoomData_Sprites_Room0054\n #_09D6D8: dw RoomData_Sprites_Room0055\n #_09D6DA: dw RoomData_Sprites_Room0056\n #_09D6DC: dw RoomData_Sprites_Room0057\n #_09D6DE: dw RoomData_Sprites_Room0058\n #_09D6E0: dw RoomData_Sprites_Room0059\n #_09D6E2: dw RoomData_Sprites_Room005A\n #_09D6E4: dw RoomData_Sprites_Room005B\n #_09D6E6: dw RoomData_Sprites_Room005C\n #_09D6E8: dw RoomData_Sprites_Room005D\n #_09D6EA: dw RoomData_Sprites_Room005E\n #_09D6EC: dw RoomData_Sprites_Room005F\n #_09D6EE: dw RoomData_Sprites_Room0060\n #_09D6F0: dw RoomData_Sprites_Room0061\n #_09D6F2: dw RoomData_Sprites_Room0062\n #_09D6F4: dw RoomData_Sprites_Room0063\n #_09D6F6: dw RoomData_Sprites_Room0064\n #_09D6F8: dw RoomData_Sprites_Room0065\n #_09D6FA: dw RoomData_Sprites_Room0066\n #_09D6FC: dw RoomData_Sprites_Room0067\n #_09D6FE: dw RoomData_Sprites_Room0068\n #_09D700: dw RoomData_Sprites_Empty\n #_09D702: dw RoomData_Sprites_Room006A\n #_09D704: dw RoomData_Sprites_Room006B\n #_09D706: dw RoomData_Sprites_Room006C\n #_09D708: dw RoomData_Sprites_Room006D\n #_09D70A: dw RoomData_Sprites_Room006E\n #_09D70C: dw RoomData_Sprites_Empty\n #_09D70E: dw RoomData_Sprites_Empty\n #_09D710: dw RoomData_Sprites_Room0071\n #_09D712: dw RoomData_Sprites_Room0072\n #_09D714: dw RoomData_Sprites_Room0073\n #_09D716: dw RoomData_Sprites_Room0074\n #_09D718: dw RoomData_Sprites_Room0075\n #_09D71A: dw RoomData_Sprites_Room0076\n #_09D71C: dw RoomData_Sprites_Room0077\n #_09D71E: dw RoomData_Sprites_Empty\n #_09D720: dw RoomData_Sprites_Empty\n #_09D722: dw RoomData_Sprites_Empty\n #_09D724: dw RoomData_Sprites_Room007B\n #_09D726: dw RoomData_Sprites_Room007C\n #_09D728: dw RoomData_Sprites_Room007D\n #_09D72A: dw RoomData_Sprites_Room007E\n #_09D72C: dw RoomData_Sprites_Room007F\n #_09D72E: dw RoomData_Sprites_Room0080\n #_09D730: dw RoomData_Sprites_Room0081\n #_09D732: dw RoomData_Sprites_Room0082\n #_09D734: dw RoomData_Sprites_Room0083\n #_09D736: dw RoomData_Sprites_Room0084\n #_09D738: dw RoomData_Sprites_Room0085\n #_09D73A: dw RoomData_Sprites_Room0086\n #_09D73C: dw RoomData_Sprites_Room0087\n #_09D73E: dw RoomData_Sprites_Empty\n #_09D740: dw RoomData_Sprites_Room0089\n #_09D742: dw RoomData_Sprites_Empty\n #_09D744: dw RoomData_Sprites_Room008B\n #_09D746: dw RoomData_Sprites_Room008C\n #_09D748: dw RoomData_Sprites_Room008D\n #_09D74A: dw RoomData_Sprites_Room008E\n #_09D74C: dw RoomData_Sprites_Empty\n #_09D74E: dw RoomData_Sprites_Room0090\n #_09D750: dw RoomData_Sprites_Room0091\n #_09D752: dw RoomData_Sprites_Room0092\n #_09D754: dw RoomData_Sprites_Room0093\n #_09D756: dw RoomData_Sprites_Empty\n #_09D758: dw RoomData_Sprites_Room0095\n #_09D75A: dw RoomData_Sprites_Room0096\n #_09D75C: dw RoomData_Sprites_Room0097\n #_09D75E: dw RoomData_Sprites_Room0098\n #_09D760: dw RoomData_Sprites_Room0099\n #_09D762: dw RoomData_Sprites_Empty\n #_09D764: dw RoomData_Sprites_Room009B\n #_09D766: dw RoomData_Sprites_Room009C\n #_09D768: dw RoomData_Sprites_Room009D\n #_09D76A: dw RoomData_Sprites_Room009E\n #_09D76C: dw RoomData_Sprites_Room009F\n #_09D76E: dw RoomData_Sprites_Room00A0\n #_09D770: dw RoomData_Sprites_Room00A1\n #_09D772: dw RoomData_Sprites_Empty\n #_09D774: dw RoomData_Sprites_Room00A3\n #_09D776: dw RoomData_Sprites_Room00A4\n #_09D778: dw RoomData_Sprites_Room00A5\n #_09D77A: dw RoomData_Sprites_Room00A6\n #_09D77C: dw RoomData_Sprites_Room00A7\n #_09D77E: dw RoomData_Sprites_Room00A8\n #_09D780: dw RoomData_Sprites_Room00A9\n #_09D782: dw RoomData_Sprites_Room00AA\n #_09D784: dw RoomData_Sprites_Room00AB\n #_09D786: dw RoomData_Sprites_Room00AC\n #_09D788: dw RoomData_Sprites_Empty\n #_09D78A: dw RoomData_Sprites_Room00AE\n #_09D78C: dw RoomData_Sprites_Room00AF\n #_09D78E: dw RoomData_Sprites_Room00B0\n #_09D790: dw RoomData_Sprites_Room00B1\n #_09D792: dw RoomData_Sprites_Room00B2\n #_09D794: dw RoomData_Sprites_Room00B3\n #_09D796: dw RoomData_Sprites_Empty\n #_09D798: dw RoomData_Sprites_Room00B5\n #_09D79A: dw RoomData_Sprites_Room00B6\n #_09D79C: dw RoomData_Sprites_Room00B7\n #_09D79E: dw RoomData_Sprites_Room00B8\n #_09D7A0: dw RoomData_Sprites_Room00B9\n #_09D7A2: dw RoomData_Sprites_Room00BA\n #_09D7A4: dw RoomData_Sprites_Room00BB\n #_09D7A6: dw RoomData_Sprites_Room00BC\n #_09D7A8: dw RoomData_Sprites_Room00BD\n #_09D7AA: dw RoomData_Sprites_Room00BE\n #_09D7AC: dw RoomData_Sprites_Room00BF\n #_09D7AE: dw RoomData_Sprites_Room00C0\n #_09D7B0: dw RoomData_Sprites_Room00C1\n #_09D7B2: dw RoomData_Sprites_Room00C2\n #_09D7B4: dw RoomData_Sprites_Room00C3\n #_09D7B6: dw RoomData_Sprites_Room00C4\n #_09D7B8: dw RoomData_Sprites_Room00C5\n #_09D7BA: dw RoomData_Sprites_Room00C6\n #_09D7BC: dw RoomData_Sprites_Empty\n #_09D7BE: dw RoomData_Sprites_Room00C8\n #_09D7C0: dw RoomData_Sprites_Room00C9\n #_09D7C2: dw RoomData_Sprites_Empty\n #_09D7C4: dw RoomData_Sprites_Room00CB\n #_09D7C6: dw RoomData_Sprites_Room00CC\n #_09D7C8: dw RoomData_Sprites_Empty\n #_09D7CA: dw RoomData_Sprites_Room00CE\n #_09D7CC: dw RoomData_Sprites_Empty\n #_09D7CE: dw RoomData_Sprites_Room00D0\n #_09D7D0: dw RoomData_Sprites_Room00D1\n #_09D7D2: dw RoomData_Sprites_Room00D2\n #_09D7D4: dw RoomData_Sprites_Empty\n #_09D7D6: dw RoomData_Sprites_Empty\n #_09D7D8: dw RoomData_Sprites_Room00D5\n #_09D7DA: dw RoomData_Sprites_Room00D6\n #_09D7DC: dw RoomData_Sprites_Empty\n #_09D7DE: dw RoomData_Sprites_Room00D8\n #_09D7E0: dw RoomData_Sprites_Room00D9\n #_09D7E2: dw RoomData_Sprites_Room00DA\n #_09D7E4: dw RoomData_Sprites_Room00DB\n #_09D7E6: dw RoomData_Sprites_Room00DC\n #_09D7E8: dw RoomData_Sprites_Empty\n #_09D7EA: dw RoomData_Sprites_Room00DE\n #_09D7EC: dw RoomData_Sprites_Room00DF\n #_09D7EE: dw RoomData_Sprites_Room00E0\n #_09D7F0: dw RoomData_Sprites_Room00E1\n #_09D7F2: dw RoomData_Sprites_Room00E2\n #_09D7F4: dw RoomData_Sprites_Room00E3\n #_09D7F6: dw RoomData_Sprites_Room00E4\n #_09D7F8: dw RoomData_Sprites_Room00E5\n #_09D7FA: dw RoomData_Sprites_Room00E6\n #_09D7FC: dw RoomData_Sprites_Room00E7\n #_09D7FE: dw RoomData_Sprites_Room00E8\n #_09D800: dw RoomData_Sprites_Empty\n #_09D802: dw RoomData_Sprites_Room00EA\n #_09D804: dw RoomData_Sprites_Room00EB\n #_09D806: dw RoomData_Sprites_Empty\n #_09D808: dw RoomData_Sprites_Empty\n #_09D80A: dw RoomData_Sprites_Room00EE\n #_09D80C: dw RoomData_Sprites_Room00EF\n #_09D80E: dw RoomData_Sprites_Room00F0\n #_09D810: dw RoomData_Sprites_Room00F1\n #_09D812: dw RoomData_Sprites_Empty\n #_09D814: dw RoomData_Sprites_Room00F3\n #_09D816: dw RoomData_Sprites_Room00F4\n #_09D818: dw RoomData_Sprites_Room00F5\n #_09D81A: dw RoomData_Sprites_Empty\n #_09D81C: dw RoomData_Sprites_Empty\n #_09D81E: dw RoomData_Sprites_Empty\n #_09D820: dw RoomData_Sprites_Room00F9\n #_09D822: dw RoomData_Sprites_Room00FA\n #_09D824: dw RoomData_Sprites_Room00FB\n #_09D826: dw RoomData_Sprites_Room00FC\n #_09D828: dw RoomData_Sprites_Room00FD\n #_09D82A: dw RoomData_Sprites_Room00FE\n #_09D82C: dw RoomData_Sprites_Room00FF\n #_09D82E: dw RoomData_Sprites_Room0100\n #_09D830: dw RoomData_Sprites_Room0101\n #_09D832: dw RoomData_Sprites_Room0102\n #_09D834: dw RoomData_Sprites_Room0103\n #_09D836: dw RoomData_Sprites_Room0104\n #_09D838: dw RoomData_Sprites_Room0105\n #_09D83A: dw RoomData_Sprites_Room0106\n #_09D83C: dw RoomData_Sprites_Room0107\n #_09D83E: dw RoomData_Sprites_Room0108\n #_09D840: dw RoomData_Sprites_Room0109\n #_09D842: dw RoomData_Sprites_Room010A\n #_09D844: dw RoomData_Sprites_Room010B\n #_09D846: dw RoomData_Sprites_Room010C\n #_09D848: dw RoomData_Sprites_Room010D\n #_09D84A: dw RoomData_Sprites_Room010E\n #_09D84C: dw RoomData_Sprites_Room010F\n #_09D84E: dw RoomData_Sprites_Room0110\n #_09D850: dw RoomData_Sprites_Room0111\n #_09D852: dw RoomData_Sprites_Room0112\n #_09D854: dw RoomData_Sprites_Empty\n #_09D856: dw RoomData_Sprites_Room0114\n #_09D858: dw RoomData_Sprites_Room0115\n #_09D85A: dw RoomData_Sprites_Room0116\n #_09D85C: dw RoomData_Sprites_Empty\n #_09D85E: dw RoomData_Sprites_Room0118\n #_09D860: dw RoomData_Sprites_Room0119\n #_09D862: dw RoomData_Sprites_Room011A\n #_09D864: dw RoomData_Sprites_Room011B\n #_09D866: dw RoomData_Sprites_Room011C\n #_09D868: dw RoomData_Sprites_Empty\n #_09D86A: dw RoomData_Sprites_Room011E\n #_09D86C: dw RoomData_Sprites_Room011F\n #_09D86E: dw RoomData_Sprites_Room0120\n #_09D870: dw RoomData_Sprites_Room0121\n #_09D872: dw RoomData_Sprites_Room0122\n #_09D874: dw RoomData_Sprites_Room0123\n #_09D876: dw RoomData_Sprites_Room0124\n #_09D878: dw RoomData_Sprites_Room0125\n #_09D87A: dw RoomData_Sprites_Room0126\n #_09D87C: dw RoomData_Sprites_Room0127\n #_09D87E: dw RoomData_Sprites_Empty\n #_09D880: dw RoomData_Sprites_Empty\n #_09D882: dw RoomData_Sprites_Empty\n #_09D884: dw RoomData_Sprites_Empty\n #_09D886: dw RoomData_Sprites_Empty\n #_09D888: dw RoomData_Sprites_Empty\n #_09D88A: dw RoomData_Sprites_Empty\n #_09D88C: dw RoomData_Sprites_Empty\n #_09D88E: dw RoomData_Sprites_Empty\n #_09D890: dw RoomData_Sprites_Empty\n #_09D892: dw RoomData_Sprites_Empty\n #_09D894: dw RoomData_Sprites_Empty\n #_09D896: dw RoomData_Sprites_Empty\n #_09D898: dw RoomData_Sprites_Empty\n #_09D89A: dw RoomData_Sprites_Empty\n #_09D89C: dw RoomData_Sprites_Empty\n #_09D89E: dw RoomData_Sprites_Empty\n #_09D8A0: dw RoomData_Sprites_Empty\n #_09D8A2: dw RoomData_Sprites_Empty\n #_09D8A4: dw RoomData_Sprites_Empty\n #_09D8A6: dw RoomData_Sprites_Empty\n #_09D8A8: dw RoomData_Sprites_Empty\n #_09D8AA: dw RoomData_Sprites_Empty\n #_09D8AC: dw RoomData_Sprites_Empty\n #_09D8AE: dw RoomData_Sprites_Empty\n #_09D8B0: dw RoomData_Sprites_Empty\n #_09D8B2: dw RoomData_Sprites_Empty\n #_09D8B4: dw RoomData_Sprites_Empty\n #_09D8B6: dw RoomData_Sprites_Empty\n #_09D8B8: dw RoomData_Sprites_Empty\n #_09D8BA: dw RoomData_Sprites_Empty\n #_09D8BC: dw RoomData_Sprites_Empty\n #_09D8BE: dw RoomData_Sprites_Empty\n #_09D8C0: dw RoomData_Sprites_Empty\n #_09D8C2: dw RoomData_Sprites_Empty\n #_09D8C4: dw RoomData_Sprites_Empty\n #_09D8C6: dw RoomData_Sprites_Empty\n #_09D8C8: dw RoomData_Sprites_Empty\n #_09D8CA: dw RoomData_Sprites_Empty\n #_09D8CC: dw RoomData_Sprites_Empty\n #_09D8CE: dw RoomData_Sprites_Empty\n #_09D8D0: dw RoomData_Sprites_Empty\n #_09D8D2: dw RoomData_Sprites_Empty\n #_09D8D4: dw RoomData_Sprites_Empty\n #_09D8D6: dw RoomData_Sprites_Empty\n #_09D8D8: dw RoomData_Sprites_Empty\n #_09D8DA: dw RoomData_Sprites_Empty\n #_09D8DC: dw RoomData_Sprites_Empty\n #_09D8DE: dw RoomData_Sprites_Empty\n #_09D8E0: dw RoomData_Sprites_Empty\n #_09D8E2: dw RoomData_Sprites_Empty\n #_09D8E4: dw RoomData_Sprites_Empty\n #_09D8E6: dw RoomData_Sprites_Empty\n #_09D8E8: dw RoomData_Sprites_Empty\n #_09D8EA: dw RoomData_Sprites_Empty\n #_09D8EC: dw RoomData_Sprites_Empty\n #_09D8EE: dw RoomData_Sprites_Empty\n #_09D8F0: dw RoomData_Sprites_Empty\n #_09D8F2: dw RoomData_Sprites_Empty\n #_09D8F4: dw RoomData_Sprites_Empty\n #_09D8F6: dw RoomData_Sprites_Empty\n #_09D8F8: dw RoomData_Sprites_Empty\n #_09D8FA: dw RoomData_Sprites_Empty\n #_09D8FC: dw RoomData_Sprites_Empty\n #_09D8FE: dw RoomData_Sprites_Empty\n #_09D900: dw RoomData_Sprites_Empty\n #_09D902: dw RoomData_Sprites_Empty\n #_09D904: dw RoomData_Sprites_Empty\n #_09D906: dw RoomData_Sprites_Empty\n #_09D908: dw RoomData_Sprites_Empty\n #_09D90A: dw RoomData_Sprites_Empty\n #_09D90C: dw RoomData_Sprites_Empty\n #_09D90E: dw RoomData_Sprites_Empty\n #_09D910: dw RoomData_Sprites_Empty\n #_09D912: dw RoomData_Sprites_Empty\n #_09D914: dw RoomData_Sprites_Empty\n #_09D916: dw RoomData_Sprites_Empty\n #_09D918: dw RoomData_Sprites_Empty\n #_09D91A: dw RoomData_Sprites_Empty\n #_09D91C: dw RoomData_Sprites_Empty\n #_09D91E: dw RoomData_Sprites_Empty\n #_09D920: dw RoomData_Sprites_Empty\n #_09D922: dw RoomData_Sprites_Empty\n #_09D924: dw RoomData_Sprites_Empty\n #_09D926: dw RoomData_Sprites_Empty\n #_09D928: dw RoomData_Sprites_Empty\n #_09D92A: dw RoomData_Sprites_Empty\n #_09D92C: dw RoomData_Sprites_Empty\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0000", + "code": "RoomData_Sprites_Room0000:\n #_09D92E: db $00 ; Unlayered OAM\n #_09D92F: db $05, $17, $D6 ; SPRITE D6 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09D932: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0002", + "code": "RoomData_Sprites_Room0002:\n #_09D933: db $00 ; Unlayered OAM\n #_09D934: db $85, $12, $6D ; SPRITE 6D | xy: { 0x120, 0x050, L } | s: 0x00\n #_09D937: db $86, $15, $6D ; SPRITE 6D | xy: { 0x150, 0x060, L } | s: 0x00\n #_09D93A: db $88, $0F, $6D ; SPRITE 6D | xy: { 0x0F0, 0x080, L } | s: 0x00\n #_09D93D: db $88, $10, $6D ; SPRITE 6D | xy: { 0x100, 0x080, L } | s: 0x00\n #_09D940: db $89, $18, $6D ; SPRITE 6D | xy: { 0x180, 0x090, L } | s: 0x00\n #_09D943: db $97, $EF, $06 ; OVERLORD 06 | xy: { 0x0F0, 0x170, L }\n #_09D946: db $98, $E9, $06 ; OVERLORD 06 | xy: { 0x090, 0x180, L }\n #_09D949: db $98, $EB, $06 ; OVERLORD 06 | xy: { 0x0B0, 0x180, L }\n #_09D94C: db $99, $EA, $06 ; OVERLORD 06 | xy: { 0x0A0, 0x190, L }\n #_09D94F: db $99, $EC, $06 ; OVERLORD 06 | xy: { 0x0C0, 0x190, L }\n #_09D952: db $9A, $E9, $06 ; OVERLORD 06 | xy: { 0x090, 0x1A0, L }\n #_09D955: db $9B, $EB, $06 ; OVERLORD 06 | xy: { 0x0B0, 0x1B0, L }\n #_09D958: db $97, $0A, $06 ; SPRITE 06 | xy: { 0x0A0, 0x170, L } | s: 0x00\n #_09D95B: db $97, $15, $04 ; SPRITE 04 | xy: { 0x150, 0x170, L } | s: 0x00\n #_09D95E: db $9A, $0D, $6D ; SPRITE 6D | xy: { 0x0D0, 0x1A0, L } | s: 0x00\n #_09D961: db $9A, $12, $6D ; SPRITE 6D | xy: { 0x120, 0x1A0, L } | s: 0x00\n #_09D964: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0004", + "code": "RoomData_Sprites_Room0004:\n #_09D965: db $00 ; Unlayered OAM\n #_09D966: db $04, $09, $1E ; SPRITE 1E | xy: { 0x090, 0x040, U } | s: 0x00\n #_09D969: db $04, $14, $5D ; SPRITE 5D | xy: { 0x140, 0x040, U } | s: 0x00\n #_09D96C: db $04, $1B, $60 ; SPRITE 60 | xy: { 0x1B0, 0x040, U } | s: 0x00\n #_09D96F: db $07, $05, $5F ; SPRITE 5F | xy: { 0x050, 0x070, U } | s: 0x00\n #_09D972: db $09, $15, $5F ; SPRITE 5F | xy: { 0x150, 0x090, U } | s: 0x00\n #_09D975: db $12, $E7, $16 ; OVERLORD 16 | xy: { 0x070, 0x120, U }\n #_09D978: db $15, $15, $04 ; SPRITE 04 | xy: { 0x150, 0x150, U } | s: 0x00\n #_09D97B: db $15, $1A, $06 ; SPRITE 06 | xy: { 0x1A0, 0x150, U } | s: 0x00\n #_09D97E: db $15, $F8, $1A ; OVERLORD 1A | xy: { 0x180, 0x150, U }\n #_09D981: db $15, $1C, $8F ; SPRITE 8F | xy: { 0x1C0, 0x150, U } | s: 0x00\n #_09D984: db $17, $F6, $1A ; OVERLORD 1A | xy: { 0x160, 0x170, U }\n #_09D987: db $17, $FA, $1A ; OVERLORD 1A | xy: { 0x1A0, 0x170, U }\n #_09D98A: db $18, $F8, $1A ; OVERLORD 1A | xy: { 0x180, 0x180, U }\n #_09D98D: db $1A, $1A, $8F ; SPRITE 8F | xy: { 0x1A0, 0x1A0, U } | s: 0x00\n #_09D990: db $1B, $15, $8F ; SPRITE 8F | xy: { 0x150, 0x1B0, U } | s: 0x00\n #_09D993: db $18, $07, $C7 ; SPRITE C7 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09D996: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0006", + "code": "RoomData_Sprites_Room0006:\n #_09D997: db $00 ; Unlayered OAM\n #_09D998: db $17, $07, $8C ; SPRITE 8C | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D99B: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D99E: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9A1: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9A4: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9A7: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9AA: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9AD: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9B0: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9B3: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9B6: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9B9: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9BC: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9BF: db $17, $07, $8D ; SPRITE 8D | xy: { 0x070, 0x170, U } | s: 0x00\n #_09D9C2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0007", + "code": "RoomData_Sprites_Room0007:\n #_09D9C3: db $00 ; Unlayered OAM\n #_09D9C4: db $0E, $12, $09 ; SPRITE 09 | xy: { 0x120, 0x0E0, U } | s: 0x00\n #_09D9C7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0008", + "code": "RoomData_Sprites_Room0008:\n #_09D9C8: db $00 ; Unlayered OAM\n #_09D9C9: db $16, $07, $C8 ; SPRITE C8 | xy: { 0x070, 0x160, U } | s: 0x00\n #_09D9CC: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0009", + "code": "RoomData_Sprites_Room0009:\n #_09D9CD: db $00 ; Unlayered OAM\n #_09D9CE: db $08, $07, $C5 ; SPRITE C5 | xy: { 0x070, 0x080, U } | s: 0x00\n #_09D9D1: db $08, $08, $C5 ; SPRITE C5 | xy: { 0x080, 0x080, U } | s: 0x00\n #_09D9D4: db $0B, $17, $15 ; SPRITE 15 | xy: { 0x170, 0x0B0, U } | s: 0x00\n #_09D9D7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room000A", + "code": "RoomData_Sprites_Room000A:\n #_09D9D8: db $00 ; Unlayered OAM\n #_09D9D9: db $08, $17, $8E ; SPRITE 8E | xy: { 0x170, 0x080, U } | s: 0x00\n #_09D9DC: db $09, $17, $8E ; SPRITE 8E | xy: { 0x170, 0x090, U } | s: 0x00\n #_09D9DF: db $09, $ED, $05 ; OVERLORD 05 | xy: { 0x0D0, 0x090, U }\n #_09D9E2: db $09, $F1, $05 ; OVERLORD 05 | xy: { 0x110, 0x090, U }\n #_09D9E5: db $0B, $F3, $17 ; OVERLORD 17 | xy: { 0x130, 0x0B0, U }\n #_09D9E8: db $0E, $ED, $05 ; OVERLORD 05 | xy: { 0x0D0, 0x0E0, U }\n #_09D9EB: db $0E, $F1, $05 ; OVERLORD 05 | xy: { 0x110, 0x0E0, U }\n #_09D9EE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room000B", + "code": "RoomData_Sprites_Room000B:\n #_09D9EF: db $00 ; Unlayered OAM\n #_09D9F0: db $04, $1C, $1E ; SPRITE 1E | xy: { 0x1C0, 0x040, U } | s: 0x00\n #_09D9F3: db $08, $07, $8E ; SPRITE 8E | xy: { 0x070, 0x080, U } | s: 0x00\n #_09D9F6: db $0B, $16, $8E ; SPRITE 8E | xy: { 0x160, 0x0B0, U } | s: 0x00\n #_09D9F9: db $0B, $1B, $8E ; SPRITE 8E | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09D9FC: db $16, $05, $8E ; SPRITE 8E | xy: { 0x050, 0x160, U } | s: 0x00\n #_09D9FF: db $16, $0A, $8E ; SPRITE 8E | xy: { 0x0A0, 0x160, U } | s: 0x00\n #_09DA02: db $19, $07, $8E ; SPRITE 8E | xy: { 0x070, 0x190, U } | s: 0x00\n #_09DA05: db $19, $08, $8E ; SPRITE 8E | xy: { 0x080, 0x190, U } | s: 0x00\n #_09DA08: db $1B, $06, $8E ; SPRITE 8E | xy: { 0x060, 0x1B0, U } | s: 0x00\n #_09DA0B: db $1B, $09, $8E ; SPRITE 8E | xy: { 0x090, 0x1B0, U } | s: 0x00\n #_09DA0E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room000D", + "code": "RoomData_Sprites_Room000D:\n #_09DA0F: db $00 ; Unlayered OAM\n #_09DA10: db $15, $07, $7A ; SPRITE 7A | xy: { 0x070, 0x150, U } | s: 0x00\n #_09DA13: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room000E", + "code": "RoomData_Sprites_Room000E:\n #_09DA14: db $00 ; Unlayered OAM\n #_09DA15: db $12, $16, $A1 ; SPRITE A1 | xy: { 0x160, 0x120, U } | s: 0x00\n #_09DA18: db $16, $05, $24 ; SPRITE 24 | xy: { 0x050, 0x160, U } | s: 0x00\n #_09DA1B: db $18, $05, $24 ; SPRITE 24 | xy: { 0x050, 0x180, U } | s: 0x00\n #_09DA1E: db $1A, $05, $24 ; SPRITE 24 | xy: { 0x050, 0x1A0, U } | s: 0x00\n #_09DA21: db $FE, $00, $E4 ; small key on above sprite\n #_09DA24: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0011", + "code": "RoomData_Sprites_Room0011:\n #_09DA25: db $00 ; Unlayered OAM\n #_09DA26: db $0A, $17, $6D ; SPRITE 6D | xy: { 0x170, 0x0A0, U } | s: 0x00\n #_09DA29: db $0A, $18, $6D ; SPRITE 6D | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09DA2C: db $0C, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x0C0, U } | s: 0x00\n #_09DA2F: db $0C, $18, $6F ; SPRITE 6F | xy: { 0x180, 0x0C0, U } | s: 0x00\n #_09DA32: db $11, $1C, $6D ; SPRITE 6D | xy: { 0x1C0, 0x110, U } | s: 0x00\n #_09DA35: db $12, $1C, $6D ; SPRITE 6D | xy: { 0x1C0, 0x120, U } | s: 0x00\n #_09DA38: db $16, $1A, $6D ; SPRITE 6D | xy: { 0x1A0, 0x160, U } | s: 0x00\n #_09DA3B: db $16, $1B, $6D ; SPRITE 6D | xy: { 0x1B0, 0x160, U } | s: 0x00\n #_09DA3E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0012", + "code": "RoomData_Sprites_Room0012:\n #_09DA3F: db $00 ; Unlayered OAM\n #_09DA40: db $07, $0F, $73 ; SPRITE 73 | xy: { 0x0F0, 0x070, U } | s: 0x00\n #_09DA43: db $06, $10, $76 ; SPRITE 76 | xy: { 0x100, 0x060, U } | s: 0x00\n #_09DA46: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0013", + "code": "RoomData_Sprites_Room0013:\n #_09DA47: db $00 ; Unlayered OAM\n #_09DA48: db $11, $14, $1E ; SPRITE 1E | xy: { 0x140, 0x110, U } | s: 0x00\n #_09DA4B: db $04, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x040, U } | s: 0x00\n #_09DA4E: db $04, $1A, $15 ; SPRITE 15 | xy: { 0x1A0, 0x040, U } | s: 0x00\n #_09DA51: db $05, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x050, U } | s: 0x00\n #_09DA54: db $05, $1A, $15 ; SPRITE 15 | xy: { 0x1A0, 0x050, U } | s: 0x00\n #_09DA57: db $16, $1B, $7C ; SPRITE 7C | xy: { 0x1B0, 0x160, U } | s: 0x00\n #_09DA5A: db $18, $16, $C7 ; SPRITE C7 | xy: { 0x160, 0x180, U } | s: 0x00\n #_09DA5D: db $FE, $00, $E4 ; small key on above sprite\n #_09DA60: db $18, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x180, U } | s: 0x00\n #_09DA63: db $1A, $14, $7C ; SPRITE 7C | xy: { 0x140, 0x1A0, U } | s: 0x00\n #_09DA66: db $1B, $1B, $D1 ; SPRITE D1 | xy: { 0x1B0, 0x1B0, U } | s: 0x00\n #_09DA69: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0014", + "code": "RoomData_Sprites_Room0014:\n #_09DA6A: db $01 ; Layered OAM\n #_09DA6B: db $84, $0C, $B0 ; SPRITE B0 | xy: { 0x0C0, 0x040, L } | s: 0x00\n #_09DA6E: db $8A, $0F, $AF ; SPRITE AF | xy: { 0x0F0, 0x0A0, L } | s: 0x00\n #_09DA71: db $8A, $19, $AE ; SPRITE AE | xy: { 0x190, 0x0A0, L } | s: 0x00\n #_09DA74: db $8D, $03, $AE ; SPRITE AE | xy: { 0x030, 0x0D0, L } | s: 0x00\n #_09DA77: db $8D, $1B, $AE ; SPRITE AE | xy: { 0x1B0, 0x0D0, L } | s: 0x00\n #_09DA7A: db $93, $0F, $AE ; SPRITE AE | xy: { 0x0F0, 0x130, L } | s: 0x00\n #_09DA7D: db $98, $08, $B0 ; SPRITE B0 | xy: { 0x080, 0x180, L } | s: 0x00\n #_09DA80: db $98, $17, $B1 ; SPRITE B1 | xy: { 0x170, 0x180, L } | s: 0x00\n #_09DA83: db $9B, $0C, $B0 ; SPRITE B0 | xy: { 0x0C0, 0x1B0, L } | s: 0x00\n #_09DA86: db $9B, $13, $B1 ; SPRITE B1 | xy: { 0x130, 0x1B0, L } | s: 0x00\n #_09DA89: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0015", + "code": "RoomData_Sprites_Room0015:\n #_09DA8A: db $01 ; Layered OAM\n #_09DA8B: db $8C, $04, $AE ; SPRITE AE | xy: { 0x040, 0x0C0, L } | s: 0x00\n #_09DA8E: db $91, $11, $AE ; SPRITE AE | xy: { 0x110, 0x110, L } | s: 0x00\n #_09DA91: db $97, $04, $AF ; SPRITE AF | xy: { 0x040, 0x170, L } | s: 0x00\n #_09DA94: db $9B, $16, $B1 ; SPRITE B1 | xy: { 0x160, 0x1B0, L } | s: 0x00\n #_09DA97: db $89, $0A, $8F ; SPRITE 8F | xy: { 0x0A0, 0x090, L } | s: 0x00\n #_09DA9A: db $89, $15, $8F ; SPRITE 8F | xy: { 0x150, 0x090, L } | s: 0x00\n #_09DA9D: db $8A, $09, $15 ; SPRITE 15 | xy: { 0x090, 0x0A0, L } | s: 0x00\n #_09DAA0: db $96, $18, $C7 ; SPRITE C7 | xy: { 0x180, 0x160, L } | s: 0x00\n #_09DAA3: db $97, $08, $15 ; SPRITE 15 | xy: { 0x080, 0x170, L } | s: 0x00\n #_09DAA6: db $97, $17, $15 ; SPRITE 15 | xy: { 0x170, 0x170, L } | s: 0x00\n #_09DAA9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0016", + "code": "RoomData_Sprites_Room0016:\n #_09DAAA: db $00 ; Unlayered OAM\n #_09DAAB: db $07, $15, $8F ; SPRITE 8F | xy: { 0x150, 0x070, U } | s: 0x00\n #_09DAAE: db $08, $15, $8F ; SPRITE 8F | xy: { 0x150, 0x080, U } | s: 0x00\n #_09DAB1: db $09, $15, $24 ; SPRITE 24 | xy: { 0x150, 0x090, U } | s: 0x00\n #_09DAB4: db $0A, $10, $8F ; SPRITE 8F | xy: { 0x100, 0x0A0, U } | s: 0x00\n #_09DAB7: db $98, $0C, $81 ; SPRITE 81 | xy: { 0x0C0, 0x180, L } | s: 0x00\n #_09DABA: db $9B, $07, $81 ; SPRITE 81 | xy: { 0x070, 0x1B0, L } | s: 0x00\n #_09DABD: db $9B, $14, $81 ; SPRITE 81 | xy: { 0x140, 0x1B0, L } | s: 0x00\n #_09DAC0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0017", + "code": "RoomData_Sprites_Room0017:\n #_09DAC1: db $00 ; Unlayered OAM\n #_09DAC2: db $0B, $07, $93 ; SPRITE 93 | xy: { 0x070, 0x0B0, U } | s: 0x00\n #_09DAC5: db $0E, $10, $93 ; SPRITE 93 | xy: { 0x100, 0x0E0, U } | s: 0x00\n #_09DAC8: db $16, $07, $93 ; SPRITE 93 | xy: { 0x070, 0x160, U } | s: 0x00\n #_09DACB: db $07, $15, $26 ; SPRITE 26 | xy: { 0x150, 0x070, U } | s: 0x00\n #_09DACE: db $09, $0B, $26 ; SPRITE 26 | xy: { 0x0B0, 0x090, U } | s: 0x00\n #_09DAD1: db $11, $06, $7E ; SPRITE 7E | xy: { 0x060, 0x110, U } | s: 0x00\n #_09DAD4: db $11, $12, $26 ; SPRITE 26 | xy: { 0x120, 0x110, U } | s: 0x00\n #_09DAD7: db $17, $0B, $26 ; SPRITE 26 | xy: { 0x0B0, 0x170, U } | s: 0x00\n #_09DADA: db $17, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x170, U } | s: 0x00\n #_09DADD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0019", + "code": "RoomData_Sprites_Room0019:\n #_09DADE: db $00 ; Unlayered OAM\n #_09DADF: db $0A, $16, $86 ; SPRITE 86 | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09DAE2: db $0E, $1A, $86 ; SPRITE 86 | xy: { 0x1A0, 0x0E0, U } | s: 0x00\n #_09DAE5: db $10, $16, $86 ; SPRITE 86 | xy: { 0x160, 0x100, U } | s: 0x00\n #_09DAE8: db $16, $18, $86 ; SPRITE 86 | xy: { 0x180, 0x160, U } | s: 0x00\n #_09DAEB: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room001A", + "code": "RoomData_Sprites_Room001A:\n #_09DAEC: db $00 ; Unlayered OAM\n #_09DAED: db $06, $08, $13 ; SPRITE 13 | xy: { 0x080, 0x060, U } | s: 0x00\n #_09DAF0: db $06, $16, $8E ; SPRITE 8E | xy: { 0x160, 0x060, U } | s: 0x00\n #_09DAF3: db $06, $19, $8E ; SPRITE 8E | xy: { 0x190, 0x060, U } | s: 0x00\n #_09DAF6: db $0A, $16, $8E ; SPRITE 8E | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09DAF9: db $0A, $19, $8E ; SPRITE 8E | xy: { 0x190, 0x0A0, U } | s: 0x00\n #_09DAFC: db $10, $07, $13 ; SPRITE 13 | xy: { 0x070, 0x100, U } | s: 0x00\n #_09DAFF: db $15, $16, $8A ; SPRITE 8A | xy: { 0x160, 0x150, U } | s: 0x00\n #_09DB02: db $17, $16, $8A ; SPRITE 8A | xy: { 0x160, 0x170, U } | s: 0x00\n #_09DB05: db $19, $15, $1C ; SPRITE 1C | xy: { 0x150, 0x190, U } | s: 0x00\n #_09DB08: db $19, $16, $8A ; SPRITE 8A | xy: { 0x160, 0x190, U } | s: 0x00\n #_09DB0B: db $1A, $E7, $0B ; OVERLORD 0B | xy: { 0x070, 0x1A0, U }\n #_09DB0E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room001B", + "code": "RoomData_Sprites_Room001B:\n #_09DB0F: db $00 ; Unlayered OAM\n #_09DB10: db $04, $07, $1E ; SPRITE 1E | xy: { 0x070, 0x040, U } | s: 0x00\n #_09DB13: db $04, $10, $38 ; SPRITE 38 | xy: { 0x100, 0x040, U } | s: 0x00\n #_09DB16: db $0C, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x0C0, U } | s: 0x00\n #_09DB19: db $14, $07, $84 ; SPRITE 84 | xy: { 0x070, 0x140, U } | s: 0x00\n #_09DB1C: db $1C, $03, $83 ; SPRITE 83 | xy: { 0x030, 0x1C0, U } | s: 0x00\n #_09DB1F: db $1C, $0C, $83 ; SPRITE 83 | xy: { 0x0C0, 0x1C0, U } | s: 0x00\n #_09DB22: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room001C", + "code": "RoomData_Sprites_Room001C:\n #_09DB23: db $00 ; Unlayered OAM\n #_09DB24: db $15, $14, $53 ; SPRITE 53 | xy: { 0x140, 0x150, U } | s: 0x00\n #_09DB27: db $15, $17, $53 ; SPRITE 53 | xy: { 0x170, 0x150, U } | s: 0x00\n #_09DB2A: db $15, $1A, $53 ; SPRITE 53 | xy: { 0x1A0, 0x150, U } | s: 0x00\n #_09DB2D: db $18, $1A, $53 ; SPRITE 53 | xy: { 0x1A0, 0x180, U } | s: 0x00\n #_09DB30: db $18, $17, $53 ; SPRITE 53 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09DB33: db $18, $14, $53 ; SPRITE 53 | xy: { 0x140, 0x180, U } | s: 0x00\n #_09DB36: db $18, $F7, $19 ; OVERLORD 19 | xy: { 0x170, 0x180, U }\n #_09DB39: db $07, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x070, U } | s: 0x00\n #_09DB3C: db $07, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x070, U } | s: 0x00\n #_09DB3F: db $08, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x080, U } | s: 0x00\n #_09DB42: db $08, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x080, U } | s: 0x00\n #_09DB45: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room001E", + "code": "RoomData_Sprites_Room001E:\n #_09DB46: db $00 ; Unlayered OAM\n #_09DB47: db $09, $1A, $1E ; SPRITE 1E | xy: { 0x1A0, 0x090, U } | s: 0x00\n #_09DB4A: db $05, $16, $23 ; SPRITE 23 | xy: { 0x160, 0x050, U } | s: 0x00\n #_09DB4D: db $05, $19, $23 ; SPRITE 23 | xy: { 0x190, 0x050, U } | s: 0x00\n #_09DB50: db $0A, $16, $23 ; SPRITE 23 | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09DB53: db $0A, $19, $23 ; SPRITE 23 | xy: { 0x190, 0x0A0, U } | s: 0x00\n #_09DB56: db $18, $08, $8F ; SPRITE 8F | xy: { 0x080, 0x180, U } | s: 0x00\n #_09DB59: db $1C, $05, $8F ; SPRITE 8F | xy: { 0x050, 0x1C0, U } | s: 0x00\n #_09DB5C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room001F", + "code": "RoomData_Sprites_Room001F:\n #_09DB5D: db $00 ; Unlayered OAM\n #_09DB5E: db $15, $04, $99 ; SPRITE 99 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09DB61: db $15, $09, $99 ; SPRITE 99 | xy: { 0x090, 0x150, U } | s: 0x00\n #_09DB64: db $16, $06, $15 ; SPRITE 15 | xy: { 0x060, 0x160, U } | s: 0x00\n #_09DB67: db $17, $07, $D1 ; SPRITE D1 | xy: { 0x070, 0x170, U } | s: 0x00\n #_09DB6A: db $17, $0A, $99 ; SPRITE 99 | xy: { 0x0A0, 0x170, U } | s: 0x00\n #_09DB6D: db $19, $0A, $99 ; SPRITE 99 | xy: { 0x0A0, 0x190, U } | s: 0x00\n #_09DB70: db $1B, $04, $99 ; SPRITE 99 | xy: { 0x040, 0x1B0, U } | s: 0x00\n #_09DB73: db $1B, $09, $99 ; SPRITE 99 | xy: { 0x090, 0x1B0, U } | s: 0x00\n #_09DB76: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0020", + "code": "RoomData_Sprites_Room0020:\n #_09DB77: db $00 ; Unlayered OAM\n #_09DB78: db $15, $07, $7A ; SPRITE 7A | xy: { 0x070, 0x150, U } | s: 0x00\n #_09DB7B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0021", + "code": "RoomData_Sprites_Room0021:\n #_09DB7C: db $00 ; Unlayered OAM\n #_09DB7D: db $06, $05, $6D ; SPRITE 6D | xy: { 0x050, 0x060, U } | s: 0x00\n #_09DB80: db $FE, $00, $E4 ; small key on above sprite\n #_09DB83: db $06, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x060, U } | s: 0x00\n #_09DB86: db $06, $18, $6F ; SPRITE 6F | xy: { 0x180, 0x060, U } | s: 0x00\n #_09DB89: db $09, $11, $6D ; SPRITE 6D | xy: { 0x110, 0x090, U } | s: 0x00\n #_09DB8C: db $0A, $0D, $6D ; SPRITE 6D | xy: { 0x0D0, 0x0A0, U } | s: 0x00\n #_09DB8F: db $14, $07, $6D ; SPRITE 6D | xy: { 0x070, 0x140, U } | s: 0x00\n #_09DB92: db $14, $0D, $6F ; SPRITE 6F | xy: { 0x0D0, 0x140, U } | s: 0x00\n #_09DB95: db $14, $12, $6F ; SPRITE 6F | xy: { 0x120, 0x140, U } | s: 0x00\n #_09DB98: db $18, $0D, $6D ; SPRITE 6D | xy: { 0x0D0, 0x180, U } | s: 0x00\n #_09DB9B: db $1C, $0A, $6D ; SPRITE 6D | xy: { 0x0A0, 0x1C0, U } | s: 0x00\n #_09DB9E: db $1C, $13, $6D ; SPRITE 6D | xy: { 0x130, 0x1C0, U } | s: 0x00\n #_09DBA1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0022", + "code": "RoomData_Sprites_Room0022:\n #_09DBA2: db $00 ; Unlayered OAM\n #_09DBA3: db $14, $06, $6D ; SPRITE 6D | xy: { 0x060, 0x140, U } | s: 0x00\n #_09DBA6: db $14, $08, $6D ; SPRITE 6D | xy: { 0x080, 0x140, U } | s: 0x00\n #_09DBA9: db $14, $11, $6D ; SPRITE 6D | xy: { 0x110, 0x140, U } | s: 0x00\n #_09DBAC: db $14, $12, $6D ; SPRITE 6D | xy: { 0x120, 0x140, U } | s: 0x00\n #_09DBAF: db $15, $11, $6D ; SPRITE 6D | xy: { 0x110, 0x150, U } | s: 0x00\n #_09DBB2: db $15, $12, $6D ; SPRITE 6D | xy: { 0x120, 0x150, U } | s: 0x00\n #_09DBB5: db $18, $09, $6D ; SPRITE 6D | xy: { 0x090, 0x180, U } | s: 0x00\n #_09DBB8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0023", + "code": "RoomData_Sprites_Room0023:\n #_09DBB9: db $00 ; Unlayered OAM\n #_09DBBA: db $14, $15, $97 ; SPRITE 97 | xy: { 0x150, 0x140, U } | s: 0x00\n #_09DBBD: db $14, $16, $97 ; SPRITE 97 | xy: { 0x160, 0x140, U } | s: 0x00\n #_09DBC0: db $14, $17, $97 ; SPRITE 97 | xy: { 0x170, 0x140, U } | s: 0x00\n #_09DBC3: db $14, $18, $97 ; SPRITE 97 | xy: { 0x180, 0x140, U } | s: 0x00\n #_09DBC6: db $14, $19, $97 ; SPRITE 97 | xy: { 0x190, 0x140, U } | s: 0x00\n #_09DBC9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0024", + "code": "RoomData_Sprites_Room0024:\n #_09DBCA: db $00 ; Unlayered OAM\n #_09DBCB: db $04, $13, $C5 ; SPRITE C5 | xy: { 0x130, 0x040, U } | s: 0x00\n #_09DBCE: db $04, $1C, $C5 ; SPRITE C5 | xy: { 0x1C0, 0x040, U } | s: 0x00\n #_09DBD1: db $06, $1B, $60 ; SPRITE 60 | xy: { 0x1B0, 0x060, U } | s: 0x00\n #_09DBD4: db $08, $05, $C7 ; SPRITE C7 | xy: { 0x050, 0x080, U } | s: 0x00\n #_09DBD7: db $08, $07, $C5 ; SPRITE C5 | xy: { 0x070, 0x080, U } | s: 0x00\n #_09DBDA: db $08, $0A, $C7 ; SPRITE C7 | xy: { 0x0A0, 0x080, U } | s: 0x00\n #_09DBDD: db $0C, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09DBE0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0025", + "code": "RoomData_Sprites_Room0025:\n #_09DBE1: db $00 ; Unlayered OAM\n #_09DBE2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0026", + "code": "RoomData_Sprites_Room0026:\n #_09DBE3: db $00 ; Unlayered OAM\n #_09DBE4: db $04, $03, $C5 ; SPRITE C5 | xy: { 0x030, 0x040, U } | s: 0x00\n #_09DBE7: db $05, $1A, $23 ; SPRITE 23 | xy: { 0x1A0, 0x050, U } | s: 0x00\n #_09DBEA: db $06, $05, $23 ; SPRITE 23 | xy: { 0x050, 0x060, U } | s: 0x00\n #_09DBED: db $06, $09, $A7 ; SPRITE A7 | xy: { 0x090, 0x060, U } | s: 0x00\n #_09DBF0: db $09, $04, $A7 ; SPRITE A7 | xy: { 0x040, 0x090, U } | s: 0x00\n #_09DBF3: db $0C, $0C, $C5 ; SPRITE C5 | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09DBF6: db $17, $06, $1C ; SPRITE 1C | xy: { 0x060, 0x170, U } | s: 0x00\n #_09DBF9: db $17, $19, $C6 ; SPRITE C6 | xy: { 0x190, 0x170, U } | s: 0x00\n #_09DBFC: db $18, $07, $23 ; SPRITE 23 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09DBFF: db $18, $15, $9A ; SPRITE 9A | xy: { 0x150, 0x180, U } | s: 0x00\n #_09DC02: db $19, $18, $24 ; SPRITE 24 | xy: { 0x180, 0x190, U } | s: 0x00\n #_09DC05: db $1A, $1C, $80 ; SPRITE 80 | xy: { 0x1C0, 0x1A0, U } | s: 0x00\n #_09DC08: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0027", + "code": "RoomData_Sprites_Room0027:\n #_09DC09: db $00 ; Unlayered OAM\n #_09DC0A: db $09, $17, $18 ; SPRITE 18 | xy: { 0x170, 0x090, U } | s: 0x00\n #_09DC0D: db $13, $18, $18 ; SPRITE 18 | xy: { 0x180, 0x130, U } | s: 0x00\n #_09DC10: db $13, $1B, $18 ; SPRITE 18 | xy: { 0x1B0, 0x130, U } | s: 0x00\n #_09DC13: db $1A, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x1A0, U } | s: 0x00\n #_09DC16: db $06, $0F, $5B ; SPRITE 5B | xy: { 0x0F0, 0x060, U } | s: 0x00\n #_09DC19: db $0E, $05, $86 ; SPRITE 86 | xy: { 0x050, 0x0E0, U } | s: 0x00\n #_09DC1C: db $16, $04, $86 ; SPRITE 86 | xy: { 0x040, 0x160, U } | s: 0x00\n #_09DC1F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0028", + "code": "RoomData_Sprites_Room0028:\n #_09DC20: db $00 ; Unlayered OAM\n #_09DC21: db $06, $0A, $9A ; SPRITE 9A | xy: { 0x0A0, 0x060, U } | s: 0x00\n #_09DC24: db $08, $08, $81 ; SPRITE 81 | xy: { 0x080, 0x080, U } | s: 0x00\n #_09DC27: db $0A, $0B, $81 ; SPRITE 81 | xy: { 0x0B0, 0x0A0, U } | s: 0x00\n #_09DC2A: db $0D, $07, $81 ; SPRITE 81 | xy: { 0x070, 0x0D0, U } | s: 0x00\n #_09DC2D: db $10, $08, $8A ; SPRITE 8A | xy: { 0x080, 0x100, U } | s: 0x00\n #_09DC30: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0029", + "code": "RoomData_Sprites_Room0029:\n #_09DC31: db $00 ; Unlayered OAM\n #_09DC32: db $16, $18, $88 ; SPRITE 88 | xy: { 0x180, 0x160, U } | s: 0x00\n #_09DC35: db $16, $E7, $07 ; OVERLORD 07 | xy: { 0x070, 0x160, U }\n #_09DC38: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room002A", + "code": "RoomData_Sprites_Room002A:\n #_09DC39: db $00 ; Unlayered OAM\n #_09DC3A: db $17, $10, $1E ; SPRITE 1E | xy: { 0x100, 0x170, U } | s: 0x00\n #_09DC3D: db $0F, $0F, $93 ; SPRITE 93 | xy: { 0x0F0, 0x0F0, U } | s: 0x00\n #_09DC40: db $08, $0D, $26 ; SPRITE 26 | xy: { 0x0D0, 0x080, U } | s: 0x00\n #_09DC43: db $0C, $07, $26 ; SPRITE 26 | xy: { 0x070, 0x0C0, U } | s: 0x00\n #_09DC46: db $0C, $10, $26 ; SPRITE 26 | xy: { 0x100, 0x0C0, U } | s: 0x00\n #_09DC49: db $0F, $0D, $26 ; SPRITE 26 | xy: { 0x0D0, 0x0F0, U } | s: 0x00\n #_09DC4C: db $11, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x110, U } | s: 0x00\n #_09DC4F: db $13, $0F, $26 ; SPRITE 26 | xy: { 0x0F0, 0x130, U } | s: 0x00\n #_09DC52: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room002B", + "code": "RoomData_Sprites_Room002B:\n #_09DC53: db $00 ; Unlayered OAM\n #_09DC54: db $11, $0A, $1E ; SPRITE 1E | xy: { 0x0A0, 0x110, U } | s: 0x00\n #_09DC57: db $0A, $0A, $1C ; SPRITE 1C | xy: { 0x0A0, 0x0A0, U } | s: 0x00\n #_09DC5A: db $17, $07, $23 ; SPRITE 23 | xy: { 0x070, 0x170, U } | s: 0x00\n #_09DC5D: db $17, $16, $E3 ; SPRITE E3 | xy: { 0x160, 0x170, U } | s: 0x00\n #_09DC60: db $18, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09DC63: db $1A, $05, $23 ; SPRITE 23 | xy: { 0x050, 0x1A0, U } | s: 0x00\n #_09DC66: db $1A, $0A, $23 ; SPRITE 23 | xy: { 0x0A0, 0x1A0, U } | s: 0x00\n #_09DC69: db $1A, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09DC6C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room002C", + "code": "RoomData_Sprites_Room002C:\n #_09DC6D: db $00 ; Unlayered OAM\n #_09DC6E: db $05, $17, $C8 ; SPRITE C8 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09DC71: db $04, $09, $E3 ; SPRITE E3 | xy: { 0x090, 0x040, U } | s: 0x00\n #_09DC74: db $05, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x050, U } | s: 0x00\n #_09DC77: db $07, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x070, U } | s: 0x00\n #_09DC7A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room002E", + "code": "RoomData_Sprites_Room002E:\n #_09DC7B: db $00 ; Unlayered OAM\n #_09DC7C: db $06, $14, $99 ; SPRITE 99 | xy: { 0x140, 0x060, U } | s: 0x00\n #_09DC7F: db $06, $1C, $99 ; SPRITE 99 | xy: { 0x1C0, 0x060, U } | s: 0x00\n #_09DC82: db $08, $16, $99 ; SPRITE 99 | xy: { 0x160, 0x080, U } | s: 0x00\n #_09DC85: db $08, $19, $99 ; SPRITE 99 | xy: { 0x190, 0x080, U } | s: 0x00\n #_09DC88: db $0B, $14, $99 ; SPRITE 99 | xy: { 0x140, 0x0B0, U } | s: 0x00\n #_09DC8B: db $0B, $1B, $99 ; SPRITE 99 | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09DC8E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0030", + "code": "RoomData_Sprites_Room0030:\n #_09DC8F: db $00 ; Unlayered OAM\n #_09DC90: db $05, $07, $C1 ; SPRITE C1 | xy: { 0x070, 0x050, U } | s: 0x00\n #_09DC93: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0031", + "code": "RoomData_Sprites_Room0031:\n #_09DC94: db $00 ; Unlayered OAM\n #_09DC95: db $1A, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x1A0, U } | s: 0x00\n #_09DC98: db $0B, $16, $1E ; SPRITE 1E | xy: { 0x160, 0x0B0, U } | s: 0x00\n #_09DC9B: db $05, $15, $26 ; SPRITE 26 | xy: { 0x150, 0x050, U } | s: 0x00\n #_09DC9E: db $06, $05, $26 ; SPRITE 26 | xy: { 0x050, 0x060, U } | s: 0x00\n #_09DCA1: db $09, $03, $26 ; SPRITE 26 | xy: { 0x030, 0x090, U } | s: 0x00\n #_09DCA4: db $0C, $0B, $26 ; SPRITE 26 | xy: { 0x0B0, 0x0C0, U } | s: 0x00\n #_09DCA7: db $15, $03, $26 ; SPRITE 26 | xy: { 0x030, 0x150, U } | s: 0x00\n #_09DCAA: db $15, $1B, $26 ; SPRITE 26 | xy: { 0x1B0, 0x150, U } | s: 0x00\n #_09DCAD: db $16, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x160, U } | s: 0x00\n #_09DCB0: db $18, $03, $26 ; SPRITE 26 | xy: { 0x030, 0x180, U } | s: 0x00\n #_09DCB3: db $19, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x190, U } | s: 0x00\n #_09DCB6: db $1C, $09, $26 ; SPRITE 26 | xy: { 0x090, 0x1C0, U } | s: 0x00\n #_09DCB9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0032", + "code": "RoomData_Sprites_Room0032:\n #_09DCBA: db $00 ; Unlayered OAM\n #_09DCBB: db $0D, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x0D0, U } | s: 0x00\n #_09DCBE: db $0D, $0F, $6E ; SPRITE 6E | xy: { 0x0F0, 0x0D0, U } | s: 0x00\n #_09DCC1: db $0D, $13, $6F ; SPRITE 6F | xy: { 0x130, 0x0D0, U } | s: 0x00\n #_09DCC4: db $0E, $10, $6E ; SPRITE 6E | xy: { 0x100, 0x0E0, U } | s: 0x00\n #_09DCC7: db $0F, $12, $6E ; SPRITE 6E | xy: { 0x120, 0x0F0, U } | s: 0x00\n #_09DCCA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0033", + "code": "RoomData_Sprites_Room0033:\n #_09DCCB: db $00 ; Unlayered OAM\n #_09DCCC: db $17, $06, $54 ; SPRITE 54 | xy: { 0x060, 0x170, U } | s: 0x00\n #_09DCCF: db $17, $09, $54 ; SPRITE 54 | xy: { 0x090, 0x170, U } | s: 0x00\n #_09DCD2: db $19, $07, $54 ; SPRITE 54 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09DCD5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0034", + "code": "RoomData_Sprites_Room0034:\n #_09DCD6: db $00 ; Unlayered OAM\n #_09DCD7: db $0B, $0F, $81 ; SPRITE 81 | xy: { 0x0F0, 0x0B0, U } | s: 0x00\n #_09DCDA: db $12, $10, $81 ; SPRITE 81 | xy: { 0x100, 0x120, U } | s: 0x00\n #_09DCDD: db $15, $0F, $9A ; SPRITE 9A | xy: { 0x0F0, 0x150, U } | s: 0x00\n #_09DCE0: db $17, $19, $80 ; SPRITE 80 | xy: { 0x190, 0x170, U } | s: 0x00\n #_09DCE3: db $18, $03, $8F ; SPRITE 8F | xy: { 0x030, 0x180, U } | s: 0x00\n #_09DCE6: db $18, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x180, U } | s: 0x00\n #_09DCE9: db $1A, $16, $A7 ; SPRITE A7 | xy: { 0x160, 0x1A0, U } | s: 0x00\n #_09DCEC: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0035", + "code": "RoomData_Sprites_Room0035:\n #_09DCED: db $00 ; Unlayered OAM\n #_09DCEE: db $06, $16, $1E ; SPRITE 1E | xy: { 0x160, 0x060, U } | s: 0x00\n #_09DCF1: db $05, $14, $21 ; SPRITE 21 | xy: { 0x140, 0x050, U } | s: 0x00\n #_09DCF4: db $05, $18, $23 ; SPRITE 23 | xy: { 0x180, 0x050, U } | s: 0x00\n #_09DCF7: db $09, $13, $8A ; SPRITE 8A | xy: { 0x130, 0x090, U } | s: 0x00\n #_09DCFA: db $0B, $14, $A7 ; SPRITE A7 | xy: { 0x140, 0x0B0, U } | s: 0x00\n #_09DCFD: db $14, $07, $8F ; SPRITE 8F | xy: { 0x070, 0x140, U } | s: 0x00\n #_09DD00: db $18, $14, $A7 ; SPRITE A7 | xy: { 0x140, 0x180, U } | s: 0x00\n #_09DD03: db $19, $16, $80 ; SPRITE 80 | xy: { 0x160, 0x190, U } | s: 0x00\n #_09DD06: db $1A, $17, $C6 ; SPRITE C6 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09DD09: db $1B, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09DD0C: db $1C, $1B, $A7 ; SPRITE A7 | xy: { 0x1B0, 0x1C0, U } | s: 0x00\n #_09DD0F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0036", + "code": "RoomData_Sprites_Room0036:\n #_09DD10: db $00 ; Unlayered OAM\n #_09DD11: db $02, $F7, $12 ; OVERLORD 12 | xy: { 0x170, 0x020, U }\n #_09DD14: db $0A, $0B, $81 ; SPRITE 81 | xy: { 0x0B0, 0x0A0, U } | s: 0x00\n #_09DD17: db $0A, $14, $81 ; SPRITE 81 | xy: { 0x140, 0x0A0, U } | s: 0x00\n #_09DD1A: db $0B, $15, $C5 ; SPRITE C5 | xy: { 0x150, 0x0B0, U } | s: 0x00\n #_09DD1D: db $0D, $E1, $10 ; OVERLORD 10 | xy: { 0x010, 0x0D0, U }\n #_09DD20: db $13, $14, $9A ; SPRITE 9A | xy: { 0x140, 0x130, U } | s: 0x00\n #_09DD23: db $13, $FE, $11 ; OVERLORD 11 | xy: { 0x1E0, 0x130, U }\n #_09DD26: db $14, $09, $81 ; SPRITE 81 | xy: { 0x090, 0x140, U } | s: 0x00\n #_09DD29: db $17, $12, $81 ; SPRITE 81 | xy: { 0x120, 0x170, U } | s: 0x00\n #_09DD2C: db $1E, $EA, $13 ; OVERLORD 13 | xy: { 0x0A0, 0x1E0, U }\n #_09DD2F: db $1E, $F4, $13 ; OVERLORD 13 | xy: { 0x140, 0x1E0, U }\n #_09DD32: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0037", + "code": "RoomData_Sprites_Room0037:\n #_09DD33: db $00 ; Unlayered OAM\n #_09DD34: db $04, $0B, $21 ; SPRITE 21 | xy: { 0x0B0, 0x040, U } | s: 0x00\n #_09DD37: db $06, $05, $A7 ; SPRITE A7 | xy: { 0x050, 0x060, U } | s: 0x00\n #_09DD3A: db $08, $17, $8F ; SPRITE 8F | xy: { 0x170, 0x080, U } | s: 0x00\n #_09DD3D: db $08, $1A, $8F ; SPRITE 8F | xy: { 0x1A0, 0x080, U } | s: 0x00\n #_09DD40: db $09, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x090, U } | s: 0x00\n #_09DD43: db $14, $15, $80 ; SPRITE 80 | xy: { 0x150, 0x140, U } | s: 0x00\n #_09DD46: db $17, $17, $A7 ; SPRITE A7 | xy: { 0x170, 0x170, U } | s: 0x00\n #_09DD49: db $19, $13, $24 ; SPRITE 24 | xy: { 0x130, 0x190, U } | s: 0x00\n #_09DD4C: db $1A, $17, $C6 ; SPRITE C6 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09DD4F: db $1C, $15, $23 ; SPRITE 23 | xy: { 0x150, 0x1C0, U } | s: 0x00\n #_09DD52: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0038", + "code": "RoomData_Sprites_Room0038:\n #_09DD53: db $00 ; Unlayered OAM\n #_09DD54: db $06, $0C, $81 ; SPRITE 81 | xy: { 0x0C0, 0x060, U } | s: 0x00\n #_09DD57: db $0A, $07, $81 ; SPRITE 81 | xy: { 0x070, 0x0A0, U } | s: 0x00\n #_09DD5A: db $0C, $0C, $9A ; SPRITE 9A | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09DD5D: db $10, $0C, $C5 ; SPRITE C5 | xy: { 0x0C0, 0x100, U } | s: 0x00\n #_09DD60: db $14, $06, $9A ; SPRITE 9A | xy: { 0x060, 0x140, U } | s: 0x00\n #_09DD63: db $18, $0C, $9A ; SPRITE 9A | xy: { 0x0C0, 0x180, U } | s: 0x00\n #_09DD66: db $1A, $07, $81 ; SPRITE 81 | xy: { 0x070, 0x1A0, U } | s: 0x00\n #_09DD69: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0039", + "code": "RoomData_Sprites_Room0039:\n #_09DD6A: db $00 ; Unlayered OAM\n #_09DD6B: db $18, $04, $18 ; SPRITE 18 | xy: { 0x040, 0x180, U } | s: 0x00\n #_09DD6E: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09DD71: db $15, $05, $8B ; SPRITE 8B | xy: { 0x050, 0x150, U } | s: 0x00\n #_09DD74: db $FE, $00, $E4 ; small key on above sprite\n #_09DD77: db $15, $09, $13 ; SPRITE 13 | xy: { 0x090, 0x150, U } | s: 0x00\n #_09DD7A: db $16, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x160, U } | s: 0x00\n #_09DD7D: db $18, $0B, $26 ; SPRITE 26 | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09DD80: db $1A, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09DD83: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003A", + "code": "RoomData_Sprites_Room003A:\n #_09DD84: db $00 ; Unlayered OAM\n #_09DD85: db $11, $0E, $8E ; SPRITE 8E | xy: { 0x0E0, 0x110, U } | s: 0x00\n #_09DD88: db $11, $11, $8E ; SPRITE 8E | xy: { 0x110, 0x110, U } | s: 0x00\n #_09DD8B: db $14, $04, $C5 ; SPRITE C5 | xy: { 0x040, 0x140, U } | s: 0x00\n #_09DD8E: db $14, $0A, $24 ; SPRITE 24 | xy: { 0x0A0, 0x140, U } | s: 0x00\n #_09DD91: db $14, $15, $24 ; SPRITE 24 | xy: { 0x150, 0x140, U } | s: 0x00\n #_09DD94: db $14, $1B, $C5 ; SPRITE C5 | xy: { 0x1B0, 0x140, U } | s: 0x00\n #_09DD97: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003B", + "code": "RoomData_Sprites_Room003B:\n #_09DD98: db $00 ; Unlayered OAM\n #_09DD99: db $06, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x060, U } | s: 0x00\n #_09DD9C: db $09, $07, $23 ; SPRITE 23 | xy: { 0x070, 0x090, U } | s: 0x00\n #_09DD9F: db $0D, $0C, $8A ; SPRITE 8A | xy: { 0x0C0, 0x0D0, U } | s: 0x00\n #_09DDA2: db $0F, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x0F0, U } | s: 0x00\n #_09DDA5: db $13, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x130, U } | s: 0x00\n #_09DDA8: db $16, $07, $24 ; SPRITE 24 | xy: { 0x070, 0x160, U } | s: 0x00\n #_09DDAB: db $1A, $0C, $8A ; SPRITE 8A | xy: { 0x0C0, 0x1A0, U } | s: 0x00\n #_09DDAE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003C", + "code": "RoomData_Sprites_Room003C:\n #_09DDAF: db $00 ; Unlayered OAM\n #_09DDB0: db $08, $09, $26 ; SPRITE 26 | xy: { 0x090, 0x080, U } | s: 0x00\n #_09DDB3: db $14, $0A, $24 ; SPRITE 24 | xy: { 0x0A0, 0x140, U } | s: 0x00\n #_09DDB6: db $14, $12, $24 ; SPRITE 24 | xy: { 0x120, 0x140, U } | s: 0x00\n #_09DDB9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003D", + "code": "RoomData_Sprites_Room003D:\n #_09DDBA: db $00 ; Unlayered OAM\n #_09DDBB: db $17, $05, $1E ; SPRITE 1E | xy: { 0x050, 0x170, U } | s: 0x00\n #_09DDBE: db $19, $0A, $1E ; SPRITE 1E | xy: { 0x0A0, 0x190, U } | s: 0x00\n #_09DDC1: db $07, $17, $13 ; SPRITE 13 | xy: { 0x170, 0x070, U } | s: 0x00\n #_09DDC4: db $FE, $00, $E4 ; small key on above sprite\n #_09DDC7: db $07, $18, $13 ; SPRITE 13 | xy: { 0x180, 0x070, U } | s: 0x00\n #_09DDCA: db $08, $15, $C5 ; SPRITE C5 | xy: { 0x150, 0x080, U } | s: 0x00\n #_09DDCD: db $08, $1A, $C5 ; SPRITE C5 | xy: { 0x1A0, 0x080, U } | s: 0x00\n #_09DDD0: db $0A, $04, $8A ; SPRITE 8A | xy: { 0x040, 0x0A0, U } | s: 0x00\n #_09DDD3: db $0B, $03, $7D ; SPRITE 7D | xy: { 0x030, 0x0B0, U } | s: 0x00\n #_09DDD6: db $15, $FB, $0A ; OVERLORD 0A | xy: { 0x1B0, 0x150, U }\n #_09DDD9: db $16, $13, $5C ; SPRITE 5C | xy: { 0x130, 0x160, U } | s: 0x00\n #_09DDDC: db $16, $1C, $5B ; SPRITE 5B | xy: { 0x1C0, 0x160, U } | s: 0x00\n #_09DDDF: db $16, $09, $5B ; SPRITE 5B | xy: { 0x090, 0x160, U } | s: 0x00\n #_09DDE2: db $17, $07, $D1 ; SPRITE D1 | xy: { 0x070, 0x170, U } | s: 0x00\n #_09DDE5: db $17, $08, $15 ; SPRITE 15 | xy: { 0x080, 0x170, U } | s: 0x00\n #_09DDE8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003E", + "code": "RoomData_Sprites_Room003E:\n #_09DDE9: db $00 ; Unlayered OAM\n #_09DDEA: db $15, $06, $1E ; SPRITE 1E | xy: { 0x060, 0x150, U } | s: 0x00\n #_09DDED: db $04, $19, $91 ; SPRITE 91 | xy: { 0x190, 0x040, U } | s: 0x00\n #_09DDF0: db $0B, $16, $91 ; SPRITE 91 | xy: { 0x160, 0x0B0, U } | s: 0x00\n #_09DDF3: db $12, $05, $9D ; SPRITE 9D | xy: { 0x050, 0x120, U } | s: 0x00\n #_09DDF6: db $12, $0E, $9D ; SPRITE 9D | xy: { 0x0E0, 0x120, U } | s: 0x00\n #_09DDF9: db $12, $F0, $07 ; OVERLORD 07 | xy: { 0x100, 0x120, U }\n #_09DDFC: db $12, $12, $9D ; SPRITE 9D | xy: { 0x120, 0x120, U } | s: 0x00\n #_09DDFF: db $12, $15, $9D ; SPRITE 9D | xy: { 0x150, 0x120, U } | s: 0x00\n #_09DE02: db $16, $07, $24 ; SPRITE 24 | xy: { 0x070, 0x160, U } | s: 0x00\n #_09DE05: db $18, $11, $24 ; SPRITE 24 | xy: { 0x110, 0x180, U } | s: 0x00\n #_09DE08: db $FE, $00, $E4 ; small key on above sprite\n #_09DE0B: db $19, $15, $24 ; SPRITE 24 | xy: { 0x150, 0x190, U } | s: 0x00\n #_09DE0E: db $1A, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x1A0, U } | s: 0x00\n #_09DE11: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room003F", + "code": "RoomData_Sprites_Room003F:\n #_09DE12: db $00 ; Unlayered OAM\n #_09DE13: db $15, $04, $04 ; SPRITE 04 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09DE16: db $16, $0C, $91 ; SPRITE 91 | xy: { 0x0C0, 0x160, U } | s: 0x00\n #_09DE19: db $15, $13, $04 ; SPRITE 04 | xy: { 0x130, 0x150, U } | s: 0x00\n #_09DE1C: db $17, $04, $91 ; SPRITE 91 | xy: { 0x040, 0x170, U } | s: 0x00\n #_09DE1F: db $18, $08, $D1 ; SPRITE D1 | xy: { 0x080, 0x180, U } | s: 0x00\n #_09DE22: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0040", + "code": "RoomData_Sprites_Room0040:\n #_09DE23: db $00 ; Unlayered OAM\n #_09DE24: db $88, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x080, L } | s: 0x00\n #_09DE27: db $EF, $69, $41 ; SPRITE 41 | xy: { 0x090, 0x0F0, L } | s: 0x1B\n #_09DE2A: db $95, $18, $1C ; SPRITE 1C | xy: { 0x180, 0x150, L } | s: 0x00\n #_09DE2D: db $98, $1B, $43 ; SPRITE 43 | xy: { 0x1B0, 0x180, L } | s: 0x00\n #_09DE30: db $9A, $17, $46 ; SPRITE 46 | xy: { 0x170, 0x1A0, L } | s: 0x00\n #_09DE33: db $9A, $19, $46 ; SPRITE 46 | xy: { 0x190, 0x1A0, L } | s: 0x00\n #_09DE36: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_09DE37", + "code": "UNREACHABLE_09DE37:\n #_09DE37: db $00 ; Unlayered OAM\n #_09DE38: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0041", + "code": "RoomData_Sprites_Room0041:\n #_09DE39: db $00 ; Unlayered OAM\n #_09DE3A: db $0A, $11, $6D ; SPRITE 6D | xy: { 0x110, 0x0A0, U } | s: 0x00\n #_09DE3D: db $0B, $1B, $6D ; SPRITE 6D | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09DE40: db $0D, $0F, $6D ; SPRITE 6D | xy: { 0x0F0, 0x0D0, U } | s: 0x00\n #_09DE43: db $15, $06, $6D ; SPRITE 6D | xy: { 0x060, 0x150, U } | s: 0x00\n #_09DE46: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0042", + "code": "RoomData_Sprites_Room0042:\n #_09DE47: db $00 ; Unlayered OAM\n #_09DE48: db $06, $12, $6E ; SPRITE 6E | xy: { 0x120, 0x060, U } | s: 0x00\n #_09DE4B: db $06, $13, $6E ; SPRITE 6E | xy: { 0x130, 0x060, U } | s: 0x00\n #_09DE4E: db $06, $14, $6E ; SPRITE 6E | xy: { 0x140, 0x060, U } | s: 0x00\n #_09DE51: db $07, $12, $6E ; SPRITE 6E | xy: { 0x120, 0x070, U } | s: 0x00\n #_09DE54: db $07, $13, $6E ; SPRITE 6E | xy: { 0x130, 0x070, U } | s: 0x00\n #_09DE57: db $07, $14, $6E ; SPRITE 6E | xy: { 0x140, 0x070, U } | s: 0x00\n #_09DE5A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0043", + "code": "RoomData_Sprites_Room0043:\n #_09DE5B: db $00 ; Unlayered OAM\n #_09DE5C: db $06, $0C, $84 ; SPRITE 84 | xy: { 0x0C0, 0x060, U } | s: 0x00\n #_09DE5F: db $18, $F7, $14 ; OVERLORD 14 | xy: { 0x170, 0x180, U }\n #_09DE62: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0044", + "code": "RoomData_Sprites_Room0044:\n #_09DE63: db $00 ; Unlayered OAM\n #_09DE64: db $06, $09, $93 ; SPRITE 93 | xy: { 0x090, 0x060, U } | s: 0x00\n #_09DE67: db $08, $05, $93 ; SPRITE 93 | xy: { 0x050, 0x080, U } | s: 0x00\n #_09DE6A: db $04, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x040, U } | s: 0x00\n #_09DE6D: db $08, $03, $24 ; SPRITE 24 | xy: { 0x030, 0x080, U } | s: 0x00\n #_09DE70: db $08, $17, $8F ; SPRITE 8F | xy: { 0x170, 0x080, U } | s: 0x00\n #_09DE73: db $0C, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x0C0, U } | s: 0x00\n #_09DE76: db $0F, $17, $23 ; SPRITE 23 | xy: { 0x170, 0x0F0, U } | s: 0x00\n #_09DE79: db $15, $EB, $0A ; OVERLORD 0A | xy: { 0x0B0, 0x150, U }\n #_09DE7C: db $16, $18, $24 ; SPRITE 24 | xy: { 0x180, 0x160, U } | s: 0x00\n #_09DE7F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0045", + "code": "RoomData_Sprites_Room0045:\n #_09DE80: db $00 ; Unlayered OAM\n #_09DE81: db $06, $19, $B7 ; SPRITE B7 | xy: { 0x190, 0x060, U } | s: 0x00\n #_09DE84: db $06, $06, $A6 ; SPRITE A6 | xy: { 0x060, 0x060, U } | s: 0x00\n #_09DE87: db $0B, $04, $A5 ; SPRITE A5 | xy: { 0x040, 0x0B0, U } | s: 0x00\n #_09DE8A: db $0B, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x0B0, U } | s: 0x00\n #_09DE8D: db $0B, $17, $D1 ; SPRITE D1 | xy: { 0x170, 0x0B0, U } | s: 0x00\n #_09DE90: db $0C, $18, $A5 ; SPRITE A5 | xy: { 0x180, 0x0C0, U } | s: 0x00\n #_09DE93: db $0C, $1A, $A5 ; SPRITE A5 | xy: { 0x1A0, 0x0C0, U } | s: 0x00\n #_09DE96: db $11, $18, $A5 ; SPRITE A5 | xy: { 0x180, 0x110, U } | s: 0x00\n #_09DE99: db $18, $16, $8F ; SPRITE 8F | xy: { 0x160, 0x180, U } | s: 0x00\n #_09DE9C: db $1B, $19, $A6 ; SPRITE A6 | xy: { 0x190, 0x1B0, U } | s: 0x00\n #_09DE9F: db $1C, $07, $A6 ; SPRITE A6 | xy: { 0x070, 0x1C0, U } | s: 0x00\n #_09DEA2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0046", + "code": "RoomData_Sprites_Room0046:\n #_09DEA3: db $00 ; Unlayered OAM\n #_09DEA4: db $05, $16, $81 ; SPRITE 81 | xy: { 0x160, 0x050, U } | s: 0x00\n #_09DEA7: db $06, $FB, $11 ; OVERLORD 11 | xy: { 0x1B0, 0x060, U }\n #_09DEAA: db $1A, $09, $81 ; SPRITE 81 | xy: { 0x090, 0x1A0, U } | s: 0x00\n #_09DEAD: db $1A, $FB, $11 ; OVERLORD 11 | xy: { 0x1B0, 0x1A0, U }\n #_09DEB0: db $1B, $11, $81 ; SPRITE 81 | xy: { 0x110, 0x1B0, U } | s: 0x00\n #_09DEB3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0047", + "code": "RoomData_Sprites_Room0047:\n #_09DEB4: db $00 ; Unlayered OAM\n #_09DEB5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0049", + "code": "RoomData_Sprites_Room0049:\n #_09DEB6: db $00 ; Unlayered OAM\n #_09DEB7: db $05, $0B, $18 ; SPRITE 18 | xy: { 0x0B0, 0x050, U } | s: 0x00\n #_09DEBA: db $0B, $04, $18 ; SPRITE 18 | xy: { 0x040, 0x0B0, U } | s: 0x00\n #_09DEBD: db $0C, $09, $18 ; SPRITE 18 | xy: { 0x090, 0x0C0, U } | s: 0x00\n #_09DEC0: db $06, $08, $D1 ; SPRITE D1 | xy: { 0x080, 0x060, U } | s: 0x00\n #_09DEC3: db $08, $07, $8B ; SPRITE 8B | xy: { 0x070, 0x080, U } | s: 0x00\n #_09DEC6: db $0B, $17, $8B ; SPRITE 8B | xy: { 0x170, 0x0B0, U } | s: 0x00\n #_09DEC9: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09DECC: db $10, $17, $8B ; SPRITE 8B | xy: { 0x170, 0x100, U } | s: 0x00\n #_09DECF: db $14, $16, $8B ; SPRITE 8B | xy: { 0x160, 0x140, U } | s: 0x00\n #_09DED2: db $16, $09, $24 ; SPRITE 24 | xy: { 0x090, 0x160, U } | s: 0x00\n #_09DED5: db $17, $0A, $23 ; SPRITE 23 | xy: { 0x0A0, 0x170, U } | s: 0x00\n #_09DED8: db $18, $07, $24 ; SPRITE 24 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09DEDB: db $18, $1A, $8B ; SPRITE 8B | xy: { 0x1A0, 0x180, U } | s: 0x00\n #_09DEDE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004A", + "code": "RoomData_Sprites_Room004A:\n #_09DEDF: db $00 ; Unlayered OAM\n #_09DEE0: db $07, $14, $1C ; SPRITE 1C | xy: { 0x140, 0x070, U } | s: 0x00\n #_09DEE3: db $08, $08, $13 ; SPRITE 13 | xy: { 0x080, 0x080, U } | s: 0x00\n #_09DEE6: db $08, $18, $13 ; SPRITE 13 | xy: { 0x180, 0x080, U } | s: 0x00\n #_09DEE9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004B", + "code": "RoomData_Sprites_Room004B:\n #_09DEEA: db $00 ; Unlayered OAM\n #_09DEEB: db $04, $07, $84 ; SPRITE 84 | xy: { 0x070, 0x040, U } | s: 0x00\n #_09DEEE: db $05, $17, $15 ; SPRITE 15 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09DEF1: db $06, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x060, U } | s: 0x00\n #_09DEF4: db $08, $04, $83 ; SPRITE 83 | xy: { 0x040, 0x080, U } | s: 0x00\n #_09DEF7: db $08, $0B, $83 ; SPRITE 83 | xy: { 0x0B0, 0x080, U } | s: 0x00\n #_09DEFA: db $18, $0F, $24 ; SPRITE 24 | xy: { 0x0F0, 0x180, U } | s: 0x00\n #_09DEFD: db $19, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x190, U } | s: 0x00\n #_09DF00: db $19, $12, $24 ; SPRITE 24 | xy: { 0x120, 0x190, U } | s: 0x00\n #_09DF03: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004C", + "code": "RoomData_Sprites_Room004C:\n #_09DF04: db $00 ; Unlayered OAM\n #_09DF05: db $11, $15, $93 ; SPRITE 93 | xy: { 0x150, 0x110, U } | s: 0x00\n #_09DF08: db $12, $19, $93 ; SPRITE 93 | xy: { 0x190, 0x120, U } | s: 0x00\n #_09DF0B: db $05, $15, $13 ; SPRITE 13 | xy: { 0x150, 0x050, U } | s: 0x00\n #_09DF0E: db $05, $1A, $13 ; SPRITE 13 | xy: { 0x1A0, 0x050, U } | s: 0x00\n #_09DF11: db $06, $17, $13 ; SPRITE 13 | xy: { 0x170, 0x060, U } | s: 0x00\n #_09DF14: db $0A, $18, $13 ; SPRITE 13 | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09DF17: db $15, $14, $13 ; SPRITE 13 | xy: { 0x140, 0x150, U } | s: 0x00\n #_09DF1A: db $18, $13, $8A ; SPRITE 8A | xy: { 0x130, 0x180, U } | s: 0x00\n #_09DF1D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004D", + "code": "RoomData_Sprites_Room004D:\n #_09DF1E: db $00 ; Unlayered OAM\n #_09DF1F: db $0E, $0E, $09 ; SPRITE 09 | xy: { 0x0E0, 0x0E0, U } | s: 0x00\n #_09DF22: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004E", + "code": "RoomData_Sprites_Room004E:\n #_09DF23: db $00 ; Unlayered OAM\n #_09DF24: db $08, $14, $8F ; SPRITE 8F | xy: { 0x140, 0x080, U } | s: 0x00\n #_09DF27: db $08, $16, $8F ; SPRITE 8F | xy: { 0x160, 0x080, U } | s: 0x00\n #_09DF2A: db $08, $18, $8F ; SPRITE 8F | xy: { 0x180, 0x080, U } | s: 0x00\n #_09DF2D: db $09, $07, $7E ; SPRITE 7E | xy: { 0x070, 0x090, U } | s: 0x00\n #_09DF30: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room004F", + "code": "RoomData_Sprites_Room004F:\n #_09DF31: db $00 ; Unlayered OAM\n #_09DF32: db $06, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x060, U } | s: 0x00\n #_09DF35: db $08, $14, $E3 ; SPRITE E3 | xy: { 0x140, 0x080, U } | s: 0x00\n #_09DF38: db $08, $1A, $E3 ; SPRITE E3 | xy: { 0x1A0, 0x080, U } | s: 0x00\n #_09DF3B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0050", + "code": "RoomData_Sprites_Room0050:\n #_09DF3C: db $00 ; Unlayered OAM\n #_09DF3D: db $8E, $17, $42 ; SPRITE 42 | xy: { 0x170, 0x0E0, L } | s: 0x00\n #_09DF40: db $90, $18, $4B ; SPRITE 4B | xy: { 0x180, 0x100, L } | s: 0x00\n #_09DF43: db $92, $17, $4B ; SPRITE 4B | xy: { 0x170, 0x120, L } | s: 0x00\n #_09DF46: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0051", + "code": "RoomData_Sprites_Room0051:\n #_09DF47: db $01 ; Layered OAM\n #_09DF48: db $02, $0E, $EE ; SPRITE EE | xy: { 0x0E0, 0x020, U } | s: 0x00\n #_09DF4B: db $97, $29, $41 ; SPRITE 41 | xy: { 0x090, 0x170, L } | s: 0x01\n #_09DF4E: db $97, $56, $41 ; SPRITE 41 | xy: { 0x160, 0x170, L } | s: 0x02\n #_09DF51: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0052", + "code": "RoomData_Sprites_Room0052:\n #_09DF52: db $00 ; Unlayered OAM\n #_09DF53: db $8D, $07, $42 ; SPRITE 42 | xy: { 0x070, 0x0D0, L } | s: 0x00\n #_09DF56: db $8F, $08, $4B ; SPRITE 4B | xy: { 0x080, 0x0F0, L } | s: 0x00\n #_09DF59: db $92, $07, $4B ; SPRITE 4B | xy: { 0x070, 0x120, L } | s: 0x00\n #_09DF5C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0053", + "code": "RoomData_Sprites_Room0053:\n #_09DF5D: db $00 ; Unlayered OAM\n #_09DF5E: db $07, $17, $4E ; SPRITE 4E | xy: { 0x170, 0x070, U } | s: 0x00\n #_09DF61: db $09, $1C, $61 ; SPRITE 61 | xy: { 0x1C0, 0x090, U } | s: 0x00\n #_09DF64: db $0C, $17, $4F ; SPRITE 4F | xy: { 0x170, 0x0C0, U } | s: 0x00\n #_09DF67: db $0C, $1A, $4F ; SPRITE 4F | xy: { 0x1A0, 0x0C0, U } | s: 0x00\n #_09DF6A: db $0E, $13, $61 ; SPRITE 61 | xy: { 0x130, 0x0E0, U } | s: 0x00\n #_09DF6D: db $15, $05, $4E ; SPRITE 4E | xy: { 0x050, 0x150, U } | s: 0x00\n #_09DF70: db $16, $0B, $4E ; SPRITE 4E | xy: { 0x0B0, 0x160, U } | s: 0x00\n #_09DF73: db $17, $1A, $4E ; SPRITE 4E | xy: { 0x1A0, 0x170, U } | s: 0x00\n #_09DF76: db $19, $07, $61 ; SPRITE 61 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09DF79: db $1A, $04, $4E ; SPRITE 4E | xy: { 0x040, 0x1A0, U } | s: 0x00\n #_09DF7C: db $1A, $0B, $4E ; SPRITE 4E | xy: { 0x0B0, 0x1A0, U } | s: 0x00\n #_09DF7F: db $1A, $1B, $61 ; SPRITE 61 | xy: { 0x1B0, 0x1A0, U } | s: 0x00\n #_09DF82: db $1B, $1A, $4E ; SPRITE 4E | xy: { 0x1A0, 0x1B0, U } | s: 0x00\n #_09DF85: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0054", + "code": "RoomData_Sprites_Room0054:\n #_09DF86: db $00 ; Unlayered OAM\n #_09DF87: db $05, $0E, $9A ; SPRITE 9A | xy: { 0x0E0, 0x050, U } | s: 0x00\n #_09DF8A: db $0B, $0C, $81 ; SPRITE 81 | xy: { 0x0C0, 0x0B0, U } | s: 0x00\n #_09DF8D: db $0E, $0B, $C5 ; SPRITE C5 | xy: { 0x0B0, 0x0E0, U } | s: 0x00\n #_09DF90: db $0E, $0F, $7E ; SPRITE 7E | xy: { 0x0F0, 0x0E0, U } | s: 0x00\n #_09DF93: db $0F, $10, $81 ; SPRITE 81 | xy: { 0x100, 0x0F0, U } | s: 0x00\n #_09DF96: db $14, $12, $9A ; SPRITE 9A | xy: { 0x120, 0x140, U } | s: 0x00\n #_09DF99: db $15, $0F, $81 ; SPRITE 81 | xy: { 0x0F0, 0x150, U } | s: 0x00\n #_09DF9C: db $17, $0C, $9A ; SPRITE 9A | xy: { 0x0C0, 0x170, U } | s: 0x00\n #_09DF9F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0055", + "code": "RoomData_Sprites_Room0055:\n #_09DFA0: db $00 ; Unlayered OAM\n #_09DFA1: db $08, $0E, $73 ; SPRITE 73 | xy: { 0x0E0, 0x080, U } | s: 0x00\n #_09DFA4: db $15, $14, $4B ; SPRITE 4B | xy: { 0x140, 0x150, U } | s: 0x00\n #_09DFA7: db $16, $0D, $4B ; SPRITE 4B | xy: { 0x0D0, 0x160, U } | s: 0x00\n #_09DFAA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0056", + "code": "RoomData_Sprites_Room0056:\n #_09DFAB: db $00 ; Unlayered OAM\n #_09DFAC: db $05, $EB, $0A ; OVERLORD 0A | xy: { 0x0B0, 0x050, U }\n #_09DFAF: db $19, $07, $93 ; SPRITE 93 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09DFB2: db $19, $17, $93 ; SPRITE 93 | xy: { 0x170, 0x190, U } | s: 0x00\n #_09DFB5: db $04, $07, $13 ; SPRITE 13 | xy: { 0x070, 0x040, U } | s: 0x00\n #_09DFB8: db $05, $1B, $26 ; SPRITE 26 | xy: { 0x1B0, 0x050, U } | s: 0x00\n #_09DFBB: db $06, $03, $13 ; SPRITE 13 | xy: { 0x030, 0x060, U } | s: 0x00\n #_09DFBE: db $06, $0C, $13 ; SPRITE 13 | xy: { 0x0C0, 0x060, U } | s: 0x00\n #_09DFC1: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09DFC4: db $11, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x110, U } | s: 0x00\n #_09DFC7: db $12, $18, $8A ; SPRITE 8A | xy: { 0x180, 0x120, U } | s: 0x00\n #_09DFCA: db $1B, $03, $26 ; SPRITE 26 | xy: { 0x030, 0x1B0, U } | s: 0x00\n #_09DFCD: db $1C, $13, $80 ; SPRITE 80 | xy: { 0x130, 0x1C0, U } | s: 0x00\n #_09DFD0: db $1C, $19, $26 ; SPRITE 26 | xy: { 0x190, 0x1C0, U } | s: 0x00\n #_09DFD3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0057", + "code": "RoomData_Sprites_Room0057:\n #_09DFD4: db $00 ; Unlayered OAM\n #_09DFD5: db $04, $08, $D1 ; SPRITE D1 | xy: { 0x080, 0x040, U } | s: 0x00\n #_09DFD8: db $04, $0C, $23 ; SPRITE 23 | xy: { 0x0C0, 0x040, U } | s: 0x00\n #_09DFDB: db $05, $08, $8A ; SPRITE 8A | xy: { 0x080, 0x050, U } | s: 0x00\n #_09DFDE: db $07, $04, $A7 ; SPRITE A7 | xy: { 0x040, 0x070, U } | s: 0x00\n #_09DFE1: db $0C, $03, $A7 ; SPRITE A7 | xy: { 0x030, 0x0C0, U } | s: 0x00\n #_09DFE4: db $0C, $0C, $8B ; SPRITE 8B | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09DFE7: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09DFEA: db $14, $05, $8B ; SPRITE 8B | xy: { 0x050, 0x140, U } | s: 0x00\n #_09DFED: db $14, $0A, $8B ; SPRITE 8B | xy: { 0x0A0, 0x140, U } | s: 0x00\n #_09DFF0: db $14, $17, $8B ; SPRITE 8B | xy: { 0x170, 0x140, U } | s: 0x00\n #_09DFF3: db $14, $19, $8B ; SPRITE 8B | xy: { 0x190, 0x140, U } | s: 0x00\n #_09DFF6: db $15, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x150, U } | s: 0x00\n #_09DFF9: db $17, $13, $8B ; SPRITE 8B | xy: { 0x130, 0x170, U } | s: 0x00\n #_09DFFC: db $18, $07, $24 ; SPRITE 24 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09DFFF: db $18, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E002: db $18, $0B, $1C ; SPRITE 1C | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E005: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0058", + "code": "RoomData_Sprites_Room0058:\n #_09E006: db $00 ; Unlayered OAM\n #_09E007: db $14, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x140, U } | s: 0x00\n #_09E00A: db $16, $06, $18 ; SPRITE 18 | xy: { 0x060, 0x160, U } | s: 0x00\n #_09E00D: db $16, $16, $93 ; SPRITE 93 | xy: { 0x160, 0x160, U } | s: 0x00\n #_09E010: db $04, $14, $13 ; SPRITE 13 | xy: { 0x140, 0x040, U } | s: 0x00\n #_09E013: db $06, $16, $5B ; SPRITE 5B | xy: { 0x160, 0x060, U } | s: 0x00\n #_09E016: db $0A, $08, $04 ; SPRITE 04 | xy: { 0x080, 0x0A0, U } | s: 0x00\n #_09E019: db $0B, $1B, $26 ; SPRITE 26 | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09E01C: db $19, $16, $26 ; SPRITE 26 | xy: { 0x160, 0x190, U } | s: 0x00\n #_09E01F: db $1A, $0A, $23 ; SPRITE 23 | xy: { 0x0A0, 0x1A0, U } | s: 0x00\n #_09E022: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0059", + "code": "RoomData_Sprites_Room0059:\n #_09E023: db $01 ; Layered OAM\n #_09E024: db $10, $07, $18 ; SPRITE 18 | xy: { 0x070, 0x100, U } | s: 0x00\n #_09E027: db $16, $08, $18 ; SPRITE 18 | xy: { 0x080, 0x160, U } | s: 0x00\n #_09E02A: db $8F, $14, $93 ; SPRITE 93 | xy: { 0x140, 0x0F0, L } | s: 0x00\n #_09E02D: db $8F, $1A, $93 ; SPRITE 93 | xy: { 0x1A0, 0x0F0, L } | s: 0x00\n #_09E030: db $8A, $1A, $8A ; SPRITE 8A | xy: { 0x1A0, 0x0A0, L } | s: 0x00\n #_09E033: db $0B, $08, $80 ; SPRITE 80 | xy: { 0x080, 0x0B0, U } | s: 0x00\n #_09E036: db $8D, $15, $8A ; SPRITE 8A | xy: { 0x150, 0x0D0, L } | s: 0x00\n #_09E039: db $8E, $05, $5B ; SPRITE 5B | xy: { 0x050, 0x0E0, L } | s: 0x00\n #_09E03C: db $93, $1A, $D1 ; SPRITE D1 | xy: { 0x1A0, 0x130, L } | s: 0x00\n #_09E03F: db $14, $17, $8B ; SPRITE 8B | xy: { 0x170, 0x140, U } | s: 0x00\n #_09E042: db $95, $15, $8B ; SPRITE 8B | xy: { 0x150, 0x150, L } | s: 0x00\n #_09E045: db $95, $1A, $8B ; SPRITE 8B | xy: { 0x1A0, 0x150, L } | s: 0x00\n #_09E048: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005A", + "code": "RoomData_Sprites_Room005A:\n #_09E049: db $00 ; Unlayered OAM\n #_09E04A: db $16, $17, $92 ; SPRITE 92 | xy: { 0x170, 0x160, U } | s: 0x00\n #_09E04D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005B", + "code": "RoomData_Sprites_Room005B:\n #_09E04E: db $01 ; Layered OAM\n #_09E04F: db $8C, $17, $1E ; SPRITE 1E | xy: { 0x170, 0x0C0, L } | s: 0x00\n #_09E052: db $93, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x130, L } | s: 0x00\n #_09E055: db $95, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x150, L } | s: 0x00\n #_09E058: db $88, $16, $83 ; SPRITE 83 | xy: { 0x160, 0x080, L } | s: 0x00\n #_09E05B: db $88, $19, $84 ; SPRITE 84 | xy: { 0x190, 0x080, L } | s: 0x00\n #_09E05E: db $8E, $14, $8A ; SPRITE 8A | xy: { 0x140, 0x0E0, L } | s: 0x00\n #_09E061: db $90, $1B, $8A ; SPRITE 8A | xy: { 0x1B0, 0x100, L } | s: 0x00\n #_09E064: db $91, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x110, L } | s: 0x00\n #_09E067: db $92, $14, $8A ; SPRITE 8A | xy: { 0x140, 0x120, L } | s: 0x00\n #_09E06A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005C", + "code": "RoomData_Sprites_Room005C:\n #_09E06B: db $00 ; Unlayered OAM\n #_09E06C: db $02, $0B, $68 ; SPRITE 68 | xy: { 0x0B0, 0x020, U } | s: 0x00\n #_09E06F: db $0E, $05, $69 ; SPRITE 69 | xy: { 0x050, 0x0E0, U } | s: 0x00\n #_09E072: db $0E, $0E, $69 ; SPRITE 69 | xy: { 0x0E0, 0x0E0, U } | s: 0x00\n #_09E075: db $18, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E078: db $18, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E07B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005D", + "code": "RoomData_Sprites_Room005D:\n #_09E07C: db $00 ; Unlayered OAM\n #_09E07D: db $05, $07, $A7 ; SPRITE A7 | xy: { 0x070, 0x050, U } | s: 0x00\n #_09E080: db $06, $08, $61 ; SPRITE 61 | xy: { 0x080, 0x060, U } | s: 0x00\n #_09E083: db $08, $03, $A7 ; SPRITE A7 | xy: { 0x030, 0x080, U } | s: 0x00\n #_09E086: db $08, $15, $A6 ; SPRITE A6 | xy: { 0x150, 0x080, U } | s: 0x00\n #_09E089: db $08, $17, $A7 ; SPRITE A7 | xy: { 0x170, 0x080, U } | s: 0x00\n #_09E08C: db $08, $19, $A5 ; SPRITE A5 | xy: { 0x190, 0x080, U } | s: 0x00\n #_09E08F: db $08, $1B, $A7 ; SPRITE A7 | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09E092: db $0B, $07, $A7 ; SPRITE A7 | xy: { 0x070, 0x0B0, U } | s: 0x00\n #_09E095: db $15, $04, $61 ; SPRITE 61 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E098: db $15, $0B, $A5 ; SPRITE A5 | xy: { 0x0B0, 0x150, U } | s: 0x00\n #_09E09B: db $1A, $04, $A5 ; SPRITE A5 | xy: { 0x040, 0x1A0, U } | s: 0x00\n #_09E09E: db $1A, $08, $A5 ; SPRITE A5 | xy: { 0x080, 0x1A0, U } | s: 0x00\n #_09E0A1: db $1A, $0B, $61 ; SPRITE 61 | xy: { 0x0B0, 0x1A0, U } | s: 0x00\n #_09E0A4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005E", + "code": "RoomData_Sprites_Room005E:\n #_09E0A5: db $00 ; Unlayered OAM\n #_09E0A6: db $05, $FB, $0A ; OVERLORD 0A | xy: { 0x1B0, 0x050, U }\n #_09E0A9: db $05, $1C, $C5 ; SPRITE C5 | xy: { 0x1C0, 0x050, U } | s: 0x00\n #_09E0AC: db $0B, $13, $C5 ; SPRITE C5 | xy: { 0x130, 0x0B0, U } | s: 0x00\n #_09E0AF: db $14, $17, $7D ; SPRITE 7D | xy: { 0x170, 0x140, U } | s: 0x00\n #_09E0B2: db $18, $08, $7E ; SPRITE 7E | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E0B5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room005F", + "code": "RoomData_Sprites_Room005F:\n #_09E0B6: db $00 ; Unlayered OAM\n #_09E0B7: db $18, $04, $24 ; SPRITE 24 | xy: { 0x040, 0x180, U } | s: 0x00\n #_09E0BA: db $18, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E0BD: db $1B, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x1B0, U } | s: 0x00\n #_09E0C0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0060", + "code": "RoomData_Sprites_Room0060:\n #_09E0C1: db $01 ; Layered OAM\n #_09E0C2: db $48, $73, $41 ; SPRITE 41 | xy: { 0x130, 0x080, U } | s: 0x13\n #_09E0C5: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0061", + "code": "RoomData_Sprites_Room0061:\n #_09E0C6: db $00 ; Unlayered OAM\n #_09E0C7: db $0E, $2C, $42 ; SPRITE 42 | xy: { 0x0C0, 0x0E0, U } | s: 0x01\n #_09E0CA: db $12, $0D, $4B ; SPRITE 4B | xy: { 0x0D0, 0x120, U } | s: 0x00\n #_09E0CD: db $12, $12, $4B ; SPRITE 4B | xy: { 0x120, 0x120, U } | s: 0x00\n #_09E0D0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0062", + "code": "RoomData_Sprites_Room0062:\n #_09E0D1: db $01 ; Layered OAM\n #_09E0D2: db $48, $6C, $41 ; SPRITE 41 | xy: { 0x0C0, 0x080, U } | s: 0x13\n #_09E0D5: db $8D, $0A, $42 ; SPRITE 42 | xy: { 0x0A0, 0x0D0, L } | s: 0x00\n #_09E0D8: db $8E, $11, $42 ; SPRITE 42 | xy: { 0x110, 0x0E0, L } | s: 0x00\n #_09E0DB: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0063", + "code": "RoomData_Sprites_Room0063:\n #_09E0DC: db $00 ; Unlayered OAM\n #_09E0DD: db $08, $E7, $14 ; OVERLORD 14 | xy: { 0x070, 0x080, U }\n #_09E0E0: db $18, $07, $61 ; SPRITE 61 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E0E3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0064", + "code": "RoomData_Sprites_Room0064:\n #_09E0E4: db $00 ; Unlayered OAM\n #_09E0E5: db $12, $05, $6F ; SPRITE 6F | xy: { 0x050, 0x120, U } | s: 0x00\n #_09E0E8: db $13, $0B, $06 ; SPRITE 06 | xy: { 0x0B0, 0x130, U } | s: 0x00\n #_09E0EB: db $13, $05, $6F ; SPRITE 6F | xy: { 0x050, 0x130, U } | s: 0x00\n #_09E0EE: db $16, $03, $D1 ; SPRITE D1 | xy: { 0x030, 0x160, U } | s: 0x00\n #_09E0F1: db $17, $17, $6D ; SPRITE 6D | xy: { 0x170, 0x170, U } | s: 0x00\n #_09E0F4: db $19, $19, $6D ; SPRITE 6D | xy: { 0x190, 0x190, U } | s: 0x00\n #_09E0F7: db $1A, $05, $6D ; SPRITE 6D | xy: { 0x050, 0x1A0, U } | s: 0x00\n #_09E0FA: db $15, $E9, $06 ; OVERLORD 06 | xy: { 0x090, 0x150, U }\n #_09E0FD: db $17, $E7, $06 ; OVERLORD 06 | xy: { 0x070, 0x170, U }\n #_09E100: db $17, $E9, $06 ; OVERLORD 06 | xy: { 0x090, 0x170, U }\n #_09E103: db $17, $EB, $06 ; OVERLORD 06 | xy: { 0x0B0, 0x170, U }\n #_09E106: db $19, $E9, $06 ; OVERLORD 06 | xy: { 0x090, 0x190, U }\n #_09E109: db $1B, $EC, $06 ; OVERLORD 06 | xy: { 0x0C0, 0x1B0, U }\n #_09E10C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0065", + "code": "RoomData_Sprites_Room0065:\n #_09E10D: db $00 ; Unlayered OAM\n #_09E10E: db $15, $13, $6D ; SPRITE 6D | xy: { 0x130, 0x150, U } | s: 0x00\n #_09E111: db $17, $09, $6D ; SPRITE 6D | xy: { 0x090, 0x170, U } | s: 0x00\n #_09E114: db $18, $06, $6D ; SPRITE 6D | xy: { 0x060, 0x180, U } | s: 0x00\n #_09E117: db $19, $16, $6D ; SPRITE 6D | xy: { 0x160, 0x190, U } | s: 0x00\n #_09E11A: db $1C, $16, $6D ; SPRITE 6D | xy: { 0x160, 0x1C0, U } | s: 0x00\n #_09E11D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0066", + "code": "RoomData_Sprites_Room0066:\n #_09E11E: db $00 ; Unlayered OAM\n #_09E11F: db $85, $0B, $81 ; SPRITE 81 | xy: { 0x0B0, 0x050, L } | s: 0x00\n #_09E122: db $86, $E4, $10 ; OVERLORD 10 | xy: { 0x040, 0x060, L }\n #_09E125: db $06, $16, $24 ; SPRITE 24 | xy: { 0x160, 0x060, U } | s: 0x00\n #_09E128: db $07, $1A, $24 ; SPRITE 24 | xy: { 0x1A0, 0x070, U } | s: 0x00\n #_09E12B: db $94, $17, $37 ; SPRITE 37 | xy: { 0x170, 0x140, L } | s: 0x00\n #_09E12E: db $96, $E1, $10 ; OVERLORD 10 | xy: { 0x010, 0x160, L }\n #_09E131: db $96, $0F, $9A ; SPRITE 9A | xy: { 0x0F0, 0x160, L } | s: 0x00\n #_09E134: db $96, $13, $81 ; SPRITE 81 | xy: { 0x130, 0x160, L } | s: 0x00\n #_09E137: db $98, $0B, $81 ; SPRITE 81 | xy: { 0x0B0, 0x180, L } | s: 0x00\n #_09E13A: db $99, $0D, $81 ; SPRITE 81 | xy: { 0x0D0, 0x190, L } | s: 0x00\n #_09E13D: db $99, $FE, $11 ; OVERLORD 11 | xy: { 0x1E0, 0x190, L }\n #_09E140: db $9B, $17, $81 ; SPRITE 81 | xy: { 0x170, 0x1B0, L } | s: 0x00\n #_09E143: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0067", + "code": "RoomData_Sprites_Room0067:\n #_09E144: db $00 ; Unlayered OAM\n #_09E145: db $0C, $07, $93 ; SPRITE 93 | xy: { 0x070, 0x0C0, U } | s: 0x00\n #_09E148: db $06, $04, $24 ; SPRITE 24 | xy: { 0x040, 0x060, U } | s: 0x00\n #_09E14B: db $06, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x060, U } | s: 0x00\n #_09E14E: db $0C, $05, $26 ; SPRITE 26 | xy: { 0x050, 0x0C0, U } | s: 0x00\n #_09E151: db $0F, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x0F0, U } | s: 0x00\n #_09E154: db $13, $05, $26 ; SPRITE 26 | xy: { 0x050, 0x130, U } | s: 0x00\n #_09E157: db $13, $09, $26 ; SPRITE 26 | xy: { 0x090, 0x130, U } | s: 0x00\n #_09E15A: db $14, $18, $7E ; SPRITE 7E | xy: { 0x180, 0x140, U } | s: 0x00\n #_09E15D: db $17, $07, $7F ; SPRITE 7F | xy: { 0x070, 0x170, U } | s: 0x00\n #_09E160: db $1A, $18, $26 ; SPRITE 26 | xy: { 0x180, 0x1A0, U } | s: 0x00\n #_09E163: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0068", + "code": "RoomData_Sprites_Room0068:\n #_09E164: db $00 ; Unlayered OAM\n #_09E165: db $07, $0E, $93 ; SPRITE 93 | xy: { 0x0E0, 0x070, U } | s: 0x00\n #_09E168: db $07, $11, $93 ; SPRITE 93 | xy: { 0x110, 0x070, U } | s: 0x00\n #_09E16B: db $0B, $0C, $93 ; SPRITE 93 | xy: { 0x0C0, 0x0B0, U } | s: 0x00\n #_09E16E: db $0B, $13, $93 ; SPRITE 93 | xy: { 0x130, 0x0B0, U } | s: 0x00\n #_09E171: db $08, $14, $8B ; SPRITE 8B | xy: { 0x140, 0x080, U } | s: 0x00\n #_09E174: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09E177: db $12, $0E, $8B ; SPRITE 8B | xy: { 0x0E0, 0x120, U } | s: 0x00\n #_09E17A: db $12, $12, $8B ; SPRITE 8B | xy: { 0x120, 0x120, U } | s: 0x00\n #_09E17D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room006A", + "code": "RoomData_Sprites_Room006A:\n #_09E17E: db $00 ; Unlayered OAM\n #_09E17F: db $0A, $17, $8E ; SPRITE 8E | xy: { 0x170, 0x0A0, U } | s: 0x00\n #_09E182: db $0A, $18, $8E ; SPRITE 8E | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09E185: db $0B, $14, $15 ; SPRITE 15 | xy: { 0x140, 0x0B0, U } | s: 0x00\n #_09E188: db $0B, $1C, $15 ; SPRITE 15 | xy: { 0x1C0, 0x0B0, U } | s: 0x00\n #_09E18B: db $0E, $17, $8E ; SPRITE 8E | xy: { 0x170, 0x0E0, U } | s: 0x00\n #_09E18E: db $0E, $18, $8E ; SPRITE 8E | xy: { 0x180, 0x0E0, U } | s: 0x00\n #_09E191: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room006B", + "code": "RoomData_Sprites_Room006B:\n #_09E192: db $00 ; Unlayered OAM\n #_09E193: db $04, $07, $1E ; SPRITE 1E | xy: { 0x070, 0x040, U } | s: 0x00\n #_09E196: db $04, $0B, $1E ; SPRITE 1E | xy: { 0x0B0, 0x040, U } | s: 0x00\n #_09E199: db $06, $0A, $83 ; SPRITE 83 | xy: { 0x0A0, 0x060, U } | s: 0x00\n #_09E19C: db $09, $06, $84 ; SPRITE 84 | xy: { 0x060, 0x090, U } | s: 0x00\n #_09E19F: db $0A, $0C, $15 ; SPRITE 15 | xy: { 0x0C0, 0x0A0, U } | s: 0x00\n #_09E1A2: db $15, $06, $1C ; SPRITE 1C | xy: { 0x060, 0x150, U } | s: 0x00\n #_09E1A5: db $18, $03, $84 ; SPRITE 84 | xy: { 0x030, 0x180, U } | s: 0x00\n #_09E1A8: db $18, $04, $8A ; SPRITE 8A | xy: { 0x040, 0x180, U } | s: 0x00\n #_09E1AB: db $1B, $04, $8A ; SPRITE 8A | xy: { 0x040, 0x1B0, U } | s: 0x00\n #_09E1AE: db $1B, $0C, $84 ; SPRITE 84 | xy: { 0x0C0, 0x1B0, U } | s: 0x00\n #_09E1B1: db $15, $17, $84 ; SPRITE 84 | xy: { 0x170, 0x150, U } | s: 0x00\n #_09E1B4: db $15, $1B, $61 ; SPRITE 61 | xy: { 0x1B0, 0x150, U } | s: 0x00\n #_09E1B7: db $1B, $14, $61 ; SPRITE 61 | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09E1BA: db $1B, $18, $84 ; SPRITE 84 | xy: { 0x180, 0x1B0, U } | s: 0x00\n #_09E1BD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room006C", + "code": "RoomData_Sprites_Room006C:\n #_09E1BE: db $00 ; Unlayered OAM\n #_09E1BF: db $17, $06, $54 ; SPRITE 54 | xy: { 0x060, 0x170, U } | s: 0x00\n #_09E1C2: db $17, $09, $54 ; SPRITE 54 | xy: { 0x090, 0x170, U } | s: 0x00\n #_09E1C5: db $19, $07, $54 ; SPRITE 54 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09E1C8: db $18, $17, $D1 ; SPRITE D1 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E1CB: db $1C, $03, $C5 ; SPRITE C5 | xy: { 0x030, 0x1C0, U } | s: 0x00\n #_09E1CE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room006D", + "code": "RoomData_Sprites_Room006D:\n #_09E1CF: db $00 ; Unlayered OAM\n #_09E1D0: db $06, $05, $A6 ; SPRITE A6 | xy: { 0x050, 0x060, U } | s: 0x00\n #_09E1D3: db $06, $0B, $61 ; SPRITE 61 | xy: { 0x0B0, 0x060, U } | s: 0x00\n #_09E1D6: db $09, $04, $61 ; SPRITE 61 | xy: { 0x040, 0x090, U } | s: 0x00\n #_09E1D9: db $0B, $0A, $A6 ; SPRITE A6 | xy: { 0x0A0, 0x0B0, U } | s: 0x00\n #_09E1DC: db $15, $04, $C5 ; SPRITE C5 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E1DF: db $15, $0B, $61 ; SPRITE 61 | xy: { 0x0B0, 0x150, U } | s: 0x00\n #_09E1E2: db $18, $05, $A7 ; SPRITE A7 | xy: { 0x050, 0x180, U } | s: 0x00\n #_09E1E5: db $18, $0A, $A6 ; SPRITE A6 | xy: { 0x0A0, 0x180, U } | s: 0x00\n #_09E1E8: db $1A, $06, $5C ; SPRITE 5C | xy: { 0x060, 0x1A0, U } | s: 0x00\n #_09E1EB: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room006E", + "code": "RoomData_Sprites_Room006E:\n #_09E1EC: db $00 ; Unlayered OAM\n #_09E1ED: db $08, $13, $99 ; SPRITE 99 | xy: { 0x130, 0x080, U } | s: 0x00\n #_09E1F0: db $09, $13, $99 ; SPRITE 99 | xy: { 0x130, 0x090, U } | s: 0x00\n #_09E1F3: db $0A, $13, $99 ; SPRITE 99 | xy: { 0x130, 0x0A0, U } | s: 0x00\n #_09E1F6: db $0B, $13, $99 ; SPRITE 99 | xy: { 0x130, 0x0B0, U } | s: 0x00\n #_09E1F9: db $0C, $13, $99 ; SPRITE 99 | xy: { 0x130, 0x0C0, U } | s: 0x00\n #_09E1FC: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0071", + "code": "RoomData_Sprites_Room0071:\n #_09E1FD: db $00 ; Unlayered OAM\n #_09E1FE: db $98, $06, $42 ; SPRITE 42 | xy: { 0x060, 0x180, L } | s: 0x00\n #_09E201: db $D8, $BA, $41 ; SPRITE 41 | xy: { 0x1A0, 0x180, L } | s: 0x15\n #_09E204: db $FE, $00, $E4 ; small key on above sprite\n #_09E207: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0072", + "code": "RoomData_Sprites_Room0072:\n #_09E208: db $00 ; Unlayered OAM\n #_09E209: db $06, $B1, $41 ; SPRITE 41 | xy: { 0x110, 0x060, U } | s: 0x05\n #_09E20C: db $FE, $00, $E4 ; small key on above sprite\n #_09E20F: db $99, $2A, $41 ; SPRITE 41 | xy: { 0x0A0, 0x190, L } | s: 0x01\n #_09E212: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0073", + "code": "RoomData_Sprites_Room0073:\n #_09E213: db $00 ; Unlayered OAM\n #_09E214: db $18, $18, $64 ; SPRITE 64 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E217: db $09, $17, $61 ; SPRITE 61 | xy: { 0x170, 0x090, U } | s: 0x00\n #_09E21A: db $15, $15, $71 ; SPRITE 71 | xy: { 0x150, 0x150, U } | s: 0x00\n #_09E21D: db $18, $1B, $71 ; SPRITE 71 | xy: { 0x1B0, 0x180, U } | s: 0x00\n #_09E220: db $19, $07, $61 ; SPRITE 61 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09E223: db $1B, $16, $71 ; SPRITE 71 | xy: { 0x160, 0x1B0, U } | s: 0x00\n #_09E226: db $06, $14, $3B ; SPRITE 3B | xy: { 0x140, 0x060, U } | s: 0x00\n #_09E229: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0074", + "code": "RoomData_Sprites_Room0074:\n #_09E22A: db $00 ; Unlayered OAM\n #_09E22B: db $18, $08, $64 ; SPRITE 64 | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E22E: db $18, $17, $64 ; SPRITE 64 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E231: db $05, $0C, $83 ; SPRITE 83 | xy: { 0x0C0, 0x050, U } | s: 0x00\n #_09E234: db $05, $13, $83 ; SPRITE 83 | xy: { 0x130, 0x050, U } | s: 0x00\n #_09E237: db $0A, $0C, $71 ; SPRITE 71 | xy: { 0x0C0, 0x0A0, U } | s: 0x00\n #_09E23A: db $0A, $13, $71 ; SPRITE 71 | xy: { 0x130, 0x0A0, U } | s: 0x00\n #_09E23D: db $1B, $0E, $71 ; SPRITE 71 | xy: { 0x0E0, 0x1B0, U } | s: 0x00\n #_09E240: db $1B, $12, $71 ; SPRITE 71 | xy: { 0x120, 0x1B0, U } | s: 0x00\n #_09E243: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0075", + "code": "RoomData_Sprites_Room0075:\n #_09E244: db $00 ; Unlayered OAM\n #_09E245: db $07, $08, $64 ; SPRITE 64 | xy: { 0x080, 0x070, U } | s: 0x00\n #_09E248: db $1B, $04, $64 ; SPRITE 64 | xy: { 0x040, 0x1B0, U } | s: 0x00\n #_09E24B: db $05, $06, $71 ; SPRITE 71 | xy: { 0x060, 0x050, U } | s: 0x00\n #_09E24E: db $05, $0A, $71 ; SPRITE 71 | xy: { 0x0A0, 0x050, U } | s: 0x00\n #_09E251: db $0A, $06, $71 ; SPRITE 71 | xy: { 0x060, 0x0A0, U } | s: 0x00\n #_09E254: db $0A, $0A, $71 ; SPRITE 71 | xy: { 0x0A0, 0x0A0, U } | s: 0x00\n #_09E257: db $0B, $11, $66 ; SPRITE 66 | xy: { 0x110, 0x0B0, U } | s: 0x00\n #_09E25A: db $0B, $1E, $67 ; SPRITE 67 | xy: { 0x1E0, 0x0B0, U } | s: 0x00\n #_09E25D: db $19, $07, $71 ; SPRITE 71 | xy: { 0x070, 0x190, U } | s: 0x00\n #_09E260: db $19, $09, $71 ; SPRITE 71 | xy: { 0x090, 0x190, U } | s: 0x00\n #_09E263: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0076", + "code": "RoomData_Sprites_Room0076:\n #_09E264: db $00 ; Unlayered OAM\n #_09E265: db $03, $19, $21 ; SPRITE 21 | xy: { 0x190, 0x030, U } | s: 0x00\n #_09E268: db $0A, $07, $81 ; SPRITE 81 | xy: { 0x070, 0x0A0, U } | s: 0x00\n #_09E26B: db $0F, $07, $9A ; SPRITE 9A | xy: { 0x070, 0x0F0, U } | s: 0x00\n #_09E26E: db $11, $08, $81 ; SPRITE 81 | xy: { 0x080, 0x110, U } | s: 0x00\n #_09E271: db $19, $1B, $8F ; SPRITE 8F | xy: { 0x1B0, 0x190, U } | s: 0x00\n #_09E274: db $1C, $E8, $13 ; OVERLORD 13 | xy: { 0x080, 0x1C0, U }\n #_09E277: db $1C, $1B, $24 ; SPRITE 24 | xy: { 0x1B0, 0x1C0, U } | s: 0x00\n #_09E27A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0077", + "code": "RoomData_Sprites_Room0077:\n #_09E27B: db $00 ; Unlayered OAM\n #_09E27C: db $89, $0B, $18 ; SPRITE 18 | xy: { 0x0B0, 0x090, L } | s: 0x00\n #_09E27F: db $98, $10, $1E ; SPRITE 1E | xy: { 0x100, 0x180, L } | s: 0x00\n #_09E282: db $9A, $09, $1E ; SPRITE 1E | xy: { 0x090, 0x1A0, L } | s: 0x00\n #_09E285: db $9A, $16, $1E ; SPRITE 1E | xy: { 0x160, 0x1A0, L } | s: 0x00\n #_09E288: db $8A, $07, $86 ; SPRITE 86 | xy: { 0x070, 0x0A0, L } | s: 0x00\n #_09E28B: db $8A, $17, $86 ; SPRITE 86 | xy: { 0x170, 0x0A0, L } | s: 0x00\n #_09E28E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room007B", + "code": "RoomData_Sprites_Room007B:\n #_09E28F: db $00 ; Unlayered OAM\n #_09E290: db $07, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x070, U } | s: 0x00\n #_09E293: db $09, $16, $24 ; SPRITE 24 | xy: { 0x160, 0x090, U } | s: 0x00\n #_09E296: db $15, $04, $C6 ; SPRITE C6 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E299: db $15, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x150, U } | s: 0x00\n #_09E29C: db $17, $07, $A7 ; SPRITE A7 | xy: { 0x070, 0x170, U } | s: 0x00\n #_09E29F: db $17, $09, $C6 ; SPRITE C6 | xy: { 0x090, 0x170, U } | s: 0x00\n #_09E2A2: db $18, $13, $1C ; SPRITE 1C | xy: { 0x130, 0x180, U } | s: 0x00\n #_09E2A5: db $18, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E2A8: db $19, $09, $A7 ; SPRITE A7 | xy: { 0x090, 0x190, U } | s: 0x00\n #_09E2AB: db $1A, $05, $C6 ; SPRITE C6 | xy: { 0x050, 0x1A0, U } | s: 0x00\n #_09E2AE: db $1B, $0B, $C6 ; SPRITE C6 | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09E2B1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room007C", + "code": "RoomData_Sprites_Room007C:\n #_09E2B2: db $00 ; Unlayered OAM\n #_09E2B3: db $1C, $19, $18 ; SPRITE 18 | xy: { 0x190, 0x1C0, U } | s: 0x00\n #_09E2B6: db $0C, $06, $7F ; SPRITE 7F | xy: { 0x060, 0x0C0, U } | s: 0x00\n #_09E2B9: db $10, $07, $8A ; SPRITE 8A | xy: { 0x070, 0x100, U } | s: 0x00\n #_09E2BC: db $14, $09, $7E ; SPRITE 7E | xy: { 0x090, 0x140, U } | s: 0x00\n #_09E2BF: db $18, $0B, $26 ; SPRITE 26 | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E2C2: db $18, $17, $24 ; SPRITE 24 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E2C5: db $1A, $E7, $0B ; OVERLORD 0B | xy: { 0x070, 0x1A0, U }\n #_09E2C8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room007D", + "code": "RoomData_Sprites_Room007D:\n #_09E2C9: db $00 ; Unlayered OAM\n #_09E2CA: db $06, $11, $80 ; SPRITE 80 | xy: { 0x110, 0x060, U } | s: 0x00\n #_09E2CD: db $08, $11, $80 ; SPRITE 80 | xy: { 0x110, 0x080, U } | s: 0x00\n #_09E2D0: db $0A, $11, $80 ; SPRITE 80 | xy: { 0x110, 0x0A0, U } | s: 0x00\n #_09E2D3: db $0C, $11, $80 ; SPRITE 80 | xy: { 0x110, 0x0C0, U } | s: 0x00\n #_09E2D6: db $16, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x160, U } | s: 0x00\n #_09E2D9: db $17, $18, $C6 ; SPRITE C6 | xy: { 0x180, 0x170, U } | s: 0x00\n #_09E2DC: db $19, $1C, $80 ; SPRITE 80 | xy: { 0x1C0, 0x190, U } | s: 0x00\n #_09E2DF: db $1A, $14, $13 ; SPRITE 13 | xy: { 0x140, 0x1A0, U } | s: 0x00\n #_09E2E2: db $1A, $17, $23 ; SPRITE 23 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09E2E5: db $1C, $0A, $80 ; SPRITE 80 | xy: { 0x0A0, 0x1C0, U } | s: 0x00\n #_09E2E8: db $1C, $1B, $26 ; SPRITE 26 | xy: { 0x1B0, 0x1C0, U } | s: 0x00\n #_09E2EB: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room007E", + "code": "RoomData_Sprites_Room007E:\n #_09E2EC: db $00 ; Unlayered OAM\n #_09E2ED: db $11, $17, $93 ; SPRITE 93 | xy: { 0x170, 0x110, U } | s: 0x00\n #_09E2F0: db $0E, $18, $7F ; SPRITE 7F | xy: { 0x180, 0x0E0, U } | s: 0x00\n #_09E2F3: db $0F, $14, $99 ; SPRITE 99 | xy: { 0x140, 0x0F0, U } | s: 0x00\n #_09E2F6: db $12, $07, $A1 ; SPRITE A1 | xy: { 0x070, 0x120, U } | s: 0x00\n #_09E2F9: db $12, $0A, $A1 ; SPRITE A1 | xy: { 0x0A0, 0x120, U } | s: 0x00\n #_09E2FC: db $16, $1B, $99 ; SPRITE 99 | xy: { 0x1B0, 0x160, U } | s: 0x00\n #_09E2FF: db $17, $17, $7F ; SPRITE 7F | xy: { 0x170, 0x170, U } | s: 0x00\n #_09E302: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room007F", + "code": "RoomData_Sprites_Room007F:\n #_09E303: db $00 ; Unlayered OAM\n #_09E304: db $07, $06, $23 ; SPRITE 23 | xy: { 0x060, 0x070, U } | s: 0x00\n #_09E307: db $07, $08, $23 ; SPRITE 23 | xy: { 0x080, 0x070, U } | s: 0x00\n #_09E30A: db $08, $0A, $23 ; SPRITE 23 | xy: { 0x0A0, 0x080, U } | s: 0x00\n #_09E30D: db $09, $07, $23 ; SPRITE 23 | xy: { 0x070, 0x090, U } | s: 0x00\n #_09E310: db $14, $0B, $7D ; SPRITE 7D | xy: { 0x0B0, 0x140, U } | s: 0x00\n #_09E313: db $17, $03, $7D ; SPRITE 7D | xy: { 0x030, 0x170, U } | s: 0x00\n #_09E316: db $19, $0B, $7D ; SPRITE 7D | xy: { 0x0B0, 0x190, U } | s: 0x00\n #_09E319: db $1B, $03, $7D ; SPRITE 7D | xy: { 0x030, 0x1B0, U } | s: 0x00\n #_09E31C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0080", + "code": "RoomData_Sprites_Room0080:\n #_09E31D: db $00 ; Unlayered OAM\n #_09E31E: db $03, $16, $76 ; SPRITE 76 | xy: { 0x160, 0x030, U } | s: 0x00\n #_09E321: db $09, $07, $42 ; SPRITE 42 | xy: { 0x070, 0x090, U } | s: 0x00\n #_09E324: db $09, $1A, $6A ; SPRITE 6A | xy: { 0x1A0, 0x090, U } | s: 0x00\n #_09E327: db $FD, $00, $E4 ; big key on above sprite\n #_09E32A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0081", + "code": "RoomData_Sprites_Room0081:\n #_09E32B: db $01 ; Layered OAM\n #_09E32C: db $EB, $6B, $42 ; SPRITE 42 | xy: { 0x0B0, 0x0B0, L } | s: 0x1B\n #_09E32F: db $8B, $6E, $42 ; SPRITE 42 | xy: { 0x0E0, 0x0B0, L } | s: 0x03\n #_09E332: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0082", + "code": "RoomData_Sprites_Room0082:\n #_09E333: db $00 ; Unlayered OAM\n #_09E334: db $E5, $69, $41 ; SPRITE 41 | xy: { 0x090, 0x050, L } | s: 0x1B\n #_09E337: db $86, $70, $41 ; SPRITE 41 | xy: { 0x100, 0x060, L } | s: 0x03\n #_09E33A: db $91, $75, $41 ; SPRITE 41 | xy: { 0x150, 0x110, L } | s: 0x03\n #_09E33D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0083", + "code": "RoomData_Sprites_Room0083:\n #_09E33E: db $00 ; Unlayered OAM\n #_09E33F: db $08, $1B, $63 ; SPRITE 63 | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09E342: db $10, $14, $63 ; SPRITE 63 | xy: { 0x140, 0x100, U } | s: 0x00\n #_09E345: db $05, $14, $71 ; SPRITE 71 | xy: { 0x140, 0x050, U } | s: 0x00\n #_09E348: db $06, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x060, U } | s: 0x00\n #_09E34B: db $08, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x080, U } | s: 0x00\n #_09E34E: db $0B, $1B, $71 ; SPRITE 71 | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09E351: db $10, $17, $71 ; SPRITE 71 | xy: { 0x170, 0x100, U } | s: 0x00\n #_09E354: db $17, $08, $61 ; SPRITE 61 | xy: { 0x080, 0x170, U } | s: 0x00\n #_09E357: db $18, $18, $71 ; SPRITE 71 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E35A: db $1B, $14, $71 ; SPRITE 71 | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09E35D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0084", + "code": "RoomData_Sprites_Room0084:\n #_09E35E: db $00 ; Unlayered OAM\n #_09E35F: db $05, $03, $71 ; SPRITE 71 | xy: { 0x030, 0x050, U } | s: 0x00\n #_09E362: db $05, $1B, $71 ; SPRITE 71 | xy: { 0x1B0, 0x050, U } | s: 0x00\n #_09E365: db $07, $0F, $61 ; SPRITE 61 | xy: { 0x0F0, 0x070, U } | s: 0x00\n #_09E368: db $12, $09, $71 ; SPRITE 71 | xy: { 0x090, 0x120, U } | s: 0x00\n #_09E36B: db $12, $15, $71 ; SPRITE 71 | xy: { 0x150, 0x120, U } | s: 0x00\n #_09E36E: db $1B, $09, $71 ; SPRITE 71 | xy: { 0x090, 0x1B0, U } | s: 0x00\n #_09E371: db $1B, $15, $71 ; SPRITE 71 | xy: { 0x150, 0x1B0, U } | s: 0x00\n #_09E374: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0085", + "code": "RoomData_Sprites_Room0085:\n #_09E375: db $00 ; Unlayered OAM\n #_09E376: db $0E, $07, $63 ; SPRITE 63 | xy: { 0x070, 0x0E0, U } | s: 0x00\n #_09E379: db $1B, $09, $64 ; SPRITE 64 | xy: { 0x090, 0x1B0, U } | s: 0x00\n #_09E37C: db $05, $14, $4F ; SPRITE 4F | xy: { 0x140, 0x050, U } | s: 0x00\n #_09E37F: db $05, $1B, $4F ; SPRITE 4F | xy: { 0x1B0, 0x050, U } | s: 0x00\n #_09E382: db $08, $16, $4F ; SPRITE 4F | xy: { 0x160, 0x080, U } | s: 0x00\n #_09E385: db $0A, $18, $61 ; SPRITE 61 | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09E388: db $0E, $03, $71 ; SPRITE 71 | xy: { 0x030, 0x0E0, U } | s: 0x00\n #_09E38B: db $15, $0C, $71 ; SPRITE 71 | xy: { 0x0C0, 0x150, U } | s: 0x00\n #_09E38E: db $18, $18, $61 ; SPRITE 61 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E391: db $1C, $07, $71 ; SPRITE 71 | xy: { 0x070, 0x1C0, U } | s: 0x00\n #_09E394: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0086", + "code": "RoomData_Sprites_Room0086:\n #_09E395: db $01 ; Layered OAM\n #_09E396: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0087", + "code": "RoomData_Sprites_Room0087:\n #_09E397: db $00 ; Unlayered OAM\n #_09E398: db $05, $14, $18 ; SPRITE 18 | xy: { 0x140, 0x050, U } | s: 0x00\n #_09E39B: db $07, $1A, $18 ; SPRITE 18 | xy: { 0x1A0, 0x070, U } | s: 0x00\n #_09E39E: db $0B, $13, $18 ; SPRITE 18 | xy: { 0x130, 0x0B0, U } | s: 0x00\n #_09E3A1: db $19, $06, $18 ; SPRITE 18 | xy: { 0x060, 0x190, U } | s: 0x00\n #_09E3A4: db $08, $E7, $14 ; OVERLORD 14 | xy: { 0x070, 0x080, U }\n #_09E3A7: db $04, $17, $1E ; SPRITE 1E | xy: { 0x170, 0x040, U } | s: 0x00\n #_09E3AA: db $0C, $03, $1E ; SPRITE 1E | xy: { 0x030, 0x0C0, U } | s: 0x00\n #_09E3AD: db $15, $04, $1E ; SPRITE 1E | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E3B0: db $17, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x170, U } | s: 0x00\n #_09E3B3: db $18, $19, $A7 ; SPRITE A7 | xy: { 0x190, 0x180, U } | s: 0x00\n #_09E3B6: db $19, $04, $A7 ; SPRITE A7 | xy: { 0x040, 0x190, U } | s: 0x00\n #_09E3B9: db $1A, $08, $E4 ; SPRITE E4 | xy: { 0x080, 0x1A0, U } | s: 0x00\n #_09E3BC: db $1C, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x1C0, U } | s: 0x00\n #_09E3BF: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0089", + "code": "RoomData_Sprites_Room0089:\n #_09E3C0: db $00 ; Unlayered OAM\n #_09E3C1: db $0A, $10, $E3 ; SPRITE E3 | xy: { 0x100, 0x0A0, U } | s: 0x00\n #_09E3C4: db $0B, $0F, $E3 ; SPRITE E3 | xy: { 0x0F0, 0x0B0, U } | s: 0x00\n #_09E3C7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room008B", + "code": "RoomData_Sprites_Room008B:\n #_09E3C8: db $00 ; Unlayered OAM\n #_09E3C9: db $07, $15, $93 ; SPRITE 93 | xy: { 0x150, 0x070, U } | s: 0x00\n #_09E3CC: db $18, $04, $1E ; SPRITE 1E | xy: { 0x040, 0x180, U } | s: 0x00\n #_09E3CF: db $18, $0B, $1E ; SPRITE 1E | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E3D2: db $04, $1A, $24 ; SPRITE 24 | xy: { 0x1A0, 0x040, U } | s: 0x00\n #_09E3D5: db $12, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x120, U } | s: 0x00\n #_09E3D8: db $18, $07, $A7 ; SPRITE A7 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E3DB: db $18, $18, $7E ; SPRITE 7E | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E3DE: db $18, $18, $7F ; SPRITE 7F | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E3E1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room008C", + "code": "RoomData_Sprites_Room008C:\n #_09E3E2: db $00 ; Unlayered OAM\n #_09E3E3: db $03, $1A, $06 ; SPRITE 06 | xy: { 0x1A0, 0x030, U } | s: 0x00\n #_09E3E6: db $05, $F8, $1A ; OVERLORD 1A | xy: { 0x180, 0x050, U }\n #_09E3E9: db $06, $F5, $1A ; OVERLORD 1A | xy: { 0x150, 0x060, U }\n #_09E3EC: db $06, $FA, $1A ; OVERLORD 1A | xy: { 0x1A0, 0x060, U }\n #_09E3EF: db $0A, $F5, $1A ; OVERLORD 1A | xy: { 0x150, 0x0A0, U }\n #_09E3F2: db $0A, $FA, $1A ; OVERLORD 1A | xy: { 0x1A0, 0x0A0, U }\n #_09E3F5: db $08, $08, $5B ; SPRITE 5B | xy: { 0x080, 0x080, U } | s: 0x00\n #_09E3F8: db $08, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x080, U } | s: 0x00\n #_09E3FB: db $09, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x090, U } | s: 0x00\n #_09E3FE: db $0B, $03, $A7 ; SPRITE A7 | xy: { 0x030, 0x0B0, U } | s: 0x00\n #_09E401: db $17, $05, $80 ; SPRITE 80 | xy: { 0x050, 0x170, U } | s: 0x00\n #_09E404: db $17, $16, $5B ; SPRITE 5B | xy: { 0x160, 0x170, U } | s: 0x00\n #_09E407: db $18, $14, $15 ; SPRITE 15 | xy: { 0x140, 0x180, U } | s: 0x00\n #_09E40A: db $1B, $0B, $80 ; SPRITE 80 | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09E40D: db $1C, $1A, $15 ; SPRITE 15 | xy: { 0x1A0, 0x1C0, U } | s: 0x00\n #_09E410: db $07, $09, $3B ; SPRITE 3B | xy: { 0x090, 0x070, U } | s: 0x00\n #_09E413: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room008D", + "code": "RoomData_Sprites_Room008D:\n #_09E414: db $00 ; Unlayered OAM\n #_09E415: db $08, $E7, $14 ; OVERLORD 14 | xy: { 0x070, 0x080, U }\n #_09E418: db $04, $07, $C6 ; SPRITE C6 | xy: { 0x070, 0x040, U } | s: 0x00\n #_09E41B: db $08, $09, $15 ; SPRITE 15 | xy: { 0x090, 0x080, U } | s: 0x00\n #_09E41E: db $09, $08, $D1 ; SPRITE D1 | xy: { 0x080, 0x090, U } | s: 0x00\n #_09E421: db $0C, $09, $C6 ; SPRITE C6 | xy: { 0x090, 0x0C0, U } | s: 0x00\n #_09E424: db $0D, $13, $8B ; SPRITE 8B | xy: { 0x130, 0x0D0, U } | s: 0x00\n #_09E427: db $0F, $EF, $09 ; OVERLORD 09 | xy: { 0x0F0, 0x0F0, U }\n #_09E42A: db $10, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x100, U } | s: 0x00\n #_09E42D: db $14, $17, $A7 ; SPRITE A7 | xy: { 0x170, 0x140, U } | s: 0x00\n #_09E430: db $18, $07, $7E ; SPRITE 7E | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E433: db $1B, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09E436: db $1C, $13, $C5 ; SPRITE C5 | xy: { 0x130, 0x1C0, U } | s: 0x00\n #_09E439: db $1C, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x1C0, U } | s: 0x00\n #_09E43C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room008E", + "code": "RoomData_Sprites_Room008E:\n #_09E43D: db $00 ; Unlayered OAM\n #_09E43E: db $02, $1B, $A1 ; SPRITE A1 | xy: { 0x1B0, 0x020, U } | s: 0x00\n #_09E441: db $05, $18, $8F ; SPRITE 8F | xy: { 0x180, 0x050, U } | s: 0x00\n #_09E444: db $06, $14, $D1 ; SPRITE D1 | xy: { 0x140, 0x060, U } | s: 0x00\n #_09E447: db $08, $1B, $8F ; SPRITE 8F | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09E44A: db $09, $14, $8F ; SPRITE 8F | xy: { 0x140, 0x090, U } | s: 0x00\n #_09E44D: db $0A, $16, $8F ; SPRITE 8F | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09E450: db $0B, $14, $8F ; SPRITE 8F | xy: { 0x140, 0x0B0, U } | s: 0x00\n #_09E453: db $0B, $18, $8F ; SPRITE 8F | xy: { 0x180, 0x0B0, U } | s: 0x00\n #_09E456: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0090", + "code": "RoomData_Sprites_Room0090:\n #_09E457: db $00 ; Unlayered OAM\n #_09E458: db $15, $07, $BD ; SPRITE BD | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E45B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0091", + "code": "RoomData_Sprites_Room0091:\n #_09E45C: db $00 ; Unlayered OAM\n #_09E45D: db $04, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x040, U } | s: 0x00\n #_09E460: db $0E, $1B, $8A ; SPRITE 8A | xy: { 0x1B0, 0x0E0, U } | s: 0x00\n #_09E463: db $0F, $F7, $08 ; OVERLORD 08 | xy: { 0x170, 0x0F0, U }\n #_09E466: db $12, $17, $C5 ; SPRITE C5 | xy: { 0x170, 0x120, U } | s: 0x00\n #_09E469: db $12, $18, $D1 ; SPRITE D1 | xy: { 0x180, 0x120, U } | s: 0x00\n #_09E46C: db $12, $19, $15 ; SPRITE 15 | xy: { 0x190, 0x120, U } | s: 0x00\n #_09E46F: db $18, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E472: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0092", + "code": "RoomData_Sprites_Room0092:\n #_09E473: db $00 ; Unlayered OAM\n #_09E474: db $09, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x090, U } | s: 0x00\n #_09E477: db $0C, $03, $1E ; SPRITE 1E | xy: { 0x030, 0x0C0, U } | s: 0x00\n #_09E47A: db $04, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x040, U } | s: 0x00\n #_09E47D: db $05, $0B, $C5 ; SPRITE C5 | xy: { 0x0B0, 0x050, U } | s: 0x00\n #_09E480: db $08, $09, $15 ; SPRITE 15 | xy: { 0x090, 0x080, U } | s: 0x00\n #_09E483: db $09, $17, $C5 ; SPRITE C5 | xy: { 0x170, 0x090, U } | s: 0x00\n #_09E486: db $0F, $15, $C6 ; SPRITE C6 | xy: { 0x150, 0x0F0, U } | s: 0x00\n #_09E489: db $12, $E7, $16 ; OVERLORD 16 | xy: { 0x070, 0x120, U }\n #_09E48C: db $12, $19, $8A ; SPRITE 8A | xy: { 0x190, 0x120, U } | s: 0x00\n #_09E48F: db $14, $03, $15 ; SPRITE 15 | xy: { 0x030, 0x140, U } | s: 0x00\n #_09E492: db $16, $0A, $A7 ; SPRITE A7 | xy: { 0x0A0, 0x160, U } | s: 0x00\n #_09E495: db $1B, $03, $15 ; SPRITE 15 | xy: { 0x030, 0x1B0, U } | s: 0x00\n #_09E498: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0093", + "code": "RoomData_Sprites_Room0093:\n #_09E499: db $00 ; Unlayered OAM\n #_09E49A: db $09, $09, $C5 ; SPRITE C5 | xy: { 0x090, 0x090, U } | s: 0x00\n #_09E49D: db $09, $16, $C5 ; SPRITE C5 | xy: { 0x160, 0x090, U } | s: 0x00\n #_09E4A0: db $0C, $0C, $C5 ; SPRITE C5 | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09E4A3: db $0C, $13, $C5 ; SPRITE C5 | xy: { 0x130, 0x0C0, U } | s: 0x00\n #_09E4A6: db $0C, $17, $8F ; SPRITE 8F | xy: { 0x170, 0x0C0, U } | s: 0x00\n #_09E4A9: db $15, $04, $A7 ; SPRITE A7 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E4AC: db $1C, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x1C0, U } | s: 0x00\n #_09E4AF: db $1C, $04, $15 ; SPRITE 15 | xy: { 0x040, 0x1C0, U } | s: 0x00\n #_09E4B2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0095", + "code": "RoomData_Sprites_Room0095:\n #_09E4B3: db $00 ; Unlayered OAM\n #_09E4B4: db $0C, $16, $43 ; SPRITE 43 | xy: { 0x160, 0x0C0, U } | s: 0x00\n #_09E4B7: db $0C, $17, $43 ; SPRITE 43 | xy: { 0x170, 0x0C0, U } | s: 0x00\n #_09E4BA: db $0C, $18, $43 ; SPRITE 43 | xy: { 0x180, 0x0C0, U } | s: 0x00\n #_09E4BD: db $0C, $19, $43 ; SPRITE 43 | xy: { 0x190, 0x0C0, U } | s: 0x00\n #_09E4C0: db $1A, $F7, $0B ; OVERLORD 0B | xy: { 0x170, 0x1A0, U }\n #_09E4C3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0096", + "code": "RoomData_Sprites_Room0096:\n #_09E4C4: db $00 ; Unlayered OAM\n #_09E4C5: db $0B, $08, $7E ; SPRITE 7E | xy: { 0x080, 0x0B0, U } | s: 0x00\n #_09E4C8: db $15, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x150, U } | s: 0x00\n #_09E4CB: db $17, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x170, U } | s: 0x00\n #_09E4CE: db $19, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x190, U } | s: 0x00\n #_09E4D1: db $1B, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x1B0, U } | s: 0x00\n #_09E4D4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0097", + "code": "RoomData_Sprites_Room0097:\n #_09E4D5: db $00 ; Unlayered OAM\n #_09E4D6: db $0F, $EF, $15 ; OVERLORD 15 | xy: { 0x0F0, 0x0F0, U }\n #_09E4D9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0098", + "code": "RoomData_Sprites_Room0098:\n #_09E4DA: db $00 ; Unlayered OAM\n #_09E4DB: db $13, $10, $8F ; SPRITE 8F | xy: { 0x100, 0x130, U } | s: 0x00\n #_09E4DE: db $14, $09, $8F ; SPRITE 8F | xy: { 0x090, 0x140, U } | s: 0x00\n #_09E4E1: db $14, $0C, $8F ; SPRITE 8F | xy: { 0x0C0, 0x140, U } | s: 0x00\n #_09E4E4: db $14, $0F, $8F ; SPRITE 8F | xy: { 0x0F0, 0x140, U } | s: 0x00\n #_09E4E7: db $17, $08, $8F ; SPRITE 8F | xy: { 0x080, 0x170, U } | s: 0x00\n #_09E4EA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0099", + "code": "RoomData_Sprites_Room0099:\n #_09E4EB: db $00 ; Unlayered OAM\n #_09E4EC: db $06, $15, $15 ; SPRITE 15 | xy: { 0x150, 0x060, U } | s: 0x00\n #_09E4EF: db $08, $1A, $15 ; SPRITE 15 | xy: { 0x1A0, 0x080, U } | s: 0x00\n #_09E4F2: db $17, $0E, $83 ; SPRITE 83 | xy: { 0x0E0, 0x170, U } | s: 0x00\n #_09E4F5: db $17, $11, $83 ; SPRITE 83 | xy: { 0x110, 0x170, U } | s: 0x00\n #_09E4F8: db $FE, $00, $E4 ; small key on above sprite\n #_09E4FB: db $18, $0D, $4E ; SPRITE 4E | xy: { 0x0D0, 0x180, U } | s: 0x00\n #_09E4FE: db $18, $12, $4E ; SPRITE 4E | xy: { 0x120, 0x180, U } | s: 0x00\n #_09E501: db $19, $0E, $4F ; SPRITE 4F | xy: { 0x0E0, 0x190, U } | s: 0x00\n #_09E504: db $19, $0F, $4F ; SPRITE 4F | xy: { 0x0F0, 0x190, U } | s: 0x00\n #_09E507: db $19, $10, $4F ; SPRITE 4F | xy: { 0x100, 0x190, U } | s: 0x00\n #_09E50A: db $19, $11, $4F ; SPRITE 4F | xy: { 0x110, 0x190, U } | s: 0x00\n #_09E50D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room009B", + "code": "RoomData_Sprites_Room009B:\n #_09E50E: db $00 ; Unlayered OAM\n #_09E50F: db $08, $06, $1E ; SPRITE 1E | xy: { 0x060, 0x080, U } | s: 0x00\n #_09E512: db $08, $07, $1E ; SPRITE 1E | xy: { 0x070, 0x080, U } | s: 0x00\n #_09E515: db $08, $14, $1E ; SPRITE 1E | xy: { 0x140, 0x080, U } | s: 0x00\n #_09E518: db $05, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x050, U } | s: 0x00\n #_09E51B: db $06, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x060, U } | s: 0x00\n #_09E51E: db $07, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x070, U } | s: 0x00\n #_09E521: db $08, $03, $C6 ; SPRITE C6 | xy: { 0x030, 0x080, U } | s: 0x00\n #_09E524: db $08, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x080, U } | s: 0x00\n #_09E527: db $09, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x090, U } | s: 0x00\n #_09E52A: db $0A, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x0A0, U } | s: 0x00\n #_09E52D: db $0B, $1C, $8A ; SPRITE 8A | xy: { 0x1C0, 0x0B0, U } | s: 0x00\n #_09E530: db $1A, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09E533: db $1B, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x1B0, U } | s: 0x00\n #_09E536: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room009C", + "code": "RoomData_Sprites_Room009C:\n #_09E537: db $00 ; Unlayered OAM\n #_09E538: db $09, $13, $26 ; SPRITE 26 | xy: { 0x130, 0x090, U } | s: 0x00\n #_09E53B: db $0A, $0B, $13 ; SPRITE 13 | xy: { 0x0B0, 0x0A0, U } | s: 0x00\n #_09E53E: db $0F, $11, $26 ; SPRITE 26 | xy: { 0x110, 0x0F0, U } | s: 0x00\n #_09E541: db $0E, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x0E0, U } | s: 0x00\n #_09E544: db $12, $0D, $26 ; SPRITE 26 | xy: { 0x0D0, 0x120, U } | s: 0x00\n #_09E547: db $13, $09, $26 ; SPRITE 26 | xy: { 0x090, 0x130, U } | s: 0x00\n #_09E54A: db $1C, $0F, $80 ; SPRITE 80 | xy: { 0x0F0, 0x1C0, U } | s: 0x00\n #_09E54D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room009D", + "code": "RoomData_Sprites_Room009D:\n #_09E54E: db $00 ; Unlayered OAM\n #_09E54F: db $06, $1C, $1E ; SPRITE 1E | xy: { 0x1C0, 0x060, U } | s: 0x00\n #_09E552: db $04, $06, $26 ; SPRITE 26 | xy: { 0x060, 0x040, U } | s: 0x00\n #_09E555: db $04, $14, $8B ; SPRITE 8B | xy: { 0x140, 0x040, U } | s: 0x00\n #_09E558: db $09, $18, $8B ; SPRITE 8B | xy: { 0x180, 0x090, U } | s: 0x00\n #_09E55B: db $0C, $05, $26 ; SPRITE 26 | xy: { 0x050, 0x0C0, U } | s: 0x00\n #_09E55E: db $0C, $13, $8B ; SPRITE 8B | xy: { 0x130, 0x0C0, U } | s: 0x00\n #_09E561: db $14, $10, $24 ; SPRITE 24 | xy: { 0x100, 0x140, U } | s: 0x00\n #_09E564: db $18, $0B, $24 ; SPRITE 24 | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E567: db $1C, $11, $24 ; SPRITE 24 | xy: { 0x110, 0x1C0, U } | s: 0x00\n #_09E56A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room009E", + "code": "RoomData_Sprites_Room009E:\n #_09E56B: db $00 ; Unlayered OAM\n #_09E56C: db $05, $18, $23 ; SPRITE 23 | xy: { 0x180, 0x050, U } | s: 0x00\n #_09E56F: db $08, $16, $23 ; SPRITE 23 | xy: { 0x160, 0x080, U } | s: 0x00\n #_09E572: db $08, $18, $91 ; SPRITE 91 | xy: { 0x180, 0x080, U } | s: 0x00\n #_09E575: db $08, $19, $23 ; SPRITE 23 | xy: { 0x190, 0x080, U } | s: 0x00\n #_09E578: db $12, $14, $A1 ; SPRITE A1 | xy: { 0x140, 0x120, U } | s: 0x00\n #_09E57B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room009F", + "code": "RoomData_Sprites_Room009F:\n #_09E57C: db $00 ; Unlayered OAM\n #_09E57D: db $12, $04, $9D ; SPRITE 9D | xy: { 0x040, 0x120, U } | s: 0x00\n #_09E580: db $12, $06, $9D ; SPRITE 9D | xy: { 0x060, 0x120, U } | s: 0x00\n #_09E583: db $12, $09, $9D ; SPRITE 9D | xy: { 0x090, 0x120, U } | s: 0x00\n #_09E586: db $12, $0B, $9D ; SPRITE 9D | xy: { 0x0B0, 0x120, U } | s: 0x00\n #_09E589: db $17, $07, $15 ; SPRITE 15 | xy: { 0x070, 0x170, U } | s: 0x00\n #_09E58C: db $18, $08, $7E ; SPRITE 7E | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E58F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A0", + "code": "RoomData_Sprites_Room00A0:\n #_09E590: db $00 ; Unlayered OAM\n #_09E591: db $08, $03, $C5 ; SPRITE C5 | xy: { 0x030, 0x080, U } | s: 0x00\n #_09E594: db $08, $0E, $15 ; SPRITE 15 | xy: { 0x0E0, 0x080, U } | s: 0x00\n #_09E597: db $0C, $14, $80 ; SPRITE 80 | xy: { 0x140, 0x0C0, U } | s: 0x00\n #_09E59A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A1", + "code": "RoomData_Sprites_Room00A1:\n #_09E59B: db $00 ; Unlayered OAM\n #_09E59C: db $08, $0A, $1E ; SPRITE 1E | xy: { 0x0A0, 0x080, U } | s: 0x00\n #_09E59F: db $07, $18, $5B ; SPRITE 5B | xy: { 0x180, 0x070, U } | s: 0x00\n #_09E5A2: db $0B, $16, $5B ; SPRITE 5B | xy: { 0x160, 0x0B0, U } | s: 0x00\n #_09E5A5: db $10, $19, $9B ; SPRITE 9B | xy: { 0x190, 0x100, U } | s: 0x00\n #_09E5A8: db $15, $15, $C5 ; SPRITE C5 | xy: { 0x150, 0x150, U } | s: 0x00\n #_09E5AB: db $15, $1A, $C5 ; SPRITE C5 | xy: { 0x1A0, 0x150, U } | s: 0x00\n #_09E5AE: db $19, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x190, U } | s: 0x00\n #_09E5B1: db $19, $17, $D1 ; SPRITE D1 | xy: { 0x170, 0x190, U } | s: 0x00\n #_09E5B4: db $19, $1B, $A7 ; SPRITE A7 | xy: { 0x1B0, 0x190, U } | s: 0x00\n #_09E5B7: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A3", + "code": "RoomData_Sprites_Room00A3:\n #_09E5B8: db $00 ; Unlayered OAM\n #_09E5B9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A4", + "code": "RoomData_Sprites_Room00A4:\n #_09E5BA: db $00 ; Unlayered OAM\n #_09E5BB: db $15, $07, $CB ; SPRITE CB | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E5BE: db $15, $07, $CC ; SPRITE CC | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E5C1: db $15, $07, $CD ; SPRITE CD | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E5C4: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A5", + "code": "RoomData_Sprites_Room00A5:\n #_09E5C5: db $00 ; Unlayered OAM\n #_09E5C6: db $05, $16, $9B ; SPRITE 9B | xy: { 0x160, 0x050, U } | s: 0x00\n #_09E5C9: db $05, $19, $9B ; SPRITE 9B | xy: { 0x190, 0x050, U } | s: 0x00\n #_09E5CC: db $07, $04, $9B ; SPRITE 9B | xy: { 0x040, 0x070, U } | s: 0x00\n #_09E5CF: db $07, $0B, $9B ; SPRITE 9B | xy: { 0x0B0, 0x070, U } | s: 0x00\n #_09E5D2: db $08, $17, $8A ; SPRITE 8A | xy: { 0x170, 0x080, U } | s: 0x00\n #_09E5D5: db $09, $15, $9B ; SPRITE 9B | xy: { 0x150, 0x090, U } | s: 0x00\n #_09E5D8: db $09, $1A, $9B ; SPRITE 9B | xy: { 0x1A0, 0x090, U } | s: 0x00\n #_09E5DB: db $0A, $08, $9B ; SPRITE 9B | xy: { 0x080, 0x0A0, U } | s: 0x00\n #_09E5DE: db $12, $0C, $97 ; SPRITE 97 | xy: { 0x0C0, 0x120, U } | s: 0x00\n #_09E5E1: db $12, $12, $97 ; SPRITE 97 | xy: { 0x120, 0x120, U } | s: 0x00\n #_09E5E4: db $17, $12, $43 ; SPRITE 43 | xy: { 0x120, 0x170, U } | s: 0x00\n #_09E5E7: db $18, $13, $41 ; SPRITE 41 | xy: { 0x130, 0x180, U } | s: 0x00\n #_09E5EA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A6", + "code": "RoomData_Sprites_Room00A6:\n #_09E5EB: db $00 ; Unlayered OAM\n #_09E5EC: db $0F, $EF, $15 ; OVERLORD 15 | xy: { 0x0F0, 0x0F0, U }\n #_09E5EF: db $0E, $0C, $15 ; SPRITE 15 | xy: { 0x0C0, 0x0E0, U } | s: 0x00\n #_09E5F2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A7", + "code": "RoomData_Sprites_Room00A7:\n #_09E5F3: db $00 ; Unlayered OAM\n #_09E5F4: db $08, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x080, U } | s: 0x00\n #_09E5F7: db $09, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x090, U } | s: 0x00\n #_09E5FA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A8", + "code": "RoomData_Sprites_Room00A8:\n #_09E5FB: db $01 ; Layered OAM\n #_09E5FC: db $0E, $16, $A7 ; SPRITE A7 | xy: { 0x160, 0x0E0, U } | s: 0x00\n #_09E5FF: db $0E, $1A, $A7 ; SPRITE A7 | xy: { 0x1A0, 0x0E0, U } | s: 0x00\n #_09E602: db $12, $16, $A7 ; SPRITE A7 | xy: { 0x160, 0x120, U } | s: 0x00\n #_09E605: db $12, $1A, $A7 ; SPRITE A7 | xy: { 0x1A0, 0x120, U } | s: 0x00\n #_09E608: db $16, $E8, $18 ; OVERLORD 18 | xy: { 0x080, 0x160, U }\n #_09E60B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00A9", + "code": "RoomData_Sprites_Room00A9:\n #_09E60C: db $00 ; Unlayered OAM\n #_09E60D: db $85, $09, $83 ; SPRITE 83 | xy: { 0x090, 0x050, L } | s: 0x00\n #_09E610: db $85, $16, $83 ; SPRITE 83 | xy: { 0x160, 0x050, L } | s: 0x00\n #_09E613: db $8C, $ED, $05 ; OVERLORD 05 | xy: { 0x0D0, 0x0C0, L }\n #_09E616: db $8C, $F2, $05 ; OVERLORD 05 | xy: { 0x120, 0x0C0, L }\n #_09E619: db $92, $ED, $05 ; OVERLORD 05 | xy: { 0x0D0, 0x120, L }\n #_09E61C: db $92, $F2, $05 ; OVERLORD 05 | xy: { 0x120, 0x120, L }\n #_09E61F: db $90, $0A, $A7 ; SPRITE A7 | xy: { 0x0A0, 0x100, L } | s: 0x00\n #_09E622: db $90, $14, $A7 ; SPRITE A7 | xy: { 0x140, 0x100, L } | s: 0x00\n #_09E625: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00AA", + "code": "RoomData_Sprites_Room00AA:\n #_09E626: db $01 ; Layered OAM\n #_09E627: db $06, $18, $15 ; SPRITE 15 | xy: { 0x180, 0x060, U } | s: 0x00\n #_09E62A: db $07, $0A, $4F ; SPRITE 4F | xy: { 0x0A0, 0x070, U } | s: 0x00\n #_09E62D: db $0B, $06, $A7 ; SPRITE A7 | xy: { 0x060, 0x0B0, U } | s: 0x00\n #_09E630: db $0C, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x0C0, U } | s: 0x00\n #_09E633: db $13, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x130, U } | s: 0x00\n #_09E636: db $14, $0A, $4F ; SPRITE 4F | xy: { 0x0A0, 0x140, U } | s: 0x00\n #_09E639: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00AB", + "code": "RoomData_Sprites_Room00AB:\n #_09E63A: db $00 ; Unlayered OAM\n #_09E63B: db $18, $04, $1E ; SPRITE 1E | xy: { 0x040, 0x180, U } | s: 0x00\n #_09E63E: db $15, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x150, U } | s: 0x00\n #_09E641: db $16, $0C, $8A ; SPRITE 8A | xy: { 0x0C0, 0x160, U } | s: 0x00\n #_09E644: db $17, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x170, U } | s: 0x00\n #_09E647: db $18, $06, $8F ; SPRITE 8F | xy: { 0x060, 0x180, U } | s: 0x00\n #_09E64A: db $19, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x190, U } | s: 0x00\n #_09E64D: db $1A, $0C, $8A ; SPRITE 8A | xy: { 0x0C0, 0x1A0, U } | s: 0x00\n #_09E650: db $1B, $03, $8A ; SPRITE 8A | xy: { 0x030, 0x1B0, U } | s: 0x00\n #_09E653: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00AC", + "code": "RoomData_Sprites_Room00AC:\n #_09E654: db $00 ; Unlayered OAM\n #_09E655: db $15, $19, $CE ; SPRITE CE | xy: { 0x190, 0x150, U } | s: 0x00\n #_09E658: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00AE", + "code": "RoomData_Sprites_Room00AE:\n #_09E659: db $00 ; Unlayered OAM\n #_09E65A: db $07, $13, $24 ; SPRITE 24 | xy: { 0x130, 0x070, U } | s: 0x00\n #_09E65D: db $07, $15, $24 ; SPRITE 24 | xy: { 0x150, 0x070, U } | s: 0x00\n #_09E660: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00AF", + "code": "RoomData_Sprites_Room00AF:\n #_09E661: db $00 ; Unlayered OAM\n #_09E662: db $08, $0A, $7E ; SPRITE 7E | xy: { 0x0A0, 0x080, U } | s: 0x00\n #_09E665: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B0", + "code": "RoomData_Sprites_Room00B0:\n #_09E666: db $00 ; Unlayered OAM\n #_09E667: db $07, $07, $43 ; SPRITE 43 | xy: { 0x070, 0x070, U } | s: 0x00\n #_09E66A: db $07, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x070, U } | s: 0x00\n #_09E66D: db $07, $18, $6F ; SPRITE 6F | xy: { 0x180, 0x070, U } | s: 0x00\n #_09E670: db $08, $14, $48 ; SPRITE 48 | xy: { 0x140, 0x080, U } | s: 0x00\n #_09E673: db $08, $1B, $48 ; SPRITE 48 | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09E676: db $0B, $05, $43 ; SPRITE 43 | xy: { 0x050, 0x0B0, U } | s: 0x00\n #_09E679: db $14, $16, $6A ; SPRITE 6A | xy: { 0x160, 0x140, U } | s: 0x00\n #_09E67C: db $16, $04, $6F ; SPRITE 6F | xy: { 0x040, 0x160, U } | s: 0x00\n #_09E67F: db $16, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x160, U } | s: 0x00\n #_09E682: db $16, $0A, $43 ; SPRITE 43 | xy: { 0x0A0, 0x160, U } | s: 0x00\n #_09E685: db $18, $08, $43 ; SPRITE 43 | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E688: db $FE, $00, $E4 ; small key on above sprite\n #_09E68B: db $1A, $1B, $44 ; SPRITE 44 | xy: { 0x1B0, 0x1A0, U } | s: 0x00\n #_09E68E: db $1C, $17, $48 ; SPRITE 48 | xy: { 0x170, 0x1C0, U } | s: 0x00\n #_09E691: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B1", + "code": "RoomData_Sprites_Room00B1:\n #_09E692: db $00 ; Unlayered OAM\n #_09E693: db $07, $15, $C5 ; SPRITE C5 | xy: { 0x150, 0x070, U } | s: 0x00\n #_09E696: db $07, $1A, $C5 ; SPRITE C5 | xy: { 0x1A0, 0x070, U } | s: 0x00\n #_09E699: db $0E, $16, $8A ; SPRITE 8A | xy: { 0x160, 0x0E0, U } | s: 0x00\n #_09E69C: db $11, $19, $8A ; SPRITE 8A | xy: { 0x190, 0x110, U } | s: 0x00\n #_09E69F: db $17, $0C, $9B ; SPRITE 9B | xy: { 0x0C0, 0x170, U } | s: 0x00\n #_09E6A2: db $17, $1A, $7D ; SPRITE 7D | xy: { 0x1A0, 0x170, U } | s: 0x00\n #_09E6A5: db $18, $07, $C6 ; SPRITE C6 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E6A8: db $1A, $03, $9B ; SPRITE 9B | xy: { 0x030, 0x1A0, U } | s: 0x00\n #_09E6AB: db $1A, $15, $15 ; SPRITE 15 | xy: { 0x150, 0x1A0, U } | s: 0x00\n #_09E6AE: db $1C, $08, $9B ; SPRITE 9B | xy: { 0x080, 0x1C0, U } | s: 0x00\n #_09E6B1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B2", + "code": "RoomData_Sprites_Room00B2:\n #_09E6B2: db $01 ; Layered OAM\n #_09E6B3: db $88, $14, $9B ; SPRITE 9B | xy: { 0x140, 0x080, L } | s: 0x00\n #_09E6B6: db $8A, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x0A0, L } | s: 0x00\n #_09E6B9: db $8A, $12, $15 ; SPRITE 15 | xy: { 0x120, 0x0A0, L } | s: 0x00\n #_09E6BC: db $8A, $13, $D1 ; SPRITE D1 | xy: { 0x130, 0x0A0, L } | s: 0x00\n #_09E6BF: db $8B, $07, $15 ; SPRITE 15 | xy: { 0x070, 0x0B0, L } | s: 0x00\n #_09E6C2: db $15, $04, $20 ; SPRITE 20 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E6C5: db $15, $0B, $20 ; SPRITE 20 | xy: { 0x0B0, 0x150, U } | s: 0x00\n #_09E6C8: db $16, $03, $15 ; SPRITE 15 | xy: { 0x030, 0x160, U } | s: 0x00\n #_09E6CB: db $18, $15, $C5 ; SPRITE C5 | xy: { 0x150, 0x180, U } | s: 0x00\n #_09E6CE: db $18, $1A, $C5 ; SPRITE C5 | xy: { 0x1A0, 0x180, U } | s: 0x00\n #_09E6D1: db $1B, $04, $20 ; SPRITE 20 | xy: { 0x040, 0x1B0, U } | s: 0x00\n #_09E6D4: db $1B, $0B, $20 ; SPRITE 20 | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09E6D7: db $1B, $14, $4E ; SPRITE 4E | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09E6DA: db $1B, $1B, $4E ; SPRITE 4E | xy: { 0x1B0, 0x1B0, U } | s: 0x00\n #_09E6DD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B3", + "code": "RoomData_Sprites_Room00B3:\n #_09E6DE: db $00 ; Unlayered OAM\n #_09E6DF: db $15, $03, $A7 ; SPRITE A7 | xy: { 0x030, 0x150, U } | s: 0x00\n #_09E6E2: db $15, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x150, U } | s: 0x00\n #_09E6E5: db $18, $06, $61 ; SPRITE 61 | xy: { 0x060, 0x180, U } | s: 0x00\n #_09E6E8: db $1A, $0A, $C6 ; SPRITE C6 | xy: { 0x0A0, 0x1A0, U } | s: 0x00\n #_09E6EB: db $1C, $07, $A7 ; SPRITE A7 | xy: { 0x070, 0x1C0, U } | s: 0x00\n #_09E6EE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B5", + "code": "RoomData_Sprites_Room00B5:\n #_09E6EF: db $00 ; Unlayered OAM\n #_09E6F0: db $0A, $16, $7E ; SPRITE 7E | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09E6F3: db $0F, $09, $7E ; SPRITE 7E | xy: { 0x090, 0x0F0, U } | s: 0x00\n #_09E6F6: db $16, $16, $7E ; SPRITE 7E | xy: { 0x160, 0x160, U } | s: 0x00\n #_09E6F9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B6", + "code": "RoomData_Sprites_Room00B6:\n #_09E6FA: db $00 ; Unlayered OAM\n #_09E6FB: db $07, $06, $CA ; SPRITE CA | xy: { 0x060, 0x070, U } | s: 0x00\n #_09E6FE: db $07, $0A, $CA ; SPRITE CA | xy: { 0x0A0, 0x070, U } | s: 0x00\n #_09E701: db $04, $03, $1E ; SPRITE 1E | xy: { 0x030, 0x040, U } | s: 0x00\n #_09E704: db $04, $0C, $1E ; SPRITE 1E | xy: { 0x0C0, 0x040, U } | s: 0x00\n #_09E707: db $07, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x070, U } | s: 0x00\n #_09E70A: db $15, $07, $C7 ; SPRITE C7 | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E70D: db $FE, $00, $E4 ; small key on above sprite\n #_09E710: db $18, $F7, $14 ; OVERLORD 14 | xy: { 0x170, 0x180, U }\n #_09E713: db $1B, $07, $8F ; SPRITE 8F | xy: { 0x070, 0x1B0, U } | s: 0x00\n #_09E716: db $1B, $08, $8F ; SPRITE 8F | xy: { 0x080, 0x1B0, U } | s: 0x00\n #_09E719: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B7", + "code": "RoomData_Sprites_Room00B7:\n #_09E71A: db $00 ; Unlayered OAM\n #_09E71B: db $09, $04, $5F ; SPRITE 5F | xy: { 0x040, 0x090, U } | s: 0x00\n #_09E71E: db $11, $04, $5D ; SPRITE 5D | xy: { 0x040, 0x110, U } | s: 0x00\n #_09E721: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B8", + "code": "RoomData_Sprites_Room00B8:\n #_09E722: db $00 ; Unlayered OAM\n #_09E723: db $0B, $15, $4E ; SPRITE 4E | xy: { 0x150, 0x0B0, U } | s: 0x00\n #_09E726: db $0B, $1B, $4E ; SPRITE 4E | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09E729: db $0D, $18, $82 ; SPRITE 82 | xy: { 0x180, 0x0D0, U } | s: 0x00\n #_09E72C: db $13, $18, $83 ; SPRITE 83 | xy: { 0x180, 0x130, U } | s: 0x00\n #_09E72F: db $16, $14, $A7 ; SPRITE A7 | xy: { 0x140, 0x160, U } | s: 0x00\n #_09E732: db $16, $1C, $A7 ; SPRITE A7 | xy: { 0x1C0, 0x160, U } | s: 0x00\n #_09E735: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00B9", + "code": "RoomData_Sprites_Room00B9:\n #_09E736: db $01 ; Layered OAM\n #_09E737: db $85, $F1, $03 ; OVERLORD 03 | xy: { 0x110, 0x050, L }\n #_09E73A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BA", + "code": "RoomData_Sprites_Room00BA:\n #_09E73B: db $00 ; Unlayered OAM\n #_09E73C: db $04, $14, $A7 ; SPRITE A7 | xy: { 0x140, 0x040, U } | s: 0x00\n #_09E73F: db $06, $03, $15 ; SPRITE 15 | xy: { 0x030, 0x060, U } | s: 0x00\n #_09E742: db $06, $18, $A7 ; SPRITE A7 | xy: { 0x180, 0x060, U } | s: 0x00\n #_09E745: db $09, $03, $15 ; SPRITE 15 | xy: { 0x030, 0x090, U } | s: 0x00\n #_09E748: db $09, $0C, $4F ; SPRITE 4F | xy: { 0x0C0, 0x090, U } | s: 0x00\n #_09E74B: db $0A, $18, $A7 ; SPRITE A7 | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09E74E: db $0C, $08, $4F ; SPRITE 4F | xy: { 0x080, 0x0C0, U } | s: 0x00\n #_09E751: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BB", + "code": "RoomData_Sprites_Room00BB:\n #_09E752: db $00 ; Unlayered OAM\n #_09E753: db $04, $1B, $A6 ; SPRITE A6 | xy: { 0x1B0, 0x040, U } | s: 0x00\n #_09E756: db $0A, $06, $C3 ; SPRITE C3 | xy: { 0x060, 0x0A0, U } | s: 0x00\n #_09E759: db $0A, $16, $A6 ; SPRITE A6 | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09E75C: db $0A, $19, $C3 ; SPRITE C3 | xy: { 0x190, 0x0A0, U } | s: 0x00\n #_09E75F: db $0C, $08, $15 ; SPRITE 15 | xy: { 0x080, 0x0C0, U } | s: 0x00\n #_09E762: db $0E, $09, $C3 ; SPRITE C3 | xy: { 0x090, 0x0E0, U } | s: 0x00\n #_09E765: db $10, $07, $80 ; SPRITE 80 | xy: { 0x070, 0x100, U } | s: 0x00\n #_09E768: db $14, $08, $C3 ; SPRITE C3 | xy: { 0x080, 0x140, U } | s: 0x00\n #_09E76B: db $15, $19, $C3 ; SPRITE C3 | xy: { 0x190, 0x150, U } | s: 0x00\n #_09E76E: db $16, $15, $15 ; SPRITE 15 | xy: { 0x150, 0x160, U } | s: 0x00\n #_09E771: db $1A, $17, $C3 ; SPRITE C3 | xy: { 0x170, 0x1A0, U } | s: 0x00\n #_09E774: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BC", + "code": "RoomData_Sprites_Room00BC:\n #_09E775: db $00 ; Unlayered OAM\n #_09E776: db $05, $06, $A5 ; SPRITE A5 | xy: { 0x060, 0x050, U } | s: 0x00\n #_09E779: db $05, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x050, U } | s: 0x00\n #_09E77C: db $06, $08, $8A ; SPRITE 8A | xy: { 0x080, 0x060, U } | s: 0x00\n #_09E77F: db $09, $0A, $A6 ; SPRITE A6 | xy: { 0x0A0, 0x090, U } | s: 0x00\n #_09E782: db $0A, $09, $8A ; SPRITE 8A | xy: { 0x090, 0x0A0, U } | s: 0x00\n #_09E785: db $0B, $05, $A5 ; SPRITE A5 | xy: { 0x050, 0x0B0, U } | s: 0x00\n #_09E788: db $0A, $17, $A7 ; SPRITE A7 | xy: { 0x170, 0x0A0, U } | s: 0x00\n #_09E78B: db $11, $18, $A7 ; SPRITE A7 | xy: { 0x180, 0x110, U } | s: 0x00\n #_09E78E: db $16, $16, $A7 ; SPRITE A7 | xy: { 0x160, 0x160, U } | s: 0x00\n #_09E791: db $17, $08, $A5 ; SPRITE A5 | xy: { 0x080, 0x170, U } | s: 0x00\n #_09E794: db $18, $07, $80 ; SPRITE 80 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E797: db $19, $08, $A6 ; SPRITE A6 | xy: { 0x080, 0x190, U } | s: 0x00\n #_09E79A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BD", + "code": "RoomData_Sprites_Room00BD:\n #_09E79B: db $00 ; Unlayered OAM\n #_09E79C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BE", + "code": "RoomData_Sprites_Room00BE:\n #_09E79D: db $00 ; Unlayered OAM\n #_09E79E: db $08, $17, $15 ; SPRITE 15 | xy: { 0x170, 0x080, U } | s: 0x00\n #_09E7A1: db $12, $14, $A1 ; SPRITE A1 | xy: { 0x140, 0x120, U } | s: 0x00\n #_09E7A4: db $15, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x150, U } | s: 0x00\n #_09E7A7: db $15, $1B, $24 ; SPRITE 24 | xy: { 0x1B0, 0x150, U } | s: 0x00\n #_09E7AA: db $16, $18, $91 ; SPRITE 91 | xy: { 0x180, 0x160, U } | s: 0x00\n #_09E7AD: db $1A, $14, $24 ; SPRITE 24 | xy: { 0x140, 0x1A0, U } | s: 0x00\n #_09E7B0: db $1A, $1B, $24 ; SPRITE 24 | xy: { 0x1B0, 0x1A0, U } | s: 0x00\n #_09E7B3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00BF", + "code": "RoomData_Sprites_Room00BF:\n #_09E7B4: db $00 ; Unlayered OAM\n #_09E7B5: db $18, $0B, $1E ; SPRITE 1E | xy: { 0x0B0, 0x180, U } | s: 0x00\n #_09E7B8: db $15, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x150, U } | s: 0x00\n #_09E7BB: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C0", + "code": "RoomData_Sprites_Room00C0:\n #_09E7BC: db $00 ; Unlayered OAM\n #_09E7BD: db $05, $17, $41 ; SPRITE 41 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09E7C0: db $07, $1A, $46 ; SPRITE 46 | xy: { 0x1A0, 0x070, U } | s: 0x00\n #_09E7C3: db $09, $0B, $41 ; SPRITE 41 | xy: { 0x0B0, 0x090, U } | s: 0x00\n #_09E7C6: db $0B, $14, $46 ; SPRITE 46 | xy: { 0x140, 0x0B0, U } | s: 0x00\n #_09E7C9: db $FE, $00, $E4 ; small key on above sprite\n #_09E7CC: db $0E, $06, $41 ; SPRITE 41 | xy: { 0x060, 0x0E0, U } | s: 0x00\n #_09E7CF: db $18, $04, $41 ; SPRITE 41 | xy: { 0x040, 0x180, U } | s: 0x00\n #_09E7D2: db $1B, $14, $46 ; SPRITE 46 | xy: { 0x140, 0x1B0, U } | s: 0x00\n #_09E7D5: db $1B, $1B, $41 ; SPRITE 41 | xy: { 0x1B0, 0x1B0, U } | s: 0x00\n #_09E7D8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C1", + "code": "RoomData_Sprites_Room00C1:\n #_09E7D9: db $00 ; Unlayered OAM\n #_09E7DA: db $17, $15, $1E ; SPRITE 1E | xy: { 0x150, 0x170, U } | s: 0x00\n #_09E7DD: db $05, $14, $C5 ; SPRITE C5 | xy: { 0x140, 0x050, U } | s: 0x00\n #_09E7E0: db $05, $1B, $C5 ; SPRITE C5 | xy: { 0x1B0, 0x050, U } | s: 0x00\n #_09E7E3: db $0B, $06, $A7 ; SPRITE A7 | xy: { 0x060, 0x0B0, U } | s: 0x00\n #_09E7E6: db $0B, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x0B0, U } | s: 0x00\n #_09E7E9: db $15, $17, $7C ; SPRITE 7C | xy: { 0x170, 0x150, U } | s: 0x00\n #_09E7EC: db $16, $09, $C5 ; SPRITE C5 | xy: { 0x090, 0x160, U } | s: 0x00\n #_09E7EF: db $18, $E7, $14 ; OVERLORD 14 | xy: { 0x070, 0x180, U }\n #_09E7F2: db $19, $14, $15 ; SPRITE 15 | xy: { 0x140, 0x190, U } | s: 0x00\n #_09E7F5: db $1A, $18, $C6 ; SPRITE C6 | xy: { 0x180, 0x1A0, U } | s: 0x00\n #_09E7F8: db $1B, $13, $24 ; SPRITE 24 | xy: { 0x130, 0x1B0, U } | s: 0x00\n #_09E7FB: db $FE, $00, $E4 ; small key on above sprite\n #_09E7FE: db $1B, $1B, $7C ; SPRITE 7C | xy: { 0x1B0, 0x1B0, U } | s: 0x00\n #_09E801: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C2", + "code": "RoomData_Sprites_Room00C2:\n #_09E802: db $01 ; Layered OAM\n #_09E803: db $8B, $15, $80 ; SPRITE 80 | xy: { 0x150, 0x0B0, L } | s: 0x00\n #_09E806: db $0C, $0B, $80 ; SPRITE 80 | xy: { 0x0B0, 0x0C0, U } | s: 0x00\n #_09E809: db $10, $08, $C5 ; SPRITE C5 | xy: { 0x080, 0x100, U } | s: 0x00\n #_09E80C: db $92, $10, $5B ; SPRITE 5B | xy: { 0x100, 0x120, L } | s: 0x00\n #_09E80F: db $92, $19, $5B ; SPRITE 5B | xy: { 0x190, 0x120, L } | s: 0x00\n #_09E812: db $94, $10, $D1 ; SPRITE D1 | xy: { 0x100, 0x140, L } | s: 0x00\n #_09E815: db $96, $08, $80 ; SPRITE 80 | xy: { 0x080, 0x160, L } | s: 0x00\n #_09E818: db $96, $16, $5B ; SPRITE 5B | xy: { 0x160, 0x160, L } | s: 0x00\n #_09E81B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C3", + "code": "RoomData_Sprites_Room00C3:\n #_09E81C: db $00 ; Unlayered OAM\n #_09E81D: db $06, $05, $C5 ; SPRITE C5 | xy: { 0x050, 0x060, U } | s: 0x00\n #_09E820: db $09, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x090, U } | s: 0x00\n #_09E823: db $0D, $11, $95 ; SPRITE 95 | xy: { 0x110, 0x0D0, U } | s: 0x00\n #_09E826: db $11, $1E, $96 ; SPRITE 96 | xy: { 0x1E0, 0x110, U } | s: 0x00\n #_09E829: db $15, $11, $95 ; SPRITE 95 | xy: { 0x110, 0x150, U } | s: 0x00\n #_09E82C: db $1A, $F7, $0B ; OVERLORD 0B | xy: { 0x170, 0x1A0, U }\n #_09E82F: db $1B, $0A, $15 ; SPRITE 15 | xy: { 0x0A0, 0x1B0, U } | s: 0x00\n #_09E832: db $1C, $07, $C5 ; SPRITE C5 | xy: { 0x070, 0x1C0, U } | s: 0x00\n #_09E835: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C4", + "code": "RoomData_Sprites_Room00C4:\n #_09E836: db $00 ; Unlayered OAM\n #_09E837: db $0A, $0B, $1E ; SPRITE 1E | xy: { 0x0B0, 0x0A0, U } | s: 0x00\n #_09E83A: db $0F, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x0F0, U } | s: 0x00\n #_09E83D: db $1B, $1C, $1E ; SPRITE 1E | xy: { 0x1C0, 0x1B0, U } | s: 0x00\n #_09E840: db $15, $0F, $1E ; SPRITE 1E | xy: { 0x0F0, 0x150, U } | s: 0x00\n #_09E843: db $0E, $0F, $C7 ; SPRITE C7 | xy: { 0x0F0, 0x0E0, U } | s: 0x00\n #_09E846: db $0F, $0B, $15 ; SPRITE 15 | xy: { 0x0B0, 0x0F0, U } | s: 0x00\n #_09E849: db $14, $07, $13 ; SPRITE 13 | xy: { 0x070, 0x140, U } | s: 0x00\n #_09E84C: db $14, $18, $13 ; SPRITE 13 | xy: { 0x180, 0x140, U } | s: 0x00\n #_09E84F: db $1A, $0B, $15 ; SPRITE 15 | xy: { 0x0B0, 0x1A0, U } | s: 0x00\n #_09E852: db $1A, $14, $15 ; SPRITE 15 | xy: { 0x140, 0x1A0, U } | s: 0x00\n #_09E855: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C5", + "code": "RoomData_Sprites_Room00C5:\n #_09E856: db $00 ; Unlayered OAM\n #_09E857: db $09, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x090, U } | s: 0x00\n #_09E85A: db $0B, $01, $95 ; SPRITE 95 | xy: { 0x010, 0x0B0, U } | s: 0x00\n #_09E85D: db $0D, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x0D0, U } | s: 0x00\n #_09E860: db $0F, $01, $95 ; SPRITE 95 | xy: { 0x010, 0x0F0, U } | s: 0x00\n #_09E863: db $11, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x110, U } | s: 0x00\n #_09E866: db $13, $01, $95 ; SPRITE 95 | xy: { 0x010, 0x130, U } | s: 0x00\n #_09E869: db $15, $07, $13 ; SPRITE 13 | xy: { 0x070, 0x150, U } | s: 0x00\n #_09E86C: db $15, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x150, U } | s: 0x00\n #_09E86F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C6", + "code": "RoomData_Sprites_Room00C6:\n #_09E870: db $00 ; Unlayered OAM\n #_09E871: db $04, $0B, $A7 ; SPRITE A7 | xy: { 0x0B0, 0x040, U } | s: 0x00\n #_09E874: db $04, $15, $A7 ; SPRITE A7 | xy: { 0x150, 0x040, U } | s: 0x00\n #_09E877: db $09, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x090, U } | s: 0x00\n #_09E87A: db $09, $17, $24 ; SPRITE 24 | xy: { 0x170, 0x090, U } | s: 0x00\n #_09E87D: db $0E, $10, $7C ; SPRITE 7C | xy: { 0x100, 0x0E0, U } | s: 0x00\n #_09E880: db $14, $18, $24 ; SPRITE 24 | xy: { 0x180, 0x140, U } | s: 0x00\n #_09E883: db $17, $08, $24 ; SPRITE 24 | xy: { 0x080, 0x170, U } | s: 0x00\n #_09E886: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C8", + "code": "RoomData_Sprites_Room00C8:\n #_09E887: db $00 ; Unlayered OAM\n #_09E888: db $15, $14, $53 ; SPRITE 53 | xy: { 0x140, 0x150, U } | s: 0x00\n #_09E88B: db $15, $17, $53 ; SPRITE 53 | xy: { 0x170, 0x150, U } | s: 0x00\n #_09E88E: db $15, $1A, $53 ; SPRITE 53 | xy: { 0x1A0, 0x150, U } | s: 0x00\n #_09E891: db $18, $1A, $53 ; SPRITE 53 | xy: { 0x1A0, 0x180, U } | s: 0x00\n #_09E894: db $18, $17, $53 ; SPRITE 53 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09E897: db $18, $14, $53 ; SPRITE 53 | xy: { 0x140, 0x180, U } | s: 0x00\n #_09E89A: db $18, $F7, $19 ; OVERLORD 19 | xy: { 0x170, 0x180, U }\n #_09E89D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00C9", + "code": "RoomData_Sprites_Room00C9:\n #_09E89E: db $00 ; Unlayered OAM\n #_09E89F: db $05, $10, $4F ; SPRITE 4F | xy: { 0x100, 0x050, U } | s: 0x00\n #_09E8A2: db $06, $0F, $4F ; SPRITE 4F | xy: { 0x0F0, 0x060, U } | s: 0x00\n #_09E8A5: db $07, $10, $4F ; SPRITE 4F | xy: { 0x100, 0x070, U } | s: 0x00\n #_09E8A8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00CB", + "code": "RoomData_Sprites_Room00CB:\n #_09E8A9: db $01 ; Layered OAM\n #_09E8AA: db $04, $14, $D1 ; SPRITE D1 | xy: { 0x140, 0x040, U } | s: 0x00\n #_09E8AD: db $89, $08, $80 ; SPRITE 80 | xy: { 0x080, 0x090, L } | s: 0x00\n #_09E8B0: db $8A, $10, $A5 ; SPRITE A5 | xy: { 0x100, 0x0A0, L } | s: 0x00\n #_09E8B3: db $0A, $13, $8F ; SPRITE 8F | xy: { 0x130, 0x0A0, U } | s: 0x00\n #_09E8B6: db $8A, $16, $5B ; SPRITE 5B | xy: { 0x160, 0x0A0, L } | s: 0x00\n #_09E8B9: db $0A, $1C, $8F ; SPRITE 8F | xy: { 0x1C0, 0x0A0, U } | s: 0x00\n #_09E8BC: db $10, $0C, $A7 ; SPRITE A7 | xy: { 0x0C0, 0x100, U } | s: 0x00\n #_09E8BF: db $95, $18, $A6 ; SPRITE A6 | xy: { 0x180, 0x150, L } | s: 0x00\n #_09E8C2: db $97, $08, $A6 ; SPRITE A6 | xy: { 0x080, 0x170, L } | s: 0x00\n #_09E8C5: db $17, $0B, $8F ; SPRITE 8F | xy: { 0x0B0, 0x170, U } | s: 0x00\n #_09E8C8: db $18, $0C, $8F ; SPRITE 8F | xy: { 0x0C0, 0x180, U } | s: 0x00\n #_09E8CB: db $1C, $14, $D1 ; SPRITE D1 | xy: { 0x140, 0x1C0, U } | s: 0x00\n #_09E8CE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00CC", + "code": "RoomData_Sprites_Room00CC:\n #_09E8CF: db $01 ; Layered OAM\n #_09E8D0: db $04, $13, $80 ; SPRITE 80 | xy: { 0x130, 0x040, U } | s: 0x00\n #_09E8D3: db $89, $0B, $D1 ; SPRITE D1 | xy: { 0x0B0, 0x090, L } | s: 0x00\n #_09E8D6: db $8A, $08, $A5 ; SPRITE A5 | xy: { 0x080, 0x0A0, L } | s: 0x00\n #_09E8D9: db $8A, $0E, $5B ; SPRITE 5B | xy: { 0x0E0, 0x0A0, L } | s: 0x00\n #_09E8DC: db $0B, $0C, $8F ; SPRITE 8F | xy: { 0x0C0, 0x0B0, U } | s: 0x00\n #_09E8DF: db $8C, $10, $A6 ; SPRITE A6 | xy: { 0x100, 0x0C0, L } | s: 0x00\n #_09E8E2: db $8C, $18, $A5 ; SPRITE A5 | xy: { 0x180, 0x0C0, L } | s: 0x00\n #_09E8E5: db $94, $0E, $80 ; SPRITE 80 | xy: { 0x0E0, 0x140, L } | s: 0x00\n #_09E8E8: db $15, $1C, $8F ; SPRITE 8F | xy: { 0x1C0, 0x150, U } | s: 0x00\n #_09E8EB: db $96, $06, $5B ; SPRITE 5B | xy: { 0x060, 0x160, L } | s: 0x00\n #_09E8EE: db $96, $09, $5B ; SPRITE 5B | xy: { 0x090, 0x160, L } | s: 0x00\n #_09E8F1: db $98, $09, $A6 ; SPRITE A6 | xy: { 0x090, 0x180, L } | s: 0x00\n #_09E8F4: db $16, $1C, $8F ; SPRITE 8F | xy: { 0x1C0, 0x160, U } | s: 0x00\n #_09E8F7: db $9C, $07, $D1 ; SPRITE D1 | xy: { 0x070, 0x1C0, L } | s: 0x00\n #_09E8FA: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00CE", + "code": "RoomData_Sprites_Room00CE:\n #_09E8FB: db $00 ; Unlayered OAM\n #_09E8FC: db $05, $16, $23 ; SPRITE 23 | xy: { 0x160, 0x050, U } | s: 0x00\n #_09E8FF: db $05, $19, $23 ; SPRITE 23 | xy: { 0x190, 0x050, U } | s: 0x00\n #_09E902: db $05, $1C, $04 ; SPRITE 04 | xy: { 0x1C0, 0x050, U } | s: 0x00\n #_09E905: db $09, $14, $1C ; SPRITE 1C | xy: { 0x140, 0x090, U } | s: 0x00\n #_09E908: db $08, $1B, $24 ; SPRITE 24 | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09E90B: db $08, $1C, $24 ; SPRITE 24 | xy: { 0x1C0, 0x080, U } | s: 0x00\n #_09E90E: db $09, $1B, $24 ; SPRITE 24 | xy: { 0x1B0, 0x090, U } | s: 0x00\n #_09E911: db $09, $1C, $24 ; SPRITE 24 | xy: { 0x1C0, 0x090, U } | s: 0x00\n #_09E914: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D0", + "code": "RoomData_Sprites_Room00D0:\n #_09E915: db $00 ; Unlayered OAM\n #_09E916: db $05, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x050, U } | s: 0x00\n #_09E919: db $07, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x070, U } | s: 0x00\n #_09E91C: db $07, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x070, U } | s: 0x00\n #_09E91F: db $0B, $15, $44 ; SPRITE 44 | xy: { 0x150, 0x0B0, U } | s: 0x00\n #_09E922: db $0C, $09, $6F ; SPRITE 6F | xy: { 0x090, 0x0C0, U } | s: 0x00\n #_09E925: db $0F, $08, $6F ; SPRITE 6F | xy: { 0x080, 0x0F0, U } | s: 0x00\n #_09E928: db $10, $63, $41 ; SPRITE 41 | xy: { 0x030, 0x100, U } | s: 0x03\n #_09E92B: db $14, $09, $41 ; SPRITE 41 | xy: { 0x090, 0x140, U } | s: 0x00\n #_09E92E: db $16, $1B, $44 ; SPRITE 44 | xy: { 0x1B0, 0x160, U } | s: 0x00\n #_09E931: db $19, $06, $6F ; SPRITE 6F | xy: { 0x060, 0x190, U } | s: 0x00\n #_09E934: db $19, $1A, $44 ; SPRITE 44 | xy: { 0x1A0, 0x190, U } | s: 0x00\n #_09E937: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D1", + "code": "RoomData_Sprites_Room00D1:\n #_09E938: db $00 ; Unlayered OAM\n #_09E939: db $06, $14, $61 ; SPRITE 61 | xy: { 0x140, 0x060, U } | s: 0x00\n #_09E93C: db $06, $1B, $61 ; SPRITE 61 | xy: { 0x1B0, 0x060, U } | s: 0x00\n #_09E93F: db $07, $04, $9B ; SPRITE 9B | xy: { 0x040, 0x070, U } | s: 0x00\n #_09E942: db $08, $0C, $23 ; SPRITE 23 | xy: { 0x0C0, 0x080, U } | s: 0x00\n #_09E945: db $09, $05, $C6 ; SPRITE C6 | xy: { 0x050, 0x090, U } | s: 0x00\n #_09E948: db $0B, $04, $20 ; SPRITE 20 | xy: { 0x040, 0x0B0, U } | s: 0x00\n #_09E94B: db $0B, $0B, $20 ; SPRITE 20 | xy: { 0x0B0, 0x0B0, U } | s: 0x00\n #_09E94E: db $0B, $1B, $20 ; SPRITE 20 | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09E951: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D2", + "code": "RoomData_Sprites_Room00D2:\n #_09E952: db $00 ; Unlayered OAM\n #_09E953: db $06, $18, $9B ; SPRITE 9B | xy: { 0x180, 0x060, U } | s: 0x00\n #_09E956: db $07, $1A, $4E ; SPRITE 4E | xy: { 0x1A0, 0x070, U } | s: 0x00\n #_09E959: db $08, $13, $9B ; SPRITE 9B | xy: { 0x130, 0x080, U } | s: 0x00\n #_09E95C: db $08, $1C, $9B ; SPRITE 9B | xy: { 0x1C0, 0x080, U } | s: 0x00\n #_09E95F: db $0A, $18, $61 ; SPRITE 61 | xy: { 0x180, 0x0A0, U } | s: 0x00\n #_09E962: db $0C, $16, $4E ; SPRITE 4E | xy: { 0x160, 0x0C0, U } | s: 0x00\n #_09E965: db $0D, $13, $4E ; SPRITE 4E | xy: { 0x130, 0x0D0, U } | s: 0x00\n #_09E968: db $10, $13, $9B ; SPRITE 9B | xy: { 0x130, 0x100, U } | s: 0x00\n #_09E96B: db $14, $14, $4E ; SPRITE 4E | xy: { 0x140, 0x140, U } | s: 0x00\n #_09E96E: db $14, $1C, $4E ; SPRITE 4E | xy: { 0x1C0, 0x140, U } | s: 0x00\n #_09E971: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D5", + "code": "RoomData_Sprites_Room00D5:\n #_09E972: db $00 ; Unlayered OAM\n #_09E973: db $09, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x090, U } | s: 0x00\n #_09E976: db $0D, $01, $95 ; SPRITE 95 | xy: { 0x010, 0x0D0, U } | s: 0x00\n #_09E979: db $11, $0E, $96 ; SPRITE 96 | xy: { 0x0E0, 0x110, U } | s: 0x00\n #_09E97C: db $15, $01, $95 ; SPRITE 95 | xy: { 0x010, 0x150, U } | s: 0x00\n #_09E97F: db $15, $04, $26 ; SPRITE 26 | xy: { 0x040, 0x150, U } | s: 0x00\n #_09E982: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D6", + "code": "RoomData_Sprites_Room00D6:\n #_09E983: db $00 ; Unlayered OAM\n #_09E984: db $02, $07, $97 ; SPRITE 97 | xy: { 0x070, 0x020, U } | s: 0x00\n #_09E987: db $16, $03, $C5 ; SPRITE C5 | xy: { 0x030, 0x160, U } | s: 0x00\n #_09E98A: db $16, $0C, $C5 ; SPRITE C5 | xy: { 0x0C0, 0x160, U } | s: 0x00\n #_09E98D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D8", + "code": "RoomData_Sprites_Room00D8:\n #_09E98E: db $00 ; Unlayered OAM\n #_09E98F: db $05, $17, $84 ; SPRITE 84 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09E992: db $05, $18, $84 ; SPRITE 84 | xy: { 0x180, 0x050, U } | s: 0x00\n #_09E995: db $09, $17, $4F ; SPRITE 4F | xy: { 0x170, 0x090, U } | s: 0x00\n #_09E998: db $09, $18, $4F ; SPRITE 4F | xy: { 0x180, 0x090, U } | s: 0x00\n #_09E99B: db $0A, $16, $4F ; SPRITE 4F | xy: { 0x160, 0x0A0, U } | s: 0x00\n #_09E99E: db $0A, $19, $4F ; SPRITE 4F | xy: { 0x190, 0x0A0, U } | s: 0x00\n #_09E9A1: db $0B, $16, $4E ; SPRITE 4E | xy: { 0x160, 0x0B0, U } | s: 0x00\n #_09E9A4: db $0B, $19, $4E ; SPRITE 4E | xy: { 0x190, 0x0B0, U } | s: 0x00\n #_09E9A7: db $14, $17, $84 ; SPRITE 84 | xy: { 0x170, 0x140, U } | s: 0x00\n #_09E9AA: db $16, $18, $A7 ; SPRITE A7 | xy: { 0x180, 0x160, U } | s: 0x00\n #_09E9AD: db $1B, $18, $A7 ; SPRITE A7 | xy: { 0x180, 0x1B0, U } | s: 0x00\n #_09E9B0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00D9", + "code": "RoomData_Sprites_Room00D9:\n #_09E9B1: db $00 ; Unlayered OAM\n #_09E9B2: db $14, $EC, $02 ; OVERLORD 02 | xy: { 0x0C0, 0x140, U }\n #_09E9B5: db $15, $18, $83 ; SPRITE 83 | xy: { 0x180, 0x150, U } | s: 0x00\n #_09E9B8: db $18, $18, $83 ; SPRITE 83 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09E9BB: db $1B, $18, $83 ; SPRITE 83 | xy: { 0x180, 0x1B0, U } | s: 0x00\n #_09E9BE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00DA", + "code": "RoomData_Sprites_Room00DA:\n #_09E9BF: db $00 ; Unlayered OAM\n #_09E9C0: db $18, $07, $15 ; SPRITE 15 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09E9C3: db $18, $08, $15 ; SPRITE 15 | xy: { 0x080, 0x180, U } | s: 0x00\n #_09E9C6: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00DB", + "code": "RoomData_Sprites_Room00DB:\n #_09E9C7: db $01 ; Layered OAM\n #_09E9C8: db $04, $03, $D1 ; SPRITE D1 | xy: { 0x030, 0x040, U } | s: 0x00\n #_09E9CB: db $8A, $0E, $5B ; SPRITE 5B | xy: { 0x0E0, 0x0A0, L } | s: 0x00\n #_09E9CE: db $8B, $17, $A6 ; SPRITE A6 | xy: { 0x170, 0x0B0, L } | s: 0x00\n #_09E9D1: db $8C, $0F, $A5 ; SPRITE A5 | xy: { 0x0F0, 0x0C0, L } | s: 0x00\n #_09E9D4: db $10, $0B, $8F ; SPRITE 8F | xy: { 0x0B0, 0x100, U } | s: 0x00\n #_09E9D7: db $10, $14, $80 ; SPRITE 80 | xy: { 0x140, 0x100, U } | s: 0x00\n #_09E9DA: db $95, $0F, $A5 ; SPRITE A5 | xy: { 0x0F0, 0x150, L } | s: 0x00\n #_09E9DD: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00DC", + "code": "RoomData_Sprites_Room00DC:\n #_09E9DE: db $01 ; Layered OAM\n #_09E9DF: db $8A, $09, $A5 ; SPRITE A5 | xy: { 0x090, 0x0A0, L } | s: 0x00\n #_09E9E2: db $8A, $0E, $5C ; SPRITE 5C | xy: { 0x0E0, 0x0A0, L } | s: 0x00\n #_09E9E5: db $8C, $0F, $A6 ; SPRITE A6 | xy: { 0x0F0, 0x0C0, L } | s: 0x00\n #_09E9E8: db $10, $0B, $8F ; SPRITE 8F | xy: { 0x0B0, 0x100, U } | s: 0x00\n #_09E9EB: db $10, $16, $8F ; SPRITE 8F | xy: { 0x160, 0x100, U } | s: 0x00\n #_09E9EE: db $96, $0C, $D1 ; SPRITE D1 | xy: { 0x0C0, 0x160, L } | s: 0x00\n #_09E9F1: db $96, $0F, $A6 ; SPRITE A6 | xy: { 0x0F0, 0x160, L } | s: 0x00\n #_09E9F4: db $97, $09, $A5 ; SPRITE A5 | xy: { 0x090, 0x170, L } | s: 0x00\n #_09E9F7: db $97, $16, $80 ; SPRITE 80 | xy: { 0x160, 0x170, L } | s: 0x00\n #_09E9FA: db $1C, $05, $80 ; SPRITE 80 | xy: { 0x050, 0x1C0, U } | s: 0x00\n #_09E9FD: db $1C, $0F, $8F ; SPRITE 8F | xy: { 0x0F0, 0x1C0, U } | s: 0x00\n #_09EA00: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00DE", + "code": "RoomData_Sprites_Room00DE:\n #_09EA01: db $00 ; Unlayered OAM\n #_09EA02: db $05, $17, $A3 ; SPRITE A3 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09EA05: db $05, $17, $A4 ; SPRITE A4 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09EA08: db $05, $17, $A2 ; SPRITE A2 | xy: { 0x170, 0x050, U } | s: 0x00\n #_09EA0B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00DF", + "code": "RoomData_Sprites_Room00DF:\n #_09EA0C: db $00 ; Unlayered OAM\n #_09EA0D: db $95, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x150, L } | s: 0x00\n #_09EA10: db $96, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x160, L } | s: 0x00\n #_09EA13: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E0", + "code": "RoomData_Sprites_Room00E0:\n #_09EA14: db $00 ; Unlayered OAM\n #_09EA15: db $06, $04, $6A ; SPRITE 6A | xy: { 0x040, 0x060, U } | s: 0x00\n #_09EA18: db $06, $0B, $6A ; SPRITE 6A | xy: { 0x0B0, 0x060, U } | s: 0x00\n #_09EA1B: db $06, $1A, $44 ; SPRITE 44 | xy: { 0x1A0, 0x060, U } | s: 0x00\n #_09EA1E: db $09, $1A, $44 ; SPRITE 44 | xy: { 0x1A0, 0x090, U } | s: 0x00\n #_09EA21: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E1", + "code": "RoomData_Sprites_Room00E1:\n #_09EA22: db $00 ; Unlayered OAM\n #_09EA23: db $0D, $17, $EB ; SPRITE EB | xy: { 0x170, 0x0D0, U } | s: 0x00\n #_09EA26: db $92, $07, $29 ; SPRITE 29 | xy: { 0x070, 0x120, L } | s: 0x00\n #_09EA29: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E2", + "code": "RoomData_Sprites_Room00E2:\n #_09EA2A: db $00 ; Unlayered OAM\n #_09EA2B: db $06, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x060, U } | s: 0x00\n #_09EA2E: db $06, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x060, U } | s: 0x00\n #_09EA31: db $07, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x070, U } | s: 0x00\n #_09EA34: db $07, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x070, U } | s: 0x00\n #_09EA37: db $10, $13, $EB ; SPRITE EB | xy: { 0x130, 0x100, U } | s: 0x00\n #_09EA3A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E3", + "code": "RoomData_Sprites_Room00E3:\n #_09EA3B: db $00 ; Unlayered OAM\n #_09EA3C: db $85, $17, $3A ; SPRITE 3A | xy: { 0x170, 0x050, L } | s: 0x00\n #_09EA3F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E4", + "code": "RoomData_Sprites_Room00E4:\n #_09EA40: db $00 ; Unlayered OAM\n #_09EA41: db $07, $19, $6F ; SPRITE 6F | xy: { 0x190, 0x070, U } | s: 0x00\n #_09EA44: db $08, $18, $6F ; SPRITE 6F | xy: { 0x180, 0x080, U } | s: 0x00\n #_09EA47: db $09, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x090, U } | s: 0x00\n #_09EA4A: db $16, $06, $AD ; SPRITE AD | xy: { 0x060, 0x160, U } | s: 0x00\n #_09EA4D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E5", + "code": "RoomData_Sprites_Room00E5:\n #_09EA4E: db $00 ; Unlayered OAM\n #_09EA4F: db $09, $0F, $6F ; SPRITE 6F | xy: { 0x0F0, 0x090, U } | s: 0x00\n #_09EA52: db $09, $10, $6F ; SPRITE 6F | xy: { 0x100, 0x090, U } | s: 0x00\n #_09EA55: db $09, $11, $6F ; SPRITE 6F | xy: { 0x110, 0x090, U } | s: 0x00\n #_09EA58: db $0E, $1B, $6F ; SPRITE 6F | xy: { 0x1B0, 0x0E0, U } | s: 0x00\n #_09EA5B: db $12, $0F, $6F ; SPRITE 6F | xy: { 0x0F0, 0x120, U } | s: 0x00\n #_09EA5E: db $12, $11, $6F ; SPRITE 6F | xy: { 0x110, 0x120, U } | s: 0x00\n #_09EA61: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E6", + "code": "RoomData_Sprites_Room00E6:\n #_09EA62: db $00 ; Unlayered OAM\n #_09EA63: db $0B, $1B, $6F ; SPRITE 6F | xy: { 0x1B0, 0x0B0, U } | s: 0x00\n #_09EA66: db $0F, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x0F0, U } | s: 0x00\n #_09EA69: db $13, $13, $6F ; SPRITE 6F | xy: { 0x130, 0x130, U } | s: 0x00\n #_09EA6C: db $17, $0F, $6F ; SPRITE 6F | xy: { 0x0F0, 0x170, U } | s: 0x00\n #_09EA6F: db $1B, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09EA72: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E7", + "code": "RoomData_Sprites_Room00E7:\n #_09EA73: db $00 ; Unlayered OAM\n #_09EA74: db $04, $10, $6F ; SPRITE 6F | xy: { 0x100, 0x040, U } | s: 0x00\n #_09EA77: db $04, $13, $6F ; SPRITE 6F | xy: { 0x130, 0x040, U } | s: 0x00\n #_09EA7A: db $0B, $15, $6F ; SPRITE 6F | xy: { 0x150, 0x0B0, U } | s: 0x00\n #_09EA7D: db $0C, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x0C0, U } | s: 0x00\n #_09EA80: db $0D, $0B, $6F ; SPRITE 6F | xy: { 0x0B0, 0x0D0, U } | s: 0x00\n #_09EA83: db $0D, $15, $6F ; SPRITE 6F | xy: { 0x150, 0x0D0, U } | s: 0x00\n #_09EA86: db $0F, $15, $6F ; SPRITE 6F | xy: { 0x150, 0x0F0, U } | s: 0x00\n #_09EA89: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00E8", + "code": "RoomData_Sprites_Room00E8:\n #_09EA8A: db $00 ; Unlayered OAM\n #_09EA8B: db $05, $07, $26 ; SPRITE 26 | xy: { 0x070, 0x050, U } | s: 0x00\n #_09EA8E: db $08, $17, $26 ; SPRITE 26 | xy: { 0x170, 0x080, U } | s: 0x00\n #_09EA91: db $0C, $07, $26 ; SPRITE 26 | xy: { 0x070, 0x0C0, U } | s: 0x00\n #_09EA94: db $0C, $19, $26 ; SPRITE 26 | xy: { 0x190, 0x0C0, U } | s: 0x00\n #_09EA97: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00EA", + "code": "RoomData_Sprites_Room00EA:\n #_09EA98: db $00 ; Unlayered OAM\n #_09EA99: db $0B, $0B, $EB ; SPRITE EB | xy: { 0x0B0, 0x0B0, U } | s: 0x00\n #_09EA9C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00EB", + "code": "RoomData_Sprites_Room00EB:\n #_09EA9D: db $00 ; Unlayered OAM\n #_09EA9E: db $14, $17, $93 ; SPRITE 93 | xy: { 0x170, 0x140, U } | s: 0x00\n #_09EAA1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00EE", + "code": "RoomData_Sprites_Room00EE:\n #_09EAA2: db $00 ; Unlayered OAM\n #_09EAA3: db $04, $10, $18 ; SPRITE 18 | xy: { 0x100, 0x040, U } | s: 0x00\n #_09EAA6: db $0E, $0B, $18 ; SPRITE 18 | xy: { 0x0B0, 0x0E0, U } | s: 0x00\n #_09EAA9: db $1C, $09, $18 ; SPRITE 18 | xy: { 0x090, 0x1C0, U } | s: 0x00\n #_09EAAC: db $0B, $03, $24 ; SPRITE 24 | xy: { 0x030, 0x0B0, U } | s: 0x00\n #_09EAAF: db $0C, $1C, $24 ; SPRITE 24 | xy: { 0x1C0, 0x0C0, U } | s: 0x00\n #_09EAB2: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00EF", + "code": "RoomData_Sprites_Room00EF:\n #_09EAB3: db $00 ; Unlayered OAM\n #_09EAB4: db $09, $17, $18 ; SPRITE 18 | xy: { 0x170, 0x090, U } | s: 0x00\n #_09EAB7: db $0A, $14, $18 ; SPRITE 18 | xy: { 0x140, 0x0A0, U } | s: 0x00\n #_09EABA: db $0A, $1B, $18 ; SPRITE 18 | xy: { 0x1B0, 0x0A0, U } | s: 0x00\n #_09EABD: db $06, $18, $1E ; SPRITE 1E | xy: { 0x180, 0x060, U } | s: 0x00\n #_09EAC0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F0", + "code": "RoomData_Sprites_Room00F0:\n #_09EAC1: db $00 ; Unlayered OAM\n #_09EAC2: db $03, $09, $6F ; SPRITE 6F | xy: { 0x090, 0x030, U } | s: 0x00\n #_09EAC5: db $03, $10, $6F ; SPRITE 6F | xy: { 0x100, 0x030, U } | s: 0x00\n #_09EAC8: db $04, $08, $6F ; SPRITE 6F | xy: { 0x080, 0x040, U } | s: 0x00\n #_09EACB: db $04, $0A, $6F ; SPRITE 6F | xy: { 0x0A0, 0x040, U } | s: 0x00\n #_09EACE: db $07, $09, $6F ; SPRITE 6F | xy: { 0x090, 0x070, U } | s: 0x00\n #_09EAD1: db $0A, $03, $6F ; SPRITE 6F | xy: { 0x030, 0x0A0, U } | s: 0x00\n #_09EAD4: db $0A, $05, $6F ; SPRITE 6F | xy: { 0x050, 0x0A0, U } | s: 0x00\n #_09EAD7: db $0C, $0E, $6F ; SPRITE 6F | xy: { 0x0E0, 0x0C0, U } | s: 0x00\n #_09EADA: db $10, $1B, $AD ; SPRITE AD | xy: { 0x1B0, 0x100, U } | s: 0x00\n #_09EADD: db $13, $13, $6F ; SPRITE 6F | xy: { 0x130, 0x130, U } | s: 0x00\n #_09EAE0: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F1", + "code": "RoomData_Sprites_Room00F1:\n #_09EAE1: db $00 ; Unlayered OAM\n #_09EAE2: db $10, $19, $6F ; SPRITE 6F | xy: { 0x190, 0x100, U } | s: 0x00\n #_09EAE5: db $10, $1C, $6F ; SPRITE 6F | xy: { 0x1C0, 0x100, U } | s: 0x00\n #_09EAE8: db $11, $18, $6F ; SPRITE 6F | xy: { 0x180, 0x110, U } | s: 0x00\n #_09EAEB: db $11, $1D, $6F ; SPRITE 6F | xy: { 0x1D0, 0x110, U } | s: 0x00\n #_09EAEE: db $12, $17, $6F ; SPRITE 6F | xy: { 0x170, 0x120, U } | s: 0x00\n #_09EAF1: db $12, $1E, $6F ; SPRITE 6F | xy: { 0x1E0, 0x120, U } | s: 0x00\n #_09EAF4: db $1B, $06, $6F ; SPRITE 6F | xy: { 0x060, 0x1B0, U } | s: 0x00\n #_09EAF7: db $1B, $09, $6F ; SPRITE 6F | xy: { 0x090, 0x1B0, U } | s: 0x00\n #_09EAFA: db $1C, $07, $6F ; SPRITE 6F | xy: { 0x070, 0x1C0, U } | s: 0x00\n #_09EAFD: db $1C, $08, $6F ; SPRITE 6F | xy: { 0x080, 0x1C0, U } | s: 0x00\n #_09EB00: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F3", + "code": "RoomData_Sprites_Room00F3:\n #_09EB01: db $00 ; Unlayered OAM\n #_09EB02: db $14, $06, $78 ; SPRITE 78 | xy: { 0x060, 0x140, U } | s: 0x00\n #_09EB05: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F4", + "code": "RoomData_Sprites_Room00F4:\n #_09EB06: db $00 ; Unlayered OAM\n #_09EB07: db $14, $17, $32 ; SPRITE 32 | xy: { 0x170, 0x140, U } | s: 0x00\n #_09EB0A: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F5", + "code": "RoomData_Sprites_Room00F5:\n #_09EB0B: db $00 ; Unlayered OAM\n #_09EB0C: db $14, $08, $32 ; SPRITE 32 | xy: { 0x080, 0x140, U } | s: 0x00\n #_09EB0F: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00F9", + "code": "RoomData_Sprites_Room00F9:\n #_09EB10: db $00 ; Unlayered OAM\n #_09EB11: db $05, $1A, $18 ; SPRITE 18 | xy: { 0x1A0, 0x050, U } | s: 0x00\n #_09EB14: db $0F, $15, $18 ; SPRITE 18 | xy: { 0x150, 0x0F0, U } | s: 0x00\n #_09EB17: db $13, $11, $18 ; SPRITE 18 | xy: { 0x110, 0x130, U } | s: 0x00\n #_09EB1A: db $17, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x170, U } | s: 0x00\n #_09EB1D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FA", + "code": "RoomData_Sprites_Room00FA:\n #_09EB1E: db $00 ; Unlayered OAM\n #_09EB1F: db $0E, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x0E0, U } | s: 0x00\n #_09EB22: db $10, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x100, U } | s: 0x00\n #_09EB25: db $11, $15, $E3 ; SPRITE E3 | xy: { 0x150, 0x110, U } | s: 0x00\n #_09EB28: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FB", + "code": "RoomData_Sprites_Room00FB:\n #_09EB29: db $00 ; Unlayered OAM\n #_09EB2A: db $0D, $17, $93 ; SPRITE 93 | xy: { 0x170, 0x0D0, U } | s: 0x00\n #_09EB2D: db $0A, $19, $26 ; SPRITE 26 | xy: { 0x190, 0x0A0, U } | s: 0x00\n #_09EB30: db $12, $15, $26 ; SPRITE 26 | xy: { 0x150, 0x120, U } | s: 0x00\n #_09EB33: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FC", + "code": "RoomData_Sprites_Room00FC:\n #_09EB34: db $00 ; Unlayered OAM\n #_09EB35: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FD", + "code": "RoomData_Sprites_Room00FD:\n #_09EB36: db $00 ; Unlayered OAM\n #_09EB37: db $0E, $09, $18 ; SPRITE 18 | xy: { 0x090, 0x0E0, U } | s: 0x00\n #_09EB3A: db $08, $05, $24 ; SPRITE 24 | xy: { 0x050, 0x080, U } | s: 0x00\n #_09EB3D: db $08, $16, $E3 ; SPRITE E3 | xy: { 0x160, 0x080, U } | s: 0x00\n #_09EB40: db $08, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x080, U } | s: 0x00\n #_09EB43: db $11, $0F, $24 ; SPRITE 24 | xy: { 0x0F0, 0x110, U } | s: 0x00\n #_09EB46: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FE", + "code": "RoomData_Sprites_Room00FE:\n #_09EB47: db $00 ; Unlayered OAM\n #_09EB48: db $12, $16, $18 ; SPRITE 18 | xy: { 0x160, 0x120, U } | s: 0x00\n #_09EB4B: db $16, $14, $18 ; SPRITE 18 | xy: { 0x140, 0x160, U } | s: 0x00\n #_09EB4E: db $16, $1A, $18 ; SPRITE 18 | xy: { 0x1A0, 0x160, U } | s: 0x00\n #_09EB51: db $12, $18, $24 ; SPRITE 24 | xy: { 0x180, 0x120, U } | s: 0x00\n #_09EB54: db $18, $18, $24 ; SPRITE 24 | xy: { 0x180, 0x180, U } | s: 0x00\n #_09EB57: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room00FF", + "code": "RoomData_Sprites_Room00FF:\n #_09EB58: db $00 ; Unlayered OAM\n #_09EB59: db $04, $07, $BB ; SPRITE BB | xy: { 0x070, 0x040, U } | s: 0x00\n #_09EB5C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0100", + "code": "RoomData_Sprites_Room0100:\n #_09EB5D: db $00 ; Unlayered OAM\n #_09EB5E: db $1B, $0B, $BB ; SPRITE BB | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09EB61: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0101", + "code": "RoomData_Sprites_Room0101:\n #_09EB62: db $00 ; Unlayered OAM\n #_09EB63: db $13, $08, $33 ; SPRITE 33 | xy: { 0x080, 0x130, U } | s: 0x00\n #_09EB66: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0102", + "code": "RoomData_Sprites_Room0102:\n #_09EB67: db $00 ; Unlayered OAM\n #_09EB68: db $18, $03, $1F ; SPRITE 1F | xy: { 0x030, 0x180, U } | s: 0x00\n #_09EB6B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0103", + "code": "RoomData_Sprites_Room0103:\n #_09EB6C: db $00 ; Unlayered OAM\n #_09EB6D: db $15, $06, $BC ; SPRITE BC | xy: { 0x060, 0x150, U } | s: 0x00\n #_09EB70: db $1B, $0A, $29 ; SPRITE 29 | xy: { 0x0A0, 0x1B0, U } | s: 0x00\n #_09EB73: db $17, $17, $35 ; SPRITE 35 | xy: { 0x170, 0x170, U } | s: 0x00\n #_09EB76: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0104", + "code": "RoomData_Sprites_Room0104:\n #_09EB77: db $00 ; Unlayered OAM\n #_09EB78: db $17, $1A, $73 ; SPRITE 73 | xy: { 0x1A0, 0x170, U } | s: 0x00\n #_09EB7B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0105", + "code": "RoomData_Sprites_Room0105:\n #_09EB7C: db $00 ; Unlayered OAM\n #_09EB7D: db $18, $07, $16 ; SPRITE 16 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09EB80: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0106", + "code": "RoomData_Sprites_Room0106:\n #_09EB81: db $00 ; Unlayered OAM\n #_09EB82: db $1B, $08, $BB ; SPRITE BB | xy: { 0x080, 0x1B0, U } | s: 0x00\n #_09EB85: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0107", + "code": "RoomData_Sprites_Room0107:\n #_09EB86: db $00 ; Unlayered OAM\n #_09EB87: db $15, $03, $3B ; SPRITE 3B | xy: { 0x030, 0x150, U } | s: 0x00\n #_09EB8A: db $1B, $17, $6D ; SPRITE 6D | xy: { 0x170, 0x1B0, U } | s: 0x00\n #_09EB8D: db $1B, $18, $6D ; SPRITE 6D | xy: { 0x180, 0x1B0, U } | s: 0x00\n #_09EB90: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0108", + "code": "RoomData_Sprites_Room0108:\n #_09EB91: db $00 ; Unlayered OAM\n #_09EB92: db $16, $09, $0B ; SPRITE 0B | xy: { 0x090, 0x160, U } | s: 0x00\n #_09EB95: db $16, $0C, $0B ; SPRITE 0B | xy: { 0x0C0, 0x160, U } | s: 0x00\n #_09EB98: db $19, $09, $0B ; SPRITE 0B | xy: { 0x090, 0x190, U } | s: 0x00\n #_09EB9B: db $1A, $06, $0B ; SPRITE 0B | xy: { 0x060, 0x1A0, U } | s: 0x00\n #_09EB9E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0109", + "code": "RoomData_Sprites_Room0109:\n #_09EB9F: db $00 ; Unlayered OAM\n #_09EBA0: db $1B, $0A, $E9 ; SPRITE E9 | xy: { 0x0A0, 0x1B0, U } | s: 0x00\n #_09EBA3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010A", + "code": "RoomData_Sprites_Room010A:\n #_09EBA4: db $00 ; Unlayered OAM\n #_09EBA5: db $04, $19, $16 ; SPRITE 16 | xy: { 0x190, 0x040, U } | s: 0x00\n #_09EBA8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010B", + "code": "RoomData_Sprites_Room010B:\n #_09EBA9: db $00 ; Unlayered OAM\n #_09EBAA: db $03, $0F, $06 ; SPRITE 06 | xy: { 0x0F0, 0x030, U } | s: 0x00\n #_09EBAD: db $06, $ED, $1A ; OVERLORD 1A | xy: { 0x0D0, 0x060, U }\n #_09EBB0: db $06, $F0, $1A ; OVERLORD 1A | xy: { 0x100, 0x060, U }\n #_09EBB3: db $07, $F2, $1A ; OVERLORD 1A | xy: { 0x120, 0x070, U }\n #_09EBB6: db $09, $EF, $1A ; OVERLORD 1A | xy: { 0x0F0, 0x090, U }\n #_09EBB9: db $03, $12, $04 ; SPRITE 04 | xy: { 0x120, 0x030, U } | s: 0x00\n #_09EBBC: db $07, $0D, $15 ; SPRITE 15 | xy: { 0x0D0, 0x070, U } | s: 0x00\n #_09EBBF: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010C", + "code": "RoomData_Sprites_Room010C:\n #_09EBC0: db $00 ; Unlayered OAM\n #_09EBC1: db $07, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x070, U } | s: 0x00\n #_09EBC4: db $07, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x070, U } | s: 0x00\n #_09EBC7: db $08, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x080, U } | s: 0x00\n #_09EBCA: db $08, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x080, U } | s: 0x00\n #_09EBCD: db $14, $07, $83 ; SPRITE 83 | xy: { 0x070, 0x140, U } | s: 0x00\n #_09EBD0: db $14, $08, $83 ; SPRITE 83 | xy: { 0x080, 0x140, U } | s: 0x00\n #_09EBD3: db $14, $0C, $83 ; SPRITE 83 | xy: { 0x0C0, 0x140, U } | s: 0x00\n #_09EBD6: db $1A, $0C, $83 ; SPRITE 83 | xy: { 0x0C0, 0x1A0, U } | s: 0x00\n #_09EBD9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010D", + "code": "RoomData_Sprites_Room010D:\n #_09EBDA: db $00 ; Unlayered OAM\n #_09EBDB: db $16, $05, $5B ; SPRITE 5B | xy: { 0x050, 0x160, U } | s: 0x00\n #_09EBDE: db $16, $0A, $5C ; SPRITE 5C | xy: { 0x0A0, 0x160, U } | s: 0x00\n #_09EBE1: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010E", + "code": "RoomData_Sprites_Room010E:\n #_09EBE2: db $00 ; Unlayered OAM\n #_09EBE3: db $06, $06, $28 ; SPRITE 28 | xy: { 0x060, 0x060, U } | s: 0x00\n #_09EBE6: db $06, $18, $28 ; SPRITE 28 | xy: { 0x180, 0x060, U } | s: 0x00\n #_09EBE9: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room010F", + "code": "RoomData_Sprites_Room010F:\n #_09EBEA: db $00 ; Unlayered OAM\n #_09EBEB: db $15, $07, $BB ; SPRITE BB | xy: { 0x070, 0x150, U } | s: 0x00\n #_09EBEE: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0110", + "code": "RoomData_Sprites_Room0110:\n #_09EBEF: db $00 ; Unlayered OAM\n #_09EBF0: db $15, $07, $BB ; SPRITE BB | xy: { 0x070, 0x150, U } | s: 0x00\n #_09EBF3: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0111", + "code": "RoomData_Sprites_Room0111:\n #_09EBF4: db $00 ; Unlayered OAM\n #_09EBF5: db $1B, $0B, $65 ; SPRITE 65 | xy: { 0x0B0, 0x1B0, U } | s: 0x00\n #_09EBF8: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0112", + "code": "RoomData_Sprites_Room0112:\n #_09EBF9: db $00 ; Unlayered OAM\n #_09EBFA: db $0A, $07, $28 ; SPRITE 28 | xy: { 0x070, 0x0A0, U } | s: 0x00\n #_09EBFD: db $14, $17, $BB ; SPRITE BB | xy: { 0x170, 0x140, U } | s: 0x00\n #_09EC00: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0114", + "code": "RoomData_Sprites_Room0114:\n #_09EC01: db $00 ; Unlayered OAM\n #_09EC02: db $18, $07, $72 ; SPRITE 72 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09EC05: db $14, $19, $28 ; SPRITE 28 | xy: { 0x190, 0x140, U } | s: 0x00\n #_09EC08: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0115", + "code": "RoomData_Sprites_Room0115:\n #_09EC09: db $00 ; Unlayered OAM\n #_09EC0A: db $16, $17, $C8 ; SPRITE C8 | xy: { 0x170, 0x160, U } | s: 0x00\n #_09EC0D: db $07, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x070, U } | s: 0x00\n #_09EC10: db $07, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x070, U } | s: 0x00\n #_09EC13: db $08, $17, $E3 ; SPRITE E3 | xy: { 0x170, 0x080, U } | s: 0x00\n #_09EC16: db $08, $18, $E3 ; SPRITE E3 | xy: { 0x180, 0x080, U } | s: 0x00\n #_09EC19: db $09, $07, $72 ; SPRITE 72 | xy: { 0x070, 0x090, U } | s: 0x00\n #_09EC1C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0116", + "code": "RoomData_Sprites_Room0116:\n #_09EC1D: db $00 ; Unlayered OAM\n #_09EC1E: db $18, $17, $72 ; SPRITE 72 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09EC21: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0118", + "code": "RoomData_Sprites_Room0118:\n #_09EC22: db $00 ; Unlayered OAM\n #_09EC23: db $1B, $19, $BB ; SPRITE BB | xy: { 0x190, 0x1B0, U } | s: 0x00\n #_09EC26: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0119", + "code": "RoomData_Sprites_Room0119:\n #_09EC27: db $00 ; Unlayered OAM\n #_09EC28: db $18, $0E, $29 ; SPRITE 29 | xy: { 0x0E0, 0x180, U } | s: 0x00\n #_09EC2B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room011A", + "code": "RoomData_Sprites_Room011A:\n #_09EC2C: db $00 ; Unlayered OAM\n #_09EC2D: db $17, $18, $28 ; SPRITE 28 | xy: { 0x180, 0x170, U } | s: 0x00\n #_09EC30: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room011B", + "code": "RoomData_Sprites_Room011B:\n #_09EC31: db $00 ; Unlayered OAM\n #_09EC32: db $09, $18, $EB ; SPRITE EB | xy: { 0x180, 0x090, U } | s: 0x00\n #_09EC35: db $96, $05, $EB ; SPRITE EB | xy: { 0x050, 0x160, L } | s: 0x00\n #_09EC38: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room011C", + "code": "RoomData_Sprites_Room011C:\n #_09EC39: db $00 ; Unlayered OAM\n #_09EC3A: db $19, $09, $B5 ; SPRITE B5 | xy: { 0x090, 0x190, U } | s: 0x00\n #_09EC3D: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room011E", + "code": "RoomData_Sprites_Room011E:\n #_09EC3E: db $00 ; Unlayered OAM\n #_09EC3F: db $07, $05, $E3 ; SPRITE E3 | xy: { 0x050, 0x070, U } | s: 0x00\n #_09EC42: db $07, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x070, U } | s: 0x00\n #_09EC45: db $08, $05, $E3 ; SPRITE E3 | xy: { 0x050, 0x080, U } | s: 0x00\n #_09EC48: db $08, $06, $E3 ; SPRITE E3 | xy: { 0x060, 0x080, U } | s: 0x00\n #_09EC4B: db $16, $18, $BB ; SPRITE BB | xy: { 0x180, 0x160, U } | s: 0x00\n #_09EC4E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room011F", + "code": "RoomData_Sprites_Room011F:\n #_09EC4F: db $00 ; Unlayered OAM\n #_09EC50: db $16, $17, $BB ; SPRITE BB | xy: { 0x170, 0x160, U } | s: 0x00\n #_09EC53: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0120", + "code": "RoomData_Sprites_Room0120:\n #_09EC54: db $00 ; Unlayered OAM\n #_09EC55: db $07, $17, $B2 ; SPRITE B2 | xy: { 0x170, 0x070, U } | s: 0x00\n #_09EC58: db $08, $1B, $E3 ; SPRITE E3 | xy: { 0x1B0, 0x080, U } | s: 0x00\n #_09EC5B: db $09, $1A, $E3 ; SPRITE E3 | xy: { 0x1A0, 0x090, U } | s: 0x00\n #_09EC5E: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0121", + "code": "RoomData_Sprites_Room0121:\n #_09EC5F: db $00 ; Unlayered OAM\n #_09EC60: db $17, $04, $1A ; SPRITE 1A | xy: { 0x040, 0x170, U } | s: 0x00\n #_09EC63: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0122", + "code": "RoomData_Sprites_Room0122:\n #_09EC64: db $00 ; Unlayered OAM\n #_09EC65: db $18, $07, $31 ; SPRITE 31 | xy: { 0x070, 0x180, U } | s: 0x00\n #_09EC68: db $18, $17, $31 ; SPRITE 31 | xy: { 0x170, 0x180, U } | s: 0x00\n #_09EC6B: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0123", + "code": "RoomData_Sprites_Room0123:\n #_09EC6C: db $00 ; Unlayered OAM\n #_09EC6D: db $16, $03, $18 ; SPRITE 18 | xy: { 0x030, 0x160, U } | s: 0x00\n #_09EC70: db $16, $0C, $18 ; SPRITE 18 | xy: { 0x0C0, 0x160, U } | s: 0x00\n #_09EC73: db $17, $08, $18 ; SPRITE 18 | xy: { 0x080, 0x170, U } | s: 0x00\n #_09EC76: db $1A, $03, $18 ; SPRITE 18 | xy: { 0x030, 0x1A0, U } | s: 0x00\n #_09EC79: db $05, $08, $BB ; SPRITE BB | xy: { 0x080, 0x050, U } | s: 0x00\n #_09EC7C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0124", + "code": "RoomData_Sprites_Room0124:\n #_09EC7D: db $00 ; Unlayered OAM\n #_09EC7E: db $16, $08, $BB ; SPRITE BB | xy: { 0x080, 0x160, U } | s: 0x00\n #_09EC81: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0125", + "code": "RoomData_Sprites_Room0125:\n #_09EC82: db $00 ; Unlayered OAM\n #_09EC83: db $16, $08, $BB ; SPRITE BB | xy: { 0x080, 0x160, U } | s: 0x00\n #_09EC86: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0126", + "code": "RoomData_Sprites_Room0126:\n #_09EC87: db $00 ; Unlayered OAM\n #_09EC88: db $15, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x150, U } | s: 0x00\n #_09EC8B: db $15, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x150, U } | s: 0x00\n #_09EC8E: db $16, $07, $E3 ; SPRITE E3 | xy: { 0x070, 0x160, U } | s: 0x00\n #_09EC91: db $16, $08, $E3 ; SPRITE E3 | xy: { 0x080, 0x160, U } | s: 0x00\n #_09EC94: db $14, $1C, $EB ; SPRITE EB | xy: { 0x1C0, 0x140, U } | s: 0x00\n #_09EC97: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Room0127", + "code": "RoomData_Sprites_Room0127:\n #_09EC98: db $00 ; Unlayered OAM\n #_09EC99: db $16, $07, $EB ; SPRITE EB | xy: { 0x070, 0x160, U } | s: 0x00\n #_09EC9C: db $FF ; END\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "RoomData_Sprites_Empty", + "code": "RoomData_Sprites_Empty:\n #_09EC9D: db $00 ; Unlayered OAM\n #_09EC9E: db $FF ; END\n\n; =========================================================\n\npool SpriteModule_Explode\n\n.oam_groups\n #_09EC9F: dw 0, 0 : db $60, $00, $00, $02\n #_09ECA7: dw 0, 0 : db $60, $00, $00, $02\n #_09ECAF: dw 0, 0 : db $60, $00, $00, $02\n #_09ECB7: dw 0, 0 : db $60, $00, $00, $02\n\n #_09ECBF: dw -5, -5 : db $62, $00, $00, $02\n #_09ECC7: dw 5, -5 : db $62, $40, $00, $02\n #_09ECCF: dw -5, 5 : db $62, $80, $00, $02\n #_09ECD7: dw 5, 5 : db $62, $C0, $00, $02\n\n #_09ECDF: dw -8, -8 : db $62, $00, $00, $02\n #_09ECE7: dw 8, -8 : db $62, $40, $00, $02\n #_09ECEF: dw -8, 8 : db $62, $80, $00, $02\n #_09ECF7: dw 8, 8 : db $62, $C0, $00, $02\n\n #_09ECFF: dw -8, -8 : db $64, $00, $00, $02\n #_09ED07: dw 8, -8 : db $64, $40, $00, $02\n #_09ED0F: dw -8, 8 : db $64, $80, $00, $02\n #_09ED17: dw 8, 8 : db $64, $C0, $00, $02\n\n #_09ED1F: dw -8, -8 : db $66, $00, $00, $02\n #_09ED27: dw 8, -8 : db $66, $40, $00, $02\n #_09ED2F: dw -8, 8 : db $66, $80, $00, $02\n #_09ED37: dw 8, 8 : db $66, $C0, $00, $02\n\n #_09ED3F: dw -8, -8 : db $68, $00, $00, $02\n #_09ED47: dw 8, -8 : db $68, $00, $00, $02\n #_09ED4F: dw -8, 8 : db $68, $00, $00, $02\n #_09ED57: dw 8, 8 : db $68, $00, $00, $02\n\n #_09ED5F: dw -8, -8 : db $6A, $00, $00, $02\n #_09ED67: dw 8, -8 : db $6A, $40, $00, $02\n #_09ED6F: dw -8, 8 : db $6A, $80, $00, $02\n #_09ED77: dw 8, 8 : db $6A, $C0, $00, $02\n\n #_09ED7F: dw -8, -8 : db $4E, $00, $00, $02\n #_09ED87: dw 8, -8 : db $4E, $40, $00, $02\n #_09ED8F: dw -8, 8 : db $4E, $80, $00, $02\n #_09ED97: dw 8, 8 : db $4E, $C0, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "SpriteModule_Explode", + "code": "SpriteModule_Explode:\n #_09ED9F: PHB\n #_09EDA0: PHK\n #_09EDA1: PLB\n\n #_09EDA2: JSR .main\n\n #_09EDA5: PLB\n\n #_09EDA6: RTL", + "file": "bank_09.asm" + }, + { + "name": "Explode_VerifyPrizing", + "code": "Explode_VerifyPrizing:\n #_09EE0F: LDA.b #$02\n #_09EE11: STA.w $0F20,X\n\n #_09EE14: LDA.w $0DF0,X\n #_09EE17: CMP.b #$20\n #_09EE19: BEQ .validate\n\n #_09EE1B: JMP.w Explode_SpawnExplosion\n\n; ---------------------------------------------------------\n\n.validate\n #_09EE1E: STZ.w $0DD0,X\n\n #_09EE21: STZ.w $02E4\n\n #_09EE24: LDA.b $5B\n #_09EE26: CMP.b #$02\n #_09EE28: BEQ .no_win\n\n #_09EE2A: JSL CheckIfScreenIsClear\n #_09EE2E: BCC .no_win\n\n #_09EE30: LDY.w $0E20,X\n #_09EE33: CPY.b #$D6 ; SPRITE D6\n #_09EE35: BCS .ganon\n\n #_09EE37: CPY.b #$7A ; SPRITE 7A\n #_09EE39: BNE .not_agahnim\n\n #_09EE3B: PHX\n\n #_09EE3C: JSL PrepareDungeonExitFromBossFight\n\n #_09EE40: PLX\n\n; ---------------------------------------------------------\n\n.no_win\n #_09EE41: JMP.w Explode_SpawnExplosion\n\n; ---------------------------------------------------------\n\n.ganon\n #_09EE44: LDA.b #$13 ; SONG 13\n #_09EE46: STA.w $012C\n\n #_09EE49: JMP.w Explode_SpawnExplosion\n\n; ---------------------------------------------------------\n\n.not_agahnim\n #_09EE4C: STY.w $0FB5\n\n #_09EE4F: LDA.b #$EA ; SPRITE EA\n #_09EE51: LDY.b #$0E\n #_09EE53: JSL Sprite_SpawnDynamically_slot_limited\n #_09EE57: JSL Sprite_SetSpawnedCoordinates\n\n #_09EE5B: LDA.b #$20\n #_09EE5D: STA.w $0F80,Y\n\n #_09EE60: LDA.b $EE\n #_09EE62: STA.w $0F20,Y\n\n #_09EE65: LDA.b #$02\n\n #_09EE67: CPY.b #$09\n #_09EE69: BEQ .not_slot9\n\n #_09EE6B: LDA.b #$06\n\n.not_slot9\n #_09EE6D: STA.w $0D90,Y\n\n #_09EE70: LDA.b $02\n #_09EE72: CLC\n #_09EE73: ADC.b #$03\n #_09EE75: STA.w $0D00,Y\n\n #_09EE78: LDA.b $03\n #_09EE7A: ADC.b #$00\n #_09EE7C: STA.w $0D20,Y\n\n #_09EE7F: LDA.w $0FB5\n #_09EE82: CMP.b #$CE\n #_09EE84: BNE .check_cb\n\n; ---------------------------------------------------------\n\n #_09EE86: LDA.b $02\n #_09EE88: CLC\n #_09EE89: ADC.b #$10\n #_09EE8B: STA.w $0D00,Y\n\n #_09EE8E: LDA.b $03\n #_09EE90: ADC.b #$00\n #_09EE92: STA.w $0D20,Y\n\n #_09EE95: RTS", + "file": "bank_09.asm" + }, + { + "name": "Explode_SpawnExplosion", + "code": "Explode_SpawnExplosion:\n #_09EEAD: CMP.b #$40\n #_09EEAF: BCC .delay\n\n #_09EEB1: CMP.b #$70\n #_09EEB3: BCS .draw_sprite\n\n #_09EEB5: AND.b #$01\n #_09EEB7: BNE .delay\n\n.draw_sprite\n #_09EEB9: JSL SpriteModule_Active_long\n\n.delay\n #_09EEBD: LDA.b #$07\n #_09EEBF: STA.b $0E\n\n #_09EEC1: LDA.w $0E20,X\n #_09EEC4: STA.b $0F\n\n #_09EEC6: CMP.b #$92 ; SPRITE 92\n #_09EEC8: BNE .not_king_helma\n\n #_09EECA: LSR.b $0E\n\n.not_king_helma\n #_09EECC: LDA.w $0DF0,X\n #_09EECF: CMP.b #$C0\n #_09EED1: BCC .delay_more\n\n #_09EED3: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_KillFriends", + "code": "Sprite_KillFriends:\n #_09EF56: LDY.b #$0F\n\n.next\n #_09EF58: CPY.w $0FA0\n #_09EF5B: BEQ .skip\n\n #_09EF5D: LDA.w $0DD0,Y\n #_09EF60: BEQ .skip\n\n #_09EF62: LDA.w $0CAA,Y\n #_09EF65: AND.b #$02\n #_09EF67: BNE .skip\n\n #_09EF69: LDA.w $0E20,Y\n #_09EF6C: CMP.b #$7A ; SPRITE 7A\n #_09EF6E: BEQ .skip\n\n #_09EF70: LDA.b #$06\n #_09EF72: STA.w $0DD0,Y\n\n #_09EF75: LDA.b #$0F\n #_09EF77: STA.w $0DF0,Y\n\n #_09EF7A: LDA.b #$00\n #_09EF7C: STA.w $0E60,Y\n #_09EF7F: STA.w $0BE0,Y\n\n #_09EF82: LDA.b #$03\n #_09EF84: STA.w $0E40,Y\n\n.skip\n #_09EF87: DEY\n #_09EF88: BPL .next\n\n #_09EF8A: RTL", + "file": "bank_09.asm" + }, + { + "name": "Garnish16_ThrownItemDebris", + "code": "Garnish16_ThrownItemDebris:\n #_09F0CB: JSR Garnish_PrepOAMCoord\n\n #_09F0CE: LDA.l $7FF9FE,X\n #_09F0D2: STA.b $05\n\n #_09F0D4: LDA.w $0FC6\n #_09F0D7: CMP.b #$03\n #_09F0D9: BCS .exit\n\n #_09F0DB: LDA.l $7FF92C,X\n #_09F0DF: CMP.b #$03\n #_09F0E1: BNE .special_draw\n\n #_09F0E3: JSR GarnishDraw_ThrownItemDebris\n\n.exit\n #_09F0E6: RTS", + "file": "bank_09.asm" + }, + { + "name": "GarnishDraw_ThrownItemDebris", + "code": "GarnishDraw_ThrownItemDebris:\n #_09F198: LDA.l $7FF90E,X\n #_09F19C: CMP.b #$10\n #_09F19E: BNE .skip\n\n #_09F1A0: LDA.b #$00\n #_09F1A2: STA.l $7FF800,X\n\n.skip\n #_09F1A6: AND.b #$0F\n #_09F1A8: LSR A\n #_09F1A9: LSR A\n #_09F1AA: STA.b $06\n\n #_09F1AC: ASL A\n #_09F1AD: ADC.b $06\n #_09F1AF: STA.b $06\n\n #_09F1B1: LDY.b #$00\n\n #_09F1B3: PHX\n\n; ---------------------------------------------------------\n\n #_09F1B4: LDX.b #$02\n\n.next_object\n #_09F1B6: PHX\n\n #_09F1B7: TXA\n #_09F1B8: CLC\n #_09F1B9: ADC.b $06\n #_09F1BB: PHA\n\n #_09F1BC: ASL A\n #_09F1BD: TAX\n\n #_09F1BE: REP #$20\n\n #_09F1C0: LDA.b $00\n #_09F1C2: CLC\n #_09F1C3: ADC.w .offset_x,X\n #_09F1C6: STA.b ($90),Y\n\n #_09F1C8: AND.w #$0100\n #_09F1CB: STA.b $0E\n\n #_09F1CD: SEP #$20\n\n #_09F1CF: PLX\n\n #_09F1D0: LDA.b $02\n #_09F1D2: CLC\n #_09F1D3: ADC.w .offset_y,X\n\n #_09F1D6: INY\n #_09F1D7: STA.b ($90),Y\n\n #_09F1D9: LDA.w .char,X\n #_09F1DC: INY\n #_09F1DD: STA.b ($90),Y\n\n #_09F1DF: LDA.w .prop,X\n #_09F1E2: INY\n #_09F1E3: ORA.b #$22\n #_09F1E5: STA.b ($90),Y\n\n #_09F1E7: PHY\n\n #_09F1E8: TYA\n #_09F1E9: LSR A\n #_09F1EA: LSR A\n #_09F1EB: TAY\n\n #_09F1EC: LDA.b $0F\n #_09F1EE: STA.b ($92),Y\n\n #_09F1F0: PLY\n #_09F1F1: INY\n\n #_09F1F2: PLX\n #_09F1F3: DEX\n #_09F1F4: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_09F1F6: PLX\n\n #_09F1F7: RTS", + "file": "bank_09.asm" + }, + { + "name": "Sprite_KillSelf", + "code": "Sprite_KillSelf:\n #_09F1F8: LDA.w $0CAA,X\n #_09F1FB: AND.b #$40\n #_09F1FD: BNE .force_die\n\n #_09F1FF: LDA.b $1B\n #_09F201: BNE .exit\n\n.force_die\n #_09F203: STZ.w $0DD0,X\n\n #_09F206: TXA\n #_09F207: ASL A\n #_09F208: TAY\n\n #_09F209: REP #$20\n\n #_09F20B: LDA.w $0BC0,Y\n #_09F20E: STA.b $00\n\n #_09F210: CMP.w #$FFFF\n #_09F213: PHP\n\n #_09F214: LSR A\n #_09F215: LSR A\n #_09F216: LSR A\n\n #_09F217: CLC\n #_09F218: ADC.w #$7FEF80\n #_09F21B: STA.b $01\n\n #_09F21D: PLP\n #_09F21E: SEP #$20\n #_09F220: BCS .out_of_range\n\n #_09F222: LDA.b #$7F\n #_09F224: STA.b $03\n\n #_09F226: PHX\n\n #_09F227: LDA.b $00\n #_09F229: AND.b #$07\n #_09F22B: TAX\n\n #_09F22C: LDA.b [$01]\n #_09F22E: AND.l SpriteDeathMasks,X\n #_09F232: STA.b [$01]\n\n #_09F234: PLX\n\n; ---------------------------------------------------------\n\n.out_of_range\n #_09F235: LDA.b $1B\n #_09F237: BNE .indoors\n\n #_09F239: TXA\n #_09F23A: ASL A\n #_09F23B: TAY\n\n #_09F23C: LDA.b #$FF\n #_09F23E: STA.w $0BC0,Y\n #_09F241: STA.w $0BC1,Y\n\n #_09F244: RTL", + "file": "bank_09.asm" + }, + { + "name": "SpriteDeathMasks", + "code": "SpriteDeathMasks:\n #_09F24B: db $7F, $BF, $DF, $EF, $F7, $FB, $FD, $FE\n\n; =========================================================\n; FREE ROM: 0x1D\n; =========================================================", + "file": "bank_09.asm" + }, + { + "name": "NULL_09F253", + "code": "NULL_09F253:\n #_09F253: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F25B: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F263: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F26B: db $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n\npool Module12_GameOver\n\n.vectors\n #_09F270: dw GameOver_AdvanceImmediately ; 0x00\n #_09F272: dw GameOver_InitializeAndFadeMusic ; 0x01\n #_09F274: dw GameOver_DelayBeforeIris ; 0x02\n #_09F276: dw GameOver_IrisWipe ; 0x03\n #_09F278: dw Link_SpinAndDie_bounce ; 0x04\n #_09F27A: dw GameOver_SplatAndFade ; 0x05\n #_09F27C: dw GameOver_LoadGAMEOVR ; 0x06\n #_09F27E: dw Animate_GAMEOVER_Letters_bounce ; 0x07\n #_09F280: dw GameOver_Finalize_GAMEOVR ; 0x08\n #_09F282: dw GameOver_SaveAndOrContinue ; 0x09\n #_09F284: dw GameOver_InitializeRevivalFairy ; 0x0A\n #_09F286: dw RevivalFairy_Main_bounce ; 0x0B\n #_09F288: dw GameOver_RiseALittle ; 0x0C\n #_09F28A: dw GameOver_Restore0D ; 0x0D\n #_09F28C: dw GameOver_Restore0E ; 0x0E\n #_09F28E: dw GameOver_ResituateLink ; 0x0F\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Module12_GameOver", + "code": "Module12_GameOver:\n #_09F290: LDA.b $11\n #_09F292: ASL A\n #_09F293: TAX\n\n #_09F294: JSR (.vectors,X)\n\n #_09F297: LDA.b $11\n #_09F299: CMP.b #$09\n #_09F29B: BEQ .exit\n\n #_09F29D: JSL LinkOAM_Main\n\n.exit\n #_09F2A1: RTL", + "file": "bank_09.asm" + }, + { + "name": "GameOver_AdvanceImmediately", + "code": "GameOver_AdvanceImmediately:\n #_09F2A2: INC.b $11\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_InitializeAndFadeMusic", + "code": "GameOver_InitializeAndFadeMusic:\n #_09F2A4: LDA.w $0130\n #_09F2A7: STA.l $7EC227\n\n #_09F2AB: LDA.w $0131\n #_09F2AE: STA.l $7EC228\n\n #_09F2B2: LDA.b #$F1 ; SONG F1 - fade\n #_09F2B4: STA.w $012C\n\n #_09F2B7: LDA.b #$05 ; SFX1.05\n #_09F2B9: STA.w $012D\n #_09F2BC: STA.w $0200\n\n #_09F2BF: STZ.w $03F3\n #_09F2C2: STZ.w $0322\n\n #_09F2C5: STZ.b $55\n\n; ---------------------------------------------------------\n\n #_09F2C7: REP #$20\n\n #_09F2C9: LDA.l $7EC007\n #_09F2CD: STA.l $7EC221\n\n #_09F2D1: LDA.l $7EC009\n #_09F2D5: STA.l $7EC223\n\n; ---------------------------------------------------------\n\n #_09F2D9: LDX.b #$00\n\n.next\n #_09F2DB: LDA.l $7EC300,X\n #_09F2DF: STA.l $7FDD80,X\n\n #_09F2E3: LDA.l $7EC340,X\n #_09F2E7: STA.l $7FDDC0,X\n\n #_09F2EB: LDA.l $7EC380,X\n #_09F2EF: STA.l $7FDE00,X\n\n #_09F2F3: LDA.l $7EC3C0,X\n #_09F2F7: STA.l $7FDE40,X\n\n #_09F2FB: LDA.w #$0000 ; RGB: #000000\n #_09F2FE: STA.l $7EC340,X\n #_09F302: STA.l $7EC380,X\n #_09F306: STA.l $7EC3C0,X\n\n #_09F30A: INX\n #_09F30B: INX\n #_09F30C: CPX.b #$40\n #_09F30E: BNE .next\n\n; ---------------------------------------------------------\n\n #_09F310: STA.l $7EC007\n #_09F314: STA.l $7EC009\n\n #_09F318: STZ.w $011A\n #_09F31B: STZ.w $011C\n\n #_09F31E: LDA.b $99\n #_09F320: STA.l $7EC225\n\n #_09F324: SEP #$20\n\n #_09F326: LDA.b #$20\n #_09F328: STA.b $C8\n\n #_09F32A: STZ.w $04A0\n\n #_09F32D: JSL HUD_HandleFloorIndicator\n\n #_09F331: INC.b $16\n\n #_09F333: LDA.b #$05 ; SFX1.05\n #_09F335: STA.w $012D\n\n #_09F338: INC.b $11\n\n #_09F33A: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_DelayBeforeIris", + "code": "GameOver_DelayBeforeIris:\n #_09F33B: DEC.b $C8\n #_09F33D: BNE .exit\n\n #_09F33F: JSL GameOver_InitializeLetters\n #_09F343: JSL IrisSpotlight_close\n\n #_09F347: LDA.b #$30\n #_09F349: STA.b $98\n #_09F34B: STZ.b $97\n\n #_09F34D: INC.b $11\n\n.exit\n #_09F34F: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_IrisWipe", + "code": "GameOver_IrisWipe:\n #_09F350: JSL PaletteFilter_RestoreBGSubstractiveStrict\n\n #_09F354: LDA.l $7EC540\n #_09F358: STA.l $7EC500\n\n #_09F35C: LDA.l $7EC541\n #_09F360: STA.l $7EC501\n\n #_09F364: LDA.b $10\n\n #_09F366: PHA\n\n #_09F367: JSL IrisSpotlight_ConfigureTable\n\n #_09F36B: PLA\n #_09F36C: STA.b $10\n\n #_09F36E: LDA.b $11\n #_09F370: BNE .exit\n\n; ---------------------------------------------------------\n\n #_09F372: REP #$20\n\n #_09F374: LDA.w #$0018 ; RGB: #C00000\n #_09F377: LDX.b #$00\n\n.next_red\n #_09F379: STA.l $7EC540,X\n #_09F37D: STA.l $7EC560,X\n\n #_09F381: STA.l $7EC580,X\n #_09F385: STA.l $7EC5A0,X\n\n #_09F389: STA.l $7EC5C0,X\n #_09F38D: STA.l $7EC5E0,X\n\n #_09F391: INX\n #_09F392: INX\n #_09F393: CPX.b #$20\n #_09F395: BNE .next_red\n\n #_09F397: STA.l $7EC500\n #_09F39B: STA.l $7EC540\n\n; ---------------------------------------------------------\n\n #_09F39F: SEP #$20\n\n #_09F3A1: JSL IrisSpotlight_ResetTable\n\n #_09F3A5: LDA.b #$20 ; Fixed color RGB: #000000\n #_09F3A7: STA.b $9C\n\n #_09F3A9: LDA.b #$40\n #_09F3AB: STA.b $9D\n\n #_09F3AD: LDA.b #$80\n #_09F3AF: STA.b $9E\n\n #_09F3B1: STZ.b $96\n #_09F3B3: STZ.b $97\n #_09F3B5: STZ.b $98\n\n; ---------------------------------------------------------\n\n #_09F3B7: LDA.b #$04\n #_09F3B9: STA.b $11\n\n #_09F3BB: INC.b $15\n\n #_09F3BD: LDA.b #$0F\n #_09F3BF: STA.b $13\n\n #_09F3C1: LDA.b #$14\n #_09F3C3: STA.b $1C\n #_09F3C5: STZ.b $1D\n\n #_09F3C7: LDA.b #$20\n #_09F3C9: STA.b $9A\n\n #_09F3CB: LDA.b #$40\n #_09F3CD: STA.b $C8\n\n; ---------------------------------------------------------\n\n #_09F3CF: LDA.b #$00\n #_09F3D1: STA.l $7EC007\n #_09F3D5: STA.l $7EC009\n\n #_09F3D9: JSL PrepareToDie\n\n.exit\n #_09F3DD: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_SplatAndFade", + "code": "GameOver_SplatAndFade:\n #_09F3DE: LDA.b $C8\n #_09F3E0: BNE .delay\n\n #_09F3E2: JSL PaletteFilter_RestoreBGSubstractiveStrict\n\n #_09F3E6: LDA.l $7EC540\n #_09F3EA: STA.l $7EC500\n\n #_09F3EE: LDA.l $7EC541\n #_09F3F2: STA.l $7EC501\n\n #_09F3F6: LDA.l $7EC009\n #_09F3FA: CMP.b #$FF\n #_09F3FC: BNE .exit\n\n #_09F3FE: LDA.b #$00\n #_09F400: STA.l $7EC011\n #_09F404: STA.w $0647\n\n #_09F407: LDA.b #$03\n #_09F409: STA.b $95\n\n; ---------------------------------------------------------\n\n #_09F40B: LDX.b #$00\n\n #_09F40D: LDA.b #$06\n #_09F40F: CMP.l $7EF35C\n #_09F413: BEQ .load_gfx\n\n #_09F415: INX\n\n #_09F416: CMP.l $7EF35D\n #_09F41A: BEQ .load_gfx\n\n #_09F41C: INX\n\n #_09F41D: CMP.l $7EF35E\n #_09F421: BEQ .load_gfx\n\n #_09F423: INX\n\n #_09F424: CMP.l $7EF35F\n #_09F428: BEQ .load_gfx\n\n; ---------------------------------------------------------\n\n #_09F42A: STZ.w $05FC\n #_09F42D: STZ.w $05FD\n\n #_09F430: LDA.b #$16\n #_09F432: STA.b $17\n #_09F434: STA.w $0710\n #_09F437: INC.b $11\n\n.exit\n #_09F439: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_LoadGAMEOVR", + "code": "GameOver_LoadGAMEOVR:\n #_09F458: LDA.b #$0C\n #_09F45A: STA.b $C8\n\n #_09F45C: LDA.b #$0F\n #_09F45E: STA.w $0AAA\n\n #_09F461: JSL Graphics_LoadChrHalfSlot\n\n #_09F465: STZ.w $0AAA\n\n; ---------------------------------------------------------\n\n #_09F468: LDA.b #$05\n #_09F46A: STA.w $0AB1\n\n #_09F46D: LDA.b #$02\n #_09F46F: STA.w $0AA9\n\n #_09F472: JSL Palettes_Load_SpriteEnvironment_Underworld\n #_09F476: JSL Palettes_Load_SpriteMain\n\n #_09F47A: INC.b $15\n #_09F47C: INC.b $11\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Link_SpinAndDie_bounce", + "code": "Link_SpinAndDie_bounce:\n #_09F47E: JSL Link_SpinAndDie\n\n #_09F482: RTS", + "file": "bank_09.asm" + }, + { + "name": "Animate_GAMEOVER_Letters_bounce", + "code": "Animate_GAMEOVER_Letters_bounce:\n #_09F483: JSL Animate_GAMEOVER_Letters\n\n #_09F487: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_Finalize_GAMEOVR", + "code": "GameOver_Finalize_GAMEOVR:\n #_09F488: JSL Animate_GAMEOVER_Letters\n\n #_09F48C: LDA.b $10\n #_09F48E: PHA\n\n #_09F48F: LDA.b $11\n #_09F491: PHA\n\n #_09F492: LDA.b #$02\n #_09F494: STA.w $1CD8\n\n #_09F497: JSL RenderText\n\n #_09F49B: PLA\n #_09F49C: INC A\n #_09F49D: STA.b $11\n\n #_09F49F: PLA\n #_09F4A0: STA.b $10\n\n #_09F4A2: LDA.b #$02\n #_09F4A4: STA.b $C8\n\n #_09F4A6: LDA.b #$0B ; SONG 0B\n #_09F4A8: STA.w $012C\n\n; ---------------------------------------------------------\n\n#EXIT_09F4AB:\n #_09F4AB: RTS", + "file": "bank_09.asm" + }, + { + "name": "MaxHealthBasedSpawnHP", + "code": "MaxHealthBasedSpawnHP:\n #_09F4AC: db $18, $18, $18, $18, $18, $20, $20, $28\n #_09F4B4: db $28, $30, $30, $38, $38, $38, $40, $40\n #_09F4BC: db $40, $48, $48, $48, $50\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_SaveAndOrContinue", + "code": "GameOver_SaveAndOrContinue:\n #_09F4C1: JSR GameOver_AnimateChoiceFairy\n\n #_09F4C4: LDA.w $0C4A\n #_09F4C7: BEQ .no_more_gameover\n\n #_09F4C9: JSL Animate_GAMEOVER_Letters\n\n.no_more_gameover\n #_09F4CD: LDA.b $F4\n #_09F4CF: AND.b #$20\n #_09F4D1: BNE .pressed_select\n\n #_09F4D3: DEC.b $C8\n #_09F4D5: BNE .check_for_choice_input\n\n #_09F4D7: INC.b $C8\n\n #_09F4D9: LDA.b $F0\n #_09F4DB: AND.b #$0C\n #_09F4DD: BEQ .check_for_choice_input\n\n #_09F4DF: AND.b #$04\n #_09F4E1: BEQ .pressed_down\n\n.pressed_select\n #_09F4E3: INC.b $B0\n\n #_09F4E5: LDA.b $B0\n #_09F4E7: CMP.b #$03\n #_09F4E9: BMI .play_sfx\n\n #_09F4EB: STZ.b $B0\n #_09F4ED: BRA .play_sfx\n\n.pressed_down\n #_09F4EF: DEC.b $B0\n #_09F4F1: BPL .play_sfx\n\n #_09F4F3: LDA.b #$02\n #_09F4F5: STA.b $B0\n\n.play_sfx\n #_09F4F7: LDA.b #$0C\n #_09F4F9: STA.b $C8\n\n #_09F4FB: LDA.b #$20 ; SFX3.20\n #_09F4FD: STA.w $012F\n\n; ---------------------------------------------------------\n\n.check_for_choice_input\n #_09F500: LDA.b $F6\n #_09F502: AND.b #$C0\n\n #_09F504: ORA.b $F4\n #_09F506: AND.b #$D0\n #_09F508: BEQ EXIT_09F4AB\n\n #_09F50A: LDA.b #$2C ; SFX2.2C\n #_09F50C: STA.w $012E\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_FadeAndRevive", + "code": "GameOver_FadeAndRevive:\n #_09F50F: LDA.b #$F1 ; SONG F1 - fade\n #_09F511: STA.w $012C\n\n #_09F514: LDA.b $1B\n #_09F516: BEQ .outdoors\n\n #_09F518: JSL Underworld_FlagRoomData_Quadrants\n\n; ---------------------------------------------------------\n\n.outdoors\n #_09F51C: JSL AdjustLinkBunnyStatus\n\n #_09F520: LDA.l $7EF3C5\n #_09F524: CMP.b #$03\n #_09F526: BCS .dont_skip_bunniness\n\n #_09F528: LDA.b #$00\n #_09F52A: STA.l $7EF3CA\n\n #_09F52E: LDA.l $7EF357\n #_09F532: BNE .dont_skip_bunniness\n\n #_09F534: JSL ForceNonbunnyStatus\n\n.dont_skip_bunniness\n #_09F538: LDA.b $A0 ; ROOM 0000\n #_09F53A: ORA.b $A1\n #_09F53C: BNE .not_ganon\n\n #_09F53E: STZ.b $1B\n\n.not_ganon\n #_09F540: JSL ResetSomeThingsAfterDeath\n\n; ---------------------------------------------------------\n\n #_09F544: LDA.l $7EF3CC\n #_09F548: CMP.b #$06 ; FOLLOWER 06\n #_09F54A: BEQ .lose_follower\n\n #_09F54C: CMP.b #$0D ; FOLLOWER 0D\n #_09F54E: BEQ .lose_follower\n\n #_09F550: CMP.b #$0A ; FOLLOWER 0A\n #_09F552: BEQ .lose_follower\n\n #_09F554: CMP.b #$09 ; FOLLOWER 09\n #_09F556: BNE .keep_follower\n\n.lose_follower\n #_09F558: LDA.b #$00\n #_09F55A: STA.l $7EF3CC\n\n; ---------------------------------------------------------\n\n.keep_follower\n #_09F55E: LDA.l $7EF36C\n #_09F562: LSR A\n #_09F563: LSR A\n #_09F564: LSR A\n #_09F565: TAX\n\n #_09F566: LDA.l MaxHealthBasedSpawnHP,X\n #_09F56A: STA.l $7EF36D\n #_09F56E: STA.w $04AA\n\n #_09F571: LDA.w $040C\n #_09F574: CMP.b #$FF ; DUNGEON FF\n #_09F576: BEQ .cave\n\n #_09F578: CMP.b #$02 ; DUNGEON 02\n #_09F57A: BNE .castle\n\n #_09F57C: LDA.b #$00 ; DUNGEON 00\n\n.castle\n #_09F57E: LSR A\n #_09F57F: TAX\n\n #_09F580: LDA.l $7EF36F\n #_09F584: STA.l $7EF37C,X\n\n.cave\n #_09F588: JSL Sprite_ResetAll\n\n; ---------------------------------------------------------\n\n #_09F58C: REP #$20\n\n #_09F58E: LDA.l $7EF405\n #_09F592: CMP.w #$FFFF\n #_09F595: BNE .deaths_not_maxed\n\n #_09F597: LDA.l $7EF403\n #_09F59B: INC A\n #_09F59C: STA.l $7EF403\n\n.deaths_not_maxed\n #_09F5A0: SEP #$20\n\n #_09F5A2: INC.w $010A\n\n #_09F5A5: LDA.b $B0\n #_09F5A7: CMP.b #$01\n #_09F5A9: BEQ GameOver_SaveAndQuit\n\n; ---------------------------------------------------------\n\n #_09F5AB: LDA.b $1B\n #_09F5AD: BEQ .died_in_overworld\n\n #_09F5AF: LDA.l $7EF3CC\n #_09F5B3: CMP.b #$01 ; FOLLOWER 01\n #_09F5B5: BEQ .use_this_spawn\n\n #_09F5B7: LDA.w $040C\n #_09F5BA: CMP.b #$FF ; DUNGEON FF\n #_09F5BC: BEQ .died_in_cave\n\n #_09F5BE: STZ.w $04AA\n #_09F5C1: BRA .use_this_spawn\n\n.died_in_cave\n #_09F5C3: STZ.w $0132\n #_09F5C6: STZ.b $1B\n\n.died_in_overworld\n #_09F5C8: LDA.l $7EF3CA\n #_09F5CC: BEQ .use_this_spawn\n\n #_09F5CE: LDA.b #$20\n #_09F5D0: STA.b $A0\n #_09F5D2: STZ.b $A1\n\n.use_this_spawn\n #_09F5D4: LDA.l $7EF3C5\n #_09F5D8: BEQ .no_progress\n\n #_09F5DA: LDA.b $B0\n #_09F5DC: BNE .dont_save\n\n #_09F5DE: JSL SaveGameFile\n\n.dont_save\n #_09F5E2: LDA.b #$05\n #_09F5E4: STA.b $10\n\n #_09F5E6: STZ.b $11\n #_09F5E8: STZ.b $14\n\n #_09F5EA: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_SaveAndQuit", + "code": "GameOver_SaveAndQuit:\n #_09F604: LDA.l $7EF3C5\n #_09F608: BEQ .no_progress\n\n #_09F60A: JSL SaveGameFile\n\n.no_progress\n #_09F60E: LDA.b #$10\n #_09F610: STA.b $1C\n #_09F612: STZ.b $1B\n\n #_09F614: JSL InitializeTriforceIntro\n\n #_09F618: STZ.w $04AA\n #_09F61B: STZ.w $010A\n #_09F61E: STZ.w $0132\n\n #_09F621: SEI\n\n #_09F622: STZ.w NMITIMEN\n #_09F625: STZ.w HDMAEN\n\n #_09F628: REP #$30\n\n #_09F62A: STZ.b $E0\n #_09F62C: STZ.b $E2\n #_09F62E: STZ.b $E4\n #_09F630: STZ.b $E6\n #_09F632: STZ.b $E8\n #_09F634: STZ.b $EA\n\n #_09F636: STZ.w $0120\n #_09F639: STZ.w $011E\n #_09F63C: STZ.w $0124\n #_09F63F: STZ.w $0122\n\n; ---------------------------------------------------------\n\n #_09F642: LDX.w #$0000\n #_09F645: TXA\n\n.delete_next\n #_09F646: STA.l $7EF000,X\n #_09F64A: STA.l $7EF100,X\n #_09F64E: STA.l $7EF200,X\n #_09F652: STA.l $7EF300,X\n #_09F656: STA.l $7EF400,X\n\n #_09F65A: INX\n #_09F65B: INX\n #_09F65C: CPX.w #$0100\n #_09F65F: BNE .delete_next\n\n; ---------------------------------------------------------\n\n #_09F661: SEP #$30\n\n #_09F663: STZ.w $0136\n\n #_09F666: LDA.b #$FF ; SONG FF - transfer\n #_09F668: STA.w APUIO0\n\n #_09F66B: JSL LoadOverworldSongs\n\n #_09F66F: LDA.b #$81\n #_09F671: STA.w NMITIMEN\n\n #_09F674: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_AnimateChoiceFairy", + "code": "GameOver_AnimateChoiceFairy:\n #_09F67A: PHB\n #_09F67B: PHK\n #_09F67C: PLB\n\n #_09F67D: LDX.b $B0\n\n #_09F67F: LDA.b #$34\n #_09F681: STA.w $0850\n\n #_09F684: LDA.w .fairy_height,X\n #_09F687: STA.w $0851\n\n #_09F68A: LDA.b $1A\n #_09F68C: AND.b #$08\n #_09F68E: LSR A\n #_09F68F: LSR A\n #_09F690: LSR A\n #_09F691: TAX\n\n #_09F692: LDA.w .fairy_char,X\n #_09F695: STA.w $0852\n\n #_09F698: LDA.b #$78\n #_09F69A: STA.w $0853\n\n #_09F69D: LDA.b #$02\n #_09F69F: STA.w $0A34\n\n #_09F6A2: PLB\n\n #_09F6A3: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_InitializeRevivalFairy", + "code": "GameOver_InitializeRevivalFairy:\n #_09F6A4: JSL ConfigureRevivalAncillae\n\n #_09F6A8: LDA.b #$38\n #_09F6AA: STA.l $7EF372\n\n #_09F6AE: INC.b $11\n\n #_09F6B0: STZ.w $0200\n\n #_09F6B3: RTS", + "file": "bank_09.asm" + }, + { + "name": "RevivalFairy_Main_bounce", + "code": "RevivalFairy_Main_bounce:\n #_09F6B4: JSL RevivalFairy_Main\n\n #_09F6B8: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_RiseALittle", + "code": "GameOver_RiseALittle:\n #_09F6B9: LDA.l $7EF372\n #_09F6BD: BNE GameOver_RunFairyRefill\n\n; ---------------------------------------------------------\n\n #_09F6BF: REP #$20\n\n #_09F6C1: LDX.b #$00\n\n.next_color\n #_09F6C3: LDA.l $7FDD80,X\n #_09F6C7: STA.l $7EC300,X\n\n #_09F6CB: LDA.l $7FDDC0,X\n #_09F6CF: STA.l $7EC340,X\n\n #_09F6D3: LDA.l $7FDE00,X\n #_09F6D7: STA.l $7EC380,X\n\n #_09F6DB: LDA.l $7FDE40,X\n #_09F6DF: STA.l $7EC3C0,X\n\n #_09F6E3: LDA.w #$0000 ; RGB: #000000\n #_09F6E6: STA.l $7EC540,X\n #_09F6EA: STA.l $7EC580,X\n #_09F6EE: STA.l $7EC5C0,X\n\n #_09F6F2: INX\n #_09F6F3: INX\n #_09F6F4: CPX.b #$40\n #_09F6F6: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_09F6F8: STA.l $7EC500\n\n #_09F6FC: LDA.w #$0000\n #_09F6FF: STA.l $7EC007\n\n #_09F703: LDA.w #$0002\n #_09F706: STA.l $7EC009\n\n #_09F70A: LDA.l $7EC225\n #_09F70E: STA.b $99\n\n #_09F710: SEP #$20\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_AriseAdvancement", + "code": "GameOver_AriseAdvancement:\n #_09F712: INC.b $11\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_RunFairyRefill", + "code": "GameOver_RunFairyRefill:\n #_09F714: JSL RevivalFairy_Main\n #_09F718: JSL RefillLogic_long\n\n #_09F71C: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_Restore0D", + "code": "GameOver_Restore0D:\n #_09F71D: LDA.w $020A\n #_09F720: BNE GameOver_RunFairyRefill\n\n #_09F722: LDA.b #$01\n #_09F724: STA.w $0AAA\n\n #_09F727: JSL Graphics_LoadChrHalfSlot\n\n #_09F72B: LDA.l $7EC017\n #_09F72F: JSL ApplyGrayscaleFixed_Parameterized\n\n #_09F733: BRA GameOver_AriseAdvancement\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "GameOver_Restore0E", + "code": "GameOver_Restore0E:\n #_09F735: JSL Graphics_LoadChrHalfSlot\n\n #_09F739: LDA.l $7EC212\n #_09F73D: STA.b $1D\n\n #_09F73F: INC.b $11\n\n #_09F741: RTS", + "file": "bank_09.asm" + }, + { + "name": "GameOver_ResituateLink", + "code": "GameOver_ResituateLink:\n #_09F742: JSL PaletteFilter_RestoreBGAdditiveStrict\n\n #_09F746: LDA.l $7EC540\n #_09F74A: STA.l $7EC500\n\n #_09F74E: LDA.l $7EC541\n #_09F752: STA.l $7EC501\n\n #_09F756: LDA.l $7EC007\n #_09F75A: CMP.b #$20\n #_09F75C: BNE EXIT_09F79A\n\n #_09F75E: LDA.b $1B\n #_09F760: BNE .indoors\n\n #_09F762: JSL Overworld_SetFixedColAndScroll\n\n; ---------------------------------------------------------\n\n.indoors\n #_09F766: LDA.l $7EC212\n #_09F76A: STA.b $1D\n\n #_09F76C: LDA.w $010C\n #_09F76F: STA.b $10\n #_09F771: STZ.b $11\n\n #_09F773: LDA.b #$90\n #_09F775: STA.w $031F\n\n #_09F778: LDA.l $7EC227\n #_09F77C: STA.w $012C\n\n #_09F77F: LDA.l $7EC228\n #_09F783: STA.w $012D\n\n #_09F786: REP #$20\n\n #_09F788: LDA.l $7EC221\n #_09F78C: STA.l $7EC007\n\n #_09F790: LDA.l $7EC223\n #_09F794: STA.l $7EC009\n\n #_09F798: SEP #$20\n\n; ---------------------------------------------------------\n\n#EXIT_09F79A:\n #_09F79A: RTS", + "file": "bank_09.asm" + }, + { + "name": "Module17_SaveAndQuit", + "code": "Module17_SaveAndQuit:\n #_09F79F: LDA.b $11\n #_09F7A1: ASL A\n #_09F7A2: TAX\n\n #_09F7A3: JSR (.submodules,X)\n\n #_09F7A6: JSL Sprite_Main\n #_09F7AA: JSL LinkOAM_Main\n\n #_09F7AE: RTL", + "file": "bank_09.asm" + }, + { + "name": "Module17_00", + "code": "Module17_00:\n #_09F7AF: INC.b $11\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Module17_01", + "code": "Module17_01:\n #_09F7B1: DEC.b $13\n #_09F7B3: BNE EXIT_09F79A\n\n #_09F7B5: LDA.b #$0F\n #_09F7B7: STA.b $95\n\n #_09F7B9: LDA.b #$01\n #_09F7BB: STA.b $B0\n\n #_09F7BD: JMP.w GameOver_FadeAndRevive\n\n; =========================================================\n; FREE ROM: 0x1E\n; =========================================================", + "file": "bank_09.asm" + }, + { + "name": "NULL_09F7C0", + "code": "NULL_09F7C0:\n #_09F7C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F7C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F7D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_09F7D8: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_InitializeThread", + "code": "Polyhedral_InitializeThread:\n #_09F7DE: PHP\n #_09F7DF: PHB\n\n #_09F7E0: REP #$30\n\n #_09F7E2: PHA\n #_09F7E3: PHX\n #_09F7E4: PHY\n\n #_09F7E5: LDA.w #$0000\n #_09F7E8: STA.l $001F00\n\n #_09F7EC: LDX.w #$001F00\n #_09F7EF: LDY.w #$001F02\n #_09F7F2: LDA.w #$00FD\n #_09F7F5: MVN $00, $00\n\n #_09F7F8: LDA.w #$001F31\n #_09F7FB: STA.w $1F0A\n\n #_09F7FE: LDA.w #$000C\n #_09F801: LDX.w #.registers\n #_09F804: LDY.w #$001F32\n #_09F807: %MVN(Polyhedral_InitializeThread>>16, $00) ; MVN $09, $00\n\n #_09F80A: PLY\n #_09F80B: PLX\n #_09F80C: PLA\n\n #_09F80D: PLB\n #_09F80E: PLP\n\n #_09F80F: RTL", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_RunThread", + "code": "Polyhedral_RunThread:\n\n.wait\n #_09F81D: LDA.b $001F00\n #_09F81F: BEQ .wait\n\n #_09F821: LDA.b $001F0C\n #_09F823: BNE .wait\n\n #_09F825: JSL Polyhedral_EmptyBitMapBuffer\n #_09F829: JSR Polyhedral_SetShapePointer\n #_09F82C: JSR Polyhedral_SetRotationMatrix\n #_09F82F: JSR Polyhedral_OperateRotation\n #_09F832: JSR Polyhedral_DrawPolyhedron\n\n #_09F835: STZ.b $001F00\n\n #_09F837: LDA.b #$FF\n #_09F839: STA.b $001F0C\n\n #_09F83B: BRA .wait\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetShapePointer", + "code": "Polyhedral_SetShapePointer:\n #_09F83D: REP #$30\n\n #_09F83F: LDA.b $001F02\n #_09F841: AND.w #$00FF\n #_09F844: ASL A\n #_09F845: ADC.w #$0080\n #_09F848: STA.b $001F08\n\n #_09F84A: LDA.w $1F03\n #_09F84D: AND.w #$00FF\n #_09F850: ASL A\n #_09F851: STA.b $001FB0\n\n #_09F853: ASL A\n #_09F854: ADC.b $001FB0\n #_09F856: ADC.w #PolyhedralPropertyTable\n #_09F859: TAX\n\n #_09F85A: LDY.w #$001F3F\n #_09F85D: LDA.w #$0005\n #_09F860: MVN PolyhedralPropertyTable>>16, PolyhedralPropertyTable>>16 ; MVN $09, $09\n\n #_09F863: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetRotationMatrix", + "code": "Polyhedral_SetRotationMatrix:\n #_09F864: SEP #$30\n\n #_09F866: LDY.b $001F04\n\n #_09F868: LDA.w Polyhedral_SineFunction,Y\n #_09F86B: STA.b $001F50\n\n #_09F86D: CMP.b #$80\n #_09F86F: SBC.b $001F50\n #_09F871: EOR.b #$FF\n #_09F873: STA.b $001F51\n\n #_09F875: LDA.w Polyhedral_CosineFunction,Y\n #_09F878: STA.b $001F52\n\n #_09F87A: CMP.b #$80\n #_09F87C: SBC.b $001F52\n #_09F87E: EOR.b #$FF\n #_09F880: STA.b $001F53\n\n; ---------------------------------------------------------\n\n #_09F882: LDY.b $001F05\n\n #_09F884: LDA.w Polyhedral_SineFunction,Y\n #_09F887: STA.b $001F54\n\n #_09F889: CMP.b #$80\n #_09F88B: SBC.b $001F54\n\n #_09F88D: EOR.b #$FF\n #_09F88F: STA.b $001F55\n\n #_09F891: LDA.w Polyhedral_CosineFunction,Y\n #_09F894: STA.b $001F56\n\n #_09F896: CMP.b #$80\n #_09F898: SBC.b $001F56\n\n #_09F89A: EOR.b #$FF\n #_09F89C: STA.b $001F57\n\n; ---------------------------------------------------------\n\n #_09F89E: REP #$20\n\n #_09F8A0: SEI\n\n #_09F8A1: LDX.b $001F54\n #_09F8A3: STX.w PPUMULT16\n\n #_09F8A6: LDX.b $001F55\n #_09F8A8: STX.w PPUMULT16\n\n #_09F8AB: LDX.b $001F50\n #_09F8AD: STX.w PPUMULT8\n\n #_09F8B0: LDA.w MPYM\n #_09F8B3: ASL A\n #_09F8B4: ASL A\n #_09F8B5: STA.b $001F58\n\n; ---------------------------------------------------------\n\n #_09F8B7: LDX.b $001F56\n #_09F8B9: STX.w PPUMULT16\n\n #_09F8BC: LDX.b $001F57\n #_09F8BE: STX.w PPUMULT16\n\n #_09F8C1: LDX.b $001F52\n #_09F8C3: STX.w PPUMULT8\n\n #_09F8C6: LDA.w MPYM\n #_09F8C9: ASL A\n #_09F8CA: ASL A\n #_09F8CB: STA.b $001F5E\n\n; ---------------------------------------------------------\n\n #_09F8CD: LDX.b $001F56\n #_09F8CF: STX.w PPUMULT16\n\n #_09F8D2: LDX.b $001F57\n #_09F8D4: STX.w PPUMULT16\n\n #_09F8D7: LDX.b $001F50\n #_09F8D9: STX.w PPUMULT8\n\n #_09F8DC: LDA.w MPYM\n #_09F8DF: ASL A\n #_09F8E0: ASL A\n #_09F8E1: STA.b $001F5A\n\n; ---------------------------------------------------------\n\n #_09F8E3: LDX.b $001F54\n #_09F8E5: STX.w PPUMULT16\n\n #_09F8E8: LDX.b $001F55\n #_09F8EA: STX.w PPUMULT16\n\n #_09F8ED: LDX.b $001F52\n #_09F8EF: STX.w PPUMULT8\n\n #_09F8F2: LDA.w MPYM\n #_09F8F5: ASL A\n #_09F8F6: ASL A\n #_09F8F7: STA.b $001F5C\n\n; ---------------------------------------------------------\n\n #_09F8F9: CLI\n\n #_09F8FA: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_OperateRotation", + "code": "Polyhedral_OperateRotation:\n #_09F8FB: SEP #$30\n\n #_09F8FD: LDA.b $001F3F\n #_09F8FF: TAX\n\n #_09F900: ASL A\n #_09F901: ADC.b $001F3F\n #_09F903: TAY\n\n.next\n #_09F904: DEX\n #_09F905: DEY\n\n #_09F906: LDA.b ($001F41),Y\n #_09F908: STA.b $001F47\n\n #_09F90A: DEY\n\n #_09F90B: LDA.b ($001F41),Y\n #_09F90D: STA.b $001F46\n\n #_09F90F: DEY\n #_09F910: LDA.b ($001F41),Y\n #_09F912: STA.b $001F45\n\n #_09F914: PHY\n\n #_09F915: REP #$20\n\n #_09F917: JSR Polyhedral_RotatePoint\n #_09F91A: JSR Polyhedral_ProjectPoint\n\n #_09F91D: SEP #$20\n #_09F91F: CLC\n\n #_09F920: LDA.b $001F06\n #_09F922: ADC.b $001F48\n #_09F924: STA.b $001F60,X\n\n #_09F926: SEC\n\n #_09F927: LDA.b $001F07\n #_09F929: SBC.b $001F4A\n #_09F92B: STA.b $001F88,X\n\n #_09F92D: PLY\n #_09F92E: BNE .next\n\n #_09F930: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_RotatePoint", + "code": "Polyhedral_RotatePoint:\n #_09F931: LDY.b $001F56\n\n #_09F933: SEI\n\n #_09F934: STY.w PPUMULT16\n\n #_09F937: LDY.b $001F57\n #_09F939: STY.w PPUMULT16\n\n #_09F93C: LDY.b $001F45\n #_09F93E: STY.w PPUMULT8\n\n #_09F941: LDA.w MPYL\n\n #_09F944: LDY.b $001F54\n #_09F946: STY.w PPUMULT16\n\n #_09F949: LDY.b $001F55\n #_09F94B: STY.w PPUMULT16\n\n #_09F94E: LDY.b $001F47\n #_09F950: STY.w PPUMULT8\n\n #_09F953: SEC\n #_09F954: SBC.w MPYL\n\n #_09F957: CLI\n\n #_09F958: STA.b $001F48\n\n; ---------------------------------------------------------\n\n #_09F95A: LDY.b $001F58\n\n #_09F95C: SEI\n\n #_09F95D: STY.w PPUMULT16\n\n #_09F960: LDY.b $001F59\n #_09F962: STY.w PPUMULT16\n\n #_09F965: LDY.b $001F45\n #_09F967: STY.w PPUMULT8\n\n #_09F96A: LDA.w MPYL\n\n #_09F96D: LDY.b $001F52\n #_09F96F: STY.w PPUMULT16\n\n #_09F972: LDY.b $001F53\n #_09F974: STY.w PPUMULT16\n\n #_09F977: LDY.b $001F46\n #_09F979: STY.w PPUMULT8\n\n #_09F97C: CLC\n #_09F97D: ADC.w MPYL\n\n #_09F980: LDY.b $001F5A\n #_09F982: STY.w PPUMULT16\n\n #_09F985: LDY.b $001F5B\n #_09F987: STY.w PPUMULT16\n\n #_09F98A: LDY.b $001F47\n #_09F98C: STY.w PPUMULT8\n\n #_09F98F: CLC\n #_09F990: ADC.w MPYL\n\n #_09F993: CLI\n\n #_09F994: STA.b $001F4A\n\n; ---------------------------------------------------------\n\n #_09F996: LDY.b $001F5C\n\n #_09F998: SEI\n\n #_09F999: STY.w PPUMULT16\n\n #_09F99C: LDY.b $001F5D\n #_09F99E: STY.w PPUMULT16\n\n #_09F9A1: LDY.b $001F45\n #_09F9A3: STY.w PPUMULT8\n\n #_09F9A6: LDA.w MPYM\n\n #_09F9A9: LDY.b $001F50\n #_09F9AB: STY.w PPUMULT16\n\n #_09F9AE: LDY.b $001F51\n #_09F9B0: STY.w PPUMULT16\n\n #_09F9B3: LDY.b $001F46\n #_09F9B5: STY.w PPUMULT8\n\n #_09F9B8: SEC\n #_09F9B9: SBC.w MPYM\n\n #_09F9BC: LDY.b $001F5E\n #_09F9BE: STY.w PPUMULT16\n\n #_09F9C1: LDY.b $001F5F\n #_09F9C3: STY.w PPUMULT16\n\n #_09F9C6: LDY.b $001F47\n #_09F9C8: STY.w PPUMULT8\n\n #_09F9CB: CLC\n #_09F9CC: ADC.w MPYM\n\n #_09F9CF: REP #$05\n\n #_09F9D1: ADC.b $001F08\n #_09F9D3: STA.b $001F4C\n\n #_09F9D5: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_ProjectPoint", + "code": "Polyhedral_ProjectPoint:\n #_09F9D6: LDA.b $001F48\n #_09F9D8: BPL .positive_a\n\n #_09F9DA: EOR.w #$FFFF\n #_09F9DD: INC A\n\n.positive_a\n #_09F9DE: STA.b $001FB2\n\n #_09F9E0: LDA.b $001F4C\n #_09F9E2: STA.b $001FB0\n\n #_09F9E4: XBA\n #_09F9E5: AND.w #$00FF\n #_09F9E8: BEQ .zero_a\n\n.shift_a\n #_09F9EA: LSR.b $001FB2\n #_09F9EC: LSR.b $001FB0\n #_09F9EE: LSR A\n #_09F9EF: BNE .shift_a\n\n.zero_a\n #_09F9F1: SEI\n\n #_09F9F2: LDA.b $001FB2\n #_09F9F4: STA.w WRDIVL\n\n #_09F9F7: LDY.b $001FB0\n #_09F9F9: STY.w WRDIVB\n\n #_09F9FC: NOP\n #_09F9FD: NOP\n\n #_09F9FE: LDA.w #$0000\n #_09FA01: LDY.b $001F49\n #_09FA03: SEC\n #_09FA04: BMI .negative_a\n\n #_09FA06: NOP\n\n #_09FA07: LDA.w RDDIV\n\n #_09FA0A: BRA .continue\n\n.negative_a\n #_09FA0C: SBC.w RDDIV\n\n; ---------------------------------------------------------\n\n.continue\n #_09FA0F: CLI\n\n #_09FA10: STA.b $001F48\n\n #_09FA12: LDA.b $001F4A\n #_09FA14: BPL .positive_b\n\n #_09FA16: EOR.w #$FFFF\n #_09FA19: INC A\n\n.positive_b\n #_09FA1A: STA.b $001FB2\n\n #_09FA1C: LDA.b $001F4C\n #_09FA1E: STA.b $001FB0\n\n #_09FA20: XBA\n #_09FA21: AND.w #$00FF\n #_09FA24: BEQ .zero_b\n\n.shift_b\n #_09FA26: LSR.b $001FB2\n #_09FA28: LSR.b $001FB0\n #_09FA2A: LSR A\n #_09FA2B: BNE .shift_b\n\n.zero_b\n #_09FA2D: SEI\n\n #_09FA2E: LDA.b $001FB2\n #_09FA30: STA.w WRDIVL\n\n #_09FA33: LDY.b $001FB0\n #_09FA35: STY.w WRDIVB\n\n #_09FA38: NOP\n #_09FA39: NOP\n\n #_09FA3A: LDA.w #$0000\n #_09FA3D: LDY.b $001F4B\n #_09FA3F: SEC\n #_09FA40: BMI .negative_b\n\n #_09FA42: NOP\n\n #_09FA43: LDA.w RDDIV\n\n #_09FA46: BRA .exit\n\n.negative_b\n #_09FA48: SBC.w RDDIV\n\n; ---------------------------------------------------------\n\n.exit\n #_09FA4B: CLI\n\n #_09FA4C: STA.b $001F4A\n\n #_09FA4E: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_DrawPolyhedron", + "code": "Polyhedral_DrawPolyhedron:\n #_09FA4F: SEP #$30\n\n #_09FA51: LDY.b #$00\n\n.next\n #_09FA53: LDA.b ($001F43),Y\n #_09FA55: STA.b $001F4E\n\n #_09FA57: AND.b #$7F\n #_09FA59: STA.b $001FB0\n\n #_09FA5B: ASL A\n #_09FA5C: STA.b $001FC0\n\n #_09FA5E: INY\n\n #_09FA5F: LDX.b #$01\n\n; ---------------------------------------------------------\n\n.next_point\n #_09FA61: PHY\n\n #_09FA62: LDA.b ($001F43),Y\n #_09FA64: TAY\n\n #_09FA65: LDA.w $1F60,Y\n #_09FA68: STA.b $001FC0,X\n\n #_09FA6A: INX\n\n #_09FA6B: LDA.w $1F88,Y\n #_09FA6E: STA.b $001FC0,X\n\n #_09FA70: INX\n\n #_09FA71: PLY\n #_09FA72: INY\n\n #_09FA73: DEC.b $001FB0\n #_09FA75: BNE .next_point\n\n; ---------------------------------------------------------\n\n #_09FA77: LDA.b ($001F43),Y\n #_09FA79: INY\n #_09FA7A: STA.b $001F4F\n\n #_09FA7C: PHY\n\n #_09FA7D: LDA.b $001FC0\n #_09FA7F: CMP.b #$06\n #_09FA81: BCC .to_next\n\n #_09FA83: JSR Polyhedral_CalculateCrossProduct\n #_09FA86: BMI .draw_back\n\n #_09FA88: BEQ .to_next\n\n #_09FA8A: JSR Polyhedral_SetForegroundColor\n #_09FA8D: JSL Polyhedral_DrawFace\n\n.to_next\n #_09FA91: PLY\n\n #_09FA92: DEC.b $001F40\n #_09FA94: BNE .next\n\n #_09FA96: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetForegroundColor", + "code": "Polyhedral_SetForegroundColor:\n #_09FACA: LDA.b $001F01\n #_09FACC: BNE Polyhedral_SetFGShadeColor\n\n #_09FACE: LDA.b $001F4F\n #_09FAD0: AND.b #$07\n #_09FAD2: JSL Polyhedral_SetColorMask\n\n #_09FAD6: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetBackgroundColor", + "code": "Polyhedral_SetBackgroundColor:\n #_09FAD7: LDA.b $001F01\n #_09FAD9: BNE Polyhedral_SetBGShadeColor\n\n #_09FADB: LDA.b $001F4F\n #_09FADD: LSR A\n #_09FADE: LSR A\n #_09FADF: LSR A\n #_09FAE0: LSR A\n #_09FAE1: AND.b #$07\n\n #_09FAE3: JSL Polyhedral_SetColorMask\n\n #_09FAE7: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetBGShadeColor", + "code": "Polyhedral_SetBGShadeColor:\n #_09FAE8: REP #$20\n\n #_09FAEA: LDA.b $001FB0\n #_09FAEC: EOR.w #$FFFF\n #_09FAEF: INC A\n\n #_09FAF0: BRA Polyhedral_SetShadeColor\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetFGShadeColor", + "code": "Polyhedral_SetFGShadeColor:\n #_09FAF2: REP #$20\n\n #_09FAF4: LDA.b $001FB0\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetShadeColor", + "code": "Polyhedral_SetShadeColor:\n #_09FAF6: PHA\n\n #_09FAF7: LDA.w $1F03\n #_09FAFA: AND.w #$00FF\n #_09FAFD: BEQ .zero\n\n #_09FAFF: LDA.w $1F02\n #_09FB02: AND.w #$00FF\n\n #_09FB05: LSR A\n #_09FB06: LSR A\n #_09FB07: LSR A\n #_09FB08: LSR A\n #_09FB09: LSR A\n\n.zero\n #_09FB0A: TAX\n #_09FB0B: PLA\n\n.shift\n #_09FB0C: ASL A\n\n #_09FB0D: DEX\n #_09FB0E: BPL .shift\n\n; ---------------------------------------------------------\n\n #_09FB10: SEP #$20\n\n #_09FB12: XBA\n #_09FB13: BNE .non_zero\n\n #_09FB15: LDA.b #$01\n #_09FB17: BRA .set_color\n\n.non_zero\n #_09FB19: CMP.b #$08\n #_09FB1B: BCC .set_color\n\n #_09FB1D: LDA.b #$07\n\n.set_color\n #_09FB1F: JSL Polyhedral_SetColorMask\n\n #_09FB23: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_CalculateCrossProduct", + "code": "Polyhedral_CalculateCrossProduct:\n #_09FB24: SEP #$05\n\n #_09FB26: LDA.b $001FC3\n #_09FB28: SBC.b $001FC1\n #_09FB2A: STA.w PPUMULT16\n\n #_09FB2D: LDA.b #$00\n #_09FB2F: SBC.b #$00\n #_09FB31: STA.w PPUMULT16\n\n #_09FB34: SEC\n\n #_09FB35: LDA.b $001FC6\n #_09FB37: SBC.b $001FC4\n #_09FB39: STA.w PPUMULT8\n\n #_09FB3C: LDA.w MPYL\n #_09FB3F: STA.b $001FB0\n\n #_09FB41: LDA.w MPYM\n\n #_09FB44: CLI\n #_09FB45: STA.b $001FB1\n\n; ---------------------------------------------------------\n\n #_09FB47: SEP #$05\n\n #_09FB49: LDA.b $001FC5\n #_09FB4B: SBC.b $001FC3\n #_09FB4D: STA.w PPUMULT16\n\n #_09FB50: LDA.b #$00\n #_09FB52: SBC.b #$00\n #_09FB54: STA.w PPUMULT16\n\n #_09FB57: SEC\n\n #_09FB58: LDA.b $001FC4\n #_09FB5A: SBC.b $001FC2\n #_09FB5C: STA.w PPUMULT8\n\n #_09FB5F: REP #$20\n\n #_09FB61: SEC\n\n #_09FB62: LDA.b $001FB0\n #_09FB64: SBC.w MPYL\n #_09FB67: STA.b $001FB0\n\n; ---------------------------------------------------------\n\n #_09FB69: SEP #$20\n\n #_09FB6B: CLI\n\n #_09FB6C: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SineFunction", + "code": "Polyhedral_SineFunction:\n #_09FB6D: db $00, $02, $03, $05, $06, $08, $09, $0B\n #_09FB75: db $0C, $0E, $10, $11, $13, $14, $16, $17\n #_09FB7D: db $18, $1A, $1B, $1D, $1E, $20, $21, $22\n #_09FB85: db $24, $25, $26, $27, $29, $2A, $2B, $2C\n #_09FB8D: db $2D, $2E, $2F, $30, $31, $32, $33, $34\n #_09FB95: db $35, $36, $37, $38, $38, $39, $3A, $3B\n #_09FB9D: db $3B, $3C, $3C, $3D, $3D, $3E, $3E, $3E\n #_09FBA5: db $3F, $3F, $3F, $40, $40, $40, $40, $40\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_CosineFunction", + "code": "Polyhedral_CosineFunction:\n #_09FBAD: db $40, $40, $40, $40, $40, $40, $3F, $3F\n #_09FBB5: db $3F, $3E, $3E, $3E, $3D, $3D, $3C, $3C\n #_09FBBD: db $3B, $3B, $3A, $39, $38, $38, $37, $36\n #_09FBC5: db $35, $34, $33, $32, $31, $30, $2F, $2E\n #_09FBCD: db $2D, $2C, $2B, $2A, $29, $27, $26, $25\n #_09FBD5: db $24, $22, $21, $20, $1E, $1D, $1B, $1A\n #_09FBDD: db $18, $17, $16, $14, $13, $11, $10, $0E\n #_09FBE5: db $0C, $0B, $09, $08, $06, $05, $03, $02\n #_09FBED: db $00, $FE, $FD, $FB, $FA, $F8, $F7, $F5\n #_09FBF5: db $F4, $F2, $F0, $EF, $ED, $EC, $EA, $E9\n #_09FBFD: db $E8, $E6, $E5, $E3, $E2, $E0, $DF, $DE\n #_09FC05: db $DC, $DB, $DA, $D9, $D7, $D6, $D5, $D4\n #_09FC0D: db $D3, $D2, $D1, $D0, $CF, $CE, $CD, $CC\n #_09FC15: db $CB, $CA, $C9, $C8, $C8, $C7, $C6, $C5\n #_09FC1D: db $C5, $C4, $C4, $C3, $C3, $C2, $C2, $C2\n #_09FC25: db $C1, $C1, $C1, $C0, $C0, $C0, $C0, $C0\n #_09FC2D: db $C0, $C0, $C0, $C0, $C0, $C0, $C1, $C1\n #_09FC35: db $C1, $C2, $C2, $C2, $C3, $C3, $C4, $C4\n #_09FC3D: db $C5, $C5, $C6, $C7, $C8, $C8, $C9, $CA\n #_09FC45: db $CB, $CC, $CD, $CE, $CF, $D0, $D1, $D2\n #_09FC4D: db $D3, $D4, $D5, $D6, $D7, $D9, $DA, $DB\n #_09FC55: db $DC, $DE, $DF, $E0, $E2, $E3, $E5, $E6\n #_09FC5D: db $E8, $E9, $EA, $EC, $ED, $EF, $F0, $F2\n #_09FC65: db $F4, $F5, $F7, $F8, $FA, $FB, $FD, $FE\n #_09FC6D: db $00, $02, $03, $05, $06, $08, $09, $0B\n #_09FC75: db $0C, $0E, $10, $11, $13, $14, $16, $17\n #_09FC7D: db $18, $1A, $1B, $1D, $1E, $20, $21, $22\n #_09FC85: db $24, $25, $26, $27, $29, $2A, $2B, $2C\n #_09FC8D: db $2D, $2E, $2F, $30, $31, $32, $33, $34\n #_09FC95: db $35, $36, $37, $38, $38, $39, $3A, $3B\n #_09FC9D: db $3B, $3C, $3C, $3D, $3D, $3E, $3E, $3E\n #_09FCA5: db $3F, $3F, $3F, $40, $40, $40, $40, $40\n\n; =========================================================\n; FREE ROM: 0x01\n; =========================================================", + "file": "bank_09.asm" + }, + { + "name": "NULL_09FCAD", + "code": "NULL_09FCAD:\n #_09FCAD: db $FF\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetColorMask", + "code": "Polyhedral_SetColorMask:\n #_09FCAE: PHP\n\n #_09FCAF: SEP #$30\n\n #_09FCB1: ASL A\n #_09FCB2: ASL A\n #_09FCB3: TAX\n\n #_09FCB4: REP #$20\n\n #_09FCB6: LDA.l .mask+0,X\n #_09FCBA: STA.b $001FB5\n\n #_09FCBC: LDA.l .mask+2,X\n #_09FCC0: STA.b $001FB7\n\n #_09FCC2: PLP\n\n #_09FCC3: RTL", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_EmptyBitMapBuffer", + "code": "Polyhedral_EmptyBitMapBuffer:\n #_09FD04: PHP\n #_09FD05: PHB\n\n #_09FD06: REP #$30\n\n #_09FD08: LDA.w #$0000\n #_09FD0B: STA.l $7EE800\n\n #_09FD0F: LDX.w #$7EE800\n #_09FD12: LDY.w #$7EE802\n\n #_09FD15: LDA.w #$07FD\n #_09FD18: MVN $7E, $7E\n\n #_09FD1B: PLB\n #_09FD1C: PLP\n\n #_09FD1D: RTL", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_DrawFace", + "code": "Polyhedral_DrawFace:\n #_09FD1E: PHP\n #_09FD1F: PHB\n\n #_09FD20: SEP #$30\n\n #_09FD22: LDA.b #$7E\n #_09FD24: PHA\n #_09FD25: PLB\n\n #_09FD26: LDY.b $001FC0\n #_09FD28: TYX\n\n #_09FD29: LDA.b $001FC0,X\n\n; ---------------------------------------------------------\n\n.loop\n #_09FD2B: DEX\n #_09FD2C: DEX\n #_09FD2D: BEQ .add_fill\n\n #_09FD2F: CMP.b $001FC0,X\n #_09FD31: BCC .loop\n #_09FD33: BEQ .loop\n\n #_09FD35: TXY\n #_09FD36: LDA.b $001FC0,X\n\n #_09FD38: BRA .loop\n\n; ---------------------------------------------------------\n\n.add_fill\n #_09FD3A: AND.b #$07\n #_09FD3C: ASL A\n #_09FD3D: STA.b $001FB9\n\n #_09FD3F: LDA.w $7E1FC0,Y\n #_09FD42: AND.b #$38\n #_09FD44: BIT.b #$20\n #_09FD46: BEQ .no_swap\n\n #_09FD48: EOR.b #$24\n\n.no_swap\n #_09FD4A: LSR A\n #_09FD4B: LSR A\n #_09FD4C: ADC.b #$E8\n #_09FD4E: STA.b $001FBA\n\n #_09FD50: STY.b $001FE9\n #_09FD52: STY.b $001FF2\n\n #_09FD54: LDA.b $001FC0\n #_09FD56: LSR A\n #_09FD57: STA.b $001FE0\n\n #_09FD59: LDA.w $7E1FC0,Y\n #_09FD5C: STA.b $001FE2\n #_09FD5E: STA.b $001FEB\n\n #_09FD60: LDA.w $7E1FBF,Y\n #_09FD63: STA.b $001FE1\n #_09FD65: STA.b $001FEA\n\n #_09FD67: JSR Polyhedral_SetLeft\n #_09FD6A: BCS EXIT_09FD71\n\n #_09FD6C: JSR Polyhedral_SetRight\n #_09FD6F: BCC Polyhedral_PaintBucket\n\n; ---------------------------------------------------------\n\n#EXIT_09FD71:\n #_09FD71: PLB\n #_09FD72: PLP\n\n #_09FD73: RTL", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_PaintBucket", + "code": "Polyhedral_PaintBucket:\n\n.next\n #_09FD74: JSR Polyhedral_FillLine\n\n #_09FD77: LDA.b $001FB9\n #_09FD79: INC A\n #_09FD7A: INC A\n #_09FD7B: CMP.b #$10\n #_09FD7D: BEQ .big_a\n\n #_09FD7F: STA.b $001FB9\n #_09FD81: BRA .continue\n\n.big_a\n #_09FD83: LDA.b $001FBA\n #_09FD85: INC A\n #_09FD86: INC A\n #_09FD87: BIT.b #$08\n #_09FD89: BNE .dont_flip\n\n #_09FD8B: EOR.b #$19\n\n.dont_flip\n #_09FD8D: STA.b $001FBA\n #_09FD8F: STZ.b $001FB9\n\n; ---------------------------------------------------------\n\n.continue\n #_09FD91: LDX.b $001FE2\n #_09FD93: CPX.b $001FE4\n #_09FD95: BNE .skip_left\n\n #_09FD97: LDX.b $001FE3\n #_09FD99: STX.b $001FE1\n\n #_09FD9B: JSR Polyhedral_SetLeft\n #_09FD9E: BCS EXIT_09FD71\n\n #_09FDA0: LDX.b $001FE2\n\n; ---------------------------------------------------------\n\n.skip_left\n #_09FDA2: INX\n #_09FDA3: STX.b $001FE2\n\n #_09FDA5: LDX.b $001FEB\n #_09FDA7: CPX.b $001FED\n #_09FDA9: BNE .skip_right\n\n #_09FDAB: LDX.b $001FEC\n #_09FDAD: STX.b $001FEA\n\n #_09FDAF: JSR Polyhedral_SetRight\n #_09FDB2: BCS EXIT_09FD71\n\n #_09FDB4: LDX.b $001FEB\n\n; ---------------------------------------------------------\n\n.skip_right\n #_09FDB6: INX\n #_09FDB7: STX.b $001FEB\n\n #_09FDB9: REP #$21\n\n #_09FDBB: LDA.b $001FE5\n #_09FDBD: ADC.b $001FE7\n #_09FDBF: STA.b $001FE5\n\n #_09FDC1: CLC\n\n #_09FDC2: LDA.b $001FEE\n #_09FDC4: ADC.b $001FF0\n #_09FDC6: STA.b $001FEE\n\n #_09FDC8: SEP #$20\n\n #_09FDCA: BRA .next\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "UNREACHABLE_09FDCC", + "code": "UNREACHABLE_09FDCC:\n #_09FDCC: PLB\n #_09FDCD: PLP\n\n #_09FDCE: RTL", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_FillLine", + "code": "Polyhedral_FillLine:\n #_09FDCF: LDA.b $001FE6\n #_09FDD1: AND.b #$07\n #_09FDD3: ASL A\n #_09FDD4: TAY\n\n #_09FDD5: LDA.b $001FEF\n #_09FDD7: AND.b #$07\n #_09FDD9: ASL A\n #_09FDDA: TAX\n\n #_09FDDB: LDA.b $001FE6\n #_09FDDD: AND.b #$38\n #_09FDDF: STA.b $001FBC\n\n #_09FDE1: LDA.b $001FEF\n #_09FDE3: AND.b #$38\n #_09FDE5: SEC\n #_09FDE6: SBC.b $001FBC\n #_09FDE8: BNE Polyhedral_FillBigLine\n\n; ---------------------------------------------------------\n\n #_09FDEA: REP #$30\n\n #_09FDEC: LDA.l Polyhedral_LineFillMask_right,X\n #_09FDF0: TYX\n\n #_09FDF1: AND.l Polyhedral_LineFillMask_left,X\n #_09FDF5: STA.b $001FB2\n\n #_09FDF7: LDA.b $001FEF\n #_09FDF9: AND.w #$0038\n #_09FDFC: ASL A\n #_09FDFD: ASL A\n\n #_09FDFE: ORA.b $001FB9\n #_09FE00: TAY\n\n #_09FE01: LDA.b $001FB5\n #_09FE03: EOR.w $7E0000,Y\n #_09FE06: AND.b $001FB2\n #_09FE08: EOR.w $7E0000,Y\n #_09FE0B: STA.w $7E0000,Y\n\n #_09FE0E: LDA.b $001FB7\n #_09FE10: EOR.w $7E0010,Y\n #_09FE13: AND.b $001FB2\n #_09FE15: EOR.w $7E0010,Y\n #_09FE18: STA.w $7E0010,Y\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "EXIT_09FE1B", + "code": "EXIT_09FE1B:\n #_09FE1B: SEP #$30\n\n #_09FE1D: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_FillBigLine", + "code": "Polyhedral_FillBigLine:\n #_09FE1E: BCC EXIT_09FE1B\n\n #_09FE20: LSR A\n #_09FE21: LSR A\n #_09FE22: LSR A\n #_09FE23: STA.b $001FFA\n\n #_09FE25: STZ.b $001FFB\n\n; ---------------------------------------------------------\n\n #_09FE27: REP #$30\n\n #_09FE29: LDA.l Polyhedral_LineFillMask_right,X\n #_09FE2D: STA.b $001FB2\n\n #_09FE2F: TYX\n\n #_09FE30: LDA.b $001FEF\n #_09FE32: AND.w #$0038\n #_09FE35: ASL A\n #_09FE36: ASL A\n #_09FE37: ORA.b $001FB9\n #_09FE39: TAY\n\n #_09FE3A: LDA.b $001FB5\n #_09FE3C: EOR.w $7E0000,Y\n #_09FE3F: AND.b $001FB2\n #_09FE41: EOR.w $7E0000,Y\n #_09FE44: STA.w $7E0000,Y\n\n #_09FE47: LDA.b $001FB7\n #_09FE49: EOR.w $7E0010,Y\n #_09FE4C: AND.b $001FB2\n #_09FE4E: EOR.w $7E0010,Y\n #_09FE51: STA.w $7E0010,Y\n\n; ---------------------------------------------------------\n\n #_09FE54: SEC\n\n #_09FE55: TYA\n #_09FE56: SBC.w #$0020\n #_09FE59: TAY\n\n #_09FE5A: DEC.b $001FFA\n #_09FE5C: BEQ .no_loop\n\n; ---------------------------------------------------------\n\n.loop\n #_09FE5E: LDA.b $001FB5\n #_09FE60: STA.w $7E0000,Y\n\n #_09FE63: LDA.b $001FB7\n #_09FE65: STA.w $7E0010,Y\n\n #_09FE68: TYA\n #_09FE69: SBC.w #$0020\n #_09FE6C: TAY\n\n #_09FE6D: DEC.b $001FFA\n #_09FE6F: BNE .loop\n\n; ---------------------------------------------------------\n\n.no_loop\n #_09FE71: LDA.l Polyhedral_LineFillMask_left,X\n #_09FE75: STA.b $001FB2\n\n #_09FE77: LDA.b $001FB5\n #_09FE79: EOR.w $7E0000,Y\n #_09FE7C: AND.b $001FB2\n #_09FE7E: EOR.w $7E0000,Y\n #_09FE81: STA.w $7E0000,Y\n\n #_09FE84: LDA.b $001FB7\n #_09FE86: EOR.w $7E0010,Y\n #_09FE89: AND.b $001FB2\n #_09FE8B: EOR.w $7E0010,Y\n #_09FE8E: STA.w $7E0010,Y\n\n #_09FE91: SEP #$30\n\n #_09FE93: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_LineFillMask", + "code": "Polyhedral_LineFillMask:\n\n.left\n #_09FE94: dw $FFFF\n #_09FE96: dw $7F7F\n #_09FE98: dw $3F3F\n #_09FE9A: dw $1F1F\n #_09FE9C: dw $0F0F\n #_09FE9E: dw $0707\n #_09FEA0: dw $0303\n #_09FEA2: dw $0101\n\n.right\n #_09FEA4: dw $8080\n #_09FEA6: dw $C0C0\n #_09FEA8: dw $E0E0\n #_09FEAA: dw $F0F0\n #_09FEAC: dw $F8F8\n #_09FEAE: dw $FCFC\n #_09FEB0: dw $FEFE\n #_09FEB2: dw $FFFF\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetLeft", + "code": "Polyhedral_SetLeft:\n\n.restart\n #_09FEB4: DEC.b $001FE0\n #_09FEB6: BPL .continue\n\n.fail\n #_09FEB8: SEC\n\n #_09FEB9: RTS", + "file": "bank_09.asm" + }, + { + "name": "Polyhedral_SetRight", + "code": "Polyhedral_SetRight:\n.restart\n #_09FF1E: DEC.b $001FE0\n #_09FF20: BPL .continue_a\n\n.fail\n #_09FF22: SEC\n\n #_09FF23: RTS", + "file": "bank_09.asm" + }, + { + "name": "PolyhedralPropertyTable", + "code": "PolyhedralPropertyTable:\n\n.crystal\n #_09FF8C: db $06 ; vertices\n #_09FF8D: db $08 ; faces\n #_09FF8E: dw CrystalVertices\n #_09FF90: dw CrystalFaces\n\n.triforce\n #_09FF92: db $06 ; vertices\n #_09FF93: db $05 ; faces\n #_09FF94: dw TriforceVertices\n #_09FF96: dw TriforceFaces\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "CrystalVertices", + "code": "CrystalVertices:\n #_09FF98: db 0, 65, 0\n #_09FF9B: db 0, -65, 0\n #_09FF9E: db 0, 0, -40\n #_09FFA1: db -40, 0, 0\n #_09FFA4: db 0, 0, 40\n #_09FFA7: db 40, 0, 0\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "CrystalFaces", + "code": "CrystalFaces:\n #_09FFAA: db 3, 0, 5, 2, 4\n #_09FFAF: db 3, 0, 2, 3, 1\n #_09FFB4: db 3, 0, 3, 4, 2\n #_09FFB9: db 3, 0, 4, 5, 3\n\n #_09FFBE: db 3, 1, 2, 5, 4\n #_09FFC3: db 3, 1, 3, 2, 1\n #_09FFC8: db 3, 1, 4, 3, 2\n #_09FFCD: db 3, 1, 5, 4, 3\n\n; =========================================================\n", + "file": "bank_09.asm" + }, + { + "name": "TriforceVertices", + "code": "TriforceVertices:\n #_09FFD2: db 0, 40, 10\n #_09FFD5: db 40, -40, 10\n #_09FFD8: db -40, -40, 10\n #_09FFDB: db 0, 40, -10\n #_09FFDE: db -40, -40, -10\n #_09FFE1: db 40, -40, -10\n\n; ---------------------------------------------------------\n", + "file": "bank_09.asm" + }, + { + "name": "Ancilla_SFX1_Near", + "code": "Ancilla_SFX1_Near:\n #_088000: JSR Ancilla_SFX_Near\n #_088003: STA.w $012D\n\n #_088006: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX2_Near", + "code": "Ancilla_SFX2_Near:\n #_088007: JSR Ancilla_SFX_Near\n #_08800A: STA.w $012E\n\n #_08800D: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX3_Near", + "code": "Ancilla_SFX3_Near:\n #_08800E: JSR Ancilla_SFX_Near\n #_088011: STA.w $012F\n\n #_088014: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX_Near", + "code": "Ancilla_SFX_Near:\n #_088015: STA.w $0CF8\n\n #_088018: JSL Link_CalculateSFXPan\n #_08801C: ORA.w $0CF8\n\n #_08801F: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX1_Pan", + "code": "Ancilla_SFX1_Pan:\n #_088020: JSR Ancilla_SFX_SetPan\n #_088023: STA.w $012D\n\n #_088026: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX2_Pan", + "code": "Ancilla_SFX2_Pan:\n #_088027: JSR Ancilla_SFX_SetPan\n #_08802A: STA.w $012E\n\n #_08802D: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX3_Pan", + "code": "Ancilla_SFX3_Pan:\n #_08802E: JSR Ancilla_SFX_SetPan\n #_088031: STA.w $012F\n\n #_088034: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SFX_SetPan", + "code": "Ancilla_SFX_SetPan:\n #_088035: STA.w $0CF8\n\n #_088038: JSL Ancilla_CalculateSFXPan\n #_08803C: ORA.w $0CF8\n\n #_08803F: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaObjectAllocation", + "code": "AncillaObjectAllocation:\n #_08806F: db $00 ; 0x00 - NOTHING\n #_088070: db $08 ; 0x01 - SOMARIA BULLET\n #_088071: db $0C ; 0x02 - FIRE ROD SHOT\n #_088072: db $10 ; 0x03 - UNUSED\n #_088073: db $10 ; 0x04 - BEAM HIT\n #_088074: db $04 ; 0x05 - BOOMERANG\n #_088075: db $10 ; 0x06 - WALL HIT\n #_088076: db $18 ; 0x07 - BOMB\n #_088077: db $08 ; 0x08 - DOOR DEBRIS\n #_088078: db $08 ; 0x09 - ARROW\n #_088079: db $08 ; 0x0A - ARROW IN THE WALL\n #_08807A: db $00 ; 0x0B - ICE ROD SHOT\n #_08807B: db $14 ; 0x0C - SWORD BEAM_BOUNCE\n #_08807C: db $00 ; 0x0D - SPIN ATTACK FULL CHARGE SPARK\n #_08807D: db $10 ; 0x0E - BLAST WALL EXPLOSION\n #_08807E: db $28 ; 0x0F - BLAST WALL EXPLOSION\n #_08807F: db $18 ; 0x10 - BLAST WALL EXPLOSION\n #_088080: db $10 ; 0x11 - ICE ROD WALL HIT\n #_088081: db $10 ; 0x12 - BLAST WALL EXPLOSION\n #_088082: db $10 ; 0x13 - ICE ROD SPARKLE\n #_088083: db $10 ; 0x14 - BAD POINTER\n #_088084: db $0C ; 0x15 - SPLASH\n #_088085: db $08 ; 0x16 - HIT STARS\n #_088086: db $08 ; 0x17 - SHOVEL DIRT\n #_088087: db $50 ; 0x18 - ETHER SPELL\n #_088088: db $00 ; 0x19 - BOMBOS SPELL\n #_088089: db $10 ; 0x1A - POWDER DUST\n #_08808A: db $08 ; 0x1B - SWORD WALL HIT\n #_08808B: db $40 ; 0x1C - QUAKE SPELL\n #_08808C: db $00 ; 0x1D - SCREEN SHAKE\n #_08808D: db $0C ; 0x1E - DASH DUST\n #_08808E: db $24 ; 0x1F - HOOKSHOT\n #_08808F: db $10 ; 0x20 - BLANKET\n #_088090: db $0C ; 0x21 - SNORE\n #_088091: db $08 ; 0x22 - ITEM GET\n #_088092: db $10 ; 0x23 - LINK POOF\n #_088093: db $10 ; 0x24 - GRAVESTONE\n #_088094: db $04 ; 0x25 - BAD POINTER\n #_088095: db $0C ; 0x26 - SWORD SWING SPARKLE\n #_088096: db $1C ; 0x27 - DUCK\n #_088097: db $00 ; 0x28 - WISH POND ITEM\n #_088098: db $10 ; 0x29 - MILESTONE ITEM GET\n #_088099: db $14 ; 0x2A - SPIN ATTACK SPARKLE A\n #_08809A: db $14 ; 0x2B - SPIN ATTACK SPARKLE B\n #_08809B: db $10 ; 0x2C - SOMARIA BLOCK\n #_08809C: db $08 ; 0x2D - SOMARIA BLOCK FIZZ\n #_08809D: db $20 ; 0x2E - SOMARIA BLOCK FISSION\n #_08809E: db $10 ; 0x2F - LAMP FLAME\n #_08809F: db $10 ; 0x30 - BYRNA WINDUP SPARK\n #_0880A0: db $10 ; 0x31 - BYRNA SPARK\n #_0880A1: db $04 ; 0x32 - BLAST WALL FIREBALL\n #_0880A2: db $00 ; 0x33 - BLAST WALL EXPLOSION\n #_0880A3: db $80 ; 0x34 - SKULL WOODS FIRE\n #_0880A4: db $10 ; 0x35 - MASTER SWORD GET\n #_0880A5: db $04 ; 0x36 - FLUTE\n #_0880A6: db $30 ; 0x37 - WEATHERVANE EXPLOSION\n #_0880A7: db $14 ; 0x38 - CUTSCENE DUCK\n #_0880A8: db $10 ; 0x39 - SOMARIA PLATFORM POOF\n #_0880A9: db $00 ; 0x3A - BIG BOMB EXPLOSION\n #_0880AA: db $10 ; 0x3B - SWORD UP SPARKLE\n #_0880AB: db $00 ; 0x3C - SPIN ATTACK CHARGE SPARKLE\n #_0880AC: db $00 ; 0x3D - ITEM SPLASH\n #_0880AD: db $08 ; 0x3E - RISING CRYSTAL\n #_0880AE: db $00 ; 0x3F - BUSH POOF\n #_0880AF: db $10 ; 0x40 - DWARF POOF\n #_0880B0: db $08 ; 0x41 - WATERFALL SPLASH\n #_0880B1: db $78 ; 0x42 - HAPPINESS POND RUPEES\n #_0880B2: db $80 ; 0x43 - GANONS TOWER CUTSCENE\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_FireRodShot", + "code": "AncillaAdd_FireRodShot:\n #_0880B3: LDY.b #$01\n\n #_0880B5: STA.b $00\n\n #_0880B7: JSL Ancilla_CheckForAvailableSlot\n #_0880BB: BPL .free_slot\n\n #_0880BD: LDA.b $00\n #_0880BF: CMP.b #$01\n #_0880C1: BEQ .no_refund_magic\n\n #_0880C3: LDX.b #$00\n #_0880C5: JSL Refund_Magic\n\n.no_refund_magic\n #_0880C9: BRL .exit_a\n\n; ---------------------------------------------------------\n\n.free_slot\n #_0880CC: PHB\n #_0880CD: PHK\n #_0880CE: PLB\n\n #_0880CF: PHX\n\n #_0880D0: LDA.b $00\n #_0880D2: CMP.b #$01\n #_0880D4: BEQ .no_sfx\n\n #_0880D6: PHY\n\n #_0880D7: LDA.b #$0E ; SFX2.0E\n #_0880D9: JSR Ancilla_SFX2_Near\n\n #_0880DC: PLY\n\n; ---------------------------------------------------------\n\n.no_sfx\n #_0880DD: LDA.b $00\n #_0880DF: STA.w $0C4A,Y\n\n #_0880E2: TAX\n\n #_0880E3: LDA.w AncillaObjectAllocation,X\n #_0880E6: STA.w $0C90,Y\n\n #_0880E9: LDA.b #$03\n #_0880EB: STA.w $0C68,Y\n\n #_0880EE: LDA.b #$00\n #_0880F0: STA.w $0C54,Y\n #_0880F3: STA.w $0C5E,Y\n\n #_0880F6: STA.w $0280,Y\n #_0880F9: STA.w $028A,Y\n\n #_0880FC: LDA.b $2F\n #_0880FE: LSR A\n #_0880FF: STA.w $0C72,Y\n\n; ---------------------------------------------------------\n\n #_088102: TAX\n\n #_088103: PHY\n #_088104: PHX\n\n #_088105: TYX\n #_088106: JSL Ancilla_CheckInitialTile_A\n\n #_08810A: PLX\n #_08810B: PLY\n\n #_08810C: BCS .disperse_on_spawn\n\n; ---------------------------------------------------------\n\n #_08810E: LDA.w $0022\n #_088111: CLC\n #_088112: ADC.w .init_check_offset_x_low,X\n #_088115: STA.w $0C04,Y\n\n #_088118: LDA.w $0023\n #_08811B: ADC.w .init_check_offset_x_high,X\n #_08811E: STA.w $0C18,Y\n\n #_088121: LDA.w $0020\n #_088124: CLC\n #_088125: ADC.w .init_check_offset_y_low,X\n #_088128: STA.w $0BFA,Y\n\n #_08812B: LDA.w $0021\n #_08812E: ADC.w .init_check_offset_y_high,X\n #_088131: STA.w $0C0E,Y\n\n; ---------------------------------------------------------\n\n #_088134: LDA.w $0C4A,Y\n #_088137: CMP.b #$01 ; ANCILLA 01\n #_088139: BEQ .is_somaria_bullet\n\n #_08813B: LDA.w .flame_speed_x,X\n #_08813E: STA.w $0C2C,Y\n\n #_088141: LDA.w .flame_speed_y,X\n\n #_088144: BRA .speed_set\n\n; ---------------------------------------------------------\n\n.is_somaria_bullet\n #_088146: LDA.l $7EF359\n #_08814A: DEC A\n #_08814B: DEC A\n\n #_08814C: ASL A\n #_08814D: ASL A\n\n #_08814E: STA.b $0F\n\n #_088150: TXA\n #_088151: CLC\n #_088152: ADC.b $0F\n #_088154: TAX\n\n #_088155: LDA.w SomariaBulletSpeedX,X\n #_088158: STA.w $0C2C,Y\n\n #_08815B: LDA.w SomariaBulletSpeedY,X\n\n; ---------------------------------------------------------\n\n.speed_set\n #_08815E: STA.w $0C22,Y\n\n #_088161: LDA.w $00EE\n #_088164: STA.w $0C7C,Y\n\n #_088167: LDA.w $0476\n #_08816A: STA.w $03CA,Y\n\n #_08816D: PLX\n #_08816E: PLB\n\n.exit_a\n #_08816F: RTL", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_SpawnBullets", + "code": "SomariaBlock_SpawnBullets:\n #_0881A7: LDA.b #$03\n #_0881A9: STA.w $0FB5\n\n #_0881AC: LDA.w $029E,X\n #_0881AF: CMP.b #$FF\n #_0881B1: BNE .altitiude_fine\n\n #_0881B3: LDA.b #$00\n\n.altitiude_fine\n #_0881B5: STA.b $05\n\n #_0881B7: LDA.w $0C04,X\n #_0881BA: STA.b $00\n\n #_0881BC: LDA.w $0C18,X\n #_0881BF: STA.b $01\n\n #_0881C1: LDA.w $0BFA,X\n #_0881C4: SEC\n #_0881C5: SBC.b $05\n #_0881C7: STA.b $02\n\n #_0881C9: LDA.w $0C0E,X\n #_0881CC: SBC.b #$00\n #_0881CE: STA.b $03\n\n #_0881D0: LDA.w $0C7C,X\n #_0881D3: STA.b $04\n\n; ---------------------------------------------------------\n\n.next_spawn\n #_0881D5: LDY.b #$04\n #_0881D7: LDA.b #$01 ; ANCILLA 01\n #_0881D9: JSL Ancilla_CheckForAvailableSlot\n #_0881DD: BMI .spawn_failed\n\n #_0881DF: PHX\n\n #_0881E0: LDA.b #$01 ; ANCILLA 01\n #_0881E2: STA.w $0C4A,Y\n\n #_0881E5: TAX\n\n #_0881E6: LDA.w AncillaObjectAllocation,X\n #_0881E9: STA.w $0C90,Y\n\n #_0881EC: LDA.b #$04\n #_0881EE: STA.w $0C54,Y\n\n #_0881F1: LDA.b #$00\n #_0881F3: STA.w $0C5E,Y\n #_0881F6: STA.w $0280,Y\n\n #_0881F9: LDX.w $0FB5\n #_0881FC: TXA\n #_0881FD: STA.w $0C72,Y\n\n #_088200: LDA.b $00\n #_088202: CLC\n #_088203: ADC.w .offset_x,X\n #_088206: STA.w $0C04,Y\n\n #_088209: LDA.b $01\n #_08820B: ADC.b #$FF\n #_08820D: STA.w $0C18,Y\n\n #_088210: LDA.b $02\n #_088212: CLC\n #_088213: ADC.w .offset_y,X\n #_088216: STA.w $0BFA,Y\n\n #_088219: LDA.b $03\n #_08821B: ADC.b #$FF\n #_08821D: STA.w $0C0E,Y\n\n #_088220: JSL Ancilla_TerminateOffScreen\n\n #_088224: LDA.w SomariaBulletSpeedX,X\n #_088227: STA.w $0C2C,Y\n\n #_08822A: LDA.w SomariaBulletSpeedY,X\n #_08822D: STA.w $0C22,Y\n\n #_088230: LDA.b $04\n #_088232: STA.w $0C7C,Y\n\n #_088235: LDA.w $0476\n #_088238: STA.w $03CA,Y\n\n #_08823B: PLX\n\n.spawn_failed\n #_08823C: DEC.w $0FB5\n #_08823F: BPL .next_spawn\n\n #_088241: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_Main", + "code": "Ancilla_Main:\n #_088242: PHB\n #_088243: PHK\n #_088244: PLB\n\n #_088245: JSR Ancilla_WeaponTink\n #_088248: JSR Ancilla_ExecuteAll\n\n #_08824B: PLB\n\n #_08824C: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_ProjectReflexiveSpeedOntoSprite", + "code": "Ancilla_ProjectReflexiveSpeedOntoSprite:\n #_08824D: LDA.w $0022\n #_088250: PHA\n\n #_088251: LDA.w $0023\n #_088254: PHA\n\n #_088255: LDA.w $0020\n #_088258: PHA\n\n #_088259: LDA.w $0021\n #_08825C: PHA\n\n #_08825D: LDA.b $04\n #_08825F: STA.w $0022\n\n #_088262: LDA.b $05\n #_088264: STA.w $0023\n\n #_088267: LDA.b $06\n #_088269: STA.w $0020\n\n #_08826C: LDA.b $07\n #_08826E: STA.w $0021\n\n #_088271: TYA\n #_088272: JSL ProjectReflexiveSpeedOntoSprite_UsingLinkCoordinates\n\n #_088276: PLA\n #_088277: STA.w $0021\n\n #_08827A: PLA\n #_08827B: STA.w $0020\n\n #_08827E: PLA\n #_08827F: STA.w $0023\n\n #_088282: PLA\n #_088283: STA.w $0022\n\n #_088286: RTS", + "file": "bank_08.asm" + }, + { + "name": "Bomb_CheckSpriteDamage", + "code": "Bomb_CheckSpriteDamage:\n #_088287: LDY.b #$0F\n\n.next_sprite\n #_088289: TYA\n #_08828A: EOR.b $1A\n #_08828C: AND.b #$03\n #_08828E: ORA.w $0EF0,Y\n #_088291: ORA.w $0BA0,Y\n #_088294: BEQ .continue\n\n.different_layer\n #_088296: JMP.w .skip\n\n.continue\n #_088299: LDA.w $0F20,Y\n #_08829C: CMP.w $0C7C,X\n #_08829F: BNE .different_layer\n\n #_0882A1: LDA.w $0DD0,Y\n #_0882A4: CMP.b #$09\n #_0882A6: BCC .skip\n\n #_0882A8: LDA.w $0C04,X\n #_0882AB: SEC\n #_0882AC: SBC.b #$18\n #_0882AE: STA.b $00\n\n #_0882B0: LDA.w $0C18,X\n #_0882B3: SBC.b #$00\n #_0882B5: STA.b $08\n\n #_0882B7: LDA.w $0BFA,X\n #_0882BA: SEC\n #_0882BB: SBC.b #$18\n #_0882BD: PHP\n\n #_0882BE: SEC\n #_0882BF: SBC.w $029E,X\n #_0882C2: STA.b $01\n\n #_0882C4: LDA.w $0C0E,X\n #_0882C7: SBC.b #$00\n\n #_0882C9: PLP\n #_0882CA: SBC.b #$00\n #_0882CC: STA.b $09\n\n #_0882CE: LDA.b #$30\n #_0882D0: STA.b $02\n #_0882D2: STA.b $03\n\n #_0882D4: PHX\n\n #_0882D5: TYX\n #_0882D6: JSL Sprite_SetupHitbox_long\n\n #_0882DA: PLX\n\n #_0882DB: JSL CheckIfHitBoxesOverlap_long\n #_0882DF: BCC .skip\n\n; ---------------------------------------------------------\n\n #_0882E1: LDA.w $0E20,Y\n #_0882E4: CMP.b #$92 ; SPRITE 92\n #_0882E6: BNE .not_king_helma\n\n #_0882E8: LDA.w $0DB0,Y\n #_0882EB: CMP.b #$03\n #_0882ED: BCS .skip\n\n.not_king_helma\n #_0882EF: LDA.w $0C04,X\n #_0882F2: STA.b $04\n\n #_0882F4: LDA.w $0C18,X\n #_0882F7: STA.b $05\n\n #_0882F9: LDA.w $0BFA,X\n #_0882FC: STA.b $06\n\n #_0882FE: LDA.w $0C0E,X\n #_088301: STA.b $07\n\n #_088303: PHX\n #_088304: PHY\n\n #_088305: LDA.w $0C4A,X\n #_088308: TYX\n\n #_088309: JSL Ancilla_CheckDamageToSprite\n\n #_08830D: LDY.b #$40\n #_08830F: JSR Ancilla_ProjectReflexiveSpeedOntoSprite\n\n #_088312: PLY\n #_088313: PLX\n\n #_088314: LDA.b $00\n #_088316: EOR.b #$FF\n #_088318: INC A\n #_088319: STA.w $0F30,Y\n\n #_08831C: LDA.b $01\n #_08831E: EOR.b #$FF\n #_088320: INC A\n #_088321: STA.w $0F40,Y\n\n.skip\n #_088324: DEY\n #_088325: BMI .done\n\n #_088327: JMP.w .next_sprite\n\n; ---------------------------------------------------------\n\n.done\n #_08832A: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_ExecuteAll", + "code": "Ancilla_ExecuteAll:\n #_08832B: LDX.b #$09\n\n.next\n #_08832D: STX.w $0FA0\n\n #_088330: LDA.w $0C4A,X\n #_088333: BEQ .skip\n\n #_088335: JSR Ancilla_ExecuteOne\n\n.skip\n #_088338: DEX\n #_088339: BPL .next\n\n #_08833B: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_ExecuteOne", + "code": "Ancilla_ExecuteOne:\n #_08833C: PHA\n\n #_08833D: CPX.b #$06\n #_08833F: BCS .skip_oam\n\n #_088341: LDA.w $0C90,X\n\n #_088344: LDY.w $0FB3\n #_088347: BEQ .ignore_layer\n\n #_088349: LDY.w $0C7C,X\n #_08834C: BNE .bg1\n\n #_08834E: JSL SpriteDraw_AllocateOAMFromRegionD\n #_088352: BRA .save_oam\n\n.bg1\n #_088354: JSL SpriteDraw_AllocateOAMFromRegionF\n #_088358: BRA .save_oam\n\n.ignore_layer\n #_08835A: JSL SpriteDraw_AllocateOAMFromRegionA\n\n.save_oam\n #_08835E: TYA\n #_08835F: STA.w $0C86,X\n\n; ---------------------------------------------------------\n\n.skip_oam\n #_088362: LDY.b $11\n #_088364: BNE .skip_timer\n\n #_088366: LDY.w $0C68,X\n #_088369: BEQ .skip_timer\n\n #_08836B: DEC.w $0C68,X\n\n.skip_timer\n #_08836E: PLA\n #_08836F: DEC A\n #_088370: ASL A\n #_088371: TAY\n\n #_088372: LDA.w .vectors+0,Y\n #_088375: STA.b $00\n\n #_088377: LDA.w .vectors+1,Y\n #_08837A: STA.b $01\n\n #_08837C: JMP.w ($0000)\n\n; ---------------------------------------------------------\n\n.vectors\n #_08837F: dw Ancilla01_SomariaBullet\n #_088381: dw Ancilla02_FireRodShot\n #_088383: dw Ancilla03\n #_088385: dw Ancilla04_BeamHit\n #_088387: dw Ancilla05_Boomerang\n #_088389: dw Ancilla06_WallHit\n #_08838B: dw Ancilla07_Bomb\n #_08838D: dw Ancilla08_DoorDebris\n #_08838F: dw Ancilla09_Arrow\n #_088391: dw Ancilla0A_ArrowInTheWall\n #_088393: dw Ancilla0B_IceRodShot\n #_088395: dw Ancilla0C_SwordBeam_bounce\n #_088397: dw Ancilla0D_SpinAttackFullChargeSpark\n #_088399: dw Ancilla33_BlastWallExplosion ; Unused\n #_08839B: dw Ancilla33_BlastWallExplosion ; Unused\n #_08839D: dw Ancilla33_BlastWallExplosion ; Unused\n #_08839F: dw Ancilla11_IceRodWallHit\n #_0883A1: dw Ancilla33_BlastWallExplosion ; Unused\n #_0883A3: dw Ancilla13_IceRodSparkle\n #_0883A5: dw JumpSplash_char ; bad pointer but correct\n #_0883A7: dw Ancilla15_JumpSplash\n #_0883A9: dw Ancilla16_HitStars\n #_0883AB: dw Ancilla17_ShovelDirt\n #_0883AD: dw Ancilla18_EtherSpell\n #_0883AF: dw Ancilla19_BombosSpell\n #_0883B1: dw Ancilla1A_PowderDust\n #_0883B3: dw Ancilla1B_SwordWallHit\n #_0883B5: dw Ancilla1C_QuakeSpell\n #_0883B7: dw Ancilla1D_ScreenShake\n #_0883B9: dw Ancilla1E_DashDust\n #_0883BB: dw Ancilla1F_Hookshot\n #_0883BD: dw Ancilla20_Blanket\n #_0883BF: dw Ancilla21_Snore\n #_0883C1: dw Ancilla22_ItemReceipt\n #_0883C3: dw Ancilla23_LinkPoof\n #_0883C5: dw Ancilla24_Gravestone\n #_0883C7: dw HitStar_char ; bad pointer but correct\n #_0883C9: dw Ancilla26_SwordSwingSparkle\n #_0883CB: dw Ancilla27_Duck\n #_0883CD: dw Ancilla28_WishPondItem\n #_0883CF: dw Ancilla29_MilestoneItemReceipt\n #_0883D1: dw Ancilla2A_SpinAttackSparkleA\n #_0883D3: dw Ancilla2B_SpinAttackSparkleB\n #_0883D5: dw Ancilla2C_SomariaBlock\n #_0883D7: dw Ancilla2D_SomariaBlockFizz\n #_0883D9: dw Ancilla2E_SomariaBlockFission\n #_0883DB: dw Ancilla2F_LampFlame\n #_0883DD: dw Ancilla30_ByrnaWindupSpark\n #_0883DF: dw Ancilla31_ByrnaSpark\n #_0883E1: dw Ancilla32_BlastWallFireball\n #_0883E3: dw Ancilla33_BlastWallExplosion\n #_0883E5: dw Ancilla34_SkullWoodsFire\n #_0883E7: dw Ancilla35_MasterSwordReceipt\n #_0883E9: dw Ancilla36_Flute\n #_0883EB: dw Ancilla37_WeathervaneExplosion\n #_0883ED: dw Ancilla38_CutsceneDuck\n #_0883EF: dw Ancilla39_SomariaPlatformPoof\n #_0883F1: dw Ancilla3A_BigBombExplosion\n #_0883F3: dw Ancilla3B_SwordUpSparkle\n #_0883F5: dw Ancilla3C_SpinAttackChargeSparkle\n #_0883F7: dw Ancilla3D_ItemSplash\n #_0883F9: dw Ancilla3E_RisingCrystal\n #_0883FB: dw Ancilla3F_BushPoof\n #_0883FD: dw Ancilla40_DwarfPoof\n #_0883FF: dw Ancilla41_WaterfallSplash\n #_088401: dw Ancilla42_HappinessPondRupees\n #_088403: dw Ancilla43_GanonsTowerCutscene\n\n; =========================================================\n\npool Ancilla13_IceRodSparkle\n\n.offset_x\n #_088405: db 2, 7, 6, 1\n #_088409: db 1, 7, 7, 1\n #_08840D: db 0, 7, 8, 1\n #_088411: db 4, 9, 4, -1\n\n.offset_y\n #_088415: db 2, 3, 8, 7\n #_088419: db 1, 1, 7, 7\n #_08841D: db 1, 0, 7, 8\n #_088421: db -1, 4, 9, 4\n\n.char\n #_088425: db $83, $83, $83, $83\n #_088429: db $B6, $80, $B6, $80\n #_08842D: db $B7, $B6, $B7, $B6\n #_088431: db $B7, $B6, $B7, $B6\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla13_IceRodSparkle", + "code": "Ancilla13_IceRodSparkle:\n #_088435: LDA.w $0C68,X\n #_088438: BNE .active\n\n #_08843A: STZ.w $0C4A,X\n\n.active\n #_08843D: LDA.b $11\n #_08843F: BNE .no_move\n\n #_088441: JSR Ancilla_Move_X\n #_088444: JSR Ancilla_Move_Y\n\n.no_move\n #_088447: JSR Ancilla_BoundsCheck\n\n #_08844A: LDY.b #$04\n #_08844C: LDA.b #$0B ; ANCILLA 0B\n\n.next_slot\n #_08844E: CMP.w $0C4A,Y\n #_088451: BEQ .found_him\n\n #_088453: DEY\n #_088454: BPL .next_slot\n\n.found_him\n #_088456: LDA.w $0280,Y\n #_088459: BEQ .normal_priority\n\n #_08845B: LDA.b #$30\n #_08845D: STA.b $04\n\n.normal_priority\n #_08845F: LDA.b #$10\n\n #_088461: LDY.w $0FB3\n #_088464: BEQ .ignore_layer\n\n #_088466: LDY.w $0C7C,X\n #_088469: BNE .lower_layer\n\n #_08846B: JSL SpriteDraw_AllocateOAMFromRegionD\n #_08846F: BRA .draw\n\n.lower_layer\n #_088471: JSL SpriteDraw_AllocateOAMFromRegionE\n #_088475: BRA .draw\n\n.ignore_layer\n #_088477: JSL SpriteDraw_AllocateOAMFromRegionA\n\n.draw\n #_08847B: LDY.b #$00\n\n #_08847D: LDA.b #$03\n #_08847F: STA.b $05\n\n #_088481: LDA.w $0C68,X\n #_088484: AND.b #$1C\n #_088486: STA.b $06\n\n #_088488: PHX\n\n; ---------------------------------------------------------\n\n.next_object\n #_088489: LDA.b $05\n #_08848B: ORA.b $06\n\n #_08848D: TAX\n\n #_08848E: LDA.b $00\n #_088490: CLC\n #_088491: ADC.w .offset_x,X\n #_088494: STA.b ($90),Y\n\n #_088496: INY\n #_088497: LDA.b $01\n #_088499: CLC\n #_08849A: ADC.w .offset_y,X\n #_08849D: STA.b ($90),Y\n\n #_08849F: INY\n #_0884A0: LDA.w .char,X\n #_0884A3: STA.b ($90),Y\n\n #_0884A5: INY\n #_0884A6: LDA.b $04\n #_0884A8: ORA.b #$04\n #_0884AA: STA.b ($90),Y\n\n #_0884AC: INY\n #_0884AD: PHY\n\n #_0884AE: TYA\n #_0884AF: SEC\n #_0884B0: SBC.b #$04\n #_0884B2: LSR A\n #_0884B3: LSR A\n #_0884B4: TAY\n\n #_0884B5: LDA.b #$00\n #_0884B7: STA.b ($92),Y\n\n #_0884B9: PLY\n\n #_0884BA: DEC.b $05\n #_0884BC: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_0884BE: PLX\n\n #_0884BF: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_IceRodSparkle", + "code": "AncillaAdd_IceRodSparkle:\n #_0884C8: LDA.b $11\n #_0884CA: BNE .return\n\n #_0884CC: DEC.w $0BF0,X\n #_0884CF: BPL .return\n\n #_0884D1: LDA.b #$05\n #_0884D3: STA.w $0BF0,X\n\n; ---------------------------------------------------------\n\n #_0884D6: LDY.b #$09\n\n.next_slot\n #_0884D8: LDA.w $0C4A,Y\n #_0884DB: BEQ .free_slot\n\n #_0884DD: DEY\n #_0884DE: BPL .next_slot\n\n.return\n #_0884E0: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla01_SomariaBullet", + "code": "Ancilla01_SomariaBullet:\n #_08851B: LDA.b $11\n #_08851D: BNE .draw\n\n #_08851F: LDY.w $0C54,X\n\n #_088522: LDA.b $1A\n #_088524: AND.w .frame_masks,Y\n #_088527: BNE .delay_movement\n\n #_088529: JSR Ancilla_Move_X\n #_08852C: JSR Ancilla_Move_Y\n\n.delay_movement\n #_08852F: LDA.w $0C68,X\n #_088532: BNE .timer_delay\n\n #_088534: LDA.b #$03\n #_088536: STA.w $0C68,X\n\n #_088539: LDA.w $0C54,X\n #_08853C: INC A\n #_08853D: CMP.b #$06\n #_08853F: BCC .dont_reset_state\n\n #_088541: LDA.b #$04\n\n.dont_reset_state\n #_088543: STA.w $0C54,X\n\n.timer_delay\n #_088546: JSR Ancilla_CheckSpriteCollision\n #_088549: BCS .collision\n\n #_08854B: JSR Ancilla_CheckTileCollision_staggered\n #_08854E: BCC .draw\n\n.collision\n #_088550: LDA.b #$04 ; ANCILLA 04\n #_088552: STA.w $0C4A,X\n\n #_088555: LDA.b #$07\n #_088557: STA.w $0C68,X\n\n #_08855A: LDA.b #$10\n #_08855C: STA.w $0C90,X\n\n.draw\n #_08855F: BRL SomariaBlast_Draw\n\n; =========================================================\n\npool SomariaBlast_Draw\n\n.char_a\n #_088562: db $50, $50\n #_088564: db $44, $44\n #_088566: db $52, $52\n #_088568: db $50, $50\n #_08856A: db $44, $44\n #_08856C: db $51, $51\n #_08856E: db $43, $43\n #_088570: db $42, $42\n #_088572: db $41, $41\n #_088574: db $43, $43\n #_088576: db $42, $42\n #_088578: db $40, $40\n\n.char_b\n #_08857A: db $50, $50\n #_08857C: db $44, $44\n #_08857E: db $51, $51\n #_088580: db $50, $50\n #_088582: db $44, $44\n #_088584: db $52, $52\n #_088586: db $43, $43\n #_088588: db $42, $42\n #_08858A: db $40, $40\n #_08858C: db $43, $43\n #_08858E: db $42, $42\n #_088590: db $41, $41\n\n; ---------------------------------------------------------\n\n.prop_a\n #_088592: db $C0, $C0\n #_088594: db $C0, $C0\n #_088596: db $80, $C0\n #_088598: db $40, $40\n #_08859A: db $40, $40\n #_08859C: db $00, $40\n #_08859E: db $40, $40\n #_0885A0: db $40, $40\n #_0885A2: db $40, $C0\n #_0885A4: db $00, $00\n #_0885A6: db $00, $00\n #_0885A8: db $00, $80\n\n.prop_b\n #_0885AA: db $80, $80\n #_0885AC: db $80, $80\n #_0885AE: db $80, $C0\n #_0885B0: db $00, $00\n #_0885B2: db $00, $00\n #_0885B4: db $00, $40\n #_0885B6: db $C0, $C0\n #_0885B8: db $C0, $C0\n #_0885BA: db $40, $C0\n #_0885BC: db $80, $80\n #_0885BE: db $80, $80\n #_0885C0: db $00, $80\n\n; ---------------------------------------------------------\n\n.offset_x_a\n #_0885C2: db 0, 0\n #_0885C4: db 0, 0\n #_0885C6: db 4, 4\n #_0885C8: db 0, 0\n #_0885CA: db 0, 0\n #_0885CC: db 4, 4\n #_0885CE: db 0, 0\n #_0885D0: db 0, 0\n #_0885D2: db 0, 0\n #_0885D4: db 0, 0\n #_0885D6: db 0, 0\n #_0885D8: db 0, 0\n\n.offset_x_b\n #_0885DA: db 8, 8\n #_0885DC: db 8, 8\n #_0885DE: db 4, 4\n #_0885E0: db 8, 8\n #_0885E2: db 8, 8\n #_0885E4: db 4, 4\n #_0885E6: db 0, 0\n #_0885E8: db 0, 0\n #_0885EA: db 8, 8\n #_0885EC: db 0, 0\n #_0885EE: db 0, 0\n #_0885F0: db 8, 8\n\n; ---------------------------------------------------------\n\n.offset_y_a\n #_0885F2: db -128, 0\n #_0885F4: db 0, 0\n #_0885F6: db 0, 0\n #_0885F8: db 0, 0\n #_0885FA: db 0, 0\n #_0885FC: db 0, 0\n #_0885FE: db 0, 0\n #_088600: db 0, 0\n #_088602: db 4, 4\n #_088604: db 0, 0\n #_088606: db 0, 0\n #_088608: db 4, 4\n\n.offset_y_b\n #_08860A: db 0, 0\n #_08860C: db 0, 0\n #_08860E: db 8, 8\n #_088610: db -128, 0\n #_088612: db 0, 0\n #_088614: db 8, 8\n #_088616: db -128, 8\n #_088618: db 8, 8\n #_08861A: db 4, 4\n #_08861C: db -128, 8\n #_08861E: db 8, 8\n #_088620: db 4, 4\n\npool off\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_Killa", + "code": "Ancilla_Killa:\n #_088622: PLA\n #_088623: PLA\n\n #_088624: STZ.w $0C4A,X\n\n #_088627: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_BoundsCheck", + "code": "Ancilla_BoundsCheck:\n #_08862A: LDY.w $0C7C,X\n\n #_08862D: LDA.w .data,Y\n #_088630: STA.b $04\n\n #_088632: LDY.w $0C86,X\n\n #_088635: LDA.w $0C04,X\n #_088638: SEC\n #_088639: SBC.b $E2\n #_08863B: CMP.b #$F4\n #_08863D: BCS Ancilla_Killa\n\n #_08863F: STA.b $00\n\n #_088641: LDA.w $0BFA,X\n #_088644: SEC\n #_088645: SBC.b $E8\n #_088647: CMP.b #$F0\n #_088649: BCS Ancilla_Killa\n\n #_08864B: STA.b $01\n\n #_08864D: RTS", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlast_Draw", + "code": "SomariaBlast_Draw:\n #_088650: JSR Ancilla_BoundsCheck\n\n #_088653: LDY.w $0C5E,X\n\n #_088656: LDA.b $04\n #_088658: ORA.w .palette,Y\n #_08865B: STA.b $04\n\n #_08865D: LDA.w $0280,X\n #_088660: BEQ .normal_priority\n\n #_088662: LDA.b #$30\n #_088664: TSB.b $04\n\n.normal_priority\n #_088666: LDY.b #$00\n\n #_088668: LDA.w $0C72,X\n #_08866B: ASL A\n #_08866C: ASL A\n\n #_08866D: ADC.w $0C72,X\n #_088670: ADC.w $0C72,X\n #_088673: ADC.w $0C54,X\n\n #_088676: TAX\n\n #_088677: LDA.w .offset_x_a,X\n #_08867A: CLC\n #_08867B: ADC.b $00\n #_08867D: STA.b ($90),Y\n\n #_08867F: LDA.w .offset_x_b,X\n #_088682: CLC\n #_088683: ADC.b $00\n #_088685: LDY.b #$04\n #_088687: STA.b ($90),Y\n\n #_088689: LDA.w .offset_y_a,X\n #_08868C: BMI .hide_a\n\n #_08868E: CLC\n #_08868F: ADC.b $01\n #_088691: LDY.b #$01\n #_088693: STA.b ($90),Y\n\n.hide_a\n #_088695: LDA.w .offset_y_b,X\n #_088698: BMI .hide_b\n\n #_08869A: CLC\n #_08869B: ADC.b $01\n #_08869D: LDY.b #$05\n #_08869F: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n.hide_b\n #_0886A1: LDA.w .char_a,X\n #_0886A4: CLC\n #_0886A5: ADC.b #$82\n #_0886A7: LDY.b #$02\n\n #_0886A9: STA.b ($90),Y\n\n #_0886AB: LDA.w .char_b,X\n #_0886AE: CLC\n #_0886AF: ADC.b #$82\n #_0886B1: LDY.b #$06\n\n #_0886B3: STA.b ($90),Y\n\n #_0886B5: LDA.w .prop_a,X\n #_0886B8: ORA.b $04\n\n #_0886BA: LDY.b #$03\n #_0886BC: STA.b ($90),Y\n\n #_0886BE: LDA.w .prop_b,X\n #_0886C1: ORA.b $04\n\n #_0886C3: LDY.b #$07\n #_0886C5: STA.b ($90),Y\n\n #_0886C7: LDY.b #$00\n #_0886C9: TYA\n #_0886CA: STA.b ($92),Y\n\n #_0886CC: INY\n #_0886CD: STA.b ($92),Y\n\n #_0886CF: BRL Ancilla_RestoreIndex\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla02_FireRodShot", + "code": "Ancilla02_FireRodShot:\n #_0886D2: LDA.w $0C54,X\n #_0886D5: BEQ FireRodShot_Moving\n\n #_0886D7: JMP.w FireRodShot_Halted\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "FireRodShot_Moving", + "code": "FireRodShot_Moving:\n #_0886DA: LDA.b $11\n #_0886DC: BNE .draw\n\n #_0886DE: STZ.w $0385,X\n\n #_0886E1: JSR Ancilla_Move_X\n #_0886E4: JSR Ancilla_Move_Y\n\n #_0886E7: JSR Ancilla_CheckSpriteCollision\n #_0886EA: BCS .collision\n\n; ---------------------------------------------------------\n\n #_0886EC: LDA.w $0C72,X\n #_0886EF: ORA.b #$08\n #_0886F1: STA.w $0C72,X\n\n #_0886F4: JSR Ancilla_CheckTileCollision\n #_0886F7: PHP\n\n #_0886F8: LDA.w $03E4,X\n #_0886FB: STA.w $0385,X\n\n #_0886FE: PLP\n #_0886FF: BCS .collision\n\n #_088701: LDA.w $0C72,X\n #_088704: ORA.b #$0C\n #_088706: STA.w $0C72,X\n\n #_088709: LDA.w $028A,X\n #_08870C: STA.b $74\n\n #_08870E: JSR Ancilla_CheckTileCollision\n #_088711: PHP\n\n #_088712: LDA.b $74\n #_088714: STA.w $028A,X\n\n #_088717: PLP\n #_088718: BCC .no_collision\n\n.collision\n #_08871A: INC.w $0C54,X\n\n #_08871D: LDA.b #$1F\n #_08871F: STA.w $0C68,X\n\n #_088722: LDA.b #$08\n #_088724: STA.w $0C90,X\n\n #_088727: LDA.b #$2A ; SFX2.2A\n #_088729: JSR Ancilla_SFX2_Pan\n\n; ---------------------------------------------------------\n\n.no_collision\n #_08872C: INC.w $0C5E,X\n\n #_08872F: LDA.w $0C72,X\n #_088732: AND.b #$F3\n #_088734: STA.w $0C72,X\n\n #_088737: LDA.w $0385,X\n #_08873A: STA.w $0333\n\n #_08873D: AND.b #$F0\n #_08873F: CMP.b #$C0\n #_088741: BEQ .torch\n\n #_088743: LDA.w $03E4,X\n #_088746: STA.w $0333\n\n #_088749: AND.b #$F0\n #_08874B: CMP.b #$C0\n #_08874D: BNE .draw\n\n.torch\n #_08874F: PHX\n #_088750: JSL Underworld_LightTorch\n #_088754: PLX\n\n; ---------------------------------------------------------\n\n.draw\n #_088755: JSR AncillaDraw_FireRodShot\n\n #_088758: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_FireRodShot", + "code": "AncillaDraw_FireRodShot:\n #_08877C: JSR Ancilla_BoundsCheck\n\n #_08877F: LDA.w $0280,X\n #_088782: BEQ .default_priority\n\n #_088784: LDA.b #$30\n #_088786: TSB.b $04\n\n.default_priority\n #_088788: LDA.w $0C5E,X\n #_08878B: AND.b #$0C\n #_08878D: STA.b $02\n\n #_08878F: PHX\n\n; ---------------------------------------------------------\n\n #_088790: LDX.b #$02\n #_088792: LDY.b #$00\n\n.next_object\n #_088794: STX.b $03\n\n #_088796: TXA\n #_088797: ORA.b $02\n #_088799: TAX\n\n #_08879A: LDA.b $00\n #_08879C: CLC\n #_08879D: ADC.w .offset_x,X\n #_0887A0: STA.b ($90),Y\n\n #_0887A2: LDA.b $01\n #_0887A4: CLC\n #_0887A5: ADC.w .offset_y,X\n #_0887A8: INY\n #_0887A9: STA.b ($90),Y\n\n #_0887AB: LDX.b $03\n\n #_0887AD: LDA.w .char,X\n #_0887B0: INY\n #_0887B1: STA.b ($90),Y\n\n #_0887B3: LDA.b $04\n #_0887B5: ORA.b #$02\n #_0887B7: INY\n #_0887B8: STA.b ($90),Y\n\n #_0887BA: PHY\n\n #_0887BB: TYA\n #_0887BC: LSR A\n #_0887BD: LSR A\n #_0887BE: TAY\n\n #_0887BF: LDA.b #$00\n #_0887C1: STA.b ($92),Y\n\n #_0887C3: PLY\n #_0887C4: INY\n\n #_0887C5: DEX\n #_0887C6: BPL .next_object\n\n #_0887C8: PLX\n\n #_0887C9: RTS", + "file": "bank_08.asm" + }, + { + "name": "UNREACHABLE_0887CA", + "code": "UNREACHABLE_0887CA:\n #_0887CA: RTS", + "file": "bank_08.asm" + }, + { + "name": "FireRodShot_Dissipate", + "code": "FireRodShot_Dissipate:\n #_0887CB: LDA.w $0C4A,X\n\n #_0887CE: STZ.w $0C4A,X\n\n #_0887D1: CMP.b #$2F ; ANCILLA 2F\n #_0887D3: BEQ .no_burn\n\n #_0887D5: LDA.b $8A\n #_0887D7: CMP.b #$40 ; OW 40\n #_0887D9: BNE .no_burn\n\n #_0887DB: LDA.w $03E4,X\n #_0887DE: CMP.b #$43 ; TILETYPE 43\n #_0887E0: BNE .no_burn\n\n #_0887E2: PHX\n\n #_0887E3: JSL FireRodShot_BecomeSkullWoodsFire\n\n #_0887E7: PLX\n\n.no_burn\n #_0887E8: RTS", + "file": "bank_08.asm" + }, + { + "name": "FireRodShot_Halted", + "code": "FireRodShot_Halted:\n #_0887EC: JSR Ancilla_CheckBasicSpriteCollision\n #_0887EF: JSR Ancilla_BoundsCheck\n\n #_0887F2: LDY.b #$00\n #_0887F4: LDA.w $0C68,X\n #_0887F7: BEQ FireRodShot_Dissipate\n\n #_0887F9: LSR A\n #_0887FA: LSR A\n #_0887FB: LSR A\n #_0887FC: BEQ .dying\n\n #_0887FE: TAX\n\n #_0887FF: LDA.b $00\n #_088801: STA.b ($90),Y\n\n #_088803: LDA.b $01\n #_088805: INY\n #_088806: STA.b ($90),Y\n\n #_088808: LDA.w .char-1,X\n #_08880B: INY\n #_08880C: STA.b ($90),Y\n\n #_08880E: LDA.b #$02\n #_088810: ORA.b $04\n #_088812: INY\n #_088813: STA.b ($90),Y\n\n #_088815: LDA.b #$02\n #_088817: STA.b ($92)\n\n #_088819: BRL Ancilla_RestoreIndex\n\n; ---------------------------------------------------------\n\n.dying\n #_08881C: TYA\n #_08881D: STA.b ($92),Y\n\n #_08881F: INY\n #_088820: STA.b ($92),Y\n\n #_088822: DEY\n\n #_088823: LDA.b $00\n #_088825: STA.b ($90),Y\n\n #_088827: CLC\n #_088828: ADC.b #$08\n #_08882A: LDY.b #$04\n #_08882C: STA.b ($90),Y\n\n #_08882E: LDA.b $01\n #_088830: CLC\n #_088831: ADC.b #$FD\n #_088833: LDY.b #$01\n #_088835: STA.b ($90),Y\n\n #_088837: LDY.b #$05\n #_088839: STA.b ($90),Y\n\n #_08883B: LDA.b #$A4\n #_08883D: LDY.b #$02\n #_08883F: STA.b ($90),Y\n\n #_088841: INC A\n #_088842: LDY.b #$06\n #_088844: STA.b ($90),Y\n\n #_088846: LDA.b #$02\n #_088848: ORA.b $04\n #_08884A: LDY.b #$03\n #_08884C: STA.b ($90),Y\n\n #_08884E: LDY.b #$07\n #_088850: STA.b ($90),Y\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla03", + "code": "Ancilla03:\n #_088852: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_TileCollisionBehaviorClass1", + "code": "Ancilla_TileCollisionBehaviorClass1:\n\n.interaction\n #_088853: db $00 ; 00\n #_088854: db $01 ; 01\n #_088855: db $00 ; 02\n #_088856: db $03 ; 03\n #_088857: db $00 ; 04\n #_088858: db $00 ; 05\n #_088859: db $00 ; 06\n #_08885A: db $00 ; 07\n #_08885B: db $00 ; 08\n #_08885C: db $00 ; 09\n #_08885D: db $03 ; 0A\n #_08885E: db $00 ; 0B\n #_08885F: db $00 ; 0C\n #_088860: db $00 ; 0D\n #_088861: db $00 ; 0E\n #_088862: db $00 ; 0F\n #_088863: db $01 ; 10\n #_088864: db $01 ; 11\n #_088865: db $01 ; 12\n #_088866: db $01 ; 13\n #_088867: db $00 ; 14\n #_088868: db $00 ; 15\n #_088869: db $00 ; 16\n #_08886A: db $00 ; 17\n #_08886B: db $02 ; 18\n #_08886C: db $02 ; 19\n #_08886D: db $02 ; 1A\n #_08886E: db $02 ; 1B\n #_08886F: db $00 ; 1C\n #_088870: db $03 ; 1D\n #_088871: db $03 ; 1E\n #_088872: db $03 ; 1F\n #_088873: db $00 ; 20\n #_088874: db $00 ; 21\n #_088875: db $00 ; 22\n #_088876: db $00 ; 23\n #_088877: db $00 ; 24\n #_088878: db $00 ; 25\n #_088879: db $01 ; 26\n #_08887A: db $01 ; 27\n #_08887B: db $04 ; 28\n #_08887C: db $04 ; 29\n #_08887D: db $04 ; 2A\n #_08887E: db $04 ; 2B\n #_08887F: db $04 ; 2C\n #_088880: db $04 ; 2D\n #_088881: db $04 ; 2E\n #_088882: db $04 ; 2F\n #_088883: db $01 ; 30\n #_088884: db $01 ; 31\n #_088885: db $01 ; 32\n #_088886: db $01 ; 33\n #_088887: db $01 ; 34\n #_088888: db $01 ; 35\n #_088889: db $01 ; 36\n #_08888A: db $01 ; 37\n #_08888B: db $00 ; 38\n #_08888C: db $00 ; 39\n #_08888D: db $00 ; 3A\n #_08888E: db $00 ; 3B\n #_08888F: db $00 ; 3C\n #_088890: db $03 ; 3D\n #_088891: db $03 ; 3E\n #_088892: db $03 ; 3F\n #_088893: db $00 ; 40\n #_088894: db $00 ; 41\n #_088895: db $00 ; 42\n #_088896: db $01 ; 43\n #_088897: db $00 ; 44\n #_088898: db $00 ; 45\n #_088899: db $00 ; 46\n #_08889A: db $00 ; 47\n #_08889B: db $00 ; 48\n #_08889C: db $00 ; 49\n #_08889D: db $00 ; 4A\n #_08889E: db $00 ; 4B\n #_08889F: db $04 ; 4C\n #_0888A0: db $04 ; 4D\n #_0888A1: db $04 ; 4E\n #_0888A2: db $04 ; 4F\n #_0888A3: db $00 ; 50\n #_0888A4: db $00 ; 51\n #_0888A5: db $00 ; 52\n #_0888A6: db $00 ; 53\n #_0888A7: db $00 ; 54\n #_0888A8: db $00 ; 55\n #_0888A9: db $00 ; 56\n #_0888AA: db $00 ; 57\n #_0888AB: db $01 ; 58\n #_0888AC: db $01 ; 59\n #_0888AD: db $01 ; 5A\n #_0888AE: db $01 ; 5B\n #_0888AF: db $01 ; 5C\n #_0888B0: db $01 ; 5D\n #_0888B1: db $00 ; 5E\n #_0888B2: db $00 ; 5F\n #_0888B3: db $00 ; 60\n #_0888B4: db $00 ; 61\n #_0888B5: db $00 ; 62\n #_0888B6: db $01 ; 63\n #_0888B7: db $00 ; 64\n #_0888B8: db $00 ; 65\n #_0888B9: db $00 ; 66\n #_0888BA: db $00 ; 67\n #_0888BB: db $00 ; 68\n #_0888BC: db $00 ; 69\n #_0888BD: db $00 ; 6A\n #_0888BE: db $00 ; 6B\n #_0888BF: db $01 ; 6C\n #_0888C0: db $01 ; 6D\n #_0888C1: db $01 ; 6E\n #_0888C2: db $01 ; 6F\n #_0888C3: db $01 ; 70\n #_0888C4: db $01 ; 71\n #_0888C5: db $01 ; 72\n #_0888C6: db $01 ; 73\n #_0888C7: db $01 ; 74\n #_0888C8: db $01 ; 75\n #_0888C9: db $01 ; 76\n #_0888CA: db $01 ; 77\n #_0888CB: db $01 ; 78\n #_0888CC: db $01 ; 79\n #_0888CD: db $01 ; 7A\n #_0888CE: db $01 ; 7B\n #_0888CF: db $01 ; 7C\n #_0888D0: db $01 ; 7D\n #_0888D1: db $01 ; 7E\n #_0888D2: db $01 ; 7F\n #_0888D3: db $00 ; 80\n #_0888D4: db $00 ; 81\n #_0888D5: db $00 ; 82\n #_0888D6: db $00 ; 83\n #_0888D7: db $00 ; 84\n #_0888D8: db $00 ; 85\n #_0888D9: db $00 ; 86\n #_0888DA: db $00 ; 87\n #_0888DB: db $01 ; 88\n #_0888DC: db $01 ; 89\n #_0888DD: db $01 ; 8A\n #_0888DE: db $01 ; 8B\n #_0888DF: db $01 ; 8C\n #_0888E0: db $01 ; 8D\n #_0888E1: db $00 ; 8E\n #_0888E2: db $01 ; 8F\n #_0888E3: db $00 ; 90\n #_0888E4: db $00 ; 91\n #_0888E5: db $00 ; 92\n #_0888E6: db $00 ; 93\n #_0888E7: db $00 ; 94\n #_0888E8: db $00 ; 95\n #_0888E9: db $00 ; 96\n #_0888EA: db $00 ; 97\n #_0888EB: db $00 ; 98\n #_0888EC: db $00 ; 99\n #_0888ED: db $00 ; 9A\n #_0888EE: db $00 ; 9B\n #_0888EF: db $00 ; 9C\n #_0888F0: db $00 ; 9D\n #_0888F1: db $00 ; 9E\n #_0888F2: db $00 ; 9F\n #_0888F3: db $00 ; A0\n #_0888F4: db $00 ; A1\n #_0888F5: db $00 ; A2\n #_0888F6: db $00 ; A3\n #_0888F7: db $00 ; A4\n #_0888F8: db $00 ; A5\n #_0888F9: db $00 ; A6\n #_0888FA: db $00 ; A7\n #_0888FB: db $00 ; A8\n #_0888FC: db $00 ; A9\n #_0888FD: db $00 ; AA\n #_0888FE: db $00 ; AB\n #_0888FF: db $00 ; AC\n #_088900: db $00 ; AD\n #_088901: db $00 ; AE\n #_088902: db $00 ; AF\n #_088903: db $00 ; B0\n #_088904: db $00 ; B1\n #_088905: db $00 ; B2\n #_088906: db $00 ; B3\n #_088907: db $00 ; B4\n #_088908: db $00 ; B5\n #_088909: db $00 ; B6\n #_08890A: db $00 ; B7\n #_08890B: db $00 ; B8\n #_08890C: db $00 ; B9\n #_08890D: db $00 ; BA\n #_08890E: db $00 ; BB\n #_08890F: db $00 ; BC\n #_088910: db $00 ; BD\n #_088911: db $00 ; BE\n #_088912: db $00 ; BF\n #_088913: db $01 ; C0\n #_088914: db $01 ; C1\n #_088915: db $01 ; C2\n #_088916: db $01 ; C3\n #_088917: db $01 ; C4\n #_088918: db $01 ; C5\n #_088919: db $01 ; C6\n #_08891A: db $01 ; C7\n #_08891B: db $01 ; C8\n #_08891C: db $01 ; C9\n #_08891D: db $01 ; CA\n #_08891E: db $01 ; CB\n #_08891F: db $01 ; CC\n #_088920: db $01 ; CD\n #_088921: db $01 ; CE\n #_088922: db $01 ; CF\n #_088923: db $00 ; D0\n #_088924: db $00 ; D1\n #_088925: db $00 ; D2\n #_088926: db $00 ; D3\n #_088927: db $00 ; D4\n #_088928: db $00 ; D5\n #_088929: db $00 ; D6\n #_08892A: db $00 ; D7\n #_08892B: db $00 ; D8\n #_08892C: db $00 ; D9\n #_08892D: db $00 ; DA\n #_08892E: db $00 ; DB\n #_08892F: db $00 ; DC\n #_088930: db $00 ; DD\n #_088931: db $00 ; DE\n #_088932: db $00 ; DF\n #_088933: db $00 ; E0\n #_088934: db $00 ; E1\n #_088935: db $00 ; E2\n #_088936: db $00 ; E3\n #_088937: db $00 ; E4\n #_088938: db $00 ; E5\n #_088939: db $00 ; E6\n #_08893A: db $00 ; E7\n #_08893B: db $00 ; E8\n #_08893C: db $00 ; E9\n #_08893D: db $00 ; EA\n #_08893E: db $00 ; EB\n #_08893F: db $00 ; EC\n #_088940: db $00 ; ED\n #_088941: db $00 ; EE\n #_088942: db $00 ; EF\n #_088943: db $01 ; F0\n #_088944: db $01 ; F1\n #_088945: db $01 ; F2\n #_088946: db $01 ; F3\n #_088947: db $01 ; F4\n #_088948: db $01 ; F5\n #_088949: db $01 ; F6\n #_08894A: db $01 ; F7\n #_08894B: db $01 ; F8\n #_08894C: db $01 ; F9\n #_08894D: db $01 ; FA\n #_08894E: db $01 ; FB\n #_08894F: db $01 ; FC\n #_088950: db $01 ; FD\n #_088951: db $01 ; FE\n #_088952: db $01 ; FF\n\n; ---------------------------------------------------------\n\n.offset_y\n #_088953: db 0, 16, 5, 5\n #_088957: db 0, 16, 4, 4\n #_08895B: db 4, 12, 5, 5\n #_08895F: db 4, 12, 12, 12\n #_088963: db 0, 0, 0, 0\n\n.offset_x\n #_088967: db 8, 8, 0, 16\n #_08896B: db 4, 4, 0, 16\n #_08896F: db 4, 4, 4, 12\n #_088973: db 12, 12, 4, 12\n #_088977: db 0, 0, 0, 0\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckTileCollision_staggered", + "code": "Ancilla_CheckTileCollision_staggered:\n #_08897B: TXA\n #_08897C: EOR.b $1A\n #_08897E: LSR A\n #_08897F: BCC .skip_frame\n\n; ---------------------------------------------------------\n\n#Ancilla_CheckTileCollision:\n #_088981: LDA.b $1B\n #_088983: BNE .indoors\n\n #_088985: LDA.w $0280,X\n #_088988: BEQ .indoors\n\n #_08898A: STZ.w $03E4,X\n\n; ---------------------------------------------------------\n\n.skip_frame\n #_08898D: CLC\n\n #_08898E: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckTileCollision_targeted", + "code": "Ancilla_CheckTileCollision_targeted:\n #_088A26: REP #$20\n\n #_088A28: LDA.b $00\n #_088A2A: SEC\n #_088A2B: SBC.b $E8\n #_088A2D: CMP.w #$00E0\n\n #_088A30: SEP #$20\n #_088A32: BCS .off_screen_y\n\n; ---------------------------------------------------------\n\n #_088A34: REP #$20\n\n #_088A36: LDA.b $02\n #_088A38: SEC\n #_088A39: SBC.b $E2\n #_088A3B: CMP.w #$0100\n\n #_088A3E: SEP #$20\n #_088A40: BCS .no_collision\n\n #_088A42: LDA.b $1B\n #_088A44: BNE .indoors\n\n; ---------------------------------------------------------\n\n #_088A46: REP #$20\n\n #_088A48: LSR.b $02\n #_088A4A: LSR.b $02\n #_088A4C: LSR.b $02\n\n #_088A4E: PHX\n #_088A4F: JSL Overworld_GetTileTypeAtLocation\n #_088A53: PLX\n\n #_088A54: BRA .continue\n\n; ---------------------------------------------------------\n\n.indoors\n #_088A56: LDA.w $0C7C,X\n #_088A59: JSL GetTileType_long\n\n; ---------------------------------------------------------\n\n.continue\n #_088A5D: STA.w $03E4,X\n\n #_088A60: TAY\n\n #_088A61: LDA.w Ancilla_TileCollisionBehaviorClass1_interaction,Y\n #_088A64: STA.b $0F\n\n #_088A66: LDA.w $0C4A,X\n #_088A69: CMP.b #$02 ; ANCILLA 02\n #_088A6B: BNE .no_firetorch\n\n #_088A6D: TYA\n #_088A6E: AND.b #$F0\n #_088A70: CMP.b #$C0\n #_088A72: BNE .no_firetorch\n\n #_088A74: STZ.b $0F\n\n; ---------------------------------------------------------\n\n.no_firetorch\n #_088A76: LDA.w $0280,X\n #_088A79: BNE .high_pri\n\n #_088A7B: LDA.b $0F\n #_088A7D: BEQ .no_collision\n\n #_088A7F: CMP.b #$01\n #_088A81: BEQ .collision\n\n #_088A83: CMP.b #$02\n #_088A85: BNE .not_slope\n\n #_088A87: JSL Sprite_CheckSlopedTileCollision_long\n\n #_088A8B: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SpriteAlert", + "code": "Ancilla_SpriteAlert:\n #_088AB9: LDA.b #$03\n #_088ABB: STA.w $0FDC\n\n #_088ABE: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_TileCollisionBehaviorClass2", + "code": "Ancilla_TileCollisionBehaviorClass2:\n\n.interaction\n #_088ABF: db $00 ; 00\n #_088AC0: db $01 ; 01\n #_088AC1: db $00 ; 02\n #_088AC2: db $00 ; 03\n #_088AC3: db $01 ; 04\n #_088AC4: db $00 ; 05\n #_088AC5: db $00 ; 06\n #_088AC6: db $00 ; 07\n #_088AC7: db $00 ; 08\n #_088AC8: db $00 ; 09\n #_088AC9: db $03 ; 0A\n #_088ACA: db $00 ; 0B\n #_088ACB: db $00 ; 0C\n #_088ACC: db $00 ; 0D\n #_088ACD: db $00 ; 0E\n #_088ACE: db $00 ; 0F\n #_088ACF: db $01 ; 10\n #_088AD0: db $01 ; 11\n #_088AD1: db $01 ; 12\n #_088AD2: db $01 ; 13\n #_088AD3: db $00 ; 14\n #_088AD4: db $00 ; 15\n #_088AD5: db $00 ; 16\n #_088AD6: db $00 ; 17\n #_088AD7: db $02 ; 18\n #_088AD8: db $02 ; 19\n #_088AD9: db $02 ; 1A\n #_088ADA: db $02 ; 1B\n #_088ADB: db $00 ; 1C\n #_088ADC: db $03 ; 1D\n #_088ADD: db $03 ; 1E\n #_088ADE: db $03 ; 1F\n #_088ADF: db $00 ; 20\n #_088AE0: db $00 ; 21\n #_088AE1: db $00 ; 22\n #_088AE2: db $00 ; 23\n #_088AE3: db $00 ; 24\n #_088AE4: db $00 ; 25\n #_088AE5: db $01 ; 26\n #_088AE6: db $01 ; 27\n #_088AE7: db $04 ; 28\n #_088AE8: db $04 ; 29\n #_088AE9: db $04 ; 2A\n #_088AEA: db $04 ; 2B\n #_088AEB: db $04 ; 2C\n #_088AEC: db $04 ; 2D\n #_088AED: db $04 ; 2E\n #_088AEE: db $04 ; 2F\n #_088AEF: db $01 ; 30\n #_088AF0: db $01 ; 31\n #_088AF1: db $01 ; 32\n #_088AF2: db $01 ; 33\n #_088AF3: db $01 ; 34\n #_088AF4: db $01 ; 35\n #_088AF5: db $01 ; 36\n #_088AF6: db $01 ; 37\n #_088AF7: db $00 ; 38\n #_088AF8: db $00 ; 39\n #_088AF9: db $00 ; 3A\n #_088AFA: db $00 ; 3B\n #_088AFB: db $00 ; 3C\n #_088AFC: db $03 ; 3D\n #_088AFD: db $03 ; 3E\n #_088AFE: db $03 ; 3F\n #_088AFF: db $00 ; 40\n #_088B00: db $00 ; 41\n #_088B01: db $00 ; 42\n #_088B02: db $01 ; 43\n #_088B03: db $00 ; 44\n #_088B04: db $00 ; 45\n #_088B05: db $00 ; 46\n #_088B06: db $00 ; 47\n #_088B07: db $00 ; 48\n #_088B08: db $00 ; 49\n #_088B09: db $00 ; 4A\n #_088B0A: db $00 ; 4B\n #_088B0B: db $04 ; 4C\n #_088B0C: db $04 ; 4D\n #_088B0D: db $04 ; 4E\n #_088B0E: db $04 ; 4F\n #_088B0F: db $00 ; 50\n #_088B10: db $00 ; 51\n #_088B11: db $00 ; 52\n #_088B12: db $00 ; 53\n #_088B13: db $00 ; 54\n #_088B14: db $00 ; 55\n #_088B15: db $00 ; 56\n #_088B16: db $00 ; 57\n #_088B17: db $00 ; 58\n #_088B18: db $00 ; 59\n #_088B19: db $00 ; 5A\n #_088B1A: db $00 ; 5B\n #_088B1B: db $00 ; 5C\n #_088B1C: db $00 ; 5D\n #_088B1D: db $00 ; 5E\n #_088B1E: db $00 ; 5F\n #_088B1F: db $00 ; 60\n #_088B20: db $00 ; 61\n #_088B21: db $00 ; 62\n #_088B22: db $00 ; 63\n #_088B23: db $00 ; 64\n #_088B24: db $00 ; 65\n #_088B25: db $00 ; 66\n #_088B26: db $00 ; 67\n #_088B27: db $00 ; 68\n #_088B28: db $00 ; 69\n #_088B29: db $00 ; 6A\n #_088B2A: db $00 ; 6B\n #_088B2B: db $01 ; 6C\n #_088B2C: db $01 ; 6D\n #_088B2D: db $01 ; 6E\n #_088B2E: db $01 ; 6F\n #_088B2F: db $00 ; 70\n #_088B30: db $00 ; 71\n #_088B31: db $00 ; 72\n #_088B32: db $00 ; 73\n #_088B33: db $00 ; 74\n #_088B34: db $00 ; 75\n #_088B35: db $00 ; 76\n #_088B36: db $00 ; 77\n #_088B37: db $00 ; 78\n #_088B38: db $00 ; 79\n #_088B39: db $00 ; 7A\n #_088B3A: db $00 ; 7B\n #_088B3B: db $00 ; 7C\n #_088B3C: db $00 ; 7D\n #_088B3D: db $00 ; 7E\n #_088B3E: db $00 ; 7F\n #_088B3F: db $01 ; 80\n #_088B40: db $01 ; 81\n #_088B41: db $01 ; 82\n #_088B42: db $01 ; 83\n #_088B43: db $01 ; 84\n #_088B44: db $01 ; 85\n #_088B45: db $01 ; 86\n #_088B46: db $01 ; 87\n #_088B47: db $01 ; 88\n #_088B48: db $01 ; 89\n #_088B49: db $01 ; 8A\n #_088B4A: db $01 ; 8B\n #_088B4B: db $01 ; 8C\n #_088B4C: db $01 ; 8D\n #_088B4D: db $00 ; 8E\n #_088B4E: db $01 ; 8F\n #_088B4F: db $01 ; 90\n #_088B50: db $01 ; 91\n #_088B51: db $01 ; 92\n #_088B52: db $01 ; 93\n #_088B53: db $01 ; 94\n #_088B54: db $01 ; 95\n #_088B55: db $01 ; 96\n #_088B56: db $01 ; 97\n #_088B57: db $01 ; 98\n #_088B58: db $01 ; 99\n #_088B59: db $01 ; 9A\n #_088B5A: db $01 ; 9B\n #_088B5B: db $01 ; 9C\n #_088B5C: db $01 ; 9D\n #_088B5D: db $01 ; 9E\n #_088B5E: db $01 ; 9F\n #_088B5F: db $01 ; A0\n #_088B60: db $01 ; A1\n #_088B61: db $01 ; A2\n #_088B62: db $01 ; A3\n #_088B63: db $01 ; A4\n #_088B64: db $01 ; A5\n #_088B65: db $01 ; A6\n #_088B66: db $01 ; A7\n #_088B67: db $01 ; A8\n #_088B68: db $01 ; A9\n #_088B69: db $01 ; AA\n #_088B6A: db $01 ; AB\n #_088B6B: db $01 ; AC\n #_088B6C: db $01 ; AD\n #_088B6D: db $01 ; AE\n #_088B6E: db $01 ; AF\n #_088B6F: db $00 ; B0\n #_088B70: db $00 ; B1\n #_088B71: db $00 ; B2\n #_088B72: db $00 ; B3\n #_088B73: db $00 ; B4\n #_088B74: db $00 ; B5\n #_088B75: db $00 ; B6\n #_088B76: db $00 ; B7\n #_088B77: db $00 ; B8\n #_088B78: db $00 ; B9\n #_088B79: db $00 ; BA\n #_088B7A: db $00 ; BB\n #_088B7B: db $00 ; BC\n #_088B7C: db $00 ; BD\n #_088B7D: db $00 ; BE\n #_088B7E: db $00 ; BF\n #_088B7F: db $00 ; C0\n #_088B80: db $00 ; C1\n #_088B81: db $00 ; C2\n #_088B82: db $00 ; C3\n #_088B83: db $00 ; C4\n #_088B84: db $00 ; C5\n #_088B85: db $00 ; C6\n #_088B86: db $00 ; C7\n #_088B87: db $00 ; C8\n #_088B88: db $00 ; C9\n #_088B89: db $00 ; CA\n #_088B8A: db $00 ; CB\n #_088B8B: db $00 ; CC\n #_088B8C: db $00 ; CD\n #_088B8D: db $00 ; CE\n #_088B8E: db $00 ; CF\n #_088B8F: db $00 ; D0\n #_088B90: db $00 ; D1\n #_088B91: db $00 ; D2\n #_088B92: db $00 ; D3\n #_088B93: db $00 ; D4\n #_088B94: db $00 ; D5\n #_088B95: db $00 ; D6\n #_088B96: db $00 ; D7\n #_088B97: db $00 ; D8\n #_088B98: db $00 ; D9\n #_088B99: db $00 ; DA\n #_088B9A: db $00 ; DB\n #_088B9B: db $00 ; DC\n #_088B9C: db $00 ; DD\n #_088B9D: db $00 ; DE\n #_088B9E: db $00 ; DF\n #_088B9F: db $00 ; E0\n #_088BA0: db $00 ; E1\n #_088BA1: db $00 ; E2\n #_088BA2: db $00 ; E3\n #_088BA3: db $00 ; E4\n #_088BA4: db $00 ; E5\n #_088BA5: db $00 ; E6\n #_088BA6: db $00 ; E7\n #_088BA7: db $00 ; E8\n #_088BA8: db $00 ; E9\n #_088BA9: db $00 ; EA\n #_088BAA: db $00 ; EB\n #_088BAB: db $00 ; EC\n #_088BAC: db $00 ; ED\n #_088BAD: db $00 ; EE\n #_088BAE: db $00 ; EF\n #_088BAF: db $01 ; F0\n #_088BB0: db $01 ; F1\n #_088BB1: db $01 ; F2\n #_088BB2: db $01 ; F3\n #_088BB3: db $01 ; F4\n #_088BB4: db $01 ; F5\n #_088BB5: db $01 ; F6\n #_088BB6: db $01 ; F7\n #_088BB7: db $01 ; F8\n #_088BB8: db $01 ; F9\n #_088BB9: db $01 ; FA\n #_088BBA: db $01 ; FB\n #_088BBB: db $01 ; FC\n #_088BBC: db $01 ; FD\n #_088BBD: db $01 ; FE\n #_088BBE: db $01 ; FF\n\n; ---------------------------------------------------------\n\n.offset_y_low\n #_088BBF: db -8, 8, 0, 0\n\n.offset_y_high\n #_088BC3: db -1, 0, 0, 0\n\n.offset_x_low\n #_088BC7: db 0, 0, -8, 8\n\n.offset_x_high\n #_088BCB: db 0, 0, -1, 0\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckTileCollision_Class2", + "code": "Ancilla_CheckTileCollision_Class2:\n #_088BCF: LDA.w $046C\n #_088BD2: BEQ .check_basic\n\n #_088BD4: CMP.b #$03\n\n #_088BD6: REP #$20\n #_088BD8: BCC .get_bg_diff\n\n #_088BDA: STZ.b $00\n #_088BDC: STZ.b $02\n\n #_088BDE: BRA .both_bg\n\n; ---------------------------------------------------------\n\n.get_bg_diff\n #_088BE0: LDA.b $E0\n #_088BE2: SEC\n #_088BE3: SBC.b $E2\n #_088BE5: STA.b $00\n\n #_088BE7: LDA.b $E6\n #_088BE9: SEC\n #_088BEA: SBC.b $E8\n #_088BEC: STA.b $02\n\n; ---------------------------------------------------------\n\n.both_bg\n #_088BEE: SEP #$20\n\n #_088BF0: LDA.w $0C04,X\n #_088BF3: PHA\n\n #_088BF4: CLC\n #_088BF5: ADC.b $00\n #_088BF7: STA.w $0C04,X\n\n #_088BFA: LDA.w $0C18,X\n #_088BFD: PHA\n\n #_088BFE: ADC.b $01\n #_088C00: STA.w $0C18,X\n\n #_088C03: LDA.w $0BFA,X\n #_088C06: PHA\n\n #_088C07: CLC\n #_088C08: ADC.b $02\n #_088C0A: STA.w $0BFA,X\n\n #_088C0D: LDA.w $0C0E,X\n #_088C10: PHA\n\n #_088C11: ADC.b $03\n #_088C13: STA.w $0C0E,X\n\n #_088C16: LDA.b #$01\n #_088C18: STA.w $0C7C,X\n\n #_088C1B: JSR .check_basic\n\n; ---------------------------------------------------------\n\n #_088C1E: STZ.w $0C7C,X\n\n #_088C21: PLA\n #_088C22: STA.w $0C0E,X\n\n #_088C25: PLA\n #_088C26: STA.w $0BFA,X\n\n #_088C29: PLA\n #_088C2A: STA.w $0C18,X\n\n #_088C2D: PLA\n #_088C2E: STA.w $0C04,X\n\n; ---------------------------------------------------------\n\n #_088C31: LDY.b #$00\n #_088C33: BCC .skip_layer1\n\n #_088C35: INY\n\n.skip_layer1\n #_088C36: PHY\n #_088C37: PHP\n\n #_088C38: JSR .check_basic\n\n #_088C3B: PLA\n #_088C3C: AND.b #$01\n #_088C3E: ROL A\n #_088C3F: CMP.b #$01\n\n #_088C41: PLY\n\n #_088C42: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla04_BeamHit", + "code": "Ancilla04_BeamHit:\n #_088D19: JSR Ancilla_BoundsCheck\n\n #_088D1C: LDA.w $0C68,X\n #_088D1F: BNE .active\n\n #_088D21: BRL Ancilla_DeleteSelf\n\n; ---------------------------------------------------------\n\n.active\n #_088D24: LSR A\n #_088D25: STA.b $02\n\n #_088D27: LDX.b #$03\n #_088D29: LDY.b #$00\n\n.next_object\n #_088D2B: STX.b $03\n\n #_088D2D: LDA.b $02\n #_088D2F: ASL A\n #_088D30: ASL A\n #_088D31: ADC.b $03\n #_088D33: TAX\n\n #_088D34: LDA.b $00\n #_088D36: CLC\n #_088D37: ADC.w .offset_x,X\n #_088D3A: STA.b ($90),Y\n\n #_088D3C: LDA.b $01\n #_088D3E: CLC\n #_088D3F: ADC.w .offset_y,X\n #_088D42: INY\n #_088D43: STA.b ($90),Y\n\n #_088D45: LDA.w .char,X\n #_088D48: CLC\n #_088D49: ADC.b #$82\n #_088D4B: INY\n #_088D4C: STA.b ($90),Y\n\n #_088D4E: LDA.w .props,X\n #_088D51: ORA.b #$02\n #_088D53: ORA.b $04\n #_088D55: INY\n #_088D56: STA.b ($90),Y\n\n #_088D58: INY\n\n #_088D59: LDX.b $03\n #_088D5B: DEX\n #_088D5C: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_088D5E: LDX.w $0FA0\n #_088D61: LDY.b #$00\n #_088D63: LDA.b #$03\n #_088D65: BRL BeamHit_OAMAdjustments\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckSpriteCollision", + "code": "Ancilla_CheckSpriteCollision:\n #_088D68: LDY.b #$0F\n\n.next_sprite\n #_088D6A: LDA.w $0C4A,X\n #_088D6D: CMP.b #$09 ; ANCILLA 09\n #_088D6F: BEQ .arrow_or_hook\n\n #_088D71: CMP.b #$1F ; ANCILLA 1F\n #_088D73: BEQ .arrow_or_hook\n\n #_088D75: TYA\n #_088D76: EOR.b $1A\n #_088D78: AND.b #$03\n #_088D7A: ORA.w $0F00,Y\n #_088D7D: BNE .skip\n\n.arrow_or_hook\n #_088D7F: LDA.w $0DD0,Y\n #_088D82: CMP.b #$09\n #_088D84: BCC .skip\n\n #_088D86: LDA.w $0CAA,Y\n #_088D89: AND.b #$02\n #_088D8B: BNE .ignore_layer\n\n #_088D8D: LDA.w $0280,X\n #_088D90: BNE .skip\n\n.ignore_layer\n #_088D92: LDA.w $0C7C,X\n #_088D95: CMP.w $0F20,Y\n #_088D98: BNE .skip\n\n #_088D9A: JSR Ancilla_CheckSpriteCollision_Single\n\n.skip\n #_088D9D: DEY\n #_088D9E: BPL .next_sprite\n\n #_088DA0: CLC\n\n #_088DA1: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckSpriteCollision_long", + "code": "Ancilla_CheckSpriteCollision_long:\n #_088DA2: PHB\n #_088DA3: PHK\n #_088DA4: PLB\n\n #_088DA5: JSR Ancilla_CheckSpriteCollision\n\n #_088DA8: PLB\n\n #_088DA9: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckSpriteCollision_Single", + "code": "Ancilla_CheckSpriteCollision_Single:\n #_088DAE: JSR Ancilla_SetupHitbox\n\n #_088DB1: PHY\n #_088DB2: PHX\n\n #_088DB3: TYX\n #_088DB4: JSL Sprite_SetupHitbox_long\n\n #_088DB8: PLX\n #_088DB9: PLY\n\n #_088DBA: JSL CheckIfHitBoxesOverlap_long\n #_088DBE: BCS .hitbox_overlap\n\n #_088DC0: JMP.w .no_collision\n\n; ---------------------------------------------------------\n\n.hitbox_overlap\n #_088DC3: LDA.w SprTileDie,Y\n #_088DC6: AND.b #$08\n #_088DC8: BEQ .arrow_continue\n\n #_088DCA: LDA.w $0C4A,X\n #_088DCD: CMP.b #$09 ; ANCILLA 09\n #_088DCF: BNE .arrow_continue\n\n #_088DD1: LDA.w $0E20,Y\n #_088DD4: CMP.b #$1B ; SPRITE 1B\n #_088DD6: BEQ .arrow_v_arrow\n\n.deflected_arrow\n #_088DD8: JSL Sprite_CreateDeflectedArrow\n\n #_088DDC: CLC\n\n #_088DDD: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaHitbox", + "code": "AncillaHitbox:\n\n.offset_x\n #_088E7D: db 4\n #_088E7E: db 4\n #_088E7F: db 4\n #_088E80: db 4\n #_088E81: db 3\n #_088E82: db 3\n #_088E83: db 2\n #_088E84: db 11\n #_088E85: db -16\n #_088E86: db -16\n #_088E87: db -1\n #_088E88: db -8\n\n; ---------------------------------------------------------\n\n.width\n #_088E89: db 8\n #_088E8A: db 8\n #_088E8B: db 8\n #_088E8C: db 8\n #_088E8D: db 1\n #_088E8E: db 1\n #_088E8F: db 1\n #_088E90: db 1\n #_088E91: db 32\n #_088E92: db 32\n #_088E93: db 8\n #_088E94: db 8\n\n; ---------------------------------------------------------\n\n.offset_y\n #_088E95: db 4\n #_088E96: db 4\n #_088E97: db 4\n #_088E98: db 4\n #_088E99: db 2\n #_088E9A: db 11\n #_088E9B: db 3\n #_088E9C: db 3\n #_088E9D: db -1\n #_088E9E: db -8\n #_088E9F: db -16\n #_088EA0: db -16\n\n; ---------------------------------------------------------\n\n.height\n #_088EA1: db 8\n #_088EA2: db 8\n #_088EA3: db 8\n #_088EA4: db 8\n #_088EA5: db 1\n #_088EA6: db 1\n #_088EA7: db 1\n #_088EA8: db 1\n #_088EA9: db 8\n #_088EAA: db 8\n #_088EAB: db 32\n #_088EAC: db 32\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetupHitbox", + "code": "Ancilla_SetupHitbox:\n #_088EAD: STZ.b $09\n\n #_088EAF: PHY\n\n #_088EB0: LDY.w $0C72,X\n\n #_088EB3: LDA.w $0C4A,X\n #_088EB6: CMP.b #$0C ; ANCILLA 0C\n #_088EB8: BNE .not_beam\n\n #_088EBA: DEC.b $09\n\n #_088EBC: TYA\n #_088EBD: ORA.b #$08\n #_088EBF: TAY\n\n.not_beam\n #_088EC0: LDA.w $0C04,X\n #_088EC3: CLC\n #_088EC4: ADC.w AncillaHitbox_offset_x,Y\n #_088EC7: STA.b $00\n\n #_088EC9: LDA.w $0C18,X\n #_088ECC: ADC.b $09\n #_088ECE: STA.b $08\n\n #_088ED0: LDA.w $0BFA,X\n #_088ED3: CLC\n #_088ED4: ADC.w AncillaHitbox_offset_y,Y\n #_088ED7: STA.b $01\n\n #_088ED9: LDA.w $0C0E,X\n #_088EDC: ADC.b $09\n #_088EDE: STA.b $09\n\n #_088EE0: LDA.w AncillaHitbox_width,Y\n #_088EE3: STA.b $02\n\n #_088EE5: LDA.w AncillaHitbox_height,Y\n #_088EE8: STA.b $03\n\n #_088EEA: PLY\n\n #_088EEB: RTS", + "file": "bank_08.asm" + }, + { + "name": "UNREACHABLE_088EEC", + "code": "UNREACHABLE_088EEC:\n #_088EEC: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_ProjectSpeedTowardsPlayer", + "code": "Ancilla_ProjectSpeedTowardsPlayer:\n #_088EED: STA.b $01\n\n #_088EEF: PHX\n #_088EF0: PHY\n\n #_088EF1: JSR Ancilla_IsBelowLink\n #_088EF4: STY.b $02\n\n #_088EF6: LDA.b $0E\n #_088EF8: BPL .positive_y\n\n #_088EFA: EOR.b #$FF\n #_088EFC: INC A\n\n.positive_y\n #_088EFD: STA.b $0C\n\n #_088EFF: JSR Ancilla_IsRightOfLink\n #_088F02: STY.b $03\n\n #_088F04: LDA.b $0F\n #_088F06: BPL .positive_x\n\n #_088F08: EOR.b #$FF\n #_088F0A: INC A\n\n.positive_x\n #_088F0B: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_088F0D: LDY.b #$00\n\n #_088F0F: LDA.b $0D\n #_088F11: CMP.b $0C\n #_088F13: BCS .x_bigger\n\n #_088F15: INY\n #_088F16: PHA\n\n #_088F17: LDA.b $0C\n #_088F19: STA.b $0D\n\n #_088F1B: PLA\n #_088F1C: STA.b $0C\n\n.x_bigger\n #_088F1E: STZ.b $0B\n #_088F20: STZ.b $00\n\n; ---------------------------------------------------------\n\n #_088F22: LDX.b $01\n\n.stupid_algo\n #_088F24: LDA.b $0B\n #_088F26: CLC\n #_088F27: ADC.b $0C\n\n #_088F29: CMP.b $0D\n #_088F2B: BCC .keep_dumbing\n\n #_088F2D: SBC.b $0D\n #_088F2F: INC.b $00\n\n.keep_dumbing\n #_088F31: STA.b $0B\n\n #_088F33: DEX\n #_088F34: BNE .stupid_algo\n\n; ---------------------------------------------------------\n\n #_088F36: TYA\n #_088F37: BEQ .x_bigger_again\n\n #_088F39: LDA.b $00\n #_088F3B: PHA\n\n #_088F3C: LDA.b $01\n #_088F3E: STA.b $00\n\n #_088F40: PLA\n #_088F41: STA.b $01\n\n.x_bigger_again\n #_088F43: LDA.b $00\n\n #_088F45: LDY.b $02\n #_088F47: BEQ .y_fine\n\n #_088F49: EOR.b #$FF\n #_088F4B: INC A\n #_088F4C: STA.b $00\n\n.y_fine\n #_088F4E: LDA.b $01\n #_088F50: LDY.b $03\n #_088F52: BEQ .x_fine\n\n #_088F54: EOR.b #$FF\n #_088F56: INC A\n #_088F57: STA.b $01\n\n.x_fine\n #_088F59: PLY\n #_088F5A: PLX\n\n #_088F5B: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_IsRightOfLink", + "code": "Ancilla_IsRightOfLink:\n #_088F5C: LDY.b #$00\n\n #_088F5E: LDA.b $22\n #_088F60: SEC\n #_088F61: SBC.w $0C04,X\n #_088F64: STA.b $0F\n\n #_088F66: LDA.b $23\n #_088F68: SBC.w $0C18,X\n #_088F6B: BPL .no_left\n\n #_088F6D: INY\n\n.no_left\n #_088F6E: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_IsBelowLink", + "code": "Ancilla_IsBelowLink:\n #_088F6F: LDY.b #$00\n\n #_088F71: LDA.b $20\n #_088F73: SEC\n #_088F74: SBC.w $0BFA,X\n #_088F77: STA.b $0E\n\n #_088F79: LDA.b $21\n #_088F7B: SBC.w $0C0E,X\n #_088F7E: BPL EXIT_088F81\n\n #_088F80: INY\n\n; ---------------------------------------------------------\n\n#EXIT_088F81:\n #_088F81: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_WeaponTink", + "code": "Ancilla_WeaponTink:\n #_088F89: LDA.w $0FAC\n #_088F8C: BEQ EXIT_088F81\n\n #_088F8E: LDA.b #$02\n #_088F90: STA.w $0FDC\n\n #_088F93: DEC.w $0FAF\n #_088F96: BPL .keep_state\n\n #_088F98: DEC.w $0FAC\n\n #_088F9B: LDA.b #$01\n #_088F9D: STA.w $0FAF\n\n.keep_state\n #_088FA0: LDA.b #$10\n\n #_088FA2: LDY.w $0FB3\n #_088FA5: BEQ .ignore_layer\n\n #_088FA7: LDY.w $0B68\n #_088FAA: BNE .bg1\n\n #_088FAC: JSL SpriteDraw_AllocateOAMFromRegionD\n #_088FB0: BRA .screen_check\n\n.bg1\n #_088FB2: JSL SpriteDraw_AllocateOAMFromRegionF\n #_088FB6: BRA .screen_check\n\n.ignore_layer\n #_088FB8: JSL SpriteDraw_AllocateOAMFromRegionA\n\n; ---------------------------------------------------------\n\n.screen_check\n #_088FBC: LDA.w $0FAD\n #_088FBF: SEC\n #_088FC0: SBC.w $00E2\n\n #_088FC3: CMP.b #$F8\n #_088FC5: BCS .offscreen\n\n #_088FC7: STA.b $00\n\n #_088FC9: LDA.w $0FAE\n #_088FCC: SEC\n #_088FCD: SBC.w $00E8\n\n #_088FD0: CMP.b #$F0\n #_088FD2: BCS .offscreen\n\n #_088FD4: STA.b $01\n\n #_088FD6: LDA.w $0FAC\n #_088FD9: CMP.b #$03\n #_088FDB: BCC .late_stage\n\n #_088FDD: LDY.b #$00\n\n #_088FDF: LDA.b $00\n #_088FE1: STA.b ($90),Y\n\n #_088FE3: LDA.b $01\n #_088FE5: INY\n #_088FE6: STA.b ($90),Y\n\n #_088FE8: LDA.b #$80\n\n #_088FEA: LDX.w $0FAC\n #_088FED: CPX.b #$09\n #_088FEF: BCS .diff_chr\n\n #_088FF1: LDA.b #$92\n\n.diff_chr\n #_088FF3: INY\n #_088FF4: STA.b ($90),Y\n\n #_088FF6: LDX.w $0B68\n\n #_088FF9: LDA.l .props,X\n #_088FFD: INY\n #_088FFE: STA.b ($90),Y\n\n #_089000: TYA\n #_089001: LSR A\n #_089002: LSR A\n #_089003: TAY\n\n #_089004: LDA.b #$00\n #_089006: STA.b ($92),Y\n\n #_089008: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_Move_X", + "code": "Ancilla_Move_X:\n #_089080: TXA\n #_089081: CLC\n #_089082: ADC.b #$0A\n #_089084: TAX\n\n #_089085: JSR Ancilla_Move_Y\n\n #_089088: BRL Ancilla_RestoreIndex\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_Move_Y", + "code": "Ancilla_Move_Y:\n #_08908B: LDA.w $0C22,X\n\n #_08908E: ASL A\n #_08908F: ASL A\n #_089090: ASL A\n #_089091: ASL A\n\n #_089092: CLC\n #_089093: ADC.w $0C36,X\n #_089096: STA.w $0C36,X\n\n #_089099: LDY.b #$00\n\n #_08909B: LDA.w $0C22,X\n #_08909E: PHP\n\n #_08909F: LSR A\n #_0890A0: LSR A\n #_0890A1: LSR A\n #_0890A2: LSR A\n\n #_0890A3: PLP\n #_0890A4: BPL .other_way\n\n #_0890A6: ORA.b #$F0\n #_0890A8: DEY\n\n.other_way\n #_0890A9: ADC.w $0BFA,X\n #_0890AC: STA.w $0BFA,X\n\n #_0890AF: TYA\n #_0890B0: ADC.w $0C0E,X\n #_0890B3: STA.w $0C0E,X\n\n #_0890B6: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_Move_Z", + "code": "Ancilla_Move_Z:\n #_0890B7: LDA.w $0294,X\n\n #_0890BA: ASL A\n #_0890BB: ASL A\n #_0890BC: ASL A\n #_0890BD: ASL A\n\n #_0890BE: CLC\n #_0890BF: ADC.w $02A8,X\n #_0890C2: STA.w $02A8,X\n\n #_0890C5: LDY.b #$00\n\n #_0890C7: LDA.w $0294,X\n #_0890CA: PHP\n\n #_0890CB: LSR A\n #_0890CC: LSR A\n #_0890CD: LSR A\n #_0890CE: LSR A\n\n #_0890CF: PLP\n #_0890D0: BPL .other_way\n\n #_0890D2: ORA.b #$F0\n #_0890D4: DEY\n\n.other_way\n #_0890D5: ADC.w $029E,X\n #_0890D8: STA.w $029E,X\n\n #_0890DB: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla05_Boomerang", + "code": "Ancilla05_Boomerang:\n #_0890FC: LDY.b #$04\n\n.next_slot\n #_0890FE: LDA.w $0C4A,Y\n #_089101: CMP.b #$22 ; ANCILLA 22\n #_089103: BEQ .draw\n\n #_089105: DEY\n #_089106: BPL .next_slot\n\n; ---------------------------------------------------------\n\n #_089108: LDA.b $11\n #_08910A: BNE .draw\n\n #_08910C: LDA.b $1A\n #_08910E: AND.b #$07\n #_089110: BNE .no_whoosh\n\n #_089112: LDA.b #$09 ; SFX2.09\n #_089114: JSR Ancilla_SFX2_Pan\n\n.no_whoosh\n #_089117: LDA.w $03B1,X\n #_08911A: BNE .pos_set\n\n #_08911C: LDA.b $3C\n #_08911E: CMP.b #$09\n #_089120: BCS .init_pos\n\n #_089122: LDA.w $0300\n #_089125: BNE .init_pos\n\n #_089127: LDA.w $02E0\n #_08912A: BNE .bunny\n\n #_08912C: LDA.b $4D\n #_08912E: BEQ .draw\n\n.bunny\n #_089130: BRL Boom_Die\n\n.draw\n #_089133: BRL .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.init_pos\n #_089136: LDA.w $03CF,X\n #_089139: TAY\n\n #_08913A: REP #$20\n\n #_08913C: LDA.b $20\n #_08913E: CLC\n #_08913F: ADC.w #$0008\n #_089142: CLC\n #_089143: ADC.w .offset_y,Y\n #_089146: STA.b $00\n\n #_089148: LDA.b $22\n #_08914A: CLC\n #_08914B: ADC.w .offset_x,Y\n #_08914E: STA.b $02\n\n #_089150: SEP #$20\n\n #_089152: LDA.b $00\n #_089154: STA.w $0BFA,X\n\n #_089157: LDA.b $01\n #_089159: STA.w $0C0E,X\n\n #_08915C: LDA.b $02\n #_08915E: STA.w $0C04,X\n\n #_089161: LDA.b $03\n #_089163: STA.w $0C18,X\n\n #_089166: INC.w $03B1,X\n\n; ---------------------------------------------------------\n\n.pos_set\n #_089169: LDA.w $0394,X\n #_08916C: BEQ .no_sparkle\n\n #_08916E: LDA.b $1A\n #_089170: AND.b #$01\n #_089172: BNE .no_sparkle\n\n #_089174: PHX\n #_089175: JSL AncillaAdd_SwordChargeSparkle\n #_089179: PLX\n\n.no_sparkle\n #_08917A: LDA.w $0C5E,X\n #_08917D: BEQ .move_away\n\n #_08917F: LDA.w $0380,X\n #_089182: BEQ .not_decelerating\n\n #_089184: INC A\n\n.decelerating\n #_089185: STA.w $0380,X\n\n.not_decelerating\n #_089188: REP #$20\n\n #_08918A: LDA.b $20\n #_08918C: STA.w $038A,X\n\n #_08918F: CLC\n #_089190: ADC.w #$0008\n #_089193: STA.b $20\n\n #_089195: SEP #$20\n\n #_089197: LDA.w $03C5,X\n #_08919A: JSR Ancilla_ProjectSpeedTowardsPlayer\n\n #_08919D: JSL Boomerang_CheatWhenNoOnesLooking\n\n #_0891A1: LDA.b $00\n #_0891A3: STA.w $0C22,X\n\n #_0891A6: LDA.b $01\n #_0891A8: STA.w $0C2C,X\n\n #_0891AB: REP #$20\n\n #_0891AD: LDA.w $038A,X\n #_0891B0: STA.b $20\n\n #_0891B2: SEP #$20\n\n; ---------------------------------------------------------\n\n.move_away\n #_0891B4: LDA.w $0C22,X\n #_0891B7: BEQ .y_speed_0\n\n #_0891B9: CLC\n #_0891BA: ADC.w $0380,X\n #_0891BD: STA.w $0C22,X\n\n.y_speed_0\n #_0891C0: JSR Ancilla_Move_Y\n\n #_0891C3: LDA.w $0C2C,X\n #_0891C6: BEQ .x_speed_0\n\n #_0891C8: CLC\n #_0891C9: ADC.w $0380,X\n #_0891CC: STA.w $0C2C,X\n\n.x_speed_0\n #_0891CF: JSR Ancilla_Move_X\n #_0891D2: JSR Ancilla_CheckSpriteCollision\n\n #_0891D5: LDY.b #$00\n #_0891D7: BCC .no_sprite_collision\n\n #_0891D9: INY\n\n; ---------------------------------------------------------\n\n.no_sprite_collision\n #_0891DA: LDA.w $0C5E,X\n #_0891DD: BNE .dont_turn_around\n\n #_0891DF: CPY.b #$01\n #_0891E1: BEQ .turn_around\n\n #_0891E3: JSR Ancilla_CheckTileCollision\n #_0891E6: BCC .no_tile_collision\n\n #_0891E8: PHX\n\n #_0891E9: JSL AncillaAdd_BoomerangWallClink\n\n #_0891ED: PLX\n\n #_0891EE: LDY.b #$06 ; SFX2.06\n\n #_0891F0: LDA.w $03E4,X\n #_0891F3: CMP.b #$F0 ; TILETYPE F0\n #_0891F5: BEQ .not_key_door\n\n #_0891F7: LDY.b #$05 ; SFX2.05\n\n.not_key_door\n #_0891F9: TYA\n #_0891FA: JSR Ancilla_SFX2_Pan\n\n #_0891FD: BRA .turn_around\n\n; ---------------------------------------------------------\n\n.no_tile_collision\n #_0891FF: JSR Boomerang_ScreenEdge\n #_089202: BCS .turn_around\n\n #_089204: DEC.w $0C54,X\n\n #_089207: LDA.w $0C54,X\n #_08920A: BEQ .turn_around\n\n #_08920C: CMP.b #$05\n #_08920E: BCS .proceed_to_draw\n\n #_089210: DEC.w $0380,X\n #_089213: BRA .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.turn_around\n #_089215: LDA.w $0C5E,X\n #_089218: EOR.b #$01\n #_08921A: STA.w $0C5E,X\n\n #_08921D: BRA .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.dont_turn_around\n #_08921F: LDA.w $0280,X\n #_089222: PHA\n\n #_089223: LDA.w $0C7C,X\n #_089226: PHA\n\n #_089227: STZ.w $0C7C,X\n\n #_08922A: JSR Ancilla_CheckTileCollision\n\n #_08922D: PLA\n #_08922E: STA.w $0C7C,X\n\n #_089231: PLA\n #_089232: STA.w $0280,X\n\n #_089235: JSR Boomerang_StopOffScreen\n\n; ---------------------------------------------------------\n\n.proceed_to_draw\n #_089238: BRL AncillaDraw_Boomerang\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckTileCollision_long", + "code": "Ancilla_CheckTileCollision_long:\n #_08923B: PHB\n #_08923C: PHK\n #_08923D: PLB\n\n #_08923E: JSR Ancilla_CheckTileCollision\n\n #_089241: PLB\n\n #_089242: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckTileCollision_Class2_long", + "code": "Ancilla_CheckTileCollision_Class2_long:\n #_089243: PHB\n #_089244: PHK\n #_089245: PLB\n\n #_089246: JSR Ancilla_CheckTileCollision_Class2\n\n #_089249: PLB\n\n #_08924A: RTL", + "file": "bank_08.asm" + }, + { + "name": "Boomerang_ScreenEdge", + "code": "Boomerang_ScreenEdge:\n #_08924B: LDA.w $0BFA,X\n #_08924E: STA.b $00\n\n #_089250: LDA.w $0C0E,X\n #_089253: STA.b $01\n\n #_089255: LDA.w $0C04,X\n #_089258: STA.b $02\n\n #_08925A: LDA.w $0C18,X\n #_08925D: STA.b $03\n\n; ---------------------------------------------------------\n\n #_08925F: REP #$30\n\n #_089261: LDY.w #$0000\n\n #_089264: LDA.w $039D\n #_089267: AND.w #$0003\n #_08926A: BEQ .no_horizontal\n\n #_08926C: AND.w #$0001\n #_08926F: BEQ .leftwards\n\n #_089271: LDY.w #$0010\n\n.leftwards\n #_089274: TYA\n #_089275: CLC\n #_089276: ADC.b $02\n\n #_089278: SEC\n #_089279: SBC.b $E2\n #_08927B: STA.b $02\n\n #_08927D: CMP.w #$0100\n #_089280: BCS .do_reverse\n\n; ---------------------------------------------------------\n\n.no_horizontal\n #_089282: LDY.w #$0000\n\n #_089285: LDA.w $039D\n #_089288: AND.w #$000C\n #_08928B: BEQ .dont_reverse\n\n #_08928D: AND.w #$0004\n #_089290: BEQ .upward\n\n #_089292: LDY.w #$0010\n\n.upward\n #_089295: TYA\n #_089296: CLC\n #_089297: ADC.b $00\n\n #_089299: SEC\n #_08929A: SBC.b $E8\n #_08929C: STA.b $00\n\n #_08929E: CMP.w #$00E2\n #_0892A1: BCC .dont_reverse\n\n; ---------------------------------------------------------\n\n.do_reverse\n #_0892A3: SEP #$30\n #_0892A5: SEC\n\n #_0892A6: RTS", + "file": "bank_08.asm" + }, + { + "name": "Boomerang_StopOffScreen", + "code": "Boomerang_StopOffScreen:\n #_0892AB: LDA.w $0BFA,X\n #_0892AE: STA.b $04\n\n #_0892B0: LDA.w $0C0E,X\n #_0892B3: STA.b $05\n\n #_0892B5: LDA.w $0C04,X\n #_0892B8: STA.b $06\n\n #_0892BA: LDA.w $0C18,X\n #_0892BD: STA.b $07\n\n; ---------------------------------------------------------\n\n #_0892BF: REP #$20\n\n #_0892C1: LDA.b $20\n #_0892C3: CLC\n #_0892C4: ADC.w #$0018\n #_0892C7: STA.b $00\n\n #_0892C9: LDA.b $22\n #_0892CB: CLC\n #_0892CC: ADC.w #$0010\n #_0892CF: STA.b $02\n\n #_0892D1: LDA.b $04\n #_0892D3: CLC\n #_0892D4: ADC.w #$0008\n #_0892D7: STA.b $04\n\n #_0892D9: LDA.b $06\n #_0892DB: CLC\n #_0892DC: ADC.w #$0008\n #_0892DF: STA.b $06\n\n #_0892E1: LDA.b $04\n #_0892E3: CMP.b $20\n #_0892E5: BCC Boom_NoDie\n\n #_0892E7: CMP.b $00\n #_0892E9: BCS Boom_NoDie\n\n #_0892EB: LDA.b $06\n #_0892ED: CMP.b $22\n #_0892EF: BCC Boom_NoDie\n\n #_0892F1: CMP.b $02\n #_0892F3: BCS Boom_NoDie\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Boom_Die", + "code": "Boom_Die:\n #_0892F5: SEP #$20\n\n #_0892F7: STZ.w $0C4A,X\n\n #_0892FA: STZ.w $035F\n\n #_0892FD: LDA.w $0301\n #_089300: AND.b #$80\n #_089302: BEQ Boom_NoDie\n\n #_089304: STZ.w $0301\n\n #_089307: LDA.b $3A\n #_089309: AND.b #$BF\n #_08930B: STA.b $3A\n\n #_08930D: AND.b #$80\n #_08930F: BNE Boom_NoDie\n\n #_089311: LDA.b $50\n #_089313: AND.b #$FE\n #_089315: STA.b $50\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Boom_NoDie", + "code": "Boom_NoDie:\n #_089317: SEP #$20\n\n #_089319: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Boomerang", + "code": "AncillaDraw_Boomerang:\n #_089338: JSR Ancilla_PrepOAMCoord\n\n #_08933B: LDA.w $0C5E,X\n #_08933E: BEQ .move_away\n\n #_089340: LDA.b $EE\n #_089342: STA.w $0C7C,X\n\n #_089345: TAY\n\n #_089346: LDA.w AncillaPriorities,Y\n #_089349: STA.b $65\n\n.move_away\n #_08934B: LDA.w $0280,X\n #_08934E: BEQ .normal_priority\n\n #_089350: LDA.b #$30\n #_089352: STA.b $65\n\n.normal_priority\n #_089354: LDA.b $11\n #_089356: BNE .leave_rotation\n\n #_089358: LDA.w $03B1,X\n #_08935B: BEQ .leave_rotation\n\n #_08935D: DEC.w $039F,X\n #_089360: BPL .leave_rotation\n\n #_089362: LDY.w $0394,X\n\n #_089365: LDA.w .rotation,Y\n #_089368: STA.w $039F,X\n\n #_08936B: LDY.w $03A4,X\n\n #_08936E: LDA.w $03A9,X\n #_089371: BEQ .left_throw\n\n #_089373: DEY\n\n #_089374: BRA .set_rotation\n\n.left_throw\n #_089376: INY\n\n.set_rotation\n #_089377: TYA\n #_089378: AND.b #$03\n #_08937A: STA.w $03A4,X\n\n; ---------------------------------------------------------\n\n.leave_rotation\n #_08937D: PHX\n\n #_08937E: LDA.w $0394,X\n #_089381: ASL A\n #_089382: ASL A\n #_089383: STA.b $72\n\n #_089385: LDA.w $03A4,X\n #_089388: ASL A\n #_089389: ASL A\n #_08938A: TAY\n\n #_08938B: REP #$20\n\n #_08938D: STZ.b $74\n\n #_08938F: LDA.w .offset+0,Y\n #_089392: CLC\n #_089393: ADC.b $00\n #_089395: STA.b $00\n\n #_089397: LDA.w .offset+2,Y\n #_08939A: CLC\n #_08939B: ADC.b $02\n #_08939D: STA.b $02\n #_08939F: STA.b $04\n\n #_0893A1: LDA.w $03B1,X\n #_0893A4: AND.w #$00FF\n #_0893A7: BNE .general_oam\n\n #_0893A9: LDA.w $0FB3\n #_0893AC: AND.w #$00FF\n #_0893AF: ASL A\n #_0893B0: TAX\n\n #_0893B1: LDA.w .oam_offset,X\n #_0893B4: PHA\n\n #_0893B5: LSR A\n #_0893B6: LSR A\n #_0893B7: CLC\n\n #_0893B8: ADC.w #$0A20\n #_0893BB: STA.b $92\n\n #_0893BD: PLA\n #_0893BE: CLC\n #_0893BF: ADC.w #$0800\n #_0893C2: STA.b $90\n\n; ---------------------------------------------------------\n\n.general_oam\n #_0893C4: SEP #$20\n\n #_0893C6: TYA\n #_0893C7: LSR A\n #_0893C8: LSR A\n #_0893C9: CLC\n #_0893CA: ADC.b $72\n #_0893CC: TAX\n\n #_0893CD: LDY.b #$00\n #_0893CF: JSR Ancilla_SetOAM_XY_safe\n\n #_0893D2: LDA.b #$26\n #_0893D4: STA.b ($90),Y\n\n #_0893D6: INY\n\n #_0893D7: LDA.w .prop,X\n #_0893DA: AND.b #$CF\n #_0893DC: ORA.b $65\n #_0893DE: STA.b ($90),Y\n\n #_0893E0: LDA.b #$02\n #_0893E2: ORA.b $75\n #_0893E4: STA.b ($92)\n\n #_0893E6: PLX\n\n #_0893E7: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla06_WallHit", + "code": "Ancilla06_WallHit:\n #_0893E8: DEC.w $039F,X\n #_0893EB: BPL WallHit_JustDraw\n\n #_0893ED: LDA.w $0C5E,X\n #_0893F0: INC A\n #_0893F1: CMP.b #$05\n #_0893F3: BEQ WallHit_JustDie\n\n #_0893F5: STA.w $0C5E,X\n\n #_0893F8: LDA.b #$01\n #_0893FA: STA.w $039F,X\n\n #_0893FD: BRA WallHit_JustDraw\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1B_SwordWallHit", + "code": "Ancilla1B_SwordWallHit:\n #_0893FF: JSR Ancilla_SpriteAlert\n\n #_089402: DEC.w $03B1,X\n #_089405: BPL WallHit_JustDraw\n\n #_089407: LDA.w $0C5E,X\n #_08940A: INC A\n #_08940B: CMP.b #$08\n #_08940D: BEQ WallHit_JustDie\n\n #_08940F: STA.w $0C5E,X\n\n #_089412: LDA.b #$01\n #_089414: STA.w $03B1,X\n\n #_089417: BRA WallHit_JustDraw\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "WallHit_JustDie", + "code": "WallHit_JustDie:\n #_089419: BRL Ancilla_DeleteSelf\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "WallHit_JustDraw", + "code": "WallHit_JustDraw:\n #_08941C: BRL AncillaDraw_WallHit\n\n; =========================================================\n\npool AncillaDraw_WallHit\n\n.char\n #_08941F: db $80, $00, $00, $00\n #_089423: db $92, $00, $00, $00\n #_089427: db $81, $81, $81, $81\n #_08942B: db $82, $82, $82, $82\n #_08942F: db $93, $93, $93, $93\n #_089433: db $92, $00, $00, $00\n #_089437: db $B9, $00, $00, $00\n #_08943B: db $90, $90, $00, $00\n\n.prop\n #_08943F: db $32, $00, $00, $00\n #_089443: db $32, $00, $00, $00\n #_089447: db $32, $72, $B2, $F2\n #_08944B: db $32, $72, $B2, $F2\n #_08944F: db $32, $72, $B2, $F2\n #_089453: db $32, $00, $00, $00\n #_089457: db $72, $00, $00, $00\n #_08945B: db $32, $F2, $00, $00\n\n.offset_y\n #_08945F: dw -4, 0, 0, 0\n #_089467: dw -4, 0, 0, 0\n #_08946F: dw -8, -8, 0, 0\n #_089477: dw -8, -8, 0, 0\n #_08947F: dw -8, -8, 0, 0\n #_089487: dw -4, 0, 0, 0\n #_08948F: dw -4, 0, 0, 0\n #_089497: dw -8, 0, 0, 0\n\n.offset_x\n #_08949F: dw -4, 0, 0, 0\n #_0894A7: dw -4, 0, 0, 0\n #_0894AF: dw -8, 0, -8, 0\n #_0894B7: dw -8, 0, -8, 0\n #_0894BF: dw -8, 0, -8, 0\n #_0894C7: dw -4, 0, 0, 0\n #_0894CF: dw -4, 0, 0, 0\n #_0894D7: dw -8, 0, 0, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_WallHit", + "code": "AncillaDraw_WallHit:\n #_0894DF: JSR Ancilla_PrepOAMCoord\n\n #_0894E2: REP #$20\n\n #_0894E4: LDA.b $00\n #_0894E6: STA.b $04\n\n #_0894E8: LDA.b $02\n #_0894EA: STA.b $06\n\n #_0894EC: SEP #$20\n\n #_0894EE: LDA.b #$03\n #_0894F0: STA.b $08\n\n #_0894F2: PHX\n\n #_0894F3: LDA.w $0C5E,X\n #_0894F6: ASL A\n #_0894F7: ASL A\n #_0894F8: TAX\n\n; ---------------------------------------------------------\n\n #_0894F9: LDY.b #$00\n\n.next_object\n #_0894FB: LDA.w .char,X\n #_0894FE: BEQ .skip\n\n #_089500: PHX\n\n #_089501: TXA\n #_089502: ASL A\n #_089503: TAX\n\n #_089504: REP #$20\n\n #_089506: LDA.w .offset_y,X\n #_089509: CLC\n #_08950A: ADC.b $04\n #_08950C: STA.b $00\n\n #_08950E: LDA.w .offset_x,X\n #_089511: CLC\n #_089512: ADC.b $06\n #_089514: STA.b $02\n\n #_089516: SEP #$20\n\n #_089518: PLX\n\n #_089519: JSR Ancilla_SetOAM_XY\n\n #_08951C: LDA.w .char,X\n #_08951F: STA.b ($90),Y\n\n #_089521: INY\n\n #_089522: LDA.w .prop,X\n #_089525: AND.b #$CF\n #_089527: ORA.b $65\n #_089529: STA.b ($90),Y\n\n #_08952B: INY\n\n #_08952C: PHY\n\n #_08952D: TYA\n #_08952E: SEC\n #_08952F: SBC.b #$04\n #_089531: LSR A\n #_089532: LSR A\n #_089533: TAY\n\n #_089534: LDA.b #$00\n #_089536: STA.b ($92),Y\n\n #_089538: PLY\n\n.skip\n #_089539: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08953C: INX\n #_08953D: DEC.b $08\n\n #_08953F: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_089541: PLX\n\n #_089542: RTS", + "file": "bank_08.asm" + }, + { + "name": "Bomb_timer", + "code": "Bomb_timer:\n #_089543: db 160, 6, 4, 4\n #_089547: db 4, 4, 4, 6\n #_08954B: db 6, 6, 6\n", + "file": "bank_08.asm" + }, + { + "name": "Bomb_anim_step", + "code": "Bomb_anim_step:\n #_08954E: db $00, $01, $02, $03\n #_089552: db $02, $03, $04, $05\n #_089556: db $06, $07, $08, $09\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla07_Bomb", + "code": "Ancilla07_Bomb:\n #_08955A: LDA.b $11\n #_08955C: BEQ .main\n\n #_08955E: CMP.b #$08\n #_089560: BEQ .staircase\n\n #_089562: CMP.b #$10\n #_089564: BNE .not_staircase\n\n.staircase\n #_089566: JSR Ancilla_HandleLiftLogic\n\n #_089569: BRA .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.not_staircase\n #_08956B: TXA\n #_08956C: INC A\n #_08956D: CMP.w $02EC\n #_089570: BNE .proceed_to_draw\n\n #_089572: LDA.w $0380,X\n #_089575: BEQ .proceed_to_draw\n\n #_089577: CMP.b #$03\n #_089579: BEQ .fully_held\n\n #_08957B: LDY.b #$03\n #_08957D: JSR Ancilla_LatchLinkCoordinates\n #_089580: JSR Ancilla_LatchAltitudeAboveLink\n\n #_089583: LDA.b #$03\n #_089585: STA.w $0380,X\n\n.fully_held\n #_089588: JSR Ancilla_LatchCarriedPosition\n\n.proceed_to_draw\n #_08958B: BRL Bomb_DoDraw\n\n; ---------------------------------------------------------\n\n.main\n #_08958E: JSR Ancilla_HandleLiftLogic\n #_089591: JSR Ancilla_LatchYCoordToZ\n\n #_089594: LDA.w $0C72,X\n #_089597: STA.b $74\n\n #_089599: LDA.w $0280,X\n #_08959C: STA.b $75\n\n #_08959E: STZ.w $0280,X\n\n #_0895A1: JSR Ancilla_CheckTileCollision_Class2\n #_0895A4: PHP\n\n #_0895A5: LDA.b $1B\n #_0895A7: BEQ .leave_layer\n\n #_0895A9: LDA.w $0385,X\n #_0895AC: BEQ .leave_layer\n\n #_0895AE: LDA.w $03E4,X\n #_0895B1: CMP.b #$1C ; TILETYPE 1C\n #_0895B3: BNE .leave_layer\n\n #_0895B5: LDA.b #$01\n #_0895B7: STA.w $03D5,X\n\n.leave_layer\n #_0895BA: PLP\n #_0895BB: BCC .no_tile_collision\n\n; ---------------------------------------------------------\n\n.check_for_lift\n #_0895BD: BIT.w $0308\n #_0895C0: BPL .link_not_holding\n\n #_0895C2: LDA.w $0309\n #_0895C5: BEQ .no_tile_collision\n\n.link_not_holding\n #_0895C7: LDA.b $75\n #_0895C9: BNE .ignore_tile_collision\n\n #_0895CB: LDA.w $0BF0,X\n #_0895CE: BNE .ignore_tile_collision\n\n #_0895D0: LDA.b #$01\n #_0895D2: STA.w $0BF0,X\n\n #_0895D5: LDA.b #$04\n #_0895D7: STA.b $0E\n\n #_0895D9: LDY.b #$FC\n\n #_0895DB: LDA.w $0C72,X\n #_0895DE: CMP.b #$01\n #_0895E0: BNE .not_downwards\n\n #_0895E2: LDA.b #$10\n #_0895E4: STA.b $0E\n\n #_0895E6: LDY.b #$F0\n\n; ---------------------------------------------------------\n\n.not_downwards\n #_0895E8: LDA.w $0C22,X\n #_0895EB: BEQ .not_moving_y\n #_0895ED: BPL .positive_y\n\n #_0895EF: LDY.b $0E\n\n.positive_y\n #_0895F1: TYA\n #_0895F2: STA.w $0C22,X\n\n; ---------------------------------------------------------\n\n.not_moving_y\n #_0895F5: LDY.b #$FC\n\n #_0895F7: LDA.w $0C2C,X\n #_0895FA: BEQ .not_moving_x\n #_0895FC: BPL .positive_x\n\n #_0895FE: LDY.b #$04\n\n.positive_x\n #_089600: TYA\n #_089601: STA.w $0C2C,X\n\n.not_moving_x\n #_089604: LDA.w $0C72,X\n #_089607: CMP.b #$01\n #_089609: BNE .ignore_tile_collision\n\n #_08960B: LDA.w $029E,X\n #_08960E: BEQ .ignore_tile_collision\n\n #_089610: LDA.b #$FC\n #_089612: STA.w $0C22,X\n\n #_089615: LDA.b #$02\n #_089617: STA.w $0385,X\n\n.ignore_tile_collision\n #_08961A: BRL Bomb_HandleState\n\n; ---------------------------------------------------------\n\n.no_tile_collision\n #_08961D: TXA\n #_08961E: INC A\n #_08961F: CMP.w $02EC\n #_089622: BNE .not_lifted_bomb\n\n #_089624: BIT.w $0308\n #_089627: BMI .ignore_tile_collision\n\n.not_lifted_bomb\n #_089629: LDA.w $029E,X\n #_08962C: BEQ .on_ground\n\n #_08962E: CMP.b #$FF\n #_089630: BNE .ignore_tile_collision\n\n.on_ground\n #_089632: LDA.b #$10\n #_089634: STA.w $0C72,X\n\n #_089637: LDA.w $0280,X\n #_08963A: PHA\n\n #_08963B: JSR Ancilla_CheckTileCollision\n\n #_08963E: PLA\n #_08963F: STA.w $0280,X\n\n; ---------------------------------------------------------\n\n #_089642: LDA.w $03E4,X\n #_089645: CMP.b #$26 ; TILETYPE 26\n #_089647: BEQ .tile_staircase\n\n #_089649: CMP.b #$0C ; TILETYPE 0C\n #_08964B: BEQ .tile_0C_1C\n\n #_08964D: CMP.b #$1C ; TILETYPE 1C\n #_08964F: BEQ .tile_0C_1C\n\n #_089651: CMP.b #$20 ; TILETYPE 20\n #_089653: BEQ .tile_pit\n\n #_089655: CMP.b #$08 ; TILETYPE 08\n #_089657: BEQ .tile_deep_water\n\n #_089659: CMP.b #$68 ; TILETYPE 68\n #_08965B: BEQ .tile_conveyor\n\n #_08965D: CMP.b #$69 ; TILETYPE 69\n #_08965F: BEQ .tile_conveyor\n\n #_089661: CMP.b #$6A ; TILETYPE 6A\n #_089663: BEQ .tile_conveyor\n\n #_089665: CMP.b #$6B ; TILETYPE 6B\n #_089667: BEQ .tile_conveyor\n\n #_089669: CMP.b #$B6 ; TILETYPE B6\n #_08966B: BEQ .tile_transit\n\n #_08966D: CMP.b #$BC ; TILETYPE BC\n #_08966F: BEQ .tile_transit\n\n #_089671: AND.b #$F0\n #_089673: CMP.b #$B0\n #_089675: BEQ .tile_pit\n\n; ---------------------------------------------------------\n\n.tile_transit\n #_089677: STZ.w $0C68,X\n\n #_08967A: LDA.w $0385,X\n #_08967D: BNE .ignore_tile_collision\n\n #_08967F: LDA.b #$02\n #_089681: STA.w $0C68,X\n\n.bounce_to_state_handler\n #_089684: BRL Bomb_HandleState\n\n; ---------------------------------------------------------\n\n.tile_conveyor\n #_089687: BRL Bomb_HandleConveyor\n\n; ---------------------------------------------------------\n\n.tile_staircase\n #_08968A: BRL .check_for_lift\n\n; ---------------------------------------------------------\n\n.tile_0C_1C\n #_08968D: BRL Bomb_HandleTiles_0C_1C\n\n; ---------------------------------------------------------\n\n.tile_deep_water\n #_089690: TXA\n #_089691: INC A\n #_089692: CMP.w $02EC\n #_089695: BNE .water_reset_a\n\n #_089697: STZ.w $02EC\n\n.water_reset_a\n #_08969A: LDA.w $0C68,X\n #_08969D: BNE .bounce_to_state_handler\n\n #_08969F: LDA.w $0BFA,X\n #_0896A2: CLC\n #_0896A3: ADC.b #$E8\n #_0896A5: STA.w $0BFA,X\n\n #_0896A8: LDA.b #$FF\n #_0896AA: ADC.w $0C0E,X\n #_0896AD: STA.w $0C0E,X\n\n #_0896B0: BRL Ancilla_TransmuteToSplash\n\n; ---------------------------------------------------------\n\n.tile_pit\n #_0896B3: LDA.w $0308\n #_0896B6: BMI Bomb_HandleState\n\n #_0896B8: STX.b $04\n\n #_0896BA: LDA.w $02EC\n #_0896BD: DEC A\n #_0896BE: CMP.b $04\n #_0896C0: BNE .water_reset_b\n\n #_0896C2: STZ.w $02EC\n\n.water_reset_b\n #_0896C5: LDA.w $0C68,X\n #_0896C8: BNE .bounce_to_state_handler\n\n #_0896CA: BRL Ancilla_DeleteSelf\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Bomb_HandleTiles_0C_1C", + "code": "Bomb_HandleTiles_0C_1C:\n #_0896CD: LDA.w $046C\n #_0896D0: CMP.b #$03\n #_0896D2: BEQ .moving_floor\n\n #_0896D4: LDA.w $0C7C,X\n #_0896D7: BNE Bomb_HandleState\n\n #_0896D9: LDA.w $029E,X\n #_0896DC: BEQ Bomb_HandleState\n\n #_0896DE: CMP.b #$FF\n #_0896E0: BEQ Bomb_HandleState\n\n #_0896E2: LDA.b #$01\n #_0896E4: STA.w $0C7C,X\n\n #_0896E7: BRA Bomb_HandleState\n\n; ---------------------------------------------------------\n\n.moving_floor\n #_0896E9: LDA.w $0310\n #_0896EC: CLC\n #_0896ED: ADC.w $0BFA,X\n #_0896F0: STA.b $72\n\n #_0896F2: LDA.w $0311\n #_0896F5: ADC.w $0C0E,X\n #_0896F8: STA.b $73\n\n #_0896FA: LDA.w $0312\n #_0896FD: CLC\n #_0896FE: ADC.w $0C04,X\n #_089701: STA.w $0C04,X\n\n #_089704: LDA.w $0313\n #_089707: ADC.w $0C18,X\n #_08970A: STA.w $0C18,X\n\n #_08970D: BRA Bomb_HandleState\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Bomb_HandleConveyor", + "code": "Bomb_HandleConveyor:\n #_08970F: JSR Ancilla_ApplyConveyor\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Bomb_HandleState", + "code": "Bomb_HandleState:\n #_089712: JSR Ancilla_SetYFrom_DP72\n\n #_089715: LDA.b $74\n #_089717: STA.w $0C72,X\n\n #_08971A: LDA.b $75\n #_08971C: ORA.w $0280,X\n #_08971F: STA.w $0280,X\n\n #_089722: JSR Bomb_CheckSpriteAndPlayerDamage\n\n #_089725: DEC.w $039F,X\n\n #_089728: LDA.w $039F,X\n #_08972B: BNE .delay\n\n #_08972D: INC.w $0C5E,X\n\n #_089730: LDA.w $0C5E,X\n #_089733: CMP.b #$01\n #_089735: BNE .not_just_exploded\n\n #_089737: LDA.b #$0C ; SFX2.0C\n #_089739: JSR Ancilla_SFX2_Pan\n\n #_08973C: TXA\n #_08973D: INC A\n #_08973E: CMP.w $02EC\n #_089741: BNE .not_just_exploded\n\n #_089743: STZ.w $02EC\n\n #_089746: BIT.w $0308\n #_089749: BPL .not_just_exploded\n\n #_08974B: STZ.w $0308\n #_08974E: STZ.b $50\n\n; ---------------------------------------------------------\n\n.not_just_exploded\n #_089750: LDA.w $0C5E,X\n #_089753: CMP.b #$0B\n #_089755: BNE .not_fully_exploded\n\n #_089757: LDY.b #$00\n\n #_089759: LDA.w $0C54,X\n #_08975C: BEQ .dont_become_debris\n\n #_08975E: LDY.b #$08 ; ANCILLA 08\n\n.dont_become_debris\n #_089760: TYA\n #_089761: STA.w $0C4A,X\n\n #_089764: RTS", + "file": "bank_08.asm" + }, + { + "name": "Bomb_DoDraw", + "code": "Bomb_DoDraw:\n #_0897B2: JSR AncillaDraw_Bomb\n\n; ---------------------------------------------------------\n\n#EXIT_0897B5:\n #_0897B5: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_ApplyConveyor", + "code": "Ancilla_ApplyConveyor:\n #_0897BE: LDA.w $03E4,X\n #_0897C1: SEC\n #_0897C2: SBC.b #$68 ; TILETYPE 68\n #_0897C4: TAY\n\n #_0897C5: LDA.w .speed_y,Y\n #_0897C8: STA.w $0C22,X\n\n #_0897CB: LDA.w .speed_x,Y\n #_0897CE: STA.w $0C2C,X\n\n #_0897D1: JSR Ancilla_Move_Y\n #_0897D4: JSR Ancilla_Move_X\n\n #_0897D7: LDA.w $0BFA,X\n #_0897DA: STA.b $72\n\n #_0897DC: LDA.w $0C0E,X\n #_0897DF: STA.b $73\n\n #_0897E1: RTS", + "file": "bank_08.asm" + }, + { + "name": "Bomb_CheckSpriteAndPlayerDamage", + "code": "Bomb_CheckSpriteAndPlayerDamage:\n #_089815: LDA.w $0C5E,X\n #_089818: BEQ .no_damage\n\n #_08981A: CMP.b #$09\n #_08981C: BCS .no_damage\n\n #_08981E: JSR Bomb_CheckSpriteDamage\n\n #_089821: LDA.w $037B\n #_089824: BEQ .link_vulnerable\n\n #_089826: TXA\n #_089827: INC A\n #_089828: CMP.w $02EC\n #_08982B: BNE EXIT_0897B5\n\n #_08982D: LDA.w $0308\n #_089830: AND.b #$80\n #_089832: BEQ EXIT_0897B5\n\n #_089834: LDA.w $0308\n #_089837: AND.b #$7F\n #_089839: STA.w $0308\n\n #_08983C: STZ.b $50\n\n.no_damage\n #_08983E: BRL EXIT_0897B5\n\n.link_vulnerable\n #_089841: LDA.b $4D\n #_089843: BNE .no_damage\n\n #_089845: LDA.b $46\n #_089847: BNE .no_damage\n\n #_089849: LDA.w $0C7C,X\n #_08984C: CMP.b $EE\n #_08984E: BNE .no_damage\n\n; ---------------------------------------------------------\n\n #_089850: LDA.b $22\n #_089852: STA.b $00\n\n #_089854: LDA.b $23\n #_089856: STA.b $08\n\n #_089858: LDA.b $20\n #_08985A: STA.b $01\n\n #_08985C: LDA.b $21\n #_08985E: STA.b $09\n\n #_089860: LDA.b #$10\n #_089862: STA.b $02\n\n #_089864: LDA.b #$18\n #_089866: STA.b $03\n\n #_089868: LDA.w $0C04,X\n #_08986B: STA.b $04\n\n #_08986D: LDA.w $0C18,X\n #_089870: STA.b $05\n\n #_089872: LDA.w $0BFA,X\n #_089875: STA.b $06\n\n #_089877: LDA.w $0C0E,X\n #_08987A: STA.b $07\n\n; ---------------------------------------------------------\n\n #_08987C: REP #$20\n\n #_08987E: LDA.b $04\n #_089880: CLC\n #_089881: ADC.w #$FFF0\n #_089884: STA.b $04\n\n #_089886: LDA.b $06\n #_089888: CLC\n #_089889: ADC.w #$FFF0\n #_08988C: STA.b $06\n\n #_08988E: SEP #$20\n\n #_089890: LDA.b $05\n #_089892: STA.b $0A\n\n #_089894: LDA.b $06\n #_089896: STA.b $05\n\n #_089898: LDA.b $07\n #_08989A: STA.b $0B\n\n #_08989C: LDA.b #$20\n #_08989E: STA.b $06\n #_0898A0: STA.b $07\n\n #_0898A2: JSL CheckIfHitBoxesOverlap_long\n #_0898A6: BCC .exit\n\n; ---------------------------------------------------------\n\n #_0898A8: LDA.w $0C04,X\n #_0898AB: CLC\n #_0898AC: ADC.b #$F8\n #_0898AE: STA.b $00\n\n #_0898B0: LDA.w $0C18,X\n #_0898B3: ADC.b #$FF\n #_0898B5: STA.b $01\n\n #_0898B7: LDA.w $0BFA,X\n #_0898BA: CLC\n #_0898BB: ADC.b #$F4\n #_0898BD: STA.b $02\n\n #_0898BF: LDA.w $0C0E,X\n #_0898C2: ADC.b #$FF\n #_0898C4: STA.b $03\n\n #_0898C6: PHX\n\n #_0898C7: JSR Bomb_GetDisplacementFromLink\n\n #_0898CA: LDA.w .recoil,Y\n #_0898CD: TAY\n\n #_0898CE: JSL Bomb_HijackSlot0ForRecoil\n #_0898D2: PLX\n\n; ---------------------------------------------------------\n\n #_0898D3: LDA.w $031F\n #_0898D6: BNE .exit\n\n #_0898D8: LDA.w $0FFC\n #_0898DB: CMP.b #$02\n #_0898DD: BEQ .exit\n\n #_0898DF: LDA.b $00\n #_0898E1: STA.b $27\n\n #_0898E3: LDA.b $01\n #_0898E5: STA.b $28\n\n #_0898E7: JSR Bomb_GetDisplacementFromLink\n\n #_0898EA: LDA.w .recoil_z,Y\n #_0898ED: STA.b $29\n #_0898EF: STA.w $02C7\n\n #_0898F2: LDA.w .recoil_timer,Y\n #_0898F5: STA.b $46\n\n #_0898F7: LDA.b #$01\n #_0898F9: STA.b $4D\n\n #_0898FB: LDA.b #$3A\n #_0898FD: STA.w $031F\n\n #_089900: LDA.w $0403\n #_089903: AND.b #$80\n #_089905: BNE .exit\n\n #_089907: LDA.l $7EF35B\n #_08990B: TAY\n\n #_08990C: LDA.w .link_damage,Y\n #_08990F: STA.w $0373\n\n.exit\n #_089912: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_HandleLiftLogic", + "code": "Ancilla_HandleLiftLogic:\n #_089976: LDA.w $03EA,X\n #_089979: BNE .not_liftable\n\n #_08997B: LDA.w $0385,X\n #_08997E: BEQ .not_airborne\n\n #_089980: BRL AncillaCarry_Airborne\n\n.not_airborne\n #_089983: STX.b $00\n\n #_089985: LDA.w $02EC\n #_089988: BEQ .link_not_close\n\n #_08998A: DEC A\n #_08998B: CMP.b $00\n #_08998D: BEQ .is_closest_for_lift\n\n #_08998F: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_LatchAltitudeAboveLink", + "code": "Ancilla_LatchAltitudeAboveLink:\n #_089A4F: LDA.b #$11\n #_089A51: STA.w $029E,X\n\n #_089A54: LDA.w $0BFA,X\n #_089A57: CLC\n #_089A58: ADC.b #$11\n #_089A5A: STA.w $0BFA,X\n\n #_089A5D: LDA.w $0C0E,X\n #_089A60: ADC.b #$00\n #_089A62: STA.w $0C0E,X\n\n #_089A65: STZ.w $0280,X\n\n #_089A68: BRA EXIT_089A94\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_LatchLinkCoordinates", + "code": "Ancilla_LatchLinkCoordinates:\n #_089A6A: TYA\n #_089A6B: ASL A\n #_089A6C: ASL A\n #_089A6D: ASL A\n #_089A6E: CLC\n #_089A6F: ADC.b $2F\n #_089A71: TAY\n\n #_089A72: LDA.b $20\n #_089A74: CLC\n #_089A75: ADC.w AncillaCarry_offset_y+0,Y\n #_089A78: STA.w $0BFA,X\n\n #_089A7B: LDA.b $21\n #_089A7D: ADC.w AncillaCarry_offset_y+1,Y\n #_089A80: STA.w $0C0E,X\n\n #_089A83: LDA.b $22\n #_089A85: CLC\n #_089A86: ADC.w AncillaCarry_offset_x+0,Y\n #_089A89: STA.w $0C04,X\n\n #_089A8C: LDA.b $23\n #_089A8E: ADC.w AncillaCarry_offset_x+1,Y\n #_089A91: STA.w $0C18,X\n\n; ---------------------------------------------------------\n\n#EXIT_089A94:\n #_089A94: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_HandleThrowLogic", + "code": "Ancilla_HandleThrowLogic:\n #_089A95: LDA.w $0380,X\n #_089A98: CMP.b #$03\n #_089A9A: BNE EXIT_089A94\n\n #_089A9C: LDA.w $0309\n #_089A9F: CMP.b #$02\n #_089AA1: BEQ AncillaCarry_HandleThrow\n\n #_089AA3: LDA.b $11\n #_089AA5: BNE .cant_throw\n\n #_089AA7: LDA.b $F6\n #_089AA9: ORA.b $F4\n #_089AAB: AND.b #$80\n #_089AAD: BNE AncillaCarry_HandleThrow\n\n.cant_throw\n #_089AAF: BRL AncillaCarry_HandleFalling\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaCarry_HandleThrow", + "code": "AncillaCarry_HandleThrow:\n #_089AB2: LDA.b $2F\n #_089AB4: LSR A\n #_089AB5: STA.w $0C72,X\n\n #_089AB8: TAY\n\n #_089AB9: LDA.b #$18\n #_089ABB: STA.w $0294,X\n\n #_089ABE: LDA.w AncillaCarry_throw_speed_y,Y\n #_089AC1: STA.w $0C22,X\n\n #_089AC4: LDA.w AncillaCarry_throw_speed_x,Y\n #_089AC7: STA.w $0C2C,X\n\n #_089ACA: LDA.b #$02\n #_089ACC: STA.w $0309\n\n #_089ACF: DEC A\n #_089AD0: STA.w $0385,X\n\n #_089AD3: STZ.w $02EC\n\n #_089AD6: STZ.w $0BF0,X\n #_089AD9: STZ.w $0380,X\n #_089ADC: STZ.w $0280,X\n\n #_089ADF: LDA.b #$13 ; SFX3.13\n #_089AE1: JSR Ancilla_SFX3_Pan\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaCarry_Airborne", + "code": "AncillaCarry_Airborne:\n #_089AE4: LDA.w $0C5E,X\n #_089AE7: BEQ .continue\n\n #_089AE9: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaCarry_HandleFalling", + "code": "AncillaCarry_HandleFalling:\n #_089BC6: LDA.w $0C5E,X\n #_089BC9: BNE EXIT_089C3D\n\n #_089BCB: LDA.b $5B\n #_089BCD: CMP.b #$02\n #_089BCF: BCC .continue\n\n #_089BD1: STZ.b $5E\n\n #_089BD3: TXA\n #_089BD4: INC A\n\n #_089BD5: CMP.w $02EC\n #_089BD8: BNE .exit\n\n #_089BDA: STZ.w $02EC\n\n #_089BDD: STZ.w $0C4A,X\n\n.exit\n #_089BE0: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_LatchCarriedPosition", + "code": "Ancilla_LatchCarriedPosition:\n #_089BEF: LDA.b $2E\n #_089BF1: ASL A\n #_089BF2: TAY\n\n #_089BF3: LDA.b #$0C\n #_089BF5: STA.b $5E\n\n #_089BF7: LDA.b $EE\n #_089BF9: STA.w $0C7C,X\n\n #_089BFC: LDA.w $0476\n #_089BFF: STA.w $03CA,X\n\n #_089C02: REP #$20\n\n #_089C04: LDA.b $24\n #_089C06: CMP.w #$FFFF\n #_089C09: BNE .positive\n\n #_089C0B: LDA.w #$0000\n\n.positive\n #_089C0E: EOR.w #$FFFF\n #_089C11: INC A\n\n #_089C12: CLC\n #_089C13: ADC.b $20\n\n #_089C15: CLC\n #_089C16: ADC.w AncillaCarry_offset_z,Y\n\n #_089C19: CLC\n #_089C1A: ADC.w #$0012\n #_089C1D: STA.b $00\n\n; ---------------------------------------------------------\n\n #_089C1F: LDA.b $22\n #_089C21: CLC\n #_089C22: ADC.w #$0008\n #_089C25: STA.b $02\n\n #_089C27: SEP #$20\n\n #_089C29: LDA.b $00\n #_089C2B: STA.w $0BFA,X\n\n #_089C2E: LDA.b $01\n #_089C30: STA.w $0C0E,X\n\n #_089C33: LDA.b $02\n #_089C35: STA.w $0C04,X\n\n #_089C38: LDA.b $03\n #_089C3A: STA.w $0C18,X\n\n; ---------------------------------------------------------\n\n#EXIT_089C3D:\n #_089C3D: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_LatchYCoordToZ", + "code": "Ancilla_LatchYCoordToZ:\n #_089C7F: LDA.w $0BFA,X\n #_089C82: STA.b $72\n\n #_089C84: LDA.w $0C0E,X\n #_089C87: STA.b $73\n\n #_089C89: STZ.b $0D\n #_089C8B: STZ.b $0C\n\n #_089C8D: LDA.w $0C72,X\n #_089C90: ASL A\n #_089C91: TAY\n\n #_089C92: CMP.b #$02\n #_089C94: BNE .continue\n\n #_089C96: LDA.w $029E,X\n #_089C99: STA.b $0C\n #_089C9B: BPL .continue\n\n #_089C9D: LDA.b #$FF\n #_089C9F: STA.b $0D\n\n; ---------------------------------------------------------\n\n.continue\n #_089CA1: REP #$20\n\n #_089CA3: LDA.b $0C\n #_089CA5: CMP.w #$FFFF\n #_089CA8: BNE .not_ground_impact\n\n #_089CAA: LDA.w #$0000\n\n.not_ground_impact\n #_089CAD: EOR.w #$FFFF\n #_089CB0: INC A\n #_089CB1: CLC\n #_089CB2: ADC.b $72\n #_089CB4: STA.b $0E\n\n #_089CB6: SEP #$20\n\n #_089CB8: LDA.b $0E\n #_089CBA: STA.w $0BFA,X\n\n #_089CBD: LDA.b $0F\n #_089CBF: STA.w $0C0E,X\n\n #_089CC2: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetYFrom_DP72", + "code": "Ancilla_SetYFrom_DP72:\n #_089CC3: LDA.b $73\n #_089CC5: STA.w $0C0E,X\n\n #_089CC8: LDA.b $72\n #_089CCA: STA.w $0BFA,X\n\n #_089CCD: RTS", + "file": "bank_08.asm" + }, + { + "name": "Bomb_GetDisplacementFromLink", + "code": "Bomb_GetDisplacementFromLink:\n #_089CCE: LDA.w $0C04,X\n #_089CD1: STA.b $06\n\n #_089CD3: LDA.w $0C18,X\n #_089CD6: STA.b $07\n\n #_089CD8: LDA.w $0BFA,X\n #_089CDB: STA.b $04\n\n #_089CDD: LDA.w $0C0E,X\n #_089CE0: STA.b $05\n\n; ---------------------------------------------------------\n\n #_089CE2: REP #$20\n\n #_089CE4: LDA.b $22\n #_089CE6: CLC\n #_089CE7: ADC.w #$0008\n\n #_089CEA: SEC\n #_089CEB: SBC.b $06\n #_089CED: BPL .positive_x\n\n #_089CEF: EOR.w #$FFFF\n #_089CF2: INC A\n\n.positive_x\n #_089CF3: STA.b $0A\n\n #_089CF5: LDA.b $20\n\n; ---------------------------------------------------------\n\n #_089CF7: CLC\n #_089CF8: ADC.w #$000C\n\n #_089CFB: SEC\n #_089CFC: SBC.b $04\n #_089CFE: BPL .positive_y\n\n #_089D00: EOR.w #$FFFF\n #_089D03: INC A\n\n.positive_y\n #_089D04: CLC\n #_089D05: ADC.b $0A\n #_089D07: AND.w #$00FC\n #_089D0A: LSR A\n #_089D0B: LSR A\n #_089D0C: TAY\n\n #_089D0D: SEP #$20\n\n #_089D0F: RTS", + "file": "bank_08.asm" + }, + { + "name": "BombDraw", + "code": "BombDraw:\n\n.char_and_prop\n #_089D10: db $6E, $26\n #_089D12: db $FF, $FF\n #_089D14: db $FF, $FF\n #_089D16: db $FF, $FF\n #_089D18: db $FF, $FF\n #_089D1A: db $FF, $FF\n\n #_089D1C: db $8C, $22\n #_089D1E: db $8C, $62\n #_089D20: db $8C, $A2\n #_089D22: db $8C, $E2\n #_089D24: db $FF, $FF\n #_089D26: db $FF, $FF\n\n #_089D28: db $84, $22\n #_089D2A: db $84, $62\n #_089D2C: db $84, $A2\n #_089D2E: db $84, $E2\n #_089D30: db $FF, $FF\n #_089D32: db $FF, $FF\n\n #_089D34: db $88, $22\n #_089D36: db $88, $62\n #_089D38: db $88, $A2\n #_089D3A: db $88, $E2\n #_089D3C: db $FF, $FF\n #_089D3E: db $FF, $FF\n\n #_089D40: db $86, $22\n #_089D42: db $88, $22\n #_089D44: db $88, $62\n #_089D46: db $88, $A2\n #_089D48: db $88, $E2\n #_089D4A: db $FF, $FF\n\n #_089D4C: db $86, $22\n #_089D4E: db $86, $62\n #_089D50: db $86, $E2\n #_089D52: db $86, $E2\n #_089D54: db $FF, $FF\n #_089D56: db $FF, $FF\n\n #_089D58: db $86, $E2\n #_089D5A: db $86, $22\n #_089D5C: db $86, $22\n #_089D5E: db $86, $62\n #_089D60: db $86, $A2\n #_089D62: db $86, $A2\n\n #_089D64: db $8A, $A2\n #_089D66: db $8A, $62\n #_089D68: db $8A, $22\n #_089D6A: db $8A, $62\n #_089D6C: db $8A, $62\n #_089D6E: db $8A, $E2\n\n #_089D70: db $9B, $22\n #_089D72: db $9B, $A2\n #_089D74: db $9B, $62\n #_089D76: db $9B, $E2\n #_089D78: db $9B, $A2\n #_089D7A: db $9B, $22\n\n; ---------------------------------------------------------\n\n.offset\n #_089D7C: dw -8, -8\n #_089D80: dw 0, 0\n #_089D84: dw 0, 0\n #_089D88: dw 0, 0\n #_089D8C: dw 0, 0\n #_089D90: dw 0, 0\n\n #_089D94: dw -8, -8\n #_089D98: dw -8, 0\n #_089D9C: dw 0, -8\n #_089DA0: dw 0, 0\n #_089DA4: dw 0, 0\n #_089DA8: dw 0, 0\n\n #_089DAC: dw -16, -16\n #_089DB0: dw -16, 0\n #_089DB4: dw 0, -16\n #_089DB8: dw 0, 0\n #_089DBC: dw 0, 0\n #_089DC0: dw 0, 0\n\n #_089DC4: dw -16, -16\n #_089DC8: dw -16, 0\n #_089DCC: dw 0, -16\n #_089DD0: dw 0, 0\n #_089DD4: dw 0, 0\n #_089DD8: dw 0, 0\n\n #_089DDC: dw -8, -8\n #_089DE0: dw -21, -22\n #_089DE4: dw -21, 8\n #_089DE8: dw 9, -22\n #_089DEC: dw 9, 8\n #_089DF0: dw 0, 0\n\n #_089DF4: dw -6, -15\n #_089DF8: dw 0, -1\n #_089DFC: dw -16, -2\n #_089E00: dw -8, -7\n #_089E04: dw 0, 0\n #_089E08: dw 0, 0\n\n #_089E0C: dw -9, -4\n #_089E10: dw -21, -5\n #_089E14: dw -12, -18\n #_089E18: dw -11, 7\n #_089E1C: dw 0, -15\n #_089E20: dw 4, -2\n\n #_089E24: dw -9, -4\n #_089E28: dw -22, -5\n #_089E2C: dw -13, -20\n #_089E30: dw -11, 8\n #_089E34: dw 1, -16\n #_089E38: dw 5, -2\n\n #_089E3C: dw -20, 4\n #_089E40: dw -12, -19\n #_089E44: dw -9, 16\n #_089E48: dw -5, -2\n #_089E4C: dw 2, -9\n #_089E50: dw 10, 6\n\n; ---------------------------------------------------------\n\n.oam_size\n #_089E54: db $02\n #_089E55: db $01\n #_089E56: db $01\n #_089E57: db $01\n #_089E58: db $01\n #_089E59: db $01\n\n #_089E5A: db $00\n #_089E5B: db $00\n #_089E5C: db $00\n #_089E5D: db $00\n #_089E5E: db $01\n #_089E5F: db $01\n\n #_089E60: db $02\n #_089E61: db $02\n #_089E62: db $02\n #_089E63: db $02\n #_089E64: db $01\n #_089E65: db $01\n\n #_089E66: db $02\n #_089E67: db $02\n #_089E68: db $02\n #_089E69: db $02\n #_089E6A: db $01\n #_089E6B: db $01\n\n #_089E6C: db $02\n #_089E6D: db $02\n #_089E6E: db $02\n #_089E6F: db $02\n #_089E70: db $02\n #_089E71: db $01\n\n #_089E72: db $02\n #_089E73: db $02\n #_089E74: db $02\n #_089E75: db $02\n #_089E76: db $01\n #_089E77: db $01\n\n #_089E78: db $02\n #_089E79: db $02\n #_089E7A: db $02\n #_089E7B: db $02\n #_089E7C: db $02\n #_089E7D: db $02\n\n #_089E7E: db $02\n #_089E7F: db $02\n #_089E80: db $02\n #_089E81: db $02\n #_089E82: db $02\n #_089E83: db $02\n\n #_089E84: db $00\n #_089E85: db $00\n #_089E86: db $00\n #_089E87: db $00\n #_089E88: db $00\n #_089E89: db $00\n\n; ---------------------------------------------------------\n\n.data_offset\n #_089E8A: db $00\n #_089E8B: db $06\n #_089E8C: db $0C\n #_089E8D: db $12\n #_089E8E: db $18\n #_089E8F: db $1E\n #_089E90: db $24\n #_089E91: db $2A\n #_089E92: db $30\n\n; ---------------------------------------------------------\n\n.object_count\n #_089E93: db $01\n #_089E94: db $04\n #_089E95: db $04\n #_089E96: db $04\n #_089E97: db $04\n #_089E98: db $04\n #_089E99: db $05\n #_089E9A: db $04\n #_089E9B: db $06\n #_089E9C: db $06\n #_089E9D: db $06\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Bomb", + "code": "AncillaDraw_Bomb:\n #_089E9E: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_089EA1: REP #$20\n\n #_089EA3: LDA.w $029E,X\n #_089EA6: AND.w #$00FF\n #_089EA9: CMP.w #$0080\n #_089EAC: BCC .positive_z\n\n #_089EAE: ORA.w #$FF00\n\n; ---------------------------------------------------------\n\n.positive_z\n #_089EB1: STA.b $04\n #_089EB3: BEQ .not_max_priority\n\n #_089EB5: CMP.w #$FFFF\n #_089EB8: BEQ .not_max_priority\n\n #_089EBA: LDA.w $0380,X\n #_089EBD: AND.w #$00FF\n #_089EC0: CMP.w #$0003\n #_089EC3: BEQ .not_max_priority\n\n #_089EC5: LDA.w $0280,X\n #_089EC8: AND.w #$00FF\n #_089ECB: BEQ .not_max_priority\n\n #_089ECD: LDA.w #$3000\n #_089ED0: STA.b $64\n\n; ---------------------------------------------------------\n\n.not_max_priority\n #_089ED2: LDA.w #$0000\n #_089ED5: CLC\n #_089ED6: ADC.b $04\n\n #_089ED8: EOR.w #$FFFF\n #_089EDB: INC A\n #_089EDC: CLC\n #_089EDD: ADC.b $00\n #_089EDF: STA.b $00\n\n #_089EE1: SEP #$20\n\n #_089EE3: LDY.w $0C5E,X\n\n #_089EE6: LDA.w Bomb_anim_step,Y\n #_089EE9: TAY\n\n #_089EEA: LDA.w BombDraw_data_offset,Y\n #_089EED: ASL A\n #_089EEE: TAY\n\n #_089EEF: ASL A\n #_089EF0: STA.b $04\n\n #_089EF2: STZ.b $05\n #_089EF4: STZ.b $0A\n\n #_089EF6: LDA.b #$02\n #_089EF8: STA.b $0B\n\n; ---------------------------------------------------------\n\n #_089EFA: LDA.w $0C5E,X\n #_089EFD: BNE .dont_flash\n\n #_089EFF: LDA.b #$04\n #_089F01: STA.b $0B\n\n #_089F03: LDA.w $039F,X\n #_089F06: CMP.b #$20\n #_089F08: BCS .dont_flash\n\n #_089F0A: AND.b #$0E\n #_089F0C: STA.b $0B\n\n; ---------------------------------------------------------\n\n.dont_flash\n #_089F0E: PHX\n #_089F0F: PHY\n\n #_089F10: LDA.w $0C5E,X\n #_089F13: STA.b $08\n #_089F15: BNE .continue\n\n #_089F17: LDA.w $0385,X\n #_089F1A: BNE .not_deferred\n\n #_089F1C: LDA.w $0E20\n #_089F1F: CMP.b #$92 ; SPRITE 92\n #_089F21: BEQ .outmaneuver_this\n\n #_089F23: TXY\n #_089F24: INY\n #_089F25: CPY.w $02EC\n #_089F28: BNE .not_deferred\n\n; ---------------------------------------------------------\n\n.outmaneuver_this\n #_089F2A: LDA.w $0308\n #_089F2D: AND.b #$80\n #_089F2F: BEQ .not_carried\n\n #_089F31: LDA.w $0380,X\n #_089F34: CMP.b #$03\n #_089F36: BEQ .not_deferred\n\n #_089F38: LDA.b $2F\n #_089F3A: BNE .not_deferred\n\n.not_carried\n #_089F3C: LDA.b #$0C\n #_089F3E: JSR Ancilla_AllocateOAMFromRegion_B_or_E\n\n #_089F41: BRA .continue\n\n; ---------------------------------------------------------\n\n.not_deferred\n #_089F43: LDA.w $0FB3\n #_089F46: BEQ .continue\n\n #_089F48: LDA.w $0C7C,X\n #_089F4B: BEQ .continue\n\n #_089F4D: LDA.w $0385,X\n #_089F50: BNE .hardcode_slot\n\n #_089F52: TXY\n #_089F53: INY\n #_089F54: CPY.w $02EC\n #_089F57: BNE .continue\n\n #_089F59: LDA.w $0308\n #_089F5C: BPL .continue\n\n; ---------------------------------------------------------\n\n.hardcode_slot\n #_089F5E: REP #$20\n\n #_089F60: LDA.w #$00D0\n #_089F63: CLC\n #_089F64: ADC.w #$0800\n #_089F67: STA.b $90\n\n #_089F69: LDA.w #$0034\n #_089F6C: CLC\n #_089F6D: ADC.w #$0A20\n #_089F70: STA.b $92\n\n #_089F72: SEP #$20\n\n; ---------------------------------------------------------\n\n.continue\n #_089F74: LDY.b $08\n\n #_089F76: LDA.w BombDraw_object_count,Y\n #_089F79: STA.b $08\n\n #_089F7B: CPY.b #$00\n #_089F7D: BNE .zero_objects\n\n #_089F7F: LDA.w $03E4,X\n #_089F82: CMP.b #$09 ; TILETYPE 09\n #_089F84: BEQ .am_on_shallow_water\n\n #_089F86: CMP.b #$40\n #_089F88: BNE .zero_objects\n\n.am_on_shallow_water\n #_089F8A: LDY.b #$08\n #_089F8C: BRA .this_many\n\n.zero_objects\n #_089F8E: LDY.b #$00\n\n.this_many\n #_089F90: LDA.b $00\n #_089F92: STA.b $0C\n\n #_089F94: LDA.b $01\n #_089F96: STA.b $0D\n\n #_089F98: LDA.b $02\n #_089F9A: STA.b $0E\n\n #_089F9C: LDA.b $03\n #_089F9E: STA.b $0F\n\n #_089FA0: STZ.b $06\n\n #_089FA2: PLX\n\n #_089FA3: JSR AncillaDraw_Explosion\n\n #_089FA6: PLX\n\n #_089FA7: JSL AncillaDraw_BombExtraStuff\n #_089FAB: BCS .exit\n\n #_089FAD: LDX.b $0A\n #_089FAF: JSR AncillaDraw_Shadow\n\n #_089FB2: LDX.w $0FA0\n\n.exit\n #_089FB5: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla08_DoorDebris", + "code": "Ancilla08_DoorDebris:\n #_089FB6: JSR AncillaDraw_DoorDebris\n\n #_089FB9: DEC.w $03C0,X\n #_089FBC: BPL .exit\n\n #_089FBE: LDA.b #$07\n #_089FC0: STA.w $03C0,X\n\n #_089FC3: INC.w $03C2,X\n\n #_089FC6: LDA.w $03C2,X\n #_089FC9: CMP.b #$04\n #_089FCB: BNE .exit\n\n #_089FCD: STZ.w $0C4A,X\n\n.exit\n #_089FD0: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_DoorDebris", + "code": "AncillaDraw_DoorDebris:\n #_08A091: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08A094: TXA\n #_08A095: ASL A\n #_08A096: TAY\n\n #_08A097: REP #$20\n\n #_08A099: LDA.w $03BA,Y\n #_08A09C: SEC\n #_08A09D: SBC.b $E8\n #_08A09F: STA.b $0C\n\n #_08A0A1: LDA.w $03B6,Y\n #_08A0A4: SEC\n #_08A0A5: SBC.b $E2\n #_08A0A7: STA.b $0E\n\n #_08A0A9: SEP #$20\n\n #_08A0AB: PHX\n\n #_08A0AC: STZ.b $06\n\n #_08A0AE: LDA.w $03C2,X\n #_08A0B1: ASL A\n #_08A0B2: ASL A\n #_08A0B3: STA.b $04\n #_08A0B5: STA.b $08\n\n #_08A0B7: LDA.w $03BE,X\n #_08A0BA: ASL A\n #_08A0BB: ASL A\n #_08A0BC: ASL A\n #_08A0BD: ASL A\n #_08A0BE: STA.b $0A\n\n #_08A0C0: CLC\n #_08A0C1: ADC.b $04\n #_08A0C3: TAX\n\n; ---------------------------------------------------------\n\n #_08A0C4: LDY.b #$00\n\n.next_object\n #_08A0C6: PHX\n\n #_08A0C7: LDA.b $0A\n #_08A0C9: ASL A\n #_08A0CA: STA.b $04\n\n #_08A0CC: LDA.b $08\n #_08A0CE: ASL A\n #_08A0CF: CLC\n #_08A0D0: ADC.b $04\n #_08A0D2: STA.b $04\n\n #_08A0D4: LDA.b $06\n #_08A0D6: ASL A\n #_08A0D7: ASL A\n #_08A0D8: CLC\n #_08A0D9: ADC.b $04\n #_08A0DB: TAX\n\n #_08A0DC: REP #$20\n\n #_08A0DE: LDA.w .offset+0,X\n #_08A0E1: CLC\n #_08A0E2: ADC.b $0C\n #_08A0E4: STA.b $00\n\n #_08A0E6: LDA.w .offset+2,X\n #_08A0E9: CLC\n #_08A0EA: ADC.b $0E\n #_08A0EC: STA.b $02\n\n #_08A0EE: SEP #$20\n\n #_08A0F0: PLX\n\n #_08A0F1: JSR Ancilla_SetOAM_XY\n\n #_08A0F4: LDA.w .char_and_prop+0,X\n #_08A0F7: STA.b ($90),Y\n\n #_08A0F9: INY\n\n #_08A0FA: LDA.w .char_and_prop+1,X\n #_08A0FD: AND.b #$C0\n #_08A0FF: ORA.b $65\n #_08A101: STA.b ($90),Y\n\n #_08A103: INY\n\n #_08A104: PHY\n #_08A105: TYA\n\n #_08A106: SEC\n #_08A107: SBC.b #$04\n\n #_08A109: LSR A\n #_08A10A: LSR A\n #_08A10B: TAY\n\n #_08A10C: LDA.b #$00\n #_08A10E: STA.b ($92),Y\n\n #_08A110: PLY\n #_08A111: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08A114: INX\n #_08A115: INX\n\n #_08A116: LDA.b $06\n #_08A118: INC A\n #_08A119: STA.b $06\n\n #_08A11B: CMP.b #$02\n #_08A11D: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_08A11F: PLX\n\n #_08A120: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla09_Arrow", + "code": "Ancilla09_Arrow:\n #_08A131: LDA.b $11\n #_08A133: BEQ .good_submode\n\n #_08A135: BRL .proceed_to_draw\n\n.good_submode\n #_08A138: DEC.w $0C5E,X\n\n #_08A13B: LDA.w $0C5E,X\n #_08A13E: BMI .timer_done\n\n #_08A140: CMP.b #$04\n #_08A142: BCC .start_moving\n\n #_08A144: BRL .exit\n\n; ---------------------------------------------------------\n\n.timer_done\n #_08A147: LDA.b #$FF\n #_08A149: STA.w $0C5E,X\n\n.start_moving\n #_08A14C: JSR Ancilla_Move_Y\n #_08A14F: JSR Ancilla_Move_X\n\n #_08A152: LDA.l $7EF340\n #_08A156: AND.b #$04\n #_08A158: BEQ .no_sparkle\n\n #_08A15A: LDA.b $1A\n #_08A15C: AND.b #$01\n #_08A15E: BNE .no_sparkle\n\n #_08A160: PHX\n\n #_08A161: JSL AncillaAdd_SilverArrowSparkle\n\n #_08A165: PLX\n\n.no_sparkle\n #_08A166: LDA.b #$FF\n #_08A168: STA.w $03A9,X\n\n #_08A16B: JSR Ancilla_CheckSpriteCollision\n #_08A16E: BCS .sprite_collision\n\n #_08A170: JSR Ancilla_CheckTileCollision\n #_08A173: BCS .tile_collision\n\n #_08A175: BRL .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.tile_collision\n #_08A178: TYA\n #_08A179: STA.w $03C5,X\n\n #_08A17C: LDA.w $0C72,X\n #_08A17F: AND.b #$03\n #_08A181: ASL A\n #_08A182: TAY\n\n #_08A183: LDA.w .offset_y+0,Y\n #_08A186: CLC\n #_08A187: ADC.w $0BFA,X\n #_08A18A: STA.w $0BFA,X\n\n #_08A18D: LDA.w .offset_y+1,Y\n #_08A190: ADC.w $0C0E,X\n #_08A193: STA.w $0C0E,X\n\n #_08A196: LDA.w .offset_x+0,Y\n #_08A199: CLC\n #_08A19A: ADC.w $0C04,X\n #_08A19D: STA.w $0C04,X\n\n #_08A1A0: LDA.w .offset_x+1,Y\n #_08A1A3: ADC.w $0C18,X\n #_08A1A6: STA.w $0C18,X\n\n #_08A1A9: STZ.w $0B88\n\n #_08A1AC: BRA .become_stopped\n\n; ---------------------------------------------------------\n\n.sprite_collision\n #_08A1AE: LDA.w $0C04,X\n #_08A1B1: SEC\n #_08A1B2: SBC.w $0D10,Y\n #_08A1B5: STA.w $0C2C,X\n\n #_08A1B8: LDA.w $0BFA,X\n #_08A1BB: SEC\n #_08A1BC: SBC.w $0D00,Y\n #_08A1BF: CLC\n #_08A1C0: ADC.w $0F70,Y\n #_08A1C3: STA.w $0C22,X\n\n #_08A1C6: TYA\n #_08A1C7: STA.w $03A9,X\n\n #_08A1CA: LDA.w $0E20,Y\n #_08A1CD: CMP.b #$65 ; SPRITE 65\n #_08A1CF: BNE .not_arrow_game\n\n #_08A1D1: LDA.w $0D90,Y\n #_08A1D4: CMP.b #$01\n #_08A1D6: BNE .not_arrow_game_target\n\n #_08A1D8: LDA.b #$2D ; SFX3.2D\n #_08A1DA: STA.w $012F\n\n #_08A1DD: LDA.b #$80\n #_08A1DF: STA.w $0E10,Y\n #_08A1E2: STA.w $0F10 ; !HARDCODED sprite slot\n\n #_08A1E5: LDA.w $0B88\n #_08A1E8: CMP.b #$09\n #_08A1EA: BCS .the_99_dream\n\n #_08A1EC: INC.w $0B88\n\n.the_99_dream\n #_08A1EF: LDA.w $0B88\n #_08A1F2: STA.w $0DA0,Y\n\n #_08A1F5: LDA.w $0ED0,Y\n #_08A1F8: INC A\n #_08A1F9: STA.w $0ED0,Y\n\n #_08A1FC: BRA .become_stopped\n\n; ---------------------------------------------------------\n\n.not_arrow_game_target\n #_08A1FE: LDA.b #$04\n #_08A200: STA.w $0EE0,Y\n\n.not_arrow_game\n #_08A203: STZ.w $0B88\n\n; ---------------------------------------------------------\n\n.become_stopped\n #_08A206: LDA.w $0E20,Y\n #_08A209: CMP.b #$1B ; SPRITE 1B\n #_08A20B: BEQ .not_enemy_arrow\n\n #_08A20D: LDA.b #$08 ; SFX2.08\n #_08A20F: JSR Ancilla_SFX2_Pan\n\n.not_enemy_arrow\n #_08A212: STZ.w $0C5E,X\n\n #_08A215: LDA.b #$0A ; ANCILLA 0A\n #_08A217: STA.w $0C4A,X\n\n #_08A21A: LDA.b #$01\n #_08A21C: STA.w $03B1,X\n\n #_08A21F: LDA.w $03C5,X\n #_08A222: BEQ .proceed_to_draw\n\n #_08A224: REP #$20\n\n #_08A226: LDA.b $E0\n #_08A228: SEC\n #_08A229: SBC.b $E2\n #_08A22B: CLC\n #_08A22C: ADC.w $0C04,X\n #_08A22F: STA.b $00\n\n #_08A231: LDA.b $E6\n #_08A233: SEC\n #_08A234: SBC.b $E8\n #_08A236: CLC\n #_08A237: ADC.w $0BFA,X\n #_08A23A: STA.b $02\n\n #_08A23C: SEP #$20\n\n #_08A23E: LDA.b $00\n #_08A240: STA.w $0C04,X\n\n #_08A243: LDA.b $02\n #_08A245: STA.w $0BFA,X\n\n #_08A248: BRA .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.exit\n #_08A24A: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Arrow", + "code": "AncillaDraw_Arrow:\n #_08A36E: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08A371: LDA.w $0280,X\n #_08A374: BEQ .normal_priority\n\n #_08A376: LDA.b #$30\n #_08A378: STA.b $65\n\n.normal_priority\n #_08A37A: REP #$20\n\n #_08A37C: LDA.b $00\n #_08A37E: STA.b $0C\n\n #_08A380: LDA.b $02\n #_08A382: STA.b $0E\n #_08A384: STA.b $04\n\n #_08A386: LDA.w $03C5,X\n #_08A389: AND.w #$00FF\n #_08A38C: BEQ .regular_collision\n\n; ---------------------------------------------------------\n\n #_08A38E: LDA.b $E8\n #_08A390: SEC\n #_08A391: SBC.b $E6\n #_08A393: CLC\n #_08A394: ADC.b $0C\n #_08A396: STA.b $0C\n\n #_08A398: LDA.b $E2\n #_08A39A: SEC\n #_08A39B: SBC.b $E0\n #_08A39D: CLC\n #_08A39E: ADC.b $0E\n #_08A3A0: STA.b $0E\n #_08A3A2: STA.b $04\n\n; ---------------------------------------------------------\n\n.regular_collision\n #_08A3A4: SEP #$20\n\n #_08A3A6: LDA.w $0C5E,X\n #_08A3A9: STA.b $07\n\n #_08A3AB: LDA.w $0C72,X\n #_08A3AE: AND.b #$FB\n #_08A3B0: TAY\n\n #_08A3B1: LDA.w $0C4A,X\n #_08A3B4: CMP.b #$0A ; ANCILLA 0A\n #_08A3B6: BNE .not_halted\n\n #_08A3B8: LDA.w $0C5E,X\n #_08A3BB: AND.b #$08\n #_08A3BD: BEQ .wiggle\n\n #_08A3BF: LDA.b #$01\n #_08A3C1: BRA .continue\n\n.wiggle\n #_08A3C3: LDA.w $0C5E,X\n #_08A3C6: AND.b #$03\n\n; ---------------------------------------------------------\n\n.continue\n #_08A3C8: STA.b $0A\n\n #_08A3CA: TYA\n #_08A3CB: ASL A\n #_08A3CC: ASL A\n #_08A3CD: CLC\n #_08A3CE: ADC.b #$08\n #_08A3D0: CLC\n #_08A3D1: ADC.b $0A\n #_08A3D3: TAY\n\n #_08A3D4: BRA .get_palette\n\n; ---------------------------------------------------------\n\n.not_halted\n #_08A3D6: LDA.w $0C5E,X\n #_08A3D9: BMI .get_palette\n\n #_08A3DB: TYA\n #_08A3DC: ORA.b #$04\n #_08A3DE: TAY\n\n; ---------------------------------------------------------\n\n.get_palette\n #_08A3DF: PHX\n\n #_08A3E0: TYA\n #_08A3E1: ASL A\n #_08A3E2: ASL A\n #_08A3E3: TAX\n\n #_08A3E4: LDY.b #$02\n #_08A3E6: LDA.l $7EF340\n\n #_08A3EA: AND.b #$04\n #_08A3EC: BNE .silvers\n\n #_08A3EE: LDY.b #$04\n\n.silvers\n #_08A3F0: STY.b $74\n\n #_08A3F2: LDY.b #$00\n #_08A3F4: STZ.b $06\n\n; ---------------------------------------------------------\n\n.next_object\n #_08A3F6: LDA.w .char_and_prop+0,X\n #_08A3F9: CMP.b #$FF\n #_08A3FB: BEQ .skip\n\n #_08A3FD: STA.b $72\n\n #_08A3FF: PHX\n\n #_08A400: TXA\n #_08A401: ASL A\n #_08A402: TAX\n\n #_08A403: REP #$20\n\n #_08A405: LDA.w .offset+0,X\n #_08A408: CLC\n #_08A409: ADC.b $0C\n #_08A40B: STA.b $00\n\n #_08A40D: LDA.w .offset+2,X\n #_08A410: CLC\n #_08A411: ADC.b $0E\n #_08A413: STA.b $02\n\n #_08A415: SEP #$20\n\n #_08A417: JSR Ancilla_SetOAM_XY\n\n #_08A41A: PLX\n\n #_08A41B: LDA.b $72\n #_08A41D: STA.b ($90),Y\n\n #_08A41F: INY\n\n #_08A420: LDA.w .char_and_prop+1,X\n #_08A423: AND.b #$C1\n #_08A425: ORA.b $74\n #_08A427: ORA.b $65\n #_08A429: STA.b ($90),Y\n\n #_08A42B: INY\n\n #_08A42C: PHY\n\n #_08A42D: TYA\n #_08A42E: SEC\n #_08A42F: SBC.b #$04\n #_08A431: LSR A\n #_08A432: LSR A\n #_08A433: TAY\n\n #_08A434: LDA.b #$00\n #_08A436: STA.b ($92),Y\n\n #_08A438: PLY\n\n; ---------------------------------------------------------\n\n.skip\n #_08A439: INX\n #_08A43A: INX\n\n #_08A43B: INC.b $06\n\n #_08A43D: LDA.b $06\n #_08A43F: CMP.b #$02\n #_08A441: BEQ .done\n\n; ---------------------------------------------------------\n\n #_08A443: BRL .next_object\n\n.done\n #_08A446: PLX\n\n #_08A447: LDY.b #$01\n\n #_08A449: LDA.b ($90),Y\n #_08A44B: CMP.b #$F0\n #_08A44D: BNE .exit\n\n #_08A44F: LDY.b #$05\n\n #_08A451: LDA.b ($90),Y\n #_08A453: CMP.b #$F0\n #_08A455: BNE .exit\n\n #_08A457: BRL Arrow_DeleteSelf\n\n.exit\n #_08A45A: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla0A_ArrowInTheWall", + "code": "Ancilla0A_ArrowInTheWall:\n #_08A45B: LDY.w $03A9,X\n #_08A45E: BMI .not_sprite_collided\n\n #_08A460: LDA.w $0DD0,Y\n #_08A463: CMP.b #$09\n #_08A465: BCC Arrow_DeleteSelf\n\n #_08A467: LDA.w $0F70,Y\n #_08A46A: BMI Arrow_DeleteSelf\n\n #_08A46C: LDA.w $0BA0,Y\n #_08A46F: BNE Arrow_DeleteSelf\n\n #_08A471: LDA.w $0CAA,Y\n #_08A474: AND.b #$02\n #_08A476: BNE Arrow_DeleteSelf\n\n; ---------------------------------------------------------\n\n #_08A478: STZ.b $00\n\n #_08A47A: LDA.w $0C2C,X\n #_08A47D: BPL .positive_x\n\n #_08A47F: DEC.b $00\n\n.positive_x\n #_08A481: CLC\n #_08A482: ADC.w $0D10,Y\n #_08A485: STA.w $0C04,X\n\n #_08A488: LDA.w $0D30,Y\n #_08A48B: ADC.b $00\n #_08A48D: STA.w $0C18,X\n\n; ---------------------------------------------------------\n\n #_08A490: STZ.b $00\n\n #_08A492: LDA.w $0C22,X\n #_08A495: BPL .positive_y\n\n #_08A497: DEC.b $00\n\n.positive_y\n #_08A499: CLC\n #_08A49A: ADC.w $0D00,Y\n #_08A49D: PHP\n\n #_08A49E: SEC\n #_08A49F: SBC.w $0F70,Y\n #_08A4A2: STA.w $0BFA,X\n\n #_08A4A5: LDA.w $0D20,Y\n #_08A4A8: SBC.b #$00\n\n #_08A4AA: PLP\n #_08A4AB: ADC.b $00\n #_08A4AD: STA.w $0C0E,X\n\n; ---------------------------------------------------------\n\n.not_sprite_collided\n #_08A4B0: LDA.b $11\n #_08A4B2: BEQ .continue\n\n #_08A4B4: BRA .proceed_to_draw\n\n.continue\n #_08A4B6: DEC.w $03B1,X\n\n #_08A4B9: LDA.w $03B1,X\n #_08A4BC: BNE .proceed_to_draw\n\n #_08A4BE: LDA.b #$02\n #_08A4C0: STA.w $03B1,X\n\n #_08A4C3: INC.w $0C5E,X\n\n #_08A4C6: LDA.w $0C5E,X\n #_08A4C9: CMP.b #$09\n #_08A4CB: BEQ Arrow_DeleteSelf\n\n #_08A4CD: AND.b #$08\n #_08A4CF: BEQ .proceed_to_draw\n\n #_08A4D1: LDA.b #$80\n #_08A4D3: STA.w $03B1,X\n\n; ---------------------------------------------------------\n\n.proceed_to_draw\n #_08A4D6: JML AncillaDraw_Arrow\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Arrow_DeleteSelf", + "code": "Arrow_DeleteSelf:\n #_08A4DA: BRL Ancilla_DeleteSelf\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla0B_IceRodShot", + "code": "Ancilla0B_IceRodShot:\n #_08A4DD: LDA.b $11\n #_08A4DF: BEQ .continue\n\n #_08A4E1: BRA .generate_sparkle\n\n.continue\n #_08A4E3: DEC.w $03B1,X\n #_08A4E6: BPL .delay_a\n\n #_08A4E8: LDA.w $0C5E,X\n #_08A4EB: INC A\n #_08A4EC: STA.w $0C5E,X\n\n #_08A4EF: AND.b #$FE\n #_08A4F1: BEQ .delay_b\n\n #_08A4F3: LDA.b #$01\n #_08A4F5: STA.w $0C54,X\n\n #_08A4F8: LDA.w $0C5E,X\n #_08A4FB: AND.b #$07\n #_08A4FD: ORA.b #$04\n #_08A4FF: STA.w $0C5E,X\n\n; ---------------------------------------------------------\n\n.delay_b\n #_08A502: LDA.b #$03\n #_08A504: STA.w $03B1,X\n\n; ---------------------------------------------------------\n\n.delay_a\n #_08A507: LDA.w $0C54,X\n #_08A50A: BEQ .generate_sparkle\n\n #_08A50C: JSR Ancilla_BoundsCheck\n\n #_08A50F: JSR Ancilla_Move_Y\n #_08A512: JSR Ancilla_Move_X\n\n #_08A515: JSR Ancilla_CheckSpriteCollision\n #_08A518: BCS .sprite_collision\n\n #_08A51A: JSR Ancilla_CheckTileCollision\n #_08A51D: BCC .generate_sparkle\n\n.sprite_collision\n #_08A51F: LDA.b #$11 ; ANCILLA 11\n #_08A521: STA.w $0C4A,X\n\n #_08A524: TAY\n\n #_08A525: LDA.w AncillaObjectAllocation,Y\n #_08A528: STA.w $0C90,X\n\n #_08A52B: STZ.w $0C5E,X\n\n #_08A52E: LDA.b #$04\n #_08A530: STA.w $03B1,X\n\n.generate_sparkle\n #_08A533: BRL AncillaAdd_IceRodSparkle\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla11_IceRodWallHit", + "code": "Ancilla11_IceRodWallHit:\n #_08A536: DEC.w $03B1,X\n #_08A539: BPL .delay\n\n #_08A53B: LDA.b #$07\n #_08A53D: STA.w $03B1,X\n\n #_08A540: INC.w $0C5E,X\n\n #_08A543: LDA.w $0C5E,X\n #_08A546: CMP.b #$02\n #_08A548: BNE .delay\n\n #_08A54A: STZ.w $0C4A,X\n\n #_08A54D: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_IceRodWallHit", + "code": "AncillaDraw_IceRodWallHit:\n #_08A571: JSR Ancilla_PrepOAMCoord\n\n #_08A574: PHX\n\n #_08A575: LDA.w $0C90,X\n #_08A578: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08A57B: LDA.w $0C5E,X\n #_08A57E: ASL A\n #_08A57F: ASL A\n #_08A580: ASL A\n #_08A581: TAX\n\n; ---------------------------------------------------------\n\n #_08A582: LDY.b #$00\n\n #_08A584: STZ.b $04\n\n.next_object\n #_08A586: REP #$20\n\n #_08A588: LDA.w .offset+0,X\n #_08A58B: AND.w #$00FF\n #_08A58E: CMP.w #$0080\n #_08A591: BCC .x_positive\n\n #_08A593: ORA.w #$FF00\n\n.x_positive\n #_08A596: CLC\n #_08A597: ADC.b $00\n #_08A599: STA.b $08\n\n #_08A59B: LDA.w .offset+1,X\n #_08A59E: AND.w #$00FF\n #_08A5A1: CMP.w #$0080\n #_08A5A4: BCC .y_positive\n\n #_08A5A6: ORA.w #$FF00\n\n.y_positive\n #_08A5A9: CLC\n #_08A5AA: ADC.b $02\n #_08A5AC: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_08A5AE: SEP #$20\n\n #_08A5B0: PHX\n #_08A5B1: LDX.b #$F0\n\n #_08A5B3: LDA.b $09\n #_08A5B5: BNE .off_screen\n\n #_08A5B7: LDA.b $0B\n #_08A5B9: BNE .off_screen\n\n #_08A5BB: LDA.b $0A\n #_08A5BD: STA.b ($90),Y\n\n #_08A5BF: LDA.b $08\n #_08A5C1: CMP.b #$F0\n #_08A5C3: BCS .off_screen\n\n #_08A5C5: TAX\n\n.off_screen\n #_08A5C6: INY\n\n #_08A5C7: TXA\n #_08A5C8: STA.b ($90),Y\n\n #_08A5CA: INY\n\n #_08A5CB: PLX\n #_08A5CC: LDA.w .char_and_prop+0,X\n #_08A5CF: STA.b ($90),Y\n\n #_08A5D1: INY\n\n #_08A5D2: LDA.w .char_and_prop+1,X\n #_08A5D5: AND.b #$CF\n #_08A5D7: ORA.b $65\n #_08A5D9: STA.b ($90),Y\n\n #_08A5DB: INY\n #_08A5DC: PHY\n\n #_08A5DD: TYA\n #_08A5DE: SEC\n #_08A5DF: SBC.b #$04\n #_08A5E1: LSR A\n #_08A5E2: LSR A\n #_08A5E3: TAY\n\n #_08A5E4: LDA.b #$00\n #_08A5E6: STA.b ($92),Y\n\n #_08A5E8: PLY\n\n #_08A5E9: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08A5EC: INX\n #_08A5ED: INX\n\n #_08A5EE: INC.b $04\n\n #_08A5F0: LDA.b $04\n #_08A5F2: CMP.b #$04\n #_08A5F4: BEQ .done\n\n #_08A5F6: BRL .next_object\n\n; ---------------------------------------------------------\n\n.done\n #_08A5F9: PLX\n\n #_08A5FA: LDY.b #$01\n #_08A5FC: LDA.b ($90),Y\n\n #_08A5FE: CMP.b #$F0\n #_08A600: BNE .exit\n\n #_08A602: LDY.b #$05\n\n #_08A604: LDA.b ($90),Y\n #_08A606: CMP.b #$F0\n #_08A608: BNE .exit\n\n #_08A60A: STZ.w $0C4A,X\n\n.exit\n #_08A60D: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla33_BlastWallExplosion", + "code": "Ancilla33_BlastWallExplosion:\n #_08A60E: LDA.b $11\n #_08A610: BNE .proceed_to_draw\n\n #_08A612: LDA.l $7F0000,X\n #_08A616: BEQ .inactive_component\n\n #_08A618: LDA.l $7F0008,X\n #_08A61C: DEC A\n #_08A61D: STA.l $7F0008,X\n #_08A621: BNE .proceed_to_draw\n\n #_08A623: LDA.l $7F0000,X\n #_08A627: INC A\n #_08A628: STA.l $7F0000,X\n #_08A62C: BEQ .no_fireball\n\n #_08A62E: CMP.b #$09\n #_08A630: BCS .no_fireball\n\n; ---------------------------------------------------------\n\n #_08A632: PHX\n #_08A633: TXA\n\n #_08A634: ASL A\n #_08A635: ASL A\n #_08A636: STA.b $04\n\n #_08A638: LDY.b #$0A\n #_08A63A: LDA.b #$32 ; ANCILLA 32\n #_08A63C: JSL AncillaAdd_BlastWallFireball\n\n #_08A640: PLX\n\n; ---------------------------------------------------------\n\n.no_fireball\n #_08A641: LDA.l $7F0000,X\n #_08A645: CMP.b #$0B\n #_08A647: BNE .dont_reset_state\n\n #_08A649: LDA.b #$00\n #_08A64B: STA.l $7F0000,X\n #_08A64F: STA.l $7F0008,X\n\n #_08A653: BRA .proceed_to_draw\n\n.dont_reset_state\n #_08A655: TAY\n\n #_08A656: LDA.b #$03\n #_08A658: STA.l $7F0008,X\n\n.proceed_to_draw\n #_08A65C: BRL AncillaDraw_BlastWallExplosion\n\n; ---------------------------------------------------------\n\n.inactive_component\n #_08A65F: TXA\n #_08A660: EOR.b #$01\n #_08A662: TAX\n\n #_08A663: LDA.l $7F0000,X\n #_08A667: CMP.b #$06\n #_08A669: BNE .proceed_to_draw\n\n #_08A66B: LDA.l $7F0008,X\n #_08A66F: CMP.b #$02\n #_08A671: BNE .proceed_to_draw\n\n #_08A673: LDX.w $0380\n\n #_08A676: LDA.w $0C5E\n #_08A679: INC A\n #_08A67A: CMP.b #$07\n #_08A67C: BCC .reset_inactive_component\n\n #_08A67E: BRL AncillaDraw_BlastWallExplosion\n\n; ---------------------------------------------------------\n\n.reset_inactive_component\n #_08A681: STA.w $0C5E\n\n #_08A684: LDA.b #$01\n #_08A686: STA.l $7F0000,X\n\n #_08A68A: LDA.b #$03\n #_08A68C: STA.l $7F0008,X\n\n #_08A690: PHX\n\n; ---------------------------------------------------------\n\n #_08A691: LDA.b #$03\n #_08A693: STA.b $06\n\n.next_position\n #_08A695: STZ.b $00\n #_08A697: STZ.b $01\n #_08A699: STZ.b $02\n #_08A69B: STZ.b $03\n\n #_08A69D: STX.b $04\n\n #_08A69F: LDX.b #$00\n\n #_08A6A1: LDA.l $7F001C\n #_08A6A5: CMP.b #$04\n #_08A6A7: BCS .diverge_v\n\n #_08A6A9: LDX.b #$02\n\n.diverge_v\n #_08A6AB: LDA.b #$0D\n #_08A6AD: STA.b $00,X\n\n #_08A6AF: LDA.b $06\n #_08A6B1: AND.b #$02\n #_08A6B3: BEQ .dont_invert\n\n #_08A6B5: LDA.b $00,X\n #_08A6B7: EOR.b #$FF\n #_08A6B9: INC A\n #_08A6BA: STA.b $00,X\n\n #_08A6BC: LDA.b #$FF\n #_08A6BE: STA.b $01,X\n\n.dont_invert\n #_08A6C0: LDA.b $04\n #_08A6C2: ASL A\n #_08A6C3: ASL A\n #_08A6C4: ASL A\n #_08A6C5: STA.b $08\n\n #_08A6C7: LDA.b $06\n #_08A6C9: ASL A\n #_08A6CA: CLC\n #_08A6CB: ADC.b $08\n #_08A6CD: TAX\n\n #_08A6CE: REP #$20\n\n #_08A6D0: LDA.l $7F0020,X\n #_08A6D4: CLC\n #_08A6D5: ADC.b $00\n #_08A6D7: STA.l $7F0020,X\n\n #_08A6DB: LDA.l $7F0030,X\n #_08A6DF: CLC\n #_08A6E0: ADC.b $02\n #_08A6E2: STA.l $7F0030,X\n\n #_08A6E6: SEC\n #_08A6E7: SBC.b $E2\n #_08A6E9: STA.b $72\n\n #_08A6EB: SEP #$20\n\n #_08A6ED: LDA.b $73\n #_08A6EF: BNE .no_sfx\n\n #_08A6F1: LDA.b $72\n #_08A6F3: JSR Ancilla_SetPanRelativeCoordinates\n #_08A6F6: ORA.b #$0C ; SFX2.0C\n #_08A6F8: STA.w $012E\n\n.no_sfx\n #_08A6FB: LDX.b $04\n\n #_08A6FD: DEC.b $06\n #_08A6FF: BPL .next_position\n\n #_08A701: PLX\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_BlastWallExplosion", + "code": "AncillaDraw_BlastWallExplosion:\n #_08A702: LDX.w $0380\n\n #_08A705: LDA.l $7F0000,X\n #_08A709: BEQ .dont_draw\n\n #_08A70B: LDY.b #$07\n\n #_08A70D: CPX.b #$01\n #_08A70F: BEQ .next_object\n\n #_08A711: LDY.b #$03\n\n.next_object\n #_08A713: PHY\n #_08A714: PHX\n\n #_08A715: TYA\n #_08A716: ASL A\n #_08A717: TAX\n\n #_08A718: REP #$20\n\n #_08A71A: LDA.l $7F0020,X\n #_08A71E: STA.b $00\n\n #_08A720: LDA.l $7F0030,X\n #_08A724: STA.b $02\n\n #_08A726: SEP #$20\n\n #_08A728: PLX\n #_08A729: PLY\n\n #_08A72A: JSR AncillaDraw_BlastWallBlast\n\n #_08A72D: SEP #$20\n\n #_08A72F: DEY\n #_08A730: TYA\n #_08A731: AND.b #$03\n #_08A733: CMP.b #$03\n #_08A735: BNE .next_object\n\n; ---------------------------------------------------------\n\n.dont_draw\n #_08A737: LDA.w $0C5E\n #_08A73A: CMP.b #$06\n #_08A73C: BNE Ancilla_RestoreIndex\n\n #_08A73E: LDX.b #$01\n\n.next_check\n #_08A740: LDA.l $7F0000,X\n #_08A744: BNE Ancilla_RestoreIndex\n\n #_08A746: DEX\n #_08A747: BPL .next_check\n\n #_08A749: STZ.w $0C4A\n #_08A74C: STZ.w $0C4B\n\n #_08A74F: STZ.w $0112\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_RestoreIndex", + "code": "Ancilla_RestoreIndex:\n #_08A752: LDX.w $0FA0\n\n #_08A755: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_BlastWallBlast", + "code": "AncillaDraw_BlastWallBlast:\n #_08A756: PHX\n #_08A757: PHY\n\n #_08A758: LDA.b #$30\n #_08A75A: STA.b $65\n #_08A75C: STZ.b $64\n\n #_08A75E: LDA.l $7F0000,X\n #_08A762: TAY\n\n #_08A763: LDA.w BombDraw_object_count,Y\n #_08A766: STA.b $08\n\n #_08A768: LDA.w Bomb_anim_step,Y\n #_08A76B: TAY\n\n #_08A76C: LDA.w BombDraw_data_offset,Y\n #_08A76F: ASL A\n #_08A770: TAX\n\n #_08A771: ASL A\n #_08A772: STA.b $04\n #_08A774: STZ.b $05\n\n #_08A776: STZ.b $0A\n\n #_08A778: LDA.b #$32\n #_08A77A: STA.b $0B\n\n #_08A77C: STZ.b $06\n #_08A77E: STZ.b $07\n\n #_08A780: LDA.b #$18\n\n #_08A782: LDY.w $0FB3\n #_08A785: BEQ .use_region_a\n\n #_08A787: JSL SpriteDraw_AllocateOAMFromRegionD\n\n #_08A78B: BRA .continue\n\n.use_region_a\n #_08A78D: JSL SpriteDraw_AllocateOAMFromRegionA\n\n; ---------------------------------------------------------\n\n.continue\n #_08A791: REP #$20\n\n #_08A793: LDA.b $00\n #_08A795: SEC\n #_08A796: SBC.b $E8\n #_08A798: STA.b $0C\n\n #_08A79A: LDA.b $02\n #_08A79C: SEC\n #_08A79D: SBC.b $E2\n #_08A79F: STA.b $0E\n\n #_08A7A1: SEP #$20\n\n #_08A7A3: LDY.b #$00\n #_08A7A5: JSR AncillaDraw_Explosion\n\n #_08A7A8: PLY\n #_08A7A9: PLX\n\n #_08A7AA: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Explosion", + "code": "AncillaDraw_Explosion:\n.next_object\n #_08A7AB: LDA.w BombDraw_char_and_prop,X\n #_08A7AE: CMP.b #$FF\n #_08A7B0: BEQ .skip\n\n #_08A7B2: STX.b $72\n\n #_08A7B4: REP #$20\n\n #_08A7B6: STZ.b $74\n\n #_08A7B8: LDA.b $06\n #_08A7BA: ASL A\n #_08A7BB: ASL A\n #_08A7BC: CLC\n #_08A7BD: ADC.b $04\n #_08A7BF: TAX\n\n #_08A7C0: LDA.w BombDraw_offset+0,X\n #_08A7C3: CLC\n #_08A7C4: ADC.b $0C\n #_08A7C6: STA.b $00\n\n #_08A7C8: LDA.w BombDraw_offset+2,X\n #_08A7CB: CLC\n #_08A7CC: ADC.b $0E\n #_08A7CE: STA.b $02\n\n #_08A7D0: SEP #$20\n\n #_08A7D2: LDX.b $72\n\n #_08A7D4: JSR Ancilla_SetOAM_XY_safe\n\n #_08A7D7: LDA.w BombDraw_char_and_prop+0,X\n #_08A7DA: STA.b ($90),Y\n\n #_08A7DC: INY\n\n #_08A7DD: LDA.w BombDraw_char_and_prop+1,X\n #_08A7E0: AND.b #$C1\n #_08A7E2: ORA.b $65\n #_08A7E4: ORA.b $0B\n #_08A7E6: STA.b ($90),Y\n\n #_08A7E8: INY\n #_08A7E9: STY.b $72\n #_08A7EB: STX.b $73\n\n #_08A7ED: TYA\n #_08A7EE: SEC\n #_08A7EF: SBC.b #$04\n #_08A7F1: LSR A\n #_08A7F2: LSR A\n #_08A7F3: TAY\n\n #_08A7F4: TXA\n #_08A7F5: LSR A\n #_08A7F6: TAX\n\n #_08A7F7: LDA.w BombDraw_oam_size,X\n #_08A7FA: ORA.b $75\n\n #_08A7FC: STA.b ($92),Y\n\n #_08A7FE: LDX.b $73\n #_08A800: LDY.b $72\n\n; ---------------------------------------------------------\n\n.skip\n #_08A802: INX\n #_08A803: INX\n\n #_08A804: INC.b $06\n\n #_08A806: LDA.b $06\n #_08A808: CMP.b $08\n #_08A80A: BNE .next_object\n\n #_08A80C: RTS", + "file": "bank_08.asm" + }, + { + "name": "JumpSplash_char", + "code": "JumpSplash_char:\n #_08A80D: db $AC, $AE\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla15_JumpSplash", + "code": "Ancilla15_JumpSplash:\n #_08A80F: LDA.b $11\n #_08A811: BNE AncillaDraw_JumpSplash\n\n #_08A813: DEC.w $03B1,X\n #_08A816: BPL .delay\n\n #_08A818: STZ.w $03B1,X\n\n #_08A81B: LDA.b #$01\n #_08A81D: STA.w $0C5E,X\n\n.delay\n #_08A820: LDA.w $0C5E,X\n #_08A823: BEQ AncillaDraw_JumpSplash\n\n #_08A825: LDA.w $0C22,X\n #_08A828: CLC\n #_08A829: ADC.b #$FC\n #_08A82B: STA.w $0C22,X\n #_08A82E: STA.w $0C2C,X\n\n #_08A831: CMP.b #$E8\n #_08A833: BCS .speed_not_maxed\n\n #_08A835: STZ.w $0C4A,X\n\n #_08A838: LDA.w $02E0\n #_08A83B: BNE .am_bunny\n\n #_08A83D: LDA.b $5D\n #_08A83F: CMP.b #$04 ; LINKSTATE 04\n #_08A841: BNE .exit\n\n.am_bunny\n #_08A843: LDA.w $0345\n #_08A846: BEQ .exit\n\n #_08A848: PHX\n #_08A849: JSL CheckAbilityToSwim\n #_08A84D: PLX\n\n.exit\n #_08A84E: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_JumpSplash", + "code": "AncillaDraw_JumpSplash:\n #_08A855: JSR Ancilla_PrepOAMCoord\n\n #_08A858: LDA.w $0C04,X\n #_08A85B: STA.b $06\n\n #_08A85D: LDA.w $0C18,X\n #_08A860: STA.b $07\n\n #_08A862: REP #$20\n\n #_08A864: LDA.b $22\n #_08A866: SEC\n #_08A867: SBC.b $06\n #_08A869: STA.b $08\n\n #_08A86B: LDA.b $22\n #_08A86D: CLC\n #_08A86E: ADC.b $08\n #_08A870: SEC\n #_08A871: SBC.b $E2\n #_08A873: STA.b $08\n\n #_08A875: LDA.b $06\n #_08A877: CLC\n #_08A878: ADC.w #$000C\n #_08A87B: SEC\n #_08A87C: SBC.b $E2\n #_08A87E: STA.b $06\n\n; ---------------------------------------------------------\n\n #_08A880: SEP #$20\n\n #_08A882: PHX\n\n #_08A883: LDA.w $0C5E,X\n #_08A886: STA.b $0A\n\n #_08A888: TAX\n\n #_08A889: LDA.b #$01\n #_08A88B: STA.b $72\n\n #_08A88D: LDY.b #$00\n #_08A88F: STY.b $0C\n\n; ---------------------------------------------------------\n\n.next_object\n #_08A891: JSR Ancilla_SetOAM_XY\n\n #_08A894: LDA.w JumpSplash_char,X\n #_08A897: STA.b ($90),Y\n\n #_08A899: INY\n\n #_08A89A: LDA.b #$24\n #_08A89C: ORA.b $0C\n #_08A89E: STA.b ($90),Y\n\n #_08A8A0: INY\n #_08A8A1: PHY\n\n #_08A8A2: TYA\n #_08A8A3: SEC\n #_08A8A4: SBC.b #$04\n #_08A8A6: LSR A\n #_08A8A7: LSR A\n #_08A8A8: TAY\n\n #_08A8A9: LDA.b #$02\n #_08A8AB: STA.b ($92),Y\n\n #_08A8AD: PLY\n\n; ---------------------------------------------------------\n\n #_08A8AE: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08A8B1: LDA.b $08\n #_08A8B3: STA.b $02\n\n #_08A8B5: LDA.b #$40\n #_08A8B7: STA.b $0C\n\n #_08A8B9: DEC.b $72\n #_08A8BB: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_08A8BD: LDA.b $06\n #_08A8BF: STA.b $02\n\n #_08A8C1: JSR Ancilla_SetOAM_XY\n\n #_08A8C4: LDA.b #$C0\n #_08A8C6: STA.b ($90),Y\n\n #_08A8C8: INY\n #_08A8C9: LDA.b #$24\n #_08A8CB: STA.b ($90),Y\n\n #_08A8CD: INY\n #_08A8CE: TYA\n\n #_08A8CF: SEC\n #_08A8D0: SBC.b #$04\n\n #_08A8D2: LSR A\n #_08A8D3: LSR A\n #_08A8D4: TAY\n\n #_08A8D5: LDA.b #$02\n #_08A8D7: STA.b ($92),Y\n\n #_08A8D9: LDA.b $0A\n #_08A8DB: CMP.b #$01\n #_08A8DD: BNE .exit\n\n #_08A8DF: STA.b ($92),Y\n\n.exit\n #_08A8E1: PLX\n\n #_08A8E2: RTS", + "file": "bank_08.asm" + }, + { + "name": "HitStar_char", + "code": "HitStar_char:\n #_08A8E3: db $90, $91\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla16_HitStars", + "code": "Ancilla16_HitStars:\n #_08A8E5: DEC.w $039F,X\n #_08A8E8: BMI .continue\n\n #_08A8EA: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_HitStars", + "code": "AncillaDraw_HitStars:\n #_08A91E: JSR Ancilla_PrepOAMCoord\n\n #_08A921: LDA.w $0C04,X\n #_08A924: STA.b $06\n\n #_08A926: LDA.w $0C18,X\n #_08A929: STA.b $07\n\n #_08A92B: LDA.w $038A,X\n #_08A92E: STA.b $72\n\n #_08A930: LDA.w $038F,X\n #_08A933: STA.b $73\n\n #_08A935: REP #$20\n\n #_08A937: LDA.b $72\n #_08A939: SEC\n #_08A93A: SBC.b $06\n #_08A93C: STA.b $08\n\n #_08A93E: LDA.b $72\n #_08A940: CLC\n #_08A941: ADC.b $08\n\n #_08A943: SEC\n #_08A944: SBC.w #$0008\n\n #_08A947: SEC\n #_08A948: SBC.b $E2\n #_08A94A: STA.b $08\n\n; ---------------------------------------------------------\n\n #_08A94C: SEP #$20\n\n #_08A94E: LDA.w $0C54,X\n #_08A951: CMP.b #$02\n #_08A953: BNE .leave_allocation_alone\n\n #_08A955: LDA.b #$08\n #_08A957: JSR Ancilla_AllocateOAMFromRegion_B_or_E\n\n.leave_allocation_alone\n #_08A95A: PHX\n\n #_08A95B: LDA.b #$01\n #_08A95D: STA.b $72\n\n #_08A95F: LDA.w $0C5E,X\n #_08A962: TAX\n\n #_08A963: LDY.b #$00\n #_08A965: STY.b $73\n\n.next_object\n #_08A967: JSR Ancilla_SetOAM_XY\n\n #_08A96A: LDA.w HitStar_char,X\n #_08A96D: STA.b ($90),Y\n\n #_08A96F: INY\n\n #_08A970: LDA.b #$04\n #_08A972: ORA.b $65\n #_08A974: ORA.b $73\n #_08A976: STA.b ($90),Y\n\n #_08A978: INY\n\n #_08A979: PHY\n #_08A97A: TYA\n\n #_08A97B: SEC\n #_08A97C: SBC.b #$04\n\n #_08A97E: LSR A\n #_08A97F: LSR A\n #_08A980: TAY\n\n #_08A981: LDA.b #$00\n #_08A983: STA.b ($92),Y\n\n #_08A985: PLY\n\n #_08A986: JSR HitStars_UpdateOAMBufferPosition\n\n #_08A989: LDA.b #$40\n #_08A98B: STA.b $73\n\n #_08A98D: LDA.b $08\n #_08A98F: STA.b $02\n\n #_08A991: DEC.b $72\n #_08A993: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_08A995: PLX\n\n #_08A996: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla17_ShovelDirt", + "code": "Ancilla17_ShovelDirt:\n #_08A9A9: JSR Ancilla_PrepOAMCoord\n\n #_08A9AC: LDA.w $0C68,X\n #_08A9AF: BNE .dont_terminate\n\n #_08A9B1: LDA.b #$08\n #_08A9B3: STA.w $0C68,X\n\n #_08A9B6: INC.w $0C5E,X\n\n #_08A9B9: LDA.w $0C5E,X\n #_08A9BC: CMP.b #$02\n #_08A9BE: BNE .dont_terminate\n\n #_08A9C0: STZ.w $0C4A,X\n\n #_08A9C3: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla32_BlastWallFireball", + "code": "Ancilla32_BlastWallFireball:\n #_08AA35: LDA.b $11\n #_08AA37: BNE AncillaDraw_BlastWallFireball\n\n #_08AA39: LDA.w $0C5E,X\n #_08AA3C: CLC\n #_08AA3D: ADC.b #$02\n #_08AA3F: STA.w $0C5E,X\n\n #_08AA42: CLC\n #_08AA43: ADC.w $0C22,X\n #_08AA46: STA.w $0C22,X\n\n #_08AA49: JSR Ancilla_Move_Y\n #_08AA4C: JSR Ancilla_Move_X\n\n #_08AA4F: LDA.l $7F0040,X\n #_08AA53: DEC A\n #_08AA54: STA.l $7F0040,X\n\n #_08AA58: BPL AncillaDraw_BlastWallFireball\n\n #_08AA5A: STZ.w $0C4A,X\n\n #_08AA5D: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_BlastWallFireball", + "code": "AncillaDraw_BlastWallFireball:\n #_08AA5E: LDA.b #$04\n\n #_08AA60: LDY.w $0FB3\n #_08AA63: BEQ .use_region_a\n\n #_08AA65: JSL SpriteDraw_AllocateOAMFromRegionD\n #_08AA69: BRA .continue\n\n.use_region_a\n #_08AA6B: JSL SpriteDraw_AllocateOAMFromRegionA\n\n; ---------------------------------------------------------\n\n.continue\n #_08AA6F: LDY.b #$00\n\n #_08AA71: LDA.l $7F0040,X\n #_08AA75: STA.b $06\n\n #_08AA77: AND.b #$08\n #_08AA79: BNE .proceed_with_character\n\n #_08AA7B: LDY.b #$01\n\n #_08AA7D: LDA.b $06\n #_08AA7F: AND.b #$04\n #_08AA81: BNE .proceed_with_character\n\n #_08AA83: LDY.b #$02\n\n.proceed_with_character\n #_08AA85: LDA.w .char,Y\n #_08AA88: STA.b $06\n\n #_08AA8A: JSR Ancilla_PrepOAMCoord\n\n #_08AA8D: LDY.b #$00\n #_08AA8F: JSR Ancilla_SetOAM_XY\n\n #_08AA92: LDA.b $06\n #_08AA94: STA.b ($90),Y\n\n #_08AA96: INY\n #_08AA97: LDA.b #$22\n #_08AA99: STA.b ($90),Y\n\n #_08AA9B: LDA.b #$00\n #_08AA9D: STA.b ($92)\n\n #_08AA9F: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla18_EtherSpell", + "code": "Ancilla18_EtherSpell:\n #_08AAA0: LDA.b $11\n #_08AAA2: BEQ .submode_fine\n\n #_08AAA4: BRL .exit\n\n; ---------------------------------------------------------\n\n.submode_fine\n #_08AAA7: LDA.w $0C54,X\n #_08AAAA: BEQ .done_palette_flash\n\n #_08AAAC: LDA.w $031D\n #_08AAAF: BNE .lightning_descended\n\n #_08AAB1: INC.w $0BF0,X\n\n #_08AAB4: LDA.w $0BF0,X\n #_08AAB7: AND.b #$04\n #_08AAB9: BEQ .oversaturate\n\n #_08AABB: BRA .restore\n\n; ---------------------------------------------------------\n\n.lightning_descended\n #_08AABD: LDA.w $031D\n #_08AAC0: CMP.b #$0B\n #_08AAC2: BNE .restore\n\n; ---------------------------------------------------------\n\n.oversaturate\n #_08AAC4: PHX\n\n #_08AAC5: JSL RefreshLinkEquipmentPalettes_zap\n #_08AAC9: JSL PaletteFilter_Oversaturation\n\n #_08AACD: PLX\n\n #_08AACE: BRA .done_palette_flash\n\n; ---------------------------------------------------------\n\n.restore\n #_08AAD0: PHX\n\n #_08AAD1: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n #_08AAD5: JSL Palette_RestoreBGFromFlash\n\n #_08AAD9: PLX\n\n; ---------------------------------------------------------\n\n.done_palette_flash\n #_08AADA: LDA.w $0C54,X\n #_08AADD: CMP.b #$02\n #_08AADF: BNE .check_ball_timer\n\n #_08AAE1: DEC.w $03B1,X\n #_08AAE4: BPL .delay\n\n #_08AAE6: LDA.b #$02\n #_08AAE8: STA.w $03B1,X\n\n #_08AAEB: LDA.w $0C5E,X\n #_08AAEE: INC A\n #_08AAEF: STA.w $0C5E,X\n\n #_08AAF2: CMP.b #$02\n #_08AAF4: BNE .delay\n\n #_08AAF6: DEC.w $0C5E,X\n\n #_08AAF9: LDA.b #$10\n #_08AAFB: STA.w $0C2C,X\n\n #_08AAFE: LDA.b #$03\n #_08AB00: STA.w $0C54,X\n\n; ---------------------------------------------------------\n\n.delay\n #_08AB03: LDA.w $0C2C,X\n #_08AB06: CLC\n #_08AB07: ADC.b #$01\n #_08AB09: STA.w $0C2C,X\n\n #_08AB0C: BRL EtherSpell_HandleRadialSpin\n\n; ---------------------------------------------------------\n\n.check_ball_timer\n #_08AB0F: DEC.w $03B1,X\n #_08AB12: BPL .dont_swap_char\n\n #_08AB14: LDA.b #$02\n #_08AB16: STA.w $03B1,X\n\n #_08AB19: LDA.w $0C5E,X\n #_08AB1C: EOR.b #$01\n #_08AB1E: STA.w $0C5E,X\n\n; ---------------------------------------------------------\n\n.dont_swap_char\n #_08AB21: LDA.w $0C54,X\n #_08AB24: BEQ .lightning\n\n #_08AB26: CMP.b #$01\n #_08AB28: BEQ .pulsing_orb\n\n #_08AB2A: CMP.b #$03\n #_08AB2C: BEQ .do_spin\n\n #_08AB2E: CMP.b #$04\n #_08AB30: BEQ .dissipate\n\n; ---------------------------------------------------------\n\n #_08AB32: LDA.w $0C2C,X\n #_08AB35: CLC\n #_08AB36: ADC.b #$10\n #_08AB38: BPL .radial_speed_not_maxed\n\n #_08AB3A: LDA.b #$7F\n\n.radial_speed_not_maxed\n #_08AB3C: STA.w $0C2C,X\n #_08AB3F: BRL .do_spin\n\n; ---------------------------------------------------------\n\n.lightning\n #_08AB42: BRA EtherSpell_HandleLightningStroke\n\n; ---------------------------------------------------------\n\n.pulsing_orb\n #_08AB44: BRL EtherSpell_HandleOrbPulse\n\n; ---------------------------------------------------------\n\n.dissipate\n #_08AB47: LDA.l $7F5812\n #_08AB4B: DEC A\n #_08AB4C: STA.l $7F5812\n\n #_08AB50: BNE .do_spin\n\n #_08AB52: LDA.b #$05\n #_08AB54: STA.w $0C54,X\n\n; ---------------------------------------------------------\n\n.do_spin\n #_08AB57: BRL EtherSpell_HandleRadialSpin\n\n.exit\n #_08AB5A: RTS", + "file": "bank_08.asm" + }, + { + "name": "UNREACHABLE_08AB5B", + "code": "UNREACHABLE_08AB5B:\n #_08AB5B: db $E0, $00, $E8, $E8\n #_08AB5F: db $00, $20, $18, $18\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "EtherSpell_HandleLightningStroke", + "code": "EtherSpell_HandleLightningStroke:\n #_08AB63: JSR Ancilla_Move_Y\n\n #_08AB66: LDA.w $0C0E,X\n #_08AB69: STA.b $01\n\n #_08AB6B: LDA.w $0BFA,X\n #_08AB6E: STA.b $00\n\n #_08AB70: AND.b #$F0\n #_08AB72: CMP.l $7F580C\n #_08AB76: BEQ .dont_lengthen\n\n #_08AB78: STA.l $7F580C\n\n #_08AB7C: INC.w $03C2,X\n\n.dont_lengthen\n #_08AB7F: REP #$20\n\n #_08AB81: LDA.b $00\n #_08AB83: CMP.w #$E000\n #_08AB86: BCS .delay\n\n #_08AB88: LDA.l $7F580A\n #_08AB8C: CMP.w #$E000\n #_08AB8F: BCS .at_target\n\n #_08AB91: LDA.l $7F580A\n #_08AB95: CMP.b $00\n #_08AB97: BEQ .at_target\n #_08AB99: BCS .delay\n\n.at_target\n #_08AB9B: SEP #$20\n\n #_08AB9D: LDA.b #$01\n #_08AB9F: STA.w $0C54,X\n\n.delay\n #_08ABA2: SEP #$20\n\n #_08ABA4: BRL AncillaDraw_EtherBlitz\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "EtherSpell_HandleOrbPulse", + "code": "EtherSpell_HandleOrbPulse:\n #_08ABA7: LDA.w $03C2,X\n #_08ABAA: BMI .continue\n\n #_08ABAC: DEC.w $039F,X\n #_08ABAF: BPL .proceed_to_draw\n\n #_08ABB1: LDA.b #$03\n #_08ABB3: STA.w $039F,X\n\n #_08ABB6: DEC.w $03C2,X\n #_08ABB9: BPL .proceed_to_draw\n\n #_08ABBB: LDA.b #$09\n #_08ABBD: STA.w $039F,X\n\n #_08ABC0: BRA .continue\n\n.proceed_to_draw\n #_08ABC2: BRL AncillaDraw_EtherBlitz\n\n; ---------------------------------------------------------\n\n.continue\n #_08ABC5: DEC.w $039F,X\n #_08ABC8: BPL .dont_damage\n\n #_08ABCA: LDA.b #$02\n #_08ABCC: STA.w $0C54,X\n\n #_08ABCF: STZ.w $0C22,X\n\n #_08ABD2: LDA.b #$10\n #_08ABD4: STA.w $0C2C,X\n\n #_08ABD7: STZ.w $0C5E,X\n\n #_08ABDA: LDA.b #$02\n #_08ABDC: STA.w $03B1,X\n\n #_08ABDF: LDA.w $031D\n #_08ABE2: BEQ .dont_damage\n\n #_08ABE4: PHX\n #_08ABE5: JSL Medallion_CheckSpriteDamage\n #_08ABE9: PLX\n\n.dont_damage\n #_08ABEA: LDY.b #$00\n #_08ABEC: BRL AncillaDraw_EtherOrb\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "EtherSpell_HandleRadialSpin", + "code": "EtherSpell_HandleRadialSpin:\n #_08ABEF: LDA.w $0C54,X\n #_08ABF2: CMP.b #$04\n #_08ABF4: BNE .skip_sfx\n\n #_08ABF6: LDY.b #$2A ; SFX3.2A\n\n #_08ABF8: LDA.b $1A\n #_08ABFA: AND.b #$07\n #_08ABFC: BEQ .set_sfx\n\n\n #_08ABFE: LDY.b #$AA ; SFX3.2A with !HARDCODED pan value of $80\n\n #_08AC00: CMP.b #$04\n #_08AC02: BEQ .set_sfx\n\n #_08AC04: CMP.b #$07\n #_08AC06: BNE .skip_sfx\n\n #_08AC08: LDY.b #$6A ; SFX3.2A with !HARDCODED pan value of $40\n\n.set_sfx\n #_08AC0A: STY.w $012F\n\n; ---------------------------------------------------------\n\n.skip_sfx\n #_08AC0D: LDA.w $0C54,X\n #_08AC10: CMP.b #$04\n #_08AC12: BEQ .dont_expand\n\n #_08AC14: LDA.l $7F5808\n #_08AC18: STA.w $0C04,X\n\n #_08AC1B: STZ.w $0C18,X\n\n #_08AC1E: JSR Ancilla_Move_X\n\n #_08AC21: LDA.w $0C04,X\n #_08AC24: STA.l $7F5808\n\n #_08AC28: CMP.b #$40\n #_08AC2A: BNE .dont_expand\n\n #_08AC2C: LDA.b #$04\n #_08AC2E: STA.w $0C54,X\n\n.dont_expand\n #_08AC31: PHX\n\n #_08AC32: LDA.w $0C54,X\n #_08AC35: STA.b $72\n\n #_08AC37: LDA.w $0C5E,X\n #_08AC3A: STA.b $73\n\n; ---------------------------------------------------------\n\n #_08AC3C: LDY.b #$00\n #_08AC3E: LDX.b #$07\n\n.next_orb\n #_08AC40: LDA.b $72\n #_08AC42: CMP.b #$02\n #_08AC44: BEQ .dont_rotate\n\n #_08AC46: CMP.b #$05\n #_08AC48: BEQ .dont_rotate\n\n #_08AC4A: LDA.l $7F5800,X\n #_08AC4E: INC A\n #_08AC4F: AND.b #$3F\n #_08AC51: STA.l $7F5800,X\n\n.dont_rotate\n #_08AC55: LDA.l $7F5808\n #_08AC59: STA.b $08\n\n #_08AC5B: LDA.l $7F5800,X\n\n #_08AC5F: JSR Ancilla_GetRadialProjection\n\n #_08AC62: PHX\n\n #_08AC63: LDA.b $72\n #_08AC65: CMP.b #$02\n #_08AC67: BEQ .draw_as_segment\n\n #_08AC69: JSR AncillaDraw_EtherBlitzBall\n\n #_08AC6C: BRA .to_next\n\n.draw_as_segment\n #_08AC6E: JSR AncillaDraw_EtherBlitzSegment\n\n.to_next\n #_08AC71: PLX\n #_08AC72: DEX\n #_08AC73: BPL .next_orb\n\n; ---------------------------------------------------------\n\n #_08AC75: PLX\n\n #_08AC76: LDA.l $7F5808\n #_08AC7A: CMP.b #$F0\n #_08AC7C: BCS .terminate\n\n #_08AC7E: LDY.b #$01\n\n.next_check\n #_08AC80: LDA.b ($90),Y\n #_08AC82: CMP.b #$F0\n #_08AC84: BNE .exit\n\n #_08AC86: INY\n #_08AC87: INY\n #_08AC88: INY\n #_08AC89: INY\n\n #_08AC8A: CPY.b #$21\n #_08AC8C: BNE .next_check\n\n; ---------------------------------------------------------\n\n.terminate\n #_08AC8E: STZ.w $0C4A,X\n\n #_08AC91: LDA.b #$01\n #_08AC93: STA.w $0AAA\n\n #_08AC96: STZ.w $0324\n #_08AC99: STZ.w $031C\n #_08AC9C: STZ.w $031D\n\n #_08AC9F: STZ.b $50\n\n #_08ACA1: STZ.w $0FC1\n\n #_08ACA4: LDA.b $8A\n #_08ACA6: CMP.b #$70 ; OW 70\n #_08ACA8: BNE .dont_open_mire\n\n #_08ACAA: LDA.l $7EF2F0\n #_08ACAE: AND.b #$20\n #_08ACB0: BNE .dont_open_mire\n\n #_08ACB2: LDY.b #$02\n #_08ACB4: JSR Ancilla_CheckForEntranceTrigger\n #_08ACB7: BCC .dont_open_mire\n\n #_08ACB9: LDA.b #$03\n #_08ACBB: STA.w $04C6\n\n #_08ACBE: STZ.b $B0\n #_08ACC0: STZ.b $C8\n\n; ---------------------------------------------------------\n\n.dont_open_mire\n #_08ACC2: LDA.b $5D\n #_08ACC4: CMP.b #$19 ; LINKSTATE 19\n #_08ACC6: BEQ .spin_attack\n\n #_08ACC8: LDA.b #$00 ; LINKSTATE 00\n #_08ACCA: STA.b $5D\n\n #_08ACCC: STZ.b $3D\n\n #_08ACCE: LDY.b #$00\n\n #_08ACD0: LDA.b $3C\n #_08ACD2: BEQ .dont_flag_b\n\n #_08ACD4: LDA.b $F0\n #_08ACD6: AND.b #$80\n #_08ACD8: TAY\n\n.dont_flag_b\n #_08ACD9: STY.b $3A\n\n; ---------------------------------------------------------\n\n.spin_attack\n #_08ACDB: STZ.b $5E\n #_08ACDD: STZ.w $0325\n\n #_08ACE0: PHX\n\n #_08ACE1: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n #_08ACE5: JSL Palette_RestoreBGAndHUD\n\n #_08ACE9: PLX\n\n.exit\n #_08ACEA: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_EtherBlitzBall", + "code": "AncillaDraw_EtherBlitzBall:\n #_08ACED: REP #$20\n\n #_08ACEF: PHY\n\n #_08ACF0: LDA.b $00\n\n #_08ACF2: LDY.b $02\n #_08ACF4: BEQ .positive_y\n\n #_08ACF6: EOR.w #$FFFF\n #_08ACF9: INC A\n\n.positive_y\n #_08ACFA: STA.b $08\n\n #_08ACFC: CLC\n #_08ACFD: ADC.l $7F5810\n\n #_08AD01: CLC\n #_08AD02: ADC.w #$FFF8\n\n #_08AD05: SEC\n #_08AD06: SBC.b $E8\n #_08AD08: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08AD0A: LDA.b $04\n\n #_08AD0C: LDY.b $06\n #_08AD0E: BEQ .positive_x\n\n #_08AD10: EOR.w #$FFFF\n #_08AD13: INC A\n\n.positive_x\n #_08AD14: STA.b $0A\n\n #_08AD16: CLC\n #_08AD17: ADC.l $7F580E\n\n #_08AD1B: CLC\n #_08AD1C: ADC.w #$FFF8\n\n #_08AD1F: SEC\n #_08AD20: SBC.b $E2\n #_08AD22: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08AD24: PLY\n\n #_08AD25: SEP #$20\n\n #_08AD27: JSR Ancilla_SetOAM_XY\n\n #_08AD2A: LDA.b $73\n #_08AD2C: TAX\n\n #_08AD2D: LDA.w .char,X\n #_08AD30: STA.b ($90),Y\n\n #_08AD32: INY\n\n #_08AD33: LDA.b #$3C\n #_08AD35: STA.b ($90),Y\n\n #_08AD37: INY\n #_08AD38: PHY\n #_08AD39: TYA\n\n #_08AD3A: SEC\n #_08AD3B: SBC.b #$04\n #_08AD3D: LSR A\n #_08AD3E: LSR A\n #_08AD3F: TAY\n\n #_08AD40: LDA.b #$02\n #_08AD42: STA.b ($92),Y\n\n #_08AD44: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08AD47: PLY\n\n #_08AD48: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_EtherBlitzSegment", + "code": "AncillaDraw_EtherBlitzSegment:\n #_08ADC9: REP #$20\n\n #_08ADCB: PHY\n\n #_08ADCC: LDA.b $00\n\n #_08ADCE: LDY.b $02\n #_08ADD0: BEQ .positive_y\n\n #_08ADD2: EOR.w #$FFFF\n #_08ADD5: INC A\n\n.positive_y\n #_08ADD6: STA.b $08\n\n #_08ADD8: CLC\n #_08ADD9: ADC.l $7F5810\n\n #_08ADDD: CLC\n #_08ADDE: ADC.w #$FFF8\n\n #_08ADE1: SEC\n #_08ADE2: SBC.b $E8\n #_08ADE4: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08ADE6: LDA.b $04\n\n #_08ADE8: LDY.b $06\n #_08ADEA: BEQ .positive_x\n\n #_08ADEC: EOR.w #$FFFF\n #_08ADEF: INC A\n\n.positive_x\n #_08ADF0: STA.b $0A\n\n #_08ADF2: CLC\n #_08ADF3: ADC.l $7F580E\n\n #_08ADF7: CLC\n #_08ADF8: ADC.w #$FFF8\n\n #_08ADFB: SEC\n #_08ADFC: SBC.b $E2\n #_08ADFE: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08AE00: PLY\n\n #_08AE01: SEP #$20\n\n #_08AE03: JSR Ancilla_SetOAM_XY\n\n #_08AE06: LDA.b $73\n #_08AE08: ASL A\n #_08AE09: ASL A\n #_08AE0A: ASL A\n #_08AE0B: ASL A\n #_08AE0C: STA.b $0E\n\n #_08AE0E: TXA\n #_08AE0F: ASL A\n #_08AE10: CLC\n #_08AE11: ADC.b $0E\n #_08AE13: TAX\n\n #_08AE14: LDA.w .char+0,X\n #_08AE17: STA.b ($90),Y\n\n #_08AE19: INY\n\n #_08AE1A: LDA.w .prop+0,X\n #_08AE1D: STA.b ($90),Y\n\n #_08AE1F: INY\n #_08AE20: PHY\n\n #_08AE21: TYA\n #_08AE22: SEC\n #_08AE23: SBC.b #$04\n #_08AE25: LSR A\n #_08AE26: LSR A\n #_08AE27: TAY\n\n #_08AE28: LDA.b #$02\n #_08AE2A: STA.b ($92),Y\n\n #_08AE2C: PLY\n\n; ---------------------------------------------------------\n\n #_08AE2D: REP #$20\n\n #_08AE2F: LDA.b $08\n #_08AE31: CLC\n #_08AE32: ADC.l $7F5810\n\n #_08AE36: CLC\n #_08AE37: ADC.w .offset_y,X\n\n #_08AE3A: SEC\n #_08AE3B: SBC.b $E8\n #_08AE3D: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08AE3F: LDA.b $0A\n #_08AE41: CLC\n #_08AE42: ADC.l $7F580E\n\n #_08AE46: CLC\n #_08AE47: ADC.w .offset_x,X\n\n #_08AE4A: SEC\n #_08AE4B: SBC.b $E2\n #_08AE4D: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08AE4F: SEP #$20\n\n #_08AE51: PHX\n #_08AE52: JSR Ancilla_SetOAM_XY\n #_08AE55: PLX\n\n #_08AE56: LDA.w .char+1,X\n #_08AE59: STA.b ($90),Y\n\n #_08AE5B: INY\n\n #_08AE5C: LDA.w .prop+1,X\n #_08AE5F: STA.b ($90),Y\n\n #_08AE61: INY\n #_08AE62: PHY\n\n #_08AE63: TYA\n #_08AE64: SEC\n #_08AE65: SBC.b #$04\n #_08AE67: LSR A\n #_08AE68: LSR A\n #_08AE69: TAY\n\n #_08AE6A: LDA.b #$02\n #_08AE6C: STA.b ($92),Y\n\n #_08AE6E: PLY\n\n #_08AE6F: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08AE72: RTS", + "file": "bank_08.asm" + }, + { + "name": "EtherBlitzDraw", + "code": "EtherBlitzDraw:\n.char\n #_08AE73: db $40, $42, $44, $46\n\n.orb_char\n #_08AE77: db $48, $48, $4A, $4A\n #_08AE7B: db $4C, $4C, $4E, $4E\n\n.prop\n #_08AE7F: db $3C, $7C, $3C, $7C\n #_08AE83: db $3C, $7C, $3C, $7C\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_EtherBlitz", + "code": "AncillaDraw_EtherBlitz:\n #_08AE87: JSR Ancilla_PrepOAMCoord\n\n #_08AE8A: LDA.w $0C5E,X\n #_08AE8D: STA.b $06\n\n #_08AE8F: STZ.b $08\n\n #_08AE91: PHX\n\n #_08AE92: LDA.w $03C2,X\n #_08AE95: TAX\n\n #_08AE96: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_object\n #_08AE98: JSR Ancilla_SetOAM_XY\n\n #_08AE9B: PHX\n\n #_08AE9C: LDA.b $06\n #_08AE9E: ASL A\n #_08AE9F: CLC\n #_08AEA0: ADC.b $08\n #_08AEA2: TAX\n\n #_08AEA3: LDA.w EtherBlitzDraw_char,X\n #_08AEA6: STA.b ($90),Y\n\n #_08AEA8: PLX\n\n #_08AEA9: INY\n\n #_08AEAA: LDA.w EtherBlitzDraw_prop\n #_08AEAD: ORA.b $65\n #_08AEAF: STA.b ($90),Y\n\n #_08AEB1: INY\n #_08AEB2: PHY\n\n #_08AEB3: TYA\n #_08AEB4: SEC\n #_08AEB5: SBC.b #$04\n #_08AEB7: LSR A\n #_08AEB8: LSR A\n #_08AEB9: TAY\n\n #_08AEBA: LDA.b #$02\n #_08AEBC: STA.b ($92),Y\n\n #_08AEBE: PLY\n\n #_08AEBF: REP #$20\n\n #_08AEC1: LDA.b $00\n #_08AEC3: SEC\n #_08AEC4: SBC.w #$0010\n #_08AEC7: STA.b $00\n\n #_08AEC9: SEP #$20\n\n #_08AECB: LDA.b $08\n #_08AECD: EOR.b #$01\n #_08AECF: STA.b $08\n\n #_08AED1: DEX\n #_08AED2: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_08AED4: PLX\n\n #_08AED5: LDA.w $0C54,X\n #_08AED8: CMP.b #$01\n #_08AEDA: BEQ AncillaDraw_EtherOrb\n\n #_08AEDC: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_EtherOrb", + "code": "AncillaDraw_EtherOrb:\n #_08AEDD: REP #$20\n\n #_08AEDF: LDA.l $7F5813\n #_08AEE3: CLC\n #_08AEE4: ADC.w #$FFFF\n #_08AEE7: SEC\n #_08AEE8: SBC.b $E8\n #_08AEEA: STA.b $00\n\n #_08AEEC: LDA.l $7F5815\n #_08AEF0: CLC\n #_08AEF1: ADC.w #$FFF8\n #_08AEF4: SEC\n #_08AEF5: SBC.b $E2\n #_08AEF7: STA.b $02\n #_08AEF9: STA.b $04\n\n #_08AEFB: STZ.b $08\n\n #_08AEFD: SEP #$20\n\n #_08AEFF: PHX\n\n #_08AF00: LDA.w $0C5E,X\n #_08AF03: ASL A\n #_08AF04: ASL A\n #_08AF05: STA.b $06\n\n.next_object\n #_08AF07: JSR Ancilla_SetOAM_XY\n\n #_08AF0A: LDX.b $06\n\n #_08AF0C: LDA.w EtherBlitzDraw_orb_char,X\n #_08AF0F: STA.b ($90),Y\n\n #_08AF11: INY\n\n #_08AF12: LDA.w EtherBlitzDraw_prop,X\n #_08AF15: STA.b ($90),Y\n\n #_08AF17: INY\n #_08AF18: PHY\n\n #_08AF19: TYA\n #_08AF1A: SEC\n #_08AF1B: SBC.b #$04\n #_08AF1D: LSR A\n #_08AF1E: LSR A\n #_08AF1F: TAY\n\n #_08AF20: LDA.b #$02\n #_08AF22: STA.b ($92),Y\n\n #_08AF24: PLY\n\n #_08AF25: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08AF28: REP #$20\n\n #_08AF2A: LDA.b $02\n #_08AF2C: CLC\n #_08AF2D: ADC.w #$0010\n #_08AF30: STA.b $02\n\n #_08AF32: INC.b $06\n\n #_08AF34: INC.b $08\n\n #_08AF36: LDA.b $08\n #_08AF38: CMP.w #$0004\n #_08AF3B: BEQ .exit\n\n #_08AF3D: CMP.w #$0002\n #_08AF40: BNE .continue\n\n #_08AF42: LDA.b $00\n #_08AF44: CLC\n #_08AF45: ADC.w #$0010\n #_08AF48: STA.b $00\n\n #_08AF4A: LDA.b $04\n #_08AF4C: STA.b $02\n\n.continue\n #_08AF4E: SEP #$20\n\n #_08AF50: BRA .next_object\n\n; ---------------------------------------------------------\n\n.exit\n #_08AF52: SEP #$20\n\n #_08AF54: PLX\n\n #_08AF55: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_BombosSpell", + "code": "AncillaAdd_BombosSpell:\n #_08AF66: PHB\n #_08AF67: PHK\n #_08AF68: PLB\n\n #_08AF69: JSR AncillaAdd_AddAncilla_Bank08\n #_08AF6C: BCC .found_slot\n\n #_08AF6E: BRL .exit\n\n; ---------------------------------------------------------\n\n.found_slot\n #_08AF71: LDA.b #$03\n #_08AF73: STA.l $7F5800\n #_08AF77: STA.l $7F5801\n #_08AF7B: STA.l $7F5802\n #_08AF7F: STA.l $7F5803\n #_08AF83: STA.l $7F5804\n\n #_08AF87: STA.l $7F5805\n #_08AF8B: STA.l $7F5806\n #_08AF8F: STA.l $7F5807\n #_08AF93: STA.l $7F5808\n #_08AF97: STA.l $7F5809\n\n #_08AF9B: STA.l $7F5945\n #_08AF9F: STA.l $7F5946\n #_08AFA3: STA.l $7F5947\n #_08AFA7: STA.l $7F5948\n\n #_08AFAB: STA.l $7F5949\n #_08AFAF: STA.l $7F594A\n #_08AFB3: STA.l $7F594B\n #_08AFB7: STA.l $7F594C\n\n #_08AFBB: LDA.b #$00\n #_08AFBD: STA.l $7F5810\n #_08AFC1: STA.l $7F5811\n #_08AFC5: STA.l $7F5812\n #_08AFC9: STA.l $7F5813\n #_08AFCD: STA.l $7F5814\n\n #_08AFD1: STA.l $7F5815\n #_08AFD5: STA.l $7F5816\n #_08AFD9: STA.l $7F5817\n #_08AFDD: STA.l $7F5818\n #_08AFE1: STA.l $7F5819\n\n #_08AFE5: STA.l $7F5935\n #_08AFE9: STA.l $7F5936\n #_08AFED: STA.l $7F5937\n #_08AFF1: STA.l $7F5938\n\n #_08AFF5: STA.l $7F5939\n #_08AFF9: STA.l $7F593A\n #_08AFFD: STA.l $7F593B\n #_08B001: STA.l $7F593C\n\n #_08B005: STA.l $7F5934\n #_08B009: STA.l $7F5A56\n\n; ---------------------------------------------------------\n\n #_08B00D: LDA.b #$80\n #_08B00F: STA.l $7F5A55\n\n #_08B013: LDA.b #$10\n #_08B015: STA.l $7F5820\n\n #_08B019: LDA.b #$0B\n #_08B01B: STA.w $0AAA\n\n #_08B01E: LDA.b #$01\n #_08B020: STA.w $0112\n\n #_08B023: STZ.w $0C54,X\n #_08B026: STZ.w $0C5E,X\n\n; ---------------------------------------------------------\n\n #_08B029: LDA.b #$2A ; SFX2.2A\n #_08B02B: JSR Ancilla_SFX2_Near\n\n #_08B02E: PHX\n\n #_08B02F: LDY.b $1A\n\n #_08B031: LDA.b $21\n #_08B033: STA.l $7F5956\n\n #_08B037: LDA.b $23\n #_08B039: STA.l $7F59D6\n\n #_08B03D: LDA.w Ancilla05_Boomerang,Y\n #_08B040: CMP.b #$E0\n #_08B042: BCC .excuse_me\n\n #_08B044: AND.b #$7F\n\n.excuse_me\n #_08B046: STA.l $7F5955\n #_08B04A: STA.l $7F59D5\n\n; ---------------------------------------------------------\n\n #_08B04E: LDX.b #$00\n #_08B050: STX.b $72\n\n.next\n #_08B052: REP #$20\n\n #_08B054: LDA.b $20\n #_08B056: CLC\n #_08B057: ADC.w .offset_y,X\n #_08B05A: STA.l $7F5924,X\n\n #_08B05E: LDA.b $22\n #_08B060: CLC\n #_08B061: ADC.w .offset_x,X\n #_08B064: STA.l $7F592C,X\n\n #_08B068: SEP #$20\n\n #_08B06A: PHX\n\n #_08B06B: TXA\n #_08B06C: LSR A\n #_08B06D: TAX\n\n #_08B06E: LDA.b #$10\n #_08B070: STA.b $08\n #_08B072: STA.l $7F5A57\n\n #_08B076: LDA.l $7F5820,X\n\n #_08B07A: PLX\n\n #_08B07B: JSR Ancilla_GetRadialProjection\n\n; ---------------------------------------------------------\n\n #_08B07E: REP #$20\n\n #_08B080: LDA.b $00\n #_08B082: LDY.b $02\n #_08B084: BEQ .positive_x\n\n #_08B086: EOR.w #$FFFF\n #_08B089: INC A\n\n.positive_x\n #_08B08A: CLC\n #_08B08B: ADC.l $7F5924,X\n #_08B08F: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08B091: LDA.b $04\n\n #_08B093: LDY.b $06\n #_08B095: BEQ .positive_y\n\n #_08B097: EOR.w #$FFFF\n #_08B09A: INC A\n\n.positive_y\n #_08B09B: CLC\n #_08B09C: ADC.l $7F592C,X\n #_08B0A0: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08B0A2: SEP #$20\n\n #_08B0A4: PHX\n\n #_08B0A5: LDX.b $72\n\n #_08B0A7: LDA.b $00\n #_08B0A9: STA.l $7F5824,X\n\n #_08B0AD: LDA.b $01\n #_08B0AF: STA.l $7F5864,X\n\n #_08B0B3: LDA.b $04\n #_08B0B5: STA.l $7F58A4,X\n\n #_08B0B9: LDA.b $05\n #_08B0BB: STA.l $7F58E4,X\n\n #_08B0BF: PLX\n\n #_08B0C0: LDA.b $72\n #_08B0C2: SEC\n #_08B0C3: SBC.b #$10\n #_08B0C5: STA.b $72\n\n #_08B0C7: DEX\n #_08B0C8: DEX\n #_08B0C9: BPL .next\n\n; ---------------------------------------------------------\n\n #_08B0CB: PLX\n\n.exit\n #_08B0CC: PLB\n\n #_08B0CD: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla19_BombosSpell", + "code": "Ancilla19_BombosSpell:\n #_08B0CE: LDA.l $7F5934\n #_08B0D2: BNE .no_new_columns\n\n #_08B0D4: LDA.b $11\n #_08B0D6: BNE .draw_columns\n\n #_08B0D8: JMP.w BombosSpell_ControlFireColumns\n\n; ---------------------------------------------------------\n\n.draw_columns\n #_08B0DB: LDY.b #$00\n #_08B0DD: LDX.b #$09\n\n.next_column_draw\n #_08B0DF: JSR AncillaDraw_BombosFireColumn\n\n #_08B0E2: DEX\n #_08B0E3: BPL .next_column_draw\n\n #_08B0E5: RTS", + "file": "bank_08.asm" + }, + { + "name": "BombosSpell_ControlFireColumns", + "code": "BombosSpell_ControlFireColumns:\n #_08B10A: PHX\n\n #_08B10B: LDA.w $0C5E,X\n #_08B10E: STA.b $73\n\n #_08B110: LDA.w $0C54,X\n #_08B113: STA.b $72\n\n #_08B115: TAX\n #_08B116: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_column\n #_08B118: LDA.l $7F5810,X\n #_08B11C: CMP.b #$0D\n #_08B11E: BNE .continue\n\n.skip_me\n #_08B120: BRL .skip_this_column\n\n.continue\n #_08B123: LDA.l $7F5800,X\n #_08B127: DEC A\n #_08B128: STA.l $7F5800,X\n #_08B12C: BMI .time_up\n\n.dont_spawn_new_column\n #_08B12E: BRL .just_draw\n\n; ---------------------------------------------------------\n\n.time_up\n #_08B131: LDA.b #$03\n #_08B133: STA.l $7F5800,X\n\n #_08B137: LDA.l $7F5810,X\n #_08B13B: INC A\n #_08B13C: STA.l $7F5810,X\n\n #_08B140: CMP.b #$0D\n #_08B142: BEQ .skip_me\n\n; ---------------------------------------------------------\n\n #_08B144: CMP.b #$02\n #_08B146: BNE .dont_spawn_new_column\n\n #_08B148: LDA.b $73\n #_08B14A: BNE .skip_me\n\n #_08B14C: PHX\n\n #_08B14D: LDA.b $72\n #_08B14F: CMP.b #$09\n #_08B151: BNE .to_next_find\n\n; ---------------------------------------------------------\n\n #_08B153: LDX.b #$09\n\n.next_check\n #_08B155: LDA.l $7F5810,X\n #_08B159: CMP.b #$0D\n #_08B15B: BNE .dont_reset\n\n #_08B15D: LDA.b #$00\n #_08B15F: STA.l $7F5810,X\n #_08B163: BRA .set_radial\n\n.dont_reset\n #_08B165: DEX\n #_08B166: BPL .next_check\n\n.to_next_find\n #_08B168: LDX.b $72\n #_08B16A: INX\n #_08B16B: CPX.b #$0A\n #_08B16D: BNE .not_maxed\n\n #_08B16F: LDX.b #$09\n\n.not_maxed\n #_08B171: STX.b $72\n\n.set_radial\n #_08B173: TXA\n #_08B174: CLC\n #_08B175: ADC.b #$00\n #_08B177: STA.b $74\n\n; ---------------------------------------------------------\n\n.never\n #_08B179: LDA.b $74\n #_08B17B: LSR A\n #_08B17C: LSR A\n #_08B17D: LSR A\n #_08B17E: LSR A\n #_08B17F: TAX\n\n #_08B180: LDA.l $7F5A57\n #_08B184: CLC\n #_08B185: ADC.b #$03\n #_08B187: CMP.b #$D0\n #_08B189: BCC .not_maxed_distance\n\n #_08B18B: LDA.b #$CF\n\n; ---------------------------------------------------------\n\n.not_maxed_distance\n #_08B18D: STA.l $7F5A57\n #_08B191: STA.b $08\n\n #_08B193: LDA.l $7F5820,X\n #_08B197: CLC\n #_08B198: ADC.b #$06\n #_08B19A: STA.l $7F5820,X\n\n #_08B19E: AND.b #$3F\n #_08B1A0: JSR Ancilla_GetRadialProjection\n\n #_08B1A3: TXA\n #_08B1A4: ASL A\n #_08B1A5: TAX\n\n #_08B1A6: REP #$20\n\n #_08B1A8: PHY\n\n; ---------------------------------------------------------\n\n #_08B1A9: LDA.b $00\n\n #_08B1AB: LDY.b $02\n #_08B1AD: BEQ .positive_y\n\n #_08B1AF: EOR.w #$FFFF\n #_08B1B2: INC A\n\n.positive_y\n #_08B1B3: CLC\n #_08B1B4: ADC.l $7F5924,X\n #_08B1B8: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08B1BA: LDA.b $04\n\n #_08B1BC: LDY.b $06\n #_08B1BE: BEQ .positive_x\n\n #_08B1C0: EOR.w #$FFFF\n #_08B1C3: INC A\n\n.positive_x\n #_08B1C4: CLC\n #_08B1C5: ADC.l $7F592C,X\n #_08B1C9: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08B1CB: PLY\n\n #_08B1CC: SEP #$20\n\n #_08B1CE: LDX.b $74\n\n #_08B1D0: LDA.b $00\n #_08B1D2: STA.l $7F5824,X\n\n #_08B1D6: LDA.b $01\n #_08B1D8: STA.l $7F5864,X\n\n #_08B1DC: LDA.b $04\n #_08B1DE: STA.l $7F58A4,X\n\n #_08B1E2: LDA.b $05\n #_08B1E4: STA.l $7F58E4,X\n\n; ---------------------------------------------------------\n\n #_08B1E8: LDA.b $74\n #_08B1EA: SEC\n #_08B1EB: SBC.b #$10\n #_08B1ED: STA.b $74\n #_08B1EF: BPL .never\n\n #_08B1F1: REP #$20\n\n #_08B1F3: LDA.b $04\n #_08B1F5: SEC\n #_08B1F6: SBC.b $E2\n\n #_08B1F8: CLC\n #_08B1F9: ADC.w #$0008\n #_08B1FC: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08B1FE: SEP #$20\n\n #_08B200: LDA.b $05\n #_08B202: BNE .no_sfx\n\n #_08B204: LDA.b $04\n #_08B206: LSR A\n #_08B207: LSR A\n #_08B208: LSR A\n #_08B209: LSR A\n #_08B20A: LSR A\n #_08B20B: TAX\n\n #_08B20C: LDA.l AncillaPanValues,X\n #_08B210: ORA.b #$2A ; SFX2.2A\n #_08B212: STA.w $012E\n\n; ---------------------------------------------------------\n\n.no_sfx\n #_08B215: PLX\n\n.just_draw\n #_08B216: JSR AncillaDraw_BombosFireColumn\n\n.skip_this_column\n #_08B219: DEX\n #_08B21A: BMI .done_columns\n\n #_08B21C: BRL .next_column\n\n; ---------------------------------------------------------\n\n.done_columns\n #_08B21F: PLX\n\n #_08B220: LDA.l $7F5820\n #_08B224: CMP.b #$80\n #_08B226: BCS .trigger_wrap_up\n\n #_08B228: BRA .finish_up\n\n.trigger_wrap_up\n #_08B22A: LDA.b #$01\n #_08B22C: STA.l $7F5934\n\n.finish_up\n #_08B230: LDA.b $72\n #_08B232: STA.w $0C54,X\n\n #_08B235: RTS", + "file": "bank_08.asm" + }, + { + "name": "BombosSpell_FinishFireColumns", + "code": "BombosSpell_FinishFireColumns:\n #_08B236: PHX\n\n #_08B237: LDA.w $0C54,X\n #_08B23A: TAX\n #_08B23B: LDY.b #$00\n\n.next_column\n #_08B23D: LDA.l $7F5800,X\n #_08B241: DEC A\n #_08B242: STA.l $7F5800,X\n #_08B246: BPL .delay\n\n #_08B248: LDA.b #$03\n #_08B24A: STA.l $7F5800,X\n\n #_08B24E: LDA.l $7F5810,X\n #_08B252: INC A\n #_08B253: STA.l $7F5810,X\n\n #_08B257: CMP.b #$0D\n #_08B259: BCC .delay\n\n #_08B25B: LDA.b #$0D\n #_08B25D: STA.l $7F5810,X\n\n.delay\n #_08B261: JSR AncillaDraw_BombosFireColumn\n\n #_08B264: DEX\n #_08B265: BPL .next_column\n\n; ---------------------------------------------------------\n\n #_08B267: LDX.b #$09\n\n.next_check\n #_08B269: LDA.l $7F5810,X\n #_08B26D: CMP.b #$0D\n #_08B26F: BNE .found_active_column\n\n #_08B271: DEX\n #_08B272: BPL .next_check\n\n; ---------------------------------------------------------\n\n #_08B274: STZ.b $72\n\n #_08B276: LDA.b #$02\n #_08B278: STA.l $7F5934\n\n #_08B27C: PLX\n\n #_08B27D: PHX\n #_08B27E: JSL Medallion_CheckSpriteDamage\n #_08B282: PLX\n\n #_08B283: STZ.w $0C54,X\n\n #_08B286: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_BombosFireColumn", + "code": "AncillaDraw_BombosFireColumn:\n #_08B373: TXA\n #_08B374: CLC\n #_08B375: ADC.b #$00\n #_08B377: STA.b $75\n\n #_08B379: LDA.b #$10\n #_08B37B: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08B37E: LDY.b #$00\n\n.next_never\n #_08B380: PHX\n\n #_08B381: LDA.l $7F5810,X\n #_08B385: CMP.b #$0D\n #_08B387: BEQ .inactive\n\n #_08B389: ASL A\n #_08B38A: CLC\n #_08B38B: ADC.l $7F5810,X\n\n #_08B38F: CLC\n #_08B390: ADC.b #$02\n #_08B392: TAX\n\n #_08B393: STZ.b $08\n\n; ---------------------------------------------------------\n\n.next_object\n #_08B395: LDA.w .char,X\n #_08B398: CMP.b #$FF\n #_08B39A: BEQ .skip\n\n #_08B39C: PHX\n\n #_08B39D: LDX.b $75\n\n #_08B39F: LDA.l $7F5824,X\n #_08B3A3: STA.b $00\n\n #_08B3A5: LDA.l $7F5864,X\n #_08B3A9: STA.b $01\n\n #_08B3AB: LDA.l $7F58A4,X\n #_08B3AF: STA.b $02\n\n #_08B3B1: LDA.l $7F58E4,X\n #_08B3B5: STA.b $03\n\n #_08B3B7: PLX\n #_08B3B8: PHX\n\n #_08B3B9: TXA\n #_08B3BA: ASL A\n #_08B3BB: TAX\n\n #_08B3BC: REP #$20\n\n #_08B3BE: LDA.b $00\n #_08B3C0: CLC\n #_08B3C1: ADC.w .offset_y,X\n\n #_08B3C4: SEC\n #_08B3C5: SBC.b $E8\n #_08B3C7: STA.b $00\n\n #_08B3C9: LDA.b $02\n #_08B3CB: CLC\n #_08B3CC: ADC.w .offset_x,X\n\n #_08B3CF: SEC\n #_08B3D0: SBC.b $E2\n #_08B3D2: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08B3D4: SEP #$20\n\n #_08B3D6: JSR Ancilla_SetOAM_XY\n\n #_08B3D9: PLX\n\n #_08B3DA: LDA.w .char,X\n #_08B3DD: STA.b ($90),Y\n\n #_08B3DF: INY\n\n #_08B3E0: LDA.w .prop,X\n #_08B3E3: STA.b ($90),Y\n\n #_08B3E5: INY\n #_08B3E6: PHY\n\n #_08B3E7: TYA\n #_08B3E8: SEC\n #_08B3E9: SBC.b #$04\n #_08B3EB: LSR A\n #_08B3EC: LSR A\n #_08B3ED: TAY\n\n #_08B3EE: LDA.b #$02\n #_08B3F0: STA.b ($92),Y\n\n #_08B3F2: PLY\n\n; ---------------------------------------------------------\n\n.skip\n #_08B3F3: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08B3F6: DEX\n\n #_08B3F7: INC.b $08\n\n #_08B3F9: LDA.b $08\n #_08B3FB: CMP.b #$03\n #_08B3FD: BNE .next_object\n\n; ---------------------------------------------------------\n\n.inactive\n #_08B3FF: PLX\n\n #_08B400: LDA.b $75\n #_08B402: SEC\n #_08B403: SBC.b #$10\n #_08B405: STA.b $75\n #_08B407: BMI .exit\n\n #_08B409: BRL .next_never\n\n.exit\n #_08B40C: RTS", + "file": "bank_08.asm" + }, + { + "name": "BombosSpell_ControlBlasting", + "code": "BombosSpell_ControlBlasting:\n #_08B40D: PHX\n\n #_08B40E: LDY.b #$00\n\n #_08B410: LDA.w $0C54,X\n #_08B413: STA.b $72\n\n #_08B415: TAX\n\n.next_blast\n #_08B416: LDA.l $7F5935,X\n #_08B41A: CMP.b #$08\n #_08B41C: BEQ .inactive\n\n #_08B41E: LDA.l $7F5945,X\n #_08B422: DEC A\n #_08B423: STA.l $7F5945,X\n #_08B427: BMI .time_up\n\n.inactive\n #_08B429: BRL .just_draw\n\n; ---------------------------------------------------------\n\n.time_up\n #_08B42C: LDA.b #$03\n #_08B42E: STA.l $7F5945,X\n\n #_08B432: LDA.l $7F5935,X\n #_08B436: INC A\n #_08B437: STA.l $7F5935,X\n\n #_08B43B: CMP.b #$01\n #_08B43D: BNE .inactive\n\n #_08B43F: LDA.l $7F5A56\n #_08B443: BNE .inactive\n\n; ---------------------------------------------------------\n\n #_08B445: PHX\n\n #_08B446: LDA.b $72\n #_08B448: CMP.b #$0F\n #_08B44A: BEQ .maxed_blast\n\n #_08B44C: LDA.b $72\n #_08B44E: INC A\n #_08B44F: CMP.b #$10\n #_08B451: BNE .not_maxed\n\n #_08B453: LDA.b #$0F\n\n.not_maxed\n #_08B455: STA.b $72\n\n #_08B457: TAX\n\n #_08B458: BRA .activate_next\n\n; ---------------------------------------------------------\n\n.maxed_blast\n #_08B45A: LDX.b #$0F\n\n.next_check\n #_08B45C: LDA.l $7F5935,X\n #_08B460: CMP.b #$08\n #_08B462: BEQ .activate_next\n\n #_08B464: DEX\n #_08B465: BPL .next_check\n\n; ---------------------------------------------------------\n\n.activate_next\n #_08B467: LDA.b #$00\n #_08B469: STA.l $7F5935,X\n\n #_08B46D: LDA.b #$03\n #_08B46F: STA.l $7F5945,X\n\n #_08B473: PHY\n\n #_08B474: TXA\n #_08B475: ASL A\n #_08B476: TAY\n\n #_08B477: LDA.b $1A\n #_08B479: AND.b #$3F\n #_08B47B: TAX\n\n #_08B47C: LDA.l BombosBlastRandomPosition+0,X\n #_08B480: STA.b $00\n #_08B482: STZ.b $01\n\n #_08B484: LDA.l BombosBlastRandomPosition+3,X\n #_08B488: STA.b $02\n #_08B48A: STZ.b $03\n\n; ---------------------------------------------------------\n\n #_08B48C: TYX\n\n #_08B48D: REP #$20\n\n #_08B48F: LDA.b $00\n #_08B491: CLC\n #_08B492: ADC.b $E8\n #_08B494: STA.l $7F5955,X\n\n #_08B498: LDA.b $02\n #_08B49A: CLC\n #_08B49B: ADC.b $E2\n #_08B49D: STA.l $7F59D5,X\n\n #_08B4A1: SEP #$20\n\n #_08B4A3: LDA.l $7F59D5,X\n #_08B4A7: LSR A\n #_08B4A8: LSR A\n #_08B4A9: LSR A\n #_08B4AA: LSR A\n #_08B4AB: LSR A\n #_08B4AC: TAX\n\n #_08B4AD: LDA.l AncillaPanValues,X\n #_08B4B1: ORA.b #$0C ; SFX2.0C\n #_08B4B3: STA.w $012E\n\n #_08B4B6: PLY\n #_08B4B7: PLX\n\n; ---------------------------------------------------------\n\n.just_draw\n #_08B4B8: JSR AncillaDraw_BombosBlast\n\n #_08B4BB: DEX\n #_08B4BC: BMI .done_blasting\n\n #_08B4BE: BRL .next_blast\n\n; ---------------------------------------------------------\n\n.done_blasting\n #_08B4C1: LDX.b #$0F\n\n.next_active_check\n #_08B4C3: LDA.l $7F5935,X\n #_08B4C7: CMP.b #$08\n #_08B4C9: BNE .found_one\n\n #_08B4CB: DEX\n #_08B4CC: BPL .next_active_check\n\n; ---------------------------------------------------------\n\n #_08B4CE: PLX\n\n #_08B4CF: STZ.w $0C4A,X\n\n #_08B4D2: LDA.b #$01\n #_08B4D4: STA.w $0AAA\n\n #_08B4D7: STZ.w $0324\n #_08B4DA: STZ.w $031C\n #_08B4DD: STZ.w $031D\n\n #_08B4E0: STZ.b $50\n\n #_08B4E2: STZ.w $0FC1\n\n #_08B4E5: LDA.b $5D\n #_08B4E7: CMP.b #$1A ; LINKSTATE 1A\n #_08B4E9: BEQ .link_bombosing\n\n #_08B4EB: LDA.b #$00 ; LINKSTATE 00\n #_08B4ED: STA.b $5D\n\n #_08B4EF: STZ.b $3D\n\n #_08B4F1: LDY.b #$00\n\n #_08B4F3: LDA.b $3C\n #_08B4F5: BEQ .sword_not_drawn\n\n #_08B4F7: LDA.b $F0\n #_08B4F9: AND.b #$80\n #_08B4FB: TAY\n\n.sword_not_drawn\n #_08B4FC: STY.b $3A\n\n.link_bombosing\n #_08B4FE: STZ.b $5E\n #_08B500: STZ.w $0325\n\n #_08B503: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.found_one\n #_08B505: PLX\n\n #_08B506: LDA.b $72\n #_08B508: STA.w $0C54,X\n\n.finish_up\n #_08B50B: LDA.l $7F5A55\n #_08B50F: DEC A\n #_08B510: STA.l $7F5A55\n #_08B514: BNE .exit\n\n #_08B516: LDA.b #$01\n #_08B518: STA.l $7F5A56\n #_08B51C: STA.l $7F5A55\n\n.exit\n #_08B520: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_BombosBlast", + "code": "AncillaDraw_BombosBlast:\n #_08B5E1: PHX\n\n #_08B5E2: LDA.b #$03\n #_08B5E4: STA.b $0C\n\n #_08B5E6: PHX\n\n #_08B5E7: TXA\n #_08B5E8: ASL A\n #_08B5E9: TAX\n\n #_08B5EA: LDA.l $7F5955,X\n #_08B5EE: STA.b $08\n\n #_08B5F0: LDA.l $7F5956,X\n #_08B5F4: STA.b $09\n\n #_08B5F6: LDA.l $7F59D5,X\n #_08B5FA: STA.b $0A\n\n #_08B5FC: LDA.l $7F59D6,X\n #_08B600: STA.b $0B\n\n #_08B602: PLX\n\n; ---------------------------------------------------------\n\n #_08B603: LDA.l $7F5935,X\n\n #_08B607: CMP.b #$08\n #_08B609: BEQ .inactive\n\n #_08B60B: LDA.b #$10\n #_08B60D: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08B610: LDY.b #$00\n\n #_08B612: LDA.l $7F5935,X\n #_08B616: ASL A\n #_08B617: ASL A\n\n #_08B618: CLC\n #_08B619: ADC.b #$03\n #_08B61B: STA.b $73\n\n #_08B61D: TAX\n\n; ---------------------------------------------------------\n\n.next_object\n #_08B61E: LDA.w .char,X\n #_08B621: CMP.b #$FF\n #_08B623: BEQ .skip_object\n\n; ---------------------------------------------------------\n\n #_08B625: PHX\n\n #_08B626: TXA\n #_08B627: ASL A\n #_08B628: TAX\n\n #_08B629: REP #$20\n\n #_08B62B: LDA.w .offset_y,X\n #_08B62E: CLC\n #_08B62F: ADC.b $08\n\n #_08B631: SEC\n #_08B632: SBC.b $E8\n #_08B634: STA.b $00\n\n #_08B636: LDA.w .offset_x,X\n #_08B639: CLC\n #_08B63A: ADC.b $0A\n\n #_08B63C: SEC\n #_08B63D: SBC.b $E2\n #_08B63F: STA.b $02\n\n #_08B641: SEP #$20\n\n #_08B643: PLX\n\n; ---------------------------------------------------------\n\n #_08B644: JSR Ancilla_SetOAM_XY\n\n #_08B647: LDA.w .char,X\n #_08B64A: STA.b ($90),Y\n\n #_08B64C: INY\n\n #_08B64D: LDA.w .prop,X\n #_08B650: STA.b ($90),Y\n\n #_08B652: INY\n #_08B653: PHY\n\n #_08B654: TYA\n #_08B655: SEC\n #_08B656: SBC.b #$04\n\n #_08B658: LSR A\n #_08B659: LSR A\n #_08B65A: TAY\n\n #_08B65B: LDA.b #$02\n #_08B65D: STA.b ($92),Y\n\n #_08B65F: PLY\n\n; ---------------------------------------------------------\n\n.skip_object\n #_08B660: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08B663: DEX\n\n #_08B664: DEC.b $0C\n #_08B666: BPL .next_object\n\n; ---------------------------------------------------------\n\n.inactive\n #_08B668: PLX\n\n #_08B669: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1C_QuakeSpell", + "code": "Ancilla1C_QuakeSpell:\n #_08B66A: LDA.b $11\n #_08B66C: BNE .only_draw\n\n #_08B66E: LDA.w $0C54,X\n #_08B671: CMP.b #$02\n #_08B673: BEQ .finish_up\n\n #_08B675: JSR QuakeSpell_ShakeScreen\n #_08B678: JSR QuakeSpell_ControlBolts\n\n #_08B67B: BRL QuakeSpell_SpreadBolts\n\n.finish_up\n #_08B67E: BRA QuakeSpell_FinishingTouches\n\n; ---------------------------------------------------------\n\n.only_draw\n #_08B680: PHX\n\n #_08B681: LDX.b #$04\n\n #_08B683: LDA.l $7F5805,X\n #_08B687: CMP.w QuakeSpellStates,X\n #_08B68A: BEQ .bad_branch\n\n #_08B68C: JSR AncillaDraw_QuakeInitialBolts\n\n.bad_branch\n #_08B68F: DEX\n #_08B690: BPL .bad_branch\n\n #_08B692: PLX\n\n #_08B693: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_FinishingTouches", + "code": "QuakeSpell_FinishingTouches:\n #_08B694: PHX\n\n #_08B695: JSL Medallion_CheckSpriteDamage\n #_08B699: JSL Prepare_ApplyRumbleToSprites\n\n #_08B69D: PLX\n\n #_08B69E: STZ.w $0C4A,X\n\n #_08B6A1: LDA.b #$00 ; LINKSTATE 00\n #_08B6A3: STA.b $5D\n\n #_08B6A5: LDA.b #$01\n #_08B6A7: STA.w $0AAA\n\n #_08B6AA: STZ.w $0324\n #_08B6AD: STZ.w $031C\n #_08B6B0: STZ.w $031D\n\n #_08B6B3: STZ.b $50\n #_08B6B5: STZ.b $3D\n\n #_08B6B7: STZ.w $0FC1\n\n #_08B6BA: STZ.w $011A\n #_08B6BD: STZ.w $011B\n #_08B6C0: STZ.w $011C\n #_08B6C3: STZ.w $011D\n\n; ---------------------------------------------------------\n\n #_08B6C6: LDA.b $8A\n #_08B6C8: CMP.b #$47 ; OW 47\n #_08B6CA: BNE .no_turtle_rock_trigger\n\n #_08B6CC: LDA.l $7EF2C7\n #_08B6D0: AND.b #$20\n #_08B6D2: BNE .no_turtle_rock_trigger\n\n #_08B6D4: LDY.b #$03\n #_08B6D6: JSR Ancilla_CheckForEntranceTrigger\n #_08B6D9: BCC .no_turtle_rock_trigger\n\n #_08B6DB: LDA.b #$04\n #_08B6DD: STA.w $04C6\n\n #_08B6E0: STZ.b $B0\n #_08B6E2: STZ.b $C8\n\n; ---------------------------------------------------------\n\n.no_turtle_rock_trigger\n #_08B6E4: LDY.b #$00\n\n #_08B6E6: LDA.b $3C\n #_08B6E8: BEQ .no_sword_charge\n\n #_08B6EA: LDA.b $F0\n #_08B6EC: AND.b #$80\n #_08B6EE: TAY\n\n.no_sword_charge\n #_08B6EF: STY.b $3A\n\n #_08B6F1: STZ.b $5E\n #_08B6F3: STZ.w $0325\n\n #_08B6F6: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_ShakeScreen", + "code": "QuakeSpell_ShakeScreen:\n #_08B6F7: REP #$20\n\n #_08B6F9: LDA.l $7F581E\n #_08B6FD: STA.w $011C\n\n #_08B700: EOR.w #$FFFF\n #_08B703: INC A\n #_08B704: STA.l $7F581E\n\n #_08B708: SEP #$20\n\n #_08B70A: LDA.b $30\n #_08B70C: CLC\n #_08B70D: ADC.w $011C\n #_08B710: STA.b $30\n\n #_08B712: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpellStates", + "code": "QuakeSpellStates:\n #_08B713: db $17, $16, $17, $16, $10\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_ControlBolts", + "code": "QuakeSpell_ControlBolts:\n #_08B718: PHX\n\n #_08B719: LDA.w $0C54,X\n #_08B71C: STA.l $7F580F\n\n #_08B720: LDA.l $7F580A\n #_08B724: TAX\n\n; ---------------------------------------------------------\n\n.next_bolt\n #_08B725: LDA.l $7F5805,X\n #_08B729: CMP.w QuakeSpellStates,X\n #_08B72C: BEQ .skip\n\n #_08B72E: LDA.l $7F5800,X\n #_08B732: DEC A\n #_08B733: STA.l $7F5800,X\n #_08B737: BPL .just_draw\n\n #_08B739: LDA.b #$01\n #_08B73B: STA.l $7F5800,X\n #_08B73F: LDA.l $7F5805,X\n\n #_08B743: INC A\n #_08B744: STA.l $7F5805,X\n\n #_08B748: CMP.w QuakeSpellStates,X\n #_08B74B: BEQ .skip\n\n; ---------------------------------------------------------\n\n #_08B74D: TXY\n #_08B74E: BNE .dont_go_to_2\n\n #_08B750: CMP.b #$02\n #_08B752: BNE .dont_go_to_2\n\n #_08B754: LDA.b #$0C ; SFX2.0C\n #_08B756: JSR Ancilla_SFX2_Near\n\n #_08B759: LDA.b #$01\n #_08B75B: STA.l $7F580A\n\n #_08B75F: BRA .just_draw\n\n; ---------------------------------------------------------\n\n.dont_go_to_2\n #_08B761: CPX.b #$01\n #_08B763: BNE .dont_go_to_3\n\n #_08B765: CMP.b #$02\n #_08B767: BNE .dont_go_to_3\n\n #_08B769: LDA.b #$04\n #_08B76B: STA.l $7F580A\n\n #_08B76F: BRA .just_draw\n\n; ---------------------------------------------------------\n\n.dont_go_to_3\n #_08B771: CPX.b #$04\n #_08B773: BNE .just_draw\n\n #_08B775: CMP.b #$07\n #_08B777: BNE .just_draw\n\n #_08B779: LDA.b #$01\n #_08B77B: STA.l $7F580F\n\n; ---------------------------------------------------------\n\n.just_draw\n #_08B77F: JSR AncillaDraw_QuakeInitialBolts\n\n; ---------------------------------------------------------\n\n.skip\n #_08B782: DEX\n #_08B783: BPL .next_bolt\n\n #_08B785: PLX\n\n #_08B786: LDA.l $7F580F\n #_08B78A: STA.w $0C54,X\n\n #_08B78D: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_QuakeInitialBolts", + "code": "AncillaDraw_QuakeInitialBolts:\n #_08B793: PHX\n\n #_08B794: LDA.l $7F5805,X\n #_08B798: CLC\n #_08B799: ADC.w .offset,X\n #_08B79C: ASL A\n #_08B79D: TAY\n\n #_08B79E: LDA.w QuakeSpell_InitialBoltPointers+0,Y\n #_08B7A1: STA.b $72\n\n #_08B7A3: LDA.w QuakeSpell_InitialBoltPointers+1,Y\n #_08B7A6: STA.b $73\n\n #_08B7A8: LDA.w QuakeSpell_InitialBoltPointers+2,Y\n #_08B7AB: STA.b $74\n\n #_08B7AD: LDA.w QuakeSpell_InitialBoltPointers+3,Y\n #_08B7B0: STA.b $75\n\n; ---------------------------------------------------------\n\n #_08B7B2: REP #$20\n\n #_08B7B4: LDA.b $74\n #_08B7B6: SEC\n #_08B7B7: SBC.b $72\n #_08B7B9: STA.b $74\n\n #_08B7BB: SEP #$20\n\n #_08B7BD: LDX.b #$00\n\n; ---------------------------------------------------------\n\n.next_bolt\n #_08B7BF: TXY\n\n #_08B7C0: REP #$20\n\n #_08B7C2: LDA.b ($72),Y\n #_08B7C4: AND.w #$00FF\n #_08B7C7: CMP.w #$0080\n #_08B7CA: BCC .positive_x\n\n #_08B7CC: ORA.w #$FF00\n\n.positive_x\n #_08B7CF: STA.b $02\n\n #_08B7D1: LDA.l $7F580D\n #_08B7D5: CLC\n #_08B7D6: ADC.b $02\n\n #_08B7D8: SEC\n #_08B7D9: SBC.b $E2\n #_08B7DB: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08B7DD: INX\n #_08B7DE: TXY\n\n #_08B7DF: LDA.b ($72),Y\n #_08B7E1: AND.w #$00FF\n #_08B7E4: CMP.w #$0080\n #_08B7E7: BCC .positive_y\n\n #_08B7E9: ORA.w #$FF00\n\n.positive_y\n #_08B7EC: STA.b $00\n\n #_08B7EE: LDA.l $7F580B\n #_08B7F2: CLC\n #_08B7F3: ADC.b $00\n\n #_08B7F5: SEC\n #_08B7F6: SBC.b $E8\n #_08B7F8: STA.b $00\n\n #_08B7FA: INX\n\n #_08B7FB: SEP #$20\n\n #_08B7FD: PHX\n\n #_08B7FE: LDX.b #$F0\n\n #_08B800: LDA.b $01\n #_08B802: BNE .off_screen\n\n #_08B804: LDA.b $03\n #_08B806: BNE .off_screen\n\n #_08B808: LDY.b #$00\n\n #_08B80A: LDA.b $02\n #_08B80C: STA.b ($90),Y\n\n #_08B80E: LDA.b $00\n #_08B810: CMP.b #$F0\n #_08B812: BCS .off_screen\n\n #_08B814: TAX\n\n; ---------------------------------------------------------\n\n.off_screen\n #_08B815: INC.b $90\n\n #_08B817: LDY.b #$00\n\n #_08B819: TXA\n #_08B81A: STA.b ($90),Y\n\n #_08B81C: INC.b $90\n\n #_08B81E: PLX\n #_08B81F: PHX\n\n #_08B820: TXY\n\n #_08B821: LDA.b ($72),Y\n #_08B823: AND.b #$0F\n #_08B825: TAX\n\n #_08B826: LDA.w QuakeBoltChar,X\n #_08B829: LDY.b #$00\n #_08B82B: STA.b ($90),Y\n\n #_08B82D: INC.b $90\n\n; ---------------------------------------------------------\n\n #_08B82F: PLX\n #_08B830: TXY\n\n #_08B831: LDA.b ($72),Y\n #_08B833: AND.b #$C0\n #_08B835: ORA.b #$3C\n\n #_08B837: LDY.b #$00\n #_08B839: STA.b ($90),Y\n\n #_08B83B: INC.b $90\n\n #_08B83D: LDY.b #$00\n #_08B83F: LDA.b #$02\n #_08B841: STA.b ($92),Y\n\n #_08B843: INC.b $92\n\n #_08B845: INX\n #_08B846: CPX.b $74\n #_08B848: BEQ .done\n\n #_08B84A: BRL .next_bolt\n\n; ---------------------------------------------------------\n\n.done\n #_08B84D: PLX\n\n #_08B84E: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_SpreadBolts", + "code": "QuakeSpell_SpreadBolts:\n #_08B84F: LDA.w $0C54,X\n #_08B852: CMP.b #$01\n #_08B854: BNE .exit\n\n #_08B856: LDA.w $0C68,X\n #_08B859: BNE .proceed_to_bolts\n\n #_08B85B: LDA.b #$02\n #_08B85D: STA.w $0C68,X\n\n #_08B860: LDA.w $0C5E,X\n #_08B863: INC A\n #_08B864: STA.w $0C5E,X\n\n #_08B867: CMP.b #$37\n #_08B869: BNE .proceed_to_bolts\n\n #_08B86B: LDA.b #$02\n #_08B86D: STA.w $0C54,X\n\n.exit\n #_08B870: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeBoltChar", + "code": "QuakeBoltChar:\n #_08B873: db $40, $42, $44, $46\n #_08B877: db $48, $4A, $4C, $4E\n #_08B87B: db $60, $62, $64, $66\n #_08B87F: db $68, $6A, $63\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_QuakeSpreadBolts", + "code": "AncillaDraw_QuakeSpreadBolts:\n #_08B882: PHX\n\n #_08B883: LDA.w $0C5E,X\n #_08B886: ASL A\n #_08B887: TAY\n\n #_08B888: LDA.w QuakeSpell_SpreadBoltPointers+0,Y\n #_08B88B: STA.b $72\n\n #_08B88D: LDA.w QuakeSpell_SpreadBoltPointers+1,Y\n #_08B890: STA.b $73\n\n #_08B892: LDA.w QuakeSpell_SpreadBoltPointers+2,Y\n #_08B895: STA.b $74\n\n #_08B897: LDA.w QuakeSpell_SpreadBoltPointers+3,Y\n #_08B89A: STA.b $75\n\n #_08B89C: REP #$20\n\n #_08B89E: LDA.b $74\n #_08B8A0: SEC\n #_08B8A1: SBC.b $72\n #_08B8A3: STA.b $74\n\n #_08B8A5: SEP #$20\n\n #_08B8A7: LDX.b #$00\n\n; ---------------------------------------------------------\n\n.next_bolt\n #_08B8A9: TXY\n\n #_08B8AA: LDA.b ($72),Y\n #_08B8AC: LDY.b #$00\n #_08B8AE: STA.b ($90),Y\n\n #_08B8B0: INC.b $90\n\n; ---------------------------------------------------------\n\n #_08B8B2: INX\n #_08B8B3: TXY\n\n #_08B8B4: LDA.b ($72),Y\n #_08B8B6: LDY.b #$00\n #_08B8B8: STA.b ($90),Y\n\n #_08B8BA: INC.b $90\n\n; ---------------------------------------------------------\n\n #_08B8BC: INX\n #_08B8BD: PHX\n #_08B8BE: TXY\n\n #_08B8BF: LDA.b ($72),Y\n #_08B8C1: AND.b #$0F\n #_08B8C3: TAX\n\n #_08B8C4: LDA.w QuakeBoltChar,X\n #_08B8C7: LDY.b #$00\n #_08B8C9: STA.b ($90),Y\n\n #_08B8CB: INC.b $90\n\n; ---------------------------------------------------------\n\n #_08B8CD: PLX\n #_08B8CE: TXY\n\n #_08B8CF: LDA.b ($72),Y\n #_08B8D1: AND.b #$C0\n #_08B8D3: ORA.b #$3C\n\n #_08B8D5: LDY.b #$00\n\n #_08B8D7: STA.b ($90),Y\n\n #_08B8D9: INC.b $90\n\n; ---------------------------------------------------------\n\n #_08B8DB: TXY\n #_08B8DC: LDA.b ($72),Y\n #_08B8DE: AND.b #$30\n\n #_08B8E0: LSR A\n #_08B8E1: LSR A\n #_08B8E2: LSR A\n #_08B8E3: LSR A\n\n #_08B8E4: LDY.b #$00\n\n #_08B8E6: STA.b ($92),Y\n\n #_08B8E8: INC.b $92\n\n #_08B8EA: JSR Ancilla_AllocateOAMFromCustomRegion\n\n #_08B8ED: INX\n #_08B8EE: CPX.b $74\n #_08B8F0: BNE .next_bolt\n\n; ---------------------------------------------------------\n\n #_08B8F2: PLX\n\n #_08B8F3: RTS", + "file": "bank_08.asm" + }, + { + "name": "PowderDraw", + "code": "PowderDraw:\n\n.anim_step\n #_08B8F4: db $0D, $0E, $0F, $00, $01\n #_08B8F9: db $02, $03, $04, $05, $06\n\n #_08B8FE: db $0A, $0B, $0C, $00, $01\n #_08B903: db $02, $03, $04, $05, $06\n\n #_08B908: db $10, $11, $12, $00, $01\n #_08B90D: db $02, $03, $04, $05, $06\n\n #_08B912: db $07, $08, $09, $00, $01\n #_08B917: db $02, $03, $04, $05, $06\n\n; ---------------------------------------------------------\n\n.group_offset\n #_08B91C: db $00\n #_08B91D: db $0A\n #_08B91E: db $14\n #_08B91F: db $1E\n\n; ---------------------------------------------------------\n\n.offset_y\n #_08B920: dw -20, -15, -13, -7, -18\n #_08B92A: dw -13, -13, -13, -20, -13\n #_08B934: dw -13, -8, -20, -13, -13\n #_08B93E: dw -8, -19, -12, -12\n\n #_08B946: dw -7, -18, -11, -11, -6\n #_08B950: dw -17, -10, -10, -5, -16\n #_08B95A: dw -14, -12, -9, -17, -14\n #_08B964: dw -12, -8, -18, -14\n\n #_08B96C: dw -13, -6, -33, -31, -29\n #_08B976: dw -26, -28, -25, -23, -19\n #_08B980: dw -22, -18, -17, -10, -2\n #_08B98A: dw 0, 2, 5, -9\n\n #_08B992: dw -6, -4, 0, -16, -12\n #_08B99C: dw -11, -4, -16, -14, -12\n #_08B9A6: dw -9, -17, -14, -12, -8\n #_08B9B0: dw -18, -14, -13, -6\n\n; ---------------------------------------------------------\n\n.offset_x\n #_08B9B8: dw -5, -12, 2, -9, -7\n #_08B9C2: dw -10, -6, -2, -6, -12\n #_08B9CC: dw 1, -6, -6, -12, 1\n #_08B9D6: dw -6, -6, -12, 1\n\n #_08B9DE: dw -6, -6, -12, 1, -6\n #_08B9E8: dw -6, -12, 1, -6, -17\n #_08B9F2: dw -23, -14, -19, -11, -18\n #_08B9FC: dw -9, -13, -4, -13\n\n #_08BA04: dw -1, -8, -3, -9, 0\n #_08BA0E: dw -5, -3, -10, -1, -5\n #_08BA18: dw -4, -13, -1, -8, -3\n #_08BA22: dw -9, 0, -5, -3\n\n #_08BA2A: dw -10, -1, -5, -3, -13\n #_08BA34: dw -1, -8, 9, 15, 6\n #_08BA3E: dw 11, 3, 10, 1, 5\n #_08BA48: dw -4, 5, -7, 0\n\n; ---------------------------------------------------------\n\n.char\n #_08BA50: db $09, $0A, $0A, $09, $09\n\n #_08BA55: db $09, $09, $09, $09, $09\n\n #_08BA5A: db $09, $09, $09, $09, $09\n\n #_08BA5F: db $09, $09, $09, $09, $09\n\n; ---------------------------------------------------------\n\n.prop\n #_08BA64: db $68, $24, $A2, $28, $68\n #_08BA69: db $E2, $28, $A4, $68, $E2\n #_08BA6E: db $A4, $28, $22, $A4, $E8\n #_08BA73: db $62, $24, $A8, $E2\n\n #_08BA77: db $64, $28, $A2, $E4, $68\n #_08BA7C: db $22, $A4, $E8, $62, $E2\n #_08BA81: db $A4, $E8, $64, $E8, $A8\n #_08BA86: db $E4, $62, $E4, $A8\n\n #_08BA8A: db $E2, $68, $E2, $A4, $E8\n #_08BA8F: db $64, $E8, $A8, $E4, $62\n #_08BA94: db $E4, $A8, $E2, $68, $E2\n #_08BA99: db $A4, $E8, $64, $E8\n\n #_08BA9D: db $A8, $E4, $62, $E4, $A8\n #_08BAA2: db $E2, $68, $E2, $A4, $E8\n #_08BAA7: db $64, $E8, $A8, $E4, $62\n #_08BAAC: db $E4, $A8, $E2, $68\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1A_PowderDust", + "code": "Ancilla1A_PowderDust:\n #_08BAB0: LDA.b $11\n #_08BAB2: BNE .just_draw\n\n #_08BAB4: JSR Powder_ApplyDamageToSprites\n\n #_08BAB7: DEC.w $03B1,X\n #_08BABA: BPL .just_draw\n\n; ---------------------------------------------------------\n\n #_08BABC: LDA.b #$01\n #_08BABE: STA.w $03B1,X\n\n #_08BAC1: LDY.w $0C72,X\n\n #_08BAC4: LDA.w PowderDraw_group_offset,Y\n #_08BAC7: STA.b $00\n\n #_08BAC9: LDA.w $0C5E,X\n #_08BACC: INC A\n #_08BACD: CMP.b #$0A\n #_08BACF: BNE .dont_terminate\n\n #_08BAD1: STZ.w $0C4A,X\n #_08BAD4: STZ.w $0333\n\n #_08BAD7: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Powder", + "code": "AncillaDraw_Powder:\n #_08BAEB: JSR Ancilla_PrepOAMCoord\n\n #_08BAEE: PHX\n\n #_08BAEF: LDA.b $00\n #_08BAF1: STA.b $06\n\n #_08BAF3: LDA.b $01\n #_08BAF5: STA.b $07\n\n #_08BAF7: LDA.b $02\n #_08BAF9: STA.b $08\n\n #_08BAFB: LDA.b $03\n #_08BAFD: STA.b $09\n\n #_08BAFF: LDA.w $03C2,X\n #_08BB02: STA.b $0C\n\n #_08BB04: ASL A\n #_08BB05: ASL A\n #_08BB06: STA.b $0A\n\n #_08BB08: ASL A\n #_08BB09: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08BB0B: LDA.b #$03\n #_08BB0D: STA.w $0072\n\n #_08BB10: LDY.b #$00\n\n.next_object\n #_08BB12: LDX.b $04\n\n #_08BB14: REP #$20\n\n #_08BB16: LDA.b $06\n #_08BB18: CLC\n #_08BB19: ADC.w PowderDraw_offset_y,X\n #_08BB1C: STA.b $00\n\n #_08BB1E: LDA.b $08\n #_08BB20: CLC\n #_08BB21: ADC.w PowderDraw_offset_x,X\n #_08BB24: STA.b $02\n\n #_08BB26: SEP #$20\n\n #_08BB28: JSR Ancilla_SetOAM_XY\n\n #_08BB2B: LDX.b $0C\n\n #_08BB2D: LDA.w PowderDraw_char,X\n #_08BB30: STA.b ($90),Y\n\n #_08BB32: INY\n\n #_08BB33: LDX.b $0A\n\n #_08BB35: LDA.w PowderDraw_prop,X\n #_08BB38: AND.b #$CF\n #_08BB3A: ORA.b $65\n #_08BB3C: STA.b ($90),Y\n\n #_08BB3E: INY\n #_08BB3F: PHY\n\n #_08BB40: TYA\n #_08BB41: SEC\n #_08BB42: SBC.b #$04\n #_08BB44: LSR A\n #_08BB45: LSR A\n #_08BB46: TAY\n\n #_08BB47: LDA.b #$00\n #_08BB49: STA.b ($92),Y\n\n #_08BB4B: PLY\n\n #_08BB4C: INC.b $04\n #_08BB4E: INC.b $04\n\n #_08BB50: INC.b $0A\n\n #_08BB52: DEC.b $72\n #_08BB54: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_08BB56: PLX\n\n #_08BB57: RTS", + "file": "bank_08.asm" + }, + { + "name": "Powder_ApplyDamageToSprites", + "code": "Powder_ApplyDamageToSprites:\n #_08BB58: LDY.b #$0F\n\n.next_sprite\n #_08BB5A: TYA\n #_08BB5B: EOR.b $1A\n #_08BB5D: AND.b #$03\n #_08BB5F: BNE .skip_sprite\n\n #_08BB61: LDA.w $0DD0,Y\n #_08BB64: CMP.b #$09\n #_08BB66: BNE .skip_sprite\n\n #_08BB68: LDA.w $0CD2,Y\n #_08BB6B: AND.b #$20\n #_08BB6D: BNE .skip_sprite\n\n; ---------------------------------------------------------\n\n #_08BB6F: JSR Ancilla_SetupBasicHitBox\n\n #_08BB72: PHY\n #_08BB73: PHX\n\n #_08BB74: TYX\n #_08BB75: JSL Sprite_SetupHitbox_long\n\n #_08BB79: PLX\n #_08BB7A: PLY\n\n #_08BB7B: JSL CheckIfHitBoxesOverlap_long\n #_08BB7F: BCC .skip_sprite\n\n #_08BB81: LDA.w $0E20,Y\n #_08BB84: CMP.b #$0B ; SPRITE 0B\n #_08BB86: BNE .not_cucco_easter_egg\n\n #_08BB88: LDA.b $1B\n #_08BB8A: BEQ .not_cucco_easter_egg\n\n #_08BB8C: LDA.w $048E ; ROOM 0101\n #_08BB8F: DEC A\n #_08BB90: BNE .not_cucco_easter_egg\n\n #_08BB92: BRA .special_transform\n\n; ---------------------------------------------------------\n\n.not_cucco_easter_egg\n #_08BB94: CMP.b #$0D ; SPRITE 0D\n #_08BB96: BNE .not_buzz_blob\n\n #_08BB98: LDA.w $0EB0,Y\n #_08BB9B: BNE .skip_sprite\n\n.special_transform\n #_08BB9D: LDA.b #$01\n #_08BB9F: STA.w $0EB0,Y\n\n #_08BBA2: PHX\n #_08BBA3: PHY\n\n #_08BBA4: TYX\n #_08BBA5: JSL Sprite_SpawnPoofGarnish\n\n #_08BBA9: PLY\n #_08BBAA: PLX\n\n #_08BBAB: BRA .skip_sprite\n\n; ---------------------------------------------------------\n\n.not_buzz_blob\n #_08BBAD: PHX\n #_08BBAE: PHY\n\n #_08BBAF: TYX\n\n #_08BBB0: LDA.b #$0A\n #_08BBB2: JSL Ancilla_CheckDamageToSprite_preset\n\n #_08BBB6: PLY\n #_08BBB7: PLX\n\n.skip_sprite\n #_08BBB8: DEY\n #_08BBB9: BPL .next_sprite\n\n #_08BBBB: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1D_ScreenShake", + "code": "Ancilla1D_ScreenShake:\n #_08BBBC: LDA.b $11\n #_08BBBE: BNE .alert\n\n #_08BBC0: DEC.w $0C5E,X\n #_08BBC3: BPL .delay\n\n #_08BBC5: STZ.w $011A\n #_08BBC8: STZ.w $011B\n #_08BBCB: STZ.w $011C\n #_08BBCE: STZ.w $011D\n\n #_08BBD1: STZ.w $0C4A,X\n\n #_08BBD4: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1E_DashDust", + "code": "Ancilla1E_DashDust:\n #_08BC92: LDA.w $0C54,X\n #_08BC95: BEQ .stationary\n\n #_08BC97: JSL DashDust_Motive\n\n #_08BC9B: BRA .exit\n\n; ---------------------------------------------------------\n\n.stationary\n #_08BC9D: LDA.w $0C68,X\n #_08BCA0: BNE .delay\n\n #_08BCA2: LDA.b #$03\n #_08BCA4: STA.w $0C68,X\n\n #_08BCA7: LDA.w $0C5E,X\n #_08BCAA: INC A\n #_08BCAB: STA.w $0C5E,X\n\n #_08BCAE: CMP.b #$05\n #_08BCB0: BEQ .exit\n\n #_08BCB2: CMP.b #$06\n #_08BCB4: BNE .delay\n\n #_08BCB6: STZ.w $0C4A,X\n\n.exit\n #_08BCB9: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla1F_Hookshot", + "code": "Ancilla1F_Hookshot:\n #_08BD74: LDA.b $11\n #_08BD76: BNE .just_draw\n\n #_08BD78: LDA.w $0C68,X\n #_08BD7B: BNE .no_chain_sfx\n\n #_08BD7D: LDA.b #$07\n #_08BD7F: STA.w $0C68,X\n\n #_08BD82: LDA.b #$0A ; SFX2.0A\n #_08BD84: JSR Ancilla_SFX2_Pan\n\n; ---------------------------------------------------------\n\n.no_chain_sfx\n #_08BD87: LDA.w $037E\n #_08BD8A: BNE .just_draw\n\n #_08BD8C: JSR Ancilla_Move_Y\n #_08BD8F: JSR Ancilla_Move_X\n\n #_08BD92: LDA.w $0C54,X\n #_08BD95: BEQ Hookshot_Extending\n\n #_08BD97: DEC.w $0C5E,X\n #_08BD9A: BMI Hookshot_DeleteSelf\n\n.just_draw\n #_08BD9C: BRL AncillaDraw_Hookshot\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_DeleteSelf", + "code": "Hookshot_DeleteSelf:\n #_08BD9F: STZ.w $0C4A,X\n\n #_08BDA2: RTS", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_Extending", + "code": "Hookshot_Extending:\n #_08BDA3: LDA.w $0C5E,X\n #_08BDA6: INC A\n #_08BDA7: STA.w $0C5E,X\n\n #_08BDAA: CMP.b #$20\n #_08BDAC: BNE .not_fully_extended\n\n #_08BDAE: LDA.b #$01\n #_08BDB0: STA.w $0C54,X\n\n #_08BDB3: LDA.w $0C22,X\n #_08BDB6: EOR.b #$FF\n #_08BDB8: INC A\n #_08BDB9: STA.w $0C22,X\n\n #_08BDBC: LDA.w $0C2C,X\n #_08BDBF: EOR.b #$FF\n #_08BDC1: INC A\n #_08BDC2: STA.w $0C2C,X\n\n; ---------------------------------------------------------\n\n.not_fully_extended\n #_08BDC5: JSR Hookshot_ShouldIEvenBotherWithTiles\n #_08BDC8: BCC .do_bother\n\n #_08BDCA: BRL AncillaDraw_Hookshot\n\n; ---------------------------------------------------------\n\n.do_bother\n #_08BDCD: LDA.w $0385,X\n #_08BDD0: BNE .ignore_collision\n\n #_08BDD2: LDA.w $0C54,X\n #_08BDD5: BNE .ignore_collision\n\n #_08BDD7: JSR Ancilla_CheckSpriteCollision\n #_08BDDA: BCC .ignore_collision\n\n #_08BDDC: LDA.w $0C54,X\n #_08BDDF: BNE .ignore_collision\n\n; ---------------------------------------------------------\n\n #_08BDE1: LDA.b #$01\n #_08BDE3: STA.w $0C54,X\n\n #_08BDE6: LDA.w $0C22,X\n #_08BDE9: EOR.b #$FF\n #_08BDEB: INC A\n #_08BDEC: STA.w $0C22,X\n\n #_08BDEF: LDA.w $0C2C,X\n #_08BDF2: EOR.b #$FF\n #_08BDF4: INC A\n #_08BDF5: STA.w $0C2C,X\n\n #_08BDF8: BRA .ignore_collision\n\n; ---------------------------------------------------------\n\n#UNREACHABLE_08BDFA:\n #_08BDFA: BRL Hookshot_ExtraCollisionLogic_branching_here_unreachable\n\n; ---------------------------------------------------------\n\n.ignore_collision\n #_08BDFD: JSL Hookshot_CheckTileCollision\n\n #_08BE01: STZ.b $00\n\n #_08BE03: LDA.b $1B\n #_08BE05: BEQ .outdoors_ledge\n\n #_08BE07: LDY.b #$01\n\n #_08BE09: LDA.w $0C72,X\n #_08BE0C: AND.b #$02\n #_08BE0E: BNE .indoor_horizontal_ledge\n\n #_08BE10: LDA.w $036D\n #_08BE13: LSR A\n #_08BE14: LSR A\n #_08BE15: LSR A\n #_08BE16: LSR A\n #_08BE17: STA.b $00\n\n #_08BE19: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.indoor_horizontal_ledge\n #_08BE1B: LDA.w $036D,Y\n #_08BE1E: ORA.b $00\n #_08BE20: AND.b #$03\n #_08BE22: STA.b $00\n\n #_08BE24: BEQ .not_ledge\n\n #_08BE26: BRA .ledge_collision\n\n; ---------------------------------------------------------\n\n.outdoors_ledge\n #_08BE28: LDA.w $036E\n #_08BE2B: AND.b #$03\n #_08BE2D: ORA.w $036D\n #_08BE30: ORA.w $0370\n #_08BE33: AND.b #$33\n #_08BE35: BEQ .not_ledge\n\n; ---------------------------------------------------------\n\n.ledge_collision\n #_08BE37: DEC.w $0394,X\n #_08BE3A: BPL .not_ledge\n\n #_08BE3C: LDY.w $0380,X\n #_08BE3F: BEQ .last_tile_passable\n\n #_08BE41: LDA.b $00\n #_08BE43: AND.b #$03\n #_08BE45: BNE .hit_indoor_ledge\n\n #_08BE47: CPY.b $76\n #_08BE49: BEQ .last_tile_passable\n\n; ---------------------------------------------------------\n\n.hit_indoor_ledge\n #_08BE4B: LDA.b #$02\n #_08BE4D: STA.w $0394,X\n\n #_08BE50: DEC.w $0385,X\n #_08BE53: BPL .not_ledge\n\n #_08BE55: STZ.w $0385,X\n\n #_08BE58: BRA .not_ledge\n\n.last_tile_passable\n #_08BE5A: INC.w $0385,X\n\n #_08BE5D: LDA.b $76\n #_08BE5F: STA.w $0380,X\n\n #_08BE62: LDA.b #$01\n #_08BE64: STA.w $0394,X\n\n; ---------------------------------------------------------\n\n.not_ledge\n #_08BE67: LDA.w $0385,X\n #_08BE6A: BNE .just_draw_already\n\n #_08BE6C: LDA.w $0394,X\n #_08BE6F: BMI Hookshot_ExtraCollisionLogic\n\n #_08BE71: DEC.w $0394,X\n\n.just_draw_already\n #_08BE74: BRL AncillaDraw_Hookshot\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_ExtraCollisionLogic", + "code": "Hookshot_ExtraCollisionLogic:\n #_08BE77: LDA.b $0E\n\n #_08BE79: LSR A\n #_08BE7A: LSR A\n #_08BE7B: LSR A\n #_08BE7C: LSR A\n\n #_08BE7D: ORA.b $0E\n #_08BE7F: ORA.b $58\n #_08BE81: ORA.b $0C\n #_08BE83: AND.b #$03\n\n #_08BE85: BEQ .no_collision\n\n #_08BE87: LDA.w $0C54,X\n #_08BE8A: BNE .no_collision\n\n #_08BE8C: LDA.b #$01\n #_08BE8E: STA.w $0C54,X\n\n #_08BE91: LDA.w $0C22,X\n #_08BE94: EOR.b #$FF\n #_08BE96: INC A\n #_08BE97: STA.w $0C22,X\n\n #_08BE9A: LDA.w $0C2C,X\n #_08BE9D: EOR.b #$FF\n #_08BE9F: INC A\n #_08BEA0: STA.w $0C2C,X\n\n #_08BEA3: LDA.w $02F6\n #_08BEA6: AND.b #$03\n #_08BEA8: BNE .no_collision\n\n; ---------------------------------------------------------\n\n #_08BEAA: PHX\n\n #_08BEAB: LDY.b #$01\n #_08BEAD: LDA.b #$06 ; ANCILLA 06\n #_08BEAF: JSL AncillaAdd_HookshotWallClink\n\n #_08BEB3: PLX\n\n #_08BEB4: LDY.b #$06 ; SFX2.06\n\n #_08BEB6: LDA.w $02F6\n #_08BEB9: AND.b #$30\n #_08BEBB: BNE .key_door\n\n #_08BEBD: LDY.b #$05 ; SFX2.05\n\n.key_door\n #_08BEBF: TYA\n #_08BEC0: JSR Ancilla_SFX2_Pan\n\n.no_collision\n #_08BEC3: LDA.w $02F6\n #_08BEC6: AND.b #$03\n #_08BEC8: BEQ AncillaDraw_Hookshot\n\n; ---------------------------------------------------------\n\n.branching_here_unreachable\n #_08BECA: LDA.w $0C5E,X\n #_08BECD: CMP.b #$04\n #_08BECF: BCS .dont_delete_self\n\n #_08BED1: BRL Hookshot_DeleteSelf\n\n.dont_delete_self\n #_08BED4: LDA.b #$01\n #_08BED6: STA.w $037E\n\n #_08BED9: STX.w $039D\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Hookshot", + "code": "AncillaDraw_Hookshot:\n #_08BEDC: JSR Ancilla_PrepOAMCoord\n\n #_08BEDF: LDA.w $0385,X\n #_08BEE2: BEQ .not_max_priority\n\n #_08BEE4: LDA.b #$30\n #_08BEE6: STA.b $65\n\n.not_max_priority\n #_08BEE8: REP #$20\n\n #_08BEEA: LDA.b $00\n #_08BEEC: STA.b $04\n\n #_08BEEE: LDA.b $02\n #_08BEF0: STA.b $06\n\n #_08BEF2: SEP #$20\n\n #_08BEF4: PHX\n\n #_08BEF5: LDA.w $0C72,X\n #_08BEF8: STA.b $08\n\n #_08BEFA: ASL A\n #_08BEFB: CLC\n #_08BEFC: ADC.b $08\n #_08BEFE: STA.b $0A\n\n #_08BF00: TAX\n\n; ---------------------------------------------------------\n\n #_08BF01: LDA.b #$02\n #_08BF03: STA.b $08\n\n #_08BF05: LDY.b #$00\n\n.next_object\n #_08BF07: LDX.b $0A\n\n #_08BF09: LDA.w Hookshot_char,X\n #_08BF0C: CMP.b #$FF\n #_08BF0E: BEQ .skip\n\n #_08BF10: JSR Ancilla_SetOAM_XY\n\n #_08BF13: LDX.b $0A\n\n #_08BF15: LDA.w Hookshot_char,X\n #_08BF18: STA.b ($90),Y\n\n #_08BF1A: INY\n\n #_08BF1B: LDA.w Hookshot_prop,X\n #_08BF1E: ORA.b #$02\n #_08BF20: ORA.b $65\n #_08BF22: STA.b ($90),Y\n\n #_08BF24: INY\n #_08BF25: PHY\n\n #_08BF26: TYA\n #_08BF27: SEC\n #_08BF28: SBC.b #$04\n #_08BF2A: LSR A\n #_08BF2B: LSR A\n #_08BF2C: TAY\n\n #_08BF2D: LDA.b #$00\n #_08BF2F: STA.b ($92),Y\n\n #_08BF31: PLY\n\n.skip\n #_08BF32: INC.b $0A\n\n #_08BF34: LDA.b $02\n #_08BF36: CLC\n #_08BF37: ADC.b #$08\n #_08BF39: STA.b $02\n\n #_08BF3B: DEC.b $08\n #_08BF3D: BMI AncillaDraw_HookshotChain\n\n; ---------------------------------------------------------\n\n #_08BF3F: LDA.b $08\n #_08BF41: BNE .next_object\n\n #_08BF43: LDA.b $00\n #_08BF45: CLC\n #_08BF46: ADC.b #$08\n #_08BF48: STA.b $00\n\n #_08BF4A: LDA.b $06\n #_08BF4C: STA.b $02\n\n #_08BF4E: BRA .next_object\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_HookshotChain", + "code": "AncillaDraw_HookshotChain:\n #_08BF50: PLX\n #_08BF51: PHX\n\n #_08BF52: STZ.b $0A\n #_08BF54: STZ.b $0B\n #_08BF56: STZ.b $0C\n #_08BF58: STZ.b $0D\n\n #_08BF5A: LDA.w $0C5E,X\n #_08BF5D: LSR A\n #_08BF5E: CMP.b #$07\n #_08BF60: BCC .no_scaling\n\n #_08BF62: SEC\n #_08BF63: SBC.b #$07\n #_08BF65: STA.b $0A\n #_08BF67: STA.b $0C\n\n #_08BF69: LDA.b #$06\n\n.no_scaling\n #_08BF6B: STA.b $08\n #_08BF6D: BNE .at_least_one_link\n\n #_08BF6F: BRL .exit\n\n; ---------------------------------------------------------\n\n.at_least_one_link\n #_08BF72: LDA.w $0C72,X\n #_08BF75: AND.b #$01\n #_08BF77: BEQ .up_or_left\n\n #_08BF79: LDA.b $0A\n #_08BF7B: EOR.b #$FF\n #_08BF7D: INC A\n #_08BF7E: STA.b $0A\n #_08BF80: STA.b $0C\n #_08BF82: BEQ .up_or_left\n\n #_08BF84: LDA.b #$FF\n #_08BF86: STA.b $0B\n #_08BF88: STA.b $0D\n\n.up_or_left\n #_08BF8A: REP #$20\n\n #_08BF8C: LDA.w $0C72,X\n #_08BF8F: ASL A\n #_08BF90: AND.w #$00FF\n #_08BF93: TAX\n\n; ---------------------------------------------------------\n\n #_08BF94: LDA.w Hookshot_box_size_y,X\n #_08BF97: BNE .use_actual_y\n\n #_08BF99: LDA.b $04\n #_08BF9B: CLC\n #_08BF9C: ADC.w #$0004\n #_08BF9F: STA.b $04\n\n; ---------------------------------------------------------\n\n.use_actual_y\n #_08BFA1: LDA.w Hookshot_box_size_x,X\n #_08BFA4: BNE .next_object\n\n #_08BFA6: LDA.b $06\n #_08BFA8: CLC\n #_08BFA9: ADC.w #$0004\n #_08BFAC: STA.b $06\n\n #_08BFAE: SEP #$20\n\n; ---------------------------------------------------------\n\n.next_object\n #_08BFB0: REP #$20\n\n #_08BFB2: LDA.w Hookshot_box_size_y,X\n #_08BFB5: BEQ .dont_add_y\n\n #_08BFB7: CLC\n #_08BFB8: ADC.b $0A\n\n.dont_add_y\n #_08BFBA: CLC\n #_08BFBB: ADC.b $04\n #_08BFBD: STA.b $04\n #_08BFBF: STA.b $00\n\n #_08BFC1: LDA.w Hookshot_box_size_x,X\n #_08BFC4: BEQ .dont_add_x\n\n #_08BFC6: CLC\n #_08BFC7: ADC.b $0C\n\n.dont_add_x\n #_08BFC9: CLC\n #_08BFCA: ADC.b $06\n #_08BFCC: STA.b $06\n #_08BFCE: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08BFD0: SEP #$20\n\n #_08BFD2: JSR Hookshot_CheckProximityToLink\n #_08BFD5: BCS .skip\n\n #_08BFD7: JSR Ancilla_SetOAM_XY\n\n #_08BFDA: LDA.b #$19\n #_08BFDC: STA.b ($90),Y\n\n #_08BFDE: INY\n\n #_08BFDF: LDA.b $1A\n #_08BFE1: AND.b #$02\n\n #_08BFE3: ASL A\n #_08BFE4: ASL A\n #_08BFE5: ASL A\n #_08BFE6: ASL A\n #_08BFE7: ASL A\n #_08BFE8: ASL A\n\n #_08BFE9: ORA.b #$02\n #_08BFEB: ORA.b $65\n #_08BFED: STA.b ($90),Y\n\n #_08BFEF: INY\n #_08BFF0: PHY\n\n #_08BFF1: TYA\n #_08BFF2: SEC\n #_08BFF3: SBC.b #$04\n #_08BFF5: LSR A\n #_08BFF6: LSR A\n #_08BFF7: TAY\n\n #_08BFF8: LDA.b #$00\n #_08BFFA: STA.b ($92),Y\n\n #_08BFFC: PLY\n\n.skip\n #_08BFFD: DEC.b $08\n #_08BFFF: BPL .next_object\n\n; ---------------------------------------------------------\n\n.exit\n #_08C001: PLX\n\n #_08C002: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla20_Blanket", + "code": "Ancilla20_Blanket:\n #_08C013: JSR Ancilla_PrepOAMCoord\n\n #_08C016: REP #$20\n\n #_08C018: LDA.b $00\n #_08C01A: STA.b $04\n\n #_08C01C: LDA.b $02\n #_08C01E: STA.b $06\n #_08C020: STA.b $08\n\n #_08C022: SEP #$20\n\n #_08C024: PHX\n\n #_08C025: LDA.w $037D\n #_08C028: BNE .im_awake\n\n #_08C02A: LDA.b #$10\n #_08C02C: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_08C030: BRA .continue\n\n.im_awake\n #_08C032: LDA.b #$10\n #_08C034: JSL SpriteDraw_AllocateOAMFromRegionA\n\n; ---------------------------------------------------------\n\n.continue\n #_08C038: LDA.w $037D\n #_08C03B: BEQ .i_sleep\n\n #_08C03D: LDA.b #$04\n\n.i_sleep\n #_08C03F: TAX\n\n #_08C040: LDA.b #$03\n #_08C042: STA.b $0A\n\n #_08C044: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_object\n #_08C046: JSR Ancilla_SetOAM_XY\n\n #_08C049: LDA.w .char,X\n #_08C04C: STA.b ($90),Y\n\n #_08C04E: INY\n\n #_08C04F: LDA.w .prop,X\n #_08C052: ORA.b #$0D\n #_08C054: ORA.b $65\n #_08C056: STA.b ($90),Y\n\n #_08C058: INY\n #_08C059: PHY\n\n #_08C05A: TYA\n #_08C05B: SEC\n #_08C05C: SBC.b #$04\n #_08C05E: LSR A\n #_08C05F: LSR A\n #_08C060: TAY\n\n #_08C061: LDA.b #$02\n #_08C063: STA.b ($92),Y\n\n #_08C065: PLY\n\n #_08C066: INX\n\n #_08C067: REP #$20\n\n #_08C069: LDA.b $06\n #_08C06B: CLC\n #_08C06C: ADC.w #$0010\n #_08C06F: STA.b $02\n\n #_08C071: SEP #$20\n\n #_08C073: DEC.b $0A\n #_08C075: BMI .exit\n\n #_08C077: LDA.b $0A\n #_08C079: CMP.b #$01\n #_08C07B: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_08C07D: REP #$20\n\n #_08C07F: LDA.b $06\n #_08C081: STA.b $02\n\n #_08C083: LDA.b $04\n #_08C085: CLC\n #_08C086: ADC.w #$0008\n #_08C089: STA.b $00\n\n #_08C08B: SEP #$20\n\n #_08C08D: BRA .next_object\n\n; ---------------------------------------------------------\n\n.exit\n #_08C08F: PLX\n\n #_08C090: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla21_Snore", + "code": "Ancilla21_Snore:\n #_08C094: DEC.w $03B1,X\n #_08C097: BPL .delay\n\n #_08C099: LDA.w $0C5E,X\n #_08C09C: INC A\n #_08C09D: CMP.b #$03\n #_08C09F: BEQ .fully_zeed\n\n #_08C0A1: STA.w $0C5E,X\n\n.fully_zeed\n #_08C0A4: LDA.b #$07\n #_08C0A6: STA.w $03B1,X\n\n; ---------------------------------------------------------\n\n.delay\n #_08C0A9: LDA.w $0C2C,X\n #_08C0AC: CLC\n #_08C0AD: ADC.w $0C54,X\n #_08C0B0: STA.w $0C2C,X\n #_08C0B3: BPL .positive_x\n\n #_08C0B5: EOR.b #$FF\n #_08C0B7: INC A\n\n.positive_x\n #_08C0B8: CMP.b #$08\n #_08C0BA: BCC .dont_invert\n\n #_08C0BC: LDA.w $0C54,X\n #_08C0BF: EOR.b #$FF\n #_08C0C1: INC A\n #_08C0C2: STA.w $0C54,X\n\n.dont_invert\n #_08C0C5: JSR Ancilla_Move_Y\n #_08C0C8: JSR Ancilla_Move_X\n\n #_08C0CB: LDA.w $0BFA,X\n #_08C0CE: STA.b $00\n\n #_08C0D0: LDA.w $0C0E,X\n #_08C0D3: STA.b $01\n\n; ---------------------------------------------------------\n\n #_08C0D5: REP #$20\n\n #_08C0D7: LDA.b $20\n #_08C0D9: SEC\n #_08C0DA: SBC.w #$0018\n #_08C0DD: CMP.b $00\n #_08C0DF: BCC .dont_delete_me\n\n #_08C0E1: SEP #$20\n\n #_08C0E3: STZ.w $0C4A,X\n\n; ---------------------------------------------------------\n\n.dont_delete_me\n #_08C0E6: SEP #$20\n\n #_08C0E8: LDY.w $0C5E,X\n\n #_08C0EB: LDA.w .char,Y\n #_08C0EE: STA.w $0109\n\n #_08C0F1: JSR Ancilla_PrepOAMCoord\n\n #_08C0F4: LDY.b #$00\n #_08C0F6: JSR Ancilla_SetOAM_XY\n\n #_08C0F9: LDA.b #$09\n #_08C0FB: STA.b ($90),Y\n\n #_08C0FD: INY\n\n #_08C0FE: LDA.b #$24\n #_08C100: STA.b ($90),Y\n\n #_08C102: LDA.b #$00\n #_08C104: STA.b ($92)\n\n #_08C106: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3B_SwordUpSparkle", + "code": "Ancilla3B_SwordUpSparkle:\n #_08C167: LDA.w $03B1,X\n #_08C16A: BNE .delay\n\n #_08C16C: DEC.w $039F,X\n #_08C16F: BPL .active\n\n #_08C171: LDA.b #$01\n #_08C173: STA.w $039F,X\n\n #_08C176: INC.w $0C5E,X\n\n #_08C179: LDA.w $0C5E,X\n #_08C17C: CMP.b #$04\n #_08C17E: BNE .active\n\n #_08C180: STZ.w $0C4A,X\n\n.delay\n #_08C183: DEC.w $03B1,X\n\n #_08C186: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3C_SpinAttackChargeSparkle", + "code": "Ancilla3C_SpinAttackChargeSparkle:\n #_08C1EA: LDA.b $11\n #_08C1EC: BNE .continue\n\n #_08C1EE: LDA.w $0C68,X\n #_08C1F1: BNE .continue\n\n #_08C1F3: LDA.b #$04\n #_08C1F5: STA.w $0C68,X\n\n #_08C1F8: INC.w $0C5E,X\n\n #_08C1FB: LDA.w $0C5E,X\n #_08C1FE: CMP.b #$03\n #_08C200: BNE .continue\n\n #_08C202: STZ.w $0C4A,X\n\n #_08C205: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla35_MasterSwordReceipt", + "code": "Ancilla35_MasterSwordReceipt:\n #_08C25F: LDA.w $0C68,X\n #_08C262: BNE .stay_around\n\n #_08C264: STZ.w $0C4A,X\n\n #_08C267: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla22_ItemReceipt", + "code": "Ancilla22_ItemReceipt:\n #_08C38A: LDA.w $02E4\n #_08C38D: CMP.b #$02\n #_08C38F: BEQ .just_draw_a\n\n #_08C391: LDA.b $11\n #_08C393: BEQ .operable_submode\n\n #_08C395: CMP.b #$2B\n #_08C397: BEQ .operable_submode\n\n #_08C399: CMP.b #$09\n #_08C39B: BEQ .operable_submode\n\n #_08C39D: CMP.b #$02\n #_08C39F: BNE .just_draw_a\n\n #_08C3A1: LDA.b #$10\n #_08C3A3: STA.w $0C68,X\n\n.just_draw_a\n #_08C3A6: BRL ItemReceipt_Animate\n\n; ---------------------------------------------------------\n\n.operable_submode\n #_08C3A9: INC.w $0FC1\n\n #_08C3AC: LDA.w $0C54,X\n #_08C3AF: BEQ .from_text_or_object\n\n #_08C3B1: CMP.b #$03\n #_08C3B3: BEQ .from_text_or_object\n\n #_08C3B5: BRL .from_chest_or_sprite\n\n; ---------------------------------------------------------\n\n.from_text_or_object\n #_08C3B8: LDA.w $0C5E,X\n\n #_08C3BB: CMP.b #$01 ; ITEMGET 01\n #_08C3BD: BNE .not_ms_pull\n\n #_08C3BF: LDA.w $0C54,X\n #_08C3C2: CMP.b #$02\n #_08C3C4: BEQ .not_ms_pull\n\n #_08C3C6: LDA.w $0C68,X\n #_08C3C9: BEQ .delay_a\n\n #_08C3CB: CMP.b #$11\n #_08C3CD: BNE .just_draw_b\n\n #_08C3CF: REP #$20\n\n #_08C3D1: LDA.w #$0DF3\n #_08C3D4: STA.w $02CD\n\n #_08C3D7: SEP #$20\n\n #_08C3D9: LDA.b #$0E ; FOLLOWER 0E\n #_08C3DB: STA.l $7EF3CC\n\n.time_up_a\n #_08C3DF: BRL .time_up_b\n\n; ---------------------------------------------------------\n\n.not_ms_pull\n #_08C3E2: DEC.w $03B1,X\n\n #_08C3E5: LDA.w $03B1,X\n #_08C3E8: BEQ .delay_a\n\n #_08C3EA: CMP.b #$01 ; ITEMGET 01\n #_08C3EC: BNE .just_draw_b\n\n #_08C3EE: LDA.w $0C5E,X\n #_08C3F1: CMP.b #$37 ; ITEMGET 37\n #_08C3F3: BEQ .is_pendant\n\n #_08C3F5: CMP.b #$38 ; ITEMGET 38\n #_08C3F7: BEQ .is_pendant\n\n #_08C3F9: CMP.b #$39 ; ITEMGET 39\n #_08C3FB: BNE .wait_for_music\n\n.is_pendant\n #_08C3FD: LDA.w APUIO0\n #_08C400: BEQ .wait_for_music\n\n #_08C402: INC.w $03B1,X\n #_08C405: BRA .just_draw_b\n\n.wait_for_music\n #_08C407: BRL .time_up_a\n\n; ---------------------------------------------------------\n\n.just_draw_b\n #_08C40A: BRL ItemReceipt_Animate\n\n; ---------------------------------------------------------\n\n.delay_a\n #_08C40D: LDA.w $0C5E,X\n #_08C410: CMP.b #$01 ; ITEMGET 01\n #_08C412: BNE .not_ms_from_text\n\n #_08C414: LDA.w $0C54,X\n #_08C417: BNE .not_ms_from_text\n\n #_08C419: LDA.b #$05 ; SFX1.05\n #_08C41B: STA.w $012D\n\n #_08C41E: LDA.b #$02 ; SONG 02\n #_08C420: STA.w $012C\n\n.not_ms_from_text\n #_08C423: LDY.b #$00 ; LINKSTATE 00\n\n #_08C425: LDA.w $0345\n #_08C428: BEQ .not_in_water\n\n #_08C42A: LDY.b #$04 ; LINKSTATE 04\n\n.not_in_water\n #_08C42C: STY.b $5D\n\n #_08C42E: STZ.w $02D8\n #_08C431: STZ.w $02DA\n #_08C434: STZ.w $037B\n\n #_08C437: JSL Ancilla_AddRupees\n\n; ---------------------------------------------------------\n\n.check_if_hp\n #_08C43B: STZ.w $02E9\n\n #_08C43E: LDA.w $0C5E,X\n #_08C441: CMP.b #$17 ; ITEMGET 17\n #_08C443: BNE .not_heart_piece\n\n #_08C445: LDA.l $7EF36B\n #_08C449: BNE .not_heart_piece\n\n #_08C44B: PHX\n\n #_08C44C: LDY.b #$26 ; ITEMGET 26\n #_08C44E: JSL Link_ReceiveItem\n\n #_08C452: PLX\n\n #_08C453: STZ.w $0C4A,X\n\n #_08C456: STZ.w $0FC1\n\n #_08C459: RTS", + "file": "bank_08.asm" + }, + { + "name": "ItemReceipt_Animate", + "code": "ItemReceipt_Animate:\n #_08C5F7: SEP #$20\n\n #_08C5F9: LDA.w $0C5E,X\n #_08C5FC: CMP.b #$20\n #_08C5FE: BNE .continue\n\n #_08C600: STZ.w $029E,X\n\n #_08C603: JSR AncillaAdd_OccasionalSparkle\n\n #_08C606: LDA.w APUIO0\n #_08C609: BNE .continue\n\n #_08C60B: LDA.b #$1A ; SONG 1A\n #_08C60D: STA.w $012C\n\n #_08C610: BRL ItemReceipt_TransmuteToRisingCrystal\n\n; ---------------------------------------------------------\n\n.continue\n #_08C613: SEP #$20\n\n #_08C615: LDA.w $0C5E,X\n #_08C618: CMP.b #$01 ; ITEMGET 01\n #_08C61A: BNE .not_a_flashy_sword\n\n #_08C61C: LDA.w ItemReceipt_default_oam_props\n #_08C61F: STA.w $0BF0,X\n\n #_08C622: LDA.w $0C54,X\n #_08C625: CMP.b #$02\n #_08C627: BEQ .not_a_flashy_sword\n\n #_08C629: LDA.w $0C68,X\n #_08C62C: CMP.b #$10\n #_08C62E: BCC .wait_for_flashy_sword\n\n #_08C630: DEC.w $039F,X\n #_08C633: BPL .not_a_flashy_sword\n\n #_08C635: LDA.b #$02\n #_08C637: STA.w $039F,X\n\n #_08C63A: LDA.w $03A4,X\n #_08C63D: INC A\n #_08C63E: CMP.b #$03\n #_08C640: BNE .no_wrap_flashy_sword\n\n.wait_for_flashy_sword\n #_08C642: LDA.b #$00\n\n.no_wrap_flashy_sword\n #_08C644: STA.w $03A4,X\n\n #_08C647: TAY\n\n #_08C648: LDA.w ItemReceipt_default_oam_props,Y\n #_08C64B: STA.w $0BF0,X\n\n; ---------------------------------------------------------\n\n.not_a_flashy_sword\n #_08C64E: LDA.w $0C5E,X\n #_08C651: CMP.b #$34 ; ITEMGET 34\n #_08C653: BEQ .animated_rupee\n\n #_08C655: CMP.b #$35 ; ITEMGET 35\n #_08C657: BEQ .animated_rupee\n\n #_08C659: CMP.b #$36 ; ITEMGET 36\n #_08C65B: BNE .not_animating_rupee\n\n.animated_rupee\n #_08C65D: DEC.w $039F,X\n #_08C660: BPL .not_animating_rupee\n\n #_08C662: INC.w $03A4,X\n\n #_08C665: LDA.w $03A4,X\n #_08C668: CMP.b #$03\n #_08C66A: BNE .no_wrap_rupee\n\n #_08C66C: LDA.b #$00\n #_08C66E: STA.w $03A4,X\n\n.no_wrap_rupee\n #_08C671: TAY\n\n #_08C672: LDA.w ItemReceipt_animated_rupee_timers,Y\n #_08C675: STA.w $039F,X\n\n #_08C678: PHX\n\n #_08C679: LDA.w ItemReceipt_animated_rupee_tiles,Y\n #_08C67C: JSL WriteTo4BPPBuffer_at_7F4000\n\n #_08C680: PLX\n\n; ---------------------------------------------------------\n\n.not_animating_rupee\n #_08C681: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08C684: REP #$20\n\n #_08C686: LDA.b $00\n #_08C688: CLC\n #_08C689: ADC.w #$0008\n #_08C68C: STA.b $08\n\n #_08C68E: SEP #$20\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_ItemReceipt", + "code": "AncillaDraw_ItemReceipt:\n #_08C690: PHX\n\n #_08C691: LDA.w $0BF0,X\n #_08C694: STA.b $74\n\n #_08C696: LDA.w $0C5E,X\n #_08C699: TAX\n\n #_08C69A: LDY.b #$00\n #_08C69C: JSR Ancilla_SetOAM_XY\n\n #_08C69F: LDA.b #$24\n #_08C6A1: STA.b ($90),Y\n\n #_08C6A3: INY\n\n #_08C6A4: LDA.l AncillaAdd_ItemReceipt_prop,X\n #_08C6A8: BPL .keep_prop_a\n\n #_08C6AA: LDA.b $74\n\n; ---------------------------------------------------------\n\n.keep_prop_a\n #_08C6AC: ASL A\n #_08C6AD: ORA.b #$30\n #_08C6AF: STA.b ($90),Y\n\n #_08C6B1: INY\n #_08C6B2: PHY\n\n #_08C6B3: TYA\n #_08C6B4: SEC\n #_08C6B5: SBC.b #$04\n #_08C6B7: LSR A\n #_08C6B8: LSR A\n #_08C6B9: TAY\n\n #_08C6BA: LDA.l AncillaAdd_ItemReceipt_width,X\n #_08C6BE: STA.b ($92),Y\n\n #_08C6C0: PLY\n\n #_08C6C1: CMP.b #$02\n #_08C6C3: BEQ .big_sprite\n\n; ---------------------------------------------------------\n\n #_08C6C5: REP #$20\n\n #_08C6C7: LDA.b $08\n #_08C6C9: STA.b $00\n\n #_08C6CB: SEP #$20\n\n #_08C6CD: JSR Ancilla_SetOAM_XY\n\n #_08C6D0: LDA.b #$34\n #_08C6D2: STA.b ($90),Y\n\n #_08C6D4: INY\n\n #_08C6D5: LDA.l AncillaAdd_ItemReceipt_prop,X\n #_08C6D9: BPL .keep_prop_b\n\n #_08C6DB: LDA.b $74\n\n; ---------------------------------------------------------\n\n.keep_prop_b\n #_08C6DD: ASL A\n #_08C6DE: ORA.b #$30\n #_08C6E0: STA.b ($90),Y\n\n #_08C6E2: INY\n #_08C6E3: PHY\n\n #_08C6E4: TYA\n #_08C6E5: SEC\n #_08C6E6: SBC.b #$04\n #_08C6E8: LSR A\n #_08C6E9: LSR A\n #_08C6EA: TAY\n\n #_08C6EB: LDA.b #$00\n #_08C6ED: STA.b ($92),Y\n\n #_08C6EF: PLY\n\n; ---------------------------------------------------------\n\n.big_sprite\n #_08C6F0: PLX\n\n #_08C6F1: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla28_WishPondItem", + "code": "Ancilla28_WishPondItem:\n #_08C6F2: LDA.b #$10\n #_08C6F4: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08C6F7: LDA.b $11\n #_08C6F9: BEQ .continue\n\n #_08C6FB: BRL AncillaDraw_WishPondItem\n\n; ---------------------------------------------------------\n\n.continue\n #_08C6FE: LDA.w $0C68,X\n #_08C701: BNE AncillaDraw_WishPondItem\n\n #_08C703: LDA.b #$02\n #_08C705: STA.w $0309\n #_08C708: STZ.w $0308\n\n #_08C70B: LDA.w $0294,X\n #_08C70E: SEC\n #_08C70F: SBC.b #$02\n #_08C711: STA.w $0294,X\n\n #_08C714: JSR Ancilla_Move_Z\n #_08C717: JSR Ancilla_Move_Y\n #_08C71A: JSR Ancilla_Move_X\n\n #_08C71D: LDA.w $029E,X\n #_08C720: BPL AncillaDraw_WishPondItem\n\n #_08C722: CMP.b #$E4\n #_08C724: BCS AncillaDraw_WishPondItem\n\n #_08C726: LDA.b #$E4\n #_08C728: STA.w $029E,X\n\n #_08C72B: LDY.w $0C5E,X\n\n #_08C72E: LDA.w $0BFA,X\n #_08C731: CLC\n #_08C732: ADC.b #$12\n #_08C734: STA.w $0BFA,X\n\n #_08C737: LDA.w $0C0E,X\n #_08C73A: ADC.b #$00\n #_08C73C: STA.w $0C0E,X\n\n #_08C73F: LDA.b #$08\n #_08C741: STA.b $00\n\n #_08C743: LDA.w $088450,Y ; Verified nonsense\n #_08C746: BNE .absolute_nonsense\n\n #_08C748: LDA.b #$04\n #_08C74A: STA.b $00\n\n.absolute_nonsense\n #_08C74C: LDA.w $0C04,X\n #_08C74F: CLC\n #_08C750: ADC.b $00\n #_08C752: STA.w $0C04,X\n\n #_08C755: LDA.w $0C18,X\n #_08C758: ADC.b #$00\n #_08C75A: STA.w $0C18,X\n\n #_08C75D: BRL Ancilla_TransmuteToSplash\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_WishPondItem", + "code": "AncillaDraw_WishPondItem:\n #_08C760: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08C763: LDA.w $0C5E,X\n #_08C766: CMP.b #$01 ; ITEMGET 01\n #_08C768: BNE .not_master_sword\n\n #_08C76A: LDA.w ItemReceipt_default_oam_props\n #_08C76D: STA.w $0BF0,X\n\n.not_master_sword\n #_08C770: REP #$20\n\n #_08C772: LDA.w $029E,X\n #_08C775: AND.w #$00FF\n #_08C778: CMP.w #$0080\n #_08C77B: BCC .positive\n\n #_08C77D: ORA.w #$FF00\n\n.positive\n #_08C780: STA.b $04\n\n #_08C782: EOR.w #$FFFF\n #_08C785: INC A\n\n #_08C786: CLC\n #_08C787: ADC.b $00\n #_08C789: STA.b $00\n #_08C78B: STA.b $06\n\n #_08C78D: CLC\n #_08C78E: ADC.w #$0008\n #_08C791: STA.b $08\n\n; ---------------------------------------------------------\n\n #_08C793: SEP #$20\n\n #_08C795: JSR AncillaDraw_ItemReceipt\n\n #_08C798: LDA.w $0309\n #_08C79B: CMP.b #$02\n #_08C79D: BNE .exit\n\n; ---------------------------------------------------------\n\n #_08C79F: LDA.w $0294,X\n #_08C7A2: BMI .draw_shadow\n\n #_08C7A4: CMP.b #$02\n #_08C7A6: BCS .exit\n\n.draw_shadow\n #_08C7A8: PHX\n\n #_08C7A9: LDA.w $0C5E,X\n #_08C7AC: TAX\n\n #_08C7AD: LDA.w $088450,X ; Verified nonsense\n #_08C7B0: TAX\n\n #_08C7B1: REP #$20\n\n #_08C7B3: LDA.b $06\n #_08C7B5: CLC\n #_08C7B6: ADC.b $04\n\n #_08C7B8: CLC\n #_08C7B9: ADC.w #$0028\n #_08C7BC: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08C7BE: CPX.b #$02\n #_08C7C0: BEQ .wide\n\n #_08C7C2: LDA.b $02\n #_08C7C4: CLC\n #_08C7C5: ADC.w #$FFFC\n #_08C7C8: STA.b $02\n\n.wide\n #_08C7CA: SEP #$20\n\n #_08C7CC: LDA.b #$01\n\n #_08C7CE: CPX.b #$02\n #_08C7D0: BEQ .wide_shadow\n\n #_08C7D2: LDA.b #$02\n\n.wide_shadow\n #_08C7D4: TAX\n\n #_08C7D5: LDA.b $65\n #_08C7D7: STA.b $04\n\n #_08C7D9: JSR AncillaDraw_Shadow\n\n #_08C7DC: PLX\n\n; ---------------------------------------------------------\n\n.exit\n #_08C7DD: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla42_HappinessPondRupees", + "code": "Ancilla42_HappinessPondRupees:\n #_08C7DE: LDA.b #$02\n #_08C7E0: STA.w $0309\n #_08C7E3: STZ.w $0308\n\n #_08C7E6: LDX.b #$09\n\n.next\n #_08C7E8: LDA.l $7F586C,X\n #_08C7EC: BEQ .skip\n\n #_08C7EE: PHX\n #_08C7EF: JSR HapinessPondRupees_ExecuteRupee\n #_08C7F2: PLX\n\n #_08C7F3: LDA.l $7F58AA,X\n #_08C7F7: CMP.b #$02\n #_08C7F9: BNE .skip\n\n #_08C7FB: LDA.b #$00\n #_08C7FD: STA.l $7F586C,X\n\n.skip\n #_08C801: DEX\n\n #_08C802: BPL .next\n\n; ---------------------------------------------------------\n\n #_08C804: LDX.b #$09\n\n.next_check\n #_08C806: LDA.l $7F586C,X\n #_08C80A: BNE .found_one\n\n #_08C80C: DEX\n #_08C80D: BPL .next_check\n\n #_08C80F: LDX.w $0FA0\n\n #_08C812: STZ.w $0C4A,X\n\n #_08C815: RTS", + "file": "bank_08.asm" + }, + { + "name": "HapinessPondRupees_ExecuteRupee", + "code": "HapinessPondRupees_ExecuteRupee:\n #_08C819: LDA.b #$10\n\n #_08C81B: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n #_08C81E: PHX\n\n #_08C81F: LDY.w $0FA0\n\n #_08C822: JSR HapinessPondRupees_GetState\n #_08C825: TYX\n\n #_08C826: LDA.w $0C54,X\n #_08C829: BEQ .not_splashing\n\n #_08C82B: LDA.b $11\n #_08C82D: BNE .only_splash\n\n #_08C82F: LDA.w $0C68,X\n #_08C832: BNE .only_splash\n\n #_08C834: LDA.b #$06\n #_08C836: STA.w $0C68,X\n\n #_08C839: INC.w $0C5E,X\n\n #_08C83C: LDA.w $0C5E,X\n #_08C83F: CMP.b #$05\n #_08C841: BNE .only_splash\n\n #_08C843: INC.w $0C54,X\n #_08C846: BRL .finish_up\n\n; ---------------------------------------------------------\n\n.only_splash\n #_08C849: JSR AncillaDraw_ObjectSplash\n\n #_08C84C: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.not_splashing\n #_08C84E: LDA.b $11\n #_08C850: BNE .just_draw\n\n #_08C852: LDA.w $0C68,X\n #_08C855: BNE .just_draw\n\n #_08C857: LDA.w $0294,X\n #_08C85A: SEC\n #_08C85B: SBC.b #$02\n #_08C85D: STA.w $0294,X\n\n #_08C860: JSR Ancilla_Move_Y\n #_08C863: JSR Ancilla_Move_X\n #_08C866: JSR Ancilla_Move_Z\n\n #_08C869: LDA.w $029E,X\n #_08C86C: BPL .just_draw\n\n #_08C86E: CMP.b #$E4\n #_08C870: BCS .just_draw\n\n; ---------------------------------------------------------\n\n #_08C872: LDA.b #$E4\n #_08C874: STA.w $029E,X\n\n #_08C877: LDA.w $0BFA,X\n #_08C87A: CLC\n #_08C87B: ADC.b #$1E\n #_08C87D: STA.w $0BFA,X\n\n #_08C880: LDA.w $0C0E,X\n #_08C883: ADC.b #$00\n #_08C885: STA.w $0C0E,X\n\n #_08C888: LDA.w $0C04,X\n #_08C88B: CLC\n #_08C88C: ADC.b #$FC\n #_08C88E: STA.w $0C04,X\n\n #_08C891: LDA.w $0C18,X\n #_08C894: ADC.b #$FF\n #_08C896: STA.w $0C18,X\n\n #_08C899: STZ.w $0C5E,X\n\n #_08C89C: LDA.b #$06\n #_08C89E: STA.w $0C68,X\n\n #_08C8A1: LDA.b #$28 ; SFX2.28\n #_08C8A3: JSR Ancilla_SFX2_Pan\n\n #_08C8A6: INC.w $0C54,X\n\n #_08C8A9: BRA .only_splash\n\n; ---------------------------------------------------------\n\n.just_draw\n #_08C8AB: LDA.b #$02\n #_08C8AD: STA.w $0BF0,X\n\n #_08C8B0: LDA.b #$00\n #_08C8B2: STA.w $0C7C,X\n\n #_08C8B5: JSR AncillaDraw_WishPondItem\n\n; ---------------------------------------------------------\n\n.finish_up\n #_08C8B8: TXY\n\n #_08C8B9: PLX\n\n #_08C8BA: JSR HapinessPondRupees_SaveState\n\n #_08C8BD: RTS", + "file": "bank_08.asm" + }, + { + "name": "HapinessPondRupees_GetState", + "code": "HapinessPondRupees_GetState:\n #_08C8BE: LDA.l $7F5824,X\n #_08C8C2: STA.w $0BFA,Y\n\n #_08C8C5: LDA.l $7F5830,X\n #_08C8C9: STA.w $0C0E,Y\n\n #_08C8CC: LDA.l $7F583C,X\n #_08C8D0: STA.w $0C04,Y\n\n #_08C8D3: LDA.l $7F5848,X\n #_08C8D7: STA.w $0C18,Y\n\n #_08C8DA: LDA.l $7F5854,X\n #_08C8DE: STA.w $029E,Y\n\n #_08C8E1: LDA.l $7F5800,X\n #_08C8E5: STA.w $0C22,Y\n\n #_08C8E8: LDA.l $7F580C,X\n #_08C8EC: STA.w $0C2C,Y\n\n #_08C8EF: LDA.l $7F5818,X\n #_08C8F3: STA.w $0294,Y\n\n #_08C8F6: LDA.l $7F5886,X\n #_08C8FA: STA.w $0C36,Y\n\n #_08C8FD: LDA.l $7F5892,X\n #_08C901: STA.w $0C40,Y\n\n #_08C904: LDA.l $7F589E,X\n #_08C908: STA.w $02A8,Y\n\n #_08C90B: LDA.l $7F587A,X\n #_08C90F: STA.w $0C5E,Y\n\n #_08C912: LDA.l $7F58AA,X\n #_08C916: STA.w $0C54,Y\n\n #_08C919: LDA.l $7F5860,X\n #_08C91D: BEQ .dont_dec\n\n #_08C91F: DEC A\n\n.dont_dec\n #_08C920: STA.w $0C68,Y\n\n #_08C923: RTS", + "file": "bank_08.asm" + }, + { + "name": "HapinessPondRupees_SaveState", + "code": "HapinessPondRupees_SaveState:\n #_08C924: LDA.w $0BFA,Y\n #_08C927: STA.l $7F5824,X\n\n #_08C92B: LDA.w $0C0E,Y\n #_08C92E: STA.l $7F5830,X\n\n #_08C932: LDA.w $0C04,Y\n #_08C935: STA.l $7F583C,X\n\n #_08C939: LDA.w $0C18,Y\n #_08C93C: STA.l $7F5848,X\n\n #_08C940: LDA.w $029E,Y\n #_08C943: STA.l $7F5854,X\n\n #_08C947: LDA.w $0C22,Y\n #_08C94A: STA.l $7F5800,X\n\n #_08C94E: LDA.w $0C2C,Y\n #_08C951: STA.l $7F580C,X\n\n #_08C955: LDA.w $0294,Y\n #_08C958: STA.l $7F5818,X\n\n #_08C95C: LDA.w $0C36,Y\n #_08C95F: STA.l $7F5886,X\n\n #_08C963: LDA.w $0C40,Y\n #_08C966: STA.l $7F5892,X\n\n #_08C96A: LDA.w $02A8,Y\n #_08C96D: STA.l $7F589E,X\n\n #_08C971: LDA.w $0C5E,Y\n #_08C974: STA.l $7F587A,X\n\n #_08C978: LDA.w $0C68,Y\n #_08C97B: STA.l $7F5860,X\n\n #_08C97F: LDA.w $0C54,Y\n #_08C982: STA.l $7F58AA,X\n\n #_08C986: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_TransmuteToSplash", + "code": "Ancilla_TransmuteToSplash:\n #_08C9CD: LDA.b #$3D ; ANCILLA 3D\n #_08C9CF: STA.w $0C4A,X\n\n #_08C9D2: STZ.w $0C5E,X\n\n #_08C9D5: LDA.b #$06\n #_08C9D7: STA.w $0C68,X\n\n #_08C9DA: LDA.w $0BFA,X\n #_08C9DD: CLC\n #_08C9DE: ADC.b #$0C\n #_08C9E0: STA.w $0BFA,X\n\n #_08C9E3: LDA.w $0C0E,X\n #_08C9E6: ADC.b #$00\n #_08C9E8: STA.w $0C0E,X\n\n #_08C9EB: LDA.w $0C04,X\n #_08C9EE: CLC\n #_08C9EF: ADC.b #$F8\n #_08C9F1: STA.w $0C04,X\n\n #_08C9F4: LDA.w $0C18,X\n #_08C9F7: ADC.b #$FF\n #_08C9F9: STA.w $0C18,X\n\n #_08C9FC: LDA.b #$28 ; SFX2.28\n #_08C9FE: JSR Ancilla_SFX2_Pan\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3D_ItemSplash", + "code": "Ancilla3D_ItemSplash:\n #_08CA01: LDA.b #$08\n #_08CA03: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08CA06: LDA.b $11\n #_08CA08: BNE AncillaDraw_ObjectSplash\n\n #_08CA0A: LDA.w $0C68,X\n #_08CA0D: BNE AncillaDraw_ObjectSplash\n\n #_08CA0F: LDA.b #$06\n #_08CA11: STA.w $0C68,X\n\n #_08CA14: INC.w $0C5E,X\n\n #_08CA17: LDA.w $0C5E,X\n #_08CA1A: CMP.b #$05\n #_08CA1C: BNE AncillaDraw_ObjectSplash\n\n #_08CA1E: STZ.w $0C4A,X\n\n #_08CA21: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_ObjectSplash", + "code": "AncillaDraw_ObjectSplash:\n #_08CA22: JSR Ancilla_PrepOAMCoord\n\n #_08CA25: REP #$20\n\n #_08CA27: LDA.b $00\n #_08CA29: STA.b $04\n\n #_08CA2B: LDA.b $02\n #_08CA2D: STA.b $06\n\n #_08CA2F: SEP #$20\n\n #_08CA31: PHX\n\n #_08CA32: LDY.b #$00\n\n #_08CA34: STZ.b $0C\n\n #_08CA36: LDA.w $0C5E,X\n #_08CA39: ASL A\n #_08CA3A: TAX\n\n; ---------------------------------------------------------\n\n.next\n #_08CA3B: LDA.w .char,X\n #_08CA3E: CMP.b #$FF\n #_08CA40: BEQ .skip\n\n #_08CA42: PHX\n\n #_08CA43: TXA\n #_08CA44: ASL A\n #_08CA45: TAX\n\n #_08CA46: REP #$20\n\n #_08CA48: LDA.w .offset_x,X\n #_08CA4B: CLC\n #_08CA4C: ADC.b $04\n #_08CA4E: STA.b $00\n\n #_08CA50: LDA.w .offset_y,X\n #_08CA53: CLC\n #_08CA54: ADC.b $06\n #_08CA56: STA.b $02\n\n #_08CA58: SEP #$20\n\n #_08CA5A: PLX\n\n #_08CA5B: JSR Ancilla_SetOAM_XY\n\n #_08CA5E: LDA.w .char,X\n #_08CA61: STA.b ($90),Y\n\n #_08CA63: INY\n\n #_08CA64: LDA.w .prop,X\n #_08CA67: ORA.b #$24\n #_08CA69: STA.b ($90),Y\n\n #_08CA6B: INY\n #_08CA6C: PHY\n\n #_08CA6D: TYA\n #_08CA6E: SEC\n #_08CA6F: SBC.b #$04\n #_08CA71: LSR A\n #_08CA72: LSR A\n #_08CA73: TAY\n\n #_08CA74: LDA.w .size,X\n #_08CA77: STA.b ($92),Y\n\n #_08CA79: PLY\n\n; ---------------------------------------------------------\n\n.skip\n #_08CA7A: INX\n\n #_08CA7B: INC.b $0C\n\n #_08CA7D: LDA.b $0C\n #_08CA7F: CMP.b #$02\n #_08CA81: BNE .next\n\n #_08CA83: PLX\n\n #_08CA84: RTS", + "file": "bank_08.asm" + }, + { + "name": "MilestoneItemReceiptIDs", + "code": "MilestoneItemReceiptIDs:\n.ether\n #_08CA85: db $10 ; ITEMGET 10\n\n.pendants\n.green_pendant\n #_08CA86: db $37 ; ITEMGET 37\n\n.blue_pendant\n #_08CA87: db $39 ; ITEMGET 39\n\n.red_pendant\n #_08CA88: db $38 ; ITEMGET 38\n\n.heart_container\n #_08CA89: db $26 ; ITEMGET 26\n\n.bombos\n #_08CA8A: db $0F ; ITEMGET 0F\n\n.crystal\n #_08CA8B: db $20 ; ITEMGET 20\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla29_MilestoneItemReceipt", + "code": "Ancilla29_MilestoneItemReceipt:\n #_08CA8C: LDA.w $0C5E,X\n #_08CA8F: CMP.w MilestoneItemReceiptIDs_ether\n #_08CA92: BEQ .medallion\n\n #_08CA94: CMP.w MilestoneItemReceiptIDs_bombos\n #_08CA97: BEQ .medallion\n\n #_08CA99: LDA.w $0403\n #_08CA9C: AND.b #$40\n #_08CA9E: BNE .terminate\n\n #_08CAA0: LDA.w $0403\n #_08CAA3: AND.b #$80\n #_08CAA5: BEQ .exit\n\n #_08CAA7: LDA.w $04C2\n #_08CAAA: BEQ .time_up\n\n #_08CAAC: CMP.b #$01\n #_08CAAE: BNE .tick_timer\n\n #_08CAB0: LDY.b #$23\n\n #_08CAB2: LDA.w $0C5E,X\n #_08CAB5: CMP.w MilestoneItemReceiptIDs_crystal\n #_08CAB8: BNE .not_crystal\n\n #_08CABA: LDA.b #$0F ; SFX1.0F\n #_08CABC: STA.w $012D\n\n #_08CABF: LDY.b #$28\n\n.not_crystal\n #_08CAC1: TYA\n #_08CAC2: STA.b $72\n\n #_08CAC4: PHX\n\n #_08CAC5: JSL WriteTo4BPPBuffer_item_gfx\n\n #_08CAC9: PLX\n\n.tick_timer\n #_08CACA: DEC.w $04C2\n\n.exit\n #_08CACD: RTS", + "file": "bank_08.asm" + }, + { + "name": "ItemReceipt_TransmuteToRisingCrystal", + "code": "ItemReceipt_TransmuteToRisingCrystal:\n #_08CBE4: LDA.b #$3E ; ANCILLA 3E\n #_08CBE6: STA.w $0C4A,X\n\n #_08CBE9: STZ.w $0C22,X\n #_08CBEC: STZ.w $0C2C,X\n #_08CBEF: STZ.w $0C36,X\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3E_RisingCrystal", + "code": "Ancilla3E_RisingCrystal:\n #_08CBF2: STZ.w $029E,X\n\n #_08CBF5: JSR AncillaAdd_OccasionalSparkle\n\n #_08CBF8: LDA.w $0C22,X\n #_08CBFB: CLC\n #_08CBFC: ADC.b #$FF\n #_08CBFE: CMP.b #$F0\n #_08CC00: BCS .positive\n\n #_08CC02: LDA.b #$F0\n\n.positive\n #_08CC04: STA.w $0C22,X\n\n #_08CC07: JSR Ancilla_Move_Y\n\n #_08CC0A: LDA.w $0BFA,X\n #_08CC0D: STA.b $00\n\n #_08CC0F: LDA.w $0C0E,X\n #_08CC12: STA.b $01\n\n #_08CC14: REP #$20\n\n #_08CC16: LDA.b $00\n #_08CC18: SEC\n #_08CC19: SBC.w $0122\n #_08CC1C: CMP.w #$0049\n #_08CC1F: BCS .not_in_position\n\n #_08CC21: LDA.w #$0049\n #_08CC24: CLC\n #_08CC25: ADC.w $0122\n #_08CC28: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08CC2A: SEP #$20\n\n #_08CC2C: LDA.b $00\n #_08CC2E: STA.w $0BFA,X\n\n #_08CC31: LDA.b $01\n #_08CC33: STA.w $0C0E,X\n\n #_08CC36: LDA.b $11\n #_08CC38: BNE .not_in_position\n\n #_08CC3A: PHX\n\n #_08CC3B: LDA.w $040C\n #_08CC3E: LSR A\n #_08CC3F: TAX\n\n #_08CC40: LDA.l $7EF37A\n #_08CC44: ORA.l RoomTagPrizeChecks,X\n #_08CC48: STA.l $7EF37A\n\n #_08CC4C: LDA.b #$18\n #_08CC4E: STA.b $11\n #_08CC50: STZ.b $B0\n\n; ---------------------------------------------------------\n\n #_08CC52: REP #$20\n\n #_08CC54: LDX.b #$00\n\n #_08CC56: LDA.w #$0000 ; RGB: #000000\n\n.next_color\n #_08CC59: STA.l $7EC340,X\n #_08CC5D: STA.l $7EC360,X\n #_08CC61: STA.l $7EC380,X\n #_08CC65: STA.l $7EC3A0,X\n #_08CC69: STA.l $7EC3C0,X\n #_08CC6D: STA.l $7EC3E0,X\n\n #_08CC71: INX\n #_08CC72: INX\n #_08CC73: CPX.b #$20\n #_08CC75: BNE .next_color\n\n #_08CC77: STA.l $7EC007\n #_08CC7B: STA.l $7EC009\n\n; ---------------------------------------------------------\n\n #_08CC7F: SEP #$20\n\n #_08CC81: PLX\n\n.not_in_position\n #_08CC82: SEP #$20\n\n #_08CC84: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08CC87: REP #$20\n\n #_08CC89: LDA.b $00\n #_08CC8B: STA.b $06\n\n #_08CC8D: SEP #$20\n\n #_08CC8F: JSR AncillaDraw_ItemReceipt\n\n #_08CC92: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_OccasionalSparkle", + "code": "AncillaAdd_OccasionalSparkle:\n #_08CC93: LDA.b $1A\n #_08CC95: AND.b #$07\n #_08CC97: BNE .exit\n\n #_08CC99: PHX\n\n #_08CC9A: JSL AncillaAdd_SwordChargeSparkle\n\n #_08CC9E: PLX\n\n.exit\n #_08CC9F: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla43_GanonsTowerCutscene", + "code": "Ancilla43_GanonsTowerCutscene:\n #_08CCA0: LDA.w $0C54,X\n #_08CCA3: BNE .not_first_state\n\n #_08CCA5: LDA.w $0C22,X\n #_08CCA8: CLC\n #_08CCA9: ADC.b #$FF\n #_08CCAB: CMP.b #$F0\n #_08CCAD: BCS .not_max_crystal_speed\n\n #_08CCAF: LDA.b #$F0\n\n.not_max_crystal_speed\n #_08CCB1: STA.w $0C22,X\n\n #_08CCB4: JSR Ancilla_Move_Y\n\n #_08CCB7: LDA.w $0BFA,X\n #_08CCBA: STA.b $00\n\n #_08CCBC: LDA.w $0C0E,X\n #_08CCBF: STA.b $01\n\n #_08CCC1: LDA.w $0C04,X\n #_08CCC4: STA.b $02\n\n #_08CCC6: LDA.w $0C18,X\n #_08CCC9: STA.b $03\n\n; ---------------------------------------------------------\n\n #_08CCCB: REP #$20\n\n #_08CCCD: LDA.b $00\n #_08CCCF: SEC\n #_08CCD0: SBC.w $0122\n\n #_08CCD3: CMP.w #$0038\n #_08CCD6: BCS .crystals_not_together\n\n #_08CCD8: LDA.w #$0038\n #_08CCDB: CLC\n #_08CCDC: ADC.w $0122\n #_08CCDF: STA.b $00\n\n #_08CCE1: CLC\n #_08CCE2: ADC.w #$0008\n #_08CCE5: STA.l $7F5810\n\n #_08CCE9: LDA.b $02\n #_08CCEB: CLC\n #_08CCEC: ADC.w #$0008\n #_08CCEF: STA.l $7F580E\n\n; ---------------------------------------------------------\n\n #_08CCF3: SEP #$20\n\n #_08CCF5: LDA.b $00\n #_08CCF7: STA.w $0BFA,X\n\n #_08CCFA: LDA.b $01\n #_08CCFC: STA.w $0C0E,X\n\n #_08CCFF: INC.w $0C54,X\n\n #_08CD02: LDA.b #$05 ; SFX1.05\n #_08CD04: STA.w $012D\n\n #_08CD07: LDA.b #$F1 ; SONG F1 - fade\n #_08CD09: STA.w $012C\n\n #_08CD0C: REP #$20\n\n #_08CD0E: LDA.w #$013B ; MESSAGE 013B\n #_08CD11: STA.w $1CF0\n\n #_08CD14: SEP #$20\n\n #_08CD16: JSL Interface_PrepAndDisplayMessage\n\n #_08CD1A: BRA .draw_single_crystal_prep\n\n; ---------------------------------------------------------\n\n.crystals_not_together\n #_08CD1C: SEP #$20\n\n.not_first_state\n #_08CD1E: LDA.w $0C54,X\n #_08CD21: CMP.b #$01\n #_08CD23: BNE .not_expansive\n\n #_08CD25: LDA.b $11\n #_08CD27: BNE .not_expansive\n\n #_08CD29: LDA.b #$10\n #_08CD2B: STA.w $0C2C,X\n\n #_08CD2E: LDA.w $0C04,X\n #_08CD31: STA.b $72\n\n #_08CD33: LDA.w $0C18,X\n #_08CD36: STA.b $73\n\n #_08CD38: LDA.l $7F5808\n #_08CD3C: STA.w $0C04,X\n\n #_08CD3F: STZ.w $0C18,X\n\n #_08CD42: JSR Ancilla_Move_X\n\n #_08CD45: LDA.w $0C04,X\n #_08CD48: STA.l $7F5808\n\n #_08CD4C: LDA.b $72\n #_08CD4E: STA.w $0C04,X\n\n #_08CD51: LDA.b $73\n #_08CD53: STA.w $0C18,X\n\n #_08CD56: LDA.l $7F5808\n #_08CD5A: CMP.b #$30\n #_08CD5C: BCC .not_expansive\n\n #_08CD5E: LDA.b #$30\n #_08CD60: STA.l $7F5808\n\n #_08CD64: INC.w $0C54,X\n\n; ---------------------------------------------------------\n\n.not_expansive\n #_08CD67: LDA.b $11\n #_08CD69: BNE GTCutscene_AnimateCrystals\n\n #_08CD6B: LDA.w $0C54,X\n #_08CD6E: BNE .draw_multiple\n\n; ---------------------------------------------------------\n\n.draw_single_crystal_prep\n #_08CD70: LDY.b #$00\n\n #_08CD72: BRL GTCutscene_DrawSingleCrystal\n\n; ---------------------------------------------------------\n\n.draw_multiple\n #_08CD75: CMP.b #$01\n #_08CD77: BEQ GTCutscene_AnimateCrystals\n\n #_08CD79: CMP.b #$03\n #_08CD7B: BEQ .final_rotation\n\n; ---------------------------------------------------------\n\n #_08CD7D: LDA.l $7F5812\n #_08CD81: DEC A\n #_08CD82: STA.l $7F5812\n\n #_08CD86: BNE GTCutscene_AnimateCrystals\n\n #_08CD88: LDA.b #$05\n #_08CD8A: STA.w $04C6\n\n #_08CD8D: STZ.b $B0\n #_08CD8F: STZ.b $C8\n\n #_08CD91: INC.w $0C54,X\n\n #_08CD94: BRA GTCutscene_AnimateCrystals\n\n; ---------------------------------------------------------\n\n.final_rotation\n #_08CD96: LDA.b #$30\n #_08CD98: STA.w $0C2C,X\n\n #_08CD9B: LDA.w $0C04,X\n #_08CD9E: STA.b $72\n\n #_08CDA0: LDA.w $0C18,X\n #_08CDA3: STA.b $73\n\n #_08CDA5: LDA.l $7F5808\n #_08CDA9: STA.w $0C04,X\n\n #_08CDAC: STZ.w $0C18,X\n\n #_08CDAF: JSR Ancilla_Move_X\n\n #_08CDB2: LDA.w $0C04,X\n #_08CDB5: STA.l $7F5808\n\n #_08CDB9: LDA.b $72\n #_08CDBB: STA.w $0C04,X\n\n #_08CDBE: LDA.b $73\n #_08CDC0: STA.w $0C18,X\n\n #_08CDC3: LDA.l $7F5808\n #_08CDC7: CMP.b #$F0\n #_08CDC9: BCC GTCutscene_AnimateCrystals\n\n; ---------------------------------------------------------\n\n #_08CDCB: PHX\n\n #_08CDCC: LDA.b #$00\n #_08CDCE: STA.w $0AB1\n\n #_08CDD1: LDA.b #$02\n #_08CDD3: STA.w $0AA9\n\n #_08CDD6: JSL Palettes_Load_SpriteEnvironment_Underworld\n\n #_08CDDA: INC.b $15\n\n #_08CDDC: PLX\n\n #_08CDDD: STZ.w $0C4A,X\n\n #_08CDE0: RTS", + "file": "bank_08.asm" + }, + { + "name": "GTCutscene_AnimateCrystals", + "code": "GTCutscene_AnimateCrystals:\n #_08CDE1: LDY.b #$00\n\n #_08CDE3: LDA.w $0C54,X\n #_08CDE6: STA.b $72\n\n #_08CDE8: BEQ .sparkle_a_not\n\n #_08CDEA: JSR GTCutscene_SparkleALot\n\n.sparkle_a_not\n #_08CDED: LDX.b #$06\n\n.next_crystal\n #_08CDEF: LDA.b $11\n #_08CDF1: BNE .no_rotate\n\n #_08CDF3: LDA.b $72\n #_08CDF5: CMP.b #$01\n #_08CDF7: BEQ .no_rotate\n\n #_08CDF9: LDA.b $1A\n #_08CDFB: AND.b #$01\n #_08CDFD: BNE .no_rotate\n\n #_08CDFF: LDA.l $7F5800,X\n #_08CE03: INC A\n #_08CE04: AND.b #$3F\n #_08CE06: STA.l $7F5800,X\n\n.no_rotate\n #_08CE0A: LDA.l $7F5808\n #_08CE0E: STA.b $08\n\n #_08CE10: LDA.l $7F5800,X\n\n #_08CE14: JSR Ancilla_GetRadialProjection\n\n #_08CE17: REP #$20\n\n #_08CE19: PHY\n\n #_08CE1A: LDA.b $00\n #_08CE1C: LDY.b $02\n #_08CE1E: BEQ .positive_y\n\n #_08CE20: EOR.w #$FFFF\n #_08CE23: INC A\n\n.positive_y\n #_08CE24: CLC\n #_08CE25: ADC.l $7F5810\n\n #_08CE29: CLC\n #_08CE2A: ADC.w #$FFF8\n\n #_08CE2D: SEC\n #_08CE2E: SBC.w $0122\n #_08CE31: STA.b $00\n\n #_08CE33: LDA.b $04\n\n #_08CE35: LDY.b $06\n #_08CE37: BEQ .positive_x\n\n #_08CE39: EOR.w #$FFFF\n #_08CE3C: INC A\n\n.positive_x\n #_08CE3D: CLC\n #_08CE3E: ADC.l $7F580E\n\n #_08CE42: CLC\n #_08CE43: ADC.w #$FFF8\n\n #_08CE46: SEC\n #_08CE47: SBC.w $011E\n #_08CE4A: STA.b $02\n\n #_08CE4C: PLY\n\n #_08CE4D: SEP #$20\n\n #_08CE4F: LDA.b $00\n #_08CE51: STA.l $7F5817,X\n\n #_08CE55: LDA.b $01\n #_08CE57: STA.l $7F581F,X\n\n #_08CE5B: LDA.b $02\n #_08CE5D: STA.l $7F5827,X\n\n #_08CE61: LDA.b $03\n #_08CE63: STA.l $7F582F,X\n\n #_08CE67: PHX\n\n #_08CE68: JSR AncillaDraw_GTCutsceneCrystal\n\n #_08CE6B: PLX\n #_08CE6C: DEX\n\n #_08CE6D: BPL .next_crystal\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "GTCutscene_DrawSingleCrystal", + "code": "GTCutscene_DrawSingleCrystal:\n #_08CE6F: LDX.w $0FA0\n\n #_08CE72: PHY\n #_08CE73: JSR Ancilla_PrepOAMCoord_adjusted\n #_08CE76: PLY\n\n #_08CE77: LDA.b $00\n #_08CE79: STA.l $7F581E\n\n #_08CE7D: LDA.b $01\n #_08CE7F: STA.l $7F5826\n\n #_08CE83: LDA.b $02\n #_08CE85: STA.l $7F582E\n\n #_08CE89: LDA.b $03\n #_08CE8B: STA.l $7F5836\n\n #_08CE8F: JSR AncillaDraw_GTCutsceneCrystal\n\n; ---------------------------------------------------------\n\n #_08CE92: LDX.w $0FA0\n\n #_08CE95: LDA.w $0C54,X\n #_08CE98: BNE .skip_sparkle\n\n #_08CE9A: JSR AncillaAdd_OccasionalSparkle\n\n #_08CE9D: BRA .exit\n\n.skip_sparkle\n #_08CE9F: LDA.b $11\n #_08CEA1: BNE .exit\n\n #_08CEA3: JSR GTCutscene_ActivateSparkle\n\n #_08CEA6: LDX.w $0FA0\n\n.exit\n #_08CEA9: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_GTCutsceneCrystal", + "code": "AncillaDraw_GTCutsceneCrystal:\n #_08CEAA: JSR Ancilla_SetOAM_XY_safe\n\n #_08CEAD: LDA.b #$24\n #_08CEAF: STA.b ($90),Y\n\n #_08CEB1: INY\n\n #_08CEB2: LDA.b #$3C\n #_08CEB4: STA.b ($90),Y\n\n #_08CEB6: INY\n #_08CEB7: PHY\n\n #_08CEB8: TYA\n #_08CEB9: SEC\n #_08CEBA: SBC.b #$04\n #_08CEBC: LSR A\n #_08CEBD: LSR A\n #_08CEBE: TAY\n\n #_08CEBF: LDA.b #$02\n #_08CEC1: ORA.b $75\n #_08CEC3: STA.b ($92),Y\n\n #_08CEC5: PLY\n\n #_08CEC6: RTS", + "file": "bank_08.asm" + }, + { + "name": "GTCutscene_ActivateSparkle", + "code": "GTCutscene_ActivateSparkle:\n #_08CEC7: LDX.b #$17\n\n.next_check\n #_08CEC9: LDA.l $7F5837,X\n #_08CECD: CMP.b #$FF\n #_08CECF: BEQ .activate_it\n\n #_08CED1: DEX\n #_08CED2: BPL .next_check\n\n #_08CED4: BRA .exit\n\n; ---------------------------------------------------------\n\n.activate_it\n #_08CED6: PHX\n\n #_08CED7: LDA.b #$00\n #_08CED9: STA.l $7F5837,X\n\n #_08CEDD: LDA.b #$04\n #_08CEDF: STA.l $7F58AF,X\n\n #_08CEE3: JSL GetRandomNumber\n #_08CEE7: STA.b $08\n\n #_08CEE9: LSR A\n #_08CEEA: LSR A\n #_08CEEB: LSR A\n #_08CEEC: LSR A\n #_08CEED: STA.b $09\n\n #_08CEEF: LDA.b $08\n #_08CEF1: AND.b #$0F\n #_08CEF3: STA.b $08\n\n #_08CEF5: TXA\n #_08CEF6: AND.b #$07\n #_08CEF8: TAX\n\n #_08CEF9: LDA.l $7F5817,X\n #_08CEFD: CLC\n #_08CEFE: ADC.b $08\n #_08CF00: STA.b $00\n\n #_08CF02: LDA.l $7F581F,X\n #_08CF06: ADC.b #$00\n #_08CF08: STA.b $01\n\n #_08CF0A: LDA.l $7F5827,X\n #_08CF0E: CLC\n #_08CF0F: ADC.b $09\n #_08CF11: STA.b $02\n\n #_08CF13: LDA.l $7F582F,X\n #_08CF17: ADC.b #$00\n #_08CF19: STA.b $03\n\n #_08CF1B: PLX\n\n #_08CF1C: LDA.b $00\n #_08CF1E: STA.l $7F584F,X\n\n #_08CF22: LDA.b $01\n #_08CF24: STA.l $7F5867,X\n\n #_08CF28: LDA.b $02\n #_08CF2A: STA.l $7F587F,X\n\n #_08CF2E: LDA.b $03\n #_08CF30: STA.l $7F5897,X\n\n.exit\n #_08CF34: RTS", + "file": "bank_08.asm" + }, + { + "name": "GTCutscene_SparkleALot", + "code": "GTCutscene_SparkleALot:\n #_08CF35: LDX.b #$17\n\n.next\n #_08CF37: LDA.l $7F5837,X\n #_08CF3B: CMP.b #$FF\n #_08CF3D: BEQ .skip\n\n #_08CF3F: LDA.l $7F58AF,X\n #_08CF43: DEC A\n #_08CF44: STA.l $7F58AF,X\n #_08CF48: BPL .active\n\n #_08CF4A: LDA.b #$04\n #_08CF4C: STA.l $7F58AF,X\n\n #_08CF50: LDA.l $7F5837,X\n #_08CF54: INC A\n #_08CF55: STA.l $7F5837,X\n\n #_08CF59: CMP.b #$03\n #_08CF5B: BNE .active\n\n #_08CF5D: LDA.b #$FF\n #_08CF5F: STA.l $7F5837,X\n #_08CF63: BRA .skip\n\n; ---------------------------------------------------------\n\n.active\n #_08CF65: PHX\n\n #_08CF66: LDA.l $7F584F,X\n #_08CF6A: STA.b $00\n\n #_08CF6C: LDA.l $7F5867,X\n #_08CF70: STA.b $01\n\n #_08CF72: LDA.l $7F587F,X\n #_08CF76: STA.b $02\n\n #_08CF78: LDA.l $7F5897,X\n #_08CF7C: STA.b $03\n\n #_08CF7E: LDA.l $7F5837,X\n #_08CF82: TAX\n\n #_08CF83: JSR Ancilla_SetOAM_XY\n\n #_08CF86: LDA.w Ancilla3C_SpinAttackChargeSparkle_char,X\n #_08CF89: STA.b ($90),Y\n\n #_08CF8B: INY\n\n #_08CF8C: LDA.w Ancilla3C_SpinAttackChargeSparkle_prop,X\n #_08CF8F: ORA.b #$30\n #_08CF91: STA.b ($90),Y\n\n #_08CF93: INY\n #_08CF94: PHY\n\n #_08CF95: TYA\n #_08CF96: SEC\n #_08CF97: SBC.b #$04\n #_08CF99: LSR A\n #_08CF9A: LSR A\n #_08CF9B: TAY\n\n #_08CF9C: LDA.b #$00\n #_08CF9E: STA.b ($92),Y\n\n #_08CFA0: PLY\n #_08CFA1: PLX\n\n.skip\n #_08CFA2: DEX\n #_08CFA3: BPL .next\n\n; ---------------------------------------------------------\n\n #_08CFA5: RTS", + "file": "bank_08.asm" + }, + { + "name": "FluteBounce", + "code": "FluteBounce:\n #_08CFA6: db 24\n #_08CFA7: db 16\n #_08CFA8: db 10\n #_08CFA9: db 0\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla36_Flute", + "code": "Ancilla36_Flute:\n #_08CFAA: LDA.b $11\n #_08CFAC: BNE .no_collision_check\n\n #_08CFAE: LDA.w $0C54,X\n #_08CFB1: CMP.b #$03\n #_08CFB3: BEQ .check_collision\n\n #_08CFB5: LDA.w $0294,X\n #_08CFB8: SEC\n #_08CFB9: SBC.b #$02\n #_08CFBB: STA.w $0294,X\n\n #_08CFBE: JSR Ancilla_Move_X\n #_08CFC1: JSR Ancilla_Move_Z\n\n; ---------------------------------------------------------\n\n #_08CFC4: LDA.w $029E,X\n #_08CFC7: BPL .no_collision_check\n\n #_08CFC9: CMP.b #$F0\n #_08CFCB: BCC .no_collision_check\n\n #_08CFCD: INC.w $0C54,X\n\n #_08CFD0: LDY.w $0C54,X\n\n #_08CFD3: LDA.w FluteBounce,Y\n #_08CFD6: STA.w $0294,X\n\n #_08CFD9: STZ.w $029E,X\n\n.no_collision_check\n #_08CFDC: BRA AncillaDraw_Flute\n\n; ---------------------------------------------------------\n\n.check_collision\n #_08CFDE: LDY.b #$02\n #_08CFE0: JSR Ancilla_CheckLinkCollision\n #_08CFE3: BCC AncillaDraw_Flute\n\n #_08CFE5: LDA.w $037E\n #_08CFE8: BNE AncillaDraw_Flute\n\n #_08CFEA: LDA.b $4D\n #_08CFEC: BNE AncillaDraw_Flute\n\n #_08CFEE: PHX\n\n #_08CFEF: STZ.w $0C4A,X\n\n #_08CFF2: STZ.w $02E9\n\n #_08CFF5: LDY.b #$14 ; ITEMGET 14\n #_08CFF7: JSL Link_ReceiveItem\n\n #_08CFFB: PLX\n\n #_08CFFC: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Flute", + "code": "AncillaDraw_Flute:\n #_08CFFD: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08D000: REP #$20\n\n #_08D002: LDA.w $029E,X\n #_08D005: AND.w #$00FF\n #_08D008: CMP.w #$0080\n #_08D00B: BCC .positive_z\n\n #_08D00D: ORA.w #$FF00\n\n.positive_z\n #_08D010: EOR.w #$FFFF\n #_08D013: INC A\n\n #_08D014: CLC\n #_08D015: ADC.b $00\n #_08D017: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08D019: SEP #$20\n\n #_08D01B: PHX\n\n #_08D01C: LDY.b #$00\n #_08D01E: JSR Ancilla_SetOAM_XY\n\n #_08D021: LDA.b #$24\n #_08D023: STA.b ($90),Y\n\n #_08D025: INY\n\n #_08D026: LDA.b #$04\n #_08D028: ORA.b $65\n #_08D02A: STA.b ($90),Y\n\n #_08D02C: LDA.b #$02\n #_08D02E: STA.b ($92)\n\n #_08D030: PLX\n\n #_08D031: LDY.b #$01\n\n #_08D033: LDA.b ($90),Y\n #_08D035: CMP.b #$F0\n #_08D037: BNE EXIT_08D03C\n\n #_08D039: STZ.w $0C4A,X\n\n; ---------------------------------------------------------\n\n#EXIT_08D03C:\n #_08D03C: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla37_WeathervaneExplosion", + "code": "Ancilla37_WeathervaneExplosion:\n #_08D03D: REP #$20\n\n #_08D03F: LDA.l $7F58B6\n #_08D043: DEC A\n #_08D044: STA.l $7F58B6\n\n #_08D048: BNE .proceed_to_exit\n\n #_08D04A: SEP #$20\n\n #_08D04C: INC A\n #_08D04D: STA.l $7F58B6\n\n #_08D051: LDA.l $7F58B8\n #_08D055: BNE .continue\n\n #_08D057: INC A\n #_08D058: STA.l $7F58B8\n\n #_08D05C: LDA.b #$F3 ; SONG F3 - max volume\n #_08D05E: STA.w $012C\n\n #_08D061: BRA .continue\n\n.proceed_to_exit\n #_08D063: SEP #$20\n\n #_08D065: BRA EXIT_08D03C\n\n; ---------------------------------------------------------\n\n.continue\n #_08D067: DEC.w $0394,X\n\n #_08D06A: LDA.w $0394,X\n #_08D06D: BNE .proceed_to_exit\n\n #_08D06F: INC A\n #_08D070: STA.w $0394,X\n\n #_08D073: LDA.w $039F,X\n #_08D076: BNE .already_BOOMed\n\n #_08D078: INC A\n #_08D079: STA.w $039F,X\n\n #_08D07C: LDA.b #$0C ; SFX2.0C\n #_08D07E: JSR Ancilla_SFX2_Near\n\n; ---------------------------------------------------------\n\n.already_BOOMed\n #_08D081: LDA.w $0C54,X\n #_08D084: BNE .not_first_step\n\n #_08D086: DEC.w $03B1,X\n #_08D089: BPL .not_first_step\n\n #_08D08B: LDA.b #$01\n #_08D08D: STA.w $0C54,X\n\n #_08D090: PHX\n\n #_08D091: JSL Overworld_AlterWeathervane\n\n #_08D095: LDY.b #$00\n #_08D097: LDA.b #$38 ; ANCILLA 38\n #_08D099: JSL AncillaAdd_CutsceneDuck\n\n #_08D09D: PLX\n\n.not_first_step\n #_08D09E: TXA\n #_08D09F: STA.l $7F5878\n\n #_08D0A3: LDA.b #$00\n #_08D0A5: STA.l $7F5879\n\n; ---------------------------------------------------------\n\n #_08D0A9: LDX.b #$0B\n\n.next\n #_08D0AB: LDA.l $7F586C,X\n #_08D0AF: CMP.b #$FF\n #_08D0B1: BNE .dont_skip\n\n #_08D0B3: BRL .skip\n\n.dont_skip\n #_08D0B6: LDA.l $7F5860,X\n #_08D0BA: DEC A\n #_08D0BB: STA.l $7F5860,X\n\n #_08D0BF: BPL .delay_char_toggle\n\n #_08D0C1: LDA.b #$01\n #_08D0C3: STA.l $7F5860,X\n\n #_08D0C7: LDA.l $7F586C,X\n #_08D0CB: EOR.b #$01\n #_08D0CD: STA.l $7F586C,X\n\n; ---------------------------------------------------------\n\n.delay_char_toggle\n #_08D0D1: PHX\n\n #_08D0D2: LDA.l $7F5878\n #_08D0D6: TAY\n\n #_08D0D7: LDA.l $7F586C,X\n #_08D0DB: STA.w $0C5E,Y\n\n #_08D0DE: LDA.l $7F5824,X\n #_08D0E2: STA.w $0BFA,Y\n\n #_08D0E5: LDA.l $7F5830,X\n #_08D0E9: STA.w $0C0E,Y\n\n #_08D0EC: LDA.l $7F583C,X\n #_08D0F0: STA.w $0C04,Y\n\n #_08D0F3: LDA.l $7F5848,X\n #_08D0F7: STA.w $0C18,Y\n\n #_08D0FA: LDA.l $7F5854,X\n #_08D0FE: STA.w $029E,Y\n\n #_08D101: LDA.l $7F5800,X\n #_08D105: STA.w $0C22,Y\n\n #_08D108: LDA.l $7F580C,X\n #_08D10C: STA.w $0C2C,Y\n\n #_08D10F: LDA.l $7F5818,X\n #_08D113: SEC\n #_08D114: SBC.b #$01\n #_08D116: STA.l $7F5818,X\n #_08D11A: STA.w $0294,Y\n\n; ---------------------------------------------------------\n\n #_08D11D: TYX\n\n #_08D11E: JSR Ancilla_Move_Y\n #_08D121: JSR Ancilla_Move_X\n #_08D124: JSR Ancilla_Move_Z\n\n #_08D127: STZ.b $74\n\n #_08D129: LDA.w $029E,X\n #_08D12C: CMP.b #$F0\n #_08D12E: BCC .not_buried\n\n #_08D130: LDA.b #$FF\n #_08D132: STA.b $74\n\n.not_buried\n #_08D134: JSR AncillaDraw_WeathervaneExplosionWoodDebris\n #_08D137: PLX\n\n #_08D138: LDA.b $74\n #_08D13A: BPL .dont_deactivate\n\n #_08D13C: STA.l $7F586C,X\n\n.dont_deactivate\n #_08D140: LDA.l $7F5878\n #_08D144: TAY\n\n #_08D145: LDA.w $0BFA,Y\n #_08D148: STA.l $7F5824,X\n\n #_08D14C: LDA.w $0C0E,Y\n #_08D14F: STA.l $7F5830,X\n\n #_08D153: LDA.w $0C04,Y\n #_08D156: STA.l $7F583C,X\n\n #_08D15A: LDA.w $0C18,Y\n #_08D15D: STA.l $7F5848,X\n\n #_08D161: LDA.w $029E,Y\n #_08D164: STA.l $7F5854,X\n\n; ---------------------------------------------------------\n\n.skip\n #_08D168: DEX\n #_08D169: BMI .done_loop\n\n #_08D16B: BRL .next\n\n; ---------------------------------------------------------\n\n.done_loop\n #_08D16E: LDA.l $7F5878\n #_08D172: TAY\n\n #_08D173: LDX.b #$0B\n\n.next_active_check\n #_08D175: LDA.l $7F586C,X\n #_08D179: CMP.b #$FF\n #_08D17B: BNE .exit\n\n #_08D17D: DEX\n #_08D17E: BPL .next_active_check\n\n #_08D180: TYX\n #_08D181: STZ.w $0C4A,X\n\n.exit\n #_08D184: TYX\n\n #_08D185: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_WeathervaneExplosionWoodDebris", + "code": "AncillaDraw_WeathervaneExplosionWoodDebris:\n #_08D188: JSR Ancilla_PrepOAMCoord\n\n #_08D18B: REP #$20\n\n #_08D18D: LDA.w $029E,X\n #_08D190: AND.w #$00FF\n #_08D193: CMP.w #$0080\n #_08D196: BCC .positive_z\n\n #_08D198: ORA.w #$FF00\n\n.positive_z\n #_08D19B: EOR.w #$FFFF\n #_08D19E: INC A\n\n #_08D19F: CLC\n #_08D1A0: ADC.b $00\n #_08D1A2: STA.b $00\n\n #_08D1A4: SEP #$20\n\n #_08D1A6: LDA.w $0C5E,X\n #_08D1A9: STA.b $72\n\n #_08D1AB: BMI .exit\n\n; ---------------------------------------------------------\n\n #_08D1AD: PHX\n\n #_08D1AE: LDA.l $7F5879\n #_08D1B2: TAY\n\n #_08D1B3: JSR Ancilla_SetOAM_XY\n\n #_08D1B6: LDX.b $72\n\n #_08D1B8: LDA.w .char,X\n #_08D1BB: STA.b ($90),Y\n\n #_08D1BD: INY\n\n #_08D1BE: LDA.b #$3C\n #_08D1C0: STA.b ($90),Y\n\n #_08D1C2: INY\n #_08D1C3: TYA\n #_08D1C4: STA.l $7F5879\n\n #_08D1C8: SEC\n #_08D1C9: SBC.b #$04\n\n #_08D1CB: LSR A\n #_08D1CC: LSR A\n #_08D1CD: TAY\n\n #_08D1CE: LDA.b #$00\n #_08D1D0: STA.b ($92),Y\n\n #_08D1D2: PLX\n\n; ---------------------------------------------------------\n\n.exit\n #_08D1D3: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla38_CutsceneDuck", + "code": "Ancilla38_CutsceneDuck:\n #_08D1D8: LDA.b $1A\n #_08D1DA: AND.b #$1F\n #_08D1DC: BNE .skip_sfx\n\n #_08D1DE: LDA.b #$1E ; SFX3.1E\n #_08D1E0: JSR Ancilla_SFX3_Pan\n\n.skip_sfx\n #_08D1E3: DEC.w $039F,X\n #_08D1E6: BPL .delay\n\n #_08D1E8: LDA.b #$03\n #_08D1EA: STA.w $039F,X\n\n #_08D1ED: LDA.w $0380,X\n #_08D1F0: EOR.b #$01\n #_08D1F2: STA.w $0380,X\n\n.delay\n #_08D1F5: DEC.w $03B1,X\n\n #_08D1F8: LDA.w $03B1,X\n #_08D1FB: BEQ .movement\n\n #_08D1FD: BRL CutsceneDuck_Draw\n\n; ---------------------------------------------------------\n\n.movement\n #_08D200: LDA.b #$01\n #_08D202: STA.w $03B1,X\n\n #_08D205: LDA.w $0385,X\n #_08D208: BNE .swirl_around\n\n #_08D20A: DEC.w $0C5E,X\n #_08D20D: BMI .init_swirling\n\n #_08D20F: LDY.b #$FF\n #_08D211: LDA.w $0C54,X\n #_08D214: BEQ .accelerate_descent\n\n #_08D216: LDY.b #$01\n\n.accelerate_descent\n #_08D218: TYA\n #_08D219: CLC\n #_08D21A: ADC.w $0294,X\n #_08D21D: STA.w $0294,X\n\n #_08D220: BPL .positive_z\n\n #_08D222: EOR.b #$FF\n #_08D224: INC A\n\n.positive_z\n #_08D225: CMP.b #$0C\n #_08D227: BCC .dont_flip_swirl\n\n #_08D229: LDA.w $0C54,X\n #_08D22C: EOR.b #$01\n #_08D22E: STA.w $0C54,X\n\n.dont_flip_swirl\n #_08D231: BRL CutsceneDuck_Draw\n\n; ---------------------------------------------------------\n\n.init_swirling\n #_08D234: STZ.w $0C5E,X\n #_08D237: STZ.w $0C54,X\n\n #_08D23A: LDA.w .swirl\n #_08D23D: STA.w $0C2C,X\n\n #_08D240: LDA.b #$F0\n #_08D242: STA.w $0294,X\n\n #_08D245: INC.w $0385,X\n\n #_08D248: LDA.b #$03\n #_08D24A: STA.w $0C54,X\n\n.swirl_around\n #_08D24D: LDY.b #$FF\n\n #_08D24F: LDA.w $0C54,X\n #_08D252: AND.b #$01\n #_08D254: BNE .accelerate_left\n\n #_08D256: LDY.b #$01\n\n.accelerate_left\n #_08D258: TYA\n #_08D259: CLC\n #_08D25A: ADC.w $0C2C,X\n #_08D25D: STA.w $0C2C,X\n\n #_08D260: BPL .positive_x_a\n\n #_08D262: EOR.b #$FF\n #_08D264: INC A\n\n.positive_x_a\n #_08D265: CMP.b #$00\n #_08D267: BNE .not_maxed_swirl\n\n #_08D269: INC.w $0385,X\n\n #_08D26C: LDY.w $0385,X\n #_08D26F: CPY.b #$07\n #_08D271: BNE .not_maxed_swirl\n\n #_08D273: PHA\n\n #_08D274: LDA.b #$01\n #_08D276: STA.w $03A9,X\n\n #_08D279: PLA\n\n; ---------------------------------------------------------\n\n.not_maxed_swirl\n #_08D27A: LDY.w $03A9,X\n #_08D27D: CMP.w .swirl,Y\n #_08D280: BCC .not_max_x\n\n #_08D282: LDA.w $0C54,X\n #_08D285: AND.b #$03\n #_08D287: EOR.b #$03\n #_08D289: STA.b $00\n\n #_08D28B: LDA.w $0C54,X\n #_08D28E: AND.b #$FC\n #_08D290: ORA.b $00\n #_08D292: STA.w $0C54,X\n\n; ---------------------------------------------------------\n\n.not_max_x\n #_08D295: LDY.b #$03\n #_08D297: LDA.w $0C2C,X\n #_08D29A: BPL .positive_x_b\n\n #_08D29C: EOR.b #$FF\n #_08D29E: INC A\n\n #_08D29F: LDY.b #$02\n\n.positive_x_b\n #_08D2A1: STA.b $00\n\n #_08D2A3: TYA\n #_08D2A4: STA.w $0C72,X\n\n #_08D2A7: LDY.w $03A9,X\n\n #_08D2AA: LDA.w .swirl,Y\n #_08D2AD: SEC\n #_08D2AE: SBC.b $00\n #_08D2B0: LSR A\n #_08D2B1: STA.b $00\n\n #_08D2B3: LDA.w $0C54,X\n #_08D2B6: AND.b #$02\n #_08D2B8: BEQ .descending\n\n #_08D2BA: LDA.b $00\n #_08D2BC: EOR.b #$FF\n #_08D2BE: INC A\n #_08D2BF: STA.b $00\n\n.descending\n #_08D2C1: LDA.b $00\n #_08D2C3: STA.w $0294,X\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "CutsceneDuck_Draw", + "code": "CutsceneDuck_Draw:\n #_08D2C6: JSR Ancilla_Move_X\n #_08D2C9: JSR Ancilla_Move_Z\n\n #_08D2CC: LDY.w $0380,X\n\n #_08D2CF: LDA.w .vram_offset+1,Y\n #_08D2D2: STA.w $0AF4\n\n #_08D2D5: JSR Ancilla_PrepOAMCoord\n\n #_08D2D8: LDA.w $0C72,X\n #_08D2DB: AND.b #$01\n #_08D2DD: TAY\n\n #_08D2DE: LDA.w .hflip,Y\n #_08D2E1: STA.b $08\n\n; =========================================================\n\n #_08D2E3: REP #$20\n\n #_08D2E5: LDA.w $029E,X\n #_08D2E8: AND.w #$00FF\n #_08D2EB: CMP.w #$0080\n #_08D2EE: BCC .z_is_positive\n\n #_08D2F0: ORA.w #$FF00\n\n.z_is_positive\n #_08D2F3: EOR.w #$FFFF\n #_08D2F6: INC A\n #_08D2F7: STA.b $04\n\n #_08D2F9: LDA.b $00\n #_08D2FB: STA.b $0A\n\n #_08D2FD: SEC\n #_08D2FE: SBC.b $04\n #_08D300: STA.b $04\n\n #_08D302: LDA.b $02\n #_08D304: STA.b $06\n\n; ---------------------------------------------------------\n\n #_08D306: SEP #$20\n\n #_08D308: PHX\n\n #_08D309: LDY.b #$00\n\n #_08D30B: REP #$20\n\n #_08D30D: LDA.w .offset_y\n #_08D310: AND.w #$00FF\n #_08D313: CLC\n #_08D314: ADC.b $04\n #_08D316: STA.b $00\n\n #_08D318: LDA.w .offset_x\n #_08D31B: AND.w #$00FF\n #_08D31E: CLC\n #_08D31F: ADC.b $06\n #_08D321: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08D323: SEP #$20\n\n #_08D325: JSR Ancilla_SetOAM_XY\n\n #_08D328: LDA.w .char\n #_08D32B: STA.b ($90),Y\n\n #_08D32D: INY\n\n #_08D32E: LDA.w .prop\n #_08D331: ORA.b #$30\n #_08D333: ORA.b $08\n #_08D335: STA.b ($90),Y\n\n #_08D337: INY\n #_08D338: PHY\n\n #_08D339: TYA\n #_08D33A: SEC\n #_08D33B: SBC.b #$04\n #_08D33D: LSR A\n #_08D33E: LSR A\n #_08D33F: TAY\n\n #_08D340: LDA.b #$02\n #_08D342: STA.b ($92),Y\n\n #_08D344: PLY\n\n #_08D345: REP #$20\n\n #_08D347: LDA.b $0A\n #_08D349: CLC\n #_08D34A: ADC.w #$0030\n #_08D34D: STA.b $00\n\n #_08D34F: LDA.b $06\n #_08D351: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08D353: SEP #$20\n\n #_08D355: LDA.b #$30\n #_08D357: STA.b $04\n\n #_08D359: LDX.b #$01\n #_08D35B: JSR AncillaDraw_Shadow\n\n #_08D35E: PLX\n\n #_08D35F: REP #$20\n\n #_08D361: LDA.b $06\n #_08D363: BMI .exit\n\n #_08D365: CMP.w #$00F8\n #_08D368: BCC .exit\n\n; ---------------------------------------------------------\n\n #_08D36A: SEP #$20\n\n #_08D36C: STZ.w $0C4A,X\n\n #_08D36F: STZ.b $11\n\n #_08D371: LDA.b #$03\n #_08D373: STA.l $7EF34C\n\n; ---------------------------------------------------------\n\n.exit\n #_08D377: SEP #$20\n\n #_08D379: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla23_LinkPoof", + "code": "Ancilla23_LinkPoof:\n #_08D3BC: DEC.w $03B1,X\n #_08D3BF: BPL AncillaDraw_LinkPoof\n\n #_08D3C1: LDA.b #$07\n #_08D3C3: STA.w $03B1,X\n\n #_08D3C6: LDA.w $0C5E,X\n #_08D3C9: INC A\n #_08D3CA: STA.w $0C5E,X\n\n #_08D3CD: CMP.b #$03\n #_08D3CF: BNE AncillaDraw_LinkPoof\n\n #_08D3D1: STZ.w $0C4A,X\n\n #_08D3D4: STZ.w $02E1\n #_08D3D7: STZ.b $50\n\n #_08D3D9: LDA.w $0C54,X\n #_08D3DC: BNE .exit\n\n #_08D3DE: STZ.b $2E\n #_08D3E0: STZ.b $4B\n\n; ---------------------------------------------------------\n\n #_08D3E2: LDY.b #$00\n\n #_08D3E4: LDA.b $8A\n #_08D3E6: AND.b #$40\n #_08D3E8: BEQ .light_world\n\n #_08D3EA: INY\n\n.light_world\n #_08D3EB: STY.w $02E0\n #_08D3EE: STY.b $56\n #_08D3F0: BEQ .link_colors\n\n.bunny_colors\n #_08D3F2: JSL RefreshLinkEquipmentPalettes_bunny\n\n #_08D3F6: BRA .exit\n\n.link_colors\n #_08D3F8: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n.exit\n #_08D3FC: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_LinkPoof", + "code": "AncillaDraw_LinkPoof:\n #_08D3FD: LDA.w $0FB3\n #_08D400: BEQ .use_default_oam_slots\n\n #_08D402: LDA.w $0C7C,X\n #_08D405: BEQ .use_default_oam_slots\n\n #_08D407: LDA.w $035F\n #_08D40A: BEQ .use_hardcoded_oam_slots\n\n #_08D40C: LDA.b $1A\n #_08D40E: AND.b #$01\n #_08D410: BNE .use_default_oam_slots\n\n; ---------------------------------------------------------\n\n.use_hardcoded_oam_slots\n #_08D412: REP #$20\n\n #_08D414: LDA.w #$00D0\n #_08D417: PHA\n\n #_08D418: CLC\n #_08D419: ADC.w #$0800\n #_08D41C: STA.b $90\n\n #_08D41E: PLA\n #_08D41F: LSR A\n #_08D420: LSR A\n #_08D421: CLC\n #_08D422: ADC.w #$0A20\n #_08D425: STA.b $92\n\n #_08D427: SEP #$20\n\n; ---------------------------------------------------------\n\n.use_default_oam_slots\n #_08D429: JSR Ancilla_PrepOAMCoord\n\n #_08D42C: REP #$20\n\n #_08D42E: LDA.b $00\n #_08D430: STA.b $04\n\n #_08D432: LDA.b $02\n #_08D434: STA.b $06\n\n #_08D436: SEP #$20\n\n #_08D438: PHX\n\n #_08D439: LDY.w $0C5E,X\n\n #_08D43C: LDA.w .size,Y\n #_08D43F: STA.b $08\n\n #_08D441: LDA.w .char,Y\n #_08D444: STA.b $0C\n\n #_08D446: TYA\n #_08D447: ASL A\n #_08D448: ASL A\n #_08D449: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_08D44B: LDY.b #$00\n #_08D44D: STY.b $0A\n\n.next\n #_08D44F: LDA.b $0E\n #_08D451: CLC\n #_08D452: ADC.b $0A\n #_08D454: ASL A\n #_08D455: TAX\n\n #_08D456: REP #$20\n\n #_08D458: LDA.b $04\n #_08D45A: CLC\n #_08D45B: ADC.w .offset_y,X\n #_08D45E: STA.b $00\n\n #_08D460: LDA.b $06\n #_08D462: CLC\n #_08D463: ADC.w .offset_x,X\n #_08D466: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08D468: SEP #$20\n\n #_08D46A: JSR Ancilla_SetOAM_XY\n\n #_08D46D: LDA.b $0C\n #_08D46F: STA.b ($90),Y\n\n #_08D471: INY\n\n #_08D472: TXA\n #_08D473: LSR A\n #_08D474: TAX\n\n #_08D475: LDA.w .prop,X\n #_08D478: ORA.b #$04\n #_08D47A: ORA.b $65\n #_08D47C: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n #_08D47E: INY\n #_08D47F: PHY\n\n #_08D480: TYA\n #_08D481: SEC\n #_08D482: SBC.b #$04\n #_08D484: LSR A\n #_08D485: LSR A\n #_08D486: TAY\n\n #_08D487: LDA.b $08\n #_08D489: STA.b ($92),Y\n\n #_08D48B: PLY\n\n; ---------------------------------------------------------\n\n #_08D48C: CMP.b #$02\n #_08D48E: BEQ .exit\n\n #_08D490: INC.b $0A\n\n #_08D492: LDA.b $0A\n #_08D494: CMP.b #$04\n #_08D496: BNE .next\n\n.exit\n #_08D498: PLX\n\n #_08D499: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla40_DwarfPoof", + "code": "Ancilla40_DwarfPoof:\n #_08D49A: DEC.w $03B1,X\n #_08D49D: BPL .draw\n\n #_08D49F: LDA.b #$07\n #_08D4A1: STA.w $03B1,X\n\n #_08D4A4: LDA.w $0C5E,X\n #_08D4A7: INC A\n #_08D4A8: STA.w $0C5E,X\n\n #_08D4AB: CMP.b #$03\n #_08D4AD: BNE .draw\n\n #_08D4AF: STZ.w $0C4A,X\n #_08D4B2: STZ.w $02F9\n\n #_08D4B5: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3F_BushPoof", + "code": "Ancilla3F_BushPoof:\n #_08D519: LDA.w $0C68,X\n #_08D51C: BNE .draw\n\n #_08D51E: LDA.b #$07\n #_08D520: STA.w $0C68,X\n\n #_08D523: INC.w $0C5E,X\n\n #_08D526: LDA.w $0C5E,X\n #_08D529: CMP.b #$04\n #_08D52B: BNE .draw\n\n #_08D52D: STZ.w $0C4A,X\n\n #_08D530: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla26_SwordSwingSparkle", + "code": "Ancilla26_SwordSwingSparkle:\n #_08D65A: DEC.w $03B1,X\n #_08D65D: BPL .draw\n\n #_08D65F: LDA.b #$00\n #_08D661: STA.w $03B1,X\n\n #_08D664: INC.w $0C5E,X\n\n #_08D667: LDA.w $0C5E,X\n\n #_08D66A: CMP.b #$04\n #_08D66C: BNE .draw\n\n #_08D66E: STZ.w $0C4A,X\n\n #_08D671: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2A_SpinAttackSparkleA", + "code": "Ancilla2A_SpinAttackSparkleA:\n #_08D7B2: LDA.b $11\n #_08D7B4: BNE .just_draw\n\n #_08D7B6: DEC.w $03B1,X\n #_08D7B9: BPL .just_draw\n\n #_08D7BB: STZ.w $03B1,X\n\n #_08D7BE: LDA.w $0C68,X\n #_08D7C1: BNE .just_draw\n\n #_08D7C3: LDA.w $0C5E,X\n #_08D7C6: INC A\n #_08D7C7: STA.w $0C5E,X\n\n #_08D7CA: TAY\n\n #_08D7CB: LDA.w .timer,Y\n #_08D7CE: STA.w $0C68,X\n\n #_08D7D1: CPY.b #$05\n #_08D7D3: BNE .just_draw\n\n #_08D7D5: LDA.w $0C54,X\n #_08D7D8: BNE .add_beam\n\n #_08D7DA: BRL SpinAttackSparkleA_TransmuteToNextSpark\n\n.add_beam\n #_08D7DD: JSL AncillaAdd_SwordBeam\n\n #_08D7E1: RTS", + "file": "bank_08.asm" + }, + { + "name": "SpinAttackSparkleA_TransmuteToNextSpark", + "code": "SpinAttackSparkleA_TransmuteToNextSpark:\n #_08D86D: LDA.b #$2B ; ANCILLA 2B\n #_08D86F: STA.w $0C4A,X\n\n #_08D872: LDA.b $2F\n #_08D874: ASL A\n #_08D875: TAY\n\n #_08D876: LDA.w .rotation+0,Y\n #_08D879: STA.l $7F5800\n\n #_08D87D: LDA.w .rotation+1,Y\n #_08D880: STA.l $7F5801\n\n #_08D884: LDA.w .rotation+2,Y\n #_08D887: STA.l $7F5802\n\n #_08D88B: LDA.w .rotation+3,Y\n #_08D88E: STA.l $7F5803\n #_08D892: STA.l $7F5804\n\n; ---------------------------------------------------------\n\n #_08D896: LDA.b #$02\n #_08D898: STA.w $03B1,X\n\n #_08D89B: LDA.b #$4C\n #_08D89D: STA.w $0C5E,X\n\n #_08D8A0: LDA.b #$08\n #_08D8A2: STA.w $039F,X\n\n #_08D8A5: STZ.w $0C54,X\n #_08D8A8: STZ.w $0385,X\n\n #_08D8AB: LDA.b #$FF\n #_08D8AD: STA.w $03A4,X\n\n #_08D8B0: LDA.b #$14\n #_08D8B2: STA.l $7F5808\n\n; ---------------------------------------------------------\n\n #_08D8B6: LDY.b $2F\n\n #_08D8B8: REP #$20\n\n #_08D8BA: LDA.b $20\n #_08D8BC: CLC\n #_08D8BD: ADC.w #$000C\n #_08D8C0: STA.l $7F5810\n\n #_08D8C4: LDA.b $22\n #_08D8C6: CLC\n #_08D8C7: ADC.w #$0008\n #_08D8CA: STA.l $7F580E\n\n #_08D8CE: LDA.b $20\n #_08D8D0: CLC\n #_08D8D1: ADC.w .offset_y,Y\n #_08D8D4: STA.b $00\n\n #_08D8D6: LDA.b $22\n #_08D8D8: CLC\n #_08D8D9: ADC.w .offset_x,Y\n #_08D8DC: STA.b $02\n\n; ---------------------------------------------------------\n\n #_08D8DE: SEP #$20\n\n #_08D8E0: LDA.b $00\n #_08D8E2: STA.w $0BFA,X\n\n #_08D8E5: LDA.b $01\n #_08D8E7: STA.w $0C0E,X\n\n #_08D8EA: LDA.b $02\n #_08D8EC: STA.w $0C04,X\n\n #_08D8EF: LDA.b $03\n #_08D8F1: STA.w $0C18,X\n\n #_08D8F4: BRA Ancilla2B_SpinAttackSparkleB\n\n; =========================================================\n\npool Ancilla2B_SpinAttackSparkleB\n\n.char\n #_08D8F6: db $D7, $B7, $80, $83\n\n.extra_char\n #_08D8FA: db $B7, $80, $83\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2B_SpinAttackSparkleB", + "code": "Ancilla2B_SpinAttackSparkleB:\n #_08D8FD: LDA.w $0385,X\n #_08D900: BEQ .continue\n\n #_08D902: BRL SpinAttackSparkleB_Closer\n\n.continue\n #_08D905: PHX\n\n #_08D906: LDA.b #$02\n #_08D908: STA.b $73\n\n #_08D90A: LDA.b $11\n #_08D90C: BNE .no_ai\n\n #_08D90E: LDY.b #$00\n\n #_08D910: LDA.w $0C5E,X\n #_08D913: SEC\n #_08D914: SBC.b #$03\n #_08D916: STA.w $0C5E,X\n\n #_08D919: CMP.b #$0D\n #_08D91B: BCS .dont_run_closer\n\n #_08D91D: PLX\n\n #_08D91E: LDA.b #$01\n\n #_08D920: STA.w $03B1,X\n #_08D923: STA.w $0385,X\n\n #_08D926: STZ.w $0C5E,X\n\n #_08D929: BRL SpinAttackSparkleB_Closer\n\n; ---------------------------------------------------------\n\n.dont_run_closer\n #_08D92C: CMP.b #$42\n #_08D92E: BCS .not_four\n\n #_08D930: LDY.b #$03\n #_08D932: BRA .set_count\n\n.not_four\n #_08D934: CMP.b #$46\n #_08D936: BNE .not_two\n\n #_08D938: LDY.b #$01\n\n.not_two\n #_08D93A: CMP.b #$43\n #_08D93C: BNE .set_count\n\n #_08D93E: LDY.b #$02\n\n.set_count\n #_08D940: TYA\n #_08D941: STA.w $0C54,X\n\n #_08D944: DEC.w $03B1,X\n #_08D947: BPL .no_ai\n\n #_08D949: LDA.b #$04\n #_08D94B: STA.b $73\n\n #_08D94D: LDA.b #$02\n #_08D94F: STA.w $03B1,X\n\n; ---------------------------------------------------------\n\n.no_ai\n #_08D952: LDY.b #$00\n\n #_08D954: LDA.w $0C54,X\n #_08D957: TAX\n\n.next_spark\n #_08D958: STX.b $72\n\n #_08D95A: LDA.b $11\n #_08D95C: BNE .no_rotate\n\n #_08D95E: LDA.l $7F5800,X\n #_08D962: CLC\n #_08D963: ADC.b #$04\n #_08D965: AND.b #$3F\n #_08D967: STA.l $7F5800,X\n\n.no_rotate\n #_08D96B: PHX\n #_08D96C: PHY\n\n #_08D96D: LDA.l $7F5808\n #_08D971: STA.b $08\n\n #_08D973: LDA.l $7F5800,X\n #_08D977: JSR Ancilla_GetRadialProjection\n #_08D97A: JSL Sparkle_PrepOAMFromRadial\n\n #_08D97E: PLY\n\n #_08D97F: JSR Ancilla_SetOAM_XY\n\n #_08D982: LDX.b $72\n\n #_08D984: LDA.w .char,X\n #_08D987: STA.b ($90),Y\n\n #_08D989: INY\n\n #_08D98A: LDA.b $73\n #_08D98C: ORA.b $65\n #_08D98E: STA.b ($90),Y\n\n #_08D990: INY\n #_08D991: PHY\n\n #_08D992: TYA\n #_08D993: SEC\n #_08D994: SBC.b #$04\n #_08D996: LSR A\n #_08D997: LSR A\n #_08D998: TAY\n\n #_08D999: LDA.b #$00\n #_08D99B: STA.b ($92),Y\n\n #_08D99D: PLY\n #_08D99E: PLX\n #_08D99F: DEX\n #_08D9A0: BPL .next_spark\n\n; ---------------------------------------------------------\n\n #_08D9A2: PLX\n #_08D9A3: PHX\n\n #_08D9A4: LDA.b $11\n #_08D9A6: BNE .skip_extra_logic\n\n #_08D9A8: DEC.w $039F,X\n #_08D9AB: BPL .delay_extra\n\n #_08D9AD: LDA.b #$00\n #_08D9AF: STA.w $039F,X\n\n #_08D9B2: LDA.w $03A4,X\n #_08D9B5: INC A\n #_08D9B6: AND.b #$03\n #_08D9B8: STA.w $03A4,X\n\n #_08D9BB: CMP.b #$03\n #_08D9BD: BNE .skip_extra_logic\n\n #_08D9BF: LDA.l $7F5804\n #_08D9C3: CLC\n #_08D9C4: ADC.b #$09\n #_08D9C6: AND.b #$3F\n #_08D9C8: STA.l $7F5804\n\n; ---------------------------------------------------------\n\n.skip_extra_logic\n #_08D9CC: LDA.w $03A4,X\n #_08D9CF: STA.b $72\n\n #_08D9D1: CMP.b #$03\n #_08D9D3: BEQ .delay_extra\n\n #_08D9D5: PHY\n\n #_08D9D6: LDA.l $7F5808\n #_08D9DA: STA.b $08\n\n #_08D9DC: LDA.l $7F5804\n #_08D9E0: JSR Ancilla_GetRadialProjection\n #_08D9E3: JSL Sparkle_PrepOAMFromRadial\n\n #_08D9E7: PLY\n\n #_08D9E8: JSR Ancilla_SetOAM_XY\n\n #_08D9EB: LDX.b $72\n\n #_08D9ED: LDA.w .extra_char,X\n #_08D9F0: STA.b ($90),Y\n\n #_08D9F2: INY\n\n #_08D9F3: LDA.b #$04\n #_08D9F5: ORA.b $65\n #_08D9F7: STA.b ($90),Y\n\n #_08D9F9: INY\n #_08D9FA: TYA\n #_08D9FB: SEC\n #_08D9FC: SBC.b #$04\n\n #_08D9FE: LSR A\n #_08D9FF: LSR A\n #_08DA00: TAY\n\n #_08DA01: LDA.b #$00\n #_08DA03: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n.delay_extra\n #_08DA05: PLX\n #_08DA06: PHX\n\n #_08DA07: LDA.w $0C5E,X\n #_08DA0A: TAX\n\n #_08DA0B: CPX.b #$07\n #_08DA0D: BNE .exit\n\n #_08DA0F: LDY.b #$03\n\n #_08DA11: LDA.b #$01\n #_08DA13: STA.b ($92),Y\n\n.exit\n #_08DA15: PLX\n\n #_08DA16: RTS", + "file": "bank_08.asm" + }, + { + "name": "Sparkle_PrepOAMFromRadial", + "code": "Sparkle_PrepOAMFromRadial:\n #_08DA17: REP #$20\n\n #_08DA19: LDA.b $00\n\n #_08DA1B: LDY.b $02\n #_08DA1D: BEQ .positive_y\n\n #_08DA1F: EOR.w #$FFFF\n #_08DA22: INC A\n\n.positive_y\n #_08DA23: CLC\n #_08DA24: ADC.l $7F5810\n\n #_08DA28: CLC\n #_08DA29: ADC.w #$FFFC\n\n #_08DA2C: SEC\n #_08DA2D: SBC.b $E8\n #_08DA2F: STA.b $00\n\n #_08DA31: LDA.b $04\n\n #_08DA33: LDY.b $06\n #_08DA35: BEQ .positive_x\n\n #_08DA37: EOR.w #$FFFF\n #_08DA3A: INC A\n\n.positive_x\n #_08DA3B: CLC\n #_08DA3C: ADC.l $7F580E\n\n #_08DA40: CLC\n #_08DA41: ADC.w #$FFFC\n\n #_08DA44: SEC\n #_08DA45: SBC.b $E2\n #_08DA47: STA.b $02\n\n #_08DA49: SEP #$20\n\n #_08DA4B: RTL", + "file": "bank_08.asm" + }, + { + "name": "SpinAttackSparkleB_Closer", + "code": "SpinAttackSparkleB_Closer:\n #_08DA4C: DEC.w $03B1,X\n #_08DA4F: BPL .delay\n\n #_08DA51: LDA.b #$01\n #_08DA53: STA.w $03B1,X\n\n #_08DA56: LDA.w $0C5E,X\n #_08DA59: INC A\n #_08DA5A: STA.w $0C5E,X\n\n #_08DA5D: CMP.b #$03\n #_08DA5F: BNE .delay\n\n #_08DA61: STZ.w $0C4A,X\n\n; ---------------------------------------------------------\n\n.delay\n #_08DA64: JSR Ancilla_PrepOAMCoord\n\n #_08DA67: REP #$20\n\n #_08DA69: LDA.b $00\n #_08DA6B: STA.b $06\n\n #_08DA6D: LDA.b $02\n #_08DA6F: STA.b $08\n\n #_08DA71: SEP #$20\n\n #_08DA73: PHX\n\n #_08DA74: LDY.b #$00\n #_08DA76: STY.b $04\n\n #_08DA78: LDA.w $0C5E,X\n #_08DA7B: CLC\n #_08DA7C: ADC.b #$04\n\n #_08DA7E: ASL A\n #_08DA7F: ASL A\n #_08DA80: TAX\n\n #_08DA81: BRL AncillaDraw_SpinningSpark\n\n; =========================================================\n\npool Ancilla30_ByrnaWindupSpark\n\n.char\n #_08DA84: db $92, $FF, $FF, $FF\n #_08DA88: db $8C, $8C, $8C, $8C\n #_08DA8C: db $D6, $D6, $D6, $D6\n #_08DA90: db $93, $93, $93, $93\n\n.prop\n #_08DA94: db $22, $FF, $FF, $FF\n #_08DA98: db $22, $62, $A2, $E2\n #_08DA9C: db $24, $64, $A4, $E4\n #_08DAA0: db $22, $62, $A2, $E2\n\n.offset_y\n #_08DAA4: dw -4, 0, 0, 0\n #_08DAAC: dw -8, -8, 0, 0\n #_08DAB4: dw -8, -8, 0, 0\n #_08DABC: dw -8, -8, 0, 0\n\n.offset_x\n #_08DAC4: dw -4, 0, 0, 0\n #_08DACC: dw -8, 0, -8, 0\n #_08DAD4: dw -8, 0, -8, 0\n #_08DADC: dw -8, 0, -8, 0\n\n.offset_link_y\n #_08DAE4: dw 5, 0, -3, -6\n #_08DAEC: dw -8, -3, 12, 28\n #_08DAF4: dw 5, 0, 8, 16\n #_08DAFC: dw 5, 0, 8, 16\n\n.offset_link_x\n #_08DB04: dw 3, 1, 0, 0\n #_08DB0C: dw 13, 16, 12, 12\n #_08DB14: dw 24, 7, -4, -10\n #_08DB1C: dw -8, 9, 22, 26\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla30_ByrnaWindupSpark", + "code": "Ancilla30_ByrnaWindupSpark:\n #_08DB24: LDA.b $11\n #_08DB26: BNE .delay\n\n #_08DB28: DEC.w $03B1,X\n #_08DB2B: BPL .delay\n\n #_08DB2D: LDA.b #$01\n #_08DB2F: STA.w $03B1,X\n\n #_08DB32: LDA.w $0C5E,X\n #_08DB35: INC A\n #_08DB36: STA.w $0C5E,X\n\n #_08DB39: CMP.b #$11\n #_08DB3B: BNE .delay\n\n #_08DB3D: BRL ByrnaWindupSpark_TransmuteToNormal\n\n.delay\n #_08DB40: LDA.w $0C5E,X\n #_08DB43: BNE .active\n\n #_08DB45: BRL .exit\n\n; ---------------------------------------------------------\n\n.active\n #_08DB48: LDA.b $2F\n #_08DB4A: ASL A\n #_08DB4B: ASL A\n #_08DB4C: STA.b $00\n\n #_08DB4E: LDA.w $0300\n #_08DB51: CMP.b #$02\n #_08DB53: BNE .not_final_pose\n\n #_08DB55: TAY\n\n #_08DB56: LDA.w $039F,X\n #_08DB59: DEC A\n #_08DB5A: BPL .not_final_chars\n\n #_08DB5C: LDA.b #$00\n #_08DB5E: LDY.b #$03\n\n.not_final_chars\n #_08DB60: STA.w $039F,X\n\n #_08DB63: TYA\n\n.not_final_pose\n #_08DB64: ASL A\n #_08DB65: CLC\n #_08DB66: ADC.b $00\n #_08DB68: TAY\n\n; ---------------------------------------------------------\n\n #_08DB69: REP #$20\n\n #_08DB6B: LDA.w .offset_link_y,Y\n #_08DB6E: CLC\n #_08DB6F: ADC.b $20\n #_08DB71: STA.b $00\n\n #_08DB73: LDA.w .offset_link_x,Y\n #_08DB76: CLC\n #_08DB77: ADC.b $22\n #_08DB79: STA.b $02\n\n #_08DB7B: SEP #$20\n\n #_08DB7D: LDA.b $00\n #_08DB7F: STA.w $0BFA,X\n\n #_08DB82: LDA.b $01\n #_08DB84: STA.w $0C0E,X\n\n #_08DB87: LDA.b $02\n #_08DB89: STA.w $0C04,X\n\n #_08DB8C: LDA.b $03\n #_08DB8E: STA.w $0C18,X\n\n #_08DB91: JSR Ancilla_PrepOAMCoord\n\n #_08DB94: REP #$20\n\n #_08DB96: LDA.b $00\n #_08DB98: STA.b $06\n\n #_08DB9A: LDA.b $02\n #_08DB9C: STA.b $08\n\n #_08DB9E: SEP #$20\n\n #_08DBA0: PHX\n\n #_08DBA1: STZ.b $0A\n\n #_08DBA3: LDA.w $0C5E,X\n #_08DBA6: DEC A\n #_08DBA7: AND.b #$0F\n #_08DBA9: BEQ .start_oam\n\n #_08DBAB: CMP.b #$0F\n #_08DBAD: BEQ .use_last_group\n\n #_08DBAF: AND.b #$01\n #_08DBB1: INC A\n #_08DBB2: STA.b $0A\n\n #_08DBB4: BRA .start_oam\n\n.use_last_group\n #_08DBB6: LDA.b #$03\n #_08DBB8: STA.b $0A\n\n.start_oam\n #_08DBBA: LDA.b $0A\n #_08DBBC: ASL A\n #_08DBBD: ASL A\n #_08DBBE: TAX\n\n; ---------------------------------------------------------\n\n #_08DBBF: LDY.b #$00\n #_08DBC1: STY.b $04\n\n.next_object\n #_08DBC3: LDA.w .char,X\n #_08DBC6: CMP.b #$FF\n #_08DBC8: BEQ .skip\n\n #_08DBCA: REP #$20\n\n #_08DBCC: PHX\n\n #_08DBCD: TXA\n #_08DBCE: ASL A\n #_08DBCF: TAX\n\n #_08DBD0: LDA.b $06\n #_08DBD2: CLC\n #_08DBD3: ADC.w .offset_y,X\n #_08DBD6: STA.b $00\n\n #_08DBD8: LDA.b $08\n #_08DBDA: CLC\n #_08DBDB: ADC.w .offset_x,X\n #_08DBDE: STA.b $02\n\n #_08DBE0: PLX\n\n #_08DBE1: SEP #$20\n\n #_08DBE3: JSR Ancilla_SetOAM_XY\n\n #_08DBE6: LDA.w .char,X\n #_08DBE9: STA.b ($90),Y\n\n #_08DBEB: INY\n\n #_08DBEC: LDA.w .prop,X\n #_08DBEF: AND.b #$CF\n #_08DBF1: ORA.b $65\n #_08DBF3: STA.b ($90),Y\n\n #_08DBF5: INY\n #_08DBF6: PHY\n\n #_08DBF7: TYA\n #_08DBF8: SEC\n #_08DBF9: SBC.b #$04\n #_08DBFB: LSR A\n #_08DBFC: LSR A\n #_08DBFD: TAY\n\n #_08DBFE: LDA.b #$00\n #_08DC00: STA.b ($92),Y\n\n #_08DC02: PLY\n\n; ---------------------------------------------------------\n\n.skip\n #_08DC03: INX\n\n #_08DC04: INC.b $04\n\n #_08DC06: LDA.b $04\n #_08DC08: AND.b #$03\n #_08DC0A: BNE .next_object\n\n #_08DC0C: PLX\n\n; ---------------------------------------------------------\n\n.exit\n #_08DC0D: RTS", + "file": "bank_08.asm" + }, + { + "name": "ByrnaMagicCost", + "code": "ByrnaMagicCost:\n #_08DC1E: db $04, $02, $01\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "ByrnaWindupSpark_TransmuteToNormal", + "code": "ByrnaWindupSpark_TransmuteToNormal:\n #_08DC21: LDA.b #$31 ; ANCILLA 31\n #_08DC23: STA.w $0C4A,X\n\n #_08DC26: LDA.b $2F\n #_08DC28: ASL A\n #_08DC29: TAY\n\n #_08DC2A: LDA.w .rotation+0,Y\n #_08DC2D: STA.l $7F5800\n\n #_08DC31: LDA.w .rotation+1,Y\n #_08DC34: STA.l $7F5801\n\n #_08DC38: LDA.w .rotation+2,Y\n #_08DC3B: STA.l $7F5802\n\n #_08DC3F: LDA.w .rotation+3,Y\n #_08DC42: STA.l $7F5803\n\n #_08DC46: LDA.b #$17\n #_08DC48: STA.w $03B1,X\n\n #_08DC4B: STZ.w $0394,X\n #_08DC4E: STZ.w $0C5E,X\n\n #_08DC51: LDA.b #$08\n #_08DC53: STA.w $039F,X\n\n #_08DC56: STZ.w $0C54,X\n #_08DC59: STZ.w $0385,X\n\n #_08DC5C: LDA.b #$02\n #_08DC5E: STA.w $03A4,X\n\n #_08DC61: LDA.b #$15\n #_08DC63: STA.w $0C68,X\n\n #_08DC66: DEC A\n #_08DC67: STA.l $7F5808\n\n #_08DC6B: LDA.b #$30 ; SFX3.30\n #_08DC6D: JSR Ancilla_SFX3_Near\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla31_ByrnaSpark", + "code": "Ancilla31_ByrnaSpark:\n #_08DC70: PHX\n\n #_08DC71: LDA.b #$02\n #_08DC73: STA.b $73\n\n #_08DC75: LDA.b $11\n #_08DC77: BEQ .continue\n\n #_08DC79: BRL ByrnaSpark_Animate\n\n.continue\n #_08DC7C: LDA.w $0303\n #_08DC7F: CMP.b #$0D\n #_08DC81: BNE .terminate\n\n #_08DC83: LDA.b #$01\n #_08DC85: STA.w $037B\n\n #_08DC88: DEC.w $03B1,X\n\n #_08DC8B: LDA.w $03B1,X\n #_08DC8E: BNE .keep_sparkling\n\n #_08DC90: LDA.b #$01\n #_08DC92: STA.w $03B1,X\n\n #_08DC95: LDA.l $7EF37B\n #_08DC99: TAY\n\n #_08DC9A: LDA.w ByrnaMagicCost,Y\n #_08DC9D: STA.b $00\n\n #_08DC9F: LDA.l $7EF36E\n #_08DCA3: BEQ .terminate\n\n #_08DCA5: SEC\n #_08DCA6: SBC.b $00\n #_08DCA8: CMP.b #$80\n #_08DCAA: BCS .terminate\n\n #_08DCAC: STA.b $00\n\n #_08DCAE: DEC.w $0394,X\n #_08DCB1: BPL .delay_sap\n\n #_08DCB3: LDA.b #$17\n #_08DCB5: STA.w $0394,X\n\n #_08DCB8: LDA.b $00\n #_08DCBA: STA.l $7EF36E\n\n.delay_sap\n #_08DCBE: BIT.b $F4\n #_08DCC0: BVC .keep_sparkling\n\n; ---------------------------------------------------------\n\n.terminate\n #_08DCC2: PLX\n\n #_08DCC3: STZ.w $037B\n\n #_08DCC6: STZ.w $0C4A,X\n\n #_08DCC9: STZ.w $0373\n\n #_08DCCC: RTS", + "file": "bank_08.asm" + }, + { + "name": "ByrnaSpark_Animate", + "code": "ByrnaSpark_Animate:\n #_08DD02: REP #$20\n\n #_08DD04: LDA.b $24\n #_08DD06: AND.w #$00FF\n #_08DD09: CMP.w #$0080\n #_08DD0C: BCC .positive_z\n\n #_08DD0E: ORA.w #$FF00\n\n.positive_z\n #_08DD11: CMP.w #$FFFF\n #_08DD14: BNE .nonzero_z\n\n #_08DD16: LDA.w #$0000\n\n.nonzero_z\n #_08DD19: EOR.w #$FFFF\n #_08DD1C: INC A\n\n #_08DD1D: CLC\n #_08DD1E: ADC.b $20\n\n #_08DD20: CLC\n #_08DD21: ADC.w #$000C\n #_08DD24: STA.l $7F5810\n\n #_08DD28: LDA.b $22\n #_08DD2A: CLC\n #_08DD2B: ADC.w #$0008\n #_08DD2E: STA.l $7F580E\n\n; ---------------------------------------------------------\n\n #_08DD32: SEP #$20\n\n #_08DD34: LDA.w $0C68,X\n #_08DD37: BNE .skip_sfx\n\n #_08DD39: LDA.b #$15\n #_08DD3B: STA.w $0C68,X\n\n #_08DD3E: LDA.b #$30 ; SFX3.30\n #_08DD40: JSR Ancilla_SFX3_Near\n\n.skip_sfx\n #_08DD43: STX.b $74\n\n #_08DD45: LDY.b #$00\n\n #_08DD47: LDA.w $0C54,X\n #_08DD4A: TAX\n\n; ---------------------------------------------------------\n\n.next_object\n #_08DD4B: STX.b $72\n\n #_08DD4D: LDA.b $11\n #_08DD4F: BNE .dont_inc_sparkle\n\n #_08DD51: LDA.l $7F5800,X\n #_08DD55: CLC\n #_08DD56: ADC.b #$03\n #_08DD58: AND.b #$3F\n #_08DD5A: STA.l $7F5800,X\n\n.dont_inc_sparkle\n #_08DD5E: PHX\n #_08DD5F: PHY\n\n #_08DD60: LDA.l $7F5808\n #_08DD64: STA.b $08\n\n #_08DD66: LDA.l $7F5800,X\n #_08DD6A: JSR Ancilla_GetRadialProjection\n #_08DD6D: JSL Sparkle_PrepOAMFromRadial\n\n #_08DD71: PLY\n\n #_08DD72: JSR Ancilla_SetOAM_XY\n\n #_08DD75: LDX.b $72\n\n #_08DD77: LDA.w Ancilla2B_SpinAttackSparkleB_char,X\n #_08DD7A: STA.b ($90),Y\n\n #_08DD7C: INY\n\n #_08DD7D: LDA.b $73\n #_08DD7F: ORA.b $65\n #_08DD81: STA.b ($90),Y\n\n #_08DD83: INY\n #_08DD84: PHY\n\n #_08DD85: TYA\n #_08DD86: SEC\n #_08DD87: SBC.b #$04\n #_08DD89: LSR A\n #_08DD8A: LSR A\n #_08DD8B: TAY\n\n #_08DD8C: LDA.b #$00\n #_08DD8E: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n #_08DD90: REP #$20\n\n #_08DD92: LDA.b $00\n #_08DD94: CLC\n #_08DD95: ADC.b $E8\n #_08DD97: STA.b $04\n\n #_08DD99: LDA.b $02\n #_08DD9B: CLC\n #_08DD9C: ADC.b $E2\n #_08DD9E: STA.b $06\n\n #_08DDA0: SEP #$20\n\n #_08DDA2: LDX.b $74\n\n #_08DDA4: LDA.b $04\n #_08DDA6: STA.w $0BFA,X\n\n #_08DDA9: LDA.b $05\n #_08DDAB: STA.w $0C0E,X\n\n #_08DDAE: LDA.b $06\n #_08DDB0: STA.w $0C04,X\n\n #_08DDB3: LDA.b $07\n #_08DDB5: STA.w $0C18,X\n\n #_08DDB8: STZ.w $0C72,X\n\n #_08DDBB: JSR Ancilla_CheckSpriteCollision\n\n #_08DDBE: PLY\n\n #_08DDBF: PLX\n #_08DDC0: DEX\n #_08DDC1: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_08DDC3: PLX\n\n #_08DDC4: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla0C_SwordBeam_bounce", + "code": "Ancilla0C_SwordBeam_bounce:\n #_08DDC5: JSL Ancilla0C_SwordBeam\n\n #_08DDC9: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla0D_SpinAttackFullChargeSpark", + "code": "Ancilla0D_SpinAttackFullChargeSpark:\n #_08DDCA: LDA.b #$04\n #_08DDCC: JSR Ancilla_AllocateOAMFromRegion_A_or_D_or_F\n\n #_08DDCF: TYA\n #_08DDD0: STA.w $0C86,X\n\n #_08DDD3: JSL Ancilla0D_SpinAttackFullChargeSpark_long\n\n #_08DDD7: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla27_Duck", + "code": "Ancilla27_Duck:\n #_08DDE8: LDA.b $11\n #_08DDEA: BEQ .continue\n\n #_08DDEC: BRL .animate\n\n.continue\n #_08DDEF: LDA.w $0C68,X\n #_08DDF2: BEQ .seek_link\n\n #_08DDF4: REP #$20\n\n #_08DDF6: LDA.b $20\n #_08DDF8: SEC\n #_08DDF9: SBC.w #$0008\n #_08DDFC: STA.b $00\n\n #_08DDFE: LDA.w #$FFF0\n #_08DE01: CLC\n #_08DE02: ADC.b $E2\n #_08DE04: STA.b $02\n\n #_08DE06: SEP #$20\n\n #_08DE08: LDA.b $00\n #_08DE0A: STA.w $0BFA,X\n\n #_08DE0D: LDA.b $01\n #_08DE0F: STA.w $0C0E,X\n\n #_08DE12: LDA.b $02\n #_08DE14: STA.w $0C04,X\n\n #_08DE17: LDA.b $03\n #_08DE19: STA.w $0C18,X\n\n #_08DE1C: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_SomariaBlock", + "code": "AncillaAdd_SomariaBlock:\n #_08E078: PHB\n #_08E079: PHK\n #_08E07A: PLB\n\n #_08E07B: JSR AncillaAdd_AddAncilla_Bank08\n #_08E07E: BCC .spawn_the_block\n\n #_08E080: BRL .refund\n\n; ---------------------------------------------------------\n\n.spawn_the_block\n #_08E083: PHX\n\n #_08E084: STX.b $00\n\n #_08E086: LDX.b #$04\n\n.next_block_check\n #_08E088: CPX.b $00\n #_08E08A: BEQ .skip\n\n #_08E08C: LDA.w $0C4A,X\n #_08E08F: CMP.b #$2C ; ANCILLA 2C\n #_08E091: BNE .skip\n\n; ---------------------------------------------------------\n\n #_08E093: STX.b $02\n\n #_08E095: LDA.w $02EC\n #_08E098: DEC A\n #_08E099: CMP.b $02\n #_08E09B: BNE .not_closest_carryable\n\n #_08E09D: STZ.w $02EC\n\n.not_closest_carryable\n #_08E0A0: JSL AncillaAdd_ExplodingSomariaBlock\n\n #_08E0A4: PLX\n\n #_08E0A5: STZ.w $0C4A,X\n\n #_08E0A8: STZ.w $0646\n\n #_08E0AB: LDA.b $5E\n #_08E0AD: CMP.b #$12\n #_08E0AF: BNE .dont_reset_speed\n\n #_08E0B1: STZ.b $48\n #_08E0B3: STZ.b $5E\n\n.dont_reset_speed\n #_08E0B5: BRL .exit\n\n; ---------------------------------------------------------\n\n.skip\n #_08E0B8: DEX\n #_08E0B9: BPL .next_block_check\n\n; ---------------------------------------------------------\n\n #_08E0BB: PLX\n\n #_08E0BC: LDA.b #$2A ; SFX3.2A\n #_08E0BE: JSR Ancilla_SFX3_Near\n\n #_08E0C1: STZ.w $0C54,X\n\n #_08E0C4: STZ.w $0C22,X\n #_08E0C7: STZ.w $0C2C,X\n\n #_08E0CA: STZ.w $0C5E,X\n\n #_08E0CD: STZ.w $03B1,X\n #_08E0D0: STZ.w $039F,X\n #_08E0D3: STZ.w $03A4,X\n #_08E0D6: STZ.w $03C5,X\n\n #_08E0D9: LDA.b #$0C\n #_08E0DB: STA.w $0394,X\n\n #_08E0DE: LDA.b #$12\n #_08E0E0: STA.w $0C68,X\n\n #_08E0E3: STZ.w $0385,X\n #_08E0E6: STZ.w $029E,X\n\n #_08E0E9: STZ.w $0380,X\n #_08E0EC: STZ.w $03EA,X\n\n #_08E0EF: STZ.w $0BF0,X\n\n #_08E0F2: LDA.b #$09\n #_08E0F4: STA.w $03A9,X\n\n #_08E0F7: STZ.w $03D5,X\n\n; ---------------------------------------------------------\n\n #_08E0FA: LDA.b $2F\n #_08E0FC: LSR A\n #_08E0FD: STA.w $0C72,X\n\n #_08E100: JSL Ancilla_CheckInitialTileCollision_Class2\n #_08E104: BCC .space_to_spawn\n\n #_08E106: REP #$20\n\n #_08E108: LDA.b $20\n #_08E10A: CLC\n #_08E10B: ADC.w #$0010\n #_08E10E: STA.b $00\n\n #_08E110: LDA.b $22\n #_08E112: CLC\n #_08E113: ADC.w #$0008\n #_08E116: STA.b $02\n\n #_08E118: SEP #$20\n\n #_08E11A: LDA.b $00\n #_08E11C: STA.w $0BFA,X\n\n #_08E11F: LDA.b $01\n #_08E121: STA.w $0C0E,X\n\n #_08E124: LDA.b $02\n #_08E126: STA.w $0C04,X\n\n #_08E129: LDA.b $03\n #_08E12B: STA.w $0C18,X\n\n #_08E12E: BRA .exit\n\n; ---------------------------------------------------------\n\n.space_to_spawn\n #_08E130: LDY.b $2F\n\n #_08E132: LDA.b $20\n #_08E134: CLC\n #_08E135: ADC.w .offset_y+0,Y\n #_08E138: STA.w $0BFA,X\n\n #_08E13B: LDA.b $21\n #_08E13D: ADC.w .offset_y+1,Y\n #_08E140: STA.w $0C0E,X\n\n #_08E143: LDA.b $22\n #_08E145: CLC\n #_08E146: ADC.w .offset_x+0,Y\n #_08E149: STA.w $0C04,X\n\n #_08E14C: LDA.b $23\n #_08E14E: ADC.w .offset_x+1,Y\n #_08E151: STA.w $0C18,X\n\n #_08E154: JSR SomariaBlock_CheckForTransitTile\n\n #_08E157: BRA .exit\n\n; ---------------------------------------------------------\n\n.refund\n #_08E159: LDX.b #$04\n #_08E15B: JSL Refund_Magic\n\n.exit\n #_08E15F: PLB\n\n #_08E160: RTL", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_CheckForTransitTile", + "code": "SomariaBlock_CheckForTransitTile:\n #_08E191: LDA.w $03F4\n #_08E194: BEQ .exit\n\n #_08E196: LDY.b #$16\n\n.next\n #_08E198: LDA.w $0BFA,X\n #_08E19B: CLC\n #_08E19C: ADC.w .offset_y+0,Y\n #_08E19F: STA.b $00\n #_08E1A1: STA.b $72\n\n #_08E1A3: LDA.w $0C0E,X\n #_08E1A6: ADC.w .offset_y+1,Y\n #_08E1A9: STA.b $01\n #_08E1AB: STA.b $73\n\n #_08E1AD: LDA.w $0C04,X\n #_08E1B0: CLC\n #_08E1B1: ADC.w .offset_x+0,Y\n #_08E1B4: STA.b $02\n #_08E1B6: STA.b $74\n\n #_08E1B8: LDA.w $0C18,X\n #_08E1BB: ADC.w .offset_x+1,Y\n #_08E1BE: STA.b $03\n #_08E1C0: STA.b $75\n\n #_08E1C2: PHY\n\n #_08E1C3: LDA.w $0280,X\n #_08E1C6: PHA\n\n #_08E1C7: JSR Ancilla_CheckTileCollision_targeted\n\n #_08E1CA: PLA\n #_08E1CB: STA.w $0280,X\n\n #_08E1CE: PLY\n #_08E1CF: LDA.w $03E4,X\n\n #_08E1D2: CMP.b #$B6 ; TILETYPE B6\n #_08E1D4: BEQ .node\n\n #_08E1D6: CMP.b #$BC ; TILETYPE BC\n #_08E1D8: BEQ .node\n\n #_08E1DA: DEY\n #_08E1DB: DEY\n #_08E1DC: BPL .next\n\n #_08E1DE: BRA .exit\n\n; ---------------------------------------------------------\n\n.node\n #_08E1E0: LDA.b $72\n #_08E1E2: STA.w $0BFA,X\n\n #_08E1E5: LDA.b $73\n #_08E1E7: STA.w $0C0E,X\n\n #_08E1EA: LDA.b $74\n #_08E1EC: STA.w $0C04,X\n\n #_08E1EF: LDA.b $75\n #_08E1F1: STA.w $0C18,X\n\n #_08E1F4: JSL AncillaAdd_SomariaPlatformPoof\n\n.exit\n #_08E1F8: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckBasicSpriteCollision", + "code": "Ancilla_CheckBasicSpriteCollision:\n #_08E1F9: LDY.b #$0F\n\n.next_sprite\n #_08E1FB: TYA\n #_08E1FC: EOR.b $1A\n #_08E1FE: AND.b #$03\n\n #_08E200: ORA.w $0F00,Y\n #_08E203: ORA.w $0EF0,Y\n #_08E206: BNE .skip\n\n #_08E208: LDA.w $0DD0,Y\n #_08E20B: CMP.b #$09\n #_08E20D: BCC .skip\n\n #_08E20F: LDA.w $0CAA,Y\n #_08E212: AND.b #$02\n #_08E214: BNE .sprite_ignores_priority\n\n #_08E216: LDA.w $0280,X\n #_08E219: BNE .skip\n\n.sprite_ignores_priority\n #_08E21B: LDA.w $0C7C,X\n #_08E21E: CMP.w $0F20,Y\n #_08E221: BNE .skip\n\n #_08E223: LDA.w $0C4A,X\n #_08E226: CMP.b #$2C ; ANCILLA 2C\n #_08E228: BNE .not_somaria_block\n\n #_08E22A: LDA.w $0E20,Y\n #_08E22D: CMP.b #$1E ; SPRITE 1E\n #_08E22F: BEQ .skip\n\n #_08E231: CMP.b #$90 ; SPRITE 90\n #_08E233: BEQ .skip\n\n.not_somaria_block\n #_08E235: JSR Ancilla_CheckBasicSpriteCollision_Single\n\n.skip\n #_08E238: DEY\n #_08E239: BPL .next_sprite\n\n #_08E23B: CLC\n\n #_08E23C: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckBasicSpriteCollision_Single", + "code": "Ancilla_CheckBasicSpriteCollision_Single:\n #_08E23D: JSR Ancilla_SetupBasicHitBox\n\n #_08E240: PHY\n #_08E241: PHX\n\n #_08E242: TYX\n #_08E243: JSL Sprite_SetupHitbox_long\n\n #_08E247: PLX\n #_08E248: PLY\n\n #_08E249: JSL CheckIfHitBoxesOverlap_long\n #_08E24D: BCC .fail\n\n #_08E24F: LDA.w $0E20,Y\n #_08E252: CMP.b #$92 ; SPRITE 92\n #_08E254: BNE .not_king_helma\n\n #_08E256: LDA.w $0DB0,Y\n #_08E259: CMP.b #$03\n #_08E25B: BCC .success\n\n.not_king_helma\n #_08E25D: LDA.w $0E20,Y\n #_08E260: CMP.b #$80 ; SPRITE 80\n #_08E262: BNE .dont_reverse_fire_snake\n\n #_08E264: LDA.w $0F10,Y\n #_08E267: BNE .dont_reverse_fire_snake\n\n #_08E269: LDA.b #$18\n #_08E26B: STA.w $0F10,Y\n\n #_08E26E: LDA.w $0DE0,Y\n #_08E271: EOR.b #$01\n #_08E273: STA.w $0DE0,Y\n\n.dont_reverse_fire_snake\n #_08E276: LDA.w $0BA0,Y\n #_08E279: BNE .fail\n\n #_08E27B: LDA.w $0C04,X\n #_08E27E: SEC\n #_08E27F: SBC.b #$08\n #_08E281: STA.b $04\n\n #_08E283: LDA.w $0C18,X\n #_08E286: SBC.b #$00\n #_08E288: STA.b $05\n\n #_08E28A: LDA.w $0BFA,X\n #_08E28D: SEC\n #_08E28E: SBC.b #$08\n #_08E290: PHP\n\n #_08E291: SEC\n #_08E292: SBC.w $029E,X\n #_08E295: STA.b $06\n\n #_08E297: LDA.w $0C0E,X\n #_08E29A: SBC.b #$00\n\n #_08E29C: PLP\n #_08E29D: SBC.b #$00\n #_08E29F: STA.b $07\n\n #_08E2A1: LDA.b #$50\n\n #_08E2A3: PHY\n #_08E2A4: PHX\n\n #_08E2A5: TYX\n #_08E2A6: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n #_08E2AA: PLX\n #_08E2AB: PLY\n\n #_08E2AC: LDA.b $00\n #_08E2AE: EOR.b #$FF\n #_08E2B0: STA.w $0F30,Y\n\n #_08E2B3: LDA.b $01\n #_08E2B5: EOR.b #$FF\n #_08E2B7: STA.w $0F40,Y\n\n #_08E2BA: PHX\n\n #_08E2BB: LDA.w $0C4A,X\n\n #_08E2BE: TYX\n #_08E2BF: JSL Ancilla_CheckDamageToSprite\n\n #_08E2C3: PLX\n\n; ---------------------------------------------------------\n\n.success\n #_08E2C4: PLA\n #_08E2C5: PLA\n\n #_08E2C6: SEC\n\n #_08E2C7: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetupBasicHitBox", + "code": "Ancilla_SetupBasicHitBox:\n #_08E2CA: LDA.w $0C04,X\n #_08E2CD: SEC\n #_08E2CE: SBC.b #$08\n #_08E2D0: STA.b $00\n\n #_08E2D2: LDA.w $0C18,X\n #_08E2D5: SBC.b #$00\n #_08E2D7: STA.b $08\n\n #_08E2D9: LDA.w $0BFA,X\n #_08E2DC: SEC\n #_08E2DD: SBC.b #$08\n #_08E2DF: PHP\n\n #_08E2E0: SEC\n #_08E2E1: SBC.w $029E,X\n #_08E2E4: STA.b $01\n\n #_08E2E6: LDA.w $0C0E,X\n #_08E2E9: SBC.b #$00\n\n #_08E2EB: PLP\n #_08E2EC: SBC.b #$00\n #_08E2EE: STA.b $09\n\n #_08E2F0: LDA.b #$0F\n #_08E2F2: STA.b $02\n\n #_08E2F4: LDA.b #$0F\n #_08E2F6: STA.b $03\n\n; ---------------------------------------------------------\n\n#EXIT_08E2F8:\n #_08E2F8: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2C_SomariaBlock", + "code": "Ancilla2C_SomariaBlock:\n #_08E365: DEC.w $0394,X\n #_08E368: BPL EXIT_08E2F8\n\n #_08E36A: STZ.w $0394,X\n\n #_08E36D: LDA.w $03C5,X\n #_08E370: BNE .bouncing\n\n #_08E372: LDA.b $11\n #_08E374: BEQ .continue\n\n #_08E376: CMP.b #$08\n #_08E378: BEQ .continue\n\n #_08E37A: CMP.b #$10\n #_08E37C: BNE .skip_lift\n\n.continue\n #_08E37E: JSR Ancilla_HandleLiftLogic\n #_08E381: BRA .handle_lift_logic\n\n; ---------------------------------------------------------\n\n.skip_lift\n #_08E383: TXA\n #_08E384: INC A\n #_08E385: CMP.w $02EC\n #_08E388: BNE .handle_lift_logic\n\n #_08E38A: LDA.w $0380,X\n #_08E38D: BEQ .handle_lift_logic\n\n #_08E38F: CMP.b #$03\n #_08E391: BEQ .assert_holditude\n\n #_08E393: LDY.b #$03\n #_08E395: JSR Ancilla_LatchLinkCoordinates\n #_08E398: JSR Ancilla_LatchAltitudeAboveLink\n\n #_08E39B: LDA.b #$03\n #_08E39D: STA.w $0380,X\n\n.assert_holditude\n #_08E3A0: JSR Ancilla_LatchCarriedPosition\n\n; ---------------------------------------------------------\n\n.handle_lift_logic\n #_08E3A3: LDA.b $1B\n #_08E3A5: BEQ .no_trigger\n\n #_08E3A7: LDA.w $0380,X\n #_08E3AA: BNE .bouncing\n\n #_08E3AC: BIT.w $0308\n #_08E3AF: BMI .bouncing\n\n #_08E3B1: LDA.w $029E,X\n #_08E3B4: BEQ .run_trigger\n\n #_08E3B6: CMP.b #$FF\n #_08E3B8: BEQ .run_trigger\n\n; ---------------------------------------------------------\n\n.bouncing\n #_08E3BA: TXA\n #_08E3BB: INC A\n #_08E3BC: CMP.w $02EC\n #_08E3BF: BNE .no_trigger\n\n #_08E3C1: STZ.w $0646\n\n.no_trigger\n #_08E3C4: BRL .tile_collision_logic\n\n; ---------------------------------------------------------\n\n.run_trigger\n #_08E3C7: LDA.w $03F4\n #_08E3CA: BEQ .no_transit_tiles\n\n #_08E3CC: LDA.b $1A\n #_08E3CE: AND.b #$03\n #_08E3D0: ASL A\n #_08E3D1: TAY\n\n.next_node_check\n #_08E3D2: LDA.w $0BFA,X\n #_08E3D5: CLC\n #_08E3D6: ADC.w .node_offset_y+0,Y\n #_08E3D9: STA.b $00\n #_08E3DB: STA.b $72\n\n #_08E3DD: LDA.w $0C0E,X\n #_08E3E0: ADC.w .node_offset_y+1,Y\n #_08E3E3: STA.b $01\n #_08E3E5: STA.b $73\n\n #_08E3E7: LDA.w $0C04,X\n #_08E3EA: CLC\n #_08E3EB: ADC.w .node_offset_x+0,Y\n #_08E3EE: STA.b $02\n #_08E3F0: STA.b $74\n\n #_08E3F2: LDA.w $0C18,X\n #_08E3F5: ADC.w .node_offset_x+1,Y\n #_08E3F8: STA.b $03\n #_08E3FA: STA.b $75\n\n #_08E3FC: PHY\n\n #_08E3FD: LDA.w $0280,X\n #_08E400: PHA\n\n #_08E401: JSR Ancilla_CheckTileCollision_targeted\n\n #_08E404: PLA\n #_08E405: STA.w $0280,X\n\n #_08E408: PLY\n\n #_08E409: LDA.w $03E4,X\n #_08E40C: CMP.b #$B6 ; TILETYPE B6\n #_08E40E: BEQ .valid_node\n\n #_08E410: CMP.b #$BC ; TILETYPE BC\n #_08E412: BEQ .valid_node\n\n #_08E414: TYA\n #_08E415: CLC\n #_08E416: ADC.b #$08\n #_08E418: TAY\n\n #_08E419: CPY.b #$18\n #_08E41B: BCS .tile_collision_logic\n\n #_08E41D: BRA .next_node_check\n\n; ---------------------------------------------------------\n\n.valid_node\n #_08E41F: LDA.b $72\n #_08E421: STA.w $0BFA,X\n\n #_08E424: LDA.b $73\n #_08E426: STA.w $0C0E,X\n\n #_08E429: LDA.b $74\n #_08E42B: STA.w $0C04,X\n\n #_08E42E: LDA.b $75\n #_08E430: STA.w $0C18,X\n\n #_08E433: JSL AncillaAdd_SomariaPlatformPoof\n\n #_08E437: TXA\n #_08E438: INC A\n #_08E439: CMP.w $02EC\n #_08E43C: BNE .exit\n\n #_08E43E: STZ.w $02EC\n\n.exit\n #_08E441: RTS", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_HandleConveyor", + "code": "SomariaBlock_HandleConveyor:\n #_08E5B5: JSR Ancilla_ApplyConveyor\n\n #_08E5B8: BRA SomariaBlock_HandleDamage\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_HandlePitLogic", + "code": "SomariaBlock_HandlePitLogic:\n #_08E5BA: LDA.w $0308\n #_08E5BD: BMI SomariaBlock_HandleDamage\n\n #_08E5BF: TXA\n #_08E5C0: INC A\n #_08E5C1: CMP.w $02EC\n #_08E5C4: BNE .dont_reset\n\n #_08E5C6: STZ.w $02EC\n\n.dont_reset\n #_08E5C9: LDA.w $0C68,X\n #_08E5CC: BNE SomariaBlock_HandleDamage\n\n #_08E5CE: LDA.b $5E\n #_08E5D0: CMP.b #$12\n #_08E5D2: BNE Ancilla_DeleteSelf\n\n #_08E5D4: STZ.b $5E\n #_08E5D6: STZ.b $48\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_DeleteSelf", + "code": "Ancilla_DeleteSelf:\n #_08E5D8: STZ.w $0C4A,X\n\n #_08E5DB: RTS", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_HandleDamage", + "code": "SomariaBlock_HandleDamage:\n #_08E5DC: LDA.b $75\n #_08E5DE: ORA.w $0280,X\n #_08E5E1: STA.b $75\n\n #_08E5E3: LDA.w $0308\n #_08E5E6: BMI .dont_fizzle\n\n #_08E5E8: DEC.w $03A9,X\n\n #_08E5EB: LDA.w $03A9,X\n #_08E5EE: BNE .dont_fizzle\n\n #_08E5F0: INC.w $03A9,X\n\n #_08E5F3: STZ.w $0280,X\n\n #_08E5F6: JSR Ancilla_CheckBasicSpriteCollision\n #_08E5F9: BCC .dont_fizzle\n\n #_08E5FB: LDA.b #$07\n #_08E5FD: STA.w $03A9,X\n\n #_08E600: LDA.w $0C54,X\n #_08E603: INC A\n #_08E604: STA.w $0C54,X\n\n #_08E607: CMP.b #$05\n #_08E609: BNE .dont_fizzle\n\n #_08E60B: BRL SomariaBlock_FizzleAway\n\n.dont_fizzle\n #_08E60E: LDA.b $74\n #_08E610: STA.w $0C72,X\n\n #_08E613: LDA.b $75\n #_08E615: STA.w $0280,X\n\n #_08E618: JSR Ancilla_SetYFrom_DP72\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_SomariaBlock", + "code": "AncillaDraw_SomariaBlock:\n #_08E61B: TXY\n #_08E61C: INY\n #_08E61D: CPY.w $02EC\n #_08E620: BNE .not_special_oam_slots\n\n #_08E622: LDA.w $0308\n #_08E625: BPL .not_special_oam_slots\n\n #_08E627: LDA.w $0380,X\n #_08E62A: CMP.b #$03\n #_08E62C: BEQ .not_special_oam_slots\n\n #_08E62E: LDA.b $2F\n #_08E630: BNE .not_special_oam_slots\n\n #_08E632: LDA.w $0C90,X\n #_08E635: JSR Ancilla_AllocateOAMFromRegion_B_or_E\n\n #_08E638: BRA .prep_coord\n\n.not_special_oam_slots\n #_08E63A: LDA.w $0FB3\n #_08E63D: BEQ .prep_coord\n\n #_08E63F: LDA.w $0C7C,X\n #_08E642: BEQ .prep_coord\n\n #_08E644: LDA.w $0385,X\n #_08E647: BNE .airborne_slots\n\n #_08E649: TXY\n #_08E64A: INY\n #_08E64B: CPY.w $02EC\n #_08E64E: BNE .prep_coord\n\n #_08E650: LDA.w $0308\n #_08E653: BPL .prep_coord\n\n; ---------------------------------------------------------\n\n.airborne_slots\n #_08E655: REP #$20\n\n #_08E657: LDA.w #$00D0\n #_08E65A: CLC\n #_08E65B: ADC.w #$0800\n #_08E65E: STA.b $90\n\n #_08E660: LDA.w #$0034\n #_08E663: CLC\n #_08E664: ADC.w #$0A20\n #_08E667: STA.b $92\n\n #_08E669: SEP #$20\n\n; ---------------------------------------------------------\n\n.prep_coord\n #_08E66B: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08E66E: REP #$20\n\n #_08E670: LDA.w $029E,X\n #_08E673: AND.w #$00FF\n #_08E676: CMP.w #$0080\n #_08E679: BCC .positive_z\n\n #_08E67B: ORA.w #$FF00\n\n.positive_z\n #_08E67E: STA.b $04\n #_08E680: BEQ .not_max_priority\n\n #_08E682: CMP.w #$FFFF\n #_08E685: BEQ .not_max_priority\n\n #_08E687: LDA.w $0380,X\n #_08E68A: AND.w #$00FF\n #_08E68D: CMP.w #$0003\n #_08E690: BEQ .not_max_priority\n\n #_08E692: LDA.w $0280,X\n #_08E695: AND.w #$00FF\n #_08E698: BEQ .not_max_priority\n\n #_08E69A: LDA.w #$3000\n #_08E69D: STA.b $64\n\n.not_max_priority\n #_08E69F: LDA.w #$0000\n #_08E6A2: CLC\n #_08E6A3: ADC.b $04\n\n #_08E6A5: EOR.w #$FFFF\n #_08E6A8: INC A\n\n #_08E6A9: CLC\n #_08E6AA: ADC.b $00\n #_08E6AC: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08E6AE: LDA.b $02\n #_08E6B0: STA.b $06\n\n #_08E6B2: SEP #$20\n\n #_08E6B4: STZ.b $08\n\n #_08E6B6: PHX\n\n #_08E6B7: LDA.b #$02\n #_08E6B9: STA.b $72\n\n #_08E6BB: LDA.w $03A4,X\n #_08E6BE: ASL A\n #_08E6BF: ASL A\n #_08E6C0: TAX\n\n; ---------------------------------------------------------\n\n #_08E6C1: LDY.b #$00\n\n.next_object\n #_08E6C3: REP #$20\n\n #_08E6C5: STZ.b $74\n\n #_08E6C7: PHX\n\n #_08E6C8: TXA\n #_08E6C9: ASL A\n #_08E6CA: TAX\n\n #_08E6CB: LDA.b $04\n #_08E6CD: CLC\n #_08E6CE: ADC.w .offset_y,X\n #_08E6D1: STA.b $00\n\n #_08E6D3: LDA.b $06\n #_08E6D5: CLC\n #_08E6D6: ADC.w .offset_x,X\n #_08E6D9: STA.b $02\n\n #_08E6DB: PLX\n\n #_08E6DC: SEP #$20\n\n #_08E6DE: JSR Ancilla_SetOAM_XY_safe\n\n #_08E6E1: LDA.b #$E9\n #_08E6E3: STA.b ($90),Y\n\n #_08E6E5: INY\n\n #_08E6E6: LDA.w .prop,X\n #_08E6E9: AND.b #$CF\n #_08E6EB: ORA.b $72\n #_08E6ED: ORA.b $65\n #_08E6EF: STA.b ($90),Y\n\n #_08E6F1: INY\n #_08E6F2: PHY\n\n #_08E6F3: TYA\n #_08E6F4: SEC\n #_08E6F5: SBC.b #$04\n #_08E6F7: LSR A\n #_08E6F8: LSR A\n #_08E6F9: TAY\n\n #_08E6FA: LDA.b #$00\n #_08E6FC: ORA.b $75\n #_08E6FE: STA.b ($92),Y\n\n #_08E700: PLY\n\n #_08E701: INX\n\n #_08E702: INC.b $08\n\n #_08E704: LDA.b $08\n #_08E706: AND.b #$03\n #_08E708: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_08E70A: PLX\n\n #_08E70B: LDA.w $0380,X\n #_08E70E: CMP.b #$03\n #_08E710: BEQ .exit\n\n #_08E712: LDY.b #$01\n\n.next_object_check\n #_08E714: LDA.b ($90),Y\n #_08E716: CMP.b #$F0\n #_08E718: BNE .not_off_screen\n\n #_08E71A: INY\n #_08E71B: INY\n #_08E71C: INY\n #_08E71D: INY\n #_08E71E: CPY.b #$11\n #_08E720: BNE .next_object_check\n\n #_08E722: BRA .terminate\n\n.not_off_screen\n #_08E724: LDY.b #$00\n\n.next_oam_check\n #_08E726: LDA.b ($92),Y\n #_08E728: AND.b #$01\n #_08E72A: BEQ .exit\n\n #_08E72C: INY\n #_08E72D: CPY.b #$04\n #_08E72F: BNE .next_oam_check\n\n.terminate\n #_08E731: STZ.w $0646\n\n #_08E734: STZ.w $0C4A,X\n\n #_08E737: TXA\n #_08E738: INC A\n #_08E739: CMP.w $02EC\n #_08E73C: BNE .exit\n\n #_08E73E: STZ.w $02EC\n\n #_08E741: LDA.w $0308\n #_08E744: AND.b #$80\n #_08E746: BEQ .exit\n\n #_08E748: STZ.w $0308\n\n.exit\n #_08E74B: RTS", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_CheckForSwitch", + "code": "SomariaBlock_CheckForSwitch:\n #_08E75C: STZ.w $0646\n\n #_08E75F: STZ.w $03DB,X\n\n #_08E762: LDY.b #$06\n\n.next_check\n #_08E764: LDA.w $0BFA,X\n #_08E767: CLC\n #_08E768: ADC.w .offset_y+0,Y\n #_08E76B: STA.b $00\n #_08E76D: STA.b $72\n\n #_08E76F: LDA.w $0C0E,X\n #_08E772: ADC.w .offset_y+1,Y\n #_08E775: STA.b $01\n #_08E777: STA.b $73\n\n #_08E779: LDA.w $0C04,X\n #_08E77C: CLC\n #_08E77D: ADC.w .offset_x+0,Y\n #_08E780: STA.b $02\n #_08E782: STA.b $74\n\n #_08E784: LDA.w $0C18,X\n #_08E787: ADC.w .offset_x+1,Y\n #_08E78A: STA.b $03\n #_08E78C: STA.b $75\n\n #_08E78E: PHY\n\n #_08E78F: LDA.w $0280,X\n #_08E792: PHA\n\n #_08E793: JSR Ancilla_CheckTileCollision_targeted\n\n #_08E796: PLA\n #_08E797: STA.w $0280,X\n\n #_08E79A: PLY\n\n #_08E79B: LDA.w $03E4,X\n #_08E79E: CMP.b #$23 ; TILETYPE 23\n #_08E7A0: BEQ .valid_switch\n\n #_08E7A2: CMP.b #$24 ; TILETYPE 24\n #_08E7A4: BEQ .valid_switch\n\n #_08E7A6: CMP.b #$25 ; TILETYPE 25\n #_08E7A8: BEQ .valid_switch\n\n #_08E7AA: CMP.b #$3B ; TILETYPE 3B\n #_08E7AC: BNE .not_star_tile\n\n.valid_switch\n #_08E7AE: INC.w $03DB,X\n\n.not_star_tile\n #_08E7B1: DEY\n #_08E7B2: DEY\n #_08E7B3: BPL .next_check\n\n; ---------------------------------------------------------\n\n #_08E7B5: LDA.w $03DB,X\n #_08E7B8: CMP.b #$04\n #_08E7BA: BNE .fail\n\n.succeed\n #_08E7BC: CLC\n\n #_08E7BD: RTS", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_HandlePlayerInteraction", + "code": "SomariaBlock_HandlePlayerInteraction:\n #_08E7E6: PHB\n #_08E7E7: PHK\n #_08E7E8: PLB\n\n #_08E7E9: STX.w $0FA0\n\n #_08E7EC: LDA.w $0394,X\n #_08E7EF: BNE .no_do_somaria\n\n #_08E7F1: LDA.w $03C5,X\n #_08E7F4: BEQ .not_dash_airborne\n\n #_08E7F6: BRL .punt_continue\n\n; ---------------------------------------------------------\n\n.not_dash_airborne\n #_08E7F9: LDA.b $4D\n #_08E7FB: BNE .no_do_somaria\n\n #_08E7FD: LDA.w $0308\n #_08E800: AND.b #$01\n #_08E802: BNE .no_do_somaria\n\n #_08E804: LDA.w $029E,X\n #_08E807: BEQ .grounded\n\n #_08E809: CMP.b #$FF\n #_08E80B: BNE .no_do_somaria\n\n.grounded\n #_08E80D: LDA.w $0380,X\n #_08E810: BNE .no_do_somaria\n\n #_08E812: LDA.w $0385,X\n #_08E815: BNE .no_do_somaria\n\n #_08E817: LDA.b $F0\n #_08E819: AND.b #$0F\n #_08E81B: BNE .pressing_dpad\n\n #_08E81D: STA.w $039F,X\n\n #_08E820: STA.b $48\n\n #_08E822: LDA.b #$FF\n #_08E824: STA.w $038A,X\n\n #_08E827: LDA.w $0372\n #_08E82A: BNE .check_link_collision\n\n #_08E82C: STZ.b $5E\n\n.no_do_somaria\n #_08E82E: BRL .exit_a\n\n; ---------------------------------------------------------\n\n.pressing_dpad\n #_08E831: CMP.w $039F,X\n #_08E834: BNE .input_mismatch\n\n #_08E836: LDA.b $5E\n #_08E838: CMP.b #$12\n #_08E83A: BNE .check_link_collision\n\n #_08E83C: LDA.b #$81\n #_08E83E: TSB.b $48\n #_08E840: BRA .check_link_collision\n\n.input_mismatch\n #_08E842: STA.w $039F,X\n\n #_08E845: STZ.b $5E\n\n; ---------------------------------------------------------\n\n.check_link_collision\n #_08E847: LDY.b #$04\n #_08E849: JSR Ancilla_CheckLinkCollision\n #_08E84C: BCC .no_do_somaria\n\n #_08E84E: LDA.w $0C7C,X\n #_08E851: CMP.b $EE\n #_08E853: BNE .no_do_somaria\n\n #_08E855: LDA.w $0372\n #_08E858: BEQ .no_punt\n\n #_08E85A: LDA.w $02F1\n #_08E85D: CMP.b #$40\n #_08E85F: BEQ .no_punt\n\n #_08E861: TXA\n #_08E862: INC A\n #_08E863: CMP.w $02EC\n #_08E866: BNE .disable_nearitude\n\n #_08E868: STZ.w $02EC\n\n; ---------------------------------------------------------\n\n.disable_nearitude\n #_08E86B: JSL Link_CancelDash_long\n\n #_08E86F: LDA.b #$32 ; SFX3.32\n #_08E871: JSR Ancilla_SFX3_Pan\n\n #_08E874: BRL .init_dash_bouncing\n\n; ---------------------------------------------------------\n\n.no_punt\n #_08E877: STZ.w $0C2C,X\n #_08E87A: STZ.w $0C22,X\n\n #_08E87D: LDA.b $F0\n #_08E87F: AND.b #$0F\n #_08E881: STA.w $039F,X\n\n #_08E884: AND.b #$03\n #_08E886: BEQ .pushing_left_or_right\n\n #_08E888: LDY.w .push_speed_positive\n\n #_08E88B: AND.b #$01\n #_08E88D: BNE .pushing_right\n\n #_08E88F: LDY.w .push_speed_negative\n\n.pushing_right\n #_08E892: TYA\n #_08E893: STA.w $0C2C,X\n\n #_08E896: LDY.b #$02\n #_08E898: CMP.w .push_speed_positive\n #_08E89B: BNE .set_direction\n\n #_08E89D: INY\n #_08E89E: BRA .set_direction\n\n.pushing_left_or_right\n #_08E8A0: LDY.w .push_speed_positive\n\n #_08E8A3: LDA.b $F0\n #_08E8A5: AND.b #$08\n #_08E8A7: BEQ .upward_push\n\n #_08E8A9: LDY.w .push_speed_negative\n\n.upward_push\n #_08E8AC: TYA\n #_08E8AD: STA.w $0C22,X\n\n #_08E8B0: LDY.b #$00\n #_08E8B2: CMP.w .push_speed_positive\n #_08E8B5: BNE .set_direction\n\n #_08E8B7: INY\n\n; ---------------------------------------------------------\n\n.set_direction\n #_08E8B8: TYA\n #_08E8B9: STA.w $0C72,X\n\n #_08E8BC: LDA.b $27\n #_08E8BE: BEQ .no_recoil\n\n #_08E8C0: LDA.b $28\n #_08E8C2: BNE .yes_recoil\n\n.no_recoil\n #_08E8C4: JSR Ancilla_CheckTileCollision_Class2\n #_08E8C7: BCS .no_tile_collision_here\n\n #_08E8C9: JSR Ancilla_Move_Y\n #_08E8CC: JSR Ancilla_Move_X\n\n #_08E8CF: LDA.w $0308\n #_08E8D2: AND.b #$80\n #_08E8D4: BNE .no_tile_collision_here\n\n #_08E8D6: INC.w $038A,X\n\n #_08E8D9: LDA.w $038A,X\n #_08E8DC: AND.b #$07\n #_08E8DE: BNE .no_tile_collision_here\n\n #_08E8E0: LDA.b #$22 ; SFX2.22\n #_08E8E2: JSR Ancilla_SFX2_Pan\n\n.no_tile_collision_here\n #_08E8E5: LDA.b #$81\n #_08E8E7: STA.b $48\n\n #_08E8E9: LDA.b #$12\n #_08E8EB: STA.b $5E\n\n.yes_recoil\n #_08E8ED: JSL Sprite_CancelHookshot\n\n.exit_a\n #_08E8F1: PLB\n\n #_08E8F2: RTL", + "file": "bank_08.asm" + }, + { + "name": "SomariaBlock_FizzleAway", + "code": "SomariaBlock_FizzleAway:\n #_08E9B2: LDA.b $5E\n #_08E9B4: CMP.b #$12\n #_08E9B6: BNE .dont_reset_speed\n\n #_08E9B8: STZ.b $48\n #_08E9BA: STZ.b $5E\n\n.dont_reset_speed\n #_08E9BC: STZ.w $0646\n\n #_08E9BF: LDA.b #$2D ; ANCILLA 2D\n #_08E9C1: STA.w $0C4A,X\n\n #_08E9C4: STZ.w $03B1,X\n\n #_08E9C7: STZ.w $0C54,X\n #_08E9CA: STZ.w $0C5E,X\n\n #_08E9CD: STZ.w $039F,X\n #_08E9D0: STZ.w $03A4,X\n\n #_08E9D3: STZ.w $03EA,X\n\n #_08E9D6: TXA\n #_08E9D7: INC A\n #_08E9D8: CMP.w $02EC\n #_08E9DB: BNE Ancilla2D_SomariaBlockFizz\n\n #_08E9DD: STZ.w $02EC\n\n #_08E9E0: LDA.w $0308\n #_08E9E3: AND.b #$80\n #_08E9E5: STA.w $0308\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2D_SomariaBlockFizz", + "code": "Ancilla2D_SomariaBlockFizz:\n #_08E9E8: DEC.w $03B1,X\n #_08E9EB: BPL .continue\n\n #_08E9ED: LDA.b #$03\n #_08E9EF: STA.w $03B1,X\n\n #_08E9F2: LDA.w $0C5E,X\n #_08E9F5: INC A\n #_08E9F6: STA.w $0C5E,X\n\n #_08E9F9: CMP.b #$03\n #_08E9FB: BNE .continue\n\n #_08E9FD: STZ.w $0C4A,X\n\n #_08EA00: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla39_SomariaPlatformPoof", + "code": "Ancilla39_SomariaPlatformPoof:\n #_08EA83: DEC.w $03B1,X\n #_08EA86: BMI .continue\n\n #_08EA88: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2E_SomariaBlockFission", + "code": "Ancilla2E_SomariaBlockFission:\n #_08EB3E: DEC.w $03B1,X\n #_08EB41: BPL .delay_explosion\n\n #_08EB43: LDA.b #$03\n #_08EB45: STA.w $03B1,X\n\n #_08EB48: LDA.w $0C5E,X\n #_08EB4B: INC A\n #_08EB4C: STA.w $0C5E,X\n\n #_08EB4F: CMP.b #$02\n #_08EB51: BNE .delay_explosion\n\n #_08EB53: STZ.w $0C4A,X\n\n #_08EB56: PHX\n\n #_08EB57: JSR SomariaBlock_SpawnBullets\n\n #_08EB5A: PLX\n\n #_08EB5B: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla2F_LampFlame", + "code": "Ancilla2F_LampFlame:\n #_08EC13: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08EC16: LDA.b $00\n #_08EC18: STA.b $06\n\n #_08EC1A: LDA.b $01\n #_08EC1C: STA.b $07\n\n #_08EC1E: LDY.b #$00\n\n #_08EC20: LDA.w $0C68,X\n #_08EC23: BNE .continue\n\n #_08EC25: STZ.w $0C4A,X\n\n #_08EC28: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla41_WaterfallSplash", + "code": "Ancilla41_WaterfallSplash:\n #_08ECAF: LDY.b #$00\n\n #_08ECB1: LDA.b $1B\n #_08ECB3: BNE .indoors\n\n #_08ECB5: LDY.b #$01\n\n.indoors\n #_08ECB7: JSR Ancilla_CheckForEntranceTrigger\n #_08ECBA: BCS .splish_splash\n\n #_08ECBC: STZ.w $0C4A,X\n\n #_08ECBF: RTS", + "file": "bank_08.asm" + }, + { + "name": "Gravestone_Move", + "code": "Gravestone_Move:\n #_08ED89: PHB\n #_08ED8A: PHK\n #_08ED8B: PLB\n\n #_08ED8C: LDA.b $11\n #_08ED8E: BNE .exit\n\n #_08ED90: LDA.b #$F8\n #_08ED92: STA.w $0C22,X\n\n #_08ED95: JSR Ancilla_Move_Y\n #_08ED98: JSR Gravestone_ActAsBarrier\n\n #_08ED9B: LDA.w $038A,X\n #_08ED9E: STA.b $00\n\n #_08EDA0: LDA.w $038F,X\n #_08EDA3: STA.b $01\n\n #_08EDA5: LDA.w $0BFA,X\n #_08EDA8: STA.b $02\n\n #_08EDAA: LDA.w $0C0E,X\n #_08EDAD: STA.b $03\n\n; ---------------------------------------------------------\n\n #_08EDAF: REP #$20\n\n #_08EDB1: LDA.b $02\n #_08EDB3: CMP.b $00\n\n #_08EDB5: SEP #$20\n #_08EDB7: BCS .exit\n\n #_08EDB9: STZ.w $0C4A,X\n\n #_08EDBC: STZ.w $03E9\n\n #_08EDBF: LDA.b $48\n #_08EDC1: AND.b #$FB\n #_08EDC3: STA.b $48\n\n #_08EDC5: LDA.w $03BA,X\n #_08EDC8: STA.b $72\n\n #_08EDCA: LDA.w $03B6,X\n #_08EDCD: STA.b $73\n\n #_08EDCF: REP #$20\n\n #_08EDD1: LDA.b $72\n #_08EDD3: STA.w $0698\n\n; ---------------------------------------------------------\n\n #_08EDD6: LDY.b #$48\n\n #_08EDD8: CMP.w #$0532\n #_08EDDB: BEQ .no_update_change\n\n #_08EDDD: LDY.b #$60\n #_08EDDF: CMP.w #$0488\n #_08EDE2: BEQ .no_update_change\n\n #_08EDE4: LDY.b #$40\n\n.no_update_change\n #_08EDE6: TYA\n #_08EDE7: AND.w #$00FF\n #_08EDEA: STA.w $0692\n\n #_08EDED: SEP #$20\n\n #_08EDEF: PHX\n #_08EDF0: JSL Overworld_DoMapUpdate32x32_long\n #_08EDF4: PLX\n\n #_08EDF5: BRA .exit\n\n; ---------------------------------------------------------\n\n.exit\n #_08EDF7: PLB\n\n #_08EDF8: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla24_Gravestone", + "code": "Ancilla24_Gravestone:\n #_08EE01: PHX\n\n #_08EE02: JSR Ancilla_PrepOAMCoord_adjusted\n\n #_08EE05: REP #$20\n\n #_08EE07: LDA.b $02\n #_08EE09: STA.b $06\n\n #_08EE0B: SEP #$20\n\n #_08EE0D: LDA.b #$10\n #_08EE0F: JSL SpriteDraw_AllocateOAMFromRegionB\n\n; ---------------------------------------------------------\n\n #_08EE13: LDY.b #$00\n #_08EE15: TYX\n\n.next_object\n #_08EE16: JSR Ancilla_SetOAM_XY\n\n #_08EE19: LDA.w .char,X\n #_08EE1C: STA.b ($90),Y\n\n #_08EE1E: INY\n\n #_08EE1F: LDA.w .prop,X\n #_08EE22: ORA.b #$3D\n #_08EE24: STA.b ($90),Y\n\n #_08EE26: INY\n #_08EE27: PHY\n\n #_08EE28: TYA\n #_08EE29: SEC\n #_08EE2A: SBC.b #$04\n #_08EE2C: LSR A\n #_08EE2D: LSR A\n #_08EE2E: TAY\n\n #_08EE2F: LDA.b #$02\n #_08EE31: STA.b ($92),Y\n\n #_08EE33: PLY\n\n #_08EE34: INX\n\n #_08EE35: REP #$20\n\n #_08EE37: LDA.b $02\n #_08EE39: CLC\n #_08EE3A: ADC.w #$0010\n #_08EE3D: STA.b $02\n\n #_08EE3F: CPX.b #$02\n #_08EE41: BNE .left_side\n\n #_08EE43: LDA.b $00\n #_08EE45: CLC\n #_08EE46: ADC.w #$0008\n #_08EE49: STA.b $00\n\n #_08EE4B: LDA.b $06\n #_08EE4D: STA.b $02\n\n.left_side\n #_08EE4F: SEP #$20\n\n #_08EE51: CPX.b #$04\n #_08EE53: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_08EE55: PLX\n\n #_08EE56: RTS", + "file": "bank_08.asm" + }, + { + "name": "Gravestone_ActAsBarrier", + "code": "Gravestone_ActAsBarrier:\n #_08EE57: LDA.w $0BFA,X\n #_08EE5A: STA.b $00\n\n #_08EE5C: LDA.w $0C0E,X\n #_08EE5F: STA.b $01\n\n #_08EE61: LDA.w $0C04,X\n #_08EE64: STA.b $02\n\n #_08EE66: LDA.w $0C18,X\n #_08EE69: STA.b $03\n\n; ---------------------------------------------------------\n\n #_08EE6B: REP #$20\n\n #_08EE6D: LDA.b $00\n #_08EE6F: CLC\n #_08EE70: ADC.w #$0018\n #_08EE73: STA.b $04\n\n #_08EE75: LDA.b $02\n #_08EE77: CLC\n #_08EE78: ADC.w #$0020\n #_08EE7B: STA.b $06\n\n #_08EE7D: LDA.b $20\n #_08EE7F: CLC\n #_08EE80: ADC.w #$0008\n #_08EE83: STA.b $08\n\n; ---------------------------------------------------------\n\n #_08EE85: CMP.b $00\n #_08EE87: BCC .not_close\n\n #_08EE89: CMP.b $04\n #_08EE8B: BCS .not_close\n\n #_08EE8D: LDA.b $22\n #_08EE8F: CLC\n #_08EE90: ADC.w #$0008\n #_08EE93: CMP.b $02\n #_08EE95: BCC .not_close\n\n #_08EE97: CMP.b $06\n #_08EE99: BCS .not_close\n\n; ---------------------------------------------------------\n\n #_08EE9B: LDA.b $08\n #_08EE9D: SEC\n #_08EE9E: SBC.b $04\n #_08EEA0: BPL .link_below\n\n #_08EEA2: EOR.w #$FFFF\n #_08EEA5: INC A\n\n.link_below\n #_08EEA6: STA.b $0A\n\n #_08EEA8: CLC\n #_08EEA9: ADC.b $20\n #_08EEAB: STA.b $20\n\n #_08EEAD: LDA.b $30\n #_08EEAF: CMP.w #$0080\n #_08EEB2: BCC .sign_correct\n\n #_08EEB4: ORA.w #$FF00\n\n.sign_correct\n #_08EEB7: STA.b $08\n\n; ---------------------------------------------------------\n\n #_08EEB9: LDA.b $0A\n #_08EEBB: CLC\n #_08EEBC: ADC.b $08\n #_08EEBE: AND.w #$00FF\n #_08EEC1: STA.b $08\n\n #_08EEC3: LDA.b $30\n #_08EEC5: AND.w #$FF00\n #_08EEC8: ORA.b $08\n #_08EECA: STA.b $30\n\n #_08EECC: LDA.w #$0004\n #_08EECF: TSB.b $48\n\n; ---------------------------------------------------------\n\n.not_close\n #_08EED1: SEP #$20\n\n #_08EED3: LDA.b $2F\n #_08EED5: BEQ .exit\n\n #_08EED7: LDA.b $48\n #_08EED9: AND.b #$FB\n #_08EEDB: STA.b $48\n\n.exit\n #_08EEDD: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla34_SkullWoodsFire", + "code": "Ancilla34_SkullWoodsFire:\n #_08EF9A: LDA.l $7F0010\n #_08EF9E: BEQ .inactive\n\n #_08EFA0: LDA.w $0C5E,X\n #_08EFA3: CMP.b #$04\n #_08EFA5: BEQ .inactive\n\n #_08EFA7: DEC.w $03B1,X\n #_08EFAA: BPL .inactive\n\n #_08EFAC: LDA.b #$05\n #_08EFAE: STA.w $03B1,X\n\n #_08EFB1: INC.w $0C5E,X\n\n.inactive\n #_08EFB4: LDX.b #$03\n #_08EFB6: LDY.b #$00\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "SkullWoodsFlame_DoNext", + "code": "SkullWoodsFlame_DoNext:\n #_08EFB8: LDA.l $7F0008,X\n #_08EFBC: DEC A\n #_08EFBD: STA.l $7F0008,X\n #_08EFC1: BMI .reset_flame_index\n\n.only_flame_draw\n #_08EFC3: BRL AncillaDraw_SkullWoodsFlame\n\n; ---------------------------------------------------------\n\n.reset_flame_index\n #_08EFC6: LDA.b #$05\n #_08EFC8: STA.l $7F0008,X\n\n #_08EFCC: LDA.l $7F0000,X\n #_08EFD0: CMP.b #$80\n #_08EFD2: BEQ .only_flame_draw\n\n #_08EFD4: INC A\n #_08EFD5: STA.l $7F0000,X\n #_08EFD9: BEQ .reset_control\n\n #_08EFDB: CMP.b #$04\n #_08EFDD: BNE .only_flame_draw\n\n #_08EFDF: LDA.b #$00\n #_08EFE1: STA.l $7F0000,X\n\n; ---------------------------------------------------------\n\n.reset_control\n #_08EFE5: REP #$20\n\n #_08EFE7: LDA.l $7F0018\n #_08EFEB: SEC\n #_08EFEC: SBC.w #$0008\n #_08EFEF: STA.l $7F0018\n\n #_08EFF3: CMP.w #$00C8\n #_08EFF6: BCS .skip_sfx\n\n #_08EFF8: LDA.w #$0098\n #_08EFFB: SEC\n #_08EFFC: SBC.b $E2\n #_08EFFE: STA.b $00\n\n #_08F000: SEP #$20\n\n #_08F002: LDA.l $7F0010\n #_08F006: CMP.b #$01\n #_08F008: BEQ .skip_sfx\n\n #_08F00A: LDA.b #$01\n #_08F00C: STA.l $7F0010\n\n #_08F010: LDA.b $00\n #_08F012: JSR Ancilla_SetPanRelativeCoordinates\n #_08F015: ORA.b #$0C ; SFX2.0C\n #_08F017: STA.w $012E\n\n; ---------------------------------------------------------\n\n.skip_sfx\n #_08F01A: REP #$20\n\n #_08F01C: LDA.l $7F0018\n #_08F020: CMP.w #$00A8\n #_08F023: BCS .dont_terminate\n\n #_08F025: LDA.l $7F0000,X\n #_08F029: AND.w #$FF00\n #_08F02C: ORA.w #$0080\n #_08F02F: STA.l $7F0000,X\n\n.dont_terminate\n #_08F033: PHX\n\n #_08F034: TXA\n #_08F035: ASL A\n #_08F036: TAX\n\n #_08F037: LDA.l $7F001A\n #_08F03B: STA.l $7F0030,X\n\n #_08F03F: LDA.l $7F0018\n #_08F043: STA.l $7F0020,X\n\n #_08F047: PLX\n\n #_08F048: SEP #$20\n\n #_08F04A: LDA.w $012E\n #_08F04D: BNE AncillaDraw_SkullWoodsFlame\n\n #_08F04F: LDA.l $7F001A\n #_08F053: SEC\n #_08F054: SBC.b $E2\n\n #_08F056: JSR Ancilla_SetPanRelativeCoordinates\n #_08F059: ORA.b #$2A ; SFX2.2A\n #_08F05B: STA.w $012E\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_SkullWoodsFlame", + "code": "AncillaDraw_SkullWoodsFlame:\n #_08F05E: SEP #$20\n\n #_08F060: PHX\n\n #_08F061: LDA.l $7F0000,X\n #_08F065: BPL .continue_with_flame\n\n #_08F067: BRL .skip_flame\n\n; ---------------------------------------------------------\n\n.continue_with_flame\n #_08F06A: PHY\n\n #_08F06B: TAY\n\n #_08F06C: LDA.w .flame_offset_y_low,Y\n #_08F06F: STA.b $04\n\n #_08F071: LDA.w .flame_offset_y_high,Y\n #_08F074: STA.b $05\n\n #_08F076: LDA.w .flame_char,Y\n #_08F079: STA.b $06\n\n #_08F07B: LDA.w .flame_prop,Y\n #_08F07E: STA.b $07\n\n #_08F080: TXA\n #_08F081: ASL A\n #_08F082: TAX\n\n; ---------------------------------------------------------\n\n #_08F083: REP #$20\n\n #_08F085: LDA.l $7F0020,X\n #_08F089: SEC\n #_08F08A: SBC.b $E8\n\n #_08F08C: CLC\n #_08F08D: ADC.b $04\n #_08F08F: STA.b $00\n\n #_08F091: LDA.l $7F0030,X\n #_08F095: SEC\n #_08F096: SBC.b $E2\n #_08F098: STA.b $02\n\n #_08F09A: CLC\n #_08F09B: ADC.w #$0008\n #_08F09E: STA.b $08\n\n #_08F0A0: SEP #$20\n\n #_08F0A2: PLY\n\n #_08F0A3: JSR Ancilla_SetOAM_XY\n\n #_08F0A6: LDA.b $06\n #_08F0A8: STA.b ($90),Y\n\n #_08F0AA: INY\n\n #_08F0AB: LDA.b #$32\n #_08F0AD: STA.b ($90),Y\n\n #_08F0AF: INY\n #_08F0B0: PHY\n\n #_08F0B1: TYA\n #_08F0B2: SEC\n #_08F0B3: SBC.b #$04\n #_08F0B5: LSR A\n #_08F0B6: LSR A\n #_08F0B7: TAY\n\n #_08F0B8: LDA.b $07\n #_08F0BA: STA.b ($92),Y\n\n #_08F0BC: PLY\n\n #_08F0BD: CMP.b #$02\n #_08F0BF: BEQ .skip_flame\n\n; ---------------------------------------------------------\n\n #_08F0C1: REP #$20\n\n #_08F0C3: LDA.b $08\n #_08F0C5: STA.b $02\n\n #_08F0C7: SEP #$20\n\n #_08F0C9: JSR Ancilla_SetOAM_XY\n\n #_08F0CC: LDA.b $06\n #_08F0CE: INC A\n #_08F0CF: STA.b ($90),Y\n\n #_08F0D1: INY\n\n #_08F0D2: LDA.b #$32\n #_08F0D4: STA.b ($90),Y\n\n #_08F0D6: INY\n #_08F0D7: PHY\n\n #_08F0D8: TYA\n #_08F0D9: SEC\n #_08F0DA: SBC.b #$04\n #_08F0DC: LSR A\n #_08F0DD: LSR A\n #_08F0DE: TAY\n\n #_08F0DF: LDA.b $07\n #_08F0E1: STA.b ($92),Y\n\n #_08F0E3: PLY\n\n; ---------------------------------------------------------\n\n.skip_flame\n #_08F0E4: PLX\n #_08F0E5: DEX\n #_08F0E6: BMI AncillaDraw_SkullWoodsBlast\n\n #_08F0E8: BRL SkullWoodsFlame_DoNext\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_SkullWoodsBlast", + "code": "AncillaDraw_SkullWoodsBlast:\n #_08F0EB: LDX.b #$03\n\n.find_blast\n #_08F0ED: LDA.l $7F0000,X\n #_08F0F1: BPL .one_active\n\n #_08F0F3: DEX\n #_08F0F4: BPL .find_blast\n\n #_08F0F6: LDX.w $0FA0\n #_08F0F9: STZ.w $0C4A,X\n\n #_08F0FC: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla3A_BigBombExplosion", + "code": "Ancilla3A_BigBombExplosion:\n #_08F18D: LDA.b $11\n #_08F18F: BNE .just_draw\n\n #_08F191: DEC.w $039F,X\n\n #_08F194: LDA.w $039F,X\n #_08F197: BNE .just_draw\n\n #_08F199: INC.w $0C5E,X\n\n #_08F19C: LDA.w $0C5E,X\n #_08F19F: CMP.b #$02\n #_08F1A1: BNE .skip_sfx\n\n #_08F1A3: LDA.b #$0C ; SFX2.0C\n #_08F1A5: JSR Ancilla_SFX2_Pan\n\n.skip_sfx\n #_08F1A8: LDA.w $0C5E,X\n #_08F1AB: CMP.b #$0B\n #_08F1AD: BNE .dont_terminate\n\n #_08F1AF: STZ.w $0C4A,X\n\n #_08F1B2: RTS", + "file": "bank_08.asm" + }, + { + "name": "RevivalFairy_Main", + "code": "RevivalFairy_Main:\n #_08F283: PHB\n #_08F284: PHK\n #_08F285: PLB\n\n #_08F286: LDX.b #$00\n\n #_08F288: LDA.w $0C54,X\n #_08F28B: BEQ .emerging\n\n #_08F28D: CMP.b #$03\n #_08F28F: BNE .emerged\n\n #_08F291: BRL .finish_up\n\n; ---------------------------------------------------------\n\n.emerging\n #_08F294: DEC.w $039F,X\n\n #_08F297: LDA.w $039F,X\n #_08F29A: BNE .sprinkling\n\n #_08F29C: INC.w $0C54,X\n\n #_08F29F: LDY.w $0C54,X\n\n #_08F2A2: LDA.w .timer,Y\n #_08F2A5: STA.w $039F,X\n\n #_08F2A8: STZ.w $0380,X\n #_08F2AB: STZ.w $0294,X\n\n #_08F2AE: BRL .draw\n\n; ---------------------------------------------------------\n\n.sprinkling\n #_08F2B1: JSR Ancilla_Move_Z\n\n #_08F2B4: BRL .draw\n\n; ---------------------------------------------------------\n\n.emerged\n #_08F2B7: CMP.b #$01\n #_08F2B9: BNE .fly_away_now\n\n #_08F2BB: DEC.w $039F,X\n #_08F2BE: LDA.w $039F,X\n #_08F2C1: BNE .busy_sprinkling\n\n #_08F2C3: INC.w $0C54,X\n\n #_08F2C6: STZ.w $0294,X\n #_08F2C9: STZ.w $0C2C,X\n\n #_08F2CC: BRL .draw\n\n; ---------------------------------------------------------\n\n.busy_sprinkling\n #_08F2CF: CMP.b #$4F\n #_08F2D1: BEQ .do_sprinkle\n\n #_08F2D3: CMP.b #$8F\n #_08F2D5: BNE .dont_sprinkle\n\n.do_sprinkle\n #_08F2D7: INC.w $0385,X\n\n #_08F2DA: LDA.b #$31 ; SFX2.31\n #_08F2DC: JSR Ancilla_SFX2_Pan\n\n.dont_sprinkle\n #_08F2DF: LDA.w $0385,X\n #_08F2E2: BEQ .not_sprinkling\n\n #_08F2E4: DEC.w $0394,X\n #_08F2E7: BPL .not_sprinkling\n\n #_08F2E9: LDA.b #$05\n #_08F2EB: STA.w $0394,X\n\n #_08F2EE: INC.w $0C5E,X\n\n #_08F2F1: LDA.w $0C5E,X\n #_08F2F4: CMP.b #$03\n #_08F2F6: BNE .not_sprinkling\n\n #_08F2F8: STZ.w $0C5E,X\n #_08F2FB: STZ.w $0385,X\n\n; ---------------------------------------------------------\n\n.not_sprinkling\n #_08F2FE: LDY.b #$FF\n\n #_08F300: LDA.w $0380,X\n #_08F303: BEQ .descending\n\n #_08F305: LDY.b #$01\n\n.descending\n #_08F307: STY.b $00\n\n #_08F309: LDA.w $0294,X\n #_08F30C: CLC\n #_08F30D: ADC.b $00\n #_08F30F: STA.w $0294,X\n #_08F312: BPL .positive_z\n\n #_08F314: EOR.b #$FF\n #_08F316: INC A\n\n.positive_z\n #_08F317: CMP.b #$08\n #_08F319: BNE .dont_toggle_z\n\n #_08F31B: LDA.w $0380,X\n #_08F31E: EOR.b #$01\n #_08F320: STA.w $0380,X\n\n.dont_toggle_z\n #_08F323: JSR Ancilla_Move_Z\n\n #_08F326: BRA .draw\n\n; ---------------------------------------------------------\n\n.fly_away_now\n #_08F328: CMP.b #$02\n #_08F32A: BNE .draw\n\n #_08F32C: LDA.w $0294,X\n #_08F32F: CMP.b #$18\n #_08F331: BCS .at_max_z\n\n #_08F333: CLC\n #_08F334: ADC.b #$01\n #_08F336: STA.w $0294,X\n\n.at_max_z\n #_08F339: LDA.w $0C2C,X\n #_08F33C: CMP.b #$10\n #_08F33E: BCS .at_max_x\n\n #_08F340: CLC\n #_08F341: ADC.b #$01\n #_08F343: STA.w $0C2C,X\n\n.at_max_x\n #_08F346: JSR Ancilla_Move_X\n #_08F349: JSR Ancilla_Move_Z\n\n; ---------------------------------------------------------\n\n.draw\n #_08F34C: LDA.b #$0C\n #_08F34E: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_08F352: JSR Ancilla_PrepOAMCoord\n\n #_08F355: PHX\n\n #_08F356: STZ.b $0A\n\n #_08F358: LDA.w $0C54,X\n #_08F35B: CMP.b #$01\n #_08F35D: BNE .am_not_sprinkling\n\n #_08F35F: LDA.w $0385,X\n #_08F362: BEQ .am_not_sprinkling\n\n #_08F364: LDA.w $0C5E,X\n #_08F367: INC A\n #_08F368: STA.b $0A\n\n.am_not_sprinkling\n #_08F36A: LDY.b #$00\n\n #_08F36C: REP #$20\n\n #_08F36E: LDA.w $029E,X\n #_08F371: AND.w #$00FF\n #_08F374: CMP.w #$0080\n #_08F377: BCC .positive_altitude\n\n #_08F379: ORA.w #$FF00\n\n.positive_altitude\n #_08F37C: EOR.w #$FFFF\n #_08F37F: INC A\n #_08F380: CLC\n #_08F381: ADC.b $00\n #_08F383: STA.b $00\n\n; ---------------------------------------------------------\n\n #_08F385: SEP #$20\n\n #_08F387: JSR Ancilla_SetOAM_XY\n\n #_08F38A: LDA.b $0A\n #_08F38C: BEQ .flapping\n\n #_08F38E: DEC A\n #_08F38F: CLC\n #_08F390: ADC.b #$02\n #_08F392: TAX\n\n #_08F393: BRA .set_char\n\n.flapping\n #_08F395: LDA.b $1A\n #_08F397: AND.b #$04\n #_08F399: LSR A\n #_08F39A: LSR A\n #_08F39B: TAX\n\n.set_char\n #_08F39C: LDA.w .char,X\n #_08F39F: STA.b ($90),Y\n\n #_08F3A1: INY\n\n #_08F3A2: LDA.b #$74\n #_08F3A4: STA.b ($90),Y\n\n #_08F3A6: TYA\n #_08F3A7: SEC\n #_08F3A8: SBC.b #$03\n #_08F3AA: LSR A\n #_08F3AB: LSR A\n #_08F3AC: TAY\n\n #_08F3AD: LDA.b #$02\n #_08F3AF: STA.b ($92),Y\n\n #_08F3B1: PLX\n\n #_08F3B2: LDY.b #$01\n\n #_08F3B4: LDA.b ($90),Y\n #_08F3B6: CMP.b #$F0\n #_08F3B8: BNE .finish_up\n\n #_08F3BA: LDA.b #$03\n #_08F3BC: STA.w $0C54,X\n\n #_08F3BF: INC.b $11\n\n #_08F3C1: LDA.l $7EC211\n #_08F3C5: STA.b $1C\n\n; ---------------------------------------------------------\n\n.finish_up\n #_08F3C7: JSR RevivalFairy_Dust\n #_08F3CA: JSR RevivalFairy_MonitorHP\n\n #_08F3CD: PLB\n\n #_08F3CE: RTL", + "file": "bank_08.asm" + }, + { + "name": "RevivalFairy_Dust", + "code": "RevivalFairy_Dust:\n #_08F3CF: LDA.w $0C54,X\n #_08F3D2: BNE .continue\n\n #_08F3D4: RTS", + "file": "bank_08.asm" + }, + { + "name": "RevivalFairy_MonitorHP", + "code": "RevivalFairy_MonitorHP:\n #_08F430: LDA.l $7EF36C\n #_08F434: STA.b $00\n\n #_08F436: LDA.l $7EF36D\n #_08F43A: CMP.b $00\n\n #_08F43C: BEQ .at_max\n\n #_08F43E: CMP.b #$38\n #_08F440: BNE .healing\n\n.at_max\n #_08F442: LDA.w $020A\n #_08F445: BNE .healing\n\n; ---------------------------------------------------------\n\n #_08F447: LDY.b #$00 ; LINKSTATE 00\n\n #_08F449: LDA.w $0345\n #_08F44C: BEQ .not_swimming\n\n #_08F44E: LDY.b #$04 ; LINKSTATE 04\n\n #_08F450: LDA.b #$04\n #_08F452: STA.w $0340\n\n #_08F455: BRA .set_state\n\n.not_swimming\n #_08F457: LDA.b $56\n #_08F459: BEQ .set_state\n\n #_08F45B: LDY.b #$17 ; LINKSTATE 17\n\n #_08F45D: LDA.b #$01\n #_08F45F: STA.w $02E0\n\n.set_state\n #_08F462: STY.b $5D\n\n #_08F464: STZ.b $4D\n #_08F466: STZ.w $036B\n\n #_08F469: STZ.w $030D\n #_08F46C: STZ.w $030A\n\n #_08F46F: STZ.b $24\n #_08F471: STZ.b $46\n\n #_08F473: STZ.w $0C4A\n #_08F476: STZ.w $0C4B\n #_08F479: STZ.w $0C4C\n #_08F47C: STZ.w $0C4D\n #_08F47F: STZ.w $0C4E\n\n #_08F482: RTS", + "file": "bank_08.asm" + }, + { + "name": "Animate_GAMEOVER_Letters", + "code": "Animate_GAMEOVER_Letters:\n #_08F4CA: PHB\n #_08F4CB: PHK\n #_08F4CC: PLB\n\n #_08F4CD: JSR .main\n\n #_08F4D0: PLB\n\n #_08F4D1: RTL", + "file": "bank_08.asm" + }, + { + "name": "GAMEOVER_Sweep", + "code": "GAMEOVER_Sweep:\n #_08F4F6: LDX.w $035F\n #_08F4F9: STX.w $0FA0\n\n #_08F4FC: LDY.b #$80\n #_08F4FE: CPX.b #$07\n\n #_08F500: BNE .pointless\n\n #_08F502: LDY.b #$80\n\n; ---------------------------------------------------------\n\n.pointless\n #_08F504: TYA\n #_08F505: STA.w $0C2C,X\n\n #_08F508: JSR Ancilla_Move_X\n\n #_08F50B: LDA.w $0C18,X\n #_08F50E: BNE .leftwards_ho\n\n #_08F510: LDA.w $0C04,X\n #_08F513: CMP.w .target_x,X\n #_08F516: BCS .leftwards_ho\n\n #_08F518: LDA.w .target_x,X\n #_08F51B: STA.w $0C04,X\n\n #_08F51E: INX\n #_08F51F: STX.w $035F\n\n #_08F522: CPX.b #$08\n #_08F524: BNE .leftwards_ho\n\n #_08F526: LDA.b #$07\n #_08F528: STA.w $035F\n\n #_08F52B: INC.w $0C4A\n\n #_08F52E: STZ.w $039D\n\n #_08F531: LDA.b #$26 ; SFX3.26\n #_08F533: STA.w $012F\n\n #_08F536: BRA .proceed_to_draw\n\n; ---------------------------------------------------------\n\n.leftwards_ho\n #_08F538: CPX.b #$07\n #_08F53A: BNE .proceed_to_draw\n\n #_08F53C: LDY.b #$06\n #_08F53E: CPY.w $039D\n #_08F541: BEQ .not_moving_together\n\n; ---------------------------------------------------------\n\n.next_follow\n #_08F543: LDA.w $0C04,X\n #_08F546: STA.w $0C04,Y\n\n #_08F549: DEY\n #_08F54A: CPY.w $039D\n #_08F54D: BNE .next_follow\n\n; ---------------------------------------------------------\n\n.not_moving_together\n #_08F54F: LDA.w $0C18,X\n #_08F552: BNE .proceed_to_draw\n\n #_08F554: LDA.w $0C04,X\n\n #_08F557: LDX.w $039D\n\n #_08F55A: CMP.w .target_x,X\n #_08F55D: BCS .proceed_to_draw\n\n #_08F55F: DEC.w $039D\n\n.proceed_to_draw\n #_08F562: BRL GAMEOVER_Stay\n\n; =========================================================\n\npool GAMEOVER_Unfurl\n\n.target_x\n #_08F565: db $58 ; G\n #_08F566: db $60 ; A\n #_08F567: db $68 ; M\n #_08F568: db $70 ; E\n\n #_08F569: db $88 ; O\n #_08F56A: db $90 ; V\n #_08F56B: db $98 ; E\n #_08F56C: db $A0 ; R\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "GAMEOVER_Unfurl", + "code": "GAMEOVER_Unfurl:\n #_08F56D: LDX.w $035F\n #_08F570: STX.w $0FA0\n\n #_08F573: LDA.b #$60\n #_08F575: STA.w $0C2C,X\n\n #_08F578: JSR Ancilla_Move_X\n\n #_08F57B: LDY.w $039D\n\n #_08F57E: LDA.w $0C04,X\n #_08F581: CMP.w .target_x,Y\n #_08F584: BCC .rightwards_ho\n\n #_08F586: LDA.w .target_x,Y\n #_08F589: STA.w $0C04,Y\n\n #_08F58C: INC.w $039D\n\n #_08F58F: LDA.w $039D\n #_08F592: CMP.b #$08\n #_08F594: BNE .rightwards_ho\n\n #_08F596: INC.b $11\n #_08F598: INC.w $0C4A\n\n #_08F59B: BRA .proceed_to_draw\n\n.rightwards_ho\n #_08F59D: LDA.w $039D\n #_08F5A0: DEC A\n #_08F5A1: STA.b $00\n\n #_08F5A3: LDX.w $035F\n #_08F5A6: TXY\n\n.next_follow\n #_08F5A7: LDA.w $0C04,X\n #_08F5AA: STA.w $0C04,Y\n\n #_08F5AD: DEY\n #_08F5AE: CPY.b $00\n #_08F5B0: BNE .next_follow\n\n; ---------------------------------------------------------\n\n.proceed_to_draw\n #_08F5B2: BRA GAMEOVER_Stay\n\n; =========================================================\n\npool GAMEOVER_Stay\n\n.char\n #_08F5B4: db $40, $50 ; G\n #_08F5B6: db $41, $51 ; A\n #_08F5B8: db $42, $52 ; M\n #_08F5BA: db $43, $53 ; E\n\n #_08F5BC: db $44, $54 ; O\n #_08F5BE: db $45, $55 ; V\n #_08F5C0: db $43, $53 ; E\n #_08F5C2: db $46, $56 ; R\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "GAMEOVER_Stay", + "code": "GAMEOVER_Stay:\n #_08F5C4: LDA.b #$00\n #_08F5C6: STA.b $90\n\n #_08F5C8: LDA.b #$08\n #_08F5CA: STA.b $91\n\n #_08F5CC: LDA.b #$20\n #_08F5CE: STA.b $92\n\n #_08F5D0: LDA.b #$0A\n #_08F5D2: STA.b $93\n\n #_08F5D4: LDX.w $035F\n #_08F5D7: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_letter\n #_08F5D9: PHX\n\n #_08F5DA: LDA.b #$57\n #_08F5DC: STA.b $00\n #_08F5DE: STZ.b $01\n\n #_08F5E0: LDA.w $0C04,X\n #_08F5E3: STA.b $02\n\n #_08F5E5: LDA.w $0C18,X\n #_08F5E8: STA.b $03\n\n #_08F5EA: JSR Ancilla_SetOAM_XY\n\n #_08F5ED: TXA\n #_08F5EE: ASL A\n #_08F5EF: TAX\n\n #_08F5F0: LDA.w .char+0,X\n #_08F5F3: STA.b ($90),Y\n\n #_08F5F5: INY\n\n #_08F5F6: LDA.b #$3C\n #_08F5F8: STA.b ($90),Y\n\n #_08F5FA: INY\n\n #_08F5FB: LDA.b #$5F\n #_08F5FD: STA.b $00\n #_08F5FF: STZ.b $01\n\n #_08F601: JSR Ancilla_SetOAM_XY\n\n #_08F604: LDA.w .char+1,X\n #_08F607: STA.b ($90),Y\n\n #_08F609: INY\n\n #_08F60A: LDA.b #$3C\n #_08F60C: STA.b ($90),Y\n\n #_08F60E: INY\n #_08F60F: PHY\n\n #_08F610: TYA\n #_08F611: SEC\n #_08F612: SBC.b #$08\n #_08F614: LSR A\n #_08F615: LSR A\n #_08F616: TAY\n\n #_08F617: LDA.b #$00\n #_08F619: STA.b ($92),Y\n\n #_08F61B: INY\n\n #_08F61C: STA.b ($92),Y\n\n #_08F61E: PLY\n #_08F61F: PLX\n\n #_08F620: DEX\n #_08F621: BPL .next_letter\n\n; ---------------------------------------------------------\n\n #_08F623: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetPanRelativeCoordinates", + "code": "Ancilla_SetPanRelativeCoordinates:\n #_08F624: PHX\n\n #_08F625: LSR A\n #_08F626: LSR A\n #_08F627: LSR A\n #_08F628: LSR A\n #_08F629: LSR A\n\n #_08F62A: TAX\n\n #_08F62B: LDA.l AncillaPanValues,X\n\n #_08F62F: PLX\n\n #_08F630: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaAdd_AddAncilla_Bank08", + "code": "AncillaAdd_AddAncilla_Bank08:\n #_08F631: PHA\n\n #_08F632: JSL Ancilla_CheckForAvailableSlot\n\n #_08F636: PLA\n\n #_08F637: TYX\n #_08F638: BMI .fail\n\n #_08F63A: STA.w $0C4A,X\n\n #_08F63D: TAY\n\n #_08F63E: LDA.w AncillaObjectAllocation,Y\n #_08F641: STA.w $0C90,X\n\n #_08F644: LDA.b $EE\n #_08F646: STA.w $0C7C,X\n\n #_08F649: LDA.w $0476\n #_08F64C: STA.w $03CA,X\n\n #_08F64F: STZ.w $0C22,X\n #_08F652: STZ.w $0C2C,X\n #_08F655: STZ.w $0280,X\n\n #_08F658: STZ.w $028A,X\n\n #_08F65B: CLC\n\n #_08F65C: RTS", + "file": "bank_08.asm" + }, + { + "name": "UNREACHABLE_08F65F", + "code": "UNREACHABLE_08F65F:\n #_08F65F: LDX.b #$05\n\n.next_slot\n #_08F661: CMP.w $0C4A,X\n #_08F664: BEQ .found_match\n\n #_08F666: DEX\n #_08F667: BPL .next_slot\n\n #_08F669: CLC\n\n #_08F66A: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaPriorities", + "code": "AncillaPriorities:\n #_08F66D: db $20, $10, $30, $20\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_PrepOAMCoord", + "code": "Ancilla_PrepOAMCoord:\n #_08F671: LDY.w $0C7C,X\n\n #_08F674: LDA.w AncillaPriorities,Y\n #_08F677: STA.b $65\n #_08F679: STZ.b $64\n\n #_08F67B: LDA.w $0BFA,X\n #_08F67E: STA.b $00\n\n #_08F680: LDA.w $0C0E,X\n #_08F683: STA.b $01\n\n #_08F685: LDA.w $0C04,X\n #_08F688: STA.b $02\n\n #_08F68A: LDA.w $0C18,X\n #_08F68D: STA.b $03\n\n #_08F68F: REP #$20\n\n #_08F691: LDA.b $00\n #_08F693: SEC\n #_08F694: SBC.b $E8\n #_08F696: STA.b $00\n\n #_08F698: LDA.b $02\n #_08F69A: SEC\n #_08F69B: SBC.b $E2\n #_08F69D: STA.b $02\n #_08F69F: STA.b $04\n\n #_08F6A1: SEP #$20\n\n #_08F6A3: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_PrepOAMCoord_long", + "code": "Ancilla_PrepOAMCoord_long:\n #_08F6D9: PHB\n #_08F6DA: PHK\n #_08F6DB: PLB\n\n #_08F6DC: JSR Ancilla_PrepOAMCoord\n\n #_08F6DF: PLB\n\n #_08F6E0: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetOAM_XY", + "code": "Ancilla_SetOAM_XY:\n #_08F6E1: PHX\n\n #_08F6E2: LDX.b #$F0\n\n #_08F6E4: LDA.b $01\n #_08F6E6: BNE .off_screen\n\n #_08F6E8: LDA.b $03\n #_08F6EA: BNE .off_screen\n\n #_08F6EC: LDA.b $02\n #_08F6EE: STA.b ($90),Y\n\n #_08F6F0: LDA.b $00\n #_08F6F2: CMP.b #$F0\n #_08F6F4: BCS .off_screen\n\n #_08F6F6: TAX\n\n.off_screen\n #_08F6F7: INY\n\n #_08F6F8: TXA\n #_08F6F9: STA.b ($90),Y\n\n #_08F6FB: INY\n\n #_08F6FC: PLX\n\n #_08F6FD: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetOAM_XY_long", + "code": "Ancilla_SetOAM_XY_long:\n #_08F6FE: JSR Ancilla_SetOAM_XY\n\n #_08F701: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_SetOAM_XY_safe", + "code": "Ancilla_SetOAM_XY_safe:\n #_08F702: REP #$20\n\n #_08F704: LDA.b $02\n #_08F706: STA.b ($90),Y\n\n #_08F708: INY\n\n #_08F709: CLC\n #_08F70A: ADC.w #$0080\n #_08F70D: CMP.w #$0180\n #_08F710: BCS .off_screen\n\n #_08F712: LDA.b $02\n #_08F714: AND.w #$0100\n #_08F717: STA.b $74\n\n #_08F719: LDA.b $00\n #_08F71B: STA.b ($90),Y\n\n #_08F71D: CLC\n #_08F71E: ADC.w #$0010\n #_08F721: CMP.w #$0100\n #_08F724: BCC .on_screen\n\n.off_screen\n #_08F726: LDA.w #$00F0\n #_08F729: STA.b ($90),Y\n\n.on_screen\n #_08F72B: SEP #$20\n\n #_08F72D: INY\n\n #_08F72E: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckLinkCollision", + "code": "Ancilla_CheckLinkCollision:\n #_08F76B: TYA\n #_08F76C: ASL A\n #_08F76D: TAY\n\n #_08F76E: LDA.w $0BFA,X\n #_08F771: STA.b $00\n\n #_08F773: LDA.w $0C0E,X\n #_08F776: STA.b $01\n\n #_08F778: LDA.w $0C04,X\n #_08F77B: STA.b $02\n\n #_08F77D: LDA.w $0C18,X\n #_08F780: STA.b $03\n\n #_08F782: STZ.b $0B\n\n #_08F784: LDA.w $029E,X\n #_08F787: STA.b $0A\n\n #_08F789: BPL .positive_z\n\n #_08F78B: LDA.b #$FF\n #_08F78D: STA.b $0B\n\n; ---------------------------------------------------------\n\n.positive_z\n #_08F78F: REP #$20\n\n #_08F791: LDA.b $00\n #_08F793: CLC\n #_08F794: ADC.b $0A\n\n #_08F796: CLC\n #_08F797: ADC.w .offset_y,Y\n #_08F79A: STA.b $00\n\n #_08F79C: LDA.b $02\n #_08F79E: CLC\n #_08F79F: ADC.w .offset_x,Y\n #_08F7A2: STA.b $02\n\n #_08F7A4: LDA.b $20\n #_08F7A6: CLC\n #_08F7A7: ADC.w .offset_link_y,Y\n\n #_08F7AA: SEC\n #_08F7AB: SBC.b $00\n #_08F7AD: STA.b $04\n\n #_08F7AF: BPL .positive_y\n\n #_08F7B1: EOR.w #$FFFF\n #_08F7B4: INC A\n\n.positive_y\n #_08F7B5: STA.b $08\n\n #_08F7B7: CMP.w .height,Y\n #_08F7BA: BCS .no_collision\n\n; ---------------------------------------------------------\n\n #_08F7BC: LDA.b $22\n #_08F7BE: CLC\n #_08F7BF: ADC.w .offset_link_x,Y\n\n #_08F7C2: SEC\n #_08F7C3: SBC.b $02\n #_08F7C5: STA.b $06\n\n #_08F7C7: BPL .positive_x\n\n #_08F7C9: EOR.w #$FFFF\n #_08F7CC: INC A\n\n.positive_x\n #_08F7CD: STA.b $0A\n\n #_08F7CF: CMP.w .width,Y\n #_08F7D2: BCS .no_collision\n\n; ---------------------------------------------------------\n\n.collision\n #_08F7D4: SEP #$20\n #_08F7D6: SEC\n\n #_08F7D7: RTS", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_CheckProximityToLink", + "code": "Hookshot_CheckProximityToLink:\n #_08F7DC: REP #$20\n\n #_08F7DE: LDA.b $00\n #_08F7E0: CLC\n #_08F7E1: ADC.w #$0004\n #_08F7E4: STA.b $72\n\n #_08F7E6: LDA.b $02\n #_08F7E8: CLC\n #_08F7E9: ADC.w #$0004\n #_08F7EC: STA.b $74\n\n #_08F7EE: LDA.b $20\n #_08F7F0: SEC\n #_08F7F1: SBC.b $E8\n\n #_08F7F3: CLC\n #_08F7F4: ADC.w #$000C\n\n #_08F7F7: SEC\n #_08F7F8: SBC.b $72\n\n #_08F7FA: BPL .positive_y\n\n #_08F7FC: EOR.w #$FFFF\n #_08F7FF: INC A\n\n.positive_y\n #_08F800: CMP.w #$000C\n #_08F803: BCS .too_far\n\n #_08F805: LDA.b $22\n #_08F807: SEC\n #_08F808: SBC.b $E2\n\n #_08F80A: CLC\n #_08F80B: ADC.w #$0008\n\n #_08F80E: SEC\n #_08F80F: SBC.b $74\n\n #_08F811: BPL .positive_x\n\n #_08F813: EOR.w #$FFFF\n #_08F816: INC A\n\n.positive_x\n #_08F817: CMP.w #$000C\n #_08F81A: BCS .too_far\n\n.close\n #_08F81C: SEP #$20\n #_08F81E: SEC\n\n #_08F81F: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_CheckForEntranceTrigger", + "code": "Ancilla_CheckForEntranceTrigger:\n #_08F844: TYA\n #_08F845: ASL A\n #_08F846: TAY\n\n #_08F847: REP #$20\n\n #_08F849: LDA.b $20\n #_08F84B: CLC\n #_08F84C: ADC.w #$000C\n\n #_08F84F: SEC\n #_08F850: SBC.w .position_y,Y\n\n #_08F853: BPL .positive_y\n\n #_08F855: EOR.w #$FFFF\n #_08F858: INC A\n\n.positive_y\n #_08F859: CMP.w .height,Y\n #_08F85C: BCS .out_of_range\n\n #_08F85E: LDA.b $22\n #_08F860: CLC\n #_08F861: ADC.w #$0008\n\n #_08F864: SEC\n #_08F865: SBC.w .position_x,Y\n\n #_08F868: BPL .positive_x\n\n #_08F86A: EOR.w #$FFFF\n #_08F86D: INC A\n\n.positive_x\n #_08F86E: CMP.w .width,Y\n #_08F871: BCS .out_of_range\n\n.success\n #_08F873: SEP #$20\n #_08F875: SEC\n\n #_08F876: RTS", + "file": "bank_08.asm" + }, + { + "name": "AncillaDraw_Shadow", + "code": "AncillaDraw_Shadow:\n #_08F897: CPX.b #$02\n #_08F899: BNE .big_shadow\n\n #_08F89B: REP #$20\n\n #_08F89D: LDA.b $02\n #_08F89F: CLC\n #_08F8A0: ADC.w #$0004\n #_08F8A3: STA.b $02\n\n #_08F8A5: SEP #$20\n\n; ---------------------------------------------------------\n\n.big_shadow\n #_08F8A7: TXA\n #_08F8A8: ASL A\n #_08F8A9: TAX\n\n #_08F8AA: STZ.b $74\n #_08F8AC: STZ.b $75\n\n #_08F8AE: JSR Ancilla_SetOAM_XY_safe\n\n #_08F8B1: LDA.w .char+0,X\n #_08F8B4: STA.b ($90),Y\n\n #_08F8B6: INY\n\n #_08F8B7: LDA.w .prop+0,X\n #_08F8BA: AND.b #$CF\n #_08F8BC: ORA.b $04\n #_08F8BE: STA.b ($90),Y\n\n #_08F8C0: INY\n #_08F8C1: PHY\n\n #_08F8C2: TYA\n #_08F8C3: SEC\n #_08F8C4: SBC.b #$04\n #_08F8C6: LSR A\n #_08F8C7: LSR A\n #_08F8C8: TAY\n\n #_08F8C9: LDA.b #$00\n #_08F8CB: ORA.b $75\n #_08F8CD: STA.b ($92),Y\n\n #_08F8CF: PLY\n\n #_08F8D0: REP #$20\n\n #_08F8D2: LDA.b $02\n #_08F8D4: CLC\n #_08F8D5: ADC.w #$0008\n #_08F8D8: STA.b $02\n\n #_08F8DA: SEP #$20\n\n #_08F8DC: LDA.w .char+1,X\n #_08F8DF: CMP.b #$FF\n #_08F8E1: BEQ .exit\n\n #_08F8E3: STZ.b $74\n #_08F8E5: STZ.b $75\n\n #_08F8E7: JSR Ancilla_SetOAM_XY_safe\n\n #_08F8EA: LDA.w .char+1,X\n #_08F8ED: STA.b ($90),Y\n\n #_08F8EF: INY\n\n #_08F8F0: LDA.w .prop+1,X\n #_08F8F3: AND.b #$CF\n #_08F8F5: ORA.b $04\n #_08F8F7: STA.b ($90),Y\n\n #_08F8F9: INY\n #_08F8FA: PHY\n\n #_08F8FB: TYA\n #_08F8FC: SEC\n #_08F8FD: SBC.b #$03\n #_08F8FF: LSR A\n #_08F900: LSR A\n #_08F901: TAY\n\n #_08F902: LDA.b #$00\n #_08F904: ORA.b $75\n #_08F906: STA.b ($92),Y\n\n #_08F908: PLY\n\n.exit\n #_08F909: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_AllocateOAMFromRegion_B_or_E", + "code": "Ancilla_AllocateOAMFromRegion_B_or_E:\n #_08F90A: LDY.w $0FB3\n #_08F90D: BNE .use_region_E\n\n.use_region_B\n #_08F90F: JSL SpriteDraw_AllocateOAMFromRegionB\n #_08F913: BRA .exit\n\n.use_region_E\n #_08F915: JSL SpriteDraw_AllocateOAMFromRegionE\n\n.exit\n #_08F919: RTS", + "file": "bank_08.asm" + }, + { + "name": "Follower_MoveTowardsLink", + "code": "Follower_MoveTowardsLink:\n #_08F91A: PHB\n #_08F91B: PHK\n #_08F91C: PLB\n\n.get_closer\n #_08F91D: LDX.w $02D3\n\n #_08F920: LDA.w $1A00,X\n #_08F923: STA.w $0C03\n\n #_08F926: LDA.w $1A14,X\n #_08F929: STA.w $0C17\n\n #_08F92C: LDA.w $1A28,X\n #_08F92F: STA.w $0C0D\n\n #_08F932: LDA.w $1A3C,X\n #_08F935: STA.w $0C21\n\n #_08F938: LDX.b #$09\n #_08F93A: LDA.b #$18\n #_08F93C: JSR Ancilla_ProjectSpeedTowardsPlayer\n\n #_08F93F: LDA.b $00\n #_08F941: STA.w $0C22,X\n\n #_08F944: LDA.b $01\n #_08F946: STA.w $0C2C,X\n\n #_08F949: JSR Ancilla_Move_Y\n\n #_08F94C: PHX\n #_08F94D: JSR Ancilla_Move_X\n #_08F950: PLX\n\n #_08F951: LDA.w $0BFA,X\n #_08F954: STA.b $00\n\n #_08F956: LDA.w $0C0E,X\n #_08F959: STA.b $01\n\n #_08F95B: LDA.w $0C04,X\n #_08F95E: STA.b $02\n\n #_08F960: LDA.w $0C18,X\n #_08F963: STA.b $03\n\n; ---------------------------------------------------------\n\n #_08F965: REP #$20\n\n #_08F967: LDA.b $00\n #_08F969: SEC\n #_08F96A: SBC.b $20\n #_08F96C: BPL .positive_y\n\n #_08F96E: EOR.w #$FFFF\n #_08F971: INC A\n\n.positive_y\n #_08F972: CMP.w #$0002\n #_08F975: BCS .close_enough\n\n #_08F977: LDA.b $02\n #_08F979: SEC\n #_08F97A: SBC.b $22\n #_08F97C: BPL .positive_x\n\n #_08F97E: EOR.w #$FFFF\n #_08F981: INC A\n\n.positive_x\n #_08F982: CMP.w #$0002\n #_08F985: BCC .exit\n\n; ---------------------------------------------------------\n\n.close_enough\n #_08F987: SEP #$20\n\n #_08F989: INC.w $02D3\n\n #_08F98C: LDX.w $02D3\n #_08F98F: CPX.b #$12\n #_08F991: BEQ .exit\n\n #_08F993: LDA.b $00\n #_08F995: STA.w $1A00,X\n\n #_08F998: LDA.b $01\n #_08F99A: STA.w $1A14,X\n\n #_08F99D: LDA.b $02\n #_08F99F: STA.w $1A28,X\n\n #_08F9A2: LDA.b $03\n #_08F9A4: STA.w $1A3C,X\n\n #_08F9A7: LDY.b $EE\n\n #_08F9A9: LDA.w AncillaPriorities,Y\n #_08F9AC: LSR A\n #_08F9AD: LSR A\n #_08F9AE: ORA.b #$01\n #_08F9B0: STA.w $1A64,X\n\n #_08F9B3: BRL .get_closer\n\n; ---------------------------------------------------------\n\n.exit\n #_08F9B6: SEP #$20\n\n #_08F9B8: PLB\n\n #_08F9B9: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_AllocateOAMFromCustomRegion", + "code": "Ancilla_AllocateOAMFromCustomRegion:\n #_08F9BA: PHA\n #_08F9BB: PHX\n\n #_08F9BC: REP #$20\n\n #_08F9BE: TYA\n #_08F9BF: AND.w #$00FF\n #_08F9C2: CLC\n #_08F9C3: ADC.b $90\n\n #_08F9C5: LDX.w $0FB3\n #_08F9C8: BEQ .ignore_layer\n\n #_08F9CA: CMP.w #$0900\n #_08F9CD: BCS .upper_region\n\n #_08F9CF: CMP.w #$08E0\n #_08F9D2: BCC .continue\n\n #_08F9D4: LDA.w #$0820\n #_08F9D7: BRA .set_region\n\n.upper_region\n #_08F9D9: CMP.w #$09D0\n #_08F9DC: BCC .continue\n\n #_08F9DE: LDA.w #$0940\n #_08F9E1: BRA .set_region\n\n; ---------------------------------------------------------\n\n.ignore_layer\n #_08F9E3: CMP.w #$0990\n #_08F9E6: BCC .continue\n\n #_08F9E8: LDA.w #$0820\n\n; ---------------------------------------------------------\n\n.set_region\n #_08F9EB: STA.b $90\n\n #_08F9ED: SEC\n #_08F9EE: SBC.w #$0800\n #_08F9F1: LSR A\n #_08F9F2: LSR A\n #_08F9F3: CLC\n #_08F9F4: ADC.w #$0A20\n #_08F9F7: STA.b $92\n\n #_08F9F9: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.continue\n #_08F9FB: SEP #$20\n\n #_08F9FD: PLX\n #_08F9FE: PLA\n\n #_08F9FF: RTS", + "file": "bank_08.asm" + }, + { + "name": "HitStars_UpdateOAMBufferPosition", + "code": "HitStars_UpdateOAMBufferPosition:\n #_08FA00: PHA\n #_08FA01: PHX\n\n #_08FA02: REP #$20\n\n #_08FA04: TYA\n #_08FA05: AND.w #$00FF\n #_08FA08: CLC\n #_08FA09: ADC.b $90\n\n #_08FA0B: LDX.w $0FB3\n #_08FA0E: BNE .exit\n\n #_08FA10: CMP.w #$09D0\n #_08FA13: BCC .exit\n\n #_08FA15: LDA.w #$0820\n #_08FA18: STA.b $90\n\n #_08FA1A: SEC\n #_08FA1B: SBC.w #$0800\n\n #_08FA1E: LSR A\n #_08FA1F: LSR A\n\n #_08FA20: CLC\n #_08FA21: ADC.w #$0A20\n #_08FA24: STA.b $92\n\n #_08FA26: LDY.b #$00\n\n.exit\n #_08FA28: SEP #$20\n\n #_08FA2A: PLX\n #_08FA2B: PLA\n\n #_08FA2C: RTS", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_ShouldIEvenBotherWithTiles", + "code": "Hookshot_ShouldIEvenBotherWithTiles:\n #_08FA2D: PHX\n #_08FA2E: PHY\n\n #_08FA2F: LDA.w $0BFA,X\n #_08FA32: STA.b $00\n\n #_08FA34: LDA.w $0C0E,X\n #_08FA37: STA.b $01\n\n #_08FA39: LDA.w $0C04,X\n #_08FA3C: STA.b $02\n\n #_08FA3E: LDA.w $0C18,X\n #_08FA41: STA.b $03\n\n #_08FA43: LDA.b $1B\n #_08FA45: BNE Hookshot_CheckForTileAllowanceUnderworld\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_CheckForTileAllowanceOverworld", + "code": "Hookshot_CheckForTileAllowanceOverworld:\n #_08FA47: REP #$20\n\n #_08FA49: LDA.w $0C72,X\n #_08FA4C: AND.w #$0002\n #_08FA4F: BNE .horizontal_direction\n\n; ---------------------------------------------------------\n\n.vertical_direction\n #_08FA51: LDX.w $0700\n\n #_08FA54: LDA.b $00\n #_08FA56: SEC\n #_08FA57: SBC.l OverworldTransitionPositionY,X\n #_08FA5B: CMP.w #$0004\n #_08FA5E: BCC Hookshot_DisallowTileCollision\n\n #_08FA60: CMP.w $0716\n #_08FA63: BCS Hookshot_DisallowTileCollision\n\n #_08FA65: BRA Hookshot_AllowTileCollision\n\n; ---------------------------------------------------------\n\n.horizontal_direction\n #_08FA67: LDX.w $0700\n\n #_08FA6A: LDA.b $02\n #_08FA6C: SEC\n #_08FA6D: SBC.l OverworldTransitionPositionX,X\n #_08FA71: CMP.w #$0006\n #_08FA74: BCC Hookshot_DisallowTileCollision\n\n #_08FA76: CMP.w $0716\n #_08FA79: BCC Hookshot_AllowTileCollision\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_DisallowTileCollision", + "code": "Hookshot_DisallowTileCollision:\n #_08FA7B: SEP #$20\n\n #_08FA7D: PLY\n #_08FA7E: PLX\n\n #_08FA7F: SEC\n\n #_08FA80: RTS", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_AllowTileCollision", + "code": "Hookshot_AllowTileCollision:\n #_08FA81: SEP #$20\n\n #_08FA83: PLY\n #_08FA84: PLX\n\n #_08FA85: CLC\n\n #_08FA86: RTS", + "file": "bank_08.asm" + }, + { + "name": "Hookshot_CheckForTileAllowanceUnderworld", + "code": "Hookshot_CheckForTileAllowanceUnderworld:\n #_08FA87: REP #$20\n\n #_08FA89: LDA.w $0C72,X\n #_08FA8C: AND.w #$0002\n #_08FA8F: BNE .horizontal_direction\n\n; ---------------------------------------------------------\n\n.vertical_direction\n #_08FA91: LDA.b $00\n #_08FA93: AND.w #$01FF\n #_08FA96: CMP.w #$0004\n #_08FA99: BCC Hookshot_DisallowTileCollision\n\n #_08FA9B: CMP.w #$01E8\n #_08FA9E: BCS Hookshot_DisallowTileCollision\n\n #_08FAA0: BRA .continue_vertically\n\n; ---------------------------------------------------------\n\n.horizontal_direction\n #_08FAA2: LDA.b $02\n #_08FAA4: AND.w #$01FF\n #_08FAA7: CMP.w #$0004\n #_08FAAA: BCC Hookshot_DisallowTileCollision\n\n #_08FAAC: CMP.w #$01F0\n #_08FAAF: BCS Hookshot_DisallowTileCollision\n\n #_08FAB1: BRA .continue_horizontally\n\n; ---------------------------------------------------------\n\n.continue_vertically\n #_08FAB3: SEP #$20\n\n #_08FAB5: PLY\n #_08FAB6: PLX\n\n #_08FAB7: LDA.b $01\n #_08FAB9: AND.b #$02\n #_08FABB: STA.b $01\n\n #_08FABD: LDA.b $21\n #_08FABF: AND.b #$02\n #_08FAC1: CMP.b $01\n #_08FAC3: BEQ .allow\n\n; ---------------------------------------------------------\n\n.disallow_vertical\n #_08FAC5: SEC\n\n #_08FAC6: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_GetRadialProjection", + "code": "Ancilla_GetRadialProjection:\n #_08FADD: PHX\n\n #_08FADE: TAX\n\n #_08FADF: LDA.l .multiplier_y,X\n #_08FAE3: STA.w WRMPYA\n\n #_08FAE6: LDA.b $08\n #_08FAE8: STA.w WRMPYB\n\n #_08FAEB: LDA.l .meta_sign_y,X\n #_08FAEF: STA.b $02\n #_08FAF1: STZ.b $03\n\n #_08FAF3: LDA.w RDMPYL\n #_08FAF6: ASL A\n #_08FAF7: LDA.w RDMPYH\n\n #_08FAFA: ADC.b #$00\n #_08FAFC: STA.b $00\n #_08FAFE: STZ.b $01\n\n; ---------------------------------------------------------\n\n #_08FB00: LDA.l .multiplier_x,X\n #_08FB04: STA.w WRMPYA\n\n #_08FB07: LDA.b $08\n #_08FB09: STA.w WRMPYB\n\n #_08FB0C: LDA.l .meta_sign_x,X\n #_08FB10: STA.b $06\n #_08FB12: STZ.b $07\n\n #_08FB14: LDA.w RDMPYL\n #_08FB17: ASL A\n #_08FB18: LDA.w RDMPYH\n\n #_08FB1B: ADC.b #$00\n #_08FB1D: STA.b $04\n #_08FB1F: STZ.b $05\n\n #_08FB21: PLX\n\n #_08FB22: RTS", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_GetRadialProjection_long", + "code": "Ancilla_GetRadialProjection_long:\n #_08FB23: PHB\n #_08FB24: PHK\n #_08FB25: PLB\n\n #_08FB26: JSR Ancilla_GetRadialProjection\n\n #_08FB29: PLB\n\n #_08FB2A: RTL", + "file": "bank_08.asm" + }, + { + "name": "Ancilla_AllocateOAMFromRegion_A_or_D_or_F", + "code": "Ancilla_AllocateOAMFromRegion_A_or_D_or_F:\n #_08FB2B: LDY.w $0FB3\n #_08FB2E: BNE .consider_layer\n\n #_08FB30: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_08FB34: RTS", + "file": "bank_08.asm" + }, + { + "name": "BeamHit_OAMAdjustments", + "code": "BeamHit_OAMAdjustments:\n #_08FB44: JSR BeamHit_GetCoords\n\n #_08FB47: LDY.b #$00\n\n.next\n #_08FB49: PHY\n\n #_08FB4A: TYA\n #_08FB4B: LSR A\n #_08FB4C: LSR A\n #_08FB4D: TAY\n\n #_08FB4E: LDA.b $0B\n #_08FB50: BPL .skip_x_bit\n\n #_08FB52: LDA.b ($92),Y\n #_08FB54: AND.b #$02\n\n; ---------------------------------------------------------\n\n.skip_x_bit\n #_08FB56: STA.b ($92),Y\n\n #_08FB58: PLY\n\n #_08FB59: LDX.b #$00\n\n #_08FB5B: LDA.b ($90),Y\n #_08FB5D: SEC\n #_08FB5E: SBC.b $07\n #_08FB60: BPL .positive_x\n\n #_08FB62: DEX\n\n.positive_x\n #_08FB63: CLC\n #_08FB64: ADC.b $02\n #_08FB66: STA.b $04\n\n; ---------------------------------------------------------\n\n #_08FB68: TXA\n #_08FB69: ADC.b $03\n #_08FB6B: STA.b $05\n\n #_08FB6D: JSR BeamHit_GetTopXBit\n #_08FB70: BCC .x_on_screen\n\n #_08FB72: PHY\n\n #_08FB73: TYA\n #_08FB74: LSR A\n #_08FB75: LSR A\n #_08FB76: TAY\n\n #_08FB77: LDA.b ($92),Y\n #_08FB79: ORA.b #$01\n #_08FB7B: STA.b ($92),Y\n\n #_08FB7D: PLY\n\n; ---------------------------------------------------------\n\n.x_on_screen\n #_08FB7E: LDX.b #$00\n\n #_08FB80: INY\n\n #_08FB81: LDA.b ($90),Y\n #_08FB83: SEC\n #_08FB84: SBC.b $06\n #_08FB86: BPL .positive_y\n\n #_08FB88: DEX\n\n.positive_y\n #_08FB89: CLC\n #_08FB8A: ADC.b $00\n #_08FB8C: STA.b $09\n\n #_08FB8E: TXA\n #_08FB8F: ADC.b $01\n #_08FB91: STA.b $0A\n\n #_08FB93: JSR BeamHit_CheckOffscreen_Y\n #_08FB96: BCC .y_on_screen\n\n #_08FB98: LDA.b #$F0\n #_08FB9A: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n.y_on_screen\n #_08FB9C: INY\n #_08FB9D: INY\n #_08FB9E: INY\n\n #_08FB9F: DEC.b $08\n #_08FBA1: BPL .next\n\n #_08FBA3: BRL Ancilla_RestoreIndex\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "BeamHit_GetCoords", + "code": "BeamHit_GetCoords:\n #_08FBA6: STY.b $0B\n\n #_08FBA8: STA.b $08\n\n #_08FBAA: LDA.w $0BFA,X\n #_08FBAD: STA.b $00\n\n #_08FBAF: SEC\n #_08FBB0: SBC.b $E8\n #_08FBB2: STA.b $06\n\n #_08FBB4: LDA.w $0C0E,X\n #_08FBB7: STA.b $01\n\n #_08FBB9: LDA.w $0C04,X\n #_08FBBC: STA.b $02\n\n #_08FBBE: SEC\n #_08FBBF: SBC.b $E2\n #_08FBC1: STA.b $07\n\n #_08FBC3: LDA.w $0C18,X\n #_08FBC6: STA.b $03\n\n #_08FBC8: RTS", + "file": "bank_08.asm" + }, + { + "name": "BeamHit_GetTopXBit", + "code": "BeamHit_GetTopXBit:\n #_08FBC9: REP #$20\n\n #_08FBCB: LDA.b $04\n #_08FBCD: SEC\n #_08FBCE: SBC.b $E2\n #_08FBD0: CMP.w #$0100\n\n #_08FBD3: SEP #$20\n\n #_08FBD5: RTS", + "file": "bank_08.asm" + }, + { + "name": "BeamHit_CheckOffscreen_Y", + "code": "BeamHit_CheckOffscreen_Y:\n #_08FBD6: REP #$20\n\n #_08FBD8: LDA.b $09\n #_08FBDA: PHA\n\n #_08FBDB: CLC\n #_08FBDC: ADC.w #$0010\n\n #_08FBDF: STA.b $09\n #_08FBE1: SEC\n #_08FBE2: SBC.b $E8\n #_08FBE4: CMP.w #$0100\n\n #_08FBE7: PLA\n #_08FBE8: STA.b $09\n\n #_08FBEA: SEP #$20\n\n #_08FBEC: RTS", + "file": "bank_08.asm" + }, + { + "name": "QuakeDrawGFX", + "code": "QuakeDrawGFX:\n\n.group00_a\n #_08FBED: db $00, $F0, $00\n\n.group00_b\n #_08FBF0: db $00, $F0, $01\n\n; ---------------------------------------------------------\n\n.group01_a\n #_08FBF3: db $00, $F0, $02\n\n.group01_b\n #_08FBF6: db $00, $F0, $03\n\n; ---------------------------------------------------------\n\n.group02_a\n #_08FBF9: db $00, $F0, $43\n\n.group02_b\n #_08FBFC: db $00, $F0, $42\n\n; ---------------------------------------------------------\n\n.group03_a\n #_08FBFF: db $00, $F0, $41\n\n.group03_b\n #_08FC02: db $00, $F0, $40\n\n; ---------------------------------------------------------\n\n.group04_a\n #_08FC05: db $00, $F0, $40, $0E, $F8, $84\n\n.group04_b\n #_08FC0B: db $1D, $F8, $44, $0D, $F9, $84\n\n; ---------------------------------------------------------\n\n.group05_a\n #_08FC11: db $1F, $F9, $44, $2F, $FC, $84\n\n.group05_b\n #_08FC17: db $31, $F5, $06, $3F, $FB, $44, $2F, $FC\n #_08FC1F: db $84\n\n; ---------------------------------------------------------\n\n.group06_a\n #_08FC20: db $24, $EF, $08, $31, $F5, $06, $3F, $FB\n #_08FC28: db $44, $4E, $04, $08\n\n.group06_b\n #_08FC2C: db $16, $E1, $08, $24, $EF, $08, $4E, $04\n #_08FC34: db $08, $5D, $14, $08\n\n; ---------------------------------------------------------\n\n.group07_a\n #_08FC38: db $07, $D2, $08, $17, $D3, $48, $16, $E1\n #_08FC40: db $08, $5D, $14, $08, $5D, $24, $48\n\n.group07_b\n #_08FC47: db $F9, $C3, $08, $25, $C5, $48, $07, $D2\n #_08FC4F: db $08, $17, $D3, $48, $5D, $24, $48, $5D\n #_08FC57: db $34, $08\n\n; ---------------------------------------------------------\n\n.group08_a\n #_08FC59: db $EA, $B5, $08, $2F, $B6, $01, $F8, $C3\n #_08FC61: db $08, $24, $C4, $48, $5D, $34, $08, $6C\n #_08FC69: db $43, $08\n\n.group08_b\n #_08FC6B: db $DB, $A6, $08, $EA, $B5, $08, $2F, $B6\n #_08FC73: db $01, $3B, $C2, $81, $6C, $43, $08, $79\n #_08FC7B: db $50, $08\n\n; ---------------------------------------------------------\n\n.group09_a\n #_08FC7D: db $D4, $98, $C9, $DB, $A6, $08, $49, $B6\n #_08FC85: db $48, $3B, $C2, $81, $79, $50, $08\n\n.group09_b\n #_08FC8C: db $D4, $88, $09, $D4, $98, $C9, $57, $A7\n #_08FC94: db $48, $49, $B6, $48\n\n; ---------------------------------------------------------\n\n.group0A_a\n #_08FC98: db $D4, $88, $09, $66, $98, $48, $57, $A7\n #_08FCA0: db $48\n\n.group0A_b\n #_08FCA1: db $66, $98, $48, $57, $A7, $48\n\n; ---------------------------------------------------------\n\n.group0B_a\n #_08FCA7: db $70, $8C, $48, $66, $98, $48\n\n.group0B_b\n #_08FCAD: db $70, $8C, $48\n\n; ---------------------------------------------------------\n\n.group0C_a\n #_08FCB0: db $F3, $F0, $00\n\n.group0C_b\n #_08FCB3: db $F3, $F0, $01\n\n; ---------------------------------------------------------\n\n.group0D_a\n #_08FCB6: db $F3, $F0, $02\n\n.group0D_b\n #_08FCB9: db $F3, $F0, $03\n\n; ---------------------------------------------------------\n\n.group0E_a\n #_08FCBC: db $F5, $F0, $43\n\n.group0E_b\n #_08FCBF: db $F5, $F0, $42\n\n; ---------------------------------------------------------\n\n.group0F_a\n #_08FCC2: db $F5, $F0, $41\n\n.group0F_b\n #_08FCC5: db $F5, $F0, $40, $E8, $F6, $04\n\n; ---------------------------------------------------------\n\n.group10_a\n #_08FCCB: db $DA, $EE, $08, $E8, $F6, $04, $D8, $F9\n #_08FCD3: db $C4\n\n.group10_b\n #_08FCD4: db $D3, $DF, $C9, $DA, $EE, $08, $C7, $F9\n #_08FCDC: db $04, $D8, $F9, $C4\n\n; ---------------------------------------------------------\n\n.group11_a\n #_08FCE0: db $D0, $D3, $07, $D3, $DF, $C9, $C7, $F9\n #_08FCE8: db $04, $B9, $02, $48\n\n.group11_b\n #_08FCEC: db $D0, $D3, $06, $B9, $02, $48, $BA, $12\n #_08FCF4: db $08\n\n; ---------------------------------------------------------\n\n.group12_a\n #_08FCF5: db $D0, $D3, $05, $BA, $12, $08, $C8, $21\n #_08FCFD: db $08\n\n.group12_b\n #_08FCFE: db $D0, $D3, $07, $CA, $22, $08, $CA, $31\n #_08FD06: db $88\n\n; ---------------------------------------------------------\n\n.group13_a\n #_08FD07: db $D0, $D3, $06, $CA, $31, $88, $BB, $40\n #_08FD0F: db $88\n\n.group13_b\n #_08FD10: db $D0, $D3, $07, $BB, $40, $88, $AB, $49\n #_08FD18: db $C4\n\n; ---------------------------------------------------------\n\n.group14_a\n #_08FD19: db $D0, $D3, $05, $9B, $49, $04, $AB, $49\n #_08FD21: db $C4\n\n.group14_b\n #_08FD22: db $C4, $CB, $08, $D0, $D3, $06, $9B, $49\n #_08FD2A: db $04, $8C, $4D, $C4\n\n; ---------------------------------------------------------\n\n.group15_a\n #_08FD2E: db $B5, $BD, $08, $C4, $CB, $08, $80, $4C\n #_08FD36: db $04, $8C, $4D, $C4\n\n.group15_b\n #_08FD3A: db $A6, $AE, $08, $B5, $BD, $08, $80, $4C\n #_08FD42: db $04\n\n; ---------------------------------------------------------\n\n.group16_a\n #_08FD43: db $97, $9F, $08, $A6, $AE, $08\n\n.group16_b\n #_08FD49: db $88, $91, $08, $97, $9F, $08\n\n; ---------------------------------------------------------\n\n.group17_a\n #_08FD4F: db $88, $91, $08\n\n.group17_b\n #_08FD52: db $00, $FB, $0A\n\n; ---------------------------------------------------------\n\n.group18_a\n #_08FD55: db $00, $FB, $0B\n\n.group18_b\n #_08FD58: db $02, $FD, $0C\n\n; ---------------------------------------------------------\n\n.group19_a\n #_08FD5B: db $01, $FD, $0D\n\n.group19_b\n #_08FD5E: db $00, $FD, $8D\n\n; ---------------------------------------------------------\n\n.group1A_a\n #_08FD61: db $01, $FD, $8C\n\n.group1A_b\n #_08FD64: db $01, $FD, $8B\n\n; ---------------------------------------------------------\n\n.group1B_a\n #_08FD67: db $01, $FD, $8A, $FA, $0C, $89\n\n.group1B_b\n #_08FD6D: db $FA, $0C, $89, $F6, $1C, $C9\n\n; ---------------------------------------------------------\n\n.group1C_a\n #_08FD73: db $F6, $1C, $49, $F8, $2C, $89\n\n.group1C_b\n #_08FD79: db $F8, $2C, $89, $F6, $38, $02\n\n; ---------------------------------------------------------\n\n.group1D_a\n #_08FD7F: db $F6, $38, $02, $E9, $46, $48, $05, $46\n #_08FD87: db $08\n\n.group1D_b\n #_08FD88: db $E9, $46, $48, $05, $46, $08, $DA, $55\n #_08FD90: db $48, $13, $55, $08\n\n; ---------------------------------------------------------\n\n.group1E_a\n #_08FD94: db $DA, $55, $48, $13, $55, $08, $CC, $63\n #_08FD9C: db $48, $21, $65, $08\n\n.group1E_b\n #_08FDA0: db $CC, $63, $48, $21, $65, $08, $BE, $71\n #_08FDA8: db $48, $2F, $73, $08\n\n; ---------------------------------------------------------\n\n.group1F_a\n #_08FDAC: db $BE, $71, $48, $2F, $73, $08\n\n.group1F_b\n.group20_a\n #_08FDB2: db $A0, $70, $20\n\n.group20_b\n #_08FDB5: db $A0, $70, $21\n\n; ---------------------------------------------------------\n\n.group21_a\n #_08FDB8: db $A0, $70, $66\n\n.group21_b\n #_08FDBB: db $A0, $70, $22\n\n; ---------------------------------------------------------\n\n.group22_a\n #_08FDBE: db $A0, $70, $23\n\n.group22_b\n #_08FDC1: db $A0, $70, $63\n\n; ---------------------------------------------------------\n\n.group23_a\n #_08FDC4: db $A0, $70, $62\n\n.group23_b\n #_08FDC7: db $A0, $70, $26\n\n; ---------------------------------------------------------\n\n.group24_a\n #_08FDCA: db $A0, $70, $27, $AA, $7C, $28\n\n.group24_b\n #_08FDD0: db $AA, $7C, $28, $B8, $8B, $28\n\n; ---------------------------------------------------------\n\n.group25_a\n #_08FDD6: db $B8, $8B, $28, $C5, $9A, $A1\n\n.group25_b\n #_08FDDC: db $C5, $9A, $A1, $D4, $8C, $68\n\n; ---------------------------------------------------------\n\n.group26_a\n #_08FDE2: db $D4, $8C, $68, $E3, $7E, $68\n\n.group26_b\n #_08FDE8: db $E3, $7E, $68\n\n; ---------------------------------------------------------\n\n.group27_a\n #_08FDEB: db $ED, $7D, $C5\n\n.group27_b\n #_08FDEE: db $90, $60, $2A\n\n; ---------------------------------------------------------\n\n.group28_a\n #_08FDF1: db $90, $60, $2B\n\n.group28_b\n #_08FDF4: db $90, $60, $2C\n\n; ---------------------------------------------------------\n\n.group29_a\n #_08FDF7: db $90, $60, $2D\n\n.group29_b\n #_08FDFA: db $89, $52, $29, $90, $60, $2A\n\n; ---------------------------------------------------------\n\n.group2A_a\n #_08FE00: db $85, $42, $E9, $89, $52, $29\n\n.group2A_b\n #_08FE06: db $87, $32, $29, $85, $42, $E9\n\n; ---------------------------------------------------------\n\n.group2B_a\n #_08FE0C: db $7E, $22, $28, $8D, $22, $68, $87, $32\n #_08FE14: db $29\n\n.group2B_b\n #_08FE15: db $96, $12, $A9, $6F, $13, $28, $7E, $22\n #_08FE1D: db $28, $8D, $22, $68\n\n; ---------------------------------------------------------\n\n.group2C_a\n #_08FE21: db $9C, $02, $68, $66, $04, $E9, $96, $12\n #_08FE29: db $A9, $6F, $13, $28\n\n.group2C_b\n #_08FE2D: db $A5, $F2, $A9, $5F, $F5, $28, $9C, $02\n #_08FE35: db $68, $66, $04, $E9\n\n; ---------------------------------------------------------\n\n.group2D_a\n #_08FE39: db $60, $70, $60\n\n.group2D_b\n #_08FE3C: db $60, $70, $61\n\n; ---------------------------------------------------------\n\n.group2E_a\n #_08FE3F: db $60, $70, $26\n\n.group2E_b\n #_08FE42: db $60, $70, $62\n\n; ---------------------------------------------------------\n\n.group2F_a\n #_08FE45: db $60, $70, $63\n\n.group2F_b\n #_08FE48: db $60, $70, $23\n\n; ---------------------------------------------------------\n\n.group30_a\n #_08FE4B: db $60, $70, $22\n\n.group30_b\n #_08FE4E: db $60, $70, $66\n\n; ---------------------------------------------------------\n\n.group31_a\n #_08FE51: db $55, $6F, $E8, $60, $70, $67\n\n.group31_b\n #_08FE57: db $46, $68, $24, $55, $6F, $E8\n\n; ---------------------------------------------------------\n\n.group32_a\n #_08FE5D: db $46, $68, $24, $36, $6C, $E4\n\n.group32_b\n #_08FE63: db $28, $64, $28, $26, $6B, $24, $36, $6C\n #_08FE6B: db $E4\n\n; ---------------------------------------------------------\n\n.group33_a\n #_08FE6C: db $19, $55, $28, $28, $64, $28, $26, $6B\n #_08FE74: db $24, $16, $6E, $E4\n\n.group33_b\n #_08FE78: db $0B, $46, $28, $19, $55, $28, $07, $6C\n #_08FE80: db $24, $16, $6E, $E4\n\n; ---------------------------------------------------------\n\n.group34_a\n #_08FE84: db $0B, $46, $28, $07, $6C, $24\n\n.group34_b\n #_08FE8A: db $70, $70, $2A\n\n; ---------------------------------------------------------\n\n.group35_a\n #_08FE8D: db $70, $70, $2B\n\n.group35_b\n #_08FE90: db $70, $70, $2C\n\n; ---------------------------------------------------------\n\n.group36_a\n #_08FE93: db $70, $70, $2D\n\n.group36_b\n #_08FE96: db $70, $70, $2A, $6C, $7D, $29\n\n; ---------------------------------------------------------\n\n.group37_a\n #_08FE9C: db $6C, $7D, $29, $72, $8C, $28\n\n.group37_b\n #_08FEA2: db $72, $8C, $28, $7C, $9C, $29\n\n; ---------------------------------------------------------\n\n.group38_a\n #_08FEA8: db $7C, $9C, $29, $7B, $AC, $E9\n\n.group38_b\n #_08FEAE: db $7B, $AC, $E9, $75, $B6, $E4, $84, $BB\n #_08FEB6: db $28\n\n; ---------------------------------------------------------\n\n.group39_a\n #_08FEB7: db $75, $B6, $E4, $84, $BB, $28, $67, $BD\n #_08FEBF: db $68, $92, $CA, $28\n\n.group39_b\n #_08FEC3: db $67, $BD, $68, $92, $CA, $28, $5F, $CC\n #_08FECB: db $69, $9A, $D9, $29\n\n; ---------------------------------------------------------\n\n.group3A_a\n #_08FECF: db $5F, $CC, $69, $9A, $D9, $29, $60, $DC\n #_08FED7: db $E9, $9A, $E8, $E9\n\n.group3A_b\n #_08FEDB: db $60, $DC, $E9, $9A, $E8, $E9\n\n; ---------------------------------------------------------\n\n.group3B_a\n #_08FEE1: db $85, $F2, $29, $8D, $F2, $2E, $31, $F4\n #_08FEE9: db $28\n\n.group3B_b\n\n; =========================================================\n", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_InitialBoltPointers", + "code": "QuakeSpell_InitialBoltPointers:\n #_08FEEA: dw QuakeDrawGFX_group00_a, QuakeDrawGFX_group00_b\n #_08FEEE: dw QuakeDrawGFX_group01_a, QuakeDrawGFX_group01_b\n #_08FEF2: dw QuakeDrawGFX_group02_a, QuakeDrawGFX_group02_b\n #_08FEF6: dw QuakeDrawGFX_group03_a, QuakeDrawGFX_group03_b\n #_08FEFA: dw QuakeDrawGFX_group04_a, QuakeDrawGFX_group04_b\n #_08FEFE: dw QuakeDrawGFX_group05_a, QuakeDrawGFX_group05_b\n #_08FF02: dw QuakeDrawGFX_group06_a, QuakeDrawGFX_group06_b\n #_08FF06: dw QuakeDrawGFX_group07_a, QuakeDrawGFX_group07_b\n #_08FF0A: dw QuakeDrawGFX_group08_a, QuakeDrawGFX_group08_b\n #_08FF0E: dw QuakeDrawGFX_group09_a, QuakeDrawGFX_group09_b\n #_08FF12: dw QuakeDrawGFX_group0A_a, QuakeDrawGFX_group0A_b\n #_08FF16: dw QuakeDrawGFX_group0B_a, QuakeDrawGFX_group0B_b\n #_08FF1A: dw QuakeDrawGFX_group0C_a, QuakeDrawGFX_group0C_b\n #_08FF1E: dw QuakeDrawGFX_group0D_a, QuakeDrawGFX_group0D_b\n #_08FF22: dw QuakeDrawGFX_group0E_a, QuakeDrawGFX_group0E_b\n #_08FF26: dw QuakeDrawGFX_group0F_a, QuakeDrawGFX_group0F_b\n #_08FF2A: dw QuakeDrawGFX_group10_a, QuakeDrawGFX_group10_b\n #_08FF2E: dw QuakeDrawGFX_group11_a, QuakeDrawGFX_group11_b\n #_08FF32: dw QuakeDrawGFX_group12_a, QuakeDrawGFX_group12_b\n #_08FF36: dw QuakeDrawGFX_group13_a, QuakeDrawGFX_group13_b\n #_08FF3A: dw QuakeDrawGFX_group14_a, QuakeDrawGFX_group14_b\n #_08FF3E: dw QuakeDrawGFX_group15_a, QuakeDrawGFX_group15_b\n #_08FF42: dw QuakeDrawGFX_group16_a, QuakeDrawGFX_group16_b\n #_08FF46: dw QuakeDrawGFX_group17_a, QuakeDrawGFX_group17_b\n #_08FF4A: dw QuakeDrawGFX_group18_a, QuakeDrawGFX_group18_b\n #_08FF4E: dw QuakeDrawGFX_group19_a, QuakeDrawGFX_group19_b\n #_08FF52: dw QuakeDrawGFX_group1A_a, QuakeDrawGFX_group1A_b\n #_08FF56: dw QuakeDrawGFX_group1B_a, QuakeDrawGFX_group1B_b\n #_08FF5A: dw QuakeDrawGFX_group1C_a, QuakeDrawGFX_group1C_b\n #_08FF5E: dw QuakeDrawGFX_group1D_a, QuakeDrawGFX_group1D_b\n #_08FF62: dw QuakeDrawGFX_group1E_a, QuakeDrawGFX_group1E_b\n #_08FF66: dw QuakeDrawGFX_group1F_a, QuakeDrawGFX_group1F_b\n\n; ---------------------------------------------------------\n", + "file": "bank_08.asm" + }, + { + "name": "QuakeSpell_SpreadBoltPointers", + "code": "QuakeSpell_SpreadBoltPointers:\n #_08FF6A: dw QuakeDrawGFX_group20_a, QuakeDrawGFX_group20_b\n #_08FF6E: dw QuakeDrawGFX_group21_a, QuakeDrawGFX_group21_b\n #_08FF72: dw QuakeDrawGFX_group22_a, QuakeDrawGFX_group22_b\n #_08FF76: dw QuakeDrawGFX_group23_a, QuakeDrawGFX_group23_b\n #_08FF7A: dw QuakeDrawGFX_group24_a, QuakeDrawGFX_group24_b\n #_08FF7E: dw QuakeDrawGFX_group25_a, QuakeDrawGFX_group25_b\n #_08FF82: dw QuakeDrawGFX_group26_a, QuakeDrawGFX_group26_b\n #_08FF86: dw QuakeDrawGFX_group27_a, QuakeDrawGFX_group27_b\n #_08FF8A: dw QuakeDrawGFX_group28_a, QuakeDrawGFX_group28_b\n #_08FF8E: dw QuakeDrawGFX_group29_a, QuakeDrawGFX_group29_b\n #_08FF92: dw QuakeDrawGFX_group2A_a, QuakeDrawGFX_group2A_b\n #_08FF96: dw QuakeDrawGFX_group2B_a, QuakeDrawGFX_group2B_b\n #_08FF9A: dw QuakeDrawGFX_group2C_a, QuakeDrawGFX_group2C_b\n #_08FF9E: dw QuakeDrawGFX_group2D_a, QuakeDrawGFX_group2D_b\n #_08FFA2: dw QuakeDrawGFX_group2E_a, QuakeDrawGFX_group2E_b\n #_08FFA6: dw QuakeDrawGFX_group2F_a, QuakeDrawGFX_group2F_b\n #_08FFAA: dw QuakeDrawGFX_group30_a, QuakeDrawGFX_group30_b\n #_08FFAE: dw QuakeDrawGFX_group31_a, QuakeDrawGFX_group31_b\n #_08FFB2: dw QuakeDrawGFX_group32_a, QuakeDrawGFX_group32_b\n #_08FFB6: dw QuakeDrawGFX_group33_a, QuakeDrawGFX_group33_b\n #_08FFBA: dw QuakeDrawGFX_group34_a, QuakeDrawGFX_group34_b\n #_08FFBE: dw QuakeDrawGFX_group35_a, QuakeDrawGFX_group35_b\n #_08FFC2: dw QuakeDrawGFX_group36_a, QuakeDrawGFX_group36_b\n #_08FFC6: dw QuakeDrawGFX_group37_a, QuakeDrawGFX_group37_b\n #_08FFCA: dw QuakeDrawGFX_group38_a, QuakeDrawGFX_group38_b\n #_08FFCE: dw QuakeDrawGFX_group39_a, QuakeDrawGFX_group39_b\n #_08FFD2: dw QuakeDrawGFX_group3A_a, QuakeDrawGFX_group3A_b\n #_08FFD6: dw QuakeDrawGFX_group3B_a, QuakeDrawGFX_group3B_b\n\n; =========================================================\n; FREE ROM: 0x26\n; =========================================================", + "file": "bank_08.asm" + }, + { + "name": "BottleMerchant_DetectFish", + "code": "BottleMerchant_DetectFish:\n #_068000: PHB\n #_068001: PHK\n #_068002: PLB\n\n #_068003: LDY.b #$0F\n\n.next\n #_068005: LDA.w $0DD0,Y\n #_068008: BEQ .inactive\n\n #_06800A: LDA.w $0E20,Y\n #_06800D: CMP.b #$D2 ; SPRITE D2\n #_06800F: BEQ .is_fish\n\n.inactive\n #_068011: DEY\n #_068012: BPL .next\n\n #_068014: PLB\n\n #_068015: RTL", + "file": "bank_06.asm" + }, + { + "name": "BottleMerchant_BuyFish", + "code": "BottleMerchant_BuyFish:\n #_068054: PHB\n #_068055: PHK\n #_068056: PLB\n\n #_068057: LDA.b #$13 ; SFX3.13\n #_068059: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06805D: LDA.b #$04\n #_06805F: STA.w $0FB5\n\n.next_gift\n #_068062: LDY.w $0FB5\n\n #_068065: LDA.w .item_id,Y\n #_068068: JSL Sprite_SpawnDynamically\n #_06806C: BMI .skip\n\n #_06806E: JSL Sprite_SetSpawnedCoordinates\n\n #_068072: LDA.b $00\n #_068074: CLC\n #_068075: ADC.b #$04\n #_068077: STA.w $0D10,Y\n\n #_06807A: LDA.b #$FF\n #_06807C: STA.w $0B58,Y\n\n #_06807F: PHX\n\n #_068080: LDX.w $0FB5\n\n #_068083: LDA.w .speed_x,X\n #_068086: STA.w $0D50,Y\n\n #_068089: LDA.w .speed_y,X\n #_06808C: STA.w $0D40,Y\n\n #_06808F: LDA.b #$20\n #_068091: STA.w $0F80,Y\n #_068094: STA.w $0F10,Y\n\n #_068097: PLX\n\n.skip\n #_068098: DEC.w $0FB5\n #_06809B: BPL .next_gift\n\n #_06809D: PLB\n\n #_06809E: RTL", + "file": "bank_06.asm" + }, + { + "name": "Boomerang_CheatWhenNoOnesLooking", + "code": "Boomerang_CheatWhenNoOnesLooking:\n #_06809F: LDA.w $0C04,X\n #_0680A2: STA.b $02\n\n #_0680A4: LDA.w $0C18,X\n #_0680A7: STA.b $03\n\n #_0680A9: LDA.w $0BFA,X\n #_0680AC: STA.b $04\n\n #_0680AE: LDA.w $0C0E,X\n #_0680B1: STA.b $05\n\n #_0680B3: REP #$20\n\n #_0680B5: LDY.b #$70\n\n #_0680B7: LDA.b $22\n #_0680B9: SEC\n #_0680BA: SBC.b $02\n\n #_0680BC: CLC\n #_0680BD: ADC.w #$00F0\n\n #_0680C0: CMP.w #$01E0\n #_0680C3: BPL .positive_speed_x\n\n #_0680C5: LDY.b #$90\n\n.positive_speed_x\n #_0680C7: BCC .nowdoY\n\n #_0680C9: STY.b $01\n\n #_0680CB: BRA .done\n\n.nowdoY\n #_0680CD: LDY.b #$70\n\n #_0680CF: LDA.b $20\n #_0680D1: SEC\n #_0680D2: SBC.b $04\n\n #_0680D4: CLC\n #_0680D5: ADC.w #$00F0\n\n #_0680D8: CMP.w #$01E0\n #_0680DB: BPL .positive_Y_speed\n\n #_0680DD: LDY.b #$90\n\n.positive_Y_speed\n #_0680DF: BCC .done\n\n #_0680E1: STY.b $00\n\n.done\n #_0680E3: SEP #$20\n\n #_0680E5: RTL", + "file": "bank_06.asm" + }, + { + "name": "Prepare_ApplyRumbleToSprites", + "code": "Prepare_ApplyRumbleToSprites:\n #_0680FA: PHB\n #_0680FB: PHK\n #_0680FC: PLB\n\n #_0680FD: LDA.b $2F\n #_0680FF: LSR A\n #_068100: TAY\n\n #_068101: LDA.b $22\n #_068103: CLC\n #_068104: ADC.w .offset_x_low,Y\n #_068107: STA.b $00\n\n #_068109: LDA.b $23\n #_06810B: ADC.w .offset_x_high,Y\n #_06810E: STA.b $08\n\n #_068110: LDA.b $20\n #_068112: ADC.w .offset_y_low,Y\n #_068115: STA.b $01\n\n #_068117: LDA.b $21\n #_068119: ADC.w .offset_y_high,Y\n #_06811C: STA.b $09\n\n #_06811E: LDA.w .hitbox_w,Y\n #_068121: STA.b $02\n\n #_068123: LDA.w .hitbox_h,Y\n #_068126: STA.b $03\n\n #_068128: JSR ApplyRumbleToSprites\n\n #_06812B: PLB\n\n #_06812C: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnImmediatelySmashedTerrain", + "code": "Sprite_SpawnImmediatelySmashedTerrain:\n #_06812D: LDY.w $0314\n #_068130: PHY\n\n #_068131: LDY.w $0FB2\n #_068134: PHY\n\n #_068135: PHB\n #_068136: PHK\n #_068137: PLB\n\n #_068138: JSL Sprite_SpawnThrowableTerrain_silently\n #_06813C: BMI .fail\n\n #_06813E: JSR ThrowableScenery_TransmuteToDebris\n\n.fail\n #_068141: PLB\n\n #_068142: PLA\n #_068143: STA.w $0FB2\n\n #_068146: PLA\n #_068147: STA.w $0314\n\n #_06814A: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnThrowableTerrain", + "code": "Sprite_SpawnThrowableTerrain:\n #_06814B: PHA\n\n #_06814C: JSL Link_CalculateSFXPan\n #_068150: ORA.b #$1D ; SFX2.1D\n #_068152: STA.w $012E\n\n #_068155: PLA\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnThrowableTerrain_silently", + "code": "Sprite_SpawnThrowableTerrain_silently:\n #_068156: LDX.b #$0F\n\n.next_slot\n #_068158: LDY.w $0DD0,X\n #_06815B: BEQ .free_slot\n\n #_06815D: DEX\n #_06815E: BPL .next_slot\n\n #_068160: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnSecret_fastexit", + "code": "Sprite_SpawnSecret_fastexit:\n #_068262: CLC\n\n #_068263: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnSecret", + "code": "Sprite_SpawnSecret:\n #_068264: LDA.b $1B\n #_068266: BNE .indoors\n\n #_068268: JSL GetRandomNumber\n #_06826C: AND.b #$08\n #_06826E: BNE .fastexit\n\n.indoors\n #_068270: LDY.w $0B9C\n #_068273: BEQ .fastexit\n\n #_068275: CPY.b #$04\n #_068277: BNE .not_random_bush\n\n #_068279: JSL GetRandomNumber\n #_06827D: AND.b #$03\n #_06827F: CLC\n #_068280: ADC.b #$13\n #_068282: TAY\n\n.not_random_bush\n #_068283: STY.b $0D\n\n #_068285: LDA.w .ID-1,Y\n #_068288: BEQ .fastexit\n\n #_06828A: JSL Sprite_SpawnDynamically\n #_06828E: BMI .fastexit\n\n; ---------------------------------------------------------\n\n #_068290: PHX\n\n #_068291: LDX.b $0D\n\n #_068293: LDA.w .AI2,X\n #_068296: STA.w $0D80,Y\n\n #_068299: LDA.w .ignore_ancillae,X\n #_06829C: STA.w $0BA0,Y\n\n #_06829F: LDA.w .jump_velocity,X\n #_0682A2: STA.w $0F80,Y\n\n #_0682A5: LDA.b $00\n #_0682A7: CLC\n #_0682A8: ADC.w .offset_x,X\n #_0682AB: STA.w $0D10,Y\n\n #_0682AE: LDA.b $01\n #_0682B0: ADC.b #$00\n #_0682B2: STA.w $0D30,Y\n\n #_0682B5: LDA.b $02\n #_0682B7: STA.w $0D00,Y\n\n #_0682BA: LDA.b $03\n #_0682BC: STA.w $0D20,Y\n\n #_0682BF: LDA.b $04\n #_0682C1: STA.w $0F70,Y\n\n #_0682C4: LDA.b #$00\n #_0682C6: STA.w $0DC0,Y\n\n #_0682C9: LDA.b #$20\n #_0682CB: STA.w $0F10,Y\n\n #_0682CE: LDA.b #$30\n #_0682D0: STA.w $0E10,Y\n\n #_0682D3: LDX.w $0E20,Y\n #_0682D6: CPX.b #$E4 ; SPRITE E4\n #_0682D8: BNE .not_key\n\n #_0682DA: PHX\n\n #_0682DB: TYX\n\n #_0682DC: JSR SpritePrep_SmallKey\n\n #_0682DF: PLX\n\n; ---------------------------------------------------------\n\n.not_key\n #_0682E0: CPX.b #$0B ; SPRITE 0B\n #_0682E2: BNE .not_cucco\n\n #_0682E4: LDA.b #$30 ; SFX2.30\n #_0682E6: STA.w $012E\n\n #_0682E9: LDA.w $048E\n #_0682EC: CMP.b #$01 ; ROOM 0101\n #_0682EE: BNE .not_cucco\n\n #_0682F0: STA.w $0E30,Y\n\n.not_cucco\n #_0682F3: CPX.b #$42 ; SPRITE 42\n #_0682F5: BEQ .guard\n\n #_0682F7: CPX.b #$41 ; SPRITE 41\n #_0682F9: BEQ .guard\n\n #_0682FB: CPX.b #$3E ; SPRITE 3E\n #_0682FD: BNE .not_hoarder\n\n #_0682FF: LDA.b #$09\n #_068301: STA.w $0F50,Y\n\n #_068304: BRA .done\n\n; ---------------------------------------------------------\n\n.guard\n #_068306: LDA.b #$04 ; SFX3.04\n #_068308: STA.w $012F\n\n #_06830B: LDA.b #$00\n #_06830D: STA.w $0CE2,Y\n\n #_068310: LDA.b #$A0\n #_068312: STA.w $0EF0,Y\n\n #_068315: BRA .last_check\n\n; ---------------------------------------------------------\n\n.not_hoarder\n #_068317: LDA.b #$FF\n #_068319: STA.w $0B58,Y\n\n.last_check\n #_06831C: CPX.b #$79 ; SPRITE 79\n #_06831E: BNE .done\n\n #_068320: LDA.b #$20\n #_068322: STA.w $0D90,Y\n\n; ---------------------------------------------------------\n\n.done\n #_068325: SEC\n\n #_068326: PLX\n\n #_068327: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Main", + "code": "Sprite_Main:\n #_068328: LDA.b $1B\n #_06832A: BNE .indoors\n\n #_06832C: STZ.w $0C7C\n #_06832F: STZ.w $0C7D\n #_068332: STZ.w $0C7E\n #_068335: STZ.w $0C7F\n #_068338: STZ.w $0C80\n\n #_06833B: JSL Sprite_ProximityActivation\n\n; ---------------------------------------------------------\n\n.indoors\n #_06833F: PHB\n #_068340: PHK\n #_068341: PLB\n\n #_068342: LDY.b #$00\n\n #_068344: LDA.l $7EF3CA\n #_068348: BEQ .lightworld\n\n #_06834A: INY\n\n.lightworld\n #_06834B: STY.w $0FFF\n\n #_06834E: LDA.b $11\n #_068350: BNE .dont_reset_drag\n\n #_068352: STZ.w $0B7C\n #_068355: STZ.w $0B7D\n #_068358: STZ.w $0B7E\n #_06835B: STZ.w $0B7F\n\n; ---------------------------------------------------------\n\n.dont_reset_drag\n #_06835E: JSR OAM_ResetRegionBases\n #_068361: JSL Garnish_ExecuteUpperSlots_long\n #_068365: JSL Follower_Main\n\n #_068369: LDA.w $0314\n #_06836C: STA.w $0FB2\n\n #_06836F: STZ.w $0314\n\n #_068372: LDA.b #$80\n #_068374: STA.w $0FAB\n\n #_068377: LDA.b $47\n #_068379: AND.b #$7F\n #_06837B: BEQ .repulse_timer_over\n\n #_06837D: DEC.b $47\n #_06837F: BRA .continue\n\n; ---------------------------------------------------------\n\n.repulse_timer_over\n #_068381: STZ.b $47\n\n.continue\n #_068383: STZ.w $0379\n #_068386: STZ.w $0377\n #_068389: STZ.w $0B7B\n\n #_06838C: LDA.w $0FDC\n #_06838F: BEQ .alert_timer_over\n\n #_068391: DEC.w $0FDC\n\n; ---------------------------------------------------------\n\n.alert_timer_over\n #_068394: JSL Ancilla_Main\n #_068398: JSL Overlord_Main\n\n #_06839C: STZ.w $0B9A\n\n #_06839F: LDX.b #$0F\n\n.next_sprite\n #_0683A1: STX.w $0FA0\n\n #_0683A4: JSR Sprite_ExecuteSingle\n\n #_0683A7: DEX\n #_0683A8: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_0683AA: JSL Garnish_ExecuteLowerSlots_long\n\n #_0683AE: STZ.w $069F\n #_0683B1: STZ.w $069E\n\n #_0683B4: PLB\n\n #_0683B5: JSL ExecuteCachedSprites\n\n #_0683B9: LDA.w $0AAA\n #_0683BC: BEQ .exit\n\n #_0683BE: STA.w $0FC6\n\n.exit\n #_0683C1: RTL", + "file": "bank_06.asm" + }, + { + "name": "NRURURU_bounce", + "code": "NRURURU_bounce:\n #_0683C2: JSL NRURURU\n\n #_0683C6: RTL", + "file": "bank_06.asm" + }, + { + "name": "OAM_ResetRegionBases", + "code": "OAM_ResetRegionBases:\n #_0683D3: LDY.b #$00\n\n #_0683D5: REP #$20\n\n.next\n #_0683D7: LDA.w .addresses,Y\n #_0683DA: STA.w $0FE0,Y\n\n #_0683DD: INY\n #_0683DE: INY\n #_0683DF: CPY.b #$0B\n #_0683E1: BCC .next\n\n #_0683E3: SEP #$20\n\n #_0683E5: RTS", + "file": "bank_06.asm" + }, + { + "name": "CheckIfHitBoxesOverlap_long", + "code": "CheckIfHitBoxesOverlap_long:\n #_0683E6: JSR CheckIfHitBoxesOverlap\n\n #_0683E9: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SetupHitbox_long", + "code": "Sprite_SetupHitbox_long:\n #_0683EA: PHB\n #_0683EB: PHK\n #_0683EC: PLB\n\n #_0683ED: JSR Sprite_SetupHitBox\n\n #_0683F0: PLB\n\n #_0683F1: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_TimersAndOAM", + "code": "Sprite_TimersAndOAM:\n #_0683F2: JSR Sprite_Get16BitCoords\n\n #_0683F5: LDA.w $0E40,X\n #_0683F8: AND.b #$1F\n #_0683FA: INC A\n\n #_0683FB: ASL A\n #_0683FC: ASL A\n\n #_0683FD: LDY.w $0FB3\n #_068400: BEQ .use_regionA\n\n #_068402: LDY.w $0F20,X\n #_068405: BEQ .use_regionD\n\n #_068407: JSL SpriteDraw_AllocateOAMFromRegionF\n #_06840B: BRA .oam_done\n\n.use_regionD\n #_06840D: JSL SpriteDraw_AllocateOAMFromRegionD\n #_068411: BRA .oam_done\n\n.use_regionA\n #_068413: JSL SpriteDraw_AllocateOAMFromRegionA\n\n.oam_done\n #_068417: LDA.b $11\n #_068419: ORA.w $0FC1\n #_06841C: BEQ .timers_ago\n\n #_06841E: JMP.w .handle_linkhop\n\n; ---------------------------------------------------------\n\n.timers_ago\n #_068421: LDA.w $0DF0,X\n #_068424: BEQ .skip_timer0\n\n #_068426: DEC.w $0DF0,X\n\n.skip_timer0\n #_068429: LDA.w $0E00,X\n #_06842C: BEQ .skip_timer1\n\n #_06842E: DEC.w $0E00,X\n\n.skip_timer1\n #_068431: LDA.w $0E10,X\n #_068434: BEQ .skip_timer2\n\n #_068436: DEC.w $0E10,X\n\n.skip_timer2\n #_068439: LDA.w $0EE0,X\n #_06843C: BEQ .skip_timer3\n\n #_06843E: DEC.w $0EE0,X\n\n.skip_timer3\n #_068441: LDA.w $0EF0,X\n #_068444: AND.b #$7F\n #_068446: BEQ .skip_hit_timer\n\n #_068448: LDY.w $0DD0,X\n #_06844B: CPY.b #$09\n #_06844D: BCC .no_damage\n\n #_06844F: CMP.b #$1F\n #_068451: BNE .delay_damage\n\n; ---------------------------------------------------------\n\n #_068453: PHA\n\n #_068454: LDA.w $0E20,X\n #_068457: CMP.b #$7A ; SPRITE 7A\n #_068459: BNE .not_agahnim2\n\n #_06845B: LDA.w $0FFF\n #_06845E: BNE .not_agahnim2\n\n #_068460: LDA.w $0E50,X\n #_068463: SEC\n #_068464: SBC.w $0CE2,X\n\n #_068467: BEQ .aga2_message\n #_068469: BCS .not_agahnim2\n\n.aga2_message\n #_06846B: LDA.b #$40 ; MESSAGE 0140\n #_06846D: STA.w $1CF0\n\n #_068470: LDA.b #$01\n #_068472: STA.w $1CF1\n\n #_068475: JSL Sprite_ShowMessageMinimal\n\n; ---------------------------------------------------------\n\n.not_agahnim2\n #_068479: PLA\n\n.delay_damage\n #_06847A: CMP.b #$18\n #_06847C: BNE .no_damage\n\n #_06847E: JSR Sprite_HandleSpecialHits\n\n.no_damage\n #_068481: LDA.w $0CE2,X\n #_068484: CMP.b #$FB\n #_068486: BCS .skip_palette_cycling\n\n #_068488: LDA.w $0EF0,X\n #_06848B: ASL A\n #_06848C: AND.b #$0E\n #_06848E: STA.w $0B89,X\n\n.skip_palette_cycling\n #_068491: DEC.w $0EF0,X\n\n #_068494: BRA .hit_continue\n\n.skip_hit_timer\n #_068496: STZ.w $0EF0,X\n #_068499: STZ.w $0B89,X\n\n.hit_continue\n #_06849C: LDA.w $0F10,X\n #_06849F: BEQ .handle_linkhop\n\n #_0684A1: DEC.w $0F10,X\n\n.handle_linkhop\n #_0684A4: LDY.b $EE\n #_0684A6: CPY.b #$03\n #_0684A8: BEQ .link_is_jumping\n\n #_0684AA: LDY.w $0F20,X\n\n.link_is_jumping\n #_0684AD: LDA.w $0B89,X\n #_0684B0: AND.b #$CF\n #_0684B2: ORA.w .OAM_priority,Y\n #_0684B5: STA.w $0B89,X\n\n #_0684B8: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Get16BitCoords_long", + "code": "Sprite_Get16BitCoords_long:\n #_0684BD: JSR Sprite_Get16BitCoords\n\n #_0684C0: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Get16BitCoords", + "code": "Sprite_Get16BitCoords:\n #_0684C1: LDA.w $0D10,X\n #_0684C4: STA.w $0FD8\n\n #_0684C7: LDA.w $0D30,X\n #_0684CA: STA.w $0FD9\n\n #_0684CD: LDA.w $0D00,X\n #_0684D0: STA.w $0FDA\n\n #_0684D3: LDA.w $0D20,X\n #_0684D6: STA.w $0FDB\n\n #_0684D9: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ExecuteSingle_long", + "code": "Sprite_ExecuteSingle_long:\n #_0684DA: PHB\n #_0684DB: PHK\n #_0684DC: PLB\n\n #_0684DD: JSR Sprite_ExecuteSingle\n\n #_0684E0: PLB\n\n #_0684E1: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ExecuteSingle", + "code": "Sprite_ExecuteSingle:\n #_0684E2: LDA.w $0DD0,X\n #_0684E5: BEQ SpriteModule_Inactive\n\n #_0684E7: PHA\n\n #_0684E8: JSR Sprite_TimersAndOAM\n\n #_0684EB: PLA\n #_0684EC: CMP.b #$09\n #_0684EE: BEQ .active\n\n #_0684F0: JSL JumpTableLocal\n #_0684F4: dw SpriteModule_Inactive ; 0x00\n #_0684F6: dw SpriteModule_Fall1 ; 0x01\n #_0684F8: dw SpriteModule_Poof ; 0x02\n #_0684FA: dw SpriteModule_Drown ; 0x03\n #_0684FC: dw SpriteModule_Explode_bounce ; 0x04\n #_0684FE: dw SpriteModule_Fall2 ; 0x05\n #_068500: dw SpriteModule_Die ; 0x06\n #_068502: dw SpriteModule_Burn_bounce ; 0x07\n #_068504: dw SpriteModule_Initialize ; 0x08\n #_068506: dw SpriteModule_Active ; 0x09\n #_068508: dw SpriteModule_Carried ; 0x0A\n #_06850A: dw SpriteModule_Stunned ; 0x0B\n\n; ---------------------------------------------------------\n\n.active\n #_06850C: JMP.w SpriteModule_Active\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingI", + "code": "SpritePrep_DoNothingI:\n #_06850F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Inactive", + "code": "SpriteModule_Inactive:\n #_068510: LDA.b $1B\n #_068512: BNE .indoors\n\n #_068514: TXA\n #_068515: ASL A\n #_068516: TAY\n\n #_068517: LDA.b #$FF\n #_068519: STA.w $0BC0,Y\n #_06851C: STA.w $0BC1,Y\n\n #_06851F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Active_long", + "code": "SpriteModule_Active_long:\n #_068526: PHB\n #_068527: PHK\n #_068528: PLB\n\n #_068529: JSR SpriteModule_Active\n\n #_06852C: PLB\n\n #_06852D: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Fall1", + "code": "SpriteModule_Fall1:\n #_06852E: LDA.w $0DF0,X\n #_068531: BNE .fall_longer\n\n #_068533: STZ.w $0DD0,X\n\n #_068536: JSL Sprite_ManuallySetDeathFlagUW\n\n #_06853A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Burn_bounce", + "code": "SpriteModule_Burn_bounce:\n #_068543: JSL SpriteModule_Burn\n\n #_068547: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Explode_bounce", + "code": "SpriteModule_Explode_bounce:\n #_068548: JSL SpriteModule_Explode\n\n #_06854C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Drown", + "code": "SpriteModule_Drown:\n #_06859C: LDA.w $0D80,X\n #_06859F: BEQ Drowning_DrawSprite\n\n #_0685A1: LDA.w $0D90,X\n #_0685A4: CMP.b #$06\n #_0685A6: BNE .use_allotted_region\n\n #_0685A8: LDA.b #$08\n #_0685AA: JSL SpriteDraw_AllocateOAMFromRegionC\n\n.use_allotted_region\n #_0685AE: LDA.w $0E60,X\n #_0685B1: EOR.b #$10\n #_0685B3: STA.w $0E60,X\n\n #_0685B6: JSR SpriteDraw_SingleLarge\n\n #_0685B9: LDA.w $0E80,X\n #_0685BC: LSR A\n #_0685BD: LSR A\n #_0685BE: AND.b #$03\n #_0685C0: TAY\n\n #_0685C1: LDA.w .flip,Y\n #_0685C4: STA.b $05\n\n #_0685C6: LDA.w $0DF0,X\n #_0685C9: CMP.b #$01\n #_0685CB: BNE .stay_alive\n\n #_0685CD: STZ.w $0DD0,X\n\n.stay_alive\n #_0685D0: PHX\n\n #_0685D1: LDA.b #$8A\n #_0685D3: BCC .delay\n\n #_0685D5: LDA.w $0DF0,X\n #_0685D8: LSR A\n #_0685D9: TAX\n\n #_0685DA: STZ.b $05\n\n #_0685DC: LDA.w .char,X\n\n.delay\n #_0685DF: LDY.b #$02\n #_0685E1: STA.b ($90),Y\n\n #_0685E3: INY\n #_0685E4: LDA.b #$24\n #_0685E6: ORA.b $05\n #_0685E8: STA.b ($90),Y\n\n #_0685EA: PLX\n\n #_0685EB: LDA.w $0DF0,X\n #_0685EE: BNE EXIT_06861A\n\n; ---------------------------------------------------------\n\n #_0685F0: JSR Sprite_CheckIfActivePermissive_Bank06\n\n #_0685F3: INC.w $0E80,X\n\n #_0685F6: JSR Sprite_Move_XY_Bank06\n #_0685F9: JSR Sprite_Move_Z_Bank06\n\n #_0685FC: LDA.w $0F80,X\n #_0685FF: SEC\n #_068600: SBC.b #$02\n #_068602: STA.w $0F80,X\n\n #_068605: LDA.w $0F70,X\n #_068608: BPL EXIT_06861A\n\n #_06860A: STZ.w $0F70,X\n\n #_06860D: LDA.b #$12\n #_06860F: STA.w $0DF0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DisableShadowFlag", + "code": "Sprite_DisableShadowFlag:\n #_068612: LDA.w $0E60,X\n #_068615: AND.b #$EF\n #_068617: STA.w $0E60,X\n\n; ---------------------------------------------------------\n\n#EXIT_06861A:\n #_06861A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Drowning_DrawSprite", + "code": "Drowning_DrawSprite:\n #_06861B: JSR Sprite_CheckIfActivePermissive_Bank06\n\n #_06861E: LDA.b $1A\n #_068620: AND.b #$01\n #_068622: BNE .timer_parity\n\n #_068624: INC.w $0DF0,X\n\n.timer_parity\n #_068627: STZ.w $0F50,X\n #_06862A: STZ.w $0EF0,X\n\n #_06862D: LDA.b #$00\n #_06862F: XBA\n\n #_068630: LDA.w $0DF0,X\n #_068633: BNE .stay_alive\n\n #_068635: STZ.w $0DD0,X\n\n.stay_alive\n #_068638: REP #$20\n\n #_06863A: ASL A\n #_06863B: AND.w #$00F8\n #_06863E: ASL A\n #_06863F: ADC.w #SpriteModule_Drown_oam_groups\n #_068642: STA.b $08\n\n #_068644: SEP #$20\n\n #_068646: LDA.b #$02\n #_068648: JSL SpriteDraw_Tabulated\n\n #_06864C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Initialize", + "code": "SpriteModule_Initialize:\n #_06864D: JSL SpritePrep_LoadProperties\n\n #_068651: INC.w $0DD0,X\n\n #_068654: LDA.w $0E20,X\n #_068657: JSL JumpTableLocal\n #_06865B: dw SpritePrep_Raven ; 0x00 - RAVEN\n #_06865D: dw SpritePrep_Vulture ; 0x01 - VULTURE\n #_06865F: dw SpritePrep_DoNothingA ; 0x02 - STALFOS HEAD\n #_068661: dw $0000 ; 0x03 - NULL\n #_068663: dw SpritePrep_Switch ; 0x04 - CORRECT PULL SWITCH\n #_068665: dw SpritePrep_DoNothingA ; 0x05 - UNUSED CORRECT PULL SWIT\n #_068667: dw SpritePrep_Switch ; 0x06 - WRONG PULL SWITCH\n #_068669: dw SpritePrep_DoNothingB ; 0x07 - UNUSED WRONG PULL SWITCH\n #_06866B: dw SpritePrep_Octorok ; 0x08 - OCTOROK\n #_06866D: dw SpritePrep_Moldorm_bounce ; 0x09 - MOLDORM\n #_06866F: dw SpritePrep_Octorok ; 0x0A - OCTOROK 4WAY\n #_068671: dw SpritePrep_DoNothingA ; 0x0B - CUCCO\n #_068673: dw SpritePrep_DoNothingA ; 0x0C - OCTOROK STONE\n #_068675: dw SpritePrep_DoNothingA ; 0x0D - BUZZBLOB\n #_068677: dw SpritePrep_DoNothingA ; 0x0E - SNAPDRAGON\n #_068679: dw SpritePrep_Octoballoon ; 0x0F - OCTOBALLOON\n #_06867B: dw SpritePrep_DoNothingA ; 0x10 - OCTOBALLOON BABY\n #_06867D: dw SpritePrep_DoNothingA ; 0x11 - HINOX\n #_06867F: dw SpritePrep_DoNothingA ; 0x12 - MOBLIN\n #_068681: dw SpritePrep_MiniHelmasaur ; 0x13 - MINI HELMASAUR\n #_068683: dw SpritePrep_ThievesTownGrate ; 0x14 - THIEVES TOWN GRATE\n #_068685: dw SpritePrep_Antifairy ; 0x15 - ANTIFAIRY\n #_068687: dw SpritePrep_Sage ; 0x16 - SAHASRAHLA / AGINAH\n #_068689: dw SpritePrep_DoNothingA ; 0x17 - HOARDER\n #_06868B: dw SpritePrep_MiniMoldorm_bounce ; 0x18 - MINI MOLDORM\n #_06868D: dw SpritePrep_Poe ; 0x19 - POE\n #_06868F: dw SpritePrep_Smithy ; 0x1A - SMITHY\n #_068691: dw SpritePrep_DoNothingA ; 0x1B - ARROW\n #_068693: dw SpritePrep_Statue ; 0x1C - STATUE\n #_068695: dw SpritePrep_IgnoreProjectiles ; 0x1D - FLUTEQUEST\n #_068697: dw SpritePrep_CrystalSwitch ; 0x1E - CRYSTAL SWITCH\n #_068699: dw SpritePrep_SickKid ; 0x1F - SICK KID\n #_06869B: dw SpritePrep_DoNothingA ; 0x20 - SLUGGULA\n #_06869D: dw SpritePrep_WaterLever ; 0x21 - WATER SWITCH\n #_06869F: dw SpritePrep_DoNothingA ; 0x22 - ROPA\n #_0686A1: dw SpritePrep_Bari ; 0x23 - RED BARI\n #_0686A3: dw SpritePrep_Bari ; 0x24 - BLUE BARI\n #_0686A5: dw SpritePrep_TalkingTree ; 0x25 - TALKING TREE\n #_0686A7: dw SpritePrep_HardhatBeetle ; 0x26 - HARDHAT BEETLE\n #_0686A9: dw SpritePrep_DoNothingA ; 0x27 - DEADROCK\n #_0686AB: dw SpritePrep_Storyteller ; 0x28 - DARK WORLD HINT NPC\n #_0686AD: dw SpritePrep_Adults ; 0x29 - ADULT\n #_0686AF: dw SpritePrep_IgnoreProjectiles ; 0x2A - SWEEPING LADY\n #_0686B1: dw SpritePrep_Hobo ; 0x2B - HOBO\n #_0686B3: dw SpritePrep_Lumberjacks ; 0x2C - LUMBERJACKS\n #_0686B5: dw SpritePrep_IgnoreProjectiles ; 0x2D - NECKLESS MAN\n #_0686B7: dw SpritePrep_FluteKid ; 0x2E - FLUTE KID\n #_0686B9: dw SpritePrep_IgnoreProjectiles ; 0x2F - RACE GAME LADY\n #_0686BB: dw SpritePrep_IgnoreProjectiles ; 0x30 - RACE GAME GUY\n #_0686BD: dw SpritePrep_FortuneTeller ; 0x31 - FORTUNE TELLER\n #_0686BF: dw SpritePrep_IgnoreProjectiles ; 0x32 - ARGUE BROS\n #_0686C1: dw SpritePrep_RupeePull ; 0x33 - RUPEE PULL\n #_0686C3: dw SpritePrep_Snitch_bounce_2 ; 0x34 - YOUNG SNITCH\n #_0686C5: dw SpritePrep_Snitch_bounce_3 ; 0x35 - INNKEEPER\n #_0686C7: dw SpritePrep_IgnoreProjectiles ; 0x36 - WITCH\n #_0686C9: dw SpritePrep_IgnoreProjectiles ; 0x37 - WATERFALL\n #_0686CB: dw SpritePrep_DoNothingA ; 0x38 - EYE STATUE\n #_0686CD: dw SpritePrep_Locksmith ; 0x39 - LOCKSMITH\n #_0686CF: dw SpritePrep_MagicBat ; 0x3A - MAGIC BAT\n #_0686D1: dw SpritePrep_BonkItem ; 0x3B - BONK ITEM\n #_0686D3: dw SpritePrep_IgnoreProjectiles ; 0x3C - KID IN KAK\n #_0686D5: dw SpritePrep_Snitch_bounce_1 ; 0x3D - OLD SNITCH\n #_0686D7: dw SpritePrep_DoNothingA ; 0x3E - HOARDER\n #_0686D9: dw SpritePrep_DoNothingA ; 0x3F - TUTORIAL GUARD\n #_0686DB: dw SpritePrep_AgahnimsBarrier ; 0x40 - LIGHTNING GATE\n #_0686DD: dw SpritePrep_StandardGuard ; 0x41 - BLUE GUARD\n #_0686DF: dw SpritePrep_StandardGuard ; 0x42 - GREEN GUARD\n #_0686E1: dw SpritePrep_StandardGuard ; 0x43 - RED SPEAR GUARD\n #_0686E3: dw SpritePrep_CoolerGuard ; 0x44 - BLUESAIN BOLT\n #_0686E5: dw SpritePrep_CoolerGuard ; 0x45 - USAIN BOLT\n #_0686E7: dw SpritePrep_CoolerGuard ; 0x46 - BLUE ARCHER\n #_0686E9: dw SpritePrep_CoolerGuard ; 0x47 - GREEN BUSH GUARD\n #_0686EB: dw SpritePrep_CoolerGuard ; 0x48 - RED JAVELIN GUARD\n #_0686ED: dw SpritePrep_CoolerGuard ; 0x49 - RED BUSH GUARD\n #_0686EF: dw SpritePrep_CoolerGuard ; 0x4A - BOMB GUARD\n #_0686F1: dw SpritePrep_WeakGuard ; 0x4B - GREEN KNIFE GUARD\n #_0686F3: dw SpritePrep_Geldman ; 0x4C - GELDMAN\n #_0686F5: dw SpritePrep_CacheOriginalCoordinates ; 0x4D - TOPPO\n #_0686F7: dw SpritePrep_Popo ; 0x4E - POPO\n #_0686F9: dw SpritePrep_Popo2 ; 0x4F - POPO\n #_0686FB: dw SpritePrep_DoNothingA ; 0x50 - CANNONBALL\n #_0686FD: dw SpritePrep_DoNothingD ; 0x51 - ARMOS STATUE\n #_0686FF: dw SpritePrep_KingZora ; 0x52 - KING ZORA\n #_068701: dw SpritePrep_ArmosKnight ; 0x53 - ARMOS KNIGHT\n #_068703: dw SpritePrep_Lanmolas_bounce ; 0x54 - LANMOLAS\n #_068705: dw SpritePrep_SwimmingZora ; 0x55 - ZORA / FIREBALL\n #_068707: dw SpritePrep_WalkingZora ; 0x56 - ZORA\n #_068709: dw SpritePrep_DesertStatue ; 0x57 - DESERT STATUE\n #_06870B: dw SpritePrep_DoNothingA ; 0x58 - CRAB\n #_06870D: dw SpritePrep_LostWoodsBird ; 0x59 - LOST WOODS BIRD\n #_06870F: dw SpritePrep_LostWoodsSquirrel ; 0x5A - LOST WOODS SQUIRREL\n #_068711: dw SpritePrep_Spark ; 0x5B - SPARK\n #_068713: dw SpritePrep_Spark ; 0x5C - SPARK\n #_068715: dw SpritePrep_Roller_VerticalDownFirst ; 0x5D - ROLLER VERTICAL DOWN FIRST\n #_068717: dw SpritePrep_Roller_VerticalUpFirst ; 0x5E - ROLLER VERTICAL UP FIRST\n #_068719: dw SpritePrep_Roller_HorizontalRightFirst ; 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_06871B: dw SpritePrep_Roller_HorizontalLeftFirst ; 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_06871D: dw SpritePrep_DoNothingA ; 0x61 - BEAMOS\n #_06871F: dw SpritePrep_MasterSword ; 0x62 - MASTERSWORD\n #_068721: dw SpritePrep_DebirandoPit ; 0x63 - DEBIRANDO PIT\n #_068723: dw SpritePrep_Debirando ; 0x64 - DEBIRANDO\n #_068725: dw SpritePrep_ArrowGame_bounce ; 0x65 - ARCHERY GUY\n #_068727: dw SpritePrep_WallCannon ; 0x66 - WALL CANNON VERTICAL LEFT\n #_068729: dw SpritePrep_WallCannon ; 0x67 - WALL CANNON VERTICAL RIGHT\n #_06872B: dw SpritePrep_WallCannon ; 0x68 - WALL CANNON HORIZONTAL TOP\n #_06872D: dw SpritePrep_WallCannon ; 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_06872F: dw SpritePrep_DoNothingA ; 0x6A - BALL N CHAIN\n #_068731: dw SpritePrep_DoNothingA ; 0x6B - CANNONBALL / CANNON TROOPER\n #_068733: dw SpritePrep_DoNothingA ; 0x6C - MIRROR PORTAL\n #_068735: dw SpritePrep_Rat ; 0x6D - RAT / CRICKET\n #_068737: dw SpritePrep_Rope ; 0x6E - SNAKE\n #_068739: dw SpritePrep_Keese ; 0x6F - KEESE\n #_06873B: dw SpritePrep_DoNothingG ; 0x70 - KING HELMASAUR FIREBALL\n #_06873D: dw SpritePrep_Leever ; 0x71 - LEEVER\n #_06873F: dw SpritePrep_IgnoreProjectiles ; 0x72 - FAIRY POND TRIGGER\n #_068741: dw SpritePrep_UncleAndPriest_bounce ; 0x73 - UNCLE / PRIEST / MANTLE\n #_068743: dw SpritePrep_RunningBoy_bounce ; 0x74 - RUNNING MAN\n #_068745: dw SpritePrep_IgnoreProjectiles ; 0x75 - BOTTLE MERCHANT\n #_068747: dw SpritePrep_Zelda_bounce ; 0x76 - ZELDA\n #_068749: dw SpritePrep_Antifairy ; 0x77 - ANTIFAIRY\n #_06874B: dw SpritePrep_MrsSahasrahla ; 0x78 - SAHASRAHLAS WIFE\n #_06874D: dw SpritePrep_OverworldBonkItem ; 0x79 - BEE\n #_06874F: dw SpritePrep_Agahnim ; 0x7A - AGAHNIM\n #_068751: dw SpritePrep_DoNothingG ; 0x7B - AGAHNIMS BALLS\n #_068753: dw SpritePrep_GreenStalfos ; 0x7C - GREEN STALFOS\n #_068755: dw SpritePrep_BigSpike ; 0x7D - BIG SPIKE\n #_068757: dw SpritePrep_FireBar ; 0x7E - FIREBAR CLOCKWISE\n #_068759: dw SpritePrep_FireBar ; 0x7F - FIREBAR COUNTERCLOCKWISE\n #_06875B: dw SpritePrep_DoNothingG ; 0x80 - FIRESNAKE\n #_06875D: dw SpritePrep_DoNothingG ; 0x81 - HOVER\n #_06875F: dw SpritePrep_AntifairyCircle_bounce ; 0x82 - ANTIFAIRY CIRCLE\n #_068761: dw SpritePrep_Eyegore_bounce ; 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_068763: dw SpritePrep_Eyegore_bounce ; 0x84 - RED EYEGORE / RED MIMIC\n #_068765: dw SpritePrep_DoNothingG ; 0x85 - YELLOW STALFOS\n #_068767: dw SpritePrep_Kodongo ; 0x86 - KODONGO\n #_068769: dw SpritePrep_DoNothingG ; 0x87 - KONDONGO FIRE\n #_06876B: dw SpritePrep_Mothula ; 0x88 - MOTHULA\n #_06876D: dw SpritePrep_DoNothingG ; 0x89 - MOTHULA BEAM\n #_06876F: dw SpritePrep_Spike ; 0x8A - SPIKE BLOCK\n #_068771: dw SpritePrep_DoNothingG ; 0x8B - GIBDO\n #_068773: dw SpritePrep_Arrghus ; 0x8C - ARRGHUS\n #_068775: dw SpritePrep_Arrghi ; 0x8D - ARRGHI\n #_068777: dw SpritePrep_DoNothingG ; 0x8E - TERRORPIN\n #_068779: dw SpritePrep_Blob ; 0x8F - BLOB\n #_06877B: dw SpritePrep_DoNothingG ; 0x90 - WALLMASTER\n #_06877D: dw SpritePrep_DoNothingG ; 0x91 - STALFOS KNIGHT\n #_06877F: dw SpritePrep_HelmasaurKing ; 0x92 - KING HELMASAUR\n #_068781: dw SpritePrep_Bumper ; 0x93 - BUMPER\n #_068783: dw SpritePrep_DoNothingA ; 0x94 - PIROGUSU\n #_068785: dw SpritePrep_LaserEye_bounce ; 0x95 - LASER EYE LEFT\n #_068787: dw SpritePrep_LaserEye_bounce ; 0x96 - LASER EYE RIGHT\n #_068789: dw SpritePrep_LaserEye_bounce ; 0x97 - LASER EYE TOP\n #_06878B: dw SpritePrep_LaserEye_bounce ; 0x98 - LASER EYE BOTTOM\n #_06878D: dw SpritePrep_DoNothingA ; 0x99 - PENGATOR\n #_06878F: dw SpritePrep_CacheOriginalCoordinates ; 0x9A - KYAMERON\n #_068791: dw SpritePrep_DoNothingA ; 0x9B - WIZZROBE\n #_068793: dw SpritePrep_Zoro ; 0x9C - ZORO\n #_068795: dw SpritePrep_Babasu ; 0x9D - BABASU\n #_068797: dw SpritePrep_HauntedGroveOstritch ; 0x9E - HAUNTED GROVE OSTRITCH\n #_068799: dw SpritePrep_HauntedGroveAnimal ; 0x9F - HAUNTED GROVE RABBIT\n #_06879B: dw SpritePrep_HauntedGroveAnimal ; 0xA0 - HAUNTED GROVE BIRD\n #_06879D: dw SpritePrep_MoveDown_8px ; 0xA1 - FREEZOR\n #_06879F: dw SpritePrep_Kholdstare ; 0xA2 - KHOLDSTARE\n #_0687A1: dw SpritePrep_KholdstareShell ; 0xA3 - KHOLDSTARE SHELL\n #_0687A3: dw SpritePrep_FallingIce ; 0xA4 - FALLING ICE\n #_0687A5: dw SpritePrep_DoNothingE ; 0xA5 - BLUE ZAZAK\n #_0687A7: dw SpritePrep_DoNothingE ; 0xA6 - RED ZAZAK\n #_0687A9: dw SpritePrep_Stalfos ; 0xA7 - STALFOS\n #_0687AB: dw SpritePrep_Zirro ; 0xA8 - GREEN ZIRRO\n #_0687AD: dw SpritePrep_Zirro ; 0xA9 - BLUE ZIRRO\n #_0687AF: dw SpritePrep_DoNothingC ; 0xAA - PIKIT\n #_0687B1: dw SpritePrep_DoNothingH ; 0xAB - CRYSTAL MAIDEN\n #_0687B3: dw SpritePrep_OverworldBonkItem ; 0xAC - APPLE\n #_0687B5: dw SpritePrep_OldMan_bounce ; 0xAD - OLD MAN\n #_0687B7: dw SpritePrep_DoNothingA ; 0xAE - PIPE DOWN\n #_0687B9: dw SpritePrep_DoNothingA ; 0xAF - PIPE UP\n #_0687BB: dw SpritePrep_DoNothingA ; 0xB0 - PIPE RIGHT\n #_0687BD: dw SpritePrep_DoNothingA ; 0xB1 - PIPE LEFT\n #_0687BF: dw SpritePrep_NiceBee ; 0xB2 - GOOD BEE\n #_0687C1: dw SpritePrep_PedestalPlaque ; 0xB3 - PEDESTAL PLAQUE\n #_0687C3: dw SpritePrep_PurpleChest ; 0xB4 - PURPLE CHEST\n #_0687C5: dw SpritePrep_BombShoppe ; 0xB5 - BOMB SHOP GUY\n #_0687C7: dw SpritePrep_Kiki ; 0xB6 - KIKI\n #_0687C9: dw SpritePrep_BlindMaiden ; 0xB7 - BLIND MAIDEN\n #_0687CB: dw SpritePrep_DoNothingA ; 0xB8 - DIALOGUE TESTER\n #_0687CD: dw SpritePrep_BullyAndVictim ; 0xB9 - BULLY / PINK BALL\n #_0687CF: dw SpritePrep_Whirlpool ; 0xBA - WHIRLPOOL\n #_0687D1: dw SpritePrep_Shopkeeper ; 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0687D3: dw SpritePrep_IgnoreProjectiles ; 0xBC - DRUNKARD\n #_0687D5: dw SpritePrep_Vitreous ; 0xBD - VITREOUS\n #_0687D7: dw SpritePrep_MiniVitreous ; 0xBE - VITREOUS SMALL EYE\n #_0687D9: dw SpritePrep_DoNothingA ; 0xBF - LIGHTNING\n #_0687DB: dw SpritePrep_Catfish ; 0xC0 - CATFISH\n #_0687DD: dw SpritePrep_CutsceneAgahnim ; 0xC1 - CUTSCENE AGAHNIM\n #_0687DF: dw SpritePrep_DoNothingA ; 0xC2 - BOULDER\n #_0687E1: dw SpritePrep_Gibo ; 0xC3 - GIBO\n #_0687E3: dw SpritePrep_DoNothingA ; 0xC4 - THIEF\n #_0687E5: dw SpritePrep_IgnoreProjectiles ; 0xC5 - MEDUSA\n #_0687E7: dw SpritePrep_IgnoreProjectiles ; 0xC6 - 4WAY SHOOTER\n #_0687E9: dw SpritePrep_Pokey ; 0xC7 - POKEY\n #_0687EB: dw SpritePrep_BigFairy ; 0xC8 - BIG FAIRY\n #_0687ED: dw SpritePrep_Tektite ; 0xC9 - TEKTITE / FIREBAT\n #_0687EF: dw SpritePrep_Chainchomp_bounce ; 0xCA - CHAIN CHOMP\n #_0687F1: dw SpritePrep_Trinexx ; 0xCB - TRINEXX ROCK HEAD\n #_0687F3: dw SpritePrep_Trinexx ; 0xCC - TRINEXX FIRE HEAD\n #_0687F5: dw SpritePrep_Trinexx ; 0xCD - TRINEXX ICE HEAD\n #_0687F7: dw SpritePrep_Blind ; 0xCE - BLIND\n #_0687F9: dw SpritePrep_Swamola ; 0xCF - SWAMOLA\n #_0687FB: dw SpritePrep_DoNothingA ; 0xD0 - LYNEL\n #_0687FD: dw SpritePrep_DoNothingA ; 0xD1 - BUNNYBEAM / SMOKE\n #_0687FF: dw SpritePrep_IgnoreProjectiles ; 0xD2 - FLOPPING FISH\n #_068801: dw SpritePrep_RockStal ; 0xD3 - STAL\n #_068803: dw SpritePrep_IgnoreProjectiles ; 0xD4 - LANDMINE\n #_068805: dw SpritePrep_DiggingGameGuy_bounce ; 0xD5 - DIG GAME GUY\n #_068807: dw SpritePrep_Ganon ; 0xD6 - GANON\n #_068809: dw SpritePrep_Ganon ; 0xD7 - GANON\n #_06880B: dw SpritePrep_Absorbable ; 0xD8 - HEART\n #_06880D: dw SpritePrep_Absorbable ; 0xD9 - GREEN RUPEE\n #_06880F: dw SpritePrep_Absorbable ; 0xDA - BLUE RUPEE\n #_068811: dw SpritePrep_Absorbable ; 0xDB - RED RUPEE\n #_068813: dw SpritePrep_Absorbable ; 0xDC - BOMB REFILL 1\n #_068815: dw SpritePrep_Absorbable ; 0xDD - BOMB REFILL 4\n #_068817: dw SpritePrep_Absorbable ; 0xDE - BOMB REFILL 8\n #_068819: dw SpritePrep_Absorbable ; 0xDF - SMALL MAGIC DECANTER\n #_06881B: dw SpritePrep_Absorbable ; 0xE0 - LARGE MAGIC DECANTER\n #_06881D: dw SpritePrep_Absorbable ; 0xE1 - ARROW REFILL 5\n #_06881F: dw SpritePrep_Absorbable ; 0xE2 - ARROW REFILL 10\n #_068821: dw SpritePrep_Fairy ; 0xE3 - FAIRY\n #_068823: dw SpritePrep_SmallKey ; 0xE4 - SMALL KEY\n #_068825: dw SpritePrep_BigKey ; 0xE5 - BIG KEY\n #_068827: dw SpritePrep_DoNothingF ; 0xE6 - STOLEN SHIELD\n #_068829: dw SpritePrep_Mushroom_bounce ; 0xE7 - MUSHROOM\n #_06882B: dw SpritePrep_FakeMasterSword_bounce ; 0xE8 - FAKE MASTER SWORD\n #_06882D: dw SpritePrep_MagicShopAssistant_bounce ; 0xE9 - MAGIC SHOP ASSISTANT\n #_06882F: dw SpritePrep_HeartContainer_bounce ; 0xEA - HEART CONTAINER\n #_068831: dw SpritePrep_HeartPiece ; 0xEB - HEART PIECE\n #_068833: dw SpritePrep_DoNothingI ; 0xEC - THROWN ITEM\n #_068835: dw SpritePrep_DoNothingA ; 0xED - SOMARIA PLATFORM\n #_068837: dw SpritePrep_Mantle ; 0xEE - CASTLE MANTLE\n #_068839: dw SpritePrep_DoNothingA ; 0xEF - UNUSED SOMARIA PLATFORM\n #_06883B: dw SpritePrep_DoNothingA ; 0xF0 - UNUSED SOMARIA PLATFORM\n #_06883D: dw SpritePrep_DoNothingA ; 0xF1 - UNUSED SOMARIA PLATFORM\n #_06883F: dw SpritePrep_MedallionTablet_bounce ; 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Mantle", + "code": "SpritePrep_Mantle:\n #_068841: LDA.w $0D00,X\n #_068844: CLC\n #_068845: ADC.b #$03\n #_068847: STA.w $0D00,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MoveRight_8px", + "code": "SpritePrep_MoveRight_8px:\n #_06884A: LDA.w $0D10,X\n #_06884D: CLC\n #_06884E: ADC.b #$08\n #_068850: STA.w $0D10,X\n\n #_068853: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MedallionTablet_bounce", + "code": "SpritePrep_MedallionTablet_bounce:\n #_068854: JSL SpritePrep_MedallionTablet\n\n #_068858: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Switch", + "code": "SpritePrep_Switch:\n #_068859: LDA.w $048E\n\n #_06885C: CMP.b #$CE ; ROOM 00CE\n #_06885E: BEQ .tongue_room\n\n #_068860: CMP.b #$04 ; ROOM 0004\n #_068862: BEQ .tongue_room\n\n #_068864: CMP.b #$3F ; ROOM 003F\n #_068866: BNE SpritePrep_DoNothingB\n\n.tongue_room\n #_068868: LDA.b #$0D\n #_06886A: STA.w $0F50,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingB", + "code": "SpritePrep_DoNothingB:\n #_06886D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Snitch_bounce_1", + "code": "SpritePrep_Snitch_bounce_1:\n #_06886E: JSL SpritePrep_Snitch\n\n #_068872: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingA", + "code": "SpritePrep_DoNothingA:\n #_068873: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Rat", + "code": "SpritePrep_Rat:\n #_068878: LDY.w $0FFF\n\n #_06887B: LDA.w .damage,Y\n #_06887E: STA.w $0CD2,X\n\n #_068881: LDA.w .hp,Y\n #_068884: STA.w $0E50,X\n\n #_068887: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Keese", + "code": "SpritePrep_Keese:\n #_06888E: LDY.w $0FFF\n\n #_068891: LDA.w .damage,Y\n #_068894: STA.w $0CD2,X\n\n #_068897: LDA.w .hp,Y\n #_06889A: STA.w $0E50,X\n\n #_06889D: LDA.w .prizepack,Y\n #_0688A0: STA.w $0BE0,X\n\n #_0688A3: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Rope", + "code": "SpritePrep_Rope:\n #_0688AA: LDY.w $0FFF\n\n #_0688AD: LDA.w .damage,Y\n #_0688B0: STA.w $0CD2,X\n\n #_0688B3: LDA.w .hp,Y\n #_0688B6: STA.w $0E50,X\n\n #_0688B9: LDA.w .prizepack,Y\n #_0688BC: STA.w $0BE0,X\n\n #_0688BF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Swamola", + "code": "SpritePrep_Swamola:\n #_0688C0: JSL SpritePrep_Swamola_InitializeSegments\n\n #_0688C4: JMP.w SpritePrep_CacheOriginalCoordinates\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Blind", + "code": "SpritePrep_Blind:\n #_0688C7: JSR SpritePrep_Boss\n #_0688CA: JSL SpritePrep_Blind_PrepareBattle\n\n #_0688CE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Ganon", + "code": "SpritePrep_Ganon:\n #_0688CF: JSR SpritePrep_Boss\n #_0688D2: JSL SpritePrep_Ganon_PrepareBattle\n\n #_0688D6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Pokey", + "code": "SpritePrep_Pokey:\n #_0688DF: LDA.b #$03\n #_0688E1: STA.w $0D90,X\n\n #_0688E4: LDA.b #$08\n #_0688E6: STA.w $0DA0,X\n\n #_0688E9: JSL GetRandomNumber\n #_0688ED: AND.b #$03\n #_0688EF: TAY\n\n #_0688F0: LDA.w .speed_x,Y\n #_0688F3: STA.w $0D50,X\n\n #_0688F6: LDA.w .speed_y,Y\n #_0688F9: STA.w $0D40,X\n\n #_0688FC: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MiniVitreous", + "code": "SpritePrep_MiniVitreous:\n #_0688FD: JSR SpritePrep_Boss\n\n #_068900: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Gibo", + "code": "SpritePrep_Gibo:\n #_068901: LDA.b #$10\n #_068903: STA.w $0F70,X\n\n #_068906: LDA.b #$08\n #_068908: STA.w $0ED0,X\n\n #_06890B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Octoballoon", + "code": "SpritePrep_Octoballoon:\n #_068910: TXA\n #_068911: AND.b #$03\n #_068913: TAY\n\n #_068914: LDA.w .timer,Y\n #_068917: STA.w $0DF0,X\n\n #_06891A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_AgahnimsBarrier", + "code": "SpritePrep_AgahnimsBarrier:\n #_06891B: PHX\n\n #_06891C: LDX.b $8A\n\n #_06891E: LDA.l $7EF280,X\n\n #_068922: PLX\n\n #_068923: AND.b #$40\n #_068925: BEQ SpritePrep_Catfish\n\n #_068927: LDA.b #$04\n #_068929: STA.w $0DC0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Catfish", + "code": "SpritePrep_Catfish:\n #_06892C: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_06892F: LDA.w $0D00,X\n #_068932: SEC\n #_068933: SBC.b #$0C\n #_068935: STA.w $0D00,X\n\n #_068938: JMP.w SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_CutsceneAgahnim", + "code": "SpritePrep_CutsceneAgahnim:\n #_06893B: LDA.w $0403\n #_06893E: AND.b #$40\n #_068940: BEQ .not_seen_cutscene\n\n #_068942: STZ.w $0DD0,X\n\n #_068945: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Vitreous", + "code": "SpritePrep_Vitreous:\n #_06894D: JSR SpritePrep_Boss\n #_068950: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_068953: LDA.w $0D00,X\n #_068956: SEC\n #_068957: SBC.b #$10\n #_068959: STA.w $0D00,X\n\n #_06895C: JSL Vitreous_SpawnMinions\n\n #_068960: JMP.w SpritePrep_IgnoreProjectiles\n\n; =========================================================\n\npool SpritePrep_Raven\n\n.damage\n #_068963: db $81, $88\n\n.hp\n #_068965: db $04, $08\n\n.prize_pack\n #_068967: db $06, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Raven", + "code": "SpritePrep_Raven:\n #_068969: LDY.w $0FFF\n\n #_06896C: LDA.w .damage,Y\n #_06896F: STA.w $0CD2,X\n\n #_068972: LDA.w .hp,Y\n #_068975: STA.w $0E50,X\n\n #_068978: LDA.w .prize_pack,Y\n #_06897B: STA.w $0BE0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Vulture", + "code": "SpritePrep_Vulture:\n #_06897E: LDA.b #$00\n #_068980: STA.w $0F70,X\n\n #_068983: LDA.w $0D10,X\n #_068986: AND.b #$10\n #_068988: LSR A\n #_068989: LSR A\n #_06898A: LSR A\n #_06898B: LSR A\n #_06898C: STA.w $0D90,X\n\n #_06898F: BRA SpritePrep_SetAuxToFE\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Poe", + "code": "SpritePrep_Poe:\n #_068991: LDA.b #$0C\n #_068993: STA.w $0F70,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_SetAuxToFE", + "code": "SpritePrep_SetAuxToFE:\n #_068996: LDA.b #$FE\n #_068998: STA.w $0E30,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingC", + "code": "SpritePrep_DoNothingC:\n #_06899B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BlindMaiden", + "code": "SpritePrep_BlindMaiden:\n #_06899C: LDA.l $7EF159\n #_0689A0: AND.b #$08\n #_0689A2: BNE .kill_the_girl\n\n #_0689A4: INC.w $0BA0,X\n\n #_0689A7: LDA.l $7EF3CC\n #_0689AB: CMP.b #$06\n #_0689AD: BEQ .kill_the_girl\n\n #_0689AF: LDA.b #$06 ; FOLLOWER 06\n #_0689B1: STA.l $7EF3CC\n\n #_0689B5: LDA.b #$00\n #_0689B7: STA.l $7EF3D3\n\n #_0689BB: PHX\n\n #_0689BC: STZ.w $02F9\n\n #_0689BF: JSL LoadFollowerGraphics\n #_0689C3: JSL Follower_Initialize\n\n #_0689C7: PLX\n\n #_0689C8: LDA.b #$00\n #_0689CA: STA.l $7EF3CC\n\n #_0689CE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MiniMoldorm_bounce", + "code": "SpritePrep_MiniMoldorm_bounce:\n #_0689D3: JSL SpritePrep_MiniMoldorm\n\n #_0689D7: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Zirro", + "code": "SpritePrep_Zirro:\n #_0689D8: LDA.b #$10\n #_0689DA: STA.w $0F70,X\n\n #_0689DD: BRA SpritePrep_SetAuxToFE\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BombShoppe", + "code": "SpritePrep_BombShoppe:\n #_0689DF: INC.w $0BA0,X\n\n #_0689E2: LDA.b #$B5 ; SPRITE B5\n #_0689E4: JSL Sprite_SpawnDynamically\n #_0689E8: BMI .no_space_to_spawn_OHNO\n\n #_0689EA: LDA.b $00\n #_0689EC: SEC\n #_0689ED: SBC.b #$18\n #_0689EF: STA.w $0D10,Y\n\n #_0689F2: LDA.b $01\n #_0689F4: SBC.b #$00\n #_0689F6: STA.w $0D30,Y\n\n #_0689F9: LDA.b $02\n #_0689FB: SEC\n #_0689FC: SBC.b #$18\n #_0689FE: STA.w $0D00,Y\n\n #_068A01: LDA.b $03\n #_068A03: SBC.b #$00\n #_068A05: STA.w $0D20,Y\n\n #_068A08: LDA.b #$01\n #_068A0A: STA.w $0E80,Y\n #_068A0D: STA.w $0BA0,Y\n\n; ---------------------------------------------------------\n\n.no_space_to_spawn_OHNO\n #_068A10: LDA.l $7EF37A\n #_068A14: AND.b #$05\n #_068A16: CMP.b #$05\n #_068A18: BNE .you_dont_deserve_the_big_bomb\n\n #_068A1A: LDA.l $7EF3C9\n #_068A1E: AND.b #$20\n #_068A20: BEQ .you_dont_deserve_the_big_bomb\n\n #_068A22: LDA.b #$B5 ; SPRITE B5\n #_068A24: JSL Sprite_SpawnDynamically\n #_068A28: BMI .you_dont_deserve_the_big_bomb\n\n #_068A2A: LDA.b $00\n #_068A2C: SEC\n #_068A2D: SBC.b #$38\n #_068A2F: STA.w $0D10,Y\n\n #_068A32: LDA.b $01\n #_068A34: SBC.b #$00\n #_068A36: STA.w $0D30,Y\n\n #_068A39: LDA.b $02\n #_068A3B: SEC\n #_068A3C: SBC.b #$18\n #_068A3E: STA.w $0D00,Y\n\n #_068A41: LDA.b $03\n #_068A43: SBC.b #$00\n #_068A45: STA.w $0D20,Y\n\n #_068A48: LDA.b #$02\n #_068A4A: STA.w $0E80,Y\n #_068A4D: STA.w $0BA0,Y\n\n.you_dont_deserve_the_big_bomb\n #_068A50: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BullyAndVictim", + "code": "SpritePrep_BullyAndVictim:\n #_068A51: JSL SpawnBully\n\n #_068A55: INC.w $0BA0,X\n\n #_068A58: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_PurpleChest", + "code": "SpritePrep_PurpleChest:\n #_068A59: LDA.l $7EF3CC\n #_068A5D: CMP.b #$0C ; FOLLOWER 0C\n #_068A5F: BEQ No_chest_for_you\n\n #_068A61: LDA.l $7EF3C9\n #_068A65: AND.b #$10\n #_068A67: BNE No_chest_for_you\n\n #_068A69: LDA.l $7EF3C9\n #_068A6D: AND.b #$20\n #_068A6F: BEQ No_chest_for_you\n\n #_068A71: INC.w $0BA0,X\n\n #_068A74: RTS", + "file": "bank_06.asm" + }, + { + "name": "No_chest_for_you", + "code": "No_chest_for_you:", + "file": "bank_06.asm" + }, + { + "name": "No_frog_for_you", + "code": "No_frog_for_you:\n #_068A75: STZ.w $0DD0,X\n\n #_068A78: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Smithy", + "code": "SpritePrep_Smithy:\n #_068A79: INC.w $0BA0,X\n\n #_068A7C: LDA.l $7EF3CA\n #_068A80: AND.b #$40\n #_068A82: BEQ .in_light_world\n\n #_068A84: LDA.l $7EF3C9\n #_068A88: AND.b #$20\n #_068A8A: BNE No_frog_for_you\n\n #_068A8C: LDA.l $7EF3CC\n #_068A90: CMP.b #$00\n #_068A92: BNE No_frog_for_you\n\n #_068A94: LDA.b #$02\n #_068A96: STA.w $0E80,X\n\n #_068A99: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Babasu", + "code": "SpritePrep_Babasu:\n #_068AF0: JSR SpritePrep_MoveDown_8px\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Zoro", + "code": "SpritePrep_Zoro:\n #_068AF3: LDA.w $0E20,X\n #_068AF6: SEC\n #_068AF7: SBC.b #$9C\n #_068AF9: ASL A\n #_068AFA: STA.w $0DE0,X\n\n #_068AFD: DEC.w $0DC0,X\n\n #_068B00: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_068B01", + "code": "UNREACHABLE_068B01:\n #_068B01: db $F8, $08\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_LaserEye_bounce", + "code": "SpritePrep_LaserEye_bounce:\n #_068B03: JSL SpritePrep_LaserEye\n\n #_068B07: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Popo", + "code": "SpritePrep_Popo:\n #_068B08: LDA.b #$07\n #_068B0A: BRA .set_movement_mask\n\n; =========================================================\n\n#SpritePrep_Popo2:\n #_068B0C: LDA.b #$0F\n\n; =========================================================\n\n.set_movement_mask\n #_068B0E: STA.w $0DA0,X\n\n #_068B11: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Statue", + "code": "SpritePrep_Statue:\n #_068B12: LDA.w $0D00,X\n #_068B15: CLC\n #_068B16: ADC.b #$07\n #_068B18: STA.w $0D00,X\n\n #_068B1B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Bari", + "code": "SpritePrep_Bari:\n #_068B1C: LDA.b #$06\n #_068B1E: STA.w $0F70,X\n\n #_068B21: LDA.w $048E\n #_068B24: CMP.b #$CE ; ROOM 00CE\n #_068B26: BNE .not_uninformed\n\n #_068B28: DEC.w $0DB0,X\n\n.not_uninformed\n #_068B2B: JMP.w Bari_RandomlySetTimer2\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_GreenStalfos", + "code": "SpritePrep_GreenStalfos:\n #_068B2E: LDA.b #$09\n #_068B30: STA.w $0F70,X\n\n #_068B33: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_WaterLever", + "code": "SpritePrep_WaterLever:\n #_068B34: LDA.w $0D00,X\n #_068B37: CLC\n #_068B38: ADC.b #$05\n #_068B3A: STA.w $0D00,X\n\n #_068B3D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Debirando", + "code": "SpritePrep_Debirando:\n #_068B3E: LDA.b #$63 ; SPRITE 63\n #_068B40: STA.w $0E20,X\n\n #_068B43: JSL SpritePrep_LoadProperties\n #_068B47: DEC.w $0ED0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DebirandoPit", + "code": "SpritePrep_DebirandoPit:\n #_068B4A: INC.w $0ED0,X\n\n #_068B4D: LDA.b #$00\n #_068B4F: STA.w $0DF0,X\n\n #_068B52: LDA.b #$06\n #_068B54: STA.w $0DC0,X\n\n #_068B57: JSR SpritePrep_IgnoreProjectiles\n\n #_068B5A: LDA.b #$64 ; SPRITE 64\n #_068B5C: JSL Sprite_SpawnDynamically\n #_068B60: BMI .no_space\n\n #_068B62: JSL Sprite_SetSpawnedCoordinates\n\n #_068B66: LDA.b #$60\n #_068B68: STA.w $0DF0,Y\n\n #_068B6B: TYA\n #_068B6C: STA.w $0EB0,X\n\n #_068B6F: LDA.w $0ED0,X\n #_068B72: STA.w $0ED0,Y\n\n #_068B75: PHX\n\n #_068B76: TAX\n\n #_068B77: LDA.w .palette,X\n #_068B7A: STA.w $0F50,Y\n\n #_068B7D: PLX\n\n.no_space\n #_068B7E: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_WeakGuard", + "code": "SpritePrep_WeakGuard:\n #_068B81: JSL GetRandomNumber\n #_068B85: AND.b #$03\n #_068B87: STA.w $0DE0,X\n #_068B8A: STA.w $0EB0,X\n\n #_068B8D: LDA.b #$10\n #_068B8F: STA.w $0DF0,X\n\n #_068B92: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_WallCannon", + "code": "SpritePrep_WallCannon:\n #_068B93: LDA.w $0E20,X\n #_068B96: SEC\n #_068B97: SBC.b #$66 ; SPRITE 66 - base wall cannon ID\n #_068B99: STA.w $0DE0,X\n\n #_068B9C: AND.b #$02\n #_068B9E: STA.w $0D90,X\n\n #_068BA1: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_ArrowGame_bounce", + "code": "SpritePrep_ArrowGame_bounce:\n #_068BA2: JSL SpritePrep_ArrowGame\n\n #_068BA6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_IgnoreProjectiles", + "code": "SpritePrep_IgnoreProjectiles:\n #_068BA7: INC.w $0BA0,X\n\n #_068BAA: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HauntedGroveAnimal", + "code": "SpritePrep_HauntedGroveAnimal:\n #_068BAB: JSR Sprite_IsRightOfLink\n\n #_068BAE: TYA\n #_068BAF: STA.w $0DE0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HauntedGroveOstritch", + "code": "SpritePrep_HauntedGroveOstritch:\n #_068BB2: LDA.l $7EF34C\n #_068BB6: CMP.b #$02\n #_068BB8: BCC .has_no_flute\n\n #_068BBA: STZ.w $0DD0,X\n\n.has_no_flute\n #_068BBD: BRA SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DiggingGameGuy_bounce", + "code": "SpritePrep_DiggingGameGuy_bounce:\n #_068BBF: JSL SpritePrep_DiggingGameGuy\n\n #_068BC3: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_ThievesTownGrate", + "code": "SpritePrep_ThievesTownGrate:\n #_068BC4: LDA.l $7EF2D8\n #_068BC8: AND.b #$20\n #_068BCA: BEQ SpritePrep_RupeePull\n\n #_068BCC: STZ.w $0DD0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_RupeePull", + "code": "SpritePrep_RupeePull:\n #_068BCF: INC.w $0BA0,X\n\n #_068BD2: LDA.w $0D10,X\n #_068BD5: SEC\n #_068BD6: SBC.b #$08\n #_068BD8: STA.w $0D10,X\n\n #_068BDB: LDA.w $0D30,X\n #_068BDE: SBC.b #$00\n #_068BE0: STA.w $0D30,X\n\n #_068BE3: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper", + "code": "SpritePrep_Shopkeeper:\n #_068BF1: INC.w $0BA0,X\n\n #_068BF4: LDA.w $0E40,X\n #_068BF7: ORA.b #$02\n #_068BF9: STA.w $0E40,X\n\n #_068BFC: LDA.w $0F50,X\n #_068BFF: ORA.b #$0C\n #_068C01: STA.w $0F50,X\n\n #_068C04: LDA.w $0E60,X\n #_068C07: ORA.b #$10\n #_068C09: STA.w $0E60,X\n\n #_068C0C: LDA.b $A0\n\n #_068C0E: LDY.b #$00\n\n.next_room\n #_068C10: CMP.w .rooms,Y\n #_068C13: BEQ .found_room\n\n #_068C15: INY\n #_068C16: BNE .next_room\n\n; ---------------------------------------------------------\n\n.found_room\n #_068C18: TYA\n #_068C19: JSL JumpTableLocal\n #_068C1D: dw SpritePrep_Shopkeeper_DarkWorldStock\n #_068C1F: dw SpritePrep_Shopkeeper_EastOfOutcasts\n #_068C21: dw SpritePrep_LostWoodsChestGame\n #_068C23: dw SpritePrep_ChestGameGuy\n #_068C25: dw SpritePrep_KakChestGame\n #_068C27: dw SpritePrep_Shopkeeper_StandardStock\n #_068C29: dw SpritePrep_NiceThief_WithGift\n #_068C2B: dw SpritePrep_Shopkeeper_StandardStock\n #_068C2D: dw SpritePrep_Shopkeeper_StandardStock\n #_068C2F: dw SpritePrep_NiceThief_WithGift\n #_068C31: dw SpritePrep_NiceThief_Desert\n #_068C33: dw SpritePrep_NiceThief_Ice\n #_068C35: dw SpritePrep_NiceThief_WithGift\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper_DarkWorldStock", + "code": "SpritePrep_Shopkeeper_DarkWorldStock:\n #_068C37: LDA.b #$00\n #_068C39: LDY.b #$07 ; Red potion\n #_068C3B: JSL ShopKeeper_SpawnShopItem\n\n #_068C3F: LDY.b #$08 ; Fighter shield\n #_068C41: BRA SpritePrep_Shopkeeper_SpawnItemAndBombs\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper_EastOfOutcasts", + "code": "SpritePrep_Shopkeeper_EastOfOutcasts:\n #_068C43: LDA.b #$00\n #_068C45: LDY.b #$09 ; Fire shield\n #_068C47: JSL ShopKeeper_SpawnShopItem\n\n #_068C4B: LDA.b #$01\n #_068C4D: LDY.b #$0D ; Bee\n #_068C4F: JSL ShopKeeper_SpawnShopItem\n\n #_068C53: LDA.b #$02\n #_068C55: LDY.b #$0B ; Arrows\n #_068C57: JSL ShopKeeper_SpawnShopItem\n #_068C5B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_LostWoodsChestGame", + "code": "SpritePrep_LostWoodsChestGame:\n #_068C5C: LDA.b #$04\n #_068C5E: BRA SpritePrep_Shopkeeper_SetType\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_ChestGameGuy", + "code": "SpritePrep_ChestGameGuy:\n #_068C60: LDA.b #$01\n #_068C62: STA.w $0DC0,X\n #_068C65: BRA SpritePrep_Shopkeeper_SetType\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_KakChestGame", + "code": "SpritePrep_KakChestGame:\n #_068C67: LDA.b #$03\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper_SetType", + "code": "SpritePrep_Shopkeeper_SetType:\n #_068C69: STA.w $0E80,X\n\n #_068C6C: LDA.b #$FF\n #_068C6E: STA.w $04C4\n\n #_068C71: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper_StandardStock", + "code": "SpritePrep_Shopkeeper_StandardStock:\n #_068C72: LDA.b #$00\n #_068C74: LDY.b #$07 ; Red potion\n #_068C76: JSL ShopKeeper_SpawnShopItem\n\n #_068C7A: LDY.b #$0A ; Heart\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Shopkeeper_SpawnItemAndBombs", + "code": "SpritePrep_Shopkeeper_SpawnItemAndBombs:\n #_068C7C: LDA.b #$01\n #_068C7E: JSL ShopKeeper_SpawnShopItem\n\n #_068C82: LDA.b #$02\n #_068C84: LDY.b #$0C ; Bombs\n #_068C86: JSL ShopKeeper_SpawnShopItem\n\n #_068C8A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_NiceThief_WithGift", + "code": "SpritePrep_NiceThief_WithGift:\n #_068C8B: LDA.b #$02\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_NiceThief_SetType", + "code": "SpritePrep_NiceThief_SetType:\n #_068C8D: STA.w $0E80,X\n\n #_068C90: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_NiceThief_Desert", + "code": "SpritePrep_NiceThief_Desert:\n #_068C91: LDA.b #$05\n\n #_068C93: BRA SpritePrep_NiceThief_SetType\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_NiceThief_Ice", + "code": "SpritePrep_NiceThief_Ice:\n #_068C95: LDA.b #$06\n\n #_068C97: BRA SpritePrep_NiceThief_SetType\n\n; =========================================================\n\npool SpritePrep_Storyteller\n\n.rooms\n #_068C99: db $0E ; ROOM 010E - bird\n #_068C9A: db $0E ; ROOM 010E - glover\n #_068C9B: db $12 ; ROOM 0112 - octorok\n #_068C9C: db $1A ; ROOM 011A - broccoli\n #_068C9D: db $14 ; ROOM 0114 - watto\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Storyteller", + "code": "SpritePrep_Storyteller:\n #_068C9E: INC.w $0BA0,X\n\n #_068CA1: LDA.b $A0\n\n #_068CA3: LDY.b #$00\n\n.next_room\n #_068CA5: CMP.w .rooms,Y\n #_068CA8: BEQ .found_room\n\n #_068CAA: INY\n #_068CAB: BNE .next_room\n\n; ---------------------------------------------------------\n\n.found_room\n #_068CAD: TYA\n #_068CAE: STA.w $0E80,X\n #_068CB1: BNE .exit\n\n #_068CB3: LDA.w $0D30,X\n #_068CB6: AND.b #$01\n #_068CB8: BEQ .exit\n\n #_068CBA: INC.w $0E80,X\n\n.exit\n #_068CBD: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Adults", + "code": "SpritePrep_Adults:\n #_068CC1: INC.w $0BA0,X\n\n #_068CC4: LDA.b $A0\n\n #_068CC6: LDY.b #$00\n\n.next_room\n #_068CC8: CMP.w .rooms,Y\n #_068CCB: BEQ .found_room\n\n #_068CCD: INY\n #_068CCE: BNE .next_room\n\n.found_room\n #_068CD0: TYA\n #_068CD1: STA.w $0E80,X\n\n #_068CD4: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Whirlpool", + "code": "SpritePrep_Whirlpool:\n #_068CD5: INC.w $0BA0,X\n\n #_068CD8: LDA.b #$01\n #_068CDA: STA.w $0D90,X\n\n #_068CDD: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Sage", + "code": "SpritePrep_Sage:\n #_068CDE: INC.w $0BA0,X\n\n #_068CE1: LDA.b $A0\n #_068CE3: CMP.b #$0A ; ROOM 010A\n #_068CE5: BNE .not_aginah\n\n #_068CE7: INC.w $0E80,X\n\n #_068CEA: LDA.b #$0B\n #_068CEC: STA.w $0F50,X\n\n.not_aginah\n #_068CEF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BonkItem", + "code": "SpritePrep_BonkItem:\n #_068CF2: LDA.b $1B\n #_068CF4: BEQ SpritePrep_LumberjackTree\n\n #_068CF6: LDA.b #$02\n #_068CF8: STA.w $0F20,X\n\n #_068CFB: LDA.b $A0\n #_068CFD: CMP.b #$07 ; ROOM 0107\n #_068CFF: BNE SpritePrep_BonkKey\n\n #_068D01: LDA.b $A1\n #_068D03: CMP.b #$01\n #_068D05: BNE SpritePrep_BonkKey\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BonkBook", + "code": "SpritePrep_BonkBook:\n #_068D07: LDA.l $7EF34E\n #_068D0B: BEQ .book_not_owned\n\n #_068D0D: STZ.w $0DD0,X\n\n #_068D10: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BonkKey", + "code": "SpritePrep_BonkKey:\n #_068D1A: LDA.w $0B9B\n #_068D1D: STA.w $0CBA,X\n\n #_068D20: TAY\n\n #_068D21: INC.w $0B9B\n\n #_068D24: LDA.w $0403\n #_068D27: AND.w .room_flags,Y\n #_068D2A: BEQ .not_obtained\n\n #_068D2C: STZ.w $0DD0,X\n\n.not_obtained\n #_068D2F: INC.w $0DC0,X\n\n #_068D32: LDA.b #$08\n #_068D34: STA.w $0F50,X\n\n #_068D37: LDA.w $0E60,X\n #_068D3A: ORA.b #$20\n #_068D3C: STA.w $0E60,X\n\n #_068D3F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_LumberjackTree", + "code": "SpritePrep_LumberjackTree:\n #_068D40: LDA.b #$02\n #_068D42: STA.w $0DC0,X\n\n #_068D45: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Kiki", + "code": "SpritePrep_Kiki:\n #_068D46: INC.w $0BA0,X\n\n #_068D49: PHX\n\n #_068D4A: LDX.b $8A\n #_068D4C: LDA.l $7EF280,X\n\n #_068D50: PLX\n\n #_068D51: AND.b #$20\n #_068D53: BEQ .monkey_lives\n\n #_068D55: STZ.w $0DD0,X\n\n.monkey_lives\n #_068D58: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Locksmith", + "code": "SpritePrep_Locksmith:\n #_068D59: INC.w $0BA0,X\n\n #_068D5C: LDA.l $7EF3CC\n #_068D60: CMP.b #$09 ; FOLLOWER 09\n #_068D62: BNE .not_already_following\n\n #_068D64: STZ.w $0DD0,X\n\n #_068D67: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_SickKid", + "code": "SpritePrep_SickKid:\n #_068D7F: LDA.l $7EF34D\n #_068D83: BEQ .no_net\n\n #_068D85: LDA.b #$03\n #_068D87: STA.w $0D80,X\n\n.no_net\n #_068D8A: INC.w $0BA0,X\n\n #_068D8D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Tektite", + "code": "SpritePrep_Tektite:\n #_068D94: LDA.w $0D10,X\n\n #_068D97: LSR A\n #_068D98: LSR A\n #_068D99: LSR A\n #_068D9A: LSR A\n\n #_068D9B: AND.b #$01\n #_068D9D: STA.w $0D90,X\n\n #_068DA0: TAY\n\n #_068DA1: LDA.w .palette,Y\n #_068DA4: STA.w $0F50,X\n\n #_068DA7: LDA.w .health,Y\n #_068DAA: STA.w $0E50,X\n\n #_068DAD: LDA.w .damage,Y\n #_068DB0: STA.w $0CD2,X\n\n #_068DB3: LDA.b #$10\n #_068DB5: JSR Sprite_ApplySpeedTowardsLink\n\n #_068DB8: LDA.b #$20\n #_068DBA: STA.w $0F80,X\n\n #_068DBD: INC.w $0D80,X\n\n #_068DC0: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Chainchomp_bounce", + "code": "SpritePrep_Chainchomp_bounce:\n #_068DC1: JSL SpritePrep_Chainchomp\n\n #_068DC5: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BigFairy", + "code": "SpritePrep_BigFairy:\n #_068DC6: LDA.b #$18\n #_068DC8: STA.w $0F70,X\n\n #_068DCB: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_068DCE: JMP.w SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MrsSahasrahla", + "code": "SpritePrep_MrsSahasrahla:\n #_068DD1: LDA.w $0D00,X\n #_068DD4: CLC\n #_068DD5: ADC.b #$08\n #_068DD7: STA.w $0D00,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MagicBat", + "code": "SpritePrep_MagicBat:", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Lumberjacks", + "code": "SpritePrep_Lumberjacks:\n #_068DDA: JSR SpritePrep_MoveRight_8px\n\n #_068DDD: JMP.w SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FortuneTeller", + "code": "SpritePrep_FortuneTeller:\n #_068DE0: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_068DE3: INC.w $0BA0,X\n\n #_068DE6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Leever", + "code": "SpritePrep_Leever:\n #_068DE9: LDA.w $0D10,X\n\n #_068DEC: LSR A\n #_068DED: LSR A\n #_068DEE: LSR A\n #_068DEF: LSR A\n\n #_068DF0: AND.b #$01\n #_068DF2: STA.w $0D90,X\n\n #_068DF5: TAY\n\n #_068DF6: LDA.w .palette,Y\n #_068DF9: STA.w $0F50,X\n\n #_068DFC: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Hobo", + "code": "SpritePrep_Hobo:\n #_068DFD: LDY.b #$0F\n\n.next_spawn\n #_068DFF: PHY\n\n #_068E00: JSR SpritePrep_Hobo_SpawnSmoke\n\n #_068E03: PLY\n\n #_068E04: DEY\n #_068E05: BNE .next_spawn\n\n #_068E07: LDY.b #$0F\n\n.next_check\n #_068E09: LDA.w $0E20,Y\n #_068E0C: CMP.b #$2B ; SPRITE 2B\n #_068E0E: BNE .kill_the_hobo\n\n #_068E10: LDA.b #$00\n #_068E12: STA.w $0DD0,Y\n\n.kill_the_hobo\n #_068E15: DEY\n #_068E16: BNE .next_check\n\n; ---------------------------------------------------------\n\n #_068E18: JSR SpritePrep_Hobo_SpawnFire\n\n #_068E1B: TXY\n\n #_068E1C: LDA.l $7EF3C9\n #_068E20: AND.b #$01\n #_068E22: BEQ .can_give_bottle\n\n #_068E24: LDA.b #$03\n #_068E26: STA.w $0D80\n\n.can_give_bottle\n #_068E29: TYX\n\n #_068E2A: LDA.b #$01\n #_068E2C: STA.w $0BA0\n\n #_068E2F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MasterSword", + "code": "SpritePrep_MasterSword:\n #_068E30: LDA.w $0D10,X\n #_068E33: CLC\n #_068E34: ADC.b #$06\n #_068E36: STA.w $0D10,X\n\n #_068E39: LDA.w $0D00,X\n #_068E3C: ADC.b #$06\n #_068E3E: STA.w $0D00,X\n\n #_068E41: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Roller_HorizontalRightFirst", + "code": "SpritePrep_Roller_HorizontalRightFirst:\n #_068E42: LDY.b #$00\n #_068E44: BRA .get_x_position\n\n; ---------------------------------------------------------\n\n#SpritePrep_Roller_HorizontalLeftFirst:\n #_068E46: LDY.b #$01\n\n.get_x_position\n #_068E48: LDA.w $0D10,X\n #_068E4B: EOR.b #$10\n\n #_068E4D: BRA SpritePrep_Roller_Main\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Roller_VerticalDownFirst", + "code": "SpritePrep_Roller_VerticalDownFirst:\n #_068E4F: LDY.b #$02\n #_068E51: BRA .get_y_position\n\n; ---------------------------------------------------------\n\n#SpritePrep_Roller_VerticalUpFirst:\n #_068E53: LDY.b #$03\n\n.get_y_position\n #_068E55: LDA.w $0D00,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Roller_Main", + "code": "SpritePrep_Roller_Main:\n #_068E58: AND.b #$10\n\n #_068E5A: LSR A\n #_068E5B: LSR A\n #_068E5C: LSR A\n #_068E5D: LSR A\n\n #_068E5E: STA.w $0D80,X\n\n #_068E61: BEQ .leave_hitbox\n\n #_068E63: INC.w $0F60,X\n\n.leave_hitbox\n #_068E66: TYA\n #_068E67: STA.w $0DE0,X\n\n #_068E6A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Kodongo", + "code": "SpritePrep_Kodongo:\n #_068E6B: LDA.w $0D10,X\n #_068E6E: CLC\n #_068E6F: ADC.b #$04\n #_068E71: STA.w $0D10,X\n\n #_068E74: LDA.w $0D00,X\n #_068E77: SEC\n #_068E78: SBC.b #$05\n #_068E7A: STA.w $0D00,X\n\n #_068E7D: LDA.w $0D20,X\n #_068E80: SBC.b #$00\n #_068E82: STA.w $0D20,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Spark", + "code": "SpritePrep_Spark:\n #_068E85: DEC.w $0E30,X\n\n #_068E88: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_068E89", + "code": "UNREACHABLE_068E89:\n #_068E89: db $00, $E0, $F8, $18, $E8, $18, $D0, $30\n #_068E91: db $E8, $18, $E0, $F8, $18, $00, $00, $FF\n #_068E99: db $FF, $00, $FF, $00, $FF, $00, $FF, $00\n #_068EA1: db $FF, $FF, $00, $00, $C0, $D0, $D8, $D0\n #_068EA9: db $F0, $F0, $00, $00, $10, $10, $28, $30\n #_068EB1: db $30, $40, $FF, $FF, $FF, $FF, $FF, $FF\n #_068EB9: db $00, $00, $00, $00, $00, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_LostWoodsBird", + "code": "SpritePrep_LostWoodsBird:\n #_068EC1: JSL GetRandomNumber\n #_068EC5: AND.b #$1F\n #_068EC7: SEC\n #_068EC8: SBC.b #$10\n #_068ECA: STA.w $0F80,X\n\n #_068ECD: LDA.b #$40\n #_068ECF: STA.w $0F70,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_LostWoodsSquirrel", + "code": "SpritePrep_LostWoodsSquirrel:\n #_068ED2: JSR Sprite_IsRightOfLink\n\n #_068ED5: LDA.b #$10\n\n #_068ED7: CPY.b #$00\n #_068ED9: BEQ .run_right\n\n #_068EDB: LDA.b #$F0\n\n.run_right\n #_068EDD: STA.w $0D50,X\n\n #_068EE0: LDA.b #$FC\n\n #_068EE2: LDY.w $069E\n #_068EE5: BPL .run_down\n\n #_068EE7: LDA.b #$04\n\n.run_down\n #_068EE9: STA.w $0D40,X\n #_068EEC: STA.w $0BA0,X\n\n #_068EEF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Antifairy", + "code": "SpritePrep_Antifairy:\n #_068EF2: LDA.w $0D10,X\n #_068EF5: LSR A\n #_068EF6: LSR A\n #_068EF7: LSR A\n #_068EF8: LSR A\n #_068EF9: AND.b #$01\n #_068EFB: TAY\n\n #_068EFC: LDA.w .speed_x,Y\n #_068EFF: STA.w $0D50,X\n\n #_068F02: LDA.b #$F0\n #_068F04: STA.w $0D40,X\n\n #_068F07: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FallingIce", + "code": "SpritePrep_FallingIce:\n #_068F08: JSR SpritePrep_Boss\n\n #_068F0B: INC.w $0BA0,X\n\n #_068F0E: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_KingZora", + "code": "SpritePrep_KingZora:\n #_068F0F: LDA.l $7EF356\n #_068F13: BEQ .flippers_sold_out\n\n #_068F15: STZ.w $0DD0,X\n\n #_068F18: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Boss", + "code": "SpritePrep_Boss:\n #_068F1C: LDA.w $0403\n #_068F1F: BPL .boss_alive\n\n #_068F21: PLA\n #_068F22: PLA\n\n #_068F23: STZ.w $0DD0,X\n\n #_068F26: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_ArmosKnight", + "code": "SpritePrep_ArmosKnight:\n #_068F3F: JSR SpritePrep_Boss\n\n #_068F42: LDA.b #$FF\n #_068F44: STA.w $0DF0,X\n\n #_068F47: INC.w $0FF8\n\n #_068F4A: JMP.w SpritePrep_MoveDown_8px_Right8px\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DesertStatue", + "code": "SpritePrep_DesertStatue:\n #_068F4D: LDA.w $0B6A\n #_068F50: STA.w $0D90,X\n\n #_068F53: INC.w $0B6A\n\n #_068F56: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_068F59: LDA.w $0D10,X\n\n #_068F5C: LDY.b #$01\n\n #_068F5E: CMP.b #$30\n #_068F60: BCC .ignore_position\n\n #_068F62: INY\n\n #_068F63: CMP.b #$E0\n #_068F65: BCS .ignore_position\n\n #_068F67: INY\n\n.ignore_position\n #_068F68: TYA\n #_068F69: STA.w $0DE0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingD", + "code": "SpritePrep_DoNothingD:\n #_068F6C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Octorok", + "code": "SpritePrep_Octorok:\n #_068F71: LDY.w $0FFF\n\n #_068F74: LDA.w .health,Y\n #_068F77: STA.w $0E50,X\n\n #_068F7A: LDA.w .damage,Y\n #_068F7D: STA.w $0CD2,X\n\n #_068F80: JSL GetRandomNumber\n #_068F84: AND.b #$7F\n #_068F86: STA.w $0DF0,X\n\n #_068F89: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Moldorm_bounce", + "code": "SpritePrep_Moldorm_bounce:\n #_068F8A: JSR SpritePrep_Boss\n\n #_068F8D: INC.w $0BA0,X\n\n #_068F90: JSL SpritePrep_Moldorm\n\n #_068F94: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Lanmolas_bounce", + "code": "SpritePrep_Lanmolas_bounce:\n #_068F95: JSR SpritePrep_Boss\n #_068F98: JSL SpritePrep_Lanmolas\n\n #_068F9C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BigSpike", + "code": "SpritePrep_BigSpike:\n #_068F9D: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_068FA0: BRA SpritePrep_CacheOriginalCoordinates\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_SwimmingZora", + "code": "SpritePrep_SwimmingZora:\n #_068FA2: LDA.b #$40\n #_068FA4: STA.w $0DF0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Geldman", + "code": "SpritePrep_Geldman:\n #_068FA7: LDA.b #$08\n #_068FA9: CLC\n #_068FAA: ADC.w $0D10,X\n #_068FAD: STA.w $0D10,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_CacheOriginalCoordinates", + "code": "SpritePrep_CacheOriginalCoordinates:\n #_068FB0: LDA.w $0D10,X\n #_068FB3: STA.w $0D90,X\n\n #_068FB6: LDA.w $0D30,X\n #_068FB9: STA.w $0DA0,X\n\n #_068FBC: LDA.w $0D00,X\n #_068FBF: STA.w $0DB0,X\n\n #_068FC2: LDA.w $0D20,X\n #_068FC5: STA.w $0EB0,X\n\n #_068FC8: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_WalkingZora", + "code": "SpritePrep_WalkingZora:\n #_068FC9: LDA.b #$60\n #_068FCB: STA.w $0DF0,X\n\n #_068FCE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_StandardGuard_indoors", + "code": "SpritePrep_StandardGuard_indoors:\n #_068FCF: ASL.w $0BE0,X\n #_068FD2: LSR.w $0BE0,X\n\n #_068FD5: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_StandardGuard", + "code": "SpritePrep_StandardGuard:\n #_068FD6: LDA.w $0E30,X\n #_068FD9: BEQ .dont_turn\n\n #_068FDB: LDY.b #$00\n\n #_068FDD: AND.b #$07\n #_068FDF: CMP.b #$05\n #_068FE1: BCS .special_turn\n\n #_068FE3: DEC A\n #_068FE4: EOR.b #$01\n #_068FE6: STA.w $0DE0,X\n\n.dont_turn\n #_068FE9: LDA.b $1B\n #_068FEB: BNE .indoors\n\n #_068FED: LDA.b #$01\n #_068FEF: STA.w $0D80,X\n\n #_068FF2: LDA.b #$70\n #_068FF4: STA.w $0DF0,X\n\n #_068FF7: JSR Sprite_DirectionToFaceLink\n\n #_068FFA: TYA\n #_068FFB: STA.w $0DE0,X\n #_068FFE: STA.w $0EB0,X\n\n; =========================================================\n\n#SpritePrep_CoolerGuard:\n #_069001: BRA SpritePrep_CoolestGuardEver\n\n.special_turn\n #_069003: BEQ .not_five\n\n #_069005: LDY.b #$04\n\n.not_five\n #_069007: LDA.w $0E30,X\n\n #_06900A: LSR A\n #_06900B: LSR A\n #_06900C: LSR A\n\n #_06900D: AND.b #$03\n #_06900F: STA.b $00\n\n #_069011: TYA\n #_069012: ORA.b $00\n #_069014: TAY\n\n #_069015: LDA.w .data,Y\n #_069018: STA.w $0DA0,X\n\n #_06901B: LDA.w SprTileDie,X\n #_06901E: AND.b #$0F\n #_069020: ORA.b #$50\n #_069022: STA.w SprTileDie,X\n\n; =========================================================\n\n#SpritePrep_CoolestGuardEver:\n #_069025: LDA.b $11\n #_069027: PHA\n\n #_069028: STZ.b $11\n\n #_06902A: SEC\n #_06902B: ROR.w $0CAA,X\n\n #_06902E: JSR SpriteModule_Active\n #_069031: JSR SpriteModule_Active\n\n #_069034: ASL.w $0CAA,X\n\n #_069037: PLA\n #_069038: STA.b $11\n\n #_06903A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_TalkingTree", + "code": "SpritePrep_TalkingTree:\n #_069043: INC.w $0BA0,X\n\n #_069046: LDA.w $0D10,X\n #_069049: SEC\n #_06904A: SBC.b #$08\n #_06904C: STA.w $0D10,X\n\n #_06904F: LDA.w $0D30,X\n #_069052: SBC.b #$00\n #_069054: STA.w $0D30,X\n\n #_069057: LDA.b #$00\n #_069059: JSL SpritePrep_TalkingTree_SpawnEyeball\n\n #_06905D: LDA.b #$01\n #_06905F: JSL SpritePrep_TalkingTree_SpawnEyeball\n\n #_069063: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_CrystalSwitch", + "code": "SpritePrep_CrystalSwitch:\n #_069064: LDA.l $7EC172\n #_069068: AND.b #$01\n #_06906A: TAY\n\n #_06906B: LDA.w CrystalSwitch_Palette,Y\n #_06906E: ORA.w $0F50,X\n #_069071: STA.w $0F50,X\n\n #_069074: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FluteKid", + "code": "SpritePrep_FluteKid:\n #_069075: INC.w $0BA0,X\n\n #_069078: LDA.l $7EF3CA\n #_06907C: ASL A\n #_06907D: ROL A\n #_06907E: ROL A\n #_06907F: AND.b #$01\n #_069081: STA.w $0E80,X\n #_069084: BEQ .light_world\n\n; ---------------------------------------------------------\n\n.stumpy\n #_069086: LDA.l $7EF3C9\n #_06908A: AND.b #$08\n #_06908C: BNE .not_stumpified\n\n #_06908E: LDA.l $7EF34C\n #_069092: CMP.b #$02\n #_069094: BCC .no_flute\n #_069096: BEQ .have_shovel\n\n; ---------------------------------------------------------\n\n.not_stumpified\n #_069098: LDA.b #$03\n #_06909A: STA.w $0DC0,X\n\n #_06909D: LDA.b #$05\n #_06909F: STA.w $0D80,X\n\n #_0690A2: BRA .no_flute\n\n; ---------------------------------------------------------\n\n.have_shovel\n #_0690A4: LDA.b #$01\n #_0690A6: STA.w $0DC0,X\n\n.no_flute\n #_0690A9: JSR SpritePrep_MoveRight_8px\n\n #_0690AC: LDA.w $0D00,X\n #_0690AF: SEC\n #_0690B0: SBC.b #$08\n #_0690B2: STA.w $0D00,X\n\n #_0690B5: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MoveRight_7px", + "code": "SpritePrep_MoveRight_7px:\n #_0690C2: LDA.w $0D10,X\n #_0690C5: CLC\n #_0690C6: ADC.b #$07\n #_0690C8: STA.w $0D10,X\n\n #_0690CB: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MoveDown_8px", + "code": "SpritePrep_MoveDown_8px:\n #_0690CC: LDA.w $0D00,X\n #_0690CF: CLC\n #_0690D0: ADC.b #$08\n #_0690D2: STA.w $0D00,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingE", + "code": "SpritePrep_DoNothingE:\n #_0690D5: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_PedestalPlaque", + "code": "SpritePrep_PedestalPlaque:\n #_0690D6: INC.w $0BA0,X\n\n #_0690D9: LDA.b $8A\n #_0690DB: CMP.b #$30 ; OW 30\n #_0690DD: BEQ SpritePrep_MoveRight_7px\n\n #_0690DF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Stalfos", + "code": "SpritePrep_Stalfos:\n #_0690E0: LDA.w $0D10,X\n #_0690E3: AND.b #$10\n #_0690E5: STA.w $0E30,X\n #_0690E8: BEQ .grounded\n\n #_0690EA: LDA.b #$07\n #_0690EC: STA.w $0F50,X\n\n.grounded\n #_0690EF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_KholdstareShell", + "code": "SpritePrep_KholdstareShell:\n #_0690F0: JSR SpritePrep_Boss\n\n #_0690F3: LDA.b #$C0\n #_0690F5: STA.w $0E00,X\n\n #_0690F8: BRA SpritePrep_MoveDown_8px_Right8px\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Kholdstare", + "code": "SpritePrep_Kholdstare:\n #_0690FA: JSR SpritePrep_Boss\n\n #_0690FD: LDA.b #$03\n #_0690FF: STA.w $0D80,X\n\n #_069102: JSR SpritePrep_IgnoreProjectiles\n\n #_069105: BRA SpritePrep_MoveDown_8px_Right8px\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Bumper", + "code": "SpritePrep_Bumper:\n #_069107: JSR SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MoveDown_8px_Right8px", + "code": "SpritePrep_MoveDown_8px_Right8px:\n #_06910A: PHX\n\n #_06910B: TXA\n #_06910C: CLC\n #_06910D: ADC.b #$10\n #_06910F: TAX\n\n #_069110: JSR SpritePrep_MoveDown_8px\n\n #_069113: PLX\n\n #_069114: BRA SpritePrep_MoveDown_8px\n\n; =========================================================\n\npool SpritePrep_HardhatBeetle\n\n.palette\n #_069116: db $06, $08\n\n.health\n #_069118: db 32, 6\n\n.speed\n #_06911A: db $10, $0C\n\n.ai\n #_06911C: db $01, $03\n\n.prize\n #_06911E: db $02, $06\n\n.bump\n #_069120: db $05, $03\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HardhatBeetle", + "code": "SpritePrep_HardhatBeetle:\n #_069122: LDY.b #$00\n\n #_069124: LDA.w $0D10,X\n #_069127: AND.b #$10\n #_069129: BEQ .red\n\n #_06912B: INY\n\n.red\n #_06912C: LDA.w .palette,Y\n #_06912F: STA.w $0F50,X\n\n #_069132: LDA.w .health,Y\n #_069135: STA.w $0E50,X\n\n #_069138: LDA.w .speed,Y\n #_06913B: STA.w $0D90,X\n\n #_06913E: LDA.w .ai,Y\n #_069141: STA.w $0D80,X\n\n #_069144: LDA.w .prize,Y\n #_069147: STA.w $0BE0,X\n\n #_06914A: LDA.w .bump,Y\n #_06914D: STA.w $0CD2,X\n\n #_069150: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MiniHelmasaur", + "code": "SpritePrep_MiniHelmasaur:\n #_069151: LDA.b #$10\n #_069153: STA.w $0D90,X\n\n #_069156: LDA.b #$01\n #_069158: STA.w $0D80,X\n\n #_06915B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Fairy", + "code": "SpritePrep_Fairy:\n #_06915C: JSL GetRandomNumber\n #_069160: AND.b #$01\n #_069162: STA.w $0D90,X\n\n #_069165: EOR.b #$01\n #_069167: STA.w $0DE0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Absorbable", + "code": "SpritePrep_Absorbable:\n #_06916A: LDA.b $1B\n #_06916C: BNE SpritePrep_DoNothingF\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_OverworldBonkItem", + "code": "SpritePrep_OverworldBonkItem:\n #_06916E: INC.w $0E90,X\n #_069171: INC.w $0BA0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingF", + "code": "SpritePrep_DoNothingF:\n #_069174: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_NiceBee", + "code": "SpritePrep_NiceBee:\n #_069175: LDA.l $7EF35C\n #_069179: ORA.l $7EF35D\n #_06917D: ORA.l $7EF35E\n #_069181: ORA.l $7EF35F\n #_069185: AND.b #$08\n #_069187: BEQ .bees_for_everyone_like_that_oprah_gif\n\n #_069189: STZ.w $0DD0,X\n\n.bees_for_everyone_like_that_oprah_gif\n #_06918C: INC.w $0E90,X\n #_06918F: INC.w $0BA0,X\n\n #_069192: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Agahnim", + "code": "SpritePrep_Agahnim:\n #_069195: JSR SpritePrep_Boss\n\n #_069198: LDA.b #$00\n #_06919A: STA.w $0DC0,X\n\n #_06919D: LDA.b #$03\n #_06919F: STA.w $0DE0,X\n\n #_0691A2: JSR SpritePrep_MoveDown_8px_Right8px\n\n #_0691A5: LDY.w $0FFF\n\n #_0691A8: LDA.w .palette,Y\n #_0691AB: STA.w $0F50,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingG", + "code": "SpritePrep_DoNothingG:\n #_0691AE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Eyegore_bounce", + "code": "SpritePrep_Eyegore_bounce:\n #_0691AF: JSL SpritePrep_Eyegore\n\n #_0691B3: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FireBar", + "code": "SpritePrep_FireBar:\n #_0691B4: INC.w $0DA0,X\n\n #_0691B7: JMP.w SpritePrep_IgnoreProjectiles\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Trinexx", + "code": "SpritePrep_Trinexx:\n #_0691BA: JSR SpritePrep_Boss\n #_0691BD: JSL Trinexx_Initialize\n #_0691C1: JSR SpritePrep_FreeUpBossSegmentSlots\n\n #_0691C4: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HelmasaurKing", + "code": "SpritePrep_HelmasaurKing:\n #_0691C5: JSR SpritePrep_Boss\n #_0691C8: JSL HelmasaurKing_Initialize\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FreeUpBossSegmentSlots", + "code": "SpritePrep_FreeUpBossSegmentSlots:\n #_0691CC: LDY.b #$0F\n #_0691CE: LDA.b #$00\n\n.next\n #_0691D0: STA.w $1D00,Y\n\n #_0691D3: DEY\n #_0691D4: BPL .next\n\n #_0691D6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Spike", + "code": "SpritePrep_Spike:\n #_0691D7: LDA.b #$20\n #_0691D9: STA.w $0D50,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_RockStal", + "code": "SpritePrep_RockStal:\n #_0691DC: LDA.b #$F0\n #_0691DE: STA.w $0D40,X\n\n #_0691E1: JSR Sprite_Move_Y_Bank06\n\n #_0691E4: STZ.w $0D40,X\n\n #_0691E7: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Blob", + "code": "SpritePrep_Blob:\n #_0691E8: LDA.b #$04\n #_0691EA: STA.w $0DC0,X\n\n #_0691ED: JSR SpritePrep_IgnoreProjectiles\n\n #_0691F0: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Arrghus", + "code": "SpritePrep_Arrghus:\n #_0691F1: JSR SpritePrep_Boss\n\n #_0691F4: LDA.b #$18\n #_0691F6: STA.w $0F70,X\n\n #_0691F9: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Arrghi", + "code": "SpritePrep_Arrghi:\n #_0691FA: JSR SpritePrep_Boss\n\n #_0691FD: JSL GetRandomNumber\n\n #_069201: STA.w $0E80,X\n\n #_069204: CPX.b #$0D\n #_069206: BNE .not_last_puff\n\n #_069208: STZ.w $0B0A\n #_06920B: STZ.w $0B0B\n\n #_06920E: PHX\n\n #_06920F: LDX.b #$00\n #_069211: JSL Arrghus_HandlePuffs_long\n\n #_069215: PLX\n\n.not_last_puff\n #_069216: LDA.w $0B0F,X\n #_069219: STA.w $0D10,X\n\n #_06921C: LDA.w $0B1F,X\n #_06921F: STA.w $0D30,X\n\n #_069222: LDA.w $0B2F,X\n #_069225: STA.w $0D00,X\n\n #_069228: LDA.w $0B3F,X\n #_06922B: STA.w $0D20,X\n\n #_06922E: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Mothula", + "code": "SpritePrep_Mothula:\n #_06922F: JSR SpritePrep_Boss\n\n #_069232: LDA.b #$50\n #_069234: STA.w $0DF0,X\n\n #_069237: INC.w $0BA0,X\n\n #_06923A: LDA.b #$02\n #_06923C: STA.w $0DC0,X\n\n #_06923F: INC.w $041A\n\n #_069242: LDA.b #$70\n #_069244: STA.w $0DB0,X\n\n #_069247: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_AntifairyCircle_bounce", + "code": "SpritePrep_AntifairyCircle_bounce:\n #_069248: JSL SpritePrep_AntifairyCircle\n\n #_06924C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_DoNothingH", + "code": "SpritePrep_DoNothingH:\n #_06924D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BigKey", + "code": "SpritePrep_BigKey:\n #_06924E: JSR SpritePrep_MoveRight_8px\n\n #_069251: LDA.b #$FF\n #_069253: STA.w $0E30,X\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_BigKey_load_graphics", + "code": "SpritePrep_BigKey_load_graphics:\n #_069256: PHX\n #_069257: PHY\n\n #_069258: LDA.b #$22\n #_06925A: JSL WriteTo4BPPBuffer_item_gfx\n\n #_06925E: PLY\n #_06925F: PLX\n\n #_069260: BRA SpritePrep_SetKeyIndex\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_SmallKey", + "code": "SpritePrep_SmallKey:\n #_069262: LDA.b #$FF\n #_069264: STA.w $0E30,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_SetKeyIndex", + "code": "SpritePrep_SetKeyIndex:\n #_069267: LDA.w $0B9B\n #_06926A: STA.w $0CBA,X\n\n #_06926D: INC.w $0B9B\n\n #_069270: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Active", + "code": "SpriteModule_Active:\n #_069271: LDA.w $0E20,X\n\n #_069274: REP #$30\n\n #_069276: AND.w #$00FF\n #_069279: ASL A\n #_06927A: TAY\n\n #_06927B: LDA.w .vectors,Y\n #_06927E: DEC A\n #_06927F: PHA\n\n #_069280: SEP #$30\n\n #_069282: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_09_Moldorm_bounce", + "code": "Sprite_09_Moldorm_bounce:\n #_069469: JSL Sprite_09_Moldorm\n\n #_06946D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_00_Raven_bounce", + "code": "Sprite_00_Raven_bounce:\n #_06946E: JSL Sprite_00_Raven\n\n #_069472: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_01_Vulture_bounce", + "code": "Sprite_01_Vulture_bounce:\n #_069473: JSL Sprite_01_Vulture\n\n #_069477: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_27_Deadrock", + "code": "Sprite_27_Deadrock:\n #_06948A: LDA.w $0E10,X\n #_06948D: BEQ .not_stunned\n\n #_06948F: AND.b #$04\n #_069491: BNE .normal\n\n.stunned\n #_069493: LDY.b #$08\n #_069495: BRA .continue\n\n.not_stunned\n #_069497: LDA.w $0D80,X\n #_06949A: CMP.b #$02\n #_06949C: BEQ .stunned\n\n.normal\n #_06949E: LDY.w $0D90,X\n\n; ---------------------------------------------------------\n\n.continue\n #_0694A1: LDA.w .anim_step,Y\n #_0694A4: STA.w $0DC0,X\n\n #_0694A7: LDA.w $0F50,X\n #_0694AA: AND.b #$BF\n #_0694AC: ORA.w .flip,Y\n #_0694AF: STA.w $0F50,X\n\n #_0694B2: JSR SpriteDraw_SingleLarge\n #_0694B5: JSR Sprite_CheckIfActive_Bank06\n\n #_0694B8: LDA.w $0EA0,X\n #_0694BB: BNE .no_sfx_or_damage\n\n #_0694BD: JSR Sprite_CheckDamageFromLink\n #_0694C0: BCC .no_sfx_or_damage\n\n #_0694C2: LDA.w $012E\n #_0694C5: BNE .no_sfx_or_damage\n\n #_0694C7: LDA.b #$0B ; SFX2.0B\n #_0694C9: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_sfx_or_damage\n #_0694CD: JSR Sprite_CheckDamageToLink_same_layer\n #_0694D0: BCC .no_contact\n\n #_0694D2: JSL Sprite_CancelHookshot\n #_0694D6: JSL Sprite_RepelDash_long\n\n.no_contact\n #_0694DA: LDA.w $0EA0,X\n #_0694DD: CMP.b #$0E\n #_0694DF: BNE .dont_get_stunned\n\n #_0694E1: LDA.b #$02\n #_0694E3: STA.w $0D80,X\n\n #_0694E6: LDA.b #$FF\n #_0694E8: STA.w $0E00,X\n\n #_0694EB: LDA.b #$40\n #_0694ED: STA.w $0E10,X\n\n; ---------------------------------------------------------\n\n.dont_get_stunned\n #_0694F0: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_0694F3: LDA.w $0D80,X\n #_0694F6: JSL JumpTableLocal\n #_0694FA: dw Deadrock_Halted\n #_0694FC: dw Deadrock_Walk\n #_0694FE: dw Deadrock_Stunned\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "DeadRockSpeedX", + "code": "DeadRockSpeedX:\n #_069500: db 32, -32 ; bleeds into next\n", + "file": "bank_06.asm" + }, + { + "name": "DeadRockSpeedY", + "code": "DeadRockSpeedY:\n #_069502: db 0, 0, 32, -32\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Deadrock_Halted", + "code": "Deadrock_Halted:\n #_069506: LDA.w $0DF0,X\n #_069509: BNE EXIT_069558\n\n #_06950B: ASL.w $0E40,X\n #_06950E: LSR.w $0E40,X\n\n #_069511: LDA.w $0CAA,X\n #_069514: AND.b #$FB\n #_069516: STA.w $0CAA,X\n\n #_069519: LDA.w $0E60,X\n #_06951C: AND.b #$BF\n #_06951E: STA.w $0E60,X\n\n #_069521: INC.w $0D80,X\n\n #_069524: JSL GetRandomNumber\n #_069528: AND.b #$1F\n #_06952A: ADC.b #$20\n #_06952C: STA.w $0DF0,X\n\n #_06952F: INC.w $0DA0,X\n\n #_069532: LDA.w $0DA0,X\n #_069535: CMP.b #$04\n #_069537: BNE .use_random_direction\n\n #_069539: STZ.w $0DA0,X\n\n #_06953C: JSR Sprite_DirectionToFaceLink\n #_06953F: TYA\n\n #_069540: BRA DeadRock_SetSpeed\n\n.use_random_direction\n #_069542: JSL GetRandomNumber\n #_069546: AND.b #$03\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "DeadRock_SetSpeed", + "code": "DeadRock_SetSpeed:\n #_069548: STA.w $0DE0,X\n\n #_06954B: TAY\n\n #_06954C: LDA.w DeadRockSpeedX,Y\n #_06954F: STA.w $0D50,X\n\n #_069552: LDA.w DeadRockSpeedY,Y\n #_069555: STA.w $0D40,X\n\n; ---------------------------------------------------------\n\n#EXIT_069558:\n #_069558: RTS", + "file": "bank_06.asm" + }, + { + "name": "Deadrock_Walk", + "code": "Deadrock_Walk:\n #_069559: LDA.w $0DF0,X\n #_06955C: BNE .delay\n\n #_06955E: STZ.w $0D80,X\n\n #_069561: LDA.b #$20\n #_069563: STA.w $0DF0,X\n\n #_069566: RTS", + "file": "bank_06.asm" + }, + { + "name": "Deadrock_Stunned", + "code": "Deadrock_Stunned:\n #_06958F: LDA.w $0E40,X\n #_069592: ORA.b #$80\n #_069594: STA.w $0E40,X\n\n #_069597: LDA.w $0CAA,X\n #_06959A: ORA.b #$04\n #_06959C: STA.w $0CAA,X\n\n #_06959F: LDA.w $0E60,X\n #_0695A2: ORA.b #$40\n #_0695A4: STA.w $0E60,X\n\n #_0695A7: LDA.b $1A\n #_0695A9: AND.b #$01\n #_0695AB: BNE .resist_timer\n\n #_0695AD: LDA.w $0E00,X\n #_0695B0: BNE .delay\n\n #_0695B2: STZ.w $0D80,X\n\n #_0695B5: LDA.b #$10\n #_0695B7: STA.w $0DF0,X\n\n #_0695BA: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_20_Sluggula", + "code": "Sprite_20_Sluggula:\n #_0695D9: LDA.w $0E80,X\n #_0695DC: AND.b #$08\n #_0695DE: LSR A\n #_0695DF: LSR A\n #_0695E0: LSR A\n #_0695E1: STA.b $00\n\n #_0695E3: LDA.w $0DE0,X\n #_0695E6: ASL A\n #_0695E7: ORA.b $00\n #_0695E9: TAY\n\n #_0695EA: LDA.w .anim_step,Y\n #_0695ED: STA.w $0DC0,X\n\n #_0695F0: LDA.w $0F50,X\n #_0695F3: AND.b #$BF\n #_0695F5: ORA.w .flip,Y\n #_0695F8: STA.w $0F50,X\n\n #_0695FB: JSR SpriteDraw_SingleLarge\n #_0695FE: JSR Sprite_CheckIfActive_Bank06\n #_069601: JSR Sprite_CheckIfRecoiling_Bank06\n #_069604: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_069607: INC.w $0E80,X\n\n #_06960A: LDA.w $0D80,X\n #_06960D: JSL JumpTableLocal\n #_069611: dw Sluggula_Normal\n #_069613: dw Sluggula_BreakFromBombing\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SluggulaAndMoblin_SpeedX", + "code": "SluggulaAndMoblin_SpeedX:\n #_069615: db 16, -16 ; bleeds into next\n", + "file": "bank_06.asm" + }, + { + "name": "SluggulaAndMoblin_SpeedY", + "code": "SluggulaAndMoblin_SpeedY:\n #_069617: db 0, 0, 16, -16\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sluggula_Normal", + "code": "Sluggula_Normal:\n #_06961B: LDA.w $0DF0,X\n #_06961E: BNE .delay\n\n #_069620: INC.w $0D80,X\n\n #_069623: JSL GetRandomNumber\n #_069627: AND.b #$1F\n #_069629: ADC.b #$20\n #_06962B: STA.w $0DF0,X\n\n #_06962E: AND.b #$03\n #_069630: STA.w $0DE0,X\n\n; =========================================================\n\n#Sluggula_SetSpeed:\n #_069633: TAY\n\n #_069634: LDA.w SluggulaAndMoblin_SpeedX,Y\n #_069637: STA.w $0D50,X\n\n #_06963A: LDA.w SluggulaAndMoblin_SpeedY,Y\n #_06963D: STA.w $0D40,X\n\n #_069640: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sluggula_BreakFromBombing", + "code": "Sluggula_BreakFromBombing:\n #_06964F: LDA.w $0DF0,X\n #_069652: BNE .delay\n\n #_069654: STZ.w $0D80,X\n\n #_069657: LDA.b #$20\n #_069659: STA.w $0DF0,X\n\n.delay\n #_06965C: JSR Sprite_Move_XY_Bank06\n #_06965F: JSR Sprite_CheckTileCollision\n\n #_069662: LDA.w $0E70,X\n #_069665: BEQ EXIT_069672\n\n #_069667: LDA.w $0DE0,X\n #_06966A: EOR.b #$01\n #_06966C: STA.w $0DE0,X\n\n #_06966F: JMP.w Sluggula_SetSpeed\n\n; ---------------------------------------------------------\n\n#EXIT_069672:\n #_069672: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sluggula_DropBomb", + "code": "Sluggula_DropBomb:\n #_069673: LDA.b #$4A ; SPRITE 4A\n #_069675: LDY.b #$0B\n #_069677: JSL Sprite_SpawnDynamically_slot_limited\n #_06967B: BMI .no_space\n\n #_06967D: JSL Sprite_SetSpawnedCoordinates\n #_069681: JSL Sprite_TransmuteToBomb\n\n.no_space\n #_069685: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_19_Poe", + "code": "Sprite_19_Poe:\n #_069688: LDA.w $0D50,X\n #_06968B: ASL A\n #_06968C: ROL A\n #_06968D: AND.b #$01\n #_06968F: STA.w $0DE0,X\n\n #_069692: TAY\n\n #_069693: LDA.w $0F50,X\n #_069696: AND.b #$BF\n #_069698: ORA.w .hflip,Y\n #_06969B: STA.w $0F50,X\n\n #_06969E: LDA.w $0E90,X\n #_0696A1: BNE .keep_priority\n\n #_0696A3: LDA.w $0B89,X\n #_0696A6: ORA.b #$30\n #_0696A8: STA.w $0B89,X\n\n; ---------------------------------------------------------\n\n.keep_priority\n #_0696AB: JSR SpriteDraw_Poe\n\n #_0696AE: REP #$20\n\n #_0696B0: LDA.b $90\n #_0696B2: CLC\n #_0696B3: ADC.w #$0004\n #_0696B6: STA.b $90\n\n #_0696B8: INC.b $92\n\n #_0696BA: SEP #$20\n\n #_0696BC: DEC.w $0E40,X\n\n #_0696BF: JSR SpriteDraw_SingleLarge\n\n #_0696C2: INC.w $0E40,X\n\n; ---------------------------------------------------------\n\n #_0696C5: JSR Sprite_CheckIfActive_Bank06\n #_0696C8: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_0696CB: LDA.w $0E90,X\n #_0696CE: BEQ Poe_Main\n\n #_0696D0: INC.w $0F70,X\n\n #_0696D3: LDA.w $0F70,X\n #_0696D6: CMP.b #$0C\n #_0696D8: BNE .exit\n\n #_0696DA: STZ.w $0E90,X\n\n.exit\n #_0696DD: RTS", + "file": "bank_06.asm" + }, + { + "name": "Poe_Main", + "code": "Poe_Main:\n #_0696DE: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_0696E1: INC.w $0E80,X\n\n #_0696E4: JSR Sprite_Move_XY_Bank06\n\n #_0696E7: LDA.b $1A\n #_0696E9: LSR A\n #_0696EA: BCS .continue\n\n #_0696EC: LDA.w $0ED0,X\n #_0696EF: AND.b #$01\n #_0696F1: TAY\n\n #_0696F2: LDA.w $0F80,X\n #_0696F5: CLC\n #_0696F6: ADC.w Poe_SpeedZ,Y\n #_0696F9: STA.w $0F80,X\n\n #_0696FC: CMP.w Poe_MaxZ,Y\n #_0696FF: BNE .continue\n\n #_069701: INC.w $0ED0,X\n\n.continue\n #_069704: JSR Sprite_Move_Z_Bank06\n\n #_069707: STZ.w $0D40,X\n\n #_06970A: LDA.w $0D80,X\n #_06970D: JSL JumpTableLocal\n #_069711: dw Poe_Pondering\n #_069713: dw Poe_SpookAround\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Poe_SpeedZ", + "code": "Poe_SpeedZ:\n #_069715: db 1, -1\n #_069717: db 2, -2\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Poe_MaxSpeedX", + "code": "Poe_MaxSpeedX:\n #_069719: db 16, -16\n #_06971B: db 28, -28\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Poe_MaxZ", + "code": "Poe_MaxZ:\n #_06971D: db 8, -8\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Poe_Pondering", + "code": "Poe_Pondering:\n #_06971F: LDA.w $0DF0,X\n #_069722: BNE .exit\n\n #_069724: INC.w $0D80,X\n\n #_069727: JSL GetRandomNumber\n #_06972B: AND.b #$0C\n #_06972D: BNE .use_random_direction\n\n #_06972F: JSR Sprite_IsBelowLink\n\n #_069732: TYA\n #_069733: BRA .continue\n\n.use_random_direction\n #_069735: JSL GetRandomNumber\n #_069739: AND.b #$01\n\n.continue\n #_06973B: STA.w $0EB0,X\n\n.exit\n #_06973E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Poe_MaxSpeedY", + "code": "Poe_MaxSpeedY:\n #_06973F: db 8, -8\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Poe_SpookAround", + "code": "Poe_SpookAround:\n #_069741: LDA.w $001A\n #_069744: LSR A\n #_069745: BCS .continue\n\n #_069747: LDA.w $0EC0,X\n #_06974A: AND.b #$01\n\n #_06974C: CLC\n #_06974D: ADC.w $0FFF\n #_069750: ADC.w $0FFF\n #_069753: TAY\n\n #_069754: LDA.w $0D50,X\n #_069757: CLC\n #_069758: ADC.w Poe_SpeedZ,Y\n #_06975B: STA.w $0D50,X\n\n #_06975E: CMP.w Poe_MaxSpeedX,Y\n #_069761: BNE .continue\n\n #_069763: INC.w $0EC0,X\n\n #_069766: STZ.w $0D80,X\n\n #_069769: JSL GetRandomNumber\n #_06976D: AND.b #$1F\n #_06976F: ADC.b #$10\n #_069771: STA.w $0DF0,X\n\n.continue\n #_069774: LDY.w $0EB0,X\n\n #_069777: LDA.w Poe_MaxSpeedY,Y\n #_06977A: STA.w $0D40,X\n\n #_06977D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Poe", + "code": "SpriteDraw_Poe:\n #_069786: JSR Sprite_PrepOAMCoord\n\n #_069789: LDA.w $0E80,X\n\n #_06978C: LSR A\n #_06978D: LSR A\n #_06978E: LSR A\n\n #_06978F: AND.b #$03\n #_069791: STA.b $06\n\n #_069793: LDA.w $0DE0,X\n #_069796: ASL A\n\n #_069797: PHX\n\n #_069798: TAX\n\n #_069799: REP #$20\n\n #_06979B: LDA.b $00\n #_06979D: CLC\n #_06979E: ADC.w .offset_x,X\n #_0697A1: STA.b ($90),Y\n\n #_0697A3: CLC\n #_0697A4: AND.w #$0100\n #_0697A7: STA.b $0E\n\n #_0697A9: LDA.b $02\n #_0697AB: CLC\n #_0697AC: ADC.w #$0009\n\n #_0697AF: INY\n #_0697B0: STA.b ($90),Y\n\n #_0697B2: CLC\n #_0697B3: ADC.w #$0010\n #_0697B6: CMP.w #$0100\n\n #_0697B9: SEP #$20\n #_0697BB: BCC .on_screen\n\n #_0697BD: LDA.b #$F0\n #_0697BF: STA.b ($90),Y\n\n.on_screen\n #_0697C1: LDX.b $06\n\n #_0697C3: LDA.w .char,X\n #_0697C6: INY\n #_0697C7: STA.b ($90),Y\n\n #_0697C9: LDA.b $05\n #_0697CB: AND.b #$F0\n #_0697CD: ORA.b #$02\n\n #_0697CF: INY\n #_0697D0: STA.b ($90),Y\n\n #_0697D2: LDA.b $0F\n #_0697D4: STA.b ($92)\n\n #_0697D6: PLX\n\n #_0697D7: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_18_MiniMoldorm", + "code": "Sprite_18_MiniMoldorm:\n #_069808: JSL SpriteDraw_MiniMoldorm\n #_06980C: JSR Sprite_CheckIfActive_Bank06\n\n #_06980F: LDA.w $0EA0,X\n #_069812: BEQ .not_recoiling\n\n #_069814: JSR SpritePrep_MiniMoldorm_bounce\n\n.not_recoiling\n #_069817: JSR Sprite_CheckIfRecoiling_Bank06\n #_06981A: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06981D: INC.w $0E80,X\n\n #_069820: LDY.w $0DE0,X\n\n #_069823: LDA.w .speed_x,Y\n #_069826: STA.w $0D50,X\n\n #_069829: LDA.w .speed_y,Y\n #_06982C: STA.w $0D40,X\n\n #_06982F: JSR Sprite_Move_XY_Bank06\n #_069832: JSR Sprite_CheckTileCollision\n\n #_069835: LDA.w $0E70,X\n #_069838: BEQ .no_tile_collision\n\n #_06983A: JSL GetRandomNumber\n #_06983E: LSR A\n #_06983F: BCC .dont_flip\n\n #_069841: LDA.w $0EB0,X\n #_069844: EOR.b #$FF\n #_069846: INC A\n #_069847: STA.w $0EB0,X\n\n.dont_flip\n #_06984A: LDY.w $0DE0,X\n\n #_06984D: LDA.w .direction,Y\n #_069850: STA.w $0DE0,X\n\n.no_tile_collision\n #_069853: LDA.w $0D80,X\n #_069856: JSL JumpTableLocal\n #_06985A: dw MiniMoldorm_Readjust\n #_06985C: dw MiniMoldorm_Meander\n #_06985E: dw MiniMoldorm_TargetLink\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "MiniMoldorm_Readjust", + "code": "MiniMoldorm_Readjust:\n #_069860: LDA.w $0DF0,X\n #_069863: BNE .exit\n\n #_069865: INC A\n\n #_069866: INC.w $0ED0,X\n\n #_069869: LDY.w $0ED0,X\n #_06986C: CPY.b #$06\n #_06986E: BNE .dont_target_link\n\n #_069870: STZ.w $0ED0,X\n\n #_069873: INC A\n\n.dont_target_link\n #_069874: STA.w $0D80,X\n\n #_069877: JSL GetRandomNumber\n #_06987B: AND.b #$02\n #_06987D: DEC A\n #_06987E: STA.w $0EB0,X\n\n #_069881: JSL GetRandomNumber\n #_069885: AND.b #$1F\n #_069887: ADC.b #$20\n #_069889: STA.w $0DF0,X\n\n.exit\n #_06988C: RTS", + "file": "bank_06.asm" + }, + { + "name": "MiniMoldorm_Meander", + "code": "MiniMoldorm_Meander:\n #_06988D: LDA.w $0DF0,X\n #_069890: BNE .delay\n\n #_069892: JSL GetRandomNumber\n #_069896: AND.b #$0F\n #_069898: ADC.b #$08\n #_06989A: STA.w $0DF0,X\n\n #_06989D: STZ.w $0D80,X\n\n #_0698A0: RTS", + "file": "bank_06.asm" + }, + { + "name": "MiniMoldorm_TargetLink", + "code": "MiniMoldorm_TargetLink:\n #_0698B2: TXA\n #_0698B3: EOR.b $1A\n #_0698B5: AND.b #$03\n #_0698B7: BNE .exit\n\n #_0698B9: LDA.b #$1F\n #_0698BB: JSR Sprite_ApplySpeedTowardsLink\n #_0698BE: JSL Sprite_ConvertVelocityToAngle\n\n #_0698C2: CMP.w $0DE0,X\n #_0698C5: BNE .not_at_target\n\n #_0698C7: STZ.w $0D80,X\n\n #_0698CA: LDA.b #$30\n #_0698CC: STA.w $0DF0,X\n\n #_0698CF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Moblin_Directions", + "code": "Moblin_Directions:\n #_0698E0: db $06, $04, $00, $02\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_12_Moblin", + "code": "Sprite_12_Moblin:\n #_0698E4: JSR SpriteDraw_Moblin\n\n #_0698E7: JSR Sprite_CheckIfActive_Bank06\n #_0698EA: JSR Sprite_CheckIfRecoiling_Bank06\n #_0698ED: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_0698F0: JSR Sprite_Move_XY_Bank06\n #_0698F3: JSR Sprite_CheckTileCollision\n\n #_0698F6: LDA.w $0D80,X\n #_0698F9: JSL JumpTableLocal\n #_0698FD: dw Moblin_Halted\n #_0698FF: dw Moblin_Walk\n #_069901: dw Moblin_ThrowSpear\n\n; =========================================================\n\npool Moblin_Halted\n\n.timer\n #_069903: db 16, 32, 48, 64\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Moblin_Halted", + "code": "Moblin_Halted:\n #_069907: LDA.w $0DF0,X\n #_06990A: BNE .exit\n\n #_06990C: JSL GetRandomNumber\n #_069910: AND.b #$03\n #_069912: TAY\n\n #_069913: LDA.w .timer,Y\n #_069916: STA.w $0DF0,X\n\n #_069919: INC.w $0D80,X\n\n #_06991C: LDA.w $0EB0,X\n #_06991F: STA.w $0DE0,X\n\n #_069922: TAY\n\n #_069923: LDA.w SluggulaAndMoblin_SpeedX,Y\n #_069926: STA.w $0D50,X\n\n #_069929: LDA.w SluggulaAndMoblin_SpeedY,Y\n #_06992C: STA.w $0D40,X\n\n.exit\n #_06992F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Moblin_Walk", + "code": "Moblin_Walk:\n #_069938: LDA.w $0E80,X\n #_06993B: AND.b #$01\n\n #_06993D: LDY.w $0DE0,X\n\n #_069940: CLC\n #_069941: ADC.w Moblin_Directions,Y\n #_069944: STA.w $0DC0,X\n\n #_069947: LDA.b #$0C\n #_069949: LDY.w $0E70,X\n #_06994C: BNE .no_tile_collision\n\n #_06994E: LDA.w $0DF0,X\n #_069951: BNE .delay\n\n #_069953: JSR Sprite_DirectionToFaceLink\n\n #_069956: TYA\n #_069957: CMP.w $0DE0,X\n #_06995A: BNE .dont_stop\n\n #_06995C: INC.w $0D80,X\n\n #_06995F: LDA.b #$20\n #_069961: STA.w $0DF0,X\n\n #_069964: BRA .stop\n\n.dont_stop\n #_069966: LDA.b #$10\n\n; ---------------------------------------------------------\n\n.no_tile_collision\n #_069968: STA.w $0DF0,X\n\n #_06996B: JSL GetRandomNumber\n #_06996F: AND.b #$01\n #_069971: STA.b $00\n\n #_069973: LDA.w $0DE0,X\n #_069976: ASL A\n #_069977: ORA.b $00\n #_069979: TAY\n\n #_06997A: LDA.w .head_direction,Y\n #_06997D: STA.w $0EB0,X\n\n #_069980: STZ.w $0D80,X\n\n #_069983: INC.w $0DB0,X\n\n #_069986: LDA.w $0DB0,X\n #_069989: CMP.b #$04\n #_06998B: BNE .stop\n\n #_06998D: STZ.w $0DB0,X\n\n #_069990: JSR Sprite_DirectionToFaceLink\n\n #_069993: TYA\n #_069994: STA.w $0EB0,X\n\n; ---------------------------------------------------------\n\n.stop\n #_069997: JSR Sprite_ZeroVelocity_XYZ_Bank06\n\n #_06999A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Moblin_ThrowSpear", + "code": "Moblin_ThrowSpear:\n #_0699B1: LDY.w $0DE0,X\n\n #_0699B4: LDA.w $0DF0,X\n #_0699B7: BNE .delay\n\n #_0699B9: STZ.w $0D80,X\n\n.delay\n #_0699BC: CMP.b #$10\n #_0699BE: BCS .animate\n\n #_0699C0: CMP.b #$0F\n #_0699C2: BNE .dont_throw\n\n #_0699C4: PHY\n #_0699C5: JSR Moblin_MaterializeSpear\n #_0699C8: PLY\n\n #_0699C9: LDA.b #$20\n #_0699CB: STA.w $0E00,X\n\n.dont_throw\n #_0699CE: INY\n #_0699CF: INY\n #_0699D0: INY\n #_0699D1: INY\n\n.animate\n #_0699D2: LDA.w .anim_step,Y\n #_0699D5: STA.w $0DC0,X\n\n #_0699D8: RTS", + "file": "bank_06.asm" + }, + { + "name": "Moblin_MaterializeSpear", + "code": "Moblin_MaterializeSpear:\n #_0699EB: LDA.b #$1B ; SPRITE 1B\n #_0699ED: JSL Sprite_SpawnDynamically\n #_0699F1: BMI .no_space\n\n #_0699F3: LDA.b #$03\n #_0699F5: STA.w $0D90,Y\n\n #_0699F8: PHX\n\n #_0699F9: LDA.w $0DE0,X\n #_0699FC: STA.w $0DE0,Y\n\n #_0699FF: TAX\n\n #_069A00: LDA.b $00\n #_069A02: CLC\n #_069A03: ADC.w .offset_x_low,X\n #_069A06: STA.w $0D10,Y\n\n #_069A09: LDA.b $01\n #_069A0B: ADC.w Hinox_ThrowBomb_offset_x_high,X\n #_069A0E: STA.w $0D30,Y\n\n #_069A11: LDA.b $02\n #_069A13: CLC\n #_069A14: ADC.w .offset_y_low,X\n #_069A17: STA.w $0D00,Y\n\n #_069A1A: LDA.b $03\n #_069A1C: ADC.w .offset_y_high,X\n #_069A1F: STA.w $0D20,Y\n\n #_069A22: LDA.w .speed_x,X\n #_069A25: STA.w $0D50,Y\n\n #_069A28: LDA.w .speed_y,X\n #_069A2B: STA.w $0D40,Y\n\n #_069A2E: PLX\n\n.no_space\n #_069A2F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Moblin", + "code": "SpriteDraw_Moblin:\n #_069BC4: LDA.b #$00\n #_069BC6: XBA\n #_069BC7: LDA.w $0DC0,X\n\n #_069BCA: REP #$20\n\n #_069BCC: ASL A\n #_069BCD: ASL A\n #_069BCE: ASL A\n #_069BCF: ASL A\n #_069BD0: ASL A\n\n #_069BD1: ADC.w #.oam_groups\n #_069BD4: STA.b $08\n\n #_069BD6: SEP #$20\n\n #_069BD8: LDA.b #$04\n #_069BDA: JSL SpriteDraw_Tabulated\n\n #_069BDE: LDA.w $0F00,X\n #_069BE1: BNE .exit\n\n #_069BE3: LDA.w $0E00,X\n #_069BE6: BEQ .no_spear\n\n #_069BE8: LDY.b #$03\n\n.next_object\n #_069BEA: LDA.b ($92),Y\n #_069BEC: AND.b #$02\n #_069BEE: BNE .skip_object\n\n #_069BF0: PHY\n\n #_069BF1: TYA\n #_069BF2: ASL A\n #_069BF3: ASL A\n #_069BF4: TAY\n\n #_069BF5: INY\n #_069BF6: LDA.b #$F0\n #_069BF8: STA.b ($90),Y\n\n #_069BFA: PLY\n\n.skip_object\n #_069BFB: DEY\n #_069BFC: BPL .next_object\n\n.no_spear\n #_069BFE: LDY.w $0DC0,X\n\n #_069C01: LDA.w .buffer_offset,Y\n #_069C04: TAY\n\n #_069C05: PHX\n\n #_069C06: LDA.w $0EB0,X\n #_069C09: TAX\n\n #_069C0A: LDA.w .char,X\n #_069C0D: INY\n #_069C0E: INY\n #_069C0F: STA.b ($90),Y\n\n #_069C11: INY\n #_069C12: LDA.b ($90),Y\n\n #_069C14: AND.b #$BF\n #_069C16: ORA.w .hflip,X\n #_069C19: STA.b ($90),Y\n\n #_069C1B: PLX\n\n #_069C1C: JMP.w SpriteDraw_Shadow\n\n.exit\n #_069C1F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_0E_Snapdragon", + "code": "Sprite_0E_Snapdragon:\n #_069C24: LDY.w $0DE0,X\n\n #_069C27: LDA.w $0DA0,X\n #_069C2A: CLC\n #_069C2B: ADC.w .anim_step,Y\n #_069C2E: STA.w $0DC0,X\n\n #_069C31: JSR SpriteDraw_Snapdragon\n #_069C34: JSR Sprite_CheckIfActive_Bank06\n #_069C37: JSR Sprite_CheckIfRecoiling_Bank06\n #_069C3A: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_069C3D: STZ.w $0DA0,X\n\n #_069C40: LDA.w $0D80,X\n #_069C43: JSL JumpTableLocal\n #_069C47: dw Snapdragon_Halted\n #_069C49: dw Snapdragon_MoveAround\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SnapdragonSpeedX", + "code": "SnapdragonSpeedX:\n #_069C4B: db 8, -8, 8, -8\n #_069C4F: db 16, -16, 16, -16\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SnapdragonSpeedY", + "code": "SnapdragonSpeedY:\n #_069C53: db 8, 8, -8, -8\n #_069C57: db 16, 16, -16, -16\n\n; =========================================================\n\npool Snapdragon_Halted\n\n.timer\n #_069C5B: db 32, 48, 64, 80\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Snapdragon_Halted", + "code": "Snapdragon_Halted:\n #_069C5F: LDA.w $0DF0,X\n #_069C62: BNE .delay\n\n #_069C64: INC.w $0D80,X\n\n #_069C67: JSL GetRandomNumber\n #_069C6B: AND.b #$0C\n #_069C6D: LSR A\n #_069C6E: LSR A\n #_069C6F: TAY\n\n #_069C70: LDA.w .timer,Y\n #_069C73: STA.w $0DF0,X\n\n #_069C76: DEC.w $0D90,X\n #_069C79: BPL .use_random_direction\n\n #_069C7B: LDA.b #$03\n #_069C7D: STA.w $0D90,X\n\n #_069C80: LDA.b #$60\n #_069C82: STA.w $0DF0,X\n\n #_069C85: INC.w $0DB0,X\n\n #_069C88: JSR Sprite_IsBelowLink\n\n #_069C8B: TYA\n #_069C8C: ASL A\n #_069C8D: STA.b $00\n\n #_069C8F: JSR Sprite_IsRightOfLink\n #_069C92: TYA\n #_069C93: ORA.b $00\n #_069C95: BRA .continue\n\n; ---------------------------------------------------------\n\n.use_random_direction\n #_069C97: JSL GetRandomNumber\n #_069C9B: AND.b #$03\n\n.continue\n #_069C9D: STA.w $0DE0,X\n\n #_069CA0: RTS", + "file": "bank_06.asm" + }, + { + "name": "Snapdragon_MoveAround", + "code": "Snapdragon_MoveAround:\n #_069CA9: INC.w $0DA0,X\n\n #_069CAC: JSR Sprite_Move_XY_Bank06\n #_069CAF: JSR Sprite_CheckTileCollision\n\n #_069CB2: LDA.w $0E70,X\n #_069CB5: BEQ .no_tile_collision\n\n #_069CB7: LDA.w $0DE0,X\n #_069CBA: EOR.b #$03\n #_069CBC: STA.w $0DE0,X\n\n.no_tile_collision\n #_069CBF: LDY.w $0DE0,X\n #_069CC2: LDA.w $0DB0,X\n #_069CC5: BEQ .use_slow_speed\n\n #_069CC7: INY\n #_069CC8: INY\n #_069CC9: INY\n #_069CCA: INY\n\n.use_slow_speed\n #_069CCB: LDA.w SnapdragonSpeedX,Y\n #_069CCE: STA.w $0D50,X\n\n #_069CD1: LDA.w SnapdragonSpeedY,Y\n #_069CD4: STA.w $0D40,X\n\n #_069CD7: JSR Sprite_Move_Z_Bank06\n\n #_069CDA: LDA.w $0F80,X\n #_069CDD: SEC\n #_069CDE: SBC.b #$04\n #_069CE0: STA.w $0F80,X\n\n #_069CE3: LDA.w $0F70,X\n #_069CE6: BPL .exit\n\n #_069CE8: STZ.w $0F70,X\n\n #_069CEB: LDA.w $0DF0,X\n #_069CEE: BNE .delay\n\n #_069CF0: STZ.w $0D80,X\n #_069CF3: STZ.w $0DB0,X\n\n #_069CF6: LDA.b #$3F\n #_069CF8: STA.w $0DF0,X\n\n #_069CFB: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Snapdragon", + "code": "SpriteDraw_Snapdragon:\n #_069E02: LDA.b #$00\n #_069E04: XBA\n #_069E05: LDA.w $0DC0,X\n\n #_069E08: REP #$20\n\n #_069E0A: ASL A\n #_069E0B: ASL A\n #_069E0C: ASL A\n #_069E0D: ASL A\n #_069E0E: ASL A\n #_069E0F: ADC.w #.oam_groups\n #_069E12: STA.b $08\n\n #_069E14: SEP #$20\n\n #_069E16: LDA.b #$04\n #_069E18: JSL SpriteDraw_Tabulated\n\n #_069E1C: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_22_Ropa", + "code": "Sprite_22_Ropa:\n #_069E1F: JSR SpriteDraw_Ropa\n #_069E22: JSR Sprite_CheckIfActive_Bank06\n #_069E25: JSR Sprite_CheckIfRecoiling_Bank06\n #_069E28: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_069E2B: INC.w $0E80,X\n\n #_069E2E: LDA.w $0E80,X\n #_069E31: LSR A\n #_069E32: LSR A\n #_069E33: LSR A\n #_069E34: AND.b #$03\n #_069E36: STA.w $0DC0,X\n\n #_069E39: LDA.w $0D80,X\n #_069E3C: JSL JumpTableLocal\n #_069E40: dw Ropa_Halted\n #_069E42: dw Ropa_Pounce\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Ropa_Halted", + "code": "Ropa_Halted:\n #_069E44: LDA.w $0DF0,X\n #_069E47: BNE .exit\n\n #_069E49: LDA.b #$10\n #_069E4B: JSR Sprite_ApplySpeedTowardsLink\n\n #_069E4E: JSL GetRandomNumber\n #_069E52: AND.b #$0F\n #_069E54: ADC.b #$14\n #_069E56: STA.w $0F80,X\n\n #_069E59: INC.w $0D80,X\n\n.exit\n #_069E5C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Ropa_Pounce", + "code": "Ropa_Pounce:\n #_069E5D: JSR Sprite_Move_XY_Bank06\n #_069E60: JSR Sprite_CheckTileCollision\n\n #_069E63: LDA.w $0E70,X\n #_069E66: BEQ .air_borne\n\n #_069E68: JSR Sprite_ZeroVelocity_XY_Bank06\n\n.air_borne\n #_069E6B: JSR Sprite_Move_Z_Bank06\n\n #_069E6E: DEC.w $0F80,X\n #_069E71: DEC.w $0F80,X\n\n #_069E74: LDA.w $0F70,X\n #_069E77: BPL .exit\n\n #_069E79: STZ.w $0F70,X\n\n #_069E7C: LDA.b #$30\n #_069E7E: STA.w $0DF0,X\n\n #_069E81: STZ.w $0D80,X\n\n.exit\n #_069E84: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Ropa", + "code": "SpriteDraw_Ropa:\n #_069EE5: LDA.b #$00\n #_069EE7: XBA\n #_069EE8: LDA.w $0DC0,X\n\n #_069EEB: REP #$20\n\n #_069EED: ASL A\n #_069EEE: ASL A\n #_069EEF: ASL A\n #_069EF0: STA.b $00\n\n #_069EF2: ASL A\n #_069EF3: ADC.b $00\n #_069EF5: ADC.w #.oam_groups\n #_069EF8: STA.b $08\n\n #_069EFA: SEP #$20\n\n #_069EFC: LDA.b #$03\n #_069EFE: JSL SpriteDraw_Tabulated\n\n #_069F02: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_11_Hinox", + "code": "Sprite_11_Hinox:\n #_069F05: JSR SpriteDraw_Hinox\n #_069F08: JSR Sprite_CheckIfActive_Bank06\n\n #_069F0B: LDA.w $0EA0,X\n #_069F0E: BEQ .not_recoiling\n\n #_069F10: JSR Hinox_FaceLink\n\n #_069F13: LDA.b #$02\n #_069F15: STA.w $0D80,X\n\n #_069F18: LDA.b #$30\n #_069F1A: STA.w $0DF0,X\n\n.not_recoiling\n #_069F1D: JSR Sprite_CheckIfRecoiling_Bank06\n #_069F20: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_069F23: LDA.w $0D80,X\n #_069F26: JSL JumpTableLocal\n #_069F2A: dw Hinox_Halted\n #_069F2C: dw Hinox_Walk\n #_069F2E: dw Hinox_ThrowBomb\n\n; =========================================================\n\npool Hinox_ThrowBomb\n\n.anim_step\n #_069F30: db $0B, $0A, $08, $09\n #_069F34: db $07, $05, $01, $03\n\n.offset_x_low\n #_069F38: db 8, -8, -13, 13\n\n; ---------------------------------------------------------\n\n#CuccoSwarmSpeed:\n.offset_x_high\n #_069F3C: db 0, -1, -1, 0\n\n.offset_y_low\n #_069F40: db -11, -11, -16, -16\n\n.speed_x\n #_069F44: db 24, -24 ; bleeds into next\n\n.speed_y\n #_069F46: db 0, 0, 24, -24\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Hinox_ThrowBomb", + "code": "Hinox_ThrowBomb:\n #_069F4A: LDA.w $0DF0,X\n #_069F4D: BNE .delay\n\n #_069F4F: STZ.w $0D80,X\n\n #_069F52: LDA.b #$02\n #_069F54: STA.w $0DF0,X\n\n #_069F57: RTS", + "file": "bank_06.asm" + }, + { + "name": "HinoxSpeedX", + "code": "HinoxSpeedX:\n #_069FB6: db 8, -8 ; bleeds into next\n", + "file": "bank_06.asm" + }, + { + "name": "HinoxSpeedY", + "code": "HinoxSpeedY:\n #_069FB8: db 0, 0, 8, -8\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hinox_Halted", + "code": "Hinox_Halted:\n #_069FBC: LDA.w $0DF0,X\n #_069FBF: BNE EXIT_06A024\n\n #_069FC1: JSL GetRandomNumber\n #_069FC5: AND.b #$03\n #_069FC7: BNE .change_direction\n\n #_069FC9: LDA.b #$02\n #_069FCB: STA.w $0D80,X\n\n #_069FCE: LDA.b #$40\n #_069FD0: STA.w $0DF0,X\n\n #_069FD3: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hinox_FaceLink", + "code": "Hinox_FaceLink:\n #_069FE1: JSR Sprite_DirectionToFaceLink\n\n #_069FE4: TYA\n #_069FE5: JSR Hinox_SetDirection\n\n #_069FE8: ASL.w $0D50,X\n #_069FEB: ASL.w $0D40,X\n\n #_069FEE: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hinox_PickRandomDirection", + "code": "Hinox_PickRandomDirection:\n #_069FF7: JSL GetRandomNumber\n #_069FFB: LSR A\n\n #_069FFC: LDA.w $0DE0,X\n #_069FFF: ROL A\n #_06A000: TAY\n\n #_06A001: LDA.w .direction,Y\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hinox_SetDirection", + "code": "Hinox_SetDirection:\n #_06A004: STA.w $0DE0,X\n\n #_06A007: JSL GetRandomNumber\n #_06A00B: AND.b #$3F\n #_06A00D: ADC.b #$60\n #_06A00F: STA.w $0DF0,X\n\n #_06A012: INC.w $0D80,X\n\n #_06A015: LDY.w $0DE0,X\n\n #_06A018: LDA.w HinoxSpeedX,Y\n #_06A01B: STA.w $0D50,X\n\n #_06A01E: LDA.w HinoxSpeedY,Y\n #_06A021: STA.w $0D40,X\n\n; ---------------------------------------------------------\n\n#EXIT_06A024:\n #_06A024: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hinox_Walk", + "code": "Hinox_Walk:\n #_06A029: LDA.w $0DF0,X\n #_06A02C: BNE .delay\n\n.reset_ai\n #_06A02E: LDA.b #$10\n #_06A030: STA.w $0DF0,X\n\n #_06A033: STZ.w $0D80,X\n\n #_06A036: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Hinox", + "code": "SpriteDraw_Hinox:\n #_06A1F9: LDA.w $0DC0,X\n #_06A1FC: PHA\n\n #_06A1FD: ASL A\n #_06A1FE: TAY\n\n #_06A1FF: REP #$20\n\n #_06A201: LDA.w .oam_group_pointers,Y\n #_06A204: STA.b $08\n\n #_06A206: SEP #$20\n\n #_06A208: PLY\n\n #_06A209: LDA.w .oam_group_size,Y\n\n #_06A20C: JSL SpriteDraw_Tabulated\n\n #_06A210: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "PositiveAndNegativeOne", + "code": "PositiveAndNegativeOne:\n #_06A213: db 1, -1\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "BariSpeed", + "code": "BariSpeed:\n.x\n #_06A215: db 0, 8, 11, 14\n #_06A219: db 16, 14, 11, 8\n #_06A21D: db 0, -8, -11, -14\n #_06A221: db -16, -14, -11, -8\n\n.y\n #_06A225: db -16, -14, -11, -8\n #_06A229: db 0, 8, 11, 14\n #_06A22D: db 16, 14, 11, 8\n #_06A231: db 0, -9, -11, -14\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "BariSplit", + "code": "BariSplit:\n.offset_x\n #_06A235: db 0, 8\n\n.speed_x\n #_06A237: db -32, 32\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "BariWiggle", + "code": "BariWiggle:\n #_06A239: db 8, -8\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Bari_anim_step", + "code": "Bari_anim_step:\n #_06A23B: db $00, $03\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_23_RedBari", + "code": "Sprite_23_RedBari:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_24_BlueBari", + "code": "Sprite_24_BlueBari:\n #_06A23D: LDA.w $0DB0,X\n #_06A240: BEQ Bari_JustDraw\n\n #_06A242: BPL Sprite_RedBiri\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Bari_Main", + "code": "Bari_Main:\n #_06A244: LDA.w $0EB0,X\n #_06A247: CMP.b #$10\n #_06A249: BNE .delay_tile_collision\n\n #_06A24B: LDA.b #$FF\n #_06A24D: STA.w $0D50,X\n #_06A250: STA.w $0E30,X\n\n #_06A253: JSR Sprite_CheckTileCollision\n\n #_06A256: STZ.w $0E30,X\n\n #_06A259: LDA.w $0FA5 ; TILETYPE 00\n #_06A25C: BNE .collision\n\n #_06A25E: STZ.w $0DB0,X\n #_06A261: STZ.w $0BA0,X\n\n #_06A264: JMP.w Bari_RandomlySetTimer2\n\n.collision\n #_06A267: STA.w $0BA0,X\n\n #_06A26A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_RedBiri", + "code": "Sprite_RedBiri:\n #_06A26F: JSR SpriteDraw_SingleSmall\n\n #_06A272: BRA BariAndBiri_Main\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Bari_JustDraw", + "code": "Bari_JustDraw:\n #_06A274: LDA.w $0DC0,X\n #_06A277: CMP.b #$02\n #_06A279: BCC .not_electrified\n\n #_06A27B: JSR SpriteDraw_SingleLarge\n\n #_06A27E: BRA BariAndBiri_Main\n\n.not_electrified\n #_06A280: JSR SpriteDraw_Bari\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "BariAndBiri_Main", + "code": "BariAndBiri_Main:\n #_06A283: JSR Sprite_CheckIfActive_Bank06\n #_06A286: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_06A289: LDA.w $0E10,X\n #_06A28C: BNE Biri_Recoiling\n\n #_06A28E: LDA.w $0D80,X\n #_06A291: CMP.b #$02\n #_06A293: BNE Bari_NotSplitting\n\n #_06A295: STA.w $0BA0,X\n\n #_06A298: LDA.b $1A\n #_06A29A: LSR A\n #_06A29B: AND.b #$01\n #_06A29D: TAY\n\n #_06A29E: LDA.w BariWiggle,Y\n #_06A2A1: STA.w $0D50,X\n\n #_06A2A4: JSR Sprite_Move_X_Bank06\n\n #_06A2A7: LDA.w $0DF0,X\n #_06A2AA: BNE .exit\n\n #_06A2AC: JSR RedBari_Split\n\n #_06A2AF: STZ.w $0DD0,X\n\n.exit\n #_06A2B2: RTS", + "file": "bank_06.asm" + }, + { + "name": "Bari_NotSplitting", + "code": "Bari_NotSplitting:\n #_06A2B3: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06A2B6: TXA\n #_06A2B7: EOR.b $1A\n #_06A2B9: AND.b #$0F\n #_06A2BB: BNE .delay_rotation_tick\n\n #_06A2BD: LDA.w $0DA0,X\n #_06A2C0: AND.b #$01\n #_06A2C2: TAY\n\n #_06A2C3: LDA.w $0D90,X\n #_06A2C6: CLC\n #_06A2C7: ADC.w PositiveAndNegativeOne,Y\n #_06A2CA: STA.w $0D90,X\n\n #_06A2CD: JSL GetRandomNumber\n\n #_06A2D1: AND.b #$03\n #_06A2D3: BNE .delay_rotation_tick\n\n #_06A2D5: INC.w $0DA0,X\n\n.delay_rotation_tick\n #_06A2D8: LDA.w $0D90,X\n #_06A2DB: AND.b #$0F\n #_06A2DD: TAY\n\n #_06A2DE: LDA.w BariSpeed_x,Y\n #_06A2E1: STA.w $0D50,X\n\n #_06A2E4: LDA.w BariSpeed_y,Y\n #_06A2E7: STA.w $0D40,X\n\n #_06A2EA: TXA\n #_06A2EB: EOR.b $1A\n #_06A2ED: AND.b #$03\n #_06A2EF: ORA.w $0DF0,X\n #_06A2F2: BNE Bari_Animate\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Biri_Recoiling", + "code": "Biri_Recoiling:\n #_06A2F4: LDA.w $0E70,X\n #_06A2F7: BNE .no_tile_collision\n\n #_06A2F9: JSR Sprite_Move_XY_Bank06\n\n.no_tile_collision\n #_06A2FC: JSR Sprite_CheckTileCollision\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Bari_Animate", + "code": "Bari_Animate:\n #_06A2FF: LDY.w $0DB0,X\n\n #_06A302: LDA.b $1A\n #_06A304: LSR A\n #_06A305: LSR A\n #_06A306: LSR A\n #_06A307: AND.b #$01\n #_06A309: CLC\n #_06A30A: ADC.w Bari_anim_step,Y\n #_06A30D: STA.w $0DC0,X\n\n #_06A310: LDA.w $0D80,X\n #_06A313: BEQ .not_electrified\n\n #_06A315: LDA.w $0DF0,X\n #_06A318: BNE .delay\n\n #_06A31A: STZ.w $0D80,X\n\n #_06A31D: BRA Bari_RandomlySetTimer2\n\n.delay\n #_06A31F: LDA.b $1A\n #_06A321: LSR A\n #_06A322: AND.b #$02\n\n #_06A324: CLC\n #_06A325: ADC.w Bari_anim_step,Y\n #_06A328: STA.w $0DC0,X\n\n #_06A32B: RTS", + "file": "bank_06.asm" + }, + { + "name": "Bari_RandomlySetTimer2", + "code": "Bari_RandomlySetTimer2:\n #_06A342: JSL GetRandomNumber\n #_06A346: AND.b #$3F\n #_06A348: ADC.b #$80\n #_06A34A: STA.w $0E00,X\n\n; ---------------------------------------------------------\n\n#EXIT_06A34D:\n #_06A34D: RTS", + "file": "bank_06.asm" + }, + { + "name": "RedBari_Split", + "code": "RedBari_Split:\n #_06A34E: LDA.b #$01\n #_06A350: STA.w $0FB5\n\n.next_biri\n #_06A353: LDA.b #$23 ; SPRITE 23\n #_06A355: JSL Sprite_SpawnDynamically\n #_06A359: BMI .no_space\n\n #_06A35B: JSL Sprite_SetSpawnedCoordinates\n\n #_06A35F: LDA.b #$33\n #_06A361: STA.w $0E60,Y\n\n #_06A364: LDA.b #$03\n #_06A366: STA.w $0F50,Y\n\n #_06A369: LDA.b #$01\n #_06A36B: STA.w $0F60,Y\n #_06A36E: STA.w $0DB0,Y\n\n #_06A371: PHX\n\n #_06A372: LDX.w $0FB5\n\n #_06A375: LDA.b $00\n #_06A377: CLC\n #_06A378: ADC.w BariSplit_offset_x,X\n #_06A37B: STA.w $0D10,Y\n\n #_06A37E: LDA.b $01\n #_06A380: ADC.b #$00\n #_06A382: STA.w $0D30,Y\n\n #_06A385: LDA.w BariSplit_speed_x,X\n #_06A388: STA.w $0D50,Y\n\n #_06A38B: LDA.b #$08\n #_06A38D: STA.w $0E10,Y\n\n #_06A390: LDA.b #$40\n #_06A392: STA.w $0E00,Y\n\n #_06A395: PLX\n\n.no_space\n #_06A396: DEC.w $0FB5\n #_06A399: BPL .next_biri\n\n #_06A39B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Bari", + "code": "SpriteDraw_Bari:\n #_06A3DC: LDA.b #$00\n #_06A3DE: XBA\n #_06A3DF: LDA.w $0DC0,X\n\n #_06A3E2: REP #$20\n\n #_06A3E4: ASL A\n #_06A3E5: ASL A\n #_06A3E6: ASL A\n #_06A3E7: ASL A\n #_06A3E8: ASL A\n\n #_06A3E9: ADC.w #.oam_groups\n #_06A3EC: STA.b $08\n\n #_06A3EE: SEP #$20\n\n #_06A3F0: LDA.b #$04\n #_06A3F2: JSL SpriteDraw_Tabulated\n\n #_06A3F6: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n\npool Sprite_13_MiniHelmasaur\n\n.anim_step\n #_06A3F9: db $03, $04, $03, $04\n #_06A3FD: db $02, $02, $05, $05\n\n.flip\n #_06A401: db $40, $40, $00, $00\n #_06A405: db $00, $40, $40, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_13_MiniHelmasaur", + "code": "Sprite_13_MiniHelmasaur:\n #_06A409: LDA.w $0DE0,X\n #_06A40C: ASL A\n #_06A40D: STA.b $00\n\n #_06A40F: LDA.w $0E80,X\n #_06A412: LSR A\n #_06A413: LSR A\n #_06A414: AND.b #$01\n\n #_06A416: ORA.b $00\n #_06A418: TAY\n\n #_06A419: LDA.w .anim_step,Y\n #_06A41C: STA.w $0DC0,X\n\n #_06A41F: LDA.w $0F50,X\n #_06A422: AND.b #$BF\n #_06A424: ORA.w .flip,Y\n #_06A427: STA.w $0F50,X\n\n #_06A42A: TXA\n #_06A42B: EOR.b $1A\n #_06A42D: AND.b #$0F\n #_06A42F: BNE .continue\n\n; ---------------------------------------------------------\n\n #_06A431: LDA.w $0D50,X\n #_06A434: BPL .positive_x\n\n #_06A436: EOR.b #$FF\n #_06A438: INC A\n\n.positive_x\n #_06A439: STA.b $00\n\n #_06A43B: LDA.w $0D40,X\n #_06A43E: BPL .positive_y\n\n #_06A440: EOR.b #$FF\n #_06A442: INC A\n\n.positive_y\n #_06A443: STA.b $01\n\n #_06A445: LDA.b $00\n #_06A447: CMP.b $01\n\n #_06A449: LDA.b #$00\n #_06A44B: LDY.w $0D50,X\n #_06A44E: BCS .use_x_speed\n\n #_06A450: LDA.b #$02\n #_06A452: LDY.w $0D40,X\n\n.use_x_speed\n #_06A455: BPL .positive_choice\n\n #_06A457: INC A\n\n.positive_choice\n #_06A458: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.continue\n #_06A45B: JSR SpriteDraw_SingleLarge\n\n #_06A45E: BRA MiniHelmaAndBeetleMain\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_26_HardhatBeetle", + "code": "Sprite_26_HardhatBeetle:\n #_06A460: LDA.w $0E80,X\n #_06A463: LSR A\n #_06A464: LSR A\n #_06A465: AND.b #$01\n #_06A467: STA.w $0DC0,X\n\n #_06A46A: JSR SpriteDraw_HardhatBeetle\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "MiniHelmaAndBeetleMain", + "code": "MiniHelmaAndBeetleMain:\n #_06A46D: JSR Sprite_CheckIfActive_Bank06\n\n #_06A470: INC.w $0E80,X\n\n #_06A473: JSR Sprite_CheckIfRecoiling_Bank06\n #_06A476: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06A479: LDA.w $0E70,X\n #_06A47C: AND.b #$0F\n #_06A47E: BEQ .no_tile_collision\n\n #_06A480: AND.b #$03\n #_06A482: BEQ .no_horizontal_tile_collision\n\n #_06A484: STZ.w $0D50,X\n\n.no_horizontal_tile_collision\n #_06A487: STZ.w $0D40,X\n\n #_06A48A: BRA .continue\n\n.no_tile_collision\n #_06A48C: JSR Sprite_Move_XY_Bank06\n\n; ---------------------------------------------------------\n\n.continue\n #_06A48F: JSR Sprite_CheckTileCollision\n\n #_06A492: TXA\n #_06A493: EOR.b $1A\n #_06A495: AND.b #$1F\n #_06A497: BNE .delay_turning\n\n #_06A499: LDA.w $0D90,X\n #_06A49C: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06A49F: LDA.b $00\n #_06A4A1: STA.w $0DA0,X\n\n #_06A4A4: LDA.b $01\n #_06A4A6: STA.w $0DB0,X\n\n; ---------------------------------------------------------\n\n.delay_turning\n #_06A4A9: TXA\n #_06A4AA: EOR.b $1A\n #_06A4AC: AND.w $0D80,X\n #_06A4AF: BNE .exit\n\n #_06A4B1: LDA.w $0D40,X\n #_06A4B4: CMP.w $0DA0,X\n #_06A4B7: BPL .at_max_y_speed\n\n #_06A4B9: INC.w $0D40,X\n #_06A4BC: BRA .check_x_speed\n\n.at_max_y_speed\n #_06A4BE: DEC.w $0D40,X\n\n.check_x_speed\n #_06A4C1: LDA.w $0D50,X\n #_06A4C4: CMP.w $0DB0,X\n #_06A4C7: BPL .at_max_x_speed\n\n #_06A4C9: INC.w $0D50,X\n #_06A4CC: BRA .exit\n\n.at_max_x_speed\n #_06A4CE: DEC.w $0D50,X\n\n.exit\n #_06A4D1: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_HardhatBeetle", + "code": "SpriteDraw_HardhatBeetle:\n #_06A4F2: LDA.w $0DC0,X\n #_06A4F5: ASL A\n #_06A4F6: ASL A\n #_06A4F7: ASL A\n #_06A4F8: ASL A\n #_06A4F9: ADC.b #.oam_groups>>0\n #_06A4FB: STA.b $08\n\n #_06A4FD: LDA.b #.oam_groups>>8\n #_06A4FF: ADC.b #$00\n #_06A501: STA.b $09\n\n #_06A503: LDA.b #$02\n #_06A505: JSL SpriteDraw_Tabulated\n\n #_06A509: JMP.w SpriteDraw_Shadow_Conditional\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_15_Antifairy", + "code": "Sprite_15_Antifairy:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_77_Antifairy", + "code": "Sprite_77_Antifairy:\n #_06A50C: JSL SpriteDraw_Antfairy\n #_06A510: JSR Sprite_CheckIfActive_Bank06\n #_06A513: JSR Sprite_CheckDamageToLink\n #_06A516: BCC .dont_drain_magic\n\n #_06A518: LDA.w $0DF0,X\n #_06A51B: BNE .dont_drain_magic\n\n #_06A51D: LDA.b #$10\n #_06A51F: STA.w $0DF0,X\n\n #_06A522: LDA.l $7EF36E\n #_06A526: SEC\n #_06A527: SBC.b #$08\n #_06A529: BCS .enough_magic_to_drain\n\n #_06A52B: LDA.b #$00\n\n #_06A52D: BRA .skip_sfx\n\n.enough_magic_to_drain\n #_06A52F: LDY.b #$1D ; SFX3.1D\n #_06A531: STY.w $012F\n\n.skip_sfx\n #_06A534: STA.l $7EF36E\n\n.dont_drain_magic\n #_06A538: JSR Sprite_Move_XY_Bank06\n #_06A53B: JSL Sprite_BounceFromTileCollision_long\n\n #_06A53F: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06A540", + "code": "UNREACHABLE_06A540:\n #_06A540: dw $FFE8, $FFF8, $0008, $0018\n #_06A548: dw $FFE8, $FFF8, $0008, $0018\n #_06A550: dw $FFE8, $FFF8, $0008, $0018\n #_06A558: dw $FFE8, $FFF8, $0008, $0018\n #_06A560: dw $FFEA, $FFF9, $0007, $0016\n #_06A568: dw $FFEA, $FFF9, $0007, $0016\n #_06A570: dw $FFEA, $FFF9, $0007, $0016\n #_06A578: dw $FFEA, $FFF9, $0007, $0016\n #_06A580: dw $FFE8, $FFE8, $FFE8, $FFE8\n #_06A588: dw $FFF8, $FFF8, $FFF8, $FFF8\n #_06A590: dw $0008, $0008, $0008, $0008\n #_06A598: dw $0018, $0018, $0018, $0018\n #_06A5A0: dw $FFEA, $FFEA, $FFEA, $FFEA\n #_06A5A8: dw $FFF9, $FFF9, $FFF9, $FFF9\n #_06A5B0: dw $0007, $0007, $0007, $0007\n #_06A5B8: dw $0016, $0016, $0016, $0016\n\n; =========================================================\n\npool Sprite_0B_Cucco\n\n.h_flip\n #_06A5C0: db $40, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_0B_Cucco", + "code": "Sprite_0B_Cucco:\n #_06A5C2: LDA.w $0D50,X\n #_06A5C5: BEQ .x_speed_0\n\n #_06A5C7: ASL A\n #_06A5C8: ROL A\n #_06A5C9: AND.b #$01\n #_06A5CB: TAY\n\n #_06A5CC: LDA.w $0F50,X\n #_06A5CF: AND.b #$BF\n #_06A5D1: ORA.w .h_flip,Y\n #_06A5D4: STA.w $0F50,X\n\n.x_speed_0\n #_06A5D7: JSR SpriteDraw_SingleLarge\n\n #_06A5DA: LDA.w $0EB0,X\n #_06A5DD: BEQ .not_easter_egg\n\n #_06A5DF: LDA.b #$3D ; SPRITE 3D\n #_06A5E1: STA.w $0E20,X\n\n #_06A5E4: JSL SpritePrep_LoadProperties\n\n #_06A5E8: INC.w $0E30,X\n\n #_06A5EB: LDA.b #$30\n #_06A5ED: STA.w $0DF0,X\n\n #_06A5F0: LDA.b #$15 ; SFX2.15\n #_06A5F2: STA.w $012E\n #_06A5F5: STA.w $0BA0,X\n\n #_06A5F8: RTS", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Swarming", + "code": "Cucco_Swarming:\n #_06A620: LDA.w $0F50,X\n #_06A623: ORA.b #$10\n #_06A625: STA.w $0F50,X\n\n #_06A628: JSR Sprite_Move_XY_Bank06\n\n #_06A62B: LDA.b #$0C\n #_06A62D: STA.w $0F70,X\n #_06A630: STA.w $0BA0,X\n\n #_06A633: TXA\n #_06A634: EOR.b $1A\n #_06A636: AND.b #$07\n #_06A638: BNE .dont_damage\n\n #_06A63A: JSR Sprite_CheckDamageToLink\n\n.dont_damage\n #_06A63D: JMP.w Cucco_AnimateFast\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Main", + "code": "Cucco_Main:\n #_06A640: LDA.b #$FF\n #_06A642: STA.w $0E50,X\n\n #_06A645: LDA.w $0DA0,X\n #_06A648: CMP.b #$23\n #_06A64A: BCC .dont_summon\n\n #_06A64C: JSR Cucco_SummonAvenger\n\n.dont_summon\n #_06A64F: LDA.w $0EA0,X\n #_06A652: BEQ .no_more_hits\n\n #_06A654: STZ.w $0EA0,X\n\n #_06A657: LDA.w $0DA0,X\n #_06A65A: CMP.b #$23\n #_06A65C: BCS .too_hurt_to_cluck\n\n #_06A65E: INC.w $0DA0,X\n\n #_06A661: JSR BawkBawk\n\n.too_hurt_to_cluck\n #_06A664: LDA.b #$02\n #_06A666: STA.w $0D80,X\n\n.no_more_hits\n #_06A669: JSR Sprite_CheckDamageFromLink\n\n #_06A66C: LDA.w $0D80,X\n #_06A66F: BEQ Cucco_Calm\n\n #_06A671: CMP.b #$01\n #_06A673: BEQ Cucco_Bouncing\n\n #_06A675: CMP.b #$02\n #_06A677: BNE .carried\n\n #_06A679: JMP.w Cucco_Flee\n\n.carried\n #_06A67C: JMP.w Cucco_Carried\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Calm", + "code": "Cucco_Calm:\n #_06A67F: LDA.w $0DF0,X\n #_06A682: BNE .delay\n\n #_06A684: JSL GetRandomNumber\n #_06A688: AND.b #$0F\n\n #_06A68A: PHX\n\n #_06A68B: TXY\n #_06A68C: TAX\n\n #_06A68D: LDA.l SomeRandomXSpeeds_Bank05,X\n #_06A691: STA.w $0D50,Y\n\n #_06A694: LDA.l SomeRandomYSpeeds_Bank05,X\n #_06A698: STA.w $0D40,Y\n\n #_06A69B: PLX\n\n #_06A69C: JSL GetRandomNumber\n #_06A6A0: AND.b #$1F\n #_06A6A2: ADC.b #$10\n #_06A6A4: STA.w $0DF0,X\n\n #_06A6A7: INC.w $0D80,X\n\n.delay\n #_06A6AA: STZ.w $0DC0,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_CheckIfLifted", + "code": "Cucco_CheckIfLifted:\n #_06A6AD: JSR Sprite_CheckIfLifted\n\n #_06A6B0: RTS", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Bouncing", + "code": "Cucco_Bouncing:\n #_06A6B1: TXA\n #_06A6B2: EOR.b $1A\n #_06A6B4: LSR A\n #_06A6B5: BCC .continue\n\n #_06A6B7: JSR Cucco_DoMovement_XY\n #_06A6BA: BEQ .continue\n\n #_06A6BC: STZ.w $0D80,X\n\n.continue\n #_06A6BF: JSR Sprite_Move_Z_Bank06\n\n #_06A6C2: DEC.w $0F80,X\n #_06A6C5: DEC.w $0F80,X\n\n #_06A6C8: LDA.w $0F70,X\n #_06A6CB: BPL Cucco_AnimateFast\n\n #_06A6CD: STZ.w $0F70,X\n\n #_06A6D0: LDA.w $0DF0,X\n #_06A6D3: BNE .delay\n\n #_06A6D5: LDA.b #$20\n #_06A6D7: STA.w $0DF0,X\n\n #_06A6DA: STZ.w $0D80,X\n\n.delay\n #_06A6DD: LDA.b #$0A\n #_06A6DF: STA.w $0F80,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_AnimateFast", + "code": "Cucco_AnimateFast:\n #_06A6E2: INC.w $0E80,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_AnimateSlow", + "code": "Cucco_AnimateSlow:\n #_06A6E5: INC.w $0E80,X\n #_06A6E8: INC.w $0E80,X\n #_06A6EB: INC.w $0E80,X\n\n #_06A6EE: LDA.w $0E80,X\n #_06A6F1: LSR A\n #_06A6F2: LSR A\n #_06A6F3: LSR A\n #_06A6F4: LSR A\n #_06A6F5: AND.b #$01\n #_06A6F7: STA.w $0DC0,X\n #_06A6FA: BRA Cucco_CheckIfLifted\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Flee", + "code": "Cucco_Flee:\n #_06A6FC: JSR Cucco_CheckIfLifted\n #_06A6FF: JSR Cucco_DoMovement_XY\n\n #_06A702: STZ.w $0F70,X\n\n #_06A705: TXA\n #_06A706: EOR.b $1A\n #_06A708: AND.b #$1F\n #_06A70A: BNE .dont_update_direction\n\n; =========================================================\n\n#Cucco_UpdateFleeSpeed:\n #_06A70C: LDA.b #$10\n #_06A70E: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06A711: LDA.b $00\n #_06A713: EOR.b #$FF\n #_06A715: INC A\n #_06A716: STA.w $0D40,X\n\n #_06A719: LDA.b $01\n #_06A71B: EOR.b #$FF\n #_06A71D: INC A\n #_06A71E: STA.w $0D50,X\n\n.dont_update_direction\n #_06A721: INC.w $0E80,X\n\n #_06A724: JSR Cucco_AnimateFast\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_DrawPANIC", + "code": "Cucco_DrawPANIC:\n #_06A727: JSR Sprite_PrepOAMCoord\n #_06A72A: JSL Sprite_DrawDistressSweat\n\n #_06A72E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DrawDistressSweat", + "code": "Sprite_DrawDistressSweat:\n #_06A72F: LDA.b $1A\n #_06A731: STA.b $06\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DrawDistress_custom", + "code": "Sprite_DrawDistress_custom:\n #_06A733: LDA.b #$10\n #_06A735: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_06A739: LDA.b $06\n #_06A73B: AND.b #$18\n #_06A73D: BEQ .exit\n\n #_06A73F: PHX\n\n #_06A740: LDX.b #$03\n #_06A742: LDY.b #$00\n\n.next_object\n #_06A744: PHX\n #_06A745: PHX\n\n #_06A746: TXA\n #_06A747: ASL A\n #_06A748: TAX\n\n #_06A749: REP #$20\n\n #_06A74B: LDA.b $00\n #_06A74D: CLC\n #_06A74E: ADC.l CuccoDistress_offset_x,X\n #_06A752: STA.b ($90),Y\n\n #_06A754: AND.w #$0100\n #_06A757: STA.b $0E\n\n #_06A759: LDA.b $02\n #_06A75B: CLC\n #_06A75C: ADC.l CuccoDistress_offset_y,X\n\n #_06A760: INY\n #_06A761: STA.b ($90),Y\n\n #_06A763: CLC\n #_06A764: ADC.w #$0010\n #_06A767: CMP.w #$0100\n\n #_06A76A: SEP #$20\n #_06A76C: BCC .on_screen\n\n #_06A76E: LDA.b #$F0\n #_06A770: STA.b ($90),Y\n\n.on_screen\n #_06A772: PLX\n\n #_06A773: LDA.b #$83\n #_06A775: INY\n #_06A776: STA.b ($90),Y\n\n #_06A778: LDA.b #$22\n #_06A77A: INY\n #_06A77B: STA.b ($90),Y\n\n #_06A77D: PHY\n\n #_06A77E: TYA\n #_06A77F: LSR A\n #_06A780: LSR A\n #_06A781: TAY\n\n #_06A782: LDA.b $0F\n #_06A784: STA.b ($92),Y\n\n #_06A786: PLY\n #_06A787: INY\n\n #_06A788: PLX\n #_06A789: DEX\n #_06A78A: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06A78C: PLX\n\n.exit\n #_06A78D: RTL", + "file": "bank_06.asm" + }, + { + "name": "Cucco_Carried", + "code": "Cucco_Carried:\n #_06A78E: JSR Cucco_DoMovement_XYZ\n #_06A791: BEQ .dont_stop\n\n #_06A793: JSR Sprite_InvertSpeed_XY\n #_06A796: JSR Sprite_Move_XY_Bank06\n\n #_06A799: JSR Sprite_HalveSpeed_XY\n #_06A79C: JSR Sprite_HalveSpeed_XY\n\n #_06A79F: JSR BawkBawk\n\n.dont_stop\n #_06A7A2: DEC.w $0F80,X\n\n #_06A7A5: LDA.w $0F70,X\n #_06A7A8: BPL .airborne\n\n #_06A7AA: STZ.w $0F70,X\n\n #_06A7AD: LDA.b #$02\n #_06A7AF: STA.w $0D80,X\n\n #_06A7B2: JMP.w Cucco_UpdateFleeSpeed\n\n.airborne\n #_06A7B5: JMP.w Cucco_AnimateFast\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_DoMovement_XYZ", + "code": "Cucco_DoMovement_XYZ:\n #_06A7B8: JSR Sprite_Move_Z_Bank06\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_DoMovement_XY", + "code": "Cucco_DoMovement_XY:\n #_06A7BB: JSR Sprite_Move_XY_Bank06\n #_06A7BE: JSL Sprite_CheckTileCollision_long\n\n #_06A7C2: RTS", + "file": "bank_06.asm" + }, + { + "name": "CuccoDistress", + "code": "CuccoDistress:\n.offset_x\n #_06A7C3: db -3, -1, 2, 0\n #_06A7C7: db 7, 0, 11, 0\n\n.offset_y\n #_06A7CB: db -5, -1, -7, -1\n #_06A7CF: db -7, -1, -5, -1\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Cucco_SummonAvenger", + "code": "Cucco_SummonAvenger:\n #_06A7D3: TXA\n #_06A7D4: EOR.b $1A\n #_06A7D6: AND.b #$0F\n #_06A7D8: ORA.b $1B\n #_06A7DA: BNE EXIT_06A852\n\n #_06A7DC: LDA.b #$0B ; SPRITE 0B\n #_06A7DE: LDY.b #$0A\n #_06A7E0: JSL Sprite_SpawnDynamically_slot_limited\n #_06A7E4: BMI EXIT_06A852\n\n #_06A7E6: PHX\n\n #_06A7E7: TYX\n\n #_06A7E8: LDA.b #$1E ; SFX3.1E\n #_06A7EA: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06A7EE: PLX\n\n #_06A7EF: LDA.b #$01\n #_06A7F1: STA.w $0DB0,Y\n\n #_06A7F4: PHX\n\n #_06A7F5: JSL GetRandomNumber\n #_06A7F9: STA.b $0F\n\n #_06A7FB: AND.b #$02\n #_06A7FD: BEQ .enter_vertically\n\n; ---------------------------------------------------------\n\n.enter_horizontally\n #_06A7FF: LDA.b $0F\n #_06A801: ADC.b $E2\n #_06A803: STA.w $0D10,Y\n\n #_06A806: LDA.b $E3\n #_06A808: ADC.b #$00\n #_06A80A: STA.w $0D30,Y\n\n #_06A80D: LDA.b $0F\n #_06A80F: AND.b #$01\n #_06A811: TAX\n\n #_06A812: LDA.w CuccoSwarmSpeed,X\n #_06A815: ADC.b $E8\n #_06A817: STA.w $0D00,Y\n\n #_06A81A: LDA.b $E9\n #_06A81C: ADC.b #$00\n #_06A81E: STA.w $0D20,Y\n\n #_06A821: BRA .continue\n\n; ---------------------------------------------------------\n\n.enter_vertically\n #_06A823: LDA.b $0F\n #_06A825: ADC.b $E8\n #_06A827: STA.w $0D00,Y\n\n #_06A82A: LDA.b $E9\n #_06A82C: ADC.b #$00\n #_06A82E: STA.w $0D20,Y\n\n #_06A831: LDA.b $0F\n #_06A833: AND.b #$01\n #_06A835: TAX\n\n #_06A836: LDA.w CuccoSwarmSpeed,X\n #_06A839: ADC.b $E2\n #_06A83B: STA.w $0D10,Y\n\n #_06A83E: LDA.b $E3\n #_06A840: ADC.b #$00\n #_06A842: STA.w $0D30,Y\n\n; ---------------------------------------------------------\n\n.continue\n #_06A845: TYX\n\n #_06A846: LDA.b #$20\n #_06A848: JSR Sprite_ApplySpeedTowardsLink\n\n #_06A84B: PLX\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "BawkBawk", + "code": "BawkBawk:\n #_06A84C: LDA.b #$30 ; SFX2.30\n #_06A84E: JSL SpriteSFX_QueueSFX2WithPan\n\n; ---------------------------------------------------------\n\n#EXIT_06A852:\n #_06A852: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_EE_CastleMantle_bounce", + "code": "Sprite_EE_CastleMantle_bounce:\n #_06A853: JSL Sprite_EE_CastleMantle\n\n #_06A857: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_17_Hoarder", + "code": "Sprite_17_Hoarder:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_3E_Hoarder", + "code": "Sprite_3E_Hoarder:\n #_06A86C: LDA.w $0D80,X\n #_06A86F: BEQ Hoarder_Covered\n\n #_06A871: JMP.w Hoarder_Frantic\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hoarder_Covered", + "code": "Hoarder_Covered:\n #_06A874: JSR SpriteDraw_Hoarder\n #_06A877: JSR Sprite_CheckIfActive_Bank06\n\n #_06A87A: STZ.w $0DC0,X\n\n #_06A87D: JSR Sprite_DirectionToFaceLink\n\n #_06A880: LDA.w $0DF0,X\n #_06A883: BNE .flee\n\n #_06A885: LDA.b $0E\n #_06A887: CLC\n #_06A888: ADC.b #$30\n #_06A88A: CMP.b #$60\n #_06A88C: BCS .not_close\n\n #_06A88E: LDA.b $0F\n #_06A890: CLC\n #_06A891: ADC.b #$20\n #_06A893: CMP.b #$40\n #_06A895: BCS .not_close\n\n #_06A897: LDA.b #$20\n #_06A899: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.flee\n #_06A89C: LDA.w .speed_x,Y\n #_06A89F: STA.w $0D50,X\n\n #_06A8A2: LDA.w .speed_y,Y\n #_06A8A5: STA.w $0D40,X\n\n #_06A8A8: LDA.w $0E70,X\n #_06A8AB: BNE .tile_collision\n\n #_06A8AD: JSR Sprite_Move_XY_Bank06\n\n.tile_collision\n #_06A8B0: JSR Sprite_CheckTileCollision\n #_06A8B3: JSR Sprite_CheckDamageFromLink\n\n #_06A8B6: INC.w $0E80,X\n\n #_06A8B9: LDA.w $0E80,X\n #_06A8BC: LSR A\n #_06A8BD: AND.b #$03\n #_06A8BF: TAY\n\n #_06A8C0: LDA.w .anim_step,Y\n #_06A8C3: STA.w $0DC0,X\n\n.not_close\n #_06A8C6: LDA.w $0E20,X\n #_06A8C9: CMP.b #$3E ; SPRITE 3E\n #_06A8CB: BNE .not_rock\n\n #_06A8CD: LDA.l $7EF354\n #_06A8D1: CMP.b #$01\n #_06A8D3: BCC .weakling\n\n.not_rock\n #_06A8D5: JSL Sprite_CheckIfLifted_permissive_long\n\n.weakling\n #_06A8D9: LDA.w $0DD0,X\n #_06A8DC: CMP.b #$09\n #_06A8DE: BEQ .exit\n\n #_06A8E0: LDA.b #$01\n\n #_06A8E2: LDY.w $0E20,X\n #_06A8E5: CPY.b #$17 ; SPRITE 17\n #_06A8E7: BNE .rock_hoarder\n\n #_06A8E9: INC A\n\n.rock_hoarder\n #_06A8EA: STA.w $0DB0,X\n\n #_06A8ED: LDA.b #$EC ; SPRITE EC\n #_06A8EF: STA.w $0E20,X\n\n #_06A8F2: LSR.w $0F50,X\n #_06A8F5: ASL.w $0F50,X\n\n #_06A8F8: STZ.w $0DC0,X\n\n; ---------------------------------------------------------\n\n #_06A8FB: LDA.b #$3E ; SPRITE 3E\n #_06A8FD: JSL Sprite_SpawnDynamically\n #_06A901: BMI .exit\n\n #_06A903: JSL Sprite_SetSpawnedCoordinates\n\n #_06A907: LDA.w $0E40,Y\n #_06A90A: ASL A\n #_06A90B: LSR A\n #_06A90C: STA.w $0E40,Y\n\n #_06A90F: LDA.b #$80\n #_06A911: STA.w $0E10,Y\n\n #_06A914: LDA.b #$09\n #_06A916: STA.w $0F50,Y\n #_06A919: STA.w $0D80,Y\n\n.exit\n #_06A91C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hoarder_Frantic", + "code": "Hoarder_Frantic:\n #_06A91D: JSR SpriteDraw_SingleLarge\n #_06A920: JSR Sprite_CheckIfActive_Bank06\n #_06A923: JSR Sprite_CheckIfRecoiling_Bank06\n #_06A926: JSR Sprite_CheckDamageFromLink\n\n #_06A929: LDA.w $0E10,X\n #_06A92C: BNE .no_damage\n\n #_06A92E: JSR Sprite_CheckDamageToLink\n\n.no_damage\n #_06A931: INC.w $0E80,X\n\n #_06A934: LDA.w $0E80,X\n #_06A937: LSR A\n #_06A938: AND.b #$03\n #_06A93A: TAY\n\n #_06A93B: LDA.w .anim_step,Y\n #_06A93E: STA.w $0DC0,X\n\n #_06A941: LDA.w $0F50,X\n #_06A944: AND.b #$BF\n #_06A946: ORA.w .h_flip,Y\n #_06A949: STA.w $0F50,X\n\n #_06A94C: LDA.w $0E70,X\n #_06A94F: BEQ .no_tile_collision\n\n #_06A951: LDA.b #$10\n #_06A953: STA.w $0F10,X\n\n #_06A956: JSL GetRandomNumber\n #_06A95A: AND.b #$03\n #_06A95C: TAY\n\n #_06A95D: LDA.w Hoarder_Frantic_speed_x,Y\n #_06A960: STA.w $0D50,X\n\n #_06A963: LDA.w Hoarder_Frantic_speed_y,Y\n #_06A966: STA.w $0D40,X\n\n #_06A969: BRA .continue\n\n; ---------------------------------------------------------\n\n.no_tile_collision\n #_06A96B: JSR Sprite_Move_XY_Bank06\n\n.continue\n #_06A96E: JSR Sprite_CheckTileCollision\n\n #_06A971: LDA.w $0F10,X\n #_06A974: BNE .dont_turn\n\n #_06A976: TXA\n #_06A977: EOR.b $1A\n #_06A979: AND.b #$1F\n #_06A97B: BNE .dont_turn\n\n #_06A97D: LDA.b #$10\n #_06A97F: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06A982: LDA.b $00\n #_06A984: EOR.b #$FF\n #_06A986: INC A\n #_06A987: STA.w $0D40,X\n\n #_06A98A: LDA.b $01\n #_06A98C: EOR.b #$FF\n #_06A98E: INC A\n #_06A98F: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.dont_turn\n #_06A992: LDA.b $1A\n #_06A994: AND.b #$01\n #_06A996: BNE .exit\n\n #_06A998: INC.w $0ED0,X\n\n #_06A99B: LDA.w $0ED0,X\n #_06A99E: CMP.b #$C0\n #_06A9A0: BNE .dont_die\n\n #_06A9A2: LDA.b #$0F\n #_06A9A4: JSR Sprite_ScheduleForBreakage_parameterized\n\n #_06A9A7: LDY.b #$01\n\n #_06A9A9: BRA .green_rupee\n\n; ---------------------------------------------------------\n\n.dont_die\n #_06A9AB: LDA.w $0ED0,X\n #_06A9AE: AND.b #$0F\n #_06A9B0: BNE .exit\n\n #_06A9B2: LDY.b #$00\n\n #_06A9B4: LDA.w $0EB0,X\n #_06A9B7: CMP.b #$06\n #_06A9B9: BNE .green_rupee\n\n #_06A9BB: LDA.b #$DB ; SPRITE DB\n #_06A9BD: BRA .spit_rupee\n\n.green_rupee\n #_06A9BF: LDA.b #$D9 ; SPRITE D9\n\n; ---------------------------------------------------------\n\n.spit_rupee\n #_06A9C1: JSL Sprite_SpawnDynamically_slot_limited\n #_06A9C5: BMI .exit\n\n #_06A9C7: INC.w $0EB0,X\n\n #_06A9CA: JSL Sprite_SetSpawnedCoordinates\n\n #_06A9CE: LDA.b $00\n #_06A9D0: CLC\n #_06A9D1: ADC.b #$08\n #_06A9D3: STA.w $0D10,Y\n\n #_06A9D6: LDA.b $01\n #_06A9D8: ADC.b #$00\n #_06A9DA: STA.w $0D30,Y\n\n #_06A9DD: LDA.b #$20\n #_06A9DF: STA.w $0F80,Y\n\n #_06A9E2: LDA.b #$10\n #_06A9E4: STA.w $0F10,Y\n\n #_06A9E7: PHX\n\n #_06A9E8: TYX\n\n #_06A9E9: LDA.b #$10\n #_06A9EB: JSR Sprite_ApplySpeedTowardsLink\n\n #_06A9EE: LDA.b $00\n #_06A9F0: EOR.b #$FF\n #_06A9F2: STA.w $0D40,X\n\n #_06A9F5: LDA.b $01\n #_06A9F7: EOR.b #$FF\n #_06A9F9: STA.w $0D50,X\n\n #_06A9FC: PLX\n\n #_06A9FD: LDA.b #$30 ; SFX3.30\n #_06A9FF: JSL SpriteSFX_QueueSFX3WithPan\n\n.exit\n #_06AA03: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfLifted_permissive_long", + "code": "Sprite_CheckIfLifted_permissive_long:\n #_06AA0C: PHB\n #_06AA0D: PHK\n #_06AA0E: PLB\n\n #_06AA0F: JSR .wrapper\n\n #_06AA12: PLB\n\n #_06AA13: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Hoarder", + "code": "SpriteDraw_Hoarder:\n #_06AA48: JSR Sprite_PrepOAMCoord\n\n #_06AA4B: LDA.w $0FC6\n #_06AA4E: CMP.b #$03\n #_06AA50: BCS .exit\n\n #_06AA52: STZ.b $07\n\n #_06AA54: LDA.w $0E20,X\n #_06AA57: CMP.b #$17 ; SPRITE 17\n #_06AA59: BNE .rock_hoarder\n\n #_06AA5B: LDA.b #$02\n #_06AA5D: STA.b $07\n\n.rock_hoarder\n #_06AA5F: LDA.w $0DC0,X\n #_06AA62: ASL A\n #_06AA63: STA.b $06\n\n; ---------------------------------------------------------\n\n #_06AA65: PHX\n\n #_06AA66: LDX.b #$01\n\n.next_object\n #_06AA68: PHX\n\n #_06AA69: TXA\n #_06AA6A: CLC\n #_06AA6B: ADC.b $06\n #_06AA6D: PHA\n\n #_06AA6E: ASL A\n #_06AA6F: TAX\n\n #_06AA70: REP #$20\n\n #_06AA72: LDA.b $00\n #_06AA74: STA.b ($90),Y\n\n #_06AA76: AND.w #$0100\n #_06AA79: STA.b $0E\n\n #_06AA7B: LDA.b $02\n #_06AA7D: CLC\n #_06AA7E: ADC.w .offset_y,X\n\n #_06AA81: INY\n #_06AA82: STA.b ($90),Y\n\n #_06AA84: CLC\n #_06AA85: ADC.w #$0010\n #_06AA88: CMP.w #$0100\n\n #_06AA8B: SEP #$20\n #_06AA8D: BCC .on_screen\n\n #_06AA8F: LDA.b #$F0\n #_06AA91: STA.b ($90),Y\n\n.on_screen\n #_06AA93: PLX\n\n #_06AA94: LDA.w .char,X\n #_06AA97: CMP.b #$44\n #_06AA99: BNE .change_char\n\n #_06AA9B: CLC\n #_06AA9C: ADC.b $07\n\n.change_char\n #_06AA9E: INY\n #_06AA9F: STA.b ($90),Y\n\n #_06AAA1: LDA.b $05\n #_06AAA3: AND.b #$FE\n #_06AAA5: ORA.w .props,X\n\n #_06AAA8: INY\n #_06AAA9: STA.b ($90),Y\n\n #_06AAAB: PHY\n\n #_06AAAC: TYA\n #_06AAAD: LSR A\n #_06AAAE: LSR A\n #_06AAAF: TAY\n\n #_06AAB0: LDA.b #$02\n #_06AAB2: ORA.b $0F\n #_06AAB4: STA.b ($92),Y\n\n #_06AAB6: PLY\n #_06AAB7: INY\n\n #_06AAB8: PLX\n #_06AAB9: DEX\n #_06AABA: BPL .next_object\n\n #_06AABC: PLX\n\n.exit\n #_06AABD: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_EC_ThrownItem", + "code": "Sprite_EC_ThrownItem:\n #_06AAE0: LDA.w $0FC6\n #_06AAE3: CMP.b #$03\n #_06AAE5: BCS .continue\n\n #_06AAE7: LDA.w $0FB3\n #_06AAEA: BEQ .dont_use_reserved_slots\n\n #_06AAEC: LDA.w $0F20,X\n #_06AAEF: BEQ .dont_use_reserved_slots\n\n #_06AAF1: TXA\n #_06AAF2: AND.b #$03\n #_06AAF4: ASL A\n #_06AAF5: TAY\n\n #_06AAF6: REP #$20\n\n #_06AAF8: LDA.w SpriteDraw_ThrownItem_oam_main,Y\n #_06AAFB: STA.b $90\n\n #_06AAFD: LDA.w SpriteDraw_ThrownItem_oam_small,Y\n #_06AB00: STA.b $92\n\n #_06AB02: SEP #$20\n\n.dont_use_reserved_slots\n #_06AB04: LDA.w $0DD0,X\n #_06AB07: STA.w $0BA0,X\n\n #_06AB0A: LDA.w $0DB0,X\n #_06AB0D: CMP.b #$06\n #_06AB0F: BCC .not_big\n\n #_06AB11: JSR SpriteDraw_ThrownItem_Gigantic\n #_06AB14: BRA .continue\n\n.not_big\n #_06AB16: JSR SpriteDraw_SingleLarge\n\n #_06AB19: PHX\n\n #_06AB1A: LDA.b $1B\n #_06AB1C: CLC\n #_06AB1D: ADC.w $0FFF\n #_06AB20: CMP.b #$02\n\n #_06AB22: LDA.w $0DB0,X\n #_06AB25: PHA\n\n #_06AB26: BCC .not_skull_pot\n\n #_06AB28: ADC.b #$05\n\n.not_skull_pot\n #_06AB2A: TAX\n\n #_06AB2B: LDA.w SpriteDraw_ThrownItem_char,X\n #_06AB2E: LDY.b #$02\n #_06AB30: STA.b ($90),Y\n\n #_06AB32: INY\n\n #_06AB33: LDA.b ($90),Y\n #_06AB35: AND.b #$F0\n\n #_06AB37: PLX\n\n #_06AB38: ORA.w SpriteDraw_ThrownItem_palette,X\n #_06AB3B: STA.b ($90),Y\n\n #_06AB3D: PLX\n\n #_06AB3E: AND.b #$0F\n #_06AB40: STA.b $00\n\n #_06AB42: LDA.w $0F50,X\n #_06AB45: AND.b #$C0\n #_06AB47: ORA.b $00\n #_06AB49: STA.w $0F50,X\n\n; ---------------------------------------------------------\n\n.continue\n #_06AB4C: LDA.w $0DD0,X\n #_06AB4F: CMP.b #$09\n #_06AB51: BNE .exit\n\n #_06AB53: JSR Sprite_CheckIfActive_Bank06\n #_06AB56: JSR ThrowableScenery_InteractWithSpritesAndTiles\n\n.exit\n #_06AB59: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_ThrownItem_Gigantic", + "code": "SpriteDraw_ThrownItem_Gigantic:\n #_06AB76: LDY.w $0DB0,X\n\n #_06AB79: LDA.w .offset_shadow,Y\n #_06AB7C: STA.w $0F50,X\n\n #_06AB7F: JSR Sprite_PrepOAMCoord\n\n #_06AB82: PHX\n\n #_06AB83: LDX.b #$03\n\n.next_object\n #_06AB85: PHX\n\n #_06AB86: TXA\n #_06AB87: ASL A\n #_06AB88: TAX\n\n #_06AB89: REP #$20\n\n #_06AB8B: LDA.b $00\n #_06AB8D: CLC\n #_06AB8E: ADC.w .offset_x,X\n #_06AB91: STA.b ($90),Y\n\n #_06AB93: AND.w #$0100\n #_06AB96: STA.b $0E\n\n #_06AB98: LDA.b $02\n #_06AB9A: CLC\n #_06AB9B: ADC.w .offset_y,X\n\n #_06AB9E: INY\n #_06AB9F: STA.b ($90),Y\n\n #_06ABA1: CLC\n #_06ABA2: ADC.w #$0010\n #_06ABA5: CMP.w #$0100\n\n #_06ABA8: SEP #$20\n #_06ABAA: BCC .on_screen\n\n #_06ABAC: LDA.b #$F0\n #_06ABAE: STA.b ($90),Y\n\n.on_screen\n #_06ABB0: PLX\n\n #_06ABB1: LDA.b #$4A\n #_06ABB3: INY\n #_06ABB4: STA.b ($90),Y\n\n #_06ABB6: LDA.w .flip,X\n #_06ABB9: INY\n #_06ABBA: ORA.b $05\n #_06ABBC: STA.b ($90),Y\n\n #_06ABBE: PHY\n\n #_06ABBF: TYA\n #_06ABC0: LSR A\n #_06ABC1: LSR A\n #_06ABC2: TAY\n\n #_06ABC3: LDA.b #$02\n #_06ABC5: ORA.b $0F\n #_06ABC7: STA.b ($92),Y\n\n #_06ABC9: PLY\n #_06ABCA: INY\n\n #_06ABCB: DEX\n #_06ABCC: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06ABCE: PLX\n\n #_06ABCF: LDA.b #$0C\n #_06ABD1: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_06ABD5: LDY.b #$00\n\n #_06ABD7: LDA.w $0D00,X\n #_06ABDA: SEC\n #_06ABDB: SBC.b $E8\n #_06ABDD: STA.b $02\n\n #_06ABDF: LDA.w $0D20,X\n #_06ABE2: SBC.b $E9\n #_06ABE4: STA.b $03\n\n #_06ABE6: PHX\n\n #_06ABE7: LDX.b #$02\n\n.next_shadow\n #_06ABE9: PHX\n\n #_06ABEA: TXA\n #_06ABEB: ASL A\n #_06ABEC: TAX\n\n #_06ABED: REP #$20\n\n #_06ABEF: LDA.b $00\n #_06ABF1: CLC\n #_06ABF2: ADC.w .offset_shadow,X\n #_06ABF5: STA.b ($90),Y\n\n #_06ABF7: AND.w #$0100\n #_06ABFA: STA.b $0E\n\n #_06ABFC: LDA.b $02\n #_06ABFE: CLC\n #_06ABFF: ADC.w #$000C\n\n #_06AC02: INY\n #_06AC03: STA.b ($90),Y\n\n #_06AC05: CLC\n #_06AC06: ADC.w #$0010\n #_06AC09: CMP.w #$0100\n\n #_06AC0C: SEP #$20\n #_06AC0E: BCC .shadow_on_screen\n\n #_06AC10: LDA.b #$F0\n #_06AC12: STA.b ($90),Y\n\n.shadow_on_screen\n #_06AC14: PLX\n\n #_06AC15: LDA.b #$6C\n #_06AC17: INY\n #_06AC18: STA.b ($90),Y\n\n #_06AC1A: LDA.b #$24\n #_06AC1C: INY\n #_06AC1D: STA.b ($90),Y\n\n #_06AC1F: PHY\n\n #_06AC20: TYA\n #_06AC21: LSR A\n #_06AC22: LSR A\n #_06AC23: TAY\n\n #_06AC24: LDA.b #$02\n #_06AC26: ORA.b $0F\n #_06AC28: STA.b ($92),Y\n\n #_06AC2A: PLY\n #_06AC2B: INY\n\n #_06AC2C: DEX\n #_06AC2D: BPL .next_shadow\n\n; ---------------------------------------------------------\n\n #_06AC2F: PLX\n\n #_06AC30: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrowableScenery_ScatterIntoDebris", + "code": "ThrowableScenery_ScatterIntoDebris:\n #_06AC41: LDA.w $0DB0,X\n #_06AC44: BMI ThrowableScenery_ScatterIntoSmallerDebris\n\n #_06AC46: CMP.b #$06\n #_06AC48: BCC ThrowableScenery_ScatterIntoSmallerDebris\n\n #_06AC4A: LDA.b #$03\n #_06AC4C: STA.b $0D\n\n.next_particle\n #_06AC4E: LDA.b #$EC ; SPRITE EC\n #_06AC50: JSL Sprite_SpawnDynamically\n #_06AC54: BMI .no_space\n\n #_06AC56: LDA.w $0F70,X\n #_06AC59: STA.w $0F70,Y\n\n #_06AC5C: PHX\n\n #_06AC5D: LDX.b $0D\n\n #_06AC5F: LDA.b $00\n #_06AC61: CLC\n #_06AC62: ADC.w .offset_x_low,X\n #_06AC65: STA.w $0D10,Y\n\n #_06AC68: LDA.b $01\n #_06AC6A: ADC.w .offset_x_high,X\n #_06AC6D: STA.w $0D30,Y\n\n #_06AC70: LDA.b $02\n #_06AC72: CLC\n #_06AC73: ADC.w .offset_y_low,X\n #_06AC76: STA.w $0D00,Y\n\n #_06AC79: LDA.b $03\n #_06AC7B: ADC.w .offset_y_high,X\n #_06AC7E: STA.w $0D20,Y\n\n #_06AC81: LDA.b #$01\n #_06AC83: STA.w $0DB0,Y\n\n #_06AC86: TYX\n #_06AC87: JSR Sprite_ScheduleForBreakage\n\n #_06AC8A: PLX\n\n #_06AC8B: LDA.w $0DB0,X\n #_06AC8E: CMP.b #$07\n\n #_06AC90: LDA.b #$00\n #_06AC92: BCS .default_palette\n\n #_06AC94: LDA.b #$0C\n\n.default_palette\n #_06AC96: STA.w $0F50,Y\n\n.no_space\n #_06AC99: DEC.b $0D\n #_06AC9B: BPL .next_particle\n\n #_06AC9D: STZ.w $0DD0,X\n\n #_06ACA0: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrowableScenery_ScatterIntoSmallerDebris", + "code": "ThrowableScenery_ScatterIntoSmallerDebris:\n #_06ACA1: STZ.w $0DD0,X\n\n #_06ACA4: JSR Sprite_PrepOAMCoord\n\n #_06ACA7: PHX\n\n #_06ACA8: TXY\n #_06ACA9: LDX.b #$1D\n\n.next_slot\n #_06ACAB: LDA.l $7FF800,X\n #_06ACAF: BEQ .empty_slot\n\n #_06ACB1: DEX\n #_06ACB2: BPL .next_slot\n\n #_06ACB4: INX\n\n.empty_slot\n #_06ACB5: LDA.b #$16 ; GARNISH 16\n #_06ACB7: STA.l $7FF800,X\n #_06ACBB: STA.w $0FB4\n\n #_06ACBE: LDA.w $0D10,Y\n #_06ACC1: STA.l $7FF83C,X\n\n #_06ACC5: LDA.w $0D30,Y\n #_06ACC8: STA.l $7FF878,X\n\n #_06ACCC: LDA.w $0D00,Y\n #_06ACCF: SEC\n #_06ACD0: SBC.w $0F70,Y\n\n #_06ACD3: PHP\n\n #_06ACD4: CLC\n #_06ACD5: ADC.b #$10\n #_06ACD7: STA.l $7FF81E,X\n\n #_06ACDB: LDA.w $0D20,Y\n #_06ACDE: ADC.b #$00\n\n #_06ACE0: PLP\n #_06ACE1: SBC.b #$00\n #_06ACE3: STA.l $7FF85A,X\n\n #_06ACE7: LDA.b $05\n #_06ACE9: STA.l $7FF9FE,X\n\n #_06ACED: LDA.w $0F20,Y\n #_06ACF0: STA.l $7FF968,X\n\n #_06ACF4: LDA.b #$1F\n #_06ACF6: STA.l $7FF90E,X\n\n #_06ACFA: LDA.w $0DB0,Y\n #_06ACFD: STA.l $7FF92C,X\n\n #_06AD01: PLX\n\n #_06AD02: RTS", + "file": "bank_06.asm" + }, + { + "name": "ApplyRumbleToSprites", + "code": "ApplyRumbleToSprites:\n #_06AD03: LDY.b #$0F\n\n.next_sprite\n #_06AD05: LDA.w $0CAA,Y\n #_06AD08: AND.b #$02\n #_06AD0A: BEQ .skip\n\n #_06AD0C: LDA.w $0E90,Y\n #_06AD0F: BEQ .skip\n\n #_06AD11: LDA.w $0FC6\n #_06AD14: CMP.b #$0E\n #_06AD16: BEQ .collision_guaranteed\n\n #_06AD18: PHX\n\n #_06AD19: TYX\n #_06AD1A: JSR Sprite_SetupHitBox\n\n #_06AD1D: PLX\n\n #_06AD1E: JSR CheckIfHitBoxesOverlap\n #_06AD21: BCC .skip\n\n.collision_guaranteed\n #_06AD23: LDA.b #$00\n #_06AD25: STA.w $0E90,Y\n\n #_06AD28: LDA.b #$30 ; SFX3.30\n #_06AD2A: STA.w $012F\n\n #_06AD2D: LDA.b #$30\n #_06AD2F: STA.w $0F80,Y\n\n #_06AD32: LDA.b #$10\n #_06AD34: STA.w $0D50,Y\n\n #_06AD37: LDA.b #$30\n #_06AD39: STA.w $0EE0,Y\n\n #_06AD3C: LDA.b #$FF\n #_06AD3E: STA.w $0B58,Y\n\n #_06AD41: LDA.w $0E20,Y ; hearts in trees turn into bombs\n #_06AD44: CMP.b #$D8 ; SPRITE D8\n #_06AD46: BNE .skip\n\n #_06AD48: JSL Sprite_TransmuteToBomb\n\n.skip\n #_06AD4C: DEY\n #_06AD4D: BPL .next_sprite\n\n #_06AD4F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_TransmuteToBomb", + "code": "Sprite_TransmuteToBomb:\n #_06AD50: LDA.b #$4A ; SPRITE 4A\n #_06AD52: STA.w $0E20,Y\n\n #_06AD55: LDA.b #$01\n #_06AD57: STA.w $0DB0,Y\n\n #_06AD5A: LDA.b #$FF\n #_06AD5C: STA.w $0E00,Y\n\n #_06AD5F: LDA.b #$18\n #_06AD61: STA.w $0E60,Y\n\n #_06AD64: LDA.b #$08\n #_06AD66: STA.w $0F50,Y\n\n #_06AD69: LDA.b #$00\n #_06AD6B: STA.w $0E50,Y\n\n #_06AD6E: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_28_DarkWorldHintNPC", + "code": "Sprite_28_DarkWorldHintNPC:\n #_06AD6F: JSR SpriteDraw_DarkWorldHintNPC\n #_06AD72: JSR Sprite_CheckIfActive_Bank06\n #_06AD75: JSL Sprite_BehaveAsBarrier\n\n #_06AD79: LDA.w $0DF0,X\n #_06AD7C: BNE .delay\n\n #_06AD7E: LDA.b $1A\n\n #_06AD80: LSR A\n #_06AD81: LSR A\n #_06AD82: LSR A\n #_06AD83: LSR A\n\n #_06AD84: AND.b #$01\n #_06AD86: STA.w $0DC0,X\n\n.delay\n #_06AD89: LDA.w $0E80,X\n #_06AD8C: JSL JumpTableLocal\n #_06AD90: dw DarkWorldHintNPC_Bird\n #_06AD92: dw HamburgerHelper\n #_06AD94: dw DarkWorldHintNPC_Octopus\n #_06AD96: dw Broccoli\n #_06AD98: dw Watto\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "DarkWorldHintNPC_Bird", + "code": "DarkWorldHintNPC_Bird:\n #_06AD9A: LDA.w $0D80,X\n #_06AD9D: JSL JumpTableLocal\n #_06ADA1: dw DarkWorldHintNPC_Idle\n #_06ADA3: dw HintBird_TellStory\n #_06ADA5: dw DarkWorldHintNPC_RestoreHealth\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "DarkWorldHintNPC_Idle", + "code": "DarkWorldHintNPC_Idle:\n #_06ADA7: LDA.b #$FE ; MESSAGE 00FE\n #_06ADA9: LDY.b #$00\n #_06ADAB: JSL Sprite_ShowSolicitedMessage\n #_06ADAF: BCC .exit\n\n #_06ADB1: INC.w $0D80,X\n\n.exit\n #_06ADB4: RTS", + "file": "bank_06.asm" + }, + { + "name": "DarkWorldHintNPC_RestoreHealth", + "code": "DarkWorldHintNPC_RestoreHealth:\n #_06ADB5: LDA.b #$A0\n #_06ADB7: STA.l $7EF372\n\n #_06ADBB: STZ.w $0D80,X\n\n #_06ADBE: RTS", + "file": "bank_06.asm" + }, + { + "name": "HintBird_TellStory", + "code": "HintBird_TellStory:\n #_06ADBF: LDA.w $1CE8\n #_06ADC2: BNE .rejected\n\n #_06ADC4: JSR DarkWorldHintNPC_HandlePayment\n #_06ADC7: BCC .rejected\n\n #_06ADC9: LDA.b #$FF ; MESSAGE 00FF\n #_06ADCB: LDY.b #$00\n\n; ---------------------------------------------------------\n\n#DarkWorldHintNPC_TellStory:\n #_06ADCD: JSL Sprite_ShowMessageUnconditional\n\n #_06ADD1: INC.w $0D80,X\n\n #_06ADD4: RTS", + "file": "bank_06.asm" + }, + { + "name": "HamburgerHelper", + "code": "HamburgerHelper:\n #_06ADE1: LDA.w $0D80,X\n #_06ADE4: JSL JumpTableLocal\n #_06ADE8: dw DarkWorldHintNPC_Idle\n #_06ADEA: dw HamburgerHelper_TellStory\n #_06ADEC: dw DarkWorldHintNPC_RestoreHealth\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "HamburgerHelper_TellStory", + "code": "HamburgerHelper_TellStory:\n #_06ADEE: LDA.w $1CE8\n #_06ADF1: BNE .rejected\n\n #_06ADF3: JSR DarkWorldHintNPC_HandlePayment\n #_06ADF6: BCC .rejected\n\n #_06ADF8: LDA.b #$01 ; MESSAGE 0101\n #_06ADFA: LDY.b #$01\n #_06ADFC: BRA DarkWorldHintNPC_TellStory\n\n.rejected\n #_06ADFE: LDA.b #$00 ; MESSAGE 0100\n #_06AE00: LDY.b #$01\n #_06AE02: JSL Sprite_ShowMessageUnconditional\n\n #_06AE06: STZ.w $0D80,X\n\n #_06AE09: RTS", + "file": "bank_06.asm" + }, + { + "name": "DarkWorldHintNPC_Octopus", + "code": "DarkWorldHintNPC_Octopus:\n #_06AE0A: LDA.w $0D80,X\n #_06AE0D: JSL JumpTableLocal\n #_06AE11: dw DarkWorldHintNPC_Idle\n #_06AE13: dw HintOctopus_TellStory\n #_06AE15: dw DarkWorldHintNPC_RestoreHealth\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "HintOctopus_TellStory", + "code": "HintOctopus_TellStory:\n #_06AE17: LDA.w $1CE8\n #_06AE1A: BNE .rejected\n\n #_06AE1C: JSR DarkWorldHintNPC_HandlePayment\n #_06AE1F: BCC .rejected\n\n #_06AE21: LDA.b #$02 ; MESSAGE 0102\n #_06AE23: LDY.b #$01\n #_06AE25: JMP.w DarkWorldHintNPC_TellStory\n\n; ---------------------------------------------------------\n\n.rejected\n #_06AE28: LDA.b #$00 ; MESSAGE 0100\n #_06AE2A: LDY.b #$01\n #_06AE2C: JSL Sprite_ShowMessageUnconditional\n\n #_06AE30: STZ.w $0D80,X\n\n #_06AE33: RTS", + "file": "bank_06.asm" + }, + { + "name": "Broccoli", + "code": "Broccoli:\n #_06AE34: LDA.w $0DF0,X\n #_06AE37: BNE .continue\n\n #_06AE39: LDA.b $1A\n #_06AE3B: AND.b #$3F\n #_06AE3D: BNE .dont_flip\n\n #_06AE3F: LDA.w $0F50,X\n #_06AE42: EOR.b #$40\n #_06AE44: STA.w $0F50,X\n\n.dont_flip\n #_06AE47: JSL GetRandomNumber\n #_06AE4B: BNE .continue\n\n #_06AE4D: LDA.b #$20\n #_06AE4F: STA.w $0DF0,X\n\n.continue\n #_06AE52: LDA.b #$49 ; MESSAGE 0149\n #_06AE54: LDY.b #$01\n #_06AE56: JSL Sprite_ShowSolicitedMessage\n\n #_06AE5A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Watto", + "code": "Watto:\n #_06AE5B: LDA.b $1A\n #_06AE5D: LSR A\n #_06AE5E: AND.b #$01\n #_06AE60: STA.w $0DC0,X\n\n #_06AE63: JSR Sprite_Move_Z_Bank06\n\n #_06AE66: LDA.w $0F70,X\n #_06AE69: BPL .air_born\n\n #_06AE6B: STZ.w $0F70,X\n\n.air_born\n #_06AE6E: LDA.w $0F70,X\n #_06AE71: CMP.b #$04\n #_06AE73: ROL A\n #_06AE74: AND.b #$01\n #_06AE76: TAY\n\n #_06AE77: LDA.w $0F80,X\n #_06AE7A: CLC\n #_06AE7B: ADC.w PositiveAndNegativeOne,Y\n #_06AE7E: STA.w $0F80,X\n\n #_06AE81: LDA.w $0D80,X\n #_06AE84: JSL JumpTableLocal\n #_06AE88: dw DarkWorldHintNPC_Idle\n #_06AE8A: dw Watto_TellStory\n #_06AE8C: dw DarkWorldHintNPC_RestoreHealth\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Watto_TellStory", + "code": "Watto_TellStory:\n #_06AE8E: LDA.w $1CE8\n #_06AE91: BNE .rejected\n\n #_06AE93: JSR DarkWorldHintNPC_HandlePayment\n #_06AE96: BCC .rejected\n\n #_06AE98: LDA.b #$03 ; MESSAGE 0103\n #_06AE9A: LDY.b #$01\n #_06AE9C: JMP.w DarkWorldHintNPC_TellStory\n\n.rejected\n #_06AE9F: LDA.b #$00 ; MESSAGE 0100\n #_06AEA1: LDY.b #$01\n #_06AEA3: JSL Sprite_ShowMessageUnconditional\n\n #_06AEA7: STZ.w $0D80,X\n\n #_06AEAA: RTS", + "file": "bank_06.asm" + }, + { + "name": "DarkWorldHintNPC_HandlePayment", + "code": "DarkWorldHintNPC_HandlePayment:\n #_06AEAB: REP #$20\n\n #_06AEAD: LDA.l $7EF360\n #_06AEB1: CMP.w #$14\n #_06AEB4: BCC .too_poor\n\n #_06AEB6: LDA.l $7EF360\n #_06AEBA: SEC\n #_06AEBB: SBC.w #20\n #_06AEBE: STA.l $7EF360\n\n #_06AEC2: SEP #$30\n #_06AEC4: SEC\n\n #_06AEC5: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_DarkWorldHintNPC", + "code": "SpriteDraw_DarkWorldHintNPC:\n #_06AF1A: LDA.w $0E80,X\n #_06AF1D: ASL A\n\n #_06AF1E: ADC.w $0DC0,X\n\n #_06AF21: ASL A\n #_06AF22: ASL A\n #_06AF23: ASL A\n\n #_06AF24: ADC.b #.oam_groups>>0\n #_06AF26: STA.b $08\n\n #_06AF28: LDA.b #.oam_groups>>8\n #_06AF2A: ADC.b #$00\n #_06AF2C: STA.b $09\n\n #_06AF2E: LDA.b #$01\n #_06AF30: STA.b $06\n #_06AF32: STZ.b $07\n\n #_06AF34: JSL SpriteDraw_Tabulated_player_deferred\n\n #_06AF38: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2E_FluteKid", + "code": "Sprite_2E_FluteKid:\n #_06AF3B: LDA.w $0EB0,X\n #_06AF3E: JSL JumpTableLocal\n #_06AF42: dw FluteKid_TheKid\n #_06AF44: dw FluteKid_Quaver\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_TheKid", + "code": "FluteKid_TheKid:\n #_06AF46: LDA.w $0E80,X\n #_06AF49: JSL JumpTableLocal\n #_06AF4D: dw FluteKid_Human\n #_06AF4F: dw FluteKid_Stumpy\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_Human", + "code": "FluteKid_Human:\n #_06AF51: LDA.w $0D80,X\n #_06AF54: CMP.b #$03\n #_06AF56: BEQ .invisible\n\n #_06AF58: JSL SpriteDraw_FluteKid\n\n #_06AF5C: LDA.b $01\n #_06AF5E: ORA.b $03\n #_06AF60: STA.w $0DB0,X\n\n.invisible\n #_06AF63: JSR Sprite_CheckIfActive_Bank06\n\n #_06AF66: LDA.w $0DB0,X\n #_06AF69: BNE .no_tune\n\n #_06AF6B: LDA.w $0DA0,X\n #_06AF6E: BNE .no_tune\n\n #_06AF70: LDA.b #$0B ; SFX1.0B\n #_06AF72: STA.w $012D\n #_06AF75: STA.w $0DA0,X\n\n.no_tune\n #_06AF78: LDA.b $1A\n #_06AF7A: LSR A\n #_06AF7B: LSR A\n #_06AF7C: LSR A\n #_06AF7D: LSR A\n #_06AF7E: LSR A\n #_06AF7F: AND.b #$01\n #_06AF81: STA.w $0DC0,X\n\n #_06AF84: LDA.w $0D80,X\n #_06AF87: JSL JumpTableLocal\n #_06AF8B: dw FluteKid_Chillin\n #_06AF8D: dw FluteKid_AboutToDisappear\n #_06AF8F: dw FluteKid_PhaseOut\n #_06AF91: dw FluteKid_HeDisappeared\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_Chillin", + "code": "FluteKid_Chillin:\n #_06AF93: LDA.l $7EF34C\n #_06AF97: CMP.b #$02\n #_06AF99: BCS .flute_owned\n\n #_06AF9B: JSR FluteKid_CheckIfInRange\n #_06AF9E: BCS .not_close\n\n.flute_owned\n #_06AFA0: INC.w $0D80,X\n #_06AFA3: INC.w $0DE0,X\n\n #_06AFA6: INC.w $0FDD\n\n #_06AFA9: LDA.b #$B0\n #_06AFAB: STA.w $0DF0,X\n\n #_06AFAE: LDA.b #$01\n #_06AFB0: STA.w $02E4\n\n.not_close\n #_06AFB3: LDA.w $0DF0,X\n #_06AFB6: BNE .exit\n\n #_06AFB8: LDA.b #$19\n #_06AFBA: STA.w $0DF0,X\n\n #_06AFBD: JSR FluteKid_SpawnQuaver\n\n.exit\n #_06AFC0: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_AboutToDisappear", + "code": "FluteKid_AboutToDisappear:\n #_06AFC1: LDA.b #$01\n #_06AFC3: STA.w $02E4\n\n #_06AFC6: LDA.w $0DF0,X\n #_06AFC9: BNE .exit\n\n #_06AFCB: LDA.b #$02\n #_06AFCD: STA.b $1D\n\n #_06AFCF: LDA.b #$30\n #_06AFD1: STA.b $9A\n\n #_06AFD3: LDA.b #$00\n #_06AFD5: STA.l $7EC007\n #_06AFD9: STA.l $7EC009\n\n #_06AFDD: PHX\n #_06AFDE: JSL Palette_AssertTranslucencySwap\n #_06AFE2: PLX\n\n #_06AFE3: INC.w $0D80,X\n\n #_06AFE6: LDA.b #$80 ; SFX1.80 - fade\n #_06AFE8: STA.w $012D\n\n #_06AFEB: LDA.b #$33 ; SFX2.33\n #_06AFED: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n #_06AFF1: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_PhaseOut", + "code": "FluteKid_PhaseOut:\n #_06AFF2: LDA.b $1A\n #_06AFF4: AND.b #$0F\n #_06AFF6: BNE .exit\n\n #_06AFF8: PHX\n #_06AFF9: JSL PaletteFilter_SP5F\n #_06AFFD: PLX\n\n #_06AFFE: LDA.l $7EC007\n #_06B002: BNE .exit\n\n #_06B004: INC.w $0D80,X\n\n.exit\n #_06B007: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_HeDisappeared", + "code": "FluteKid_HeDisappeared:\n #_06B008: PHX\n\n #_06B009: JSL PaletteFilter_RestoreSP5F\n #_06B00D: JSL Palette_RevertTranslucencySwap\n\n #_06B011: PLX\n\n #_06B012: STZ.w $0DD0,X\n #_06B015: STZ.w $02E4\n\n #_06B018: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpify_anim_step", + "code": "Stumpify_anim_step:\n #_06B019: db $01, $01, $01, $01\n #_06B01D: db $02, $01, $02, $01\n #_06B021: db $02, $01, $02, $03\n #_06B025: db $02, $03, $02, $03\n #_06B029: db $02, $03, $02, $FF\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "StumpifyTimer", + "code": "StumpifyTimer:\n #_06B02D: db $FF, $FF, $FF, 16\n #_06B031: db 2, 12, 6, 8\n #_06B035: db 10, 4, 14, 2\n #_06B039: db 10, 6, 6, 10\n #_06B03D: db 2, 14, 2\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_Stumpy", + "code": "FluteKid_Stumpy:\n #_06B040: JSL SpriteDraw_Stumpy\n #_06B044: JSR Sprite_CheckIfActive_Bank06\n\n #_06B047: LDA.w $0D80,X\n #_06B04A: JSL JumpTableLocal\n #_06B04E: dw Stumpy_Initialize\n #_06B050: dw Stumpy_WaitForConvo\n #_06B052: dw Stumpy_GiveShovel\n #_06B054: dw Stumpy_WaitForMusic\n #_06B056: dw Stumpy_BecomeTree\n #_06B058: dw Stumpy_AmTree\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_Initialize", + "code": "Stumpy_Initialize:\n #_06B05A: LDA.l $7EF34C\n #_06B05E: AND.b #$03\n #_06B060: JSL JumpTableLocal\n #_06B064: dw Stumpy_Supplicate\n #_06B066: dw Stumpy_GetMeMyDamnFlute\n #_06B068: dw Stumpy_ThanksButYouKeepIt\n #_06B06A: dw Stumpy_SorryButAmTree\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_Supplicate", + "code": "Stumpy_Supplicate:\n #_06B06C: LDA.b #$E5 ; MESSAGE 00E5\n #_06B06E: LDY.b #$00\n #_06B070: JSL Sprite_ShowSolicitedMessage\n #_06B074: BCC .exit\n\n #_06B076: INC.w $0D80,X\n\n.exit\n #_06B079: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_GetMeMyDamnFlute", + "code": "Stumpy_GetMeMyDamnFlute:\n #_06B07A: LDA.b #$E8 ; MESSAGE 00E8\n #_06B07C: LDY.b #$00\n #_06B07E: JSL Sprite_ShowSolicitedMessage\n\n #_06B082: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_ThanksButYouKeepIt", + "code": "Stumpy_ThanksButYouKeepIt:\n #_06B083: LDA.b #$01\n #_06B085: STA.w $0DC0,X\n\n #_06B088: LDA.b #$E9 ; MESSAGE 00E9\n #_06B08A: LDY.b #$00\n #_06B08C: JSL Sprite_ShowSolicitedMessage\n #_06B090: BCC .exit\n\n #_06B092: LDA.b #$03\n #_06B094: STA.w $0D80,X\n\n.exit\n #_06B097: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_SorryButAmTree", + "code": "Stumpy_SorryButAmTree:\n #_06B098: LDA.b #$03\n #_06B09A: STA.w $0DC0,X\n\n #_06B09D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_WaitForConvo", + "code": "Stumpy_WaitForConvo:\n #_06B09E: LDA.w $1CE8\n #_06B0A1: BNE .rejected\n\n #_06B0A3: LDA.b #$E6 ; MESSAGE 00E6\n #_06B0A5: LDY.b #$00\n #_06B0A7: JSL Sprite_ShowMessageUnconditional\n\n #_06B0AB: INC.w $0D80,X\n\n #_06B0AE: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_GiveShovel", + "code": "Stumpy_GiveShovel:\n #_06B0BB: STZ.w $02E9\n\n #_06B0BE: LDY.b #$13 ; ITEMGET 13\n\n #_06B0C0: PHX\n\n #_06B0C1: JSL Link_ReceiveItem\n\n #_06B0C5: PLX\n\n #_06B0C6: STZ.w $0D80,X\n\n #_06B0C9: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_WaitForMusic", + "code": "Stumpy_WaitForMusic:\n #_06B0CA: LDA.w $0202\n #_06B0CD: CMP.b #$0D\n #_06B0CF: BNE .exit\n\n #_06B0D1: BIT.b $F0\n #_06B0D3: BVC .exit\n\n #_06B0D5: INC.w $0D80,X\n\n #_06B0D8: LDA.b #$F2 ; SONG F2 - half volume\n #_06B0DA: STA.w $012C\n\n #_06B0DD: STZ.w $012E\n\n #_06B0E0: LDA.b #$17 ; SFX1.17\n #_06B0E2: STA.w $012D\n\n #_06B0E5: INC.w $02E4\n\n.exit\n #_06B0E8: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_BecomeTree", + "code": "Stumpy_BecomeTree:\n #_06B0E9: LDA.w $0DF0,X\n #_06B0EC: BNE .exit\n\n #_06B0EE: LDA.w $0D90,X\n #_06B0F1: CMP.b #$03\n #_06B0F3: BCC .skip_sfx\n\n #_06B0F5: LDA.b #$33 ; SFX2.33\n #_06B0F7: JSL SpriteSFX_QueueSFX2WithPan\n\n.skip_sfx\n #_06B0FB: LDA.w $0D90,X\n #_06B0FE: TAY\n\n #_06B0FF: INC A\n #_06B100: STA.w $0D90,X\n\n #_06B103: LDA.w Stumpify_anim_step,Y\n #_06B106: BMI .turn_it_up_to_11\n\n #_06B108: STA.w $0DC0,X\n\n #_06B10B: LDA.w StumpifyTimer,Y\n #_06B10E: STA.w $0DF0,X\n\n.exit\n #_06B111: RTS", + "file": "bank_06.asm" + }, + { + "name": "Stumpy_AmTree", + "code": "Stumpy_AmTree:\n #_06B11E: LDA.b #$03\n #_06B120: STA.w $0DC0,X\n\n #_06B123: LDA.l $7EF3C9\n #_06B127: ORA.b #$08\n #_06B129: STA.l $7EF3C9\n\n #_06B12D: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_CheckIfInRange", + "code": "FluteKid_CheckIfInRange:\n #_06B12E: LDA.w $0D10,X\n #_06B131: STA.b $00\n\n #_06B133: LDA.w $0D30,X\n #_06B136: STA.b $01\n\n #_06B138: LDA.w $0D00,X\n #_06B13B: STA.b $02\n\n #_06B13D: LDA.w $0D20,X\n #_06B140: STA.b $03\n\n #_06B142: REP #$30\n\n #_06B144: LDA.b $02\n #_06B146: SEC\n #_06B147: SBC.w #$0010\n #_06B14A: STA.b $02\n\n #_06B14C: LDA.b $22\n #_06B14E: SBC.b $00\n #_06B150: BPL .positive_x\n\n #_06B152: EOR.w #$FFFF\n\n.positive_x\n #_06B155: STA.b $00\n\n #_06B157: LDA.b $20\n #_06B159: SBC.b $02\n #_06B15B: BPL .positive_y\n\n #_06B15D: EOR.w #$FFFF\n\n.positive_y\n #_06B160: STA.b $02\n\n #_06B162: LDA.b $00\n #_06B164: CMP.w #$0030\n #_06B167: BCS .exit\n\n #_06B169: LDA.b $02\n #_06B16B: CMP.w #$0030\n\n.exit\n #_06B16E: SEP #$30\n\n #_06B170: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_Quaver", + "code": "FluteKid_Quaver:\n #_06B173: JSR SpriteDraw_SingleSmall\n #_06B176: JSR Sprite_CheckIfActive_Bank06\n #_06B179: JSR Sprite_Move_XY_Bank06\n #_06B17C: JSR Sprite_Move_Z_Bank06\n\n #_06B17F: LDA.w $0DF0,X\n #_06B182: BNE .tenuto\n\n #_06B184: STZ.w $0DD0,X\n\n.tenuto\n #_06B187: LDA.b $1A\n #_06B189: AND.b #$01\n #_06B18B: BNE .exit\n\n #_06B18D: LDA.b $1A\n\n #_06B18F: LSR A\n #_06B190: LSR A\n #_06B191: LSR A\n #_06B192: LSR A\n #_06B193: LSR A\n\n #_06B194: EOR.w $0FA0\n #_06B197: AND.b #$01\n #_06B199: TAY\n\n #_06B19A: LDA.w $0D50,X\n #_06B19D: CLC\n #_06B19E: ADC.w .speed_x,Y\n #_06B1A1: STA.w $0D50,X\n\n.exit\n #_06B1A4: RTS", + "file": "bank_06.asm" + }, + { + "name": "FluteKid_SpawnQuaver", + "code": "FluteKid_SpawnQuaver:\n #_06B1A5: LDA.b #$2E ; SPRITE 2E\n #_06B1A7: JSL Sprite_SpawnDynamically\n #_06B1AB: BMI .no_space\n\n #_06B1AD: LDA.b $00\n #_06B1AF: CLC\n #_06B1B0: ADC.b #$04\n #_06B1B2: STA.w $0D10,Y\n\n #_06B1B5: LDA.b $01\n #_06B1B7: ADC.b #$00\n #_06B1B9: STA.w $0D30,Y\n\n #_06B1BC: LDA.b $02\n #_06B1BE: SEC\n #_06B1BF: SBC.b #$04\n #_06B1C1: STA.w $0D00,Y\n\n #_06B1C4: LDA.b $03\n #_06B1C6: SBC.b #$00\n #_06B1C8: STA.w $0D20,Y\n\n #_06B1CB: LDA.b #$01\n #_06B1CD: STA.w $0EB0,Y\n\n #_06B1D0: LDA.b #$08\n #_06B1D2: STA.w $0F80,Y\n\n #_06B1D5: LDA.b #$60\n #_06B1D7: STA.w $0DF0,Y\n #_06B1DA: STA.w $0BA0,Y\n\n.no_space\n #_06B1DD: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_anim_step", + "code": "Smithy_anim_step:\n #_06B1DE: db $00, $01, $02, $03\n #_06B1E2: db $03, $02, $01, $00\n", + "file": "bank_06.asm" + }, + { + "name": "SmithyAnimTimer", + "code": "SmithyAnimTimer:\n #_06B1E6: db 24, 4, 1, 16\n #_06B1EA: db 16, 5, 10, 16\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1A_Smithy", + "code": "Sprite_1A_Smithy:\n #_06B1EE: LDA.w $0E80,X\n #_06B1F1: JSL JumpTableLocal\n #_06B1F5: dw Smithy_Main\n #_06B1F7: dw Smithy_Spark\n #_06B1F9: dw Smithy_Frog\n #_06B1FB: dw Smithy_Homecoming\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Homecoming", + "code": "Smithy_Homecoming:\n #_06B1FD: JSR SpriteDraw_Smithy_Homecoming\n #_06B200: JSR Sprite_CheckIfActive_Bank06\n\n #_06B203: LDA.w $0D80,X\n #_06B206: JSL JumpTableLocal\n #_06B20A: dw Smithy_Homecoming_Walk\n #_06B20C: dw Smithy_Homecoming_TYVM\n\n; =========================================================\n\npool Smithy_Homecoming_Walk\n\n.timer\n #_06B20E: db 104, 12\n\n.direction\n #_06B210: db $00, $02, $FF\n\n.speed_x\n #_06B213: db 0, 0, -13, 13\n\n.speed_y\n #_06B217: db -13, 13, 0, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Homecoming_Walk", + "code": "Smithy_Homecoming_Walk:\n #_06B21B: JSR Sprite_Move_XY_Bank06\n\n #_06B21E: LDA.b $1A\n\n #_06B220: LSR A\n #_06B221: LSR A\n #_06B222: LSR A\n\n #_06B223: AND.b #$01\n #_06B225: STA.w $0DC0,X\n\n #_06B228: LDA.w $0DF0,X\n #_06B22B: BNE .exit\n\n #_06B22D: LDA.w $0D90,X\n #_06B230: TAY\n\n #_06B231: INC A\n #_06B232: STA.w $0D90,X\n\n #_06B235: LDA.w .timer,Y\n #_06B238: STA.w $0DF0,X\n\n #_06B23B: LDA.w .direction,Y\n #_06B23E: BMI .next_state\n\n #_06B240: STA.w $0DE0,X\n\n #_06B243: TAY\n\n #_06B244: LDA.w .speed_x,Y\n #_06B247: STA.w $0D50,X\n\n #_06B24A: LDA.w .speed_y,Y\n #_06B24D: STA.w $0D40,X\n\n.exit\n #_06B250: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Homecoming_TYVM", + "code": "Smithy_Homecoming_TYVM:\n #_06B255: JSL Sprite_BehaveAsBarrier\n\n #_06B259: LDA.b #$E3 ; MESSAGE 00E3\n #_06B25B: LDY.b #$00\n #_06B25D: JSL Sprite_ShowSolicitedMessage\n\n #_06B261: STZ.w $02E4\n\n #_06B264: LDA.b #$01\n #_06B266: STA.w $0DE0,X\n\n #_06B269: LDA.l $7EF3C9\n #_06B26D: ORA.b #$20\n #_06B26F: STA.l $7EF3C9\n\n #_06B273: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Frog", + "code": "Smithy_Frog:\n #_06B274: JSR SpriteDraw_Smithy_Frog\n #_06B277: JSR Sprite_CheckIfActive_Bank06\n #_06B27A: JSL Sprite_BehaveAsBarrier\n\n #_06B27E: DEC.w $0F80,X\n #_06B281: DEC.w $0F80,X\n\n #_06B284: JSR Sprite_Move_Z_Bank06\n\n #_06B287: LDA.w $0F70,X\n #_06B28A: BPL .him_hop\n\n #_06B28C: STZ.w $0F70,X\n\n #_06B28F: LDA.b #$10\n #_06B291: STA.w $0F80,X\n\n.him_hop\n #_06B294: LDA.w $0D80,X\n #_06B297: BNE .follow_link\n\n #_06B299: LDA.b #$01\n #_06B29B: STA.w $0DE0,X\n\n #_06B29E: LDA.b #$E1 ; MESSAGE 00E1\n #_06B2A0: LDY.b #$00\n #_06B2A2: JSL Sprite_ShowSolicitedMessage\n #_06B2A6: BCC .ignored_WOW\n\n #_06B2A8: INC.w $0D80,X\n\n.ignored_WOW\n #_06B2AB: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Smithy_Homecoming", + "code": "SpriteDraw_Smithy_Homecoming:\n #_06B308: LDA.b #$01\n #_06B30A: STA.b $06\n #_06B30C: STZ.b $07\n\n #_06B30E: LDA.w $0DE0,X\n #_06B311: ASL A\n #_06B312: ADC.w $0DC0,X\n #_06B315: TAY\n\n #_06B316: LDA.w .char_offset,Y\n #_06B319: STA.w $0AEA\n\n #_06B31C: TYA\n #_06B31D: ASL A\n #_06B31E: ASL A\n #_06B31F: ASL A\n #_06B320: ADC.b #.oam_groups>>0\n #_06B322: STA.b $08\n\n #_06B324: LDA.b #.oam_groups>>8\n #_06B326: ADC.b #$00\n #_06B328: STA.b $09\n\n #_06B32A: JSL SpriteDraw_Tabulated_player_deferred\n\n #_06B32E: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n\npool SpriteDraw_Smithy_Frog\n\n.oam_groups\n #_06B331: dw 0, 0 : db $C8, $00, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Smithy_Frog", + "code": "SpriteDraw_Smithy_Frog:\n #_06B339: LDA.b #$01\n #_06B33B: STA.b $06\n #_06B33D: STZ.b $07\n\n #_06B33F: LDA.b #.oam_groups>>0\n #_06B341: STA.b $08\n\n #_06B343: LDA.b #.oam_groups>>8\n #_06B345: STA.b $09\n\n #_06B347: JSL SpriteDraw_Tabulated_player_deferred\n\n #_06B34B: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Main", + "code": "Smithy_Main:\n #_06B34E: JSR SpriteDraw_Smithy\n\n #_06B351: DEC.w $0F80,X\n #_06B354: DEC.w $0F80,X\n\n #_06B357: JSR Sprite_Move_Z_Bank06\n\n #_06B35A: LDA.w $0F70,X\n #_06B35D: BPL .hopping\n\n #_06B35F: STZ.w $0F70,X\n #_06B362: STZ.w $0F80,X\n\n.hopping\n #_06B365: JSR Sprite_CheckIfActive_Bank06\n\n #_06B368: LDY.w $0E90,X\n\n #_06B36B: LDA.w $0D80,Y\n #_06B36E: CMP.b #$05\n #_06B370: BEQ .tick_timer\n\n #_06B372: CMP.b #$07\n #_06B374: BEQ .tick_timer\n\n #_06B376: CMP.b #$09\n #_06B378: BEQ .tick_timer\n\n #_06B37A: ORA.w $0D80,X\n #_06B37D: BEQ .tick_timer\n\n #_06B37F: LDA.w $0D80,X\n #_06B382: CMP.b #$05\n #_06B384: BEQ .tick_timer\n\n #_06B386: CMP.b #$07\n #_06B388: BEQ .tick_timer\n\n #_06B38A: CMP.b #$09\n #_06B38C: BNE .perform_ai\n\n; ---------------------------------------------------------\n\n.tick_timer\n #_06B38E: LDA.w $0DA0,X\n\n #_06B391: DEC.w $0DA0,X\n\n #_06B394: CMP.b #$00\n #_06B396: BNE .perform_ai\n\n #_06B398: LDA.w $0D90,X\n #_06B39B: TAY\n\n #_06B39C: INC A\n #_06B39D: AND.b #$07\n #_06B39F: STA.w $0D90,X\n\n #_06B3A2: LDA.w Smithy_anim_step,Y\n #_06B3A5: STA.w $0DC0,X\n\n #_06B3A8: LDA.w SmithyAnimTimer,Y\n #_06B3AB: STA.w $0DA0,X\n\n #_06B3AE: CPY.b #$01\n #_06B3B0: BNE .no_hop_for_him\n\n #_06B3B2: LDA.b #$10\n #_06B3B4: STA.w $0F80,X\n\n.no_hop_for_him\n #_06B3B7: CPY.b #$03\n #_06B3B9: BNE .perform_ai\n\n #_06B3BB: JSR Smithy_SpawnSpark\n\n #_06B3BE: LDA.b #$05 ; SFX2.05\n #_06B3C0: JSL SpriteSFX_QueueSFX2WithPan\n\n; ---------------------------------------------------------\n\n.perform_ai\n #_06B3C4: LDA.w $0D80,X\n #_06B3C7: JSL JumpTableLocal\n #_06B3CB: dw Smithy_Smithing\n #_06B3CD: dw Smithy_WannaTemper\n #_06B3CF: dw Smithy_ForRealsies\n #_06B3D1: dw Smithy_ItAintFreeKid\n #_06B3D3: dw Smithy_TemperInProgress\n #_06B3D5: dw Smithy_TemperInProgress\n #_06B3D7: dw Smithy_GiveTemperedSword\n #_06B3D9: dw Smithy_Nothing\n #_06B3DB: dw Smithy_Nothing\n #_06B3DD: dw Smithy_Nothing\n #_06B3DF: dw Smithy_SpawnFriend\n #_06B3E1: dw Smithy_Thanks\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Smithing", + "code": "Smithy_Smithing:\n #_06B3E3: STZ.w $0DB0,X\n\n #_06B3E6: LDA.l $7EF3CC\n #_06B3EA: CMP.b #$08 ; FOLLOWER 08\n #_06B3EC: BEQ .smithy_follower\n\n #_06B3EE: JSR Smithy_ListenForHammer\n #_06B3F1: BCC .link_not_helping_out\n\n #_06B3F3: LDA.b #$E4 ; MESSAGE 00E4\n #_06B3F5: LDY.b #$00\n #_06B3F7: JSL Sprite_ShowMessageUnconditional\n\n #_06B3FB: LDA.b #$60\n #_06B3FD: STA.w $0E00,X\n\n #_06B400: INC.w $0DB0,X\n\n #_06B403: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_ListenForHammer", + "code": "Smithy_ListenForHammer:\n #_06B43D: LDA.w $0E00,X\n #_06B440: BNE .no_hammer\n\n #_06B442: LDA.w $0202\n #_06B445: CMP.b #$0C\n #_06B447: BNE .no_hammer\n\n #_06B449: LDA.w $0301\n #_06B44C: AND.b #$02\n #_06B44E: BEQ .no_hammer\n\n #_06B450: LDA.w $0300\n #_06B453: CMP.b #$02\n #_06B455: BNE .no_hammer\n\n #_06B457: JSR Sprite_CheckDamageToLink_same_layer\n #_06B45A: BCC .no_hammer\n\n #_06B45C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_WannaTemper", + "code": "Smithy_WannaTemper:\n #_06B45F: LDA.w $1CE8\n #_06B462: BNE .didnt_make_the_sale\n\n #_06B464: LDA.b #$D9 ; MESSAGE 00D9\n #_06B466: LDY.b #$00\n #_06B468: JSL Sprite_ShowMessageUnconditional\n\n #_06B46C: INC.w $0D80,X\n\n #_06B46F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_ForRealsies", + "code": "Smithy_ForRealsies:\n #_06B47C: LDA.w $1CE8\n #_06B47F: BNE .didnt_make_the_sale\n\n #_06B481: LDA.l $7EF359\n #_06B485: CMP.b #$03\n #_06B487: BCS .sword_too_good_already\n\n #_06B489: LDA.b #$DA ; MESSAGE 00DA\n #_06B48B: LDY.b #$00\n #_06B48D: JSL Sprite_ShowMessageUnconditional\n\n #_06B491: INC.w $0D80,X\n\n #_06B494: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_ItAintFreeKid", + "code": "Smithy_ItAintFreeKid:\n #_06B4AD: LDA.w $1CE8\n #_06B4B0: BEQ .made_the_sale\n\n #_06B4B2: LDA.b #$DC ; MESSAGE 00DC\n #_06B4B4: LDY.b #$00\n\n #_06B4B6: JSL Sprite_ShowMessageUnconditional\n #_06B4BA: STZ.w $0D80,X\n\n #_06B4BD: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_TemperInProgress", + "code": "Smithy_TemperInProgress:\n #_06B50E: STZ.w $0DB0,X\n\n #_06B511: JSR Smithy_ListenForHammer\n #_06B514: BCC .link_isnt_helping\n\n #_06B516: LDA.b #$E4 ; MESSAGE 00E4\n #_06B518: LDY.b #$00\n #_06B51A: JSL Sprite_ShowMessageUnconditional\n\n #_06B51E: LDA.b #$60\n #_06B520: STA.w $0E00,X\n\n #_06B523: INC.w $0DB0,X\n\n #_06B526: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_GiveTemperedSword", + "code": "Smithy_GiveTemperedSword:\n #_06B548: LDY.w $0E90,X\n\n #_06B54B: LDA.b #$00\n #_06B54D: STA.w $0D80,X\n #_06B550: STA.w $0D80,Y\n\n #_06B553: LDY.b #$02 ; ITEMGET 02\n\n #_06B555: STZ.w $02E9\n\n #_06B558: PHX\n #_06B559: JSL Link_ReceiveItem\n #_06B55D: PLX\n\n #_06B55E: LDA.l $7EF3C9\n #_06B562: AND.b #$7F\n #_06B564: STA.l $7EF3C9\n\n #_06B568: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Nothing", + "code": "Smithy_Nothing:\n #_06B569: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_SpawnFriend", + "code": "Smithy_SpawnFriend:\n #_06B56A: LDA.b #$1A ; SPRITE 1A\n #_06B56C: JSL Sprite_SpawnDynamically\n #_06B570: BMI .no_friend_in_me\n\n #_06B572: LDA.b $22\n #_06B574: STA.w $0D10,Y\n\n #_06B577: LDA.b $23\n #_06B579: STA.w $0D30,Y\n\n #_06B57C: LDA.b $20\n #_06B57E: STA.w $0D00,Y\n\n #_06B581: LDA.b $21\n #_06B583: STA.w $0D20,Y\n\n #_06B586: LDA.b #$03\n #_06B588: STA.w $0E80,Y\n #_06B58B: STA.w $0BA0,Y\n\n.no_friend_in_me\n #_06B58E: INC.w $0D80,X\n\n #_06B591: LDA.b #$00\n #_06B593: STA.l $7EF3CC\n\n #_06B597: LDA.b #$04\n #_06B599: STA.w $0DC0,X\n\n #_06B59C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Thanks", + "code": "Smithy_Thanks:\n #_06B59D: LDA.b #$E3 ; MESSAGE 00E3\n #_06B59F: LDY.b #$00\n #_06B5A1: JSL Sprite_ShowSolicitedMessage\n\n #_06B5A5: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_SpawnDwarfPal", + "code": "Smithy_SpawnDwarfPal:\n #_06B5A6: LDA.b #$1A ; SPRITE 1A\n #_06B5A8: JSL Sprite_SpawnDynamically\n #_06B5AC: BMI .no_space\n\n #_06B5AE: LDA.b $00\n #_06B5B0: CLC\n #_06B5B1: ADC.b #$2C\n #_06B5B3: STA.w $0D10,Y\n\n #_06B5B6: LDA.b $01\n #_06B5B8: STA.w $0D30,Y\n\n #_06B5BB: LDA.b $02\n #_06B5BD: STA.w $0D00,Y\n\n #_06B5C0: LDA.b $03\n #_06B5C2: STA.w $0D20,Y\n\n #_06B5C5: LDA.b #$01\n #_06B5C7: STA.w $0DE0,Y\n\n #_06B5CA: LDA.b #$04\n #_06B5CC: STA.w $0D90,Y\n #_06B5CF: STA.w $0BA0,Y\n\n.no_space\n #_06B5D2: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Smithy", + "code": "SpriteDraw_Smithy:\n #_06B673: LDA.b #$02\n #_06B675: STA.b $06\n #_06B677: STZ.b $07\n\n #_06B679: LDA.w $0DC0,X\n #_06B67C: ASL A\n #_06B67D: ADC.w $0DE0,X\n\n #_06B680: ASL A\n #_06B681: ASL A\n #_06B682: ASL A\n #_06B683: ASL A\n\n #_06B684: ADC.b #.oam_groups>>0\n #_06B686: STA.b $08\n\n #_06B688: LDA.b #.oam_groups>>8\n #_06B68A: ADC.b #$00\n #_06B68C: STA.b $09\n\n #_06B68E: JSL SpriteDraw_Tabulated_player_deferred\n #_06B692: JSR SpriteDraw_Shadow\n\n #_06B695: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_Spark", + "code": "Smithy_Spark:\n #_06B6A3: JSR SpriteDraw_Smithy_Spark\n #_06B6A6: JSR Sprite_CheckIfActive_Bank06\n\n #_06B6A9: LDA.w $0DF0,X\n #_06B6AC: BNE .exit\n\n #_06B6AE: LDA.w $0D90,X\n #_06B6B1: TAY\n\n #_06B6B2: INC A\n #_06B6B3: AND.b #$07\n #_06B6B5: STA.w $0D90,X\n\n #_06B6B8: LDA.w .anim,Y\n #_06B6BB: BMI .terminate\n\n #_06B6BD: STA.w $0DC0,X\n\n #_06B6C0: LDA.w .timer,Y\n #_06B6C3: STA.w $0DF0,X\n\n.exit\n #_06B6C6: RTS", + "file": "bank_06.asm" + }, + { + "name": "Smithy_SpawnSpark", + "code": "Smithy_SpawnSpark:\n #_06B6CD: LDA.b #$1A ; SPRITE 1A\n\n #_06B6CF: JSL Sprite_SpawnDynamically\n #_06B6D3: BMI .no_space\n\n #_06B6D5: PHX\n\n #_06B6D6: LDA.w $0DE0,X\n #_06B6D9: TAX\n\n #_06B6DA: LDA.b $00\n #_06B6DC: CLC\n #_06B6DD: ADC.w .offset_x,X\n #_06B6E0: STA.w $0D10,Y\n\n #_06B6E3: LDA.b $01\n #_06B6E5: STA.w $0D30,Y\n\n #_06B6E8: LDA.b $02\n #_06B6EA: CLC\n #_06B6EB: ADC.b #$02\n #_06B6ED: STA.w $0D00,Y\n\n #_06B6F0: LDA.b $03\n #_06B6F2: STA.w $0D20,Y\n\n #_06B6F5: LDA.b #$01\n #_06B6F7: STA.w $0E80,Y\n\n #_06B6FA: PLX\n\n.no_space\n #_06B6FB: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Smithy_Spark", + "code": "SpriteDraw_Smithy_Spark:\n #_06B72C: LDA.b #$08\n #_06B72E: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_06B732: LDA.w $0DC0,X\n\n #_06B735: ASL A\n #_06B736: ASL A\n #_06B737: ASL A\n #_06B738: ASL A\n\n #_06B739: ADC.b #.oam_groups>>0\n #_06B73B: STA.b $08\n\n #_06B73D: LDA.b #.oam_groups>>8\n #_06B73F: ADC.b #$00\n #_06B741: STA.b $09\n\n #_06B743: LDA.b #$02\n #_06B745: JSL SpriteDraw_Tabulated\n\n #_06B749: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1B_Arrow", + "code": "Sprite_1B_Arrow:\n #_06B754: JSR SpriteDraw_Arrow\n #_06B757: JSR Sprite_CheckIfActivePermissive_Bank06\n\n #_06B75A: LDA.w $0DD0,X\n #_06B75D: CMP.b #$09\n #_06B75F: BNE SpriteArrow_KnockedAway\n\n #_06B761: LDA.w $0DF0,X\n #_06B764: BEQ SpriteArrow_InFlight\n\n #_06B766: DEC A\n #_06B767: BNE .live\n\n #_06B769: STZ.w $0DD0,X\n\n #_06B76C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteArrow_InFlight", + "code": "SpriteArrow_InFlight:\n #_06B78E: JSR Sprite_CheckDamageToLink_same_layer\n #_06B791: LDA.w $0E90,X\n #_06B794: BNE .continue\n\n #_06B796: JSR Sprite_CheckTileCollision\n #_06B799: LDA.w $0E70,X\n #_06B79C: BEQ .continue\n\n #_06B79E: LDY.w $0D90,X\n #_06B7A1: BEQ .dont_break\n\n #_06B7A3: JSL SpriteArrow_Break\n\n #_06B7A7: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteArrow_KnockedAway", + "code": "SpriteArrow_KnockedAway:\n #_06B7C7: LDA.w $0D80,X\n #_06B7CA: BNE .prepped\n\n #_06B7CC: JSR Sprite_ApplyRicochet\n\n #_06B7CF: LDA.b #$18\n #_06B7D1: STA.w $0F80,X\n\n #_06B7D4: LDA.b #$FF\n #_06B7D6: STA.w $0DF0,X\n\n #_06B7D9: INC.w $0D80,X\n\n #_06B7DC: STZ.w $0EF0,X\n\n; ---------------------------------------------------------\n\n.prepped\n #_06B7DF: LDA.w $0DF0,X\n #_06B7E2: LSR A\n #_06B7E3: LSR A\n #_06B7E4: LSR A\n #_06B7E5: AND.b #$03\n #_06B7E7: TAY\n\n #_06B7E8: LDA.w .direction,Y\n #_06B7EB: STA.w $0DE0,X\n\n #_06B7EE: JSR Sprite_Move_Z_Bank06\n #_06B7F1: JSR Sprite_Move_XY_Bank06\n\n #_06B7F4: LDA.w $0F80,X\n #_06B7F7: SEC\n #_06B7F8: SBC.b #$02\n #_06B7FA: STA.w $0F80,X\n\n #_06B7FD: LDA.w $0F70,X\n #_06B800: BPL .exit\n\n #_06B802: STZ.w $0DD0,X\n\n.exit\n #_06B805: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06B806", + "code": "UNREACHABLE_06B806:\n #_06B806: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Arrow", + "code": "SpriteDraw_Arrow:\n #_06B867: JSR Sprite_PrepOAMCoord\n\n #_06B86A: LDA.w $0DE0,X\n #_06B86D: ASL A\n #_06B86E: STA.b $06\n\n #_06B870: LDA.w $0D90,X\n #_06B873: ASL A\n #_06B874: ASL A\n #_06B875: ASL A\n #_06B876: STA.b $07\n\n #_06B878: PHX\n\n #_06B879: LDX.b #$01\n\n.next_object\n #_06B87B: PHX\n\n #_06B87C: TXA\n #_06B87D: CLC\n #_06B87E: ADC.b $06\n #_06B880: PHA\n\n #_06B881: ASL A\n #_06B882: TAX\n\n #_06B883: REP #$20\n\n #_06B885: LDA.b $00\n #_06B887: CLC\n #_06B888: ADC.w .offset_x,X\n #_06B88B: STA.b ($90),Y\n\n #_06B88D: AND.w #$0100\n #_06B890: STA.b $0E\n\n #_06B892: LDA.b $02\n #_06B894: CLC\n #_06B895: ADC.w .offset_y,X\n\n #_06B898: INY\n #_06B899: STA.b ($90),Y\n\n #_06B89B: CLC\n #_06B89C: ADC.w #$0010\n #_06B89F: CMP.w #$0100\n\n #_06B8A2: SEP #$20\n #_06B8A4: BCC .on_screen\n\n #_06B8A6: LDA.b #$F0\n #_06B8A8: STA.b ($90),Y\n\n.on_screen\n #_06B8AA: PLA\n #_06B8AB: CLC\n #_06B8AC: ADC.b $07\n #_06B8AE: TAX\n\n #_06B8AF: LDA.w .char,X\n #_06B8B2: INY\n #_06B8B3: STA.b ($90),Y\n\n #_06B8B5: LDA.w .prop,X\n #_06B8B8: ORA.b $05\n #_06B8BA: INY\n #_06B8BB: STA.b ($90),Y\n\n #_06B8BD: PHY\n\n #_06B8BE: TYA\n #_06B8BF: LSR A\n #_06B8C0: LSR A\n #_06B8C1: TAY\n\n #_06B8C2: LDA.b $0F\n #_06B8C4: STA.b ($92),Y\n\n #_06B8C6: PLY\n #_06B8C7: INY\n\n #_06B8C8: PLX\n #_06B8C9: DEX\n #_06B8CA: BPL .next_object\n\n #_06B8CC: PLX\n\n #_06B8CD: RTS", + "file": "bank_06.asm" + }, + { + "name": "CrystalSwitch_Palette", + "code": "CrystalSwitch_Palette:\n #_06B8CE: db $02, $04\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1E_CrystalSwitch", + "code": "Sprite_1E_CrystalSwitch:\n #_06B8D0: LDA.w $0F50,X\n #_06B8D3: AND.b #$F1\n #_06B8D5: STA.w $0F50,X\n\n #_06B8D8: LDA.l $7EC172\n #_06B8DC: AND.b #$01\n #_06B8DE: TAY\n\n #_06B8DF: LDA.w CrystalSwitch_Palette,Y\n #_06B8E2: ORA.w $0F50,X\n #_06B8E5: STA.w $0F50,X\n\n #_06B8E8: JSR SpriteDraw_AllocateOAMDeferToPlayer\n #_06B8EB: JSR SpriteDraw_SingleLarge\n\n #_06B8EE: JSR Sprite_CheckIfActive_Bank06\n #_06B8F1: JSR Sprite_CheckDamageToLink_same_layer\n #_06B8F4: BCC .not_touching\n\n #_06B8F6: JSL Sprite_CancelHookshot\n\n #_06B8FA: STZ.b $5E\n\n #_06B8FC: JSL Sprite_RepelDash_long\n\n.not_touching\n #_06B900: LDA.w $0DF0,X\n #_06B903: BNE .no_sparkle\n\n #_06B905: LDA.b $1A\n #_06B907: AND.b #$07\n #_06B909: STA.b $00\n #_06B90B: STZ.b $01\n\n #_06B90D: JSL GetRandomNumber\n #_06B911: AND.b #$07\n #_06B913: STA.b $02\n #_06B915: STZ.b $03\n\n #_06B917: JSL GarnishSpawn_Sparkle\n\n #_06B91B: LDA.b #$1F\n #_06B91D: STA.w $0DF0,X\n\n.no_sparkle\n #_06B920: LDA.w $0EA0,X\n #_06B923: BNE .transitioning\n\n #_06B925: LDA.b $3C\n #_06B927: DEC A\n #_06B928: CMP.b #$08\n #_06B92A: BPL .exit\n\n #_06B92C: JSR Sprite_CheckDamageFromLink\n\n.exit\n #_06B92F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1F_SickKid", + "code": "Sprite_1F_SickKid:\n #_06B94C: JSL SpriteDraw_SickKid\n #_06B950: JSR Sprite_CheckIfActive_Bank06\n\n #_06B953: LDA.w $0D80,X\n #_06B956: JSL JumpTableLocal\n #_06B95A: dw SickKid_ISleep\n #_06B95C: dw SickKid_RealShit\n #_06B95E: dw SickKid_NothingButNet\n #_06B960: dw SickKid_OutOfShaqMemes\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SickKid_ISleep", + "code": "SickKid_ISleep:\n #_06B962: JSL CheckIfLinkIsBusy\n #_06B966: BCS .zzzzzzzz\n\n #_06B968: JSR Sprite_CheckDamageToLink_same_layer\n #_06B96B: BCC .zzzzzzzz\n\n #_06B96D: LDA.l $7EF35C\n #_06B971: ORA.l $7EF35D\n #_06B975: ORA.l $7EF35E\n #_06B979: ORA.l $7EF35F\n #_06B97D: CMP.b #$02\n #_06B97F: BCC .wakeywakey\n\n #_06B981: INC.w $0D80,X\n #_06B984: INC.w $02E4\n\n.zzzzzzzz\n #_06B987: RTS", + "file": "bank_06.asm" + }, + { + "name": "SickKid_RealShit", + "code": "SickKid_RealShit:\n #_06B9A0: LDA.w $0DF0,X\n #_06B9A3: BNE .exit\n\n #_06B9A5: LDY.w $0D90,X\n\n #_06B9A8: LDA.w .anim_step,Y\n #_06B9AB: BMI .speak\n\n #_06B9AD: STA.w $0DC0,X\n\n #_06B9B0: LDA.w .timer,Y\n #_06B9B3: STA.w $0DF0,X\n\n #_06B9B6: INC.w $0D90,X\n\n.exit\n #_06B9B9: RTS", + "file": "bank_06.asm" + }, + { + "name": "SickKid_NothingButNet", + "code": "SickKid_NothingButNet:\n #_06B9C6: LDY.b #$21 ; ITEMGET 21\n #_06B9C8: STZ.w $02E9\n\n #_06B9CB: PHX\n\n #_06B9CC: JSL Link_ReceiveItem\n\n #_06B9D0: PLX\n\n #_06B9D1: INC.w $0D80,X\n\n #_06B9D4: STZ.w $02E4\n\n #_06B9D7: RTS", + "file": "bank_06.asm" + }, + { + "name": "SickKid_OutOfShaqMemes", + "code": "SickKid_OutOfShaqMemes:\n #_06B9D8: LDA.b #$01\n #_06B9DA: STA.w $0DC0,X\n\n #_06B9DD: LDA.b #$06 ; MESSAGE 0106\n #_06B9DF: LDY.b #$01\n #_06B9E1: JSL Sprite_ShowSolicitedMessage\n\n #_06B9E5: RTS", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_Timer", + "code": "WaterSwitch_Timer:\n #_06B9E6: db 40, 6, 3, 3\n #_06B9EA: db 3, 5, 1, 1\n #_06B9EE: db 3, 12\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_Position", + "code": "WaterSwitch_Position:\n #_06B9F0: db $00, $01, $02, $03\n #_06B9F4: db $04, $05, $05, $06\n #_06B9F8: db $07, $06\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_21_WaterSwitch", + "code": "Sprite_21_WaterSwitch:\n #_06B9FA: JSR WaterSwitch_Main\n #_06B9FD: JSR Sprite_CheckIfActive_Bank06\n\n #_06BA00: LDA.w $0D80,X\n #_06BA03: CMP.b #$02\n #_06BA05: BEQ .exit\n\n #_06BA07: JSL JumpTableLocal\n #_06BA0B: dw WaterSwitch_Untoggled\n #_06BA0D: dw WaterSwitch_ReleaseGate\n\n; ---------------------------------------------------------\n\n.exit\n #_06BA0F: RTS", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_Untoggled", + "code": "WaterSwitch_Untoggled:\n #_06BA10: LDA.w $0DB0,X\n #_06BA13: BEQ .reset_timer\n\n #_06BA15: DEC.w $0DA0,X\n\n #_06BA18: LDA.w $0DA0,X\n #_06BA1B: BNE .delay\n\n #_06BA1D: INC.w $0D80,X\n\n.delay\n #_06BA20: LDA.b $1A\n #_06BA22: AND.b #$03\n #_06BA24: BNE .exit\n\n #_06BA26: LDA.b #$22 ; SFX2.22\n #_06BA28: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n #_06BA2C: RTS", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_ReleaseGate", + "code": "WaterSwitch_ReleaseGate:\n #_06BA33: LDA.w $0DF0,X\n #_06BA36: BNE .exit\n\n #_06BA38: INC.w $0D90,X\n\n #_06BA3B: LDY.w $0D90,X\n #_06BA3E: CPY.b #$0A\n #_06BA40: BNE .delay_release\n\n #_06BA42: INC.w $0D80,X\n #_06BA45: INC.w $0642\n\n #_06BA48: LDA.b #$25 ; SFX3.25\n #_06BA4A: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06BA4E: RTS", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_OAMData", + "code": "WaterSwitch_OAMData:\n.step_0\n #_06BA62: db $04, $14, $DC, $20\n #_06BA66: db $04, $0C, $DD, $20\n #_06BA6A: db $04, $0C, $DD, $20\n #_06BA6E: db $04, $0C, $DD, $20\n #_06BA72: db $00, $00, $CA, $20\n\n.step_1\n #_06BA76: db $03, $0C, $DD, $20\n #_06BA7A: db $03, $14, $DC, $20\n #_06BA7E: db $03, $14, $DC, $20\n #_06BA82: db $03, $14, $DC, $20\n #_06BA86: db $00, $00, $CA, $20\n\n.step_2\n #_06BA8A: db $F8, $08, $EA, $20\n #_06BA8E: db $00, $08, $EB, $20\n #_06BA92: db $F8, $10, $FA, $20\n #_06BA96: db $00, $10, $FB, $20\n #_06BA9A: db $00, $00, $CA, $20\n\n.step_3\n #_06BA9E: db $F4, $04, $CC, $20\n #_06BAA2: db $FC, $04, $CD, $20\n #_06BAA6: db $FC, $04, $CD, $20\n #_06BAAA: db $FC, $04, $CD, $20\n #_06BAAE: db $00, $00, $CA, $20\n\n.step_4\n #_06BAB2: db $F6, $04, $CC, $20\n #_06BAB6: db $FC, $04, $CD, $20\n #_06BABA: db $FC, $04, $CD, $20\n #_06BABE: db $FC, $04, $CD, $20\n #_06BAC2: db $00, $00, $CA, $20\n\n.step_5\n #_06BAC6: db $F8, $04, $CC, $20\n #_06BACA: db $FC, $04, $CD, $20\n #_06BACE: db $FC, $04, $CD, $20\n #_06BAD2: db $FC, $04, $CD, $20\n #_06BAD6: db $00, $00, $CA, $20\n\n.step_6\n #_06BADA: db $04, $03, $E2, $20\n #_06BADE: db $FA, $04, $CC, $20\n #_06BAE2: db $FC, $04, $CD, $20\n #_06BAE6: db $FC, $04, $CD, $20\n #_06BAEA: db $00, $00, $CA, $20\n\n.step_7\n #_06BAEE: db $04, $03, $F1, $20\n #_06BAF2: db $FA, $04, $CC, $20\n #_06BAF6: db $FC, $04, $CD, $20\n #_06BAFA: db $FC, $04, $CD, $20\n #_06BAFE: db $00, $00, $CA, $20\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_HitBox", + "code": "WaterSwitch_HitBox:\n #_06BB02: db $08, $06\n #_06BB04: db $10, $10\n #_06BB06: db $10, $08\n #_06BB08: db $10, $08\n #_06BB0A: db $10, $08\n #_06BB0C: db $10, $08\n #_06BB0E: db $10, $03\n #_06BB10: db $10, $08\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_OAMDataPointer", + "code": "WaterSwitch_OAMDataPointer:\n #_06BB12: dw WaterSwitch_OAMData_step_0\n #_06BB14: dw WaterSwitch_OAMData_step_1\n #_06BB16: dw WaterSwitch_OAMData_step_2\n #_06BB18: dw WaterSwitch_OAMData_step_3\n #_06BB1A: dw WaterSwitch_OAMData_step_4\n #_06BB1C: dw WaterSwitch_OAMData_step_5\n #_06BB1E: dw WaterSwitch_OAMData_step_6\n #_06BB20: dw WaterSwitch_OAMData_step_7\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "WaterSwitch_Main", + "code": "WaterSwitch_Main:\n #_06BB22: JSR SpriteDraw_AllocateOAMDeferToPlayer\n #_06BB25: JSR Sprite_PrepOAMCoord\n\n #_06BB28: LDA.w $0F50,X\n\n #_06BB2B: LDY.w $0ABD\n #_06BB2E: BEQ .translucency_enabled\n\n #_06BB30: ORA.b #$0E\n #_06BB32: BRA .continue\n\n.translucency_enabled\n #_06BB34: AND.b #$F1\n\n; ---------------------------------------------------------\n\n.continue\n #_06BB36: STA.w $0F50,X\n #_06BB39: STA.b $02\n\n #_06BB3B: LDA.w $0DA0,X\n\n #_06BB3E: LSR A\n #_06BB3F: LSR A\n\n #_06BB40: AND.b #$03\n #_06BB42: STA.b $01\n\n #_06BB44: LDA.b #$00\n #_06BB46: XBA\n #_06BB47: LDA.w $0DE0,X\n #_06BB4A: ASL A\n\n #_06BB4B: PHX\n\n #_06BB4C: REP #$31\n\n #_06BB4E: PHB\n\n #_06BB4F: TAY\n\n #_06BB50: LDX.w WaterSwitch_OAMDataPointer,Y\n\n #_06BB53: LDA.b $90\n #_06BB55: ADC.w #$0004\n #_06BB58: STA.b $90\n\n #_06BB5A: TAY\n\n #_06BB5B: INC.b $92\n\n #_06BB5D: LDA.w #$0013\n #_06BB60: %MVN(WaterSwitch_OAMDataPointer>>16, $00) ; MVN $06, $00\n\n #_06BB63: PLB\n\n; ---------------------------------------------------------\n\n #_06BB64: SEP #$20\n\n #_06BB66: LDY.b $90\n\n #_06BB68: LDA.b $01\n #_06BB6A: EOR.b #$FF\n #_06BB6C: INC A\n\n #_06BB6D: CLC\n #_06BB6E: ADC.w $0FA8\n #_06BB71: TAX\n\n #_06BB72: CLC\n #_06BB73: ADC.w $0000,Y\n #_06BB76: STA.w $0000,Y\n\n #_06BB79: TXA\n #_06BB7A: CLC\n #_06BB7B: ADC.w $0004,Y\n #_06BB7E: STA.w $0004,Y\n\n #_06BB81: TXA\n #_06BB82: CLC\n #_06BB83: ADC.w $0008,Y\n #_06BB86: STA.w $0008,Y\n\n #_06BB89: TXA\n #_06BB8A: CLC\n #_06BB8B: ADC.w $000C,Y\n #_06BB8E: STA.w $000C,Y\n\n #_06BB91: LDA.w $0FA8\n #_06BB94: CLC\n #_06BB95: ADC.w $0010,Y\n #_06BB98: STA.w $0010,Y\n\n; ---------------------------------------------------------\n\n #_06BB9B: LSR.b $01\n\n #_06BB9D: LDA.w $0FA9\n #_06BBA0: SEC\n #_06BBA1: SBC.b $01\n #_06BBA3: TAX\n\n #_06BBA4: CLC\n #_06BBA5: ADC.w $0001,Y\n #_06BBA8: STA.w $0001,Y\n\n #_06BBAB: TXA\n #_06BBAC: CLC\n #_06BBAD: ADC.w $0005,Y\n #_06BBB0: STA.w $0005,Y\n\n #_06BBB3: TXA\n #_06BBB4: CLC\n #_06BBB5: ADC.w $0009,Y\n #_06BBB8: STA.w $0009,Y\n\n #_06BBBB: TXA\n #_06BBBC: CLC\n #_06BBBD: ADC.w $000D,Y\n #_06BBC0: STA.w $000D,Y\n\n #_06BBC3: LDA.w $0FA9\n #_06BBC6: CLC\n #_06BBC7: ADC.w $0011,Y\n #_06BBCA: STA.w $0011,Y\n\n; ---------------------------------------------------------\n\n #_06BBCD: LDA.b $02\n #_06BBCF: ORA.w $0003,Y\n #_06BBD2: STA.w $0003,Y\n\n #_06BBD5: LDA.b $02\n #_06BBD7: ORA.w $0007,Y\n #_06BBDA: STA.w $0007,Y\n\n #_06BBDD: LDA.b $02\n #_06BBDF: ORA.w $000B,Y\n #_06BBE2: STA.w $000B,Y\n\n #_06BBE5: LDA.b $02\n #_06BBE7: ORA.w $000F,Y\n #_06BBEA: STA.w $000F,Y\n\n #_06BBED: LDA.b $02\n #_06BBEF: ORA.w $0013,Y\n #_06BBF2: STA.w $0013,Y\n\n; ---------------------------------------------------------\n\n #_06BBF5: REP #$31\n\n #_06BBF7: LDA.w #$0000\n #_06BBFA: TAY\n #_06BBFB: STA.b ($92),Y\n\n #_06BBFD: INY\n #_06BBFE: INY\n #_06BBFF: STA.b ($92),Y\n\n #_06BC01: LDA.w #$0200\n #_06BC04: INY\n #_06BC05: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n #_06BC07: SEP #$30\n\n #_06BC09: PLX\n\n #_06BC0A: LDY.b #$FF\n #_06BC0C: LDA.b #$04\n #_06BC0E: JSR Sprite_CorrectOAMEntries\n\n #_06BC11: LDA.w $0F20,X\n #_06BC14: CMP.b $EE\n #_06BC16: BEQ .same_layer\n\n #_06BC18: JMP.w .exit\n\n; ---------------------------------------------------------\n\n.same_layer\n #_06BC1B: STZ.w $0DB0,X\n\n #_06BC1E: LDA.w $0DE0,X\n #_06BC21: ASL A\n #_06BC22: ASL A\n #_06BC23: ASL A\n #_06BC24: ASL A\n #_06BC25: TAY\n\n #_06BC26: LDA.w WaterSwitch_OAMData+0,Y\n #_06BC29: CLC\n #_06BC2A: ADC.w $0D10,X\n #_06BC2D: STA.b $04\n\n; ---------------------------------------------------------\n\n #_06BC2F: STZ.b $0A\n\n #_06BC31: LDA.w WaterSwitch_OAMData+0,Y\n #_06BC34: BPL .positive_x\n\n #_06BC36: DEC.b $0A\n\n.positive_x\n #_06BC38: LDA.b $0A\n #_06BC3A: ADC.w $0D30,X\n #_06BC3D: STA.b $0A\n\n #_06BC3F: LDA.w WaterSwitch_OAMData+1,Y\n #_06BC42: CLC\n #_06BC43: ADC.w $0D00,X\n #_06BC46: STA.b $05\n\n; ---------------------------------------------------------\n\n #_06BC48: STZ.b $0B\n\n #_06BC4A: LDA.w WaterSwitch_OAMData+1,Y\n #_06BC4D: BPL .positive_y\n\n #_06BC4F: DEC.b $0B\n\n.positive_y\n #_06BC51: LDA.b $0B\n #_06BC53: ADC.w $0D20,X\n #_06BC56: STA.b $0B\n\n; ---------------------------------------------------------\n\n #_06BC58: LDA.w $0DE0,X\n #_06BC5B: ASL A\n #_06BC5C: TAY\n\n #_06BC5D: LDA.w WaterSwitch_HitBox+0,Y\n #_06BC60: STA.b $06\n\n #_06BC62: LDA.w WaterSwitch_HitBox+1,Y\n #_06BC65: STA.b $07\n\n #_06BC67: JSR Link_SetupHitBox\n #_06BC6A: JSR CheckIfHitBoxesOverlap\n #_06BC6D: BCC .no_contact\n\n; ---------------------------------------------------------\n\n #_06BC6F: LDA.w $0D00,X\n #_06BC72: PHA\n\n #_06BC73: CLC\n #_06BC74: ADC.b #$13\n #_06BC76: STA.w $0D00,X\n\n #_06BC79: LDA.w $0D20,X\n #_06BC7C: PHA\n\n #_06BC7D: ADC.b #$00\n #_06BC7F: STA.w $0D20,X\n\n #_06BC82: JSR Sprite_DirectionToFaceLink\n\n #_06BC85: PLA\n #_06BC86: STA.w $0D20,X\n\n #_06BC89: PLA\n #_06BC8A: STA.w $0D00,X\n\n #_06BC8D: CPY.b #$00\n #_06BC8F: BNE .contact\n\n #_06BC91: LDA.b $2F\n #_06BC93: CMP.b #$04\n #_06BC95: BNE .contact\n\n #_06BC97: INC.w $0DB0,X\n #_06BC9A: BRA .contact\n\n; ---------------------------------------------------------\n\n.no_contact\n #_06BC9C: JSR Sprite_CheckDamageToLink_same_layer\n #_06BC9F: BCC .exit\n\n; ---------------------------------------------------------\n\n.contact\n #_06BCA1: JSL Sprite_CancelHookshot\n\n #_06BCA5: STZ.b $5E\n\n #_06BCA7: JSL Sprite_RepelDash_long\n\n.exit\n #_06BCAB: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_39_Locksmith", + "code": "Sprite_39_Locksmith:\n #_06BCAC: JSR SpriteDraw_Locksmith\n #_06BCAF: JSR Sprite_CheckIfActive_Bank06\n #_06BCB2: JSL Sprite_BehaveAsBarrier\n\n #_06BCB6: LDA.w $0D80,X\n #_06BCB9: JSL JumpTableLocal\n #_06BCBD: dw LockSmith_Chillin\n #_06BCBF: dw LockSmith_FollowLink\n #_06BCC1: dw LockSmith_OfferService\n #_06BCC3: dw LockSmith_RespondToAnswer\n #_06BCC5: dw LockSmith_JustPromiseOkay\n #_06BCC7: dw LockSmith_SilentDismay\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_Chillin", + "code": "LockSmith_Chillin:\n #_06BCC9: LDA.b #$07 ; MESSAGE 0107\n #_06BCCB: LDY.b #$01\n #_06BCCD: JSL Sprite_ShowSolicitedMessage\n\n #_06BCD1: LDA.w $0D10,X\n #_06BCD4: PHA\n\n #_06BCD5: SEC\n #_06BCD6: SBC.b #$10\n #_06BCD8: STA.w $0D10,X\n\n #_06BCDB: JSR Sprite_Get16BitCoords\n\n #_06BCDE: LDA.b #$01\n #_06BCE0: STA.w $0D50,X\n #_06BCE3: STA.w $0D40,X\n\n #_06BCE6: JSL Sprite_CheckTileCollision_long\n #_06BCEA: BNE .dont_stalk_link\n\n #_06BCEC: INC.w $0D80,X\n\n #_06BCEF: LDA.l $7EF3CC\n #_06BCF3: CMP.b #$00\n #_06BCF5: BEQ .dont_stalk_link\n\n #_06BCF7: LDA.b #$05\n #_06BCF9: STA.w $0D80,X\n\n.dont_stalk_link\n #_06BCFC: PLA\n #_06BCFD: STA.w $0D10,X\n\n #_06BD00: RTS", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_FollowLink", + "code": "LockSmith_FollowLink:\n #_06BD01: LDA.b #$09 ; FOLLOWER 09\n #_06BD03: STA.l $7EF3CC\n\n #_06BD07: PHX\n\n #_06BD08: STZ.w $02F9\n\n #_06BD0B: JSL LoadFollowerGraphics\n #_06BD0F: JSL Follower_Initialize\n\n #_06BD13: PLX\n\n #_06BD14: LDA.b #$40\n #_06BD16: STA.w $02CD\n #_06BD19: STZ.w $02CE\n\n #_06BD1C: STZ.w $0DD0,X\n\n #_06BD1F: RTS", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_OfferService", + "code": "LockSmith_OfferService:\n #_06BD20: JSL CheckIfLinkIsBusy\n #_06BD24: BCS .exit\n\n #_06BD26: LDA.l $7EF3D3\n #_06BD2A: BEQ .dont_have_chest\n\n #_06BD2C: LDA.b #$09 ; MESSAGE 0109\n #_06BD2E: LDY.b #$01\n #_06BD30: JSL Sprite_ShowSolicitedMessage\n #_06BD34: BCC .exit\n\n #_06BD36: BRA .continue\n\n; ---------------------------------------------------------\n\n.dont_have_chest\n #_06BD38: LDA.b #$09 ; MESSAGE 0109\n #_06BD3A: LDY.b #$01\n #_06BD3C: JSL Sprite_ShowMessageOnContact\n #_06BD40: BCC .exit\n\n.continue\n #_06BD42: INC.w $0D80,X\n\n.exit\n #_06BD45: RTS", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_RespondToAnswer", + "code": "LockSmith_RespondToAnswer:\n #_06BD46: LDA.w $1CE8\n #_06BD49: BNE .rejected\n\n #_06BD4B: LDA.l $7EF3D3\n #_06BD4F: BEQ .give_bottle\n\n #_06BD51: LDA.b #$0C ; MESSAGE 010C\n #_06BD53: LDY.b #$01\n #_06BD55: JSL Sprite_ShowMessageUnconditional\n\n #_06BD59: LDA.b #$02\n #_06BD5B: STA.w $0D80,X\n\n #_06BD5E: RTS", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_JustPromiseOkay", + "code": "LockSmith_JustPromiseOkay:\n #_06BD8A: LDA.b #$0B ; MESSAGE 010B\n #_06BD8C: LDY.b #$01\n #_06BD8E: JSL Sprite_ShowSolicitedMessage\n\n #_06BD92: RTS", + "file": "bank_06.asm" + }, + { + "name": "LockSmith_SilentDismay", + "code": "LockSmith_SilentDismay:\n #_06BD93: LDA.b #$07 ; MESSAGE 0107\n #_06BD95: LDY.b #$01\n #_06BD97: JSL Sprite_ShowSolicitedMessage\n\n #_06BD9B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Locksmith", + "code": "SpriteDraw_Locksmith:\n #_06BDAC: LDA.b #$02\n #_06BDAE: STA.b $06\n #_06BDB0: STZ.b $07\n\n #_06BDB2: LDA.b #.oam_groups>>0\n #_06BDB4: STA.b $08\n\n #_06BDB6: LDA.b #.oam_groups>>8\n #_06BDB8: STA.b $09\n\n #_06BDBA: JSL SpriteDraw_Tabulated_player_deferred\n\n #_06BDBE: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2B_Hobo", + "code": "Sprite_2B_Hobo:\n #_06BDC1: LDA.w $0E80,X\n #_06BDC4: JSL JumpTableLocal\n #_06BDC8: dw Hobo_Bum\n #_06BDCA: dw Hobo_Bubble\n #_06BDCC: dw Hobo_Fire\n #_06BDCE: dw Hobo_Smoke\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Bum", + "code": "Hobo_Bum:\n #_06BDD0: JSL SpriteDraw_Hobo\n #_06BDD4: JSR Sprite_CheckIfActive_Bank06\n\n #_06BDD7: LDA.b #$03\n #_06BDD9: STA.w $0F60,X\n\n #_06BDDC: JSR Sprite_CheckDamageToLink_same_layer\n #_06BDDF: BCC .no_contact\n\n #_06BDE1: JSL Sprite_CancelHookshot\n\n #_06BDE5: STZ.b $5E\n\n #_06BDE7: JSL Link_CancelDash_long\n\n.no_contact\n #_06BDEB: LDA.w $0D80,X\n #_06BDEE: JSL JumpTableLocal\n #_06BDF2: dw Hobo_Sleep\n #_06BDF4: dw Hobo_Awoken\n #_06BDF6: dw Hobo_GiveBottle\n #_06BDF8: dw Hobo_BackToSleep\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Sleep", + "code": "Hobo_Sleep:\n #_06BDFA: LDA.b #$07\n #_06BDFC: STA.w $0F60,X\n\n #_06BDFF: JSR Sprite_CheckDamageToLink_same_layer\n #_06BE02: BCC .keep_snoozing\n\n #_06BE04: LDA.b $F6\n #_06BE06: BPL .keep_snoozing\n\n #_06BE08: INC.w $0D80,X\n\n #_06BE0B: LDY.w $0E90,X\n\n #_06BE0E: LDA.b #$04\n #_06BE10: STA.w $0DF0,Y\n\n #_06BE13: LDA.b #$01\n #_06BE15: STA.w $02E4\n\n; ---------------------------------------------------------\n\n.keep_snoozing\n #_06BE18: LDA.w $0E10,X\n #_06BE1B: BNE .exit\n\n #_06BE1D: LDA.b #$A0\n #_06BE1F: STA.w $0E10,X\n\n #_06BE22: JSR Hobo_SpawnBubble\n\n #_06BE25: TYA\n #_06BE26: STA.w $0E90,X\n\n.exit\n #_06BE29: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Awoken", + "code": "Hobo_Awoken:\n #_06BE39: LDA.w $0DF0,X\n #_06BE3C: BNE .exit\n\n #_06BE3E: LDY.w $0D90,X\n\n #_06BE41: LDA.w .anim_step,Y\n #_06BE44: BMI .fully_awake\n\n #_06BE46: STA.w $0DC0,X\n\n #_06BE49: LDA.w .timer,Y\n #_06BE4C: STA.w $0DF0,X\n\n #_06BE4F: INC.w $0D90,X\n\n.exit\n #_06BE52: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_GiveBottle", + "code": "Hobo_GiveBottle:\n #_06BE5F: INC.w $0D80,X\n\n #_06BE62: LDA.b #$01\n #_06BE64: STA.w $0DC0,X\n\n #_06BE67: PHX\n\n #_06BE68: LDX.b $8A\n\n #_06BE6A: LDA.l $7EF280,X\n #_06BE6E: ORA.b #$20\n #_06BE70: STA.l $7EF280,X\n\n #_06BE74: LDY.b #$16 ; ITEMGET 16\n #_06BE76: STZ.w $02E9\n #_06BE79: JSL Link_ReceiveItem\n\n #_06BE7D: LDA.l $7EF3C9\n #_06BE81: ORA.b #$01\n #_06BE83: STA.l $7EF3C9\n\n #_06BE87: PLX\n\n #_06BE88: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_BackToSleep", + "code": "Hobo_BackToSleep:\n #_06BE89: STZ.w $02E4\n\n #_06BE8C: STZ.w $0DC0,X\n\n #_06BE8F: LDA.w $0DF0,X\n #_06BE92: BNE .exit\n\n #_06BE94: LDA.b #$A0\n #_06BE96: STA.w $0DF0,X\n\n #_06BE99: JSR Hobo_SpawnBubble\n\n.exit\n #_06BE9C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Hobo_SpawnSmoke", + "code": "SpritePrep_Hobo_SpawnSmoke:\n #_06BE9D: LDA.b #$2B ; SPRITE 2B\n #_06BE9F: JSL Sprite_SpawnDynamically\n #_06BEA3: BMI .no_space\n\n #_06BEA5: JSL Sprite_SetSpawnedCoordinates\n\n #_06BEA9: LDA.b #$00\n #_06BEAB: STA.w $0E80,Y\n #_06BEAE: STA.w $0BA0,Y\n\n.no_space\n #_06BEB1: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06BEB2", + "code": "UNREACHABLE_06BEB2:\n #_06BEB2: db $01, $FF\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Bubble", + "code": "Hobo_Bubble:\n #_06BEB4: LDA.b #$04\n #_06BEB6: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_06BEBA: JSR SpriteDraw_SingleSmall\n #_06BEBD: JSR Sprite_CheckIfActive_Bank06\n\n #_06BEC0: LDA.b $1A\n\n #_06BEC2: LSR A\n #_06BEC3: LSR A\n #_06BEC4: LSR A\n #_06BEC5: LSR A\n\n #_06BEC6: AND.b #$01\n\n #_06BEC8: INC A\n #_06BEC9: INC A\n\n #_06BECA: STA.w $0DC0,X\n\n #_06BECD: LDA.w $0E00,X\n #_06BED0: BNE .delay\n\n #_06BED2: INC.w $0DC0,X\n\n #_06BED5: JSR Sprite_Move_Z_Bank06\n\n #_06BED8: LDA.w $0DF0,X\n #_06BEDB: BNE .delay\n\n #_06BEDD: STZ.w $0DD0,X\n\n.delay\n #_06BEE0: LDA.w $0DF0,X\n #_06BEE3: CMP.b #$04\n #_06BEE5: BCS .exit\n\n #_06BEE7: LDA.b #$03\n #_06BEE9: STA.w $0DC0,X\n\n.exit\n #_06BEEC: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_SpawnBubble", + "code": "Hobo_SpawnBubble:\n #_06BEED: LDA.b #$2B ; SPRITE 2B\n #_06BEEF: JSL Sprite_SpawnDynamically\n #_06BEF3: BMI EXIT_06BF14\n\n #_06BEF5: JSL Sprite_SetSpawnedCoordinates\n\n #_06BEF9: LDA.b #$01\n #_06BEFB: STA.w $0E80,Y\n\n #_06BEFE: LDA.b #$02\n #_06BF00: STA.w $0F80,Y\n\n #_06BF03: LDA.b #$60\n #_06BF05: STA.w $0DF0,Y\n\n #_06BF08: LSR A\n #_06BF09: STA.w $0E00,Y\n #_06BF0C: STA.w $0BA0,Y\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ZeroOutOAMAllocation", + "code": "Sprite_ZeroOutOAMAllocation:\n #_06BF0F: LDA.b #$00\n #_06BF11: STA.w $0E40,Y\n\n; ---------------------------------------------------------\n\n#EXIT_06BF14:\n #_06BF14: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Fire", + "code": "Hobo_Fire:\n #_06BF15: JSR SpriteDraw_SingleSmall\n #_06BF18: JSR Sprite_CheckIfActive_Bank06\n\n #_06BF1B: LDA.b $1A\n\n #_06BF1D: LSR A\n #_06BF1E: LSR A\n #_06BF1F: LSR A\n\n #_06BF20: AND.b #$03\n #_06BF22: STA.b $00\n\n #_06BF24: AND.b #$01\n #_06BF26: STA.w $0DC0,X\n\n #_06BF29: LDA.b $00\n\n #_06BF2B: ASL A\n #_06BF2C: ASL A\n #_06BF2D: ASL A\n #_06BF2E: ASL A\n\n #_06BF2F: AND.b #$40\n #_06BF31: STA.b $00\n\n #_06BF33: LDA.w $0F50,X\n #_06BF36: AND.b #$BF\n #_06BF38: ORA.b $00\n #_06BF3A: STA.w $0F50,X\n\n #_06BF3D: LDA.w $0DF0,X\n #_06BF40: BNE .exit\n\n #_06BF42: JSR Hobo_SpawnSmoke\n\n #_06BF45: LDA.b #$2F\n #_06BF47: STA.w $0DF0,X\n\n.exit\n #_06BF4A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Hobo_SpawnFire", + "code": "SpritePrep_Hobo_SpawnFire:\n #_06BF4B: LDA.b #$2B ; SPRITE 2B\n #_06BF4D: JSL Sprite_SpawnDynamically\n #_06BF51: BMI .no_space\n\n #_06BF53: LDA.b #$94\n #_06BF55: STA.w $0D10,Y\n\n #_06BF58: LDA.b #$01\n #_06BF5A: STA.w $0D30,Y\n\n #_06BF5D: LDA.b #$3F\n #_06BF5F: STA.w $0D00,Y\n\n #_06BF62: LDA.b #$00\n #_06BF64: STA.w $0D20,Y\n\n #_06BF67: LDA.b #$02\n #_06BF69: STA.w $0E80,Y\n #_06BF6C: STA.w $0BA0,Y\n\n #_06BF6F: JSR Sprite_ZeroOutOAMAllocation\n\n #_06BF72: LDA.w $0F50,Y\n #_06BF75: AND.b #$F1\n #_06BF77: ORA.b #$02\n #_06BF79: STA.w $0F50,Y\n\n.no_space\n #_06BF7C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_Smoke", + "code": "Hobo_Smoke:\n #_06BF81: LDA.b #$06\n #_06BF83: STA.w $0DC0,X\n\n #_06BF86: JSR SpriteDraw_SingleSmall\n #_06BF89: JSR Sprite_CheckIfActive_Bank06\n\n #_06BF8C: JSR Sprite_Move_XY_Bank06\n #_06BF8F: JSR Sprite_Move_Z_Bank06\n\n #_06BF92: LDA.b $1A\n\n #_06BF94: LSR A\n #_06BF95: LSR A\n #_06BF96: LSR A\n #_06BF97: LSR A\n\n #_06BF98: AND.b #$03\n #_06BF9A: TAY\n\n #_06BF9B: LDA.w $0F50,X\n #_06BF9E: AND.b #$3F\n #_06BFA0: ORA.w .flip,Y\n #_06BFA3: STA.w $0F50,X\n\n #_06BFA6: LDA.w $0DF0,X\n #_06BFA9: BNE .exit\n\n #_06BFAB: STZ.w $0DD0,X\n\n.exit\n #_06BFAE: RTS", + "file": "bank_06.asm" + }, + { + "name": "Hobo_SpawnSmoke", + "code": "Hobo_SpawnSmoke:\n #_06BFAF: LDA.b #$2B ; SPRITE 2B\n #_06BFB1: JSL Sprite_SpawnDynamically\n #_06BFB5: BMI .exit\n\n #_06BFB7: JSL Sprite_SetSpawnedCoordinates\n\n #_06BFBB: LDA.b $02\n #_06BFBD: SEC\n #_06BFBE: SBC.b #$04\n #_06BFC0: STA.w $0D00,Y\n\n #_06BFC3: LDA.b $03\n #_06BFC5: SBC.b #$00\n #_06BFC7: STA.w $0D20,Y\n\n #_06BFCA: LDA.b #$03\n #_06BFCC: STA.w $0E80,Y\n\n #_06BFCF: LDA.b #$07\n #_06BFD1: STA.w $0F80,Y\n\n #_06BFD4: LDA.b #$60\n #_06BFD6: STA.w $0DF0,Y\n #_06BFD9: STA.w $0BA0,Y\n\n #_06BFDC: JSR Sprite_ZeroOutOAMAllocation\n\n.exit\n #_06BFDF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_73_UncleAndPriest_bounce", + "code": "Sprite_73_UncleAndPriest_bounce:\n #_06BFE0: JSL Sprite_73_UncleAndPriest\n\n #_06BFE4: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_UncleAndPriest_bounce", + "code": "SpritePrep_UncleAndPriest_bounce:\n #_06BFE5: JSL SpritePrep_UncleAndPriest\n\n #_06BFE9: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Active_Bank05_bounce", + "code": "SpriteModule_Active_Bank05_bounce:\n #_06BFEA: JSL SpriteModule_Active_Bank05\n\n #_06BFEE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Active_Bank1E_bounce", + "code": "SpriteModule_Active_Bank1E_bounce:\n #_06BFEF: JSL SpriteModule_Active_Bank1E\n\n #_06BFF3: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Active_Bank1D_bounce", + "code": "SpriteModule_Active_Bank1D_bounce:\n #_06BFF4: JSL SpriteModule_Active_Bank1D\n\n #_06BFF8: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_OldMan_bounce", + "code": "SpritePrep_OldMan_bounce:\n #_06BFF9: JSL SpritePrep_OldMan\n\n #_06BFFD: RTS", + "file": "bank_06.asm" + }, + { + "name": "TutorialGuardOrBarrier_bounce", + "code": "TutorialGuardOrBarrier_bounce:\n #_06BFFE: JSL TutorialGuardOrBarrier\n\n #_06C002: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_PullSwitch_bounce", + "code": "Sprite_PullSwitch_bounce:\n #_06C003: JSL Sprite_PullSwitch\n\n #_06C007: RTS", + "file": "bank_06.asm" + }, + { + "name": "SomariaPlatformAndPipe_bounce", + "code": "SomariaPlatformAndPipe_bounce:\n #_06C008: JSL SomariaPlatformAndPipe\n\n #_06C00C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_F2_MedallionTablet_bounce", + "code": "Sprite_F2_MedallionTablet_bounce:\n #_06C00D: JSL Sprite_F2_MedallionTablet\n\n #_06C011: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_32_ArguingBros_bounce", + "code": "Sprite_32_ArguingBros_bounce:\n #_06C012: JSL Sprite_32_ArguingBros\n\n #_06C016: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_33_RupeePull_bounce", + "code": "Sprite_33_RupeePull_bounce:\n #_06C017: JSL Sprite_33_RupeePull\n\n #_06C01B: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_14_ThievesTownGrate_bounce", + "code": "Sprite_14_ThievesTownGrate_bounce:\n #_06C01C: JSL Sprite_14_ThievesTownGrate\n\n #_06C020: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_34_YoungSnitch_bounce", + "code": "Sprite_34_YoungSnitch_bounce:\n #_06C021: JSL Sprite_34_YoungSnitch\n\n #_06C025: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Snitch_bounce_2", + "code": "SpritePrep_Snitch_bounce_2:\n #_06C026: JSL SpritePrep_Snitch\n\n #_06C02A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_35_Innkeeper_bounce", + "code": "Sprite_35_Innkeeper_bounce:\n #_06C02B: JSL Sprite_35_Innkeeper\n\n #_06C02F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Snitch_bounce_3", + "code": "SpritePrep_Snitch_bounce_3:\n #_06C030: JSL SpritePrep_Snitch\n\n #_06C034: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_36_Witch_bounce", + "code": "Sprite_36_Witch_bounce:\n #_06C035: JSL Sprite_36_Witch\n\n #_06C039: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_37_Waterfall_bounce", + "code": "Sprite_37_Waterfall_bounce:\n #_06C03A: JSL Sprite_37_Waterfall\n\n #_06C03E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_38_EyeStatue_bounce", + "code": "Sprite_38_EyeStatue_bounce:\n #_06C03F: JSL Sprite_38_EyeStatue\n\n #_06C043: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_3A_MagicBat_bounce", + "code": "Sprite_3A_MagicBat_bounce:\n #_06C044: JSL Sprite_3A_MagicBat\n\n #_06C048: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_3B_BonkItem_bounce", + "code": "Sprite_3B_BonkItem_bounce:\n #_06C049: JSL Sprite_3B_BonkItem\n\n #_06C04D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_3C_KidInKak_bounce", + "code": "Sprite_3C_KidInKak_bounce:\n #_06C04E: JSL Sprite_3C_KidInKak\n\n #_06C052: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_3D_OldSnitch_bounce", + "code": "Sprite_3D_OldSnitch_bounce:\n #_06C053: JSL Sprite_3D_OldSnitch\n\n #_06C057: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_74_RunningBoy_bounce", + "code": "Sprite_74_RunningBoy_bounce:\n #_06C058: JSL Sprite_74_RunningBoy\n\n #_06C05C: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_RunningBoy_bounce", + "code": "SpritePrep_RunningBoy_bounce:\n #_06C05D: JSL SpritePrep_RunningBoy\n\n #_06C061: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_75_BottleMerchant_bounce", + "code": "Sprite_75_BottleMerchant_bounce:\n #_06C062: JSL Sprite_75_BottleMerchant\n\n #_06C066: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_76_Zelda_bounce", + "code": "Sprite_76_Zelda_bounce:\n #_06C067: JSL Sprite_76_Zelda\n\n #_06C06B: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Zelda_bounce", + "code": "SpritePrep_Zelda_bounce:\n #_06C06C: JSL SpritePrep_Zelda\n\n #_06C070: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_78_MrsSahasrahla_bounce", + "code": "Sprite_78_MrsSahasrahla_bounce:\n #_06C071: JSL Sprite_78_MrsSahasrahla\n\n #_06C075: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E7_Mushroom_bounce", + "code": "Sprite_E7_Mushroom_bounce:\n #_06C076: JSL Sprite_E7_Mushroom\n\n #_06C07A: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_Mushroom_bounce", + "code": "SpritePrep_Mushroom_bounce:\n #_06C07B: JSL SpritePrep_Mushroom\n\n #_06C07F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E8_FakeMasterSword_bounce", + "code": "Sprite_E8_FakeMasterSword_bounce:\n #_06C080: JSL Sprite_E8_FakeMasterSword\n\n #_06C084: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_FakeMasterSword_bounce", + "code": "SpritePrep_FakeMasterSword_bounce:\n #_06C085: JSL SpritePrep_FakeMasterSword\n\n #_06C089: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_16_Elder_bounce", + "code": "Sprite_16_Elder_bounce:\n #_06C08A: JSL Sprite_16_Elder\n\n #_06C08E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E9_MagicShopAssistant_bounce", + "code": "Sprite_E9_MagicShopAssistant_bounce:\n #_06C08F: JSL Sprite_E9_MagicShopAssistant\n\n #_06C093: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_MagicShopAssistant_bounce", + "code": "SpritePrep_MagicShopAssistant_bounce:\n #_06C094: JSL SpritePrep_MagicShopAssistant\n\n #_06C098: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_EA_HeartContainer_bounce", + "code": "Sprite_EA_HeartContainer_bounce:\n #_06C099: JSL Sprite_EA_HeartContainer\n\n #_06C09D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HeartContainer_bounce", + "code": "SpritePrep_HeartContainer_bounce:\n #_06C09E: JSL SpritePrep_HeartContainer\n\n #_06C0A2: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_EB_HeartPiece_bounce", + "code": "Sprite_EB_HeartPiece_bounce:\n #_06C0A3: JSL Sprite_EB_HeartPiece\n\n #_06C0A7: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpritePrep_HeartPiece", + "code": "SpritePrep_HeartPiece:\n #_06C0A8: JSL SpritePrep_HeartContainer\n\n #_06C0AC: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2E_FluteKid_bounce", + "code": "Sprite_2E_FluteKid_bounce:\n #_06C0AD: JSL Sprite_2E_FluteKid\n\n #_06C0B1: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2D_NecklessMan_bounce", + "code": "Sprite_2D_NecklessMan_bounce:\n #_06C0B2: JSL Sprite_2D_NecklessMan\n\n #_06C0B6: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_29_Adult_bounce", + "code": "Sprite_29_Adult_bounce:\n #_06C0B7: JSL Sprite_29_Adult\n\n #_06C0BB: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2A_SweepingLady_bounce", + "code": "Sprite_2A_SweepingLady_bounce:\n #_06C0BC: JSL Sprite_2A_SweepingLady\n\n #_06C0C0: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2C_Lumberjacks_bounce", + "code": "Sprite_2C_Lumberjacks_bounce:\n #_06C0C1: JSL Sprite_2C_Lumberjacks\n\n #_06C0C5: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_31_FortuneTeller_bounce", + "code": "Sprite_31_FortuneTeller_bounce:\n #_06C0C6: JSL Sprite_31_FortuneTeller\n\n #_06C0CA: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_2F_RaceGameLady_bounce", + "code": "Sprite_2F_RaceGameLady_bounce:\n #_06C0CB: JSL Sprite_2F_RaceGameLady\n\n #_06C0CF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_30_RaceGameGuy_bounce", + "code": "Sprite_30_RaceGameGuy_bounce:\n #_06C0D0: JSL Sprite_30_RaceGameGuy\n\n #_06C0D4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_25_TalkingTree_bounce", + "code": "Sprite_25_TalkingTree_bounce:\n #_06C0D5: JSL Sprite_25_TalkingTree\n\n #_06C0D9: RTS", + "file": "bank_06.asm" + }, + { + "name": "StatueDirection", + "code": "StatueDirection:\n #_06C0DA: db $04, $06, $00, $02\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "StatuePressMask", + "code": "StatuePressMask:\n #_06C0DE: db $01, $02, $04, $08\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "StatueSpeed", + "code": "StatueSpeed:\n.x\n #_06C0E2: db -16, 16 ; bleeds into next\n\n.y\n #_06C0E4: db 0, 0, -16, 16\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1C_Statue", + "code": "Sprite_1C_Statue:\n #_06C0E8: LDA.w $0DE0,X\n #_06C0EB: BEQ .not_being_pushed\n\n #_06C0ED: STZ.w $0DE0,X\n\n #_06C0F0: STZ.b $5E\n #_06C0F2: STZ.b $48\n\n.not_being_pushed\n #_06C0F4: LDA.w $0DF0,X\n #_06C0F7: BEQ .retain_momentum\n\n #_06C0F9: LDA.b #$01\n #_06C0FB: STA.w $0DE0,X\n\n #_06C0FE: LDA.b #$81\n #_06C100: STA.b $48\n\n #_06C102: LDA.b #$08\n #_06C104: STA.b $5E\n\n.retain_momentum\n #_06C106: JSR SpriteDraw_Statue\n #_06C109: JSR Sprite_CheckIfActive_Bank06\n #_06C10C: JSR Statue_BlockSprites\n\n #_06C10F: STZ.w $0642\n\n #_06C112: JSR Statue_CheckForSwitch\n #_06C115: BCC .no_switch\n\n #_06C117: LDA.b #$01\n #_06C119: STA.w $0642\n\n.no_switch\n #_06C11C: JSR Sprite_Move_XY_Bank06\n\n #_06C11F: JSR Sprite_Get16BitCoords\n #_06C122: JSR Sprite_CheckTileCollision\n #_06C125: JSR Sprite_ZeroVelocity_XY_Bank06\n\n #_06C128: JSR Sprite_CheckDamageToLink_same_layer\n #_06C12B: BCC Statue_NotInContact\n\n #_06C12D: LDA.b #$07\n #_06C12F: STA.w $0DF0,X\n\n #_06C132: JSL Sprite_RepelDash_long\n\n #_06C136: LDA.w $0E00,X\n #_06C139: BNE Statue_CancelHookshot\n\n #_06C13B: JSR Sprite_DirectionToFaceLink\n\n #_06C13E: LDA.w StatueSpeed_x,Y\n #_06C141: STA.w $0D50,X\n\n #_06C144: LDA.w StatueSpeed_y,Y\n #_06C147: STA.w $0D40,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Statue_HandleGrab", + "code": "Statue_HandleGrab:\n #_06C14A: LDA.w $0376\n #_06C14D: AND.b #$02\n #_06C14F: BNE .not_grabbing\n\n #_06C151: JSL Sprite_CancelHookshot\n\n.not_grabbing\n #_06C155: LDA.w $0E70,X\n #_06C158: AND.b #$0F\n #_06C15A: BNE .exit\n\n #_06C15C: LDA.w $0F10,X\n #_06C15F: BNE .exit\n\n #_06C161: LDA.b #$22 ; SFX2.22\n #_06C163: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06C167: LDA.b #$08\n #_06C169: STA.w $0F10,X\n\n.exit\n #_06C16C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Statue_CancelHookshot", + "code": "Statue_CancelHookshot:\n #_06C16D: JSL Sprite_CancelHookshot\n\n #_06C171: RTS", + "file": "bank_06.asm" + }, + { + "name": "Statue_NotInContact", + "code": "Statue_NotInContact:\n #_06C172: LDA.w $0DF0,X\n #_06C175: BNE .delay_timer\n\n #_06C177: LDA.b #$0D\n #_06C179: STA.w $0E00,X\n\n.delay_timer\n #_06C17C: REP #$20\n\n #_06C17E: LDA.w $0FD8\n #_06C181: SEC\n #_06C182: SBC.b $22\n #_06C184: CLC\n #_06C185: ADC.w #$0010\n\n #_06C188: CMP.w #$0023\n #_06C18B: BCS .reset_contact\n\n #_06C18D: LDA.w $0FDA\n #_06C190: SEC\n #_06C191: SBC.b $20\n #_06C193: CLC\n #_06C194: ADC.w #$000C\n\n #_06C197: CMP.w #$0024\n #_06C19A: BCS .reset_contact\n\n; ---------------------------------------------------------\n\n #_06C19C: SEP #$30\n\n #_06C19E: JSR Sprite_DirectionToFaceLink\n\n #_06C1A1: LDA.b $2F\n #_06C1A3: CMP.w StatueDirection,Y\n #_06C1A6: BNE .reset_contact\n\n #_06C1A8: LDA.w $0372\n #_06C1AB: BNE .reset_contact\n\n #_06C1AD: LDA.b #$01\n #_06C1AF: STA.w $02FA\n\n #_06C1B2: LDA.b #$01\n #_06C1B4: STA.w $0D90,X\n\n #_06C1B7: LDA.w $0376\n #_06C1BA: AND.b #$02\n #_06C1BC: BEQ .exit\n\n #_06C1BE: LDA.b $F0\n #_06C1C0: AND.w StatuePressMask,Y\n #_06C1C3: BEQ .exit\n\n #_06C1C5: LDA.b $30\n #_06C1C7: ORA.b $31\n #_06C1C9: BEQ .exit\n\n; ---------------------------------------------------------\n\n #_06C1CB: TYA\n #_06C1CC: EOR.b #$01\n #_06C1CE: TAY\n\n #_06C1CF: LDA.w StatueSpeed_x,Y\n #_06C1D2: STA.w $0D50,X\n\n #_06C1D5: LDA.w StatueSpeed_y,Y\n #_06C1D8: STA.w $0D40,X\n\n #_06C1DB: JMP.w Statue_HandleGrab\n\n; ---------------------------------------------------------\n\n.reset_contact\n #_06C1DE: SEP #$30\n\n #_06C1E0: LDA.w $0D90,X\n #_06C1E3: BEQ .exit\n\n #_06C1E5: STZ.w $0D90,X\n\n #_06C1E8: STZ.b $5E\n\n #_06C1EA: STZ.w $0376\n #_06C1ED: STZ.w $02FA\n\n #_06C1F0: LDA.b $50\n #_06C1F2: AND.b #$FE\n #_06C1F4: STA.b $50\n\n.exit\n #_06C1F6: RTS", + "file": "bank_06.asm" + }, + { + "name": "Statue_CheckForSwitch", + "code": "Statue_CheckForSwitch:\n #_06C203: LDY.b #$03\n\n.next_tile\n #_06C205: LDA.w $0D00,X\n #_06C208: CLC\n #_06C209: ADC.w .offset_y,Y\n #_06C20C: STA.b $00\n\n #_06C20E: LDA.w $0D20,X\n #_06C211: ADC.b #$00\n #_06C213: STA.b $01\n\n #_06C215: LDA.w $0D10,X\n #_06C218: CLC\n #_06C219: ADC.w .offset_x,Y\n #_06C21C: STA.b $02\n\n #_06C21E: LDA.w $0D30,X\n #_06C221: ADC.b #$00\n #_06C223: STA.b $03\n\n #_06C225: LDA.w $0F20,X\n\n #_06C228: PHY\n\n #_06C229: JSL GetTileType_long\n\n #_06C22D: PLY\n\n; ---------------------------------------------------------\n\n #_06C22E: LDA.w $0FA5\n\n #_06C231: CMP.w .tile_id+0\n #_06C234: BEQ .switch_tile\n\n #_06C236: CMP.w .tile_id+1\n #_06C239: BEQ .switch_tile\n\n #_06C23B: CMP.w .tile_id+2\n #_06C23E: BEQ .switch_tile\n\n #_06C240: CMP.w .tile_id+3\n #_06C243: BNE .fail\n\n.switch_tile\n #_06C245: DEY\n #_06C246: BPL .next_tile\n\n #_06C248: SEC\n\n #_06C249: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Statue", + "code": "SpriteDraw_Statue:\n #_06C264: REP #$20\n\n #_06C266: LDA.w #.oam_groups\n #_06C269: STA.b $08\n\n #_06C26B: LDA.w #$0003\n #_06C26E: STA.b $06\n\n #_06C270: SEP #$30\n\n #_06C272: JSL SpriteDraw_Tabulated_player_deferred\n\n #_06C276: RTS", + "file": "bank_06.asm" + }, + { + "name": "Statue_BlockSprites", + "code": "Statue_BlockSprites:\n #_06C277: LDY.b #$0F\n\n.next\n #_06C279: LDA.w $0E20,Y\n #_06C27C: CMP.b #$1C ; SPRITE 1C\n #_06C27E: BEQ .skip\n\n #_06C280: CPY.w $0FA0\n #_06C283: BEQ .skip\n\n #_06C285: TYA\n #_06C286: EOR.b $1A\n #_06C288: AND.b #$01\n #_06C28A: BNE .skip\n\n #_06C28C: LDA.w $0DD0,Y\n #_06C28F: CMP.b #$09\n #_06C291: BCC .skip\n\n #_06C293: LDA.w $0D10,Y\n #_06C296: STA.b $04\n\n #_06C298: LDA.w $0D30,Y\n #_06C29B: STA.b $05\n\n #_06C29D: LDA.w $0D00,Y\n #_06C2A0: STA.b $06\n\n #_06C2A2: LDA.w $0D20,Y\n #_06C2A5: STA.b $07\n\n #_06C2A7: REP #$20\n\n #_06C2A9: LDA.w $0FD8\n #_06C2AC: SEC\n #_06C2AD: SBC.b $04\n #_06C2AF: CLC\n #_06C2B0: ADC.w #$000C\n\n #_06C2B3: CMP.w #$0018\n #_06C2B6: BCS .skip\n\n #_06C2B8: LDA.w $0FDA\n #_06C2BB: SEC\n #_06C2BC: SBC.b $06\n #_06C2BE: CLC\n #_06C2BF: ADC.w #$000C\n\n #_06C2C2: CMP.w #$0024\n #_06C2C5: BCS .skip\n\n; ---------------------------------------------------------\n\n #_06C2C7: SEP #$20\n\n #_06C2C9: LDA.b #$04\n #_06C2CB: STA.w $0EA0,Y\n\n #_06C2CE: PHY\n\n #_06C2CF: LDA.b #$20\n #_06C2D1: JSR Sprite_ProjectSpeedTowardsLocation\n\n #_06C2D4: PLY\n\n #_06C2D5: LDA.b $00\n #_06C2D7: STA.w $0F30,Y\n\n #_06C2DA: LDA.b $01\n #_06C2DC: STA.w $0F40,Y\n\n; ---------------------------------------------------------\n\n.skip\n #_06C2DF: SEP #$20\n\n #_06C2E1: DEY\n #_06C2E2: BPL .next\n\n #_06C2E4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_1D_FluteQuest", + "code": "Sprite_1D_FluteQuest:\n #_06C2E5: JSR Sprite_PrepOAMCoord_wrapper\n #_06C2E8: JSR Sprite_CheckIfActive_Bank06\n\n #_06C2EB: LDA.b $8A\n #_06C2ED: CMP.b #$18 ; OW 18\n #_06C2EF: BNE .not_kakariko\n\n #_06C2F1: LDA.l $7EF34C\n #_06C2F5: CMP.b #$03\n #_06C2F7: BNE .no_active_flute\n\n #_06C2F9: STZ.w $0DD0,X\n\n.no_active_flute\n #_06C2FC: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_offset_x", + "code": "FairyPond_offset_x:\n #_06C309: db 0, 4, 8, 12\n #_06C30D: db 16, 20, 24, 0\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_offset_y", + "code": "FairyPond_offset_y:\n #_06C311: db 0, 8, 16, 24\n #_06C315: db 32, 40, 4, 36\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_72_FairyPond", + "code": "Sprite_72_FairyPond:\n #_06C319: LDA.w $0D90,X\n #_06C31C: BNE FairyPond_Dust\n\n #_06C31E: LDA.w $0DA0,X\n #_06C321: BNE .visible\n\n #_06C323: JSR Sprite_PrepOAMCoord_wrapper\n\n #_06C326: JMP.w FairyPond_Main\n\n.visible\n #_06C329: JSR SpriteDraw_FairyQueen\n\n #_06C32C: LDA.b $1A\n\n #_06C32E: LSR A\n #_06C32F: LSR A\n #_06C330: LSR A\n #_06C331: LSR A\n\n #_06C332: AND.b #$01\n #_06C334: STA.w $0DC0,X\n\n #_06C337: LDA.b $1A\n #_06C339: AND.b #$0F\n #_06C33B: BNE .exit\n\n #_06C33D: LDA.b #$72 ; SPRITE 72\n #_06C33F: JSL Sprite_SpawnDynamically\n #_06C343: BMI .exit\n\n #_06C345: PHX\n\n #_06C346: JSL GetRandomNumber\n #_06C34A: AND.b #$07\n #_06C34C: TAX\n\n #_06C34D: LDA.b $00\n #_06C34F: CLC\n #_06C350: ADC.w FairyPond_offset_x,X\n #_06C353: STA.w $0D10,Y\n\n #_06C356: LDA.b $01\n #_06C358: ADC.b #$00\n #_06C35A: STA.w $0D30,Y\n\n #_06C35D: JSL GetRandomNumber\n #_06C361: AND.b #$07\n #_06C363: TAX\n\n #_06C364: LDA.b $02\n #_06C366: CLC\n #_06C367: ADC.w FairyPond_offset_y,X\n #_06C36A: STA.w $0D00,Y\n\n #_06C36D: LDA.b $03\n #_06C36F: ADC.b #$00\n #_06C371: STA.w $0D20,Y\n\n #_06C374: LDA.b #$1F\n #_06C376: STA.w $0DB0,Y\n #_06C379: STA.w $0D90,Y\n\n #_06C37C: JSR Sprite_ZeroOutOAMAllocation\n\n #_06C37F: LDA.b #$48\n #_06C381: STA.w $0E60,Y\n\n #_06C384: AND.b #$0F\n #_06C386: STA.w $0F50,Y\n\n #_06C389: LDA.b #$01\n #_06C38B: STA.w $0DA0,Y\n\n #_06C38E: PLX\n\n.exit\n #_06C38F: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_Dust", + "code": "FairyPond_Dust:\n #_06C390: DEC.w $0DB0,X\n #_06C393: BNE .delay\n\n #_06C395: STZ.w $0DD0,X\n\n.delay\n #_06C398: LDA.w $0DB0,X\n #_06C39B: LSR A\n #_06C39C: LSR A\n #_06C39D: LSR A\n #_06C39E: STA.w $0DC0,X\n\n #_06C3A1: LDA.b #$04\n #_06C3A3: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_06C3A7: JSR SpriteDraw_SingleSmall\n\n #_06C3AA: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_TossGFXID", + "code": "FairyPond_TossGFXID:\n.bow\n #_06C3AB: db $3A ; empty normal bow\n #_06C3AC: db $3A ; normal bow and arrows\n #_06C3AD: db $3B ; empty silver bow\n #_06C3AE: db $3B ; silver bow and arrows\n\n.boomerang\n #_06C3AF: db $0C ; blue\n #_06C3B0: db $2A ; red\n\n.hookshot\n #_06C3B1: db $0A\n\n.bombs\n #_06C3B2: db $27\n\n.mushroom\n #_06C3B3: db $29 ; mushroom\n #_06C3B4: db $0D ; powder\n\n.fire_rod\n #_06C3B5: db $07\n\n.ice_rod\n #_06C3B6: db $08\n\n.bombos\n #_06C3B7: db $0F\n\n.ether\n #_06C3B8: db $10\n\n.quake\n #_06C3B9: db $11\n\n.lamp\n #_06C3BA: db $12\n\n.hammer\n #_06C3BB: db $09\n\n.flute\n #_06C3BC: db $13 ; shovel\n #_06C3BD: db $14 ; inactive flute\n #_06C3BE: db $4A ; active flute\n\n.net\n #_06C3BF: db $21\n\n.book\n #_06C3C0: db $1D\n\n.somaria\n #_06C3C1: db $15\n\n.byrna\n #_06C3C2: db $18\n\n.cape\n #_06C3C3: db $19\n\n.mirror\n #_06C3C4: db $31 ; map\n #_06C3C5: db $1A ; mirror\n #_06C3C6: db $1A ; mirror (triforce)\n\n.gloves\n #_06C3C7: db $1B ; power glove\n #_06C3C8: db $1C ; titan's mitt\n\n.boots\n #_06C3C9: db $4B\n\n.flippers\n #_06C3CA: db $1E\n\n.pearl\n #_06C3CB: db $1F\n\n.sword\n #_06C3CC: db $49 ; fighter sword\n #_06C3CD: db $01 ; master sword\n #_06C3CE: db $02 ; tempered sword\n #_06C3CF: db $03 ; butter sword\n\n.shield\n #_06C3D0: db $04 ; fighter shield\n #_06C3D1: db $05 ; fire shield\n #_06C3D2: db $06 ; mirror shield\n\n.armor\n #_06C3D3: db $22 ; blue mail\n #_06C3D4: db $23 ; red mail\n\n.bottles\n #_06C3D5: db $29 ; mushroom\n #_06C3D6: db $16 ; empty bottle\n #_06C3D7: db $2B ; red potion\n #_06C3D8: db $2C ; green potion\n #_06C3D9: db $2D ; blue potion\n #_06C3DA: db $3D ; fairy\n #_06C3DB: db $3C ; bee\n #_06C3DC: db $48 ; good bee\n\n; ---------------------------------------------------------\n\n.pointer\n #_06C3DD: dw .bow-1\n #_06C3DF: dw .boomerang-1\n #_06C3E1: dw .hookshot-1\n #_06C3E3: dw .bombs-1\n #_06C3E5: dw .mushroom-1\n #_06C3E7: dw .fire_rod-1\n #_06C3E9: dw .ice_rod-1\n #_06C3EB: dw .bombos-1\n #_06C3ED: dw .ether-1\n #_06C3EF: dw .quake-1\n #_06C3F1: dw .lamp-1\n #_06C3F3: dw .hammer-1\n #_06C3F5: dw .flute-1\n #_06C3F7: dw .net-1\n #_06C3F9: dw .book-1\n #_06C3FB: dw .somaria-1\n #_06C3FD: dw .somaria-1\n #_06C3FF: dw .byrna-1\n #_06C401: dw .cape-1\n #_06C403: dw .mirror-1\n #_06C405: dw .gloves-1\n #_06C407: dw .boots-1\n #_06C409: dw .flippers-1\n #_06C40B: dw .pearl-1\n #_06C40D: dw .sword-1\n #_06C40F: dw .sword-1\n #_06C411: dw .shield-1\n #_06C413: dw .armor-1\n #_06C415: dw .bottles-1\n #_06C417: dw .bottles-1\n #_06C419: dw .bottles-1\n #_06C41B: dw .bottles-1\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_Main", + "code": "FairyPond_Main:\n #_06C41D: JSR SpriteDraw_FairyPondItem\n #_06C420: JSR Sprite_CheckIfActive_Bank06\n\n #_06C423: LDA.b $A0\n #_06C425: CMP.b #$15 ; ROOM 0115\n #_06C427: BEQ FairyPond_LakeHylia\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_Waterfall", + "code": "FairyPond_Waterfall:\n #_06C429: LDA.w $0D80,X\n #_06C42C: JSL JumpTableLocal\n #_06C430: dw UpgradeFairy_WaitForLink\n #_06C432: dw UpgradeFairy_OfferItemToss\n #_06C434: dw UpgradeFairy_HandleItemToss\n #_06C436: dw UpgradeFairy_SpawnFairy\n #_06C438: dw UpgradeFairy_AskWhoDidThis\n #_06C43A: dw UpgradeFairy_HandleAnswer\n #_06C43C: dw UpgradeFairy_HandleUpgrade\n #_06C43E: dw UpgradeFairy_Retreat\n #_06C440: dw UpgradeFairy_FixPalettes\n #_06C442: dw UpgradeFairy_HandleItemReceipt\n #_06C444: dw UpgradeFairy_FinalGoodBye\n #_06C446: dw UpgradeFairy_YouLiar\n #_06C448: dw UpgradeFairy_SecondChance\n #_06C44A: dw UpgradeFairy_DebaseLink\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_LakeHylia", + "code": "FairyPond_LakeHylia:\n #_06C44C: LDA.w $0D80,X\n #_06C44F: JSL JumpTableLocal\n #_06C453: dw FairyPond_WaitForLink\n #_06C455: dw LakeHyliaFairy_WaitForLink\n #_06C457: dw LakeHyliaFairy_BegForDonation\n #_06C459: dw LakeHyliaFairy_AcceptDonation\n #_06C45B: dw LakeHyliaFairy_WaitForDonation\n #_06C45D: dw LakeHyliaFairy_SpawnFairy\n #_06C45F: dw LakeHyliaFairy_Greetings\n #_06C461: dw LakeHyliaFairy_OfferUpgrade\n #_06C463: dw LakeHyliaFairy_UpgradeBombs\n #_06C465: dw LakeHyliaFairy_RevertTranslucency\n #_06C467: dw LakeHyliaFairy_DeleteFairy\n #_06C469: dw LakeHyliaFairy_RestoreAndReset\n #_06C46B: dw LakeHyliaFairy_UpgradeArrows\n #_06C46D: dw LakeHyliaFairy_GiveDonationStatus\n #_06C46F: dw LakeHyliaFairy_GrantLuck\n\n; =========================================================\n\npool SpriteDraw_FairyPondItem\n\n.oam_groups\n\n.group00\n #_06C471: dw 32, -64 : db $24, $00, $00, $00\n #_06C479: dw 32, -56 : db $34, $00, $00, $00\n #_06C481: dw 32, -64 : db $24, $00, $00, $00\n #_06C489: dw 32, -56 : db $34, $00, $00, $00\n\n.group01\n #_06C491: dw 32, -64 : db $24, $00, $00, $02\n #_06C499: dw 32, -64 : db $24, $00, $00, $02\n #_06C4A1: dw 32, -64 : db $24, $00, $00, $02\n #_06C4A9: dw 32, -64 : db $24, $00, $00, $02\n\n; ---------------------------------------------------------\n\n.oam_group_pointers\n #_06C4B1: dw .group00\n #_06C4B3: dw .group01\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_FairyPondItem", + "code": "SpriteDraw_FairyPondItem:\n #_06C4B5: LDA.b $A0\n #_06C4B7: CMP.b #$15 ; ROOM 0115\n #_06C4B9: BEQ .exit\n\n #_06C4BB: LDA.w $0D80,X\n #_06C4BE: CMP.b #$05\n #_06C4C0: BEQ .draw_object\n\n #_06C4C2: CMP.b #$06\n #_06C4C4: BEQ .draw_object\n\n #_06C4C6: CMP.b #$0B\n #_06C4C8: BEQ .draw_object\n\n #_06C4CA: CMP.b #$0C\n #_06C4CC: BEQ .draw_object\n #_06C4CE: BRA .exit\n\n.draw_object\n #_06C4D0: PHX\n\n #_06C4D1: TXY\n\n #_06C4D2: LDA.w $0DC0,Y\n #_06C4D5: TAX\n\n #_06C4D6: LDA.l AncillaAdd_ItemReceipt_prop,X\n #_06C4DA: CMP.b #$FF\n #_06C4DC: BNE .use_loaded_palette\n\n #_06C4DE: LDA.b #$05\n\n.use_loaded_palette\n #_06C4E0: AND.b #$07\n #_06C4E2: ASL A\n #_06C4E3: STA.w $0F50,Y\n\n #_06C4E6: LDA.l AncillaAdd_ItemReceipt_width,X\n #_06C4EA: TAY\n\n #_06C4EB: LDA.w .oam_group_pointers+0,Y\n #_06C4EE: STA.b $08\n\n #_06C4F0: LDA.w .oam_group_pointers+1,Y\n #_06C4F3: STA.b $09\n\n #_06C4F5: LDA.b #$04\n\n #_06C4F7: PLX\n\n #_06C4F8: JSL SpriteDraw_Tabulated\n\n.exit\n #_06C4FC: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_WaitForLink", + "code": "FairyPond_WaitForLink:\n #_06C4FD: STZ.w $02E4\n\n #_06C500: LDA.w $0DF0,X\n #_06C503: BNE .exit\n\n #_06C505: JSL CheckIfLinkIsBusy\n #_06C509: BCS .exit\n\n #_06C50B: LDA.b #$89 ; MESSAGE 0089\n #_06C50D: LDY.b #$00\n #_06C50F: JSL Sprite_ShowMessageOnContact\n #_06C513: BCC .exit\n\n #_06C515: INC.w $0D80,X\n\n #_06C518: JSL Link_ResetProperties_A\n #_06C51C: JSL Ancilla_TerminateSparkleObjects\n\n #_06C520: STZ.b $2F\n\n.exit\n #_06C522: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_Prices", + "code": "FairyPond_Prices:\n #_06C523: db 5, 20, 25, 50\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPond_PricesBCD", + "code": "FairyPond_PricesBCD:\n #_06C527: db $05, $20, $25, $50\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_WaitForLink", + "code": "LakeHyliaFairy_WaitForLink:\n #_06C52B: LDA.w $1CE8\n #_06C52E: BNE .negatory\n\n #_06C530: LDA.l $7EF370\n #_06C534: ORA.l $7EF371\n #_06C538: BEQ .have_upgraded_before\n\n #_06C53A: LDA.b #$02\n\n.have_upgraded_before\n #_06C53C: STA.w $0DC0,X\n\n #_06C53F: TAY\n\n #_06C540: LDA.w FairyPond_PricesBCD+0,Y\n #_06C543: STA.w $1CF2\n\n #_06C546: LDA.w FairyPond_PricesBCD+1,Y\n #_06C549: STA.w $1CF3\n\n #_06C54C: LDA.b #$4E ; MESSAGE 014E\n #_06C54E: LDY.b #$01\n #_06C550: JSL Sprite_ShowMessageUnconditional\n\n #_06C554: INC.w $0D80,X\n\n #_06C557: LDA.b #$01\n #_06C559: STA.w $02E4\n\n #_06C55C: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_BegForDonation", + "code": "LakeHyliaFairy_BegForDonation:\n #_06C570: LDA.w $1CE8\n #_06C573: CLC\n #_06C574: ADC.w $0DC0,X\n #_06C577: TAY\n\n #_06C578: LDA.w FairyPond_PricesBCD,Y\n #_06C57B: STA.w $1CF3\n\n #_06C57E: REP #$20\n\n #_06C580: LDA.w FairyPond_Prices,Y\n #_06C583: AND.w #$00FF\n #_06C586: STA.b $00\n\n #_06C588: LDA.l $7EF360\n #_06C58C: CMP.b $00\n #_06C58E: BCC FairyPond_ResetAI\n\n #_06C590: SEP #$30\n\n #_06C592: LDA.b $00\n #_06C594: STA.w $0DE0,X\n\n #_06C597: TYA\n #_06C598: STA.w $0EB0,X\n\n #_06C59B: INC.w $0D80,X\n\n #_06C59E: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_AcceptDonation", + "code": "LakeHyliaFairy_AcceptDonation:\n #_06C59F: LDA.b #$50\n #_06C5A1: STA.w $0DF0,X\n\n #_06C5A4: LDA.w $0DE0,X\n #_06C5A7: STA.b $00\n #_06C5A9: STZ.b $01\n\n #_06C5AB: REP #$20\n\n #_06C5AD: LDA.l $7EF360\n #_06C5B1: SEC\n #_06C5B2: SBC.b $00\n #_06C5B4: STA.l $7EF360\n\n #_06C5B8: SEP #$30\n\n #_06C5BA: LDA.l $7EF36A\n #_06C5BE: CLC\n #_06C5BF: ADC.b $00\n #_06C5C1: STA.l $7EF36A\n\n #_06C5C5: PHX\n\n #_06C5C6: LDA.w $0EB0,X\n #_06C5C9: JSL AddHappinessPondRupees\n\n #_06C5CD: PLX\n\n #_06C5CE: LDA.l $7EF36A\n #_06C5D2: CMP.b #100\n #_06C5D4: BCC .not_enough_for_upgrade\n\n #_06C5D6: SBC.b #100\n #_06C5D8: STA.l $7EF36A\n\n #_06C5DC: LDA.b #$05\n #_06C5DE: STA.w $0D80,X\n\n #_06C5E1: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_WaitForDonation", + "code": "LakeHyliaFairy_WaitForDonation:\n #_06C603: LDA.w $0DF0,X\n #_06C606: BNE .exit\n\n #_06C608: LDA.b #$94 ; MESSAGE 0094\n #_06C60A: LDY.b #$00\n #_06C60C: JSL Sprite_ShowMessageUnconditional\n\n #_06C610: LDA.b #$0D\n #_06C612: STA.w $0D80,X\n\n.exit\n #_06C615: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_SpawnFairy", + "code": "LakeHyliaFairy_SpawnFairy:\n #_06C616: LDA.w $0DF0,X\n #_06C619: BNE .exit\n\n #_06C61B: LDA.b #$72 ; SPRITE 72\n #_06C61D: JSL Sprite_SpawnDynamically\n\n #_06C621: LDA.b #$1B ; SONG 1B\n #_06C623: STA.w $012C\n\n #_06C626: STZ.w $0133\n\n #_06C629: LDA.b $00\n #_06C62B: SEC\n #_06C62C: SBC.w FairyPondFairy_offset_x\n #_06C62F: STA.w $0D10,Y\n\n #_06C632: LDA.b $01\n #_06C634: SBC.b #$00\n #_06C636: STA.w $0D30,Y\n\n #_06C639: LDA.b $02\n #_06C63B: SEC\n #_06C63C: SBC.w FairyPondFairy_offset_y\n #_06C63F: STA.w $0D00,Y\n\n #_06C642: LDA.b $03\n #_06C644: SBC.b #$00\n #_06C646: STA.w $0D20,Y\n\n #_06C649: LDA.b #$01\n #_06C64B: STA.w $0DA0,Y\n\n #_06C64E: INC.w $0D80,X\n\n #_06C651: LDA.b #$FF\n #_06C653: STA.w $0DF0,X\n\n #_06C656: PHX\n\n #_06C657: JSL Palette_AssertTranslucencySwap\n #_06C65B: JSL PaletteFilter_WishPonds\n\n #_06C65F: PLX\n\n #_06C660: TYA\n #_06C661: STA.w $0E90,X\n\n.exit\n #_06C664: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_Greetings", + "code": "LakeHyliaFairy_Greetings:\n #_06C665: LDA.b $1A\n #_06C667: AND.b #$07\n #_06C669: BNE .exit\n\n #_06C66B: PHX\n\n #_06C66C: JSL PaletteFilter_SP5F\n\n #_06C670: PLX\n\n #_06C671: LDA.l $7EC007\n #_06C675: BNE .exit\n\n #_06C677: INC.w $0D80,X\n\n #_06C67A: LDA.b #$95 ; MESSAGE 0095\n #_06C67C: LDY.b #$00\n #_06C67E: JSL Sprite_ShowMessageUnconditional\n\n #_06C682: PHX\n\n #_06C683: JSL Palette_RevertTranslucencySwap\n\n #_06C687: STZ.b $1D\n\n #_06C689: LDA.b #$20\n #_06C68B: STA.b $9A\n\n #_06C68D: INC.b $15\n\n #_06C68F: PLX\n\n.exit\n #_06C690: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_OfferUpgrade", + "code": "LakeHyliaFairy_OfferUpgrade:\n #_06C691: LDA.w $1CE8\n #_06C694: BNE .chose_arrows\n\n #_06C696: INC.w $0D80,X\n\n #_06C699: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_UpgradeBombs", + "code": "LakeHyliaFairy_UpgradeBombs:\n #_06C6A0: INC.w $0D80,X\n\n #_06C6A3: LDA.l $7EF370\n #_06C6A7: CMP.b #$07\n #_06C6A9: BEQ .at_max\n\n #_06C6AB: INC A\n #_06C6AC: STA.l $7EF370\n\n #_06C6B0: PHX\n\n #_06C6B1: TAX\n\n #_06C6B2: LDA.l CapacityUpgrades_bombs_bcd,X\n #_06C6B6: STA.w $1CF2\n\n #_06C6B9: STA.l $7EF375\n\n #_06C6BD: PLX\n\n #_06C6BE: LDA.b #$96 ; MESSAGE 0096\n #_06C6C0: LDY.b #$00\n #_06C6C2: JSL Sprite_ShowMessageUnconditional\n\n #_06C6C6: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_RevertTranslucency", + "code": "LakeHyliaFairy_RevertTranslucency:\n #_06C6D2: INC.w $0D80,X\n\n #_06C6D5: PHX\n\n #_06C6D6: JSL Palette_AssertTranslucencySwap\n\n #_06C6DA: LDA.b #$02\n #_06C6DC: STA.b $1D\n\n #_06C6DE: LDA.b #$30\n #_06C6E0: STA.b $9A\n\n #_06C6E2: INC.w $0015\n\n #_06C6E5: PLX\n\n #_06C6E6: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_DeleteFairy", + "code": "LakeHyliaFairy_DeleteFairy:\n #_06C6E7: LDA.b $1A\n #_06C6E9: AND.b #$07\n #_06C6EB: BNE .exit\n\n #_06C6ED: PHX\n\n #_06C6EE: JSL PaletteFilter_SP5F\n\n #_06C6F2: PLX\n\n #_06C6F3: LDA.l $7EC007\n #_06C6F7: CMP.b #$1E\n #_06C6F9: BNE .delay\n\n #_06C6FB: LDA.w $0E90,X\n #_06C6FE: TAY\n\n #_06C6FF: LDA.b #$00\n #_06C701: STA.w $0DD0,Y\n\n #_06C704: BRA .exit\n\n.delay\n #_06C706: CMP.b #$00\n #_06C708: BNE .exit\n\n #_06C70A: INC.w $0D80,X\n\n.exit\n #_06C70D: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_RestoreAndReset", + "code": "LakeHyliaFairy_RestoreAndReset:\n #_06C70E: PHX\n\n #_06C70F: JSL PaletteFilter_RestoreSP5F\n #_06C713: JSL Palette_RevertTranslucencySwap\n\n #_06C717: PLX\n\n #_06C718: STZ.w $0D80,X\n\n #_06C71B: LDA.b #$FF\n #_06C71D: STA.w $0DF0,X\n\n #_06C720: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_UpgradeArrows", + "code": "LakeHyliaFairy_UpgradeArrows:\n #_06C721: LDA.b #$09\n #_06C723: STA.w $0D80,X\n\n #_06C726: LDA.l $7EF371\n #_06C72A: CMP.b #$07\n #_06C72C: BEQ .at_max\n\n #_06C72E: INC A\n #_06C72F: STA.l $7EF371\n\n #_06C733: PHX\n\n #_06C734: TAX\n\n #_06C735: LDA.l CapacityUpgrades_arrows_bcd,X\n #_06C739: STA.w $1CF2\n #_06C73C: STA.l $7EF376\n\n #_06C740: PLX\n\n #_06C741: LDA.b #$97 ; MESSAGE 0097\n #_06C743: LDY.b #$00\n #_06C745: JSL Sprite_ShowMessageUnconditional\n\n #_06C749: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_RefundRupees", + "code": "LakeHyliaFairy_RefundRupees:\n #_06C752: REP #$20\n\n #_06C754: LDA.l $7EF360\n #_06C758: CLC\n #_06C759: ADC.w #$64\n #_06C75C: STA.l $7EF360\n\n #_06C760: SEP #$30\n\n #_06C762: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_GiveDonationStatus", + "code": "LakeHyliaFairy_GiveDonationStatus:\n #_06C763: LDA.b #$54 ; MESSAGE 0154\n #_06C765: LDY.b #$01\n #_06C767: JSL Sprite_ShowMessageUnconditional\n\n #_06C76B: INC.w $0D80,X\n\n #_06C76E: RTS", + "file": "bank_06.asm" + }, + { + "name": "LakeHyliaFairy_GrantLuck", + "code": "LakeHyliaFairy_GrantLuck:\n #_06C77B: JSL GetRandomNumber\n #_06C77F: AND.b #$03\n #_06C781: TAY\n\n #_06C782: LDA.w .luck_level,Y\n #_06C785: STA.w $0CF9\n\n #_06C788: STZ.w $0CFA\n\n #_06C78B: LDA.w .message_low,Y\n #_06C78E: XBA\n\n #_06C78F: LDA.w .message_high,Y\n #_06C792: TAY\n\n #_06C793: XBA\n #_06C794: JSL Sprite_ShowMessageUnconditional\n\n #_06C798: STZ.w $0D80,X\n\n #_06C79B: LDA.b #$FF\n #_06C79D: STA.w $0DF0,X\n\n #_06C7A0: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_WaitForLink", + "code": "UpgradeFairy_WaitForLink:\n #_06C7A1: STZ.w $02E4\n\n #_06C7A4: LDA.w $0DF0,X\n #_06C7A7: BNE .exit\n\n #_06C7A9: JSL CheckIfLinkIsBusy\n #_06C7AD: BCS .exit\n\n #_06C7AF: LDA.b #$4A ; MESSAGE 014A\n #_06C7B1: LDY.b #$01\n #_06C7B3: JSL Sprite_ShowMessageOnContact\n #_06C7B7: BCC .exit\n\n #_06C7B9: INC.w $0D80,X\n\n #_06C7BC: JSL Link_ResetProperties_A\n\n #_06C7C0: STZ.b $2F\n\n #_06C7C2: STZ.w $0EB0,X\n\n.exit\n #_06C7C5: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_OfferItemToss", + "code": "UpgradeFairy_OfferItemToss:\n #_06C7C6: LDA.w $1CE8\n #_06C7C9: BNE .no_toss\n\n #_06C7CB: LDA.b #$8A ; MESSAGE 008A\n #_06C7CD: LDY.b #$00\n #_06C7CF: JSL Sprite_ShowMessageUnconditional\n\n #_06C7D3: INC.w $0D80,X\n\n #_06C7D6: LDA.b #$01\n #_06C7D8: STA.w $02E4\n\n #_06C7DB: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_HandleItemToss", + "code": "UpgradeFairy_HandleItemToss:\n #_06C7ED: INC.w $0D80,X\n\n #_06C7F0: PHX\n\n #_06C7F1: LDA.w $1CE8\n #_06C7F4: STA.w $0DB0,X\n\n #_06C7F7: TAX\n\n #_06C7F8: ASL A\n #_06C7F9: TAY\n\n #_06C7FA: LDA.w FairyPond_TossGFXID_pointer+0,Y\n #_06C7FD: STA.b $00\n\n #_06C7FF: LDA.w FairyPond_TossGFXID_pointer+1,Y\n #_06C802: STA.b $01\n\n #_06C804: LDA.l $7EF340,X\n #_06C808: PHA\n\n #_06C809: CPX.b #$20\n #_06C80B: BEQ .bottle\n\n #_06C80D: CPX.b #$03\n #_06C80F: BNE .not_bombs\n\n.bottle\n #_06C811: LDA.b #$01\n\n; ---------------------------------------------------------\n\n.not_bombs\n #_06C813: TAY\n\n #_06C814: LDA.b #$00\n #_06C816: STA.l $7EF340,X\n\n #_06C81A: LDA.b ($00),Y\n #_06C81C: PHA\n\n #_06C81D: TAX\n\n #_06C81E: LDY.b #$04\n #_06C820: LDA.b #$28 ; ANCILLA 28\n #_06C822: JSL AncillaAdd_TossedPondItem\n\n #_06C826: JSL RefreshIcon_long\n\n #_06C82A: PLA\n #_06C82B: PLY\n #_06C82C: PLX\n\n #_06C82D: STA.w $0DC0,X\n\n #_06C830: TYA\n #_06C831: STA.w $0DE0,X\n\n #_06C834: LDA.b #$FF\n #_06C836: STA.w $0DF0,X\n\n #_06C839: RTS", + "file": "bank_06.asm" + }, + { + "name": "FairyPondFairy_offset_x", + "code": "FairyPondFairy_offset_x:\n #_06C83A: db $00\n", + "file": "bank_06.asm" + }, + { + "name": "FairyPondFairy_offset_y", + "code": "FairyPondFairy_offset_y:\n #_06C83B: db $50\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_SpawnFairy", + "code": "UpgradeFairy_SpawnFairy:\n #_06C83C: LDA.w $0DF0,X\n #_06C83F: BNE .exit\n\n #_06C841: LDA.b #$72 ; SPRITE 72\n #_06C843: JSL Sprite_SpawnDynamically\n\n #_06C847: LDA.b #$1B ; SONG 1B\n #_06C849: STA.w $012C\n\n #_06C84C: STZ.w $0133\n\n #_06C84F: LDA.b $00\n #_06C851: SEC\n #_06C852: SBC.w FairyPondFairy_offset_x\n #_06C855: STA.w $0D10,Y\n\n #_06C858: LDA.b $01\n #_06C85A: SBC.b #$00\n #_06C85C: STA.w $0D30,Y\n\n #_06C85F: LDA.b $02\n #_06C861: SEC\n #_06C862: SBC.w FairyPondFairy_offset_y\n #_06C865: STA.w $0D00,Y\n\n #_06C868: LDA.b $03\n #_06C86A: SBC.b #$00\n #_06C86C: STA.w $0D20,Y\n\n #_06C86F: LDA.b #$01\n #_06C871: STA.w $0DA0,Y\n\n #_06C874: INC.w $0D80,X\n\n #_06C877: LDA.b #$FF\n #_06C879: STA.w $0DF0,X\n\n #_06C87C: PHX\n\n #_06C87D: JSL Palette_AssertTranslucencySwap\n #_06C881: JSL PaletteFilter_WishPonds\n\n #_06C885: PLX\n\n #_06C886: TYA\n #_06C887: STA.w $0E90,X\n\n.exit\n #_06C88A: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_AskWhoDidThis", + "code": "UpgradeFairy_AskWhoDidThis:\n #_06C88B: LDA.b $1A\n #_06C88D: AND.b #$07\n #_06C88F: BNE .exit\n\n #_06C891: PHX\n #_06C892: JSL PaletteFilter_SP5F\n #_06C896: PLX\n\n #_06C897: LDA.l $7EC007\n #_06C89B: BNE .exit\n\n #_06C89D: INC.w $0D80,X\n\n #_06C8A0: LDA.b #$8B ; MESSAGE 008B\n #_06C8A2: LDY.b #$00\n #_06C8A4: JSL Sprite_ShowMessageUnconditional\n\n #_06C8A8: PHX\n\n #_06C8A9: JSL Palette_RevertTranslucencySwap\n\n #_06C8AD: STZ.b $1D\n\n #_06C8AF: LDA.b #$20\n #_06C8B1: STA.b $9A\n\n #_06C8B3: INC.b $15\n\n #_06C8B5: PLX\n\n.exit\n #_06C8B6: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_HandleAnswer", + "code": "UpgradeFairy_HandleAnswer:\n #_06C8B7: LDA.w $1CE8\n #_06C8BA: BNE .liar\n\n #_06C8BC: INC.w $0D80,X\n\n #_06C8BF: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_HandleUpgrade", + "code": "UpgradeFairy_HandleUpgrade:\n #_06C8C6: INC.w $0D80,X\n\n #_06C8C9: LDA.l $7EF3CA\n #_06C8CD: BNE .fat_fairy\n\n; ---------------------------------------------------------\n\n #_06C8CF: LDA.w $0DC0,X\n #_06C8D2: CMP.b #$0C\n #_06C8D4: BNE .not_blue_boomerang\n\n #_06C8D6: LDA.b #$2A ; red boom gfx\n #_06C8D8: STA.w $0DC0,X\n\n #_06C8DB: LDA.b #$01\n #_06C8DD: STA.w $0EB0,X\n\n #_06C8E0: BRA .what_a_nice_item\n\n; ---------------------------------------------------------\n\n.not_blue_boomerang\n #_06C8E2: CMP.b #$04\n #_06C8E4: BNE .not_fighter_shield\n\n #_06C8E6: LDA.b #$05 ; fire shield gfx\n #_06C8E8: STA.w $0DC0,X\n\n #_06C8EB: LDA.b #$02\n #_06C8ED: STA.w $0EB0,X\n\n #_06C8F0: BRA .what_a_nice_item\n\n; ---------------------------------------------------------\n\n.not_fighter_shield\n #_06C8F2: CMP.b #$16\n #_06C8F4: BNE .not_empty_bottle_a\n\n #_06C8F6: LDA.b #$2C ; green potion gfx\n #_06C8F8: STA.w $0DC0,X\n\n #_06C8FB: LDA.b #$03\n #_06C8FD: STA.w $0EB0,X\n\n #_06C900: BRA .what_a_nice_item\n\n; ---------------------------------------------------------\n\n.not_empty_bottle_a\n #_06C902: BRA .what_a_lame_item\n\n; ---------------------------------------------------------\n\n.fat_fairy\n #_06C904: LDA.w $0DC0,X\n #_06C907: CMP.b #$3A\n #_06C909: BNE .not_normal_bow\n\n #_06C90B: LDA.b #$3B ; silver bow gfx\n #_06C90D: STA.w $0DC0,X\n\n #_06C910: LDA.b #$04\n #_06C912: STA.w $0EB0,X\n\n #_06C915: LDA.b #$4F ; MESSAGE 014F\n #_06C917: LDY.b #$01\n #_06C919: JSL Sprite_ShowMessageUnconditional\n\n #_06C91D: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_Retreat", + "code": "UpgradeFairy_Retreat:\n #_06C952: LDA.w $0DE0,X\n #_06C955: TAY\n\n #_06C956: LDA.w $0DB0,X\n\n #_06C959: PHX\n\n #_06C95A: TAX\n\n #_06C95B: TYA\n\n #_06C95C: CPX.b #$03\n #_06C95E: BNE .not_bombs\n\n #_06C960: STA.l $7EF340,X\n\n.not_bombs\n #_06C964: PLX\n\n #_06C965: INC.w $0D80,X\n\n #_06C968: PHX\n\n #_06C969: JSL Palette_AssertTranslucencySwap\n\n #_06C96D: LDA.b #$02\n #_06C96F: STA.b $1D\n\n #_06C971: LDA.b #$30\n #_06C973: STA.b $9A\n\n #_06C975: INC.w $0015\n\n #_06C978: PLX\n\n #_06C979: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_FixPalettes", + "code": "UpgradeFairy_FixPalettes:\n #_06C97A: LDA.b $1A\n #_06C97C: AND.b #$07\n #_06C97E: BNE .exit\n\n #_06C980: PHX\n\n #_06C981: JSL PaletteFilter_SP5F\n\n #_06C985: PLX\n\n #_06C986: LDA.l $7EC007\n #_06C98A: CMP.b #$1E\n #_06C98C: BNE .delay\n\n #_06C98E: LDA.w $0E90,X\n #_06C991: TAY\n\n #_06C992: LDA.b #$00\n #_06C994: STA.w $0DD0,Y\n\n #_06C997: BRA .exit\n\n.delay\n #_06C999: CMP.b #$00\n #_06C99B: BNE .exit\n\n #_06C99D: INC.w $0D80,X\n\n.exit\n #_06C9A0: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_HandleItemReceipt", + "code": "UpgradeFairy_HandleItemReceipt:\n #_06C9A1: INC.w $0D80,X\n\n #_06C9A4: PHX\n\n #_06C9A5: JSL PaletteFilter_RestoreSP5F\n #_06C9A9: JSL Palette_RevertTranslucencySwap\n\n #_06C9AD: PLX\n #_06C9AE: PHX\n\n #_06C9AF: LDA.b #$02\n #_06C9B1: STA.w $02E9\n\n #_06C9B4: LDA.w $0DC0,X\n #_06C9B7: TAY\n\n #_06C9B8: JSL Link_ReceiveItem\n\n #_06C9BC: PLX\n\n #_06C9BD: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_FinalGoodBye", + "code": "UpgradeFairy_FinalGoodBye:\n #_06C9C8: LDA.w $0EB0,X\n #_06C9CB: BEQ .reset\n\n #_06C9CD: DEC A\n #_06C9CE: TAY\n\n #_06C9CF: LDA.w .message_low,Y\n #_06C9D2: XBA\n\n #_06C9D3: LDA.w .message_high,Y\n #_06C9D6: TAY\n\n #_06C9D7: XBA\n\n #_06C9D8: JSL Sprite_ShowMessageUnconditional\n\n.reset\n #_06C9DC: STZ.w $0D80,X\n\n #_06C9DF: LDA.b #$FF\n #_06C9E1: STA.w $0DF0,X\n\n #_06C9E4: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_YouLiar", + "code": "UpgradeFairy_YouLiar:\n #_06C9E5: INC.w $0D80,X\n\n #_06C9E8: LDA.b #$8D ; MESSAGE 008D\n #_06C9EA: LDY.b #$00\n #_06C9EC: JSL Sprite_ShowMessageUnconditional\n\n #_06C9F0: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_SecondChance", + "code": "UpgradeFairy_SecondChance:\n #_06C9F1: LDA.w $1CE8\n #_06C9F4: BNE .still_lying\n\n #_06C9F6: INC.w $0D80,X\n\n #_06C9F9: RTS", + "file": "bank_06.asm" + }, + { + "name": "UpgradeFairy_DebaseLink", + "code": "UpgradeFairy_DebaseLink:\n #_06CA00: LDA.b #$8E ; MESSAGE 008E\n #_06CA02: LDY.b #$00\n #_06CA04: JSL Sprite_ShowMessageUnconditional\n\n #_06CA08: LDA.b #$07\n #_06CA0A: STA.w $0D80,X\n\n #_06CA0D: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_FairyQueen", + "code": "SpriteDraw_FairyQueen:\n #_06CB26: LDA.l $7EF3CA\n #_06CB2A: BNE SpriteDraw_FatFairy\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_ThinFairy", + "code": "SpriteDraw_ThinFairy:\n #_06CB2C: JSR Sprite_PrepOAMCoord\n\n #_06CB2F: LDA.w $0DC0,X\n #_06CB32: ASL A\n #_06CB33: ASL A\n #_06CB34: STA.b $0D\n\n #_06CB36: LDA.w $0DC0,X\n #_06CB39: ASL A\n #_06CB3A: ASL A\n #_06CB3B: ASL A\n #_06CB3C: ADC.b $0D\n #_06CB3E: STA.b $06\n\n #_06CB40: PHX\n\n; ---------------------------------------------------------\n\n #_06CB41: LDX.b #$0B\n\n.next_object\n #_06CB43: PHX\n\n #_06CB44: TXA\n #_06CB45: CLC\n #_06CB46: ADC.b $06\n #_06CB48: TAX\n\n #_06CB49: LDA.b $00\n #_06CB4B: CLC\n #_06CB4C: ADC.w .offset_x,X\n #_06CB4F: STA.b ($90),Y\n\n #_06CB51: LDA.b $02\n #_06CB53: CLC\n #_06CB54: ADC.w .offset_y,X\n #_06CB57: INY\n #_06CB58: STA.b ($90),Y\n\n #_06CB5A: LDA.w .char,X\n #_06CB5D: INY\n #_06CB5E: STA.b ($90),Y\n\n #_06CB60: LDA.w .prop,X\n #_06CB63: ORA.b $05\n #_06CB65: INY\n #_06CB66: STA.b ($90),Y\n\n #_06CB68: PHY\n\n #_06CB69: TYA\n #_06CB6A: LSR A\n #_06CB6B: LSR A\n #_06CB6C: TAY\n\n #_06CB6D: LDA.w .oam_sizes,X\n #_06CB70: STA.b ($92),Y\n\n #_06CB72: PLY\n #_06CB73: INY\n\n #_06CB74: PLX\n #_06CB75: DEX\n #_06CB76: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06CB78: PLX\n\n #_06CB79: LDY.b #$FF\n #_06CB7B: LDA.b #$0B\n #_06CB7D: JSR Sprite_CorrectOAMEntries\n\n #_06CB80: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_FatFairy", + "code": "SpriteDraw_FatFairy:\n #_06CB81: LDA.b #$0A\n #_06CB83: STA.b $06\n #_06CB85: STZ.b $07\n\n #_06CB87: LDA.w $0DC0,X\n\n #_06CB8A: ASL A\n #_06CB8B: ASL A\n\n #_06CB8C: ADC.w $0DC0,X\n\n #_06CB8F: ASL A\n #_06CB90: ASL A\n #_06CB91: ASL A\n #_06CB92: ASL A\n\n #_06CB93: ADC.b #.oam_groups>>0\n #_06CB95: STA.b $08\n\n #_06CB97: LDA.b #.oam_groups>>8\n #_06CB99: ADC.b #$00\n #_06CB9B: STA.b $09\n\n #_06CB9D: JSL SpriteDraw_Tabulated_preset_quantity\n\n #_06CBA1: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_71_Leever", + "code": "Sprite_71_Leever:\n #_06CBA2: LDA.w $0D80,X\n #_06CBA5: BEQ .underground\n\n #_06CBA7: JSR SpriteDraw_Leever\n #_06CBAA: BRA .respawn\n\n.underground\n #_06CBAC: JSR Sprite_PrepOAMCoord_wrapper\n\n.respawn\n #_06CBAF: LDA.w $0F00,X\n #_06CBB2: BEQ .dont_respawn\n\n #_06CBB4: LDA.b #$08\n #_06CBB6: STA.w $0DD0,X\n\n.dont_respawn\n #_06CBB9: JSR Sprite_CheckIfActive_Bank06\n #_06CBBC: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_06CBBF: LDA.w $0D80,X\n\n #_06CBC2: REP #$30\n\n #_06CBC4: AND.w #$00FF\n #_06CBC7: ASL A\n #_06CBC8: TAY\n\n #_06CBC9: LDA.w .vectors,Y\n #_06CBCC: PHA\n\n #_06CBCD: SEP #$30\n\n #_06CBCF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Leever_Underground", + "code": "Leever_Underground:\n #_06CBD8: LDA.w $0DF0,X\n #_06CBDB: STA.w $0BA0,X\n #_06CBDE: BNE .delay\n\n #_06CBE0: INC.w $0D80,X\n\n #_06CBE3: LDA.b #$7F\n #_06CBE5: STA.w $0DF0,X\n\n #_06CBE8: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06CBF5", + "code": "UNREACHABLE_06CBF5:\n #_06CBF5: LDA.w $0DF0,X\n #_06CBF8: BNE .exit\n\n #_06CBFA: INC.w $0D80,X\n\n #_06CBFD: LDA.b #$7F\n #_06CBFF: STA.w $0DF0,X\n\n.exit\n #_06CC02: RTS", + "file": "bank_06.asm" + }, + { + "name": "Leever_Emerge", + "code": "Leever_Emerge:\n #_06CC13: LDA.w $0DF0,X\n #_06CC16: STA.w $0BA0,X\n #_06CC19: BNE .delay\n\n #_06CC1B: INC.w $0D80,X\n\n #_06CC1E: JSL GetRandomNumber\n #_06CC22: AND.b #$3F\n #_06CC24: ADC.b #$A0\n #_06CC26: STA.w $0DF0,X\n\n #_06CC29: JMP.w Sprite_ZeroVelocity_XY_Bank06\n\n; ---------------------------------------------------------\n\n.delay\n #_06CC2C: LSR A\n #_06CC2D: LSR A\n #_06CC2E: LSR A\n #_06CC2F: TAY\n\n #_06CC30: LDA.w .anim_step,Y\n #_06CC33: STA.w $0DC0,X\n\n #_06CC36: RTS", + "file": "bank_06.asm" + }, + { + "name": "Leever_Attack", + "code": "Leever_Attack:\n #_06CC3C: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06CC3F: LDA.w $0DF0,X\n #_06CC42: BNE .delay\n\n.tile_collision\n #_06CC44: INC.w $0D80,X\n\n #_06CC47: LDA.b #$7F\n #_06CC49: STA.w $0DF0,X\n\n #_06CC4C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Leever_Dig", + "code": "Leever_Dig:\n #_06CC8A: LDA.w $0DF0,X\n #_06CC8D: STA.w $0BA0,X\n #_06CC90: BNE .delay\n\n #_06CC92: STZ.w $0D80,X\n\n #_06CC95: JSL GetRandomNumber\n #_06CC99: AND.b #$1F\n #_06CC9B: ADC.b #$40\n #_06CC9D: STA.w $0DF0,X\n\n #_06CCA0: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06CCAE", + "code": "UNREACHABLE_06CCAE:\n #_06CCAE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Leever", + "code": "SpriteDraw_Leever:\n #_06CE45: JSR Sprite_PrepOAMCoord\n\n #_06CE48: LDA.w $0DC0,X\n #_06CE4B: TAY\n\n #_06CE4C: ASL A\n #_06CE4D: ASL A\n #_06CE4E: STA.b $06\n\n #_06CE50: PHX\n\n #_06CE51: LDX.w .object_count,Y\n #_06CE54: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_object\n #_06CE56: PHX\n\n #_06CE57: TXA\n #_06CE58: CLC\n #_06CE59: ADC.b $06\n #_06CE5B: PHA\n\n #_06CE5C: ASL A\n #_06CE5D: TAX\n\n #_06CE5E: REP #$20\n\n #_06CE60: LDA.b $00\n #_06CE62: CLC\n #_06CE63: ADC.w .offset_x,X\n #_06CE66: STA.b ($90),Y\n\n #_06CE68: AND.w #$0100\n #_06CE6B: STA.b $0E\n\n #_06CE6D: LDA.b $02\n #_06CE6F: CLC\n #_06CE70: ADC.w .offset_y,X\n\n #_06CE73: INY\n #_06CE74: STA.b ($90),Y\n\n #_06CE76: CLC\n #_06CE77: ADC.w #$0010\n #_06CE7A: CMP.w #$0100\n\n #_06CE7D: SEP #$20\n #_06CE7F: BCC .on_screen\n\n #_06CE81: LDA.b #$F0\n #_06CE83: STA.b ($90),Y\n\n.on_screen\n #_06CE85: PLX\n\n #_06CE86: LDA.b $05\n #_06CE88: PHA\n\n #_06CE89: LDA.w .char,X\n #_06CE8C: INY\n #_06CE8D: STA.b ($90),Y\n\n #_06CE8F: CMP.b #$60\n #_06CE91: BCS .change_props\n\n #_06CE93: CMP.b #$28\n #_06CE95: BEQ .change_props\n\n #_06CE97: CMP.b #$38\n #_06CE99: BNE .dont_change_props\n\n.change_props\n #_06CE9B: LDA.b $05\n #_06CE9D: AND.b #$F0\n #_06CE9F: STA.b $05\n\n.dont_change_props\n #_06CEA1: LDA.w .prop,X\n #_06CEA4: ORA.b $05\n #_06CEA6: INY\n #_06CEA7: STA.b ($90),Y\n\n #_06CEA9: PLA\n #_06CEAA: STA.b $05\n\n #_06CEAC: PHY\n\n #_06CEAD: TYA\n #_06CEAE: LSR A\n #_06CEAF: LSR A\n #_06CEB0: TAY\n\n #_06CEB1: LDA.w .size,X\n #_06CEB4: ORA.b $0F\n #_06CEB6: STA.b ($92),Y\n\n #_06CEB8: PLY\n #_06CEB9: INY\n\n #_06CEBA: PLX\n #_06CEBB: DEX\n #_06CEBC: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06CEBE: PLX\n\n #_06CEBF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_D8_Heart", + "code": "Sprite_D8_Heart:\n #_06CEC0: JSR SpriteDraw_AbsorbableTransient\n #_06CEC3: JSR Sprite_CheckIfActive_Bank06\n\n #_06CEC6: JSR Sprite_CheckAbsorptionByPlayer\n #_06CEC9: JSR Sprite_HandleDraggingByAncilla\n\n #_06CECC: JSR Sprite_Move_XY_Bank06\n #_06CECF: JSR Sprite_Move_Z_Bank06\n\n #_06CED2: LDA.w $0F70,X\n #_06CED5: BPL .airborne\n\n #_06CED7: STZ.w $0F70,X\n\n #_06CEDA: INC.w $0D80,X\n\n #_06CEDD: STZ.w $0DC0,X\n\n.airborne\n #_06CEE0: LDA.w $0F50,X\n #_06CEE3: AND.b #$BF\n #_06CEE5: STA.w $0F50,X\n\n #_06CEE8: LDA.w $0D50,X\n #_06CEEB: BMI .moving_left\n\n.moving_right\n #_06CEED: LDA.w $0F50,X\n #_06CEF0: EOR.b #$40\n #_06CEF2: STA.w $0F50,X\n\n.moving_left\n #_06CEF5: LDA.w $0D80,X\n #_06CEF8: CMP.b #$03\n #_06CEFA: BCC .not_maxed\n\n #_06CEFC: LDA.b #$03\n\n.not_maxed\n #_06CEFE: JSL JumpTableLocal\n #_06CF02: dw HeartRefill_InitializeAscent\n #_06CF04: dw HeartRefill_BeginDescending\n #_06CF06: dw HeartRefill_GlideGroundward\n #_06CF08: dw Sprite_ZeroVelocity_XYZ_Bank06\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "HeartRefill_InitializeAscent", + "code": "HeartRefill_InitializeAscent:\n #_06CF0A: INC.w $0D80,X\n\n #_06CF0D: LDA.b #$12\n #_06CF0F: STA.w $0DF0,X\n\n #_06CF12: LDA.b #$14\n #_06CF14: STA.w $0F80,X\n\n #_06CF17: LDA.b #$01\n #_06CF19: STA.w $0DC0,X\n\n #_06CF1C: STZ.w $0DE0,X\n\n #_06CF1F: RTS", + "file": "bank_06.asm" + }, + { + "name": "HeartRefill_BeginDescending", + "code": "HeartRefill_BeginDescending:\n #_06CF20: LDA.w $0DF0,X\n #_06CF23: BNE .decelerate\n\n #_06CF25: INC.w $0D80,X\n\n #_06CF28: LDA.b #$FD\n #_06CF2A: STA.w $0F80,X\n\n #_06CF2D: STZ.w $0D50,X\n\n #_06CF30: RTS", + "file": "bank_06.asm" + }, + { + "name": "HeartRefill_GlideGroundward", + "code": "HeartRefill_GlideGroundward:\n #_06CF37: LDA.w $0DF0,X\n #_06CF3A: BNE .exit\n\n #_06CF3C: LDA.w $0DE0,X\n #_06CF3F: AND.b #$01\n #_06CF41: TAY\n\n #_06CF42: LDA.w $0D50,X\n #_06CF45: CLC\n #_06CF46: ADC.w PositiveAndNegativeOne,Y\n #_06CF49: STA.w $0D50,X\n\n #_06CF4C: CMP.w .speed,Y\n #_06CF4F: BNE .exit\n\n #_06CF51: INC.w $0DE0,X\n\n #_06CF54: LDA.b #$08\n #_06CF56: STA.w $0DF0,X\n\n.exit\n #_06CF59: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ZeroVelocity_XYZ_Bank06", + "code": "Sprite_ZeroVelocity_XYZ_Bank06:\n #_06CF5A: STZ.w $0F80,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ZeroVelocity_XY_Bank06", + "code": "Sprite_ZeroVelocity_XY_Bank06:\n #_06CF5D: STZ.w $0D50,X\n #_06CF60: STZ.w $0D40,X\n\n #_06CF63: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_HandleDraggingByAncilla", + "code": "Sprite_HandleDraggingByAncilla:\n #_06CF64: LDA.w $0DA0,X\n #_06CF67: BEQ .exit\n\n #_06CF69: TAY\n #_06CF6A: DEY\n\n #_06CF6B: LDA.w $0C4A,Y\n #_06CF6E: BEQ .handler_gone\n\n #_06CF70: LDA.w $0C04,Y\n #_06CF73: STA.w $0D10,X\n\n #_06CF76: LDA.w $0C18,Y\n #_06CF79: STA.w $0D30,X\n\n #_06CF7C: LDA.w $0BFA,Y\n #_06CF7F: STA.w $0D00,X\n\n #_06CF82: LDA.w $0C0E,Y\n #_06CF85: STA.w $0D20,X\n\n #_06CF88: STZ.w $0F70,X\n\n.hard_exit\n #_06CF8B: PLA\n #_06CF8C: PLA\n\n.exit\n #_06CF8D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E3_Fairy", + "code": "Sprite_E3_Fairy:\n #_06CF94: LDA.b #$01\n #_06CF96: STA.w $0BA0,X\n\n #_06CF99: LDA.w $0D80,X\n #_06CF9C: BNE .continue\n\n #_06CF9E: LDA.b $1B\n #_06CFA0: BNE .indoors\n\n #_06CFA2: LDA.b #$30\n #_06CFA4: STA.w $0B89,X\n\n.indoors\n #_06CFA7: JSR SpriteDraw_AbsorbableTransient\n\n.continue\n #_06CFAA: JSR Fairy_CheckIfTouchable\n\n #_06CFAD: JSR Sprite_CheckIfActive_Bank06\n\n #_06CFB0: LDA.w $0D80,X\n #_06CFB3: JSL JumpTableLocal\n #_06CFB7: dw Fairy_Prancing\n #_06CFB9: dw Fairy_HandleCapture\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Fairy_Prancing", + "code": "Fairy_Prancing:\n #_06CFBB: LDA.w $0F10,X\n #_06CFBE: BNE .not_nabbed_directly\n\n #_06CFC0: JSR Sprite_CheckDamageToLink\n #_06CFC3: BCC .no_contact\n\n #_06CFC5: JSL Sprite_HandleAbsorptionByPlayer_long\n #_06CFC9: BRA .not_nabbed_directly\n\n.no_contact\n #_06CFCB: JSR Sprite_CheckDamageFromLink\n #_06CFCE: BEQ .not_nabbed_directly\n\n #_06CFD0: INC.w $0D80,X\n\n #_06CFD3: LDA.b #$C9 ; MESSAGE 00C9\n #_06CFD5: LDY.b #$00\n #_06CFD7: JSL Sprite_ShowMessageUnconditional\n\n #_06CFDB: RTS", + "file": "bank_06.asm" + }, + { + "name": "Fairy_HandleCapture", + "code": "Fairy_HandleCapture:\n #_06CFE4: LDA.w $1CE8\n #_06CFE7: BNE .release\n\n #_06CFE9: JSL FindEmptyBottle\n #_06CFED: BMI .no_space\n\n #_06CFEF: PHX\n\n #_06CFF0: TAX\n\n #_06CFF1: LDA.b #$06\n #_06CFF3: STA.l $7EF35C,X\n\n #_06CFF7: JSL RefreshIcon_long\n\n #_06CFFB: PLX\n\n #_06CFFC: STZ.w $0DD0,X\n\n #_06CFFF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Fairy_CheckIfTouchable", + "code": "Fairy_CheckIfTouchable:\n #_06D011: LDA.b $11\n #_06D013: CMP.b #$02\n #_06D015: BNE .touchable\n\n #_06D017: REP #$20\n\n #_06D019: LDA.w $1CF0\n\n #_06D01C: CMP.w #$00C9 ; MESSAGE 00C9\n #_06D01F: BEQ .untouchable\n\n #_06D021: CMP.w #$00CA ; MESSAGE 00CA\n #_06D024: BNE .touchable\n\n.untouchable\n #_06D026: SEP #$30\n\n #_06D028: LDA.b #$28\n #_06D02A: STA.w $0F10,X\n\n.touchable\n #_06D02D: SEP #$30\n\n #_06D02F: RTS", + "file": "bank_06.asm" + }, + { + "name": "KeyRoomFlagMasks", + "code": "KeyRoomFlagMasks:\n #_06D030: db $40, $20\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E4_SmallKey", + "code": "Sprite_E4_SmallKey:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E5_BigKey", + "code": "Sprite_E5_BigKey:\n #_06D032: LDY.w $0CBA,X\n\n #_06D035: LDA.w $0403\n #_06D038: AND.w KeyRoomFlagMasks,Y\n #_06D03B: BEQ .not_obtained\n\n #_06D03D: STZ.w $0DD0,X\n\n #_06D040: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_D9_GreenRupee", + "code": "Sprite_D9_GreenRupee:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DA_BlueRupee", + "code": "Sprite_DA_BlueRupee:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DB_RedRupee", + "code": "Sprite_DB_RedRupee:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DC_BombRefill1", + "code": "Sprite_DC_BombRefill1:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DD_BombRefill4", + "code": "Sprite_DD_BombRefill4:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DE_BombRefill8", + "code": "Sprite_DE_BombRefill8:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DF_SmallMagicDecanter", + "code": "Sprite_DF_SmallMagicDecanter:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E0_LargeMagicDecanter", + "code": "Sprite_E0_LargeMagicDecanter:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E1_ArrowRefill5", + "code": "Sprite_E1_ArrowRefill5:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E2_ArrowRefill10", + "code": "Sprite_E2_ArrowRefill10:", + "file": "bank_06.asm" + }, + { + "name": "Sprite_E6_StolenShield", + "code": "Sprite_E6_StolenShield:\n #_06D04A: JSL Sprite_DrawRippleIfInWater\n #_06D04E: JSR SpriteDraw_AbsorbableTransient\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorbable_Main", + "code": "Absorbable_Main:\n #_06D051: JSR Sprite_CheckIfActive_Bank06\n #_06D054: JSR Sprite_Move_Z_Bank06\n #_06D057: JSR Sprite_Move_XY_Bank06\n\n #_06D05A: LDA.w $0EE0,X\n #_06D05D: BNE .skip_tile_collision\n\n #_06D05F: JSR Sprite_CheckTileCollision\n #_06D062: JSR Sprite_BounceOffWall\n\n.skip_tile_collision\n #_06D065: LDA.w $0F80,X\n #_06D068: SEC\n #_06D069: SBC.b #$02\n #_06D06B: STA.w $0F80,X\n\n #_06D06E: LDA.w $0F70,X\n #_06D071: BPL .aloft\n\n #_06D073: STZ.w $0F70,X\n\n #_06D076: LDA.w $0D50,X\n #_06D079: ASL A\n #_06D07A: ROR.w $0D50,X\n\n #_06D07D: LDA.w $0D40,X\n #_06D080: ASL A\n #_06D081: ROR.w $0D40,X\n\n #_06D084: LDA.w $0F80,X\n #_06D087: EOR.b #$FF\n #_06D089: INC A\n\n #_06D08A: LSR A\n #_06D08B: CMP.b #$09\n #_06D08D: BCS .no_bounce\n\n #_06D08F: JSR Sprite_ZeroVelocity_XYZ_Bank06\n #_06D092: BRA .aloft\n\n; ---------------------------------------------------------\n\n.no_bounce\n #_06D094: STA.w $0F80,X\n\n #_06D097: LDA.l $7FF9C2,X\n #_06D09B: CMP.b #$08 ; TILETYPE 08\n #_06D09D: BEQ .water_tile\n\n #_06D09F: CMP.b #$09 ; TILETYPE 09\n #_06D0A1: BNE .not_water_tile\n\n.water_tile\n #_06D0A3: STZ.w $0F80,X\n\n #_06D0A6: JSL Sprite_SpawnSmallSplash\n #_06D0AA: BMI .aloft\n\n #_06D0AC: LDA.w $0E60,X\n #_06D0AF: AND.b #$20\n #_06D0B1: BEQ .aloft\n\n #_06D0B3: LDA.w $0D10,Y\n #_06D0B6: SBC.b #$04\n #_06D0B8: STA.w $0D10,Y\n\n #_06D0BB: LDA.w $0D30,Y\n #_06D0BE: SBC.b #$00\n #_06D0C0: STA.w $0D30,Y\n\n #_06D0C3: LDA.w $0D00,Y\n #_06D0C6: SBC.b #$04\n #_06D0C8: STA.w $0D00,Y\n\n #_06D0CB: LDA.w $0D20,Y\n #_06D0CE: SBC.b #$00\n #_06D0D0: STA.w $0D20,Y\n\n #_06D0D3: BRA .aloft\n\n; ---------------------------------------------------------\n\n.not_water_tile\n #_06D0D5: LDA.w $0E20,X\n #_06D0D8: CMP.b #$E4 ; SPRITE E4\n #_06D0DA: BCC .aloft\n\n #_06D0DC: LDA.b $1B\n #_06D0DE: BEQ .aloft\n\n #_06D0E0: LDA.b #$05 ; SFX2.05\n #_06D0E2: JSL SpriteSFX_QueueSFX2WithPan\n\n.aloft\n #_06D0E6: JSR Sprite_HandleDraggingByAncilla\n #_06D0E9: JSR Sprite_CheckAbsorptionByPlayer\n\n #_06D0EC: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorbable_HandleBlink", + "code": "Absorbable_HandleBlink:\n #_06D0ED: LDA.w $0B58,X\n #_06D0F0: BEQ .exit\n\n #_06D0F2: LDA.b $11\n #_06D0F4: ORA.w $0FC1\n #_06D0F7: BNE .exit\n\n #_06D0F9: LDA.b $1A\n #_06D0FB: LSR A\n #_06D0FC: BCS .delay_tick\n\n #_06D0FE: DEC.w $0B58,X\n\n.delay_tick\n #_06D101: LDA.w $0B58,X\n #_06D104: BNE .dont_disappear\n\n #_06D106: STZ.w $0DD0,X\n\n.dont_disappear\n #_06D109: CMP.b #$28\n #_06D10B: BCS .exit\n\n #_06D10D: LSR A\n #_06D10E: BCS .exit\n\n #_06D110: JSR Sprite_PrepOAMCoord_wrapper\n\n #_06D113: PLA\n #_06D114: PLA\n\n.exit\n #_06D115: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckAbsorptionByPlayer", + "code": "Sprite_CheckAbsorptionByPlayer:\n #_06D116: LDA.w $0F10,X\n #_06D119: BNE .exit\n\n #_06D11B: JSR Sprite_CheckDamageToLink_staggered\n #_06D11E: BCC .exit\n\n #_06D120: JSL Sprite_HandleAbsorptionByPlayer_long\n\n.exit\n #_06D124: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_HandleAbsorptionByPlayer_long", + "code": "Sprite_HandleAbsorptionByPlayer_long:\n #_06D125: PHB\n #_06D126: PHK\n #_06D127: PLB\n\n #_06D128: JSR Sprite_HandleAbsorptionByPlayer\n\n #_06D12B: PLB\n\n #_06D12C: RTL", + "file": "bank_06.asm" + }, + { + "name": "Absorbable_SFX3", + "code": "Absorbable_SFX3:\n #_06D12D: db $0B ; SFX3.0B - heart\n #_06D12E: db $0A ; SFX3.0A - green rupee\n #_06D12F: db $0A ; SFX3.0A - blue rupee\n #_06D130: db $0A ; SFX3.0A - red rupee\n #_06D131: db $0B ; SFX3.0B - bomb refill 1\n #_06D132: db $0B ; SFX3.0B - bomb refill 4\n #_06D133: db $0B ; SFX3.0B - bomb refill 8\n #_06D134: db $0B ; SFX3.0B - small magic\n #_06D135: db $0B ; SFX3.0B - full magic\n #_06D136: db $0B ; SFX3.0B - arrow refill 5\n #_06D137: db $0B ; SFX3.0B - arrow refill 10\n #_06D138: db $0B ; SFX3.0B - fairy\n #_06D139: db $2F ; SFX3.2F - small key\n #_06D13A: db $2F ; SFX3.2F - big key\n #_06D13B: db $0B ; SFX3.0B - stolen shield\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_HandleAbsorptionByPlayer", + "code": "Sprite_HandleAbsorptionByPlayer:\n #_06D13C: STZ.w $0DD0,X\n\n #_06D13F: LDA.w $0E20,X\n #_06D142: SEC\n #_06D143: SBC.b #$D8\n #_06D145: TAY\n\n #_06D146: LDA.w Absorbable_SFX3,Y\n #_06D149: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06D14D: TYA\n #_06D14E: JSL JumpTableLocal\n #_06D152: dw Absorb_Heart\n #_06D154: dw Absorb_Rupee\n #_06D156: dw Absorb_Rupee\n #_06D158: dw Absorb_Rupee\n #_06D15A: dw Absorb_Bomb\n #_06D15C: dw Absorb_Bomb\n #_06D15E: dw Absorb_Bomb\n #_06D160: dw Absorb_SmallMagic\n #_06D162: dw Absorb_FullMagic\n #_06D164: dw Absorb_Arrows_5\n #_06D166: dw Absorb_Arrows_10\n #_06D168: dw Absorb_Fairy\n #_06D16A: dw Absorb_SmallKey\n #_06D16C: dw Absorb_BigKey\n #_06D16E: dw Absorb_Shield\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Shield", + "code": "Absorb_Shield:\n #_06D170: LDA.w $0E30,X\n #_06D173: STA.l $7EF35A\n\n #_06D177: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_BigKey", + "code": "Absorb_BigKey:\n #_06D178: STZ.w $02E9\n #_06D17B: LDY.b #$32 ; ITEMGET 32\n\n #_06D17D: PHX\n\n #_06D17E: JSL Link_ReceiveItem\n\n #_06D182: PLX\n\n #_06D183: BRA Absorb_FlagKey\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_SmallKey", + "code": "Absorb_SmallKey:\n #_06D185: LDA.l $7EF36F\n #_06D189: INC A\n #_06D18A: STA.l $7EF36F\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_FlagKey", + "code": "Absorb_FlagKey:\n #_06D18E: LDA.w $0E30,X\n #_06D191: STA.w $0BC0,X\n\n #_06D194: LDY.w $0CBA,X\n\n #_06D197: LDA.w $0403\n #_06D19A: ORA.w KeyRoomFlagMasks,Y\n #_06D19D: STA.w $0403\n\n #_06D1A0: JSL Sprite_ManuallySetDeathFlagUW\n\n #_06D1A4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Fairy", + "code": "Absorb_Fairy:\n #_06D1A5: LDA.b #$31 ; SFX2.31\n #_06D1A7: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06D1AB: LDA.b #$38\n #_06D1AD: BRA Absorb_AddHealth\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Heart", + "code": "Absorb_Heart:\n #_06D1AF: LDA.b #$08\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_AddHealth", + "code": "Absorb_AddHealth:\n #_06D1B1: CLC\n #_06D1B2: ADC.l $7EF372\n #_06D1B6: STA.l $7EF372\n\n #_06D1BA: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Rupee", + "code": "Absorb_Rupee:\n #_06D1BE: LDY.w $0E20,X\n\n #_06D1C1: LDA.b #$00\n #_06D1C3: XBA\n\n #_06D1C4: LDA.w .denomination-$D9,Y ; D9 being the sprite ID of a green rupee\n\n #_06D1C7: REP #$20\n\n #_06D1C9: CLC\n #_06D1CA: ADC.l $7EF360\n #_06D1CE: STA.l $7EF360\n\n #_06D1D2: SEP #$20\n\n #_06D1D4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Bomb", + "code": "Absorb_Bomb:\n #_06D1D8: LDY.w $0E20,X\n\n #_06D1DB: LDA.w .megatonnage-$DC,Y ; DC being the sprite ID of a single bomb\n #_06D1DE: CLC\n #_06D1DF: ADC.l $7EF375\n #_06D1E3: STA.l $7EF375\n\n #_06D1E7: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_SmallMagic", + "code": "Absorb_SmallMagic:\n #_06D1E8: LDA.l $7EF373\n #_06D1EC: CLC\n #_06D1ED: ADC.b #$10\n #_06D1EF: BRA Absorb_AddMagic\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_FullMagic", + "code": "Absorb_FullMagic:\n #_06D1F1: LDA.b #$80\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_AddMagic", + "code": "Absorb_AddMagic:\n #_06D1F3: STA.l $7EF373\n\n #_06D1F7: RTS", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Arrows_5", + "code": "Absorb_Arrows_5:\n #_06D1F8: LDA.w $0EB0,X\n #_06D1FB: BNE Absorb_AddArrows\n\n #_06D1FD: LDA.b #5\n #_06D1FF: BRA Absorb_AddArrows\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_Arrows_10", + "code": "Absorb_Arrows_10:\n #_06D201: LDA.b #10\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Absorb_AddArrows", + "code": "Absorb_AddArrows:\n #_06D203: CLC\n #_06D204: ADC.l $7EF376\n #_06D208: STA.l $7EF376\n\n #_06D20C: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06D22B", + "code": "UNREACHABLE_06D22B:\n #_06D22B: db $02, $04, $06, $02\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_AbsorbableTransient", + "code": "SpriteDraw_AbsorbableTransient:\n #_06D22F: JSR Absorbable_HandleBlink\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Absorbable", + "code": "SpriteDraw_Absorbable:\n #_06D232: LDA.w $0FB3\n #_06D235: BNE .continue\n\n #_06D237: LDA.b $1B\n #_06D239: BEQ .continue\n\n #_06D23B: LDA.b #$30\n #_06D23D: STA.w $0B89,X\n\n.continue\n #_06D240: LDA.w $0FC6\n #_06D243: CMP.b #$03\n #_06D245: BCS .exit\n\n #_06D247: LDA.w $0E10,X\n #_06D24A: BEQ .use_selected_region\n\n #_06D24C: LDA.b #$0C\n #_06D24E: JSL SpriteDraw_AllocateOAMFromRegionC\n\n.use_selected_region\n #_06D252: LDA.w $0E90,X\n #_06D255: BNE .abort\n\n #_06D257: LDY.w $0E20,X\n\n #_06D25A: LDA.w .numeral-$D8,Y\n #_06D25D: BEQ .not_special\n\n #_06D25F: JMP.w .draw_special_char\n\n; ---------------------------------------------------------\n\n.not_special\n #_06D262: LDA.w .gfx_shape-$D8,Y\n #_06D265: BNE .not_8x8\n\n #_06D267: JMP.w SpriteDraw_SingleSmall\n\n; ---------------------------------------------------------\n\n.not_8x8\n #_06D26A: CMP.b #$02\n #_06D26C: BNE .is_8x16\n\n; ---------------------------------------------------------\n\n #_06D26E: LDA.w $0E20,X\n #_06D271: CMP.b #$E6 ; SPRITE E6\n #_06D273: BNE .not_shield\n\n #_06D275: LDA.w $0E30,X\n #_06D278: CMP.b #$01\n #_06D27A: BEQ .is_8x16\n\n #_06D27C: LDA.b #$01\n #_06D27E: STA.w $0DC0,X\n\n.not_shield\n #_06D281: JMP.w SpriteDraw_SingleLarge\n\n; ---------------------------------------------------------\n\n.is_8x16\n #_06D284: JMP.w Sprite_DrawThinAndTall\n\n; ---------------------------------------------------------\n\n.abort\n #_06D287: PLA\n #_06D288: PLA\n\n.exit\n #_06D289: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_08_Octorok", + "code": "Sprite_08_Octorok:\n#Sprite_0A_Octorok4way:\n #_06D377: LDY.w $0DE0,X\n #_06D37A: PHY\n\n #_06D37B: LDA.w $0E00,X\n #_06D37E: BEQ .not_spinning\n\n #_06D380: LDA.w .direction,Y\n #_06D383: STA.w $0DE0,X\n\n.not_spinning\n #_06D386: STZ.b $00\n\n #_06D388: LDA.w $0DC0,X\n #_06D38B: CMP.b #$07\n #_06D38D: BNE .no_flip\n\n #_06D38F: LDA.b #$40\n #_06D391: STA.b $00\n\n.no_flip\n #_06D393: LDA.w $0F50,X\n #_06D396: AND.b #$BF\n #_06D398: ORA.w Octorok_hflip,Y\n #_06D39B: ORA.b $00\n #_06D39D: STA.w $0F50,X\n\n #_06D3A0: JSR SpriteDraw_Octorok\n\n #_06D3A3: PLA\n #_06D3A4: STA.w $0DE0,X\n\n #_06D3A7: JSR Sprite_CheckIfActive_Bank06\n #_06D3AA: JSR Sprite_CheckIfRecoiling_Bank06\n #_06D3AD: JSR Sprite_Move_XY_Bank06\n #_06D3B0: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06D3B3: LDA.w $0D80,X\n #_06D3B6: AND.b #$01\n #_06D3B8: BNE .octorok_used_barrage\n\n #_06D3BA: LDA.w $0DE0,X\n #_06D3BD: AND.b #$02\n #_06D3BF: ASL A\n #_06D3C0: STA.b $00\n\n #_06D3C2: INC.w $0E80,X\n\n #_06D3C5: LDA.w $0E80,X\n #_06D3C8: LSR A\n #_06D3C9: LSR A\n #_06D3CA: LSR A\n #_06D3CB: AND.b #$03\n #_06D3CD: ORA.b $00\n #_06D3CF: STA.w $0DC0,X\n\n #_06D3D2: LDA.w $0DF0,X\n #_06D3D5: BNE .wait\n\n #_06D3D7: INC.w $0D80,X\n\n #_06D3DA: LDY.w $0E20,X\n\n #_06D3DD: LDA.w .timer-8,Y\n #_06D3E0: STA.w $0DF0,X\n\n #_06D3E3: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octorock_ShootEmUp", + "code": "Octorock_ShootEmUp:\n #_06D436: LDA.w $0E20,X\n #_06D439: SEC\n #_06D43A: SBC.b #$08\n\n #_06D43C: REP #$30\n\n #_06D43E: AND.w #$00FF\n #_06D441: ASL A\n #_06D442: TAY\n\n #_06D443: LDA.w .vectors,Y\n #_06D446: DEC A\n #_06D447: PHA\n\n #_06D448: SEP #$30\n\n #_06D44A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octorok_ShootSingle", + "code": "Octorok_ShootSingle:\n #_06D46F: LDA.w $0DF0,X\n #_06D472: CMP.b #$1C\n #_06D474: BNE .bide_time\n\n #_06D476: PHA\n\n #_06D477: JSR Octorok_FireLoogie\n\n #_06D47A: PLA\n\n.bide_time\n #_06D47B: LSR A\n #_06D47C: LSR A\n #_06D47D: LSR A\n #_06D47E: TAY\n\n #_06D47F: LDA.w .mouth_anim_step,Y\n #_06D482: STA.w $0DB0,X\n\n #_06D485: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octorok_Shoot4Ways", + "code": "Octorok_Shoot4Ways:\n #_06D48A: LDA.w $0DF0,X\n #_06D48D: PHA\n\n #_06D48E: CMP.b #$80\n #_06D490: BCS .animate\n\n #_06D492: AND.b #$0F\n #_06D494: BNE .delay_turn\n\n #_06D496: PHA\n\n #_06D497: LDY.w $0DE0,X\n\n #_06D49A: LDA.w .next_direction,Y\n #_06D49D: STA.w $0DE0,X\n\n #_06D4A0: PLA\n\n.delay_turn\n #_06D4A1: CMP.b #$08\n #_06D4A3: BNE .animate\n\n #_06D4A5: JSR Octorok_FireLoogie\n\n.animate\n #_06D4A8: PLA\n #_06D4A9: LSR A\n #_06D4AA: LSR A\n #_06D4AB: LSR A\n #_06D4AC: LSR A\n #_06D4AD: TAY\n\n #_06D4AE: LDA.w .mouth_anim_step,Y\n #_06D4B1: STA.w $0DB0,X\n\n #_06D4B4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octorok_FireLoogie", + "code": "Octorok_FireLoogie:\n #_06D4CD: LDA.b #$07 ; SFX2.07\n #_06D4CF: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06D4D3: LDA.b #$0C ; SPRITE 0C\n #_06D4D5: JSL Sprite_SpawnDynamically\n #_06D4D9: BMI .fired_a_blank\n\n #_06D4DB: PHX\n\n #_06D4DC: LDA.w $0DE0,X\n #_06D4DF: TAX\n\n #_06D4E0: LDA.b $00\n #_06D4E2: CLC\n #_06D4E3: ADC.w .offset_x_low,X\n #_06D4E6: STA.w $0D10,Y\n\n #_06D4E9: LDA.b $01\n #_06D4EB: ADC.w .offset_x_high,X\n #_06D4EE: STA.w $0D30,Y\n\n #_06D4F1: LDA.b $02\n #_06D4F3: CLC\n #_06D4F4: ADC.w .offset_y_low,X\n #_06D4F7: STA.w $0D00,Y\n\n #_06D4FA: LDA.b $03\n #_06D4FC: ADC.w .offset_y_high,X\n #_06D4FF: STA.w $0D20,Y\n\n #_06D502: LDA.w $0DE0,Y\n #_06D505: TAX\n\n #_06D506: LDA.w .rock_speed_x,X\n #_06D509: STA.w $0D50,Y\n\n #_06D50C: LDA.w .rock_speed_y,X\n #_06D50F: STA.w $0D40,Y\n\n #_06D512: PLX\n\n.fired_a_blank\n #_06D513: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Octorok", + "code": "SpriteDraw_Octorok:\n #_06D54A: JSR Sprite_PrepOAMCoord\n\n #_06D54D: LDA.w $0DE0,X\n #_06D550: CMP.b #$03\n #_06D552: BEQ .no_mouth\n\n; ---------------------------------------------------------\n\n #_06D554: LDA.w $0DB0,X\n #_06D557: ASL A\n #_06D558: ADC.w $0DB0,X\n #_06D55B: ADC.w $0DE0,X\n #_06D55E: STA.b $07\n\n #_06D560: PHX\n #_06D561: PHA\n\n #_06D562: ASL A\n #_06D563: TAX\n\n #_06D564: REP #$20\n\n #_06D566: LDA.b $00\n #_06D568: CLC\n #_06D569: ADC.w .mouth_offset_x,X\n #_06D56C: STA.b ($90),Y\n\n #_06D56E: AND.w #$0100\n #_06D571: STA.b $0E\n\n #_06D573: LDA.b $02\n #_06D575: CLC\n #_06D576: ADC.w .mouth_offset_y,X\n\n #_06D579: INY\n #_06D57A: STA.b ($90),Y\n\n #_06D57C: CLC\n #_06D57D: ADC.w #$0010\n #_06D580: CMP.w #$0100\n\n #_06D583: SEP #$20\n #_06D585: BCC .on_screen\n\n #_06D587: LDA.b #$F0\n #_06D589: STA.b ($90),Y\n\n.on_screen\n #_06D58B: PLX\n\n #_06D58C: LDA.w .mouth_char,X\n #_06D58F: INY\n #_06D590: STA.b ($90),Y\n\n #_06D592: LDA.w .mouth_props,X\n #_06D595: INY\n #_06D596: ORA.b $05\n #_06D598: STA.b ($90),Y\n\n #_06D59A: LDA.b $0F\n #_06D59C: STA.b ($92)\n\n #_06D59E: PLX\n\n; ---------------------------------------------------------\n\n.no_mouth\n #_06D59F: REP #$20\n\n #_06D5A1: LDA.b $90\n #_06D5A3: CLC\n #_06D5A4: ADC.w #$0004\n #_06D5A7: STA.b $90\n\n #_06D5A9: INC.b $92\n\n #_06D5AB: SEP #$20\n\n #_06D5AD: DEC.w $0E40,X\n\n #_06D5B0: LDY.b #$00\n #_06D5B2: JSR SpriteDraw_SingleLarge_skipcoords\n\n #_06D5B5: INC.w $0E40,X\n\n #_06D5B8: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_0C_OctorokStone", + "code": "Sprite_0C_OctorokStone:\n #_06D5B9: LDA.w $0DD0,X\n #_06D5BC: CMP.b #$06\n #_06D5BE: BNE OctorokStone_Active\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "OctorokStone_Crumbling", + "code": "OctorokStone_Crumbling:\n #_06D5C0: JSR SpriteDraw_OctorokStoneCrumbling\n #_06D5C3: JSR Sprite_CheckIfActivePermissive_Bank06\n\n #_06D5C6: LDA.w $0DF0,X\n #_06D5C9: CMP.b #$1E\n #_06D5CB: BNE .exit\n\n #_06D5CD: LDA.b #$1F ; SFX2.1F\n #_06D5CF: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n #_06D5D3: RTS", + "file": "bank_06.asm" + }, + { + "name": "OctorokStone_Active", + "code": "OctorokStone_Active:\n #_06D5D4: JSR SpriteDraw_SingleLarge\n #_06D5D7: JSR Sprite_CheckIfActive_Bank06\n #_06D5DA: JSR Sprite_CheckDamageToLink\n #_06D5DD: JSR Sprite_Move_XY_Bank06\n\n #_06D5E0: TXA\n #_06D5E1: EOR.b $1A\n #_06D5E3: AND.b #$03\n #_06D5E5: BNE .exit\n\n #_06D5E7: JSR Sprite_CheckTileCollision\n\n #_06D5EA: LDA.w $0E70,X\n #_06D5ED: BEQ .exit\n\n #_06D5EF: JSR Sprite_PrepareToDie\n\n.exit\n #_06D5F2: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_OctorokStoneCrumbling", + "code": "SpriteDraw_OctorokStoneCrumbling:\n #_06D643: JSR Sprite_PrepOAMCoord\n\n #_06D646: PHX\n\n #_06D647: LDA.b #$03\n #_06D649: STA.b $06\n\n #_06D64B: LDA.w $0DF0,X\n #_06D64E: LSR A\n #_06D64F: AND.b #$0C\n #_06D651: EOR.b #$0C\n\n #_06D653: CLC\n #_06D654: ADC.b $06\n #_06D656: TAX\n\n; ---------------------------------------------------------\n\n.next_object\n #_06D657: PHX\n\n #_06D658: TXA\n #_06D659: ASL A\n #_06D65A: TAX\n\n #_06D65B: REP #$20\n\n #_06D65D: LDA.b $00\n #_06D65F: CLC\n #_06D660: ADC.w .offset_x,X\n #_06D663: STA.b ($90),Y\n\n #_06D665: AND.w #$0100\n #_06D668: STA.b $0E\n\n #_06D66A: LDA.b $02\n #_06D66C: CLC\n #_06D66D: ADC.w .offset_y,X\n\n #_06D670: INY\n #_06D671: STA.b ($90),Y\n\n #_06D673: CLC\n #_06D674: ADC.w #$0010\n #_06D677: CMP.w #$0100\n\n #_06D67A: SEP #$20\n #_06D67C: BCC .on_screen\n\n #_06D67E: LDA.b #$F0\n #_06D680: STA.b ($90),Y\n\n.on_screen\n #_06D682: PLX\n\n #_06D683: LDA.b #$BC\n #_06D685: INY\n #_06D686: STA.b ($90),Y\n\n #_06D688: LDA.w .flip,X\n #_06D68B: ORA.b #$2D\n #_06D68D: INY\n #_06D68E: STA.b ($90),Y\n\n #_06D690: PHY\n\n #_06D691: TYA\n #_06D692: LSR A\n #_06D693: LSR A\n #_06D694: TAY\n\n #_06D695: LDA.b $0F\n #_06D697: STA.b ($92),Y\n\n #_06D699: PLY\n #_06D69A: INY\n\n #_06D69B: DEX\n #_06D69C: DEC.b $06\n #_06D69E: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06D6A0: PLX\n\n #_06D6A1: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_0F_Octoballoon", + "code": "Sprite_0F_Octoballoon:\n #_06D6AA: LDA.w $0E80,X\n\n #_06D6AD: LSR A\n #_06D6AE: LSR A\n #_06D6AF: LSR A\n\n #_06D6B0: AND.b #$07\n #_06D6B2: TAY\n\n #_06D6B3: LDA.w .altitude,Y\n #_06D6B6: STA.w $0F70,X\n\n #_06D6B9: JSR Octoballoon_DrawAndBabies\n #_06D6BC: JSR Sprite_CheckIfActive_Bank06\n\n #_06D6BF: LDA.w $0DF0,X\n #_06D6C2: BNE .dont_explode\n\n #_06D6C4: LDA.b #$03\n #_06D6C6: STA.w $0DF0,X\n\n #_06D6C9: LDY.b #$0F\n\n.next_sprite\n #_06D6CB: LDA.w $0DD0,Y\n #_06D6CE: BEQ .am_dead\n\n #_06D6D0: LDA.w $0E20,Y\n #_06D6D3: CMP.b #$10 ; SPRITE 10\n #_06D6D5: BEQ .dont_explode\n\n.am_dead\n #_06D6D7: DEY\n #_06D6D8: BPL .next_sprite\n\n #_06D6DA: LDA.b #$06\n #_06D6DC: STA.w $0DD0,X\n\n #_06D6DF: JMP.w Octoballoon_TimeToDie\n\n; ---------------------------------------------------------\n\n.dont_explode\n #_06D6E2: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_06D6E5: INC.w $0E80,X\n\n #_06D6E8: TXA\n #_06D6E9: EOR.b $1A\n #_06D6EB: AND.b #$0F\n #_06D6ED: BNE .continue\n\n #_06D6EF: LDA.b #$04\n #_06D6F1: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06D6F4: LDA.w $0D40,X\n #_06D6F7: CMP.b $00\n #_06D6F9: BEQ .at_target_y_speed\n #_06D6FB: BPL .slowdown_y\n\n #_06D6FD: INC.w $0D40,X\n\n #_06D700: BRA .at_target_y_speed\n\n.slowdown_y\n #_06D702: DEC.w $0D40,X\n\n; ---------------------------------------------------------\n\n.at_target_y_speed\n #_06D705: LDA.w $0D50,X\n #_06D708: CMP.b $01\n #_06D70A: BEQ .continue\n #_06D70C: BPL .slowdown_x\n\n #_06D70E: INC.w $0D50,X\n\n #_06D711: BRA .continue\n\n.slowdown_x\n #_06D713: DEC.w $0D50,X\n\n; ---------------------------------------------------------\n\n.continue\n #_06D716: JSR Sprite_Move_XY_Bank06\n #_06D719: JSR Sprite_CheckDamageToLink\n #_06D71C: BCC .no_contact\n\n #_06D71E: JSR Octoballoon_RecoilLink\n\n.no_contact\n #_06D721: JSR Sprite_CheckDamageFromLink\n #_06D724: JSR Sprite_CheckTileCollision\n #_06D727: JSR Sprite_BounceOffWall\n\n #_06D72A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octoballoon_RecoilLink", + "code": "Octoballoon_RecoilLink:\n #_06D72B: LDA.b $46\n #_06D72D: BNE .exit\n\n #_06D72F: LDA.b #$04\n #_06D731: STA.b $46\n\n #_06D733: LDA.b #$10\n #_06D735: JSR Sprite_ApplyRecoilToLink\n\n #_06D738: JSR Sprite_InvertSpeed_XY\n\n.exit\n #_06D73B: RTS", + "file": "bank_06.asm" + }, + { + "name": "Octoballoon_DrawAndBabies", + "code": "Octoballoon_DrawAndBabies:\n #_06D784: STZ.b $0A\n\n #_06D786: LDA.w $0DD0,X\n #_06D789: CMP.b #$06\n #_06D78B: BNE .not_dying\n\n #_06D78D: LDA.w $0DF0,X\n #_06D790: CMP.b #$06\n #_06D792: BNE .no_baby\n\n #_06D794: LDA.b $11\n #_06D796: BNE .no_baby\n\n #_06D798: JSR Octoballoon_FormBabby\n\n.no_baby\n #_06D79B: LDA.w $0DF0,X\n #_06D79E: LSR A\n #_06D79F: AND.b #$04\n #_06D7A1: CLC\n #_06D7A2: ADC.b #$04\n #_06D7A4: STA.b $0A\n\n.not_dying\n #_06D7A6: JSR Sprite_PrepOAMCoord\n\n #_06D7A9: PHX\n\n #_06D7AA: LDA.b #$03\n #_06D7AC: STA.b $0B\n\n #_06D7AE: CLC\n #_06D7AF: ADC.b $0A\n\n #_06D7B1: TAX\n\n.next_object\n #_06D7B2: PHX\n\n #_06D7B3: TXA\n #_06D7B4: ASL A\n #_06D7B5: TAX\n\n #_06D7B6: REP #$20\n\n #_06D7B8: LDA.b $00\n #_06D7BA: CLC\n #_06D7BB: ADC.w .offset_x,X\n #_06D7BE: STA.b ($90),Y\n\n #_06D7C0: AND.w #$0100\n #_06D7C3: STA.b $0E\n\n #_06D7C5: LDA.b $02\n #_06D7C7: CLC\n #_06D7C8: ADC.w .offset_y,X\n\n #_06D7CB: INY\n #_06D7CC: STA.b ($90),Y\n\n #_06D7CE: CLC\n #_06D7CF: ADC.w #$0010\n #_06D7D2: CMP.w #$0100\n\n #_06D7D5: SEP #$20\n #_06D7D7: BCC .on_screen\n\n #_06D7D9: LDA.b #$F0\n #_06D7DB: STA.b ($90),Y\n\n.on_screen\n #_06D7DD: PLX\n\n #_06D7DE: LDA.w .char,X\n #_06D7E1: INY\n #_06D7E2: STA.b ($90),Y\n\n #_06D7E4: LDA.w .flip,X\n #_06D7E7: ORA.b $05\n #_06D7E9: INY\n #_06D7EA: STA.b ($90),Y\n\n #_06D7EC: PHY\n\n #_06D7ED: TYA\n #_06D7EE: LSR A\n #_06D7EF: LSR A\n #_06D7F0: TAY\n\n #_06D7F1: LDA.b #$02\n #_06D7F3: ORA.b $0F\n #_06D7F5: STA.b ($92),Y\n\n #_06D7F7: PLY\n #_06D7F8: INY\n\n #_06D7F9: DEX\n\n #_06D7FA: DEC.b $0B\n #_06D7FC: BPL .next_object\n\n #_06D7FE: PLX\n\n #_06D7FF: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n\npool Octoballoon_FormBabby\n\n.speed_x\n #_06D802: db 16, 11, -11, -16, -11, 11\n\n.speed_y\n #_06D808: db 0, 11, 11, 0, -11, -11\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Octoballoon_FormBabby", + "code": "Octoballoon_FormBabby:\n #_06D80E: LDA.b #$0C ; SFX2.0C\n #_06D810: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06D814: LDA.b #$05\n #_06D816: STA.b $0D\n\n.nth_child\n #_06D818: LDA.b #$10 ; SPRITE 10\n #_06D81A: JSL Sprite_SpawnDynamically\n #_06D81E: BMI .no_space\n\n #_06D820: JSL Sprite_SetSpawnedCoordinates\n\n #_06D824: PHX\n\n #_06D825: LDX.b $0D\n\n #_06D827: LDA.w .speed_x,X\n #_06D82A: STA.w $0D50,Y\n\n #_06D82D: LDA.w .speed_y,X\n #_06D830: STA.w $0D40,Y\n\n #_06D833: LDA.b #$30\n #_06D835: STA.w $0F80,Y\n\n #_06D838: LDA.b #$FF\n #_06D83A: STA.w $0E80,Y\n\n #_06D83D: PLX\n\n.no_space\n #_06D83E: DEC.b $0D\n #_06D840: BPL .nth_child\n\n #_06D842: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06D843", + "code": "UNREACHABLE_06D843:\n #_06D843: db $00, $03, $05, $08, $0A, $0C, $0D, $0E\n #_06D84B: db $0F, $0E, $0D, $0C, $0A, $08, $05, $03\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_10_OctoballoonBaby", + "code": "Sprite_10_OctoballoonBaby:\n #_06D853: LDA.w $0E80,X\n #_06D856: BNE .alive\n\n #_06D858: STZ.w $0DD0,X\n\n.alive\n #_06D85B: CMP.b #$40\n #_06D85D: BCS .not_blinking\n\n #_06D85F: AND.b #$01\n #_06D861: BNE .dont_draw\n\n.not_blinking\n #_06D863: JSR SpriteDraw_SingleSmall\n\n.dont_draw\n #_06D866: JSR Sprite_CheckIfActive_Bank06\n\n #_06D869: DEC.w $0E80,X\n\n #_06D86C: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_06D86F: DEC.w $0F80,X\n\n #_06D872: JSR Sprite_Move_Z_Bank06\n\n #_06D875: LDA.w $0F70,X\n #_06D878: BPL .airborne\n\n #_06D87A: STZ.w $0F70,X\n\n #_06D87D: LDA.b #$10\n #_06D87F: STA.w $0F80,X\n\n.airborne\n #_06D882: JSR Sprite_Move_XY_Bank06\n #_06D885: JSR Sprite_CheckTileCollision\n #_06D888: JSR Sprite_BounceOffWall\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageToAndFromLink_Bank06", + "code": "Sprite_CheckDamageToAndFromLink_Bank06:\n #_06D88B: JSR Sprite_CheckDamageFromLink\n #_06D88E: JSR Sprite_CheckDamageToLink\n\n #_06D891: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_0D_Buzzblob", + "code": "Sprite_0D_Buzzblob:\n #_06D89A: LDA.w $0E00,X\n #_06D89D: BEQ .not_electrified\n\n #_06D89F: LSR A\n #_06D8A0: AND.b #$03\n #_06D8A2: TAY\n\n #_06D8A3: LDA.w $0B89,X\n #_06D8A6: AND.b #$F1\n #_06D8A8: ORA.w .palette,Y\n #_06D8AB: STA.w $0B89,X\n\n.not_electrified\n #_06D8AE: JSL Sprite_Cukeman\n #_06D8B2: JSR SpriteDraw_Buzzblob\n\n #_06D8B5: LDA.w $0E80,X\n\n #_06D8B8: LSR A\n #_06D8B9: LSR A\n #_06D8BA: LSR A\n\n #_06D8BB: AND.b #$03\n #_06D8BD: TAY\n\n #_06D8BE: LDA.w .anim_step,Y\n\n #_06D8C1: LDY.w $0E00,X\n #_06D8C4: BEQ .normal_anim_step\n\n #_06D8C6: INC A\n #_06D8C7: INC A\n #_06D8C8: INC A\n\n.normal_anim_step\n #_06D8C9: STA.w $0DC0,X\n\n #_06D8CC: JSR Sprite_CheckIfActive_Bank06\n #_06D8CF: JSR Sprite_CheckIfRecoiling_Bank06\n\n #_06D8D2: INC.w $0E80,X\n\n #_06D8D5: LDA.w $0DF0,X\n #_06D8D8: BNE .delay\n\n #_06D8DA: JSR Buzzblob_SelectNewDirection\n\n.delay\n #_06D8DD: LDA.w $0E00,X\n #_06D8E0: BNE .immobile\n\n #_06D8E2: JSR Sprite_Move_XY_Bank06\n\n.immobile\n #_06D8E5: JSR Sprite_CheckTileCollision\n #_06D8E8: JSR Sprite_BounceOffWall\n\n #_06D8EB: JMP.w Sprite_CheckDamageToAndFromLink_Bank06\n\n; =========================================================\n\npool Buzzblob_SelectNewDirection\n\n.speed_x\n #_06D8EE: db 3, 2, -2, -3, -2, 2, 0, 0\n\n.speed_y\n #_06D8F6: db 0, 2, 2, 0, -2, -2, 0, 0\n\n.timers\n #_06D8FE: db 48, 48, 48, 48, 48, 48, 64, 64\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Buzzblob_SelectNewDirection", + "code": "Buzzblob_SelectNewDirection:\n #_06D906: JSL GetRandomNumber\n #_06D90A: AND.b #$07\n #_06D90C: TAY\n\n #_06D90D: LDA.w .speed_x,Y\n #_06D910: STA.w $0D50,X\n\n #_06D913: LDA.w .speed_y,Y\n #_06D916: STA.w $0D40,X\n\n #_06D919: LDA.w .timers,Y\n #_06D91C: STA.w $0DF0,X\n\n #_06D91F: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Buzzblob", + "code": "SpriteDraw_Buzzblob:\n #_06D953: JSR Sprite_PrepOAMCoord\n\n #_06D956: PHX\n\n #_06D957: LDA.w $0DC0,X\n #_06D95A: ASL A\n #_06D95B: ADC.w $0DC0,X\n #_06D95E: STA.b $06\n\n #_06D960: LDX.b #$02\n\n.next_object\n #_06D962: PHX\n\n #_06D963: TXA\n #_06D964: ASL A\n #_06D965: TAX\n\n #_06D966: REP #$20\n\n #_06D968: LDA.b $00\n #_06D96A: CLC\n #_06D96B: ADC.w .offset_x,X\n #_06D96E: STA.b ($90),Y\n\n #_06D970: AND.w #$0100\n #_06D973: STA.b $0E\n\n #_06D975: LDA.b $02\n #_06D977: CLC\n #_06D978: ADC.w .offset_y,X\n\n #_06D97B: INY\n #_06D97C: STA.b ($90),Y\n\n #_06D97E: CLC\n #_06D97F: ADC.w #$0010\n #_06D982: CMP.w #$0100\n\n #_06D985: SEP #$20\n #_06D987: BCC .on_screen\n\n #_06D989: LDA.b #$F0\n #_06D98B: STA.b ($90),Y\n\n.on_screen\n #_06D98D: PLX\n #_06D98E: PHX\n\n #_06D98F: TXA\n #_06D990: CLC\n #_06D991: ADC.b $06\n #_06D993: TAX\n\n #_06D994: INY\n\n #_06D995: LDA.w .char,X\n #_06D998: STA.b ($90),Y\n #_06D99A: BNE .dont_skip\n\n #_06D99C: DEY\n\n #_06D99D: LDA.b #$F0\n #_06D99F: STA.b ($90),Y\n\n #_06D9A1: INY\n\n.dont_skip\n #_06D9A2: LDA.w .flip,X\n #_06D9A5: ORA.b $05\n #_06D9A7: INY\n #_06D9A8: STA.b ($90),Y\n\n #_06D9AA: PLX\n\n #_06D9AB: PHY\n\n #_06D9AC: TYA\n #_06D9AD: LSR A\n #_06D9AE: LSR A\n #_06D9AF: TAY\n\n #_06D9B0: LDA.w .size,X\n #_06D9B3: ORA.b $0F\n #_06D9B5: STA.b ($92),Y\n\n #_06D9B7: PLY\n #_06D9B8: INY\n\n #_06D9B9: DEX\n #_06D9BA: BPL .next_object\n\n #_06D9BC: PLX\n\n #_06D9BD: JMP.w SpriteDraw_Shadow\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_BounceOffWall", + "code": "Sprite_BounceOffWall:\n #_06D9C0: LDA.w $0E70,X\n #_06D9C3: AND.b #$03\n #_06D9C5: BEQ .no_horizontal_collision\n\n #_06D9C7: JSR Sprite_InvertSpeed_X\n\n.no_horizontal_collision\n #_06D9CA: LDA.w $0E70,X\n #_06D9CD: AND.b #$0C\n #_06D9CF: BEQ .no_vertical_collision\n\n #_06D9D1: JSR Sprite_InvertSpeed_Y\n\n.no_vertical_collision\n #_06D9D4: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_InvertSpeed_XY", + "code": "Sprite_InvertSpeed_XY:\n #_06D9D5: JSR Sprite_InvertSpeed_Y\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_InvertSpeed_X", + "code": "Sprite_InvertSpeed_X:\n #_06D9D8: LDA.w $0D50,X\n #_06D9DB: EOR.b #$FF\n #_06D9DD: INC A\n #_06D9DE: STA.w $0D50,X\n\n #_06D9E1: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_InvertSpeed_Y", + "code": "Sprite_InvertSpeed_Y:\n #_06D9E2: LDA.w $0D40,X\n #_06D9E5: EOR.b #$FF\n #_06D9E7: INC A\n #_06D9E8: STA.w $0D40,X\n\n #_06D9EB: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank06", + "code": "Sprite_CheckIfActive_Bank06:\n #_06D9EC: LDA.w $0DD0,X\n #_06D9EF: CMP.b #$09\n #_06D9F1: BNE .inactive\n\n; ---------------------------------------------------------\n\n#Sprite_CheckIfActivePermissive_Bank06:\n #_06D9F3: LDA.w $0FC1\n #_06D9F6: BNE .inactive\n\n #_06D9F8: LDA.b $11\n #_06D9FA: BNE .inactive\n\n #_06D9FC: LDA.w $0CAA,X\n #_06D9FF: BMI .active\n\n #_06DA01: LDA.w $0F00,X\n #_06DA04: BEQ .active\n\n.inactive\n #_06DA06: PLA\n #_06DA07: PLA\n\n.active\n #_06DA08: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_IDtoClass", + "code": "SpriteDraw_IDtoClass:\n; 0x00\n #_06DA09: db $A0, $A2, $A0, $A2\n #_06DA0D: db $80, $82, $80, $82\n\n; 0x08 - Cucco\n #_06DA11: db $EA, $EC\n\n; 0x0A - Octorok stone\n #_06DA13: db $84\n\n; 0x0B - Buzz blob\n #_06DA14: db $4E, $61\n\n; 0x0D - Octoballoon baby\n #_06DA16: db $BD\n\n; 0x0E - Kodongo fire\n #_06DA17: db $8C\n\n; 0x0F - Red guard/Elder\n #_06DA18: db $20, $22\n\n; 0x11 - Hoarder\n #_06DA1A: db $C0, $C2\n\n; 0x13 - Poe\n #_06DA1C: db $E6\n\n; 0x14 - Crystal switch\n #_06DA1D: db $E4\n\n; 0x15 - Sluggula\n #_06DA1E: db $82, $AA, $84, $AC\n #_06DA22: db $80, $A0\n\n; 0x1B - Water switch\n #_06DA24: db $CA\n\n; 0x1C - Flute kid\n #_06DA25: db $AF\n\n; 0x1D - Heart\n #_06DA26: db $29, $39\n\n; 0x1F - Rupees\n #_06DA28: db $0B\n\n; 0x20 - Bombs\n #_06DA29: db $6E\n\n; 0x21 - Small magic\n #_06DA2A: db $60\n\n; 0x22 - Full magic\n #_06DA2B: db $62\n\n; 0x23 - Arrows\n #_06DA2C: db $63\n\n; 0x24 - Mirror portal\n #_06DA2D: db $4C\n\n; 0x25 - Fairy\n #_06DA2E: db $EA, $EC\n\n; 0x27 - Bonk item\n #_06DA30: db $24\n\n; 0x28 - Small key\n #_06DA31: db $6B\n\n; 0x29 - Mushroom\n #_06DA32: db $24\n\n; 0x2A - Bari\n #_06DA33: db $22, $24, $26, $20\n #_06DA37: db $30, $21\n\n; 0x30 - Cannonball\n #_06DA39: db $2A, $24\n\n; 0x32 - Rat\n #_06DA3B: db $86, $88, $8A, $8C\n #_06DA3F: db $8E, $A2\n\n; 0x38 - Rope\n #_06DA41: db $A4, $A6, $A8\n\n; 0x3B - Mothula beam\n #_06DA44: db $AA\n\n; 0x3C - Keese\n #_06DA45: db $84, $80, $82\n\n; 0x3F - Bomb\n #_06DA48: db $6E\n\n; 0x40 - Popo\n #_06DA49: db $40, $42\n\n; 0x42 - Hoarder/Spike block\n #_06DA4B: db $E6, $E8\n\n; 0x44 - Cannonball\n #_06DA4D: db $80, $82\n\n; 0x46 - Zora\n #_06DA4F: db $C8\n\n; 0x47 - Zora/fireball\n #_06DA50: db $8D\n\n; 0x48 - Lost woods bird\n #_06DA51: db $E3, $E5\n\n; 0x4A - Lost woods squirrel\n #_06DA53: db $C5, $E1\n\n; 0x4C - Archery game guy\n #_06DA55: db $04, $24\n\n; 0x4E - Wall cannon\n #_06DA57: db $0E, $2E, $0C, $0A\n\n; 0x52 - Big fairy\n #_06DA5B: db $9C, $C7, $B6, $B7\n\n; 0x56 - Mini helmasaur\n #_06DA5F: db $60, $62, $64, $66\n #_06DA63: db $68, $6A\n\n; 0x5C - Bee\n #_06DA65: db $E4, $F4\n\n; 0x5E - Green stalfos\n #_06DA67: db $02, $02, $00, $04\n\n; 0x62 - Aga balls\n #_06DA6B: db $C6, $CC, $CE\n\n; 0x65 - Fire snake, sparks\n #_06DA6E: db $28\n\n; 0x66 - Hover\n #_06DA6F: db $84, $82, $80\n\n; 0x69 - Apple\n #_06DA72: db $E5\n\n; 0x6A - Big key\n #_06DA73: db $24\n\n; 0x6B - Stalfos head\n #_06DA74: db $00, $02, $04\n\n; 0x6E - Kodongo\n #_06DA77: db $A0, $AA, $A4, $A6\n #_06DA7B: db $AC, $A2, $A8\n\n; 0x75 - Arrghi/Wizzrobe\n #_06DA7E: db $A6, $88, $86\n\n; 0x78 - Terror pin\n #_06DA81: db $8E, $AE, $8A\n\n; 0x7B - Blob\n #_06DA84: db $42, $44, $42, $44\n #_06DA88: db $64, $66\n\n; 0x81 - King Helmasaur fireball\n #_06DA8A: db $CC, $CC, $CA\n\n; 0x84 - Pirogusu\n #_06DA8D: db $87, $97, $8E, $AE\n #_06DA91: db $AC, $8C, $8E, $AA\n #_06DA95: db $AC\n\n; 0x8D - Laser eye\n #_06DA96: db $D2, $F3\n\n; 0x8F - Master sword\n #_06DA98: db $84, $A2, $84, $A4\n #_06DA9C: db $E7\n\n; 0x94 - Kyameron\n #_06DA9D: db $8A, $A8, $8A, $A8\n #_06DAA1: db $88, $A0, $A4, $A2\n #_06DAA5: db $A6, $A6, $A6, $A6\n\n; 0xA0 - Zoro\n #_06DAA9: db $7E, $7F\n\n; 0xA2 - Haunted grove rabbit\n #_06DAAB: db $8A, $88, $8C, $A6\n\n; 0xA6 - Haunted grove bird\n #_06DAAF: db $86, $8E, $AC, $86\n\n; 0xAA - Hobo\n #_06DAB3: db $BB, $AC, $A9, $B9\n #_06DAB7: db $AA, $BA, $BC\n\n; 0xB1 - Falling ice\n #_06DABA: db $8A, $8E, $8A, $86\n\n; 0xB5 - Zazak fire ball\n #_06DABE: db $0A\n\n; 0xB6 - Deadrock\n #_06DABF: db $C2, $C4, $E2, $E4\n #_06DAC3: db $C6\n\n; 0xBB - Magic bat\n #_06DAC4: db $EA, $EC\n\n; 0xBD - Zirro bomb\n #_06DAC6: db $FF\n\n; 0xBE - Vitreous small eye\n #_06DAC7: db $E6, $C6\n\n; 0xC0 - Lightning\n #_06DAC9: db $CC, $EC, $CE, $EE\n #_06DACD: db $4C, $6C, $4E, $6E\n\n; 0xC8 - Raven\n #_06DAD1: db $C8, $C4, $C6\n\n; 0xCB - Mini moldorm\n #_06DAD4: db $88, $8C\n\n; 0xCD - Heart container\n #_06DAD6: db $24\n\n; 0xCE - Heart piece\n #_06DAD7: db $E0\n\n; 0xCF - King Helmasaur\n #_06DAD8: db $AE, $C0, $C8, $C4\n #_06DADC: db $C6, $E2, $E0\n\n; 0xD6 - Purple chest\n #_06DADF: db $EE\n\n; 0xD7 - Gibo\n #_06DAE0: db $AE\n\n; 0xD8 - Pokey\n #_06DAE1: db $A0, $80\n\n; 0xDA - Whirlpool\n #_06DAE3: db $EE\n\n; 0xDB - Bully/Victim\n #_06DAE4: db $C0, $C2, $BF\n\n; 0xDE - Chain chomp\n #_06DAE7: db $8C, $AA, $86, $A8\n #_06DAEB: db $A6\n\n; 0xE3 - Trinexx\n #_06DAEC: db $2C, $28, $06\n\n; 0xE6 - Bomb shop guy\n #_06DAEF: db $DF, $CF, $A9\n\n; 0xE9 - Shopkeeper\n #_06DAF2: db $46, $46\n\n; 0xEB - Swamola\n #_06DAF4: db $EA, $C0, $C2, $E0\n #_06DAF8: db $E8, $E2, $E6, $E4\n\n; 0xF3 - Waterfall\n #_06DAFC: db $0B\n\n; 0xF4 - Ganon\n #_06DAFD: db $8E, $A0\n\n; 0xF6 - Stolen shield\n #_06DAFF: db $EC, $EA\n\n; 0xF8 - Talking tree\n #_06DB01: db $E9\n\n; 0xF9 - Boulder\n #_06DB02: db $48, $58\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_ClassToChar", + "code": "SpriteDraw_ClassToChar:\n #_06DB04: db $C8 ; RAVEN\n #_06DB05: db $00 ; VULTURE\n #_06DB06: db $6B ; STALFOS HEAD\n #_06DB07: db $00 ; NULL\n #_06DB08: db $00 ; CORRECT PULL SWITCH\n #_06DB09: db $00 ; UNUSED CORRECT PULL SWITCH\n #_06DB0A: db $00 ; WRONG PULL SWITCH\n #_06DB0B: db $00 ; UNUSED WRONG PULL SWITCH\n #_06DB0C: db $00 ; OCTOROK\n #_06DB0D: db $CB ; MOLDORM\n #_06DB0E: db $00 ; OCTOROK 4WAY\n #_06DB0F: db $08 ; CUCCO\n #_06DB10: db $0A ; OCTOROK STONE\n #_06DB11: db $0B ; BUZZBLOB\n #_06DB12: db $00 ; SNAPDRAGON\n #_06DB13: db $00 ; OCTOBALLOON\n #_06DB14: db $0D ; OCTOBALLOON BABY\n #_06DB15: db $00 ; HINOX\n #_06DB16: db $00 ; MOBLIN\n #_06DB17: db $56 ; MINI HELMASAUR\n #_06DB18: db $00 ; THIEVES TOWN GRATE\n #_06DB19: db $00 ; ANTIFAIRY\n #_06DB1A: db $0F ; SAHASRAHLA / AGINAH\n #_06DB1B: db $11 ; HOARDER\n #_06DB1C: db $00 ; MINI MOLDORM\n #_06DB1D: db $13 ; POE\n #_06DB1E: db $00 ; SMITHY\n #_06DB1F: db $00 ; ARROW\n #_06DB20: db $00 ; STATUE\n #_06DB21: db $00 ; FLUTEQUEST\n #_06DB22: db $14 ; CRYSTAL SWITCH\n #_06DB23: db $00 ; SICK KID\n #_06DB24: db $15 ; SLUGGULA\n #_06DB25: db $1B ; WATER SWITCH\n #_06DB26: db $00 ; ROPA\n #_06DB27: db $2A ; RED BARI\n #_06DB28: db $2A ; BLUE BARI\n #_06DB29: db $F8 ; TALKING TREE\n #_06DB2A: db $00 ; HARDHAT BEETLE\n #_06DB2B: db $B6 ; DEADROCK\n #_06DB2C: db $00 ; DARK WORLD HINT NPC\n #_06DB2D: db $00 ; ADULT\n #_06DB2E: db $00 ; SWEEPING LADY\n #_06DB2F: db $AA ; HOBO\n #_06DB30: db $00 ; LUMBERJACKS\n #_06DB31: db $00 ; TELEPATHIC TILE\n #_06DB32: db $1C ; FLUTE KID\n #_06DB33: db $00 ; RACE GAME LADY\n #_06DB34: db $00 ; RACE GAME GUY\n #_06DB35: db $00 ; FORTUNE TELLER\n #_06DB36: db $00 ; ARGUE BROS\n #_06DB37: db $00 ; RUPEE PULL\n #_06DB38: db $00 ; YOUNG SNITCH\n #_06DB39: db $00 ; INNKEEPER\n #_06DB3A: db $00 ; WITCH\n #_06DB3B: db $F3 ; WATERFALL\n #_06DB3C: db $F3 ; EYE STATUE\n #_06DB3D: db $00 ; LOCKSMITH\n #_06DB3E: db $BB ; MAGIC BAT\n #_06DB3F: db $27 ; BONK ITEM\n #_06DB40: db $00 ; KID IN KAK\n #_06DB41: db $00 ; OLD SNITCH\n #_06DB42: db $42 ; HOARDER\n #_06DB43: db $00 ; TUTORIAL GUARD\n #_06DB44: db $00 ; LIGHTNING GATE\n #_06DB45: db $00 ; BLUE GUARD\n #_06DB46: db $00 ; GREEN GUARD\n #_06DB47: db $00 ; RED SPEAR GUARD\n #_06DB48: db $00 ; BLUESAIN BOLT\n #_06DB49: db $00 ; USAIN BOLT\n #_06DB4A: db $00 ; BLUE ARCHER\n #_06DB4B: db $00 ; GREEN BUSH GUARD\n #_06DB4C: db $00 ; RED JAVELIN GUARD\n #_06DB4D: db $0F ; RED BUSH GUARD\n #_06DB4E: db $3F ; BOMB GUARD\n #_06DB4F: db $00 ; GREEN KNIFE GUARD\n #_06DB50: db $00 ; GELDMAN\n #_06DB51: db $00 ; TOPPO\n #_06DB52: db $40 ; POPO\n #_06DB53: db $40 ; POPO\n #_06DB54: db $44 ; CANNONBALL\n #_06DB55: db $00 ; ARMOS STATUE\n #_06DB56: db $00 ; KING ZORA\n #_06DB57: db $00 ; ARMOS KNIGHT\n #_06DB58: db $00 ; LANMOLAS\n #_06DB59: db $47 ; ZORA / FIREBALL\n #_06DB5A: db $46 ; ZORA\n #_06DB5B: db $00 ; DESERT STATUE\n #_06DB5C: db $00 ; CRAB\n #_06DB5D: db $48 ; LOST WOODS BIRD\n #_06DB5E: db $4A ; LOST WOODS SQUIRREL\n #_06DB5F: db $65 ; SPARK\n #_06DB60: db $65 ; SPARK\n #_06DB61: db $00 ; ROLLER VERTICAL DOWN FIRST\n #_06DB62: db $00 ; ROLLER VERTICAL UP FIRST\n #_06DB63: db $00 ; ROLLER HORIZONTAL RIGHT FIRST\n #_06DB64: db $00 ; ROLLER HORIZONTAL LEFT FIRST\n #_06DB65: db $00 ; BEAMOS\n #_06DB66: db $8F ; MASTERSWORD\n #_06DB67: db $00 ; DEBIRANDO PIT\n #_06DB68: db $00 ; DEBIRANDO\n #_06DB69: db $4C ; ARCHERY GUY\n #_06DB6A: db $4E ; WALL CANNON VERTICAL LEFT\n #_06DB6B: db $4E ; WALL CANNON VERTICAL RIGHT\n #_06DB6C: db $4E ; WALL CANNON HORIZONTAL TOP\n #_06DB6D: db $4E ; WALL CANNON HORIZONTAL BOTTOM\n #_06DB6E: db $00 ; BALL N CHAIN\n #_06DB6F: db $30 ; CANNONBALL / CANNON TROOPER\n #_06DB70: db $24 ; MIRROR PORTAL\n #_06DB71: db $32 ; RAT / CRICKET\n #_06DB72: db $38 ; SNAKE\n #_06DB73: db $3C ; KEESE\n #_06DB74: db $81 ; KING HELMASAUR FIREBALL\n #_06DB75: db $00 ; LEEVER\n #_06DB76: db $52 ; FAIRY POND TRIGGER\n #_06DB77: db $00 ; UNCLE / PRIEST / MANTLE\n #_06DB78: db $00 ; RUNNING MAN\n #_06DB79: db $00 ; BOTTLE MERCHANT\n #_06DB7A: db $00 ; ZELDA\n #_06DB7B: db $00 ; ANTIFAIRY\n #_06DB7C: db $00 ; SAHASRAHLAS WIFE\n #_06DB7D: db $5C ; BEE\n #_06DB7E: db $00 ; AGAHNIM\n #_06DB7F: db $62 ; AGAHNIMS BALLS\n #_06DB80: db $5E ; GREEN STALFOS\n #_06DB81: db $00 ; BIG SPIKE\n #_06DB82: db $00 ; FIREBAR CLOCKWISE\n #_06DB83: db $00 ; FIREBAR COUNTERCLOCKWISE\n #_06DB84: db $65 ; FIRESNAKE\n #_06DB85: db $66 ; HOVER\n #_06DB86: db $00 ; ANTIFAIRY CIRCLE\n #_06DB87: db $00 ; GREEN EYEGORE / GREEN MIMIC\n #_06DB88: db $00 ; RED EYEGORE / RED MIMIC\n #_06DB89: db $00 ; YELLOW STALFOS\n #_06DB8A: db $6E ; KODONGO\n #_06DB8B: db $0E ; KONDONGO FIRE\n #_06DB8C: db $00 ; MOTHULA\n #_06DB8D: db $3B ; MOTHULA BEAM\n #_06DB8E: db $42 ; SPIKE BLOCK\n #_06DB8F: db $00 ; GIBDO\n #_06DB90: db $00 ; ARRGHUS\n #_06DB91: db $75 ; ARRGHI\n #_06DB92: db $78 ; TERRORPIN\n #_06DB93: db $7B ; BLOB\n #_06DB94: db $00 ; WALLMASTER\n #_06DB95: db $00 ; STALFOS KNIGHT\n #_06DB96: db $CF ; KING HELMASAUR\n #_06DB97: db $00 ; BUMPER\n #_06DB98: db $84 ; PIROGUSU\n #_06DB99: db $8D ; LASER EYE LEFT\n #_06DB9A: db $8D ; LASER EYE RIGHT\n #_06DB9B: db $8D ; LASER EYE TOP\n #_06DB9C: db $8D ; LASER EYE BOTTOM\n #_06DB9D: db $00 ; PENGATOR\n #_06DB9E: db $94 ; KYAMERON\n #_06DB9F: db $75 ; WIZZROBE\n #_06DBA0: db $A0 ; ZORO\n #_06DBA1: db $00 ; BABASU\n #_06DBA2: db $00 ; HAUNTED GROVE OSTRITCH\n #_06DBA3: db $A2 ; HAUNTED GROVE RABBIT\n #_06DBA4: db $A6 ; HAUNTED GROVE BIRD\n #_06DBA5: db $00 ; FREEZOR\n #_06DBA6: db $00 ; KHOLDSTARE\n #_06DBA7: db $00 ; KHOLDSTARE SHELL\n #_06DBA8: db $B1 ; FALLING ICE\n #_06DBA9: db $00 ; BLUE ZAZAK\n #_06DBAA: db $B5 ; RED ZAZAK\n #_06DBAB: db $00 ; STALFOS\n #_06DBAC: db $BD ; GREEN ZIRRO\n #_06DBAD: db $00 ; BLUE ZIRRO\n #_06DBAE: db $00 ; PIKIT\n #_06DBAF: db $00 ; CRYSTAL MAIDEN\n #_06DBB0: db $69 ; APPLE\n #_06DBB1: db $00 ; OLD MAN\n #_06DBB2: db $00 ; PIPE DOWN\n #_06DBB3: db $00 ; PIPE UP\n #_06DBB4: db $00 ; PIPE RIGHT\n #_06DBB5: db $00 ; PIPE LEFT\n #_06DBB6: db $5C ; GOOD BEE\n #_06DBB7: db $00 ; PEDESTAL PLAQUE\n #_06DBB8: db $D6 ; PURPLE CHEST\n #_06DBB9: db $E6 ; BOMB SHOP GUY\n #_06DBBA: db $00 ; KIKI\n #_06DBBB: db $00 ; BLIND MAIDEN\n #_06DBBC: db $00 ; DIALOGUE TESTER\n #_06DBBD: db $DB ; BULLY / PINK BALL\n #_06DBBE: db $DA ; WHIRLPOOL\n #_06DBBF: db $E9 ; SHOPKEEPER / CHEST GAME GUY\n #_06DBC0: db $00 ; DRUNKARD\n #_06DBC1: db $00 ; VITREOUS\n #_06DBC2: db $BE ; VITREOUS SMALL EYE\n #_06DBC3: db $C0 ; LIGHTNING\n #_06DBC4: db $6A ; CATFISH\n #_06DBC5: db $00 ; CUTSCENE AGAHNIM\n #_06DBC6: db $F9 ; BOULDER\n #_06DBC7: db $D7 ; GIBO\n #_06DBC8: db $00 ; THIEF\n #_06DBC9: db $00 ; MEDUSA\n #_06DBCA: db $00 ; 4WAY SHOOTER\n #_06DBCB: db $D8 ; POKEY\n #_06DBCC: db $00 ; BIG FAIRY\n #_06DBCD: db $00 ; TEKTITE / FIREBAT\n #_06DBCE: db $DE ; CHAIN CHOMP\n #_06DBCF: db $E3 ; TRINEXX ROCK HEAD\n #_06DBD0: db $00 ; TRINEXX FIRE HEAD\n #_06DBD1: db $00 ; TRINEXX ICE HEAD\n #_06DBD2: db $00 ; BLIND\n #_06DBD3: db $EB ; SWAMOLA\n #_06DBD4: db $00 ; LYNEL\n #_06DBD5: db $00 ; BUNNYBEAM / SMOKE\n #_06DBD6: db $00 ; FLOPPING FISH\n #_06DBD7: db $00 ; STAL\n #_06DBD8: db $00 ; LANDMINE\n #_06DBD9: db $00 ; DIG GAME GUY\n #_06DBDA: db $F4 ; GANON\n #_06DBDB: db $F4 ; GANON\n #_06DBDC: db $1D ; HEART\n #_06DBDD: db $1F ; GREEN RUPEE\n #_06DBDE: db $1F ; BLUE RUPEE\n #_06DBDF: db $1F ; RED RUPEE\n #_06DBE0: db $20 ; BOMB REFILL 1\n #_06DBE1: db $20 ; BOMB REFILL 4\n #_06DBE2: db $20 ; BOMB REFILL 8\n #_06DBE3: db $21 ; SMALL MAGIC DECANTER\n #_06DBE4: db $22 ; LARGE MAGIC DECANTER\n #_06DBE5: db $23 ; ARROW REFILL 5\n #_06DBE6: db $23 ; ARROW REFILL 10\n #_06DBE7: db $25 ; FAIRY\n #_06DBE8: db $28 ; SMALL KEY\n #_06DBE9: db $6A ; BIG KEY\n #_06DBEA: db $F6 ; STOLEN SHIELD\n #_06DBEB: db $29 ; MUSHROOM\n #_06DBEC: db $00 ; FAKE MASTER SWORD\n #_06DBED: db $00 ; MAGIC SHOP ASSISTANT\n #_06DBEE: db $CD ; HEART CONTAINER\n #_06DBEF: db $CE ; HEART PIECE\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleLarge_long", + "code": "SpriteDraw_SingleLarge_long:\n #_06DBF0: PHB\n #_06DBF1: PHK\n #_06DBF2: PLB\n\n #_06DBF3: JSR SpriteDraw_SingleLarge\n\n #_06DBF6: PLB\n\n #_06DBF7: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleSmall_long", + "code": "SpriteDraw_SingleSmall_long:\n #_06DBF8: PHB\n #_06DBF9: PHK\n #_06DBFA: PLB\n\n #_06DBFB: JSR SpriteDraw_SingleSmall\n\n #_06DBFE: PLB\n\n #_06DBFF: RTL", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06DC00", + "code": "UNREACHABLE_06DC00:\n #_06DC00: db $00, $00, $01, $01, $01, $02, $02, $02\n #_06DC08: db $02, $03, $03, $03, $03, $03, $03, $03\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleLarge", + "code": "SpriteDraw_SingleLarge:\n #_06DC10: JSR Sprite_PrepOAMCoord\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleLarge_skipcoords", + "code": "SpriteDraw_SingleLarge_skipcoords:\n #_06DC13: LDA.b $00 ; save X coordinate\n #_06DC15: STA.b ($90),Y\n\n #_06DC17: LDA.b $01 ; get bit 8 of X for the other table\n #_06DC19: CMP.b #$01\n\n #_06DC1B: LDA.b #$01\n #_06DC1D: ROL A\n #_06DC1E: STA.b ($92)\n\n #_06DC20: REP #$20\n\n #_06DC22: LDA.b $02 ; get Y coordinate\n #_06DC24: INY\n #_06DC25: CLC\n #_06DC26: ADC.w #$0010 ; adjust it to see where it will end up\n #_06DC29: CMP.w #$0100\n\n #_06DC2C: SEP #$20\n #_06DC2E: BCS .off_screen\n\n #_06DC30: SBC.b #$0F\n #_06DC32: STA.b ($90),Y\n\n #_06DC34: PHY\n\n #_06DC35: LDY.w $0E20,X\n\n #_06DC38: LDA.w SpriteDraw_ClassToChar,Y\n #_06DC3B: CLC\n #_06DC3C: ADC.w $0DC0,X\n #_06DC3F: TAY\n\n #_06DC40: LDA.w SpriteDraw_IDtoClass,Y\n\n #_06DC43: PLY\n #_06DC44: INY\n #_06DC45: STA.b ($90),Y\n\n #_06DC47: LDA.b $05\n #_06DC49: INY\n #_06DC4A: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n#SpriteDraw_Shadow_Conditional:\n.off_screen\n #_06DC4C: LDA.w $0E60,X\n #_06DC4F: AND.b #$10\n #_06DC51: BNE SpriteDraw_Shadow\n\n #_06DC53: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Shadow_long", + "code": "SpriteDraw_Shadow_long:\n #_06DC54: PHB\n #_06DC55: PHK\n #_06DC56: PLB\n\n #_06DC57: JSR SpriteDraw_Shadow\n\n #_06DC5A: PLB\n\n #_06DC5B: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Shadow_custom_long", + "code": "SpriteDraw_Shadow_custom_long:\n #_06DC5C: PHB\n #_06DC5D: PHK\n #_06DC5E: PLB\n\n #_06DC5F: JSR SpriteDraw_Shadow_custom\n\n #_06DC62: PLB\n\n #_06DC63: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Shadow", + "code": "SpriteDraw_Shadow:\n #_06DC64: LDA.b #$0A\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_Shadow_custom", + "code": "SpriteDraw_Shadow_custom:\n #_06DC66: CLC\n #_06DC67: ADC.w $0D00,X\n #_06DC6A: STA.b $02\n\n #_06DC6C: LDA.w $0D20,X\n #_06DC6F: ADC.b #$00\n #_06DC71: STA.b $03\n\n #_06DC73: LDA.w $0F00,X\n #_06DC76: BNE .no_shadow\n\n #_06DC78: LDA.w $0DD0,X\n #_06DC7B: CMP.b #$0A\n #_06DC7D: BNE .not_being_carried\n\n #_06DC7F: LDA.l $7FFA1C,X\n #_06DC83: CMP.b #$03\n #_06DC85: BEQ .no_shadow\n\n.not_being_carried\n #_06DC87: REP #$20\n\n #_06DC89: LDA.b $02\n #_06DC8B: SEC\n #_06DC8C: SBC.b $E8\n #_06DC8E: STA.b $02\n\n #_06DC90: CLC\n #_06DC91: ADC.w #$0010\n #_06DC94: CMP.w #$0100\n\n #_06DC97: SEP #$20\n #_06DC99: BCS .offscreen\n\n #_06DC9B: LDA.w $0E40,X\n #_06DC9E: AND.b #$1F\n #_06DCA0: ASL A\n #_06DCA1: ASL A\n #_06DCA2: TAY\n\n #_06DCA3: LDA.b $00\n #_06DCA5: STA.b ($90),Y\n\n #_06DCA7: LDA.w $0E60,X\n #_06DCAA: AND.b #$20\n #_06DCAC: BEQ .no_offset\n\n #_06DCAE: INY\n\n #_06DCAF: LDA.b ($90),Y ; useless\n\n #_06DCB1: LDA.b $02\n #_06DCB3: INC A\n #_06DCB4: STA.b ($90),Y\n\n #_06DCB6: INY\n\n #_06DCB7: LDA.b #$38\n #_06DCB9: STA.b ($90),Y\n\n #_06DCBB: LDA.b $05\n #_06DCBD: AND.b #$30\n #_06DCBF: ORA.b #$08\n\n #_06DCC1: INY\n #_06DCC2: STA.b ($90),Y\n\n #_06DCC4: TYA\n #_06DCC5: LSR A\n #_06DCC6: LSR A\n #_06DCC7: TAY\n\n #_06DCC8: LDA.b $01\n #_06DCCA: AND.b #$01\n #_06DCCC: STA.b ($92),Y\n\n.no_shadow\n #_06DCCE: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleSmall", + "code": "SpriteDraw_SingleSmall:\n #_06DCEF: JSR Sprite_PrepOAMCoord\n\n #_06DCF2: LDA.b $00\n #_06DCF4: STA.b ($90),Y\n\n #_06DCF6: LDA.b $01\n #_06DCF8: CMP.b #$01\n\n #_06DCFA: LDA.b #$00\n #_06DCFC: ROL A\n #_06DCFD: STA.b ($92)\n\n #_06DCFF: REP #$20\n\n #_06DD01: LDA.b $02\n #_06DD03: INY\n #_06DD04: CLC\n #_06DD05: ADC.w #$0010\n #_06DD08: CMP.w #$0100\n\n #_06DD0B: SEP #$20\n #_06DD0D: BCS SpriteDraw_SingleSmall_DoShadow\n\n #_06DD0F: SBC.b #$0F\n #_06DD11: STA.b ($90),Y\n\n #_06DD13: PHY\n\n #_06DD14: LDY.w $0E20,X\n\n #_06DD17: LDA.w SpriteDraw_ClassToChar,Y\n #_06DD1A: CLC\n #_06DD1B: ADC.w $0DC0,X\n #_06DD1E: TAY\n\n #_06DD1F: LDA.w SpriteDraw_IDtoClass,Y\n\n #_06DD22: PLY\n #_06DD23: INY\n\n #_06DD24: STA.b ($90),Y\n\n #_06DD26: LDA.b $05\n #_06DD28: INY\n #_06DD29: STA.b ($90),Y\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_SingleSmall_DoShadow", + "code": "SpriteDraw_SingleSmall_DoShadow:\n #_06DD2B: LDA.w $0E60,X\n #_06DD2E: AND.b #$10\n #_06DD30: BEQ .no_shadow\n\n #_06DD32: LDA.b #$02\n #_06DD34: JMP.w SpriteDraw_Shadow_custom\n\n.no_shadow\n #_06DD37: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DrawThinAndTall_long", + "code": "Sprite_DrawThinAndTall_long:\n #_06DD38: PHB\n #_06DD39: PHK\n #_06DD3A: PLB\n\n #_06DD3B: JSR Sprite_DrawThinAndTall\n\n #_06DD3E: PLB\n\n #_06DD3F: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DrawThinAndTall", + "code": "Sprite_DrawThinAndTall:\n #_06DD40: JSR Sprite_PrepOAMCoord\n\n #_06DD43: LDA.b $00\n #_06DD45: STA.b ($90),Y\n\n #_06DD47: LDY.b #$04\n #_06DD49: STA.b ($90),Y\n\n #_06DD4B: LDA.b $01\n #_06DD4D: CMP.b #$01\n\n #_06DD4F: LDA.b #$00\n #_06DD51: ROL A\n\n #_06DD52: LDY.b #$00\n #_06DD54: STA.b ($92),Y\n\n #_06DD56: INY\n #_06DD57: STA.b ($92),Y\n\n #_06DD59: REP #$20\n\n #_06DD5B: LDA.b $02\n #_06DD5D: LDY.b #$01\n #_06DD5F: STA.b ($90),Y\n\n #_06DD61: CLC\n #_06DD62: ADC.w #$0010\n #_06DD65: CMP.w #$0100\n #_06DD68: BCC .on_screen\n\n #_06DD6A: LDA.w #$00F0\n #_06DD6D: STA.b ($90),Y\n\n.on_screen\n #_06DD6F: LDA.b $02\n #_06DD71: CLC\n #_06DD72: ADC.w #$0008\n\n #_06DD75: LDY.b #$05\n #_06DD77: STA.b ($90),Y\n\n #_06DD79: CLC\n #_06DD7A: ADC.w #$0010\n #_06DD7D: CMP.w #$0100\n #_06DD80: BCC .not_off_screen\n\n #_06DD82: LDA.w #$00F0\n #_06DD85: STA.b ($90),Y\n\n.not_off_screen\n #_06DD87: SEP #$20\n\n #_06DD89: LDY.w $0E20,X\n\n #_06DD8C: LDA.w SpriteDraw_ClassToChar,Y\n #_06DD8F: CLC\n #_06DD90: ADC.w $0DC0,X\n #_06DD93: TAY\n\n #_06DD94: LDA.w SpriteDraw_IDtoClass,Y\n #_06DD97: LDY.b #$02\n #_06DD99: STA.b ($90),Y\n\n #_06DD9B: CLC\n #_06DD9C: ADC.b #$10\n #_06DD9E: LDY.b #$06\n #_06DDA0: STA.b ($90),Y\n\n #_06DDA2: LDA.b $05\n #_06DDA4: LDY.b #$03\n #_06DDA6: STA.b ($90),Y\n\n #_06DDA8: LDY.b #$07\n #_06DDAA: STA.b ($90),Y\n\n #_06DDAC: JMP.w SpriteDraw_Shadow_Conditional\n\n; =========================================================\n\npool Sprite_02_StalfosHead\n\n.flip\n #_06DDAF: db $00, $00, $00, $40\n\n.anim_step\n #_06DDB3: db $00, $01, $02, $01\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_02_StalfosHead", + "code": "Sprite_02_StalfosHead:\n #_06DDB7: LDA.b $EE\n #_06DDB9: STA.w $0F20,X\n\n #_06DDBC: LDA.w $0E00,X\n #_06DDBF: BEQ .keep_region\n\n #_06DDC1: LDA.b #$08\n #_06DDC3: JSL SpriteDraw_AllocateOAMFromRegionC\n\n.keep_region\n #_06DDC7: LDA.w $0E80,X\n #_06DDCA: LSR A\n #_06DDCB: LSR A\n #_06DDCC: LSR A\n #_06DDCD: AND.b #$03\n #_06DDCF: TAY\n\n #_06DDD0: LDA.w $0F50,X\n #_06DDD3: AND.b #$BF\n #_06DDD5: ORA.w .flip,Y\n #_06DDD8: STA.w $0F50,X\n\n #_06DDDB: LDA.w .anim_step,Y\n #_06DDDE: STA.w $0DC0,X\n\n #_06DDE1: LDA.b #$30\n #_06DDE3: STA.w $0B89,X\n\n #_06DDE6: JSR SpriteDraw_SingleLarge\n #_06DDE9: JSR Sprite_CheckIfActive_Bank06\n #_06DDEC: JSR Sprite_CheckIfRecoiling_Bank06\n #_06DDEF: JSR Sprite_CheckDamageToAndFromLink_Bank06\n\n #_06DDF2: LDA.w $0EA0,X\n #_06DDF5: BEQ .not_recoiling\n\n #_06DDF7: JSR Sprite_ZeroVelocity_XY_Bank06\n\n.not_recoiling\n #_06DDFA: JSR Sprite_Move_XY_Bank06\n\n #_06DDFD: INC.w $0E80,X\n\n #_06DE00: LDA.w $0DF0,X\n #_06DE03: BEQ .delay_turn\n\n #_06DE05: AND.b #$01\n #_06DE07: BNE .exit\n\n #_06DE09: LDA.b #$10\n #_06DE0B: JSR Sprite_ProjectSpeedTowardsLink\n\n; ---------------------------------------------------------\n\n.handle_movement\n #_06DE0E: LDA.w $0D40,X\n #_06DE11: CMP.b $00\n #_06DE13: BEQ .check_x\n #_06DE15: BPL .too_far_down\n\n.too_far_up\n #_06DE17: INC.w $0D40,X\n #_06DE1A: BRA .check_x\n\n.too_far_down\n #_06DE1C: DEC.w $0D40,X\n\n.check_x\n #_06DE1F: LDA.w $0D50,X\n #_06DE22: CMP.b $01\n #_06DE24: BEQ .exit\n #_06DE26: BPL .too_far_right\n\n.too_far_left\n #_06DE28: INC.w $0D50,X\n #_06DE2B: BRA .exit\n\n.too_far_right\n #_06DE2D: DEC.w $0D50,X\n\n.exit\n #_06DE30: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Carried", + "code": "SpriteModule_Carried:\n #_06DE83: LDA.w $040A\n #_06DE86: STA.w $0C9A,X\n\n #_06DE89: LDA.l $7FFA1C,X\n #_06DE8D: CMP.b #$03\n #_06DE8F: BEQ .lifted\n\n #_06DE91: LDA.w $0DF0,X\n #_06DE94: BNE .wait_for_timer\n\n #_06DE96: LDA.b #$04\n\n #_06DE98: LDY.w $0DB0,X\n #_06DE9B: CPY.b #$06\n #_06DE9D: BNE .not_large\n\n #_06DE9F: LDA.b #$08\n\n.not_large\n #_06DEA1: STA.w $0DF0,X\n\n #_06DEA4: LDA.l $7FFA1C,X\n #_06DEA8: INC A\n #_06DEA9: STA.l $7FFA1C,X\n\n.wait_for_timer\n #_06DEAD: BRA .continue\n\n.lifted\n #_06DEAF: LDA.w $0E60,X\n #_06DEB2: AND.b #$EF\n #_06DEB4: STA.w $0E60,X\n\n; ---------------------------------------------------------\n\n.continue\n #_06DEB7: STZ.b $00\n\n #_06DEB9: LDA.w $0F10,X\n #_06DEBC: DEC A\n\n #_06DEBD: CMP.b #$3F\n #_06DEBF: BCS .no_x_shake\n\n #_06DEC1: AND.b #$02\n #_06DEC3: BEQ .no_x_shake\n\n #_06DEC5: INC.b $00\n\n; ---------------------------------------------------------\n\n.no_x_shake\n #_06DEC7: LDA.b $2F\n #_06DEC9: ASL A\n #_06DECA: CLC\n #_06DECB: ADC.l $7FFA1C,X\n #_06DECF: TAY\n\n #_06DED0: LDA.b $22\n #_06DED2: CLC\n #_06DED3: ADC.w .offset_x_low,Y\n #_06DED6: PHP\n\n #_06DED7: ADC.b $00\n #_06DED9: STA.w $0D10,X\n\n #_06DEDC: LDA.b $23\n #_06DEDE: ADC.b #$00\n\n #_06DEE0: PLP\n #_06DEE1: ADC.w .offset_x_high,Y\n #_06DEE4: STA.w $0D30,X\n\n #_06DEE7: LDA.w .offset_z,Y\n #_06DEEA: STA.w $0F70,X\n\n; ---------------------------------------------------------\n\n #_06DEED: LDY.b $2E\n #_06DEEF: CPY.b #$06\n #_06DEF1: BCC .valid_animation_step\n\n #_06DEF3: LDY.b #$00\n\n.valid_animation_step\n #_06DEF5: LDA.b $24\n #_06DEF7: CLC\n #_06DEF8: ADC.b #$01\n #_06DEFA: PHP\n\n #_06DEFB: CLC\n #_06DEFC: ADC.w .offset_y_low,Y\n #_06DEFF: STA.b $00\n\n #_06DF01: LDA.b $25\n #_06DF03: ADC.b #$00\n\n #_06DF05: PLP\n #_06DF06: ADC.b #$00\n #_06DF08: STA.b $0E\n\n #_06DF0A: LDA.b $20\n #_06DF0C: SEC\n #_06DF0D: SBC.b $00\n #_06DF0F: PHP\n\n #_06DF10: CLC\n #_06DF11: ADC.b #$08\n #_06DF13: STA.w $0D00,X\n\n #_06DF16: LDA.b $21\n #_06DF18: ADC.b #$00\n\n #_06DF1A: PLP\n #_06DF1B: SBC.b $0E\n #_06DF1D: STA.w $0D20,X\n\n #_06DF20: LDA.b $EE\n #_06DF22: AND.b #$01\n #_06DF24: STA.w $0F20,X\n\n #_06DF27: JSR CarriedSprite_CheckForThrow\n #_06DF2A: JSR Sprite_Get16BitCoords\n\n #_06DF2D: LDA.l $7FFA2C,X\n #_06DF31: CMP.b #$0B\n #_06DF33: BEQ .am_freezed\n\n; ---------------------------------------------------------\n\n #_06DF35: JSR SpriteModule_Active\n\n #_06DF38: LDA.w $0F10,X\n #_06DF3B: DEC A\n #_06DF3C: BNE EXIT_06DF5D\n\n #_06DF3E: LDA.b #$09\n #_06DF40: STA.w $0DD0,X\n\n #_06DF43: STZ.w $0DA0,X\n\n #_06DF46: LDA.b #$60\n #_06DF48: STA.w $0F10,X\n\n #_06DF4B: LDA.b #$20\n #_06DF4D: STA.w $0F80,X\n\n #_06DF50: LDA.w $0E60,X\n #_06DF53: ORA.b #$10\n #_06DF55: STA.w $0E60,X\n\n #_06DF58: LDA.b #$02\n #_06DF5A: STA.w $0309\n\n; ---------------------------------------------------------\n\n#EXIT_06DF5D:\n #_06DF5D: RTS", + "file": "bank_06.asm" + }, + { + "name": "CarriedSprite_CheckForThrow", + "code": "CarriedSprite_CheckForThrow:\n #_06DF6D: LDA.w $0010\n #_06DF70: CMP.b #$0E\n #_06DF72: BEQ EXIT_06DF5D\n\n #_06DF74: LDA.b $5B\n #_06DF76: CMP.b #$02\n #_06DF78: BEQ .forced_throw\n\n #_06DF7A: LDA.b $4D\n #_06DF7C: AND.b #$01\n\n #_06DF7E: LDY.w $037B\n #_06DF81: BNE .link_not_hittable\n\n #_06DF83: ORA.w $0046\n\n.link_not_hittable\n #_06DF86: ORA.w $0345\n #_06DF89: ORA.w $02E0\n #_06DF8C: ORA.w $02DA\n #_06DF8F: BNE .forced_throw\n\n #_06DF91: LDA.l $7FFA1C,X\n #_06DF95: CMP.b #$03\n #_06DF97: BNE .no_throw\n\n #_06DF99: LDA.b $F4\n #_06DF9B: ORA.b $F6\n #_06DF9D: BPL .no_throw\n\n #_06DF9F: ASL.b $F6\n #_06DFA1: LSR.b $F6\n\n; ---------------------------------------------------------\n\n.forced_throw\n #_06DFA3: LDA.b #$13 ; SFX3.13\n #_06DFA5: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06DFA9: LDA.b #$02\n #_06DFAB: STA.w $0309\n\n #_06DFAE: LDA.l $7FFA2C,X\n #_06DFB2: STA.w $0DD0,X\n\n #_06DFB5: STZ.w $0F80,X\n\n #_06DFB8: LDA.b #$00\n #_06DFBA: STA.l $7FFA1C,X\n\n; ---------------------------------------------------------\n\n #_06DFBE: PHX\n\n #_06DFBF: LDA.w $0E20,X\n #_06DFC2: TAX\n\n #_06DFC3: LDA.l SpriteData_OAMProp,X\n\n #_06DFC7: PLX\n\n #_06DFC8: AND.b #$10\n #_06DFCA: STA.b $00\n\n #_06DFCC: LDA.w $0E60,X\n #_06DFCF: AND.b #$EF\n #_06DFD1: ORA.b $00\n #_06DFD3: STA.w $0E60,X\n\n #_06DFD6: LDA.b $2F\n #_06DFD8: LSR A\n #_06DFD9: TAY\n\n #_06DFDA: LDA.w .throw_speed_x,Y\n #_06DFDD: STA.w $0D50,X\n\n #_06DFE0: LDA.w .throw_speed_y,Y\n #_06DFE3: STA.w $0D40,X\n\n #_06DFE6: LDA.w .throw_speed_z,Y\n #_06DFE9: STA.w $0F80,X\n\n #_06DFEC: LDA.b #$00\n #_06DFEE: STA.w $0F10,X\n\n.no_throw\n #_06DFF1: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrownSprite_TileAndSpriteInteraction_long", + "code": "ThrownSprite_TileAndSpriteInteraction_long:\n #_06DFF2: PHB\n #_06DFF3: PHK\n #_06DFF4: PLB\n\n #_06DFF5: JSR ThrownSprite_TileAndSpriteInteraction\n\n #_06DFF8: PLB\n\n #_06DFF9: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Stunned", + "code": "SpriteModule_Stunned:\n #_06DFFA: JSR HandleFreezeAndStunTimer\n #_06DFFD: JSR Sprite_CheckIfActivePermissive_Bank06\n\n #_06E000: LDA.w $0EA0,X\n #_06E003: BEQ .not_recoiling\n #_06E005: BPL .recoil_timer_ticking\n\n #_06E007: STZ.w $0EA0,X\n\n.recoil_timer_ticking\n #_06E00A: JSR Sprite_ZeroVelocity_XY_Bank06\n\n.not_recoiling\n #_06E00D: LDA.w $0DF0,X\n #_06E010: CMP.b #$20\n #_06E012: BCS .delay_damage\n\n #_06E014: JSR Sprite_CheckDamageFromLink\n\n.delay_damage\n #_06E017: JSR Sprite_CheckIfRecoiling_Bank06\n #_06E01A: JSR Sprite_Move_XY_Bank06\n\n #_06E01D: LDA.w $0E90,X\n #_06E020: BNE .skip_tile_collision\n\n #_06E022: JSR Sprite_CheckTileCollision\n\n #_06E025: LDA.w $0DD0,X\n #_06E028: BEQ .not_even_here_exit\n\n; =========================================================\n\n#ThrownSprite_TileAndSpriteInteraction:\n #_06E02A: LDA.w $0E70,X\n #_06E02D: AND.b #$0F\n #_06E02F: BEQ .skip_tile_collision\n\n #_06E031: JSR Sprite_ApplyRicochet\n\n #_06E034: LDA.w $0DD0,X\n #_06E037: CMP.b #$0B\n #_06E039: BNE .skip_tile_collision\n\n #_06E03B: LDA.b #$05 ; SFX2.05\n #_06E03D: JSL SpriteSFX_QueueSFX2WithPan\n\n.skip_tile_collision\n #_06E041: LDY.b #$68\n #_06E043: JSR Sprite_CheckTileProperty\n\n #_06E046: PHX\n\n #_06E047: LDA.w $0E20,X\n #_06E04A: TAX\n\n #_06E04B: LDA.l SpriteData_OAMProp,X\n\n #_06E04F: PLX\n\n #_06E050: AND.b #$10\n #_06E052: BEQ .not_over_pit\n\n #_06E054: LDA.w $0E60,X\n #_06E057: ORA.b #$10\n #_06E059: STA.w $0E60,X\n\n #_06E05C: LDA.w $0FA5\n #_06E05F: CMP.b #$20 ; TILETYPE 20\n #_06E061: BNE .not_over_pit\n\n #_06E063: JSR Sprite_DisableShadowFlag\n\n.not_over_pit\n #_06E066: JSR Sprite_Move_Z_Bank06\n\n #_06E069: DEC.w $0F80,X\n #_06E06C: DEC.w $0F80,X\n\n #_06E06F: LDA.w $0F70,X\n #_06E072: DEC A\n #_06E073: CMP.b #$F0\n #_06E075: BCS .not_too_high\n\n #_06E077: JMP.w .check_for_freeze\n\n.not_too_high\n #_06E07A: STZ.w $0F70,X\n\n #_06E07D: LDA.w $0E20,X\n #_06E080: CMP.b #$E8 ; SPRITE E8\n #_06E082: BNE .dont_set_death_state\n\n #_06E084: LDA.w $0F80,X\n #_06E087: CMP.b #$E8\n #_06E089: BPL .dont_set_death_state\n\n #_06E08B: LDA.b #$06\n #_06E08D: STA.w $0DD0,X\n\n #_06E090: LDA.b #$08\n #_06E092: STA.w $0DF0,X\n\n; =========================================================\n\n#Sprite_ChangeOAMAllotmentTo4:\n #_06E095: LDA.b #$03\n #_06E097: STA.w $0E40,X\n\n.not_even_here_exit\n #_06E09A: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrowableScenery_InteractWithSpritesAndTiles", + "code": "ThrowableScenery_InteractWithSpritesAndTiles:\n #_06E164: JSR Sprite_Move_XY_Bank06\n #_06E167: LDA.w $0E90,X\n #_06E16A: BNE .skip_tile_collision\n\n #_06E16C: JSR Sprite_CheckTileCollision\n\n.skip_tile_collision\n #_06E16F: JMP.w ThrownSprite_TileAndSpriteInteraction\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "ThrownSprite_CheckDamageToSprites", + "code": "ThrownSprite_CheckDamageToSprites:\n #_06E172: LDA.w $0F10,X\n #_06E175: BNE EXIT_06E1B1\n\n #_06E177: LDA.w $0D50,X\n #_06E17A: ORA.w $0D40,X\n #_06E17D: BEQ EXIT_06E1B1\n\n #_06E17F: LDY.b #$0F\n\n.next\n #_06E181: PHY\n #_06E182: CPY.w $0FA0\n #_06E185: BEQ .skip\n\n #_06E187: LDA.w $0E20,X\n #_06E18A: CMP.b #$D2 ; SPRITE D2\n #_06E18C: BEQ .skip\n\n #_06E18E: LDA.w $0DD0,Y\n #_06E191: CMP.b #$09\n #_06E193: BCC .skip\n\n #_06E195: TYA\n #_06E196: EOR.b $1A\n #_06E198: AND.b #$03\n #_06E19A: ORA.w $0BA0,Y\n #_06E19D: ORA.w $0EF0,Y\n #_06E1A0: BNE .skip\n\n #_06E1A2: LDA.w $0F20,X\n #_06E1A5: CMP.w $0F20,Y\n #_06E1A8: BNE .skip\n\n #_06E1AA: JSR ThrownSprite_CheckDamageToSingleSprite\n\n.skip\n #_06E1AD: PLY\n #_06E1AE: DEY\n #_06E1AF: BPL .next\n\n; ---------------------------------------------------------\n\n#EXIT_06E1B1:\n #_06E1B1: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrownSprite_CheckDamageToSingleSprite", + "code": "ThrownSprite_CheckDamageToSingleSprite:\n #_06E1B2: LDA.w $0D10,X\n #_06E1B5: STA.b $00\n\n #_06E1B7: LDA.w $0D30,X\n #_06E1BA: STA.b $08\n\n #_06E1BC: LDA.b #$0F\n #_06E1BE: STA.b $02\n\n #_06E1C0: LDA.w $0D00,X\n #_06E1C3: SEC\n #_06E1C4: SBC.w $0F70,X\n\n #_06E1C7: PHP\n\n #_06E1C8: CLC\n #_06E1C9: ADC.b #$08\n #_06E1CB: STA.b $01\n\n #_06E1CD: LDA.w $0D20,X\n #_06E1D0: ADC.b #$00\n\n #_06E1D2: PLP\n #_06E1D3: SBC.b #$00\n #_06E1D5: STA.b $09\n\n #_06E1D7: LDA.b #$08\n #_06E1D9: STA.b $03\n\n; ---------------------------------------------------------\n\n #_06E1DB: PHX\n\n #_06E1DC: TYX\n\n #_06E1DD: JSR Sprite_SetupHitBox\n\n #_06E1E0: PLX\n\n #_06E1E1: JSR CheckIfHitBoxesOverlap\n #_06E1E4: BCC EXIT_06E1B1\n\n #_06E1E6: LDA.w $0E20,Y\n #_06E1E9: CMP.b #$3F ; SPRITE 3F\n #_06E1EB: BNE .not_tutorial_guard\n\n #_06E1ED: JSL Sprite_PlaceWeaponTink\n\n #_06E1F1: BRA Sprite_ApplyRicochet\n\n; ---------------------------------------------------------\n\n.not_tutorial_guard\n #_06E1F3: LDA.b #$03\n #_06E1F5: PHA\n\n #_06E1F6: LDA.w $0E20,X\n #_06E1F9: CMP.b #$EC ; SPRITE EC\n #_06E1FB: BNE .not_pot\n\n #_06E1FD: LDA.w $0DB0,X\n #_06E200: CMP.b #$02\n #_06E202: BNE .not_pot\n\n #_06E204: LDA.b $1B\n #_06E206: BNE .not_pot\n\n #_06E208: PLA\n\n #_06E209: LDA.b #$01\n #_06E20B: PHA\n\n; ---------------------------------------------------------\n\n.not_pot\n #_06E20C: PLA\n #_06E20D: PHX\n\n #_06E20E: TYX\n #_06E20F: PHY\n\n #_06E210: JSL Ancilla_CheckDamageToSprite_preset\n\n #_06E214: PLY\n #_06E215: PLX\n\n #_06E216: LDA.w $0D50,X\n #_06E219: ASL A\n #_06E21A: STA.w $0F40,Y\n\n #_06E21D: LDA.w $0D40,X\n #_06E220: ASL A\n #_06E221: STA.w $0F30,Y\n\n #_06E224: LDA.b #$10\n #_06E226: STA.w $0F10,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplyRicochet", + "code": "Sprite_ApplyRicochet:\n #_06E229: JSR Sprite_InvertSpeed_XY\n #_06E22C: JSR Sprite_HalveSpeed_XY\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "ThrowableScenery_TransmuteIfValid", + "code": "ThrowableScenery_TransmuteIfValid:\n #_06E22F: LDA.w $0E20,X\n #_06E232: CMP.b #$EC ; SPRITE EC\n #_06E234: BNE EXIT_06E26D\n\n #_06E236: STZ.w $0FAC\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "ThrowableScenery_TransmuteToDebris", + "code": "ThrowableScenery_TransmuteToDebris:\n #_06E239: LDA.w $0DC0,X\n #_06E23C: BEQ .no_secret\n\n #_06E23E: STA.w $0B9C\n\n #_06E241: JSR Sprite_SpawnSecret\n\n #_06E244: STZ.w $0B9C\n\n.no_secret\n #_06E247: LDY.w $0DB0,X\n\n #_06E24A: LDA.b $1B\n #_06E24C: BEQ .overworld\n\n #_06E24E: LDY.b #$00\n\n.overworld\n #_06E250: STZ.w $012E\n\n #_06E253: LDA.w ThrownItemSFX,Y\n #_06E256: JSL SpriteSFX_QueueSFX2WithPan\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ScheduleForBreakage", + "code": "Sprite_ScheduleForBreakage:\n #_06E25A: LDA.b #$1F\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ScheduleForBreakage_parameterized", + "code": "Sprite_ScheduleForBreakage_parameterized:\n #_06E25C: STA.w $0DF0,X\n\n #_06E25F: LDA.b #$06\n #_06E261: STA.w $0DD0,X\n\n #_06E264: LDA.w $0E40,X\n #_06E267: CLC\n #_06E268: ADC.b #$04\n #_06E26A: STA.w $0E40,X\n\n; ---------------------------------------------------------\n\n#EXIT_06E26D:\n #_06E26D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_HalveSpeed_XY", + "code": "Sprite_HalveSpeed_XY:\n #_06E26E: LDA.w $0D50,X\n #_06E271: ASL A\n #_06E272: ROR.w $0D50,X\n\n #_06E275: LDA.w $0D40,X\n #_06E278: ASL A\n #_06E279: ROR.w $0D40,X\n\n #_06E27C: RTS", + "file": "bank_06.asm" + }, + { + "name": "ThrownItemSFX", + "code": "ThrownItemSFX:\n #_06E27D: db $1F ; SFX2.1F\n #_06E27E: db $1F ; SFX2.1F\n #_06E27F: db $1E ; SFX2.1E\n #_06E280: db $1E ; SFX2.1E\n #_06E281: db $1E ; SFX2.1E\n #_06E282: db $1F ; SFX2.1F\n #_06E283: db $1F ; SFX2.1F\n #_06E284: db $1F ; SFX2.1F\n #_06E285: db $1F ; SFX2.1F\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SpawnLeapingFish", + "code": "Sprite_SpawnLeapingFish:\n #_06E286: LDA.b #$D2 ; SPRITE D2\n #_06E288: JSL Sprite_SpawnDynamically\n #_06E28C: BMI .exit\n\n #_06E28E: JSL Sprite_SetSpawnedCoordinates\n\n #_06E292: LDA.b #$02\n #_06E294: STA.w $0D80,Y\n\n #_06E297: LDA.b #$30\n #_06E299: STA.w $0DF0,Y\n\n #_06E29C: LDA.w $0E20,X\n #_06E29F: CMP.b #$D2 ; SPRITE D2\n #_06E2A1: BNE .exit\n\n #_06E2A3: STA.w $0D90,Y\n\n.exit\n #_06E2A6: RTS", + "file": "bank_06.asm" + }, + { + "name": "HandleFreezeAndStunTimer", + "code": "HandleFreezeAndStunTimer:\n #_06E2B6: JSL Sprite_DrawRippleIfInWater\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Frozen", + "code": "SpriteModule_Frozen:\n #_06E2BA: JSR SpriteModule_Active\n\n #_06E2BD: LDA.l $7FFA3C,X\n #_06E2C1: BEQ .not_frozen\n\n #_06E2C3: LDA.w $0DF0,X\n #_06E2C6: CMP.b #$20\n #_06E2C8: BCS .skip_palette\n\n #_06E2CA: LDA.w $0F50,X\n #_06E2CD: AND.b #$F1\n #_06E2CF: ORA.b #$04\n #_06E2D1: STA.w $0F50,X\n\n.skip_palette\n #_06E2D4: LDA.w $0DF0,X\n #_06E2D7: LSR A\n #_06E2D8: LSR A\n #_06E2D9: LSR A\n #_06E2DA: LSR A\n #_06E2DB: TAY\n\n #_06E2DC: TXA\n #_06E2DD: ASL A\n #_06E2DE: ASL A\n #_06E2DF: ASL A\n #_06E2E0: ASL A\n #_06E2E1: EOR.b $1A\n #_06E2E3: ORA.b $11\n #_06E2E5: AND.w .sparkle_mask,Y\n\n #_06E2E8: BNE .exit\n\n #_06E2EA: JSL GetRandomNumber\n #_06E2EE: AND.b #$03\n #_06E2F0: TAY\n\n #_06E2F1: LDA.w .sparkle_offset_low,Y\n #_06E2F4: STA.b $00\n\n #_06E2F6: LDA.w .sparkle_offset_high,Y\n #_06E2F9: STA.b $01\n\n #_06E2FB: JSL GetRandomNumber\n #_06E2FF: AND.b #$03\n #_06E301: TAY\n\n #_06E302: LDA.w .sparkle_offset_low,Y\n #_06E305: STA.b $02\n\n #_06E307: LDA.w .sparkle_offset_high,Y\n #_06E30A: STA.b $03\n\n #_06E30C: JSL GarnishSpawn_Sparkle\n\n.exit\n #_06E310: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Poof", + "code": "SpriteModule_Poof:\n #_06E393: LDA.w $0DF0,X\n #_06E396: BNE .delay\n\n #_06E398: LDA.w $0E20,X\n #_06E39B: CMP.b #$0D ; SPRITE 0D\n #_06E39D: BNE .not_cukeman\n\n #_06E39F: LDY.w $0EB0,X\n #_06E3A2: BEQ .not_cukeman\n\n #_06E3A4: LDY.w $0D10,X\n #_06E3A7: PHY\n\n #_06E3A8: LDY.w $0D30,X\n #_06E3AB: PHY\n\n #_06E3AC: JSR PrepareEnemyDrop\n\n #_06E3AF: PLA\n #_06E3B0: STA.w $0D30,X\n\n #_06E3B3: PLA\n #_06E3B4: STA.w $0D10,X\n\n #_06E3B7: STZ.w $0F80,X\n #_06E3BA: STZ.w $0BA0,X\n\n #_06E3BD: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_PrepOAMCoord_long", + "code": "Sprite_PrepOAMCoord_long:\n #_06E416: JSR Sprite_PrepOAMCoord_wrapper\n\n #_06E419: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_PrepOAMCoord_wrapper", + "code": "Sprite_PrepOAMCoord_wrapper:\n #_06E41A: JSR Sprite_PrepOAMCoord\n\n #_06E41D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_PrepOAMCoord", + "code": "Sprite_PrepOAMCoord:\n #_06E41E: STZ.w $0F00,X\n\n #_06E421: REP #$20\n\n #_06E423: LDA.w $0FD8\n #_06E426: SEC\n #_06E427: SBC.b $E2\n #_06E429: STA.b $00\n\n #_06E42B: CLC\n #_06E42C: ADC.w #$0040\n #_06E42F: CMP.w #$0170\n\n #_06E432: SEP #$20\n #_06E434: BCS .offscreen\n\n; ---------------------------------------------------------\n\n #_06E436: LDA.w $0F70,X\n #_06E439: STA.b $04\n #_06E43B: STZ.b $05\n\n #_06E43D: REP #$20\n\n #_06E43F: LDA.w $0FDA\n #_06E442: SEC\n #_06E443: SBC.b $E8\n #_06E445: PHA\n\n #_06E446: SEC\n #_06E447: SBC.b $04\n #_06E449: STA.b $02\n\n #_06E44B: PLA\n #_06E44C: CLC\n #_06E44D: ADC.w #$0040\n #_06E450: CMP.w #$0170\n\n #_06E453: SEP #$20\n #_06E455: BCC .on_screen\n\n #_06E457: LDA.w $0F60,X\n #_06E45A: AND.b #$20\n #_06E45C: BEQ .disable\n\n; ---------------------------------------------------------\n\n.on_screen\n #_06E45E: CLC\n\n.prep_exit\n #_06E45F: LDA.w $0F50,X\n #_06E462: EOR.w $0B89,X\n #_06E465: STA.b $05\n #_06E467: STZ.b $04\n\n #_06E469: LDA.b $00\n #_06E46B: STA.w $0FA8\n\n #_06E46E: LDA.b $02\n #_06E470: STA.w $0FA9\n\n #_06E473: LDY.b #$00\n\n #_06E475: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileCollision_long", + "code": "Sprite_CheckTileCollision_long:\n #_06E496: PHB\n #_06E497: PHK\n #_06E498: PLB\n\n #_06E499: JSR Sprite_CheckTileCollision\n\n #_06E49C: PLB\n\n #_06E49D: LDA.w $0E70,X\n\n #_06E4A0: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileCollision_set_layer", + "code": "Sprite_CheckTileCollision_set_layer:\n #_06E4A1: LDA.w $0FB6\n #_06E4A4: STA.w $0F20,X\n\n #_06E4A7: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileCollision_check_just_one", + "code": "Sprite_CheckTileCollision_check_just_one:\n #_06E4A8: JMP.w Sprite_CheckTileCollisionSingleLayer\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileCollision", + "code": "Sprite_CheckTileCollision:\n #_06E4AB: STZ.w $0E70,X\n\n #_06E4AE: LDA.w $0F60,X\n #_06E4B1: BMI Sprite_CheckTileCollision_check_just_one\n\n #_06E4B3: LDA.w $046C\n #_06E4B6: BEQ Sprite_CheckTileCollision_check_just_one\n\n #_06E4B8: LDA.w $0F20,X\n #_06E4BB: STA.w $0FB6\n\n #_06E4BE: LDA.b #$01\n #_06E4C0: STA.w $0F20,X\n\n #_06E4C3: JSR Sprite_CheckTileCollisionSingleLayer\n\n #_06E4C6: LDA.w $046C\n #_06E4C9: CMP.b #$04\n #_06E4CB: BEQ Sprite_CheckTileCollision_set_layer\n\n #_06E4CD: STZ.w $0F20,X\n\n #_06E4D0: JSR Sprite_CheckTileCollisionSingleLayer\n\n #_06E4D3: LDA.w $0FA5\n #_06E4D6: STA.l $7FFABC,X\n\n #_06E4DA: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileCollisionSingleLayer", + "code": "Sprite_CheckTileCollisionSingleLayer:\n #_06E4DB: LDA.w $0E40,X\n #_06E4DE: AND.b #$20\n #_06E4E0: BEQ .normal_check\n\n #_06E4E2: LDY.b #$6A\n #_06E4E4: JSR Sprite_CheckTileProperty\n #_06E4E7: BCC .exit_a\n\n #_06E4E9: INC.w $0E70,X\n\n.exit_a\n #_06E4EC: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckForTileInDirection_horizontal", + "code": "Sprite_CheckForTileInDirection_horizontal:\n #_06E5B8: JSR Sprite_CheckTileInDirection\n #_06E5BB: BCC .exit\n\n #_06E5BD: LDA.w Sprite_CheckForTileInDirection_direction_flag,Y\n #_06E5C0: ORA.w $0E70,X\n #_06E5C3: STA.w $0E70,X\n\n #_06E5C6: LDA.w $0E30,X\n #_06E5C9: AND.b #$07\n #_06E5CB: CMP.b #$05\n #_06E5CD: BCS .exit\n\n #_06E5CF: LDA.w $0EA0,X\n #_06E5D2: BEQ .check_once\n\n #_06E5D4: JSR .check_once\n #_06E5D7: JSR .check_once\n\n; ---------------------------------------------------------\n\n.check_once\n #_06E5DA: LDA.w $0D10,X\n #_06E5DD: CLC\n #_06E5DE: ADC.w Sprite_CheckForTileInDirection_pushback_low,Y\n #_06E5E1: STA.w $0D10,X\n\n #_06E5E4: LDA.w $0D30,X\n #_06E5E7: ADC.w Sprite_CheckForTileInDirection_pushback_high,Y\n #_06E5EA: STA.w $0D30,X\n\n.exit\n #_06E5ED: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckForTileInDirection_vertical", + "code": "Sprite_CheckForTileInDirection_vertical:\n #_06E5EE: JSR Sprite_CheckTileInDirection\n #_06E5F1: BCC .exit\n\n #_06E5F3: LDA.w Sprite_CheckForTileInDirection_direction_flag,Y\n #_06E5F6: ORA.w $0E70,X\n #_06E5F9: STA.w $0E70,X\n\n #_06E5FC: LDA.w $0E30,X\n #_06E5FF: AND.b #$07\n #_06E601: CMP.b #$05\n #_06E603: BCS .exit\n\n #_06E605: LDA.w $0EA0,X\n #_06E608: BEQ .check_once\n\n #_06E60A: JSR .check_once\n #_06E60D: JSR .check_once\n\n; ---------------------------------------------------------\n\n.check_once\n #_06E610: LDA.w $0D00,X\n #_06E613: CLC\n #_06E614: ADC.w Sprite_CheckForTileInDirection_pushback_low,Y\n #_06E617: STA.w $0D00,X\n\n #_06E61A: LDA.w $0D20,X\n #_06E61D: ADC.w Sprite_CheckForTileInDirection_pushback_high,Y\n #_06E620: STA.w $0D20,X\n\n.exit\n #_06E623: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteFall_AdjustPosition", + "code": "SpriteFall_AdjustPosition:\n #_06E624: LDA.w $0310\n #_06E627: CLC\n #_06E628: ADC.w $0D00,X\n #_06E62B: STA.w $0D00,X\n\n #_06E62E: LDA.w $0311\n #_06E631: ADC.w $0D20,X\n #_06E634: STA.w $0D20,X\n\n #_06E637: LDA.w $0312\n #_06E63A: CLC\n #_06E63B: ADC.w $0D10,X\n #_06E63E: STA.w $0D10,X\n\n #_06E641: LDA.w $0313\n #_06E644: ADC.w $0D30,X\n #_06E647: STA.w $0D30,X\n\n #_06E64A: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileInDirection", + "code": "Sprite_CheckTileInDirection:\n #_06E72F: STY.b $08\n\n #_06E731: LDA.w SprTileDie,X\n #_06E734: AND.b #$F0\n #_06E736: LSR A\n #_06E737: LSR A\n #_06E738: ADC.b $08\n #_06E73A: ASL A\n #_06E73B: TAY\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckTileProperty", + "code": "Sprite_CheckTileProperty:\n #_06E73C: LDA.b $1B\n #_06E73E: BEQ .overworld\n\n; ---------------------------------------------------------\n\n #_06E740: REP #$20\n\n #_06E742: LDA.w $0FDA\n #_06E745: CLC\n #_06E746: ADC.w #$0008\n #_06E749: AND.w #$01FF\n\n #_06E74C: CLC\n #_06E74D: ADC.w .offset_y,Y\n\n #_06E750: SEC\n #_06E751: SBC.w #$0008\n #_06E754: STA.b $00\n\n #_06E756: CMP.w #$0200\n #_06E759: BCS .continue_check\n\n #_06E75B: LDA.w $0FD8\n #_06E75E: ADC.w #$0008\n #_06E761: AND.w #$01FF\n\n #_06E764: CLC\n #_06E765: ADC.w .offset_x,Y\n\n #_06E768: SEC\n #_06E769: SBC.w #$0008\n #_06E76C: STA.b $02\n\n #_06E76E: CMP.w #$0200\n #_06E771: BRA .continue_check\n\n; ---------------------------------------------------------\n\n.overworld\n #_06E773: REP #$20\n\n #_06E775: LDA.w $0FDA\n #_06E778: CLC\n #_06E779: ADC.w .offset_y,Y\n #_06E77C: STA.b $00\n\n #_06E77E: SEC\n #_06E77F: SBC.w $0FBE\n #_06E782: CMP.w $0FBA\n #_06E785: BCS .continue_check\n\n #_06E787: LDA.w $0FD8\n #_06E78A: CLC\n #_06E78B: ADC.w .offset_x,Y\n #_06E78E: STA.b $02\n\n #_06E790: SEC\n #_06E791: SBC.w $0FBC\n #_06E794: CMP.w $0FB8\n\n; ---------------------------------------------------------\n\n.continue_check\n #_06E797: SEP #$20\n #_06E799: BCC .check_attributes\n\n #_06E79B: JMP.w .check_harmlessness\n\n.check_attributes\n #_06E79E: JSR Sprite_GetTileType\n #_06E7A1: TAY\n\n #_06E7A2: LDA.w $0CAA,X\n #_06E7A5: AND.b #$08\n #_06E7A7: BEQ .dont_use_simplified_attributes\n\n #_06E7A9: PHX\n #_06E7AA: TYX\n\n #_06E7AB: LDY.b $08\n\n #_06E7AD: LDA.l GeneralizedProjectileTileInteraction,X\n\n #_06E7B1: PLX\n\n #_06E7B2: CMP.b #$04\n #_06E7B4: BEQ .check_worldiness\n\n #_06E7B6: CMP.b #$01\n #_06E7B8: BCC .proceed_to_failure\n\n #_06E7BA: LDA.w $0FA5\n #_06E7BD: CMP.b #$10 ; TILETYPE 10\n #_06E7BF: BCC .proceed_to_success\n\n #_06E7C1: CMP.b #$14 ; TILETYPE 14\n #_06E7C3: BCS .proceed_to_success\n\n #_06E7C5: JSR Sprite_CheckSlopedTileCollision\n\n #_06E7C8: JMP.w .load_tile_prop_exit\n\n; ---------------------------------------------------------\n\n.proceed_to_success\n #_06E7CB: JMP.w .succeed_and_exit\n\n; ---------------------------------------------------------\n\n.check_worldiness\n #_06E7CE: LDY.b $1B\n #_06E7D0: BNE .proceed_to_failure\n\n #_06E7D2: STA.w $0E90,X\n\n.proceed_to_failure\n #_06E7D5: JMP.w .fail\n\n; ---------------------------------------------------------\n\n.dont_use_simplified_attributes\n #_06E7D8: LDA.w $0BE0,X\n #_06E7DB: ASL A\n #_06E7DC: BPL .disable_some_checks\n\n #_06E7DE: LDA.w $0E20,X\n #_06E7E1: CMP.b #$D2 ; SPRITE D2\n #_06E7E3: BEQ .is_fish\n\n #_06E7E5: CMP.b #$8A ; SPRITE 8A\n #_06E7E7: BNE .not_spiky_ouchers\n\n.is_fish\n #_06E7E9: CPY.b #$09 ; TILETYPE 09\n #_06E7EB: BEQ .fish_in_deep_water\n\n.not_spiky_ouchers\n #_06E7ED: CMP.b #$94 ; SPRITE 94\n #_06E7EF: BNE .not_pirogusu\n\n #_06E7F1: LDA.w $0E90,X\n #_06E7F4: BEQ .check_for_water\n\n #_06E7F6: BRA .disable_some_checks\n\n; ---------------------------------------------------------\n\n.not_pirogusu\n #_06E7F8: CMP.b #$E3 ; SPRITE E3\n #_06E7FA: BEQ .check_for_water\n\n #_06E7FC: CMP.b #$8C ; SPRITE 8C\n #_06E7FE: BEQ .check_for_water\n\n #_06E800: CMP.b #$9A ; SPRITE 9A\n #_06E802: BEQ .check_for_water\n\n #_06E804: CMP.b #$81 ; SPRITE 81\n #_06E806: BNE .disable_some_checks\n\n.check_for_water\n #_06E808: CPY.b #$08 ; TILETYPE 08\n #_06E80A: BEQ .fail\n\n #_06E80C: CPY.b #$09 ; TILETYPE 09\n\n.fish_in_deep_water\n #_06E80E: BEQ .fail\n\n #_06E810: BRA .succeed_and_exit\n\n; ---------------------------------------------------------\n\n.disable_some_checks\n #_06E812: PHX\n #_06E813: TYX\n\n #_06E814: LDA.l GeneralizedSpriteTileInteraction,X\n\n #_06E818: PLX\n\n #_06E819: LDY.b $08\n #_06E81B: CMP.b #$00\n #_06E81D: BEQ .fail\n\n #_06E81F: LDA.w $0FA5\n #_06E822: CMP.b #$10 ; TILETYPE 10\n #_06E824: BCC .not_slope\n\n #_06E826: CMP.b #$14 ; TILETYPE 14\n #_06E828: BCS .not_slope\n\n #_06E82A: JSR Sprite_CheckSlopedTileCollision\n #_06E82D: BRA .load_tile_prop_exit\n\n; ---------------------------------------------------------\n\n.not_slope\n #_06E82F: CMP.b #$44 ; TILETYPE 44\n #_06E831: BNE .not_spike\n\n #_06E833: LDA.w $0EA0,X\n #_06E836: BEQ .succeed_and_exit\n\n #_06E838: LDA.w $0CE2,X\n #_06E83B: BMI .skip_damage_or_recoil\n\n #_06E83D: LDA.b #$04\n #_06E83F: JSL Ancilla_CheckDamageToSprite_preset\n\n #_06E843: LDA.w $0EF0,X\n #_06E846: BEQ .skip_damage_or_recoil\n\n #_06E848: LDA.b #$99\n #_06E84A: STA.w $0EF0,X\n\n #_06E84D: STZ.w $0EA0,X\n\n.skip_damage_or_recoil\n #_06E850: BRA .succeed_and_exit\n\n; ---------------------------------------------------------\n\n.check_harmlessness\n #_06E852: JSR .succeed_and_exit\n\n #_06E855: LDA.w $0E40,X\n #_06E858: ASL A\n #_06E859: BPL .dont_die\n\n #_06E85B: STZ.w $0DD0,X\n\n #_06E85E: CLC\n\n #_06E85F: RTS", + "file": "bank_06.asm" + }, + { + "name": "GetTileType_long", + "code": "GetTileType_long:\n #_06E87B: PHB\n #_06E87C: PHK\n #_06E87D: PLB\n\n #_06E87E: JSR GetTileType\n\n #_06E881: PLB\n\n #_06E882: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_GetTileType", + "code": "Sprite_GetTileType:\n #_06E883: LDA.w $0F20,X\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "GetTileType", + "code": "GetTileType:\n #_06E886: CMP.b #$01\n\n #_06E888: REP #$30\n\n #_06E88A: STZ.b $05\n #_06E88C: BCC .other_layer\n\n #_06E88E: LDA.w #$1000\n #_06E891: STA.b $05\n\n.other_layer\n #_06E893: LDA.b $1B\n #_06E895: AND.w #$00FF\n #_06E898: BEQ .overworld\n\n; ---------------------------------------------------------\n\n.underworld\n #_06E89A: LDA.b $02\n #_06E89C: AND.w #$01FF\n\n #_06E89F: LSR A\n #_06E8A0: LSR A\n #_06E8A1: LSR A\n\n #_06E8A2: STA.b $04\n\n #_06E8A4: LDA.b $00\n #_06E8A6: AND.w #$01F8\n\n #_06E8A9: ASL A\n #_06E8AA: ASL A\n #_06E8AB: ASL A\n\n #_06E8AC: CLC\n #_06E8AD: ADC.b $04\n\n #_06E8AF: CLC\n #_06E8B0: ADC.b $05\n\n #_06E8B2: PHX\n\n #_06E8B3: TAX\n\n #_06E8B4: LDA.l $7F2000,X\n\n #_06E8B8: PLX\n\n #_06E8B9: SEP #$30\n\n #_06E8BB: STA.w $0FA5\n\n #_06E8BE: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckSlopedTileCollision_long", + "code": "Sprite_CheckSlopedTileCollision_long:\n #_06E8F6: PHB\n #_06E8F7: PHK\n #_06E8F8: PLB\n\n #_06E8F9: JSR Sprite_CheckSlopedTileCollision\n\n #_06E8FC: PLB\n\n #_06E8FD: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckSlopedTileCollision", + "code": "Sprite_CheckSlopedTileCollision:\n #_06E8FE: LDA.b $00\n #_06E900: AND.b #$07\n #_06E902: STA.b $04\n\n #_06E904: LDA.b $02\n #_06E906: AND.b #$07\n #_06E908: STA.b $05\n\n #_06E90A: LDA.w $0FA5\n #_06E90D: SEC\n #_06E90E: SBC.b #$10\n #_06E910: STA.b $06\n\n #_06E912: ASL A\n #_06E913: ASL A\n #_06E914: ASL A\n\n #_06E915: CLC\n #_06E916: ADC.b $05\n #_06E918: TAY\n\n #_06E919: LDA.b $06\n #_06E91B: CMP.b #$02\n #_06E91D: BCC .flip_comparison\n\n #_06E91F: LDA.b $04\n #_06E921: CMP.w .angle,Y\n #_06E924: BRA .exit\n\n; ---------------------------------------------------------\n\n.flip_comparison\n #_06E926: LDA.w .angle,Y\n #_06E929: CMP.b $04\n\n.exit\n #_06E92B: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Move_XY_Bank06", + "code": "Sprite_Move_XY_Bank06:\n #_06E92C: JSR Sprite_Move_X_Bank06\n\n #_06E92F: JMP.w Sprite_Move_Y_Bank06\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Move_X_Bank06", + "code": "Sprite_Move_X_Bank06:\n #_06E932: TXA\n #_06E933: CLC\n #_06E934: ADC.b #$10\n #_06E936: TAX\n\n #_06E937: JSR Sprite_Move_Y_Bank06\n\n #_06E93A: LDX.w $0FA0\n\n #_06E93D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Move_Y_Bank06", + "code": "Sprite_Move_Y_Bank06:\n #_06E93E: LDA.w $0D40,X\n #_06E941: BEQ .exit\n\n #_06E943: ASL A\n #_06E944: ASL A\n #_06E945: ASL A\n #_06E946: ASL A\n\n #_06E947: CLC\n #_06E948: ADC.w $0D60,X\n #_06E94B: STA.w $0D60,X\n\n #_06E94E: LDA.w $0D40,X\n #_06E951: PHP\n\n #_06E952: LSR A\n #_06E953: LSR A\n #_06E954: LSR A\n #_06E955: LSR A\n\n #_06E956: LDY.b #$00\n\n #_06E958: PLP\n #_06E959: BPL .positive_velocity\n\n #_06E95B: ORA.b #$F0\n #_06E95D: DEY\n\n.positive_velocity\n #_06E95E: ADC.w $0D00,X\n #_06E961: STA.w $0D00,X\n\n #_06E964: TYA\n #_06E965: ADC.w $0D20,X\n #_06E968: STA.w $0D20,X\n\n.exit\n #_06E96B: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_Move_Z_Bank06", + "code": "Sprite_Move_Z_Bank06:\n #_06E96C: LDA.w $0F80,X\n\n #_06E96F: ASL A\n #_06E970: ASL A\n #_06E971: ASL A\n #_06E972: ASL A\n\n #_06E973: CLC\n #_06E974: ADC.w $0F90,X\n #_06E977: STA.w $0F90,X\n\n #_06E97A: LDA.w $0F80,X\n #_06E97D: PHP\n\n #_06E97E: LSR A\n #_06E97F: LSR A\n #_06E980: LSR A\n #_06E981: LSR A\n\n #_06E982: PLP\n #_06E983: BPL .positive_velocity\n\n #_06E985: ORA.b #$F0\n\n.positive_velocity\n #_06E987: ADC.w $0F70,X\n #_06E98A: STA.w $0F70,X\n\n #_06E98D: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLink_instant_exit", + "code": "Sprite_ProjectSpeedTowardsLink_instant_exit:\n #_06E98E: STZ.b $00\n\n #_06E990: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLink", + "code": "Sprite_ProjectSpeedTowardsLink:\n #_06E991: STA.b $01\n\n #_06E993: CMP.b #$00\n #_06E995: BEQ .instant_exit\n\n #_06E997: PHX\n #_06E998: PHY\n\n #_06E999: JSR Sprite_IsBelowLink\n #_06E99C: STY.b $02\n\n #_06E99E: LDA.b $0E\n #_06E9A0: BPL .positive_y\n\n #_06E9A2: EOR.b #$FF\n #_06E9A4: INC A\n\n.positive_y\n #_06E9A5: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_06E9A7: JSR Sprite_IsRightOfLink\n #_06E9AA: STY.b $03\n\n #_06E9AC: LDA.b $0F\n #_06E9AE: BPL .positive_x\n\n #_06E9B0: EOR.b #$FF\n #_06E9B2: INC A\n\n.positive_x\n #_06E9B3: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_06E9B5: LDY.b #$00\n\n #_06E9B7: LDA.b $0D\n #_06E9B9: CMP.b $0C\n #_06E9BB: BCS .x_is_bigger\n\n #_06E9BD: INY\n\n #_06E9BE: PHA\n\n #_06E9BF: LDA.b $0C\n #_06E9C1: STA.b $0D\n\n #_06E9C3: PLA\n #_06E9C4: STA.b $0C\n\n.x_is_bigger\n #_06E9C6: STZ.b $0B\n #_06E9C8: STZ.b $00\n\n #_06E9CA: LDX.b $01\n\n; ---------------------------------------------------------\n\n.next\n #_06E9CC: LDA.b $0B\n #_06E9CE: CLC\n #_06E9CF: ADC.b $0C\n #_06E9D1: CMP.b $0D\n #_06E9D3: BCC .dont_accumulate\n\n #_06E9D5: SBC.b $0D\n #_06E9D7: INC.b $00\n\n.dont_accumulate\n #_06E9D9: STA.b $0B\n\n #_06E9DB: DEX\n #_06E9DC: BNE .next\n\n; ---------------------------------------------------------\n\n #_06E9DE: TYA\n #_06E9DF: BEQ .dont_flip_axes\n\n #_06E9E1: LDA.b $00\n #_06E9E3: PHA\n\n #_06E9E4: LDA.b $01\n #_06E9E6: STA.b $00\n\n #_06E9E8: PLA\n #_06E9E9: STA.b $01\n\n.dont_flip_axes\n #_06E9EB: LDA.b $00\n #_06E9ED: LDY.b $02\n #_06E9EF: BEQ .sign_correct_y\n\n #_06E9F1: EOR.b #$FF\n #_06E9F3: INC A\n #_06E9F4: STA.b $00\n\n.sign_correct_y\n #_06E9F6: LDA.b $01\n #_06E9F8: LDY.b $03\n #_06E9FA: BEQ .sign_correct_x\n\n #_06E9FC: EOR.b #$FF\n #_06E9FE: INC A\n #_06E9FF: STA.b $01\n\n.sign_correct_x\n #_06EA01: PLY\n #_06EA02: PLX\n\n #_06EA03: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplySpeedTowardsLink", + "code": "Sprite_ApplySpeedTowardsLink:\n #_06EA04: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06EA07: LDA.b $00\n #_06EA09: STA.w $0D40,X\n\n #_06EA0C: LDA.b $01\n #_06EA0E: STA.w $0D50,X\n\n #_06EA11: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplySpeedTowardsLink_long", + "code": "Sprite_ApplySpeedTowardsLink_long:\n #_06EA12: PHB\n #_06EA13: PHK\n #_06EA14: PLB\n\n #_06EA15: JSR Sprite_ApplySpeedTowardsLink\n\n #_06EA18: PLB\n\n #_06EA19: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLink_long", + "code": "Sprite_ProjectSpeedTowardsLink_long:\n #_06EA1A: PHB\n #_06EA1B: PHK\n #_06EA1C: PLB\n\n #_06EA1D: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06EA20: PLB\n\n #_06EA21: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLocation_long", + "code": "Sprite_ProjectSpeedTowardsLocation_long:\n #_06EA22: PHB\n #_06EA23: PHK\n #_06EA24: PLB\n\n #_06EA25: JSR Sprite_ProjectSpeedTowardsLocation\n\n #_06EA28: PLB\n\n #_06EA29: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLocation_fastexit", + "code": "Sprite_ProjectSpeedTowardsLocation_fastexit:\n #_06EA2A: STZ.b $00\n\n #_06EA2C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsLocation", + "code": "Sprite_ProjectSpeedTowardsLocation:\n #_06EA2D: STA.b $01\n\n #_06EA2F: CMP.b #$00\n #_06EA31: BEQ .fastexit\n\n #_06EA33: PHX\n #_06EA34: PHY\n\n #_06EA35: JSR Sprite_IsBelowLocation\n #_06EA38: STY.b $02\n\n #_06EA3A: LDA.b $0E\n #_06EA3C: BPL .positive_y\n\n #_06EA3E: EOR.b #$FF\n #_06EA40: INC A\n\n.positive_y\n #_06EA41: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_06EA43: JSR Sprite_IsRightOfLocation\n #_06EA46: STY.b $03\n\n #_06EA48: LDA.b $0F\n #_06EA4A: BPL .positive_x\n\n #_06EA4C: EOR.b #$FF\n #_06EA4E: INC A\n\n.positive_x\n #_06EA4F: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_06EA51: LDY.b #$00\n\n #_06EA53: LDA.b $0D\n #_06EA55: CMP.b $0C\n #_06EA57: BCS .x_is_bigger\n\n #_06EA59: INY\n\n #_06EA5A: PHA\n\n #_06EA5B: LDA.b $0C\n #_06EA5D: STA.b $0D\n\n #_06EA5F: PLA\n #_06EA60: STA.b $0C\n\n.x_is_bigger\n #_06EA62: STZ.b $0B\n #_06EA64: STZ.b $00\n\n #_06EA66: LDX.b $01\n\n; ---------------------------------------------------------\n\n.next\n #_06EA68: LDA.b $0B\n #_06EA6A: CLC\n #_06EA6B: ADC.b $0C\n\n #_06EA6D: CMP.b $0D\n #_06EA6F: BCC .dont_accumulate\n\n #_06EA71: SBC.b $0D\n #_06EA73: INC.b $00\n\n.dont_accumulate\n #_06EA75: STA.b $0B\n\n #_06EA77: DEX\n #_06EA78: BNE .next\n\n; ---------------------------------------------------------\n\n #_06EA7A: TYA\n #_06EA7B: BEQ .x_was_bigger\n\n #_06EA7D: LDA.b $00\n #_06EA7F: PHA\n\n #_06EA80: LDA.b $01\n #_06EA82: STA.b $00\n\n #_06EA84: PLA\n #_06EA85: STA.b $01\n\n; ---------------------------------------------------------\n\n.x_was_bigger\n #_06EA87: LDA.b $00\n #_06EA89: LDY.b $02\n #_06EA8B: BEQ .sign_correct_y\n\n #_06EA8D: EOR.b #$FF\n #_06EA8F: INC A\n #_06EA90: STA.b $00\n\n.sign_correct_y\n #_06EA92: LDA.b $01\n #_06EA94: LDY.b $03\n #_06EA96: BEQ .sign_correct_x\n\n #_06EA98: EOR.b #$FF\n #_06EA9A: INC A\n #_06EA9B: STA.b $01\n\n.sign_correct_x\n #_06EA9D: PLY\n #_06EA9E: PLX\n\n #_06EA9F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DirectionToFaceLink_long", + "code": "Sprite_DirectionToFaceLink_long:\n #_06EAA0: JSR Sprite_DirectionToFaceLink\n\n #_06EAA3: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DirectionToFaceLink", + "code": "Sprite_DirectionToFaceLink:\n #_06EAA4: JSR Sprite_IsRightOfLink\n #_06EAA7: STY.b $00\n\n #_06EAA9: JSR Sprite_IsBelowLink\n #_06EAAC: STY.b $01\n\n #_06EAAE: LDA.b $0E\n #_06EAB0: BPL .positive_y\n\n #_06EAB2: EOR.b #$FF\n #_06EAB4: INC A\n\n.positive_y\n #_06EAB5: STA.w $0FB5\n\n #_06EAB8: LDA.b $0F\n #_06EABA: BPL .positive_x\n\n #_06EABC: EOR.b #$FF\n #_06EABE: INC A\n\n.positive_x\n #_06EABF: CMP.w $0FB5\n #_06EAC2: BCC .use_x_axis\n\n.use_y_axis\n #_06EAC4: LDY.b $00\n\n #_06EAC6: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsRightOfLink_long", + "code": "Sprite_IsRightOfLink_long:\n #_06EACD: JSR Sprite_IsRightOfLink\n\n #_06EAD0: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsRightOfLink", + "code": "Sprite_IsRightOfLink:\n #_06EAD1: LDY.b #$00\n\n #_06EAD3: LDA.b $22\n #_06EAD5: SEC\n #_06EAD6: SBC.w $0D10,X\n #_06EAD9: STA.b $0F\n\n #_06EADB: LDA.b $23\n #_06EADD: SBC.w $0D30,X\n #_06EAE0: BPL .exit\n\n #_06EAE2: INY\n\n.exit\n #_06EAE3: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsBelowLink_long", + "code": "Sprite_IsBelowLink_long:\n #_06EAE4: JSR Sprite_IsBelowLink\n\n #_06EAE7: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsBelowLink", + "code": "Sprite_IsBelowLink:\n #_06EAE8: LDY.b #$00\n\n #_06EAEA: LDA.b $20\n #_06EAEC: CLC\n #_06EAED: ADC.b #$08\n #_06EAEF: PHP\n\n #_06EAF0: CLC\n #_06EAF1: ADC.w $0F70,X\n\n #_06EAF4: PHP\n\n #_06EAF5: SEC\n #_06EAF6: SBC.w $0D00,X\n #_06EAF9: STA.b $0E\n\n #_06EAFB: LDA.b $21\n #_06EAFD: SBC.w $0D20,X\n\n #_06EB00: PLP\n #_06EB01: ADC.b #$00\n\n #_06EB03: PLP\n #_06EB04: ADC.b #$00\n #_06EB06: BPL .exit\n\n #_06EB08: INY\n\n.exit\n #_06EB09: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsRightOfLocation", + "code": "Sprite_IsRightOfLocation:\n #_06EB0A: LDY.b #$00\n\n #_06EB0C: LDA.b $04\n #_06EB0E: SEC\n #_06EB0F: SBC.w $0D10,X\n #_06EB12: STA.b $0F\n\n #_06EB14: LDA.b $05\n #_06EB16: SBC.w $0D30,X\n #_06EB19: BPL .exit\n\n #_06EB1B: INY\n\n.exit\n #_06EB1C: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_IsBelowLocation", + "code": "Sprite_IsBelowLocation:\n #_06EB1D: LDY.b #$00\n\n #_06EB1F: LDA.b $06\n #_06EB21: SEC\n #_06EB22: SBC.w $0D00,X\n #_06EB25: STA.b $0E\n\n #_06EB27: LDA.b $07\n #_06EB29: SBC.w $0D20,X\n #_06EB2C: BPL .exit\n\n #_06EB2E: INY\n\n.exit\n #_06EB2F: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DirectionToFaceLocation", + "code": "Sprite_DirectionToFaceLocation:\n #_06EB30: PHB\n #_06EB31: PHK\n #_06EB32: PLB\n\n #_06EB33: JSR Sprite_IsRightOfLocation\n #_06EB36: STY.b $00\n\n #_06EB38: JSR Sprite_IsBelowLocation\n #_06EB3B: STY.b $01\n\n #_06EB3D: LDA.b $0E\n #_06EB3F: BPL .positive_y\n\n #_06EB41: EOR.b #$FF\n #_06EB43: INC A\n\n.positive_y\n #_06EB44: STA.w $0FB5\n\n #_06EB47: LDA.b $0F\n #_06EB49: BPL .positive_x\n\n #_06EB4B: EOR.b #$FF\n #_06EB4D: INC A\n\n.positive_x\n #_06EB4E: CMP.w $0FB5\n #_06EB51: BCC .use_x_axis\n\n.use_y_axis\n #_06EB53: LDY.b $00\n\n #_06EB55: PLB\n\n #_06EB56: RTL", + "file": "bank_06.asm" + }, + { + "name": "Guard_ParrySwordAttacks", + "code": "Guard_ParrySwordAttacks:\n #_06EB5E: PHB\n #_06EB5F: PHK\n #_06EB60: PLB\n\n #_06EB61: JSR .main\n\n #_06EB64: PLB\n\n #_06EB65: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_AttemptZapDamage", + "code": "Sprite_AttemptZapDamage:\n #_06EC02: LDA.w $0E20,X\n\n #_06EC05: CMP.b #$7A ; SPRITE 7A\n #_06EC07: BEQ .get_zapped\n\n #_06EC09: CMP.b #$0D ; SPRITE 0D\n #_06EC0B: BNE .not_buzzblob\n\n #_06EC0D: LDA.l $7EF359\n #_06EC11: CMP.b #$04\n #_06EC13: BCC .get_zapped\n\n.not_buzzblob\n #_06EC15: CMP.b #$24 ; SPRITE 24\n #_06EC17: BEQ .blue_baritone_saxamaphone\n\n #_06EC19: CMP.b #$23 ; SPRITE 23\n #_06EC1B: BNE .no_damage\n\n.blue_baritone_saxamaphone\n #_06EC1D: LDA.w $0DF0,X\n #_06EC20: BEQ .no_damage\n\n; ---------------------------------------------------------\n\n.get_zapped\n #_06EC22: LDA.w $0DD0,X\n #_06EC25: CMP.b #$09\n #_06EC27: BNE .no_damage\n\n #_06EC29: LDA.w $031F\n #_06EC2C: BNE .exit\n\n #_06EC2E: LDA.b #$40\n #_06EC30: STA.w $0E00,X\n\n #_06EC33: STA.w $0360\n\n #_06EC36: JSR Sprite_AttemptDamageToLinkPlusRecoil\n\n.exit\n #_06EC39: RTS", + "file": "bank_06.asm" + }, + { + "name": "Medallion_CheckSpriteDamage", + "code": "Medallion_CheckSpriteDamage:\n #_06EC5C: LDA.w $0C4A,X\n #_06EC5F: STA.w $0FB5\n\n #_06EC62: LDX.b #$0F\n\n.next\n #_06EC64: LDA.w $0DD0,X\n #_06EC67: CMP.b #$09\n #_06EC69: BCC .skip\n\n #_06EC6B: LDA.w $0BA0,X\n #_06EC6E: ORA.w $0F00,X\n #_06EC71: BNE .skip\n\n #_06EC73: LDA.w $0FB5\n #_06EC76: JSL Ancilla_CheckDamageToSprite_aggressive\n\n.skip\n #_06EC7A: DEX\n #_06EC7B: BPL .next\n\n #_06EC7D: RTL", + "file": "bank_06.asm" + }, + { + "name": "AncillaDamageClasses", + "code": "AncillaDamageClasses:\n #_06EC7E: db $06 ; NOTHING\n #_06EC7F: db $01 ; SOMARIA BULLET\n #_06EC80: db $0B ; FIRE ROD SHOT\n #_06EC81: db $00 ; UNUSED\n #_06EC82: db $00 ; BEAM HIT\n #_06EC83: db $00 ; BOOMERANG\n #_06EC84: db $00 ; WALL HIT\n #_06EC85: db $08 ; BOMB\n #_06EC86: db $00 ; DOOR DEBRIS\n #_06EC87: db $06 ; ARROW\n #_06EC88: db $00 ; ARROW IN THE WALL\n #_06EC89: db $0C ; ICE ROD SHOT\n #_06EC8A: db $01 ; SWORD BEAM_BOUNCE\n #_06EC8B: db $00 ; SPIN ATTACK FULL CHARGE SP\n #_06EC8C: db $00 ; BLAST WALL EXPLOSION\n #_06EC8D: db $00 ; BLAST WALL EXPLOSION\n #_06EC8E: db $00 ; BLAST WALL EXPLOSION\n #_06EC8F: db $01 ; ICE ROD WALL HIT\n #_06EC90: db $00 ; BLAST WALL EXPLOSION\n #_06EC91: db $00 ; ICE ROD SPARKLE\n #_06EC92: db $00 ; BAD POINTER\n #_06EC93: db $00 ; SPLASH\n #_06EC94: db $00 ; HIT STARS\n #_06EC95: db $00 ; SHOVEL DIRT\n #_06EC96: db $0E ; ETHER SPELL\n #_06EC97: db $0D ; BOMBOS SPELL\n #_06EC98: db $00 ; POWDER DUST\n #_06EC99: db $00 ; SWORD WALL HIT\n #_06EC9A: db $0F ; QUAKE SPELL\n #_06EC9B: db $00 ; SCREEN SHAKE\n #_06EC9C: db $00 ; DASH DUST\n #_06EC9D: db $07 ; HOOKSHOT\n #_06EC9E: db $01 ; BLANKET\n #_06EC9F: db $01 ; SNORE\n #_06ECA0: db $01 ; ITEM GET\n #_06ECA1: db $01 ; LINK POOF\n #_06ECA2: db $01 ; GRAVESTONE\n #_06ECA3: db $01 ; BAD POINTER\n #_06ECA4: db $01 ; SWORD SWING SPARKLE\n #_06ECA5: db $01 ; DUCK\n #_06ECA6: db $01 ; WISH POND ITEM\n #_06ECA7: db $01 ; MILESTONE ITEM GET\n #_06ECA8: db $01 ; SPIN ATTACK SPARKLE A\n #_06ECA9: db $01 ; SPIN ATTACK SPARKLE B\n #_06ECAA: db $01 ; SOMARIA BLOCK\n #_06ECAB: db $01 ; SOMARIA BLOCK FIZZ\n #_06ECAC: db $01 ; SOMARIA BLOCK FISSION\n #_06ECAD: db $0B ; LAMP FLAME\n #_06ECAE: db $00 ; BYRNA WINDUP SPARK\n #_06ECAF: db $01 ; BYRNA SPARK\n #_06ECB0: db $01 ; BLAST WALL FIREBALL\n #_06ECB1: db $01 ; BLAST WALL EXPLOSION\n #_06ECB2: db $01 ; SKULL WOODS FIRE\n #_06ECB3: db $01 ; MASTER SWORD GET\n #_06ECB4: db $01 ; FLUTE\n #_06ECB5: db $01 ; WEATHERVANE EXPLOSION\n #_06ECB6: db $01 ; CUTSCENE DUCK\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Ancilla_CheckDamageToSprite", + "code": "Ancilla_CheckDamageToSprite:\n #_06ECB7: LDY.w $0EF0,X\n #_06ECBA: BPL Ancilla_CheckDamageToSprite_aggressive\n\n #_06ECBC: RTL", + "file": "bank_06.asm" + }, + { + "name": "Ancilla_CheckDamageToSprite_aggressive", + "code": "Ancilla_CheckDamageToSprite_aggressive:\n #_06ECBD: PHX\n\n #_06ECBE: TAX\n #_06ECBF: LDA.l AncillaDamageClasses,X\n\n #_06ECC3: PLX\n\n #_06ECC4: CMP.b #$06\n #_06ECC6: BNE Ancilla_CheckDamageToSprite_preset\n\n #_06ECC8: PHA\n\n #_06ECC9: LDA.l $7EF340\n #_06ECCD: CMP.b #$03\n\n #_06ECCF: PLA\n #_06ECD0: BCC Ancilla_CheckDamageToSprite_preset\n\n #_06ECD2: LDA.w $0E20,X\n #_06ECD5: CMP.b #$D7 ; SPRITE D7\n #_06ECD7: BNE .not_ganon\n\n #_06ECD9: LDA.b #$20\n #_06ECDB: STA.w $0F10,X\n\n.not_ganon\n #_06ECDE: LDA.b #$09\n\n; =========================================================\n\n#Ancilla_CheckDamageToSprite_preset:\n #_06ECE0: CMP.b #$0F\n #_06ECE2: BNE .not_quake_against_airborne\n\n #_06ECE4: LDY.w $0F70,X\n #_06ECE7: BEQ .not_quake_against_airborne\n\n #_06ECE9: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CalculateSwordDamage", + "code": "Sprite_CalculateSwordDamage:\n #_06ED3F: LDA.w $0E60,X\n #_06ED42: AND.b #$40\n #_06ED44: BEQ .vulnerable_to_sword\n\n #_06ED46: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplyCalculatedDamage", + "code": "Sprite_ApplyCalculatedDamage:\n #_06ED89: STA.b $00\n\n #_06ED8B: STZ.w $0CF3\n\n #_06ED8E: LDA.w $0E60,X\n #_06ED91: AND.b #$40\n #_06ED93: BNE .exit_a\n\n #_06ED95: LDA.b #$00\n #_06ED97: XBA\n\n #_06ED98: LDA.w $0E20,X\n #_06ED9B: CMP.b #$D8 ; SPRITE D8\n #_06ED9D: BCC .not_absorbable\n\n.exit_a\n #_06ED9F: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_AttemptKillingOfKin", + "code": "Sprite_AttemptKillingOfKin:\n #_06EFE8: CMP.b #$92 ; SPRITE 92\n #_06EFEA: BNE .not_helmasaur_king\n\n #_06EFEC: JSL Sprite_KillFriends\n\n #_06EFF0: LDA.b #$FF\n #_06EFF2: STA.w $0DF0,X\n\n #_06EFF5: JMP.w Sprite_BossScreamAndDisableMenu\n\n; ---------------------------------------------------------\n\n.not_helmasaur_king\n #_06EFF8: CMP.b #$CB ; SPRITE CB\n #_06EFFA: BNE .not_trinexx_rock\n\n #_06EFFC: JMP.w TrinexxRock_ScreamAndDie\n\n.not_trinexx_rock\n #_06EFFF: CMP.b #$CC ; SPRITE CC\n #_06F001: BEQ .is_trinexx_fire\n\n #_06F003: CMP.b #$CD ; SPRITE CD\n #_06F005: BNE .not_trinexx_ice\n\n.is_trinexx_fire\n #_06F007: JMP.w Sidenexx_ScreamAndDie\n\n; ---------------------------------------------------------\n\n.not_trinexx_ice\n #_06F00A: CMP.b #$53 ; SPRITE 53\n #_06F00C: BEQ ArmosKnight_ScreamAndDie\n\n #_06F00E: CMP.b #$54 ; SPRITE 54\n #_06F010: BEQ Lanmolas_ScreamAndDie\n\n #_06F012: CMP.b #$09 ; SPRITE 09\n #_06F014: BEQ Moldorm_ScreamAndDie\n\n #_06F016: CMP.b #$7A ; SPRITE 7A\n #_06F018: BNE .not_agahnim\n\n #_06F01A: JMP.w Agahnim_ScreamAndDie\n\n; ---------------------------------------------------------\n\n.not_agahnim\n #_06F01D: CMP.b #$23 ; SPRITE 23\n #_06F01F: BEQ RedBari_TimeToDie\n\n #_06F021: CMP.b #$0F ; SPRITE 0F\n #_06F023: BNE SpriteDeath_not_octoballoon\n\n; =========================================================\n\n#Octoballoon_TimeToDie:\n #_06F025: STZ.w $0EF0,X\n\n #_06F028: LDA.b #$0F\n #_06F02A: STA.w $0DF0,X\n\n #_06F02D: RTS", + "file": "bank_06.asm" + }, + { + "name": "ArmosKnight_ScreamAndDie", + "code": "ArmosKnight_ScreamAndDie:\n #_06F07D: LDA.b #$23\n #_06F07F: STA.w $0DF0,X\n\n #_06F082: STZ.w $0EF0,X\n\n #_06F085: BRA .queue_scream\n\n; =========================================================\n\n#Sprite_BossScreamAndDisableMenu:\n #_06F087: INC.w $0FFC\n\n.queue_scream\n #_06F08A: STZ.w $012F\n\n #_06F08D: LDA.b #$22 ; SFX3.22\n #_06F08F: JSL SpriteSFX_QueueSFX3WithPan\n\n #_06F093: RTS", + "file": "bank_06.asm" + }, + { + "name": "RedBari_TimeToDie", + "code": "RedBari_TimeToDie:\n #_06F094: LDA.w $0DB0,X\n #_06F097: BNE SpriteDeath_not_octoballoon\n\n #_06F099: LDA.b #$02\n #_06F09B: STA.w $0D80,X\n\n #_06F09E: LDA.b #$20\n #_06F0A0: STA.w $0DF0,X\n\n #_06F0A3: LDA.b #$09\n #_06F0A5: STA.w $0DD0,X\n\n #_06F0A8: STZ.w $0EF0,X\n\n #_06F0AB: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sidenexx_ScreamAndDie", + "code": "Sidenexx_ScreamAndDie:\n #_06F0AC: LDA.b #$80\n #_06F0AE: STA.w $0D80,X\n\n #_06F0B1: LDA.b #$60\n #_06F0B3: STA.w $0DF0,X\n\n #_06F0B6: LDA.b #$09\n #_06F0B8: STA.w $0DD0,X\n\n #_06F0BB: BRA Sprite_BossScreamAndDisableMenu\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "TrinexxRock_ScreamAndDie", + "code": "TrinexxRock_ScreamAndDie:\n #_06F0BD: LDA.b #$80\n #_06F0BF: STA.w $0D80,X\n\n #_06F0C2: LDA.b #$80\n #_06F0C4: STA.w $0DF0,X\n\n #_06F0C7: LDA.b #$09\n #_06F0C9: STA.w $0DD0,X\n\n #_06F0CC: BRA Sprite_BossScreamAndDisableMenu\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Agahnim_ScreamAndDie", + "code": "Agahnim_ScreamAndDie:\n #_06F0CE: JSL Sprite_KillFriends\n\n #_06F0D2: LDA.b #$09\n #_06F0D4: STA.w $0DD0,X\n #_06F0D7: STA.w $0BA0,X\n\n #_06F0DA: LDA.w $0FFF\n #_06F0DD: BNE .aga_2\n\n #_06F0DF: LDA.b #$0A\n #_06F0E1: STA.w $0D80,X\n\n #_06F0E4: LDA.b #$FF\n #_06F0E6: STA.w $0DF0,X\n\n #_06F0E9: LDA.b #$20\n #_06F0EB: STA.w $0F80,X\n\n #_06F0EE: JMP.w Sprite_BossScreamAndDisableMenu\n\n; ---------------------------------------------------------\n\n.aga_2\n #_06F0F1: LDA.b #$FF\n #_06F0F3: STA.w $0DF0,X\n\n #_06F0F6: LDA.b #$08\n #_06F0F8: STA.w $0D80,X\n\n #_06F0FB: INC A\n #_06F0FC: STA.w $0D81\n #_06F0FF: STA.w $0D82\n\n #_06F102: STZ.w $0DC1\n #_06F105: STZ.w $0DC2\n\n #_06F108: JMP.w Sprite_BossScreamAndDisableMenu\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "NormalMob_TimeToDie", + "code": "NormalMob_TimeToDie:\n #_06F10B: LDA.w $0E40,X\n #_06F10E: CLC\n #_06F10F: ADC.b #$04\n #_06F111: STA.w $0E40,X\n\n #_06F114: LDA.w $0FB5\n #_06F117: CMP.b #$0B\n #_06F119: BNE .exit\n\n #_06F11B: LDA.b #$01\n #_06F11D: STA.w $0BE0,X\n\n.exit\n #_06F120: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageToLink_long", + "code": "Sprite_CheckDamageToLink_long:\n #_06F121: PHB\n #_06F122: PHK\n #_06F123: PLB\n\n #_06F124: JSR Sprite_CheckDamageToLink\n\n #_06F127: PLB\n\n #_06F128: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageToLink_same_layer_long", + "code": "Sprite_CheckDamageToLink_same_layer_long:\n #_06F129: PHB\n #_06F12A: PHK\n #_06F12B: PLB\n\n #_06F12C: JSR Sprite_CheckDamageToLink_same_layer\n\n #_06F12F: PLB\n\n #_06F130: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageToLink_ignore_layer_long", + "code": "Sprite_CheckDamageToLink_ignore_layer_long:\n #_06F131: PHB\n #_06F132: PHK\n #_06F133: PLB\n\n #_06F134: JSR Sprite_CheckDamageToLink_ignore_layer\n\n #_06F137: PLB\n\n #_06F138: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ToLink_Directions", + "code": "Sprite_ToLink_Directions:\n.opposing\n #_06F139: db $04, $06, $00, $02\n\n.standing\n #_06F13D: db $06, $04, $00, $00\n\n.opposing2\n #_06F141: db $04, $06, $00, $02\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageToLink", + "code": "Sprite_CheckDamageToLink:\n #_06F145: LDA.w $037B\n #_06F148: BNE .no_damage\n\n; =========================================================\n\n#Sprite_CheckDamageToLink_staggered:\n #_06F14A: TXA\n #_06F14B: EOR.b $1A\n #_06F14D: AND.b #$03\n\n #_06F14F: ORA.w $0EF0,X\n #_06F152: BNE .no_damage\n\n; =========================================================\n\n#Sprite_CheckDamageToLink_same_layer:\n #_06F154: LDA.w $00EE\n #_06F157: CMP.w $0F20,X\n #_06F15A: BNE .no_damage2\n\n#Sprite_CheckDamageToLink_ignore_layer:\n #_06F15C: LDA.w $0F60,X\n #_06F15F: BEQ .use_fast_hitbox_0\n\n #_06F161: JSR Link_SetupHitBox\n #_06F164: JSR Sprite_SetupHitBox\n #_06F167: JSR CheckIfHitBoxesOverlap\n\n #_06F16A: BRA .collision_checked\n\n.use_fast_hitbox_0\n #_06F16C: JSR Sprite_SetupHitBox00\n\n; ---------------------------------------------------------\n\n.collision_checked\n #_06F16F: LDA.w $0E40,X\n #_06F172: BMI .exit_preserve_check\n #_06F174: BCC .no_damage2\n\n #_06F176: LDA.b $4D\n #_06F178: BNE .no_damage2\n\n #_06F17A: LDA.w $02E0\n #_06F17D: BNE .definitely_getting_hit\n\n #_06F17F: LDA.w $0308\n #_06F182: BMI .definitely_getting_hit\n\n #_06F184: LDA.w $0BE0,X\n #_06F187: AND.b #$20\n #_06F189: BEQ .definitely_getting_hit\n\n #_06F18B: LDA.l $7EF35A\n #_06F18F: BEQ .definitely_getting_hit\n\n #_06F191: STZ.w $0DD0,X\n\n #_06F194: LDA.b $2F\n\n #_06F196: LDY.b $3C\n #_06F198: BEQ .sword_in\n\n #_06F19A: LSR A\n #_06F19B: TAY\n\n #_06F19C: LDA.w Sprite_ToLink_Directions_standing,Y\n\n.sword_in\n #_06F19F: LDY.w $0DE0,X\n\n #_06F1A2: CMP.w Sprite_ToLink_Directions_opposing2,Y\n #_06F1A5: BNE .definitely_getting_hit\n\n #_06F1A7: LDA.b #$06 ; SFX2.06\n #_06F1A9: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06F1AD: JSL Sprite_PlaceWeaponTink_forced\n\n #_06F1B1: LDA.w $0E20,X\n #_06F1B4: CMP.b #$95 ; SPRITE 95\n #_06F1B6: BNE .not_laser\n\n #_06F1B8: LDA.b #$26 ; SFX3.26\n #_06F1BA: JSL SpriteSFX_QueueSFX3WithPan\n\n.no_damage\n #_06F1BE: CLC\n\n.exit_preserve_check\n #_06F1BF: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SetupHitBox00", + "code": "Sprite_SetupHitBox00:\n #_06F1F6: LDA.w $0F70,X\n #_06F1F9: STA.b $0C\n #_06F1FB: STZ.b $0D\n\n #_06F1FD: REP #$20\n\n #_06F1FF: LDA.b $22\n #_06F201: SEC\n #_06F202: SBC.w $0FD8\n #_06F205: CLC\n #_06F206: ADC.w #$000B\n\n #_06F209: CMP.w #$0017\n #_06F20C: BCS .no_overlap\n\n #_06F20E: LDA.b $20\n #_06F210: SEC\n #_06F211: SBC.w $0FDA\n #_06F214: CLC\n #_06F215: ADC.b $0C\n #_06F217: CLC\n #_06F218: ADC.w #$0010\n\n #_06F21B: CMP.w #$0018\n #_06F21E: BCS .no_overlap\n\n.overlap\n #_06F220: SEP #$20\n #_06F222: SEC\n\n #_06F223: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfLifted", + "code": "Sprite_CheckIfLifted:\n #_06F228: LDA.b $11\n #_06F22A: ORA.b $3C\n #_06F22C: ORA.w $0FC1\n #_06F22F: BNE EXIT_06F2A9\n\n #_06F231: LDA.b $EE\n #_06F233: CMP.w $0F20,X\n #_06F236: BNE EXIT_06F2A9\n\n; ---------------------------------------------------------\n\n #_06F238: LDY.b #$0F\n\n.next_sprite\n #_06F23A: LDA.w $0DD0,Y\n #_06F23D: CMP.b #$0A\n #_06F23F: BEQ EXIT_06F2A9\n\n #_06F241: DEY\n #_06F242: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_06F244: LDA.w $0E20,X\n #_06F247: CMP.b #$0B ; SPRITE 0B\n #_06F249: BEQ Sprite_CheckIfLifted_permissive\n\n #_06F24B: CMP.b #$4A ; SPRITE 4A\n #_06F24D: BEQ Sprite_CheckIfLifted_permissive\n\n #_06F24F: LDA.w $0D50,X\n #_06F252: ORA.w $0D40,X\n #_06F255: BNE EXIT_06F2A9\n\n; =========================================================\n\n#Sprite_CheckIfLifted_permissive:\n #_06F257: LDA.w $0372\n #_06F25A: BNE EXIT_06F2A9\n\n #_06F25C: LDA.w $02F4\n #_06F25F: DEC A\n #_06F260: CMP.w $0FA0\n #_06F263: BEQ .get_lifted\n\n #_06F265: JSR Link_SetupHitBox_conditional\n #_06F268: JSR Sprite_SetupHitBox\n #_06F26B: JSR CheckIfHitBoxesOverlap\n\n #_06F26E: BCC EXIT_06F2A9\n\n #_06F270: TXA\n #_06F271: INC A\n #_06F272: STA.w $0314\n #_06F275: STA.w $0FB2\n\n #_06F278: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageFromLink_long", + "code": "Sprite_CheckDamageFromLink_long:\n #_06F2AA: PHB\n #_06F2AB: PHK\n #_06F2AC: PLB\n\n #_06F2AD: JSR Sprite_CheckDamageFromLink\n\n #_06F2B0: TAY\n\n #_06F2B1: PLB\n\n #_06F2B2: TYA\n\n #_06F2B3: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckDamageFromLink", + "code": "Sprite_CheckDamageFromLink:\n #_06F2B4: LDA.w $0EF0,X\n #_06F2B7: AND.b #$80\n #_06F2B9: BNE .dying\n\n #_06F2BB: LDA.b $EE\n #_06F2BD: CMP.w $0F20,X\n\n.dying\n #_06F2C0: BNE .no_collision\n\n #_06F2C2: LDA.b $44\n #_06F2C4: CMP.b #$80\n #_06F2C6: BEQ .no_collision\n\n #_06F2C8: JSR SetupActionHitbox\n #_06F2CB: JSR Sprite_SetupHitBox\n #_06F2CE: JSR CheckIfHitBoxesOverlap\n #_06F2D1: BCC .no_collision\n\n #_06F2D3: STZ.w $0047\n\n #_06F2D6: LDA.w $037A\n #_06F2D9: AND.b #$10\n #_06F2DB: BNE EXIT_06F2A9\n\n #_06F2DD: LDA.w $0301\n #_06F2E0: AND.b #$0A\n #_06F2E2: BEQ .not_frozen_kill\n\n #_06F2E4: LDA.w $0E20,X\n #_06F2E7: CMP.b #$D6 ; SPRITE D6\n #_06F2E9: BCS .no_collision\n\n #_06F2EB: LDA.w $0DD0,X\n #_06F2EE: CMP.b #$0B ; SPRITE 0B\n #_06F2F0: BNE .not_frozen_kill\n\n #_06F2F2: LDA.l $7FFA3C,X\n #_06F2F6: BEQ .not_frozen_kill\n\n #_06F2F8: LDA.b #$02\n #_06F2FA: STA.w $0DD0,X\n\n #_06F2FD: LDA.b #$20\n #_06F2FF: STA.w $0DF0,X\n\n #_06F302: LDA.w $0E40,X\n #_06F305: AND.b #$E0\n #_06F307: ORA.b #$03\n #_06F309: STA.w $0E40,X\n\n #_06F30C: LDA.b #$1F ; SFX2.1F\n #_06F30E: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06F312: SEC\n\n #_06F313: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDamage_ExitWith00", + "code": "SpriteDamage_ExitWith00:\n #_06F3C7: LDA.b #$00\n\n #_06F3C9: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_AttemptDamageToLinkWithCollisionCheck", + "code": "Sprite_AttemptDamageToLinkWithCollisionCheck:\n #_06F3CA: TXA\n #_06F3CB: EOR.b $1A\n #_06F3CD: LSR A\n #_06F3CE: BCS .no_damage\n\n #_06F3D0: JSR Sprite_DoHitboxesFast\n\n #_06F3D3: JSR Link_SetupHitBox_conditional\n #_06F3D6: JSR CheckIfHitBoxesOverlap\n\n #_06F3D9: BCC .no_damage\n\n; =========================================================\n\n#Sprite_AttemptDamageToLinkPlusRecoil:\n #_06F3DB: LDA.w $031F\n #_06F3DE: ORA.w $037B\n #_06F3E1: BNE .no_damage\n\n #_06F3E3: LDA.b #$13\n #_06F3E5: STA.b $46\n\n #_06F3E7: LDA.b #$18\n #_06F3E9: JSR Sprite_ApplyRecoilToLink\n\n #_06F3EC: LDA.b #$01\n #_06F3EE: STA.b $4D\n\n #_06F3F0: LDA.w $0CD2,X\n #_06F3F3: AND.b #$0F\n #_06F3F5: STA.b $00\n\n #_06F3F7: ASL A\n #_06F3F8: ADC.b $00\n #_06F3FA: CLC\n #_06F3FB: ADC.l $7EF35B\n #_06F3FF: TAY\n\n #_06F400: LDA.w Sprite_BumpDamageGroups,Y\n #_06F403: STA.w $0373\n\n #_06F406: LDA.w $0E20,X\n #_06F409: CMP.b #$61 ; SPRITE 61\n #_06F40B: BNE .no_damage\n\n #_06F40D: LDA.w $0DB0,X\n #_06F410: BEQ .no_damage\n\n #_06F412: LDA.w $0D50,X\n #_06F415: ASL A\n #_06F416: STA.b $28\n\n #_06F418: LDA.w $0D40,X\n #_06F41B: ASL A\n #_06F41C: STA.b $27\n\n.no_damage\n #_06F41E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_AttemptDamageToLinkPlusRecoil_long", + "code": "Sprite_AttemptDamageToLinkPlusRecoil_long:\n #_06F41F: PHB\n #_06F420: PHK\n #_06F421: PLB\n\n #_06F422: JSR Sprite_AttemptDamageToLinkPlusRecoil\n\n #_06F425: PLB\n\n #_06F426: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_BumpDamageGroups", + "code": "Sprite_BumpDamageGroups:\n #_06F427: db $02, $01, $01 ; 0x00\n #_06F42A: db $04, $04, $04 ; 0x01\n #_06F42D: db $00, $00, $00 ; 0x02\n #_06F430: db $08, $04, $02 ; 0x03\n #_06F433: db $08, $08, $08 ; 0x04\n #_06F436: db $10, $08, $04 ; 0x05\n #_06F439: db $20, $10, $08 ; 0x06\n #_06F43C: db $20, $18, $10 ; 0x07\n #_06F43F: db $18, $10, $08 ; 0x08\n #_06F442: db $40, $30, $18 ; 0x09\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "Sprite_RecoilLinkAndTHUMP", + "code": "Sprite_RecoilLinkAndTHUMP:\n #_06F445: LDA.b #$30\n #_06F447: JSR Sprite_ApplyRecoilToLink\n\n #_06F44A: LDA.b #$90\n #_06F44C: STA.b $47\n\n #_06F44E: LDA.b #$10\n #_06F450: STA.b $46\n\n #_06F452: LDA.b #$21 ; SFX2.21\n #_06F454: JSL SpriteSFX_QueueSFX2WithPan\n\n #_06F458: LDA.b #$30\n #_06F45A: STA.w $0E00,X\n\n #_06F45D: JMP.w SpriteDamage_ExitWith00\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "KingHelmasaur_ApplyRecoilIfEarlyPhase", + "code": "KingHelmasaur_ApplyRecoilIfEarlyPhase:\n #_06F460: LDA.w $0DB0,X\n #_06F463: CMP.b #$03\n #_06F465: BCS .do_recoil\n\n #_06F467: JMP.w Sprite_CheckDamageFromLink_attempt_small_recoil\n\n.do_recoil\n #_06F46A: JMP.w Sprite_CheckDamageFromLink_apply_normal_recoil\n\n; =========================================================\n\npool ActionHitbox\n\n.offset_x\n #_06F46D: db 0 ; net/hammer\n\n #_06F46E: db 2 ; up\n #_06F46F: db 0 ; up\n #_06F470: db 0 ; up\n #_06F471: db -8 ; up\n #_06F472: db 0 ; up\n #_06F473: db 2 ; up\n #_06F474: db 0 ; up\n #_06F475: db 2 ; up\n #_06F476: db 2 ; up\n #_06F477: db 1 ; up\n #_06F478: db 1 ; up\n #_06F479: db 0 ; up\n #_06F47A: db 0 ; up\n #_06F47B: db 0 ; up\n #_06F47C: db 0 ; up\n #_06F47D: db 0 ; up\n\n #_06F47E: db 2 ; down\n #_06F47F: db 4 ; down\n #_06F480: db 4 ; down\n #_06F481: db 0 ; down\n #_06F482: db 0 ; down\n #_06F483: db -4 ; down\n #_06F484: db -4 ; down\n #_06F485: db -6 ; down\n #_06F486: db 2 ; down\n #_06F487: db 1 ; down\n #_06F488: db 1 ; down\n #_06F489: db 0 ; down\n #_06F48A: db 0 ; down\n #_06F48B: db 0 ; down\n #_06F48C: db 0 ; down\n #_06F48D: db 0 ; down\n\n #_06F48E: db 0 ; left\n #_06F48F: db 0 ; left\n #_06F490: db 0 ; left\n #_06F491: db 2 ; left\n #_06F492: db 2 ; left\n #_06F493: db 4 ; left\n #_06F494: db 4 ; left\n #_06F495: db 2 ; left\n #_06F496: db 2 ; left\n #_06F497: db 2 ; left\n #_06F498: db 2 ; left\n #_06F499: db 0 ; left\n #_06F49A: db 0 ; left\n #_06F49B: db 0 ; left\n #_06F49C: db 0 ; left\n #_06F49D: db 0 ; left\n\n #_06F49E: db 0 ; right\n #_06F49F: db 0 ; right\n #_06F4A0: db 0 ; right\n #_06F4A1: db -4 ; right\n #_06F4A2: db -4 ; right\n #_06F4A3: db -10 ; right\n #_06F4A4: db 0 ; right\n #_06F4A5: db 2 ; right\n #_06F4A6: db 2 ; right\n #_06F4A7: db 0 ; right\n #_06F4A8: db 0 ; right\n #_06F4A9: db 0 ; right\n #_06F4AA: db 0 ; right\n #_06F4AB: db 0 ; right\n #_06F4AC: db 0 ; right\n #_06F4AD: db 0 ; right\n\n; ---------------------------------------------------------\n\n.size_x\n #_06F4AE: db 15 ; net/hammer\n\n #_06F4AF: db 4 ; up\n #_06F4B0: db 8 ; up\n #_06F4B1: db 8 ; up\n #_06F4B2: db 8 ; up\n #_06F4B3: db 8 ; up\n #_06F4B4: db 12 ; up\n #_06F4B5: db 8 ; up\n #_06F4B6: db 4 ; up\n #_06F4B7: db 4 ; up\n #_06F4B8: db 6 ; up\n #_06F4B9: db 6 ; up\n #_06F4BA: db 0 ; up\n #_06F4BB: db 0 ; up\n #_06F4BC: db 0 ; up\n #_06F4BD: db 0 ; up\n #_06F4BE: db 0 ; up\n\n #_06F4BF: db 4 ; down\n #_06F4C0: db 16 ; down\n #_06F4C1: db 12 ; down\n #_06F4C2: db 8 ; down\n #_06F4C3: db 8 ; down\n #_06F4C4: db 12 ; down\n #_06F4C5: db 11 ; down\n #_06F4C6: db 12 ; down\n #_06F4C7: db 4 ; down\n #_06F4C8: db 6 ; down\n #_06F4C9: db 6 ; down\n #_06F4CA: db 0 ; down\n #_06F4CB: db 0 ; down\n #_06F4CC: db 0 ; down\n #_06F4CD: db 0 ; down\n #_06F4CE: db 0 ; down\n\n #_06F4CF: db 8 ; left\n #_06F4D0: db 8 ; left\n #_06F4D1: db 8 ; left\n #_06F4D2: db 10 ; left\n #_06F4D3: db 14 ; left\n #_06F4D4: db 15 ; left\n #_06F4D5: db 4 ; left\n #_06F4D6: db 4 ; left\n #_06F4D7: db 4 ; left\n #_06F4D8: db 6 ; left\n #_06F4D9: db 6 ; left\n #_06F4DA: db 0 ; left\n #_06F4DB: db 0 ; left\n #_06F4DC: db 0 ; left\n #_06F4DD: db 0 ; left\n #_06F4DE: db 0 ; left\n\n #_06F4DF: db 8 ; right\n #_06F4E0: db 8 ; right\n #_06F4E1: db 8 ; right\n #_06F4E2: db 10 ; right\n #_06F4E3: db 14 ; right\n #_06F4E4: db 15 ; right\n #_06F4E5: db 4 ; right\n #_06F4E6: db 4 ; right\n #_06F4E7: db 4 ; right\n #_06F4E8: db 6 ; right\n #_06F4E9: db 6 ; right\n #_06F4EA: db 0 ; right\n #_06F4EB: db 0 ; right\n #_06F4EC: db 0 ; right\n #_06F4ED: db 0 ; right\n #_06F4EE: db 0 ; right\n\n; ---------------------------------------------------------\n\n.offset_y\n #_06F4EF: db 0 ; net/hammer\n\n #_06F4F0: db 2 ; up\n #_06F4F1: db 0 ; up\n #_06F4F2: db 2 ; up\n #_06F4F3: db 4 ; up\n #_06F4F4: db 4 ; up\n #_06F4F5: db 4 ; up\n #_06F4F6: db 7 ; up\n #_06F4F7: db 2 ; up\n #_06F4F8: db 2 ; up\n #_06F4F9: db 1 ; up\n #_06F4FA: db 1 ; up\n #_06F4FB: db 0 ; up\n #_06F4FC: db 0 ; up\n #_06F4FD: db 0 ; up\n #_06F4FE: db 0 ; up\n #_06F4FF: db 0 ; up\n\n #_06F500: db 2 ; down\n #_06F501: db 0 ; down\n #_06F502: db 2 ; down\n #_06F503: db -4 ; down\n #_06F504: db -3 ; down\n #_06F505: db -8 ; down\n #_06F506: db 0 ; down\n #_06F507: db 0 ; down\n #_06F508: db 2 ; down\n #_06F509: db 1 ; down\n #_06F50A: db 1 ; down\n #_06F50B: db 0 ; down\n #_06F50C: db 0 ; down\n #_06F50D: db 0 ; down\n #_06F50E: db 0 ; down\n #_06F50F: db 0 ; down\n\n #_06F510: db 0 ; left\n #_06F511: db 0 ; left\n #_06F512: db 0 ; left\n #_06F513: db -2 ; left\n #_06F514: db 0 ; left\n #_06F515: db -4 ; left\n #_06F516: db 1 ; left\n #_06F517: db 2 ; left\n #_06F518: db 2 ; left\n #_06F519: db 1 ; left\n #_06F51A: db 1 ; left\n #_06F51B: db 0 ; left\n #_06F51C: db 0 ; left\n #_06F51D: db 0 ; left\n #_06F51E: db 0 ; left\n #_06F51F: db 0 ; left\n\n #_06F520: db 0 ; right\n #_06F521: db 0 ; right\n #_06F522: db 0 ; right\n #_06F523: db -2 ; right\n #_06F524: db 0 ; right\n #_06F525: db -4 ; right\n #_06F526: db 1 ; right\n #_06F527: db 2 ; right\n #_06F528: db 2 ; right\n #_06F529: db 1 ; right\n #_06F52A: db 1 ; right\n #_06F52B: db 0 ; right\n #_06F52C: db 0 ; right\n #_06F52D: db 0 ; right\n #_06F52E: db 0 ; right\n #_06F52F: db 0 ; right\n\n; ---------------------------------------------------------\n\n.size_y\n #_06F530: db 15 ; net/hammer\n\n #_06F531: db 4 ; up\n #_06F532: db 8 ; up\n #_06F533: db 2 ; up\n #_06F534: db 12 ; up\n #_06F535: db 8 ; up\n #_06F536: db 12 ; up\n #_06F537: db 8 ; up\n #_06F538: db 4 ; up\n #_06F539: db 4 ; up\n #_06F53A: db 6 ; up\n #_06F53B: db 6 ; up\n #_06F53C: db 0 ; up\n #_06F53D: db 0 ; up\n #_06F53E: db 0 ; up\n #_06F53F: db 0 ; up\n #_06F540: db 0 ; up\n\n #_06F541: db 4 ; down\n #_06F542: db 8 ; down\n #_06F543: db 4 ; down\n #_06F544: db 12 ; down\n #_06F545: db 12 ; down\n #_06F546: db 12 ; down\n #_06F547: db 4 ; down\n #_06F548: db 8 ; down\n #_06F549: db 4 ; down\n #_06F54A: db 6 ; down\n #_06F54B: db 4 ; down\n #_06F54C: db 0 ; down\n #_06F54D: db 0 ; down\n #_06F54E: db 0 ; down\n #_06F54F: db 0 ; down\n #_06F550: db 0 ; down\n\n #_06F551: db 8 ; left\n #_06F552: db 8 ; left\n #_06F553: db 8 ; left\n #_06F554: db 8 ; left\n #_06F555: db 8 ; left\n #_06F556: db 12 ; left\n #_06F557: db 4 ; left\n #_06F558: db 4 ; left\n #_06F559: db 4 ; left\n #_06F55A: db 6 ; left\n #_06F55B: db 6 ; left\n #_06F55C: db 0 ; left\n #_06F55D: db 0 ; left\n #_06F55E: db 0 ; left\n #_06F55F: db 0 ; left\n #_06F560: db 0 ; left\n\n #_06F561: db 8 ; right\n #_06F562: db 8 ; right\n #_06F563: db 8 ; right\n #_06F564: db 8 ; right\n #_06F565: db 8 ; right\n #_06F566: db 12 ; right\n #_06F567: db 4 ; right\n #_06F568: db 4 ; right\n #_06F569: db 4 ; right\n #_06F56A: db 6 ; right\n #_06F56B: db 6 ; right\n #_06F56C: db 0 ; right\n #_06F56D: db 0 ; right\n #_06F56E: db 0 ; right\n #_06F56F: db 0 ; right\n #_06F570: db 0 ; right\n\n; ---------------------------------------------------------\n\n.sword_validity\n #_06F571: db $01\n #_06F572: db $01\n #_06F573: db $01\n #_06F574: db $00\n #_06F575: db $00\n #_06F576: db $00\n #_06F577: db $00\n #_06F578: db $01\n #_06F579: db $01\n #_06F57A: db $00\n #_06F57B: db $00\n #_06F57C: db $01\n #_06F57D: db $01\n\npool off\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "SetupActionHitbox_long", + "code": "SetupActionHitbox_long:\n #_06F57E: PHB\n #_06F57F: PHK\n #_06F580: PLB\n\n #_06F581: JSR SetupActionHitbox\n\n #_06F584: PLB\n\n #_06F585: RTL", + "file": "bank_06.asm" + }, + { + "name": "SetupActionHitbox_spinning", + "code": "SetupActionHitbox_spinning:\n #_06F594: LDA.b $22\n #_06F596: SEC\n #_06F597: SBC.b #$0E\n #_06F599: STA.b $00\n\n #_06F59B: LDA.b $23\n #_06F59D: SBC.b #$00\n #_06F59F: STA.b $08\n\n #_06F5A1: LDA.b $20\n #_06F5A3: SEC\n #_06F5A4: SBC.b #$0A\n #_06F5A6: STA.b $01\n\n #_06F5A8: LDA.b $21\n #_06F5AA: SBC.b #$00\n #_06F5AC: STA.b $09\n\n #_06F5AE: LDA.b #$2C\n #_06F5B0: STA.b $02\n\n #_06F5B2: INC A\n #_06F5B3: STA.b $03\n\n #_06F5B5: PLX\n\n #_06F5B6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SetupActionHitbox_dashing", + "code": "SetupActionHitbox_dashing:\n #_06F5B7: LDA.b $2F\n #_06F5B9: LSR A\n #_06F5BA: TAY\n\n #_06F5BB: LDA.b $22\n #_06F5BD: CLC\n #_06F5BE: ADC.w .offset_x_low,Y\n #_06F5C1: STA.b $00\n\n #_06F5C3: LDA.b $23\n #_06F5C5: ADC.w .offset_x_high,Y\n #_06F5C8: STA.b $08\n\n #_06F5CA: LDA.b $20\n #_06F5CC: CLC\n #_06F5CD: ADC.w .offset_y_low,Y\n #_06F5D0: STA.b $01\n\n #_06F5D2: LDA.b $21\n #_06F5D4: ADC.w .offset_y_high,Y\n #_06F5D7: STA.b $09\n\n #_06F5D9: LDA.b #$10\n #_06F5DB: STA.b $02\n #_06F5DD: STA.b $03\n\n #_06F5DF: RTS", + "file": "bank_06.asm" + }, + { + "name": "SetupActionHitbox", + "code": "SetupActionHitbox:\n #_06F5E0: LDA.w $0372\n #_06F5E3: BNE SetupActionHitbox_dashing\n\n #_06F5E5: PHX\n\n #_06F5E6: LDX.b #$00\n\n #_06F5E8: LDA.w $0301\n #_06F5EB: AND.b #$0A\n #_06F5ED: BNE .hammer_or_net\n\n #_06F5EF: LDA.w $037A\n #_06F5F2: AND.b #$10\n #_06F5F4: BNE .hammer_or_net\n\n #_06F5F6: LDY.b $3C\n #_06F5F8: BMI SetupActionHitbox_spinning\n\n #_06F5FA: LDA.w ActionHitbox_sword_validity,Y\n #_06F5FD: BNE .no_hitbox\n\n #_06F5FF: LDA.b $2F\n #_06F601: ASL A\n #_06F602: ASL A\n #_06F603: ASL A\n #_06F604: CLC\n #_06F605: ADC.b $3C\n #_06F607: TAX\n\n #_06F608: INX\n\n; ---------------------------------------------------------\n\n.hammer_or_net\n #_06F609: LDY.b #$00\n\n #_06F60B: LDA.b $45\n #_06F60D: CLC\n #_06F60E: ADC.w ActionHitbox_offset_x,X\n #_06F611: BPL .positive_x\n\n #_06F613: DEY\n\n.positive_x\n #_06F614: CLC\n #_06F615: ADC.b $22\n #_06F617: STA.b $00\n\n #_06F619: TYA\n #_06F61A: ADC.b $23\n #_06F61C: STA.b $08\n\n; ---------------------------------------------------------\n\n #_06F61E: LDY.b #$00\n\n #_06F620: LDA.b $44\n #_06F622: CLC\n #_06F623: ADC.w ActionHitbox_offset_y,X\n #_06F626: BPL .positive_y\n\n #_06F628: DEY\n\n.positive_y\n #_06F629: CLC\n #_06F62A: ADC.b $20\n #_06F62C: STA.b $01\n\n #_06F62E: TYA\n #_06F62F: ADC.b $21\n #_06F631: STA.b $09\n\n; ---------------------------------------------------------\n\n #_06F633: LDA.w ActionHitbox_size_x,X\n #_06F636: STA.b $02\n\n #_06F638: LDA.w ActionHitbox_size_y,X\n #_06F63B: STA.b $03\n\n #_06F63D: PLX\n\n #_06F63E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DoHitboxesFast", + "code": "Sprite_DoHitboxesFast:\n #_06F645: LDY.b #$00\n\n #_06F647: LDA.w $0FAB\n #_06F64A: CMP.b #$80\n #_06F64C: BEQ .exit\n\n #_06F64E: CMP.b #$00\n #_06F650: BPL .positive_x\n\n #_06F652: DEY\n\n.positive_x\n #_06F653: CLC\n #_06F654: ADC.w $0D10,X\n #_06F657: STA.b $04\n\n #_06F659: TYA\n #_06F65A: ADC.w $0D30,X\n #_06F65D: STA.b $0A\n\n #_06F65F: LDY.b #$00\n\n #_06F661: LDA.w $0FAA\n #_06F664: BPL .positive_y\n\n #_06F666: DEY\n\n.positive_y\n #_06F667: CLC\n #_06F668: ADC.w $0D00,X\n #_06F66B: STA.b $05\n\n #_06F66D: TYA\n #_06F66E: ADC.w $0D20,X\n #_06F671: STA.b $0B\n\n; ---------------------------------------------------------\n\n #_06F673: LDA.b #$03\n\n #_06F675: LDY.w $0E20,X\n #_06F678: CPY.b #$6A ; SPRITE 6A\n #_06F67A: BNE .not_bnc\n\n #_06F67C: LDA.b #$10\n\n.not_bnc\n #_06F67E: STA.b $06\n #_06F680: STA.b $07\n\n #_06F682: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplyRecoilToLink", + "code": "Sprite_ApplyRecoilToLink:\n #_06F688: PHA\n\n #_06F689: JSR Sprite_ProjectSpeedTowardsLink\n\n #_06F68C: LDA.b $00\n #_06F68E: STA.b $27\n\n #_06F690: LDA.b $01\n #_06F692: STA.b $28\n\n #_06F694: PLA\n #_06F695: LSR A\n #_06F696: STA.b $29\n #_06F698: STA.b $C7\n\n #_06F69A: STZ.b $24\n #_06F69C: STZ.b $25\n\n #_06F69E: RTS", + "file": "bank_06.asm" + }, + { + "name": "Link_PlaceWeaponTink", + "code": "Link_PlaceWeaponTink:\n #_06F69F: LDA.w $0FAC\n #_06F6A2: BNE .exit\n\n #_06F6A4: LDA.b #$05\n #_06F6A6: STA.w $0FAC\n\n #_06F6A9: LDA.w $0022\n #_06F6AC: ADC.w $0045\n #_06F6AF: STA.w $0FAD\n\n #_06F6B2: LDA.w $0020\n #_06F6B5: ADC.w $0044\n #_06F6B8: STA.w $0FAE\n\n #_06F6BB: LDA.b $EE\n #_06F6BD: STA.w $0B68\n\n #_06F6C0: JSL Link_CalculateSFXPan\n #_06F6C4: ORA.b #$05 ; SFX2.05\n #_06F6C6: STA.w $012E\n\n.exit\n #_06F6C9: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_PlaceWeaponTink", + "code": "Sprite_PlaceWeaponTink:\n #_06F6CA: LDA.w $0FAC\n #_06F6CD: BNE .no_spark\n\n #_06F6CF: LDA.b #$05 ; SFX2.05\n #_06F6D1: JSL SpriteSFX_QueueSFX2WithPan\n\n; =========================================================\n\n#Sprite_PlaceWeaponTink_forced:\n #_06F6D5: LDA.w $0D10,X\n #_06F6D8: CMP.b $E2\n\n #_06F6DA: LDA.w $0D30,X\n #_06F6DD: SBC.b $E3\n #_06F6DF: BNE .no_spark\n\n #_06F6E1: LDA.w $0D00,X\n #_06F6E4: CMP.b $E8\n\n #_06F6E6: LDA.w $0D20,X\n #_06F6E9: SBC.b $E9\n\n #_06F6EB: BNE .no_spark\n\n #_06F6ED: LDA.w $0D10,X\n #_06F6F0: STA.w $0FAD\n\n #_06F6F3: LDA.w $0D00,X\n #_06F6F6: STA.w $0FAE\n\n #_06F6F9: LDA.b #$05\n #_06F6FB: STA.w $0FAC\n\n #_06F6FE: LDA.w $0F20,X\n #_06F701: STA.w $0B68\n\n.no_spark\n #_06F704: RTL", + "file": "bank_06.asm" + }, + { + "name": "Link_SetupHitBox_conditional", + "code": "Link_SetupHitBox_conditional:\n #_06F705: LDA.w $037B\n #_06F708: BNE .no_hitbox\n\n; =========================================================\n\n#Link_SetupHitBox:\n #_06F70A: LDA.b #$08\n #_06F70C: STA.b $02\n #_06F70E: STA.b $03\n\n #_06F710: LDA.b $22\n #_06F712: CLC\n #_06F713: ADC.b #$04\n #_06F715: STA.b $00\n\n #_06F717: LDA.b $23\n #_06F719: ADC.b #$00\n #_06F71B: STA.b $08\n\n #_06F71D: LDA.b $20\n #_06F71F: ADC.b #$08\n #_06F721: STA.b $01\n\n #_06F723: LDA.b $21\n #_06F725: ADC.b #$00\n #_06F727: STA.b $09\n\n #_06F729: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_SetupHitBox", + "code": "Sprite_SetupHitBox:\n #_06F7EF: LDA.w $0F70,X\n #_06F7F2: BMI .too_high\n\n #_06F7F4: PHY\n\n #_06F7F5: LDA.w $0F60,X\n #_06F7F8: AND.b #$1F\n #_06F7FA: TAY\n\n #_06F7FB: LDA.w $0D10,X\n #_06F7FE: CLC\n #_06F7FF: ADC.w .offset_x_low,Y\n #_06F802: STA.b $04\n\n #_06F804: LDA.w $0D30,X\n #_06F807: ADC.w .offset_x_high,Y\n #_06F80A: STA.b $0A\n\n #_06F80C: LDA.w $0D00,X\n #_06F80F: CLC\n #_06F810: ADC.w .offset_y_low,Y\n\n #_06F813: PHP\n #_06F814: SEC\n #_06F815: SBC.w $0F70,X\n #_06F818: STA.b $05\n\n #_06F81A: LDA.w $0D20,X\n #_06F81D: SBC.b #$00\n\n #_06F81F: PLP\n #_06F820: ADC.w .offset_y_high,Y\n #_06F823: STA.b $0B\n\n #_06F825: LDA.w .width,Y\n #_06F828: STA.b $06\n\n #_06F82A: LDA.w .height,Y\n #_06F82D: STA.b $07\n\n #_06F82F: PLY\n\n #_06F830: RTS", + "file": "bank_06.asm" + }, + { + "name": "CheckIfHitBoxesOverlap", + "code": "CheckIfHitBoxesOverlap:\n #_06F836: PHX\n\n #_06F837: LDX.b #$01\n\n.check_other_side\n #_06F839: LDA.b $04,X\n #_06F83B: SEC\n #_06F83C: SBC.b $00,X\n\n #_06F83E: PHA\n #_06F83F: PHP\n\n #_06F840: CLC\n #_06F841: ADC.b $06,X\n #_06F843: STA.b $0F\n\n #_06F845: PLP\n\n #_06F846: LDA.b $0A,X\n #_06F848: SBC.b $08,X\n #_06F84A: STA.b $0C\n\n #_06F84C: PLA\n #_06F84D: CLC\n #_06F84E: ADC.b #$80\n\n #_06F850: LDA.b $0C\n #_06F852: ADC.b #$00\n #_06F854: BNE .no_overlap\n\n #_06F856: LDA.b $02,X\n #_06F858: CLC\n #_06F859: ADC.b $06,X\n\n #_06F85B: CMP.b $0F\n #_06F85D: BCC .no_overlap\n\n #_06F85F: DEX\n #_06F860: BPL .check_other_side\n\n; ---------------------------------------------------------\n\n.no_overlap\n #_06F862: PLX\n\n #_06F863: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_AllocateOAMDeferToPlayer_long", + "code": "SpriteDraw_AllocateOAMDeferToPlayer_long:\n #_06F864: PHB\n #_06F865: PHK\n #_06F866: PLB\n\n #_06F867: JSR SpriteDraw_AllocateOAMDeferToPlayer\n\n #_06F86A: PLB\n\n #_06F86B: RTL", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_AllocateOAMDeferToPlayer", + "code": "SpriteDraw_AllocateOAMDeferToPlayer:\n #_06F86C: LDA.w $0F20,X\n #_06F86F: CMP.b $EE\n #_06F871: BNE .exit\n\n #_06F873: JSR Sprite_IsRightOfLink\n\n #_06F876: LDA.b $0F\n #_06F878: CLC\n #_06F879: ADC.b #$10\n\n #_06F87B: CMP.b #$20\n #_06F87D: BCS .exit\n\n #_06F87F: JSR Sprite_IsBelowLink\n\n #_06F882: LDA.b $0E\n #_06F884: CLC\n #_06F885: ADC.b #$20\n\n #_06F887: CMP.b #$48\n #_06F889: BCS .exit\n\n #_06F88B: LDA.w $0E40,X\n #_06F88E: AND.b #$1F\n #_06F890: INC A\n #_06F891: ASL A\n #_06F892: ASL A\n\n #_06F893: CPY.b #$00\n #_06F895: BEQ .use_region_b\n\n.use_region_c\n #_06F897: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_06F89B: BRA .exit\n\n.use_region_b\n #_06F89D: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.exit\n #_06F8A1: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Die", + "code": "SpriteModule_Die:\n #_06F8A2: LDA.w $0E20,X\n #_06F8A5: CMP.b #$EC ; SPRITE EC\n #_06F8A7: BNE .not_foliage\n\n #_06F8A9: JSR ThrowableScenery_ScatterIntoDebris\n\n #_06F8AC: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DoTheDeath_long", + "code": "Sprite_DoTheDeath_long:\n #_06F917: PHB\n #_06F918: PHK\n #_06F919: PLB\n\n #_06F91A: JSR Sprite_DoTheDeath\n\n #_06F91D: PLB\n\n #_06F91E: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_DoTheDeath", + "code": "Sprite_DoTheDeath:\n #_06F923: LDA.w $0E20,X\n #_06F926: CMP.b #$BE ; SPRITE BE\n #_06F928: BNE .not_mini_vitty\n\n #_06F92A: DEC.w $0ED0\n\n.not_mini_vitty\n #_06F92D: CMP.b #$AA ; SPRITE AA\n #_06F92F: BNE .pikit_no\n\n #_06F931: LDY.w $0E90,X\n #_06F934: BEQ .pikit_no\n\n #_06F936: LDA.w .pikit_loot-1,Y\n\n #_06F939: LDY.w $0E30,X\n #_06F93C: PHY\n\n #_06F93D: JSR PrepareEnemyDrop\n\n #_06F940: PLA\n #_06F941: STA.w $0E30,X\n\n; ---------------------------------------------------------\n\n #_06F944: DEC A\n #_06F945: BNE .skip_pikit_item_props\n\n #_06F947: LDA.b #$09\n #_06F949: STA.w $0F50,X\n\n #_06F94C: LDA.b #$F0\n #_06F94E: STA.w $0E60,X\n\n.skip_pikit_item_props\n #_06F951: INC.w $0EB0,X\n\n #_06F954: RTS", + "file": "bank_06.asm" + }, + { + "name": "ForcePrizeDrop_long", + "code": "ForcePrizeDrop_long:\n #_06FA54: PHB\n #_06FA55: PHK\n #_06FA56: PLB\n\n #_06FA57: JSR ForcePrizeDrop\n\n #_06FA5A: PLB\n\n #_06FA5B: RTL", + "file": "bank_06.asm" + }, + { + "name": "PrizePackRarities", + "code": "PrizePackRarities:\n #_06FA5C: db $01 ; pack 1 : 50%\n #_06FA5D: db $01 ; pack 2 : 50%\n #_06FA5E: db $01 ; pack 3 : 50%\n #_06FA5F: db $00 ; pack 4 : 100%\n #_06FA60: db $01 ; pack 5 : 50%\n #_06FA61: db $01 ; pack 6 : 50%\n #_06FA62: db $01 ; pack 7 : 50%\n #_06FA63: db $00 ; pack 8 : 100% - doesn't exist\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "ItemDropBounceProps", + "code": "ItemDropBounceProps:\n #_06FA64: db $24 ; GREEN RUPEE\n #_06FA65: db $24 ; BLUE RUPEE\n #_06FA66: db $24 ; RED RUPEE\n #_06FA67: db $20 ; BOMB REFILL 1\n #_06FA68: db $20 ; BOMB REFILL 4\n #_06FA69: db $20 ; BOMB REFILL 8\n #_06FA6A: db $24 ; SMALL MAGIC DECANTER\n #_06FA6B: db $24 ; LARGE MAGIC DECANTER\n #_06FA6C: db $24 ; ARROW REFILL 5\n #_06FA6D: db $24 ; ARROW REFILL 10\n #_06FA6E: db $00 ; FAIRY\n #_06FA6F: db $24 ; SMALL KEY\n #_06FA70: db $20 ; BIG KEY\n #_06FA71: db $20 ; STOLEN SHIELD\n\n; =========================================================\n", + "file": "bank_06.asm" + }, + { + "name": "PrizePackPrizes", + "code": "PrizePackPrizes:\n\n.pack_1\n #_06FA72: db $D8 ; SPRITE D8 - heart\n #_06FA73: db $D8 ; SPRITE D8 - heart\n #_06FA74: db $D8 ; SPRITE D8 - heart\n #_06FA75: db $D8 ; SPRITE D8 - heart\n #_06FA76: db $D9 ; SPRITE D9 - green rupee\n #_06FA77: db $D8 ; SPRITE D8 - heart\n #_06FA78: db $D8 ; SPRITE D8 - heart\n #_06FA79: db $D9 ; SPRITE D9 - green rupee\n\n; ---------------------------------------------------------\n\n.pack_2\n #_06FA7A: db $DA ; SPRITE DA - blue rupee\n #_06FA7B: db $D9 ; SPRITE D9 - green rupee\n #_06FA7C: db $DA ; SPRITE DA - blue rupee\n #_06FA7D: db $DB ; SPRITE DB - red rupee\n #_06FA7E: db $DA ; SPRITE DA - blue rupee\n #_06FA7F: db $D9 ; SPRITE D9 - green rupee\n #_06FA80: db $DA ; SPRITE DA - blue rupee\n #_06FA81: db $DA ; SPRITE DA - blue rupee\n\n; ---------------------------------------------------------\n\n.pack_3\n #_06FA82: db $E0 ; SPRITE E0 - full magic\n #_06FA83: db $DF ; SPRITE DF - small magic\n #_06FA84: db $DF ; SPRITE DF - small magic\n #_06FA85: db $DA ; SPRITE DA - blue rupee\n #_06FA86: db $E0 ; SPRITE E0 - full magic\n #_06FA87: db $DF ; SPRITE DF - small magic\n #_06FA88: db $D8 ; SPRITE D8 - heart\n #_06FA89: db $DF ; SPRITE DF - small magic\n\n; ---------------------------------------------------------\n\n.pack_4\n #_06FA8A: db $DC ; SPRITE DC - 1 bomb\n #_06FA8B: db $DC ; SPRITE DC - 1 bomb\n #_06FA8C: db $DC ; SPRITE DC - 1 bomb\n #_06FA8D: db $DD ; SPRITE DD - 4 bombs\n #_06FA8E: db $DC ; SPRITE DC - 1 bomb\n #_06FA8F: db $DC ; SPRITE DC - 1 bomb\n #_06FA90: db $DE ; SPRITE DE - 8 bombs\n #_06FA91: db $DC ; SPRITE DC - 1 bomb\n\n; ---------------------------------------------------------\n\n.pack_5\n #_06FA92: db $E1 ; SPRITE E1 - 5 arrows\n #_06FA93: db $D8 ; SPRITE D8 - heart\n #_06FA94: db $E1 ; SPRITE E1 - 5 arrows\n #_06FA95: db $E2 ; SPRITE E2 - 10 arrows\n #_06FA96: db $E1 ; SPRITE E1 - 5 arrows\n #_06FA97: db $D8 ; SPRITE D8 - heart\n #_06FA98: db $E1 ; SPRITE E1 - 5 arrows\n #_06FA99: db $E2 ; SPRITE E2 - 10 arrows\n\n; ---------------------------------------------------------\n\n.pack_6\n #_06FA9A: db $DF ; SPRITE DF - small magic\n #_06FA9B: db $D9 ; SPRITE D9 - green rupee\n #_06FA9C: db $D8 ; SPRITE D8 - heart\n #_06FA9D: db $E1 ; SPRITE E1 - 5 arrows\n #_06FA9E: db $DF ; SPRITE DF - small magic\n #_06FA9F: db $DC ; SPRITE DC - 1 bomb\n #_06FAA0: db $D9 ; SPRITE D9 - green rupee\n #_06FAA1: db $D8 ; SPRITE D8 - heart\n\n; ---------------------------------------------------------\n\n.pack_7\n #_06FAA2: db $D8 ; SPRITE D8 - heart\n #_06FAA3: db $E3 ; SPRITE E3 - fairy\n #_06FAA4: db $E0 ; SPRITE E0 - full magic\n #_06FAA5: db $DB ; SPRITE DB - red rupee\n #_06FAA6: db $DE ; SPRITE DE - 8 bombs\n #_06FAA7: db $D8 ; SPRITE D8 - heart\n #_06FAA8: db $DB ; SPRITE DB - red rupee\n #_06FAA9: db $E2 ; SPRITE E2 - 10 arrows\n\n; =========================================================\n\npool SpriteDeath_DrawPoof\n\n.offset_x\n #_06FAAA: db 0, 0, 0, 8\n #_06FAAE: db 0, 8, 0, 8\n #_06FAB2: db 8, 8, 0, 8\n #_06FAB6: db 0, 8, 0, 8\n #_06FABA: db 0, 8, 0, 8\n #_06FABE: db 0, 8, 0, 8\n #_06FAC2: db -3, 11, -3, 11\n #_06FAC6: db -6, 14, -6, 14\n\n.offset_y\n #_06FACA: db 0, 0, 8, 8\n #_06FACE: db 0, 0, 8, 8\n #_06FAD2: db 0, 0, 8, 8\n #_06FAD6: db 0, 0, 8, 8\n #_06FADA: db 0, 0, 8, 8\n #_06FADE: db 0, 0, 8, 8\n #_06FAE2: db -3, -3, 11, 11\n #_06FAE6: db -6, -6, 14, 14\n\n.char\n #_06FAEA: db $00, $B9, $00, $00\n #_06FAEE: db $B4, $B5, $B5, $B4\n #_06FAF2: db $B9, $00, $00, $00\n #_06FAF6: db $B5, $B4, $B4, $B5\n #_06FAFA: db $A8, $A8, $B8, $B8\n #_06FAFE: db $A8, $A8, $B8, $B8\n #_06FB02: db $A9, $A9, $A9, $A9\n #_06FB06: db $9B, $9B, $9B, $9B\n\n.prop\n #_06FB0A: db $04, $04, $04, $04\n #_06FB0E: db $04, $04, $C4, $C4\n #_06FB12: db $44, $04, $04, $04\n #_06FB16: db $44, $44, $84, $84\n #_06FB1A: db $04, $44, $04, $44\n #_06FB1E: db $04, $44, $04, $44\n #_06FB22: db $44, $04, $C4, $84\n #_06FB26: db $04, $44, $84, $C4\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_06.asm" + }, + { + "name": "SpriteDeath_DrawPoof", + "code": "SpriteDeath_DrawPoof:\n #_06FB2A: LDA.w $046C\n #_06FB2D: CMP.b #$04\n #_06FB2F: BNE .keep_priority_as_is\n\n #_06FB31: LDA.b #$30\n #_06FB33: STA.w $0B89,X\n\n.keep_priority_as_is\n #_06FB36: JSR Sprite_PrepOAMCoord\n\n #_06FB39: LDA.w $0E60,X\n #_06FB3C: AND.b #$20\n #_06FB3E: LSR A\n #_06FB3F: LSR A\n #_06FB40: LSR A\n #_06FB41: STA.b $0C\n\n #_06FB43: PHX\n\n #_06FB44: LDA.b #$03\n #_06FB46: STA.b $00\n\n #_06FB48: LDA.w $0DF0,X\n #_06FB4B: AND.b #$1C\n #_06FB4D: EOR.b #$1C\n\n #_06FB4F: CLC\n #_06FB50: ADC.b $00\n #_06FB52: TAX\n\n; ---------------------------------------------------------\n\n.next_object\n #_06FB53: PHY\n\n #_06FB54: LDA.w .char,X\n #_06FB57: BEQ .skip\n\n #_06FB59: INY\n #_06FB5A: INY\n\n #_06FB5B: STA.b ($90),Y\n\n #_06FB5D: LDA.w $0FA9\n #_06FB60: SEC\n #_06FB61: SBC.b $0C\n\n #_06FB63: CLC\n #_06FB64: ADC.w .offset_y,X\n\n #_06FB67: DEY\n\n #_06FB68: STA.b ($90),Y\n\n #_06FB6A: LDA.w $0FA8\n #_06FB6D: SEC\n #_06FB6E: SBC.b $0C\n\n #_06FB70: CLC\n #_06FB71: ADC.w .offset_x,X\n\n #_06FB74: DEY\n\n #_06FB75: STA.b ($90),Y\n\n #_06FB77: LDA.b $05\n #_06FB79: AND.b #$30\n #_06FB7B: ORA.w .prop,X\n\n #_06FB7E: INY\n #_06FB7F: INY\n #_06FB80: INY\n\n #_06FB81: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n.skip\n #_06FB83: PLY\n\n #_06FB84: INY\n #_06FB85: INY\n #_06FB86: INY\n #_06FB87: INY\n\n #_06FB88: DEX\n\n #_06FB89: DEC.b $00\n #_06FB8B: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06FB8D: PLX\n\n #_06FB8E: LDY.b #$00\n\n #_06FB90: LDA.b #$03\n #_06FB92: JSR Sprite_CorrectOAMEntries\n\n #_06FB95: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteModule_Fall2", + "code": "SpriteModule_Fall2:\n #_06FBEA: LDA.w $0DF0,X\n #_06FBED: BNE .falling\n\n #_06FBEF: STZ.w $0DD0,X\n\n #_06FBF2: JSL Sprite_ManuallySetDeathFlagUW\n\n #_06FBF6: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_FallingHelmaBeetle", + "code": "SpriteDraw_FallingHelmaBeetle:\n #_06FD17: LDA.w $0E20,X\n #_06FD1A: CMP.b #$13 ; SPRITE 13\n #_06FD1C: BEQ .mini_helma\n\n; ---------------------------------------------------------\n\n #_06FD1E: LDA.w $0DC0,X\n\n #_06FD21: ASL A\n #_06FD22: ASL A\n #_06FD23: ASL A\n\n #_06FD24: ADC.b #.oam_groups_beetle>>0\n #_06FD26: STA.b $08\n\n #_06FD28: LDA.b #.oam_groups_beetle>>8\n\n; ---------------------------------------------------------\n\n.save_high_byte\n #_06FD2A: ADC.b #$00\n #_06FD2C: STA.b $09\n\n #_06FD2E: LDA.b #$01\n #_06FD30: JSL SpriteDraw_Tabulated\n\n #_06FD34: RTS", + "file": "bank_06.asm" + }, + { + "name": "SpriteDraw_FallingHumanoid", + "code": "SpriteDraw_FallingHumanoid:\n #_06FE5B: JSR Sprite_PrepOAMCoord\n\n #_06FE5E: LDA.w $0DC0,X\n #_06FE61: PHA\n\n #_06FE62: ASL A\n #_06FE63: ASL A\n #_06FE64: STA.b $06\n\n #_06FE66: PLA\n #_06FE67: PHX\n\n #_06FE68: LDX.b #$00\n\n #_06FE6A: CMP.b #$0C\n #_06FE6C: BCS .set_correction_quota\n\n #_06FE6E: AND.b #$03\n #_06FE70: BNE .set_correction_quota\n\n #_06FE72: LDX.b #$03\n\n.set_correction_quota\n #_06FE74: STX.b $07\n\n; ---------------------------------------------------------\n\n.next_object\n #_06FE76: PHX\n\n #_06FE77: TXA\n #_06FE78: CLC\n #_06FE79: ADC.b $06\n #_06FE7B: TAX\n\n #_06FE7C: LDA.b $00\n #_06FE7E: CLC\n #_06FE7F: ADC.w .offset_x,X\n #_06FE82: STA.b ($90),Y\n\n #_06FE84: LDA.b $02\n #_06FE86: CLC\n #_06FE87: ADC.w .offset_y,X\n\n #_06FE8A: INY\n\n #_06FE8B: STA.b ($90),Y\n\n #_06FE8D: LDA.w .char,X\n #_06FE90: INY\n\n #_06FE91: STA.b ($90),Y\n\n #_06FE93: LDA.w .prop,X\n #_06FE96: EOR.b $05\n #_06FE98: INY\n\n #_06FE99: STA.b ($90),Y\n\n #_06FE9B: PHY\n\n #_06FE9C: TYA\n #_06FE9D: LSR A\n #_06FE9E: LSR A\n #_06FE9F: TAY\n\n #_06FEA0: LDA.w .size,X\n #_06FEA3: STA.b ($92),Y\n\n #_06FEA5: PLY\n #_06FEA6: INY\n\n #_06FEA7: PLX\n #_06FEA8: DEX\n #_06FEA9: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06FEAB: PLX\n\n #_06FEAC: LDY.b #$FF\n #_06FEAE: LDA.b $07\n #_06FEB0: JSR Sprite_CorrectOAMEntries\n\n #_06FEB3: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CorrectOAMEntries_long", + "code": "Sprite_CorrectOAMEntries_long:\n #_06FEB4: PHB\n #_06FEB5: PHK\n #_06FEB6: PLB\n\n #_06FEB7: JSR Sprite_CorrectOAMEntries\n\n #_06FEBA: PLB\n\n #_06FEBB: RTL", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CorrectOAMEntries", + "code": "Sprite_CorrectOAMEntries:\n #_06FEBC: JSR Sprite_GetScreenRelativeCoords\n\n #_06FEBF: PHX\n\n #_06FEC0: REP #$10\n\n #_06FEC2: LDX.b $90\n #_06FEC4: STX.b $0C\n\n #_06FEC6: LDX.b $92\n #_06FEC8: STX.b $0E\n\n; ---------------------------------------------------------\n\n.next_object\n #_06FECA: LDX.b $0E\n\n #_06FECC: LDA.b $0B\n #_06FECE: BPL .make_small\n\n #_06FED0: LDA.b $00,X\n #_06FED2: AND.b #$02\n\n.make_small\n #_06FED4: STA.b $00,X\n\n #_06FED6: LDY.w #$0000\n\n #_06FED9: LDX.b $0C\n\n #_06FEDB: LDA.b $00,X\n #_06FEDD: SEC\n #_06FEDE: SBC.b $07\n #_06FEE0: BPL .positive_x\n\n #_06FEE2: DEY\n\n.positive_x\n #_06FEE3: CLC\n #_06FEE4: ADC.b $02\n #_06FEE6: STA.b $04\n\n #_06FEE8: TYA\n #_06FEE9: ADC.b $03\n #_06FEEB: STA.b $05\n\n #_06FEED: JSR Sprite_CheckIfXOnScreen\n #_06FEF0: BCC .not_offscreen_x\n\n #_06FEF2: LDX.b $0E\n #_06FEF4: INC.b $00,X\n\n.not_offscreen_x\n #_06FEF6: LDY.w #$0000\n\n #_06FEF9: LDX.b $0C\n #_06FEFB: INX\n\n #_06FEFC: LDA.b $00,X\n #_06FEFE: SEC\n #_06FEFF: SBC.b $06\n #_06FF01: BPL .positive_y\n\n #_06FF03: DEY\n\n.positive_y\n #_06FF04: CLC\n #_06FF05: ADC.b $00\n #_06FF07: STA.b $09\n\n #_06FF09: TYA\n #_06FF0A: ADC.b $01\n #_06FF0C: STA.b $0A\n\n #_06FF0E: JSR Sprite_CheckIfYOnScreen\n #_06FF11: BCC .not_offscreen_y\n\n #_06FF13: LDA.b #$F0\n #_06FF15: STA.b $00,X\n\n.not_offscreen_y\n #_06FF17: INX\n #_06FF18: INX\n #_06FF19: INX\n #_06FF1A: STX.b $0C\n\n #_06FF1C: INC.b $0E\n\n #_06FF1E: DEC.b $08\n #_06FF20: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_06FF22: SEP #$10\n\n #_06FF24: PLX\n\n #_06FF25: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_GetScreenRelativeCoords", + "code": "Sprite_GetScreenRelativeCoords:\n #_06FF26: STY.b $0B\n\n #_06FF28: STA.b $08\n\n #_06FF2A: LDA.w $0D00,X\n #_06FF2D: STA.b $00\n\n #_06FF2F: SEC\n #_06FF30: SBC.b $E8\n #_06FF32: STA.b $06\n\n #_06FF34: LDA.w $0D20,X\n #_06FF37: STA.b $01\n\n #_06FF39: LDA.w $0D10,X\n #_06FF3C: STA.b $02\n\n #_06FF3E: SEC\n #_06FF3F: SBC.b $E2\n #_06FF41: STA.b $07\n\n #_06FF43: LDA.w $0D30,X\n #_06FF46: STA.b $03\n\n #_06FF48: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfXOnScreen", + "code": "Sprite_CheckIfXOnScreen:\n #_06FF49: REP #$20\n\n #_06FF4B: LDA.b $04\n #_06FF4D: SEC\n #_06FF4E: SBC.b $E2\n #_06FF50: CMP.w #$0100\n\n #_06FF53: SEP #$20\n\n #_06FF55: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfYOnScreen", + "code": "Sprite_CheckIfYOnScreen:\n #_06FF56: REP #$20\n\n #_06FF58: LDA.b $09\n #_06FF5A: PHA\n\n #_06FF5B: CLC\n #_06FF5C: ADC.w #$0010\n #_06FF5F: STA.b $09\n\n #_06FF61: SEC\n #_06FF62: SBC.b $E8\n #_06FF64: CMP.w #$0100\n\n #_06FF67: PLA\n #_06FF68: STA.b $09\n\n #_06FF6A: SEP #$20\n\n #_06FF6C: RTS", + "file": "bank_06.asm" + }, + { + "name": "UNREACHABLE_06FF6D", + "code": "UNREACHABLE_06FF6D:\n #_06FF6D: JSL Sprite_KillSelf\n\n #_06FF71: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_CheckIfRecoiling_Bank06", + "code": "Sprite_CheckIfRecoiling_Bank06:\n #_06FF78: LDA.w $0EA0,X\n #_06FF7B: BEQ .exit\n\n #_06FF7D: AND.b #$7F\n #_06FF7F: BEQ .recoil_over\n\n #_06FF81: LDA.w $0D40,X\n #_06FF84: PHA\n\n #_06FF85: LDA.w $0D50,X\n #_06FF88: PHA\n\n #_06FF89: DEC.w $0EA0,X\n #_06FF8C: BNE .still_recoiling\n\n #_06FF8E: LDA.w $0F40,X\n #_06FF91: CLC\n #_06FF92: ADC.b #$20\n #_06FF94: CMP.b #$40\n #_06FF96: BCS .no_adjust\n\n #_06FF98: LDA.w $0F30,X\n #_06FF9B: CLC\n #_06FF9C: ADC.b #$20\n #_06FF9E: CMP.b #$40\n #_06FFA0: BCC .still_recoiling\n\n.no_adjust\n #_06FFA2: LDA.b #$90\n #_06FFA4: STA.w $0EA0,X\n\n.still_recoiling\n #_06FFA7: LDA.w $0EA0,X\n #_06FFAA: BMI .no_movement\n\n #_06FFAC: LSR A\n #_06FFAD: LSR A\n #_06FFAE: TAY\n\n #_06FFAF: LDA.b $1A\n #_06FFB1: AND.w .masks,Y\n #_06FFB4: BNE .no_movement\n\n #_06FFB6: LDA.w $0F30,X\n #_06FFB9: STA.w $0D40,X\n\n #_06FFBC: LDA.w $0F40,X\n #_06FFBF: STA.w $0D50,X\n\n #_06FFC2: LDA.w $0CD2,X\n #_06FFC5: BMI .handle_movement\n\n #_06FFC7: JSL Sprite_CheckTileCollision_long\n\n #_06FFCB: LDA.w $0E70,X\n #_06FFCE: AND.b #$0F\n #_06FFD0: BEQ .handle_movement\n\n.stop_horizontal_movement\n #_06FFD2: CMP.b #$04\n #_06FFD4: BCS .stop_vertical_movement\n\n #_06FFD6: STZ.w $0F40,X\n #_06FFD9: STZ.w $0D50,X\n\n #_06FFDC: BRA .movement_stopped\n\n.stop_vertical_movement\n #_06FFDE: STZ.w $0F30,X\n #_06FFE1: STZ.w $0D40,X\n\n.movement_stopped\n #_06FFE4: BRA .no_movement\n\n.handle_movement\n #_06FFE6: JSR Sprite_Move_XY_Bank06\n\n.no_movement\n #_06FFE9: PLA\n #_06FFEA: STA.w $0D50,X\n\n #_06FFED: PLA\n #_06FFEE: STA.w $0D40,X\n\n #_06FFF1: PLA\n #_06FFF2: PLA\n\n.exit\n #_06FFF3: RTS", + "file": "bank_06.asm" + }, + { + "name": "Sprite_ApplyConveyor", + "code": "Sprite_ApplyConveyor:\n#_1D8010: LDA.b $1A\n#_1D8012: LSR A\n#_1D8013: BCC .exit\n\n#_1D8015: PHB\n#_1D8016: PHK\n#_1D8017: PLB\n\n#_1D8018: LDA.w $0D10,X\n#_1D801B: CLC\n#_1D801C: ADC.w .speed_x_low-$68,Y\n#_1D801F: STA.w $0D10,X\n\n#_1D8022: LDA.w $0D30,X\n#_1D8025: ADC.w .speed_x_high-$68,Y\n#_1D8028: STA.w $0D30,X\n\n#_1D802B: LDA.w $0D00,X\n#_1D802E: CLC\n#_1D802F: ADC.w .speed_y_low-$68,Y\n#_1D8032: STA.w $0D00,X\n\n#_1D8035: LDA.w $0D20,X\n#_1D8038: ADC.w .speed_y_high-$68,Y\n#_1D803B: STA.w $0D20,X\n\n#_1D803E: PLB\n\n.exit\n#_1D803F: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CreateDeflectedArrow", + "code": "Sprite_CreateDeflectedArrow:\n#_1D8040: PHB\n#_1D8041: PHK\n#_1D8042: PLB\n\n#_1D8043: PHY\n\n#_1D8044: STZ.w $0C4A,X\n\n#_1D8047: LDA.b #$1B ; SPRITE 1B\n#_1D8049: JSL Sprite_SpawnDynamically\n#_1D804D: BMI .no_space\n\n#_1D804F: LDA.w $0C04,X\n#_1D8052: STA.w $0D10,Y\n\n#_1D8055: LDA.w $0C18,X\n#_1D8058: STA.w $0D30,Y\n\n#_1D805B: LDA.w $0BFA,X\n#_1D805E: STA.w $0D00,Y\n\n#_1D8061: LDA.w $0C0E,X\n#_1D8064: STA.w $0D20,Y\n\n#_1D8067: LDA.b #$06\n#_1D8069: STA.w $0DD0,Y\n\n#_1D806C: LDA.b #$1F\n#_1D806E: STA.w $0DF0,Y\n\n#_1D8071: LDA.w $0C2C,X\n#_1D8074: STA.w $0D50,Y\n\n#_1D8077: LDA.w $0C22,X\n#_1D807A: STA.w $0D40,Y\n\n#_1D807D: LDA.b $EE\n#_1D807F: STA.w $0F20,Y\n\n#_1D8082: PHX\n\n#_1D8083: TYX\n#_1D8084: JSL Sprite_PlaceWeaponTink\n\n#_1D8088: PLX\n\n.no_space\n#_1D8089: PLY\n\n#_1D808A: PLB\n\n#_1D808B: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_XY_Bank1D_long", + "code": "Sprite_Move_XY_Bank1D_long:\n#_1D808C: PHB\n#_1D808D: PHK\n#_1D808E: PLB\n\n#_1D808F: JSR Sprite_Move_XY_Bank1D\n\n#_1D8092: PLB\n\n#_1D8093: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CheckTileCollision_Bank1D", + "code": "Sprite_CheckTileCollision_Bank1D:\n#_1D8094: JSL Sprite_CheckTileCollision_long\n\n#_1D8098: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D4_Landmine", + "code": "Sprite_D4_Landmine:\n#_1D8099: JSR SpriteDraw_Landmine\n#_1D809C: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D809F: JSL Landmine_CheckHammer\n#_1D80A3: BCS Landmine_Explode\n\n#_1D80A5: LDA.w $0DF0,X\n#_1D80A8: BNE Landmine_Detonating\n\n#_1D80AA: LDA.b #$04\n#_1D80AC: STA.w $0F50,X\n\n#_1D80AF: JSL Sprite_CheckDamageToLink_long\n#_1D80B3: BCC .exit\n\n#_1D80B5: LDA.b #$08\n#_1D80B7: STA.w $0DF0,X\n\n.exit\n#_1D80BA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Landmine_Palettes", + "code": "Landmine_Palettes:\n#_1D80BB: db $04, $02, $08, $02\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Landmine_Detonating", + "code": "Landmine_Detonating:\n#_1D80BF: CMP.b #$01\n#_1D80C1: BNE LandMine_Flash\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Landmine_Explode", + "code": "Landmine_Explode:\n#_1D80C3: STZ.w $0DD0,X\n\n#_1D80C6: JSR Sprite_SpawnBomb\n#_1D80C9: BMI .exit\n\n#_1D80CB: LDA.b #$06\n#_1D80CD: STA.w $0DD0,Y\n\n#_1D80D0: LDA.b #$02\n#_1D80D2: STA.w $0DB0,Y\n#_1D80D5: STA.w $0F50,Y\n\n#_1D80D8: LDA.b #$09\n#_1D80DA: STA.w $0F60,Y\n\n#_1D80DD: LDA.b #$1F\n#_1D80DF: STA.w $0E00,Y\n\n#_1D80E2: LDA.b #$03\n#_1D80E4: STA.w $0E40,Y\n\n#_1D80E7: JSL Sprite_CalculateSFXPan\n#_1D80EB: ORA.b #$0C ; SFX2.0C\n#_1D80ED: STA.w $012E\n\n.exit\n#_1D80F0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "LandMine_Flash", + "code": "LandMine_Flash:\n#_1D80F1: LSR A\n#_1D80F2: AND.b #$03\n#_1D80F4: TAY\n\n#_1D80F5: LDA.w Landmine_Palettes,Y\n#_1D80F8: STA.w $0F50,X\n\n#_1D80FB: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Landmine", + "code": "SpriteDraw_Landmine:\n#_1D810C: LDA.b #$08\n#_1D810E: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1D8112: LDA.w $0FC6\n#_1D8115: CMP.b #$03\n#_1D8117: BCS .bad_gfx\n\n#_1D8119: REP #$20\n\n#_1D811B: LDA.w #.oam_groups\n#_1D811E: STA.b $08\n\n#_1D8120: SEP #$20\n\n#_1D8122: LDA.b #$02\n#_1D8124: JSL SpriteDraw_Tabulated\n\n.bad_gfx\n#_1D8128: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D3_Stal", + "code": "Sprite_D3_Stal:\n#_1D8129: LDA.w $0FC6\n#_1D812C: CMP.b #$03\n#_1D812E: BCS .bad_gfx\n\n#_1D8130: LDA.w $0D80,X\n#_1D8133: BNE .ignore_overlap\n\n#_1D8135: LDA.b #$04\n#_1D8137: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.ignore_overlap\n#_1D813B: JSR SpriteDraw_Stal\n\n.bad_gfx\n#_1D813E: JSR Sprite_CheckIfActive_Bank1D\n#_1D8141: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1D8144: LDA.w $0D80,X\n#_1D8147: JSL JumpTableLocal\n#_1D814B: dw Stal_Dormant\n#_1D814D: dw Stal_Active\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Stal_Dormant", + "code": "Stal_Dormant:\n#_1D814F: LDA.b #$01\n#_1D8151: STA.w $0BA0,X\n\n#_1D8154: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1D8158: BCC .still_inactive\n\n#_1D815A: JSL Sprite_CancelHookshot\n#_1D815E: JSL Sprite_RepelDash_long\n\n#_1D8162: LDA.w $0DF0,X\n#_1D8165: BNE .still_inactive\n\n#_1D8167: LDA.b #$40\n#_1D8169: STA.w $0DF0,X\n\n#_1D816C: LDA.b #$22 ; SFX2.22\n#_1D816E: JSL SpriteSFX_QueueSFX2WithPan\n\n.still_inactive\n#_1D8172: LDA.w $0DF0,X\n#_1D8175: BEQ .exit\n\n#_1D8177: DEC A\n#_1D8178: BEQ .activated\n\n#_1D817A: ORA.b #$40\n#_1D817C: STA.w $0EF0,X\n\n.exit\n#_1D817F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Stal_Active", + "code": "Stal_Active:\n#_1D819D: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n#_1D81A0: JSR Sprite_Move_XYZ_Bank1D\n#_1D81A3: JSR Sprite_CheckTileCollision_Bank1D\n\n#_1D81A6: DEC.w $0F80,X\n#_1D81A9: DEC.w $0F80,X\n#_1D81AC: LDA.w $0F70,X\n#_1D81AF: BPL .in_air\n\n#_1D81B1: STZ.w $0F70,X\n\n#_1D81B4: LDA.b #$10\n#_1D81B6: STA.w $0F80,X\n\n#_1D81B9: LDA.b #$0C\n#_1D81BB: JSL Sprite_ApplySpeedTowardsLink_long\n\n.in_air\n#_1D81BF: LDA.b $1A\n#_1D81C1: AND.b #$03\n#_1D81C3: BNE .skip_timer\n\n#_1D81C5: INC.w $0E80,X\n\n#_1D81C8: LDA.w $0E80,X\n#_1D81CB: CMP.b #$05\n#_1D81CD: BNE .skip_timer\n\n#_1D81CF: STZ.w $0E80,X\n\n.skip_timer\n#_1D81D2: LDY.w $0E80,X\n#_1D81D5: LDA.w .anim,Y\n#_1D81D8: STA.w $0DC0,X\n\n#_1D81DB: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Stal", + "code": "SpriteDraw_Stal:\n#_1D820C: LDA.b #$00\n#_1D820E: XBA\n#_1D820F: LDA.w $0DC0,X\n\n#_1D8212: REP #$20\n\n#_1D8214: ASL A\n#_1D8215: ASL A\n#_1D8216: ASL A\n#_1D8217: ASL A\n\n#_1D8218: ADC.w #.oam_groups\n#_1D821B: STA.b $08\n\n#_1D821D: SEP #$20\n\n#_1D821F: LDA.b #$02\n\n#_1D8221: LDY.w $0D80,X\n#_1D8224: BNE .active\n\n#_1D8226: DEC A\n\n.active\n#_1D8227: JSL SpriteDraw_Tabulated\n\n#_1D822B: LDA.w $0D80,X\n#_1D822E: BEQ .no_shadow\n\n#_1D8230: JSL SpriteDraw_Shadow_long\n\n.no_shadow\n#_1D8234: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D2_FloppingFish", + "code": "Sprite_D2_FloppingFish:\n#_1D8235: LDA.w $0FC6\n#_1D8238: CMP.b #$03\n#_1D823A: BCS .bad_gfx\n\n#_1D823C: JSR SpriteDraw_FloppingFish\n\n.bad_gfx\n#_1D823F: LDA.w $0DD0,X\n#_1D8242: CMP.b #$0A\n#_1D8244: BNE .not_held\n\n#_1D8246: LDA.b #$04\n#_1D8248: STA.w $0D80,X\n\n#_1D824B: LDA.b $1A\n\n#_1D824D: LSR A\n#_1D824E: LSR A\n#_1D824F: LSR A\n\n#_1D8250: AND.b #$02\n#_1D8252: LSR A\n#_1D8253: ADC.b #$03\n\n#_1D8255: STA.w $0DC0,X\n\n; ---------------------------------------------------------\n\n.not_held\n#_1D8258: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D825B: LDA.w $0D80,X\n#_1D825E: JSL JumpTableLocal\n#_1D8262: dw FloppingFish_CheckForWaterInit\n#_1D8264: dw FloppingFish_Flop\n#_1D8266: dw FloppingFish_PrepareLeap\n#_1D8268: dw FloppingFish_Leap\n#_1D826A: dw FloppingFish_WriggleInHands\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FloppingFish_WriggleInHands", + "code": "FloppingFish_WriggleInHands:\n#_1D826C: LDA.w $0F70,X\n#_1D826F: BNE .in_air\n\n#_1D8271: LDA.b #$01\n#_1D8273: STA.w $0D80,X\n\n.in_air\n#_1D8276: JSR Sprite_Move_XY_Bank1D\n#_1D8279: JSL ThrownSprite_TileAndSpriteInteraction_long\n\n#_1D827D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FloppingFish_PrepareLeap", + "code": "FloppingFish_PrepareLeap:\n#_1D827E: LDA.w $0DF0,X\n#_1D8281: BNE .exit\n\n#_1D8283: INC.w $0D80,X\n\n#_1D8286: LDA.b #$30\n#_1D8288: STA.w $0F80,X\n\n; =========================================================\n\n#FloppingFish_SpawnSplash:\n#_1D828B: JSL Sprite_SpawnSmallSplash\n\n.exit\n#_1D828F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FloppingFish_Leap", + "code": "FloppingFish_Leap:\n#_1D82A1: JSR Sprite_Move_Z_Bank1D\n\n#_1D82A4: DEC.w $0F80,X\n#_1D82A7: DEC.w $0F80,X\n#_1D82AA: BNE .ascending\n\n#_1D82AC: LDY.w $0D90,X\n#_1D82AF: BEQ .ascending\n\n#_1D82B1: LDA.b #$76 ; MESSAGE 0176\n#_1D82B3: STA.w $1CF0\n\n#_1D82B6: LDA.b #$01\n#_1D82B8: JSR Sprite_ShowMessageMinimal_bank1D\n\n.ascending\n#_1D82BB: LDA.w $0F70,X\n#_1D82BE: BPL .in_air\n\n#_1D82C0: STZ.w $0F70,X\n\n#_1D82C3: JSR FloppingFish_SpawnSplash\n\n#_1D82C6: LDA.w $0D90,X\n#_1D82C9: BEQ .no_rupees\n\n#_1D82CB: LDA.b #$DB ; SPRITE DB\n#_1D82CD: JSL Sprite_SpawnDynamically\n#_1D82D1: BMI .no_rupees\n\n; ---------------------------------------------------------\n\n#_1D82D3: JSL Sprite_SetSpawnedCoordinates\n\n#_1D82D7: LDA.b $00\n#_1D82D9: CLC\n#_1D82DA: ADC.b #$04\n#_1D82DC: STA.w $0D10,Y\n\n#_1D82DF: LDA.b $01\n#_1D82E1: ADC.b #$00\n#_1D82E3: STA.w $0D30,Y\n\n#_1D82E6: LDA.b #$FF\n#_1D82E8: STA.w $0B58,Y\n\n#_1D82EB: LDA.b #$30\n#_1D82ED: STA.w $0F80,Y\n#_1D82F0: STA.w $0EE0,Y\n\n#_1D82F3: PHX\n#_1D82F4: TYX\n\n#_1D82F5: LDA.b #$10\n#_1D82F7: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1D82FB: PLX\n\n; ---------------------------------------------------------\n\n.no_rupees\n#_1D82FC: STZ.w $0DD0,X\n\n.in_air\n#_1D82FF: INC.w $0E80,X\n\n#_1D8302: LDA.w $0E80,X\n#_1D8305: LSR A\n#_1D8306: LSR A\n#_1D8307: TAY\n\n#_1D8308: LDA.w .anim,Y\n#_1D830B: STA.w $0DC0,X\n\n#_1D830E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FloppingFish_CheckForWaterInit", + "code": "FloppingFish_CheckForWaterInit:\n#_1D830F: JSR Sprite_CheckTileCollision_Bank1D\n\n#_1D8312: LDA.w $0FA5\n#_1D8315: CMP.b #$08 ; TILETYPE 08\n#_1D8317: BNE .not_water\n\n#_1D8319: STZ.w $0DD0,X\n\n#_1D831C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FloppingFish_Flop", + "code": "FloppingFish_Flop:\n#_1D8336: JSL Sprite_CheckIfLifted_permissive_long\n#_1D833A: JSR Sprite_BounceFromTileCollision\n#_1D833D: JSR Sprite_Move_XYZ_Bank1D\n\n#_1D8340: DEC.w $0F80,X\n#_1D8343: DEC.w $0F80,X\n\n#_1D8346: LDA.w $0F70,X\n#_1D8349: BPL .in_air\n\n#_1D834B: STZ.w $0F70,X\n\n#_1D834E: LDA.w $0FA5\n#_1D8351: CMP.b #$09 ; TILETYPE 09\n#_1D8353: BEQ .shallow_water\n\n#_1D8355: CMP.b #$08 ; TILETYPE 08\n#_1D8357: BNE .no_water\n\n#_1D8359: STZ.w $0DD0,X\n\n; ---------------------------------------------------------\n\n.shallow_water\n#_1D835C: JSR FloppingFish_SpawnSplash\n\n.no_water\n#_1D835F: JSL GetRandomNumber\n#_1D8363: AND.b #$0F\n#_1D8365: ADC.b #$10\n#_1D8367: STA.w $0F80,X\n\n#_1D836A: JSL GetRandomNumber\n#_1D836E: AND.b #$07\n#_1D8370: TAY\n\n#_1D8371: LDA.w .speed_x,Y\n#_1D8374: STA.w $0D50,X\n\n#_1D8377: LDA.w .speed_y,Y\n#_1D837A: STA.w $0D40,X\n\n#_1D837D: INC.w $0DE0,X\n\n#_1D8380: LDA.b #$03\n#_1D8382: STA.w $0E80,X\n\n; ---------------------------------------------------------\n\n.in_air\n#_1D8385: INC.w $0E80,X\n\n#_1D8388: LDA.w $0E80,X\n#_1D838B: AND.b #$07\n#_1D838D: BNE .skip_shake\n\n#_1D838F: LDA.w $0DE0,X\n#_1D8392: AND.b #$01\n#_1D8394: TAY\n\n#_1D8395: LDA.w $0D90,X\n#_1D8398: CMP.w .boundary,Y\n#_1D839B: BEQ .skip_shake\n\n#_1D839D: CLC\n#_1D839E: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1D83A1: STA.w $0D90,X\n\n; ---------------------------------------------------------\n\n.skip_shake\n#_1D83A4: LDA.b $1A\n#_1D83A6: LSR A\n#_1D83A7: LSR A\n#_1D83A8: LSR A\n#_1D83A9: AND.b #$01\n\n#_1D83AB: LDY.w $0D90,X\n#_1D83AE: CLC\n#_1D83AF: ADC.w .anim,Y\n#_1D83B2: STA.w $0DC0,X\n\n#_1D83B5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DontDrawFloppingFish", + "code": "DontDrawFloppingFish:\n#_1D847E: JSL Sprite_PrepOAMCoord_long\n\n#_1D8482: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_FloppingFish", + "code": "SpriteDraw_FloppingFish:\n#_1D8483: LDA.b #$00\n#_1D8485: XBA\n#_1D8486: LDA.w $0DC0,X\n#_1D8489: BEQ DontDrawFloppingFish\n\n#_1D848B: DEC A\n\n#_1D848C: REP #$20\n\n#_1D848E: ASL A\n#_1D848F: ASL A\n#_1D8490: ASL A\n#_1D8491: ASL A\n\n#_1D8492: ADC.w #.oam_groups_fish\n#_1D8495: STA.b $08\n\n#_1D8497: LDA.w $0FD8\n#_1D849A: CLC\n#_1D849B: ADC.w #$0004\n#_1D849E: STA.w $0FD8\n\n#_1D84A1: SEP #$20\n\n#_1D84A3: LDA.b #$02\n#_1D84A5: JSL SpriteDraw_Tabulated\n\n#_1D84A9: LDA.w $0FDA\n#_1D84AC: CLC\n#_1D84AD: ADC.w $0F70,X\n#_1D84B0: STA.w $0FDA\n\n#_1D84B3: LDA.w $0FDB\n#_1D84B6: ADC.b #$00\n#_1D84B8: STA.w $0FDB\n\n#_1D84BB: LDA.b #$00\n#_1D84BD: XBA\n\n#_1D84BE: LDA.w $0F70,X\n#_1D84C1: LSR A\n#_1D84C2: LSR A\n#_1D84C3: CMP.b #$02\n#_1D84C5: BCC .shadow\n\n; ---------------------------------------------------------\n\n#_1D84C7: LDA.b #$02\n\n.shadow\n#_1D84C9: REP #$20\n\n#_1D84CB: ASL A\n#_1D84CC: ASL A\n#_1D84CD: ASL A\n#_1D84CE: STA.b $00\n\n#_1D84D0: ASL A\n#_1D84D1: ADC.b $00\n#_1D84D3: ADC.w #.oam_groups_shadow\n#_1D84D6: STA.b $08\n\n#_1D84D8: LDA.b $90\n#_1D84DA: CLC\n#_1D84DB: ADC.w #$0008\n#_1D84DE: STA.b $90\n\n#_1D84E0: INC.b $92\n#_1D84E2: INC.b $92\n\n#_1D84E4: SEP #$20\n\n#_1D84E6: LDA.b #$03\n#_1D84E8: JSL SpriteDraw_Tabulated\n#_1D84EC: JSL Sprite_Get16BitCoords_long\n\n#_1D84F0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_ChimneySmoke", + "code": "SpriteDraw_ChimneySmoke:\n#_1D8531: LDA.b #$00\n#_1D8533: XBA\n\n#_1D8534: LDA.w $0DC0,X\n#_1D8537: AND.b #$01\n\n#_1D8539: REP #$20\n\n#_1D853B: ASL A\n#_1D853C: ASL A\n#_1D853D: ASL A\n#_1D853E: ASL A\n#_1D853F: ASL A\n\n#_1D8540: ADC.w #.oam_groups\n#_1D8543: STA.b $08\n\n#_1D8545: SEP #$20\n\n#_1D8547: LDA.b #$04\n\n; =========================================================\n\n#SpriteDraw_Tabulated_Bank1D:\n#_1D8549: JSL SpriteDraw_Tabulated\n\n#_1D854D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChimneySmoke", + "code": "ChimneySmoke:\n#_1D8550: LDA.b #$30\n#_1D8552: STA.w $0B89,X\n\n#_1D8555: JSR SpriteDraw_ChimneySmoke\n#_1D8558: JSR Sprite_CheckIfActive_Bank1D\n#_1D855B: JSR Sprite_Move_XY_Bank1D\n\n#_1D855E: INC.w $0E80,X\n\n#_1D8561: LDA.w $0E80,X\n#_1D8564: AND.b #$07\n#_1D8566: BNE .delay\n\n#_1D8568: LDA.w $0DE0,X\n#_1D856B: AND.b #$01\n#_1D856D: TAY\n\n#_1D856E: LDA.w $0D50,X\n#_1D8571: CLC\n#_1D8572: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1D8575: STA.w $0D50,X\n\n#_1D8578: CMP.w .speed_target,Y\n#_1D857B: BNE .delay\n\n#_1D857D: INC.w $0DE0,X\n\n.delay\n#_1D8580: LDA.w $0E80,X\n#_1D8583: AND.b #$1F\n#_1D8585: BNE .exit\n\n#_1D8587: INC.w $0DC0,X\n\n.exit\n#_1D858A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D1_BunnyBeam", + "code": "Sprite_D1_BunnyBeam:\n#_1D858B: LDA.b $1B\n#_1D858D: BNE BunnyBeam\n\n#_1D858F: LDA.b #$40\n#_1D8591: STA.w $0E60,X\n#_1D8594: STA.w $0BA0,X\n\n#_1D8597: LDA.w $0D80,X\n#_1D859A: BNE ChimneySmoke\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Chimney", + "code": "Chimney:\n#_1D859C: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D859F: LDA.w $0DF0,X\n#_1D85A2: BNE .exit\n\n#_1D85A4: LDA.b #$43\n#_1D85A6: STA.w $0DF0,X\n\n#_1D85A9: LDA.b #$D1 ; SPRITE D1\n#_1D85AB: JSL Sprite_SpawnDynamically\n#_1D85AF: BMI .exit\n\n#_1D85B1: JSL Sprite_SetSpawnedCoordinates\n\n#_1D85B5: LDA.b $00\n#_1D85B7: CLC\n#_1D85B8: ADC.b #$08\n#_1D85BA: STA.w $0D10,Y\n\n#_1D85BD: LDA.b $02\n#_1D85BF: ADC.b #$04\n#_1D85C1: STA.w $0D00,Y\n\n#_1D85C4: LDA.b #$04\n#_1D85C6: STA.w $0F50,Y\n#_1D85C9: STA.w $0D80,Y\n\n#_1D85CC: LDA.b #$43\n#_1D85CE: STA.w $0E40,Y\n#_1D85D1: STA.w $0E60,Y\n\n#_1D85D4: LDA.w ChimneySmoke_speed_target+1\n#_1D85D7: STA.w $0D50,Y\n\n#_1D85DA: LDA.b #$FA\n#_1D85DC: STA.w $0D40,Y\n\n.exit\n#_1D85DF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "BunnyBeam", + "code": "BunnyBeam:\n#_1D85E0: LDA.w $0D80,X\n#_1D85E3: BNE .active\n\n#_1D85E5: JSL Sprite_PrepOAMCoord_long\n#_1D85E9: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D85EC: JSR Sprite_CheckTileCollision_Bank1D\n#_1D85EF: BNE .exit_a\n\n#_1D85F1: INC.w $0D80,X\n\n#_1D85F4: LDA.b #$80\n#_1D85F6: STA.w $0DF0,X\n\n.exit_a\n#_1D85F9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D0_Lynel", + "code": "Sprite_D0_Lynel:\n#_1D866A: JSR SpriteDraw_Lynel\n#_1D866D: JSR Sprite_CheckIfActive_Bank1D\n#_1D8670: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1D8673: JSR Sprite_DirectionToFaceLink_Bank1D\n#_1D8676: TYA\n#_1D8677: STA.w $0DE0,X\n\n#_1D867A: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1D867D: LDA.w $0D80,X\n#_1D8680: JSL JumpTableLocal\n#_1D8684: dw Lynel_TargetLink\n#_1D8686: dw Lynel_ChaseLink\n#_1D8688: dw Lynel_Fire\n\n; =========================================================\n\npool Lynel_TargetLink\n\n.offset_x_low ; bleeds into next\n#_1D868A: db -96, 96\n\n.offset_y_high\n#_1D868C: db 0, 0, -1, 0\n\n.offset_x_high\n#_1D8690: db -1, 0, 0, 0\n\n.offset_y_low\n#_1D8694: db 8, 8, -96, 112\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Lynel_TargetLink", + "code": "Lynel_TargetLink:\n#_1D8698: LDA.w $0DF0,X\n#_1D869B: BNE .delay\n\n#_1D869D: LDY.w $0DE0,X\n\n#_1D86A0: LDA.w .offset_x_low,Y\n#_1D86A3: CLC\n#_1D86A4: ADC.b $22\n#_1D86A6: STA.w $0D90,X\n\n#_1D86A9: LDA.w .offset_x_high,Y\n#_1D86AC: ADC.b $23\n#_1D86AE: STA.w $0DA0,X\n\n#_1D86B1: LDA.w .offset_y_low,Y\n#_1D86B4: CLC\n#_1D86B5: ADC.b $20\n#_1D86B7: STA.w $0DB0,X\n\n#_1D86BA: LDA.w .offset_y_high,Y\n#_1D86BD: ADC.b $21\n#_1D86BF: STA.w $0E90,X\n\n#_1D86C2: INC.w $0D80,X\n\n#_1D86C5: LDA.b #$50\n#_1D86C7: STA.w $0DF0,X\n\n.delay\n#_1D86CA: JMP.w Lynel_Animate\n\n; =========================================================\n\npool Lynel_ChaseLink\n\n.anim\n#_1D86CD: db $03, $00, $06, $09\n#_1D86D1: db $04, $01, $07, $0A\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Lynel_ChaseLink", + "code": "Lynel_ChaseLink:\n#_1D86D5: LDA.w $0DF0,X\n#_1D86D8: BEQ .ready_to_fire\n\n#_1D86DA: TXA\n#_1D86DB: EOR.b $1A\n#_1D86DD: AND.b #$03\n#_1D86DF: BNE .dont_turn\n\n#_1D86E1: JSR Sprite_AdjustAuxCoords_bank1D\n\n#_1D86E4: REP #$20\n\n#_1D86E6: LDA.b $04\n#_1D86E8: SEC\n#_1D86E9: SBC.w $0FD8\n#_1D86EC: CLC\n#_1D86ED: ADC.w #$0005\n\n#_1D86F0: CMP.w #$000A\n#_1D86F3: BCS .out_of_range\n\n#_1D86F5: LDA.b $06\n#_1D86F7: SEC\n#_1D86F8: SBC.w $0FDA\n#_1D86FB: CLC\n#_1D86FC: ADC.w #$0005\n\n#_1D86FF: CMP.w #$000A\n#_1D8702: BCS .out_of_range\n\n; ---------------------------------------------------------\n\n.ready_to_fire\n#_1D8704: SEP #$20\n\n#_1D8706: INC.w $0D80,X\n\n#_1D8709: LDA.b #$20\n#_1D870B: STA.w $0DF0,X\n\n#_1D870E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Lynel_Fire", + "code": "Lynel_Fire:\n#_1D8740: LDA.w $0DF0,X\n#_1D8743: BNE .delay\n\n#_1D8745: JSL GetRandomNumber\n#_1D8749: AND.b #$0F\n#_1D874B: ADC.b #$10\n#_1D874D: STA.w $0DF0,X\n\n#_1D8750: STZ.w $0D80,X\n\n#_1D8753: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Lynel", + "code": "SpriteDraw_Lynel:\n#_1D8880: LDA.b #$00\n#_1D8882: XBA\n#_1D8883: LDA.w $0DC0,X\n\n#_1D8886: REP #$20\n\n#_1D8888: ASL A\n#_1D8889: ASL A\n#_1D888A: ASL A\n#_1D888B: STA.b $00\n\n#_1D888D: ASL A\n#_1D888E: ADC.b $00\n#_1D8890: ADC.w #.oam_groups\n#_1D8893: STA.b $08\n\n#_1D8895: SEP #$20\n\n#_1D8897: LDA.b #$03\n#_1D8899: JSR SpriteDraw_Tabulated_Bank1D\n#_1D889C: JSL SpriteDraw_Shadow_long\n\n#_1D88A0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpawnPhantomGanon", + "code": "SpawnPhantomGanon:\n#_1D88A1: LDA.b #$C9 ; SPRITE C9\n#_1D88A3: JSL Sprite_SpawnDynamically\n#_1D88A7: JSL Sprite_SetSpawnedCoordinates\n\n#_1D88AB: LDA.b #$02\n#_1D88AD: STA.w $0E40,Y\n#_1D88B0: STA.w $0BA0,Y\n\n#_1D88B3: DEC A ; A=1\n#_1D88B4: STA.w $0EC0,Y\n\n#_1D88B7: DEC A ; A=0\n#_1D88B8: STA.w $0F50,Y\n\n#_1D88BB: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_PhantomGanon", + "code": "Sprite_PhantomGanon:\n#_1D88BC: LDA.w $0D80,X\n#_1D88BF: BNE Sprite_GanonBat\n\n#_1D88C1: JSR SpriteDraw_PhantomGanon\n#_1D88C4: JSR Sprite_CheckIfActive_Bank1D\n#_1D88C7: JSR Sprite_Move_Y_Bank1D\n\n#_1D88CA: INC.w $0E80,X\n#_1D88CD: LDA.w $0E80,X\n#_1D88D0: AND.b #$1F\n#_1D88D2: BNE .exit\n\n#_1D88D4: DEC.w $0D40,X\n\n#_1D88D7: LDA.w $0D40,X\n#_1D88DA: CMP.b #$FC\n#_1D88DC: BNE .no_poof\n\n#_1D88DE: PHA\n\n#_1D88DF: JSR SpawnBossPoof\n\n#_1D88E2: LDA.w $0D00,Y\n#_1D88E5: SEC\n#_1D88E6: SBC.b #$14\n#_1D88E8: STA.w $0D00,Y\n\n#_1D88EB: LDA.w $0D20,Y\n#_1D88EE: SBC.b #$00\n#_1D88F0: STA.w $0D20,Y\n\n#_1D88F3: PLA\n\n; ---------------------------------------------------------\n\n.no_poof\n#_1D88F4: CMP.b #$FB\n#_1D88F6: BNE .exit\n\n#_1D88F8: INC.w $0D80,X\n\n#_1D88FB: LDA.b #$FF\n#_1D88FD: STA.w $0DF0,X\n\n#_1D8900: LDA.b #$FC\n#_1D8902: STA.w $0D40,X\n\n.exit\n#_1D8905: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_GanonBat", + "code": "Sprite_GanonBat:\n#_1D890E: JSR SpriteDraw_GanonBat\n\n#_1D8911: LDA.w $0F00,X\n#_1D8914: BEQ .stay_alive\n\n#_1D8916: STZ.w $0DD0,X\n\n#_1D8919: LDA.w $0403\n#_1D891C: ORA.b #$80\n#_1D891E: STA.w $0403\n\n; ---------------------------------------------------------\n\n.stay_alive\n#_1D8921: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D8924: LDA.b $1A\n#_1D8926: LSR A\n#_1D8927: LSR A\n#_1D8928: AND.b #$03\n#_1D892A: TAY\n\n#_1D892B: LDA.w .anim,Y\n#_1D892E: STA.w $0DC0,X\n\n#_1D8931: LDA.w $0DF0,X\n#_1D8934: BEQ .only_move\n\n#_1D8936: CMP.b #$D0\n#_1D8938: BCS .adjust_velocity\n\n#_1D893A: LDA.w $0EB0,X\n#_1D893D: AND.b #$01\n#_1D893F: TAY\n\n#_1D8940: LDA.w $0D40,X\n#_1D8943: CLC\n#_1D8944: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1D8947: STA.w $0D40,X\n\n#_1D894A: CMP.w .max_speed_y,Y\n#_1D894D: BNE .target_not_reached\n\n#_1D894F: INC.w $0EB0,X\n\n.target_not_reached\n#_1D8952: LDA.w $0DE0,X\n#_1D8955: AND.b #$01\n#_1D8957: TAY\n\n#_1D8958: LDA.w $0D50,X\n#_1D895B: CLC\n#_1D895C: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1D895F: STA.w $0D50,X\n\n#_1D8962: BNE .no_sfx\n\n#_1D8964: PHA\n\n#_1D8965: LDA.b #$1E ; SFX3.1E\n#_1D8967: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1D896B: PLA\n\n.no_sfx\n#_1D896C: CMP.w .max_speed_x,Y\n#_1D896F: BNE .adjust_velocity\n\n#_1D8971: INC.w $0DE0,X\n\n.adjust_velocity\n#_1D8974: LDA.b #$78\n#_1D8976: STA.b $04\n\n#_1D8978: LDA.b #$50\n#_1D897A: STA.b $06\n\n#_1D897C: LDA.b $23\n#_1D897E: STA.b $05\n\n#_1D8980: LDA.b $21\n#_1D8982: STA.b $07\n\n#_1D8984: LDA.b #$05\n#_1D8986: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D898A: LDA.w $0D50,X\n#_1D898D: PHA\n\n#_1D898E: CLC\n#_1D898F: ADC.b $01\n#_1D8991: STA.w $0D50,X\n\n#_1D8994: LDA.w $0D40,X\n#_1D8997: PHA\n\n#_1D8998: CLC\n#_1D8999: ADC.b $00\n#_1D899B: STA.w $0D40,X\n\n#_1D899E: JSR Sprite_Move_XY_Bank1D\n\n#_1D89A1: PLA\n#_1D89A2: STA.w $0D40,X\n\n#_1D89A5: PLA\n#_1D89A6: STA.w $0D50,X\n\n#_1D89A9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_GanonBat", + "code": "SpriteDraw_GanonBat:\n#_1D89EB: LDA.b #$00\n#_1D89ED: XBA\n#_1D89EE: LDA.w $0DC0,X\n\n#_1D89F1: REP #$20\n\n#_1D89F3: ASL A\n#_1D89F4: ASL A\n#_1D89F5: ASL A\n#_1D89F6: ASL A\n#_1D89F7: CLC\n#_1D89F8: ADC.w #.oam_groups\n#_1D89FB: STA.b $08\n\n#_1D89FD: SEP #$20\n\n#_1D89FF: LDA.b #$02\n#_1D8A01: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n\npool SpriteDraw_PhantomGanon\n\n.oam_groups\n#_1D8A04: dw -16, -8 : db $46, $0D, $00, $02\n#_1D8A0C: dw -8, -8 : db $47, $0D, $00, $02\n#_1D8A14: dw 8, -8 : db $47, $4D, $00, $02\n#_1D8A1C: dw 16, -8 : db $46, $4D, $00, $02\n#_1D8A24: dw -16, 8 : db $69, $0D, $00, $02\n#_1D8A2C: dw -8, 8 : db $6A, $0D, $00, $02\n#_1D8A34: dw 8, 8 : db $6A, $4D, $00, $02\n#_1D8A3C: dw 16, 8 : db $69, $4D, $00, $02\n\n#_1D8A44: dw -16, -8 : db $46, $0D, $00, $02\n#_1D8A4C: dw -8, -8 : db $47, $0D, $00, $02\n#_1D8A54: dw 8, -8 : db $47, $4D, $00, $02\n#_1D8A5C: dw 16, -8 : db $46, $4D, $00, $02\n#_1D8A64: dw -16, 8 : db $66, $0D, $00, $02\n#_1D8A6C: dw -8, 8 : db $67, $0D, $00, $02\n#_1D8A74: dw 8, 8 : db $67, $4D, $00, $02\n#_1D8A7C: dw 16, 8 : db $66, $4D, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_PhantomGanon", + "code": "SpriteDraw_PhantomGanon:\n#_1D8A84: LDA.b #$00\n#_1D8A86: XBA\n#_1D8A87: LDA.w $0DC0,X\n\n#_1D8A8A: REP #$20\n\n#_1D8A8C: ASL A\n#_1D8A8D: ASL A\n#_1D8A8E: ASL A\n#_1D8A8F: ASL A\n#_1D8A90: ASL A\n#_1D8A91: ASL A\n#_1D8A92: CLC\n#_1D8A93: ADC.w #.oam_groups\n#_1D8A96: STA.b $08\n\n#_1D8A98: LDA.w #$0950\n#_1D8A9B: STA.b $90\n\n#_1D8A9D: LDA.w #$0A74\n#_1D8AA0: STA.b $92\n\n#_1D8AA2: SEP #$20\n\n#_1D8AA4: LDA.b #$08\n#_1D8AA6: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SwishEvery16Frames", + "code": "SwishEvery16Frames:\n#_1D8AA9: LDA.b $1A\n#_1D8AAB: AND.b #$0F\n#_1D8AAD: BNE .exit\n\n#_1D8AAF: LDA.b #$06 ; SFX3.06\n#_1D8AB1: JSL SpriteSFX_QueueSFX3WithPan\n\n.exit\n#_1D8AB5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_GanonTrident", + "code": "Sprite_GanonTrident:\n#_1D8AB6: JSR SpriteDraw_GanonTrident\n#_1D8AB9: JSR Sprite_CheckIfActive_Bank1D\n#_1D8ABC: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n#_1D8ABF: JSR SwishEvery16Frames\n#_1D8AC2: JSR Sprite_Move_XY_Bank1D\n\n#_1D8AC5: DEC.w $0E80,X\n\n#_1D8AC8: LDA.w $0E80,X\n#_1D8ACB: LSR A\n#_1D8ACC: LSR A\n#_1D8ACD: AND.b #$07\n#_1D8ACF: TAY\n\n#_1D8AD0: LDA.w GanonTrident_Timers,Y\n#_1D8AD3: STA.w $0ED0,X\n\n#_1D8AD6: LDA.w $0DF0,X\n#_1D8AD9: BEQ GanonTrident_TakeAim\n\n#_1D8ADB: LSR A\n#_1D8ADC: BCS .exit\n\n#_1D8ADE: LDA.b #$20\n#_1D8AE0: JSL Sprite_ProjectSpeedTowardsLink_long\n\n; =========================================================\n\n#GanonTrident_AdjustVelocity:\n#_1D8AE4: LDA.b $00\n#_1D8AE6: CMP.w $0D40,X\n#_1D8AE9: BEQ .handle_x\n#_1D8AEB: BPL .accelerate_y\n\n.decelerate_y\n#_1D8AED: DEC.w $0D40,X\n#_1D8AF0: BRA .handle_x\n\n.accelerate_y\n#_1D8AF2: INC.w $0D40,X\n\n.handle_x\n#_1D8AF5: LDA.b $01\n#_1D8AF7: CMP.w $0D50,X\n#_1D8AFA: BEQ .exit\n#_1D8AFC: BPL .accelerate_x\n\n.decelerate_x\n#_1D8AFE: DEC.w $0D50,X\n#_1D8B01: BRA .exit\n\n.accelerate_x\n#_1D8B03: INC.w $0D50,X\n\n.exit\n#_1D8B06: RTS", + "file": "bank_1D.asm" + }, + { + "name": "GanonTrident_TakeAim", + "code": "GanonTrident_TakeAim:\n#_1D8B0B: LDY.w $0DE0\n\n#_1D8B0E: LDA.w $0D10\n#_1D8B11: CLC\n#_1D8B12: ADC.w .offset_x_low,Y\n#_1D8B15: STA.b $04\n\n#_1D8B17: LDA.w $0D30\n#_1D8B1A: ADC.w .offset_x_high,Y\n#_1D8B1D: STA.b $05\n\n#_1D8B1F: LDA.w $0D00\n#_1D8B22: CLC\n#_1D8B23: ADC.b #$F0\n#_1D8B25: STA.b $06\n\n#_1D8B27: LDA.w $0D20\n#_1D8B2A: ADC.b #$FF\n#_1D8B2C: STA.b $07\n\n#_1D8B2E: JSR Ganon_AttemptTridentCatch\n#_1D8B31: BCS .miss\n\n#_1D8B33: STZ.w $0DD0,X\n\n#_1D8B36: LDA.b #$03\n#_1D8B38: STA.w $0D80\n\n#_1D8B3B: LDA.b #$10\n#_1D8B3D: STA.w $0DF0\n\n.miss\n#_1D8B40: LDA.b #$20\n#_1D8B42: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D8B46: JMP.w GanonTrident_AdjustVelocity\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_Trailer", + "code": "FireBat_Trailer:\n#_1D8B49: JSR SpriteDraw_FireBat\n#_1D8B4C: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D8B4F: JMP.w FireBat_Move\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_Spiral", + "code": "FireBat_Spiral:\n#_1D8B52: JSR SpriteDraw_FireBat\n#_1D8B55: JSR Sprite_CheckIfActive_Bank1D\n#_1D8B58: JSR Sprite_AdjustAuxCoords_bank1D\n\n#_1D8B5B: LDA.b #$02\n#_1D8B5D: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D8B61: LDA.b $00\n#_1D8B63: STA.w $0D40,X\n\n#_1D8B66: LDA.b $01\n#_1D8B68: STA.w $0D50,X\n\n#_1D8B6B: LDA.b #$50\n#_1D8B6D: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D8B71: LDA.w $0D50,X\n#_1D8B74: EOR.b #$FF\n#_1D8B76: INC A\n#_1D8B77: CLC\n#_1D8B78: ADC.b $00\n#_1D8B7A: STA.w $0D50,X\n\n#_1D8B7D: LDA.w $0D40,X\n#_1D8B80: EOR.b #$FF\n#_1D8B82: INC A\n#_1D8B83: STA.b $00\n\n#_1D8B85: LDA.b $01\n#_1D8B87: EOR.b #$FF\n#_1D8B89: INC A\n#_1D8B8A: CLC\n#_1D8B8B: ADC.b $00\n#_1D8B8D: STA.w $0D40,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_Move", + "code": "FireBat_Move:\n#_1D8B90: JSR FireBat_Animate\n#_1D8B93: JSR Sprite_Move_XY_Bank1D\n\n#_1D8B96: LDA.w $0E80,X\n#_1D8B99: AND.b #$07\n#_1D8B9B: BNE .exit\n\n#_1D8B9D: LDA.b #$0E\n#_1D8B9F: JSR FireBat_SpawnFireballGarnish\n\n#_1D8BA2: LDY.w $0EC0,X\n\n#_1D8BA5: PHX\n\n#_1D8BA6: LDX.b $00\n\n#_1D8BA8: LDA.b #$10 ; GARNISH 10\n#_1D8BAA: STA.l $7FF800,X\n\n#_1D8BAE: LDA.b #$4F\n#_1D8BB0: CPY.b #$05\n#_1D8BB2: BNE .use_longer_timer\n\n#_1D8BB4: LDA.b #$2F\n\n.use_longer_timer\n#_1D8BB6: STA.l $7FF90E,X\n\n#_1D8BBA: PLX\n\n.exit\n#_1D8BBB: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_AdjustAuxCoords_bank1D", + "code": "Sprite_AdjustAuxCoords_bank1D:\n#_1D8BBC: LDA.w $0D90,X\n#_1D8BBF: STA.b $04\n\n#_1D8BC1: LDA.w $0DA0,X\n#_1D8BC4: STA.b $05\n\n#_1D8BC6: LDA.w $0DB0,X\n#_1D8BC9: STA.b $06\n\n#_1D8BCB: LDA.w $0E90,X\n#_1D8BCE: STA.b $07\n\n#_1D8BD0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_OverlordOffset", + "code": "FireBat_OverlordOffset:\n.x_low\n#_1D8BD1: db 20, -18\n\n.x_high\n#_1D8BD3: db 0, -1\n\n.y_low\n#_1D8BD5: db -20, -20\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_Launched", + "code": "FireBat_Launched:\n#_1D8BD7: JSR SpriteDraw_FireBat\n#_1D8BDA: JSR Sprite_CheckIfActive_Bank1D\n#_1D8BDD: JSL Sprite_CheckDamageToLink_long\n\n#_1D8BE1: LDA.w $0D80,X\n#_1D8BE4: JSL JumpTableLocal\n#_1D8BE8: dw FireBat_PositionSelfAndAnimateAndPrepareForLaunch\n#_1D8BEA: dw FireBat_PositionSelfAndAnimate\n#_1D8BEC: dw FireBat_LaunchedFlying\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "GetPositionRelativeToTheGreatOverlordGanon", + "code": "GetPositionRelativeToTheGreatOverlordGanon:\n#_1D8BEE: LDY.w $0DE0\n\n#_1D8BF1: LDA.w $0B10,X\n#_1D8BF4: CLC\n#_1D8BF5: ADC.w FireBat_OverlordOffset_x_low,Y\n#_1D8BF8: STA.w $0D10,X\n\n#_1D8BFB: LDA.w $0B20,X\n#_1D8BFE: ADC.w FireBat_OverlordOffset_x_high,Y\n#_1D8C01: STA.w $0D30,X\n\n#_1D8C04: LDA.w $0B30,X\n#_1D8C07: CLC\n#_1D8C08: ADC.w FireBat_OverlordOffset_y_low,Y\n#_1D8C0B: STA.w $0D00,X\n\n#_1D8C0E: LDA.w $0B40,X\n#_1D8C11: ADC.b #$FF\n#_1D8C13: STA.w $0D20,X\n\n#_1D8C16: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_PositionSelfAndAnimateAndPrepareForLaunch", + "code": "FireBat_PositionSelfAndAnimateAndPrepareForLaunch:\n#_1D8C17: JSR GetPositionRelativeToTheGreatOverlordGanon\n\n#_1D8C1A: LDA.w $0DF0,X\n#_1D8C1D: BNE FireBat_AdjustAnimationState\n\n#_1D8C1F: INC.w $0D80,X\n\n#_1D8C22: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_AdjustAnimationState", + "code": "FireBat_AdjustAnimationState:\n#_1D8C23: AND.b #$04\n#_1D8C25: LSR A\n#_1D8C26: LSR A\n#_1D8C27: STA.w $0DC0,X\n\n#_1D8C2A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_AnimationStates", + "code": "FireBat_AnimationStates:\n.launched\n#_1D8C2B: db $04, $04, $04, $03, $03, $03, $02, $02, $02\n\n.normal\n#_1D8C34: db $04, $05, $06, $05\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_PositionSelfAndAnimate", + "code": "FireBat_PositionSelfAndAnimate:\n#_1D8C38: JSR GetPositionRelativeToTheGreatOverlordGanon\n\n#_1D8C3B: INC.w $0E80,X\n#_1D8C3E: LDA.w $0E80,X\n#_1D8C41: BRA FireBat_AdjustAnimationState\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_Animate", + "code": "FireBat_Animate:\n#_1D8C43: INC.w $0E80,X\n\n#_1D8C46: LDA.w $0E80,X\n#_1D8C49: LSR A\n#_1D8C4A: LSR A\n#_1D8C4B: AND.b #$03\n#_1D8C4D: TAY\n\n#_1D8C4E: LDA.w FireBat_AnimationStates_normal,Y\n#_1D8C51: STA.w $0DC0,X\n\n#_1D8C54: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_LaunchedFlying", + "code": "FireBat_LaunchedFlying:\n#_1D8C55: JSR Sprite_Move_XY_Bank1D\n\n#_1D8C58: LDA.b #$40\n#_1D8C5A: STA.w $0CAA,X\n\n#_1D8C5D: LDA.w $0E00,X\n#_1D8C60: BEQ .begin_anim\n\n#_1D8C62: CMP.b #$01\n#_1D8C64: BEQ .calculate_speed\n\n#_1D8C66: LSR A\n#_1D8C67: LSR A\n#_1D8C68: TAY\n#_1D8C69: LDA.w FireBat_AnimationStates_launched,Y\n#_1D8C6C: STA.w $0DC0,X\n\n#_1D8C6F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_FireBat", + "code": "SpriteDraw_FireBat:\n#_1D8CA9: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1D8CAC: LDA.w $0DC0,X\n#_1D8CAF: STA.b $07\n\n#_1D8CB1: ASL A\n#_1D8CB2: STA.b $06\n\n#_1D8CB4: PHX\n\n#_1D8CB5: LDX.b #$01\n\n.next_object\n#_1D8CB7: PHX\n\n#_1D8CB8: TXA\n#_1D8CB9: ASL A\n#_1D8CBA: TAX\n\n#_1D8CBB: REP #$20\n\n#_1D8CBD: LDA.b $00\n#_1D8CBF: CLC\n#_1D8CC0: ADC.w .offset_x,X\n#_1D8CC3: STA.b ($90),Y\n\n#_1D8CC5: AND.w #$0100\n#_1D8CC8: STA.b $0E\n\n#_1D8CCA: LDA.b $02\n#_1D8CCC: INY\n#_1D8CCD: STA.b ($90),Y\n\n#_1D8CCF: CLC\n#_1D8CD0: ADC.w #$0010\n#_1D8CD3: CMP.w #$0100\n\n#_1D8CD6: SEP #$20\n\n#_1D8CD8: BCC .on_screen\n\n#_1D8CDA: LDA.b #$F0\n#_1D8CDC: STA.b ($90),Y\n\n.on_screen\n#_1D8CDE: LDX.b $07\n\n#_1D8CE0: LDA.w .char,X\n#_1D8CE3: INY\n#_1D8CE4: STA.b ($90),Y\n\n#_1D8CE6: PLA\n#_1D8CE7: PHA\n#_1D8CE8: ORA.b $06\n#_1D8CEA: TAX\n\n#_1D8CEB: LDA.w .flip,X\n#_1D8CEE: ORA.b $05\n#_1D8CF0: INY\n#_1D8CF1: STA.b ($90),Y\n\n#_1D8CF3: PHY\n\n#_1D8CF4: TYA\n#_1D8CF5: LSR A\n#_1D8CF6: LSR A\n#_1D8CF7: TAY\n\n#_1D8CF8: LDA.b #$02\n#_1D8CFA: ORA.b $0F\n#_1D8CFC: STA.b ($92),Y\n\n#_1D8CFE: PLY\n\n#_1D8CFF: INY\n\n#_1D8D00: PLX\n#_1D8D01: DEX\n#_1D8D02: BPL .next_object\n\n; ---------------------------------------------------------\n\n#_1D8D04: PLX\n\n#_1D8D05: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_AttemptTridentCatch", + "code": "Ganon_AttemptTridentCatch:\n#_1D8D06: REP #$20\n\n#_1D8D08: LDA.w $0FD8\n#_1D8D0B: SEC\n#_1D8D0C: SBC.b $04\n#_1D8D0E: CLC\n#_1D8D0F: ADC.w #$0004\n\n#_1D8D12: CMP.w #$0008\n#_1D8D15: BCS .catch\n\n#_1D8D17: LDA.w $0FDA\n#_1D8D1A: SEC\n#_1D8D1B: SBC.b $06\n#_1D8D1D: CLC\n#_1D8D1E: ADC.w #$0004\n\n#_1D8D21: CMP.w #$0008\n#_1D8D24: BCS .catch\n\n.catch\n#_1D8D26: SEP #$20\n\n#_1D8D28: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_Ganon_PrepareBattle", + "code": "SpritePrep_Ganon_PrepareBattle:\n#_1D8D29: PHB\n#_1D8D2A: PHK\n#_1D8D2B: PLB\n\n#_1D8D2C: JSR Ganon_HandleAnimation_Idle\n\n#_1D8D2F: LDA.b #$80\n#_1D8D31: STA.w $0DF0,X\n\n#_1D8D34: LDA.b #$02\n#_1D8D36: STA.w $0C9A,X\n\n#_1D8D39: LDA.b #$1E ; SONG 1E\n#_1D8D3B: STA.w $012C\n\n#_1D8D3E: PLB\n\n#_1D8D3F: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_HandleFireBatCircle", + "code": "Ganon_HandleFireBatCircle:\n#_1D8D70: LDA.b #$FC\n#_1D8D72: CLC\n#_1D8D73: ADC.w $0B08\n#_1D8D76: STA.w $0B08\n\n#_1D8D79: LDA.b #$FF\n#_1D8D7B: ADC.w $0B09\n#_1D8D7E: STA.w $0B09\n\n#_1D8D81: STZ.w $0FB5\n\n#_1D8D84: PHX\n\n.next_bat\n#_1D8D85: LDA.w $0FB5\n#_1D8D88: TAX\n\n#_1D8D89: ASL A\n#_1D8D8A: TAY\n\n#_1D8D8B: REP #$20\n\n#_1D8D8D: LDA.w $0B08\n#_1D8D90: CLC\n#_1D8D91: ADC.w .offset_x1,Y\n#_1D8D94: AND.w #$01FF\n#_1D8D97: STA.b $00\n\n#_1D8D99: LSR A\n#_1D8D9A: LSR A\n#_1D8D9B: LSR A\n#_1D8D9C: LSR A\n#_1D8D9D: LSR A\n\n#_1D8D9E: TAY\n\n; ---------------------------------------------------------\n\n#_1D8D9F: SEP #$20\n\n#_1D8DA1: LDA.w $0D81,X\n#_1D8DA4: CMP.b #$02\n#_1D8DA6: BEQ .am_bat_now\n\n#_1D8DA8: TYA\n#_1D8DA9: SEC\n#_1D8DAA: SBC.b #$04\n#_1D8DAC: AND.b #$0F\n#_1D8DAE: TAY\n\n#_1D8DAF: LDA.w .offset_x2,Y\n#_1D8DB2: STA.w $0D51,X\n\n#_1D8DB5: ASL A\n#_1D8DB6: PHP\n#_1D8DB7: ROR.w $0D51,X\n\n#_1D8DBA: PLP\n#_1D8DBB: ROR.w $0D51,X\n\n#_1D8DBE: LDA.w .offset_x3,Y\n#_1D8DC1: STA.w $0D41,X\n\n#_1D8DC4: ASL A\n#_1D8DC5: PHP\n#_1D8DC6: ROR.w $0D41,X\n\n#_1D8DC9: PLP\n#_1D8DCA: ROR.w $0D41,X\n\n; ---------------------------------------------------------\n\n.am_bat_now\n#_1D8DCD: LDA.w $0B0A\n#_1D8DD0: STA.b $0F\n\n#_1D8DD2: PHX\n\n#_1D8DD3: REP #$30\n\n#_1D8DD5: LDA.b $00\n#_1D8DD7: AND.w #$00FF\n#_1D8DDA: ASL A\n#_1D8DDB: TAX\n\n#_1D8DDC: LDA.l SmoothCurve,X\n#_1D8DE0: STA.b $04\n\n#_1D8DE2: LDA.b $00\n#_1D8DE4: CLC\n#_1D8DE5: ADC.w #$0080\n#_1D8DE8: STA.b $02\n\n#_1D8DEA: AND.w #$00FF\n#_1D8DED: ASL A\n#_1D8DEE: TAX\n\n#_1D8DEF: LDA.l SmoothCurve,X\n#_1D8DF3: STA.b $06\n\n#_1D8DF5: SEP #$30\n\n; ---------------------------------------------------------\n\n#_1D8DF7: PLX\n\n#_1D8DF8: LDA.b $04\n#_1D8DFA: STA.w WRMPYA\n\n#_1D8DFD: LDA.b $0F\n#_1D8DFF: LDY.b $05\n#_1D8E01: BNE .nonzero_a\n\n#_1D8E03: STA.w WRMPYB\n\n#_1D8E06: JSR Six_NOP\n\n#_1D8E09: ASL.w RDMPYL\n#_1D8E0C: LDA.w RDMPYH\n#_1D8E0F: ADC.b #$00\n\n.nonzero_a\n#_1D8E11: LSR.b $01\n#_1D8E13: BCC .dont_invert_a\n\n#_1D8E15: EOR.b #$FF\n#_1D8E17: INC A\n\n.dont_invert_a\n#_1D8E18: STZ.b $0A\n\n#_1D8E1A: CMP.b #$00\n#_1D8E1C: BPL .delay_tick_a\n\n#_1D8E1E: DEC.b $0A\n\n.delay_tick_a\n#_1D8E20: CLC\n#_1D8E21: ADC.w $0D10\n#_1D8E24: STA.w $0B11,X\n\n#_1D8E27: LDA.w $0D30\n#_1D8E2A: ADC.b $0A\n#_1D8E2C: STA.w $0B21,X\n\n; ---------------------------------------------------------\n\n#_1D8E2F: LDA.b $06\n#_1D8E31: STA.w WRMPYA\n\n#_1D8E34: LDA.b $0F\n\n#_1D8E36: LDY.b $07\n#_1D8E38: BNE .nonzero_b\n\n#_1D8E3A: STA.w WRMPYB\n\n#_1D8E3D: JSR Six_NOP\n\n#_1D8E40: ASL.w RDMPYL\n#_1D8E43: LDA.w RDMPYH\n#_1D8E46: ADC.b #$00\n\n.nonzero_b\n#_1D8E48: LSR.b $03\n#_1D8E4A: BCC .dont_invert_b\n\n#_1D8E4C: EOR.b #$FF\n#_1D8E4E: INC A\n\n.dont_invert_b\n#_1D8E4F: STZ.b $0A\n\n#_1D8E51: CMP.b #$00\n#_1D8E53: BPL .delay_tick_b\n\n#_1D8E55: DEC.b $0A\n\n.delay_tick_b\n#_1D8E57: CLC\n#_1D8E58: ADC.w $0D00\n#_1D8E5B: STA.w $0B31,X\n\n#_1D8E5E: LDA.w $0D20\n#_1D8E61: ADC.b $0A\n#_1D8E63: STA.w $0B41,X\n\n#_1D8E66: INC.w $0FB5\n\n#_1D8E69: LDA.w $0FB5\n#_1D8E6C: CMP.b #$08\n#_1D8E6E: BEQ .exit\n\n; ---------------------------------------------------------\n\n#_1D8E70: JMP.w .next_bat\n\n.exit\n#_1D8E73: PLX\n\n#_1D8E74: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Six_NOP", + "code": "Six_NOP:\n#_1D8E75: NOP\n#_1D8E76: NOP\n#_1D8E77: NOP\n#_1D8E78: NOP\n#_1D8E79: NOP\n#_1D8E7A: NOP\n\n#_1D8E7B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SpawnSpiralBat", + "code": "Ganon_SpawnSpiralBat:\n#_1D8E7C: LDA.b #$C9 ; SPRITE C9\n#_1D8E7E: LDY.b #$08\n#_1D8E80: JSL Sprite_SpawnDynamically_slot_limited\n#_1D8E84: BMI .no_space\n\n#_1D8E86: JSL Sprite_SetSpawnedCoordinates\n\n#_1D8E8A: LDA.b #$04\n#_1D8E8C: STA.w $0EC0,Y\n\n#_1D8E8F: LDA.b #$03\n#_1D8E91: STA.w $0F50,Y\n\n#_1D8E94: LDA.b #$40\n#_1D8E96: STA.w $0E60,Y\n\n#_1D8E99: LDA.b #$01\n#_1D8E9B: STA.w $0E40,Y\n\n#_1D8E9E: LDA.b #$80\n#_1D8EA0: STA.w $0CAA,Y\n#_1D8EA3: STA.w $0D20,Y\n\n#_1D8EA6: LDA.b #$30\n#_1D8EA8: STA.w $0DF0,Y\n\n; =========================================================\n\n#Ganon_SetSpawnedEntityProperties:\n#_1D8EAB: LDA.b #$07\n#_1D8EAD: STA.w $0CD2,Y\n#_1D8EB0: STA.w $0BA0,Y\n\n.no_space\n#_1D8EB3: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D6_Ganon", + "code": "Sprite_D6_Ganon:", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D7_Ganon", + "code": "Sprite_D7_Ganon:\n#_1D8EB4: LDA.w $0D80,X\n#_1D8EB7: BPL .not_dying\n\n#_1D8EB9: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D8EBC: LDA.w $0DF0,X\n#_1D8EBF: BNE .live\n\n#_1D8EC1: STZ.w $0DD0,X\n\n.live\n#_1D8EC4: LSR A\n#_1D8EC5: BCS .exit\n\n#_1D8EC7: JSR SpriteDraw_Ganon\n\n.exit\n#_1D8ECA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase4_Stunned", + "code": "Ganon_Phase4_Stunned:\n#_1D8F8C: LDA.b #$05\n#_1D8F8E: STA.w $0F50,X\n\n#_1D8F91: LDA.b #$02\n#_1D8F93: STA.w SprTileDie,X\n\n#_1D8F96: LDA.w $0DF0,X\n#_1D8F99: BNE .delay\n\n#_1D8F9B: LDA.b #$01\n#_1D8F9D: STA.w $0F50,X\n\n#_1D8FA0: LDA.b #$12\n#_1D8FA2: JSR Ganon_SelectWarpLocation\n\n#_1D8FA5: LDA.b #$D6 ; SPRITE D6\n#_1D8FA7: STA.w $0E20,X\n\n#_1D8FAA: STZ.w $0EF0,X\n\n#_1D8FAD: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase4_Attack", + "code": "Ganon_Phase4_Attack:\n#_1D8FBC: LDY.w $0DE0,X\n\n#_1D8FBF: LDA.w .draw_aaa,Y\n#_1D8FC2: STA.w $0DC0,X\n\n#_1D8FC5: LDA.w $0DF0,X\n#_1D8FC8: BNE .delay\n\n#_1D8FCA: LDA.b #$12\n#_1D8FCC: JSR Ganon_SelectWarpLocation\n\n#_1D8FCF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_EnableInvincibility", + "code": "Ganon_EnableInvincibility:\n#_1D8FFA: LDA.w $0EF0,X\n#_1D8FFD: AND.b #$7F\n#_1D8FFF: CMP.b #$1A\n#_1D9001: BNE .exit\n\n#_1D9003: STZ.w $0EF0,X\n\n#_1D9006: LDA.b #$13\n#_1D9008: STA.w $0D80,X\n\n#_1D900B: LDA.b #$7F\n#_1D900D: STA.w $0DF0,X\n\n#_1D9010: LDA.b #$D7 ; SPRITE D7\n#_1D9012: STA.w $0E20,X\n\n.exit\n#_1D9015: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase3_SmashFloor", + "code": "Ganon_Phase3_SmashFloor:\n#_1D9018: LDA.w $0DF0,X\n#_1D901B: BEQ .ascend\n\n#_1D901D: DEC A\n#_1D901E: BNE .delay\n\n#_1D9020: LDA.b #$10\n#_1D9022: STA.w $0D80,X\n\n#_1D9025: LDA.b #$A0\n#_1D9027: STA.w $0F80,X\n\n#_1D902A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase3_DropTiles", + "code": "Ganon_Phase3_DropTiles:\n#_1D9044: STZ.w $011C\n#_1D9047: STZ.w $011D\n\n#_1D904A: LDA.w $0DF0,X\n#_1D904D: BEQ .descend\n\n#_1D904F: DEC A\n#_1D9050: BNE .shake_screen\n\n; ---------------------------------------------------------\n\n#_1D9052: LDA.b #$05 ; SFX1.05\n#_1D9054: STA.w $012D\n\n#_1D9057: LDA.b #$0D\n#_1D9059: JSR Ganon_SelectWarpLocation\n\n#_1D905C: STZ.w $02E4\n\n#_1D905F: JSR Ganon_SpawnFallingTilesOverlord\n\n#_1D9062: LDA.w $0EC0,X\n#_1D9065: CMP.b #$04\n#_1D9067: BCC .exit\n\n#_1D9069: LDA.b #$0A\n#_1D906B: JSR Ganon_SelectWarpLocation\n\n#_1D906E: LDA.b #$60\n#_1D9070: STA.w $0E50,X\n\n#_1D9073: LDA.b #$E0\n#_1D9075: STA.w $0E10,X\n\n#_1D9078: LDA.b #$70 ; MESSAGE 0170\n#_1D907A: STA.w $1CF0\n\n#_1D907D: LDA.b #$01\n\n; =========================================================\n\n#Sprite_ShowMessageMinimal_bank1D:\n#_1D907F: STA.w $1CF1\n\n#_1D9082: JSL Sprite_ShowMessageMinimal\n\n.exit\n#_1D9086: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SpawnFallingTilesOverlord", + "code": "Ganon_SpawnFallingTilesOverlord:\n#_1D90D0: LDY.b #$07\n\n.next_slot\n#_1D90D2: LDA.w $0B00,Y\n#_1D90D5: BEQ .free_slot\n\n#_1D90D7: DEY\n#_1D90D8: BPL .next_slot\n\n#_1D90DA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase3_FireBats", + "code": "Ganon_Phase3_FireBats:\n#_1D9113: LDA.w $0DF0,X\n#_1D9116: BNE .attempt_bat_spawn\n\n; =========================================================\n\n#Ganon_Phase3_WarpSelect:\n#_1D9118: LDA.b #$0D\n#_1D911A: JSR Ganon_SelectWarpLocation\n\n#_1D911D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SpawnFireBat_trailing", + "code": "Ganon_SpawnFireBat_trailing:\n#_1D915C: LDA.b #$05\n#_1D915E: BRA Ganon_SpawnFireBat\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SpawnFireBat_spiral", + "code": "Ganon_SpawnFireBat_spiral:\n#_1D9160: LDA.b #$03\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SpawnFireBat", + "code": "Ganon_SpawnFireBat:\n#_1D9162: STA.w $0FB5\n\n#_1D9165: LDA.b #$C9 ; SPRITE C9\n#_1D9167: LDY.b #$08\n#_1D9169: JSL Sprite_SpawnDynamically_slot_limited\n#_1D916D: BMI .exit\n\n; ---------------------------------------------------------\n\n#_1D916F: LDA.b #$2A ; SFX2.2A\n#_1D9171: JSL SpriteSFX_QueueSFX2WithPan\n#_1D9175: JSL Sprite_SetSpawnedCoordinates\n\n#_1D9179: LDA.w $0FB5\n#_1D917C: STA.w $0EC0,Y\n#_1D917F: STA.w $0BA0,Y\n\n#_1D9182: LDA.b #$03\n#_1D9184: STA.w $0F50,Y\n\n#_1D9187: LDA.b #$40\n#_1D9189: STA.w $0E60,Y\n\n#_1D918C: LDA.b #$21\n#_1D918E: STA.w $0E40,Y\n\n#_1D9191: LDA.b #$40\n#_1D9193: STA.w $0CAA,Y\n\n; ---------------------------------------------------------\n\n#_1D9196: PHX\n\n#_1D9197: LDA.w $0DE0,X\n#_1D919A: TAX\n\n#_1D919B: LDA.b $02\n#_1D919D: CLC\n#_1D919E: ADC.w .offset_y,X\n#_1D91A1: STA.w $0D00,Y\n\n#_1D91A4: LDA.b $03\n#_1D91A6: ADC.w .offset_x,X\n#_1D91A9: STA.w $0D20,Y\n\n#_1D91AC: TYX\n\n#_1D91AD: LDA.b #$20\n#_1D91AF: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1D91B3: PLX\n\n; ---------------------------------------------------------\n\n#_1D91B4: LDA.b #$10\n#_1D91B6: STA.w $0DF0,Y\n\n#_1D91B9: LDA.w $0D10\n#_1D91BC: STA.w $0D90,Y\n\n#_1D91BF: LDA.w $0D30\n#_1D91C2: STA.w $0DA0,Y\n\n#_1D91C5: LDA.w $0D00\n#_1D91C8: STA.w $0DB0,Y\n\n#_1D91CB: LDA.w $0D20\n#_1D91CE: STA.w $0E90,Y\n\n#_1D91D1: JMP.w Ganon_SetSpawnedEntityProperties\n\n; ---------------------------------------------------------\n\n.exit\n#_1D91D4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase3_SabotagePB", + "code": "Ganon_Phase3_SabotagePB:\n#_1D91D5: INC.w $0BA0,X\n\n#_1D91D8: JSR Ganon_HandleAnimation_Idle\n\n#_1D91DB: STZ.w $0ED0,X\n\n#_1D91DE: LDA.w $0DF0,X\n#_1D91E1: BNE .delay\n\n#_1D91E3: JSL GetRandomNumber\n#_1D91E7: AND.b #$01\n#_1D91E9: BEQ .allow_for_pb\n\n#_1D91EB: JMP.w Ganon_Phase3_WarpSelect\n\n; ---------------------------------------------------------\n\n.allow_for_pb\n#_1D91EE: LDA.b #$7F\n#_1D91F0: STA.w $0DF0,X\n\n#_1D91F3: LDA.b #$0C\n#_1D91F5: STA.w $0D80,X\n\n#_1D91F8: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase2_CircleOfBats", + "code": "Ganon_Phase2_CircleOfBats:\n#_1D9203: LDA.w $0E50,X\n#_1D9206: CMP.b #$A1\n#_1D9208: BCS .hp_fine\n\n#_1D920A: LDA.b #$A0 ; 160 hp\n#_1D920C: STA.w $0E50,X\n\n.hp_fine\n#_1D920F: LDA.b #$28\n#_1D9211: STA.w $0B0A\n\n#_1D9214: LDA.w $0DF0,X\n#_1D9217: BNE .delay\n\n#_1D9219: LDA.b #$08\n#_1D921B: STA.w $0D80,X\n\n#_1D921E: LDA.b #$FF\n#_1D9220: STA.w $0DF0,X\n\n#_1D9223: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase2_LaunchSpiralBats", + "code": "Ganon_Phase2_LaunchSpiralBats:\n#_1D9248: LDA.w $0E50,X\n#_1D924B: CMP.b #$A1\n#_1D924D: BCS .hp_fine\n\n#_1D924F: LDA.b #$A0 ; 160 HP\n#_1D9251: STA.w $0E50,X\n\n.hp_fine\n#_1D9254: LDA.w $0DF0,X\n#_1D9257: BNE .adjust_bats\n\n#_1D9259: LDA.b #$09\n#_1D925B: STA.w $0D80,X\n\n#_1D925E: LDA.b #$7F\n#_1D9260: STA.w $0DF0,X\n\n#_1D9263: JSR Ganon_HandleAnimation_Idle\n\n; ---------------------------------------------------------\n\n#_1D9266: LDY.b #$08\n\n.next_bat\n#_1D9268: LDA.b #$02\n#_1D926A: STA.w $0D80,Y\n\n#_1D926D: LDA.w .timers-1,Y\n#_1D9270: STA.w $0DF0,Y\n\n#_1D9273: DEY\n#_1D9274: BNE .next_bat\n\n#_1D9276: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_HandleTridentAndSpiral", + "code": "Ganon_HandleTridentAndSpiral:\n#_1D9288: JSR Ganon_Phase1_AnimateTridentSpin\n#_1D928B: JSR Ganon_HandleFireBatCircle\n\n#_1D928E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase2_Warp", + "code": "Ganon_Phase2_Warp:\n#_1D928F: LDA.w $0E50,X\n#_1D9292: CMP.b #$A1\n#_1D9294: BCS .hp_fine\n\n#_1D9296: LDA.b #$A0 ; 160 HP\n#_1D9298: STA.w $0E50,X\n\n.hp_fine\n#_1D929B: LDA.w $0DF0,X\n#_1D929E: BNE .delay_choice\n\n#_1D92A0: LDA.b #$0A\n#_1D92A2: JSR Ganon_SelectWarpLocation\n\n#_1D92A5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase2_MakePhaseDecision", + "code": "Ganon_Phase2_MakePhaseDecision:\n#_1D92AA: INC.w $0BA0,X\n\n#_1D92AD: JSR Ganon_HandleAnimation_Idle\n\n#_1D92B0: LDA.w $0DF0,X\n#_1D92B3: BNE .wait\n\n; =========================================================\n\n#Ganon_AdvanceToPhase2:\n#_1D92B5: LDA.b #$FF\n#_1D92B7: STA.w $0DF0,X\n\n#_1D92BA: LDA.b #$07\n#_1D92BC: STA.w $0D80,X\n\n#_1D92BF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_IntroduceSelf", + "code": "Ganon_Phase1_IntroduceSelf:\n#_1D92CA: LDA.w $0DF0,X\n#_1D92CD: BNE .let_iron_cool_before_striking\n\n; =========================================================\n\n#Ganon_ContinueWithPhase1:\n#_1D92CF: LDA.b #$01\n#_1D92D1: STA.w $0D80,X\n\n#_1D92D4: LDA.b #$80\n#_1D92D6: STA.w $0DF0,X\n\n#_1D92D9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "GanonTrident_Timers", + "code": "GanonTrident_Timers:\n.facing_down\n#_1D92F7: db $08, $07, $06, $05, $04, $03, $02, $01\n\n.facing_up\n#_1D92FF: db $08, $07, $06, $05, $04, $03, $02, $01\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "GanonTridentAnimationSteps", + "code": "GanonTridentAnimationSteps:\n.facing_down\n#_1D9307: db $00, $00, $01, $01, $00, $00, $01, $01\n\n.facing_up\n#_1D930F: db $08, $08, $09, $09, $08, $08, $09, $09\n\n; =========================================================\n\npool Ganon_Phase1_ThrowTrident\n\n.offset_x_low\n#_1D9317: db 24, -16\n\n.offset_x_high\n#_1D9319: db 0, -1\n\n.offset_y_low\n#_1D931B: db 4, 4\n\n.offset_y_high\n#_1D931D: db 0, 0\n\n.speed_x\n#_1D931F: db 32, 28, 24, 16, 0, -16, -24, -28\n#_1D9327: db -32, -28, -24, -16, 0, 16, 24, 28\n\n.speed_y\n#_1D932F: db 0, 16, 24, 28, 32, 28, 24, 16\n#_1D9337: db 0, -16, -24, -28, -32, -28, -24, -16\n\npool off\n\n; =========================================================\n\npool Ganon_Phase1_TryAWarp\n\n.draw\n#_1D933F: db $02, $0A\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_TryAWarp", + "code": "Ganon_Phase1_TryAWarp:\n#_1D9341: CMP.b #$00\n#_1D9343: BNE .delay_warp\n\n#_1D9345: LDA.b #$05\n#_1D9347: JMP.w Ganon_SelectWarpLocation\n\n.delay_warp\n#_1D934A: LDY.w $0DE0,X\n\n#_1D934D: LDA.w .draw,Y\n#_1D9350: STA.w $0DC0,X\n\n#_1D9353: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_ThrowTrident", + "code": "Ganon_Phase1_ThrowTrident:\n#_1D9354: LDA.w $0E50,X\n#_1D9357: CMP.b #$D1\n#_1D9359: BCS .hp_fine\n\n#_1D935B: LDA.b #$D0 ; 208 HP\n#_1D935D: STA.w $0E50,X\n\n.hp_fine\n#_1D9360: LDA.w $0DF0,X\n#_1D9363: CMP.b #$40\n#_1D9365: BCC Ganon_Phase1_TryAWarp\n#_1D9367: BNE Ganon_Phase1_AnimateTridentSpin\n\n; ---------------------------------------------------------\n\n#_1D9369: STZ.w $0ED0,X\n\n#_1D936C: LDA.b #$C9 ; SPRITE C9\n#_1D936E: JSL Sprite_SpawnDynamically\n\n#_1D9372: PHX\n\n#_1D9373: LDA.w $0DE0,X\n#_1D9376: TAX\n\n#_1D9377: LDA.b $00\n#_1D9379: CLC\n#_1D937A: ADC.w .offset_x_low,X\n#_1D937D: STA.w $0D10,Y\n\n#_1D9380: LDA.b $01\n#_1D9382: ADC.w .offset_x_high,X\n#_1D9385: STA.w $0D30,Y\n\n#_1D9388: LDA.b $02\n#_1D938A: CLC\n#_1D938B: ADC.w .offset_y_low,X\n#_1D938E: STA.w $0D00,Y\n\n#_1D9391: LDA.b $03\n#_1D9393: ADC.w .offset_y_high,X\n#_1D9396: STA.w $0D20,Y\n\n#_1D9399: PLX\n\n; ---------------------------------------------------------\n\n#_1D939A: PHX\n#_1D939B: PHY\n\n#_1D939C: LDA.b #$1F\n#_1D939E: JSL Sprite_ApplySpeedTowardsLink_long\n#_1D93A2: JSL Sprite_ConvertVelocityToAngle\n\n#_1D93A6: PLY\n\n#_1D93A7: SEC\n#_1D93A8: SBC.b #$02\n#_1D93AA: AND.b #$0F\n#_1D93AC: TAX\n\n#_1D93AD: LDA.w .speed_x,X\n#_1D93B0: STA.w $0D50,Y\n\n#_1D93B3: LDA.w .speed_y,X\n#_1D93B6: STA.w $0D40,Y\n\n#_1D93B9: PLX\n\n; ---------------------------------------------------------\n\n#_1D93BA: LDA.b #$70\n#_1D93BC: STA.w $0DF0,Y\n\n#_1D93BF: LDA.b #$02\n#_1D93C1: STA.w $0EC0,Y\n\n#_1D93C4: LDA.b #$01\n#_1D93C6: STA.w $0F50,Y\n\n#_1D93C9: LDA.b #$04\n#_1D93CB: STA.w $0E40,Y\n\n#_1D93CE: LDA.b #$84\n#_1D93D0: STA.w $0CAA,Y\n\n#_1D93D3: LDA.b #$02\n#_1D93D5: STA.w $0DE0,Y\n\n#_1D93D8: JMP.w Ganon_SetSpawnedEntityProperties\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_AnimateTridentSpin", + "code": "Ganon_Phase1_AnimateTridentSpin:\n#_1D93DB: LDA.w $0DF0,X\n#_1D93DE: LSR A\n#_1D93DF: LSR A\n#_1D93E0: AND.b #$07\n\n#_1D93E2: LDY.w $0DE0,X\n#_1D93E5: BEQ .facing_down\n\n#_1D93E7: CLC\n#_1D93E8: ADC.b #$08\n\n.facing_down\n#_1D93EA: TAY\n\n#_1D93EB: LDA.w GanonTrident_Timers,Y\n#_1D93EE: STA.w $0ED0,X\n\n#_1D93F1: LDA.w GanonTridentAnimationSteps,Y\n#_1D93F4: STA.w $0DC0,X\n\n#_1D93F7: JSR SwishEvery16Frames\n\n#_1D93FA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_WaitForTrident", + "code": "Ganon_Phase1_WaitForTrident:\n#_1D93FD: LDA.w $0E50,X\n#_1D9400: CMP.b #$D1\n#_1D9402: BCS .hp_fine\n\n#_1D9404: LDA.b #$D0 ; 208 HP\n#_1D9406: STA.w $0E50,X\n\n.hp_fine\n#_1D9409: LDY.w $0DE0,X\n\n#_1D940C: LDA.w .draw,Y\n#_1D940F: STA.w $0DC0,X\n\n#_1D9412: LDA.w $0DF0,X\n#_1D9415: BEQ .exit\n\n#_1D9417: INC.w $0BA0,X\n#_1D941A: AND.b #$01\n#_1D941C: BEQ .exit\n\n#_1D941E: LDA.b #$FF\n#_1D9420: STA.w $0DC0,X\n\n.exit\n#_1D9423: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_MakePhaseDecision", + "code": "Ganon_Phase1_MakePhaseDecision:\n#_1D9428: LDA.w $0E50,X\n#_1D942B: CMP.b #$D1\n#_1D942D: BCS .hp_fine\n\n#_1D942F: LDA.b #$D0 ; 208 HP\n#_1D9431: STA.w $0E50,X\n\n; ---------------------------------------------------------\n\n.hp_fine\n#_1D9434: LDA.w $0DF0,X\n#_1D9437: BNE .delay_animation\n\n#_1D9439: LDA.b #$06\n#_1D943B: STA.w $0D80,X\n\n#_1D943E: LDA.b #$7F\n#_1D9440: STA.w $0DF0,X\n\n; =========================================================\n\n#Ganon_HandleAnimation_Idle:\n#_1D9443: LDY.w $0DE0,X\n\n#_1D9446: LDA.w .timer,Y\n#_1D9449: STA.w $0ED0,X\n\n; =========================================================\n\n#Ganon_HandleAnimation_IdleUntimed:\n#_1D944C: LDY.w $0DE0,X\n\n#_1D944F: LDA.w .draw,Y\n#_1D9452: STA.w $0DC0,X\n\n#_1D9455: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_HeadShakeStep", + "code": "Ganon_HeadShakeStep:\n#_1D945A: db $00, $00, $00, $01\n#_1D945E: db $02, $02, $02, $01\n#_1D9462: db $00, $00, $00, $01\n#_1D9466: db $01, $01, $01, $01\n#_1D946A: db $00, $10\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase1_Warp", + "code": "Ganon_Phase1_Warp:\n#_1D946C: LDA.w $0E50,X\n#_1D946F: CMP.b #$D1\n#_1D9471: BCS .hp_fine\n\n#_1D9473: LDA.b #$D0 ; 208 HP\n#_1D9475: STA.w $0E50,X\n\n.hp_fine\n#_1D9478: LDA.w $0DF0,X\n#_1D947B: BNE Ganon_ShakeHead\n\n#_1D947D: LDA.b #$05\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_SelectWarpLocation", + "code": "Ganon_SelectWarpLocation:\n#_1D947F: STA.b $00\n\n#_1D9481: LDA.w $0E30,X\n#_1D9484: ASL A\n#_1D9485: ASL A\n#_1D9486: STA.b $01\n\n#_1D9488: JSL GetRandomNumber\n#_1D948C: AND.b #$03\n#_1D948E: ORA.b $01\n#_1D9490: TAY\n\n#_1D9491: LDA.w Ganon_WarpLocation_ID,Y\n#_1D9494: STA.w $0E30,X\n\n#_1D9497: TAY\n\n#_1D9498: LDA.w Ganon_WarpLocation_X,Y\n#_1D949B: STA.l $7FFD5C\n\n#_1D949F: LDA.w Ganon_WarpLocation_Y,Y\n#_1D94A2: STA.l $7FFD68\n\n#_1D94A6: LDA.b $00\n#_1D94A8: STA.w $0D80,X\n\n#_1D94AB: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n#_1D94AE: LDA.b #$30\n#_1D94B0: STA.w $0DF0,X\n\n#_1D94B3: LDA.b #$28 ; SFX3.28\n#_1D94B5: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1D94B9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_ShakeHead", + "code": "Ganon_ShakeHead:\n#_1D94BA: LSR A\n#_1D94BB: LSR A\n#_1D94BC: LSR A\n#_1D94BD: TAY\n\n#_1D94BE: LDA.w Ganon_HeadShakeStep,Y\n#_1D94C1: STA.w $0EB0,X\n\n#_1D94C4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_WarpLocation_X", + "code": "Ganon_WarpLocation_X:\n#_1D94C5: db $30, $50, $A0, $C0, $40, $60, $90, $B0\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_WarpLocation_Y", + "code": "Ganon_WarpLocation_Y:\n#_1D94CD: db $40, $30, $30, $40, $B0, $C0, $C0, $B0\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_WarpLocation_ID", + "code": "Ganon_WarpLocation_ID:\n#_1D94D5: db $04, $05, $06, $07, $04, $05, $06, $07\n#_1D94DD: db $04, $05, $06, $07, $04, $05, $06, $07\n#_1D94E5: db $00, $01, $02, $03, $00, $01, $02, $03\n#_1D94ED: db $00, $01, $02, $03, $00, $01, $02, $03\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase3_Warp", + "code": "Ganon_Phase3_Warp:\n#_1D94F5: LDA.b #$64\n#_1D94F7: STA.w $0E50,X\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_LookAround", + "code": "Ganon_LookAround:\n#_1D94FA: INC.w $0BA0,X\n\n#_1D94FD: LDA.l $7FFD5C\n#_1D9501: STA.b $04\n\n#_1D9503: LDA.w $0D30,X\n#_1D9506: STA.b $05\n\n#_1D9508: LDA.l $7FFD68\n#_1D950C: STA.b $06\n\n#_1D950E: LDA.w $0D20,X\n#_1D9511: STA.b $07\n\n#_1D9513: JSR Ganon_AttemptTridentCatch\n#_1D9516: BCS Ganon_MoveWithTrident\n\n; ---------------------------------------------------------\n\n#_1D9518: LDA.w $0E30,X\n#_1D951B: LSR A\n#_1D951C: LSR A\n#_1D951D: STA.w $0DE0,X\n\n#_1D9520: LDA.w $0D80,X\n#_1D9523: CMP.b #$05\n#_1D9525: BEQ .phase_1\n\n#_1D9527: LDA.w $0E50,X\n#_1D952A: CMP.b #$A1\n#_1D952C: BCS .phase_2\n\n#_1D952E: CMP.b #$61\n#_1D9530: BCS .phase_3\n\n; ---------------------------------------------------------\n\n.phase_4\n#_1D9532: LDA.b #$11\n#_1D9534: STA.w $0D80,X\n\n#_1D9537: LDA.b #$68\n#_1D9539: STA.w $0DF0,X\n\n#_1D953C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "UNREACHABLE_1D955E", + "code": "UNREACHABLE_1D955E:\n#_1D955E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_MoveWithTrident", + "code": "Ganon_MoveWithTrident:\n#_1D955F: LDA.b #$20\n#_1D9561: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D9565: JSR GanonTrident_AdjustVelocity\n#_1D9568: JSR Sprite_Move_XY_Bank1D\n\n#_1D956B: LDA.w $0DF0,X\n#_1D956E: BEQ .invisible\n\n#_1D9570: LDA.b $1A\n#_1D9572: AND.b #$01\n#_1D9574: BNE .invisible\n\n#_1D9576: JSR Ganon_HandleAnimation_IdleUntimed\n#_1D9579: BRA .continue\n\n.invisible\n#_1D957B: LDA.b #$FF\n#_1D957D: STA.w $0DC0,X\n\n#_1D9580: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_Phase2_HoldTrident", + "code": "Ganon_Phase2_HoldTrident:\n#_1D95AD: LDA.w $0E50,X\n#_1D95B0: CMP.b #$D1\n#_1D95B2: BCS .hp_fine\n\n#_1D95B4: LDA.b #$D0 ; 208 HP\n#_1D95B6: STA.w $0E50,X\n\n.hp_fine\n#_1D95B9: LDA.w $0DF0,X\n#_1D95BC: BNE .delay\n\n#_1D95BE: LDA.w $0E50,X\n#_1D95C1: CMP.b #$D1\n#_1D95C3: BCC .still_phase1\n\n; ---------------------------------------------------------\n\n.change_to_phase2\n#_1D95C5: JMP.w Ganon_ContinueWithPhase1\n\n.still_phase1\n#_1D95C8: JMP.w Ganon_AdvanceToPhase2\n\n.delay\n#_1D95CB: JMP.w Ganon_ShakeHead\n\n; =========================================================\n\npool SpriteDraw_Ganon\n\n.offset_x\n#_1D95CE: db 18, -8, 8, -8, 8, -18, -18, 18, -8, 8, -8, 8\n#_1D95DA: db 18, -8, 8, -8, 8, -18, -18, 18, -8, 8, -8, 8\n#_1D95E6: db 16, -8, 8, -8, 8, -18, -18, 16, -8, 8, -11, 11\n#_1D95F2: db 16, -8, 8, -8, 8, -18, -18, 16, -8, 8, -11, 11\n#_1D95FE: db 16, -8, 8, -8, 8, -18, -18, 16, -8, 8, -11, 11\n#_1D960A: db 18, -8, 8, -8, 8, -18, -18, 18, -8, 8, -8, 8\n#_1D9616: db 18, -8, 8, -8, 8, -18, -18, 18, -8, 8, -8, 8\n#_1D9622: db 18, -8, 8, -8, 8, -18, -18, 18, -8, 8, -11, 11\n#_1D962E: db -8, 8, -8, 8, -8, 8, -8, 8, -18, -18, 18, 18\n#_1D963A: db -8, 8, -8, 8, -8, 8, -8, 8, -18, -18, 18, 18\n#_1D9646: db -8, 8, -8, 8, -8, 8, -10, 10, -18, -18, 18, 18\n#_1D9652: db -8, 8, -8, 8, -8, 8, -10, 10, -18, -18, 18, 18\n#_1D965E: db -8, 8, -8, 8, -8, 8, -10, 10, -18, -18, 18, 18\n#_1D966A: db -8, 8, -8, 8, -8, 8, -8, 8, -18, -18, 18, 18\n#_1D9676: db -8, 8, -8, 8, -8, 8, -8, 8, -18, -18, 18, 18\n#_1D9682: db -7, -8, 8, -8, 8, -9, 8, -14, -14, -8, 8, 8\n#_1D968E: db -8, 8, -8, 8, -18, -18, 18, 18, -8, 8, -11, 11\n\n; ---------------------------------------------------------\n\n.offset_y\n#_1D969A: db -8, -16, -16, -13, -13, -9, -1, -16, 3, 3, 8, 8\n#_1D96A6: db -8, -16, -16, -13, -13, -9, -1, -16, 3, 3, 8, 8\n#_1D96B2: db 5, -10, -10, -13, -13, -7, 1, -3, 3, 3, 8, 8\n#_1D96BE: db 5, -10, -10, -13, -13, -7, 1, -3, 3, 3, 8, 8\n#_1D96CA: db 5, -10, -10, -13, -13, -7, 1, -3, 3, 3, 8, 8\n#_1D96D6: db -1, -16, -16, -13, -13, -9, -1, -9, 3, 3, 8, 8\n#_1D96E2: db -10, -16, -16, -13, -13, -18, -10, -18, 3, 3, 8, 8\n#_1D96EE: db 1, -10, -10, -13, -13, -7, 1, -7, 3, 3, 8, 8\n#_1D96FA: db -12, -12, 4, 4, -18, -18, 10, 10, -16, -8, -4, 4\n#_1D9706: db -12, -12, 4, 4, -18, -18, 10, 10, -16, -8, -4, 4\n#_1D9712: db -12, -12, 4, 4, -12, -12, 10, 10, -4, 4, -4, 4\n#_1D971E: db -12, -12, 4, 4, -12, -12, 10, 10, -4, 4, -4, 4\n#_1D972A: db -12, -12, 4, 4, -12, -12, 10, 10, -4, 4, -4, 4\n#_1D9736: db -12, -12, 4, 4, -18, -18, 10, 10, -4, 4, -4, 4\n#_1D9742: db -12, -12, 4, 4, -18, -18, 10, 10, -16, -8, -16, -8\n#_1D974E: db -7, -12, -12, 4, 4, 7, 13, -11, -4, -16, -16, -16\n#_1D975A: db -10, -10, -13, -13, -7, -7, -7, -7, 3, 3, 8, 8\n\n; ---------------------------------------------------------\n\n.char\n#_1D9766: db $16, $00, $00, $02, $02, $08, $18, $06, $22, $22, $20, $20\n#_1D9772: db $46, $00, $00, $02, $02, $08, $18, $36, $22, $22, $20, $20\n#_1D977E: db $1A, $00, $00, $04, $04, $38, $48, $0A, $24, $24, $20, $20\n#_1D978A: db $1A, $40, $42, $04, $04, $38, $48, $0A, $24, $24, $20, $20\n#_1D9796: db $1A, $42, $40, $04, $04, $38, $48, $0A, $24, $24, $20, $20\n#_1D97A2: db $18, $00, $00, $02, $02, $08, $18, $08, $22, $22, $20, $20\n#_1D97AE: db $16, $6A, $6A, $0E, $0E, $06, $16, $06, $22, $22, $20, $20\n#_1D97BA: db $48, $00, $00, $04, $04, $38, $48, $38, $24, $24, $20, $20\n#_1D97C6: db $4E, $4E, $6E, $6E, $6C, $6C, $A2, $A2, $0C, $1C, $3C, $4C\n#_1D97D2: db $4E, $4E, $6E, $6E, $6C, $6C, $A2, $A2, $3A, $4A, $3C, $4C\n#_1D97DE: db $84, $84, $A4, $A4, $A0, $A0, $A2, $A2, $3C, $4C, $3C, $4C\n#_1D97EA: db $84, $84, $A4, $A4, $80, $82, $A2, $A2, $3C, $4C, $3C, $4C\n#_1D97F6: db $84, $84, $A4, $A4, $82, $80, $A2, $A2, $3C, $4C, $3C, $4C\n#_1D9802: db $4E, $4E, $6E, $6E, $6C, $6C, $A2, $A2, $3C, $4C, $3C, $4C\n#_1D980E: db $4E, $4E, $6E, $6E, $6C, $6C, $A2, $A2, $0C, $1C, $0C, $1C\n#_1D981A: db $E0, $C6, $C8, $E6, $E8, $20, $20, $08, $18, $C0, $C2, $C2\n#_1D9826: db $00, $00, $CE, $CE, $EC, $EC, $EC, $EC, $EE, $EE, $C4, $C4\n\n; ---------------------------------------------------------\n\n.animstate_head\n#_1D9832: db $01, $01, $01, $01, $01, $01, $0F, $01\n#_1D983A: db $04, $04, $04, $04, $04, $04, $04, $0F\n#_1D9842: db $0F\n\n; ---------------------------------------------------------\n\n.prop\n#_1D9843: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D984F: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D985B: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D9867: db $4C, $0C, $0C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D9873: db $4C, $4C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D987F: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D988B: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D9897: db $4C, $0C, $4C, $0A, $4A, $0C, $0C, $4C, $0A, $4A, $0C, $4C\n#_1D98A3: db $0A, $4A, $0A, $4A, $0C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98AF: db $0A, $4A, $0A, $4A, $0C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98BB: db $0A, $4A, $0A, $4A, $0C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98C7: db $0A, $4A, $0A, $4A, $0C, $0C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98D3: db $0A, $4A, $0A, $4A, $4C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98DF: db $0A, $4A, $0A, $4A, $0C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98EB: db $0A, $4A, $0A, $4A, $0C, $4C, $0C, $4C, $0C, $0C, $4C, $4C\n#_1D98F7: db $0C, $0A, $0A, $0A, $0A, $0C, $4C, $0C, $0C, $0C, $0C, $0C\n#_1D9903: db $0C, $4C, $0A, $4A, $0C, $0C, $4C, $4C, $0A, $4A, $0C, $4C\n\npool off\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trident_OAMGroups", + "code": "Trident_OAMGroups:\n#_1D990F: dw 10, -10 : db $64, $08, $00, $00\n#_1D9917: dw 5, -15 : db $64, $08, $00, $00\n#_1D991F: dw 0, -20 : db $64, $08, $00, $00\n#_1D9927: dw -5, -25 : db $64, $08, $00, $00\n#_1D992F: dw -18, -38 : db $44, $08, $00, $02\n\n#_1D9937: dw 1, -4 : db $65, $08, $00, $00\n#_1D993F: dw 1, -11 : db $65, $08, $00, $00\n#_1D9947: dw 1, -18 : db $65, $08, $00, $00\n#_1D994F: dw 1, -25 : db $65, $08, $00, $00\n#_1D9957: dw -3, -40 : db $62, $08, $00, $02\n\n#_1D995F: dw -8, -9 : db $64, $48, $00, $00\n#_1D9967: dw -3, -14 : db $64, $48, $00, $00\n#_1D996F: dw 3, -20 : db $64, $48, $00, $00\n#_1D9977: dw 9, -26 : db $64, $48, $00, $00\n#_1D997F: dw 12, -37 : db $44, $48, $00, $02\n\n#_1D9987: dw -10, -20 : db $74, $48, $00, $00\n#_1D998F: dw -3, -20 : db $74, $48, $00, $00\n#_1D9997: dw 4, -20 : db $74, $48, $00, $00\n#_1D999F: dw 11, -20 : db $74, $48, $00, $00\n#_1D99A7: dw 18, -23 : db $60, $48, $00, $02\n\n#_1D99AF: dw -10, -30 : db $64, $C8, $00, $00\n#_1D99B7: dw -4, -24 : db $64, $C8, $00, $00\n#_1D99BF: dw 2, -18 : db $64, $C8, $00, $00\n#_1D99C7: dw 8, -12 : db $64, $C8, $00, $00\n#_1D99CF: dw 12, -8 : db $44, $C8, $00, $02\n\n#_1D99D7: dw 1, -32 : db $65, $88, $00, $00\n#_1D99DF: dw 1, -25 : db $65, $88, $00, $00\n#_1D99E7: dw 1, -18 : db $65, $88, $00, $00\n#_1D99EF: dw 1, -11 : db $65, $88, $00, $00\n#_1D99F7: dw -3, -5 : db $62, $88, $00, $02\n\n#_1D99FF: dw 13, -30 : db $64, $88, $00, $00\n#_1D9A07: dw 8, -25 : db $64, $88, $00, $00\n#_1D9A0F: dw 2, -19 : db $64, $88, $00, $00\n#_1D9A17: dw -4, -13 : db $64, $88, $00, $00\n#_1D9A1F: dw -16, -9 : db $44, $88, $00, $02\n\n#_1D9A27: dw 14, -20 : db $74, $08, $00, $00\n#_1D9A2F: dw 7, -20 : db $74, $08, $00, $00\n#_1D9A37: dw 0, -20 : db $74, $08, $00, $00\n#_1D9A3F: dw -7, -20 : db $74, $08, $00, $00\n#_1D9A47: dw -21, -23 : db $60, $08, $00, $02\n\n#_1D9A4F: dw 13, -30 : db $64, $88, $00, $00\n#_1D9A57: dw 8, -25 : db $64, $88, $00, $00\n#_1D9A5F: dw 2, -19 : db $64, $88, $00, $00\n#_1D9A67: dw -4, -13 : db $64, $88, $00, $00\n#_1D9A6F: dw -16, -9 : db $44, $88, $00, $02\n\n#_1D9A77: dw -10, -30 : db $64, $C8, $00, $00\n#_1D9A7F: dw -4, -24 : db $64, $C8, $00, $00\n#_1D9A87: dw -4, -24 : db $64, $C8, $00, $00\n#_1D9A8F: dw -4, -24 : db $64, $C8, $00, $00\n#_1D9A97: dw -4, -24 : db $64, $C8, $00, $00\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "GanonTridentOAM_offset_x", + "code": "GanonTridentOAM_offset_x:\n#_1D9A9F: db 24, 0, -16, -1, 0\n#_1D9AA4: db 0, 16, 0, -8, -1\n", + "file": "bank_1D.asm" + }, + { + "name": "GanonTridentOAM_offset_y", + "code": "GanonTridentOAM_offset_y:\n#_1D9AA9: db 4, 0, 4, 0, 16\n#_1D9AAE: db 0, 21, 0, 19, 0\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "GanonHeadOAM_char", + "code": "GanonHeadOAM_char:\n#_1D9AB3: db $40, $42, $00, $00\n#_1D9AB7: db $42, $40, $82, $80\n#_1D9ABB: db $A0, $A0, $80, $82\n", + "file": "bank_1D.asm" + }, + { + "name": "GanonHeadOAM_prop", + "code": "GanonHeadOAM_prop:\n#_1D9ABF: db $00, $00, $00, $40\n#_1D9AC3: db $40, $40, $40, $40\n#_1D9AC7: db $00, $40, $00, $00\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Ganon_ArmOAMGroups", + "code": "Ganon_ArmOAMGroups:\n#_1D9ACB: dw 16, -3 : db $0A, $4C, $00, $02\n#_1D9AD3: dw 16, 5 : db $1A, $4C, $00, $02\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "DontDrawGanon", + "code": "DontDrawGanon:\n#_1D9ADB: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1D9ADE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Ganon", + "code": "SpriteDraw_Ganon:\n#_1D9ADF: LDA.w $0DC0,X\n#_1D9AE2: BMI DontDrawGanon\n\n#_1D9AE4: LDA.w $0D80,X\n#_1D9AE7: CMP.b #$13\n#_1D9AE9: BEQ .draw_ganon\n\n#_1D9AEB: LDA.w $0F10,X\n#_1D9AEE: BNE .draw_ganon\n\n#_1D9AF0: LDA.w $04C5\n#_1D9AF3: BEQ DontDrawGanon\n\n; ---------------------------------------------------------\n\n.draw_ganon\n#_1D9AF5: JSR SpriteDraw_GanonTrident\n#_1D9AF8: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1D9AFB: LDA.w $0DC0,X\n\n#_1D9AFE: ASL A\n#_1D9AFF: ASL A\n#_1D9B00: ASL A\n\n#_1D9B01: ADC.w $0DC0,X\n#_1D9B04: ADC.w $0DC0,X\n#_1D9B07: ADC.w $0DC0,X\n#_1D9B0A: ADC.w $0DC0,X\n\n#_1D9B0D: STA.b $06\n\n#_1D9B0F: PHX\n\n#_1D9B10: LDX.b #$00\n#_1D9B12: LDY.b #$14\n\n.next_ganon_object\n#_1D9B14: PHX\n\n#_1D9B15: TXA\n#_1D9B16: CLC\n#_1D9B17: ADC.b $06\n#_1D9B19: TAX\n\n#_1D9B1A: LDA.b $00\n#_1D9B1C: CLC\n#_1D9B1D: ADC.w .offset_x,X\n#_1D9B20: STA.b ($90),Y\n\n#_1D9B22: LDA.b $02\n#_1D9B24: CLC\n#_1D9B25: ADC.w .offset_y,X\n#_1D9B28: INY\n#_1D9B29: STA.b ($90),Y\n\n#_1D9B2B: LDA.w .char,X\n#_1D9B2E: INY\n#_1D9B2F: STA.b ($90),Y\n\n#_1D9B31: LDA.b $05\n#_1D9B33: AND.b #$0F\n#_1D9B35: CMP.b #$05\n#_1D9B37: LDA.w .prop,X\n#_1D9B3A: BCC .on_screen\n\n#_1D9B3C: AND.b #$F0\n\n.on_screen\n#_1D9B3E: ORA.b $05\n#_1D9B40: INY\n#_1D9B41: STA.b ($90),Y\n\n#_1D9B43: PHY\n\n#_1D9B44: TYA\n#_1D9B45: LSR A\n#_1D9B46: LSR A\n#_1D9B47: TAY\n\n#_1D9B48: LDA.b #$02\n#_1D9B4A: STA.b ($92),Y\n\n#_1D9B4C: PLY\n#_1D9B4D: INY\n\n#_1D9B4E: PLX\n#_1D9B4F: INX\n#_1D9B50: CPX.b #$0C\n#_1D9B52: BNE .next_ganon_object\n\n; ---------------------------------------------------------\n\n#_1D9B54: PLX\n#_1D9B55: LDY.w $0DC0,X\n\n#_1D9B58: LDA.w .animstate_head,Y\n#_1D9B5B: CMP.b #$0F\n#_1D9B5D: BEQ .skip_head\n\n#_1D9B5F: ASL A\n#_1D9B60: ASL A\n#_1D9B61: CLC\n#_1D9B62: ADC.b #$14\n#_1D9B64: TAY\n\n#_1D9B65: INY\n#_1D9B66: INY\n\n#_1D9B67: PHX\n#_1D9B68: PHY\n\n#_1D9B69: LDA.w $0EB0,X\n#_1D9B6C: ASL A\n\n#_1D9B6D: LDY.w $0DE0,X\n#_1D9B70: BEQ .facing_up\n\n#_1D9B72: CLC\n#_1D9B73: ADC.b #$06\n\n.facing_up\n#_1D9B75: TAX\n\n#_1D9B76: PLY\n#_1D9B77: LDA.w GanonHeadOAM_char+0,X\n#_1D9B7A: STA.b ($90),Y\n\n#_1D9B7C: INY\n\n#_1D9B7D: LDA.b ($90),Y\n#_1D9B7F: AND.b #$3F\n#_1D9B81: ORA.w GanonHeadOAM_prop+0,X\n#_1D9B84: STA.b ($90),Y\n\n#_1D9B86: INY\n#_1D9B87: INY\n#_1D9B88: INY\n\n#_1D9B89: LDA.w GanonHeadOAM_char+1,X\n#_1D9B8C: STA.b ($90),Y\n\n#_1D9B8E: INY\n\n#_1D9B8F: LDA.b ($90),Y\n#_1D9B91: AND.b #$3F\n#_1D9B93: ORA.w GanonHeadOAM_prop+1,X\n#_1D9B96: STA.b ($90),Y\n\n#_1D9B98: PLX\n\n; ---------------------------------------------------------\n\n.skip_head\n#_1D9B99: LDA.b $11\n#_1D9B9B: BEQ .skip_cleanup\n\n#_1D9B9D: LDY.b #$FF\n#_1D9B9F: LDA.b #$09\n#_1D9BA1: JSL Sprite_CorrectOAMEntries_long\n\n; ---------------------------------------------------------\n\n.skip_cleanup\n#_1D9BA5: LDA.w $0ED0,X\n#_1D9BA8: CMP.b #$09\n#_1D9BAA: BNE .skip_arm\n\n#_1D9BAC: REP #$20\n\n#_1D9BAE: LDA.w #Ganon_ArmOAMGroups\n#_1D9BB1: STA.b $08\n\n#_1D9BB3: LDA.w #$0828\n#_1D9BB6: STA.b $90\n\n#_1D9BB8: LDA.w #$0A2A\n#_1D9BBB: STA.b $92\n\n#_1D9BBD: SEP #$20\n\n#_1D9BBF: LDA.b #$02\n#_1D9BC1: JSR SpriteDraw_Tabulated_Bank1D\n\n; ---------------------------------------------------------\n\n.skip_arm\n#_1D9BC4: LDA.w $0F70,X\n#_1D9BC7: SEC\n#_1D9BC8: SBC.b #$01\n#_1D9BCA: STA.b $0E\n\n#_1D9BCC: LDA.b #$00\n#_1D9BCE: SBC.b #$00\n#_1D9BD0: STA.b $0F\n\n#_1D9BD2: LSR A\n#_1D9BD3: LSR A\n#_1D9BD4: LSR A\n#_1D9BD5: TAY\n\n#_1D9BD6: CPY.b #$04\n#_1D9BD8: BCC .is_fine\n\n#_1D9BDA: LDY.b #$04\n\n; ---------------------------------------------------------\n\n.is_fine\n#_1D9BDC: LDA.w SpriteDraw_BigShadow_data_offset,Y\n#_1D9BDF: STA.b $00\n#_1D9BE1: STZ.b $01\n\n#_1D9BE3: REP #$20\n\n#_1D9BE5: LDA.w $0FDA\n#_1D9BE8: CLC\n#_1D9BE9: ADC.b $0E\n#_1D9BEB: STA.w $0FDA\n\n#_1D9BEE: LDA.w #$09F4\n#_1D9BF1: STA.b $90\n\n#_1D9BF3: LDA.w #$0A9D\n#_1D9BF6: STA.b $92\n\n#_1D9BF8: LDA.w #SpriteDraw_BigShadow_oam_groups\n#_1D9BFB: CLC\n#_1D9BFC: ADC.b $00\n#_1D9BFE: STA.b $08\n\n; ---------------------------------------------------------\n\n#_1D9C00: SEP #$20\n\n#_1D9C02: LDA.w $0F50,X\n#_1D9C05: PHA\n\n#_1D9C06: STZ.w $0F50,X\n\n#_1D9C09: LDA.b #$30\n#_1D9C0B: STA.w $0B89,X\n\n#_1D9C0E: LDA.b #$03\n#_1D9C10: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1D9C13: PLA\n#_1D9C14: STA.w $0F50,X\n\n#_1D9C17: JSL Sprite_Get16BitCoords_long\n\n#_1D9C1B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_GanonTrident", + "code": "SpriteDraw_GanonTrident:\n#_1D9C1C: LDA.b #$00\n#_1D9C1E: XBA\n#_1D9C1F: LDA.w $0ED0,X\n#_1D9C22: BEQ .exit\n\n#_1D9C24: DEC A\n\n#_1D9C25: REP #$20\n\n#_1D9C27: ASL A ; *8\n#_1D9C28: ASL A\n#_1D9C29: ASL A\n#_1D9C2A: STA.b $00\n\n#_1D9C2C: ASL A ; *32\n#_1D9C2D: ASL A\n#_1D9C2E: CLC\n#_1D9C2F: ADC.b $00 ; so *40\n\n#_1D9C31: CLC\n#_1D9C32: ADC.w #Trident_OAMGroups\n#_1D9C35: STA.b $08\n\n; ---------------------------------------------------------\n\n#_1D9C37: SEP #$20\n\n#_1D9C39: LDY.b #$06\n\n#_1D9C3B: LDA.w $0ED0,X\n#_1D9C3E: CMP.b #$09\n#_1D9C40: BEQ .continue\n\n#_1D9C42: LDY.b #$08\n#_1D9C44: BCS .continue\n\n#_1D9C46: LDA.w $0DE0,X\n#_1D9C49: ASL A\n#_1D9C4A: TAY\n\n; ---------------------------------------------------------\n\n.continue\n#_1D9C4B: REP #$20\n\n#_1D9C4D: LDA.w $0FD8\n#_1D9C50: CLC\n#_1D9C51: ADC.w GanonTridentOAM_offset_x,Y\n#_1D9C54: STA.w $0FD8\n\n#_1D9C57: LDA.w $0FDA\n#_1D9C5A: CLC\n#_1D9C5B: ADC.w GanonTridentOAM_offset_y,Y\n#_1D9C5E: STA.w $0FDA\n\n#_1D9C61: SEP #$20\n\n#_1D9C63: LDA.w $0B89,X\n#_1D9C66: PHA\n\n#_1D9C67: AND.b #$F0\n#_1D9C69: STA.w $0B89,X\n\n#_1D9C6C: LDA.b #$05\n#_1D9C6E: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1D9C71: PLA\n#_1D9C72: STA.w $0B89,X\n\n#_1D9C75: JSL Sprite_Get16BitCoords_long\n\n.exit\n#_1D9C79: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_SegmentsIndex", + "code": "Swamola_SegmentsIndex:\n#_1D9C7A: db $00, $20, $40, $60, $80, $A0\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_Swamola_InitializeSegments", + "code": "SpritePrep_Swamola_InitializeSegments:\n#_1D9C80: PHX\n#_1D9C81: TXY\n\n#_1D9C82: LDA.w Swamola_SegmentsIndex,X\n#_1D9C85: TAX\n\n#_1D9C86: LDA.b #$1F\n#_1D9C88: STA.b $00\n\n.next_segment\n#_1D9C8A: LDA.w $0D10,Y\n#_1D9C8D: STA.l $7FFA5C,X\n\n#_1D9C91: LDA.w $0D30,Y\n#_1D9C94: STA.l $7FFB1C,X\n\n#_1D9C98: LDA.w $0D00,Y\n#_1D9C9B: STA.l $7FFBDC,X\n\n#_1D9C9F: LDA.w $0D20,Y\n#_1D9CA2: STA.l $7FFC9C,X\n\n#_1D9CA6: INX\n\n#_1D9CA7: DEC.b $00\n#_1D9CA9: BPL .next_segment\n\n#_1D9CAB: PLX\n\n#_1D9CAC: RTL", + "file": "bank_1D.asm" + }, + { + "name": "UNREACHABLE_1D9CAD", + "code": "UNREACHABLE_1D9CAD:\n#_1D9CAD: db $00, $10, $F0\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CF_Swamola", + "code": "Sprite_CF_Swamola:\n#_1D9CB0: LDA.w $0D80,X\n#_1D9CB3: BEQ .no_draw\n\n#_1D9CB5: BPL Swamola_Main\n\n#_1D9CB7: JMP.w Swamola_Ripples\n\n; =========================================================\n\n#Swamola_Main:\n#_1D9CBA: JSR SpriteDraw_Swamola\n\n.no_draw\n#_1D9CBD: JSL Sprite_Get16BitCoords_long\n#_1D9CC1: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D9CC4: INC.w $0E80,X\n#_1D9CC7: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1D9CCA: LDA.w $0D40,X\n#_1D9CCD: PHA\n\n#_1D9CCE: CLC\n#_1D9CCF: ADC.w $0F80,X\n#_1D9CD2: STA.w $0D40,X\n\n#_1D9CD5: JSR Sprite_Move_XY_Bank1D\n\n#_1D9CD8: PLA\n#_1D9CD9: STA.w $0D40,X\n\n; ---------------------------------------------------------\n\n#_1D9CDC: LDA.w $0D80,X\n#_1D9CDF: JSL JumpTableLocal\n#_1D9CE3: dw Swamola_Emerge\n#_1D9CE5: dw Swamola_Ascend\n#_1D9CE7: dw Swamola_Wiggle\n#_1D9CE9: dw Swamola_Descend\n#_1D9CEB: dw Swamola_Submerge\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Dive", + "code": "Swamola_Dive:\n.offset_x_low\n#_1D9CED: db 0, 0, 32, 32, 32, 0, -32, -32, -32\n\n.offset_x_high\n#_1D9CF6: db 0, 0, 0, 0, 0, 0, -1, -1, -1\n\n.offset_y_low\n#_1D9CFF: db 0, -32, -32, 0, 32, 32, 32, 0, -32\n\n.offset_y_high\n#_1D9D08: db 0, -1, -1, 0, 0, 0, 0, 0, -1\n\n.ID\n#_1D9D11: db $01, $02, $03, $04, $05, $06, $07, $08\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Emerge", + "code": "Swamola_Emerge:\n#_1D9D19: LDA.w $0DF0,X\n#_1D9D1C: BNE .exit\n\n#_1D9D1E: JSL GetRandomNumber\n#_1D9D22: AND.b #$07\n#_1D9D24: TAY\n\n#_1D9D25: LDA.w Swamola_Dive_ID,Y\n#_1D9D28: CMP.w $0DE0,X\n#_1D9D2B: BEQ .exit\n\n; ---------------------------------------------------------\n\n#_1D9D2D: TAY\n\n#_1D9D2E: LDA.w $0D90,X\n#_1D9D31: CLC\n#_1D9D32: ADC.w Swamola_Dive_offset_x_low,Y\n#_1D9D35: STA.l $7FFD5C,X\n\n#_1D9D39: LDA.w $0DA0,X\n#_1D9D3C: ADC.w Swamola_Dive_offset_x_high,Y\n#_1D9D3F: STA.l $7FFD62,X\n\n#_1D9D43: LDA.w $0DB0,X\n#_1D9D46: CLC\n#_1D9D47: ADC.w Swamola_Dive_offset_y_low,Y\n#_1D9D4A: STA.l $7FFD68,X\n\n#_1D9D4E: LDA.w $0EB0,X\n#_1D9D51: ADC.w Swamola_Dive_offset_y_high,Y\n#_1D9D54: STA.l $7FFD6E,X\n\n#_1D9D58: INC.w $0D80,X\n\n#_1D9D5B: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n; ---------------------------------------------------------\n\n#_1D9D5E: LDA.b #$F1\n#_1D9D60: STA.w $0F80,X\n\n#_1D9D63: JSR Swamola_SpawnRipples\n\n.exit\n#_1D9D66: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Ascend", + "code": "Swamola_Ascend:\n#_1D9D67: LDA.w $0E80,X\n#_1D9D6A: AND.b #$03\n#_1D9D6C: BNE .dont_accel\n\n#_1D9D6E: INC.w $0F80,X\n#_1D9D71: BNE .dont_accel\n\n#_1D9D73: INC.w $0D80,X\n\n; ---------------------------------------------------------\n\n.dont_accel\n#_1D9D76: LDA.w $0E80,X\n#_1D9D79: AND.b #$03\n#_1D9D7B: BNE .exit\n\n#_1D9D7D: JSR Swamola_ProjectVelocityTowardsTarget\n\n; ---------------------------------------------------------\n\n#Swamola_ApproachTargetVelocity:\n#_1D9D80: LDA.w $0D40,X\n#_1D9D83: CMP.b $00\n#_1D9D85: BEQ .up_to_speed\n#_1D9D87: BPL .too_fast_y\n\n#_1D9D89: INC.w $0D40,X\n#_1D9D8C: BRA .up_to_speed\n\n.too_fast_y\n#_1D9D8E: DEC.w $0D40,X\n\n; ---------------------------------------------------------\n\n.up_to_speed\n#_1D9D91: LDA.w $0D50,X\n#_1D9D94: CMP.b $01\n#_1D9D96: BEQ .exit\n#_1D9D98: BPL .too_fast_x\n\n#_1D9D9A: INC.w $0D50,X\n#_1D9D9D: BRA .exit\n\n.too_fast_x\n#_1D9D9F: DEC.w $0D50,X\n\n.exit\n#_1D9DA2: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Wiggle", + "code": "Swamola_Wiggle:\n#_1D9DA7: LDA.w $0E80,X\n#_1D9DAA: AND.b #$00\n#_1D9DAC: BNE .no_wiggle\n\n#_1D9DAE: LDA.w $0ED0,X\n#_1D9DB1: AND.b #$01\n#_1D9DB3: TAY\n\n#_1D9DB4: LDA.w $0F80,X\n#_1D9DB7: CLC\n#_1D9DB8: ADC.w .offset_z,Y\n#_1D9DBB: STA.w $0F80,X\n\n#_1D9DBE: CMP.w .limit_z,Y\n#_1D9DC1: BNE .no_wiggle\n\n#_1D9DC3: INC.w $0ED0,X\n\n; ---------------------------------------------------------\n\n.no_wiggle\n#_1D9DC6: LDA.l $7FFD5C,X\n#_1D9DCA: STA.b $04\n\n#_1D9DCC: LDA.l $7FFD62,X\n#_1D9DD0: STA.b $05\n\n#_1D9DD2: LDA.l $7FFD68,X\n#_1D9DD6: STA.b $06\n\n#_1D9DD8: LDA.l $7FFD6E,X\n#_1D9DDC: STA.b $07\n\n; ---------------------------------------------------------\n\n#_1D9DDE: REP #$20\n\n#_1D9DE0: LDA.w $0FD8\n#_1D9DE3: SEC\n#_1D9DE4: SBC.b $04\n#_1D9DE6: CLC\n#_1D9DE7: ADC.w #$0008\n\n#_1D9DEA: CMP.w #$0010\n#_1D9DED: BCS .can_wiggle_more\n\n; ---------------------------------------------------------\n\n#_1D9DEF: LDA.w $0FDA\n#_1D9DF2: SEC\n#_1D9DF3: SBC.b $06\n#_1D9DF5: CLC\n#_1D9DF6: ADC.w #$0008\n\n#_1D9DF9: CMP.w #$0010\n#_1D9DFC: BCS .can_wiggle_more\n\n#_1D9DFE: SEP #$20\n\n#_1D9E00: INC.w $0D80,X\n\n; ---------------------------------------------------------\n\n.can_wiggle_more\n#_1D9E03: SEP #$20\n\n#_1D9E05: JSR Swamola_ProjectVelocityTowardsTarget\n#_1D9E08: LDA.b $00\n\n#_1D9E0A: STA.w $0D40,X\n\n#_1D9E0D: LDA.b $01\n#_1D9E0F: STA.w $0D50,X\n\n#_1D9E12: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_ProjectVelocityTowardsTarget", + "code": "Swamola_ProjectVelocityTowardsTarget:\n#_1D9E13: LDA.l $7FFD5C,X\n#_1D9E17: STA.b $04\n\n#_1D9E19: LDA.l $7FFD62,X\n#_1D9E1D: STA.b $05\n\n#_1D9E1F: LDA.l $7FFD68,X\n#_1D9E23: STA.b $06\n\n#_1D9E25: LDA.l $7FFD6E,X\n#_1D9E29: STA.b $07\n\n#_1D9E2B: LDA.b #$0F\n#_1D9E2D: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1D9E31: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Descend", + "code": "Swamola_Descend:\n#_1D9E32: LDA.w $0E80,X\n#_1D9E35: AND.b #$03\n#_1D9E37: BNE .delay\n\n#_1D9E39: INC.w $0F80,X\n\n#_1D9E3C: LDA.w $0F80,X\n#_1D9E3F: CMP.b #$10\n#_1D9E41: BNE .delay\n\n#_1D9E43: INC.w $0D80,X\n\n#_1D9E46: JSR Swamola_SpawnRipples\n\n#_1D9E49: LDA.b #$80\n#_1D9E4B: STA.w $0D20,X\n\n#_1D9E4E: LDA.b #$50\n#_1D9E50: STA.w $0DF0,X\n\n.delay\n#_1D9E53: LDA.w $0E80,X\n#_1D9E56: AND.b #$03\n#_1D9E58: BNE .exit\n\n#_1D9E5A: STZ.b $00\n#_1D9E5C: STZ.b $01\n\n#_1D9E5E: JSR Swamola_ApproachTargetVelocity\n\n.exit\n#_1D9E61: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Submerge", + "code": "Swamola_Submerge:\n#_1D9E62: LDA.w $0DF0,X\n#_1D9E65: BNE .wait\n\n#_1D9E67: JSL GetRandomNumber\n#_1D9E6B: AND.b #$07\n#_1D9E6D: TAY\n\n#_1D9E6E: LDA.w Swamola_Dive_ID,Y\n#_1D9E71: STA.w $0DE0,X\n\n#_1D9E74: TAY\n\n#_1D9E75: LDA.w $0D90,X\n#_1D9E78: CLC\n#_1D9E79: ADC.w Swamola_Dive_offset_x_low,Y\n#_1D9E7C: STA.w $0D10,X\n\n#_1D9E7F: LDA.w $0DA0,X\n#_1D9E82: ADC.w Swamola_Dive_offset_x_high,Y\n#_1D9E85: STA.w $0D30,X\n\n#_1D9E88: LDA.w $0DB0,X\n#_1D9E8B: CLC\n#_1D9E8C: ADC.w Swamola_Dive_offset_y_low,Y\n#_1D9E8F: STA.w $0D00,X\n\n#_1D9E92: LDA.w $0EB0,X\n#_1D9E95: ADC.w Swamola_Dive_offset_y_high,Y\n#_1D9E98: STA.w $0D20,X\n\n#_1D9E9B: STZ.w $0D80,X\n\n#_1D9E9E: LDA.b #$30\n#_1D9EA0: STA.w $0DF0,X\n\n#_1D9EA3: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n#_1D9EA6: STZ.w $0F80,X\n\n.wait\n#_1D9EA9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_SpawnRipples", + "code": "Swamola_SpawnRipples:\n#_1D9EAA: LDA.b #$CF ; SPRITE CF\n#_1D9EAC: JSL Sprite_SpawnDynamically\n#_1D9EB0: BMI .no_space\n\n#_1D9EB2: JSL Sprite_SetSpawnedCoordinates\n\n#_1D9EB6: LDA.b #$80\n#_1D9EB8: STA.w $0D80,Y\n\n#_1D9EBB: LDA.b #$20\n#_1D9EBD: STA.w $0DF0,Y\n\n#_1D9EC0: LDA.b #$04\n#_1D9EC2: STA.w $0F50,Y\n#_1D9EC5: STA.w $0BA0,Y\n\n#_1D9EC8: LDA.b #$00\n#_1D9ECA: STA.w $0E40,Y\n\n.no_space\n#_1D9ECD: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Swamola_Ripples", + "code": "Swamola_Ripples:\n#_1D9ECE: JSR SpriteDraw_SwamolaRipples\n#_1D9ED1: JSR Sprite_CheckIfActive_Bank1D\n\n#_1D9ED4: LDA.w $0DF0,X\n#_1D9ED7: BNE .exit\n\n#_1D9ED9: STZ.w $0DD0,X\n\n.exit\n#_1D9EDC: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_SwamolaRipples", + "code": "SpriteDraw_SwamolaRipples:\n#_1D9F1D: LDA.b #$08\n#_1D9F1F: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1D9F23: LDA.b #$00\n#_1D9F25: XBA\n#_1D9F26: LDA.w $0DF0,X\n#_1D9F29: AND.b #$0C\n\n#_1D9F2B: REP #$20\n\n#_1D9F2D: ASL A\n#_1D9F2E: ASL A\n#_1D9F2F: CLC\n#_1D9F30: ADC.w #.oam_groups\n#_1D9F33: STA.b $08\n\n#_1D9F35: SEP #$20\n\n#_1D9F37: LDA.b #$02\n#_1D9F39: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n\npool SpriteDraw_Swamola\n\n.segment_offset\n#_1D9F3C: db $08, $10, $16, $1A\n\n.anim_step\n#_1D9F40: db $07, $06, $05, $04, $03, $04, $05, $06\n#_1D9F48: db $07, $06, $05, $04, $03, $04, $05, $06\n\n.flip\n#_1D9F50: db $C0, $C0, $C0, $C0, $80, $80, $80, $80\n#_1D9F58: db $00, $00, $00, $00, $00, $40, $40, $40\n\n.segment_step\n#_1D9F60: db $00, $00, $01, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Swamola", + "code": "SpriteDraw_Swamola:\n#_1D9F64: LDA.w $0D50,X\n#_1D9F67: STA.b $01\n\n#_1D9F69: LDA.w $0D40,X\n#_1D9F6C: CLC\n#_1D9F6D: ADC.w $0F80,X\n#_1D9F70: STA.b $00\n\n#_1D9F72: JSL Sprite_ConvertVelocityToAngle\n#_1D9F76: TAY\n\n#_1D9F77: LDA.w .anim_step,Y\n#_1D9F7A: STA.w $0DC0,X\n\n#_1D9F7D: LDA.w $0F50,X\n#_1D9F80: AND.b #$3F\n#_1D9F82: ORA.w .flip,Y\n#_1D9F85: STA.w $0F50,X\n\n#_1D9F88: JSL SpriteDraw_SingleLarge_long\n\n; ---------------------------------------------------------\n\n#_1D9F8C: PHX\n#_1D9F8D: TXY\n\n#_1D9F8E: LDA.w $0E80,X\n#_1D9F91: AND.b #$1F\n#_1D9F93: CLC\n#_1D9F94: ADC.w Swamola_SegmentsIndex,X\n#_1D9F97: TAX\n\n#_1D9F98: LDA.w $0D10,Y\n#_1D9F9B: STA.l $7FFA5C,X\n\n#_1D9F9F: LDA.w $0D30,Y\n#_1D9FA2: STA.l $7FFB1C,X\n\n#_1D9FA6: LDA.w $0D00,Y\n#_1D9FA9: STA.l $7FFBDC,X\n\n#_1D9FAD: LDA.w $0D20,Y\n#_1D9FB0: STA.l $7FFC9C,X\n\n#_1D9FB4: PLX\n\n; ---------------------------------------------------------\n\n#_1D9FB5: REP #$20\n\n#_1D9FB7: LDA.w #$0000\n#_1D9FBA: LDY.w $0D40,X\n#_1D9FBD: BPL .positive_y_1\n\n#_1D9FBF: LDA.w #$0014\n\n.positive_y_1\n#_1D9FC2: PHA\n\n#_1D9FC3: CLC\n#_1D9FC4: ADC.b $90\n#_1D9FC6: STA.b $90\n\n#_1D9FC8: PLA\n#_1D9FC9: LSR A\n#_1D9FCA: LSR A\n#_1D9FCB: CLC\n#_1D9FCC: ADC.b $92\n#_1D9FCE: STA.b $92\n\n#_1D9FD0: SEP #$20\n\n#_1D9FD2: LDA.b #$00\n#_1D9FD4: STA.w $0FB6\n\n; ---------------------------------------------------------\n\n.next_segment\n#_1D9FD7: LDY.w $0FB6\n\n#_1D9FDA: LDA.w .segment_step,Y\n#_1D9FDD: STA.w $0DC0,X\n\n#_1D9FE0: PHX\n\n#_1D9FE1: LDA.w $0E80,X\n#_1D9FE4: SEC\n#_1D9FE5: SBC.w .segment_offset,Y\n#_1D9FE8: AND.b #$1F\n#_1D9FEA: CLC\n#_1D9FEB: ADC.w Swamola_SegmentsIndex,X\n#_1D9FEE: TAX\n\n#_1D9FEF: LDA.l $7FFA5C,X\n#_1D9FF3: STA.w $0FD8\n\n#_1D9FF6: LDA.l $7FFB1C,X\n#_1D9FFA: STA.w $0FD9\n\n#_1D9FFD: LDA.l $7FFBDC,X\n#_1DA001: STA.w $0FDA\n\n#_1DA004: LDA.l $7FFC9C,X\n#_1DA008: STA.w $0FDB\n\n#_1DA00B: PLX\n\n#_1DA00C: LDA.w $0D40,X\n#_1DA00F: BPL .positive_y_2\n\n#_1DA011: REP #$20\n\n#_1DA013: LDA.b $90\n#_1DA015: SEC\n#_1DA016: SBC.w #$0004\n#_1DA019: STA.b $90\n\n#_1DA01B: DEC.b $92\n#_1DA01D: BRA .draw_segment\n\n.positive_y_2\n#_1DA01F: REP #$20\n\n#_1DA021: LDA.b $90\n#_1DA023: CLC\n#_1DA024: ADC.w #$0004\n#_1DA027: STA.b $90\n\n#_1DA029: INC.b $92\n\n.draw_segment\n#_1DA02B: SEP #$20\n\n#_1DA02D: JSL SpriteDraw_SingleLarge_long\n\n#_1DA031: INC.w $0FB6\n\n#_1DA034: LDA.w $0FB6\n#_1DA037: CMP.b #$04\n#_1DA039: BNE .next_segment\n\n#_1DA03B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_SpawnFromMaiden", + "code": "Blind_SpawnFromMaiden:\n#_1DA03C: LDX.b #$00\n\n#_1DA03E: LDA.b #$09\n#_1DA040: STA.w $0DD0,X\n\n#_1DA043: LDA.b #$CE ; SPRITE CE\n#_1DA045: STA.w $0E20,X\n\n#_1DA048: LDA.b $00\n#_1DA04A: STA.w $0D10,X\n\n#_1DA04D: LDA.b $01\n#_1DA04F: STA.w $0D30,X\n\n#_1DA052: LDA.b $02\n#_1DA054: SEC\n#_1DA055: SBC.b #$10\n#_1DA057: STA.w $0D00,X\n\n#_1DA05A: LDA.b $03\n#_1DA05C: STA.w $0D20,X\n\n#_1DA05F: JSL SpritePrep_LoadProperties\n\n#_1DA063: LDA.b #$C0\n#_1DA065: STA.w $0E10,X\n\n#_1DA068: LDA.b #$15\n#_1DA06A: STA.w $0DC0,X\n\n#_1DA06D: LDA.b #$02\n#_1DA06F: STA.w $0DE0,X\n#_1DA072: STA.w $0BA0,X\n\n#_1DA075: LDA.w $0403\n#_1DA078: ORA.b #$20\n#_1DA07A: STA.w $0403\n\n#_1DA07D: STZ.w $0B69\n\n#_1DA080: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_Blind_PrepareBattle", + "code": "SpritePrep_Blind_PrepareBattle:\n#_1DA081: LDA.l $7EF3CC\n#_1DA085: CMP.b #$06 ; FOLLOWER 06\n#_1DA087: BEQ .despawn\n\n#_1DA089: LDA.w $0403\n#_1DA08C: AND.b #$20\n#_1DA08E: BEQ .despawn\n\n#_1DA090: LDA.b #$60\n#_1DA092: STA.w $0E10,X\n\n#_1DA095: LDA.b #$01\n#_1DA097: STA.w $0DB0,X\n\n#_1DA09A: LDA.b #$02\n#_1DA09C: STA.w $0DE0,X\n\n#_1DA09F: LDA.b #$04\n#_1DA0A1: STA.w $0EB0,X\n\n#_1DA0A4: LDA.b #$07\n#_1DA0A6: STA.w $0DC0,X\n\n#_1DA0A9: STZ.w $0B69\n\n#_1DA0AC: RTL", + "file": "bank_1D.asm" + }, + { + "name": "BlindLaser_SpawnTrailGarnish", + "code": "BlindLaser_SpawnTrailGarnish:\n#_1DA0B1: LDA.w $0E80,X\n#_1DA0B4: AND.b #$00\n#_1DA0B6: BNE .exit\n\n#_1DA0B8: PHX\n#_1DA0B9: TXY\n\n#_1DA0BA: LDX.b #$1D\n\n.next_slot\n#_1DA0BC: LDA.l $7FF800,X\n#_1DA0C0: BEQ .free_slot\n\n#_1DA0C2: DEX\n#_1DA0C3: BPL .next_slot\n\n#_1DA0C5: DEC.w $0FF8\n#_1DA0C8: BPL .use_search_index\n\n#_1DA0CA: LDA.b #$1D\n#_1DA0CC: STA.w $0FF8\n\n.use_search_index\n#_1DA0CF: LDX.w $0FF8\n\n; ---------------------------------------------------------\n\n.free_slot\n#_1DA0D2: LDA.b #$0F ; GARNISH 0F\n#_1DA0D4: STA.l $7FF800,X\n#_1DA0D8: STA.w $0FB4\n\n#_1DA0DB: LDA.w $0DC0,Y\n#_1DA0DE: STA.l $7FF9FE,X\n\n#_1DA0E2: TYA\n#_1DA0E3: STA.l $7FF92C,X\n\n#_1DA0E7: LDA.w $0D10,Y\n#_1DA0EA: STA.l $7FF83C,X\n\n#_1DA0EE: LDA.w $0D30,Y\n#_1DA0F1: STA.l $7FF878,X\n\n#_1DA0F5: LDA.w $0D00,Y\n#_1DA0F8: CLC\n#_1DA0F9: ADC.b #$10\n#_1DA0FB: STA.l $7FF81E,X\n\n#_1DA0FF: LDA.w $0D20,Y\n#_1DA102: ADC.b #$00\n#_1DA104: STA.l $7FF85A,X\n\n#_1DA108: LDA.b #$0A\n#_1DA10A: STA.l $7FF90E,X\n\n#_1DA10E: PLX\n\n.exit\n#_1DA10F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Head", + "code": "Blind_Head:\n#_1DA118: LDA.w $0B89,X\n#_1DA11B: ORA.b #$30\n#_1DA11D: STA.w $0B89,X\n\n; ---------------------------------------------------------\n\n#_1DA120: JSL SpriteDraw_SingleLarge_long\n\n#_1DA124: PHX\n\n#_1DA125: LDY.b #$02\n\n#_1DA127: LDA.w $0EB0,X\n#_1DA12A: TAX\n\n#_1DA12B: LDA.w Blind_HeadChars,X\n#_1DA12E: STA.b ($90),Y\n\n#_1DA130: INY\n#_1DA131: LDA.b ($90),Y\n#_1DA133: AND.b #$3F\n#_1DA135: ORA.w Blind_HeadFlips,X\n#_1DA138: STA.b ($90),Y\n\n#_1DA13A: PLX\n\n; ---------------------------------------------------------\n\n#_1DA13B: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DA13E: LDA.w $0EA0,X\n#_1DA141: CMP.b #$0E\n#_1DA143: BNE .dont_shorten_recoil\n\n#_1DA145: LDA.b #$08\n#_1DA147: STA.w $0EA0,X\n\n.dont_shorten_recoil\n#_1DA14A: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1DA14D: DEC.w $0E30,X\n#_1DA150: BPL .dont_rotate\n\n#_1DA152: LDA.b #$02\n#_1DA154: STA.w $0E30,X\n\n#_1DA157: LDA.w $0EB0,X\n#_1DA15A: INC A\n#_1DA15B: AND.b #$0F\n#_1DA15D: STA.w $0EB0,X\n\n; ---------------------------------------------------------\n\n.dont_rotate\n#_1DA160: LDA.w $0DF0,X\n#_1DA163: BEQ .continue\n\n#_1DA165: JMP.w .exit\n\n; ---------------------------------------------------------\n\n.continue\n#_1DA168: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DA16B: INC.w $0E80,X\n\n#_1DA16E: LDA.b #$1F\n#_1DA170: JSR Blind_SpitFireball\n\n#_1DA173: TYA\n#_1DA174: BMI .no_fireball\n\n#_1DA176: DEC.w $0F90,X\n#_1DA179: BPL .no_fireball\n\n#_1DA17B: LDA.b #$04\n#_1DA17D: STA.w $0F90,X\n\n#_1DA180: PHY\n\n#_1DA181: LDA.b #$20\n#_1DA183: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DA187: PLY\n\n#_1DA188: LDA.b $00\n#_1DA18A: STA.w $0D40,Y\n\n#_1DA18D: LDA.b $01\n#_1DA18F: STA.w $0D50,Y\n\n.no_fireball\n#_1DA192: LDA.w $0E80,X\n#_1DA195: AND.b #$00\n#_1DA197: BNE .dont_accelerate_x\n\n#_1DA199: LDA.w $0ED0,X\n#_1DA19C: AND.b #$01\n#_1DA19E: TAY\n\n#_1DA19F: LDA.w $0D50,X\n#_1DA1A2: CMP.w .speed_limit_x,Y\n#_1DA1A5: BEQ .dont_accelerate_x\n\n#_1DA1A7: CLC\n#_1DA1A8: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1DA1AB: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.dont_accelerate_x\n#_1DA1AE: LDA.w $0D10,X\n#_1DA1B1: AND.b #$FE\n#_1DA1B3: CMP.w .pos_limit_x,Y\n#_1DA1B6: BNE .dont_invert_accel_x\n\n#_1DA1B8: INC.w $0ED0,X\n\n.dont_invert_accel_x\n#_1DA1BB: LDA.w $0E80,X\n#_1DA1BE: AND.b #$00\n#_1DA1C0: BNE .dont_accelerate_y\n\n#_1DA1C2: LDA.w $0EC0,X\n#_1DA1C5: AND.b #$01\n#_1DA1C7: TAY\n\n#_1DA1C8: LDA.w $0D40,X\n#_1DA1CB: CMP.w .speed_limit_y,Y\n#_1DA1CE: BEQ .dont_accelerate_y\n\n#_1DA1D0: CLC\n#_1DA1D1: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1DA1D4: STA.w $0D40,X\n\n; ---------------------------------------------------------\n\n.dont_accelerate_y\n#_1DA1D7: LDA.w $0D00,X\n#_1DA1DA: AND.b #$FE\n#_1DA1DC: CMP.w .pos_limit_y,Y\n#_1DA1DF: BNE .dont_invert_accel_y\n\n#_1DA1E1: INC.w $0EC0,X\n\n.dont_invert_accel_y\n#_1DA1E4: LDA.w $0EA0,X\n#_1DA1E7: BNE .exit\n\n#_1DA1E9: JSR Sprite_Move_XY_Bank1D\n\n.exit\n#_1DA1EC: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_SpawnHead", + "code": "Blind_SpawnHead:\n#_1DA1ED: LDA.b #$CE ; SPRITE CE\n#_1DA1EF: JSL Sprite_SpawnDynamically\n#_1DA1F3: BMI .fail\n\n#_1DA1F5: JSL Sprite_SetSpawnedCoordinates\n\n#_1DA1F9: LDA.b #$5B\n#_1DA1FB: STA.w $0E60,Y\n\n#_1DA1FE: AND.b #$0F\n#_1DA200: STA.w $0F50,Y\n\n#_1DA203: LDA.b #$04\n#_1DA205: STA.w $0CAA,Y\n\n#_1DA208: LDA.b #$02\n#_1DA20A: STA.w $0D90,Y\n\n#_1DA20D: LDA.b #$01\n#_1DA20F: STA.w $0E40,Y\n\n#_1DA212: DEC A\n#_1DA213: STA.w $0F60,Y\n#_1DA216: STA.w SprTileDie,Y\n\n#_1DA219: LDA.b #$17\n#_1DA21B: STA.w $0F70,Y\n\n; ---------------------------------------------------------\n\n#_1DA21E: CLC\n#_1DA21F: ADC.b $02\n#_1DA221: STA.w $0D00,Y\n\n#_1DA224: LDA.b $00\n#_1DA226: ASL A\n#_1DA227: ROL A\n#_1DA228: AND.b #$01\n#_1DA22A: STA.w $0ED0,Y\n\n#_1DA22D: LDA.b $02\n#_1DA22F: ASL A\n#_1DA230: ROL A\n#_1DA231: AND.b #$01\n#_1DA233: STA.w $0EC0,Y\n\n#_1DA236: LDA.b #$30\n#_1DA238: STA.w $0DF0,Y\n\n; ---------------------------------------------------------\n\n.fail\n#_1DA23B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_draw", + "code": "Blind_draw:\n#_1DA25C: db $14, $13, $12, $11, $10, $0F, $0F\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CE_Blind", + "code": "Sprite_CE_Blind:\n#_1DA263: LDA.w $0D90,X\n#_1DA266: BPL Blind_Blind\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Laser", + "code": "Blind_Laser:\n#_1DA268: LDY.w $0EB0,X\n\n#_1DA26B: LDA.w .draw,Y\n#_1DA26E: STA.w $0DC0,X\n\n#_1DA271: LDA.w .flip,Y\n#_1DA274: ORA.b #$03\n#_1DA276: STA.w $0F50,X\n\n#_1DA279: JSL Sprite_PrepOAMCoord_long\n#_1DA27D: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DA280: LDA.w $0DF0,X\n#_1DA283: BEQ .not_dispersing\n\n#_1DA285: CMP.b #$01\n#_1DA287: BNE .exit\n\n#_1DA289: STZ.w $0DD0,X\n\n.exit\n#_1DA28C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Blind", + "code": "Blind_Blind:\n#_1DA2CB: CMP.b #$02\n#_1DA2CD: BNE Blind_Blind_Blind\n\n#_1DA2CF: JMP.w Blind_Head\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Blind_Blind", + "code": "Blind_Blind_Blind:\n#_1DA2D2: LDA.w $0B89,X\n#_1DA2D5: ORA.b #$30\n#_1DA2D7: STA.w $0B89,X\n\n#_1DA2DA: JSR SpriteDraw_Blind\n\n#_1DA2DD: LDA.b #$01\n#_1DA2DF: STA.w $0F50,X\n\n#_1DA2E2: JSR Sprite_CheckIfActive_Bank1D\n\n; ---------------------------------------------------------\n\n#_1DA2E5: LDA.w $0EA0,X\n#_1DA2E8: BEQ .not_hit\n\n#_1DA2EA: DEC.w $0EA0,X\n\n#_1DA2ED: CMP.b #$0B\n#_1DA2EF: BNE .not_hit\n\n#_1DA2F1: STZ.w $0EF0,X\n#_1DA2F4: STZ.w $0E70,X\n\n#_1DA2F7: LDA.w $0F10,X\n#_1DA2FA: BNE .not_hit\n\n#_1DA2FC: LDA.b #$80\n#_1DA2FE: STA.w $0E50,X\n\n#_1DA301: LDA.b #$30\n#_1DA303: STA.w $0F10,X\n\n#_1DA306: LDA.w $0F50,X\n#_1DA309: AND.b #$01\n#_1DA30B: STA.w $0F50,X\n\n#_1DA30E: INC.w $0F90,X\n\n#_1DA311: LDA.w $0F90,X\n#_1DA314: CMP.b #$03\n#_1DA316: BCS .phase\n\n#_1DA318: LDA.b #$60\n#_1DA31A: STA.w $0E70,X\n\n#_1DA31D: LDA.b #$01\n#_1DA31F: STA.w $0E30,X\n\n#_1DA322: BRA .not_hit\n\n; ---------------------------------------------------------\n\n.phase\n#_1DA324: STZ.w $0F90,X\n\n#_1DA327: INC.w $0B6A\n\n#_1DA32A: LDA.w $0B6A\n#_1DA32D: CMP.b #$03\n#_1DA32F: BNE .spawn_head\n\n#_1DA331: JSL Sprite_KillFriends\n#_1DA335: JSR Sprite_BossPrepareToDie\n\n#_1DA338: LDA.b #$FF\n#_1DA33A: STA.w $0DF0,X\n#_1DA33D: STA.w $0EF0,X\n\n#_1DA340: INC.w $0FFC\n\n#_1DA343: LDA.b #$22 ; SFX3.22\n#_1DA345: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DA349: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Blind_Blind_Blind", + "code": "Blind_Blind_Blind_Blind:\n#_1DA375: INC.w $0E80,X\n\n#_1DA378: LDA.w $0E80,X\n#_1DA37B: AND.b #$01\n#_1DA37D: BNE .accept_tick\n\n#_1DA37F: INC.w $0DF0,X\n\n.accept_tick\n#_1DA382: LDA.w $0E00,X\n#_1DA385: BEQ Blind_HandleAI\n\n#_1DA387: STZ.w $0D80,X\n\n#_1DA38A: CMP.b #$08\n#_1DA38C: BNE .dont_shoot_laser\n\n#_1DA38E: JSR Blind_SpawnLaser\n\n.dont_shoot_laser\n#_1DA391: JMP.w Blind_CheckBumpDamage\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_HandleAI", + "code": "Blind_HandleAI:\n#_1DA394: INC.w $0B69\n\n#_1DA397: LDA.w $0B58,X\n#_1DA39A: BNE .no_laser\n\n#_1DA39C: LDA.w $0D80,X\n#_1DA39F: BEQ .refuse_laser\n\n#_1DA3A1: LDA.b #$10\n#_1DA3A3: STA.w $0E00,X\n\n#_1DA3A6: LDA.b #$80\n#_1DA3A8: STA.w $0B58,X\n\n#_1DA3AB: BRA .continue\n\n.no_laser\n#_1DA3AD: DEC.w $0B58,X\n\n; ---------------------------------------------------------\n\n.continue\n#_1DA3B0: STZ.w $0D80,X\n\n.refuse_laser\n#_1DA3B3: LDA.b $23\n#_1DA3B5: STA.w $0D30,X\n\n#_1DA3B8: LDA.b $21\n#_1DA3BA: STA.w $0D20,X\n\n#_1DA3BD: LDA.w $0DB0,X\n#_1DA3C0: JSL JumpTableLocal\n#_1DA3C4: dw Blind_THELIGHT ; 0x00\n#_1DA3C6: dw Blind_EscapeLight ; 0x01\n#_1DA3C8: dw Blind_Shimmy ; 0x02\n#_1DA3CA: dw Blind_SwapSides ; 0x03\n#_1DA3CC: dw Blind_Spin ; 0x04\n#_1DA3CE: dw Blind_FireballFlurry ; 0x05\n#_1DA3D0: dw Blind_Undress ; 0x06\n#_1DA3D2: dw Blind_Rerobe ; 0x07\n\n; =========================================================\n\npool Blind_Undress\n\n.draw\n#_1DA3D4: db $0E, $0D, $0C, $0A\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Undress", + "code": "Blind_Undress:\n#_1DA3D8: STZ.w $0EF0,X\n\n#_1DA3DB: LDA.b #$0C\n#_1DA3DD: STA.w $0EB0,X\n\n#_1DA3E0: LDA.w $0E10,X\n#_1DA3E3: BNE .delay\n\n#_1DA3E5: INC.w $0DB0,X\n\n#_1DA3E8: LDA.b #$27\n#_1DA3EA: STA.w $0E10,X\n\n#_1DA3ED: LDA.b #$13 ; SFX1.13\n#_1DA3EF: JSL SpriteSFX_QueueSFX1WithPan\n\n#_1DA3F3: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Rerobe", + "code": "Blind_Rerobe:\n#_1DA410: LDA.w $0E10,X\n#_1DA413: BNE .delay_ai\n\n#_1DA415: LDA.b #$02\n#_1DA417: STA.w $0DB0,X\n\n#_1DA41A: LDA.b #$80\n#_1DA41C: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n#_1DA41F: LDA.w $0D00,X\n#_1DA422: ASL A\n#_1DA423: ROL A\n#_1DA424: AND.b #$01\n\n#_1DA426: INC A\n#_1DA427: INC A\n#_1DA428: STA.w $0DE0,X\n\n#_1DA42B: LDA.w $0D10,X\n#_1DA42E: ASL A\n#_1DA42F: ROL A\n#_1DA430: STA.w $0ED0,X\n\n#_1DA433: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n#_1DA436: STZ.w $0BA0,X\n\n#_1DA439: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_FireballFlurry", + "code": "Blind_FireballFlurry:\n#_1DA465: DEC.w $0E70,X\n\n#_1DA468: PHA\n\n#_1DA469: AND.b #$07\n#_1DA46B: SEC\n#_1DA46C: ROL A\n#_1DA46D: STA.w $0F50,X\n\n#_1DA470: PLA\n#_1DA471: BNE .useless_branch\n\n.useless_branch\n#_1DA473: DEC.w $0E90,X\n#_1DA476: BPL .dont_turn_head\n\n#_1DA478: LDA.w $0E30,X\n#_1DA47B: STA.w $0E90,X\n\n#_1DA47E: LDA.w $0EB0,X\n#_1DA481: INC A\n#_1DA482: AND.b #$0F\n#_1DA484: STA.w $0EB0,X\n\n.dont_turn_head\n#_1DA487: LDA.w $0E80,X\n#_1DA48A: AND.b #$1F\n#_1DA48C: BNE .dont_adjust_rotation_timer\n\n#_1DA48E: LDA.w $0E30,X\n#_1DA491: CMP.b #$05\n#_1DA493: BEQ .dont_adjust_rotation_timer\n\n#_1DA495: INC.w $0E30,X\n\n.dont_adjust_rotation_timer\n#_1DA498: JSR Blind_AnimateRobes\n\n#_1DA49B: LDA.b #$0F\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_SpitFireball", + "code": "Blind_SpitFireball:\n#_1DA49D: LDY.b #$FF\n\n#_1DA49F: AND.w $0E80,X\n#_1DA4A2: BNE .exit\n\n#_1DA4A4: JSL Sprite_SpawnFireball\n#_1DA4A8: BMI .exit\n\n#_1DA4AA: LDA.b #$19 ; SFX3.19\n#_1DA4AC: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DA4B0: PHX\n\n#_1DA4B1: LDA.w $0EB0,X\n#_1DA4B4: TAX\n\n#_1DA4B5: LDA.w .speed_x,X\n#_1DA4B8: STA.w $0D50,Y\n\n#_1DA4BB: LDA.w .speed_y,X\n#_1DA4BE: STA.w $0D40,Y\n\n#_1DA4C1: JSR Fireball_Configure\n\n#_1DA4C4: PLX\n\n.exit\n#_1DA4C5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_THELIGHT", + "code": "Blind_THELIGHT:\n#_1DA4C6: LDA.b #$00\n#_1DA4C8: STA.w $0AE8\n\n#_1DA4CB: LDA.b #$A0\n#_1DA4CD: STA.w $0AEA\n\n#_1DA4D0: LDA.w $0E10,X\n#_1DA4D3: BNE .delay\n\n#_1DA4D5: INC.w $0DB0,X\n\n#_1DA4D8: LDA.b #$60\n#_1DA4DA: STA.w $0E10,X\n\n; ---------------------------------------------------------\n\n.delay\n#_1DA4DD: CMP.b #$50\n#_1DA4DF: BNE .no_message\n\n#_1DA4E1: PHA\n\n#_1DA4E2: LDA.b #$23 ; MESSAGE 0123\n#_1DA4E4: STA.w $1CF0\n\n#_1DA4E7: LDA.b #$01\n#_1DA4E9: STA.w $1CF1\n\n#_1DA4EC: JSL Sprite_ShowMessageMinimal\n\n#_1DA4F0: PLA\n\n; ---------------------------------------------------------\n\n.no_message\n#_1DA4F1: CMP.b #$18\n#_1DA4F3: BNE .no_poof\n\n#_1DA4F5: JSR SpawnBossPoof\n\n.no_poof\n#_1DA4F8: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpawnBossPoof", + "code": "SpawnBossPoof:\n#_1DA4F9: LDA.b #$0C ; SFX2.0C\n#_1DA4FB: STA.w $012E\n\n#_1DA4FE: LDA.b #$CE ; SPRITE CE\n#_1DA500: JSL Sprite_SpawnDynamically\n\n#_1DA504: LDA.b $00\n#_1DA506: CLC\n#_1DA507: ADC.b #$10\n#_1DA509: STA.w $0D10,Y\n\n#_1DA50C: LDA.b $01\n#_1DA50E: ADC.b #$00\n#_1DA510: STA.w $0D30,Y\n\n#_1DA513: LDA.b $02\n#_1DA515: CLC\n#_1DA516: ADC.b #$28\n#_1DA518: STA.w $0D00,Y\n\n#_1DA51B: LDA.b $03\n#_1DA51D: ADC.b #$00\n#_1DA51F: STA.w $0D20,Y\n\n#_1DA522: LDA.b #$0F\n#_1DA524: STA.w $0DC0,Y\n\n#_1DA527: LDA.b #$01\n#_1DA529: STA.w $0D90,Y\n\n#_1DA52C: LDA.b #$2F\n#_1DA52E: STA.w $0DF0,Y\n\n#_1DA531: LDA.b #$09\n#_1DA533: STA.w $0E40,Y\n#_1DA536: STA.w $0BA0,Y\n\n#_1DA539: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_EscapeLight", + "code": "Blind_EscapeLight:\n#_1DA53A: JSR Blind_CheckBumpDamage\n\n#_1DA53D: LDA.b #$09\n#_1DA53F: STA.w $0DC0,X\n\n#_1DA542: LDA.w $0E10,X\n#_1DA545: BNE .still_escaping\n\n#_1DA547: INC.w $0DB0,X\n\n#_1DA54A: LDA.b #$FF\n#_1DA54C: STA.w $0DF0,X\n\n#_1DA54F: STZ.w $0BA0,X\n\n.still_escaping\n#_1DA552: CMP.b #$40\n#_1DA554: BCS .dont_move_yet\n\n#_1DA556: LDA.b #$F8\n#_1DA558: STA.w $0D40,X\n\n#_1DA55B: JSR Sprite_Move_Y_Bank1D\n\n.dont_move_yet\n#_1DA55E: JSR Blind_Animate\n\n#_1DA561: LDA.b #$04\n#_1DA563: STA.w $0EB0,X\n\n#_1DA566: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Shimmy", + "code": "Blind_Shimmy:\n#_1DA56D: JSR Blind_CheckBumpDamage\n#_1DA570: JSR Blind_Animate\n\n#_1DA573: LDA.w $0E80,X\n#_1DA576: AND.b #$7F\n#_1DA578: BNE .ignore_link_pos\n\n#_1DA57A: JSR Sprite_IsBelowLink_Bank1D\n\n#_1DA57D: INY\n#_1DA57E: INY\n#_1DA57F: TYA\n\n#_1DA580: CMP.w $0DE0,X\n#_1DA583: BNE .link_behind\n\n.ignore_link_pos\n#_1DA585: LDA.w $0DF0,X\n#_1DA588: BNE .delay_ai\n\n.link_behind\n#_1DA58A: LDA.w $0D10,X\n#_1DA58D: CMP.b #$78\n#_1DA58F: BCS .delay_ai\n\n#_1DA591: INC.w $0DB0,X\n\n#_1DA594: LDA.w $0D40,X\n#_1DA597: AND.b #$FE\n#_1DA599: STA.w $0D40,X\n\n#_1DA59C: LDA.w $0D50,X\n#_1DA59F: AND.b #$FE\n#_1DA5A1: STA.w $0D50,X\n\n#_1DA5A4: LDA.b #$30\n#_1DA5A6: STA.w $0E10,X\n\n#_1DA5A9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_SwapSides", + "code": "Blind_SwapSides:\n#_1DA608: JSR Blind_CheckBumpDamage\n\n#_1DA60B: LDA.w $0E10,X\n#_1DA60E: BEQ .done_decel\n\n#_1DA610: JSR Blind_Decelerate_X\n#_1DA613: JSR Sprite_Move_X_Bank1D\n\n#_1DA616: JMP.w Blind_Decelerate_Y\n\n; ---------------------------------------------------------\n\n.done_decel\n#_1DA619: LDA.w $0DE0,X\n#_1DA61C: DEC A\n#_1DA61D: DEC A\n#_1DA61E: TAY\n\n#_1DA61F: LDA.w $0D40,X\n#_1DA622: CMP.w .speed_limit_y,Y\n#_1DA625: BEQ .at_max_y_speed\n\n#_1DA627: CLC\n#_1DA628: ADC.w .accel_y,Y\n#_1DA62B: STA.w $0D40,X\n\n.at_max_y_speed\n#_1DA62E: LDA.w $0D00,X\n#_1DA631: AND.b #$FC\n#_1DA633: CMP.w .pos_limit_y,Y\n#_1DA636: BNE .dont_spin\n\n#_1DA638: INC.w $0DB0,X\n\n#_1DA63B: LDA.w $0DE0,X\n#_1DA63E: SEC\n#_1DA63F: SBC.b #$01\n#_1DA641: STA.w $0DA0,X\n\n.dont_spin\n#_1DA644: JSR Sprite_Move_XY_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Decelerate_X", + "code": "Blind_Decelerate_X:\n#_1DA647: LDA.w $0D50,X\n#_1DA64A: BEQ .stopped\n#_1DA64C: BPL .positive\n\n#_1DA64E: CLC\n#_1DA64F: ADC.b #$04\n\n.positive\n#_1DA651: SEC\n#_1DA652: SBC.b #$02\n#_1DA654: STA.w $0D50,X\n\n.stopped\n#_1DA657: JSR Blind_AnimateRobes\n\n#_1DA65A: LDA.w $0E70,X\n#_1DA65D: BEQ .exit\n\n#_1DA65F: JMP.w Blind_FireballFlurry\n\n.exit\n#_1DA662: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Spin", + "code": "Blind_Spin:\n#_1DA667: JSR Blind_CheckBumpDamage\n\n#_1DA66A: LDA.w $0E80,X\n#_1DA66D: AND.b #$07\n#_1DA66F: BNE Blind_Decelerate_Y\n\n; ---------------------------------------------------------\n\n#_1DA671: LDA.w $0DE0,X\n#_1DA674: DEC A\n#_1DA675: DEC A\n#_1DA676: TAY\n\n#_1DA677: LDA.w $0DC0,X\n#_1DA67A: CMP.w .anim_limit,Y\n#_1DA67D: BNE .still_moving\n\n#_1DA67F: LDA.b #$FE\n#_1DA681: STA.w $0DF0,X\n\n#_1DA684: LDA.b #$02\n#_1DA686: STA.w $0DB0,X\n\n#_1DA689: LDA.w $0DE0,X\n#_1DA68C: EOR.b #$01\n#_1DA68E: STA.w $0DE0,X\n\n#_1DA691: LDA.w $0D10,X\n#_1DA694: ASL A\n#_1DA695: ROL A\n#_1DA696: AND.b #$01\n#_1DA698: STA.w $0ED0,X\n\n#_1DA69B: BRA Blind_Decelerate_Y\n\n.still_moving\n#_1DA69D: CLC\n#_1DA69E: ADC.w .anim_direction,Y\n#_1DA6A1: STA.w $0DC0,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Decelerate_Y", + "code": "Blind_Decelerate_Y:\n#_1DA6A4: LDA.w $0D40,X\n#_1DA6A7: BEQ .stopped\n#_1DA6A9: BPL .positive\n\n#_1DA6AB: CLC\n#_1DA6AC: ADC.b #$08\n\n.positive\n#_1DA6AE: SEC\n#_1DA6AF: SBC.b #$04\n#_1DA6B1: STA.w $0D40,X\n\n.stopped\n#_1DA6B4: JSR Sprite_Move_Y_Bank1D\n\n#_1DA6B7: LDA.w $0E70,X\n#_1DA6BA: BEQ .exit\n\n#_1DA6BC: JMP.w Blind_FireballFlurry\n\n.exit\n#_1DA6BF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_CheckBumpDamage", + "code": "Blind_CheckBumpDamage:\n#_1DA6C0: LDA.w $0F10,X\n#_1DA6C3: ORA.w $0EA0,X\n#_1DA6C6: BNE .invulnerable\n\n#_1DA6C8: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n.invulnerable\n#_1DA6CB: JSR Blind_BumpDamageFromBody\n\n#_1DA6CE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Animate", + "code": "Blind_Animate:\n#_1DA6EF: LDA.w $0E70,X\n#_1DA6F2: BNE Blind_AnimateRobes\n\n#_1DA6F4: LDA.b $22\n#_1DA6F6: LSR A\n#_1DA6F7: LSR A\n#_1DA6F8: LSR A\n#_1DA6F9: LSR A\n#_1DA6FA: LSR A\n#_1DA6FB: TAY\n\n#_1DA6FC: LDA.w .step,Y\n\n#_1DA6FF: LDY.w $0DE0,X\n#_1DA702: CPY.b #$03\n#_1DA704: BNE .facing_down\n\n#_1DA706: EOR.b #$FF\n#_1DA708: INC A\n\n.facing_down\n#_1DA709: STA.b $01\n\n#_1DA70B: TYA\n\n#_1DA70C: DEC A\n#_1DA70D: DEC A\n\n#_1DA70E: ASL A\n#_1DA70F: ASL A\n#_1DA710: ASL A\n\n#_1DA711: STA.b $00\n\n; ---------------------------------------------------------\n\n#_1DA713: LDA.w $0B69\n\n#_1DA716: LSR A\n#_1DA717: LSR A\n#_1DA718: LSR A\n\n#_1DA719: AND.b #$07\n#_1DA71B: ADC.b $00\n#_1DA71D: TAY\n\n#_1DA71E: LDA.w .head_dir,Y\n#_1DA721: CLC\n#_1DA722: ADC.b $01\n#_1DA724: AND.b #$0F\n#_1DA726: STA.w $0EB0,X\n\n; =========================================================\n\n#Blind_AnimateRobes:\n#_1DA729: LDA.w $0DE0,X\n#_1DA72C: DEC A\n#_1DA72D: DEC A\n#_1DA72E: ASL A\n#_1DA72F: ASL A\n#_1DA730: STA.b $00\n\n#_1DA732: LDA.w $0E80,X\n#_1DA735: LSR A\n#_1DA736: LSR A\n#_1DA737: LSR A\n#_1DA738: AND.b #$03\n#_1DA73A: CLC\n#_1DA73B: ADC.b $00\n#_1DA73D: TAY\n\n#_1DA73E: LDA.w .robe,Y\n#_1DA741: STA.w $0DC0,X\n\n#_1DA744: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_SpawnLaser", + "code": "Blind_SpawnLaser:\n#_1DA765: LDA.b #$CE ; SPRITE CE\n#_1DA767: JSL Sprite_SpawnDynamically\n#_1DA76B: BMI .exit\n\n#_1DA76D: JSL Sprite_CalculateSFXPan\n#_1DA771: ORA.b #$26 ; SFX3.26\n#_1DA773: STA.w $012F\n\n#_1DA776: JSL Sprite_SetSpawnedCoordinates\n\n#_1DA77A: LDA.b $00\n#_1DA77C: CLC\n#_1DA77D: ADC.b #$04\n#_1DA77F: STA.w $0D10,Y\n\n#_1DA782: LDA.w $0EB0,X\n#_1DA785: STA.w $0EB0,Y\n\n#_1DA788: PHX\n\n#_1DA789: TAX\n\n#_1DA78A: LDA.w .speed_x,X\n#_1DA78D: STA.w $0D50,Y\n\n#_1DA790: LDA.w .speed_y,X\n#_1DA793: STA.w $0D40,Y\n\n#_1DA796: PLX\n\n#_1DA797: LDA.b #$80\n#_1DA799: STA.w $0D90,Y\n#_1DA79C: STA.w $0BA0,Y\n\n#_1DA79F: LDA.b #$40\n#_1DA7A1: STA.w $0E40,Y\n\n#_1DA7A4: LDA.b #$14\n#_1DA7A6: STA.w $0F60,Y\n\n; ---------------------------------------------------------\n\n.exit\n#_1DA7A9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_BlindPoof", + "code": "SpriteDraw_BlindPoof:\n#_1DAC2F: PHA\n\n#_1DAC30: ASL\n#_1DAC31: TAY\n\n#_1DAC32: REP #$20\n\n#_1DAC34: LDA.w .oam_group_pointer-$1E,Y\n#_1DAC37: STA.b $08\n\n#_1DAC39: SEP #$20\n\n#_1DAC3B: PLY\n\n#_1DAC3C: LDA.w .oam_group_size-$0F,Y\n#_1DAC3F: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_Head_OAMOffset", + "code": "Blind_Head_OAMOffset:\n#_1DAC42: db $12, $12, $12, $16, $16, $02, $02, $02\n#_1DAC4A: db $02, $02\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_HeadChars", + "code": "Blind_HeadChars:\n#_1DAC4C: db $86, $86, $84, $82, $80, $82, $84, $86\n#_1DAC54: db $86, $86, $88, $8A, $8C, $8A, $88, $86\n", + "file": "bank_1D.asm" + }, + { + "name": "Blind_HeadFlips", + "code": "Blind_HeadFlips:\n#_1DAC5C: db $00, $00, $00, $00, $00, $40, $40, $40\n#_1DAC64: db $40, $40, $40, $40, $00, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Blind", + "code": "SpriteDraw_Blind:\n#_1DAC6C: LDA.b #$00\n#_1DAC6E: XBA\n\n#_1DAC6F: LDA.w $0DC0,X\n#_1DAC72: CMP.b #$0F\n#_1DAC74: BCS SpriteDraw_BlindPoof\n\n; ---------------------------------------------------------\n\n#_1DAC76: REP #$20\n\n#_1DAC78: ASL A\n#_1DAC79: ASL A\n#_1DAC7A: ASL A\n#_1DAC7B: STA.b $00\n\n#_1DAC7D: ASL A\n#_1DAC7E: ASL A\n#_1DAC7F: ASL A\n#_1DAC80: SEC\n#_1DAC81: SBC.b $00\n\n#_1DAC83: CLC\n#_1DAC84: ADC.w #.oam_groups\n#_1DAC87: STA.b $08\n\n#_1DAC89: SEP #$20\n\n#_1DAC8B: LDA.b #$07\n#_1DAC8D: JSR SpriteDraw_Tabulated_Bank1D\n\n; ---------------------------------------------------------\n\n#_1DAC90: LDA.w $0E70,X\n#_1DAC93: BNE .no_tile_collision\n\n#_1DAC95: LDA.w $0DB0,X\n#_1DAC98: CMP.b #$06\n#_1DAC9A: BEQ .last_object\n\n#_1DAC9C: CMP.b #$04\n#_1DAC9E: BEQ .exit\n\n.no_tile_collision\n#_1DACA0: LDY.w $0DC0,X\n#_1DACA3: CPY.b #$0A\n#_1DACA5: BCS .exit\n\n#_1DACA7: LDA.w Blind_Head_OAMOffset,Y\n#_1DACAA: TAY\n\n; ---------------------------------------------------------\n\n#_1DACAB: PHX\n\n#_1DACAC: LDA.w $0EB0,X\n#_1DACAF: TAX\n\n#_1DACB0: LDA.w Blind_HeadChars,X\n#_1DACB3: STA.b ($90),Y\n\n#_1DACB5: INY\n\n#_1DACB6: LDA.b ($90),Y\n#_1DACB8: AND.b #$3F\n#_1DACBA: ORA.w Blind_HeadFlips,X\n#_1DACBD: STA.b ($90),Y\n\n#_1DACBF: PLX\n\n; ---------------------------------------------------------\n\n.exit\n#_1DACC0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Blind_BumpDamageFromBody", + "code": "Blind_BumpDamageFromBody:\n#_1DACC8: REP #$20\n\n#_1DACCA: LDA.b $22\n#_1DACCC: SEC\n#_1DACCD: SBC.w $0FD8\n#_1DACD0: CLC\n#_1DACD1: ADC.w #$000E\n#_1DACD4: CMP.w #$001C\n#_1DACD7: BCS .no_collision\n\n#_1DACD9: LDA.b $20\n#_1DACDB: SEC\n#_1DACDC: SBC.w $0FDA\n#_1DACDF: CLC\n#_1DACE0: ADC.w #$0000\n#_1DACE3: CMP.w #$001C\n#_1DACE6: BCS .no_collision\n\n#_1DACE8: SEP #$20\n\n#_1DACEA: LDA.w $031F\n#_1DACED: ORA.w $037B\n#_1DACF0: BNE .no_collision\n\n#_1DACF2: LDA.b #$01\n#_1DACF4: STA.b $4D\n\n#_1DACF6: LDA.b #$08\n#_1DACF8: STA.w $0373\n\n#_1DACFB: LDA.b #$10\n#_1DACFD: STA.b $46\n\n#_1DACFF: LDA.b $28\n#_1DAD01: EOR.b #$FF\n#_1DAD03: STA.b $28\n\n#_1DAD05: LDA.b $27\n#_1DAD07: EOR.b #$FF\n#_1DAD09: STA.b $27\n\n.no_collision\n#_1DAD0B: SEP #$20\n\n#_1DAD0D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Initialize", + "code": "Trinexx_Initialize:\n#_1DAD0E: PHB\n#_1DAD0F: PHK\n#_1DAD10: PLB\n\n#_1DAD11: JSR .main\n\n#_1DAD14: PLB\n\n#_1DAD15: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Initialize_Rock", + "code": "Trinexx_Initialize_Rock:\n#_1DAD26: LDA.w $0D10,X\n#_1DAD29: CLC\n#_1DAD2A: ADC.b #$08\n#_1DAD2C: STA.w $0D10,X\n\n#_1DAD2F: LDA.w $0D00,X\n#_1DAD32: CLC\n#_1DAD33: ADC.b #$10\n#_1DAD35: STA.w $0D00,X\n\n#_1DAD38: JSR Trinexx_CachePosition\n\n#_1DAD3B: STZ.w $0B0A\n#_1DAD3E: STZ.w $0B0B\n#_1DAD41: STZ.w $0B0D\n#_1DAD44: STZ.w $0B0F\n#_1DAD47: STZ.w $0B10\n\n#_1DAD4A: LDA.b #$FF\n#_1DAD4C: STA.w $0B0E\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_RecoverCachedCoords", + "code": "Trinexx_RecoverCachedCoords:\n#_1DAD4F: LDA.w $0D90,X\n#_1DAD52: STA.w $0D10,X\n\n#_1DAD55: LDA.w $0DB0,X\n#_1DAD58: CLC\n#_1DAD59: ADC.b #$0C\n#_1DAD5B: STA.w $0D00,X\n\n#_1DAD5E: LDA.w $0ED0,X\n#_1DAD61: ADC.b #$00\n#_1DAD63: STA.w $0D20,X\n\n#_1DAD66: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Initialize_Fire", + "code": "Trinexx_Initialize_Fire:\n#_1DAD67: LDA.b #$03\n#_1DAD69: STA.w $0DC0,X\n\n#_1DAD6C: LDA.b #$80\n#_1DAD6E: BRA Trinexx_InitializeHead\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Initialize_Ice", + "code": "Trinexx_Initialize_Ice:\n#_1DAD70: LDA.b #$FF\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_InitializeHead", + "code": "Trinexx_InitializeHead:\n#_1DAD72: STA.w $0DF0,X\n\n#_1DAD75: LDY.b #$1A\n\n.next_segment\n#_1DAD77: LDA.b #$40\n#_1DAD79: STA.w $1D10,Y\n\n#_1DAD7C: LDA.b #$00\n#_1DAD7E: STA.w $1D30,Y\n#_1DAD81: STA.w $1D50,Y\n\n#_1DAD84: DEY\n#_1DAD85: BPL .next_segment\n\n#_1DAD87: LDA.b #$01\n#_1DAD89: STA.w $0E80,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_CachePosition", + "code": "Trinexx_CachePosition:\n#_1DAD8C: LDA.w $0D10,X\n#_1DAD8F: STA.w $0D90,X\n\n#_1DAD92: LDA.w $0D30,X\n#_1DAD95: STA.w $0DA0,X\n\n#_1DAD98: LDA.w $0D00,X\n#_1DAD9B: STA.w $0DB0,X\n\n#_1DAD9E: LDA.w $0D20,X\n#_1DADA1: STA.w $0ED0,X\n\n#_1DADA4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_FinalPhase", + "code": "Trinexx_FinalPhase:\n#_1DADB5: LDA.w $0D40,X\n#_1DADB8: STA.b $00\n\n#_1DADBA: LDA.w $0D50,X\n#_1DADBD: STA.b $01\n\n#_1DADBF: JSL Sprite_ConvertVelocityToAngle\n#_1DADC3: LSR A\n#_1DADC4: TAY\n\n#_1DADC5: LDA.w .draw_angle,Y\n#_1DADC8: STA.w $0DC0,X\n\n#_1DADCB: LDY.w $0E00,X\n#_1DADCE: BEQ .done_initial_snekking\n\n#_1DADD0: TAY\n\n#_1DADD1: LDA.w .draw_straight,Y\n#_1DADD4: STA.w $0DC0,X\n\n; ---------------------------------------------------------\n\n.done_initial_snekking\n#_1DADD7: JSR SpriteDraw_TrinexxRockSnake\n#_1DADDA: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DADDD: LDA.w $0D80,X\n#_1DADE0: BPL .not_dead\n\n#_1DADE2: LDA.w $0DF0,X\n#_1DADE5: PHA\n\n#_1DADE6: ORA.b #$E0\n#_1DADE8: STA.w $0EF0,X\n\n#_1DADEB: PLA\n#_1DADEC: BNE .exit\n\n#_1DADEE: LDA.b #$0C\n#_1DADF0: STA.w $0DF0,X\n\n#_1DADF3: LDA.w $0EC0,X\n#_1DADF6: BNE .still_exploding\n\n#_1DADF8: LDA.b #$FF\n#_1DADFA: STA.w $0EF0,X\n\n#_1DADFD: JMP.w Sprite_BossPrepareToDie\n\n; ---------------------------------------------------------\n\n.still_exploding\n#_1DAE00: DEC.w $0EC0,X\n\n#_1DAE03: JSL MakeBossExplosion\n\n.exit\n#_1DAE07: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Phase2_SnekAlongWall", + "code": "Trinexx_Phase2_SnekAlongWall:\n#_1DAE6D: LDA.w $0E80,X\n\n#_1DAE70: AND.b #$00\n#_1DAE72: BNE .keep_snekking\n\n#_1DAE74: DEC.w $0D90,X\n#_1DAE77: BNE .keep_snekking\n\n#_1DAE79: INC.w $0D80,X\n\n#_1DAE7C: LDA.b #$C0\n#_1DAE7E: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.keep_snekking\n#_1DAE81: JSL Sprite_Get16BitCoords_long\n#_1DAE85: JSR Sprite_CheckTileCollision_Bank1D\n#_1DAE88: BEQ .no_collision\n\n#_1DAE8A: LDA.w $0DE0,X\n#_1DAE8D: INC A\n#_1DAE8E: AND.b #$03\n#_1DAE90: STA.w $0DE0,X\n\n#_1DAE93: LDA.b #$08\n#_1DAE95: STA.w $0E00,X\n\n.no_collision\n#_1DAE98: LDY.w $0DE0,X\n\n#_1DAE9B: LDA.w .speed_x,Y\n#_1DAE9E: STA.w $0D50,X\n\n#_1DAEA1: LDA.w .speed_y,Y\n#_1DAEA4: STA.w $0D40,X\n\n#_1DAEA7: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_CircleLink", + "code": "Trinexx_CircleLink:\n#_1DAEA8: LDA.w $0DF0,X\n#_1DAEAB: BNE .keep_circling\n\n#_1DAEAD: INC.w $0D80,X\n\n.keep_circling\n#_1DAEB0: LDA.b #$1F\n#_1DAEB2: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DAEB6: LDA.b $00\n#_1DAEB8: STA.w $0D50,X\n\n#_1DAEBB: LDA.b $01\n#_1DAEBD: EOR.b #$FF\n#_1DAEBF: INC A\n#_1DAEC0: STA.w $0D40,X\n\n#_1DAEC3: LDA.b $0E\n#_1DAEC5: CLC\n#_1DAEC6: ADC.b #$28\n#_1DAEC8: CMP.b #$50\n#_1DAECA: BCS .turn\n\n#_1DAECC: LDA.b $0F\n#_1DAECE: CLC\n#_1DAECF: ADC.b #$28\n#_1DAED1: CMP.b #$50\n#_1DAED3: BCS .turn\n\n#_1DAED5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_Phase2_SnekAfterLink", + "code": "Trinexx_Phase2_SnekAfterLink:\n#_1DAEF5: LDA.b $1A\n#_1DAEF7: AND.b #$01\n#_1DAEF9: BNE .exit\n\n#_1DAEFB: LDA.b #$1F\n#_1DAEFD: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DAF01: LDA.w $0D50,X\n#_1DAF04: CMP.b $01\n#_1DAF06: BEQ .done_x\n#_1DAF08: BPL .decel_x\n\n.accel_x\n#_1DAF0A: INC.w $0D50,X\n#_1DAF0D: BRA .done_x\n\n.decel_x\n#_1DAF0F: DEC.w $0D50,X\n\n; ---------------------------------------------------------\n\n.done_x\n#_1DAF12: LDA.w $0D40,X\n#_1DAF15: CMP.b $00\n#_1DAF17: BEQ .exit\n#_1DAF19: BPL .decel_y\n\n.accel_y\n#_1DAF1B: INC.w $0D40,X\n#_1DAF1E: BRA .exit\n\n.decel_y\n#_1DAF20: DEC.w $0D40,X\n\n.exit\n#_1DAF23: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_TrinexxRockSnake", + "code": "SpriteDraw_TrinexxRockSnake:\n#_1DAF84: LDA.w $0B89,X\n#_1DAF87: ORA.b #$30\n#_1DAF89: STA.w $0B89,X\n\n#_1DAF8C: JSR SpriteDraw_TrinexxRockHead\n\n; ---------------------------------------------------------\n\n#_1DAF8F: LDA.b #$00\n#_1DAF91: STA.w $0FB6\n\n.next_segment\n#_1DAF94: LDY.w $0FB6\n#_1DAF97: TYA\n#_1DAF98: CMP.w $0EC0,X\n#_1DAF9B: BNE .continue\n\n#_1DAF9D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_CheckDamageToFlashingSegment", + "code": "Trinexx_CheckDamageToFlashingSegment:\n#_1DB079: LDA.w $0D10,X\n#_1DB07C: PHA\n\n#_1DB07D: LDA.w $0D30,X\n#_1DB080: PHA\n\n#_1DB081: LDA.w $0D00,X\n#_1DB084: PHA\n\n#_1DB085: LDA.w $0D20,X\n#_1DB088: PHA\n\n; ---------------------------------------------------------\n\n#_1DB089: LDA.w $0FD8\n#_1DB08C: STA.w $0D10,X\n\n#_1DB08F: LDA.w $0FD9\n#_1DB092: STA.w $0D30,X\n\n#_1DB095: LDA.w $0FDA\n#_1DB098: STA.w $0D00,X\n\n#_1DB09B: LDA.w $0FDB\n#_1DB09E: STA.w $0D20,X\n\n#_1DB0A1: LDA.b #$80\n#_1DB0A3: STA.w $0CAA,X\n\n#_1DB0A6: STZ.w $0E60,X\n\n#_1DB0A9: JSL Sprite_CheckDamageFromLink_long\n\n#_1DB0AD: LDA.b #$84\n#_1DB0AF: STA.w $0CAA,X\n\n#_1DB0B2: LDA.b #$40\n#_1DB0B4: STA.w $0E60,X\n\n; ---------------------------------------------------------\n\n#_1DB0B7: PLA\n#_1DB0B8: STA.w $0D20,X\n\n#_1DB0BB: PLA\n#_1DB0BC: STA.w $0D00,X\n\n#_1DB0BF: PLA\n#_1DB0C0: STA.w $0D30,X\n\n#_1DB0C3: PLA\n#_1DB0C4: STA.w $0D10,X\n\n#_1DB0C7: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_RockHeadDirections", + "code": "Trinexx_RockHeadDirections:\n#_1DB0C8: db $07 ; looking right\n#_1DB0C9: db $01 ; looking left\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CB_TrinexxRockHead", + "code": "Sprite_CB_TrinexxRockHead:\n#_1DB0CA: LDA.w $0B10\n#_1DB0CD: BEQ Trinexx_NotEvenMyFinalPhase\n\n#_1DB0CF: JMP.w Trinexx_FinalPhase\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_NotEvenMyFinalPhase", + "code": "Trinexx_NotEvenMyFinalPhase:\n#_1DB0D2: LDA.b #$17\n#_1DB0D4: STA.b $1C\n#_1DB0D6: STZ.b $1D\n\n#_1DB0D8: JSR SpriteDraw_TrinexxRockHeadAndBody\n#_1DB0DB: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DB0DE: LDA.w $0D80,X\n#_1DB0E1: BMI Trinexx_RetreatIntoShell\n\n#_1DB0E3: JMP.w Trinexx_RockHead_Phase1\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_RetreatIntoShell", + "code": "Trinexx_RetreatIntoShell:\n#_1DB0E6: STA.w $0FFC\n\n#_1DB0E9: LDA.w $0DF0,X\n#_1DB0EC: BNE .turtling\n\n#_1DB0EE: INC.w $0B10\n\n#_1DB0F1: JSL SpritePrep_Moldorm\n\n#_1DB0F5: STZ.w $0E80,X\n#_1DB0F8: STZ.w $0EB0,X\n\n#_1DB0FB: LDA.w $0E60,X\n#_1DB0FE: AND.b #$BF\n#_1DB100: STA.w $0E60,X\n\n#_1DB103: LDA.b #$80\n#_1DB105: STA.w $0CAA,X\n\n#_1DB108: STZ.w $0D80,X\n#_1DB10B: STZ.w $0DE0,X\n\n#_1DB10E: LDA.b #$00\n#_1DB110: STA.w $0D90,X\n\n#_1DB113: LDA.b #$10\n#_1DB115: STA.w $0EC0,X\n\n#_1DB118: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n#_1DB11B: LDA.b #$80\n#_1DB11D: STA.w $0D90,X\n\n#_1DB120: LDA.b #$FF\n#_1DB122: STA.w $0311\n\n#_1DB125: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_RockHead_Phase1", + "code": "Trinexx_RockHead_Phase1:\n#_1DB1D1: LDA.w $0DD1\n#_1DB1D4: ORA.w $0DD2\n#_1DB1D7: BNE .side_head_alive\n\n#_1DB1D9: LDA.w $0D80,X\n#_1DB1DC: CMP.b #$02\n#_1DB1DE: BCS .side_head_alive\n\n#_1DB1E0: LDA.b #$FF\n#_1DB1E2: STA.w $0DF0,X\n\n#_1DB1E5: LDA.b #$FF\n#_1DB1E7: STA.w $0D80,X\n\n#_1DB1EA: LDA.b #$22 ; SFX3.22\n#_1DB1EC: STA.w $012F\n\n#_1DB1EF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_ChooseNextAction", + "code": "Trinexx_ChooseNextAction:\n#_1DB252: LDA.w $0DF0,X\n#_1DB255: BNE .exit\n\n#_1DB257: LDA.w $0E30,X\n#_1DB25A: AND.b #$7F\n#_1DB25C: STA.b $00\n\n#_1DB25E: JSL GetRandomNumber\n#_1DB262: AND.b #$03\n#_1DB264: TAY\n\n#_1DB265: CMP.b $00\n#_1DB267: BEQ .exit\n\n#_1DB269: INC.w $0EC0,X\n\n#_1DB26C: LDA.w $0EC0,X\n#_1DB26F: CMP.b #$02\n#_1DB271: BNE .dont_lunge\n\n#_1DB273: STZ.w $0EC0,X\n\n#_1DB276: LDA.b #$02\n#_1DB278: STA.w $0D80,X\n\n#_1DB27B: LDA.b #$50\n#_1DB27D: STA.w $0DF0,X\n\n#_1DB280: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_MoveBody", + "code": "Trinexx_MoveBody:\n#_1DB2A1: LDA.w $0E30,X\n#_1DB2A4: CMP.b #$FF\n#_1DB2A6: BNE .continue\n\n#_1DB2A8: LDA.w $0DF0,X\n#_1DB2AB: BEQ .wait\n\n#_1DB2AD: JSR Sprite_IsBelowLink_Bank1D\n\n#_1DB2B0: CPY.b #$00\n#_1DB2B2: BNE .continue\n\n.wait\n#_1DB2B4: STZ.w $0E30,X\n\n#_1DB2B7: JMP.w .adjust_phase\n\n; ---------------------------------------------------------\n\n.continue\n#_1DB2BA: LDA.w $0B08\n#_1DB2BD: STA.b $04\n\n#_1DB2BF: LDA.w $0D30,X\n#_1DB2C2: STA.b $05\n\n#_1DB2C4: LDA.w $0B09\n#_1DB2C7: STA.b $06\n\n#_1DB2C9: LDA.w $0D20,X\n#_1DB2CC: STA.b $07\n\n#_1DB2CE: LDA.b #$08\n\n#_1DB2D0: LDY.w $0E30,X\n#_1DB2D3: BPL .slow\n\n#_1DB2D5: LDA.b #$10\n\n.slow\n#_1DB2D7: JSL Sprite_ProjectSpeedTowardsLocation_long\n#_1DB2DB: LDA.b $00\n\n#_1DB2DD: STA.w $0D40,X\n\n#_1DB2E0: LDA.b $01\n#_1DB2E2: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n#_1DB2E5: LDA.w $0D10,X\n#_1DB2E8: PHA\n\n#_1DB2E9: LDA.w $0D00,X\n#_1DB2EC: PHA\n\n#_1DB2ED: JSR Sprite_Move_XY_Bank1D\n\n#_1DB2F0: PLA\n#_1DB2F1: LDY.b #$00\n\n#_1DB2F3: SEC\n#_1DB2F4: SBC.w $0D00,X\n#_1DB2F7: STA.w $0310\n#_1DB2FA: BPL .pos_y_low\n\n#_1DB2FC: DEY\n\n.pos_y_low\n#_1DB2FD: STY.w $0311\n\n; ---------------------------------------------------------\n\n#_1DB300: PLA\n#_1DB301: LDY.b #$00\n\n#_1DB303: SEC\n#_1DB304: SBC.w $0D10,X\n#_1DB307: STA.w $0312\n#_1DB30A: BPL .pos_x_low\n\n#_1DB30C: DEY\n\n.pos_x_low\n#_1DB30D: STY.w $0313\n\n; ---------------------------------------------------------\n\n#_1DB310: LDA.b #$01\n#_1DB312: STA.w $0428\n\n#_1DB315: JSR Trinexx_CachePosition\n\n#_1DB318: LDA.w $0D00,X\n#_1DB31B: SEC\n#_1DB31C: SBC.b #$0C\n#_1DB31E: STA.w $0DB0,X\n\n#_1DB321: LDA.w $0B08\n#_1DB324: SEC\n#_1DB325: SBC.w $0D10,X\n#_1DB328: CLC\n#_1DB329: ADC.b #$02\n\n#_1DB32B: CMP.b #$04\n#_1DB32D: BCS .not_at_target\n\n#_1DB32F: LDA.w $0B09\n#_1DB332: SEC\n#_1DB333: SBC.w $0D00,X\n#_1DB336: CLC\n#_1DB337: ADC.b #$02\n\n#_1DB339: CMP.b #$04\n#_1DB33B: BCS .not_at_target\n\n.adjust_phase\n#_1DB33D: STZ.w $0D80,X\n\n#_1DB340: LDA.b #$30\n#_1DB342: STA.w $0DF0,X\n\n.not_at_target\n#_1DB345: LDA.w $0E30,X\n#_1DB348: BPL Trinexx_AnimateFeet\n\n#_1DB34A: JSR Trinexx_AnimateFeet\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_AnimateFeet", + "code": "Trinexx_AnimateFeet:\n#_1DB34D: LDA.w $0E80,X\n#_1DB350: LDY.w $0D50,X\n#_1DB353: BMI .positive\n\n#_1DB355: SEC\n#_1DB356: SBC.b #$02\n\n.positive\n#_1DB358: CLC\n#_1DB359: ADC.b #$01\n#_1DB35B: STA.w $0E80,X\n\n#_1DB35E: AND.b #$0F\n#_1DB360: BNE .exit\n\n#_1DB362: LDA.b #$21 ; SFX2.21\n#_1DB364: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DB368: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_PrepareLunge", + "code": "Trinexx_PrepareLunge:\n#_1DB369: JSR Trinexx_WagTail\n#_1DB36C: JSR Trinexx_WagTail\n\n#_1DB36F: LDA.w $0DF0,X\n#_1DB372: BNE .exit\n\n#_1DB374: INC.w $0D80,X\n\n#_1DB377: LDA.b #$30\n#_1DB379: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DB37D: LDA.b #$40\n#_1DB37F: STA.w $0DF0,X\n\n#_1DB382: LDA.b #$26 ; SFX3.26\n#_1DB384: STA.w $012F\n\n.exit\n#_1DB387: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_LungeHead", + "code": "Trinexx_LungeHead:\n#_1DB388: JSR Sprite_Move_XY_Bank1D\n\n#_1DB38B: LDA.w $0DF0,X\n#_1DB38E: BNE .move_neck\n\n#_1DB390: JSR Trinexx_RecoverCachedCoords\n\n#_1DB393: STZ.w $0D80,X\n\n#_1DB396: LDA.b #$30\n#_1DB398: STA.w $0DF0,X\n\n#_1DB39B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_WagTail", + "code": "Trinexx_WagTail:\n#_1DB3B5: LDA.w $0B0D\n#_1DB3B8: BNE .tick_timer\n\n#_1DB3BA: INC.w $0B0C\n\n#_1DB3BD: LDA.w $0B0C\n#_1DB3C0: AND.b #$03\n#_1DB3C2: BNE .exit\n\n#_1DB3C4: LDA.w $0B0B\n#_1DB3C7: AND.b #$01\n#_1DB3C9: TAY\n\n#_1DB3CA: LDA.w $0B0A\n#_1DB3CD: CLC\n#_1DB3CE: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1DB3D1: STA.w $0B0A\n\n#_1DB3D4: CMP.w .limits,Y\n#_1DB3D7: BNE .exit\n\n#_1DB3D9: INC.w $0B0B\n\n#_1DB3DC: LDA.b #$08\n#_1DB3DE: STA.w $0B0D\n\n.exit\n#_1DB3E1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_HandleShellCollision", + "code": "Trinexx_HandleShellCollision:\n#_1DB3E6: LDA.w $0D90,X\n#_1DB3E9: STA.b $04\n\n#_1DB3EB: LDA.w $0DA0,X\n#_1DB3EE: STA.b $05\n\n#_1DB3F0: LDA.w $0DB0,X\n#_1DB3F3: STA.b $06\n\n#_1DB3F5: LDA.w $0ED0,X\n#_1DB3F8: STA.b $07\n\n; ---------------------------------------------------------\n\n#_1DB3FA: REP #$20\n\n#_1DB3FC: LDA.b $04\n#_1DB3FE: SEC\n#_1DB3FF: SBC.b $22\n#_1DB401: CLC\n#_1DB402: ADC.w #$0028\n\n#_1DB405: CMP.w #$0050\n#_1DB408: BCS .no_hit\n\n#_1DB40A: LDA.b $06\n#_1DB40C: SEC\n#_1DB40D: SBC.b $20\n#_1DB40F: CLC\n#_1DB410: ADC.w #$0010\n\n#_1DB413: CMP.w #$0040\n#_1DB416: BCS .no_hit\n\n#_1DB418: SEP #$20\n\n; ---------------------------------------------------------\n\n#_1DB41A: LDA.w $031F\n#_1DB41D: ORA.w $037B\n#_1DB420: BNE .no_hit\n\n#_1DB422: LDA.b #$01\n#_1DB424: STA.b $4D\n\n#_1DB426: LDA.b #$08\n#_1DB428: STA.w $0373\n\n#_1DB42B: LDA.b #$10\n#_1DB42D: STA.b $46\n\n#_1DB42F: LDA.b #$20\n#_1DB431: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DB435: LDA.b $00\n#_1DB437: STA.b $27\n\n#_1DB439: LDA.b $01\n#_1DB43B: STA.b $28\n\n.no_hit\n#_1DB43D: SEP #$20\n\n#_1DB43F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_TrinexxRockHead", + "code": "SpriteDraw_TrinexxRockHead:\n#_1DB560: LDA.b #$00\n#_1DB562: XBA\n#_1DB563: LDA.w $0DC0,X\n\n#_1DB566: REP #$20\n\n#_1DB568: ASL A\n#_1DB569: ASL A\n#_1DB56A: ASL A\n#_1DB56B: ASL A\n#_1DB56C: ASL A\n\n#_1DB56D: ADC.w #.oam_groups\n#_1DB570: STA.b $08\n\n#_1DB572: SEP #$20\n\n#_1DB574: LDA.w $0D80,X\n#_1DB577: BMI .low_priority\n\n#_1DB579: LDA.w $0B89,X\n#_1DB57C: ORA.b #$30\n#_1DB57E: STA.w $0B89,X\n\n.low_priority\n#_1DB581: LDA.b #$04\n#_1DB583: JSR SpriteDraw_Tabulated_Bank1D\n\n; ---------------------------------------------------------\n\n#EXIT_1DB586:\n#_1DB586: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_TrinexxRockHeadAndBody", + "code": "SpriteDraw_TrinexxRockHeadAndBody:\n#_1DB587: LDA.w $0EB0,X\n#_1DB58A: BMI EXIT_1DB586\n\n#_1DB58C: JSR SpriteDraw_TrinexxRockHead\n\n#_1DB58F: LDA.b $05\n#_1DB591: AND.b #$EF\n#_1DB593: STA.b $05\n\n#_1DB595: LDA.w $0D80,X\n#_1DB598: CMP.b #$03\n#_1DB59A: BEQ .lunging\n\n#_1DB59C: JMP.w .not_lunging\n\n; ---------------------------------------------------------\n\n.lunging\n#_1DB59F: LDA.w $0D90,X\n#_1DB5A2: SEC\n#_1DB5A3: SBC.w $0D10,X\n#_1DB5A6: STA.b $08\n\n#_1DB5A8: BPL .sign_okay_x\n\n#_1DB5AA: EOR.b #$FF\n#_1DB5AC: INC A\n\n.sign_okay_x\n#_1DB5AD: STA.b $0A\n\n#_1DB5AF: LDA.w $0DB0,X\n#_1DB5B2: SEC\n#_1DB5B3: SBC.w $0D00,X\n#_1DB5B6: STA.b $09\n\n#_1DB5B8: BPL .sign_okay_y\n\n#_1DB5BA: EOR.b #$FF\n#_1DB5BC: INC A\n\n.sign_okay_y\n#_1DB5BD: STA.b $0B\n\n#_1DB5BF: LDA.b #$07\n#_1DB5C1: STA.w $0FB5\n\n#_1DB5C4: LDA.b #$10\n#_1DB5C6: STA.w $0FB6\n\n.next_neck_segment\n#_1DB5C9: LDY.w $0FB5\n\n#_1DB5CC: LDA.b $0A\n#_1DB5CE: STA.w WRMPYA\n\n#_1DB5D1: LDA.w .neck_pos_offset_multipliers,Y\n#_1DB5D4: STA.w WRMPYB\n\n#_1DB5D7: NOP ; 8 NOP\n#_1DB5D8: NOP\n#_1DB5D9: NOP\n#_1DB5DA: NOP\n#_1DB5DB: NOP\n#_1DB5DC: NOP\n#_1DB5DD: NOP\n#_1DB5DE: NOP\n\n#_1DB5DF: ASL.w RDMPYL\n#_1DB5E2: LDA.w RDMPYH\n#_1DB5E5: ADC.b #$00\n\n#_1DB5E7: LDY.b $08\n#_1DB5E9: BPL .invert_x_offset\n\n#_1DB5EB: EOR.b #$FF\n#_1DB5ED: INC A\n\n.invert_x_offset\n#_1DB5EE: CLC\n#_1DB5EF: ADC.b $00\n\n#_1DB5F1: LDY.w $0FB6\n#_1DB5F4: STA.b ($90),Y\n\n#_1DB5F6: LDY.w $0FB5\n\n#_1DB5F9: LDA.b $0B\n#_1DB5FB: STA.w WRMPYA\n\n#_1DB5FE: LDA.w .neck_pos_offset_multipliers,Y\n#_1DB601: STA.w WRMPYB\n\n#_1DB604: NOP ; 8 NOP\n#_1DB605: NOP\n#_1DB606: NOP\n#_1DB607: NOP\n#_1DB608: NOP\n#_1DB609: NOP\n#_1DB60A: NOP\n#_1DB60B: NOP\n\n#_1DB60C: ASL.w RDMPYL\n#_1DB60F: LDA.w RDMPYH\n#_1DB612: ADC.b #$00\n\n#_1DB614: LDY.b $09\n#_1DB616: BPL .invert_y_offset\n\n#_1DB618: EOR.b #$FF\n#_1DB61A: INC A\n\n.invert_y_offset\n#_1DB61B: CLC\n#_1DB61C: ADC.b $02\n\n#_1DB61E: LDY.w $0FB6\n#_1DB621: INY\n#_1DB622: STA.b ($90),Y\n\n#_1DB624: LDA.b #$28\n#_1DB626: INY\n#_1DB627: STA.b ($90),Y\n\n#_1DB629: LDA.b $05\n#_1DB62B: INY\n#_1DB62C: STA.b ($90),Y\n\n#_1DB62E: PHY\n\n#_1DB62F: TYA\n#_1DB630: LSR A\n#_1DB631: LSR A\n#_1DB632: TAY\n\n#_1DB633: LDA.b #$02\n#_1DB635: STA.b ($92),Y\n\n#_1DB637: PLY\n\n#_1DB638: INY\n#_1DB639: STY.w $0FB6\n\n#_1DB63C: DEC.w $0FB5\n#_1DB63F: BPL .next_neck_segment\n\n; ---------------------------------------------------------\n\n.not_lunging\n#_1DB641: REP #$20\n\n#_1DB643: LDA.w #$09F0\n#_1DB646: STA.b $90\n\n#_1DB648: LDA.w #$0A9C\n#_1DB64B: STA.b $92\n\n#_1DB64D: SEP #$20\n\n#_1DB64F: LDA.w $0D90,X\n#_1DB652: SEC\n#_1DB653: SBC.b $E2\n#_1DB655: STA.b $00\n\n#_1DB657: LDA.w $0DB0,X\n#_1DB65A: SEC\n#_1DB65B: SBC.b $E8\n#_1DB65D: STA.b $02\n\n#_1DB65F: LDA.w $0D20,X\n#_1DB662: SBC.b $E9\n#_1DB664: STA.b $03\n\n#_1DB666: LDA.b #$01\n#_1DB668: STA.w $0FB5\n\n; ---------------------------------------------------------\n\n#_1DB66B: LDA.w $0D50,X\n#_1DB66E: CLC\n#_1DB66F: ADC.b #$03\n#_1DB671: CMP.b #$07\n\n#_1DB673: LDA.b #$00\n#_1DB675: BCC .slow\n\n#_1DB677: LDA.w $0E80,X\n#_1DB67A: LSR A\n#_1DB67B: LSR A\n#_1DB67C: AND.b #$0F\n\n.slow\n#_1DB67E: STA.b $06\n\n#_1DB680: CLC\n#_1DB681: ADC.b #$08\n#_1DB683: AND.b #$0F\n#_1DB685: STA.b $07\n\n#_1DB687: LDA.w $0E80,X\n#_1DB68A: LSR A\n#_1DB68B: LSR A\n#_1DB68C: AND.b #$0F\n#_1DB68E: STA.b $08\n\n#_1DB690: CLC\n#_1DB691: ADC.b #$08\n#_1DB693: AND.b #$0F\n#_1DB695: STA.b $09\n\n; ---------------------------------------------------------\n\n#_1DB697: LDY.b #$00\n\n#_1DB699: PHX\n\n.next_foot\n#_1DB69A: LDA.b $00\n#_1DB69C: CLC\n#_1DB69D: ADC.w .foot_base_offset_x,X\n#_1DB6A0: PHA\n\n#_1DB6A1: LDA.b $06,X\n#_1DB6A3: TAX\n\n#_1DB6A4: PLA\n#_1DB6A5: CLC\n#_1DB6A6: ADC.w .foot_rotation_offset_x,X\n#_1DB6A9: STA.b ($90),Y\n\n#_1DB6AB: INY\n#_1DB6AC: INY\n#_1DB6AD: INY\n#_1DB6AE: INY\n\n#_1DB6AF: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n#_1DB6B1: LDA.b $02\n#_1DB6B3: CLC\n#_1DB6B4: ADC.b #$F8\n#_1DB6B6: PHA\n\n#_1DB6B7: LDX.w $0FB5\n\n#_1DB6BA: LDA.b $08,X\n#_1DB6BC: TAX\n\n#_1DB6BD: PLA\n#_1DB6BE: CLC\n#_1DB6BF: ADC.w .foot_rotation_offset_y,X\n\n#_1DB6C2: DEY\n#_1DB6C3: DEY\n#_1DB6C4: DEY\n\n#_1DB6C5: STA.b ($90),Y\n\n#_1DB6C7: CLC\n#_1DB6C8: ADC.b #$10\n\n#_1DB6CA: INY\n#_1DB6CB: INY\n#_1DB6CC: INY\n#_1DB6CD: INY\n#_1DB6CE: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n#_1DB6D0: LDA.b #$0C\n\n#_1DB6D2: DEY\n#_1DB6D3: DEY\n#_1DB6D4: DEY\n\n#_1DB6D5: STA.b ($90),Y\n\n#_1DB6D7: LDA.b #$2A\n\n#_1DB6D9: INY\n#_1DB6DA: INY\n#_1DB6DB: INY\n#_1DB6DC: INY\n\n#_1DB6DD: STA.b ($90),Y\n\n#_1DB6DF: DEY\n#_1DB6E0: DEY\n#_1DB6E1: DEY\n\n; ---------------------------------------------------------\n\n#_1DB6E2: LDX.w $0FB5\n\n#_1DB6E5: LDA.b $05\n#_1DB6E7: ORA.w .foot_flip,X\n#_1DB6EA: STA.b ($90),Y\n\n#_1DB6EC: INY\n#_1DB6ED: INY\n#_1DB6EE: INY\n#_1DB6EF: INY\n\n#_1DB6F0: STA.b ($90),Y\n\n#_1DB6F2: PHY\n\n#_1DB6F3: TYA\n#_1DB6F4: LSR A\n#_1DB6F5: LSR A\n#_1DB6F6: TAY\n\n#_1DB6F7: LDA.b #$02\n#_1DB6F9: STA.b ($92),Y\n\n#_1DB6FB: DEY\n\n#_1DB6FC: STA.b ($92),Y\n\n#_1DB6FE: PLY\n#_1DB6FF: INY\n\n#_1DB700: DEC.w $0FB5\n#_1DB703: BPL .next_foot\n\n; ---------------------------------------------------------\n\n#_1DB705: LDA.w $0B0A\n#_1DB708: ASL A\n#_1DB709: ASL A\n#_1DB70A: ADC.w $0B0A\n#_1DB70D: STA.b $06\n\n#_1DB70F: LDY.b #$00 ; oam index\n#_1DB711: LDX.b #$00 ; segment index\n\n.next_tail_segment\n#_1DB713: PHX\n\n#_1DB714: TXA ; get (slot+wag)*2\n#_1DB715: CLC\n#_1DB716: ADC.b $06\n#_1DB718: ASL A\n#_1DB719: TAX\n\n#_1DB71A: REP #$20\n\n#_1DB71C: LDA.b $00\n#_1DB71E: CLC\n#_1DB71F: ADC.w .tail_offset_x,X\n#_1DB722: STA.w $096C,Y\n\n#_1DB725: LDA.b $02\n#_1DB727: SEC\n#_1DB728: SBC.w .tail_offset_y,X\n#_1DB72B: SBC.w #$0020\n#_1DB72E: CLC\n#_1DB72F: ADC.w $0B0F\n#_1DB732: INY\n#_1DB733: STA.w $096C,Y\n\n#_1DB736: CLC\n#_1DB737: ADC.w #$0010\n#_1DB73A: CMP.w #$0100\n\n#_1DB73D: SEP #$20\n#_1DB73F: BCC .tail_segment_on_screen\n\n#_1DB741: LDA.b #$F0\n#_1DB743: STA.w $096C,Y\n\n.tail_segment_on_screen\n#_1DB746: PLX\n\n#_1DB747: LDA.w .tail_char,X\n#_1DB74A: INY\n#_1DB74B: STA.w $096C,Y\n\n#_1DB74E: LDA.b $05\n#_1DB750: INY\n#_1DB751: STA.w $096C,Y\n\n#_1DB754: PHY\n\n#_1DB755: TYA\n#_1DB756: LSR A\n#_1DB757: LSR A\n#_1DB758: TAY\n\n#_1DB759: LDA.b #$02\n#_1DB75B: STA.w $0A7B,Y\n\n#_1DB75E: PLY\n#_1DB75F: INY\n\n#_1DB760: INX\n#_1DB761: CPX.b #$05\n#_1DB763: BNE .next_tail_segment\n\n; ---------------------------------------------------------\n\n#_1DB765: PLX\n#_1DB766: LDA.b $11\n#_1DB768: BEQ .exit\n\n#_1DB76A: LDY.b #$02\n#_1DB76C: LDA.b #$03\n#_1DB76E: JSL Sprite_CorrectOAMEntries_long\n\n.exit\n#_1DB772: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CC_TrinexxBreath_FireHead", + "code": "Sprite_CC_TrinexxBreath_FireHead:\n#_1DB897: LDA.w $0E90,X\n#_1DB89A: BEQ Sidenexx\n\n#_1DB89C: JMP.w TrinexxBreath_fire\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CD_TrinexxBreath_IceHead", + "code": "Sprite_CD_TrinexxBreath_IceHead:\n#_1DB89F: LDA.w $0E90,X\n#_1DB8A2: BEQ Sidenexx\n\n#_1DB8A4: JMP.w TrinexxBreath_ice\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx", + "code": "Sidenexx:\n#_1DB8A7: LDA.w $0E20,X\n#_1DB8AA: SEC\n#_1DB8AB: SBC.b #$CC\n#_1DB8AD: TAY\n\n#_1DB8AE: LDA.w $0D90\n#_1DB8B1: CLC\n#_1DB8B2: ADC.w .base_offset_x,Y\n#_1DB8B5: STA.w $0D90,X\n\n#_1DB8B8: LDA.w $0DA0\n#_1DB8BB: ADC.w .base_offset_y,Y\n#_1DB8BE: STA.w $0DA0,X\n\n#_1DB8C1: LDA.w $0DB0\n#_1DB8C4: SEC\n#_1DB8C5: SBC.b #$20\n#_1DB8C7: STA.w $0DB0,X\n\n#_1DB8CA: LDA.w $0ED0\n#_1DB8CD: SBC.b #$00\n#_1DB8CF: STA.w $0ED0,X\n\n#_1DB8D2: LDA.w $0B89,X\n#_1DB8D5: ORA.b #$30\n#_1DB8D7: STA.w $0B89,X\n\n; ---------------------------------------------------------\n\n#_1DB8DA: JSR SpriteDraw_Sidenexx\n#_1DB8DD: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DB8E0: LDA.w $0D80,X\n#_1DB8E3: BPL .not_exploding\n\n#_1DB8E5: STA.w $0BA0,X\n\n#_1DB8E8: JMP.w Sidenexx_Explode\n\n; ---------------------------------------------------------\n\n.not_exploding\n#_1DB8EB: LDA.w $0EF0,X\n#_1DB8EE: BEQ .not_stunned\n\n#_1DB8F0: LDA.w $0D80,X\n#_1DB8F3: CMP.b #$04\n#_1DB8F5: BEQ .not_stunned\n\n#_1DB8F7: STZ.w $0EF0,X\n\n#_1DB8FA: LDA.b #$80\n#_1DB8FC: STA.w $0DF0,X\n\n#_1DB8FF: LDA.b #$04\n#_1DB901: STA.w $0D80,X\n\n#_1DB904: LDA.w $0F50,X\n#_1DB907: STA.w $0F80,X\n\n#_1DB90A: LDA.b #$03\n#_1DB90C: STA.w $0F50,X\n\n; ---------------------------------------------------------\n\n.not_stunned\n#_1DB90F: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DB912: LDA.w $0CAA,X\n#_1DB915: ORA.b #$04\n#_1DB917: STA.w $0CAA,X\n\n#_1DB91A: LDA.w $0D80,X\n#_1DB91D: JSL JumpTableLocal\n#_1DB921: dw Sidenexx_Dormant\n#_1DB923: dw Sidenexx_Think\n#_1DB925: dw Sidenexx_Move\n#_1DB927: dw Sidenexx_Breathe\n#_1DB929: dw Sidenexx_Stunned\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Stunned", + "code": "Sidenexx_Stunned:\n#_1DB92B: LDA.w $0CAA,X\n#_1DB92E: AND.b #$FB\n#_1DB930: STA.w $0CAA,X\n\n#_1DB933: STZ.w $0E30,X\n\n#_1DB936: LDA.w $0DF0,X\n#_1DB939: BNE .delay\n\n#_1DB93B: PHA\n\n#_1DB93C: LDA.b #$01\n#_1DB93E: STA.w $0D80,X\n\n#_1DB941: LDA.b #$20\n#_1DB943: STA.w $0DF0,X\n\n#_1DB946: LDA.w $0F80,X\n#_1DB949: STA.w $0F50,X\n\n#_1DB94C: STZ.w $0EF0,X\n\n#_1DB94F: PLA\n\n; ---------------------------------------------------------\n\n.delay\n#_1DB950: CMP.b #$0F\n#_1DB952: BCC .unflash_color\n\n#_1DB954: CMP.b #$4E\n#_1DB956: BCS .exit\n\n#_1DB958: CMP.b #$3F\n#_1DB95A: BCC .exit\n\n#_1DB95C: LDA.w $0E20,X\n#_1DB95F: CMP.b #$CD ; SPRITE CD\n#_1DB961: BNE .not_ice_head_a\n\n#_1DB963: PHX\n#_1DB964: JSL Trinexx_FlashShellPalette_Blue\n#_1DB968: PLX\n\n#_1DB969: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Dormant", + "code": "Sidenexx_Dormant:\n#_1DB986: LDA.w $0E60,X\n#_1DB989: ORA.b #$40\n#_1DB98B: STA.w $0E60,X\n\n#_1DB98E: LDA.w $0DF0,X\n#_1DB991: BNE .delay\n\n#_1DB993: LDA.b #$02\n#_1DB995: STA.w $0D80,X\n\n#_1DB998: LDA.b #$09\n#_1DB99A: STA.w $0E80,X\n\n#_1DB99D: LDA.w $0E60,X\n#_1DB9A0: AND.b #$BF\n#_1DB9A2: STA.w $0E60,X\n\n.delay\n#_1DB9A5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Think", + "code": "Sidenexx_Think:\n#_1DB9A6: LDA.w $0DF0,X\n#_1DB9A9: BNE .exit\n\n#_1DB9AB: LDA.w $0DE0,X\n#_1DB9AE: STA.b $00\n\n#_1DB9B0: JSL GetRandomNumber\n#_1DB9B4: AND.b #$07\n#_1DB9B6: INC A\n\n#_1DB9B7: CMP.b #$05\n#_1DB9B9: BCS .exit\n\n#_1DB9BB: CMP.w $0DE0,X\n#_1DB9BE: BEQ .exit\n\n#_1DB9C0: STA.w $0DE0,X\n\n#_1DB9C3: INC.w $0D80,X\n\n#_1DB9C6: LDA.b $00\n#_1DB9C8: CMP.b #$01\n#_1DB9CA: BNE .exit\n\n#_1DB9CC: JSL GetRandomNumber\n#_1DB9D0: LSR A\n#_1DB9D1: BCS .exit\n\n#_1DB9D3: LDA.w $0D80\n#_1DB9D6: CMP.b #$02\n#_1DB9D8: BCS .exit\n\n#_1DB9DA: INC.w $0DC0,X\n\n#_1DB9DD: LDA.w $0DC0,X\n#_1DB9E0: CMP.b #$06\n\n#_1DB9E2: NOP\n#_1DB9E3: NOP\n\n#_1DB9E4: STZ.w $0DC0,X\n\n#_1DB9E7: LDA.b #$03\n#_1DB9E9: STA.w $0D80,X\n\n#_1DB9EC: LDA.b #$7F\n#_1DB9EE: STA.w $0DF0,X\n\n.exit\n#_1DB9F1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Move", + "code": "Sidenexx_Move:\n#_1DB9F2: STZ.b $01\n\n#_1DB9F4: LDA.w $0DE0,X ; get *9\n#_1DB9F7: ASL A\n#_1DB9F8: ASL A\n#_1DB9F9: ASL A\n#_1DB9FA: ADC.w $0DE0,X\n#_1DB9FD: TAY\n\n#_1DB9FE: LDA.w Sidenexx_SegmentIndexOffset,X\n\n#_1DBA01: PHX\n\n#_1DBA02: TAX\n\n#_1DBA03: LDA.b #$08\n#_1DBA05: STA.b $00\n\n.next_segment\n#_1DBA07: LDA.w $1D10,X\n#_1DBA0A: CMP.w Sidenexx_segment_boundary_x,Y\n#_1DBA0D: BEQ .continue_x\n#_1DBA0F: BPL .adjust_x\n\n#_1DBA11: INC.w $1D10,X\n\n#_1DBA14: INC.b $01\n\n#_1DBA16: BRA .continue_x\n\n.adjust_x\n#_1DBA18: DEC.w $1D10,X\n\n#_1DBA1B: INC.b $01\n\n; ---------------------------------------------------------\n\n.continue_x\n#_1DBA1D: LDA.w $1D10,X\n#_1DBA20: CMP.w Sidenexx_segment_boundary_x,Y\n#_1DBA23: BEQ .continue_x_again\n#_1DBA25: BPL .adjust_x_again\n\n#_1DBA27: INC.w $1D10,X\n#_1DBA2A: INC.b $01\n\n#_1DBA2C: BRA .continue_x_again\n\n.adjust_x_again\n#_1DBA2E: DEC.w $1D10,X\n\n#_1DBA31: INC.b $01\n\n; ---------------------------------------------------------\n\n.continue_x_again\n#_1DBA33: LDA.b $1A\n#_1DBA35: AND.b #$00\n#_1DBA37: BNE .skip_y\n\n#_1DBA39: LDA.w $1D50,X\n#_1DBA3C: CMP.w Sidenexx_segment_boundary_y,Y\n#_1DBA3F: BEQ .continue_y\n#_1DBA41: BPL .adjust_y\n\n#_1DBA43: INC.w $1D50,X\n\n#_1DBA46: INC.b $01\n\n#_1DBA48: BRA .continue_y\n\n.adjust_y\n#_1DBA4A: DEC.w $1D50,X\n\n.skip_y\n#_1DBA4D: INC.b $01\n\n; ---------------------------------------------------------\n\n.continue_y\n#_1DBA4F: INX\n\n#_1DBA50: INY\n\n#_1DBA51: DEC.b $00\n#_1DBA53: BPL .next_segment\n\n#_1DBA55: PLX\n\n#_1DBA56: LDA.b $01\n#_1DBA58: BNE .exit\n\n#_1DBA5A: DEC.w $0D80,X\n\n#_1DBA5D: JSL GetRandomNumber\n#_1DBA61: AND.b #$0F\n#_1DBA63: STA.w $0DF0,X\n\n.exit\n#_1DBA66: RTS", + "file": "bank_1D.asm" + }, + { + "name": "UNREACHABLE_1DBA67", + "code": "UNREACHABLE_1DBA67:\n#_1DBA67: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Breathe", + "code": "Sidenexx_Breathe:\n#_1DBA70: LDA.w $0DF0,X\n#_1DBA73: BNE .breathe_yes\n\n#_1DBA75: STZ.w $0D80,X\n\n#_1DBA78: LDA.b #$20\n#_1DBA7A: STA.w $0DF0,X\n\n#_1DBA7D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_ExhaleDanger", + "code": "Sidenexx_ExhaleDanger:\n#_1DBAE8: LDA.w $0E20,X\n#_1DBAEB: CMP.b #$CD ; SPRITE CD\n#_1DBAED: BNE .breathe_fire\n\n#_1DBAEF: STZ.w $0FB6\n\n#_1DBAF2: JSR .breathe_ice\n\n#_1DBAF5: INC.w $0FB6\n\n#_1DBAF8: LDA.b #$CD ; SPRITE CD\n\n; ---------------------------------------------------------\n\n.breathe_ice\n#_1DBAFA: JSL Sprite_SpawnDynamically\n#_1DBAFE: BMI .spawn_failed\n\n#_1DBB00: JSL Sprite_SetSpawnedCoordinates\n\n#_1DBB04: PHX\n\n#_1DBB05: LDX.w $0FB6\n#_1DBB08: LDA.w .dir,X\n#_1DBB0B: STA.w $0DB0,Y\n\n#_1DBB0E: PLX\n\n#_1DBB0F: LDA.b #$19 ; SFX3.19\n#_1DBB11: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DBB15: BRA .final_adjustments\n\n; ---------------------------------------------------------\n\n.breathe_fire\n#_1DBB17: JSL Sprite_SpawnDynamically\n#_1DBB1B: BMI .spawn_failed\n\n#_1DBB1D: JSL Sprite_SetSpawnedCoordinates\n\n#_1DBB21: LDA.b #$2A ; SFX2.2A\n#_1DBB23: JSL SpriteSFX_QueueSFX2WithPan\n\n; ---------------------------------------------------------\n\n.final_adjustments\n#_1DBB27: LDA.b #$01\n#_1DBB29: STA.w $0E90,Y\n#_1DBB2C: STA.w $0BA0,Y\n\n#_1DBB2F: LDA.b #$18\n#_1DBB31: STA.w $0D40,Y\n\n#_1DBB34: LDA.b #$00\n#_1DBB36: STA.w $0E40,Y\n\n#_1DBB39: LDA.b #$40\n#_1DBB3B: STA.w $0E60,Y\n\n.spawn_failed\n#_1DBB3E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_Explode", + "code": "Sidenexx_Explode:\n#_1DBB3F: LDA.w $0DF0,X\n#_1DBB42: BNE .exit\n\n#_1DBB44: LDA.b #$0C\n#_1DBB46: STA.w $0DF0,X\n\n#_1DBB49: LDA.w $0E80,X\n#_1DBB4C: CMP.b #$01\n#_1DBB4E: BNE .stay_alive\n\n#_1DBB50: STZ.w $0DD0,X\n\n; ---------------------------------------------------------\n\n.stay_alive\n#_1DBB53: DEC.w $0E80,X\n\n#_1DBB56: LDA.w $0FD8\n#_1DBB59: CLC\n#_1DBB5A: ADC.b $E2\n#_1DBB5C: STA.w $0FD8\n\n#_1DBB5F: LDA.w $0FDA\n#_1DBB62: CLC\n#_1DBB63: ADC.b $E8\n#_1DBB65: STA.w $0FDA\n\n#_1DBB68: JSL MakeBossExplosion\n\n.exit\n#_1DBB6C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sidenexx_SegmentIndexOffset", + "code": "Sidenexx_SegmentIndexOffset:\n#_1DBB6D: db $00, $09, $12\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Sidenexx", + "code": "SpriteDraw_Sidenexx:\n#_1DBB70: LDA.w $0D90,X\n#_1DBB73: STA.w $0D10,X\n\n#_1DBB76: LDA.w $0DA0,X\n#_1DBB79: STA.w $0D30,X\n\n#_1DBB7C: LDA.w $0DB0,X\n#_1DBB7F: STA.w $0D00,X\n\n#_1DBB82: LDA.w $0ED0,X\n#_1DBB85: STA.w $0D20,X\n\n#_1DBB88: JSL Sprite_Get16BitCoords_long\n#_1DBB8C: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1DBB8F: STZ.w $0FB5\n#_1DBB92: STZ.w $0FB6\n\n.next_segment\n#_1DBB95: LDY.w $0FB5\n\n#_1DBB98: TYA\n#_1DBB99: CLC\n#_1DBB9A: ADC.w Sidenexx_SegmentIndexOffset,X\n#_1DBB9D: TAY\n\n#_1DBB9E: CPX.b #$02\n#_1DBBA0: BEQ .ice_head\n\n#_1DBBA2: LDA.w $1D10,Y\n#_1DBBA5: EOR.b #$FF\n#_1DBBA7: INC A\n\n#_1DBBA8: STA.b $06\n#_1DBBAA: LDA.b #$01\n#_1DBBAC: STA.b $07\n#_1DBBAE: BRA .continue_a\n\n; ---------------------------------------------------------\n\n.ice_head\n#_1DBBB0: LDA.w $1D10,Y\n#_1DBBB3: STA.b $06\n#_1DBBB5: STZ.b $07\n\n; ---------------------------------------------------------\n\n.continue_a\n#_1DBBB7: LDA.w $1D50,Y\n#_1DBBBA: STA.b $0F\n\n#_1DBBBC: PHX\n\n#_1DBBBD: REP #$30\n\n#_1DBBBF: LDA.b $06\n#_1DBBC1: AND.w #$00FF\n#_1DBBC4: ASL A\n#_1DBBC5: TAX\n\n#_1DBBC6: LDA.l SmoothCurve,X\n#_1DBBCA: STA.b $0A\n\n#_1DBBCC: LDA.b $06\n#_1DBBCE: CLC\n#_1DBBCF: ADC.w #$0080\n#_1DBBD2: STA.b $08\n\n#_1DBBD4: AND.w #$00FF\n#_1DBBD7: ASL A\n#_1DBBD8: TAX\n\n#_1DBBD9: LDA.l SmoothCurve,X\n#_1DBBDD: STA.b $0C\n\n; ---------------------------------------------------------\n\n#_1DBBDF: SEP #$30\n\n#_1DBBE1: PLX\n\n#_1DBBE2: LDA.b $0A\n#_1DBBE4: STA.w WRMPYA\n\n#_1DBBE7: LDA.b $0F\n\n#_1DBBE9: LDY.b $0B\n#_1DBBEB: BNE .nonzero_a\n\n#_1DBBED: STA.w WRMPYB\n\n#_1DBBF0: NOP ; 8 NOP\n#_1DBBF1: NOP\n#_1DBBF2: NOP\n#_1DBBF3: NOP\n#_1DBBF4: NOP\n#_1DBBF5: NOP\n#_1DBBF6: NOP\n#_1DBBF7: NOP\n\n#_1DBBF8: ASL.w RDMPYL\n#_1DBBFB: LDA.w RDMPYH\n#_1DBBFE: ADC.b #$00\n\n.nonzero_a\n#_1DBC00: LSR.b $07\n#_1DBC02: BCC .leave_sign_a\n\n#_1DBC04: EOR.b #$FF\n#_1DBC06: INC A\n\n.leave_sign_a\n#_1DBC07: STA.w $0FA8\n\n; ---------------------------------------------------------\n\n#_1DBC0A: LDA.b $0C\n#_1DBC0C: STA.w WRMPYA\n\n#_1DBC0F: LDA.b $0F\n#_1DBC11: LDY.b $0D\n#_1DBC13: BNE .nonzero_b\n\n#_1DBC15: STA.w WRMPYB\n\n#_1DBC18: NOP ; 8 NOP\n#_1DBC19: NOP\n#_1DBC1A: NOP\n#_1DBC1B: NOP\n#_1DBC1C: NOP\n#_1DBC1D: NOP\n#_1DBC1E: NOP\n#_1DBC1F: NOP\n\n#_1DBC20: ASL.w RDMPYL\n#_1DBC23: LDA.w RDMPYH\n#_1DBC26: ADC.b #$00\n\n.nonzero_b\n#_1DBC28: LSR.b $09\n#_1DBC2A: BCC .leave_sign_b\n\n#_1DBC2C: EOR.b #$FF\n#_1DBC2E: INC A\n\n.leave_sign_b\n#_1DBC2F: STA.w $0FA9\n\n#_1DBC32: LDA.w $0FB5\n#_1DBC35: BNE .not_head\n\n#_1DBC37: JSR SpriteDraw_Sidenexx_Head\n\n#_1DBC3A: BRA .continue_b\n\n; ---------------------------------------------------------\n\n.not_head\n#_1DBC3C: LDA.b $00\n#_1DBC3E: CLC\n#_1DBC3F: ADC.w $0FA8\n\n#_1DBC42: LDY.w $0FB6\n\n#_1DBC45: STA.b ($90),Y\n#_1DBC47: STA.w $0FD8\n\n#_1DBC4A: LDA.w $0FA9\n#_1DBC4D: CLC\n#_1DBC4E: ADC.b $02\n\n#_1DBC50: LDY.w $0FB6\n#_1DBC53: INY\n\n#_1DBC54: STA.b ($90),Y\n#_1DBC56: STA.w $0FDA\n\n#_1DBC59: LDA.b #$08\n#_1DBC5B: INY\n#_1DBC5C: STA.b ($90),Y\n\n#_1DBC5E: LDA.b $05\n#_1DBC60: INY\n#_1DBC61: STA.b ($90),Y\n\n#_1DBC63: PHY\n\n#_1DBC64: TYA\n#_1DBC65: LSR A\n#_1DBC66: LSR A\n#_1DBC67: TAY\n\n#_1DBC68: LDA.b #$02\n#_1DBC6A: STA.b ($92),Y\n\n#_1DBC6C: PLY\n#_1DBC6D: INY\n\n#_1DBC6E: STY.w $0FB6\n\n; ---------------------------------------------------------\n\n.continue_b\n#_1DBC71: INC.w $0FB5\n\n#_1DBC74: LDA.w $0FB5\n#_1DBC77: CMP.w $0E80,X\n#_1DBC7A: BEQ .finished\n\n#_1DBC7C: JMP.w .next_segment\n\n; ---------------------------------------------------------\n\n.finished\n#_1DBC7F: LDA.b $11\n#_1DBC81: BEQ .exit\n\n#_1DBC83: LDY.b #$02\n#_1DBC85: LDA.b #$04\n#_1DBC87: JSL Sprite_CorrectOAMEntries_long\n\n.exit\n#_1DBC8B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Sidenexx_Head", + "code": "SpriteDraw_Sidenexx_Head:\n#_1DBCA0: LDA.w $0E30,X\n#_1DBCA3: STA.b $08\n\n#_1DBCA5: PHX\n\n#_1DBCA6: LDX.b #$00\n#_1DBCA8: LDY.w $0FB6\n\n.next_object\n#_1DBCAB: LDA.w $0FA8\n#_1DBCAE: CLC\n#_1DBCAF: ADC.b $00\n#_1DBCB1: STA.w $0FD8\n\n#_1DBCB4: CLC\n#_1DBCB5: ADC.w .offset_x,X\n#_1DBCB8: STA.b ($90),Y\n\n#_1DBCBA: LDA.w $0FA9\n#_1DBCBD: CLC\n#_1DBCBE: ADC.b $02\n#_1DBCC0: STA.w $0FDA\n\n#_1DBCC3: CLC\n#_1DBCC4: ADC.w .offset_y,X\n\n#_1DBCC7: CPX.b #$04\n#_1DBCC9: BNE .not_mouth\n\n#_1DBCCB: CLC\n#_1DBCCC: ADC.b $08\n\n; ---------------------------------------------------------\n\n.not_mouth\n#_1DBCCE: INY\n#_1DBCCF: STA.b ($90),Y\n\n#_1DBCD1: LDA.w .char,X\n#_1DBCD4: INY\n#_1DBCD5: STA.b ($90),Y\n\n#_1DBCD7: LDA.b $05\n#_1DBCD9: ORA.w .flip,X\n\n#_1DBCDC: INY\n#_1DBCDD: STA.b ($90),Y\n\n#_1DBCDF: PHY\n\n#_1DBCE0: TYA\n#_1DBCE1: LSR A\n#_1DBCE2: LSR A\n#_1DBCE3: TAY\n\n#_1DBCE4: LDA.b #$02\n#_1DBCE6: STA.b ($92),Y\n\n#_1DBCE8: PLY\n#_1DBCE9: INY\n\n#_1DBCEA: INX\n\n#_1DBCEB: CPX.b #$05\n#_1DBCED: BNE .next_object\n\n#_1DBCEF: PLX\n\n; ---------------------------------------------------------\n\n#_1DBCF0: LDA.w $0FB6\n#_1DBCF3: CLC\n#_1DBCF4: ADC.b #$14\n#_1DBCF6: STA.w $0FB6\n\n#_1DBCF9: LDY.b #$00\n#_1DBCFB: LDA.w $0FA8\n#_1DBCFE: BPL .positive_x\n\n#_1DBD00: DEY\n\n.positive_x\n#_1DBD01: CLC\n#_1DBD02: ADC.w $0D90,X\n#_1DBD05: STA.w $0D10,X\n\n#_1DBD08: TYA\n#_1DBD09: ADC.w $0DA0,X\n#_1DBD0C: STA.w $0D30,X\n\n#_1DBD0F: LDY.b #$00\n#_1DBD11: LDA.w $0FA9\n#_1DBD14: BPL .positive_y\n\n#_1DBD16: DEY\n\n.positive_y\n#_1DBD17: CLC\n#_1DBD18: ADC.w $0DB0,X\n#_1DBD1B: STA.w $0D00,X\n\n#_1DBD1E: TYA\n#_1DBD1F: ADC.w $0ED0,X\n#_1DBD22: STA.w $0D20,X\n\n#_1DBD25: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TrinexxBreath", + "code": "TrinexxBreath:\n.speed\n#_1DBD26: db 16, -16\n\n; ---------------------------------------------------------\n\n#TrinexxBreath_ice:\n#_1DBD28: JSL Sprite_PrepOAMCoord_long\n#_1DBD2C: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DBD2F: LDA.w $0D50,X\n#_1DBD32: PHA\n\n#_1DBD33: CLC\n#_1DBD34: ADC.w $0DB0,X\n#_1DBD37: STA.w $0D50,X\n\n#_1DBD3A: JSR Sprite_Move_XY_Bank1D\n\n#_1DBD3D: PLA\n#_1DBD3E: STA.w $0D50,X\n\n#_1DBD41: JSR .add_ice_garnish\n\n; ---------------------------------------------------------\n\n.finish_up\n#_1DBD44: LDA.b $1A\n#_1DBD46: AND.b #$03\n#_1DBD48: BNE .no_shake\n\n#_1DBD4A: JSR Sprite_IsRightOfLink_Bank1D\n\n#_1DBD4D: LDA.w $0D50,X\n#_1DBD50: CMP.w .speed,Y\n#_1DBD53: BEQ .no_shake\n\n#_1DBD55: CLC\n#_1DBD56: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1DBD59: STA.w $0D50,X\n\n.no_shake\n#_1DBD5C: JSR Sprite_CheckTileCollision_Bank1D\n#_1DBD5F: BEQ .exit_a\n\n#_1DBD61: STZ.w $0DD0,X\n\n.exit_a\n#_1DBD64: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TrinexxFire_AddFireGarnish", + "code": "TrinexxFire_AddFireGarnish:\n#_1DBDD6: INC.w $0E80,X\n\n#_1DBDD9: LDA.w $0E80,X\n#_1DBDDC: AND.b #$07\n#_1DBDDE: BNE EXIT_1DBE3B\n\n#_1DBDE0: LDA.b #$2A ; SFX2.2A\n#_1DBDE2: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1DBDE6: LDA.b #$1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FireBat_SpawnFireballGarnish", + "code": "FireBat_SpawnFireballGarnish:\n#_1DBDE8: PHX\n\n#_1DBDE9: TXY\n\n#_1DBDEA: TAX\n\n#_1DBDEB: STA.b $00\n\n.next_slot\n#_1DBDED: LDA.l $7FF800,X\n#_1DBDF1: BEQ .free_slot\n\n#_1DBDF3: DEX\n#_1DBDF4: BPL .next_slot\n\n#_1DBDF6: DEC.w $0FF8\n#_1DBDF9: BPL .use_search_index\n\n#_1DBDFB: LDA.b $00\n#_1DBDFD: STA.w $0FF8\n\n.use_search_index\n#_1DBE00: LDX.w $0FF8\n\n; ---------------------------------------------------------\n\n.free_slot\n#_1DBE03: LDA.b #$10 ; GARNISH 10\n#_1DBE05: STA.l $7FF800,X\n#_1DBE09: STA.w $0FB4\n\n#_1DBE0C: TYA\n#_1DBE0D: STA.l $7FF92C,X\n\n#_1DBE11: LDA.w $0D10,Y\n#_1DBE14: STA.l $7FF83C,X\n\n#_1DBE18: LDA.w $0D30,Y\n#_1DBE1B: STA.l $7FF878,X\n\n#_1DBE1F: LDA.w $0D00,Y\n#_1DBE22: CLC\n#_1DBE23: ADC.b #$10\n#_1DBE25: STA.l $7FF81E,X\n\n#_1DBE29: LDA.w $0D20,Y\n#_1DBE2C: ADC.b #$00\n#_1DBE2E: STA.l $7FF85A,X\n\n#_1DBE32: LDA.b #$7F\n#_1DBE34: STA.l $7FF90E,X\n\n#_1DBE38: STX.b $00\n\n#_1DBE3A: PLX\n\n; ---------------------------------------------------------\n\n#EXIT_1DBE3B\n#_1DBE3B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_ChainOffset", + "code": "ChainChomp_ChainOffset:\n#_1DBE3C: db $00, $10, $20, $30, $40, $50, $60, $70\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_Chainchomp", + "code": "SpritePrep_Chainchomp:\n#_1DBE44: PHX\n\n#_1DBE45: LDY.b #$05\n\n#_1DBE47: LDA.l ChainChomp_ChainOffset,X\n#_1DBE4B: TAX\n\n#_1DBE4C: REP #$20\n\n.next_link\n#_1DBE4E: LDA.w $0FD8\n#_1DBE51: STA.l $7FFC00,X\n\n#_1DBE55: LDA.w $0FDA\n#_1DBE58: STA.l $7FFD00,X\n\n#_1DBE5C: INX\n#_1DBE5D: INX\n\n#_1DBE5E: DEY\n#_1DBE5F: BPL .next_link\n\n; ---------------------------------------------------------\n\n#_1DBE61: SEP #$20\n\n#_1DBE63: PLX\n\n#_1DBE64: LDA.w $0D10,X\n#_1DBE67: STA.w $0D90,X\n\n#_1DBE6A: LDA.w $0D30,X\n#_1DBE6D: STA.w $0DA0,X\n\n#_1DBE70: LDA.w $0D00,X\n#_1DBE73: STA.w $0DB0,X\n\n#_1DBE76: LDA.w $0D20,X\n#_1DBE79: STA.w $0ED0,X\n\n#_1DBE7C: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CA_ChainChomp", + "code": "Sprite_CA_ChainChomp:\n#_1DBE7D: JSR SpriteDraw_ChainChomp\n#_1DBE80: JSR Sprite_CheckIfActive_Bank1D\n#_1DBE83: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n#_1DBE86: JSR ChainChomp_HandleLeash\n\n#_1DBE89: TXA\n#_1DBE8A: EOR.b $1A\n#_1DBE8C: AND.b #$03\n#_1DBE8E: BNE .dont_change_bounce\n\n#_1DBE90: LDA.w $0D50,X\n#_1DBE93: STA.b $01\n\n#_1DBE95: LDA.w $0D40,X\n#_1DBE98: STA.b $00\n#_1DBE9A: ORA.b $01\n#_1DBE9C: BEQ .dont_change_bounce\n\n#_1DBE9E: JSL Sprite_ConvertVelocityToAngle\n#_1DBEA2: AND.b #$0F\n#_1DBEA4: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.dont_change_bounce\n#_1DBEA7: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DBEAA: DEC.w $0F80,X\n#_1DBEAD: DEC.w $0F80,X\n\n#_1DBEB0: LDA.w $0F70,X\n#_1DBEB3: BPL .z_fine\n\n#_1DBEB5: STZ.w $0F70,X\n#_1DBEB8: STZ.w $0F80,X\n\n.z_fine\n#_1DBEBB: JSL Sprite_Get16BitCoords_long\n\n#_1DBEBF: LDA.w $0D90,X\n#_1DBEC2: STA.b $00\n\n#_1DBEC4: LDA.w $0DA0,X\n#_1DBEC7: STA.b $01\n\n#_1DBEC9: LDA.w $0DB0,X\n#_1DBECC: STA.b $02\n\n#_1DBECE: LDA.w $0ED0,X\n#_1DBED1: STA.b $03\n\n#_1DBED3: STZ.w $0EC0,X\n\n; ---------------------------------------------------------\n\n#_1DBED6: REP #$20\n\n#_1DBED8: LDA.w $0FD8\n#_1DBEDB: SEC\n#_1DBEDC: SBC.b $00\n#_1DBEDE: CLC\n#_1DBEDF: ADC.w #$0030\n#_1DBEE2: CMP.w #$0060\n#_1DBEE5: BCS .leash_not_tight\n\n#_1DBEE7: LDA.w $0FDA\n#_1DBEEA: SEC\n#_1DBEEB: SBC.b $02\n#_1DBEED: CLC\n#_1DBEEE: ADC.w #$0030\n#_1DBEF1: CMP.w #$0060\n#_1DBEF4: BCS .leash_not_tight\n\n#_1DBEF6: SEP #$20\n\n#_1DBEF8: INC.w $0EC0,X\n\n; ---------------------------------------------------------\n\n.leash_not_tight\n#_1DBEFB: SEP #$20\n\n#_1DBEFD: LDA.w $0D80,X\n#_1DBF00: JSL JumpTableLocal\n#_1DBF04: dw ChainChomp_Idle\n#_1DBF06: dw ChainChomp_Meander\n#_1DBF08: dw ChainChomp_InvertLunge\n#_1DBF0A: dw ChainChomp_Lunge\n\n; =========================================================\n\npool ChainChomp_Idle\n\n.lunge_speed_x\n#_1DBF0C: db 0, 8, 11, 14, 16, 14, 11, 8\n#_1DBF14: db 0, -8, -11, -14, -16, -14, -11, -8\n\n.lunge_speed_y\n#_1DBF1C: db -16, -14, -11, -8, 0, 8, 11, 14\n#_1DBF24: db 16, 14, 11, 8, 0, -9, -11, -14\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_Idle", + "code": "ChainChomp_Idle:\n#_1DBF2C: LDA.w $0DF0,X\n#_1DBF2F: BNE .delay\n\n#_1DBF31: INC.w $0E80,X\n\n#_1DBF34: LDA.w $0E80,X\n#_1DBF37: CMP.b #$04\n#_1DBF39: BNE .choose_from_more\n\n#_1DBF3B: STZ.w $0E80,X\n\n#_1DBF3E: LDA.b #$02\n#_1DBF40: STA.w $0D80,X\n\n#_1DBF43: JSL GetRandomNumber\n#_1DBF47: AND.b #$0F\n#_1DBF49: TAY\n#_1DBF4A: LDA.w .lunge_speed_x,Y\n\n#_1DBF4D: ASL A\n#_1DBF4E: ASL A\n#_1DBF4F: STA.w $0D50,X\n\n#_1DBF52: LDA.w .lunge_speed_y,Y\n#_1DBF55: ASL A\n#_1DBF56: ASL A\n#_1DBF57: STA.w $0D40,X\n\n#_1DBF5A: JSL GetRandomNumber\n#_1DBF5E: AND.b #$00\n#_1DBF60: BNE .use_random_location\n\n#_1DBF62: LDA.b #$40\n#_1DBF64: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DBF68: LDA.b #$04 ; SFX3.04\n#_1DBF6A: JSL SpriteSFX_QueueSFX3WithPan\n\n.use_random_location\n#_1DBF6E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_Meander", + "code": "ChainChomp_Meander:\n#_1DBF95: LDA.w $0DF0,X\n#_1DBF98: BNE .boop_da_bop\n\n#_1DBF9A: LDA.b #$20\n#_1DBF9C: STA.w $0DF0,X\n\n#_1DBF9F: STZ.w $0D80,X\n\n.boop_da_bop\n#_1DBFA2: AND.b #$0F\n#_1DBFA4: BNE .skip_chain\n\n#_1DBFA6: JSR ChainChomp_MoveChain\n\n; ---------------------------------------------------------\n\n.skip_chain\n#_1DBFA9: LDA.w $0F70,X\n#_1DBFAC: BNE .bouncing\n\n#_1DBFAE: LDA.b #$10\n#_1DBFB0: STA.w $0F80,X\n\n.bouncing\n#_1DBFB3: LDA.w $0EC0,X\n#_1DBFB6: BNE .exit\n\n#_1DBFB8: LDA.w $0D90,X\n#_1DBFBB: STA.b $04\n\n#_1DBFBD: LDA.w $0DA0,X\n#_1DBFC0: STA.b $05\n\n#_1DBFC2: LDA.w $0DB0,X\n#_1DBFC5: STA.b $06\n\n#_1DBFC7: LDA.w $0ED0,X\n#_1DBFCA: STA.b $07\n\n; ---------------------------------------------------------\n\n#_1DBFCC: LDA.b #$10\n#_1DBFCE: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1DBFD2: LDA.b $00\n#_1DBFD4: STA.w $0D40,X\n\n#_1DBFD7: LDA.b $01\n#_1DBFD9: STA.w $0D50,X\n\n#_1DBFDC: JSR Sprite_Move_XY_Bank1D\n\n#_1DBFDF: LDA.b #$0C\n#_1DBFE1: STA.w $0DF0,X\n\n.exit\n#_1DBFE4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_InvertLunge", + "code": "ChainChomp_InvertLunge:\n#_1DBFE5: LDA.w $0EC0,X\n#_1DBFE8: BNE .stay_true\n\n#_1DBFEA: LDA.w $0D50,X\n#_1DBFED: EOR.b #$FF\n#_1DBFEF: INC A\n#_1DBFF0: STA.w $0D50,X\n\n#_1DBFF3: LDA.w $0D40,X\n#_1DBFF6: EOR.b #$FF\n#_1DBFF8: INC A\n#_1DBFF9: STA.w $0D40,X\n\n#_1DBFFC: JSR Sprite_Move_XY_Bank1D\n#_1DBFFF: JSR Sprite_ZeroVelocity_XY_Bank1D\n\n#_1DC002: INC.w $0D80,X\n\n#_1DC005: LDA.b #$30\n#_1DC007: STA.w $0E00,X\n\n.stay_true\n#_1DC00A: BRA .handle_chain\n\n; ---------------------------------------------------------\n\n#ChainChomp_Lunge:\n#_1DC00C: LDA.w $0E00,X\n#_1DC00F: BNE .handle_chain\n\n#_1DC011: STZ.w $0D80,X\n\n#_1DC014: LDA.b #$30\n#_1DC016: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.handle_chain\n#_1DC019: JSR ChainChomp_MoveChain\n#_1DC01C: JSR ChainChomp_MoveChain\n\n#_1DC01F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_MoveChain", + "code": "ChainChomp_MoveChain:\n#_1DC02A: LDA.w $0D90,X\n#_1DC02D: STA.b $00\n\n#_1DC02F: LDA.w $0DA0,X\n#_1DC032: STA.b $01\n\n#_1DC034: LDA.w $0DB0,X\n#_1DC037: STA.b $02\n\n#_1DC039: LDA.w $0ED0,X\n#_1DC03C: STA.b $03\n\n; ---------------------------------------------------------\n\n#_1DC03E: PHX\n\n#_1DC03F: LDA.b #$05\n#_1DC041: STA.b $0D\n\n#_1DC043: LDA.w ChainChomp_ChainOffset,X\n#_1DC046: TAX\n\n#_1DC047: LDA.l $7FFC00,X\n#_1DC04B: SEC\n#_1DC04C: SBC.b $00\n#_1DC04E: STA.b $04\n\n#_1DC050: LDA.l $7FFD00,X\n#_1DC054: SEC\n#_1DC055: SBC.b $02\n#_1DC057: STA.b $05\n\n#_1DC059: INX\n#_1DC05A: INX\n\n; ---------------------------------------------------------\n\n.next_link\n#_1DC05B: LDA.b $04\n#_1DC05D: PHP\n#_1DC05E: BPL .pos_x\n\n#_1DC060: EOR.b #$FF\n#_1DC062: INC A\n\n.pos_x\n#_1DC063: STA.w WRMPYA\n\n#_1DC066: PHX\n\n#_1DC067: TXA\n#_1DC068: AND.b #$0F\n#_1DC06A: TAX\n\n#_1DC06B: LDA.w .operand-2,X\n#_1DC06E: STA.w WRMPYB\n\n#_1DC071: PLX\n\n#_1DC072: NOP ; 7 NOP\n#_1DC073: NOP\n#_1DC074: NOP\n#_1DC075: NOP\n#_1DC076: NOP\n#_1DC077: NOP\n#_1DC078: NOP\n\n#_1DC079: LDA.w RDMPYH\n#_1DC07C: LDY.b #$00\n\n#_1DC07E: PLP\n#_1DC07F: BPL .sign_correct_x\n\n#_1DC081: EOR.b #$FF\n#_1DC083: DEY\n\n.sign_correct_x\n#_1DC084: CLC\n#_1DC085: ADC.b $00\n#_1DC087: STA.b $08\n\n; ---------------------------------------------------------\n\n#_1DC089: TYA\n#_1DC08A: ADC.b $01\n#_1DC08C: STA.b $09\n\n#_1DC08E: LDA.b $05\n#_1DC090: PHP\n#_1DC091: BPL .pos_y\n\n#_1DC093: EOR.b #$FF\n#_1DC095: INC A\n\n.pos_y\n#_1DC096: STA.w WRMPYA\n\n#_1DC099: PHX\n\n#_1DC09A: TXA\n#_1DC09B: AND.b #$0F\n#_1DC09D: TAX\n\n#_1DC09E: LDA.w .operand-2,X\n#_1DC0A1: STA.w WRMPYB\n\n#_1DC0A4: PLX\n\n#_1DC0A5: NOP ; 7 NOP\n#_1DC0A6: NOP\n#_1DC0A7: NOP\n#_1DC0A8: NOP\n#_1DC0A9: NOP\n#_1DC0AA: NOP\n#_1DC0AB: NOP\n\n#_1DC0AC: LDA.w RDMPYH\n#_1DC0AF: LDY.b #$00\n\n#_1DC0B1: PLP\n#_1DC0B2: BPL .sign_correct_y\n\n#_1DC0B4: EOR.b #$FF\n#_1DC0B6: DEY\n\n.sign_correct_y\n#_1DC0B7: CLC\n#_1DC0B8: ADC.b $02\n#_1DC0BA: STA.b $0A\n\n#_1DC0BC: TYA\n#_1DC0BD: ADC.b $03\n#_1DC0BF: STA.b $0B\n\n; ---------------------------------------------------------\n\n#_1DC0C1: REP #$20\n\n#_1DC0C3: LDA.l $7FFC00,X\n#_1DC0C7: CMP.b $08\n\n#_1DC0C9: BEQ .x_correct\n#_1DC0CB: BPL .decrement_x\n\n#_1DC0CD: INC A\n#_1DC0CE: INC A\n\n.decrement_x\n#_1DC0CF: DEC A\n#_1DC0D0: STA.l $7FFC00,X\n\n.x_correct\n#_1DC0D4: LDA.l $7FFD00,X\n#_1DC0D8: CMP.b $0A\n#_1DC0DA: BEQ .y_correct\n#_1DC0DC: BPL .decrement_y\n\n#_1DC0DE: INC A\n#_1DC0DF: INC A\n\n.decrement_y\n#_1DC0E0: DEC A\n#_1DC0E1: STA.l $7FFD00,X\n\n.y_correct\n#_1DC0E5: SEP #$20\n\n#_1DC0E7: INX\n#_1DC0E8: INX\n\n#_1DC0E9: DEC.b $0D\n#_1DC0EB: BMI .done\n\n#_1DC0ED: JMP.w .next_link\n\n.done\n#_1DC0F0: PLX\n\n#_1DC0F1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ChainChomp_HandleLeash", + "code": "ChainChomp_HandleLeash:\n#_1DC0F2: PHX\n\n#_1DC0F3: LDA.w ChainChomp_ChainOffset,X\n#_1DC0F6: TAX\n\n#_1DC0F7: REP #$20\n\n#_1DC0F9: STZ.b $00\n\n#_1DC0FB: LDA.w $0FD8\n#_1DC0FE: STA.l $7FFC00,X\n\n#_1DC102: LDA.w $0FDA\n#_1DC105: STA.l $7FFD00,X\n\n; ---------------------------------------------------------\n\n.next_link\n#_1DC109: LDA.l $7FFC00,X\n#_1DC10D: SEC\n#_1DC10E: SBC.l $7FFC02,X\n\n#_1DC112: CMP.w #$0008\n#_1DC115: BPL .x_left\n\n#_1DC117: CMP.w #$FFF8\n#_1DC11A: BPL .x_done\n\n#_1DC11C: LDA.l $7FFC00,X\n#_1DC120: CLC\n#_1DC121: ADC.w #$0008\n#_1DC124: STA.l $7FFC02,X\n\n#_1DC128: BRA .x_done\n\n.x_left\n#_1DC12A: LDA.l $7FFC00,X\n#_1DC12E: SEC\n#_1DC12F: SBC.w #$0008\n#_1DC132: STA.l $7FFC02,X\n\n; ---------------------------------------------------------\n\n.x_done\n#_1DC136: LDA.l $7FFD00,X\n#_1DC13A: SEC\n#_1DC13B: SBC.l $7FFD02,X\n\n#_1DC13F: CMP.w #$0008\n#_1DC142: BPL .y_up\n\n#_1DC144: CMP.w #$FFF8\n#_1DC147: BPL .done_y\n\n#_1DC149: LDA.l $7FFD00,X\n#_1DC14D: CLC\n#_1DC14E: ADC.w #$0008\n#_1DC151: STA.l $7FFD02,X\n\n#_1DC155: BRA .done_y\n\n.y_up\n#_1DC157: LDA.l $7FFD00,X\n#_1DC15B: SEC\n#_1DC15C: SBC.w #$0008\n#_1DC15F: STA.l $7FFD02,X\n\n; ---------------------------------------------------------\n\n.done_y\n#_1DC163: INX\n#_1DC164: INX\n\n#_1DC165: INC.b $00\n\n#_1DC167: LDA.b $00\n#_1DC169: CMP.w #$0006\n#_1DC16C: BCC .next_link\n\n; ---------------------------------------------------------\n\n#_1DC16E: PLX\n\n#_1DC16F: SEP #$20\n\n#_1DC171: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_ChainChomp", + "code": "SpriteDraw_ChainChomp:\n#_1DC192: LDY.w $0DE0,X\n\n#_1DC195: LDA.w .step,Y\n#_1DC198: STA.w $0DC0,X\n\n#_1DC19B: LDA.w $0F50,X\n#_1DC19E: AND.b #$3F\n#_1DC1A0: ORA.w .flip,Y\n#_1DC1A3: STA.w $0F50,X\n\n#_1DC1A6: JSL SpriteDraw_SingleLarge_long\n\n; ---------------------------------------------------------\n\n#_1DC1AA: LDA.w $0E00,X\n#_1DC1AD: AND.b #$01\n#_1DC1AF: CLC\n#_1DC1B0: ADC.b #$04\n#_1DC1B2: STA.b $08\n#_1DC1B4: STZ.b $09\n\n#_1DC1B6: LDA.b #$05\n#_1DC1B8: STA.b $0D\n\n; ---------------------------------------------------------\n\n#_1DC1BA: PHX\n\n#_1DC1BB: LDA.w ChainChomp_ChainOffset,X\n#_1DC1BE: TAX\n\n#_1DC1BF: LDY.b #$04\n\n.next_link\n#_1DC1C1: REP #$20\n\n#_1DC1C3: LDA.l $7FFC00,X\n\n#_1DC1C7: CLC\n#_1DC1C8: ADC.b $08\n#_1DC1CA: SEC\n#_1DC1CB: SBC.b $E2\n#_1DC1CD: STA.b ($90),Y\n\n#_1DC1CF: AND.w #$0100\n#_1DC1D2: STA.b $0E\n\n#_1DC1D4: LDA.l $7FFD00,X\n#_1DC1D8: CLC\n#_1DC1D9: ADC.b $08\n#_1DC1DB: SEC\n#_1DC1DC: SBC.b $E8\n#_1DC1DE: INY\n#_1DC1DF: STA.b ($90),Y\n\n#_1DC1E1: CLC\n#_1DC1E2: ADC.w #$0010\n#_1DC1E5: CMP.w #$0100\n\n#_1DC1E8: SEP #$20\n#_1DC1EA: BCC .on_screen\n\n#_1DC1EC: LDA.b #$F0\n#_1DC1EE: STA.b ($90),Y\n\n.on_screen\n#_1DC1F0: LDA.b #$8B\n#_1DC1F2: INY\n#_1DC1F3: STA.b ($90),Y\n\n#_1DC1F5: LDA.b $05\n#_1DC1F7: AND.b #$F0\n#_1DC1F9: ORA.b #$0D\n#_1DC1FB: INY\n#_1DC1FC: STA.b ($90),Y\n\n#_1DC1FE: PHY\n\n#_1DC1FF: TYA\n#_1DC200: LSR A\n#_1DC201: LSR A\n#_1DC202: TAY\n\n#_1DC203: LDA.b $0F\n#_1DC205: STA.b ($92),Y\n\n#_1DC207: PLY\n#_1DC208: INY\n\n#_1DC209: INX\n#_1DC20A: INX\n\n#_1DC20B: DEC.b $0D\n#_1DC20D: BPL .next_link\n\n; ---------------------------------------------------------\n\n#_1DC20F: PLX\n\n#_1DC210: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CheckDamageToAndFromLink_Bank1D", + "code": "Sprite_CheckDamageToAndFromLink_Bank1D:\n#_1DC211: JSL Sprite_CheckDamageFromLink_long\n#_1DC215: JSL Sprite_CheckDamageToLink_long\n\n#_1DC219: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteModule_Active_Bank1D", + "code": "SpriteModule_Active_Bank1D:\n#_1DC21A: PHB\n#_1DC21B: PHK\n#_1DC21C: PLB\n\n#_1DC21D: JSR .main\n\n#_1DC220: PLB\n\n#_1DC221: RTL", + "file": "bank_1D.asm" + }, + { + "name": "TektiteSpeed", + "code": "TektiteSpeed:\n.x\n#_1DC26D: db 16, -16, 16, -16\n\n.y\n#_1DC271: db 16, 16, -16, -16\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C9_Tektite", + "code": "Sprite_C9_Tektite:\n#_1DC275: LDA.w $0EC0,X\n#_1DC278: BEQ Tektite\n\n#_1DC27A: STA.w $0BA0,X\n#_1DC27D: PHA\n\n#_1DC27E: LDA.b #$30\n#_1DC280: STA.w $0B89,X\n\n#_1DC283: PLA\n#_1DC284: DEC A\n#_1DC285: JSL JumpTableLocal\n#_1DC289: dw Sprite_PhantomGanon\n#_1DC28B: dw Sprite_GanonTrident\n#_1DC28D: dw FireBat_Spiral\n#_1DC28F: dw FireBat_Launched\n#_1DC291: dw FireBat_Trailer\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Tektite", + "code": "Tektite:\n#_1DC293: LDA.w $0E00,X\n#_1DC296: BEQ .use_current_draw\n\n#_1DC298: STZ.w $0DC0,X\n\n.use_current_draw\n#_1DC29B: JSR SpriteDraw_Tektite\n\n#_1DC29E: JSR Sprite_CheckIfActive_Bank1D\n#_1DC2A1: JSR Sprite_CheckIfRecoiling_Bank1D\n#_1DC2A4: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DC2A7: JSR Sprite_Move_XYZ_Bank1D\n#_1DC2AA: JSR Sprite_BounceFromTileCollision\n\n#_1DC2AD: LDA.w $0F80,X\n#_1DC2B0: SEC\n#_1DC2B1: SBC.b #$01\n#_1DC2B3: STA.w $0F80,X\n\n#_1DC2B6: LDA.w $0F70,X\n#_1DC2B9: BPL .airborne\n\n#_1DC2BB: STZ.w $0F70,X\n#_1DC2BE: STZ.w $0F80,X\n\n.airborne\n#_1DC2C1: LDA.w $0D80,X\n#_1DC2C4: JSL JumpTableLocal\n#_1DC2C8: dw Tektite_Idle\n#_1DC2CA: dw Tektite_Midjump\n#_1DC2CC: dw Tektite_Bouncy\n\n; =========================================================\n\npool Tektite_Idle\n\n.direction\n#_1DC2CE: db $03, $02, $01, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Tektite_Idle", + "code": "Tektite_Idle:\n#_1DC2D2: JSR Sprite_DirectionToFaceLink_Bank1D\n\n#_1DC2D5: LDA.b $0E\n#_1DC2D7: CLC\n#_1DC2D8: ADC.b #$28\n#_1DC2DA: CMP.b #$50\n#_1DC2DC: BCS .dont_dodge\n\n#_1DC2DE: LDA.b $0F\n#_1DC2E0: CLC\n#_1DC2E1: ADC.b #$28\n#_1DC2E3: CMP.b #$50\n#_1DC2E5: BCS .dont_dodge\n\n#_1DC2E7: LDA.b $44\n#_1DC2E9: CMP.b #$80\n#_1DC2EB: BEQ .dont_dodge\n\n#_1DC2ED: LDA.w $0F70,X\n#_1DC2F0: ORA.w $0F00,X\n#_1DC2F3: BNE .dont_dodge\n\n#_1DC2F5: LDA.b $EE\n#_1DC2F7: CMP.w $0F20,X\n#_1DC2FA: BNE .dont_dodge\n\n; ---------------------------------------------------------\n\n#_1DC2FC: STY.b $00\n\n#_1DC2FE: LDA.b $2F\n#_1DC300: LSR A\n#_1DC301: TAY\n\n#_1DC302: LDA.b $00\n#_1DC304: CMP.w .direction,Y\n#_1DC307: BEQ .dont_dodge\n\n; ---------------------------------------------------------\n\n#_1DC309: LDA.b #$20\n#_1DC30B: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DC30F: LDA.b $01\n#_1DC311: EOR.b #$FF\n#_1DC313: INC A\n#_1DC314: STA.w $0D50,X\n\n#_1DC317: LDA.b $00\n#_1DC319: EOR.b #$FF\n#_1DC31B: INC A\n#_1DC31C: STA.w $0D40,X\n\n#_1DC31F: LDA.b #$10\n#_1DC321: STA.w $0F80,X\n\n#_1DC324: INC.w $0D80,X\n\n#_1DC327: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Tektite_Midjump", + "code": "Tektite_Midjump:\n#_1DC388: LDA.w $0F70,X\n#_1DC38B: BNE .airborne\n\n; ---------------------------------------------------------\n\n#Tektite_GoIdle:\n#_1DC38D: STZ.w $0D80,X\n\n#_1DC390: JSL GetRandomNumber\n#_1DC394: AND.b #$3F\n#_1DC396: ADC.b #$48\n#_1DC398: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n#Sprite_ZeroVelocity_XY_Bank1D:\n#_1DC39B: STZ.w $0D40,X\n#_1DC39E: STZ.w $0D50,X\n\n#_1DC3A1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Tektite_Bouncy", + "code": "Tektite_Bouncy:\n#_1DC3A8: LDA.w $0DF0,X\n#_1DC3AB: BEQ Tektite_GoIdle\n\n#_1DC3AD: LDA.w $0F70,X\n#_1DC3B0: BNE .airborne\n\n#_1DC3B2: LDA.b #$0C\n#_1DC3B4: STA.w $0F80,X\n\n#_1DC3B7: INC.w $0F70,X\n\n#_1DC3BA: LDA.b #$08\n#_1DC3BC: STA.w $0E00,X\n\n.airborne\n#_1DC3BF: LDA.b #$02\n#_1DC3C1: STA.w $0DC0,X\n\n#_1DC3C4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Tektite", + "code": "SpriteDraw_Tektite:\n#_1DC3F5: LDA.b #$00\n#_1DC3F7: XBA\n#_1DC3F8: LDA.w $0DC0,X\n\n#_1DC3FB: REP #$20\n\n#_1DC3FD: ASL A\n#_1DC3FE: ASL A\n#_1DC3FF: ASL A\n#_1DC400: ASL A\n#_1DC401: ADC.w #.oam_groups\n#_1DC404: STA.b $08\n\n#_1DC406: SEP #$20\n\n#_1DC408: LDA.b #$02\n#_1DC40A: JSR SpriteDraw_Tabulated_Bank1D\n#_1DC40D: JSL SpriteDraw_Shadow_long\n\n#_1DC411: RTS", + "file": "bank_1D.asm" + }, + { + "name": "UNREACHABLE_1DC412", + "code": "UNREACHABLE_1DC412:\n#_1DC412: db $08, $F8\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C8_BigFairy", + "code": "Sprite_C8_BigFairy:\n#_1DC414: LDA.w $0EB0,X\n#_1DC417: BNE FairyCloud\n\n#_1DC419: JMP.w BigFairy\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FairyCloud", + "code": "FairyCloud:\n#_1DC41C: JSL Sprite_PrepOAMCoord_long\n#_1DC420: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DC423: INC.w $0E80,X\n#_1DC426: JSR SpriteDraw_FairyCloud\n\n#_1DC429: LDA.w $0E80,X\n#_1DC42C: AND.b #$1F\n#_1DC42E: BNE .no_sfx\n\n#_1DC430: LDA.b #$31 ; SFX2.31\n#_1DC432: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_sfx\n#_1DC436: LDA.w $0D80,X\n#_1DC439: JSL JumpTableLocal\n#_1DC43D: dw FairyCloud_ApproachLink\n#_1DC43F: dw FairyCloud_WaitForHeal\n#_1DC441: dw FairyCloud_Dissipate\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "FairyCloud_ApproachLink", + "code": "FairyCloud_ApproachLink:\n#_1DC443: LDA.b #$00\n#_1DC445: STA.w $0D90,X\n\n#_1DC448: LDA.b #$08\n#_1DC44A: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DC44E: JSR Sprite_Move_XY_Bank1D\n#_1DC451: JSL Sprite_Get16BitCoords_long\n\n; ---------------------------------------------------------\n\n#_1DC455: REP #$20\n\n#_1DC457: LDA.b $22\n#_1DC459: SEC\n#_1DC45A: SBC.w $0FD8\n#_1DC45D: CLC\n#_1DC45E: ADC.w #$0003\n#_1DC461: CMP.w #$0006\n#_1DC464: BCS .exit\n\n#_1DC466: LDA.b $20\n#_1DC468: SEC\n#_1DC469: SBC.w $0FDA\n#_1DC46C: CLC\n#_1DC46D: ADC.w #$000B\n#_1DC470: CMP.w #$0006\n#_1DC473: BCS .exit\n\n#_1DC475: LDA.w #$00A0\n#_1DC478: CLC\n#_1DC479: ADC.l $7EF372\n#_1DC47D: STA.l $7EF372\n\n#_1DC481: SEP #$20\n\n#_1DC483: INC.w $0D80,X\n\n.exit\n#_1DC486: SEP #$20\n\n#_1DC488: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FairyCloud_WaitForHeal", + "code": "FairyCloud_WaitForHeal:\n#_1DC489: LDA.l $7EF36D\n#_1DC48D: CMP.l $7EF36C\n#_1DC491: BNE .need_more_health\n\n#_1DC493: INC.w $0D80,X\n\n#_1DC496: LDA.b #$70\n#_1DC498: STA.w $0E10\n\n.need_more_health\n#_1DC49B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "FairyCloud_Dissipate", + "code": "FairyCloud_Dissipate:\n#_1DC49C: LDA.w $0E80,X\n#_1DC49F: AND.b #$0F\n#_1DC4A1: BNE .exit\n\n#_1DC4A3: LDA.w $0D90,X\n#_1DC4A6: BMI .exit\n\n#_1DC4A8: SEC\n#_1DC4A9: ROL.w $0D90,X\n\n#_1DC4AC: LDA.w $0D90,X\n#_1DC4AF: CMP.b #$80\n#_1DC4B1: BCC .exit\n\n#_1DC4B3: LDA.b #$FF\n#_1DC4B5: STA.w $0D90,X\n\n#_1DC4B8: STZ.w $02E4\n#_1DC4BB: STZ.w $0DD0,X\n\n.exit\n#_1DC4BE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "BigFairy", + "code": "BigFairy:\n#_1DC4BF: LDA.w $0E10,X\n#_1DC4C2: BEQ .continue\n\n#_1DC4C4: CMP.b #$40\n#_1DC4C6: BCS .continue\n\n#_1DC4C8: DEC A\n#_1DC4C9: BNE .dont_die\n\n#_1DC4CB: STZ.w $0DD0,X\n\n.dont_die\n#_1DC4CE: LSR A\n#_1DC4CF: BCC .continue\n\n#_1DC4D1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "BigFairy_WaitForLink", + "code": "BigFairy_WaitForLink:\n#_1DC4F9: JSR SpriteDraw_FairyCloud\n\n#_1DC4FC: LDA.b #$01\n#_1DC4FE: STA.w $0D90,X\n\n#_1DC501: JSR Sprite_DirectionToFaceLink_Bank1D\n\n#_1DC504: LDA.b $0F\n#_1DC506: CLC\n#_1DC507: ADC.b #$30\n#_1DC509: CMP.b #$60\n#_1DC50B: BCS .exit\n\n#_1DC50D: LDA.b $0E\n#_1DC50F: CLC\n#_1DC510: ADC.b #$30\n#_1DC512: CMP.b #$60\n#_1DC514: BCS .exit\n\n; ---------------------------------------------------------\n\n#_1DC516: JSL Link_CancelDash_long\n\n#_1DC51A: INC.w $0D80,X\n\n#_1DC51D: LDA.b #$5A ; MESSAGE 015A\n#_1DC51F: STA.w $1CF0\n\n#_1DC522: LDA.b #$01\n#_1DC524: STA.w $1CF1\n\n#_1DC527: JSL Sprite_ShowMessageMinimal\n\n; ---------------------------------------------------------\n\n#_1DC52B: LDA.b #$01\n#_1DC52D: STA.w $02E4\n\n#_1DC530: LDA.b #$C8 ; SPRITE C8\n#_1DC532: JSL Sprite_SpawnDynamically\n#_1DC536: JSL Sprite_SetSpawnedCoordinates\n\n#_1DC53A: LDA.b #$01\n#_1DC53C: STA.w $0EB0,Y\n\n#_1DC53F: LDA.w $0D00,Y\n#_1DC542: SEC\n#_1DC543: SBC.w $0F70,X\n#_1DC546: STA.w $0D00,Y\n\n#_1DC549: LDA.b #$00\n#_1DC54B: STA.w $0F70,Y\n\n.exit\n#_1DC54E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "BigFairy_DoAbsolutelyNothing", + "code": "BigFairy_DoAbsolutelyNothing:\n#_1DC54F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_BigFairy", + "code": "SpriteDraw_BigFairy:\n#_1DC5D0: LDA.b #$00\n#_1DC5D2: XBA\n#_1DC5D3: LDA.w $0DC0,X\n\n#_1DC5D6: REP #$20\n\n#_1DC5D8: ASL A\n#_1DC5D9: ASL A\n#_1DC5DA: ASL A\n#_1DC5DB: ASL A\n#_1DC5DC: ASL A\n\n#_1DC5DD: ADC.w #.oam_groups\n#_1DC5E0: STA.b $08\n\n#_1DC5E2: SEP #$20\n\n#_1DC5E4: LDA.b #$04\n#_1DC5E6: JSR SpriteDraw_Tabulated_Bank1D\n#_1DC5E9: JSL SpriteDraw_Shadow_long\n\n#_1DC5ED: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_FairyCloud", + "code": "SpriteDraw_FairyCloud:\n#_1DC616: LDA.w $0D90,X\n#_1DC619: BMI .exit\n\n#_1DC61B: AND.w $0E80,X\n#_1DC61E: BNE .exit\n\n#_1DC620: JSL GetRandomNumber\n#_1DC624: AND.b #$07\n#_1DC626: TAY\n\n#_1DC627: LDA.w .offset_index,Y\n#_1DC62A: TAY\n\n#_1DC62B: LDA.w .offset_low,Y\n#_1DC62E: STA.b $00\n\n#_1DC630: LDA.w .offset_high,Y\n#_1DC633: STA.b $01\n\n#_1DC635: JSL GetRandomNumber\n#_1DC639: AND.b #$07\n#_1DC63B: TAY\n\n#_1DC63C: LDA.w .offset_index,Y\n#_1DC63F: TAY\n\n#_1DC640: LDA.w .offset_low,Y\n#_1DC643: STA.b $02\n\n#_1DC645: LDA.w .offset_high,Y\n#_1DC648: STA.b $03\n\n#_1DC64A: JSL GarnishSpawn_Sparkle\n\n.exit\n#_1DC64E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C7_Pokey", + "code": "Sprite_C7_Pokey:\n#_1DC64F: LDA.w $0DB0,X\n#_1DC652: BEQ Pokey_FullStack\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "PokeyPart", + "code": "PokeyPart:\n#_1DC654: JSL SpriteDraw_SingleLarge_long\n#_1DC658: JSR Sprite_CheckIfActive_Bank1D\n#_1DC65B: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n#_1DC65E: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DC661: DEC.w $0F80,X\n#_1DC664: DEC.w $0F80,X\n\n#_1DC667: LDA.w $0F70,X\n#_1DC66A: BPL .no_bounce\n\n#_1DC66C: LDA.b #$10\n#_1DC66E: STA.w $0F80,X\n#_1DC671: STZ.w $0F70,X\n\n.no_bounce\n#_1DC674: JSR Sprite_BounceFromTileCollision\n#_1DC677: BEQ .no_tile_collision\n\n#_1DC679: LDA.b #$21 ; SFX2.21\n#_1DC67B: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_tile_collision\n#_1DC67F: LDA.w $0ED0,X\n#_1DC682: CMP.b #$03\n#_1DC684: BCC .exit\n\n#_1DC686: LDA.b #$06\n#_1DC688: STA.w $0DD0,X\n\n#_1DC68B: LDA.b #$0A\n#_1DC68D: STA.w $0DF0,X\n\n#_1DC690: STZ.w $0BE0,X\n\n#_1DC693: LDA.b #$1E ; SFX2.1E\n#_1DC695: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DC699: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Pokey_FullStack", + "code": "Pokey_FullStack:\n#_1DC69A: JSR SpriteDraw_Pokey\n#_1DC69D: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DC6A0: LDA.w $0EA0,X\n#_1DC6A3: BEQ .no_PLP ; for PulL from stack Pokey\n\n#_1DC6A5: LDY.w $0D90,X\n#_1DC6A8: BEQ .no_PLP\n\n#_1DC6AA: CMP.b #$0F\n#_1DC6AC: BNE .no_PLP\n\n#_1DC6AE: LDA.b #$06\n#_1DC6B0: STA.w $0EA0,X\n\n#_1DC6B3: LDA.w $0F70,X\n#_1DC6B6: CLC\n#_1DC6B7: ADC.w $0DA0,X\n#_1DC6BA: STA.w $0F70,X\n\n#_1DC6BD: DEC.w $0D90,X\n#_1DC6C0: BNE .dont_restore_hp\n\n#_1DC6C2: LDA.b #$11\n#_1DC6C4: STA.w $0E50,X\n\n; ---------------------------------------------------------\n\n.dont_restore_hp\n#_1DC6C7: LDA.w $0D50,X\n#_1DC6CA: BPL .x_positive\n\n#_1DC6CC: SEC\n#_1DC6CD: SBC.b #$08\n\n.x_positive\n#_1DC6CF: CLC\n#_1DC6D0: ADC.b #$04\n#_1DC6D2: STA.w $0D50,X\n\n#_1DC6D5: LDA.w $0D40,X\n#_1DC6D8: BPL .y_positive\n\n#_1DC6DA: SEC\n#_1DC6DB: SBC.b #$08\n\n.y_positive\n#_1DC6DD: CLC\n#_1DC6DE: ADC.b #$04\n#_1DC6E0: STA.w $0D40,X\n\n; ---------------------------------------------------------\n\n#_1DC6E3: LDA.b #$C7 ; SPRITE C7\n#_1DC6E5: JSL Sprite_SpawnDynamically\n#_1DC6E9: BMI .no_PLP\n\n#_1DC6EB: JSL Sprite_SetSpawnedCoordinates\n\n#_1DC6EF: LDA.b #$01\n#_1DC6F1: STA.w $0DB0,Y\n#_1DC6F4: STA.w $0E50,Y\n\n#_1DC6F7: LDA.w $0F40,X\n#_1DC6FA: STA.w $0D50,Y\n\n#_1DC6FD: LDA.w $0F30,X\n#_1DC700: STA.w $0D40,Y\n\n#_1DC703: LDA.b #$40\n#_1DC705: STA.w $0CAA,Y\n\n; ---------------------------------------------------------\n\n.no_PLP\n#_1DC708: JSR Sprite_CheckIfRecoiling_Bank1D\n#_1DC70B: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DC70E: LDA.w $0D80,X\n#_1DC711: JSL JumpTableLocal\n#_1DC715: dw Pokey_ResetBounce\n#_1DC717: dw Pokey_MoveFaster\n\n; =========================================================\n\npool Pokey_ResetBounce\n\n.spacing\n#_1DC719: db 8, 7, 6, 5\n#_1DC71D: db 4, 5, 6, 7\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Pokey_ResetBounce", + "code": "Pokey_ResetBounce:\n#_1DC721: LDA.w $0DF0,X\n#_1DC724: BNE .delay\n\n#_1DC726: INC.w $0D80,X\n\n#_1DC729: LDA.b #$10\n#_1DC72B: STA.w $0F80,X\n\n#_1DC72E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Pokey_MoveFaster", + "code": "Pokey_MoveFaster:\n#_1DC738: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DC73B: DEC.w $0F80,X\n#_1DC73E: DEC.w $0F80,X\n\n#_1DC741: LDA.w $0F70,X\n#_1DC744: BPL Sprite_BounceFromTileCollision\n\n#_1DC746: STZ.w $0F70,X\n#_1DC749: STZ.w $0D80,X\n\n#_1DC74C: LDA.b #$0F\n#_1DC74E: STA.w $0DF0,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_BounceFromTileCollision", + "code": "Sprite_BounceFromTileCollision:\n#_1DC751: JSR Sprite_CheckTileCollision_Bank1D\n#_1DC754: AND.b #$03\n#_1DC756: BEQ .no_bounce\n\n#_1DC758: LDA.w $0D50,X\n#_1DC75B: EOR.b #$FF\n#_1DC75D: INC A\n#_1DC75E: STA.w $0D50,X\n\n#_1DC761: INC.w $0ED0,X\n\n.no_bounce\n#_1DC764: LDA.w $0E70,X\n#_1DC767: AND.b #$0C\n#_1DC769: BEQ .exit\n\n#_1DC76B: LDA.w $0D40,X\n#_1DC76E: EOR.b #$FF\n#_1DC770: INC A\n#_1DC771: STA.w $0D40,X\n\n#_1DC774: INC.w $0ED0,X\n\n.exit\n#_1DC777: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_BounceFromTileCollision_long", + "code": "Sprite_BounceFromTileCollision_long:\n#_1DC778: JSR Sprite_BounceFromTileCollision\n\n#_1DC77B: RTL", + "file": "bank_1D.asm" + }, + { + "name": "UNREACHABLE_1DC77C", + "code": "UNREACHABLE_1DC77C:\n#_1DC77C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Pokey", + "code": "SpriteDraw_Pokey:\n#_1DC77D: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1DC780: LDA.w $0DA0,X\n#_1DC783: STA.b $06\n#_1DC785: STZ.b $07\n\n#_1DC787: PHX\n\n#_1DC788: LDA.w $0D90,X\n#_1DC78B: TAX\n\n#_1DC78C: TYA\n#_1DC78D: CLC\n#_1DC78E: ADC.b #$0C\n#_1DC790: TAY\n\n; ---------------------------------------------------------\n\n.next_object\n#_1DC791: REP #$20\n\n#_1DC793: LDA.b $00\n#_1DC795: STA.b ($90),Y\n\n#_1DC797: AND.w #$0100\n#_1DC79A: STA.b $0E\n#_1DC79C: INY\n\n#_1DC79D: LDA.b $02\n#_1DC79F: PHA\n\n#_1DC7A0: SEC\n#_1DC7A1: SBC.b $06\n#_1DC7A3: STA.b $02\n\n#_1DC7A5: PLA\n#_1DC7A6: STA.b ($90),Y\n\n#_1DC7A8: CLC\n#_1DC7A9: ADC.w #$0010\n#_1DC7AC: CMP.w #$0100\n\n#_1DC7AF: SEP #$20\n#_1DC7B1: BCC .on_screen\n\n#_1DC7B3: LDA.b #$F0\n#_1DC7B5: STA.b ($90),Y\n\n.on_screen\n#_1DC7B7: LDA.b #$A0\n#_1DC7B9: CPX.b #$00\n#_1DC7BB: BNE .not_head\n\n#_1DC7BD: LDA.b #$A2\n\n; ---------------------------------------------------------\n\n.not_head\n#_1DC7BF: PHX\n\n#_1DC7C0: LDX.b $06\n#_1DC7C2: CPX.b #$07\n#_1DC7C4: BCS .no_squish\n\n#_1DC7C6: SEC\n#_1DC7C7: SBC.b #$20\n\n; ---------------------------------------------------------\n\n.no_squish\n#_1DC7C9: PLX\n\n#_1DC7CA: INY\n#_1DC7CB: STA.b ($90),Y\n\n#_1DC7CD: LDA.b $05\n#_1DC7CF: INY\n#_1DC7D0: STA.b ($90),Y\n\n#_1DC7D2: PHY\n\n#_1DC7D3: TYA\n#_1DC7D4: LSR A\n#_1DC7D5: LSR A\n#_1DC7D6: TAY\n\n#_1DC7D7: LDA.b #$02\n#_1DC7D9: ORA.b $0F\n#_1DC7DB: STA.b ($92),Y\n\n#_1DC7DD: PLA\n#_1DC7DE: SEC\n#_1DC7DF: SBC.b #$07\n#_1DC7E1: TAY\n\n#_1DC7E2: DEX\n#_1DC7E3: BPL .next_object\n\n; ---------------------------------------------------------\n\n#_1DC7E5: PLX\n\n#_1DC7E6: JSL SpriteDraw_Shadow_long\n\n#_1DC7EA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C5_Medusa", + "code": "Sprite_C5_Medusa:\n#_1DC7EB: JSL Sprite_PrepOAMCoord_long\n\n#_1DC7EF: LDA.b $1B\n#_1DC7F1: BNE Medusa\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "PoeInGrave", + "code": "PoeInGrave:\n#_1DC7F3: LDA.b #$FF\n#_1DC7F5: STA.w $0D50,X\n#_1DC7F8: STA.w $0E30,X\n\n#_1DC7FB: JSR Sprite_CheckTileCollision_Bank1D\n#_1DC7FE: BEQ .exit\n\n; ---------------------------------------------------------\n\n#_1DC800: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DC803: LDA.b #$19 ; SPRITE 19\n#_1DC805: STA.w $0E20,X\n\n#_1DC808: JSL SpritePrep_LoadProperties\n#_1DC80C: INC.w $0E90,X\n\n#_1DC80F: LDA.w $0D10,X\n#_1DC812: ADC.b #$08\n#_1DC814: STA.w $0D10,X\n\n#_1DC817: LDA.w $0D00,X\n#_1DC81A: SBC.b #$07\n#_1DC81C: STA.w $0D00,X\n\n#_1DC81F: LDA.b #$19 ; SFX3.19\n#_1DC821: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DC825: LDA.b #$80\n#_1DC827: STA.w $0CAA,X\n\n; ---------------------------------------------------------\n\n.exit\n#_1DC82A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Medusa", + "code": "Medusa:\n#_1DC82B: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DC82E: INC.w $0E80,X\n\n#_1DC831: LDA.w $0E80,X\n#_1DC834: AND.b #$7F\n#_1DC836: BNE .exit\n\n#_1DC838: LDA.w $0F20,X\n#_1DC83B: CMP.b $EE\n#_1DC83D: BNE .exit\n\n#_1DC83F: JSL Sprite_SpawnFireball\n#_1DC843: BMI .exit\n\n; ---------------------------------------------------------\n\n#Fireball_Configure:\n#_1DC845: LDA.w $0CAA,Y\n#_1DC848: ORA.b #$08\n#_1DC84A: STA.w $0CAA,Y\n\n#_1DC84D: LDA.b #$04\n#_1DC84F: STA.w $0CD2,Y\n\n.exit\n#_1DC852: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C6_4WayShooter", + "code": "Sprite_C6_4WayShooter:\n#_1DC869: JSL Sprite_PrepOAMCoord_long\n#_1DC86D: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DC870: LDA.w $0DF0,X\n#_1DC873: BEQ .check_for_swing\n\n#_1DC875: CMP.b #$18\n#_1DC877: BNE .exit_a\n\n#_1DC879: JSL Sprite_SpawnFireball\n#_1DC87D: BMI .exit_a\n\n#_1DC87F: JSR Fireball_Configure\n\n#_1DC882: PHX\n#_1DC883: TYX\n\n#_1DC884: JSR Sprite_DirectionToFaceLink_Bank1D\n\n#_1DC887: LDA.w .speed_x,Y\n#_1DC88A: STA.w $0D50,X\n\n#_1DC88D: LDA.w .speed_y,Y\n#_1DC890: STA.w $0D40,X\n\n#_1DC893: LDA.w $0D10,X\n#_1DC896: CLC\n#_1DC897: ADC.w .offset_x_low,Y\n#_1DC89A: STA.w $0D10,X\n\n#_1DC89D: LDA.w $0D30,X\n#_1DC8A0: ADC.w .offset_x_high,Y\n#_1DC8A3: STA.w $0D30,X\n\n#_1DC8A6: LDA.w $0D00,X\n#_1DC8A9: CLC\n#_1DC8AA: ADC.w .offset_y_low,Y\n#_1DC8AD: STA.w $0D00,X\n\n#_1DC8B0: LDA.w $0D20,X\n#_1DC8B3: ADC.w .offset_y_high,Y\n#_1DC8B6: STA.w $0D20,X\n\n#_1DC8B9: PLX\n\n.exit_a\n#_1DC8BA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_anim_step", + "code": "Thief_anim_step:\n.standing\n#_1DC8CC: db $0B, $08, $02, $05\n\n.watching\n#_1DC8D0: db $09, $06, $00, $03, $0A, $07, $01, $04\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C4_Thief", + "code": "Sprite_C4_Thief:\n#_1DC8D8: JSL SpriteDraw_Thief\n#_1DC8DC: JSR Sprite_CheckIfActive_Bank1D\n#_1DC8DF: JSR Sprite_CheckIfRecoiling_Bank1D\n#_1DC8E2: JSL Sprite_CheckDamageFromLink_long\n\n#_1DC8E6: LDA.w $0D80,X\n#_1DC8E9: CMP.b #$03\n#_1DC8EB: BEQ .dont_face_link\n\n; ---------------------------------------------------------\n\n#_1DC8ED: JSR Sprite_DirectionToFaceLink_Bank1D\n#_1DC8F0: TYA\n\n#_1DC8F1: STA.w $0EB0,X\n#_1DC8F4: EOR.w $0DE0,X\n#_1DC8F7: CMP.b #$01\n#_1DC8F9: BNE .dont_face_link\n\n#_1DC8FB: TYA\n#_1DC8FC: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.dont_face_link\n#_1DC8FF: LDA.w $0D80,X\n#_1DC902: JSL JumpTableLocal\n#_1DC906: dw Thief_Loitering\n#_1DC908: dw Thief_Watching\n#_1DC90A: dw Thief_Chasing\n#_1DC90C: dw Thief_Stealing\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Thief_Loitering", + "code": "Thief_Loitering:\n#_1DC90E: JSR Thief_CheckCollisionWithLink\n\n#_1DC911: LDA.w $0DF0,X\n#_1DC914: BNE .dont_look\n\n; ---------------------------------------------------------\n\n#_1DC916: REP #$20\n\n#_1DC918: LDA.b $22\n#_1DC91A: SEC\n#_1DC91B: SBC.w $0FD8\n#_1DC91E: CLC\n#_1DC91F: ADC.w #$0050\n\n#_1DC922: CMP.w #$00A0\n#_1DC925: BCS .dont_look\n\n; ---------------------------------------------------------\n\n#_1DC927: LDA.b $20\n#_1DC929: SEC\n#_1DC92A: SBC.w $0FDA\n#_1DC92D: CLC\n#_1DC92E: ADC.w #$0050\n\n#_1DC931: CMP.w #$00A0\n#_1DC934: BCS .dont_look\n\n; ---------------------------------------------------------\n\n#_1DC936: SEP #$20\n\n#_1DC938: INC.w $0D80,X\n\n#_1DC93B: LDA.b #$10\n#_1DC93D: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.dont_look\n#_1DC940: SEP #$20\n\n#_1DC942: LDY.w $0DE0,X\n\n#_1DC945: LDA.w Thief_anim_step_standing,Y\n#_1DC948: STA.w $0DC0,X\n\n#_1DC94B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_Watching", + "code": "Thief_Watching:\n#_1DC94C: JSR Thief_CheckCollisionWithLink\n#_1DC94F: JSR Sprite_DirectionToFaceLink_Bank1D\n\n#_1DC952: TYA\n#_1DC953: STA.w $0EB0,X\n#_1DC956: STA.w $0DE0,X\n\n#_1DC959: LDA.w $0DF0,X\n#_1DC95C: BNE Thief_TrackHead\n\n#_1DC95E: INC.w $0D80,X\n\n#_1DC961: LDA.b #$20\n#_1DC963: STA.w $0DF0,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Thief_TrackHead", + "code": "Thief_TrackHead:\n#_1DC966: LDA.b $1A\n#_1DC968: AND.b #$1F\n#_1DC96A: BNE Thief_Animate\n\n#_1DC96C: LDA.w $0EB0,X\n#_1DC96F: STA.w $0DE0,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Thief_Animate", + "code": "Thief_Animate:\n#_1DC972: INC.w $0E80,X\n\n#_1DC975: LDA.w $0E80,X\n#_1DC978: AND.b #$04\n#_1DC97A: ORA.w $0DE0,X\n#_1DC97D: TAY\n\n#_1DC97E: LDA.w Thief_anim_step_watching,Y\n#_1DC981: STA.w $0DC0,X\n\n#_1DC984: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_Chasing", + "code": "Thief_Chasing:\n#_1DC985: LDA.b #$12\n#_1DC987: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DC98B: LDA.w $0E70,X\n#_1DC98E: BNE .tile_collision\n\n#_1DC990: JSR Sprite_Move_XY_Bank1D\n\n; ---------------------------------------------------------\n\n.tile_collision\n#_1DC993: JSR Sprite_CheckTileCollision_Bank1D\n\n#_1DC996: LDA.w $0DF0,X\n#_1DC999: BNE .delay\n\n; ---------------------------------------------------------\n\n#_1DC99B: REP #$20\n\n#_1DC99D: LDA.b $22\n#_1DC99F: SEC\n#_1DC9A0: SBC.w $0FD8\n#_1DC9A3: CLC\n#_1DC9A4: ADC.w #$0050\n\n#_1DC9A7: CMP.w #$00A0\n#_1DC9AA: BCS .link_not_close\n\n#_1DC9AC: LDA.b $20\n#_1DC9AE: SEC\n#_1DC9AF: SBC.w $0FDA\n#_1DC9B2: CLC\n#_1DC9B3: ADC.w #$0050\n\n#_1DC9B6: CMP.w #$00A0\n#_1DC9B9: BCC .delay\n\n.link_not_close\n#_1DC9BB: SEP #$20\n\n#_1DC9BD: STZ.w $0D80,X\n\n#_1DC9C0: LDA.b #$80\n#_1DC9C2: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.delay\n#_1DC9C5: SEP #$20\n\n#_1DC9C7: JSL Sprite_CheckDamageToLink_long\n#_1DC9CB: BCC .no_bump\n\n#_1DC9CD: INC.w $0D80,X\n\n#_1DC9D0: LDA.b #$20\n#_1DC9D2: STA.w $0DF0,X\n\n#_1DC9D5: JSR Thief_SpillItems\n#_1DC9D8: JSR Thief_MakeBOMPNoise\n\n.no_bump\n#_1DC9DB: JSR Thief_TrackHead\n\n#_1DC9DE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_Stealing", + "code": "Thief_Stealing:\n#_1DC9DF: JSR Thief_CheckCollisionWithLink\n#_1DC9E2: JSR Thief_ScanForBooty\n\n#_1DC9E5: PHY\n\n#_1DC9E6: LDA.w $0DF0,X\n#_1DC9E9: BNE .wait_for_booty\n\n#_1DC9EB: JSR Thief_Animate\n\n#_1DC9EE: LDA.w $0E70,X\n#_1DC9F1: BNE .tile_collision\n\n#_1DC9F3: JSR Sprite_Move_XY_Bank1D\n\n.tile_collision\n#_1DC9F6: JSR Sprite_CheckTileCollision_Bank1D\n\n#_1DC9F9: LDA.w $0EB0,X\n#_1DC9FC: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.wait_for_booty\n#_1DC9FF: PLY\n\n#_1DCA00: TXA\n#_1DCA01: EOR.b $1A\n#_1DCA03: AND.b #$03\n#_1DCA05: BNE .exit\n\n#_1DCA07: LDA.w $0D10,Y\n#_1DCA0A: STA.b $04\n\n#_1DCA0C: LDA.w $0D30,Y\n#_1DCA0F: STA.b $05\n\n#_1DCA11: LDA.w $0D00,Y\n#_1DCA14: STA.b $06\n\n#_1DCA16: LDA.w $0D20,Y\n#_1DCA19: STA.b $07\n\n#_1DCA1B: JSL Sprite_DirectionToFaceLocation\n\n#_1DCA1F: TYA\n#_1DCA20: STA.w $0EB0,X\n\n.exit\n#_1DCA23: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_ScanForBooty", + "code": "Thief_ScanForBooty:\n#_1DCA24: LDY.b #$0F\n\n.scavenge_next\n#_1DCA26: LDA.w $0DD0,Y\n#_1DCA29: BEQ .not_worth_stealing\n\n#_1DCA2B: LDA.w $0E20,Y\n#_1DCA2E: CMP.b #$DC ; SPRITE DC - bomb\n#_1DCA30: BEQ .tango_locked\n\n#_1DCA32: CMP.b #$E1 ; SPRITE E1 - arrow\n#_1DCA34: BEQ .tango_locked\n\n#_1DCA36: CMP.b #$D9 ; SPRITE D9 - rupee\n#_1DCA38: BNE .not_worth_stealing\n\n.tango_locked\n#_1DCA3A: PHY\n\n#_1DCA3B: JSR Thief_TargetBooty\n\n#_1DCA3E: PLY\n\n#_1DCA3F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_TargetBooty", + "code": "Thief_TargetBooty:\n#_1DCA4C: TXA\n#_1DCA4D: EOR.b $1A\n#_1DCA4F: AND.b #$03\n#_1DCA51: BNE .delay_turn\n\n#_1DCA53: LDA.w $0D10,Y\n#_1DCA56: STA.b $04\n\n#_1DCA58: LDA.w $0D30,Y\n#_1DCA5B: STA.b $05\n\n#_1DCA5D: LDA.w $0D00,Y\n#_1DCA60: STA.b $06\n\n#_1DCA62: LDA.w $0D20,Y\n#_1DCA65: STA.b $07\n\n#_1DCA67: LDA.b #$13\n#_1DCA69: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1DCA6D: LDA.b $00\n#_1DCA6F: STA.w $0D40,X\n\n#_1DCA72: LDA.b $01\n#_1DCA74: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.delay_turn\n#_1DCA77: LDY.b #$0F\n\n.next_sprite\n#_1DCA79: TYA\n#_1DCA7A: EOR.b $1A\n#_1DCA7C: AND.b #$03\n\n#_1DCA7E: ORA.w $0F10,Y\n#_1DCA81: BNE .whered_it_go\n\n#_1DCA83: LDA.w $0DD0,Y\n#_1DCA86: BEQ .whered_it_go\n\n#_1DCA88: LDA.w $0E20,Y\n#_1DCA8B: CMP.b #$DC ; SPRITE DC - bomb\n#_1DCA8D: BEQ .steal_this\n\n#_1DCA8F: CMP.b #$E1 ; SPRITE E1 - arrow\n#_1DCA91: BEQ .steal_this\n\n#_1DCA93: CMP.b #$D9 ; SPRITE D9 - rupee\n#_1DCA95: BNE .whered_it_go\n\n.steal_this\n#_1DCA97: JSR Thief_GrabBooty\n\n.whered_it_go\n#_1DCA9A: DEY\n#_1DCA9B: BPL .next_sprite\n\n#_1DCA9D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_GrabBooty", + "code": "Thief_GrabBooty:\n#_1DCA9E: LDA.w $0D10,Y\n#_1DCAA1: STA.b $04\n\n#_1DCAA3: LDA.w $0D30,Y\n#_1DCAA6: STA.b $05\n\n#_1DCAA8: LDA.w $0D00,Y\n#_1DCAAB: STA.b $06\n\n#_1DCAAD: LDA.w $0D20,Y\n#_1DCAB0: STA.b $07\n\n#_1DCAB2: REP #$20\n\n#_1DCAB4: LDA.b $04\n#_1DCAB6: SEC\n#_1DCAB7: SBC.w $0FD8\n#_1DCABA: CLC\n#_1DCABB: ADC.w #$0008\n\n#_1DCABE: CMP.w #$0010\n#_1DCAC1: BCS .ungrabbable_booty\n\n#_1DCAC3: LDA.b $06\n#_1DCAC5: SEC\n#_1DCAC6: SBC.w $0FDA\n#_1DCAC9: CLC\n#_1DCACA: ADC.w #$000C\n\n#_1DCACD: CMP.w #$0018\n#_1DCAD0: BCS .ungrabbable_booty\n\n#_1DCAD2: SEP #$20\n\n#_1DCAD4: LDA.b #$00\n#_1DCAD6: STA.w $0DD0,Y\n\n#_1DCAD9: PHX\n\n#_1DCADA: LDA.w $0E20,Y\n#_1DCADD: SEC\n#_1DCADE: SBC.b #$D8\n#_1DCAE0: TAX\n\n#_1DCAE1: LDA.l Absorbable_SFX3,X\n#_1DCAE5: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DCAE9: PLX\n\n#_1DCAEA: LDA.b #$0E\n#_1DCAEC: STA.w $0DF0,X\n\n.ungrabbable_booty\n#_1DCAEF: SEP #$20\n\n#_1DCAF1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_CheckCollisionWithLink", + "code": "Thief_CheckCollisionWithLink:\n#_1DCAF2: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1DCAF6: BCC .exit\n\n#_1DCAF8: LDA.b #$20\n#_1DCAFA: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DCAFE: LDA.b $00\n#_1DCB00: STA.b $27\n\n#_1DCB02: EOR.b #$FF\n#_1DCB04: STA.w $0F30,X\n\n#_1DCB07: LDA.b $01\n#_1DCB09: STA.b $28\n\n#_1DCB0B: EOR.b #$FF\n#_1DCB0D: STA.w $0F40,X\n\n#_1DCB10: LDA.b #$04\n#_1DCB12: STA.b $46\n\n#_1DCB14: LDA.b #$0C\n#_1DCB16: STA.w $0EA0,X\n\n; =========================================================\n\n#Thief_MakeBOMPNoise:\n#_1DCB19: LDA.b #$0B ; SFX2.0B\n#_1DCB1B: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DCB1F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Thief_SpillItems", + "code": "Thief_SpillItems:\n#_1DCB30: LDA.b #$05\n#_1DCB32: STA.w $0FB5\n\n.next_item\n#_1DCB35: JSL GetRandomNumber\n#_1DCB39: AND.b #$03\n#_1DCB3B: STA.w $0FB6\n\n#_1DCB3E: DEC A\n#_1DCB3F: BEQ .steal_arrow\n\n#_1DCB41: DEC A\n#_1DCB42: BEQ .steal_bomb\n\n; ---------------------------------------------------------\n\n.steal_rupee\n#_1DCB44: REP #$20\n\n#_1DCB46: LDA.l $7EF360\n\n#_1DCB4A: SEP #$20\n\n#_1DCB4C: BRA .continue\n\n; ---------------------------------------------------------\n\n.steal_arrow\n#_1DCB4E: LDA.l $7EF377\n#_1DCB52: BRA .continue\n\n; ---------------------------------------------------------\n\n.steal_bomb\n#_1DCB54: LDA.l $7EF343\n\n; ---------------------------------------------------------\n\n.continue\n#_1DCB58: BEQ .exit\n\n#_1DCB5A: LDY.w $0FB6\n\n#_1DCB5D: LDA.w .booty_id,Y\n\n#_1DCB60: LDY.b #$07\n#_1DCB62: JSL Sprite_SpawnDynamically_slot_limited\n#_1DCB66: BMI .exit\n\n#_1DCB68: LDA.w $0FB6\n#_1DCB6B: DEC A\n#_1DCB6C: BEQ .stole_arrow\n\n#_1DCB6E: DEC A\n#_1DCB6F: BEQ .stole_bomb\n\n; ---------------------------------------------------------\n\n.stole_rupee\n#_1DCB71: REP #$20\n\n#_1DCB73: LDA.l $7EF360\n#_1DCB77: DEC A\n#_1DCB78: STA.l $7EF360\n\n#_1DCB7C: SEP #$20\n\n#_1DCB7E: BRA .spill_the_loot\n\n; ---------------------------------------------------------\n\n.stole_arrow\n#_1DCB80: LDA.l $7EF377\n#_1DCB84: DEC A\n#_1DCB85: STA.l $7EF377\n\n#_1DCB89: BRA .spill_the_loot\n\n; ---------------------------------------------------------\n\n.stole_bomb\n#_1DCB8B: LDA.l $7EF343\n#_1DCB8F: DEC A\n#_1DCB90: STA.l $7EF343\n\n; ---------------------------------------------------------\n\n.spill_the_loot\n#_1DCB94: LDA.b $22\n#_1DCB96: STA.w $0D10,Y\n\n#_1DCB99: LDA.b $23\n#_1DCB9B: STA.w $0D30,Y\n\n#_1DCB9E: LDA.b $20\n#_1DCBA0: STA.w $0D00,Y\n\n#_1DCBA3: LDA.b $21\n#_1DCBA5: STA.w $0D20,Y\n\n#_1DCBA8: LDA.b #$18\n#_1DCBAA: STA.w $0F80,Y\n\n; ---------------------------------------------------------\n\n#_1DCBAD: PHX\n\n#_1DCBAE: LDX.w $0FB5\n\n#_1DCBB1: LDA.w .speed_x,X\n#_1DCBB4: STA.w $0D50,Y\n\n#_1DCBB7: LDA.w .speed_y,X\n#_1DCBBA: STA.w $0D40,Y\n\n#_1DCBBD: PLX\n\n; ---------------------------------------------------------\n\n#_1DCBBE: LDA.b #$20\n#_1DCBC0: STA.w $0F10,Y\n\n#_1DCBC3: LDA.b #$01\n#_1DCBC5: STA.w $0EB0,Y\n\n#_1DCBC8: LDA.b #$FF\n#_1DCBCA: STA.w $0B58,Y\n\n#_1DCBCD: DEC.w $0FB5\n#_1DCBD0: BMI .exit\n\n#_1DCBD2: JMP.w .next_item\n\n; ---------------------------------------------------------\n\n.exit\n#_1DCBD5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Thief", + "code": "SpriteDraw_Thief:\n#_1DCC9E: PHB\n#_1DCC9F: PHK\n#_1DCCA0: PLB\n\n#_1DCCA1: LDA.b #$00\n#_1DCCA3: XBA\n#_1DCCA4: LDA.w $0DC0,X\n\n#_1DCCA7: REP #$20\n\n#_1DCCA9: ASL A\n#_1DCCAA: ASL A\n#_1DCCAB: ASL A\n#_1DCCAC: ASL A\n#_1DCCAD: ADC.w #.oam_groups\n#_1DCCB0: STA.b $08\n\n#_1DCCB2: SEP #$20\n\n#_1DCCB4: LDA.b #$02\n#_1DCCB6: JSR SpriteDraw_Tabulated_Bank1D\n\n; ---------------------------------------------------------\n\n#_1DCCB9: LDA.w $0F00,X\n#_1DCCBC: BNE .done\n\n#_1DCCBE: PHX\n\n#_1DCCBF: LDA.w $0EB0,X\n#_1DCCC2: TAX\n\n#_1DCCC3: LDA.w .char,X\n#_1DCCC6: LDY.b #$02\n#_1DCCC8: STA.b ($90),Y\n\n#_1DCCCA: INY\n#_1DCCCB: LDA.b ($90),Y\n#_1DCCCD: AND.b #$BF\n#_1DCCCF: ORA.w .hflip,X\n#_1DCCD2: STA.b ($90),Y\n\n#_1DCCD4: PLX\n\n#_1DCCD5: JSL SpriteDraw_Shadow_long\n\n.done\n#_1DCCD9: PLB\n\n#_1DCCDA: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_OAMFlip", + "code": "Gibo_OAMFlip:\n#_1DCCDB: db $00, $40, $C0, $80\n", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_OAMPal", + "code": "Gibo_OAMPal:\n#_1DCCDF: db $0B, $07\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C3_Gibo", + "code": "Sprite_C3_Gibo:\n#_1DCCE1: LDA.w $0DA0,X\n#_1DCCE4: BEQ Gibo_Body\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_Nucleus", + "code": "Gibo_Nucleus:\n#_1DCCE6: JSL SpriteDraw_SingleLarge_long\n#_1DCCEA: JSR Sprite_CheckIfActive_Bank1D\n#_1DCCED: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DCCF0: INC.w $0E80,X\n\n#_1DCCF3: LDA.w $0E80,X\n#_1DCCF6: LSR A\n#_1DCCF7: LSR A\n#_1DCCF8: AND.b #$03\n#_1DCCFA: TAY\n\n#_1DCCFB: LDA.w $0F50,X\n#_1DCCFE: AND.b #$3F\n#_1DCD00: ORA.w Gibo_OAMFlip,Y\n#_1DCD03: STA.w $0F50,X\n\n#_1DCD06: LDA.w $0DF0,X\n#_1DCD09: BEQ .exit\n\n#_1DCD0B: JSR Sprite_Move_XY_Bank1D\n#_1DCD0E: JSR Sprite_BounceFromTileCollision\n\n.exit\n#_1DCD11: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_Body", + "code": "Gibo_Body:\n#_1DCD12: JSR SpriteDraw_Gibo\n#_1DCD15: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DCD18: INC.w $0EC0,X\n\n#_1DCD1B: LDY.w $0EB0,X\n\n#_1DCD1E: LDA.w $0DD0,Y\n#_1DCD21: CMP.b #$06\n#_1DCD23: BNE .nucleus_alive\n\n#_1DCD25: STA.w $0DD0,X\n\n#_1DCD28: LDA.w $0DF0,Y\n#_1DCD2B: STA.w $0DF0,X\n\n#_1DCD2E: LDA.w $0E40,X\n#_1DCD31: CLC\n#_1DCD32: ADC.b #$04\n#_1DCD34: STA.w $0E40,X\n\n#_1DCD37: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_Mitosis", + "code": "Gibo_Mitosis:\n#_1DCD72: LDA.w $0DF0,X\n#_1DCD75: BNE .still_zipping_nucleic_acids\n\n#_1DCD77: INC.w $0D80,X\n\n#_1DCD7A: LDA.b #$30\n#_1DCD7C: STA.w $0DF0,X\n\n#_1DCD7F: INC.w $0D90,X\n\n#_1DCD82: LDA.b #$C3 ; SPRITE C3\n#_1DCD84: JSL Sprite_SpawnDynamically\n#_1DCD88: BMI .spawn_failed\n\n; ---------------------------------------------------------\n\n#_1DCD8A: JSL Sprite_SetSpawnedCoordinates\n\n#_1DCD8E: TYA\n#_1DCD8F: STA.w $0EB0,X\n\n#_1DCD92: LDA.b #$01\n#_1DCD94: STA.w $0E40,Y\n#_1DCD97: STA.w $0DA0,Y\n\n#_1DCD9A: LDA.b #$10\n#_1DCD9C: STA.w $0E60,Y\n\n#_1DCD9F: LDA.w $0ED0,X\n#_1DCDA2: STA.w $0E50,Y\n\n#_1DCDA5: LDA.b #$07\n#_1DCDA7: STA.w $0F50,Y\n\n#_1DCDAA: LDA.b #$30\n#_1DCDAC: STA.w $0DF0,Y\n\n#_1DCDAF: PHX\n\n#_1DCDB0: INC.w $0DB0,X\n\n#_1DCDB3: LDA.w $0DB0,X\n#_1DCDB6: CMP.b #$03\n#_1DCDB8: BNE .random_direction\n\n#_1DCDBA: STZ.w $0DB0,X\n\n#_1DCDBD: PHY\n\n#_1DCDBE: JSR Sprite_DirectionToFaceLink_Bank1D\n#_1DCDC1: TYX\n\n#_1DCDC2: PLY\n#_1DCDC3: BRA .set_speed\n\n.random_direction\n#_1DCDC5: JSL GetRandomNumber\n#_1DCDC9: AND.b #$07\n#_1DCDCB: TAX\n\n.set_speed\n#_1DCDCC: LDA.w .speed_x,X\n#_1DCDCF: STA.w $0D50,Y\n\n#_1DCDD2: LDA.w .speed_y,X\n#_1DCDD5: STA.w $0D40,Y\n\n#_1DCDD8: PLX\n\n.spawn_failed\n#_1DCDD9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_Osmosis", + "code": "Gibo_Osmosis:\n#_1DCDE2: LDA.w $0DF0,X\n#_1DCDE5: BNE .exit\n\n#_1DCDE7: INC.w $0D80,X\n\n.exit\n#_1DCDEA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Gibo_ConsumeDaughter", + "code": "Gibo_ConsumeDaughter:\n#_1DCDEB: TXA\n#_1DCDEC: EOR.b $1A\n#_1DCDEE: AND.b #$03\n#_1DCDF0: BNE .just_move\n\n; ---------------------------------------------------------\n\n#_1DCDF2: LDA.w $0D10,Y\n#_1DCDF5: STA.b $04\n\n#_1DCDF7: LDA.w $0D30,Y\n#_1DCDFA: STA.b $05\n\n#_1DCDFC: LDA.w $0D00,Y\n#_1DCDFF: STA.b $06\n\n#_1DCE01: LDA.w $0D20,Y\n#_1DCE04: STA.b $07\n\n#_1DCE06: REP #$20\n\n#_1DCE08: LDA.w $0FD8\n#_1DCE0B: SEC\n#_1DCE0C: SBC.b $04\n#_1DCE0E: CLC\n#_1DCE0F: ADC.w #$0002\n#_1DCE12: CMP.w #$0004\n#_1DCE15: BCS .come_to_momma\n\n#_1DCE17: LDA.w $0FDA\n#_1DCE1A: SEC\n#_1DCE1B: SBC.b $06\n#_1DCE1D: CLC\n#_1DCE1E: ADC.w #$0002\n#_1DCE21: CMP.w #$0004\n#_1DCE24: BCS .come_to_momma\n\n; ---------------------------------------------------------\n\n#_1DCE26: SEP #$20\n\n#_1DCE28: LDY.w $0EB0,X\n\n#_1DCE2B: LDA.b #$00\n#_1DCE2D: STA.w $0DD0,Y\n\n#_1DCE30: STZ.w $0D90,X\n#_1DCE33: STZ.w $0D80,X\n\n#_1DCE36: LDA.w $0E50,Y\n#_1DCE39: STA.w $0ED0,X\n\n#_1DCE3C: JSL GetRandomNumber\n#_1DCE40: AND.b #$1F\n#_1DCE42: ADC.b #$20\n#_1DCE44: STA.w $0DF0,X\n\n#_1DCE47: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Gibo", + "code": "SpriteDraw_Gibo:\n#_1DCF5E: LDA.w $0D90,X\n#_1DCF61: BNE .am_split\n\n#_1DCF63: LDA.w $0E40,X\n#_1DCF66: PHA\n\n; ---------------------------------------------------------\n\n#_1DCF67: LDA.b #$01\n#_1DCF69: STA.w $0E40,X\n\n#_1DCF6C: LDA.w $0E00,X\n#_1DCF6F: AND.b #$04\n#_1DCF71: LSR A\n#_1DCF72: LSR A\n#_1DCF73: STA.b $00\n\n#_1DCF75: LDA.w $0EC0,X\n#_1DCF78: LSR A\n#_1DCF79: LSR A\n#_1DCF7A: AND.b #$03\n#_1DCF7C: TAY\n\n#_1DCF7D: LDA.w $0F50,X\n\n#_1DCF80: PHA\n#_1DCF81: LDA.w Gibo_OAMFlip,Y\n\n#_1DCF84: LDY.b $00\n#_1DCF86: ORA.w Gibo_OAMPal,Y\n#_1DCF89: STA.w $0F50,X\n\n#_1DCF8C: JSL SpriteDraw_SingleLarge_long\n\n#_1DCF90: PLA\n#_1DCF91: STA.w $0F50,X\n\n#_1DCF94: PLA\n#_1DCF95: STA.w $0E40,X\n\n; ---------------------------------------------------------\n\n.am_split\n#_1DCF98: LDA.b #$00\n#_1DCF9A: XBA\n#_1DCF9B: LDA.w $0E80,X\n#_1DCF9E: CLC\n#_1DCF9F: ADC.w $0DE0,X\n\n#_1DCFA2: REP #$20\n\n#_1DCFA4: ASL A\n#_1DCFA5: ASL A\n#_1DCFA6: ASL A\n#_1DCFA7: ASL A\n#_1DCFA8: ASL A\n\n#_1DCFA9: ADC.w #.oam_groups\n#_1DCFAC: STA.b $08\n\n#_1DCFAE: REP #$20\n\n#_1DCFB0: LDA.b $90\n#_1DCFB2: CLC\n#_1DCFB3: ADC.w #$0008\n#_1DCFB6: STA.b $90\n\n#_1DCFB8: INC.b $92\n#_1DCFBA: INC.b $92\n\n#_1DCFBC: SEP #$20\n\n#_1DCFBE: LDA.b #$04\n#_1DCFC0: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n\npool Boulder\n\n.speed_z\n#_1DCFC3: db 32, 48\n\n.speed_y\n#_1DCFC5: db 8, 32\n\n.speed_x\n#_1DCFC7: db 24, 16\n#_1DCFC9: db -24, -16\n\npool off\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C2_Boulder", + "code": "Sprite_C2_Boulder:\n#_1DCFCB: LDA.b $1B\n#_1DCFCD: BEQ Boulder\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Shrapnel", + "code": "Shrapnel:\n#_1DCFCF: LDA.w $0FC6\n#_1DCFD2: CMP.b #$03\n#_1DCFD4: BCS .bad_gfx\n\n#_1DCFD6: JSL SpriteDraw_SingleSmall_long\n\n.bad_gfx\n#_1DCFDA: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DCFDD: LDA.b $1A\n#_1DCFDF: ASL A\n#_1DCFE0: ASL A\n#_1DCFE1: AND.b #$C0\n#_1DCFE3: ORA.b #$00\n#_1DCFE5: STA.w $0F50,X\n\n#_1DCFE8: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DCFEB: TXA\n#_1DCFEC: EOR.b $1A\n#_1DCFEE: AND.b #$03\n#_1DCFF0: BNE .exit\n\n; ---------------------------------------------------------\n\n#_1DCFF2: REP #$20\n\n#_1DCFF4: LDA.w $0FD8\n#_1DCFF7: SEC\n#_1DCFF8: SBC.b $22\n#_1DCFFA: CLC\n#_1DCFFB: ADC.w #$0004\n\n#_1DCFFE: CMP.w #$0010\n#_1DD001: BCS .no_overlap\n\n#_1DD003: LDA.w $0FDA\n#_1DD006: SEC\n#_1DD007: SBC.b $20\n#_1DD009: CLC\n#_1DD00A: ADC.w #$FFFC\n\n#_1DD00D: CMP.w #$000C\n#_1DD010: BCS .no_overlap\n\n#_1DD012: SEP #$20\n\n#_1DD014: JSL Sprite_AttemptDamageToLinkPlusRecoil_long\n\n.no_overlap\n#_1DD018: SEP #$20\n\n#_1DD01A: TXA\n#_1DD01B: EOR.b $1A\n#_1DD01D: AND.b #$03\n#_1DD01F: BNE .exit\n\n#_1DD021: JSR Sprite_CheckTileCollision_Bank1D\n#_1DD024: BEQ .exit\n\n#_1DD026: STZ.w $0DD0,X\n\n.exit\n#_1DD029: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Boulder", + "code": "Boulder:\n#_1DD02A: LDA.b #$30\n#_1DD02C: STA.w $0B89,X\n\n#_1DD02F: JSR SpriteDraw_Boulder\n#_1DD032: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DD035: LDA.w $0E80,X\n#_1DD038: SEC\n#_1DD039: SBC.w $0DE0,X\n#_1DD03C: STA.w $0E80,X\n\n#_1DD03F: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n#_1DD042: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DD045: DEC.w $0F80,X\n#_1DD048: DEC.w $0F80,X\n\n#_1DD04B: LDA.w $0F70,X\n#_1DD04E: BPL .exit\n\n#_1DD050: STZ.w $0F70,X\n#_1DD053: JSR Sprite_CheckTileCollision_Bank1D\n\n#_1DD056: LDY.b #$00\n\n#_1DD058: LDA.w $0E70,X\n#_1DD05B: BEQ .in_air\n\n#_1DD05D: INY\n\n.in_air\n#_1DD05E: LDA.w .speed_z,Y\n#_1DD061: STA.w $0F80,X\n\n#_1DD064: LDA.w .speed_y,Y\n#_1DD067: STA.w $0D40,X\n\n#_1DD06A: JSL GetRandomNumber\n#_1DD06E: AND.b #$01\n#_1DD070: BEQ .bounce_right\n\n.bounce_left\n#_1DD072: INY\n#_1DD073: INY\n\n.bounce_right\n#_1DD074: LDA.w .speed_x,Y\n#_1DD077: STA.w $0D50,X\n\n#_1DD07A: TYA\n\n#_1DD07B: AND.b #$02\n#_1DD07D: DEC A\n#_1DD07E: STA.w $0DE0,X\n\n#_1DD081: LDA.b #$0B ; SFX2.0B\n#_1DD083: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DD087: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Boulder", + "code": "SpriteDraw_Boulder:\n#_1DD185: LDA.b #$00\n#_1DD187: XBA\n#_1DD188: LDA.w $0E80,X\n\n#_1DD18B: LSR A\n#_1DD18C: LSR A\n#_1DD18D: LSR A\n\n#_1DD18E: AND.b #$03\n\n#_1DD190: REP #$20\n\n#_1DD192: ASL A\n#_1DD193: ASL A\n#_1DD194: ASL A\n#_1DD195: ASL A\n#_1DD196: ASL A\n#_1DD197: ADC.w #.oam_groups\n#_1DD19A: STA.b $08\n\n#_1DD19C: SEP #$20\n\n#_1DD19E: LDA.b #$04\n#_1DD1A0: JSR SpriteDraw_Tabulated_Bank1D\n#_1DD1A3: JSL SpriteDraw_BigShadow_with_altitude\n\n#_1DD1A7: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_BigShadow", + "code": "SpriteDraw_BigShadow:\n#_1DD1A8: PHB\n#_1DD1A9: PHK\n#_1DD1AA: PLB\n\n#_1DD1AB: LDY.b #$00\n\n#_1DD1AD: BRA .draw\n\n; =========================================================\n\n#SpriteDraw_BigShadow_with_altitude:\n#_1DD1AF: PHB\n#_1DD1B0: PHK\n#_1DD1B1: PLB\n\n#_1DD1B2: LDA.w $0F70,X\n#_1DD1B5: LSR A\n#_1DD1B6: LSR A\n#_1DD1B7: LSR A\n#_1DD1B8: TAY\n\n#_1DD1B9: CPY.b #$04\n#_1DD1BB: BCC .draw\n\n#_1DD1BD: LDY.b #$04\n\n; =========================================================\n\n.draw\n#_1DD1BF: LDA.w $0F70,X\n#_1DD1C2: STA.b $0E\n#_1DD1C4: STZ.b $0F\n\n#_1DD1C6: LDA.w SpriteDraw_BigShadow_data_offset,Y\n#_1DD1C9: STA.b $00\n#_1DD1CB: STZ.b $01\n\n#_1DD1CD: REP #$20\n\n#_1DD1CF: LDA.w $0FDA\n#_1DD1D2: CLC\n#_1DD1D3: ADC.b $0E\n#_1DD1D5: STA.w $0FDA\n\n#_1DD1D8: LDA.b $90\n#_1DD1DA: CLC\n#_1DD1DB: ADC.w #$0010\n#_1DD1DE: STA.b $90\n\n#_1DD1E0: LDA.b $92\n#_1DD1E2: CLC\n#_1DD1E3: ADC.w #$0004\n#_1DD1E6: STA.b $92\n\n; ---------------------------------------------------------\n\n#_1DD1E8: LDA.w #SpriteDraw_BigShadow_oam_groups\n#_1DD1EB: CLC\n#_1DD1EC: ADC.b $00\n#_1DD1EE: STA.b $08\n\n#_1DD1F0: SEP #$20\n\n#_1DD1F2: LDA.b #$03\n#_1DD1F4: JSR SpriteDraw_Tabulated_Bank1D\n#_1DD1F7: JSL Sprite_Get16BitCoords_long\n\n#_1DD1FB: PLB\n\n#_1DD1FC: RTL", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_SpawnZeldaOnAltar", + "code": "CutsceneAgahnim_SpawnZeldaOnAltar:\n#_1DD1FD: LDA.w $0D10,X\n#_1DD200: CLC\n#_1DD201: ADC.b #$08\n#_1DD203: STA.w $0D10,X\n\n#_1DD206: LDA.w $0D00,X\n#_1DD209: CLC\n#_1DD20A: ADC.b #$06\n#_1DD20C: STA.w $0D00,X\n\n#_1DD20F: LDA.b #$C1 ; SPRITE C1\n#_1DD211: JSL Sprite_SpawnDynamically\n\n#_1DD215: LDA.b #$01\n#_1DD217: STA.w $0D90,Y\n#_1DD21A: STA.w $0BA0,Y\n\n#_1DD21D: JSL Sprite_SetSpawnedCoordinates\n\n#_1DD221: LDA.b $02\n#_1DD223: CLC\n#_1DD224: ADC.b #$28\n#_1DD226: STA.w $0D00,Y\n\n#_1DD229: LDA.b #$00\n#_1DD22B: STA.w $0E40,Y\n\n#_1DD22E: LDA.b #$0C\n#_1DD230: STA.w $0F50,Y\n\n#_1DD233: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C1_CutsceneAgahnim", + "code": "Sprite_C1_CutsceneAgahnim:\n#_1DD234: LDA.w $0D90,X\n#_1DD237: JSL JumpTableLocal\n#_1DD23B: dw CutsceneAgahnim_Agahnim\n#_1DD23D: dw CutsceneAgahnim_Zelda\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_Agahnim", + "code": "CutsceneAgahnim_Agahnim:\n#_1DD23F: LDA.w $0DB0,X\n#_1DD242: BEQ .real_aga\n\n#_1DD244: LDA.w $0DF0,X\n#_1DD247: BNE .stay_alive\n\n#_1DD249: STZ.w $0DD0,X\n\n.stay_alive\n#_1DD24C: AND.b #$01\n#_1DD24E: BNE .exit\n\n#_1DD250: JSR CutsceneAgahnim_DrawAgahnim\n\n.exit\n#_1DD253: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_HelloMyNameIs", + "code": "CutsceneAgahnim_HelloMyNameIs:\n#_1DD285: LDA.w $0DF0,X\n#_1DD288: BNE .exit\n\n#_1DD28A: LDA.b #$01\n#_1DD28C: STA.w $02E4\n\n#_1DD28F: LDA.b #$3D ; MESSAGE 013D\n#_1DD291: STA.w $1CF0\n\n#_1DD294: LDA.b #$01\n#_1DD296: STA.w $1CF1\n\n#_1DD299: JSL Sprite_ShowMessageMinimal\n\n#_1DD29D: INC.w $0D80,X\n\n.exit\n#_1DD2A0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_LightAsAFeatherStiffAsABoard", + "code": "CutsceneAgahnim_LightAsAFeatherStiffAsABoard:\n#_1DD2A5: INC.w $0DA0,X\n\n#_1DD2A8: LDA.w $0DA0,X\n#_1DD2AB: PHA\n\n#_1DD2AC: LSR A\n#_1DD2AD: LSR A\n#_1DD2AE: LSR A\n#_1DD2AF: LSR A\n#_1DD2B0: LSR A\n#_1DD2B1: AND.b #$03\n\n#_1DD2B3: TAY\n#_1DD2B4: LDA.w .pose,Y\n\n#_1DD2B7: LDY.w $0F7F\n#_1DD2BA: CPY.b #$10\n#_1DD2BC: BCC .use_indexed_pose\n\n#_1DD2BE: LDA.b #$01\n\n.use_indexed_pose\n#_1DD2C0: STA.w $0DC0,X\n\n#_1DD2C3: PLA\n#_1DD2C4: AND.b #$0F\n#_1DD2C6: BNE .done\n\n#_1DD2C8: LDA.b #$01\n#_1DD2CA: STA.w $0DCF\n\n#_1DD2CD: INC.w $0F7F\n\n#_1DD2D0: LDA.w $0F7F\n#_1DD2D3: CMP.b #$16\n#_1DD2D5: BNE .done\n\n; ---------------------------------------------------------\n\n#_1DD2D7: LDY.b #$27 ; SFX3.27\n#_1DD2D9: STY.w $012F\n\n#_1DD2DC: INC.w $0D80,X\n\n#_1DD2DF: LDA.b #$FF\n#_1DD2E1: STA.w $0DF0,X\n\n#_1DD2E4: LDA.b #$02\n#_1DD2E6: STA.w $0E80,X\n\n#_1DD2E9: LDA.b #$FF\n#_1DD2EB: STA.w $0E30,X\n\n.done\n#_1DD2EE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_BanishZelda", + "code": "CutsceneAgahnim_BanishZelda:\n#_1DD2EF: LDA.w $0DF0,X\n#_1DD2F2: BEQ .next_ai\n\n#_1DD2F4: CMP.b #$78\n#_1DD2F6: BEQ .start_flashing\n\n#_1DD2F8: CMP.b #$80\n#_1DD2FA: BCS .exit\n\n#_1DD2FC: AND.b #$03\n#_1DD2FE: BNE .exit\n\n; ---------------------------------------------------------\n\n#_1DD300: LDA.b #$2B ; SFX3.2B\n#_1DD302: STA.w $012F\n\n#_1DD305: LDA.w $0E80,X\n#_1DD308: CMP.b #$0E\n#_1DD30A: BEQ .exit\n\n#_1DD30C: CLC\n#_1DD30D: ADC.b #$04\n#_1DD30F: STA.w $0E80,X\n\n.exit\n#_1DD312: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_MadeHerGoPoof", + "code": "CutsceneAgahnim_MadeHerGoPoof:\n#_1DD322: LDA.w $0DF0,X\n#_1DD325: BEQ .she_gone\n\n#_1DD327: AND.b #$03\n#_1DD329: BNE .exit\n\n#_1DD32B: LDA.w $0E30,X\n\n#_1DD32E: CMP.b #$09\n#_1DD330: BEQ .exit\n\n#_1DD332: CLC\n#_1DD333: ADC.b #$02\n#_1DD335: STA.w $0E30,X\n\n#_1DD338: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_Brag", + "code": "CutsceneAgahnim_Brag:\n#_1DD34F: LDA.w $0DF0,X\n#_1DD352: BNE .exit\n\n#_1DD354: LDA.b #$3E ; MESSAGE 013E\n#_1DD356: STA.w $1CF0\n\n#_1DD359: LDA.b #$01\n#_1DD35B: STA.w $1CF1\n\n#_1DD35E: JSL Sprite_ShowMessageMinimal\n\n#_1DD362: INC.w $0D80,X\n\n#_1DD365: LDA.b #$02\n#_1DD367: STA.w $0DF0,X\n\n.exit\n#_1DD36A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_HideBehindCurtain", + "code": "CutsceneAgahnim_HideBehindCurtain:\n#_1DD36B: LDA.w $0DF0,X\n#_1DD36E: DEC A\n#_1DD36F: BNE .no_sfx\n\n#_1DD371: LDA.b #$28 ; SFX3.28\n#_1DD373: STA.w $012F\n\n; ---------------------------------------------------------\n\n.no_sfx\n#_1DD376: LDA.b #$E0\n#_1DD378: STA.w $0D40,X\n\n#_1DD37B: JSR Sprite_Move_Y_Bank1D\n\n#_1DD37E: LDA.w $0D00,X\n#_1DD381: CMP.b #$30\n#_1DD383: BCS .blurred_lines\n\n#_1DD385: LDA.b #$42\n#_1DD387: STA.w $0F10,X\n\n#_1DD38A: INC.w $0D80,X\n\n; ---------------------------------------------------------\n\n.blurred_lines\n#_1DD38D: JSL Agahnim_ApplyMotionBlur\n\n#_1DD391: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Agahnim_ApplyMotionBlur", + "code": "Agahnim_ApplyMotionBlur:\n#_1DD392: LDY.b #$FF\n\n#_1DD394: LDA.b $1A\n#_1DD396: AND.b #$03\n#_1DD398: BNE .deny_filter\n\n#_1DD39A: LDA.b #$C1 ; SPRITE C1\n#_1DD39C: JSL Sprite_SpawnDynamically\n#_1DD3A0: BMI .deny_filter\n\n#_1DD3A2: JSL Sprite_SetSpawnedCoordinates\n\n#_1DD3A6: LDA.w $0DC0,X\n#_1DD3A9: STA.w $0DC0,Y\n\n#_1DD3AC: LDA.b #$20\n#_1DD3AE: STA.w $0DF0,Y\n#_1DD3B1: STA.w $0BA0,Y\n#_1DD3B4: STA.w $0DB0,Y\n\n.deny_filter\n#_1DD3B7: TYA\n\n#_1DD3B8: RTL", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_ExistNoMore", + "code": "CutsceneAgahnim_ExistNoMore:\n#_1DD3B9: LDA.w $0F10,X\n#_1DD3BC: BNE .exist_more\n\n#_1DD3BE: STZ.w $02E4\n\n#_1DD3C1: STZ.w $0DD0,X\n\n#_1DD3C4: JSL Sprite_ManuallySetDeathFlagUW\n\n#_1DD3C8: LDA.w $0403\n#_1DD3CB: ORA.b #$40\n#_1DD3CD: STA.w $0403\n\n.exist_more\n#_1DD3D0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_DrawAgahnim", + "code": "CutsceneAgahnim_DrawAgahnim:\n#_1DD451: LDA.w $0F10,X\n#_1DD454: AND.b #$01\n#_1DD456: BNE .exit\n\n#_1DD458: LDA.w $0DB0,X\n#_1DD45B: STA.b $00\n#_1DD45D: STZ.b $01\n\n#_1DD45F: LDA.b #$00\n#_1DD461: XBA\n#_1DD462: LDA.w $0DC0,X\n\n#_1DD465: REP #$20\n\n#_1DD467: ASL A\n#_1DD468: ASL A\n#_1DD469: ASL A\n#_1DD46A: ASL A\n#_1DD46B: ASL A\n#_1DD46C: ADC.w #.oam_groups\n#_1DD46F: STA.b $08\n\n#_1DD471: LDA.b $00\n#_1DD473: BNE .use_allotted_oam\n\n; ---------------------------------------------------------\n\n#_1DD475: LDA.w #$0900\n#_1DD478: STA.b $90\n\n#_1DD47A: LDA.w #$0A60\n#_1DD47D: STA.b $92\n\n; ---------------------------------------------------------\n\n.use_allotted_oam\n#_1DD47F: SEP #$20\n\n#_1DD481: LDA.b #$04\n#_1DD483: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1DD486: LDA.b #$12\n#_1DD488: JSL SpriteDraw_Shadow_custom_long\n\n.exit\n#_1DD48C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_CutsceneAgahnimSpell", + "code": "SpriteDraw_CutsceneAgahnimSpell:\n#_1DD516: LDA.b #$38\n#_1DD518: JSL SpriteDraw_AllocateOAMFromRegionA\n\n#_1DD51C: LDA.b $1A\n#_1DD51E: LSR A\n#_1DD51F: LSR A\n\n#_1DD520: REP #$20\n\n#_1DD522: LDA.w #.oam_groups\n#_1DD525: BCS .frame_0\n\n#_1DD527: ADC.w #$0038\n\n; ---------------------------------------------------------\n\n.frame_0\n#_1DD52A: STA.b $08\n\n#_1DD52C: LDA.w #.oam_sizes\n#_1DD52F: STA.b $0A\n\n#_1DD531: SEP #$20\n\n#_1DD533: LDA.w $0E80,X\n#_1DD536: BEQ .exit\n\n#_1DD538: LDY.w $0E30,X\n#_1DD53B: STY.b $0D\n\n#_1DD53D: PHX\n\n#_1DD53E: DEC A\n#_1DD53F: TAX\n\n#_1DD540: INY\n\n; ---------------------------------------------------------\n\n#_1DD541: LDA.w .oam_offset,Y\n#_1DD544: TAY\n\n.next_object\n#_1DD545: LDA.b $00\n#_1DD547: CLC\n#_1DD548: ADC.b ($08),Y\n#_1DD54A: STA.b ($90),Y\n\n#_1DD54C: LDA.b $02\n#_1DD54E: CLC\n#_1DD54F: ADC.b #$F8\n#_1DD551: CLC\n\n#_1DD552: INY\n#_1DD553: ADC.b ($08),Y\n#_1DD555: STA.b ($90),Y\n\n#_1DD557: INY\n#_1DD558: LDA.b ($08),Y\n#_1DD55A: STA.b ($90),Y\n\n#_1DD55C: INY\n\n#_1DD55D: LDA.b ($08),Y\n#_1DD55F: ORA.b #$31\n#_1DD561: STA.b ($90),Y\n\n#_1DD563: PHY\n\n#_1DD564: TYA\n#_1DD565: LSR A\n#_1DD566: LSR A\n#_1DD567: TAY\n\n#_1DD568: LDA.b #$00\n#_1DD56A: CPX.b #$04\n#_1DD56C: BCS .pointless\n\n#_1DD56E: LDA.b #$02\n\n.pointless\n#_1DD570: LDA.b ($0A),Y\n#_1DD572: STA.b ($92),Y\n\n#_1DD574: PLY\n#_1DD575: INY\n\n#_1DD576: DEX\n#_1DD577: CPX.b $0D\n#_1DD579: BNE .next_object\n\n; ---------------------------------------------------------\n\n#_1DD57B: PLX\n\n.exit\n#_1DD57C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "CutsceneAgahnim_Zelda", + "code": "CutsceneAgahnim_Zelda:\n#_1DD57D: JSR .dumb\n\n#_1DD580: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_AltarZeldaWarp", + "code": "SpriteDraw_AltarZeldaWarp:\n#_1DD6B1: LDA.b #$08\n#_1DD6B3: JSL SpriteDraw_AllocateOAMFromRegionA\n\n#_1DD6B7: LDA.b #$00\n#_1DD6B9: XBA\n\n#_1DD6BA: LDA.w $0DF0,X\n#_1DD6BD: LSR A\n#_1DD6BE: LSR A\n\n#_1DD6BF: REP #$20\n\n#_1DD6C1: ASL A\n#_1DD6C2: ASL A\n#_1DD6C3: ASL A\n#_1DD6C4: ASL A\n\n#_1DD6C5: ADC.w #.oam_groups\n#_1DD6C8: STA.b $08\n\n#_1DD6CA: SEP #$20\n\n#_1DD6CC: LDA.b #$02\n#_1DD6CE: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_Moldorm", + "code": "SpritePrep_Moldorm:\n#_1DD6D1: PHX\n#_1DD6D2: TXY\n\n#_1DD6D3: LDX.b #$7F\n\n.next_segment\n#_1DD6D5: LDA.w $0D10,Y\n#_1DD6D8: STA.l $7FFC00,X\n\n#_1DD6DC: LDA.w $0D30,Y\n#_1DD6DF: STA.l $7FFC80,X\n\n#_1DD6E3: LDA.w $0D00,Y\n#_1DD6E6: STA.l $7FFD00,X\n\n#_1DD6EA: LDA.w $0D20,Y\n#_1DD6ED: STA.l $7FFD80,X\n\n#_1DD6F1: DEX\n#_1DD6F2: BPL .next_segment\n\n; ---------------------------------------------------------\n\n#_1DD6F4: PLX\n\n\n#_1DD6F5: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_09_Moldorm", + "code": "Sprite_09_Moldorm:\n#_1DD6F6: PHB\n#_1DD6F7: PHK\n#_1DD6F8: PLB\n\n#_1DD6F9: JSR .main\n\n#_1DD6FC: PLB\n\n#_1DD6FD: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Moldorm_Move", + "code": "Moldorm_Move:\n#_1DD7FE: LDA.w $0DF0,X\n#_1DD801: BNE .exit\n\n#_1DD803: LDA.b #$01\n\n#_1DD805: INC.w $0ED0,X\n#_1DD808: LDY.w $0ED0,X\n\n#_1DD80B: CPY.b #$03\n#_1DD80D: BNE .turn_next_move\n\n#_1DD80F: STZ.w $0ED0,X\n\n#_1DD812: LDA.b #$02\n\n; ---------------------------------------------------------\n\n.turn_next_move\n#_1DD814: STA.w $0D80,X\n\n#_1DD817: JSL GetRandomNumber\n#_1DD81B: AND.b #$02\n\n#_1DD81D: DEC A\n#_1DD81E: STA.w $0EB0,X\n\n#_1DD821: JSL GetRandomNumber\n#_1DD825: AND.b #$1F\n#_1DD827: ADC.b #$20\n#_1DD829: STA.w $0DF0,X\n\n.exit\n#_1DD82C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Moldorm_Turn", + "code": "Moldorm_Turn:\n#_1DD82D: LDA.w $0DF0,X\n#_1DD830: BNE .delay\n\n#_1DD832: JSL GetRandomNumber\n#_1DD836: AND.b #$0F\n#_1DD838: ADC.b #$08\n#_1DD83A: STA.w $0DF0,X\n\n#_1DD83D: STZ.w $0D80,X\n\n#_1DD840: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Moldorm_Charge", + "code": "Moldorm_Charge:\n#_1DD852: TXA\n#_1DD853: EOR.b $1A\n#_1DD855: AND.b #$03\n#_1DD857: BNE .exit\n\n#_1DD859: LDA.b #$1F\n#_1DD85B: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DD85F: JSL Sprite_ConvertVelocityToAngle\n#_1DD863: CMP.w $0DE0,X\n#_1DD866: BNE .adjust_angle\n\n#_1DD868: STZ.w $0D80,X\n\n#_1DD86B: LDA.b #$30\n#_1DD86D: STA.w $0DF0,X\n\n#_1DD870: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm", + "code": "SpriteDraw_Moldorm:\n#_1DD881: JSR Sprite_PrepOAMCoord_Bank1D\n\n#_1DD884: LDA.b #$0B\n#_1DD886: STA.w $0F50,X\n\n#_1DD889: JSR SpriteDraw_Moldorm_Eyeballs\n\n#_1DD88C: REP #$20\n\n#_1DD88E: LDA.b $90\n#_1DD890: CLC\n#_1DD891: ADC.w #$0008\n#_1DD894: STA.b $90\n\n#_1DD896: INC.b $92\n#_1DD898: INC.b $92\n\n; ---------------------------------------------------------\n\n#_1DD89A: SEP #$20\n\n#_1DD89C: PHX\n#_1DD89D: TXY\n\n#_1DD89E: LDA.w $0E80,X\n#_1DD8A1: AND.b #$7F\n#_1DD8A3: TAX\n\n#_1DD8A4: LDA.w $0D10,Y\n#_1DD8A7: STA.l $7FFC00,X\n\n#_1DD8AB: LDA.w $0D00,Y\n#_1DD8AE: STA.l $7FFD00,X\n\n#_1DD8B2: LDA.w $0D30,Y\n#_1DD8B5: STA.l $7FFC80,X\n\n#_1DD8B9: LDA.w $0D20,Y\n#_1DD8BC: STA.l $7FFD80,X\n\n#_1DD8C0: PLX\n\n#_1DD8C1: JSR SpriteDraw_Moldorm_Head\n\n; ---------------------------------------------------------\n\n#_1DD8C4: LDA.w $0DA0,X\n#_1DD8C7: CMP.b #$04\n#_1DD8C9: BCS .skip_segment\n\n#_1DD8CB: JSR SpriteDraw_Moldorm_SegmentA\n\n; ---------------------------------------------------------\n\n#_1DD8CE: LDA.w $0DA0,X\n#_1DD8D1: CMP.b #$03\n#_1DD8D3: BCS .skip_segment\n\n#_1DD8D5: JSR SpriteDraw_Moldorm_SegmentB\n\n; ---------------------------------------------------------\n\n#_1DD8D8: LDA.w $0DA0,X\n#_1DD8DB: CMP.b #$02\n#_1DD8DD: BCS .skip_segment\n\n#_1DD8DF: JSR SpriteDraw_Moldorm_SegmentC\n\n; ---------------------------------------------------------\n\n#_1DD8E2: LDA.w $0DA0,X\n#_1DD8E5: BNE .skip_segment\n\n#_1DD8E7: JSR Moldorm_HandleTail\n\n; ---------------------------------------------------------\n\n.skip_segment\n#_1DD8EA: JSR GiantMoldorm_IncrementalSegmentExplosion\n#_1DD8ED: JSL Sprite_Get16BitCoords_long\n\n#_1DD8F1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "GiantMoldorm_IncrementalSegmentExplosion", + "code": "GiantMoldorm_IncrementalSegmentExplosion:\n#_1DD8F2: LDA.w $0DD0,X\n#_1DD8F5: CMP.b #$09\n#_1DD8F7: BNE .exit\n\n#_1DD8F9: LDA.w $0F10,X\n#_1DD8FC: BEQ .exit\n\n#_1DD8FE: CMP.b #$50\n#_1DD900: BCS .exit\n\n#_1DD902: AND.b #$0F\n#_1DD904: ORA.b $11\n#_1DD906: ORA.w $0FC1\n#_1DD909: BNE .exit\n\n#_1DD90B: INC.w $0DA0,X\n\n#_1DD90E: JSL MakeBossExplosion\n\n.exit\n#_1DD912: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_Head", + "code": "SpriteDraw_Moldorm_Head:\n#_1DD993: LDA.b #$00\n#_1DD995: XBA\n\n#_1DD996: LDA.w $0E00,X\n#_1DD999: AND.b #$02\n#_1DD99B: STA.b $00\n\n#_1DD99D: LDA.w $0E80,X\n#_1DD9A0: LSR A\n#_1DD9A1: AND.b #$01\n#_1DD9A3: ORA.b $00\n\n#_1DD9A5: REP #$20\n\n#_1DD9A7: ASL A\n#_1DD9A8: ASL A\n#_1DD9A9: ASL A\n#_1DD9AA: ASL A\n#_1DD9AB: ASL A\n#_1DD9AC: ADC.w #.oam_groups\n#_1DD9AF: STA.b $08\n\n#_1DD9B1: SEP #$20\n\n#_1DD9B3: LDA.b #$04\n#_1DD9B5: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n\npool SpriteDraw_Moldorm_LargeSegment\n\n.oam_groups\n#_1DD9B8: dw -8, -8 : db $84, $00, $00, $02\n#_1DD9C0: dw 8, -8 : db $86, $00, $00, $02\n#_1DD9C8: dw -8, 8 : db $A4, $00, $00, $02\n#_1DD9D0: dw 8, 8 : db $A6, $00, $00, $02\n\n#_1DD9D8: dw -8, -8 : db $86, $40, $00, $02\n#_1DD9E0: dw 8, -8 : db $84, $40, $00, $02\n#_1DD9E8: dw -8, 8 : db $A6, $40, $00, $02\n#_1DD9F0: dw 8, 8 : db $A4, $40, $00, $02\n\npool off\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_SegmentA", + "code": "SpriteDraw_Moldorm_SegmentA:\n#_1DD9F8: TXY\n\n#_1DD9F9: PHX\n\n#_1DD9FA: LDA.w $0E80,X\n#_1DD9FD: SEC\n#_1DD9FE: SBC.b #$10\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_LargeSegment", + "code": "SpriteDraw_Moldorm_LargeSegment:\n#_1DDA00: AND.b #$7F\n#_1DDA02: TAX\n\n#_1DDA03: LDA.l $7FFC00,X\n#_1DDA07: STA.w $0FD8\n\n#_1DDA0A: LDA.l $7FFC80,X\n#_1DDA0E: STA.w $0FD9\n\n#_1DDA11: LDA.l $7FFD00,X\n#_1DDA15: STA.w $0FDA\n\n#_1DDA18: LDA.l $7FFD80,X\n#_1DDA1C: STA.w $0FDB\n\n#_1DDA1F: PLX\n\n#_1DDA20: LDA.b #$00\n#_1DDA22: XBA\n#_1DDA23: LDA.w $0E80,X\n\n#_1DDA26: LSR A\n#_1DDA27: AND.b #$01\n\n#_1DDA29: REP #$20\n\n#_1DDA2B: ASL A\n#_1DDA2C: ASL A\n#_1DDA2D: ASL A\n#_1DDA2E: ASL A\n#_1DDA2F: ASL A\n#_1DDA30: ADC.w #.oam_groups\n#_1DDA33: STA.b $08\n\n#_1DDA35: REP #$20\n\n#_1DDA37: LDA.b $90\n#_1DDA39: CLC\n#_1DDA3A: ADC.w #$0010\n#_1DDA3D: STA.b $90\n\n#_1DDA3F: LDA.b $92\n#_1DDA41: CLC\n#_1DDA42: ADC.w #$0004\n#_1DDA45: STA.b $92\n\n#_1DDA47: SEP #$20\n#_1DDA49: SEP #$20\n\n#_1DDA4B: LDA.b #$04\n#_1DDA4D: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_SegmentB", + "code": "SpriteDraw_Moldorm_SegmentB:\n#_1DDA50: TXY\n#_1DDA51: PHX\n\n#_1DDA52: LDA.w $0E80,X\n#_1DDA55: SEC\n#_1DDA56: SBC.b #$1C\n\n#_1DDA58: JMP.w SpriteDraw_Moldorm_LargeSegment\n\n; =========================================================\n\npool SpriteDraw_Moldorm_SmallSegment\n\n.flip\n#_1DDA5B: db $00, $40, $C0, $80\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_SegmentC", + "code": "SpriteDraw_Moldorm_SegmentC:\n#_1DDA5F: STZ.w $0DC0,X\n\n#_1DDA62: REP #$20\n\n#_1DDA64: LDA.b $90\n#_1DDA66: CLC\n#_1DDA67: ADC.w #$0010\n#_1DDA6A: STA.b $90\n\n#_1DDA6C: LDA.b $92\n#_1DDA6E: CLC\n#_1DDA6F: ADC.w #$0004\n#_1DDA72: STA.b $92\n\n#_1DDA74: SEP #$20\n\n#_1DDA76: TXY\n\n#_1DDA77: PHX\n\n#_1DDA78: LDA.w $0E80,X\n#_1DDA7B: SEC\n#_1DDA7C: SBC.b #$28\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_SmallSegment", + "code": "SpriteDraw_Moldorm_SmallSegment:\n#_1DDA7E: AND.b #$7F\n#_1DDA80: TAX\n\n#_1DDA81: LDA.l $7FFC00,X\n#_1DDA85: STA.w $0FD8\n\n#_1DDA88: LDA.l $7FFC80,X\n#_1DDA8C: STA.w $0FD9\n\n#_1DDA8F: LDA.l $7FFD00,X\n#_1DDA93: STA.w $0FDA\n\n#_1DDA96: LDA.l $7FFD80,X\n#_1DDA9A: STA.w $0FDB\n\n#_1DDA9D: PLX\n\n#_1DDA9E: LDA.w $0E80,X\n#_1DDAA1: LSR A\n#_1DDAA2: AND.b #$03\n#_1DDAA4: TAY\n\n#_1DDAA5: LDA.w $0F50,X\n#_1DDAA8: PHA\n\n#_1DDAA9: AND.b #$3F\n#_1DDAAB: ORA.w .flip,Y\n#_1DDAAE: STA.w $0F50,X\n\n#_1DDAB1: JSL SpriteDraw_SingleLarge_long\n\n#_1DDAB5: PLA\n#_1DDAB6: STA.w $0F50,X\n\n#_1DDAB9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Moldorm_HandleTail", + "code": "Moldorm_HandleTail:\n#_1DDABA: JSR SpriteDraw_Moldorm_Tail\n\n#_1DDABD: LDA.w $0E10,X\n#_1DDAC0: BNE .no_damage\n\n#_1DDAC2: LDA.b #$01\n#_1DDAC4: STA.w $0D90,X\n\n#_1DDAC7: STZ.w $0F60,X\n#_1DDACA: STZ.w $0CAA,X\n\n; ---------------------------------------------------------\n\n#_1DDACD: LDA.w $0D10,X\n#_1DDAD0: PHA\n\n#_1DDAD1: LDA.w $0D30,X\n#_1DDAD4: PHA\n\n#_1DDAD5: LDA.w $0D00,X\n#_1DDAD8: PHA\n\n#_1DDAD9: LDA.w $0D20,X\n#_1DDADC: PHA\n\n; ---------------------------------------------------------\n\n#_1DDADD: LDA.w $0FD8\n#_1DDAE0: STA.w $0D10,X\n\n#_1DDAE3: LDA.w $0FD9\n#_1DDAE6: STA.w $0D30,X\n\n#_1DDAE9: LDA.w $0FDA\n#_1DDAEC: STA.w $0D00,X\n\n#_1DDAEF: LDA.w $0FDB\n#_1DDAF2: STA.w $0D20,X\n\n#_1DDAF5: JSL Sprite_CheckDamageFromLink_long\n\n#_1DDAF9: STZ.w $0D90,X\n\n#_1DDAFC: LDA.b #$09\n#_1DDAFE: STA.w $0F60,X\n\n#_1DDB01: LDA.b #$04\n#_1DDB03: STA.w $0CAA,X\n\n; ---------------------------------------------------------\n\n#_1DDB06: PLA\n#_1DDB07: STA.w $0D20,X\n\n#_1DDB0A: PLA\n#_1DDB0B: STA.w $0D00,X\n\n#_1DDB0E: PLA\n#_1DDB0F: STA.w $0D30,X\n\n#_1DDB12: PLA\n#_1DDB13: STA.w $0D10,X\n\n.no_damage\n#_1DDB16: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_Tail", + "code": "SpriteDraw_Moldorm_Tail:\n#_1DDB17: REP #$20\n\n#_1DDB19: LDA.b $90\n#_1DDB1B: CLC\n#_1DDB1C: ADC.w #$0004\n#_1DDB1F: STA.b $90\n\n#_1DDB21: LDA.b $92\n#_1DDB23: CLC\n#_1DDB24: ADC.w #$0001\n#_1DDB27: STA.b $92\n\n#_1DDB29: SEP #$20\n\n#_1DDB2B: INC.w $0DC0,X\n\n#_1DDB2E: LDA.b #$0D\n#_1DDB30: STA.w $0F50,X\n\n#_1DDB33: TXY\n#_1DDB34: PHX\n\n#_1DDB35: LDA.w $0E80,X\n#_1DDB38: SEC\n#_1DDB39: SBC.b #$30\n\n#_1DDB3B: JMP.w SpriteDraw_Moldorm_SmallSegment\n\n; =========================================================\n\npool SpriteDraw_Moldorm_Eyeballs\n\n.offset_x\n#_1DDB3E: dw 16, 15, 12, 6, 0, -6, -12, -13\n#_1DDB4E: dw -16, -13, -12, -6, 0, 6, 12, 15\n\n.offset_y\n#_1DDB5E: dw 0, 6, 12, 15, 16, 15, 12, 6\n#_1DDB6E: dw 0, -6, -12, -13, -16, -13, -12, -6\n\n.char\n#_1DDB7E: db $AA, $AA, $A8, $A8, $8A, $8A, $A8, $A8\n#_1DDB86: db $AA, $AA, $A8, $A8, $8A, $8A, $A8, $A8\n\n.flip\n#_1DDB8E: db $00, $00, $00, $00, $80, $80, $40, $40\n#_1DDB96: db $40, $40, $C0, $C0, $00, $00, $80, $80\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Moldorm_Eyeballs", + "code": "SpriteDraw_Moldorm_Eyeballs:\n#_1DDB9E: STZ.b $07\n\n#_1DDBA0: LDA.w $0EA0,X\n#_1DDBA3: BEQ .no_eye_wonk\n\n#_1DDBA5: LDA.b $1A\n#_1DDBA7: STA.b $07\n\n.no_eye_wonk\n#_1DDBA9: LDA.w $0DE0,X\n#_1DDBAC: CLC\n#_1DDBAD: ADC.b #$FF\n#_1DDBAF: STA.b $06\n\n#_1DDBB1: PHX\n\n; ---------------------------------------------------------\n\n#_1DDBB2: LDX.b #$01\n\n.next_eye\n#_1DDBB4: LDA.b $06\n#_1DDBB6: AND.b #$0F\n#_1DDBB8: ASL A\n\n#_1DDBB9: PHX\n#_1DDBBA: TAX\n\n#_1DDBBB: REP #$20\n\n#_1DDBBD: LDA.b $00\n#_1DDBBF: CLC\n#_1DDBC0: ADC.w .offset_x,X\n#_1DDBC3: STA.b ($90),Y\n\n#_1DDBC5: AND.w #$0100\n#_1DDBC8: STA.b $0E\n\n#_1DDBCA: LDA.b $02\n#_1DDBCC: CLC\n#_1DDBCD: ADC.w .offset_y,X\n#_1DDBD0: INY\n#_1DDBD1: STA.b ($90),Y\n\n#_1DDBD3: ADC.w #$0010\n#_1DDBD6: CMP.w #$0100\n\n#_1DDBD9: SEP #$20\n#_1DDBDB: BCC .on_screen\n\n#_1DDBDD: LDA.b #$F0\n#_1DDBDF: STA.b ($90),Y\n\n.on_screen\n#_1DDBE1: LDA.b $06\n#_1DDBE3: CLC\n#_1DDBE4: ADC.b $07\n\n#_1DDBE6: AND.b #$0F\n#_1DDBE8: TAX\n\n#_1DDBE9: LDA.w .char,X\n#_1DDBEC: INY\n#_1DDBED: STA.b ($90),Y\n\n#_1DDBEF: LDA.w .flip,X\n#_1DDBF2: ORA.b $05\n#_1DDBF4: INY\n#_1DDBF5: STA.b ($90),Y\n\n#_1DDBF7: PHY\n\n#_1DDBF8: TYA\n#_1DDBF9: LSR A\n#_1DDBFA: LSR A\n#_1DDBFB: TAY\n\n#_1DDBFC: LDA.b $0F\n#_1DDBFE: ORA.b #$02\n#_1DDC00: STA.b ($92),Y\n\n#_1DDC02: LDA.b $06\n#_1DDC04: CLC\n#_1DDC05: ADC.b #$02\n#_1DDC07: STA.b $06\n\n#_1DDC09: PLY\n#_1DDC0A: INY\n\n#_1DDC0B: PLX\n#_1DDC0C: DEX\n#_1DDC0D: BPL .next_eye\n\n; ---------------------------------------------------------\n\n#_1DDC0F: PLX\n\n#_1DDC10: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Moldorm_Explode", + "code": "Moldorm_Explode:\n#_1DDC11: LDA.w $0F10,X\n#_1DDC14: BNE .delay\n\n; =========================================================\n\n#Sprite_BossPrepareToDie:\n#_1DDC16: LDA.b #$04\n#_1DDC18: STA.w $0DD0,X\n\n#_1DDC1B: STZ.w $0D90,X\n\n#_1DDC1E: LDA.b #$E0\n#_1DDC20: STA.w $0DF0,X\n\n#_1DDC23: RTS", + "file": "bank_1D.asm" + }, + { + "name": "MakeBossExplosion", + "code": "MakeBossExplosion:\n#_1DDC2A: LDA.b #$0C ; SFX2.0C\n#_1DDC2C: JSL SpriteSFX_QueueSFX2WithPan\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Trinexx_AddExplosion", + "code": "Trinexx_AddExplosion:\n#_1DDC30: LDA.b #$00 ; SPRITE 00\n#_1DDC32: JSL Sprite_SpawnDynamically\n#_1DDC36: BMI .no_space\n\n#_1DDC38: LDA.b #$0B\n#_1DDC3A: STA.w $0AAA\n\n#_1DDC3D: LDA.b #$04\n#_1DDC3F: STA.w $0DD0,Y\n\n#_1DDC42: LDA.b #$03\n#_1DDC44: STA.w $0E40,Y\n\n#_1DDC47: LDA.b #$0C\n#_1DDC49: STA.w $0F50,Y\n\n#_1DDC4C: LDA.w $0FD8\n#_1DDC4F: STA.w $0D10,Y\n\n#_1DDC52: LDA.w $0FD9\n#_1DDC55: STA.w $0D30,Y\n\n#_1DDC58: LDA.w $0FDA\n#_1DDC5B: STA.w $0D00,Y\n\n#_1DDC5E: LDA.w $0FDB\n#_1DDC61: STA.w $0D20,Y\n\n#_1DDC64: LDA.b #$1F\n#_1DDC66: STA.w $0DF0,Y\n#_1DDC69: STA.w $0D90,Y\n\n#_1DDC6C: LDA.b #$02\n#_1DDC6E: STA.w $0F20,Y\n\n.no_space\n#_1DDC71: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_01_Vulture", + "code": "Sprite_01_Vulture:\n#_1DDC72: PHB\n#_1DDC73: PHK\n#_1DDC74: PLB\n\n#_1DDC75: JSR .main\n\n#_1DDC78: PLB\n\n#_1DDC79: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Vulture_Perched", + "code": "Vulture_Perched:\n#_1DDC9C: INC.w $0E80,X\n\n#_1DDC9F: LDA.w $0E80,X\n#_1DDCA2: CMP.b #$A0\n#_1DDCA4: BNE .exit\n\n#_1DDCA6: INC.w $0D80,X\n\n#_1DDCA9: LDA.b #$1E ; SFX3.1E\n#_1DDCAB: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DDCAF: LDA.b #$10\n#_1DDCB1: STA.w $0DF0,X\n\n.exit\n#_1DDCB4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Vulture_Circling", + "code": "Vulture_Circling:\n#_1DDCB9: LDA.b $1A\n#_1DDCBB: LSR A\n#_1DDCBC: AND.b #$03\n#_1DDCBE: TAY\n\n#_1DDCBF: LDA.w .draw,Y\n#_1DDCC2: STA.w $0DC0,X\n\n#_1DDCC5: LDA.w $0DF0,X\n#_1DDCC8: BEQ .full_ascended\n\n#_1DDCCA: INC.w $0F70,X\n\n#_1DDCCD: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Vulture", + "code": "SpriteDraw_Vulture:\n#_1DDD5E: LDA.b #$00\n#_1DDD60: XBA\n#_1DDD61: LDA.w $0DC0,X\n\n#_1DDD64: REP #$20\n\n#_1DDD66: ASL A\n#_1DDD67: ASL A\n#_1DDD68: ASL A\n#_1DDD69: ASL A\n\n#_1DDD6A: ADC.w #.oam_groups\n#_1DDD6D: STA.b $08\n\n#_1DDD6F: SEP #$20\n\n#_1DDD71: LDA.b #$02\n#_1DDD73: JSR SpriteDraw_Tabulated_Bank1D\n#_1DDD76: JSL SpriteDraw_Shadow_long\n\n#_1DDD7A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_00_Raven", + "code": "Sprite_00_Raven:\n#_1DDD7B: PHB\n#_1DDD7C: PHK\n#_1DDD7D: PLB\n\n#_1DDD7E: JSR .main\n\n#_1DDD81: PLB\n\n#_1DDD82: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Raven_RiseTime", + "code": "Raven_RiseTime:\n#_1DDDAC: db $10, $F8\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Perched", + "code": "Raven_Perched:\n#_1DDDAE: JSR Sprite_IsRightOfLink_Bank1D\n#_1DDDB1: JSR Raven_SetFlip\n\n#_1DDDB4: REP #$20\n\n#_1DDDB6: LDA.b $22\n#_1DDDB8: SEC\n#_1DDDB9: SBC.w $0FD8\n#_1DDDBC: ADC.w #$0050\n#_1DDDBF: CMP.w #$00A0\n#_1DDDC2: BCS .link_not_close\n\n#_1DDDC4: LDA.b $20\n#_1DDDC6: SEC\n#_1DDDC7: SBC.w $0FDA\n#_1DDDCA: ADC.w #$0058\n#_1DDDCD: CMP.w #$00A0\n#_1DDDD0: BCS .link_not_close\n\n#_1DDDD2: SEP #$20\n\n#_1DDDD4: INC.w $0D80,X\n\n#_1DDDD7: LDA.b #$18\n#_1DDDD9: STA.w $0DF0,X\n\n#_1DDDDC: LDA.b #$1E ; SFX3.1E\n#_1DDDDE: JSL SpriteSFX_QueueSFX3WithPan\n\n.link_not_close\n#_1DDDE2: SEP #$20\n\n#_1DDDE4: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Rise", + "code": "Raven_Rise:\n#_1DDDE5: LDA.w $0DF0,X\n#_1DDDE8: BNE .delay\n\n#_1DDDEA: INC.w $0D80,X\n\n#_1DDDED: LDY.w $0D90,X\n\n#_1DDDF0: LDA.w Raven_RiseTime,Y\n#_1DDDF3: STA.w $0DF0,X\n\n#_1DDDF6: LDA.b #$20\n#_1DDDF8: JSL Sprite_ApplySpeedTowardsLink_long\n\n.delay\n#_1DDDFC: INC.w $0F70,X\n\n#_1DDDFF: LDA.b $1A\n#_1DDE01: LSR A\n#_1DDE02: AND.b #$01\n#_1DDE04: INC A\n#_1DDE05: STA.w $0DC0,X\n\n#_1DDE08: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Attack", + "code": "Raven_Attack:\n#_1DDE09: LDA.w $0DF0,X\n#_1DDE0C: BNE .dont_flee\n\n#_1DDE0E: LDA.w $0FFF\n#_1DDE11: BEQ .always_flee\n\n#_1DDE13: LDA.w $0D90,X\n#_1DDE16: BNE .dont_flee\n\n.always_flee\n#_1DDE18: INC.w $0D80,X\n\n.dont_flee\n#_1DDE1B: TXA\n#_1DDE1C: EOR.b $1A\n#_1DDE1E: LSR A\n#_1DDE1F: BCS Raven_Animate\n\n#_1DDE21: LDA.b #$20\n#_1DDE23: JSL Sprite_ProjectSpeedTowardsLink_long\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Accelerate", + "code": "Raven_Accelerate:\n#_1DDE27: LDA.w $0D40,X\n#_1DDE2A: CMP.b $00\n#_1DDE2C: BEQ .y_speed_good\n#_1DDE2E: BPL .y_speed_too_high\n\n#_1DDE30: INC.w $0D40,X\n#_1DDE33: BRA .y_speed_good\n\n.y_speed_too_high\n#_1DDE35: DEC.w $0D40,X\n\n.y_speed_good\n#_1DDE38: LDA.w $0D50,X\n#_1DDE3B: CMP.b $01\n#_1DDE3D: BEQ Raven_Animate\n#_1DDE3F: BPL .x_speed_too_high\n\n#_1DDE41: INC.w $0D50,X\n\n#_1DDE44: BRA Raven_Animate\n\n.x_speed_too_high\n#_1DDE46: DEC.w $0D50,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Animate", + "code": "Raven_Animate:\n#_1DDE49: LDA.b $1A\n#_1DDE4B: LSR A\n#_1DDE4C: AND.b #$01\n#_1DDE4E: INC A\n#_1DDE4F: STA.w $0DC0,X\n\n#_1DDE52: LDA.w $0D50,X\n#_1DDE55: ASL A\n#_1DDE56: ROL A\n#_1DDE57: AND.b #$01\n#_1DDE59: TAY\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Raven_SetFlip", + "code": "Raven_SetFlip:\n#_1DDE5A: LDA.w $0F50,X\n#_1DDE5D: AND.b #$BF\n#_1DDE5F: ORA.w RavenFlip,Y\n#_1DDE62: STA.w $0F50,X\n\n#_1DDE65: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Raven_Flee", + "code": "Raven_Flee:\n#_1DDE66: TXA\n#_1DDE67: EOR.b $1A\n#_1DDE69: LSR A\n#_1DDE6A: BCS Raven_Animate\n\n#_1DDE6C: LDA.b #$30\n#_1DDE6E: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DDE72: LDA.b $00\n#_1DDE74: EOR.b #$FF\n#_1DDE76: INC A\n#_1DDE77: STA.b $00\n\n#_1DDE79: LDA.b $01\n#_1DDE7B: EOR.b #$FF\n#_1DDE7D: INC A\n#_1DDE7E: STA.b $01\n\n#_1DDE80: BRA Raven_Accelerate\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_SpawnMinions", + "code": "Vitreous_SpawnMinions:\n#_1DDE82: PHB\n#_1DDE83: PHK\n#_1DDE84: PLB\n\n#_1DDE85: JSR .main\n\n#_1DDE88: PLB\n\n#_1DDE89: RTL", + "file": "bank_1D.asm" + }, + { + "name": "QuakeBounceSpeeds", + "code": "QuakeBounceSpeeds:\n#_1DDF45: db $20, $10, $08, $00\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_C0_Catfish", + "code": "Sprite_C0_Catfish:\n#_1DDF49: LDA.w $0D90,X\n#_1DDF4C: BPL .not_splash\n\n#_1DDF4E: JSR Catfish_SplashOfWater\n\n#_1DDF51: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_QuakeMedallion", + "code": "Catfish_QuakeMedallion:\n#_1DDF54: LDA.w $0F70,X\n#_1DDF57: BNE .airborne\n\n#_1DDF59: JSL SpriteDraw_WaterRipple_WithOAMAdjust_long\n\n#_1DDF5D: LDA.b $11\n#_1DDF5F: BNE .airborne\n\n#_1DDF61: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1DDF65: BCC .airborne\n\n#_1DDF67: STZ.w $0DD0,X\n#_1DDF6A: STZ.w $02E9\n\n#_1DDF6D: LDY.w $0D90,X\n\n#_1DDF70: PHX\n\n#_1DDF71: JSL Link_ReceiveItem\n\n#_1DDF75: PLX\n\n; ---------------------------------------------------------\n\n.airborne\n#_1DDF76: LDA.w $0EE0,X\n#_1DDF79: BEQ .keep_oam_allotment\n\n#_1DDF7B: LDA.b #$08\n#_1DDF7D: JSL SpriteDraw_AllocateOAMFromRegionC\n\n.keep_oam_allotment\n#_1DDF81: JSL SpriteDraw_SingleLarge_long\n#_1DDF85: JSR Sprite_CheckIfActive_Bank1D\n#_1DDF88: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DDF8B: DEC.w $0F80,X\n#_1DDF8E: DEC.w $0F80,X\n\n#_1DDF91: LDA.w $0F70,X\n#_1DDF94: BPL .exit\n\n; ---------------------------------------------------------\n\n#_1DDF96: STZ.w $0F70,X\n\n#_1DDF99: LDA.w $0D50,X\n#_1DDF9C: ASL A\n#_1DDF9D: ROR.w $0D50,X\n#_1DDFA0: LDA.w $0D40,X\n\n#_1DDFA3: ASL A\n#_1DDFA4: ROR.w $0D40,X\n\n#_1DDFA7: LDY.w $0D80,X\n#_1DDFAA: CPY.b #$04\n#_1DDFAC: BNE .still_bouncing\n\n#_1DDFAE: STZ.w $0D50,X\n#_1DDFB1: STZ.w $0D40,X\n#_1DDFB4: STZ.w $0F80,X\n\n#_1DDFB7: BRA .exit\n\n; ---------------------------------------------------------\n\n.still_bouncing\n#_1DDFB9: INC.w $0D80,X\n\n#_1DDFBC: LDA.w QuakeBounceSpeeds,Y\n#_1DDFBF: STA.w $0F80,X\n\n#_1DDFC2: CPY.b #$02\n#_1DDFC4: BCS .exit\n\n#_1DDFC6: JSR Sprite_SpawnWaterSplash\n#_1DDFC9: BMI .exit\n\n#_1DDFCB: LDA.b #$10\n#_1DDFCD: STA.w $0DF0,Y\n\n.exit\n#_1DDFD0: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_BigFish", + "code": "Catfish_BigFish:\n#_1DDFD1: JSR SpriteDraw_Catfish\n#_1DDFD4: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DDFD7: LDA.w $0D80,X\n#_1DDFDA: JSL JumpTableLocal\n#_1DDFDE: dw Catfish_Sleep\n#_1DDFE0: dw Catfish_TheRumbling\n#_1DDFE2: dw Catfish_Surface\n#_1DDFE4: dw Catfish_LeaveMeAlone\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_Sleep", + "code": "Catfish_Sleep:\n#_1DDFE6: LDY.b #$0F\n\n.next_sprite\n\n#_1DDFE8: CPY.w $0FA0\n#_1DDFEB: BEQ .skip_sprite\n\n#_1DDFED: LDA.w $0DD0,Y\n#_1DDFF0: CMP.b #$03\n#_1DDFF2: BNE .skip_sprite\n\n#_1DDFF4: LDA.w $0D10,Y\n#_1DDFF7: STA.b $00\n\n#_1DDFF9: LDA.w $0D30,Y\n#_1DDFFC: STA.b $01\n\n#_1DDFFE: LDA.w $0D00,Y\n#_1DE001: STA.b $02\n\n#_1DE003: LDA.w $0D20,Y\n#_1DE006: STA.b $03\n\n#_1DE008: REP #$20\n\n#_1DE00A: LDA.w $0FD8\n#_1DE00D: SEC\n#_1DE00E: SBC.b $00\n#_1DE010: CLC\n#_1DE011: ADC.w #$0020\n\n#_1DE014: CMP.w #$0040\n#_1DE017: BCS .skip_sprite\n\n#_1DE019: LDA.w $0FDA\n#_1DE01C: SEC\n#_1DE01D: SBC.b $02\n#_1DE01F: CLC\n#_1DE020: ADC.w #$0020\n\n#_1DE023: CMP.w #$0040\n#_1DE026: BCS .skip_sprite\n\n#_1DE028: SEP #$20\n\n; ---------------------------------------------------------\n\n#Catfish_AdvanceAI:\n#_1DE02A: INC.w $0D80,X\n\n#_1DE02D: LDA.b #$FF\n#_1DE02F: STA.w $0DF0,X\n\n#_1DE032: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_TheRumbling", + "code": "Catfish_TheRumbling:\n#_1DE039: LDA.w $0DF0,X\n#_1DE03C: BNE .delay\n\n#_1DE03E: JSR Catfish_AdvanceAI\n\n#_1DE041: STZ.w $011A\n#_1DE044: STZ.w $011B\n\n#_1DE047: LDA.b #$05 ; SFX1.05\n#_1DE049: STA.w $012D\n\n#_1DE04C: LDA.b #$30\n#_1DE04E: STA.w $0F80,X\n\n#_1DE051: LDA.b #$00\n#_1DE053: STA.w $0D50,X\n\n#_1DE056: JSR Catfish_SpawnPlop\n\n#_1DE059: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_Surface", + "code": "Catfish_Surface:\n#_1DE08C: INC.w $0E80,X\n\n#_1DE08F: JSR Sprite_Move_XYZ_Bank1D\n\n#_1DE092: LDA.w $0F80,X\n#_1DE095: SEC\n#_1DE096: SBC.b #$02\n#_1DE098: STA.w $0F80,X\n\n#_1DE09B: CMP.b #$D0\n#_1DE09D: BNE .no_plop\n\n#_1DE09F: JSR Catfish_SpawnPlop\n\n.no_plop\n#_1DE0A2: LDA.w $0F70,X\n#_1DE0A5: BPL .leaping\n\n#_1DE0A7: STZ.w $0F70,X\n\n#_1DE0AA: INC.w $0D80,X\n\n#_1DE0AD: LDA.b #$FF\n#_1DE0AF: STA.w $0DF0,X\n\n.leaping\n#_1DE0B2: LDA.w $0E80,X\n#_1DE0B5: LSR A\n#_1DE0B6: LSR A\n#_1DE0B7: TAY\n\n#_1DE0B8: LDA.w .draw,Y\n#_1DE0BB: STA.w $0DC0,X\n\n#_1DE0BE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_LeaveMeAlone", + "code": "Catfish_LeaveMeAlone:\n#_1DE0D3: LDA.w $0DF0,X\n#_1DE0D6: BNE .stay\n\n#_1DE0D8: STZ.w $0DD0,X\n\n#_1DE0DB: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnBomb", + "code": "Sprite_SpawnBomb:\n#_1DE144: LDA.b #$4A ; SPRITE 4A\n#_1DE146: JSL Sprite_SpawnDynamically\n#_1DE14A: BMI .exit\n\n#_1DE14C: JSL Sprite_SetSpawnedCoordinates\n#_1DE150: JSL Sprite_TransmuteToBomb\n\n#_1DE154: LDA.b #$50\n#_1DE156: STA.w $0E00,Y\n\n#_1DE159: LDA.b #$18\n#_1DE15B: STA.w $0D50,Y\n\n#_1DE15E: LDA.b #$30\n#_1DE160: STA.w $0F80,Y\n\n.exit\n#_1DE163: RTS", + "file": "bank_1D.asm" + }, + { + "name": "I_said_no_plop", + "code": "I_said_no_plop:\n#_1DE164: CMP.b #$FC\n#_1DE166: BNE .exit\n\n#_1DE168: JSR Sprite_SpawnWaterSplash\n\n.exit\n#_1DE16B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_RegurgitateMedallion", + "code": "Catfish_RegurgitateMedallion:\n#_1DE16C: LDA.b #$C0 ; SPRITE C0\n#_1DE16E: JSL Sprite_SpawnDynamically\n#_1DE172: BMI .exit\n\n#_1DE174: JSL Sprite_SetSpawnedCoordinates\n\n#_1DE178: PHX\n#_1DE179: TYX\n\n#_1DE17A: LDA.b #$18\n#_1DE17C: STA.w $0D50,X\n\n#_1DE17F: LDA.b #$30\n#_1DE181: STA.w $0F80,X\n\n#_1DE184: LDA.b #$11 ; ITEMGET 11\n#_1DE186: STA.w $0D90,X\n\n#_1DE189: LDA.b #$20 ; SFX2.20\n#_1DE18B: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1DE18F: LDA.b #$83\n#_1DE191: STA.w $0E40,X\n\n#_1DE194: LDA.b #$58\n#_1DE196: STA.w $0E60,X\n\n#_1DE199: AND.b #$0F\n#_1DE19B: STA.w $0F50,X\n\n#_1DE19E: PLX\n\n#_1DE19F: PHX\n#_1DE1A0: PHY\n\n#_1DE1A1: LDA.b #$1C\n#_1DE1A3: JSL WriteTo4BPPBuffer_item_gfx\n\n#_1DE1A7: PLY\n#_1DE1A8: PLX\n\n.exit\n#_1DE1A9: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Zora_RegurgitateFlippers", + "code": "Zora_RegurgitateFlippers:\n#_1DE1AA: LDA.b #$C0 ; SPRITE C0\n#_1DE1AC: JSL Sprite_SpawnDynamically\n#_1DE1B0: BMI .exit\n\n#_1DE1B2: JSL Sprite_SetSpawnedCoordinates\n\n#_1DE1B6: PHX\n#_1DE1B7: TYX\n\n#_1DE1B8: LDA.b #$20\n#_1DE1BA: STA.w $0F80,X\n\n#_1DE1BD: LDA.b #$10\n#_1DE1BF: STA.w $0D40,X\n\n#_1DE1C2: LDA.b #$1E ; ITEMGET 1E\n#_1DE1C4: STA.w $0D90,X\n\n#_1DE1C7: LDA.b #$20 ; SFX2.20\n#_1DE1C9: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1DE1CD: LDA.b #$83\n#_1DE1CF: STA.w $0E40,X\n\n#_1DE1D2: LDA.b #$54\n#_1DE1D4: STA.w $0E60,X\n\n#_1DE1D7: AND.b #$0F\n#_1DE1D9: STA.w $0F50,X\n\n#_1DE1DC: LDA.b #$30\n#_1DE1DE: STA.w $0EE0,X\n\n#_1DE1E1: PLX\n\n#_1DE1E2: PHX\n#_1DE1E3: PHY\n\n#_1DE1E4: LDA.b #$11\n#_1DE1E6: JSL WriteTo4BPPBuffer_item_gfx\n\n#_1DE1EA: PLY\n#_1DE1EB: PLX\n\n.exit\n#_1DE1EC: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_SpawnPlop", + "code": "Catfish_SpawnPlop:\n#_1DE1ED: LDA.b #$EC ; SPRITE EC\n#_1DE1EF: JSL Sprite_SpawnDynamically\n#_1DE1F3: BMI .exit\n\n#_1DE1F5: JSL Sprite_SetSpawnedCoordinates\n\n#_1DE1F9: LDA.b #$03\n#_1DE1FB: STA.w $0DD0,Y\n\n#_1DE1FE: LDA.b #$0F\n#_1DE200: STA.w $0DF0,Y\n\n#_1DE203: LDA.b #$00\n#_1DE205: STA.w $0D80,Y\n\n#_1DE208: LDA.b #$03\n#_1DE20A: STA.w $0E40,Y\n\n#_1DE20D: LDA.b #$28 ; SFX2.28\n#_1DE20F: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DE213: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnWaterSplash_long", + "code": "Sprite_SpawnWaterSplash_long:\n#_1DE214: PHB\n#_1DE215: PHK\n#_1DE216: PLB\n\n#_1DE217: JSR Sprite_SpawnWaterSplash\n\n#_1DE21A: PLB\n\n#_1DE21B: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnWaterSplash", + "code": "Sprite_SpawnWaterSplash:\n#_1DE21C: LDA.b #$C0 ; SPRITE C0\n#_1DE21E: JSL Sprite_SpawnDynamically\n#_1DE222: BMI .exit\n\n#_1DE224: JSL Sprite_SetSpawnedCoordinates\n\n#_1DE228: LDA.b #$80\n#_1DE22A: STA.w $0D90,Y\n\n#_1DE22D: LDA.b #$02\n#_1DE22F: STA.w $0E40,Y\n#_1DE232: STA.w $0BA0,Y\n\n#_1DE235: LDA.b #$04\n#_1DE237: STA.w $0F50,Y\n\n#_1DE23A: LDA.b #$1F\n#_1DE23C: STA.w $0DF0,Y\n\n.exit\n#_1DE23F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Catfish", + "code": "SpriteDraw_Catfish:\n#_1DE320: LDA.b #$00\n#_1DE322: XBA\n#_1DE323: LDA.w $0DC0,X\n#_1DE326: BEQ .no_draw\n\n#_1DE328: DEC A\n\n#_1DE329: REP #$20\n\n#_1DE32B: ASL A\n#_1DE32C: ASL A\n#_1DE32D: ASL A\n#_1DE32E: ASL A\n#_1DE32F: ASL A\n#_1DE330: ADC.w #.oam_groups\n#_1DE333: STA.b $08\n\n#_1DE335: SEP #$20\n\n#_1DE337: LDA.b #$04\n#_1DE339: JMP.w SpriteDraw_Tabulated_Bank1D\n\n.no_draw\n#_1DE33C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Catfish_SplashOfWater", + "code": "Catfish_SplashOfWater:\n#_1DE37D: LDA.b #$00\n#_1DE37F: XBA\n#_1DE380: LDA.w $0DF0,X\n#_1DE383: BNE .dont_delete_self\n\n#_1DE385: STZ.w $0DD0,X\n\n.dont_delete_self\n#_1DE388: LSR A\n#_1DE389: LSR A\n#_1DE38A: LSR A\n\n#_1DE38B: REP #$20\n\n#_1DE38D: ASL A\n#_1DE38E: ASL A\n#_1DE38F: ASL A\n#_1DE390: ASL A\n#_1DE391: ADC.w #.oam_groups\n#_1DE394: STA.b $08\n\n#_1DE396: SEP #$20\n\n#_1DE398: LDA.b #$02\n#_1DE39A: JMP.w SpriteDraw_Tabulated_Bank1D\n\n; =========================================================\n\npool Sprite_BF_Lightning\n\n.anim\n#_1DE39D: db $00, $01, $02, $03\n#_1DE3A1: db $00, $01, $02, $03\n\n.flip\n#_1DE3A5: db $00, $00, $00, $00\n#_1DE3A9: db $40, $40, $40, $40\n\n.branch_offset_x\n#_1DE3AD: db -15, 0, 0, -15, 0, -15, -15, 0\n#_1DE3B5: db -15, 0, 0, -15, 0, -15, -15, 0\n#_1DE3BD: db 0, 15, 15, 0, 15, 0, 0, 15\n#_1DE3C5: db 0, 15, 15, 0, 15, 0, 0, 15\n#_1DE3CD: db 0, 15, 15, 0, 15, 0, 0, 15\n#_1DE3D5: db 0, 15, 15, 0, 15, 0, 0, 15\n#_1DE3DD: db -15, 0, 0, -15, 0, -15, -15, 0\n#_1DE3E5: db -15, 0, 0, -15, 0, -15, -15, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_BF_Lightning", + "code": "Sprite_BF_Lightning:\n#_1DE3ED: LDA.b $1A\n#_1DE3EF: ASL A\n#_1DE3F0: AND.b #$0E\n#_1DE3F2: STA.b $00\n\n#_1DE3F4: LDY.w $0D90,X\n\n#_1DE3F7: LDA.w $0F50,X\n#_1DE3FA: AND.b #$B1\n#_1DE3FC: ORA.w .flip,Y\n#_1DE3FF: ORA.b $00\n#_1DE401: STA.w $0F50,X\n\n#_1DE404: LDA.w .anim,Y\n\n#_1DE407: LDY.w $048E\n#_1DE40A: CPY.b #$20 ; ROOM 0020\n#_1DE40C: BNE .use_set_1\n\n#_1DE40E: CLC\n#_1DE40F: ADC.b #$04\n\n; ---------------------------------------------------------\n\n.use_set_1\n#_1DE411: STA.w $0DC0,X\n\n#_1DE414: JSL SpriteDraw_SingleLarge_long\n\n#_1DE418: JSR Sprite_CheckIfActive_Bank1D\n#_1DE41B: LDA.w $0DF0,X\n#_1DE41E: BNE .exit\n\n#_1DE420: JSR Lightning_SpawnGarnish\n\n#_1DE423: LDA.b #$02\n#_1DE425: STA.w $0DF0,X\n\n#_1DE428: LDA.w $0D00,X\n#_1DE42B: CLC\n#_1DE42C: ADC.b #$10\n#_1DE42E: STA.w $0D00,X\n\n#_1DE431: PHA\n\n#_1DE432: LDA.w $0D20,X\n#_1DE435: ADC.b #$00\n#_1DE437: STA.w $0D20,X\n\n#_1DE43A: PLA\n#_1DE43B: SEC\n#_1DE43C: SBC.b $E8\n\n#_1DE43E: CMP.b #$D0\n#_1DE440: BCC .dont_delete_self\n\n#_1DE442: STZ.w $0DD0,X\n\n#_1DE445: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Lightning_SpawnGarnish", + "code": "Lightning_SpawnGarnish:\n#_1DE475: PHX\n#_1DE476: TXY\n\n#_1DE477: LDX.b #$1D\n\n.next_slot\n#_1DE479: LDA.l $7FF800,X\n#_1DE47D: BEQ .free_slot\n\n#_1DE47F: DEX\n#_1DE480: BPL .next_slot\n\n#_1DE482: DEC.w $0FF8\n#_1DE485: BPL .use_search_index\n\n#_1DE487: LDA.b #$1D\n#_1DE489: STA.w $0FF8\n\n.use_search_index\n#_1DE48C: LDX.w $0FF8\n\n; ---------------------------------------------------------\n\n.free_slot\n#_1DE48F: LDA.b #$09 ; GARNISH 09\n#_1DE491: STA.l $7FF800,X\n#_1DE495: STA.w $0FB4\n\n#_1DE498: LDA.w $0D90,Y\n#_1DE49B: STA.l $7FF92C,X\n\n#_1DE49F: LDA.w $0D10,Y\n#_1DE4A2: STA.l $7FF83C,X\n\n#_1DE4A6: LDA.w $0D30,Y\n#_1DE4A9: STA.l $7FF878,X\n\n; ---------------------------------------------------------\n\n#_1DE4AD: LDA.w $0D00,Y\n#_1DE4B0: CLC\n#_1DE4B1: ADC.b #$10\n#_1DE4B3: STA.l $7FF81E,X\n\n#_1DE4B7: LDA.w $0D20,Y\n#_1DE4BA: ADC.b #$00\n#_1DE4BC: STA.l $7FF85A,X\n\n#_1DE4C0: LDA.b #$20\n#_1DE4C2: STA.l $7FF90E,X\n\n; ---------------------------------------------------------\n\n#_1DE4C6: PLX\n\n#_1DE4C7: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_BD_Vitreous", + "code": "Sprite_BD_Vitreous:\n#_1DE4C8: LDA.w $0F10,X\n#_1DE4CB: BEQ .not_lightningening\n\n#_1DE4CD: LDA.b #$03\n#_1DE4CF: STA.w $0DC0,X\n\n; ---------------------------------------------------------\n\n.not_lightningening\n#_1DE4D2: JSR SpriteDraw_Vitreous\n\n#_1DE4D5: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DE4D8: JSR Vitreous_SetMinionsForth\n\n#_1DE4DB: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DE4DE: LDA.w $0D80,X\n#_1DE4E1: JSL JumpTableLocal\n#_1DE4E5: dw Vitreous_DunkedInGoo\n#_1DE4E7: dw Vitreous_Lightningening\n#_1DE4E9: dw Vitreous_Bouncing\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_DunkedInGoo", + "code": "Vitreous_DunkedInGoo:\n#_1DE4EB: STZ.w $0FF8\n\n#_1DE4EE: STZ.w $0EA0,X\n\n#_1DE4F1: LDA.w $0E60,X\n#_1DE4F4: ORA.b #$40\n#_1DE4F6: STA.w $0E60,X\n\n#_1DE4F9: LDA.b $1A\n#_1DE4FB: AND.b #$01\n#_1DE4FD: BNE .not_about_to_zap\n\n#_1DE4FF: DEC.w $0D90,X\n#_1DE502: BNE .not_about_to_zap\n\n; ---------------------------------------------------------\n\n#_1DE504: LDA.w $0E60,X\n#_1DE507: AND.b #$BF\n#_1DE509: STA.w $0E60,X\n\n#_1DE50C: LDA.b #$10\n#_1DE50E: STA.w $0F10,X\n\n#_1DE511: INC.w $0D80,X\n\n#_1DE514: LDA.b #$80\n#_1DE516: STA.w $0DF0,X\n\n#_1DE519: LDA.w $0ED0,X\n#_1DE51C: BNE .not_about_to_zap\n\n; ---------------------------------------------------------\n\n#_1DE51E: INC.w $0D80,X\n\n#_1DE521: LDA.b #$40\n#_1DE523: STA.w $0DF0,X\n\n#_1DE526: STZ.w $0BA0,X\n\n#_1DE529: LDA.b #$35 ; SFX2.35\n#_1DE52B: STA.w $012E\n\n#_1DE52E: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_Animate_step", + "code": "Vitreous_Animate_step:\n#_1DE53D: db $02, $01\n\n; =========================================================\n\npool Vitreous_Lightningening\n\n.timer\n#_1DE53F: db 32, 32, 32, 64, 96, 128, 160, 192, 224, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_Lightningening", + "code": "Vitreous_Lightningening:\n#_1DE549: STZ.w $0EA0,X\n\n#_1DE54C: LDA.w $0DF0,X\n#_1DE54F: BNE Vitreous_Animate\n\n#_1DE551: LDA.b #$10\n#_1DE553: STA.w $0F10,X\n\n#_1DE556: STZ.w $0D80,X\n\n#_1DE559: LDY.w $0ED0,X\n\n#_1DE55C: LDA.w .timer,Y\n#_1DE55F: STA.w $0D90,X\n\n#_1DE562: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_Animate", + "code": "Vitreous_Animate:\n#_1DE563: CMP.b #$40\n#_1DE565: BEQ .lightning\n\n#_1DE567: CMP.b #$41\n#_1DE569: BEQ .lightning\n\n#_1DE56B: CMP.b #$42\n#_1DE56D: BNE .no_lightning\n\n.lightning\n#_1DE56F: JSL Sprite_SpawnLightning\n\n.no_lightning\n#_1DE573: STZ.w $0DC0,X\n\n#_1DE576: JSR Sprite_IsRightOfLink_Bank1D\n\n#_1DE579: LDA.b $0F\n#_1DE57B: CLC\n#_1DE57C: ADC.b #$10\n#_1DE57E: CMP.b #$20\n#_1DE580: BCC .exit\n\n#_1DE582: LDA.w .step,Y\n#_1DE585: STA.w $0DC0,X\n\n.exit\n#_1DE588: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_Bouncing", + "code": "Vitreous_Bouncing:\n#_1DE58B: JSR Vitreous_Animate\n#_1DE58E: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1DE591: LDA.w $0DF0,X\n#_1DE594: BEQ .bouncing\n\n#_1DE596: AND.b #$02\n#_1DE598: LSR A\n#_1DE599: TAY\n\n#_1DE59A: LDA.w .x_shake,Y\n#_1DE59D: STA.w $0D50,X\n\n#_1DE5A0: JSR Sprite_Move_X_Bank1D\n\n#_1DE5A3: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_EyeballRoster", + "code": "Vitreous_EyeballRoster:\n#_1DE5CA: db $05, $06, $07, $08, $09, $0A, $0B, $0C\n#_1DE5D2: db $0D, $05, $06, $07, $08, $09, $0A, $0B\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "Vitreous_SetMinionsForth", + "code": "Vitreous_SetMinionsForth:\n#_1DE5DA: INC.w $0E80,X\n\n#_1DE5DD: LDA.w $0E80,X\n#_1DE5E0: AND.b #$3F\n#_1DE5E2: BNE .exit\n\n#_1DE5E4: JSL GetRandomNumber\n#_1DE5E8: AND.b #$0F\n#_1DE5EA: TAY\n\n#_1DE5EB: LDA.w Vitreous_EyeballRoster,Y\n#_1DE5EE: TAY\n\n#_1DE5EF: LDA.w $0D80,Y\n#_1DE5F2: BNE .already_enlisted\n\n#_1DE5F4: INC A\n#_1DE5F5: STA.w $0D80,Y\n\n#_1DE5F8: LDA.b #$15 ; SFX2.15\n#_1DE5FA: STA.w $012E\n\n.exit\n#_1DE5FD: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnLightning", + "code": "Sprite_SpawnLightning:\n#_1DE612: PHB\n#_1DE613: PHK\n#_1DE614: PLB\n\n#_1DE615: LDA.b #$BF ; SPRITE BF\n#_1DE617: JSL Sprite_SpawnDynamically\n#_1DE61B: BMI .no_space\n\n#_1DE61D: LDA.b #$26 ; SFX3.26\n#_1DE61F: STA.w $012F\n\n#_1DE622: JSL Sprite_SetSpawnedCoordinates\n\n#_1DE626: JSL GetRandomNumber\n#_1DE62A: AND.b #$07\n#_1DE62C: STA.w $0D90,Y\n\n#_1DE62F: PHX\n\n#_1DE630: TAX\n\n#_1DE631: LDA.b $00\n#_1DE633: CLC\n#_1DE634: ADC.w .offset_x_low,X\n#_1DE637: STA.w $0D10,Y\n\n#_1DE63A: LDA.b $01\n#_1DE63C: ADC.w .offset_x_high,X\n#_1DE63F: STA.w $0D30,Y\n\n#_1DE642: LDA.b $02\n#_1DE644: ADC.b #$0C\n#_1DE646: STA.w $0D00,Y\n\n#_1DE649: PLX\n\n#_1DE64A: LDA.b #$02\n#_1DE64C: STA.w $0DF0,Y\n\n#_1DE64F: LDA.b #$20\n#_1DE651: STA.w $0FF9\n\n.no_space\n#_1DE654: PLB\n\n#_1DE655: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Vitreous", + "code": "SpriteDraw_Vitreous:\n#_1DE716: LDA.b #$00\n#_1DE718: XBA\n#_1DE719: LDA.w $0DC0,X\n\n#_1DE71C: REP #$20\n\n#_1DE71E: ASL A\n#_1DE71F: ASL A\n#_1DE720: ASL A\n#_1DE721: ASL A\n#_1DE722: ASL A\n#_1DE723: ADC.w #.oam_groups\n#_1DE726: STA.b $08\n\n#_1DE728: LDA.w $0D80,X\n#_1DE72B: AND.w #$00FF\n#_1DE72E: CMP.w #$0002\n#_1DE731: BNE .use_allotted_oam\n\n#_1DE733: LDA.w $0DD0,X\n#_1DE736: AND.w #$00FF\n#_1DE739: CMP.w #$0009\n#_1DE73C: BNE .use_allotted_oam\n\n#_1DE73E: LDA.w #$0800\n#_1DE741: STA.b $90\n\n#_1DE743: LDA.w #$0A20\n#_1DE746: STA.b $92\n\n.use_allotted_oam\n#_1DE748: SEP #$20\n\n#_1DE74A: LDA.b #$04\n#_1DE74C: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1DE74F: LDA.w $0D80,X\n#_1DE752: CMP.b #$02\n#_1DE754: BNE .exit\n\n#_1DE756: LDA.w $0B89,X\n#_1DE759: AND.b #$F1\n#_1DE75B: STA.w $0B89,X\n\n#_1DE75E: JSL SpriteDraw_BigShadow_with_altitude\n\n; ---------------------------------------------------------\n\n.exit\n#_1DE762: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_BE_VitreousEye", + "code": "Sprite_BE_VitreousEye:\n#_1DE773: LDA.w $0E80,X\n\n#_1DE776: LSR A\n#_1DE777: LSR A\n#_1DE778: LSR A\n\n#_1DE779: AND.b #$06\n#_1DE77B: TAY\n\n#_1DE77C: REP #$20\n\n#_1DE77E: LDA.w $0FD8\n#_1DE781: CLC\n#_1DE782: ADC.w .draw_offset_x,Y\n#_1DE785: STA.w $0FD8\n\n#_1DE788: LDA.w $0FDA\n#_1DE78B: CLC\n#_1DE78C: ADC.w .draw_offset_y,Y\n#_1DE78F: STA.w $0FDA\n\n; ---------------------------------------------------------\n\n#_1DE792: SEP #$20\n\n#_1DE794: JSL SpriteDraw_SingleLarge_long\n#_1DE798: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DE79B: INC.w $0E80,X\n\n#_1DE79E: LDA.w $0DC0,X\n#_1DE7A1: BEQ .not_buttkisser_eyeball\n\n#_1DE7A3: RTS", + "file": "bank_1D.asm" + }, + { + "name": "VitreousEye_TargetLink", + "code": "VitreousEye_TargetLink:\n#_1DE7C4: LDA.b $22\n#_1DE7C6: STA.w $0ED0,X\n\n#_1DE7C9: LDA.b $23\n#_1DE7CB: STA.w $0EB0,X\n\n#_1DE7CE: LDA.b $20\n#_1DE7D0: STA.w $0EC0,X\n\n#_1DE7D3: LDA.b $21\n#_1DE7D5: STA.w $0E30,X\n\n#_1DE7D8: RTS", + "file": "bank_1D.asm" + }, + { + "name": "VitreousEye_ApproachTarget", + "code": "VitreousEye_ApproachTarget:\n#_1DE7D9: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1DE7DC: TXA\n#_1DE7DD: EOR.b $1A\n#_1DE7DF: AND.b #$01\n#_1DE7E1: BNE .dont_adjust_speed\n\n#_1DE7E3: LDA.w $0ED0,X\n#_1DE7E6: STA.b $04\n\n#_1DE7E8: LDA.w $0EB0,X\n#_1DE7EB: STA.b $05\n\n#_1DE7ED: LDA.w $0EC0,X\n#_1DE7F0: STA.b $06\n\n#_1DE7F2: LDA.w $0E30,X\n#_1DE7F5: STA.b $07\n\n#_1DE7F7: LDA.b #$10\n#_1DE7F9: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1DE7FD: LDA.b $00\n#_1DE7FF: STA.w $0D40,X\n\n#_1DE802: LDA.b $01\n#_1DE804: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.dont_adjust_speed\n#_1DE807: JSR Sprite_Move_XY_Bank1D\n\n#_1DE80A: LDA.w $0ED0,X\n#_1DE80D: SEC\n#_1DE80E: SBC.w $0D10,X\n#_1DE811: CLC\n#_1DE812: ADC.b #$04\n\n#_1DE814: CMP.b #$08\n#_1DE816: BCS .exit\n\n#_1DE818: LDA.w $0EC0,X\n#_1DE81B: SEC\n#_1DE81C: SBC.w $0D00,X\n#_1DE81F: CLC\n#_1DE820: ADC.b #$04\n\n#_1DE822: CMP.b #$08\n#_1DE824: BCS .exit\n\n#_1DE826: INC.w $0D80,X\n\n.exit\n#_1DE829: RTS", + "file": "bank_1D.asm" + }, + { + "name": "VitreousEye_ReturnHome", + "code": "VitreousEye_ReturnHome:\n#_1DE82A: JSR Sprite_CheckIfRecoiling_Bank1D\n\n#_1DE82D: TXA\n#_1DE82E: EOR.b $1A\n#_1DE830: AND.b #$01\n#_1DE832: BNE .dont_adjust_speed\n\n#_1DE834: LDA.w $0D90,X\n#_1DE837: STA.b $04\n\n#_1DE839: LDA.w $0DA0,X\n#_1DE83C: STA.b $05\n\n#_1DE83E: LDA.w $0DB0,X\n#_1DE841: STA.b $06\n\n#_1DE843: LDA.w $0DE0,X\n#_1DE846: STA.b $07\n\n#_1DE848: LDA.b #$10\n#_1DE84A: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1DE84E: LDA.b $00\n#_1DE850: STA.w $0D40,X\n\n#_1DE853: LDA.b $01\n#_1DE855: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.dont_adjust_speed\n#_1DE858: JSR Sprite_Move_XY_Bank1D\n\n#_1DE85B: LDA.w $0D90,X\n#_1DE85E: SEC\n#_1DE85F: SBC.w $0D10,X\n#_1DE862: CLC\n#_1DE863: ADC.b #$04\n\n#_1DE865: CMP.b #$08\n#_1DE867: BCS .exit\n\n#_1DE869: LDA.w $0DB0,X\n#_1DE86C: SEC\n#_1DE86D: SBC.w $0D00,X\n#_1DE870: CLC\n#_1DE871: ADC.b #$04\n\n#_1DE873: CMP.b #$08\n#_1DE875: BCS .exit\n\n#_1DE877: LDA.w $0D90,X\n#_1DE87A: STA.w $0D10,X\n\n#_1DE87D: LDA.w $0DA0,X\n#_1DE880: STA.w $0D30,X\n\n#_1DE883: LDA.w $0DB0,X\n#_1DE886: STA.w $0D00,X\n\n#_1DE889: LDA.w $0DE0,X\n#_1DE88C: STA.w $0D20,X\n\n#_1DE88F: STZ.w $0D80,X\n\n.exit\n#_1DE892: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_DirectionToFaceLink_Bank1D", + "code": "Sprite_DirectionToFaceLink_Bank1D:\n#_1DE893: JSL Sprite_DirectionToFaceLink_long\n\n#_1DE897: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_IsRightOfLink_Bank1D", + "code": "Sprite_IsRightOfLink_Bank1D:\n#_1DE898: JSL Sprite_IsRightOfLink_long\n\n#_1DE89C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_IsBelowLink_Bank1D", + "code": "Sprite_IsBelowLink_Bank1D:\n#_1DE89D: JSL Sprite_IsBelowLink_long\n\n#_1DE8A1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank1D", + "code": "Sprite_CheckIfActive_Bank1D:\n#_1DE8A2: LDA.w $0DD0,X\n#_1DE8A5: CMP.b #$09\n#_1DE8A7: BNE .inactive\n\n#_1DE8A9: LDA.w $0FC1\n#_1DE8AC: BNE .inactive\n\n#_1DE8AE: LDA.b $11\n#_1DE8B0: BNE .inactive\n\n#_1DE8B2: LDA.w $0CAA,X\n#_1DE8B5: BMI .active\n\n#_1DE8B7: LDA.w $0F00,X\n#_1DE8BA: BEQ .active\n\n.inactive\n#_1DE8BC: PLA\n#_1DE8BD: PLA\n\n.active\n#_1DE8BE: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_CheckIfRecoiling_Bank1D", + "code": "Sprite_CheckIfRecoiling_Bank1D:\n#_1DE8C5: LDA.w $0EA0,X\n#_1DE8C8: BEQ .exit\n\n#_1DE8CA: AND.b #$7F\n#_1DE8CC: BEQ .recoil_over\n\n#_1DE8CE: LDA.w $0D40,X\n#_1DE8D1: PHA\n\n#_1DE8D2: LDA.w $0D50,X\n#_1DE8D5: PHA\n\n#_1DE8D6: DEC.w $0EA0,X\n#_1DE8D9: BNE .still_recoiling\n\n#_1DE8DB: LDA.w $0F40,X\n#_1DE8DE: CLC\n#_1DE8DF: ADC.b #$20\n#_1DE8E1: CMP.b #$40\n#_1DE8E3: BCS .no_adjust\n\n#_1DE8E5: LDA.w $0F30,X\n#_1DE8E8: CLC\n#_1DE8E9: ADC.b #$20\n#_1DE8EB: CMP.b #$40\n#_1DE8ED: BCC .still_recoiling\n\n.no_adjust\n#_1DE8EF: LDA.b #$90\n#_1DE8F1: STA.w $0EA0,X\n\n.still_recoiling\n#_1DE8F4: LDA.w $0EA0,X\n#_1DE8F7: BMI .no_movement\n\n#_1DE8F9: LSR A\n#_1DE8FA: LSR A\n#_1DE8FB: TAY\n\n#_1DE8FC: LDA.b $1A\n#_1DE8FE: AND.w .masks,Y\n#_1DE901: BNE .no_movement\n\n#_1DE903: LDA.w $0F30,X\n#_1DE906: STA.w $0D40,X\n\n#_1DE909: LDA.w $0F40,X\n#_1DE90C: STA.w $0D50,X\n\n#_1DE90F: LDA.w $0CD2,X\n#_1DE912: BMI .handle_movement\n\n#_1DE914: JSR Sprite_CheckTileCollision_Bank1D\n#_1DE917: AND.b #$0F\n#_1DE919: BEQ .handle_movement\n\n#_1DE91B: CMP.b #$04\n#_1DE91D: BCS .stop_vertical_movement\n\n.stop_horizontal_movement\n#_1DE91F: STZ.w $0F40,X\n#_1DE922: STZ.w $0D50,X\n#_1DE925: BRA .movement_stopped\n\n.stop_vertical_movement\n#_1DE927: STZ.w $0F30,X\n#_1DE92A: STZ.w $0D40,X\n\n.movement_stopped\n#_1DE92D: BRA .no_movement\n\n.handle_movement\n#_1DE92F: JSR Sprite_Move_XY_Bank1D\n\n.no_movement\n#_1DE932: PLA\n#_1DE933: STA.w $0D50,X\n\n#_1DE936: PLA\n#_1DE937: STA.w $0D40,X\n\n#_1DE93A: LDA.w $0E20,X\n#_1DE93D: CMP.b #$CE ; SPRITE CE\n#_1DE93F: BEQ .exit\n\n#_1DE941: PLA\n#_1DE942: PLA\n\n.exit\n#_1DE943: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_XYZ_Bank1D", + "code": "Sprite_Move_XYZ_Bank1D:\n#_1DE948: JSR Sprite_Move_Z_Bank1D\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_XY_Bank1D", + "code": "Sprite_Move_XY_Bank1D:\n#_1DE94B: JSR Sprite_Move_X_Bank1D\n#_1DE94E: JSR Sprite_Move_Y_Bank1D\n\n#_1DE951: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_X_Bank1D", + "code": "Sprite_Move_X_Bank1D:\n#_1DE952: PHX\n\n#_1DE953: TXA\n#_1DE954: CLC\n#_1DE955: ADC.b #$10\n#_1DE957: TAX\n\n#_1DE958: JSR Sprite_Move_Y_Bank1D\n\n#_1DE95B: PLX\n\n#_1DE95C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_Y_Bank1D", + "code": "Sprite_Move_Y_Bank1D:\n#_1DE95D: LDA.w $0D40,X\n#_1DE960: BEQ .exit\n\n#_1DE962: ASL A\n#_1DE963: ASL A\n#_1DE964: ASL A\n#_1DE965: ASL A\n#_1DE966: CLC\n#_1DE967: ADC.w $0D60,X\n#_1DE96A: STA.w $0D60,X\n\n#_1DE96D: LDA.w $0D40,X\n#_1DE970: PHP\n\n#_1DE971: LSR A\n#_1DE972: LSR A\n#_1DE973: LSR A\n#_1DE974: LSR A\n\n#_1DE975: LDY.b #$00\n\n#_1DE977: PLP\n#_1DE978: BPL .positive\n\n#_1DE97A: ORA.b #$F0\n#_1DE97C: DEY\n\n.positive\n#_1DE97D: ADC.w $0D00,X\n#_1DE980: STA.w $0D00,X\n\n#_1DE983: TYA\n#_1DE984: ADC.w $0D20,X\n#_1DE987: STA.w $0D20,X\n\n.exit\n#_1DE98A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_Move_Z_Bank1D", + "code": "Sprite_Move_Z_Bank1D:\n#_1DE98B: LDA.w $0F80,X\n#_1DE98E: ASL A\n#_1DE98F: ASL A\n#_1DE990: ASL A\n#_1DE991: ASL A\n#_1DE992: CLC\n#_1DE993: ADC.w $0F90,X\n#_1DE996: STA.w $0F90,X\n\n#_1DE999: LDA.w $0F80,X\n#_1DE99C: PHP\n\n#_1DE99D: LSR A\n#_1DE99E: LSR A\n#_1DE99F: LSR A\n#_1DE9A0: LSR A\n\n#_1DE9A1: PLP\n#_1DE9A2: BPL .positive\n\n#_1DE9A4: ORA.b #$F0\n\n.positive\n#_1DE9A6: ADC.w $0F70,X\n#_1DE9A9: STA.w $0F70,X\n\n#_1DE9AC: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_PrepOAMCoord_Bank1D", + "code": "Sprite_PrepOAMCoord_Bank1D:\n#_1DE9AD: JSL Sprite_PrepOAMCoord_long\n#_1DE9B1: BCC .exit\n\n#_1DE9B3: PLA\n#_1DE9B4: PLA\n\n.exit\n#_1DE9B5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HandleScreenFlash", + "code": "HandleScreenFlash:\n#_1DE9B6: LDA.w $0FF9\n#_1DE9B9: BEQ .noflash\n\n#_1DE9BB: LDY.b $11\n#_1DE9BD: BNE .noflash\n\n#_1DE9BF: DEC.w $0FF9\n#_1DE9C2: BNE .do_filter\n\n.restore_palette\n#_1DE9C4: JSL Palette_RestoreBGAndHUD\n\n#_1DE9C8: RTL", + "file": "bank_1D.asm" + }, + { + "name": "ExecuteCachedSprites", + "code": "ExecuteCachedSprites:\n#_1DE9DA: LDA.b $1B\n#_1DE9DC: BEQ .exit\n\n#_1DE9DE: LDA.b $11\n#_1DE9E0: BEQ .exit\n\n#_1DE9E2: CMP.b #$0E\n#_1DE9E4: BEQ .exit\n\n#_1DE9E6: LDA.w $0FFA\n#_1DE9E9: BEQ .exit\n\n#_1DE9EB: LDX.b #$0F\n\n.next_sprite\n#_1DE9ED: STX.w $0FA0\n\n#_1DE9F0: LDA.w $1D00,X\n#_1DE9F3: BEQ .inactive\n\n#_1DE9F5: JSR UncacheAndExecuteSprite\n\n.inactive\n#_1DE9F8: DEX\n#_1DE9F9: BPL .next_sprite\n\n#_1DE9FB: RTL", + "file": "bank_1D.asm" + }, + { + "name": "UncacheAndExecuteSprite", + "code": "UncacheAndExecuteSprite:\n#_1DEA00: LDA.w $0DD0,X\n#_1DEA03: PHA\n\n#_1DEA04: LDA.w $0E20,X\n#_1DEA07: PHA\n\n#_1DEA08: LDA.w $0D10,X\n#_1DEA0B: PHA\n\n#_1DEA0C: LDA.w $0D30,X\n#_1DEA0F: PHA\n\n#_1DEA10: LDA.w $0D00,X\n#_1DEA13: PHA\n\n#_1DEA14: LDA.w $0D20,X\n#_1DEA17: PHA\n\n#_1DEA18: LDA.w $0DC0,X\n#_1DEA1B: PHA\n\n#_1DEA1C: LDA.w $0D90,X\n#_1DEA1F: PHA\n\n#_1DEA20: LDA.w $0EB0,X\n#_1DEA23: PHA\n\n#_1DEA24: LDA.w $0F50,X\n#_1DEA27: PHA\n\n#_1DEA28: LDA.w $0B89,X\n#_1DEA2B: PHA\n\n#_1DEA2C: LDA.w $0DE0,X\n#_1DEA2F: PHA\n\n#_1DEA30: LDA.w $0E40,X\n#_1DEA33: PHA\n\n#_1DEA34: LDA.w $0F20,X\n#_1DEA37: PHA\n\n#_1DEA38: LDA.w $0D80,X\n#_1DEA3B: PHA\n\n#_1DEA3C: LDA.w $0E60,X\n#_1DEA3F: PHA\n\n#_1DEA40: LDA.w $0DA0,X\n#_1DEA43: PHA\n\n#_1DEA44: LDA.w $0DB0,X\n#_1DEA47: PHA\n\n#_1DEA48: LDA.w $0E90,X\n#_1DEA4B: PHA\n\n#_1DEA4C: LDA.w $0E80,X\n#_1DEA4F: PHA\n\n#_1DEA50: LDA.w $0F70,X\n#_1DEA53: PHA\n\n#_1DEA54: LDA.w $0DF0,X\n#_1DEA57: PHA\n\n#_1DEA58: LDA.l $7FF9C2,X\n#_1DEA5C: PHA\n\n#_1DEA5D: LDA.w $0BA0,X\n#_1DEA60: PHA\n\n; ---------------------------------------------------------\n\n#_1DEA61: LDA.w $1D00,X\n#_1DEA64: STA.w $0DD0,X\n\n#_1DEA67: LDA.w $1D10,X\n#_1DEA6A: STA.w $0E20,X\n\n#_1DEA6D: LDA.w $1D20,X\n#_1DEA70: STA.w $0D10,X\n\n#_1DEA73: LDA.w $1D30,X\n#_1DEA76: STA.w $0D30,X\n\n#_1DEA79: LDA.w $1D40,X\n#_1DEA7C: STA.w $0D00,X\n\n#_1DEA7F: LDA.w $1D50,X\n#_1DEA82: STA.w $0D20,X\n\n#_1DEA85: LDA.w $1D60,X\n#_1DEA88: STA.w $0DC0,X\n\n#_1DEA8B: LDA.w $1D70,X\n#_1DEA8E: STA.w $0D90,X\n\n#_1DEA91: LDA.w $1D80,X\n#_1DEA94: STA.w $0EB0,X\n\n#_1DEA97: LDA.w $1D90,X\n#_1DEA9A: STA.w $0F50,X\n\n#_1DEA9D: LDA.w $1DA0,X\n#_1DEAA0: STA.w $0B89,X\n\n#_1DEAA3: LDA.w $1DB0,X\n#_1DEAA6: STA.w $0DE0,X\n\n#_1DEAA9: LDA.w $1DC0,X\n#_1DEAAC: STA.w $0E40,X\n\n#_1DEAAF: LDA.w $1DD0,X\n#_1DEAB2: STA.w $0F20,X\n\n#_1DEAB5: LDA.w $1DE0,X\n#_1DEAB8: STA.w $0D80,X\n\n#_1DEABB: LDA.w $1DF0,X\n#_1DEABE: STA.w $0E60,X\n\n#_1DEAC1: LDA.l $7FFA5C,X\n#_1DEAC5: STA.w $0DA0,X\n\n#_1DEAC8: LDA.l $7FFA6C,X\n#_1DEACC: STA.w $0DB0,X\n\n#_1DEACF: LDA.l $7FFA7C,X\n#_1DEAD3: STA.w $0E90,X\n\n#_1DEAD6: LDA.l $7FFA8C,X\n#_1DEADA: STA.w $0E80,X\n\n#_1DEADD: LDA.l $7FFA9C,X\n#_1DEAE1: STA.w $0F70,X\n\n#_1DEAE4: LDA.l $7FFAAC,X\n#_1DEAE8: STA.w $0DF0,X\n\n#_1DEAEB: LDA.l $7FFACC,X\n#_1DEAEF: STA.l $7FF9C2,X\n\n#_1DEAF3: LDA.l $7FFADC,X\n#_1DEAF7: STA.w $0BA0,X\n\n; ---------------------------------------------------------\n\n#_1DEAFA: JSL Sprite_ExecuteSingle_long\n\n#_1DEAFE: LDA.w $0F00,X\n#_1DEB01: BEQ .active\n\n#_1DEB03: STZ.w $1D00,X\n\n.active\n#_1DEB06: PLA\n#_1DEB07: STA.w $0BA0,X\n\n#_1DEB0A: PLA\n#_1DEB0B: STA.l $7FF9C2,X\n\n#_1DEB0F: PLA\n#_1DEB10: STA.w $0DF0,X\n\n#_1DEB13: PLA\n#_1DEB14: STA.w $0F70,X\n\n#_1DEB17: PLA\n#_1DEB18: STA.w $0E80,X\n\n#_1DEB1B: PLA\n#_1DEB1C: STA.w $0E90,X\n\n#_1DEB1F: PLA\n#_1DEB20: STA.w $0DB0,X\n\n#_1DEB23: PLA\n#_1DEB24: STA.w $0DA0,X\n\n#_1DEB27: PLA\n#_1DEB28: STA.w $0E60,X\n\n#_1DEB2B: PLA\n#_1DEB2C: STA.w $0D80,X\n\n#_1DEB2F: PLA\n#_1DEB30: STA.w $0F20,X\n\n#_1DEB33: PLA\n#_1DEB34: STA.w $0E40,X\n\n#_1DEB37: PLA\n#_1DEB38: STA.w $0DE0,X\n\n#_1DEB3B: PLA\n#_1DEB3C: STA.w $0B89,X\n\n#_1DEB3F: PLA\n#_1DEB40: STA.w $0F50,X\n\n#_1DEB43: PLA\n#_1DEB44: STA.w $0EB0,X\n\n#_1DEB47: PLA\n#_1DEB48: STA.w $0D90,X\n\n#_1DEB4B: PLA\n#_1DEB4C: STA.w $0DC0,X\n\n#_1DEB4F: PLA\n#_1DEB50: STA.w $0D20,X\n\n#_1DEB53: PLA\n#_1DEB54: STA.w $0D00,X\n\n#_1DEB57: PLA\n#_1DEB58: STA.w $0D30,X\n\n#_1DEB5B: PLA\n#_1DEB5C: STA.w $0D10,X\n\n#_1DEB5F: PLA\n#_1DEB60: STA.w $0E20,X\n\n#_1DEB63: PLA\n#_1DEB64: STA.w $0DD0,X\n\n#_1DEB67: RTS", + "file": "bank_1D.asm" + }, + { + "name": "PuppetSoldier", + "code": "PuppetSoldier:\n#_1DEB84: PHB\n#_1DEB85: PHK\n#_1DEB86: PLB\n\n#_1DEB87: LDA.b $00\n#_1DEB89: STA.w $0D10,X\n\n#_1DEB8C: LDA.b $01\n#_1DEB8E: STA.w $0D30,X\n\n#_1DEB91: LDA.b $02\n#_1DEB93: STA.w $0D00,X\n\n#_1DEB96: LDA.b $03\n#_1DEB98: STA.w $0D20,X\n\n#_1DEB9B: STZ.w $0F70,X\n\n#_1DEB9E: JSL Sprite_Get16BitCoords_long\n\n#_1DEBA2: LDA.b $04\n#_1DEBA4: STA.w $0DE0,X\n#_1DEBA7: STA.w $0EB0,X\n\n#_1DEBAA: TAY\n\n#_1DEBAB: LDA.w .step,Y\n#_1DEBAE: CLC\n#_1DEBAF: ADC.b $06\n#_1DEBB1: STA.w $0DC0,X\n\n#_1DEBB4: LDA.b #$10\n#_1DEBB6: STA.w $0E60,X\n\n#_1DEBB9: STZ.w $0B89,X\n\n#_1DEBBC: LDA.b $05\n#_1DEBBE: ORA.b #$30\n#_1DEBC0: STA.w $0F50,X\n\n#_1DEBC3: LDY.b #$41 ; SPRITE 41\n\n#_1DEBC5: CMP.b #$39\n#_1DEBC7: BEQ .normal_guard\n\n#_1DEBC9: LDY.b #$43 ; SPRITE 43\n\n.normal_guard\n#_1DEBCB: TYA\n#_1DEBCC: STA.w $0E20,X\n\n#_1DEBCF: LDA.b #$07\n#_1DEBD1: STA.w $0E40,X\n\n#_1DEBD4: TXA\n#_1DEBD5: ASL A\n#_1DEBD6: TAY\n\n#_1DEBD7: REP #$20\n\n#_1DEBD9: LDA.w .oam_a,Y\n#_1DEBDC: STA.b $90\n\n#_1DEBDE: LDA.w .oam_b,Y\n#_1DEBE1: STA.b $92\n\n#_1DEBE3: SEP #$20\n\n#_1DEBE5: JSL Guard_HandleAllAnimation_long\n\n#_1DEBE9: PLB\n\n#_1DEBEA: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Overlord19_ArmosCoordinator", + "code": "Overlord19_ArmosCoordinator:\n#_1DEBEB: PHB\n#_1DEBEC: PHK\n#_1DEBED: PLB\n\n#_1DEBEE: JSR .main\n\n#_1DEBF1: PLB\n\n#_1DEBF2: RTL", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_WaitForWakeUp", + "code": "ArmosCoordinator_WaitForWakeUp:\n#_1DEC12: LDA.w $0D90\n#_1DEC15: BEQ .exit\n\n#_1DEC17: LDA.b #$78\n#_1DEC19: STA.w $0B08,X\n\n#_1DEC1C: LDA.b #$FF\n#_1DEC1E: STA.w $0B40,X\n\n#_1DEC21: LDA.b #$40\n#_1DEC23: STA.w $0B0A\n\n#_1DEC26: LDA.b #$C0\n#_1DEC28: STA.w $0B08\n\n#_1DEC2B: LDA.b #$01\n#_1DEC2D: STA.w $0B09\n\n#_1DEC30: JSR ArmosCoordinator_RotateKnights\n\n.exit\n#_1DEC33: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_CirclePosition", + "code": "ArmosCoordinator_CirclePosition:\n#_1DEC34: JSR ArmosCoordinator_CheckKnights\n#_1DEC37: BCC .exit\n\n#_1DEC39: INC.w $0B28,X\n\n#_1DEC3C: LDA.b #$FF\n#_1DEC3E: STA.w $0B30,X\n\n.exit\n#_1DEC41: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_LineUp", + "code": "ArmosCoordinator_LineUp:\n#_1DEC48: LDA.w $0B30,X\n#_1DEC4B: BNE .exit\n\n#_1DEC4D: JSR ArmosCoordinator_DisableCoercion\n\n#_1DEC50: LDY.b #$05\n\n.next\n#_1DEC52: LDA.w .position_x,Y\n#_1DEC55: STA.w $0B10,Y\n\n#_1DEC58: LDA.b #$30\n#_1DEC5A: STA.w $0B30,Y\n\n#_1DEC5D: DEY\n#_1DEC5E: BPL .next\n\n#_1DEC60: INC.w $0B28,X\n\n#_1DEC63: LDA.b #$FF\n#_1DEC65: STA.w $0B30,X\n\n.exit\n#_1DEC68: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_ForwardMarch", + "code": "ArmosCoordinator_ForwardMarch:\n#_1DEC69: LDA.w $0B30,X\n#_1DEC6C: BNE .exit\n\n#_1DEC6E: LDY.b #$05\n\n.next\n#_1DEC70: LDA.w $0B30,Y\n\n#_1DEC73: INC A\n#_1DEC74: STA.w $0B30,Y\n\n#_1DEC77: CPY.b #$00\n\n#_1DEC79: CMP.b #$C0\n#_1DEC7B: BNE .still_marching\n\n#_1DEC7D: LDA.b #$01\n#_1DEC7F: STA.w $0B28,X\n\n#_1DEC82: LDA.w $0B40,X\n#_1DEC85: EOR.b #$FF\n#_1DEC87: INC A\n#_1DEC88: STA.w $0B40,X\n\n#_1DEC8B: JSR ArmosCoordinator_DisableCoercion\n#_1DEC8E: JSR ArmosCoordinator_Rotate\n\n#_1DEC91: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_Pinch", + "code": "ArmosCoordinator_Pinch:\n#_1DEC96: LDA.w $0B0A\n#_1DEC99: DEC A\n#_1DEC9A: STA.w $0B0A\n\n#_1DEC9D: CMP.b #$20\n#_1DEC9F: BNE .pinching\n\n#_1DECA1: INC.w $0B28,X\n\n#_1DECA4: LDA.b #$40\n#_1DECA6: STA.w $0B30,X\n\n.pinching\n#_1DECA9: BRA ArmosCoordinator_Rotate\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_Spread", + "code": "ArmosCoordinator_Spread:\n#_1DECAB: LDA.w $0B0A\n#_1DECAE: INC A\n#_1DECAF: STA.w $0B0A\n\n#_1DECB2: CMP.b #$40\n#_1DECB4: BNE .spreading\n\n#_1DECB6: INC.w $0B28,X\n#_1DECB9: LDA.b #$40\n#_1DECBB: STA.w $0B30,X\n\n.spreading\n#_1DECBE: BRA ArmosCoordinator_Rotate\n\n; =========================================================\n\npool ArmosCoordinator_Rotate\n\n.angle_step\n#_1DECC0: dw $0000, $01A9, $0154, $00FF, $00AA, $0055\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_RotateKnights", + "code": "ArmosCoordinator_RotateKnights:\n#_1DECCC: LDA.w $0B30,X\n#_1DECCF: BNE ArmosCoordinator_Rotate\n\n#_1DECD1: INC.w $0B28,X\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_Rotate", + "code": "ArmosCoordinator_Rotate:\n#_1DECD4: LDY.b #$00\n\n#_1DECD6: LDA.w $0B40,X\n#_1DECD9: BPL .delay\n\n#_1DECDB: DEY\n\n.delay\n#_1DECDC: CLC\n#_1DECDD: ADC.w $0B08\n#_1DECE0: STA.w $0B08\n\n#_1DECE3: TYA\n#_1DECE4: ADC.w $0B09\n#_1DECE7: STA.w $0B09\n\n#_1DECEA: STZ.w $0FB5\n\n.next_knight\n#_1DECED: LDA.w $0FB5\n#_1DECF0: PHA\n\n#_1DECF1: ASL A\n#_1DECF2: TAY\n\n#_1DECF3: REP #$20\n\n#_1DECF5: LDA.w $0B08\n#_1DECF8: CLC\n#_1DECF9: ADC.w .angle_step,Y\n#_1DECFC: STA.b $00\n\n#_1DECFE: SEP #$20\n\n#_1DED00: PLY\n\n#_1DED01: LDA.w $0B0A\n#_1DED04: STA.b $0F\n\n#_1DED06: PHX\n\n#_1DED07: REP #$30\n\n#_1DED09: LDA.b $00\n#_1DED0B: AND.w #$00FF\n#_1DED0E: ASL A\n#_1DED0F: TAX\n\n#_1DED10: LDA.l SmoothCurve,X\n#_1DED14: STA.b $04\n\n#_1DED16: LDA.b $00\n#_1DED18: CLC\n#_1DED19: ADC.w #$0080\n#_1DED1C: STA.b $02\n\n#_1DED1E: AND.w #$00FF\n#_1DED21: ASL A\n#_1DED22: TAX\n\n#_1DED23: LDA.l SmoothCurve,X\n#_1DED27: STA.b $06\n\n#_1DED29: SEP #$30\n\n#_1DED2B: PLX\n\n#_1DED2C: LDA.b $04\n#_1DED2E: STA.w WRMPYA\n\n#_1DED31: LDA.b $0F\n\n#_1DED33: LDY.b $05\n#_1DED35: BNE .nonzero_x\n\n#_1DED37: STA.w WRMPYB\n\n#_1DED3A: NOP ; 8 NOP\n#_1DED3B: NOP\n#_1DED3C: NOP\n#_1DED3D: NOP\n#_1DED3E: NOP\n#_1DED3F: NOP\n#_1DED40: NOP\n#_1DED41: NOP\n\n#_1DED42: ASL.w RDMPYL\n#_1DED45: LDA.w RDMPYH\n#_1DED48: ADC.b #$00\n\n.nonzero_x\n#_1DED4A: LSR.b $01\n#_1DED4C: BCC .sign_correct_x\n\n#_1DED4E: EOR.b #$FF\n#_1DED50: INC A\n\n.sign_correct_x\n#_1DED51: STZ.b $0A\n\n#_1DED53: CMP.b #$00\n#_1DED55: BPL .positive_x\n\n#_1DED57: DEC.b $0A\n\n.positive_x\n#_1DED59: CLC\n#_1DED5A: ADC.w $0B08,X\n\n#_1DED5D: LDY.w $0FB5\n\n#_1DED60: STA.w $0B10,Y\n\n#_1DED63: LDA.w $0B10,X\n#_1DED66: ADC.b $0A\n#_1DED68: STA.w $0B20,Y\n\n#_1DED6B: LDA.b $06\n#_1DED6D: STA.w WRMPYA\n\n#_1DED70: LDA.b $0F\n\n#_1DED72: LDY.b $07\n#_1DED74: BNE .nonzero_y\n\n#_1DED76: STA.w WRMPYB\n\n#_1DED79: NOP ; 8 NOP\n#_1DED7A: NOP\n#_1DED7B: NOP\n#_1DED7C: NOP\n#_1DED7D: NOP\n#_1DED7E: NOP\n#_1DED7F: NOP\n#_1DED80: NOP\n\n#_1DED81: ASL.w RDMPYL\n#_1DED84: LDA.w RDMPYH\n#_1DED87: ADC.b #$00\n\n.nonzero_y\n#_1DED89: LSR.b $03\n#_1DED8B: BCC .sign_correct_y\n\n#_1DED8D: EOR.b #$FF\n#_1DED8F: INC A\n\n.sign_correct_y\n#_1DED90: STZ.b $0A\n\n#_1DED92: CMP.b #$00\n#_1DED94: BPL .positive_y\n\n#_1DED96: DEC.b $0A\n\n.positive_y\n#_1DED98: CLC\n#_1DED99: ADC.w $0B18,X\n\n#_1DED9C: LDY.w $0FB5\n\n#_1DED9F: STA.w $0B30,Y\n\n#_1DEDA2: LDA.w $0B20,X\n#_1DEDA5: ADC.b $0A\n#_1DEDA7: STA.w $0B40,Y\n\n#_1DEDAA: INC.w $0FB5\n\n#_1DEDAD: LDA.w $0FB5\n#_1DEDB0: CMP.b #$06\n#_1DEDB2: BEQ .exit\n\n#_1DEDB4: JMP.w .next_knight\n\n.exit\n#_1DEDB7: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_CheckKnights", + "code": "ArmosCoordinator_CheckKnights:\n#_1DEDB8: LDY.b #$05\n\n.next\n#_1DEDBA: LDA.w $0DD0,Y\n#_1DEDBD: BEQ .is_good\n\n#_1DEDBF: LDA.w $0D80,Y\n#_1DEDC2: BNE .is_good\n\n#_1DEDC4: CLC\n\n#_1DEDC5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "ArmosCoordinator_DisableCoercion", + "code": "ArmosCoordinator_DisableCoercion:\n#_1DEDCB: LDY.b #$05\n\n.next\n#_1DEDCD: LDA.b #$00\n#_1DEDCF: STA.w $0D80,Y\n\n#_1DEDD2: DEY\n#_1DEDD3: BPL .next\n\n#_1DEDD5: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_70_KingHelmasaurFireball", + "code": "Sprite_70_KingHelmasaurFireball:\n#_1DEDD6: PHB\n#_1DEDD7: PHK\n#_1DEDD8: PLB\n\n#_1DEDD9: JSR .main\n\n#_1DEDDC: PLB\n\n#_1DEDDD: RTL", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_UselessJump", + "code": "HelmasaurFireball_UselessJump:\n#_1DEE72: LDA.w $0DF0,X\n#_1DEE75: BNE .delay\n\n#_1DEE77: LDA.b #$12\n#_1DEE79: STA.w $0DF0,X\n\n#_1DEE7C: INC.w $0D80,X\n\n#_1DEE7F: LDA.b #$24\n#_1DEE81: STA.w $0D40,X\n\n.delay\n#_1DEE84: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_MoveDown", + "code": "HelmasaurFireball_MoveDown:\n#_1DEE85: LDA.w $0DF0,X\n#_1DEE88: BNE .delay\n\n#_1DEE8A: INC.w $0D80,X\n\n#_1DEE8D: LDA.b #$1F\n#_1DEE8F: STA.w $0DF0,X\n\n.delay\n#_1DEE92: DEC.w $0D40,X\n#_1DEE95: DEC.w $0D40,X\n\n#_1DEE98: JSR Sprite_Move_Y_Bank1D\n\n#_1DEE9B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_SplitInto3", + "code": "HelmasaurFireball_SplitInto3:\n#_1DEEA0: LDA.w $0DF0,X\n#_1DEEA3: BNE .delay\n\n#_1DEEA5: JMP.w HelmasaurFireball_DoSplit3\n\n; ---------------------------------------------------------\n\n.delay\n#_1DEEA8: LSR A\n#_1DEEA9: LSR A\n#_1DEEAA: LSR A\n#_1DEEAB: TAY\n\n#_1DEEAC: LDA.w .draw,Y\n#_1DEEAF: STA.w $0DC0,X\n\n#_1DEEB2: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_SplitInto4", + "code": "HelmasaurFireball_SplitInto4:\n#_1DEEB3: LDA.w $0DF0,X\n#_1DEEB6: BNE .delay\n\n#_1DEEB8: JMP.w HelmasaurFireball_DoSplit4\n\n.delay\n#_1DEEBB: LDA.w $0EB0,X\n#_1DEEBE: CMP.b #$14\n#_1DEEC0: BCS .exit\n\n#_1DEEC2: INC.w $0EB0,X\n\n#_1DEEC5: JSR Sprite_Move_XY_Bank1D\n\n.exit\n#_1DEEC8: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_Move", + "code": "HelmasaurFireball_Move:\n#_1DEEC9: JSR Sprite_Move_XY_Bank1D\n\n#_1DEECC: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_DoSplit3", + "code": "HelmasaurFireball_DoSplit3:\n#_1DEED3: LDA.b #$36 ; SFX3.36\n#_1DEED5: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DEED9: STZ.w $0DD0,X\n\n#_1DEEDC: LDA.b #$02\n#_1DEEDE: STA.w $0FB5\n\n#_1DEEE1: JSL GetRandomNumber\n#_1DEEE5: STA.w $0FB6\n\n.next\n#_1DEEE8: LDA.b #$70 ; SPRITE 70\n#_1DEEEA: JSL Sprite_SpawnDynamically\n#_1DEEEE: BMI .spawn_failed\n\n; ---------------------------------------------------------\n\n#_1DEEF0: JSL Sprite_SetSpawnedCoordinates\n\n#_1DEEF4: PHX\n\n#_1DEEF5: LDX.w $0FB5\n\n#_1DEEF8: LDA.w .speed_x,X\n#_1DEEFB: STA.w $0D50,Y\n\n#_1DEEFE: LDA.w .speed_y,X\n#_1DEF01: STA.w $0D40,Y\n\n#_1DEF04: LDA.b #$03\n#_1DEF06: STA.w $0D80,Y\n#_1DEF09: STA.w $0BA0,Y\n\n#_1DEF0C: LDA.w $0FB6\n#_1DEF0F: AND.b #$03\n#_1DEF11: CLC\n#_1DEF12: ADC.w $0FB5\n#_1DEF15: TAX\n\n#_1DEF16: LDA.w .timers,X\n#_1DEF19: STA.w $0DF0,Y\n\n#_1DEF1C: LDA.b #$00\n#_1DEF1E: STA.w $0EB0,Y\n\n#_1DEF21: LDA.b #$01\n#_1DEF23: STA.w $0DC0,Y\n\n#_1DEF26: PLX\n\n; ---------------------------------------------------------\n\n.spawn_failed\n#_1DEF27: DEC.w $0FB5\n#_1DEF2A: BPL .next\n\n#_1DEF2C: RTS", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurFireball_DoSplit4", + "code": "HelmasaurFireball_DoSplit4:\n#_1DEF3D: LDA.b #$36 ; SFX3.36\n#_1DEF3F: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DEF43: STZ.w $0DD0,X\n\n#_1DEF46: LDA.b #$03\n#_1DEF48: STA.w $0FB5\n\n.next\n#_1DEF4B: LDA.b #$70 ; SPRITE 70\n#_1DEF4D: JSL Sprite_SpawnDynamically\n#_1DEF51: BMI .spawn_failed\n\n#_1DEF53: JSL Sprite_SetSpawnedCoordinates\n\n#_1DEF57: PHX\n#_1DEF58: LDX.w $0FB5\n\n#_1DEF5B: LDA.w .speed_x,X\n#_1DEF5E: STA.w $0D50,Y\n\n#_1DEF61: LDA.w .speed_y,X\n#_1DEF64: STA.w $0D40,Y\n\n#_1DEF67: PLX\n\n#_1DEF68: LDA.b #$04\n#_1DEF6A: STA.w $0D80,Y\n#_1DEF6D: STA.w $0BA0,Y\n\n.spawn_failed\n#_1DEF70: DEC.w $0FB5\n#_1DEF73: BPL .next\n\n#_1DEF75: RTS", + "file": "bank_1D.asm" + }, + { + "name": "RedArmosCrusher", + "code": "RedArmosCrusher:\n#_1DEF76: PHB\n#_1DEF77: PHK\n#_1DEF78: PLB\n\n#_1DEF79: JSR .main\n\n#_1DEF7C: PLB\n\n#_1DEF7D: RTL", + "file": "bank_1D.asm" + }, + { + "name": "RedArmosCrusher_TargetLink", + "code": "RedArmosCrusher_TargetLink:\n#_1DEFAC: JSR Sprite_CheckDamageToAndFromLink_Bank1D\n\n#_1DEFAF: LDA.w $0DF0,X\n#_1DEFB2: ORA.w $0F70,X\n#_1DEFB5: BNE .exit\n\n#_1DEFB7: LDA.b #$20\n#_1DEFB9: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1DEFBD: LDA.b #$20\n#_1DEFBF: STA.w $0F80,X\n\n#_1DEFC2: INC.w $0ED0,X\n\n#_1DEFC5: LDA.b $22\n#_1DEFC7: STA.w $0DA0,X\n\n#_1DEFCA: LDA.b $23\n#_1DEFCC: STA.w $0DB0,X\n\n#_1DEFCF: LDA.b $20\n#_1DEFD1: STA.w $0E90,X\n\n#_1DEFD4: LDA.b $21\n#_1DEFD6: STA.w $0EB0,X\n\n#_1DEFD9: LDA.b #$20 ; SFX2.20\n#_1DEFDB: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1DEFDF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "RedArmosCrusher_Jump", + "code": "RedArmosCrusher_Jump:\n#_1DEFE0: LDA.w $0F80,X\n#_1DEFE3: CLC\n#_1DEFE4: ADC.b #$03\n#_1DEFE6: STA.w $0F80,X\n\n#_1DEFE9: JSR Sprite_CheckTileCollision_Bank1D\n#_1DEFEC: BNE .tile_collision\n\n; ---------------------------------------------------------\n\n#_1DEFEE: JSL Sprite_Get16BitCoords_long\n\n#_1DEFF2: LDA.w $0DA0,X\n#_1DEFF5: STA.b $00\n\n#_1DEFF7: LDA.w $0DB0,X\n#_1DEFFA: STA.b $01\n\n#_1DEFFC: LDA.w $0E90,X\n#_1DEFFF: STA.b $02\n\n#_1DF001: LDA.w $0EB0,X\n#_1DF004: STA.b $03\n\n#_1DF006: REP #$20\n\n#_1DF008: LDA.b $00\n#_1DF00A: SEC\n#_1DF00B: SBC.w $0FD8\n#_1DF00E: CLC\n#_1DF00F: ADC.w #$0010\n\n#_1DF012: CMP.w #$0020\n#_1DF015: BCS .not_close_enough\n\n#_1DF017: LDA.b $02\n#_1DF019: SEC\n#_1DF01A: SBC.w $0FDA\n#_1DF01D: CLC\n#_1DF01E: ADC.w #$0010\n\n#_1DF021: CMP.w #$0020\n#_1DF024: BCS .not_close_enough\n\n#_1DF026: SEP #$20\n\n; ---------------------------------------------------------\n\n.tile_collision\n#_1DF028: INC.w $0ED0,X\n\n#_1DF02B: LDA.b #$10\n#_1DF02D: STA.w $0DF0,X\n\n#_1DF030: STZ.w $0D50,X\n#_1DF033: STZ.w $0D40,X\n\n; ---------------------------------------------------------\n\n.not_close_enough\n#_1DF036: SEP #$20\n\n#_1DF038: RTS", + "file": "bank_1D.asm" + }, + { + "name": "RedArmosCrusher_Hover", + "code": "RedArmosCrusher_Hover:\n#_1DF039: STZ.w $0F80,X\n\n#_1DF03C: LDA.w $0DF0,X\n#_1DF03F: BNE .exit\n\n#_1DF041: INC.w $0ED0,X\n\n.exit\n#_1DF044: RTS", + "file": "bank_1D.asm" + }, + { + "name": "RedArmosCrusher_Slam", + "code": "RedArmosCrusher_Slam:\n#_1DF045: LDA.b #$98\n#_1DF047: STA.w $0F80,X\n\n#_1DF04A: LDA.w $0F70,X\n#_1DF04D: BMI .exit\n\n#_1DF04F: LDA.b #$20\n#_1DF051: STA.w $0DF0,X\n\n#_1DF054: STZ.w $0ED0,X\n\n#_1DF057: LDA.b #$0C ; SFX2.0C\n#_1DF059: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1DF05D: LDA.b #$20\n#_1DF05F: STA.w $0F10,X\n\n.exit\n#_1DF062: RTS", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_40_LightningGate", + "code": "Sprite_40_LightningGate:\n#_1DF063: PHB\n#_1DF064: PHK\n#_1DF065: PLB\n\n#_1DF066: JSR .main\n\n#_1DF069: PLB\n\n#_1DF06A: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_LightningGate", + "code": "SpriteDraw_LightningGate:\n#_1DF249: LDA.b #$00\n#_1DF24B: XBA\n#_1DF24C: LDA.w $0DC0,X\n\n#_1DF24F: REP #$20\n\n#_1DF251: ASL A\n#_1DF252: ASL A\n#_1DF253: ASL A\n#_1DF254: STA.b $00\n\n#_1DF256: ASL A\n#_1DF257: ASL A\n#_1DF258: ASL A\n#_1DF259: CLC\n#_1DF25A: ADC.b $00\n\n#_1DF25C: ADC.w #.oam_groups\n#_1DF25F: STA.b $08\n\n#_1DF261: LDA.w $0FDA\n#_1DF264: CLC\n#_1DF265: ADC.w #$0008\n#_1DF268: STA.w $0FDA\n\n#_1DF26B: SEP #$20\n\n#_1DF26D: LDA.b #$09\n#_1DF26F: JSR SpriteDraw_Tabulated_Bank1D\n#_1DF272: JSL Sprite_Get16BitCoords_long\n\n#_1DF276: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_MiniMoldorm", + "code": "SpritePrep_MiniMoldorm:\n#_1DF277: PHX\n\n#_1DF278: TXY\n\n#_1DF279: LDA.l SpriteSlotToSegmentOffset,X\n#_1DF27D: TAX\n\n#_1DF27E: LDA.b #$1F\n#_1DF280: STA.b $00\n\n.next_segment\n#_1DF282: LDA.w $0D10,Y\n#_1DF285: STA.l $7FFC00,X\n\n#_1DF289: LDA.w $0D30,Y\n#_1DF28C: STA.l $7FFC80,X\n\n#_1DF290: LDA.w $0D00,Y\n#_1DF293: STA.l $7FFD00,X\n\n#_1DF297: LDA.w $0D20,Y\n#_1DF29A: STA.l $7FFD80,X\n\n#_1DF29E: INX\n\n#_1DF29F: DEC.b $00\n#_1DF2A1: BPL .next_segment\n\n#_1DF2A3: PLX\n\n#_1DF2A4: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Antfairy", + "code": "SpriteDraw_Antfairy:\n#_1DF395: PHB\n#_1DF396: PHK\n#_1DF397: PLB\n\n#_1DF398: INC.w $0E80,X\n\n#_1DF39B: LDA.w $0E80,X\n#_1DF39E: AND.b #$01\n#_1DF3A0: ORA.w $0011\n#_1DF3A3: ORA.w $0FC1\n#_1DF3A6: BNE .continue\n\n#_1DF3A8: INC.w $0DC0,X\n\n#_1DF3AB: LDA.w $0DC0,X\n#_1DF3AE: CMP.b #$06\n#_1DF3B0: BNE .continue\n\n#_1DF3B2: STZ.w $0DC0,X\n\n.continue\n#_1DF3B5: LDA.b #$00\n#_1DF3B7: XBA\n#_1DF3B8: LDA.w $0DC0,X\n\n#_1DF3BB: REP #$20\n\n#_1DF3BD: ASL A\n#_1DF3BE: ASL A\n#_1DF3BF: ASL A\n#_1DF3C0: STA.b $00\n\n#_1DF3C2: ASL A\n#_1DF3C3: ASL A\n#_1DF3C4: ADC.b $00\n\n#_1DF3C6: ADC.w #.oam_groups\n#_1DF3C9: STA.b $08\n\n#_1DF3CB: SEP #$20\n\n#_1DF3CD: LDA.b #$05\n#_1DF3CF: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1DF3D2: PLB\n\n#_1DF3D3: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Toppo_Flustered", + "code": "Toppo_Flustered:\n#_1DF3D4: PHB\n#_1DF3D5: PHK\n#_1DF3D6: PLB\n\n#_1DF3D7: LDA.b #$82\n#_1DF3D9: STA.w $0E40,X\n#_1DF3DC: STA.w $0BA0,X\n\n#_1DF3DF: LDA.b #$49\n#_1DF3E1: STA.w $0E60,X\n\n#_1DF3E4: LDA.w $0E30,X\n#_1DF3E7: BNE .caught\n\n; ---------------------------------------------------------\n\n#_1DF3E9: JSL Sprite_CheckDamageToLink_long\n#_1DF3ED: BCC .not_just_caught\n\n#_1DF3EF: INC.w $0E30,X\n\n#_1DF3F2: LDA.b #$74 ; MESSAGE 0174\n#_1DF3F4: STA.w $1CF0\n\n#_1DF3F7: LDA.b #$01\n#_1DF3F9: STA.w $1CF1\n\n#_1DF3FC: JSL Sprite_ShowMessageMinimal\n#_1DF400: BRA .not_just_caught\n\n; ---------------------------------------------------------\n\n.caught\n#_1DF402: CMP.b #$10\n#_1DF404: BCC .no_prize\n#_1DF406: BNE .not_just_caught\n\n#_1DF408: STZ.w $0BE0,X\n\n#_1DF40B: LDA.b #$06\n#_1DF40D: STA.w $0DD0,X\n\n#_1DF410: LDA.b #$0F\n#_1DF412: STA.w $0DF0,X\n\n#_1DF415: LDA.w $0E40,X\n#_1DF418: CLC\n#_1DF419: ADC.b #$04\n#_1DF41B: STA.w $0E40,X\n\n#_1DF41E: LDA.b #$15 ; SFX2.15\n#_1DF420: JSL SpriteSFX_QueueSFX2WithPan\n\n; ---------------------------------------------------------\n\n#_1DF424: LDA.b #$4D ; SPRITE 4D\n#_1DF426: JSL Sprite_SpawnDynamically\n#_1DF42A: BMI .no_prize\n\n#_1DF42C: JSL Sprite_SetSpawnedCoordinates\n\n#_1DF430: PHX\n\n#_1DF431: TYX\n\n#_1DF432: LDY.b #$06\n#_1DF434: JSL ForcePrizeDrop_long\n\n#_1DF438: PLX\n\n; ---------------------------------------------------------\n\n.no_prize\n#_1DF439: INC.w $0E30,X\n\n; ---------------------------------------------------------\n\n.not_just_caught\n#_1DF43C: INC.w $0E80,X\n\n#_1DF43F: LDA.w $0E80,X\n#_1DF442: AND.b #$04\n#_1DF444: LSR A\n#_1DF445: LSR A\n#_1DF446: ADC.b #$03\n#_1DF448: STA.w $0DC0,X\n\n#_1DF44B: PLB\n\n#_1DF44C: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Mimic", + "code": "SpriteDraw_Mimic:\n#_1DF589: PHB\n#_1DF58A: PHK\n#_1DF58B: PLB\n\n#_1DF58C: LDA.w $0E00,X\n#_1DF58F: BEQ .no_mouth\n\n#_1DF591: LDA.w $0DE0,X\n#_1DF594: CMP.b #$03\n#_1DF596: BEQ .no_mouth\n\n#_1DF598: ASL A\n#_1DF599: TAY\n\n#_1DF59A: REP #$20\n\n#_1DF59C: LDA.w .mouth_group_pointer,Y\n#_1DF59F: STA.b $08\n\n#_1DF5A1: SEP #$20\n\n#_1DF5A3: LDA.b #$01\n#_1DF5A5: JSR SpriteDraw_Tabulated_Bank1D\n\n; ---------------------------------------------------------\n\n.no_mouth\n#_1DF5A8: LDA.w $0DC0,X\n#_1DF5AB: PHA\n\n#_1DF5AC: ASL A\n#_1DF5AD: TAY\n\n#_1DF5AE: REP #$20\n\n#_1DF5B0: LDA.w .group_pointer,Y\n#_1DF5B3: STA.b $08\n\n#_1DF5B5: LDA.b $90\n#_1DF5B7: CLC\n#_1DF5B8: ADC.w #$0004\n#_1DF5BB: STA.b $90\n\n#_1DF5BD: INC.b $92\n\n; ---------------------------------------------------------\n\n#_1DF5BF: SEP #$20\n\n#_1DF5C1: PLY\n\n#_1DF5C2: LDA.w .group_size,Y\n#_1DF5C5: JSR SpriteDraw_Tabulated_Bank1D\n\n#_1DF5C8: DEC.w $0E40,X\n#_1DF5CB: JSL SpriteDraw_Shadow_long\n\n#_1DF5CF: INC.w $0E40,X\n\n#_1DF5D2: PLB\n\n#_1DF5D3: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_ConvertVelocityToAngle", + "code": "Sprite_ConvertVelocityToAngle:\n#_1DF614: PHB\n#_1DF615: PHK\n#_1DF616: PLB\n\n#_1DF617: LDA.b $00\n#_1DF619: ASL A\n#_1DF61A: ROL A\n#_1DF61B: STA.b $08\n\n#_1DF61D: LDA.b $01\n#_1DF61F: ASL A\n#_1DF620: ROL A\n#_1DF621: ASL A\n\n#_1DF622: ORA.b $08\n#_1DF624: AND.b #$03\n#_1DF626: ASL A\n#_1DF627: ASL A\n#_1DF628: ASL A\n#_1DF629: STA.b $0A\n\n#_1DF62B: LDA.b $01\n#_1DF62D: BPL .positive_x\n\n#_1DF62F: EOR.b #$FF\n#_1DF631: INC A\n\n.positive_x\n#_1DF632: STA.b $08\n\n#_1DF634: LDA.b $00\n#_1DF636: BPL .positive_y\n\n#_1DF638: EOR.b #$FF\n#_1DF63A: INC A\n\n.positive_y\n#_1DF63B: STA.b $09\n\n#_1DF63D: LDA.b $08\n#_1DF63F: CMP.b $09\n#_1DF641: BCC .use_y_for_angle\n\n.use_x_for_angle\n#_1DF643: LDA.b $09\n#_1DF645: LSR A\n#_1DF646: LSR A\n\n#_1DF647: CLC\n#_1DF648: ADC.b $0A\n#_1DF64A: TAY\n\n#_1DF64B: LDA.w .angle_x,Y\n#_1DF64E: BRA .exit\n\n.use_y_for_angle\n#_1DF650: LDA.b $08\n#_1DF652: LSR A\n#_1DF653: LSR A\n\n#_1DF654: CLC\n#_1DF655: ADC.b $0A\n#_1DF657: TAY\n\n#_1DF658: LDA.w .angle_y,Y\n\n.exit\n#_1DF65B: PLB\n\n#_1DF65C: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnDynamically", + "code": "Sprite_SpawnDynamically:\n#_1DF65D: LDY.b #$0F\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_SpawnDynamically_slot_limited", + "code": "Sprite_SpawnDynamically_slot_limited:\n#_1DF65F: PHA\n\n.next\n#_1DF660: LDA.w $0DD0,Y\n#_1DF663: BEQ .free_slot\n\n#_1DF665: DEY\n#_1DF666: BPL .next\n\n; ---------------------------------------------------------\n\n#_1DF668: PLA\n#_1DF669: TYA\n\n#_1DF66A: RTL", + "file": "bank_1D.asm" + }, + { + "name": "GeneralizedSpriteTileInteraction", + "code": "GeneralizedSpriteTileInteraction:\n#_1DF6CF: db $00 ; 00\n#_1DF6D0: db $01 ; 01\n#_1DF6D1: db $02 ; 02\n#_1DF6D2: db $03 ; 03\n#_1DF6D3: db $02 ; 04\n#_1DF6D4: db $00 ; 05\n#_1DF6D5: db $00 ; 06\n#_1DF6D6: db $00 ; 07\n#_1DF6D7: db $00 ; 08\n#_1DF6D8: db $01 ; 09\n#_1DF6D9: db $00 ; 0A\n#_1DF6DA: db $01 ; 0B\n#_1DF6DB: db $00 ; 0C\n#_1DF6DC: db $00 ; 0D\n#_1DF6DD: db $00 ; 0E\n#_1DF6DE: db $00 ; 0F\n#_1DF6DF: db $01 ; 10\n#_1DF6E0: db $01 ; 11\n#_1DF6E1: db $01 ; 12\n#_1DF6E2: db $01 ; 13\n#_1DF6E3: db $01 ; 14\n#_1DF6E4: db $01 ; 15\n#_1DF6E5: db $01 ; 16\n#_1DF6E6: db $01 ; 17\n#_1DF6E7: db $01 ; 18\n#_1DF6E8: db $01 ; 19\n#_1DF6E9: db $01 ; 1A\n#_1DF6EA: db $01 ; 1B\n#_1DF6EB: db $00 ; 1C\n#_1DF6EC: db $01 ; 1D\n#_1DF6ED: db $01 ; 1E\n#_1DF6EE: db $01 ; 1F\n#_1DF6EF: db $01 ; 20\n#_1DF6F0: db $01 ; 21\n#_1DF6F1: db $01 ; 22\n#_1DF6F2: db $00 ; 23\n#_1DF6F3: db $00 ; 24\n#_1DF6F4: db $00 ; 25\n#_1DF6F5: db $01 ; 26\n#_1DF6F6: db $02 ; 27\n#_1DF6F7: db $FF ; 28\n#_1DF6F8: db $FF ; 29\n#_1DF6F9: db $FF ; 2A\n#_1DF6FA: db $FF ; 2B\n#_1DF6FB: db $FF ; 2C\n#_1DF6FC: db $FF ; 2D\n#_1DF6FD: db $FF ; 2E\n#_1DF6FE: db $FF ; 2F\n#_1DF6FF: db $01 ; 30\n#_1DF700: db $01 ; 31\n#_1DF701: db $01 ; 32\n#_1DF702: db $01 ; 33\n#_1DF703: db $01 ; 34\n#_1DF704: db $01 ; 35\n#_1DF705: db $01 ; 36\n#_1DF706: db $01 ; 37\n#_1DF707: db $01 ; 38\n#_1DF708: db $01 ; 39\n#_1DF709: db $00 ; 3A\n#_1DF70A: db $00 ; 3B\n#_1DF70B: db $01 ; 3C\n#_1DF70C: db $01 ; 3D\n#_1DF70D: db $01 ; 3E\n#_1DF70E: db $01 ; 3F\n#_1DF70F: db $00 ; 40\n#_1DF710: db $01 ; 41\n#_1DF711: db $01 ; 42\n#_1DF712: db $01 ; 43\n#_1DF713: db $01 ; 44\n#_1DF714: db $01 ; 45\n#_1DF715: db $00 ; 46\n#_1DF716: db $01 ; 47\n#_1DF717: db $00 ; 48\n#_1DF718: db $01 ; 49\n#_1DF719: db $00 ; 4A\n#_1DF71A: db $00 ; 4B\n#_1DF71B: db $FF ; 4C\n#_1DF71C: db $FF ; 4D\n#_1DF71D: db $FF ; 4E\n#_1DF71E: db $FF ; 4F\n#_1DF71F: db $01 ; 50\n#_1DF720: db $01 ; 51\n#_1DF721: db $01 ; 52\n#_1DF722: db $01 ; 53\n#_1DF723: db $01 ; 54\n#_1DF724: db $01 ; 55\n#_1DF725: db $01 ; 56\n#_1DF726: db $01 ; 57\n#_1DF727: db $01 ; 58\n#_1DF728: db $01 ; 59\n#_1DF729: db $01 ; 5A\n#_1DF72A: db $01 ; 5B\n#_1DF72B: db $01 ; 5C\n#_1DF72C: db $01 ; 5D\n#_1DF72D: db $01 ; 5E\n#_1DF72E: db $01 ; 5F\n#_1DF72F: db $00 ; 60\n#_1DF730: db $00 ; 61\n#_1DF731: db $00 ; 62\n#_1DF732: db $00 ; 63\n#_1DF733: db $00 ; 64\n#_1DF734: db $01 ; 65\n#_1DF735: db $00 ; 66\n#_1DF736: db $02 ; 67\n#_1DF737: db $00 ; 68\n#_1DF738: db $00 ; 69\n#_1DF739: db $00 ; 6A\n#_1DF73A: db $00 ; 6B\n#_1DF73B: db $01 ; 6C\n#_1DF73C: db $01 ; 6D\n#_1DF73D: db $01 ; 6E\n#_1DF73E: db $01 ; 6F\n#_1DF73F: db $01 ; 70\n#_1DF740: db $01 ; 71\n#_1DF741: db $01 ; 72\n#_1DF742: db $01 ; 73\n#_1DF743: db $01 ; 74\n#_1DF744: db $01 ; 75\n#_1DF745: db $01 ; 76\n#_1DF746: db $01 ; 77\n#_1DF747: db $01 ; 78\n#_1DF748: db $01 ; 79\n#_1DF749: db $01 ; 7A\n#_1DF74A: db $01 ; 7B\n#_1DF74B: db $01 ; 7C\n#_1DF74C: db $01 ; 7D\n#_1DF74D: db $01 ; 7E\n#_1DF74E: db $01 ; 7F\n#_1DF74F: db $01 ; 80\n#_1DF750: db $01 ; 81\n#_1DF751: db $01 ; 82\n#_1DF752: db $01 ; 83\n#_1DF753: db $01 ; 84\n#_1DF754: db $01 ; 85\n#_1DF755: db $01 ; 86\n#_1DF756: db $01 ; 87\n#_1DF757: db $01 ; 88\n#_1DF758: db $01 ; 89\n#_1DF759: db $01 ; 8A\n#_1DF75A: db $01 ; 8B\n#_1DF75B: db $01 ; 8C\n#_1DF75C: db $01 ; 8D\n#_1DF75D: db $01 ; 8E\n#_1DF75E: db $01 ; 8F\n#_1DF75F: db $01 ; 90\n#_1DF760: db $01 ; 91\n#_1DF761: db $01 ; 92\n#_1DF762: db $01 ; 93\n#_1DF763: db $01 ; 94\n#_1DF764: db $01 ; 95\n#_1DF765: db $01 ; 96\n#_1DF766: db $01 ; 97\n#_1DF767: db $01 ; 98\n#_1DF768: db $01 ; 99\n#_1DF769: db $01 ; 9A\n#_1DF76A: db $01 ; 9B\n#_1DF76B: db $01 ; 9C\n#_1DF76C: db $01 ; 9D\n#_1DF76D: db $01 ; 9E\n#_1DF76E: db $01 ; 9F\n#_1DF76F: db $01 ; A0\n#_1DF770: db $01 ; A1\n#_1DF771: db $01 ; A2\n#_1DF772: db $01 ; A3\n#_1DF773: db $01 ; A4\n#_1DF774: db $01 ; A5\n#_1DF775: db $01 ; A6\n#_1DF776: db $01 ; A7\n#_1DF777: db $01 ; A8\n#_1DF778: db $01 ; A9\n#_1DF779: db $01 ; AA\n#_1DF77A: db $01 ; AB\n#_1DF77B: db $01 ; AC\n#_1DF77C: db $01 ; AD\n#_1DF77D: db $01 ; AE\n#_1DF77E: db $01 ; AF\n#_1DF77F: db $01 ; B0\n#_1DF780: db $01 ; B1\n#_1DF781: db $01 ; B2\n#_1DF782: db $01 ; B3\n#_1DF783: db $01 ; B4\n#_1DF784: db $01 ; B5\n#_1DF785: db $01 ; B6\n#_1DF786: db $01 ; B7\n#_1DF787: db $01 ; B8\n#_1DF788: db $01 ; B9\n#_1DF789: db $01 ; BA\n#_1DF78A: db $01 ; BB\n#_1DF78B: db $01 ; BC\n#_1DF78C: db $01 ; BD\n#_1DF78D: db $01 ; BE\n#_1DF78E: db $01 ; BF\n#_1DF78F: db $01 ; C0\n#_1DF790: db $01 ; C1\n#_1DF791: db $01 ; C2\n#_1DF792: db $01 ; C3\n#_1DF793: db $01 ; C4\n#_1DF794: db $01 ; C5\n#_1DF795: db $01 ; C6\n#_1DF796: db $01 ; C7\n#_1DF797: db $01 ; C8\n#_1DF798: db $01 ; C9\n#_1DF799: db $01 ; CA\n#_1DF79A: db $01 ; CB\n#_1DF79B: db $01 ; CC\n#_1DF79C: db $01 ; CD\n#_1DF79D: db $01 ; CE\n#_1DF79E: db $01 ; CF\n#_1DF79F: db $01 ; D0\n#_1DF7A0: db $01 ; D1\n#_1DF7A1: db $01 ; D2\n#_1DF7A2: db $01 ; D3\n#_1DF7A3: db $01 ; D4\n#_1DF7A4: db $01 ; D5\n#_1DF7A5: db $01 ; D6\n#_1DF7A6: db $01 ; D7\n#_1DF7A7: db $01 ; D8\n#_1DF7A8: db $01 ; D9\n#_1DF7A9: db $01 ; DA\n#_1DF7AA: db $01 ; DB\n#_1DF7AB: db $01 ; DC\n#_1DF7AC: db $01 ; DD\n#_1DF7AD: db $01 ; DE\n#_1DF7AE: db $01 ; DF\n#_1DF7AF: db $01 ; E0\n#_1DF7B0: db $01 ; E1\n#_1DF7B1: db $01 ; E2\n#_1DF7B2: db $01 ; E3\n#_1DF7B3: db $01 ; E4\n#_1DF7B4: db $01 ; E5\n#_1DF7B5: db $01 ; E6\n#_1DF7B6: db $01 ; E7\n#_1DF7B7: db $01 ; E8\n#_1DF7B8: db $01 ; E9\n#_1DF7B9: db $01 ; EA\n#_1DF7BA: db $01 ; EB\n#_1DF7BB: db $01 ; EC\n#_1DF7BC: db $01 ; ED\n#_1DF7BD: db $01 ; EE\n#_1DF7BE: db $01 ; EF\n#_1DF7BF: db $01 ; F0\n#_1DF7C0: db $01 ; F1\n#_1DF7C1: db $01 ; F2\n#_1DF7C2: db $01 ; F3\n#_1DF7C3: db $01 ; F4\n#_1DF7C4: db $01 ; F5\n#_1DF7C5: db $01 ; F6\n#_1DF7C6: db $01 ; F7\n#_1DF7C7: db $01 ; F8\n#_1DF7C8: db $01 ; F9\n#_1DF7C9: db $01 ; FA\n#_1DF7CA: db $01 ; FB\n#_1DF7CB: db $01 ; FC\n#_1DF7CC: db $01 ; FD\n#_1DF7CD: db $01 ; FE\n#_1DF7CE: db $01 ; FF\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteSlotToSegmentOffset", + "code": "SpriteSlotToSegmentOffset:\n#_1DF7CF: db $00, $20, $40, $60\n\n; =========================================================\n\npool SpriteDraw_MiniMoldorm\n\n.char\n#_1DF7D3: db $5D, $62, $60\n\n.offset_segment\n#_1DF7D6: db $04, $00, $00, $00, $00, $00\n\n.prop\n#_1DF7DC: db $00, $02, $02\n\n.segment_index\n#_1DF7DF: db $15, $1A, $00\n\n.offset_main_x\n#_1DF7E2: db 11, 0, 10, 0, 9, 0, 6, 0\n#_1DF7EA: db 3, 0, 0, 0, -2, -1, -3, -1\n#_1DF7F2: db -4, -1, -3, -1, -2, -1, 1, 0\n#_1DF7FA: db 4, 0, 7, 0, 9, 0, 10, 0\n\n.offset_main_y\n#_1DF802: db 4, 0, 6, 0, 9, 0, 10, 0\n#_1DF80A: db 11, 0, 10, 0, 9, 0, 6, 0\n#_1DF812: db 3, 0, 0, 0, -2, -1, -3, -1\n#_1DF81A: db -4, -1, -3, -1, -2, -1, 1, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_MiniMoldorm", + "code": "SpriteDraw_MiniMoldorm:\n#_1DF822: JSL Sprite_PrepOAMCoord_long\n#_1DF826: BCC .continue\n\n#_1DF828: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_25_TalkingTree", + "code": "Sprite_25_TalkingTree:\n#_1DF943: PHB\n#_1DF944: PHK\n#_1DF945: PLB\n\n#_1DF946: JSR .main\n\n#_1DF949: PLB\n\n#_1DF94A: RTL", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_Mouth", + "code": "TalkingTree_Mouth:\n#_1DF956: JSR SpriteDraw_TalkingTree\n#_1DF959: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DF95C: STZ.w $0F60,X\n\n#_1DF95F: LDA.w $0D80,X\n#_1DF962: JSL JumpTableLocal\n#_1DF966: dw TalkingTree_IdleWithBomb\n#_1DF968: dw TalkingTree_DelayBomb\n#_1DF96A: dw TalkingTree_SpitBomb\n#_1DF96C: dw TalkingTree_IdleWithoutBomb\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_IdleWithBomb", + "code": "TalkingTree_IdleWithBomb:\n#_1DF96E: STZ.w $0DC0,X\n\n#_1DF971: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1DF975: BCC .exit\n\n#_1DF977: JSL Link_CancelDash_long\n\n#_1DF97B: LDA.b #$10\n#_1DF97D: STA.b $46\n\n#_1DF97F: LDA.b #$30\n#_1DF981: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DF985: LDA.b $00\n#_1DF987: STA.b $27\n\n#_1DF989: LDA.b $01\n#_1DF98B: STA.b $28\n\n#_1DF98D: LDA.b #$32 ; SFX3.32\n#_1DF98F: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DF993: INC.w $0D80,X\n\n#_1DF996: LDA.b #$30\n#_1DF998: STA.w $0DF0,X\n\n.exit\n#_1DF99B: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_DelayBomb", + "code": "TalkingTree_DelayBomb:\n#_1DF99C: LDA.w $0DF0,X\n#_1DF99F: BNE .pulsate_mouth\n\n#_1DF9A1: INC.w $0D80,X\n\n#_1DF9A4: LDA.b #$08\n#_1DF9A6: STA.w $0DF0,X\n\n.pulsate_mouth\n#_1DF9A9: LSR A\n#_1DF9AA: AND.b #$03\n#_1DF9AC: STA.w $0DC0,X\n\n#_1DF9AF: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_SpitBomb", + "code": "TalkingTree_SpitBomb:\n#_1DF9B4: LDA.w $0DF0,X\n#_1DF9B7: LSR A\n#_1DF9B8: TAY\n\n#_1DF9B9: LDA.w .draw,X\n#_1DF9BC: STA.w $0DC0,X\n\n#_1DF9BF: LDA.w $0DF0,X\n#_1DF9C2: CMP.b #$07\n#_1DF9C4: BNE .no_bomb\n\n#_1DF9C6: JSR TalkingTree_SpawnBomb\n\n.no_bomb\n#_1DF9C9: LDA.w $0DF0,X\n#_1DF9CC: BNE .exit\n\n#_1DF9CE: INC.w $0D80,X\n\n.exit\n#_1DF9D1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_IdleWithoutBomb", + "code": "TalkingTree_IdleWithoutBomb:\n#_1DF9E2: JSR TalkingTree_ChooseTalkingPoint\n\n#_1DF9E5: LDA.w $0DF0,X\n#_1DF9E8: BNE .exit\n\n#_1DF9EA: LDA.w $0DA0,X\n#_1DF9ED: INC A\n#_1DF9EE: AND.b #$07\n#_1DF9F0: STA.w $0DA0,X\n\n#_1DF9F3: TAY\n\n#_1DF9F4: LDA.w .draw_step,Y\n#_1DF9F7: STA.w $0DC0,X\n\n#_1DF9FA: LDA.w .timer,Y\n#_1DF9FD: STA.w $0DF0,X\n\n.exit\n#_1DFA00: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_Messages_setA", + "code": "TalkingTree_Messages_setA:\n#_1DFA01: db $82 ; MESSAGE 0082\n#_1DFA02: db $7D ; MESSAGE 007D\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_ChooseTalkingPoint", + "code": "TalkingTree_ChooseTalkingPoint:\n#_1DFA03: LDA.b #$07\n#_1DFA05: STA.w $0F60,X\n\n#_1DFA08: LDA.w $0D90,X\n#_1DFA0B: BNE .use_screen_based_message\n\n; ---------------------------------------------------------\n\n#_1DFA0D: LDA.w $0D10,X\n#_1DFA10: LSR A\n#_1DFA11: LSR A\n#_1DFA12: LSR A\n#_1DFA13: LSR A\n#_1DFA14: AND.b #$01\n#_1DFA16: EOR.b #$01\n#_1DFA18: STA.w $0D90,X\n\n#_1DFA1B: TAY\n#_1DFA1C: LDA.w TalkingTree_Messages_setA,Y\n\n#_1DFA1F: LDY.b #$00\n#_1DFA21: JSL Sprite_ShowSolicitedMessage\n#_1DFA25: BCS .exit\n\n#_1DFA27: STZ.w $0D90,X\n\n.exit\n#_1DFA2A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_SpawnBomb", + "code": "TalkingTree_SpawnBomb:\n#_1DFA4E: LDA.b #$4A ; SPRITE 4A\n#_1DFA50: JSL Sprite_SpawnDynamically\n#_1DFA54: BMI .exit\n\n#_1DFA56: JSL Sprite_TransmuteToBomb\n#_1DFA5A: JSL Sprite_SetSpawnedCoordinates\n\n#_1DFA5E: LDA.b $02\n#_1DFA60: CLC\n#_1DFA61: ADC.b #$28\n#_1DFA63: STA.b $08\n\n#_1DFA65: LDA.b $03\n#_1DFA67: ADC.b #$00\n#_1DFA69: STA.b $03\n\n#_1DFA6B: LDA.b #$40\n#_1DFA6D: STA.w $0E00,Y\n\n#_1DFA70: LDA.b #$18\n#_1DFA72: STA.w $0D40,Y\n\n#_1DFA75: LDA.b #$12\n#_1DFA77: STA.w $0F80,Y\n\n.exit\n#_1DFA7A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_TalkingTree", + "code": "SpriteDraw_TalkingTree:\n#_1DFADB: LDA.w $0DC0,X\n#_1DFADE: DEC A\n#_1DFADF: BMI .exit\n\n#_1DFAE1: ASL A\n#_1DFAE2: ASL A\n#_1DFAE3: ASL A\n#_1DFAE4: ASL A\n#_1DFAE5: ASL A\n\n#_1DFAE6: ADC.b #.oam_groups>>0\n#_1DFAE8: STA.b $08\n\n#_1DFAEA: LDA.b #.oam_groups>>8\n#_1DFAEC: ADC.b #$00\n#_1DFAEE: STA.b $09\n\n#_1DFAF0: LDA.b #$04\n#_1DFAF2: STA.b $06\n#_1DFAF4: STZ.b $07\n\n#_1DFAF6: JSL SpriteDraw_Tabulated_player_deferred\n\n.exit\n#_1DFAFA: RTS", + "file": "bank_1D.asm" + }, + { + "name": "TalkingTree_Eye", + "code": "TalkingTree_Eye:\n#_1DFB0A: JSL SpriteDraw_SingleSmall_long\n#_1DFB0E: JSR Sprite_CheckIfActive_Bank1D\n\n#_1DFB11: LDY.w $0EB0,X\n\n#_1DFB14: LDA.w $0D90,X\n#_1DFB17: CLC\n#_1DFB18: ADC.w .offset_x,Y\n#_1DFB1B: STA.w $0D10,X\n\n#_1DFB1E: LDA.w $0DA0,X\n#_1DFB21: ADC.w .offset_y,Y\n#_1DFB24: STA.w $0D30,X\n\n#_1DFB27: LDA.w $0DB0,X\n#_1DFB2A: STA.w $0D00,X\n\n#_1DFB2D: LDA.w $0E90,X\n#_1DFB30: STA.w $0D20,X\n\n; ---------------------------------------------------------\n\n#_1DFB33: LDA.b #$02\n#_1DFB35: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1DFB39: LDA.b $00\n#_1DFB3B: BMI .use_x\n\n; ---------------------------------------------------------\n\n.use_y\n#_1DFB3D: LDA.b $01\n#_1DFB3F: CLC\n#_1DFB40: ADC.b #$02\n#_1DFB42: STA.w $0DE0,X\n\n#_1DFB45: BRA .use_offset\n\n; ---------------------------------------------------------\n\n.use_x\n#_1DFB47: LDA.w $0DE0,X\n#_1DFB4A: CMP.b #$02\n#_1DFB4C: BEQ .use_offset\n\n#_1DFB4E: ROL A\n#_1DFB4F: AND.b #$01\n#_1DFB51: TAY\n\n#_1DFB52: LDA.w $0DE0,X\n#_1DFB55: CLC\n#_1DFB56: ADC.w Sprite_ApplyConveyor_shake_x,Y\n#_1DFB59: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.use_offset\n#_1DFB5C: LDY.w $0DE0,X\n\n#_1DFB5F: LDA.w $0D90,X\n#_1DFB62: CLC\n#_1DFB63: ADC.w .pupil_offset_x_low,Y\n#_1DFB66: STA.w $0D10,X\n\n#_1DFB69: LDA.w $0DA0,X\n#_1DFB6C: ADC.w .pupil_offset_x_high,Y\n#_1DFB6F: STA.w $0D30,X\n\n#_1DFB72: LDA.w $0DB0,X\n#_1DFB75: CLC\n#_1DFB76: ADC.w .pupil_offset_y,Y\n#_1DFB79: STA.w $0D00,X\n\n#_1DFB7C: LDA.w $0E90,X\n#_1DFB7F: ADC.w .pupil_offset_y,Y\n#_1DFB82: STA.w $0D20,X\n\n#_1DFB85: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpritePrep_TalkingTree_SpawnEyeball", + "code": "SpritePrep_TalkingTree_SpawnEyeball:\n#_1DFB8A: PHX\n#_1DFB8B: PHA\n\n#_1DFB8C: LDA.b #$25 ; SPRITE 25\n#_1DFB8E: JSL Sprite_SpawnDynamically\n\n#_1DFB92: PLA\n#_1DFB93: STA.w $0EB0,Y\n\n#_1DFB96: TAX\n\n#_1DFB97: LDA.b $00\n#_1DFB99: CLC\n#_1DFB9A: ADC.l .offset_x,X\n#_1DFB9E: STA.w $0D10,Y\n#_1DFBA1: STA.w $0D90,Y\n\n#_1DFBA4: LDA.b $01\n#_1DFBA6: ADC.l .offset_y,X\n#_1DFBAA: STA.w $0D30,Y\n#_1DFBAD: STA.w $0DA0,Y\n\n#_1DFBB0: LDA.b $02\n#_1DFBB2: CLC\n#_1DFBB3: ADC.b #$F5\n#_1DFBB5: STA.w $0D00,Y\n#_1DFBB8: STA.w $0DB0,Y\n\n#_1DFBBB: LDA.b $03\n#_1DFBBD: ADC.b #$FF\n#_1DFBBF: STA.w $0D20,Y\n#_1DFBC2: STA.w $0E90,Y\n\n#_1DFBC5: LDA.b #$01\n#_1DFBC7: STA.w $0E80,Y\n\n#_1DFBCA: PLX\n\n#_1DFBCB: RTL", + "file": "bank_1D.asm" + }, + { + "name": "RupeePull_SpawnPrize", + "code": "RupeePull_SpawnPrize:\n#_1DFBD7: PHB\n#_1DFBD8: PHK\n#_1DFBD9: PLB\n\n#_1DFBDA: LDA.w $0CFB\n#_1DFBDD: BEQ .exit\n\n#_1DFBDF: LDY.b #$00\n#_1DFBE1: CMP.b #$04\n#_1DFBE3: BCC .fewer_than_four\n\n#_1DFBE5: INY\n#_1DFBE6: LDA.w $0CFC\n#_1DFBE9: BNE .fewer_than_four\n\n#_1DFBEB: INY\n\n; ---------------------------------------------------------\n\n.fewer_than_four\n#_1DFBEC: LDA.b #$03\n#_1DFBEE: STA.w $0FB5\n\n#_1DFBF1: STY.w $0FB6\n\n; ---------------------------------------------------------\n\n.next_rupee\n#_1DFBF4: LDY.w $0FB6\n#_1DFBF7: LDA.w .rupee_type,Y\n\n#_1DFBFA: JSL Sprite_SpawnDynamically\n#_1DFBFE: BMI .exit\n\n#_1DFC00: LDA.b #$30 ; SFX3.30\n#_1DFC02: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1DFC06: JSL Sprite_SetSpawnedCoordinates\n\n#_1DFC0A: PHX\n\n#_1DFC0B: LDX.w $0FB5\n\n#_1DFC0E: LDA.w .speed_x,X\n#_1DFC11: STA.w $0D50,Y\n\n#_1DFC14: LDA.w .speed_y,X\n#_1DFC17: STA.w $0D40,Y\n\n#_1DFC1A: PLX\n\n#_1DFC1B: LDA.b #$FF\n#_1DFC1D: STA.w $0B58,Y\n\n#_1DFC20: LDA.b #$20\n#_1DFC22: STA.w $0F10,Y\n#_1DFC25: STA.w $0EE0,Y\n#_1DFC28: STA.w $0F80,Y\n\n#_1DFC2B: DEC.w $0FB5\n#_1DFC2E: BPL .next_rupee\n\n; ---------------------------------------------------------\n\n.exit\n#_1DFC30: STZ.w $0CFB\n#_1DFC33: STZ.w $0CFC\n\n#_1DFC36: PLB\n\n#_1DFC37: RTL", + "file": "bank_1D.asm" + }, + { + "name": "Sprite_D5_DigGameGuy", + "code": "Sprite_D5_DigGameGuy:\n#_1DFC38: JSR SpriteDraw_DigGameGuy\n#_1DFC3B: JSR Sprite_CheckIfActive_Bank1D\n#_1DFC3E: JSL Sprite_BehaveAsBarrier\n#_1DFC42: JSR Sprite_Move_XY_Bank1D\n\n#_1DFC45: STZ.w $0D50,X\n\n#_1DFC48: LDA.w $0D80,X\n#_1DFC4B: JSL JumpTableLocal\n#_1DFC4F: dw DigGameGuy_Idle\n#_1DFC51: dw DigGameGuy_OfferGame\n#_1DFC53: dw DigGameGuy_UnblockEntrance\n#_1DFC55: dw DigGameGuy_SetTimer\n#_1DFC57: dw DigGameGuy_Proctor\n#_1DFC59: dw DigGameGuy_ThankYouComeAgain\n\n; =========================================================\n", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_Idle", + "code": "DigGameGuy_Idle:\n#_1DFC5B: LDA.w $0D00,X\n#_1DFC5E: CLC\n#_1DFC5F: ADC.b #$07\n#_1DFC61: CMP.b $20\n#_1DFC63: BCS .exit\n\n#_1DFC65: JSR Sprite_DirectionToFaceLink_Bank1D\n\n#_1DFC68: CPY.b #$02\n#_1DFC6A: BNE .exit\n\n; ---------------------------------------------------------\n\n#_1DFC6C: LDA.l $7EF3CC\n#_1DFC70: BNE .no_followers_allowed\n\n#_1DFC72: LDA.b #$87 ; MESSAGE 0187\n#_1DFC74: LDY.b #$01\n#_1DFC76: JSL Sprite_ShowSolicitedMessage\n#_1DFC7A: BCC .exit\n\n#_1DFC7C: INC.w $0D80,X\n\n; ---------------------------------------------------------\n\n.exit\n#_1DFC7F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_OfferGame", + "code": "DigGameGuy_OfferGame:\n#_1DFC89: LDA.w $1CE8\n#_1DFC8C: BNE .rejected\n\n#_1DFC8E: REP #$20\n\n#_1DFC90: LDA.l $7EF360\n#_1DFC94: CMP.w #80\n#_1DFC97: BCC .rejected\n\n#_1DFC99: SBC.w #80\n#_1DFC9C: STA.l $7EF360\n\n#_1DFCA0: SEP #$30\n\n#_1DFCA2: LDA.b #$88 ; MESSAGE 0188\n#_1DFCA4: LDY.b #$01\n#_1DFCA6: JSL Sprite_ShowMessageUnconditional\n\n#_1DFCAA: INC.w $0D80,X\n\n#_1DFCAD: LDA.b #$01\n#_1DFCAF: STA.w $0DC0,X\n\n#_1DFCB2: LDA.b #$50\n#_1DFCB4: STA.w $0DF0,X\n\n#_1DFCB7: LDA.b #$00\n#_1DFCB9: STA.l $7FFE00\n#_1DFCBD: STA.l $7FFE01\n\n#_1DFCC1: LDA.b #$05\n#_1DFCC3: STA.w $0E00,X\n\n#_1DFCC6: LDA.b #$01\n#_1DFCC8: JSL DeleteBoomAndByrnaSparks\n\n#_1DFCCC: LDA.b #$0E ; SONG 0E\n#_1DFCCE: STA.w $012C\n\n#_1DFCD1: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_UnblockEntrance", + "code": "DigGameGuy_UnblockEntrance:\n#_1DFCE0: LDA.w $0DF0,X\n#_1DFCE3: BNE .shimmy\n\n#_1DFCE5: INC.w $0D80,X\n\n#_1DFCE8: LDA.b #$01\n#_1DFCEA: STA.w $0DC0,X\n\n#_1DFCED: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_SetTimer", + "code": "DigGameGuy_SetTimer:\n#_1DFD0A: INC.w $0D80,X\n\n#_1DFD0D: LDA.b #$00\n#_1DFD0F: STA.w $04B5\n\n#_1DFD12: LDA.b #$1E\n#_1DFD14: STA.w $04B4\n\n#_1DFD17: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_Proctor", + "code": "DigGameGuy_Proctor:\n#_1DFD18: LDA.w $04B4\n#_1DFD1B: BEQ .times_up\n#_1DFD1D: BMI .times_up\n\n#_1DFD1F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGameGuy_ThankYouComeAgain", + "code": "DigGameGuy_ThankYouComeAgain:\n#_1DFD42: LDA.b #$8B ; MESSAGE 018B\n#_1DFD44: LDY.b #$01\n#_1DFD46: JSL Sprite_ShowSolicitedMessage\n\n#_1DFD4A: RTS", + "file": "bank_1D.asm" + }, + { + "name": "DigGame_SpawnPrize", + "code": "DigGame_SpawnPrize:\n#_1DFD4B: PHB\n#_1DFD4C: PHK\n#_1DFD4D: PLB\n\n#_1DFD4E: LDA.l $7FFE01\n#_1DFD52: INC A\n#_1DFD53: STA.l $7FFE01\n\n#_1DFD57: JSR .main\n\n#_1DFD5A: PLB\n\n#_1DFD5B: RTL", + "file": "bank_1D.asm" + }, + { + "name": "DigGamePrize_Speed", + "code": "DigGamePrize_Speed:\n#_1DFD82: db -16, 16\n", + "file": "bank_1D.asm" + }, + { + "name": "DigGamePrize_Offset_X", + "code": "DigGamePrize_Offset_X:\n#_1DFD84: db $00, $13\n", + "file": "bank_1D.asm" + }, + { + "name": "CompensationPrizeTable", + "code": "CompensationPrizeTable:\n#_1DFD86: db $DB ; SPRITE DB - red rupee\n#_1DFD87: db $DA ; SPRITE DA - blue rupee\n#_1DFD88: db $D9 ; SPRITE D9 - green rupee\n#_1DFD89: db $DF ; SPRITE DF - small magc\n\n; ---------------------------------------------------------\n", + "file": "bank_1D.asm" + }, + { + "name": "DigGamePrize_CompensationPrize", + "code": "DigGamePrize_CompensationPrize:\n#_1DFD8A: LDA.w CompensationPrizeTable,Y\n#_1DFD8D: BRA .spawn_prize\n\n; ---------------------------------------------------------\n\n#DigGamePrize_Nothing:\n#_1DFD8F: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_DigGameGuy", + "code": "SpriteDraw_DigGameGuy:\n#_1DFE4B: LDA.b #$03\n#_1DFE4D: STA.b $06\n#_1DFE4F: STZ.b $07\n\n#_1DFE51: LDA.w $0DC0,X\n#_1DFE54: ASL A\n#_1DFE55: ADC.w $0DC0,X\n\n#_1DFE58: ASL A\n#_1DFE59: ASL A\n#_1DFE5A: ASL A\n\n#_1DFE5B: ADC.b #.oam_groups>>0\n#_1DFE5D: STA.b $08\n\n#_1DFE5F: LDA.b #.oam_groups>>8\n#_1DFE61: ADC.b #$00\n#_1DFE63: STA.b $09\n\n#_1DFE65: JSL SpriteDraw_Tabulated_player_deferred\n#_1DFE69: JSL SpriteDraw_Shadow_long\n\n#_1DFE6D: RTS", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_OldMan", + "code": "SpriteDraw_OldMan:\n#_1DFF0E: PHB\n#_1DFF0F: PHK\n#_1DFF10: PLB\n\n#_1DFF11: LDA.w $0E80,X\n#_1DFF14: CMP.b #$02\n#_1DFF16: BEQ .draw_static\n\n#_1DFF18: LDA.b #$02\n#_1DFF1A: STA.b $06\n#_1DFF1C: STZ.b $07\n\n#_1DFF1E: LDA.w $0DE0,X\n#_1DFF21: ASL A\n\n#_1DFF22: ADC.w $0DC0,X\n#_1DFF25: ASL A\n#_1DFF26: TAY\n\n#_1DFF27: LDA.w .follower_gfx_offset+0,Y\n#_1DFF2A: STA.w $0AE8\n\n#_1DFF2D: LDA.w .follower_gfx_offset+1,Y\n#_1DFF30: STA.w $0AEA\n\n#_1DFF33: TYA\n#_1DFF34: ASL A\n#_1DFF35: ASL A\n#_1DFF36: ASL A\n#_1DFF37: ADC.b #.oam_groups_dynamic>>0\n#_1DFF39: STA.b $08\n\n#_1DFF3B: LDA.b #.oam_groups_dynamic>>8\n#_1DFF3D: ADC.b #$00\n#_1DFF3F: STA.b $09\n\n#_1DFF41: JSL SpriteDraw_Tabulated_player_deferred\n\n#_1DFF45: PLB\n\n#_1DFF46: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteModule_Burn", + "code": "SpriteModule_Burn:\n#_1DFF5B: PHB\n#_1DFF5C: PHK\n#_1DFF5D: PLB\n\n#_1DFF5E: STZ.w $0EF0,X\n\n#_1DFF61: LDA.w $0DF0,X\n#_1DFF64: DEC A\n#_1DFF65: BNE .burning_in_agony\n\n#_1DFF67: JSL Sprite_DoTheDeath_long\n\n#_1DFF6B: PLB\n\n#_1DFF6C: RTL", + "file": "bank_1D.asm" + }, + { + "name": "SpriteDraw_Falling", + "code": "SpriteDraw_Falling:\n#_1DFFC5: PHB\n#_1DFFC6: PHK\n#_1DFFC7: PLB\n\n#_1DFFC8: LDA.b $00\n#_1DFFCA: CLC\n#_1DFFCB: ADC.b #$04\n#_1DFFCD: STA.b ($90),Y\n\n#_1DFFCF: LDA.b $02\n#_1DFFD1: CLC\n#_1DFFD2: ADC.b #$04\n#_1DFFD4: INY\n#_1DFFD5: STA.b ($90),Y\n\n#_1DFFD7: LDA.w $0DF0,X\n#_1DFFDA: LSR A\n#_1DFFDB: LSR A\n\n#_1DFFDC: PHX\n\n#_1DFFDD: TAX\n#_1DFFDE: LDA.w .char,X\n\n#_1DFFE1: INY\n#_1DFFE2: STA.b ($90),Y\n\n#_1DFFE4: LDA.b $05\n#_1DFFE6: AND.b #$30\n#_1DFFE8: ORA.b #$04\n#_1DFFEA: INY\n#_1DFFEB: STA.b ($90),Y\n\n#_1DFFED: PLX\n\n#_1DFFEE: LDY.b #$00\n#_1DFFF0: LDA.b #$00\n#_1DFFF2: JSL Sprite_CorrectOAMEntries_long\n\n#_1DFFF6: PLB\n\n#_1DFFF7: RTL", + "file": "bank_1D.asm" + }, + { + "name": "HelmasaurKing_Initialize", + "code": "HelmasaurKing_Initialize:\n#_1E8000: LDA.b #$30\n#_1E8002: STA.w $0B2F\n\n#_1E8005: LDA.b #$80\n#_1E8007: STA.w $0B2D\n\n#_1E800A: STZ.w $0B2E\n#_1E800D: STZ.w $0B30\n#_1E8010: STZ.w $0B33\n#_1E8013: STZ.w $0B31\n#_1E8016: STZ.w $0B32\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_Reinitialize", + "code": "HelmasaurKing_Reinitialize:\n#_1E8019: PHB\n#_1E801A: PHK\n#_1E801B: PLB\n\n#_1E801C: PHX\n\n#_1E801D: LDA.w $0E80,X\n#_1E8020: STA.b $00\n\n#_1E8022: LDY.b #$03\n\n.next_leg\n#_1E8024: LDA.b $00\n#_1E8026: CLC\n#_1E8027: ADC.w HelmasaurKingLeg_OffsetYBaseIndex,Y\n#_1E802A: AND.b #$1F\n#_1E802C: TAX\n\n#_1E802D: LDA.w HelmasaurKingLeg_Offset_Y,X\n#_1E8030: STA.w $0B08,Y\n\n#_1E8033: DEY\n#_1E8034: BPL .next_leg\n\n#_1E8036: PLX\n#_1E8037: PLB\n\n#_1E8038: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_92_HelmasaurKing", + "code": "Sprite_92_HelmasaurKing:\n#_1E8039: LDA.w $0DB0,X\n#_1E803C: BPL HelmasaurKing_Main\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_MaskDebris", + "code": "HelmasaurKing_MaskDebris:\n#_1E803E: LDA.w $0DF0,X\n#_1E8041: BEQ .stay_around\n\n#_1E8043: DEC A\n#_1E8044: BNE .stay_around\n\n#_1E8046: STZ.w $0DD0,X\n\n.stay_around\n#_1E8049: JSL SpriteDraw_SingleLarge_long\n#_1E804D: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E8050: LDA.b $1A\n#_1E8052: AND.b #$07\n#_1E8054: ORA.w $0E00,X\n#_1E8057: BNE .preserve_flip\n\n#_1E8059: LDA.w $0F50,X\n#_1E805C: EOR.b #$40\n#_1E805E: STA.w $0F50,X\n\n.preserve_flip\n#_1E8061: JSR Sprite_Move_XYZ_Bank1E\n\n#_1E8064: DEC.w $0F80,X\n#_1E8067: DEC.w $0F80,X\n\n#_1E806A: LDA.w $0F70,X\n#_1E806D: BPL .exit\n\n#_1E806F: STZ.w $0F70,X\n\n#_1E8072: LDA.b #$0C\n#_1E8074: STA.w $0DF0,X\n\n#_1E8077: LDA.b #$18\n#_1E8079: STA.w $0F80,X\n\n#_1E807C: LDA.b #$06\n#_1E807E: STA.w $0DC0,X\n\n.exit\n#_1E8081: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_Main", + "code": "HelmasaurKing_Main:\n#_1E8082: CMP.b #$03\n#_1E8084: BCS .still_masked\n\n#_1E8086: LDA.w $0B89,X\n#_1E8089: AND.b #$F1\n#_1E808B: STA.w $0B89,X\n\n#_1E808E: LDA.b #$0A\n#_1E8090: STA.w SprTileDie,X\n\n#_1E8093: BRA .continue\n\n.still_masked\n#_1E8095: LDA.b #$1F\n#_1E8097: STA.w $0F60,X\n\n#_1E809A: LDA.b #$02\n#_1E809C: STA.w SprTileDie,X\n\n.continue\n#_1E809F: JSR SpriteDraw_KingHelmasaur\n\n#_1E80A2: LDA.w $0DD0,X\n#_1E80A5: CMP.b #$06\n#_1E80A7: BNE HelmasaurKing_Alive\n\n#_1E80A9: LDA.w $0DF0,X\n#_1E80AC: BNE .delay_explosions\n\n#_1E80AE: LDA.b #$04\n#_1E80B0: STA.w $0DD0,X\n\n#_1E80B3: STZ.w $0D90,X\n\n#_1E80B6: LDA.b #$E0\n#_1E80B8: STA.w $0DF0,X\n\n#_1E80BB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_Alive", + "code": "HelmasaurKing_Alive:\n#_1E8117: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E811A: LDA.w $0E50,X\n#_1E811D: LSR A\n#_1E811E: LSR A\n#_1E811F: TAY\n\n#_1E8120: LDA.w .phase_hp,Y\n#_1E8123: STA.w $0DB0,X\n\n#_1E8126: CMP.b #$03\n#_1E8128: BNE .not_phase3\n\n#_1E812A: CMP.w $0E90,X\n#_1E812D: BEQ .continue\n\n#_1E812F: STZ.w $0EF0,X\n\n#_1E8132: JSR HelmasaurKing_ExplodeMask\n#_1E8135: BRA .continue\n\n.not_phase3\n#_1E8137: CMP.w $0E90,X\n#_1E813A: BEQ .continue\n\n#_1E813C: JSR HelmasaurKing_ChipAwayAtMask\n\n.continue\n#_1E813F: LDA.w $0DB0,X\n#_1E8142: STA.w $0E90,X\n\n#_1E8145: JSL Sprite_CheckDamageFromLink_long\n\n#_1E8149: JSR HelmasaurKing_SwingTail\n#_1E814C: JSR HelmasaurKing_AttemptDamage\n#_1E814F: JSR HelmasaurKing_CheckMaskDamageFromHammer\n\n#_1E8152: LDA.w $0E00,X\n#_1E8155: BEQ .might_fireball\n\n#_1E8157: CMP.b #$60\n#_1E8159: BEQ .no_fireball\n\n#_1E815B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_DecisionHome", + "code": "HelmasaurKing_DecisionHome:\n#_1E819C: LDA.w $0EF0,X\n#_1E819F: BNE .delay\n\n#_1E81A1: LDA.w $0DF0,X\n#_1E81A4: BNE .exit\n\n.delay\n#_1E81A6: JSR HelmasaurKing_MaybeFireball\n\n#_1E81A9: JSL GetRandomNumber\n#_1E81AD: AND.b #$07\n#_1E81AF: TAY\n\n#_1E81B0: LDA.w .speed_x,Y\n#_1E81B3: STA.w $0D50,X\n\n#_1E81B6: LDA.w .speed_y,Y\n#_1E81B9: STA.w $0D40,X\n\n#_1E81BC: LDA.b #$40\n#_1E81BE: STA.w $0DF0,X\n\n#_1E81C1: LDA.w $0DB0,X\n#_1E81C4: CMP.b #$03\n#_1E81C6: BCC .normal_speed\n\n#_1E81C8: ASL.w $0D50,X\n#_1E81CB: ASL.w $0D40,X\n#_1E81CE: LSR.w $0DF0,X\n\n.normal_speed\n#_1E81D1: INC.w $0D80,X\n\n.exit\n#_1E81D4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_WalkToLocation", + "code": "HelmasaurKing_WalkToLocation:\n#_1E81D5: JSR HelmasaurKing_HandleMovement\n\n#_1E81D8: LDA.w $0DF0,X\n#_1E81DB: BNE .exit\n\n#_1E81DD: LDA.b #$20\n#_1E81DF: STA.w $0DF0,X\n\n#_1E81E2: INC.w $0D80,X\n\n.exit\n#_1E81E5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_HandleMovement", + "code": "HelmasaurKing_HandleMovement:\n#_1E81E6: JSR HelmasaurKing_ShuffleLegs\n\n#_1E81E9: LDA.b $1A\n#_1E81EB: AND.b #$03\n#_1E81ED: BNE .no_extra_shuffle\n\n#_1E81EF: JSR HelmasaurKing_ShuffleLegs\n\n.no_extra_shuffle\n#_1E81F2: LDA.w $0DB0,X\n#_1E81F5: CMP.b #$03\n#_1E81F7: BCC .no_double_extra_shuffle\n\n#_1E81F9: JSR HelmasaurKing_ShuffleLegs\n\n.no_double_extra_shuffle\n#_1E81FC: JSR Sprite_Move_XY_Bank1E\n\n#_1E81FF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_ShuffleLegs", + "code": "HelmasaurKing_ShuffleLegs:\n#_1E8200: INC.w $0E80,X\n\n#_1E8203: LDA.w $0E80,X\n#_1E8206: AND.b #$0F\n#_1E8208: BNE .exit\n\n#_1E820A: LDA.b #$21 ; SFX2.21\n#_1E820C: STA.w $012E\n\n.exit\n#_1E820F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_DecisionAway", + "code": "HelmasaurKing_DecisionAway:\n#_1E8210: LDA.w $0EF0,X\n#_1E8213: BNE .delay\n\n#_1E8215: LDA.w $0DF0,X\n#_1E8218: BNE .exit\n\n.delay\n#_1E821A: JSR HelmasaurKing_MaybeFireball\n\n#_1E821D: LDA.b #$40\n#_1E821F: STA.w $0DF0,X\n\n#_1E8222: LDA.w $0E90,X\n#_1E8225: CMP.b #$03\n#_1E8227: BCC .dont_halve_timer\n\n#_1E8229: LSR.w $0DF0,X\n\n.dont_halve_timer\n#_1E822C: LDA.w $0D50,X\n#_1E822F: EOR.b #$FF\n#_1E8231: INC A\n#_1E8232: STA.w $0D50,X\n\n#_1E8235: LDA.w $0D40,X\n#_1E8238: EOR.b #$FF\n#_1E823A: INC A\n#_1E823B: STA.w $0D40,X\n\n#_1E823E: INC.w $0D80,X\n\n.exit\n#_1E8241: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_WalkBackHome", + "code": "HelmasaurKing_WalkBackHome:\n#_1E8242: JSR HelmasaurKing_HandleMovement\n\n#_1E8245: LDA.w $0DF0,X\n#_1E8248: BNE .exit\n\n#_1E824A: STZ.w $0D80,X\n\n#_1E824D: LDA.b #$40\n#_1E824F: STA.w $0DF0,X\n\n.exit\n#_1E8252: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_MaybeFireball", + "code": "HelmasaurKing_MaybeFireball:\n#_1E8253: INC.w $0E30,X\n\n#_1E8256: LDA.w $0E30,X\n#_1E8259: CMP.b #$04\n#_1E825B: BNE .exit\n\n#_1E825D: PLA\n#_1E825E: PLA\n\n#_1E825F: STZ.w $0E30,X\n\n#_1E8262: JSL GetRandomNumber\n#_1E8266: AND.b #$01\n#_1E8268: BEQ .no_sfx\n\n#_1E826A: LDA.b #$7F\n#_1E826C: STA.w $0E10,X\n\n#_1E826F: LDA.b #$2A ; SFX3.2A\n#_1E8271: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1E8275: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKingLeg_Offset_Y", + "code": "HelmasaurKingLeg_Offset_Y:\n#_1E827C: db $00, $01, $02, $03, $04, $05, $06, $07\n#_1E8284: db $08, $08, $08, $08, $08, $08, $08, $08\n#_1E828C: db $08, $08, $08, $08, $08, $08, $08, $08\n#_1E8294: db $08, $07, $06, $05, $04, $03, $02, $01\n", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKingLeg_OffsetYBaseIndex", + "code": "HelmasaurKingLeg_OffsetYBaseIndex:\n#_1E829C: db $00, $08, $10, $18\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_SwingTail", + "code": "HelmasaurKing_SwingTail:\n#_1E82A0: INC.w $0B0C\n\n#_1E82A3: JSL HelmasaurKing_Reinitialize\n\n#_1E82A7: LDA.b #$01\n#_1E82A9: LDY.w $0EC0,X\n#_1E82AC: BEQ .allow_success\n\n#_1E82AE: LDA.b #$00\n\n.allow_success\n#_1E82B0: AND.b $1A\n#_1E82B2: BNE .bad_frame_parity\n\n#_1E82B4: LDA.w $0DE0,X\n#_1E82B7: AND.b #$01\n#_1E82B9: TAY\n\n#_1E82BA: LDA.w $0B30\n#_1E82BD: CLC\n#_1E82BE: ADC.w HelmasaurKing_TailSwingRotationDirection,Y\n#_1E82C1: STA.w $0B30\n\n#_1E82C4: CMP.w Sixteen_X,Y\n#_1E82C7: BNE .x_max\n\n#_1E82C9: INC.w $0DE0,X\n\n.x_max\n#_1E82CC: LDY.b #$00\n\n#_1E82CE: LDA.w $0B30\n#_1E82D1: BPL .x_pos\n\n#_1E82D3: DEY\n\n.x_pos\n#_1E82D4: CLC\n#_1E82D5: ADC.w $0B2D\n#_1E82D8: STA.w $0B2D\n\n#_1E82DB: TYA\n#_1E82DC: ADC.w $0B2E\n#_1E82DF: AND.b #$FF\n#_1E82E1: STA.w $0B2E\n\n.bad_frame_parity\n#_1E82E4: LDA.w $0EC0,X\n#_1E82E7: BEQ .exit_a\n\n#_1E82E9: LDA.w $0B30\n#_1E82EC: BNE .skip_sfx\n\n#_1E82EE: LDA.b #$06 ; SFX3.06\n#_1E82F0: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n.skip_sfx\n#_1E82F4: LDA.w $0EC0,X\n#_1E82F7: CMP.b #$02\n#_1E82F9: BEQ .do_segment_a\n\n#_1E82FB: CMP.b #$03\n#_1E82FD: BEQ .do_segment_b\n\n#_1E82FF: LDA.w $0B30\n#_1E8302: ORA.w $0EE0,X\n#_1E8305: BNE .exit_b\n\n#_1E8307: LDA.w $0B2E\n#_1E830A: AND.b #$01\n#_1E830C: STA.w $0EB0,X\n\n#_1E830F: JSR Sprite_IsRightOfLink_Bank1E\n\n#_1E8312: TYA\n#_1E8313: EOR.b #$01\n#_1E8315: CMP.w $0EB0,X\n#_1E8318: BNE .exit_a\n\n#_1E831A: INC.w $0EC0,X\n\n#_1E831D: JSL Sprite_CalculateSFXPan\n#_1E8321: ORA.b #$26 ; SFX3.26\n#_1E8323: STA.w $012F\n\n.exit_a\n#_1E8326: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_TailSwingRotationDirection", + "code": "HelmasaurKing_TailSwingRotationDirection:\n#_1E8383: db 1, -1\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_CheckMaskDamageFromHammer", + "code": "HelmasaurKing_CheckMaskDamageFromHammer:\n#_1E8385: LDA.w $0DB0,X\n#_1E8388: CMP.b #$03\n#_1E838A: BCS .exit\n\n#_1E838C: LDA.w $0301\n#_1E838F: AND.b #$0A\n#_1E8391: BEQ .exit\n\n#_1E8393: LDA.b $44\n#_1E8395: CMP.b #$80\n#_1E8397: BEQ .exit\n\n#_1E8399: JSL SetupActionHitbox_long\n\n#_1E839D: LDA.w $0D00,X\n#_1E83A0: PHA\n\n#_1E83A1: CLC\n#_1E83A2: ADC.b #$08\n#_1E83A4: STA.w $0D00,X\n\n#_1E83A7: JSL Sprite_SetupHitbox_long\n\n#_1E83AB: PLA\n#_1E83AC: STA.w $0D00,X\n\n#_1E83AF: JSL CheckIfHitBoxesOverlap_long\n#_1E83B3: BCC .exit\n\n#_1E83B5: DEC.w $0E50,X\n\n#_1E83B8: LDA.b #$21 ; SFX3.21\n#_1E83BA: STA.w $012F\n\n#_1E83BD: LDA.b #$30\n#_1E83BF: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1E83C3: LDA.b $00\n#_1E83C5: STA.b $27\n\n#_1E83C7: LDA.b $01\n#_1E83C9: STA.b $28\n\n#_1E83CB: LDA.b #$08\n#_1E83CD: STA.w $0046\n\n#_1E83D0: LDA.w $0FAC\n#_1E83D3: BNE .no_spark\n\n#_1E83D5: LDA.b $00\n#_1E83D7: STA.w $0FAD\n\n#_1E83DA: LDA.b $01\n#_1E83DC: STA.w $0FAE\n\n#_1E83DF: LDA.b #$05\n#_1E83E1: STA.w $0FAC\n\n.no_spark\n#_1E83E4: LDA.b #$05 ; SFX2.05\n#_1E83E6: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1E83EA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_AttemptDamage", + "code": "HelmasaurKing_AttemptDamage:\n#_1E83EB: LDA.b $1A\n#_1E83ED: AND.b #$07\n#_1E83EF: BNE .no_damage\n\n#_1E83F1: REP #$20\n\n#_1E83F3: LDA.b $22\n#_1E83F5: SEC\n#_1E83F6: SBC.w $0FD8\n#_1E83F9: CLC\n#_1E83FA: ADC.w #$0024\n\n#_1E83FD: CMP.w #$0048\n#_1E8400: BCS .no_damage\n\n#_1E8402: LDA.b $20\n#_1E8404: SEC\n#_1E8405: SBC.w $0FDA\n#_1E8408: CLC\n#_1E8409: ADC.w #$0028\n\n#_1E840C: CMP.w #$0040\n#_1E840F: BCS .no_damage\n\n#_1E8411: SEP #$20\n\n#_1E8413: JSL Sprite_AttemptDamageToLinkPlusRecoil_long\n\n.no_damage\n#_1E8417: SEP #$20\n\n#_1E8419: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_ChipAwayAtMask", + "code": "HelmasaurKing_ChipAwayAtMask:\n#_1E847E: LDA.w $0DB0,X\n#_1E8481: CLC\n#_1E8482: ADC.b #$07\n#_1E8484: STA.w $0FB5\n\n#_1E8487: JSR HelmasaurKing_SpawnMaskDebris\n\n#_1E848A: BRA .make_sfx\n\n; =========================================================\n\n#HelmasaurKing_ExplodeMask:\n#_1E848C: LDY.b #$0F\n#_1E848E: LDA.b #$00\n\n.next_sprite\n#_1E8490: STA.w $0DD0,Y\n\n#_1E8493: DEY\n#_1E8494: BNE .next_sprite\n\n#_1E8496: LDA.b #$07\n#_1E8498: STA.w $0FB5\n\n.next_debris\n#_1E849B: JSR HelmasaurKing_SpawnMaskDebris\n\n#_1E849E: DEC.w $0FB5\n#_1E84A1: BPL .next_debris\n\n.make_sfx\n#_1E84A3: LDA.b #$1F ; SFX2.1F\n#_1E84A5: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1E84A9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_SpawnMaskDebris", + "code": "HelmasaurKing_SpawnMaskDebris:\n#_1E84AA: LDA.b #$92 ; SPRITE 92\n#_1E84AC: JSL Sprite_SpawnDynamically\n#_1E84B0: BMI .no_space\n\n#_1E84B2: PHX\n\n#_1E84B3: LDX.w $0FB5\n\n#_1E84B6: LDA.b $00\n#_1E84B8: CLC\n#_1E84B9: ADC.w .offset_x_low,X\n#_1E84BC: STA.w $0D10,Y\n\n#_1E84BF: LDA.b $01\n#_1E84C1: ADC.w .offset_x_high,X\n#_1E84C4: STA.w $0D30,Y\n\n#_1E84C7: LDA.b $02\n#_1E84C9: CLC\n#_1E84CA: ADC.w .offset_y_low,X\n#_1E84CD: STA.w $0D00,Y\n\n#_1E84D0: LDA.b $03\n#_1E84D2: ADC.w .offset_y_high,X\n#_1E84D5: STA.w $0D20,Y\n\n#_1E84D8: LDA.w .initial_z,X\n#_1E84DB: STA.w $0F70,Y\n\n#_1E84DE: LDA.w .speed_x,X\n#_1E84E1: STA.w $0D50,Y\n\n#_1E84E4: LDA.w .speed_y,X\n#_1E84E7: STA.w $0D40,Y\n\n#_1E84EA: LDA.w .speed_z,X\n#_1E84ED: STA.w $0F80,Y\n\n#_1E84F0: LDA.w .flip,X\n#_1E84F3: ORA.b #$0D\n#_1E84F5: STA.w $0F50,Y\n\n#_1E84F8: LDA.w .starting_anim,X\n#_1E84FB: STA.w $0DC0,Y\n\n#_1E84FE: LDA.b #$80\n#_1E8500: STA.w $0DB0,Y\n\n#_1E8503: ASL A\n#_1E8504: STA.w $0E40,Y\n\n#_1E8507: LDA.b #$0C\n#_1E8509: STA.w $0E00,Y\n#_1E850C: STA.w $0BA0,Y\n\n#_1E850F: LDA.w $0FB5\n#_1E8512: STA.w $0E30,Y\n\n#_1E8515: PLX\n\n.no_space\n#_1E8516: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HelmasaurKing_SpitFireball", + "code": "HelmasaurKing_SpitFireball:\n#_1E8517: LDA.b #$70 ; SPRITE 70\n#_1E8519: JSL Sprite_SpawnDynamically\n#_1E851D: BMI .no_space\n\n#_1E851F: JSL Sprite_SetSpawnedCoordinates\n\n#_1E8523: LDA.b $02\n#_1E8525: CLC\n#_1E8526: ADC.b #$1C\n#_1E8528: STA.w $0D00,Y\n\n#_1E852B: LDA.b $03\n#_1E852D: ADC.b #$00\n#_1E852F: STA.w $0D20,Y\n\n#_1E8532: LDA.b #$20\n#_1E8534: STA.w $0DF0,Y\n#_1E8537: STA.w $0BA0,Y\n\n.no_space\n#_1E853A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_KingHelmasaur", + "code": "SpriteDraw_KingHelmasaur:\n#_1E853B: REP #$20\n\n#_1E853D: LDA.w #$089C\n#_1E8540: STA.b $90\n\n#_1E8542: LDA.w #$0A47\n#_1E8545: STA.b $92\n\n#_1E8547: SEP #$20\n\n#_1E8549: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1E854C: JSR KingHelmasaur_OperateTail\n#_1E854F: JSR SpriteDraw_KingHelmasaur_Eyes\n#_1E8552: JSR KingHelmasaurMask\n#_1E8555: JSR SpriteDraw_KingHelmasaur_Body\n#_1E8558: JSR SpriteDraw_KingHelmasaur_Legs\n#_1E855B: JSR SpriteDraw_KingHelmasaur_Mouth\n\n#_1E855E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_KingHelmasaur_Eyes", + "code": "SpriteDraw_KingHelmasaur_Eyes:\n#_1E856B: REP #$20\n\n#_1E856D: LDA.b $90\n#_1E856F: CLC\n#_1E8570: ADC.w #$0040\n#_1E8573: STA.b $90\n\n#_1E8575: LDA.b $92\n#_1E8577: CLC\n#_1E8578: ADC.w #$0010\n#_1E857B: STA.b $92\n\n#_1E857D: SEP #$20\n\n#_1E857F: PHX\n\n#_1E8580: LDY.b #$00\n#_1E8582: LDX.b #$01\n\n.next_eye\n#_1E8584: PHX\n\n#_1E8585: LDA.b $00\n#_1E8587: CLC\n#_1E8588: ADC.w .offset_x,X\n#_1E858B: STA.b ($90),Y\n\n#_1E858D: LDA.b $02\n#_1E858F: CLC\n#_1E8590: ADC.b #$14\n#_1E8592: INY\n#_1E8593: STA.b ($90),Y\n\n#_1E8595: LDA.w $0B0C\n#_1E8598: LSR A\n#_1E8599: LSR A\n#_1E859A: AND.b #$07\n#_1E859C: TAX\n\n#_1E859D: LDA.w .char,X\n#_1E85A0: INY\n#_1E85A1: STA.b ($90),Y\n\n#_1E85A3: PLX\n\n#_1E85A4: LDA.w .prop,X\n#_1E85A7: INY\n#_1E85A8: STA.b ($90),Y\n\n#_1E85AA: PHY\n\n#_1E85AB: TYA\n#_1E85AC: LSR A\n#_1E85AD: LSR A\n#_1E85AE: TAY\n\n#_1E85AF: LDA.b #$00\n#_1E85B1: STA.b ($92),Y\n\n#_1E85B3: PLY\n#_1E85B4: INY\n\n#_1E85B5: DEX\n#_1E85B6: BPL .next_eye\n\n; ---------------------------------------------------------\n\n#_1E85B8: PLX\n\n#_1E85B9: LDA.b $11\n#_1E85BB: BEQ .exit\n\n#_1E85BD: LDY.b #$00\n#_1E85BF: LDA.b #$01\n#_1E85C1: JSL Sprite_CorrectOAMEntries_long\n\n.exit\n#_1E85C5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "KingHelmasaurMask", + "code": "KingHelmasaurMask:\n#_1E8686: LDA.b #$00\n#_1E8688: XBA\n#_1E8689: LDA.w $0DB0,X\n\n#_1E868C: REP #$20\n\n#_1E868E: ASL A\n#_1E868F: ASL A\n#_1E8690: ASL A\n#_1E8691: ASL A\n#_1E8692: ASL A\n#_1E8693: ASL A\n\n#_1E8694: ADC.w #.oam_groups\n#_1E8697: STA.b $08\n\n#_1E8699: LDA.b $90\n#_1E869B: CLC\n#_1E869C: ADC.w #$0008\n#_1E869F: STA.b $90\n\n#_1E86A1: INC.b $92\n#_1E86A3: INC.b $92\n\n#_1E86A5: SEP #$20\n\n#_1E86A7: LDA.w $0DB0,X\n#_1E86AA: CMP.b #$03\n#_1E86AC: BCS .exit\n\n#_1E86AE: LDA.b #$08\n#_1E86B0: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1E86B3: REP #$20\n\n#_1E86B5: LDA.b $90\n#_1E86B7: CLC\n#_1E86B8: ADC.w #$0020\n#_1E86BB: STA.b $90\n\n#_1E86BD: LDA.b $92\n#_1E86BF: CLC\n#_1E86C0: ADC.w #$0008\n#_1E86C3: STA.b $92\n\n#_1E86C5: SEP #$20\n\n#_1E86C7: LDA.w $0F10,X\n#_1E86CA: BEQ .search_for_bomb\n\n.exit\n#_1E86CC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "KingHelmasaur_CheckBombDamage", + "code": "KingHelmasaur_CheckBombDamage:\n#_1E86E5: JSL Sprite_SetupHitbox_long\n\n#_1E86E9: LDA.w $0C04,Y\n#_1E86EC: CLC\n#_1E86ED: ADC.b #$06\n#_1E86EF: STA.b $00\n\n#_1E86F1: LDA.w $0C18,Y\n#_1E86F4: ADC.b #$00\n#_1E86F6: STA.b $08\n\n#_1E86F8: LDA.w $0BFA,Y\n#_1E86FB: SEC\n#_1E86FC: SBC.w $029E,Y\n#_1E86FF: STA.b $01\n\n#_1E8701: LDA.w $0C0E,Y\n#_1E8704: SBC.b #$00\n#_1E8706: STA.b $09\n\n#_1E8708: LDA.b #$02\n#_1E870A: STA.b $02\n\n#_1E870C: LDA.b #$0F\n#_1E870E: STA.b $03\n\n#_1E8710: JSL CheckIfHitBoxesOverlap_long\n#_1E8714: BCC .not_hit\n\n#_1E8716: LDA.w $0C2C,Y\n#_1E8719: EOR.b #$FF\n#_1E871B: INC A\n#_1E871C: STA.w $0C2C,Y\n\n#_1E871F: LDA.w $0C22,Y\n#_1E8722: EOR.b #$FF\n#_1E8724: INC A\n#_1E8725: STA.b $00\n\n#_1E8727: ASL.b $00\n#_1E8729: ROR A\n#_1E872A: STA.w $0C22,Y\n\n#_1E872D: LDA.b #$20\n#_1E872F: STA.w $0F10,X\n\n#_1E8732: LDA.b #$05\n#_1E8734: STA.w $0FAC\n\n#_1E8737: LDA.w $0C04,Y\n#_1E873A: STA.w $0FAD\n\n#_1E873D: LDA.w $0BFA,Y\n#_1E8740: SEC\n#_1E8741: SBC.w $029E,Y\n#_1E8744: STA.w $0FAE\n\n#_1E8747: LDA.b #$05 ; SFX2.05\n#_1E8749: STA.w $012E\n\n.not_hit\n#_1E874C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_KingHelmasaur_Body", + "code": "SpriteDraw_KingHelmasaur_Body:\n#_1E87E5: REP #$20\n\n#_1E87E7: LDA.w #.oam_groups\n#_1E87EA: STA.b $08\n\n#_1E87EC: SEP #$20\n\n#_1E87EE: LDA.b #$13\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Tabulated_Bank1E", + "code": "SpriteDraw_Tabulated_Bank1E:\n#_1E87F0: JSL SpriteDraw_Tabulated\n\n#_1E87F4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_KingHelmasaur_Legs", + "code": "SpriteDraw_KingHelmasaur_Legs:\n#_1E8805: REP #$20\n\n#_1E8807: LDA.b $90\n#_1E8809: CLC\n#_1E880A: ADC.w #$004C\n#_1E880D: STA.b $90\n\n#_1E880F: LDA.b $92\n#_1E8811: CLC\n#_1E8812: ADC.w #$0013\n#_1E8815: STA.b $92\n\n#_1E8817: SEP #$20\n\n#_1E8819: PHX\n\n#_1E881A: LDY.b #$00\n#_1E881C: LDA.b #$03\n#_1E881E: STA.w $0FB5\n\n.next_leg\n#_1E8821: LDX.w $0FB5\n\n#_1E8824: LDA.b $00\n#_1E8826: CLC\n#_1E8827: ADC.w .offset_x,X\n#_1E882A: STA.b ($90),Y\n\n#_1E882C: LDA.b $02\n#_1E882E: CLC\n#_1E882F: ADC.w .offset_y,X\n#_1E8832: CLC\n#_1E8833: ADC.w $0B08,X\n#_1E8836: INY\n#_1E8837: STA.b ($90),Y\n\n#_1E8839: LDA.w .char,X\n#_1E883C: INY\n#_1E883D: STA.b ($90),Y\n\n#_1E883F: LDA.w .prop,X\n#_1E8842: EOR.b $05\n#_1E8844: INY\n#_1E8845: STA.b ($90),Y\n\n#_1E8847: PHY\n\n#_1E8848: TYA\n#_1E8849: LSR A\n#_1E884A: LSR A\n#_1E884B: TAY\n\n#_1E884C: LDA.b #$02\n#_1E884E: STA.b ($92),Y\n\n#_1E8850: PLY\n#_1E8851: INY\n\n#_1E8852: LDA.b $00\n#_1E8854: CLC\n#_1E8855: ADC.w .offset_x,X\n#_1E8858: STA.b ($90),Y\n\n#_1E885A: LDA.b $02\n#_1E885C: CLC\n#_1E885D: ADC.w .offset_y,X\n#_1E8860: CLC\n#_1E8861: ADC.b #$10\n#_1E8863: CLC\n#_1E8864: ADC.w $0B08,X\n#_1E8867: INY\n#_1E8868: STA.b ($90),Y\n\n#_1E886A: LDA.w .char,X\n#_1E886D: CLC\n#_1E886E: ADC.b #$02\n#_1E8870: INY\n#_1E8871: STA.b ($90),Y\n\n#_1E8873: LDA.w .prop,X\n#_1E8876: EOR.b $05\n#_1E8878: INY\n#_1E8879: STA.b ($90),Y\n\n#_1E887B: PHY\n\n#_1E887C: TYA\n#_1E887D: LSR A\n#_1E887E: LSR A\n#_1E887F: TAY\n\n#_1E8880: LDA.b #$02\n#_1E8882: STA.b ($92),Y\n\n#_1E8884: PLY\n#_1E8885: INY\n\n#_1E8886: DEC.w $0FB5\n#_1E8889: BPL .next_leg\n\n#_1E888B: PLX\n\n#_1E888C: LDA.b $11\n#_1E888E: BEQ .exit\n\n#_1E8890: LDY.b #$02\n#_1E8892: LDA.b #$07\n#_1E8894: JSL Sprite_CorrectOAMEntries_long\n\n#_1E8898: JSR Sprite_PrepOAMCoord_Bank1E\n\n.exit\n#_1E889B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_KingHelmasaur_Mouth", + "code": "SpriteDraw_KingHelmasaur_Mouth:\n#_1E88BC: LDA.w $0E10,X\n#_1E88BF: BEQ .exit\n\n#_1E88C1: LSR A\n#_1E88C2: LSR A\n#_1E88C3: TAY\n\n#_1E88C4: LDA.w .offset_y,Y\n#_1E88C7: STA.b $06\n\n#_1E88C9: LDA.b #$04\n#_1E88CB: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1E88CF: LDY.b #$00\n#_1E88D1: LDA.b $00\n#_1E88D3: STA.b ($90),Y\n\n#_1E88D5: LDA.b $02\n#_1E88D7: CLC\n#_1E88D8: ADC.b #$13\n\n#_1E88DA: ADC.b $06\n#_1E88DC: INY\n#_1E88DD: STA.b ($90),Y\n\n#_1E88DF: LDA.b #$AA\n#_1E88E1: INY\n#_1E88E2: STA.b ($90),Y\n\n#_1E88E4: LDA.b $05\n#_1E88E6: EOR.b #$0B\n#_1E88E8: INY\n#_1E88E9: STA.b ($90),Y\n\n#_1E88EB: LDA.b #$02\n#_1E88ED: STA.b ($92)\n\n.exit\n#_1E88EF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "KingHelmasaur_OperateTail", + "code": "KingHelmasaur_OperateTail:\n#_1E8920: STZ.w $0FB5\n\n.next_segment\n#_1E8923: LDY.w $0FB5\n#_1E8926: PHY\n\n#_1E8927: LDA.w $0EC0,X\n#_1E892A: BEQ .use_set_a\n\n#_1E892C: TYA\n#_1E892D: CLC\n#_1E892E: ADC.b #$10\n#_1E8930: TAY\n\n.use_set_a\n#_1E8931: REP #$20\n\n#_1E8933: LDA.w $0B2D\n#_1E8936: CLC\n#_1E8937: ADC.w $0B31\n#_1E893A: STA.b $0D\n\n#_1E893C: SEP #$20\n\n#_1E893E: LDA.b $0E\n#_1E8940: CMP.b #$01\n\n#_1E8942: PHP\n#_1E8943: PHP\n\n#_1E8944: LDA.b $0D\n#_1E8946: PLP\n#_1E8947: BPL .pos_a\n\n#_1E8949: EOR.b #$FF\n#_1E894B: INC A\n\n.pos_a\n#_1E894C: STA.w WRMPYA\n\n#_1E894F: LDA.w .multiplier_a,Y\n#_1E8952: STA.w WRMPYB\n\n#_1E8955: JSR NOP8\n\n#_1E8958: LDA.w RDMPYH\n\n#_1E895B: PLP\n#_1E895C: BPL .pos_b\n\n#_1E895E: EOR.b #$FF\n\n.pos_b\n#_1E8960: STA.b $06\n\n#_1E8962: LDA.b $0E\n#_1E8964: STA.b $07\n\n#_1E8966: PLY\n\n#_1E8967: LDA.w $0B2F\n#_1E896A: STA.w WRMPYA\n\n#_1E896D: LDA.w .multiplier_c,Y\n#_1E8970: STA.w WRMPYB\n\n#_1E8973: JSR NOP8\n\n#_1E8976: LDA.w RDMPYH\n#_1E8979: STA.b $0F\n\n#_1E897B: PHX\n#_1E897C: REP #$30\n\n#_1E897E: LDA.b $06\n#_1E8980: AND.w #$00FF\n#_1E8983: ASL A\n#_1E8984: TAX\n\n#_1E8985: LDA.l SmoothCurve,X\n#_1E8989: STA.b $0A\n\n#_1E898B: LDA.b $06\n#_1E898D: CLC\n#_1E898E: ADC.w #$0080\n#_1E8991: STA.b $08\n\n#_1E8993: AND.w #$00FF\n#_1E8996: ASL A\n#_1E8997: TAX\n\n#_1E8998: LDA.l SmoothCurve,X\n#_1E899C: STA.b $0C\n\n#_1E899E: SEP #$30\n\n#_1E89A0: PLX\n\n#_1E89A1: LDA.b $0A\n#_1E89A3: STA.w WRMPYA\n\n#_1E89A6: LDA.b $0F\n#_1E89A8: LDY.b $0B\n#_1E89AA: BNE .nonzero_a\n\n#_1E89AC: STA.w WRMPYB\n\n#_1E89AF: JSR NOP8\n\n#_1E89B2: ASL.w RDMPYL\n#_1E89B5: LDA.w RDMPYH\n#_1E89B8: ADC.b #$00\n\n.nonzero_a\n#_1E89BA: LSR.b $07\n#_1E89BC: BCC .keep_sign_a\n\n#_1E89BE: EOR.b #$FF\n#_1E89C0: INC A\n\n.keep_sign_a\n#_1E89C1: LDY.w $0FB5\n\n#_1E89C4: STA.w $0B0D,Y\n\n#_1E89C7: LDA.b $0C\n#_1E89C9: STA.w WRMPYA\n\n#_1E89CC: LDA.b $0F\n\n#_1E89CE: LDY.b $0D\n#_1E89D0: BNE .nonzero_b\n\n#_1E89D2: STA.w WRMPYB\n\n#_1E89D5: JSR NOP8\n\n#_1E89D8: ASL.w RDMPYL\n#_1E89DB: LDA.w RDMPYH\n#_1E89DE: ADC.b #$00\n\n.nonzero_b\n#_1E89E0: LSR.b $09\n#_1E89E2: BCC .keep_sign_b\n\n#_1E89E4: EOR.b #$FF\n#_1E89E6: INC A\n\n.keep_sign_b\n#_1E89E7: LDY.w $0FB5\n\n#_1E89EA: SEC\n#_1E89EB: SBC.b #$28\n#_1E89ED: STA.w $0B1D,Y\n\n#_1E89F0: INC.w $0FB5\n\n#_1E89F3: LDA.w $0FB5\n#_1E89F6: CMP.b #$10\n#_1E89F8: BEQ SpriteDraw_HelmasaurKingTailSegment\n\n#_1E89FA: JMP.w .next_segment\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_HelmasaurKingTailSegment", + "code": "SpriteDraw_HelmasaurKingTailSegment:\n#_1E89FD: LDA.w $0EC0,X\n#_1E8A00: STA.b $0A\n\n#_1E8A02: STZ.b $0F\n\n#_1E8A04: PHX\n\n#_1E8A05: LDX.w $0B33\n#_1E8A08: CPX.b #$10\n#_1E8A0A: BEQ .skip\n\n#_1E8A0C: LDY.b #$00\n\n.next_segment\n#_1E8A0E: LDA.b $00\n#_1E8A10: CLC\n#_1E8A11: ADC.w $0B0D,X\n#_1E8A14: STA.b ($90),Y\n#_1E8A16: STA.b $08\n\n#_1E8A18: LDA.b $02\n#_1E8A1A: CLC\n#_1E8A1B: ADC.w $0B1D,X\n\n#_1E8A1E: INY\n\n#_1E8A1F: STA.b ($90),Y\n#_1E8A21: STA.b $09\n\n#_1E8A23: LDA.b #$AC\n\n#_1E8A25: CPY.b #$01\n#_1E8A27: BNE .not_the_tip\n\n#_1E8A29: LDA.b #$E4\n\n.not_the_tip\n#_1E8A2B: INY\n\n#_1E8A2C: STA.b ($90),Y\n\n#_1E8A2E: LDA.b $05\n#_1E8A30: EOR.b #$1B\n#_1E8A32: INY\n#_1E8A33: STA.b ($90),Y\n\n#_1E8A35: INY\n\n#_1E8A36: TXA\n#_1E8A37: EOR.b $1A\n#_1E8A39: AND.b #$00\n\n#_1E8A3B: ORA.w $031F\n#_1E8A3E: BNE .no_player_contact\n\n#_1E8A40: LDA.b $0A\n#_1E8A42: BEQ .no_player_contact\n\n#_1E8A44: LDA.b $22\n#_1E8A46: SBC.b $E2\n#_1E8A48: SBC.b $08\n\n#_1E8A4A: ADC.b #$0C\n#_1E8A4C: CMP.b #$18\n#_1E8A4E: BCS .no_player_contact\n\n#_1E8A50: LDA.b $20\n#_1E8A52: SBC.b $E8\n#_1E8A54: ADC.b #$08\n\n#_1E8A56: SBC.b $09\n#_1E8A58: ADC.b #$08\n\n#_1E8A5A: CMP.b #$10\n#_1E8A5C: BCS .no_player_contact\n\n#_1E8A5E: INC.b $0F\n\n#_1E8A60: STZ.b $28\n\n#_1E8A62: LDA.b #$38\n#_1E8A64: STA.b $27\n\n.no_player_contact\n#_1E8A66: INX\n#_1E8A67: CPX.b #$10\n#_1E8A69: BNE .next_segment\n\n.skip\n#_1E8A6B: PLX\n\n#_1E8A6C: LDA.b $0F\n#_1E8A6E: BEQ .no_damage\n\n#_1E8A70: LDA.w $0FFC\n#_1E8A73: BNE .no_damage\n\n#_1E8A75: JSL Sprite_AttemptDamageToLinkPlusRecoil_long\n\n.no_damage\n#_1E8A79: LDY.b #$02\n#_1E8A7B: LDA.b #$0F\n#_1E8A7D: JSL Sprite_CorrectOAMEntries_long\n\n#_1E8A81: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1E8A84: RTS", + "file": "bank_1E.asm" + }, + { + "name": "NOP8", + "code": "NOP8:\n#_1E8A85: NOP\n#_1E8A86: NOP\n#_1E8A87: NOP\n#_1E8A88: NOP\n\n#_1E8A89: NOP\n#_1E8A8A: NOP\n#_1E8A8B: NOP\n#_1E8A8C: NOP\n\n#_1E8A8D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite3A_MagicBatLightning", + "code": "Sprite3A_MagicBatLightning:\n#_1E8A8E: PHB\n#_1E8A8F: PHK\n#_1E8A90: PLB\n\n#_1E8A91: JSR .main\n\n#_1E8A94: PLB\n\n#_1E8A95: RTL", + "file": "bank_1E.asm" + }, + { + "name": "SpriteModule_Active_Bank1E", + "code": "SpriteModule_Active_Bank1E:\n#_1E8B11: PHB\n#_1E8B12: PHK\n#_1E8B13: PLB\n\n#_1E8B14: JSR .main\n\n#_1E8B17: PLB\n\n#_1E8B18: RTL", + "file": "bank_1E.asm" + }, + { + "name": "UNREACHABLE_1E8BBB", + "code": "UNREACHABLE_1E8BBB:\n#_1E8BBB: db $00, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AA_Pikit", + "code": "Sprite_AA_Pikit:\n#_1E8BBF: JSR Pikit_PrepDraw\n#_1E8BC2: JSR Sprite_CheckIfActive_Bank1E\n#_1E8BC5: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1E8BC8: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1E8BCB: LDA.w $0D80,X\n#_1E8BCE: JSL JumpTableLocal\n#_1E8BD2: dw Pikit_PikNextMovement\n#_1E8BD4: dw Pikit_LandAndAttack\n#_1E8BD6: dw Pikit_Steal\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sixteen_X", + "code": "Sixteen_X:\n#_1E8BD8: db 16, -16\n", + "file": "bank_1E.asm" + }, + { + "name": "Sixteen_Y", + "code": "Sixteen_Y:\n#_1E8BDA: db 0, 0, 16, -16\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pikit_PikNextMovement", + "code": "Pikit_PikNextMovement:\n#_1E8BDE: LDA.w $0DF0,X\n#_1E8BE1: BNE Pikit_Animate\n\n#_1E8BE3: INC.w $0D80,X\n#_1E8BE6: INC.w $0DB0,X\n\n#_1E8BE9: LDA.w $0DB0,X\n#_1E8BEC: CMP.b #$04\n#_1E8BEE: BNE .random_direction\n\n.target_link\n#_1E8BF0: STZ.w $0DB0,X\n\n#_1E8BF3: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E8BF6: BRA .direction_continue\n\n.random_direction\n#_1E8BF8: JSL GetRandomNumber\n#_1E8BFC: AND.b #$03\n#_1E8BFE: TAY\n\n.direction_continue\n#_1E8BFF: LDA.w Sixteen_X,Y\n#_1E8C02: STA.w $0D50,X\n\n#_1E8C05: LDA.w Sixteen_Y,Y\n#_1E8C08: STA.w $0D40,X\n\n#_1E8C0B: JSL GetRandomNumber\n#_1E8C0F: AND.b #$07\n#_1E8C11: ADC.b #$13\n#_1E8C13: STA.w $0F80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pikit_Animate", + "code": "Pikit_Animate:\n#_1E8C16: INC.w $0E80,X\n\n#_1E8C19: LDA.w $0E80,X\n\n#_1E8C1C: LSR A\n#_1E8C1D: LSR A\n#_1E8C1E: LSR A\n\n#_1E8C1F: AND.b #$01\n#_1E8C21: STA.w $0DC0,X\n\n#_1E8C24: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pikit_LandAndAttack", + "code": "Pikit_LandAndAttack:\n#_1E8C25: JSR Sprite_Move_XYZ_Bank1E\n#_1E8C28: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1E8C2B: DEC.w $0F80,X\n#_1E8C2E: DEC.w $0F80,X\n\n#_1E8C31: LDA.w $0F70,X\n#_1E8C34: BPL .airborne\n\n#_1E8C36: STZ.w $0F70,X\n#_1E8C39: STZ.w $0F80,X\n\n#_1E8C3C: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E8C3F: LDA.b $0E\n#_1E8C41: CLC\n#_1E8C42: ADC.b #$30\n#_1E8C44: CMP.b #$60\n#_1E8C46: BCS .dont_tongue_link\n\n#_1E8C48: LDA.b $0F\n#_1E8C4A: CLC\n#_1E8C4B: ADC.b #$30\n#_1E8C4D: CMP.b #$60\n#_1E8C4F: BCS .dont_tongue_link\n\n#_1E8C51: INC.w $0D80,X\n\n#_1E8C54: LDA.b #$1F\n#_1E8C56: JSL Sprite_ProjectSpeedTowardsLink_long\n#_1E8C5A: JSL Sprite_ConvertVelocityToAngle\n\n#_1E8C5E: LSR A\n#_1E8C5F: STA.w $0DE0,X\n\n#_1E8C62: LDA.b #$5F\n#_1E8C64: STA.w $0DF0,X\n\n#_1E8C67: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pikit_Steal", + "code": "Pikit_Steal:\n#_1E8CE2: LDA.w $0DF0,X\n#_1E8CE5: BNE .lickylicky\n\n#_1E8CE7: STZ.w $0D80,X\n\n#_1E8CEA: LDA.b #$10\n#_1E8CEC: STA.w $0DF0,X\n\n#_1E8CEF: STZ.w $0D90,X\n#_1E8CF2: STZ.w $0DA0,X\n#_1E8CF5: STZ.w $0ED0,X\n\n#_1E8CF8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pikit_PrepDraw", + "code": "Pikit_PrepDraw:\n#_1E8DCA: JSR Sprite_PrepOAMCoord_Bank1E\n#_1E8DCD: JSL SpriteDraw_Pikit\n\n#_1E8DD1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A8_GreenZirro", + "code": "Sprite_A8_GreenZirro:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A9_BlueZirro", + "code": "Sprite_A9_BlueZirro:\n#_1E8DD2: LDA.b #$30\n#_1E8DD4: STA.w $0B89,X\n\n#_1E8DD7: LDA.w $0D90,X\n#_1E8DDA: BEQ Zirro_Main\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Bomb", + "code": "Zirro_Bomb:\n#_1E8DDC: LDA.w $0D80,X\n#_1E8DDF: JSL JumpTableLocal\n#_1E8DE3: dw ZirroBomb_Falling\n#_1E8DE5: dw ZirroBomb_Exploding\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ZirroBomb_Falling", + "code": "ZirroBomb_Falling:\n#_1E8DE7: JSL SpriteDraw_SingleSmall_long\n#_1E8DEB: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E8DEE: JSR Sprite_Move_XY_Bank1E\n#_1E8DF1: JSR Sprite_Move_Z_Bank1E\n\n#_1E8DF4: DEC.w $0F80,X\n#_1E8DF7: DEC.w $0F80,X\n\n#_1E8DFA: LDA.w $0F70,X\n#_1E8DFD: BPL .exit\n\n#_1E8DFF: STZ.w $0F70,X\n\n#_1E8E02: INC.w $0D80,X\n\n#_1E8E05: LDA.b #$13\n#_1E8E07: STA.w $0DF0,X\n\n#_1E8E0A: INC.w $0E40,X\n\n#_1E8E0D: LDA.b #$0C ; SFX2.0C\n#_1E8E0F: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1E8E13: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ZirroBomb_Exploding", + "code": "ZirroBomb_Exploding:\n#_1E8E14: JSL SpriteDraw_ZirroBomb\n#_1E8E18: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E8E1B: LDA.b $1A\n#_1E8E1D: AND.b #$03\n#_1E8E1F: BNE .frame_rule\n\n#_1E8E21: INC.w $0DF0,X\n\n.frame_rule\n#_1E8E24: JSL Sprite_CheckDamageToLink_long\n\n#_1E8E28: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Main", + "code": "Zirro_Main:\n#_1E8E31: LDA.w $0E00,X\n#_1E8E34: BEQ .not_focused\n\n#_1E8E36: LDY.w $0DE0,X\n\n#_1E8E39: LDA.w .anim_step,Y\n#_1E8E3C: STA.w $0DC0,X\n\n.not_focused\n#_1E8E3F: LDA.w $0B89,X\n#_1E8E42: ORA.b #$30\n#_1E8E44: STA.w $0B89,X\n\n#_1E8E47: JSL SpriteDraw_Zirro\n#_1E8E4B: JSR Sprite_CheckIfActive_Bank1E\n#_1E8E4E: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1E8E51: LDA.w $0E00,X\n#_1E8E54: CMP.b #$08\n#_1E8E56: BNE .no_bombing\n\n#_1E8E58: JSR Zirro_DropBomb\n\n.no_bombing\n#_1E8E5B: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1E8E5E: LDA.b $1A\n#_1E8E60: AND.b #$01\n#_1E8E62: BNE .dont_adjust_z_speed\n\n#_1E8E64: LDA.w $0ED0,X\n#_1E8E67: AND.b #$01\n#_1E8E69: TAY\n\n#_1E8E6A: LDA.w $0F80,X\n#_1E8E6D: CLC\n#_1E8E6E: ADC.w .speed_z,Y\n#_1E8E71: STA.w $0F80,X\n\n#_1E8E74: CMP.w .max_z,Y\n#_1E8E77: BNE .dont_adjust_z_speed\n\n#_1E8E79: INC.w $0ED0,X\n\n.dont_adjust_z_speed\n#_1E8E7C: JSR Sprite_Move_Z_Bank1E\n#_1E8E7F: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E8E82: LDA.b $0E\n#_1E8E84: CLC\n#_1E8E85: ADC.b #$28\n#_1E8E87: CMP.b #$50\n#_1E8E89: BCS .dont_dodge\n\n#_1E8E8B: LDA.b $0F\n#_1E8E8D: CLC\n#_1E8E8E: ADC.b #$28\n#_1E8E90: CMP.b #$50\n#_1E8E92: BCS .dont_dodge\n\n#_1E8E94: LDA.b $44\n#_1E8E96: CMP.b #$80\n#_1E8E98: BEQ .dont_dodge\n\n#_1E8E9A: LDA.w $0372\n#_1E8E9D: BNE .dashing\n\n#_1E8E9F: LDA.b $3C\n#_1E8EA1: CMP.b #$09\n#_1E8EA3: BPL .dont_dodge\n\n.dashing\n#_1E8EA5: LDA.b #$30\n#_1E8EA7: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1E8EAB: LDA.b $01\n#_1E8EAD: EOR.b #$FF\n#_1E8EAF: INC A\n#_1E8EB0: STA.w $0D50,X\n\n#_1E8EB3: LDA.b $00\n#_1E8EB5: EOR.b #$FF\n#_1E8EB7: INC A\n#_1E8EB8: STA.w $0D40,X\n\n#_1E8EBB: LDA.b #$08\n#_1E8EBD: STA.w $0DF0,X\n\n#_1E8EC0: LDA.b #$02\n#_1E8EC2: STA.w $0D80,X\n\n.dont_dodge\n#_1E8EC5: LDA.w $0D80,X\n#_1E8EC8: JSL JumpTableLocal\n#_1E8ECC: dw Zirro_Idle\n#_1E8ECE: dw Zirro_Move\n#_1E8ED0: dw Zirro_Dodge\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Dodge", + "code": "Zirro_Dodge:\n#_1E8ED2: LDA.w $0DF0,X\n#_1E8ED5: BNE .still_dodging\n\n#_1E8ED7: STZ.w $0D80,X\n\n.still_dodging\n#_1E8EDA: INC.w $0E80,X\n#_1E8EDD: INC.w $0E80,X\n\n#_1E8EE0: JSR Zirro_HandleMovement\n\n#_1E8EE3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Idle", + "code": "Zirro_Idle:\n#_1E8EF8: LDA.w $0DF0,X\n#_1E8EFB: BNE .delay\n\n#_1E8EFD: INC.w $0D80,X\n#_1E8F00: INC.w $0DA0,X\n\n#_1E8F03: LDA.w $0DA0,X\n#_1E8F06: CMP.b #$03\n#_1E8F08: BNE .random_direction\n\n#_1E8F0A: STZ.w $0DA0,X\n\n#_1E8F0D: LDA.b #$30\n#_1E8F0F: STA.w $0DF0,X\n\n#_1E8F12: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E8F15: LDA.w .direction,Y\n#_1E8F18: BRA .use_direction\n\n.random_direction\n#_1E8F1A: JSL GetRandomNumber\n#_1E8F1E: AND.b #$1F\n#_1E8F20: ORA.b #$20\n#_1E8F22: STA.w $0DF0,X\n\n#_1E8F25: AND.b #$07\n\n.use_direction\n#_1E8F27: TAY\n\n#_1E8F28: LDA.w .speed_x,Y\n#_1E8F2B: STA.w $0D50,X\n\n#_1E8F2E: LDA.w .speed_y,Y\n#_1E8F31: STA.w $0D40,X\n\n.delay\n#_1E8F34: BRA Zirro_Animate\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Move", + "code": "Zirro_Move:\n#_1E8F36: LDA.w $0DF0,X\n#_1E8F39: BNE Zirro_HandleMovement\n\n#_1E8F3B: STZ.w $0D80,X\n\n#_1E8F3E: LDA.b #$0A\n#_1E8F40: STA.w $0DF0,X\n\n#_1E8F43: LDY.w $0E20,X\n#_1E8F46: CPY.b #$A8 ; SPRITE A8\n#_1E8F48: BNE .not_green\n\n#_1E8F4A: LDA.b #$10\n#_1E8F4C: STA.w $0E00,X\n\n.not_green\n#_1E8F4F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_HandleMovement", + "code": "Zirro_HandleMovement:\n#_1E8F50: JSR Sprite_Move_XY_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_Animate", + "code": "Zirro_Animate:\n#_1E8F53: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E8F56: TYA\n#_1E8F57: STA.w $0DE0,X\n\n#_1E8F5A: INC.w $0E80,X\n\n#_1E8F5D: LDA.w $0E80,X\n#_1E8F60: LSR A\n#_1E8F61: LSR A\n#_1E8F62: LSR A\n#_1E8F63: AND.b #$01\n#_1E8F65: STA.b $00\n\n#_1E8F67: LDA.w $0DE0,X\n#_1E8F6A: ASL A\n#_1E8F6B: ORA.b $00\n#_1E8F6D: STA.w $0DC0,X\n\n#_1E8F70: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Zirro_DropBomb", + "code": "Zirro_DropBomb:\n#_1E8F81: LDA.b #$A8 ; SPRITE A8\n#_1E8F83: JSL Sprite_SpawnDynamically\n#_1E8F87: BMI .exit\n\n#_1E8F89: LDA.b #$20 ; SFX2.20\n#_1E8F8B: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1E8F8F: LDA.b $04\n#_1E8F91: STA.w $0F70,Y\n\n#_1E8F94: PHX\n\n#_1E8F95: LDX.w $0DE0,Y\n\n#_1E8F98: LDA.b $00\n#_1E8F9A: CLC\n#_1E8F9B: ADC.w .offset_x_low,X\n#_1E8F9E: STA.w $0D10,Y\n\n#_1E8FA1: LDA.b $01\n#_1E8FA3: ADC.w .offset_x_high,X\n#_1E8FA6: STA.w $0D30,Y\n\n#_1E8FA9: LDA.b $02\n#_1E8FAB: CLC\n#_1E8FAC: ADC.w .offset_y_low,X\n#_1E8FAF: STA.w $0D00,Y\n\n#_1E8FB2: LDA.b $03\n#_1E8FB4: ADC.w .offset_y_high,X\n#_1E8FB7: STA.w $0D20,Y\n\n#_1E8FBA: LDA.w Sixteen_X,X\n#_1E8FBD: STA.w $0D50,Y\n\n#_1E8FC0: LDA.w Sixteen_Y,X\n#_1E8FC3: STA.w $0D40,Y\n\n#_1E8FC6: PLX\n\n#_1E8FC7: LDA.b #$01\n#_1E8FC9: STA.w $0D90,Y\n#_1E8FCC: STA.w $0BA0,Y\n\n#_1E8FCF: LDA.b #$09\n#_1E8FD1: STA.w $0F60,Y\n\n#_1E8FD4: LDA.b #$33\n#_1E8FD6: STA.w $0E60,Y\n\n#_1E8FD9: AND.b #$0F\n#_1E8FDB: STA.w $0F50,Y\n\n.exit\n#_1E8FDE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosBone", + "code": "StalfosBone:\n#_1E8FDF: JSR SpriteDraw_StalfosBone\n#_1E8FE2: JSR Sprite_CheckIfActive_Bank1E\n#_1E8FE5: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1E8FE8: INC.w $0E80,X\n\n#_1E8FEB: JSR Sprite_Move_XY_Bank1E\n\n#_1E8FEE: LDA.w $0DF0,X\n#_1E8FF1: BNE .exit\n\n#_1E8FF3: JSR Sprite_CheckTileCollision_Bank1E\n#_1E8FF6: BEQ .exit\n\n#_1E8FF8: STZ.w $0DD0,X\n\n#_1E8FFB: JSL Sprite_PlaceWeaponTink\n\n.exit\n#_1E8FFF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_StalfosBone", + "code": "SpriteDraw_StalfosBone:\n#_1E9040: LDA.b #$00\n#_1E9042: XBA\n#_1E9043: LDA.w $0E80,X\n\n#_1E9046: LSR A\n#_1E9047: LSR A\n#_1E9048: AND.b #$03\n\n#_1E904A: REP #$20\n\n#_1E904C: ASL A\n#_1E904D: ASL A\n#_1E904E: ASL A\n#_1E904F: ASL A\n\n#_1E9050: ADC.w #.oam_groups\n#_1E9053: STA.b $08\n\n#_1E9055: SEP #$20\n\n#_1E9057: LDA.b #$02\n#_1E9059: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosTimers", + "code": "StalfosTimers:\n#_1E905C: db 16, 32, 64, 32\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosDrawStepsA", + "code": "StalfosDrawStepsA:\n#_1E9060: db $06, $04, $00, $02, $07, $05, $01, $03\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosDrawStepsB", + "code": "StalfosDrawStepsB:\n#_1E9068: db $08, $09, $0A, $0B\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A7_Stalfos", + "code": "Sprite_A7_Stalfos:\n#_1E906C: LDA.w $0D90,X\n#_1E906F: BEQ Stalfos\n\n#_1E9071: JMP.w StalfosBone\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Stalfos", + "code": "Stalfos:\n#_1E9074: LDA.w $0E90,X\n#_1E9077: BEQ Stalfos_Skellington\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Stalfos_Invisible", + "code": "Stalfos_Invisible:\n#_1E9079: LDA.w $0DF0,X\n#_1E907C: BNE .wait_in_closet\n\n#_1E907E: LDA.b #$01\n#_1E9080: STA.w $0D50,X\n#_1E9083: STA.w $0D40,X\n\n#_1E9086: JSR Sprite_CheckTileCollision_Bank1E\n#_1E9089: BEQ .no_collision\n\n#_1E908B: STZ.w $0DD0,X\n\n#_1E908E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Stalfos_Skellington", + "code": "Stalfos_Skellington:\n#_1E90B5: LDA.w $0DD0,X\n#_1E90B8: CMP.b #$09\n#_1E90BA: BNE .dont_dodge\n\n#_1E90BC: REP #$20\n\n#_1E90BE: LDA.b $22\n#_1E90C0: SEC\n#_1E90C1: SBC.w $0FD8\n#_1E90C4: CLC\n#_1E90C5: ADC.w #$0028\n\n#_1E90C8: CMP.w #$0050\n#_1E90CB: BCS .dont_dodge\n\n#_1E90CD: LDA.b $20\n#_1E90CF: SEC\n#_1E90D0: SBC.w $0FDA\n#_1E90D3: CLC\n#_1E90D4: ADC.w #$0030\n\n#_1E90D7: CMP.w #$0050\n#_1E90DA: BCS .dont_dodge\n\n#_1E90DC: SEP #$20\n\n#_1E90DE: LDA.b $44\n#_1E90E0: CMP.b #$80\n#_1E90E2: BEQ .dont_dodge\n\n#_1E90E4: LDA.w $0F70,X\n#_1E90E7: ORA.w $0F00,X\n#_1E90EA: BNE .dont_dodge\n\n#_1E90EC: LDA.b $EE\n#_1E90EE: CMP.w $0F20,X\n#_1E90F1: BNE .dont_dodge\n\n#_1E90F3: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E90F6: STY.b $00\n\n#_1E90F8: LDA.w $0372\n#_1E90FB: BNE .dodge\n\n#_1E90FD: LDA.b $3C\n#_1E90FF: CMP.b #$90\n#_1E9101: BCS .face_link\n\n#_1E9103: CMP.b #$09\n#_1E9105: BPL .dont_dodge\n\n.dodge\n#_1E9107: LDA.b $2F\n#_1E9109: LSR A\n#_1E910A: TAY\n\n#_1E910B: LDA.b $00\n#_1E910D: CMP.w .direction,Y\n#_1E9110: BEQ .dont_dodge\n\n.face_link\n#_1E9112: LDA.b $00\n#_1E9114: STA.w $0DE0,X\n\n#_1E9117: LDA.b #$20\n#_1E9119: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1E911D: LDA.b $01\n#_1E911F: EOR.b #$FF\n#_1E9121: INC A\n#_1E9122: STA.w $0D50,X\n\n#_1E9125: LDA.b $00\n#_1E9127: EOR.b #$FF\n#_1E9129: INC A\n#_1E912A: STA.w $0D40,X\n\n#_1E912D: LDA.b #$20\n#_1E912F: STA.w $0F80,X\n\n#_1E9132: LDA.b #$13 ; SFX3.13\n#_1E9134: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1E9138: INC.w $0F70,X\n\n; ---------------------------------------------------------\n\n.dont_dodge\n#_1E913B: SEP #$20\n\n#_1E913D: LDA.w $0F70,X\n#_1E9140: BEQ Zazak_Main\n\n#_1E9142: LDY.w $0DE0,X\n\n#_1E9145: LDA.w StalfosDrawStepsB,Y\n#_1E9148: STA.w $0DC0,X\n\n#_1E914B: JSL SpriteDraw_Stalfos\n#_1E914F: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9152: LDA.w $0EA0,X\n#_1E9155: BEQ .not_recoiling\n\n#_1E9157: STZ.w $0F80,X\n\n.not_recoiling\n#_1E915A: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1E915D: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1E9160: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1E9163: PHA\n\n#_1E9164: AND.b #$03\n#_1E9166: BEQ .no_horizontal_tile_collision\n\n#_1E9168: STZ.w $0D50,X\n\n.no_horizontal_tile_collision\n#_1E916B: PLA\n#_1E916C: AND.b #$0C\n#_1E916E: BEQ .no_vertital_tile_collision\n\n#_1E9170: STZ.w $0D40,X\n\n.no_vertital_tile_collision\n#_1E9173: JSR Sprite_Move_XYZ_Bank1E\n\n#_1E9176: LDA.w $0F80,X\n#_1E9179: SEC\n#_1E917A: SBC.b #$02\n#_1E917C: STA.w $0F80,X\n\n#_1E917F: LDA.w $0F70,X\n#_1E9182: DEC A\n#_1E9183: BPL .exit\n\n#_1E9185: STZ.w $0F70,X\n\n#_1E9188: JSR Sprite_ZeroVelocity_XY_Bank1E\n\n#_1E918B: LDA.b #$21 ; SFX2.21\n#_1E918D: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1E9191: LDA.w $0E30,X\n#_1E9194: BEQ .exit\n\n#_1E9196: LDA.b #$10\n#_1E9198: STA.w $0EE0,X\n\n#_1E919B: STZ.w $0E80,X\n\n.exit\n#_1E919E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Zazak_Main", + "code": "Zazak_Main:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A5_BlueZazak", + "code": "Sprite_A5_BlueZazak:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A6_RedZazak", + "code": "Sprite_A6_RedZazak:\n#_1E919F: LDA.w $0DA0,X\n#_1E91A2: BEQ TrueZazak\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ZazakPhlegm", + "code": "ZazakPhlegm:\n#_1E91A4: JSR SpriteDraw_Phlegm\n#_1E91A7: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E91AA: LDA.b $1A\n#_1E91AC: LSR A\n#_1E91AD: AND.b #$01\n#_1E91AF: STA.w $0DC0,X\n\n#_1E91B2: JSR Sprite_CheckDamageToLink_Bank1E\n#_1E91B5: JSR Sprite_Move_XY_Bank1E\n\n#_1E91B8: JSR Sprite_CheckTileCollision_Bank1E\n#_1E91BB: BEQ .exit\n\n#_1E91BD: STZ.w $0DD0,X\n\n#_1E91C0: JSL Sprite_PlaceWeaponTink_forced\n\n.exit\n#_1E91C4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "TrueZazak", + "code": "TrueZazak:\n#_1E91C5: LDA.w $0EE0,X\n#_1E91C8: BEQ .dont_toss_bone\n\n#_1E91CA: PHA\n\n#_1E91CB: STZ.w $0D80,X\n\n#_1E91CE: LDA.b #$20\n#_1E91D0: STA.w $0DF0,X\n\n#_1E91D3: JSR Sprite_ZeroVelocity_XY_Bank1E\n#_1E91D6: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E91D9: TYA\n#_1E91DA: STA.w $0EB0,X\n\n#_1E91DD: PLA\n\n.dont_toss_bone\n#_1E91DE: CMP.b #$01\n#_1E91E0: BNE .definitely_dont_toss_bone\n\n#_1E91E2: JSR Stalfos_ThrowBone\n\n#_1E91E5: LDA.b #$01\n#_1E91E7: STA.w $0E80,X\n\n.definitely_dont_toss_bone\n#_1E91EA: LDA.w $0E80,X\n#_1E91ED: AND.b #$01\n#_1E91EF: ASL A\n#_1E91F0: ASL A\n#_1E91F1: ADC.w $0DE0,X\n#_1E91F4: TAY\n\n#_1E91F5: LDA.w StalfosDrawStepsA,Y\n#_1E91F8: STA.w $0DC0,X\n\n#_1E91FB: LDA.w $0E20,X\n#_1E91FE: CMP.b #$A7 ; SPRITE A7\n#_1E9200: BNE .draw_as_zazak\n\n.draw_as_stalfos\n#_1E9202: JSL SpriteDraw_Stalfos\n#_1E9206: JSR Sprite_CheckIfActive_Bank1E\n#_1E9209: BRA .draw_done\n\n.draw_as_zazak\n#_1E920B: JSL SpriteDraw_Zazak\n#_1E920F: JSR Sprite_CheckIfActive_Bank1E\n\n.draw_done\n#_1E9212: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1E9215: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1E9218: JSR Sprite_Move_XY_Bank1E\n#_1E921B: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1E921E: LDA.w $0D80,X\n#_1E9221: JSL JumpTableLocal\n#_1E9225: dw StalfosZazak_Walk\n#_1E9227: dw StalfosZazak_Wait\n#_1E9229: dw StalfosZazak_Shoot\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosZazak_Walk", + "code": "StalfosZazak_Walk:\n#_1E922B: LDA.w $0DF0,X\n#_1E922E: BNE .exit\n\n#_1E9230: JSL GetRandomNumber\n#_1E9234: AND.b #$03\n#_1E9236: TAY\n\n#_1E9237: LDA.w StalfosTimers,Y\n#_1E923A: STA.w $0DF0,X\n\n#_1E923D: INC.w $0D80,X\n\n#_1E9240: LDA.w $0EB0,X\n#_1E9243: STA.w $0DE0,X\n\n#_1E9246: TAY\n\n#_1E9247: LDA.w Sixteen_X,Y\n#_1E924A: STA.w $0D50,X\n\n#_1E924D: LDA.w Sixteen_Y,Y\n#_1E9250: STA.w $0D40,X\n\n.exit\n#_1E9253: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SharedDirections_Nice", + "code": "SharedDirections_Nice:\n#_1E9254: db $02, $03, $02, $03, $00, $01, $00, $01\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosZazak_Wait", + "code": "StalfosZazak_Wait:\n#_1E925C: LDA.b #$10\n\n#_1E925E: LDY.w $0E70,X\n#_1E9261: BNE .new_direction\n\n#_1E9263: LDA.w $0DF0,X\n#_1E9266: BNE .delay\n\n#_1E9268: LDA.w $0E20,X\n#_1E926B: CMP.b #$A6 ; SPRITE A6\n#_1E926D: BNE .dont_shoot\n\n#_1E926F: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E9272: TYA\n#_1E9273: CMP.w $0DE0,X\n#_1E9276: BNE .dont_shoot\n\n#_1E9278: LDA.b $EE\n#_1E927A: CMP.w $0F20,X\n#_1E927D: BNE .dont_shoot\n\n#_1E927F: INC.w $0D80,X\n\n#_1E9282: LDA.b #$30\n#_1E9284: STA.w $0DF0,X\n#_1E9287: STA.w $0E00,X\n\n#_1E928A: BRA Sprite_ZeroVelocity_XY_Bank1E\n\n.dont_shoot\n#_1E928C: LDA.b #$20\n\n.new_direction\n#_1E928E: STA.w $0DF0,X\n\n#_1E9291: JSL GetRandomNumber\n#_1E9295: LSR A\n#_1E9296: LDA.w $0DE0,X\n#_1E9299: ROL A\n#_1E929A: TAY\n\n#_1E929B: LDA.w SharedDirections_Nice,Y\n#_1E929E: STA.w $0EB0,X\n\n#_1E92A1: STZ.w $0D80,X\n\n#_1E92A4: INC.w $0DB0,X\n\n#_1E92A7: LDA.w $0DB0,X\n#_1E92AA: CMP.b #$04\n#_1E92AC: BNE Sprite_ZeroVelocity_XY_Bank1E\n\n#_1E92AE: STZ.w $0DB0,X\n\n#_1E92B1: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E92B4: TYA\n#_1E92B5: STA.w $0EB0,X\n\n#_1E92B8: LDA.b #$18\n#_1E92BA: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n#Sprite_ZeroVelocity_XY_Bank1E:\n#_1E92BD: STZ.w $0D50,X\n#_1E92C0: STZ.w $0D40,X\n\n#_1E92C3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosZazak_Shoot", + "code": "StalfosZazak_Shoot:\n#_1E92D2: LDA.w $0DF0,X\n#_1E92D5: BNE .wait\n\n#_1E92D7: STZ.w $0D80,X\n\n#_1E92DA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_SpawnFirePhlegm", + "code": "Sprite_SpawnFirePhlegm:\n#_1E92E4: PHB\n#_1E92E5: PHK\n#_1E92E6: PLB\n\n#_1E92E7: LDA.b #$A5 ; SPRITE A5\n#_1E92E9: JSL Sprite_SpawnDynamically\n#_1E92ED: BMI .no_space\n\n#_1E92EF: LDA.b #$05 ; SFX3.05\n#_1E92F1: JSL SpriteSFX_QueueSFX3WithPan\n#_1E92F5: JSL Sprite_SetSpawnedCoordinates\n\n#_1E92F9: PHX\n\n#_1E92FA: LDA.w $0DE0,X\n#_1E92FD: TAX\n\n#_1E92FE: LDA.b $00\n#_1E9300: CLC\n#_1E9301: ADC.w .offset_x_low,X\n#_1E9304: STA.w $0D10,Y\n\n#_1E9307: LDA.b $01\n#_1E9309: ADC.w .offset_x_high,X\n#_1E930C: STA.w $0D30,Y\n\n#_1E930F: LDA.b $02\n#_1E9311: CLC\n#_1E9312: ADC.w .offset_y_low,X\n#_1E9315: STA.w $0D00,Y\n\n#_1E9318: LDA.b $03\n#_1E931A: ADC.w .offset_y_high,X\n#_1E931D: STA.w $0D20,Y\n\n#_1E9320: LDA.w .speed_x,X\n#_1E9323: STA.w $0D50,Y\n\n#_1E9326: LDA.w .speed_y,X\n#_1E9329: STA.w $0D40,Y\n\n#_1E932C: LDA.w $0E60,Y\n#_1E932F: ORA.b #$40\n#_1E9331: STA.w $0E60,Y\n\n#_1E9334: LDA.b #$40\n#_1E9336: STA.w $0CAA,Y\n\n#_1E9339: LDA.b #$21\n#_1E933B: STA.w $0E40,Y\n#_1E933E: STA.w $0DA0,Y\n\n#_1E9341: LDA.b #$02\n#_1E9343: STA.w $0F50,Y\n\n#_1E9346: LDA.b #$14\n#_1E9348: STA.w $0F60,Y\n#_1E934B: STA.w $0BA0,Y\n\n#_1E934E: LDA.b #$25\n#_1E9350: STA.w $0CD2,Y\n\n#_1E9353: LDA.l $7EF35A\n#_1E9357: CMP.b #$03\n#_1E9359: BCC .not_blockable\n\n#_1E935B: LDA.b #$20\n#_1E935D: STA.w $0BE0,Y\n\n.not_blockable\n#_1E9360: PLX\n\n.no_space\n#_1E9361: PLB\n\n#_1E9362: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Stalfos_ThrowBone", + "code": "Stalfos_ThrowBone:\n#_1E9379: LDA.b #$A7 ; SPRITE A7\n#_1E937B: JSL Sprite_SpawnDynamically\n#_1E937F: BMI .exit\n\n#_1E9381: LDA.b #$01\n#_1E9383: STA.w $0D90,Y\n\n#_1E9386: JSL Sprite_SetSpawnedCoordinates\n\n#_1E938A: PHX\n#_1E938B: TYX\n\n#_1E938C: LDA.b #$20\n#_1E938E: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1E9392: LDA.b #$21\n#_1E9394: STA.w $0E40,X\n#_1E9397: STA.w $0BA0,X\n\n#_1E939A: LDA.w $0E60,X\n#_1E939D: ORA.b #$40\n#_1E939F: STA.w $0E60,X\n\n#_1E93A2: LDA.b #$48\n#_1E93A4: STA.w $0CAA,X\n\n#_1E93A7: LDA.b #$10\n#_1E93A9: STA.w $0DF0,X\n\n#_1E93AC: LDA.b #$14\n#_1E93AE: STA.w $0F60,X\n\n#_1E93B1: LDA.b #$07\n#_1E93B3: STA.w $0F50,X\n\n#_1E93B6: LDA.b #$20\n#_1E93B8: STA.w $0CD2,X\n\n#_1E93BB: PLX\n\n#_1E93BC: LDA.b #$02 ; SFX2.02\n#_1E93BE: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1E93C2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Phlegm", + "code": "SpriteDraw_Phlegm:\n#_1E9443: LDA.b #$00\n#_1E9445: XBA\n#_1E9446: LDA.w $0DE0,X\n\n#_1E9449: ASL A\n#_1E944A: CLC\n#_1E944B: ADC.w $0DC0,X\n\n#_1E944E: REP #$20\n\n#_1E9450: ASL A\n#_1E9451: ASL A\n#_1E9452: ASL A\n#_1E9453: ASL A\n#_1E9454: ADC.w #.oam_groups\n#_1E9457: STA.b $08\n\n#_1E9459: SEP #$20\n\n#_1E945B: LDA.b #$02\n#_1E945D: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A3_KholdstareShell", + "code": "Sprite_A3_KholdstareShell:\n#_1E9460: JSR Sprite_CheckIfActivePermissive_Bank1E\n#_1E9463: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1E9466: LDA.b $0F\n#_1E9468: CLC\n#_1E9469: ADC.b #$20\n#_1E946B: CMP.b #$40\n#_1E946D: BCS .link_not_close\n\n#_1E946F: LDA.b $0E\n#_1E9471: CLC\n#_1E9472: ADC.b #$20\n#_1E9474: CMP.b #$40\n#_1E9476: BCS .link_not_close\n\n#_1E9478: JSL Sprite_CancelHookshot\n#_1E947C: JSL Sprite_RepelDash_long\n\n.link_not_close\n#_1E9480: JSL Sprite_CheckDamageFromLink_long\n\n#_1E9484: LDA.w $0D80,X\n#_1E9487: BNE .phase_out\n\n#_1E9489: LDA.w $0DD0,X\n#_1E948C: CMP.b #$06\n#_1E948E: BNE .shake\n\n#_1E9490: LDA.b #$C0\n#_1E9492: STA.w $0E60,X\n\n#_1E9495: INC.w $0D80,X\n\n#_1E9498: LDA.b #$09\n#_1E949A: STA.w $0DD0,X\n\n#_1E949D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "GenerateIceball", + "code": "GenerateIceball:\n#_1E94DD: INC.w $0E80,X\n\n#_1E94E0: LDA.w $0E80,X\n#_1E94E3: AND.b #$7F\n#_1E94E5: ORA.w $0E00,X\n#_1E94E8: BNE .exit\n\n#_1E94EA: LDA.b #$A4 ; SPRITE A4\n#_1E94EC: JSL Sprite_SpawnDynamically\n#_1E94F0: BMI .exit\n\n#_1E94F2: LDA.b $22\n#_1E94F4: STA.w $0D10,Y\n\n#_1E94F7: LDA.b $23\n#_1E94F9: STA.w $0D30,Y\n\n#_1E94FC: LDA.b $20\n#_1E94FE: STA.w $0D00,Y\n\n#_1E9501: LDA.b $21\n#_1E9503: STA.w $0D20,Y\n\n#_1E9506: LDA.b #$E0\n#_1E9508: STA.w $0F70,Y\n#_1E950B: STA.w $0DB0,Y\n\n#_1E950E: PHX\n#_1E950F: TYX\n\n#_1E9510: LDA.b #$20 ; SFX2.20\n#_1E9512: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1E9516: PLX\n\n.exit\n#_1E9517: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A2_Kholdstare", + "code": "Sprite_A2_Kholdstare:\n#_1E9518: JSL SpriteDraw_Kholdstare\n#_1E951C: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E951F: LDA.w $0D80,X\n#_1E9522: CMP.b #$02\n#_1E9524: BCS .no_garnish\n\n#_1E9526: JSR Kholdstare_SpawnPuffCloudGarnish\n\n#_1E9529: LDA.b $1A\n#_1E952B: AND.b #$07\n#_1E952D: BNE .no_garnish\n\n#_1E952F: LDA.b #$02 ; SFX2.02\n#_1E9531: STA.w $012E\n\n.no_garnish\n#_1E9534: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1E9537: DEC.w $0E80,X\n#_1E953A: BPL .delay_anim\n\n#_1E953C: LDA.b #$0A\n#_1E953E: STA.w $0E80,X\n\n#_1E9541: LDA.w $0DC0,X\n#_1E9544: INC A\n#_1E9545: AND.b #$03\n#_1E9547: STA.w $0DC0,X\n\n.delay_anim\n#_1E954A: LDA.b $1A\n#_1E954C: AND.b #$03\n#_1E954E: BNE .dont_turn_eye\n\n#_1E9550: LDA.b #$1F\n#_1E9552: JSL Sprite_ProjectSpeedTowardsLink_long\n#_1E9556: JSL Sprite_ConvertVelocityToAngle\n#_1E955A: STA.w $0D90,X\n\n.dont_turn_eye\n#_1E955D: JSR Sprite_Move_XY_Bank1E\n\n#_1E9560: LDA.w $0D80,X\n#_1E9563: JSL JumpTableLocal\n#_1E9567: dw Kholdstare_Accelerate\n#_1E9569: dw Kholdstare_Decelerate\n#_1E956B: dw Kholdstare_Split\n#_1E956D: dw Kholdstare_DoAbsolutelyNothing\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_Accelerate", + "code": "Kholdstare_Accelerate:\n#_1E956F: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1E9572: LDA.w $0DF0,X\n#_1E9575: BNE .delay\n\n#_1E9577: INC.w $0D80,X\n\n#_1E957A: JSL GetRandomNumber\n#_1E957E: AND.b #$3F\n#_1E9580: ADC.b #$20\n#_1E9582: STA.w $0DF0,X\n\n#_1E9585: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_CheckTileCollision", + "code": "Kholdstare_CheckTileCollision:\n#_1E95AA: JSR Sprite_CheckTileCollision_Bank1E\n#_1E95AD: AND.b #$03\n#_1E95AF: BEQ .no_collision\n\n#_1E95B1: LDA.w $0D50,X\n#_1E95B4: EOR.b #$FF\n#_1E95B6: INC A\n#_1E95B7: STA.w $0D50,X\n\n#_1E95BA: LDA.w $0F80,X\n#_1E95BD: EOR.b #$FF\n#_1E95BF: INC A\n#_1E95C0: STA.w $0F80,X\n\n.no_collision\n#_1E95C3: LDA.w $0E70,X\n#_1E95C6: AND.b #$0C\n#_1E95C8: BEQ .exit\n\n#_1E95CA: LDA.w $0D40,X\n#_1E95CD: EOR.b #$FF\n#_1E95CF: INC A\n#_1E95D0: STA.w $0D40,X\n\n#_1E95D3: LDA.w $0F90,X\n#_1E95D6: EOR.b #$FF\n#_1E95D8: INC A\n#_1E95D9: STA.w $0F90,X\n\n.exit\n#_1E95DC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_Decelerate", + "code": "Kholdstare_Decelerate:\n#_1E95E5: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1E95E8: LDA.w $0DF0,X\n#_1E95EB: BNE .delay\n\n#_1E95ED: STZ.w $0D80,X\n\n#_1E95F0: JSL GetRandomNumber\n#_1E95F4: AND.b #$3F\n\n#_1E95F6: ADC.b #$60\n#_1E95F8: STA.w $0DF0,X\n\n#_1E95FB: JSL GetRandomNumber\n#_1E95FF: PHA\n\n#_1E9600: AND.b #$03\n#_1E9602: TAY\n\n#_1E9603: LDA.w .limit_x,Y\n#_1E9606: STA.w $0F80,X\n\n#_1E9609: LDA.w .limit_y,Y\n#_1E960C: STA.w $0F90,X\n\n#_1E960F: PLA\n#_1E9610: AND.b #$1C\n#_1E9612: BNE .use_random_direction\n\n#_1E9614: LDA.b #$18\n#_1E9616: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1E961A: LDA.b $00\n#_1E961C: STA.w $0F90,X\n\n#_1E961F: LDA.b $01\n#_1E9621: STA.w $0F80,X\n\n.use_random_direction\n#_1E9624: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_Split", + "code": "Kholdstare_Split:\n#_1E964C: LDA.w $0DF0,X\n#_1E964F: CMP.b #$01\n#_1E9651: BNE .exit\n\n#_1E9653: STZ.w $0DD0,X\n#_1E9656: STZ.w $0DD1,X\n#_1E9659: STZ.w $0DD2,X\n\n#_1E965C: LDA.b #$02\n#_1E965E: STA.w $0FB5\n\n.next_scoop\n#_1E9661: LDA.b #$A2 ; SPRITE A2\n#_1E9663: LDY.b #$04\n#_1E9665: JSL Sprite_SpawnDynamically_slot_limited\n#_1E9669: BMI .exit\n\n#_1E966B: JSL Sprite_SetSpawnedCoordinates\n\n#_1E966F: PHX\n\n#_1E9670: LDX.w $0FB5\n\n#_1E9673: LDA.w .target_speed_x,X\n#_1E9676: STA.w $0F80,Y\n\n#_1E9679: LDA.w .target_speed_y,X\n#_1E967C: STA.w $0F90,Y\n\n#_1E967F: LDA.b #$20\n#_1E9681: STA.w $0DF0,Y\n\n#_1E9684: PLX\n\n#_1E9685: DEC.w $0FB5\n#_1E9688: BPL .next_scoop\n\n#_1E968A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_DoAbsolutelyNothing", + "code": "Kholdstare_DoAbsolutelyNothing:\n#_1E9694: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kholdstare_SpawnPuffCloudGarnish", + "code": "Kholdstare_SpawnPuffCloudGarnish:\n#_1E96A5: TXA\n#_1E96A6: EOR.b $1A\n#_1E96A8: AND.b #$03\n#_1E96AA: BNE .exit\n\n#_1E96AC: PHX\n\n#_1E96AD: LDX.b #$0E\n\n.next\n#_1E96AF: LDA.l $7FF800,X\n#_1E96B3: BEQ .open_slot\n\n#_1E96B5: DEX\n#_1E96B6: BPL .next\n\n#_1E96B8: PLX\n\n#_1E96B9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A4_FallingIce", + "code": "Sprite_A4_FallingIce:\n#_1E9710: LDA.w $0DB0,X\n#_1E9713: BNE FallingIce_IceBall\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "FallingIce_IceBallGenerator", + "code": "FallingIce_IceBallGenerator:\n#_1E9715: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9718: LDA.w $0DD2\n#_1E971B: CMP.b #$09\n#_1E971D: BCS .active_kholdstare\n\n#_1E971F: LDA.w $0DD3\n#_1E9722: CMP.b #$09\n#_1E9724: BCS .active_kholdstare\n\n#_1E9726: LDA.w $0DD4\n#_1E9729: CMP.b #$09\n#_1E972B: BCS .active_kholdstare\n\n#_1E972D: STZ.w $0DD0,X\n\n.active_kholdstare\n#_1E9730: JMP.w GenerateIceball\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "FallingIce_IceBall", + "code": "FallingIce_IceBall:\n#_1E9733: LDA.b #$01\n#_1E9735: STA.w $0BA0,X\n\n#_1E9738: LDA.b #$30\n#_1E973A: STA.w $0B89,X\n\n#_1E973D: JSL SpriteDraw_SingleLarge_long\n\n#_1E9741: LDA.w $0D80,X\n#_1E9744: BNE .ice_ball_piece\n\n#_1E9746: LDA.w $0E60,X\n#_1E9749: EOR.b #$10\n#_1E974B: STA.w $0E60,X\n\n.ice_ball_piece\n#_1E974E: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9751: LDA.w $0DF0,X\n#_1E9754: BEQ .falling_as_ball\n\n#_1E9756: CMP.b #$01\n#_1E9758: BNE .stick_around\n\n#_1E975A: STZ.w $0DD0,X\n\n.stick_around\n#_1E975D: LSR A\n#_1E975E: LSR A\n#_1E975F: LSR A\n\n#_1E9760: INC A\n#_1E9761: INC A\n\n#_1E9762: STA.w $0DC0,X\n\n#_1E9765: RTS", + "file": "bank_1E.asm" + }, + { + "name": "IceBall_Split", + "code": "IceBall_Split:\n#_1E97CF: LDA.b #$1F ; SFX2.1F\n#_1E97D1: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1E97D5: JSL GetRandomNumber\n#_1E97D9: AND.b #$04\n#_1E97DB: STA.b $0D\n\n#_1E97DD: LDA.b #$03\n#_1E97DF: STA.w $0FB5\n\n.next_shard\n#_1E97E2: LDA.b #$A4 ; SPRITE A4\n#_1E97E4: JSL Sprite_SpawnDynamically\n#_1E97E8: BMI .no_space\n\n#_1E97EA: JSL Sprite_SetSpawnedCoordinates\n\n#_1E97EE: LDA.b #$01\n#_1E97F0: STA.w $0D80,Y\n#_1E97F3: STA.w $0DC0,Y\n#_1E97F6: STA.w $0DB0,Y\n\n#_1E97F9: LDA.b #$20\n#_1E97FB: STA.w $0F80,Y\n\n#_1E97FE: PHX\n\n#_1E97FF: LDA.w $0FB5\n#_1E9802: ORA.b $0D\n#_1E9804: TAX\n\n#_1E9805: LDA.w .speed_x,X\n#_1E9808: STA.w $0D50,Y\n\n#_1E980B: LDA.w .speed_y,X\n#_1E980E: STA.w $0D40,Y\n\n#_1E9811: PLX\n\n#_1E9812: LDA.b #$1C\n#_1E9814: STA.w $0F60,Y\n\n.no_space\n#_1E9817: DEC.w $0FB5\n#_1E981A: BPL .next_shard\n\n#_1E981C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A1_Freezor", + "code": "Sprite_A1_Freezor:\n#_1E981D: JSL SpriteDraw_Freezor\n\n#_1E9821: LDA.w $0DD0,X\n#_1E9824: CMP.b #$09\n#_1E9826: BEQ .active_state\n\n#_1E9828: LDA.b #$03\n#_1E982A: STA.w $0D80,X\n\n#_1E982D: LDA.b #$1F\n#_1E982F: STA.w $0DF0,X\n#_1E9832: STA.w $0BA0,X\n\n#_1E9835: LDA.b #$09\n#_1E9837: STA.w $0DD0,X\n#_1E983A: STZ.w $0EF0,X\n\n.active_state\n#_1E983D: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9840: LDA.w $0D80,X\n#_1E9843: CMP.b #$03\n#_1E9845: BEQ .ignore_recoil\n\n#_1E9847: JSR Sprite_CheckIfRecoiling_Bank1E\n\n.ignore_recoil\n#_1E984A: LDA.w $0D80,X\n#_1E984D: JSL JumpTableLocal\n#_1E9851: dw Freezor_Dormant\n#_1E9853: dw Freezor_Waking\n#_1E9855: dw Freezor_Flailing\n#_1E9857: dw Freezor_ImMelllltiiiinnnnggggg\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Freezor_Dormant", + "code": "Freezor_Dormant:\n#_1E9859: INC.w $0BA0,X\n\n#_1E985C: JSR Sprite_IsRightOfLink_Bank1E\n\n#_1E985F: LDA.b $0F\n#_1E9861: CLC\n#_1E9862: ADC.b #$10\n#_1E9864: CMP.b #$20\n#_1E9866: BCS .stay_asleep\n\n#_1E9868: INC.w $0D80,X\n\n#_1E986B: LDA.b #$20\n#_1E986D: STA.w $0DF0,X\n\n.stay_asleep\n#_1E9870: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Freezor_Waking", + "code": "Freezor_Waking:\n#_1E9871: LDA.w $0DF0,X\n#_1E9874: STA.w $0BA0,X\n#_1E9877: BNE .still_shaking\n\n#_1E9879: INC.w $0D80,X\n\n#_1E987C: LDA.w $0D10,X\n#_1E987F: SEC\n#_1E9880: SBC.b #$05\n#_1E9882: STA.b $00\n\n#_1E9884: LDA.w $0D30,X\n#_1E9887: SBC.b #$00\n#_1E9889: STA.b $01\n\n#_1E988B: LDA.w $0D00,X\n#_1E988E: STA.b $02\n\n#_1E9890: LDA.w $0D20,X\n#_1E9893: STA.b $03\n\n#_1E9895: LDY.b #$08\n#_1E9897: JSL Underworld_UpdateTilemapWithCommonTile\n\n#_1E989B: LDA.b #$60\n#_1E989D: STA.w $0E00,X\n\n#_1E98A0: LDA.b #$02\n#_1E98A2: STA.w $0DE0,X\n\n#_1E98A5: LDA.b #$50\n#_1E98A7: STA.w $0DF0,X\n\n#_1E98AA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Freezor_Flailing", + "code": "Freezor_Flailing:\n#_1E98D2: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1E98D5: JSL Sprite_CheckDamageFromLink_long\n#_1E98D9: BCC .no_damage\n\n#_1E98DB: STZ.w $0EF0,X\n\n.no_damage\n#_1E98DE: LDA.w $0E00,X\n#_1E98E1: BEQ .dont_sparkle\n\n#_1E98E3: TXA\n#_1E98E4: EOR.b $1A\n#_1E98E6: AND.b #$07\n#_1E98E8: BNE .dont_sparkle\n\n#_1E98EA: JSL GetRandomNumber\n#_1E98EE: AND.b #$07\n#_1E98F0: TAY\n\n#_1E98F1: LDA.w .sparkle_offset_low,Y\n#_1E98F4: STA.b $00\n\n#_1E98F6: LDA.w .sparkle_offset_high,Y\n#_1E98F9: STA.b $01\n\n#_1E98FB: LDA.b #$FC\n#_1E98FD: STA.b $02\n\n#_1E98FF: LDA.b #$FF\n#_1E9901: STA.b $03\n\n#_1E9903: JSL GarnishSpawn_Sparkle\n\n.dont_sparkle\n#_1E9907: LDA.w $0DF0,X\n#_1E990A: BNE .dont_turn\n\n#_1E990C: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E990F: TYA\n#_1E9910: STA.w $0DE0,X\n\n.dont_turn\n#_1E9913: LDY.w $0DE0,X\n\n#_1E9916: LDA.w .speed_x,Y\n#_1E9919: STA.w $0D50,X\n\n#_1E991C: LDA.w .speed_y,Y\n#_1E991F: STA.w $0D40,X\n\n#_1E9922: LDA.w $0E70,X\n#_1E9925: AND.b #$0F\n#_1E9927: BNE .tile_collision\n\n#_1E9929: JSR Sprite_Move_XY_Bank1E\n\n.tile_collision\n#_1E992C: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1E992F: TXA\n#_1E9930: EOR.b $1A\n\n#_1E9932: LSR A\n#_1E9933: LSR A\n\n#_1E9934: AND.b #$03\n#_1E9936: TAY\n\n#_1E9937: LDA.w .anim_step,Y\n#_1E993A: STA.w $0DC0,X\n\n#_1E993D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Freezor_ImMelllltiiiinnnnggggg", + "code": "Freezor_ImMelllltiiiinnnnggggg:\n#_1E9942: LDA.w $0DF0,X\n#_1E9945: BNE .delay\n\n#_1E9947: PHA\n\n#_1E9948: JSL Sprite_ManuallySetDeathFlagUW\n\n#_1E994C: STZ.w $0DD0,X\n\n#_1E994F: PLA\n\n.delay\n#_1E9950: LSR A\n#_1E9951: LSR A\n#_1E9952: LSR A\n#_1E9953: TAY\n\n#_1E9954: LDA.w .draw_step,Y\n#_1E9957: STA.w $0DC0,X\n\n#_1E995A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9E_HauntedGroveOstritch", + "code": "Sprite_9E_HauntedGroveOstritch:\n#_1E995B: JSR SpriteDraw_HauntedGroveOstritch\n#_1E995E: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9961: LDA.w $0D80,X\n#_1E9964: JSL JumpTableLocal\n#_1E9968: dw HauntedGroveOstritch_Idle\n#_1E996A: dw HauntedGroveOstritch_Flee\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveOstritch_Idle", + "code": "HauntedGroveOstritch_Idle:\n#_1E996C: LDY.b #$00\n\n#_1E996E: LDA.b $1A\n#_1E9970: AND.b #$18\n#_1E9972: BEQ .default_anim\n\n#_1E9974: LDY.b #$03\n\n.default_anim\n#_1E9976: TYA\n#_1E9977: STA.w $0DC0,X\n\n#_1E997A: LDA.w $0FDD\n#_1E997D: BEQ .dont_run\n\n#_1E997F: INC.w $0D80,X\n\n#_1E9982: LDA.b #$F8\n#_1E9984: STA.w $0D40,X\n\n#_1E9987: LDA.b #$F0\n#_1E9989: STA.w $0D50,X\n\n.dont_run\n#_1E998C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveOstritch_Flee", + "code": "HauntedGroveOstritch_Flee:\n#_1E9991: JSR Sprite_Move_XYZ_Bank1E\n\n#_1E9994: DEC.w $0F80,X\n#_1E9997: DEC.w $0F80,X\n\n#_1E999A: LDA.w $0F70,X\n#_1E999D: BPL .no_hop\n\n#_1E999F: LDA.b #$20\n#_1E99A1: STA.w $0F80,X\n\n#_1E99A4: STZ.w $0F70,X\n#_1E99A7: STZ.w $0E80,X\n#_1E99AA: STZ.w $0D90,X\n\n.no_hop\n#_1E99AD: INC.w $0E80,X\n\n#_1E99B0: LDA.w $0E80,X\n#_1E99B3: AND.b #$07\n#_1E99B5: BNE .skip_anim_stepping\n\n#_1E99B7: LDA.w $0D90,X\n#_1E99BA: CMP.b #$03\n#_1E99BC: BEQ .skip_anim_stepping\n\n#_1E99BE: INC.w $0D90,X\n\n.skip_anim_stepping\n#_1E99C1: LDY.w $0D90,X\n\n#_1E99C4: LDA.w .anim_step,Y\n#_1E99C7: STA.w $0DC0,X\n\n#_1E99CA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_HauntedGroveOstritch", + "code": "SpriteDraw_HauntedGroveOstritch:\n#_1E9A4B: LDA.b #$00\n#_1E9A4D: XBA\n#_1E9A4E: LDA.w $0DC0,X\n\n#_1E9A51: REP #$20\n\n#_1E9A53: ASL A\n#_1E9A54: ASL A\n#_1E9A55: ASL A\n#_1E9A56: ASL A\n#_1E9A57: ASL A\n\n#_1E9A58: ADC.w #.oam_groups\n#_1E9A5B: STA.b $08\n\n#_1E9A5D: SEP #$20\n\n#_1E9A5F: LDA.b #$04\n#_1E9A61: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1E9A64: LDA.b #$12\n#_1E9A66: JSL SpriteDraw_Shadow_custom_long\n\n#_1E9A6A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveFlip", + "code": "HauntedGroveFlip:\n#_1E9A6B: db $40, $00\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9F_HauntedGroveRabbit", + "code": "Sprite_9F_HauntedGroveRabbit:\n#_1E9A6D: LDY.w $0DE0,X\n\n#_1E9A70: LDA.w $0F50,X\n#_1E9A73: AND.b #$BF\n#_1E9A75: ORA.w HauntedGroveFlip,Y\n#_1E9A78: STA.w $0F50,X\n\n#_1E9A7B: JSL SpriteDraw_SingleLarge_long\n\n#_1E9A7F: LDA.w $0D80,X\n#_1E9A82: JSL JumpTableLocal\n#_1E9A86: dw HauntedGroveRabbit_Idle\n#_1E9A88: dw HauntedGroveRabbit_Flee\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveRabbit_Idle", + "code": "HauntedGroveRabbit_Idle:\n#_1E9A8A: LDA.b #$03\n#_1E9A8C: STA.w $0DC0,X\n\n#_1E9A8F: LDA.w $0FDD\n#_1E9A92: BEQ .exit\n\n#_1E9A94: INC.w $0D80,X\n\n#_1E9A97: LDA.w $0DE0,X\n#_1E9A9A: EOR.b #$01\n#_1E9A9C: STA.w $0DE0,X\n\n#_1E9A9F: TAY\n\n#_1E9AA0: LDA.w Sixteen_X,Y\n#_1E9AA3: STA.w $0D50,X\n\n#_1E9AA6: LDA.b #$F8\n#_1E9AA8: STA.w $0D40,X\n\n.exit\n#_1E9AAB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveRabbit_Flee", + "code": "HauntedGroveRabbit_Flee:\n#_1E9AAF: JSR Sprite_Move_XYZ_Bank1E\n\n#_1E9AB2: DEC.w $0F80,X\n#_1E9AB5: DEC.w $0F80,X\n#_1E9AB8: DEC.w $0F80,X\n\n#_1E9ABB: LDA.w $0F70,X\n#_1E9ABE: BPL .hopping\n\n#_1E9AC0: LDA.b #$18\n#_1E9AC2: STA.w $0F80,X\n\n#_1E9AC5: STZ.w $0F70,X\n#_1E9AC8: STZ.w $0E80,X\n#_1E9ACB: STZ.w $0D90,X\n\n.hopping\n#_1E9ACE: INC.w $0E80,X\n\n#_1E9AD1: LDA.w $0E80,X\n#_1E9AD4: AND.b #$03\n#_1E9AD6: BNE .dont_step_anim\n\n#_1E9AD8: LDA.w $0D90,X\n#_1E9ADB: CMP.b #$02\n#_1E9ADD: BEQ .dont_step_anim\n\n#_1E9ADF: INC.w $0D90,X\n\n.dont_step_anim\n#_1E9AE2: LDY.w $0D90,X\n\n#_1E9AE5: LDA.w .anim_step,Y\n#_1E9AE8: STA.w $0DC0,X\n\n#_1E9AEB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_A0_HauntedGroveBird", + "code": "Sprite_A0_HauntedGroveBird:\n#_1E9AEC: LDA.w $0DC0,X\n#_1E9AEF: CMP.b #$03\n#_1E9AF1: BNE .eyes_emoji\n\n#_1E9AF3: JSR HauntedGroveBird_Blink\n\n.eyes_emoji\n#_1E9AF6: LDY.w $0DE0,X\n\n#_1E9AF9: LDA.w $0F50,X\n#_1E9AFC: AND.b #$BF\n#_1E9AFE: ORA.w HauntedGroveFlip,Y\n#_1E9B01: STA.w $0F50,X\n\n#_1E9B04: REP #$20\n\n#_1E9B06: LDA.b $90\n#_1E9B08: CLC\n#_1E9B09: ADC.w #$0004\n#_1E9B0C: STA.b $90\n\n#_1E9B0E: INC.b $92\n\n#_1E9B10: SEP #$20\n\n#_1E9B12: DEC.w $0E40,X\n\n#_1E9B15: JSL SpriteDraw_SingleLarge_long\n\n#_1E9B19: INC.w $0E40,X\n\n#_1E9B1C: JSR Sprite_Move_XYZ_Bank1E\n\n#_1E9B1F: LDA.w $0D80,X\n#_1E9B22: JSL JumpTableLocal\n#_1E9B26: dw HauntedGroveBird_Idle\n#_1E9B28: dw HauntedGroveBird_Ascending\n#_1E9B2A: dw HauntedGroveBird_Descending\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveBird_Idle", + "code": "HauntedGroveBird_Idle:\n#_1E9B2C: LDY.b #$00\n\n#_1E9B2E: LDA.b $1A\n#_1E9B30: AND.b #$18\n#_1E9B32: BNE .keep_anim_step\n\n#_1E9B34: LDY.b #$03\n\n.keep_anim_step\n#_1E9B36: TYA\n#_1E9B37: STA.w $0DC0,X\n\n#_1E9B3A: LDA.w $0FDD\n#_1E9B3D: BEQ .exit\n\n#_1E9B3F: INC.w $0D80,X\n\n#_1E9B42: LDA.w $0DE0,X\n#_1E9B45: EOR.b #$01\n#_1E9B47: STA.w $0DE0,X\n\n#_1E9B4A: TAY\n\n#_1E9B4B: LDA.w Sixteen_X,Y\n#_1E9B4E: STA.w $0D50,X\n\n#_1E9B51: LDA.b #$20\n#_1E9B53: STA.w $0DF0,X\n\n#_1E9B56: LDA.b #$10\n#_1E9B58: STA.w $0F80,X\n\n#_1E9B5B: LDA.b #$F8\n#_1E9B5D: STA.w $0D40,X\n\n.exit\n#_1E9B60: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveBird_Ascending", + "code": "HauntedGroveBird_Ascending:\n#_1E9B61: LDA.w $0DF0,X\n#_1E9B64: BNE .dont_accel\n\n#_1E9B66: LDA.w $0F80,X\n#_1E9B69: CLC\n#_1E9B6A: ADC.b #$02\n#_1E9B6C: STA.w $0F80,X\n\n#_1E9B6F: CMP.b #$10\n#_1E9B71: BMI .dont_accel\n\n#_1E9B73: INC.w $0D80,X\n\n.dont_accel\n#_1E9B76: INC.w $0E80,X\n\n#_1E9B79: LDA.w $0E80,X\n#_1E9B7C: LSR A\n#_1E9B7D: AND.b #$01\n\n#_1E9B7F: INC A\n#_1E9B80: STA.w $0DC0,X\n\n#_1E9B83: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveBird_Descending", + "code": "HauntedGroveBird_Descending:\n#_1E9B84: LDA.b #$01\n#_1E9B86: STA.w $0DC0,X\n\n#_1E9B89: LDA.w $0F80,X\n#_1E9B8C: SEC\n#_1E9B8D: SBC.b #$01\n#_1E9B8F: STA.w $0F80,X\n\n#_1E9B92: CMP.b #$F1\n#_1E9B94: BPL .dont_decel\n\n#_1E9B96: DEC.w $0D80,X\n\n.dont_decel\n#_1E9B99: RTS", + "file": "bank_1E.asm" + }, + { + "name": "HauntedGroveBird_Blink", + "code": "HauntedGroveBird_Blink:\n#_1E9B9C: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1E9B9F: PHX\n\n#_1E9BA0: LDA.w $0DE0,X\n#_1E9BA3: TAX\n\n#_1E9BA4: LDA.b $00\n#_1E9BA6: CLC\n#_1E9BA7: ADC.w .offset_x,X\n#_1E9BAA: STA.b ($90),Y\n\n#_1E9BAC: LDA.b $02\n#_1E9BAE: INY\n#_1E9BAF: STA.b ($90),Y\n\n#_1E9BB1: LDA.b #$AE\n#_1E9BB3: INY\n#_1E9BB4: STA.b ($90),Y\n\n#_1E9BB6: LDA.b $05\n#_1E9BB8: ORA.w HauntedGroveFlip,X\n#_1E9BBB: INY\n#_1E9BBC: STA.b ($90),Y\n\n#_1E9BBE: PLX\n\n#_1E9BBF: LDY.b #$00\n#_1E9BC1: LDA.b #$00\n#_1E9BC3: JSL Sprite_CorrectOAMEntries_long\n\n#_1E9BC7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9C_Zoro", + "code": "Sprite_9C_Zoro:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9D_Babasu", + "code": "Sprite_9D_Babasu:\n#_1E9BC8: LDA.w $0E90,X\n#_1E9BCB: BNE Zoro\n\n#_1E9BCD: JMP.w Babasu\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Zoro", + "code": "Zoro:\n#_1E9BD0: LDA.w $0DB0,X\n#_1E9BD3: BNE .continue\n\n#_1E9BD5: INC.w $0DB0,X\n\n#_1E9BD8: JSR Sprite_IsBelowLink_Bank1E\n\n#_1E9BDB: CPY.b #$00\n#_1E9BDD: BEQ .continue\n\n#_1E9BDF: STZ.w $0DD0,X\n\n#_1E9BE2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Babasu", + "code": "Babasu:\n#_1E9C6B: JSL SpriteDraw_Babasu\n#_1E9C6F: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9C72: LDA.w $0D80,X\n#_1E9C75: JSL JumpTableLocal\n#_1E9C79: dw Babasu_Reset\n#_1E9C7B: dw Babasu_Hidden\n#_1E9C7D: dw Babasu_Telegraph\n#_1E9C7F: dw Babasu_Dart\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Babasu_Reset", + "code": "Babasu_Reset:\n#_1E9C81: INC.w $0D80,X\n\n#_1E9C84: LDA.b #$80\n#_1E9C86: STA.w $0DF0,X\n\n#_1E9C89: LDA.b #$FF\n#_1E9C8B: STA.w $0DC0,X\n\n#_1E9C8E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Babasu_Hidden", + "code": "Babasu_Hidden:\n#_1E9C8F: LDA.w $0DF0,X\n#_1E9C92: BNE .exit\n\n#_1E9C94: INC.w $0D80,X\n\n#_1E9C97: LDA.b #$37\n#_1E9C99: STA.w $0DF0,X\n\n.exit\n#_1E9C9C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Babasu_Telegraph", + "code": "Babasu_Telegraph:\n#_1E9CAD: LDA.w $0DF0,X\n#_1E9CB0: BNE .delay\n\n#_1E9CB2: PHA\n\n#_1E9CB3: INC.w $0D80,X\n\n#_1E9CB6: LDY.w $0DE0,X\n\n#_1E9CB9: LDA.w .speed_x,Y\n#_1E9CBC: STA.w $0D50,X\n\n#_1E9CBF: LDA.w .speed_y,Y\n#_1E9CC2: STA.w $0D40,X\n\n#_1E9CC5: LDA.b #$20\n#_1E9CC7: STA.w $0DF0,X\n\n#_1E9CCA: PLA\n\n; ---------------------------------------------------------\n\n.delay\n#_1E9CCB: CMP.b #$20\n#_1E9CCD: BCC .hide\n\n#_1E9CCF: SBC.b #$20\n#_1E9CD1: LSR A\n#_1E9CD2: LSR A\n#_1E9CD3: TAY\n\n#_1E9CD4: LDA.w .anim,Y\n#_1E9CD7: LDY.w $0DE0,X\n\n#_1E9CDA: CLC\n#_1E9CDB: ADC.w .anim_offset,Y\n#_1E9CDE: STA.w $0DC0,X\n\n#_1E9CE1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Babasu_Dart", + "code": "Babasu_Dart:\n#_1E9CEC: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1E9CEF: JSR Sprite_Move_XY_Bank1E\n\n#_1E9CF2: LDA.b $1A\n#_1E9CF4: LSR A\n#_1E9CF5: AND.b #$01\n\n#_1E9CF7: LDY.w $0DE0,X\n\n#_1E9CFA: CLC\n#_1E9CFB: ADC.w .anim_step,Y\n#_1E9CFE: STA.w $0DC0,X\n\n#_1E9D01: LDA.w $0DF0,X\n#_1E9D04: BNE .exit\n\n#_1E9D06: JSR Sprite_CheckTileCollision_Bank1E\n#_1E9D09: BEQ .exit\n\n#_1E9D0B: LDA.w $0DE0,X\n#_1E9D0E: EOR.b #$01\n#_1E9D10: STA.w $0DE0,X\n\n#_1E9D13: STZ.w $0D80,X\n\n.exit\n#_1E9D16: RTS", + "file": "bank_1E.asm" + }, + { + "name": "UNREACHABLE_1E9D17", + "code": "UNREACHABLE_1E9D17:\n#_1E9D17: db $03, $43, $C3, $83\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9B_Wizzrobe", + "code": "Sprite_9B_Wizzrobe:\n#_1E9D1B: LDA.w $0DB0,X\n#_1E9D1E: BEQ Wizzrobe\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "WizzrobeBeam", + "code": "WizzrobeBeam:\n#_1E9D20: JSL SpriteDraw_WizzrobeBeam\n#_1E9D24: JSR Sprite_CheckIfActive_Bank1E\n\n#_1E9D27: LDA.w $0F50,X\n#_1E9D2A: EOR.b #$06\n#_1E9D2C: STA.w $0F50,X\n\n#_1E9D2F: INC.w $0E80,X\n\n#_1E9D32: LDA.w $0D80,X\n#_1E9D35: BNE .harmless\n\n#_1E9D37: JSR Sprite_CheckDamageToLink_Bank1E\n\n.harmless\n#_1E9D3A: JSR Sprite_Move_XY_Bank1E\n#_1E9D3D: JSR Sprite_CheckTileCollision_Bank1E\n#_1E9D40: BEQ .exit\n\n#_1E9D42: STZ.w $0DD0,X\n\n.exit\n#_1E9D45: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe", + "code": "Wizzrobe:\n#_1E9D46: LDA.w $0D80,X\n#_1E9D49: BEQ .no_draw\n\n#_1E9D4B: AND.b #$01\n#_1E9D4D: BEQ .do_draw\n\n#_1E9D4F: LDA.w $0DF0,X\n#_1E9D52: AND.b #$01\n#_1E9D54: BEQ .do_draw\n\n.no_draw\n#_1E9D56: JSL Sprite_PrepOAMCoord_long\n#_1E9D5A: BRA .continue\n\n.do_draw\n#_1E9D5C: JSL SpriteDraw_Wizzrobe\n\n.continue\n#_1E9D60: JSR Sprite_CheckIfActive_Bank1E\n#_1E9D63: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1E9D66: LDA.b #$01\n#_1E9D68: STA.w $0BA0,X\n\n#_1E9D6B: LDA.w $0D80,X\n#_1E9D6E: JSL JumpTableLocal\n#_1E9D72: dw Wizzrobe_Invisible\n#_1E9D74: dw Wizzrobe_Appear\n#_1E9D76: dw Wizzrobe_Attack\n#_1E9D78: dw Wizzrobe_Disappear\n\n; =========================================================\n\npool Wizzrobe_Invisible\n\n.anim_step\n#_1E9D7A: db $04, $02, $00, $06\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe_Invisible", + "code": "Wizzrobe_Invisible:\n#_1E9D7E: LDA.w $0DF0,X\n#_1E9D81: BNE .exit\n\n#_1E9D83: LDA.b #$01\n#_1E9D85: STA.w $0D50,X\n#_1E9D88: STA.w $0D40,X\n\n#_1E9D8B: JSR Sprite_CheckTileCollision_Bank1E\n#_1E9D8E: BNE .die\n\n#_1E9D90: INC.w $0D80,X\n\n#_1E9D93: LDA.b #$3F\n#_1E9D95: STA.w $0DF0,X\n\n#_1E9D98: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1E9D9B: TYA\n#_1E9D9C: STA.w $0DE0,X\n\n#_1E9D9F: LDA.w .anim_step,Y\n#_1E9DA2: STA.w $0DC0,X\n\n#_1E9DA5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe_Appear", + "code": "Wizzrobe_Appear:\n#_1E9DAA: LDA.w $0DF0,X\n#_1E9DAD: BNE .exit\n\n#_1E9DAF: INC.w $0D80,X\n\n#_1E9DB2: LDA.b #$3F\n#_1E9DB4: STA.w $0DF0,X\n\n.exit\n#_1E9DB7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe_Attack", + "code": "Wizzrobe_Attack:\n#_1E9DC4: STZ.w $0BA0,X\n\n#_1E9DC7: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1E9DCA: LDA.w $0DF0,X\n#_1E9DCD: BNE .wait\n\n#_1E9DCF: INC.w $0D80,X\n\n#_1E9DD2: LDA.b #$3F\n#_1E9DD4: STA.w $0DF0,X\n\n#_1E9DD7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe_Disappear", + "code": "Wizzrobe_Disappear:\n#_1E9DF3: LDA.w $0DF0,X\n#_1E9DF6: BNE .exit\n\n#_1E9DF8: LDA.w $0DA0,X\n#_1E9DFB: BEQ .dont_die\n\n#_1E9DFD: STZ.w $0DD0,X\n\n.dont_die\n#_1E9E00: STZ.w $0D80,X\n\n#_1E9E03: JSL GetRandomNumber\n#_1E9E07: AND.b #$1F\n#_1E9E09: ADC.b #$20\n#_1E9E0B: STA.w $0DF0,X\n\n.exit\n#_1E9E0E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wizzrobe_FireBeam", + "code": "Wizzrobe_FireBeam:\n#_1E9E15: LDA.b #$9B ; SPRITE 9B\n#_1E9E17: JSL Sprite_SpawnDynamically\n#_1E9E1B: BMI .no_space\n\n#_1E9E1D: LDA.b #$36 ; SFX3.36\n#_1E9E1F: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1E9E23: LDA.b #$01\n#_1E9E25: STA.w $0DB0,Y\n#_1E9E28: STA.w $0BA0,Y\n\n#_1E9E2B: LDA.b $00\n#_1E9E2D: CLC\n#_1E9E2E: ADC.b #$04\n#_1E9E30: STA.w $0D10,Y\n\n#_1E9E33: LDA.b $01\n#_1E9E35: ADC.b #$00\n#_1E9E37: STA.w $0D30,Y\n\n#_1E9E3A: LDA.b $02\n#_1E9E3C: CLC\n#_1E9E3D: ADC.b #$00\n#_1E9E3F: STA.w $0D00,Y\n\n#_1E9E42: LDA.b $03\n#_1E9E44: ADC.b #$00\n#_1E9E46: STA.w $0D20,Y\n\n#_1E9E49: PHX\n\n#_1E9E4A: LDA.w $0DE0,X\n#_1E9E4D: TAX\n\n#_1E9E4E: LDA.w .speed_x,X\n#_1E9E51: STA.w $0D50,Y\n\n#_1E9E54: LDA.w .speed_y,X\n#_1E9E57: STA.w $0D40,Y\n\n#_1E9E5A: LDA.b #$48\n#_1E9E5C: STA.w $0CAA,Y\n\n#_1E9E5F: LDA.b #$02\n#_1E9E61: STA.w $0F50,Y\n\n#_1E9E64: LDA.l $7EF35A\n#_1E9E68: TAX\n\n#_1E9E69: LDA.b #$00\n#_1E9E6B: CPX.b #$03\n#_1E9E6D: BNE .not_blockable\n\n#_1E9E6F: LDA.b #$20\n\n.not_blockable\n#_1E9E71: STA.w $0BE0,Y\n\n#_1E9E74: PLX\n\n#_1E9E75: LDA.b #$14\n#_1E9E77: STA.w $0F60,Y\n\n.no_space\n#_1E9E7A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_9A_Kyameron", + "code": "Sprite_9A_Kyameron:\n#_1E9E7B: LDA.w $0D80,X\n#_1E9E7E: BNE .visible\n\n#_1E9E80: JSL Sprite_PrepOAMCoord_long\n#_1E9E84: BRA .not_visible\n\n.visible\n#_1E9E86: JSR SpriteDraw_Kyameron\n\n.not_visible\n#_1E9E89: JSR Sprite_CheckIfActive_Bank1E\n#_1E9E8C: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1E9E8F: LDA.b #$01\n#_1E9E91: STA.w $0BA0,X\n\n#_1E9E94: LDA.w $0D80,X\n#_1E9E97: JSL JumpTableLocal\n#_1E9E9B: dw Kyameron_Reset\n#_1E9E9D: dw Kyameron_Puddle\n#_1E9E9F: dw Kyameron_BuildUp\n#_1E9EA1: dw Kyameron_Moving\n#_1E9EA3: dw Kyameron_Dissipate\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kyameron_Reset", + "code": "Kyameron_Reset:\n#_1E9EA5: LDA.w $0DF0,X\n#_1E9EA8: BNE .exit\n\n#_1E9EAA: INC.w $0D80,X\n\n#_1E9EAD: JSL GetRandomNumber\n#_1E9EB1: AND.b #$3F\n#_1E9EB3: ADC.b #$60\n#_1E9EB5: STA.w $0DF0,X\n\n#_1E9EB8: LDA.w $0D90,X\n#_1E9EBB: STA.w $0D10,X\n\n#_1E9EBE: LDA.w $0DA0,X\n#_1E9EC1: STA.w $0D30,X\n\n#_1E9EC4: LDA.w $0DB0,X\n#_1E9EC7: STA.w $0D00,X\n\n#_1E9ECA: LDA.w $0EB0,X\n#_1E9ECD: STA.w $0D20,X\n\n#_1E9ED0: LDA.b #$05\n#_1E9ED2: STA.w $0E80,X\n\n#_1E9ED5: LDA.b #$08\n#_1E9ED7: STA.w $0DC0,X\n\n.exit\n#_1E9EDA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kyameron_Puddle", + "code": "Kyameron_Puddle:\n#_1E9EDB: LDA.w $0DF0,X\n#_1E9EDE: BNE .delay\n\n#_1E9EE0: LDA.b #$1F\n#_1E9EE2: STA.w $0DF0,X\n\n#_1E9EE5: INC.w $0D80,X\n\n.delay\n#_1E9EE8: DEC.w $0E80,X\n#_1E9EEB: BPL .exit\n\n#_1E9EED: LDA.b #$05\n#_1E9EEF: STA.w $0E80,X\n\n#_1E9EF2: INC.w $0DC0,X\n\n#_1E9EF5: LDA.w $0DC0,X\n#_1E9EF8: AND.b #$03\n#_1E9EFA: CLC\n#_1E9EFB: ADC.b #$08\n#_1E9EFD: STA.w $0DC0,X\n\n.exit\n#_1E9F00: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kyameron_BuildUp", + "code": "Kyameron_BuildUp:\n#_1E9F11: LDA.w $0DF0,X\n#_1E9F14: BNE .delay\n\n#_1E9F16: INC.w $0D80,X\n\n#_1E9F19: JSR Sprite_IsBelowLink_Bank1E\n#_1E9F1C: TYA\n#_1E9F1D: ASL A\n#_1E9F1E: STA.b $00\n\n#_1E9F20: JSR Sprite_IsRightOfLink_Bank1E\n#_1E9F23: TYA\n#_1E9F24: ORA.b $00\n#_1E9F26: TAY\n\n#_1E9F27: LDA.w .speed_x,Y\n#_1E9F2A: STA.w $0D50,X\n\n#_1E9F2D: LDA.w .speed_y,Y\n#_1E9F30: STA.w $0D40,X\n\n#_1E9F33: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kyameron_Moving", + "code": "Kyameron_Moving:\n#_1E9F59: STZ.w $0BA0,X\n\n#_1E9F5C: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1E9F5F: BCS .damage\n\n#_1E9F61: JSR Sprite_Move_XY_Bank1E\n#_1E9F64: JSR Sprite_CheckTileCollision_Bank1E\n#_1E9F67: AND.b #$03\n#_1E9F69: BEQ .no_horizontal_collision\n\n#_1E9F6B: LDA.w $0D50,X\n#_1E9F6E: EOR.b #$FF\n#_1E9F70: INC A\n#_1E9F71: STA.w $0D50,X\n\n#_1E9F74: INC.w $0EC0,X\n#_1E9F77: BRA .no_horizontal_collision\n\n.no_horizontal_collision\n#_1E9F79: LDA.w $0E70,X\n#_1E9F7C: AND.b #$0C\n#_1E9F7E: BEQ .no_vertital_collision\n\n#_1E9F80: LDA.w $0D40,X\n#_1E9F83: EOR.b #$FF\n#_1E9F85: INC A\n#_1E9F86: STA.w $0D40,X\n\n#_1E9F89: INC.w $0EC0,X\n\n.no_vertital_collision\n#_1E9F8C: LDA.w $0EC0,X\n#_1E9F8F: CMP.b #$03\n#_1E9F91: BCC .can_bounce_more\n\n.damage\n#_1E9F93: LDA.b #$04\n#_1E9F95: STA.w $0D80,X\n\n#_1E9F98: LDA.b #$0F\n#_1E9F9A: STA.w $0DF0,X\n\n#_1E9F9D: LDA.b #$28 ; SFX2.28\n#_1E9F9F: JSL SpriteSFX_QueueSFX2WithPan\n\n.can_bounce_more\n#_1E9FA3: INC.w $0E80,X\n\n#_1E9FA6: LDA.w $0E80,X\n#_1E9FA9: LSR A\n#_1E9FAA: LSR A\n#_1E9FAB: LSR A\n\n#_1E9FAC: AND.b #$03\n#_1E9FAE: TAY\n\n#_1E9FAF: LDA.w .anim_step,Y\n#_1E9FB2: STA.w $0DC0,X\n\n#_1E9FB5: TXA\n#_1E9FB6: EOR.b $1A\n#_1E9FB8: AND.b #$07\n#_1E9FBA: BNE .exit\n\n#_1E9FBC: JSL GetRandomNumber\n\n#_1E9FC0: REP #$20\n\n#_1E9FC2: AND.w #$000F\n#_1E9FC5: SEC\n#_1E9FC6: SBC.w #$0004\n#_1E9FC9: STA.b $00\n\n#_1E9FCB: SEP #$20\n\n#_1E9FCD: JSL GetRandomNumber\n\n#_1E9FD1: REP #$20\n\n#_1E9FD3: AND.w #$000F\n#_1E9FD6: SEC\n#_1E9FD7: SBC.w #$0004\n#_1E9FDA: STA.b $02\n\n#_1E9FDC: SEP #$20\n\n#_1E9FDE: JSL GarnishSpawn_Sparkle\n\n.exit\n#_1E9FE2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kyameron_Dissipate", + "code": "Kyameron_Dissipate:\n#_1E9FE3: LDA.w $0DF0,X\n#_1E9FE6: BNE .still_being_dramatic_about_the_ordeal\n\n#_1E9FE8: STZ.w $0EC0,X\n#_1E9FEB: STZ.w $0D80,X\n#_1E9FEE: STZ.w $0F70,X\n\n#_1E9FF1: LDA.b #$40\n#_1E9FF3: STA.w $0DF0,X\n\n#_1E9FF6: RTS", + "file": "bank_1E.asm" + }, + { + "name": "GarnishSpawn_Sparkle_limited", + "code": "GarnishSpawn_Sparkle_limited:\n#_1EA001: PHX\n#_1EA002: TXY\n\n#_1EA003: LDX.b #$0E\n#_1EA005: BRA .check_slot\n\n; =========================================================\n\n#GarnishSpawn_Sparkle:\n#_1EA007: PHX\n#_1EA008: TXY\n\n#_1EA009: LDX.b #$1D\n\n.check_slot\n#_1EA00B: LDA.l $7FF800,X\n#_1EA00F: BEQ .free_slot\n\n#_1EA011: DEX\n#_1EA012: BPL .check_slot\n\n#_1EA014: STX.b $0F\n\n#_1EA016: PLX\n\n#_1EA017: RTL", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Kyameron", + "code": "SpriteDraw_Kyameron:\n#_1EA158: LDA.w $0DC0,X\n#_1EA15B: CMP.b #$0C\n#_1EA15D: BCS .dispersing\n\n#_1EA15F: LDY.w $0DC0,X\n\n#_1EA162: LDA.w $0F50,X\n#_1EA165: PHA\n\n#_1EA166: AND.b #$3F\n#_1EA168: ORA.w .flip,Y\n#_1EA16B: STA.w $0F50,X\n\n#_1EA16E: JSL SpriteDraw_SingleLarge_long\n\n#_1EA172: PLA\n#_1EA173: STA.w $0F50,X\n\n#_1EA176: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_99_Pengator", + "code": "Sprite_99_Pengator:\n#_1EA196: LDY.w $0DE0,X\n\n#_1EA199: LDA.w $0D90,X\n#_1EA19C: CLC\n#_1EA19D: ADC.w .anim_step,Y\n#_1EA1A0: STA.w $0DC0,X\n\n#_1EA1A3: JSR SpriteDraw_Pengator\n\n#_1EA1A6: LDA.w $0EA0,X\n#_1EA1A9: BNE .recoiling\n\n#_1EA1AB: LDA.w $0E70,X\n#_1EA1AE: AND.b #$0F\n#_1EA1B0: BEQ .no_tile_collision\n\n.recoiling\n#_1EA1B2: STZ.w $0D80,X\n#_1EA1B5: STZ.w $0D50,X\n#_1EA1B8: STZ.w $0D40,X\n\n.no_tile_collision\n#_1EA1BB: JSR Sprite_CheckIfActive_Bank1E\n#_1EA1BE: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EA1C1: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EA1C4: JSR Sprite_Move_XYZ_Bank1E\n\n#_1EA1C7: DEC.w $0F80,X\n#_1EA1CA: DEC.w $0F80,X\n\n#_1EA1CD: LDA.w $0F70,X\n#_1EA1D0: BPL .airborne\n\n#_1EA1D2: STZ.w $0F80,X\n#_1EA1D5: STZ.w $0F70,X\n\n.airborne\n#_1EA1D8: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EA1DB: LDA.w $0D80,X\n#_1EA1DE: JSL JumpTableLocal\n#_1EA1E2: dw Pengator_FaceLink\n#_1EA1E4: dw Pengator_Accelerate\n#_1EA1E6: dw Pengator_Hop\n#_1EA1E8: dw Pengator_Slide\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pengator_FaceLink", + "code": "Pengator_FaceLink:\n#_1EA1EA: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EA1ED: TYA\n#_1EA1EE: STA.w $0DE0,X\n\n#_1EA1F1: INC.w $0D80,X\n\n#_1EA1F4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pengator_Accelerate", + "code": "Pengator_Accelerate:\n#_1EA1FB: TXA\n#_1EA1FC: EOR.b $1A\n#_1EA1FE: AND.b #$03\n#_1EA200: BNE .continue\n\n#_1EA202: STZ.b $00\n\n#_1EA204: LDY.w $0DE0,X\n\n#_1EA207: LDA.w $0D50,X\n#_1EA20A: CMP.w Sixteen_X,Y\n#_1EA20D: BEQ .at_max_x\n\n#_1EA20F: CLC\n#_1EA210: ADC.w .speed_x,Y\n#_1EA213: STA.w $0D50,X\n\n#_1EA216: INC.b $00\n\n.at_max_x\n#_1EA218: LDA.w $0D40,X\n#_1EA21B: CMP.w Sixteen_Y,Y\n#_1EA21E: BEQ .at_max_y\n\n#_1EA220: CLC\n#_1EA221: ADC.w .speed_y,Y\n#_1EA224: STA.w $0D40,X\n\n#_1EA227: INC.b $00\n\n.at_max_y\n#_1EA229: LDA.b $00\n#_1EA22B: BNE .continue\n\n#_1EA22D: LDA.b #$0F\n#_1EA22F: STA.w $0DF0,X\n\n#_1EA232: INC.w $0D80,X\n\n.continue\n#_1EA235: LDA.b $1A\n#_1EA237: AND.b #$04\n#_1EA239: LSR A\n#_1EA23A: LSR A\n#_1EA23B: TAY ; useless\n\n#_1EA23C: STA.w $0D90,X\n\n#_1EA23F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pengator_Hop", + "code": "Pengator_Hop:\n#_1EA244: LDA.w $0DF0,X\n#_1EA247: BNE .delay\n\n#_1EA249: INC.w $0D80,X\n\n.delay\n#_1EA24C: CMP.b #$05\n#_1EA24E: BNE .no_hop\n\n#_1EA250: PHA\n\n#_1EA251: LDA.b #$18\n#_1EA253: STA.w $0F80,X\n\n#_1EA256: PLA\n\n.no_hop\n#_1EA257: LSR A\n#_1EA258: LSR A\n#_1EA259: TAY\n\n#_1EA25A: LDA.w .anim_step,Y\n#_1EA25D: STA.w $0D90,X\n\n#_1EA260: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pengator_Slide", + "code": "Pengator_Slide:\n#_1EA271: TXA\n#_1EA272: EOR.b $1A\n#_1EA274: AND.b #$07\n#_1EA276: ORA.w $0F70,X\n#_1EA279: BNE .exit\n\n#_1EA27B: LDA.w $0DE0,X\n#_1EA27E: STA.b $06\n\n#_1EA280: JSL GetRandomNumber\n#_1EA284: AND.b #$03\n#_1EA286: TAY\n\n#_1EA287: LDA.b $06\n#_1EA289: CMP.b #$02\n#_1EA28B: BCC .facing_vertical\n\n#_1EA28D: INY\n#_1EA28E: INY\n#_1EA28F: INY\n#_1EA290: INY\n\n.facing_vertical\n#_1EA291: LDA.w .sparkle_offset_y,Y\n#_1EA294: STA.b $00\n#_1EA296: STZ.b $01\n\n#_1EA298: JSL GetRandomNumber\n\n#_1EA29C: AND.b #$03\n#_1EA29E: TAY\n\n#_1EA29F: LDA.b $06\n#_1EA2A1: CMP.b #$02\n#_1EA2A3: BCC .facing_vertical_also\n\n#_1EA2A5: INY\n#_1EA2A6: INY\n#_1EA2A7: INY\n#_1EA2A8: INY\n\n.facing_vertical_also\n#_1EA2A9: LDA.w .sparkle_offset_x,Y\n#_1EA2AC: STA.b $02\n#_1EA2AE: STZ.b $03\n\n#_1EA2B0: JSL GarnishSpawn_Sparkle_limited\n\n.exit\n#_1EA2B4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Pengator", + "code": "SpriteDraw_Pengator:\n#_1EA415: LDA.b #$00\n#_1EA417: XBA\n#_1EA418: LDA.w $0DC0,X\n\n#_1EA41B: REP #$20\n\n#_1EA41D: ASL A\n#_1EA41E: ASL A\n#_1EA41F: ASL A\n#_1EA420: ASL A\n#_1EA421: ADC.w #.oam_group_set_1\n#_1EA424: STA.b $08\n\n#_1EA426: SEP #$20\n\n#_1EA428: LDA.b #$02\n#_1EA42A: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EA42D: LDY.b #$00\n\n#_1EA42F: LDA.b #$00\n#_1EA431: XBA\n\n#_1EA432: LDA.w $0DC0,X\n#_1EA435: CMP.b #$0E\n#_1EA437: BEQ .draw_more\n\n#_1EA439: INY\n\n#_1EA43A: CMP.b #$13\n#_1EA43C: BNE .draw_not_more\n\n; ---------------------------------------------------------\n\n.draw_more\n#_1EA43E: TYA\n\n#_1EA43F: REP #$20\n\n#_1EA441: ASL A\n#_1EA442: ASL A\n#_1EA443: ASL A\n#_1EA444: ASL A\n#_1EA445: ADC.w #.oam_group_set_2\n#_1EA448: STA.b $08\n\n#_1EA44A: LDA.b $90\n#_1EA44C: CLC\n#_1EA44D: ADC.w #$0008\n#_1EA450: STA.b $90\n\n#_1EA452: INC.b $92\n#_1EA454: INC.b $92\n\n#_1EA456: SEP #$20\n\n#_1EA458: LDA.b #$02\n#_1EA45A: JSR SpriteDraw_Tabulated_Bank1E\n\n; ---------------------------------------------------------\n\n.draw_not_more\n#_1EA45D: JSL SpriteDraw_Shadow_long\n\n#_1EA461: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LaserBeam", + "code": "LaserBeam:\n#_1EA462: JSL SpriteDraw_SingleSmall_long\n#_1EA466: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EA469: JSR LaserBeam_BuildUpGarnish\n#_1EA46C: JSR Sprite_Move_XY_Bank1E\n#_1EA46F: JSL Sprite_CheckDamageToLink_same_layer_long\n\n#_1EA473: LDA.w $0DF0,X\n#_1EA476: BNE .exit\n\n#_1EA478: JSR Sprite_CheckTileCollision_Bank1E\n#_1EA47B: BEQ .exit\n\n#_1EA47D: STZ.w $0DD0,X\n\n#_1EA480: LDA.b #$26 ; SFX3.26\n#_1EA482: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EA486: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LaserBeam_BuildUpGarnish", + "code": "LaserBeam_BuildUpGarnish:\n#_1EA488: PHX\n#_1EA489: TXY\n\n#_1EA48A: LDX.b #$1D\n\n.next_slot\n#_1EA48C: LDA.l $7FF800,X\n#_1EA490: BEQ .free_slot\n\n#_1EA492: DEX\n#_1EA493: BPL .next_slot\n\n#_1EA495: DEC.w $0FF8\n#_1EA498: BPL .use_indexer\n\n#_1EA49A: LDA.b #$1D\n#_1EA49C: STA.w $0FF8\n\n.use_indexer\n#_1EA49F: LDX.w $0FF8\n\n; ---------------------------------------------------------\n\n.free_slot\n#_1EA4A2: LDA.b #$04 ; GARNISH 04\n#_1EA4A4: STA.l $7FF800,X\n#_1EA4A8: STA.w $0FB4\n\n#_1EA4AB: LDA.w $0D10,Y\n#_1EA4AE: STA.l $7FF83C,X\n\n#_1EA4B2: LDA.w $0D30,Y\n#_1EA4B5: STA.l $7FF878,X\n\n#_1EA4B9: LDA.w $0D00,Y\n#_1EA4BC: CLC\n#_1EA4BD: ADC.b #$10\n#_1EA4BF: STA.l $7FF81E,X\n\n#_1EA4C3: LDA.w $0D20,Y\n#_1EA4C6: ADC.b #$00\n#_1EA4C8: STA.l $7FF85A,X\n\n#_1EA4CC: LDA.b #$10\n#_1EA4CE: STA.l $7FF90E,X\n\n#_1EA4D2: LDA.w $0DC0,Y\n#_1EA4D5: STA.l $7FF9FE,X\n\n#_1EA4D9: TYA\n#_1EA4DA: STA.l $7FF92C,X\n\n#_1EA4DE: LDA.w $0F20,Y\n#_1EA4E1: STA.l $7FF968,X\n\n#_1EA4E5: PLX\n\n#_1EA4E6: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpritePrep_LaserEye", + "code": "SpritePrep_LaserEye:\n#_1EA4E7: PHB\n#_1EA4E8: PHK\n#_1EA4E9: PLB\n\n#_1EA4EA: JSR .main\n\n#_1EA4ED: PLB\n\n#_1EA4EE: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_95_LaserEyeLeft", + "code": "Sprite_95_LaserEyeLeft:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_96_LaserEyeRight", + "code": "Sprite_96_LaserEyeRight:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_97_LaserEyeTop", + "code": "Sprite_97_LaserEyeTop:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_98_LaserEyeBottom", + "code": "Sprite_98_LaserEyeBottom:\n#_1EA541: LDA.w $0D90,X\n#_1EA544: BEQ LaserEye\n\n#_1EA546: JMP.w LaserBeam\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "LaserEye", + "code": "LaserEye:\n#_1EA549: JSR SpriteDraw_LaserEye\n#_1EA54C: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EA54F: LDA.w $0D80,X\n#_1EA552: JSL JumpTableLocal\n#_1EA556: dw LaserEye_Reconnaissance\n#_1EA558: dw LaserEye_TangoLocked\n\n; =========================================================\n\npool LaserEye_Reconnaissance\n\n.direction\n#_1EA55A: db $02, $03, $00, $01\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "LaserEye_Reconnaissance", + "code": "LaserEye_Reconnaissance:\n#_1EA55E: REP #$20\n\n#_1EA560: LDA.b $20\n#_1EA562: SEC\n#_1EA563: SBC.w $0FDA\n#_1EA566: STA.b $0C\n\n#_1EA568: LDA.b $22\n#_1EA56A: SEC\n#_1EA56B: SBC.w $0FD8\n#_1EA56E: STA.b $0E\n\n#_1EA570: SEP #$20\n\n#_1EA572: LDA.b $2F\n#_1EA574: LSR A\n\n; ---------------------------------------------------------\n\n#_1EA575: LDY.w $0EB0,X\n#_1EA578: CPY.b #$01\n\n#_1EA57A: TAY\n\n#_1EA57B: LDA.w $0DE0,X\n#_1EA57E: BCS .ignore_direction\n\n#_1EA580: CMP.w .direction,Y\n#_1EA583: BNE .dont_fire\n\n.ignore_direction\n#_1EA585: CMP.b #$02\n\n#_1EA587: REP #$20\n#_1EA589: BCS .vertical\n\n#_1EA58B: LDA.b $0C\n#_1EA58D: BRA .continue\n\n.vertical\n#_1EA58F: LDA.b $0E\n\n; ---------------------------------------------------------\n\n.continue\n#_1EA591: CLC\n#_1EA592: ADC.w #$0010\n#_1EA595: CMP.w #$0020\n\n#_1EA598: SEP #$20\n#_1EA59A: BCS .dont_fire\n\n#_1EA59C: LDA.b #$20\n\n#_1EA59E: LDY.w $0EB0,X\n#_1EA5A1: BEQ .pointless_check\n\n#_1EA5A3: LDA.b #$20\n\n.pointless_check\n#_1EA5A5: STA.w $0DF0,X\n\n#_1EA5A8: INC.w $0D80,X\n\n#_1EA5AB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LaserEye_TangoLocked", + "code": "LaserEye_TangoLocked:\n#_1EA5C2: LDA.b #$01\n#_1EA5C4: STA.w $0DC0,X\n\n#_1EA5C7: LDA.w $0DF0,X\n#_1EA5CA: BNE .cover_me_im_reloading\n\n#_1EA5CC: STZ.w $0D80,X\n\n#_1EA5CF: JSR LaserEye_FireBeam\n\n#_1EA5D2: LDA.b #$0C\n#_1EA5D4: STA.w $0F10,X\n\n.cover_me_im_reloading\n#_1EA5D7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LaserEye_FireBeam", + "code": "LaserEye_FireBeam:\n#_1EA5D8: LDA.b #$95 ; SPRITE 95\n#_1EA5DA: JSL Sprite_SpawnDynamically\n#_1EA5DE: BMI .no_space\n\n#_1EA5E0: PHX\n\n#_1EA5E1: LDA.w $0DE0,X\n#_1EA5E4: TAX\n\n#_1EA5E5: AND.b #$02\n#_1EA5E7: LSR A\n#_1EA5E8: STA.w $0DC0,Y\n\n#_1EA5EB: LDA.b $00\n#_1EA5ED: CLC\n#_1EA5EE: ADC.w .offset_x_low,X\n#_1EA5F1: STA.w $0D10,Y\n\n#_1EA5F4: LDA.b $01\n#_1EA5F6: ADC.w .offset_x_high,X\n#_1EA5F9: STA.w $0D30,Y\n\n#_1EA5FC: LDA.b $02\n#_1EA5FE: CLC\n#_1EA5FF: ADC.w .offset_y_low,X\n#_1EA602: STA.w $0D00,Y\n\n#_1EA605: LDA.b $03\n#_1EA607: ADC.w .offset_y_high,X\n#_1EA60A: STA.w $0D20,Y\n\n#_1EA60D: LDA.w .speed_x,X\n#_1EA610: STA.w $0D50,Y\n\n#_1EA613: LDA.w .speed_y,X\n#_1EA616: STA.w $0D40,Y\n\n#_1EA619: LDA.b #$20\n#_1EA61B: STA.w $0E40,Y\n#_1EA61E: STA.w $0D90,Y\n\n#_1EA621: LDA.b #$05\n#_1EA623: STA.w $0F50,Y\n\n#_1EA626: LDA.b #$48\n#_1EA628: STA.w $0CAA,Y\n#_1EA62B: STA.w $0BA0,Y\n\n#_1EA62E: LDA.b #$05\n#_1EA630: STA.w $0DF0,Y\n\n#_1EA633: LDA.l $7EF35A\n#_1EA637: CMP.b #$03\n#_1EA639: BNE .full_photon_jacket\n\n#_1EA63B: LDA.b #$20\n#_1EA63D: STA.w $0BE0,Y\n\n.full_photon_jacket\n#_1EA640: PLX\n\n#_1EA641: LDA.b #$19 ; SFX3.19\n#_1EA643: JSL SpriteSFX_QueueSFX3WithPan\n\n.no_space\n#_1EA647: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_LaserEye", + "code": "SpriteDraw_LaserEye:\n#_1EA708: LDA.w $0EB0,X\n#_1EA70B: BEQ .continue\n\n#_1EA70D: LDA.b #$01\n#_1EA70F: STA.w $0DC0,X\n\n#_1EA712: LDA.w $0F10,X\n#_1EA715: BEQ .continue\n\n#_1EA717: STZ.w $0DC0,X\n\n.continue\n#_1EA71A: LDA.b #$30\n#_1EA71C: STA.w $0B89,X\n\n#_1EA71F: LDA.b #$00\n#_1EA721: XBA\n#_1EA722: LDA.w $0DE0,X\n\n#_1EA725: ASL A\n#_1EA726: ADC.w $0DC0,X\n\n#_1EA729: REP #$20\n\n#_1EA72B: ASL A\n#_1EA72C: ASL A\n#_1EA72D: ASL A\n\n#_1EA72E: STA.b $00\n\n#_1EA730: ASL A\n#_1EA731: ADC.b $00\n#_1EA733: ADC.w #.oam_groups\n\n#_1EA736: STA.b $08\n\n#_1EA738: SEP #$20\n\n#_1EA73A: LDA.b #$03\n#_1EA73C: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_94_Tile_bounce", + "code": "Sprite_94_Tile_bounce:\n#_1EA73F: JMP.w Sprite_94_Tile\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_94_Pirogusu", + "code": "Sprite_94_Pirogusu:\n#_1EA742: LDA.w $0E90,X\n#_1EA745: BNE Sprite_94_Tile_bounce\n\n#_1EA747: LDA.w $0B89,X\n#_1EA74A: ORA.b #$30\n#_1EA74C: STA.w $0B89,X\n\n#_1EA74F: JSR SpriteDraw_Pirogusu\n#_1EA752: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EA755: LDA.w $0D80,X\n#_1EA758: JSL JumpTableLocal\n#_1EA75C: dw Pirogusu_InHole\n#_1EA75E: dw Pirogusu_Crowning\n#_1EA760: dw Pirogusu_Plop\n#_1EA762: dw Pirogusu_Active\n\n; =========================================================\n\npool Pirogusu_InHole\n\n.anim_step\n#_1EA764: db $02, $03, $00, $01\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_InHole", + "code": "Pirogusu_InHole:\n#_1EA768: LDA.w $0DF0,X\n#_1EA76B: BNE .wait_for_timer\n\n#_1EA76D: INC.w $0D80,X\n#_1EA770: LDA.b #$1F\n#_1EA772: STA.w $0DF0,X\n\n.wait_for_timer\n#_1EA775: STA.w $0BA0,X\n\n#_1EA778: LDY.w $0DE0,X\n\n#_1EA77B: LDA.w .anim_step,Y\n#_1EA77E: STA.w $0D90,X\n\n#_1EA781: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_Crowning", + "code": "Pirogusu_Crowning:\n#_1EA790: LDA.w $0DF0,X\n#_1EA793: BNE .push_push\n\n#_1EA795: INC.w $0D80,X\n\n#_1EA798: LDA.b #$20\n#_1EA79A: STA.w $0DF0,X\n\n#_1EA79D: STZ.w $0BA0,X\n\n#_1EA7A0: JSR Sprite_ZeroVelocity_XY_Bank1E\n\n#_1EA7A3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_Plop", + "code": "Pirogusu_Plop:\n#_1EA7DC: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EA7DF: JSR Sprite_Move_XY_Bank1E\n\n#_1EA7E2: LDY.w $0DE0,X\n\n#_1EA7E5: LDA.w $0D50,X\n#_1EA7E8: CLC\n#_1EA7E9: ADC.w .acceleration_x,Y\n#_1EA7EC: STA.w $0D50,X\n\n#_1EA7EF: LDA.w $0D40,X\n#_1EA7F2: CLC\n#_1EA7F3: ADC.w .acceleration_y,Y\n#_1EA7F6: STA.w $0D40,X\n\n#_1EA7F9: LDA.w $0DF0,X\n#_1EA7FC: BNE Pirogusu_Animate\n\n#_1EA7FE: JSL Sprite_SpawnSmallSplash\n\n#_1EA802: LDA.b #$10\n#_1EA804: STA.w $0E00,X\n\n#_1EA807: INC.w $0D80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_Animate", + "code": "Pirogusu_Animate:\n#_1EA80A: LDA.w $0DE0,X\n#_1EA80D: ASL A\n#_1EA80E: STA.b $00\n\n#_1EA810: LDA.b $1A\n#_1EA812: AND.b #$04\n#_1EA814: LSR A\n#_1EA815: LSR A\n\n#_1EA816: ORA.b $00\n#_1EA818: TAY\n\n#_1EA819: LDA.w .anim_step,Y\n#_1EA81C: STA.w $0D90,X\n\n#_1EA81F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_SpawnSmallSplash", + "code": "Sprite_SpawnSmallSplash:\n#_1EA820: LDA.b #$EC ; SPRITE EC\n#_1EA822: LDY.b #$0E\n#_1EA824: JSL Sprite_SpawnDynamically_slot_limited\n#_1EA828: BMI .no_space\n\n#_1EA82A: JSL Sprite_SetSpawnedCoordinates\n\n#_1EA82E: STZ.w $012E\n\n#_1EA831: LDA.b #$28 ; SFX2.28\n#_1EA833: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EA837: LDA.b #$03\n#_1EA839: STA.w $0DD0,Y\n\n#_1EA83C: LDA.b #$0F\n#_1EA83E: STA.w $0DF0,Y\n\n#_1EA841: LDA.b #$00\n#_1EA843: STA.w $0D80,Y\n\n#_1EA846: LDA.b #$03\n#_1EA848: STA.w $0E40,Y\n\n.no_space\n#_1EA84B: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_Active", + "code": "Pirogusu_Active:\n#_1EA852: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EA855: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EA858: JSR Pirogusu_Animate\n\n#_1EA85B: CLC\n#_1EA85C: ADC.b #$08\n#_1EA85E: STA.w $0D90,X\n\n#_1EA861: LDA.w $0E00,X\n#_1EA864: BNE .exit\n\n#_1EA866: JSR Pirogusu_SpawnSplash\n#_1EA869: JSR Sprite_Move_XY_Bank1E\n#_1EA86C: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EA86F: AND.b #$0F\n#_1EA871: BEQ .no_collision\n\n#_1EA873: JSL GetRandomNumber\n#_1EA877: LSR A\n\n#_1EA878: LDA.w $0DE0,X\n#_1EA87B: ROL A\n#_1EA87C: TAY\n\n#_1EA87D: LDA.w SharedDirections_Nice,Y\n#_1EA880: STA.w $0DE0,X\n\n.no_collision\n#_1EA883: LDY.w $0DE0,X\n\n#_1EA886: LDA.w .speed_x,Y\n#_1EA889: STA.w $0D50,X\n\n#_1EA88C: LDA.w .speed_y,Y\n#_1EA88F: STA.w $0D40,X\n\n.exit\n#_1EA892: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pirogusu_SpawnSplash", + "code": "Pirogusu_SpawnSplash:\n#_1EA897: TXA\n#_1EA898: EOR.b $1A\n#_1EA89A: AND.b #$03\n#_1EA89C: BNE .exit\n\n#_1EA89E: JSL GetRandomNumber\n#_1EA8A2: AND.b #$03\n#_1EA8A4: TAY\n\n#_1EA8A5: LDA.w .offset,Y\n#_1EA8A8: STA.b $00\n\n#_1EA8AA: JSL GetRandomNumber\n#_1EA8AE: AND.b #$03\n#_1EA8B0: TAY\n\n#_1EA8B1: LDA.w .offset,Y\n#_1EA8B4: STA.b $01\n\n#_1EA8B6: PHX\n#_1EA8B7: TXY\n\n#_1EA8B8: LDX.b #$0E\n\n.next_slot\n#_1EA8BA: LDA.l $7FF800,X\n#_1EA8BE: BEQ .free_slot\n\n#_1EA8C0: DEX\n#_1EA8C1: BPL .next_slot\n\n#_1EA8C3: PLX\n\n.exit\n#_1EA8C4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Pirogusu", + "code": "SpriteDraw_Pirogusu:\n#_1EA93B: LDY.w $0D90,X\n\n#_1EA93E: LDA.w $0F50,X\n#_1EA941: AND.b #$3F\n#_1EA943: ORA.w .flip,Y\n#_1EA946: STA.w $0F50,X\n\n#_1EA949: LDA.w .anim_step,Y\n#_1EA94C: STA.w $0DC0,X\n\n#_1EA94F: CPY.b #$04\n#_1EA951: BCS .fully_visible\n\n#_1EA953: LDA.w $0FD8\n#_1EA956: CLC\n#_1EA957: ADC.b #$04\n#_1EA959: STA.w $0FD8\n\n#_1EA95C: LDA.w $0FD9\n#_1EA95F: ADC.b #$00\n#_1EA961: STA.w $0FD9\n\n#_1EA964: LDA.w $0FDA\n#_1EA967: CLC\n#_1EA968: ADC.b #$04\n#_1EA96A: STA.w $0FDA\n\n#_1EA96D: LDA.w $0FDB\n#_1EA970: ADC.b #$00\n#_1EA972: STA.w $0FDB\n\n#_1EA975: JSL SpriteDraw_SingleSmall_long\n\n#_1EA979: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_93_Bumper", + "code": "Sprite_93_Bumper:\n#_1EA982: JSR SpriteDraw_Bumper\n#_1EA985: JSR Sprite_CheckIfActive_Bank1E\n#_1EA988: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EA98B: LDA.b $55\n#_1EA98D: BNE .dont_boing_link\n\n#_1EA98F: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EA993: BCC .dont_boing_link\n\n#_1EA995: JSL Link_CancelDash_long\n\n#_1EA999: LDA.b #$20\n#_1EA99B: STA.w $0DF0,X\n\n#_1EA99E: LDA.b #$30\n#_1EA9A0: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1EA9A4: LDA.b $F0\n#_1EA9A6: LSR A\n#_1EA9A7: LSR A\n#_1EA9A8: AND.b #$03\n#_1EA9AA: TAY\n\n#_1EA9AB: LDA.b $00\n#_1EA9AD: CLC\n#_1EA9AE: ADC.w .recoil_speed,Y\n#_1EA9B1: STA.b $27\n\n#_1EA9B3: LDA.b $F0\n#_1EA9B5: AND.b #$03\n#_1EA9B7: TAY\n\n#_1EA9B8: LDA.b $01\n#_1EA9BA: CLC\n#_1EA9BB: ADC.w .recoil_speed,Y\n#_1EA9BE: STA.b $28\n\n#_1EA9C0: LDA.b #$14\n#_1EA9C2: STA.b $46\n\n#_1EA9C4: PHX\n\n#_1EA9C5: JSL Link_ResetSwimmingState\n\n#_1EA9C9: PLX\n\n#_1EA9CA: LDA.b #$32 ; SFX3.32\n#_1EA9CC: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n.dont_boing_link\n#_1EA9D0: LDY.b #$0F\n\n.next_sprite\n#_1EA9D2: TYA\n#_1EA9D3: EOR.b $1A\n#_1EA9D5: AND.b #$03\n#_1EA9D7: ORA.w $0F70,Y\n#_1EA9DA: BNE .dont_boing_sprite\n\n#_1EA9DC: LDA.w $0DD0,Y\n#_1EA9DF: CMP.b #$09\n#_1EA9E1: BCC .dont_boing_sprite\n\n#_1EA9E3: LDA.w $0E60,Y\n#_1EA9E6: ORA.w $0F60,Y\n#_1EA9E9: AND.b #$40\n#_1EA9EB: BNE .dont_boing_sprite\n\n#_1EA9ED: LDA.w $0D10,Y\n#_1EA9F0: STA.b $04\n\n#_1EA9F2: LDA.w $0D30,Y\n#_1EA9F5: STA.b $05\n\n#_1EA9F7: LDA.w $0D00,Y\n#_1EA9FA: STA.b $06\n\n#_1EA9FC: LDA.w $0D20,Y\n#_1EA9FF: STA.b $07\n\n#_1EAA01: REP #$20\n\n#_1EAA03: LDA.w $0FD8\n#_1EAA06: SEC\n#_1EAA07: SBC.b $04\n#_1EAA09: CLC\n#_1EAA0A: ADC.w #$0010\n\n#_1EAA0D: CMP.w #$0020\n#_1EAA10: BCS .dont_boing_sprite\n\n#_1EAA12: LDA.w $0FDA\n#_1EAA15: SEC\n#_1EAA16: SBC.b $06\n#_1EAA18: CLC\n#_1EAA19: ADC.w #$0010\n\n#_1EAA1C: CMP.w #$0020\n#_1EAA1F: BCS .dont_boing_sprite\n\n#_1EAA21: SEP #$20\n\n#_1EAA23: LDA.b #$0F\n#_1EAA25: STA.w $0EA0,Y\n\n#_1EAA28: PHY\n\n#_1EAA29: LDA.b #$40\n#_1EAA2B: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EAA2F: PLY\n\n#_1EAA30: LDA.b $00\n#_1EAA32: STA.w $0F30,Y\n\n#_1EAA35: LDA.b $01\n#_1EAA37: STA.w $0F40,Y\n\n#_1EAA3A: LDA.b #$20\n#_1EAA3C: STA.w $0DF0,X\n\n#_1EAA3F: LDA.b #$32 ; SFX3.32\n#_1EAA41: JSL SpriteSFX_QueueSFX3WithPan\n\n.dont_boing_sprite\n#_1EAA45: SEP #$20\n\n#_1EAA47: DEY\n#_1EAA48: BPL .next_sprite\n\n#_1EAA4A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Bumper", + "code": "SpriteDraw_Bumper:\n#_1EAA8B: LDA.b #$00\n#_1EAA8D: XBA\n#_1EAA8E: LDA.w $0DF0,X\n\n#_1EAA91: LSR A\n#_1EAA92: AND.b #$01\n\n#_1EAA94: REP #$20\n\n#_1EAA96: ASL A\n#_1EAA97: ASL A\n#_1EAA98: ASL A\n#_1EAA99: ASL A\n#_1EAA9A: ASL A\n\n#_1EAA9B: ADC.w #.oam_groups\n#_1EAA9E: STA.b $08\n\n#_1EAAA0: SEP #$20\n\n#_1EAAA2: LDA.b #$04\n#_1EAAA4: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_91_StalfosKnight", + "code": "Sprite_91_StalfosKnight:\n#_1EAAA7: LDA.w $0D80,X\n#_1EAAAA: BNE .dropped\n\n#_1EAAAC: JSL Sprite_PrepOAMCoord_long\n#_1EAAB0: BRA .continue\n\n.dropped\n#_1EAAB2: JSR SpriteDraw_StalfosKnight\n\n.continue\n#_1EAAB5: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EAAB8: LDA.w $0EF0,X\n#_1EAABB: AND.b #$7F\n#_1EAABD: CMP.b #$01\n#_1EAABF: BNE .not_collapsed\n\n#_1EAAC1: STZ.w $0EF0,X\n\n#_1EAAC4: LDA.b #$06\n#_1EAAC6: STA.w $0D80,X\n\n#_1EAAC9: LDA.b #$FF\n#_1EAACB: STA.w $0DF0,X\n\n#_1EAACE: STZ.w $0D50,X\n#_1EAAD1: STZ.w $0D40,X\n\n#_1EAAD4: LDA.b #$02\n#_1EAAD6: STA.l $7F6918\n\n.not_collapsed\n#_1EAADA: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1EAADD: LDA.w $0D80,X\n#_1EAAE0: JSL JumpTableLocal\n#_1EAAE4: dw StalfosKnight_Hidden\n#_1EAAE6: dw StalfosKnight_EnterBattle\n#_1EAAE8: dw StalfosKnight_Idle\n#_1EAAEA: dw StalfosKnight_ScanForOpponents\n#_1EAAEC: dw StalfosKnight_Squat\n#_1EAAEE: dw StalfosKnight_HopAround\n#_1EAAF0: dw StalfosKnight_Crumble\n#_1EAAF2: dw StalfosKnight_CelebrateStandingUp\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_Hidden", + "code": "StalfosKnight_Hidden:\n#_1EAAF4: LDA.b #$09\n#_1EAAF6: STA.w $0F60,X\n#_1EAAF9: STA.w $0BA0,X\n\n#_1EAAFC: LDA.w $0E40,X\n#_1EAAFF: PHA\n\n#_1EAB00: ORA.b #$80\n#_1EAB02: STA.w $0E40,X\n\n#_1EAB05: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EAB08: PLA\n#_1EAB09: STA.w $0E40,X\n\n#_1EAB0C: BCC .exit\n\n#_1EAB0E: LDA.b #$90\n#_1EAB10: STA.w $0F70,X\n\n#_1EAB13: INC.w $0D80,X\n\n#_1EAB16: LDA.b #$02\n#_1EAB18: STA.w $0EB0,X\n\n#_1EAB1B: LDA.b #$02\n#_1EAB1D: STA.w $0DC0,X\n\n#_1EAB20: LDA.b #$20 ; SFX2.20\n#_1EAB22: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1EAB26: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_EnterBattle", + "code": "StalfosKnight_EnterBattle:\n#_1EAB27: LDA.w $0F70,X\n#_1EAB2A: PHA\n\n#_1EAB2B: JSR Sprite_Move_Z_Bank1E\n\n#_1EAB2E: LDA.w $0F80,X\n#_1EAB31: CMP.b #$C0\n#_1EAB33: BMI .at_max_speed\n\n#_1EAB35: SEC\n#_1EAB36: SBC.b #$03\n#_1EAB38: STA.w $0F80,X\n\n.at_max_speed\n#_1EAB3B: PLA\n#_1EAB3C: EOR.w $0F70,X\n#_1EAB3F: BPL .exit\n\n#_1EAB41: LDA.w $0F70,X\n#_1EAB44: BPL .exit\n\n; =========================================================\n\n#StalfosKnight_EnterIdleState:\n#_1EAB46: LDA.b #$02\n#_1EAB48: STA.w $0D80,X\n\n#_1EAB4B: STZ.w $0BA0,X\n#_1EAB4E: STZ.w $0F70,X\n#_1EAB51: STZ.w $0F80,X\n\n#_1EAB54: LDA.b #$3F\n#_1EAB56: STA.w $0DF0,X\n\n.exit\n#_1EAB59: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_Idle", + "code": "StalfosKnight_Idle:\n#_1EAB5C: LDA.b #$00\n#_1EAB5E: STA.l $7F6918\n\n#_1EAB62: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EAB65: LDA.w $0DF0,X\n#_1EAB68: BNE .delay\n\n#_1EAB6A: LDA.b #$03\n#_1EAB6C: STA.w $0D80,X\n\n#_1EAB6F: JSL GetRandomNumber\n#_1EAB73: AND.b #$3F\n#_1EAB75: STA.w $0DA0,X\n\n#_1EAB78: LDA.b #$7F\n#_1EAB7A: STA.w $0DF0,X\n\n#_1EAB7D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_ScanForOpponents", + "code": "StalfosKnight_ScanForOpponents:\n#_1EABA6: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EABA9: LDA.w $0DF0,X\n#_1EABAC: CMP.w $0DA0,X\n#_1EABAF: BNE .delay\n\n#_1EABB1: JSR Sprite_IsRightOfLink_Bank1E\n#_1EABB4: TYA\n#_1EABB5: STA.w $0EB0,X\n\n#_1EABB8: INC.w $0D80,X\n\n#_1EABBB: LDA.b #$20\n#_1EABBD: STA.w $0DF0,X\n\n#_1EABC0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_Squat", + "code": "StalfosKnight_Squat:\n#_1EABD6: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EABD9: LDA.w $0DF0,X\n#_1EABDC: BNE StalfosKnight_PrepJump\n\n#_1EABDE: INC.w $0D80,X\n\n#_1EABE1: LDA.b #$FF\n#_1EABE3: STA.w $0DF0,X\n\n#_1EABE6: LDA.b #$20\n#_1EABE8: STA.w $0E00,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_PrepJump", + "code": "StalfosKnight_PrepJump:\n#_1EABEB: LDA.b #$01\n#_1EABED: STA.w $0DB0,X\n\n#_1EABF0: LDA.b #$01\n#_1EABF2: STA.w $0DC0,X\n\n#_1EABF5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_HopAround", + "code": "StalfosKnight_HopAround:\n#_1EABF6: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EABF9: LDA.w $0E00,X\n#_1EABFC: BEQ .still_jumping\n\n#_1EABFE: DEC A\n#_1EABFF: BNE .dont_change_direction\n\n#_1EAC01: LDA.b #$30\n#_1EAC03: STA.w $0F80,X\n\n#_1EAC06: LDA.b #$10\n#_1EAC08: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1EAC0C: JSR Sprite_IsRightOfLink_Bank1E\n#_1EAC0F: TYA\n#_1EAC10: STA.w $0EB0,X\n\n#_1EAC13: LDA.b #$13 ; SFX3.13\n#_1EAC15: JSL SpriteSFX_QueueSFX3WithPan\n\n.dont_change_direction\n#_1EAC19: BRA StalfosKnight_PrepJump\n\n; ---------------------------------------------------------\n\n.still_jumping\n#_1EAC1B: JSR Sprite_Move_XYZ_Bank1E\n#_1EAC1E: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EAC21: LDA.w $0F80,X\n#_1EAC24: CMP.b #$C0\n#_1EAC26: BMI .at_max_ascending_speed\n\n#_1EAC28: SEC\n#_1EAC29: SBC.b #$02\n#_1EAC2B: STA.w $0F80,X\n\n.at_max_ascending_speed\n#_1EAC2E: LDA.w $0F70,X\n#_1EAC31: DEC A\n#_1EAC32: BPL .airborne\n\n#_1EAC34: STZ.w $0F70,X\n#_1EAC37: STZ.w $0F80,X\n\n#_1EAC3A: LDA.w $0DF0,X\n#_1EAC3D: BNE .bounce_again\n\n#_1EAC3F: JMP.w StalfosKnight_EnterIdleState\n\n; ---------------------------------------------------------\n\n.bounce_again\n#_1EAC42: LDA.b #$10\n#_1EAC44: STA.w $0E00,X\n\n.airborne\n#_1EAC47: LDY.b #$02\n\n#_1EAC49: LDA.w $0F80,X\n#_1EAC4C: CMP.b #$18\n#_1EAC4E: BMI .at_max_descending_speed\n\n#_1EAC50: LDY.b #$00\n\n.at_max_descending_speed\n#_1EAC52: TYA\n#_1EAC53: STA.w $0DC0,X\n\n#_1EAC56: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_Crumble", + "code": "StalfosKnight_Crumble:\n#_1EAC77: JSR Sprite_Move_XYZ_Bank1E\n#_1EAC7A: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EAC7D: LDA.w $0F80,X\n#_1EAC80: CMP.b #$C0\n#_1EAC82: BMI .at_max_speed\n\n#_1EAC84: SEC\n#_1EAC85: SBC.b #$02\n#_1EAC87: STA.w $0F80,X\n\n.at_max_speed\n#_1EAC8A: LDA.w $0F70,X\n#_1EAC8D: DEC A\n#_1EAC8E: BPL .head_aloft\n\n#_1EAC90: STZ.w $0F70,X\n#_1EAC93: STZ.w $0F80,X\n\n.head_aloft\n#_1EAC96: LDA.w $0DF0,X\n#_1EAC99: BNE .still_animating\n\n#_1EAC9B: JSL GetRandomNumber\n#_1EAC9F: AND.b #$01\n#_1EACA1: BNE .dont_celebrate_its_not_a_big_deal\n\n#_1EACA3: LDA.b #$07\n#_1EACA5: STA.w $0D80,X\n\n#_1EACA8: LDA.b #$50\n#_1EACAA: STA.w $0DF0,X\n\n#_1EACAD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "StalfosKnight_CelebrateStandingUp", + "code": "StalfosKnight_CelebrateStandingUp:\n#_1EACD8: LDA.w $0DF0,X\n#_1EACDB: BNE .still_celebrating\n\n#_1EACDD: JMP.w StalfosKnight_EnterIdleState\n\n.still_celebrating\n#_1EACE0: LSR A\n#_1EACE1: LSR A\n#_1EACE2: AND.b #$01\n#_1EACE4: TAY\n\n#_1EACE5: LDA.w .anim_state,Y\n#_1EACE8: STA.w $0DC0,X\n\n#_1EACEB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_StalfosKnight", + "code": "SpriteDraw_StalfosKnight:\n#_1EAE04: JSR Sprite_PrepOAMCoord_Bank1E\n#_1EAE07: JSR SpriteDraw_StalfosKnight_Head\n\n#_1EAE0A: LDA.b #$00\n#_1EAE0C: XBA\n#_1EAE0D: LDA.w $0DC0,X\n\n#_1EAE10: REP #$20\n\n#_1EAE12: ASL A\n#_1EAE13: ASL A\n#_1EAE14: ASL A\n#_1EAE15: STA.b $00\n\n#_1EAE17: ASL A\n#_1EAE18: ASL A\n#_1EAE19: ADC.b $00\n\n#_1EAE1B: ADC.w #.oam_groups\n#_1EAE1E: STA.b $08\n\n#_1EAE20: LDA.b $90\n#_1EAE22: CLC\n#_1EAE23: ADC.w #$0004\n#_1EAE26: STA.b $90\n\n#_1EAE28: INC.b $92\n\n#_1EAE2A: SEP #$20\n\n#_1EAE2C: LDA.b #$05\n#_1EAE2E: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EAE31: REP #$20\n\n#_1EAE33: LDA.b $90\n#_1EAE35: SEC\n#_1EAE36: SBC.w #$0004\n#_1EAE39: STA.b $90\n\n#_1EAE3B: DEC.b $92\n\n#_1EAE3D: SEP #$20\n\n#_1EAE3F: LDA.b #$12\n#_1EAE41: JSL SpriteDraw_Shadow_custom_long\n\n#_1EAE45: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_StalfosKnight_Head", + "code": "SpriteDraw_StalfosKnight_Head:\n#_1EAE4E: LDA.w $0DC0,X\n#_1EAE51: CMP.b #$02\n#_1EAE53: BEQ .head_part_of_body_chars\n\n#_1EAE55: LDA.w $0DB0,X\n#_1EAE58: STA.b $06\n#_1EAE5A: STZ.b $07\n\n#_1EAE5C: LDY.b #$00\n\n#_1EAE5E: PHX\n\n#_1EAE5F: LDA.w $0EB0,X\n#_1EAE62: TAX\n\n#_1EAE63: REP #$20\n\n#_1EAE65: LDA.b $00\n#_1EAE67: STA.b ($90),Y\n\n#_1EAE69: AND.w #$0100\n#_1EAE6C: STA.b $0E\n\n#_1EAE6E: LDA.b $02\n#_1EAE70: CLC\n#_1EAE71: ADC.b $06\n\n#_1EAE73: SEC\n#_1EAE74: SBC.w #$000C\n\n#_1EAE77: INY\n#_1EAE78: STA.b ($90),Y\n\n#_1EAE7A: CLC\n#_1EAE7B: ADC.w #$0010\n\n#_1EAE7E: CMP.w #$0100\n#_1EAE81: BCC .on_screen\n\n#_1EAE83: LDA.w #$00F0\n#_1EAE86: STA.b ($90),Y\n\n.on_screen\n#_1EAE88: SEP #$20\n\n#_1EAE8A: LDA.w .head_char,X\n#_1EAE8D: INY\n#_1EAE8E: STA.b ($90),Y\n\n#_1EAE90: LDA.w .head_flip,X\n#_1EAE93: INY\n#_1EAE94: ORA.b $05\n#_1EAE96: STA.b ($90),Y\n\n#_1EAE98: TYA\n#_1EAE99: LSR A\n#_1EAE9A: LSR A\n#_1EAE9B: TAY\n\n#_1EAE9C: LDA.b #$02\n#_1EAE9E: ORA.b $0F\n#_1EAEA0: STA.b ($92),Y\n\n#_1EAEA2: PLX\n\n.head_part_of_body_chars\n#_1EAEA3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_90_Wallmaster", + "code": "Sprite_90_Wallmaster:\n#_1EAEA4: LDA.w $0B89,X\n#_1EAEA7: ORA.b #$30\n#_1EAEA9: STA.w $0B89,X\n\n#_1EAEAC: JSR SpriteDraw_WallMaster\n\n#_1EAEAF: LDA.w $0DD0,X\n#_1EAEB2: CMP.b #$09\n#_1EAEB4: BEQ .continue\n\n#_1EAEB6: STZ.w $02E4\n#_1EAEB9: STZ.w $037B\n\n.continue\n#_1EAEBC: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EAEBF: LDA.w $0D90,X\n#_1EAEC2: BEQ .not_holding_link\n\n#_1EAEC4: LDA.w $0D10,X\n#_1EAEC7: STA.b $22\n\n#_1EAEC9: LDA.w $0D30,X\n#_1EAECC: STA.b $23\n\n#_1EAECE: LDA.w $0D00,X\n#_1EAED1: SEC\n#_1EAED2: SBC.w $0F70,X\n#_1EAED5: PHP\n\n#_1EAED6: CLC\n#_1EAED7: ADC.b #$03\n#_1EAED9: STA.b $20\n\n#_1EAEDB: LDA.w $0D20,X\n#_1EAEDE: ADC.b #$00\n\n#_1EAEE0: PLP\n#_1EAEE1: SBC.b #$00\n#_1EAEE3: STA.b $21\n\n#_1EAEE5: LDA.b #$01\n#_1EAEE7: STA.w $02E4\n#_1EAEEA: STA.w $037B\n\n#_1EAEED: STZ.b $46\n#_1EAEEF: STZ.b $28\n#_1EAEF1: STZ.b $27\n#_1EAEF3: STZ.b $30\n#_1EAEF5: STZ.b $31\n\n#_1EAEF7: REP #$20\n\n#_1EAEF9: LDA.b $20\n#_1EAEFB: SEC\n\n#_1EAEFC: SBC.b $E8\n#_1EAEFE: SEC\n\n#_1EAEFF: SBC.w #$0010\n#_1EAF02: CMP.w #$0100\n\n#_1EAF05: SEP #$20\n#_1EAF07: BCC .still_rising\n\n#_1EAF09: STZ.w $02E4\n#_1EAF0C: STZ.w $037B\n\n#_1EAF0F: PHX\n\n#_1EAF10: JSL WallMaster_SendPlayerToLastEntrance\n#_1EAF14: JSL Link_Initialize\n\n#_1EAF18: PLX\n\n#_1EAF19: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wallmaster_Descend", + "code": "Wallmaster_Descend:\n#_1EAF2B: LDA.w $0F70,X\n#_1EAF2E: PHA\n\n#_1EAF2F: JSR Sprite_Move_Z_Bank1E\n\n#_1EAF32: LDA.w $0F80,X\n#_1EAF35: CMP.b #$C0\n#_1EAF37: BMI .at_max_z_speed\n\n#_1EAF39: SEC\n#_1EAF3A: SBC.b #$03\n#_1EAF3C: STA.w $0F80,X\n\n.at_max_z_speed\n#_1EAF3F: PLA\n#_1EAF40: EOR.w $0F70,X\n#_1EAF43: BPL .exit\n\n#_1EAF45: LDA.w $0F70,X\n#_1EAF48: BPL .exit\n\n#_1EAF4A: INC.w $0D80,X\n\n#_1EAF4D: STZ.w $0F70,X\n#_1EAF50: STZ.w $0F80,X\n\n#_1EAF53: LDA.b #$3F\n#_1EAF55: STA.w $0DF0,X\n\n.exit\n#_1EAF58: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wallmaster_Grab", + "code": "Wallmaster_Grab:\n#_1EAF59: LDA.w $0DF0,X\n#_1EAF5C: BNE .still_grabby\n\n#_1EAF5E: INC.w $0D80,X\n\n.still_grabby\n#_1EAF61: LDY.b #$00\n\n#_1EAF63: AND.b #$20\n#_1EAF65: BNE .anim_step_0\n\n#_1EAF67: INY\n\n.anim_step_0\n#_1EAF68: TYA\n#_1EAF69: STA.w $0DC0,X\n\n#_1EAF6C: JSR Sprite_CheckDamageToLink_Bank1E\n#_1EAF6F: BCC .exit\n\n#_1EAF71: LDA.b #$01\n#_1EAF73: STA.w $0D90,X\n\n#_1EAF76: LDA.b #$40\n#_1EAF78: STA.w $0E60,X\n\n#_1EAF7B: LDA.b #$2A ; SFX3.2A\n#_1EAF7D: JSL SpriteSFX_QueueSFX3WithPan\n\n.exit\n#_1EAF81: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Wallmaster_Ascend", + "code": "Wallmaster_Ascend:\n#_1EAF82: LDA.w $0F70,X\n#_1EAF85: PHA\n\n#_1EAF86: JSR Sprite_Move_Z_Bank1E\n\n#_1EAF89: LDA.w $0F80,X\n#_1EAF8C: CMP.b #$40\n#_1EAF8E: BPL .at_max_z_speed\n\n#_1EAF90: INC A\n#_1EAF91: INC A\n#_1EAF92: STA.w $0F80,X\n\n.at_max_z_speed\n#_1EAF95: PLA\n#_1EAF96: EOR.w $0F70,X\n#_1EAF99: BPL .exit\n\n#_1EAF9B: LDA.w $0F70,X\n#_1EAF9E: BMI .exit\n\n#_1EAFA0: STZ.w $0DD0,X\n\n.exit\n#_1EAFA3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_WallMaster", + "code": "SpriteDraw_WallMaster:\n#_1EAFE4: LDA.b #$00\n#_1EAFE6: XBA\n#_1EAFE7: LDA.w $0DC0,X\n\n#_1EAFEA: REP #$20\n\n#_1EAFEC: ASL A\n#_1EAFED: ASL A\n#_1EAFEE: ASL A\n#_1EAFEF: ASL A\n#_1EAFF0: ASL A\n#_1EAFF1: ADC.w #.oam_groups\n#_1EAFF4: STA.b $08\n\n#_1EAFF6: SEP #$20\n\n#_1EAFF8: LDA.b #$04\n#_1EAFFA: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EAFFD: JSL SpriteDraw_BigShadow_with_altitude\n\n#_1EB001: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8F_Blob", + "code": "Sprite_8F_Blob:\n#_1EB002: LDA.w $0DD0,X\n#_1EB005: CMP.b #$09\n#_1EB007: BNE .skip_tile_collision\n\n#_1EB009: LDA.w $0E90,X\n#_1EB00C: BEQ .skip_tile_collision\n\n#_1EB00E: STZ.w $0E90,X\n\n#_1EB011: LDA.b #$01\n#_1EB013: STA.w $0D50,X\n\n#_1EB016: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EB019: STZ.w $0D50,X\n\n#_1EB01C: BEQ .dont_die\n\n#_1EB01E: STZ.w $0DD0,X\n\n#_1EB021: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Blob_Hidden", + "code": "Blob_Hidden:\n#_1EB055: LDA.w $0F60,X\n#_1EB058: PHA\n\n#_1EB059: ORA.b #$09\n#_1EB05B: STA.w $0F60,X\n\n#_1EB05E: LDA.w $0E40,X\n#_1EB061: ORA.b #$80\n#_1EB063: STA.w $0E40,X\n\n#_1EB066: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EB069: PLA\n#_1EB06A: STA.w $0F60,X\n\n#_1EB06D: BCC .exit\n\n#_1EB06F: INC.w $0D80,X\n\n#_1EB072: LDA.b #$7F\n#_1EB074: STA.w $0DF0,X\n\n#_1EB077: ASL.w $0E40,X\n#_1EB07A: LSR.w $0E40,X\n\n#_1EB07D: LDA.b $22\n#_1EB07F: STA.w $0D10,X\n\n#_1EB082: LDA.b $23\n#_1EB084: STA.w $0D30,X\n\n#_1EB087: LDA.b $20\n#_1EB089: CLC\n#_1EB08A: ADC.b #$08\n#_1EB08C: STA.w $0D00,X\n\n#_1EB08F: LDA.b $21\n#_1EB091: ADC.b #$00\n#_1EB093: STA.w $0D20,X\n\n#_1EB096: LDA.b #$30\n#_1EB098: STA.w $0F10,X\n\n#_1EB09B: STZ.w $0BA0,X\n\n.exit\n#_1EB09E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Blob_Peeking", + "code": "Blob_Peeking:\n#_1EB0AF: LDA.w $0DF0,X\n#_1EB0B2: BNE .delay\n\n#_1EB0B4: INC.w $0D80,X\n\n#_1EB0B7: LDA.b #$20\n#_1EB0B9: STA.w $0F80,X\n\n#_1EB0BC: LDA.b #$10\n#_1EB0BE: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1EB0C2: LDA.b #$30 ; SFX3.30\n#_1EB0C4: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EB0C8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Blob_Falling", + "code": "Blob_Falling:\n#_1EB0D6: LDA.w $0DF0,X\n#_1EB0D9: BEQ .begin_descent\n\n#_1EB0DB: DEC A\n#_1EB0DC: BNE .shake_from_fall\n\n#_1EB0DE: LDA.b #$20\n#_1EB0E0: STA.w $0DF0,X\n\n#_1EB0E3: INC.w $0D80,X\n\n#_1EB0E6: STZ.w $0DC0,X\n\n#_1EB0E9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Blob_Active", + "code": "Blob_Active:\n#_1EB144: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EB147: LDA.w $0E00,X\n#_1EB14A: BNE .dont_turn\n\n#_1EB14C: LDA.b #$30\n#_1EB14E: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1EB152: JSL GetRandomNumber\n#_1EB156: AND.b #$3F\n#_1EB158: ORA.b #$60\n#_1EB15A: STA.w $0E00,X\n\n#_1EB15D: ASL.w $0F50,X\n#_1EB160: ASL.w $0F50,X\n\n#_1EB163: LDA.w $0D50,X\n#_1EB166: ASL A\n#_1EB167: ROR.w $0F50,X\n#_1EB16A: LSR.w $0F50,X\n\n.dont_turn\n#_1EB16D: LDA.w $0E10,X\n#_1EB170: BNE .not_aggressive\n\n#_1EB172: INC.w $0E80,X\n\n#_1EB175: LDA.w $0E80,X\n#_1EB178: AND.b #$0E\n#_1EB17A: ORA.w $0E70,X\n#_1EB17D: BNE .still_aggressive\n\n#_1EB17F: JSR Sprite_Move_XY_Bank1E\n\n#_1EB182: INC.w $0ED0,X\n\n#_1EB185: LDA.w $0ED0,X\n#_1EB188: CMP.w $0EB0,X\n#_1EB18B: BNE .still_aggressive\n\n#_1EB18D: STZ.w $0ED0,X\n\n#_1EB190: JSL GetRandomNumber\n#_1EB194: AND.b #$1F\n#_1EB196: ADC.b #$40\n#_1EB198: STA.w $0E10,X\n\n#_1EB19B: JSL GetRandomNumber\n#_1EB19F: AND.b #$1F\n#_1EB1A1: ORA.b #$10\n#_1EB1A3: STA.w $0EB0,X\n\n.still_aggressive\n#_1EB1A6: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EB1A9: LDA.w $0E80,X\n#_1EB1AC: AND.b #$08\n#_1EB1AE: LSR A\n#_1EB1AF: LSR A\n#_1EB1B0: LSR A\n#_1EB1B1: STA.w $0DC0,X\n\n#_1EB1B4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Blob", + "code": "SpriteDraw_Blob:\n#_1EB1C5: LDA.w $0F50,X\n#_1EB1C8: LSR A\n#_1EB1C9: BCS .not_quake_blob\n\n#_1EB1CB: LDA.w $0FC6\n#_1EB1CE: CMP.b #$03\n#_1EB1D0: BCS .bad_gfx\n\n.not_quake_blob\n#_1EB1D2: LDA.w $0F10,X\n#_1EB1D5: BEQ .draw_in_front_of_link\n\n#_1EB1D7: LDA.b #$08\n#_1EB1D9: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.draw_in_front_of_link\n#_1EB1DD: LDA.w $0D80,X\n#_1EB1E0: BEQ .invisible\n\n#_1EB1E2: LDA.w $0DC0,X\n#_1EB1E5: CMP.b #$04\n#_1EB1E7: BCS .head_popping_out\n\n; ---------------------------------------------------------\n\n#_1EB1E9: PHA\n\n#_1EB1EA: TAY\n\n#_1EB1EB: LDA.w $0F50,X\n#_1EB1EE: PHA\n\n#_1EB1EF: EOR.w .flip,Y\n#_1EB1F2: STA.w $0F50,X\n\n#_1EB1F5: AND.b #$01\n#_1EB1F7: EOR.b #$01\n\n#_1EB1F9: ASL A\n#_1EB1FA: ASL A\n\n#_1EB1FB: CLC\n#_1EB1FC: ADC.w $0DC0,X\n#_1EB1FF: STA.w $0DC0,X\n\n#_1EB202: JSL SpriteDraw_SingleLarge_long\n\n#_1EB206: PLA\n#_1EB207: STA.w $0F50,X\n\n#_1EB20A: PLA\n#_1EB20B: STA.w $0DC0,X\n\n#_1EB20E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8E_Terrorpin", + "code": "Sprite_8E_Terrorpin:\n#_1EB26F: JSL SpriteDraw_SingleLarge_long\n#_1EB273: JSR Sprite_CheckTileCollision_Bank1E\n#_1EB276: JSR Sprite_CheckIfActive_Bank1E\n#_1EB279: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1EB27C: LDA.w $0E10,X\n#_1EB27F: BNE .invulnerable\n\n#_1EB281: JSL Sprite_CheckDamageFromLink_long\n\n.invulnerable\n#_1EB285: JSR Terrorpin_CheckForHammer\n#_1EB288: JSR Sprite_Move_XYZ_Bank1E\n\n#_1EB28B: LDA.w $0DA0,X\n#_1EB28E: JSL JumpTableLocal\n#_1EB292: dw Terrorpin_RightsideUp\n#_1EB294: dw Terrorpin_UpsideDown\n\n#_1EB296: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Terrorpin_RightsideUp", + "code": "Terrorpin_RightsideUp:\n#_1EB2A7: LDA.w $0F10,X\n#_1EB2AA: BNE .dont_turn\n\n#_1EB2AC: JSL GetRandomNumber\n#_1EB2B0: AND.b #$1F\n#_1EB2B2: ADC.b #$20\n#_1EB2B4: STA.w $0F10,X\n\n#_1EB2B7: AND.b #$03\n#_1EB2B9: STA.w $0DE0,X\n\n#_1EB2BC: AND.b #$30\n#_1EB2BE: BNE .dont_turn\n\n#_1EB2C0: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EB2C3: TYA\n#_1EB2C4: STA.w $0DE0,X\n\n.dont_turn\n#_1EB2C7: LDA.w $0DE0,X\n#_1EB2CA: CLC\n#_1EB2CB: ADC.w $0ED0,X\n#_1EB2CE: TAY\n\n#_1EB2CF: LDA.w .speed_x,Y\n#_1EB2D2: STA.w $0D50,X\n\n#_1EB2D5: LDA.w .speed_y,Y\n#_1EB2D8: STA.w $0D40,X\n\n#_1EB2DB: LDA.w $0F80,X\n#_1EB2DE: DEC A\n#_1EB2DF: DEC A\n#_1EB2E0: STA.w $0F80,X\n\n#_1EB2E3: LDA.w $0F70,X\n#_1EB2E6: BPL .airborne\n\n#_1EB2E8: STZ.w $0F70,X\n#_1EB2EB: STZ.w $0F80,X\n\n.airborne\n#_1EB2EE: LDA.b $1A\n#_1EB2F0: LDY.w $0ED0,X\n#_1EB2F3: BNE .move_faster\n\n#_1EB2F5: LSR A\n\n.move_faster\n#_1EB2F6: LSR A\n#_1EB2F7: LSR A\n#_1EB2F8: AND.b #$01\n#_1EB2FA: STA.w $0DC0,X\n\n#_1EB2FD: LDA.w $0E60,X\n#_1EB300: ORA.b #$40\n#_1EB302: STA.w $0E60,X\n\n#_1EB305: LDA.b #$04\n#_1EB307: STA.w $0CAA,X\n\n#_1EB30A: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EB30D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Terrorpin_UpsideDown", + "code": "Terrorpin_UpsideDown:\n#_1EB30E: LDA.w $0E60,X\n#_1EB311: AND.b #$BF\n#_1EB313: STA.w $0E60,X\n\n#_1EB316: STZ.w $0CAA,X\n\n#_1EB319: LDA.w $0F10,X\n#_1EB31C: BNE .delay\n\n#_1EB31E: STZ.w $0DA0,X\n\n#_1EB321: LDA.b #$20\n#_1EB323: STA.w $0F80,X\n\n#_1EB326: LDA.b #$40\n#_1EB328: STA.w $0F10,X\n\n#_1EB32B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Terrorpin_CheckForHammer", + "code": "Terrorpin_CheckForHammer:\n#_1EB3A3: LDA.w $0F70,X\n#_1EB3A6: ORA.w $0E10,X\n#_1EB3A9: BNE .nohit\n\n#_1EB3AB: LDA.b $EE\n#_1EB3AD: CMP.w $0F20,X\n#_1EB3B0: BNE .nohit\n\n#_1EB3B2: LDA.w $0044\n#_1EB3B5: CMP.b #$80\n#_1EB3B7: BEQ .nohit\n\n#_1EB3B9: LDA.w $0301\n#_1EB3BC: AND.b #$0A\n#_1EB3BE: BEQ .nohit\n\n#_1EB3C0: JSL SetupActionHitbox_long\n#_1EB3C4: JSR Terrorpin_SetUpHammerHitbox\n#_1EB3C7: JSL CheckIfHitBoxesOverlap_long\n#_1EB3CB: BCC .nohit\n\n#_1EB3CD: LDA.w $0D50,X\n#_1EB3D0: EOR.b #$FF\n#_1EB3D2: INC A\n#_1EB3D3: STA.w $0D50,X\n\n#_1EB3D6: LDA.w $0D40,X\n#_1EB3D9: EOR.b #$FF\n#_1EB3DB: INC A\n#_1EB3DC: STA.w $0D40,X\n\n#_1EB3DF: LDA.b #$20\n#_1EB3E1: STA.w $0E10,X\n\n#_1EB3E4: LDA.b #$20\n#_1EB3E6: STA.w $0F80,X\n\n#_1EB3E9: LDA.b #$04\n#_1EB3EB: STA.w $0ED0,X\n#_1EB3EE: LDA.w $0DA0,X\n\n#_1EB3F1: EOR.b #$01\n#_1EB3F3: STA.w $0DA0,X\n\n#_1EB3F6: CMP.b #$01\n#_1EB3F8: LDA.b #$FF\n#_1EB3FA: BCS .nonzerodao\n\n#_1EB3FC: LDA.b #$40\n\n.nonzerodao\n#_1EB3FE: STA.w $0F10,X\n\n.nohit\n#_1EB401: STZ.w $0EB0,X\n\n#_1EB404: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Terrorpin_SetUpHammerHitbox", + "code": "Terrorpin_SetUpHammerHitbox:\n#_1EB405: LDA.w $0D10,X\n#_1EB408: SEC\n#_1EB409: SBC.b #$10\n#_1EB40B: STA.b $04\n\n#_1EB40D: LDA.w $0D30,X\n#_1EB410: SBC.b #$00\n#_1EB412: STA.b $0A\n\n#_1EB414: LDA.w $0D00,X\n#_1EB417: SEC\n#_1EB418: SBC.b #$10\n#_1EB41A: STA.b $05\n\n#_1EB41C: LDA.w $0D20,X\n#_1EB41F: SBC.b #$00\n#_1EB421: STA.b $0B\n\n#_1EB423: LDA.b #$30\n#_1EB425: STA.b $06\n#_1EB427: STA.b $07\n\n#_1EB429: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8C_Arrghus", + "code": "Sprite_8C_Arrghus:\n#_1EB433: LDA.w $0B89,X\n#_1EB436: ORA.b #$30\n#_1EB438: STA.w $0B89,X\n\n#_1EB43B: JSR SpriteDraw_Arrghus\n\n#_1EB43E: LDA.w $0DD0,X\n#_1EB441: CMP.b #$09\n#_1EB443: BNE .dying\n\n#_1EB445: LDA.w $0F70,X\n#_1EB448: CMP.b #$60\n#_1EB44A: BCS .airborne\n\n.dying\n#_1EB44C: JSR Sprite_CheckIfActive_Bank1E\n\n; ---------------------------------------------------------\n\n.airborne\n#_1EB44F: JSR Arrghus_HandlePuffs\n\n#_1EB452: LDA.b #$01\n#_1EB454: STA.w $0B0C\n\n#_1EB457: LDA.w $0EF0,X\n#_1EB45A: AND.b #$7F\n#_1EB45C: CMP.b #$02\n#_1EB45E: BNE .dont_jump\n\n#_1EB460: JSR Arrghus_BOING\n\n#_1EB463: LDA.b #$40\n#_1EB465: STA.w $0E60,X\n\n.dont_jump\n#_1EB468: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EB46B: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EB46E: LDA.w $0E80,X\n#_1EB471: INC.w $0E80,X\n#_1EB474: AND.b #$03\n#_1EB476: BNE .dont_tick_step\n\n#_1EB478: INC.w $0ED0,X\n\n#_1EB47B: LDA.w $0ED0,X\n#_1EB47E: CMP.b #$09\n#_1EB480: BNE .dont_reset_step\n\n#_1EB482: STZ.w $0ED0,X\n\n.dont_reset_step\n#_1EB485: LDY.w $0ED0,X\n\n#_1EB488: LDA.w .anim_step,Y\n#_1EB48B: STA.w $0DC0,X\n\n; ---------------------------------------------------------\n\n.dont_tick_step\n#_1EB48E: JSR Sprite_CheckTileCollision_Bank1E\n#_1EB491: BEQ .handle_ai\n\n#_1EB493: LDY.w $0D80,X\n#_1EB496: CPY.b #$05\n#_1EB498: BNE .stop_moving\n\n#_1EB49A: AND.b #$03\n#_1EB49C: BEQ .invert_y_speed\n\n.invert_x_speed\n#_1EB49E: LDA.w $0D50,X\n#_1EB4A1: EOR.b #$FF\n#_1EB4A3: INC A\n#_1EB4A4: STA.w $0D50,X\n\n#_1EB4A7: BRA .handle_ai\n\n.invert_y_speed\n#_1EB4A9: LDA.w $0D40,X\n#_1EB4AC: EOR.b #$FF\n#_1EB4AE: INC A\n#_1EB4AF: STA.w $0D40,X\n\n#_1EB4B2: BRA .handle_ai\n\n; ---------------------------------------------------------\n\n.stop_moving\n#_1EB4B4: JSR Sprite_ZeroVelocity_XY_Bank1E\n\n.handle_ai\n#_1EB4B7: LDA.w $0D80,X\n#_1EB4BA: JSL JumpTableLocal\n#_1EB4BE: dw Arrghus_Move\n#_1EB4C0: dw Arrghus_MakeDecision\n#_1EB4C2: dw Arrghus_PuffAttack\n#_1EB4C4: dw Arrghus_JumpUp\n#_1EB4C6: dw Arrghus_SmashDown\n#_1EB4C8: dw Arrghus_PingPong\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_JumpUp", + "code": "Arrghus_JumpUp:\n#_1EB4CA: LDA.b #$78\n#_1EB4CC: STA.w $0F80,X\n\n#_1EB4CF: JSR Sprite_Move_Z_Bank1E\n\n#_1EB4D2: LDA.w $0F70,X\n#_1EB4D5: CMP.b #$E0\n#_1EB4D7: BCC .at_max_z_speed\n\n#_1EB4D9: LDA.b #$40\n#_1EB4DB: STA.w $0DF0,X\n\n#_1EB4DE: INC.w $0D80,X\n\n#_1EB4E1: STZ.w $0F80,X\n\n#_1EB4E4: LDA.b $22\n#_1EB4E6: STA.w $0D10,X\n\n#_1EB4E9: LDA.b $20\n#_1EB4EB: STA.w $0D00,X\n\n.at_max_z_speed\n#_1EB4EE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_SmashDown", + "code": "Arrghus_SmashDown:\n#_1EB4EF: LDA.w $0DF0,X\n#_1EB4F2: BNE .descending\n\n#_1EB4F4: LDA.b #$90\n#_1EB4F6: STA.w $0F80,X\n\n#_1EB4F9: LDA.w $0F70,X\n#_1EB4FC: PHA\n\n#_1EB4FD: JSR Sprite_Move_Z_Bank1E\n\n#_1EB500: PLA\n#_1EB501: EOR.w $0F70,X\n#_1EB504: BPL .descending\n\n#_1EB506: LDA.w $0F70,X\n#_1EB509: BPL .descending\n\n#_1EB50B: STZ.w $0F70,X\n\n#_1EB50E: JSL Arrghus_SpawnSplash\n\n#_1EB512: INC.w $0D80,X\n\n#_1EB515: LDA.b #$20\n#_1EB517: STA.w $0DF0,X\n\n#_1EB51A: LDA.b #$03 ; SFX3.03\n#_1EB51C: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EB520: LDA.b #$20\n#_1EB522: STA.w $0D50,X\n#_1EB525: STA.w $0D40,X\n\n.descending\n#_1EB528: DEC A\n#_1EB529: BNE .exit\n\n#_1EB52B: LDA.b #$20 ; SFX2.20\n#_1EB52D: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1EB531: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_PingPong", + "code": "Arrghus_PingPong:\n#_1EB532: LDA.w $0DF0,X\n#_1EB535: BNE .exit\n\n#_1EB537: STZ.w $0E60,X\n\n#_1EB53A: JSR Sprite_Move_XY_Bank1E\n#_1EB53D: JSL Sprite_CheckDamageFromLink_long\n\n#_1EB541: LDA.b $1A\n#_1EB543: AND.b #$07\n#_1EB545: BNE .exit\n\n#_1EB547: LDA.b #$28 ; SFX2.28\n#_1EB549: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EB54D: PHX\n\n#_1EB54E: TXY\n#_1EB54F: LDX.b #$1D\n\n#_1EB551: LDA.w $0D40,Y\n#_1EB554: BMI .next_slot\n\n#_1EB556: LDX.b #$0E\n\n.next_slot\n#_1EB558: LDA.l $7FF800,X\n#_1EB55C: BNE .slot_occupied\n\n#_1EB55E: LDA.b #$15 ; GARNISH 15\n#_1EB560: STA.l $7FF800,X\n#_1EB564: STA.w $0FB4\n\n#_1EB567: LDA.w $0D10,Y\n#_1EB56A: STA.l $7FF83C,X\n\n#_1EB56E: LDA.w $0D30,Y\n#_1EB571: STA.l $7FF878,X\n\n#_1EB575: LDA.w $0D00,Y\n#_1EB578: CLC\n#_1EB579: ADC.b #$18\n#_1EB57B: STA.l $7FF81E,X\n\n#_1EB57F: LDA.w $0D20,Y\n#_1EB582: STA.l $7FF85A,X\n\n#_1EB586: LDA.b #$0F\n#_1EB588: STA.l $7FF90E,X\n\n#_1EB58C: PLX\n\n#_1EB58D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_Move", + "code": "Arrghus_Move:\n#_1EB593: LDA.w $0DF0,X\n#_1EB596: BNE .delay\n\n#_1EB598: INC.w $0D80,X\n\n#_1EB59B: LDA.b #$30\n#_1EB59D: STA.w $0DF0,X\n\n.delay\n#_1EB5A0: JSR Sprite_Move_XY_Bank1E\n\n#_1EB5A3: LDA.w $0D50,X\n#_1EB5A6: CMP.w $0EB0,X\n#_1EB5A9: BEQ .check_y_speed\n#_1EB5AB: BPL .x_too_high\n\n#_1EB5AD: INC.w $0D50,X\n#_1EB5B0: BRA .check_y_speed\n\n.x_too_high\n#_1EB5B2: DEC.w $0D50,X\n\n.check_y_speed\n#_1EB5B5: LDA.w $0D40,X\n#_1EB5B8: CMP.w $0DE0,X\n#_1EB5BB: BEQ .exit\n#_1EB5BD: BPL .y_too_high\n\n#_1EB5BF: INC.w $0D40,X\n#_1EB5C2: BRA .exit\n\n.y_too_high\n#_1EB5C4: DEC.w $0D40,X\n\n.exit\n#_1EB5C7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_MakeDecision", + "code": "Arrghus_MakeDecision:\n#_1EB5C8: LDA.w $0DF0,X\n#_1EB5CB: BNE Arrghus_Decelerate\n\n#_1EB5CD: STZ.w $0D80,X\n\n#_1EB5D0: JSL CheckIfScreenIsClear\n#_1EB5D4: BCS Arrghus_BOING\n\n#_1EB5D6: INC.w $0B0B\n\n#_1EB5D9: LDA.w $0B0B\n#_1EB5DC: CMP.b #$04\n#_1EB5DE: BNE Arrghus_TargetLink\n\n#_1EB5E0: STZ.w $0B0B\n\n#_1EB5E3: LDA.b #$02\n#_1EB5E5: STA.w $0D80,X\n\n#_1EB5E8: LDA.b #$B0\n#_1EB5EA: STA.w $0DF0,X\n\n#_1EB5ED: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_BOING", + "code": "Arrghus_BOING:\n#_1EB5EE: LDA.b #$03\n#_1EB5F0: STA.w $0D80,X\n\n#_1EB5F3: LDA.b #$32 ; SFX3.32\n#_1EB5F5: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EB5F9: STZ.w $0E80,X\n\n#_1EB5FC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_TargetLink", + "code": "Arrghus_TargetLink:\n#_1EB5FD: JSL GetRandomNumber\n#_1EB601: AND.b #$3F\n#_1EB603: ADC.b #$30\n#_1EB605: STA.w $0DF0,X\n\n#_1EB608: AND.b #$03\n#_1EB60A: ADC.b #$08\n#_1EB60C: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_1EB610: LDA.b $00\n#_1EB612: STA.w $0DE0,X\n\n#_1EB615: LDA.b $01\n#_1EB617: STA.w $0EB0,X\n\n#_1EB61A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_Decelerate", + "code": "Arrghus_Decelerate:\n#_1EB61B: JSR Sprite_Move_XY_Bank1E\n\n#_1EB61E: LDA.w $0D50,X\n#_1EB621: BEQ .check_y_speed\n#_1EB623: BPL .x_too_high\n\n#_1EB625: INC.w $0D50,X\n#_1EB628: BRA .check_y_speed\n\n.x_too_high\n#_1EB62A: DEC.w $0D50,X\n\n.check_y_speed\n#_1EB62D: LDA.w $0D40,X\n#_1EB630: BEQ .exit\n#_1EB632: BPL .y_too_high\n\n#_1EB634: INC.w $0D40,X\n#_1EB637: BRA .exit\n\n.y_too_high\n#_1EB639: DEC.w $0D40,X\n\n.exit\n#_1EB63C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_PuffAttack", + "code": "Arrghus_PuffAttack:\n#_1EB63D: LDA.b #$08\n#_1EB63F: STA.w $0B0C\n\n#_1EB642: LDA.w $0DF0,X\n#_1EB645: CMP.b #$20\n#_1EB647: BCC .shrink\n\n#_1EB649: CMP.b #$60\n#_1EB64B: BCS .hold\n\n.grow\n#_1EB64D: INC.w $0B0A\n\n#_1EB650: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_HandlePuffs", + "code": "Arrghus_HandlePuffs:\n#_1EB6E9: LDA.w $0B08\n#_1EB6EC: CLC\n#_1EB6ED: ADC.w $0B0C\n#_1EB6F0: STA.w $0B08\n\n#_1EB6F3: LDA.w $0B09\n#_1EB6F6: ADC.b #$00\n#_1EB6F8: STA.w $0B09\n\n#_1EB6FB: LDA.b $1A\n#_1EB6FD: AND.b #$03\n#_1EB6FF: BNE .check_offset_y\n\n#_1EB701: INC.w $0D90,X\n\n#_1EB704: LDA.w $0D90,X\n#_1EB707: CMP.b #$0D\n#_1EB709: BNE .check_offset_y\n\n#_1EB70B: STZ.w $0D90,X\n\n.check_offset_y\n#_1EB70E: LDA.b $1A\n#_1EB710: AND.b #$07\n#_1EB712: BNE .start_puffs\n\n#_1EB714: INC.w $0DA0,X\n\n#_1EB717: LDA.w $0DA0,X\n#_1EB71A: CMP.b #$0D\n#_1EB71C: BNE .start_puffs\n\n#_1EB71E: STZ.w $0DA0,X\n\n; ---------------------------------------------------------\n\n.start_puffs\n#_1EB721: STZ.w $0FB5\n\n.next_puff\n#_1EB724: LDA.w $0FB5\n#_1EB727: PHA\n\n#_1EB728: ASL A\n#_1EB729: TAY\n\n#_1EB72A: REP #$20\n\n#_1EB72C: LDA.w $0B08\n#_1EB72F: CLC\n#_1EB730: ADC.w .angle_offset,Y\n#_1EB733: EOR.w .angle_mask,Y\n#_1EB736: STA.b $00\n\n#_1EB738: SEP #$20\n\n#_1EB73A: PLY\n\n#_1EB73B: LDA.w $0B0A\n#_1EB73E: CLC\n#_1EB73F: ADC.w .pinch,Y\n#_1EB742: STA.b $0E\n#_1EB744: STA.b $0F\n\n#_1EB746: LDA.w $0FB5\n#_1EB749: STA.b $02\n\n#_1EB74B: LDA.w $0D90,X\n#_1EB74E: CLC\n#_1EB74F: ADC.b $02\n#_1EB751: TAY\n\n#_1EB752: LDA.b $0F\n#_1EB754: CLC\n#_1EB755: ADC.w .some_offset,Y\n#_1EB758: STA.b $0F\n\n#_1EB75A: LDA.w $0DA0,X\n#_1EB75D: CLC\n#_1EB75E: ADC.b $02\n#_1EB760: TAY\n\n#_1EB761: LDA.b $0E\n#_1EB763: CLC\n#_1EB764: ADC.w .some_offset,Y\n#_1EB767: STA.b $0E\n\n#_1EB769: PHX\n#_1EB76A: REP #$30\n\n#_1EB76C: LDA.b $00\n#_1EB76E: AND.w #$00FF\n#_1EB771: ASL A\n#_1EB772: TAX\n\n#_1EB773: LDA.l SmoothCurve,X\n#_1EB777: STA.b $04\n\n#_1EB779: LDA.b $00\n#_1EB77B: CLC\n#_1EB77C: ADC.w #$0080\n#_1EB77F: STA.b $02\n\n#_1EB781: AND.w #$00FF\n#_1EB784: ASL A\n#_1EB785: TAX\n\n#_1EB786: LDA.l SmoothCurve,X\n#_1EB78A: STA.b $06\n\n#_1EB78C: SEP #$30\n\n#_1EB78E: PLX\n\n#_1EB78F: LDA.b $04\n#_1EB791: STA.w WRMPYA\n\n#_1EB794: LDA.b $0F\n\n#_1EB796: LDY.b $05\n#_1EB798: BNE .nonzero_a\n\n#_1EB79A: STA.w WRMPYB\n\n#_1EB79D: JSR NOP8\n\n#_1EB7A0: ASL.w RDMPYL\n#_1EB7A3: LDA.w RDMPYH\n#_1EB7A6: ADC.b #$00\n\n.nonzero_a\n#_1EB7A8: LSR.b $01\n#_1EB7AA: BCC .dont_invert_a\n\n#_1EB7AC: EOR.b #$FF\n#_1EB7AE: INC A\n\n.dont_invert_a\n#_1EB7AF: STZ.b $0A\n\n#_1EB7B1: CMP.b #$00\n#_1EB7B3: BPL .positive_a\n\n#_1EB7B5: DEC.b $0A\n\n.positive_a\n#_1EB7B7: CLC\n#_1EB7B8: ADC.w $0D10,X\n\n#_1EB7BB: LDY.w $0FB5\n#_1EB7BE: STA.w $0B10,Y\n\n#_1EB7C1: LDA.w $0D30,X\n#_1EB7C4: ADC.b $0A\n#_1EB7C6: STA.w $0B20,Y\n\n#_1EB7C9: LDA.b $06\n#_1EB7CB: STA.w WRMPYA\n\n#_1EB7CE: LDA.b $0E\n\n#_1EB7D0: LDY.b $07\n#_1EB7D2: BNE .nonzero_b\n\n#_1EB7D4: STA.w WRMPYB\n\n#_1EB7D7: JSR NOP8\n\n#_1EB7DA: ASL.w RDMPYL\n#_1EB7DD: LDA.w RDMPYH\n#_1EB7E0: ADC.b #$00\n\n.nonzero_b\n#_1EB7E2: LSR.b $03\n#_1EB7E4: BCC .dont_invert_b\n\n#_1EB7E6: EOR.b #$FF\n#_1EB7E8: INC A\n\n.dont_invert_b\n#_1EB7E9: STZ.b $0A\n\n#_1EB7EB: CMP.b #$00\n#_1EB7ED: BPL .positive_b\n\n#_1EB7EF: DEC.b $0A\n\n.positive_b\n#_1EB7F1: CLC\n#_1EB7F2: ADC.w $0D00,X\n#_1EB7F5: PHP\n\n#_1EB7F6: SEC\n#_1EB7F7: SBC.b #$10\n\n#_1EB7F9: LDY.w $0FB5\n#_1EB7FC: STA.w $0B30,Y\n\n#_1EB7FF: LDA.w $0D20,X\n#_1EB802: SBC.b #$00\n\n#_1EB804: PLP\n#_1EB805: ADC.b $0A\n#_1EB807: STA.w $0B40,Y\n\n#_1EB80A: INC.w $0FB5\n\n#_1EB80D: LDA.w $0FB5\n#_1EB810: CMP.b #$0D\n#_1EB812: BEQ .exit\n\n#_1EB814: JMP.w .next_puff\n\n.exit\n#_1EB817: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Arrghus", + "code": "SpriteDraw_Arrghus:\n#_1EB840: REP #$20\n\n#_1EB842: LDA.w #.oam_groups\n#_1EB845: STA.b $08\n\n#_1EB847: SEP #$20\n\n#_1EB849: LDA.b #$05\n#_1EB84B: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EB84E: LDA.w $0DC0,X\n#_1EB851: ASL A\n#_1EB852: STA.b $00\n\n; ---------------------------------------------------------\n\n#_1EB854: LDY.b #$02\n\n.adjust_next_object\n#_1EB856: LDA.b ($90),Y\n#_1EB858: CLC\n#_1EB859: ADC.b $00\n#_1EB85B: STA.b ($90),Y\n\n#_1EB85D: INY\n#_1EB85E: INY\n#_1EB85F: INY\n#_1EB860: INY\n\n#_1EB861: CPY.b #$12\n#_1EB863: BCC .adjust_next_object\n\n#_1EB865: LDA.w $0D80,X\n#_1EB868: CMP.b #$05\n#_1EB86A: BNE .not_pingponging\n\n#_1EB86C: LDY.b #$11\n#_1EB86E: LDA.b #$F0\n#_1EB870: STA.b ($90),Y\n\n; ---------------------------------------------------------\n\n.not_pingponging\n#_1EB872: LDA.w $0E80,X\n#_1EB875: AND.b #$08\n#_1EB877: BEQ .dont_flip_tentacles\n\n#_1EB879: LDY.b #$13\n\n#_1EB87B: LDA.b ($90),Y\n#_1EB87D: ORA.b #$40\n#_1EB87F: STA.b ($90),Y\n\n.dont_flip_tentacles\n#_1EB881: LDA.w $0D80,X\n#_1EB884: CMP.b #$05\n#_1EB886: BEQ .draw_wake\n\n#_1EB888: REP #$20\n\n#_1EB88A: LDA.b $90\n#_1EB88C: CLC\n#_1EB88D: ADC.w #$0004\n#_1EB890: STA.b $90\n\n; ---------------------------------------------------------\n\n#_1EB892: INC.b $92\n\n#_1EB894: SEP #$20\n\n#_1EB896: LDA.w $0F70,X\n\n#_1EB899: CMP.b #$A0\n#_1EB89B: BCS .exit\n\n#_1EB89D: LDA.w $0F50,X\n#_1EB8A0: PHA\n\n#_1EB8A1: AND.b #$FE\n#_1EB8A3: STA.w $0F50,X\n\n#_1EB8A6: JSL SpriteDraw_BigShadow\n\n#_1EB8AA: PLA\n#_1EB8AB: STA.w $0F50,X\n\n.exit\n#_1EB8AE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Arrghus_HandlePuffs_long", + "code": "Arrghus_HandlePuffs_long:\n#_1EB8B4: PHB\n#_1EB8B5: PHK\n#_1EB8B6: PLB\n\n#_1EB8B7: JSR Arrghus_HandlePuffs\n\n#_1EB8BA: PLB\n\n#_1EB8BB: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8D_Arrghi", + "code": "Sprite_8D_Arrghi:\n#_1EB8C4: LDA.w $0B89,X\n#_1EB8C7: ORA.b #$30\n#_1EB8C9: STA.w $0B89,X\n\n#_1EB8CC: JSL SpriteDraw_SingleLarge_long\n#_1EB8D0: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EB8D3: INC.w $0E80,X\n\n#_1EB8D6: LDA.w $0E80,X\n#_1EB8D9: LSR A\n#_1EB8DA: LSR A\n#_1EB8DB: LSR A\n#_1EB8DC: AND.b #$07\n#_1EB8DE: TAY\n\n#_1EB8DF: LDA.w .anim_step,Y\n#_1EB8E2: STA.w $0DC0,X\n\n#_1EB8E5: LDA.w $0DA0,X\n#_1EB8E8: BEQ .not_dragged\n\n#_1EB8EA: TAY\n#_1EB8EB: DEY\n\n#_1EB8EC: LDA.w $0C4A,Y\n#_1EB8EF: BEQ .stop_drag\n\n#_1EB8F1: LDA.w $0C04,Y\n#_1EB8F4: STA.w $0D10,X\n\n#_1EB8F7: LDA.w $0C18,Y\n#_1EB8FA: STA.w $0D30,X\n\n#_1EB8FD: LDA.w $0BFA,Y\n#_1EB900: STA.w $0D00,X\n\n#_1EB903: LDA.w $0C0E,Y\n#_1EB906: STA.w $0D20,X\n\n#_1EB909: LDA.b #$05\n#_1EB90B: STA.w $0F50,X\n\n#_1EB90E: LDA.w $0E60,X\n#_1EB911: AND.b #$BF\n#_1EB913: STA.w $0E60,X\n\n#_1EB916: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8B_Gibdo", + "code": "Sprite_8B_Gibdo:\n#_1EB9A9: JSR SpriteDraw_Gibdo\n#_1EB9AC: JSR Sprite_CheckIfActive_Bank1E\n#_1EB9AF: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EB9B2: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EB9B5: LDA.w $0D80,X\n#_1EB9B8: JSL JumpTableLocal\n#_1EB9BC: dw Gibdo_Turn\n#_1EB9BE: dw Gibdo_Walk\n\n; =========================================================\n\npool Gibdo_Turn\n\n.target_direction\n#_1EB9C0: db $02, $06, $04, $00\n\n.anim_step\n#_1EB9C4: db $04, $08, $0B, $0A, $00, $06, $03, $07\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Gibdo_Turn", + "code": "Gibdo_Turn:\n#_1EB9CC: LDY.w $0DE0,X\n\n#_1EB9CF: LDA.w .anim_step,Y\n#_1EB9D2: STA.w $0DC0,X\n\n#_1EB9D5: LDA.b $1A\n#_1EB9D7: AND.b #$07\n#_1EB9D9: BNE .exit\n\n#_1EB9DB: LDY.w $0D90,X\n\n#_1EB9DE: LDA.w $0DE0,X\n#_1EB9E1: CMP.w .target_direction,Y\n#_1EB9E4: BEQ .begin_movement\n#_1EB9E6: BPL .turn_left\n\n.turn_right\n#_1EB9E8: INC.w $0DE0,X\n#_1EB9EB: BRA .exit\n\n.turn_left\n#_1EB9ED: DEC.w $0DE0,X\n\n.exit\n#_1EB9F0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Gibdo_Walk", + "code": "Gibdo_Walk:\n#_1EBA12: LDY.w $0DE0,X\n\n#_1EBA15: LDA.w .speed_x,Y\n#_1EBA18: STA.w $0D50,X\n\n#_1EBA1B: LDA.w .speed_y,Y\n#_1EBA1E: STA.w $0D40,X\n\n#_1EBA21: JSR Sprite_Move_XY_Bank1E\n#_1EBA24: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EBA27: LDA.w $0DF0,X\n#_1EBA2A: BEQ .face_link\n\n#_1EBA2C: LDA.w $0E70,X\n#_1EBA2F: BEQ .continue\n\n.face_link\n#_1EBA31: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EBA34: TYA\n#_1EBA35: CMP.w $0D90,X\n#_1EBA38: BEQ .continue\n\n#_1EBA3A: STA.w $0D90,X\n\n#_1EBA3D: STZ.w $0D80,X\n\n#_1EBA40: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Gibdo", + "code": "SpriteDraw_Gibdo:\n#_1EBB20: LDA.b #$00\n#_1EBB22: XBA\n#_1EBB23: LDA.w $0DC0,X\n\n#_1EBB26: REP #$20\n\n#_1EBB28: ASL A\n#_1EBB29: ASL A\n#_1EBB2A: ASL A\n#_1EBB2B: ASL A\n\n#_1EBB2C: ADC.w #.oam_groups\n#_1EBB2F: STA.b $08\n\n#_1EBB31: SEP #$20\n\n#_1EBB33: LDA.b #$02\n#_1EBB35: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EBB38: LDA.w $0F00,X\n#_1EBB3B: BNE .no_shadow\n\n#_1EBB3D: JSL SpriteDraw_Shadow_long\n\n.no_shadow\n#_1EBB41: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_89_MothulaBeam", + "code": "Sprite_89_MothulaBeam:\n#_1EBB42: JSL SpriteDraw_SingleLarge_long\n#_1EBB46: JSR Sprite_CheckIfActive_Bank1E\n#_1EBB49: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EBB4C: LDA.b $1A\n#_1EBB4E: AND.b #$01\n#_1EBB50: BNE .frame_parity\n\n#_1EBB52: LDA.w $0F50,X\n#_1EBB55: EOR.b #$80\n#_1EBB57: STA.w $0F50,X\n\n.frame_parity\n#_1EBB5A: JSR Sprite_Move_XY_Bank1E\n#_1EBB5D: LDA.w $0DF0,X\n#_1EBB60: BNE .stick_around\n\n#_1EBB62: JSR Sprite_CheckTileCollision_Bank1E\n#_1EBB65: BEQ .stick_around\n\n#_1EBB67: STZ.w $0DD0,X\n\n.stick_around\n#_1EBB6A: TXA\n#_1EBB6B: EOR.b $1A\n#_1EBB6D: AND.b #$03\n#_1EBB6F: BNE .exit\n\n#_1EBB71: PHX\n#_1EBB72: TXY\n\n; ---------------------------------------------------------\n\n#_1EBB73: LDX.b #$0E\n\n.next_slot\n#_1EBB75: LDA.l $7FF800,X\n#_1EBB79: BEQ .free_garnish_slot\n\n#_1EBB7B: DEX\n#_1EBB7C: BPL .next_slot\n\n#_1EBB7E: PLX\n\n.exit\n#_1EBB7F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_94_Tile", + "code": "Sprite_94_Tile:\n#_1EBBB9: LDA.b #$30\n#_1EBBBB: STA.w $0B89,X\n\n#_1EBBBE: JSR SpriteDraw_Tile\n#_1EBBC1: JSR Sprite_CheckIfActivePermissive_Bank1E\n\n#_1EBBC4: LDA.w $0EF0,X\n#_1EBBC7: BNE Tile_Shatter\n\n#_1EBBC9: LDA.b #$01\n#_1EBBCB: STA.w $0BA0,X\n\n#_1EBBCE: LDA.w $0D80,X\n#_1EBBD1: JSL JumpTableLocal\n#_1EBBD5: dw Tile_DeleteFloor\n#_1EBBD7: dw Tile_Ascend\n#_1EBBD9: dw Tile_Launched\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Tile_DeleteFloor", + "code": "Tile_DeleteFloor:\n#_1EBBDB: LDA.w $0D10,X\n#_1EBBDE: STA.b $00\n\n#_1EBBE0: LDA.w $0D30,X\n#_1EBBE3: STA.b $01\n\n#_1EBBE5: LDA.w $0D00,X\n#_1EBBE8: CLC\n#_1EBBE9: ADC.b #$08\n#_1EBBEB: STA.b $02\n\n#_1EBBED: LDA.w $0D20,X\n#_1EBBF0: STA.b $03\n\n#_1EBBF2: LDY.b #$06\n#_1EBBF4: JSL Underworld_UpdateTilemapWithCommonTile\n\n#_1EBBF8: INC.w $0D80,X\n\n#_1EBBFB: LDA.b #$80\n#_1EBBFD: STA.w $0DF0,X\n\n#_1EBC00: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Tile_Launched", + "code": "Tile_Launched:\n#_1EBC01: STZ.w $0BA0,X\n\n#_1EBC04: LDA.w $0DF0,X\n#_1EBC07: BEQ .dont_turn\n\n#_1EBC09: AND.b #$03\n#_1EBC0B: BNE .dont_turn\n\n#_1EBC0D: JSR Tile_SpeedTowardsLink\n\n.dont_turn\n#_1EBC10: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EBC13: BCS Tile_Shatter\n\n#_1EBC15: JSR Sprite_Move_XY_Bank1E\n\n#_1EBC18: LDA.w $0FDA\n#_1EBC1B: SEC\n#_1EBC1C: SBC.w $0F70,X\n#_1EBC1F: STA.w $0FDA\n\n#_1EBC22: LDA.w $0FDB\n#_1EBC25: SBC.b #$00\n#_1EBC27: STA.w $0FDB\n\n#_1EBC2A: JSR Sprite_CheckTileCollision_Bank1E\n#_1EBC2D: BEQ .no_tile_collision\n\n; ---------------------------------------------------------\n\n#Tile_Shatter:\n#_1EBC2F: LDA.b #$1F ; SFX2.1F\n#_1EBC31: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EBC35: LDA.b #$06\n#_1EBC37: STA.w $0DD0,X\n\n#_1EBC3A: LDA.b #$1F\n#_1EBC3C: STA.w $0DF0,X\n\n#_1EBC3F: LDA.b #$EC ; SPRITE EC\n#_1EBC41: STA.w $0E20,X\n\n#_1EBC44: STZ.w $0EF0,X\n\n#_1EBC47: LDA.b #$80\n#_1EBC49: STA.w $0DB0,X\n\n#_1EBC4C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Tile_Ascend", + "code": "Tile_Ascend:\n#_1EBC4F: LDA.w $0DF0,X\n#_1EBC52: BNE .ascending\n\n#_1EBC54: INC.w $0D80,X\n\n#_1EBC57: LDA.b #$10\n#_1EBC59: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n#Tile_SpeedTowardsLink:\n#_1EBC5C: LDA.b #$20\n#_1EBC5E: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1EBC62: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Tile_Whirr", + "code": "Tile_Whirr:\n#_1EBC6F: INC.w $0E80,X\n\n#_1EBC72: LDA.w $0E80,X\n#_1EBC75: LSR A\n#_1EBC76: LSR A\n#_1EBC77: AND.b #$01\n#_1EBC79: STA.w $0DC0,X\n\n#_1EBC7C: TXA\n#_1EBC7D: EOR.b $1A\n#_1EBC7F: AND.b #$07\n#_1EBC81: BNE .exit\n\n#_1EBC83: LDA.b #$07 ; SFX2.07\n#_1EBC85: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1EBC89: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Tile", + "code": "SpriteDraw_Tile:\n#_1EBCCA: LDA.b #$00\n#_1EBCCC: XBA\n#_1EBCCD: LDA.w $0DC0,X\n\n#_1EBCD0: REP #$20\n\n#_1EBCD2: ASL A\n#_1EBCD3: ASL A\n#_1EBCD4: ASL A\n#_1EBCD5: ASL A\n#_1EBCD6: ASL A\n#_1EBCD7: ADC.w #.oam_groups\n#_1EBCDA: STA.b $08\n\n#_1EBCDC: SEP #$20\n\n#_1EBCDE: LDA.b #$04\n#_1EBCE0: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EBCE3: JSL SpriteDraw_Shadow_long\n\n#_1EBCE7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_8A_SpikeBlock", + "code": "Sprite_8A_SpikeBlock:\n#_1EBCE8: LDA.w $0E90,X\n#_1EBCEB: BNE SpikeBlock_ByMothula\n\n#_1EBCED: JSL SpriteDraw_SingleLarge_long\n#_1EBCF1: JSR Sprite_CheckIfActive_Bank1E\n#_1EBCF4: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EBCF7: JSR Sprite_Move_XY_Bank1E\n#_1EBCFA: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EBCFD: LDA.w $0DF0,X\n#_1EBD00: BNE .exit\n\n#_1EBD02: JSR SpikeBlock_CheckStatueCollision\n#_1EBD05: BCC .no_collision\n\n#_1EBD07: LDA.w $0E70,X\n#_1EBD0A: AND.b #$0F\n#_1EBD0C: BEQ .exit\n\n.no_collision\n#_1EBD0E: LDA.b #$04\n#_1EBD10: STA.w $0DF0,X\n\n#_1EBD13: LDA.w $0D50,X\n#_1EBD16: EOR.b #$FF\n#_1EBD18: INC A\n#_1EBD19: STA.w $0D50,X\n\n#_1EBD1C: LDA.b #$05 ; SFX2.05\n#_1EBD1E: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n#_1EBD22: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpikeBlock_ByMothula", + "code": "SpikeBlock_ByMothula:\n#_1EBD23: LDA.b #$04\n#_1EBD25: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1EBD29: JSL SpriteDraw_SingleLarge_long\n#_1EBD2D: JSR Sprite_CheckIfActive_Bank1E\n#_1EBD30: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EBD33: LDA.w $0D80,X\n#_1EBD36: BNE .active\n\n#_1EBD38: LDY.b #$00\n#_1EBD3A: JSR SpikeBlock_UpdateTilemap\n\n#_1EBD3D: INC.w $0D80,X\n\n#_1EBD40: LDA.b #$40\n#_1EBD42: STA.w $0DF0,X\n\n#_1EBD45: LDA.b #$69\n#_1EBD47: STA.w $0E00,X\n\n#_1EBD4A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpikeBlock_UpdateTilemap", + "code": "SpikeBlock_UpdateTilemap:\n#_1EBE00: LDA.w $0D10,X\n#_1EBE03: STA.b $00\n\n#_1EBE05: LDA.w $0D30,X\n#_1EBE08: STA.b $01\n\n#_1EBE0A: LDA.w $0D00,X\n#_1EBE0D: STA.b $02\n\n#_1EBE0F: LDA.w $0D20,X\n#_1EBE12: STA.b $03\n\n#_1EBE14: JSL Underworld_UpdateTilemapWithCommonTile\n\n#_1EBE18: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpikeBlock_CheckStatueCollision", + "code": "SpikeBlock_CheckStatueCollision:\n#_1EBE19: LDY.b #$0F\n\n.next_sprite\n#_1EBE1B: TYA\n#_1EBE1C: EOR.b $1A\n#_1EBE1E: AND.b #$01\n#_1EBE20: BNE .skip\n\n#_1EBE22: LDA.w $0DD0,Y\n#_1EBE25: BEQ .skip\n\n#_1EBE27: LDA.w $0E20,Y\n#_1EBE2A: CMP.b #$1C ; SPRITE 1C\n#_1EBE2C: BNE .skip\n\n#_1EBE2E: LDA.w $0D10,X\n#_1EBE31: STA.b $00\n\n#_1EBE33: LDA.w $0D30,X\n#_1EBE36: STA.b $01\n\n#_1EBE38: LDA.w $0D00,X\n#_1EBE3B: STA.b $02\n\n#_1EBE3D: LDA.w $0D20,X\n#_1EBE40: STA.b $03\n\n#_1EBE42: LDA.w $0D10,Y\n#_1EBE45: STA.b $04\n\n#_1EBE47: LDA.w $0D30,Y\n#_1EBE4A: STA.b $05\n\n#_1EBE4C: LDA.w $0D00,Y\n#_1EBE4F: STA.b $06\n\n#_1EBE51: LDA.w $0D20,Y\n#_1EBE54: STA.b $07\n\n#_1EBE56: REP #$20\n\n#_1EBE58: LDA.b $00\n#_1EBE5A: SEC\n#_1EBE5B: SBC.b $04\n#_1EBE5D: CLC\n#_1EBE5E: ADC.w #$0010\n\n#_1EBE61: CMP.w #$0020\n#_1EBE64: BCS .no_collision\n\n#_1EBE66: LDA.b $02\n#_1EBE68: SEC\n#_1EBE69: SBC.b $06\n#_1EBE6B: CLC\n#_1EBE6C: ADC.w #$0008\n\n#_1EBE6F: CMP.w #$0010\n#_1EBE72: BCS .no_collision\n\n#_1EBE74: SEP #$20\n\n#_1EBE76: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_88_Mothula", + "code": "Sprite_88_Mothula:\n#_1EBE7E: JSR Mothula_Main\n\n#_1EBE81: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EBE84: JSR Mothula_HandleSpikes\n\n#_1EBE87: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Mothula_Main", + "code": "Mothula_Main:\n#_1EBE88: JSL SpriteDraw_Mothula\n\n#_1EBE8C: LDA.w $0DD0,X\n#_1EBE8F: CMP.b #$0B\n#_1EBE91: BNE .not_stunned\n\n#_1EBE93: STZ.w $0D80,X\n\n.not_stunned\n#_1EBE96: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EBE99: STZ.w $0E60,X\n\n#_1EBE9C: LDA.w $0EE0,X\n#_1EBE9F: BEQ .vulnerable\n\n#_1EBEA1: LDA.b #$40\n#_1EBEA3: STA.w $0E60,X\n\n; ---------------------------------------------------------\n\n.vulnerable\n#_1EBEA6: LDA.w $0EA0,X\n#_1EBEA9: BEQ .continue\n\n#_1EBEAB: AND.b #$7F\n#_1EBEAD: CMP.b #$06\n#_1EBEAF: BNE .continue\n\n#_1EBEB1: STZ.w $0EA0,X\n\n#_1EBEB4: LDA.b #$20\n#_1EBEB6: STA.w $0EE0,X\n\n#_1EBEB9: LDA.b #$02\n#_1EBEBB: STA.w $0D80,X\n\n#_1EBEBE: STZ.w $0DF0,X\n\n#_1EBEC1: LDA.b #$40\n#_1EBEC3: STA.w $0ED0,X\n\n; ---------------------------------------------------------\n\n.continue\n#_1EBEC6: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1EBEC9: LDA.w $0D80,X\n#_1EBECC: JSL JumpTableLocal\n#_1EBED0: dw Modula_Dormant\n#_1EBED2: dw Modula_WakeUp\n#_1EBED4: dw Modula_ActLikeAMoth\n#_1EBED6: dw Modula_FireBeams\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Modula_Dormant", + "code": "Modula_Dormant:\n#_1EBED8: LDA.w $0DF0,X\n#_1EBEDB: BNE .exit\n\n#_1EBEDD: INC.w $0D80,X\n\n.exit\n#_1EBEE0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Modula_WakeUp", + "code": "Modula_WakeUp:\n#_1EBEE1: LDA.b #$08\n#_1EBEE3: STA.w $0F80,X\n\n#_1EBEE6: JSR Sprite_Move_Z_Bank1E\n\n#_1EBEE9: STZ.w $0F80,X\n\n#_1EBEEC: LDA.w $0F70,X\n#_1EBEEF: CMP.b #$18\n#_1EBEF1: BCC .still_rising\n\n#_1EBEF3: LDA.b #$80\n#_1EBEF5: STA.w $0ED0,X\n\n#_1EBEF8: INC.w $0D80,X\n\n#_1EBEFB: STZ.w $0BA0,X\n\n#_1EBEFE: LDA.b #$40\n#_1EBF00: STA.w $0DF0,X\n\n.still_rising\n#_1EBF03: JSR Mothula_FlapWings\n\n#_1EBF06: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Modula_ActLikeAMoth", + "code": "Modula_ActLikeAMoth:\n#_1EBF13: LDA.w $0ED0,X\n#_1EBF16: BNE .dont_shoot\n\n#_1EBF18: LDA.b #$3F\n#_1EBF1A: STA.w $0DF0,X\n\n#_1EBF1D: INC.w $0D80,X\n\n#_1EBF20: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Mothula_FlapWings", + "code": "Mothula_FlapWings:\n#_1EBF9F: INC.w $0E80,X\n\n#_1EBFA2: LDA.w $0E80,X\n#_1EBFA5: LSR A\n#_1EBFA6: LSR A\n#_1EBFA7: AND.b #$03\n#_1EBFA9: TAY\n\n#_1EBFAA: BNE .no_sfx\n\n#_1EBFAC: LDA.b #$02 ; SFX3.02\n#_1EBFAE: JSL SpriteSFX_QueueSFX3WithPan\n\n.no_sfx\n#_1EBFB2: LDA.w .anim_step,Y\n#_1EBFB5: STA.w $0DC0,X\n\n#_1EBFB8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Modula_FireBeams", + "code": "Modula_FireBeams:\n#_1EBFB9: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EBFBC: LDA.w $0DF0,X\n#_1EBFBF: BNE .delay\n\n#_1EBFC1: DEC.w $0D80,X\n\n#_1EBFC4: JSL GetRandomNumber\n#_1EBFC8: AND.b #$1F\n#_1EBFCA: ORA.b #$40\n#_1EBFCC: STA.w $0ED0,X\n\n#_1EBFCF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Mothula_SpawnBeams", + "code": "Mothula_SpawnBeams:\n#_1EBFDF: LDA.b #$36 ; SFX3.36\n#_1EBFE1: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EBFE5: LDA.b #$02\n#_1EBFE7: STA.w $0FB5\n\n.next_spawn\n#_1EBFEA: LDA.b #$89 ; SPRITE 89\n#_1EBFEC: JSL Sprite_SpawnDynamically\n#_1EBFF0: BMI .no_space\n\n#_1EBFF2: JSL Sprite_SetSpawnedCoordinates\n\n#_1EBFF6: LDA.b $02\n#_1EBFF8: SEC\n#_1EBFF9: SBC.b $04\n\n#_1EBFFB: CLC\n#_1EBFFC: ADC.b #$03\n#_1EBFFE: STA.w $0D00,Y\n\n#_1EC001: LDA.b #$10\n#_1EC003: STA.w $0DF0,Y\n#_1EC006: STA.w $0BA0,Y\n\n#_1EC009: PHX\n\n#_1EC00A: LDX.w $0FB5\n\n#_1EC00D: LDA.b $00\n#_1EC00F: CLC\n#_1EC010: ADC.w .speed_and_offset_x,X\n#_1EC013: STA.w $0D10,Y\n\n#_1EC016: LDA.w .speed_and_offset_x,X\n#_1EC019: STA.w $0D50,Y\n\n#_1EC01C: LDA.w .speed_y,X\n#_1EC01F: STA.w $0D40,Y\n\n#_1EC022: LDA.b #$00\n#_1EC024: STA.w $0F70,Y\n\n#_1EC027: PLX\n\n.no_space\n#_1EC028: DEC.w $0FB5\n#_1EC02B: BPL .next_spawn\n\n#_1EC02D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Mothula_HandleSpikes", + "code": "Mothula_HandleSpikes:\n#_1EC088: DEC.w $0EB0,X\n#_1EC08B: BNE .exit\n\n#_1EC08D: LDA.b #$40\n#_1EC08F: STA.w $0EB0,X\n\n#_1EC092: LDA.b #$8A ; SPRITE 8A\n#_1EC094: JSL Sprite_SpawnDynamically\n#_1EC098: BMI .exit\n\n#_1EC09A: PHX\n\n#_1EC09B: JSL GetRandomNumber\n#_1EC09F: AND.b #$1F\n#_1EC0A1: CMP.b #$1E\n#_1EC0A3: BCC .rng_roll_in_range\n\n#_1EC0A5: SBC.b #$1E\n\n.rng_roll_in_range\n#_1EC0A7: TAX\n\n#_1EC0A8: LDA.w .position_x,X\n#_1EC0AB: STA.w $0D10,Y\n#_1EC0AE: STA.w $0D90,Y\n\n#_1EC0B1: LDA.w .position_y,X\n#_1EC0B4: DEC A\n#_1EC0B5: STA.w $0D00,Y\n#_1EC0B8: STA.w $0DA0,Y\n\n#_1EC0BB: LDA.w .direction,X\n#_1EC0BE: STA.w $0DE0,Y\n\n#_1EC0C1: LDA.b #$01\n#_1EC0C3: STA.w $0E90,Y\n\n#_1EC0C6: CLC\n#_1EC0C7: ADC.w $0FB0\n#_1EC0CA: STA.w $0D30,Y\n\n#_1EC0CD: LDA.b #$01\n#_1EC0CF: CLC\n#_1EC0D0: ADC.w $0FB1\n#_1EC0D3: STA.w $0D20,Y\n\n#_1EC0D6: TYX\n\n#_1EC0D7: LDA.b #$01\n#_1EC0D9: STA.w $0D50,X\n\n#_1EC0DC: JSL Sprite_Get16BitCoords_long\n#_1EC0E0: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EC0E3: STZ.w $0D50,X\n\n#_1EC0E6: LDA.w $0D90,X\n#_1EC0E9: STA.w $0D10,X\n\n#_1EC0EC: LDA.w $0DA0,X\n#_1EC0EF: STA.w $0D00,X\n\n#_1EC0F2: LDA.w $0E70,X\n#_1EC0F5: BNE .keep_spawn\n\n#_1EC0F7: STZ.w $0DD0,X\n\n#_1EC0FA: PLX\n\n#_1EC0FB: LDA.b #$01\n#_1EC0FD: STA.w $0EB0,X\n\n#_1EC100: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_86_Kodongo", + "code": "Sprite_86_Kodongo:\n#_1EC103: JSL SpriteDraw_SingleLarge_long\n#_1EC107: JSR Sprite_CheckIfActive_Bank1E\n#_1EC10A: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EC10D: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EC110: STZ.w SprTileDie,X\n\n#_1EC113: LDA.w $0D80,X\n#_1EC116: JSL JumpTableLocal\n#_1EC11A: dw Kodongo_MakeDecision\n#_1EC11C: dw Kodongo_Move\n#_1EC11E: dw Kodongo_ShootFire\n\n; =========================================================\n\npool Kodongo_MakeDecision\n\n.speed_x\n#_1EC120: db 1, -1, 0, 0\n\n.speed_y\n#_1EC124: db 0, 0, 1, -1\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Kodongo_MakeDecision", + "code": "Kodongo_MakeDecision:\n#_1EC128: INC.w $0D80,X\n\n#_1EC12B: JSL GetRandomNumber\n#_1EC12F: AND.b #$03\n#_1EC131: STA.w $0DE0,X\n\n#_1EC134: LDA.b #$B0\n#_1EC136: STA.w SprTileDie,X\n\n.try_new_direction\n#_1EC139: LDY.w $0DE0,X\n\n#_1EC13C: LDA.w .speed_x,Y\n#_1EC13F: STA.w $0D50,X\n\n#_1EC142: LDA.w .speed_y,Y\n#_1EC145: STA.w $0D40,X\n\n#_1EC148: JSR Sprite_CheckTileCollision_Bank1E\n#_1EC14B: BEQ Kodongo_SetDirection\n\n#_1EC14D: LDA.w $0DE0,X\n#_1EC150: INC A\n#_1EC151: AND.b #$03\n#_1EC153: STA.w $0DE0,X\n\n#_1EC156: BRA .try_new_direction\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kodongo_SetDirection", + "code": "Kodongo_SetDirection:\n#_1EC158: LDY.w $0DE0,X\n\n#_1EC15B: LDA.w Sixteen_X,Y\n#_1EC15E: STA.w $0D50,X\n\n#_1EC161: LDA.w Sixteen_Y,Y\n#_1EC164: STA.w $0D40,X\n\n#_1EC167: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kodongo_Move", + "code": "Kodongo_Move:\n#_1EC178: JSR Sprite_Move_XY_Bank1E\n#_1EC17B: JSR Sprite_CheckTileCollision_Bank1E\n#_1EC17E: BEQ .no_tile_collision\n\n#_1EC180: LDA.w $0DE0,X\n#_1EC183: EOR.b #$01\n#_1EC185: STA.w $0DE0,X\n\n#_1EC188: JSR Kodongo_SetDirection\n\n.no_tile_collision\n#_1EC18B: LDA.w $0D10,X\n#_1EC18E: AND.b #$1F\n#_1EC190: CMP.b #$04\n#_1EC192: BNE .dont_breathe_fire\n\n#_1EC194: LDA.w $0D00,X\n#_1EC197: AND.b #$1F\n#_1EC199: CMP.b #$1B\n#_1EC19B: BNE .dont_breathe_fire\n\n#_1EC19D: JSL GetRandomNumber\n#_1EC1A1: AND.b #$03\n#_1EC1A3: BNE .dont_breathe_fire\n\n#_1EC1A5: LDA.b #$6F\n#_1EC1A7: STA.w $0DF0,X\n\n#_1EC1AA: INC.w $0D80,X\n\n#_1EC1AD: STZ.w $0D90,X\n\n.dont_breathe_fire\n#_1EC1B0: INC.w $0E80,X\n\n#_1EC1B3: LDA.w $0E80,X\n#_1EC1B6: AND.b #$04\n#_1EC1B8: ORA.w $0DE0,X\n#_1EC1BB: TAY\n\n#_1EC1BC: LDA.w .anim_step,Y\n#_1EC1BF: STA.w $0DC0,X\n\n#_1EC1C2: LDA.w $0F50,X\n#_1EC1C5: AND.b #$BF\n#_1EC1C7: ORA.w .flip,Y\n#_1EC1CA: STA.w $0F50,X\n\n#_1EC1CD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kodongo_ShootFire", + "code": "Kodongo_ShootFire:\n#_1EC1D6: LDA.w $0DF0,X\n#_1EC1D9: BNE .wait\n\n#_1EC1DB: STZ.w $0D80,X\n\n.wait\n#_1EC1DE: LDY.b #$00\n\n#_1EC1E0: SEC\n#_1EC1E1: SBC.b #$20\n\n#_1EC1E3: CMP.b #$30\n#_1EC1E5: BCS .wait_more\n\n#_1EC1E7: LDY.b #$04\n\n.wait_more\n#_1EC1E9: CPY.b #$04\n#_1EC1EB: BNE .dont_fire\n\n#_1EC1ED: LDA.w $0DF0,X\n#_1EC1F0: AND.b #$0F\n#_1EC1F2: BNE .dont_fire\n\n#_1EC1F4: PHY\n\n#_1EC1F5: JSR Kodongo_SpawnFire\n\n#_1EC1F8: PLY\n\n.dont_fire\n#_1EC1F9: TYA\n#_1EC1FA: ORA.w $0DE0,X\n#_1EC1FD: TAY\n\n#_1EC1FE: LDA.w .anim_step,Y\n#_1EC201: STA.w $0DC0,X\n\n#_1EC204: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kodongo_SpawnFire", + "code": "Kodongo_SpawnFire:\n#_1EC223: LDA.b #$87 ; SPRITE 87\n#_1EC225: LDY.b #$0D\n#_1EC227: JSL Sprite_SpawnDynamically_slot_limited\n#_1EC22B: BMI .no_space\n\n#_1EC22D: PHX\n\n#_1EC22E: LDA.w $0DE0,X\n#_1EC231: TAX\n\n#_1EC232: LDA.b $00\n#_1EC234: CLC\n#_1EC235: ADC.w .offset_x_low,X\n#_1EC238: STA.w $0D10,Y\n\n#_1EC23B: LDA.b $01\n#_1EC23D: ADC.w .offset_x_high,X\n#_1EC240: STA.w $0D30,Y\n\n#_1EC243: LDA.b $02\n#_1EC245: CLC\n#_1EC246: ADC.w .offset_y_low,X\n#_1EC249: STA.w $0D00,Y\n\n#_1EC24C: LDA.b $03\n#_1EC24E: ADC.w .offset_y_high,X\n#_1EC251: STA.w $0D20,Y\n\n#_1EC254: LDA.w .speed_x,X\n#_1EC257: STA.w $0D50,Y\n\n#_1EC25A: LDA.w .speed_y,X\n#_1EC25D: STA.w $0D40,Y\n\n#_1EC260: LDA.b #$01\n#_1EC262: STA.w $0BA0,Y\n\n#_1EC265: PLX\n\n.no_space\n#_1EC266: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_CheckDamageToAndFromLink_Bank1E", + "code": "Sprite_CheckDamageToAndFromLink_Bank1E:\n#_1EC267: JSL Sprite_CheckDamageFromLink_long\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_CheckDamageToLink_Bank1E", + "code": "Sprite_CheckDamageToLink_Bank1E:\n#_1EC26B: JSL Sprite_CheckDamageToLink_long\n\n#_1EC26F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_87_KodongoFire", + "code": "Sprite_87_KodongoFire:\n#_1EC274: LDA.w $0DF0,X\n#_1EC277: BNE LingeringFlame\n\n#_1EC279: JSL SpriteDraw_SingleLarge_long\n#_1EC27D: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EC280: LDA.b $1A\n#_1EC282: LSR A\n#_1EC283: LSR A\n#_1EC284: AND.b #$03\n#_1EC286: TAY\n\n#_1EC287: LDA.w $0F50,X\n#_1EC28A: AND.b #$3F\n#_1EC28C: ORA.w .flip,Y\n#_1EC28F: STA.w $0F50,X\n\n#_1EC292: JSR Sprite_CheckDamageToLink_Bank1E\n#_1EC295: BCS .collided\n\n#_1EC297: JSR Sprite_Move_XY_Bank1E\n#_1EC29A: JSR Sprite_CheckTileCollision_Bank1E\n#_1EC29D: BNE .collided\n\n#_1EC29F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LingeringFlameDrawStep", + "code": "LingeringFlameDrawStep:\n#_1EC2B4: db $05, $04, $03, $01, $02, $00, $03, $00\n#_1EC2BC: db $01, $02, $03, $00, $01, $02, $03, $00\n#_1EC2C4: db $01, $02, $03, $00, $01, $02, $03, $00\n#_1EC2CC: db $01, $02, $03, $00, $01, $02, $03, $00\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "LingeringFlame", + "code": "LingeringFlame:\n#_1EC2D4: JSL Sprite_CheckDamageFromLink_long\n#_1EC2D8: BCC .nohit\n\n#_1EC2DA: DEC.w $0DF0,X\n#_1EC2DD: BEQ .extinguish\n\n.nohit\n#_1EC2DF: LDA.w $0DF0,X\n#_1EC2E2: DEC A\n#_1EC2E3: BNE .continue_burning\n\n.extinguish\n#_1EC2E5: STZ.w $0DD0,X\n\n.continue_burning\n#_1EC2E8: LDA.w $0DF0,X\n#_1EC2EB: LSR A\n#_1EC2EC: LSR A\n#_1EC2ED: LSR A\n#_1EC2EE: TAY\n\n#_1EC2EF: LDA.w LingeringFlameDrawStep,Y\n#_1EC2F2: STA.w $0DC0,X\n\n#_1EC2F5: JSL SpriteDraw_Flame\n#_1EC2F9: JMP.w Sprite_CheckDamageToLink_Bank1E\n\n; =========================================================\n\npool SpriteDraw_Flame\n\n.oam_groups\n#_1EC2FC: dw 0, 0 : db $8E, $01, $00, $02\n#_1EC304: dw 0, 0 : db $8E, $01, $00, $02\n\n#_1EC30C: dw 0, 0 : db $A0, $01, $00, $02\n#_1EC314: dw 0, 0 : db $A0, $01, $00, $02\n\n#_1EC31C: dw 0, 0 : db $8E, $41, $00, $02\n#_1EC324: dw 0, 0 : db $8E, $41, $00, $02\n\n#_1EC32C: dw 0, 0 : db $A0, $41, $00, $02\n#_1EC334: dw 0, 0 : db $A0, $41, $00, $02\n\n#_1EC33C: dw 0, 0 : db $A2, $01, $00, $02\n#_1EC344: dw 0, 0 : db $A2, $01, $00, $02\n\n#_1EC34C: dw 0, -6 : db $A4, $01, $00, $00\n#_1EC354: dw 8, -6 : db $A5, $01, $00, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Flame", + "code": "SpriteDraw_Flame:\n#_1EC35C: PHB\n#_1EC35D: PHK\n#_1EC35E: PLB\n\n#_1EC35F: LDA.b #$00\n#_1EC361: XBA\n#_1EC362: LDA.w $0DC0,X\n\n#_1EC365: REP #$20\n\n#_1EC367: ASL A\n#_1EC368: ASL A\n#_1EC369: ASL A\n#_1EC36A: ASL A\n\n#_1EC36B: ADC.w #.oam_groups\n#_1EC36E: STA.b $08\n\n#_1EC370: SEP #$20\n\n#_1EC372: LDA.b #$02\n#_1EC374: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EC377: PLB\n\n#_1EC378: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_85_YellowStalfos", + "code": "Sprite_85_YellowStalfos:\n#_1EC37F: LDA.w $0D90,X\n#_1EC382: BNE .tile_already_checked\n\n#_1EC384: LDA.b #$01\n#_1EC386: STA.w $0D50,X\n#_1EC389: STA.w $0D40,X\n\n#_1EC38C: JSR Sprite_CheckTileCollision_Bank1E\n#_1EC38F: BEQ .can_spawn\n\n#_1EC391: STZ.w $0DD0,X\n\n#_1EC394: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_Descend", + "code": "YellowStalfos_Descend:\n#_1EC3FB: LDA.b #$02\n#_1EC3FD: STA.w $0EB0,X\n\n#_1EC400: LDA.w $0F70,X\n#_1EC403: PHA\n\n#_1EC404: JSR Sprite_Move_Z_Bank1E\n\n#_1EC407: LDA.w $0F80,X\n#_1EC40A: CMP.b #$C0\n#_1EC40C: BMI .at_max_z_speed\n\n#_1EC40E: SEC\n#_1EC40F: SBC.b #$03\n#_1EC411: STA.w $0F80,X\n\n.at_max_z_speed\n#_1EC414: PLA\n#_1EC415: EOR.w $0F70,X\n#_1EC418: BPL .exit\n\n#_1EC41A: LDA.w $0F70,X\n#_1EC41D: BPL .exit\n\n#_1EC41F: INC.w $0D80,X\n\n#_1EC422: STZ.w $0F70,X\n#_1EC425: STZ.w $0F80,X\n\n#_1EC428: LDA.b #$40\n#_1EC42A: STA.w $0DF0,X\n\n#_1EC42D: JSR YellowStalfos_Animate\n\n.exit\n#_1EC430: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_TrackLink", + "code": "YellowStalfos_TrackLink:\n#_1EC431: STZ.w $0BA0,X\n\n#_1EC434: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EC437: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EC43A: TYA\n#_1EC43B: STA.w $0DE0,X\n#_1EC43E: STA.w $0EB0,X\n\n#_1EC441: LDA.w $0DF0,X\n#_1EC444: BNE YellowStalfos_MakeVulnerable\n\n#_1EC446: INC.w $0D80,X\n\n#_1EC449: LDA.b #$7F\n#_1EC44B: STA.w $0DF0,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_MakeVulnerable", + "code": "YellowStalfos_MakeVulnerable:\n#_1EC44E: LDA.w $0E60,X\n#_1EC451: AND.b #$BF\n#_1EC453: STA.w $0E60,X\n\n#_1EC456: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_DecapitateSelf", + "code": "YellowStalfos_DecapitateSelf:\n#_1EC4B7: STZ.w $0BA0,X\n\n#_1EC4BA: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EC4BD: LDA.w $0DF0,X\n#_1EC4C0: BNE .delay\n\n#_1EC4C2: INC.w $0D80,X\n\n#_1EC4C5: LDA.b #$40\n#_1EC4C7: STA.w $0DF0,X\n\n#_1EC4CA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_RegretDecapitatingSelf", + "code": "YellowStalfos_RegretDecapitatingSelf:\n#_1EC4FB: STZ.w $0BA0,X\n\n#_1EC4FE: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EC501: LDA.w $0DF0,X\n#_1EC504: BNE YellowStalfos_Animate\n\n#_1EC506: INC.w $0D80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_Animate", + "code": "YellowStalfos_Animate:\n#_1EC509: LDY.w $0DE0,X\n\n#_1EC50C: LDA.w .step,Y\n#_1EC50F: STA.w $0DC0,X\n\n#_1EC512: JMP.w YellowStalfos_MakeVulnerable\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_Ascend", + "code": "YellowStalfos_Ascend:\n#_1EC515: STZ.w $0DC0,X\n\n#_1EC518: LDA.b #$02\n#_1EC51A: STA.w $0EB0,X\n\n#_1EC51D: LDA.w $0F70,X\n#_1EC520: PHA\n\n#_1EC521: JSR Sprite_Move_Z_Bank1E\n\n#_1EC524: LDA.w $0F80,X\n#_1EC527: CMP.b #$40\n#_1EC529: BPL .at_max_z_speed\n\n#_1EC52B: INC A\n#_1EC52C: INC A\n#_1EC52D: STA.w $0F80,X\n\n.at_max_z_speed\n#_1EC530: PLA\n#_1EC531: EOR.w $0F70,X\n#_1EC534: BPL .exit\n\n#_1EC536: LDA.w $0F70,X\n#_1EC539: BMI .exit\n\n#_1EC53B: STZ.w $0DD0,X\n\n.exit\n#_1EC53E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_Collapsed", + "code": "YellowStalfos_Collapsed:\n#_1EC55F: STZ.w $0BA0,X\n\n#_1EC562: JSL Sprite_CheckDamageFromLink_long\n\n#_1EC566: LDA.w $0DF0,X\n#_1EC569: BNE .delay\n\n#_1EC56B: DEC.w $0D80,X\n\n.delay\n#_1EC56E: LSR A\n#_1EC56F: LSR A\n#_1EC570: LSR A\n#_1EC571: LSR A\n#_1EC572: TAY\n\n#_1EC573: LDA.w .anim_step,Y\n#_1EC576: STA.w $0DC0,X\n\n#_1EC579: LDA.w .head_offset,Y\n#_1EC57C: STA.w $0DB0,X\n\n#_1EC57F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "YellowStalfos_EmancipateHead", + "code": "YellowStalfos_EmancipateHead:\n#_1EC580: LDA.b #$02 ; SPRITE 02\n#_1EC582: JSL Sprite_SpawnDynamically\n#_1EC586: BMI .no_space\n\n#_1EC588: JSL Sprite_SetSpawnedCoordinates\n\n#_1EC58C: LDA.b #$0D\n#_1EC58E: STA.w $0F70,Y\n\n#_1EC591: PHX\n#_1EC592: TYX\n\n#_1EC593: LDA.b #$10\n#_1EC595: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1EC599: PLX\n\n#_1EC59A: LDA.b #$FF\n#_1EC59C: STA.w $0DF0,Y\n\n#_1EC59F: LDA.b #$20\n#_1EC5A1: STA.w $0E00,Y\n\n.no_space\n#_1EC5A4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_YellowStalfos", + "code": "SpriteDraw_YellowStalfos:\n#_1EC655: LDA.b #$00\n#_1EC657: XBA\n#_1EC658: LDA.w $0DC0,X\n\n#_1EC65B: REP #$20\n\n#_1EC65D: ASL A\n#_1EC65E: ASL A\n#_1EC65F: ASL A\n#_1EC660: ASL A\n#_1EC661: ADC.w #.oam_groups\n#_1EC664: STA.b $08\n\n#_1EC666: LDA.b $90\n#_1EC668: CLC\n#_1EC669: ADC.w #$0004\n#_1EC66C: STA.b $90\n\n#_1EC66E: INC.b $92\n\n#_1EC670: SEP #$20\n\n#_1EC672: LDA.b #$02\n#_1EC674: JSR SpriteDraw_Tabulated_Bank1E\n\n; ---------------------------------------------------------\n\n#_1EC677: REP #$20\n\n#_1EC679: LDA.b $90\n#_1EC67B: SEC\n#_1EC67C: SBC.w #$0004\n#_1EC67F: STA.b $90\n\n#_1EC681: DEC.b $92\n\n#_1EC683: SEP #$20\n\n#_1EC685: LDA.w $0F00,X\n#_1EC688: BNE .no_head\n\n#_1EC68A: JSR .draw_head\n#_1EC68D: JSL SpriteDraw_Shadow_long\n\n.no_head\n#_1EC691: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpritePrep_Eyegore", + "code": "SpritePrep_Eyegore:\n#_1EC700: LDA.w $048E\n\n#_1EC703: CMP.b #$0C ; ROOM 010C\n#_1EC705: BEQ .become_mimic\n\n#_1EC707: CMP.b #$1B ; ROOM 001B\n#_1EC709: BEQ .become_mimic\n\n#_1EC70B: CMP.b #$4B ; ROOM 004B\n#_1EC70D: BEQ .become_mimic\n\n#_1EC70F: CMP.b #$6B ; ROOM 006B\n#_1EC711: BNE .exit\n\n.become_mimic\n#_1EC713: INC.w $0DA0,X\n\n#_1EC716: LDA.w $0E20,X\n#_1EC719: CMP.b #$83 ; SPRITE 83\n#_1EC71B: BNE .exit\n\n#_1EC71D: STZ.w $0CAA,X\n\n.exit\n#_1EC720: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Mimic", + "code": "Mimic:\n\n.speed_x\n#_1EC721: db 0, 16, -16, 0, 0, 13, -13, 0\n#_1EC729: db 0, 13, -13, 0, 0, 0, 0, 0\n\n#_1EC731: db 0, -24, 24, 0, 0, -16, 16, 0\n#_1EC739: db 0, -16, 16, 0, 0, 0, 0, 0\n\n.speed_y\n#_1EC741: db 0, 0, 0, 0, -16, -5, -5, 0\n#_1EC749: db 16, 13, 13, 0, 0, 0, 0, 0\n\n#_1EC751: db 0, 0, 0, 0, -24, -16, -16, 0\n#_1EC759: db 24, 16, 16, 0, 0, 0, 0, 0\n\n.direction\n#_1EC761: db $00, $00, $01, $00, $03, $03, $03, $00\n#_1EC769: db $02, $02, $02, $00, $00, $00, $00, $00\n\n#_1EC771: db $00, $01, $00, $00, $03, $03, $03, $00\n#_1EC779: db $02, $02, $02, $00, $00, $00, $00, $00\n\n.anim_step\n#_1EC781: db $08, $06, $00, $03, $09, $07, $01, $04\n\n#_1EC789: db $08, $06, $00, $03, $09, $07, $02, $05\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Mimic_Stationary", + "code": "Mimic_Stationary:\n#_1EC791: STZ.w $0D90,X\n\n#_1EC794: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EC797: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EC79A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_83_GreenEyegore", + "code": "Sprite_83_GreenEyegore:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_84_RedEyegore", + "code": "Sprite_84_RedEyegore:\n#_1EC79B: LDA.w $0DA0,X\n#_1EC79E: BNE Mimic_Main\n\n#_1EC7A0: JMP.w Eyegore_Main\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Mimic_Main", + "code": "Mimic_Main:\n#_1EC7A3: JSL SpriteDraw_Mimic\n#_1EC7A7: JSR Sprite_CheckIfActive_Bank1E\n#_1EC7AA: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1EC7AD: LDA.w $0E00,X\n#_1EC7B0: BEQ .dont_shoot\n\n#_1EC7B2: CMP.b #$08\n#_1EC7B4: BNE .dont_shoot\n\n#_1EC7B6: JSL Sprite_SpawnFirePhlegm\n\n; ---------------------------------------------------------\n\n.dont_shoot\n#_1EC7BA: LDA.w $0048\n#_1EC7BD: CMP.b #$00\n#_1EC7BF: BNE Mimic_Stationary\n\n#_1EC7C1: LDY.w $0E20,X\n\n#_1EC7C4: LDA.b $F0\n#_1EC7C6: AND.b #$0F\n#_1EC7C8: BEQ Mimic_Stationary\n\n#_1EC7CA: CPY.b #$84 ; SPRITE 84\n#_1EC7CC: BNE .not_red_mimic\n\n#_1EC7CE: ORA.b #$10\n\n; ---------------------------------------------------------\n\n.not_red_mimic\n#_1EC7D0: TAY\n\n#_1EC7D1: LDA.w Mimic_direction,Y\n#_1EC7D4: STA.w $0DE0,X\n\n#_1EC7D7: LDA.w Mimic_speed_x,Y\n#_1EC7DA: STA.w $0D50,X\n\n#_1EC7DD: LDA.w Mimic_speed_y,Y\n#_1EC7E0: STA.w $0D40,X\n\n#_1EC7E3: LDA.w $0E70,X\n#_1EC7E6: BNE .tile_collision\n\n#_1EC7E8: JSR Sprite_Move_XY_Bank1E\n\n.tile_collision\n#_1EC7EB: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n#_1EC7EE: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1EC7F1: INC.w $0E80,X\n\n#_1EC7F4: LDA.w $0E80,X\n#_1EC7F7: AND.b #$0C\n#_1EC7F9: ORA.w $0DE0,X\n#_1EC7FC: TAY\n\n#_1EC7FD: LDA.w Mimic_anim_step,Y\n#_1EC800: STA.w $0DC0,X\n\n#_1EC803: LDA.w $0E20,X\n#_1EC806: CMP.b #$84 ; SPRITE 84\n#_1EC808: BNE .dont_prep_shot\n\n#_1EC80A: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1EC80D: LDA.b $0F\n#_1EC80F: CLC\n#_1EC810: ADC.b #$08\n\n#_1EC812: CMP.b #$10\n#_1EC814: BCC .link_in_sight\n\n#_1EC816: LDA.b $0E\n#_1EC818: CLC\n#_1EC819: ADC.b #$08\n\n#_1EC81B: CMP.b #$10\n#_1EC81D: BCS .dont_prep_shot\n\n; ---------------------------------------------------------\n\n.link_in_sight\n#_1EC81F: TYA\n#_1EC820: CMP.w $0DE0,X\n#_1EC823: BNE .dont_prep_shot\n\n#_1EC825: LDA.w $0D90,X\n#_1EC828: AND.b #$1F\n#_1EC82A: BNE .need_to_charge\n\n#_1EC82C: LDA.b #$10\n#_1EC82E: STA.w $0E00,X\n\n.need_to_charge\n#_1EC831: INC.w $0D90,X\n\n#_1EC834: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Eyegore_Main", + "code": "Eyegore_Main:\n#_1EC839: JSR SpriteDraw_Eyegore\n#_1EC83C: JSR Sprite_CheckIfActive_Bank1E\n#_1EC83F: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1EC842: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1EC845: LDA.w $0E60,X\n#_1EC848: ORA.b #$40\n#_1EC84A: STA.w $0E60,X\n\n#_1EC84D: LDA.w $0CAA,X\n#_1EC850: ORA.b #$04\n#_1EC852: STA.w $0CAA,X\n\n#_1EC855: LDA.w $0D80,X\n#_1EC858: JSL JumpTableLocal\n#_1EC85C: dw Eyegore_Dormant\n#_1EC85E: dw Eyegore_WakingUp\n#_1EC860: dw Eyegore_Chase\n#_1EC862: dw Eyegore_GoToSleep\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "EyegoreMovementTimer", + "code": "EyegoreMovementTimer:\n#_1EC864: db 96, 128, 160, 128\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Eyegore_Dormant", + "code": "Eyegore_Dormant:\n#_1EC868: LDA.w $0DF0,X\n#_1EC86B: BNE .exit\n\n#_1EC86D: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1EC870: LDA.b $0E\n#_1EC872: CLC\n#_1EC873: ADC.b #$30\n\n#_1EC875: CMP.b #$60\n#_1EC877: BCS .exit\n\n#_1EC879: LDA.b $0F\n#_1EC87B: CLC\n#_1EC87C: ADC.b #$30\n\n#_1EC87E: CMP.b #$60\n#_1EC880: BCS .exit\n\n#_1EC882: INC.w $0D80,X\n\n#_1EC885: LDA.b #$3F\n#_1EC887: STA.w $0DF0,X\n\n.exit\n#_1EC88A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Eyegore_WakingUp", + "code": "Eyegore_WakingUp:\n#_1EC893: LDA.w $0DF0,X\n#_1EC896: BNE .waking_up\n\n#_1EC898: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EC89B: TYA\n#_1EC89C: STA.w $0DE0,X\n\n#_1EC89F: INC.w $0D80,X\n\n#_1EC8A2: JSL GetRandomNumber\n#_1EC8A6: AND.b #$03\n#_1EC8A8: TAY\n\n#_1EC8A9: LDA.w EyegoreMovementTimer,Y\n#_1EC8AC: STA.w $0DF0,X\n\n#_1EC8AF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Eyegore_Chase", + "code": "Eyegore_Chase:\n#_1EC8CB: LDA.w $0E60,X\n#_1EC8CE: AND.b #$BF\n#_1EC8D0: STA.w $0E60,X\n\n#_1EC8D3: LDA.w $0E20,X\n#_1EC8D6: CMP.b #$84 ; SPRITE 84\n#_1EC8D8: BEQ .not_red\n\n#_1EC8DA: LDA.w $0CAA,X\n#_1EC8DD: AND.b #$FB\n#_1EC8DF: STA.w $0CAA,X\n\n.not_red\n#_1EC8E2: LDA.w $0DF0,X\n#_1EC8E5: BNE .continue_chase\n\n#_1EC8E7: LDA.b #$3F\n#_1EC8E9: STA.w $0DF0,X\n\n#_1EC8EC: INC.w $0D80,X\n\n#_1EC8EF: STZ.w $0DC0,X\n\n#_1EC8F2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Eyegore_GoToSleep", + "code": "Eyegore_GoToSleep:\n#_1EC936: LDA.w $0DF0,X\n#_1EC939: BNE .closing_eye\n\n#_1EC93B: STZ.w $0D80,X\n\n#_1EC93E: LDA.b #$60\n#_1EC940: STA.w $0DF0,X\n\n#_1EC943: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Eyegore", + "code": "SpriteDraw_Eyegore:\n#_1ECACF: LDA.b #$00\n#_1ECAD1: XBA\n#_1ECAD2: LDA.w $0DC0,X\n\n#_1ECAD5: REP #$20\n\n#_1ECAD7: ASL A\n#_1ECAD8: ASL A\n#_1ECAD9: ASL A\n#_1ECADA: ASL A\n#_1ECADB: ASL A\n\n#_1ECADC: ADC.w #.oam_groups\n#_1ECADF: STA.b $08\n\n#_1ECAE1: SEP #$20\n\n#_1ECAE3: LDA.b #$04\n#_1ECAE5: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1ECAE8: LDA.w $0F00,X\n#_1ECAEB: BNE .exit\n\n#_1ECAED: LDA.b #$0E\n#_1ECAEF: JSL SpriteDraw_Shadow_custom_long\n\n.exit\n#_1ECAF3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpritePrep_AntifairyCircle", + "code": "SpritePrep_AntifairyCircle:\n#_1ECB0C: LDA.w $0D10,X\n#_1ECB0F: SEC\n#_1ECB10: SBC.b #$0A\n#_1ECB12: STA.w $0D10,X\n\n#_1ECB15: LDA.w $0D30,X\n#_1ECB18: SBC.b #$00\n#_1ECB1A: STA.w $0D30,X\n\n#_1ECB1D: LDA.b #$EE\n#_1ECB1F: STA.w $0D40,X\n\n#_1ECB22: LDA.b #$00\n#_1ECB24: STA.w $0D50,X\n\n#_1ECB27: LDA.b #$00\n#_1ECB29: STA.w $0D90,X\n\n#_1ECB2C: LDA.b #$00\n#_1ECB2E: STA.w $0DA0,X\n\n#_1ECB31: LDA.b #$02\n#_1ECB33: STA.w $0FB5\n\n; ---------------------------------------------------------\n\n.next_bubble\n#_1ECB36: LDA.b #$82 ; SPRITE 82\n#_1ECB38: JSL Sprite_SpawnDynamically\n#_1ECB3C: BMI .no_space\n\n#_1ECB3E: PHX\n\n#_1ECB3F: LDX.w $0FB5\n\n#_1ECB42: LDA.b $00\n#_1ECB44: CLC\n#_1ECB45: ADC.l .offset_x_low,X\n#_1ECB49: STA.w $0D10,Y\n\n#_1ECB4C: LDA.b $01\n#_1ECB4E: ADC.l .offset_x_high,X\n#_1ECB52: STA.w $0D30,Y\n\n#_1ECB55: LDA.b $02\n#_1ECB57: CLC\n#_1ECB58: ADC.l .offset_y_low,X\n#_1ECB5C: STA.w $0D00,Y\n\n#_1ECB5F: LDA.b $03\n#_1ECB61: ADC.l .offset_y_high,X\n#_1ECB65: STA.w $0D20,Y\n\n#_1ECB68: LDA.l .speed_x,X\n#_1ECB6C: STA.w $0D50,Y\n\n#_1ECB6F: LDA.l .speed_y,X\n#_1ECB73: STA.w $0D40,Y\n\n#_1ECB76: LDA.l .polarity_x,X\n#_1ECB7A: STA.w $0D90,Y\n\n#_1ECB7D: LDA.l .polarity_y,X\n#_1ECB81: STA.w $0DA0,Y\n\n#_1ECB84: PLX\n\n.no_space\n#_1ECB85: DEC.w $0FB5\n#_1ECB88: BPL .next_bubble\n\n#_1ECB8A: RTL", + "file": "bank_1E.asm" + }, + { + "name": "UNREACHABLE_1ECB8B", + "code": "UNREACHABLE_1ECB8B:\n#_1ECB8B: db $00, $01, $00, $01, $00, $00, $40, $40\n\n; =========================================================\n\npool Sprite_82_AntifairyCircle\n\n.speed\n#_1ECB93: db 1, -1\n\n.speed_max\n#_1ECB95: db 18, -18\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_82_AntifairyCircle", + "code": "Sprite_82_AntifairyCircle:\n#_1ECB97: JSL SpriteDraw_Antfairy\n#_1ECB9B: JSR Sprite_CheckIfActive_Bank1E\n\n#_1ECB9E: LDA.w $0D90,X\n#_1ECBA1: AND.b #$01\n#_1ECBA3: TAY\n\n#_1ECBA4: LDA.w $0D50,X\n#_1ECBA7: CLC\n#_1ECBA8: ADC.w .speed,Y\n#_1ECBAB: STA.w $0D50,X\n\n#_1ECBAE: CMP.w .speed_max,Y\n#_1ECBB1: BNE .not_at_max_x\n\n#_1ECBB3: INC.w $0D90,X\n\n.not_at_max_x\n#_1ECBB6: LDA.w $0DA0,X\n#_1ECBB9: AND.b #$01\n#_1ECBBB: TAY\n\n#_1ECBBC: LDA.w $0D40,X\n#_1ECBBF: CLC\n#_1ECBC0: ADC.w .speed,Y\n#_1ECBC3: STA.w $0D40,X\n\n#_1ECBC6: CMP.w .speed_max,Y\n#_1ECBC9: BNE .not_at_max_y\n\n#_1ECBCB: INC.w $0DA0,X\n\n.not_at_max_y\n#_1ECBCE: JSR Sprite_Move_XY_Bank1E\n\n#_1ECBD1: LDA.w $0D50,X\n#_1ECBD4: BEQ .keep_circling\n\n#_1ECBD6: LDA.w $0D40,X\n#_1ECBD9: BEQ .keep_circling\n\n#_1ECBDB: JSL CheckIfRoomIsClear\n#_1ECBDF: BCC .keep_circling\n\n#_1ECBE1: LDA.b #$15 ; SPRITE 15\n#_1ECBE3: STA.w $0E20,X\n\n#_1ECBE6: LDA.b #$10\n#_1ECBE8: LDY.w $0D50,X\n#_1ECBEB: BPL .use_positive_x\n\n#_1ECBED: LDA.b #$F0\n\n.use_positive_x\n#_1ECBEF: STA.w $0D50,X\n\n#_1ECBF2: LDA.b #$10\n\n#_1ECBF4: LDY.w $0D40,X\n#_1ECBF7: BPL .use_positive_y\n\n#_1ECBF9: LDA.b #$F0\n\n.use_positive_y\n#_1ECBFB: STA.w $0D40,X\n\n.keep_circling\n#_1ECBFE: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1ECC01: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_81_Hover", + "code": "Sprite_81_Hover:\n#_1ECC02: LDA.w $0B89,X\n#_1ECC05: ORA.b #$30\n#_1ECC07: STA.w $0B89,X\n\n#_1ECC0A: JSL SpriteDraw_SingleLarge_long\n#_1ECC0E: JSR Sprite_CheckIfActive_Bank1E\n\n#_1ECC11: LDA.w $0EA0,X\n#_1ECC14: BEQ .not_recoiling\n\n#_1ECC16: STZ.w $0D80,X\n\n.not_recoiling\n#_1ECC19: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1ECC1C: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1ECC1F: LDA.w $0E70,X\n#_1ECC22: BNE .tile_collision\n\n#_1ECC24: JSR Sprite_Move_XY_Bank1E\n\n.tile_collision\n#_1ECC27: JSR Sprite_CheckTileCollision_Bank1E\n\n#_1ECC2A: INC.w $0E80,X\n\n#_1ECC2D: LDA.w $0E80,X\n#_1ECC30: LSR A\n#_1ECC31: LSR A\n#_1ECC32: LSR A\n#_1ECC33: AND.b #$02\n#_1ECC35: STA.w $0DC0,X\n\n#_1ECC38: LDA.w $0D80,X\n#_1ECC3B: JSL JumpTableLocal\n#_1ECC3F: dw Hover_Idle\n#_1ECC41: dw Hover_Move\n\n; =========================================================\n\npool Hover_Idle\n\n.flip\n#_1ECC43: db $40, $00, $40, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Hover_Idle", + "code": "Hover_Idle:\n#_1ECC47: LDA.w $0DF0,X\n#_1ECC4A: BNE .exit\n\n#_1ECC4C: INC.w $0D80,X\n\n#_1ECC4F: JSR Sprite_IsRightOfLink_Bank1E\n#_1ECC52: STY.b $0C\n\n#_1ECC54: JSR Sprite_IsBelowLink_Bank1E\n\n#_1ECC57: TYA\n#_1ECC58: ASL A\n#_1ECC59: ORA.b $0C\n#_1ECC5B: STA.w $0DE0,X\n\n#_1ECC5E: TAY\n\n#_1ECC5F: LDA.w $0F50,X\n#_1ECC62: AND.b #$BF\n#_1ECC64: ORA.w .flip,Y\n#_1ECC67: STA.w $0F50,X\n\n#_1ECC6A: JSL GetRandomNumber\n#_1ECC6E: AND.b #$0F\n#_1ECC70: ADC.b #$0C\n#_1ECC72: STA.w $0DF0,X\n\n#_1ECC75: JSR Sprite_ZeroVelocity_XY_Bank1E\n\n.exit\n#_1ECC78: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Hover_Move", + "code": "Hover_Move:\n#_1ECC89: LDA.w $0DF0,X\n#_1ECC8C: BEQ .decelerate\n\n#_1ECC8E: LDY.w $0DE0,X\n\n#_1ECC91: LDA.w $0D50,X\n#_1ECC94: CLC\n#_1ECC95: ADC.w .accel_x,Y\n#_1ECC98: STA.w $0D50,X\n\n#_1ECC9B: LDA.w $0D40,X\n#_1ECC9E: CLC\n#_1ECC9F: ADC.w .accel_y,Y\n#_1ECCA2: STA.w $0D40,X\n\n#_1ECCA5: LDA.w $0E80,X\n#_1ECCA8: LSR A\n#_1ECCA9: LSR A\n#_1ECCAA: LSR A\n#_1ECCAB: AND.b #$01\n#_1ECCAD: STA.w $0DC0,X\n\n#_1ECCB0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Palettes_Crystal", + "code": "Palettes_Crystal:\n#_1ECCD3: dw $0000, $3821, $4463, $54A5, $5CE7, $6D29, $79AD, $7E10\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "CrystalCutscene_Initialize", + "code": "CrystalCutscene_Initialize:\n#_1ECCE3: LDA.b #$33\n#_1ECCE5: STA.b $9A\n\n#_1ECCE7: LDA.b #$00\n#_1ECCE9: STA.l $7EC007\n#_1ECCED: STA.l $7EC009\n\n#_1ECCF1: PHX\n\n#_1ECCF2: JSL Palette_AssertTranslucencySwap\n#_1ECCF6: JSL PaletteFilter_Crystal\n\n#_1ECCFA: PLX\n\n#_1ECCFB: REP #$20\n\n#_1ECCFD: LDA.l Palettes_Crystal+0\n#_1ECD01: STA.l $7EC5E0\n\n#_1ECD05: LDA.l Palettes_Crystal+2\n#_1ECD09: STA.l $7EC5E2\n\n#_1ECD0D: LDA.l Palettes_Crystal+4\n#_1ECD11: STA.l $7EC5E4\n\n#_1ECD15: LDA.l Palettes_Crystal+6\n#_1ECD19: STA.l $7EC5E6\n\n#_1ECD1D: LDA.l Palettes_Crystal+8\n#_1ECD21: STA.l $7EC5E8\n\n#_1ECD25: LDA.l Palettes_Crystal+10\n#_1ECD29: STA.l $7EC5EA\n\n#_1ECD2D: LDA.l Palettes_Crystal+12\n#_1ECD31: STA.l $7EC5EC\n\n#_1ECD35: LDA.l Palettes_Crystal+14\n#_1ECD39: STA.l $7EC5EE\n\n#_1ECD3D: SEP #$30\n\n#_1ECD3F: INC.b $15\n\n#_1ECD41: JSR CrystalCutscene_SpawnMaiden\n#_1ECD44: JSR CrystalCutscene_InitializePolyhedral\n\n#_1ECD47: RTL", + "file": "bank_1E.asm" + }, + { + "name": "CrystalCutscene_SpawnMaiden", + "code": "CrystalCutscene_SpawnMaiden:\n#_1ECD48: LDY.b #$0F\n\n#_1ECD4A: LDA.b #$00\n\n.next_sprite\n#_1ECD4C: STA.w $0DD0,Y\n\n#_1ECD4F: DEY\n#_1ECD50: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n#_1ECD52: LDA.b #$AB ; SPRITE AB\n#_1ECD54: JSL Sprite_SpawnDynamically\n\n#_1ECD58: LDA.b $23\n#_1ECD5A: STA.w $0D30,Y\n\n#_1ECD5D: LDA.b $21\n#_1ECD5F: STA.w $0D20,Y\n\n#_1ECD62: LDA.b #$78\n#_1ECD64: STA.w $0D10,Y\n\n#_1ECD67: LDA.b #$7C\n#_1ECD69: STA.w $0D00,Y\n\n#_1ECD6C: LDA.b #$01\n#_1ECD6E: STA.w $0DE0,Y\n\n#_1ECD71: LDA.b #$0B\n#_1ECD73: STA.w $0F50,Y\n\n#_1ECD76: LDA.b #$00\n#_1ECD78: STA.w $0E80,Y\n#_1ECD7B: STA.w $0F20,Y\n\n#_1ECD7E: PHY\n\n#_1ECD7F: JSL Ancilla_TerminateSelectInteractives\n\n#_1ECD83: STZ.w $02E9\n\n#_1ECD86: TYA\n\n#_1ECD87: PLY\n\n#_1ECD88: STA.w $0D90,Y\n\n; ---------------------------------------------------------\n\n#_1ECD8B: LDA.w $040C\n#_1ECD8E: CMP.b #$18 ; DUNGEON 18\n#_1ECD90: BNE .not_zelda\n\n#_1ECD92: LDA.b #$09\n#_1ECD94: STA.w $0F50,Y\n\n#_1ECD97: LDA.b #$01 ; FOLLOWER 01\n\n#_1ECD99: BRA .load_gfx\n\n.not_zelda\n#_1ECD9B: LDA.b #$06 ; FOLLOWER 06\n\n.load_gfx\n#_1ECD9D: STA.l $7EF3CC\n\n#_1ECDA1: PHX\n\n#_1ECDA2: JSL LoadFollowerGraphics\n\n#_1ECDA6: PLX\n\n#_1ECDA7: LDA.b #$00\n#_1ECDA9: STA.l $7EF3CC\n\n#_1ECDAD: STZ.w $0428\n\n#_1ECDB0: REP #$20\n\n#_1ECDB2: LDA.b $22\n#_1ECDB4: SEC\n#_1ECDB5: SBC.b $E2\n#_1ECDB7: EOR.w #$FFFF\n#_1ECDBA: SEC\n#_1ECDBB: ADC.w #$0079\n#_1ECDBE: STA.w $0422\n\n#_1ECDC1: LDA.b $E6\n#_1ECDC3: AND.w #$00FF\n#_1ECDC6: STA.b $00\n\n#_1ECDC8: LDA.w #$0030\n#_1ECDCB: SEC\n#_1ECDCC: SBC.b $00\n#_1ECDCE: STA.w $0424\n\n#_1ECDD1: SEP #$30\n\n#_1ECDD3: LDA.b #$01\n#_1ECDD5: STA.w $0428\n\n#_1ECDD8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalCutscene_InitializePolyhedral", + "code": "CrystalCutscene_InitializePolyhedral:\n#_1ECDD9: LDA.b #$9C\n#_1ECDDB: STA.w $1F02\n\n#_1ECDDE: LDA.b #$01\n#_1ECDE0: STA.w $1F01\n#_1ECDE3: STA.w $012A\n#_1ECDE6: STA.w $1F00\n\n#_1ECDE9: LDA.b #$20\n#_1ECDEB: STA.w $1F06\n#_1ECDEE: STA.w $1F07\n#_1ECDF1: STA.w $1F08\n\n#_1ECDF4: STZ.w $1F03\n\n#_1ECDF7: LDA.b #$10\n#_1ECDF9: STA.w $1F04\n\n#_1ECDFC: STZ.b $1D\n#_1ECDFE: LDA.b #$16\n\n#_1ECE00: STA.b $1C\n\n#_1ECE02: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AB_CrystalMaiden", + "code": "Sprite_AB_CrystalMaiden:\n#_1ECE03: REP #$20\n\n#_1ECE05: LDA.w $0FD8\n#_1ECE08: SEC\n#_1ECE09: SBC.w $0422\n#_1ECE0C: STA.w $0FD8\n\n#_1ECE0F: LDA.w $0FDA\n#_1ECE12: SEC\n#_1ECE13: SBC.w $0424\n#_1ECE16: STA.w $0FDA\n\n#_1ECE19: SEP #$30\n\n#_1ECE1B: LDA.w $0D80,X\n#_1ECE1E: CMP.b #$03\n#_1ECE20: BCC .invisible\n\n#_1ECE22: JSL SpriteDraw_Maiden\n\n.invisible\n#_1ECE26: LDA.b #$01\n#_1ECE28: STA.w $012A\n\n#_1ECE2B: LDA.w $1F00\n#_1ECE2E: BNE .exit\n\n#_1ECE30: JSR CrystalMaiden_RunCutscene\n\n#_1ECE33: LDA.b #$01\n#_1ECE35: STA.w $1F00\n\n.exit\n#_1ECE38: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_RunCutscene", + "code": "CrystalMaiden_RunCutscene:\n#_1ECE39: INC.w $0E90,X\n\n#_1ECE3C: LDA.w $1F05\n#_1ECE3F: CLC\n#_1ECE40: ADC.b #$06\n#_1ECE42: STA.w $1F05\n\n#_1ECE45: LDA.b $11\n#_1ECE47: BEQ .continue\n\n#_1ECE49: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_DisableSubscreen", + "code": "CrystalMaiden_DisableSubscreen:\n#_1ECE63: STZ.b $1D\n\n#_1ECE65: INC.w $0D80,X\n\n#_1ECE68: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_EnableSubscreen", + "code": "CrystalMaiden_EnableSubscreen:\n#_1ECE69: LDA.b #$01\n#_1ECE6B: STA.b $1D\n\n#_1ECE6D: INC.w $0D80,X\n\n#_1ECE70: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_WaitForCrystalGrowth", + "code": "CrystalMaiden_WaitForCrystalGrowth:\n#_1ECE71: LDA.w $1F02\n#_1ECE74: CMP.b #$06\n#_1ECE76: BCS .wait\n\n#_1ECE78: STZ.w $1F02\n\n#_1ECE7B: INC.w $0D80,X\n\n#_1ECE7E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_Emerge", + "code": "CrystalMaiden_Emerge:\n#_1ECE93: INC.w $0D80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_DelaySpeech", + "code": "CrystalMaiden_DelaySpeech:\n#_1ECE96: LDA.w $0E90,X\n#_1ECE99: AND.b #$01\n#_1ECE9B: BNE .exit\n\n#_1ECE9D: PHX\n\n#_1ECE9E: JSL PaletteFilter_SP5F\n\n#_1ECEA2: PLX\n\n#_1ECEA3: LDA.l $7EC007\n#_1ECEA7: BNE .exit\n\n#_1ECEA9: INC.w $0D80,X\n\n#_1ECEAC: LDA.b #$01\n#_1ECEAE: STA.w $02E4\n\n#_1ECEB1: STZ.w $02D8\n#_1ECEB4: STZ.w $02DA\n\n#_1ECEB7: STZ.b $2E\n#_1ECEB9: STZ.b $2F\n\n.exit\n#_1ECEBB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_Messages", + "code": "CrystalMaiden_Messages:\n#_1ECEBC: dw $0133 ; MESSAGE 0133 - Swamp\n#_1ECEBE: dw $0132 ; MESSAGE 0132 - PoD\n#_1ECEC0: dw $0137 ; MESSAGE 0137 - Mire\n#_1ECEC2: dw $0134 ; MESSAGE 0134 - Skull\n#_1ECEC4: dw $0136 ; MESSAGE 0136 - Ice\n#_1ECEC6: dw $0132 ; MESSAGE 0132 - Hera\n#_1ECEC8: dw $0135 ; MESSAGE 0135 - Thieves\n#_1ECECA: dw $0138 ; MESSAGE 0138 - Turtle Rock\n#_1ECECC: dw $013C ; MESSAGE 013C - Turtle Rock every crystal\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_GiveSpeech", + "code": "CrystalMaiden_GiveSpeech:\n#_1ECECE: LDA.w $040C\n#_1ECED1: SEC\n#_1ECED2: SBC.b #$0A\n#_1ECED4: TAY\n\n#_1ECED5: CPY.b #$02\n#_1ECED7: BNE .dont_update_map\n\n#_1ECED9: LDA.l $7EF3C7\n\n#_1ECEDD: CMP.b #$07\n#_1ECEDF: BCS .dont_update_map\n\n#_1ECEE1: LDA.b #$07\n#_1ECEE3: STA.l $7EF3C7\n\n.dont_update_map\n#_1ECEE7: CPY.b #$0E\n#_1ECEE9: BNE .not_special_zelda_message\n\n#_1ECEEB: LDA.l $7EF37A\n#_1ECEEF: AND.b #$7F\n#_1ECEF1: CMP.b #$7F\n#_1ECEF3: BEQ .not_special_zelda_message\n\n#_1ECEF5: LDY.b #$10\n\n.not_special_zelda_message\n#_1ECEF7: LDA.w CrystalMaiden_Messages+0,Y\n#_1ECEFA: XBA\n\n#_1ECEFB: LDA.w CrystalMaiden_Messages+1,Y\n#_1ECEFE: TAY\n\n#_1ECEFF: XBA\n\n#_1ECF00: JSL Sprite_ShowMessageUnconditional\n\n#_1ECF04: INC.w $0D80,X\n\n#_1ECF07: LDA.l $7EF37A\n#_1ECF0B: AND.b #$7F\n#_1ECF0D: CMP.b #$7F\n#_1ECF0F: BNE .exit\n\n#_1ECF11: LDA.b #$08\n#_1ECF13: STA.l $7EF3C7\n\n.exit\n#_1ECF17: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_DoYouUnderstand", + "code": "CrystalMaiden_DoYouUnderstand:\n#_1ECF18: LDA.b #$3A ; MESSAGE 013A\n#_1ECF1A: LDY.b #$01\n#_1ECF1C: JSL Sprite_ShowMessageUnconditional\n\n#_1ECF20: INC.w $0D80,X\n\n#_1ECF23: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_GoodLuckKid", + "code": "CrystalMaiden_GoodLuckKid:\n#_1ECF24: LDA.w $1CE8\n#_1ECF27: BEQ .speech_was_CRYSTAL_clear\n\n#_1ECF29: LDA.b #$05\n#_1ECF2B: STA.w $0D80,X\n\n#_1ECF2E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CrystalMaiden_KickOutOfDungeon", + "code": "CrystalMaiden_KickOutOfDungeon:\n#_1ECF3B: STZ.b $1D\n\n#_1ECF3D: PHX\n\n#_1ECF3E: JSL PrepareDungeonExitFromBossFight\n\n#_1ECF42: PLX\n\n#_1ECF43: STZ.w $0DD0,X\n\n#_1ECF46: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7D_BigSpike", + "code": "Sprite_7D_BigSpike:\n#_1ECF47: JSR SpriteDraw_BigSpike\n#_1ECF4A: JSR Sprite_CheckIfActive_Bank1E\n#_1ECF4D: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1ECF50: LDA.w $0D80,X\n#_1ECF53: BNE .in_motion\n\n#_1ECF55: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1ECF58: TYA\n#_1ECF59: STA.w $0DE0,X\n\n#_1ECF5C: LDA.b $0F\n#_1ECF5E: CLC\n#_1ECF5F: ADC.b #$10\n\n#_1ECF61: CMP.b #$20\n#_1ECF63: BCS .not_close\n#_1ECF65: BRA .start_movement\n\n.not_close\n#_1ECF67: LDA.b $0E\n#_1ECF69: CLC\n#_1ECF6A: ADC.b #$10\n\n#_1ECF6C: CMP.b #$20\n#_1ECF6E: BCS .also_not_close\n\n.start_movement\n#_1ECF70: LDA.w .timer,Y\n#_1ECF73: STA.w $0DF0,X\n\n#_1ECF76: INC.w $0D80,X\n\n#_1ECF79: LDA.w .forward_speed_x,Y\n#_1ECF7C: STA.w $0D50,X\n\n#_1ECF7F: LDA.w .forward_speed_y,Y\n#_1ECF82: STA.w $0D40,X\n\n.also_not_close\n#_1ECF85: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_BigSpike", + "code": "SpriteDraw_BigSpike:\n#_1ECFFF: REP #$20\n\n#_1ED001: LDA.w #.oam_groups\n#_1ED004: STA.b $08\n\n#_1ED006: LDA.w #$0004\n#_1ED009: STA.b $06\n\n#_1ED00B: SEP #$30\n\n#_1ED00D: JSL SpriteDraw_Tabulated_preset_quantity\n\n#_1ED011: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7E_Firebar_Clockwise", + "code": "Sprite_7E_Firebar_Clockwise:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7F_Firebar_Counterclockwise", + "code": "Sprite_7F_Firebar_Counterclockwise:\n#_1ED01A: JSR Firebar_Main\n#_1ED01D: JSR Sprite_CheckIfActive_Bank1E\n\n#_1ED020: INC.w $0E80,X\n\n#_1ED023: LDA.w $0E20,X\n#_1ED026: SEC\n#_1ED027: SBC.b #$7E\n#_1ED029: TAY\n\n#_1ED02A: LDA.w $040C\n#_1ED02D: CMP.b #$12 ; DUNGEON 12\n#_1ED02F: BNE .not_ice_palace\n\n#_1ED031: INY\n#_1ED032: INY\n\n.not_ice_palace\n#_1ED033: LDA.w $0D90,X\n#_1ED036: CLC\n#_1ED037: ADC.w Firebar_offset_low,Y\n#_1ED03A: STA.w $0D90,X\n\n#_1ED03D: LDA.w $0DA0,X\n#_1ED040: ADC.w Firebar_offset_high,Y\n#_1ED043: AND.b #$01\n#_1ED045: STA.w $0DA0,X\n\n#_1ED048: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Firebar_Main", + "code": "Firebar_Main:\n#_1ED049: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1ED04C: LDA.b $05\n#_1ED04E: STA.w $0FB6\n\n#_1ED051: LDA.b $00\n#_1ED053: STA.w $0FA8\n\n#_1ED056: LDA.b $02\n#_1ED058: STA.w $0FA9\n\n#_1ED05B: LDA.w $0D90,X\n#_1ED05E: STA.b $00\n\n#_1ED060: LDA.w $0DA0,X\n#_1ED063: STA.b $01\n\n#_1ED065: LDA.b #$40\n#_1ED067: STA.b $0F\n\n#_1ED069: PHX\n\n; ---------------------------------------------------------\n\n#_1ED06A: REP #$30\n\n#_1ED06C: LDA.b $00\n#_1ED06E: AND.w #$01FF\n\n#_1ED071: LSR A\n#_1ED072: LSR A\n#_1ED073: LSR A\n#_1ED074: LSR A\n#_1ED075: LSR A\n#_1ED076: LSR A\n\n#_1ED077: STA.b $0A\n\n#_1ED079: LDA.b $00\n#_1ED07B: CLC\n#_1ED07C: ADC.w #$0080\n#_1ED07F: AND.w #$01FF\n#_1ED082: STA.b $02\n\n#_1ED084: LDA.b $00\n#_1ED086: AND.w #$00FF\n#_1ED089: ASL A\n#_1ED08A: TAX\n\n#_1ED08B: LDA.l SmoothCurve,X\n#_1ED08F: STA.b $04\n\n#_1ED091: LDA.b $02\n#_1ED093: AND.w #$00FF\n#_1ED096: ASL A\n#_1ED097: TAX\n\n#_1ED098: LDA.l SmoothCurve,X\n#_1ED09C: STA.b $06\n\n; ---------------------------------------------------------\n\n#_1ED09E: SEP #$30\n\n#_1ED0A0: PLX\n\n#_1ED0A1: LDA.b $04\n#_1ED0A3: STA.w WRMPYA\n\n#_1ED0A6: LDA.b $0F\n\n#_1ED0A8: LDY.b $05\n#_1ED0AA: BNE .nonzero_a\n\n#_1ED0AC: STA.w WRMPYB\n\n#_1ED0AF: JSR NOP8\n\n#_1ED0B2: ASL.w RDMPYL\n#_1ED0B5: LDA.w RDMPYH\n#_1ED0B8: ADC.b #$00\n\n.nonzero_a\n#_1ED0BA: STA.b $0E\n\n#_1ED0BC: LSR.b $01\n#_1ED0BE: BCC .dont_invert_a\n\n#_1ED0C0: EOR.b #$FF\n#_1ED0C2: INC A\n\n.dont_invert_a\n#_1ED0C3: STA.b $04\n\n; ---------------------------------------------------------\n\n#_1ED0C5: LDA.b $06\n#_1ED0C7: STA.w WRMPYA\n\n#_1ED0CA: LDA.b $0F\n\n#_1ED0CC: LDY.b $07\n#_1ED0CE: BNE .nonzero_b\n\n#_1ED0D0: STA.w WRMPYB\n\n#_1ED0D3: JSR NOP8\n\n#_1ED0D6: ASL.w RDMPYL\n#_1ED0D9: LDA.w RDMPYH\n#_1ED0DC: ADC.b #$00\n\n.nonzero_b\n#_1ED0DE: STA.b $0F\n\n#_1ED0E0: LSR.b $03\n#_1ED0E2: BCC .dont_invert_b\n\n#_1ED0E4: EOR.b #$FF\n#_1ED0E6: INC A\n\n.dont_invert_b\n#_1ED0E7: STA.b $06\n\n; ---------------------------------------------------------\n\n#_1ED0E9: LDA.w $0E80,X\n\n#_1ED0EC: ASL A\n#_1ED0ED: ASL A\n#_1ED0EE: ASL A\n#_1ED0EF: ASL A\n\n#_1ED0F0: AND.b #$C0\n#_1ED0F2: ORA.w $0FB6\n#_1ED0F5: STA.b $0D\n\n#_1ED0F7: LDY.b #$00\n\n#_1ED0F9: LDA.b $04\n#_1ED0FB: CLC\n#_1ED0FC: ADC.w $0FA8\n#_1ED0FF: STA.b ($90),Y\n\n#_1ED101: LDA.b $06\n#_1ED103: CLC\n#_1ED104: ADC.w $0FA9\n\n#_1ED107: INY\n#_1ED108: STA.b ($90),Y\n\n#_1ED10A: LDA.b #$28\n#_1ED10C: INY\n#_1ED10D: STA.b ($90),Y\n\n#_1ED10F: LDA.b $0D\n#_1ED111: INY\n#_1ED112: STA.b ($90),Y\n\n#_1ED114: LDA.b #$02\n#_1ED116: STA.b ($92)\n\n; ---------------------------------------------------------\n\n#_1ED118: LDY.b #$04\n\n#_1ED11A: PHX\n\n#_1ED11B: LDX.b #$02\n\n.next_object_a\n#_1ED11D: LDA.b $0E\n#_1ED11F: STA.w WRMPYA\n\n#_1ED122: LDA.w .mutliplier,X\n#_1ED125: STA.w WRMPYB\n\n#_1ED128: JSR NOP8\n\n#_1ED12B: LDA.b $04\n#_1ED12D: ASL A\n#_1ED12E: LDA.w RDMPYH\n#_1ED131: BCC .dont_invert_c\n\n#_1ED133: EOR.b #$FF\n#_1ED135: INC A\n\n.dont_invert_c\n#_1ED136: CLC\n#_1ED137: ADC.w $0FA8\n#_1ED13A: STA.b ($90),Y\n\n#_1ED13C: LDA.b $0F\n#_1ED13E: STA.w WRMPYA\n\n#_1ED141: LDA.w .mutliplier,X\n#_1ED144: STA.w WRMPYB\n\n#_1ED147: JSR NOP8\n\n#_1ED14A: LDA.b $06\n#_1ED14C: ASL A\n#_1ED14D: LDA.w RDMPYH\n#_1ED150: BCC .dont_invert_d\n\n#_1ED152: EOR.b #$FF\n#_1ED154: INC A\n\n.dont_invert_d\n#_1ED155: CLC\n#_1ED156: ADC.w $0FA9\n\n#_1ED159: INY\n#_1ED15A: STA.b ($90),Y\n\n#_1ED15C: LDA.b #$28\n#_1ED15E: INY\n#_1ED15F: STA.b ($90),Y\n\n#_1ED161: LDA.b $0D\n#_1ED163: INY\n#_1ED164: STA.b ($90),Y\n\n#_1ED166: PHY\n\n#_1ED167: TYA\n#_1ED168: LSR A\n#_1ED169: LSR A\n#_1ED16A: TAY\n\n#_1ED16B: LDA.b #$02\n#_1ED16D: STA.b ($92),Y\n\n#_1ED16F: PLY\n#_1ED170: INY\n\n#_1ED171: DEX\n#_1ED172: BPL .next_object_a\n\n; ---------------------------------------------------------\n\n#_1ED174: PLX\n\n#_1ED175: LDY.b #$FF\n#_1ED177: LDA.b #$03\n#_1ED179: JSL Sprite_CorrectOAMEntries_long\n\n#_1ED17D: TXA\n#_1ED17E: EOR.b $1A\n#_1ED180: AND.b #$03\n\n#_1ED182: ORA.b $11\n#_1ED184: ORA.w $0FC1\n#_1ED187: BNE .exit\n\n#_1ED189: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.next_segment\n#_1ED18B: PHY\n\n#_1ED18C: TYA\n#_1ED18D: LSR A\n#_1ED18E: LSR A\n#_1ED18F: TAY\n\n#_1ED190: LDA.b ($92),Y\n#_1ED192: PLY\n#_1ED193: AND.b #$01\n#_1ED195: BNE .no_damage\n\n#_1ED197: LDA.b ($90),Y\n#_1ED199: CLC\n#_1ED19A: ADC.b $E2\n\n#_1ED19C: SEC\n#_1ED19D: SBC.b $22\n\n#_1ED19F: CLC\n#_1ED1A0: ADC.b #$0C\n\n#_1ED1A2: CMP.b #$18\n#_1ED1A4: BCS .no_damage\n\n#_1ED1A6: INY\n#_1ED1A7: LDA.b ($90),Y\n\n#_1ED1A9: DEY\n\n#_1ED1AA: CMP.b #$F0\n#_1ED1AC: BCS .no_damage\n\n#_1ED1AE: CLC\n#_1ED1AF: ADC.b $E8\n\n#_1ED1B1: SEC\n#_1ED1B2: SBC.b $20\n\n#_1ED1B4: CLC\n#_1ED1B5: ADC.b #$04\n\n#_1ED1B7: CMP.b #$10\n#_1ED1B9: BCS .no_damage\n\n#_1ED1BB: PHY\n#_1ED1BC: JSL Sprite_AttemptDamageToLinkPlusRecoil_long\n#_1ED1C0: PLY\n\n.no_damage\n#_1ED1C1: INY\n#_1ED1C2: INY\n#_1ED1C3: INY\n#_1ED1C4: INY\n\n#_1ED1C5: CPY.b #$10\n#_1ED1C7: BCC .next_segment\n\n.exit\n#_1ED1C9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_80_Firesnake", + "code": "Sprite_80_Firesnake:\n#_1ED1D1: JSL SpriteDraw_SingleLarge_long\n#_1ED1D5: JSR Sprite_CheckIfActive_Bank1E\n#_1ED1D8: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1ED1DB: LDA.b $1A\n#_1ED1DD: LSR A\n#_1ED1DE: LSR A\n#_1ED1DF: AND.b #$03\n#_1ED1E1: TAY\n\n#_1ED1E2: LDA.w $0F50,X\n#_1ED1E5: AND.b #$3F\n#_1ED1E7: ORA.w .flip,Y\n#_1ED1EA: STA.w $0F50,X\n\n#_1ED1ED: LDA.w $0D90,X\n#_1ED1F0: BEQ .main\n\n#_1ED1F2: LDA.w $0DF0,X\n#_1ED1F5: STA.w $0BA0,X\n#_1ED1F8: BNE .exit\n\n#_1ED1FA: STZ.w $0DD0,X\n\n.exit\n#_1ED1FD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Firesnake_SpawnFireball", + "code": "Firesnake_SpawnFireball:\n#_1ED239: TXA\n#_1ED23A: EOR.b $1A\n#_1ED23C: AND.b #$07\n#_1ED23E: BNE .exit\n\n#_1ED240: PHX\n#_1ED241: TXY\n\n#_1ED242: LDX.b #$1D\n\n.next_slot\n#_1ED244: LDA.l $7FF800,X\n#_1ED248: BEQ .free_slot\n\n#_1ED24A: DEX\n#_1ED24B: BPL .next_slot\n\n#_1ED24D: PLX\n\n#_1ED24E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7C_GreenStalfos", + "code": "Sprite_7C_GreenStalfos:\n#_1ED299: LDY.w $0DE0,X\n\n#_1ED29C: LDA.w $0F50,X\n#_1ED29F: AND.b #$BF\n#_1ED2A1: ORA.w .flip,Y\n#_1ED2A4: STA.w $0F50,X\n\n#_1ED2A7: LDA.w .anim_step,Y\n#_1ED2AA: STA.w $0DC0,X\n\n#_1ED2AD: JSL SpriteDraw_SingleLarge_long\n#_1ED2B1: JSR Sprite_CheckIfActive_Bank1E\n#_1ED2B4: JSR Sprite_CheckIfRecoiling_Bank1E\n#_1ED2B7: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1ED2BA: STZ.w $0D90,X\n\n#_1ED2BD: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1ED2C0: LDA.w .direction,Y\n#_1ED2C3: CMP.w $002F\n#_1ED2C6: BEQ .link_facing_me\n\n#_1ED2C8: TXA\n#_1ED2C9: EOR.b $1A\n#_1ED2CB: AND.b #$07\n#_1ED2CD: BNE .dont_turn\n\n#_1ED2CF: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1ED2D2: TYA\n#_1ED2D3: STA.w $0DE0,X\n\n#_1ED2D6: LDA.w $0DA0,X\n#_1ED2D9: CMP.b #$04\n#_1ED2DB: BEQ .at_max\n\n#_1ED2DD: INC.w $0DA0,X\n\n.at_max\n#_1ED2E0: JSL Sprite_ApplySpeedTowardsLink_long\n\n#_1ED2E4: JSR Sprite_IsRightOfLink_Bank1E\n#_1ED2E7: TYA\n#_1ED2E8: STA.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.dont_turn\n#_1ED2EB: JSR Sprite_Move_XY_Bank1E\n\n#_1ED2EE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_Direction", + "code": "Agahnim_Direction:\n#_1ED310: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1ED318: db $00, $00, $05, $05, $00, $01, $01, $04\n#_1ED320: db $04, $00, $02, $02, $04, $04, $03, $02\n#_1ED328: db $02\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_DirectionStepOffset", + "code": "Agahnim_DirectionStepOffset:\n#_1ED329: db $02, $0A, $08, $00, $04, $06, $FA\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7A_Agahnim", + "code": "Sprite_7A_Agahnim:\n#_1ED330: JSR SpriteDraw_Agahnim\n\n#_1ED333: LDA.w $0F00,X\n#_1ED336: BEQ .active\n\n#_1ED338: LDA.b #$20\n#_1ED33A: STA.w $0DF0,X\n\n#_1ED33D: LDA.b #$00\n#_1ED33F: STA.w $0DC0,X\n\n#_1ED342: LDA.b #$03\n#_1ED344: STA.w $0DE0,X\n\n.active\n#_1ED347: JSR Sprite_CheckIfActive_Bank1E\n#_1ED34A: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1ED34D: LDA.b #$01\n#_1ED34F: STA.w $0BA0,X\n\n#_1ED352: LDA.w $0D80,X\n#_1ED355: JSL JumpTableLocal\n#_1ED359: dw Agahnim_ChooseFirstMove\n\n#_1ED35B: dw Agahnim_HelloLightWorld\n#_1ED35D: dw Agahnim_EmergeFromShadow\n#_1ED35F: dw Agahnim_Attack\n#_1ED361: dw Agahnim_ChooseWarpSpot\n#_1ED363: dw Agahnim_MoveTowardsWarp\n\n#_1ED365: dw Agahnim_HelloDarkWorld\n#_1ED367: dw Agahnim_CreateClones\n#_1ED369: dw Agahnim_ExorciseGanon\n#_1ED36B: dw Agahnim_UncloneSelf\n\n#_1ED36D: dw Agahnim_SpinToPyramid\n\n; =========================================================\n\npool Agahnim_SpinToPyramid\n\n.anim_step\n#_1ED36F: db $00, $08, $0A, $02, $02, $06, $04\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_SpinToPyramid", + "code": "Agahnim_SpinToPyramid:\n#_1ED376: LDA.w $0DF0,X\n#_1ED379: BNE .delay\n\n#_1ED37B: PHX\n\n#_1ED37C: STZ.w $0DD0,X\n\n#_1ED37F: JSL PrepareDungeonExitFromBossFight\n\n#_1ED383: PLX\n\n.delay\n#_1ED384: LDA.w $0DF0,X\n#_1ED387: CMP.b #$10\n#_1ED389: BCS .spinning\n\n#_1ED38B: LDA.b #$7F\n#_1ED38D: STA.b $9A\n\n#_1ED38F: LDA.b #$06\n#_1ED391: STA.b $1C\n\n#_1ED393: LDA.b #$10\n#_1ED395: STA.b $1D\n\n#_1ED397: PHX\n\n#_1ED398: JSL PaletteFilter_SP5F\n\n#_1ED39C: PLX\n\n.spinning\n#_1ED39D: LDA.w $0DF0,X\n#_1ED3A0: AND.b #$00\n#_1ED3A2: BNE .dont_increase_rotation_speed\n\n#_1ED3A4: LDA.w $0F80,X\n#_1ED3A7: CMP.b #$FF\n#_1ED3A9: BEQ .dont_increase_rotation_speed\n\n#_1ED3AB: CLC\n#_1ED3AC: ADC.b #$01\n#_1ED3AE: STA.w $0F80,X\n\n.dont_increase_rotation_speed\n#_1ED3B1: LDA.w $0F90,X\n#_1ED3B4: CLC\n#_1ED3B5: ADC.w $0F80,X\n#_1ED3B8: STA.w $0F90,X\n\n#_1ED3BB: BCC .no_sfx\n\n#_1ED3BD: INC.w $0E80,X\n\n#_1ED3C0: LDA.w $0E80,X\n#_1ED3C3: CMP.b #$07\n#_1ED3C5: BNE .no_sfx\n\n#_1ED3C7: STZ.w $0E80,X\n\n#_1ED3CA: LDA.b #$04 ; SFX2.04\n#_1ED3CC: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_sfx\n#_1ED3D0: LDY.w $0E80,X\n\n#_1ED3D3: LDA.w .anim_step,Y\n#_1ED3D6: STA.w $0DC0,X\n\n#_1ED3D9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_ExorciseGanon", + "code": "Agahnim_ExorciseGanon:\n#_1ED3DA: LDA.b #$02\n#_1ED3DC: STA.w $0FFC\n\n#_1ED3DF: STZ.w $0EB0,X\n\n#_1ED3E2: LDA.w $0DF0,X\n#_1ED3E5: CMP.b #$40\n#_1ED3E7: BCC .delay\n\n#_1ED3E9: LDA.w $0EF0,X\n#_1ED3EC: ORA.b #$E0\n#_1ED3EE: STA.w $0EF0,X\n\n#_1ED3F1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_UncloneSelf", + "code": "Agahnim_UncloneSelf:\n#_1ED408: STZ.w $0EB0,X\n\n#_1ED40B: LDA.w $0D10\n#_1ED40E: STA.b $04\n\n#_1ED410: LDA.w $0D30\n#_1ED413: STA.b $05\n\n#_1ED415: LDA.w $0D00\n#_1ED418: STA.b $06\n\n#_1ED41A: LDA.w $0D20\n#_1ED41D: STA.b $07\n\n#_1ED41F: REP #$20\n\n#_1ED421: LDA.w $0FD8\n#_1ED424: SEC\n#_1ED425: SBC.b $04\n#_1ED427: CLC\n#_1ED428: ADC.w #$0004\n\n#_1ED42B: CMP.w #$0008\n#_1ED42E: BCS .not_merged_yet\n\n#_1ED430: LDA.w $0FDA\n#_1ED433: SEC\n#_1ED434: SBC.b $06\n#_1ED436: CLC\n#_1ED437: ADC.w #$0004\n\n#_1ED43A: CMP.w #$0008\n#_1ED43D: BCS .not_merged_yet\n\n#_1ED43F: SEP #$20\n\n#_1ED441: STZ.w $0DD0,X\n\n.not_merged_yet\n#_1ED444: SEP #$20\n\n#_1ED446: LDA.b #$20\n#_1ED448: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1ED44C: LDA.b $00\n#_1ED44E: STA.w $0D40,X\n\n#_1ED451: LDA.b $01\n#_1ED453: STA.w $0D50,X\n\n#_1ED456: JSR Sprite_Move_XY_Bank1E\n#_1ED459: JSL Agahnim_ApplyMotionBlur\n\n#_1ED45D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_HelloDarkWorld", + "code": "Agahnim_HelloDarkWorld:\n#_1ED45E: LDA.w $0DF0,X\n#_1ED461: BNE .exit\n\n#_1ED463: LDA.b #$41 ; MESSAGE 0141\n#_1ED465: STA.w $1CF0\n\n#_1ED468: LDA.b #$01\n#_1ED46A: STA.w $1CF1\n\n#_1ED46D: JSL Sprite_ShowMessageMinimal\n\n#_1ED471: INC.w $0D80,X\n\n#_1ED474: LDA.b #$50\n#_1ED476: STA.w $0DF0,X\n\n.exit\n#_1ED479: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_CreateClones", + "code": "Agahnim_CreateClones:\n#_1ED47C: LDA.w $0EC0,X\n#_1ED47F: BEQ .spawn_clones\n\n#_1ED481: LDA.w $0DF0,X\n#_1ED484: BNE .delay\n\n#_1ED486: JMP.w Agahnim_PrepareToAttack\n\n; ---------------------------------------------------------\n\n.delay\n#_1ED489: LDA.w .speed-1,X\n#_1ED48C: STA.w $0D50,X\n\n#_1ED48F: LDA.w $0D40,X\n#_1ED492: CLC\n#_1ED493: ADC.b #$02\n#_1ED495: STA.w $0D40,X\n\n#_1ED498: JSR Sprite_Move_XY_Bank1E\n\n#_1ED49B: JSL Agahnim_ApplyMotionBlur\n#_1ED49F: BMI .exit_a\n\n#_1ED4A1: LDA.b #$04\n#_1ED4A3: STA.w $0F50,Y\n\n.exit_a\n#_1ED4A6: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_ChooseFirstMove", + "code": "Agahnim_ChooseFirstMove:\n#_1ED4EC: LDY.w $0FFF\n\n#_1ED4EF: LDA.w .next_ai,Y\n#_1ED4F2: STA.w $0D80,X\n\n#_1ED4F5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_HelloLightWorld", + "code": "Agahnim_HelloLightWorld:\n#_1ED4F6: LDA.w $0DF0,X\n#_1ED4F9: BNE EXIT_1ED51E\n\n#_1ED4FB: LDA.b #$3F ; MESSAGE 013F\n#_1ED4FD: STA.w $1CF0\n\n#_1ED500: LDA.b #$01\n#_1ED502: STA.w $1CF1\n\n#_1ED505: JSL Sprite_ShowMessageMinimal\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_PrepareToAttack", + "code": "Agahnim_PrepareToAttack:\n#_1ED509: LDA.b #$03\n#_1ED50B: STA.w $0D80,X\n\n#_1ED50E: LDA.b #$20\n#_1ED510: STA.w $0DF0,X\n\n#_1ED513: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_PrepareToEmerge", + "code": "Agahnim_PrepareToEmerge:\n#_1ED514: LDA.b #$02\n#_1ED516: STA.w $0D80,X\n\n#_1ED519: LDA.b #$27\n#_1ED51B: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n#EXIT_1ED51E:\n#_1ED51E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_EmergeFromShadow", + "code": "Agahnim_EmergeFromShadow:\n#_1ED524: STZ.w $0FF8\n\n#_1ED527: LDA.w $0DF0,X\n#_1ED52A: BNE .delay\n\n#_1ED52C: INC.w $0D80,X\n\n#_1ED52F: LDA.b #$FF\n#_1ED531: STA.w $0DF0,X\n\n#_1ED534: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_Attack", + "code": "Agahnim_Attack:\n#_1ED566: LDA.w $0DF0,X\n#_1ED569: CMP.b #$C0\n#_1ED56B: BNE .no_charge_sfx\n\n#_1ED56D: PHA\n\n#_1ED56E: LDA.b #$27 ; SFX3.27\n#_1ED570: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1ED574: PLA\n\n; ---------------------------------------------------------\n\n.no_charge_sfx\n#_1ED575: CMP.b #$EF\n#_1ED577: BCS .apply_unfade_filter\n\n.apply_fade_filter\n#_1ED579: CMP.b #$10\n#_1ED57B: BCS .skip_filter\n\n.apply_unfade_filter\n#_1ED57D: PHX\n\n#_1ED57E: LDA.w $0FFF\n#_1ED581: BNE .aga2_filtering\n\n#_1ED583: LDX.b #$02\n\n.aga2_filtering\n#_1ED585: JSL AgahnimWarpShadowFilter\n\n#_1ED589: PLX\n\n#_1ED58A: BRA .immune\n\n; ---------------------------------------------------------\n\n.skip_filter\n#_1ED58C: TXA\n#_1ED58D: BNE .immune\n\n#_1ED58F: JSR Sprite_CheckDamageToAndFromLink_Bank1E\n\n#_1ED592: STZ.w $0BA0,X\n\n.immune\n#_1ED595: LDA.w $0DF0,X\n#_1ED598: BNE .delay_warp\n\n#_1ED59A: INC.w $0D80,X\n\n#_1ED59D: LDA.b #$27\n#_1ED59F: STA.w $0DF0,X\n\n#_1ED5A2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_ChooseWarpSpot", + "code": "Agahnim_ChooseWarpSpot:\n#_1ED630: LDA.w $0DF0,X\n#_1ED633: STA.w $0BA0,X\n#_1ED636: BNE .delay\n\n#_1ED638: INC.w $0D80,X\n\n#_1ED63B: LDY.b #$04\n\n#_1ED63D: LDA.w $0E30,X\n#_1ED640: CMP.b #$04\n#_1ED642: BEQ .use_middle_for_lightning\n\n#_1ED644: JSL GetRandomNumber\n#_1ED648: AND.b #$0F\n#_1ED64A: TAY\n\n.use_middle_for_lightning\n#_1ED64B: LDA.w .pos_x,Y\n#_1ED64E: STA.w $0DB0,X\n\n#_1ED651: LDA.w .pos_y,Y\n#_1ED654: STA.w $0E90,X\n\n#_1ED657: LDA.b #$08\n#_1ED659: STA.w $0ED0,X\n\n#_1ED65C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_PerformAttack", + "code": "Agahnim_PerformAttack:\n#_1ED67A: CPX.b #$00\n#_1ED67C: BNE .can_use_lightning\n\n#_1ED67E: INC.w $0E30,X\n\n#_1ED681: LDA.w $0FFF\n#_1ED684: BEQ .can_use_lightning\n\n#_1ED686: LDA.w $0E30,X\n#_1ED689: AND.b #$03\n#_1ED68B: STA.w $0E30,X\n\n.can_use_lightning\n#_1ED68E: LDA.w $0E30,X\n#_1ED691: CMP.b #$05\n#_1ED693: BNE .balls\n\n#_1ED695: STZ.w $0E30,X\n\n#_1ED698: LDA.b #$26 ; SFX3.26\n#_1ED69A: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1ED69E: JSR .spawn_2\n\n.spawn_2\n#_1ED6A1: JSL Sprite_SpawnLightning\n#_1ED6A5: JSL Sprite_SpawnLightning\n\n#_1ED6A9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Agahnim_MoveTowardsWarp", + "code": "Agahnim_MoveTowardsWarp:\n#_1ED708: LDA.b #$01\n#_1ED70A: STA.w $0BA0,X\n\n#_1ED70D: LDA.w $0D10,X\n#_1ED710: STA.b $00\n\n#_1ED712: LDA.w $0D30,X\n#_1ED715: STA.b $01\n#_1ED717: STA.b $05\n\n#_1ED719: LDA.w $0D00,X\n#_1ED71C: STA.b $02\n\n#_1ED71E: LDA.w $0D20,X\n#_1ED721: STA.b $03\n#_1ED723: STA.b $07\n\n#_1ED725: LDA.w $0DB0,X\n#_1ED728: STA.b $04\n\n#_1ED72A: LDA.w $0E90,X\n#_1ED72D: STA.b $06\n\n; ---------------------------------------------------------\n\n#_1ED72F: REP #$20\n\n#_1ED731: LDA.b $00\n#_1ED733: SEC\n#_1ED734: SBC.b $04\n\n#_1ED736: CLC\n#_1ED737: ADC.w #$0007\n\n#_1ED73A: CMP.w #$000E\n#_1ED73D: BCS .not_close\n\n#_1ED73F: LDA.b $02\n#_1ED741: SEC\n#_1ED742: SBC.b $06\n\n#_1ED744: CLC\n#_1ED745: ADC.w #$0007\n\n#_1ED748: CMP.w #$000E\n#_1ED74B: BCS .not_close\n\n#_1ED74D: SEP #$20\n\n#_1ED74F: LDA.w $0DB0,X\n#_1ED752: STA.w $0D10,X\n\n#_1ED755: LDA.w $0E90,X\n#_1ED758: STA.w $0D00,X\n\n#_1ED75B: JMP.w Agahnim_PrepareToEmerge\n\n; ---------------------------------------------------------\n\n.not_close\n#_1ED75E: SEP #$20\n\n#_1ED760: LDA.w $0ED0,X\n#_1ED763: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1ED767: LDA.b $00\n#_1ED769: STA.w $0D40,X\n\n#_1ED76C: LDA.b $01\n#_1ED76E: STA.w $0D50,X\n\n#_1ED771: LDA.w $0ED0,X\n#_1ED774: CMP.b #$40\n#_1ED776: BCS .skip\n\n#_1ED778: INC.w $0ED0,X\n\n.skip\n#_1ED77B: JSR Sprite_Move_XY_Bank1E\n\n#_1ED77E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "UNREACHABLE_1ED977", + "code": "UNREACHABLE_1ED977:\n#_1ED977: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Agahnim", + "code": "SpriteDraw_Agahnim:\n#_1ED978: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1ED97B: LDA.w $0DC0,X\n#_1ED97E: ASL A\n#_1ED97F: ASL A\n#_1ED980: STA.b $06\n\n; ---------------------------------------------------------\n\n#_1ED982: PHX\n\n#_1ED983: LDX.b #$03\n\n.next_aga_obj\n#_1ED985: PHX\n\n#_1ED986: TXA\n#_1ED987: CLC\n#_1ED988: ADC.b $06\n#_1ED98A: TAX\n\n#_1ED98B: LDA.b $00\n#_1ED98D: CLC\n#_1ED98E: ADC.w .agahnim_offset_x,X\n#_1ED991: STA.b ($90),Y\n\n#_1ED993: LDA.b $02\n#_1ED995: CLC\n#_1ED996: ADC.w .agahnim_offset_y,X\n#_1ED999: INY\n#_1ED99A: STA.b ($90),Y\n\n#_1ED99C: LDA.w .agahnim_char,X\n#_1ED99F: INY\n#_1ED9A0: STA.b ($90),Y\n\n#_1ED9A2: LDA.w .agahnim_flip,X\n#_1ED9A5: ORA.b $05\n#_1ED9A7: INY\n#_1ED9A8: STA.b ($90),Y\n\n#_1ED9AA: PHY\n\n#_1ED9AB: TYA\n#_1ED9AC: LSR A\n#_1ED9AD: LSR A\n#_1ED9AE: TAY\n\n#_1ED9AF: LDA.b #$02\n\n#_1ED9B1: CPX.b #$44\n#_1ED9B3: BCS .draw_big\n\n#_1ED9B5: CPX.b #$40\n#_1ED9B7: BCC .draw_big\n\n#_1ED9B9: LDA.b #$00\n\n.draw_big\n#_1ED9BB: STA.b ($92),Y\n\n#_1ED9BD: PLY\n\n#_1ED9BE: INY\n\n#_1ED9BF: PLX\n#_1ED9C0: DEX\n#_1ED9C1: BPL .next_aga_obj\n\n#_1ED9C3: PLX\n\n; ---------------------------------------------------------\n\n#_1ED9C4: LDA.w $0DC0,X\n#_1ED9C7: CMP.b #$0C\n#_1ED9C9: BCS .no_shadow\n\n#_1ED9CB: LDA.b #$12\n#_1ED9CD: JSL SpriteDraw_Shadow_custom_long\n\n.no_shadow\n#_1ED9D1: LDA.b $11\n#_1ED9D3: BEQ .skip_correction\n\n#_1ED9D5: LDY.b #$FF\n#_1ED9D7: LDA.b #$03\n#_1ED9D9: JSL Sprite_CorrectOAMEntries_long\n\n.skip_correction\n#_1ED9DD: JSR Sprite_PrepOAMCoord_Bank1E\n\n#_1ED9E0: LDA.b #$08\n#_1ED9E2: LDY.w $0DE0,X\n#_1ED9E5: BEQ .use_region_b\n\n.use_region_c\n#_1ED9E7: JSL SpriteDraw_AllocateOAMFromRegionC\n\n#_1ED9EB: BRA .continue\n\n.use_region_b\n#_1ED9ED: JSL SpriteDraw_AllocateOAMFromRegionB\n\n; ---------------------------------------------------------\n\n.continue\n#_1ED9F1: LDY.b #$00\n#_1ED9F3: LDA.w $0EB0,X\n#_1ED9F6: BEQ .exit\n\n#_1ED9F8: DEC A\n#_1ED9F9: STA.b $0C\n\n#_1ED9FB: ASL A\n#_1ED9FC: STA.b $06\n\n#_1ED9FE: LDA.b $1A\n#_1EDA00: LSR A\n#_1EDA01: AND.b #$02\n\n#_1EDA03: INC A\n#_1EDA04: INC A\n\n#_1EDA05: ORA.b #$31\n#_1EDA07: STA.b $0D\n\n; ---------------------------------------------------------\n\n#_1EDA09: PHX\n\n#_1EDA0A: LDX.b #$01\n\n.next_ball_obj\n#_1EDA0C: PHX\n\n#_1EDA0D: TXA\n#_1EDA0E: CLC\n#_1EDA0F: ADC.b $06\n#_1EDA11: TAX\n\n#_1EDA12: LDA.b $00\n#_1EDA14: CLC\n#_1EDA15: ADC.w .ball_offset_x,X\n#_1EDA18: STA.b ($90),Y\n\n#_1EDA1A: LDA.b $02\n#_1EDA1C: CLC\n#_1EDA1D: ADC.w .ball_offset_y,X\n#_1EDA20: INY\n#_1EDA21: STA.b ($90),Y\n\n#_1EDA23: LDX.b $0C\n\n#_1EDA25: LDA.w .ball_char,X\n#_1EDA28: INY\n#_1EDA29: STA.b ($90),Y\n\n#_1EDA2B: INY\n\n#_1EDA2C: LDA.b $0D\n#_1EDA2E: STA.b ($90),Y\n\n#_1EDA30: PHY\n\n#_1EDA31: TYA\n#_1EDA32: LSR A\n#_1EDA33: LSR A\n#_1EDA34: TAY\n\n#_1EDA35: LDA.w .ball_palette,X\n#_1EDA38: STA.b ($92),Y\n\n#_1EDA3A: PLY\n#_1EDA3B: INY\n\n#_1EDA3C: PLX\n#_1EDA3D: DEX\n#_1EDA3E: BPL .next_ball_obj\n\n#_1EDA40: PLX\n\n.exit\n#_1EDA41: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_7B_AgahnimBalls", + "code": "Sprite_7B_AgahnimBalls:\n#_1EDA42: LDA.w $0DA0,X\n#_1EDA45: BEQ YellowBall\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "BlueBall", + "code": "BlueBall:\n#_1EDA47: LDA.w $0DF0,X\n#_1EDA4A: BEQ .done_homing\n\n#_1EDA4C: LDA.b #$20\n#_1EDA4E: JSL Sprite_ApplySpeedTowardsLink_long\n\n.done_homing\n#_1EDA52: LDA.b #$05\n#_1EDA54: BRA AgahnimBalls_Main\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "YellowBall", + "code": "YellowBall:\n#_1EDA56: LDA.b $1A\n#_1EDA58: LSR A\n#_1EDA59: AND.b #$02\n\n#_1EDA5B: INC A\n#_1EDA5C: INC A\n#_1EDA5D: ORA.b #$01\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "AgahnimBalls_Main", + "code": "AgahnimBalls_Main:\n#_1EDA5F: STA.w $0F50,X\n\n#_1EDA62: LDA.w $0D80,X\n#_1EDA65: BEQ .continue\n\n#_1EDA67: JMP.w AgahnimBalls_DrawTrail\n\n.continue\n#_1EDA6A: LDA.w $0DA0,X\n#_1EDA6D: BEQ .draw_yellow\n\n#_1EDA6F: JSR SpriteDraw_BlueBalls\n#_1EDA72: BRA .drawing_done\n\n.draw_yellow\n#_1EDA74: JSL SpriteDraw_SingleLarge_long\n\n; ---------------------------------------------------------\n\n.drawing_done\n#_1EDA78: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EDA7B: INC.w $0E80,X\n\n#_1EDA7E: JSR Sprite_Move_XY_Bank1E\n\n#_1EDA81: JSR Sprite_CheckTileCollision_Bank1E\n#_1EDA84: BEQ .no_tile_collision\n\n#_1EDA86: STZ.w $0DD0,X\n\n#_1EDA89: LDA.w $0DA0,X\n#_1EDA8C: BNE .blue_ball_explode\n\n.no_tile_collision\n#_1EDA8E: LDA.w $0D90,X\n#_1EDA91: BEQ .reflected\n\n#_1EDA93: LDA.w $0BA0\n#_1EDA96: BNE .reflected\n\n#_1EDA98: LDA.w $0D10,X\n#_1EDA9B: STA.b $00\n\n#_1EDA9D: LDA.w $0D30,X\n#_1EDAA0: STA.b $08\n\n#_1EDAA2: LDA.b #$0F\n#_1EDAA4: STA.b $02\n#_1EDAA6: STA.b $03\n\n#_1EDAA8: LDA.w $0D00,X\n#_1EDAAB: STA.b $01\n\n#_1EDAAD: LDA.w $0D20,X\n#_1EDAB0: STA.b $09\n\n#_1EDAB2: PHX\n\n#_1EDAB3: LDX.b #$00\n#_1EDAB5: JSL Sprite_SetupHitbox_long\n\n#_1EDAB9: PLX\n\n#_1EDABA: JSL CheckIfHitBoxesOverlap_long\n#_1EDABE: BCC .didnt_hit_aga\n\n#_1EDAC0: PHX\n\n#_1EDAC1: LDA.b #$A0\n#_1EDAC3: STA.b $00\n\n#_1EDAC5: LDA.b #$10\n#_1EDAC7: LDX.b #$00\n#_1EDAC9: JSL AgahnimBalls_DamageAgahnim\n\n#_1EDACD: PLX\n\n#_1EDACE: STZ.w $0DD0,X\n\n#_1EDAD1: LDA.w $0D50,X\n#_1EDAD4: STA.w $0F40\n\n#_1EDAD7: LDA.w $0D40,X\n#_1EDADA: STA.w $0F30\n\n.didnt_hit_aga\n#_1EDADD: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.reflected\n#_1EDADF: JSR Sprite_CheckDamageToLink_Bank1E\n#_1EDAE2: JSL Sprite_CheckDamageFromLink_long\n#_1EDAE6: BCC .finish_up\n\n#_1EDAE8: LDA.w $0DA0,X\n#_1EDAEB: BEQ .reflected_yellow_ball\n\n#_1EDAED: STZ.w $0DD0,X\n\n.blue_ball_explode\n#_1EDAF0: LDA.b #$36 ; SFX3.36\n#_1EDAF2: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EDAF6: JSR CreateSixBlueBalls\n\n#_1EDAF9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "AgahnimBalls_DrawTrail", + "code": "AgahnimBalls_DrawTrail:\n#_1EDB54: LDA.w $0DC0,X\n#_1EDB57: CMP.b #$02\n#_1EDB59: BEQ .small\n\n#_1EDB5B: JSL SpriteDraw_SingleLarge_long\n#_1EDB5F: BRA .continue\n\n.small\n#_1EDB61: JSL SpriteDraw_SingleSmall_long\n\n.continue\n#_1EDB65: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EDB68: LDA.w $0DF0,X\n#_1EDB6B: STA.w $0BA0,X\n#_1EDB6E: BNE .stay_around\n\n#_1EDB70: STZ.w $0DD0,X\n\n.stay_around\n#_1EDB73: TAY\n#_1EDB74: CMP.b #$06\n#_1EDB76: BNE .dont_move\n\n#_1EDB78: LDA.b #$40\n#_1EDB7A: STA.w $0D50,X\n#_1EDB7D: STA.w $0D40,X\n\n#_1EDB80: JSR Sprite_Move_XY_Bank1E\n\n.dont_move\n#_1EDB83: LDA.w .anim_step,Y\n#_1EDB86: STA.w $0DC0,X\n\n#_1EDB89: RTS", + "file": "bank_1E.asm" + }, + { + "name": "CreateSixBlueBalls", + "code": "CreateSixBlueBalls:\n#_1EDB96: LDA.b #$36 ; SFX3.36\n#_1EDB98: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EDB9C: LDA.b #$05\n#_1EDB9E: STA.w $0FB5\n\n.spawn_next\n#_1EDBA1: JSR .spawn_one\n\n#_1EDBA4: DEC.w $0FB5\n#_1EDBA7: BNE .spawn_next\n\n; ---------------------------------------------------------\n\n.spawn_one\n#_1EDBA9: LDA.b #$55 ; SPRITE 55\n#_1EDBAB: JSL Sprite_SpawnDynamically\n#_1EDBAF: BMI .no_space\n\n#_1EDBB1: LDA.b $00\n#_1EDBB3: CLC\n#_1EDBB4: ADC.b #$04\n#_1EDBB6: STA.w $0D10,Y\n\n#_1EDBB9: LDA.b $01\n#_1EDBBB: ADC.b #$00\n#_1EDBBD: STA.w $0D30,Y\n\n#_1EDBC0: LDA.b $02\n#_1EDBC2: CLC\n#_1EDBC3: ADC.b #$04\n#_1EDBC5: STA.w $0D00,Y\n\n#_1EDBC8: LDA.b $03\n#_1EDBCA: ADC.b #$00\n#_1EDBCC: STA.w $0D20,Y\n\n#_1EDBCF: LDA.w $0E60,Y\n#_1EDBD2: AND.b #$FE\n#_1EDBD4: ORA.b #$40\n#_1EDBD6: STA.w $0E60,Y\n\n#_1EDBD9: LDA.b #$04\n#_1EDBDB: STA.w $0F50,Y\n#_1EDBDE: STA.w $0E00,Y\n\n#_1EDBE1: LDA.b #$14\n#_1EDBE3: STA.w $0F60,Y\n#_1EDBE6: STA.w $0DB0,Y\n#_1EDBE9: STA.w $0E90,Y\n\n#_1EDBEC: PHX\n\n#_1EDBED: LDX.w $0FB5\n\n#_1EDBF0: LDA.w .speed_x,X\n#_1EDBF3: STA.w $0D50,Y\n\n#_1EDBF6: LDA.w .speed_y,X\n#_1EDBF9: STA.w $0D40,Y\n\n#_1EDBFC: PLX\n\n.no_space\n#_1EDBFD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_BlueBalls", + "code": "SpriteDraw_BlueBalls:\n#_1EDC3E: LDA.b #$00\n#_1EDC40: XBA\n#_1EDC41: LDA.w $0E80,X\n\n#_1EDC44: LSR A\n#_1EDC45: LSR A\n#_1EDC46: AND.b #$01\n\n#_1EDC48: REP #$20\n\n#_1EDC4A: ASL A\n#_1EDC4B: ASL A\n#_1EDC4C: ASL A\n#_1EDC4D: ASL A\n#_1EDC4E: ASL A\n#_1EDC4F: ADC.w #.oam_groups\n#_1EDC52: STA.b $08\n\n#_1EDC54: SEP #$20\n\n#_1EDC56: LDA.b #$04\n#_1EDC58: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_79_Bee", + "code": "Sprite_79_Bee:\n#_1EDC5B: LDA.w $0D80,X\n#_1EDC5E: JSL JumpTableLocal\n#_1EDC62: dw Bee_DormantHive\n#_1EDC64: dw Bee_Main\n#_1EDC66: dw Bee_Captured\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Bee_DormantHive", + "code": "Bee_DormantHive:\n#_1EDC68: LDA.w $0E90,X\n#_1EDC6B: BNE .exit\n\n#_1EDC6D: STZ.w $0DD0,X\n\n#_1EDC70: LDY.b #$0B\n\n.more_bees\n#_1EDC72: PHY\n\n#_1EDC73: JSR SpawnBeeFromHive\n\n#_1EDC76: PLY\n#_1EDC77: DEY\n#_1EDC78: BPL .more_bees\n\n.exit\n#_1EDC7A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BeeSpeedSlow", + "code": "BeeSpeedSlow:\n#_1EDC7B: db 15, 5, -5, -15, 20, 10, -10, -20\n", + "file": "bank_1E.asm" + }, + { + "name": "BeeSpeedFast", + "code": "BeeSpeedFast:\n#_1EDC83: db 8, 2, -2, -8, 10, 5, -5, -10\n", + "file": "bank_1E.asm" + }, + { + "name": "BeeTimer", + "code": "BeeTimer:\n#_1EDC8B: db 64, 64, 255, 255\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SpawnBeeFromHive", + "code": "SpawnBeeFromHive:\n#_1EDC8F: LDA.b #$79 ; SPRITE 79\n#_1EDC91: JSL Sprite_SpawnDynamically\n#_1EDC95: BMI .no_space\n\n#_1EDC97: JSL Sprite_SetSpawnedCoordinates\n\n; =========================================================\n\n#InitializeSpawnedBee:\n#_1EDC9B: PHX\n\n#_1EDC9C: LDA.b #$01\n#_1EDC9E: STA.w $0D80,Y\n\n#_1EDCA1: TYA\n#_1EDCA2: AND.b #$03\n#_1EDCA4: TAX\n\n#_1EDCA5: LDA.w BeeTimer,X\n#_1EDCA8: STA.w $0DF0,Y\n#_1EDCAB: STA.w $0D90,Y\n\n#_1EDCAE: LDA.b #$60\n#_1EDCB0: STA.w $0F10,Y\n\n#_1EDCB3: JSL GetRandomNumber\n#_1EDCB7: AND.b #$07\n#_1EDCB9: TAX\n\n#_1EDCBA: LDA.w BeeSpeedSlow,X\n#_1EDCBD: STA.w $0D50,Y\n\n#_1EDCC0: JSL GetRandomNumber\n#_1EDCC4: AND.b #$07\n#_1EDCC6: TAX\n\n#_1EDCC7: LDA.w BeeSpeedSlow,X\n#_1EDCCA: STA.w $0D40,Y\n\n#_1EDCCD: PLX\n\n.no_space\n#_1EDCCE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ReleaseBeeFromBottle", + "code": "ReleaseBeeFromBottle:\n#_1EDCCF: PHB\n#_1EDCD0: PHK\n#_1EDCD1: PLB\n\n#_1EDCD2: LDA.b #$B2 ; SPRITE B2\n#_1EDCD4: JSL Sprite_SpawnDynamically\n#_1EDCD8: BMI .no_space\n\n#_1EDCDA: LDA.b $EE\n#_1EDCDC: STA.w $0F20,Y\n\n#_1EDCDF: LDA.b $22\n#_1EDCE1: CLC\n#_1EDCE2: ADC.b #$08\n#_1EDCE4: STA.w $0D10,Y\n\n#_1EDCE7: LDA.b $23\n#_1EDCE9: ADC.b #$00\n#_1EDCEB: STA.w $0D30,Y\n\n#_1EDCEE: LDA.b $20\n#_1EDCF0: CLC\n#_1EDCF1: ADC.b #$10\n#_1EDCF3: STA.w $0D00,Y\n\n#_1EDCF6: LDA.b $21\n#_1EDCF8: ADC.b #$00\n#_1EDCFA: STA.w $0D20,Y\n\n#_1EDCFD: PHX\n\n#_1EDCFE: LDX.w $0202\n#_1EDD01: LDA.l $7EF33F,X\n\n#_1EDD05: TAX\n\n#_1EDD06: LDA.l $7EF35B,X\n#_1EDD0A: CMP.b #$08\n#_1EDD0C: BNE .regular_bee\n\n#_1EDD0E: LDA.b #$01\n#_1EDD10: STA.w $0EB0,Y\n\n.regular_bee\n#_1EDD13: JSR InitializeSpawnedBee\n\n#_1EDD16: JSL GetRandomNumber\n#_1EDD1A: AND.b #$07\n#_1EDD1C: TAX\n\n#_1EDD1D: LDA.w BeeSpeedFast,X\n#_1EDD20: STA.w $0D50,Y\n\n#_1EDD23: JSL GetRandomNumber\n#_1EDD27: AND.b #$07\n#_1EDD29: TAX\n\n#_1EDD2A: LDA.w BeeSpeedFast,X\n#_1EDD2D: STA.w $0D40,Y\n\n#_1EDD30: LDA.b #$40\n#_1EDD32: STA.w $0DF0,Y\n#_1EDD35: STA.w $0D90,Y\n\n#_1EDD38: PLX\n#_1EDD39: PLB\n\n#_1EDD3A: LDA.b #$00\n\n#_1EDD3C: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Bee_BounceBoundaries", + "code": "Bee_BounceBoundaries:\n#_1EDD41: db 0, 5, 10, 15\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Bee_Main", + "code": "Bee_Main:\n#_1EDD45: JSR Bee_HandleZ\n\n#_1EDD48: JSL SpriteDraw_SingleSmall_long\n\n#_1EDD4C: JSR Bee_HandleInteractions\n\n#_1EDD4F: JSR Sprite_CheckIfActive_Bank1E\n#_1EDD52: JSR Sprite_CheckIfRecoiling_Bank1E\n\n#_1EDD55: LDA.w $0EB0,X\n#_1EDD58: BEQ .regular_bee\n\n#_1EDD5A: JSL Sprite_SpawnSparkleGarnish\n\n.regular_bee\n#_1EDD5E: JSR Bee_Bzzt\n#_1EDD61: JSR Sprite_Move_XY_Bank1E\n\n#_1EDD64: TXA\n#_1EDD65: EOR.b $1A\n#_1EDD67: LSR A\n#_1EDD68: AND.b #$01\n#_1EDD6A: STA.w $0DC0,X\n\n#_1EDD6D: LDA.w $0F10,X\n#_1EDD70: BNE .not_caught\n\n#_1EDD72: JSR Sprite_CheckDamageToLink_Bank1E\n\n#_1EDD75: JSL Sprite_CheckDamageFromLink_long\n#_1EDD79: BEQ .not_caught\n\n#_1EDD7B: LDA.b #$C8 ; MESSAGE 00C8\n#_1EDD7D: LDY.b #$00\n#_1EDD7F: JSL Sprite_ShowMessageUnconditional\n\n#_1EDD83: INC.w $0D80,X\n\n#_1EDD86: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bee_Captured", + "code": "Bee_Captured:\n#_1EDDF1: JSR Bee_HandleInteractions\n\n#_1EDDF4: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EDDF7: LDA.w $1CE8\n#_1EDDFA: BNE .freed\n\n#_1EDDFC: JSL FindEmptyBottle\n#_1EDE00: BMI .no_bottles\n\n#_1EDE02: LDA.w $0EB0,X\n#_1EDE05: STA.b $00\n\n#_1EDE07: PHX\n\n#_1EDE08: TYX\n\n#_1EDE09: LDA.b #$07\n#_1EDE0B: CLC\n#_1EDE0C: ADC.b $00\n#_1EDE0E: STA.l $7EF35C,X\n\n#_1EDE12: JSL RefreshIcon_long\n\n#_1EDE16: PLX\n\n#_1EDE17: STZ.w $0DD0,X\n\n#_1EDE1A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "FindEmptyBottle", + "code": "FindEmptyBottle:\n#_1EDE2E: PHX\n\n#_1EDE2F: LDX.b #$00\n\n.next_bottle\n#_1EDE31: LDA.l $7EF35C,X\n#_1EDE35: CMP.b #$02\n#_1EDE37: BEQ .empty\n\n#_1EDE39: INX\n#_1EDE3A: CPX.b #$04\n#_1EDE3C: BCC .next_bottle\n\n#_1EDE3E: LDX.b #$FF\n\n.empty\n#_1EDE40: TXY\n#_1EDE41: PLX\n#_1EDE42: TYA\n\n#_1EDE43: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Bee_HandleInteractions", + "code": "Bee_HandleInteractions:\n#_1EDE44: LDA.b $11\n#_1EDE46: CMP.b #$02\n#_1EDE48: BNE .exit\n\n#_1EDE4A: REP #$20\n\n#_1EDE4C: LDA.w $1CF0\n\n#_1EDE4F: CMP.w #$00C8 ; MESSAGE 00C8\n#_1EDE52: BEQ .not_caught\n\n#_1EDE54: CMP.w #$00CA ; MESSAGE 00CA\n#_1EDE57: BNE .exit\n\n.not_caught\n#_1EDE59: SEP #$30\n\n#_1EDE5B: LDA.b #$28\n#_1EDE5D: STA.w $0F10,X\n\n.exit\n#_1EDE60: SEP #$30\n\n#_1EDE62: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B2_PlayerBee", + "code": "Sprite_B2_PlayerBee:\n#_1EDE63: LDA.w $0D80,X\n#_1EDE66: JSL JumpTableLocal\n#_1EDE6A: dw GoldBee_Dormant\n#_1EDE6C: dw PlayerBee_Main\n#_1EDE6E: dw Bee_Captured\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "GoldBee_Dormant", + "code": "GoldBee_Dormant:\n#_1EDE70: LDA.w $0E90,X\n#_1EDE73: BNE .exit\n\n#_1EDE75: STZ.w $0DD0,X\n\n#_1EDE78: LDA.l $7EF35C\n#_1EDE7C: ORA.l $7EF35D\n#_1EDE80: ORA.l $7EF35E\n#_1EDE84: ORA.l $7EF35F\n#_1EDE88: AND.b #$08\n#_1EDE8A: BNE .exit\n\n#_1EDE8C: JSR GoldBee_SpawnSelf\n\n.exit\n#_1EDE8F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "GoldBee_SpawnSelf", + "code": "GoldBee_SpawnSelf:\n#_1EDE90: LDA.b #$79 ; SPRITE 79\n#_1EDE92: JSL Sprite_SpawnDynamically\n#_1EDE96: BMI .no_space\n\n#_1EDE98: JSL Sprite_SetSpawnedCoordinates\n\n#_1EDE9C: LDA.b #$01\n#_1EDE9E: STA.w $0D80,Y\n\n#_1EDEA1: LDA.b #$40\n#_1EDEA3: STA.w $0DF0,Y\n#_1EDEA6: STA.w $0D90,Y\n\n#_1EDEA9: LDA.b #$60\n#_1EDEAB: STA.w $0F10,Y\n\n#_1EDEAE: LDA.b #$01\n#_1EDEB0: STA.w $0EB0,Y\n\n#_1EDEB3: PHX\n\n#_1EDEB4: JSL GetRandomNumber\n#_1EDEB8: AND.b #$07\n#_1EDEBA: TAX\n\n#_1EDEBB: LDA.w BeeSpeedSlow,X\n#_1EDEBE: STA.w $0D50,Y\n\n#_1EDEC1: JSL GetRandomNumber\n#_1EDEC5: AND.b #$07\n#_1EDEC7: TAX\n\n#_1EDEC8: LDA.w BeeSpeedSlow,X\n#_1EDECB: STA.w $0D40,Y\n\n#_1EDECE: PLX\n\n.no_space\n#_1EDECF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PlayerBee_Useless", + "code": "PlayerBee_Useless:\n#_1EDED0: db $0A, $14\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "PlayerBee_Main", + "code": "PlayerBee_Main:\n#_1EDED2: LDA.b #$01\n#_1EDED4: STA.w $0BA0,X\n\n#_1EDED7: JSR Bee_HandleZ\n\n#_1EDEDA: JSL SpriteDraw_SingleSmall_long\n\n#_1EDEDE: JSR Bee_HandleInteractions\n#_1EDEE1: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EDEE4: JSR Bee_Bzzt\n\n#_1EDEE7: JSR Sprite_Move_XY_Bank1E\n\n#_1EDEEA: TXA\n#_1EDEEB: EOR.b $1A\n#_1EDEED: LSR A\n#_1EDEEE: AND.b #$01\n#_1EDEF0: STA.w $0DC0,X\n\n#_1EDEF3: LDA.w $0EB0,X\n#_1EDEF6: BEQ .regular_bee\n\n#_1EDEF8: JSL Sprite_SpawnSparkleGarnish\n\n.regular_bee\n#_1EDEFC: LDA.w $0DA0,X\n\n#_1EDEFF: LDY.w $0EB0,X\n\n#_1EDF02: CMP.w PlayerBee_Useless,Y\n#_1EDF05: BCC .what\n\n#_1EDF07: LDA.b #$40\n#_1EDF09: STA.w $0CAA,X\n\n#_1EDF0C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bee_HandleZ", + "code": "Bee_HandleZ:\n#_1EDF8A: LDA.b #$10\n#_1EDF8C: STA.w $0F70,X\n\n#_1EDF8F: LDA.w $0EB0,X\n#_1EDF92: BEQ .exit\n\n#_1EDF94: LDA.w $0F50,X\n#_1EDF97: AND.b #$F1\n#_1EDF99: STA.b $00\n\n#_1EDF9B: LDA.b $1A\n#_1EDF9D: LSR A\n#_1EDF9E: LSR A\n#_1EDF9F: LSR A\n#_1EDFA0: LSR A\n\n#_1EDFA1: AND.b #$03\n#_1EDFA3: INC A\n#_1EDFA4: ASL A\n\n#_1EDFA5: ORA.b $00\n#_1EDFA7: STA.w $0F50,X\n\n.exit\n#_1EDFAA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PlayerBee_FindTarget", + "code": "PlayerBee_FindTarget:\n#_1EDFAB: LDA.b #$0F\n#_1EDFAD: STA.b $00\n\n#_1EDFAF: TXA\n#_1EDFB0: ASL A\n#_1EDFB1: ASL A\n#_1EDFB2: AND.b #$0F\n#_1EDFB4: TAY\n\n; ---------------------------------------------------------\n\n.next_sprite\n#_1EDFB5: CPY.w $0FA0\n#_1EDFB8: BEQ .unsuitable_target\n\n#_1EDFBA: LDA.w $0DD0,Y\n#_1EDFBD: CMP.b #$09\n#_1EDFBF: BCC .unsuitable_target\n\n#_1EDFC1: LDA.w $0F00,Y\n#_1EDFC4: BNE .unsuitable_target\n\n#_1EDFC6: LDA.w $0E40,Y\n#_1EDFC9: BMI .potential_target\n\n#_1EDFCB: LDA.w $0F20,Y\n#_1EDFCE: CMP.w $0F20,X\n#_1EDFD1: BNE .unsuitable_target\n\n#_1EDFD3: LDA.w $0F60,Y\n#_1EDFD6: AND.b #$40\n#_1EDFD8: BNE .unsuitable_target\n\n#_1EDFDA: LDA.w $0BA0,Y\n#_1EDFDD: BEQ .valid_target\n#_1EDFDF: BRA .unsuitable_target\n\n.potential_target\n#_1EDFE1: LDA.w $0EB0,X\n#_1EDFE4: BEQ .unsuitable_target\n\n#_1EDFE6: LDA.w $0CD2,Y\n#_1EDFE9: AND.b #$40\n#_1EDFEB: BNE .valid_target\n\n; ---------------------------------------------------------\n\n.unsuitable_target\n#_1EDFED: DEY\n\n#_1EDFEE: TYA\n#_1EDFEF: AND.b #$0F\n#_1EDFF1: TAY\n\n#_1EDFF2: DEC.b $00\n#_1EDFF4: BPL .next_sprite\n\n#_1EDFF6: CLC\n\n#_1EDFF7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bee_Bzzt", + "code": "Bee_Bzzt:\n#_1EE02E: TXA\n#_1EE02F: EOR.b $1A\n#_1EE031: AND.b #$1F\n#_1EE033: BNE .exit\n\n#_1EE035: LDA.b #$2C ; SFX3.2C\n#_1EE037: JSL SpriteSFX_QueueSFX3WithPan\n\n.exit\n#_1EE03B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PlaqueMessages", + "code": "PlaqueMessages:\n.pedestal_low\n#_1EE03C: db $B6 ; MESSAGE 00B6\n#_1EE03D: db $B7 ; MESSAGE 00B7\n\n.pedestal_high\n#_1EE03E: db $00\n#_1EE03F: db $00\n\n; ---------------------------------------------------------\n\n.desert_low\n#_1EE040: db $BC ; MESSAGE 00BC\n#_1EE041: db $BD ; MESSAGE 00BD\n\n.desert_high\n#_1EE042: db $00\n#_1EE043: db $00\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B3_PedestalPlaque", + "code": "Sprite_B3_PedestalPlaque:\n#_1EE044: JSL Sprite_PrepOAMCoord_long\n#_1EE048: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE04B: LDA.w $02E4\n#_1EE04E: BNE .cutscene\n\n#_1EE050: JSL CheckIfLinkIsBusy\n#_1EE054: BCC .continue\n\n.cutscene\n#_1EE056: RTS", + "file": "bank_1E.asm" + }, + { + "name": "MasterSwordPedestal", + "code": "MasterSwordPedestal:\n#_1EE065: LDA.b $2F\n#_1EE067: BNE .exit\n\n#_1EE069: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EE06D: BCC .exit\n\n#_1EE06F: LDA.w $0202\n#_1EE072: CMP.b #$0F\n#_1EE074: BNE .not_holding_book\n\n#_1EE076: LDY.b #$01\n#_1EE078: BIT.b $F4\n#_1EE07A: BVS .not_pressing_y\n\n.not_holding_book\n#_1EE07C: LDA.b $F6\n#_1EE07E: BPL .exit\n\n#_1EE080: LDY.b #$00\n\n.not_pressing_y\n#_1EE082: CPY.b #$01\n#_1EE084: BNE .no_book_pose\n\n#_1EE086: STZ.w $0300\n\n#_1EE089: LDA.b #$20\n#_1EE08B: STA.w $037A\n\n#_1EE08E: STZ.w $012E\n\n.no_book_pose\n#_1EE091: LDA.w PlaqueMessages_pedestal_low,Y\n#_1EE094: XBA\n\n#_1EE095: LDA.w PlaqueMessages_pedestal_high,Y\n#_1EE098: TAY\n\n#_1EE099: XBA\n\n#_1EE09A: JSL Sprite_ShowMessageUnconditional\n\n.exit\n#_1EE09E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "DesertTablet", + "code": "DesertTablet:\n#_1EE09F: LDA.b $2F\n#_1EE0A1: BNE .exit\n\n#_1EE0A3: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EE0A7: BCC .exit\n\n#_1EE0A9: LDA.w $0202\n#_1EE0AC: CMP.b #$0F\n#_1EE0AE: BNE .not_holding_book\n\n#_1EE0B0: LDY.b #$01\n#_1EE0B2: BIT.b $F4\n#_1EE0B4: BVS .not_pressing_y\n\n.not_holding_book\n#_1EE0B6: LDA.b $F6\n#_1EE0B8: BPL .exit\n\n#_1EE0BA: LDY.b #$00\n\n.not_pressing_y\n#_1EE0BC: CPY.b #$01\n#_1EE0BE: BNE .no_book_pose\n\n#_1EE0C0: STZ.w $0300\n\n#_1EE0C3: LDA.b #$20\n#_1EE0C5: STA.w $037A\n\n#_1EE0C8: STZ.w $012E\n\n#_1EE0CB: JSL InitiateDesertCutscene\n\n.no_book_pose\n#_1EE0CF: LDA.w PlaqueMessages_desert_low,Y\n#_1EE0D2: XBA\n\n#_1EE0D3: LDA.w PlaqueMessages_desert_high,Y\n#_1EE0D6: TAY\n\n#_1EE0D7: XBA\n\n#_1EE0D8: JSL Sprite_ShowMessageUnconditional\n\n.exit\n#_1EE0DC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B4_PurpleChest", + "code": "Sprite_B4_PurpleChest:\n#_1EE0DD: JSL SpriteDraw_SingleLarge_long\n#_1EE0E1: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE0E4: LDA.w $0D80,X\n#_1EE0E7: BNE .follow_link\n\n#_1EE0E9: LDA.b #$16 ; MESSAGE 0116\n#_1EE0EB: LDY.b #$01\n#_1EE0ED: JSL Sprite_ShowMessageOnContact\n#_1EE0F1: BCC .exit\n\n#_1EE0F3: LDA.l $7EF3CC\n#_1EE0F7: BNE .exit\n\n#_1EE0F9: INC.w $0D80,X\n\n.exit\n#_1EE0FC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B5_BombShop", + "code": "Sprite_B5_BombShop:\n#_1EE111: LDA.w $0E80,X\n#_1EE114: JSL JumpTableLocal\n#_1EE118: dw BombShop_Clerk\n#_1EE11A: dw BombShop_Bomb\n#_1EE11C: dw BombShop_SuperBomb\n#_1EE11E: dw BombShop_Huff\n\n; =========================================================\n\npool BombShop_Clerk\n\n.message_low\n#_1EE120: db $17 ; MESSAGE 0117\n#_1EE121: db $18 ; MESSAGE 0118\n\n.message_high\n#_1EE122: db $01\n#_1EE123: db $01\n\n.anim_step\n#_1EE124: db $00, $01, $00, $01, $00, $01, $00, $01\n\n.timer\n#_1EE12C: db 255, 32, 255, 24, 15, 24, 255, 15\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "BombShop_Clerk", + "code": "BombShop_Clerk:\n#_1EE134: JSR SpriteDraw_BombShop\n#_1EE137: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE13A: LDA.w $0DF0,X\n#_1EE13D: BNE .continue\n\n#_1EE13F: LDA.w $0E90,X\n#_1EE142: TAY\n\n#_1EE143: INC A\n#_1EE144: AND.b #$07\n#_1EE146: STA.w $0E90,X\n\n#_1EE149: LDA.w .timer,Y\n#_1EE14C: STA.w $0DF0,X\n\n#_1EE14F: LDA.w .anim_step,Y\n#_1EE152: STA.w $0DC0,X\n#_1EE155: BNE .inhale\n\n#_1EE157: LDA.b #$11 ; SFX3.11\n#_1EE159: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EE15D: JSR BombShop_ClerkExhalation\n\n#_1EE160: BRA .continue\n\n.inhale\n#_1EE162: LDA.b #$12 ; SFX3.12\n#_1EE164: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n.continue\n#_1EE168: LDY.b #$00\n\n#_1EE16A: LDA.l $7EF37A\n#_1EE16E: AND.b #$05\n#_1EE170: CMP.b #$05\n#_1EE172: BNE .no_super_bomb_message\n\n#_1EE174: LDA.l $7EF3C9\n#_1EE178: AND.b #$20\n#_1EE17A: BEQ .no_super_bomb_message\n\n#_1EE17C: LDY.b #$01\n\n.no_super_bomb_message\n#_1EE17E: LDA.w .message_low,Y\n#_1EE181: XBA\n\n#_1EE182: LDA.w .message_high,Y\n#_1EE185: TAY\n\n#_1EE186: XBA\n\n#_1EE187: JSL Sprite_ShowSolicitedMessage\n#_1EE18B: JSL Sprite_BehaveAsBarrier\n\n#_1EE18F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BombShop_Bomb", + "code": "BombShop_Bomb:\n#_1EE190: JSR SpriteDraw_BombShop\n#_1EE193: JSR Sprite_CheckIfActive_Bank1E\n#_1EE196: JSL Sprite_BehaveAsBarrier\n\n#_1EE19A: JSR ShopItem_CheckForAPress\n#_1EE19D: BCC .exit\n\n#_1EE19F: LDA.l $7EF370\n#_1EE1A3: PHX\n\n#_1EE1A4: TAX\n#_1EE1A5: LDA.l CapacityUpgrades_bombs_hex,X\n\n#_1EE1A9: PLX\n\n#_1EE1AA: CMP.l $7EF343\n#_1EE1AE: BEQ .no_space\n\n#_1EE1B0: LDA.b #$64\n#_1EE1B2: LDY.b #$00\n#_1EE1B4: JSR ShopItem_HandleCost\n#_1EE1B7: BCC .too_poor\n\n#_1EE1B9: LDA.b #$1B\n#_1EE1BB: STA.l $7EF375\n\n#_1EE1BF: STZ.w $0DD0,X\n\n#_1EE1C2: LDA.b #$19 ; MESSAGE 0119\n#_1EE1C4: LDY.b #$01\n#_1EE1C6: JSL Sprite_ShowMessageUnconditional\n\n#_1EE1CA: LDY.b #$28 ; ITEMGET 28\n#_1EE1CC: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EE1CF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BombShop_SuperBomb", + "code": "BombShop_SuperBomb:\n#_1EE1DF: JSR SpriteDraw_BombShop\n#_1EE1E2: JSR Sprite_CheckIfActive_Bank1E\n#_1EE1E5: JSL Sprite_BehaveAsBarrier\n#_1EE1E9: JSR ShopItem_CheckForAPress\n#_1EE1EC: BCC .exit\n\n#_1EE1EE: LDA.b #$64\n#_1EE1F0: LDY.b #$00\n#_1EE1F2: JSR ShopItem_HandleCost\n#_1EE1F5: BCC .too_poor\n\n#_1EE1F7: LDA.b #$0D ; FOLLOWER 0D\n#_1EE1F9: STA.l $7EF3CC\n\n#_1EE1FD: PHX\n#_1EE1FE: JSL LoadFollowerGraphics\n#_1EE202: PLX\n\n#_1EE203: JSL Sprite_BecomeFollower\n\n#_1EE207: STZ.w $0DD0,X\n\n#_1EE20A: LDA.b #$1A ; MESSAGE 011A\n#_1EE20C: LDY.b #$01\n#_1EE20E: JSL Sprite_ShowMessageUnconditional\n\n.exit\n#_1EE212: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BombShop_Huff", + "code": "BombShop_Huff:\n#_1EE21A: LDA.b #$04\n#_1EE21C: JSL SpriteDraw_AllocateOAMFromRegionC\n\n#_1EE220: JSL SpriteDraw_SingleSmall_long\n\n#_1EE224: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE227: LDA.w $0F50,X\n#_1EE22A: AND.b #$30\n#_1EE22C: STA.w $0F50,X\n\n#_1EE22F: LDA.b $1A\n#_1EE231: LSR A\n#_1EE232: LSR A\n#_1EE233: AND.b #$03\n#_1EE235: TAY\n\n#_1EE236: LDA.w $0F50,X\n#_1EE239: ORA.w .prop,Y\n#_1EE23C: STA.w $0F50,X\n\n#_1EE23F: INC.w $0F80,X\n\n#_1EE242: JSR Sprite_Move_Z_Bank1E\n\n#_1EE245: LDA.w $0DF0,X\n#_1EE248: BNE .stick_around_for_now\n\n#_1EE24A: STZ.w $0DD0,X\n\n.stick_around_for_now\n#_1EE24D: LSR A\n#_1EE24E: LSR A\n#_1EE24F: LSR A\n#_1EE250: AND.b #$03\n#_1EE252: STA.w $0DC0,X\n\n#_1EE255: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BombShop_ClerkExhalation", + "code": "BombShop_ClerkExhalation:\n#_1EE256: LDA.b #$B5 ; SPRITE B5\n#_1EE258: JSL Sprite_SpawnDynamically\n\n#_1EE25C: LDA.b #$03\n#_1EE25E: STA.w $0E80,Y\n#_1EE261: STA.w $0BA0,Y\n\n#_1EE264: LDA.b $00\n#_1EE266: CLC\n#_1EE267: ADC.b #$04\n#_1EE269: STA.w $0D10,Y\n\n#_1EE26C: LDA.b $01\n#_1EE26E: STA.w $0D30,Y\n\n#_1EE271: LDA.b $02\n#_1EE273: CLC\n#_1EE274: ADC.b #$10\n#_1EE276: STA.w $0D00,Y\n\n#_1EE279: LDA.b $03\n#_1EE27B: STA.w $0D20,Y\n\n#_1EE27E: LDA.b #$04\n#_1EE280: STA.w $0F70,Y\n\n#_1EE283: LDA.b #$F4\n#_1EE285: STA.w $0F80,Y\n\n#_1EE288: LDA.b #$17\n#_1EE28A: STA.w $0DF0,Y\n\n#_1EE28D: LDA.w $0E60,Y\n#_1EE290: AND.b #$EE\n#_1EE292: STA.w $0E60,Y\n\n#_1EE295: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_BombShop", + "code": "SpriteDraw_BombShop:\n#_1EE2C6: LDA.b #$01\n#_1EE2C8: STA.b $06\n#_1EE2CA: STZ.b $07\n\n#_1EE2CC: LDA.w $0E80,X\n#_1EE2CF: ASL A\n\n#_1EE2D0: ADC.w $0DC0,X\n#_1EE2D3: ASL A\n#_1EE2D4: ASL A\n#_1EE2D5: ASL A\n\n#_1EE2D6: ADC.b #.oam_groups>>0\n#_1EE2D8: STA.b $08\n\n#_1EE2DA: LDA.b #.oam_groups>>8\n#_1EE2DC: ADC.b #$00\n#_1EE2DE: STA.b $09\n\n#_1EE2E0: JSL SpriteDraw_Tabulated_player_deferred\n#_1EE2E4: JSL SpriteDraw_Shadow_long\n\n#_1EE2E8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B6_Kiki", + "code": "Sprite_B6_Kiki:\n#_1EE2EF: LDA.w $0E80,X\n#_1EE2F2: JSL JumpTableLocal\n#_1EE2F6: dw Kiki_Dormant\n#_1EE2F8: dw Kiki_OfferEntranceService\n#_1EE2FA: dw Kiki_OfferInitialService\n#_1EE2FC: dw Kiki_Flee\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_Flee", + "code": "Kiki_Flee:\n#_1EE2FE: JSR SpriteDraw_Kiki\n#_1EE301: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE304: LDA.w $0F70,X\n#_1EE307: BNE .dont_flag\n\n#_1EE309: REP #$20\n\n#_1EE30B: LDA.w $0FD8\n#_1EE30E: SEC\n#_1EE30F: SBC.w #$0C98\n\n#_1EE312: CMP.w #$00D0\n#_1EE315: BCS .dont_flag\n\n#_1EE317: LDA.w $0FDA\n#_1EE31A: SEC\n#_1EE31B: SBC.w #$06A5\n\n#_1EE31E: CMP.w #$00D0\n#_1EE321: BCS .dont_flag\n\n#_1EE323: LDA.w #$FFFF\n#_1EE326: STA.b $01\n\n.dont_flag\n#_1EE328: SEP #$30\n\n#_1EE32A: LDA.b $01\n#_1EE32C: ORA.b $03\n#_1EE32E: BEQ .stay\n\n#_1EE330: STZ.w $0DD0,X\n\n.stay\n#_1EE333: DEC.w $0F80,X\n#_1EE336: DEC.w $0F80,X\n\n#_1EE339: JSR Sprite_Move_XYZ_Bank1E\n\n#_1EE33C: LDA.w $0F70,X\n#_1EE33F: BPL .no_bounce\n\n#_1EE341: STZ.w $0F70,X\n\n#_1EE344: JSL GetRandomNumber\n#_1EE348: AND.b #$0F\n#_1EE34A: ORA.b #$10\n#_1EE34C: STA.w $0F80,X\n\n.no_bounce\n#_1EE34F: LDA.b #$F5\n#_1EE351: STA.b $04\n\n#_1EE353: LDA.b #$0C\n#_1EE355: STA.b $05\n\n#_1EE357: LDA.b #$FE\n#_1EE359: STA.b $06\n\n#_1EE35B: LDA.b #$06\n#_1EE35D: STA.b $07\n\n#_1EE35F: LDA.b #$10\n#_1EE361: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EE365: LDA.b $00\n#_1EE367: ASL A\n#_1EE368: STA.w $0D40,X\n\n#_1EE36B: LDA.b $01\n#_1EE36D: ASL A\n#_1EE36E: STA.w $0D50,X\n\n#_1EE371: LDA.w $02F2\n#_1EE374: AND.b #$FC\n#_1EE376: STA.w $02F2\n\n#_1EE379: LDA.b $00\n#_1EE37B: BPL .positive_x\n\n#_1EE37D: EOR.b #$FF\n#_1EE37F: INC A\n#_1EE380: STA.b $00\n\n.positive_x\n#_1EE382: LDA.b $01\n#_1EE384: BPL .positive_y\n\n#_1EE386: EOR.b #$FF\n#_1EE388: INC A\n\n.positive_y\n#_1EE389: CMP.b $00\n#_1EE38B: BCC .at_max_x\n\n#_1EE38D: LDA.w $0D50,X\n#_1EE390: ROL A\n#_1EE391: ROL A\n#_1EE392: AND.b #$01\n#_1EE394: EOR.b #$03\n#_1EE396: BRA .continue\n\n.at_max_x\n#_1EE398: LDA.w $0D40,X\n#_1EE39B: ROL A\n#_1EE39C: ROL A\n#_1EE39D: AND.b #$01\n#_1EE39F: EOR.b #$01\n\n.continue\n#_1EE3A1: STA.w $0DE0,X\n\n#_1EE3A4: LDA.b $1A\n#_1EE3A6: LSR A\n#_1EE3A7: LSR A\n#_1EE3A8: LSR A\n#_1EE3A9: AND.b #$01\n#_1EE3AB: STA.w $0DC0,X\n\n#_1EE3AE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_OfferInitialService", + "code": "Kiki_OfferInitialService:\n#_1EE3AF: LDA.w $0D80,X\n#_1EE3B2: DEC A\n#_1EE3B3: DEC A\n#_1EE3B4: BMI .invisible\n\n#_1EE3B6: JSR SpriteDraw_Kiki\n\n.invisible\n#_1EE3B9: JSR Sprite_CheckIfActive_Bank1E\n#_1EE3BC: JSR Sprite_Move_XYZ_Bank1E\n\n#_1EE3BF: DEC.w $0F80,X\n\n#_1EE3C2: LDA.w $0F70,X\n#_1EE3C5: BPL .airborne\n\n#_1EE3C7: STZ.w $0F80,X\n#_1EE3CA: STZ.w $0F70,X\n\n.airborne\n#_1EE3CD: LDA.b $1A\n#_1EE3CF: LSR A\n#_1EE3D0: LSR A\n#_1EE3D1: LSR A\n#_1EE3D2: AND.b #$01\n#_1EE3D4: STA.w $0DC0,X\n\n#_1EE3D7: LDA.w $0D80,X\n#_1EE3DA: JSL JumpTableLocal\n#_1EE3DE: dw Kiki_OfferToFollow\n#_1EE3E0: dw Kiki_OfferToFollowTransaction\n#_1EE3E2: dw Kiki_MoveTowardsLink\n#_1EE3E4: dw Kiki_WaitABit\n#_1EE3E6: dw Kiki_EndIntroductionCutscene\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_OfferToFollow", + "code": "Kiki_OfferToFollow:\n#_1EE3E8: LDA.b #$1E ; MESSAGE 011E\n#_1EE3EA: LDY.b #$01\n#_1EE3EC: JSL Sprite_ShowMessageUnconditional\n\n#_1EE3F0: INC.w $0D80,X\n\n#_1EE3F3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_OfferToFollowTransaction", + "code": "Kiki_OfferToFollowTransaction:\n#_1EE3F4: LDA.w $1CE8\n#_1EE3F7: BNE .offer_rejected\n\n#_1EE3F9: LDA.b #$0A\n#_1EE3FB: LDY.b #$00\n#_1EE3FD: JSR ShopItem_HandleCost\n#_1EE400: BCC .offer_rejected\n\n#_1EE402: LDA.b #$1F ; MESSAGE 011F\n#_1EE404: LDY.b #$01\n#_1EE406: JSL Sprite_ShowMessageUnconditional\n\n#_1EE40A: LDA.w $02F2\n#_1EE40D: ORA.b #$03\n#_1EE40F: STA.w $02F2\n\n#_1EE412: STZ.w $0DD0,X\n\n#_1EE415: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_MoveTowardsLink", + "code": "Kiki_MoveTowardsLink:\n#_1EE433: INC.w $0D80,X\n\n#_1EE436: LDA.b #$F5\n#_1EE438: STA.b $04\n\n#_1EE43A: LDA.b #$0C\n#_1EE43C: STA.b $05\n\n#_1EE43E: LDA.b #$FE\n#_1EE440: STA.b $06\n\n#_1EE442: LDA.b #$06\n#_1EE444: STA.b $07\n\n#_1EE446: LDA.b #$09\n#_1EE448: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EE44C: LDA.b $00\n#_1EE44E: STA.w $0D40,X\n\n#_1EE451: LDA.b $01\n#_1EE453: STA.w $0D50,X\n\n#_1EE456: ASL A\n#_1EE457: ROL A\n#_1EE458: AND.b #$01\n#_1EE45A: EOR.b #$03\n#_1EE45C: STA.w $0DE0,X\n\n#_1EE45F: LDA.b #$20\n#_1EE461: STA.w $0DF0,X\n\n#_1EE464: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_WaitABit", + "code": "Kiki_WaitABit:\n#_1EE465: LDA.w $0DF0,X\n#_1EE468: BNE .exit\n\n#_1EE46A: INC.w $0D80,X\n\n#_1EE46D: LDA.b #$10\n#_1EE46F: STA.w $0F80,X\n#_1EE472: STA.w $0DF0,X\n\n.exit\n#_1EE475: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_EndIntroductionCutscene", + "code": "Kiki_EndIntroductionCutscene:\n#_1EE476: LDA.w $0DF0,X\n#_1EE479: BNE .exit\n\n#_1EE47B: LDA.w $0F70,X\n#_1EE47E: BNE .exit\n\n#_1EE480: STZ.w $0DD0,X\n#_1EE483: STZ.w $02E4\n\n.exit\n#_1EE486: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_Dormant", + "code": "Kiki_Dormant:\n#_1EE487: JSL Sprite_PrepOAMCoord_long\n#_1EE48B: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE48E: LDA.w $02E0\n#_1EE491: BNE .exit\n\n#_1EE493: LDA.w $037B\n#_1EE496: ORA.w $031F\n#_1EE499: BNE .exit\n\n#_1EE49B: LDA.l $7EF3CC\n#_1EE49F: CMP.b #$0A ; FOLLOWER 0A\n#_1EE4A1: BEQ .exit\n\n#_1EE4A3: PHX\n\n#_1EE4A4: LDX.b $8A\n#_1EE4A6: LDA.l $7EF280,X\n\n#_1EE4AA: PLX\n\n#_1EE4AB: AND.b #$20\n#_1EE4AD: BNE .exit\n\n#_1EE4AF: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EE4B3: BCC .exit\n\n#_1EE4B5: LDA.b #$0A ; FOLLOWER 0A\n#_1EE4B7: STA.l $7EF3CC\n\n#_1EE4BB: PHX\n\n#_1EE4BC: STZ.w $02F9\n\n#_1EE4BF: JSL LoadFollowerGraphics\n#_1EE4C3: JSL Follower_Initialize\n\n#_1EE4C7: PLX\n\n.exit\n#_1EE4C8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_OfferEntranceService", + "code": "Kiki_OfferEntranceService:\n#_1EE4C9: JSR SpriteDraw_Kiki\n#_1EE4CC: JSR Sprite_CheckIfActive_Bank1E\n#_1EE4CF: JSR Sprite_Move_XYZ_Bank1E\n\n#_1EE4D2: DEC.w $0F80,X\n\n#_1EE4D5: LDA.w $0F70,X\n#_1EE4D8: BPL .airborne\n\n#_1EE4DA: STZ.w $0F80,X\n#_1EE4DD: STZ.w $0F70,X\n\n.airborne\n#_1EE4E0: LDA.w $0D80,X\n#_1EE4E3: JSL JumpTableLocal\n#_1EE4E7: dw Kiki_OfferToOpenPOD\n#_1EE4E9: dw Kiki_VerifyPurchase\n#_1EE4EB: dw Kiki_HopToSpot\n#_1EE4ED: dw Kiki_DartHead\n\n#_1EE4EF: dw Kiki_HopToSpot\n#_1EE4F1: dw Kiki_DartHead\n#_1EE4F3: dw Kiki_HopToSpot\n#_1EE4F5: dw Kiki_WalkOnRoof\n\n#_1EE4F7: dw Kiki_ReadyButtonPress\n#_1EE4F9: dw Kiki_SlamButton\n#_1EE4FB: dw Kiki_IdleOnRoof\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_OfferToOpenPOD", + "code": "Kiki_OfferToOpenPOD:\n#_1EE4FD: LDA.b #$1B ; MESSAGE 011B\n#_1EE4FF: LDY.b #$01\n#_1EE501: JSL Sprite_ShowMessageUnconditional\n\n#_1EE505: INC.w $0D80,X\n\n#_1EE508: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_VerifyPurchase", + "code": "Kiki_VerifyPurchase:\n#_1EE509: LDA.w $1CE8\n#_1EE50C: BEQ .offer_rejected\n\n.too_poor\n#_1EE50E: LDA.b #$1C ; MESSAGE 011C\n#_1EE510: LDY.b #$01\n#_1EE512: JSL Sprite_ShowMessageUnconditional\n\n#_1EE516: LDA.b #$03\n#_1EE518: STA.w $0E80,X\n\n#_1EE51B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_DartHead", + "code": "Kiki_DartHead:\n#_1EE539: LDA.w $0E00,X\n#_1EE53C: BNE .delay\n\n#_1EE53E: LDA.w $0D80,X\n#_1EE541: INC.w $0D80,X\n\n#_1EE544: LSR A\n#_1EE545: AND.b #$01\n#_1EE547: TAY\n\n#_1EE548: LDA.w .next_jump_speed,Y\n#_1EE54B: STA.w $0F80,X\n\n#_1EE54E: LDA.b #$20 ; SFX2.20\n#_1EE550: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EE554: LDA.w $0D80,X\n#_1EE557: LSR A\n#_1EE558: AND.b #$01\n#_1EE55A: ORA.b #$04\n#_1EE55C: STA.w $0DE0,X\n\n#_1EE55F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_HopToSpot", + "code": "Kiki_HopToSpot:\n#_1EE582: LDA.b $1A\n#_1EE584: LSR A\n#_1EE585: LSR A\n#_1EE586: LSR A\n#_1EE587: AND.b #$01\n#_1EE589: STA.w $0DC0,X\n\n#_1EE58C: LDA.w $0D80,X\n#_1EE58F: SEC\n#_1EE590: SBC.b #$02\n#_1EE592: TAY\n\n#_1EE593: LDA.w .target_x+0,Y\n#_1EE596: SEC\n#_1EE597: SBC.w $0D10,X\n#_1EE59A: CLC\n#_1EE59B: ADC.b #$02\n\n#_1EE59D: CMP.b #$04\n#_1EE59F: BCS .not_at_target\n\n#_1EE5A1: LDA.w .target_y+0,Y\n#_1EE5A4: SEC\n#_1EE5A5: SBC.w $0D00,X\n#_1EE5A8: CLC\n#_1EE5A9: ADC.b #$02\n\n#_1EE5AB: CMP.b #$04\n#_1EE5AD: BCS .not_at_target\n\n#_1EE5AF: INC.w $0D80,X\n\n#_1EE5B2: STZ.w $0D40,X\n#_1EE5B5: STZ.w $0D50,X\n\n#_1EE5B8: LDA.b #$20\n#_1EE5BA: STA.w $0E00,X\n\n#_1EE5BD: LDA.b #$21 ; SFX2.21\n#_1EE5BF: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EE5C3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_WalkOnRoof", + "code": "Kiki_WalkOnRoof:\n#_1EE5EE: LDA.b $1A\n#_1EE5F0: LSR A\n#_1EE5F1: LSR A\n#_1EE5F2: LSR A\n#_1EE5F3: AND.b #$01\n#_1EE5F5: STA.w $0DC0,X\n\n#_1EE5F8: LDA.w $0F70,X\n#_1EE5FB: BNE .exit\n\n#_1EE5FD: LDA.w $0DF0,X\n#_1EE600: BNE .exit\n\n#_1EE602: LDA.w $0D90,X\n#_1EE605: TAY\n\n#_1EE606: INC.w $0D90,X\n\n#_1EE609: LDA.w .step,Y\n#_1EE60C: BMI .on_roof\n\n#_1EE60E: PHA\n\n#_1EE60F: STA.w $0DE0,X\n\n#_1EE612: LDA.w .timer,Y\n#_1EE615: STA.w $0DF0,X\n\n#_1EE618: PLA\n#_1EE619: TAY\n\n#_1EE61A: LDA.w .speed_x,Y\n#_1EE61D: STA.w $0D50,X\n\n#_1EE620: LDA.w .speed_y,Y\n#_1EE623: STA.w $0D40,X\n\n.exit\n#_1EE626: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_ReadyButtonPress", + "code": "Kiki_ReadyButtonPress:\n#_1EE640: LDA.b #$08\n#_1EE642: STA.w $0DE0,X\n\n#_1EE645: STZ.w $0DC0,X\n\n#_1EE648: JSL GetRandomNumber\n#_1EE64C: AND.b #$0F\n#_1EE64E: ADC.b #$10\n#_1EE650: STA.w $0F80,X\n\n#_1EE653: INC.w $0D80,X\n\n#_1EE656: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_SlamButton", + "code": "Kiki_SlamButton:\n#_1EE657: LDA.w $0F80,X\n#_1EE65A: BPL Kiki_IdleOnRoof\n\n#_1EE65C: LDA.w $0F70,X\n#_1EE65F: BNE Kiki_IdleOnRoof\n\n#_1EE661: INC.w $0D80,X\n\n#_1EE664: LDA.b #$25 ; SFX3.25\n#_1EE666: JSL SpriteSFX_QueueSFX3WithPan\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_IdleOnRoof", + "code": "Kiki_IdleOnRoof:\n#_1EE66A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_RevertToSprite", + "code": "Kiki_RevertToSprite:\n#_1EE66B: JSR Kiki_SpawnHandlerMonke\n\n#_1EE66E: LDA.b #$01\n#_1EE670: STA.w $0E80,Y\n\n#_1EE673: LDA.b #$00\n#_1EE675: STA.l $7EF3CC\n\n#_1EE679: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_SpawnHandlerMonke", + "code": "Kiki_SpawnHandlerMonke:\n#_1EE67A: PHA\n\n#_1EE67B: LDA.b #$B6 ; SPRITE B6\n#_1EE67D: JSL Sprite_SpawnDynamically\n#_1EE681: BMI .no_space\n\n#_1EE683: PLA\n#_1EE684: PHX\n#_1EE685: TAX\n\n#_1EE686: LDA.w $1A64,X\n#_1EE689: AND.b #$03\n#_1EE68B: STA.w $0EB0,Y\n#_1EE68E: STA.w $0DE0,Y\n\n#_1EE691: LDA.w $1A00,X\n#_1EE694: CLC\n#_1EE695: ADC.b #$02\n#_1EE697: STA.w $0D00,Y\n\n#_1EE69A: LDA.w $1A14,X\n#_1EE69D: ADC.b #$00\n#_1EE69F: STA.w $0D20,Y\n\n#_1EE6A2: LDA.w $1A28,X\n#_1EE6A5: CLC\n#_1EE6A6: ADC.b #$02\n#_1EE6A8: STA.w $0D10,Y\n\n#_1EE6AB: LDA.w $1A3C,X\n#_1EE6AE: ADC.b #$00\n#_1EE6B0: STA.w $0D30,Y\n\n#_1EE6B3: LDA.b $EE\n#_1EE6B5: STA.w $0F20,Y\n\n#_1EE6B8: LDA.b #$01\n#_1EE6BA: STA.w $0BA0,Y\n\n#_1EE6BD: INC A\n#_1EE6BE: STA.w $0F20,Y\n\n#_1EE6C1: STZ.b $5E\n\n#_1EE6C3: PLX\n\n#_1EE6C4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_SpawnHandler_A", + "code": "Kiki_SpawnHandler_A:\n#_1EE6C7: JSR Kiki_SpawnHandlerMonke\n\n#_1EE6CA: LDA.b #$02\n#_1EE6CC: STA.w $0E80,Y\n\n#_1EE6CF: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Kiki_SpawnHandler_B", + "code": "Kiki_SpawnHandler_B:\n#_1EE6D0: JSR Kiki_SpawnHandlerMonke\n\n#_1EE6D3: LDA.b #$01\n#_1EE6D5: STA.w $0F70,Y\n\n#_1EE6D8: LDA.b #$10\n#_1EE6DA: STA.w $0F80,Y\n\n#_1EE6DD: LDA.b #$03\n#_1EE6DF: STA.w $0E80,Y\n\n#_1EE6E2: LDA.b #$00\n#_1EE6E4: STA.l $7EF3CC\n\n#_1EE6E8: RTL", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Kiki", + "code": "SpriteDraw_Kiki:\n#_1EE859: LDA.w $0DE0,X\n#_1EE85C: CMP.b #$08\n#_1EE85E: BCS .use_set_2\n\n#_1EE860: LDA.w $0DE0,X\n#_1EE863: ASL A\n#_1EE864: ADC.w $0DC0,X\n#_1EE867: ASL A\n#_1EE868: TAY\n\n#_1EE869: LDA.w .gfx_offset+0,Y\n#_1EE86C: STA.w $0AE8\n\n#_1EE86F: LDA.w .gfx_offset+1,Y\n#_1EE872: STA.w $0AEA\n\n#_1EE875: TYA\n#_1EE876: ASL A\n#_1EE877: ASL A\n#_1EE878: ASL A\n#_1EE879: ADC.b #.oam_groups_a>>0\n#_1EE87B: STA.b $08\n\n#_1EE87D: LDA.b #.oam_groups_a>>8\n#_1EE87F: ADC.b #$00\n#_1EE881: STA.b $09\n\n#_1EE883: LDA.b #$02\n#_1EE885: JSR SpriteDraw_Tabulated_Bank1E\n\n#_1EE888: LDA.w $0F00,X\n#_1EE88B: BNE .exit_a\n\n#_1EE88D: JSL SpriteDraw_Shadow_long\n\n.exit_a\n#_1EE891: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B7_BlindMaiden", + "code": "Sprite_B7_BlindMaiden:\n#_1EE8B6: JSL SpriteDraw_Maiden\n#_1EE8BA: JSR Sprite_CheckIfActive_Bank1E\n#_1EE8BD: JSL Sprite_TrackBodyToHead\n\n#_1EE8C1: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EE8C4: TYA\n#_1EE8C5: EOR.b #$03\n#_1EE8C7: STA.w $0EB0,X\n\n#_1EE8CA: LDA.w $0D80,X\n#_1EE8CD: BNE .become_follower\n\n#_1EE8CF: LDA.b #$22 ; MESSAGE 0122\n#_1EE8D1: LDY.b #$01\n#_1EE8D3: JSL Sprite_ShowMessageOnContact\n#_1EE8D7: BCC .exit\n\n#_1EE8D9: INC.w $0D80,X\n\n.exit\n#_1EE8DC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpritePrep_OldMan", + "code": "SpritePrep_OldMan:\n#_1EE8F1: PHB\n#_1EE8F2: PHK\n#_1EE8F3: PLB\n\n#_1EE8F4: JSR .main\n\n#_1EE8F7: PLB\n\n#_1EE8F8: RTL", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_RevertToSprite", + "code": "OldMan_RevertToSprite:\n#_1EE938: PHA\n\n#_1EE939: LDA.b #$AD ; SPRITE AD\n#_1EE93B: JSL Sprite_SpawnDynamically\n\n#_1EE93F: PLA\n\n#_1EE940: PHX\n\n#_1EE941: TAX\n\n#_1EE942: LDA.w $1A64,X\n#_1EE945: AND.b #$03\n#_1EE947: STA.w $0EB0,Y\n#_1EE94A: STA.w $0DE0,Y\n\n#_1EE94D: LDA.w $1A00,X\n#_1EE950: CLC\n#_1EE951: ADC.b #$02\n#_1EE953: STA.w $0D00,Y\n\n#_1EE956: LDA.w $1A14,X\n#_1EE959: ADC.b #$00\n#_1EE95B: STA.w $0D20,Y\n\n#_1EE95E: LDA.w $1A28,X\n#_1EE961: CLC\n#_1EE962: ADC.b #$02\n#_1EE964: STA.w $0D10,Y\n\n#_1EE967: LDA.w $1A3C,X\n#_1EE96A: ADC.b #$00\n#_1EE96C: STA.w $0D30,Y\n\n#_1EE96F: LDA.b $EE\n#_1EE971: STA.w $0F20,Y\n\n#_1EE974: LDA.b #$01\n#_1EE976: STA.w $0BA0,Y\n#_1EE979: STA.w $0E80,Y\n\n#_1EE97C: JSR OldMan_EnableCutscene\n\n#_1EE97F: PLX\n\n#_1EE980: LDA.b #$00\n#_1EE982: STA.l $7EF3CC\n\n#_1EE986: STZ.b $5E\n\n#_1EE988: RTL", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_EnableCutscene", + "code": "OldMan_EnableCutscene:\n#_1EE989: LDA.b #$01\n#_1EE98B: STA.w $02E4\n#_1EE98E: STA.w $037B\n\n#_1EE991: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AD_OldMan", + "code": "Sprite_AD_OldMan:\n#_1EE992: JSL SpriteDraw_OldMan\n#_1EE996: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EE999: LDA.w $0E80,X\n#_1EE99C: JSL JumpTableLocal\n#_1EE9A0: dw OldMan_Lost\n#_1EE9A2: dw OldMan_Returning\n#_1EE9A4: dw OldMan_Home\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Lost", + "code": "OldMan_Lost:\n#_1EE9A6: LDA.w $0D80,X\n#_1EE9A9: JSL JumpTableLocal\n#_1EE9AD: dw OldMan_Lost_Wait\n#_1EE9AF: dw OldMan_Lost_BecomeFollower\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Lost_Wait", + "code": "OldMan_Lost_Wait:\n#_1EE9B1: JSL Sprite_TrackBodyToHead\n\n#_1EE9B5: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EE9B8: TYA\n#_1EE9B9: EOR.b #$03\n#_1EE9BB: STA.w $0EB0,X\n\n#_1EE9BE: LDA.b #$9C ; MESSAGE 009C\n#_1EE9C0: LDY.b #$00\n#_1EE9C2: JSL Sprite_ShowMessageOnContact\n#_1EE9C6: BCC .exit\n\n#_1EE9C8: STA.w $0DE0,X\n#_1EE9CB: STA.w $0EB0,X\n\n#_1EE9CE: INC.w $0D80,X\n\n.exit\n#_1EE9D1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Lost_BecomeFollower", + "code": "OldMan_Lost_BecomeFollower:\n#_1EE9D2: LDA.b #$04 ; FOLLOWER 04\n#_1EE9D4: STA.l $7EF3CC\n\n#_1EE9D8: JSL Sprite_BecomeFollower\n\n#_1EE9DC: LDA.b #$05\n#_1EE9DE: STA.l $7EF3C8\n\n#_1EE9E2: STZ.w $0DD0,X\n\n#_1EE9E5: JSL CacheRoomEntryProperties_long\n\n#_1EE9E9: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Returning", + "code": "OldMan_Returning:\n#_1EE9EA: JSR Sprite_Move_XY_Bank1E\n\n#_1EE9ED: LDA.w $0D80,X\n#_1EE9F0: JSL JumpTableLocal\n#_1EE9F4: dw OldMan_Returning_GiveMirror\n#_1EE9F6: dw OldMan_Returning_Move\n#_1EE9F8: dw OldMan_Returning_EnterDoor\n#_1EE9FA: dw OldMan_Returning_FinishUp\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Returning_GiveMirror", + "code": "OldMan_Returning_GiveMirror:\n#_1EE9FC: INC.w $0D80,X\n\n#_1EE9FF: LDY.b #$1A ; ITEMGET 1A\n#_1EEA01: STZ.w $02E9\n#_1EEA04: JSL Link_ReceiveItem\n\n#_1EEA08: LDA.b #$01\n#_1EEA0A: STA.l $7EF3C8\n\n#_1EEA0E: JSR OldMan_EnableCutscene\n\n#_1EEA11: LDA.b #$30\n#_1EEA13: STA.w $0DF0,X\n\n#_1EEA16: LDA.b #$08\n#_1EEA18: STA.w $0D50,X\n\n#_1EEA1B: LSR A\n#_1EEA1C: STA.w $0D40,X\n\n#_1EEA1F: LDA.b #$03\n#_1EEA21: STA.w $0EB0,X\n#_1EEA24: STA.w $0DE0,X\n\n#_1EEA27: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Returning_Move", + "code": "OldMan_Returning_Move:\n#_1EEA28: JSR OldMan_EnableCutscene\n\n#_1EEA2B: LDA.w $0DF0,X\n#_1EEA2E: BNE .delay\n\n#_1EEA30: INC.w $0D80,X\n\n.delay\n#_1EEA33: TXA\n#_1EEA34: EOR.b $1A\n#_1EEA36: LSR A\n#_1EEA37: LSR A\n#_1EEA38: LSR A\n#_1EEA39: AND.b #$01\n#_1EEA3B: STA.w $0DC0,X\n\n#_1EEA3E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Returning_EnterDoor", + "code": "OldMan_Returning_EnterDoor:\n#_1EEA3F: STZ.w $0EB0,X\n\n#_1EEA42: STZ.w $0DE0,X\n\n#_1EEA45: LDY.w $0FDE\n\n#_1EEA48: LDA.w $0B18,Y\n#_1EEA4B: STA.b $00\n\n#_1EEA4D: LDA.w $0B20,Y\n#_1EEA50: STA.b $01\n\n#_1EEA52: LDA.w $0D00,X\n#_1EEA55: STA.b $02\n\n#_1EEA57: LDA.w $0D20,X\n#_1EEA5A: STA.b $03\n\n#_1EEA5C: REP #$20\n\n#_1EEA5E: LDA.b $00\n#_1EEA60: CMP.b $02\n\n#_1EEA62: SEP #$30\n#_1EEA64: BCC .not_north_enough\n\n#_1EEA66: INC.w $0D80,X\n\n#_1EEA69: STZ.w $0D50,X\n#_1EEA6C: STZ.w $0D40,X\n\n#_1EEA6F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Returning_FinishUp", + "code": "OldMan_Returning_FinishUp:\n#_1EEAA3: STZ.w $0DD0,X\n#_1EEAA6: STZ.w $02E4\n#_1EEAA9: STZ.w $037B\n\n#_1EEAAC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "OldMan_Home", + "code": "OldMan_Home:\n#_1EEAB3: JSL Sprite_BehaveAsBarrier\n\n#_1EEAB7: LDA.w $0D80,X\n#_1EEABA: BEQ .no_kiss\n\n#_1EEABC: LDA.b #$A0\n#_1EEABE: STA.l $7EF372\n\n#_1EEAC2: STZ.w $0D80,X\n\n.no_kiss\n#_1EEAC5: LDY.b #$02\n\n#_1EEAC7: LDA.l $7EF3C5\n#_1EEACB: CMP.b #$03\n#_1EEACD: BCS .agahnim_defeated\n\n#_1EEACF: LDA.l $7EF357\n#_1EEAD3: TAY\n\n.agahnim_defeated\n#_1EEAD4: LDA.w .message_low,Y\n#_1EEAD7: XBA\n\n#_1EEAD8: LDA.w .message_high,Y\n#_1EEADB: TAY\n\n#_1EEADC: XBA\n#_1EEADD: JSL Sprite_ShowSolicitedMessage\n#_1EEAE1: BCC .exit\n\n#_1EEAE3: INC.w $0D80,X\n\n.exit\n#_1EEAE6: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B8_DialogueTester", + "code": "Sprite_B8_DialogueTester:\n#_1EEAE7: JSL SpriteDraw_Priest\n\n#_1EEAEB: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EEAEE: LDA.w $0D90,X\n#_1EEAF1: AND.b #$03\n#_1EEAF3: STA.w $0DE0,X\n\n#_1EEAF6: LDA.w $0D80,X\n#_1EEAF9: JSL JumpTableLocal\n#_1EEAFD: dw DialogueTester_Initialize\n#_1EEAFF: dw DialogueTester_TestMessage\n#_1EEB01: dw DialogueTester_NextMessage\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "DialogueTester_Initialize", + "code": "DialogueTester_Initialize:\n#_1EEB03: STZ.w $0D90,X\n\n#_1EEB06: STZ.w $0DA0,X\n\n#_1EEB09: INC.w $0D80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "DialogueTester_TestMessage", + "code": "DialogueTester_TestMessage:\n#_1EEB0C: LDA.w $0D90,X\n#_1EEB0F: LDY.w $0DA0,X\n\n#_1EEB12: JSL Sprite_ShowMessageOnContact\n#_1EEB16: BCC .exit\n\n#_1EEB18: INC.w $0D80,X\n\n.exit\n#_1EEB1B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "DialogueTester_NextMessage", + "code": "DialogueTester_NextMessage:\n#_1EEB1C: LDA.w $0D90,X\n#_1EEB1F: CLC\n#_1EEB20: ADC.b #$01\n#_1EEB22: STA.w $0D90,X\n\n#_1EEB25: LDA.w $0DA0,X\n#_1EEB28: ADC.b #$00\n#_1EEB2A: STA.w $0DA0,X\n\n#_1EEB2D: LDA.b #$01\n#_1EEB2F: STA.w $0D80,X\n\n#_1EEB32: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B9_BullyAndPinkBall", + "code": "Sprite_B9_BullyAndPinkBall:\n#_1EEB33: LDA.w $0E80,X\n#_1EEB36: JSL JumpTableLocal\n#_1EEB3A: dw PinkBall\n#_1EEB3C: dw PinkBall_Distress\n#_1EEB3E: dw Bully\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall", + "code": "PinkBall:\n#_1EEB40: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n#_1EEB44: JSL SpriteDraw_SingleLarge_long\n\n#_1EEB48: JSR Sprite_CheckIfActive_Bank1E\n#_1EEB4B: JSR PinkBall_HandleMessage\n\n#_1EEB4E: LDA.w $0F50,X\n#_1EEB51: AND.b #$7F\n#_1EEB53: ORA.w $0EB0,X\n#_1EEB56: STA.w $0F50,X\n\n#_1EEB59: JSR Sprite_Move_XYZ_Bank1E\n#_1EEB5C: JSR Sprite_CheckTileCollision_Bank1E\n#_1EEB5F: BEQ .no_tile_collision\n\n#_1EEB61: AND.b #$03\n#_1EEB63: BNE .bounce\n\n#_1EEB65: LDA.w $0D40,X\n#_1EEB68: EOR.b #$FF\n#_1EEB6A: INC A\n#_1EEB6B: STA.w $0D40,X\n\n#_1EEB6E: LDA.w $0E90,X\n#_1EEB71: BEQ .bounce\n\n#_1EEB73: JSR BOI_OI_OI_OI_OING\n#_1EEB76: BRA .no_tile_collision\n\n.bounce\n#_1EEB78: LDA.w $0D50,X\n#_1EEB7B: EOR.b #$FF\n#_1EEB7D: INC A\n#_1EEB7E: STA.w $0D50,X\n\n#_1EEB81: LDA.w $0E90,X\n#_1EEB84: BEQ .no_tile_collision\n\n#_1EEB86: JSR BOI_OI_OI_OI_OING\n\n.no_tile_collision\n#_1EEB89: DEC.w $0F80,X\n\n#_1EEB8C: LDA.w $0F70,X\n#_1EEB8F: BPL .airborne\n\n#_1EEB91: STZ.w $0F70,X\n\n#_1EEB94: LDA.w $0F80,X\n#_1EEB97: EOR.b #$FF\n#_1EEB99: INC A\n\n#_1EEB9A: LSR A\n#_1EEB9B: LSR A\n#_1EEB9C: STA.w $0F80,X\n\n#_1EEB9F: AND.b #$FC\n#_1EEBA1: BEQ .no_sfx\n\n#_1EEBA3: JSR BOI_OI_OI_OI_OING\n\n.no_sfx\n#_1EEBA6: JSR PinkBall_HandleDeceleration\n\n.airborne\n#_1EEBA9: LDA.w $0E90,X\n#_1EEBAC: BNE PinkBall_Kicked\n\n#_1EEBAE: LDA.w $0EB0,X\n#_1EEBB1: BEQ PinkBall_RightSideUp\n#_1EEBB3: JMP.w PinkBall_UpsideDown\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_RightSideUp", + "code": "PinkBall_RightSideUp:\n#_1EEBB6: JSR PinkBall_Distress\n\n#_1EEBB9: TXA\n#_1EEBBA: EOR.b $1A\n#_1EEBBC: PHA\n\n#_1EEBBD: LSR A\n#_1EEBBE: LSR A\n#_1EEBBF: LSR A\n#_1EEBC0: AND.b #$01\n#_1EEBC2: STA.w $0DC0,X\n\n#_1EEBC5: PLA\n#_1EEBC6: AND.b #$3F\n#_1EEBC8: BNE .continue\n\n#_1EEBCA: JSL GetRandomNumber\n#_1EEBCE: STA.b $04\n\n#_1EEBD0: LDA.b $23\n#_1EEBD2: STA.b $05\n\n#_1EEBD4: JSL GetRandomNumber\n#_1EEBD8: STA.b $06\n\n#_1EEBDA: LDA.b $21\n#_1EEBDC: STA.b $07\n\n#_1EEBDE: LDA.b #$08\n#_1EEBE0: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EEBE4: LDA.b $01\n#_1EEBE6: STA.w $0DA0,X\n\n#_1EEBE9: LDA.b $00\n#_1EEBEB: STA.w $0D90,X\n\n#_1EEBEE: BEQ .continue\n\n#_1EEBF0: LDA.w $0F50,X\n#_1EEBF3: ORA.b #$40\n#_1EEBF5: STA.w $0F50,X\n\n#_1EEBF8: LDA.w $0D50,X\n#_1EEBFB: LSR A\n#_1EEBFC: AND.b #$40\n#_1EEBFE: EOR.w $0F50,X\n#_1EEC01: STA.w $0F50,X\n\n.continue\n#_1EEC04: LDA.w $0DA0,X\n#_1EEC07: STA.w $0D50,X\n\n#_1EEC0A: LDA.w $0D90,X\n#_1EEC0D: STA.w $0D40,X\n\n#_1EEC10: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_Kicked", + "code": "PinkBall_Kicked:\n#_1EEC11: LDA.w $0D50,X\n#_1EEC14: ORA.w $0D40,X\n#_1EEC17: BNE .have_momentum\n\n#_1EEC19: STZ.w $0E90,X\n\n#_1EEC1C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_UpsideDown", + "code": "PinkBall_UpsideDown:\n#_1EEC31: JSR PinkBall_Distress\n\n#_1EEC34: TXA\n#_1EEC35: EOR.b $1A\n#_1EEC37: BEQ .flip_upright\n\n#_1EEC39: LSR A\n#_1EEC3A: LSR A\n#_1EEC3B: AND.b #$01\n#_1EEC3D: STA.w $0DC0,X\n\n#_1EEC40: STZ.w $0D50,X\n#_1EEC43: STZ.w $0D40,X\n\n#_1EEC46: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_HandleDeceleration", + "code": "PinkBall_HandleDeceleration:\n#_1EEC4D: LDA.w $0D50,X\n#_1EEC50: BEQ .handle_y\n\n#_1EEC52: PHA\n\n#_1EEC53: ASL A\n#_1EEC54: ROL A\n#_1EEC55: AND.b #$01\n#_1EEC57: TAY\n\n#_1EEC58: PLA\n#_1EEC59: CLC\n#_1EEC5A: ADC.w .decel,Y\n#_1EEC5D: STA.w $0D50,X\n\n.handle_y\n#_1EEC60: LDA.w $0D40,X\n#_1EEC63: BEQ .exit\n\n#_1EEC65: PHA\n\n#_1EEC66: ASL A\n#_1EEC67: ROL A\n#_1EEC68: AND.b #$01\n#_1EEC6A: TAY\n\n#_1EEC6B: PLA\n#_1EEC6C: CLC\n#_1EEC6D: ADC.w .decel,Y\n#_1EEC70: STA.w $0D40,X\n\n.exit\n#_1EEC73: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_Distress", + "code": "PinkBall_Distress:\n#_1EEC74: JSR Sprite_PrepOAMCoord_Bank1E\n#_1EEC77: JSL Sprite_DrawDistressSweat\n\n#_1EEC7B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bully", + "code": "Bully:\n#_1EEC7C: JSR SpriteDraw_Bully\n#_1EEC7F: JSR Sprite_CheckIfActive_Bank1E\n#_1EEC82: JSR Bully_HandleMessage\n\n#_1EEC85: JSR Sprite_Move_XYZ_Bank1E\n#_1EEC88: JSR Sprite_CheckTileCollision_Bank1E\n#_1EEC8B: BEQ .no_tile_collision\n\n#_1EEC8D: AND.b #$03\n#_1EEC8F: BNE .horizontal_collision\n\n#_1EEC91: LDA.w $0D40,X\n#_1EEC94: EOR.b #$FF\n#_1EEC96: INC A\n#_1EEC97: STA.w $0D40,X\n#_1EEC9A: BRA .no_tile_collision\n\n.horizontal_collision\n#_1EEC9C: LDA.w $0D50,X\n#_1EEC9F: EOR.b #$FF\n#_1EECA1: INC A\n#_1EECA2: STA.w $0D50,X\n\n.no_tile_collision\n#_1EECA5: LDA.w $0D80,X\n#_1EECA8: JSL JumpTableLocal\n#_1EECAC: dw Bully_ChaseVictim\n#_1EECAE: dw Bully_PuntVictim\n#_1EECB0: dw Bully_Idle\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Bully_ChaseVictim", + "code": "Bully_ChaseVictim:\n#_1EECB2: TXA\n#_1EECB3: EOR.b $1A\n#_1EECB5: PHA\n\n#_1EECB6: LSR A\n#_1EECB7: LSR A\n#_1EECB8: LSR A\n#_1EECB9: AND.b #$01\n#_1EECBB: STA.w $0DC0,X\n\n#_1EECBE: PLA\n#_1EECBF: AND.b #$1F\n#_1EECC1: BNE .dont_turn\n\n#_1EECC3: LDA.w $0EB0,X\n#_1EECC6: TAY\n\n#_1EECC7: LDA.w $0D10,Y\n#_1EECCA: STA.b $04\n\n#_1EECCC: LDA.w $0D30,Y\n#_1EECCF: STA.b $05\n\n#_1EECD1: LDA.w $0D00,Y\n#_1EECD4: STA.b $06\n\n#_1EECD6: LDA.w $0D20,Y\n#_1EECD9: STA.b $07\n\n#_1EECDB: LDA.b #$0E\n#_1EECDD: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EECE1: LDA.b $00\n#_1EECE3: STA.w $0D40,X\n\n#_1EECE6: LDA.b $01\n#_1EECE8: STA.w $0D50,X\n#_1EECEB: BEQ .dont_turn\n\n#_1EECED: LDA.w $0D50,X\n#_1EECF0: ASL A\n#_1EECF1: ROL A\n#_1EECF2: AND.b #$01\n#_1EECF4: STA.w $0DE0,X\n\n.dont_turn\n#_1EECF7: LDA.w $0EB0,X\n#_1EECFA: TAY\n\n#_1EECFB: LDA.w $0F70,Y\n#_1EECFE: BNE .exit\n\n#_1EED00: LDA.w $0D10,X\n#_1EED03: SEC\n#_1EED04: SBC.w $0D10,Y\n#_1EED07: CLC\n#_1EED08: ADC.b #$08\n\n#_1EED0A: CMP.b #$10\n#_1EED0C: BCS .exit\n\n#_1EED0E: LDA.w $0D00,X\n#_1EED11: SEC\n#_1EED12: SBC.w $0D00,Y\n#_1EED15: CLC\n#_1EED16: ADC.b #$08\n\n#_1EED18: CMP.b #$10\n#_1EED1A: BCS .exit\n\n#_1EED1C: INC.w $0D80,X\n\n#_1EED1F: JSR BOI_OI_OI_OI_OING\n\n.exit\n#_1EED22: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bully_PuntVictim", + "code": "Bully_PuntVictim:\n#_1EED23: INC.w $0D80,X\n\n#_1EED26: LDA.w $0EB0,X\n#_1EED29: TAY\n\n#_1EED2A: LDA.w $0D50,X\n#_1EED2D: ASL A\n#_1EED2E: STA.w $0D50,Y\n\n#_1EED31: LDA.w $0D40,X\n#_1EED34: ASL A\n#_1EED35: STA.w $0D40,Y\n\n#_1EED38: STZ.w $0D50,X\n#_1EED3B: STZ.w $0D40,X\n\n#_1EED3E: JSL GetRandomNumber\n#_1EED42: AND.b #$1F\n#_1EED44: STA.w $0F80,Y\n\n#_1EED47: LDA.b #$60\n#_1EED49: STA.w $0DF0,X\n\n#_1EED4C: LDA.b #$01\n#_1EED4E: STA.w $0DC0,X\n#_1EED51: STA.w $0E90,Y\n\n#_1EED54: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bully_Idle", + "code": "Bully_Idle:\n#_1EED55: LDA.w $0DF0,X\n#_1EED58: BNE .exit\n\n#_1EED5A: STZ.w $0D80,X\n\n.exit\n#_1EED5D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_Bully", + "code": "SpriteDraw_Bully:\n#_1EED9E: LDA.b #$02\n#_1EEDA0: STA.b $06\n#_1EEDA2: STZ.b $07\n\n#_1EEDA4: LDA.w $0DE0,X\n#_1EEDA7: ASL A\n\n#_1EEDA8: ADC.w $0DC0,X\n\n#_1EEDAB: ASL A\n#_1EEDAC: ASL A\n#_1EEDAD: ASL A\n#_1EEDAE: ASL A\n\n#_1EEDAF: ADC.b #.oam_groups>>0\n#_1EEDB1: STA.b $08\n\n#_1EEDB3: LDA.b #.oam_groups>>8\n#_1EEDB5: ADC.b #$00\n#_1EEDB7: STA.b $09\n\n#_1EEDB9: JSL SpriteDraw_Tabulated_player_deferred\n#_1EEDBD: JSL SpriteDraw_Shadow_long\n\n#_1EEDC1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "BOI_OI_OI_OI_OING", + "code": "BOI_OI_OI_OI_OING:\n#_1EEDC2: LDA.b #$32 ; SFX3.32\n#_1EEDC4: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EEDC8: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpawnBully", + "code": "SpawnBully:\n#_1EEDC9: LDA.b #$B9 ; SPRITE B9\n#_1EEDCB: JSL Sprite_SpawnDynamically\n#_1EEDCF: BMI .no_space\n\n#_1EEDD1: JSL Sprite_SetSpawnedCoordinates\n\n#_1EEDD5: LDA.b #$02\n#_1EEDD7: STA.w $0E80,Y\n\n#_1EEDDA: TXA\n#_1EEDDB: STA.w $0EB0,Y\n\n#_1EEDDE: LDA.b #$01\n#_1EEDE0: STA.w $0BA0,Y\n\n.no_space\n#_1EEDE3: RTL", + "file": "bank_1E.asm" + }, + { + "name": "PinkBall_HandleMessage", + "code": "PinkBall_HandleMessage:\n#_1EEDE8: LDA.w $0F10,X\n#_1EEDEB: BNE .exit\n\n#_1EEDED: LDA.l $7EF357\n#_1EEDF1: AND.b #$01\n#_1EEDF3: TAY\n\n#_1EEDF4: LDA.w .message_low,Y\n#_1EEDF7: XBA\n\n#_1EEDF8: LDA.w .message_high,Y\n#_1EEDFB: TAY\n\n#_1EEDFC: XBA\n\n#_1EEDFD: JSL Sprite_ShowMessageOnContact\n#_1EEE01: BCC .exit\n\n#_1EEE03: LDA.w $0D50,X\n#_1EEE06: EOR.b #$FF\n#_1EEE08: STA.w $0D50,X\n\n#_1EEE0B: LDA.w $0D40,X\n#_1EEE0E: EOR.b #$FF\n#_1EEE10: STA.w $0D40,X\n\n#_1EEE13: LDA.w $0E90,X\n#_1EEE16: BEQ .no_sfx\n\n#_1EEE18: JSR BOI_OI_OI_OI_OING\n\n.no_sfx\n#_1EEE1B: LDA.b #$40\n#_1EEE1D: STA.w $0F10,X\n\n.exit\n#_1EEE20: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Bully_HandleMessage", + "code": "Bully_HandleMessage:\n#_1EEE25: LDA.w $0F10,X\n#_1EEE28: BNE .exit\n\n#_1EEE2A: LDA.l $7EF357\n#_1EEE2E: AND.b #$01\n#_1EEE30: TAY\n\n#_1EEE31: LDA.w .message_low,Y\n#_1EEE34: XBA\n\n#_1EEE35: LDA.w .message_high,Y\n#_1EEE38: TAY\n\n#_1EEE39: XBA\n\n#_1EEE3A: JSL Sprite_ShowMessageOnContact\n#_1EEE3E: BCC .exit\n\n#_1EEE40: LDA.w $0D50,X\n#_1EEE43: EOR.b #$FF\n#_1EEE45: STA.w $0D50,X\n\n#_1EEE48: LDA.w $0D40,X\n#_1EEE4B: EOR.b #$FF\n#_1EEE4D: STA.w $0D40,X\n\n#_1EEE50: LDA.b #$40\n#_1EEE52: STA.w $0F10,X\n\n.exit\n#_1EEE55: RTS", + "file": "bank_1E.asm" + }, + { + "name": "WhirlpoolFlip", + "code": "WhirlpoolFlip:\n#_1EEE56: db $00, $40, $C0, $80\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_BA_Whirlpool", + "code": "Sprite_BA_Whirlpool:\n#_1EEE5A: LDA.b $8A\n#_1EEE5C: CMP.b #$1B ; OW 1B\n#_1EEE5E: BNE Whirlpool\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "CastleWarp", + "code": "CastleWarp:\n#_1EEE60: JSL Sprite_PrepOAMCoord_long\n#_1EEE64: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EEE67: REP #$20\n\n#_1EEE69: LDA.w $0FD8\n#_1EEE6C: SEC\n#_1EEE6D: SBC.b $22\n#_1EEE6F: CLC\n#_1EEE70: ADC.w #$0040\n#_1EEE73: CMP.w #$0051\n#_1EEE76: BCS .no_warp\n\n#_1EEE78: LDA.w $0FDA\n#_1EEE7B: SEC\n#_1EEE7C: SBC.b $20\n#_1EEE7E: CLC\n#_1EEE7F: ADC.w #$000F\n#_1EEE82: CMP.w #$0012\n#_1EEE85: BCS .no_warp\n\n#_1EEE87: SEP #$30\n\n#_1EEE89: LDA.b #$23\n#_1EEE8B: STA.b $11\n\n#_1EEE8D: LDA.b #$01\n#_1EEE8F: STA.w $02DB\n\n#_1EEE92: STZ.b $B0\n#_1EEE94: STZ.b $27\n#_1EEE96: STZ.b $28\n\n#_1EEE98: LDA.b #$14 ; LINKSTATE 14\n#_1EEE9A: STA.b $5D\n\n#_1EEE9C: LDA.b $8A\n#_1EEE9E: AND.b #$40\n#_1EEEA0: STA.b $7B\n\n.no_warp\n#_1EEEA2: SEP #$30\n\n#_1EEEA4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Whirlpool", + "code": "Whirlpool:\n#_1EEEA5: LDA.w $0F50,X\n#_1EEEA8: AND.b #$3F\n#_1EEEAA: STA.w $0F50,X\n\n#_1EEEAD: LDA.b $1A\n#_1EEEAF: LSR A\n#_1EEEB0: LSR A\n#_1EEEB1: LSR A\n#_1EEEB2: AND.b #$03\n#_1EEEB4: TAY\n\n#_1EEEB5: LDA.w WhirlpoolFlip,Y\n#_1EEEB8: ORA.w $0F50,X\n#_1EEEBB: STA.w $0F50,X\n\n#_1EEEBE: LDA.b #$04\n#_1EEEC0: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1EEEC4: REP #$20\n\n#_1EEEC6: LDA.w $0FD8\n#_1EEEC9: SEC\n#_1EEECA: SBC.w #$0005\n#_1EEECD: STA.w $0FD8\n\n#_1EEED0: SEP #$30\n\n#_1EEED2: JSL SpriteDraw_SingleLarge_long\n#_1EEED6: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EEED9: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EEEDD: BCC .no_contact\n\n#_1EEEDF: LDA.w $0D90,X\n#_1EEEE2: BNE .exit\n\n#_1EEEE4: LDA.b #$2E\n#_1EEEE6: STA.b $11\n#_1EEEE8: STZ.b $B0\n\n.exit\n#_1EEEEA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_BB_Shopkeeper", + "code": "Sprite_BB_Shopkeeper:\n#_1EEEEF: LDA.w $0E80,X\n#_1EEEF2: JSL JumpTableLocal\n#_1EEEF6: dw Shopkeeper_StandardClerk\n#_1EEEF8: dw ChestGameGuy\n#_1EEEFA: dw NiceThiefWithGift\n#_1EEEFC: dw MiniChestGameGuy\n#_1EEEFE: dw LostWoodsChestGameGuy\n#_1EEF00: dw NiceThiefUnderRock\n#_1EEF02: dw NiceThiefUnderRock\n\n#_1EEF04: dw ShopItem_RedPotion150\n#_1EEF06: dw ShopItem_FighterShield\n#_1EEF08: dw ShopItem_FireShield\n#_1EEF0A: dw ShopItem_Heart\n#_1EEF0C: dw ShopItem_Arrows\n#_1EEF0E: dw ShopItem_Bombs\n#_1EEF10: dw ShopItem_Bee\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Shopkeeper_StandardClerk", + "code": "Shopkeeper_StandardClerk:\n#_1EEF12: LDA.w $0FFF\n#_1EEF15: BEQ .light_world\n\n#_1EEF17: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n#_1EEF1B: JSL SpriteDraw_SingleLarge_long\n#_1EEF1F: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EEF22: LDA.w $0F50,X\n#_1EEF25: AND.b #$3F\n#_1EEF27: STA.b $00\n\n#_1EEF29: LDA.b $1A\n#_1EEF2B: ASL A\n#_1EEF2C: ASL A\n#_1EEF2D: ASL A\n\n#_1EEF2E: AND.b #$40\n#_1EEF30: ORA.b $00\n#_1EEF32: STA.w $0F50,X\n\n; ---------------------------------------------------------\n\n.handle_interaction\n#_1EEF35: JSL Sprite_BehaveAsBarrier\n#_1EEF39: LDY.w $0FFF\n\n#_1EEF3C: LDA.w .message_low,Y\n#_1EEF3F: XBA\n\n#_1EEF40: LDA.w .message_high,Y\n#_1EEF43: TAY\n\n#_1EEF44: XBA\n\n#_1EEF45: JSL Sprite_ShowSolicitedMessage\n\n#_1EEF49: LDA.w $0D80,X\n\n#_1EEF4C: BEQ .not_welcomed_yet\n#_1EEF4E: BRA .exit\n\n; ---------------------------------------------------------\n\n.light_world\n#_1EEF50: LDA.b #$07\n#_1EEF52: STA.w $0F50,X\n\n#_1EEF55: JSL SpriteDraw_Shopkeeper\n#_1EEF59: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EEF5C: LDA.b $1A\n#_1EEF5E: LSR A\n#_1EEF5F: LSR A\n#_1EEF60: LSR A\n#_1EEF61: LSR A\n\n#_1EEF62: AND.b #$01\n#_1EEF64: STA.w $0DC0,X\n\n#_1EEF67: BRA .handle_interaction\n\n; ---------------------------------------------------------\n\n.message_low\n#_1EEF69: db $65 ; MESSAGE 0165\n#_1EEF6A: db $5F ; MESSAGE 015F\n\n.message_high\n#_1EEF6B: db $01\n#_1EEF6C: db $01\n\n; ---------------------------------------------------------\n\n.not_welcomed_yet\n#_1EEF6D: REP #$20\n\n#_1EEF6F: LDA.w $0FDA\n#_1EEF72: CLC\n#_1EEF73: ADC.w #$0060\n#_1EEF76: CMP.b $20\n\n#_1EEF78: SEP #$30\n#_1EEF7A: BCC .exit\n\n#_1EEF7C: LDY.w $0FFF\n\n#_1EEF7F: LDA.w .message_low,Y\n#_1EEF82: XBA\n\n#_1EEF83: LDA.w .message_high,Y\n#_1EEF86: TAY\n\n#_1EEF87: XBA\n\n#_1EEF88: JSL Sprite_ShowMessageUnconditional\n\n#_1EEF8C: INC.w $0D80,X\n\n.exit\n#_1EEF8F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ChestGameGuy", + "code": "ChestGameGuy:\n#_1EEF90: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n#_1EEF94: JSL SpriteDraw_SingleLarge_long\n\n#_1EEF98: JSR Sprite_CheckIfActive_Bank1E\n#_1EEF9B: JSL Sprite_BehaveAsBarrier\n\n#_1EEF9F: LDA.w $0F50,X\n#_1EEFA2: AND.b #$3F\n#_1EEFA4: STA.b $00\n\n#_1EEFA6: LDA.b $1A\n#_1EEFA8: ASL A\n#_1EEFA9: ASL A\n#_1EEFAA: ASL A\n\n#_1EEFAB: AND.b #$40\n#_1EEFAD: ORA.b $00\n#_1EEFAF: STA.w $0F50,X\n\n#_1EEFB2: LDA.w $0D80,X\n#_1EEFB5: JSL JumpTableLocal\n#_1EEFB9: dw ChestGameGuy_OfferGame\n#_1EEFBB: dw ChestGameGuy_HandlePayment\n#_1EEFBD: dw ChestGameGuy_ProctorGame\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ChestGameGuy_OfferGame", + "code": "ChestGameGuy_OfferGame:\n#_1EEFBF: LDA.w $04C4\n#_1EEFC2: DEC A\n#_1EEFC3: CMP.b #$02\n#_1EEFC5: BCC .exit\n\n#_1EEFC7: LDA.b #$60 ; MESSAGE 0160\n#_1EEFC9: LDY.b #$01\n#_1EEFCB: JSL Sprite_ShowSolicitedMessage\n#_1EEFCF: BCC .exit\n\n#_1EEFD1: INC.w $0D80,X\n\n.exit\n#_1EEFD4: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ChestGameGuy_HandlePayment", + "code": "ChestGameGuy_HandlePayment:\n#_1EEFD5: LDA.w $1CE8\n#_1EEFD8: BNE .rejected\n\n#_1EEFDA: LDA.b #$1E\n#_1EEFDC: LDY.b #$00\n#_1EEFDE: JSR ShopItem_HandleCost\n#_1EEFE1: BCC .rejected\n\n#_1EEFE3: LDA.b #$02\n#_1EEFE5: STA.w $04C4\n\n#_1EEFE8: LDA.b #$64 ; MESSAGE 0164\n#_1EEFEA: LDY.b #$01\n#_1EEFEC: JSL Sprite_ShowMessageUnconditional\n\n#_1EEFF0: INC.w $0D80,X\n\n#_1EEFF3: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ChestGameGuy_ProctorGame", + "code": "ChestGameGuy_ProctorGame:\n#_1EF000: LDA.w $04C4\n#_1EF003: BNE .credits_remaining\n\n#_1EF005: LDA.b #$63 ; MESSAGE 0163\n#_1EF007: LDY.b #$01\n#_1EF009: JSL Sprite_ShowSolicitedMessage\n\n#_1EF00D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "NiceThief_Animate", + "code": "NiceThief_Animate:\n#_1EF017: LDA.b $1A\n#_1EF019: AND.b #$03\n#_1EF01B: BNE .dont_turn_head\n\n#_1EF01D: LDA.b #$02\n#_1EF01F: STA.w $0DC0,X\n\n#_1EF022: JSR Sprite_DirectionToFaceLink_Bank1E\n\n#_1EF025: CPY.b #$03\n#_1EF027: BNE .dont_face_up\n\n#_1EF029: LDY.b #$02\n\n.dont_face_up\n#_1EF02B: TYA\n#_1EF02C: STA.w $0EB0,X\n\n.dont_turn_head\n#_1EF02F: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n#_1EF033: JSL SpriteDraw_Thief\n\n#_1EF037: RTS", + "file": "bank_1E.asm" + }, + { + "name": "NiceThiefWithGift", + "code": "NiceThiefWithGift:\n#_1EF038: JSR NiceThief_Animate\n#_1EF03B: JSR Sprite_CheckIfActive_Bank1E\n#_1EF03E: JSL Sprite_BehaveAsBarrier\n\n#_1EF042: LDA.w $0D80,X\n#_1EF045: JSL JumpTableLocal\n#_1EF049: dw NiceThiefWithGift_WaitForInteraction\n#_1EF04B: dw NiceThiefWithGift_GiveRupees\n#_1EF04D: dw NiceThiefWithGift_ResetAI\n", + "file": "bank_1E.asm" + }, + { + "name": "NiceThiefWithGift_WaitForInteraction", + "code": "NiceThiefWithGift_WaitForInteraction:\n#_1EF04F: LDA.b #$76 ; MESSAGE 0176\n#_1EF051: LDY.b #$01\n#_1EF053: JSL Sprite_ShowSolicitedMessage\n#_1EF057: BCC .exit\n\n#_1EF059: INC.w $0D80,X\n\n.exit\n#_1EF05C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "NiceThiefWithGift_GiveRupees", + "code": "NiceThiefWithGift_GiveRupees:\n#_1EF05D: LDA.w $0403\n#_1EF060: AND.b #$40\n#_1EF062: BNE NiceThiefWithGift_ResetAI\n\n#_1EF064: LDA.w $0403\n#_1EF067: ORA.b #$40\n#_1EF069: STA.w $0403\n\n#_1EF06C: INC.w $0D80,X\n\n#_1EF06F: LDY.b #$46 ; ITEMGET 46\n#_1EF071: JMP.w ShopItem_HandleReceipt\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "NiceThiefWithGift_ResetAI", + "code": "NiceThiefWithGift_ResetAI:\n#_1EF074: STZ.w $0D80,X\n\n#_1EF077: RTS", + "file": "bank_1E.asm" + }, + { + "name": "MiniChestGameGuy", + "code": "MiniChestGameGuy:\n#_1EF078: JSR Sprite_DirectionToFaceLink_Bank1E\n#_1EF07B: TYA\n#_1EF07C: EOR.b #$03\n#_1EF07E: STA.w $0DE0,X\n\n#_1EF081: STZ.w $0DC0,X\n\n#_1EF084: JSL SpriteDraw_YoungGameGuy\n#_1EF088: JSR Sprite_CheckIfActive_Bank1E\n#_1EF08B: JSL Sprite_BehaveAsBarrier\n\n#_1EF08F: LDA.w $0D80,X\n#_1EF092: JSL JumpTableLocal\n#_1EF096: dw MiniChestGameGuy_OfferGame\n#_1EF098: dw MiniChestGameGuy_VerifyPurchase\n#_1EF09A: dw LesserChestGameGuy_AfterGameStart\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "MiniChestGameGuy_OfferGame", + "code": "MiniChestGameGuy_OfferGame:\n#_1EF09C: LDA.w $04C4\n#_1EF09F: DEC A\n#_1EF0A0: CMP.b #$02\n#_1EF0A2: BCC EXIT_1EF0B1\n\n#_1EF0A4: LDA.b #$7E ; MESSAGE 017E\n#_1EF0A6: LDY.b #$01\n#_1EF0A8: JSL Sprite_ShowSolicitedMessage\n#_1EF0AC: BCC EXIT_1EF0B1\n\n#_1EF0AE: INC.w $0D80,X\n\n; ---------------------------------------------------------\n\n#EXIT_1EF0B1:\n#_1EF0B1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "MiniChestGameGuy_VerifyPurchase", + "code": "MiniChestGameGuy_VerifyPurchase:\n#_1EF0B2: LDA.w $1CE8\n#_1EF0B5: BNE .rejected\n\n#_1EF0B7: LDA.b #$14\n#_1EF0B9: LDY.b #$00\n#_1EF0BB: JSR ShopItem_HandleCost\n#_1EF0BE: BCC .rejected\n\n#_1EF0C0: LDA.b #$01\n#_1EF0C2: STA.w $04C4\n\n#_1EF0C5: LDA.b #$7F ; MESSAGE 017F\n#_1EF0C7: LDY.b #$01\n#_1EF0C9: JSL Sprite_ShowMessageUnconditional\n\n#_1EF0CD: INC.w $0D80,X\n\n#_1EF0D0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LesserChestGameGuy_AfterGameStart", + "code": "LesserChestGameGuy_AfterGameStart:\n#_1EF0E1: LDA.w $04C4\n#_1EF0E4: TAY\n\n#_1EF0E5: LDA.w .message_low,Y\n#_1EF0E8: XBA\n\n#_1EF0E9: LDA.w .message_high,Y\n#_1EF0EC: TAY\n\n#_1EF0ED: XBA\n\n#_1EF0EE: JSL Sprite_ShowSolicitedMessage\n\n#_1EF0F2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LostWoodsChestGameGuy", + "code": "LostWoodsChestGameGuy:\n#_1EF0F3: JSR NiceThief_Animate\n#_1EF0F6: JSR Sprite_CheckIfActive_Bank1E\n#_1EF0F9: JSL Sprite_BehaveAsBarrier\n\n#_1EF0FD: LDA.w $0D80,X\n#_1EF100: JSL JumpTableLocal\n#_1EF104: dw LostWoodsChestGameGuy_OfferGame\n#_1EF106: dw LostWoodsChestGameGuy_VerifyPurchase\n#_1EF108: dw LesserChestGameGuy_AfterGameStart\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "LostWoodsChestGameGuy_OfferGame", + "code": "LostWoodsChestGameGuy_OfferGame:\n#_1EF10A: LDA.w $04C4\n#_1EF10D: DEC A\n#_1EF10E: CMP.b #$02\n#_1EF110: BCC EXIT_1EF0B1\n\n#_1EF112: LDA.b #$81 ; MESSAGE 0181\n#_1EF114: LDY.b #$01\n#_1EF116: JSL Sprite_ShowSolicitedMessage\n#_1EF11A: BCC .exit\n\n#_1EF11C: INC.w $0D80,X\n\n.exit\n#_1EF11F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "LostWoodsChestGameGuy_VerifyPurchase", + "code": "LostWoodsChestGameGuy_VerifyPurchase:\n#_1EF120: LDA.w $1CE8\n#_1EF123: BNE .rejected\n\n#_1EF125: LDA.b #$64\n#_1EF127: LDY.b #$00\n#_1EF129: JSR ShopItem_HandleCost\n#_1EF12C: BCC .rejected\n\n#_1EF12E: LDA.b #$01\n#_1EF130: STA.w $04C4\n\n#_1EF133: LDA.b #$7F ; MESSAGE 017F\n#_1EF135: LDY.b #$01\n#_1EF137: JSL Sprite_ShowMessageUnconditional\n\n#_1EF13B: INC.w $0D80,X\n\n#_1EF13E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "NiceThiefUnderRock", + "code": "NiceThiefUnderRock:\n#_1EF14F: JSR NiceThief_Animate\n#_1EF152: JSR Sprite_CheckIfActive_Bank1E\n#_1EF155: JSL Sprite_BehaveAsBarrier\n\n#_1EF159: LDA.w $0E80,X\n#_1EF15C: SEC\n#_1EF15D: SBC.b #$05\n#_1EF15F: TAY\n\n#_1EF160: LDA.w .message_low,Y\n#_1EF163: XBA\n\n#_1EF164: LDA.w .message_high,Y\n#_1EF167: TAY\n\n#_1EF168: XBA\n\n#_1EF169: JSL Sprite_ShowSolicitedMessage\n\n#_1EF16D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_RedPotion150", + "code": "ShopItem_RedPotion150:\n#_1EF16E: JSR SpriteDraw_ShopItem\n#_1EF171: JSR Sprite_CheckIfActive_Bank1E\n#_1EF174: JSL Sprite_BehaveAsBarrier\n#_1EF178: JSR ShopItem_CheckForAPress\n#_1EF17B: BCC .exit\n\n#_1EF17D: JSL FindEmptyBottle\n#_1EF181: BMI .no_empty_bottle\n\n#_1EF183: LDA.b #$96\n#_1EF185: LDY.b #$00\n#_1EF187: JSR ShopItem_HandleCost\n#_1EF18A: BCC ShopItem_GiveFailureMessage\n\n#_1EF18C: STZ.w $0DD0,X\n\n#_1EF18F: LDY.b #$2E ; ITEMGET 2E\n#_1EF191: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EF194: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_GiveFailureMessage", + "code": "ShopItem_GiveFailureMessage:\n#_1EF1A1: LDA.b #$7C ; MESSAGE 017C\n#_1EF1A3: LDY.b #$01\n#_1EF1A5: JSL Sprite_ShowMessageUnconditional\n\n#_1EF1A9: JSR ShopItem_PlayBeep\n\n#_1EF1AC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopKeeper_SpawnShopItem", + "code": "ShopKeeper_SpawnShopItem:\n#_1EF1B3: PHA\n#_1EF1B4: PHY\n\n#_1EF1B5: LDA.b #$BB ; SPRITE BB\n#_1EF1B7: LDY.b #$0C\n#_1EF1B9: JSL Sprite_SpawnDynamically_slot_limited\n\n#_1EF1BD: PLA\n#_1EF1BE: STA.w $0E80,Y\n#_1EF1C1: STA.w $0BA0,Y\n\n#_1EF1C4: PLA\n#_1EF1C5: PHX\n\n#_1EF1C6: ASL A\n#_1EF1C7: TAX\n\n#_1EF1C8: LDA.b $00\n#_1EF1CA: CLC\n#_1EF1CB: ADC.l .offset_x+0,X\n#_1EF1CF: STA.w $0D10,Y\n\n#_1EF1D2: LDA.b $01\n#_1EF1D4: ADC.l .offset_x+1,X\n#_1EF1D8: STA.w $0D30,Y\n\n#_1EF1DB: LDA.b $02\n#_1EF1DD: CLC\n#_1EF1DE: ADC.b #$27\n#_1EF1E0: STA.w $0D00,Y\n\n#_1EF1E3: LDA.b $03\n#_1EF1E5: STA.w $0D20,Y\n\n#_1EF1E8: LDA.w $0E40,Y\n#_1EF1EB: ORA.b #$04\n#_1EF1ED: STA.w $0E40,Y\n\n#_1EF1F0: PLX\n\n#_1EF1F1: RTL", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_FighterShield", + "code": "ShopItem_FighterShield:\n#_1EF1F2: JSR SpriteDraw_ShopItem\n\n#_1EF1F5: JSR Sprite_CheckIfActive_Bank1E\n#_1EF1F8: JSL Sprite_BehaveAsBarrier\n\n#_1EF1FC: JSR ShopItem_MakeShieldsDeflect\n#_1EF1FF: JSR ShopItem_CheckForAPress\n#_1EF202: BCC .set_hitbox\n\n#_1EF204: LDA.l $7EF35A\n#_1EF208: BNE RejectShieldPurchase\n\n#_1EF20A: LDA.b #$32\n#_1EF20C: LDY.b #$00\n#_1EF20E: JSR ShopItem_HandleCost\n#_1EF211: BCC TooPoorForAShield\n\n#_1EF213: STZ.w $0DD0,X\n\n#_1EF216: LDY.b #$04 ; ITEMGET 04\n#_1EF218: JSR ShopItem_HandleReceipt\n\n.set_hitbox\n#_1EF21B: LDA.b #$1C\n#_1EF21D: STA.w $0F60,X\n\n#_1EF220: RTS", + "file": "bank_1E.asm" + }, + { + "name": "RejectShieldPurchase", + "code": "RejectShieldPurchase:\n#_1EF221: LDA.b #$66 ; MESSAGE 0166\n#_1EF223: LDY.b #$01\n#_1EF225: JSL Sprite_ShowMessageUnconditional\n\n#_1EF229: JSR ShopItem_PlayBeep\n\n#_1EF22C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "TooPoorForAShield", + "code": "TooPoorForAShield:\n#_1EF22D: JMP.w ShopItem_GiveFailureMessage\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_FireShield", + "code": "ShopItem_FireShield:\n#_1EF230: JSR SpriteDraw_ShopItem\n#_1EF233: JSR Sprite_CheckIfActive_Bank1E\n#_1EF236: JSL Sprite_BehaveAsBarrier\n\n#_1EF23A: JSR ShopItem_MakeShieldsDeflect\n#_1EF23D: JSR ShopItem_CheckForAPress\n#_1EF240: BCC .set_hitbox\n\n#_1EF242: LDA.l $7EF35A\n#_1EF246: CMP.b #$02\n#_1EF248: BCS RejectShieldPurchase\n\n#_1EF24A: LDA.b #$F4\n#_1EF24C: LDY.b #$01\n#_1EF24E: JSR ShopItem_HandleCost\n#_1EF251: BCC TooPoorForAShield\n\n#_1EF253: STZ.w $0DD0,X\n\n#_1EF256: LDY.b #$05 ; ITEMGET 05\n#_1EF258: JSR ShopItem_HandleReceipt\n\n.set_hitbox\n#_1EF25B: LDA.b #$1C\n#_1EF25D: STA.w $0F60,X\n\n#_1EF260: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_MakeShieldsDeflect", + "code": "ShopItem_MakeShieldsDeflect:\n#_1EF261: STZ.w $0BA0,X\n\n#_1EF264: LDA.b #$08\n#_1EF266: STA.w SprTileDie,X\n\n#_1EF269: LDA.b #$04\n#_1EF26B: STA.w $0CAA,X\n\n#_1EF26E: LDA.b #$1C\n#_1EF270: STA.w $0F60,X\n\n#_1EF273: JSL Sprite_CheckDamageFromLink_long\n\n#_1EF277: LDA.b #$0A\n#_1EF279: STA.w $0F60,X\n\n#_1EF27C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_Heart", + "code": "ShopItem_Heart:\n#_1EF27D: JSR SpriteDraw_ShopItem\n\n#_1EF280: JSR Sprite_CheckIfActive_Bank1E\n#_1EF283: JSL Sprite_BehaveAsBarrier\n\n#_1EF287: JSR ShopItem_CheckForAPress\n#_1EF28A: BCC .exit\n\n#_1EF28C: LDA.l $7EF36C\n#_1EF290: CMP.l $7EF36D\n#_1EF294: BEQ .too_much_health\n\n#_1EF296: LDA.b #$0A\n#_1EF298: LDY.b #$00\n#_1EF29A: JSR ShopItem_HandleCost\n#_1EF29D: BCC .too_poor\n\n#_1EF29F: STZ.w $0DD0,X\n\n#_1EF2A2: LDY.b #$42 ; ITEMGET 42\n#_1EF2A4: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EF2A7: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_Arrows", + "code": "ShopItem_Arrows:\n#_1EF2AF: JSR SpriteDraw_ShopItem\n#_1EF2B2: JSR Sprite_CheckIfActive_Bank1E\n#_1EF2B5: JSL Sprite_BehaveAsBarrier\n\n#_1EF2B9: JSR ShopItem_CheckForAPress\n#_1EF2BC: BCC .exit\n\n#_1EF2BE: LDA.l $7EF371\n\n#_1EF2C2: PHX\n\n#_1EF2C3: TAX\n\n#_1EF2C4: LDA.l CapacityUpgrades_arrows_hex,X\n\n#_1EF2C8: PLX\n\n#_1EF2C9: CMP.l $7EF377\n#_1EF2CD: BEQ TooMuchAmmo\n\n#_1EF2CF: LDA.b #$1E\n#_1EF2D1: LDY.b #$00\n#_1EF2D3: JSR ShopItem_HandleCost\n#_1EF2D6: BCC RejectMunitionsPurchase\n\n#_1EF2D8: STZ.w $0DD0,X\n\n#_1EF2DB: LDY.b #$44 ; ITEMGET 44\n#_1EF2DD: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EF2E0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "TooMuchAmmo", + "code": "TooMuchAmmo:\n#_1EF2E1: LDA.b #$6E ; MESSAGE 016E\n#_1EF2E3: LDY.b #$01\n#_1EF2E5: JSL Sprite_ShowSolicitedMessage\n\n#_1EF2E9: JSR ShopItem_PlayBeep\n\n#_1EF2EC: RTS", + "file": "bank_1E.asm" + }, + { + "name": "RejectMunitionsPurchase", + "code": "RejectMunitionsPurchase:\n#_1EF2ED: JMP.w ShopItem_GiveFailureMessage\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_Bombs", + "code": "ShopItem_Bombs:\n#_1EF2F0: JSR SpriteDraw_ShopItem\n#_1EF2F3: JSR Sprite_CheckIfActive_Bank1E\n#_1EF2F6: JSL Sprite_BehaveAsBarrier\n\n#_1EF2FA: JSR ShopItem_CheckForAPress\n#_1EF2FD: BCC .exit\n\n#_1EF2FF: LDA.l $7EF370\n#_1EF303: PHX\n#_1EF304: TAX\n\n#_1EF305: LDA.l CapacityUpgrades_bombs_hex,X\n\n#_1EF309: PLX\n\n#_1EF30A: CMP.l $7EF343\n#_1EF30E: BEQ TooMuchAmmo\n\n#_1EF310: LDA.b #$32\n#_1EF312: LDY.b #$00\n#_1EF314: JSR ShopItem_HandleCost\n#_1EF317: BCC RejectMunitionsPurchase\n\n#_1EF319: STZ.w $0DD0,X\n\n#_1EF31C: LDY.b #$31 ; ITEMGET 31\n#_1EF31E: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EF321: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_Bee", + "code": "ShopItem_Bee:\n#_1EF322: JSR SpriteDraw_ShopItem\n#_1EF325: JSR Sprite_CheckIfActive_Bank1E\n#_1EF328: JSL Sprite_BehaveAsBarrier\n\n#_1EF32C: JSR ShopItem_CheckForAPress\n#_1EF32F: BCC .exit\n\n#_1EF331: JSL FindEmptyBottle\n#_1EF335: BMI .no_empty_bottle\n\n#_1EF337: LDA.b #$0A\n#_1EF339: LDY.b #$00\n#_1EF33B: JSR ShopItem_HandleCost\n#_1EF33E: BCC .too_poor\n\n#_1EF340: STZ.w $0DD0,X\n\n#_1EF343: LDY.b #$0E ; ITEMGET 0E\n#_1EF345: JSR ShopItem_HandleReceipt\n\n.exit\n#_1EF348: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_HandleReceipt", + "code": "ShopItem_HandleReceipt:\n#_1EF366: STZ.w $02E9\n\n#_1EF369: PHX\n\n#_1EF36A: JSL Link_ReceiveItem\n\n#_1EF36E: PLX\n\n#_1EF36F: LDA.w $0E80,X\n#_1EF372: SEC\n#_1EF373: SBC.b #$07\n#_1EF375: BMI .exit\n\n#_1EF377: TAY\n\n#_1EF378: LDA.w .message_low,Y\n#_1EF37B: XBA\n\n#_1EF37C: LDA.w .message_high,Y\n#_1EF37F: TAY\n\n#_1EF380: XBA\n\n#_1EF381: JSL Sprite_ShowMessageUnconditional\n#_1EF385: JSL RushToTerminateReceiveItem\n\n.exit\n#_1EF389: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_PlayBeep", + "code": "ShopItem_PlayBeep:\n#_1EF38A: LDA.b #$3C ; SFX2.3C\n#_1EF38C: JSL SpriteSFX_QueueSFX2WithPan\n\n#_1EF390: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_CheckForAPress", + "code": "ShopItem_CheckForAPress:\n#_1EF391: LDA.b $F6\n#_1EF393: BPL .no_interaction\n\n#_1EF395: JSL Sprite_CheckDamageToLink_same_layer_long\n\n#_1EF399: BCC .no_interaction\n\n#_1EF39B: RTS", + "file": "bank_1E.asm" + }, + { + "name": "ShopItem_HandleCost", + "code": "ShopItem_HandleCost:\n#_1EF39E: STA.b $00\n#_1EF3A0: STY.b $01\n\n#_1EF3A2: REP #$20\n\n#_1EF3A4: LDA.l $7EF360\n#_1EF3A8: CMP.b $00\n#_1EF3AA: BCC .too_poor\n\n#_1EF3AC: SBC.b $00\n#_1EF3AE: STA.l $7EF360\n\n#_1EF3B2: SEC\n\n.too_poor\n#_1EF3B3: SEP #$30\n\n#_1EF3B5: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_ShopItem", + "code": "SpriteDraw_ShopItem:\n#_1EF4CE: LDA.w $0E80,X\n#_1EF4D1: SEC\n#_1EF4D2: SBC.b #$07\n\n#_1EF4D4: REP #$20\n\n#_1EF4D6: AND.w #$00FF\n#_1EF4D9: STA.b $00\n\n#_1EF4DB: ASL A\n#_1EF4DC: ASL A\n#_1EF4DD: ADC.b $00\n\n#_1EF4DF: ASL A\n#_1EF4E0: ASL A\n#_1EF4E1: ASL A\n#_1EF4E2: ADC.w #.oam_groups\n#_1EF4E5: STA.b $08\n\n#_1EF4E7: LDA.w #$0005\n#_1EF4EA: STA.b $06\n\n#_1EF4EC: SEP #$30\n\n#_1EF4EE: JSL SpriteDraw_Tabulated_player_deferred\n\n#_1EF4F2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_BehaveAsBarrier", + "code": "Sprite_BehaveAsBarrier:\n#_1EF4F3: LDA.w $0F60,X\n#_1EF4F6: PHA\n\n#_1EF4F7: STZ.w $0F60,X\n\n#_1EF4FA: JSL Sprite_CheckDamageToLink_same_layer_long\n#_1EF4FE: BCC .no_collision\n\n#_1EF500: JSR Sprite_HaltAllMovement\n\n.no_collision\n#_1EF503: PLA\n#_1EF504: STA.w $0F60,X\n\n#_1EF507: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_HaltAllMovement", + "code": "Sprite_HaltAllMovement:\n#_1EF508: PHX\n\n#_1EF509: JSL Sprite_CancelHookshot\n\n#_1EF50D: STZ.b $5E\n\n#_1EF50F: JSL Link_CancelDash_long\n\n#_1EF513: PLX\n\n#_1EF514: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AC_Apple", + "code": "Sprite_AC_Apple:\n#_1EF515: LDA.w $0D80,X\n#_1EF518: BNE Apple\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "ApplesInTree", + "code": "ApplesInTree:\n#_1EF51A: LDA.w $0E90,X\n#_1EF51D: BNE .exit\n\n#_1EF51F: STZ.w $0DD0,X\n\n#_1EF522: JSL GetRandomNumber\n#_1EF526: AND.b #$03\n#_1EF528: CLC\n\n#_1EF529: ADC.b #$02\n#_1EF52B: TAY\n\n.next_apple\n#_1EF52C: PHY\n\n#_1EF52D: JSR SpawnApple\n\n#_1EF530: PLY\n#_1EF531: DEY\n#_1EF532: BPL .next_apple\n\n.exit\n#_1EF534: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpawnApple", + "code": "SpawnApple:\n#_1EF535: LDA.b #$AC ; SPRITE AC\n#_1EF537: JSL Sprite_SpawnDynamically\n#_1EF53B: BMI .exit\n\n#_1EF53D: JSL Sprite_SetSpawnedCoordinates\n\n#_1EF541: LDA.b #$01\n#_1EF543: STA.w $0D80,Y\n\n#_1EF546: LDA.b #$FF\n#_1EF548: STA.w $0D90,Y\n\n#_1EF54B: LDA.b #$08\n#_1EF54D: STA.w $0F70,Y\n\n#_1EF550: LDA.b #$16\n#_1EF552: STA.w $0F80,Y\n\n#_1EF555: JSL GetRandomNumber\n#_1EF559: STA.b $04\n\n#_1EF55B: LDA.b $01\n#_1EF55D: STA.b $05\n\n#_1EF55F: JSL GetRandomNumber\n#_1EF563: STA.b $06\n\n#_1EF565: LDA.b $03\n#_1EF567: STA.b $07\n\n#_1EF569: LDA.b #$0A\n#_1EF56B: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n#_1EF56F: LDA.b $00\n#_1EF571: STA.w $0D40,Y\n\n#_1EF574: LDA.b $01\n#_1EF576: STA.w $0D50,Y\n\n.exit\n#_1EF579: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Apple", + "code": "Apple:\n#_1EF57C: LDA.w $0D90,X\n#_1EF57F: CMP.b #$10\n#_1EF581: BCS .no_flicker\n\n#_1EF583: LDA.b $1A\n#_1EF585: AND.b #$02\n#_1EF587: BEQ .flicker_off\n\n.no_flicker\n#_1EF589: JSL SpriteDraw_SingleLarge_long\n\n.flicker_off\n#_1EF58D: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EF590: LDA.w $0D90,X\n#_1EF593: BEQ .rot\n\n#_1EF595: JSR Sprite_Move_XYZ_Bank1E\n#_1EF598: JSR Sprite_CheckDamageToLink_Bank1E\n#_1EF59B: BCC .not_collected\n\n#_1EF59D: LDA.b #$0B ; SFX3.0B\n#_1EF59F: JSL SpriteSFX_QueueSFX3WithPan\n\n#_1EF5A3: LDA.l $7EF372\n#_1EF5A7: CLC\n#_1EF5A8: ADC.b #$08\n#_1EF5AA: STA.l $7EF372\n\n.rot\n#_1EF5AE: STZ.w $0DD0,X\n\n#_1EF5B1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_BC_Drunkard", + "code": "Sprite_BC_Drunkard:\n#_1EF603: JSL SpriteDraw_Drunkard\n#_1EF607: JSR Sprite_CheckIfActive_Bank1E\n#_1EF60A: JSL Sprite_BehaveAsBarrier\n#_1EF60E: JSL GetRandomNumber\n#_1EF612: BNE .skip_timer\n\n#_1EF614: LDA.b #$20\n#_1EF616: STA.w $0DF0,X\n\n.skip_timer\n#_1EF619: STZ.w $0DC0,X\n\n#_1EF61C: LDA.w $0DF0,X\n#_1EF61F: BEQ .animating\n\n#_1EF621: INC.w $0DC0,X\n\n.animating\n#_1EF624: LDA.b #$75 ; MESSAGE 0175\n#_1EF626: LDY.b #$01\n#_1EF628: JSL Sprite_ShowSolicitedMessage\n#_1EF62C: BCC .exit\n\n#_1EF62E: STZ.w $0DC0,X\n\n.exit\n#_1EF631: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_LocatePath", + "code": "Pipe_LocatePath:\n#_1EF632: LDA.b #$FF\n#_1EF634: STA.w $1DE0\n\n#_1EF637: LDA.w $0E20,X\n#_1EF63A: SEC\n#_1EF63B: SBC.b #$AE\n#_1EF63D: STA.w $0DE0,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_LocatePath", + "code": "SomariaPlatform_LocatePath:\n\n.next\n#_1EF640: JSR SomariaPlatformAndPipe_CheckTile\n\n#_1EF643: STA.w $0E90,X\n\n#_1EF646: SEC\n#_1EF647: SBC.b #$B0 ; TILETYPE B0\n#_1EF649: BCS .upper_tile\n\n.not_pipe\n#_1EF64B: LDA.w $0D10,X\n#_1EF64E: CLC\n#_1EF64F: ADC.b #$08\n#_1EF651: STA.w $0D10,X\n\n#_1EF654: LDA.w $0D30,X\n#_1EF657: ADC.b #$00\n#_1EF659: STA.w $0D30,X\n\n#_1EF65C: LDA.w $0D00,X\n#_1EF65F: CLC\n#_1EF660: ADC.b #$08\n#_1EF662: STA.w $0D00,X\n\n#_1EF665: LDA.w $0D20,X\n#_1EF668: ADC.b #$00\n#_1EF66A: STA.w $0D20,X\n\n#_1EF66D: BRA .next\n\n; ---------------------------------------------------------\n\n.upper_tile\n#_1EF66F: CMP.b #$0F ; TILETYPE BF\n#_1EF671: BCS .not_pipe\n\n#_1EF673: LDA.w $0D10,X\n#_1EF676: AND.b #$F8\n#_1EF678: CLC\n#_1EF679: ADC.b #$04\n#_1EF67B: STA.w $0D10,X\n\n#_1EF67E: LDA.w $0D00,X\n#_1EF681: AND.b #$F8\n#_1EF683: CLC\n#_1EF684: ADC.b #$04\n#_1EF686: STA.w $0D00,X\n\n#_1EF689: LDA.w $0DE0,X\n#_1EF68C: STA.w $0EB0,X\n\n#_1EF68F: JSR SomariaPlatformAndPipe_HandleMovement\n\n#_1EF692: INC.w $0BA0,X\n\n#_1EF695: STZ.w $02F5\n\n#_1EF698: LDA.b #$0E\n#_1EF69A: STA.w $0F10,X\n\n#_1EF69D: INC.w $0DC0,X\n\n#_1EF6A0: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatformAndPipe", + "code": "SomariaPlatformAndPipe:\n#_1EF6A1: PHB\n#_1EF6A2: PHK\n#_1EF6A3: PLB\n\n#_1EF6A4: JSR .main\n\n#_1EF6A7: PLB\n\n#_1EF6A8: RTL", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_Spawn", + "code": "SomariaPlatform_Spawn:\n#_1EF6DF: JSR SomariaPlatform_LocatePath\n#_1EF6E2: JSL Sprite_SpawnSuperficialBombBlast\n\n#_1EF6E6: LDA.w $0D10,Y\n#_1EF6E9: SEC\n#_1EF6EA: SBC.b #$08\n#_1EF6EC: STA.w $0D10,Y\n\n#_1EF6EF: LDA.w $0D30,Y\n#_1EF6F2: SBC.b #$00\n#_1EF6F4: STA.w $0D30,Y\n\n#_1EF6F7: LDA.w $0D00,Y\n#_1EF6FA: SEC\n#_1EF6FB: SBC.b #$08\n#_1EF6FD: STA.w $0D00,Y\n\n#_1EF700: LDA.w $0D20,Y\n#_1EF703: SBC.b #$00\n#_1EF705: STA.w $0D20,Y\n\n#_1EF708: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatformAndPipe_Main", + "code": "SomariaPlatformAndPipe_Main:\n#_1EF709: JSR SpriteDraw_SomariaPlatform\n#_1EF70C: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EF70F: LDA.w $0B7C\n#_1EF712: ORA.w $0B7D\n#_1EF715: ORA.w $0B7E\n#_1EF718: ORA.w $0B7F\n#_1EF71B: BEQ .not_dragging\n\n.is_inactive\n#_1EF71D: JMP.w SomariaPlatform_Inactive\n\n.not_dragging\n#_1EF720: LDA.b $5B\n#_1EF722: DEC A\n#_1EF723: DEC A\n#_1EF724: BPL .is_inactive\n\n#_1EF726: JSL Sprite_CheckDamageToLink_ignore_layer_long\n#_1EF72A: BCC SomariaPlatform_Inactive\n\n#_1EF72C: LDA.b #$01\n#_1EF72E: STA.w $0DB0,X\n#_1EF731: JSL Link_CancelDash_long\n\n#_1EF735: LDA.b $5D\n#_1EF737: CMP.b #$13 ; LINKSTATE 13\n#_1EF739: BEQ SomariaPlatform_Inactive\n\n#_1EF73B: CMP.b #$03 ; LINKSTATE 03\n#_1EF73D: BEQ SomariaPlatform_Inactive\n\n#_1EF73F: LDA.w $0D80,X\n#_1EF742: BNE SomariaPlatformAndPipe_HandleMovement\n\n#_1EF744: INC.w $0D90,X\n\n#_1EF747: LDA.b #$02\n#_1EF749: STA.w $02F5\n\n#_1EF74C: LDA.w $0D90,X\n#_1EF74F: AND.b #$07\n#_1EF751: BNE .skip_movement\n\n#_1EF753: JSR SomariaPlatformAndPipe_CheckTile\n\n#_1EF756: CMP.w $0E90,X\n#_1EF759: BEQ .skip_movement\n\n#_1EF75B: STA.w $0E90,X\n\n#_1EF75E: LDA.w $0DE0,X\n#_1EF761: STA.w $0EB0,X\n\n#_1EF764: JSR SomariaPlatformAndPipe_HandleMovement\n#_1EF767: JSR SomariaPlatform_HandleDrag\n\n.skip_movement\n#_1EF76A: LDA.b $A0\n#_1EF76C: CMP.b #$24 ; ROOM 0024\n#_1EF76E: BEQ .not_big_chest\n\n#_1EF770: LDY.w $0DE0,X\n\n#_1EF773: LDA.w SomariaPlatformAndPipe_drag_x_low,Y\n#_1EF776: CLC\n#_1EF777: ADC.w $0B7C\n#_1EF77A: STA.w $0B7C\n\n#_1EF77D: LDA.w SomariaPlatformAndPipe_drag_x_high,Y\n#_1EF780: ADC.w $0B7D\n#_1EF783: STA.w $0B7D\n\n#_1EF786: LDA.w SomariaPlatformAndPipe_drag_y_low,Y\n#_1EF789: CLC\n#_1EF78A: ADC.w $0B7E\n#_1EF78D: STA.w $0B7E\n\n#_1EF790: LDA.w SomariaPlatformAndPipe_drag_y_high,Y\n#_1EF793: ADC.w $0B7F\n#_1EF796: STA.w $0B7F\n\n#_1EF799: JSR Sprite_Move_XY_Bank1E\n#_1EF79C: JSR SomariaPlatform_DragLink\n\n#_1EF79F: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_Inactive", + "code": "SomariaPlatform_Inactive:\n#_1EF7A3: LDA.w $0DB0,X\n#_1EF7A6: BEQ .exit\n\n#_1EF7A8: STZ.w $02F5\n#_1EF7AB: STZ.w $0DB0,X\n\n.exit\n#_1EF7AE: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatformAndPipe_HandleMovement", + "code": "SomariaPlatformAndPipe_HandleMovement:\n#_1EF7AF: JSR SomariaPlatform_HandleTile\n\n#_1EF7B2: LDY.w $0DE0,X\n\n#_1EF7B5: LDA.w SomariaPlatformAndPipe_speed_x,Y\n#_1EF7B8: STA.w $0D50,X\n\n#_1EF7BB: LDA.w SomariaPlatformAndPipe_speed_y,Y\n#_1EF7BE: STA.w $0D40,X\n\n#_1EF7C1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatformAndPipe_CheckTile", + "code": "SomariaPlatformAndPipe_CheckTile:\n#_1EF7C2: LDA.w $0D00,X\n#_1EF7C5: STA.b $00\n\n#_1EF7C7: LDA.w $0D20,X\n#_1EF7CA: STA.b $01\n\n#_1EF7CC: LDA.w $0D10,X\n#_1EF7CF: STA.b $02\n\n#_1EF7D1: LDA.w $0D30,X\n#_1EF7D4: STA.b $03\n\n#_1EF7D6: LDA.b #$00\n#_1EF7D8: JSL GetTileType_long\n\n#_1EF7DC: LDA.w $0FA5\n\n#_1EF7DF: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SpriteDraw_SomariaPlatform", + "code": "SpriteDraw_SomariaPlatform:\n#_1EF860: LDA.b #$10\n#_1EF862: JSL SpriteDraw_AllocateOAMFromRegionB\n\n#_1EF866: LDA.w $0F10,X\n#_1EF869: AND.b #$0C\n#_1EF86B: ASL A\n#_1EF86C: ASL A\n#_1EF86D: ASL A\n\n#_1EF86E: ADC.b #.oam_groups>>0\n#_1EF870: STA.b $08\n\n#_1EF872: LDA.b #.oam_groups>>8\n#_1EF874: ADC.b #$00\n#_1EF876: STA.b $09\n\n#_1EF878: LDA.b #$04\n#_1EF87A: JMP.w SpriteDraw_Tabulated_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile", + "code": "SomariaPlatform_HandleTile:\n#_1EF87D: LDA.w $0E90,X\n#_1EF880: SEC\n#_1EF881: SBC.b #$B0\n#_1EF883: BCS .possibly_valid_tile\n\n#_1EF885: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleDragX", + "code": "SomariaPlatform_HandleDragX:\n#_1EF8AD: LDA.w $0DE0,X\n#_1EF8B0: EOR.w $0EB0,X\n#_1EF8B3: AND.b #$02\n#_1EF8B5: BEQ .exit\n\n#_1EF8B7: LDA.w $0D10,X\n#_1EF8BA: AND.b #$F8\n\n#_1EF8BC: CLC\n#_1EF8BD: ADC.b #$04\n#_1EF8BF: STA.b $00\n\n#_1EF8C1: SEC\n#_1EF8C2: SBC.w $0D10,X\n#_1EF8C5: BEQ .exit\n\n#_1EF8C7: STA.w $0B7C\n#_1EF8CA: BPL .positive\n\n#_1EF8CC: LDA.b #$FF\n#_1EF8CE: STA.w $0B7D\n\n.positive\n#_1EF8D1: LDA.b $00\n#_1EF8D3: STA.w $0D10,X\n\n.exit\n#_1EF8D6: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleDragY", + "code": "SomariaPlatform_HandleDragY:\n#_1EF8D7: LDA.w $0DE0,X\n#_1EF8DA: EOR.w $0EB0,X\n#_1EF8DD: AND.b #$02\n#_1EF8DF: BEQ .exit\n\n#_1EF8E1: LDA.w $0D00,X\n#_1EF8E4: AND.b #$F8\n\n#_1EF8E6: CLC\n#_1EF8E7: ADC.b #$04\n#_1EF8E9: STA.b $00\n\n#_1EF8EB: SEC\n#_1EF8EC: SBC.w $0D00,X\n#_1EF8EF: BEQ .exit\n\n#_1EF8F1: STA.w $0B7E\n#_1EF8F4: BPL .positive\n\n#_1EF8F6: LDA.b #$FF\n#_1EF8F8: STA.w $0B7F\n\n.positive\n#_1EF8FB: LDA.b $00\n#_1EF8FD: STA.w $0D00,X\n\n.exit\n#_1EF900: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleDrag", + "code": "SomariaPlatform_HandleDrag:\n#_1EF901: JSR SomariaPlatform_HandleDragX\n#_1EF904: JSR SomariaPlatform_HandleDragY\n\n#_1EF907: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_DoNothing", + "code": "SomariaPlatform_HandleTile_DoNothing:\n#_1EF908: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_RisingSlope", + "code": "SomariaPlatform_HandleTile_RisingSlope:\n#_1EF909: LDA.w $0DE0,X\n#_1EF90C: EOR.b #$03\n#_1EF90E: STA.w $0DE0,X\n\n#_1EF911: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_FallingSlope", + "code": "SomariaPlatform_HandleTile_FallingSlope:\n#_1EF912: LDA.w $0DE0,X\n#_1EF915: EOR.b #$02\n#_1EF917: STA.w $0DE0,X\n\n#_1EF91A: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_TJunctionDLR", + "code": "SomariaPlatform_HandleTile_TJunctionDLR:\n#_1EF91F: LDA.b #$01\n#_1EF921: STA.w $0D80,X\n\n#_1EF924: LDA.b $4D\n#_1EF926: BNE .continue\n\n#_1EF928: LDY.w $0DE0,X\n\n#_1EF92B: LDA.b $F0\n#_1EF92D: AND.w .dpad_press,Y\n#_1EF930: BEQ .continue\n\n#_1EF932: STZ.w $0D80,X\n\n#_1EF935: LDA.w $0DE0,X\n#_1EF938: EOR.b #$01\n#_1EF93A: STA.w $0DE0,X\n\n.continue\n#_1EF93D: STZ.b $4B\n\n#_1EF93F: JMP.w SomariaPlatform_EnableDragging\n\n; =========================================================\n\npool SomariaPlatform_HandleTile_TJunctionULR\n\n.dpad_press\n#_1EF942: db $03, $07, $06, $05\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_TJunctionULR", + "code": "SomariaPlatform_HandleTile_TJunctionULR:\n#_1EF946: LDA.b #$01\n#_1EF948: STA.w $0D80,X\n\n#_1EF94B: LDY.w $0DE0,X\n\n#_1EF94E: LDA.b $F0\n#_1EF950: AND.w .dpad_press,Y\n#_1EF953: STA.b $00\n\n#_1EF955: AND.b #$08\n#_1EF957: BEQ .continue\n\n#_1EF959: LDA.b #$00\n#_1EF95B: STA.w $0DE0,X\n\n#_1EF95E: STZ.w $0D80,X\n#_1EF961: BRA .exit\n\n.continue\n#_1EF963: LDA.b $00\n#_1EF965: AND.b #$04\n#_1EF967: BEQ .not_down_press\n\n#_1EF969: LDA.b #$01\n#_1EF96B: STA.w $0DE0,X\n\n#_1EF96E: STZ.w $0D80,X\n#_1EF971: BRA .exit\n\n.not_down_press\n#_1EF973: LDA.b $00\n#_1EF975: AND.b #$02\n#_1EF977: BEQ .not_left_press\n\n#_1EF979: LDA.b #$02\n#_1EF97B: STA.w $0DE0,X\n\n#_1EF97E: STZ.w $0D80,X\n#_1EF981: BRA .exit\n\n.not_left_press\n#_1EF983: LDA.b $00\n#_1EF985: AND.b #$01\n#_1EF987: BEQ .not_right_press\n\n#_1EF989: LDA.b #$03\n#_1EF98B: STA.w $0DE0,X\n\n#_1EF98E: STZ.w $0D80,X\n\n.not_right_press\n#_1EF991: LDA.w $0DE0,X\n#_1EF994: BNE .set_direction\n\n#_1EF996: LDA.b #$02\n#_1EF998: STA.w $0DE0,X\n\n.set_direction\n#_1EF99B: STZ.w $0D80,X\n\n.exit\n#_1EF99E: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_TJunctionUDR", + "code": "SomariaPlatform_HandleTile_TJunctionUDR:\n#_1EF9A3: LDA.b #$01\n#_1EF9A5: STA.w $0D80,X\n\n#_1EF9A8: LDY.w $0DE0,X\n\n#_1EF9AB: LDA.b $F0\n#_1EF9AD: AND.w .dpad_press,Y\n#_1EF9B0: STA.b $00\n\n#_1EF9B2: AND.b #$08\n#_1EF9B4: BEQ .not_up_press\n\n#_1EF9B6: LDA.b #$00\n#_1EF9B8: STA.w $0DE0,X\n\n#_1EF9BB: STZ.w $0D80,X\n#_1EF9BE: BRA .exit\n\n.not_up_press\n#_1EF9C0: LDA.b $00\n#_1EF9C2: AND.b #$04\n#_1EF9C4: BEQ .not_down_press\n\n#_1EF9C6: LDA.b #$01\n#_1EF9C8: STA.w $0DE0,X\n\n#_1EF9CB: STZ.w $0D80,X\n#_1EF9CE: BRA .exit\n\n.not_down_press\n#_1EF9D0: LDA.b $00\n#_1EF9D2: AND.b #$02\n#_1EF9D4: BEQ .not_left_press\n\n#_1EF9D6: LDA.b #$02\n#_1EF9D8: STA.w $0DE0,X\n\n#_1EF9DB: STZ.w $0D80,X\n#_1EF9DE: BRA .exit\n\n.not_left_press\n#_1EF9E0: LDA.b $00\n#_1EF9E2: AND.b #$01\n#_1EF9E4: BEQ .not_right_press\n\n#_1EF9E6: LDA.b #$03\n#_1EF9E8: STA.w $0DE0,X\n\n#_1EF9EB: STZ.w $0D80,X\n\n.not_right_press\n#_1EF9EE: LDA.w $0DE0,X\n#_1EF9F1: CMP.b #$01\n#_1EF9F3: BNE .set_direction\n\n#_1EF9F5: LDA.b #$02\n#_1EF9F7: STA.w $0DE0,X\n\n.set_direction\n#_1EF9FA: STZ.w $0D80,X\n\n.exit\n#_1EF9FD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_TJunctionUDL", + "code": "SomariaPlatform_HandleTile_TJunctionUDL:\n#_1EFA02: LDA.b #$01\n#_1EFA04: STA.w $0D80,X\n\n#_1EFA07: LDY.w $0DE0,X\n\n#_1EFA0A: LDA.b $F0\n#_1EFA0C: AND.w .dpad_press,Y\n#_1EFA0F: STA.b $00\n\n#_1EFA11: AND.b #$08\n#_1EFA13: BEQ .not_up_press\n\n#_1EFA15: LDA.b #$00\n#_1EFA17: STA.w $0DE0,X\n\n#_1EFA1A: STZ.w $0D80,X\n#_1EFA1D: BRA .exit\n\n.not_up_press\n#_1EFA1F: LDA.b $00\n#_1EFA21: AND.b #$04\n#_1EFA23: BEQ .not_down_press\n\n#_1EFA25: LDA.b #$01\n#_1EFA27: STA.w $0DE0,X\n\n#_1EFA2A: STZ.w $0D80,X\n#_1EFA2D: BRA .exit\n\n.not_down_press\n#_1EFA2F: LDA.b $00\n#_1EFA31: AND.b #$02\n#_1EFA33: BEQ .not_left_press\n\n#_1EFA35: LDA.b #$02\n#_1EFA37: STA.w $0DE0,X\n\n#_1EFA3A: STZ.w $0D80,X\n#_1EFA3D: BRA .exit\n\n.not_left_press\n#_1EFA3F: LDA.b $00\n#_1EFA41: AND.b #$01\n#_1EFA43: BEQ .not_right_press\n\n#_1EFA45: LDA.b #$03\n#_1EFA47: STA.w $0DE0,X\n\n#_1EFA4A: STZ.w $0D80,X\n\n.not_right_press\n#_1EFA4D: LDA.w $0DE0,X\n#_1EFA50: CMP.b #$02\n#_1EFA52: BNE .set_direction\n\n#_1EFA54: LDA.b #$00\n#_1EFA56: STA.w $0DE0,X\n\n.set_direction\n#_1EFA59: STZ.w $0D80,X\n\n.exit\n#_1EFA5C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_4WayJunction", + "code": "SomariaPlatform_HandleTile_4WayJunction:\n#_1EFA61: LDA.b #$01\n#_1EFA63: STA.w $0D80,X\n\n#_1EFA66: LDY.w $0DE0,X\n\n#_1EFA69: LDA.b $F0\n#_1EFA6B: AND.w .dpad_press,Y\n#_1EFA6E: STA.b $00\n\n#_1EFA70: AND.b #$08\n#_1EFA72: BEQ .not_up_press\n\n#_1EFA74: LDA.b #$00\n#_1EFA76: STA.w $0DE0,X\n\n#_1EFA79: STZ.w $0D80,X\n#_1EFA7C: BRA .exit\n\n.not_up_press\n#_1EFA7E: LDA.b $00\n#_1EFA80: AND.b #$04\n#_1EFA82: BEQ .not_down_press\n\n#_1EFA84: LDA.b #$01\n#_1EFA86: STA.w $0DE0,X\n\n#_1EFA89: STZ.w $0D80,X\n#_1EFA8C: BRA .exit\n\n.not_down_press\n#_1EFA8E: LDA.b $00\n#_1EFA90: AND.b #$02\n#_1EFA92: BEQ .not_left_press\n\n#_1EFA94: LDA.b #$02\n#_1EFA96: STA.w $0DE0,X\n\n#_1EFA99: STZ.w $0D80,X\n#_1EFA9C: BRA .exit\n\n.not_left_press\n#_1EFA9E: LDA.b $00\n#_1EFAA0: AND.b #$01\n#_1EFAA2: BEQ .not_right_press\n\n#_1EFAA4: LDA.b #$03\n#_1EFAA6: STA.w $0DE0,X\n\n#_1EFAA9: STZ.w $0D80,X\n\n.not_right_press\n#_1EFAAC: LDA.w $0DE0,X\n#_1EFAAF: CMP.b #$03\n#_1EFAB1: BNE .set_direction\n\n#_1EFAB3: LDA.b #$00\n#_1EFAB5: STA.w $0DE0,X\n\n.set_direction\n#_1EFAB8: STZ.w $0D80,X\n\n.exit\n#_1EFABB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_CrossOver", + "code": "SomariaPlatform_HandleTile_CrossOver:\n#_1EFAC0: LDY.w $0DE0,X\n\n#_1EFAC3: LDA.b $F0\n#_1EFAC5: AND.w .dpad_press,Y\n#_1EFAC8: STA.b $00\n\n#_1EFACA: AND.b #$08\n#_1EFACC: BEQ .not_up_press\n\n#_1EFACE: LDA.b #$00\n#_1EFAD0: STA.w $0DE0,X\n#_1EFAD3: BRA .exit\n\n.not_up_press\n#_1EFAD5: LDA.b $00\n#_1EFAD7: AND.b #$04\n#_1EFAD9: BEQ .not_down_press\n\n#_1EFADB: LDA.b #$01\n#_1EFADD: STA.w $0DE0,X\n#_1EFAE0: BRA .exit\n\n.not_down_press\n#_1EFAE2: LDA.b $00\n#_1EFAE4: AND.b #$02\n#_1EFAE6: BEQ .not_left_press\n\n#_1EFAE8: LDA.b #$02\n#_1EFAEA: STA.w $0DE0,X\n#_1EFAED: BRA .exit\n\n.not_left_press\n#_1EFAEF: LDA.b $00\n#_1EFAF1: AND.b #$01\n#_1EFAF3: BEQ .exit\n\n#_1EFAF5: LDA.b #$03\n#_1EFAF7: STA.w $0DE0,X\n\n.exit\n#_1EFAFA: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_Unknown", + "code": "SomariaPlatform_HandleTile_Unknown:\n#_1EFAFF: LDA.b #$01\n#_1EFB01: STA.w $0D80,X\n\n#_1EFB04: LDY.w $0DE0,X\n\n#_1EFB07: LDA.b $F0\n#_1EFB09: AND.w .dpad_press,Y\n#_1EFB0C: BEQ SomariaPlatform_EnableDragging\n\n#_1EFB0E: STA.b $00\n\n#_1EFB10: AND.b #$08\n#_1EFB12: BEQ .not_up_press\n\n#_1EFB14: LDA.b #$00\n#_1EFB16: BRA .set_direction\n\n.not_up_press\n#_1EFB18: LDA.b $00\n#_1EFB1A: AND.b #$04\n#_1EFB1C: BEQ .not_down_press\n\n#_1EFB1E: LDA.b #$01\n#_1EFB20: BRA .set_direction\n\n.not_down_press\n#_1EFB22: LDA.b $00\n#_1EFB24: AND.b #$02\n#_1EFB26: BEQ .not_left_press\n\n#_1EFB28: LDA.b #$02\n#_1EFB2A: BRA .set_direction\n\n.not_left_press\n#_1EFB2C: LDA.b #$03\n\n.set_direction\n#_1EFB2E: STA.w $0DE0,X\n\n#_1EFB31: STZ.w $0D80,X\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_EnableDragging", + "code": "SomariaPlatform_EnableDragging:\n#_1EFB34: LDA.b #$01\n#_1EFB36: STA.w $02F5\n\n#_1EFB39: RTS", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_HandleTile_Station", + "code": "SomariaPlatform_HandleTile_Station:\n#_1EFB3A: STZ.w $0D80,X\n\n#_1EFB3D: LDA.w $0DE0,X\n#_1EFB40: EOR.b #$01\n#_1EFB42: STA.w $0DE0,X\n\n#_1EFB45: STZ.b $4B\n#_1EFB47: BRA SomariaPlatform_EnableDragging\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "SomariaPlatform_DragLink", + "code": "SomariaPlatform_DragLink:\n#_1EFB49: REP #$20\n\n#_1EFB4B: LDA.w $0FD8\n#_1EFB4E: SEC\n#_1EFB4F: SBC.w #$0008\n\n#_1EFB52: CMP.b $22\n#_1EFB54: BEQ .x_done\n#_1EFB56: BPL .x_too_low\n\n.x_too_high\n#_1EFB58: DEC.w $0B7C\n#_1EFB5B: BRA .x_done\n\n.x_too_low\n#_1EFB5D: INC.w $0B7C\n\n.x_done\n#_1EFB60: LDA.w $0FDA\n#_1EFB63: SEC\n#_1EFB64: SBC.w #$0010\n\n#_1EFB67: CMP.b $20\n#_1EFB69: BEQ .y_done\n#_1EFB6B: BPL .y_too_low\n\n.y_too_high\n#_1EFB6D: DEC.w $0B7E\n#_1EFB70: BRA .y_done\n\n.y_too_low\n#_1EFB72: INC.w $0B7E\n\n.y_done\n#_1EFB75: SEP #$30\n\n#_1EFB77: RTS", + "file": "bank_1E.asm" + }, + { + "name": "UNREACHABLE_1EFB78", + "code": "UNREACHABLE_1EFB78:\n#_1EFB78: db $00, $00, $01, $FF, $00, $00\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AE_Pipe_Down", + "code": "Sprite_AE_Pipe_Down:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_AF_Pipe_Up", + "code": "Sprite_AF_Pipe_Up:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B0_Pipe_Right", + "code": "Sprite_B0_Pipe_Right:", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_B1_Pipe_Left", + "code": "Sprite_B1_Pipe_Left:\n#_1EFB7E: JSR Sprite_CheckIfActive_Bank1E\n\n#_1EFB81: LDA.w $0DC0,X\n#_1EFB84: JSL JumpTableLocal\n#_1EFB88: dw Pipe_LocatePath\n#_1EFB8A: dw Pipe_FindEndPoint\n#_1EFB8C: dw Pipe_Idle\n#_1EFB8E: dw Pipe_DragLink\n#_1EFB90: dw Pipe_MoveLink\n#_1EFB92: dw Pipe_Reset\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_FindEndPoint", + "code": "Pipe_FindEndPoint:\n#_1EFB94: JSR SomariaPlatformAndPipe_CheckTile\n#_1EFB97: CMP.b #$BE ; TILETYPE BE\n#_1EFB99: BNE .invalid_tile\n\n#_1EFB9B: STA.w $0E90,X\n\n#_1EFB9E: INC.w $0DC0,X\n\n#_1EFBA1: LDA.w $0DE0,X\n#_1EFBA4: EOR.b #$01\n#_1EFBA6: STA.w $0DE0,X\n\n.invalid_tile\n#_1EFBA9: CMP.w $0E90,X\n#_1EFBAC: BEQ .same_as_last\n\n#_1EFBAE: STA.w $0E90,X\n\n.same_as_last\n#_1EFBB1: LDA.w $0DE0,X\n#_1EFBB4: STA.w $0EB0,X\n\n#_1EFBB7: JSR SomariaPlatformAndPipe_HandleMovement\n#_1EFBBA: JSR Sprite_Move_XY_Bank1E\n\n#_1EFBBD: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_Idle", + "code": "Pipe_Idle:\n#_1EFBBE: LDA.w $1DE0\n#_1EFBC1: CMP.b #$FF\n#_1EFBC3: BNE .exit\n\n#_1EFBC5: JSL Sprite_CheckDamageToLink_ignore_layer_long\n#_1EFBC9: BCC .exit\n\n#_1EFBCB: PHX\n#_1EFBCC: JSL Pipe_ValidateEntry\n#_1EFBD0: PLX\n\n#_1EFBD1: BCS .cant_use\n\n#_1EFBD3: INC.w $0DC0,X\n\n#_1EFBD6: LDA.b #$04\n#_1EFBD8: STA.w $0E00,X\n\n#_1EFBDB: JSL Link_ResetProperties_A\n\n#_1EFBDF: LDA.b #$01\n#_1EFBE1: STA.w $02E4\n#_1EFBE4: STA.w $037B\n\n#_1EFBE7: TXA\n#_1EFBE8: STA.w $1DE0\n\n.exit\n#_1EFBEB: RTS", + "file": "bank_1E.asm" + }, + { + "name": "PipeTileTypeMasks", + "code": "PipeTileTypeMasks:\n#_1EFBF0: db $08, $04, $02, $01\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_DragLink", + "code": "Pipe_DragLink:\n#_1EFBF4: LDA.w $0E00,X\n#_1EFBF7: BNE .delay\n\n#_1EFBF9: INC.w $0DC0,X\n\n#_1EFBFC: LDA.b #$0C\n#_1EFBFE: STA.b $4B\n\n#_1EFC00: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_MoveLink", + "code": "Pipe_MoveLink:\n#_1EFC13: LDA.b #$03\n#_1EFC15: STA.w $0E80,X\n\n#_1EFC18: LDA.b $22\n#_1EFC1A: STA.b $3F\n\n#_1EFC1C: LDA.b $23\n#_1EFC1E: STA.b $41\n\n#_1EFC20: LDA.b $20\n#_1EFC22: STA.b $3E\n\n#_1EFC24: LDA.b $21\n#_1EFC26: STA.b $40\n\n; ---------------------------------------------------------\n\n.next\n#_1EFC28: INC.w $0D90,X\n\n#_1EFC2B: LDA.w $0D90,X\n#_1EFC2E: AND.b #$07\n#_1EFC30: BNE .do_movement\n\n#_1EFC32: JSR SomariaPlatformAndPipe_CheckTile\n\n#_1EFC35: PHA\n\n#_1EFC36: CMP.b #$B2 ; TILETYPE B2\n#_1EFC38: BCC .no_thud\n\n#_1EFC3A: CMP.b #$B6 ; TILETYPE B6\n#_1EFC3C: BCS .no_thud\n\n#_1EFC3E: LDA.b #$0B ; SFX2.0B\n#_1EFC40: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_thud\n#_1EFC44: PLA\n#_1EFC45: CMP.w $0E90,X\n#_1EFC48: BEQ .do_movement\n\n#_1EFC4A: STA.w $0E90,X\n\n#_1EFC4D: CMP.b #$BE ; TILETYPE BE\n#_1EFC4F: BNE .check_new_tile\n\n#_1EFC51: INC.w $0DC0,X\n\n#_1EFC54: LDA.b #$18\n#_1EFC56: STA.w $0E00,X\n\n.check_new_tile\n#_1EFC59: LDA.w $0DE0,X\n#_1EFC5C: STA.w $0EB0,X\n\n#_1EFC5F: JSR SomariaPlatformAndPipe_HandleMovement\n#_1EFC62: JSR SomariaPlatform_HandleDrag\n\n; ---------------------------------------------------------\n\n.do_movement\n#_1EFC65: JSR Sprite_Move_XY_Bank1E\n\n#_1EFC68: LDA.w $0D10,X\n#_1EFC6B: SEC\n#_1EFC6C: SBC.b #$08\n#_1EFC6E: STA.b $00\n\n#_1EFC70: LDA.w $0D30,X\n#_1EFC73: SBC.b #$00\n#_1EFC75: STA.b $01\n\n#_1EFC77: LDA.w $0D00,X\n#_1EFC7A: SEC\n#_1EFC7B: SBC.b #$0E\n#_1EFC7D: STA.b $02\n\n#_1EFC7F: LDA.w $0D20,X\n#_1EFC82: SBC.b #$00\n#_1EFC84: STA.b $03\n\n#_1EFC86: REP #$20\n\n#_1EFC88: LDA.b $00\n#_1EFC8A: CMP.b $22\n#_1EFC8C: BEQ .x_done\n#_1EFC8E: BCS .move_right\n\n.move_left\n#_1EFC90: DEC.b $22\n#_1EFC92: BRA .x_done\n\n.move_right\n#_1EFC94: INC.b $22\n\n.x_done\n#_1EFC96: LDA.b $02\n#_1EFC98: CMP.b $20\n#_1EFC9A: BEQ .y_done\n#_1EFC9C: BCS .move_down\n\n.move_up\n#_1EFC9E: DEC.b $20\n#_1EFCA0: BRA .y_done\n\n.move_down\n#_1EFCA2: INC.b $20\n\n.y_done\n#_1EFCA4: SEP #$30\n\n#_1EFCA6: DEC.w $0E80,X\n#_1EFCA9: BEQ .finish_up\n\n#_1EFCAB: JMP.w .next\n\n; ---------------------------------------------------------\n\n.finish_up\n#_1EFCAE: LDA.b $22\n#_1EFCB0: SEC\n#_1EFCB1: SBC.b $3F\n#_1EFCB3: STA.b $31\n\n#_1EFCB5: LDA.b $20\n#_1EFCB7: SEC\n#_1EFCB8: SBC.b $3E\n#_1EFCBA: STA.b $30\n\n#_1EFCBC: LDY.w $0DE0,X\n\n#_1EFCBF: LDA.w PipeTileTypeMasks,Y\n#_1EFCC2: STA.b $26\n\n#_1EFCC4: PHX\n\n#_1EFCC5: JSL Link_HandleMovingAnimation_FullLongEntry\n#_1EFCC9: JSL HandleIndoorCameraAndDoors_long\n#_1EFCCD: JSL Link_CancelDash_long\n\n#_1EFCD1: PLX\n\n#_1EFCD2: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_Reset", + "code": "Pipe_Reset:\n#_1EFCD3: LDA.w $0E00,X\n#_1EFCD6: BNE .delay\n\n#_1EFCD8: STZ.w $02E4\n#_1EFCDB: STZ.w $02F5\n#_1EFCDE: STZ.w $037B\n\n#_1EFCE1: STZ.b $4B\n#_1EFCE3: STZ.b $31\n#_1EFCE5: STZ.b $30\n\n#_1EFCE7: LDA.b #$FF\n#_1EFCE9: STA.w $1DE0\n\n#_1EFCEC: LDA.b #$02\n#_1EFCEE: STA.w $0DC0,X\n\n#_1EFCF1: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Pipe_HandlePlayerMovement", + "code": "Pipe_HandlePlayerMovement:\n#_1EFCFF: PHX\n\n#_1EFD00: STA.b $67\n#_1EFD02: STA.b $26\n\n#_1EFD04: JSL Link_HandleVelocity\n#_1EFD08: JSL Link_HandleMovingAnimation_FullLongEntry\n#_1EFD0C: JSL HandleIndoorCameraAndDoors_long\n\n#_1EFD10: PLX\n\n#_1EFD11: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Fairy_HandleMovement", + "code": "Fairy_HandleMovement:\n#_1EFD14: PHB\n#_1EFD15: PHK\n#_1EFD16: PLB\n\n#_1EFD17: JSR .main\n\n#_1EFD1A: PLB\n\n#_1EFD1B: RTL", + "file": "bank_1E.asm" + }, + { + "name": "ReleaseFairy", + "code": "ReleaseFairy:\n#_1EFE33: LDA.b #$E3 ; SPRITE E3\n#_1EFE35: JSL Sprite_SpawnDynamically\n#_1EFE39: BMI .no_space\n\n#_1EFE3B: LDA.b $EE\n#_1EFE3D: STA.w $0F20,Y\n\n#_1EFE40: LDA.b $22\n#_1EFE42: CLC\n#_1EFE43: ADC.b #$08\n#_1EFE45: STA.w $0D10,Y\n\n#_1EFE48: LDA.b $23\n#_1EFE4A: ADC.b #$00\n#_1EFE4C: STA.w $0D30,Y\n\n#_1EFE4F: LDA.b $20\n#_1EFE51: CLC\n#_1EFE52: ADC.b #$10\n#_1EFE54: STA.w $0D00,Y\n\n#_1EFE57: LDA.b $21\n#_1EFE59: ADC.b #$00\n#_1EFE5B: STA.w $0D20,Y\n\n#_1EFE5E: LDA.b #$00\n#_1EFE60: STA.w $0DE0,Y\n\n#_1EFE63: LDA.b #$60\n#_1EFE65: STA.w $0F10,Y\n\n.no_space\n#_1EFE68: RTL", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_DirectionToFaceLink_Bank1E", + "code": "Sprite_DirectionToFaceLink_Bank1E:\n#_1EFE69: JSL Sprite_DirectionToFaceLink_long\n\n#_1EFE6D: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_IsRightOfLink_Bank1E", + "code": "Sprite_IsRightOfLink_Bank1E:\n#_1EFE6E: JSL Sprite_IsRightOfLink_long\n\n#_1EFE72: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_IsBelowLink_Bank1E", + "code": "Sprite_IsBelowLink_Bank1E:\n#_1EFE73: JSL Sprite_IsBelowLink_long\n\n#_1EFE77: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank1E", + "code": "Sprite_CheckIfActive_Bank1E:\n#_1EFE78: LDA.w $0DD0,X\n#_1EFE7B: CMP.b #$09\n#_1EFE7D: BNE .inactive\n\n#Sprite_CheckIfActivePermissive_Bank1E:\n#_1EFE7F: LDA.w $0FC1\n#_1EFE82: BNE .inactive\n\n#_1EFE84: LDA.b $11\n#_1EFE86: BNE .inactive\n\n#_1EFE88: LDA.w $0CAA,X\n#_1EFE8B: BMI .active\n\n#_1EFE8D: LDA.w $0F00,X\n#_1EFE90: BEQ .active\n\n.inactive\n#_1EFE92: PLA\n#_1EFE93: PLA\n\n.active\n#_1EFE94: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_CheckIfRecoiling_Bank1E", + "code": "Sprite_CheckIfRecoiling_Bank1E:\n#_1EFE9B: LDA.w $0EA0,X\n#_1EFE9E: BEQ .exit\n\n#_1EFEA0: AND.b #$7F\n#_1EFEA2: BEQ .recoil_over\n\n#_1EFEA4: LDA.w $0D40,X\n#_1EFEA7: PHA\n\n#_1EFEA8: LDA.w $0D50,X\n#_1EFEAB: PHA\n\n#_1EFEAC: DEC.w $0EA0,X\n#_1EFEAF: BNE .still_recoiling\n\n#_1EFEB1: LDA.w $0F40,X\n#_1EFEB4: CLC\n#_1EFEB5: ADC.b #$20\n#_1EFEB7: CMP.b #$40\n#_1EFEB9: BCS .no_adjust\n\n#_1EFEBB: LDA.w $0F30,X\n#_1EFEBE: CLC\n#_1EFEBF: ADC.b #$20\n#_1EFEC1: CMP.b #$40\n#_1EFEC3: BCC .still_recoiling\n\n.no_adjust\n#_1EFEC5: LDA.b #$90\n#_1EFEC7: STA.w $0EA0,X\n\n.still_recoiling\n#_1EFECA: LDA.w $0EA0,X\n#_1EFECD: BMI .no_movement\n\n#_1EFECF: LSR A\n#_1EFED0: LSR A\n#_1EFED1: TAY\n\n#_1EFED2: LDA.b $1A\n#_1EFED4: AND.w .masks,Y\n#_1EFED7: BNE .no_movement\n\n#_1EFED9: LDA.w $0F30,X\n#_1EFEDC: STA.w $0D40,X\n\n#_1EFEDF: LDA.w $0F40,X\n#_1EFEE2: STA.w $0D50,X\n\n#_1EFEE5: LDA.w $0CD2,X\n#_1EFEE8: BMI .handle_movement\n\n#_1EFEEA: JSR Sprite_CheckTileCollision_Bank1E\n#_1EFEED: AND.b #$0F\n#_1EFEEF: BEQ .handle_movement\n\n#_1EFEF1: CMP.b #$04\n#_1EFEF3: BCS .stop_vertical_movement\n\n.stop_horizontal_movement\n#_1EFEF5: STZ.w $0F40,X\n#_1EFEF8: STZ.w $0D50,X\n\n#_1EFEFB: BRA .movement_stopped\n\n.stop_vertical_movement\n#_1EFEFD: STZ.w $0F30,X\n#_1EFF00: STZ.w $0D40,X\n\n.movement_stopped\n#_1EFF03: BRA .no_movement\n\n.handle_movement\n#_1EFF05: JSR Sprite_Move_XY_Bank1E\n\n.no_movement\n#_1EFF08: PLA\n#_1EFF09: STA.w $0D50,X\n\n#_1EFF0C: PLA\n#_1EFF0D: STA.w $0D40,X\n\n#_1EFF10: LDA.w $0E20,X\n#_1EFF13: CMP.b #$7A ; SPRITE 7A\n#_1EFF15: BEQ .exit\n\n#_1EFF17: PLA\n#_1EFF18: PLA\n\n.exit\n#_1EFF19: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_Move_XYZ_Bank1E", + "code": "Sprite_Move_XYZ_Bank1E:\n#_1EFF1E: JSR Sprite_Move_Z_Bank1E\n\n; =========================================================\n", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_Move_XY_Bank1E", + "code": "Sprite_Move_XY_Bank1E:\n#_1EFF21: JSR Sprite_Move_X_Bank1E\n#_1EFF24: JSR Sprite_Move_Y_Bank1E\n\n#_1EFF27: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_Move_X_Bank1E", + "code": "Sprite_Move_X_Bank1E:\n#_1EFF28: TXA\n#_1EFF29: CLC\n#_1EFF2A: ADC.b #$10\n#_1EFF2C: TAX\n\n#_1EFF2D: JSR Sprite_Move_Y_Bank1E\n\n#_1EFF30: LDX.w $0FA0\n\n#_1EFF33: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_Move_Y_Bank1E", + "code": "Sprite_Move_Y_Bank1E:\n#_1EFF34: LDA.w $0D40,X\n#_1EFF37: BEQ .exit\n\n#_1EFF39: ASL A\n#_1EFF3A: ASL A\n#_1EFF3B: ASL A\n#_1EFF3C: ASL A\n\n#_1EFF3D: CLC\n#_1EFF3E: ADC.w $0D60,X\n#_1EFF41: STA.w $0D60,X\n\n#_1EFF44: LDA.w $0D40,X\n#_1EFF47: PHP\n\n#_1EFF48: LSR A\n#_1EFF49: LSR A\n#_1EFF4A: LSR A\n#_1EFF4B: LSR A\n\n#_1EFF4C: LDY.b #$00\n\n#_1EFF4E: PLP\n#_1EFF4F: BPL .positive_velocity\n\n#_1EFF51: ORA.b #$F0\n#_1EFF53: DEY\n\n.positive_velocity\n#_1EFF54: ADC.w $0D00,X\n#_1EFF57: STA.w $0D00,X\n\n#_1EFF5A: TYA\n#_1EFF5B: ADC.w $0D20,X\n#_1EFF5E: STA.w $0D20,X\n\n.exit\n#_1EFF61: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_Move_Z_Bank1E", + "code": "Sprite_Move_Z_Bank1E:\n#_1EFF62: LDA.w $0F80,X\n#_1EFF65: ASL A\n#_1EFF66: ASL A\n#_1EFF67: ASL A\n#_1EFF68: ASL A\n#_1EFF69: CLC\n#_1EFF6A: ADC.w $0F90,X\n#_1EFF6D: STA.w $0F90,X\n\n#_1EFF70: LDA.w $0F80,X\n#_1EFF73: PHP\n\n#_1EFF74: LSR A\n#_1EFF75: LSR A\n#_1EFF76: LSR A\n#_1EFF77: LSR A\n\n#_1EFF78: PLP\n#_1EFF79: BPL .positive_velocity\n\n#_1EFF7B: ORA.b #$F0\n\n.positive_velocity\n#_1EFF7D: ADC.w $0F70,X\n#_1EFF80: STA.w $0F70,X\n\n#_1EFF83: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_PrepOAMCoord_Bank1E", + "code": "Sprite_PrepOAMCoord_Bank1E:\n#_1EFF84: JSL Sprite_PrepOAMCoord_long\n#_1EFF88: BCC .draw\n\n#_1EFF8A: PLA\n#_1EFF8B: PLA\n\n.draw\n#_1EFF8C: RTS", + "file": "bank_1E.asm" + }, + { + "name": "Sprite_DrawRippleIfInWater", + "code": "Sprite_DrawRippleIfInWater:\n#_1EFF8D: LDA.l $7FF9C2,X\n#_1EFF91: CMP.b #$08 ; TILETYPE 08\n#_1EFF93: BEQ .water_tile\n\n#_1EFF95: CMP.b #$09 ; TILETYPE 09\n#_1EFF97: BNE .not_water_tile\n\n.water_tile\n#_1EFF99: LDA.w $0E60,X\n#_1EFF9C: AND.b #$20\n#_1EFF9E: BEQ .no_offset\n\n#_1EFFA0: LDA.w $0FD8\n#_1EFFA3: SEC\n#_1EFFA4: SBC.b #$04\n#_1EFFA6: STA.w $0FD8\n\n#_1EFFA9: LDA.w $0FD9\n#_1EFFAC: SBC.b #$00\n#_1EFFAE: STA.w $0FD9\n\n#_1EFFB1: LDA.w $0E20,X\n#_1EFFB4: CMP.b #$DF ; !HARDCODED thing for small magic (SPRITE DF)\n#_1EFFB6: BNE .no_offset\n\n#_1EFFB8: LDA.w $0FDA\n#_1EFFBB: SEC\n#_1EFFBC: SBC.b #$07\n#_1EFFBE: STA.w $0FDA\n\n#_1EFFC1: LDA.w $0FDB\n#_1EFFC4: SBC.b #$00\n#_1EFFC6: STA.w $0FDB\n\n.no_offset\n#_1EFFC9: JSL SpriteDraw_WaterRipple\n#_1EFFCD: JSL Sprite_Get16BitCoords_long\n\n#_1EFFD1: LDA.w $0E40,X\n#_1EFFD4: AND.b #$1F\n#_1EFFD6: INC A\n#_1EFFD7: ASL A\n#_1EFFD8: ASL A\n\n#_1EFFD9: JSL SpriteDraw_AllocateOAMFromRegionA\n\n.not_water_tile\n#_1EFFDD: RTL", + "file": "bank_1E.asm" + }, + { + "name": "NULL_0AB72A", + "code": "NULL_0AB72A:\n #_0AB72A: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_0A_FluteMenu", + "code": "Module0E_0A_FluteMenu:\n #_0AB730: LDA.w $0200\n #_0AB733: JSL JumpTableLocal\n #_0AB737: dw WorldMap_FadeOut\n #_0AB739: dw FluteMenu_LoadMap\n #_0AB73B: dw WorldMap_LoadSpriteGFX\n #_0AB73D: dw WorldMap_Brighten\n #_0AB73F: dw FluteMenu_AdvanceMode\n #_0AB741: dw FluteMenu_HandleSelection\n #_0AB743: dw WorldMap_RestoreGraphics\n #_0AB745: dw FluteMenu_LoadSelectedScreen\n #_0AB747: dw Overworld_LoadOverlayAndMap\n #_0AB749: dw FluteMenu_FadeInAndQuack\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenu_LoadMap", + "code": "FluteMenu_LoadMap:\n #_0AB74B: STZ.w $1AF0\n\n #_0AB74E: JSL WorldMap_LoadLightWorldMap\n\n #_0AB752: RTL", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenu_AdvanceMode", + "code": "FluteMenu_AdvanceMode:\n #_0AB753: LDA.b #$10\n #_0AB755: STA.b $C8\n\n #_0AB757: INC.w $0200\n\n #_0AB75A: RTL", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenuNumbers", + "code": "FluteMenuNumbers:\n.char\n #_0AB75B: db $7F\n #_0AB75C: db $79\n #_0AB75D: db $6C\n #_0AB75E: db $6D\n #_0AB75F: db $6E\n #_0AB760: db $6F\n #_0AB761: db $7C\n #_0AB762: db $7D\n\n.pos_x_low\n #_0AB763: db $80\n #_0AB764: db $CF\n #_0AB765: db $10\n #_0AB766: db $B8\n #_0AB767: db $30\n #_0AB768: db $70\n #_0AB769: db $70\n #_0AB76A: db $F0\n\n.pos_x_high\n #_0AB76B: db $06\n #_0AB76C: db $0C\n #_0AB76D: db $02\n #_0AB76E: db $08\n #_0AB76F: db $0F\n #_0AB770: db $00\n #_0AB771: db $07\n #_0AB772: db $0E\n\n.pos_y_low\n #_0AB773: db $5B\n #_0AB774: db $98\n #_0AB775: db $C0\n #_0AB776: db $20\n #_0AB777: db $50\n #_0AB778: db $B0\n #_0AB779: db $30\n #_0AB77A: db $80\n\n.pos_y_high\n #_0AB77B: db $03\n #_0AB77C: db $05\n #_0AB77D: db $07\n #_0AB77E: db $0B\n #_0AB77F: db $0B\n #_0AB780: db $0F\n #_0AB781: db $0F\n #_0AB782: db $0F\n\n.bits\n #_0AB783: db $80\n #_0AB784: db $40\n #_0AB785: db $20\n #_0AB786: db $10\n #_0AB787: db $08\n #_0AB788: db $04\n #_0AB789: db $02\n #_0AB78A: db $01\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenu_HandleSelection", + "code": "FluteMenu_HandleSelection:\n #_0AB78B: LDA.b $C8\n #_0AB78D: BNE .delay\n\n #_0AB78F: LDA.b $F2\n #_0AB791: ORA.b $F0\n #_0AB793: AND.b #$C0\n #_0AB795: BEQ .no_selection_made\n\n #_0AB797: INC.w $0200\n\n #_0AB79A: RTL", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenu_LoadSelectedScreen", + "code": "FluteMenu_LoadSelectedScreen:\n #_0AB8C5: LDA.l $7EF2BB\n #_0AB8C9: AND.b #$DF\n #_0AB8CB: STA.l $7EF2BB\n\n #_0AB8CF: LDA.l $7EF2FB\n #_0AB8D3: AND.b #$DF\n #_0AB8D5: STA.l $7EF2FB\n\n #_0AB8D9: LDA.l $7EF216\n #_0AB8DD: AND.b #$7F\n #_0AB8DF: STA.l $7EF216\n\n #_0AB8E3: LDA.l $7EF051\n #_0AB8E7: AND.b #$FE\n #_0AB8E9: STA.l $7EF051\n\n #_0AB8ED: JSL FluteMenu_LoadTransport\n #_0AB8F1: JSL FluteMenu_LoadSelectedScreenPalettes\n\n; ---------------------------------------------------------\n\n #_0AB8F5: LDY.b #$58\n\n #_0AB8F7: LDA.b $8A\n #_0AB8F9: AND.b #$BF\n #_0AB8FB: CMP.b #$03 ; OW 03, OW 43\n #_0AB8FD: BEQ .death_mountain\n\n #_0AB8FF: CMP.b #$05 ; OW 05, OW 45\n #_0AB901: BEQ .death_mountain\n\n #_0AB903: CMP.b #$07 ; OW 07, OW 47\n #_0AB905: BEQ .death_mountain\n\n #_0AB907: LDY.b #$5A\n\n.death_mountain\n #_0AB909: JSL DecompressAnimatedOverworldTiles\n #_0AB90D: JSL Overworld_SetFixedColAndScroll\n\n #_0AB911: STZ.w $0AA9\n #_0AB914: STZ.w $0AB2\n\n #_0AB917: JSL InitializeTilesets\n\n #_0AB91B: INC.w $0200\n\n #_0AB91E: STZ.b $B2\n\n #_0AB920: JSL Overworld_ReloadSubscreenOverlayAndAdvance_long\n\n; ---------------------------------------------------------\n\n #_0AB924: LDA.b #$10 ; SFX3.10\n #_0AB926: STA.w $012F\n\n #_0AB929: LDX.b $8A\n\n #_0AB92B: LDA.l $7F5B00,X\n #_0AB92F: LSR A\n #_0AB930: LSR A\n #_0AB931: LSR A\n #_0AB932: LSR A\n #_0AB933: STA.w $012D\n\n #_0AB936: LDA.l $7F5B00,X\n #_0AB93A: AND.b #$0F\n #_0AB93C: TAX\n\n #_0AB93D: CPX.w $0130\n #_0AB940: BNE .songs_differ\n\n #_0AB942: LDX.b #$F3 ; SONG F3 - max volume\n\n.songs_differ\n #_0AB944: STX.w $012C\n\n #_0AB947: RTL", + "file": "bank_0A.asm" + }, + { + "name": "Overworld_LoadOverlayAndMap", + "code": "Overworld_LoadOverlayAndMap:\n #_0AB948: REP #$20\n\n #_0AB94A: LDA.b $10\n #_0AB94C: PHA\n\n #_0AB94D: LDA.w $0200\n #_0AB950: PHA\n\n #_0AB951: SEP #$20\n\n #_0AB953: JSL Overworld_LoadAndBuildScreen_long\n\n #_0AB957: REP #$20\n\n #_0AB959: PLA\n #_0AB95A: INC A\n #_0AB95B: STA.w $0200\n\n #_0AB95E: PLA\n #_0AB95F: STA.b $10\n\n #_0AB961: SEP #$20\n\n #_0AB963: RTL", + "file": "bank_0A.asm" + }, + { + "name": "FluteMenu_FadeInAndQuack", + "code": "FluteMenu_FadeInAndQuack:\n #_0AB964: INC.b $13\n\n #_0AB966: LDA.b $13\n #_0AB968: CMP.b #$0F\n #_0AB96A: BNE .delay\n\n; =========================================================\n\n #SpawnLandingDuck:\n #_0AB96C: STZ.w $0200\n #_0AB96F: STZ.b $B0\n\n #_0AB971: LDA.w $010C\n #_0AB974: STA.b $10\n #_0AB976: STZ.b $11\n\n #_0AB978: LDA.l $7EC229\n #_0AB97C: STA.b $9B\n\n #_0AB97E: LDY.b #$04\n #_0AB980: LDA.b #$27 ; ANCILLA 27\n #_0AB982: JSL AncillaAdd_Duck_drop_off\n\n.delay\n #_0AB986: JSL Sprite_Main\n\n #_0AB98A: RTL", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_07_OverworldMap", + "code": "Module0E_07_OverworldMap:\n #_0AB98B: LDA.w $0200\n #_0AB98E: JSL JumpTableLocal\n #_0AB992: dw WorldMap_FadeOut\n #_0AB994: dw WorldMap_LoadLightWorldMap\n #_0AB996: dw WorldMap_LoadDarkWorldMap\n #_0AB998: dw WorldMap_LoadSpriteGFX\n #_0AB99A: dw WorldMap_Brighten\n #_0AB99C: dw WorldMap_PlayerControl\n #_0AB99E: dw WorldMap_RestoreGraphics\n #_0AB9A0: dw WorldMap_ExitMap\n\n; =========================================================\n\n #EXIT_0AB9A2:\n #_0AB9A2: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_FadeOut", + "code": "WorldMap_FadeOut:\n #_0AB9A3: DEC.b $13\n #_0AB9A5: BNE EXIT_0AB9A2\n\n #_0AB9A7: LDA.b $9B\n #_0AB9A9: STA.l $7EC229\n\n #_0AB9AD: JSL EnableForceBlank\n\n #_0AB9B1: LDA.b #$03\n #_0AB9B3: STA.b $95\n\n #_0AB9B5: INC.w $0200\n\n #_0AB9B8: REP #$20\n\n #_0AB9BA: LDA.b $1C\n #_0AB9BC: STA.l $7EC211\n\n #_0AB9C0: LDA.b $E0\n #_0AB9C2: STA.l $7EC200\n\n #_0AB9C6: LDA.b $E2\n #_0AB9C8: STA.l $7EC202\n\n #_0AB9CC: LDA.b $E6\n #_0AB9CE: STA.l $7EC204\n\n #_0AB9D2: LDA.b $E8\n #_0AB9D4: STA.l $7EC206\n\n #_0AB9D8: STZ.b $E0\n #_0AB9DA: STZ.b $E2\n\n #_0AB9DC: STZ.b $E4\n #_0AB9DE: STZ.b $E6\n\n #_0AB9E0: STZ.b $E8\n #_0AB9E2: STZ.b $EA\n\n #_0AB9E4: LDA.b $99\n #_0AB9E6: STA.l $7EC225\n\n #_0AB9EA: LDA.w #$01FC\n #_0AB9ED: STA.w $0100\n\n; ---------------------------------------------------------\n\n #_0AB9F0: LDX.b $8A\n #_0AB9F2: CPX.b #$80 ; SPOW\n #_0AB9F4: BCS .special_overworld\n\n #_0AB9F6: LDA.b $20\n #_0AB9F8: STA.l $7EC108\n\n #_0AB9FC: LDA.b $22\n #_0AB9FE: STA.l $7EC10A\n\n.special_overworld\n #_0ABA02: SEP #$20\n\n #_0ABA04: LDA.l $7EF3C5\n #_0ABA08: CMP.b #$02\n #_0ABA0A: BCS .zelda_rescured\n\n #_0ABA0C: LDA.b #$80\n #_0ABA0E: STA.b $99\n\n #_0ABA10: LDA.b #$61\n #_0ABA12: STA.b $9A\n\n.zelda_rescured\n #_0ABA14: LDA.b #$10 ; SFX3.10\n #_0ABA16: STA.w $012F\n\n #_0ABA19: LDA.b #$05 ; SFX1.05\n #_0ABA1B: STA.w $012D\n\n #_0ABA1E: LDA.b #$F2 ; SONG F2 - half volume\n #_0ABA20: STA.w $012C\n\n #_0ABA23: LDA.b #$07\n #_0ABA25: STA.w BGMODE\n #_0ABA28: STA.b $94\n\n #_0ABA2A: LDA.b #$80\n #_0ABA2C: STA.w M7SEL\n\n #_0ABA2F: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_LoadLightWorldMap", + "code": "WorldMap_LoadLightWorldMap:\n #_0ABA30: JSR WorldMap_FillTilemapWithEF\n\n #_0ABA33: LDA.b #$11\n #_0ABA35: STA.b $1C\n #_0ABA37: STZ.b $1D\n\n #_0ABA39: JSL TransferMode7Characters\n #_0ABA3D: JSR WorldMap_SetUpHDMA\n\n #_0ABA40: PHB\n\n #_0ABA41: LDA.b #Palettes_OWMAP>>16\n #_0ABA43: PHA\n #_0ABA44: PLB\n\n #_0ABA45: REP #$30\n\n #_0ABA47: LDX.w #$00FE\n #_0ABA4A: LDY.w #$00FE\n\n #_0ABA4D: LDA.b $8A\n #_0ABA4F: AND.w #$0040\n #_0ABA52: BEQ .light_world\n\n #_0ABA54: LDY.w #$01FE\n\n.light_world\n.next_color\n #_0ABA57: LDA.w Palettes_OWMAP,Y\n #_0ABA5A: STA.l $7EC500,X\n\n #_0ABA5E: DEY\n #_0ABA5F: DEY\n\n #_0ABA60: DEX\n #_0ABA61: DEX\n #_0ABA62: BPL .next_color\n\n #_0ABA64: SEP #$30\n\n #_0ABA66: PLB\n\n #_0ABA67: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n #_0ABA6B: INC.b $15\n\n #_0ABA6D: LDA.b #$07\n #_0ABA6F: STA.b $17\n\n #_0ABA71: STZ.b $13\n\n #_0ABA73: INC.w $0710\n #_0ABA76: INC.w $0200\n\n #_0ABA79: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_LoadDarkWorldMap", + "code": "WorldMap_LoadDarkWorldMap:\n #_0ABA7A: LDA.b $8A\n #_0ABA7C: AND.b #$40\n #_0ABA7E: BEQ .light_world\n\n #_0ABA80: REP #$30\n\n #_0ABA82: LDX.w #$03FE\n\n.copy_next\n #_0ABA85: LDA.l WorldMap_DarkWorldTilemap,X\n #_0ABA89: STA.w $1000,X\n\n #_0ABA8C: DEX\n #_0ABA8D: DEX\n #_0ABA8E: BPL .copy_next\n\n #_0ABA90: SEP #$30\n\n #_0ABA92: LDA.b #$15\n #_0ABA94: STA.b $17\n\n.light_world\n #_0ABA96: INC.w $0200\n\n #_0ABA99: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_LoadSpriteGFX", + "code": "WorldMap_LoadSpriteGFX:\n #_0ABA9A: LDA.b #$10\n #_0ABA9C: STA.w $0AAA\n\n #_0ABA9F: JSL Graphics_LoadChrHalfSlot\n\n #_0ABAA3: STZ.w $0AAA\n\n #_0ABAA6: INC.w $0200\n\n #_0ABAA9: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_Brighten", + "code": "WorldMap_Brighten:\n #_0ABAAA: INC.b $13\n\n #_0ABAAC: LDA.b $13\n #_0ABAAE: CMP.b #$0F\n #_0ABAB0: BNE .exit\n\n #_0ABAB2: INC.w $0200\n\n.exit\n #_0ABAB5: RTL", + "file": "bank_0A.asm" + }, + { + "name": "UNREACHABLE_0ABAB6", + "code": "UNREACHABLE_0ABAB6:\n #_0ABAB6: db $1E, $00, $1E, $02, $FE, $02, $00, $80\n #_0ABABE: db $02, $80, $00, $01, $FF, $01\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_BaseZoom", + "code": "WorldMap_BaseZoom:\n #_0ABAC4: db $21 ; zoomed out\n #_0ABAC5: db $0C ; zoomed in\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_PanMovements", + "code": "WorldMap_PanMovements:\n #_0ABAC6: dw $0000 ; none\n #_0ABAC8: dw $0000 ; none\n #_0ABACA: dw $0001 ; down\n #_0ABACC: dw $0002 ; right\n #_0ABACE: dw $FFFF ; up\n #_0ABAD0: dw $FFFE ; left\n #_0ABAD2: dw $0001 ; never used, but handles UD\n #_0ABAD4: dw $0002 ; never used, but handles LR\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_PanBoundaries", + "code": "WorldMap_PanBoundaries:\n #_0ABAD6: db $00, $00 ; none\n #_0ABAD8: db $00, $00 ; none\n #_0ABADA: db $E0, $00 ; down\n #_0ABADC: db $E0, $01 ; right\n #_0ABADE: db $B8, $FF ; up\n #_0ABAE0: db $20, $FF ; left\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomPointers", + "code": "WorldMapHDMA_ZoomPointers:\n #_0ABAE2: dw WorldMapHDMA_ZoomedOut\n #_0ABAE4: dw WorldMapHDMA_ZoomedIn\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_PlayerControl", + "code": "WorldMap_PlayerControl:\n #_0ABAE6: LDA.w $0636\n #_0ABAE9: ASL A\n #_0ABAEA: BCC .no_zoom_change\n\n #_0ABAEC: TAX\n\n #_0ABAED: LSR A\n #_0ABAEE: STA.w $0636\n\n #_0ABAF1: LDA.l WorldMapHDMA_ZoomPointers,X\n #_0ABAF5: STA.w DMA6ADDRL\n #_0ABAF8: STA.w DMA7ADDRL\n\n.no_zoom_change\n #_0ABAFB: LDA.w $0636\n #_0ABAFE: BNE .ignore_change\n\n #_0ABB00: LDA.b $F6\n #_0ABB02: AND.b #$40\n #_0ABB04: BEQ .ignore_change\n\n #_0ABB06: INC.w $0200\n\n #_0ABB09: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_RestoreGraphics", + "code": "WorldMap_RestoreGraphics:\n #_0ABBD6: DEC.b $13\n #_0ABBD8: BNE EXIT_0ABBD5\n\n #_0ABBDA: JSL EnableForceBlank\n\n #_0ABBDE: INC.w $0200\n\n; ---------------------------------------------------------\n\n #_0ABBE1: REP #$20\n\n #_0ABBE3: LDX.b #$00\n\n.next_color\n #_0ABBE5: LDA.l $7EC300,X\n #_0ABBE9: STA.l $7EC500,X\n\n #_0ABBED: LDA.l $7EC380,X\n #_0ABBF1: STA.l $7EC580,X\n\n #_0ABBF5: LDA.l $7EC400,X\n #_0ABBF9: STA.l $7EC600,X\n\n #_0ABBFD: LDA.l $7EC480,X\n #_0ABC01: STA.l $7EC680,X\n\n #_0ABC05: INX\n #_0ABC06: INX\n #_0ABC07: CPX.b #$80\n #_0ABC09: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_0ABC0B: LDA.l $7EC225\n #_0ABC0F: STA.b $99\n\n #_0ABC11: STZ.b $E4\n #_0ABC13: STZ.b $EA\n\n #_0ABC15: LDA.l $7EC200\n #_0ABC19: STA.b $E0\n\n #_0ABC1B: LDA.l $7EC202\n #_0ABC1F: STA.b $E2\n\n #_0ABC21: LDA.l $7EC204\n #_0ABC25: STA.b $E6\n\n #_0ABC27: LDA.l $7EC206\n #_0ABC2B: STA.b $E8\n\n #_0ABC2D: LDA.l $7EC211\n #_0ABC31: STA.b $1C\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Attract_SetUpConclusionHDMA", + "code": "Attract_SetUpConclusionHDMA:\n #_0ABC33: LDA.w #WorldMapHDMA_AttractMode>>0\n #_0ABC36: STA.w DMA7ADDRL\n\n #_0ABC39: LDX.b #WorldMapHDMA_AttractMode>>16\n #_0ABC3B: STX.w DMA7ADDRB\n\n #_0ABC3E: LDX.b #$00\n #_0ABC40: STX.w HDMA7INDIRECTB\n\n #_0ABC43: SEP #$30\n\n #_0ABC45: LDA.b #$80\n #_0ABC47: STA.b $9B\n\n #_0ABC49: LDA.b #$09\n #_0ABC4B: STA.w BGMODE\n #_0ABC4E: STA.b $94\n\n #_0ABC50: STZ.w $0710\n\n #_0ABC53: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_ExitMap", + "code": "WorldMap_ExitMap:\n #_0ABC54: STZ.w $0AA9\n #_0ABC57: STZ.w $0AB2\n\n #_0ABC5A: JSL InitializeTilesets\n\n #_0ABC5E: INC.b $15\n\n #_0ABC60: STZ.b $B2\n #_0ABC62: STZ.w $0200\n #_0ABC65: STZ.b $B0\n\n #_0ABC67: LDA.w $010C\n #_0ABC6A: STA.b $10\n\n #_0ABC6C: LDA.b #$20\n #_0ABC6E: STA.b $11\n\n #_0ABC70: STZ.w $1000\n #_0ABC73: STZ.w $1001\n\n #_0ABC76: LDA.l $7EC229\n #_0ABC7A: STA.b $9B\n\n #_0ABC7C: SEP #$20\n\n #_0ABC7E: LDX.b $8A\n\n #_0ABC80: LDA.l $7F5B00,X\n #_0ABC84: LSR A\n #_0ABC85: LSR A\n #_0ABC86: LSR A\n #_0ABC87: LSR A\n #_0ABC88: STA.w $012D\n\n #_0ABC8B: LDA.b #$10 ; SFX3.10\n #_0ABC8D: STA.w $012F\n\n #_0ABC90: LDA.b #$F3 ; SONG F3 - max volume\n #_0ABC92: STA.w $012C\n\n #_0ABC95: RTL", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_SetUpHDMA", + "code": "WorldMap_SetUpHDMA:\n #_0ABC96: REP #$20\n\n #_0ABC98: LDA.w #$0080\n #_0ABC9B: STA.b $E0\n\n #_0ABC9D: LDA.w #$00C8\n #_0ABCA0: STA.b $E6\n\n #_0ABCA2: ADC.w #$0100\n #_0ABCA5: STA.w $063A\n\n #_0ABCA8: LDA.w #$0100\n #_0ABCAB: STA.w $0638\n\n #_0ABCAE: LDA.w #$1B42\n #_0ABCB1: STA.w DMA6MODE\n\n #_0ABCB4: LDA.w #$1E42\n #_0ABCB7: STA.w DMA7MODE\n\n; ---------------------------------------------------------\n\n #_0ABCBA: SEP #$20\n\n #_0ABCBC: STZ.b $96\n #_0ABCBE: STZ.b $97\n #_0ABCC0: STZ.b $98\n #_0ABCC2: STZ.b $1E\n #_0ABCC4: STZ.b $1F\n\n #_0ABCC6: STZ.w M7B\n #_0ABCC9: STZ.w M7B\n #_0ABCCC: STZ.w M7C\n #_0ABCCF: STZ.w M7C\n\n #_0ABCD2: STZ.w M7X\n #_0ABCD5: LDA.b #$01\n #_0ABCD7: STA.w M7X\n\n #_0ABCDA: STZ.w M7Y\n #_0ABCDD: STA.w M7Y\n\n; ---------------------------------------------------------\n\n #_0ABCE0: LDA.b $10\n #_0ABCE2: CMP.b #$14\n #_0ABCE4: BEQ .attract_mode\n\n #_0ABCE6: LDA.b $11\n #_0ABCE8: CMP.b #$0A\n #_0ABCEA: BNE .not_flute_map\n\n #_0ABCEC: JMP.w .flute_map\n\n; ---------------------------------------------------------\n\n.not_flute_map\n #_0ABCEF: LDA.b #$04\n #_0ABCF1: STA.w $0635\n\n #_0ABCF4: LDA.b #$0C\n #_0ABCF6: STA.w $0637\n\n #_0ABCF9: LDA.b #$01\n #_0ABCFB: STA.w $0636\n\n #_0ABCFE: REP #$21\n\n #_0ABD00: LDA.l $7EC108\n\n #_0ABD04: LSR A\n #_0ABD05: LSR A\n #_0ABD06: LSR A\n #_0ABD07: LSR A\n\n #_0ABD08: SEC\n #_0ABD09: SBC.w #$0048\n\n #_0ABD0C: AND.w #$FFFE\n #_0ABD0F: CLC\n #_0ABD10: ADC.l WorldMap_PanMovements\n #_0ABD14: STA.b $E6\n\n #_0ABD16: CLC\n #_0ABD17: ADC.w #$0100\n #_0ABD1A: STA.w $063A\n\n; ---------------------------------------------------------\n\n #_0ABD1D: LDA.l $7EC10A\n\n #_0ABD21: LSR A\n #_0ABD22: LSR A\n #_0ABD23: LSR A\n #_0ABD24: LSR A\n\n #_0ABD25: SEC\n #_0ABD26: SBC.w #$0080\n #_0ABD29: STA.b $02\n #_0ABD2B: BPL .x_positive_a\n\n #_0ABD2D: EOR.w #$FFFF\n #_0ABD30: INC A\n\n.x_positive_a\n #_0ABD31: STA.b $00\n\n #_0ABD33: ASL A\n #_0ABD34: ASL A\n #_0ABD35: CLC\n #_0ABD36: ADC.b $00\n\n #_0ABD38: LSR A\n #_0ABD39: LDX.b $03\n #_0ABD3B: BPL .x_positive_b\n\n #_0ABD3D: EOR.w #$FFFF\n #_0ABD40: INC A\n\n.x_positive_b\n #_0ABD41: CLC\n #_0ABD42: ADC.w #$0080\n #_0ABD45: AND.w #$FFFE\n #_0ABD48: STA.b $E0\n\n; ---------------------------------------------------------\n\n.normal_map\n #_0ABD4A: LDA.w #WorldMapHDMA_ZoomedIn>>0\n #_0ABD4D: STA.w DMA6ADDRL\n #_0ABD50: STA.w DMA7ADDRL\n\n #_0ABD53: LDX.b #WorldMapHDMA_ZoomedIn>>16\n #_0ABD55: STX.w DMA6ADDRB\n #_0ABD58: STX.w DMA7ADDRB\n\n #_0ABD5B: LDX.b #WorldMapHDMA_ZoomedIn>>16\n #_0ABD5D: BRA .continue\n\n; ---------------------------------------------------------\n\n.attract_mode\n #_0ABD5F: REP #$21\n\n #_0ABD61: LDA.w #WorldMapHDMA_AttractMode>>0\n #_0ABD64: STA.w DMA6ADDRL\n #_0ABD67: STA.w DMA7ADDRL\n\n #_0ABD6A: LDX.b #WorldMapHDMA_AttractMode>>16\n #_0ABD6C: STX.w DMA6ADDRB\n #_0ABD6F: STX.w DMA7ADDRB\n\n #_0ABD72: LDX.b #$00\n #_0ABD74: BRA .continue\n\n; ---------------------------------------------------------\n\n.flute_map\n #_0ABD76: LDA.b #$04\n #_0ABD78: STA.w $0635\n\n #_0ABD7B: LDA.b #$21\n #_0ABD7D: STA.w $0637\n #_0ABD80: STZ.w $0636\n\n #_0ABD83: REP #$21\n\n #_0ABD85: LDA.w #WorldMapHDMA_ZoomedOut>>0\n #_0ABD88: STA.w DMA6ADDRL\n #_0ABD8B: STA.w DMA7ADDRL\n\n #_0ABD8E: LDX.b #WorldMapHDMA_ZoomedOut>>16\n #_0ABD90: STX.w DMA6ADDRB\n #_0ABD93: STX.w DMA7ADDRB\n\n #_0ABD96: LDX.b #WorldMapHDMA_ZoomedOut>>16\n\n; ---------------------------------------------------------\n\n.continue\n #_0ABD98: STX.w HDMA6INDIRECTB\n #_0ABD9B: STX.w HDMA7INDIRECTB\n\n #_0ABD9E: SEP #$20\n\n #_0ABDA0: LDA.b #$C0\n #_0ABDA2: STA.b $9B\n\n #_0ABDA4: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_FillTilemapWithEF", + "code": "WorldMap_FillTilemapWithEF:\n #_0ABDA5: REP #$20\n\n #_0ABDA7: LDA.w #$00EF\n #_0ABDAA: STA.b $00\n\n #_0ABDAC: STZ.w VMAIN\n #_0ABDAF: STZ.w VMADDR ; VRAM $0000\n\n #_0ABDB2: LDA.w #$1808\n #_0ABDB5: STA.w DMA1MODE\n #_0ABDB8: STZ.w DMA1ADDRB\n\n #_0ABDBB: LDA.w #$0000\n #_0ABDBE: STA.w DMA1ADDRL\n\n #_0ABDC1: LDA.w #$4000\n #_0ABDC4: STA.w DMA1SIZE\n\n #_0ABDC7: LDY.b #$02\n #_0ABDC9: STY.w MDMAEN\n\n #_0ABDCC: SEP #$20\n\n #_0ABDCE: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedOut", + "code": "WorldMapHDMA_ZoomedOut:\n #_0ABDCF: db $F0 : dw WorldMapHDMA_ZoomedOut_Part1 ; 112 lines, continuous\n #_0ABDD2: db $F0 : dw WorldMapHDMA_ZoomedOut_Part2 ; 112 lines, continuous\n #_0ABDD5: db $00 ; end\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedIn", + "code": "WorldMapHDMA_ZoomedIn:\n #_0ABDD6: db $F0 : dw WorldMapHDMA_ZoomedIn_Part1 ; 112 lines, continuous\n #_0ABDD9: db $F0 : dw WorldMapHDMA_ZoomedIn_Part2 ; 112 lines, continuous\n #_0ABDDC: db $00 ; end\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_AttractMode", + "code": "WorldMapHDMA_AttractMode:\n #_0ABDDD: db $F0 : dw $1B00 ; 112 lines, continuous\n #_0ABDE0: db $F0 : dw $1BE0 ; 112 lines, continuous\n #_0ABDE3: db $00 ; end\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr0", + "code": "WorldMapIcon_posx_spr0:\n #_0ABDE4: dw $07FF ; 0x00\n #_0ABDE6: dw $02C0 ; 0x01\n #_0ABDE8: dw $0D00 ; 0x02\n #_0ABDEA: dw $0F31 ; 0x03\n #_0ABDEC: dw $006D ; 0x04\n #_0ABDEE: dw $07E0 ; 0x05\n #_0ABDF0: dw $0F40 ; 0x06\n #_0ABDF2: dw $0F40 ; 0x07\n #_0ABDF4: dw $08DC ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr0", + "code": "WorldMapIcon_posy_spr0:\n #_0ABDF6: dw $0730 ; 0x00\n #_0ABDF8: dw $06A0 ; 0x01\n #_0ABDFA: dw $0710 ; 0x02\n #_0ABDFC: dw $0620 ; 0x03\n #_0ABDFE: dw $0070 ; 0x04\n #_0ABE00: dw $0640 ; 0x05\n #_0ABE02: dw $0620 ; 0x06\n #_0ABE04: dw $0620 ; 0x07\n #_0ABE06: dw $0030 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr1", + "code": "WorldMapIcon_posx_spr1:\n #_0ABE08: dw $FF00 ; 0x00\n #_0ABE0A: dw $FF00 ; 0x01\n #_0ABE0C: dw $FF00 ; 0x02\n #_0ABE0E: dw $08D0 ; 0x03\n #_0ABE10: dw $FF00 ; 0x04\n #_0ABE12: dw $FF00 ; 0x05\n #_0ABE14: dw $FF00 ; 0x06\n #_0ABE16: dw $0082 ; 0x07\n #_0ABE18: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr1", + "code": "WorldMapIcon_posy_spr1:\n #_0ABE1A: dw $FF00 ; 0x00\n #_0ABE1C: dw $FF00 ; 0x01\n #_0ABE1E: dw $FF00 ; 0x02\n #_0ABE20: dw $0080 ; 0x03\n #_0ABE22: dw $FF00 ; 0x04\n #_0ABE24: dw $FF00 ; 0x05\n #_0ABE26: dw $FF00 ; 0x06\n #_0ABE28: dw $00B0 ; 0x07\n #_0ABE2A: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr2", + "code": "WorldMapIcon_posx_spr2:\n #_0ABE2C: dw $FF00 ; 0x00\n #_0ABE2E: dw $FF00 ; 0x01\n #_0ABE30: dw $FF00 ; 0x02\n #_0ABE32: dw $0108 ; 0x03\n #_0ABE34: dw $FF00 ; 0x04\n #_0ABE36: dw $FF00 ; 0x05\n #_0ABE38: dw $FF00 ; 0x06\n #_0ABE3A: dw $0F11 ; 0x07\n #_0ABE3C: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr2", + "code": "WorldMapIcon_posy_spr2:\n #_0ABE3E: dw $FF00 ; 0x00\n #_0ABE40: dw $FF00 ; 0x01\n #_0ABE42: dw $FF00 ; 0x02\n #_0ABE44: dw $0D70 ; 0x03\n #_0ABE46: dw $FF00 ; 0x04\n #_0ABE48: dw $FF00 ; 0x05\n #_0ABE4A: dw $FF00 ; 0x06\n #_0ABE4C: dw $0103 ; 0x07\n #_0ABE4E: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr3", + "code": "WorldMapIcon_posx_spr3:\n #_0ABE50: dw $FF00 ; 0x00\n #_0ABE52: dw $FF00 ; 0x01\n #_0ABE54: dw $FF00 ; 0x02\n #_0ABE56: dw $006D ; 0x03\n #_0ABE58: dw $FF00 ; 0x04\n #_0ABE5A: dw $FF00 ; 0x05\n #_0ABE5C: dw $FF00 ; 0x06\n #_0ABE5E: dw $01D0 ; 0x07\n #_0ABE60: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr3", + "code": "WorldMapIcon_posy_spr3:\n #_0ABE62: dw $FF00 ; 0x00\n #_0ABE64: dw $FF00 ; 0x01\n #_0ABE66: dw $FF00 ; 0x02\n #_0ABE68: dw $0070 ; 0x03\n #_0ABE6A: dw $FF00 ; 0x04\n #_0ABE6C: dw $FF00 ; 0x05\n #_0ABE6E: dw $FF00 ; 0x06\n #_0ABE70: dw $0780 ; 0x07\n #_0ABE72: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr4", + "code": "WorldMapIcon_posx_spr4:\n #_0ABE74: dw $FF00 ; 0x00\n #_0ABE76: dw $FF00 ; 0x01\n #_0ABE78: dw $FF00 ; 0x02\n #_0ABE7A: dw $FF00 ; 0x03\n #_0ABE7C: dw $FF00 ; 0x04\n #_0ABE7E: dw $FF00 ; 0x05\n #_0ABE80: dw $FF00 ; 0x06\n #_0ABE82: dw $0100 ; 0x07\n #_0ABE84: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr4", + "code": "WorldMapIcon_posy_spr4:\n #_0ABE86: dw $FF00 ; 0x00\n #_0ABE88: dw $FF00 ; 0x01\n #_0ABE8A: dw $FF00 ; 0x02\n #_0ABE8C: dw $FF00 ; 0x03\n #_0ABE8E: dw $FF00 ; 0x04\n #_0ABE90: dw $FF00 ; 0x05\n #_0ABE92: dw $FF00 ; 0x06\n #_0ABE94: dw $0CA0 ; 0x07\n #_0ABE96: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr5", + "code": "WorldMapIcon_posx_spr5:\n #_0ABE98: dw $FF00 ; 0x00\n #_0ABE9A: dw $FF00 ; 0x01\n #_0ABE9C: dw $FF00 ; 0x02\n #_0ABE9E: dw $FF00 ; 0x03\n #_0ABEA0: dw $FF00 ; 0x04\n #_0ABEA2: dw $FF00 ; 0x05\n #_0ABEA4: dw $FF00 ; 0x06\n #_0ABEA6: dw $0CA0 ; 0x07\n #_0ABEA8: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr5", + "code": "WorldMapIcon_posy_spr5:\n #_0ABEAA: dw $FF00 ; 0x00\n #_0ABEAC: dw $FF00 ; 0x01\n #_0ABEAE: dw $FF00 ; 0x02\n #_0ABEB0: dw $FF00 ; 0x03\n #_0ABEB2: dw $FF00 ; 0x04\n #_0ABEB4: dw $FF00 ; 0x05\n #_0ABEB6: dw $FF00 ; 0x06\n #_0ABEB8: dw $0DA0 ; 0x07\n #_0ABEBA: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posx_spr6", + "code": "WorldMapIcon_posx_spr6:\n #_0ABEBC: dw $FF00 ; 0x00\n #_0ABEBE: dw $FF00 ; 0x01\n #_0ABEC0: dw $FF00 ; 0x02\n #_0ABEC2: dw $FF00 ; 0x03\n #_0ABEC4: dw $FF00 ; 0x04\n #_0ABEC6: dw $FF00 ; 0x05\n #_0ABEC8: dw $FF00 ; 0x06\n #_0ABECA: dw $0759 ; 0x07\n #_0ABECC: dw $FF00 ; 0x08\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_posy_spr6", + "code": "WorldMapIcon_posy_spr6:\n #_0ABECE: dw $FF00 ; 0x00\n #_0ABED0: dw $FF00 ; 0x01\n #_0ABED2: dw $FF00 ; 0x02\n #_0ABED4: dw $FF00 ; 0x03\n #_0ABED6: dw $FF00 ; 0x04\n #_0ABED8: dw $FF00 ; 0x05\n #_0ABEDA: dw $FF00 ; 0x06\n #_0ABEDC: dw $0ED0 ; 0x07\n #_0ABEDE: dw $FF00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr0", + "code": "WorldMapIcon_tile_spr0:\n #_0ABEE0: db $00, $00 ; 0x00\n #_0ABEE2: db $00, $00 ; 0x01\n #_0ABEE4: db $00, $00 ; 0x02\n #_0ABEE6: db $38, $60 ; 0x03\n #_0ABEE8: db $34, $62 ; 0x04\n #_0ABEEA: db $32, $66 ; 0x05\n #_0ABEEC: db $34, $64 ; 0x06\n #_0ABEEE: db $34, $64 ; 0x07\n #_0ABEF0: db $32, $66 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr1", + "code": "WorldMapIcon_tile_spr1:\n #_0ABEF2: db $00, $00 ; 0x00\n #_0ABEF4: db $00, $00 ; 0x01\n #_0ABEF6: db $00, $00 ; 0x02\n #_0ABEF8: db $32, $60 ; 0x03\n #_0ABEFA: db $00, $00 ; 0x04\n #_0ABEFC: db $00, $00 ; 0x05\n #_0ABEFE: db $00, $00 ; 0x06\n #_0ABF00: db $34, $64 ; 0x07\n #_0ABF02: db $00, $00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr2", + "code": "WorldMapIcon_tile_spr2:\n #_0ABF04: db $00, $00 ; 0x00\n #_0ABF06: db $00, $00 ; 0x01\n #_0ABF08: db $00, $00 ; 0x02\n #_0ABF0A: db $34, $60 ; 0x03\n #_0ABF0C: db $00, $00 ; 0x04\n #_0ABF0E: db $00, $00 ; 0x05\n #_0ABF10: db $00, $00 ; 0x06\n #_0ABF12: db $34, $64 ; 0x07\n #_0ABF14: db $00, $00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr3", + "code": "WorldMapIcon_tile_spr3:\n #_0ABF16: db $00, $00 ; 0x00\n #_0ABF18: db $00, $00 ; 0x01\n #_0ABF1A: db $00, $00 ; 0x02\n #_0ABF1C: db $34, $62 ; 0x03\n #_0ABF1E: db $00, $00 ; 0x04\n #_0ABF20: db $00, $00 ; 0x05\n #_0ABF22: db $00, $00 ; 0x06\n #_0ABF24: db $34, $64 ; 0x07\n #_0ABF26: db $00, $00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr4", + "code": "WorldMapIcon_tile_spr4:\n #_0ABF28: db $00, $00 ; 0x00\n #_0ABF2A: db $00, $00 ; 0x01\n #_0ABF2C: db $00, $00 ; 0x02\n #_0ABF2E: db $00, $00 ; 0x03\n #_0ABF30: db $00, $00 ; 0x04\n #_0ABF32: db $00, $00 ; 0x05\n #_0ABF34: db $00, $00 ; 0x06\n #_0ABF36: db $34, $64 ; 0x07\n #_0ABF38: db $00, $00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr5", + "code": "WorldMapIcon_tile_spr5:\n #_0ABF3A: db $00, $00 ; 0x00\n #_0ABF3C: db $00, $00 ; 0x01\n #_0ABF3E: db $00, $00 ; 0x02\n #_0ABF40: db $00, $00 ; 0x03\n #_0ABF42: db $00, $00 ; 0x04\n #_0ABF44: db $00, $00 ; 0x05\n #_0ABF46: db $00, $00 ; 0x06\n #_0ABF48: db $34, $64 ; 0x07\n #_0ABF4A: db $00, $00 ; 0x08\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_tile_spr6", + "code": "WorldMapIcon_tile_spr6:\n #_0ABF4C: db $00, $00 ; 0x00\n #_0ABF4E: db $00, $00 ; 0x01\n #_0ABF50: db $00, $00 ; 0x02\n #_0ABF52: db $00, $00 ; 0x03\n #_0ABF54: db $00, $00 ; 0x04\n #_0ABF56: db $00, $00 ; 0x05\n #_0ABF58: db $00, $00 ; 0x06\n #_0ABF5A: db $34, $64 ; 0x07\n #_0ABF5C: db $00, $00 ; 0x08\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_RedXChars", + "code": "WorldMap_RedXChars:\n #_0ABF5E: db $68, $69, $78, $69\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_PortalProps", + "code": "WorldMap_PortalProps:\n #_0ABF62: db $34, $74, $F4, $B4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_HandleSprites", + "code": "WorldMap_HandleSprites:\n #_0ABF66: LDA.b $1A\n #_0ABF68: AND.b #$10\n #_0ABF6A: BEQ .dont_draw_link\n\n #_0ABF6C: JSR WorldMap_CalculateOAMCoordinates\n #_0ABF6F: BCC .dont_draw_link\n\n; ---------------------------------------------------------\n\n #_0ABF71: LDA.b $0E\n #_0ABF73: SEC\n #_0ABF74: SBC.b #$04\n #_0ABF76: STA.b $0E\n\n #_0ABF78: LDA.b $0F\n #_0ABF7A: SEC\n #_0ABF7B: SBC.b #$04\n #_0ABF7D: STA.b $0F\n\n #_0ABF7F: LDA.b #$00\n #_0ABF81: STA.b $0D\n\n #_0ABF83: LDA.b #$3E\n #_0ABF85: STA.b $0C\n\n #_0ABF87: LDA.b #$02\n #_0ABF89: STA.b $0B\n\n #_0ABF8B: LDX.b #$00\n #_0ABF8D: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.dont_draw_link\n #_0ABF90: LDA.l $7EC108\n #_0ABF94: PHA\n\n #_0ABF95: LDA.l $7EC109\n #_0ABF99: PHA\n\n #_0ABF9A: LDA.l $7EC10A\n #_0ABF9E: PHA\n\n #_0ABF9F: LDA.l $7EC10B\n #_0ABFA3: PHA\n\n; ---------------------------------------------------------\n\n #_0ABFA4: LDA.w $008A\n #_0ABFA7: CMP.b #$40\n #_0ABFA9: BCS .dont_draw_mirror_portal\n\n #_0ABFAB: LDX.b #$0F\n\n #_0ABFAD: LDA.w $1AB0,X\n #_0ABFB0: ORA.w $1AC0,X\n #_0ABFB3: ORA.w $1AD0,X\n #_0ABFB6: ORA.w $1AE0,X\n #_0ABFB9: BEQ .dont_draw_mirror_portal\n\n #_0ABFBB: LDA.b $1A\n #_0ABFBD: BNE .dont_swap_portal_char\n\n #_0ABFBF: LDA.w $1AF0,X\n #_0ABFC2: INC A\n #_0ABFC3: STA.w $1AF0,X\n\n.dont_swap_portal_char\n #_0ABFC6: LDA.w $1AB0,X\n #_0ABFC9: STA.l $7EC10A\n\n #_0ABFCD: LDA.w $1AC0,X\n #_0ABFD0: STA.l $7EC10B\n\n #_0ABFD4: LDA.w $1AD0,X\n #_0ABFD7: STA.l $7EC108\n\n #_0ABFDB: LDA.w $1AE0,X\n #_0ABFDE: STA.l $7EC109\n\n #_0ABFE2: JSR WorldMap_CalculateOAMCoordinates\n #_0ABFE5: BCC .dont_draw_mirror_portal\n\n #_0ABFE7: LDA.b #$6A\n #_0ABFE9: STA.b $0D\n\n #_0ABFEB: LDA.b $1A\n #_0ABFED: LSR A\n #_0ABFEE: AND.b #$03\n #_0ABFF0: TAX\n\n #_0ABFF1: LDA.l WorldMap_PortalProps,X\n #_0ABFF5: STA.b $0C\n\n #_0ABFF7: LDA.b #$02\n #_0ABFF9: STA.b $0B\n\n #_0ABFFB: LDX.b #$0F\n #_0ABFFD: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.dont_draw_mirror_portal\n #_0AC000: LDA.l $7EF2DB\n #_0AC004: AND.b #$20\n #_0AC006: BNE .pyramid_open\n\n #_0AC008: LDA.l $7EF3C7\n #_0AC00C: CMP.b #$06\n\n #_0AC00E: ROL A\n #_0AC00F: EOR.w $0FFF\n #_0AC012: AND.b #$01\n #_0AC014: BEQ .draw_prizes\n\n.pyramid_open\n #_0AC016: JMP.w .restore_coords_and_exit\n\n; ---------------------------------------------------------\n\n.draw_prizes\n #_0AC019: LDX.b #$00\n #_0AC01B: JSR OverworldMap_CheckForPendant\n #_0AC01E: BCS .skip_draw_0\n\n #_0AC020: JSR OverworldMap_CheckForCrystal\n #_0AC023: BCS .skip_draw_0\n\n #_0AC025: LDA.l $7EF3C7\n #_0AC029: ASL A\n #_0AC02A: TAX\n\n #_0AC02B: LDA.l WorldMapIcon_posx_spr0+1,X\n #_0AC02F: BMI .skip_draw_0\n\n #_0AC031: STA.l $7EC10B\n\n #_0AC035: LDA.l WorldMapIcon_posx_spr0+0,X\n #_0AC039: STA.l $7EC10A\n\n #_0AC03D: LDA.l WorldMapIcon_posy_spr0+1,X\n #_0AC041: STA.l $7EC109\n\n #_0AC045: LDA.l WorldMapIcon_posy_spr0+0,X\n #_0AC049: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC04D: LDA.l WorldMapIcon_tile_spr0+1,X\n #_0AC051: BEQ .dont_adjust_0\n\n #_0AC053: CMP.b #$64\n #_0AC055: BEQ .is_crystal_1\n\n #_0AC057: LDA.b $1A\n #_0AC059: AND.b #$10\n #_0AC05B: BNE .skip_draw_0\n\n.is_crystal_1\n #_0AC05D: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_0\n #_0AC060: LDX.b #$0E\n #_0AC062: JSR WorldMap_CalculateOAMCoordinates\n #_0AC065: BCC .skip_draw_0\n\n #_0AC067: LDA.l $7EF3C7\n #_0AC06B: ASL A\n #_0AC06C: TAX\n\n #_0AC06D: LDA.l WorldMapIcon_tile_spr0+1,X\n #_0AC071: BEQ .is_red_x_0\n\n #_0AC073: STA.b $0D\n\n #_0AC075: LDA.l WorldMapIcon_tile_spr0+0,X\n #_0AC079: STA.b $0C\n\n #_0AC07B: LDA.b #$02\n #_0AC07D: BRA .continue_0\n\n; ---------------------------------------------------------\n\n.is_red_x_0\n #_0AC07F: LDA.b $1A\n\n #_0AC081: LSR A\n #_0AC082: LSR A\n #_0AC083: LSR A\n\n #_0AC084: AND.b #$03\n #_0AC086: TAX\n\n #_0AC087: LDA.l WorldMap_RedXChars,X\n #_0AC08B: STA.b $0D\n\n #_0AC08D: LDA.b #$32\n #_0AC08F: STA.b $0C\n\n #_0AC091: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_0\n #_0AC093: STA.b $0B\n\n #_0AC095: LDX.b #$0E\n #_0AC097: JSR WorldMap_HandleSpriteBlink\n\n; =========================================================\n\n.skip_draw_0\n #_0AC09A: LDX.b #$01\n #_0AC09C: JSR OverworldMap_CheckForPendant\n #_0AC09F: BCS .skip_draw_1\n\n #_0AC0A1: JSR OverworldMap_CheckForCrystal\n #_0AC0A4: BCS .skip_draw_1\n\n #_0AC0A6: LDA.l $7EF3C7\n #_0AC0AA: ASL A\n #_0AC0AB: TAX\n\n #_0AC0AC: LDA.l WorldMapIcon_posx_spr1+1,X\n #_0AC0B0: BMI .skip_draw_1\n\n #_0AC0B2: STA.l $7EC10B\n\n #_0AC0B6: LDA.l WorldMapIcon_posx_spr1+0,X\n #_0AC0BA: STA.l $7EC10A\n\n #_0AC0BE: LDA.l WorldMapIcon_posy_spr1+1,X\n #_0AC0C2: STA.l $7EC109\n\n #_0AC0C6: LDA.l WorldMapIcon_posy_spr1+0,X\n #_0AC0CA: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC0CE: LDA.l WorldMapIcon_tile_spr1+1,X\n #_0AC0D2: BEQ .dont_adjust_1\n\n #_0AC0D4: CMP.b #$64\n #_0AC0D6: BEQ .is_crystal_3\n\n #_0AC0D8: LDA.b $1A\n #_0AC0DA: AND.b #$10\n #_0AC0DC: BNE .skip_draw_1\n\n.is_crystal_3\n #_0AC0DE: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_1\n #_0AC0E1: JSR WorldMap_CalculateOAMCoordinates\n #_0AC0E4: BCC .skip_draw_1\n\n #_0AC0E6: LDA.l $7EF3C7\n #_0AC0EA: ASL A\n #_0AC0EB: TAX\n\n #_0AC0EC: LDA.l WorldMapIcon_tile_spr1+1,X\n #_0AC0F0: BEQ .is_red_x_1\n\n #_0AC0F2: STA.b $0D\n\n #_0AC0F4: LDA.l WorldMapIcon_tile_spr1+0,X\n #_0AC0F8: STA.b $0C\n\n #_0AC0FA: LDA.b #$02\n #_0AC0FC: BRA .continue_1\n\n; ---------------------------------------------------------\n\n.is_red_x_1\n #_0AC0FE: LDA.b $1A\n\n #_0AC100: LSR A\n #_0AC101: LSR A\n #_0AC102: LSR A\n\n #_0AC103: AND.b #$03\n #_0AC105: TAX\n\n #_0AC106: LDA.l WorldMap_RedXChars,X\n #_0AC10A: STA.b $0D\n\n #_0AC10C: LDA.b #$32\n #_0AC10E: STA.b $0C\n\n #_0AC110: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_1\n #_0AC112: STA.b $0B\n\n #_0AC114: LDX.b #$0D\n #_0AC116: JSR WorldMap_HandleSpriteBlink\n\n; =========================================================\n\n.skip_draw_1\n #_0AC119: LDX.b #$02\n #_0AC11B: JSR OverworldMap_CheckForPendant\n #_0AC11E: BCS .skip_draw_2\n\n #_0AC120: JSR OverworldMap_CheckForCrystal\n #_0AC123: BCS .skip_draw_2\n\n #_0AC125: LDA.l $7EF3C7\n #_0AC129: ASL A\n #_0AC12A: TAX\n\n #_0AC12B: LDA.l WorldMapIcon_posx_spr2+1,X\n #_0AC12F: BMI .skip_draw_2\n\n #_0AC131: STA.l $7EC10B\n\n #_0AC135: LDA.l WorldMapIcon_posx_spr2+0,X\n #_0AC139: STA.l $7EC10A\n\n #_0AC13D: LDA.l WorldMapIcon_posy_spr2+1,X\n #_0AC141: STA.l $7EC109\n\n #_0AC145: LDA.l WorldMapIcon_posy_spr2+0,X\n #_0AC149: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC14D: LDA.l WorldMapIcon_tile_spr2+1,X\n #_0AC151: BEQ .dont_adjust_2\n\n #_0AC153: CMP.b #$64\n #_0AC155: BEQ .is_crystal_7\n\n #_0AC157: LDA.b $1A\n #_0AC159: AND.b #$10\n #_0AC15B: BNE .skip_draw_2\n\n.is_crystal_7\n #_0AC15D: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_2\n #_0AC160: LDX.b #$0C\n #_0AC162: JSR WorldMap_CalculateOAMCoordinates\n #_0AC165: BCC .skip_draw_2\n\n #_0AC167: LDA.l $7EF3C7\n #_0AC16B: ASL A\n #_0AC16C: TAX\n\n #_0AC16D: LDA.l WorldMapIcon_tile_spr2+1,X\n #_0AC171: BEQ .is_red_x_2\n\n #_0AC173: STA.b $0D\n\n #_0AC175: LDA.l WorldMapIcon_tile_spr2+0,X\n #_0AC179: STA.b $0C\n\n #_0AC17B: LDA.b #$02\n #_0AC17D: BRA .continue_2\n\n; ---------------------------------------------------------\n\n.is_red_x_2\n #_0AC17F: LDA.b $1A\n\n #_0AC181: LSR A\n #_0AC182: LSR A\n #_0AC183: LSR A\n\n #_0AC184: AND.b #$03\n #_0AC186: TAX\n\n #_0AC187: LDA.l WorldMap_RedXChars,X\n #_0AC18B: STA.b $0D\n\n #_0AC18D: LDA.b #$32\n #_0AC18F: STA.b $0C\n\n #_0AC191: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_2\n #_0AC193: STA.b $0B\n\n #_0AC195: LDX.b #$0C\n #_0AC197: JSR WorldMap_HandleSpriteBlink\n\n; =========================================================\n\n.skip_draw_2\n #_0AC19A: LDX.b #$03\n #_0AC19C: JSR OverworldMap_CheckForCrystal\n #_0AC19F: BCS .skip_draw_3\n\n #_0AC1A1: LDA.l $7EF3C7\n #_0AC1A5: ASL A\n #_0AC1A6: TAX\n\n #_0AC1A7: LDA.l WorldMapIcon_posx_spr3+1,X\n #_0AC1AB: BMI .skip_draw_3\n\n #_0AC1AD: STA.l $7EC10B\n\n #_0AC1B1: LDA.l WorldMapIcon_posx_spr3+0,X\n #_0AC1B5: STA.l $7EC10A\n\n #_0AC1B9: LDA.l WorldMapIcon_posy_spr3+1,X\n #_0AC1BD: STA.l $7EC109\n\n #_0AC1C1: LDA.l WorldMapIcon_posy_spr3+0,X\n #_0AC1C5: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC1C9: LDA.l WorldMapIcon_tile_spr3+1,X\n #_0AC1CD: BEQ .dont_adjust_3\n\n #_0AC1CF: CMP.b #$64\n #_0AC1D1: BEQ .is_crystal_4\n\n #_0AC1D3: LDA.b $1A\n #_0AC1D5: AND.b #$10\n #_0AC1D7: BNE .skip_draw_3\n\n.is_crystal_4\n #_0AC1D9: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_3\n #_0AC1DC: LDX.b #$0B\n #_0AC1DE: JSR WorldMap_CalculateOAMCoordinates\n #_0AC1E1: BCC .skip_draw_3\n\n #_0AC1E3: LDA.l $7EF3C7\n #_0AC1E7: ASL A\n #_0AC1E8: TAX\n\n #_0AC1E9: LDA.l WorldMapIcon_tile_spr3+1,X\n #_0AC1ED: BEQ .is_red_x_3\n\n #_0AC1EF: STA.b $0D\n\n #_0AC1F1: LDA.l WorldMapIcon_tile_spr3+0,X\n #_0AC1F5: STA.b $0C\n\n #_0AC1F7: LDA.b #$02\n #_0AC1F9: BRA .continue_3\n\n; ---------------------------------------------------------\n\n.is_red_x_3\n #_0AC1FB: LDA.b $1A\n\n #_0AC1FD: LSR A\n #_0AC1FE: LSR A\n #_0AC1FF: LSR A\n\n #_0AC200: AND.b #$03\n #_0AC202: TAX\n\n #_0AC203: LDA.l WorldMap_RedXChars,X\n #_0AC207: STA.b $0D\n\n #_0AC209: LDA.b #$32\n #_0AC20B: STA.b $0C\n\n #_0AC20D: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_3\n #_0AC20F: STA.b $0B\n\n #_0AC211: LDX.b #$0B\n #_0AC213: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.skip_draw_3\n #_0AC216: LDX.b #$04\n #_0AC218: JSR OverworldMap_CheckForCrystal\n #_0AC21B: BCS .skip_draw_4\n\n #_0AC21D: LDA.l $7EF3C7\n #_0AC221: ASL A\n #_0AC222: TAX\n\n #_0AC223: LDA.l WorldMapIcon_posx_spr4+1,X\n #_0AC227: BMI .skip_draw_4\n\n #_0AC229: STA.l $7EC10B\n\n #_0AC22D: LDA.l WorldMapIcon_posx_spr4+0,X\n #_0AC231: STA.l $7EC10A\n\n #_0AC235: LDA.l WorldMapIcon_posy_spr4+1,X\n #_0AC239: STA.l $7EC109\n\n #_0AC23D: LDA.l WorldMapIcon_posy_spr4+0,X\n #_0AC241: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC245: LDA.l WorldMapIcon_tile_spr4+1,X\n #_0AC249: BEQ .dont_adjust_4\n\n #_0AC24B: CMP.b #$64\n #_0AC24D: BEQ .is_crystal_6\n\n #_0AC24F: LDA.b $1A\n #_0AC251: AND.b #$10\n #_0AC253: BNE .skip_draw_4\n\n.is_crystal_6\n #_0AC255: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_4\n #_0AC258: LDX.b #$0A\n #_0AC25A: JSR WorldMap_CalculateOAMCoordinates\n #_0AC25D: BCC .skip_draw_4\n\n #_0AC25F: LDA.l $7EF3C7\n #_0AC263: ASL A\n #_0AC264: TAX\n\n #_0AC265: LDA.l WorldMapIcon_tile_spr4+1,X\n #_0AC269: BEQ .is_red_x_4\n\n #_0AC26B: STA.b $0D\n\n #_0AC26D: LDA.l WorldMapIcon_tile_spr4+0,X\n #_0AC271: STA.b $0C\n\n #_0AC273: LDA.b #$02\n #_0AC275: BRA .continue_4\n\n.is_red_x_4\n #_0AC277: LDA.b $1A\n\n #_0AC279: LSR A\n #_0AC27A: LSR A\n #_0AC27B: LSR A\n\n #_0AC27C: AND.b #$03\n #_0AC27E: TAX\n\n #_0AC27F: LDA.l WorldMap_RedXChars,X\n #_0AC283: STA.b $0D\n\n #_0AC285: LDA.b #$32\n #_0AC287: STA.b $0C\n\n #_0AC289: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_4\n #_0AC28B: STA.b $0B\n\n #_0AC28D: LDX.b #$0A\n #_0AC28F: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.skip_draw_4\n #_0AC292: LDX.b #$05\n #_0AC294: JSR OverworldMap_CheckForCrystal\n #_0AC297: BCS .skip_draw_5\n\n #_0AC299: LDA.l $7EF3C7\n #_0AC29D: ASL A\n #_0AC29E: TAX\n\n #_0AC29F: LDA.l WorldMapIcon_posx_spr5+1,X\n #_0AC2A3: BMI .skip_draw_5\n\n #_0AC2A5: STA.l $7EC10B\n\n #_0AC2A9: LDA.l WorldMapIcon_posx_spr5+0,X\n #_0AC2AD: STA.l $7EC10A\n\n #_0AC2B1: LDA.l WorldMapIcon_posy_spr5+1,X\n #_0AC2B5: STA.l $7EC109\n\n #_0AC2B9: LDA.l WorldMapIcon_posy_spr5+0,X\n #_0AC2BD: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC2C1: LDA.l WorldMapIcon_tile_spr5+1,X\n #_0AC2C5: BEQ .dont_adjust_5\n\n #_0AC2C7: CMP.b #$64\n #_0AC2C9: BEQ .is_crystal_5\n\n #_0AC2CB: LDA.b $1A\n #_0AC2CD: AND.b #$10\n #_0AC2CF: BNE .skip_draw_5\n\n.is_crystal_5\n #_0AC2D1: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_5\n #_0AC2D4: LDX.b #$09\n\n #_0AC2D6: JSR WorldMap_CalculateOAMCoordinates\n #_0AC2D9: BCC .skip_draw_5\n\n #_0AC2DB: LDA.l $7EF3C7\n #_0AC2DF: ASL A\n #_0AC2E0: TAX\n\n #_0AC2E1: LDA.l WorldMapIcon_tile_spr5+1,X\n #_0AC2E5: BEQ .is_red_x_5\n\n #_0AC2E7: STA.b $0D\n\n #_0AC2E9: LDA.l WorldMapIcon_tile_spr5+0,X\n #_0AC2ED: STA.b $0C\n\n #_0AC2EF: LDA.b #$02\n #_0AC2F1: BRA .continue_5\n\n; ---------------------------------------------------------\n\n.is_red_x_5\n #_0AC2F3: LDA.b $1A\n #_0AC2F5: LSR A\n #_0AC2F6: LSR A\n #_0AC2F7: LSR A\n\n #_0AC2F8: AND.b #$03\n #_0AC2FA: TAX\n\n #_0AC2FB: LDA.l WorldMap_RedXChars,X\n #_0AC2FF: STA.b $0D\n\n #_0AC301: LDA.b #$32\n #_0AC303: STA.b $0C\n\n #_0AC305: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_5\n #_0AC307: STA.b $0B\n\n #_0AC309: LDX.b #$09\n #_0AC30B: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.skip_draw_5\n #_0AC30E: LDX.b #$06\n #_0AC310: JSR OverworldMap_CheckForCrystal\n #_0AC313: BCS .restore_coords_and_exit\n\n #_0AC315: LDA.l $7EF3C7\n #_0AC319: ASL A\n #_0AC31A: TAX\n\n #_0AC31B: LDA.l WorldMapIcon_posx_spr6+1,X\n #_0AC31F: BMI .restore_coords_and_exit\n\n #_0AC321: STA.l $7EC10B\n\n #_0AC325: LDA.l WorldMapIcon_posx_spr6+0,X\n #_0AC329: STA.l $7EC10A\n\n #_0AC32D: LDA.l WorldMapIcon_posy_spr6+1,X\n #_0AC331: STA.l $7EC109\n\n #_0AC335: LDA.l WorldMapIcon_posy_spr6+0,X\n #_0AC339: STA.l $7EC108\n\n; ---------------------------------------------------------\n\n #_0AC33D: LDA.l WorldMapIcon_tile_spr6+1,X\n #_0AC341: BEQ .dont_adjust_6\n\n #_0AC343: CMP.b #$64\n #_0AC345: BEQ .is_crystal_2\n\n #_0AC347: LDA.b $1A\n #_0AC349: AND.b #$10\n #_0AC34B: BNE .restore_coords_and_exit\n\n.is_crystal_2\n #_0AC34D: JSR WorldMapIcon_AdjustCoordinate\n\n; ---------------------------------------------------------\n\n.dont_adjust_6\n #_0AC350: LDX.b #$08\n #_0AC352: JSR WorldMap_CalculateOAMCoordinates\n #_0AC355: BCC .restore_coords_and_exit\n\n #_0AC357: LDA.l $7EF3C7\n #_0AC35B: ASL A\n #_0AC35C: TAX\n\n #_0AC35D: LDA.l WorldMapIcon_tile_spr6+1,X\n #_0AC361: BEQ .is_red_x_6\n\n #_0AC363: STA.b $0D\n\n #_0AC365: LDA.l WorldMapIcon_tile_spr6+0,X\n #_0AC369: STA.b $0C\n\n #_0AC36B: LDA.b #$02\n #_0AC36D: BRA .continue_6\n\n; ---------------------------------------------------------\n\n.is_red_x_6\n #_0AC36F: LDA.b $1A\n\n #_0AC371: LSR A\n #_0AC372: LSR A\n #_0AC373: LSR A\n\n #_0AC374: AND.b #$03\n #_0AC376: TAX\n\n #_0AC377: LDA.l WorldMap_RedXChars,X\n #_0AC37B: STA.b $0D\n\n #_0AC37D: LDA.b #$32\n #_0AC37F: STA.b $0C\n\n #_0AC381: LDA.b #$00\n\n; ---------------------------------------------------------\n\n.continue_6\n #_0AC383: STA.b $0B\n\n #_0AC385: LDX.b #$08\n #_0AC387: JSR WorldMap_HandleSpriteBlink\n\n; ---------------------------------------------------------\n\n.restore_coords_and_exit\n #_0AC38A: PLA\n #_0AC38B: STA.l $7EC10B\n\n #_0AC38F: PLA\n #_0AC390: STA.l $7EC10A\n\n #_0AC394: PLA\n #_0AC395: STA.l $7EC109\n\n #_0AC399: PLA\n #_0AC39A: STA.l $7EC108\n\n #_0AC39E: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_CalculateOAMCoordinates", + "code": "WorldMap_CalculateOAMCoordinates:\n #_0AC39F: LDA.w $0636\n #_0AC3A2: BNE .zoomed_in\n\n; ---------------------------------------------------------\n\n.zoomed_out\n #_0AC3A4: REP #$30\n\n #_0AC3A6: LDA.l $7EC108\n\n #_0AC3AA: LSR A\n #_0AC3AB: LSR A\n #_0AC3AC: LSR A\n #_0AC3AD: LSR A\n\n #_0AC3AE: EOR.w #$FFFF\n #_0AC3B1: INC A\n\n #_0AC3B2: ADC.w $063A\n #_0AC3B5: SEC\n #_0AC3B6: SBC.w #$00C0\n #_0AC3B9: TAX\n\n #_0AC3BA: SEP #$20\n\n #_0AC3BC: LDA.l WorldMap_SpritePositions,X\n #_0AC3C0: STA.b $0F\n\n #_0AC3C2: SEP #$30\n\n #_0AC3C4: XBA\n\n #_0AC3C5: LDA.b #$0D\n #_0AC3C7: JSR WorldMap_MultiplyAxB\n #_0AC3CA: JSR WorldMap_ShiftNibblesRight\n\n #_0AC3CD: STA.b $0F\n\n; ---------------------------------------------------------\n\n #_0AC3CF: REP #$30\n\n #_0AC3D1: LDA.l $7EC10A\n\n #_0AC3D5: LSR A\n #_0AC3D6: LSR A\n #_0AC3D7: LSR A\n #_0AC3D8: LSR A\n\n #_0AC3D9: SEP #$30\n\n #_0AC3DB: SEC\n #_0AC3DC: SBC.b #$80\n #_0AC3DE: PHP\n\n #_0AC3DF: BPL .x_positive_a\n\n #_0AC3E1: EOR.b #$FF\n\n.x_positive_a\n #_0AC3E3: PHA\n\n; ---------------------------------------------------------\n\n #_0AC3E4: LDA.b $0F\n #_0AC3E6: CMP.b #$E0\n #_0AC3E8: BCC .in_range_a\n\n #_0AC3EA: LDA.b #$00\n\n.in_range_a\n #_0AC3EC: XBA\n\n #_0AC3ED: LDA.b #$54\n #_0AC3EF: JSR WorldMap_MultiplyAxB\n\n #_0AC3F2: XBA\n #_0AC3F3: CLC\n #_0AC3F4: ADC.b #$B2\n #_0AC3F6: XBA\n\n #_0AC3F7: PLA\n #_0AC3F8: JSR WorldMap_MultiplyAxB\n\n #_0AC3FB: XBA\n\n #_0AC3FC: PLP\n #_0AC3FD: BCS .in_range_b\n\n #_0AC3FF: STA.b $00\n\n #_0AC401: LDA.b #$80\n #_0AC403: SEC\n #_0AC404: SBC.b $00\n #_0AC406: BRA .continue_a\n\n.in_range_b\n #_0AC408: CLC\n #_0AC409: ADC.b #$80\n\n; ---------------------------------------------------------\n\n.continue_a\n #_0AC40B: SEC\n #_0AC40C: SBC.b $E0\n #_0AC40E: STA.b $0E\n\n #_0AC410: LDA.b $0E\n #_0AC412: CLC\n #_0AC413: ADC.b #$80\n #_0AC415: STA.b $0E\n\n #_0AC417: LDA.b $0F\n #_0AC419: CLC\n #_0AC41A: ADC.b #$0C\n #_0AC41C: STA.b $0F\n\n #_0AC41E: JMP.w .exit_successfully\n\n; ---------------------------------------------------------\n\n.zoomed_in\n #_0AC421: REP #$30\n\n #_0AC423: LDA.l $7EC108\n\n #_0AC427: LSR A\n #_0AC428: LSR A\n #_0AC429: LSR A\n #_0AC42A: LSR A\n\n #_0AC42B: EOR.w #$FFFF\n #_0AC42E: INC A\n\n #_0AC42F: CLC\n #_0AC430: ADC.w $063A\n\n #_0AC433: SEC\n #_0AC434: SBC.w #$0080\n #_0AC437: CMP.w #$0100\n\n #_0AC43A: BCC .y_in_bounds\n\n #_0AC43C: JMP.w .exit_fail\n\n; ---------------------------------------------------------\n\n.y_in_bounds\n #_0AC43F: SEP #$30\n\n #_0AC441: XBA\n\n #_0AC442: LDA.b #$25\n #_0AC444: JSR WorldMap_MultiplyAxB\n #_0AC447: JSR WorldMap_ShiftNibblesRight\n\n #_0AC44A: REP #$10\n\n #_0AC44C: TAX\n #_0AC44D: CPX.w #$014D\n #_0AC450: BCC .x_in_bounds\n\n #_0AC452: JMP.w .exit_fail\n\n.x_in_bounds\n #_0AC455: LDA.l WorldMap_SpritePositions,X\n #_0AC459: STA.b $0F\n\n #_0AC45B: REP #$20\n\n #_0AC45D: LDA.l $7EC10A\n #_0AC461: SEC\n #_0AC462: SBC.w #$07F8\n #_0AC465: PHP\n\n #_0AC466: BPL .x_positive_b\n\n #_0AC468: EOR.w #$FFFF\n #_0AC46B: INC A\n\n.x_positive_b\n #_0AC46C: PHA\n\n; ---------------------------------------------------------\n\n #_0AC46D: SEP #$20\n\n #_0AC46F: LDA.b $0F\n #_0AC471: CMP.b #$E2\n #_0AC473: BCC .in_range_c\n\n #_0AC475: LDA.b #$00\n\n.in_range_c\n #_0AC477: XBA\n\n #_0AC478: LDA.b #$54\n #_0AC47A: JSR WorldMap_MultiplyAxB\n\n #_0AC47D: XBA\n #_0AC47E: CLC\n #_0AC47F: ADC.b #$B2\n #_0AC481: STA.b $00\n\n #_0AC483: XBA\n\n #_0AC484: PLA\n #_0AC485: JSR WorldMap_MultiplyAxB\n\n #_0AC488: XBA\n #_0AC489: STA.b $01\n\n #_0AC48B: PLA\n #_0AC48C: XBA\n\n #_0AC48D: LDA.b $00\n #_0AC48F: JSR WorldMap_MultiplyAxB\n\n #_0AC492: CLC\n #_0AC493: ADC.b $01\n\n #_0AC495: XBA\n #_0AC496: ADC.b #$00\n #_0AC498: XBA\n\n #_0AC499: PLP\n #_0AC49A: BCS .do_addition\n\n.do_subtraction\n #_0AC49C: STA.b $00\n\n #_0AC49E: LDA.w #$0800\n #_0AC4A1: SEC\n #_0AC4A2: SBC.b $00\n\n #_0AC4A4: BRA .continue_b\n\n.do_addition\n #_0AC4A6: CLC\n #_0AC4A7: ADC.w #$0800\n\n; ---------------------------------------------------------\n\n.continue_b\n #_0AC4AA: SEC\n #_0AC4AB: SBC.w #$0800\n #_0AC4AE: BCS .positive_a\n\n #_0AC4B0: EOR.w #$FFFF\n #_0AC4B3: INC A\n\n.positive_a\n #_0AC4B4: SEP #$20\n\n #_0AC4B6: PHP\n\n #_0AC4B7: XBA\n #_0AC4B8: PHA\n\n #_0AC4B9: LDA.b #$2D\n #_0AC4BB: JSR WorldMap_MultiplyAxB\n\n #_0AC4BE: XBA\n #_0AC4BF: STA.b $00\n\n #_0AC4C1: PLA\n #_0AC4C2: XBA\n\n #_0AC4C3: LDA.b #$2D\n #_0AC4C5: JSR WorldMap_MultiplyAxB\n\n #_0AC4C8: CLC\n #_0AC4C9: ADC.b $00\n\n #_0AC4CB: XBA\n #_0AC4CC: ADC.b #$00\n #_0AC4CE: XBA\n\n; ---------------------------------------------------------\n\n #_0AC4CF: PLP\n #_0AC4D0: BCS .in_range_d\n\n #_0AC4D2: STA.b $00\n\n #_0AC4D4: LDA.b #$80\n #_0AC4D6: SEC\n #_0AC4D7: SBC.b $00\n\n #_0AC4D9: XBA\n #_0AC4DA: STA.b $00\n\n #_0AC4DC: LDA.b #$00\n #_0AC4DE: SBC.b $00\n #_0AC4E0: XBA\n\n #_0AC4E1: BRA .continue_c\n\n.in_range_d\n #_0AC4E3: CLC\n #_0AC4E4: ADC.b #$80\n\n #_0AC4E6: XBA\n #_0AC4E7: ADC.b #$00\n\n #_0AC4E9: XBA\n\n; ---------------------------------------------------------\n\n.continue_c\n #_0AC4EA: PHA\n\n #_0AC4EB: SEC\n #_0AC4EC: SBC.b $E0\n #_0AC4EE: STA.b $0E\n\n #_0AC4F0: PLA\n\n; ---------------------------------------------------------\n\n #_0AC4F1: REP #$30\n\n #_0AC4F3: SEC\n #_0AC4F4: SBC.w #$FF80\n\n #_0AC4F7: SEC\n #_0AC4F8: SBC.b $E0\n\n #_0AC4FA: SEP #$30\n\n #_0AC4FC: XBA\n #_0AC4FD: BNE .exit_fail\n\n #_0AC4FF: LDA.b $0E\n #_0AC501: CLC\n #_0AC502: ADC.b #$81\n #_0AC504: STA.b $0E\n\n #_0AC506: LDA.b $0F\n #_0AC508: CLC\n #_0AC509: ADC.b #$10\n #_0AC50B: STA.b $0F\n\n; ---------------------------------------------------------\n\n.exit_successfully\n #_0AC50D: SEP #$30\n #_0AC50F: SEC\n\n #_0AC510: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_HandleSpriteBlink", + "code": "WorldMap_HandleSpriteBlink:\n #_0AC51C: LDA.b $1A\n\n #_0AC51E: LSR A\n #_0AC51F: LSR A\n #_0AC520: LSR A\n #_0AC521: LSR A\n\n #_0AC522: AND.b #$01\n #_0AC524: BNE .dont_show_number\n\n #_0AC526: LDA.b $0D\n #_0AC528: CMP.b #$64\n #_0AC52A: BNE .dont_show_number\n\n; ---------------------------------------------------------\n\n #_0AC52C: LDA.l .crystal_numbers-8,X\n #_0AC530: STA.b $0D\n\n #_0AC532: LDA.b #$32\n #_0AC534: STA.b $0C\n\n #_0AC536: STZ.w $0A20,X\n\n #_0AC539: TXA\n #_0AC53A: ASL A\n #_0AC53B: ASL A\n #_0AC53C: TAX\n\n #_0AC53D: LDA.b $0E\n #_0AC53F: STA.w $0800,X\n\n #_0AC542: LDA.b $0F\n #_0AC544: STA.w $0801,X\n\n #_0AC547: BRA .continue\n\n; ---------------------------------------------------------\n\n.dont_show_number\n #_0AC549: LDA.b $0B\n #_0AC54B: STA.w $0A20,X\n\n #_0AC54E: TXA\n #_0AC54F: ASL A\n #_0AC550: ASL A\n #_0AC551: TAX\n\n #_0AC552: LDA.b $0E\n #_0AC554: SEC\n #_0AC555: SBC.b #$04\n #_0AC557: STA.w $0800,X\n\n #_0AC55A: LDA.b $0F\n #_0AC55C: SEC\n #_0AC55D: SBC.b #$04\n #_0AC55F: STA.w $0801,X\n\n; ---------------------------------------------------------\n\n.continue\n #_0AC562: LDA.b $0D\n #_0AC564: STA.w $0802,X\n\n #_0AC567: LDA.b $0C\n #_0AC569: STA.w $0803,X\n\n #_0AC56C: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_MultiplyAxB", + "code": "WorldMap_MultiplyAxB:\n #_0AC56D: STA.w WRMPYA\n #_0AC570: XBA\n #_0AC571: STA.w WRMPYB\n\n #_0AC574: NOP\n #_0AC575: NOP\n #_0AC576: NOP\n #_0AC577: NOP\n\n #_0AC578: LDA.w RDMPYH\n #_0AC57B: XBA\n #_0AC57C: LDA.w RDMPYL\n\n #_0AC57F: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_ShiftNibblesRight", + "code": "WorldMap_ShiftNibblesRight:\n #_0AC580: REP #$30\n\n #_0AC582: LSR A\n #_0AC583: LSR A\n #_0AC584: LSR A\n #_0AC585: LSR A\n\n #_0AC586: SEP #$30\n\n #_0AC588: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapIcon_AdjustCoordinate", + "code": "WorldMapIcon_AdjustCoordinate:\n #_0AC589: REP #$20\n\n #_0AC58B: LDA.l $7EC10A\n #_0AC58F: SEC\n #_0AC590: SBC.w #$0004\n #_0AC593: STA.l $7EC10A\n\n #_0AC597: LDA.l $7EC108\n #_0AC59B: SEC\n #_0AC59C: SBC.w #$0004\n #_0AC59F: STA.l $7EC108\n\n #_0AC5A3: SEP #$20\n\n #_0AC5A5: RTS", + "file": "bank_0A.asm" + }, + { + "name": "OverworldMap_CheckForPendant", + "code": "OverworldMap_CheckForPendant:\n #_0AC5A9: LDA.l $7EF3C7\n #_0AC5AD: CMP.b #$03\n #_0AC5AF: BNE OverworldMap_PrizeCheckFail\n\n #_0AC5B1: LDA.l $7EF374\n #_0AC5B5: AND.l .bit,X\n #_0AC5B9: BEQ OverworldMap_PrizeCheckFail\n\n #_0AC5BB: SEC\n\n #_0AC5BC: RTS", + "file": "bank_0A.asm" + }, + { + "name": "OverworldMap_PrizeCheckFail", + "code": "OverworldMap_PrizeCheckFail:\n #_0AC5BD: CLC\n\n #_0AC5BE: RTS", + "file": "bank_0A.asm" + }, + { + "name": "OverworldMap_CheckForCrystal", + "code": "OverworldMap_CheckForCrystal:\n #_0AC5C6: LDA.l $7EF3C7\n #_0AC5CA: CMP.b #$07\n #_0AC5CC: BNE OverworldMap_PrizeCheckFail\n\n #_0AC5CE: LDA.l $7EF37A\n #_0AC5D2: AND.l .bit,X\n #_0AC5D6: BEQ OverworldMap_PrizeCheckFail\n\n #_0AC5D8: SEC\n\n #_0AC5D9: RTS", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_SpritePositions", + "code": "WorldMap_SpritePositions:\n #_0AC5DA: db $E0, $E0, $E0, $E0, $E0, $E0, $E0, $E0\n #_0AC5E2: db $E0, $E0, $E0, $E0, $E0, $E0, $E0, $DF\n #_0AC5EA: db $DE, $DD, $DC, $DB, $DA, $D8, $D7, $D6\n #_0AC5F2: db $D5, $D4, $D3, $D2, $D1, $D0, $CF, $CE\n #_0AC5FA: db $CD, $CC, $CB, $CA, $C9, $C7, $C6, $C5\n #_0AC602: db $C4, $C3, $C2, $C1, $C0, $BF, $BE, $BD\n #_0AC60A: db $BC, $BB, $BA, $B9, $B8, $B7, $B6, $B5\n #_0AC612: db $B4, $B3, $B2, $B1, $B0, $AF, $AE, $AD\n #_0AC61A: db $AC, $AB, $AA, $A9, $A8, $A7, $A6, $A5\n #_0AC622: db $A4, $A3, $A2, $A1, $A0, $9F, $9E, $9D\n #_0AC62A: db $9C, $9B, $9B, $9A, $99, $98, $97, $96\n #_0AC632: db $95, $94, $93, $92, $91, $90, $8F, $8E\n #_0AC63A: db $8D, $8C, $8B, $8B, $8A, $89, $88, $87\n #_0AC642: db $86, $85, $84, $83, $82, $81, $81, $80\n #_0AC64A: db $7F, $7E, $7D, $7C, $7B, $7A, $79, $79\n #_0AC652: db $78, $77, $76, $75, $74, $73, $72, $72\n #_0AC65A: db $71, $70, $6F, $6E, $6D, $6C, $6C, $6B\n #_0AC662: db $6A, $69, $68, $67, $67, $66, $65, $64\n #_0AC66A: db $63, $62, $62, $61, $60, $5F, $5E, $5D\n #_0AC672: db $5D, $5C, $5B, $5A, $59, $59, $58, $57\n #_0AC67A: db $56, $55, $55, $54, $53, $52, $51, $51\n #_0AC682: db $50, $4F, $4E, $4E, $4D, $4C, $4B, $4A\n #_0AC68A: db $4A, $49, $48, $47, $47, $46, $45, $44\n #_0AC692: db $44, $43, $42, $41, $41, $40, $3F, $3E\n #_0AC69A: db $3E, $3D, $3C, $3C, $3B, $3A, $39, $39\n #_0AC6A2: db $38, $37, $36, $36, $35, $34, $34, $33\n #_0AC6AA: db $32, $32, $31, $30, $2F, $2F, $2E, $2D\n #_0AC6B2: db $2D, $2C, $2B, $2B, $2A, $29, $29, $28\n #_0AC6BA: db $27, $27, $26, $25, $25, $24, $23, $23\n #_0AC6C2: db $22, $21, $21, $20, $1F, $1F, $1E, $1D\n #_0AC6CA: db $1D, $1C, $1C, $1B, $1A, $1A, $19, $18\n #_0AC6D2: db $18, $17, $17, $16, $15, $15, $14, $14\n #_0AC6DA: db $13, $12, $12, $11, $10, $10, $0F, $0F\n #_0AC6E2: db $0E, $0E, $0D, $0C, $0C, $0B, $0B, $0A\n #_0AC6EA: db $09, $09, $08, $08, $07, $07, $06, $05\n #_0AC6F2: db $05, $04, $04, $03, $03, $02, $01, $01\n #_0AC6FA: db $00, $00, $00, $00, $FF, $FE, $FE, $FD\n #_0AC702: db $FC, $FC, $FB, $FB, $FA, $F9, $F9, $F8\n #_0AC70A: db $F7, $F7, $F6, $F5, $F4, $F4, $F3, $F2\n #_0AC712: db $F2, $F1, $F0, $EF, $EE, $EE, $ED, $EC\n #_0AC71A: db $EB, $EA, $E9, $E8, $E8, $E7, $E6, $E5\n #_0AC722: db $E4, $E3, $E2, $E1, $E0\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_LightWorldTilemap", + "code": "WorldMap_LightWorldTilemap:\n #_0AC727: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 00, Strip 0\n #_0AC72F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 00, Strip 1\n #_0AC737: db $28, $28, $28, $28, $28, $2C, $09, $08 ; Quadrant 0, Row 00, Strip 2\n #_0AC73F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 00, Strip 3\n #_0AC747: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 0, Row 01, Strip 0\n #_0AC74F: db $29, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 01, Strip 1\n #_0AC757: db $28, $28, $28, $28, $28, $28, $2A, $28 ; Quadrant 0, Row 01, Strip 2\n #_0AC75F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 01, Strip 3\n #_0AC767: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 02, Strip 0\n #_0AC76F: db $2C, $09, $08, $09, $28, $28, $28, $28 ; Quadrant 0, Row 02, Strip 1\n #_0AC777: db $28, $28, $28, $28, $28, $08, $29, $28 ; Quadrant 0, Row 02, Strip 2\n #_0AC77F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 02, Strip 3\n #_0AC787: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 03, Strip 0\n #_0AC78F: db $28, $2C, $2D, $2C, $09, $28, $28, $28 ; Quadrant 0, Row 03, Strip 1\n #_0AC797: db $28, $28, $28, $28, $08, $28, $2C, $09 ; Quadrant 0, Row 03, Strip 2\n #_0AC79F: db $08, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 0, Row 03, Strip 3\n #_0AC7A7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 04, Strip 0\n #_0AC7AF: db $28, $28, $2C, $28, $2B, $09, $28, $28 ; Quadrant 0, Row 04, Strip 1\n #_0AC7B7: db $28, $28, $28, $08, $28, $28, $28, $2A ; Quadrant 0, Row 04, Strip 2\n #_0AC7BF: db $28, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 0, Row 04, Strip 3\n #_0AC7C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 05, Strip 0\n #_0AC7CF: db $28, $28, $28, $28, $2B, $2A, $28, $28 ; Quadrant 0, Row 05, Strip 1\n #_0AC7D7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 05, Strip 2\n #_0AC7DF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 05, Strip 3\n #_0AC7E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 06, Strip 0\n #_0AC7EF: db $28, $29, $28, $28, $2A, $28, $28, $28 ; Quadrant 0, Row 06, Strip 1\n #_0AC7F7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 06, Strip 2\n #_0AC7FF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 06, Strip 3\n #_0AC807: db $28, $28, $08, $29, $28, $28, $28, $28 ; Quadrant 0, Row 07, Strip 0\n #_0AC80F: db $28, $2C, $29, $28, $28, $28, $28, $28 ; Quadrant 0, Row 07, Strip 1\n #_0AC817: db $28, $08, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 07, Strip 2\n #_0AC81F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 07, Strip 3\n #_0AC827: db $28, $08, $28, $2C, $09, $08, $28, $28 ; Quadrant 0, Row 08, Strip 0\n #_0AC82F: db $28, $28, $2B, $09, $08, $29, $08, $29 ; Quadrant 0, Row 08, Strip 1\n #_0AC837: db $08, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 08, Strip 2\n #_0AC83F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 08, Strip 3\n #_0AC847: db $08, $28, $28, $28, $2A, $28, $28, $28 ; Quadrant 0, Row 09, Strip 0\n #_0AC84F: db $28, $28, $2B, $2E, $2D, $2C, $2D, $2C ; Quadrant 0, Row 09, Strip 1\n #_0AC857: db $2D, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 09, Strip 2\n #_0AC85F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 09, Strip 3\n #_0AC867: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0A, Strip 0\n #_0AC86F: db $28, $28, $2C, $2C, $2C, $28, $2C, $28 ; Quadrant 0, Row 0A, Strip 1\n #_0AC877: db $2C, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0A, Strip 2\n #_0AC87F: db $28, $28, $28, $28, $08, $29, $28, $2F ; Quadrant 0, Row 0A, Strip 3\n #_0AC887: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0B, Strip 0\n #_0AC88F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0B, Strip 1\n #_0AC897: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0B, Strip 2\n #_0AC89F: db $28, $08, $09, $08, $28, $2C, $09, $1B ; Quadrant 0, Row 0B, Strip 3\n #_0AC8A7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0C, Strip 0\n #_0AC8AF: db $28, $28, $28, $29, $28, $28, $28, $28 ; Quadrant 0, Row 0C, Strip 1\n #_0AC8B7: db $28, $2F, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0C, Strip 2\n #_0AC8BF: db $08, $28, $2C, $2D, $28, $28, $2B, $19 ; Quadrant 0, Row 0C, Strip 3\n #_0AC8C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0D, Strip 0\n #_0AC8CF: db $28, $28, $28, $2C, $29, $28, $2F, $28 ; Quadrant 0, Row 0D, Strip 1\n #_0AC8D7: db $2F, $1B, $1A, $28, $2F, $28, $2F, $08 ; Quadrant 0, Row 0D, Strip 2\n #_0AC8DF: db $28, $28, $28, $2C, $28, $28, $2C, $2E ; Quadrant 0, Row 0D, Strip 3\n #_0AC8E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0E, Strip 0\n #_0AC8EF: db $28, $28, $28, $28, $2C, $38, $1B, $1C ; Quadrant 0, Row 0E, Strip 1\n #_0AC8F7: db $1D, $1F, $1E, $1A, $1B, $1C, $1D, $1A ; Quadrant 0, Row 0E, Strip 2\n #_0AC8FF: db $28, $2F, $28, $2F, $28, $28, $28, $2B ; Quadrant 0, Row 0E, Strip 3\n #_0AC907: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 0F, Strip 0\n #_0AC90F: db $28, $28, $28, $28, $28, $2E, $19, $1E ; Quadrant 0, Row 0F, Strip 1\n #_0AC917: db $1F, $14, $14, $1E, $1F, $1E, $1F, $1E ; Quadrant 0, Row 0F, Strip 2\n #_0AC91F: db $1A, $1B, $3B, $3C, $3B, $28, $28, $28 ; Quadrant 0, Row 0F, Strip 3\n #_0AC927: db $28, $28, $28, $28, $08, $29, $08, $29 ; Quadrant 0, Row 10, Strip 0\n #_0AC92F: db $28, $28, $28, $28, $28, $2B, $2E, $0B ; Quadrant 0, Row 10, Strip 1\n #_0AC937: db $26, $27, $14, $14, $14, $A5, $14, $26 ; Quadrant 0, Row 10, Strip 2\n #_0AC93F: db $24, $25, $56, $35, $5B, $73, $74, $28 ; Quadrant 0, Row 10, Strip 3\n #_0AC947: db $28, $28, $28, $08, $28, $2C, $28, $2B ; Quadrant 0, Row 11, Strip 0\n #_0AC94F: db $09, $08, $29, $28, $28, $2C, $2E, $1B ; Quadrant 0, Row 11, Strip 1\n #_0AC957: db $36, $37, $14, $14, $14, $14, $14, $15 ; Quadrant 0, Row 11, Strip 2\n #_0AC95F: db $34, $A7, $64, $5B, $90, $73, $73, $52 ; Quadrant 0, Row 11, Strip 3\n #_0AC967: db $28, $28, $28, $28, $28, $28, $28, $2C ; Quadrant 0, Row 12, Strip 0\n #_0AC96F: db $2E, $2D, $2C, $09, $28, $2F, $1B, $1F ; Quadrant 0, Row 12, Strip 1\n #_0AC977: db $14, $14, $14, $14, $14, $14, $14, $15 ; Quadrant 0, Row 12, Strip 2\n #_0AC97F: db $A7, $34, $E4, $90, $82, $83, $83, $83 ; Quadrant 0, Row 12, Strip 3\n #_0AC987: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 13, Strip 0\n #_0AC98F: db $2C, $2E, $2D, $2A, $29, $2C, $19, $14 ; Quadrant 0, Row 13, Strip 1\n #_0AC997: db $A5, $14, $14, $14, $A5, $14, $14, $15 ; Quadrant 0, Row 13, Strip 2\n #_0AC99F: db $A7, $B6, $DF, $82, $B2, $93, $D6, $D6 ; Quadrant 0, Row 13, Strip 3\n #_0AC9A7: db $09, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 14, Strip 0\n #_0AC9AF: db $28, $2C, $2A, $28, $2C, $09, $1B, $14 ; Quadrant 0, Row 14, Strip 1\n #_0AC9B7: db $14, $A5, $14, $14, $14, $14, $14, $15 ; Quadrant 0, Row 14, Strip 2\n #_0AC9BF: db $34, $A7, $82, $B2, $D6, $93, $93, $93 ; Quadrant 0, Row 14, Strip 3\n #_0AC9C7: db $2B, $09, $08, $29, $28, $28, $28, $28 ; Quadrant 0, Row 15, Strip 0\n #_0AC9CF: db $28, $28, $28, $28, $28, $2B, $19, $14 ; Quadrant 0, Row 15, Strip 1\n #_0AC9D7: db $14, $14, $14, $14, $A5, $14, $A5, $36 ; Quadrant 0, Row 15, Strip 2\n #_0AC9DF: db $05, $34, $B0, $D6, $D6, $82, $83, $83 ; Quadrant 0, Row 15, Strip 3\n #_0AC9E7: db $2C, $2A, $28, $2B, $2D, $28, $28, $28 ; Quadrant 0, Row 16, Strip 0\n #_0AC9EF: db $28, $28, $28, $28, $28, $2C, $2B, $0B ; Quadrant 0, Row 16, Strip 1\n #_0AC9F7: db $A5, $14, $14, $A5, $14, $A5, $14, $14 ; Quadrant 0, Row 16, Strip 2\n #_0AC9FF: db $15, $33, $33, $33, $90, $B2, $D6, $93 ; Quadrant 0, Row 16, Strip 3\n #_0ACA07: db $28, $28, $28, $2C, $2E, $2D, $08, $28 ; Quadrant 0, Row 17, Strip 0\n #_0ACA0F: db $28, $28, $28, $28, $28, $28, $2F, $1B ; Quadrant 0, Row 17, Strip 1\n #_0ACA17: db $14, $14, $A5, $A5, $14, $14, $14, $A5 ; Quadrant 0, Row 17, Strip 2\n #_0ACA1F: db $15, $A6, $FB, $34, $82, $83, $83, $83 ; Quadrant 0, Row 17, Strip 3\n #_0ACA27: db $28, $28, $28, $28, $2C, $2A, $28, $28 ; Quadrant 0, Row 18, Strip 0\n #_0ACA2F: db $28, $28, $08, $29, $08, $29, $1B, $1F ; Quadrant 0, Row 18, Strip 1\n #_0ACA37: db $26, $27, $26, $27, $26, $24, $24, $D5 ; Quadrant 0, Row 18, Strip 2\n #_0ACA3F: db $25, $34, $34, $34, $B0, $93, $71, $93 ; Quadrant 0, Row 18, Strip 3\n #_0ACA47: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 19, Strip 0\n #_0ACA4F: db $28, $2F, $28, $2C, $28, $2C, $19, $14 ; Quadrant 0, Row 19, Strip 1\n #_0ACA57: db $15, $13, $15, $13, $15, $33, $40, $41 ; Quadrant 0, Row 19, Strip 2\n #_0ACA5F: db $33, $BF, $34, $34, $30, $23, $81, $23 ; Quadrant 0, Row 19, Strip 3\n #_0ACA67: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 0, Row 1A, Strip 0\n #_0ACA6F: db $2F, $1B, $1A, $28, $28, $2F, $1B, $14 ; Quadrant 0, Row 1A, Strip 1\n #_0ACA77: db $15, $13, $15, $13, $15, $BC, $BD, $A6 ; Quadrant 0, Row 1A, Strip 2\n #_0ACA7F: db $A7, $34, $41, $33, $40, $34, $C0, $34 ; Quadrant 0, Row 1A, Strip 3\n #_0ACA87: db $29, $28, $28, $28, $28, $08, $2D, $28 ; Quadrant 0, Row 1B, Strip 0\n #_0ACA8F: db $28, $19, $0A, $28, $2F, $1B, $1F, $14 ; Quadrant 0, Row 1B, Strip 1\n #_0ACA97: db $15, $13, $15, $13, $36, $05, $D0, $D0 ; Quadrant 0, Row 1B, Strip 2\n #_0ACA9F: db $D0, $D0, $D0, $D0, $D0, $D0, $C3, $D0 ; Quadrant 0, Row 1B, Strip 3\n #_0ACAA7: db $2C, $09, $28, $28, $08, $28, $2B, $2D ; Quadrant 0, Row 1C, Strip 0\n #_0ACAAF: db $28, $2C, $28, $2F, $1B, $1F, $14, $14 ; Quadrant 0, Row 1C, Strip 1\n #_0ACAB7: db $15, $23, $25, $23, $24, $25, $C0, $A6 ; Quadrant 0, Row 1C, Strip 2\n #_0ACABF: db $FB, $A7, $A6, $00, $6A, $3D, $6E, $8B ; Quadrant 0, Row 1C, Strip 3\n #_0ACAC7: db $28, $2C, $09, $08, $28, $28, $2C, $2E ; Quadrant 0, Row 1D, Strip 0\n #_0ACACF: db $2D, $08, $29, $1B, $1F, $A5, $14, $26 ; Quadrant 0, Row 1D, Strip 1\n #_0ACAD7: db $25, $31, $B6, $E4, $FD, $FE, $C0, $10 ; Quadrant 0, Row 1D, Strip 2\n #_0ACADF: db $12, $A6, $FB, $10, $12, $4D, $7E, $9B ; Quadrant 0, Row 1D, Strip 3\n #_0ACAE7: db $28, $28, $2A, $29, $28, $28, $28, $2C ; Quadrant 0, Row 1E, Strip 0\n #_0ACAEF: db $2A, $28, $2C, $19, $14, $14, $A5, $15 ; Quadrant 0, Row 1E, Strip 1\n #_0ACAF7: db $34, $41, $33, $33, $33, $33, $C0, $10 ; Quadrant 0, Row 1E, Strip 2\n #_0ACAFF: db $12, $A7, $FB, $20, $22, $CD, $A7, $3E ; Quadrant 0, Row 1E, Strip 3\n #_0ACB07: db $28, $28, $28, $2C, $2D, $28, $28, $28 ; Quadrant 0, Row 1F, Strip 0\n #_0ACB0F: db $28, $28, $28, $2B, $0B, $A5, $14, $15 ; Quadrant 0, Row 1F, Strip 1\n #_0ACB17: db $34, $F6, $89, $6B, $6C, $89, $F6, $10 ; Quadrant 0, Row 1F, Strip 2\n #_0ACB1F: db $12, $FB, $FB, $00, $02, $CD, $34, $3E ; Quadrant 0, Row 1F, Strip 3\n\n; ---------------------------------------------------------\n\n #_0ACB27: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 00, Strip 0\n #_0ACB2F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 00, Strip 1\n #_0ACB37: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 00, Strip 2\n #_0ACB3F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 00, Strip 3\n #_0ACB47: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 01, Strip 0\n #_0ACB4F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 01, Strip 1\n #_0ACB57: db $28, $28, $28, $28, $08, $29, $28, $28 ; Quadrant 1, Row 01, Strip 2\n #_0ACB5F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 01, Strip 3\n #_0ACB67: db $28, $28, $08, $28, $08, $29, $28, $28 ; Quadrant 1, Row 02, Strip 0\n #_0ACB6F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 02, Strip 1\n #_0ACB77: db $28, $28, $28, $08, $28, $2C, $09, $28 ; Quadrant 1, Row 02, Strip 2\n #_0ACB7F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 02, Strip 3\n #_0ACB87: db $09, $08, $28, $08, $28, $2C, $09, $28 ; Quadrant 1, Row 03, Strip 0\n #_0ACB8F: db $28, $28, $28, $28, $28, $29, $08, $29 ; Quadrant 1, Row 03, Strip 1\n #_0ACB97: db $08, $29, $08, $28, $28, $28, $2B, $09 ; Quadrant 1, Row 03, Strip 2\n #_0ACB9F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 03, Strip 3\n #_0ACBA7: db $2C, $2D, $28, $28, $28, $28, $2B, $09 ; Quadrant 1, Row 04, Strip 0\n #_0ACBAF: db $28, $28, $08, $28, $28, $2C, $2D, $2C ; Quadrant 1, Row 04, Strip 1\n #_0ACBB7: db $2D, $2C, $2D, $28, $28, $28, $2C, $2E ; Quadrant 1, Row 04, Strip 2\n #_0ACBBF: db $09, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 04, Strip 3\n #_0ACBC7: db $28, $2C, $28, $28, $28, $28, $2C, $2E ; Quadrant 1, Row 05, Strip 0\n #_0ACBCF: db $09, $08, $28, $28, $28, $28, $2C, $28 ; Quadrant 1, Row 05, Strip 1\n #_0ACBD7: db $2C, $28, $2C, $28, $28, $28, $28, $2B ; Quadrant 1, Row 05, Strip 2\n #_0ACBDF: db $2A, $29, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 05, Strip 3\n #_0ACBE7: db $28, $28, $28, $28, $28, $28, $28, $2B ; Quadrant 1, Row 06, Strip 0\n #_0ACBEF: db $2A, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 06, Strip 1\n #_0ACBF7: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 1, Row 06, Strip 2\n #_0ACBFF: db $09, $2C, $09, $28, $28, $28, $28, $28 ; Quadrant 1, Row 06, Strip 3\n #_0ACC07: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 1, Row 07, Strip 0\n #_0ACC0F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 07, Strip 1\n #_0ACC17: db $28, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 1, Row 07, Strip 2\n #_0ACC1F: db $2C, $28, $2B, $09, $28, $28, $28, $28 ; Quadrant 1, Row 07, Strip 3\n #_0ACC27: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 08, Strip 0\n #_0ACC2F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 08, Strip 1\n #_0ACC37: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 08, Strip 2\n #_0ACC3F: db $28, $28, $2C, $2E, $2D, $28, $28, $28 ; Quadrant 1, Row 08, Strip 3\n #_0ACC47: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 09, Strip 0\n #_0ACC4F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 09, Strip 1\n #_0ACC57: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 09, Strip 2\n #_0ACC5F: db $28, $28, $28, $2B, $2A, $2D, $28, $28 ; Quadrant 1, Row 09, Strip 3\n #_0ACC67: db $28, $28, $28, $28, $28, $28, $2F, $28 ; Quadrant 1, Row 0A, Strip 0\n #_0ACC6F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0A, Strip 1\n #_0ACC77: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0A, Strip 2\n #_0ACC7F: db $28, $28, $28, $2A, $28, $2C, $28, $28 ; Quadrant 1, Row 0A, Strip 3\n #_0ACC87: db $1A, $28, $08, $29, $08, $29, $1B, $1A ; Quadrant 1, Row 0B, Strip 0\n #_0ACC8F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0B, Strip 1\n #_0ACC97: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0B, Strip 2\n #_0ACC9F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0B, Strip 3\n #_0ACCA7: db $0A, $08, $2D, $2C, $2D, $1B, $1F, $0A ; Quadrant 1, Row 0C, Strip 0\n #_0ACCAF: db $28, $28, $28, $2F, $28, $28, $28, $28 ; Quadrant 1, Row 0C, Strip 1\n #_0ACCB7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0C, Strip 2\n #_0ACCBF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0C, Strip 3\n #_0ACCC7: db $2D, $28, $2C, $28, $2C, $19, $0A, $28 ; Quadrant 1, Row 0D, Strip 0\n #_0ACCCF: db $28, $28, $2F, $1B, $1A, $28, $28, $28 ; Quadrant 1, Row 0D, Strip 1\n #_0ACCD7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0D, Strip 2\n #_0ACCDF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0D, Strip 3\n #_0ACCE7: db $2E, $28, $08, $29, $28, $2C, $2D, $28 ; Quadrant 1, Row 0E, Strip 0\n #_0ACCEF: db $28, $28, $2C, $19, $0A, $28, $28, $28 ; Quadrant 1, Row 0E, Strip 1\n #_0ACCF7: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 1, Row 0E, Strip 2\n #_0ACCFF: db $29, $08, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0E, Strip 3\n #_0ACD07: db $2C, $98, $42, $2C, $09, $28, $2C, $28 ; Quadrant 1, Row 0F, Strip 0\n #_0ACD0F: db $28, $08, $29, $2C, $28, $28, $28, $28 ; Quadrant 1, Row 0F, Strip 1\n #_0ACD17: db $28, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 1, Row 0F, Strip 2\n #_0ACD1F: db $2C, $2D, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 0F, Strip 3\n #_0ACD27: db $72, $99, $63, $73, $73, $74, $2C, $72 ; Quadrant 1, Row 10, Strip 0\n #_0ACD2F: db $73, $73, $73, $A1, $A0, $73, $73, $74 ; Quadrant 1, Row 10, Strip 1\n #_0ACD37: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 10, Strip 2\n #_0ACD3F: db $28, $2C, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 10, Strip 3\n #_0ACD47: db $52, $9A, $70, $A0, $73, $91, $09, $90 ; Quadrant 1, Row 11, Strip 0\n #_0ACD4F: db $73, $73, $A1, $84, $90, $73, $73, $91 ; Quadrant 1, Row 11, Strip 1\n #_0ACD57: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 11, Strip 2\n #_0ACD5F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 11, Strip 3\n #_0ACD67: db $83, $83, $84, $82, $83, $52, $52, $83 ; Quadrant 1, Row 12, Strip 0\n #_0ACD6F: db $83, $83, $84, $B3, $90, $A1, $83, $84 ; Quadrant 1, Row 12, Strip 1\n #_0ACD77: db $3B, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 12, Strip 2\n #_0ACD7F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 12, Strip 3\n #_0ACD87: db $93, $93, $94, $92, $93, $94, $72, $93 ; Quadrant 1, Row 13, Strip 0\n #_0ACD8F: db $93, $93, $B3, $A1, $82, $84, $93, $A2 ; Quadrant 1, Row 13, Strip 1\n #_0ACD97: db $4A, $3B, $08, $28, $28, $28, $28, $28 ; Quadrant 1, Row 13, Strip 2\n #_0ACD9F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 13, Strip 3\n #_0ACDA7: db $D6, $93, $94, $92, $93, $94, $82, $93 ; Quadrant 1, Row 14, Strip 0\n #_0ACDAF: db $82, $83, $83, $84, $B4, $94, $06, $54 ; Quadrant 1, Row 14, Strip 1\n #_0ACDB7: db $35, $4C, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 14, Strip 2\n #_0ACDBF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 14, Strip 3\n #_0ACDC7: db $83, $84, $B3, $B2, $93, $94, $B4, $90 ; Quadrant 1, Row 15, Strip 0\n #_0ACDCF: db $B2, $93, $93, $B3, $CA, $B7, $95, $54 ; Quadrant 1, Row 15, Strip 1\n #_0ACDD7: db $48, $3B, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 15, Strip 2\n #_0ACDDF: db $28, $28, $28, $28, $08, $29, $28, $28 ; Quadrant 1, Row 15, Strip 3\n #_0ACDE7: db $93, $B3, $73, $A1, $83, $52, $62, $90 ; Quadrant 1, Row 16, Strip 0\n #_0ACDEF: db $73, $73, $73, $91, $9F, $06, $22, $54 ; Quadrant 1, Row 16, Strip 1\n #_0ACDF7: db $5C, $4A, $3B, $28, $28, $28, $28, $28 ; Quadrant 1, Row 16, Strip 2\n #_0ACDFF: db $28, $28, $28, $08, $28, $2C, $09, $08 ; Quadrant 1, Row 16, Strip 3\n #_0ACE07: db $83, $83, $83, $84, $93, $94, $CA, $82 ; Quadrant 1, Row 17, Strip 0\n #_0ACE0F: db $83, $83, $83, $84, $A9, $16, $02, $54 ; Quadrant 1, Row 17, Strip 1\n #_0ACE17: db $58, $56, $4A, $3B, $08, $28, $28, $28 ; Quadrant 1, Row 17, Strip 2\n #_0ACE1F: db $28, $28, $08, $28, $28, $28, $2B, $2D ; Quadrant 1, Row 17, Strip 3\n #_0ACE27: db $93, $93, $93, $A4, $93, $A4, $CA, $B4 ; Quadrant 1, Row 18, Strip 0\n #_0ACE2F: db $93, $93, $93, $B7, $11, $11, $12, $54 ; Quadrant 1, Row 18, Strip 1\n #_0ACE37: db $35, $58, $56, $4C, $29, $28, $28, $28 ; Quadrant 1, Row 18, Strip 2\n #_0ACE3F: db $28, $28, $28, $28, $28, $28, $2C, $2E ; Quadrant 1, Row 18, Strip 3\n #_0ACE47: db $24, $24, $24, $25, $00, $85, $06, $21 ; Quadrant 1, Row 19, Strip 0\n #_0ACE4F: db $21, $21, $21, $21, $21, $21, $22, $54 ; Quadrant 1, Row 19, Strip 1\n #_0ACE57: db $39, $3A, $39, $28, $2C, $2D, $28, $28 ; Quadrant 1, Row 19, Strip 2\n #_0ACE5F: db $28, $28, $28, $28, $28, $28, $28, $2C ; Quadrant 1, Row 19, Strip 3\n #_0ACE67: db $B6, $80, $80, $B6, $20, $07, $95, $A6 ; Quadrant 1, Row 1A, Strip 0\n #_0ACE6F: db $A6, $F6, $A7, $44, $45, $41, $31, $54 ; Quadrant 1, Row 1A, Strip 1\n #_0ACE77: db $3B, $28, $28, $28, $28, $2C, $28, $28 ; Quadrant 1, Row 1A, Strip 2\n #_0ACE7F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1A, Strip 3\n #_0ACE87: db $D0, $D0, $D0, $D0, $D0, $10, $06, $77 ; Quadrant 1, Row 1B, Strip 0\n #_0ACE8F: db $7B, $7B, $7B, $43, $7A, $7B, $8D, $8E ; Quadrant 1, Row 1B, Strip 1\n #_0ACE97: db $4A, $3B, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1B, Strip 2\n #_0ACE9F: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 1, Row 1B, Strip 3\n #_0ACEA7: db $8C, $6E, $3F, $8A, $02, $10, $12, $54 ; Quadrant 1, Row 1C, Strip 0\n #_0ACEAF: db $57, $9D, $9D, $9D, $9D, $9D, $C8, $C9 ; Quadrant 1, Row 1C, Strip 1\n #_0ACEB7: db $35, $4C, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1C, Strip 2\n #_0ACEBF: db $28, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 1, Row 1C, Strip 3\n #_0ACEC7: db $9C, $7E, $4F, $10, $12, $10, $12, $54 ; Quadrant 1, Row 1D, Strip 0\n #_0ACECF: db $C7, $57, $56, $48, $35, $89, $89, $5C ; Quadrant 1, Row 1D, Strip 1\n #_0ACED7: db $35, $3B, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1D, Strip 2\n #_0ACEDF: db $28, $28, $28, $28, $28, $08, $28, $28 ; Quadrant 1, Row 1D, Strip 3\n #_0ACEE7: db $5E, $A7, $CE, $10, $12, $52, $52, $54 ; Quadrant 1, Row 1E, Strip 0\n #_0ACEEF: db $C7, $EE, $EF, $58, $9D, $9D, $9D, $5C ; Quadrant 1, Row 1E, Strip 1\n #_0ACEF7: db $48, $4A, $3B, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1E, Strip 2\n #_0ACEFF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1E, Strip 3\n #_0ACF07: db $5E, $34, $CE, $10, $F3, $F4, $22, $54 ; Quadrant 1, Row 1F, Strip 0\n #_0ACF0F: db $C7, $89, $49, $56, $57, $9D, $56, $5C ; Quadrant 1, Row 1F, Strip 1\n #_0ACF17: db $5C, $35, $4C, $28, $29, $28, $28, $28 ; Quadrant 1, Row 1F, Strip 2\n #_0ACF1F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 1, Row 1F, Strip 3\n\n; ---------------------------------------------------------\n\n #_0ACF27: db $28, $28, $28, $28, $2B, $2D, $28, $28 ; Quadrant 2, Row 00, Strip 0\n #_0ACF2F: db $28, $28, $28, $2C, $2A, $0B, $14, $15 ; Quadrant 2, Row 00, Strip 1\n #_0ACF37: db $34, $B6, $34, $3E, $5E, $88, $88, $10 ; Quadrant 2, Row 00, Strip 2\n #_0ACF3F: db $12, $FB, $A6, $10, $12, $CD, $34, $3E ; Quadrant 2, Row 00, Strip 3\n #_0ACF47: db $28, $28, $28, $28, $2C, $2E, $2D, $08 ; Quadrant 2, Row 01, Strip 0\n #_0ACF4F: db $09, $28, $28, $28, $2F, $2A, $0B, $15 ; Quadrant 2, Row 01, Strip 1\n #_0ACF57: db $88, $88, $BC, $BD, $BC, $BD, $F6, $10 ; Quadrant 2, Row 01, Strip 2\n #_0ACF5F: db $12, $BC, $BD, $10, $12, $5D, $4E, $7D ; Quadrant 2, Row 01, Strip 3\n #_0ACF67: db $28, $28, $28, $28, $28, $2C, $2A, $28 ; Quadrant 2, Row 02, Strip 0\n #_0ACF6F: db $2B, $09, $28, $28, $28, $2F, $1B, $25 ; Quadrant 2, Row 02, Strip 1\n #_0ACF77: db $34, $A7, $34, $34, $34, $34, $A7, $20 ; Quadrant 2, Row 02, Strip 2\n #_0ACF7F: db $22, $33, $33, $10, $16, $01, $01, $50 ; Quadrant 2, Row 02, Strip 3\n #_0ACF87: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 03, Strip 0\n #_0ACF8F: db $2C, $2A, $28, $28, $2F, $3C, $4B, $66 ; Quadrant 2, Row 03, Strip 1\n #_0ACF97: db $CF, $04, $04, $CB, $04, $BB, $C0, $03 ; Quadrant 2, Row 03, Strip 2\n #_0ACF9F: db $04, $04, $04, $DB, $E6, $21, $21, $60 ; Quadrant 2, Row 03, Strip 3\n #_0ACFA7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 04, Strip 0\n #_0ACFAF: db $28, $28, $08, $09, $08, $5A, $35, $35 ; Quadrant 2, Row 04, Strip 1\n #_0ACFB7: db $69, $24, $24, $27, $26, $25, $C0, $13 ; Quadrant 2, Row 04, Strip 2\n #_0ACFBF: db $26, $24, $24, $27, $15, $A7, $FB, $FB ; Quadrant 2, Row 04, Strip 3\n #_0ACFC7: db $09, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 05, Strip 0\n #_0ACFCF: db $28, $28, $28, $2C, $2D, $2B, $3A, $35 ; Quadrant 2, Row 05, Strip 1\n #_0ACFD7: db $55, $34, $34, $13, $15, $E4, $33, $13 ; Quadrant 2, Row 05, Strip 2\n #_0ACFDF: db $15, $FB, $A7, $13, $15, $A7, $FB, $FB ; Quadrant 2, Row 05, Strip 3\n #_0ACFE7: db $2B, $09, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 06, Strip 0\n #_0ACFEF: db $28, $28, $28, $28, $2C, $2F, $3C, $35 ; Quadrant 2, Row 06, Strip 1\n #_0ACFF7: db $55, $33, $31, $23, $25, $33, $F6, $13 ; Quadrant 2, Row 06, Strip 2\n #_0ACFFF: db $15, $A7, $FB, $13, $15, $A7, $A6, $34 ; Quadrant 2, Row 06, Strip 3\n #_0AD007: db $2C, $2E, $09, $08, $29, $28, $28, $28 ; Quadrant 2, Row 07, Strip 0\n #_0AD00F: db $28, $2C, $09, $28, $2F, $3C, $4B, $35 ; Quadrant 2, Row 07, Strip 1\n #_0AD017: db $7A, $7B, $7B, $A3, $D2, $7B, $7C, $23 ; Quadrant 2, Row 07, Strip 2\n #_0AD01F: db $36, $05, $03, $37, $15, $A7, $41, $33 ; Quadrant 2, Row 07, Strip 3\n #_0AD027: db $28, $2C, $2A, $28, $2C, $09, $28, $28 ; Quadrant 2, Row 08, Strip 0\n #_0AD02F: db $28, $28, $2C, $09, $3C, $4B, $35, $57 ; Quadrant 2, Row 08, Strip 1\n #_0AD037: db $9D, $9D, $C5, $9D, $9D, $56, $55, $A6 ; Quadrant 2, Row 08, Strip 2\n #_0AD03F: db $23, $25, $23, $24, $25, $34, $44, $66 ; Quadrant 2, Row 08, Strip 3\n #_0AD047: db $28, $28, $28, $28, $28, $2B, $2D, $28 ; Quadrant 2, Row 09, Strip 0\n #_0AD04F: db $28, $28, $28, $2C, $5A, $35, $35, $C7 ; Quadrant 2, Row 09, Strip 1\n #_0AD057: db $35, $DE, $CC, $DE, $57, $5C, $47, $66 ; Quadrant 2, Row 09, Strip 2\n #_0AD05F: db $45, $D0, $D0, $D0, $C3, $34, $AF, $67 ; Quadrant 2, Row 09, Strip 3\n #_0AD067: db $28, $28, $28, $28, $28, $2B, $2A, $28 ; Quadrant 2, Row 0A, Strip 0\n #_0AD06F: db $28, $28, $28, $28, $2C, $3A, $35, $C7 ; Quadrant 2, Row 0A, Strip 1\n #_0AD077: db $57, $9D, $78, $9D, $59, $58, $56, $35 ; Quadrant 2, Row 0A, Strip 2\n #_0AD07F: db $7A, $7B, $7C, $A7, $34, $B1, $AD, $B6 ; Quadrant 2, Row 0A, Strip 3\n #_0AD087: db $28, $28, $28, $28, $2F, $2A, $28, $28 ; Quadrant 2, Row 0B, Strip 0\n #_0AD08F: db $28, $28, $28, $28, $28, $2C, $3A, $C7 ; Quadrant 2, Row 0B, Strip 1\n #_0AD097: db $C7, $86, $DC, $57, $59, $86, $58, $56 ; Quadrant 2, Row 0B, Strip 2\n #_0AD09F: db $35, $35, $7A, $7B, $7B, $D3, $AC, $BF ; Quadrant 2, Row 0B, Strip 3\n #_0AD0A7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 0C, Strip 0\n #_0AD0AF: db $28, $28, $08, $09, $08, $29, $3C, $C7 ; Quadrant 2, Row 0C, Strip 1\n #_0AD0B7: db $C7, $86, $58, $59, $86, $86, $86, $5C ; Quadrant 2, Row 0C, Strip 2\n #_0AD0BF: db $57, $56, $57, $56, $57, $65, $B6, $B6 ; Quadrant 2, Row 0C, Strip 3\n #_0AD0C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 0D, Strip 0\n #_0AD0CF: db $28, $28, $28, $2C, $2D, $3C, $4B, $C7 ; Quadrant 2, Row 0D, Strip 1\n #_0AD0D7: db $59, $86, $86, $86, $86, $86, $86, $5C ; Quadrant 2, Row 0D, Strip 2\n #_0AD0DF: db $C7, $64, $65, $54, $55, $B6, $B6, $B6 ; Quadrant 2, Row 0D, Strip 3\n #_0AD0E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 0E, Strip 0\n #_0AD0EF: db $28, $28, $28, $28, $2C, $5A, $35, $C7 ; Quadrant 2, Row 0E, Strip 1\n #_0AD0F7: db $86, $86, $86, $86, $86, $86, $86, $58 ; Quadrant 2, Row 0E, Strip 2\n #_0AD0FF: db $C2, $7F, $6F, $C1, $65, $B6, $79, $F5 ; Quadrant 2, Row 0E, Strip 3\n #_0AD107: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 0F, Strip 0\n #_0AD10F: db $28, $28, $28, $08, $29, $2C, $3A, $C7 ; Quadrant 2, Row 0F, Strip 1\n #_0AD117: db $66, $49, $86, $86, $86, $86, $86, $86 ; Quadrant 2, Row 0F, Strip 2\n #_0AD11F: db $5C, $47, $46, $55, $B6, $B6, $B6, $B6 ; Quadrant 2, Row 0F, Strip 3\n #_0AD127: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 10, Strip 0\n #_0AD12F: db $08, $29, $08, $28, $2C, $09, $3C, $47 ; Quadrant 2, Row 10, Strip 1\n #_0AD137: db $66, $66, $66, $66, $66, $66, $66, $66 ; Quadrant 2, Row 10, Strip 2\n #_0AD13F: db $46, $35, $35, $47, $66, $66, $66, $66 ; Quadrant 2, Row 10, Strip 3\n #_0AD147: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 11, Strip 0\n #_0AD14F: db $28, $2C, $09, $28, $28, $2B, $5A, $39 ; Quadrant 2, Row 11, Strip 1\n #_0AD157: db $3A, $39, $3A, $35, $35, $39, $3A, $48 ; Quadrant 2, Row 11, Strip 2\n #_0AD15F: db $66, $66, $49, $39, $3A, $35, $35, $39 ; Quadrant 2, Row 11, Strip 3\n #_0AD167: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 12, Strip 0\n #_0AD16F: db $28, $28, $2C, $28, $28, $2C, $2C, $2D ; Quadrant 2, Row 12, Strip 1\n #_0AD177: db $2C, $28, $2C, $3A, $39, $2F, $3C, $5C ; Quadrant 2, Row 12, Strip 2\n #_0AD17F: db $39, $3A, $39, $28, $2C, $3A, $39, $28 ; Quadrant 2, Row 12, Strip 3\n #_0AD187: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 13, Strip 0\n #_0AD18F: db $28, $28, $28, $28, $28, $28, $28, $2C ; Quadrant 2, Row 13, Strip 1\n #_0AD197: db $28, $28, $28, $2C, $28, $2C, $5A, $46 ; Quadrant 2, Row 13, Strip 2\n #_0AD19F: db $3B, $2C, $2D, $28, $28, $2C, $2D, $28 ; Quadrant 2, Row 13, Strip 3\n #_0AD1A7: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 2, Row 14, Strip 0\n #_0AD1AF: db $29, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 14, Strip 1\n #_0AD1B7: db $28, $28, $28, $28, $28, $28, $3C, $35 ; Quadrant 2, Row 14, Strip 2\n #_0AD1BF: db $4A, $3B, $2C, $2D, $28, $28, $2C, $28 ; Quadrant 2, Row 14, Strip 3\n #_0AD1C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 15, Strip 0\n #_0AD1CF: db $2C, $09, $08, $29, $28, $28, $28, $28 ; Quadrant 2, Row 15, Strip 1\n #_0AD1D7: db $28, $28, $28, $28, $28, $08, $5A, $35 ; Quadrant 2, Row 15, Strip 2\n #_0AD1DF: db $35, $4A, $3B, $3C, $3B, $08, $29, $28 ; Quadrant 2, Row 15, Strip 3\n #_0AD1E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 16, Strip 0\n #_0AD1EF: db $28, $2C, $2D, $2C, $09, $28, $28, $28 ; Quadrant 2, Row 16, Strip 1\n #_0AD1F7: db $28, $28, $28, $28, $08, $28, $2C, $3A ; Quadrant 2, Row 16, Strip 2\n #_0AD1FF: db $39, $3A, $4A, $4B, $4C, $28, $2C, $09 ; Quadrant 2, Row 16, Strip 3\n #_0AD207: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 17, Strip 0\n #_0AD20F: db $28, $28, $2C, $28, $2B, $09, $08, $29 ; Quadrant 2, Row 17, Strip 1\n #_0AD217: db $28, $28, $28, $08, $28, $28, $28, $2A ; Quadrant 2, Row 17, Strip 2\n #_0AD21F: db $28, $2C, $3A, $39, $28, $28, $28, $08 ; Quadrant 2, Row 17, Strip 3\n #_0AD227: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 18, Strip 0\n #_0AD22F: db $28, $28, $28, $28, $2B, $2A, $28, $2C ; Quadrant 2, Row 18, Strip 1\n #_0AD237: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 18, Strip 2\n #_0AD23F: db $28, $28, $2B, $2D, $28, $28, $28, $28 ; Quadrant 2, Row 18, Strip 3\n #_0AD247: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 19, Strip 0\n #_0AD24F: db $28, $28, $28, $28, $2A, $28, $28, $28 ; Quadrant 2, Row 19, Strip 1\n #_0AD257: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 19, Strip 2\n #_0AD25F: db $28, $28, $2C, $2E, $2D, $28, $28, $28 ; Quadrant 2, Row 19, Strip 3\n #_0AD267: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1A, Strip 0\n #_0AD26F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1A, Strip 1\n #_0AD277: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1A, Strip 2\n #_0AD27F: db $28, $28, $28, $2C, $2E, $28, $28, $28 ; Quadrant 2, Row 1A, Strip 3\n #_0AD287: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1B, Strip 0\n #_0AD28F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1B, Strip 1\n #_0AD297: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1B, Strip 2\n #_0AD29F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1B, Strip 3\n #_0AD2A7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1C, Strip 0\n #_0AD2AF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1C, Strip 1\n #_0AD2B7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1C, Strip 2\n #_0AD2BF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1C, Strip 3\n #_0AD2C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1D, Strip 0\n #_0AD2CF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1D, Strip 1\n #_0AD2D7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1D, Strip 2\n #_0AD2DF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1D, Strip 3\n #_0AD2E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1E, Strip 0\n #_0AD2EF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1E, Strip 1\n #_0AD2F7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1E, Strip 2\n #_0AD2FF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1E, Strip 3\n #_0AD307: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1F, Strip 0\n #_0AD30F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1F, Strip 1\n #_0AD317: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1F, Strip 2\n #_0AD31F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 2, Row 1F, Strip 3\n\n; ---------------------------------------------------------\n\n #_0AD327: db $5E, $34, $CE, $10, $12, $FC, $FC, $5C ; Quadrant 3, Row 00, Strip 0\n #_0AD32F: db $C7, $9D, $59, $58, $59, $89, $58, $5C ; Quadrant 3, Row 00, Strip 1\n #_0AD337: db $58, $39, $28, $28, $2C, $2D, $28, $28 ; Quadrant 3, Row 00, Strip 2\n #_0AD33F: db $08, $29, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 00, Strip 3\n #_0AD347: db $6D, $4E, $5F, $20, $22, $FC, $FC, $5C ; Quadrant 3, Row 01, Strip 0\n #_0AD34F: db $C7, $67, $56, $89, $57, $67, $67, $5C ; Quadrant 3, Row 01, Strip 1\n #_0AD357: db $39, $28, $28, $28, $28, $2B, $2D, $08 ; Quadrant 3, Row 01, Strip 2\n #_0AD35F: db $28, $2C, $2D, $28, $28, $28, $28, $28 ; Quadrant 3, Row 01, Strip 3\n #_0AD367: db $51, $01, $01, $01, $02, $FC, $FC, $5C ; Quadrant 3, Row 02, Strip 0\n #_0AD36F: db $55, $9E, $64, $67, $65, $FB, $A7, $54 ; Quadrant 3, Row 02, Strip 1\n #_0AD377: db $3B, $28, $28, $08, $28, $28, $2C, $28 ; Quadrant 3, Row 02, Strip 2\n #_0AD37F: db $28, $28, $2C, $28, $28, $28, $28, $28 ; Quadrant 3, Row 02, Strip 3\n #_0AD387: db $61, $21, $21, $07, $12, $FC, $FC, $5C ; Quadrant 3, Row 03, Strip 0\n #_0AD38F: db $55, $77, $7B, $7B, $7B, $7B, $7C, $54 ; Quadrant 3, Row 03, Strip 1\n #_0AD397: db $4A, $3B, $08, $28, $28, $28, $28, $28 ; Quadrant 3, Row 03, Strip 2\n #_0AD39F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 03, Strip 3\n #_0AD3A7: db $FB, $A7, $C0, $10, $12, $FC, $FC, $5C ; Quadrant 3, Row 04, Strip 0\n #_0AD3AF: db $55, $64, $67, $56, $57, $67, $65, $54 ; Quadrant 3, Row 04, Strip 1\n #_0AD3B7: db $48, $4C, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 04, Strip 2\n #_0AD3BF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 04, Strip 3\n #_0AD3C7: db $FB, $B6, $C0, $10, $12, $34, $34, $64 ; Quadrant 3, Row 05, Strip 0\n #_0AD3CF: db $65, $A6, $A6, $54, $55, $31, $44, $46 ; Quadrant 3, Row 05, Strip 1\n #_0AD3D7: db $58, $3B, $28, $2F, $28, $28, $28, $28 ; Quadrant 3, Row 05, Strip 2\n #_0AD3DF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 05, Strip 3\n #_0AD3E7: db $B6, $F6, $C0, $10, $16, $50, $51, $01 ; Quadrant 3, Row 06, Strip 0\n #_0AD3EF: db $01, $01, $01, $68, $55, $41, $64, $56 ; Quadrant 3, Row 06, Strip 1\n #_0AD3F7: db $48, $4A, $3B, $3C, $3B, $28, $28, $28 ; Quadrant 3, Row 06, Strip 2\n #_0AD3FF: db $2F, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 06, Strip 3\n #_0AD407: db $33, $33, $C3, $20, $21, $60, $61, $AB ; Quadrant 3, Row 07, Strip 0\n #_0AD40F: db $97, $97, $BE, $68, $7A, $7B, $7B, $43 ; Quadrant 3, Row 07, Strip 1\n #_0AD417: db $5C, $35, $4A, $4B, $4A, $3B, $08, $29 ; Quadrant 3, Row 07, Strip 2\n #_0AD41F: db $3C, $3B, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 07, Strip 3\n #_0AD427: db $66, $45, $44, $66, $45, $34, $34, $64 ; Quadrant 3, Row 08, Strip 0\n #_0AD42F: db $AE, $AE, $A9, $68, $57, $C6, $67, $56 ; Quadrant 3, Row 08, Strip 1\n #_0AD437: db $58, $56, $35, $35, $35, $4C, $2F, $3C ; Quadrant 3, Row 08, Strip 2\n #_0AD43F: db $4B, $4C, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 08, Strip 3\n #_0AD447: db $67, $65, $64, $56, $75, $76, $96, $01 ; Quadrant 3, Row 09, Strip 0\n #_0AD44F: db $17, $11, $11, $B8, $53, $01, $02, $54 ; Quadrant 3, Row 09, Strip 1\n #_0AD457: db $35, $58, $39, $3A, $39, $28, $28, $5A ; Quadrant 3, Row 09, Strip 2\n #_0AD45F: db $39, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 09, Strip 3\n #_0AD467: db $B6, $B6, $B6, $54, $55, $10, $06, $07 ; Quadrant 3, Row 0A, Strip 0\n #_0AD46F: db $87, $97, $BE, $8F, $9F, $06, $12, $54 ; Quadrant 3, Row 0A, Strip 1\n #_0AD477: db $35, $39, $28, $2C, $2D, $28, $28, $2C ; Quadrant 3, Row 0A, Strip 2\n #_0AD47F: db $2D, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 3, Row 0A, Strip 3\n #_0AD487: db $BF, $B6, $B6, $54, $55, $10, $16, $17 ; Quadrant 3, Row 0B, Strip 0\n #_0AD48F: db $B9, $C6, $BA, $8F, $9F, $12, $12, $54 ; Quadrant 3, Row 0B, Strip 1\n #_0AD497: db $35, $3B, $08, $28, $2C, $28, $28, $28 ; Quadrant 3, Row 0B, Strip 2\n #_0AD49F: db $2C, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 3, Row 0B, Strip 3\n #_0AD4A7: db $B6, $B6, $B6, $54, $47, $AA, $11, $11 ; Quadrant 3, Row 0C, Strip 0\n #_0AD4AF: db $16, $96, $17, $8F, $9F, $12, $22, $54 ; Quadrant 3, Row 0C, Strip 1\n #_0AD4B7: db $35, $4C, $2D, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0C, Strip 2\n #_0AD4BF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0C, Strip 3\n #_0AD4C7: db $B6, $30, $33, $54, $57, $F2, $11, $11 ; Quadrant 3, Row 0D, Strip 0\n #_0AD4CF: db $11, $11, $11, $A8, $A9, $95, $02, $54 ; Quadrant 3, Row 0D, Strip 1\n #_0AD4D7: db $39, $28, $2C, $2D, $28, $28, $08, $29 ; Quadrant 3, Row 0D, Strip 2\n #_0AD4DF: db $08, $29, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0D, Strip 3\n #_0AD4E7: db $B6, $32, $34, $64, $65, $10, $11, $11 ; Quadrant 3, Row 0E, Strip 0\n #_0AD4EF: db $06, $21, $07, $11, $11, $06, $22, $54 ; Quadrant 3, Row 0E, Strip 1\n #_0AD4F7: db $3B, $28, $28, $2C, $28, $28, $28, $2C ; Quadrant 3, Row 0E, Strip 2\n #_0AD4FF: db $28, $2C, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0E, Strip 3\n #_0AD507: db $30, $40, $34, $B6, $34, $20, $21, $21 ; Quadrant 3, Row 0F, Strip 0\n #_0AD50F: db $22, $34, $B6, $34, $34, $34, $B6, $54 ; Quadrant 3, Row 0F, Strip 1\n #_0AD517: db $39, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0F, Strip 2\n #_0AD51F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 0F, Strip 3\n #_0AD527: db $66, $66, $66, $66, $66, $66, $66, $66 ; Quadrant 3, Row 10, Strip 0\n #_0AD52F: db $66, $66, $66, $66, $66, $66, $66, $46 ; Quadrant 3, Row 10, Strip 1\n #_0AD537: db $3B, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 10, Strip 2\n #_0AD53F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 10, Strip 3\n #_0AD547: db $3A, $48, $66, $66, $66, $49, $48, $49 ; Quadrant 3, Row 11, Strip 0\n #_0AD54F: db $39, $3A, $35, $35, $39, $3A, $35, $35 ; Quadrant 3, Row 11, Strip 1\n #_0AD557: db $39, $2D, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 11, Strip 2\n #_0AD55F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 11, Strip 3\n #_0AD567: db $2C, $3A, $39, $3A, $35, $47, $46, $39 ; Quadrant 3, Row 12, Strip 0\n #_0AD56F: db $28, $2C, $3A, $39, $28, $2C, $3A, $39 ; Quadrant 3, Row 12, Strip 1\n #_0AD577: db $28, $2C, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 12, Strip 2\n #_0AD57F: db $28, $28, $28, $28, $28, $08, $29, $08 ; Quadrant 3, Row 12, Strip 3\n #_0AD587: db $28, $2C, $2D, $2C, $3A, $35, $39, $28 ; Quadrant 3, Row 13, Strip 0\n #_0AD58F: db $28, $28, $2C, $08, $29, $28, $2C, $28 ; Quadrant 3, Row 13, Strip 1\n #_0AD597: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 13, Strip 2\n #_0AD59F: db $28, $28, $28, $28, $08, $28, $2C, $2D ; Quadrant 3, Row 13, Strip 3\n #_0AD5A7: db $28, $28, $2C, $28, $2C, $39, $28, $28 ; Quadrant 3, Row 14, Strip 0\n #_0AD5AF: db $28, $28, $28, $28, $2B, $09, $08, $29 ; Quadrant 3, Row 14, Strip 1\n #_0AD5B7: db $28, $28, $28, $28, $08, $29, $28, $28 ; Quadrant 3, Row 14, Strip 2\n #_0AD5BF: db $28, $28, $28, $28, $28, $28, $28, $2C ; Quadrant 3, Row 14, Strip 3\n #_0AD5C7: db $28, $28, $28, $28, $08, $29, $28, $28 ; Quadrant 3, Row 15, Strip 0\n #_0AD5CF: db $28, $28, $28, $28, $2C, $2A, $28, $2C ; Quadrant 3, Row 15, Strip 1\n #_0AD5D7: db $09, $28, $28, $08, $28, $2C, $09, $28 ; Quadrant 3, Row 15, Strip 2\n #_0AD5DF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 15, Strip 3\n #_0AD5E7: db $28, $28, $28, $08, $28, $2C, $2D, $28 ; Quadrant 3, Row 16, Strip 0\n #_0AD5EF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 16, Strip 1\n #_0AD5F7: db $08, $29, $08, $28, $28, $28, $2B, $09 ; Quadrant 3, Row 16, Strip 2\n #_0AD5FF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 16, Strip 3\n #_0AD607: db $29, $28, $08, $28, $28, $28, $2C, $28 ; Quadrant 3, Row 17, Strip 0\n #_0AD60F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 17, Strip 1\n #_0AD617: db $28, $2C, $2D, $28, $28, $28, $2C, $2E ; Quadrant 3, Row 17, Strip 2\n #_0AD61F: db $09, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 17, Strip 3\n #_0AD627: db $2C, $2D, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 18, Strip 0\n #_0AD62F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 18, Strip 1\n #_0AD637: db $28, $28, $2C, $28, $28, $28, $28, $2B ; Quadrant 3, Row 18, Strip 2\n #_0AD63F: db $2A, $29, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 18, Strip 3\n #_0AD647: db $28, $2C, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 19, Strip 0\n #_0AD64F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 19, Strip 1\n #_0AD657: db $28, $28, $28, $28, $28, $28, $28, $08 ; Quadrant 3, Row 19, Strip 2\n #_0AD65F: db $09, $2C, $09, $28, $28, $28, $28, $28 ; Quadrant 3, Row 19, Strip 3\n #_0AD667: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1A, Strip 0\n #_0AD66F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1A, Strip 1\n #_0AD677: db $28, $28, $28, $28, $28, $28, $08, $28 ; Quadrant 3, Row 1A, Strip 2\n #_0AD67F: db $28, $28, $2B, $09, $28, $28, $28, $28 ; Quadrant 3, Row 1A, Strip 3\n #_0AD687: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1B, Strip 0\n #_0AD68F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1B, Strip 1\n #_0AD697: db $28, $28, $28, $28, $28, $08, $28, $28 ; Quadrant 3, Row 1B, Strip 2\n #_0AD69F: db $28, $28, $2C, $2E, $2D, $28, $28, $28 ; Quadrant 3, Row 1B, Strip 3\n #_0AD6A7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1C, Strip 0\n #_0AD6AF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1C, Strip 1\n #_0AD6B7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1C, Strip 2\n #_0AD6BF: db $28, $28, $28, $2B, $2A, $28, $28, $28 ; Quadrant 3, Row 1C, Strip 3\n #_0AD6C7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1D, Strip 0\n #_0AD6CF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1D, Strip 1\n #_0AD6D7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1D, Strip 2\n #_0AD6DF: db $28, $28, $28, $2A, $28, $28, $28, $28 ; Quadrant 3, Row 1D, Strip 3\n #_0AD6E7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1E, Strip 0\n #_0AD6EF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1E, Strip 1\n #_0AD6F7: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1E, Strip 2\n #_0AD6FF: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1E, Strip 3\n #_0AD707: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1F, Strip 0\n #_0AD70F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1F, Strip 1\n #_0AD717: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1F, Strip 2\n #_0AD71F: db $28, $28, $28, $28, $28, $28, $28, $28 ; Quadrant 3, Row 1F, Strip 3\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMap_DarkWorldTilemap", + "code": "WorldMap_DarkWorldTilemap:\n #_0AD727: db $26, $27, $14, $14, $14, $A5, $14, $26 ; Row 00, Strip 0\n #_0AD72F: db $24, $25, $56, $35, $5B, $73, $74, $28 ; Row 00, Strip 1\n #_0AD737: db $72, $99, $63, $73, $73, $74, $2C, $72 ; Row 00, Strip 2\n #_0AD73F: db $73, $73, $73, $A1, $A0, $73, $73, $74 ; Row 00, Strip 3\n #_0AD747: db $36, $37, $14, $14, $14, $14, $14, $15 ; Row 01, Strip 0\n #_0AD74F: db $34, $A7, $64, $5B, $90, $73, $73, $73 ; Row 01, Strip 1\n #_0AD757: db $73, $9A, $70, $A0, $73, $91, $09, $90 ; Row 01, Strip 2\n #_0AD75F: db $73, $73, $A1, $84, $90, $73, $FF, $91 ; Row 01, Strip 3\n #_0AD767: db $14, $14, $14, $14, $14, $14, $14, $15 ; Row 02, Strip 0\n #_0AD76F: db $A7, $34, $E4, $90, $82, $83, $83, $83 ; Row 02, Strip 1\n #_0AD777: db $83, $83, $84, $82, $83, $83, $83, $83 ; Row 02, Strip 2\n #_0AD77F: db $83, $83, $84, $B3, $82, $83, $83, $84 ; Row 02, Strip 3\n #_0AD787: db $A5, $14, $14, $14, $A5, $14, $14, $15 ; Row 03, Strip 0\n #_0AD78F: db $A7, $B6, $DF, $82, $B2, $93, $93, $93 ; Row 03, Strip 1\n #_0AD797: db $93, $93, $94, $92, $93, $94, $72, $93 ; Row 03, Strip 2\n #_0AD79F: db $93, $93, $B3, $91, $B4, $93, $93, $A2 ; Row 03, Strip 3\n #_0AD7A7: db $14, $A5, $14, $14, $14, $14, $14, $15 ; Row 04, Strip 0\n #_0AD7AF: db $34, $A7, $82, $B2, $93, $93, $93, $93 ; Row 04, Strip 1\n #_0AD7B7: db $93, $93, $94, $92, $93, $94, $82, $93 ; Row 04, Strip 2\n #_0AD7BF: db $82, $83, $83, $84, $CA, $CA, $CA, $8F ; Row 04, Strip 3\n #_0AD7C7: db $14, $14, $14, $14, $A5, $14, $A5, $36 ; Row 05, Strip 0\n #_0AD7CF: db $05, $34, $B0, $D6, $93, $82, $83, $83 ; Row 05, Strip 1\n #_0AD7D7: db $83, $84, $B3, $B2, $93, $B3, $B4, $90 ; Row 05, Strip 2\n #_0AD7DF: db $B2, $93, $93, $B3, $BE, $11, $95, $54 ; Row 05, Strip 3\n #_0AD7E7: db $A5, $14, $14, $A5, $14, $A5, $14, $14 ; Row 06, Strip 0\n #_0AD7EF: db $15, $33, $33, $33, $90, $B2, $93, $93 ; Row 06, Strip 1\n #_0AD7F7: db $93, $B3, $73, $A1, $83, $84, $11, $90 ; Row 06, Strip 2\n #_0AD7FF: db $73, $73, $73, $91, $9F, $06, $22, $54 ; Row 06, Strip 3\n #_0AD807: db $14, $14, $A5, $A5, $14, $14, $14, $A5 ; Row 07, Strip 0\n #_0AD80F: db $15, $A6, $FB, $34, $82, $83, $83, $83 ; Row 07, Strip 1\n #_0AD817: db $83, $83, $83, $84, $93, $94, $CA, $82 ; Row 07, Strip 2\n #_0AD81F: db $83, $83, $83, $84, $A9, $16, $02, $54 ; Row 07, Strip 3\n #_0AD827: db $26, $27, $26, $27, $26, $24, $24, $D5 ; Row 08, Strip 0\n #_0AD82F: db $25, $34, $34, $34, $B0, $93, $D6, $93 ; Row 08, Strip 1\n #_0AD837: db $93, $93, $93, $A4, $93, $A4, $CA, $B4 ; Row 08, Strip 2\n #_0AD83F: db $93, $93, $93, $B7, $11, $11, $12, $54 ; Row 08, Strip 3\n #_0AD847: db $15, $13, $15, $13, $15, $33, $40, $41 ; Row 09, Strip 0\n #_0AD84F: db $33, $BF, $34, $34, $30, $FB, $C0, $23 ; Row 09, Strip 1\n #_0AD857: db $24, $24, $24, $25, $00, $17, $06, $21 ; Row 09, Strip 2\n #_0AD85F: db $21, $21, $21, $21, $21, $21, $22, $54 ; Row 09, Strip 3\n #_0AD867: db $15, $13, $15, $13, $15, $BC, $BD, $A6 ; Row 0A, Strip 0\n #_0AD86F: db $A7, $34, $41, $33, $40, $34, $C0, $34 ; Row 0A, Strip 1\n #_0AD877: db $B6, $80, $80, $B6, $20, $07, $95, $A6 ; Row 0A, Strip 2\n #_0AD87F: db $A6, $F6, $A7, $44, $45, $34, $41, $54 ; Row 0A, Strip 3\n #_0AD887: db $15, $13, $15, $13, $36, $05, $D0, $D0 ; Row 0B, Strip 0\n #_0AD88F: db $D0, $D0, $D0, $D0, $D0, $D0, $C3, $D0 ; Row 0B, Strip 1\n #_0AD897: db $D0, $D0, $D0, $D0, $D0, $10, $06, $77 ; Row 0B, Strip 2\n #_0AD89F: db $7B, $7B, $7B, $43, $7A, $7B, $8D, $8E ; Row 0B, Strip 3\n #_0AD8A7: db $15, $23, $25, $23, $24, $25, $C0, $A6 ; Row 0C, Strip 0\n #_0AD8AF: db $FB, $A7, $A6, $00, $EA, $E8, $E8, $E8 ; Row 0C, Strip 1\n #_0AD8B7: db $E9, $E9, $E9, $EB, $02, $10, $12, $54 ; Row 0C, Strip 2\n #_0AD8BF: db $57, $9D, $9D, $9D, $9D, $9D, $C8, $C9 ; Row 0C, Strip 3\n #_0AD8C7: db $25, $31, $B6, $34, $6E, $6E, $C0, $10 ; Row 0D, Strip 0\n #_0AD8CF: db $12, $A7, $A6, $10, $C4, $D9, $D9, $D7 ; Row 0D, Strip 1\n #_0AD8D7: db $E7, $DA, $DA, $D4, $12, $10, $12, $54 ; Row 0D, Strip 2\n #_0AD8DF: db $C7, $E2, $E2, $E2, $E2, $F1, $89, $54 ; Row 0D, Strip 3\n #_0AD8E7: db $34, $41, $33, $33, $33, $33, $C0, $10 ; Row 0E, Strip 0\n #_0AD8EF: db $12, $A6, $F6, $10, $C4, $D9, $D7, $D8 ; Row 0E, Strip 1\n #_0AD8F7: db $EC, $E7, $DA, $D4, $12, $10, $12, $54 ; Row 0E, Strip 2\n #_0AD8FF: db $C7, $E2, $E2, $E2, $E2, $E1, $F1, $54 ; Row 0E, Strip 3\n #_0AD907: db $34, $F6, $89, $6B, $6C, $89, $F6, $10 ; Row 0F, Strip 0\n #_0AD90F: db $12, $FB, $FB, $10, $C4, $D7, $EC, $D8 ; Row 0F, Strip 1\n #_0AD917: db $D8, $D8, $E7, $D4, $F3, $F4, $22, $54 ; Row 0F, Strip 2\n #_0AD91F: db $C7, $E2, $E1, $E1, $E2, $E1, $F1, $54 ; Row 0F, Strip 3\n #_0AD927: db $34, $B6, $34, $3E, $5E, $88, $88, $10 ; Row 10, Strip 0\n #_0AD92F: db $12, $A6, $A6, $10, $D1, $D8, $D8, $EC ; Row 10, Strip 1\n #_0AD937: db $EC, $D8, $D8, $E5, $12, $FC, $FC, $5C ; Row 10, Strip 2\n #_0AD93F: db $C7, $E0, $6D, $7D, $E0, $E1, $F1, $54 ; Row 10, Strip 3\n #_0AD947: db $88, $88, $E3, $BD, $E3, $BD, $F6, $10 ; Row 11, Strip 0\n #_0AD94F: db $12, $E3, $BD, $10, $12, $34, $A7, $89 ; Row 11, Strip 1\n #_0AD957: db $89, $A7, $34, $20, $22, $FC, $FC, $5C ; Row 11, Strip 2\n #_0AD95F: db $C7, $E2, $E1, $E2, $E2, $F1, $89, $54 ; Row 11, Strip 3\n #_0AD967: db $34, $A7, $34, $34, $34, $34, $A7, $20 ; Row 12, Strip 0\n #_0AD96F: db $22, $33, $33, $10, $16, $01, $01, $01 ; Row 12, Strip 1\n #_0AD977: db $01, $01, $01, $01, $02, $FC, $FC, $5C ; Row 12, Strip 2\n #_0AD97F: db $55, $F0, $89, $F0, $F0, $FB, $A7, $54 ; Row 12, Strip 3\n #_0AD987: db $CF, $04, $04, $CB, $04, $BB, $C0, $03 ; Row 13, Strip 0\n #_0AD98F: db $04, $04, $04, $DB, $E6, $21, $21, $21 ; Row 13, Strip 1\n #_0AD997: db $21, $21, $21, $07, $12, $FC, $FC, $5C ; Row 13, Strip 2\n #_0AD99F: db $55, $77, $7B, $7B, $7B, $7B, $7C, $54 ; Row 13, Strip 3\n #_0AD9A7: db $69, $24, $24, $27, $26, $25, $C0, $13 ; Row 14, Strip 0\n #_0AD9AF: db $26, $24, $24, $27, $15, $A7, $FB, $FB ; Row 14, Strip 1\n #_0AD9B7: db $FB, $A7, $C0, $10, $12, $FC, $FC, $5C ; Row 14, Strip 2\n #_0AD9BF: db $55, $64, $67, $56, $57, $67, $65, $54 ; Row 14, Strip 3\n #_0AD9C7: db $55, $34, $34, $13, $15, $33, $33, $13 ; Row 15, Strip 0\n #_0AD9CF: db $15, $FB, $A7, $13, $15, $A7, $FB, $FB ; Row 15, Strip 1\n #_0AD9D7: db $FB, $B6, $C0, $10, $12, $34, $34, $64 ; Row 15, Strip 2\n #_0AD9DF: db $65, $A6, $A6, $54, $55, $31, $44, $46 ; Row 15, Strip 3\n #_0AD9E7: db $55, $33, $31, $23, $25, $33, $F6, $13 ; Row 16, Strip 0\n #_0AD9EF: db $15, $A7, $FB, $13, $15, $A7, $A6, $34 ; Row 16, Strip 1\n #_0AD9F7: db $B6, $F6, $C0, $10, $16, $02, $00, $96 ; Row 16, Strip 2\n #_0AD9FF: db $01, $01, $01, $68, $55, $41, $64, $56 ; Row 16, Strip 3\n #_0ADA07: db $7A, $7B, $7B, $7B, $7B, $7B, $7C, $23 ; Row 17, Strip 0\n #_0ADA0F: db $36, $05, $03, $37, $15, $A7, $41, $33 ; Row 17, Strip 1\n #_0ADA17: db $33, $33, $C3, $20, $21, $22, $20, $AB ; Row 17, Strip 2\n #_0ADA1F: db $97, $97, $BE, $68, $7A, $7B, $7B, $43 ; Row 17, Strip 3\n #_0ADA27: db $9D, $9D, $9D, $9D, $9D, $56, $55, $A6 ; Row 18, Strip 0\n #_0ADA2F: db $23, $25, $23, $24, $25, $34, $44, $66 ; Row 18, Strip 1\n #_0ADA37: db $66, $45, $44, $66, $45, $34, $34, $64 ; Row 18, Strip 2\n #_0ADA3F: db $AE, $AE, $A9, $68, $57, $C6, $67, $56 ; Row 18, Strip 3\n #_0ADA47: db $9F, $DD, $DD, $DD, $11, $8F, $47, $66 ; Row 19, Strip 0\n #_0ADA4F: db $45, $D0, $D0, $D0, $C3, $34, $AF, $67 ; Row 19, Strip 1\n #_0ADA57: db $67, $65, $64, $56, $75, $76, $01, $01 ; Row 19, Strip 2\n #_0ADA5F: db $17, $11, $11, $B8, $53, $96, $02, $54 ; Row 19, Strip 3\n #_0ADA67: db $9F, $11, $11, $11, $11, $A8, $56, $35 ; Row 1A, Strip 0\n #_0ADA6F: db $55, $77, $7C, $A7, $34, $B1, $AD, $B6 ; Row 1A, Strip 1\n #_0ADA77: db $B6, $B6, $B6, $54, $55, $10, $11, $11 ; Row 1A, Strip 2\n #_0ADA7F: db $11, $11, $11, $8F, $9F, $06, $12, $54 ; Row 1A, Strip 3\n #_0ADA87: db $9F, $ED, $ED, $11, $ED, $11, $A8, $56 ; Row 1B, Strip 0\n #_0ADA8F: db $7A, $43, $7A, $7B, $7B, $D3, $AC, $BF ; Row 1B, Strip 1\n #_0ADA97: db $BF, $B6, $B6, $54, $55, $10, $11, $11 ; Row 1B, Strip 2\n #_0ADA9F: db $F7, $F8, $11, $8F, $9F, $12, $22, $54 ; Row 1B, Strip 3\n #_0ADAA7: db $9F, $ED, $11, $11, $11, $ED, $11, $54 ; Row 1C, Strip 0\n #_0ADAAF: db $57, $56, $57, $56, $57, $65, $B6, $B6 ; Row 1C, Strip 1\n #_0ADAB7: db $B6, $B6, $B6, $54, $47, $AA, $11, $11 ; Row 1C, Strip 2\n #_0ADABF: db $F9, $FA, $11, $8F, $9F, $12, $34, $54 ; Row 1C, Strip 3\n #_0ADAC7: db $A9, $11, $11, $ED, $11, $11, $11, $54 ; Row 1D, Strip 0\n #_0ADACF: db $55, $64, $65, $54, $55, $B6, $B6, $B6 ; Row 1D, Strip 1\n #_0ADAD7: db $B6, $30, $33, $54, $57, $F2, $11, $11 ; Row 1D, Strip 2\n #_0ADADF: db $11, $11, $11, $A8, $A9, $95, $02, $54 ; Row 1D, Strip 3\n #_0ADAE7: db $11, $11, $ED, $11, $11, $ED, $11, $54 ; Row 1E, Strip 0\n #_0ADAEF: db $7A, $7F, $6F, $C1, $65, $B6, $79, $F5 ; Row 1E, Strip 1\n #_0ADAF7: db $B6, $32, $34, $64, $65, $20, $07, $11 ; Row 1E, Strip 2\n #_0ADAFF: db $11, $11, $11, $11, $06, $21, $22, $54 ; Row 1E, Strip 3\n #_0ADB07: db $21, $07, $11, $ED, $11, $ED, $06, $54 ; Row 1F, Strip 0\n #_0ADB0F: db $35, $47, $46, $55, $B6, $B6, $B6, $B6 ; Row 1F, Strip 1\n #_0ADB17: db $30, $40, $34, $B6, $34, $34, $10, $11 ; Row 1F, Strip 2\n #_0ADB1F: db $11, $11, $06, $21, $22, $34, $B6, $54 ; Row 1F, Strip 3\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Palettes_OWMAP", + "code": "Palettes_OWMAP:\n", + "file": "bank_0A.asm" + }, + { + "name": "Palettes_LWMAP", + "code": "Palettes_LWMAP:\n #_0ADB27: dw $0000, $094B, $1563, $1203, $2995, $5BDF, $2191, $2E37\n #_0ADB37: dw $7C1F, $6F37, $7359, $777A, $7B9B, $7FBD, $0000, $0000\n #_0ADB47: dw $0000, $0100, $0000, $0000, $7B9B, $11B6, $1A9B, $5FFF\n #_0ADB57: dw $2995, $6E94, $76D6, $7F39, $7F7B, $7FBD, $0000, $0000\n #_0ADB67: dw $0000, $0100, $1D74, $67F9, $1EE9, $338E, $6144, $7E6A\n #_0ADB77: dw $0A44, $7C1F, $6144, $22EB, $3DCA, $5ED2, $7FDA, $316A\n #_0ADB87: dw $0000, $0100, $14CC, $1910, $2995, $3E3A, $1963, $15E3\n #_0ADB97: dw $25F5, $2E37, $15E3, $22EB, $6144, $7E33, $5D99, $771D\n #_0ADBA7: dw $0000, $0CEC, $22EB, $2FB1, $1D70, $2E37, $25F5, $3E77\n #_0ADBB7: dw $473A, $6144, $7E6A, $15E3, $2E0B, $5354, $7FFF, $16A6\n #_0ADBC7: dw $0000, $0100, $15C5, $16A6, $1EE9, $2F4D, $25F5, $3E77\n #_0ADBD7: dw $473A, $5354, $15E3, $22EB, $2918, $4A1F, $3F7F, $7C1F\n #_0ADBE7: dw $0000, $0100, $1563, $1203, $1EE9, $2FB0, $1D70, $2E37\n #_0ADBF7: dw $473A, $6144, $15E3, $22EB, $1D70, $2E37, $4F3F, $7FBD\n #_0ADC07: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $25F5\n #_0ADC17: dw $316A, $5ED2, $7FFF, $15E3, $473A, $2918, $771D, $0000\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Palettes_DWMAP", + "code": "Palettes_DWMAP:\n #_0ADC27: dw $0000, $18C6, $0948, $118A, $25CF, $57BF, $1971, $2A18\n #_0ADC37: dw $7C1F, $52D8, $5AF9, $5F1A, $633B, $6B5C, $0000, $0000\n #_0ADC47: dw $0000, $18C6, $0005, $45FC, $633B, $1DCE, $3694, $4718\n #_0ADC57: dw $25CF, $1D40, $34EA, $616F, $771B, $26D6, $2B18, $2F5A\n #_0ADC67: dw $0000, $18C6, $2571, $63DA, $2A32, $3A94, $1D40, $2580\n #_0ADC77: dw $7C1F, $7C1F, $0CC0, $1ECC, $3135, $1DCE, $4718, $3694\n #_0ADC87: dw $0000, $18C6, $14E7, $216C, $25D0, $3A75, $2169, $2E0E\n #_0ADC97: dw $21D6, $2A18, $1971, $2A32, $1D40, $2580, $597A, $72FE\n #_0ADCA7: dw $0000, $18C6, $2A32, $3A94, $2171, $3238, $29F6, $4278\n #_0ADCB7: dw $4EDB, $1D40, $35CD, $15AB, $198E, $3254, $731F, $1ED4\n #_0ADCC7: dw $0000, $18C6, $016A, $21CE, $2A32, $3A94, $29F6, $4278\n #_0ADCD7: dw $4EDB, $1D40, $1971, $2A32, $496C, $5A10, $3B5F, $7C1F\n #_0ADCE7: dw $0000, $18C6, $0948, $118A, $222E, $32F2, $1951, $2A18\n #_0ADCF7: dw $431B, $1D40, $1971, $2A32, $21D4, $2A18, $4B1F, $7B9D\n #_0ADD07: dw $0000, $7C1F, $7C1F, $7C1F, $7C1F, $2E31, $00E4, $2169\n #_0ADD17: dw $2E0E, $42F1, $7C1F, $7C1F, $7C1F, $4A1D, $4E3F, $5A5F\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedOut_Part1", + "code": "WorldMapHDMA_ZoomedOut_Part1:\n #_0ADD27: dw $0177 ; scanline 0\n #_0ADD29: dw $0176 ; scanline 1\n #_0ADD2B: dw $0175 ; scanline 2\n #_0ADD2D: dw $0175 ; scanline 3\n #_0ADD2F: dw $0174 ; scanline 4\n #_0ADD31: dw $0173 ; scanline 5\n #_0ADD33: dw $0173 ; scanline 6\n #_0ADD35: dw $0172 ; scanline 7\n #_0ADD37: dw $0171 ; scanline 8\n #_0ADD39: dw $0171 ; scanline 9\n #_0ADD3B: dw $0170 ; scanline 10\n #_0ADD3D: dw $016F ; scanline 11\n #_0ADD3F: dw $016F ; scanline 12\n #_0ADD41: dw $016E ; scanline 13\n #_0ADD43: dw $016D ; scanline 14\n #_0ADD45: dw $016D ; scanline 15\n #_0ADD47: dw $016C ; scanline 16\n #_0ADD49: dw $016B ; scanline 17\n #_0ADD4B: dw $016B ; scanline 18\n #_0ADD4D: dw $0169 ; scanline 19\n #_0ADD4F: dw $0169 ; scanline 20\n #_0ADD51: dw $0168 ; scanline 21\n #_0ADD53: dw $0167 ; scanline 22\n #_0ADD55: dw $0167 ; scanline 23\n #_0ADD57: dw $0166 ; scanline 24\n #_0ADD59: dw $0165 ; scanline 25\n #_0ADD5B: dw $0165 ; scanline 26\n #_0ADD5D: dw $0164 ; scanline 27\n #_0ADD5F: dw $0163 ; scanline 28\n #_0ADD61: dw $0163 ; scanline 29\n #_0ADD63: dw $0162 ; scanline 30\n #_0ADD65: dw $0162 ; scanline 31\n #_0ADD67: dw $0161 ; scanline 32\n #_0ADD69: dw $0160 ; scanline 33\n #_0ADD6B: dw $0160 ; scanline 34\n #_0ADD6D: dw $015F ; scanline 35\n #_0ADD6F: dw $015F ; scanline 36\n #_0ADD71: dw $015E ; scanline 37\n #_0ADD73: dw $015D ; scanline 38\n #_0ADD75: dw $015D ; scanline 39\n #_0ADD77: dw $015C ; scanline 40\n #_0ADD79: dw $015C ; scanline 41\n #_0ADD7B: dw $015B ; scanline 42\n #_0ADD7D: dw $015A ; scanline 43\n #_0ADD7F: dw $015A ; scanline 44\n #_0ADD81: dw $0159 ; scanline 45\n #_0ADD83: dw $0159 ; scanline 46\n #_0ADD85: dw $0158 ; scanline 47\n #_0ADD87: dw $0157 ; scanline 48\n #_0ADD89: dw $0157 ; scanline 49\n #_0ADD8B: dw $0156 ; scanline 50\n #_0ADD8D: dw $0156 ; scanline 51\n #_0ADD8F: dw $0155 ; scanline 52\n #_0ADD91: dw $0155 ; scanline 53\n #_0ADD93: dw $0154 ; scanline 54\n #_0ADD95: dw $0153 ; scanline 55\n #_0ADD97: dw $0153 ; scanline 56\n #_0ADD99: dw $0152 ; scanline 57\n #_0ADD9B: dw $0152 ; scanline 58\n #_0ADD9D: dw $0151 ; scanline 59\n #_0ADD9F: dw $0151 ; scanline 60\n #_0ADDA1: dw $0150 ; scanline 61\n #_0ADDA3: dw $014F ; scanline 62\n #_0ADDA5: dw $014F ; scanline 63\n #_0ADDA7: dw $014E ; scanline 64\n #_0ADDA9: dw $014E ; scanline 65\n #_0ADDAB: dw $014D ; scanline 66\n #_0ADDAD: dw $014D ; scanline 67\n #_0ADDAF: dw $014C ; scanline 68\n #_0ADDB1: dw $014C ; scanline 69\n #_0ADDB3: dw $014B ; scanline 70\n #_0ADDB5: dw $014B ; scanline 71\n #_0ADDB7: dw $014A ; scanline 72\n #_0ADDB9: dw $014A ; scanline 73\n #_0ADDBB: dw $0148 ; scanline 74\n #_0ADDBD: dw $0147 ; scanline 75\n #_0ADDBF: dw $0147 ; scanline 76\n #_0ADDC1: dw $0146 ; scanline 77\n #_0ADDC3: dw $0146 ; scanline 78\n #_0ADDC5: dw $0145 ; scanline 79\n #_0ADDC7: dw $0145 ; scanline 80\n #_0ADDC9: dw $0144 ; scanline 81\n #_0ADDCB: dw $0144 ; scanline 82\n #_0ADDCD: dw $0143 ; scanline 83\n #_0ADDCF: dw $0143 ; scanline 84\n #_0ADDD1: dw $0142 ; scanline 85\n #_0ADDD3: dw $0142 ; scanline 86\n #_0ADDD5: dw $0141 ; scanline 87\n #_0ADDD7: dw $0141 ; scanline 88\n #_0ADDD9: dw $0140 ; scanline 89\n #_0ADDDB: dw $0140 ; scanline 90\n #_0ADDDD: dw $013F ; scanline 91\n #_0ADDDF: dw $013F ; scanline 92\n #_0ADDE1: dw $013E ; scanline 93\n #_0ADDE3: dw $013E ; scanline 94\n #_0ADDE5: dw $013D ; scanline 95\n #_0ADDE7: dw $013D ; scanline 96\n #_0ADDE9: dw $013C ; scanline 97\n #_0ADDEB: dw $013C ; scanline 98\n #_0ADDED: dw $013B ; scanline 99\n #_0ADDEF: dw $013B ; scanline 100\n #_0ADDF1: dw $013A ; scanline 101\n #_0ADDF3: dw $013A ; scanline 102\n #_0ADDF5: dw $0139 ; scanline 103\n #_0ADDF7: dw $0139 ; scanline 104\n #_0ADDF9: dw $0138 ; scanline 105\n #_0ADDFB: dw $0138 ; scanline 106\n #_0ADDFD: dw $0137 ; scanline 107\n #_0ADDFF: dw $0137 ; scanline 108\n #_0ADE01: dw $0136 ; scanline 109\n #_0ADE03: dw $0136 ; scanline 110\n #_0ADE05: dw $0135 ; scanline 111\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedOut_Part2", + "code": "WorldMapHDMA_ZoomedOut_Part2:\n #_0ADE07: dw $0135 ; scanline 112\n #_0ADE09: dw $0135 ; scanline 113\n #_0ADE0B: dw $0134 ; scanline 114\n #_0ADE0D: dw $0134 ; scanline 115\n #_0ADE0F: dw $0133 ; scanline 116\n #_0ADE11: dw $0133 ; scanline 117\n #_0ADE13: dw $0132 ; scanline 118\n #_0ADE15: dw $0132 ; scanline 119\n #_0ADE17: dw $0131 ; scanline 120\n #_0ADE19: dw $0131 ; scanline 121\n #_0ADE1B: dw $0130 ; scanline 122\n #_0ADE1D: dw $0130 ; scanline 123\n #_0ADE1F: dw $012F ; scanline 124\n #_0ADE21: dw $012F ; scanline 125\n #_0ADE23: dw $012F ; scanline 126\n #_0ADE25: dw $012E ; scanline 127\n #_0ADE27: dw $012E ; scanline 128\n #_0ADE29: dw $012D ; scanline 129\n #_0ADE2B: dw $012D ; scanline 130\n #_0ADE2D: dw $012C ; scanline 131\n #_0ADE2F: dw $012C ; scanline 132\n #_0ADE31: dw $012B ; scanline 133\n #_0ADE33: dw $012B ; scanline 134\n #_0ADE35: dw $012B ; scanline 135\n #_0ADE37: dw $012A ; scanline 136\n #_0ADE39: dw $012A ; scanline 137\n #_0ADE3B: dw $0129 ; scanline 138\n #_0ADE3D: dw $0129 ; scanline 139\n #_0ADE3F: dw $0127 ; scanline 140\n #_0ADE41: dw $0127 ; scanline 141\n #_0ADE43: dw $0126 ; scanline 142\n #_0ADE45: dw $0126 ; scanline 143\n #_0ADE47: dw $0126 ; scanline 144\n #_0ADE49: dw $0125 ; scanline 145\n #_0ADE4B: dw $0125 ; scanline 146\n #_0ADE4D: dw $0124 ; scanline 147\n #_0ADE4F: dw $0124 ; scanline 148\n #_0ADE51: dw $0124 ; scanline 149\n #_0ADE53: dw $0123 ; scanline 150\n #_0ADE55: dw $0123 ; scanline 151\n #_0ADE57: dw $0122 ; scanline 152\n #_0ADE59: dw $0122 ; scanline 153\n #_0ADE5B: dw $0121 ; scanline 154\n #_0ADE5D: dw $0121 ; scanline 155\n #_0ADE5F: dw $0121 ; scanline 156\n #_0ADE61: dw $0120 ; scanline 157\n #_0ADE63: dw $0120 ; scanline 158\n #_0ADE65: dw $011F ; scanline 159\n #_0ADE67: dw $011F ; scanline 160\n #_0ADE69: dw $011F ; scanline 161\n #_0ADE6B: dw $011E ; scanline 162\n #_0ADE6D: dw $011E ; scanline 163\n #_0ADE6F: dw $011D ; scanline 164\n #_0ADE71: dw $011D ; scanline 165\n #_0ADE73: dw $011D ; scanline 166\n #_0ADE75: dw $011C ; scanline 167\n #_0ADE77: dw $011C ; scanline 168\n #_0ADE79: dw $011B ; scanline 169\n #_0ADE7B: dw $011B ; scanline 170\n #_0ADE7D: dw $011B ; scanline 171\n #_0ADE7F: dw $011A ; scanline 172\n #_0ADE81: dw $011A ; scanline 173\n #_0ADE83: dw $0119 ; scanline 174\n #_0ADE85: dw $0119 ; scanline 175\n #_0ADE87: dw $0119 ; scanline 176\n #_0ADE89: dw $0118 ; scanline 177\n #_0ADE8B: dw $0118 ; scanline 178\n #_0ADE8D: dw $0117 ; scanline 179\n #_0ADE8F: dw $0117 ; scanline 180\n #_0ADE91: dw $0117 ; scanline 181\n #_0ADE93: dw $0116 ; scanline 182\n #_0ADE95: dw $0116 ; scanline 183\n #_0ADE97: dw $0116 ; scanline 184\n #_0ADE99: dw $0115 ; scanline 185\n #_0ADE9B: dw $0115 ; scanline 186\n #_0ADE9D: dw $0114 ; scanline 187\n #_0ADE9F: dw $0114 ; scanline 188\n #_0ADEA1: dw $0114 ; scanline 189\n #_0ADEA3: dw $0113 ; scanline 190\n #_0ADEA5: dw $0113 ; scanline 191\n #_0ADEA7: dw $0113 ; scanline 192\n #_0ADEA9: dw $0112 ; scanline 193\n #_0ADEAB: dw $0112 ; scanline 194\n #_0ADEAD: dw $0111 ; scanline 195\n #_0ADEAF: dw $0111 ; scanline 196\n #_0ADEB1: dw $0111 ; scanline 197\n #_0ADEB3: dw $0110 ; scanline 198\n #_0ADEB5: dw $0110 ; scanline 199\n #_0ADEB7: dw $0110 ; scanline 200\n #_0ADEB9: dw $010F ; scanline 201\n #_0ADEBB: dw $010F ; scanline 202\n #_0ADEBD: dw $010F ; scanline 203\n #_0ADEBF: dw $010E ; scanline 204\n #_0ADEC1: dw $010E ; scanline 205\n #_0ADEC3: dw $010D ; scanline 206\n #_0ADEC5: dw $010D ; scanline 207\n #_0ADEC7: dw $010D ; scanline 208\n #_0ADEC9: dw $010C ; scanline 209\n #_0ADECB: dw $010C ; scanline 210\n #_0ADECD: dw $010C ; scanline 211\n #_0ADECF: dw $010B ; scanline 212\n #_0ADED1: dw $010B ; scanline 213\n #_0ADED3: dw $010B ; scanline 214\n #_0ADED5: dw $010A ; scanline 215\n #_0ADED7: dw $010A ; scanline 216\n #_0ADED9: dw $010A ; scanline 217\n #_0ADEDB: dw $0109 ; scanline 218\n #_0ADEDD: dw $0109 ; scanline 219\n #_0ADEDF: dw $0109 ; scanline 220\n #_0ADEE1: dw $0108 ; scanline 221\n #_0ADEE3: dw $0108 ; scanline 222\n #_0ADEE5: dw $0108 ; scanline 223\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedIn_Part1", + "code": "WorldMapHDMA_ZoomedIn_Part1:\n #_0ADEE7: dw $0088 ; scanline 0\n #_0ADEE9: dw $0088 ; scanline 1\n #_0ADEEB: dw $0087 ; scanline 2\n #_0ADEED: dw $0087 ; scanline 3\n #_0ADEEF: dw $0087 ; scanline 4\n #_0ADEF1: dw $0087 ; scanline 5\n #_0ADEF3: dw $0087 ; scanline 6\n #_0ADEF5: dw $0086 ; scanline 7\n #_0ADEF7: dw $0086 ; scanline 8\n #_0ADEF9: dw $0086 ; scanline 9\n #_0ADEFB: dw $0085 ; scanline 10\n #_0ADEFD: dw $0085 ; scanline 11\n #_0ADEFF: dw $0085 ; scanline 12\n #_0ADF01: dw $0085 ; scanline 13\n #_0ADF03: dw $0084 ; scanline 14\n #_0ADF05: dw $0084 ; scanline 15\n #_0ADF07: dw $0084 ; scanline 16\n #_0ADF09: dw $0084 ; scanline 17\n #_0ADF0B: dw $0084 ; scanline 18\n #_0ADF0D: dw $0083 ; scanline 19\n #_0ADF0F: dw $0083 ; scanline 20\n #_0ADF11: dw $0083 ; scanline 21\n #_0ADF13: dw $0082 ; scanline 22\n #_0ADF15: dw $0082 ; scanline 23\n #_0ADF17: dw $0082 ; scanline 24\n #_0ADF19: dw $0082 ; scanline 25\n #_0ADF1B: dw $0082 ; scanline 26\n #_0ADF1D: dw $0081 ; scanline 27\n #_0ADF1F: dw $0081 ; scanline 28\n #_0ADF21: dw $0081 ; scanline 29\n #_0ADF23: dw $0081 ; scanline 30\n #_0ADF25: dw $0081 ; scanline 31\n #_0ADF27: dw $0080 ; scanline 32\n #_0ADF29: dw $0080 ; scanline 33\n #_0ADF2B: dw $0080 ; scanline 34\n #_0ADF2D: dw $007F ; scanline 35\n #_0ADF2F: dw $007F ; scanline 36\n #_0ADF31: dw $007F ; scanline 37\n #_0ADF33: dw $007F ; scanline 38\n #_0ADF35: dw $007F ; scanline 39\n #_0ADF37: dw $007E ; scanline 40\n #_0ADF39: dw $007E ; scanline 41\n #_0ADF3B: dw $007E ; scanline 42\n #_0ADF3D: dw $007E ; scanline 43\n #_0ADF3F: dw $007E ; scanline 44\n #_0ADF41: dw $007D ; scanline 45\n #_0ADF43: dw $007D ; scanline 46\n #_0ADF45: dw $007D ; scanline 47\n #_0ADF47: dw $007C ; scanline 48\n #_0ADF49: dw $007C ; scanline 49\n #_0ADF4B: dw $007C ; scanline 50\n #_0ADF4D: dw $007C ; scanline 51\n #_0ADF4F: dw $007C ; scanline 52\n #_0ADF51: dw $007C ; scanline 53\n #_0ADF53: dw $007B ; scanline 54\n #_0ADF55: dw $007B ; scanline 55\n #_0ADF57: dw $007B ; scanline 56\n #_0ADF59: dw $007B ; scanline 57\n #_0ADF5B: dw $007B ; scanline 58\n #_0ADF5D: dw $007A ; scanline 59\n #_0ADF5F: dw $007A ; scanline 60\n #_0ADF61: dw $007A ; scanline 61\n #_0ADF63: dw $0079 ; scanline 62\n #_0ADF65: dw $0079 ; scanline 63\n #_0ADF67: dw $0079 ; scanline 64\n #_0ADF69: dw $0079 ; scanline 65\n #_0ADF6B: dw $0079 ; scanline 66\n #_0ADF6D: dw $0079 ; scanline 67\n #_0ADF6F: dw $0078 ; scanline 68\n #_0ADF71: dw $0078 ; scanline 69\n #_0ADF73: dw $0078 ; scanline 70\n #_0ADF75: dw $0078 ; scanline 71\n #_0ADF77: dw $0078 ; scanline 72\n #_0ADF79: dw $0078 ; scanline 73\n #_0ADF7B: dw $0077 ; scanline 74\n #_0ADF7D: dw $0077 ; scanline 75\n #_0ADF7F: dw $0077 ; scanline 76\n #_0ADF81: dw $0076 ; scanline 77\n #_0ADF83: dw $0076 ; scanline 78\n #_0ADF85: dw $0076 ; scanline 79\n #_0ADF87: dw $0076 ; scanline 80\n #_0ADF89: dw $0076 ; scanline 81\n #_0ADF8B: dw $0076 ; scanline 82\n #_0ADF8D: dw $0075 ; scanline 83\n #_0ADF8F: dw $0075 ; scanline 84\n #_0ADF91: dw $0075 ; scanline 85\n #_0ADF93: dw $0075 ; scanline 86\n #_0ADF95: dw $0075 ; scanline 87\n #_0ADF97: dw $0075 ; scanline 88\n #_0ADF99: dw $0074 ; scanline 89\n #_0ADF9B: dw $0074 ; scanline 90\n #_0ADF9D: dw $0074 ; scanline 91\n #_0ADF9F: dw $0074 ; scanline 92\n #_0ADFA1: dw $0073 ; scanline 93\n #_0ADFA3: dw $0073 ; scanline 94\n #_0ADFA5: dw $0073 ; scanline 95\n #_0ADFA7: dw $0073 ; scanline 96\n #_0ADFA9: dw $0073 ; scanline 97\n #_0ADFAB: dw $0073 ; scanline 98\n #_0ADFAD: dw $0072 ; scanline 99\n #_0ADFAF: dw $0072 ; scanline 100\n #_0ADFB1: dw $0072 ; scanline 101\n #_0ADFB3: dw $0072 ; scanline 102\n #_0ADFB5: dw $0072 ; scanline 103\n #_0ADFB7: dw $0072 ; scanline 104\n #_0ADFB9: dw $0071 ; scanline 105\n #_0ADFBB: dw $0071 ; scanline 106\n #_0ADFBD: dw $0071 ; scanline 107\n #_0ADFBF: dw $0071 ; scanline 108\n #_0ADFC1: dw $0070 ; scanline 109\n #_0ADFC3: dw $0070 ; scanline 110\n #_0ADFC5: dw $0070 ; scanline 111\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "WorldMapHDMA_ZoomedIn_Part2", + "code": "WorldMapHDMA_ZoomedIn_Part2:\n #_0ADFC7: dw $0070 ; scanline 112\n #_0ADFC9: dw $0070 ; scanline 113\n #_0ADFCB: dw $0070 ; scanline 114\n #_0ADFCD: dw $0070 ; scanline 115\n #_0ADFCF: dw $006F ; scanline 116\n #_0ADFD1: dw $006F ; scanline 117\n #_0ADFD3: dw $006F ; scanline 118\n #_0ADFD5: dw $006F ; scanline 119\n #_0ADFD7: dw $006F ; scanline 120\n #_0ADFD9: dw $006F ; scanline 121\n #_0ADFDB: dw $006E ; scanline 122\n #_0ADFDD: dw $006E ; scanline 123\n #_0ADFDF: dw $006E ; scanline 124\n #_0ADFE1: dw $006E ; scanline 125\n #_0ADFE3: dw $006E ; scanline 126\n #_0ADFE5: dw $006D ; scanline 127\n #_0ADFE7: dw $006D ; scanline 128\n #_0ADFE9: dw $006D ; scanline 129\n #_0ADFEB: dw $006D ; scanline 130\n #_0ADFED: dw $006D ; scanline 131\n #_0ADFEF: dw $006D ; scanline 132\n #_0ADFF1: dw $006C ; scanline 133\n #_0ADFF3: dw $006C ; scanline 134\n #_0ADFF5: dw $006C ; scanline 135\n #_0ADFF7: dw $006C ; scanline 136\n #_0ADFF9: dw $006C ; scanline 137\n #_0ADFFB: dw $006C ; scanline 138\n #_0ADFFD: dw $006C ; scanline 139\n #_0ADFFF: dw $006B ; scanline 140\n #_0AE001: dw $006B ; scanline 141\n #_0AE003: dw $006B ; scanline 142\n #_0AE005: dw $006B ; scanline 143\n #_0AE007: dw $006B ; scanline 144\n #_0AE009: dw $006A ; scanline 145\n #_0AE00B: dw $006A ; scanline 146\n #_0AE00D: dw $006A ; scanline 147\n #_0AE00F: dw $006A ; scanline 148\n #_0AE011: dw $006A ; scanline 149\n #_0AE013: dw $006A ; scanline 150\n #_0AE015: dw $006A ; scanline 151\n #_0AE017: dw $0069 ; scanline 152\n #_0AE019: dw $0069 ; scanline 153\n #_0AE01B: dw $0069 ; scanline 154\n #_0AE01D: dw $0069 ; scanline 155\n #_0AE01F: dw $0069 ; scanline 156\n #_0AE021: dw $0069 ; scanline 157\n #_0AE023: dw $0069 ; scanline 158\n #_0AE025: dw $0068 ; scanline 159\n #_0AE027: dw $0068 ; scanline 160\n #_0AE029: dw $0068 ; scanline 161\n #_0AE02B: dw $0068 ; scanline 162\n #_0AE02D: dw $0068 ; scanline 163\n #_0AE02F: dw $0067 ; scanline 164\n #_0AE031: dw $0067 ; scanline 165\n #_0AE033: dw $0067 ; scanline 166\n #_0AE035: dw $0067 ; scanline 167\n #_0AE037: dw $0067 ; scanline 168\n #_0AE039: dw $0067 ; scanline 169\n #_0AE03B: dw $0067 ; scanline 170\n #_0AE03D: dw $0067 ; scanline 171\n #_0AE03F: dw $0066 ; scanline 172\n #_0AE041: dw $0066 ; scanline 173\n #_0AE043: dw $0066 ; scanline 174\n #_0AE045: dw $0066 ; scanline 175\n #_0AE047: dw $0066 ; scanline 176\n #_0AE049: dw $0066 ; scanline 177\n #_0AE04B: dw $0066 ; scanline 178\n #_0AE04D: dw $0065 ; scanline 179\n #_0AE04F: dw $0065 ; scanline 180\n #_0AE051: dw $0065 ; scanline 181\n #_0AE053: dw $0065 ; scanline 182\n #_0AE055: dw $0065 ; scanline 183\n #_0AE057: dw $0065 ; scanline 184\n #_0AE059: dw $0064 ; scanline 185\n #_0AE05B: dw $0064 ; scanline 186\n #_0AE05D: dw $0064 ; scanline 187\n #_0AE05F: dw $0064 ; scanline 188\n #_0AE061: dw $0064 ; scanline 189\n #_0AE063: dw $0064 ; scanline 190\n #_0AE065: dw $0064 ; scanline 191\n #_0AE067: dw $0064 ; scanline 192\n #_0AE069: dw $0063 ; scanline 193\n #_0AE06B: dw $0063 ; scanline 194\n #_0AE06D: dw $0063 ; scanline 195\n #_0AE06F: dw $0063 ; scanline 196\n #_0AE071: dw $0063 ; scanline 197\n #_0AE073: dw $0063 ; scanline 198\n #_0AE075: dw $0063 ; scanline 199\n #_0AE077: dw $0063 ; scanline 200\n #_0AE079: dw $0062 ; scanline 201\n #_0AE07B: dw $0062 ; scanline 202\n #_0AE07D: dw $0062 ; scanline 203\n #_0AE07F: dw $0062 ; scanline 204\n #_0AE081: dw $0062 ; scanline 205\n #_0AE083: dw $0061 ; scanline 206\n #_0AE085: dw $0061 ; scanline 207\n #_0AE087: dw $0061 ; scanline 208\n #_0AE089: dw $0061 ; scanline 209\n #_0AE08B: dw $0061 ; scanline 210\n #_0AE08D: dw $0061 ; scanline 211\n #_0AE08F: dw $0061 ; scanline 212\n #_0AE091: dw $0061 ; scanline 213\n #_0AE093: dw $0061 ; scanline 214\n #_0AE095: dw $0060 ; scanline 215\n #_0AE097: dw $0060 ; scanline 216\n #_0AE099: dw $0060 ; scanline 217\n #_0AE09B: dw $0060 ; scanline 218\n #_0AE09D: dw $0060 ; scanline 219\n #_0AE09F: dw $0060 ; scanline 220\n #_0AE0A1: dw $0060 ; scanline 221\n #_0AE0A3: dw $0060 ; scanline 222\n #_0AE0A5: dw $0060 ; scanline 223\n\n; =========================================================\n; FREE ROM: 0x09\n; =========================================================", + "file": "bank_0A.asm" + }, + { + "name": "NULL_0AE0A7", + "code": "NULL_0AE0A7:\n #_0AE0A7: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AE0AF: db $FF\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_UnderworldMap", + "code": "Module0E_03_UnderworldMap:\n #_0AE0B0: LDA.w $0200\n #_0AE0B3: JSL JumpTableLong\n #_0AE0B7: dl Module0E_03_00_DarkenAndPrep ; 0x00\n #_0AE0BA: dl Module0E_03_01_DrawMap ; 0x01\n #_0AE0BD: dl Module0E_03_02_BrightenMap ; 0x02\n #_0AE0C0: dl DungeonMap_HandleInputAndSprites ; 0x03\n #_0AE0C3: dl Module0E_03_04_UnusedCrazyScroll ; 0x04\n #_0AE0C6: dl UnderworldMap_RecoverRegisters ; 0x05\n #_0AE0C9: dl UnderworldMap_RecoverGFX ; 0x06\n #_0AE0CC: dl ToggleStarTilesAndAdvance ; 0x07\n #_0AE0CF: dl UnderworldMap_RecoverLightCone ; 0x08\n\n; =========================================================\n\npool Module0E_03_01_DrawMap\n\n.vectors\n #_0AE0D2: dw Module0E_03_01_00_PrepMapGraphics\n #_0AE0D4: dw Module0E_03_01_01_DrawLEVEL\n #_0AE0D6: dw Module0E_03_01_02_DrawFloorsBackdrop\n #_0AE0D8: dw Module0E_03_01_03_DrawRooms\n #_0AE0DA: dw DungeonMap_DrawRoomMarkers\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_01_DrawMap", + "code": "Module0E_03_01_DrawMap:\n #_0AE0DC: LDA.w $020D\n #_0AE0DF: ASL A\n #_0AE0E0: TAX\n\n #_0AE0E1: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_01_00_PrepMapGraphics", + "code": "Module0E_03_01_00_PrepMapGraphics:\n #_0AE0E4: LDA.b $9B\n #_0AE0E6: PHA\n\n #_0AE0E7: STZ.w HDMAEN\n #_0AE0EA: STZ.b $9B\n\n #_0AE0EC: LDA.w $0AA1\n #_0AE0EF: STA.l $7EC20E\n\n #_0AE0F3: LDA.w $0AA3\n #_0AE0F6: STA.l $7EC20F\n\n #_0AE0FA: LDA.w $0AA2\n #_0AE0FD: STA.l $7EC210\n\n; ---------------------------------------------------------\n\n #_0AE101: LDA.b $1C\n #_0AE103: STA.l $7EC211\n\n #_0AE107: LDA.b $1D\n #_0AE109: STA.l $7EC212\n\n; ---------------------------------------------------------\n\n #_0AE10D: LDA.b #$20\n #_0AE10F: STA.w $0AA1\n\n #_0AE112: LDA.w $040C\n #_0AE115: LSR A\n #_0AE116: ORA.b #$80\n #_0AE118: STA.w $0AA3\n\n #_0AE11B: LDA.b #$40\n #_0AE11D: STA.w $0AA2\n\n #_0AE120: LDA.b #$16\n #_0AE122: STA.b $1C\n\n #_0AE124: LDA.b #$01\n #_0AE126: STA.b $1D\n\n #_0AE128: JSL EraseTilemaps_dungeonmap\n #_0AE12C: JSL InitializeTilesets\n\n #_0AE130: LDA.b #$02\n #_0AE132: STA.w $0AA9\n #_0AE135: JSL Palettes_Load_DungeonMapBG\n #_0AE139: JSL Palettes_Load_DungeonMapSprite\n\n #_0AE13D: LDA.b #$01\n #_0AE13F: STA.w $0AB2\n #_0AE142: JSL Palettes_Load_HUD\n #_0AE146: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n #_0AE14A: INC.b $15\n\n #_0AE14C: INC.w $020D\n\n #_0AE14F: PLA\n #_0AE150: STA.b $9B\n\n #_0AE152: LDA.b #$09\n #_0AE154: STA.b $14\n #_0AE156: STA.w $0710\n\n #_0AE159: RTL", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_01_01_DrawLEVEL", + "code": "Module0E_03_01_01_DrawLEVEL:\n #_0AE1A4: PHB\n #_0AE1A5: PHK\n #_0AE1A6: PLB\n\n #_0AE1A7: LDA.w $040C\n #_0AE1AA: LSR A\n #_0AE1AB: TAX\n\n #_0AE1AC: LDY.w .dungeon_level,X\n #_0AE1AF: BMI .not_darkworld_dungeon\n\n #_0AE1B1: LDA.b #$FF\n #_0AE1B3: STA.w $1022\n\n #_0AE1B6: LDX.b #$0E\n\n #_0AE1B8: REP #$20\n\n #_0AE1BA: LDA.w .numerals_top,Y\n #_0AE1BD: STA.w $1002,X\n\n #_0AE1C0: LDA.w .numerals_bottom,Y\n #_0AE1C3: STA.w $1012,X\n\n; ---------------------------------------------------------\n\n #_0AE1C6: SEP #$20\n\n #_0AE1C8: DEX\n\n.next_letter\n #_0AE1C9: LDA.w .LEVEL_top,X\n #_0AE1CC: STA.w $1002,X\n\n #_0AE1CF: LDA.w .LEVEL_bottom,X\n #_0AE1D2: STA.w $1012,X\n\n #_0AE1D5: DEX\n #_0AE1D6: BPL .next_letter\n\n #_0AE1D8: LDA.b #$01\n #_0AE1DA: STA.b $14\n\n; ---------------------------------------------------------\n\n.not_darkworld_dungeon\n #_0AE1DC: INC.w $020D\n\n #_0AE1DF: PLB\n\n #_0AE1E0: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_BackdropFloorPosition", + "code": "DungeonMap_BackdropFloorPosition:\n #_0AE1E1: dw $1223 ; 4B-4F | VRAM $2446\n #_0AE1E3: dw $1263 ; 5F | VRAM $24C6\n #_0AE1E5: dw $12A3 ; 6F | VRAM $2546\n #_0AE1E7: dw $12E3 ; 7F | VRAM $25C6\n #_0AE1E9: dw $1323 ; 8F | VRAM $2646\n\n #_0AE1EB: dw $11E3 ; 5B | VRAM $23C6\n #_0AE1ED: dw $11A3 ; 6B | VRAM $2346\n #_0AE1EF: dw $1163 ; 7B | VRAM $22C6\n #_0AE1F1: dw $1123 ; 8B | VRAM $2246\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_01_02_DrawFloorsBackdrop", + "code": "Module0E_03_01_02_DrawFloorsBackdrop:\n #_0AE1F3: PHB\n #_0AE1F4: PHK\n #_0AE1F5: PLB\n\n #_0AE1F6: REP #$30\n\n #_0AE1F8: STZ.w $1000\n\n #_0AE1FB: LDX.w $040C\n #_0AE1FE: PHX\n\n #_0AE1FF: LDA.w DungeonMapFloorCountData,X\n\n #_0AE202: AND.w #$0300\n #_0AE205: BEQ .no_mountain\n\n #_0AE207: AND.w #$0100\n #_0AE20A: BEQ .no_mountain\n\n #_0AE20C: LDX.w #$002A\n #_0AE20F: PHX\n\n.next_copy\n #_0AE210: LDA.w DungeonMap_MountainStripes-2,X\n #_0AE213: STA.w $1000,X\n\n #_0AE216: DEX\n #_0AE217: DEX\n #_0AE218: BNE .next_copy\n\n; ---------------------------------------------------------\n\n #_0AE21A: PLX\n\n #_0AE21B: LDA.w #$1123 ; VRAM $2246\n #_0AE21E: STA.b $00\n\n #_0AE220: LDY.w #$0010\n\n.next_mountain_fill_stripe\n #_0AE223: LDA.b $00\n\n #_0AE225: XBA\n #_0AE226: STA.w $1002,X\n #_0AE229: XBA\n\n #_0AE22A: CLC\n #_0AE22B: ADC.w #$0020\n #_0AE22E: STA.b $00\n\n #_0AE230: LDA.w #$0E40\n #_0AE233: STA.w $1004,X\n\n #_0AE236: LDA.w #$1B2E\n #_0AE239: STA.w $1006,X\n\n #_0AE23C: INX\n #_0AE23D: INX\n #_0AE23E: INX\n #_0AE23F: INX\n #_0AE240: INX\n #_0AE241: INX\n\n #_0AE242: DEY\n #_0AE243: BNE .next_mountain_fill_stripe\n\n #_0AE245: STX.w $1000\n\n.no_mountain\n #_0AE248: STZ.b $00\n #_0AE24A: STZ.b $02\n\n #_0AE24C: LDX.w $040C\n\n #_0AE24F: LDA.w DungeonMapFloorCountData,X\n #_0AE252: AND.w #$00FF\n #_0AE255: CMP.w #$0050\n #_0AE258: BCC .fewer_than_5_above\n\n #_0AE25A: LSR A\n #_0AE25B: LSR A\n #_0AE25C: LSR A\n #_0AE25D: LSR A\n\n #_0AE25E: SEC\n #_0AE25F: SBC.w #$0004\n\n #_0AE262: ASL A\n #_0AE263: STA.b $00\n\n #_0AE265: BRA .done_floor_counting\n\n.fewer_than_5_above\n #_0AE267: AND.w #$000F\n #_0AE26A: CMP.w #$0005\n #_0AE26D: BCC .done_floor_counting\n\n #_0AE26F: ASL A\n #_0AE270: STA.b $00\n\n; ---------------------------------------------------------\n\n.done_floor_counting\n #_0AE272: LDX.b $00\n #_0AE274: LDY.w $1000\n\n #_0AE277: LDA.w DungeonMap_BackdropFloorPosition,X\n #_0AE27A: STA.b $00\n #_0AE27C: STA.b $0E\n\n.next_floor_stripe\n #_0AE27E: LDA.b $00\n #_0AE280: XBA\n\n #_0AE281: STA.w $1002,Y\n\n #_0AE284: INY\n #_0AE285: INY\n\n #_0AE286: LDA.w #$0E40\n #_0AE289: STA.w $1002,Y\n\n #_0AE28C: INY\n #_0AE28D: INY\n\n #_0AE28E: LDX.b $02\n\n #_0AE290: LDA.w DungeonMap_BackdropFloorGradientTiles,X\n #_0AE293: STA.b $04\n\n #_0AE295: LDX.w $040C\n\n #_0AE298: LDA.w DungeonMapFloorCountData,X\n #_0AE29B: AND.w #$0200\n #_0AE29E: BEQ .not_ocean\n\n #_0AE2A0: LDA.b $04\n #_0AE2A2: CLC\n #_0AE2A3: ADC.w #$0400\n #_0AE2A6: STA.b $04\n\n.not_ocean\n #_0AE2A8: LDA.b $04\n #_0AE2AA: STA.w $1002,Y\n\n #_0AE2AD: INY\n #_0AE2AE: INY\n\n #_0AE2AF: LDA.b $02\n #_0AE2B1: CMP.w #$000C\n #_0AE2B4: BEQ .gradient_finished\n\n #_0AE2B6: INC.b $02\n #_0AE2B8: INC.b $02\n\n.gradient_finished\n #_0AE2BA: LDA.b $00\n #_0AE2BC: CLC\n #_0AE2BD: ADC.w #$0020\n #_0AE2C0: STA.b $00\n\n #_0AE2C2: CMP.w #$1360 ; VRAM $26C0\n #_0AE2C5: BCC .next_floor_stripe\n\n; ---------------------------------------------------------\n\n #_0AE2C7: STY.w $1000\n\n #_0AE2CA: SEP #$20\n\n #_0AE2CC: PLX\n #_0AE2CD: JSR DungeonMap_BuildFloorListBoxes\n\n #_0AE2D0: REP #$10\n\n #_0AE2D2: LDY.w $1000\n\n #_0AE2D5: LDA.b #$FF\n #_0AE2D7: STA.w $1002,Y\n\n #_0AE2DA: SEP #$10\n\n #_0AE2DC: INC.w $020D\n\n #_0AE2DF: LDA.b #$01\n #_0AE2E1: STA.b $14\n\n #_0AE2E3: PLB\n\n #_0AE2E4: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_BuildFloorListBoxes", + "code": "DungeonMap_BuildFloorListBoxes:\n #_0AE2F5: REP #$20\n\n #_0AE2F7: LDA.w DungeonMapFloorCountData,X\n #_0AE2FA: AND.w #$00FF\n #_0AE2FD: STA.b $02\n\n #_0AE2FF: AND.w #$000F\n #_0AE302: STA.b $00\n\n #_0AE304: LDA.b $02\n\n #_0AE306: LSR A\n #_0AE307: LSR A\n #_0AE308: LSR A\n #_0AE309: LSR A\n\n #_0AE30A: CLC\n #_0AE30B: ADC.b $00\n #_0AE30D: STA.b $02\n\n #_0AE30F: LDA.b $A4\n #_0AE311: CLC\n #_0AE312: ADC.b $00\n #_0AE314: AND.w #$00FF\n #_0AE317: STA.b $0C\n\n #_0AE319: STZ.b $0A\n\n #_0AE31B: LDA.b $0E\n #_0AE31D: SEC\n #_0AE31E: SBC.w #$0040\n #_0AE321: CLC\n #_0AE322: ADC.w #$0002\n #_0AE325: STA.b $0E\n\n #_0AE327: LDX.b $00\n #_0AE329: BEQ .no_basement\n\n #_0AE32B: LDA.b $0E\n\n.scroll_floors\n #_0AE32D: CLC\n #_0AE32E: ADC.w #$0040\n\n #_0AE331: DEX\n #_0AE332: BNE .scroll_floors\n\n #_0AE334: STA.b $0E\n\n.no_basement\n #_0AE336: REP #$10\n\n #_0AE338: LDY.w $1000\n\n.next_box\n #_0AE33B: LDX.w #$0000\n\n #_0AE33E: LDA.b $0E\n\n.do_next_row\n #_0AE340: XBA\n #_0AE341: STA.w $1002,Y\n\n #_0AE344: INY\n #_0AE345: INY\n\n #_0AE346: LDA.w #$0700\n #_0AE349: STA.w $1002,Y\n\n #_0AE34C: INY\n #_0AE34D: INY\n\n.next_tile_to_stripe\n #_0AE34E: LDA.w .tiles,X\n #_0AE351: STA.w $1002,Y\n\n #_0AE354: INY\n #_0AE355: INY\n\n #_0AE356: INX\n #_0AE357: INX\n #_0AE358: CPX.w #$0008\n #_0AE35B: BCC .next_tile_to_stripe\n #_0AE35D: BEQ .set_up_box_bottom\n\n #_0AE35F: CPX.w #$0010\n #_0AE362: BNE .next_tile_to_stripe\n\n #_0AE364: BRA .box_done\n\n.set_up_box_bottom\n #_0AE366: LDA.b $0E\n #_0AE368: CLC\n #_0AE369: ADC.w #$0020\n\n #_0AE36C: BRA .do_next_row\n\n.box_done\n #_0AE36E: LDA.b $0E\n #_0AE370: SEC\n #_0AE371: SBC.w #$0040\n #_0AE374: STA.b $0E\n\n #_0AE376: INC.b $0A\n\n #_0AE378: LDA.b $0A\n #_0AE37A: CMP.b $02\n #_0AE37C: BMI .next_box\n\n #_0AE37E: STY.w $1000\n\n #_0AE381: SEP #$30\n\n #_0AE383: RTS", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_01_03_DrawRooms", + "code": "Module0E_03_01_03_DrawRooms:\n #_0AE384: PHB\n #_0AE385: PHK\n #_0AE386: PLB\n\n #_0AE387: STZ.w $0210\n\n #_0AE38A: REP #$30\n\n #_0AE38C: STZ.b $00\n #_0AE38E: STZ.b $02\n #_0AE390: STZ.b $04\n #_0AE392: STZ.b $06\n #_0AE394: STZ.b $08\n #_0AE396: STZ.b $0A\n #_0AE398: STZ.b $0C\n\n #_0AE39A: STZ.w $0211\n\n #_0AE39D: LDX.w $040C\n\n #_0AE3A0: LDA.w DungeonMapFloorCountData,X\n #_0AE3A3: AND.w #$000F\n\n #_0AE3A6: EOR.w #$00FF\n #_0AE3A9: INC A\n\n #_0AE3AA: AND.w #$00FF\n\n #_0AE3AD: CMP.b $A4\n #_0AE3AF: BEQ .on_this_floor\n\n #_0AE3B1: LDA.b $A4\n #_0AE3B3: AND.w #$00FF\n #_0AE3B6: STA.w $020E\n\n #_0AE3B9: BRA .continue\n\n.on_this_floor\n #_0AE3BB: LDA.b $A4\n #_0AE3BD: INC A\n #_0AE3BE: STA.w $020E\n\n #_0AE3C1: INC.w $0211\n #_0AE3C4: INC.w $0211\n\n; ---------------------------------------------------------\n\n.continue\n #_0AE3C7: LDA.w $020E\n #_0AE3CA: AND.w #$0050\n #_0AE3CD: BNE .pointless_check\n\n #_0AE3CF: LDA.w #$EFFF\n #_0AE3D2: STA.b $08\n #_0AE3D4: BRA .that_was_pointless\n\n.pointless_check\n #_0AE3D6: LDA.w #$EFFF\n #_0AE3D9: STA.b $08\n\n.that_was_pointless\n #_0AE3DB: JSR DungeonMap_DrawFloorNumbersByRoom\n #_0AE3DE: JSR DungeonMap_DrawBorderForRooms\n #_0AE3E1: JSR DungeonMap_DrawDungeonLayout\n\n; ---------------------------------------------------------\n\n #_0AE3E4: DEC.w $020E\n\n #_0AE3E7: REP #$30\n\n #_0AE3E9: LDA.w #$0300\n #_0AE3EC: STA.b $06\n\n #_0AE3EE: LDA.w $0211\n #_0AE3F1: BNE .very_useless\n #_0AE3F3: BRA .very_useless\n\n.very_useless\n #_0AE3F5: LDA.w $020E\n #_0AE3F8: AND.w #$0050\n #_0AE3FB: BNE .more_pointlessness\n\n #_0AE3FD: LDA.w #$EFFF\n #_0AE400: STA.b $08\n #_0AE402: BRA .wow_really_pointless\n\n.more_pointlessness\n #_0AE404: LDA.w #$EFFF\n #_0AE407: STA.b $08\n\n.wow_really_pointless\n #_0AE409: JSR DungeonMap_DrawFloorNumbersByRoom\n #_0AE40C: JSR DungeonMap_DrawBorderForRooms\n #_0AE40F: JSR DungeonMap_DrawDungeonLayout\n\n; ---------------------------------------------------------\n\n #_0AE412: REP #$30\n\n #_0AE414: INC.w $020E\n\n #_0AE417: STZ.b $06\n\n #_0AE419: SEP #$30\n\n #_0AE41B: LDA.b #$08\n #_0AE41D: STA.b $17\n\n #_0AE41F: LDA.b #$22\n #_0AE421: STA.w $0116\n\n #_0AE424: INC.w $020D\n\n #_0AE427: PLB\n\n #_0AE428: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawBorderForRooms", + "code": "DungeonMap_DrawBorderForRooms:\n #_0AE449: REP #$30\n\n #_0AE44B: STZ.b $02\n\n.next_corner\n #_0AE44D: LDY.b $02\n\n #_0AE44F: LDA.w .tiles_corner_address,Y\n #_0AE452: CLC\n #_0AE453: ADC.b $06\n #_0AE455: AND.w #$0FFF\n #_0AE458: TAX\n\n #_0AE459: LDA.w #$0F00\n #_0AE45C: STA.l $7F0000,X\n\n #_0AE460: LDA.w .tiles_corner,Y\n #_0AE463: AND.b $08\n #_0AE465: STA.l $7F0000,X\n\n #_0AE469: INC.b $02\n #_0AE46B: INC.b $02\n\n #_0AE46D: LDA.b $02\n #_0AE46F: CMP.w #$0008\n #_0AE472: BNE .next_corner\n\n; ---------------------------------------------------------\n\n #_0AE474: LDY.w #$0000\n\n.next_vertical_segment\n #_0AE477: STZ.b $02\n\n #_0AE479: LDA.w .tiles_vertical_border_address,Y\n #_0AE47C: CLC\n #_0AE47D: ADC.b $06\n #_0AE47F: STA.b $04\n\n.next_vertical_tile\n #_0AE481: LDA.b $04\n #_0AE483: CLC\n #_0AE484: ADC.b $02\n #_0AE486: AND.w #$0FFF\n #_0AE489: TAX\n\n #_0AE48A: LDA.w #$0F00\n #_0AE48D: STA.l $7F0000,X\n\n #_0AE491: LDA.w .tiles_vertical_border,Y\n #_0AE494: AND.b $08\n #_0AE496: STA.l $7F0000,X\n\n #_0AE49A: INC.b $02\n #_0AE49C: INC.b $02\n\n #_0AE49E: LDA.b $02\n #_0AE4A0: CMP.w #$0014\n #_0AE4A3: BNE .next_vertical_tile\n\n #_0AE4A5: INY\n #_0AE4A6: INY\n #_0AE4A7: CPY.w #$0004\n #_0AE4AA: BNE .next_vertical_segment\n\n; ---------------------------------------------------------\n\n #_0AE4AC: LDY.w #$0000\n\n.next_horizontal_segment\n #_0AE4AF: STZ.b $02\n\n #_0AE4B1: LDA.w .tiles_horizontal_border_address,Y\n #_0AE4B4: CLC\n #_0AE4B5: ADC.b $06\n #_0AE4B7: STA.b $04\n\n.next_horizontal_tile\n #_0AE4B9: LDA.b $04\n #_0AE4BB: CLC\n #_0AE4BC: ADC.b $02\n #_0AE4BE: AND.w #$0FFF\n #_0AE4C1: TAX\n\n #_0AE4C2: LDA.w #$0F00\n #_0AE4C5: STA.l $7F0000,X\n\n #_0AE4C9: LDA.w .tiles_horizontal_border,Y\n #_0AE4CC: AND.b $08\n #_0AE4CE: STA.l $7F0000,X\n\n #_0AE4D2: LDA.b $02\n #_0AE4D4: CLC\n #_0AE4D5: ADC.w #$0040\n #_0AE4D8: STA.b $02\n\n #_0AE4DA: CMP.w #$0280\n #_0AE4DD: BNE .next_horizontal_tile\n\n #_0AE4DF: INY\n #_0AE4E0: INY\n #_0AE4E1: CPY.w #$0004\n #_0AE4E4: BNE .next_horizontal_segment\n\n; ---------------------------------------------------------\n\n #_0AE4E6: SEP #$30\n\n #_0AE4E8: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawFloorNumbersByRoom", + "code": "DungeonMap_DrawFloorNumbersByRoom:\n #_0AE4F9: REP #$30\n\n #_0AE4FB: LDA.w #$00DE\n #_0AE4FE: STA.b $00\n\n.delete_next_letter\n #_0AE500: LDA.b $00\n #_0AE502: CLC\n #_0AE503: ADC.b $06\n #_0AE505: AND.w #$0FFF\n #_0AE508: TAX\n\n #_0AE509: LDA.w #$0F00\n #_0AE50C: STA.l $7F0000,X\n #_0AE510: STA.l $7F0002,X\n\n #_0AE514: LDA.b $00\n #_0AE516: CLC\n #_0AE517: ADC.w #$0040\n #_0AE51A: STA.b $00\n\n #_0AE51C: CMP.w #$039E\n #_0AE51F: BNE .delete_next_letter\n\n; ---------------------------------------------------------\n\n #_0AE521: LDA.w $020E\n #_0AE524: AND.w #$0080\n #_0AE527: BEQ .above_ground_floor\n\n #_0AE529: LDA.w #$1F1C ; letter B\n #_0AE52C: BRA .write_char\n\n.above_ground_floor\n #_0AE52E: LDA.w $020E\n #_0AE531: AND.w #$000F\n #_0AE534: ASL A\n #_0AE535: TAY\n\n #_0AE536: LDA.w .floor_numbers,Y\n\n.write_char\n #_0AE539: PHA\n\n #_0AE53A: LDA.w #$035E\n #_0AE53D: CLC\n #_0AE53E: ADC.b $06\n\n #_0AE540: AND.w #$0FFF\n #_0AE543: TAX\n\n #_0AE544: PLA\n #_0AE545: AND.b $08\n #_0AE547: STA.l $7F0000,X\n\n; ---------------------------------------------------------\n\n #_0AE54B: LDA.w $020E\n #_0AE54E: AND.w #$0080\n #_0AE551: BEQ .above_ground_again\n\n #_0AE553: LDA.w $020E\n #_0AE556: AND.w #$00FF\n #_0AE559: EOR.w #$00FF\n #_0AE55C: ASL A\n #_0AE55D: TAY\n\n #_0AE55E: LDA.w .floor_numbers,Y\n #_0AE561: BRA .write_second_character\n\n.above_ground_again\n #_0AE563: LDA.w #$1F1D ; letter F\n\n.write_second_character\n #_0AE566: AND.b $08\n #_0AE568: STA.l $7F0002,X\n\n #_0AE56C: SEP #$30\n\n #_0AE56E: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawDungeonLayout", + "code": "DungeonMap_DrawDungeonLayout:\n #_0AE579: REP #$30\n\n #_0AE57B: STZ.b $00\n\n.next_row_of_rooms\n #_0AE57D: LDA.b $00\n #_0AE57F: ASL A\n #_0AE580: TAX\n\n #_0AE581: LDA.w .row_offset,X\n #_0AE584: CLC\n #_0AE585: ADC.b $06\n #_0AE587: AND.w #$0FFF\n #_0AE58A: TAX\n\n #_0AE58B: JSR DungeonMap_DrawSingleRowOfRooms\n\n #_0AE58E: INC.b $00\n\n #_0AE590: LDA.b $00\n #_0AE592: CMP.w #$0005\n #_0AE595: BNE .next_row_of_rooms\n\n #_0AE597: SEP #$30\n\n #_0AE599: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawSingleRowOfRooms", + "code": "DungeonMap_DrawSingleRowOfRooms:\n #_0AE5BC: REP #$30\n\n #_0AE5BE: STZ.b $02\n\n.next_room\n #_0AE5C0: STZ.b $0E\n\n #_0AE5C2: PHX\n\n #_0AE5C3: LDA.b $00\n #_0AE5C5: ASL A\n #_0AE5C6: TAX\n\n #_0AE5C7: LDA.b $02\n #_0AE5C9: ADC.w .row_draw_offset,X\n #_0AE5CC: STA.b $04\n\n #_0AE5CE: SEP #$20\n\n #_0AE5D0: LDX.w $040C\n\n #_0AE5D3: LDA.w DungeonMapFloorCountData,X\n #_0AE5D6: AND.b #$0F\n\n #_0AE5D8: CLC\n #_0AE5D9: ADC.w $020E\n\n #_0AE5DC: ASL A\n #_0AE5DD: STA.b $0E\n\n #_0AE5DF: TAY\n\n #_0AE5E0: REP #$20\n\n #_0AE5E2: LDA.w DungeonMapRoomPointers,X\n #_0AE5E5: STA.b $0C\n\n #_0AE5E7: LDA.w DungeonMapFloorToDataOffset,Y\n #_0AE5EA: CLC\n #_0AE5EB: ADC.b $04\n #_0AE5ED: TAY\n\n #_0AE5EE: SEP #$20\n\n #_0AE5F0: LDA.b ($0C),Y\n #_0AE5F2: CMP.b #$0F\n #_0AE5F4: BNE .valid_room\n\n #_0AE5F6: REP #$20\n\n #_0AE5F8: LDA.w #$0051\n #_0AE5FB: BRA .shift_empty_room\n\n.valid_room\n #_0AE5FD: REP #$20\n\n #_0AE5FF: AND.w #$00FF\n #_0AE602: STA.b $CA\n\n #_0AE604: ASL A\n #_0AE605: PHA\n\n #_0AE606: LDA.b $CA\n #_0AE608: ASL A\n #_0AE609: TAX\n\n #_0AE60A: LDA.l $7EF000,X\n #_0AE60E: AND.w #$000F\n\n #_0AE611: STA.b $0E\n\n #_0AE613: PLA\n #_0AE614: BRA .is_valid\n\n.shift_empty_room\n #_0AE616: ASL A\n #_0AE617: ASL A\n #_0AE618: ASL A\n #_0AE619: TAY\n\n #_0AE61A: BRA .continue_with_empty_room\n\n; ---------------------------------------------------------\n\n.is_valid\n #_0AE61C: STZ.b $C8\n\n #_0AE61E: LDY.w #$0000\n #_0AE621: LDX.w $040C\n\n #_0AE624: LDA.w DungeonMapRoomPointers,X\n #_0AE627: STA.b $0C\n\n.check_next_room\n #_0AE629: SEP #$20\n\n #_0AE62B: LDA.b ($0C),Y\n #_0AE62D: CMP.b #$0F\n #_0AE62F: BNE .draw_this_room\n\n #_0AE631: INY\n #_0AE632: BRA .check_next_room\n\n.draw_this_room\n #_0AE634: CMP.b $CA\n #_0AE636: BEQ .room_matches\n\n #_0AE638: INC.b $C8\n\n #_0AE63A: INY\n\n #_0AE63B: BRA .check_next_room\n\n.room_matches\n #_0AE63D: REP #$20\n\n #_0AE63F: LDA.w DungeonMapRoomLayoutPointers,X\n #_0AE642: STA.b $0C\n\n #_0AE644: LDA.b $C8\n #_0AE646: TAY\n\n #_0AE647: SEP #$20\n\n #_0AE649: LDA.b ($0C),Y\n\n #_0AE64B: REP #$20\n\n #_0AE64D: ASL A\n #_0AE64E: ASL A\n #_0AE64F: ASL A\n #_0AE650: TAY\n\n.continue_with_empty_room\n #_0AE651: PLX\n\n #_0AE652: LDA.w DungeonMap_RoomTemplates+0,Y\n #_0AE655: STA.b $0C\n\n #_0AE657: PHA\n\n; ---------------------------------------------------------\n\n #_0AE658: CMP.w #$0B00\n #_0AE65B: BEQ .empty_quad_nw\n\n #_0AE65D: LDA.b $0E\n #_0AE65F: AND.w #$0008\n #_0AE662: BNE .empty_quad_nw\n\n #_0AE664: LDA.b $0C\n #_0AE666: AND.w #$1000\n #_0AE669: BNE .visited_pal_nw\n\n #_0AE66B: LDA.w #$0400\n #_0AE66E: STA.b $0C\n #_0AE670: BRA .check_visit_nw\n\n.visited_pal_nw\n #_0AE672: PHX\n\n #_0AE673: LDX.w $040C\n\n #_0AE676: LDA.l $7EF368\n #_0AE67A: AND.l DungeonMask,X\n #_0AE67E: BEQ .missing_map_nw\n\n #_0AE680: PLX\n #_0AE681: PLA\n\n #_0AE682: LDA.b $0C\n #_0AE684: AND.w #$E3FF\n #_0AE687: ORA.w #$0C00\n #_0AE68A: BRA .write_char_nw\n\n.missing_map_nw\n #_0AE68C: PLX\n\n.empty_quad_nw\n #_0AE68D: STZ.b $0C\n\n.check_visit_nw\n #_0AE68F: PLA\n #_0AE690: CLC\n #_0AE691: ADC.b $0C\n\n #_0AE693: PHX\n\n #_0AE694: STA.b $0C\n\n #_0AE696: LDX.w $040C\n\n #_0AE699: LDA.l $7EF368\n #_0AE69D: AND.l DungeonMask,X\n #_0AE6A1: BNE .quadrant_visited_nw\n\n #_0AE6A3: LDA.b $0E\n #_0AE6A5: AND.w #$0008\n #_0AE6A8: BNE .quadrant_visited_nw\n\n #_0AE6AA: LDA.w #$0B00\n #_0AE6AD: BRA .quadrant_unvisited_nw\n\n.quadrant_visited_nw\n #_0AE6AF: LDA.b $0C\n\n.quadrant_unvisited_nw\n #_0AE6B1: PLX\n\n.write_char_nw\n #_0AE6B2: STA.l $7F0000,X\n\n; ---------------------------------------------------------\n\n #_0AE6B6: LDA.w DungeonMap_RoomTemplates+2,Y\n #_0AE6B9: STA.b $0C\n\n #_0AE6BB: PHA\n\n #_0AE6BC: CMP.w #$0B00\n #_0AE6BF: BEQ .empty_quad_ne\n\n #_0AE6C1: LDA.b $0E\n #_0AE6C3: AND.w #$0004\n #_0AE6C6: BNE .empty_quad_ne\n\n #_0AE6C8: LDA.b $0C\n #_0AE6CA: AND.w #$1000\n #_0AE6CD: BNE .visited_pal_ne\n\n #_0AE6CF: LDA.w #$0400\n #_0AE6D2: STA.b $0C\n\n #_0AE6D4: BRA .check_visit_ne\n\n.visited_pal_ne\n #_0AE6D6: PHX\n\n #_0AE6D7: LDX.w $040C\n\n #_0AE6DA: LDA.l $7EF368\n #_0AE6DE: AND.l DungeonMask,X\n #_0AE6E2: BEQ .missing_map_ne\n\n #_0AE6E4: PLX\n #_0AE6E5: PLA\n\n #_0AE6E6: LDA.b $0C\n #_0AE6E8: AND.w #$E3FF\n #_0AE6EB: ORA.w #$0C00\n #_0AE6EE: BRA .write_char_ne\n\n.missing_map_ne\n #_0AE6F0: PLX\n\n.empty_quad_ne\n #_0AE6F1: STZ.b $0C\n\n.check_visit_ne\n #_0AE6F3: PLA\n #_0AE6F4: CLC\n #_0AE6F5: ADC.b $0C\n\n #_0AE6F7: PHX\n\n #_0AE6F8: STA.b $0C\n\n #_0AE6FA: LDX.w $040C\n\n #_0AE6FD: LDA.l $7EF368\n #_0AE701: AND.l DungeonMask,X\n #_0AE705: BNE .quadrant_visited_ne\n\n #_0AE707: LDA.b $0E\n #_0AE709: AND.w #$0004\n #_0AE70C: BNE .quadrant_visited_ne\n\n #_0AE70E: LDA.w #$0B00\n\n #_0AE711: BRA .quadrant_unvisited_ne\n\n.quadrant_visited_ne\n #_0AE713: LDA.b $0C\n\n.quadrant_unvisited_ne\n #_0AE715: PLX\n\n.write_char_ne\n #_0AE716: STA.l $7F0002,X\n\n; ---------------------------------------------------------\n\n #_0AE71A: LDA.w DungeonMap_RoomTemplates+4,Y\n #_0AE71D: STA.b $0C\n\n #_0AE71F: PHA\n\n #_0AE720: CMP.w #$0B00\n #_0AE723: BEQ .empty_quad_sw\n\n #_0AE725: LDA.b $0E\n #_0AE727: AND.w #$0002\n #_0AE72A: BNE .empty_quad_sw\n\n #_0AE72C: LDA.b $0C\n #_0AE72E: AND.w #$1000\n #_0AE731: BNE .visited_pal_sw\n\n #_0AE733: LDA.w #$0400\n #_0AE736: STA.b $0C\n\n #_0AE738: BRA .check_visit_sw\n\n.visited_pal_sw\n #_0AE73A: PHX\n\n #_0AE73B: LDX.w $040C\n\n #_0AE73E: LDA.l $7EF368\n #_0AE742: AND.l DungeonMask,X\n #_0AE746: BEQ .missing_map_sw\n\n #_0AE748: PLX\n #_0AE749: PLA\n\n #_0AE74A: LDA.b $0C\n #_0AE74C: AND.w #$E3FF\n #_0AE74F: ORA.w #$0C00\n #_0AE752: BRA .write_char_sw\n\n.missing_map_sw\n #_0AE754: PLX\n\n.empty_quad_sw\n #_0AE755: STZ.b $0C\n\n.check_visit_sw\n #_0AE757: PLA\n #_0AE758: CLC\n #_0AE759: ADC.b $0C\n\n #_0AE75B: PHX\n\n #_0AE75C: STA.b $0C\n\n #_0AE75E: LDX.w $040C\n\n #_0AE761: LDA.l $7EF368\n #_0AE765: AND.l DungeonMask,X\n #_0AE769: BNE .quadrant_visited_sw\n\n #_0AE76B: LDA.b $0E\n #_0AE76D: AND.w #$0002\n #_0AE770: BNE .quadrant_visited_sw\n\n #_0AE772: LDA.w #$0B00\n\n #_0AE775: BRA .quadrant_unvisited_sw\n\n.quadrant_visited_sw\n #_0AE777: LDA.b $0C\n\n.quadrant_unvisited_sw\n #_0AE779: PLX\n\n.write_char_sw\n #_0AE77A: STA.l $7F0040,X\n\n; ---------------------------------------------------------\n\n #_0AE77E: LDA.w DungeonMap_RoomTemplates+6,Y\n #_0AE781: STA.b $0C\n\n #_0AE783: PHA\n\n #_0AE784: CMP.w #$0B00\n #_0AE787: BEQ .empty_quad_se\n\n #_0AE789: LDA.b $0E\n #_0AE78B: AND.w #$0001\n #_0AE78E: BNE .empty_quad_se\n\n #_0AE790: LDA.b $0C\n #_0AE792: AND.w #$1000\n #_0AE795: BNE .visited_pal_se\n\n #_0AE797: LDA.w #$0400\n #_0AE79A: STA.b $0C\n\n #_0AE79C: BRA .check_visit_se\n\n.visited_pal_se\n #_0AE79E: PHX\n\n #_0AE79F: LDX.w $040C\n\n #_0AE7A2: LDA.l $7EF368\n #_0AE7A6: AND.l DungeonMask,X\n #_0AE7AA: BEQ .missing_map_se\n\n #_0AE7AC: PLX\n #_0AE7AD: PLA\n\n #_0AE7AE: LDA.b $0C\n #_0AE7B0: AND.w #$E3FF\n #_0AE7B3: ORA.w #$0C00\n\n #_0AE7B6: BRA .write_char_se\n\n.missing_map_se\n #_0AE7B8: PLX\n\n.empty_quad_se\n #_0AE7B9: STZ.b $0C\n\n.check_visit_se\n #_0AE7BB: PLA\n #_0AE7BC: CLC\n #_0AE7BD: ADC.b $0C\n\n #_0AE7BF: PHX\n\n #_0AE7C0: STA.b $0C\n\n #_0AE7C2: LDX.w $040C\n\n #_0AE7C5: LDA.l $7EF368\n #_0AE7C9: AND.l DungeonMask,X\n #_0AE7CD: BNE .quadrant_visited_se\n\n #_0AE7CF: LDA.b $0E\n #_0AE7D1: AND.w #$0001\n #_0AE7D4: BNE .quadrant_visited_se\n\n #_0AE7D6: LDA.w #$0B00\n\n #_0AE7D9: BRA .quadrant_unvisited_se\n\n.quadrant_visited_se\n #_0AE7DB: LDA.b $0C\n\n.quadrant_unvisited_se\n #_0AE7DD: PLX\n\n.write_char_se\n #_0AE7DE: STA.l $7F0042,X\n\n; ---------------------------------------------------------\n\n #_0AE7E2: INX\n #_0AE7E3: INX\n #_0AE7E4: INX\n #_0AE7E5: INX\n\n #_0AE7E6: INC.b $02\n\n #_0AE7E8: LDA.b $02\n #_0AE7EA: CMP.w #$0005\n #_0AE7ED: BEQ .exit\n\n #_0AE7EF: JMP.w .next_room\n\n.exit\n #_0AE7F2: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomMarkerYBase", + "code": "DungeonMapRoomMarkerYBase:\n #_0AE7F3: dw $001F, $007F\n\n; ---------------------------------------------------------\n\npool DungeonMap_DrawRoomMarkers\n\n.offset_x_base\n #_0AE7F7: dw $0090\n\n.fairy_rooms\n #_0AE7F9: dw $0089 ; ROOM 0089 - Eastern fairy room\n #_0AE7FB: dw $00A7 ; ROOM 00A7 - Hera fairy room\n #_0AE7FD: dw $004F ; ROOM 004F - Ice Palace fairy room\n\n.fairy_room_replacements\n #_0AE7FF: dw $00A9 ; ROOM 00A9 - Eastern big chest room\n #_0AE801: dw $0077 ; ROOM 0077 - Hera lobby\n #_0AE803: dw $00BE ; ROOM 00BE - Ice Palace block switch room\n\n.floor_threshold\n #_0AE805: dw $0004\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapBossRooms", + "code": "DungeonMapBossRooms:\n #_0AE807: dw $000F ; ROOM 000F - Sewers: none\n #_0AE809: dw $000F ; ROOM 000F - Castle: none\n #_0AE80B: dw $00C8 ; ROOM 00C8 - Eastern\n #_0AE80D: dw $0033 ; ROOM 0033 - Desert\n #_0AE80F: dw $0020 ; ROOM 0020 - Agahnim's tower\n #_0AE811: dw $0006 ; ROOM 0006 - Swamp palace\n #_0AE813: dw $005A ; ROOM 005A - Palace of Darkness\n #_0AE815: dw $0090 ; ROOM 0090 - Misery Mire\n #_0AE817: dw $0029 ; ROOM 0029 - Skull Woods\n #_0AE819: dw $00DE ; ROOM 00DE - Ice Palace\n #_0AE81B: dw $0007 ; ROOM 0007 - Tower of Hera\n #_0AE81D: dw $00AC ; ROOM 00AC - Thieves' Town\n #_0AE81F: dw $00A4 ; ROOM 00A4 - Turtle Rock\n #_0AE821: dw $000D ; ROOM 000D - Ganon's tower\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawRoomMarkers", + "code": "DungeonMap_DrawRoomMarkers:\n #_0AE823: PHB\n #_0AE824: PHK\n #_0AE825: PLB\n\n #_0AE826: REP #$10\n\n #_0AE828: LDA.b #$00\n #_0AE82A: XBA\n\n #_0AE82B: LDX.w $040C\n\n #_0AE82E: LDA.w DungeonMapFloorCountData,X\n #_0AE831: AND.b #$0F\n #_0AE833: CLC\n #_0AE834: ADC.b $A4\n #_0AE836: ASL A\n #_0AE837: TAY\n\n #_0AE838: STY.b $0C\n\n #_0AE83A: REP #$20\n\n #_0AE83C: STZ.b $00\n #_0AE83E: STZ.b $02\n\n; ---------------------------------------------------------\n\n #_0AE840: PHY\n\n #_0AE841: LDY.w .floor_threshold\n\n #_0AE844: LDA.b $A0\n\n.check_next\n #_0AE846: CMP.w .fairy_rooms,Y\n #_0AE849: BEQ .replace_this_room\n\n #_0AE84B: DEY\n #_0AE84C: DEY\n #_0AE84D: BPL .check_next\n\n #_0AE84F: BRA .no_replacements\n\n.replace_this_room\n #_0AE851: LDA.w .fairy_room_replacements,Y\n\n.no_replacements\n #_0AE854: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_0AE856: PLY\n\n #_0AE857: LDA.w DungeonMapRoomPointers,X\n #_0AE85A: STA.b $04\n\n #_0AE85C: LDA.w DungeonMapFloorToDataOffset,Y\n #_0AE85F: TAY\n\n #_0AE860: SEP #$20\n\n.next_room_check\n #_0AE862: LDA.b ($04),Y\n\n #_0AE864: INY\n\n #_0AE865: CMP.b $0E\n #_0AE867: BEQ .is_this_room\n\n #_0AE869: LDA.b $00\n #_0AE86B: CMP.b #$40\n #_0AE86D: BCC .dont_reset_row\n\n #_0AE86F: STZ.b $00\n\n #_0AE871: LDA.b $02\n #_0AE873: CLC\n #_0AE874: ADC.b #$10\n #_0AE876: STA.b $02\n\n #_0AE878: BRA .next_room_check\n\n.dont_reset_row\n #_0AE87A: CLC\n #_0AE87B: ADC.b #$10\n #_0AE87D: STA.b $00\n\n #_0AE87F: BRA .next_room_check\n\n; ---------------------------------------------------------\n\n.is_this_room\n #_0AE881: REP #$20\n\n #_0AE883: LDA.b $00\n #_0AE885: CLC\n #_0AE886: ADC.w .offset_x_base\n #_0AE889: STA.w $0215\n\n #_0AE88C: LDA.b $22\n #_0AE88E: AND.w #$01E0\n\n #_0AE891: ASL A\n #_0AE892: ASL A\n #_0AE893: ASL A\n\n #_0AE894: XBA\n #_0AE895: CLC\n #_0AE896: ADC.w $0215\n #_0AE899: STA.w $0215\n\n #_0AE89C: LDY.w $0211\n\n #_0AE89F: LDA.b $02\n #_0AE8A1: STA.w $0CF5\n\n #_0AE8A4: CLC\n #_0AE8A5: ADC.w DungeonMapRoomMarkerYBase,Y\n #_0AE8A8: STA.w $0217\n\n #_0AE8AB: LDA.b $20\n #_0AE8AD: AND.w #$01E0\n\n #_0AE8B0: ASL A\n #_0AE8B1: ASL A\n #_0AE8B2: ASL A\n\n #_0AE8B3: XBA\n #_0AE8B4: CLC\n #_0AE8B5: ADC.w $0217\n #_0AE8B8: STA.w $0217\n\n; ---------------------------------------------------------\n\n #_0AE8BB: SEP #$20\n\n #_0AE8BD: LDA.b #$00\n #_0AE8BF: XBA\n\n #_0AE8C0: LDA.w DungeonMapFloorCountData,X\n #_0AE8C3: AND.b #$0F\n #_0AE8C5: CLC\n #_0AE8C6: ADC.w DungeonMap_BossRoomFloor+0,X\n\n #_0AE8C9: REP #$20\n\n #_0AE8CB: ASL A\n #_0AE8CC: TAY\n\n #_0AE8CD: LDA.w DungeonMapRoomPointers,X\n #_0AE8D0: CLC\n #_0AE8D1: ADC.w DungeonMapFloorToDataOffset,Y\n #_0AE8D4: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_0AE8D6: SEP #$20\n\n #_0AE8D8: LDA.b #$40\n #_0AE8DA: STA.w $0FA8\n #_0AE8DD: STZ.w $0FA9\n\n #_0AE8E0: STA.w $0FAA\n #_0AE8E3: STZ.w $0FAB\n\n #_0AE8E6: LDY.w #$0018\n\n.next_boss_room_check\n #_0AE8E9: LDA.b ($0E),Y\n #_0AE8EB: CMP.b #$0F\n #_0AE8ED: BEQ .invalid_room\n\n #_0AE8EF: CMP.w DungeonMapBossRooms,X\n #_0AE8F2: BEQ .is_boss_room\n\n.invalid_room\n #_0AE8F4: LDA.w $0FA8\n #_0AE8F7: SEC\n #_0AE8F8: SBC.b #$10\n #_0AE8FA: STA.w $0FA8\n #_0AE8FD: BPL .dont_reset_row_b\n\n #_0AE8FF: LDA.b #$40\n #_0AE901: STA.w $0FA8\n\n #_0AE904: LDA.w $0FAA\n #_0AE907: SEC\n #_0AE908: SBC.b #$10\n #_0AE90A: STA.w $0FAA\n\n.dont_reset_row_b\n #_0AE90D: DEY\n #_0AE90E: BPL .next_boss_room_check\n\n; ---------------------------------------------------------\n\n.is_boss_room\n #_0AE910: STZ.b $02\n #_0AE912: STZ.b $0F\n\n #_0AE914: LDA.w $020E\n #_0AE917: SEC\n #_0AE918: SBC.w DungeonMap_BossRoomFloor+0,X\n #_0AE91B: STA.b $0E\n\n #_0AE91D: BPL .dont_invert\n\n #_0AE91F: EOR.b #$FF\n #_0AE921: INC A\n #_0AE922: STA.b $0E\n\n #_0AE924: INC.b $02\n #_0AE926: INC.b $02\n\n; ---------------------------------------------------------\n\n.dont_invert\n #_0AE928: SEP #$10\n\n #_0AE92A: LDY.b $02\n\n #_0AE92C: REP #$20\n\n.adjust_next\n #_0AE92E: DEC.b $0E\n #_0AE930: BMI .done\n\n #_0AE932: LDA.w $0FAA\n #_0AE935: CLC\n #_0AE936: ADC.w DungeonMap_PanValues,Y\n #_0AE939: STA.w $0FAA\n\n #_0AE93C: BRA .adjust_next\n\n; ---------------------------------------------------------\n\n.done\n #_0AE93E: LDA.w $0FAA\n #_0AE941: CLC\n #_0AE942: ADC.w DungeonMapRoomMarkerYBase\n #_0AE945: STA.w $0FAA\n\n #_0AE948: SEP #$20\n\n #_0AE94A: INC.w $0200\n\n #_0AE94D: STZ.b $13\n #_0AE94F: STZ.w $020D\n\n #_0AE952: PLB\n\n #_0AE953: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_HandleInputAndSprites", + "code": "DungeonMap_HandleInputAndSprites:\n #_0AE954: JSL DungeonMap_HandleInput\n\n #_0AE958: JMP.w DungeonMap_DrawSprites\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_HandleInput", + "code": "DungeonMap_HandleInput:\n #_0AE95B: PHB\n #_0AE95C: PHK\n #_0AE95D: PLB\n\n #_0AE95E: LDA.b $F6\n #_0AE960: AND.b #$40\n\n #_0AE962: BNE .close_map\n\n #_0AE964: JSL DungeonMap_HandleMovementInput\n\n #_0AE968: PLB\n\n #_0AE969: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_PanValues", + "code": "DungeonMap_PanValues:\n #_0AE975: dw 96\n #_0AE977: dw -96\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_HandleMovementInput", + "code": "DungeonMap_HandleMovementInput:\n #_0AE979: JSL DungeonMap_HandleFloorSelect\n\n #_0AE97D: LDA.w $0210\n #_0AE980: BEQ .exit\n\n #_0AE982: JMP.w DungeonMap_ScrollFloors\n\n.exit\n #_0AE985: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_HandleFloorSelect", + "code": "DungeonMap_HandleFloorSelect:\n #_0AE986: REP #$30\n\n #_0AE988: LDX.w $040C\n\n #_0AE98B: LDA.w DungeonMapFloorCountData,X\n #_0AE98E: AND.w #$00F0\n #_0AE991: LSR A\n #_0AE992: LSR A\n #_0AE993: LSR A\n #_0AE994: LSR A\n #_0AE995: STA.b $00\n\n #_0AE997: LDA.w DungeonMapFloorCountData,X\n #_0AE99A: AND.w #$000F\n #_0AE99D: CLC\n #_0AE99E: ADC.b $00\n\n #_0AE9A0: CMP.w #$0003\n #_0AE9A3: BMI .ignore_input\n\n; ---------------------------------------------------------\n\n #_0AE9A5: SEP #$30\n\n #_0AE9A7: LDA.w $0210\n #_0AE9AA: BNE .ignore_input\n\n #_0AE9AC: LDA.b $F0\n #_0AE9AE: AND.b #$0C\n #_0AE9B0: BNE .pressed_up_or_down\n\n; ---------------------------------------------------------\n\n.ignore_input\n #_0AE9B2: JMP.w .proceed_to_exit\n\n; ---------------------------------------------------------\n\n.pressed_up_or_down\n #_0AE9B5: STA.b $0A\n\n #_0AE9B7: STZ.w $020F\n\n #_0AE9BA: AND.b #$08\n #_0AE9BC: BEQ .didnt_press_up\n\n; ---------------------------------------------------------\n\n #_0AE9BE: REP #$30\n\n #_0AE9C0: LDX.w $040C\n\n #_0AE9C3: LDA.w DungeonMapFloorCountData,X\n #_0AE9C6: AND.w #$00F0\n\n #_0AE9C9: LSR A\n #_0AE9CA: LSR A\n #_0AE9CB: LSR A\n #_0AE9CC: LSR A\n\n #_0AE9CD: DEC A\n #_0AE9CE: CMP.w $020E\n #_0AE9D1: BNE .continue_a\n\n #_0AE9D3: JMP.w .proceed_to_exit\n\n; ---------------------------------------------------------\n\n.continue_a\n #_0AE9D6: INC.w $020E\n\n #_0AE9D9: LDA.b $06\n #_0AE9DB: SEC\n #_0AE9DC: SBC.w #$0300\n #_0AE9DF: AND.w #$0FFF\n #_0AE9E2: STA.b $06\n\n #_0AE9E4: BRA .continue_b\n\n; ---------------------------------------------------------\n\n.didnt_press_up\n #_0AE9E6: REP #$30\n\n #_0AE9E8: LDX.w $040C\n\n #_0AE9EB: LDA.w DungeonMapFloorCountData,X\n #_0AE9EE: AND.w #$000F\n #_0AE9F1: EOR.w #$00FF\n\n #_0AE9F4: INC A\n #_0AE9F5: INC A\n #_0AE9F6: AND.w #$00FF\n\n #_0AE9F9: CMP.w $020E\n #_0AE9FC: BEQ .proceed_to_exit\n\n #_0AE9FE: DEC.w $020E\n #_0AEA01: DEC.w $020E\n\n #_0AEA04: LDA.b $06\n #_0AEA06: CLC\n #_0AEA07: ADC.w #$0600\n #_0AEA0A: AND.w #$0FFF\n #_0AEA0D: STA.b $06\n\n; ---------------------------------------------------------\n\n.continue_b\n #_0AEA0F: SEP #$20\n\n #_0AEA11: LDA.w $020E\n #_0AEA14: CMP.b $A4\n #_0AEA16: BNE .useless_floor_level_check\n\n #_0AEA18: REP #$20\n\n #_0AEA1A: BRA .check_useless_property\n\n.useless_floor_level_check\n #_0AEA1C: BMI .useless_bitmode_branch\n\n #_0AEA1E: REP #$20\n\n #_0AEA20: BRA .check_useless_property\n\n; ---------------------------------------------------------\n\n.useless_bitmode_branch\n #_0AEA22: REP #$20\n\n.check_useless_property\n #_0AEA24: LDA.w $020E\n #_0AEA27: AND.w #$0080\n #_0AEA2A: BNE .useless_property_change\n\n #_0AEA2C: LDA.w #$EFFF\n #_0AEA2F: STA.b $08\n\n #_0AEA31: BRA .ignore_useless_property_change\n\n.useless_property_change\n #_0AEA33: LDA.w #$EFFF\n #_0AEA36: STA.b $08\n\n.ignore_useless_property_change\n #_0AEA38: SEP #$20\n\n #_0AEA3A: JSR DungeonMap_DrawFloorNumbersByRoom\n #_0AEA3D: JSR DungeonMap_DrawBorderForRooms\n #_0AEA40: JSR DungeonMap_DrawDungeonLayout\n\n #_0AEA43: SEP #$20\n\n #_0AEA45: INC.w $0210\n\n #_0AEA48: LDA.b $0A\n #_0AEA4A: AND.b #$08\n #_0AEA4C: LSR A\n #_0AEA4D: LSR A\n #_0AEA4E: TAX\n\n #_0AEA4F: REP #$30\n\n #_0AEA51: LDA.b $E8\n #_0AEA53: CLC\n #_0AEA54: ADC.w DungeonMap_PanValues,X\n #_0AEA57: STA.w $0213\n\n #_0AEA5A: LDA.b $0A\n #_0AEA5C: AND.w #$0008\n #_0AEA5F: BNE .pressed_up\n\n #_0AEA61: LDA.b $06\n #_0AEA63: SEC\n #_0AEA64: SBC.w #$0300\n #_0AEA67: AND.w #$0FFF\n #_0AEA6A: STA.b $06\n\n #_0AEA6C: INC.w $020E\n\n; ---------------------------------------------------------\n\n.pressed_up\n #_0AEA6F: SEP #$20\n\n #_0AEA71: LDA.b #$08\n #_0AEA73: STA.b $17\n\n.proceed_to_exit\n #_0AEA75: BRA EXIT_0AEAAF\n\n; =========================================================\n\npool DungeonMap_ScrollFloors\n\n.speed_bg\n #_0AEA77: dw 4 ; down\n #_0AEA79: dw -4 ; up\n\n.speed_sprites\n #_0AEA7B: dw -4 ; down\n #_0AEA7D: dw 4 ; up\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_ScrollFloors", + "code": "DungeonMap_ScrollFloors:\n #_0AEA7F: REP #$30\n\n #_0AEA81: LDA.b $0A\n #_0AEA83: AND.w #$0008\n #_0AEA86: LSR A\n #_0AEA87: LSR A\n #_0AEA88: TAX\n\n #_0AEA89: LDA.w $0217\n #_0AEA8C: CLC\n #_0AEA8D: ADC.w .speed_sprites,X\n #_0AEA90: STA.w $0217\n\n #_0AEA93: LDA.w $0FAA\n #_0AEA96: CLC\n #_0AEA97: ADC.w .speed_sprites,X\n #_0AEA9A: STA.w $0FAA\n\n #_0AEA9D: LDA.b $E8\n #_0AEA9F: CLC\n #_0AEAA0: ADC.w .speed_bg,X\n #_0AEAA3: STA.b $E8\n\n #_0AEAA5: CMP.w $0213\n #_0AEAA8: BNE EXIT_0AEAAF\n\n #_0AEAAA: SEP #$20\n\n #_0AEAAC: STZ.w $0210\n\n; ---------------------------------------------------------\n\n #EXIT_0AEAAF:\n #_0AEAAF: SEP #$30\n\n #_0AEAB1: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawSprites", + "code": "DungeonMap_DrawSprites:\n #_0AEAB2: PHB\n #_0AEAB3: PHK\n #_0AEAB4: PLB\n\n #_0AEAB5: REP #$10\n\n #_0AEAB7: LDX.w $040C\n\n #_0AEABA: LDA.w DungeonMapFloorCountData,X\n\n #_0AEABD: AND.b #$0F\n #_0AEABF: STA.b $02\n\n #_0AEAC1: CLC\n #_0AEAC2: ADC.b $A4\n #_0AEAC4: STA.b $01\n #_0AEAC6: STA.b $03\n\n; ---------------------------------------------------------\n\n #_0AEAC8: SEP #$10\n\n #_0AEACA: STZ.b $00\n #_0AEACC: STZ.b $0E\n\n #_0AEACE: JSR DungeonMap_DrawLinkPointing\n\n #_0AEAD1: INC.b $00\n\n.next_marker\n #_0AEAD3: JSR DungeonMap_DrawLocationMarker\n\n #_0AEAD6: INC.b $0E\n\n #_0AEAD8: LDA.b $00\n #_0AEADA: CMP.b #$09\n #_0AEADC: BNE .next_marker\n\n #_0AEADE: JSR DungeonMap_DrawBlinkingIndicator\n\n #_0AEAE1: INC.b $00\n\n #_0AEAE3: JSR DungeonMap_DrawBossIcon\n #_0AEAE6: JSR DungeonMap_DrawFloorNumberObjects\n #_0AEAE9: JSR DungeonMap_DrawFloorBlinker\n\n #_0AEAEC: PLB\n\n #_0AEAED: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LinkPointingPositionX", + "code": "LinkPointingPositionX:\n #_0AEAEE: db $19\n", + "file": "bank_0A.asm" + }, + { + "name": "DrawBossIconByFloor_position_x", + "code": "DrawBossIconByFloor_position_x:\n #_0AEAEF: db $4C\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawLinkPointing", + "code": "DungeonMap_DrawLinkPointing:\n #_0AEAF0: REP #$10\n\n #_0AEAF2: LDA.b #$04\n #_0AEAF4: SEC\n #_0AEAF5: SBC.b $02\n #_0AEAF7: BMI .y_offset_done\n\n #_0AEAF9: CLC\n #_0AEAFA: ADC.b $03\n #_0AEAFC: STA.b $03\n\n #_0AEAFE: LDA.w DungeonMapFloorCountData,X\n\n #_0AEB01: LSR A\n #_0AEB02: LSR A\n #_0AEB03: LSR A\n #_0AEB04: LSR A\n\n #_0AEB05: SEC\n #_0AEB06: SBC.b #$04\n #_0AEB08: BMI .y_offset_done\n\n #_0AEB0A: SEC\n #_0AEB0B: SBC.b $03\n\n #_0AEB0D: EOR.b #$FF\n #_0AEB0F: INC A\n #_0AEB10: STA.b $03\n\n; ---------------------------------------------------------\n\n.y_offset_done\n #_0AEB12: SEP #$10\n\n #_0AEB14: LDX.b $00\n\n #_0AEB16: LDA.b #$02\n #_0AEB18: STA.w $0A20,X\n\n #_0AEB1B: TXA\n #_0AEB1C: ASL A\n #_0AEB1D: ASL A\n #_0AEB1E: TAX\n\n #_0AEB1F: LDA.w LinkPointingPositionX\n #_0AEB22: STA.w $0800,X\n\n #_0AEB25: LDY.b $03\n\n #_0AEB27: LDA.w FloorIconOffsetY,Y\n #_0AEB2A: SEC\n #_0AEB2B: SBC.b #$04\n\n #_0AEB2D: STA.w $0801,X\n #_0AEB30: STZ.w $0802,X\n\n #_0AEB33: LDA.b #$3E\n\n #_0AEB35: LDY.w $0ABD\n #_0AEB38: BEQ .set_priority\n\n #_0AEB3A: LDA.b #$30\n\n.set_priority\n #_0AEB3C: STA.w $0803,X\n\n #_0AEB3F: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawBlinkingIndicator", + "code": "DungeonMap_DrawBlinkingIndicator:\n #_0AEB50: LDX.b $00\n\n #_0AEB52: LDA.b #$00\n #_0AEB54: STA.w $0A20,X\n\n #_0AEB57: TXA\n #_0AEB58: ASL A\n #_0AEB59: ASL A\n #_0AEB5A: TAX\n\n #_0AEB5B: LDA.w $0215\n #_0AEB5E: SEC\n #_0AEB5F: SBC.b #$03\n #_0AEB61: STA.w $0800,X\n\n; ---------------------------------------------------------\n\n #_0AEB64: LDA.w $0218\n #_0AEB67: BEQ .on_screen\n\n #_0AEB69: LDA.b #$F0\n #_0AEB6B: BRA .continue\n\n.on_screen\n #_0AEB6D: LDA.w $0217\n\n; ---------------------------------------------------------\n\n.continue\n #_0AEB70: SEC\n #_0AEB71: SBC.b #$03\n #_0AEB73: STA.w $0801,X\n\n #_0AEB76: LDA.b $1A\n #_0AEB78: AND.b #$0C\n #_0AEB7A: LSR A\n #_0AEB7B: LSR A\n #_0AEB7C: TAY\n\n #_0AEB7D: LDA.w .tile\n #_0AEB80: STA.w $0802,X\n\n #_0AEB83: LDA.w .prop,Y\n #_0AEB86: STA.w $0803,X\n\n #_0AEB89: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawLocationMarker", + "code": "DungeonMap_DrawLocationMarker:\n #_0AEBA8: LDY.b #$03\n\n.next_object\n #_0AEBAA: LDA.b $00\n #_0AEBAC: TAX\n\n #_0AEBAD: LDA.b #$02\n #_0AEBAF: STA.w $0A20,X\n\n #_0AEBB2: TXA\n #_0AEBB3: ASL A\n #_0AEBB4: ASL A\n #_0AEBB5: TAX\n\n #_0AEBB6: LDA.w $0215\n #_0AEBB9: AND.b #$F0\n #_0AEBBB: CLC\n #_0AEBBC: ADC.w .offset_x,Y\n #_0AEBBF: STA.w $0800,X\n\n #_0AEBC2: PHY\n\n #_0AEBC3: LDA.b $0E\n #_0AEBC5: ASL A\n #_0AEBC6: TAY\n\n #_0AEBC7: LDA.w $0CF5\n #_0AEBCA: CLC\n #_0AEBCB: ADC.w DungeonMapRoomMarkerYBase,Y\n #_0AEBCE: STA.b $0F\n\n #_0AEBD0: PLY\n\n #_0AEBD1: CLC\n #_0AEBD2: ADC.w .offset_y,Y\n #_0AEBD5: STA.w $0801,X\n\n #_0AEBD8: STZ.w $0802,X\n\n #_0AEBDB: LDA.w .props,Y\n #_0AEBDE: STA.b $0C\n\n #_0AEBE0: PHY\n\n #_0AEBE1: LDA.b $1A\n #_0AEBE3: LSR A\n #_0AEBE4: LSR A\n #_0AEBE5: AND.b #$01\n #_0AEBE7: TAY\n\n #_0AEBE8: INC.b $0F\n\n #_0AEBEA: LDA.w $0217\n #_0AEBED: INC A\n #_0AEBEE: AND.b #$F0\n #_0AEBF0: CMP.b $0F\n #_0AEBF2: BNE .use_set_a\n\n #_0AEBF4: LDA.w $0218\n #_0AEBF7: BNE .use_set_a\n\n #_0AEBF9: INY\n #_0AEBFA: INY\n\n.use_set_a\n #_0AEBFB: LDA.b $0C\n #_0AEBFD: ORA.w .palette_flash,Y\n #_0AEC00: STA.w $0803,X\n\n #_0AEC03: PLY\n\n #_0AEC04: INC.b $00\n\n #_0AEC06: DEY\n #_0AEC07: BPL .next_object\n\n #_0AEC09: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawFloorNumberObjects", + "code": "DungeonMap_DrawFloorNumberObjects:\n #_0AEC0A: REP #$10\n\n #_0AEC0C: LDX.w $040C\n\n #_0AEC0F: LDA.w DungeonMapFloorCountData,X\n #_0AEC12: PHA\n\n #_0AEC13: LSR A\n #_0AEC14: LSR A\n #_0AEC15: LSR A\n #_0AEC16: LSR A\n #_0AEC17: STA.b $02\n\n #_0AEC19: PLA\n #_0AEC1A: AND.b #$0F\n #_0AEC1C: STA.b $03\n\n #_0AEC1E: SEP #$10\n\n #_0AEC20: LDY.b #$07\n\n #_0AEC22: LDA.b $02\n #_0AEC24: CLC\n #_0AEC25: ADC.b $03\n #_0AEC27: CMP.b #$08\n #_0AEC29: BEQ .start_draw\n\n #_0AEC2B: LDA.b $02\n #_0AEC2D: CMP.b #$04\n #_0AEC2F: BPL .start_draw\n\n #_0AEC31: DEY\n\n #_0AEC32: LDX.b #$03\n #_0AEC34: STX.b $04\n\n.count_floors_above\n #_0AEC36: CMP.b $04\n #_0AEC38: BEQ .done_floors_above\n\n #_0AEC3A: DEY\n #_0AEC3B: DEC.b $04\n #_0AEC3D: BNE .count_floors_above\n\n.done_floors_above\n #_0AEC3F: LDA.b $03\n #_0AEC41: CMP.b #$05\n #_0AEC43: BMI .start_draw\n\n #_0AEC45: LDX.b #$05\n #_0AEC47: STX.b $04\n\n.count_floors_below\n #_0AEC49: CMP.b $04\n #_0AEC4B: BEQ .start_draw\n\n #_0AEC4D: INY\n\n #_0AEC4E: INC.b $04\n #_0AEC50: CMP.b #$08\n #_0AEC52: BNE .count_floors_below\n\n; ---------------------------------------------------------\n\n.start_draw\n #_0AEC54: LDA.w FloorIconOffsetY,Y\n #_0AEC57: INC A\n #_0AEC58: STA.b $04\n\n #_0AEC5A: DEC.b $02\n\n #_0AEC5C: LDA.b $03\n #_0AEC5E: EOR.b #$FF\n #_0AEC60: INC A\n #_0AEC61: STA.b $03\n\n; ---------------------------------------------------------\n\n.next\n #_0AEC63: LDX.b $00\n\n #_0AEC65: LDA.b #$00\n #_0AEC67: STA.w $0A20,X\n #_0AEC6A: STA.w $0A21,X\n\n #_0AEC6D: TXA\n #_0AEC6E: ASL A\n #_0AEC6F: ASL A\n #_0AEC70: TAX\n\n #_0AEC71: LDA.b #$30\n #_0AEC73: STA.w $0800,X\n\n #_0AEC76: LDA.b #$38\n #_0AEC78: STA.w $0804,X\n\n #_0AEC7B: LDA.b $04\n #_0AEC7D: STA.w $0801,X\n #_0AEC80: STA.w $0805,X\n\n #_0AEC83: CLC\n #_0AEC84: ADC.b #$10\n #_0AEC86: STA.b $04\n\n #_0AEC88: LDA.b #$3D\n #_0AEC8A: STA.w $0803,X\n #_0AEC8D: STA.w $0807,X\n\n #_0AEC90: LDA.b #$1C\n #_0AEC92: STA.w $0802,X\n\n #_0AEC95: LDA.b #$1D\n #_0AEC97: STA.w $0806,X\n\n #_0AEC9A: LDY.b $02\n #_0AEC9C: BMI .negative\n\n #_0AEC9E: LDA.w FloorNumberOAMChar,Y\n #_0AECA1: STA.w $0802,X\n\n #_0AECA4: BRA .to_next\n\n.negative\n #_0AECA6: TYA\n #_0AECA7: EOR.b #$FF\n #_0AECA9: TAY\n\n #_0AECAA: LDA.w FloorNumberOAMChar,Y\n #_0AECAD: STA.w $0806,X\n\n.to_next\n #_0AECB0: INC.b $00\n #_0AECB2: INC.b $00\n\n #_0AECB4: DEC.b $02\n\n #_0AECB6: LDA.b $02\n #_0AECB8: INC A\n #_0AECB9: CMP.b $03\n #_0AECBB: BNE .next\n\n #_0AECBD: RTS", + "file": "bank_0A.asm" + }, + { + "name": "FloorIconOffsetY", + "code": "FloorIconOffsetY:\n #_0AECBE: db $BB\n #_0AECBF: db $AB\n #_0AECC0: db $9B\n #_0AECC1: db $8B\n #_0AECC2: db $7B\n #_0AECC3: db $6B\n #_0AECC4: db $5B\n #_0AECC5: db $4B\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "FloorNumberOAMChar", + "code": "FloorNumberOAMChar:\n #_0AECC6: db $1E ; 1\n #_0AECC7: db $1F ; 2\n #_0AECC8: db $20 ; 3\n #_0AECC9: db $21 ; 4\n #_0AECCA: db $22 ; 5\n #_0AECCB: db $23 ; 6\n #_0AECCC: db $24 ; 7\n #_0AECCD: db $25 ; 8\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "FloorNumberBlinkProps", + "code": "FloorNumberBlinkProps:\n #_0AECCE: db $3D\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawFloorBlinker", + "code": "DungeonMap_DrawFloorBlinker:\n #_0AECCF: LDA.b $00\n #_0AECD1: STA.b $05\n\n #_0AECD3: LDA.w $020E\n #_0AECD6: STA.b $03\n\n #_0AECD8: LDY.b #$00\n\n #_0AECDA: REP #$10\n\n #_0AECDC: LDX.w $040C\n\n #_0AECDF: LDA.w DungeonMapFloorCountData,X\n #_0AECE2: LSR A\n #_0AECE3: LSR A\n #_0AECE4: LSR A\n #_0AECE5: LSR A\n #_0AECE6: STA.b $02\n\n #_0AECE8: LDA.w DungeonMapFloorCountData,X\n #_0AECEB: AND.b #$0F\n\n #_0AECED: SEP #$10\n\n #_0AECEF: CLC\n #_0AECF0: ADC.b $02\n #_0AECF2: CMP.b #$01\n #_0AECF4: BEQ .has_floors\n\n #_0AECF6: INC.b $05\n #_0AECF8: INC.b $05\n\n #_0AECFA: DEC.b $03\n\n #_0AECFC: LDY.b #$01\n\n.has_floors\n #_0AECFE: STY.b $02\n\n; ---------------------------------------------------------\n\n.next_check\n #_0AED00: LDX.b $02\n\n #_0AED02: LDA.w FloorNumberBlinkProps\n #_0AED05: STA.b $0E,X\n\n #_0AED07: REP #$10\n\n #_0AED09: LDX.w $040C\n\n #_0AED0C: LDA.w DungeonMapFloorCountData,X\n #_0AED0F: AND.b #$0F\n #_0AED11: STA.b $01\n\n #_0AED13: CLC\n #_0AED14: ADC.b $03\n #_0AED16: STA.b $00\n\n #_0AED18: LDA.b #$04\n #_0AED1A: SEC\n #_0AED1B: SBC.b $01\n #_0AED1D: BMI .to_next\n\n #_0AED1F: CLC\n #_0AED20: ADC.b $00\n #_0AED22: STA.b $00\n\n #_0AED24: LDA.w DungeonMapFloorCountData,X\n #_0AED27: LSR A\n #_0AED28: LSR A\n #_0AED29: LSR A\n #_0AED2A: LSR A\n #_0AED2B: SEC\n #_0AED2C: SBC.b #$04\n #_0AED2E: BMI .to_next\n\n #_0AED30: SEC\n #_0AED31: SBC.b $00\n #_0AED33: EOR.b #$FF\n #_0AED35: INC A\n #_0AED36: STA.b $00\n\n.to_next\n #_0AED38: SEP #$10\n\n #_0AED3A: DEC.b $05\n #_0AED3C: DEC.b $05\n\n #_0AED3E: INC.b $03\n\n #_0AED40: DEC.b $02\n #_0AED42: BMI .check_for_blinking\n\n #_0AED44: BRL .next_check\n\n; ---------------------------------------------------------\n\n.check_for_blinking\n #_0AED47: LDA.b $1A\n #_0AED49: AND.b #$10\n #_0AED4B: BNE .blink_on\n\n #_0AED4D: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawBossIcon", + "code": "DungeonMap_DrawBossIcon:\n #_0AEDE4: REP #$10\n\n #_0AEDE6: LDX.w $040C\n\n #_0AEDE9: REP #$20\n\n #_0AEDEB: PHX\n\n #_0AEDEC: LDA.w DungeonMapBossRooms,X\n #_0AEDEF: ASL A\n #_0AEDF0: TAX\n\n #_0AEDF1: SEP #$20\n\n #_0AEDF3: LDA.l $7EF001,X\n #_0AEDF7: PLX\n\n #_0AEDF8: AND.b #$08\n #_0AEDFA: BNE .exit_a\n\n #_0AEDFC: REP #$20\n\n #_0AEDFE: LDA.l $7EF364\n #_0AEE02: AND.l DungeonMask,X\n\n #_0AEE06: SEP #$20\n\n #_0AEE08: BEQ .exit_a\n\n #_0AEE0A: LDA.w DungeonMap_BossRoomFloor+1,X\n #_0AEE0D: BPL .draw_a_skull\n\n.exit_a\n #_0AEE0F: SEP #$10\n\n #_0AEE11: RTS", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_BossRoomFloor", + "code": "DungeonMap_BossRoomFloor:\n #_0AEE79: dw $FFFF ; // - Sewers\n #_0AEE7B: dw $FFFF ; // - Hyrule Castle\n #_0AEE7D: dw $0001 ; 2F - Eastern Palace\n #_0AEE7F: dw $0001 ; 2F - Desert Palace\n #_0AEE81: dw $0006 ; 7F - Agahnim's Tower\n #_0AEE83: dw $00FF ; B1 - Swamp Palace\n #_0AEE85: dw $00FF ; B1 - Palace of Darkness\n #_0AEE87: dw $00FF ; B1 - Misery Mire\n #_0AEE89: dw $00FE ; B2 - Skull Woods\n #_0AEE8B: dw $00F9 ; B7 - Ice Palace\n #_0AEE8D: dw $0005 ; 6F - Tower of Hera\n #_0AEE8F: dw $00FF ; B1 - Thieves' Town\n #_0AEE91: dw $00FD ; B3 - Turtle Rock\n #_0AEE93: dw $0006 ; 7F - Ganon's Tower\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_DrawBossIconByFloor", + "code": "DungeonMap_DrawBossIconByFloor:\n #_0AEE95: LDA.w DungeonMapFloorCountData,X\n #_0AEE98: AND.b #$0F\n #_0AEE9A: STA.b $02\n\n #_0AEE9C: CLC\n #_0AEE9D: ADC.w DungeonMap_BossRoomFloor+0,X\n #_0AEEA0: STA.b $03\n\n #_0AEEA2: LDA.b #$04\n #_0AEEA4: SEC\n #_0AEEA5: SBC.b $02\n #_0AEEA7: BMI .floor_is_fine\n\n #_0AEEA9: CLC\n #_0AEEAA: ADC.b $03\n #_0AEEAC: STA.b $03\n\n #_0AEEAE: LDA.w DungeonMapFloorCountData,X\n\n #_0AEEB1: LSR A\n #_0AEEB2: LSR A\n #_0AEEB3: LSR A\n #_0AEEB4: LSR A\n\n #_0AEEB5: SEC\n #_0AEEB6: SBC.b #$04\n #_0AEEB8: BMI .floor_is_fine\n\n #_0AEEBA: SEC\n #_0AEEBB: SBC.b $03\n\n #_0AEEBD: EOR.b #$FF\n #_0AEEBF: INC A\n #_0AEEC0: STA.b $03\n\n; ---------------------------------------------------------\n\n.floor_is_fine\n #_0AEEC2: SEP #$10\n\n #_0AEEC4: LDA.b $1A\n #_0AEEC6: AND.b #$0F\n #_0AEEC8: CMP.b #$0A\n #_0AEECA: BCS .exit\n\n #_0AEECC: LDX.b $00\n\n #_0AEECE: LDA.b #$00\n #_0AEED0: STA.w $0A20,X\n\n #_0AEED3: TXA\n #_0AEED4: ASL A\n #_0AEED5: ASL A\n #_0AEED6: TAX\n\n #_0AEED7: LDA.w DrawBossIconByFloor_position_x\n #_0AEEDA: STA.w $0800,X\n\n #_0AEEDD: LDY.b $03\n\n #_0AEEDF: LDA.w FloorIconOffsetY,Y\n #_0AEEE2: STA.w $0801,X\n\n #_0AEEE5: LDA.w DungeonMap_BossSkull_char\n #_0AEEE8: STA.w $0802,X\n\n #_0AEEEB: LDA.w DungeonMap_BossSkull_prop\n #_0AEEEE: STA.w $0803,X\n\n #_0AEEF1: INC.b $00\n\n.exit\n #_0AEEF3: REP #$10\n\n #_0AEEF5: RTS", + "file": "bank_0A.asm" + }, + { + "name": "Module0E_03_04_UnusedCrazyScroll", + "code": "Module0E_03_04_UnusedCrazyScroll:\n #_0AEEF6: REP #$30\n\n #_0AEEF8: LDA.w $0213\n #_0AEEFB: CLC\n #_0AEEFC: ADC.b $E8\n #_0AEEFE: STA.b $E8\n\n #_0AEF00: LDA.w $0213\n #_0AEF03: EOR.w #$FFFF\n #_0AEF06: INC A\n\n #_0AEF07: CLC\n #_0AEF08: ADC.w $0217\n #_0AEF0B: STA.w $0217\n\n #_0AEF0E: SEP #$30\n\n #_0AEF10: DEC.w $0205\n #_0AEF13: BNE .exit\n\n #_0AEF15: DEC.w $0200\n\n.exit\n #_0AEF18: RTL", + "file": "bank_0A.asm" + }, + { + "name": "UnderworldMap_RecoverGFX", + "code": "UnderworldMap_RecoverGFX:\n #_0AEF19: LDA.b $9B\n #_0AEF1B: PHA\n\n #_0AEF1C: STZ.w HDMAEN\n #_0AEF1F: STZ.b $9B\n\n #_0AEF21: JSL EraseTilemaps_normal\n\n; ---------------------------------------------------------\n\n #_0AEF25: LDA.l $7EC211\n #_0AEF29: STA.b $1C\n\n #_0AEF2B: LDA.l $7EC212\n #_0AEF2F: STA.l $00001D\n\n #_0AEF33: LDA.l $7EC20E\n #_0AEF37: STA.w $0AA1\n\n #_0AEF3A: LDA.l $7EC20F\n #_0AEF3E: STA.w $0AA3\n\n #_0AEF41: LDA.l $7EC210\n #_0AEF45: STA.w $0AA2\n\n #_0AEF48: JSL InitializeTilesets\n\n #_0AEF4C: STZ.w $0AA9\n #_0AEF4F: STZ.w $0AB2\n\n #_0AEF52: JSL RebuildHUD_long2\n\n #_0AEF56: STZ.w $0418\n #_0AEF59: STZ.w $045C\n\n.next_quadrant\n #_0AEF5C: JSL WaterFlood_BuildOneQuadrantForVRAM\n #_0AEF60: JSL NMI_UploadTilemap_long\n\n #_0AEF64: JSL Underworld_PrepareNextRoomQuadrantUpload\n #_0AEF68: JSL NMI_UploadTilemap_long\n\n #_0AEF6C: LDA.w $045C\n #_0AEF6F: CMP.b #$10\n #_0AEF71: BNE .next_quadrant\n\n #_0AEF73: STZ.b $17\n #_0AEF75: STZ.b $B0\n\n #_0AEF77: PLA\n #_0AEF78: STA.b $9B\n\n; ---------------------------------------------------------\n\n #_0AEF7A: REP #$20\n\n #_0AEF7C: LDX.b #$00\n\n.copy_next_color\n #_0AEF7E: LDA.l $7FDD80,X\n #_0AEF82: STA.l $7EC500,X\n\n #_0AEF86: LDA.l $7FDE00,X\n #_0AEF8A: STA.l $7EC580,X\n\n #_0AEF8E: LDA.l $7FDE80,X\n #_0AEF92: STA.l $7EC600,X\n\n #_0AEF96: LDA.l $7FDF00,X\n #_0AEF9A: STA.l $7EC680,X\n\n #_0AEF9E: INX\n #_0AEF9F: INX\n #_0AEFA0: CPX.b #$80\n #_0AEFA2: BNE .copy_next_color\n\n; ---------------------------------------------------------\n\n #_0AEFA4: SEP #$20\n\n #_0AEFA6: LDA.l $7EC017\n #_0AEFAA: TSB.b $9C\n #_0AEFAC: TSB.b $9D\n #_0AEFAE: TSB.b $9E\n\n #_0AEFB0: LDA.b #$10 ; SFX3.10\n #_0AEFB2: STA.w $012F\n\n #_0AEFB5: LDA.b #$F3 ; SONG F3 - max volume\n #_0AEFB7: STA.w $012C\n\n #_0AEFBA: JSL RecoverPegGFXFromMapping\n\n #_0AEFBE: INC.b $15\n #_0AEFC0: INC.w $0200\n\n #_0AEFC3: STZ.b $13\n #_0AEFC5: STZ.w $0710\n\n #_0AEFC8: RTL", + "file": "bank_0A.asm" + }, + { + "name": "ToggleStarTilesAndAdvance", + "code": "ToggleStarTilesAndAdvance:\n #_0AEFC9: JSL ToggleStarTileGraphics\n\n #_0AEFCD: INC.w $0200\n\n #_0AEFD0: RTL", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_BackdropFloorGradientTiles", + "code": "DungeonMap_BackdropFloorGradientTiles:\n #_0AEFD1: dw $1B28, $1B29, $1B2A, $1B2B, $1B2C, $1B2D, $1B2E\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_MountainStripes", + "code": "DungeonMap_MountainStripes:\n #_0AEFDF: dw $AA10, $0100 ; VRAM $2154 | 2 bytes | Horizontal\n #_0AEFE3: dw $1B2F\n\n #_0AEFE5: dw $C910, $0300 ; VRAM $2192 | 4 bytes | Horizontal\n #_0AEFE9: dw $1B2F, $1B2E\n\n #_0AEFED: dw $E510, $0B00 ; VRAM $21CA | 12 bytes | Horizontal\n #_0AEFF1: dw $1B2F, $1B2E, $5B2F, $1B2F, $1B2E, $1B2E\n\n #_0AEFFD: dw $0311, $0100 ; VRAM $2206 | 2 bytes | Horizontal\n #_0AF001: dw $1B2F\n\n #_0AF003: dw $0411, $0C40 ; VRAM $2208 | 14 bytes | Fixed horizontal\n #_0AF007: dw $1B2E\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMap_RoomTemplates", + "code": "DungeonMap_RoomTemplates:\n\n; ---------------------------------------------------------\n\n #_0AF009: dw $0B61, $5361, $8B61, $8B62 ; 0x00 - ROOM 0011\n #_0AF011: dw $0B60, $0B63, $8B60, $0B64 ; 0x01 - ROOM 0021\n #_0AF019: dw $0B00, $0B00, $0B65, $0B66 ; 0x02 - ROOM 0022\n #_0AF021: dw $0B67, $4B67, $9367, $D367 ; 0x03 - ROOM 0032\n #_0AF029: dw $0B60, $5360, $8B60, $CB60 ; 0x04 - ROOM 0002\n #_0AF031: dw $0B6A, $4B6A, $4B6D, $0B6D ; 0x05 - ROOM 0012\n #_0AF039: dw $1368, $1369, $0B00, $0B00 ; 0x06 - ROOM 0042\n #_0AF041: dw $0B6A, $136B, $0B6C, $0B6D ; 0x07 - ROOM 0041\n\n; ---------------------------------------------------------\n\n #_0AF049: dw $136E, $4B6E, $0B00, $0B00 ; 0x08 - ROOM 0080\n #_0AF051: dw $136F, $0B00, $0B00, $0B00 ; 0x09 - ROOM 0070\n #_0AF059: dw $1340, $0B00, $0B78, $1744 ; 0x0A - ROOM 0071\n #_0AF061: dw $536D, $136D, $4B76, $0B76 ; 0x0B - ROOM 0072\n #_0AF069: dw $0B70, $0B71, $0B72, $8B71 ; 0x0C - ROOM 0081\n #_0AF071: dw $0B75, $0B76, $8B75, $8B76 ; 0x0D - ROOM 0082\n #_0AF079: dw $0B00, $0B53, $0B00, $0B55 ; 0x0E - ROOM 0050\n #_0AF081: dw $1354, $5354, $0B00, $0B00 ; 0x0F - ROOM 0001\n #_0AF089: dw $4B53, $0B00, $0B56, $0B57 ; 0x10 - ROOM 0052\n #_0AF091: dw $0B00, $0B59, $0B00, $135E ; 0x11 - ROOM 0060\n #_0AF099: dw $135A, $135B, $135F, $535F ; 0x12 - ROOM 0061\n #_0AF0A1: dw $0B5C, $0B5D, $535E, $CB58 ; 0x13 - ROOM 0062\n #_0AF0A9: dw $0B50, $4B50, $1352, $5352 ; 0x14 - ROOM 0051\n\n; ---------------------------------------------------------\n\n #_0AF0B1: dw $0B00, $0B40, $1345, $0B46 ; 0x15 - ROOM 0099\n #_0AF0B9: dw $8B42, $0B47, $0B42, $0B49 ; 0x16 - ROOM 00A8\n #_0AF0C1: dw $1348, $5348, $174A, $574A ; 0x17 - ROOM 00A9\n #_0AF0C9: dw $4B47, $CB42, $4B49, $4B42 ; 0x18 - ROOM 00AA\n #_0AF0D1: dw $0B00, $0B4B, $0B00, $0B4D ; 0x19 - ROOM 00B8\n #_0AF0D9: dw $0B4C, $4B4C, $0B4E, $4B4E ; 0x1A - ROOM 00B9\n #_0AF0E1: dw $0B51, $0B44, $0B00, $0B00 ; 0x1B - ROOM 00BA\n #_0AF0E9: dw $0B4F, $4B4F, $934F, $D34F ; 0x1C - ROOM 00C9\n #_0AF0F1: dw $0B00, $0B00, $0B00, $0B40 ; 0x1D - ROOM 00C8\n #_0AF0F9: dw $0B00, $0B41, $0B00, $0B42 ; 0x1E - ROOM 00D8\n #_0AF101: dw $0B00, $0B00, $0B43, $0B43 ; 0x1F - ROOM 00D9\n #_0AF109: dw $0B00, $0B00, $9344, $0B00 ; 0x20 - ROOM 00DA\n\n; ---------------------------------------------------------\n\n #_0AF111: dw $1340, $0B00, $1341, $0B00 ; 0x21 - ROOM 0063\n #_0AF119: dw $1740, $0B40, $0B42, $0B7D ; 0x22 - ROOM 0073\n #_0AF121: dw $4B7A, $0B7A, $0B7E, $4B7E ; 0x23 - ROOM 0074\n #_0AF129: dw $0B40, $8B4D, $4BBA, $0B55 ; 0x24 - ROOM 0076\n #_0AF131: dw $0B40, $8B55, $1378, $CB53 ; 0x25 - ROOM 0083\n #_0AF139: dw $4B76, $4B75, $13BB, $53BB ; 0x26 - ROOM 0084\n #_0AF141: dw $4B7F, $4B42, $0B83, $13BC ; 0x27 - ROOM 0086\n #_0AF149: dw $0B00, $0B00, $0B79, $0B00 ; 0x28 - ROOM 0033\n #_0AF151: dw $0B6E, $4B7C, $0B00, $0B41 ; 0x29 - ROOM 0042\n #_0AF159: dw $1340, $8B55, $0B42, $0B7B ; 0x2A - ROOM 0053\n\n; ---------------------------------------------------------\n\n #_0AF161: dw $8B42, $9344, $1341, $0B00 ; 0x2B - ROOM 00E0\n #_0AF169: dw $0B53, $9344, $8B53, $9344 ; 0x2C - ROOM 00C0/ROOM 00D0\n #_0AF171: dw $8B42, $9344, $0B42, $9344 ; 0x2D - ROOM 00B0\n #_0AF179: dw $934D, $0B00, $8B53, $9344 ; 0x2E - ROOM 0040\n #_0AF181: dw $0B00, $0B00, $0B40, $0B00 ; 0x2F - ROOM 0020\n #_0AF189: dw $0B41, $0B00, $1384, $0B00 ; 0x30 - ROOM 0030\n\n; ---------------------------------------------------------\n\n #_0AF191: dw $0BB8, $13B9, $4B85, $CB7C ; 0x31 - ROOM 0066\n #_0AF199: dw $0B87, $13B0, $4B7B, $9344 ; 0x32 - ROOM 0076\n #_0AF1A1: dw $0B00, $0B00, $0B40, $0B00 ; 0x33 - ROOM 0006\n #_0AF1A9: dw $0B91, $5391, $0B9C, $4B9C ; 0x34 - ROOM 0016\n #_0AF1B1: dw $8B42, $1392, $0B93, $1394 ; 0x35 - ROOM 0026\n #_0AF1B9: dw $0B95, $0B96, $9395, $8B96 ; 0x36 - ROOM 0034\n #_0AF1C1: dw $0B97, $0B98, $8B97, $8B98 ; 0x37 - ROOM 0035\n #_0AF1C9: dw $1799, $5799, $9799, $D799 ; 0x38 - ROOM 0036\n #_0AF1D1: dw $4B98, $4B97, $CB98, $CB97 ; 0x39 - ROOM 0037\n #_0AF1D9: dw $937B, $0B00, $0B7B, $0B00 ; 0x3A - ROOM 0038\n #_0AF1E1: dw $0BA6, $4BA6, $CB7A, $8B7A ; 0x3B - ROOM 0046\n #_0AF1E9: dw $0B8E, $4B8E, $938E, $CB8E ; 0x3C - ROOM 0054\n #_0AF1F1: dw $934D, $0B8F, $1390, $5390 ; 0x3D - ROOM 0028\n\n; ---------------------------------------------------------\n\n #_0AF1F9: dw $0B00, $0B00, $0B00, $8B48 ; 0x3E - ROOM 005A\n #_0AF201: dw $0B00, $934E, $0B00, $8B4D ; 0x3F - ROOM 006A\n #_0AF209: dw $8B72, $1346, $0B45, $0B46 ; 0x40 - ROOM 000B\n #_0AF211: dw $5744, $1744, $0B00, $0B00 ; 0x41 - ROOM 000A\n #_0AF219: dw $134D, $0B00, $8B54, $0B00 ; 0x42 - ROOM 003B\n #_0AF221: dw $1349, $1349, $0B00, $0B00 ; 0x43 - ROOM 0009\n #_0AF229: dw $0B4B, $8B48, $0B72, $4B72 ; 0x44 - ROOM 004B\n #_0AF231: dw $0B00, $0B74, $0B00, $0BB0 ; 0x45 - ROOM 0019\n #_0AF239: dw $0B71, $1747, $17AF, $0B4B ; 0x46 - ROOM 001A\n #_0AF241: dw $0B6F, $1370, $0B4B, $0B00 ; 0x47 - ROOM 001B\n #_0AF249: dw SprTileDie, $8B6C, $8B6B, $0BAD ; 0x48 - ROOM 002A\n #_0AF251: dw $0B73, $0B00, $13AE, $0B46 ; 0x49 - ROOM 002B\n #_0AF259: dw $176B, $576B, $0B6A, $4B6A ; 0x4A - ROOM 003A\n #_0AF261: dw $1368, $5368, $1369, $5369 ; 0x4B - ROOM 004A\n\n; ---------------------------------------------------------\n\n #_0AF269: dw $8B4E, $0B00, $9354, $0B00 ; 0x4C - ROOM 00D5\n #_0AF271: dw $0B00, $0B00, $0B00, $5377 ; 0x4D - ROOM 0023\n\n; ---------------------------------------------------------\n\n #_0AF279: dw $0B00, $974D, $0B00, $4B7B ; 0x4E - ROOM 0091\n #_0AF281: dw $0B40, $8B4D, $0B51, $0B8D ; 0x4F - ROOM 0092\n #_0AF289: dw $537A, $137A, $4B42, $8B40 ; 0x50 - ROOM 0093\n #_0AF291: dw $0B00, $0B00, $0B00, $0B00 ; 0x51 - UNUSED\n #_0AF299: dw $0B00, $0B00, $0B40, $0B00 ; 0x52 - ROOM 0090\n #_0AF2A1: dw $CB7A, $576E, $0B00, $0B00 ; 0x53 - ROOM 00A0\n #_0AF2A9: dw $0B6E, $0B9F, $0B00, $4BA5 ; 0x54 - ROOM 00A1\n #_0AF2B1: dw $13A0, $13A1, $0BA2, $0BA3 ; 0x55 - ROOM 00A2\n #_0AF2B9: dw $0BA4, $0B00, $0BA5, $0B00 ; 0x56 - ROOM 00A3\n #_0AF2C1: dw $0B40, $8B55, $0B42, $CB87 ; 0x57 - ROOM 00B1\n #_0AF2C9: dw $8B95, $0BA7, $8B42, $0BAF ; 0x58 - ROOM 00B2\n #_0AF2D1: dw $4B78, $0B00, $4B78, $0B00 ; 0x59 - ROOM 00B3\n #_0AF2D9: dw $8B42, $0B51, $0B78, $8B51 ; 0x5A - ROOM 00C1\n #_0AF2E1: dw $0BA8, $0BA9, $0BAC, $8BA9 ; 0x5B - ROOM 00C2\n #_0AF2E9: dw $0BAA, $17AB, $13B4, $8BAB ; 0x5C - ROOM 00C3\n #_0AF2F1: dw $17B1, $0B41, $4B44, $4B42 ; 0x5D - ROOM 00D1\n #_0AF2F9: dw $0B00, $0BAD, $0B00, $13AE ; 0x5E - ROOM 00D2\n #_0AF301: dw $1340, $0BB7, $0B42, $0BB6 ; 0x5F - ROOM 0097\n #_0AF309: dw $0B00, $0B00, $139D, $139E ; 0x60 - ROOM 0098\n\n; ---------------------------------------------------------\n\n #_0AF311: dw $0B00, $0B00, $0B00, $0B79 ; 0x61 - ROOM 0029\n #_0AF319: dw $0B00, $0B00, $8B42, $0B86 ; 0x62 - ROOM 0039\n #_0AF321: dw $0B42, $8B7B, $8B42, $0B7B ; 0x63 - ROOM 0049\n #_0AF329: dw $0B87, $8B7B, $9387, $0B7B ; 0x64 - ROOM 0059\n #_0AF331: dw $0B40, $13B3, $1378, $0B8D ; 0x65 - ROOM 0056\n #_0AF339: dw $8B42, $0B88, $5378, $0B40 ; 0x66 - ROOM 0057\n #_0AF341: dw $4B44, $D342, $97B5, $4B78 ; 0x67 - ROOM 0058\n #_0AF349: dw $13B3, $8B55, $4B7B, $0B8D ; 0x68 - ROOM 0067\n #_0AF351: dw $0B89, $138A, $0B8B, $0B8C ; 0x69 - ROOM 0068\n\n; ---------------------------------------------------------\n\n #_0AF359: dw $0B00, $0B7C, $0B00, $0B00 ; 0x6A - ROOM 00DE\n #_0AF361: dw $0B00, $9348, $0B00, $0B56 ; 0x6B - ROOM 00BE\n #_0AF369: dw $0B00, $0B00, $0B88, $0B00 ; 0x6C - ROOM 00BF\n #_0AF371: dw $0B00, $0B48, $0B00, $0B00 ; 0x6D - ROOM 00CE\n #_0AF379: dw $0B00, $9348, $1786, $0B65 ; 0x6E - ROOM 009E\n #_0AF381: dw $0B00, $0B00, $CB5A, $0B00 ; 0x6F - ROOM 009F\n #_0AF389: dw $0B00, $5388, $0B00, $0B00 ; 0x70 - ROOM 00AE\n #_0AF391: dw $4B5A, $0B00, $0B00, $0B00 ; 0x71 - ROOM 00AF\n #_0AF399: dw $0B00, $CB5B, $13AB, $0BAC ; 0x72 - ROOM 007E\n #_0AF3A1: dw $CB5A, $0B00, $137E, $0B00 ; 0x73 - ROOM 007F\n #_0AF3A9: dw $0B00, $137E, $0B00, $0B00 ; 0x74 - ROOM 008E\n #_0AF3B1: dw $0B00, $8B48, $1783, $1384 ; 0x75 - ROOM 005E\n #_0AF3B9: dw $0B00, $0B00, $1385, $0B00 ; 0x76 - ROOM 005F\n #_0AF3C1: dw $0B00, $537E, $0B00, $0B00 ; 0x77 - ROOM 006E\n #_0AF3C9: dw $0B00, $8B48, $0B43, $CB43 ; 0x78 - ROOM 003E\n #_0AF3D1: dw $0B00, $0B00, $1379, $137A ; 0x79 - ROOM 003F\n #_0AF3D9: dw $0B5A, $137B, $0B00, $0B00 ; 0x7A - ROOM 004E\n #_0AF3E1: dw $0B00, $8B48, $137F, $1380 ; 0x7B - ROOM 001E\n #_0AF3E9: dw $0B00, $0B00, $1381, $1382 ; 0x7C - ROOM 001F\n #_0AF3F1: dw $0B00, $0B48, $0B00, $0B00 ; 0x7D - ROOM 002E\n #_0AF3F9: dw $0B00, $0B00, $1387, $1377 ; 0x7E - ROOM 000E\n\n; ---------------------------------------------------------\n\n #_0AF401: dw $5746, $0B47, $1349, $0B48 ; 0x7F - ROOM 0087\n #_0AF409: dw $1375, $4B42, $174A, $574A ; 0x80 - ROOM 0077\n #_0AF411: dw $0B43, $1344, $0B45, $1746 ; 0x81 - ROOM 0031\n #_0AF419: dw $1742, $5742, $8B42, $CB42 ; 0x82 - ROOM 0027\n #_0AF421: dw $1375, $5375, $8B42, $CB42 ; 0x83 - ROOM 0017\n #_0AF429: dw $4B40, $1340, $0B41, $4B41 ; 0x84 - ROOM 0007\n\n; ---------------------------------------------------------\n\n #_0AF431: dw $4B46, $0B71, $1786, $8B71 ; 0x85 - ROOM 0044\n #_0AF439: dw $1347, $0B4D, $0B65, $0B5B ; 0x86 - ROOM 0045\n #_0AF441: dw $0B00, $0B00, $9348, $0B00 ; 0x87 - ROOM 00AB\n #_0AF449: dw $0B00, $0B00, $0B00, $8B48 ; 0x88 - ROOM 00AC\n #_0AF451: dw $4B66, $8B65, $4B5B, $0B65 ; 0x89 - ROOM 00BB\n #_0AF459: dw $9365, $0B66, $0B63, $8B66 ; 0x8A - ROOM 00BC\n #_0AF461: dw $4B51, $0B5F, $CB76, $0B60 ; 0x8B - ROOM 00CB\n #_0AF469: dw $0B64, $4B4F, $4B60, $8B76 ; 0x8C - ROOM 00CC\n #_0AF471: dw $4B76, $0B61, $D376, $1362 ; 0x8D - ROOM 00DB\n #_0AF479: dw $4B61, $0B76, $CB58, $8B51 ; 0x8E - ROOM 00DC\n #_0AF481: dw $0B00, $0B00, $5746, $0B5E ; 0x8F - ROOM 0064\n #_0AF489: dw $0B00, $0B00, $0B5E, $0B46 ; 0x90 - ROOM 0065\n\n; ---------------------------------------------------------\n\n #_0AF491: dw $0B00, $0B00, $8B48, $0B00 ; 0x91 - ROOM 00A4\n #_0AF499: dw $0B4F, $0B51, $CB76, $8B76 ; 0x92 - ROOM 00B4\n #_0AF4A1: dw $5351, $0B51, $8B4F, $8B51 ; 0x93 - ROOM 00B5\n #_0AF4A9: dw $4B76, $0B76, $CB51, $8B58 ; 0x94 - ROOM 00C4\n #_0AF4B1: dw $0B54, $0B00, $8B66, $0B00 ; 0x95 - ROOM 00C5\n #_0AF4B9: dw $9348, $8B48, $0B56, $4B45 ; 0x96 - ROOM 0004\n #_0AF4C1: dw $0B00, $0B57, $0B00, $0B59 ; 0x97 - ROOM 0013\n #_0AF4C9: dw $4B50, $0B58, $CB50, $8B50 ; 0x98 - ROOM 0014\n #_0AF4D1: dw $5758, $1751, $CB58, $8B51 ; 0x99 - ROOM 0015\n #_0AF4D9: dw $0B56, $4B56, $0B65, $5756 ; 0x9A - ROOM 0024\n #_0AF4E1: dw $9348, $8B48, $0B4C, $0B4B ; 0x9B - ROOM 00B6\n #_0AF4E9: dw $0B4D, $0B00, $8B54, $0B00 ; 0x9C - ROOM 00B7\n #_0AF4F1: dw $0B4F, $0B50, $8B4F, $8B50 ; 0x9D - ROOM 00C6\n #_0AF4F9: dw $4B50, $0B51, $CB58, $8B51 ; 0x9E - ROOM 00C7\n #_0AF501: dw $0B52, $0B54, $0B53, $9354 ; 0x9F - ROOM 00D6\n\n; ---------------------------------------------------------\n\n #_0AF509: dw $9748, $9748, $138D, $138E ; 0xA0 - ROOM 001C\n #_0AF511: dw $1391, $1392, $138C, $138F ; 0xA1 - ROOM 007B\n #_0AF519: dw $1393, $1390, $9393, $138F ; 0xA2 - ROOM 007C\n #_0AF521: dw $1394, $1395, $138E, $138C ; 0xA3 - ROOM 007D\n #_0AF529: dw $175D, $1399, $975D, $538F ; 0xA4 - ROOM 008B\n #_0AF531: dw $1397, $1398, $179A, $138C ; 0xA5 - ROOM 008C\n #_0AF539: dw $1399, $1766, $138F, $D75D ; 0xA6 - ROOM 008D\n #_0AF541: dw $538E, $538F, $1391, $1392 ; 0xA7 - ROOM 009B\n #_0AF549: dw $139B, $539B, $139C, $539C ; 0xA8 - ROOM 009C\n #_0AF551: dw $138F, $138E, $5392, $5391 ; 0xA9 - ROOM 009D\n #_0AF559: dw $138A, $538A, $138B, $538B ; 0xAA - ROOM 000C\n #_0AF561: dw $0B00, $CB5B, $0B00, $8B54 ; 0xAB - ROOM 005B\n #_0AF569: dw $4B74, $13A6, $0B00, $4B48 ; 0xAC - ROOM 005C\n #_0AF571: dw $13A0, $13A1, $538E, $138E ; 0xAD - ROOM 006B\n #_0AF579: dw $D38E, $53A3, $13A4, $0B00 ; 0xAE - ROOM 005D\n #_0AF581: dw $97AA, $0B00, $538E, $1399 ; 0xAF - ROOM 006C\n #_0AF589: dw $13A4, $0B00, $138E, $0B00 ; 0xB0 - ROOM 006D\n #_0AF591: dw $0B00, $5393, $0B00, $574E ; 0xB1 - ROOM 0095\n #_0AF599: dw $4B7D, $0B00, $8B7D, $139F ; 0xB2 - ROOM 0096\n #_0AF5A1: dw $97AA, $13A4, $13A9, $53A9 ; 0xB3 - ROOM 00A5\n #_0AF5A9: dw $13A5, $13A6, $93A5, $D3A5 ; 0xB4 - ROOM 00A6\n #_0AF5B1: dw $D38E, $938E, $13A4, $13AA ; 0xB5 - ROOM 0034\n #_0AF5B9: dw $0B00, $13A6, $0B00, $8B5F ; 0xB6 - ROOM 004C\n #_0AF5C1: dw $139B, $13A6, $139C, $53A2 ; 0xB7 - ROOM 004D\n #_0AF5C9: dw $0B00, $0B00, $138C, $0B00 ; 0xB8 - ROOM 000D\n #_0AF5D1: dw $9394, $139E, $0B00, $0B00 ; 0xB9 - ROOM 001D\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapFloorCountData", + "code": "DungeonMapFloorCountData:\n #_0AF5D9: db $21, $00 ; Sewers\n #_0AF5DB: db $23, $00 ; Hyrule Castle\n #_0AF5DD: db $20, $00 ; Eastern Palace\n #_0AF5DF: db $21, $00 ; Desert Palace\n #_0AF5E1: db $70, $00 ; Agahnim's Tower\n #_0AF5E3: db $12, $00 ; Swamp Palace\n #_0AF5E5: db $11, $00 ; Palace of Darkness\n #_0AF5E7: db $12, $02 ; Misery Mire\n #_0AF5E9: db $02, $00 ; Skull Woods\n #_0AF5EB: db $17, $02 ; Ice Palace\n #_0AF5ED: db $60, $01 ; Tower of Hera\n #_0AF5EF: db $12, $00 ; Thieves' Town\n #_0AF5F1: db $13, $01 ; Turtle Rock\n #_0AF5F3: db $71, $01 ; Ganon's Tower\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapFloorToDataOffset", + "code": "DungeonMapFloorToDataOffset:\n #_0AF5F5: dw $0000\n #_0AF5F7: dw $0019\n #_0AF5F9: dw $0032\n #_0AF5FB: dw $004B\n #_0AF5FD: dw $0064\n #_0AF5FF: dw $007D\n #_0AF601: dw $0096\n #_0AF603: dw $00AF\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomPointers", + "code": "DungeonMapRoomPointers:\n #_0AF605: dw DungeonMapRoomData_Sewers\n #_0AF607: dw DungeonMapRoomData_HyruleCastle\n #_0AF609: dw DungeonMapRoomData_EasternPalace\n #_0AF60B: dw DungeonMapRoomData_DesertPalace\n #_0AF60D: dw DungeonMapRoomData_AgahnimsTower\n #_0AF60F: dw DungeonMapRoomData_SwampPalace\n #_0AF611: dw DungeonMapRoomData_PalaceofDarkness\n #_0AF613: dw DungeonMapRoomData_MiseryMire\n #_0AF615: dw DungeonMapRoomData_SkullWoods\n #_0AF617: dw DungeonMapRoomData_IcePalace\n #_0AF619: dw DungeonMapRoomData_TowerofHera\n #_0AF61B: dw DungeonMapRoomData_ThievesTown\n #_0AF61D: dw DungeonMapRoomData_TurtleRock\n #_0AF61F: dw DungeonMapRoomData_GanonsTower\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_Sewers", + "code": "DungeonMapRoomData_Sewers:\n #_0AF621: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF626: db $0F, $0F, $11, $0F, $0F ; row 1\n #_0AF62B: db $0F, $0F, $21, $22, $0F ; row 2\n #_0AF630: db $0F, $0F, $0F, $32, $0F ; row 3\n #_0AF635: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF63A: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF63F: db $0F, $0F, $02, $0F, $0F ; row 1\n #_0AF644: db $0F, $0F, $12, $0F, $0F ; row 2\n #_0AF649: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF64E: db $0F, $0F, $0F, $42, $0F ; row 4\n\n #_0AF653: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF658: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF65D: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF662: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF667: db $0F, $0F, $0F, $41, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_HyruleCastle", + "code": "DungeonMapRoomData_HyruleCastle:\n #_0AF66C: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF671: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF676: db $0F, $80, $0F, $0F, $0F ; row 2\n #_0AF67B: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF680: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF685: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF68A: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF68F: db $0F, $70, $0F, $0F, $0F ; row 2\n #_0AF694: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF699: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF69E: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF6A3: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF6A8: db $0F, $71, $72, $0F, $0F ; row 2\n #_0AF6AD: db $0F, $81, $82, $0F, $0F ; row 3\n #_0AF6B2: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF6B7: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF6BC: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF6C1: db $0F, $50, $01, $52, $0F ; row 2\n #_0AF6C6: db $0F, $60, $61, $62, $0F ; row 3\n #_0AF6CB: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF6D0: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF6D5: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF6DA: db $0F, $0F, $51, $0F, $0F ; row 2\n #_0AF6DF: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF6E4: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_EasternPalace", + "code": "DungeonMapRoomData_EasternPalace:\n #_0AF6E9: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF6EE: db $0F, $0F, $99, $0F, $0F ; row 1\n #_0AF6F3: db $0F, $A8, $A9, $AA, $0F ; row 2\n #_0AF6F8: db $0F, $B8, $B9, $BA, $0F ; row 3\n #_0AF6FD: db $0F, $0F, $C9, $0F, $0F ; row 4\n\n #_0AF702: db $C8, $0F, $0F, $0F, $0F ; row 0\n #_0AF707: db $D8, $D9, $DA, $0F, $0F ; row 1\n #_0AF70C: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF711: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF716: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_DesertPalace", + "code": "DungeonMapRoomData_DesertPalace:\n #_0AF71B: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF720: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF725: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF72A: db $0F, $73, $74, $75, $0F ; row 3\n #_0AF72F: db $0F, $83, $84, $85, $0F ; row 4\n\n #_0AF734: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF739: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF73E: db $0F, $0F, $63, $0F, $0F ; row 2\n #_0AF743: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF748: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF74D: db $0F, $0F, $33, $0F, $0F ; row 0\n #_0AF752: db $0F, $0F, $43, $0F, $0F ; row 1\n #_0AF757: db $0F, $0F, $53, $0F, $0F ; row 2\n #_0AF75C: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF761: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_AgahnimsTower", + "code": "DungeonMapRoomData_AgahnimsTower:\n #_0AF766: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF76B: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF770: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF775: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF77A: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF77F: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF784: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF789: db $0F, $0F, $E0, $0F, $0F ; row 2\n #_0AF78E: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF793: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF798: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF79D: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF7A2: db $0F, $0F, $D0, $0F, $0F ; row 2\n #_0AF7A7: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF7AC: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF7B1: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF7B6: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF7BB: db $0F, $0F, $C0, $0F, $0F ; row 2\n #_0AF7C0: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF7C5: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF7CA: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF7CF: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF7D4: db $0F, $0F, $B0, $0F, $0F ; row 2\n #_0AF7D9: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF7DE: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF7E3: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF7E8: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF7ED: db $0F, $0F, $40, $0F, $0F ; row 2\n #_0AF7F2: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF7F7: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF7FC: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF801: db $0F, $0F, $20, $0F, $0F ; row 1\n #_0AF806: db $0F, $0F, $30, $0F, $0F ; row 2\n #_0AF80B: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF810: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_SwampPalace", + "code": "DungeonMapRoomData_SwampPalace:\n #_0AF815: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF81A: db $0F, $0F, $66, $0F, $0F ; row 1\n #_0AF81F: db $0F, $0F, $76, $0F, $0F ; row 2\n #_0AF824: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF829: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF82E: db $0F, $0F, $06, $0F, $0F ; row 0\n #_0AF833: db $0F, $0F, $16, $0F, $0F ; row 1\n #_0AF838: db $0F, $0F, $26, $0F, $0F ; row 2\n #_0AF83D: db $34, $35, $36, $37, $38 ; row 3\n #_0AF842: db $0F, $0F, $46, $0F, $0F ; row 4\n\n #_0AF847: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF84C: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF851: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF856: db $54, $0F, $0F, $0F, $28 ; row 3\n #_0AF85B: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_PalaceofDarkness", + "code": "DungeonMapRoomData_PalaceofDarkness:\n #_0AF860: db $0F, $0F, $5A, $0F, $0F ; row 0\n #_0AF865: db $0F, $0F, $6A, $0B, $0F ; row 1\n #_0AF86A: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF86F: db $0F, $0F, $0A, $3B, $0F ; row 3\n #_0AF874: db $0F, $0F, $09, $4B, $0F ; row 4\n\n #_0AF879: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF87E: db $0F, $19, $1A, $1B, $0F ; row 1\n #_0AF883: db $0F, $0F, $2A, $2B, $0F ; row 2\n #_0AF888: db $0F, $0F, $3A, $0F, $0F ; row 3\n #_0AF88D: db $0F, $0F, $4A, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_MiseryMire", + "code": "DungeonMapRoomData_MiseryMire:\n #_0AF892: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF897: db $0F, $91, $92, $93, $0F ; row 1\n #_0AF89C: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF8A1: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF8A6: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF8AB: db $0F, $90, $0F, $0F, $0F ; row 0\n #_0AF8B0: db $0F, $A0, $A1, $A2, $A3 ; row 1\n #_0AF8B5: db $0F, $0F, $B1, $B2, $B3 ; row 2\n #_0AF8BA: db $0F, $0F, $C1, $C2, $C3 ; row 3\n #_0AF8BF: db $0F, $0F, $D1, $D2, $0F ; row 4\n\n #_0AF8C4: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF8C9: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF8CE: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF8D3: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF8D8: db $0F, $0F, $97, $98, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_SkullWoods", + "code": "DungeonMapRoomData_SkullWoods:\n #_0AF8DD: db $29, $0F, $0F, $0F, $0F ; row 0\n #_0AF8E2: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF8E7: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF8EC: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF8F1: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF8F6: db $39, $0F, $0F, $0F, $0F ; row 0\n #_0AF8FB: db $49, $0F, $0F, $0F, $0F ; row 1\n #_0AF900: db $59, $0F, $0F, $0F, $0F ; row 2\n #_0AF905: db $0F, $56, $57, $58, $0F ; row 3\n #_0AF90A: db $0F, $0F, $67, $68, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_IcePalace", + "code": "DungeonMapRoomData_IcePalace:\n #_0AF90F: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF914: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF919: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AF91E: db $0F, $0F, $DE, $0F, $0F ; row 3\n #_0AF923: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF928: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF92D: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF932: db $0F, $0F, $BE, $BF, $0F ; row 2\n #_0AF937: db $0F, $0F, $CE, $0F, $0F ; row 3\n #_0AF93C: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF941: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF946: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF94B: db $0F, $0F, $9E, $9F, $0F ; row 2\n #_0AF950: db $0F, $0F, $AE, $AF, $0F ; row 3\n #_0AF955: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF95A: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF95F: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF964: db $0F, $0F, $7E, $7F, $0F ; row 2\n #_0AF969: db $0F, $0F, $8E, $0F, $0F ; row 3\n #_0AF96E: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF973: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF978: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF97D: db $0F, $0F, $5E, $5F, $0F ; row 2\n #_0AF982: db $0F, $0F, $6E, $0F, $0F ; row 3\n #_0AF987: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF98C: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF991: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF996: db $0F, $0F, $3E, $3F, $0F ; row 2\n #_0AF99B: db $0F, $0F, $4E, $0F, $0F ; row 3\n #_0AF9A0: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF9A5: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF9AA: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF9AF: db $0F, $0F, $1E, $1F, $0F ; row 2\n #_0AF9B4: db $0F, $0F, $2E, $0F, $0F ; row 3\n #_0AF9B9: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF9BE: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF9C3: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF9C8: db $0F, $0F, $0E, $0F, $0F ; row 2\n #_0AF9CD: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF9D2: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_TowerofHera", + "code": "DungeonMapRoomData_TowerofHera:\n #_0AF9D7: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF9DC: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF9E1: db $0F, $0F, $87, $0F, $0F ; row 2\n #_0AF9E6: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AF9EB: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AF9F0: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AF9F5: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AF9FA: db $0F, $0F, $77, $0F, $0F ; row 2\n #_0AF9FF: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA04: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFA09: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA0E: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFA13: db $0F, $0F, $31, $0F, $0F ; row 2\n #_0AFA18: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA1D: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFA22: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA27: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFA2C: db $0F, $0F, $27, $0F, $0F ; row 2\n #_0AFA31: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA36: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFA3B: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA40: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFA45: db $0F, $0F, $17, $0F, $0F ; row 2\n #_0AFA4A: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA4F: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFA54: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA59: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFA5E: db $0F, $0F, $07, $0F, $0F ; row 2\n #_0AFA63: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA68: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_ThievesTown", + "code": "DungeonMapRoomData_ThievesTown:\n #_0AFA6D: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA72: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFA77: db $0F, $44, $45, $0F, $0F ; row 2\n #_0AFA7C: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFA81: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFA86: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFA8B: db $0F, $AB, $AC, $0F, $0F ; row 1\n #_0AFA90: db $0F, $BB, $BC, $0F, $0F ; row 2\n #_0AFA95: db $0F, $CB, $CC, $0F, $0F ; row 3\n #_0AFA9A: db $0F, $DB, $DC, $0F, $0F ; row 4\n\n #_0AFA9F: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFAA4: db $0F, $64, $65, $0F, $0F ; row 1\n #_0AFAA9: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AFAAE: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFAB3: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_TurtleRock", + "code": "DungeonMapRoomData_TurtleRock:\n #_0AFAB8: db $0F, $A4, $0F, $0F, $0F ; row 0\n #_0AFABD: db $0F, $B4, $0F, $0F, $0F ; row 1\n #_0AFAC2: db $0F, $0F, $0F, $0F, $0F ; row 2\n #_0AFAC7: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFACC: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFAD1: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFAD6: db $0F, $0F, $B5, $0F, $0F ; row 1\n #_0AFADB: db $0F, $C4, $C5, $0F, $0F ; row 2\n #_0AFAE0: db $0F, $0F, $D5, $0F, $0F ; row 3\n #_0AFAE5: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFAEA: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFAEF: db $0F, $0F, $04, $0F, $0F ; row 1\n #_0AFAF4: db $0F, $13, $14, $15, $0F ; row 2\n #_0AFAF9: db $0F, $23, $24, $0F, $0F ; row 3\n #_0AFAFE: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB03: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB08: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFB0D: db $0F, $0F, $0F, $B6, $B7 ; row 2\n #_0AFB12: db $0F, $0F, $0F, $C6, $C7 ; row 3\n #_0AFB17: db $0F, $0F, $0F, $D6, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomData_GanonsTower", + "code": "DungeonMapRoomData_GanonsTower:\n #_0AFB1C: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB21: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFB26: db $0F, $0F, $1C, $0F, $0F ; row 2\n #_0AFB2B: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFB30: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB35: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB3A: db $0F, $7B, $7C, $7D, $0F ; row 1\n #_0AFB3F: db $0F, $8B, $8C, $8D, $0F ; row 2\n #_0AFB44: db $0F, $9B, $9C, $9D, $0F ; row 3\n #_0AFB49: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB4E: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB53: db $0F, $0F, $0F, $0F, $0F ; row 1\n #_0AFB58: db $0F, $0F, $0C, $0F, $0F ; row 2\n #_0AFB5D: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFB62: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB67: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB6C: db $0F, $0F, $5B, $5C, $0F ; row 1\n #_0AFB71: db $0F, $0F, $6B, $0F, $0F ; row 2\n #_0AFB76: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFB7B: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB80: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB85: db $0F, $0F, $0F, $5D, $0F ; row 1\n #_0AFB8A: db $0F, $0F, $6C, $6D, $0F ; row 2\n #_0AFB8F: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFB94: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFB99: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFB9E: db $0F, $0F, $95, $96, $0F ; row 1\n #_0AFBA3: db $0F, $0F, $A5, $A6, $0F ; row 2\n #_0AFBA8: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFBAD: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFBB2: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFBB7: db $0F, $0F, $0F, $3D, $0F ; row 1\n #_0AFBBC: db $0F, $0F, $4C, $4D, $0F ; row 2\n #_0AFBC1: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFBC6: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n #_0AFBCB: db $0F, $0F, $0F, $0F, $0F ; row 0\n #_0AFBD0: db $0F, $0F, $0D, $0F, $0F ; row 1\n #_0AFBD5: db $0F, $0F, $1D, $0F, $0F ; row 2\n #_0AFBDA: db $0F, $0F, $0F, $0F, $0F ; row 3\n #_0AFBDF: db $0F, $0F, $0F, $0F, $0F ; row 4\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapRoomLayoutPointers", + "code": "DungeonMapRoomLayoutPointers:\n #_0AFBE4: dw DungeonMapLayoutData_Sewers\n #_0AFBE6: dw DungeonMapLayoutData_HyruleCastle\n #_0AFBE8: dw DungeonMapLayoutData_EasternPalace\n #_0AFBEA: dw DungeonMapLayoutData_DesertPalace\n #_0AFBEC: dw DungeonMapLayoutData_AgahnimsTower\n #_0AFBEE: dw DungeonMapLayoutData_SwampPalace\n #_0AFBF0: dw DungeonMapLayoutData_PalaceOfDarkness\n #_0AFBF2: dw DungeonMapLayoutData_MiseryMire\n #_0AFBF4: dw DungeonMapLayoutData_SkullWoods\n #_0AFBF6: dw DungeonMapLayoutData_IcePalace\n #_0AFBF8: dw DungeonMapLayoutData_TowerOfHera\n #_0AFBFA: dw DungeonMapLayoutData_ThievesTown\n #_0AFBFC: dw DungeonMapLayoutData_TurtleRock\n #_0AFBFE: dw DungeonMapLayoutData_GanonsTower\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_Sewers", + "code": "DungeonMapLayoutData_Sewers:\n #_0AFC00: db $00 ; Room 0011\n #_0AFC01: db $01 ; Room 0021\n #_0AFC02: db $02 ; Room 0022\n #_0AFC03: db $03 ; Room 0032\n #_0AFC04: db $04 ; Room 0002\n #_0AFC05: db $05 ; Room 0012\n #_0AFC06: db $06 ; Room 0042\n #_0AFC07: db $07 ; Room 0041\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_HyruleCastle", + "code": "DungeonMapLayoutData_HyruleCastle:\n #_0AFC08: db $08 ; Room 0080\n #_0AFC09: db $09 ; Room 0070\n #_0AFC0A: db $0A ; Room 0071\n #_0AFC0B: db $0B ; Room 0072\n #_0AFC0C: db $0C ; Room 0081\n #_0AFC0D: db $0D ; Room 0082\n #_0AFC0E: db $0E ; Room 0050\n #_0AFC0F: db $0F ; Room 0001\n #_0AFC10: db $10 ; Room 0052\n #_0AFC11: db $11 ; Room 0060\n #_0AFC12: db $12 ; Room 0061\n #_0AFC13: db $13 ; Room 0062\n #_0AFC14: db $14 ; Room 0051\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_EasternPalace", + "code": "DungeonMapLayoutData_EasternPalace:\n #_0AFC15: db $15 ; Room 0099\n #_0AFC16: db $16 ; Room 00A8\n #_0AFC17: db $17 ; Room 00A9\n #_0AFC18: db $18 ; Room 00AA\n #_0AFC19: db $19 ; Room 00B8\n #_0AFC1A: db $1A ; Room 00B9\n #_0AFC1B: db $1B ; Room 00BA\n #_0AFC1C: db $1C ; Room 00C9\n #_0AFC1D: db $1D ; Room 00C8\n #_0AFC1E: db $1E ; Room 00D8\n #_0AFC1F: db $1F ; Room 00D9\n #_0AFC20: db $20 ; Room 00DA\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_DesertPalace", + "code": "DungeonMapLayoutData_DesertPalace:\n #_0AFC21: db $22 ; Room 0073\n #_0AFC22: db $23 ; Room 0074\n #_0AFC23: db $24 ; Room 0076\n #_0AFC24: db $25 ; Room 0083\n #_0AFC25: db $26 ; Room 0084\n #_0AFC26: db $27 ; Room 0086\n #_0AFC27: db $21 ; Room 0063\n #_0AFC28: db $28 ; Room 0033\n #_0AFC29: db $29 ; Room 0042\n #_0AFC2A: db $2A ; Room 0053\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_AgahnimsTower", + "code": "DungeonMapLayoutData_AgahnimsTower:\n #_0AFC2B: db $2B ; Room 00E0\n #_0AFC2C: db $2C ; Room 00D0\n #_0AFC2D: db $2C ; Room 00C0\n #_0AFC2E: db $2D ; Room 00B0\n #_0AFC2F: db $2E ; Room 0040\n #_0AFC30: db $2F ; Room 0020\n #_0AFC31: db $30 ; Room 0030\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_SwampPalace", + "code": "DungeonMapLayoutData_SwampPalace:\n #_0AFC32: db $31 ; Room 0066\n #_0AFC33: db $32 ; Room 0076\n #_0AFC34: db $33 ; Room 0006\n #_0AFC35: db $34 ; Room 0016\n #_0AFC36: db $35 ; Room 0026\n #_0AFC37: db $36 ; Room 0034\n #_0AFC38: db $37 ; Room 0035\n #_0AFC39: db $38 ; Room 0036\n #_0AFC3A: db $39 ; Room 0037\n #_0AFC3B: db $3A ; Room 0038\n #_0AFC3C: db $3B ; Room 0046\n #_0AFC3D: db $3C ; Room 0054\n #_0AFC3E: db $3D ; Room 0028\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_PalaceOfDarkness", + "code": "DungeonMapLayoutData_PalaceOfDarkness:\n #_0AFC3F: db $3E ; Room 005A\n #_0AFC40: db $3F ; Room 006A\n #_0AFC41: db $40 ; Room 000B\n #_0AFC42: db $41 ; Room 000A\n #_0AFC43: db $42 ; Room 003B\n #_0AFC44: db $43 ; Room 0009\n #_0AFC45: db $44 ; Room 004B\n #_0AFC46: db $45 ; Room 0019\n #_0AFC47: db $46 ; Room 001A\n #_0AFC48: db $47 ; Room 001B\n #_0AFC49: db $48 ; Room 002A\n #_0AFC4A: db $49 ; Room 002B\n #_0AFC4B: db $4A ; Room 003A\n #_0AFC4C: db $4B ; Room 004A\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_MiseryMire", + "code": "DungeonMapLayoutData_MiseryMire:\n #_0AFC4D: db $4E ; Room 0091\n #_0AFC4E: db $4F ; Room 0092\n #_0AFC4F: db $50 ; Room 0093\n #_0AFC50: db $52 ; Room 0090\n #_0AFC51: db $53 ; Room 00A0\n #_0AFC52: db $54 ; Room 00A1\n #_0AFC53: db $55 ; Room 00A2\n #_0AFC54: db $56 ; Room 00A3\n #_0AFC55: db $57 ; Room 00B1\n #_0AFC56: db $58 ; Room 00B2\n #_0AFC57: db $59 ; Room 00B3\n #_0AFC58: db $5A ; Room 00C1\n #_0AFC59: db $5B ; Room 00C2\n #_0AFC5A: db $5C ; Room 00C3\n #_0AFC5B: db $5D ; Room 00D1\n #_0AFC5C: db $5E ; Room 00D2\n #_0AFC5D: db $5F ; Room 0097\n #_0AFC5E: db $60 ; Room 0098\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_SkullWoods", + "code": "DungeonMapLayoutData_SkullWoods:\n #_0AFC5F: db $61 ; Room 0029\n #_0AFC60: db $62 ; Room 0039\n #_0AFC61: db $63 ; Room 0049\n #_0AFC62: db $64 ; Room 0059\n #_0AFC63: db $65 ; Room 0056\n #_0AFC64: db $66 ; Room 0057\n #_0AFC65: db $67 ; Room 0058\n #_0AFC66: db $68 ; Room 0067\n #_0AFC67: db $69 ; Room 0068\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_IcePalace", + "code": "DungeonMapLayoutData_IcePalace:\n #_0AFC68: db $6A ; Room 00DE\n #_0AFC69: db $6B ; Room 00BE\n #_0AFC6A: db $6C ; Room 00BF\n #_0AFC6B: db $6D ; Room 00CE\n #_0AFC6C: db $6E ; Room 009E\n #_0AFC6D: db $6F ; Room 009F\n #_0AFC6E: db $70 ; Room 00AE\n #_0AFC6F: db $71 ; Room 00AF\n #_0AFC70: db $72 ; Room 007E\n #_0AFC71: db $73 ; Room 007F\n #_0AFC72: db $74 ; Room 008E\n #_0AFC73: db $75 ; Room 005E\n #_0AFC74: db $76 ; Room 005F\n #_0AFC75: db $77 ; Room 006E\n #_0AFC76: db $78 ; Room 003E\n #_0AFC77: db $79 ; Room 003F\n #_0AFC78: db $7A ; Room 004E\n #_0AFC79: db $7B ; Room 001E\n #_0AFC7A: db $7C ; Room 001F\n #_0AFC7B: db $7D ; Room 002E\n #_0AFC7C: db $7E ; Room 000E\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_TowerOfHera", + "code": "DungeonMapLayoutData_TowerOfHera:\n #_0AFC7D: db $7F ; Room 0087\n #_0AFC7E: db $80 ; Room 0077\n #_0AFC7F: db $81 ; Room 0031\n #_0AFC80: db $82 ; Room 0027\n #_0AFC81: db $83 ; Room 0017\n #_0AFC82: db $84 ; Room 0007\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_ThievesTown", + "code": "DungeonMapLayoutData_ThievesTown:\n #_0AFC83: db $85 ; Room 0044\n #_0AFC84: db $86 ; Room 0045\n #_0AFC85: db $87 ; Room 00AB\n #_0AFC86: db $88 ; Room 00AC\n #_0AFC87: db $89 ; Room 00BB\n #_0AFC88: db $8A ; Room 00BC\n #_0AFC89: db $8B ; Room 00CB\n #_0AFC8A: db $8C ; Room 00CC\n #_0AFC8B: db $8D ; Room 00DB\n #_0AFC8C: db $8E ; Room 00DC\n #_0AFC8D: db $8F ; Room 0064\n #_0AFC8E: db $90 ; Room 0065\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_TurtleRock", + "code": "DungeonMapLayoutData_TurtleRock:\n #_0AFC8F: db $91 ; Room 00A4\n #_0AFC90: db $92 ; Room 00B4\n #_0AFC91: db $93 ; Room 00B5\n #_0AFC92: db $94 ; Room 00C4\n #_0AFC93: db $95 ; Room 00C5\n #_0AFC94: db $4C ; Room 00D5\n #_0AFC95: db $96 ; Room 0004\n #_0AFC96: db $97 ; Room 0013\n #_0AFC97: db $98 ; Room 0014\n #_0AFC98: db $99 ; Room 0015\n #_0AFC99: db $4D ; Room 0023\n #_0AFC9A: db $9A ; Room 0024\n #_0AFC9B: db $9B ; Room 00B6\n #_0AFC9C: db $9C ; Room 00B7\n #_0AFC9D: db $9D ; Room 00C6\n #_0AFC9E: db $9E ; Room 00C7\n #_0AFC9F: db $9F ; Room 00D6\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "DungeonMapLayoutData_GanonsTower", + "code": "DungeonMapLayoutData_GanonsTower:\n #_0AFCA0: db $A0 ; Room 001C\n #_0AFCA1: db $A1 ; Room 007B\n #_0AFCA2: db $A2 ; Room 007C\n #_0AFCA3: db $A3 ; Room 007D\n #_0AFCA4: db $A4 ; Room 008B\n #_0AFCA5: db $A5 ; Room 008C\n #_0AFCA6: db $A6 ; Room 008D\n #_0AFCA7: db $A7 ; Room 009B\n #_0AFCA8: db $A8 ; Room 009C\n #_0AFCA9: db $A9 ; Room 009D\n #_0AFCAA: db $AA ; Room 000C\n #_0AFCAB: db $AB ; Room 005B\n #_0AFCAC: db $AC ; Room 005C\n #_0AFCAD: db $AD ; Room 006B\n #_0AFCAE: db $AE ; Room 005D\n #_0AFCAF: db $AF ; Room 006C\n #_0AFCB0: db $B0 ; Room 006D\n #_0AFCB1: db $B1 ; Room 0095\n #_0AFCB2: db $B2 ; Room 0096\n #_0AFCB3: db $B3 ; Room 00A5\n #_0AFCB4: db $B4 ; Room 00A6\n #_0AFCB5: db $B5 ; Room 0034\n #_0AFCB6: db $B6 ; Room 004C\n #_0AFCB7: db $B7 ; Room 004D\n #_0AFCB8: db $B8 ; Room 000D\n #_0AFCB9: db $B9 ; Room 001D\n\n; =========================================================\n; FREE ROM: 0x26\n; =========================================================", + "file": "bank_0A.asm" + }, + { + "name": "NULL_0AFCBA", + "code": "NULL_0AFCBA:\n #_0AFCBA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AFCC2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AFCCA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AFCD2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AFCDA: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "HUDBigNumbersTop", + "code": "HUDBigNumbersTop:\n #_0AFCE0: dw $2508 ; 1\n #_0AFCE2: dw $2509 ; 2\n #_0AFCE4: dw $2509 ; 3\n #_0AFCE6: dw $250A ; 4\n #_0AFCE8: dw $250B ; 5\n #_0AFCEA: dw $250C ; 6\n #_0AFCEC: dw $250D ; 7\n #_0AFCEE: dw $251D ; 8\n #_0AFCF0: dw $E51C ; 9\n #_0AFCF2: dw $250E ; 0\n #_0AFCF4: dw $007F ; -\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "HUDBigNumbersBottom", + "code": "HUDBigNumbersBottom:\n #_0AFCF6: dw $2518 ; 1\n #_0AFCF8: dw $2519 ; 2\n #_0AFCFA: dw $A509 ; 3\n #_0AFCFC: dw $251A ; 4\n #_0AFCFE: dw $251B ; 5\n #_0AFD00: dw $251C ; 6\n #_0AFD02: dw $2518 ; 7\n #_0AFD04: dw $A51D ; 8\n #_0AFD06: dw $E50C ; 9\n #_0AFD08: dw $A50E ; 0\n #_0AFD0A: dw $007F ; -\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "HUD_HandleFloorIndicator", + "code": "HUD_HandleFloorIndicator:\n #_0AFD0C: REP #$30\n\n #_0AFD0E: LDA.w $04A0\n #_0AFD11: AND.w #$00FF\n #_0AFD14: BEQ HUD_HideBigNumbers\n\n #_0AFD16: INC A\n #_0AFD17: CMP.w #$00C0\n #_0AFD1A: BNE .dont_clear\n\n #_0AFD1C: LDA.w #$0000\n\n.dont_clear\n #_0AFD1F: STA.w $04A0\n\n; ---------------------------------------------------------\n\n #_0AFD22: PHB\n #_0AFD23: PHK\n #_0AFD24: PLB\n\n #_0AFD25: LDA.w #$251E\n #_0AFD28: STA.l $7EC7F2\n\n #_0AFD2C: INC A\n #_0AFD2D: STA.l $7EC834\n\n #_0AFD31: INC A\n #_0AFD32: STA.l $7EC832\n\n #_0AFD36: LDA.w #$250F\n #_0AFD39: STA.l $7EC7F4\n\n #_0AFD3D: LDX.w #$0000\n\n #_0AFD40: LDA.b $A3\n #_0AFD42: BMI .basement_floors\n\n #_0AFD44: LDA.b $A4\n #_0AFD46: BNE .no_rain_noise\n\n #_0AFD48: LDA.b $A0\n #_0AFD4A: CMP.w #$0002 ; ROOM 0002\n #_0AFD4D: BEQ .no_rain_noise\n\n #_0AFD4F: SEP #$20\n\n #_0AFD51: LDA.l $7EF3C5\n #_0AFD55: CMP.b #$02\n #_0AFD57: BCS .too_late_for_rain\n\n #_0AFD59: LDA.b #$03 ; SFX1.03\n #_0AFD5B: STA.w $012D\n\n; ---------------------------------------------------------\n\n.too_late_for_rain\n #_0AFD5E: REP #$20\n\n.no_rain_noise\n #_0AFD60: LDA.b $A4\n #_0AFD62: AND.w #$00FF\n #_0AFD65: BRA .continue\n\n.basement_floors\n #_0AFD67: SEP #$20\n\n #_0AFD69: LDA.b #$05 ; SFX1.05\n #_0AFD6B: STA.w $012D\n\n #_0AFD6E: REP #$20\n\n #_0AFD70: INX\n #_0AFD71: INX\n\n #_0AFD72: LDA.b $A4\n #_0AFD74: ORA.w #$FF00\n #_0AFD77: EOR.w #$FFFF\n\n; ---------------------------------------------------------\n\n.continue\n #_0AFD7A: ASL A\n #_0AFD7B: TAY\n\n #_0AFD7C: LDA.w HUDBigNumbersTop,Y\n #_0AFD7F: STA.l $7EC7F2,X\n\n #_0AFD83: LDA.w HUDBigNumbersBottom,Y\n #_0AFD86: STA.l $7EC832,X\n\n #_0AFD8A: SEP #$30\n\n #_0AFD8C: PLB\n\n #_0AFD8D: INC.b $16\n\n #_0AFD8F: RTL", + "file": "bank_0A.asm" + }, + { + "name": "HUD_HideBigNumbers", + "code": "HUD_HideBigNumbers:\n #_0AFD90: REP #$20\n\n #_0AFD92: LDA.w #$007F\n #_0AFD95: STA.l $7EC7F2\n #_0AFD99: STA.l $7EC832\n #_0AFD9D: STA.l $7EC7F4\n #_0AFDA1: STA.l $7EC834\n\n #_0AFDA5: SEP #$30\n\n #_0AFDA7: RTL", + "file": "bank_0A.asm" + }, + { + "name": "HUD_HandleBigTimer", + "code": "HUD_HandleBigTimer:\n #_0AFDA8: LDA.w $04B5\n #_0AFDAB: BNE .dont_tick\n\n #_0AFDAD: LDA.w $04B4\n #_0AFDB0: BMI .timer_ended\n\n #_0AFDB2: DEC.w $04B4\n\n #_0AFDB5: LDA.b #$3E\n #_0AFDB7: STA.w $04B5\n\n.dont_tick\n #_0AFDBA: DEC.w $04B5\n\n #_0AFDBD: LDA.w $04B4\n #_0AFDC0: BPL .draw_numbers\n\n.timer_ended\n #_0AFDC2: LDA.b #$FF\n #_0AFDC4: STA.w $04B4\n\n #_0AFDC7: REP #$30\n\n #_0AFDC9: BRA HUD_HideBigNumbers\n\n; ---------------------------------------------------------\n\n.draw_numbers\n #_0AFDCB: LDA.w $04B4\n #_0AFDCE: STA.w WRDIVL\n\n #_0AFDD1: STZ.w WRDIVH\n\n #_0AFDD4: LDA.b #10\n #_0AFDD6: STA.w $4206\n\n #_0AFDD9: NOP ; 8 NOP\n #_0AFDDA: NOP\n #_0AFDDB: NOP\n #_0AFDDC: NOP\n #_0AFDDD: NOP\n #_0AFDDE: NOP\n #_0AFDDF: NOP\n #_0AFDE0: NOP\n\n #_0AFDE1: LDA.w RDDIV\n #_0AFDE4: ASL A\n #_0AFDE5: STA.b $00\n\n #_0AFDE7: LDA.w RDMPY\n #_0AFDEA: ASL A\n #_0AFDEB: STA.b $02\n\n; ---------------------------------------------------------\n\n #_0AFDED: PHB\n #_0AFDEE: PHK\n #_0AFDEF: PLB\n\n #_0AFDF0: REP #$20\n\n #_0AFDF2: LDX.b #$02\n\n.next_number\n #_0AFDF4: LDY.b $00,X\n\n #_0AFDF6: DEY\n #_0AFDF7: DEY\n #_0AFDF8: BPL .draw_digit\n\n #_0AFDFA: LDY.b #$12\n #_0AFDFC: CPX.b #$00\n #_0AFDFE: BNE .draw_digit\n\n #_0AFE00: LDY.b #$14\n\n.draw_digit\n #_0AFE02: LDA.w HUDBigNumbersTop,Y\n #_0AFE05: STA.l $7EC7F2,X\n\n #_0AFE09: LDA.w HUDBigNumbersBottom,Y\n #_0AFE0C: STA.l $7EC832,X\n\n #_0AFE10: DEX\n #_0AFE11: DEX\n #_0AFE12: BPL .next_number\n\n #_0AFE14: SEP #$20\n\n #_0AFE16: PLB\n\n #_0AFE17: RTL", + "file": "bank_0A.asm" + }, + { + "name": "NULL_0AFE18", + "code": "NULL_0AFE18:\n #_0AFE18: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "GameOver_InitializeLetters", + "code": "GameOver_InitializeLetters:\n #_0AFE20: PHB\n #_0AFE21: PHK\n #_0AFE22: PLB\n\n #_0AFE23: STZ.w $035F\n\n #_0AFE26: LDA.b #$B0\n #_0AFE28: STA.w $0C04\n #_0AFE2B: STA.w $0C05\n #_0AFE2E: STA.w $0C06\n #_0AFE31: STA.w $0C07\n\n #_0AFE34: STA.w $0C08\n #_0AFE37: STA.w $0C09\n #_0AFE3A: STA.w $0C0A\n #_0AFE3D: STA.w $0C0B\n\n; ---------------------------------------------------------\n\n #_0AFE40: LDA.b #$00\n #_0AFE42: STA.w $0C18\n #_0AFE45: STA.w $0C19\n #_0AFE48: STA.w $0C1A\n #_0AFE4B: STA.w $0C1B\n\n #_0AFE4E: STA.w $0C1C\n #_0AFE51: STA.w $0C1D\n #_0AFE54: STA.w $0C1E\n #_0AFE57: STA.w $0C1F\n\n; ---------------------------------------------------------\n\n #_0AFE5A: INC A\n #_0AFE5B: STA.w $0C4A\n\n #_0AFE5E: LDA.b #$06\n #_0AFE60: STA.w $039D\n\n #_0AFE63: PLB\n #_0AFE64: RTL", + "file": "bank_0A.asm" + }, + { + "name": "NULL_0AFE65", + "code": "NULL_0AFE65:\n #_0AFE65: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0AFE6D: db $FF, $FF, $FF\n\n; =========================================================\n\npool Underworld_HandleLayerEffect\n\n.vectors\n #_0AFE70: dw LayerEffect_Nothing ; 00\n #_0AFE72: dw LayerEffect_Nothing ; 01\n #_0AFE74: dw LayerEffect_Scroll ; 02\n #_0AFE76: dw LayerEffect_WaterRapids ; 03\n #_0AFE78: dw LayerEffect_Trinexx ; 04\n #_0AFE7A: dw LayerEffect_Agahnim2 ; 05\n #_0AFE7C: dw LayerEffect_InvisibleFloor ; 06\n #_0AFE7E: dw LayerEffect_Ganon ; 07\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0A.asm" + }, + { + "name": "Underworld_HandleLayerEffect", + "code": "Underworld_HandleLayerEffect:\n #_0AFE80: LDA.b $AD\n #_0AFE82: ASL A\n #_0AFE83: TAX\n\n #_0AFE84: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_Nothing", + "code": "LayerEffect_Nothing:\n #_0AFE87: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_Scroll", + "code": "LayerEffect_Scroll:\n #_0AFE88: LDA.w $0403\n #_0AFE8B: AND.b #$80\n #_0AFE8D: BEQ .continue\n\n #_0AFE8F: STZ.b $AD\n\n #_0AFE91: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_Trinexx", + "code": "LayerEffect_Trinexx:\n #_0AFEEE: REP #$20\n\n #_0AFEF0: LDA.w $0422\n #_0AFEF3: CLC\n #_0AFEF4: ADC.w $0312\n #_0AFEF7: STA.w $0422\n\n #_0AFEFA: LDA.w $0424\n #_0AFEFD: CLC\n #_0AFEFE: ADC.w $0310\n #_0AFF01: STA.w $0424\n\n #_0AFF04: STZ.w $0312\n #_0AFF07: STZ.w $0310\n\n #_0AFF0A: SEP #$20\n\n #_0AFF0C: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_Agahnim2", + "code": "LayerEffect_Agahnim2:\n #_0AFF0D: LDA.b $1A\n #_0AFF0F: AND.b #$7F\n #_0AFF11: CMP.b #$03\n #_0AFF13: BEQ .flash\n\n #_0AFF15: CMP.b #$05\n #_0AFF17: BEQ .restore\n\n #_0AFF19: CMP.b #$24\n #_0AFF1B: BEQ .flash\n\n #_0AFF1D: CMP.b #$26\n #_0AFF1F: BNE .disable\n\n; ---------------------------------------------------------\n\n.restore\n #_0AFF21: REP #$20\n\n #_0AFF23: LDA.l $7EC3DA\n #_0AFF27: STA.l $7EC5DA\n\n #_0AFF2B: LDA.l $7EC3DC\n #_0AFF2F: STA.l $7EC5DC\n\n #_0AFF33: LDA.l $7EC3DE\n\n; ---------------------------------------------------------\n\n.set_color\n #_0AFF37: STA.l $7EC5DE\n #_0AFF3B: STA.l $7EC5EE\n\n #_0AFF3F: SEP #$20\n\n #_0AFF41: INC.b $15\n\n; ---------------------------------------------------------\n\n.disable\n #_0AFF43: LDA.b #$02\n #_0AFF45: STA.b $1D\n\n #_0AFF47: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_InvisibleFloor", + "code": "LayerEffect_InvisibleFloor:\n #_0AFF5D: REP #$30\n\n #_0AFF5F: LDX.w #$0000\n #_0AFF62: STX.b $00\n\n.next\n #_0AFF64: LDA.w $0540,X\n #_0AFF67: ASL A\n #_0AFF68: BCC .skip\n\n #_0AFF6A: INC.b $00\n\n.skip\n #_0AFF6C: INX\n #_0AFF6D: INX\n #_0AFF6E: CPX.w #$0020\n #_0AFF71: BNE .next\n\n; ---------------------------------------------------------\n\n #_0AFF73: LDX.w #$2940 ; RGB: #005050\n #_0AFF76: LDY.w #$4E60 ; RGB: #009898\n\n #_0AFF79: LDA.b $00\n #_0AFF7B: BNE .dont_use_black\n\n #_0AFF7D: LDX.w #$0000 ; RGB: #000000\n #_0AFF80: LDY.w #$0000 ; RGB: #000000\n\n.dont_use_black\n #_0AFF83: TXA\n\n #_0AFF84: CMP.l $7EC3F6\n #_0AFF88: BEQ .already_matches\n\n #_0AFF8A: STA.l $7EC3F6\n #_0AFF8E: STA.l $7EC5F6\n\n #_0AFF92: TYA\n #_0AFF93: STA.l $7EC3F8\n #_0AFF97: STA.l $7EC5F8\n\n #_0AFF9B: INC.b $15\n\n.already_matches\n #_0AFF9D: SEP #$30\n\n #_0AFF9F: LDA.b #$02\n #_0AFFA1: STA.b $1D\n\n #_0AFFA3: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_Ganon", + "code": "LayerEffect_Ganon:\n #_0AFFA4: STZ.w $04C5\n\n #_0AFFA7: REP #$30\n\n #_0AFFA9: LDX.w #$0000\n\n.next_torch_check\n #_0AFFAC: LDA.w $0540,X\n #_0AFFAF: ASL A\n #_0AFFB0: BCC .torch_off\n\n #_0AFFB2: INC.w $04C5\n\n.torch_off\n #_0AFFB5: INX\n #_0AFFB6: INX\n #_0AFFB7: CPX.w #$0006\n #_0AFFBA: BNE .next_torch_check\n\n; ---------------------------------------------------------\n\n #_0AFFBC: SEP #$30\n\n #_0AFFBE: LDA.w $04C5\n #_0AFFC1: BNE .not_dark\n\n #_0AFFC3: STZ.b $1D\n\n #_0AFFC5: LDA.b #$B3\n #_0AFFC7: STA.b $9A\n\n #_0AFFC9: RTL", + "file": "bank_0A.asm" + }, + { + "name": "LayerEffect_WaterRapids", + "code": "LayerEffect_WaterRapids:\n #_0AFFDE: REP #$21\n\n #_0AFFE0: LDA.w #$8000\n #_0AFFE3: ADC.w $041C\n #_0AFFE6: STA.w $041C\n\n #_0AFFE9: ROL A\n #_0AFFEA: AND.w #$0001\n #_0AFFED: STA.b $00\n\n #_0AFFEF: LDA.w #$0000\n #_0AFFF2: SEC\n #_0AFFF3: SBC.b $00\n #_0AFFF5: STA.w $0312\n\n #_0AFFF8: SEP #$20\n\n #_0AFFFA: RTL", + "file": "bank_0A.asm" + }, + { + "name": "Link_Main", + "code": "Link_Main:\n #_078000: PHB\n #_078001: PHK\n #_078002: PLB\n\n #_078003: REP #$20\n\n #_078005: LDA.b $22\n #_078007: STA.w $0FC2\n\n #_07800A: LDA.b $20\n #_07800C: STA.w $0FC4\n\n #_07800F: SEP #$20\n\n #_078011: STZ.w $0FC1\n\n #_078014: LDA.w $02E4\n #_078017: BNE .nocontrol\n\n #_078019: JSR Link_ControlHandler\n\n.nocontrol\n #_07801C: JSR HandleSomariaAndGraves\n\n #_07801F: PLB\n\n #_078020: RTL", + "file": "bank_07.asm" + }, + { + "name": "PlaySFX_Set1", + "code": "PlaySFX_Set1:\n #_078021: JSR PlaySFX_SetPan\n #_078024: STA.w $012D\n\n #_078027: RTS", + "file": "bank_07.asm" + }, + { + "name": "PlaySFX_Set2", + "code": "PlaySFX_Set2:\n #_078028: JSR PlaySFX_SetPan\n #_07802B: STA.w $012E\n\n #_07802E: RTS", + "file": "bank_07.asm" + }, + { + "name": "PlaySFX_Set3", + "code": "PlaySFX_Set3:\n #_07802F: JSR PlaySFX_SetPan\n #_078032: STA.w $012F\n\n #_078035: RTS", + "file": "bank_07.asm" + }, + { + "name": "PlaySFX_SetPan", + "code": "PlaySFX_SetPan:\n #_078036: STA.w $0CF8\n\n #_078039: JSL Link_CalculateSFXPan\n #_07803D: ORA.w $0CF8\n\n #_078040: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_ControlHandler", + "code": "Link_ControlHandler:\n #_07807F: LDA.w $0373\n #_078082: BEQ .no_damage\n\n #_078084: LDA.b $55\n #_078086: BEQ .no_cape\n\n #_078088: STZ.w $0373\n\n #_07808B: STZ.b $4D\n #_07808D: STZ.b $46\n\n #_07808F: BRA .no_damage\n\n.no_cape\n #_078091: LDA.w $037B\n #_078094: BNE .no_damage\n\n #_078096: LDA.w $0373\n #_078099: STA.b $00\n\n #_07809B: STZ.w $0373\n\n #_07809E: LDA.w $0C4A\n #_0780A1: CMP.b #$05 ; ANCILLA 05\n #_0780A3: BNE .dont_delete_boom\n\n #_0780A5: LDA.w $0300\n #_0780A8: BNE .dont_delete_boom\n\n #_0780AA: LDA.b $3D\n #_0780AC: BEQ .dont_delete_boom\n\n #_0780AE: STZ.w $0C4A\n #_0780B1: STZ.w $035F\n\n.dont_delete_boom\n #_0780B4: LDA.w $031F\n #_0780B7: BNE .dont_mess_with_boom\n\n #_0780B9: LDA.b #$3A\n #_0780BB: STA.w $031F\n\n.dont_mess_with_boom\n #_0780BE: LDA.b #$26 ; SFX2.26\n #_0780C0: JSR PlaySFX_Set2\n\n #_0780C3: INC.w $0CFC\n\n #_0780C6: LDA.l $7EF36D\n #_0780CA: SEC\n #_0780CB: SBC.b $00\n\n #_0780CD: CMP.b #$00\n #_0780CF: BEQ .you_died\n\n #_0780D1: CMP.b #$A8\n #_0780D3: BCC .do_not_die\n\n; ---------------------------------------------------------\n\n.you_died\n #_0780D5: LDA.b $1C\n #_0780D7: STA.l $7EC211\n\n #_0780DB: LDA.b $1D\n #_0780DD: STA.l $7EC212\n\n #_0780E1: LDA.b $10\n #_0780E3: STA.w $010C\n\n #_0780E6: LDA.b #$12\n #_0780E8: STA.b $10\n\n #_0780EA: LDA.b #$01\n #_0780EC: STA.b $11\n\n #_0780EE: LDA.b #$00\n #_0780F0: STA.w $031F\n #_0780F3: STA.l $7EF372\n\n; ---------------------------------------------------------\n\n.do_not_die\n #_0780F7: STA.l $7EF36D\n\n.no_damage\n #_0780FB: LDA.b $5D\n #_0780FD: BEQ .base_state\n\n #_0780FF: JSR Link_HandleCape_passive\n\n.base_state\n #_078102: LDA.b $5D\n #_078104: ASL A\n #_078105: TAX\n\n #_078106: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Default", + "code": "LinkState_Default:\n #_078109: JSR CacheCameraPropertiesIfOutdoors\n\n #_07810C: LDA.b $F5\n #_07810E: AND.b #$80\n #_078110: BEQ .stay_in_bounds_forever\n\n #_078112: LDA.w $037F\n #_078115: EOR.b #$01\n #_078117: STA.w $037F\n\n.stay_in_bounds_forever\n #_07811A: JSR Link_HandleBunnyTransformation\n #_07811D: BCC .no_bunny\n\n #_07811F: LDA.b $5D\n #_078121: CMP.b #$17 ; LINKSTATE 17\n #_078123: BNE .already_bunny\n\n #_078125: BRL LinkState_Bunny\n\n.already_bunny\n #_078128: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleBunnyTransformation", + "code": "Link_HandleBunnyTransformation:\n #_0782DA: LDA.w $03F5\n #_0782DD: ORA.w $03F6\n #_0782E0: BEQ EXIT_0782D8\n\n #_0782E2: LDA.w $03F7\n #_0782E5: BNE .tick_timer\n\n #_0782E7: LDA.b $5D\n #_0782E9: CMP.b #$17 ; LINKSTATE 17\n #_0782EB: BEQ .exit_clear_timer\n\n #_0782ED: CMP.b #$1C ; LINKSTATE 1C\n #_0782EF: BEQ .exit_clear_timer\n\n #_0782F1: LDA.w $0309\n #_0782F4: AND.b #$02\n #_0782F6: BEQ .ignore_carry\n\n #_0782F8: STZ.w $0308\n\n.ignore_carry\n #_0782FB: LDA.w $0308\n #_0782FE: AND.b #$80\n #_078300: PHA\n\n #_078301: JSL Link_ResetProperties_A\n\n #_078305: PLA\n #_078306: STA.w $0308\n\n; ---------------------------------------------------------\n\n #_078309: LDX.b #$04\n\n.next_ancilla\n #_07830B: LDA.w $0C4A,X\n #_07830E: CMP.b #$30 ; ANCILLA 30\n #_078310: BEQ .kill_ancilla\n\n #_078312: CMP.b #$31 ; ANCILLA 31\n #_078314: BNE .skip_ancilla\n\n.kill_ancilla\n #_078316: STZ.w $0C4A,X\n\n.skip_ancilla\n #_078319: DEX\n #_07831A: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n #_07831C: JSR Link_CancelDash\n\n #_07831F: LDY.b #$04\n #_078321: LDA.b #$23 ; ANCILLA 23\n #_078323: JSL AncillaAdd_CapePoof\n\n #_078327: LDA.b #$14 ; SFX2.14\n #_078329: JSR PlaySFX_Set2\n\n #_07832C: LDA.b #$14\n #_07832E: STA.w $02E2\n\n #_078331: LDA.b #$01\n #_078333: STA.w $037B\n #_078336: STA.w $03F7\n\n #_078339: LDA.b #$0C\n #_07833B: STA.b $4B\n\n; ---------------------------------------------------------\n\n.tick_timer\n #_07833D: DEC.w $02E2\n #_078340: BPL .dont_revert\n\n #_078342: LDA.b #$1C ; LINKSTATE 1C\n #_078344: STA.b $5D\n\n #_078346: LDA.b #$01\n #_078348: STA.w $02E0\n #_07834B: STA.b $56\n\n #_07834D: JSL RefreshLinkEquipmentPalettes_bunny\n\n #_078351: STZ.b $4B\n #_078353: STZ.w $037B\n #_078356: STZ.w $03F7\n\n #_078359: BRA .dont_revert\n\n; ---------------------------------------------------------\n\n.exit_clear_timer\n #_07835B: STZ.w $03F5\n #_07835E: STZ.w $03F6\n\n #_078361: CLC\n\n #_078362: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_TemporaryBunny", + "code": "LinkState_TemporaryBunny:\n #_078365: LDA.w $03F5\n #_078368: ORA.w $03F6\n #_07836B: BNE .delay_change_back\n\n #_07836D: LDY.b #$04\n #_07836F: LDA.b #$23 ; ANCILLA 23\n #_078371: JSL AncillaAdd_CapePoof\n\n #_078375: LDA.b #$15 ; SFX2.15\n #_078377: JSR PlaySFX_Set2\n\n #_07837A: LDA.b #$20\n #_07837C: STA.w $02E2\n\n #_07837F: LDA.b #$00 ; LINKSTATE 00\n #_078381: STA.b $5D\n\n #_078383: JSL Link_ResetProperties_C\n\n #_078387: STZ.w $03F7\n\n #_07838A: STZ.b $56\n #_07838C: STZ.w $02E0\n\n #_07838F: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n #_078393: STZ.w $03F7\n\n #_078396: BRL LinkState_Default\n\n; ---------------------------------------------------------\n\n#UNREACHABLE_078399:\n #_078399: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Bunny", + "code": "LinkState_Bunny:\n #_0783A1: JSR CacheCameraPropertiesIfOutdoors\n\n #_0783A4: LDA.b $F5\n #_0783A6: AND.b #$80\n #_0783A8: BEQ .dont_toggle_oob\n\n #_0783AA: LDA.w $037F\n #_0783AD: EOR.b #$01\n #_0783AF: STA.w $037F\n\n.dont_toggle_oob\n #_0783B2: STZ.w $02CA\n\n #_0783B5: LDA.w $0345\n #_0783B8: BNE LinkState_Bunny_recache\n\n #_0783BA: LDA.b $4D\n #_0783BC: BEQ .recoiling\n\n #_0783BE: LDA.l $7EF357\n #_0783C2: BEQ LinkState_Bunny_recache\n\n #_0783C4: STZ.w $02E0\n\n; =========================================================\n\n#LinkState_Bunny_recache:\n #_0783C7: STZ.w $03F7\n #_0783CA: STZ.w $03F5\n #_0783CD: STZ.w $03F6\n\n #_0783D0: LDA.l $7EF357\n #_0783D4: BEQ .no_pearl_a\n\n #_0783D6: STZ.b $56\n #_0783D8: STZ.b $4D\n\n; ---------------------------------------------------------\n\n.no_pearl_a\n #_0783DA: STZ.b $2E\n #_0783DC: STZ.w $02E1\n #_0783DF: STZ.b $50\n\n #_0783E1: JSL Link_ResetSwimmingState\n\n #_0783E5: LDA.b #$02 ; LINKSTATE 02\n #_0783E7: STA.b $5D\n\n #_0783E9: LDA.l $7EF357\n #_0783ED: BEQ .no_pearl_b\n\n #_0783EF: LDA.b #$00 ; LINKSTATE 00\n #_0783F1: STA.b $5D\n\n #_0783F3: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n.no_pearl_b\n #_0783F7: BRL .exit\n\n; ---------------------------------------------------------\n\n.recoiling\n #_0783FA: LDA.b $46\n #_0783FC: BEQ .wait_maybe_not_recoiling\n\n #_0783FE: BRL Link_HandleRecoilAndTimer\n\n.wait_maybe_not_recoiling\n #_078401: LDA.b #$FF\n #_078403: STA.b $24\n #_078405: STA.b $25\n #_078407: STA.b $29\n\n #_078409: STZ.w $02C6\n\n #_07840C: LDA.w $034A\n #_07840F: BEQ .not_moving\n\n #_078411: LDA.b #$01\n #_078413: STA.w $0335\n #_078416: STA.w $0337\n\n #_078419: LDA.b #$80\n #_07841B: STA.w $0334\n #_07841E: STA.w $0336\n\n #_078421: BRL Link_HandleSwimMovements\n\n; ---------------------------------------------------------\n\n.not_moving\n #_078424: JSR ResetAllAcceleration\n #_078427: JSR Link_HandleYItem\n\n #_07842A: LDA.b $49\n #_07842C: AND.b #$0F\n #_07842E: BNE .movement\n\n #_078430: LDA.b $F0\n #_078432: AND.b #$0F\n #_078434: BNE .movement\n\n #_078436: STA.b $30\n #_078438: STA.b $31\n\n #_07843A: STA.b $67\n #_07843C: STA.b $26\n\n #_07843E: STZ.b $2E\n\n #_078440: LDA.b $48\n #_078442: AND.b #$F6\n #_078444: STA.b $48\n\n #_078446: LDX.b #$20\n #_078448: STX.w $0371\n\n #_07844B: LDX.b #$13\n #_07844D: STX.w $0375\n #_078450: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.movement\n #_078452: STA.b $67\n\n #_078454: CMP.b $26\n #_078456: BEQ .directions_match\n\n #_078458: STZ.b $2A\n #_07845A: STZ.b $2B\n\n #_07845C: STZ.b $6B\n #_07845E: STZ.b $48\n\n #_078460: LDX.b #$20\n #_078462: STX.w $0371\n\n #_078465: LDX.b #$13\n #_078467: STX.w $0375\n\n.directions_match\n #_07846A: STA.b $26\n\n; ---------------------------------------------------------\n\n.finish_up\n #_07846C: JSR Link_HandleDiagonalCollision\n #_07846F: JSL Link_HandleVelocity\n #_078473: JSR Link_HandleCardinalCollision\n #_078476: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_07847A: STZ.w $0302\n\n #_07847D: JSR HandleIndoorCameraAndDoors\n\n.exit\n #_078480: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HoldingBigRock", + "code": "LinkState_HoldingBigRock:\n #_078481: LDA.b $4D\n #_078483: BEQ .no_recoil\n\n #_078485: STZ.w $0301\n #_078488: STZ.w $037A\n\n #_07848B: STZ.w $020B\n\n #_07848E: STZ.w $0350\n #_078491: STZ.w $030D\n #_078494: STZ.w $030E\n #_078497: STZ.w $030A\n\n #_07849A: STZ.b $3B\n\n #_07849C: STZ.w $0308\n #_07849F: STZ.w $0309\n #_0784A2: STZ.w $0376\n\n #_0784A5: STZ.b $48\n\n #_0784A7: LDA.b $50\n #_0784A9: AND.b #$FE\n #_0784AB: STA.b $50\n\n #_0784AD: STZ.b $25\n\n #_0784AF: LDA.w $0360\n #_0784B2: BEQ .no_zapping\n\n #_0784B4: JSR Link_ResetSwordAndItemUsage\n\n #_0784B7: LDA.b #$01\n #_0784B9: STA.w $037B\n\n #_0784BC: STZ.w $0300\n\n #_0784BF: LDA.b #$02\n #_0784C1: STA.b $3D\n\n #_0784C3: STZ.b $2E\n\n #_0784C5: LDA.b $67\n #_0784C7: AND.b #$F0\n #_0784C9: STA.b $67\n\n #_0784CB: LDA.b #$2B ; SFX3.2B\n #_0784CD: JSR PlaySFX_Set3\n\n #_0784D0: LDA.b #$07 ; LINKSTATE 07\n #_0784D2: STA.b $5D\n\n #_0784D4: BRL LinkState_Zapped\n\n; ---------------------------------------------------------\n\n.no_zapping\n #_0784D7: LDA.b #$02 ; LINKSTATE 02\n #_0784D9: STA.b $5D\n\n #_0784DB: BRL LinkState_Recoil\n\n; ---------------------------------------------------------\n\n.no_recoil\n #_0784DE: LDA.b #$FF\n #_0784E0: STA.b $24\n #_0784E2: STA.b $25\n #_0784E4: STA.b $29\n\n #_0784E6: STZ.w $02C6\n\n #_0784E9: LDA.b $46\n #_0784EB: BEQ .definitely_no_recoil\n\n #_0784ED: STZ.w $030D\n #_0784F0: STZ.w $030E\n #_0784F3: STZ.w $030A\n\n #_0784F6: STZ.b $3B\n\n #_0784F8: STZ.w $0308\n #_0784FB: STZ.w $0309\n\n #_0784FE: STZ.w $0376\n\n #_078501: LDA.b $3A\n #_078503: AND.b #$80\n #_078505: BNE .dont_allow_turn\n\n #_078507: LDA.b $50\n #_078509: AND.b #$FE\n #_07850B: STA.b $50\n\n.dont_allow_turn\n #_07850D: BRL Link_HandleRecoilAndTimer\n\n; ---------------------------------------------------------\n\n.definitely_no_recoil\n #_078510: JSR Link_HandleAPress\n\n #_078513: LDA.b $F0\n #_078515: AND.b #$0F\n #_078517: BNE .pressing_d_pad\n\n #_078519: STA.b $30\n #_07851B: STA.b $31\n\n #_07851D: STA.b $67\n\n #_07851F: STA.b $26\n #_078521: STZ.b $2E\n\n #_078523: LDA.b $48\n #_078525: AND.b #$F6\n #_078527: STA.b $48\n\n #_078529: LDX.b #$20\n #_07852B: STX.w $0371\n\n #_07852E: LDX.b #$13\n #_078530: STX.w $0375\n\n #_078533: BRA .handle_the_animation\n\n; ---------------------------------------------------------\n\n.pressing_d_pad\n #_078535: STA.b $67\n\n #_078537: CMP.b $26\n #_078539: BEQ .directions_do_match\n\n #_07853B: STZ.b $2A\n #_07853D: STZ.b $2B\n\n #_07853F: STZ.b $6B\n #_078541: STZ.b $48\n\n #_078543: LDX.b #$20\n #_078545: STX.w $0371\n\n #_078548: LDX.b #$13\n #_07854A: STX.w $0375\n\n; ---------------------------------------------------------\n\n.directions_do_match\n #_07854D: STA.b $26\n\n.handle_the_animation\n #_07854F: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_078553: STZ.w $0302\n\n #_078556: JSR HandleIndoorCameraAndDoors\n\n #_078559: RTS", + "file": "bank_07.asm" + }, + { + "name": "EtherTablet_StartCutscene", + "code": "EtherTablet_StartCutscene:\n #_07855A: REP #$20\n\n #_07855C: LDA.w #$00C0\n #_07855F: STA.b $3C\n\n #_078561: SEP #$20\n\n #_078563: LDA.b #$19 ; LINKSTATE 19\n #_078565: STA.b $5D\n\n #_078567: LDA.b #$01\n #_078569: STA.w $037B\n #_07856C: STA.w $0FFC\n\n #_07856F: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkState_ReceivingEther", + "code": "LinkState_ReceivingEther:\n #_078570: STZ.b $4D\n #_078572: STZ.b $46\n\n #_078574: STZ.w $0373\n\n #_078577: REP #$20\n\n #_078579: DEC.b $3C\n\n #_07857B: LDA.b $3C\n #_07857D: BMI .spinning\n #_07857F: BEQ .spawn_medallion\n\n #_078581: CMP.w #$00A0\n #_078584: BEQ .add_lightning\n\n #_078586: CMP.w #$00BF\n #_078589: BEQ .sword_up\n\n #_07858B: SEP #$20\n\n #_07858D: RTS", + "file": "bank_07.asm" + }, + { + "name": "BombosTablet_StartCutscene", + "code": "BombosTablet_StartCutscene:\n #_0785E5: REP #$20\n\n #_0785E7: LDA.w #$00E0\n #_0785EA: STA.b $3C\n\n #_0785EC: SEP #$20\n\n #_0785EE: LDA.b #$1A ; LINKSTATE 1A\n #_0785F0: STA.b $5D\n\n #_0785F2: LDA.b #$01\n #_0785F4: STA.w $037B\n #_0785F7: STA.w $0112\n\n #_0785FA: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkState_ReceivingBombos", + "code": "LinkState_ReceivingBombos:\n #_0785FB: STZ.b $4D\n #_0785FD: STZ.b $46\n\n #_0785FF: STZ.w $0373\n\n #_078602: REP #$20\n\n #_078604: DEC.b $3C\n\n #_078606: LDA.b $3C\n #_078608: BMI .spinning\n #_07860A: BEQ .spawn_medallion\n\n #_07860C: CMP.w #$00A0\n #_07860F: BEQ .EXPLOSION\n\n #_078611: CMP.w #$00DF\n #_078614: BEQ .sword_up\n\n #_078616: SEP #$20\n\n #_078618: RTS", + "file": "bank_07.asm" + }, + { + "name": "InitiateDesertCutscene", + "code": "InitiateDesertCutscene:\n #_07866D: REP #$20\n\n #_07866F: LDA.w #$0001\n #_078672: STA.b $3C\n\n #_078674: SEP #$20\n\n #_078676: LDA.b #$1B ; LINKSTATE 1B\n #_078678: STA.b $5D\n\n #_07867A: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkState_ReadingDesertTablet", + "code": "LinkState_ReadingDesertTablet:\n #_07867B: DEC.b $3C\n\n #_07867D: LDA.b $3C\n #_07867F: BNE .delay\n\n #_078681: LDA.b #$00 ; LINKSTATE 00\n #_078683: STA.b $5D\n\n #_078685: JSR Link_PerformDesertPrayer\n\n.delay\n #_078688: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleSomariaAndGraves", + "code": "HandleSomariaAndGraves:\n #_078689: LDA.b $1B\n #_07868B: BNE .ignore_graves\n\n #_07868D: LDA.w $03E9\n #_078690: BEQ .ignore_graves\n\n; ---------------------------------------------------------\n\n #_078692: LDX.b #$04\n\n.next_slot\n #_078694: LDA.w $0C4A,X\n #_078697: CMP.b #$24 ; ANCILLA 24\n #_078699: BNE .not_grave\n\n #_07869B: JSL Gravestone_Move\n\n.not_grave\n #_07869F: DEX\n #_0786A0: BPL .next_slot\n\n; ---------------------------------------------------------\n\n.ignore_graves\n #_0786A2: LDX.b #$04\n\n.next_slot_again\n #_0786A4: LDA.w $0C4A,X\n #_0786A7: CMP.b #$2C ; ANCILLA 2C\n #_0786A9: BNE .not_somaria\n\n #_0786AB: JSL SomariaBlock_HandlePlayerInteraction\n\n #_0786AF: BRA .done\n\n; ---------------------------------------------------------\n\n.not_somaria\n #_0786B1: DEX\n #_0786B2: BPL .next_slot_again\n\n.done\n #_0786B4: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Recoil", + "code": "LinkState_Recoil:\n #_0786B5: LDA.b $20\n #_0786B7: STA.b $3E\n\n #_0786B9: LDA.b $21\n #_0786BB: STA.b $40\n\n #_0786BD: LDA.b $22\n #_0786BF: STA.b $3F\n\n #_0786C1: LDA.b $23\n #_0786C3: STA.b $41\n\n #_0786C5: JSR Link_HandleChangeInZVelocity\n\n #_0786C8: STZ.b $50\n\n #_0786CA: STZ.w $0351\n\n #_0786CD: LDA.b $24\n #_0786CF: BPL Link_HandleRecoilAndTimer\n\n #_0786D1: LDA.b $29\n #_0786D3: BPL Link_HandleRecoilAndTimer\n\n #_0786D5: LDY.b #$05\n #_0786D7: JSR TileDetect_MainHandler\n\n #_0786DA: LDA.w $0341\n #_0786DD: AND.b #$01\n #_0786DF: BEQ .no_deep_water_interaction\n\n #_0786E1: LDA.b #$04 ; LINKSTATE 04\n #_0786E3: STA.b $5D\n\n #_0786E5: JSR Link_SetToDeepWater\n\n #_0786E8: JSR Link_ResetSwordAndItemUsage\n\n #_0786EB: LDA.b #$15 ; ANCILLA 15\n #_0786ED: LDY.b #$00\n #_0786EF: JSL AncillaAdd_Splash\n\n #_0786F3: BRL Link_CheckLayerForChange\n\n; ---------------------------------------------------------\n\n.no_deep_water_interaction\n #_0786F6: INC.w $02C6\n\n #_0786F9: LDA.w $02C6\n #_0786FC: CMP.b #$04\n #_0786FE: BEQ .done_bouncing\n\n #_078700: TAX\n\n #_078701: LDA.w $02C7\n\n.shift\n #_078704: LSR A\n\n #_078705: DEX\n #_078706: BEQ .shift\n\n #_078708: STA.b $29\n #_07870A: BNE Link_HandleRecoilAndTimer\n\n.done_bouncing\n #_07870C: LDA.b #$03\n #_07870E: STA.w $02C6\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleRecoilAndTimer", + "code": "Link_HandleRecoilAndTimer:\n #_078711: STZ.b $68\n #_078713: STZ.b $69\n #_078715: STZ.b $6A\n\n #_078717: JSR Link_HandleRecoiling\n\n #_07871A: DEC.b $46\n\n #_07871C: LDA.b $46\n #_07871E: BEQ .delay\n\n.airborne\n #_078720: BRL Link_HandleRecoilVelocity\n\n; ---------------------------------------------------------\n\n.delay\n #_078723: INC A\n #_078724: STA.b $46\n\n #_078726: LDA.b $24\n #_078728: AND.b #$FE\n #_07872A: BEQ .no_height\n #_07872C: BPL .airborne\n\n.no_height\n #_07872E: LDA.b $29\n #_078730: BPL .airborne\n\n #_078732: LDA.b $4D\n #_078734: BNE .not_special_recoil\n\n #_078736: BRL Link_HandleRecoilVelocity_and_reset\n\n; ---------------------------------------------------------\n\n.not_special_recoil\n #_078739: STZ.w $037B\n\n #_07873C: LDA.b $5D\n #_07873E: STA.b $72\n\n #_078740: LDA.b $5D\n #_078742: CMP.b #$06 ; LINKSTATE 06\n #_078744: BEQ .jumping\n\n #_078746: STZ.b $3C\n #_078748: STZ.b $3A\n #_07874A: STZ.b $3D\n\n #_07874C: STZ.b $79\n\n.jumping\n #_07874E: JSR Link_SplashUponLanding\n\n #_078751: LDA.w $02E0\n #_078754: BEQ .not_bunny\n\n #_078756: LDA.w $0345\n #_078759: BEQ .not_bunny\n\n #_07875B: BRL Link_CheckLayerForChange_preserve_layer\n\n; ---------------------------------------------------------\n\n.not_bunny\n #_07875E: LDA.w $02F8\n #_078761: BEQ .no_guaranteed_thud\n\n #_078763: STZ.w $02F8\n\n #_078766: BRA .play_thud\n\n; ---------------------------------------------------------\n\n.no_guaranteed_thud\n #_078768: LDA.b $72\n #_07876A: CMP.b #$02 ; LINKSTATE 02\n #_07876C: BEQ .skip_thud_sfx\n\n #_07876E: LDA.b $5D\n #_078770: CMP.b #$04 ; LINKSTATE 04\n #_078772: BEQ .skip_thud_sfx\n\n.play_thud\n #_078774: LDA.b #$21 ; SFX2.21\n #_078776: JSR PlaySFX_Set2\n\n.skip_thud_sfx\n #_078779: LDY.b $5D\n #_07877B: CPY.b #$04 ; LINKSTATE 04\n #_07877D: BNE .not_swimming\n\n #_07877F: JSR Link_ForceUnequipCape_quietly\n\n #_078782: LDA.b $1B\n #_078784: BEQ .dont_swap_layers\n\n #_078786: LDA.b $72\n #_078788: CMP.b #$02 ; LINKSTATE 02\n #_07878A: BEQ .dont_swap_layers\n\n #_07878C: LDA.l $7EF356\n #_078790: BEQ .dont_swap_layers\n\n #_078792: LDA.b #$01\n #_078794: STA.b $EE\n\n.dont_swap_layers\n #_078796: LDA.b #$15 ; ANCILLA 15\n #_078798: LDY.b #$00\n #_07879A: JSL AncillaAdd_Splash\n\n; ---------------------------------------------------------\n\n.not_swimming\n #_07879E: LDY.b #$00\n #_0787A0: JSR TileDetect_MainHandler\n\n #_0787A3: LDA.w $0357\n #_0787A6: AND.b #$01\n #_0787A8: BEQ .not_in_thick_grass\n\n #_0787AA: LDA.b #$1A ; SFX2.1A\n #_0787AC: JSR PlaySFX_Set2\n\n.not_in_thick_grass\n #_0787AF: LDA.w $0359\n #_0787B2: AND.b #$01\n #_0787B4: BEQ .skip_sploosh_sfx\n\n #_0787B6: LDA.w $012E\n #_0787B9: CMP.b #$24 ; SFX2.24\n #_0787BB: BEQ .skip_sploosh_sfx\n\n #_0787BD: LDA.b #$1C ; SFX2.1C\n #_0787BF: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.skip_sploosh_sfx\n #_0787C2: LDA.w $0341\n #_0787C5: AND.b #$01\n #_0787C7: BEQ Link_CheckLayerForChange\n\n #_0787C9: LDA.b #$04 ; LINKSTATE 04\n #_0787CB: STA.b $5D\n\n #_0787CD: JSR Link_SetToDeepWater\n #_0787D0: JSR Link_ResetSwordAndItemUsage\n\n #_0787D3: LDA.b #$15 ; ANCILLA 15\n #_0787D5: LDY.b #$00\n #_0787D7: JSL AncillaAdd_Splash\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckLayerForChange", + "code": "Link_CheckLayerForChange:\n #_0787DB: LDA.b $EE\n #_0787DD: CMP.b #$02\n #_0787DF: BNE .dont_reset_layer\n\n #_0787E1: STZ.b $EE\n\n.dont_reset_layer\n #_0787E3: LDA.w $047A\n #_0787E6: BEQ .preserve_layer\n\n #_0787E8: JSL Underworld_HandleLayerChange\n\n.preserve_layer\n #_0787EC: STZ.b $24\n #_0787EE: STZ.b $25\n\n #_0787F0: STZ.b $4D\n\n #_0787F2: STZ.b $5E\n #_0787F4: STZ.b $50\n\n #_0787F6: STZ.w $0301\n #_0787F9: STZ.w $037A\n\n #_0787FC: STZ.w $0300\n #_0787FF: STZ.w $037B\n #_078802: STZ.w $0360\n\n #_078805: STZ.b $27\n #_078807: STZ.b $28\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleRecoilVelocity_and_reset", + "code": "Link_HandleRecoilVelocity_and_reset:\n #_078809: STZ.b $2E\n #_07880B: STZ.b $46\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleRecoilVelocity", + "code": "Link_HandleRecoilVelocity:\n #_07880D: LDA.b $5D\n #_07880F: CMP.b #$05 ; LINKSTATE 05\n #_078811: BEQ .icy_or_low_timer\n\n #_078813: LDA.b $46\n #_078815: CMP.b #$21\n #_078817: BCC .icy_or_low_timer\n\n #_078819: DEC.w $02C5\n #_07881C: BPL .delay_flagging\n\n #_07881E: LSR A\n #_07881F: LSR A\n #_078820: LSR A\n #_078821: LSR A\n #_078822: STA.w $02C5\n\n.icy_or_low_timer\n #_078825: JSR Flag67WithDirections\n\n #_078828: LDA.b $5D\n #_07882A: CMP.b #$06 ; LINKSTATE 06\n #_07882C: BEQ .find_spot\n\n #_07882E: JSR Link_HandleDiagonalCollision\n\n #_078831: LDA.b $67\n #_078833: AND.b #$03\n #_078835: BNE .going_horizontally\n\n #_078837: STZ.b $28\n\n.going_horizontally\n #_078839: LDA.b $67\n #_07883B: AND.b #$0C\n #_07883D: BNE .find_spot\n\n #_07883F: STZ.b $27\n\n.find_spot\n #_078841: JSL LinkHop_FindArbitraryLandingSpot\n\n; ---------------------------------------------------------\n\n.delay_flagging\n #_078845: LDA.b $5D\n #_078847: CMP.b #$06 ; LINKSTATE 06\n #_078849: BEQ .jumping_out_of_water\n\n #_07884B: JSR Link_HandleCardinalCollision\n\n #_07884E: STZ.w $0302\n\n.jumping_out_of_water\n #_078851: JSR HandleIndoorCameraAndDoors\n\n #_078854: LDA.b $24\n #_078856: BEQ .not_airborne\n\n #_078858: CMP.b #$E0\n #_07885A: BCC .skip_pit_detect\n\n.not_airborne\n #_07885C: JSR TileDetect_BigArea\n\n #_07885F: LDA.b $59\n #_078861: AND.b #$0F\n #_078863: CMP.b #$0F\n #_078865: BNE .skip_pit_detect\n\n #_078867: LDA.b #$01 ; LINKSTATE 01\n #_078869: STA.b $5D\n\n #_07886B: LDA.b #$04\n #_07886D: STA.b $5E\n\n.skip_pit_detect\n #_07886F: STZ.b $25\n\n #_078871: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_OnIce", + "code": "LinkState_OnIce:\n #_078872: LDA.b $1B\n #_078874: BNE .indoors\n\n #_078876: BRL .overworld\n\n; ---------------------------------------------------------\n\n.indoors\n #_078879: LDX.b #$00\n\n #_07887B: LDA.b $EE\n #_07887D: BEQ .upper_layer_or_staircase\n\n #_07887F: STZ.b $EE\n\n #_078881: JSR TileDetect_UnusedIce\n\n #_078884: LDX.b #$00\n\n #_078886: LDA.b #$01\n #_078888: STA.b $EE\n\n #_07888A: LDA.w $034C\n #_07888D: AND.b #$03\n #_07888F: CMP.b #$03\n #_078891: BEQ .upper_layer_or_staircase\n\n #_078893: LDX.b #$01\n\n.upper_layer_or_staircase\n #_078895: STX.w $034E\n\n; ---------------------------------------------------------\n\n.continue_from_ow_stuff\n #_078898: DEC.b $3D\n #_07889A: BPL .delay\n\n #_07889C: LDA.b #$03\n #_07889E: STA.b $3D\n\n #_0788A0: LDA.w $0300\n #_0788A3: EOR.b #$01\n #_0788A5: STA.w $0300\n\n.delay\n #_0788A8: LDA.b $F0\n #_0788AA: AND.b #$0F\n #_0788AC: BNE .no_dpad\n\n #_0788AE: STA.b $30\n #_0788B0: STA.b $31\n\n #_0788B2: STA.b $67\n #_0788B4: STA.b $26\n\n #_0788B6: STZ.b $2E\n\n #_0788B8: BRA .continue_b\n\n; ---------------------------------------------------------\n\n.no_dpad\n #_0788BA: STA.b $67\n\n #_0788BC: CMP.b $26\n #_0788BE: BEQ .matches\n\n #_0788C0: STZ.b $2A\n #_0788C2: STZ.b $2B\n #_0788C4: STZ.b $6B\n\n.matches\n #_0788C6: STA.b $26\n\n; ---------------------------------------------------------\n\n.continue_b\n #_0788C8: LDX.b #$10\n\n #_0788CA: LDA.b $67\n #_0788CC: AND.b #$0F\n #_0788CE: BEQ .just_animate\n\n #_0788D0: AND.b #$0C\n #_0788D2: BEQ .moving_for_sure\n\n #_0788D4: LDA.b $67\n #_0788D6: AND.b #$03\n #_0788D8: BEQ .moving_for_sure\n\n #_0788DA: LDX.b #$0A\n\n.moving_for_sure\n #_0788DC: STX.b $00\n\n #_0788DE: LDA.b $67\n #_0788E0: AND.b #$0C\n #_0788E2: BEQ .no_vertical_movement\n\n #_0788E4: AND.b #$08\n #_0788E6: BEQ .moving_on_down\n\n #_0788E8: TXA\n #_0788E9: EOR.b #$FF\n #_0788EB: INC A\n #_0788EC: TAX\n\n.moving_on_down\n #_0788ED: STX.b $27\n\n; ---------------------------------------------------------\n\n.no_vertical_movement\n #_0788EF: LDX.b $00\n\n #_0788F1: LDA.b $67\n #_0788F3: AND.b #$03\n #_0788F5: BEQ .just_animate\n\n #_0788F7: AND.b #$02\n #_0788F9: BEQ .moving_on_right\n\n #_0788FB: TXA\n #_0788FC: EOR.b #$FF\n #_0788FE: INC A\n #_0788FF: TAX\n\n.moving_on_right\n #_078900: STX.b $28\n\n; ---------------------------------------------------------\n\n.just_animate\n #_078902: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_078906: BRL LinkState_Recoil\n\n; ---------------------------------------------------------\n\n.overworld\n #_078909: LDY.b #$00\n #_07890B: JSR TileDetect_MainHandler\n\n #_07890E: LDA.w $035B\n #_078911: AND.b #$01\n #_078913: BEQ .reset_layer\n\n #_078915: LDA.b #$02\n #_078917: STA.b $EE\n\n #_078919: BRA .layer_is_set\n\n; ---------------------------------------------------------\n\n.reset_layer\n #_07891B: STZ.w $00EE\n\n.layer_is_set\n #_07891E: LDA.b #$01\n #_078920: STA.w $034E\n\n #_078923: BRL .continue_from_ow_stuff\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleChangeInZVelocity", + "code": "Link_HandleChangeInZVelocity:\n #_078926: LDX.b #$02\n\n #_078928: LDA.b $5D\n #_07892A: CMP.b #$05 ; LINKSTATE 05\n #_07892C: BNE .not_somaria_platform\n\n #_07892E: LDX.b #$01\n\n.not_somaria_platform\n #_078930: STX.b $00\n\n.preset\n #_078932: LDA.b $29\n #_078934: BPL .apply_z_speed_change\n\n #_078936: LDA.b $24\n #_078938: BEQ .exit\n #_07893A: BPL .apply_z_speed_change\n\n #_07893C: LDA.b #$FF\n #_07893E: STA.b $24\n #_078940: STA.b $25\n #_078942: STA.b $29\n\n #_078944: BRA .exit\n\n; =========================================================\n\n#Link_HandleChangeInZVelocity_apply_z_speed_change:\n #_078946: LDA.b $29\n #_078948: SEC\n #_078949: SBC.b $00\n #_07894B: STA.b $29\n\n.exit\n #_07894D: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HoppingSouthOW", + "code": "LinkState_HoppingSouthOW:\n #_07894E: LDA.b #$01\n #_078950: STA.b $66\n\n #_078952: STZ.b $50\n\n #_078954: STZ.b $27\n #_078956: STZ.b $28\n\n #_078958: STZ.w $0351\n\n #_07895B: LDA.b $46\n #_07895D: BNE .continue\n\n #_07895F: LDA.w $0362\n #_078962: BNE .continue\n\n #_078964: LDA.b #$20 ; SFX2.20\n #_078966: JSR PlaySFX_Set2\n\n #_078969: JSR LinkHop_FindTileToLandOnSouth\n\n #_07896C: LDA.b $1B\n #_07896E: BNE .continue\n\n #_078970: LDA.b #$02\n #_078972: STA.b $EE\n\n; ---------------------------------------------------------\n\n.continue\n #_078974: LDA.w $0362\n #_078977: STA.b $29\n\n #_078979: LDA.w $0363\n #_07897C: STA.w $02C7\n\n #_07897F: LDA.w $0364\n #_078982: STA.b $24\n\n #_078984: LDA.w $0365\n #_078987: STA.b $25\n\n #_078989: LDA.b #$02\n #_07898B: STA.b $00\n\n #_07898D: JSR Link_HandleChangeInZVelocity_apply_z_speed_change\n #_078990: JSL LinkHop_FindArbitraryLandingSpot\n\n #_078994: LDA.b $29\n #_078996: BPL .adjust_velocity\n\n #_078998: CMP.b #$A0\n #_07899A: BCS .not_maxed_out\n\n #_07899C: LDA.b #$A0\n #_07899E: STA.b $29\n\n.not_maxed_out\n #_0789A0: REP #$20\n\n #_0789A2: LDA.b $24\n #_0789A4: CMP.w #$FFF0\n #_0789A7: BCC .adjust_velocity\n\n #_0789A9: STZ.b $24\n\n #_0789AB: SEP #$20\n\n #_0789AD: JSR Link_SplashUponLanding\n\n; ---------------------------------------------------------\n\n #_0789B0: LDA.b $5B\n #_0789B2: BEQ .not_near_pit\n\n #_0789B4: LDA.b #$01 ; LINKSTATE 01\n #_0789B6: STA.b $5D\n\n.not_near_pit\n #_0789B8: LDA.b $5D\n #_0789BA: CMP.b #$04 ; LINKSTATE 04\n #_0789BC: BEQ .skip_sfx\n\n #_0789BE: CMP.b #$01 ; LINKSTATE 01\n #_0789C0: BEQ .skip_sfx\n\n #_0789C2: LDA.w $0345\n #_0789C5: BNE .skip_sfx\n\n #_0789C7: LDA.b #$21 ; SFX2.21\n #_0789C9: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.skip_sfx\n #_0789CC: STZ.w $037B\n\n #_0789CF: STZ.b $78\n #_0789D1: STZ.b $4D\n\n #_0789D3: LDA.b #$FF\n #_0789D5: STA.b $29\n #_0789D7: STA.b $24\n #_0789D9: STA.b $25\n\n #_0789DB: STZ.b $46\n\n #_0789DD: LDA.b $1B\n #_0789DF: BNE .no_layer_reset\n\n #_0789E1: STZ.b $EE\n\n.no_layer_reset\n #_0789E3: BRA .finisher_up\n\n; =========================================================\n\n.adjust_velocity\n #_0789E5: SEP #$20\n\n #_0789E7: LDA.w $0364\n #_0789EA: SEC\n #_0789EB: SBC.b $24\n #_0789ED: STA.b $30\n\n; ---------------------------------------------------------\n\n.finisher_up\n #_0789EF: LDA.b $29\n #_0789F1: STA.w $0362\n\n #_0789F4: LDA.w $02C7\n #_0789F7: STA.w $0363\n\n #_0789FA: LDA.b $24\n #_0789FC: STA.w $0364\n\n #_0789FF: LDA.b $25\n #_078A01: STA.w $0365\n\n #_078A04: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HandlingJump", + "code": "LinkState_HandlingJump:\n #_078A05: LDA.w $0362\n #_078A08: STA.b $29\n\n #_078A0A: LDA.w $0363\n #_078A0D: STA.w $02C7\n\n #_078A10: LDA.w $0364\n #_078A13: STA.b $24\n\n #_078A15: LDA.b #$02\n #_078A17: STA.b $00\n\n #_078A19: JSR Link_HandleChangeInZVelocity_apply_z_speed_change\n #_078A1C: JSL LinkHop_FindArbitraryLandingSpot\n\n #_078A20: LDA.b $29\n #_078A22: BMI .negative_speed\n\n #_078A24: BRL .not_at_max_z\n\n; ---------------------------------------------------------\n\n.negative_speed\n #_078A27: CMP.b #$A0\n #_078A29: BCS .not_at_max_z_speed\n\n #_078A2B: LDA.b #$A0\n #_078A2D: STA.b $29\n\n.not_at_max_z_speed\n #_078A2F: LDA.b $24\n #_078A31: CMP.b #$F0\n #_078A33: BCC .not_at_max_z\n\n #_078A35: STZ.b $24\n #_078A37: STZ.b $25\n\n #_078A39: LDA.b $5D\n #_078A3B: CMP.b #$0C ; LINKSTATE 0C\n #_078A3D: BEQ .left_or_right\n\n #_078A3F: CMP.b #$0E ; LINKSTATE 0E\n #_078A41: BNE .continue_a\n\n; ---------------------------------------------------------\n\n.left_or_right\n #_078A43: LDY.b #$00\n #_078A45: JSR TileDetect_MainHandler\n\n #_078A48: LDA.w $0341\n #_078A4B: AND.b #$01\n #_078A4D: BEQ .dont_become_swimming\n\n #_078A4F: LDA.b #$04 ; LINKSTATE 04\n #_078A51: STA.b $5D\n\n #_078A53: JSR Link_SetToDeepWater\n #_078A56: JSR Link_ResetSwordAndItemUsage\n\n #_078A59: LDA.b #$15 ; ANCILLA 15\n #_078A5B: LDY.b #$00\n #_078A5D: JSL AncillaAdd_Splash\n\n #_078A61: BRA .continue_a\n\n; ---------------------------------------------------------\n\n.dont_become_swimming\n #_078A63: LDA.b $59\n #_078A65: AND.b #$01\n #_078A67: BEQ .continue_a\n\n #_078A69: LDA.b #$09\n #_078A6B: STA.b $5C\n\n #_078A6D: STZ.b $5A\n\n #_078A6F: LDA.b #$01\n #_078A71: STA.b $5B\n\n #_078A73: LDA.b #$01 ; LINKSTATE 01\n #_078A75: STA.b $5D\n\n #_078A77: BRA .check_if_swimming\n\n; ---------------------------------------------------------\n\n.continue_a\n #_078A79: JSR Link_SplashUponLanding\n\n #_078A7C: LDA.b $5D\n #_078A7E: CMP.b #$04 ; LINKSTATE 04\n #_078A80: BEQ .check_if_swimming\n\n #_078A82: LDA.w $0345\n #_078A85: BNE .check_if_swimming\n\n #_078A87: LDA.b #$21 ; SFX2.21\n #_078A89: JSR PlaySFX_Set2\n\n.check_if_swimming\n #_078A8C: LDA.b $5D\n #_078A8E: CMP.b #$04 ; LINKSTATE 04\n #_078A90: BNE .not_swimming\n\n #_078A92: LDA.w $02E0\n #_078A95: BNE .am_bunny\n\n.not_swimming\n #_078A97: STZ.w $037B\n\n; ---------------------------------------------------------\n\n.am_bunny\n #_078A9A: STZ.b $78\n #_078A9C: STZ.b $4D\n\n #_078A9E: LDA.b #$FF\n #_078AA0: STA.b $29\n\n #_078AA2: STA.b $24\n #_078AA4: STA.b $25\n\n #_078AA6: STZ.b $46\n\n #_078AA8: LDA.b $1B\n #_078AAA: BNE .dont_reset_layer\n\n #_078AAC: STZ.b $EE\n\n.dont_reset_layer\n #_078AAE: BRA .continue_b\n\n; ---------------------------------------------------------\n\n.not_at_max_z\n #_078AB0: LDA.w $0364\n #_078AB3: SEC\n #_078AB4: SBC.b $24\n #_078AB6: STA.b $30\n\n.continue_b\n #_078AB8: LDA.b $29\n #_078ABA: STA.w $0362\n\n #_078ABD: LDA.w $02C7\n #_078AC0: STA.w $0363\n\n #_078AC3: LDA.b $24\n #_078AC5: STA.w $0364\n\n #_078AC8: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkHop_FindTileToLandOnSouth", + "code": "LinkHop_FindTileToLandOnSouth:\n #_078AD1: LDA.b $21\n #_078AD3: STA.b $33\n\n #_078AD5: LDA.b $20\n #_078AD7: STA.b $32\n\n #_078AD9: SEC\n #_078ADA: SBC.b $3E\n #_078ADC: STA.b $30\n\n.next_y\n #_078ADE: LDA.b $66\n #_078AE0: ASL A\n #_078AE1: TAY\n\n #_078AE2: REP #$20\n\n #_078AE4: LDA.w .offset_x,Y\n #_078AE7: CLC\n #_078AE8: ADC.b $20\n #_078AEA: STA.b $20\n\n #_078AEC: SEP #$20\n\n #_078AEE: JSR TileDetect_Movement_Vertical\n\n #_078AF1: LDA.w $0343\n #_078AF4: ORA.b $59\n #_078AF6: ORA.w $035B\n #_078AF9: ORA.w $0357\n #_078AFC: ORA.w $0341\n #_078AFF: AND.b #$07\n #_078B01: CMP.b #$07\n #_078B03: BNE .next_y\n\n; ---------------------------------------------------------\n\n #_078B05: LDA.w $0341\n #_078B08: AND.b #$07\n #_078B0A: BEQ .didnt_find_water\n\n #_078B0C: LDA.b #$01\n #_078B0E: STA.w $0345\n\n #_078B11: LDA.b $4D\n #_078B13: CMP.b #$04\n #_078B15: BEQ .leave_recoil_state\n\n #_078B17: LDA.b #$02\n #_078B19: STA.b $4D\n\n.leave_recoil_state\n #_078B1B: LDA.w $0026\n #_078B1E: STA.w $0340\n\n #_078B21: JSL Link_ResetSwimmingState\n\n #_078B25: STZ.w $0376\n #_078B28: STZ.b $5E\n\n.didnt_find_water\n #_078B2A: LDA.b $59\n #_078B2C: AND.b #$07\n #_078B2E: BEQ .didnt_find_pit\n\n #_078B30: LDA.b #$09\n #_078B32: STA.b $5C\n\n #_078B34: STZ.b $5A\n\n #_078B36: LDA.b #$01\n #_078B38: STA.b $5B\n\n.didnt_find_pit\n #_078B3A: LDA.b $66\n #_078B3C: ASL A\n #_078B3D: TAY\n\n #_078B3E: REP #$20\n\n #_078B40: LDA.w .offset_y,Y\n #_078B43: CLC\n #_078B44: ADC.b $20\n #_078B46: STA.b $20\n\n #_078B48: SEP #$20\n\n #_078B4A: LDA.b $20\n #_078B4C: STA.b $3E\n\n #_078B4E: LDA.b $21\n #_078B50: STA.b $40\n\n #_078B52: LDA.b #$01\n #_078B54: STA.b $46\n\n #_078B56: LDA.b $24\n #_078B58: CMP.b #$F0\n #_078B5A: BCC .z_coord_fine\n\n #_078B5C: LDA.b #$00\n\n.z_coord_fine\n #_078B5E: STA.b $00\n #_078B60: STZ.b $01\n\n #_078B62: REP #$20\n\n #_078B64: LDA.b $20\n #_078B66: SEC\n #_078B67: SBC.b $32\n #_078B69: CLC\n #_078B6A: ADC.b $00\n #_078B6C: STA.w $0364\n #_078B6F: STA.b $24\n\n #_078B71: SEP #$20\n\n #_078B73: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HoppingHorizontallyOW", + "code": "LinkState_HoppingHorizontallyOW:\n #_078B74: LDX.b #$01\n\n #_078B76: LDA.b $28\n #_078B78: BPL .moving_right\n\n #_078B7A: LDX.b #$02\n\n.moving_right\n #_078B7C: TXA\n #_078B7D: ORA.b #$04\n #_078B7F: STA.b $67\n\n #_078B81: STZ.b $50\n #_078B83: STZ.b $27\n\n #_078B85: STZ.w $0351\n\n #_078B88: BRL LinkState_HandlingJump\n\n; =========================================================\n\npool Link_HoppingHorizontally_FindTile_Vertical\n\n.speed_z\n #_078B8B: db $20, $20, $20, $28\n #_078B8F: db $30, $38, $40, $48\n\n.speed_x\n #_078B93: db $10, $1C, $1C, $1C\n #_078B97: db $1C, $1C, $1C, $1C\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HoppingHorizontally_FindTile_Vertical", + "code": "Link_HoppingHorizontally_FindTile_Vertical:\n #_078B9B: LDA.b $21\n #_078B9D: STA.b $33\n\n #_078B9F: LDA.b $20\n #_078BA1: STA.b $32\n\n #_078BA3: SEC\n #_078BA4: SBC.b $3E\n #_078BA6: STA.b $30\n\n #_078BA8: LDA.b $66\n #_078BAA: ASL A\n #_078BAB: TAY\n\n #_078BAC: REP #$20\n\n #_078BAE: LDA.w .offset_x,Y\n #_078BB1: CLC\n #_078BB2: ADC.b $20\n #_078BB4: STA.b $20\n\n #_078BB6: SEP #$20\n\n #_078BB8: JSR TileDetect_Movement_Vertical\n\n #_078BBB: LDA.w $0343\n #_078BBE: ORA.w $035B\n #_078BC1: ORA.w $0357\n #_078BC4: ORA.w $0341\n #_078BC7: AND.b #$07\n #_078BC9: CMP.b #$07\n #_078BCB: BEQ .no_tiles_flagged\n\n #_078BCD: LDA.b $33\n #_078BCF: STA.b $21\n\n #_078BD1: LDA.b $32\n #_078BD3: STA.b $20\n\n #_078BD5: LDY.b #$00\n\n #_078BD7: LDA.b #$01\n #_078BD9: STA.b $46\n\n #_078BDB: LDA.b $28\n #_078BDD: BPL .x_speed_positive\n\n #_078BDF: LDY.b #$FF\n\n #_078BE1: EOR.b #$FF\n #_078BE3: INC A\n\n.x_speed_positive\n #_078BE4: LSR A\n #_078BE5: LSR A\n #_078BE6: LSR A\n #_078BE7: LSR A\n #_078BE8: TAX\n\n #_078BE9: LDA.w .speed_z,X\n #_078BEC: STA.w $0362\n #_078BEF: STA.w $0363\n\n #_078BF2: LDA.w .speed_x,X\n #_078BF5: CPY.b #$FF\n #_078BF7: BNE .dont_invert_x_speed\n\n #_078BF9: EOR.b #$FF\n #_078BFB: INC A\n\n.dont_invert_x_speed\n #_078BFC: STA.b $28\n\n #_078BFE: BRA .check_for_water\n\n.no_tiles_flagged\n #_078C00: LDA.b $66\n #_078C02: ASL A\n #_078C03: TAY\n\n #_078C04: REP #$20\n\n #_078C06: LDA.w .offset_y,Y\n #_078C09: CLC\n #_078C0A: ADC.b $20\n #_078C0C: STA.b $20\n\n #_078C0E: SEP #$20\n\n #_078C10: LDA.b $20\n #_078C12: STA.b $3E\n\n #_078C14: LDA.b $21\n #_078C16: STA.b $40\n\n #_078C18: LDA.b #$01\n #_078C1A: STA.b $46\n\n #_078C1C: LDA.b $24\n #_078C1E: CMP.b #$FF\n #_078C20: BNE .dont_zero_z_coord\n\n #_078C22: LDA.b #$00\n\n.dont_zero_z_coord\n #_078C24: STA.b $00\n #_078C26: STZ.b $01\n\n #_078C28: REP #$20\n\n #_078C2A: LDA.b $20\n #_078C2C: SEC\n #_078C2D: SBC.b $32\n #_078C2F: CLC\n #_078C30: ADC.b $00\n #_078C32: STA.w $0364\n #_078C35: STA.b $24\n\n #_078C37: SEP #$20\n\n.check_for_water\n #_078C39: LDA.w $0341\n #_078C3C: AND.b #$07\n #_078C3E: BEQ .exit\n\n #_078C40: LDA.b #$02\n #_078C42: STA.b $4D\n\n; =========================================================\n\n#Link_SetToDeepWater:\n #_078C44: LDA.b #$01\n #_078C46: STA.w $0345\n\n #_078C49: LDA.w $0026\n #_078C4C: STA.w $0340\n\n #_078C4F: JSL Link_ResetSwimmingState\n\n #_078C53: STZ.w $0376\n #_078C56: STZ.b $5E\n\n.exit\n #_078C58: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_0F", + "code": "LinkState_0F:\n #_078C69: LDY.b #$03\n\n #_078C6B: LDA.b $28\n #_078C6D: BPL .x_speed_positive\n\n #_078C6F: LDY.b #$02\n\n.x_speed_positive\n #_078C71: STY.b $66\n\n #_078C73: STZ.b $50\n #_078C75: STZ.b $27\n\n #_078C77: STZ.w $0351\n\n #_078C7A: LDA.b $46\n #_078C7C: BNE .proceed_to_jump\n\n #_078C7E: LDA.w $0362\n #_078C81: BNE .proceed_to_jump\n\n #_078C83: LDA.b $5D\n #_078C85: SEC\n #_078C86: SBC.b #$0F\n #_078C88: ASL A\n #_078C89: ASL A\n #_078C8A: STA.b $00\n\n #_078C8C: TYA\n #_078C8D: AND.b #$FD\n #_078C8F: ASL A\n #_078C90: CLC\n #_078C91: ADC.b $00\n #_078C93: TAX\n\n #_078C94: LDA.b $22\n #_078C96: PHA\n\n #_078C97: LDA.b $23\n #_078C99: PHA\n\n #_078C9A: REP #$20\n\n #_078C9C: LDA.b $22\n #_078C9E: CLC\n #_078C9F: ADC.w .offset_x,X\n #_078CA2: STA.b $22\n\n #_078CA4: SEP #$20\n\n #_078CA6: TXA\n #_078CA7: LSR A\n #_078CA8: LSR A\n #_078CA9: TAX\n\n #_078CAA: LDA.w .speed_x,X\n\n #_078CAD: CPY.b #$02\n #_078CAF: BNE .keep_speed_positive\n\n #_078CB1: EOR.b #$FF\n #_078CB3: INC A\n\n.keep_speed_positive\n #_078CB4: STA.b $28\n\n #_078CB6: LDA.b $24\n #_078CB8: CMP.b #$FF\n #_078CBA: BNE .dont_zero_z\n\n #_078CBC: LDA.b #$00\n\n.dont_zero_z\n #_078CBE: CLC\n #_078CBF: ADC.w .offset_z,X\n #_078CC2: STA.w $0364\n #_078CC5: STA.b $24\n\n #_078CC7: TXA\n #_078CC8: ASL A\n #_078CC9: TAX\n\n #_078CCA: REP #$20\n\n #_078CCC: LDA.w .offset_y,X\n #_078CCF: CLC\n #_078CD0: ADC.b $20\n #_078CD2: STA.b $20\n\n; ---------------------------------------------------------\n\n #_078CD4: SEP #$20\n\n #_078CD6: LDA.b $20\n #_078CD8: STA.b $3E\n\n #_078CDA: LDA.b $21\n #_078CDC: STA.b $40\n\n #_078CDE: PLA\n #_078CDF: STA.b $23\n\n #_078CE1: PLA\n #_078CE2: STA.b $22\n\n #_078CE4: LDA.b $1B\n #_078CE6: BNE .proceed_to_jump\n\n #_078CE8: LDA.b #$02\n #_078CEA: STA.b $EE\n\n.proceed_to_jump\n #_078CEC: BRL LinkState_HandlingJump\n\n; =========================================================\n\npool Link_HoppingHorizontally_FindTile_Horizontal\n\n.offset_x_a\n #_078CEF: dw -8\n #_078CF1: dw 8\n\n.offset_x_b\n #_078CF3: dw -32\n #_078CF5: dw 32\n\n.offset_x_c\n #_078CF7: dw -16\n #_078CF9: dw 16\n\n.speed_x\n #_078CFB: db $14, $14, $14, $18, $18, $18, $18, $1C\n #_078D03: db $1C, $24, $24, $24, $24, $24, $24, $26\n #_078D0B: db $26, $26, $26, $26, $26, $26, $28, $28\n\n.speed_z\n #_078D13: db $14, $14, $14, $14, $14, $14, $14, $18\n #_078D1B: db $18, $20, $20, $20, $24, $24, $24, $26\n #_078D23: db $26, $26, $26, $26, $26, $26, $28, $28\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HoppingHorizontally_FindTile_Horizontal", + "code": "Link_HoppingHorizontally_FindTile_Horizontal:\n #_078D2B: LDA.b $23\n #_078D2D: STA.b $33\n\n #_078D2F: LDA.b $22\n #_078D31: STA.b $32\n\n #_078D33: LDX.b #$07\n\n.find_next\n #_078D35: PHX\n #_078D36: PHY\n\n #_078D37: REP #$20\n\n #_078D39: LDA.w .offset_x_a,Y\n #_078D3C: CLC\n #_078D3D: ADC.b $22\n #_078D3F: STA.b $22\n\n #_078D41: SEP #$20\n\n #_078D43: LDA.b $66\n #_078D45: ASL A\n #_078D46: TAY\n\n #_078D47: JSR TileDetect_Movement_Horizontal\n\n #_078D4A: PLY\n #_078D4B: PLX\n\n #_078D4C: LDA.w $0343\n #_078D4F: ORA.w $035B\n #_078D52: ORA.w $0357\n #_078D55: ORA.w $0341\n #_078D58: ORA.b $59\n #_078D5A: AND.b #$07\n #_078D5C: CMP.b #$07\n #_078D5E: BNE .doesnt_work\n\n #_078D60: LDA.w $0341\n #_078D63: AND.b #$07\n #_078D65: CMP.b #$07\n #_078D67: BNE .water_handled\n\n #_078D69: LDA.b #$01\n #_078D6B: STA.w $0345\n\n #_078D6E: INC A\n #_078D6F: STA.b $4D\n\n #_078D71: LDA.w $0026\n #_078D74: STA.w $0340\n\n #_078D77: STZ.w $02CB\n #_078D7A: STZ.b $5E\n #_078D7C: STZ.w $0376\n\n #_078D7F: JSR ResetAllAcceleration\n #_078D82: BRA .water_handled\n\n.doesnt_work\n #_078D84: DEX\n #_078D85: BPL .find_next\n\n; ---------------------------------------------------------\n\n #_078D87: REP #$20\n\n #_078D89: LDA.w .offset_x_b,Y\n #_078D8C: CLC\n #_078D8D: ADC.b $32\n #_078D8F: STA.b $22\n\n #_078D91: SEP #$20\n\n.water_handled\n #_078D93: PHX\n\n #_078D94: REP #$20\n\n #_078D96: LDA.w .offset_x_c,Y\n #_078D99: CLC\n #_078D9A: ADC.b $22\n #_078D9C: STA.b $22\n\n #_078D9E: LDA.b $32\n #_078DA0: SEC\n #_078DA1: SBC.b $22\n #_078DA3: BPL .positive\n\n #_078DA5: EOR.w #$FFFF\n #_078DA8: INC A\n\n.positive\n #_078DA9: LSR A\n #_078DAA: LSR A\n #_078DAB: LSR A\n #_078DAC: TAX\n\n #_078DAD: SEP #$20\n\n #_078DAF: LDA.w .speed_x,X\n\n #_078DB2: CPY.b #$02\n #_078DB4: BEQ .dont_invert\n\n #_078DB6: EOR.b #$FF\n #_078DB8: INC A\n\n.dont_invert\n #_078DB9: STA.b $28\n\n #_078DBB: LDA.w .speed_z,X\n #_078DBE: STA.w $0362\n #_078DC1: STA.w $0363\n\n #_078DC4: PLX\n\n #_078DC5: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HoppingDiagonallyUpOW", + "code": "LinkState_HoppingDiagonallyUpOW:\n #_078DC6: STZ.w $0351\n\n #_078DC9: LDA.b #$02\n #_078DCB: STA.b $00\n\n #_078DCD: JSR Link_HandleChangeInZVelocity_preset\n #_078DD0: JSL LinkHop_FindArbitraryLandingSpot\n\n #_078DD4: LDA.b $24\n #_078DD6: BPL .exit\n\n; ---------------------------------------------------------\n\n #_078DD8: JSR Link_SplashUponLanding\n\n #_078DDB: LDA.b $5D\n #_078DDD: CMP.b #$04 ; LINKSTATE 04\n #_078DDF: BEQ .no_sfx\n\n #_078DE1: LDA.w $0345\n #_078DE4: BNE .no_sfx\n\n #_078DE6: LDA.b #$21 ; SFX2.21\n #_078DE8: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.no_sfx\n #_078DEB: STZ.w $037B\n #_078DEE: STZ.b $4D\n\n #_078DF0: LDA.b #$FF\n #_078DF2: STA.b $29\n #_078DF4: STA.b $24\n #_078DF6: STA.b $25\n\n #_078DF8: STZ.b $46\n #_078DFA: STZ.b $50\n\n.exit\n #_078DFC: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_HoppingDiagonallyDownOW", + "code": "LinkState_HoppingDiagonallyDownOW:\n #_078E15: LDY.b #$03\n\n #_078E17: LDA.b $28\n #_078E19: BPL .down_right\n\n #_078E1B: LDY.b #$02\n\n.down_right\n #_078E1D: STY.b $66\n\n #_078E1F: STZ.b $50\n #_078E21: STZ.b $27\n\n #_078E23: STZ.w $0351\n\n #_078E26: LDA.b $46\n #_078E28: BNE .underworld\n\n #_078E2A: LDA.w $0362\n #_078E2D: BNE .underworld\n\n #_078E2F: LDA.b #$01\n #_078E31: STA.b $66\n\n #_078E33: PHY\n\n #_078E34: LDA.b $22\n #_078E36: PHA\n\n #_078E37: LDA.b $23\n #_078E39: PHA\n\n #_078E3A: LDA.b #$20 ; SFX2.20\n #_078E3C: JSR PlaySFX_Set2\n\n #_078E3F: JSR LinkHop_FindLandingSpotDiagonallyDown\n\n #_078E42: PLA\n #_078E43: STA.b $23\n\n #_078E45: PLA\n #_078E46: STA.b $22\n\n #_078E48: PLX\n\n #_078E49: REP #$20\n\n #_078E4B: LDA.b $20\n #_078E4D: SEC\n #_078E4E: SBC.b $32\n\n #_078E50: LSR A\n #_078E51: LSR A\n #_078E52: LSR A\n\n #_078E53: TAY\n\n #_078E54: SEP #$20\n\n #_078E56: LDA.w .speed_x,Y\n\n #_078E59: CPX.b #$02\n #_078E5B: BNE .dont_invert\n\n #_078E5D: EOR.b #$FF\n #_078E5F: INC A\n\n.dont_invert\n #_078E60: STA.b $28\n\n #_078E62: LDA.b $1B\n #_078E64: BNE .underworld\n\n #_078E66: LDA.b #$02\n #_078E68: STA.b $EE\n\n.underworld\n #_078E6A: BRL LinkState_HandlingJump\n\n; =========================================================\n\npool LinkHop_FindLandingSpotDiagonallyDown\n\n.offset_x\n #_078E6D: db $F8, $FF, $08, $00\n\n.offset_y\n #_078E71: db $F7, $FF, $09, $00\n\n.offset_y_2\n #_078E75: db $E8, $FF, $18, $00\n\n.detection_masks\n #_078E79: db $06, $03\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "LinkHop_FindLandingSpotDiagonallyDown", + "code": "LinkHop_FindLandingSpotDiagonallyDown:\n #_078E7B: LDA.b $21\n #_078E7D: STA.b $33\n\n #_078E7F: LDA.b $20\n #_078E81: STA.b $32\n\n #_078E83: SEC\n #_078E84: SBC.b $3E\n #_078E86: STA.b $30\n\n.check_next\n #_078E88: LDY.b #$00\n\n #_078E8A: LDA.b $28\n #_078E8C: BMI .positive_x_jump\n\n #_078E8E: LDY.b #$02\n\n.positive_x_jump\n #_078E90: PHY\n\n #_078E91: REP #$20\n\n #_078E93: LDA.w .offset_x,Y\n #_078E96: CLC\n #_078E97: ADC.b $22\n #_078E99: STA.b $22\n\n #_078E9B: LDA.b $66\n #_078E9D: AND.w #$00FF\n #_078EA0: ASL A\n #_078EA1: TAY\n\n #_078EA2: LDA.w .offset_y,Y\n #_078EA5: CLC\n #_078EA6: ADC.b $20\n #_078EA8: STA.b $20\n\n #_078EAA: SEP #$20\n\n #_078EAC: JSR TileDetect_Movement_Vertical\n\n #_078EAF: PLY\n\n #_078EB0: TYA\n #_078EB1: LSR A\n #_078EB2: TAY\n\n #_078EB3: LDA.w .detection_masks,Y\n #_078EB6: STA.b $72\n\n #_078EB8: LDA.w $0343\n #_078EBB: ORA.w $035B\n #_078EBE: ORA.w $0357\n #_078EC1: ORA.w $0341\n #_078EC4: AND.b $72\n #_078EC6: CMP.b $72\n #_078EC8: BNE .check_next\n\n; ---------------------------------------------------------\n\n #_078ECA: LDA.w $0341\n #_078ECD: AND.b $72\n #_078ECF: BEQ .didnt_find_water\n\n #_078ED1: LDA.b #$01\n #_078ED3: STA.w $0345\n\n #_078ED6: LDA.b #$02\n #_078ED8: STA.b $4D\n\n #_078EDA: LDA.w $0026\n #_078EDD: STA.w $0340\n\n #_078EE0: JSL Link_ResetSwimmingState\n\n #_078EE4: STZ.b $5E\n #_078EE6: STZ.w $0376\n\n.didnt_find_water\n #_078EE9: LDA.b $66\n #_078EEB: ASL A\n #_078EEC: TAY\n\n #_078EED: REP #$20\n\n #_078EEF: LDA.w .offset_y_2,Y\n #_078EF2: CLC\n #_078EF3: ADC.b $20\n #_078EF5: STA.b $20\n\n #_078EF7: SEP #$20\n\n #_078EF9: LDA.b $20\n #_078EFB: STA.b $3E\n\n #_078EFD: LDA.b $21\n #_078EFF: STA.b $40\n\n #_078F01: LDA.b #$01\n #_078F03: STA.b $46\n\n #_078F05: LDA.b $24\n #_078F07: STA.b $00\n #_078F09: STZ.b $01\n\n #_078F0B: REP #$20\n\n #_078F0D: LDA.b $20\n #_078F0F: SEC\n #_078F10: SBC.b $32\n\n #_078F12: CLC\n #_078F13: ADC.b $00\n #_078F15: STA.w $0364\n #_078F18: STA.b $24\n\n #_078F1A: SEP #$20\n\n #_078F1C: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_SplashUponLanding", + "code": "Link_SplashUponLanding:\n #_078F1D: PHX\n #_078F1E: PHY\n\n #_078F1F: LDA.w $02E0\n #_078F22: BEQ .not_bunny\n\n #_078F24: LDA.w $0345\n #_078F27: BEQ .not_deep_water\n\n #_078F29: LDA.b #$15 ; ANCILLA 15\n #_078F2B: LDY.b #$00\n #_078F2D: JSL AncillaAdd_Splash\n\n #_078F31: PLY\n #_078F32: PLX\n\n #_078F33: BRL LinkState_Bunny_recache\n\n.not_deep_water\n #_078F36: LDX.b #$17 ; LINKSTATE 17\n\n #_078F38: LDA.l $7EF357\n #_078F3C: BEQ .set_state\n\n #_078F3E: LDX.b #$1C ; LINKSTATE 1C\n #_078F40: BRA .set_state\n\n; ---------------------------------------------------------\n\n.not_bunny\n #_078F42: LDX.b #$00 ; LINKSTATE 00\n\n #_078F44: LDA.w $0345\n #_078F47: BEQ .set_state\n\n #_078F49: LDA.b $5D\n #_078F4B: CMP.b #$06 ; LINKSTATE 06\n #_078F4D: BEQ .not_recoiling\n\n #_078F4F: LDA.b #$15 ; ANCILLA 15\n #_078F51: LDY.b #$00\n #_078F53: JSL AncillaAdd_Splash\n\n; ---------------------------------------------------------\n\n.not_recoiling\n #_078F57: JSR Link_ForceUnequipCape_quietly\n\n #_078F5A: LDX.b #$04 ; LINKSTATE 04\n\n.set_state\n #_078F5C: STX.b $5D\n\n #_078F5E: PLY\n #_078F5F: PLX\n\n #_078F60: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkDirections26", + "code": "LinkDirections26:\n #_078F61: db $08\n #_078F62: db $04\n #_078F63: db $02\n #_078F64: db $01\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "LinkDashSFXMasks", + "code": "LinkDashSFXMasks:\n #_078F65: db $07, $0F, $0F\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "FollowerReactionToDashing", + "code": "FollowerReactionToDashing:\n #_078F68: db $FF ; 0x00 - No follower\n #_078F69: db $00 ; 0x01 - Zelda\n #_078F6A: db $02 ; 0x02 - Old man that stops following you\n #_078F6B: db $00 ; 0x03 - Unused old man\n #_078F6C: db $00 ; 0x04 - Normal old man\n #_078F6D: db $00 ; 0x05 - Zelda rescue telepathy\n #_078F6E: db $00 ; 0x06 - Blind maiden\n #_078F6F: db $00 ; 0x07 - Frogsmith\n #_078F70: db $00 ; 0x08 - Smithy\n #_078F71: db $00 ; 0x09 - Locksmith\n #_078F72: db $00 ; 0x0A - Kiki\n #_078F73: db $00 ; 0x0B - Unused old man\n #_078F74: db $00 ; 0x0C - Purple chest\n #_078F75: db $00 ; 0x0D - Super bomb\n #_078F76: db $00 ; 0x0E - Master Sword telepathy\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "FollowerDashReplacement", + "code": "FollowerDashReplacement:\n #_078F77: db $FF ; 0x00 - No follower\n #_078F78: db $00 ; 0x01 - Zelda\n #_078F79: db $03 ; 0x02 - Old man that stops following you \u21d2 FOLLOWER 03\n #_078F7A: db $00 ; 0x03 - Unused old man\n #_078F7B: db $00 ; 0x04 - Normal old man\n #_078F7C: db $00 ; 0x05 - Zelda rescue telepathy\n #_078F7D: db $00 ; 0x06 - Blind maiden\n #_078F7E: db $00 ; 0x07 - Frogsmith\n #_078F7F: db $00 ; 0x08 - Smithy\n #_078F80: db $00 ; 0x09 - Locksmith\n #_078F81: db $00 ; 0x0A - Kiki\n #_078F82: db $00 ; 0x0B - Unused old man\n #_078F83: db $00 ; 0x0C - Purple chest\n #_078F84: db $00 ; 0x0D - Super bomb\n #_078F85: db $00 ; 0x0E - Master Sword telepathy\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Dashing", + "code": "LinkState_Dashing:\n #_078F86: JSR CacheCameraPropertiesIfOutdoors\n\n #_078F89: JSR Link_HandleBunnyTransformation\n #_078F8C: BCC .not_bunnifying\n\n #_078F8E: LDA.b $5D\n #_078F90: CMP.b #$17 ; LINKSTATE 17\n #_078F92: BNE .not_bunny\n\n #_078F94: BRL LinkState_Bunny\n\n.not_bunny\n #_078F97: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_ExitingDash", + "code": "LinkState_ExitingDash:\n #_07915E: JSR CacheCameraPropertiesIfOutdoors\n\n #_079161: LDA.b $F0\n #_079163: AND.b #$0F\n #_079165: BNE .dpad_pressed\n\n #_079167: LDA.w $0374\n #_07916A: CMP.b #$10\n #_07916C: BCC .low_dash_timer\n\n.dpad_pressed\n #_07916E: STZ.w $0374\n #_079171: STZ.b $5E\n\n #_079173: LDA.b #$00 ; LINKSTATE 00\n #_079175: STA.b $5D\n\n #_079177: STZ.w $0372\n #_07917A: STZ.w $032B\n\n #_07917D: LDA.b $3C\n #_07917F: CMP.b #$09\n #_079181: BCS .finish_up\n\n #_079183: STZ.b $50\n\n #_079185: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.low_dash_timer\n #_079187: LDA.w $0374\n #_07918A: CLC\n #_07918B: ADC.b #$01\n #_07918D: STA.w $0374\n\n; ---------------------------------------------------------\n\n.finish_up\n #_079190: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_079194: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_CancelDash", + "code": "Link_CancelDash:\n #_079195: LDA.w $0372\n #_079198: BEQ .exit\n\n #_07919A: PHX\n\n #_07919B: LDX.b #$04\n\n.next_ancilla\n #_07919D: LDA.w $0C4A,X\n #_0791A0: CMP.b #$1E ; ANCILLA 1E\n #_0791A2: BNE .dont_delete\n\n #_0791A4: STZ.w $0C4A,X\n\n.dont_delete\n #_0791A7: DEX\n #_0791A8: BPL .next_ancilla\n\n #_0791AA: PLX\n\n #_0791AB: STZ.w $0374\n #_0791AE: STZ.b $5E\n #_0791B0: STZ.w $0372\n #_0791B3: STZ.b $50\n #_0791B5: STZ.w $032B\n\n.exit\n #_0791B8: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_CancelDash_long", + "code": "Link_CancelDash_long:\n #_0791B9: JSR Link_CancelDash\n\n #_0791BC: RTL", + "file": "bank_07.asm" + }, + { + "name": "RepelBonkSpeedY", + "code": "RepelBonkSpeedY:\n #_0791BD: db $18, $E8, $00, $00\n", + "file": "bank_07.asm" + }, + { + "name": "RepelBonkSpeedX", + "code": "RepelBonkSpeedX:\n #_0791C1: db $00, $00, $18, $E8\n", + "file": "bank_07.asm" + }, + { + "name": "TileReboundAFlaggingY", + "code": "TileReboundAFlaggingY:\n #_0791C5: db $01, $00, $00, $00\n", + "file": "bank_07.asm" + }, + { + "name": "TileReboundAFlaggingX", + "code": "TileReboundAFlaggingX:\n #_0791C9: db $00, $00, $01, $00\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "IceRepelAccelY", + "code": "IceRepelAccelY:\n #_0791CD: dw $0180, $0180, $0000, $0000\n #_0791D5: dw $0100, $0100, $0000, $0000\n", + "file": "bank_07.asm" + }, + { + "name": "IceRepelAccelX", + "code": "IceRepelAccelX:\n #_0791DD: dw $0000, $0000, $0180, $0180\n #_0791E5: dw $0000, $0000, $0100, $0100\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RepelDirectionMasks", + "code": "RepelDirectionMasks:\n #_0791ED: db $08, $04, $02, $01\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "RepelDash", + "code": "RepelDash:\n #_0791F1: LDA.w $0372\n #_0791F4: BEQ .not_even_dashing\n\n #_0791F6: LDA.w $02F1\n #_0791F9: CMP.b #$40\n #_0791FB: BNE .continue\n\n.not_even_dashing\n #_0791FD: BRL .exit\n\n; ---------------------------------------------------------\n\n.continue\n #_079200: JSL Link_ResetSwimmingState\n\n #_079204: LDY.b #$01\n #_079206: LDA.b #$1D ; ANCILLA 1D\n #_079208: JSL AncillaAdd_DashTremor\n\n #_07920C: JSL Prepare_ApplyRumbleToSprites\n\n #_079210: LDA.w $012F\n #_079213: AND.b #$3F\n #_079215: CMP.b #$1B ; SFX3.1B\n #_079217: BEQ LinkApplyTileRebound\n\n #_079219: CMP.b #$32 ; SFX3.32\n #_07921B: BEQ LinkApplyTileRebound\n\n #_07921D: LDA.b #$03 ; SFX3.03\n #_07921F: JSR PlaySFX_Set3\n\n; ---------------------------------------------------------\n\n#LinkApplyTileRebound:\n #_079222: LDX.b $66\n\n #_079224: LDA.w RepelBonkSpeedY,X\n #_079227: STA.b $27\n\n #_079229: LDA.w RepelBonkSpeedX,X\n #_07922C: STA.b $28\n\n #_07922E: LDA.b #$18\n #_079230: STA.b $46\n\n #_079232: LDA.b #$24\n #_079234: STA.b $29\n #_079236: STA.w $02C7\n\n #_079239: LDA.w $034A\n #_07923C: BEQ .not_on_any_ice\n\n; ---------------------------------------------------------\n\n #_07923E: LDA.w RepelDirectionMasks,X\n #_079241: STA.w $0340\n #_079244: STA.b $67\n\n #_079246: LDA.w TileReboundAFlaggingY,X\n #_079249: STA.w $0338\n\n #_07924C: LDA.w TileReboundAFlaggingX,X\n #_07924F: STA.w $033A\n\n #_079252: PHX\n\n #_079253: LDA.w $034A\n #_079256: DEC A\n #_079257: ASL A\n #_079258: ASL A\n #_079259: ASL A\n #_07925A: STA.b $08\n\n #_07925C: TXA\n #_07925D: ASL A\n #_07925E: CLC\n #_07925F: ADC.b $08\n #_079261: TAX\n\n #_079262: REP #$20\n\n #_079264: LDA.w IceRepelAccelY,X\n #_079267: STA.w $033C\n\n #_07926A: LDA.w IceRepelAccelX,X\n #_07926D: STA.w $033E\n\n #_079270: SEP #$20\n\n #_079272: PLX\n\n; ---------------------------------------------------------\n\n.not_on_any_ice\n #_079273: LDA.b #$01\n #_079275: STA.b $4D\n #_079277: STA.w $02F8\n\n #_07927A: STZ.b $74\n #_07927C: STZ.w $0360\n\n #_07927F: STZ.b $5E\n #_079281: STZ.b $50\n #_079283: STZ.b $6B\n\n #_079285: TXA\n #_079286: AND.b #$02\n #_079288: BNE .dont_reset_x\n\n #_07928A: STZ.b $31\n\n #_07928C: BRA .exit\n\n.dont_reset_x\n #_07928E: STZ.b $30\n\n.exit\n #_079290: RTS", + "file": "bank_07.asm" + }, + { + "name": "Sprite_RepelDash_long", + "code": "Sprite_RepelDash_long:\n #_079291: PHB\n #_079292: PHK\n #_079293: PLB\n\n #_079294: PHX\n\n #_079295: LDA.b $2F\n #_079297: LSR A\n #_079298: STA.b $66\n\n #_07929A: JSR RepelDash\n\n #_07929D: PLX\n\n #_07929E: PLB\n\n #_07929F: RTL", + "file": "bank_07.asm" + }, + { + "name": "Flag67WithDirections", + "code": "Flag67WithDirections:\n #_0792A0: STZ.b $67\n\n #_0792A2: LDY.b #$00\n\n #_0792A4: LDA.b $27\n #_0792A6: BEQ .zero_y\n #_0792A8: BMI .negative_y\n\n #_0792AA: LDY.b #$01\n\n.negative_y\n #_0792AC: JSR .flag_one\n\n; ---------------------------------------------------------\n\n.zero_y\n #_0792AF: LDY.b #$02\n\n #_0792B1: LDA.b $28\n #_0792B3: BEQ .exit\n #_0792B5: BMI .flag_one\n\n #_0792B7: LDY.b #$03\n\n; ---------------------------------------------------------\n\n.flag_one\n #_0792B9: LDA.w RepelDirectionMasks,Y\n #_0792BC: TSB.b $67\n\n.exit\n #_0792BE: RTS", + "file": "bank_07.asm" + }, + { + "name": "PitFall_FlagsForAnimation", + "code": "PitFall_FlagsForAnimation:\n #_0792BF: db $0A, $09, $06, $05, $08, $04, $02, $01\n", + "file": "bank_07.asm" + }, + { + "name": "PitFall_FlagsForDirection", + "code": "PitFall_FlagsForDirection:\n #_0792C7: db $05, $06, $09, $0A, $04, $08, $01, $02\n", + "file": "bank_07.asm" + }, + { + "name": "PitFall_FlagsForDetection", + "code": "PitFall_FlagsForDetection:\n #_0792CF: db $0C, $03, $0A, $05\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Pits", + "code": "LinkState_Pits:\n #_0792D3: STZ.b $67\n\n #_0792D5: LDA.w $0302\n #_0792D8: BEQ .no_wall_touch\n\n #_0792DA: INC.w $02CA\n\n #_0792DD: LDA.w $02CA\n #_0792E0: CMP.b #$20\n #_0792E2: BNE .no_wall_touch\n\n #_0792E4: LDA.b #$1F\n #_0792E6: STA.w $02CA\n\n #_0792E9: BRA .check_for_pits\n\n.no_wall_touch\n #_0792EB: LDA.w $0372\n #_0792EE: BEQ .not_dashing_a\n\n #_0792F0: LDA.w $0374\n #_0792F3: BEQ .not_charging_dash\n\n #_0792F5: BRL LinkState_Dashing\n\n.not_charging_dash\n #_0792F8: LDA.b $F0\n #_0792FA: AND.b #$0F\n #_0792FC: BEQ .check_for_pits\n\n #_0792FE: AND.b $67\n #_079300: BNE .check_for_pits\n\n #_079302: JSR Link_CancelDash\n\n.not_dashing_a\n #_079305: LDA.b $4D\n #_079307: CMP.b #$01\n #_079309: BEQ .check_for_pits\n\n #_07930B: LDA.b $F0\n #_07930D: AND.b #$0F\n #_07930F: STA.b $67\n\n; ---------------------------------------------------------\n\n.check_for_pits\n #_079311: LDY.b #$04\n #_079313: JSR TileDetect_MainHandler\n\n #_079316: LDA.b $59\n #_079318: AND.b #$01\n #_07931A: BNE Link_HandleFallingInPit\n\n #_07931C: LDA.w $0372\n #_07931F: BEQ .not_dashing_b\n\n #_079321: BRL LinkState_Dashing\n\n.not_dashing_b\n #_079324: STZ.b $5E\n\n #_079326: JSR Link_CancelDash\n\n #_079329: LDA.b $3A\n #_07932B: AND.b #$80\n #_07932D: BNE .holding_b\n\n #_07932F: LDA.b $50\n #_079331: AND.b #$FE\n #_079333: STA.b $50\n\n.holding_b\n #_079335: STZ.b $5B\n\n #_079337: LDY.b #$00 ; LINKSTATE 00\n\n #_079339: LDA.w $02E0\n #_07933C: BEQ .set_state_and_continue\n\n #_07933E: LDY.b #$17 ; LINKSTATE 17\n\n #_079340: LDA.l $7EF357\n #_079344: BEQ .set_state_and_continue\n\n #_079346: LDY.b #$1C ; LINKSTATE 1C\n\n.set_state_and_continue\n #_079348: STY.b $5D\n\n #_07934A: CPY.b #$17 ; LINKSTATE 17\n #_07934C: BEQ .normal_bunny\n\n #_07934E: CPY.b #$1C ; LINKSTATE 1C\n #_079350: BEQ .temp_bunny\n\n #_079352: BRL LinkState_Default\n\n.normal_bunny\n #_079355: BRL LinkState_Bunny\n\n.temp_bunny\n #_079358: BRL LinkState_TemporaryBunny\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleFallingInPit", + "code": "Link_HandleFallingInPit:\n #_07935B: JSR TileDetect_BigArea\n\n #_07935E: LDA.b #$04\n #_079360: STA.b $5E\n\n #_079362: LDA.b $59\n #_079364: AND.b #$0F\n #_079366: BNE .prepare_to_fall\n\n #_079368: STZ.b $5B\n #_07936A: STZ.b $5E\n\n #_07936C: LDY.b #$00\n\n #_07936E: LDA.w $02E0\n #_079371: BEQ .set_state\n\n #_079373: LDY.b #$17 ; LINKSTATE 17\n\n #_079375: LDA.l $7EF357\n #_079379: BEQ .set_state\n\n #_07937B: LDY.b #$1C ; LINKSTATE 1C\n\n.set_state\n #_07937D: STY.b $5D\n\n #_07937F: JSR Link_CancelDash\n\n #_079382: LDA.b $3A\n #_079384: AND.b #$80\n #_079386: BNE .sword_not_out\n\n #_079388: LDA.b $50\n #_07938A: AND.b #$FE\n #_07938C: STA.b $50\n\n.sword_not_out\n #_07938E: BRL EXIT_079426\n\n; ---------------------------------------------------------\n\n.prepare_to_fall\n #_079391: CMP.b #$0F\n #_079393: BNE .dont_fall_just_yet\n\n #_079395: LDA.b $5B\n #_079397: CMP.b #$02\n #_079399: BEQ .already_falling\n\n #_07939B: LDA.l $7EF357\n #_07939F: BEQ .no_pearl\n\n #_0793A1: STZ.w $03F7\n\n #_0793A4: STZ.b $56\n\n #_0793A6: STZ.w $02E0\n\n #_0793A9: STZ.w $03F5\n #_0793AC: STZ.w $03F6\n\n.no_pearl\n #_0793AF: STZ.b $67\n #_0793B1: STZ.b $00\n\n #_0793B3: LDA.b #$02\n #_0793B5: STA.b $5B\n\n #_0793B7: LDA.b #$01\n #_0793B9: STA.w $037B\n\n #_0793BC: STZ.b $3A\n #_0793BE: STZ.b $3C\n\n #_0793C0: STZ.w $0301\n #_0793C3: STZ.w $037A\n\n #_0793C6: STZ.b $46\n #_0793C8: STZ.b $4D\n\n #_0793CA: LDA.b #$1F ; SFX3.1F\n #_0793CC: JSR PlaySFX_Set3\n\n.already_falling\n #_0793CF: BRA DetermineConsequencesOfFalling\n\n; ---------------------------------------------------------\n\n.dont_fall_just_yet\n #_0793D1: LDX.b #$03\n\n.check_next_flag\n #_0793D3: LDA.b $59\n #_0793D5: AND.b #$0F\n #_0793D7: CMP.w PitFall_FlagsForDetection,X\n #_0793DA: BNE .skip\n\n #_0793DC: TXA\n #_0793DD: CLC\n #_0793DE: ADC.b #$04\n #_0793E0: TAX\n\n #_0793E1: BRA .set_flag_index\n\n.skip\n #_0793E3: DEX\n #_0793E4: BPL .check_next_flag\n\n; ---------------------------------------------------------\n\n #_0793E6: LDX.b #$03\n\n #_0793E8: LDA.b $59\n\n.shift\n #_0793EA: LSR A\n #_0793EB: BCS .set_flag_index\n\n #_0793ED: DEX\n #_0793EE: BPL .shift\n\n.set_flag_index\n #_0793F0: STX.w $02C9\n\n #_0793F3: LDA.b $67\n #_0793F5: AND.w PitFall_FlagsForDirection,X\n #_0793F8: BEQ .not_very_slippery\n\n #_0793FA: LDA.b $67\n #_0793FC: STA.b $26\n\n #_0793FE: LDA.b #$06\n #_079400: STA.b $5E\n\n #_079402: BRA .continue\n\n.not_very_slippery\n #_079404: LDA.b $67\n #_079406: STA.b $00\n\n #_079408: LDX.w $02C9\n\n #_07940B: LDA.w PitFall_FlagsForAnimation,X\n #_07940E: TSB.b $67\n\n #_079410: LDA.b $00\n #_079412: BEQ .dont_animate\n\n; ---------------------------------------------------------\n\n.continue\n #_079414: JSL Link_HandleMovingAnimation_FullLongEntry\n\n.dont_animate\n #_079418: JSR Link_HandleDiagonalCollision\n #_07941B: JSL Link_HandleVelocity\n #_07941F: JSR Link_HandleCardinalCollision\n #_079422: JSL ApplyLinksMovementToCamera\n\n; ---------------------------------------------------------\n\n#EXIT_079426:\n #_079426: RTS", + "file": "bank_07.asm" + }, + { + "name": "DetermineConsequencesOfFalling", + "code": "DetermineConsequencesOfFalling:\n #_079427: STZ.b $50\n #_079429: STZ.b $46\n\n #_07942B: STZ.b $24\n #_07942D: STZ.b $25\n #_07942F: STZ.b $29\n\n #_079431: STZ.b $4D\n\n #_079433: STZ.w $0373\n #_079436: STZ.w $02E1\n\n #_079439: JSR Link_ForceUnequipCape_quietly\n\n #_07943C: INC.w $037B\n\n #_07943F: DEC.b $5C\n #_079441: BPL EXIT_079426\n\n #_079443: INC.b $5A\n\n #_079445: LDX.b $5A\n\n #_079447: LDA.b #$09\n #_079449: STA.b $5C\n\n #_07944B: LDA.l $7EF3CC\n #_07944F: CMP.b #$0D ; FOLLOWER 0D\n #_079451: BEQ .no_hud_numbers\n\n #_079453: CPX.b #$01\n #_079455: BNE .no_hud_numbers\n\n #_079457: STX.w $02F9\n\n; ---------------------------------------------------------\n\n.no_hud_numbers\n #_07945A: CPX.b #$06\n #_07945C: BNE EXIT_079426\n\n #_07945E: JSR Link_CancelDash\n\n #_079461: LDY.b #$07\n #_079463: STY.b $11\n\n #_079465: LDA.b #$06\n #_079467: STA.b $5A\n\n #_079469: LDA.b #$03\n #_07946B: STA.b $5B\n\n #_07946D: LDA.b #$0C\n #_07946F: STA.b $4B\n\n #_079471: LDA.b #$10\n #_079473: STA.b $57\n\n #_079475: LDA.b $20\n #_079477: SEC\n #_079478: SBC.b $E8\n #_07947A: STA.b $00\n\n #_07947C: STZ.b $01\n\n #_07947E: STZ.w $0308\n #_079481: STZ.w $0309\n #_079484: STZ.w $0376\n #_079487: STZ.w $030B\n\n; ---------------------------------------------------------\n\n #_07948A: REP #$30\n\n #_07948C: LDA.b $1B\n #_07948E: AND.w #$00FF\n #_079491: BEQ .overworld_pit\n\n #_079493: LDA.b $00\n #_079495: PHA\n\n #_079496: SEP #$30\n\n #_079498: LDA.b $A0\n #_07949A: STA.b $A2\n\n #_07949C: JSL Underworld_FlagRoomData_Quadrants\n\n #_0794A0: REP #$30\n\n #_0794A2: PLA\n #_0794A3: STA.b $00\n\n #_0794A5: LDX.w #$0070\n\n #_0794A8: LDA.b $A0\n\n.check_next_room\n #_0794AA: CMP.l RoomsWithPitDamage,X\n #_0794AE: BEQ UnderworldPitDoDamage\n\n #_0794B0: DEX\n #_0794B1: DEX\n #_0794B2: BPL .check_next_room\n\n; ---------------------------------------------------------\n\n.overworld_pit\n #_0794B4: SEP #$20\n\n #_0794B6: LDA.b $A0\n #_0794B8: STA.b $A2\n\n #_0794BA: LDA.l $7EC000\n #_0794BE: STA.b $A0\n\n #_0794C0: REP #$20\n\n #_0794C2: LDA.w #$0010\n #_0794C5: CLC\n #_0794C6: ADC.b $00\n #_0794C8: STA.b $00\n\n #_0794CA: LDA.b $20\n #_0794CC: STA.b $51\n\n #_0794CE: SEC\n #_0794CF: SBC.b $00\n #_0794D1: STA.b $20\n\n #_0794D3: SEP #$30\n\n #_0794D5: LDA.b $1B\n #_0794D7: BNE HandleLayerOfDestination\n\n #_0794D9: LDA.b $8A\n #_0794DB: CMP.b #$05 ; OW 05\n #_0794DD: BNE .overworld_pit_transition\n\n #_0794DF: JSL TakeDamageFromPit\n\n #_0794E3: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleLayerOfDestination", + "code": "HandleLayerOfDestination:\n #_0794F1: LDX.w $063C\n\n #_0794F4: LDA.l LayerOfDestination_for_0476,X\n #_0794F8: STA.w $0476\n\n #_0794FB: LDA.l LayerOfDestination_for_EE,X\n #_0794FF: STA.b $EE\n\n #_079501: RTS", + "file": "bank_07.asm" + }, + { + "name": "UnderworldPitDoDamage", + "code": "UnderworldPitDoDamage:\n #_079502: SEP #$30\n\n #_079504: LDA.b #$14\n #_079506: STA.b $11\n\n #_079508: LDA.l $7EF36D\n #_07950C: SEC\n #_07950D: SBC.b #$08\n #_07950F: STA.l $7EF36D\n\n #_079513: CMP.b #$A8\n #_079515: BCC .exit\n\n #_079517: LDA.b #$00\n #_079519: STA.l $7EF36D\n\n.exit\n #_07951D: RTS", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07951E", + "code": "UNREACHABLE_07951E:\n #_07951E: db $21, $24\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleUnderworldLandingFromPit", + "code": "HandleUnderworldLandingFromPit:\n #_079520: PHB\n #_079521: PHK\n #_079522: PLB\n\n #_079523: JSL LinkOAM_Main\n\n #_079527: REP #$20\n\n #_079529: LDA.b $22\n #_07952B: STA.w $0FC2\n\n #_07952E: LDA.b $20\n #_079530: STA.w $0FC4\n\n #_079533: SEP #$20\n\n #_079535: LDA.b $11\n #_079537: CMP.b #$07\n #_079539: BNE .dont_make_link_visible\n\n #_07953B: STZ.b $4B\n\n.dont_make_link_visible\n #_07953D: LDA.b $1A\n #_07953F: AND.b #$03\n #_079541: BNE .dont_update_pose\n\n #_079543: INC.b $5A\n\n #_079545: LDA.b $5A\n #_079547: CMP.b #$0A\n #_079549: BNE .dont_update_pose\n\n #_07954B: LDA.b #$06\n #_07954D: STA.b $5A\n\n.dont_update_pose\n #_07954F: LDA.b #$04\n #_079551: STA.b $67\n\n #_079553: JSL Link_HandleVelocity\n\n #_079557: REP #$20\n\n #_079559: LDA.b $20\n #_07955B: BPL .compare_target_coord\n\n #_07955D: LDA.b $51\n #_07955F: BMI .compare_target_coord\n\n #_079561: LDA.b $20\n #_079563: EOR.w #$FFFF\n #_079566: INC A\n #_079567: CLC\n #_079568: ADC.b $51\n #_07956A: BMI .the_eagle_has_landed\n\n #_07956C: BRL .exit\n\n.compare_target_coord\n #_07956F: LDA.b $51\n #_079571: CMP.b $20\n #_079573: BCC .the_eagle_has_landed\n\n #_079575: BRL .exit\n\n; ---------------------------------------------------------\n\n.the_eagle_has_landed\n #_079578: LDA.b $51\n #_07957A: STA.b $20\n\n #_07957C: SEP #$20\n\n #_07957E: STZ.b $2E\n\n #_079580: STZ.b $57\n\n #_079582: STZ.b $5A\n #_079584: STZ.b $5B\n\n #_079586: STZ.b $5E\n\n #_079588: STZ.b $B0\n #_07958A: STZ.b $11\n\n #_07958C: STZ.w $037B\n\n #_07958F: LDA.l $7EF3CC\n #_079593: BEQ .dont_reinitialize_follower\n\n #_079595: CMP.b #$03 ; FOLLOWER 03\n #_079597: BEQ .dont_reinitialize_follower\n\n #_079599: STZ.w $02F9\n\n #_07959C: CMP.b #$0D ; FOLLOWER 0D\n #_07959E: BNE .dont_delete_follower\n\n #_0795A0: LDA.b #$00\n #_0795A2: STA.l $7EF3CC\n #_0795A6: STA.w $04B4\n #_0795A9: STA.w $04B5\n #_0795AC: STA.l $7EF3D3\n\n #_0795B0: BRA .dont_reinitialize_follower\n\n.dont_delete_follower\n #_0795B2: JSL Follower_Initialize\n\n; ---------------------------------------------------------\n\n.dont_reinitialize_follower\n #_0795B6: LDY.b #$00\n\n #_0795B8: JSR TileDetect_MainHandler\n\n #_0795BB: LDA.w $0359\n #_0795BE: AND.b #$01\n #_0795C0: BEQ .not_shallow_water\n\n #_0795C2: LDA.b #$24 ; SFX2.24\n #_0795C4: JSR PlaySFX_Set2\n\n.not_shallow_water\n #_0795C7: JSR TileDetect_BigArea\n\n #_0795CA: LDA.w $012E\n #_0795CD: AND.b #$3F\n #_0795CF: CMP.b #$24 ; SFX2.24\n #_0795D1: BEQ .already_made_a_sound\n\n #_0795D3: LDA.b #$21 ; SFX2.21\n #_0795D5: JSR PlaySFX_Set2\n\n.already_made_a_sound\n #_0795D8: LDA.b $AD\n #_0795DA: CMP.b #$02\n #_0795DC: BNE .dont_flag_masks\n\n #_0795DE: LDA.w $034C\n #_0795E1: AND.b #$0F\n #_0795E3: BEQ .dont_flag_masks\n\n #_0795E5: LDA.b #$03\n #_0795E7: STA.w $0322\n\n.dont_flag_masks\n #_0795EA: LDA.w $0341\n #_0795ED: AND.b #$0F\n #_0795EF: CMP.b #$0F\n #_0795F1: BNE .didnt_find_water\n\n #_0795F3: LDA.b #$01\n #_0795F5: STA.w $0345\n\n #_0795F8: LDA.b $26\n #_0795FA: STA.w $0340\n\n #_0795FD: JSL Link_ResetSwimmingState\n\n #_079601: LDA.b #$01\n #_079603: STA.b $EE\n\n #_079605: LDA.b #$15 ; ANCILLA 15\n #_079607: LDY.b #$00\n #_079609: JSL AncillaAdd_Splash\n\n #_07960D: LDA.b #$04 ; LINKSTATE 04\n #_07960F: STA.b $5D\n\n #_079611: JSR Link_ForceUnequipCape_quietly\n\n #_079614: STZ.w $0308\n #_079617: STZ.w $0309\n #_07961A: STZ.w $0376\n #_07961D: STZ.b $5E\n\n #_07961F: BRA .exit\n\n.didnt_find_water\n #_079621: LDA.b $59\n #_079623: AND.b #$0F\n #_079625: BNE .pit\n\n #_079627: LDA.b #$00 ; LINKSTATE 00\n #_079629: STA.b $5D\n\n #_07962B: BRA .exit\n\n.pit\n #_07962D: LDA.b #$01 ; LINKSTATE 01\n #_07962F: STA.b $5D\n\n; ---------------------------------------------------------\n\n.exit\n #_079631: SEP #$20\n\n #_079633: PLB\n\n #_079634: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkSwimming_anim_offset", + "code": "LinkSwimming_anim_offset:\n #_079635: dw $0002\n #_079637: dw $0001\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "MaxSwimAcceleration", + "code": "MaxSwimAcceleration:\n #_079639: dw $00F0\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Swimming", + "code": "LinkState_Swimming:\n #_07963B: LDA.b $4D\n #_07963D: BEQ .not_diving\n\n #_07963F: LDA.b #$02 ; LINKSTATE 02\n #_079641: STA.b $5D\n #_079643: STZ.b $25\n\n #_079645: JSR ResetAllAcceleration\n\n #_079648: STZ.w $032A\n #_07964B: STZ.w $034F\n\n #_07964E: LDA.b $50\n #_079650: AND.b #$FE\n #_079652: STA.b $50\n\n #_079654: BRL LinkState_Recoil\n\n; ---------------------------------------------------------\n\n.not_diving\n #_079657: STZ.b $3A\n #_079659: STZ.b $3C\n #_07965B: STZ.b $3D\n #_07965D: STZ.b $79\n\n #_07965F: STZ.w $0308\n #_079662: STZ.w $0309\n\n\n #_079665: LDA.l $7EF356\n #_079669: BNE .have_flippers\n\n #_07966B: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleSwimMovements", + "code": "Link_HandleSwimMovements:\n #_079715: LDA.b $49\n #_079717: AND.b #$0F\n #_079719: BNE .no_movement_press\n\n #_07971B: LDA.b $F0\n #_07971D: AND.b #$0F\n #_07971F: BNE .no_movement_press\n\n #_079721: STZ.b $30\n #_079723: STZ.b $31\n\n #_079725: JSR Link_FlagMaxAccels\n\n #_079728: LDA.w $034A\n #_07972B: BEQ .check_if_swimming\n\n #_07972D: LDA.w $0372\n #_079730: BEQ .not_dashing\n\n #_079732: LDA.w $0340\n #_079735: BRA .no_movement_press\n\n; ---------------------------------------------------------\n\n.not_dashing\n #_079737: LDA.w $033C\n #_07973A: ORA.w $033D\n #_07973D: ORA.w $033E\n #_079740: ORA.w $033F\n #_079743: BNE .finish_up\n\n #_079745: STZ.b $48\n\n #_079747: JSL Link_ResetSwimmingState\n\n #_07974B: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.check_if_swimming\n #_07974D: LDA.b $5D\n #_07974F: CMP.b #$04 ; LINKSTATE 04\n #_079751: BEQ .finish_up\n\n #_079753: STZ.b $2E\n\n #_079755: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.no_movement_press\n #_079757: CMP.w $0340\n #_07975A: BEQ .dont_reset\n\n #_07975C: STZ.b $2A\n #_07975E: STZ.b $2B\n #_079760: STZ.b $6B\n #_079762: STZ.b $48\n\n.dont_reset\n #_079764: STA.w $0340\n\n #_079767: JSR Link_SetIceMaxAccel\n #_07976A: JSR Link_SetMomentum\n #_07976D: JSR Link_SetTheMaxAccel\n\n; ---------------------------------------------------------\n\n.finish_up\n #_079770: JSR Link_HandleDiagonalCollision\n #_079773: JSL Link_HandleVelocity\n #_079777: JSR Link_HandleCardinalCollision\n #_07977A: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_07977E: STZ.w $0302\n\n #_079781: JSR HandleIndoorCameraAndDoors\n\n #_079784: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_FlagMaxAccels", + "code": "Link_FlagMaxAccels:\n #_079785: REP #$20\n\n #_079787: LDA.w $034A\n #_07978A: AND.w #$00FF\n #_07978D: BEQ .exit\n\n #_07978F: LDX.b #$02\n\n.next\n #_079791: LDA.w $033C,X\n #_079794: BEQ .to_next\n\n #_079796: STA.w $0334,X\n\n #_079799: LDA.w #$0001\n #_07979C: STA.w $032B,X\n\n.to_next\n #_07979F: DEX\n #_0797A0: DEX\n #_0797A1: BPL .next\n\n.exit\n #_0797A3: SEP #$20\n\n #_0797A5: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_SetIceMaxAccel", + "code": "Link_SetIceMaxAccel:\n #_0797A6: REP #$20\n\n #_0797A8: LDA.w $034A\n #_0797AB: AND.w #$00FF\n #_0797AE: BEQ .exit\n\n #_0797B0: LDX.b #$02\n\n.next\n #_0797B2: LDA.w #$0180\n #_0797B5: STA.w $0334,X\n\n #_0797B8: DEX\n #_0797B9: DEX\n #_0797BA: BPL .next\n\n.exit\n #_0797BC: SEP #$20\n\n #_0797BE: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_SetMomentum", + "code": "Link_SetMomentum:\n #_0797C7: SEP #$20\n\n #_0797C9: LDA.b $F0\n #_0797CB: AND.b #$0F\n #_0797CD: STA.b $00\n\n #_0797CF: STZ.b $01\n\n #_0797D1: REP #$30\n\n #_0797D3: LDA.w #$0003\n #_0797D6: STA.b $02\n\n #_0797D8: LDX.w #$0002\n #_0797DB: STX.b $04\n\n; ---------------------------------------------------------\n\n.next\n #_0797DD: LDY.w #$0000\n\n #_0797E0: LDA.b $00\n #_0797E2: AND.b $02\n #_0797E4: BEQ .skip\n\n #_0797E6: AND.b $04\n #_0797E8: BNE .pressed_left\n\n #_0797EA: LDY.w #$0001\n\n.pressed_left\n #_0797ED: LDA.w #$0020\n #_0797F0: STA.w $0326,X\n\n #_0797F3: LDA.w $034A\n #_0797F6: AND.w #$00FF\n #_0797F9: BEQ .not_on_ice\n\n #_0797FB: PHY\n\n #_0797FC: DEC A\n #_0797FD: ASL A\n #_0797FE: TAY\n\n #_0797FF: LDA.w .momentum,Y\n #_079802: STA.w $0326,X\n\n #_079805: PLY\n\n.not_on_ice\n #_079806: LDA.w $0340\n #_079809: ORA.b $67\n #_07980B: AND.b $02\n #_07980D: CMP.b $02\n #_07980F: BNE .did_a_left_press\n\n #_079811: LDA.w #$0002\n #_079814: STA.w $032B,X\n\n #_079817: BRA .continue\n\n.did_a_left_press\n #_079819: TYA\n #_07981A: STA.w $0338,X\n\n #_07981D: STZ.w $032B,X\n\n.continue\n #_079820: LDA.w $0334,X\n #_079823: BNE .skip\n\n #_079825: LDA.w MaxSwimAcceleration\n #_079828: STA.w $0334,X\n\n.skip\n #_07982B: ASL.b $02\n #_07982D: ASL.b $02\n #_07982F: ASL.b $04\n #_079831: ASL.b $04\n\n #_079833: DEX\n #_079834: DEX\n #_079835: BPL .next\n\n #_079837: SEP #$30\n\n #_079839: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_ResetSwimmingState", + "code": "Link_ResetSwimmingState:\n #_07983A: PHB\n #_07983B: PHK\n #_07983C: PLB\n\n #_07983D: STZ.w $02CB\n #_079840: STZ.w $034F\n #_079843: STZ.w $032A\n\n #_079846: JSR ResetAllAcceleration\n\n #_079849: PLB\n\n #_07984A: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_ResetStateAfterDamagingPit", + "code": "Link_ResetStateAfterDamagingPit:\n #_07984B: PHB\n #_07984C: PHK\n #_07984D: PLB\n\n #_07984E: JSL Link_ResetSwimmingState\n\n #_079852: LDY.b #$00 ; LINKSTATE 00\n\n #_079854: LDA.b $56\n #_079856: BEQ .dont_bunny\n\n #_079858: LDA.l $7EF357\n #_07985C: BNE .dont_bunny\n\n #_07985E: LDY.b #$17 ; LINKSTATE 17\n\n.dont_bunny\n #_079860: STY.b $5D\n\n #_079862: LDA.w $0340\n #_079865: STA.b $26\n\n #_079867: STZ.w $0345\n #_07986A: STZ.w $037B\n\n #_07986D: STZ.b $5A\n #_07986F: STZ.b $5B\n\n #_079871: PLB\n\n #_079872: RTL", + "file": "bank_07.asm" + }, + { + "name": "ResetAllAcceleration", + "code": "ResetAllAcceleration:\n #_079873: REP #$20\n\n #_079875: STZ.w $032F\n #_079878: STZ.w $0331\n\n #_07987B: STZ.w $0326\n #_07987E: STZ.w $0328\n\n #_079881: STZ.w $032B\n #_079884: STZ.w $032D\n\n #_079887: STZ.w $033C\n #_07988A: STZ.w $033E\n\n #_07988D: STZ.w $0334\n #_079890: STZ.w $0336\n\n #_079893: SEP #$20\n\n #_079895: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleSwimAccels", + "code": "Link_HandleSwimAccels:\n #_0798A8: REP #$30\n\n #_0798AA: LDX.w #$0002\n\n #_0798AD: LDA.w #$0003\n #_0798B0: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_0798B2: LDA.b $F0\n #_0798B4: AND.b $02\n #_0798B6: BEQ .next_axis\n\n #_0798B8: LDA.w $033C,X\n #_0798BB: BEQ .check_max\n\n #_0798BD: LDA.w $0334,X\n #_0798C0: CMP.w #$0180\n #_0798C3: BCC .check_max\n\n #_0798C5: LDY.w #$0000\n\n.check_next\n #_0798C8: LDA.w .max_speeds,Y\n #_0798CB: CMP.w $033C,X\n #_0798CE: BCS .set\n\n #_0798D0: INY\n #_0798D1: INY\n #_0798D2: CPY.w #$0012\n #_0798D5: BNE .check_next\n\n #_0798D7: BRA .set\n\n.check_max\n #_0798D9: LDA.w $0334,X\n #_0798DC: BEQ .no_max\n\n #_0798DE: CLC\n #_0798DF: ADC.w #$00A0\n #_0798E2: CMP.w #$0180\n #_0798E5: BCC .set\n\n #_0798E7: LDA.w #$0180\n #_0798EA: BRA .set\n\n.no_max\n #_0798EC: LDA.w #$0001\n #_0798EF: STA.w $033C,X\n\n #_0798F2: LDA.w MaxSwimAcceleration\n\n.set\n #_0798F5: STA.w $0334,X\n\n.next_axis\n #_0798F8: ASL.b $02\n #_0798FA: ASL.b $02\n\n #_0798FC: DEX\n #_0798FD: DEX\n #_0798FE: BPL .next\n\n #_079900: SEP #$30\n\n #_079902: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_SetTheMaxAccel", + "code": "Link_SetTheMaxAccel:\n #_079903: REP #$30\n\n #_079905: LDA.w $034A\n #_079908: AND.w #$00FF\n #_07990B: BNE .exit\n\n #_07990D: LDA.w $034F\n #_079910: AND.w #$00FF\n #_079913: BNE .exit\n\n; ---------------------------------------------------------\n\n #_079915: LDX.w #$0002\n\n #_079918: LDA.w #$0003\n #_07991B: STA.b $02\n\n.next\n #_07991D: LDA.b $F0\n #_07991F: AND.b $02\n #_079921: BEQ .set\n\n #_079923: LDA.w $032B,X\n #_079926: CMP.w #$0002\n #_079929: BEQ .set\n\n #_07992B: LDA.w $032F,X\n #_07992E: BNE .reset\n\n #_079930: STZ.w $032F,X\n\n #_079933: LDA.w $033C,X\n #_079936: CMP.w MaxSwimAcceleration\n #_079939: BCC .to_next\n\n #_07993B: CMP.w $0334,X\n #_07993E: BEQ .reset\n #_079940: BCC .to_next\n\n.reset\n #_079942: STZ.w $032B,X\n\n #_079945: LDA.w $033C,X\n #_079948: CMP.w MaxSwimAcceleration\n #_07994B: BCC .set\n\n #_07994D: LDA.w #$0001\n #_079950: STA.w $032B,X\n #_079953: STA.w $032F,X\n\n #_079956: BRA .to_next\n\n.set\n #_079958: LDA.w MaxSwimAcceleration\n #_07995B: STA.w $0334,X\n #_07995E: STZ.w $032F,X\n\n.to_next\n #_079961: ASL.b $02\n #_079963: ASL.b $02\n\n #_079965: DEX\n #_079966: DEX\n #_079967: BPL .next\n\n.exit\n #_079969: SEP #$30\n\n #_07996B: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Zapped", + "code": "LinkState_Zapped:\n #_07996C: JSR CacheCameraPropertiesIfOutdoors\n #_07996F: JSL LinkZap_HandleMosaic\n\n #_079973: DEC.b $3D\n #_079975: BPL LinkState_ShowingOffItem\n\n #_079977: LDA.b #$02\n #_079979: STA.b $3D\n\n #_07997B: LDA.w $0300\n #_07997E: INC A\n #_07997F: STA.w $0300\n\n #_079982: AND.b #$01\n #_079984: BEQ .normal_palette\n\n #_079986: JSL RefreshLinkEquipmentPalettes_zap\n #_07998A: BRA .continue\n\n.normal_palette\n #_07998C: JSL RefreshLinkEquipmentPalettes_sword_and_mail\n\n.continue\n #_079990: LDA.w $0300\n #_079993: CMP.b #$08\n #_079995: BNE LinkState_ShowingOffItem\n\n #_079997: STZ.w $0300\n\n #_07999A: LDA.b #$00 ; LINKSTATE 00\n #_07999C: STA.b $5D\n\n #_07999E: STZ.w $037B\n #_0799A1: STZ.w $0360\n\n #_0799A4: STZ.b $4D\n\n #_0799A6: LDA.b #$00\n #_0799A8: JSL LinkZap_ResetMosaic\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_ShowingOffItem", + "code": "LinkState_ShowingOffItem:\n #_0799AC: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_ReceiveItem", + "code": "Link_ReceiveItem:\n #_0799AD: PHB\n #_0799AE: PHK\n #_0799AF: PLB\n\n #_0799B0: LDA.b $4D\n #_0799B2: BEQ .not_recoiling\n\n #_0799B4: STZ.b $4D\n #_0799B6: STZ.b $46\n\n #_0799B8: STZ.w $031F\n #_0799BB: STZ.w $0308\n\n.not_recoiling\n #_0799BE: STY.w $02D8\n\n #_0799C1: CPY.b #$3E ; ITEMGET 3E\n #_0799C3: BNE .not_boss_heart\n\n #_0799C5: LDA.b #$2E ; SFX3.2E\n #_0799C7: JSR PlaySFX_Set3\n\n.not_boss_heart\n #_0799CA: LDA.b #$60\n #_0799CC: STA.w $02D9\n\n #_0799CF: LDA.w $02E9\n #_0799D2: BEQ .normal_pose\n\n #_0799D4: CMP.b #$03\n #_0799D6: BNE .not_cool_pose\n\n; ---------------------------------------------------------\n\n.normal_pose\n #_0799D8: STZ.w $0308\n\n #_0799DB: STZ.b $3A\n #_0799DD: STZ.b $3B\n #_0799DF: STZ.b $3C\n\n #_0799E1: STZ.b $5E\n #_0799E3: STZ.b $50\n\n #_0799E5: STZ.w $0301\n #_0799E8: STZ.w $037A\n\n #_0799EB: STZ.w $0300\n\n #_0799EE: LDA.b #$15 ; LINKSTATE 15\n #_0799F0: STA.b $5D\n\n #_0799F2: LDA.b #$01\n #_0799F4: STA.w $02DA\n #_0799F7: STA.w $037B\n\n #_0799FA: CPY.b #$20 ; ITEMGET 20\n #_0799FC: BNE .not_cool_pose\n\n #_0799FE: INC A\n #_0799FF: STA.w $02DA\n\n; ---------------------------------------------------------\n\n.not_cool_pose\n #_079A02: PHX\n\n #_079A03: LDY.b #$04\n #_079A05: LDA.b #$22 ; ANCILLA 22\n #_079A07: JSL AncillaAdd_ItemReceipt\n\n #_079A0B: LDA.w $02D8\n\n #_079A0E: CMP.b #$20 ; ITEMGET 20\n #_079A10: BEQ .skip_hud\n\n #_079A12: CMP.b #$37 ; ITEMGET 37\n #_079A14: BEQ .skip_hud\n\n #_079A16: CMP.b #$38 ; ITEMGET 38\n #_079A18: BEQ .skip_hud\n\n #_079A1A: CMP.b #$39 ; ITEMGET 39\n #_079A1C: BEQ .skip_hud\n\n #_079A1E: JSL RefreshIcon_long\n\n.skip_hud\n #_079A22: JSR Link_CancelDash\n\n #_079A25: PLX\n\n #_079A26: CLC\n\n #_079A27: PLB\n\n #_079A28: RTL", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_079A29", + "code": "UNREACHABLE_079A29:\n #_079A29: SEC\n\n #_079A2A: PLB\n\n #_079A2B: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_TuckIntoBed", + "code": "Link_TuckIntoBed:\n #_079A2C: PHB\n #_079A2D: PHK\n #_079A2E: PLB\n\n #_079A2F: REP #$20\n\n #_079A31: LDA.w #$215A\n #_079A34: STA.b $20\n\n #_079A36: LDA.w #$0940\n #_079A39: STA.b $22\n\n #_079A3B: SEP #$20\n\n #_079A3D: LDA.b #$16 ; LINKSTATE 16\n #_079A3F: STA.b $5D\n\n #_079A41: STZ.w $037C\n #_079A44: STZ.w $037D\n\n #_079A47: LDA.b #$03\n #_079A49: STA.w $0374\n\n #_079A4C: LDA.b #$20 ; ANCILLA 20\n #_079A4E: JSL AncillaAdd_Blanket\n\n #_079A52: PLB\n\n #_079A53: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Sleeping", + "code": "LinkState_Sleeping:\n #_079A5A: LDA.w $037C\n #_079A5D: ASL A\n #_079A5E: TAX\n\n #_079A5F: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_SnoringInBed", + "code": "Link_SnoringInBed:\n #_079A62: LDA.b $1A\n #_079A64: AND.b #$1F\n #_079A66: BNE .exit\n\n #_079A68: LDY.b #$01\n #_079A6A: LDA.b #$21 ; ANCILLA 21\n #_079A6C: JSL AncillaAdd_Snoring\n\n.exit\n #_079A70: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_SittingUpInBed", + "code": "Link_SittingUpInBed:\n #_079A71: LDA.b $11\n #_079A73: BNE .exit\n\n #_079A75: DEC.w $0374\n #_079A78: BPL .exit\n\n #_079A7A: STZ.w $0374\n\n #_079A7D: LDA.b $F4\n #_079A7F: AND.b #$E0\n #_079A81: STA.b $00\n\n #_079A83: LDA.b $F4\n\n #_079A85: ASL A\n #_079A86: ASL A\n #_079A87: ASL A\n #_079A88: ASL A\n\n #_079A89: ORA.b $00\n #_079A8B: ORA.b $F6\n\n #_079A8D: AND.b #$F0\n #_079A8F: BEQ .exit\n\n #_079A91: INC.w $037D\n\n #_079A94: LDA.b #$06\n #_079A96: STA.b $2F\n\n #_079A98: INC.w $037C\n\n #_079A9B: LDA.b #$04\n #_079A9D: STA.w $0374\n\n.exit\n #_079AA0: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_JumpingOutOfBed", + "code": "Link_JumpingOutOfBed:\n #_079AA1: DEC.w $0374\n #_079AA4: BPL .exit\n\n #_079AA6: LDA.b #$04\n #_079AA8: STA.b $27\n\n #_079AAA: LDA.b #$15\n #_079AAC: STA.b $28\n\n #_079AAE: LDA.b #$18\n #_079AB0: STA.b $29\n #_079AB2: STA.w $02C7\n\n #_079AB5: LDA.b #$10\n #_079AB7: STA.b $46\n\n #_079AB9: LDA.b #$02\n #_079ABB: STA.b $4D\n\n #_079ABD: LDA.b #$06 ; LINKSTATE 06\n #_079ABF: STA.b $5D\n\n.exit\n #_079AC1: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleSwordCooldown", + "code": "Link_HandleSwordCooldown:\n #_079AC2: DEC.w $02E3\n #_079AC5: BPL EXIT_079AE5\n\n #_079AC7: STZ.w $02E3\n\n #_079ACA: LDA.w $0301\n #_079ACD: ORA.w $037A\n #_079AD0: BNE EXIT_079AE5\n\n #_079AD2: LDA.b $3C\n #_079AD4: CMP.b #$09\n #_079AD6: BCS .spin_attack\n\n #_079AD8: LDA.w $0372\n #_079ADB: BNE EXIT_079AE5\n\n #_079ADD: JSR Link_CheckForSwordSwing\n #_079AE0: BRA EXIT_079AE5\n\n.spin_attack\n #_079AE2: JSR HandleSwordControls\n\n; ---------------------------------------------------------\n\n#EXIT_079AE5:\n #_079AE5: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleYItem", + "code": "Link_HandleYItem:\n #_079B0E: LDA.b $3C\n #_079B10: BEQ .sword_not_out\n\n #_079B12: CMP.b #$09\n #_079B14: BCC EXIT_079AE5\n\n.sword_not_out\n #_079B16: LDA.w $02E0\n #_079B19: BEQ .not_bunny\n\n #_079B1B: LDA.w $0303\n #_079B1E: CMP.b #$0B\n #_079B20: BEQ .not_bunny\n\n #_079B22: CMP.b #$14\n #_079B24: BEQ .not_bunny\n\n #_079B26: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_vectors", + "code": "Link_APress_vectors:\n #_079B92: dw Link_APress_NothingA\n #_079B94: dw Link_APress_LiftCarryThrow\n #_079B96: dw Link_APress_NothingB\n #_079B98: dw Link_APress_PullObject\n #_079B9A: dw Link_APress_NothingC\n #_079B9C: dw EXIT_07B5BF\n #_079B9E: dw Link_APress_StatueDrag\n #_079BA0: dw Link_APress_RupeePull\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_AbilityChecks", + "code": "Link_AbilityChecks:\n #_079BA2: db $E0 ; 11100000 - Lift, read, talk\n #_079BA3: db $40 ; 01000000 - Read\n #_079BA4: db $04 ; 00000100 - Run\n #_079BA5: db $E0 ; 11100000 - Lift, read, talk\n #_079BA6: db $E0 ; 11100000 - Lift, read, talk\n #_079BA7: db $E0 ; 11100000 - Lift, read, talk\n #_079BA8: db $E0 ; 11100000 - Lift, read, talk | used by statue drag\n #_079BA9: db $E0 ; 11100000 - Lift, read, talk | used by rupee pull\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleAPress", + "code": "Link_HandleAPress:\n #_079BAA: STZ.w $02F4\n\n #_079BAD: LDA.w $0301\n #_079BB0: BNE .exit\n\n #_079BB2: LDA.w $037A\n #_079BB5: AND.b #$1F\n #_079BB7: BNE .exit\n\n #_079BB9: LDA.w $0379\n #_079BBC: BNE .exit\n\n #_079BBE: LDA.b $3C\n #_079BC0: CMP.b #$09\n #_079BC2: BCS .not_using_sword\n\n #_079BC4: LDA.b $3A\n #_079BC6: AND.b #$80\n #_079BC8: BEQ .not_using_sword\n\n.exit\n #_079BCA: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_PerformBasic", + "code": "Link_APress_PerformBasic:\n #_079C5F: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_079C62", + "code": "UNREACHABLE_079C62:\n #_079C62: RTS", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_079C63", + "code": "UNREACHABLE_079C63:\n #_079C63: db $00, $01, $01\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleSwordSFXAndBeam", + "code": "HandleSwordSFXAndBeam:\n #_079C66: LDA.b $67\n #_079C68: AND.b #$F0\n #_079C6A: STA.b $67\n\n #_079C6C: STZ.b $3C\n #_079C6E: STZ.b $79\n\n #_079C70: LDA.l $7EF36C\n #_079C74: SEC\n #_079C75: SBC.b #$04\n #_079C77: CMP.l $7EF36D\n #_079C7B: BCS .no_make_beam\n\n #_079C7D: LDA.l $7EF359\n #_079C81: INC A\n #_079C82: AND.b #$FE\n #_079C84: BEQ .no_make_beam\n\n #_079C86: LDA.l $7EF359\n #_079C8A: CMP.b #$02\n #_079C8C: BCC .no_make_beam\n\n; ---------------------------------------------------------\n\n #_079C8E: LDX.b #$04\n\n.next_slot\n #_079C90: LDA.w $0C4A,X\n #_079C93: CMP.b #$31 ; ANCILLA 31\n #_079C95: BEQ .no_make_beam\n\n #_079C97: DEX\n #_079C98: BPL .next_slot\n\n; ---------------------------------------------------------\n\n #_079C9A: LDY.b #$00\n #_079C9C: JSL AncillaAdd_SwordBeam\n\n.no_make_beam\n #_079CA0: JSL Link_CalculateSFXPan\n #_079CA4: PHA\n\n #_079CA5: LDA.l $7EF359\n #_079CA9: DEC A\n\n #_079CAA: TAX\n #_079CAB: PLA\n\n #_079CAC: CPX.b #$FE\n #_079CAE: BEQ .no_make_swing_sfx\n\n #_079CB0: CPX.b #$FF\n #_079CB2: BEQ .no_make_swing_sfx\n\n #_079CB4: ORA.w SwordSwingSFX,X\n #_079CB7: STA.w $012E\n\n.no_make_swing_sfx\n #_079CBA: LDX.b #$01\n #_079CBC: STX.b $3D\n\n; ---------------------------------------------------------\n\n#EXIT_079CBE:\n #_079CBE: RTS", + "file": "bank_07.asm" + }, + { + "name": "SwordSwingTimers", + "code": "SwordSwingTimers:\n #_079CBF: db $01, $00, $00, $00, $00, $03, $00, $00\n #_079CC7: db $01, $00, $03, $03, $03, $03, $04, $04\n #_079CCF: db $01, $05\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "SwordSwingSFX", + "code": "SwordSwingSFX:\n #_079CD1: db $01 ; SFX2.01\n #_079CD2: db $02 ; SFX2.02\n #_079CD3: db $03 ; SFX2.03\n #_079CD4: db $04 ; SFX2.04\n #_079CD5: db $00 ; SFX2.00\n #_079CD6: db $09 ; SFX2.09\n #_079CD7: db $12 ; SFX2.12\n #_079CD8: db $1B ; SFX2.1B\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForSwordSwing", + "code": "Link_CheckForSwordSwing:\n #_079CD9: LDA.b $3B\n #_079CDB: AND.b #$10\n #_079CDD: BNE EXIT_079CBE\n\n #_079CDF: BIT.b $3A\n #_079CE1: BMI .pressing_b\n\n #_079CE3: BIT.b $F4\n #_079CE5: BPL EXIT_079CBE\n\n #_079CE7: LDX.b $6C\n #_079CE9: BEQ .not_in_door\n\n #_079CEB: JSR TileDetect_SwordSwingDeepInDoor\n\n #_079CEE: LDA.b $0E\n #_079CF0: AND.b #$30\n #_079CF2: EOR.b #$30\n #_079CF4: BEQ EXIT_079CBE\n\n; ---------------------------------------------------------\n\n.not_in_door\n #_079CF6: LDA.b #$80\n #_079CF8: TSB.b $3A\n\n #_079CFA: JSR HandleSwordSFXAndBeam\n\n #_079CFD: LDA.b #$01\n #_079CFF: TSB.b $50\n\n #_079D01: STZ.b $2E\n\n; ---------------------------------------------------------\n\n.pressing_b\n #_079D03: BIT.b $F0\n #_079D05: BMI .holding_b\n\n #_079D07: LDA.b #$01\n #_079D09: TSB.b $3A\n\n.holding_b\n #_079D0B: JSR HaltLinkWhenUsingItems\n\n #_079D0E: LDA.b $67\n #_079D10: AND.b #$F0\n #_079D12: STA.b $67\n\n #_079D14: DEC.b $3D\n #_079D16: BPL .finish_up\n\n; ---------------------------------------------------------\n\n #_079D18: INC.b $3C\n\n #_079D1A: LDA.b $3C\n #_079D1C: CMP.b #$09\n #_079D1E: BCS HandleSwordControls\n\n #_079D20: TAX\n\n #_079D21: LDA.w SwordSwingTimers,X\n #_079D24: STA.b $3D\n\n #_079D26: CPX.b #$05\n #_079D28: BNE .no_swing_sparkle\n\n #_079D2A: LDA.l $7EF359\n #_079D2E: BEQ .weak_or_no_sword\n\n #_079D30: CMP.b #$01\n #_079D32: BEQ .weak_or_no_sword\n\n #_079D34: CMP.b #$FF\n #_079D36: BEQ .weak_or_no_sword\n\n #_079D38: LDY.b #$04\n #_079D3A: LDA.b #$26 ; ANCILLA 26\n #_079D3C: JSL AncillaAdd_SwordSwingSparkle\n\n; ---------------------------------------------------------\n\n.weak_or_no_sword\n #_079D40: LDY.b #$01\n\n #_079D42: LDA.l $7EF359\n #_079D46: BEQ .finish_up\n\n #_079D48: CMP.b #$FF\n #_079D4A: BEQ .finish_up\n\n #_079D4C: CMP.b #$01\n #_079D4E: BEQ .fighter_swsord\n\n #_079D50: LDY.b #$06\n\n.fighter_swsord\n #_079D52: JSR TileDetect_MainHandler\n\n #_079D55: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.no_swing_sparkle\n #_079D57: CPX.b #$04\n #_079D59: BCC .finish_up\n\n #_079D5B: LDA.b $3A\n #_079D5D: AND.b #$01\n #_079D5F: BEQ .finish_up\n\n #_079D61: BIT.b $F0\n #_079D63: BPL .finish_up\n\n #_079D65: LDA.b $3A\n #_079D67: AND.b #$FE\n #_079D69: STA.b $3A\n\n #_079D6B: BRL HandleSwordSFXAndBeam\n\n; ---------------------------------------------------------\n\n.finish_up\n #_079D6E: JSR CalculateSwordHitbox\n\n #_079D71: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleSwordControls", + "code": "HandleSwordControls:\n #_079D72: BIT.b $F0\n #_079D74: BMI .holding_b\n\n #_079D76: LDA.b $79\n #_079D78: CMP.b #$30\n #_079D7A: BCC Link_ResetSwordAndItemUsage\n\n #_079D7C: JSR Link_ResetSwordAndItemUsage\n\n #_079D7F: STZ.b $79\n\n #_079D81: BRL Link_ActivateSpinAttack\n\n; =========================================================\n\n#Link_ResetSwordAndItemUsage:\n #_079D84: STZ.b $5E\n\n #_079D86: LDA.b $48\n #_079D88: AND.b #$F6\n #_079D8A: STA.b $48\n\n #_079D8C: STZ.b $3D\n #_079D8E: STZ.b $3C\n\n #_079D90: LDA.b $3A\n #_079D92: AND.b #$7E\n #_079D94: STA.b $3A\n\n #_079D96: LDA.b $50\n #_079D98: AND.b #$FE\n #_079D9A: STA.b $50\n\n #_079D9C: BRL EXIT_079E62\n\n; ---------------------------------------------------------\n\n.holding_b\n #_079D9F: BIT.b $48\n #_079DA1: BMI .pushing_statue\n\n #_079DA3: LDA.b $48\n #_079DA5: AND.b #$09\n #_079DA7: BNE .pushing_possibly_against_a_door\n\n.pushing_statue\n #_079DA9: LDA.b $47\n #_079DAB: BEQ .no_tink\n\n #_079DAD: CMP.b #$01\n #_079DAF: BEQ Link_ResetSwordAndItemUsage\n\n.pushing_possibly_against_a_door\n #_079DB1: LDA.b $3C\n #_079DB3: CMP.b #$09\n #_079DB5: BNE .not_in_strafe\n\n #_079DB7: LDX.b #$0A\n #_079DB9: STX.b $3C\n\n #_079DBB: LDA.w SwordSwingTimers,X\n #_079DBE: STA.b $3D\n\n.not_in_strafe\n #_079DC0: DEC.b $3D\n #_079DC2: BPL .timer_running\n\n #_079DC4: LDA.b $3C\n #_079DC6: INC A\n #_079DC7: CMP.b #$0D\n #_079DC9: BNE .dont_tap_wall\n\n #_079DCB: LDA.l $7EF359\n #_079DCF: INC A\n #_079DD0: AND.b #$FE\n #_079DD2: BEQ .reset_poke_index\n\n #_079DD4: LDA.b $48\n #_079DD6: AND.b #$09\n #_079DD8: BEQ .reset_poke_index\n\n #_079DDA: LDY.b #$01\n #_079DDC: LDA.b #$1B ; ANCILLA 1B\n #_079DDE: JSL AncillaAdd_WallTapSpark\n\n #_079DE2: LDA.b $48\n #_079DE4: AND.b #$08\n #_079DE6: BNE .not_poking_door\n\n #_079DE8: LDA.b #$05 ; SFX2.05\n #_079DEA: JSR PlaySFX_Set2\n\n #_079DED: BRA .detect_poked_tile\n\n.not_poking_door\n #_079DEF: LDA.b #$06 ; SFX2.06\n #_079DF1: JSR PlaySFX_Set2\n\n.detect_poked_tile\n #_079DF4: LDY.b #$01\n #_079DF6: JSR TileDetect_MainHandler\n\n.reset_poke_index\n #_079DF9: LDA.b #$0A\n\n.dont_tap_wall\n #_079DFB: STA.b $3C\n\n #_079DFD: TAX\n\n #_079DFE: LDA.w SwordSwingTimers,X\n #_079E01: STA.b $3D\n\n.timer_running\n #_079E03: BRA .do_hitbox\n\n; ---------------------------------------------------------\n\n.no_tink\n #_079E05: LDA.b #$09\n #_079E07: STA.b $3C\n\n #_079E09: LDA.b #$01\n #_079E0B: TSB.b $50\n\n #_079E0D: STZ.b $3D\n\n #_079E0F: LDA.b $5E\n #_079E11: CMP.b #$04\n #_079E13: BEQ .do_hitbox\n\n #_079E15: CMP.b #$10\n #_079E17: BEQ .do_hitbox\n\n #_079E19: LDA.b #$0C\n #_079E1B: STA.b $5E\n\n #_079E1D: LDA.l $7EF359\n #_079E21: INC A\n #_079E22: AND.b #$FE\n #_079E24: BEQ EXIT_079E62\n\n; ---------------------------------------------------------\n\n #_079E26: LDX.b #$04\n\n.look_for_byrna_spark\n #_079E28: LDA.w $0C4A,X\n #_079E2B: CMP.b #$30 ; ANCILLA 30\n #_079E2D: BEQ EXIT_079E62\n\n #_079E2F: CMP.b #$31 ; ANCILLA 31\n #_079E31: BEQ EXIT_079E62\n\n #_079E33: DEX\n #_079E34: BPL .look_for_byrna_spark\n\n; ---------------------------------------------------------\n\n #_079E36: LDA.b $79\n #_079E38: CMP.b #$06\n #_079E3A: BCC .dont_add_charge_sparkle\n\n #_079E3C: LDA.b $1A\n #_079E3E: AND.b #$03\n #_079E40: BNE .dont_add_charge_sparkle\n\n #_079E42: JSL AncillaSpawn_SwordChargeSparkle\n\n.dont_add_charge_sparkle\n #_079E46: LDA.b $79\n #_079E48: CMP.b #$40\n #_079E4A: BCS EXIT_079E62\n\n #_079E4C: INC.b $79\n\n #_079E4E: LDA.b $79\n #_079E50: CMP.b #$30\n #_079E52: BNE EXIT_079E62\n\n #_079E54: LDA.b #$37 ; SFX2.37\n #_079E56: JSR PlaySFX_Set2\n\n #_079E59: JSL AncillaAdd_ChargedSpinAttackSparkle\n\n #_079E5D: BRA EXIT_079E62\n\n.do_hitbox\n #_079E5F: JSR CalculateSwordHitbox\n\n; ---------------------------------------------------------\n\n#EXIT_079E62:\n #_079E62: RTS", + "file": "bank_07.asm" + }, + { + "name": "CalculateSwordHitbox", + "code": "CalculateSwordHitbox:\n #_079E63: LDA.l $7EF359\n #_079E67: BEQ EXIT_079E62\n\n #_079E69: CMP.b #$FF\n #_079E6B: BEQ EXIT_079E62\n\n #_079E6D: CMP.b #$02\n #_079E6F: BCS .not_fighter_sword\n\n; =========================================================\n\n.set_sword_hitbox_offsets\n #_079E71: LDY.b #$27\n\n #_079E73: LDA.b $3C\n #_079E75: STA.b $02\n #_079E77: STZ.b $03\n\n #_079E79: CMP.b #$09\n #_079E7B: BEQ EXIT_079E62\n #_079E7D: BCC .slashing\n\n #_079E7F: LDA.b $02\n #_079E81: SEC\n #_079E82: SBC.b #$0A\n #_079E84: STA.b $02\n\n #_079E86: LDY.b #$03\n\n; ---------------------------------------------------------\n\n.slashing\n #_079E88: REP #$30\n\n #_079E8A: LDA.b $2F\n #_079E8C: AND.w #$00FF\n #_079E8F: TAX\n\n #_079E90: LDA.l LinkOAM_AnimationDirectionalStepIndexOffset,X\n #_079E94: STA.b $04\n\n #_079E96: TYA\n #_079E97: AND.w #$00FF\n #_079E9A: ASL A\n #_079E9B: CLC\n #_079E9C: ADC.b $04\n #_079E9E: TAX\n\n #_079E9F: LDA.l LinkOAM_AnimationStepDataOffsets,X\n #_079EA3: CLC\n #_079EA4: ADC.b $02\n #_079EA6: TAX\n\n #_079EA7: SEP #$20\n\n #_079EA9: LDA.l AttackHitboxOffset_Y,X\n #_079EAD: STA.b $44\n\n #_079EAF: LDA.l AttackHitboxOffset_X,X\n #_079EB3: STA.b $45\n\n #_079EB5: SEP #$10\n\n #_079EB7: RTS", + "file": "bank_07.asm" + }, + { + "name": "RodAndCaneAnimationTimer", + "code": "RodAndCaneAnimationTimer:\n #_079EEC: db $03, $03, $05\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Rod", + "code": "LinkItem_Rod:\n #_079EEF: BIT.b $3A\n #_079EF1: BVS .holding_y\n\n #_079EF3: LDA.b $6C\n #_079EF5: BNE EXIT_079EE8\n\n #_079EF7: JSR CheckYButtonPress\n #_079EFA: BCC EXIT_079EE8\n\n #_079EFC: LDX.b #$00\n #_079EFE: JSR LinkCheckMagicCost\n #_079F01: BCC .lacking_magic\n\n #_079F03: LDA.w $020B\n #_079F06: BNE .lacking_magic\n\n #_079F08: LDA.b #$01\n #_079F0A: STA.w $0350\n\n #_079F0D: JSR RodItem_CreateShot\n\n #_079F10: LDA.w RodAndCaneAnimationTimer\n #_079F13: STA.b $3D\n\n #_079F15: STZ.b $2E\n\n #_079F17: STZ.w $0300\n #_079F1A: STZ.w $0301\n\n #_079F1D: LDA.b #$01\n #_079F1F: TSB.w $0301\n\n; ---------------------------------------------------------\n\n.holding_y\n #_079F22: JSR HaltLinkWhenUsingItems\n\n #_079F25: LDA.b $67\n #_079F27: AND.b #$F0\n #_079F29: STA.b $67\n\n #_079F2B: DEC.b $3D\n #_079F2D: BPL EXIT_079F58\n\n #_079F2F: LDA.w $0300\n #_079F32: INC A\n #_079F33: STA.w $0300\n\n #_079F36: TAX\n\n #_079F37: LDA.w RodAndCaneAnimationTimer,X\n #_079F3A: STA.b $3D\n\n #_079F3C: CPX.b #$03\n #_079F3E: BNE EXIT_079F58\n\n #_079F40: STZ.b $5E\n #_079F42: STZ.w $0300\n #_079F45: STZ.b $3D\n #_079F47: STZ.w $0350\n\n #_079F4A: LDA.w $0301\n #_079F4D: AND.b #$FE\n #_079F4F: STA.w $0301\n\n; ---------------------------------------------------------\n\n.lacking_magic\n #_079F52: LDA.b $3A\n #_079F54: AND.b #$BF\n #_079F56: STA.b $3A\n\n; ---------------------------------------------------------\n\n#EXIT_079F58:\n #_079F58: RTS", + "file": "bank_07.asm" + }, + { + "name": "RodItem_CreateShot", + "code": "RodItem_CreateShot:\n #_079F5D: LDA.w $0307\n #_079F60: DEC A\n #_079F61: ASL A\n #_079F62: TAX\n\n #_079F63: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RodItem_CreateIceShot", + "code": "RodItem_CreateIceShot:\n #_079F66: LDA.b #$0B ; ANCILLA 0B\n #_079F68: LDY.b #$01\n #_079F6A: JSL AncillaAdd_IceRodShot\n\n #_079F6E: RTS", + "file": "bank_07.asm" + }, + { + "name": "RodItem_CreateFireShot", + "code": "RodItem_CreateFireShot:\n #_079F6F: LDA.b #$02 ; ANCILLA 02\n #_079F71: LDY.b #$01\n #_079F73: JSL AncillaAdd_FireRodShot\n\n #_079F77: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Hammer", + "code": "LinkItem_Hammer:\n #_079F7B: LDA.w $0301\n #_079F7E: AND.b #$10\n #_079F80: BNE .bounce_to_exit\n\n #_079F82: BIT.b $3A\n #_079F84: BVS .holding_y\n\n #_079F86: LDA.b $6C\n #_079F88: BNE .bounce_to_exit\n\n #_079F8A: JSR CheckYButtonPress_unfiltered\n #_079F8D: BCS .pressed_y\n\n.bounce_to_exit\n #_079F8F: BRL EXIT_079F58\n\n; ---------------------------------------------------------\n\n.pressed_y\n #_079F92: LDA.w LinkItem_Hammer_timers\n #_079F95: STA.b $3D\n\n #_079F97: LDA.b #$01\n #_079F99: TSB.b $50\n\n #_079F9B: STZ.b $2E\n\n #_079F9D: LDA.w $0301\n #_079FA0: AND.b #$00\n #_079FA2: ORA.b #$02\n #_079FA4: STA.w $0301\n\n #_079FA7: STZ.w $0300\n\n.holding_y\n #_079FAA: JSR HaltLinkWhenUsingItems\n\n #_079FAD: LDA.b $67\n #_079FAF: AND.b #$F0\n #_079FB1: STA.b $67\n\n #_079FB3: DEC.b $3D\n #_079FB5: BPL EXIT_07A002\n\n #_079FB7: LDA.w $0300\n #_079FBA: INC A\n #_079FBB: STA.w $0300\n\n #_079FBE: TAX\n\n #_079FBF: LDA.w LinkItem_Hammer_timers,X\n #_079FC2: STA.b $3D\n\n #_079FC4: CPX.b #$01\n #_079FC6: BNE .no_impact_yet\n\n; ---------------------------------------------------------\n\n #_079FC8: PHX\n\n #_079FC9: LDY.b #$03\n #_079FCB: JSR TileDetect_MainHandler\n\n #_079FCE: LDY.b #$00\n #_079FD0: LDA.b #$16 ; ANCILLA 16\n #_079FD2: JSL Ancilla_AddHitStars\n\n #_079FD6: PLX\n\n #_079FD7: LDA.w $012E\n #_079FDA: BNE .no_impact_yet\n\n #_079FDC: LDA.b #$10 ; SFX2.10\n #_079FDE: JSR PlaySFX_Set2\n\n #_079FE1: JSL SpawnHammerWaterSplash\n\n; ---------------------------------------------------------\n\n.no_impact_yet\n #_079FE5: CPX.b #$03\n #_079FE7: BNE EXIT_07A002\n\n #_079FE9: STZ.w $0300\n #_079FEC: STZ.b $3D\n\n #_079FEE: LDA.b $3A\n #_079FF0: AND.b #$BF\n #_079FF2: STA.b $3A\n\n #_079FF4: LDA.b $50\n #_079FF6: AND.b #$FE\n #_079FF8: STA.b $50\n\n #_079FFA: LDA.w $0301\n #_079FFD: AND.b #$FD\n #_079FFF: STA.w $0301\n\n; ---------------------------------------------------------\n\n#EXIT_07A002:\n #_07A002: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Bow", + "code": "LinkItem_Bow:\n #_07A006: BIT.b $3A\n #_07A008: BVS .holding_y\n\n #_07A00A: LDA.b $6C\n #_07A00C: BNE EXIT_07A002\n\n #_07A00E: JSR CheckYButtonPress\n #_07A011: BCC EXIT_07A002\n\n #_07A013: LDA.b #$01\n #_07A015: TSB.b $50\n\n #_07A017: LDA.w LinkItem_Bow_timer\n #_07A01A: STA.b $3D\n\n #_07A01C: STZ.b $2E\n #_07A01E: STZ.w $0300\n\n #_07A021: LDA.w $0301\n #_07A024: AND.b #$00\n #_07A026: ORA.b #$10\n #_07A028: STA.w $0301\n\n; ---------------------------------------------------------\n\n.holding_y\n #_07A02B: JSR HaltLinkWhenUsingItems\n\n #_07A02E: LDA.b $67\n #_07A030: AND.b #$F0\n #_07A032: STA.b $67\n\n #_07A034: DEC.b $3D\n #_07A036: BPL EXIT_07A002\n\n; ---------------------------------------------------------\n\n #_07A038: LDA.w $0300\n #_07A03B: INC A\n #_07A03C: STA.w $0300\n\n #_07A03F: TAX\n\n #_07A040: LDA.w LinkItem_Bow_timer,X\n #_07A043: STA.b $3D\n\n #_07A045: CPX.b #$03\n #_07A047: BNE EXIT_07A0BA\n\n #_07A049: LDA.b $20\n #_07A04B: STA.b $72\n\n #_07A04D: LDA.b $21\n #_07A04F: STA.b $73\n\n #_07A051: LDA.b $22\n #_07A053: STA.b $74\n\n #_07A055: LDA.b $23\n #_07A057: STA.b $75\n\n #_07A059: LDX.b $2F\n\n #_07A05B: LDY.b #$02\n #_07A05D: LDA.b #$09 ; ANCILLA 09\n #_07A05F: JSL AncillaAdd_Arrow\n #_07A063: BCC .arrow_handled\n\n; ---------------------------------------------------------\n\n #_07A065: LDA.w $0B99\n #_07A068: BEQ .not_using_credits\n\n #_07A06A: DEC.w $0B99\n\n #_07A06D: LDA.l $7EF377\n #_07A071: INC A\n #_07A072: INC A\n #_07A073: STA.l $7EF377\n\n.not_using_credits\n #_07A077: LDA.w $0B9A\n #_07A07A: BNE .delete_arrow\n\n #_07A07C: LDA.l $7EF377\n #_07A080: BEQ .delete_arrow\n\n #_07A082: DEC A\n #_07A083: STA.l $7EF377\n #_07A087: BNE .arrow_handled\n\n #_07A089: JSL RefreshIcon_long\n\n #_07A08D: BRA .arrow_handled\n\n; ---------------------------------------------------------\n\n.delete_arrow\n #_07A08F: STZ.w $0C4A,X\n\n #_07A092: LDA.b #$3C ; SFX2.3C\n #_07A094: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.arrow_handled\n #_07A097: STZ.w $0300\n #_07A09A: STZ.b $3D\n\n #_07A09C: LDA.b $3A\n #_07A09E: AND.b #$BF\n #_07A0A0: STA.b $3A\n\n #_07A0A2: LDA.b $50\n #_07A0A4: AND.b #$FE\n #_07A0A6: STA.b $50\n\n #_07A0A8: LDA.w $0301\n #_07A0AB: AND.b #$EF\n #_07A0AD: STA.w $0301\n\n #_07A0B0: LDA.b $3C\n #_07A0B2: CMP.b #$09\n #_07A0B4: BCC EXIT_07A0BA\n\n #_07A0B6: LDA.b #$09\n #_07A0B8: STA.b $3C\n\n; ---------------------------------------------------------\n\n#EXIT_07A0BA:\n #_07A0BA: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Boomerang", + "code": "LinkItem_Boomerang:\n #_07A0BB: BIT.b $3A\n #_07A0BD: BVS .holding_y\n\n #_07A0BF: LDA.b $6C\n #_07A0C1: BNE EXIT_07A0BA\n\n #_07A0C3: JSR CheckYButtonPress\n #_07A0C6: BCC .exit\n\n #_07A0C8: LDA.w $035F\n #_07A0CB: BNE .exit\n\n #_07A0CD: STZ.b $2E\n\n #_07A0CF: LDA.w $0301\n #_07A0D2: AND.b #$00\n #_07A0D4: ORA.b #$80\n #_07A0D6: STA.w $0301\n\n #_07A0D9: STZ.w $0300\n\n #_07A0DC: LDA.b #$07\n #_07A0DE: STA.b $3D\n\n #_07A0E0: LDY.b #$00\n #_07A0E2: LDA.b #$05 ; ANCILLA 05\n #_07A0E4: JSL AncillaAdd_Boomerang\n\n #_07A0E8: LDA.b $3C\n #_07A0EA: CMP.b #$09\n #_07A0EC: BCS Link_ResetBoomerangYStuff\n\n #_07A0EE: LDA.b $72\n #_07A0F0: BNE .holding_y\n\n #_07A0F2: LDA.b $F0\n #_07A0F4: AND.b #$0F\n #_07A0F6: STA.b $26\n\n #_07A0F8: BRA .continue\n\n; ---------------------------------------------------------\n\n.holding_y\n #_07A0FA: LDA.b #$01\n #_07A0FC: TSB.b $50\n\n.continue\n #_07A0FE: LDA.w $0301\n #_07A101: BEQ Link_ResetBoomerangYStuff\n\n #_07A103: JSR HaltLinkWhenUsingItems\n\n #_07A106: LDA.b $67\n #_07A108: AND.b #$F0\n #_07A10A: STA.b $67\n\n #_07A10C: DEC.b $3D\n #_07A10E: BPL .exit\n\n #_07A110: LDA.b #$05\n #_07A112: STA.b $3D\n\n #_07A114: LDA.w $0300\n #_07A117: INC A\n #_07A118: STA.w $0300\n\n #_07A11B: CMP.b #$02\n #_07A11D: BNE .exit\n\n; =========================================================\n\n#Link_ResetBoomerangYStuff:\n #_07A11F: STZ.w $0301\n #_07A122: STZ.w $0300\n\n #_07A125: STZ.b $3D\n\n #_07A127: LDA.b $3A\n #_07A129: AND.b #$BF\n #_07A12B: STA.b $3A\n\n #_07A12D: AND.b #$80\n #_07A12F: BNE .exit\n\n #_07A131: LDA.b $50\n #_07A133: AND.b #$FE\n #_07A135: STA.b $50\n\n.exit\n #_07A137: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Bombs", + "code": "LinkItem_Bombs:\n #_07A138: LDA.b $6C\n #_07A13A: BNE EXIT_07A15A\n\n #_07A13C: LDA.l $7EF3CC\n #_07A140: CMP.b #$0D ; FOLLOWER 0D\n #_07A142: BEQ EXIT_07A15A\n\n #_07A144: JSR CheckYButtonPress\n #_07A147: BCC EXIT_07A15A\n\n #_07A149: LDA.b $3A\n #_07A14B: AND.b #$BF\n #_07A14D: STA.b $3A\n\n #_07A14F: LDY.b #$01\n #_07A151: LDA.b #$07 ; ANCILLA 07\n #_07A153: JSL AncillaAdd_Bomb\n\n #_07A157: STZ.w $0301\n\n; ---------------------------------------------------------\n\n#EXIT_07A15A:\n #_07A15A: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Bottle", + "code": "LinkItem_Bottle:\n #_07A15B: JSR CheckYButtonPress\n #_07A15E: BCC EXIT_07A15A\n\n #_07A160: LDA.b $3A\n #_07A162: AND.b #$BF\n #_07A164: STA.b $3A\n\n #_07A166: LDA.l $7EF34F\n #_07A16A: DEC A\n #_07A16B: TAX\n\n #_07A16C: LDA.l $7EF35C,X\n #_07A170: BEQ EXIT_07A15A\n\n #_07A172: CMP.b #$03\n #_07A174: BCC LinkItem_UselessBottle\n\n #_07A176: CMP.b #$03\n #_07A178: BEQ LinkItem_RedPotion\n\n #_07A17A: CMP.b #$04\n #_07A17C: BEQ LinkItem_GreenPotion\n\n #_07A17E: CMP.b #$05\n #_07A180: BEQ LinkItem_BluePotion\n\n #_07A182: CMP.b #$06\n #_07A184: BEQ .fairy\n\n #_07A186: BRL LinkItem_BeeBottle\n\n.fairy\n #_07A189: BRL LinkItem_FairyBottle\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_RedPotion", + "code": "LinkItem_RedPotion:\n #_07A18C: LDA.l $7EF36C\n #_07A190: CMP.l $7EF36D\n #_07A194: BNE .can_drink\n\n; =========================================================\n\n#LinkItem_UselessBottle:\n #_07A196: BRL LinkGoBeep\n\n; =========================================================\n\n.can_drink\n #_07A199: LDA.b #$02\n #_07A19B: STA.l $7EF35C,X\n\n #_07A19F: STZ.w $0301\n\n #_07A1A2: LDA.b #$04\n #_07A1A4: STA.b $11\n\n #_07A1A6: LDA.b $10\n #_07A1A8: STA.w $010C\n\n #_07A1AB: LDA.b #$0E\n #_07A1AD: STA.b $10\n\n #_07A1AF: LDA.b #$07\n #_07A1B1: STA.w $0208\n\n #_07A1B4: JSL RebuildHUD_long\n\n #_07A1B8: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_GreenPotion", + "code": "LinkItem_GreenPotion:\n #_07A1B9: LDA.l $7EF36E\n #_07A1BD: CMP.b #$80\n #_07A1BF: BNE .can_drink\n\n #_07A1C1: BRL LinkGoBeep\n\n.can_drink\n #_07A1C4: LDA.b #$02\n #_07A1C6: STA.l $7EF35C,X\n\n #_07A1CA: STZ.w $0301\n\n #_07A1CD: LDA.b #$08\n #_07A1CF: STA.b $11\n\n #_07A1D1: LDA.b $10\n #_07A1D3: STA.w $010C\n\n #_07A1D6: LDA.b #$0E\n #_07A1D8: STA.b $10\n\n #_07A1DA: LDA.b #$07\n #_07A1DC: STA.w $0208\n\n #_07A1DF: JSL RebuildHUD_long\n\n #_07A1E3: BRA EXIT_07A239\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_BluePotion", + "code": "LinkItem_BluePotion:\n #_07A1E5: LDA.l $7EF36C\n #_07A1E9: CMP.l $7EF36D\n #_07A1ED: BNE .can_drink\n\n #_07A1EF: LDA.l $7EF36E\n #_07A1F3: CMP.b #$80\n #_07A1F5: BNE .can_drink\n\n #_07A1F7: BRL LinkGoBeep\n\n.can_drink\n #_07A1FA: LDA.b #$02\n #_07A1FC: STA.l $7EF35C,X\n\n #_07A200: STZ.w $0301\n\n #_07A203: LDA.b #$09\n #_07A205: STA.b $11\n\n #_07A207: LDA.b $10\n #_07A209: STA.w $010C\n\n #_07A20C: LDA.b #$0E\n #_07A20E: STA.b $10\n\n #_07A210: LDA.b #$07\n #_07A212: STA.w $0208\n\n #_07A215: JSL RebuildHUD_long\n\n #_07A219: BRA EXIT_07A239\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_FairyBottle", + "code": "LinkItem_FairyBottle:\n #_07A21B: STZ.w $0301\n\n #_07A21E: JSL ReleaseFairy\n #_07A222: BPL .released\n\n #_07A224: BRL LinkGoBeep\n\n.released\n #_07A227: LDA.b #$02\n #_07A229: STA.l $7EF35C,X\n\n #_07A22D: JSL RebuildHUD_long\n\n #_07A231: BRA EXIT_07A239\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_BeeBottle", + "code": "LinkItem_BeeBottle:\n #_07A233: STZ.w $0301\n\n #_07A236: JSL ReleaseBeeFromBottle\n #_07A23A: BPL .released\n\n #_07A23C: BRL LinkGoBeep\n\n.released\n #_07A23F: LDA.b #$02\n #_07A241: STA.l $7EF35C,X\n\n #_07A245: JSL RebuildHUD_long\n\n; ---------------------------------------------------------\n\n#EXIT_07A239:\n #_07A249: RTS", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07A24A", + "code": "UNREACHABLE_07A24A:\n #_07A24A: CLC\n #_07A24B: BPL LinkItem_Lamp\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Lamp", + "code": "LinkItem_Lamp:\n #_07A24D: LDA.b $6C\n #_07A24F: BNE EXIT_07A288\n\n #_07A251: JSR CheckYButtonPress\n #_07A254: BCC EXIT_07A288\n\n #_07A256: LDA.l $7EF34A\n #_07A25A: BEQ .no_magic\n\n #_07A25C: LDX.b #$06\n #_07A25E: JSR LinkCheckMagicCost\n #_07A261: BCC .no_magic\n\n #_07A263: LDY.b #$00\n #_07A265: LDA.b #$1A ; ANCILLA 1A\n #_07A267: JSL AncillaAdd_MagicPowder\n\n #_07A26B: JSL Underworld_LightTorch\n\n #_07A26F: LDY.b #$02\n #_07A271: LDA.b #$2F ; ANCILLA 2F\n #_07A273: JSL AncillaAdd_LampFlame\n\n.no_magic\n #_07A277: STZ.w $0301\n #_07A27A: STZ.b $3A\n #_07A27C: STZ.b $3C\n #_07A27E: STZ.b $50\n\n #_07A280: LDA.b $3C\n #_07A282: CMP.b #$09\n #_07A284: BNE EXIT_07A288\n\n #_07A286: STZ.b $5E\n\n; ---------------------------------------------------------\n\n#EXIT_07A288:\n #_07A288: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Powder", + "code": "LinkItem_Powder:\n #_07A293: BIT.b $3A\n #_07A295: BVS .in_use\n\n #_07A297: LDA.b $6C\n #_07A299: BNE EXIT_07A288\n\n #_07A29B: JSR CheckYButtonPress\n #_07A29E: BCC EXIT_07A312\n\n #_07A2A0: LDA.l $7EF344\n #_07A2A4: CMP.b #$02\n #_07A2A6: BEQ .is_powder\n\n #_07A2A8: LDA.b #$3C ; SFX2.3C\n #_07A2AA: JSR PlaySFX_Set2\n\n #_07A2AD: BRA .no_tile_detect\n\n; ---------------------------------------------------------\n\n.is_powder\n #_07A2AF: LDX.b #$02\n #_07A2B1: JSR LinkCheckMagicCost\n #_07A2B4: BCC .no_tile_detect\n\n #_07A2B6: LDA.w LinkItem_Powder_timer\n #_07A2B9: STA.b $3D\n\n #_07A2BB: STZ.w $0300\n #_07A2BE: STZ.b $2E\n\n #_07A2C0: LDA.b $67\n #_07A2C2: AND.b #$F0\n #_07A2C4: STA.b $67\n\n #_07A2C6: STZ.w $0301\n\n #_07A2C9: LDA.b #$40\n #_07A2CB: TSB.w $0301\n\n; ---------------------------------------------------------\n\n.in_use\n #_07A2CE: STZ.b $30\n #_07A2D0: STZ.b $31\n\n #_07A2D2: STZ.b $67\n\n #_07A2D4: STZ.b $2A\n #_07A2D6: STZ.b $2B\n\n #_07A2D8: STZ.b $6B\n\n #_07A2DA: DEC.b $3D\n #_07A2DC: BPL EXIT_07A312\n\n #_07A2DE: LDA.w $0300\n #_07A2E1: INC A\n #_07A2E2: STA.w $0300\n\n #_07A2E5: TAX\n #_07A2E6: LDA.w LinkItem_Powder_timer,X\n #_07A2E9: STA.b $3D\n\n #_07A2EB: CPX.b #$04\n #_07A2ED: BNE .dont_make_powder\n\n #_07A2EF: LDY.b #$00\n #_07A2F1: LDA.b #$1A ; ANCILLA 1A\n #_07A2F3: JSL AncillaAdd_MagicPowder\n\n.dont_make_powder\n #_07A2F7: CPX.b #$09\n #_07A2F9: BNE EXIT_07A312\n\n #_07A2FB: LDA.b $11\n #_07A2FD: BNE .no_tile_detect\n\n #_07A2FF: LDY.b #$01\n #_07A301: JSR TileDetect_MainHandler\n #_07A304: BRA .no_tile_detect\n\n.no_tile_detect\n #_07A306: STZ.w $0301\n #_07A309: STZ.w $0300\n\n #_07A30C: LDA.b $3A\n #_07A30E: AND.b #$BF\n #_07A310: STA.b $3A\n\n; ---------------------------------------------------------\n\n#EXIT_07A312:\n #_07A312: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_ShovelAndFlute", + "code": "LinkItem_ShovelAndFlute:\n #_07A313: LDA.l $7EF34C\n #_07A317: BEQ EXIT_07A312\n\n #_07A319: CMP.b #$01\n #_07A31B: BEQ LinkItem_Shovel\n\n #_07A31D: BRL LinkItem_Flute\n\n; =========================================================\n\npool LinkItem_Shovel\n\n.timer\n #_07A320: db 7, 18, 16\n #_07A323: db 7, 18, 16\n\n.pose\n #_07A326: db $00, $01, $02\n #_07A329: db $00, $01, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Shovel", + "code": "LinkItem_Shovel:\n #_07A32C: BIT.b $3A\n #_07A32E: BVS .in_use\n\n #_07A330: LDA.b $6C\n #_07A332: BNE EXIT_07A312\n\n #_07A334: JSR CheckYButtonPress\n #_07A337: BCC EXIT_07A312\n\n #_07A339: LDA.w .timer\n #_07A33C: STA.b $3D\n\n #_07A33E: STZ.w $030D\n #_07A341: STZ.w $0300\n\n #_07A344: LDA.b #$01\n #_07A346: STA.w $037A\n\n #_07A349: LDA.b #$01\n #_07A34B: TSB.b $50\n\n #_07A34D: STZ.b $2E\n\n; =========================================================\n\n.in_use\n #_07A34F: JSR HaltLinkWhenUsingItems\n\n #_07A352: LDA.b $67\n #_07A354: AND.b #$F0\n #_07A356: STA.b $67\n\n #_07A358: DEC.b $3D\n #_07A35A: BMI .continue\n\n #_07A35C: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Flute", + "code": "LinkItem_Flute:\n #_07A3DB: BIT.b $3A\n #_07A3DD: BVC .can_use\n\n #_07A3DF: DEC.w $03F0\n\n #_07A3E2: LDA.w $03F0\n #_07A3E5: BNE EXIT_07A3DA\n\n #_07A3E7: LDA.b $3A\n #_07A3E9: AND.b #$BF\n #_07A3EB: STA.b $3A\n\n; ---------------------------------------------------------\n\n.can_use\n #_07A3ED: JSR CheckYButtonPress\n #_07A3F0: BCC EXIT_07A3DA\n\n #_07A3F2: LDA.b #$80\n #_07A3F4: STA.w $03F0\n\n #_07A3F7: LDA.b #$13 ; SFX2.13\n #_07A3F9: JSR PlaySFX_Set2\n\n #_07A3FC: LDA.b $1B\n #_07A3FE: BNE EXIT_07A3DA\n\n #_07A400: LDA.b $8A\n #_07A402: AND.b #$40\n #_07A404: BNE EXIT_07A3DA\n\n #_07A406: LDA.b $10\n #_07A408: CMP.b #$0B\n #_07A40A: BEQ EXIT_07A3DA\n\n; ---------------------------------------------------------\n\n #_07A40C: LDX.b #$04\n\n.look_for_duck\n #_07A40E: LDA.w $0C4A,X\n #_07A411: CMP.b #$27 ; ANCILLA 27\n #_07A413: BEQ EXIT_07A3DA\n\n #_07A415: DEX\n #_07A416: BPL .look_for_duck\n\n #_07A418: LDA.l $7EF34C\n #_07A41C: CMP.b #$02\n #_07A41E: BNE .have_activated_flute\n\n; ---------------------------------------------------------\n\n #_07A420: REP #$20\n\n #_07A422: LDA.b $8A\n #_07A424: CMP.w #$0018 ; OW 18\n #_07A427: BNE .dont_blow_up_weathervane\n\n #_07A429: LDA.b $20\n #_07A42B: CMP.w #$0760\n #_07A42E: BCC .dont_blow_up_weathervane\n\n #_07A430: CMP.w #$07E0\n #_07A433: BCS .dont_blow_up_weathervane\n\n #_07A435: LDA.b $22\n #_07A437: CMP.w #$01CF\n #_07A43A: BCC .dont_blow_up_weathervane\n\n #_07A43C: CMP.w #$0230\n #_07A43F: BCS .dont_blow_up_weathervane\n\n #_07A441: SEP #$20\n\n #_07A443: LDA.b #$2D\n #_07A445: STA.b $11\n\n #_07A447: LDY.b #$00\n #_07A449: LDA.b #$37 ; ANCILLA 37\n #_07A44B: JSL AncillaAdd_ExplodingWeatherVane\n\n.dont_blow_up_weathervane\n #_07A44F: SEP #$20\n\n #_07A451: BRA EXIT_07A45E\n\n; ---------------------------------------------------------\n\n.have_activated_flute\n #_07A453: LDY.b #$04\n #_07A455: LDA.b #$27 ; ANCILLA 27\n #_07A457: JSL AncillaAdd_Duck_take_off\n\n #_07A45B: STZ.w $03F8\n\n; ---------------------------------------------------------\n\n#EXIT_07A45E:\n #_07A45E: RTS", + "file": "bank_07.asm" + }, + { + "name": "CallForDuckIndoors", + "code": "CallForDuckIndoors:\n #_07A45F: PHB\n #_07A460: PHK\n #_07A461: PLB\n\n #_07A462: LDA.b #$13 ; SFX2.13\n #_07A464: JSR PlaySFX_Set2\n\n #_07A467: LDY.b #$04\n #_07A469: LDA.b #$27 ; ANCILLA 27\n #_07A46B: JSL AncillaAdd_Duck_take_off\n\n #_07A46F: PLB\n\n #_07A470: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Book", + "code": "LinkItem_Book:\n #_07A471: BIT.b $3A\n #_07A473: BVS .exit\n\n #_07A475: LDA.b $6C\n #_07A477: BNE EXIT_07A45E\n\n #_07A479: JSR CheckYButtonPress\n #_07A47C: BCC .exit\n\n #_07A47E: LDA.b $3A\n #_07A480: AND.b #$BF\n #_07A482: STA.b $3A\n\n #_07A484: LDA.w $02ED\n #_07A487: BNE .do_prayer\n\n #_07A489: LDA.b #$3C ; SFX2.3C\n #_07A48B: JSR PlaySFX_Set2\n\n #_07A48E: BRA .exit\n\n; ---------------------------------------------------------\n\n.do_prayer\n #_07A490: BRL Link_PerformDesertPrayer\n\n.exit\n #_07A493: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Ether", + "code": "LinkItem_Ether:\n #_07A494: JSR CheckYButtonPress\n #_07A497: BCC .exit\n\n #_07A499: LDA.b $3A\n #_07A49B: AND.b #$BF\n #_07A49D: STA.b $3A\n\n #_07A49F: LDA.b $6C\n #_07A4A1: BNE .cannot_ether\n\n #_07A4A3: LDA.w $0FFC\n #_07A4A6: BNE .cannot_ether\n\n #_07A4A8: LDA.w $0403\n #_07A4AB: AND.b #$80\n #_07A4AD: BNE .cannot_ether\n\n #_07A4AF: LDA.l $7EF359\n #_07A4B3: INC A\n #_07A4B4: AND.b #$FE\n #_07A4B6: BEQ .cannot_ether\n\n #_07A4B8: LDA.l $7EF3D3\n #_07A4BC: BEQ .allow_ether\n\n #_07A4BE: LDA.l $7EF3CC\n #_07A4C2: CMP.b #$0D ; FOLLOWER 0D\n #_07A4C4: BNE .allow_ether\n\n.cannot_ether\n #_07A4C6: BRL LinkGoBeep\n\n; ---------------------------------------------------------\n\n.allow_ether\n #_07A4C9: LDA.w $0C4A\n #_07A4CC: ORA.w $0C4B\n #_07A4CF: ORA.w $0C4C\n #_07A4D2: BNE .exit\n\n #_07A4D4: LDX.b #$01\n #_07A4D6: JSR LinkCheckMagicCost\n #_07A4D9: BCC .exit\n\n #_07A4DB: LDA.b #$08 ; LINKSTATE 08\n #_07A4DD: STA.b $5D\n\n #_07A4DF: LDA.b #$01\n #_07A4E1: TSB.b $50\n\n #_07A4E3: LDA.w .anim_timer\n #_07A4E6: STA.b $3D\n\n #_07A4E8: STZ.w $031C\n #_07A4EB: STZ.w $031D\n #_07A4EE: STZ.w $0324\n\n #_07A4F1: LDA.b #$23 ; SFX3.23\n #_07A4F3: JSR PlaySFX_Set3\n\n.exit\n #_07A4F6: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_UsingEther", + "code": "LinkState_UsingEther:\n #_07A50F: INC.w $0FC1\n\n #_07A512: DEC.b $3D\n #_07A514: BPL .exit\n\n #_07A516: INC.w $031D\n\n #_07A519: LDX.w $031D\n\n #_07A51C: CPX.b #$0B\n #_07A51E: BNE .not_last_step\n\n #_07A520: LDX.b #$0B\n #_07A522: BRA .continue\n\n; ---------------------------------------------------------\n\n.not_last_step\n #_07A524: CPX.b #$04\n #_07A526: BNE .skip_swish_sfx\n\n #_07A528: PHX\n\n #_07A529: LDA.b #$23 ; SFX3.23\n #_07A52B: JSR PlaySFX_Set3\n\n #_07A52E: PLX\n\n.skip_swish_sfx\n #_07A52F: CPX.b #$09\n #_07A531: BNE .skip_ding_sfx\n\n #_07A533: LDA.b #$2C ; SFX2.2C\n #_07A535: JSR PlaySFX_Set2\n\n.skip_ding_sfx\n #_07A538: CPX.b #$0C\n #_07A53A: BNE .continue\n\n #_07A53C: LDA.b #$0A\n #_07A53E: STA.w $031D\n\n #_07A541: TAX\n\n; ---------------------------------------------------------\n\n.continue\n #_07A542: LDA.w .anim_timer,X\n #_07A545: STA.b $3D\n\n #_07A547: LDA.w .anim_step,X\n #_07A54A: STA.w $031C\n\n #_07A54D: LDA.w $0324\n #_07A550: BNE .exit\n\n #_07A552: CPX.b #$0A\n #_07A554: BNE .exit\n\n #_07A556: LDA.b #$01\n #_07A558: STA.w $0324\n\n #_07A55B: LDY.b #$00\n #_07A55D: LDA.b #$18 ; ANCILLA 18\n #_07A55F: JSL AncillaAdd_EtherSpell\n\n #_07A563: STZ.b $4D\n #_07A565: STZ.w $0046\n\n.exit\n #_07A568: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Bombos", + "code": "LinkItem_Bombos:\n #_07A569: JSR CheckYButtonPress\n #_07A56C: BCC .exit\n\n #_07A56E: LDA.b $3A\n #_07A570: AND.b #$BF\n #_07A572: STA.b $3A\n\n #_07A574: LDA.b $6C\n #_07A576: BNE .cannot_bombos\n\n #_07A578: LDA.w $0FFC\n #_07A57B: BNE .cannot_bombos\n\n #_07A57D: LDA.w $0403\n #_07A580: AND.b #$80\n #_07A582: BNE .cannot_bombos\n\n #_07A584: LDA.l $7EF359\n #_07A588: INC A\n #_07A589: AND.b #$FE\n #_07A58B: BEQ .cannot_bombos\n\n #_07A58D: LDA.l $7EF3D3\n #_07A591: BEQ .allow_bombos\n\n #_07A593: LDA.l $7EF3CC\n #_07A597: CMP.b #$0D ; FOLLOWER 0D\n #_07A599: BNE .allow_bombos\n\n.cannot_bombos\n #_07A59B: BRL LinkGoBeep\n\n; ---------------------------------------------------------\n\n.allow_bombos\n #_07A59E: LDA.w $0C4A\n #_07A5A1: ORA.w $0C4B\n #_07A5A4: ORA.w $0C4C\n #_07A5A7: BNE .exit\n\n #_07A5A9: LDX.b #$01\n #_07A5AB: JSR LinkCheckMagicCost\n #_07A5AE: BCC .exit\n\n #_07A5B0: LDA.b #$09 ; LINKSTATE 09\n #_07A5B2: STA.b $5D\n\n #_07A5B4: LDA.b #$01\n #_07A5B6: TSB.b $50\n\n #_07A5B8: LDA.w .anim_timer\n #_07A5BB: STA.b $3D\n\n #_07A5BD: LDA.w .anim_step\n #_07A5C0: STA.w $031C\n #_07A5C3: STZ.w $031D\n\n #_07A5C6: STZ.w $0324\n\n #_07A5C9: LDA.b #$23 ; SFX3.23\n #_07A5CB: JSR PlaySFX_Set3\n\n.exit\n #_07A5CE: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_UsingBombos", + "code": "LinkState_UsingBombos:\n #_07A5F7: INC.w $0FC1\n\n #_07A5FA: DEC.b $3D\n #_07A5FC: BPL .exit\n\n #_07A5FE: INC.w $031D\n\n #_07A601: LDX.w $031D\n #_07A604: CPX.b #$04\n #_07A606: BNE .skip_swish_sfx\n\n #_07A608: PHX\n\n #_07A609: LDA.b #$23 ; SFX3.23\n #_07A60B: JSR PlaySFX_Set3\n\n #_07A60E: PLX\n\n.skip_swish_sfx\n #_07A60F: CPX.b #$0A\n #_07A611: BNE .skip_ping_sfx\n\n #_07A613: PHX\n\n #_07A614: LDA.b #$2C ; SFX2.2C\n #_07A616: JSR PlaySFX_Set2\n\n #_07A619: PLX\n\n; ---------------------------------------------------------\n\n.skip_ping_sfx\n #_07A61A: CPX.b #$14\n #_07A61C: BNE .dont_reset_step\n\n #_07A61E: LDA.b #$13\n #_07A620: STA.w $031D\n\n #_07A623: TAX\n\n.dont_reset_step\n #_07A624: LDA.w .anim_timer,X\n #_07A627: STA.b $3D\n\n #_07A629: LDA.w .anim_step,X\n #_07A62C: STA.w $031C\n\n #_07A62F: LDA.w $0324\n #_07A632: BNE .exit\n\n #_07A634: CPX.b #$13\n #_07A636: BNE .exit\n\n #_07A638: LDA.b #$01\n #_07A63A: STA.w $0324\n\n #_07A63D: LDY.b #$00\n #_07A63F: LDA.b #$19 ; ANCILLA 19\n #_07A641: JSL AncillaAdd_BombosSpell\n\n #_07A645: STZ.b $4D\n #_07A647: STZ.w $0046\n\n.exit\n #_07A64A: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Quake", + "code": "LinkItem_Quake:\n #_07A64B: JSR CheckYButtonPress\n #_07A64E: BCC .exit\n\n #_07A650: LDA.b $3A\n #_07A652: AND.b #$BF\n #_07A654: STA.b $3A\n\n #_07A656: LDA.b $6C\n #_07A658: BNE .cannot_quake\n\n #_07A65A: LDA.w $0FFC\n #_07A65D: BNE .cannot_quake\n\n #_07A65F: LDA.w $0403\n #_07A662: AND.b #$80\n #_07A664: BNE .cannot_quake\n\n #_07A666: LDA.l $7EF359\n #_07A66A: INC A\n #_07A66B: AND.b #$FE\n #_07A66D: BEQ .cannot_quake\n\n #_07A66F: LDA.l $7EF3D3\n #_07A673: BEQ .allow_quake\n\n #_07A675: LDA.l $7EF3CC\n #_07A679: CMP.b #$0D ; FOLLOWER 0D\n #_07A67B: BNE .allow_quake\n\n.cannot_quake\n #_07A67D: BRL LinkGoBeep\n\n; ---------------------------------------------------------\n\n.allow_quake\n #_07A680: LDA.w $0C4A\n #_07A683: ORA.w $0C4B\n #_07A686: ORA.w $0C4C\n #_07A689: BNE .exit\n\n #_07A68B: LDX.b #$01\n #_07A68D: JSR LinkCheckMagicCost\n #_07A690: BCC .exit\n\n #_07A692: LDA.b #$0A ; LINKSTATE 0A\n #_07A694: STA.b $5D\n\n #_07A696: LDA.b #$01\n #_07A698: TSB.b $50\n\n #_07A69A: LDA.w .anim_timer\n #_07A69D: STA.b $3D\n\n #_07A69F: LDA.w .anim_step\n #_07A6A2: STA.w $031C\n #_07A6A5: STZ.w $031D\n\n #_07A6A8: STZ.w $0324\n\n #_07A6AB: STZ.b $46\n\n #_07A6AD: LDA.b #$28\n #_07A6AF: STA.w $0362\n #_07A6B2: STA.w $0363\n #_07A6B5: STZ.w $0364\n\n #_07A6B8: LDA.b #$23 ; SFX3.23\n #_07A6BA: JSR PlaySFX_Set3\n\n.exit\n #_07A6BD: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_UsingQuake", + "code": "LinkState_UsingQuake:\n #_07A6D6: INC.w $0FC1\n\n #_07A6D9: STZ.b $27\n #_07A6DB: STZ.b $28\n\n #_07A6DD: LDA.w $031D\n #_07A6E0: CMP.b #$0A\n #_07A6E2: BNE .not_ascending\n\n #_07A6E4: LDA.w $0362\n #_07A6E7: STA.b $29\n\n #_07A6E9: LDA.w $0363\n #_07A6EC: STA.w $02C7\n\n #_07A6EF: LDA.w $0364\n #_07A6F2: STA.b $24\n\n #_07A6F4: LDA.b #$02\n #_07A6F6: STA.b $00\n #_07A6F8: STA.b $4D\n\n #_07A6FA: JSR Link_HandleChangeInZVelocity_preset\n #_07A6FD: JSL LinkHop_FindArbitraryLandingSpot\n\n #_07A701: LDA.b $29\n #_07A703: STA.w $0362\n\n #_07A706: LDA.w $02C7\n #_07A709: STA.w $0363\n\n #_07A70C: LDA.b $24\n #_07A70E: STA.w $0364\n #_07A711: BMI .still_ascending\n\n; ---------------------------------------------------------\n\n #_07A713: LDY.b #$14\n\n #_07A715: LDA.b $29\n #_07A717: BPL .done_ascending\n\n #_07A719: LDY.b #$15\n\n.done_ascending\n #_07A71B: STY.w $031C\n\n #_07A71E: BRA .exit\n\n.not_ascending\n #_07A720: DEC.b $3D\n #_07A722: BPL .exit\n\n; ---------------------------------------------------------\n\n.still_ascending\n #_07A724: INC.w $031D\n\n #_07A727: LDX.w $031D\n #_07A72A: CPX.b #$04\n #_07A72C: BNE .skip_swish_sfx\n\n #_07A72E: PHX\n\n #_07A72F: LDA.b #$23 ; SFX3.23\n #_07A731: JSR PlaySFX_Set3\n\n #_07A734: PLX\n\n.skip_swish_sfx\n #_07A735: CPX.b #$0A\n #_07A737: BNE .skip_ping_sfx\n\n #_07A739: PHX\n\n #_07A73A: LDA.b #$2C ; SFX2.2C\n #_07A73C: JSR PlaySFX_Set2\n\n #_07A73F: PLX\n\n.skip_ping_sfx\n #_07A740: CPX.b #$0B\n #_07A742: BNE .skip_boom_sfx\n\n #_07A744: LDA.b #$0C ; SFX2.0C\n #_07A746: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.skip_boom_sfx\n #_07A749: CPX.b #$0C\n #_07A74B: BNE .dont_reset_step\n\n #_07A74D: LDA.b #$0B\n #_07A74F: STA.w $031D\n\n #_07A752: TAX\n\n.dont_reset_step\n #_07A753: LDA.w .anim_timer,X\n #_07A756: STA.b $3D\n\n #_07A758: LDA.w .anim_step,X\n #_07A75B: STA.w $031C\n\n #_07A75E: LDA.w $0324\n #_07A761: BNE .exit\n\n #_07A763: CPX.b #$0B\n #_07A765: BNE .exit\n\n #_07A767: LDA.b #$01\n #_07A769: STA.w $0324\n\n #_07A76C: LDY.b #$00\n #_07A76E: LDA.b #$1C ; ANCILLA 1C\n #_07A770: JSL AncillaAdd_QuakeSpell\n\n #_07A774: STZ.b $4D\n #_07A776: STZ.w $0046\n\n.exit\n #_07A779: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_ActivateSpinAttack", + "code": "Link_ActivateSpinAttack:\n #_07A77A: LDY.b #$00\n #_07A77C: TYX\n\n #_07A77D: LDA.b #$2A ; ANCILLA 2A\n #_07A77F: JSL AncillaAdd_SpinAttackInitSpark\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_AnimateVictorySpin", + "code": "Link_AnimateVictorySpin:\n #_07A783: LDA.b #$03 ; LINKSTATE 03\n #_07A785: STA.b $5D\n\n #_07A787: LDA.b $2F\n #_07A789: LSR A\n #_07A78A: TAX\n\n #_07A78B: LDA.w SpinAttack_data_offset,X\n #_07A78E: STA.w $031E\n\n #_07A791: TAX\n #_07A792: LDA.w SpinAttack_anim_timer_a\n #_07A795: STA.b $3D\n\n #_07A797: LDA.w SpinAttack_anim_step,X\n #_07A79A: STA.w $031C\n #_07A79D: STZ.w $031D\n\n #_07A7A0: LDA.b #$90\n #_07A7A2: STA.b $3C\n\n #_07A7A4: LDA.b #$01\n #_07A7A6: TSB.b $50\n\n #_07A7A8: LDA.b #$80\n #_07A7AA: STA.b $3A\n\n #_07A7AC: BRL LinkState_SpinAttack\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07A7AF", + "code": "UNREACHABLE_07A7AF:\n #_07A7AF: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_AnimateVictorySpin_long", + "code": "Link_AnimateVictorySpin_long:\n #_07A7B0: PHB\n #_07A7B1: PHK\n #_07A7B2: PLB\n\n #_07A7B3: JSR Link_AnimateVictorySpin\n\n #_07A7B6: PLB\n\n #_07A7B7: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkState_SpinAttack", + "code": "LinkState_SpinAttack:\n #_07A804: JSR CacheCameraPropertiesIfOutdoors\n\n #_07A807: LDA.b $4D\n #_07A809: BEQ .not_recoiling\n\n; ---------------------------------------------------------\n\n #_07A80B: LDX.b #$04\n\n.next_ancilla\n #_07A80D: LDA.w $0C4A,X\n #_07A810: CMP.b #$2A ; ANCILLA 2A\n #_07A812: BEQ .delete_ancilla\n\n #_07A814: CMP.b #$2B ; ANCILLA 2B\n #_07A816: BNE .skip_ancilla\n\n.delete_ancilla\n #_07A818: STZ.w $0C4A,X\n\n.skip_ancilla\n #_07A81B: DEX\n #_07A81C: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n #_07A81E: STZ.b $25\n\n #_07A820: LDA.b $50\n #_07A822: AND.b #$FE\n #_07A824: STA.b $50\n\n #_07A826: STZ.b $3D\n #_07A828: STZ.b $3C\n\n #_07A82A: STZ.b $3A\n #_07A82C: STZ.b $3B\n\n #_07A82E: STZ.w $031C\n #_07A831: STZ.w $031D\n\n #_07A834: STZ.b $5E\n\n #_07A836: LDA.b $1B\n #_07A838: BNE .useless_branch\n\n.useless_branch\n #_07A83A: LDA.w $0360\n #_07A83D: BEQ .not_electrocuted\n\n #_07A83F: LDA.b $55\n #_07A841: BEQ .no_cape\n\n #_07A843: JSR Link_ForceUnequipCape_quietly\n\n; ---------------------------------------------------------\n\n.no_cape\n #_07A846: JSR Link_ResetSwordAndItemUsage\n\n #_07A849: LDA.b #$01\n #_07A84B: STA.w $037B\n\n #_07A84E: STZ.w $0300\n\n #_07A851: LDA.b #$02\n #_07A853: STA.b $3D\n\n #_07A855: STZ.b $2E\n\n #_07A857: LDA.b $67\n #_07A859: AND.b #$F0\n #_07A85B: STA.b $67\n\n #_07A85D: LDA.b #$2B ; SFX3.2B\n #_07A85F: JSR PlaySFX_Set3\n\n #_07A862: LDA.b #$07 ; LINKSTATE 07\n #_07A864: STA.b $5D\n\n #_07A866: BRL LinkState_Zapped\n\n; ---------------------------------------------------------\n\n.not_electrocuted\n #_07A869: LDA.b #$02 ; LINKSTATE 02\n #_07A86B: STA.b $5D\n\n #_07A86D: BRL LinkState_Recoil\n\n; ---------------------------------------------------------\n\n.not_recoiling\n #_07A870: LDA.b $46\n #_07A872: BEQ .not_rebounding\n\n #_07A874: JSR Link_HandleRecoilAndTimer\n #_07A877: BRA .done_rebound\n\n.not_rebounding\n #_07A879: STZ.b $67\n\n #_07A87B: JSL Link_HandleVelocity\n\n #_07A87F: JSR Link_HandleCardinalCollision\n\n #_07A882: LDA.b #$03 ; LINKSTATE 03\n #_07A884: STA.b $5D\n\n #_07A886: STZ.w $0302\n\n #_07A889: JSR HandleIndoorCameraAndDoors\n\n; ---------------------------------------------------------\n\n.done_rebound\n #_07A88C: DEC.b $3D\n #_07A88E: BPL EXIT_07A8EB\n\n #_07A890: LDA.w $031D\n #_07A893: INC A\n #_07A894: STA.w $031D\n\n #_07A897: CMP.b #$02\n #_07A899: BNE .skip_swoosh_sfx\n\n #_07A89B: LDA.b #$23 ; SFX3.23\n #_07A89D: JSR PlaySFX_Set3\n\n; ---------------------------------------------------------\n\n.skip_swoosh_sfx\n #_07A8A0: LDA.w $031D\n #_07A8A3: CMP.b #$0C\n #_07A8A5: BNE .still_spinning\n\n #_07A8A7: LDA.b $50\n #_07A8A9: AND.b #$FE\n #_07A8AB: STA.b $50\n\n #_07A8AD: STZ.b $3D\n #_07A8AF: STZ.b $3C\n\n #_07A8B1: STZ.w $031C\n #_07A8B4: STZ.w $031D\n\n #_07A8B7: LDA.b $5D\n #_07A8B9: CMP.b #$1E ; LINKSTATE 1E\n #_07A8BB: BEQ .victory_spin\n\n #_07A8BD: LDX.b #$00\n\n #_07A8BF: LDA.b $3C\n #_07A8C1: BEQ .dont_preserve_b_button\n\n #_07A8C3: LDA.b $F0\n #_07A8C5: AND.b #$80\n #_07A8C7: TAX\n\n.dont_preserve_b_button\n #_07A8C8: STX.b $3A\n\n.victory_spin\n #_07A8CA: LDA.b #$00 ; LINKSTATE 00\n #_07A8CC: STA.b $5D\n\n #_07A8CE: BRA EXIT_07A8EB\n\n; ---------------------------------------------------------\n\n.still_spinning\n #_07A8D0: LDA.w $031D\n #_07A8D3: CLC\n #_07A8D4: ADC.w $031E\n #_07A8D7: TAX\n\n #_07A8D8: LDA.w SpinAttack_anim_step,X\n #_07A8DB: STA.w $031C\n\n #_07A8DE: LDX.w $031D\n\n #_07A8E1: LDY.w SpinAttack_anim_timer_b,X\n #_07A8E4: STY.b $3D\n\n #_07A8E6: LDY.b #$08\n #_07A8E8: JSR TileDetect_MainHandler\n\n; ---------------------------------------------------------\n\n#EXIT_07A8EB:\n #_07A8EB: RTS", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07A8EC", + "code": "UNREACHABLE_07A8EC:\n #_07A8EC: LDY.b #$00\n #_07A8EE: LDX.b #$01\n #_07A8F0: LDA.b #$2A ; ANCILLA 2A\n #_07A8F2: JSL AncillaAdd_SpinAttackInitSpark\n\n #_07A8F6: LDA.b #$1E ; LINKSTATE 1E\n #_07A8F8: STA.b $5D\n\n #_07A8FA: LDA.b $2F\n #_07A8FC: LSR A\n #_07A8FD: TAX\n\n #_07A8FE: LDA.w SpinAttack_data_offset,X\n #_07A901: STA.w $031E\n\n #_07A904: TAX\n\n #_07A905: LDA.w SpinAttack_anim_timer_a\n #_07A908: STA.b $3D\n\n #_07A90A: LDA.w SpinAttack_anim_step,X\n #_07A90D: STA.w $031C\n #_07A910: STZ.w $031D\n\n #_07A913: LDA.b #$01\n #_07A915: TSB.b $50\n\n #_07A917: BRL LinkState_SpinAttack\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Mirror", + "code": "LinkItem_Mirror:\n #_07A91A: BIT.b $3A\n #_07A91C: BVS .continue\n\n #_07A91E: JSR CheckYButtonPress\n #_07A921: BCC EXIT_07A8EB\n\n #_07A923: LDA.l $7EF3CC\n #_07A927: CMP.b #$0A ; FOLLOWER 0A\n #_07A929: BNE .continue\n\n; ---------------------------------------------------------\n\n #_07A92B: REP #$20\n\n #_07A92D: LDA.w #$0121 ; MESSAGE 0121\n #_07A930: STA.w $1CF0\n\n #_07A933: SEP #$20\n\n #_07A935: JSL Interface_PrepAndDisplayMessage\n #_07A939: BRL .exit\n\n; ---------------------------------------------------------\n\n.continue\n #_07A93C: LDA.b $3A\n #_07A93E: AND.b #$BF\n #_07A940: STA.b $3A\n\n #_07A942: LDA.b $6C\n #_07A944: BNE LinkGoBeep\n\n #_07A946: LDA.w $037F\n #_07A949: BNE Mirror_TryToWarp\n\n #_07A94B: LDA.b $1B\n #_07A94D: BNE Mirror_TryToWarp\n\n #_07A94F: LDA.b $8A\n #_07A951: AND.b #$40\n #_07A953: BNE Mirror_TryToWarp\n\n; =========================================================\n\n#LinkGoBeep:\n #_07A955: LDA.b #$3C ; SFX2.3C\n #_07A957: JSR PlaySFX_Set2\n\n #_07A95A: BRA .exit\n\n; =========================================================\n\n#Mirror_TryToWarp:\n #_07A95C: LDA.b $1B\n #_07A95E: BEQ .overworld\n\n #_07A960: LDA.w $0FFC\n #_07A963: BNE .exit\n\n #_07A965: JSL Mirror_SaveRoomData\n\n #_07A969: LDA.w $012E\n #_07A96C: CMP.b #$3C ; SFX2.3C\n #_07A96E: BEQ .exit\n\n #_07A970: STZ.w $05FC\n #_07A973: STZ.w $05FD\n\n #_07A976: BRA .exit\n\n; ---------------------------------------------------------\n\n.overworld\n #_07A978: LDA.b $10\n #_07A97A: CMP.b #$0B\n #_07A97C: BEQ .exit\n\n #_07A97E: LDA.b $8A\n #_07A980: AND.b #$40\n #_07A982: STA.b $7B\n\n #_07A984: BEQ .no_mirror_portal\n\n #_07A986: LDA.b $20\n #_07A988: STA.w $1ADF\n\n #_07A98B: LDA.b $21\n #_07A98D: STA.w $1AEF\n\n #_07A990: LDA.b $22\n #_07A992: STA.w $1ABF\n\n #_07A995: LDA.b $23\n #_07A997: STA.w $1ACF\n\n.no_mirror_portal\n #_07A99A: LDA.b #$23\n\n; ---------------------------------------------------------\n\n#SetGameModeLikeMirror:\n #_07A99C: STA.b $11\n\n #_07A99E: STZ.w $03F8\n\n #_07A9A1: LDA.b #$01\n #_07A9A3: STA.w $02DB\n\n #_07A9A6: STZ.b $B0\n\n #_07A9A8: STZ.b $27\n #_07A9AA: STZ.b $28\n\n #_07A9AC: LDA.b #$14 ; LINKSTATE 14\n #_07A9AE: STA.b $5D\n\n.exit\n #_07A9B0: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_CrossingWorlds", + "code": "LinkState_CrossingWorlds:\n #_07A9B1: JSL Link_ResetProperties_B\n\n #_07A9B5: JSR TileCheckForMirrorBonk\n\n #_07A9B8: LDA.b $8A\n #_07A9BA: AND.b #$40\n #_07A9BC: CMP.b $7B\n #_07A9BE: BNE .worlds_dont_match\n\n #_07A9C0: BRL .dont_mirror_bonk\n\n; ---------------------------------------------------------\n\n.worlds_dont_match\n #_07A9C3: LDA.b $0C\n #_07A9C5: ORA.b $0E\n #_07A9C7: STA.b $00\n\n #_07A9C9: AND.b #$0C\n #_07A9CB: BEQ .dont_mirror_bonk\n\n #_07A9CD: LDA.b $00\n #_07A9CF: AND.b #$03\n #_07A9D1: BNE .mirror_bonk\n\n #_07A9D3: LDA.b $00\n #_07A9D5: AND.b #$0F\n #_07A9D7: BEQ .dont_mirror_bonk\n\n; ---------------------------------------------------------\n\n #_07A9D9: LDX.b #$03\n #_07A9DB: LDY.b #$00\n\n.next_shift_a\n #_07A9DD: LSR A\n #_07A9DE: BCC .no_bit_a\n\n #_07A9E0: INY\n\n.no_bit_a\n #_07A9E1: DEX\n #_07A9E2: BPL .next_shift_a\n\n #_07A9E4: CPY.b #$02\n #_07A9E6: BCC .dont_mirror_bonk\n\n.mirror_bonk\n #_07A9E8: LDA.b #$2C\n #_07A9EA: BRA SetGameModeLikeMirror\n\n.dont_mirror_bonk\n #_07A9EC: LDY.b #$00\n #_07A9EE: LDX.b #$03\n\n #_07A9F0: LDA.w $0341\n\n.next_shift_b\n #_07A9F3: LSR A\n #_07A9F4: BCC .no_bit_b\n\n #_07A9F6: INY\n\n.no_bit_b\n #_07A9F7: DEX\n #_07A9F8: BPL .next_shift_b\n\n #_07A9FA: CPY.b #$02\n #_07A9FC: BCC .dont_reset_swim_or_cape\n\n; ---------------------------------------------------------\n\n #_07A9FE: LDA.l $7EF356\n #_07AA02: BNE .have_flippers\n\n #_07AA04: LDA.b $8A\n #_07AA06: AND.b #$40\n #_07AA08: CMP.b $7B\n #_07AA0A: BNE .mirror_bonk\n\n #_07AA0C: JSL CheckAbilityToSwim\n\n #_07AA10: BRA .dont_reset_swim_or_cape\n\n; ---------------------------------------------------------\n\n.have_flippers\n #_07AA12: LDA.b #$01\n #_07AA14: STA.w $0345\n\n #_07AA17: LDA.b $26\n #_07AA19: STA.w $0340\n\n #_07AA1C: JSL Link_ResetSwimmingState\n\n #_07AA20: LDA.b #$04 ; LINKSTATE 04\n #_07AA22: STA.b $5D\n\n #_07AA24: JSR Link_ForceUnequipCape_quietly\n\n #_07AA27: STZ.b $5E\n\n #_07AA29: BRA .exit\n\n; ---------------------------------------------------------\n\n.dont_reset_swim_or_cape\n #_07AA2B: LDA.w $0345\n #_07AA2E: BEQ .not_deep_water\n\n #_07AA30: STZ.w $0345\n\n #_07AA33: LDA.w $0340\n #_07AA36: STA.b $26\n\n.not_deep_water\n #_07AA38: STZ.w $0374\n #_07AA3B: STZ.w $0372\n\n #_07AA3E: STZ.b $5E\n\n #_07AA40: STZ.b $3A\n #_07AA42: STZ.b $3C\n\n #_07AA44: STZ.b $50\n\n #_07AA46: STZ.w $032B\n\n #_07AA49: STZ.b $27\n\n; ---------------------------------------------------------\n\n #_07AA4B: LDA.b $8A\n #_07AA4D: AND.b #$40\n #_07AA4F: CMP.b $7B\n #_07AA51: BEQ .worlds_match\n\n #_07AA53: STZ.w $04AC\n #_07AA56: STZ.w $04AD\n\n.worlds_match\n #_07AA59: LDY.b #$00 ; LINKSTATE 00\n\n #_07AA5B: LDA.l $7EF357\n #_07AA5F: BNE .not_pearlless_in_darkworld\n\n #_07AA61: LDA.b $8A\n #_07AA63: AND.b #$40\n #_07AA65: BEQ .not_pearlless_in_darkworld\n\n #_07AA67: LDY.b #$17 ; LINKSTATE 17\n\n.not_pearlless_in_darkworld\n #_07AA69: STY.b $5D\n\n.exit\n #_07AA6B: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformDesertPrayer", + "code": "Link_PerformDesertPrayer:\n #_07AA6C: LDA.b #$05\n #_07AA6E: STA.b $11\n\n #_07AA70: LDA.b $10\n #_07AA72: STA.w $010C\n\n #_07AA75: LDA.b #$0E\n #_07AA77: STA.b $10\n\n #_07AA79: LDA.b #$01\n #_07AA7B: STA.w $0FC1\n\n #_07AA7E: LDA.b #$16\n #_07AA80: STA.w $030B\n\n #_07AA83: STZ.w $030A\n\n #_07AA86: LDA.b #$02\n #_07AA88: STA.w $0308\n\n #_07AA8B: LDA.b #$01\n #_07AA8D: TSB.b $50\n\n #_07AA8F: STZ.b $2E\n\n #_07AA91: LDA.b $67\n #_07AA93: AND.b #$F0\n #_07AA95: STA.b $67\n\n #_07AA97: LDA.b #$11 ; SFX1.11\n #_07AA99: STA.w $012D\n\n #_07AA9C: LDA.b #$F2 ; SONG F2 - half volume\n #_07AA9E: STA.w $012C\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_NothingA", + "code": "Link_APress_NothingA:\n #_07AAA1: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleFollowersAfterMirroring", + "code": "HandleFollowersAfterMirroring:\n #_07AAA2: PHB\n #_07AAA3: PHK\n #_07AAA4: PLB\n\n #_07AAA5: LDY.b #$00\n #_07AAA7: JSR TileDetect_MainHandler\n\n #_07AAAA: STZ.b $2E\n\n #_07AAAC: LDA.l $7EF3CC\n #_07AAB0: CMP.b #$0C ; FOLLOWER 0C\n #_07AAB2: BEQ .have_purple_chest\n\n #_07AAB4: CMP.b #$0D ; FOLLOWER 0D\n #_07AAB6: BNE .dont_have_superbomb\n\n #_07AAB8: LDA.b #$FE\n #_07AABA: STA.w $04B4\n #_07AABD: STZ.w $04B5\n\n; ---------------------------------------------------------\n\n.have_purple_chest\n #_07AAC0: LDA.l $7EF3D3\n #_07AAC4: BEQ .check_for_pearl\n\n #_07AAC6: LDA.b #$00\n #_07AAC8: STA.l $7EF3D3\n\n #_07AACC: BRA .clear_follower\n\n; ---------------------------------------------------------\n\n.dont_have_superbomb\n #_07AACE: LDA.l $7EF3CC\n\n #_07AAD2: CMP.b #$09 ; FOLLOWER 09\n #_07AAD4: BEQ .clear_follower\n\n #_07AAD6: CMP.b #$0A ; FOLLOWER 0A\n #_07AAD8: BNE .not_kiki\n\n.clear_follower\n #_07AADA: LDA.b #$00\n #_07AADC: STA.l $7EF3CC\n\n #_07AAE0: BRA .check_for_pearl\n\n; ---------------------------------------------------------\n\n.not_kiki\n #_07AAE2: LDY.b #$07 ; FOLLOWER 07\n\n #_07AAE4: LDA.l $7EF3CC\n #_07AAE8: CMP.b #$08 ; FOLLOWER 08\n #_07AAEA: BEQ .smithy\n\n #_07AAEC: LDY.b #$08 ; FOLLOWER 08\n\n #_07AAEE: CMP.b #$07 ; FOLLOWER 07\n #_07AAF0: BNE .check_for_pearl\n\n; ---------------------------------------------------------\n\n.smithy\n #_07AAF2: TYA\n #_07AAF3: STA.l $7EF3CC\n #_07AAF7: JSL LoadFollowerGraphics\n\n #_07AAFB: LDY.b #$04\n #_07AAFD: LDA.b #$40 ; ANCILLA 40\n #_07AAFF: JSL AncillaAdd_DwarfPoof\n\n; ---------------------------------------------------------\n\n.check_for_pearl\n #_07AB03: LDA.l $7EF357\n #_07AB07: BNE .have_pearl\n\n #_07AB09: LDY.b #$04\n #_07AB0B: LDA.b #$23 ; ANCILLA 23\n #_07AB0D: JSL AncillaAdd_BunnyPoof\n\n #_07AB11: JSR Link_ForceUnequipCape_quietly\n\n #_07AB14: STZ.w $02E2\n\n #_07AB17: BRA .exit\n\n.have_pearl\n #_07AB19: LDA.b $55\n #_07AB1B: BEQ .exit\n\n #_07AB1D: JSR Link_ForceUnequipCape\n\n #_07AB20: STZ.w $02E2\n\n.exit\n #_07AB23: PLB\n\n #_07AB24: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Hookshot", + "code": "LinkItem_Hookshot:\n #_07AB25: LDA.b $3A\n #_07AB27: AND.b #$40\n #_07AB29: BNE EXIT_07AB6B\n\n #_07AB2B: LDA.b $6C\n #_07AB2D: BNE EXIT_07AB6B\n\n #_07AB2F: LDA.b $48\n #_07AB31: AND.b #$02\n #_07AB33: BNE EXIT_07AB6B\n\n #_07AB35: JSR CheckYButtonPress\n #_07AB38: BCC EXIT_07AB6B\n\n; ---------------------------------------------------------\n\n #_07AB3A: JSR ResetAllAcceleration\n\n #_07AB3D: STZ.w $0300\n\n #_07AB40: LDA.b #$01\n #_07AB42: TSB.b $50\n\n #_07AB44: LDA.b #$07\n #_07AB46: STA.b $3D\n\n #_07AB48: STZ.b $2E\n\n #_07AB4A: LDA.b $67\n #_07AB4C: AND.b #$F0\n #_07AB4E: STA.b $67\n\n #_07AB50: LDA.w $037A\n #_07AB53: AND.b #$00\n #_07AB55: ORA.b #$04\n #_07AB57: STA.w $037A\n\n #_07AB5A: LDA.b #$13 ; LINKSTATE 13\n #_07AB5C: STA.b $5D\n\n #_07AB5E: LDA.b #$01\n #_07AB60: STA.w $037B\n\n #_07AB63: LDY.b #$03\n #_07AB65: LDA.b #$1F ; ANCILLA 1F\n #_07AB67: JSL AncillaAdd_Hookshot\n\n; ---------------------------------------------------------\n\n#EXIT_07AB6B:\n #_07AB6B: RTS", + "file": "bank_07.asm" + }, + { + "name": "Hookdrag_OffsetY", + "code": "Hookdrag_OffsetY:\n #_07AB6C: db $F8 ; up\n #_07AB6D: db $F0 ; down\n #_07AB6E: db $00 ; left\n #_07AB6F: db $00 ; right\n", + "file": "bank_07.asm" + }, + { + "name": "Hookdrag_OffsetX", + "code": "Hookdrag_OffsetX:\n #_07AB70: db $00 ; up\n #_07AB71: db $00 ; down\n #_07AB72: db $04 ; left\n #_07AB73: db $F4 ; right\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HookdragSpeeds_Vertical", + "code": "HookdragSpeeds_Vertical:\n #_07AB74: db $C0 ; up\n #_07AB75: db $40 ; down\n #_07AB76: db $00 ; left\n #_07AB77: db $00 ; right\n", + "file": "bank_07.asm" + }, + { + "name": "HookdragSpeeds_Horizontal", + "code": "HookdragSpeeds_Horizontal:\n #_07AB78: db $00 ; up\n #_07AB79: db $00 ; down\n #_07AB7A: db $C0 ; left\n #_07AB7B: db $40 ; right\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkState_Hookshotting", + "code": "LinkState_Hookshotting:\n #_07AB7C: STZ.w $0373\n #_07AB7F: STZ.b $4D\n #_07AB81: STZ.b $46\n\n #_07AB83: LDX.b #$04\n\n.next_ancilla_check\n #_07AB85: LDA.w $0C4A,X\n #_07AB88: CMP.b #$1F ; ANCILLA 1F\n #_07AB8A: BEQ .found_hookshot\n\n #_07AB8C: DEX\n #_07AB8D: BPL .next_ancilla_check\n\n #_07AB8F: DEC.b $3D\n\n #_07AB91: LDA.b $3D\n #_07AB93: BPL EXIT_07AB6B\n\n; ---------------------------------------------------------\n\n #_07AB95: STZ.w $0300\n #_07AB98: STZ.w $037B\n\n #_07AB9B: LDA.b $3A\n #_07AB9D: AND.b #$BF\n #_07AB9F: STA.b $3A\n\n #_07ABA1: LDA.b $50\n #_07ABA3: AND.b #$FE\n #_07ABA5: STA.b $50\n\n #_07ABA7: LDA.w $037A\n #_07ABAA: AND.b #$FB\n #_07ABAC: STA.w $037A\n\n #_07ABAF: LDA.b #$00 ; LINKSTATE 00\n #_07ABB1: STA.b $5D\n\n #_07ABB3: LDA.b $3C\n #_07ABB5: CMP.b #$09\n #_07ABB7: BCC .exit\n\n #_07ABB9: LDA.b #$09\n #_07ABBB: STA.b $3C\n\n.exit\n #_07ABBD: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkHookshot_DeleteHook", + "code": "LinkHookshot_DeleteHook:\n #_07AC71: LDX.w $039D\n\n #_07AC74: STZ.w $0C4A,X\n\n #_07AC77: LDA.w $02D3\n #_07AC7A: STA.w $02D1\n\n #_07AC7D: LDA.b #$00 ; LINKSTATE 00\n #_07AC7F: STA.b $5D\n\n #_07AC81: STZ.w $0300\n #_07AC84: STZ.b $3D\n #_07AC86: STZ.w $037E\n\n #_07AC89: LDA.b $3A\n #_07AC8B: AND.b #$BF\n #_07AC8D: STA.b $3A\n\n #_07AC8F: LDA.b $50\n #_07AC91: AND.b #$FE\n #_07AC93: STA.b $50\n\n #_07AC95: LDA.w $037A\n #_07AC98: AND.b #$FB\n #_07AC9A: STA.w $037A\n\n #_07AC9D: STZ.w $037B\n\n #_07ACA0: LDA.w $03A4,X\n #_07ACA3: BEQ .no_layer_changing\n\n #_07ACA5: LDA.w $0476\n #_07ACA8: EOR.b #$01\n #_07ACAA: STA.w $0476\n\n #_07ACAD: DEC.b $A4\n\n #_07ACAF: LDA.w $044A\n #_07ACB2: BNE .dont_go_down_1_room\n\n #_07ACB4: LDA.b $A0\n #_07ACB6: STA.w $048E\n\n #_07ACB9: CLC\n #_07ACBA: ADC.b #$10\n #_07ACBC: STA.b $A0\n\n.dont_go_down_1_room\n #_07ACBE: LDA.w $044A\n #_07ACC1: CMP.b #$02\n #_07ACC3: BEQ .dont_swap_layer\n\n #_07ACC5: LDA.b $EE\n #_07ACC7: EOR.b #$01\n #_07ACC9: STA.b $EE\n\n.dont_swap_layer\n #_07ACCB: JSL Underworld_FlagRoomData_Quadrants\n\n; ---------------------------------------------------------\n\n.no_layer_changing\n #_07ACCF: JSR TileDetect_BigArea\n\n #_07ACD2: LDA.w $0341\n #_07ACD5: AND.b #$0F\n #_07ACD7: BEQ .not_on_deep_water\n\n #_07ACD9: LDA.w $0345\n #_07ACDC: BNE .not_on_deep_water\n\n; ---------------------------------------------------------\n\n #_07ACDE: LDA.b #$01\n #_07ACE0: STA.w $0345\n\n #_07ACE3: LDA.b $26\n #_07ACE5: STA.w $0340\n\n #_07ACE8: JSL Link_ResetSwimmingState\n\n #_07ACEC: LDA.b #$15 ; ANCILLA 15\n #_07ACEE: LDY.b #$00\n #_07ACF0: JSL AncillaAdd_Splash\n\n #_07ACF4: LDA.b #$04 ; LINKSTATE 04\n #_07ACF6: STA.b $5D\n\n #_07ACF8: JSR Link_ForceUnequipCape_quietly\n\n #_07ACFB: STZ.w $0308\n #_07ACFE: STZ.w $0309\n #_07AD01: STZ.w $0376\n #_07AD04: STZ.b $5E\n\n #_07AD06: LDA.b $1B\n #_07AD08: BEQ .dont_set_to_water_layer\n\n #_07AD0A: LDA.b #$01\n #_07AD0C: STA.b $EE\n\n.dont_set_to_water_layer\n #_07AD0E: BRA .continue_after_tiles\n\n; ---------------------------------------------------------\n\n.not_on_deep_water\n #_07AD10: LDA.b $59\n #_07AD12: AND.b #$0F\n #_07AD14: BEQ .not_pit\n\n #_07AD16: LDA.b #$09\n #_07AD18: STA.b $5C\n\n #_07AD1A: STZ.b $5A\n\n #_07AD1C: LDA.b #$01\n #_07AD1E: STA.b $5B\n\n #_07AD20: LDA.b #$01 ; LINKSTATE 01\n #_07AD22: STA.b $5D\n\n #_07AD24: BRA .continue_after_tiles\n\n; ---------------------------------------------------------\n\n.not_pit\n #_07AD26: LDA.b $20\n #_07AD28: STA.b $3E\n\n #_07AD2A: LDA.b $22\n #_07AD2C: STA.b $3F\n\n #_07AD2E: LDA.b $21\n #_07AD30: STA.b $40\n\n #_07AD32: LDA.b $23\n #_07AD34: STA.b $41\n\n #_07AD36: JSR Link_HandleCardinalCollision\n\n #_07AD39: BRL LinkHookshot_GetDragged_go_backwards\n\n; ---------------------------------------------------------\n\n.continue_after_tiles\n #_07AD3C: LDA.b $3C\n #_07AD3E: CMP.b #$09\n #_07AD40: BCC .no_spin_charge\n\n #_07AD42: LDA.b #$09\n #_07AD44: STA.b $3C\n\n.no_spin_charge\n #_07AD46: BRL EXIT_07ADBD\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkHookshot_GetDragged", + "code": "LinkHookshot_GetDragged:\n #_07AD49: JSL LinkHop_FindArbitraryLandingSpot\n\n #_07AD4D: LDY.b #$05\n #_07AD4F: JSR TileDetect_MainHandler\n\n #_07AD52: LDA.b $1B\n #_07AD54: BEQ .dont_flag_layers\n\n; ---------------------------------------------------------\n\n #_07AD56: LDA.w $036D\n\n #_07AD59: LSR A\n #_07AD5A: LSR A\n #_07AD5B: LSR A\n #_07AD5C: LSR A\n\n #_07AD5D: ORA.w $036D\n #_07AD60: ORA.w $036E\n\n #_07AD63: AND.b #$01\n #_07AD65: BEQ .dont_flag_layers\n\n #_07AD67: DEC.w $03F9\n #_07AD6A: BPL .dont_flag_layers\n\n #_07AD6C: LDA.b #$03\n #_07AD6E: STA.w $03F9\n\n #_07AD71: LDA.w $037E\n #_07AD74: EOR.b #$02\n #_07AD76: STA.w $037E\n\n; ---------------------------------------------------------\n\n.dont_flag_layers\n #_07AD79: STZ.w $0351\n\n #_07AD7C: LDA.w $037E\n #_07AD7F: AND.b #$02\n #_07AD81: BNE .go_backwards\n\n #_07AD83: LDA.w $0357\n #_07AD86: AND.b #$01\n #_07AD88: BEQ .not_thick_grass\n\n #_07AD8A: LDA.b #$02\n #_07AD8C: STA.w $0351\n\n #_07AD8F: JSR Link_PermissionForSloshSounds\n #_07AD92: BCS .go_backwards\n\n #_07AD94: LDA.b #$1A ; SFX2.1A\n #_07AD96: JSR PlaySFX_Set2\n\n #_07AD99: BRA .go_backwards\n\n.not_thick_grass\n #_07AD9B: LDA.w $0359\n #_07AD9E: ORA.w $0341\n #_07ADA1: AND.b #$01\n #_07ADA3: BEQ .go_backwards\n\n #_07ADA5: INC.w $0351\n\n #_07ADA8: LDA.b $8A\n #_07ADAA: CMP.b #$70 ; OW 70\n #_07ADAC: BNE .not_mire\n\n #_07ADAE: LDA.b #$1B ; SFX2.1B\n #_07ADB0: JSR PlaySFX_Set2\n\n #_07ADB3: BRA .go_backwards\n\n.not_mire\n #_07ADB5: LDA.b #$1C ; SFX2.1C\n #_07ADB7: JSR PlaySFX_Set2\n\n.go_backwards\n #_07ADBA: JSR HandleIndoorCameraAndDoors\n\n; ---------------------------------------------------------\n\n#EXIT_07ADBD:\n #_07ADBD: RTS", + "file": "bank_07.asm" + }, + { + "name": "CapeSapTimers", + "code": "CapeSapTimers:\n #_07ADBE: db $04 ; normal\n #_07ADBF: db $08 ; 1/2 magic\n #_07ADC0: db $08 ; 1/4 magic\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Cape", + "code": "LinkItem_Cape:\n #_07ADC1: LDA.b $55\n #_07ADC3: BNE .cape_active\n\n #_07ADC5: DEC.w $02E2\n #_07ADC8: BMI .delay_active\n\n #_07ADCA: LDA.b $67\n #_07ADCC: AND.b #$F0\n #_07ADCE: STA.b $67\n\n #_07ADD0: BRL HaltLinkWhenUsingItems\n\n.delay_active\n #_07ADD3: STZ.w $02E2\n\n #_07ADD6: LDA.b $6C\n #_07ADD8: BNE EXIT_07ADBD\n\n #_07ADDA: JSR CheckYButtonPress\n #_07ADDD: BCC EXIT_07ADBD\n\n; ---------------------------------------------------------\n\n #_07ADDF: LDA.b $3A\n #_07ADE1: AND.b #$BF\n #_07ADE3: STA.b $3A\n\n #_07ADE5: LDA.l $7EF36E\n #_07ADE9: BEQ CannotEquipCape\n\n #_07ADEB: STZ.w $0300\n\n #_07ADEE: LDA.b #$01\n #_07ADF0: STA.b $55\n\n #_07ADF2: LDA.l $7EF37B\n #_07ADF6: TAY\n\n #_07ADF7: LDA.w CapeSapTimers,Y\n #_07ADFA: STA.b $4C\n\n #_07ADFC: LDA.b #$14\n #_07ADFE: STA.w $02E2\n\n #_07AE01: LDY.b #$04\n #_07AE03: LDA.b #$23 ; ANCILLA 23\n #_07AE05: JSL AncillaAdd_CapePoof\n\n #_07AE09: LDA.b #$14 ; SFX2.14\n #_07AE0B: JSR PlaySFX_Set2\n\n #_07AE0E: BRA .exit\n\n; =========================================================\n\n.cape_active\n #_07AE10: LDA.b #$01\n #_07AE12: STA.w $037B\n\n #_07AE15: JSR HaltLinkWhenUsingItems\n\n #_07AE18: LDA.b $67\n #_07AE1A: AND.b #$F0\n #_07AE1C: STA.b $67\n\n #_07AE1E: DEC.b $4C\n\n #_07AE20: LDA.b $4C\n #_07AE22: BNE .dont_sap\n\n #_07AE24: LDA.l $7EF37B\n #_07AE28: TAY\n\n #_07AE29: LDA.w CapeSapTimers,Y\n #_07AE2C: STA.b $4C\n\n #_07AE2E: LDA.l $7EF36E\n #_07AE32: DEC A\n #_07AE33: STA.l $7EF36E\n\n #_07AE37: BEQ Link_ForceUnequipCape\n\n.dont_sap\n #_07AE39: DEC.w $02E2\n #_07AE3C: BPL .exit\n\n #_07AE3E: STZ.w $02E2\n\n #_07AE41: LDA.b $F4\n #_07AE43: AND.b #$40\n #_07AE45: BEQ .exit\n\n; =========================================================\n\n#Link_ForceUnequipCape:\n #_07AE47: LDY.b #$04\n #_07AE49: LDA.b #$23 ; ANCILLA 23\n #_07AE4B: JSL AncillaAdd_CapePoof\n\n #_07AE4F: LDA.b #$15 ; SFX2.15\n #_07AE51: JSR PlaySFX_Set2\n\n; =========================================================\n\n#Link_ForceUnequipCape_quietly:\n #_07AE54: LDA.b #$20\n #_07AE56: STA.w $02E2\n\n #_07AE59: STZ.w $037B\n #_07AE5C: STZ.b $55\n #_07AE5E: STZ.w $0360\n\n.exit\n #_07AE61: RTS", + "file": "bank_07.asm" + }, + { + "name": "CannotEquipCape", + "code": "CannotEquipCape:\n #_07AE62: BRL Link_DisplayNoMagicMessage\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HaltLinkWhenUsingItems", + "code": "HaltLinkWhenUsingItems:\n #_07AE65: LDA.b $AD\n #_07AE67: CMP.b #$02\n #_07AE69: BNE .skip\n\n #_07AE6B: LDA.w $0322\n #_07AE6E: AND.b #$03\n #_07AE70: CMP.b #$03\n #_07AE72: BNE .skip\n\n #_07AE74: STZ.b $30\n #_07AE76: STZ.b $31\n\n #_07AE78: STZ.b $67\n\n #_07AE7A: STZ.b $2A\n #_07AE7C: STZ.b $2B\n\n #_07AE7E: STZ.b $6B\n\n.skip\n #_07AE80: LDA.w $02F5\n #_07AE83: BEQ EXIT_07AE87\n\n #_07AE85: STZ.b $67\n\n; ---------------------------------------------------------\n\n#EXIT_07AE87:\n #_07AE87: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleCape_passive_LiftCheck", + "code": "Link_HandleCape_passive_LiftCheck:\n #_07AE88: LDA.w $0308\n #_07AE8B: AND.b #$80\n #_07AE8D: BEQ EXIT_07AE87\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleCape_passive", + "code": "Link_HandleCape_passive:\n #_07AE8F: LDA.b $55\n #_07AE91: BEQ EXIT_07AE87\n\n #_07AE93: LDA.w $0304\n #_07AE96: CMP.b #$13\n #_07AE98: BNE EXIT_07AE87\n\n #_07AE9A: CMP.w $0303\n #_07AE9D: BNE .unequip\n\n #_07AE9F: DEC.b $4C\n\n #_07AEA1: LDA.b $4C\n #_07AEA3: BNE .exit\n\n #_07AEA5: LDA.l $7EF37B\n #_07AEA9: TAY\n\n #_07AEAA: LDA.w CapeSapTimers,Y\n #_07AEAD: STA.b $4C\n\n #_07AEAF: LDA.l $7EF36E\n #_07AEB3: BEQ .exit\n\n #_07AEB5: DEC A\n #_07AEB6: STA.l $7EF36E\n #_07AEBA: BNE .exit\n\n.unequip\n #_07AEBC: JSR Link_ForceUnequipCape\n\n.exit\n #_07AEBF: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_CaneOfSomaria", + "code": "LinkItem_CaneOfSomaria:\n #_07AEC0: BIT.b $3A\n #_07AEC2: BVS .pressed_y\n\n #_07AEC4: LDA.w $02F5\n #_07AEC7: BNE EXIT_07AE87\n\n #_07AEC9: LDA.b $6C\n #_07AECB: BNE EXIT_07AE87\n\n #_07AECD: JSR CheckYButtonPress\n #_07AED0: BCC EXIT_07AE87\n\n; ---------------------------------------------------------\n\n #_07AED2: LDX.b #$04\n\n.next_ancilla\n #_07AED4: LDA.w $0C4A,X\n #_07AED7: CMP.b #$2C ; ANCILLA 2C\n #_07AED9: BEQ .found_block\n\n #_07AEDB: DEX\n #_07AEDC: BPL .next_ancilla\n\n #_07AEDE: LDX.b #$04\n #_07AEE0: JSR LinkCheckMagicCost\n #_07AEE3: BCC EXIT_07AE87\n\n; ---------------------------------------------------------\n\n.found_block\n #_07AEE5: LDA.b #$01\n #_07AEE7: STA.w $0350\n\n #_07AEEA: LDY.b #$01\n #_07AEEC: LDA.b #$2C ; ANCILLA 2C\n #_07AEEE: JSL AncillaAdd_SomariaBlock\n\n #_07AEF2: LDA.w RodAndCaneAnimationTimer\n #_07AEF5: STA.b $3D\n\n #_07AEF7: STZ.b $2E\n #_07AEF9: STZ.w $0300\n #_07AEFC: STZ.w $0301\n\n #_07AEFF: LDA.b #$08\n #_07AF01: TSB.w $037A\n\n; ---------------------------------------------------------\n\n.pressed_y\n #_07AF04: JSR HaltLinkWhenUsingItems\n\n #_07AF07: LDA.b $67\n #_07AF09: AND.b #$F0\n #_07AF0B: STA.b $67\n\n #_07AF0D: DEC.b $3D\n #_07AF0F: BPL EXIT_07AF3A\n\n #_07AF11: LDA.w $0300\n #_07AF14: INC A\n #_07AF15: STA.w $0300\n\n #_07AF18: TAX\n\n #_07AF19: LDA.w RodAndCaneAnimationTimer,X\n #_07AF1C: STA.b $3D\n\n #_07AF1E: CPX.b #$03\n #_07AF20: BNE EXIT_07AF3A\n\n; ---------------------------------------------------------\n\n #_07AF22: STZ.b $5E\n #_07AF24: STZ.w $0300\n\n #_07AF27: STZ.b $3D\n #_07AF29: STZ.w $0350\n\n #_07AF2C: LDA.b $3A\n #_07AF2E: AND.b #$BF\n #_07AF30: STA.b $3A\n\n #_07AF32: LDA.w $037A\n #_07AF35: AND.b #$F7\n #_07AF37: STA.w $037A\n\n; ---------------------------------------------------------\n\n#EXIT_07AF3A:\n #_07AF3A: RTS", + "file": "bank_07.asm" + }, + { + "name": "ByrnaAnimationTimers", + "code": "ByrnaAnimationTimers:\n #_07AF3B: db 19\n #_07AF3C: db 7\n #_07AF3D: db 13\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_CaneOfByrna", + "code": "LinkItem_CaneOfByrna:\n #_07AF3E: JSR SearchForByrnaSpark\n #_07AF41: BCS EXIT_07AF3A\n\n #_07AF43: BIT.b $3A\n #_07AF45: BVS .pressed_y\n\n #_07AF47: LDA.b $6C\n #_07AF49: BNE EXIT_07AF3A\n\n #_07AF4B: JSR CheckYButtonPress\n #_07AF4E: BCC EXIT_07AF3A\n\n; ---------------------------------------------------------\n\n #_07AF50: LDX.b #$08\n #_07AF52: JSR LinkCheckMagicCost\n #_07AF55: BCC .lack_magic\n\n #_07AF57: LDY.b #$00\n #_07AF59: LDA.b #$30 ; ANCILLA 30\n #_07AF5B: JSL AncillaAdd_CaneOfByrnaInitSpark\n\n #_07AF5F: STZ.b $79\n\n #_07AF61: LDA.w ByrnaAnimationTimers\n #_07AF64: STA.b $3D\n\n #_07AF66: STZ.w $030D\n #_07AF69: STZ.w $0300\n\n #_07AF6C: LDA.b #$08\n #_07AF6E: STA.w $037A\n\n #_07AF71: LDA.b #$01\n #_07AF73: TSB.b $50\n\n #_07AF75: STZ.b $2E\n\n; ---------------------------------------------------------\n\n.pressed_y\n #_07AF77: JSR HaltLinkWhenUsingItems\n\n #_07AF7A: LDA.b $67\n #_07AF7C: AND.b #$F0\n #_07AF7E: STA.b $67\n\n #_07AF80: DEC.b $3D\n #_07AF82: BPL EXIT_07AFB4\n\n #_07AF84: LDX.w $0300\n #_07AF87: INX\n #_07AF88: STX.w $0300\n\n #_07AF8B: LDA.w ByrnaAnimationTimers,X\n #_07AF8E: STA.b $3D\n\n #_07AF90: CPX.b #$01\n #_07AF92: BNE .skip_sfx\n\n #_07AF94: PHX\n\n #_07AF95: LDA.b #$2A ; SFX3.2A\n #_07AF97: JSR PlaySFX_Set3\n\n #_07AF9A: PLX\n\n.skip_sfx\n #_07AF9B: CPX.b #$03\n #_07AF9D: BNE EXIT_07AFB4\n\n; ---------------------------------------------------------\n\n.lack_magic\n #_07AF9F: STZ.w $030D\n #_07AFA2: STZ.w $0300\n\n #_07AFA5: LDA.b $3A\n #_07AFA7: AND.b #$80\n #_07AFA9: STA.b $3A\n\n #_07AFAB: STZ.w $037A\n\n #_07AFAE: LDA.b $50\n #_07AFB0: AND.b #$FE\n #_07AFB2: STA.b $50\n\n; ---------------------------------------------------------\n\n#EXIT_07AFB4:\n #_07AFB4: RTS", + "file": "bank_07.asm" + }, + { + "name": "SearchForByrnaSpark", + "code": "SearchForByrnaSpark:\n #_07AFB5: LDA.w $037A\n #_07AFB8: AND.b #$08\n #_07AFBA: BNE .cane_not_equipped\n\n #_07AFBC: LDX.b #$04\n\n.next\n #_07AFBE: LDA.w $0C4A,X\n #_07AFC1: CMP.b #$31 ; ANCILLA 31\n #_07AFC3: BEQ .found_spark\n\n #_07AFC5: DEX\n #_07AFC6: BPL .next\n\n; ---------------------------------------------------------\n\n.cane_not_equipped\n #_07AFC8: CLC\n\n #_07AFC9: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkItem_Net", + "code": "LinkItem_Net:\n #_07AFF8: BIT.b $3A\n #_07AFFA: BVS .y_press\n\n #_07AFFC: LDA.b $6C\n #_07AFFE: BNE EXIT_07AFB4\n\n #_07B000: JSR CheckYButtonPress\n #_07B003: BCC EXIT_07AFB4\n\n; ---------------------------------------------------------\n\n #_07B005: LDA.b $2F\n #_07B007: LSR A\n #_07B008: TAY\n\n #_07B009: LDX.w .pose_offset,Y\n #_07B00C: LDA.w .pose_id,X\n #_07B00F: STA.w $0300\n\n #_07B012: LDA.b #$03\n #_07B014: STA.b $3D\n\n #_07B016: STZ.w $030D\n\n #_07B019: LDA.b #$10\n #_07B01B: STA.w $037A\n\n #_07B01E: LDA.b #$01\n #_07B020: TSB.b $50\n\n #_07B022: STZ.b $2E\n\n #_07B024: LDA.b #$32 ; SFX2.32\n #_07B026: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.y_press\n #_07B029: JSR HaltLinkWhenUsingItems\n\n #_07B02C: LDA.b $67\n #_07B02E: AND.b #$F0\n #_07B030: STA.b $67\n\n #_07B032: DEC.b $3D\n #_07B034: BPL .exit\n\n; ---------------------------------------------------------\n\n #_07B036: LDX.w $030D\n #_07B039: INX\n #_07B03A: STX.w $030D\n\n #_07B03D: LDA.b #$03\n #_07B03F: STA.b $3D\n\n #_07B041: LDA.b $2F\n #_07B043: LSR A\n #_07B044: TAY\n\n #_07B045: LDA.w .pose_offset,Y\n #_07B048: CLC\n #_07B049: ADC.w $030D\n #_07B04C: TAY\n\n #_07B04D: LDA.w .pose_id,Y\n #_07B050: STA.w $0300\n\n #_07B053: CPX.b #$0A\n #_07B055: BNE .exit\n\n; ---------------------------------------------------------\n\n #_07B057: STZ.w $030D\n #_07B05A: STZ.w $0300\n\n #_07B05D: LDA.b $3A\n #_07B05F: AND.b #$80\n #_07B061: STA.b $3A\n\n #_07B063: STZ.w $037A\n\n #_07B066: LDA.b $50\n #_07B068: AND.b #$FE\n #_07B06A: STA.b $50\n\n #_07B06C: LDA.b #$80\n #_07B06E: STA.b $44\n #_07B070: STA.b $45\n\n.exit\n #_07B072: RTS", + "file": "bank_07.asm" + }, + { + "name": "CheckYButtonPress", + "code": "CheckYButtonPress:\n #_07B073: BIT.b $3A\n #_07B075: BVS .fail\n\n #_07B077: LDA.b $46\n #_07B079: BNE .fail\n\n; =========================================================\n\n#CheckYButtonPress_unfiltered:\n #_07B07B: LDA.b $F4\n #_07B07D: AND.b #$40\n #_07B07F: BEQ .fail\n\n #_07B081: TSB.b $3A\n\n #_07B083: SEC\n\n #_07B084: RTS", + "file": "bank_07.asm" + }, + { + "name": "ItemMagicCost", + "code": "ItemMagicCost:\n\n.cost\n #_07B087: db $10, $08, $04 ; rod\n #_07B08A: db $20, $10, $08 ; medallion\n #_07B08D: db $08, $04, $02 ; powder\n #_07B090: db $08, $04, $02\n #_07B093: db $08, $04, $02 ; somaria\n #_07B096: db $10, $08, $04\n #_07B099: db $04, $02, $02 ; lamp\n #_07B09C: db $08, $04, $02\n #_07B09F: db $10, $08, $04 ; byrna\n\n.cost_offset\n #_07B0A2: db $00 ; rod\n #_07B0A3: db $03 ; medallion\n #_07B0A4: db $06 ; powder\n #_07B0A5: db $09\n #_07B0A6: db $0C ; somaria\n #_07B0A7: db $0F\n #_07B0A8: db $12 ; lamp\n #_07B0A9: db $15\n #_07B0AA: db $18 ; byrna\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkCheckMagicCost", + "code": "LinkCheckMagicCost:\n #_07B0AB: STX.b $02\n\n #_07B0AD: LDA.w ItemMagicCost_cost_offset,X\n #_07B0B0: CLC\n #_07B0B1: ADC.l $7EF37B\n #_07B0B5: TAX\n\n #_07B0B6: LDA.w ItemMagicCost_cost,X\n #_07B0B9: STA.b $00\n\n #_07B0BB: LDA.l $7EF36E\n #_07B0BF: BEQ .not_enough_magic\n\n #_07B0C1: SEC\n #_07B0C2: SBC.b $00\n #_07B0C4: CMP.b #$80\n #_07B0C6: BCS .not_enough_magic\n\n #_07B0C8: STA.l $7EF36E\n\n #_07B0CC: SEC\n\n #_07B0CD: RTS", + "file": "bank_07.asm" + }, + { + "name": "Refund_Magic", + "code": "Refund_Magic:\n #_07B0E9: PHB\n #_07B0EA: PHK\n #_07B0EB: PLB\n\n #_07B0EC: LDA.w ItemMagicCost_cost_offset,X\n #_07B0EF: CLC\n #_07B0F0: ADC.l $7EF37B\n #_07B0F4: TAX\n\n #_07B0F5: LDA.w ItemMagicCost_cost,X\n #_07B0F8: STA.b $00\n\n #_07B0FA: LDA.l $7EF36E\n #_07B0FE: CLC\n #_07B0FF: ADC.b $00\n #_07B101: STA.l $7EF36E\n\n #_07B105: PLB\n\n #_07B106: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_ItemReset_FromOverworldThings", + "code": "Link_ItemReset_FromOverworldThings:\n #_07B107: STZ.w $030A\n\n #_07B10A: STZ.b $3B\n\n #_07B10C: STZ.w $0308\n #_07B10F: STZ.w $0309\n #_07B112: STZ.w $0376\n\n #_07B115: LDA.b $50\n #_07B117: AND.b #$FE\n #_07B119: STA.b $50\n\n #_07B11B: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformThrow", + "code": "Link_PerformThrow:\n #_07B11C: LDA.w $0314\n #_07B11F: ORA.w $02EC\n #_07B122: BNE .actually_lifting\n\n #_07B124: JSR Link_ResetSwordAndItemUsage\n\n #_07B127: STZ.b $3B\n\n; ---------------------------------------------------------\n\n #_07B129: LDX.b #$0F\n\n.next_sprite\n #_07B12B: LDA.w $0DD0,X\n #_07B12E: BEQ .free_spot\n\n #_07B130: DEX\n #_07B131: BPL .next_sprite\n\n #_07B133: BRA .bounce_to_exit\n\n; ---------------------------------------------------------\n\n.free_spot\n #_07B135: LDA.w $0368\n #_07B138: CMP.b #$05\n #_07B13A: BEQ .big_rock\n\n #_07B13C: CMP.b #$06\n #_07B13E: BNE .not_big_rock\n\n.big_rock\n #_07B140: LDA.b #$01\n #_07B142: STA.w $0300\n\n #_07B145: BRA .continue_a\n\n; ---------------------------------------------------------\n\n.not_big_rock\n #_07B147: LDA.b $1B\n #_07B149: BEQ .outdoors\n\n #_07B14B: JSL Underworld_LiftAndReplaceLiftable\n\n #_07B14F: BRA .continue_b\n\n.outdoors\n #_07B151: JSL Overworld_HandleLiftableTiles\n\n; ---------------------------------------------------------\n\n.continue_b\n #_07B155: LDX.b #$08\n\n.next_a\n #_07B157: CMP.w LinkToss_liftable_tiles,X\n #_07B15A: BEQ .matched\n\n #_07B15C: DEX\n #_07B15D: BPL .next_a\n\n; ---------------------------------------------------------\n\n.bounce_to_exit\n #_07B15F: BRL EXIT_07B280\n\n; ---------------------------------------------------------\n\n.matched\n #_07B162: LDA.b #$01\n #_07B164: STA.w $0314\n\n #_07B167: TXA\n #_07B168: JSL Sprite_SpawnThrowableTerrain\n\n #_07B16C: ASL.b $F6\n #_07B16E: LSR.b $F6\n\n.actually_lifting\n #_07B170: STZ.w $0300\n\n.continue_a\n #_07B173: STZ.b $3A\n\n #_07B175: LDA.w LinkToss_timer_a\n #_07B178: STA.w $030B\n\n #_07B17B: LDA.b #$01\n #_07B17D: STA.w $0309\n\n #_07B180: LDA.b #$80\n #_07B182: STA.w $0308\n\n #_07B185: STZ.w $030A\n\n #_07B188: LDA.b #$0C\n #_07B18A: STA.b $5E\n\n #_07B18C: STZ.b $2E\n\n #_07B18E: LDA.b $67\n #_07B190: AND.b #$F0\n #_07B192: STA.b $67\n\n #_07B194: LDA.b #$01\n #_07B196: TSB.b $50\n\n; ---------------------------------------------------------\n\n#EXIT_07B198:\n #_07B198: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_LiftCarryThrow", + "code": "Link_APress_LiftCarryThrow:\n #_07B1CA: LDA.w $0308\n #_07B1CD: BEQ EXIT_07B198\n\n #_07B1CF: LDA.w $0309\n #_07B1D2: AND.b #$02\n #_07B1D4: BEQ .dont_toss\n\n #_07B1D6: LDA.w $030B\n #_07B1D9: CMP.b #$05\n #_07B1DB: BCC .dont_toss\n\n #_07B1DD: LDA.w LinkToss_timer_b\n #_07B1E0: STA.w $030B\n\n.dont_toss\n #_07B1E3: LDA.w $0309\n #_07B1E6: BEQ .skip_collision\n\n #_07B1E8: JSR HaltLinkWhenUsingItems\n\n.skip_collision\n #_07B1EB: LDA.w $0309\n #_07B1EE: AND.b #$01\n #_07B1F0: BEQ .dont_reset_anim\n\n #_07B1F2: STZ.b $2E\n #_07B1F4: STZ.b $2D\n\n #_07B1F6: LDA.b $67\n #_07B1F8: AND.b #$F0\n #_07B1FA: STA.b $67\n\n.dont_reset_anim\n #_07B1FC: DEC.w $030B\n\n #_07B1FF: LDA.w $030B\n #_07B202: BNE EXIT_07B198\n\n #_07B204: LDA.w $0309\n #_07B207: AND.b #$02\n #_07B209: BEQ .dont_try_to_reset_strafe\n\n #_07B20B: STZ.w $0308\n #_07B20E: STZ.b $48\n #_07B210: STZ.b $5E\n\n #_07B212: LDA.b $5D\n #_07B214: CMP.b #$18 ; LINKSTATE 18\n #_07B216: BNE .reset_dirlock\n\n #_07B218: LDA.b #$00 ; LINKSTATE 00\n #_07B21A: STA.b $5D\n\n #_07B21C: BRL .reset_dirlock\n\n.dont_try_to_reset_strafe\n #_07B21F: LDA.w $0300\n #_07B222: BEQ .not_doing_heavy_lift\n\n #_07B224: INC A\n #_07B225: CMP.b #$09\n #_07B227: BEQ .reset_dirlock\n\n #_07B229: STA.w $0300\n\n #_07B22C: TAX\n\n #_07B22D: LDA.w LinkToss_heavy_lift_animation_timers,X\n #_07B230: STA.w $030B\n\n #_07B233: LDA.w LinkToss_heavy_lift_animation_steps,X\n #_07B236: STA.w $030A\n\n #_07B239: CPX.b #$06\n #_07B23B: BNE EXIT_07B280\n\n #_07B23D: STZ.w $0B9C\n\n #_07B240: LDA.b $1B\n #_07B242: BEQ .throwing_out_doors\n\n #_07B244: JSL Underworld_LiftAndReplaceLiftable\n\n #_07B248: BRA .continue_indoors\n\n.throwing_out_doors\n #_07B24A: JSL Overworld_HandleLiftableTiles\n\n; ---------------------------------------------------------\n\n.continue_indoors\n #_07B24E: AND.b #$0F\n #_07B250: INC A\n #_07B251: PHA\n\n #_07B252: LDA.b #$18 ; LINKSTATE 18\n #_07B254: STA.b $5D\n\n #_07B256: LDA.b #$01\n #_07B258: STA.w $0314\n\n #_07B25B: PLA\n #_07B25C: JSL Sprite_SpawnThrowableTerrain\n\n #_07B260: ASL.b $F6\n #_07B262: LSR.b $F6\n\n #_07B264: BRA EXIT_07B280\n\n; ---------------------------------------------------------\n\n.not_doing_heavy_lift\n #_07B266: LDX.w $030A\n #_07B269: INX\n\n #_07B26A: LDA.w LinkToss_timer_a,X\n #_07B26D: STA.w $030B\n\n #_07B270: STX.w $030A\n\n #_07B273: CPX.b #$03\n #_07B275: BNE EXIT_07B280\n\n; ---------------------------------------------------------\n\n.reset_dirlock\n #_07B277: STZ.w $0309\n\n #_07B27A: LDA.b $50\n #_07B27C: AND.b #$FE\n #_07B27E: STA.b $50\n\n; ---------------------------------------------------------\n\n#EXIT_07B280:\n #_07B280: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformDash", + "code": "Link_PerformDash:\n #_07B281: LDA.w $02F5\n #_07B284: BNE EXIT_07B280\n\n #_07B286: LDA.w $0314\n #_07B289: ORA.w $02EC\n #_07B28C: BNE EXIT_07B280\n\n #_07B28E: BIT.w $0308\n #_07B291: BMI EXIT_07B280\n\n #_07B293: LDA.b $1B\n #_07B295: BNE .pointless_branch\n\n.pointless_branch\n #_07B297: STZ.b $3B\n\n #_07B299: LDA.b #$1D\n #_07B29B: STA.w $0374\n\n #_07B29E: LDA.b #$40\n #_07B2A0: STA.w $02F1\n\n #_07B2A3: LDA.b #$11 ; LINKSTATE 11\n #_07B2A5: STA.b $5D\n\n #_07B2A7: LDA.b #$01\n #_07B2A9: STA.w $0372\n\n #_07B2AC: LDA.b $3A\n #_07B2AE: AND.b #$80\n #_07B2B0: STA.b $3A\n\n #_07B2B2: STZ.w $0308\n #_07B2B5: STZ.w $0301\n\n #_07B2B8: STZ.b $48\n #_07B2BA: STZ.b $6B\n\n; ---------------------------------------------------------\n\n #_07B2BC: LDA.l $7EF3CC\n #_07B2C0: TAX\n\n #_07B2C1: CMP.w FollowerReactionToDashing,X\n #_07B2C4: BNE Link_APress_NothingB\n\n #_07B2C6: STZ.b $5E\n\n #_07B2C8: LDX.w $02CF\n\n #_07B2CB: LDA.w $1A00,X\n #_07B2CE: STA.w $7EF3CD\n\n #_07B2D1: LDA.w $1A14,X\n #_07B2D4: STA.w $7EF3CE\n\n #_07B2D7: LDA.w $1A28,X\n #_07B2DA: STA.w $7EF3CF\n\n #_07B2DD: LDA.w $1A3C,X\n #_07B2E0: STA.w $7EF3D0\n\n #_07B2E3: LDA.b $EE\n #_07B2E5: STA.w $7EF3D2\n\n #_07B2E8: LDA.b #$40\n #_07B2EA: STA.w $02D2\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_NothingB", + "code": "Link_APress_NothingB:\n #_07B2ED: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformGrab", + "code": "Link_PerformGrab:\n #_07B2EE: LDA.b $3A\n #_07B2F0: AND.b #$80\n #_07B2F2: BEQ .no_press\n\n #_07B2F4: LDA.b $3C\n #_07B2F6: CMP.b #$09\n #_07B2F8: BCS Link_APress_NothingB\n\n.no_press\n #_07B2FA: LDA.b #$01\n #_07B2FC: STA.w $0376\n\n #_07B2FF: TSB.b $50\n\n #_07B301: STZ.b $2E\n #_07B303: STZ.w $030A\n\n #_07B306: LDA.w LinkStrain_timer\n\n #_07B309: STA.w $030B\n #_07B30C: STZ.w $030D\n\n #_07B30F: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkPull_Directions", + "code": "LinkPull_Directions:\n #_07B310: db $04\n #_07B311: db $08\n #_07B312: db $01\n #_07B313: db $02\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkStrain", + "code": "LinkStrain:\n.timer\n #_07B314: db 0, 5, 5, 12, 5, 5, 12\n\n.char\n #_07B31B: db $00, $01, $02, $03, $01, $02, $03\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_PullObject", + "code": "Link_APress_PullObject:\n #_07B322: LDA.b $67\n #_07B324: AND.b #$F0\n #_07B326: STA.b $67\n\n #_07B328: LDA.b $2F\n #_07B32A: LSR A\n #_07B32B: TAX\n\n #_07B32C: LDA.b $F0\n #_07B32E: AND.b #$0F\n #_07B330: BEQ .no_dpad\n\n #_07B332: AND.w LinkPull_Directions,X\n #_07B335: BNE .tick_timer\n\n.no_dpad\n #_07B337: LDX.b #$00\n #_07B339: BRA .set_strain_index\n\n; ---------------------------------------------------------\n\n.tick_timer\n #_07B33B: DEC.w $030B\n #_07B33E: BPL .timer_running\n\n; ---------------------------------------------------------\n\n #_07B340: LDX.w $030D\n #_07B343: INX\n #_07B344: CPX.b #$07\n #_07B346: BNE .set_strain_index\n\n #_07B348: LDX.b #$01\n\n.set_strain_index\n #_07B34A: STX.w $030D\n\n #_07B34D: LDA.w LinkStrain_char,X\n #_07B350: STA.w $030A\n\n #_07B353: LDA.w LinkStrain_timer,X\n #_07B356: STA.w $030B\n\n; ---------------------------------------------------------\n\n.timer_running\n #_07B359: LDA.b $F2\n #_07B35B: AND.b #$80\n #_07B35D: BNE .exit\n\n #_07B35F: STZ.w $030D\n #_07B362: STZ.w $030A\n\n #_07B365: STZ.w $0376\n\n #_07B368: STZ.b $3B\n\n #_07B36A: LDA.b $50\n #_07B36C: AND.b #$FE\n #_07B36E: STA.b $50\n\n.exit\n #_07B370: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformStatueDrag", + "code": "Link_PerformStatueDrag:\n #_07B371: LDA.b #$02\n #_07B373: STA.w $0376\n\n #_07B376: LDA.b #$01\n #_07B378: TSB.b $50\n\n #_07B37A: STZ.b $2E\n #_07B37C: STZ.w $030A\n\n #_07B37F: LDA.w LinkStrain_timer\n #_07B382: STA.w $030B\n #_07B385: STZ.w $030D\n\n #_07B388: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_StatueDrag", + "code": "Link_APress_StatueDrag:\n #_07B389: LDA.b #$14\n #_07B38B: STA.b $5E\n\n #_07B38D: LDA.b $2F\n #_07B38F: LSR A\n #_07B390: TAX\n\n #_07B391: LDA.b $F0\n #_07B393: AND.b #$0F\n #_07B395: BEQ .halted\n\n #_07B397: AND.w LinkPull_Directions,X\n #_07B39A: BNE .dragging\n\n; ---------------------------------------------------------\n\n.halted\n #_07B39C: STZ.b $67\n\n #_07B39E: STZ.b $30\n #_07B3A0: STZ.b $31\n #_07B3A2: STZ.b $2E\n\n #_07B3A4: LDX.b #$00\n #_07B3A6: BRA .set_strain_index\n\n; ---------------------------------------------------------\n\n.dragging\n #_07B3A8: STA.b $67\n\n #_07B3AA: DEC.w $030B\n #_07B3AD: BPL .delay\n\n #_07B3AF: LDX.w $030D\n #_07B3B2: INX\n #_07B3B3: CPX.b #$07\n #_07B3B5: BNE .set_strain_index\n\n #_07B3B7: LDX.b #$01\n\n; ---------------------------------------------------------\n\n.set_strain_index\n #_07B3B9: STX.w $030D\n\n #_07B3BC: LDA.w LinkStrain_char,X\n #_07B3BF: STA.w $030A\n\n #_07B3C2: LDA.w LinkStrain_timer,X\n #_07B3C5: STA.w $030B\n\n; ---------------------------------------------------------\n\n.delay\n #_07B3C8: LDA.b $F2\n #_07B3CA: AND.b #$80\n #_07B3CC: BNE .exit\n\n #_07B3CE: STZ.b $5E\n\n #_07B3D0: STZ.w $02FA\n\n #_07B3D3: STZ.w $030D\n #_07B3D6: STZ.w $030A\n\n #_07B3D9: STZ.w $0376\n\n #_07B3DC: STZ.b $3B\n\n #_07B3DE: LDA.b $50\n #_07B3E0: AND.b #$FE\n #_07B3E2: STA.b $50\n\n.exit\n #_07B3E4: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformRupeePull", + "code": "Link_PerformRupeePull:\n #_07B3E5: LDA.b $2F\n #_07B3E7: BNE Link_APress_RupeePull\n\n #_07B3E9: JSL Link_ResetProperties_A\n\n #_07B3ED: LDA.b #$02\n #_07B3EF: STA.w $0376\n\n #_07B3F2: TSB.b $50\n\n #_07B3F4: STZ.b $2E\n #_07B3F6: STZ.w $030A\n\n #_07B3F9: LDA.w LinkStrain_timer\n #_07B3FC: STA.w $030B\n\n #_07B3FF: STZ.w $030D\n\n #_07B402: LDA.b #$1D ; LINKSTATE 1D\n #_07B404: STA.b $5D\n\n #_07B406: STZ.b $27\n #_07B408: STZ.b $28\n #_07B40A: STZ.b $3A\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_RupeePull", + "code": "Link_APress_RupeePull:\n #_07B40C: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkState_TreePull", + "code": "LinkState_TreePull:\n #_07B416: JSR CacheCameraPropertiesIfOutdoors\n\n #_07B419: LDA.b $4D\n #_07B41B: BEQ .not_recoiling\n\n #_07B41D: BRL HandleLink_From1D\n\n; ---------------------------------------------------------\n\n.not_recoiling\n #_07B420: LDA.w $0376\n #_07B423: BEQ .strain_adjusted\n\n #_07B425: LDA.b $3A\n #_07B427: BNE .continue\n\n #_07B429: BIT.b $F2\n #_07B42B: BPL .no_a_press\n\n #_07B42D: LDA.b $F0\n #_07B42F: AND.b #$04\n #_07B431: BEQ .dont_adjust_strain\n\n #_07B433: STA.b $3A\n\n #_07B435: LDA.b #$22 ; SFX2.22\n #_07B437: JSR PlaySFX_Set2\n\n #_07B43A: BRA .continue\n\n; ---------------------------------------------------------\n\n.no_a_press\n #_07B43C: STZ.w $0376\n #_07B43F: STZ.w $030D\n\n #_07B442: LDA.b #$02\n #_07B444: STA.w $030B\n #_07B447: STZ.w $030A\n\n #_07B44A: STZ.b $50\n\n #_07B44C: LDA.b #$00 ; LINKSTATE 00\n #_07B44E: STA.b $5D\n\n #_07B450: BRA .reset_state\n\n; ---------------------------------------------------------\n\n.continue\n #_07B452: DEC.w $030B\n #_07B455: BPL .dont_adjust_strain\n\n #_07B457: INC.w $030D\n\n #_07B45A: LDX.w $030D\n\n #_07B45D: LDA.w LinkStrain_char,X\n #_07B460: STA.w $030A\n\n #_07B463: LDA.w LinkStrain_timer,X\n #_07B466: STA.w $030B\n\n #_07B469: CPX.b #$07\n #_07B46B: BNE .dont_adjust_strain\n\n; ---------------------------------------------------------\n\n #_07B46D: STZ.w $0376\n #_07B470: STZ.w $030D\n\n #_07B473: LDA.b #$02\n #_07B475: STA.w $030B\n #_07B478: STZ.w $030A\n\n #_07B47B: LDA.b #$01\n #_07B47D: STA.w $0308\n #_07B480: STZ.w $0309\n\n #_07B483: BRA .strain_adjusted\n\n; ---------------------------------------------------------\n\n.dont_adjust_strain\n #_07B485: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.strain_adjusted\n #_07B487: LDA.b $48\n #_07B489: AND.b #$09\n #_07B48B: BNE .reset_direction_and_state\n\n #_07B48D: LDA.w $030D\n #_07B490: CMP.b #$09\n #_07B492: BNE .add_dust\n\n #_07B494: LDA.b $F4\n #_07B496: AND.b #$0F\n #_07B498: BEQ .no_new_direction_press\n\n; ---------------------------------------------------------\n\n.reset_state\n #_07B49A: LDA.b #$00 ; LINKSTATE 00\n #_07B49C: STA.b $5D\n\n #_07B49E: BRL LinkState_Default\n\n; ---------------------------------------------------------\n\n.add_dust\n #_07B4A1: LDY.b #$00\n #_07B4A3: LDA.b #$1E ; ANCILLA 1E\n #_07B4A5: JSL AncillaAdd_DashDust_charging\n\n #_07B4A9: DEC.w $030B\n #_07B4AC: BPL .delay_reset\n\n #_07B4AE: INC.w $030D\n\n #_07B4B1: LDX.w $030D\n\n #_07B4B4: LDA.b #$02\n #_07B4B6: STA.w $030B\n\n #_07B4B9: LDA.w .step,X\n #_07B4BC: STA.w $030A\n\n #_07B4BF: LDA.b #$30\n #_07B4C1: STA.b $27\n\n #_07B4C3: CPX.b #$09\n\n #_07B4C5: BNE .delay_reset\n\n; ---------------------------------------------------------\n\n.reset_direction_and_state\n #_07B4C7: STZ.b $2F\n #_07B4C9: STZ.w $0308\n\n #_07B4CC: STZ.b $50\n\n #_07B4CE: LDA.b #$00 ; LINKSTATE 00\n #_07B4D0: STA.b $5D\n\n #_07B4D2: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_reset\n #_07B4D4: JSR Flag67WithDirections\n\n #_07B4D7: LDA.b $67\n #_07B4D9: AND.b #$03\n #_07B4DB: BNE .is_horizontal\n\n #_07B4DD: STZ.b $28\n\n.is_horizontal\n #_07B4DF: LDA.b $67\n #_07B4E1: AND.b #$0C\n #_07B4E3: BNE .finish_up\n\n #_07B4E5: STZ.b $27\n\n; ---------------------------------------------------------\n\n.finish_up\n #_07B4E7: JSL LinkHop_FindArbitraryLandingSpot\n\n.no_new_direction_press\n #_07B4EB: JSR Link_HandleCardinalCollision\n #_07B4EE: JSR HandleIndoorCameraAndDoors\n\n.exit\n #_07B4F1: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformRead", + "code": "Link_PerformRead:\n #_07B4F2: REP #$30\n\n #_07B4F4: LDA.b $1B\n #_07B4F6: AND.w #$00FF\n #_07B4F9: BEQ .overworld\n\n.underworld\n #_07B4FB: LDA.b $A0\n #_07B4FD: ASL A\n #_07B4FE: TAY\n\n #_07B4FF: LDA.w SignText_Underworld,Y\n #_07B502: BRA .set_message\n\n; ---------------------------------------------------------\n\n.overworld\n #_07B504: LDA.l $7EF3C5\n #_07B508: AND.w #$00FF\n #_07B50B: CMP.w #$0002\n #_07B50E: BCS .rain_over\n\n #_07B510: LDA.w #$003A ; MESSAGE 003A\n #_07B513: BRA .set_message\n\n; ---------------------------------------------------------\n\n.rain_over\n #_07B515: LDA.b $8A\n #_07B517: ASL A\n #_07B518: TAY\n\n #_07B519: LDA.w SignText_Overworld,Y\n\n.set_message\n #_07B51C: STA.w $1CF0\n\n #_07B51F: SEP #$30\n\n #_07B521: JSL Interface_PrepAndDisplayMessage\n\n #_07B525: STZ.b $3B\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_APress_NothingC", + "code": "Link_APress_NothingC:\n #_07B527: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PerformOpenChest", + "code": "Link_PerformOpenChest:\n #_07B574: LDA.b $2F\n #_07B576: BNE EXIT_07B5BF\n\n #_07B578: LDA.w $02E9\n #_07B57B: BNE EXIT_07B5BF\n\n #_07B57D: LDA.b $4D\n #_07B57F: BNE EXIT_07B5BF\n\n #_07B581: STZ.b $3B\n\n #_07B583: LDA.b $76\n #_07B585: JSL OpenChestForItem\n #_07B589: BCC .failed_to_open\n\n #_07B58B: LDA.b #$01\n #_07B58D: STA.w $02E9\n\n #_07B590: LDY.b $0C\n #_07B592: BMI .failed_to_open\n\n #_07B594: LDA.w .overflow_replacement,Y\n #_07B597: STA.b $03\n\n #_07B599: CMP.b #$FF\n #_07B59B: BEQ .no_replacement\n\n #_07B59D: TYA\n #_07B59E: ASL A\n #_07B59F: TAX\n\n #_07B5A0: LDA.l AncillaAdd_ItemReceipt_sram_write+0,X\n #_07B5A4: STA.b $00\n\n #_07B5A6: LDA.l AncillaAdd_ItemReceipt_sram_write+1,X\n #_07B5AA: STA.b $01\n\n #_07B5AC: LDA.b #$7E\n #_07B5AE: STA.b $02\n\n #_07B5B0: LDA.b [$00]\n #_07B5B2: BEQ .no_replacement\n\n #_07B5B4: LDY.b $03\n\n.no_replacement\n #_07B5B6: JSL Link_ReceiveItem\n\n #_07B5BA: BRA EXIT_07B5BF\n\n.failed_to_open\n #_07B5BC: STZ.w $02E9\n\n; ---------------------------------------------------------\n\n#EXIT_07B5BF:\n #_07B5BF: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckNewAPress", + "code": "Link_CheckNewAPress:\n #_07B5C0: LDA.b $3B\n #_07B5C2: AND.b #$80\n #_07B5C4: BNE .fail\n\n #_07B5C6: LDA.b $46\n #_07B5C8: BNE .fail\n\n #_07B5CA: LDA.b $F6\n #_07B5CC: AND.b #$80\n #_07B5CE: BEQ .fail\n\n #_07B5D0: TSB.b $3B\n\n #_07B5D2: SEC\n\n #_07B5D3: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleToss", + "code": "Link_HandleToss:\n #_07B5D6: LDA.b $3B\n #_07B5D8: AND.b #$80\n #_07B5DA: BEQ .unpressed\n\n #_07B5DC: LDA.b $F6\n #_07B5DE: AND.b #$80\n #_07B5E0: BEQ .unpressed\n\n #_07B5E2: LDA.w $0309\n #_07B5E5: AND.b #$01\n #_07B5E7: BNE .unpressed\n\n #_07B5E9: STZ.w $030D ; reset grab\n #_07B5EC: STZ.w $030E\n #_07B5EF: STZ.w $030A\n\n #_07B5F2: STZ.b $3B\n\n #_07B5F4: LDA.b $50\n #_07B5F6: AND.b #$FE\n #_07B5F8: STA.b $50\n\n #_07B5FA: LDA.w $0305\n #_07B5FD: CMP.b #$01\n #_07B5FF: BNE .leave_windows\n\n #_07B601: STZ.b $1E\n #_07B603: STZ.b $1F\n\n.leave_windows\n #_07B605: SEC\n\n #_07B606: RTS", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07B609", + "code": "UNREACHABLE_07B609:\n #_07B609: LDA.b $F2\n #_07B60B: AND.b #$10\n #_07B60D: BNE .r_held\n\n #_07B60F: STZ.b $3B\n\n.r_held\n #_07B611: BIT.b $F0\n #_07B613: BMI .a_held\n\n #_07B615: LDA.b $3A\n #_07B617: AND.b #$DF\n #_07B619: STA.b $3A\n\n.a_held\n #_07B61B: LDA.b $3B\n #_07B61D: AND.b #$10\n #_07B61F: STA.b $00\n\n #_07B621: LDA.b $3A\n #_07B623: AND.b #$A0\n #_07B625: ORA.b $00\n #_07B627: AND.b #$B0\n #_07B629: CMP.b #$30\n #_07B62B: BEQ .fail\n\n #_07B62D: CMP.b #$90\n #_07B62F: BEQ .fail\n\n #_07B631: LDA.b $F2\n #_07B633: AND.b #$10\n #_07B635: BEQ .fail\n\n #_07B637: STA.b $00\n\n #_07B639: LDA.b $F0\n #_07B63B: AND.b #$80\n #_07B63D: BEQ .fail\n\n #_07B63F: LSR A\n #_07B640: LSR A\n #_07B641: STA.b $3A\n\n #_07B643: LDA.b $00\n #_07B645: TSB.b $3B\n\n #_07B647: SEC\n\n #_07B648: RTS", + "file": "bank_07.asm" + }, + { + "name": "StoppedFlags", + "code": "StoppedFlags:\n #_07B64B: db $07\n #_07B64C: db $0B\n #_07B64D: db $0D\n #_07B64E: db $0E\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleDiagonalCollision", + "code": "Link_HandleDiagonalCollision:\n #_07B64F: JSR CheckIfRoomNeedsDoubleLayerCheck\n #_07B652: BCC .no_layer_change\n\n #_07B654: JSR FlagObstructions\n #_07B657: JSR CreateVelocityFromMovingBackground\n\n.no_layer_change\n #_07B65A: LDA.b $67\n #_07B65C: AND.b #$0F\n #_07B65E: STA.b $67\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagObstructions", + "code": "FlagObstructions:\n #_07B660: LDA.b #$0F\n #_07B662: STA.b $42\n #_07B664: STA.b $43\n\n #_07B666: STZ.b $6A\n\n #_07B668: LDA.b $67\n #_07B66A: AND.b #$0C\n #_07B66C: BNE FlagObstructions_vertical_component\n\n #_07B66E: BRL Link_UpdateDiagonalMovementFlags\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagObstructions_vertical_component", + "code": "FlagObstructions_vertical_component:\n #_07B671: INC.b $6A\n\n #_07B673: LDY.b #$00\n\n #_07B675: AND.b #$08\n #_07B677: BNE .walking_up\n\n #_07B679: LDY.b #$02\n\n.walking_up\n #_07B67B: TYA\n #_07B67C: LSR A\n #_07B67D: STA.b $66\n\n #_07B67F: JSR TileDetect_Movement_VerticalSlopes\n\n #_07B682: LDA.b $0E\n #_07B684: AND.b #$30\n #_07B686: BEQ .no_obstruction\n\n #_07B688: LDA.b $62\n #_07B68A: AND.b #$02\n #_07B68C: BNE .no_obstruction\n\n #_07B68E: LDA.b $0E\n #_07B690: AND.b #$30\n #_07B692: LSR A\n #_07B693: LSR A\n #_07B694: LSR A\n #_07B695: LSR A\n #_07B696: AND.b $67\n #_07B698: BNE .no_obstruction\n\n #_07B69A: LDY.b #$02\n\n #_07B69C: LDA.b $67\n #_07B69E: AND.b #$03\n #_07B6A0: BEQ .no_obstruction\n\n #_07B6A2: AND.b #$02\n #_07B6A4: BNE .going_diagonal\n\n #_07B6A6: LDY.b #$03\n #_07B6A8: BRA .going_diagonal\n\n.no_obstruction\n #_07B6AA: LDA.w $046C\n #_07B6AD: BEQ .no_layer_junk\n\n #_07B6AF: LDA.b $0E\n #_07B6B1: AND.b #$03\n #_07B6B3: BNE .dont_use_last_direction_yet\n #_07B6B5: BRA FlagObstructions_horizontal_component\n\n.no_layer_junk\n #_07B6B7: LDA.b $4D\n #_07B6B9: BEQ .dont_use_last_direction_yet\n\n #_07B6BB: LDA.b $0C\n #_07B6BD: AND.b #$03\n #_07B6BF: BEQ .dont_use_last_direction_yet\n #_07B6C1: BRA .flag_based_on_last_direction\n\n.dont_use_last_direction_yet\n #_07B6C3: LDA.b $0E\n #_07B6C5: AND.b #$03\n #_07B6C7: BEQ FlagObstructions_horizontal_component\n\n #_07B6C9: STZ.b $6B\n\n #_07B6CB: LDA.w $034A\n #_07B6CE: BEQ .flag_based_on_last_direction\n\n #_07B6D0: LDA.w $02E8\n #_07B6D3: AND.b #$03\n #_07B6D5: BNE .flag_based_on_last_direction\n\n #_07B6D7: LDA.b $67\n #_07B6D9: AND.b #$03\n #_07B6DB: BEQ .flag_based_on_last_direction\n\n #_07B6DD: STZ.w $033C\n #_07B6E0: STZ.w $033D\n #_07B6E3: STZ.w $032F\n #_07B6E6: STZ.w $0330\n #_07B6E9: STZ.w $032B\n #_07B6EC: STZ.w $032C\n #_07B6EF: STZ.w $0334\n #_07B6F2: STZ.w $0335\n\n.flag_based_on_last_direction\n #_07B6F5: LDA.b #$01\n #_07B6F7: STA.w $0302\n\n #_07B6FA: LDY.b $66\n\n.going_diagonal\n #_07B6FC: LDA.w StoppedFlags,Y\n #_07B6FF: STA.b $42\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagObstructions_horizontal_component", + "code": "FlagObstructions_horizontal_component:\n #_07B701: LDA.b $67\n #_07B703: AND.b #$03\n #_07B705: BNE .moving_horizontally\n\n #_07B707: BRL Link_UpdateDiagonalMovementFlags\n\n.moving_horizontally\n #_07B70A: INC.b $6A\n\n #_07B70C: LDY.b #$04\n #_07B70E: AND.b #$02\n #_07B710: BNE .moving_left\n\n #_07B712: LDY.b #$06\n\n.moving_left\n #_07B714: TYA\n #_07B715: LSR A\n #_07B716: STA.b $66\n\n #_07B718: JSR TileDetect_Movement_HorizontalSlopes\n\n #_07B71B: LDA.b $0E\n #_07B71D: AND.b #$30\n #_07B71F: BEQ .no_obstruction\n\n #_07B721: LDA.b $62\n #_07B723: AND.b #$02\n #_07B725: BEQ .no_obstruction\n\n #_07B727: LDA.b $0E\n #_07B729: AND.b #$30\n #_07B72B: LSR A\n #_07B72C: LSR A\n #_07B72D: AND.b $67\n #_07B72F: BNE .no_obstruction\n\n #_07B731: LDY.b #$00\n\n #_07B733: LDA.b $67\n #_07B735: AND.b #$0C\n #_07B737: BEQ .no_obstruction\n\n #_07B739: AND.b #$08\n #_07B73B: BNE .going_diagonal\n\n #_07B73D: LDY.b #$01\n #_07B73F: BRA .going_diagonal\n\n.no_obstruction\n #_07B741: LDA.w $046C\n #_07B744: BEQ .no_layer_junk\n\n #_07B746: LDA.b $0E\n #_07B748: AND.b #$03\n #_07B74A: BNE .dont_use_last_direction_yet\n #_07B74C: BRA .adjust_move_flags_with_obstruction\n\n.no_layer_junk\n #_07B74E: LDA.b $4D\n #_07B750: BEQ .dont_use_last_direction_yet\n\n #_07B752: LDA.b $0C\n #_07B754: AND.b #$03\n #_07B756: BEQ .dont_use_last_direction_yet\n #_07B758: BRA .flag_based_on_last_direction\n\n.dont_use_last_direction_yet\n #_07B75A: LDA.b $0E\n #_07B75C: AND.b #$03\n #_07B75E: BEQ .adjust_move_flags_with_obstruction\n\n #_07B760: STZ.b $6B\n\n #_07B762: LDA.w $034A\n #_07B765: BEQ .flag_based_on_last_direction\n\n #_07B767: LDA.w $02E8\n #_07B76A: AND.b #$03\n #_07B76C: BNE .flag_based_on_last_direction\n\n #_07B76E: LDA.b $67\n #_07B770: AND.b #$0C\n #_07B772: BEQ .flag_based_on_last_direction\n\n #_07B774: STZ.w $033E\n #_07B777: STZ.w $033F\n #_07B77A: STZ.w $0331\n #_07B77D: STZ.w $0332\n #_07B780: STZ.w $032D\n #_07B783: STZ.w $032E\n #_07B786: STZ.w $0336\n #_07B789: STZ.w $0337\n\n.flag_based_on_last_direction\n #_07B78C: LDA.b #$01\n #_07B78E: STA.w $0302\n\n #_07B791: LDY.b $66\n\n.going_diagonal\n #_07B793: LDA.w StoppedFlags,Y\n #_07B796: STA.b $43\n\n.adjust_move_flags_with_obstruction\n #_07B798: LDA.b $67\n #_07B79A: AND.b $42\n #_07B79C: AND.b $43\n #_07B79E: STA.b $67\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_UpdateDiagonalMovementFlags", + "code": "Link_UpdateDiagonalMovementFlags:\n #_07B7A0: LDA.b $67\n #_07B7A2: AND.b #$0F\n #_07B7A4: BEQ .dont_update_direction\n\n #_07B7A6: LDA.b $6B\n #_07B7A8: AND.b #$0F\n #_07B7AA: BEQ .dont_update_direction\n\n #_07B7AC: STA.b $67\n\n.dont_update_direction\n #_07B7AE: LDA.b $6A\n\n #_07B7B0: STZ.b $6A\n\n #_07B7B2: CMP.b #$02\n #_07B7B4: BNE .exit\n\n #_07B7B6: LDY.b #$01\n\n #_07B7B8: LDA.b $2F\n #_07B7BA: AND.b #$04\n #_07B7BC: BEQ .not_facing_left\n\n #_07B7BE: LDY.b #$02\n\n.not_facing_left\n #_07B7C0: STY.b $6A\n\n.exit\n #_07B7C2: RTS", + "file": "bank_07.asm" + }, + { + "name": "AutoMove49Directions", + "code": "AutoMove49Directions:\n #_07B7C3: db $08\n #_07B7C4: db $04\n #_07B7C5: db $02\n #_07B7C6: db $01\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleCardinalCollision", + "code": "Link_HandleCardinalCollision:\n #_07B7C7: STZ.b $6E\n #_07B7C9: STZ.b $38\n\n #_07B7CB: LDA.b $6B\n #_07B7CD: AND.b #$30\n #_07B7CF: BNE .no_kickback\n\n #_07B7D1: JSR Link_HandleDiagonalKickback\n\n #_07B7D4: LDA.b $6D\n #_07B7D6: BEQ .no_kickback\n\n #_07B7D8: BRL CheckCollisionSingleLayerRun\n\n; ---------------------------------------------------------\n\n.no_kickback\n #_07B7DB: JSR CheckIfRoomNeedsDoubleLayerCheck\n #_07B7DE: BCC CheckCollisionSingleLayerRun\n\n #_07B7E0: LDA.w $046C\n #_07B7E3: CMP.b #$02\n #_07B7E5: BCC .run_vertical_first\n\n #_07B7E7: LDA.w $046C\n #_07B7EA: CMP.b #$03\n #_07B7EC: BEQ .run_vertical_first\n\n #_07B7EE: LDA.b #$02\n #_07B7F0: STA.w $0315\n\n #_07B7F3: REP #$20\n\n #_07B7F5: JSR TileDetect_BigArea\n\n #_07B7F8: SEP #$20\n\n #_07B7FA: LDA.b $0E\n #_07B7FC: STA.w $0316\n #_07B7FF: BEQ .run_vertical_first\n\n #_07B801: LDA.b $30\n #_07B803: STA.b $00\n\n #_07B805: CLC\n #_07B806: ADC.w $0310\n #_07B809: STA.b $30\n\n #_07B80B: LDA.b $31\n #_07B80D: STA.b $01\n\n #_07B80F: CLC\n #_07B810: ADC.w $0312\n #_07B813: STA.b $31\n\n #_07B815: LDA.b $0E\n #_07B817: CMP.b #$0C\n #_07B819: BEQ .run_vertical_first\n\n #_07B81B: CMP.b #$03\n #_07B81D: BEQ .run_vertical_first\n\n #_07B81F: CMP.b #$0A\n #_07B821: BEQ .run_horizontal_first\n\n #_07B823: CMP.b #$05\n #_07B825: BEQ .run_horizontal_first\n\n #_07B827: AND.b #$0C\n #_07B829: BNE .detected_on_axis\n\n #_07B82B: LDA.b $0E\n #_07B82D: AND.b #$03\n #_07B82F: BNE .detected_on_axis\n\n #_07B831: BRA .run_vertical_first\n\n.detected_on_axis\n #_07B833: LDA.b $00\n #_07B835: BNE .run_horizontal_first\n\n #_07B837: LDA.b $01\n #_07B839: BEQ .run_vertical_first\n\n #_07B83B: LDA.w $0310\n #_07B83E: BPL .run_horizontal_first\n\n.run_vertical_first\n #_07B840: JSR RunSlopeCollisionChecks_VerticalFirst\n #_07B843: BRA .continue\n\n.run_horizontal_first\n #_07B845: JSR RunSlopeCollisionChecks_HorizontalFirst\n\n.continue\n #_07B848: JSR CreateVelocityFromMovingBackground\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CheckCollisionSingleLayerRun", + "code": "CheckCollisionSingleLayerRun:\n #_07B84B: LDA.w $046C\n #_07B84E: CMP.b #$02\n #_07B850: BEQ CheckCollisionWithMovingWallLayer\n\n #_07B852: CMP.b #$03\n #_07B854: BEQ FlagAndRunSlopeChecks_HorizontalFirst\n\n #_07B856: CMP.b #$04\n #_07B858: BEQ FlagAndRunSlopeChecks_VerticalFirst\n\n #_07B85A: LDA.b $30\n #_07B85C: ORA.b $31\n #_07B85E: BNE FlagAndRunSlopeChecks_VerticalFirst\n\n #_07B860: LDA.b $5D\n #_07B862: CMP.b #$13 ; LINKSTATE 13\n #_07B864: BEQ .skip_pit_stuff\n\n #_07B866: CMP.b #$08 ; LINKSTATE 08\n #_07B868: BEQ .skip_pit_stuff\n\n #_07B86A: CMP.b #$09 ; LINKSTATE 09\n #_07B86C: BEQ .skip_pit_stuff\n\n #_07B86E: CMP.b #$0A ; LINKSTATE 0A\n #_07B870: BEQ .skip_pit_stuff\n\n #_07B872: CMP.b #$03 ; LINKSTATE 03\n #_07B874: BEQ .skip_pit_stuff\n\n #_07B876: JSR TileDetect_BigArea\n\n #_07B879: LDA.b $59\n #_07B87B: AND.b #$0F\n #_07B87D: BEQ .skip_pit_stuff\n\n #_07B87F: LDA.b #$01 ; LINKSTATE 01\n #_07B881: STA.b $5D\n\n #_07B883: LDA.w $0372\n #_07B886: BNE .skip_pit_stuff\n\n #_07B888: LDA.b #$04\n #_07B88A: STA.b $5E\n\n.skip_pit_stuff\n #_07B88C: BRL CalculateSaveFlagVelocity\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CheckCollisionWithMovingWallLayer", + "code": "CheckCollisionWithMovingWallLayer:\n #_07B88F: JSR TileDetect_BigArea\n\n #_07B892: LDA.b $0E\n #_07B894: ORA.w $0316\n #_07B897: CMP.b #$0F\n #_07B899: BNE FlagAndRunSlopeChecks_VerticalFirst\n\n #_07B89B: LDA.w $031F\n #_07B89E: BNE .actively_blinking\n\n #_07B8A0: LDA.b #$3A\n #_07B8A2: STA.w $031F\n\n.actively_blinking\n #_07B8A5: LDA.b $67\n #_07B8A7: BNE FlagAndRunSlopeChecks_VerticalFirst\n\n #_07B8A9: LDA.w $0310\n #_07B8AC: BEQ .no_moving_floor_y\n\n #_07B8AE: LDA.b $30\n #_07B8B0: EOR.b #$FF\n #_07B8B2: INC A\n #_07B8B3: STA.b $30\n\n.no_moving_floor_y\n #_07B8B5: LDA.w $0312\n #_07B8B8: BEQ FlagAndRunSlopeChecks_VerticalFirst\n\n #_07B8BA: LDA.b $31\n #_07B8BC: EOR.b #$FF\n #_07B8BE: INC A\n #_07B8BF: STA.b $31\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagAndRunSlopeChecks_VerticalFirst", + "code": "FlagAndRunSlopeChecks_VerticalFirst:\n #_07B8C1: LDA.b #$01\n #_07B8C3: STA.w $0315\n\n #_07B8C6: JSR RunSlopeCollisionChecks_VerticalFirst\n\n #_07B8C9: BRA CalculateSaveFlagVelocity\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagAndRunSlopeChecks_HorizontalFirst", + "code": "FlagAndRunSlopeChecks_HorizontalFirst:\n #_07B8CB: LDA.b #$01\n #_07B8CD: STA.w $0315\n\n #_07B8D0: JSR RunSlopeCollisionChecks_HorizontalFirst\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CalculateSaveFlagVelocity", + "code": "CalculateSaveFlagVelocity:\n #_07B8D3: LDY.b #$00\n #_07B8D5: JSR TileDetect_MainHandler\n\n #_07B8D8: LDA.b $6A\n #_07B8DA: BEQ .not_moving_diagonal\n\n #_07B8DC: STZ.b $6B\n\n.not_moving_diagonal\n #_07B8DE: LDA.b $5D\n #_07B8E0: CMP.b #$0B ; LINKSTATE 0B\n #_07B8E2: BEQ .no_y_movement\n\n #_07B8E4: LDY.b #$08\n\n #_07B8E6: LDA.b $20\n #_07B8E8: SEC\n #_07B8E9: SBC.b $3E\n #_07B8EB: STA.b $30\n\n #_07B8ED: BEQ .no_y_movement\n #_07B8EF: BMI .negative_y_movement\n\n #_07B8F1: LDY.b #$04\n\n.negative_y_movement\n #_07B8F3: LDA.b $67\n #_07B8F5: AND.b #$03\n #_07B8F7: STA.b $67\n\n #_07B8F9: TYA\n #_07B8FA: TSB.b $67\n\n.no_y_movement\n #_07B8FC: LDY.b #$02\n\n #_07B8FE: LDA.b $22\n #_07B900: SEC\n #_07B901: SBC.b $3F\n #_07B903: STA.b $31\n\n #_07B905: BEQ .no_x_movement\n #_07B907: BMI .negative_x_movement\n\n #_07B909: LDY.b #$01\n\n.negative_x_movement\n #_07B90B: LDA.b $67\n #_07B90D: AND.b #$0C\n #_07B90F: STA.b $67\n\n #_07B911: TYA\n #_07B912: TSB.b $67\n\n.no_x_movement\n #_07B914: LDA.b $1B\n #_07B916: BEQ .exit\n\n #_07B918: LDA.w $046C\n #_07B91B: CMP.b #$04\n #_07B91D: BNE .exit\n\n #_07B91F: LDA.b $5D\n #_07B921: CMP.b #$04 ; LINKSTATE 04\n #_07B923: BNE .exit\n\n #_07B925: LDY.b #$F7\n\n #_07B927: LDA.w $0310\n #_07B92A: BEQ .no_floor_y_velocity\n #_07B92C: BMI .negative_floor_y_velocity\n\n #_07B92E: LDY.b #$FB\n\n.negative_floor_y_velocity\n #_07B930: EOR.b #$FF\n #_07B932: INC A\n #_07B933: CLC\n #_07B934: ADC.b $30\n #_07B936: BNE .no_floor_y_velocity\n\n #_07B938: TYA\n #_07B939: AND.b $67\n #_07B93B: STA.b $67\n\n.no_floor_y_velocity\n #_07B93D: LDY.b #$FD\n\n #_07B93F: LDA.w $0312\n #_07B942: BEQ .exit\n #_07B944: BMI .negative_floor_x_velocity\n\n #_07B946: LDY.b #$FE\n\n.negative_floor_x_velocity\n #_07B948: EOR.b #$FF\n #_07B94A: INC A\n #_07B94B: CLC\n #_07B94C: ADC.b $31\n #_07B94E: BNE .exit\n\n #_07B950: TYA\n #_07B951: AND.b $67\n #_07B953: STA.b $67\n\n.exit\n #_07B955: RTS", + "file": "bank_07.asm" + }, + { + "name": "RunSlopeCollisionChecks_VerticalFirst", + "code": "RunSlopeCollisionChecks_VerticalFirst:\n #_07B956: LDA.b $6B\n #_07B958: AND.b #$20\n #_07B95A: BNE .moving_horizontally_into_slope\n\n #_07B95C: JSR StartMovementCollisionChecks_Vertical\n\n.moving_horizontally_into_slope\n #_07B95F: LDA.b $6B\n #_07B961: AND.b #$10\n #_07B963: BNE .exit\n\n #_07B965: JSR StartMovementCollisionChecks_Horizontal\n\n.exit\n #_07B968: RTS", + "file": "bank_07.asm" + }, + { + "name": "RunSlopeCollisionChecks_HorizontalFirst", + "code": "RunSlopeCollisionChecks_HorizontalFirst:\n #_07B969: LDA.b $6B\n #_07B96B: AND.b #$10\n #_07B96D: BNE .moving_vertically_into_slope\n\n #_07B96F: JSR StartMovementCollisionChecks_Horizontal\n\n.moving_vertically_into_slope\n #_07B972: LDA.b $6B\n #_07B974: AND.b #$20\n #_07B976: BNE .exit\n\n #_07B978: JSR StartMovementCollisionChecks_Vertical\n\n.exit\n #_07B97B: RTS", + "file": "bank_07.asm" + }, + { + "name": "CheckIfRoomNeedsDoubleLayerCheck", + "code": "CheckIfRoomNeedsDoubleLayerCheck:\n #_07B97C: LDA.w $046C\n #_07B97F: BEQ .no_layer_change\n\n #_07B981: CMP.b #$04\n #_07B983: BEQ .no_layer_change\n\n #_07B985: CMP.b #$02\n #_07B987: BCC .change_layer\n\n #_07B989: CMP.b #$03\n #_07B98B: BNE .useless\n\n.useless\n #_07B98D: REP #$20\n\n #_07B98F: LDA.b $E6\n #_07B991: SEC\n #_07B992: SBC.b $E8\n\n #_07B994: CLC\n #_07B995: ADC.b $20\n #_07B997: STA.b $20\n #_07B999: STA.w $0318\n\n #_07B99C: LDA.b $E0\n #_07B99E: SEC\n #_07B99F: SBC.b $E2\n\n #_07B9A1: CLC\n #_07B9A2: ADC.b $22\n #_07B9A4: STA.b $22\n #_07B9A6: STA.w $031A\n\n #_07B9A9: SEP #$20\n\n.change_layer\n #_07B9AB: LDA.b #$01\n #_07B9AD: STA.b $EE\n\n #_07B9AF: SEC\n\n #_07B9B0: RTS", + "file": "bank_07.asm" + }, + { + "name": "CreateVelocityFromMovingBackground", + "code": "CreateVelocityFromMovingBackground:\n #_07B9B3: LDA.w $046C\n #_07B9B6: CMP.b #$01\n #_07B9B8: BEQ .reset_and_exit\n\n #_07B9BA: REP #$20\n\n #_07B9BC: LDA.b $20\n #_07B9BE: SEC\n #_07B9BF: SBC.w $0318\n #_07B9C2: STA.b $00\n\n #_07B9C4: LDA.b $22\n #_07B9C6: SEC\n #_07B9C7: SBC.w $031A\n #_07B9CA: STA.b $02\n\n #_07B9CC: LDA.b $E8\n #_07B9CE: SEC\n #_07B9CF: SBC.b $E6\n #_07B9D1: CLC\n #_07B9D2: ADC.b $20\n #_07B9D4: STA.b $20\n\n #_07B9D6: LDA.b $E2\n #_07B9D8: SEC\n #_07B9D9: SBC.b $E0\n #_07B9DB: CLC\n #_07B9DC: ADC.b $22\n #_07B9DE: STA.b $22\n\n #_07B9E0: SEP #$20\n\n #_07B9E2: LDA.b $67\n #_07B9E4: BEQ .reset_and_exit\n\n #_07B9E6: LDA.b $30\n #_07B9E8: CLC\n #_07B9E9: ADC.b $00\n #_07B9EB: STA.b $30\n\n #_07B9ED: LDA.b $31\n #_07B9EF: CLC\n #_07B9F0: ADC.b $02\n #_07B9F2: STA.b $31\n\n.reset_and_exit\n #_07B9F4: STZ.b $EE\n\n #_07B9F6: RTS", + "file": "bank_07.asm" + }, + { + "name": "RupeeTileOffset_y", + "code": "RupeeTileOffset_y:\n #_07B9F7: dw $0008, $0018, $0010, $0010\n", + "file": "bank_07.asm" + }, + { + "name": "RupeeTileOffset_x", + "code": "RupeeTileOffset_x:\n #_07B9FF: dw $0008, $0008, $0000, $000F\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "SpikeDamageValues", + "code": "SpikeDamageValues:\n #_07BA07: db $08 ; green\n #_07BA08: db $08 ; blue\n #_07BA09: db $08 ; red\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Vertical", + "code": "StartMovementCollisionChecks_Vertical:\n #_07BA0A: LDA.b $30\n #_07BA0C: BNE .moving_on_axis\n\n #_07BA0E: RTS", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Vertical_HandleIndoors", + "code": "StartMovementCollisionChecks_Vertical_HandleIndoors:\n #_07BA35: LDA.w $0308\n #_07BA38: BMI .carrying_something\n\n #_07BA3A: LDA.b $46\n #_07BA3C: BEQ .not_taking_damage\n\n.carrying_something\n #_07BA3E: LDA.b $0E\n #_07BA40: LSR A\n #_07BA41: LSR A\n #_07BA42: LSR A\n #_07BA43: LSR A\n #_07BA44: TSB.b $0E\n\n #_07BA46: BRL ResetDoorPropsIfMovingWall_Vertical_door_pre\n\n; ---------------------------------------------------------\n\n.not_taking_damage\n #_07BA49: LDA.b $6C\n #_07BA4B: CMP.b #$02\n #_07BA4D: BNE HandleAutoDoorFlagging_Vertical\n\n #_07BA4F: LDA.b $6A\n #_07BA51: BNE .not_moving_diagonally\n\n #_07BA53: LDA.w $046C\n #_07BA56: CMP.b #$03\n #_07BA58: BNE .no_moving_floor\n\n #_07BA5A: LDA.b $EE\n #_07BA5C: BEQ .no_moving_floor\n\n #_07BA5E: BRL CheckForMasksRupeesConveyors_Vertical\n\n.no_moving_floor\n #_07BA61: JSR Link_AddInVelocityY\n #_07BA64: BRL ChangeAxisOfPerpendicularDoorMovement_Vertical\n\n.not_moving_diagonally\n #_07BA67: LDA.b $62\n #_07BA69: BEQ HandleAutoDoorFlagging_Vertical\n\n #_07BA6B: JSR Link_AddInVelocityY\n\n #_07BA6E: BRA ResetDoorPropsIfMovingWall_Vertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleAutoDoorFlagging_Vertical", + "code": "HandleAutoDoorFlagging_Vertical:\n #_07BA70: LDA.b $0E\n #_07BA72: AND.b #$70\n #_07BA74: BEQ ResetDoorPropsIfMovingWall_Vertical_door_pre\n\n #_07BA76: STZ.b $05\n\n #_07BA78: LDA.b $0F\n #_07BA7A: AND.b #$07\n #_07BA7C: BEQ .no_auto_move\n\n #_07BA7E: LDY.b #$00\n\n #_07BA80: LDA.b $30\n #_07BA82: BMI .negative_y\n\n #_07BA84: LDY.b #$01\n\n.negative_y\n #_07BA86: LDA.w AutoMove49Directions,Y\n #_07BA89: STA.b $49\n\n; ---------------------------------------------------------\n\n.no_auto_move\n #_07BA8B: LDA.b #$01\n #_07BA8D: STA.b $6C\n\n #_07BA8F: STZ.w $03F3\n\n #_07BA92: LDA.b $0E\n #_07BA94: AND.b #$70\n #_07BA96: CMP.b #$70\n #_07BA98: BEQ .dont_snap\n\n #_07BA9A: LDA.b $0E\n #_07BA9C: AND.b #$05\n #_07BA9E: BNE .handle_falling_too\n\n #_07BAA0: LDA.b $0E\n #_07BAA2: AND.b #$20\n #_07BAA4: BNE .dont_snap\n\n #_07BAA6: BRA ResetDoorPropsIfMovingWall_Vertical_door_pre\n\n.handle_falling_too\n #_07BAA8: STZ.b $6B\n\n #_07BAAA: JSR Link_AddInVelocityYFalling\n #_07BAAD: JSR CalculateSnapScratch_Vertical\n\n #_07BAB0: STZ.b $6C\n\n #_07BAB2: LDA.b $0E\n #_07BAB4: AND.b #$20\n #_07BAB6: BEQ .dont_snap\n\n #_07BAB8: LDA.b $0E\n #_07BABA: AND.b #$01\n #_07BABC: BNE .dont_snap\n\n #_07BABE: LDA.b $22\n #_07BAC0: AND.b #$07\n #_07BAC2: CMP.b #$01\n #_07BAC4: BNE .dont_snap\n\n #_07BAC6: LDA.b $22\n #_07BAC8: AND.b #$F8\n #_07BACA: STA.b $22\n\n.dont_snap\n #_07BACC: LDA.w $0315\n #_07BACF: AND.b #$02\n #_07BAD1: BNE .exit\n\n #_07BAD3: LDA.b $50\n #_07BAD5: AND.b #$FD\n #_07BAD7: STA.b $50\n\n.exit\n #_07BAD9: RTS", + "file": "bank_07.asm" + }, + { + "name": "ResetDoorPropsIfMovingWall_Vertical_door_pre", + "code": "ResetDoorPropsIfMovingWall_Vertical_door_pre:\n #_07BADA: LDA.w $0315\n #_07BADD: AND.b #$02\n #_07BADF: BNE ResetDoorPropsIfMovingWall_Vertical\n\n #_07BAE1: STZ.b $6C\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "ResetDoorPropsIfMovingWall_Vertical", + "code": "ResetDoorPropsIfMovingWall_Vertical:\n #_07BAE3: LDA.w $0315\n #_07BAE6: AND.b #$02\n #_07BAE8: BNE CheckForMasksRupeesConveyors_Vertical\n\n #_07BAEA: LDA.b $50\n #_07BAEC: AND.b #$FD\n #_07BAEE: STA.b $50\n\n #_07BAF0: STZ.b $49\n #_07BAF2: STZ.b $EF\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CheckForMasksRupeesConveyors_Vertical", + "code": "CheckForMasksRupeesConveyors_Vertical:\n #_07BAF4: LDA.b $0E\n #_07BAF6: AND.b #$07\n #_07BAF8: BNE HandleMasksRupeesConveyors_Vertical\n\n #_07BAFA: LDA.b $0C\n #_07BAFC: AND.b #$05\n #_07BAFE: BEQ HandleMasksRupeesConveyors_Vertical\n\n #_07BB00: STZ.w $03F3\n\n #_07BB03: JSR FlagMovingIntoSlopes_Vertical\n\n #_07BB06: LDA.b $6B\n #_07BB08: AND.b #$0F\n #_07BB0A: BEQ HandleMasksRupeesConveyors_Vertical\n\n #_07BB0C: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleMasksRupeesConveyors_Vertical", + "code": "HandleMasksRupeesConveyors_Vertical:\n #_07BB0D: STZ.b $6B\n\n #_07BB0F: LDA.w $02E7\n #_07BB12: AND.b #$20\n #_07BB14: BEQ .no_chest_above\n\n #_07BB16: LDA.b $0E\n #_07BB18: PHA\n\n #_07BB19: LDA.b $0F\n #_07BB1B: PHA\n\n #_07BB1C: LDA.w $02EA\n #_07BB1F: JSL OpenChestForItem\n\n #_07BB23: STZ.w $02EA\n\n #_07BB26: PLA\n #_07BB27: STA.b $0F\n\n #_07BB29: PLA\n #_07BB2A: STA.b $0E\n\n; ---------------------------------------------------------\n\n.no_chest_above\n #_07BB2C: LDA.b $EE\n #_07BB2E: BNE .lower_layer\n\n #_07BB30: LDA.w $034C\n #_07BB33: AND.b #$07\n #_07BB35: BEQ .no_mask1C\n\n #_07BB37: LDA.b #$01\n #_07BB39: TSB.w $0322\n\n #_07BB3C: BRA .check_for_rupee_tiles\n\n; ---------------------------------------------------------\n\n.no_mask1C\n #_07BB3E: LDA.w $02E8\n #_07BB41: AND.b #$07\n #_07BB43: BNE .check_for_rupee_tiles\n\n #_07BB45: LDA.b $0E\n #_07BB47: AND.b #$02\n #_07BB49: BNE .check_for_rupee_tiles\n\n #_07BB4B: LDA.w $0322\n #_07BB4E: AND.b #$FE\n #_07BB50: STA.w $0322\n\n #_07BB53: BRA .check_for_rupee_tiles\n\n.lower_layer\n #_07BB55: LDA.w $0320\n #_07BB58: AND.b #$07\n #_07BB5A: BEQ .no_mask0C\n\n #_07BB5C: LDA.b #$02\n #_07BB5E: TSB.w $0322\n\n #_07BB61: BRA .check_for_rupee_tiles\n\n.no_mask0C\n #_07BB63: LDA.w $0322\n #_07BB66: AND.b #$FD\n #_07BB68: STA.w $0322\n\n; ---------------------------------------------------------\n\n.check_for_rupee_tiles\n #_07BB6B: LDA.w $02F7\n #_07BB6E: AND.b #$22\n #_07BB70: BEQ .no_rupee_tiles\n\n #_07BB72: LDX.b #$00\n\n #_07BB74: AND.b #$20\n #_07BB76: BEQ .no_rupee_from_this_side\n\n #_07BB78: LDX.b #$08\n\n.no_rupee_from_this_side\n #_07BB7A: STX.b $00\n\n #_07BB7C: STZ.b $01\n\n #_07BB7E: LDA.b $66\n #_07BB80: ASL A\n #_07BB81: TAY\n\n #_07BB82: REP #$20\n\n #_07BB84: LDA.l $7EF360\n #_07BB88: CLC\n #_07BB89: ADC.w #$0005\n #_07BB8C: STA.l $7EF360\n\n #_07BB90: LDA.b $20\n #_07BB92: CLC\n #_07BB93: ADC.w RupeeTileOffset_y,Y\n #_07BB96: SEC\n #_07BB97: SBC.b $00\n #_07BB99: STA.b $00\n\n #_07BB9B: LDA.b $22\n #_07BB9D: CLC\n #_07BB9E: ADC.w RupeeTileOffset_x,Y\n #_07BBA1: STA.b $02\n\n #_07BBA3: SEP #$20\n\n #_07BBA5: JSL Underworld_DeleteRupeeTile\n\n #_07BBA9: LDA.b #$0A ; SFX3.0A\n #_07BBAB: JSR PlaySFX_Set3\n\n; ---------------------------------------------------------\n\n.no_rupee_tiles\n #_07BBAE: LDY.b #$01 ; up\n\n #_07BBB0: LDA.w $03F1\n #_07BBB3: AND.b #$22\n #_07BBB5: BEQ .no_conveyor_ud\n\n #_07BBB7: AND.b #$20\n #_07BBB9: BEQ .up_conveyor\n\n #_07BBBB: LDY.b #$02 ; down\n\n.up_conveyor\n #_07BBBD: STY.w $03F3\n\n #_07BBC0: BRA Link_CheckForLedgeTile_Vertical\n\n; ---------------------------------------------------------\n\n.no_conveyor_ud\n #_07BBC2: LDY.b #$03 ; left\n\n #_07BBC4: LDA.w $03F2\n #_07BBC7: AND.b #$22\n #_07BBC9: BEQ .no_conveyor_lr\n\n #_07BBCB: AND.b #$20\n #_07BBCD: BEQ .left_conveyor\n\n #_07BBCF: LDY.b #$04 ; right\n\n.left_conveyor\n #_07BBD1: STY.w $03F3\n\n #_07BBD4: BRA Link_CheckForLedgeTile_Vertical\n\n; ---------------------------------------------------------\n\n.no_conveyor_lr\n #_07BBD6: LDA.w $02E8\n #_07BBD9: AND.b #$07\n #_07BBDB: BNE Link_CheckForLedgeTile_Vertical\n\n #_07BBDD: LDA.b $0E\n #_07BBDF: AND.b #$02\n #_07BBE1: BNE Link_CheckForLedgeTile_Vertical\n\n #_07BBE3: STZ.w $03F3\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForLedgeTile_Vertical", + "code": "Link_CheckForLedgeTile_Vertical:\n #_07BBE6: LDA.w $036D\n #_07BBE9: AND.b #$07\n #_07BBEB: CMP.b #$07\n #_07BBED: BNE Link_CheckForWaterTiles_Vertical\n\n #_07BBEF: JSR RunLedgeHopTimer\n #_07BBF2: BCC Link_CheckForWaterTiles_Vertical\n\n #_07BBF4: JSR Link_CancelDash\n\n #_07BBF7: INC.w $047A\n\n #_07BBFA: LDA.b #$01\n #_07BBFC: STA.w $037B\n\n #_07BBFF: LDA.b #$02\n #_07BC01: STA.b $4D\n\n #_07BC03: LDA.b #$20 ; SFX2.20\n #_07BC05: JSR PlaySFX_Set2\n\n #_07BC08: BRA HandleUnderworldHopOntoWater_Vertical\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForWaterTiles_Vertical", + "code": "Link_CheckForWaterTiles_Vertical:\n #_07BC0A: LDA.w $0341\n #_07BC0D: AND.b #$07\n #_07BC0F: CMP.b #$07\n #_07BC11: BNE .on_deep_water\n\n #_07BC13: LDA.w $0345\n #_07BC16: BNE .on_deep_water\n\n #_07BC18: JSR Link_CancelDash\n\n #_07BC1B: LDA.b $1D\n #_07BC1D: BNE .no_layer_change\n\n #_07BC1F: JSL Underworld_HandleLayerChange\n\n #_07BC23: BRA HandleUnderworldHopOntoWater_Vertical\n\n; ---------------------------------------------------------\n\n.no_layer_change\n #_07BC25: LDA.b #$01\n #_07BC27: STA.w $0345\n\n #_07BC2A: LDA.b $26\n #_07BC2C: STA.w $0340\n\n #_07BC2F: STZ.w $0308\n #_07BC32: STZ.w $0309\n #_07BC35: STZ.w $0376\n\n #_07BC38: STZ.b $5E\n\n #_07BC3A: JSL Link_ResetSwimmingState\n\n #_07BC3E: LDA.b #$20 ; SFX2.20\n #_07BC40: JSR PlaySFX_Set2\n\n; =========================================================\n\n#HandleUnderworldHopOntoWater_Vertical:\n #_07BC43: LDA.b #$01\n #_07BC45: STA.w $037B\n\n #_07BC48: JSR Link_HopInOrOutOfWater_Vertical\n\n #_07BC4B: BRA .continue\n\n; ---------------------------------------------------------\n\n.on_deep_water\n #_07BC4D: LDA.w $0343\n #_07BC50: AND.b #$02\n #_07BC52: BEQ .continue\n\n #_07BC54: LDA.w $0345\n #_07BC57: BEQ .continue\n\n #_07BC59: LDA.b $4D\n #_07BC5B: BEQ .not_in_recoil\n\n #_07BC5D: LDA.b #$07\n #_07BC5F: STA.b $0E\n\n #_07BC61: BRA .continue\n\n.not_in_recoil\n #_07BC63: JSR Link_CancelDash\n\n #_07BC66: STZ.w $0345\n\n #_07BC69: LDA.w $0340\n #_07BC6C: STA.b $26\n\n #_07BC6E: LDA.b #$15 ; ANCILLA 15\n #_07BC70: LDY.b #$00\n #_07BC72: JSL AncillaAdd_Splash\n #_07BC76: BCC .no_space_for_splash\n\n #_07BC78: LDA.b #$01\n #_07BC7A: STA.w $0345\n\n #_07BC7D: LDA.b #$07\n #_07BC7F: STA.b $0E\n\n #_07BC81: BRA .continue\n\n.no_space_for_splash\n #_07BC83: LDA.b #$01\n #_07BC85: STA.w $037B\n\n #_07BC88: JSR Link_HopInOrOutOfWater_Vertical\n\n; ---------------------------------------------------------\n\n.continue\n #_07BC8B: LDA.b $58\n #_07BC8D: AND.b #$07\n #_07BC8F: CMP.b #$07\n #_07BC91: BNE Link_HandleStairDetection\n\n #_07BC93: LDA.b $46\n #_07BC95: BEQ .not_taking_damage\n\n #_07BC97: LDA.b $58\n #_07BC99: AND.b #$07\n #_07BC9B: STA.b $0E\n\n #_07BC9D: BRL HandlePushingBonkingSnaps_Vertical\n\n.not_taking_damage\n #_07BCA0: LDA.w $02C0\n #_07BCA3: AND.b #$77\n #_07BCA5: BEQ .no_stairs\n\n #_07BCA7: LDY.b #$08\n #_07BCA9: AND.b #$70\n #_07BCAB: BEQ .merged_layer_stairs\n\n #_07BCAD: LDY.b #$10\n\n.merged_layer_stairs\n #_07BCAF: STY.b $11\n\n #_07BCB1: LDA.b #$07\n #_07BCB3: STA.b $10\n\n #_07BCB5: JSR Link_CancelDash\n\n.no_stairs\n #_07BCB8: LDA.b $66\n #_07BCBA: AND.b #$02\n #_07BCBC: BNE Link_HandleStairDetection\n\n #_07BCBE: LDA.b #$02\n #_07BCC0: STA.b $5E\n\n #_07BCC2: LDA.b #$01\n #_07BCC4: STA.b $57\n\n #_07BCC6: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleStairDetection", + "code": "Link_HandleStairDetection:\n #_07BCC7: LDA.b $5E\n #_07BCC9: CMP.b #$02\n #_07BCCB: BNE .not_stair_speed\n\n #_07BCCD: LDX.b #$10\n\n #_07BCCF: LDA.w $0372\n #_07BCD2: BNE .dashing_speed\n\n #_07BCD4: LDX.b #$00\n\n.dashing_speed\n #_07BCD6: STX.b $5E\n\n.not_stair_speed\n #_07BCD8: LDA.b $57\n #_07BCDA: CMP.b #$01\n #_07BCDC: BNE HandleUnderworldPitSlip_Vertical\n\n #_07BCDE: LDX.b #$02\n #_07BCE0: STX.b $57\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleUnderworldPitSlip_Vertical", + "code": "HandleUnderworldPitSlip_Vertical:\n #_07BCE2: LDA.b $59\n #_07BCE4: AND.b #$05\n #_07BCE6: BEQ HandleUnderworldSpikeBlockCollision_Vertical\n\n #_07BCE8: LDA.b $0E\n #_07BCEA: AND.b #$02\n #_07BCEC: BNE HandleUnderworldSpikeBlockCollision_Vertical\n\n #_07BCEE: LDA.b $5D\n #_07BCF0: CMP.b #$05 ; LINKSTATE 05\n #_07BCF2: BEQ .exit\n\n #_07BCF4: CMP.b #$02 ; LINKSTATE 02\n #_07BCF6: BEQ .exit\n\n #_07BCF8: LDA.b #$09\n #_07BCFA: STA.b $5C\n\n #_07BCFC: STZ.b $5A\n\n #_07BCFE: LDA.b #$01\n #_07BD00: STA.b $5B\n\n #_07BD02: LDA.b #$01 ; LINKSTATE 01\n #_07BD04: STA.b $5D\n\n.exit\n #_07BD06: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleUnderworldSpikeBlockCollision_Vertical", + "code": "HandleUnderworldSpikeBlockCollision_Vertical:\n #_07BD07: STZ.b $5A\n\n #_07BD09: LDA.w $02E8\n #_07BD0C: AND.b #$07\n #_07BD0E: BEQ .check_collision_type\n\n #_07BD10: LDA.b $46\n #_07BD12: ORA.w $031F\n #_07BD15: ORA.b $55\n #_07BD17: BNE .no_spike_damage\n\n #_07BD19: LDA.b $20\n #_07BD1B: LDY.b $66\n #_07BD1D: BNE .didnt_move\n\n #_07BD1F: AND.b #$04\n #_07BD21: BEQ .not_on_4px_edge\n #_07BD23: BRA .check_collision_type\n\n.didnt_move\n #_07BD25: AND.b #$04\n #_07BD27: BEQ .check_collision_type\n\n.not_on_4px_edge\n #_07BD29: LDA.w $031F\n #_07BD2C: BNE .check_collision_type\n\n #_07BD2E: LDA.l $7EF35B\n #_07BD32: TAY\n\n #_07BD33: LDA.w SpikeDamageValues,Y\n #_07BD36: STA.w $0373\n\n #_07BD39: JSR Link_CancelDash\n #_07BD3C: JSR Link_ForceUnequipCape_quietly\n\n #_07BD3F: BRL LinkApplyTileRebound\n\n; ---------------------------------------------------------\n\n.no_spike_damage\n #_07BD42: LDA.w $02E8\n #_07BD45: AND.b #$07\n #_07BD47: STA.b $0E\n\n.check_collision_type\n #_07BD49: LDA.w $046C\n #_07BD4C: BEQ .ignore_layer\n\n #_07BD4E: CMP.b #$04\n #_07BD50: BEQ .ignore_layer\n\n #_07BD52: LDA.b $EE\n #_07BD54: BNE HandlePushingBonkingSnaps_Vertical\n\n.ignore_layer\n #_07BD56: LDA.b $5F\n #_07BD58: ORA.b $60\n #_07BD5A: BEQ .not_pushing_block\n\n #_07BD5C: LDA.b $6A\n #_07BD5E: BNE .not_pushing_block\n\n #_07BD60: LDA.b $5F\n #_07BD62: STA.w $02C2\n\n #_07BD65: DEC.b $61\n #_07BD67: BPL HandlePushingBonkingSnaps_Vertical\n\n; ---------------------------------------------------------\n\n #_07BD69: REP #$20\n\n #_07BD6B: LDY.b #$0F\n\n #_07BD6D: LDA.b $5F\n\n.check_next_block\n #_07BD6F: ASL A\n #_07BD70: BCC .skip_block\n\n #_07BD72: PHA\n #_07BD73: PHY\n\n #_07BD74: SEP #$20\n\n #_07BD76: JSR FindFreeMovingBlockSlot\n #_07BD79: BCS .no_free_slot\n\n #_07BD7B: STX.b $0E\n\n #_07BD7D: TYA\n #_07BD7E: ASL A\n #_07BD7F: TAX\n\n #_07BD80: JSR InitializePushBlock\n #_07BD83: BCS .no_free_slot\n\n #_07BD85: LDA.b $0E\n #_07BD87: ASL A\n #_07BD88: TAY\n\n #_07BD89: JSR Underworld_DrawSinglePushBlock\n\n #_07BD8C: TYX\n\n #_07BD8D: LDY.b $66\n\n #_07BD8F: TYA\n #_07BD90: ASL A\n #_07BD91: STA.w $05F8,X\n #_07BD94: STA.w $0474\n\n #_07BD97: LDA.w $05F0,X\n\n #_07BD9A: CPY.b #$01\n #_07BD9C: BNE .not_pushing_down\n\n #_07BD9E: DEC A\n\n.not_pushing_down\n #_07BD9F: AND.b #$0F\n #_07BDA1: STA.w $05E8,X\n\n.no_free_slot\n #_07BDA4: REP #$20\n\n #_07BDA6: PLY\n #_07BDA7: PLA\n\n.skip_block\n #_07BDA8: DEY\n #_07BDA9: BPL .check_next_block\n\n; ---------------------------------------------------------\n\n #_07BDAB: SEP #$20\n\n.not_pushing_block\n #_07BDAD: LDA.b #$15\n #_07BDAF: STA.b $61\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandlePushingBonkingSnaps_Vertical", + "code": "HandlePushingBonkingSnaps_Vertical:\n #_07BDB1: LDA.b $0E\n #_07BDB3: AND.b #$07\n #_07BDB5: BNE .check_for_swimming\n\n #_07BDB7: BRL RestartPushingTimer_UnflagDoors_Vertical\n\n.check_for_swimming\n #_07BDBA: LDA.b $5D\n #_07BDBC: CMP.b #$04 ; LINKSTATE 04\n #_07BDBE: BNE .not_swimming_or_moving\n\n #_07BDC0: LDA.w $0310\n #_07BDC3: BNE .moving_floor_active\n\n #_07BDC5: JSR ResetAllAcceleration\n\n.moving_floor_active\n #_07BDC8: LDA.b $6A\n #_07BDCA: BEQ .not_swimming_or_moving\n\n #_07BDCC: JSR Link_AddInVelocityYFalling\n #_07BDCF: BRA .check_for_bonk\n\n.not_swimming_or_moving\n #_07BDD1: LDA.b $0E\n #_07BDD3: AND.b #$02\n #_07BDD5: BNE .do_a_bonk\n\n #_07BDD7: LDA.b $0E\n #_07BDD9: AND.b #$05\n #_07BDDB: CMP.b #$05\n #_07BDDD: BNE .no_bonk\n\n.do_a_bonk\n #_07BDDF: LDA.b $0E\n #_07BDE1: PHA\n\n #_07BDE2: JSR Link_BonkAndSmash\n #_07BDE5: JSR RepelDash\n\n #_07BDE8: PLA\n #_07BDE9: STA.b $0E\n\n.no_bonk\n #_07BDEB: LDA.b #$01\n #_07BDED: STA.w $0302\n\n #_07BDF0: LDA.b $0E\n #_07BDF2: AND.b #$02\n #_07BDF4: CMP.b #$02\n #_07BDF6: BNE .check_diagonal_direction\n\n #_07BDF8: JSR Link_AddInVelocityYFalling\n #_07BDFB: BRA .check_for_bonk\n\n.check_diagonal_direction\n #_07BDFD: LDA.b $6A\n #_07BDFF: CMP.b #$01\n #_07BE01: BNE .not_diagonal_facing_vetically\n\n.diagonal_facing_horizontally\n #_07BE03: BRL RestartPushingTimer_Vertical\n\n.not_diagonal_facing_vetically\n #_07BE06: JSR Link_AddInVelocityYFalling\n\n #_07BE09: LDA.b $6A\n #_07BE0B: CMP.b #$02\n #_07BE0D: BEQ .diagonal_facing_horizontally\n\n; ---------------------------------------------------------\n\n.check_for_bonk\n #_07BE0F: LDA.b $0E\n #_07BE11: AND.b #$05\n #_07BE13: CMP.b #$05\n #_07BE15: BEQ .definitely_bonk\n\n #_07BE17: AND.b #$04\n #_07BE19: BEQ .no_bonk_this_way\n\n #_07BE1B: LDY.b #$01\n\n #_07BE1D: LDA.b $30\n #_07BE1F: BMI .already_negative\n\n #_07BE21: EOR.b #$FF\n #_07BE23: INC A\n\n.already_negative\n #_07BE24: BPL .extra_positive_check\n\n #_07BE26: LDY.b #$FF\n\n.extra_positive_check\n #_07BE28: STY.b $00\n #_07BE2A: STZ.b $01\n\n #_07BE2C: LDA.b $0E\n #_07BE2E: AND.b #$02\n #_07BE30: BNE HandlePushingObstruction_Vertical\n\n #_07BE32: LDA.b $22\n #_07BE34: AND.b #$07\n #_07BE36: BNE .do_not_bonk\n\n #_07BE38: JSR Link_BonkAndSmash\n #_07BE3B: JSR RepelDash\n\n #_07BE3E: BRA HandlePushingObstruction_Vertical\n\n; ---------------------------------------------------------\n\n.no_bonk_this_way\n #_07BE40: LDY.b #$01\n\n #_07BE42: LDA.b $30\n #_07BE44: BPL .already_positive\n\n #_07BE46: EOR.b #$FF\n #_07BE48: INC A\n\n.already_positive\n #_07BE49: BPL .make_sure_not_negative\n\n #_07BE4B: LDY.b #$FF\n\n.make_sure_not_negative\n #_07BE4D: STY.b $00\n #_07BE4F: STZ.b $01\n\n #_07BE51: LDA.b $0E\n #_07BE53: AND.b #$02\n #_07BE55: BNE HandlePushingObstruction_Vertical\n\n #_07BE57: LDA.b $22\n #_07BE59: AND.b #$07\n #_07BE5B: BNE .do_not_bonk\n\n.definitely_bonk\n #_07BE5D: JSR Link_BonkAndSmash\n #_07BE60: JSR RepelDash\n\n #_07BE63: BRA HandlePushingObstruction_Vertical\n\n.do_not_bonk\n #_07BE65: JSR AddAbsoluteScratchToXCoord\n\n #_07BE68: JMP.w HandleNudging\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandlePushingObstruction_Vertical", + "code": "HandlePushingObstruction_Vertical:\n #_07BE6B: LDA.b $66\n #_07BE6D: ASL A\n #_07BE6E: CMP.b $2F\n #_07BE70: BNE RestartPushingTimer_Vertical\n\n #_07BE72: LDA.w $0315\n #_07BE75: AND.b #$01\n #_07BE77: ASL A\n #_07BE78: TSB.b $48\n\n #_07BE7A: LDA.b $3C\n #_07BE7C: BNE .dont_run_push_timer\n\n #_07BE7E: DEC.w $0371\n #_07BE81: BPL EXIT_07BEAE\n\n.dont_run_push_timer\n #_07BE83: LDY.w $0315\n\n #_07BE86: LDA.w $02F6\n #_07BE89: AND.b #$20\n #_07BE8B: BEQ .not_a_flaggable_door\n\n #_07BE8D: LDA.w $0315\n #_07BE90: ASL A\n #_07BE91: ASL A\n #_07BE92: ASL A\n #_07BE93: TAY\n\n.not_a_flaggable_door\n #_07BE94: TYA\n #_07BE95: TSB.b $48\n\n #_07BE97: BRA RestartPushingTimer_Vertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RestartPushingTimer_UnflagDoors_Vertical", + "code": "RestartPushingTimer_UnflagDoors_Vertical:\n #_07BE99: LDA.b $EE\n #_07BE9B: BNE EXIT_07BEAE\n\n #_07BE9D: LDA.b $48\n #_07BE9F: AND.b #$F6\n #_07BEA1: STA.b $48\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RestartPushingTimer_Vertical", + "code": "RestartPushingTimer_Vertical:\n #_07BEA3: LDA.b #$20\n #_07BEA5: STA.w $0371\n\n #_07BEA8: LDA.b $48\n #_07BEAA: AND.b #$FD\n #_07BEAC: STA.b $48\n\n; ---------------------------------------------------------\n\n#EXIT_07BEAE:\n #_07BEAE: RTS", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Vertical_HandleOutdoors", + "code": "StartMovementCollisionChecks_Vertical_HandleOutdoors:\n #_07BEAF: LDA.b $5E\n #_07BEB1: CMP.b #$02\n #_07BEB3: BNE .not_stair_speed\n\n #_07BEB5: LDX.b #$10\n\n #_07BEB7: LDA.w $0372\n #_07BEBA: BNE .dashing\n\n #_07BEBC: LDX.b #$00\n\n.dashing\n #_07BEBE: STX.b $5E\n\n.not_stair_speed\n #_07BEC0: LDA.b $59\n #_07BEC2: AND.b #$05\n #_07BEC4: BEQ HandleLiftablesBeforeDeepWater_Vertical\n\n #_07BEC6: LDA.b $0E\n #_07BEC8: AND.b #$02\n #_07BECA: BNE HandleLiftablesBeforeDeepWater_Vertical\n\n #_07BECC: LDA.b $5D\n #_07BECE: CMP.b #$05 ; LINKSTATE 05\n #_07BED0: BEQ .exit\n\n #_07BED2: CMP.b #$02 ; LINKSTATE 02\n #_07BED4: BEQ .exit\n\n #_07BED6: LDA.b #$09\n #_07BED8: STA.b $5C\n\n #_07BEDA: STZ.b $5A\n\n #_07BEDC: LDA.b #$01\n #_07BEDE: STA.b $5B\n\n #_07BEE0: LDA.b #$01 ; LINKSTATE 01\n #_07BEE2: STA.b $5D\n\n.exit\n #_07BEE4: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleLiftablesBeforeDeepWater_Vertical", + "code": "HandleLiftablesBeforeDeepWater_Vertical:\n #_07BEE5: LDA.w $0366\n #_07BEE8: AND.b #$02\n #_07BEEA: BEQ .not_touching_some_liftable\n\n #_07BEEC: LDA.w $036A\n #_07BEEF: LSR A\n #_07BEF0: STA.w $0368\n\n #_07BEF3: BRA .index_is_set\n\n.not_touching_some_liftable\n #_07BEF5: STZ.w $0368\n\n.index_is_set\n #_07BEF8: LDA.w $0341\n #_07BEFB: AND.b #$02\n #_07BEFD: BEQ Link_HandleEnteringWater_Vertical\n\n #_07BEFF: BRA Link_CheckEnteringWaterVertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07BF01", + "code": "UNREACHABLE_07BF01:\n #_07BF01: LDA.w $0341\n #_07BF04: AND.b #$07\n #_07BF06: CMP.b #$07\n #_07BF08: BNE Link_HandleEnteringWater_Vertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckEnteringWaterVertical", + "code": "Link_CheckEnteringWaterVertical:\n #_07BF0A: LDA.w $0345\n #_07BF0D: BNE Link_HandleEnteringWater_Vertical\n\n #_07BF0F: LDA.b $4D\n #_07BF11: BNE Link_HandleEnteringWater_Vertical\n\n #_07BF13: JSR Link_ResetSwordAndItemUsage\n #_07BF16: JSR Link_CancelDash\n\n #_07BF19: LDA.b #$01\n #_07BF1B: STA.w $0345\n\n #_07BF1E: LDA.b $26\n #_07BF20: STA.w $0340\n\n #_07BF23: STZ.w $0376\n #_07BF26: STZ.b $5E\n\n #_07BF28: JSL Link_ResetSwimmingState\n\n #_07BF2C: LDA.w $0351\n #_07BF2F: CMP.b #$01\n #_07BF31: BNE .jump_into_water\n\n; ---------------------------------------------------------\n\n #_07BF33: JSR Link_ForceUnequipCape_quietly\n\n #_07BF36: LDA.l $7EF356\n #_07BF3A: BEQ .jump_into_water\n\n #_07BF3C: LDA.w $02E0\n #_07BF3F: BNE Link_HandleEnteringWater_Vertical\n\n #_07BF41: LDA.b #$04 ; LINKSTATE 04\n #_07BF43: STA.b $5D\n\n #_07BF45: BRA Link_HandleEnteringWater_Vertical\n\n.jump_into_water\n #_07BF47: LDA.b #$20 ; SFX2.20\n #_07BF49: JSR PlaySFX_Set2\n\n #_07BF4C: LDA.b $3E\n #_07BF4E: STA.b $20\n\n #_07BF50: LDA.b $40\n #_07BF52: STA.b $21\n\n #_07BF54: LDA.b $3F\n #_07BF56: STA.b $22\n\n #_07BF58: LDA.b $41\n #_07BF5A: STA.b $23\n\n #_07BF5C: LDA.b #$01\n #_07BF5E: STA.w $037B\n\n #_07BF61: JSR Link_HopInOrOutOfWater_Vertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleEnteringWater_Vertical", + "code": "Link_HandleEnteringWater_Vertical:\n #_07BF64: LDA.w $0345\n #_07BF67: BEQ .not_on_deep_water\n\n #_07BF69: LDA.w $036D\n #_07BF6C: AND.b #$07\n #_07BF6E: BEQ .no_ledge\n\n #_07BF70: STA.b $0E\n\n #_07BF72: BRL HandlePushingBonkingSnaps_Vertical\n\n.no_ledge\n #_07BF75: LDA.b $58\n #_07BF77: AND.b #$07\n #_07BF79: CMP.b #$07\n #_07BF7B: BEQ .stairs_detected\n\n #_07BF7D: LDA.w $0343\n #_07BF80: AND.b #$07\n #_07BF82: CMP.b #$07\n #_07BF84: BNE .not_on_deep_water\n\n.stairs_detected\n #_07BF86: JSR Link_CancelDash\n\n #_07BF89: STZ.w $0345\n\n #_07BF8C: LDA.b $4D\n #_07BF8E: BNE .not_on_deep_water\n\n #_07BF90: LDA.w $0340\n #_07BF93: STA.b $26\n\n #_07BF95: LDA.b #$01\n #_07BF97: STA.w $037B\n\n #_07BF9A: LDA.b #$15 ; ANCILLA 15\n #_07BF9C: LDY.b #$00\n #_07BF9E: JSL AncillaAdd_Splash\n\n #_07BFA2: BRL Link_HopInOrOutOfWater_Vertical\n\n; ---------------------------------------------------------\n\n.not_on_deep_water\n #_07BFA5: LDA.w $036E\n #_07BFA8: AND.b #$02\n #_07BFAA: BNE .horizontal_ledge_detected\n\n #_07BFAC: LDA.w $0370\n #_07BFAF: AND.b #$22\n #_07BFB1: BEQ .no_weird_ledges\n\n.horizontal_ledge_detected\n #_07BFB3: LDA.b #$07\n #_07BFB5: STA.b $0E\n\n #_07BFB7: BRL HandlePushingBonkingSnaps_Vertical\n\n.no_weird_ledges\n #_07BFBA: LDA.w $036D\n #_07BFBD: AND.b #$70\n #_07BFBF: BEQ Link_CheckForNorthSouthLedges\n\n #_07BFC1: JSR RunLedgeHopTimer\n #_07BFC4: BCC Link_CheckForNorthSouthLedges\n\n #_07BFC6: JSR Link_CancelDash\n\n #_07BFC9: LDA.b #$01\n #_07BFCB: STA.w $037B\n #_07BFCE: STA.b $78\n\n #_07BFD0: LDA.b #$0B ; LINKSTATE 0B\n #_07BFD2: STA.b $5D\n\n #_07BFD4: STZ.b $46\n\n #_07BFD6: LDA.b #$FF\n #_07BFD8: STA.w $0364\n #_07BFDB: STA.w $0365\n\n #_07BFDE: STZ.b $48\n #_07BFE0: STZ.b $5E\n\n #_07BFE2: LDY.b #$02\n #_07BFE4: LDX.b #$14\n\n #_07BFE6: LDA.w $0345\n #_07BFE9: BEQ .jumping_into_water\n\n #_07BFEB: LDY.b #$04\n #_07BFED: LDX.b #$0E\n\n.jumping_into_water\n #_07BFEF: STX.w $0362\n #_07BFF2: STX.w $0363\n\n #_07BFF5: STY.b $4D\n\n #_07BFF7: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForNorthSouthLedges", + "code": "Link_CheckForNorthSouthLedges:\n #_07BFF8: LDA.w $036D\n #_07BFFB: AND.b #$07\n #_07BFFD: BEQ .dont_hop\n\n #_07BFFF: JSR RunLedgeHopTimer\n #_07C002: BCC .dont_hop\n\n #_07C004: LDA.b #$20 ; SFX2.20\n #_07C006: JSR PlaySFX_Set2\n\n #_07C009: LDA.b #$01\n #_07C00B: STA.w $037B\n\n #_07C00E: JSR Link_CancelDash\n\n #_07C011: STZ.b $48\n #_07C013: STZ.b $5E\n\n #_07C015: BRL Link_FindValidLandingTile_North\n\n.dont_hop\n #_07C018: LDA.w $0345\n #_07C01B: BEQ .not_in_water\n\n #_07C01D: BRL OverworldRecoverAndDoGraves\n\n.not_in_water\n #_07C020: LDA.w $036F\n #_07C023: AND.b #$07\n #_07C025: BEQ CheckOverworldHopTiles_Vertical\n\n #_07C027: LDA.w $036D\n #_07C02A: AND.b #$77\n #_07C02C: BNE CheckOverworldHopTiles_Vertical\n\n #_07C02E: LDX.b #$04\n\n #_07C030: LDA.b $76\n #_07C032: CMP.b #$2F\n #_07C034: BEQ .check_north_east\n\n #_07C036: LDX.b #$01\n\n.check_north_east\n #_07C038: TXA\n #_07C039: AND.w $036F\n #_07C03C: BEQ CheckOverworldHopTiles_Vertical\n\n #_07C03E: JSR RunLedgeHopTimer\n #_07C041: BCC CheckOverworldHopTiles_Vertical\n\n #_07C043: JSR Link_CancelDash\n\n #_07C046: LDX.b #$10\n\n #_07C048: LDA.w $036F\n #_07C04B: AND.b #$04\n #_07C04D: BNE .dont_invert_recoil\n\n #_07C04F: TXA\n #_07C050: EOR.b #$FF\n #_07C052: INC A\n #_07C053: TAX\n\n.dont_invert_recoil\n #_07C054: LDA.b #$01\n #_07C056: STA.w $037B\n\n #_07C059: STX.b $28\n\n #_07C05B: STZ.b $48\n #_07C05D: STZ.b $5E\n\n #_07C05F: LDA.b #$01\n #_07C061: STA.w $037B\n #_07C064: STA.b $78\n\n #_07C066: LDA.b #$02\n #_07C068: STA.b $4D\n\n #_07C06A: LDA.b #$14\n #_07C06C: STA.w $0362\n #_07C06F: STA.w $0363\n\n #_07C072: LDA.b #$FF\n #_07C074: STA.w $0364\n\n #_07C077: STZ.b $46\n\n #_07C079: LDA.b #$0E ; LINKSTATE 0E\n #_07C07B: STA.b $5D\n\n #_07C07D: RTS", + "file": "bank_07.asm" + }, + { + "name": "CheckOverworldHopTiles_Vertical", + "code": "CheckOverworldHopTiles_Vertical:\n #_07C07E: LDA.w $036E\n #_07C081: AND.b #$70\n #_07C083: BEQ OverworldRecoverAndDoGraves\n\n #_07C085: LDA.w $036D\n #_07C088: AND.b #$77\n #_07C08A: BNE OverworldRecoverAndDoGraves\n\n #_07C08C: JSR RunLedgeHopTimer\n #_07C08F: BCC OverworldRecoverAndDoGraves\n\n #_07C091: JSR Link_CancelDash\n\n #_07C094: LDA.b #$20 ; SFX2.20\n #_07C096: JSR PlaySFX_Set2\n\n #_07C099: LDY.b #$03\n\n #_07C09B: LDA.w $036E\n #_07C09E: AND.b #$40\n #_07C0A0: BNE .diagonal_north_ledge\n\n #_07C0A2: LDY.b #$02\n\n.diagonal_north_ledge\n #_07C0A4: STY.b $66\n\n #_07C0A6: LDA.b #$01\n #_07C0A8: STA.w $037B\n\n #_07C0AB: STZ.b $48\n #_07C0AD: STZ.b $5E\n\n #_07C0AF: BRL Link_FindValidLandingTile_DiagonalNorth\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "OverworldRecoverAndDoGraves", + "code": "OverworldRecoverAndDoGraves:\n #_07C0B2: LDA.b $58\n #_07C0B4: AND.b #$07\n #_07C0B6: CMP.b #$07\n #_07C0B8: BNE OverworldHandleStairsAndPushGraves\n\n #_07C0BA: LDA.b $46\n #_07C0BC: BEQ .not_recoiling\n\n #_07C0BE: LDA.b $58\n #_07C0C0: AND.b #$07\n #_07C0C2: STA.b $0E\n\n #_07C0C4: BRL HandlePushingBonkingSnaps_Vertical\n\n.not_recoiling\n #_07C0C7: LDA.b $66\n #_07C0C9: AND.b #$02\n #_07C0CB: BNE OverworldHandleStairsAndPushGraves\n\n #_07C0CD: LDA.b #$02\n #_07C0CF: STA.b $5E\n\n #_07C0D1: LDA.b #$01\n #_07C0D3: STA.b $57\n\n #_07C0D5: RTS", + "file": "bank_07.asm" + }, + { + "name": "OverworldHandleStairsAndPushGraves", + "code": "OverworldHandleStairsAndPushGraves:\n #_07C0D6: LDA.b $5E\n #_07C0D8: CMP.b #$02\n #_07C0DA: BNE .not_stair_speed\n\n #_07C0DC: LDX.b #$10\n\n #_07C0DE: LDA.w $0372\n #_07C0E1: BNE .dashing\n\n #_07C0E3: LDX.b #$00\n\n.dashing\n #_07C0E5: STX.b $5E\n\n.not_stair_speed\n #_07C0E7: LDA.b $57\n #_07C0E9: CMP.b #$01\n #_07C0EB: BNE .not_slow_speed\n\n #_07C0ED: LDX.b #$02\n #_07C0EF: STX.b $57\n\n.not_slow_speed\n #_07C0F1: LDA.b $0C\n #_07C0F3: AND.b #$05\n #_07C0F5: BEQ CheckForGravePush\n\n #_07C0F7: LDA.b $0E\n #_07C0F9: AND.b #$07\n #_07C0FB: BNE CheckForGravePush\n\n #_07C0FD: JSR FlagMovingIntoSlopes_Vertical\n\n #_07C100: LDA.b $6B\n #_07C102: AND.b #$0F\n #_07C104: BEQ CheckForGravePush\n\n #_07C106: RTS", + "file": "bank_07.asm" + }, + { + "name": "CheckForGravePush", + "code": "CheckForGravePush:\n #_07C107: STZ.b $6B\n\n #_07C109: LDA.w $02E7\n #_07C10C: AND.b #$02\n #_07C10E: BEQ .reset_push_timer\n\n #_07C110: LDA.b $66\n #_07C112: BNE .reset_push_timer\n\n #_07C114: LDA.w $0372\n #_07C117: BNE .dashing\n\n #_07C119: DEC.b $61\n #_07C11B: BPL CheckForSpikeTouch\n\n.dashing\n #_07C11D: LDA.b $0E\n #_07C11F: PHA\n\n #_07C120: LDY.b #$04\n #_07C122: LDA.b #$24 ; ANCILLA 24\n #_07C124: JSL AncillaAdd_GraveStone\n\n #_07C128: PLA\n #_07C129: STA.b $0E\n\n.reset_push_timer\n #_07C12B: LDA.b #$34\n #_07C12D: STA.b $61\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CheckForSpikeTouch", + "code": "CheckForSpikeTouch:\n #_07C12F: LDA.w $02E8\n #_07C132: AND.b #$07\n #_07C134: BEQ .not_touching_spike\n\n #_07C136: LDA.b $46\n #_07C138: ORA.w $031F\n #_07C13B: ORA.b $55\n #_07C13D: BNE .invulnerable\n\n #_07C13F: LDA.b $20\n\n #_07C141: LDY.b $66\n #_07C143: BNE .didnt_move\n\n #_07C145: AND.b #$04\n #_07C147: BEQ .not_on_4px_edge\n\n #_07C149: BRA .not_touching_spike\n\n.didnt_move\n #_07C14B: AND.b #$04\n #_07C14D: BEQ .not_touching_spike\n\n.not_on_4px_edge\n #_07C14F: LDA.l $7EF35B\n #_07C153: TAY\n\n #_07C154: LDA.w SpikeDamageValues,Y\n #_07C157: STA.w $0373\n\n #_07C15A: JSR Link_CancelDash\n #_07C15D: JSR Link_ForceUnequipCape_quietly\n\n #_07C160: BRL LinkApplyTileRebound\n\n.invulnerable\n #_07C163: LDA.w $02E8\n #_07C166: AND.b #$07\n #_07C168: STA.b $0E\n\n.not_touching_spike\n #_07C16A: BRL HandlePushingBonkingSnaps_Vertical\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RunLedgeHopTimer", + "code": "RunLedgeHopTimer:\n #_07C16D: LDA.b $4D\n #_07C16F: CMP.b #$01\n #_07C171: BEQ .restore_coordinates\n\n #_07C173: LDA.w $0372\n #_07C176: BNE .dashing\n\n #_07C178: DEC.w $0375\n #_07C17B: BPL .restore_coordinates\n\n #_07C17D: LDA.b #$13\n #_07C17F: STA.w $0375\n\n #_07C182: BRA .exit_and_set\n\n.dashing\n #_07C184: JSR .restore_coordinates\n\n.exit_and_set\n #_07C187: SEC\n\n #_07C188: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_BonkAndSmash", + "code": "Link_BonkAndSmash:\n #_07C1A1: LDA.w $0372\n #_07C1A4: BEQ EXIT_AND_CLC\n\n #_07C1A6: LDA.w $02F1\n #_07C1A9: CMP.b #$40\n #_07C1AB: BEQ EXIT_AND_CLC\n\n #_07C1AD: LDA.w $02EF\n #_07C1B0: AND.b #$70\n #_07C1B2: BEQ EXIT_AND_CLC\n\n #_07C1B4: JSL Overworld_SmashRockPileFromHere\n #_07C1B8: BCC .didnt_break_here\n\n #_07C1BA: JSR .break_pile\n\n.didnt_break_here\n #_07C1BD: JSL Overworld_SmashRockPileFromAbove\n #_07C1C1: BCC .exit\n\n; ---------------------------------------------------------\n\n.break_pile\n #_07C1C3: LDX.b #$08\n\n.check_next\n #_07C1C5: CMP.w LinkToss_liftable_tiles,X\n #_07C1C8: BEQ .match\n\n #_07C1CA: DEX\n #_07C1CB: BPL .check_next\n\n #_07C1CD: BRA .exit\n\n; ---------------------------------------------------------\n\n.match\n #_07C1CF: CPX.b #$02\n #_07C1D1: BEQ .play_sfx\n\n #_07C1D3: CPX.b #$04\n #_07C1D5: BNE .skip_sfx\n\n.play_sfx\n #_07C1D7: PHX\n\n #_07C1D8: LDA.b #$32 ; SFX3.32\n #_07C1DA: JSR PlaySFX_Set3\n\n #_07C1DD: PLX\n\n.skip_sfx\n #_07C1DE: TXA\n #_07C1DF: JSL Sprite_SpawnImmediatelySmashedTerrain\n\n.exit\n #_07C1E3: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_AddInVelocityYFalling", + "code": "Link_AddInVelocityYFalling:\n #_07C1E4: REP #$20\n\n #_07C1E6: LDA.b $51\n #_07C1E8: AND.w #$0007\n\n #_07C1EB: LDY.b $30\n #_07C1ED: BPL .positive\n\n #_07C1EF: SEC\n #_07C1F0: SBC.w #$0008\n\n.positive\n #_07C1F3: EOR.w #$FFFF\n #_07C1F6: INC A\n\n #_07C1F7: CLC\n #_07C1F8: ADC.b $20\n #_07C1FA: STA.b $20\n\n #_07C1FC: SEP #$20\n\n #_07C1FE: RTS", + "file": "bank_07.asm" + }, + { + "name": "CalculateSnapScratch_Vertical", + "code": "CalculateSnapScratch_Vertical:\n #_07C1FF: LDA.b $0E\n #_07C201: AND.b #$04\n #_07C203: BEQ .invert_first\n\n #_07C205: LDY.b #$01\n #_07C207: LDA.b $30\n #_07C209: BMI .negative_y_a\n\n #_07C20B: EOR.b #$FF\n #_07C20D: INC A\n\n.negative_y_a\n #_07C20E: BPL .positive_y_a\n\n #_07C210: LDY.b #$FF\n\n.positive_y_a\n #_07C212: STY.b $00\n #_07C214: STZ.b $01\n\n #_07C216: BRA AddAbsoluteScratchToXCoord\n\n.invert_first\n #_07C218: LDY.b #$01\n\n #_07C21A: LDA.b $30\n #_07C21C: BPL .positive_y_b\n\n #_07C21E: EOR.b #$FF\n #_07C220: INC A\n\n.positive_y_b\n #_07C221: BPL .positive_y_c\n\n #_07C223: LDY.b #$FF\n\n.positive_y_c\n #_07C225: STY.b $00\n #_07C227: STZ.b $01\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "AddAbsoluteScratchToXCoord", + "code": "AddAbsoluteScratchToXCoord:\n #_07C229: REP #$20\n\n #_07C22B: LDA.b $00\n #_07C22D: CMP.w #$0080\n #_07C230: BCC .positive\n\n #_07C232: ORA.w #$FF00\n\n.positive\n #_07C235: CLC\n #_07C236: ADC.b $22\n #_07C238: STA.b $22\n\n #_07C23A: SEP #$20\n\n #_07C23C: RTS", + "file": "bank_07.asm" + }, + { + "name": "ChangeAxisOfPerpendicularDoorMovement_Vertical", + "code": "ChangeAxisOfPerpendicularDoorMovement_Vertical:\n #_07C23D: LDA.b #$02\n #_07C23F: TSB.b $50\n\n #_07C241: LDA.b $0E\n #_07C243: LSR A\n #_07C244: LSR A\n #_07C245: LSR A\n #_07C246: LSR A\n #_07C247: ORA.b $0E\n #_07C249: AND.b #$0F\n #_07C24B: STA.b $00\n\n #_07C24D: AND.b #$07\n #_07C24F: BNE .dont_clear_doorway\n\n #_07C251: STZ.b $6C\n\n #_07C253: BRA .exit\n\n; ---------------------------------------------------------\n\n.dont_clear_doorway\n #_07C255: LDA.b $22\n #_07C257: CMP.b #$80\n #_07C259: BCC .x_low_positive\n\n #_07C25B: LDY.b #$01\n\n #_07C25D: LDA.b $30\n #_07C25F: BMI .keep_negative_x\n\n #_07C261: EOR.b #$FF\n #_07C263: INC A\n\n.keep_negative_x\n #_07C264: BPL .keep_y1_positive\n\n #_07C266: LDY.b #$FF\n\n.keep_y1_positive\n #_07C268: STY.b $00\n #_07C26A: STZ.b $01\n\n #_07C26C: LDY.b #$04\n #_07C26E: BRA .continue\n\n; ---------------------------------------------------------\n\n.x_low_positive\n #_07C270: LDY.b #$01\n\n #_07C272: LDA.b $30\n #_07C274: BPL .keep_positive_x\n\n #_07C276: EOR.b #$FF\n #_07C278: INC A\n\n.keep_positive_x\n #_07C279: BPL .keep_y2_positive\n\n #_07C27B: LDY.b #$FF\n\n.keep_y2_positive\n #_07C27D: STY.b $00\n #_07C27F: STZ.b $01\n\n #_07C281: LDY.b #$06\n\n.continue\n #_07C283: LDA.b $50\n #_07C285: AND.b #$01\n #_07C287: BNE .cannot_turn\n\n #_07C289: STY.b $2F\n\n.cannot_turn\n #_07C28B: REP #$20\n\n #_07C28D: LDA.b $00\n #_07C28F: CMP.w #$0080\n #_07C292: BCC .positive\n\n #_07C294: ORA.w #$FF00\n\n.positive\n #_07C297: CLC\n #_07C298: ADC.b $22\n #_07C29A: STA.b $22\n\n #_07C29C: SEP #$20\n\n.exit\n #_07C29E: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_AddInVelocityY", + "code": "Link_AddInVelocityY:\n #_07C29F: REP #$20\n\n #_07C2A1: LDA.b $30\n #_07C2A3: AND.w #$00FF\n #_07C2A6: CMP.w #$0080\n #_07C2A9: BCC .positive\n\n #_07C2AB: ORA.w #$FF00\n\n.positive\n #_07C2AE: EOR.w #$FFFF\n #_07C2B1: INC A\n #_07C2B2: CLC\n #_07C2B3: ADC.b $20\n #_07C2B5: STA.b $20\n\n #_07C2B7: SEP #$20\n\n #_07C2B9: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HopInOrOutOfWater_Vertical", + "code": "Link_HopInOrOutOfWater_Vertical:\n #_07C2C3: LDA.b $1B\n #_07C2C5: BNE .indoors\n\n #_07C2C7: LDX.b #$02\n #_07C2C9: BRA .continue\n\n.indoors\n #_07C2CB: LDX.b $1D\n\n #_07C2CD: LDA.w $047A\n #_07C2D0: BEQ .continue\n\n #_07C2D2: LDX.b #$00\n\n.continue\n #_07C2D4: STX.b $00\n\n #_07C2D6: LDA.w .speed_y,X\n #_07C2D9: TAX\n\n #_07C2DA: LDA.b $66\n #_07C2DC: BNE .dont_invert\n\n #_07C2DE: TXA\n #_07C2DF: EOR.b #$FF\n #_07C2E1: INC A\n #_07C2E2: TAX\n\n.dont_invert\n #_07C2E3: STX.b $27\n #_07C2E5: STZ.b $28\n\n #_07C2E7: LDX.b $00\n\n #_07C2E9: LDA.w .speed_z,X\n #_07C2EC: STA.b $29\n #_07C2EE: STA.w $02C7\n\n #_07C2F1: STZ.b $24\n #_07C2F3: STZ.b $25\n\n #_07C2F5: LDA.w .timer,X\n #_07C2F8: STA.b $46\n\n #_07C2FA: LDA.b $4D\n #_07C2FC: CMP.b #$02\n #_07C2FE: BEQ .already_recoiling\n\n #_07C300: LDA.b #$01\n #_07C302: STA.b $4D\n\n #_07C304: STZ.w $0360\n\n.already_recoiling\n #_07C307: LDA.b #$06 ; LINKSTATE 06\n #_07C309: STA.b $5D\n\n #_07C30B: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_FindValidLandingTile_North", + "code": "Link_FindValidLandingTile_North:\n #_07C36C: LDA.b $20\n #_07C36E: STA.b $32\n\n #_07C370: PHA\n\n #_07C371: LDA.b $21\n #_07C373: STA.b $33\n\n #_07C375: PHA\n\n; ---------------------------------------------------------\n\n.next\n #_07C376: REP #$20\n\n #_07C378: LDA.b $20\n #_07C37A: SEC\n #_07C37B: SBC.w #$0010\n #_07C37E: STA.b $20\n\n #_07C380: SEP #$20\n\n #_07C382: LDA.b $66\n #_07C384: ASL A\n #_07C385: TAY\n\n #_07C386: JSR TileDetect_Movement_Vertical\n\n #_07C389: LDA.w $0343\n #_07C38C: ORA.w $035B\n #_07C38F: ORA.w $0357\n #_07C392: ORA.w $0341\n\n #_07C395: AND.b #$07\n #_07C397: CMP.b #$07\n #_07C399: BNE .next\n\n; ---------------------------------------------------------\n\n #_07C39B: LDA.w $0341\n #_07C39E: AND.b #$07\n #_07C3A0: BEQ .didnt_find_water\n\n #_07C3A2: LDA.b #$01\n #_07C3A4: STA.b $4D\n\n #_07C3A6: STZ.w $0360\n\n #_07C3A9: LDA.b #$01\n #_07C3AB: STA.w $0345\n\n #_07C3AE: LDA.b $26\n #_07C3B0: STA.w $0340\n\n #_07C3B3: JSL Link_ResetSwimmingState\n\n #_07C3B7: STZ.w $0376\n #_07C3BA: STZ.b $5E\n\n; ---------------------------------------------------------\n\n.didnt_find_water\n #_07C3BC: REP #$20\n\n #_07C3BE: LDA.b $20\n #_07C3C0: SEC\n #_07C3C1: SBC.w #$0010\n #_07C3C4: STA.b $20\n\n #_07C3C6: LDA.b $32\n #_07C3C8: SEC\n #_07C3C9: SBC.b $20\n #_07C3CB: STA.b $32\n\n; ---------------------------------------------------------\n\n #_07C3CD: SEP #$20\n\n #_07C3CF: PLA\n #_07C3D0: STA.b $21\n\n #_07C3D2: PLA\n #_07C3D3: STA.b $20\n\n #_07C3D5: LDA.b $32\n #_07C3D7: LSR A\n #_07C3D8: LSR A\n #_07C3D9: LSR A\n #_07C3DA: TAY\n\n #_07C3DB: LDA.w .recoil_y,Y\n #_07C3DE: TAX\n\n #_07C3DF: LDA.b $66\n #_07C3E1: BNE .dont_flip\n\n #_07C3E3: TXA\n #_07C3E4: EOR.b #$FF\n #_07C3E6: INC A\n #_07C3E7: TAX\n\n.dont_flip\n #_07C3E8: STX.b $27\n #_07C3EA: STZ.b $28\n\n #_07C3EC: LDA.w .recoil_z,Y\n #_07C3EF: STA.b $29\n #_07C3F1: STA.w $02C7\n\n #_07C3F4: STZ.b $24\n #_07C3F6: STZ.b $25\n\n #_07C3F8: LDA.w .timer,Y\n #_07C3FB: STA.b $46\n\n #_07C3FD: LDA.b #$02\n #_07C3FF: STA.b $4D\n\n #_07C401: STZ.w $0360\n\n #_07C404: LDA.b #$06 ; LINKSTATE 06\n #_07C406: STA.b $5D\n\n #_07C408: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_FindValidLandingTile_DiagonalNorth", + "code": "Link_FindValidLandingTile_DiagonalNorth:\n #_07C46D: LDA.b $3E\n #_07C46F: PHA\n\n #_07C470: LDA.b $22\n #_07C472: PHA\n\n #_07C473: LDA.b $23\n #_07C475: PHA\n\n #_07C476: LDX.b $66\n #_07C478: PHX\n\n #_07C479: LDY.b #$01\n #_07C47B: CPX.b #$02\n #_07C47D: BNE .positive\n\n #_07C47F: LDY.b #$FF\n\n.positive\n #_07C481: STY.b $28\n\n #_07C483: LDA.b #$00\n #_07C485: STA.b $66\n\n #_07C487: JSR LinkHop_FindLandingSpotDiagonallyDown\n\n #_07C48A: PLX\n\n #_07C48B: PLA\n #_07C48C: STA.b $23\n\n #_07C48E: PLA\n #_07C48F: STA.b $22\n\n #_07C491: PLA\n #_07C492: STA.b $3E\n\n; ---------------------------------------------------------\n\n #_07C494: REP #$20\n\n #_07C496: LDA.b $32\n #_07C498: SEC\n #_07C499: SBC.b $20\n #_07C49B: LSR A\n #_07C49C: LSR A\n #_07C49D: LSR A\n #_07C49E: TAY\n\n #_07C49F: LDA.b $32\n #_07C4A1: STA.b $20\n\n #_07C4A3: SEP #$20\n\n #_07C4A5: LDA.w .recoil_y,Y\n #_07C4A8: EOR.b #$FF\n #_07C4AA: INC A\n #_07C4AB: STA.b $27\n\n #_07C4AD: LDA.w .recoil_x,Y\n #_07C4B0: CPX.b #$02\n #_07C4B2: BNE .dont_flip_sign\n\n #_07C4B4: EOR.b #$FF\n #_07C4B6: INC A\n\n.dont_flip_sign\n #_07C4B7: STA.b $28\n\n #_07C4B9: LDA.w .recoil_z,Y\n #_07C4BC: STA.b $29\n #_07C4BE: STA.w $02C7\n\n #_07C4C1: STZ.b $24\n #_07C4C3: STZ.b $25\n #_07C4C5: STZ.w $0364\n\n #_07C4C8: LDA.b #$02\n #_07C4CA: STA.b $4D\n\n #_07C4CC: STZ.w $0360\n\n #_07C4CF: LDA.b #$0D ; LINKSTATE 0D\n #_07C4D1: STA.b $5D\n\n #_07C4D3: RTS", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Horizontal", + "code": "StartMovementCollisionChecks_Horizontal:\n #_07C4D4: LDA.b $31\n #_07C4D6: BNE .moving_on_axis\n\n #_07C4D8: RTS", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Horizontal_HandleIndoors", + "code": "StartMovementCollisionChecks_Horizontal_HandleIndoors:\n #_07C4FF: LDA.w $0308\n #_07C502: BMI .carrying_something\n\n #_07C504: LDA.b $46\n #_07C506: BEQ .not_taking_damage\n\n.carrying_something\n #_07C508: LDA.b $0E\n #_07C50A: LSR A\n #_07C50B: LSR A\n #_07C50C: LSR A\n #_07C50D: LSR A\n #_07C50E: TSB.b $0E\n\n #_07C510: BRL ResetDoorPropsIfMovingWall_Horizontal\n\n; ---------------------------------------------------------\n\n.not_taking_damage\n #_07C513: LDA.b $6A\n #_07C515: BNE .not_moving_diagonally\n\n #_07C517: STZ.b $57\n\n.not_moving_diagonally\n #_07C519: LDA.b $6C\n #_07C51B: CMP.b #$01\n #_07C51D: BNE HandleAutoDoorFlagging_Horizontal\n\n #_07C51F: LDA.b $6A\n #_07C521: BNE HandleAutoDoorFlagging_Horizontal\n\n #_07C523: LDA.w $046C\n #_07C526: CMP.b #$03\n #_07C528: BNE .no_moving_floor\n\n #_07C52A: LDA.b $EE\n #_07C52C: BEQ .no_moving_floor\n\n #_07C52E: BRL CheckForMasksRupeesConveyors_Horizontal\n\n.no_moving_floor\n #_07C531: JSR SnapOnX\n #_07C534: JSR ChangeAxisOfPerpendicularDoorMovement_Horizontal\n #_07C537: BRL HandleNudgingInADoor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleAutoDoorFlagging_Horizontal", + "code": "HandleAutoDoorFlagging_Horizontal:\n #_07C53A: LDA.b $0E\n #_07C53C: AND.b #$70\n #_07C53E: BEQ ResetDoorPropsIfMovingWall_Horizontal\n\n #_07C540: STZ.b $05\n\n #_07C542: LDA.b $0F\n #_07C544: AND.b #$07\n #_07C546: BEQ .no_auto_move\n\n #_07C548: LDY.b #$02\n\n #_07C54A: LDA.b $31\n #_07C54C: BMI .negative_x\n\n #_07C54E: LDY.b #$03\n\n.negative_x\n #_07C550: LDA.w AutoMove49Directions,Y\n #_07C553: STA.b $49\n\n; ---------------------------------------------------------\n\n.no_auto_move\n #_07C555: LDA.b #$02\n #_07C557: STA.b $6C\n\n #_07C559: STZ.w $03F3\n\n #_07C55C: LDA.b $0E\n #_07C55E: AND.b #$70\n #_07C560: CMP.b #$70\n #_07C562: BEQ .dont_snap\n\n #_07C564: LDA.b $0E\n #_07C566: AND.b #$07\n #_07C568: BNE .go_snap\n\n #_07C56A: LDA.b $0E\n #_07C56C: AND.b #$70\n #_07C56E: BNE .dont_snap\n\n #_07C570: BRA ResetDoorPropsIfMovingWall_Horizontal\n\n.go_snap\n #_07C572: STZ.b $6B\n #_07C574: STZ.b $6C\n\n #_07C576: JSR SnapOnX\n\n #_07C579: JML CalculateSnapScratch_Horizontal\n\n.dont_snap\n #_07C57D: LDA.w $0315\n #_07C580: AND.b #$02\n #_07C582: BNE .exit\n\n #_07C584: LDA.b $50\n #_07C586: AND.b #$FD\n #_07C588: STA.b $50\n\n.exit\n #_07C58A: RTS", + "file": "bank_07.asm" + }, + { + "name": "ResetDoorPropsIfMovingWall_Horizontal", + "code": "ResetDoorPropsIfMovingWall_Horizontal:\n #_07C58B: LDA.w $0315\n #_07C58E: AND.b #$02\n #_07C590: BNE CheckForMasksRupeesConveyors_Horizontal\n\n #_07C592: LDA.b $50\n #_07C594: AND.b #$FD\n #_07C596: STA.b $50\n\n #_07C598: STZ.b $6C\n #_07C59A: STZ.b $EF\n #_07C59C: STZ.b $49\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CheckForMasksRupeesConveyors_Horizontal", + "code": "CheckForMasksRupeesConveyors_Horizontal:\n #_07C59E: LDA.b $0E\n #_07C5A0: AND.b #$02\n #_07C5A2: BNE HandleMasksRupeesConveyors_Horizontal\n\n #_07C5A4: LDA.b $0C\n #_07C5A6: AND.b #$05\n #_07C5A8: BEQ HandleMasksRupeesConveyors_Horizontal\n\n #_07C5AA: STZ.w $03F3\n\n #_07C5AD: JSR FlagMovingIntoSlopes_Horizontal\n\n #_07C5B0: LDA.b $6B\n #_07C5B2: AND.b #$0F\n #_07C5B4: BEQ HandleMasksRupeesConveyors_Horizontal\n\n #_07C5B6: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleMasksRupeesConveyors_Horizontal", + "code": "HandleMasksRupeesConveyors_Horizontal:\n #_07C5B7: STZ.b $6B\n\n #_07C5B9: LDA.b $EE\n #_07C5BB: BNE .lower_layer\n\n #_07C5BD: LDA.w $034C\n #_07C5C0: AND.b #$07\n #_07C5C2: BEQ .no_mask_1C\n\n #_07C5C4: LDA.b #$01\n #_07C5C6: TSB.w $0322\n\n #_07C5C9: BRA .check_for_rupee_tiles\n\n; ---------------------------------------------------------\n\n.no_mask_1C\n #_07C5CB: LDA.w $02E8\n #_07C5CE: AND.b #$07\n #_07C5D0: BNE .check_for_rupee_tiles\n\n #_07C5D2: LDA.b $0E\n #_07C5D4: AND.b #$02\n #_07C5D6: BNE .check_for_rupee_tiles\n\n #_07C5D8: LDA.w $0322\n #_07C5DB: AND.b #$FE\n #_07C5DD: STA.w $0322\n #_07C5E0: BRA .check_for_rupee_tiles\n\n.lower_layer\n #_07C5E2: LDA.w $0320\n #_07C5E5: AND.b #$07\n #_07C5E7: BEQ .no_mask0C\n\n #_07C5E9: LDA.b #$02\n #_07C5EB: TSB.w $0322\n\n #_07C5EE: BRA .check_for_rupee_tiles\n\n.no_mask0C\n #_07C5F0: LDA.w $0322\n #_07C5F3: AND.b #$FD\n #_07C5F5: STA.w $0322\n\n; ---------------------------------------------------------\n\n.check_for_rupee_tiles\n #_07C5F8: LDA.w $02F7\n #_07C5FB: AND.b #$22\n #_07C5FD: BEQ .no_rupee_tiles\n\n #_07C5FF: LDX.b #$00\n #_07C601: AND.b #$20\n #_07C603: BEQ .no_rupee_from_this_side\n\n #_07C605: LDX.b #$08\n\n.no_rupee_from_this_side\n #_07C607: STX.b $00\n\n #_07C609: STZ.b $01\n\n #_07C60B: LDA.b $66\n #_07C60D: ASL A\n #_07C60E: TAY\n\n #_07C60F: REP #$20\n\n #_07C611: LDA.l $7EF360\n #_07C615: CLC\n #_07C616: ADC.w #$0005\n #_07C619: STA.l $7EF360\n\n #_07C61D: LDA.b $20\n #_07C61F: CLC\n #_07C620: ADC.w RupeeTileOffset_y,Y\n #_07C623: SEC\n #_07C624: SBC.b $00\n #_07C626: STA.b $00\n\n #_07C628: LDA.b $22\n #_07C62A: CLC\n #_07C62B: ADC.w RupeeTileOffset_x,Y\n #_07C62E: STA.b $02\n\n #_07C630: SEP #$20\n\n #_07C632: JSL Underworld_DeleteRupeeTile\n\n #_07C636: LDA.b #$0A ; SFX3.0A\n #_07C638: JSR PlaySFX_Set3\n\n; ---------------------------------------------------------\n\n.no_rupee_tiles\n #_07C63B: LDY.b #$01 ; up\n\n #_07C63D: LDA.w $03F1\n #_07C640: AND.b #$22\n #_07C642: BEQ .no_conveyor_ud\n\n #_07C644: AND.b #$20\n #_07C646: BEQ .up_conveyor\n\n #_07C648: LDY.b #$02 ; down\n\n.up_conveyor\n #_07C64A: STY.w $03F3\n\n #_07C64D: BRA Link_CheckForLedgeTile_Horizontal\n\n; ---------------------------------------------------------\n\n.no_conveyor_ud\n #_07C64F: LDY.b #$03 ; left\n\n #_07C651: LDA.w $03F2\n #_07C654: AND.b #$22\n #_07C656: BEQ .no_conveyor_lr\n\n #_07C658: AND.b #$20\n #_07C65A: BEQ .left_conveyor\n\n #_07C65C: LDY.b #$04 ; right\n\n.left_conveyor\n #_07C65E: STY.w $03F3\n\n #_07C661: BRA Link_CheckForLedgeTile_Horizontal\n\n; ---------------------------------------------------------\n\n.no_conveyor_lr\n #_07C663: LDA.w $02E8\n #_07C666: AND.b #$07\n #_07C668: BNE Link_CheckForLedgeTile_Horizontal\n\n #_07C66A: LDA.b $0E\n #_07C66C: AND.b #$02\n #_07C66E: BNE Link_CheckForLedgeTile_Horizontal\n\n #_07C670: STZ.w $03F3\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForLedgeTile_Horizontal", + "code": "Link_CheckForLedgeTile_Horizontal:\n #_07C673: LDA.w $036E\n #_07C676: AND.b #$07\n #_07C678: CMP.b #$07\n #_07C67A: BNE Link_CheckForWaterTiles_Horizontal\n\n #_07C67C: JSR RunLedgeHopTimer\n #_07C67F: BCC Link_CheckForWaterTiles_Horizontal\n\n #_07C681: JSR Link_CancelDash\n\n #_07C684: INC.w $047A\n\n #_07C687: LDA.b #$02\n #_07C689: STA.b $4D\n\n #_07C68B: BRA HandleUnderworldHopOntoWater_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForWaterTiles_Horizontal", + "code": "Link_CheckForWaterTiles_Horizontal:\n #_07C68D: LDA.w $0341\n #_07C690: AND.b #$07\n #_07C692: CMP.b #$07\n #_07C694: BNE .not_deep_water\n\n #_07C696: LDA.w $0345\n #_07C699: BNE .not_deep_water\n\n #_07C69B: LDA.b $5D\n #_07C69D: CMP.b #$06 ; LINKSTATE 06\n #_07C69F: BEQ .not_deep_water\n\n #_07C6A1: LDA.b $3E\n #_07C6A3: STA.b $20\n\n #_07C6A5: LDA.b $40\n #_07C6A7: STA.b $21\n\n #_07C6A9: LDA.b $3F\n #_07C6AB: STA.b $22\n\n #_07C6AD: LDA.b $41\n #_07C6AF: STA.b $23\n\n #_07C6B1: JSR Link_CancelDash\n\n #_07C6B4: LDA.b $1D\n #_07C6B6: BNE .dont_change_layer\n\n #_07C6B8: JSL Underworld_HandleLayerChange\n #_07C6BC: BRA HandleUnderworldHopOntoWater_Horizontal\n\n.dont_change_layer\n #_07C6BE: LDA.b #$01\n #_07C6C0: STA.w $0345\n\n #_07C6C3: LDA.b $26\n #_07C6C5: STA.w $0340\n\n #_07C6C8: STZ.w $0308\n #_07C6CB: STZ.w $0309\n\n #_07C6CE: STZ.w $0376\n\n #_07C6D1: STZ.b $5E\n\n #_07C6D3: JSL Link_ResetSwimmingState\n\n; =========================================================\n\n#HandleUnderworldHopOntoWater_Horizontal:\n #_07C6D7: LDA.b #$01\n #_07C6D9: STA.w $037B\n\n #_07C6DC: JSR Link_HopInOrOutOfWater_Horizontal\n\n #_07C6DF: LDA.b #$20 ; SFX2.20\n #_07C6E1: JSR PlaySFX_Set2\n\n #_07C6E4: BRA HandleUnderworldPitSlip_Horizontal\n\n.not_deep_water\n #_07C6E6: LDA.w $0343\n #_07C6E9: AND.b #$07\n #_07C6EB: CMP.b #$07\n #_07C6ED: BNE HandleUnderworldPitSlip_Horizontal\n\n #_07C6EF: LDA.w $0345\n #_07C6F2: BEQ HandleUnderworldPitSlip_Horizontal\n\n #_07C6F4: LDA.b $4D\n #_07C6F6: BEQ .not_in_recoil\n\n #_07C6F8: LDA.b #$07\n #_07C6FA: STA.b $0E\n #_07C6FC: BRA HandleUnderworldPitSlip_Horizontal\n\n.not_in_recoil\n #_07C6FE: JSR Link_CancelDash\n\n #_07C701: LDA.b $4D\n #_07C703: BNE HandleUnderworldPitSlip_Horizontal\n\n #_07C705: LDA.w $0340\n #_07C708: STA.b $26\n\n #_07C70A: STZ.w $0345\n\n #_07C70D: LDA.b #$15 ; ANCILLA 15\n #_07C70F: LDY.b #$00\n #_07C711: JSL AncillaAdd_Splash\n\n #_07C715: LDA.b #$01\n #_07C717: STA.w $037B\n\n #_07C71A: JSR Link_HopInOrOutOfWater_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandleUnderworldPitSlip_Horizontal", + "code": "HandleUnderworldPitSlip_Horizontal:\n #_07C71D: LDA.b $59\n #_07C71F: AND.b #$05\n #_07C721: BEQ HandleUnderworldSpikeBlockCollision_Horizontal\n\n #_07C723: LDA.b $0E\n #_07C725: AND.b #$02\n #_07C727: BNE HandleUnderworldSpikeBlockCollision_Horizontal\n\n #_07C729: LDA.b $5D\n #_07C72B: CMP.b #$05 ; LINKSTATE 05\n #_07C72D: BEQ .exit\n\n #_07C72F: CMP.b #$02 ; LINKSTATE 02\n #_07C731: BEQ .exit\n\n #_07C733: LDA.b #$09\n #_07C735: STA.b $5C\n\n #_07C737: STZ.b $5A\n\n #_07C739: LDA.b #$01\n #_07C73B: STA.b $5B\n\n #_07C73D: LDA.b #$01 ; LINKSTATE 01\n #_07C73F: STA.b $5D\n\n.exit\n #_07C741: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleUnderworldSpikeBlockCollision_Horizontal", + "code": "HandleUnderworldSpikeBlockCollision_Horizontal:\n #_07C742: STZ.b $5B\n\n #_07C744: LDA.w $02E8\n #_07C747: AND.b #$07\n #_07C749: BEQ .check_collision_type\n\n #_07C74B: LDA.b $46\n #_07C74D: ORA.w $031F\n #_07C750: ORA.b $55\n #_07C752: BNE .no_spike_damage\n\n #_07C754: LDA.b $22\n\n #_07C756: LDY.b $66\n #_07C758: CPY.b #$02\n #_07C75A: BNE .didnt_move\n\n #_07C75C: AND.b #$04\n #_07C75E: BEQ .not_on_4px_edge\n #_07C760: BRA .check_collision_type\n\n.didnt_move\n #_07C762: AND.b #$04\n #_07C764: BEQ .check_collision_type\n\n.not_on_4px_edge\n #_07C766: LDA.w $031F\n #_07C769: BNE .check_collision_type\n\n #_07C76B: LDA.l $7EF35B\n #_07C76F: TAY\n\n #_07C770: LDA.w SpikeDamageValues,Y\n #_07C773: STA.w $0373\n\n #_07C776: JSR Link_CancelDash\n #_07C779: JSR Link_ForceUnequipCape_quietly\n\n #_07C77C: BRL LinkApplyTileRebound\n\n; ---------------------------------------------------------\n\n.no_spike_damage\n #_07C77F: LDA.w $02E8\n #_07C782: AND.b #$07\n #_07C784: STA.b $0E\n\n.check_collision_type\n #_07C786: LDA.w $046C\n #_07C789: BEQ .ignore_layer\n\n #_07C78B: CMP.b #$04\n #_07C78D: BEQ .ignore_layer\n\n #_07C78F: LDA.b $EE\n #_07C791: BNE CancelStairDragWithHorizontals\n\n.ignore_layer\n #_07C793: LDA.b $5F\n #_07C795: ORA.b $60\n #_07C797: BEQ .not_pushing_block\n\n #_07C799: LDA.b $6A\n #_07C79B: BNE .not_pushing_block\n\n #_07C79D: LDA.b $5F\n #_07C79F: STA.w $02C2\n\n #_07C7A2: DEC.b $61\n #_07C7A4: BPL CancelStairDragWithHorizontals\n\n; ---------------------------------------------------------\n\n #_07C7A6: REP #$20\n\n #_07C7A8: LDY.b #$0F\n #_07C7AA: LDA.b $5F\n\n.check_next_block\n #_07C7AC: ASL A\n #_07C7AD: BCC .skip_block\n\n #_07C7AF: PHA\n #_07C7B0: PHY\n\n #_07C7B1: SEP #$20\n\n #_07C7B3: JSR FindFreeMovingBlockSlot\n #_07C7B6: BCS .no_free_slot\n\n #_07C7B8: STX.b $0E\n\n #_07C7BA: TYA\n #_07C7BB: ASL A\n #_07C7BC: TAX\n\n #_07C7BD: JSR InitializePushBlock\n #_07C7C0: BCS .no_free_slot\n\n #_07C7C2: LDA.b $0E\n #_07C7C4: ASL A\n #_07C7C5: TAY\n\n #_07C7C6: JSR Underworld_DrawSinglePushBlock\n\n #_07C7C9: TYX\n\n #_07C7CA: LDY.b $66\n\n #_07C7CC: TYA\n #_07C7CD: ASL A\n #_07C7CE: STA.w $05F8,X\n #_07C7D1: STA.w $0474\n\n #_07C7D4: LDA.w $05E4,X\n\n #_07C7D7: CPY.b #$02\n #_07C7D9: BEQ .not_pushing_left\n\n #_07C7DB: DEC A\n\n.not_pushing_left\n #_07C7DC: AND.b #$0F\n #_07C7DE: STA.w $05E8,X\n\n.no_free_slot\n #_07C7E1: REP #$20\n\n #_07C7E3: PLY\n #_07C7E4: PLA\n\n.skip_block\n #_07C7E5: DEY\n #_07C7E6: BPL .check_next_block\n\n; ---------------------------------------------------------\n\n #_07C7E8: SEP #$20\n\n.not_pushing_block\n #_07C7EA: LDA.b #$15\n #_07C7EC: STA.b $61\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "CancelStairDragWithHorizontals", + "code": "CancelStairDragWithHorizontals:\n #_07C7EE: LDA.b $6A\n #_07C7F0: BNE HandlePushingBonkingSnaps_Horizontal\n\n #_07C7F2: STZ.b $57\n\n #_07C7F4: LDA.b $5E\n #_07C7F6: CMP.b #$02\n #_07C7F8: BNE HandlePushingBonkingSnaps_Horizontal\n\n #_07C7FA: STZ.b $5E\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandlePushingBonkingSnaps_Horizontal", + "code": "HandlePushingBonkingSnaps_Horizontal:\n #_07C7FC: LDA.b $0E\n #_07C7FE: AND.b #$07\n #_07C800: BNE .check_swimming\n\n #_07C802: BRL RestartPushingTimer_UnflagDoors_Horizontal\n\n.check_swimming\n #_07C805: LDA.b $5D\n #_07C807: CMP.b #$04 ; LINKSTATE 04\n #_07C809: BNE .not_swimming_or_moving\n\n #_07C80B: LDA.w $0312\n #_07C80E: BNE .not_swimming_or_moving\n\n #_07C810: JSR ResetAllAcceleration\n\n.not_swimming_or_moving\n #_07C813: LDA.b $0E\n #_07C815: AND.b #$02\n #_07C817: BEQ .do_no_bonk\n\n #_07C819: LDA.b $0E\n #_07C81B: PHA\n\n #_07C81C: JSR Link_BonkAndSmash\n #_07C81F: JSR RepelDash\n\n #_07C822: PLA\n #_07C823: STA.b $0E\n\n.do_no_bonk\n #_07C825: LDA.b #$01\n #_07C827: STA.w $0302\n\n #_07C82A: LDA.b $0E\n #_07C82C: AND.b #$07\n #_07C82E: CMP.b #$07\n #_07C830: BNE .no_x_snap\n\n #_07C832: JSR SnapOnX\n #_07C835: BRA .check_for_bonk\n\n.no_x_snap\n #_07C837: LDA.b $6A\n #_07C839: CMP.b #$02\n #_07C83B: BNE .not_horizontally_facing_diagonal\n\n.diagonal_facing_vertically\n #_07C83D: BRL RestartPushingTimer_Horizontal\n\n.not_horizontally_facing_diagonal\n #_07C840: JSR SnapOnX\n\n #_07C843: LDA.b $6A\n #_07C845: CMP.b #$01\n #_07C847: BEQ .diagonal_facing_vertically\n\n; ---------------------------------------------------------\n\n.check_for_bonk\n #_07C849: LDA.b $0E\n #_07C84B: AND.b #$05\n #_07C84D: CMP.b #$05\n #_07C84F: BEQ .definitely_bonk\n\n #_07C851: AND.b #$04\n #_07C853: BEQ .no_bonk_this_way\n\n #_07C855: LDY.b #$01\n #_07C857: LDA.b $31\n #_07C859: BMI .already_negative\n\n #_07C85B: EOR.b #$FF\n #_07C85D: INC A\n\n.already_negative\n #_07C85E: BPL .extra_positive_check\n\n #_07C860: LDY.b #$FF\n\n.extra_positive_check\n #_07C862: STY.b $00\n #_07C864: STZ.b $01\n\n #_07C866: LDA.b $0E\n #_07C868: AND.b #$02\n #_07C86A: BNE HandlePushingObstruction_Horizontal\n\n #_07C86C: LDA.b $20\n #_07C86E: AND.b #$07\n #_07C870: BNE .do_not_bonk\n\n #_07C872: JSR Link_BonkAndSmash\n #_07C875: JSR RepelDash\n\n #_07C878: BRA HandlePushingObstruction_Horizontal\n\n; ---------------------------------------------------------\n\n.no_bonk_this_way\n #_07C87A: LDY.b #$01\n\n #_07C87C: LDA.b $31\n #_07C87E: BPL .already_positive\n\n #_07C880: EOR.b #$FF\n #_07C882: INC A\n\n.already_positive\n #_07C883: BPL .make_sure_not_negative\n\n #_07C885: LDY.b #$FF\n\n.make_sure_not_negative\n #_07C887: STY.b $00\n #_07C889: STZ.b $01\n\n #_07C88B: LDA.b $0E\n #_07C88D: AND.b #$02\n #_07C88F: BNE HandlePushingObstruction_Horizontal\n\n #_07C891: LDA.b $20\n #_07C893: AND.b #$07\n #_07C895: BNE .do_not_bonk\n\n.definitely_bonk\n #_07C897: JSR Link_BonkAndSmash\n #_07C89A: JSR RepelDash\n\n #_07C89D: BRA HandlePushingObstruction_Horizontal\n\n.do_not_bonk\n #_07C89F: JSR AddAbsoluteScratchToYCoord\n\n #_07C8A2: JMP.w HandleNudging\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "HandlePushingObstruction_Horizontal", + "code": "HandlePushingObstruction_Horizontal:\n #_07C8A5: LDA.b $66\n #_07C8A7: ASL A\n #_07C8A8: CMP.b $2F\n #_07C8AA: BNE RestartPushingTimer_Horizontal\n\n #_07C8AC: LDA.w $0315\n #_07C8AF: AND.b #$01\n #_07C8B1: ASL A\n #_07C8B2: TSB.b $48\n\n #_07C8B4: LDA.b $3C\n #_07C8B6: BNE .dont_run_push_timer\n\n #_07C8B8: DEC.w $0371\n #_07C8BB: BPL EXIT_07C8E8\n\n.dont_run_push_timer\n #_07C8BD: LDY.w $0315\n\n #_07C8C0: LDA.w $02F6\n #_07C8C3: AND.b #$20\n #_07C8C5: BEQ .not_a_flaggable_door\n\n #_07C8C7: LDA.w $0315\n #_07C8CA: ASL A\n #_07C8CB: ASL A\n #_07C8CC: ASL A\n #_07C8CD: TAY\n\n.not_a_flaggable_door\n #_07C8CE: TYA\n #_07C8CF: TSB.b $48\n\n #_07C8D1: BRA RestartPushingTimer_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RestartPushingTimer_UnflagDoors_Horizontal", + "code": "RestartPushingTimer_UnflagDoors_Horizontal:\n #_07C8D3: LDA.b $EE\n #_07C8D5: BNE EXIT_07C8E8\n\n #_07C8D7: LDA.b $48\n #_07C8D9: AND.b #$F6\n #_07C8DB: STA.b $48\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "RestartPushingTimer_Horizontal", + "code": "RestartPushingTimer_Horizontal:\n #_07C8DD: LDA.b #$20\n #_07C8DF: STA.w $0371\n\n #_07C8E2: LDA.b $48\n #_07C8E4: AND.b #$FD\n #_07C8E6: STA.b $48\n\n; ---------------------------------------------------------\n\n#EXIT_07C8E8:\n #_07C8E8: RTS", + "file": "bank_07.asm" + }, + { + "name": "StartMovementCollisionChecks_Horizontal_HandleOutdoors", + "code": "StartMovementCollisionChecks_Horizontal_HandleOutdoors:\n #_07C8E9: LDA.b $6A\n #_07C8EB: BNE .no_speed_reset\n\n #_07C8ED: STZ.b $57\n\n #_07C8EF: LDA.b $5E\n #_07C8F1: CMP.b #$02\n #_07C8F3: BNE .no_speed_reset\n\n #_07C8F5: STZ.b $5E\n\n.no_speed_reset\n #_07C8F7: LDA.b $59\n #_07C8F9: AND.b #$05\n #_07C8FB: BEQ HandleLiftablesBeforeDeepWater_Horizontal\n\n #_07C8FD: LDA.b $0E\n #_07C8FF: AND.b #$02\n #_07C901: BNE HandleLiftablesBeforeDeepWater_Horizontal\n\n #_07C903: LDA.b $5D\n #_07C905: CMP.b #$05 ; LINKSTATE 05\n #_07C907: BEQ .exit\n\n #_07C909: CMP.b #$02 ; LINKSTATE 02\n #_07C90B: BEQ .exit\n\n #_07C90D: LDA.b #$09\n #_07C90F: STA.b $5C\n\n #_07C911: STZ.b $5A\n\n #_07C913: LDA.b #$01\n #_07C915: STA.b $5B\n\n #_07C917: LDA.b #$01 ; LINKSTATE 01\n #_07C919: STA.b $5D\n\n.exit\n #_07C91B: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleLiftablesBeforeDeepWater_Horizontal", + "code": "HandleLiftablesBeforeDeepWater_Horizontal:\n #_07C91C: LDA.w $0366\n #_07C91F: AND.b #$02\n #_07C921: BEQ .not_touching_some_liftable\n\n #_07C923: LDA.w $036A\n #_07C926: LSR A\n #_07C927: STA.w $0369\n\n #_07C92A: BRA .index_is_set\n\n.not_touching_some_liftable\n #_07C92C: STZ.w $0369\n\n.index_is_set\n #_07C92F: LDA.w $0341\n #_07C932: AND.b #$04\n #_07C934: BEQ Link_HandleEnteringWater_Horizontal\n\n #_07C936: BRA Link_CheckEnteringWater_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07C938", + "code": "UNREACHABLE_07C938:\n #_07C938: LDA.w $0341\n #_07C93B: AND.b #$07\n #_07C93D: CMP.b #$07\n #_07C93F: BNE Link_HandleEnteringWater_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckEnteringWater_Horizontal", + "code": "Link_CheckEnteringWater_Horizontal:\n #_07C941: LDA.w $0345\n #_07C944: BNE Link_HandleEnteringWater_Horizontal\n\n #_07C946: LDA.b $4D\n #_07C948: BNE Link_HandleEnteringWater_Horizontal\n\n #_07C94A: JSR Link_CancelDash\n #_07C94D: JSR Link_ResetSwordAndItemUsage\n\n #_07C950: LDA.b #$01\n #_07C952: STA.w $0345\n\n #_07C955: LDA.b $26\n #_07C957: STA.w $0340\n\n #_07C95A: JSL Link_ResetSwimmingState\n\n #_07C95E: STZ.w $0376\n #_07C961: STZ.b $5E\n\n #_07C963: LDA.w $0351\n #_07C966: CMP.b #$01\n #_07C968: BNE .jump_into_water\n\n #_07C96A: JSR Link_ForceUnequipCape_quietly\n #_07C96D: LDA.l $7EF356\n #_07C971: BEQ .jump_into_water\n\n #_07C973: LDA.w $02E0\n #_07C976: BNE Link_HandleEnteringWater_Horizontal\n\n #_07C978: LDA.b #$04 ; LINKSTATE 04\n #_07C97A: STA.b $5D\n\n #_07C97C: BRA Link_HandleEnteringWater_Horizontal\n\n; ---------------------------------------------------------\n\n.jump_into_water\n #_07C97E: LDA.b $3E\n #_07C980: STA.b $20\n\n #_07C982: LDA.b $40\n #_07C984: STA.b $21\n\n #_07C986: LDA.b $3F\n #_07C988: STA.b $22\n\n #_07C98A: LDA.b $41\n #_07C98C: STA.b $23\n\n #_07C98E: LDA.b #$01\n #_07C990: STA.w $037B\n\n #_07C993: JSR Link_HopInOrOutOfWater_Horizontal\n\n #_07C996: LDA.b #$20 ; SFX2.20\n #_07C998: JSR PlaySFX_Set2\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleEnteringWater_Horizontal", + "code": "Link_HandleEnteringWater_Horizontal:\n #_07C99B: LDA.w $0345\n #_07C99E: BEQ .not_on_deep_water\n\n #_07C9A0: LDA.w $036E\n #_07C9A3: AND.b #$07\n #_07C9A5: CMP.b #$07\n #_07C9A7: BEQ .no_horizontal_ledges\n #_07C9A9: BRA .no_vertical_ledges\n\n.not_on_deep_water\n #_07C9AB: LDA.w $036D\n #_07C9AE: AND.b #$42\n #_07C9B0: BEQ .no_vertical_ledges\n\n.no_horizontal_ledges\n #_07C9B2: LDA.b #$07\n #_07C9B4: STA.b $0E\n\n #_07C9B6: BRL HandlePushingBonkingSnaps_Horizontal\n\n.no_vertical_ledges\n #_07C9B9: LDA.w $0343\n #_07C9BC: AND.b #$07\n #_07C9BE: CMP.b #$07\n #_07C9C0: BNE Link_HandleLedgeTile_Horizontal\n\n #_07C9C2: LDA.w $0345\n #_07C9C5: BEQ Link_HandleLedgeTile_Horizontal\n\n #_07C9C7: JSR Link_CancelDash\n\n #_07C9CA: LDA.b $4D\n #_07C9CC: BNE Link_HandleLedgeTile_Horizontal\n\n #_07C9CE: LDA.w $0340\n #_07C9D1: STA.b $26\n\n #_07C9D3: STZ.w $0345\n\n #_07C9D6: LDA.b #$15 ; ANCILLA 15\n #_07C9D8: LDY.b #$00\n #_07C9DA: JSL AncillaAdd_Splash\n\n #_07C9DE: LDA.b #$01\n #_07C9E0: STA.w $037B\n\n #_07C9E3: BRL Link_HopInOrOutOfWater_Horizontal\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleLedgeTile_Horizontal", + "code": "Link_HandleLedgeTile_Horizontal:\n #_07C9E6: LDA.w $036E\n #_07C9E9: AND.b #$07\n #_07C9EB: BEQ Link_CheckForWeirdLedges_Horizontal\n\n #_07C9ED: JSR RunLedgeHopTimer\n #_07C9F0: BCC Link_CheckForWeirdLedges_Horizontal\n\n #_07C9F2: LDA.b #$20 ; SFX2.20\n #_07C9F4: JSR PlaySFX_Set2\n\n #_07C9F7: LDX.b #$10\n\n #_07C9F9: LDA.b $66\n #_07C9FB: AND.b #$01\n #_07C9FD: BNE .positive\n\n #_07C9FF: TXA\n #_07CA00: EOR.b #$FF\n #_07CA02: INC A\n #_07CA03: TAX\n\n.positive\n #_07CA04: STX.b $28\n\n #_07CA06: JSR Link_CancelDash\n\n #_07CA09: LDA.b #$02\n #_07CA0B: STA.b $4D\n\n #_07CA0D: LDA.b #$14\n #_07CA0F: STA.w $0362\n #_07CA12: STA.w $0363\n\n #_07CA15: LDA.b #$FF\n #_07CA17: STA.w $0364\n\n #_07CA1A: LDA.b #$0C ; LINKSTATE 0C\n #_07CA1C: STA.b $5D\n\n #_07CA1E: LDA.b #$01\n #_07CA20: STA.w $037B\n #_07CA23: STA.b $78\n\n #_07CA25: STZ.b $48\n #_07CA27: STZ.b $5E\n\n #_07CA29: LDA.b $1B\n #_07CA2B: BNE .indoors\n\n #_07CA2D: LDA.b #$02\n #_07CA2F: STA.b $EE\n\n.indoors\n #_07CA31: LDA.b $66\n #_07CA33: AND.b #$FD\n #_07CA35: ASL A\n #_07CA36: TAY\n\n #_07CA37: LDA.b $22\n #_07CA39: PHA\n\n #_07CA3A: LDA.b $23\n #_07CA3C: PHA\n\n #_07CA3D: JSR Link_HoppingHorizontally_FindTile_Horizontal\n\n #_07CA40: LDA.b #$01\n #_07CA42: STA.b $66\n\n #_07CA44: CPX.b #$FF\n #_07CA46: BEQ .find_south\n\n #_07CA48: JSR Link_HoppingHorizontally_FindTile_Vertical\n #_07CA4B: BRL .continue\n\n.find_south\n #_07CA4E: JSR LinkHop_FindTileToLandOnSouth\n\n.continue\n #_07CA51: PLA\n #_07CA52: STA.b $23\n\n #_07CA54: PLA\n #_07CA55: STA.b $22\n\n #_07CA57: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForWeirdLedges_Horizontal", + "code": "Link_CheckForWeirdLedges_Horizontal:\n #_07CA58: LDA.w $0370\n #_07CA5B: AND.b #$77\n #_07CA5D: BEQ CheckLedgeTypes_Horizontal\n\n #_07CA5F: JSR RunLedgeHopTimer\n #_07CA62: BCC CheckLedgeTypes_Horizontal\n\n #_07CA64: LDA.b #$20 ; SFX2.20\n #_07CA66: JSR PlaySFX_Set2\n\n #_07CA69: LDX.b #$0F ; LINKSTATE 0F\n\n #_07CA6B: AND.b #$07\n #_07CA6D: BNE .dumb_thing_has_sfx\n\n #_07CA6F: LDX.b #$10 ; LINKSTATE 10\n\n.dumb_thing_has_sfx\n #_07CA71: STX.b $5D\n\n #_07CA73: LDX.b #$10\n\n #_07CA75: LDA.b $66\n #_07CA77: AND.b #$01\n #_07CA79: BNE .positive\n\n #_07CA7B: LDX.b #$F0\n\n.positive\n #_07CA7D: STX.b $28\n\n #_07CA7F: JSR Link_CancelDash\n\n #_07CA82: LDA.b #$02\n #_07CA84: STA.b $4D\n\n #_07CA86: LDA.b #$14\n #_07CA88: STA.w $0362\n #_07CA8B: STA.w $0363\n\n #_07CA8E: LDA.b #$FF\n #_07CA90: STA.w $0364\n\n #_07CA93: STZ.b $46\n\n #_07CA95: LDA.b #$01\n #_07CA97: STA.w $037B\n #_07CA9A: STA.b $78\n\n #_07CA9C: STZ.b $48\n #_07CA9E: STZ.b $5E\n\n #_07CAA0: RTS", + "file": "bank_07.asm" + }, + { + "name": "CheckLedgeTypes_Horizontal", + "code": "CheckLedgeTypes_Horizontal:\n #_07CAA1: LDA.w $036E\n #_07CAA4: AND.b #$70\n #_07CAA6: BEQ .dont_hop\n\n #_07CAA8: LDA.w $036E\n #_07CAAB: AND.b #$07\n #_07CAAD: BNE .dont_hop\n\n #_07CAAF: LDA.w $0370\n #_07CAB2: AND.b #$77\n #_07CAB4: BNE .dont_hop\n\n #_07CAB6: LDA.b $5D\n #_07CAB8: CMP.b #$0D ; LINKSTATE 0D\n #_07CABA: BEQ .dont_hop\n\n #_07CABC: JSR RunLedgeHopTimer\n #_07CABF: BCC .dont_hop\n\n #_07CAC1: LDA.b #$20 ; SFX2.20\n #_07CAC3: JSR PlaySFX_Set2\n #_07CAC6: JSR Link_CancelDash\n\n #_07CAC9: LDA.b #$01\n #_07CACB: STA.w $037B\n\n #_07CACE: STZ.b $48\n #_07CAD0: STZ.b $5E\n\n #_07CAD2: BRL Link_FindValidLandingTile_DiagonalNorth\n\n; ---------------------------------------------------------\n\n.dont_hop\n #_07CAD5: LDA.w $036F\n #_07CAD8: AND.b #$07\n #_07CADA: BEQ .dont_quickhop\n\n #_07CADC: LDA.w $036E\n #_07CADF: AND.b #$07\n #_07CAE1: BNE .dont_quickhop\n\n #_07CAE3: LDA.w $0370\n #_07CAE6: AND.b #$77\n #_07CAE8: BNE .dont_quickhop\n\n #_07CAEA: JSR RunLedgeHopTimer\n #_07CAED: BCC .dont_quickhop\n\n #_07CAEF: LDX.b #$10\n\n #_07CAF1: LDA.b $66\n #_07CAF3: AND.b #$01\n #_07CAF5: BNE .dont_invert\n\n #_07CAF7: TXA\n #_07CAF8: EOR.b #$FF\n #_07CAFA: INC A\n #_07CAFB: TAX\n\n.dont_invert\n #_07CAFC: STX.b $28\n\n #_07CAFE: JSR Link_CancelDash\n\n #_07CB01: LDA.b #$02\n #_07CB03: STA.b $4D\n\n #_07CB05: LDA.b #$14\n #_07CB07: STA.w $0362\n #_07CB0A: STA.w $0363\n\n #_07CB0D: LDA.b #$FF\n #_07CB0F: STA.w $0364\n\n #_07CB12: LDA.b #$0E ; LINKSTATE 0E\n #_07CB14: STA.b $5D\n\n #_07CB16: STZ.b $46\n\n #_07CB18: LDA.b #$01\n #_07CB1A: STA.w $037B\n #_07CB1D: STA.b $78\n\n #_07CB1F: STZ.b $48\n #_07CB21: STZ.b $5E\n\n #_07CB23: RTS", + "file": "bank_07.asm" + }, + { + "name": "SnapOnX", + "code": "SnapOnX:\n #_07CB84: REP #$20\n\n #_07CB86: LDA.b $22\n #_07CB88: AND.w #$0007\n\n #_07CB8B: LDY.b $31\n #_07CB8D: BPL .positive_x\n\n #_07CB8F: SEC\n #_07CB90: SBC.w #$0008\n\n.positive_x\n #_07CB93: EOR.w #$FFFF\n #_07CB96: INC A\n\n #_07CB97: CLC\n #_07CB98: ADC.b $22\n #_07CB9A: STA.b $22\n\n #_07CB9C: SEP #$20\n\n #_07CB9E: RTS", + "file": "bank_07.asm" + }, + { + "name": "CalculateSnapScratch_Horizontal", + "code": "CalculateSnapScratch_Horizontal:\n #_07CB9F: LDA.b $0E\n #_07CBA1: AND.b #$04\n #_07CBA3: BEQ .invert_if_negative\n\n.invert_if_positive\n #_07CBA5: LDY.b #$01\n\n #_07CBA7: LDA.b $31\n #_07CBA9: BMI .negative_x\n\n #_07CBAB: EOR.b #$FF\n #_07CBAD: INC A\n\n.negative_x\n #_07CBAE: BPL .was_positive_a\n\n #_07CBB0: LDY.b #$FF\n\n.was_positive_a\n #_07CBB2: STY.b $00\n #_07CBB4: STZ.b $01\n\n #_07CBB6: BRA AddAbsoluteScratchToYCoord\n\n.invert_if_negative\n #_07CBB8: LDY.b #$01\n\n #_07CBBA: LDA.b $31\n #_07CBBC: BPL .positive_x\n\n #_07CBBE: EOR.b #$FF\n #_07CBC0: INC A\n\n.positive_x\n #_07CBC1: BPL .was_positive_b\n\n #_07CBC3: LDY.b #$FF\n\n.was_positive_b\n #_07CBC5: STY.b $00\n #_07CBC7: STZ.b $01\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "AddAbsoluteScratchToYCoord", + "code": "AddAbsoluteScratchToYCoord:\n #_07CBC9: REP #$20\n\n #_07CBCB: LDA.b $00\n #_07CBCD: CMP.w #$0080\n #_07CBD0: BCC .positive\n\n #_07CBD2: ORA.w #$FF00\n\n.positive\n #_07CBD5: CLC\n #_07CBD6: ADC.b $20\n #_07CBD8: STA.b $20\n\n #_07CBDA: SEP #$20\n\n #_07CBDC: RTS", + "file": "bank_07.asm" + }, + { + "name": "ChangeAxisOfPerpendicularDoorMovement_Horizontal", + "code": "ChangeAxisOfPerpendicularDoorMovement_Horizontal:\n #_07CBDD: LDA.b #$02\n #_07CBDF: TSB.b $50\n\n #_07CBE1: LDA.b $0E\n #_07CBE3: LSR A\n #_07CBE4: LSR A\n #_07CBE5: LSR A\n #_07CBE6: LSR A\n #_07CBE7: ORA.b $0E\n #_07CBE9: AND.b #$0F\n #_07CBEB: STA.b $00\n\n #_07CBED: AND.b #$07\n #_07CBEF: BNE .dont_clear_doorway\n\n #_07CBF1: STZ.b $6C\n\n #_07CBF3: BRA .exit\n\n; ---------------------------------------------------------\n\n.dont_clear_doorway\n #_07CBF5: LDA.b $20\n #_07CBF7: CMP.b #$80\n #_07CBF9: BCC .y_low_positive\n\n #_07CBFB: LDA.b $31\n #_07CBFD: BMI .keep_negative_x\n\n #_07CBFF: EOR.b #$FF\n #_07CC01: INC A\n\n.keep_negative_x\n #_07CC02: STA.b $00\n #_07CC04: STZ.b $01\n\n #_07CC06: LDY.b #$00\n #_07CC08: BRA .continue\n\n; ---------------------------------------------------------\n\n.y_low_positive\n #_07CC0A: LDA.b $31\n #_07CC0C: BPL .keep_positive_x\n\n #_07CC0E: EOR.b #$FF\n #_07CC10: INC A\n\n.keep_positive_x\n #_07CC11: STA.b $00\n #_07CC13: STZ.b $01\n\n #_07CC15: LDY.b #$02\n\n; ---------------------------------------------------------\n\n.continue\n #_07CC17: LDA.b $50\n #_07CC19: AND.b #$01\n #_07CC1B: BNE .cannot_turn\n\n #_07CC1D: STY.b $2F\n\n.cannot_turn\n #_07CC1F: REP #$20\n\n #_07CC21: LDA.b $00\n #_07CC23: CMP.w #$0080\n #_07CC26: BCC .positive\n\n #_07CC28: ORA.w #$FF00\n\n.positive\n #_07CC2B: CLC\n #_07CC2C: ADC.b $20\n #_07CC2E: STA.b $20\n\n #_07CC30: SEP #$20\n\n.exit\n #_07CC32: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HopInOrOutOfWater_Horizontal", + "code": "Link_HopInOrOutOfWater_Horizontal:\n #_07CC3C: LDA.b $1B\n #_07CC3E: BNE .indoors\n\n #_07CC40: LDX.b #$02\n #_07CC42: BRA .index_decided\n\n.indoors\n #_07CC44: LDX.b $1D\n #_07CC46: LDA.w $047A\n #_07CC49: BEQ .index_decided\n\n #_07CC4B: LDX.b #$00\n\n.index_decided\n #_07CC4D: STX.b $00\n\n #_07CC4F: LDA.w .speed_x,X\n #_07CC52: TAX\n\n #_07CC53: LDA.b $66\n #_07CC55: AND.b #$01\n #_07CC57: BNE .dont_invert\n\n #_07CC59: TXA\n #_07CC5A: EOR.b #$FF\n #_07CC5C: INC A\n #_07CC5D: TAX\n\n.dont_invert\n #_07CC5E: STX.b $28\n\n #_07CC60: STZ.b $27\n\n #_07CC62: LDX.b $00\n\n #_07CC64: LDA.w .speed_z,X\n #_07CC67: STA.b $29\n #_07CC69: STA.w $02C7\n\n #_07CC6C: LDA.w .timer,X\n #_07CC6F: STA.b $46\n\n #_07CC71: LDA.b $4D\n #_07CC73: CMP.b #$02\n #_07CC75: BEQ .dont_set_recoil\n\n #_07CC77: LDA.b #$01\n #_07CC79: STA.b $4D\n\n #_07CC7B: STZ.w $0360\n\n.dont_set_recoil\n #_07CC7E: LDA.b #$06 ; LINKSTATE 06\n #_07CC80: STA.b $5D\n\n #_07CC82: RTS", + "file": "bank_07.asm" + }, + { + "name": "DiagonalKickback", + "code": "DiagonalKickback:\n\n.right\n #_07CC83: db 0, 1, 1, 1\n #_07CC87: db 2, 2, 2, 3\n #_07CC8B: db 3, 3\n\n.left\n #_07CC8D: db 0, -1, -1, -1\n #_07CC91: db -2, -2, -2, -3\n #_07CC95: db -3, -3\n\n.down\n #_07CC97: db 0, 0, 0, 1\n #_07CC9B: db 1, 1, 2, 2\n #_07CC9F: db 2, 3\n\n.up\n #_07CCA1: db 0, 1, 1, 2\n #_07CCA5: db 2, 2, 3, 3\n #_07CCA9: db 3, 3\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleDiagonalKickback", + "code": "Link_HandleDiagonalKickback:\n #_07CCAB: LDA.b $30\n #_07CCAD: BEQ .no_y_velocity\n\n #_07CCAF: LDA.b $31\n #_07CCB1: BNE .have_x_velocity\n\n.no_y_velocity\n #_07CCB3: BRL ResetSlopeIntoFlagAndFailCache\n\n.have_x_velocity\n #_07CCB6: LDA.b $20\n #_07CCB8: STA.w $02DE\n\n #_07CCBB: LDA.b $21\n #_07CCBD: STA.w $02DF\n\n #_07CCC0: LDA.b $22\n #_07CCC2: STA.w $02DC\n\n #_07CCC5: LDA.b $23\n #_07CCC7: STA.w $02DD\n\n #_07CCCA: LDY.b #$04\n\n #_07CCCC: LDA.b $31\n #_07CCCE: BMI .x_velocity_negative_a\n\n #_07CCD0: LDY.b #$06\n\n.x_velocity_negative_a\n #_07CCD2: JSR TileDetect_Movement_Horizontal\n\n #_07CCD5: LDA.b $0C\n #_07CCD7: AND.b #$05\n #_07CCD9: BEQ .nothing_flagged_for_x\n\n #_07CCDB: JSR FlagMovingIntoSlopes_Horizontal\n\n #_07CCDE: LDA.b $6B\n #_07CCE0: AND.b #$0F\n #_07CCE2: BNE .not_flagged_as_into_slope\n\n.nothing_flagged_for_x\n #_07CCE4: BRL ResetSlopeIntoFlagAndFailCache\n\n; ---------------------------------------------------------\n\n.not_flagged_as_into_slope\n #_07CCE7: REP #$20\n\n #_07CCE9: LDA.b $22\n #_07CCEB: SEC\n #_07CCEC: SBC.w $02DC\n #_07CCEF: STA.b $00\n\n #_07CCF1: LDA.w $02DC\n #_07CCF4: STA.b $22\n\n #_07CCF6: SEP #$20\n\n #_07CCF8: LDA.b $00\n #_07CCFA: STA.b $31\n\n; ---------------------------------------------------------\n\n #_07CCFC: LDY.b #$00\n\n #_07CCFE: LDA.b $30\n #_07CD00: BMI .y_velocity_negative_a\n\n #_07CD02: LDY.b #$02\n\n.y_velocity_negative_a\n #_07CD04: JSR TileDetect_Movement_Vertical\n\n #_07CD07: LDA.b $0C\n #_07CD09: AND.b #$05\n #_07CD0B: BEQ ResetSlopeIntoFlagAndFailCache\n\n #_07CD0D: JSR FlagMovingIntoSlopes_Vertical\n\n #_07CD10: LDA.b $6B\n #_07CD12: AND.b #$0F\n #_07CD14: BEQ ResetSlopeIntoFlagAndFailCache\n\n #_07CD16: LDA.b $6B\n #_07CD18: STA.b $6D\n\n #_07CD1A: REP #$20\n\n #_07CD1C: LDA.b $20\n #_07CD1E: SEC\n #_07CD1F: SBC.w $02DE\n #_07CD22: STA.b $00\n\n #_07CD24: SEP #$20\n\n #_07CD26: LDA.b $00\n #_07CD28: STA.b $30\n\n; ---------------------------------------------------------\n\n #_07CD2A: LDY.b $31\n #_07CD2C: BMI .x_velocity_negative_b\n\n #_07CD2E: LDA.w DiagonalKickback_right,Y\n\n #_07CD31: BRA .kickback_x_decided\n\n.x_velocity_negative_b\n #_07CD33: TYA\n #_07CD34: EOR.b #$FF\n #_07CD36: INC A\n #_07CD37: TAY\n\n #_07CD38: LDA.w DiagonalKickback_left,Y\n\n.kickback_x_decided\n #_07CD3B: REP #$20\n\n #_07CD3D: AND.w #$00FF\n #_07CD40: CMP.w #$0080\n #_07CD43: BCC .kickback_x_positive\n\n #_07CD45: ORA.w #$FF00\n\n.kickback_x_positive\n #_07CD48: CLC\n #_07CD49: ADC.b $22\n #_07CD4B: STA.b $22\n\n; ---------------------------------------------------------\n\n #_07CD4D: SEP #$20\n\n #_07CD4F: LDY.b $30\n #_07CD51: BMI .y_velocity_negative_b\n\n #_07CD53: LDA.w DiagonalKickback_down,Y\n\n #_07CD56: BRA .kickback_y_decided\n\n.y_velocity_negative_b\n #_07CD58: TYA\n #_07CD59: EOR.b #$FF\n #_07CD5B: INC A\n #_07CD5C: TAY\n\n #_07CD5D: LDA.w DiagonalKickback_up,Y\n\n.kickback_y_decided\n #_07CD60: REP #$20\n\n #_07CD62: AND.w #$00FF\n #_07CD65: CMP.w #$0080\n #_07CD68: BCC .kickback_y_positive\n\n #_07CD6A: ORA.w #$FF00\n\n.kickback_y_positive\n #_07CD6D: CLC\n #_07CD6E: ADC.b $20\n #_07CD70: STA.b $20\n\n #_07CD72: SEP #$20\n\n #_07CD74: BRA ResetSlopeIntoFlag\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "ResetSlopeIntoFlagAndFailCache", + "code": "ResetSlopeIntoFlagAndFailCache:\n #_07CD76: STZ.b $6D\n", + "file": "bank_07.asm" + }, + { + "name": "ResetSlopeIntoFlag", + "code": "ResetSlopeIntoFlag:\n #_07CD78: STZ.b $6B\n\n #_07CD7A: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_Movement", + "code": "TileDetect_Movement:\n\n.offset_same_axis\n #_07CD7B: dw $0008, $0018, $0000, $000F\n\n.offset_perpendicular_axis_1\n #_07CD83: dw $0000, $0000\n\n.offset_pit_y\n #_07CD87: dw $0008\n\n.unused_a\n #_07CD89: dw $0008\n\n.offset_perpendicular_axis_2\n #_07CD8B: dw $0008, $0008, $0010, $0010\n\n.offset_perpendicular_axis_3\n #_07CD93: dw $000F, $000F\n\n.offset_pit_x\n #_07CD97: dw $0017\n\n.unused_b\n #_07CD99: dw $0017, $0000, $0000, $001F, $001F\n\n.offset_slope_same_axis\n #_07CDA3: dw $0007, $0018, $FFFF, $0010\n\n.offset_slope_perpendicular_axis_1\n #_07CDAB: dw $0000, $0000, $0008, $0008\n\n.offset_slope_perpendicular_axis_2\n #_07CDB3: dw $000F, $000F, $0017, $0017\n #_07CDBB: dw $0000, $0000, $0000, $000F\n #_07CDC3: dw $0000, $0000, $0012, $0012\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_Movement_Vertical", + "code": "TileDetect_Movement_Vertical:\n #_07CDCB: REP #$20\n\n #_07CDCD: JSR TileDetect_ResetState\n\n #_07CDD0: STZ.b $59\n\n #_07CDD2: LDA.b $20\n #_07CDD4: CLC\n #_07CDD5: ADC.w TileDetect_Movement_offset_same_axis,Y\n #_07CDD8: STA.b $51\n\n #_07CDDA: AND.b $EC\n #_07CDDC: STA.b $00\n\n #_07CDDE: LDA.b $22\n #_07CDE0: CLC\n #_07CDE1: ADC.w TileDetect_Movement_offset_perpendicular_axis_1,Y\n #_07CDE4: AND.b $EC\n\n #_07CDE6: LSR A\n #_07CDE7: LSR A\n #_07CDE8: LSR A\n #_07CDE9: STA.b $02\n\n #_07CDEB: LDA.b $22\n #_07CDED: CLC\n #_07CDEE: ADC.w TileDetect_Movement_offset_perpendicular_axis_2,Y\n #_07CDF1: AND.b $EC\n\n #_07CDF3: LSR A\n #_07CDF4: LSR A\n #_07CDF5: LSR A\n #_07CDF6: STA.b $04\n\n #_07CDF8: LDA.b $22\n #_07CDFA: CLC\n #_07CDFB: ADC.w TileDetect_Movement_offset_perpendicular_axis_3,Y\n #_07CDFE: AND.b $EC\n\n #_07CE00: LSR A\n #_07CE01: LSR A\n #_07CE02: LSR A\n #_07CE03: STA.b $74\n\n #_07CE05: REP #$10\n\n #_07CE07: LDA.w #$0001\n #_07CE0A: STA.b $0A\n\n #_07CE0C: JSR TileDetection_Execute\n\n #_07CE0F: LDA.b $04\n #_07CE11: STA.b $02\n\n #_07CE13: LDA.w #$0002\n #_07CE16: STA.b $0A\n\n #_07CE18: JSR TileDetection_Execute\n\n #_07CE1B: LDA.b $74\n #_07CE1D: STA.b $02\n\n #_07CE1F: LDA.w #$0004\n #_07CE22: STA.b $0A\n\n #_07CE24: JSR TileDetection_Execute\n\n #_07CE27: SEP #$30\n\n #_07CE29: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_Movement_Horizontal", + "code": "TileDetect_Movement_Horizontal:\n #_07CE2A: REP #$20\n\n #_07CE2C: JSR TileDetect_ResetState\n\n #_07CE2F: STZ.b $59\n\n #_07CE31: LDA.b $22\n #_07CE33: CLC\n #_07CE34: ADC.w TileDetect_Movement_offset_same_axis,Y\n #_07CE37: AND.b $EC\n\n #_07CE39: LSR A\n #_07CE3A: LSR A\n #_07CE3B: LSR A\n #_07CE3C: STA.b $02\n\n #_07CE3E: LDA.b $20\n #_07CE40: CLC\n #_07CE41: ADC.w TileDetect_Movement_offset_perpendicular_axis_1,Y\n #_07CE44: AND.b $EC\n #_07CE46: STA.b $00\n\n #_07CE48: LDA.b $20\n #_07CE4A: CLC\n #_07CE4B: ADC.w TileDetect_Movement_offset_perpendicular_axis_2,Y\n #_07CE4E: STA.b $51\n\n #_07CE50: AND.b $EC\n #_07CE52: STA.b $04\n\n #_07CE54: LDA.b $20\n #_07CE56: CLC\n #_07CE57: ADC.w TileDetect_Movement_offset_perpendicular_axis_3,Y\n #_07CE5A: STA.b $53\n\n #_07CE5C: AND.b $EC\n #_07CE5E: STA.b $08\n\n #_07CE60: REP #$10\n\n #_07CE62: LDA.w #$0001\n #_07CE65: STA.b $0A\n\n #_07CE67: JSR TileDetection_Execute\n\n #_07CE6A: LDA.b $04\n #_07CE6C: STA.b $00\n\n #_07CE6E: LDA.w #$0002\n #_07CE71: STA.b $0A\n\n #_07CE73: JSR TileDetection_Execute\n\n #_07CE76: LDA.b $08\n #_07CE78: STA.b $00\n\n #_07CE7A: LDA.w #$0004\n #_07CE7D: STA.b $0A\n\n #_07CE7F: JSR TileDetection_Execute\n\n #_07CE82: SEP #$30\n\n #_07CE84: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_Movement_VerticalSlopes", + "code": "TileDetect_Movement_VerticalSlopes:\n #_07CE85: REP #$20\n\n #_07CE87: JSR TileDetect_ResetState\n\n #_07CE8A: STZ.b $59\n\n #_07CE8C: LDA.b $20\n #_07CE8E: CLC\n #_07CE8F: ADC.w TileDetect_Movement_offset_slope_same_axis,Y\n #_07CE92: AND.b $EC\n #_07CE94: STA.b $00\n\n #_07CE96: LDA.b $22\n #_07CE98: CLC\n #_07CE99: ADC.w TileDetect_Movement_offset_slope_perpendicular_axis_1,Y\n #_07CE9C: AND.b $EC\n\n #_07CE9E: LSR A\n #_07CE9F: LSR A\n #_07CEA0: LSR A\n #_07CEA1: STA.b $02\n\n #_07CEA3: LDA.b $22\n #_07CEA5: CLC\n #_07CEA6: ADC.w TileDetect_Movement_offset_slope_perpendicular_axis_2,Y\n #_07CEA9: AND.b $EC\n\n #_07CEAB: LSR A\n #_07CEAC: LSR A\n #_07CEAD: LSR A\n #_07CEAE: STA.b $04\n\n #_07CEB0: REP #$10\n\n #_07CEB2: LDA.w #$0001\n #_07CEB5: STA.b $0A\n\n #_07CEB7: JSR TileDetection_Execute\n\n #_07CEBA: LDA.b $04\n #_07CEBC: STA.b $02\n\n #_07CEBE: LDA.w #$0002\n #_07CEC1: STA.b $0A\n\n #_07CEC3: JSR TileDetection_Execute\n\n #_07CEC6: SEP #$30\n\n #_07CEC8: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_Movement_HorizontalSlopes", + "code": "TileDetect_Movement_HorizontalSlopes:\n #_07CEC9: REP #$20\n\n #_07CECB: JSR TileDetect_ResetState\n\n #_07CECE: STZ.b $59\n\n #_07CED0: LDA.b $22\n #_07CED2: CLC\n #_07CED3: ADC.w TileDetect_Movement_offset_slope_same_axis,Y\n #_07CED6: AND.b $EC\n\n #_07CED8: LSR A\n #_07CED9: LSR A\n #_07CEDA: LSR A\n #_07CEDB: STA.b $02\n\n #_07CEDD: LDA.b $20\n #_07CEDF: CLC\n #_07CEE0: ADC.w TileDetect_Movement_offset_slope_perpendicular_axis_1,Y\n #_07CEE3: AND.b $EC\n #_07CEE5: STA.b $00\n\n #_07CEE7: LDA.b $20\n #_07CEE9: CLC\n #_07CEEA: ADC.w TileDetect_Movement_offset_slope_perpendicular_axis_2,Y\n #_07CEED: AND.b $EC\n #_07CEEF: STA.b $04\n\n #_07CEF1: REP #$10\n\n #_07CEF3: LDA.w #$0001\n #_07CEF6: STA.b $0A\n\n #_07CEF8: JSR TileDetection_Execute\n\n #_07CEFB: LDA.b $04\n #_07CEFD: STA.b $00\n\n #_07CEFF: LDA.w #$0002\n #_07CF02: STA.b $0A\n\n #_07CF04: JSR TileDetection_Execute\n\n #_07CF07: SEP #$30\n\n #_07CF09: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_BigArea_long", + "code": "TileDetect_BigArea_long:\n #_07CF0A: PHB\n #_07CF0B: PHK\n #_07CF0C: PLB\n\n #_07CF0D: JSR TileDetect_BigArea\n\n #_07CF10: PLB\n\n #_07CF11: RTL", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_BigArea", + "code": "TileDetect_BigArea:\n #_07CF12: STZ.b $59\n\n #_07CF14: REP #$20\n\n #_07CF16: JSR TileDetect_ResetState\n\n #_07CF19: LDA.b $22\n #_07CF1B: CLC\n #_07CF1C: ADC.w TileDetect_Movement_offset_perpendicular_axis_1\n #_07CF1F: AND.b $EC\n #_07CF21: LSR A\n #_07CF22: LSR A\n #_07CF23: LSR A\n #_07CF24: STA.b $02\n\n #_07CF26: LDA.b $22\n #_07CF28: CLC\n #_07CF29: ADC.w TileDetect_Movement_offset_perpendicular_axis_3\n #_07CF2C: AND.b $EC\n #_07CF2E: LSR A\n #_07CF2F: LSR A\n #_07CF30: LSR A\n #_07CF31: STA.b $04\n\n #_07CF33: LDA.b $20\n #_07CF35: CLC\n #_07CF36: ADC.w TileDetect_Movement_offset_pit_y\n #_07CF39: AND.b $EC\n #_07CF3B: STA.b $00\n #_07CF3D: STA.b $74\n\n #_07CF3F: LDA.b $20\n #_07CF41: CLC\n #_07CF42: ADC.w TileDetect_Movement_offset_pit_x\n #_07CF45: AND.b $EC\n #_07CF47: STA.b $08\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_FromMirrorBonk", + "code": "TileDetect_FromMirrorBonk:\n #_07CF49: REP #$10\n\n #_07CF4B: LDA.w #$0008\n #_07CF4E: STA.b $0A\n\n #_07CF50: JSR TileDetection_Execute\n\n #_07CF53: LDA.b $08\n #_07CF55: STA.b $00\n\n #_07CF57: LDA.w #$0002\n #_07CF5A: STA.b $0A\n\n #_07CF5C: JSR TileDetection_Execute\n\n #_07CF5F: LDA.b $74\n #_07CF61: STA.b $00\n\n #_07CF63: LDA.b $04\n #_07CF65: STA.b $02\n\n #_07CF67: LDA.w #$0004\n #_07CF6A: STA.b $0A\n\n #_07CF6C: JSR TileDetection_Execute\n\n #_07CF6F: LDA.b $08\n #_07CF71: STA.b $00\n\n #_07CF73: LDA.w #$0001\n #_07CF76: STA.b $0A\n\n #_07CF78: JSR TileDetection_Execute\n\n #_07CF7B: SEP #$30\n\n #_07CF7D: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_UnusedIce", + "code": "TileDetect_UnusedIce:\n #_07CF7E: STZ.b $59\n\n #_07CF80: REP #$20\n\n #_07CF82: JSR TileDetect_ResetState\n\n #_07CF85: LDA.b $22\n #_07CF87: CLC\n #_07CF88: ADC.w #$0000\n\n #_07CF8B: AND.b $EC\n #_07CF8D: LSR A\n #_07CF8E: LSR A\n #_07CF8F: LSR A\n #_07CF90: STA.b $02\n\n #_07CF92: LDA.b $22\n #_07CF94: CLC\n #_07CF95: ADC.w #$0008\n\n #_07CF98: AND.b $EC\n #_07CF9A: LSR A\n #_07CF9B: LSR A\n #_07CF9C: LSR A\n #_07CF9D: STA.b $04\n\n; ---------------------------------------------------------\n\n #_07CF9F: LDA.b $24\n #_07CFA1: AND.w #$00FF\n #_07CFA4: CMP.w #$00FF\n #_07CFA7: BNE .not_grounded\n\n #_07CFA9: LDA.w #$0000\n\n.not_grounded\n #_07CFAC: CLC\n #_07CFAD: ADC.b $20\n #_07CFAF: AND.b $EC\n #_07CFB1: STA.b $00\n\n; ---------------------------------------------------------\n\n #_07CFB3: REP #$10\n\n #_07CFB5: LDA.w #$0001\n #_07CFB8: STA.b $0A\n\n #_07CFBA: JSR TileDetection_Execute\n\n #_07CFBD: LDA.b $04\n #_07CFBF: STA.b $02\n\n #_07CFC1: LDA.w #$0002\n #_07CFC4: STA.b $0A\n\n #_07CFC6: JSR TileDetection_Execute\n\n #_07CFC9: SEP #$30\n\n #_07CFCB: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_MainHandler", + "code": "TileDetect_MainHandler:\n #_07D077: STZ.b $59 ; clear pits\n\n #_07D079: REP #$20\n\n #_07D07B: JSR TileDetect_ResetState\n\n #_07D07E: STY.b $00\n\n #_07D080: CPY.b #$08\n #_07D082: BNE .direction_based\n\n #_07D084: LDA.w $031C\n #_07D087: AND.w #$00FF\n #_07D08A: DEC A\n #_07D08B: DEC A\n #_07D08C: BMI .dirty_exit\n\n #_07D08E: CMP.w #$0008\n #_07D091: BCS .dirty_exit\n\n #_07D093: PHY\n #_07D094: TAY\n\n #_07D095: LDA.w .index_offset,Y\n #_07D098: AND.w #$00FF\n #_07D09B: CLC\n #_07D09C: ADC.w #$0040\n #_07D09F: TAY\n\n #_07D0A0: BRA .calculate_offset\n\n.direction_based\n #_07D0A2: PHY\n\n #_07D0A3: LDA.b $00\n #_07D0A5: AND.w #$00FF\n #_07D0A8: ASL A\n #_07D0A9: ASL A\n #_07D0AA: ASL A\n #_07D0AB: CLC\n #_07D0AC: ADC.b $2F\n #_07D0AE: TAY\n\n; ---------------------------------------------------------\n\n.calculate_offset\n #_07D0AF: LDA.b $22\n #_07D0B1: CLC\n #_07D0B2: ADC.w .offset_x,Y\n\n #_07D0B5: AND.b $EC\n #_07D0B7: LSR A\n #_07D0B8: LSR A\n #_07D0B9: LSR A\n #_07D0BA: STA.b $02\n\n #_07D0BC: LDA.b $20\n #_07D0BE: CLC\n #_07D0BF: ADC.w .offset_y,Y\n #_07D0C2: AND.b $EC\n #_07D0C4: STA.b $00\n\n; ---------------------------------------------------------\n\n #_07D0C6: LDA.w #$0001\n #_07D0C9: STA.b $0A\n\n #_07D0CB: PLY\n\n #_07D0CC: REP #$10\n\n #_07D0CE: TYA\n #_07D0CF: CMP.w #$0001\n #_07D0D2: BEQ .detect_from_item\n\n #_07D0D4: CMP.w #$0002\n #_07D0D7: BEQ .detect_from_item\n\n #_07D0D9: CMP.w #$0003\n #_07D0DC: BEQ .detect_from_item\n\n #_07D0DE: CMP.w #$0006\n #_07D0E1: BEQ .detect_from_item\n\n #_07D0E3: CMP.w #$0007\n #_07D0E6: BEQ .detect_from_item\n\n #_07D0E8: CMP.w #$0008\n #_07D0EB: BEQ .detect_from_item\n\n #_07D0ED: PHY\n\n #_07D0EE: JSR TileDetection_Execute\n\n #_07D0F1: PLY\n\n #_07D0F2: BRA .continue_from_detection\n\n.detect_from_item\n #_07D0F4: SEP #$30\n\n #_07D0F6: JSR TileBehavior_HandleItemAndExecute\n\n; ---------------------------------------------------------\n\n.dirty_exit\n #_07D0F9: SEP #$30\n\n.proceed_to_exit\n #_07D0FB: BRL .exit\n\n; ---------------------------------------------------------\n\n.continue_from_detection\n #_07D0FE: SEP #$30\n\n #_07D100: CPY.b #$05\n #_07D102: BEQ .proceed_to_exit\n\n #_07D104: LDA.w $0357\n #_07D107: AND.b #$10\n #_07D109: BEQ .no_warp_tile\n\n #_07D10B: LDA.b $20\n #_07D10D: CLC\n #_07D10E: ADC.b #$08\n #_07D110: AND.b #$0F\n #_07D112: CMP.b #$04\n #_07D114: BCC .check_warp_x\n\n #_07D116: CMP.b #$0B\n #_07D118: BCC .dont_attempt_to_warp\n\n.check_warp_x\n #_07D11A: LDA.b $22\n #_07D11C: AND.b #$0F\n #_07D11E: CMP.b #$04\n #_07D120: BCC .okay_x_position\n\n #_07D122: CMP.b #$0C\n #_07D124: BCC .dont_attempt_to_warp\n\n.okay_x_position\n #_07D126: LDA.w $031F\n #_07D129: BNE .dont_attempt_to_warp\n\n #_07D12B: LDA.b $4D\n #_07D12D: BNE .dont_attempt_to_warp\n\n #_07D12F: LDA.b $1B\n #_07D131: BEQ .try_overworld_warp\n\n #_07D133: JSL Underworld_FlagRoomData_Quadrants\n\n #_07D137: LDA.b #$33 ; SFX2.33\n #_07D139: JSR PlaySFX_Set2\n\n #_07D13C: STZ.b $5E\n\n #_07D13E: LDA.b #$15\n #_07D140: STA.b $11\n\n #_07D142: LDA.b $A0\n #_07D144: STA.b $A2\n\n #_07D146: LDA.l $7EC000\n #_07D14A: STA.b $A0\n\n #_07D14C: JSR HandleLayerOfDestination\n #_07D14F: BRA .dont_attempt_to_warp\n\n; ---------------------------------------------------------\n\n.try_overworld_warp\n #_07D151: LDA.w $02DB\n #_07D154: BNE .dont_attempt_to_warp\n\n #_07D156: JSR Mirror_TryToWarp\n\n.dont_attempt_to_warp\n #_07D159: BRL .clear_tall_grass_flag\n\n; ---------------------------------------------------------\n\n.no_warp_tile\n #_07D15C: STZ.w $02DB\n\n #_07D15F: LDA.w $0357\n #_07D162: AND.b #$01\n #_07D164: BEQ .not_in_tall_grass\n\n #_07D166: LDA.b #$02\n #_07D168: STA.w $0351\n\n #_07D16B: JSR Link_PermissionForSloshSounds\n #_07D16E: BCS .jump_to_exit\n\n #_07D170: LDA.b $4D\n #_07D172: BNE .jump_to_exit\n\n #_07D174: LDA.b #$1A ; SFX2.1A\n #_07D176: JSR PlaySFX_Set2\n\n.jump_to_exit\n #_07D179: BRL .exit\n\n; ---------------------------------------------------------\n\n.not_in_tall_grass\n #_07D17C: LDA.w $0359\n #_07D17F: AND.b #$01\n #_07D181: BEQ .not_in_shallow_water\n\n #_07D183: LDA.b #$01\n #_07D185: STA.w $0351\n\n #_07D188: LDA.b $1B\n #_07D18A: BNE .try_splash_noise\n\n #_07D18C: LDA.w $0345\n #_07D18F: BEQ .try_splash_noise\n\n #_07D191: LDA.w $02E0\n #_07D194: BNE .try_splash_noise\n\n #_07D196: LDA.l $7EF356\n #_07D19A: BEQ .jump_to_exit\n\n #_07D19C: STZ.w $0345\n\n #_07D19F: LDA.w $0340\n #_07D1A2: STA.b $26\n\n #_07D1A4: LDA.b #$00 ; LINKSTATE 00\n #_07D1A6: STA.b $5D\n\n #_07D1A8: BRL .exit\n\n; ---------------------------------------------------------\n\n.try_splash_noise\n #_07D1AB: JSR Link_PermissionForSloshSounds\n #_07D1AE: BCS .no_sound_allowed\n\n #_07D1B0: LDA.b $8A\n #_07D1B2: CMP.b #$70 ; OW 70\n #_07D1B4: BNE .not_mire_splash\n\n #_07D1B6: LDA.b #$1B ; SFX2.1B\n #_07D1B8: JSR PlaySFX_Set2\n\n #_07D1BB: BRA .no_sound_allowed\n\n; ---------------------------------------------------------\n\n.not_mire_splash\n #_07D1BD: LDA.b $4D\n #_07D1BF: BNE .no_sound_allowed\n\n #_07D1C1: LDA.b #$1C ; SFX2.1C\n #_07D1C3: JSR PlaySFX_Set2\n\n.no_sound_allowed\n #_07D1C6: BRL .exit\n\n; ---------------------------------------------------------\n\n.not_in_shallow_water\n #_07D1C9: LDA.b $1B\n #_07D1CB: BNE .clear_tall_grass_flag\n\n #_07D1CD: LDA.w $0345\n #_07D1D0: BNE .clear_tall_grass_flag\n\n #_07D1D2: LDA.w $0341\n #_07D1D5: AND.b #$01\n #_07D1D7: BEQ .clear_tall_grass_flag\n\n #_07D1D9: LDA.b #$01\n #_07D1DB: STA.w $0351\n\n #_07D1DE: JSR Link_PermissionForSloshSounds\n #_07D1E1: BCS .no_sloshing_sounds\n\n #_07D1E3: LDA.b $8A\n #_07D1E5: CMP.b #$70 ; OW 70\n #_07D1E7: BNE .not_mire_again\n\n #_07D1E9: LDA.b #$1B ; SFX2.1B\n #_07D1EB: JSR PlaySFX_Set2\n\n #_07D1EE: BRA .no_sloshing_sounds\n\n; ---------------------------------------------------------\n\n.not_mire_again\n #_07D1F0: LDA.b $4D\n #_07D1F2: BNE .no_sloshing_sounds\n\n #_07D1F4: LDA.b #$1C ; SFX2.1C\n #_07D1F6: JSR PlaySFX_Set2\n\n.no_sloshing_sounds\n #_07D1F9: BRL .exit\n\n; ---------------------------------------------------------\n\n.clear_tall_grass_flag\n #_07D1FC: STZ.w $0351\n\n #_07D1FF: LDA.w $02EE\n #_07D202: AND.b #$01\n #_07D204: BEQ .not_near_desert_trigger\n\n #_07D206: LDA.b #$01\n #_07D208: STA.w $02ED\n\n #_07D20B: BRL .exit\n\n; ---------------------------------------------------------\n\n.not_near_desert_trigger\n #_07D20E: STZ.w $02ED\n\n #_07D211: LDA.w $02EE\n #_07D214: AND.b #$10\n #_07D216: BEQ .not_touching_spikes\n\n #_07D218: STZ.w $0373\n\n #_07D21B: LDA.b $55\n #_07D21D: BNE .not_touching_spikes\n\n #_07D21F: JSR SearchForByrnaSpark\n #_07D222: BCS .not_touching_spikes\n\n #_07D224: LDA.w $031F\n #_07D227: BNE .not_touching_spikes\n\n #_07D229: STZ.w $03F7\n #_07D22C: STZ.w $03F5\n #_07D22F: STZ.w $03F6\n\n #_07D232: LDA.l $7EF357\n #_07D236: BEQ .no_moon_pearl\n\n #_07D238: STZ.b $56\n #_07D23A: STZ.w $02E0\n\n.no_moon_pearl\n #_07D23D: LDA.l $7EF35B\n #_07D241: TAY\n\n #_07D242: LDA.w .spike_floor_damage,Y\n #_07D245: STA.w $0373\n\n #_07D248: BRL Link_CancelDash\n\n; ---------------------------------------------------------\n\n.not_touching_spikes\n #_07D24B: LDA.w $0348\n #_07D24E: AND.b #$11\n #_07D250: BEQ .not_on_any_ice\n\n #_07D252: LDA.w $034A\n #_07D255: BEQ .not_gt_or_ip_ice\n\n #_07D257: LDA.b $6A\n #_07D259: BEQ .finish_up\n\n #_07D25B: LDA.w $0340\n #_07D25E: STA.b $26\n\n #_07D260: BRL .finish_up\n\n; ---------------------------------------------------------\n\n.not_gt_or_ip_ice\n #_07D263: LDA.b $67\n #_07D265: AND.b #$0C\n #_07D267: BEQ .velocity_not_up_or_down\n\n #_07D269: LDA.b #$01\n #_07D26B: STA.w $033D\n\n #_07D26E: LDA.b #$80\n #_07D270: STA.w $033C\n\n.velocity_not_up_or_down\n #_07D273: LDA.b $67\n #_07D275: AND.b #$03\n #_07D277: BEQ .velocity_not_left_or_right\n\n #_07D279: LDA.b #$01\n #_07D27B: STA.w $033D\n\n #_07D27E: LDA.b #$80\n #_07D280: STA.w $033C\n\n.velocity_not_left_or_right\n #_07D283: LDY.b #$01\n\n #_07D285: LDA.w $0348\n #_07D288: AND.b #$01\n #_07D28A: BNE .set_to_gt_ice\n\n #_07D28C: LDY.b #$02\n\n.set_to_gt_ice\n #_07D28E: STY.w $034A\n\n #_07D291: LDA.b $26\n #_07D293: STA.w $0340\n\n #_07D296: JSL Link_ResetSwimmingState\n #_07D29A: BRL .finish_up\n\n; ---------------------------------------------------------\n\n.not_on_any_ice\n #_07D29D: LDA.b $5D\n #_07D29F: CMP.b #$04 ; LINKSTATE 04\n #_07D2A1: BEQ .swimming\n\n #_07D2A3: LDA.w $034A\n #_07D2A6: BEQ .not_on_ice_yet\n\n #_07D2A8: LDA.w $0340\n #_07D2AB: STA.b $26\n\n.not_on_ice_yet\n #_07D2AD: JSL Link_ResetSwimmingState\n\n.swimming\n #_07D2B1: STZ.w $034A\n\n; ---------------------------------------------------------\n\n.finish_up\n #_07D2B4: LDA.w $02E8\n #_07D2B7: AND.b #$10\n #_07D2B9: BEQ .exit\n\n #_07D2BB: LDA.w $031F\n #_07D2BE: BNE .exit\n\n #_07D2C0: LDA.b #$3A\n #_07D2C2: STA.w $031F\n\n.exit\n #_07D2C5: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_PermissionForSloshSounds", + "code": "Link_PermissionForSloshSounds:\n #_07D2C6: LDA.b $67\n #_07D2C8: AND.b #$0F\n #_07D2CA: BEQ .fail\n\n #_07D2CC: LDA.b $5D\n #_07D2CE: CMP.b #$11 ; LINKSTATE 11\n #_07D2D0: BEQ .dashing\n\n #_07D2D2: LDA.b $1A\n #_07D2D4: AND.b #$0F\n #_07D2D6: BEQ .succeed\n\n #_07D2D8: BRA .fail\n\n.dashing\n #_07D2DA: LDA.b $1A\n #_07D2DC: AND.b #$07\n #_07D2DE: BNE .fail\n\n.succeed\n #_07D2E0: CLC\n\n #_07D2E1: RTS", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_AttemptToPushTheBlock", + "code": "PushBlock_AttemptToPushTheBlock:\n #_07D304: REP #$20\n\n #_07D306: TYA\n #_07D307: ASL A\n #_07D308: ASL A\n #_07D309: ASL A\n #_07D30A: STA.b $0A\n\n #_07D30C: LDA.b $66\n #_07D30E: ASL A\n #_07D30F: CLC\n #_07D310: ADC.b $0A\n #_07D312: TAY\n\n #_07D313: LDA.b $00\n #_07D315: STA.b $08\n\n #_07D317: LDA.b $02\n #_07D319: STA.b $04\n\n #_07D31B: LDA.b $08\n #_07D31D: CLC\n #_07D31E: ADC.w .target_offset_x_a,Y\n #_07D321: AND.b $EC\n\n #_07D323: LSR A\n #_07D324: LSR A\n #_07D325: LSR A\n #_07D326: STA.b $02\n\n #_07D328: LDA.b $04\n #_07D32A: CLC\n #_07D32B: ADC.w .target_offset_y_a,Y\n #_07D32E: AND.b $EC\n #_07D330: STA.b $00\n\n #_07D332: JSR PushBlock_GetGeneralizedTileInteractionOfTarget\n #_07D335: BEQ .no_blockage\n\n #_07D337: CPX.w #$0009 ; TILETYPE 09\n #_07D33A: BNE .cannot_push\n\n.no_blockage\n #_07D33C: LDA.b $08\n #_07D33E: CLC\n #_07D33F: ADC.w .target_offset_x_b,Y\n #_07D342: AND.b $EC\n #_07D344: LSR A\n #_07D345: LSR A\n #_07D346: LSR A\n #_07D347: STA.b $02\n\n #_07D349: LDA.b $04\n #_07D34B: CLC\n #_07D34C: ADC.w .target_offset_y_b,Y\n #_07D34F: AND.b $EC\n #_07D351: STA.b $00\n\n #_07D353: JSR PushBlock_GetGeneralizedTileInteractionOfTarget\n #_07D356: BEQ .can_push\n\n #_07D358: CPX.w #$0009 ; TILETYPE 09\n #_07D35B: BNE .cannot_push\n\n; ---------------------------------------------------------\n\n.can_push\n #_07D35D: SEP #$30\n #_07D35F: CLC\n\n #_07D360: RTS", + "file": "bank_07.asm" + }, + { + "name": "LiftableCheckOffset_Y", + "code": "LiftableCheckOffset_Y:\n #_07D365: dw 6\n #_07D367: dw 24\n #_07D369: dw 12\n #_07D36B: dw 12\n", + "file": "bank_07.asm" + }, + { + "name": "LiftableCheckOffset_X", + "code": "LiftableCheckOffset_X:\n #_07D36D: dw 7\n #_07D36F: dw 7\n #_07D371: dw -3\n #_07D373: dw 16\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LiftableGloveLevels", + "code": "LiftableGloveLevels:\n #_07D375: db $00 ; sign\n #_07D376: db $01 ; small gray rock\n #_07D377: db $00 ; bush\n #_07D378: db $00 ; dark bush\n #_07D379: db $02 ; small black rock\n #_07D37A: db $01 ; big gray rock\n #_07D37B: db $02 ; big black rock\n", + "file": "bank_07.asm" + }, + { + "name": "Liftable0368ID", + "code": "Liftable0368ID:\n #_07D37C: db $02 ; sign\n #_07D37D: db $03 ; small gray rock\n #_07D37E: db $01 ; bush\n #_07D37F: db $04 ; dark bush\n #_07D380: db $00 ; small black rock\n #_07D381: db $05 ; big gray rock\n #_07D382: db $06 ; big black rock\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleLiftables", + "code": "Link_HandleLiftables:\n #_07D383: STZ.b $59\n\n #_07D385: REP #$20\n\n #_07D387: JSR TileDetect_ResetState\n\n #_07D38A: LDA.b $2F\n #_07D38C: TAY\n\n #_07D38D: LDA.b $20\n #_07D38F: CLC\n #_07D390: ADC.w LiftableCheckOffset_Y,Y\n #_07D393: AND.b $EC\n #_07D395: STA.b $00\n\n #_07D397: LDA.b $20\n #_07D399: CLC\n #_07D39A: ADC.w #$0014\n #_07D39D: AND.b $EC\n #_07D39F: STA.b $04\n\n #_07D3A1: LDA.b $22\n #_07D3A3: CLC\n #_07D3A4: ADC.w LiftableCheckOffset_X,Y\n #_07D3A7: AND.b $EC\n\n #_07D3A9: LSR A\n #_07D3AA: LSR A\n #_07D3AB: LSR A\n\n #_07D3AC: STA.b $02\n\n #_07D3AE: LDA.b $22\n #_07D3B0: CLC\n #_07D3B1: ADC.w #$0008\n #_07D3B4: AND.b $EC\n\n #_07D3B6: LSR A\n #_07D3B7: LSR A\n #_07D3B8: LSR A\n\n #_07D3B9: STA.b $08\n\n; ---------------------------------------------------------\n\n #_07D3BB: LDA.w #$0001\n #_07D3BE: STA.b $0A\n\n #_07D3C0: REP #$10\n\n #_07D3C2: JSR TileDetection_Execute\n\n #_07D3C5: LDA.b $04\n #_07D3C7: STA.b $00\n\n #_07D3C9: LDA.b $08\n #_07D3CB: STA.b $02\n\n #_07D3CD: LDA.w #$0002\n #_07D3D0: STA.b $0A\n\n #_07D3D2: JSR TileDetection_Execute\n\n #_07D3D5: SEP #$30\n\n #_07D3D7: LDX.b #$02\n\n #_07D3D9: LDA.b $0E\n #_07D3DB: ORA.w $036D\n #_07D3DE: AND.b #$01\n #_07D3E0: BEQ .no_north_ledge\n\n #_07D3E2: LDX.b #$03\n\n.no_north_ledge\n #_07D3E4: LDA.b $1B\n #_07D3E6: BEQ .outdoors\n\n #_07D3E8: PHX\n\n #_07D3E9: JSL Underworld_CheckForAndIDLiftableTile\n #_07D3ED: BCC .not_liftable\n\n #_07D3EF: PLX\n\n #_07D3F0: AND.b #$0F\n #_07D3F2: TAY\n\n #_07D3F3: LDA.w Liftable0368ID,Y\n #_07D3F6: STA.w $0368\n\n #_07D3F9: TAY\n\n #_07D3FA: BRA .check_lift_level\n\n; ---------------------------------------------------------\n\n.not_liftable\n #_07D3FC: PLX\n\n #_07D3FD: LDA.w $0366\n #_07D400: AND.b #$01\n #_07D402: BEQ .move_on\n\n #_07D404: LDA.b $2F\n #_07D406: BNE .move_on\n\n #_07D408: LDA.w $036A\n #_07D40B: BNE .move_on\n\n #_07D40D: LDX.b #$04\n\n.move_on\n #_07D40F: BRA .continue\n\n; ---------------------------------------------------------\n\n.outdoors\n #_07D411: LDA.w $0366\n #_07D414: AND.b #$01\n #_07D416: BEQ .continue\n\n #_07D418: LDA.b $2F\n #_07D41A: BNE .run_check\n\n #_07D41C: LDA.w $036A\n #_07D41F: BNE .run_check\n\n #_07D421: LDX.b #$04\n\n #_07D423: BRA .continue\n\n; ---------------------------------------------------------\n\n.run_check\n #_07D425: LDA.w $036A\n #_07D428: LSR A\n #_07D429: STA.w $0368\n\n #_07D42C: TAY\n\n.check_lift_level\n #_07D42D: LDA.w LiftableGloveLevels,Y\n #_07D430: SEC\n #_07D431: SBC.l $7EF354\n #_07D435: BEQ .no_gloves\n #_07D437: BPL .continue\n\n.no_gloves\n #_07D439: LDX.b #$01\n\n; ---------------------------------------------------------\n\n.continue\n #_07D43B: LDA.w $02E5\n #_07D43E: AND.b #$01\n #_07D440: BEQ .exit\n\n #_07D442: LDX.b #$05\n\n.exit\n #_07D444: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleNudging", + "code": "HandleNudging:\n #_07D485: LDA.b $00\n #_07D487: PHA\n\n #_07D488: LDA.b $66\n #_07D48A: AND.b #$02\n #_07D48C: BNE .horizontal_last\n\n #_07D48E: LDX.b #$00\n\n #_07D490: LDA.b $66\n #_07D492: AND.b #$01\n #_07D494: BEQ .not_down_last\n\n #_07D496: LDX.b #$04\n\n.not_down_last\n #_07D498: LDY.b #$00\n\n #_07D49A: LDA.b $0E\n #_07D49C: AND.b #$04\n #_07D49E: BNE .not_down\n\n #_07D4A0: LDY.b #$02\n\n.not_down\n #_07D4A2: STY.b $00\n\n #_07D4A4: BRA .do_detection\n\n; ---------------------------------------------------------\n\n.horizontal_last\n #_07D4A6: LDX.b #$08\n\n #_07D4A8: LDA.b $66\n #_07D4AA: AND.b #$01\n #_07D4AC: BEQ .was_not_down_last\n\n #_07D4AE: LDX.b #$0C\n\n.was_not_down_last\n #_07D4B0: LDY.b #$00\n\n #_07D4B2: LDA.b $0E\n #_07D4B4: AND.b #$04\n #_07D4B6: BNE .not_right\n\n #_07D4B8: LDY.b #$02\n\n.not_right\n #_07D4BA: STY.b $00\n\n; ---------------------------------------------------------\n\n.do_detection\n #_07D4BC: TXA\n #_07D4BD: CLC\n #_07D4BE: ADC.b $00\n #_07D4C0: TAY\n\n #_07D4C1: STZ.b $59\n\n #_07D4C3: REP #$20\n\n #_07D4C5: JSR TileDetect_ResetState\n\n #_07D4C8: LDA.b $20\n #_07D4CA: CLC\n #_07D4CB: ADC.w .offset_y_top,Y\n #_07D4CE: AND.b $EC\n #_07D4D0: STA.b $00\n\n #_07D4D2: LDA.b $22\n #_07D4D4: CLC\n #_07D4D5: ADC.w .offset_x_top,Y\n #_07D4D8: AND.b $EC\n #_07D4DA: LSR A\n #_07D4DB: LSR A\n #_07D4DC: LSR A\n #_07D4DD: STA.b $02\n\n #_07D4DF: LDA.b $20\n #_07D4E1: CLC\n #_07D4E2: ADC.w .offset_y_bottom,Y\n #_07D4E5: AND.b $EC\n #_07D4E7: STA.b $04\n\n #_07D4E9: LDA.b $22\n #_07D4EB: CLC\n #_07D4EC: ADC.w .offset_x_bottom,Y\n #_07D4EF: AND.b $EC\n #_07D4F1: LSR A\n #_07D4F2: LSR A\n #_07D4F3: LSR A\n #_07D4F4: STA.b $08\n\n #_07D4F6: LDA.w #$0001\n #_07D4F9: STA.b $0A\n\n #_07D4FB: REP #$10\n\n #_07D4FD: JSR TileDetection_Execute\n\n #_07D500: LDA.b $04\n #_07D502: STA.b $00\n\n #_07D504: LDA.b $08\n #_07D506: STA.b $02\n\n #_07D508: LDA.w #$0002\n #_07D50B: STA.b $0A\n\n #_07D50D: JSR TileDetection_Execute\n\n #_07D510: SEP #$30\n\n #_07D512: PLA\n #_07D513: STA.b $00\n\n #_07D515: LDA.b $0E\n #_07D517: ORA.w $036E\n #_07D51A: AND.b #$03\n #_07D51C: BNE .horizontal_ledges_detected\n\n #_07D51E: LDA.w $036D\n #_07D521: ORA.w $0370\n #_07D524: AND.b #$33\n #_07D526: BEQ .exit\n\n.horizontal_ledges_detected\n #_07D528: LDY.b #$00\n\n #_07D52A: LDA.b $00\n #_07D52C: EOR.b #$FF\n #_07D52E: INC A\n #_07D52F: STA.b $00\n\n #_07D531: CMP.b #$80\n #_07D533: BCC .positive_velocity\n\n #_07D535: LDY.b #$FF\n\n.positive_velocity\n #_07D537: STY.b $01\n\n #_07D539: LDA.b $66\n #_07D53B: AND.b #$02\n #_07D53D: BEQ .add_on_x\n\n #_07D53F: REP #$20\n\n #_07D541: LDA.b $00\n #_07D543: CLC\n #_07D544: ADC.b $20\n #_07D546: STA.b $20\n\n #_07D548: BRA .exit\n\n; ---------------------------------------------------------\n\n.add_on_x\n #_07D54A: REP #$20\n\n #_07D54C: LDA.b $00\n #_07D54E: CLC\n #_07D54F: ADC.b $22\n #_07D551: STA.b $22\n\n.exit\n #_07D553: SEP #$20\n\n #_07D555: RTS", + "file": "bank_07.asm" + }, + { + "name": "Hookshot_CheckTileCollision", + "code": "Hookshot_CheckTileCollision:\n #_07D576: PHB\n #_07D577: PHK\n #_07D578: PLB\n\n #_07D579: LDA.b $A0\n #_07D57B: PHA\n\n #_07D57C: LDA.b $EE\n #_07D57E: PHA\n\n #_07D57F: LDA.w $03A4,X\n #_07D582: BEQ .dont_swap_layers\n\n #_07D584: LDA.w $044A\n #_07D587: BNE .not_eg0\n\n #_07D589: LDA.b $A0\n #_07D58B: CLC\n #_07D58C: ADC.b #$10\n #_07D58E: STA.b $A0\n\n.not_eg0\n #_07D590: LDA.b $EE\n #_07D592: EOR.b #$01\n #_07D594: STA.b $EE\n\n; ---------------------------------------------------------\n\n.dont_swap_layers\n #_07D596: LDA.w $0BFA,X\n #_07D599: STA.b $04\n\n #_07D59B: LDA.w $0C0E,X\n #_07D59E: STA.b $05\n\n #_07D5A0: LDA.w $0C04,X\n #_07D5A3: STA.b $08\n\n #_07D5A5: LDA.w $0C18,X\n #_07D5A8: STA.b $09\n\n #_07D5AA: LDA.w $0C72,X\n #_07D5AD: ASL A\n #_07D5AE: ASL A\n #_07D5AF: STA.b $73\n\n; ---------------------------------------------------------\n\n #_07D5B1: PHX\n\n #_07D5B2: STZ.b $59\n\n #_07D5B4: REP #$20\n\n #_07D5B6: JSR TileDetect_ResetState\n\n #_07D5B9: SEP #$20\n\n #_07D5BB: LDA.w $046C\n #_07D5BE: CMP.b #$02\n #_07D5C0: BNE .only_1_layer\n\n; ---------------------------------------------------------\n\n #_07D5C2: LDA.b $04\n #_07D5C4: PHA\n\n #_07D5C5: LDA.b $05\n #_07D5C7: PHA\n\n #_07D5C8: LDA.b $08\n #_07D5CA: PHA\n\n #_07D5CB: LDA.b $09\n #_07D5CD: PHA\n\n #_07D5CE: LDA.b #$01\n #_07D5D0: STA.b $EE\n\n; ---------------------------------------------------------\n\n #_07D5D2: REP #$20\n\n #_07D5D4: LDA.b $E6\n #_07D5D6: SEC\n #_07D5D7: SBC.b $E8\n\n #_07D5D9: CLC\n #_07D5DA: ADC.b $04\n #_07D5DC: STA.b $04\n\n #_07D5DE: LDA.b $E0\n #_07D5E0: SEC\n #_07D5E1: SBC.b $E2\n\n #_07D5E3: CLC\n #_07D5E4: ADC.b $08\n #_07D5E6: STA.b $08\n\n; ---------------------------------------------------------\n\n #_07D5E8: SEP #$20\n\n #_07D5EA: JSR Hookshot_CheckSingleLayerTileCollision\n\n #_07D5ED: PLA\n #_07D5EE: STA.b $09\n\n #_07D5F0: PLA\n #_07D5F1: STA.b $08\n\n #_07D5F3: PLA\n #_07D5F4: STA.b $05\n\n #_07D5F6: PLA\n #_07D5F7: STA.b $04\n\n #_07D5F9: STZ.b $EE\n\n; ---------------------------------------------------------\n\n.only_1_layer\n #_07D5FB: JSR Hookshot_CheckSingleLayerTileCollision\n\n #_07D5FE: PLX\n\n #_07D5FF: PLA\n #_07D600: STA.b $EE\n\n #_07D602: PLA\n #_07D603: STA.b $A0\n\n #_07D605: PLB\n\n #_07D606: RTL", + "file": "bank_07.asm" + }, + { + "name": "Hookshot_CheckSingleLayerTileCollision", + "code": "Hookshot_CheckSingleLayerTileCollision:\n #_07D607: REP #$20\n\n #_07D609: LDA.b $73\n #_07D60B: TAY\n\n; ---------------------------------------------------------\n\n #_07D60C: LDA.b $04\n #_07D60E: CLC\n #_07D60F: ADC.w Hookshot_CheckTileCollision_offsets_a+0,Y\n #_07D612: AND.b $EC\n #_07D614: STA.b $00\n\n #_07D616: LDA.b $04\n #_07D618: CLC\n #_07D619: ADC.w Hookshot_CheckTileCollision_offsets_a+2,Y\n #_07D61C: AND.b $EC\n #_07D61E: STA.b $04\n\n; ---------------------------------------------------------\n\n #_07D620: LDA.b $08\n #_07D622: CLC\n #_07D623: ADC.w Hookshot_CheckTileCollision_offsets_b+0,Y\n #_07D626: AND.b $EC\n\n #_07D628: LSR A\n #_07D629: LSR A\n #_07D62A: LSR A\n #_07D62B: STA.b $02\n\n\n #_07D62D: LDA.b $08\n #_07D62F: CLC\n #_07D630: ADC.w Hookshot_CheckTileCollision_offsets_b+2,Y\n #_07D633: AND.b $EC\n\n #_07D635: LSR A\n #_07D636: LSR A\n #_07D637: LSR A\n #_07D638: STA.b $08\n\n; ---------------------------------------------------------\n\n #_07D63A: REP #$10\n\n #_07D63C: LDA.w #$0001\n #_07D63F: STA.b $0A\n\n #_07D641: JSR TileDetection_Execute\n\n #_07D644: LDA.b $04\n #_07D646: STA.b $00\n\n #_07D648: LDA.b $08\n #_07D64A: STA.b $02\n\n #_07D64C: LDA.w #$0002\n #_07D64F: STA.b $0A\n\n #_07D651: JSR TileDetection_Execute\n\n #_07D654: SEP #$30\n\n #_07D656: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleNudgingInADoor", + "code": "HandleNudgingInADoor:\n #_07D667: LDA.b $00\n #_07D669: PHA\n\n #_07D66A: LDA.b $66\n #_07D66C: AND.b #$02\n #_07D66E: BEQ .not_horizontal_last\n\n #_07D670: LDY.b #$02\n\n #_07D672: LDA.b $20\n #_07D674: CMP.b #$80\n #_07D676: BCC .start_detect\n\n #_07D678: LDY.b #$00\n #_07D67A: BRA .start_detect\n\n.not_horizontal_last\n #_07D67C: LDY.b #$06\n\n #_07D67E: LDA.b $22\n #_07D680: CMP.b #$80\n #_07D682: BCC .start_detect\n\n #_07D684: LDY.b #$04\n\n.start_detect\n #_07D686: STZ.b $59\n\n #_07D688: REP #$20\n\n #_07D68A: JSR TileDetect_ResetState\n\n #_07D68D: LDA.b $20\n #_07D68F: CLC\n #_07D690: ADC.w .offset_y,Y\n #_07D693: AND.b $EC\n #_07D695: STA.b $00\n\n #_07D697: LDA.b $22\n #_07D699: CLC\n #_07D69A: ADC.w .offset_x,Y\n #_07D69D: AND.b $EC\n #_07D69F: LSR A\n #_07D6A0: LSR A\n #_07D6A1: LSR A\n #_07D6A2: STA.b $02\n\n #_07D6A4: LDA.w #$0001\n #_07D6A7: STA.b $0A\n\n #_07D6A9: REP #$10\n\n #_07D6AB: JSR TileDetection_Execute\n\n #_07D6AE: SEP #$30\n\n #_07D6B0: PLA\n #_07D6B1: STA.b $00\n\n #_07D6B3: LDA.b $0E\n #_07D6B5: ORA.w $036E\n #_07D6B8: AND.b #$03\n #_07D6BA: BNE .horizontal_ledge_detected\n\n #_07D6BC: LDA.w $036D\n #_07D6BF: ORA.w $0370\n #_07D6C2: AND.b #$33\n #_07D6C4: BEQ .exit\n\n.horizontal_ledge_detected\n #_07D6C6: LDY.b #$00\n\n #_07D6C8: LDA.b $00\n #_07D6CA: EOR.b #$FF\n #_07D6CC: INC A\n #_07D6CD: STA.b $00\n\n #_07D6CF: CMP.b #$80\n #_07D6D1: BCC .offset_positive\n\n #_07D6D3: LDY.b #$FF\n\n.offset_positive\n #_07D6D5: STY.b $01\n\n #_07D6D7: LDA.b $66\n #_07D6D9: AND.b #$02\n #_07D6DB: BEQ .add_on_x\n\n #_07D6DD: REP #$20\n\n #_07D6DF: LDA.b $00\n #_07D6E1: CLC\n #_07D6E2: ADC.b $20\n #_07D6E4: STA.b $20\n\n #_07D6E6: BRA .exit\n\n.add_on_x\n #_07D6E8: REP #$20\n\n #_07D6EA: LDA.b $00\n #_07D6EC: CLC\n #_07D6ED: ADC.b $22\n #_07D6EF: STA.b $22\n\n.exit\n #_07D6F1: SEP #$20\n\n #_07D6F3: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileCheckForMirrorBonk", + "code": "TileCheckForMirrorBonk:\n #_07D6F4: STZ.b $59\n\n #_07D6F6: REP #$20\n\n #_07D6F8: JSR TileDetect_ResetState\n\n #_07D6FB: LDA.b $22\n #_07D6FD: CLC\n #_07D6FE: ADC.w #$0002\n #_07D701: AND.b $EC\n #_07D703: LSR A\n #_07D704: LSR A\n #_07D705: LSR A\n #_07D706: STA.b $02\n\n #_07D708: LDA.b $22\n #_07D70A: CLC\n #_07D70B: ADC.w #$000D\n #_07D70E: AND.b $EC\n #_07D710: LSR A\n #_07D711: LSR A\n #_07D712: LSR A\n #_07D713: STA.b $04\n\n #_07D715: LDA.b $20\n #_07D717: CLC\n #_07D718: ADC.w #$000A\n #_07D71B: AND.b $EC\n #_07D71D: STA.b $00\n #_07D71F: STA.b $74\n\n #_07D721: LDA.b $20\n #_07D723: CLC\n #_07D724: ADC.w #$0015\n #_07D727: AND.b $EC\n #_07D729: STA.b $08\n\n #_07D72B: BRL TileDetect_FromMirrorBonk\n\n; =========================================================\n\npool TileDetect_SwordSwingDeepInDoor\n\n.offset_y\n #_07D72E: dw $FFFF, $0018, $0010, $0010\n\n.offset_x\n #_07D736: dw $0008, $0008, $FFFF, $0010\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_SwordSwingDeepInDoor", + "code": "TileDetect_SwordSwingDeepInDoor:\n #_07D73E: STZ.b $59\n\n #_07D740: REP #$20\n\n #_07D742: JSR TileDetect_ResetState\n\n #_07D745: TXA\n #_07D746: AND.w #$00FF\n #_07D749: DEC A\n\n #_07D74A: ASL A\n #_07D74B: ASL A\n #_07D74C: TAY\n\n; ---------------------------------------------------------\n\n #_07D74D: LDA.b $22\n #_07D74F: CLC\n #_07D750: ADC.w .offset_x+0,Y\n #_07D753: AND.b $EC\n\n #_07D755: LSR A\n #_07D756: LSR A\n #_07D757: LSR A\n #_07D758: STA.b $02\n\n #_07D75A: LDA.b $22\n #_07D75C: CLC\n #_07D75D: ADC.w .offset_x+2,Y\n #_07D760: AND.b $EC\n\n #_07D762: LSR A\n #_07D763: LSR A\n #_07D764: LSR A\n #_07D765: STA.b $04\n\n #_07D767: LDA.b $20\n #_07D769: CLC\n #_07D76A: ADC.w .offset_y+0,Y\n #_07D76D: AND.b $EC\n #_07D76F: STA.b $00\n\n #_07D771: LDA.b $20\n #_07D773: CLC\n #_07D774: ADC.w .offset_y+2,Y\n #_07D777: AND.b $EC\n #_07D779: STA.b $08\n\n; ---------------------------------------------------------\n\n #_07D77B: REP #$10\n\n #_07D77D: LDA.w #$0001\n #_07D780: STA.b $0A\n\n #_07D782: JSR TileDetection_Execute\n\n #_07D785: LDA.b $04\n #_07D787: STA.b $02\n\n #_07D789: LDA.b $08\n #_07D78B: STA.b $00\n\n #_07D78D: LDA.w #$0002\n #_07D790: STA.b $0A\n\n #_07D792: JSR TileDetection_Execute\n\n #_07D795: SEP #$30\n\n #_07D797: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetect_ResetState", + "code": "TileDetect_ResetState:\n #_07D798: STZ.b $0C\n #_07D79A: STZ.b $0E\n\n #_07D79C: STZ.b $38\n #_07D79E: STZ.b $58\n\n #_07D7A0: STZ.w $02C0\n\n #_07D7A3: STZ.b $5F\n #_07D7A5: STZ.b $62\n\n #_07D7A7: STZ.w $0320\n\n #_07D7AA: STZ.w $0341\n #_07D7AD: STZ.w $0343\n\n #_07D7B0: STZ.w $0348\n #_07D7B3: STZ.w $034C\n\n #_07D7B6: STZ.w $0357\n #_07D7B9: STZ.w $0359\n #_07D7BC: STZ.w $035B\n\n #_07D7BF: STZ.w $0366\n\n #_07D7C2: STZ.w $036D\n #_07D7C5: STZ.w $036F\n\n #_07D7C8: STZ.w $02E5\n #_07D7CB: STZ.w $02E7\n #_07D7CE: STZ.w $02EE\n\n #_07D7D1: STZ.w $02F6\n\n #_07D7D4: STZ.w $03F1\n\n #_07D7D7: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileDetection_Execute", + "code": "TileDetection_Execute:\n #_07D9D8: SEP #$30\n\n #_07D9DA: LDA.b $1B\n #_07D9DC: BNE TileDetection_Execute_underworld\n\n #_07D9DE: BRL TileDetection_Execute_overworld\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileDetection_Execute_underworld", + "code": "TileDetection_Execute_underworld:\n #_07D9E1: REP #$20\n\n #_07D9E3: LDA.b $49\n #_07D9E5: AND.w #$00FF\n #_07D9E8: STA.b $49\n\n #_07D9EA: LDA.b $00\n #_07D9EC: AND.w #$FFF8\n #_07D9EF: ASL A\n #_07D9F0: ASL A\n #_07D9F1: ASL A\n #_07D9F2: STA.b $06\n\n #_07D9F4: LDA.b $02\n #_07D9F6: AND.w #$003F\n #_07D9F9: CLC\n #_07D9FA: ADC.b $06\n\n #_07D9FC: LDX.b $EE\n #_07D9FE: BEQ .lower_layer\n\n #_07DA00: CLC\n #_07DA01: ADC.w #$1000\n\n.lower_layer\n #_07DA04: REP #$10\n\n #_07DA06: TAX\n\n #_07DA07: LDA.l $7F2000,X\n #_07DA0B: PHA\n\n; ---------------------------------------------------------\n\n #_07DA0C: LDA.w $037F\n #_07DA0F: AND.w #$00FF\n #_07DA12: BEQ .not_oob\n\n #_07DA14: PLA\n #_07DA15: LDA.w #$0000\n #_07DA18: BRA .oob_mode\n\n.not_oob\n #_07DA1A: PLA\n\n.oob_mode\n #_07DA1B: AND.w #$00FF\n #_07DA1E: STA.b $06\n #_07DA20: STA.w $0114\n\n #_07DA23: STX.b $BD\n\n #_07DA25: ASL A\n #_07DA26: TAX\n\n #_07DA27: JMP.w (.vectors,X)\n\n; =========================================================\n\npool TileDetection_Execute_overworld\n\n.vectors\n #_07DA2A: dw TileBehavior_NothingOW ; 0x00 OW\n #_07DA2C: dw TileBehavior_StandardCollision ; 0x01 OW\n #_07DA2E: dw TileBehavior_StandardCollision ; 0x02 OW\n #_07DA30: dw TileBehavior_StandardCollision ; 0x03 OW\n #_07DA32: dw TileBehavior_ThickGrass ; 0x04 OW\n #_07DA34: dw TileBehavior_NothingOW ; 0x05 OW\n #_07DA36: dw TileBehavior_NothingOW ; 0x06 OW\n #_07DA38: dw TileBehavior_NothingOW ; 0x07 OW\n #_07DA3A: dw TileBehavior_DeepWater ; 0x08 OW\n #_07DA3C: dw TileBehavior_ShallowWater ; 0x09 OW\n #_07DA3E: dw TileBehavior_ShortWaterLadder ; 0x0A OW\n #_07DA40: dw TileBehavior_UnusedDeepWater ; 0x0B OW\n #_07DA42: dw TileBehavior_OverlayMask_0C ; 0x0C OW\n #_07DA44: dw TileBehavior_SpikeFloor ; 0x0D OW\n #_07DA46: dw TileBehavior_GanonIce ; 0x0E OW\n #_07DA48: dw TileBehavior_PalaceIce ; 0x0F OW\n #_07DA4A: dw TileBehavior_Slope ; 0x10 OW\n #_07DA4C: dw TileBehavior_Slope ; 0x11 OW\n #_07DA4E: dw TileBehavior_Slope ; 0x12 OW\n #_07DA50: dw TileBehavior_Slope ; 0x13 OW\n #_07DA52: dw TileBehavior_NothingOW ; 0x14 OW\n #_07DA54: dw TileBehavior_NothingOW ; 0x15 OW\n #_07DA56: dw TileBehavior_NothingOW ; 0x16 OW\n #_07DA58: dw TileBehavior_NothingOW ; 0x17 OW\n #_07DA5A: dw TileBehavior_SlopeOuter ; 0x18 OW\n #_07DA5C: dw TileBehavior_SlopeOuter ; 0x19 OW\n #_07DA5E: dw TileBehavior_SlopeOuter ; 0x1A OW\n #_07DA60: dw TileBehavior_SlopeOuter ; 0x1B OW\n #_07DA62: dw TileBehavior_OverlayMask_1C ; 0x1C OW\n #_07DA64: dw TileBehavior_NorthSingleLayerStairs ; 0x1D OW\n #_07DA66: dw TileBehavior_NorthSwapLayerStairs ; 0x1E OW\n #_07DA68: dw TileBehavior_NorthSwapLayerStairs ; 0x1F OW\n #_07DA6A: dw TileBehavior_Pit ; 0x20 OW\n #_07DA6C: dw TileBehavior_NothingOW ; 0x21 OW\n #_07DA6E: dw TileBehavior_ManualStairs ; 0x22 OW\n #_07DA70: dw TileBehavior_NothingOW ; 0x23 OW\n #_07DA72: dw TileBehavior_NothingOW ; 0x24 OW\n #_07DA74: dw TileBehavior_NothingOW ; 0x25 OW\n #_07DA76: dw TileBehavior_StandardCollision ; 0x26 OW\n #_07DA78: dw TileBehavior_Hookshottables ; 0x27 OW\n #_07DA7A: dw TileBehavior_Ledge_North ; 0x28 OW\n #_07DA7C: dw TileBehavior_Ledge_South ; 0x29 OW\n #_07DA7E: dw TileBehavior_Ledge_EastWest ; 0x2A OW\n #_07DA80: dw TileBehavior_Ledge_EastWest ; 0x2B OW\n #_07DA82: dw TileBehavior_Ledge_NorthDiagonal ; 0x2C OW\n #_07DA84: dw TileBehavior_Ledge_SouthDiagonal ; 0x2D OW\n #_07DA86: dw TileBehavior_Ledge_NorthDiagonal ; 0x2E OW\n #_07DA88: dw TileBehavior_Ledge_SouthDiagonal ; 0x2F OW\n #_07DA8A: dw TileBehavior_ManualStairs ; 0x30 OW\n #_07DA8C: dw TileBehavior_ManualStairs ; 0x31 OW\n #_07DA8E: dw TileBehavior_ManualStairs ; 0x32 OW\n #_07DA90: dw TileBehavior_ManualStairs ; 0x33 OW\n #_07DA92: dw TileBehavior_ManualStairs ; 0x34 OW\n #_07DA94: dw TileBehavior_ManualStairs ; 0x35 OW\n #_07DA96: dw TileBehavior_ManualStairs ; 0x36 OW\n #_07DA98: dw TileBehavior_ManualStairs ; 0x37 OW\n #_07DA9A: dw TileBehavior_NothingOW ; 0x38 OW\n #_07DA9C: dw TileBehavior_NothingOW ; 0x39 OW\n #_07DA9E: dw TileBehavior_NothingOW ; 0x3A OW\n #_07DAA0: dw TileBehavior_NothingOW ; 0x3B OW\n #_07DAA2: dw TileBehavior_NothingOW ; 0x3C OW\n #_07DAA4: dw TileBehavior_SouthSingleLayerStairs ; 0x3D OW\n #_07DAA6: dw TileBehavior_SouthSwapLayerStairs ; 0x3E OW\n #_07DAA8: dw TileBehavior_SouthSwapLayerStairs ; 0x3F OW\n #_07DAAA: dw TileBehavior_ThickGrass ; 0x40 OW\n #_07DAAC: dw TileBehavior_NothingOW ; 0x41 OW\n #_07DAAE: dw TileBehavior_GraveStone ; 0x42 OW\n #_07DAB0: dw TileBehavior_StandardCollision ; 0x43 OW\n #_07DAB2: dw TileBehavior_Spike ; 0x44 OW\n #_07DAB4: dw TileBehavior_NothingOW ; 0x45 OW\n #_07DAB6: dw TileBehavior_HylianPlaque ; 0x46 OW\n #_07DAB8: dw TileBehavior_NothingOW ; 0x47 OW\n #_07DABA: dw TileBehavior_DiggableGround ; 0x48 OW\n #_07DABC: dw TileBehavior_NothingOW ; 0x49 OW\n #_07DABE: dw TileBehavior_DiggableGround ; 0x4A OW\n #_07DAC0: dw TileBehavior_Warp ; 0x4B OW\n #_07DAC2: dw TileBehavior_UnusedCornerType ; 0x4C OW\n #_07DAC4: dw TileBehavior_UnusedCornerType ; 0x4D OW\n #_07DAC6: dw TileBehavior_EasternRuinsCorner ; 0x4E OW\n #_07DAC8: dw TileBehavior_EasternRuinsCorner ; 0x4F OW\n #_07DACA: dw TileBehavior_Liftable ; 0x50 OW\n #_07DACC: dw TileBehavior_Liftable ; 0x51 OW\n #_07DACE: dw TileBehavior_Liftable ; 0x52 OW\n #_07DAD0: dw TileBehavior_Liftable ; 0x53 OW\n #_07DAD2: dw TileBehavior_Liftable ; 0x54 OW\n #_07DAD4: dw TileBehavior_Liftable ; 0x55 OW\n #_07DAD6: dw TileBehavior_Liftable ; 0x56 OW\n #_07DAD8: dw TileBehavior_BonkRocks ; 0x57 OW\n #_07DADA: dw TileBehavior_Chest ; 0x58 OW\n #_07DADC: dw TileBehavior_Chest ; 0x59 OW\n #_07DADE: dw TileBehavior_Chest ; 0x5A OW\n #_07DAE0: dw TileBehavior_Chest ; 0x5B OW\n #_07DAE2: dw TileBehavior_Chest ; 0x5C OW\n #_07DAE4: dw TileBehavior_Chest ; 0x5D OW\n #_07DAE6: dw TileBehavior_NothingOW ; 0x5E OW\n #_07DAE8: dw TileBehavior_NothingOW ; 0x5F OW\n #_07DAEA: dw TileBehavior_NothingOW ; 0x60 OW\n #_07DAEC: dw TileBehavior_NothingOW ; 0x61 OW\n #_07DAEE: dw TileBehavior_NothingOW ; 0x62 OW\n #_07DAF0: dw TileBehavior_MinigameChest ; 0x63 OW\n #_07DAF2: dw TileBehavior_NothingOW ; 0x64 OW\n #_07DAF4: dw TileBehavior_NothingOW ; 0x65 OW\n #_07DAF6: dw TileBehavior_NothingOW ; 0x66 OW\n #_07DAF8: dw TileBehavior_CrystalPeg_Up ; 0x67 OW\n #_07DAFA: dw TileBehavior_Conveyor_Upwards ; 0x68 OW\n #_07DAFC: dw TileBehavior_Conveyor_Downwards ; 0x69 OW\n #_07DAFE: dw TileBehavior_Conveyor_Leftwards ; 0x6A OW\n #_07DB00: dw TileBehavior_Conveyor_Rightwards ; 0x6B OW\n #_07DB02: dw TileBehavior_NothingOW ; 0x6C OW\n #_07DB04: dw TileBehavior_NothingOW ; 0x6D OW\n #_07DB06: dw TileBehavior_NothingOW ; 0x6E OW\n #_07DB08: dw TileBehavior_NothingOW ; 0x6F OW\n #_07DB0A: dw TileBehavior_ManipulablyReplaced ; 0x70 OW\n #_07DB0C: dw TileBehavior_ManipulablyReplaced ; 0x71 OW\n #_07DB0E: dw TileBehavior_ManipulablyReplaced ; 0x72 OW\n #_07DB10: dw TileBehavior_ManipulablyReplaced ; 0x73 OW\n #_07DB12: dw TileBehavior_ManipulablyReplaced ; 0x74 OW\n #_07DB14: dw TileBehavior_ManipulablyReplaced ; 0x75 OW\n #_07DB16: dw TileBehavior_ManipulablyReplaced ; 0x76 OW\n #_07DB18: dw TileBehavior_ManipulablyReplaced ; 0x77 OW\n #_07DB1A: dw TileBehavior_ManipulablyReplaced ; 0x78 OW\n #_07DB1C: dw TileBehavior_ManipulablyReplaced ; 0x79 OW\n #_07DB1E: dw TileBehavior_ManipulablyReplaced ; 0x7A OW\n #_07DB20: dw TileBehavior_ManipulablyReplaced ; 0x7B OW\n #_07DB22: dw TileBehavior_ManipulablyReplaced ; 0x7C OW\n #_07DB24: dw TileBehavior_ManipulablyReplaced ; 0x7D OW\n #_07DB26: dw TileBehavior_ManipulablyReplaced ; 0x7E OW\n #_07DB28: dw TileBehavior_ManipulablyReplaced ; 0x7F OW\n #_07DB2A: dw TileBehavior_Door ; 0x80 OW\n #_07DB2C: dw TileBehavior_Door ; 0x81 OW\n #_07DB2E: dw TileBehavior_ShutterDoor ; 0x82 OW\n #_07DB30: dw TileBehavior_ShutterDoor ; 0x83 OW\n #_07DB32: dw TileBehavior_Door ; 0x84 OW\n #_07DB34: dw TileBehavior_Door ; 0x85 OW\n #_07DB36: dw TileBehavior_Door ; 0x86 OW\n #_07DB38: dw TileBehavior_Door ; 0x87 OW\n #_07DB3A: dw TileBehavior_Door ; 0x88 OW\n #_07DB3C: dw TileBehavior_Door ; 0x89 OW\n #_07DB3E: dw TileBehavior_Door ; 0x8A OW\n #_07DB40: dw TileBehavior_Door ; 0x8B OW\n #_07DB42: dw TileBehavior_Door ; 0x8C OW\n #_07DB44: dw TileBehavior_Door ; 0x8D OW\n #_07DB46: dw TileBehavior_Entrance ; 0x8E OW\n #_07DB48: dw TileBehavior_Entrance ; 0x8F OW\n #_07DB4A: dw TileBehavior_LayerToggleShutterDoor ; 0x90 OW\n #_07DB4C: dw TileBehavior_LayerToggleShutterDoor ; 0x91 OW\n #_07DB4E: dw TileBehavior_LayerToggleShutterDoor ; 0x92 OW\n #_07DB50: dw TileBehavior_LayerToggleShutterDoor ; 0x93 OW\n #_07DB52: dw TileBehavior_LayerToggleShutterDoor ; 0x94 OW\n #_07DB54: dw TileBehavior_LayerToggleShutterDoor ; 0x95 OW\n #_07DB56: dw TileBehavior_LayerToggleShutterDoor ; 0x96 OW\n #_07DB58: dw TileBehavior_LayerToggleShutterDoor ; 0x97 OW\n #_07DB5A: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x98 OW\n #_07DB5C: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x99 OW\n #_07DB5E: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9A OW\n #_07DB60: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9B OW\n #_07DB62: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9C OW\n #_07DB64: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9D OW\n #_07DB66: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9E OW\n #_07DB68: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0x9F OW\n #_07DB6A: dw TileBehavior_DungeonToggleManualDoor ; 0xA0 OW\n #_07DB6C: dw TileBehavior_DungeonToggleManualDoor ; 0xA1 OW\n #_07DB6E: dw TileBehavior_DungeonToggleShutterDoor ; 0xA2 OW\n #_07DB70: dw TileBehavior_DungeonToggleShutterDoor ; 0xA3 OW\n #_07DB72: dw TileBehavior_DungeonToggleManualDoor ; 0xA4 OW\n #_07DB74: dw TileBehavior_DungeonToggleManualDoor ; 0xA5 OW\n #_07DB76: dw TileBehavior_NothingOW ; 0xA6 OW\n #_07DB78: dw TileBehavior_NothingOW ; 0xA7 OW\n #_07DB7A: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xA8 OW\n #_07DB7C: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xA9 OW\n #_07DB7E: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAA OW\n #_07DB80: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAB OW\n #_07DB82: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAC OW\n #_07DB84: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAD OW\n #_07DB86: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAE OW\n #_07DB88: dw TileBehavior_LayerAndDungeonToggleShutterDoor ; 0xAF OW\n #_07DB8A: dw TileBehavior_Pit ; 0xB0 OW\n #_07DB8C: dw TileBehavior_Pit ; 0xB1 OW\n #_07DB8E: dw TileBehavior_Pit ; 0xB2 OW\n #_07DB90: dw TileBehavior_Pit ; 0xB3 OW\n #_07DB92: dw TileBehavior_Pit ; 0xB4 OW\n #_07DB94: dw TileBehavior_Pit ; 0xB5 OW\n #_07DB96: dw TileBehavior_Pit ; 0xB6 OW\n #_07DB98: dw TileBehavior_Pit ; 0xB7 OW\n #_07DB9A: dw TileBehavior_Pit ; 0xB8 OW\n #_07DB9C: dw TileBehavior_Pit ; 0xB9 OW\n #_07DB9E: dw TileBehavior_Pit ; 0xBA OW\n #_07DBA0: dw TileBehavior_Pit ; 0xBB OW\n #_07DBA2: dw TileBehavior_Pit ; 0xBC OW\n #_07DBA4: dw TileBehavior_Pit ; 0xBD OW\n #_07DBA6: dw TileBehavior_NothingOW ; 0xBE OW\n #_07DBA8: dw TileBehavior_NothingOW ; 0xBF OW\n #_07DBAA: dw TileBehavior_LightableTorch ; 0xC0 OW\n #_07DBAC: dw TileBehavior_LightableTorch ; 0xC1 OW\n #_07DBAE: dw TileBehavior_LightableTorch ; 0xC2 OW\n #_07DBB0: dw TileBehavior_LightableTorch ; 0xC3 OW\n #_07DBB2: dw TileBehavior_LightableTorch ; 0xC4 OW\n #_07DBB4: dw TileBehavior_LightableTorch ; 0xC5 OW\n #_07DBB6: dw TileBehavior_LightableTorch ; 0xC6 OW\n #_07DBB8: dw TileBehavior_LightableTorch ; 0xC7 OW\n #_07DBBA: dw TileBehavior_LightableTorch ; 0xC8 OW\n #_07DBBC: dw TileBehavior_LightableTorch ; 0xC9 OW\n #_07DBBE: dw TileBehavior_LightableTorch ; 0xCA OW\n #_07DBC0: dw TileBehavior_LightableTorch ; 0xCB OW\n #_07DBC2: dw TileBehavior_LightableTorch ; 0xCC OW\n #_07DBC4: dw TileBehavior_LightableTorch ; 0xCD OW\n #_07DBC6: dw TileBehavior_LightableTorch ; 0xCE OW\n #_07DBC8: dw TileBehavior_LightableTorch ; 0xCF OW\n #_07DBCA: dw TileBehavior_NothingOW ; 0xD0 OW\n #_07DBCC: dw TileBehavior_NothingOW ; 0xD1 OW\n #_07DBCE: dw TileBehavior_NothingOW ; 0xD2 OW\n #_07DBD0: dw TileBehavior_NothingOW ; 0xD3 OW\n #_07DBD2: dw TileBehavior_NothingOW ; 0xD4 OW\n #_07DBD4: dw TileBehavior_NothingOW ; 0xD5 OW\n #_07DBD6: dw TileBehavior_NothingOW ; 0xD6 OW\n #_07DBD8: dw TileBehavior_NothingOW ; 0xD7 OW\n #_07DBDA: dw TileBehavior_NothingOW ; 0xD8 OW\n #_07DBDC: dw TileBehavior_NothingOW ; 0xD9 OW\n #_07DBDE: dw TileBehavior_NothingOW ; 0xDA OW\n #_07DBE0: dw TileBehavior_NothingOW ; 0xDB OW\n #_07DBE2: dw TileBehavior_NothingOW ; 0xDC OW\n #_07DBE4: dw TileBehavior_NothingOW ; 0xDD OW\n #_07DBE6: dw TileBehavior_NothingOW ; 0xDE OW\n #_07DBE8: dw TileBehavior_NothingOW ; 0xDF OW\n #_07DBEA: dw TileBehavior_NothingOW ; 0xE0 OW\n #_07DBEC: dw TileBehavior_NothingOW ; 0xE1 OW\n #_07DBEE: dw TileBehavior_NothingOW ; 0xE2 OW\n #_07DBF0: dw TileBehavior_NothingOW ; 0xE3 OW\n #_07DBF2: dw TileBehavior_NothingOW ; 0xE4 OW\n #_07DBF4: dw TileBehavior_NothingOW ; 0xE5 OW\n #_07DBF6: dw TileBehavior_NothingOW ; 0xE6 OW\n #_07DBF8: dw TileBehavior_NothingOW ; 0xE7 OW\n #_07DBFA: dw TileBehavior_NothingOW ; 0xE8 OW\n #_07DBFC: dw TileBehavior_NothingOW ; 0xE9 OW\n #_07DBFE: dw TileBehavior_NothingOW ; 0xEA OW\n #_07DC00: dw TileBehavior_NothingOW ; 0xEB OW\n #_07DC02: dw TileBehavior_NothingOW ; 0xEC OW\n #_07DC04: dw TileBehavior_NothingOW ; 0xED OW\n #_07DC06: dw TileBehavior_NothingOW ; 0xEE OW\n #_07DC08: dw TileBehavior_NothingOW ; 0xEF OW\n #_07DC0A: dw TileBehavior_FlaggableDoor ; 0xF0 OW\n #_07DC0C: dw TileBehavior_FlaggableDoor ; 0xF1 OW\n #_07DC0E: dw TileBehavior_FlaggableDoor ; 0xF2 OW\n #_07DC10: dw TileBehavior_FlaggableDoor ; 0xF3 OW\n #_07DC12: dw TileBehavior_FlaggableDoor ; 0xF4 OW\n #_07DC14: dw TileBehavior_FlaggableDoor ; 0xF5 OW\n #_07DC16: dw TileBehavior_FlaggableDoor ; 0xF6 OW\n #_07DC18: dw TileBehavior_FlaggableDoor ; 0xF7 OW\n #_07DC1A: dw TileBehavior_FlaggableDoor ; 0xF8 OW\n #_07DC1C: dw TileBehavior_FlaggableDoor ; 0xF9 OW\n #_07DC1E: dw TileBehavior_FlaggableDoor ; 0xFA OW\n #_07DC20: dw TileBehavior_FlaggableDoor ; 0xFB OW\n #_07DC22: dw TileBehavior_FlaggableDoor ; 0xFC OW\n #_07DC24: dw TileBehavior_FlaggableDoor ; 0xFD OW\n #_07DC26: dw TileBehavior_FlaggableDoor ; 0xFE OW\n #_07DC28: dw TileBehavior_FlaggableDoor ; 0xFF OW\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "TileDetection_Execute_overworld", + "code": "TileDetection_Execute_overworld:\n #_07DC2A: JSL Overworld_GetTileTypeAtLocation\n\n.from_item\n #_07DC2E: REP #$30\n\n #_07DC30: PHA\n\n #_07DC31: LDA.w $037F\n #_07DC34: AND.w #$00FF\n #_07DC37: BEQ .not_oob\n\n #_07DC39: PLA\n #_07DC3A: LDA.w #$0000\n\n #_07DC3D: BRA .oob_mode\n\n.not_oob\n #_07DC3F: PLA\n\n.oob_mode\n #_07DC40: AND.w #$00FF\n #_07DC43: STA.b $06\n\n #_07DC45: ASL A\n #_07DC46: TAX\n\n #_07DC47: JMP.w (.vectors,X)\n\n; =========================================================\n\n#TileBehavior_HandleItemAndExecute:\n #_07DC4A: JSL HandleItemTileAction_Overworld\n\n #_07DC4E: BRA .from_item\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_StandardCollision", + "code": "TileBehavior_StandardCollision:\n #_07DC50: LDA.b $0A\n #_07DC52: TSB.b $0E\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Nothing", + "code": "TileBehavior_Nothing:\n #_07DC54: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Slope_masks", + "code": "TileBehavior_Slope_masks:\n #_07DC55: dw $0004 ; 00000100\n #_07DC57: dw $0000 ; 00000000\n #_07DC59: dw $0006 ; 00000110\n #_07DC5B: dw $0002 ; 00000010\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_SlopeOuter", + "code": "TileBehavior_SlopeOuter:\n #_07DC5D: LDA.b $0A\n #_07DC5F: TSB.b $38\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Slope", + "code": "TileBehavior_Slope:\n #_07DC61: LDA.b $0A\n #_07DC63: TSB.b $0C\n\n #_07DC65: LDA.b $06\n #_07DC67: AND.w #$0003\n #_07DC6A: ASL A\n #_07DC6B: TAY\n\n #_07DC6C: LDA.w TileBehavior_Slope_masks,Y\n #_07DC6F: STA.b $6E\n\n #_07DC71: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_NorthSingleLayerStairs", + "code": "TileBehavior_NorthSingleLayerStairs:\n #_07DC72: LDA.b $06\n #_07DC74: STA.b $76\n\n #_07DC76: LDA.b $0A\n #_07DC78: TSB.w $02C0\n\n #_07DC7B: BRA TileBehavior_ManualStairs\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_NorthSwapLayerStairs", + "code": "TileBehavior_NorthSwapLayerStairs:\n #_07DC7D: LDA.b $06\n #_07DC7F: STA.b $76\n\n #_07DC81: LDA.b $0A\n #_07DC83: TSB.w $02C0\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ManualStairs", + "code": "TileBehavior_ManualStairs:\n #_07DC86: LDA.b $0A\n #_07DC88: TSB.b $58\n\n #_07DC8A: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Pit", + "code": "TileBehavior_Pit:\n #_07DC8B: LDA.w $02F5\n #_07DC8E: AND.w #$00FF\n #_07DC91: BNE .exit\n\n #_07DC93: LDA.b $0A\n #_07DC95: TSB.b $59\n\n.exit\n #_07DC97: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_OverlayMask_0C", + "code": "TileBehavior_OverlayMask_0C:\n #_07DC98: LDA.b $0A\n #_07DC9A: TSB.w $0320\n\n #_07DC9D: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_GanonIce", + "code": "TileBehavior_GanonIce:\n #_07DC9E: LDA.b $0A\n #_07DCA0: TSB.w $0348\n\n #_07DCA3: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_PalaceIce", + "code": "TileBehavior_PalaceIce:\n #_07DCA4: LDA.b $0A\n\n #_07DCA6: ASL A\n #_07DCA7: ASL A\n #_07DCA8: ASL A\n #_07DCA9: ASL A\n\n #_07DCAA: TSB.w $0348\n\n #_07DCAD: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_LightableTorch", + "code": "TileBehavior_LightableTorch:\n #_07DCAE: LDA.b $0A\n #_07DCB0: TSB.b $0E\n #_07DCB2: TSB.w $02F6\n\n #_07DCB5: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_DeepWater", + "code": "TileBehavior_DeepWater:\n #_07DCB6: LDA.b $0A\n #_07DCB8: TSB.w $0341\n\n #_07DCBB: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ShortWaterLadder", + "code": "TileBehavior_ShortWaterLadder:\n #_07DCBC: LDA.b $0A\n #_07DCBE: TSB.w $0343\n\n #_07DCC1: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_OverlayMask_1C", + "code": "TileBehavior_OverlayMask_1C:\n #_07DCC2: LDA.b $0A\n #_07DCC4: TSB.w $034C\n\n #_07DCC7: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_LayerToggleShutterDoor", + "code": "TileBehavior_LayerToggleShutterDoor:\n #_07DCC8: LDA.b $EF\n #_07DCCA: AND.w #$FF00\n #_07DCCD: ORA.w #$0001\n #_07DCD0: STA.b $EF\n\n #_07DCD2: BRA TileBehavior_ShutterDoor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_LayerAndDungeonToggleShutterDoor", + "code": "TileBehavior_LayerAndDungeonToggleShutterDoor:\n #_07DCD4: LDA.b $EF\n #_07DCD6: AND.w #$FF00\n #_07DCD9: ORA.w #$0003\n #_07DCDC: STA.b $EF\n\n #_07DCDE: BRA TileBehavior_ShutterDoor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_DungeonToggleShutterDoor", + "code": "TileBehavior_DungeonToggleShutterDoor:\n #_07DCE0: LDA.b $EF\n #_07DCE2: AND.w #$FF00\n #_07DCE5: ORA.w #$0002\n #_07DCE8: STA.b $EF\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ShutterDoor", + "code": "TileBehavior_ShutterDoor:\n #_07DCEA: LDA.b $0A\n #_07DCEC: ASL A\n #_07DCED: ASL A\n #_07DCEE: ASL A\n #_07DCEF: ASL A\n #_07DCF0: TSB.b $0E\n\n #_07DCF2: LDA.b $0A\n #_07DCF4: XBA\n #_07DCF5: TSB.b $0E\n\n #_07DCF7: LDA.b $06\n #_07DCF9: AND.w #$0001\n #_07DCFC: ASL A\n #_07DCFD: STA.b $62\n\n #_07DCFF: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_DungeonToggleManualDoor", + "code": "TileBehavior_DungeonToggleManualDoor:\n #_07DD00: LDA.b $EF\n #_07DD02: AND.w #$FF00\n #_07DD05: ORA.w #$0002\n #_07DD08: STA.b $EF\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Door", + "code": "TileBehavior_Door:\n #_07DD0A: LDA.b $0A\n #_07DD0C: ASL A\n #_07DD0D: ASL A\n #_07DD0E: ASL A\n #_07DD0F: ASL A\n #_07DD10: TSB.b $0E\n\n #_07DD12: LDA.b $06\n #_07DD14: AND.w #$0001\n #_07DD17: ASL A\n #_07DD18: STA.b $62\n\n #_07DD1A: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ShallowWater", + "code": "TileBehavior_ShallowWater:\n #_07DD1B: LDA.b $0A\n #_07DD1D: TSB.w $0359\n\n #_07DD20: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ManipulablyReplaced", + "code": "TileBehavior_ManipulablyReplaced:\n #_07DD41: LDA.b $0A\n #_07DD43: AND.w #$0002\n #_07DD46: BEQ .no_bitmask\n\n #_07DD48: LDA.b $06\n #_07DD4A: AND.w #$000F\n #_07DD4D: ASL A\n #_07DD4E: TAY\n\n #_07DD4F: LDA.w .bitmask,Y\n #_07DD52: TSB.b $5F\n\n.no_bitmask\n #_07DD54: LDA.b $0A\n #_07DD56: TSB.b $0E\n\n #_07DD58: JSR TileBehavior_FlagManipulable\n\n #_07DD5B: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_UnusedDeepWater", + "code": "TileBehavior_UnusedDeepWater:\n #_07DD5C: LDA.b $06\n #_07DD5E: STA.b $76\n\n #_07DD60: LDA.b $0A\n #_07DD62: ASL A\n #_07DD63: ASL A\n #_07DD64: ASL A\n #_07DD65: ASL A\n #_07DD66: TSB.w $0341\n\n #_07DD69: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Chest", + "code": "TileBehavior_Chest:\n #_07DD6A: JSR TileBehavior_FlagManipulable\n\n #_07DD6D: LDA.b $06\n #_07DD6F: STA.b $76\n\n #_07DD71: SEC\n #_07DD72: SBC.w #$0058\n #_07DD75: ASL A\n #_07DD76: TAX\n\n #_07DD77: LDA.w $06E0,X\n #_07DD7A: CMP.w #$8000\n #_07DD7D: BCC TileBehavior_FinishChest\n\n #_07DD7F: LDA.b $0A\n #_07DD81: TSB.b $0E\n #_07DD83: ASL A\n #_07DD84: ASL A\n #_07DD85: ASL A\n #_07DD86: ASL A\n #_07DD87: TSB.w $02E7\n #_07DD8A: AND.w #$0020\n #_07DD8D: BEQ .exit\n\n #_07DD8F: LDA.b $06\n #_07DD91: STA.w $02EA\n\n.exit\n #_07DD94: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_FinishChest", + "code": "TileBehavior_FinishChest:\n #_07DD95: LDA.b $0A\n #_07DD97: TSB.w $02E5\n #_07DD9A: TSB.b $0E\n\n #_07DD9C: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_SouthSingleLayerStairs", + "code": "TileBehavior_SouthSingleLayerStairs:\n #_07DD9D: LDA.b $06\n #_07DD9F: BRA TileBehavior_SouthAutoStairs\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_SouthSwapLayerStairs", + "code": "TileBehavior_SouthSwapLayerStairs:\n #_07DDA1: LDA.b $06\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_SouthAutoStairs", + "code": "TileBehavior_SouthAutoStairs:\n #_07DDA3: STA.b $76\n\n #_07DDA5: LDA.b $0A\n #_07DDA7: TSB.b $58\n\n #_07DDA9: ASL A\n #_07DDAA: ASL A\n #_07DDAB: ASL A\n #_07DDAC: ASL A\n #_07DDAD: TSB.w $02C0\n\n #_07DDB0: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Spike", + "code": "TileBehavior_Spike:\n #_07DDB1: LDA.w $0FFC\n #_07DDB4: BNE .no_damage\n\n #_07DDB6: LDA.w $0403\n #_07DDB9: AND.w #$0080\n #_07DDBC: BEQ .damage\n\n.no_damage\n #_07DDBE: LDA.b $0A\n #_07DDC0: TSB.b $0E\n\n #_07DDC2: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_SpikeFloor", + "code": "TileBehavior_SpikeFloor:\n #_07DDCA: LDA.w $0FFC\n #_07DDCD: BNE .no_damage\n\n #_07DDCF: LDA.w $0403\n #_07DDD2: AND.w #$0080\n #_07DDD5: BNE .no_damage\n\n #_07DDD7: LDA.b $0A\n #_07DDD9: ASL A\n #_07DDDA: ASL A\n #_07DDDB: ASL A\n #_07DDDC: ASL A\n #_07DDDD: TSB.w $02EE\n\n.no_damage\n #_07DDE0: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Hookshottables", + "code": "TileBehavior_Hookshottables:\n #_07DDE1: LDA.b $0A\n #_07DDE3: TSB.b $0E\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_FlagManipulable", + "code": "TileBehavior_FlagManipulable:\n #_07DDE5: LDA.b $0A\n #_07DDE7: TSB.w $02F6\n\n #_07DDEA: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_FlaggableDoor", + "code": "TileBehavior_FlaggableDoor:\n #_07DDEB: LDA.b $0A\n #_07DDED: TSB.b $0E\n\n #_07DDEF: ASL A\n #_07DDF0: ASL A\n #_07DDF1: ASL A\n #_07DDF2: ASL A\n #_07DDF3: TSB.w $02F6\n\n #_07DDF6: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_RupeeTile", + "code": "TileBehavior_RupeeTile:\n #_07DDF7: LDX.b $BD\n\n #_07DDF9: LDA.l $7F2040,X\n #_07DDFD: AND.w #$00FF\n #_07DE00: CMP.w #$0060 ; TILETYPE 60\n #_07DE03: BNE .no_rupees\n\n #_07DE05: LDA.b $0A\n #_07DE07: XBA\n #_07DE08: TSB.w $02F6\n\n #_07DE0B: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_CrystalPeg_Up", + "code": "TileBehavior_CrystalPeg_Up:\n #_07DE17: LDA.b $0A\n #_07DE19: TSB.b $0E\n #_07DE1B: TSB.w $02F6\n\n #_07DE1E: LDA.b $0A\n #_07DE20: XBA\n\n #_07DE21: ASL A\n #_07DE22: ASL A\n #_07DE23: ASL A\n #_07DE24: ASL A\n\n #_07DE25: TSB.w $02E7\n\n #_07DE28: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Conveyor_Upwards", + "code": "TileBehavior_Conveyor_Upwards:\n #_07DE29: LDA.b $0A\n\n #_07DE2B: BRA TileBehavior_Conveyor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Conveyor_Downwards", + "code": "TileBehavior_Conveyor_Downwards:\n #_07DE2D: LDA.b $0A\n #_07DE2F: ASL A\n #_07DE30: ASL A\n #_07DE31: ASL A\n #_07DE32: ASL A\n\n #_07DE33: BRA TileBehavior_Conveyor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Conveyor_Leftwards", + "code": "TileBehavior_Conveyor_Leftwards:\n #_07DE35: LDA.b $0A\n #_07DE37: XBA\n\n #_07DE38: BRA TileBehavior_Conveyor\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Conveyor_Rightwards", + "code": "TileBehavior_Conveyor_Rightwards:\n #_07DE3A: LDA.b $0A\n #_07DE3C: XBA\n\n #_07DE3D: ASL A\n #_07DE3E: ASL A\n #_07DE3F: ASL A\n #_07DE40: ASL A\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Conveyor", + "code": "TileBehavior_Conveyor:\n #_07DE41: TSB.w $03F1\n\n #_07DE44: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_MinigameChest", + "code": "TileBehavior_MinigameChest:\n #_07DE45: JSR TileBehavior_FlagManipulable\n\n #_07DE48: LDA.b $06\n #_07DE4A: STA.b $76\n\n #_07DE4C: BRL TileBehavior_FinishChest\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Entrance", + "code": "TileBehavior_Entrance:\n #_07DE4F: JSR TileBehavior_Door\n\n #_07DE52: LDA.b $0A\n #_07DE54: XBA\n #_07DE55: TSB.w $02EE\n\n #_07DE58: STZ.b $62\n\n #_07DE5A: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_NothingOW", + "code": "TileBehavior_NothingOW:\n #_07DE5B: LDA.b $0A\n #_07DE5D: TSB.w $0343\n\n #_07DE60: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_ThickGrass", + "code": "TileBehavior_ThickGrass:\n #_07DE61: LDA.b $0A\n #_07DE63: TSB.w $0357\n\n #_07DE66: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_DiggableGround", + "code": "TileBehavior_DiggableGround:\n #_07DE67: LDA.b $0A\n #_07DE69: TSB.w $035B\n #_07DE6C: TSB.w $0343\n\n #_07DE6F: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Liftable", + "code": "TileBehavior_Liftable:\n #_07DE7E: LDX.w #$000C\n\n.check_next\n #_07DE81: LDA.b $06\n #_07DE83: CMP.w .id_matcher,X\n #_07DE86: BNE .not_match\n\n; ---------------------------------------------------------\n\n #_07DE88: CMP.w #$0050\n #_07DE8B: BEQ .is_bush\n\n #_07DE8D: CMP.w #$0051\n #_07DE90: BNE .is_not_bush\n\n.is_bush\n #_07DE92: LDA.b $0A\n #_07DE94: XBA\n\n #_07DE95: ASL A\n #_07DE96: ASL A\n #_07DE97: ASL A\n #_07DE98: ASL A\n #_07DE99: TSB.w $02EE\n\n.is_not_bush\n #_07DE9C: LDA.b $0A\n #_07DE9E: TSB.w $0366\n\n #_07DEA1: STX.w $036A\n\n #_07DEA4: JSR TileBehavior_Hookshottables\n\n #_07DEA7: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Ledge_South", + "code": "TileBehavior_Ledge_South:\n #_07DEAD: LDA.b $06\n #_07DEAF: STA.b $76\n\n #_07DEB1: LDA.b $0A\n #_07DEB3: ASL A\n #_07DEB4: ASL A\n #_07DEB5: ASL A\n #_07DEB6: ASL A\n #_07DEB7: TSB.w $036D\n\n #_07DEBA: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Ledge_North", + "code": "TileBehavior_Ledge_North:\n #_07DEBB: LDA.b $06\n #_07DEBD: STA.b $76\n\n #_07DEBF: LDA.b $0A\n #_07DEC1: TSB.w $036D\n\n #_07DEC4: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Ledge_EastWest", + "code": "TileBehavior_Ledge_EastWest:\n #_07DEC5: LDA.b $06\n #_07DEC7: STA.b $76\n\n #_07DEC9: LDA.b $0A\n #_07DECB: TSB.w $036E\n\n #_07DECE: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Ledge_NorthDiagonal", + "code": "TileBehavior_Ledge_NorthDiagonal:\n #_07DECF: LDA.b $06\n #_07DED1: STA.b $76\n\n #_07DED3: LDA.b $0A\n #_07DED5: ASL A\n #_07DED6: ASL A\n #_07DED7: ASL A\n #_07DED8: ASL A\n #_07DED9: TSB.w $036E\n\n #_07DEDC: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Ledge_SouthDiagonal", + "code": "TileBehavior_Ledge_SouthDiagonal:\n #_07DEDD: LDA.b $06\n #_07DEDF: STA.b $76\n\n #_07DEE1: LDA.b $0A\n #_07DEE3: TSB.w $036F\n\n #_07DEE6: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_UnusedCornerType", + "code": "TileBehavior_UnusedCornerType:\n #_07DEE7: LDA.b $06\n #_07DEE9: STA.b $76\n\n #_07DEEB: LDA.b $0A\n #_07DEED: TSB.w $0370\n\n #_07DEF0: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_EasternRuinsCorner", + "code": "TileBehavior_EasternRuinsCorner:\n #_07DEF1: LDA.b $06\n #_07DEF3: STA.b $76\n\n #_07DEF5: LDA.b $0A\n #_07DEF7: ASL A\n #_07DEF8: ASL A\n #_07DEF9: ASL A\n #_07DEFA: ASL A\n #_07DEFB: TSB.w $0370\n\n #_07DEFE: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_Warp", + "code": "TileBehavior_Warp:\n #_07DEFF: LDA.b $0A\n #_07DF01: ASL A\n #_07DF02: ASL A\n #_07DF03: ASL A\n #_07DF04: ASL A\n #_07DF05: TSB.w $0357\n\n #_07DF08: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_GraveStone", + "code": "TileBehavior_GraveStone:\n #_07DF09: LDA.b $0A\n #_07DF0B: TSB.w $02E7\n #_07DF0E: TSB.b $0E\n\n #_07DF10: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_HylianPlaque", + "code": "TileBehavior_HylianPlaque:\n #_07DF11: LDA.b $0A\n #_07DF13: TSB.w $02EE\n #_07DF16: TSB.b $0E\n\n #_07DF18: RTS", + "file": "bank_07.asm" + }, + { + "name": "TileBehavior_BonkRocks", + "code": "TileBehavior_BonkRocks:\n #_07DF19: LDA.b $0A\n #_07DF1B: TSB.b $0E\n\n #_07DF1D: XBA\n #_07DF1E: ASL A\n #_07DF1F: ASL A\n #_07DF20: ASL A\n #_07DF21: ASL A\n #_07DF22: TSB.w $02EE\n\n #_07DF25: RTS", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_GetGeneralizedTileInteractionOfTarget", + "code": "PushBlock_GetGeneralizedTileInteractionOfTarget:\n #_07E026: LDA.b $00\n #_07E028: AND.w #$FFF8\n\n #_07E02B: ASL A\n #_07E02C: ASL A\n #_07E02D: ASL A\n\n #_07E02E: STA.b $06\n\n #_07E030: LDA.b $02\n #_07E032: AND.w #$003F\n #_07E035: CLC\n #_07E036: ADC.b $06\n\n #_07E038: LDX.b $EE\n #_07E03A: BEQ .upper_layer\n\n #_07E03C: CLC\n #_07E03D: ADC.w #$1000\n\n; ---------------------------------------------------------\n\n.upper_layer\n #_07E040: REP #$10\n\n #_07E042: TAX\n\n #_07E043: LDA.l $7F2000,X\n #_07E047: AND.w #$00FF\n #_07E04A: TAX\n\n #_07E04B: LDA.w .generic_type,X\n #_07E04E: AND.w #$00FF\n\n #_07E051: RTS", + "file": "bank_07.asm" + }, + { + "name": "DifferenceFor6BLowNibble", + "code": "DifferenceFor6BLowNibble:\n #_07E052: db $00, $01, $02, $03, $04, $05, $06, $07 ; \u25e5\n #_07E05A: db $07, $06, $05, $04, $03, $02, $01, $00 ; \u25e4\n #_07E062: db $07, $06, $05, $04, $03, $02, $01, $00 ; \u25e2\n #_07E06A: db $00, $01, $02, $03, $04, $05, $06, $07 ; \u25e3\n", + "file": "bank_07.asm" + }, + { + "name": "FlagFor6BLowNibble", + "code": "FlagFor6BLowNibble:\n #_07E072: db $08 ; \u25e5\n #_07E073: db $04 ; \u25e4\n #_07E074: db $02 ; \u25e2\n #_07E075: db $01 ; \u25e3\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "FlagMovingIntoSlopes_Vertical", + "code": "FlagMovingIntoSlopes_Vertical:\n #_07E076: LDA.b $51\n #_07E078: AND.b #$07\n #_07E07A: STA.b $00\n\n #_07E07C: LDY.b $22\n\n #_07E07E: LDA.b $0C\n #_07E080: AND.b #$04\n #_07E082: BEQ .no_detection_on_north_east\n\n #_07E084: DEY\n\n.no_detection_on_north_east\n #_07E085: LDA.b $6E\n #_07E087: ASL A\n #_07E088: ASL A\n #_07E089: STA.b $01\n\n #_07E08B: TYA\n #_07E08C: AND.b #$07\n #_07E08E: CLC\n #_07E08F: ADC.b $01\n #_07E091: TAX\n\n #_07E092: LDA.b $38\n #_07E094: AND.b #$05\n #_07E096: BEQ .no_detection_on_east\n\n #_07E098: LDA.b $51\n #_07E09A: AND.b #$07\n #_07E09C: STA.b $02\n\n #_07E09E: LDA.b $6E\n #_07E0A0: AND.b #$02\n #_07E0A2: BNE .detection_on_south_west\n\n #_07E0A4: LDA.b #$08\n #_07E0A6: SEC\n #_07E0A7: SBC.b $02\n\n #_07E0A9: BRA .continue\n\n.detection_on_south_west\n #_07E0AB: LDA.b $02\n #_07E0AD: CLC\n #_07E0AE: ADC.b #$08\n\n.continue\n #_07E0B0: STA.b $02\n\n #_07E0B2: LDA.w DifferenceFor6BLowNibble,X\n #_07E0B5: SEC\n #_07E0B6: SBC.b $02\n\n #_07E0B8: LDY.b $30\n #_07E0BA: BEQ .exit\n #_07E0BC: BPL .positive_y_velocity_a\n\n #_07E0BE: EOR.b #$FF\n #_07E0C0: INC A\n\n.positive_y_velocity_a\n #_07E0C1: STA.b $00\n\n #_07E0C3: BRA .continue_from_negative_a\n\n; ---------------------------------------------------------\n\n.no_detection_on_east\n #_07E0C5: LDA.w DifferenceFor6BLowNibble,X\n #_07E0C8: SEC\n #_07E0C9: SBC.b $00\n #_07E0CB: STA.b $00\n\n.continue_from_negative_a\n #_07E0CD: LDA.b $30\n #_07E0CF: BEQ .exit\n #_07E0D1: BPL .positive_y_velocity_b\n\n #_07E0D3: LDA.b $00\n #_07E0D5: BEQ .exit\n #_07E0D7: BMI .exit\n\n #_07E0D9: REP #$20\n\n #_07E0DB: AND.w #$00FF\n #_07E0DE: CLC\n #_07E0DF: ADC.b $20\n #_07E0E1: STA.b $20\n\n #_07E0E3: SEP #$20\n\n #_07E0E5: LDA.b #$08\n\n #_07E0E7: BRA .continue_from_negative_b\n\n; ---------------------------------------------------------\n\n.positive_y_velocity_b\n #_07E0E9: LDA.b $00\n #_07E0EB: BPL .exit\n\n #_07E0ED: REP #$20\n\n #_07E0EF: AND.w #$00FF\n #_07E0F2: ORA.w #$FF00\n #_07E0F5: CLC\n #_07E0F6: ADC.b $20\n #_07E0F8: STA.b $20\n\n #_07E0FA: SEP #$20\n\n #_07E0FC: LDA.b #$04\n\n.continue_from_negative_b\n #_07E0FE: STA.b $6B\n\n #_07E100: LDY.b #$02\n\n #_07E102: LDA.b $0C\n #_07E104: AND.b #$04\n #_07E106: BNE .detection_on_north_east\n\n #_07E108: LDY.b #$03\n\n.detection_on_north_east\n #_07E10A: LDA.w FlagFor6BLowNibble,Y\n #_07E10D: ORA.b #$10\n #_07E10F: TSB.b $6B\n\n.exit\n #_07E111: RTS", + "file": "bank_07.asm" + }, + { + "name": "FlagMovingIntoSlopes_Horizontal", + "code": "FlagMovingIntoSlopes_Horizontal:\n #_07E112: LDA.b $22\n\n #_07E114: LDY.b $6E\n #_07E116: CPY.b #$06\n #_07E118: BNE .strictly_ne_sw\n\n #_07E11A: DEC A\n\n.strictly_ne_sw\n #_07E11B: AND.b #$07\n #_07E11D: STA.b $00\n\n #_07E11F: LDX.b #$00\n\n #_07E121: LDA.b $0C\n #_07E123: AND.b #$04\n #_07E125: BEQ .no_detection_on_north_east\n\n #_07E127: LDX.b #$02\n\n.no_detection_on_north_east\n #_07E129: LDA.b $6E\n #_07E12B: ASL A\n #_07E12C: ASL A\n #_07E12D: STA.b $01\n\n #_07E12F: LDA.b $51,X\n #_07E131: AND.b #$07\n #_07E133: CLC\n #_07E134: ADC.b $01\n #_07E136: TAX\n\n #_07E137: LDA.b $38\n #_07E139: AND.b #$05\n #_07E13B: BEQ .no_detection_on_east\n\n #_07E13D: LDA.b $22\n #_07E13F: AND.b #$07\n\n #_07E141: LDY.b $6E\n #_07E143: CPY.b #$04\n #_07E145: BEQ .dont_adjust_index\n\n #_07E147: CPY.b #$06\n #_07E149: BEQ .dont_adjust_index\n\n #_07E14B: XBA\n #_07E14C: TXA\n #_07E14D: EOR.b #$07\n #_07E14F: TAX\n\n #_07E150: XBA\n #_07E151: EOR.b #$FF\n #_07E153: INC A\n\n #_07E154: BRA .continue\n\n; ---------------------------------------------------------\n\n.dont_adjust_index\n #_07E156: SEC\n #_07E157: SBC.b #$08\n #_07E159: EOR.b #$FF\n #_07E15B: INC A\n #_07E15C: STA.b $02\n\n #_07E15E: LDA.w DifferenceFor6BLowNibble,X\n #_07E161: SEC\n #_07E162: SBC.b $02\n\n.continue\n #_07E164: LDY.b $31\n #_07E166: BEQ .exit\n #_07E168: BPL .positive_x_velocity_a\n\n #_07E16A: EOR.b #$FF\n #_07E16C: INC A\n\n.positive_x_velocity_a\n #_07E16D: STA.b $00\n\n #_07E16F: BRA .continue_from_negative_a\n\n; ---------------------------------------------------------\n\n.no_detection_on_east\n #_07E171: LDA.w DifferenceFor6BLowNibble,X\n #_07E174: SEC\n #_07E175: SBC.b $00\n #_07E177: STA.b $00\n\n.continue_from_negative_a\n #_07E179: LDA.b $31\n #_07E17B: BEQ .exit\n #_07E17D: BPL .positive_x_velocity_b\n\n #_07E17F: LDA.b $00\n #_07E181: BEQ .exit\n #_07E183: BMI .exit\n\n #_07E185: REP #$20\n\n #_07E187: AND.w #$00FF\n #_07E18A: CLC\n #_07E18B: ADC.b $22\n #_07E18D: STA.b $22\n\n #_07E18F: SEP #$20\n\n #_07E191: LDA.b #$02\n #_07E193: BRA .continue_from_negative_b\n\n; ---------------------------------------------------------\n\n.positive_x_velocity_b\n #_07E195: LDA.b $00\n #_07E197: BPL .exit\n\n #_07E199: REP #$20\n\n #_07E19B: AND.w #$00FF\n #_07E19E: ORA.w #$FF00\n #_07E1A1: CLC\n #_07E1A2: ADC.b $22\n #_07E1A4: STA.b $22\n\n #_07E1A6: SEP #$20\n\n #_07E1A8: LDA.b #$01\n\n.continue_from_negative_b\n #_07E1AA: STA.b $6B\n\n #_07E1AC: LDY.b #$00\n\n #_07E1AE: LDA.b $6E\n #_07E1B0: AND.b #$02\n #_07E1B2: BNE .detection_on_north_east\n\n #_07E1B4: LDY.b #$01\n\n.detection_on_north_east\n #_07E1B6: LDA.w FlagFor6BLowNibble,Y\n #_07E1B9: ORA.b #$20\n #_07E1BB: TSB.b $6B\n\n.exit\n #_07E1BD: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleRecoiling", + "code": "Link_HandleRecoiling:\n #_07E1BE: STZ.b $67\n\n #_07E1C0: LDY.b #$08\n\n #_07E1C2: LDA.b $27\n #_07E1C4: BEQ .no_vertical_recoil\n #_07E1C6: BMI .negative_vertical_recoil\n\n #_07E1C8: LDY.b #$04\n\n.negative_vertical_recoil\n #_07E1CA: JSR .handle_axis\n\n; ---------------------------------------------------------\n\n.no_vertical_recoil\n #_07E1CD: LDY.b #$02\n\n #_07E1CF: LDA.b $28\n #_07E1D1: BEQ .no_horizontal_recoil\n #_07E1D3: BMI .handle_axis\n\n #_07E1D5: LDY.b #$01\n\n.handle_axis\n #_07E1D7: TYA\n #_07E1D8: ORA.b $67\n #_07E1DA: STA.b $67\n #_07E1DC: STA.b $26\n\n; ---------------------------------------------------------\n\n.no_horizontal_recoil\n #_07E1DE: LDA.b $6B\n #_07E1E0: AND.b #$0C\n #_07E1E2: BEQ .dont_invert\n\n #_07E1E4: LDA.b $6B\n #_07E1E6: AND.b #$03\n #_07E1E8: BEQ .dont_invert\n\n #_07E1EA: LDA.b $5D\n #_07E1EC: CMP.b #$02 ; LINKSTATE 02\n #_07E1EE: BNE .dont_invert\n\n #_07E1F0: LDA.b $28\n #_07E1F2: EOR.b #$FF\n #_07E1F4: INC A\n #_07E1F5: STA.b $28\n\n #_07E1F7: LDA.b $27\n #_07E1F9: EOR.b #$FF\n #_07E1FB: INC A\n #_07E1FC: STA.b $27\n\n; ---------------------------------------------------------\n\n.dont_invert\n #_07E1FE: LDA.b $6C\n #_07E200: CMP.b #$01\n #_07E202: BNE .not_in_vertical_door\n\n #_07E204: LDA.b $26\n #_07E206: AND.b #$0C\n #_07E208: STA.b $26\n\n #_07E20A: LDA.b $67\n #_07E20C: AND.b #$0C\n #_07E20E: STA.b $67\n\n #_07E210: STZ.b $28\n\n; ---------------------------------------------------------\n\n.not_in_vertical_door\n #_07E212: LDA.b $6C\n #_07E214: CMP.b #$02\n #_07E216: BNE .exit\n\n #_07E218: LDA.b $26\n #_07E21A: AND.b #$03\n #_07E21C: STA.b $26\n\n #_07E21E: LDA.b $67\n #_07E220: AND.b #$03\n #_07E222: STA.b $67\n\n #_07E224: STZ.b $27\n\n.exit\n #_07E226: RTS", + "file": "bank_07.asm" + }, + { + "name": "SubVelocityValues", + "code": "SubVelocityValues:\n #_07E227: db $18 ; 0x00 - walking on ground\n #_07E228: db $10 ; 0x01 - walking diagonally\n #_07E229: db $0A ; 0x02 - walking on stairs\n #_07E22A: db $18 ; 0x03 - walking on stairs diagonally, but it's impossible to reach\n #_07E22B: db $10 ; 0x04 - soft slipping\n #_07E22C: db $08 ; 0x05 - soft slipping diagonally\n #_07E22D: db $08 ; 0x06 - entering underworld/hard slipping\n #_07E22E: db $04 ; 0x07 - hard slipping diagonally\n #_07E22F: db $0C ; 0x08 - pushing statue\n #_07E230: db $10 ; 0x09 - pushing statue diagonally\n #_07E231: db $09 ; 0x0A - intraroom stairs\n #_07E232: db $19 ; 0x0B -\n #_07E233: db $14 ; 0x0C - walking with sword out/carrying/sloshing\n #_07E234: db $0D ; 0x0D - walking with sword out/carrying/sloshing diagonally\n #_07E235: db $10 ; 0x0E - sword out/carry sloshing\n #_07E236: db $08 ; 0x0F - sword out/carry sloshing diagonally\n #_07E237: db $40 ; 0x10 - dashing\n #_07E238: db $2A ; 0x11 - dashing diagonally\n #_07E239: db $10 ; 0x12 - pushing block\n #_07E23A: db $08 ; 0x13 - pushing block diagonally\n #_07E23B: db $04 ; 0x14 - pulling statue/walking to triforce\n #_07E23C: db $02 ; 0x15 - pulling statue diagonally\n #_07E23D: db $30 ; 0x16 - slosh dashing\n #_07E23E: db $18 ; 0x17 - slosh dashing diagonally\n #_07E23F: db $20 ; 0x18 - dashing on ice\n #_07E240: db $15 ; 0x19 - dashing on ice diagonally\n #_07E241: db $F0 ; 0x1A -\n #_07E242: db $00 ; 0x1B -\n #_07E243: db $F0 ; 0x1C -\n #_07E244: db $01 ; 0x1D -\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleVelocity", + "code": "Link_HandleVelocity:\n #_07E245: PHB\n #_07E246: PHK\n #_07E247: PLB\n\n #_07E248: LDA.b $11\n #_07E24A: CMP.b #$02\n #_07E24C: BNE .no_textbox\n\n #_07E24E: LDA.b $10\n #_07E250: CMP.b #$0E\n #_07E252: BEQ .yes_textbox\n\n.no_textbox\n #_07E254: LDA.w $0B7B\n #_07E257: BEQ .can_move\n\n.yes_textbox\n #_07E259: LDA.b $20\n #_07E25B: STA.b $00\n #_07E25D: STA.b $3E\n\n #_07E25F: LDA.b $22\n #_07E261: STA.b $01\n #_07E263: STA.b $3F\n\n #_07E265: LDA.b $21\n #_07E267: STA.b $02\n #_07E269: STA.b $40\n\n #_07E26B: LDA.b $23\n #_07E26D: STA.b $03\n #_07E26F: STA.b $41\n\n #_07E271: BRL Link_HandleVelocityAndSandDrag\n\n; ---------------------------------------------------------\n\n.can_move\n #_07E274: LDA.b $5D\n #_07E276: CMP.b #$04 ; LINKSTATE 04\n #_07E278: BEQ .swimming_or_not_dashing\n\n #_07E27A: LDA.w $034A\n #_07E27D: BEQ .not_ice\n\n #_07E27F: LDA.w $0372\n #_07E282: BEQ .swimming_or_not_dashing\n\n #_07E284: LDA.b #$18\n #_07E286: STA.b $00\n\n #_07E288: BRA .reset_recoils\n\n; ---------------------------------------------------------\n\n.swimming_or_not_dashing\n #_07E28A: BRL HandleSwimStrokeAndSubpixels\n\n.not_ice\n #_07E28D: LDA.w $0372\n #_07E290: BEQ .no_dash_stuff\n\n #_07E292: STZ.b $57\n\n #_07E294: LDA.w $02F1\n #_07E297: CMP.b #$10\n #_07E299: BCS .no_dash_stuff\n\n #_07E29B: BRL Link_DashInPlace\n\n; ---------------------------------------------------------\n\n.no_dash_stuff\n #_07E29E: LDA.w $0316\n #_07E2A1: ORA.w $0317\n #_07E2A4: CMP.b #$0F\n #_07E2A6: BNE .continue_check_speed\n\n #_07E2A8: BRL EXIT_07E402\n\n; ---------------------------------------------------------\n\n.continue_check_speed\n #_07E2AB: LDA.b $5E\n #_07E2AD: STA.b $00\n\n #_07E2AF: LDA.w $0351\n #_07E2B2: BEQ .reset_recoils\n\n #_07E2B4: LDA.b $5E\n #_07E2B6: CMP.b #$10\n #_07E2B8: BNE .not_dash_speed\n\n #_07E2BA: LDX.b #$16\n #_07E2BC: BRA .save_final_speed\n\n; ---------------------------------------------------------\n\n.not_dash_speed\n #_07E2BE: LDX.b #$0C\n\n #_07E2C0: LDA.b $5E\n #_07E2C2: CMP.b #$0C\n #_07E2C4: BNE .save_final_speed\n\n #_07E2C6: LDX.b #$0E\n\n.save_final_speed\n #_07E2C8: STX.b $00\n\n; ---------------------------------------------------------\n\n.reset_recoils\n #_07E2CA: STZ.b $27\n #_07E2CC: STZ.b $28\n #_07E2CE: STZ.b $68\n #_07E2D0: STZ.b $69\n\n #_07E2D2: LDX.b #$00\n\n #_07E2D4: LDA.b $67\n #_07E2D6: TAY\n\n #_07E2D7: AND.b #$0C\n #_07E2D9: BEQ .add_nothing\n\n #_07E2DB: TYA\n #_07E2DC: AND.b #$03\n #_07E2DE: BEQ .add_nothing\n\n #_07E2E0: LDX.b #$01\n\n.add_nothing\n #_07E2E2: TXA\n #_07E2E3: CLC\n #_07E2E4: ADC.b $00\n #_07E2E6: TAX\n\n #_07E2E7: LDA.b $5B\n #_07E2E9: BEQ .not_slipping\n\n #_07E2EB: CMP.b #$03\n #_07E2ED: BNE .load_subvel\n\n #_07E2EF: LDA.b $57\n #_07E2F1: CMP.b #$30\n #_07E2F3: BCS .stair_drag_too_high\n\n #_07E2F5: ADC.b #$08\n #_07E2F7: STA.b $57\n\n #_07E2F9: BRA .load_subvel\n\n; ---------------------------------------------------------\n\n.stair_drag_too_high\n #_07E2FB: LDA.b #$20\n #_07E2FD: STA.b $57\n\n #_07E2FF: BRA .load_subvel\n\n; ---------------------------------------------------------\n\n.not_slipping\n #_07E301: LDA.b $57\n #_07E303: BEQ .load_subvel\n\n #_07E305: LDX.b #$0A\n\n #_07E307: LDA.b $11\n #_07E309: CMP.b #$08\n #_07E30B: BEQ .overworld\n\n #_07E30D: CMP.b #$10\n #_07E30F: BEQ .overworld\n\n #_07E311: LDX.b #$02\n\n.overworld\n #_07E313: LDA.b $67\n #_07E315: AND.b #$00\n #_07E317: BEQ .never_fails\n\n #_07E319: INX\n\n.never_fails\n #_07E31A: LDA.b $57\n #_07E31C: CMP.b #$01\n #_07E31E: BEQ .load_subvel\n\n #_07E320: CMP.b #$10\n #_07E322: BCS .reset_speed\n\n #_07E324: ADC.b #$01\n #_07E326: STA.b $57\n\n #_07E328: LDA.b #$00\n #_07E32A: BRA .zero_subvelocity\n\n.reset_speed\n #_07E32C: STZ.b $57\n #_07E32E: STZ.b $5E\n\n; ---------------------------------------------------------\n\n.load_subvel\n #_07E330: LDA.w SubVelocityValues,X\n\n.zero_subvelocity\n #_07E333: CLC\n #_07E334: ADC.b $57\n #_07E336: STA.b $0A\n #_07E338: STA.b $0B\n\n #_07E33A: LDA.b #$03\n #_07E33C: STA.b $0C\n\n #_07E33E: LDA.b #$02\n #_07E340: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_07E342: LDX.b #$01\n\n.do_next_axis\n #_07E344: LDA.b $67\n #_07E346: AND.b $0C\n #_07E348: BEQ .skip_because_zero\n\n #_07E34A: AND.b $0D\n #_07E34C: BEQ .dont_invert_it\n\n #_07E34E: LDA.b $0A,X\n #_07E350: EOR.b #$FF\n #_07E352: INC A\n #_07E353: STA.b $0A,X\n\n.dont_invert_it\n #_07E355: LDA.b $0A,X\n #_07E357: STA.b $27,X\n\n.skip_because_zero\n #_07E359: ASL.b $0C\n #_07E35B: ASL.b $0C\n #_07E35D: ASL.b $0D\n #_07E35F: ASL.b $0D\n\n #_07E361: DEX\n #_07E362: BPL .do_next_axis\n\n; ---------------------------------------------------------\n\n #_07E364: LDA.b #$FF\n #_07E366: STA.b $29\n #_07E368: STA.b $24\n #_07E36A: STA.b $25\n\n #_07E36C: STZ.b $2C\n\n #_07E36E: BRA .cache_full_coords\n\n; =========================================================\n\n#LinkHop_FindArbitraryLandingSpot:\n #_07E370: PHB\n #_07E371: PHK\n #_07E372: PLB\n\n; ---------------------------------------------------------\n\n.cache_full_coords\n #_07E373: LDA.b $20\n #_07E375: STA.b $00\n #_07E377: STA.b $3E\n\n #_07E379: LDA.b $22\n #_07E37B: STA.b $01\n #_07E37D: STA.b $3F\n\n #_07E37F: LDA.b $21\n #_07E381: STA.b $02\n #_07E383: STA.b $40\n\n #_07E385: LDA.b $23\n #_07E387: STA.b $03\n #_07E389: STA.b $41\n\n #_07E38B: LDA.b $5D\n #_07E38D: CMP.b #$0A ; LINKSTATE 0A\n #_07E38F: BEQ .quaking\n\n #_07E391: LDA.w $02F5\n #_07E394: CMP.b #$02\n #_07E396: BEQ Link_HandleVelocityAndSandDrag\n\n.quaking\n #_07E398: LDY.b #$02\n #_07E39A: LDX.b #$04\n\n #_07E39C: LDA.b $4D\n #_07E39E: BNE .next_direction\n\n #_07E3A0: LDY.b #$01\n #_07E3A2: LDX.b #$02\n\n; ---------------------------------------------------------\n\n.next_direction\n #_07E3A4: LDA.w $0027,Y\n\n #_07E3A7: ASL A\n #_07E3A8: ASL A\n #_07E3A9: ASL A\n #_07E3AA: ASL A\n\n #_07E3AB: CLC\n #_07E3AC: ADC.w $002A,Y\n #_07E3AF: STA.w $002A,Y\n\n #_07E3B2: PHY\n #_07E3B3: PHP\n\n #_07E3B4: LDA.w $0027,Y\n\n #_07E3B7: LSR A\n #_07E3B8: LSR A\n #_07E3B9: LSR A\n #_07E3BA: LSR A\n\n #_07E3BB: CMP.b #$08\n\n #_07E3BD: LDY.b #$00\n #_07E3BF: BCC .positive_velocity\n\n #_07E3C1: ORA.b #$F0\n #_07E3C3: LDY.b #$FF\n\n.positive_velocity\n #_07E3C5: PLP\n #_07E3C6: ADC.b $20,X\n #_07E3C8: STA.b $20,X\n\n #_07E3CA: TYA\n #_07E3CB: ADC.b $21,X\n #_07E3CD: STA.b $21,X\n\n #_07E3CF: PLY\n #_07E3D0: DEY\n\n #_07E3D1: DEX\n #_07E3D2: DEX\n #_07E3D3: BPL .next_direction\n\n; ---------------------------------------------------------\n\n #_07E3D5: JSR Link_HandleMovingFloor\n #_07E3D8: JSR Link_ApplyConveyor\n\n #_07E3DB: BRA Link_HandleVelocityAndSandDrag\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleVelocityAndSandDrag_long", + "code": "Link_HandleVelocityAndSandDrag_long:\n #_07E3DD: PHB\n #_07E3DE: PHK\n #_07E3DF: PLB\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleVelocityAndSandDrag", + "code": "Link_HandleVelocityAndSandDrag:\n #_07E3E0: REP #$20\n\n #_07E3E2: LDA.b $20\n #_07E3E4: CLC\n #_07E3E5: ADC.w $0B7E\n #_07E3E8: STA.b $20\n\n #_07E3EA: LDA.b $22\n #_07E3EC: CLC\n #_07E3ED: ADC.w $0B7C\n #_07E3F0: STA.b $22\n\n #_07E3F2: SEP #$20\n\n #_07E3F4: LDA.b $20\n #_07E3F6: SEC\n #_07E3F7: SBC.b $00\n #_07E3F9: STA.b $30\n\n #_07E3FB: LDA.b $22\n #_07E3FD: SEC\n #_07E3FE: SBC.b $01\n #_07E400: STA.b $31\n\n; ---------------------------------------------------------\n\n#EXIT_07E402:\n #_07E402: SEP #$20\n\n #_07E404: PLB\n\n #_07E405: RTL", + "file": "bank_07.asm" + }, + { + "name": "SwimmingAccelAndThrustChange", + "code": "SwimmingAccelAndThrustChange:\n #_07E406: dw 8, -12, -8, -16\n #_07E40E: dw 4, -6, -12, -6\n #_07E416: dw 10, -16, -12, -6\n", + "file": "bank_07.asm" + }, + { + "name": "SwimmingThrustDirectionMask", + "code": "SwimmingThrustDirectionMask:\n #_07E41E: db $F3\n #_07E41F: db $FF\n #_07E420: db $FC\n #_07E421: db $FF\n", + "file": "bank_07.asm" + }, + { + "name": "SwimmingThrustDirectionBit", + "code": "SwimmingThrustDirectionBit:\n #_07E422: dw $0008\n #_07E424: dw $0004\n #_07E426: dw $0002\n #_07E428: dw $0001\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "HandleSwimStrokeAndSubpixels", + "code": "HandleSwimStrokeAndSubpixels:\n #_07E42A: STZ.b $27\n #_07E42C: STZ.b $28\n\n #_07E42E: REP #$20\n\n #_07E430: LDX.b #$02\n\n.next_direction\n #_07E432: STZ.b $08,X\n\n #_07E434: DEC.w $0326,X\n #_07E437: BPL .positive_momentum\n\n #_07E439: LDA.w #$0001\n #_07E43C: STA.w $032B,X\n\n #_07E43F: STZ.w $0326,X\n\n.positive_momentum\n #_07E442: LDA.w $032B,X\n #_07E445: ASL A\n #_07E446: TAY\n\n #_07E447: LDA.w $034A\n #_07E44A: AND.w #$00FF\n #_07E44D: BEQ .not_on_ice\n\n #_07E44F: ASL A\n #_07E450: ASL A\n #_07E451: ASL A\n #_07E452: STA.b $00\n\n #_07E454: TYA\n #_07E455: CLC\n #_07E456: ADC.b $00\n #_07E458: TAY\n\n.not_on_ice\n #_07E459: LDA.w SwimmingAccelAndThrustChange,Y\n #_07E45C: CLC\n #_07E45D: ADC.w $033C,X\n #_07E460: BEQ .zero_thrust\n #_07E462: BPL .positive_thrust\n\n.zero_thrust\n #_07E464: LDA.w SwimmingThrustDirectionMask,X\n #_07E467: AND.b $67\n #_07E469: STA.b $67\n #_07E46B: STA.b $26\n\n #_07E46D: LDA.w $032B,X\n #_07E470: CMP.w #$0002\n #_07E473: BNE .not_maxed\n\n #_07E475: STZ.w $032B,X\n\n #_07E478: LDA.w MaxSwimAcceleration\n #_07E47B: STA.w $0334,X\n\n #_07E47E: LDA.w #$0002\n\n #_07E481: BRA .set_accel_and_thrust\n\n; ---------------------------------------------------------\n\n.not_maxed\n #_07E483: LDA.w #$0000\n #_07E486: STA.w $0334,X\n #_07E489: STA.w $032B,X\n\n #_07E48C: BRA .set_accel_and_thrust\n\n; ---------------------------------------------------------\n\n.positive_thrust\n #_07E48E: PHA\n\n #_07E48F: TXA\n #_07E490: CLC\n #_07E491: ADC.w $0338,X\n #_07E494: ASL A\n #_07E495: TAY\n\n #_07E496: LDA.w SwimmingThrustDirectionBit,Y\n #_07E499: ORA.b $67\n #_07E49B: STA.b $67\n\n #_07E49D: PLA\n #_07E49E: CMP.w $0334,X\n #_07E4A1: BCC .set_accel_and_thrust\n\n #_07E4A3: LDA.w $0334,X\n\n.set_accel_and_thrust\n #_07E4A6: STA.w $033C,X\n #_07E4A9: STA.b $08,X\n\n #_07E4AB: LDA.b $6A\n #_07E4AD: BEQ .not_pressing_diagonally\n\n #_07E4AF: LDA.b $08,X\n #_07E4B1: LSR A\n #_07E4B2: LSR A\n #_07E4B3: STA.b $00\n\n #_07E4B5: LDA.b $08,X\n #_07E4B7: SEC\n #_07E4B8: SBC.b $00\n #_07E4BA: STA.b $08,X\n\n.not_pressing_diagonally\n #_07E4BC: LDA.w $0338,X\n #_07E4BF: AND.w #$00FF\n #_07E4C2: BNE .positive_subpixel_adjuster\n\n #_07E4C4: LDA.b $08,X\n #_07E4C6: EOR.w #$FFFF\n #_07E4C9: INC A\n #_07E4CA: STA.b $08,X\n\n.positive_subpixel_adjuster\n #_07E4CC: DEX\n #_07E4CD: DEX\n #_07E4CE: BMI .continue\n\n #_07E4D0: BRL .next_direction\n\n; ---------------------------------------------------------\n\n.continue\n #_07E4D3: SEP #$20\n\n #_07E4D5: LDA.b $20\n #_07E4D7: STA.b $00\n #_07E4D9: STA.b $3E\n\n #_07E4DB: LDA.b $22\n #_07E4DD: STA.b $01\n #_07E4DF: STA.b $3F\n\n #_07E4E1: LDA.b $21\n #_07E4E3: STA.b $02\n #_07E4E5: STA.b $40\n\n #_07E4E7: LDA.b $23\n #_07E4E9: STA.b $03\n #_07E4EB: STA.b $41\n\n; ---------------------------------------------------------\n\n #_07E4ED: LDY.b #$01\n #_07E4EF: LDX.b #$02\n\n.next_subpixel\n #_07E4F1: LDA.b $08,X\n #_07E4F3: CLC\n #_07E4F4: ADC.w $002A,Y\n #_07E4F7: STA.w $002A,Y\n\n #_07E4FA: PHY\n #_07E4FB: PHP\n\n #_07E4FC: LDA.b $09,X\n #_07E4FE: CMP.b #$08\n\n #_07E500: LDY.b #$00\n #_07E502: BCC .positive_y_subpixeling\n\n #_07E504: ORA.b #$F0\n #_07E506: LDY.b #$FF\n\n.positive_y_subpixeling\n #_07E508: PLP\n #_07E509: ADC.b $20,X\n #_07E50B: STA.b $20,X\n\n #_07E50D: TYA\n #_07E50E: ADC.b $21,X\n #_07E510: STA.b $21,X\n\n #_07E512: PLY\n\n #_07E513: LDA.b $08,X\n #_07E515: LSR A\n #_07E516: LSR A\n #_07E517: LSR A\n #_07E518: LSR A\n #_07E519: STA.b $08,X\n\n #_07E51B: LDA.b $09,X\n #_07E51D: BPL .positive_x_subpixeling\n\n #_07E51F: EOR.b #$FF\n #_07E521: INC A\n\n.positive_x_subpixeling\n #_07E522: ASL A\n #_07E523: ASL A\n #_07E524: ASL A\n #_07E525: ASL A\n #_07E526: ORA.b $08,X\n #_07E528: STA.w $0027,Y\n\n #_07E52B: DEY\n\n #_07E52C: DEX\n #_07E52D: DEX\n #_07E52E: BPL .next_subpixel\n\n; ---------------------------------------------------------\n\n #_07E530: LDA.w $046C\n #_07E533: CMP.b #$04\n #_07E535: BNE .no_moving_floor\n\n #_07E537: JSR Link_ApplyMovingFloorVelocity\n\n.no_moving_floor\n #_07E53A: STZ.b $68\n #_07E53C: STZ.b $69\n\n #_07E53E: BRL Link_HandleVelocityAndSandDrag\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07E541", + "code": "UNREACHABLE_07E541:\n #_07E541: dw $0040, $0010\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_DashInPlace", + "code": "Link_DashInPlace:\n #_07E545: STZ.b $00\n #_07E547: STZ.b $01\n\n #_07E549: LDA.b $F0\n #_07E54B: AND.b #$0F\n #_07E54D: BEQ .not_pressing_dpad\n\n #_07E54F: LDX.b #$80\n\n #_07E551: LDA.w $0351\n #_07E554: BEQ .not_sloshing\n\n #_07E556: LDX.b #$50\n\n.not_sloshing\n #_07E558: STX.b $00\n\n #_07E55A: LDA.b #$01\n #_07E55C: STA.b $01\n\n.not_pressing_dpad\n #_07E55E: STZ.b $27\n #_07E560: STZ.b $28\n\n #_07E562: STZ.b $08\n #_07E564: STZ.b $09\n\n #_07E566: STZ.b $0A\n #_07E568: STZ.b $0B\n\n #_07E56A: LDX.b #$03\n\n #_07E56C: LDA.b $67\n\n.shift_more\n #_07E56E: LSR A\n #_07E56F: BCS .bit_found\n\n #_07E571: DEX\n #_07E572: BPL .shift_more\n\n #_07E574: PLB\n\n #_07E575: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingFloor", + "code": "Link_HandleMovingFloor:\n #_07E595: LDA.w $046C\n #_07E598: BEQ EXIT_07E5E3\n\n #_07E59A: LDA.b $24\n #_07E59C: BEQ .grounded\n\n #_07E59E: CMP.b #$FF\n #_07E5A0: BNE EXIT_07E5E3\n\n.grounded\n #_07E5A2: LDA.w $0322\n #_07E5A5: AND.b #$03\n #_07E5A7: CMP.b #$03\n #_07E5A9: BNE EXIT_07E5E3\n\n #_07E5AB: LDA.b $5D\n #_07E5AD: CMP.b #$13 ; LINKSTATE 13\n #_07E5AF: BEQ EXIT_07E5E3\n\n #_07E5B1: LDY.b #$08\n\n #_07E5B3: LDA.w $0310\n #_07E5B6: BEQ .no_floor_y_velocity\n #_07E5B8: BMI .negative_floor_y_velocity\n\n #_07E5BA: LDY.b #$04\n\n.negative_floor_y_velocity\n #_07E5BC: TYA\n #_07E5BD: TSB.b $67\n\n.no_floor_y_velocity\n #_07E5BF: LDY.b #$02\n\n #_07E5C1: LDA.w $0312\n #_07E5C4: BEQ Link_ApplyMovingFloorVelocity\n #_07E5C6: BMI .negative_floor_x_velocity\n\n #_07E5C8: LDY.b #$01\n\n.negative_floor_x_velocity\n #_07E5CA: TYA\n #_07E5CB: TSB.b $67\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_ApplyMovingFloorVelocity", + "code": "Link_ApplyMovingFloorVelocity:\n #_07E5CD: STZ.b $6A\n\n #_07E5CF: REP #$20\n\n #_07E5D1: LDA.b $20\n #_07E5D3: CLC\n #_07E5D4: ADC.w $0310\n #_07E5D7: STA.b $20\n\n #_07E5D9: LDA.b $22\n #_07E5DB: CLC\n #_07E5DC: ADC.w $0312\n #_07E5DF: STA.b $22\n\n #_07E5E1: SEP #$20\n\n; ---------------------------------------------------------\n\n#EXIT_07E5E3:\n #_07E5E3: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_ApplyConveyor", + "code": "Link_ApplyConveyor:\n #_07E5F0: LDA.w $03F3\n #_07E5F3: BEQ EXIT_07E5E3\n\n #_07E5F5: LDA.b $24\n #_07E5F7: BEQ .grounded\n\n #_07E5F9: CMP.b #$FF\n #_07E5FB: BNE EXIT_07E5E3\n\n; ---------------------------------------------------------\n\n.grounded\n #_07E5FD: LDA.w $0376\n #_07E600: AND.b #$01\n #_07E602: BNE EXIT_07E5E3\n\n #_07E604: LDA.b $5D\n #_07E606: CMP.b #$13 ; LINKSTATE 13\n #_07E608: BEQ EXIT_07E5E3\n\n #_07E60A: LDA.b $4D\n #_07E60C: BNE EXIT_07E5E3\n\n #_07E60E: LDA.w $0372\n #_07E611: BEQ .run_conveyor\n\n #_07E613: LDA.w $02F1\n #_07E616: CMP.b #$20\n #_07E618: BNE .run_conveyor\n\n #_07E61A: LDY.w $03F3\n #_07E61D: DEY\n #_07E61E: LDA.w .direction,Y\n\n #_07E621: AND.b $67\n #_07E623: BNE EXIT_07E5E3\n\n; ---------------------------------------------------------\n\n.run_conveyor\n #_07E625: STZ.b $6A\n\n #_07E627: LDY.w $03F3\n #_07E62A: DEY\n\n #_07E62B: LDA.w .direction,Y\n #_07E62E: TSB.b $67\n\n #_07E630: LDA.w .speed_y,Y\n #_07E633: STA.b $72\n\n #_07E635: LDA.w .speed_x,Y\n #_07E638: STA.b $73\n\n; ---------------------------------------------------------\n\n #_07E63A: LDX.b #$01\n #_07E63C: LDY.b #$02\n\n.next_direction\n #_07E63E: PHX\n\n #_07E63F: LDA.b $72,X\n #_07E641: ASL A\n #_07E642: ASL A\n #_07E643: ASL A\n #_07E644: ASL A\n #_07E645: CLC\n #_07E646: ADC.w $041C,X\n #_07E649: STA.w $041C,X\n\n #_07E64C: LDA.b $72,X\n #_07E64E: PHP\n\n #_07E64F: LDX.b #$00\n\n #_07E651: LSR A\n #_07E652: LSR A\n #_07E653: LSR A\n #_07E654: LSR A\n\n #_07E655: PLP\n #_07E656: BPL .positive_speed\n\n #_07E658: ORA.b #$F0\n #_07E65A: DEX\n\n.positive_speed\n #_07E65B: ADC.w $0020,Y\n #_07E65E: STA.w $0020,Y\n\n #_07E661: TXA\n #_07E662: ADC.w $0021,Y\n #_07E665: STA.w $0021,Y\n\n #_07E668: PLX\n\n #_07E669: DEY\n #_07E66A: DEY\n\n #_07E66B: DEX\n #_07E66C: BPL .next_direction\n\n #_07E66E: SEP #$20\n\n #_07E670: RTS", + "file": "bank_07.asm" + }, + { + "name": "LinkDiagonalDominantDirection", + "code": "LinkDiagonalDominantDirection:\n #_07E671: db $08, $04, $02, $01\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkWalkAnimationTimer_other", + "code": "LinkWalkAnimationTimer_other:\n #_07E675: db $04 ; bunny/carry walk up\n #_07E676: db $04 ; bunny/carry walk down\n #_07E677: db $04 ; bunny/carry walk left\n #_07E678: db $04 ; bunny/carry walk right\n #_07E679: db $01 ; slipping with sword/carry up\n #_07E67A: db $01 ; slipping with sword/carry down\n #_07E67B: db $01 ; slipping with sword/carry left\n #_07E67C: db $01 ; slipping with sword/carry right\n #_07E67D: db $02\n #_07E67E: db $02\n #_07E67F: db $02\n #_07E680: db $02\n #_07E681: db $08 ; straight stair doors/pushing\n #_07E682: db $08\n #_07E683: db $08\n #_07E684: db $08\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "LinkWalkAnimationTimer", + "code": "LinkWalkAnimationTimer:\n #_07E685: db $01, $02, $03, $02, $02, $02, $03, $02 ; walk\n #_07E68D: db $01 ; used both by walk and on ice, but not for entering underworld\n #_07E68E: db $01, $02, $01, $01, $01, $02, $01, $02 ; entering underworld/ice\n #_07E696: db $02, $03, $02, $02, $02, $03, $02 ; ice+underworld entrance - impossible?\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_SetFacingDown", + "code": "Link_HandleMovingAnimation_SetFacingDown:\n #_07E69D: PHB\n #_07E69E: PHK\n #_07E69F: PLB\n\n #_07E6A0: LDA.b #$04\n #_07E6A2: STA.b $26\n\n #_07E6A4: BRA Link_HandleMovingAnimation_MainEntry\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_FullLongEntry", + "code": "Link_HandleMovingAnimation_FullLongEntry:\n #_07E6A6: PHB\n #_07E6A7: PHK\n #_07E6A8: PLB\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_MainEntry", + "code": "Link_HandleMovingAnimation_MainEntry:\n #_07E6A9: LDA.b $5D\n #_07E6AB: CMP.b #$04 ; LINKSTATE 04\n #_07E6AD: BNE .not_swimming\n\n #_07E6AF: BRL Link_HandleMovingAnimationSwimming\n\n; ---------------------------------------------------------\n\n.not_swimming\n #_07E6B2: LDA.b $26\n #_07E6B4: BNE .not_moving\n\n #_07E6B6: BRL .exit\n\n; ---------------------------------------------------------\n\n.not_moving\n #_07E6B9: STA.b $00\n\n #_07E6BB: LDA.w $034A\n #_07E6BE: BEQ .not_on_ice_a\n\n #_07E6C0: LDA.w $0340\n #_07E6C3: STA.b $00\n\n.not_on_ice_a\n #_07E6C5: LDA.b $50\n #_07E6C7: BNE .check_dashing\n\n #_07E6C9: LDA.b $6A\n #_07E6CB: BEQ .no_diagonal\n\n #_07E6CD: LDA.b $6C\n #_07E6CF: BEQ .not_in_door\n\n #_07E6D1: ASL A\n #_07E6D2: AND.b #$FC\n #_07E6D4: TAY\n\n #_07E6D5: BRA .door_or_not_pressing_vertical\n\n; ---------------------------------------------------------\n\n.not_in_door\n #_07E6D7: LDA.b $2F\n #_07E6D9: LSR A\n #_07E6DA: TAX\n\n #_07E6DB: LDA.b $00\n #_07E6DD: AND.w LinkDiagonalDominantDirection,X\n #_07E6E0: BNE .check_dashing\n\n.no_diagonal\n #_07E6E2: LDY.b #$04\n\n #_07E6E4: LDA.b $00\n #_07E6E6: AND.b #$0C\n #_07E6E8: BEQ .door_or_not_pressing_vertical\n\n #_07E6EA: LDY.b #$00\n\n.door_or_not_pressing_vertical\n #_07E6EC: CPY.b #$04\n #_07E6EE: BEQ .was_pressing_a_vertical\n\n #_07E6F0: LDA.b $00\n #_07E6F2: AND.b #$04\n #_07E6F4: BNE .opposite_on_axis\n\n #_07E6F6: BRA .set_direction\n\n; ---------------------------------------------------------\n\n.was_pressing_a_vertical\n #_07E6F8: LDA.b $00\n #_07E6FA: AND.b #$01\n #_07E6FC: BEQ .set_direction\n\n.opposite_on_axis\n #_07E6FE: INY\n #_07E6FF: INY\n\n.set_direction\n #_07E700: STY.b $2F\n\n #_07E702: BRA .check_dashing\n\n; =========================================================\n\n#Link_HandleMovingAnimation_StartWithDash:\n #_07E704: PHB\n #_07E705: PHK\n #_07E706: PLB\n\n; ---------------------------------------------------------\n\n.check_dashing\n #_07E707: LDA.w $0372\n #_07E70A: BEQ .not_dashing\n\n #_07E70C: BRL Link_HandleMovingAnimation_Dash\n\n; ---------------------------------------------------------\n\n.not_dashing\n #_07E70F: LDA.b $2F\n #_07E711: LSR A\n #_07E712: TAX\n\n #_07E713: LDA.b $5E\n #_07E715: CMP.b #$06\n #_07E717: BNE .not_transitioning_to_uw_speed\n\n #_07E719: TXA\n #_07E71A: CLC\n #_07E71B: ADC.b #$04\n #_07E71D: TAX\n\n #_07E71E: BRA .continue_b\n\n; ---------------------------------------------------------\n\n.not_transitioning_to_uw_speed\n #_07E720: LDA.w $034A\n #_07E723: BEQ .continue_b\n\n #_07E725: LDA.b $F0\n #_07E727: AND.b #$0F\n #_07E729: BEQ .no_dpad_press\n\n #_07E72B: TXA\n #_07E72C: CLC\n #_07E72D: ADC.b #$04\n #_07E72F: TAX\n\n.continue_b\n #_07E730: LDA.b $5D\n #_07E732: CMP.b #$17 ; LINKSTATE 17\n #_07E734: BNE .not_bunny\n\n #_07E736: BRL Link_HandleMovingAnimation_Bunny\n\n; ---------------------------------------------------------\n\n.not_bunny\n #_07E739: LDA.b $11\n\n #_07E73B: CMP.b #$0E\n #_07E73D: BEQ Link_HandleMovingAnimation_General\n\n #_07E73F: CMP.b #$12\n #_07E741: BEQ .straight_interroom_stairs_door\n\n #_07E743: CMP.b #$13\n #_07E745: BNE .not_interroom_stairs_door\n\n.straight_interroom_stairs_door\n #_07E747: LDX.b #$0C\n\n #_07E749: BRA Link_HandleMovingAnimation_General\n\n; ---------------------------------------------------------\n\n.not_interroom_stairs_door\n #_07E74B: LDA.w $0308\n #_07E74E: AND.b #$80\n #_07E750: BNE Link_HandleMovingAnimation_General\n\n #_07E752: LDA.b $48\n #_07E754: AND.b #$8D\n #_07E756: BEQ .not_grabbing\n\n #_07E758: LDX.b #$0C\n #_07E75A: BRA Link_HandleMovingAnimation_General\n\n; ---------------------------------------------------------\n\n.not_grabbing\n #_07E75C: LDA.w $0351\n #_07E75F: BNE Link_HandleMovingAnimation_General\n\n #_07E761: LDA.b $3C\n #_07E763: BEQ Link_HandleMovingAnimation_SwordPrimed\n\n; =========================================================\n\n#Link_HandleMovingAnimation_General:\n #_07E765: LDA.b $2E\n #_07E767: CMP.b #$06\n #_07E769: BCS .no_dpad_press\n\n #_07E76B: LDA.w $02F5\n #_07E76E: CMP.b #$02\n #_07E770: BEQ .no_dpad_press\n\n #_07E772: LDA.w LinkWalkAnimationTimer_other,X\n #_07E775: STA.b $00\n\n #_07E777: LDA.b $2D\n #_07E779: CLC\n #_07E77A: ADC.b #$01\n #_07E77C: STA.b $2D\n\n #_07E77E: CMP.b $00\n #_07E780: BCC .exit\n\n #_07E782: STZ.b $2D\n\n #_07E784: LDA.b $2E\n #_07E786: INC A\n #_07E787: CMP.b #$06\n #_07E789: BNE .set_anim_step\n\n.no_dpad_press\n #_07E78B: LDA.b #$00\n\n.set_anim_step\n #_07E78D: STA.b $2E\n\n.exit\n #_07E78F: PLB\n\n #_07E790: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_SwordPrimed", + "code": "Link_HandleMovingAnimation_SwordPrimed:\n #_07E791: LDX.b $2E\n\n #_07E793: LDA.b $5E\n #_07E795: CMP.b #$06\n #_07E797: BNE .not_walking_into_dungeon\n\n #_07E799: TXA\n #_07E79A: CLC\n #_07E79B: ADC.b #$08\n #_07E79D: TAX\n\n.not_walking_into_dungeon\n #_07E79E: LDA.w $034A\n #_07E7A1: BEQ .not_on_ice\n\n #_07E7A3: TXA\n #_07E7A4: CLC\n #_07E7A5: ADC.b #$08\n #_07E7A7: TAX\n\n.not_on_ice\n #_07E7A8: LDA.w $02F5\n #_07E7AB: CMP.b #$02\n #_07E7AD: BEQ EXIT_07E7F8\n\n #_07E7AF: LDA.w LinkWalkAnimationTimer,X\n #_07E7B2: STA.b $00\n\n #_07E7B4: LDA.b $2D\n #_07E7B6: CLC\n #_07E7B7: ADC.b #$01\n #_07E7B9: STA.b $2D\n\n #_07E7BB: CMP.b $00\n #_07E7BD: BCC .exit\n\n #_07E7BF: STZ.b $2D\n\n #_07E7C1: LDA.b $2E\n #_07E7C3: INC A\n #_07E7C4: CMP.b #$09\n #_07E7C6: BNE .dont_reset_step\n\n #_07E7C8: LDA.b #$01\n\n.dont_reset_step\n #_07E7CA: STA.b $2E\n\n.exit\n #_07E7CC: PLB\n\n #_07E7CD: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_Bunny", + "code": "Link_HandleMovingAnimation_Bunny:\n #_07E7CE: LDA.b $2E\n #_07E7D0: CMP.b #$04\n #_07E7D2: BCS .reset_step\n\n #_07E7D4: LDA.w $02F5\n #_07E7D7: CMP.b #$02\n #_07E7D9: BEQ .reset_step\n\n #_07E7DB: LDA.w LinkWalkAnimationTimer_other,X\n #_07E7DE: STA.b $00\n\n #_07E7E0: LDA.b $2D\n #_07E7E2: CLC\n #_07E7E3: ADC.b #$01\n #_07E7E5: STA.b $2D\n\n #_07E7E7: CMP.b $00\n #_07E7E9: BCC EXIT_07E7F8\n\n #_07E7EB: STZ.b $2D\n\n #_07E7ED: LDA.b $2E\n #_07E7EF: INC A\n #_07E7F0: CMP.b #$04\n #_07E7F2: BNE .dont_reset_step\n\n.reset_step\n #_07E7F4: LDA.b #$00\n\n.dont_reset_step\n #_07E7F6: STA.b $2E\n\n; ---------------------------------------------------------\n\n#EXIT_07E7F8:\n #_07E7F8: PLB\n\n #_07E7F9: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimationSwimming", + "code": "Link_HandleMovingAnimationSwimming:\n #_07E7FA: LDA.w $0340\n #_07E7FD: BEQ .exit\n\n #_07E7FF: LDA.b $50\n #_07E801: BNE .exit\n\n #_07E803: LDA.b $6A\n #_07E805: BEQ .not_moving\n\n #_07E807: LDA.b $6C\n #_07E809: BEQ .not_in_door\n\n #_07E80B: ASL A\n #_07E80C: AND.b #$FC\n #_07E80E: TAY\n\n #_07E80F: BRA .continue\n\n; ---------------------------------------------------------\n\n.not_in_door\n #_07E811: LDA.b $2F\n #_07E813: LSR A\n #_07E814: TAX\n\n #_07E815: LDA.w $0340\n #_07E818: AND.w LinkDiagonalDominantDirection,X\n #_07E81B: BNE .exit\n\n.not_moving\n #_07E81D: LDY.b #$04\n\n #_07E81F: LDA.w $0340\n #_07E822: AND.b #$0C\n #_07E824: BEQ .continue\n\n #_07E826: LDY.b #$00\n\n.continue\n #_07E828: CPY.b #$04\n #_07E82A: BEQ .going_horizontally\n\n #_07E82C: LDA.w $0340\n #_07E82F: AND.b #$04\n #_07E831: BNE .advance_direction\n\n #_07E833: BRA .set_direction\n\n.going_horizontally\n #_07E835: LDA.w $0340\n #_07E838: AND.b #$01\n #_07E83A: BEQ .set_direction\n\n.advance_direction\n #_07E83C: INY\n #_07E83D: INY\n\n.set_direction\n #_07E83E: STY.b $2F\n\n.exit\n #_07E840: PLB\n\n #_07E841: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_HandleMovingAnimation_Dash", + "code": "Link_HandleMovingAnimation_Dash:\n #_07E88F: LDX.b #$06\n\n #_07E891: LDA.w $0374\n #_07E894: BEQ .use_value\n\n.next_timer_value\n #_07E896: LDA.w $0374\n #_07E899: CMP.w .thresholds,X\n #_07E89C: BCC .use_value\n\n #_07E89E: DEX\n #_07E89F: BPL .next_timer_value\n\n #_07E8A1: INX\n\n; ---------------------------------------------------------\n\n.use_value\n #_07E8A2: LDA.b $3C\n #_07E8A4: CMP.b #$09\n #_07E8A6: BCS .get_charge_timer\n\n #_07E8A8: LDA.w $0351\n #_07E8AB: BNE .get_charge_timer\n\n #_07E8AD: TXA\n #_07E8AE: ASL A\n #_07E8AF: ASL A\n #_07E8B0: ASL A\n #_07E8B1: TAX\n\n #_07E8B2: LDA.w .timers_a_idk,X\n #_07E8B5: STA.b $00\n\n #_07E8B7: LDA.b $2D\n #_07E8B9: CLC\n #_07E8BA: ADC.b #$01\n #_07E8BC: STA.b $2D\n\n #_07E8BE: CMP.b $00\n #_07E8C0: BCC .proceed_to_exit\n\n #_07E8C2: STZ.b $2D\n\n #_07E8C4: LDA.b $2E\n #_07E8C6: INC A\n #_07E8C7: CMP.b #$09\n #_07E8C9: BNE .dont_reset_step\n\n #_07E8CB: LDA.b #$01\n\n.dont_reset_step\n #_07E8CD: BRA .set_anim_step\n\n.proceed_to_exit\n #_07E8CF: BRA .exit\n\n; ---------------------------------------------------------\n\n.get_charge_timer\n #_07E8D1: LDA.w .timers_charge,X\n #_07E8D4: STA.b $00\n\n #_07E8D6: LDA.b $2D\n #_07E8D8: CLC\n #_07E8D9: ADC.b #$01\n #_07E8DB: STA.b $2D\n\n #_07E8DD: CMP.b $00\n #_07E8DF: BCC .exit\n\n #_07E8E1: STZ.b $2D\n\n #_07E8E3: LDA.b $2E\n #_07E8E5: INC A\n #_07E8E6: CMP.b #$06\n #_07E8E8: BCC .set_anim_step\n\n #_07E8EA: LDA.b #$00\n\n.set_anim_step\n #_07E8EC: STA.b $2E\n\n.exit\n #_07E8EE: PLB\n\n #_07E8EF: RTL", + "file": "bank_07.asm" + }, + { + "name": "HandleIndoorCameraAndDoors", + "code": "HandleIndoorCameraAndDoors:\n #_07E8F0: LDA.b $1B\n #_07E8F2: BEQ .not_indoors\n\n #_07E8F4: LDA.b $6C\n #_07E8F6: BEQ .not_in_a_door\n\n #_07E8F8: JML HandleDoorTransitions\n\n.not_in_a_door\n #_07E8FC: JSL ApplyLinksMovementToCamera\n\n.not_indoors\n #_07E900: RTS", + "file": "bank_07.asm" + }, + { + "name": "HandleDoorTransitions", + "code": "HandleDoorTransitions:\n #_07E901: STZ.b $68\n #_07E903: STZ.b $69\n\n #_07E905: LDA.b $26\n #_07E907: AND.b #$0C\n #_07E909: BEQ .not_vertical\n\n #_07E90B: LDX.b $6C\n #_07E90D: CPX.b #$01\n #_07E90F: BNE .not_vertical\n\n #_07E911: AND.b #$04\n #_07E913: BEQ .going_up\n\n #_07E915: REP #$20\n\n #_07E917: LDA.b $20\n #_07E919: CLC\n #_07E91A: ADC.w #$001C\n #_07E91D: STA.b $00\n\n #_07E91F: AND.w #$00FC\n #_07E922: BNE .not_vertical\n\n #_07E924: SEP #$20\n\n #_07E926: LDA.b $01\n #_07E928: SEC\n #_07E929: SBC.b $40\n #_07E92B: STA.b $68\n\n #_07E92D: BRA .not_vertical\n\n.going_up\n #_07E92F: REP #$20\n\n #_07E931: LDA.b $20\n #_07E933: SEC\n #_07E934: SBC.w #$0012\n #_07E937: STA.b $00\n\n #_07E939: SEP #$20\n\n #_07E93B: LDA.b $01\n #_07E93D: SEC\n #_07E93E: SBC.b $40\n #_07E940: STA.b $68\n\n; ---------------------------------------------------------\n\n.not_vertical\n #_07E942: SEP #$20\n\n #_07E944: LDA.b $26\n #_07E946: AND.b #$03\n #_07E948: BEQ .not_horizontal\n\n #_07E94A: LDX.b $6C\n #_07E94C: CPX.b #$02\n #_07E94E: BNE .not_horizontal\n\n #_07E950: AND.b #$01\n #_07E952: BEQ .going_left\n\n #_07E954: REP #$20\n\n #_07E956: LDA.b $22\n #_07E958: CLC\n #_07E959: ADC.w #$0015\n #_07E95C: STA.b $00\n\n #_07E95E: AND.w #$00FC\n #_07E961: BNE .not_horizontal\n\n #_07E963: SEP #$20\n\n #_07E965: LDA.b $01\n #_07E967: SEC\n #_07E968: SBC.b $41\n #_07E96A: STA.b $69\n\n #_07E96C: BRA .not_horizontal\n\n.going_left\n #_07E96E: REP #$20\n\n #_07E970: LDA.b $22\n #_07E972: SEC\n #_07E973: SBC.w #$0008\n #_07E976: STA.b $00\n\n #_07E978: SEP #$20\n\n #_07E97A: LDA.b $01\n #_07E97C: SEC\n #_07E97D: SBC.b $41\n #_07E97F: STA.b $69\n\n; ---------------------------------------------------------\n\n.not_horizontal\n #_07E981: SEP #$20\n\n #_07E983: LDA.b $69\n #_07E985: BEQ .transitioning_vertically\n #_07E987: BMI .transitioning_west\n\n #_07E989: STZ.w $030B\n #_07E98C: STZ.w $0308\n #_07E98F: STZ.w $0309\n #_07E992: STZ.w $0376\n\n #_07E995: JSL HandleEdgeTransitionMovementEast_RightBy8\n\n #_07E999: RTS", + "file": "bank_07.asm" + }, + { + "name": "ApplyLinksMovementToCamera", + "code": "ApplyLinksMovementToCamera:\n #_07E9D3: PHB\n #_07E9D4: PHK\n #_07E9D5: PLB\n\n #_07E9D6: LDA.b $21\n #_07E9D8: SEC\n #_07E9D9: SBC.b $40\n #_07E9DB: STA.b $68\n\n #_07E9DD: LDA.b $23\n #_07E9DF: SEC\n #_07E9E0: SBC.b $41\n #_07E9E2: STA.b $69\n\n #_07E9E4: LDA.b $69\n #_07E9E6: BEQ .check_y_movement\n\n #_07E9E8: BMI .moved_left\n\n.moved_right\n #_07E9EA: JSL AdjustQuadrantAndCamera_right\n\n #_07E9EE: BRA .check_y_movement\n\n.moved_left\n #_07E9F0: JSL AdjustQuadrantAndCamera_left\n\n; ---------------------------------------------------------\n\n.check_y_movement\n #_07E9F4: LDA.b $68\n #_07E9F6: BEQ .done\n\n #_07E9F8: BPL .moved_down\n\n.moved_up\n #_07E9FA: JSL AdjustQuadrantAndCamera_up\n\n #_07E9FE: PLB\n\n #_07E9FF: RTL", + "file": "bank_07.asm" + }, + { + "name": "DesertPrayer_InitializeIrisHDMA", + "code": "DesertPrayer_InitializeIrisHDMA:\n #_07EA06: JSL CleanUpAndPrepDesertPrayerHDMA\n\n #_07EA0A: PHB\n #_07EA0B: PHK\n #_07EA0C: PLB\n\n #_07EA0D: REP #$20\n\n #_07EA0F: LDA.w #$0026\n #_07EA12: STA.w $067C\n\n #_07EA15: SEP #$20\n\n #_07EA17: STZ.w $067E\n\n #_07EA1A: JSL DesertPrayer_BuildIrisHDMATable\n\n #_07EA1E: INC.b $B0\n\n #_07EA20: PLB\n\n #_07EA21: RTL", + "file": "bank_07.asm" + }, + { + "name": "DesertPrayerAnimationTimer", + "code": "DesertPrayerAnimationTimer:\n #_07EA22: db $16, $16, $16, $40, $01\n\n; ---------------------------------------------------------\n", + "file": "bank_07.asm" + }, + { + "name": "DesertPrayer_BuildIrisHDMATable", + "code": "DesertPrayer_BuildIrisHDMATable:\n #_07EA27: PHB\n #_07EA28: PHK\n #_07EA29: PLB\n\n #_07EA2A: REP #$30\n\n #_07EA2C: STZ.b $04\n\n #_07EA2E: LDA.b $20\n #_07EA30: SEC\n #_07EA31: SBC.b $E8\n #_07EA33: CLC\n #_07EA34: ADC.w #$000C\n #_07EA37: STA.b $0E\n\n #_07EA39: SEC\n #_07EA3A: SBC.w $067C\n #_07EA3D: STA.w $0674\n\n #_07EA40: BPL .link_not_too_high\n\n #_07EA42: STA.b $04\n\n.link_not_too_high\n #_07EA44: CLC\n #_07EA45: ADC.w $067C\n\n #_07EA48: CLC\n #_07EA49: ADC.w $067C\n #_07EA4C: STA.w $0676\n\n #_07EA4F: LDA.b $22\n #_07EA51: SEC\n #_07EA52: SBC.b $E2\n\n #_07EA54: CLC\n #_07EA55: ADC.w #$0008\n #_07EA58: STA.w $0670\n\n #_07EA5B: LDA.w #$0001\n #_07EA5E: STA.w $067A\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "NextDesertHDMALine", + "code": "NextDesertHDMALine:\n #_07EA61: LDA.w #$0100\n #_07EA64: STA.b $00\n #_07EA66: STA.b $02\n\n #_07EA68: LDA.w $0674\n #_07EA6B: BMI .link_too_high\n\n #_07EA6D: LDA.b $04\n #_07EA6F: CMP.w $0674\n #_07EA72: BCC .add_empty_table_entry\n\n #_07EA74: CMP.w $0676\n #_07EA77: BCS .add_empty_table_entry\n\n.link_too_high\n #_07EA79: LDA.w $067C\n #_07EA7C: CMP.w $067A\n #_07EA7F: BCS .add_iris_table_entry\n\n #_07EA81: LDA.w #$0001\n #_07EA84: STA.w $067A\n\n #_07EA87: STZ.w $0674\n\n #_07EA8A: LDA.w $0676\n #_07EA8D: STA.b $04\n\n #_07EA8F: CMP.w #$00E1\n #_07EA92: BCC .add_empty_table_entry\n\n #_07EA94: BRL DesertHDMATableFinished\n\n; ---------------------------------------------------------\n\n.add_iris_table_entry\n #_07EA97: JSR DesertHDMA_CalculateIrisShapeLine\n\n #_07EA9A: LDA.b $06\n #_07EA9C: BNE .dont_turn_into_blank_line\n\n #_07EA9E: STZ.w $0674\n\n #_07EAA1: BRA .calculate_index\n\n.dont_turn_into_blank_line\n #_07EAA3: LDA.b $08\n #_07EAA5: CLC\n #_07EAA6: ADC.w $0670\n #_07EAA9: STA.b $02\n\n #_07EAAB: LDA.w $0670\n #_07EAAE: SEC\n #_07EAAF: SBC.b $08\n #_07EAB1: STA.b $00\n\n.calculate_index\n #_07EAB3: LDA.w $067A\n #_07EAB6: AND.w #$00FF\n #_07EAB9: STA.b $0A\n\n #_07EABB: LDA.b $0E\n #_07EABD: SEC\n #_07EABE: SBC.b $0A\n #_07EAC0: DEC A\n #_07EAC1: ASL A\n #_07EAC2: TAX\n\n #_07EAC3: BRA .add_from_iris\n\n; ---------------------------------------------------------\n\n.add_empty_table_entry\n #_07EAC5: LDA.b $04\n #_07EAC7: DEC A\n #_07EAC8: ASL A\n #_07EAC9: TAX\n\n.add_from_iris\n #_07EACA: LDA.b $00\n #_07EACC: TAY\n #_07EACD: BMI .use_zero_a\n\n #_07EACF: AND.w #$FF00\n #_07EAD2: BEQ .not_zero_a\n\n #_07EAD4: CMP.w #$0100\n #_07EAD7: BNE .use_zero_a\n\n #_07EAD9: LDY.w #$00FF\n #_07EADC: BRA .not_zero_a\n\n.use_zero_a\n #_07EADE: LDY.w #$0000\n\n.not_zero_a\n #_07EAE1: TYA\n #_07EAE2: AND.w #$00FF\n #_07EAE5: STA.b $06\n\n #_07EAE7: LDA.b $02\n #_07EAE9: TAY\n\n #_07EAEA: AND.w #$FF00\n #_07EAED: BEQ .not_zero_b\n\n #_07EAEF: AND.w #$FF00\n #_07EAF2: BEQ .use_zero_b\n\n #_07EAF4: LDY.w #$00FF\n #_07EAF7: BRA .not_zero_b\n\n.use_zero_b\n #_07EAF9: LDY.w #$0000\n\n.not_zero_b\n #_07EAFC: TYA\n #_07EAFD: AND.w #$00FF\n #_07EB00: XBA\n #_07EB01: ORA.b $06\n #_07EB03: STA.b $06\n\n #_07EB05: CPX.w #$01C0\n #_07EB08: BCS .dont_add_line_a\n\n #_07EB0A: CMP.w #$FFFF\n #_07EB0D: BNE .add_as_is_a\n\n #_07EB0F: LDA.w #$00FF\n\n.add_as_is_a\n #_07EB12: STA.w $1B00,X\n\n.dont_add_line_a\n #_07EB15: LDA.w $0674\n #_07EB18: BMI .fine_to_try_to_draw\n\n #_07EB1A: LDA.b $04\n #_07EB1C: CMP.w $0674\n #_07EB1F: BCC .to_next\n\n #_07EB21: CMP.w $0676\n #_07EB24: BCS .to_next\n\n.fine_to_try_to_draw\n #_07EB26: LDA.w $067A\n #_07EB29: AND.w #$00FF\n #_07EB2C: DEC A\n #_07EB2D: CLC\n #_07EB2E: ADC.b $0E\n #_07EB30: TAX\n\n #_07EB31: DEC A\n #_07EB32: ASL A\n #_07EB33: CMP.w #$01C0\n #_07EB36: BCS .dont_add_line_b\n\n #_07EB38: TAX\n\n #_07EB39: LDA.b $06\n #_07EB3B: CMP.w #$FFFF\n #_07EB3E: BNE .add_as_is_b\n\n #_07EB40: LDA.w #$00FF\n\n.add_as_is_b\n #_07EB43: STA.w $1B00,X\n\n.dont_add_line_b\n #_07EB46: INC.w $067A\n\n; ---------------------------------------------------------\n\n.to_next\n #_07EB49: INC.b $04\n\n #_07EB4B: LDA.b $04\n #_07EB4D: BMI .more_to_go\n\n #_07EB4F: CMP.w #$00E1\n #_07EB52: BCS DesertHDMATableFinished\n\n.more_to_go\n #_07EB54: BRL NextDesertHDMALine\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "DesertHDMATableFinished", + "code": "DesertHDMATableFinished:\n #_07EB57: SEP #$30\n\n #_07EB59: LDA.b $B0\n #_07EB5B: CMP.b #$04\n #_07EB5D: BNE .exit\n\n #_07EB5F: LDA.w $067E\n #_07EB62: CMP.b #$01\n #_07EB64: BEQ .dont_advance\n\n #_07EB66: LDA.b $F4\n #_07EB68: ORA.b $F6\n #_07EB6A: AND.b #$C0\n #_07EB6C: BEQ .dont_advance\n\n #_07EB6E: LDA.b #$01\n #_07EB70: STA.w $067E\n\n #_07EB73: LSR.w $067C\n\n.dont_advance\n #_07EB76: LDA.w $067E\n #_07EB79: BEQ .still_running_iris\n\n #_07EB7B: LDA.w $067C\n #_07EB7E: CLC\n #_07EB7F: ADC.b #$08\n #_07EB81: STA.w $067C\n\n #_07EB84: CMP.b #$C0\n #_07EB86: BCC .still_running_iris\n\n #_07EB88: LDA.w $02F0\n #_07EB8B: EOR.b #$01\n #_07EB8D: STA.w $02F0\n\n #_07EB90: LDA.b #$F3 ; SONG F3 - max volume\n #_07EB92: STA.w $012C\n\n #_07EB95: LDA.b #$00\n #_07EB97: STA.w $012D\n\n #_07EB9A: STZ.w $0FC1\n #_07EB9D: STZ.w $030A\n\n #_07EBA0: STZ.b $3A\n #_07EBA2: STZ.w $0308\n\n #_07EBA5: LDA.b $50\n #_07EBA7: AND.b #$FE\n #_07EBA9: STA.b $50\n\n #_07EBAB: STZ.b $B0\n #_07EBAD: STZ.b $11\n\n #_07EBAF: LDA.w $010C\n #_07EBB2: STA.b $10\n\n #_07EBB4: STZ.b $1E\n #_07EBB6: STZ.b $1F\n\n #_07EBB8: STZ.b $96\n #_07EBBA: STZ.b $97\n #_07EBBC: STZ.b $98\n\n #_07EBBE: JSL IrisSpotlight_ResetTable\n\n #_07EBC2: BRA .exit\n\n; ---------------------------------------------------------\n\n.still_running_iris\n #_07EBC4: DEC.b $3D\n #_07EBC6: BPL .exit\n\n #_07EBC8: LDX.w $030A\n #_07EBCB: INX\n #_07EBCC: CPX.b #$04\n #_07EBCE: BEQ .on_final_step\n\n #_07EBD0: STX.w $030A\n\n.on_final_step\n #_07EBD3: LDA.w DesertPrayerAnimationTimer,X\n #_07EBD6: STA.b $3D\n\n.exit\n #_07EBD8: PLB\n\n #_07EBD9: RTL", + "file": "bank_07.asm" + }, + { + "name": "DesertHDMA_CalculateIrisShapeLine", + "code": "DesertHDMA_CalculateIrisShapeLine:\n #_07ECDC: SEP #$30\n\n #_07ECDE: LDA.w $067A\n #_07ECE1: STA.w WRDIVH\n #_07ECE4: STZ.w WRDIVL\n\n #_07ECE7: LDA.w $067C\n #_07ECEA: STA.w WRDIVB\n\n #_07ECED: NOP\n #_07ECEE: NOP\n #_07ECEF: NOP\n #_07ECF0: NOP\n #_07ECF1: NOP\n #_07ECF2: NOP\n\n #_07ECF3: REP #$20\n\n #_07ECF5: LDA.w RDDIV\n #_07ECF8: LSR A\n\n #_07ECF9: SEP #$20\n\n #_07ECFB: TAX\n\n #_07ECFC: LDY.w .multiplier_closed,X\n\n #_07ECFF: LDA.w $067E\n #_07ED02: BEQ .not_opening\n\n #_07ED04: LDY.w .multiplier_opening,X\n\n.not_opening\n #_07ED07: STY.b $06\n #_07ED09: STY.w WRMPYA\n\n #_07ED0C: LDA.w $067C\n #_07ED0F: STA.w WRMPYB\n\n #_07ED12: NOP\n #_07ED13: NOP\n #_07ED14: NOP\n #_07ED15: NOP\n\n #_07ED16: LDA.w RDMPYH\n #_07ED19: STA.b $08\n\n #_07ED1B: STZ.b $09\n #_07ED1D: STZ.b $07\n\n #_07ED1F: REP #$30\n\n #_07ED21: LDA.w $067E\n #_07ED24: AND.w #$00FF\n #_07ED27: BEQ .exit\n\n #_07ED29: ASL.b $08\n\n.exit\n #_07ED2B: RTS", + "file": "bank_07.asm" + }, + { + "name": "FindFreeMovingBlockSlot", + "code": "FindFreeMovingBlockSlot:\n #_07ED2C: LDX.b #$01\n\n.next\n #_07ED2E: LDA.w $05FC,X\n #_07ED31: BNE .taken\n\n #_07ED33: TYA\n #_07ED34: INC A\n #_07ED35: STA.w $05FC,X\n\n #_07ED38: CLC\n\n #_07ED39: RTS", + "file": "bank_07.asm" + }, + { + "name": "InitializePushBlock", + "code": "InitializePushBlock:\n #_07ED3F: PHX\n\n #_07ED40: STX.b $72\n\n #_07ED42: LDA.b $0E\n #_07ED44: PHA\n\n #_07ED45: REP #$20\n\n #_07ED47: LDA.w $0540,X\n #_07ED4A: AND.w #$007E\n #_07ED4D: ASL A\n #_07ED4E: ASL A\n #_07ED4F: STA.b $00\n\n #_07ED51: LDA.w $0540,X\n #_07ED54: AND.w #$1F80\n #_07ED57: LSR A\n #_07ED58: LSR A\n #_07ED59: LSR A\n #_07ED5A: LSR A\n #_07ED5B: STA.b $02\n\n #_07ED5D: SEP #$20\n\n #_07ED5F: LDA.b $0E\n #_07ED61: ASL A\n #_07ED62: TAX\n\n #_07ED63: LDA.b $00\n #_07ED65: STA.w $05E4,X\n\n #_07ED68: LDA.b $01\n #_07ED6A: CLC\n #_07ED6B: ADC.w $062D\n #_07ED6E: STA.w $05E0,X\n #_07ED71: STA.b $01\n\n #_07ED73: LDA.b $02\n #_07ED75: STA.w $05F0,X\n\n #_07ED78: LDA.b $03\n #_07ED7A: CLC\n #_07ED7B: ADC.w $062F\n #_07ED7E: STA.w $05EC,X\n #_07ED81: STA.b $03\n\n #_07ED83: STZ.w $05E8,X\n #_07ED86: STZ.w $05F4,X\n\n #_07ED89: LDA.b $AE\n #_07ED8B: CMP.b #$26\n #_07ED8D: BEQ .dont_push\n\n #_07ED8F: LDX.b $72\n\n #_07ED91: LDA.w $0500,X\n #_07ED94: BNE .dont_push\n\n #_07ED96: LDY.b #$00\n #_07ED98: JSR PushBlock_AttemptToPushTheBlock\n #_07ED9B: BCC .do_the_push\n\n.dont_push\n #_07ED9D: PLA\n #_07ED9E: TAX\n\n #_07ED9F: STZ.w $05FC,X\n\n #_07EDA2: PLX\n\n #_07EDA3: SEC\n\n #_07EDA4: RTS", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_Slide", + "code": "PushBlock_Slide:\n #_07EDB5: SEP #$30\n\n #_07EDB7: PHB\n #_07EDB8: PHK\n #_07EDB9: PLB\n\n #_07EDBA: LDA.b $11\n #_07EDBC: BNE .exit\n\n #_07EDBE: STY.b $00\n\n #_07EDC0: LDX.b #$01\n\n #_07EDC2: LDA.w $05FC,X\n #_07EDC5: DEC A\n #_07EDC6: ASL A\n #_07EDC7: CMP.b $00\n #_07EDC9: BEQ .matched\n\n #_07EDCB: LDX.b #$00\n\n.matched\n #_07EDCD: TXA\n #_07EDCE: ASL A\n #_07EDCF: TAY\n\n #_07EDD0: LDA.b #$09\n #_07EDD2: STA.w $02C4\n #_07EDD5: STZ.w $02C3\n\n #_07EDD8: JSR PushBlock_ApplyVelocity\n\n #_07EDDB: LDA.w $05F0,Y\n #_07EDDE: STA.b $72\n\n #_07EDE0: LDA.w $05EC,Y\n #_07EDE3: STA.b $73\n\n #_07EDE5: LDA.w $05E4,Y\n #_07EDE8: STA.b $74\n\n #_07EDEA: LDA.w $05E0,Y\n #_07EDED: STA.b $75\n\n #_07EDEF: JSR PushBlock_HandleCollision\n\n.exit\n #_07EDF2: PLB\n\n #_07EDF3: RTL", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_HandleFalling", + "code": "PushBlock_HandleFalling:\n #_07EDF9: SEP #$30\n\n #_07EDFB: PHB\n #_07EDFC: PHK\n #_07EDFD: PLB\n\n #_07EDFE: PHY\n\n #_07EDFF: STY.b $0E\n\n #_07EE01: DEC.w $02C4\n #_07EE04: BPL .exit\n\n #_07EE06: INC.w $02C3\n\n #_07EE09: LDX.w $02C3\n\n #_07EE0C: LDA.w .fall_timer,X\n #_07EE0F: STA.w $02C4\n\n #_07EE12: CPX.b #$04\n #_07EE14: BNE .exit\n\n #_07EE16: TYX\n\n #_07EE17: STZ.w $0500,X\n\n #_07EE1A: STZ.w $02C3\n\n #_07EE1D: LDX.b #$01\n\n #_07EE1F: LDA.w $05FC,X\n #_07EE22: DEC A\n #_07EE23: ASL A\n #_07EE24: CMP.b $0E\n #_07EE26: BEQ .matched\n\n #_07EE28: LDX.b #$00\n\n.matched\n #_07EE2A: STZ.w $05FC,X\n\n.exit\n #_07EE2D: PLY\n\n #_07EE2E: PLB\n\n #_07EE2F: RTL", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_ApplyVelocity", + "code": "PushBlock_ApplyVelocity:\n #_07EE35: STZ.b $27\n #_07EE37: STZ.b $28\n\n #_07EE39: LDA.w .block_speed\n #_07EE3C: STA.b $0A\n #_07EE3E: STA.b $0B\n\n #_07EE40: LDA.b #$03\n #_07EE42: STA.b $0C\n\n #_07EE44: LDA.b #$02\n #_07EE46: STA.b $0D\n\n #_07EE48: LDA.w $05F8,Y\n #_07EE4B: LSR A\n #_07EE4C: TAX\n\n #_07EE4D: LDA.w .direction_mask,X\n #_07EE50: STA.b $00\n\n; ---------------------------------------------------------\n\n #_07EE52: LDX.b #$01\n\n.next_direction_check\n #_07EE54: LDA.b $00\n #_07EE56: AND.b $0C\n #_07EE58: BEQ .skip_direction\n\n #_07EE5A: AND.b $0D\n #_07EE5C: BEQ .direction_positive\n\n #_07EE5E: LDA.b $0A,X\n #_07EE60: EOR.b #$FF\n #_07EE62: INC A\n #_07EE63: STA.b $0A,X\n\n.direction_positive\n #_07EE65: LDA.b $0A,X\n #_07EE67: STA.b $27,X\n\n #_07EE69: BRA .direction_found\n\n; ---------------------------------------------------------\n\n.skip_direction\n #_07EE6B: ASL.b $0C\n #_07EE6D: ASL.b $0C\n\n #_07EE6F: ASL.b $0D\n #_07EE71: ASL.b $0D\n\n #_07EE73: DEX\n #_07EE74: BPL .next_direction_check\n\n; ---------------------------------------------------------\n\n.direction_found\n #_07EE76: LDA.b $27,X\n\n #_07EE78: ASL A\n #_07EE79: ASL A\n #_07EE7A: ASL A\n #_07EE7B: ASL A\n\n #_07EE7C: CLC\n #_07EE7D: ADC.w $05F4,Y\n #_07EE80: STA.w $05F4,Y\n\n #_07EE83: PHP\n\n #_07EE84: CPX.b #$01\n #_07EE86: BEQ .push_block_horizontally\n\n #_07EE88: LDX.b #$00\n\n #_07EE8A: LDA.b $27\n\n #_07EE8C: LSR A\n #_07EE8D: LSR A\n #_07EE8E: LSR A\n #_07EE8F: LSR A\n\n #_07EE90: CMP.b #$08\n #_07EE92: BCC .pushing_down\n\n #_07EE94: ORA.b #$F0\n #_07EE96: LDX.b #$FF\n\n.pushing_down\n #_07EE98: PLP\n #_07EE99: ADC.w $05F0,Y\n #_07EE9C: STA.w $05F0,Y\n\n #_07EE9F: TXA\n #_07EEA0: ADC.w $05EC,Y\n #_07EEA3: STA.w $05EC,Y\n\n #_07EEA6: LDA.w $05F0,Y\n #_07EEA9: AND.b #$0F\n #_07EEAB: BRA .compare_to_target\n\n; ---------------------------------------------------------\n\n.push_block_horizontally\n #_07EEAD: LDX.b #$00\n\n #_07EEAF: LDA.b $28\n #_07EEB1: LSR A\n #_07EEB2: LSR A\n #_07EEB3: LSR A\n #_07EEB4: LSR A\n #_07EEB5: CMP.b #$08\n #_07EEB7: BCC .pushing_right\n\n #_07EEB9: ORA.b #$F0\n\n #_07EEBB: LDX.b #$FF\n\n.pushing_right\n #_07EEBD: PLP\n #_07EEBE: ADC.w $05E4,Y\n #_07EEC1: STA.w $05E4,Y\n\n #_07EEC4: TXA\n #_07EEC5: ADC.w $05E0,Y\n #_07EEC8: STA.w $05E0,Y\n\n #_07EECB: LDA.w $05E4,Y\n #_07EECE: AND.b #$0F\n\n; ---------------------------------------------------------\n\n.compare_to_target\n #_07EED0: TYX\n\n #_07EED1: CMP.w $05E8,X\n #_07EED4: BNE .not_at_target\n\n #_07EED6: TXA\n #_07EED7: LSR A\n #_07EED8: TAX\n\n #_07EED9: LDA.w $05FC,X\n #_07EEDC: DEC A\n #_07EEDD: ASL A\n #_07EEDE: TAX\n\n #_07EEDF: INC.w $0500,X\n\n #_07EEE2: LDA.b $50\n #_07EEE4: AND.b #$FB\n #_07EEE6: STA.b $50\n\n #_07EEE8: LDA.b $48\n #_07EEEA: AND.b #$FB\n #_07EEEC: STA.b $48\n\n; ---------------------------------------------------------\n\n.not_at_target\n #_07EEEE: SEP #$20\n\n #_07EEF0: LDA.w $05E4,Y\n #_07EEF3: STA.b $00\n\n #_07EEF5: LDA.w $05E0,Y\n #_07EEF8: STA.b $01\n\n #_07EEFA: LDA.w $05F0,Y\n #_07EEFD: STA.b $02\n\n #_07EEFF: LDA.w $05EC,Y\n #_07EF02: STA.b $03\n\n; ---------------------------------------------------------\n\n #_07EF04: PHX\n\n #_07EF05: LDX.b #$0F\n\n.next_sprite\n #_07EF07: LDA.w $0DD0,X\n #_07EF0A: CMP.b #$09\n #_07EF0C: BCC .skip_sprite\n\n #_07EF0E: LDA.w $0D10,X\n #_07EF11: STA.b $04\n\n #_07EF13: LDA.w $0D30,X\n #_07EF16: STA.b $05\n\n #_07EF18: LDA.w $0D00,X\n #_07EF1B: STA.b $06\n\n #_07EF1D: LDA.w $0D20,X\n #_07EF20: STA.b $07\n\n #_07EF22: REP #$20\n\n #_07EF24: LDA.b $00\n #_07EF26: SEC\n #_07EF27: SBC.b $04\n #_07EF29: CLC\n #_07EF2A: ADC.w #$0010\n #_07EF2D: CMP.w #$0020\n #_07EF30: BCS .skip_sprite\n\n #_07EF32: LDA.b $02\n #_07EF34: SEC\n #_07EF35: SBC.b $06\n #_07EF37: CLC\n #_07EF38: ADC.w #$0010\n #_07EF3B: CMP.w #$0020\n #_07EF3E: BCS .skip_sprite\n\n #_07EF40: SEP #$20\n\n #_07EF42: LDA.b #$08\n #_07EF44: STA.w $0EA0,X\n\n #_07EF47: PHY\n\n #_07EF48: LDA.w $05F8,Y\n #_07EF4B: LSR A\n #_07EF4C: TAY\n\n #_07EF4D: LDA.w .recoil_x,Y\n #_07EF50: STA.w $0F40,X\n\n #_07EF53: LDA.w .recoil_y,Y\n #_07EF56: STA.w $0F30,X\n\n #_07EF59: PLY\n\n.skip_sprite\n #_07EF5A: SEP #$20\n\n #_07EF5C: DEX\n #_07EF5D: BPL .next_sprite\n\n #_07EF5F: PLX\n\n #_07EF60: RTS", + "file": "bank_07.asm" + }, + { + "name": "PushBlock_HandleCollision", + "code": "PushBlock_HandleCollision:\n #_07EFB9: PHY\n\n #_07EFBA: STY.b $0E\n #_07EFBC: STZ.b $0F\n\n #_07EFBE: LDA.b $21\n #_07EFC0: STA.b $40\n\n #_07EFC2: LDA.b $23\n #_07EFC4: STA.b $41\n\n #_07EFC6: REP #$20\n\n #_07EFC8: LDA.b $67\n #_07EFCA: AND.w #$000F\n\n #_07EFCD: LDY.b #$06\n\n.check_next_bit\n #_07EFCF: LSR A\n #_07EFD0: BCS .direction_match\n\n #_07EFD2: DEY\n #_07EFD3: DEY\n #_07EFD4: BPL .check_next_bit\n\n #_07EFD6: BRL .no_pushback\n\n; ---------------------------------------------------------\n\n.direction_match\n #_07EFD9: LDA.b $0E\n #_07EFDB: PHA\n\n #_07EFDC: LDA.w .link_coord_address_perpendicular,Y\n #_07EFDF: STA.b $0C\n\n #_07EFE1: LDA.w .block_coords_address_perpendicular,Y\n #_07EFE4: STA.b $0E\n\n #_07EFE6: LDA.b ($0C)\n #_07EFE8: CLC\n #_07EFE9: ADC.w .link_offset_perpendicular_bottom,Y\n #_07EFEC: STA.b $00\n\n #_07EFEE: LDA.b ($0C)\n #_07EFF0: CLC\n #_07EFF1: ADC.w .link_offset_perpendicular_top,Y\n #_07EFF4: STA.b $02\n\n #_07EFF6: LDA.b ($0E)\n #_07EFF8: CLC\n #_07EFF9: ADC.w .block_offset_perpendicular_bottom,Y\n #_07EFFC: STA.b $04\n\n #_07EFFE: LDA.b ($0E)\n #_07F000: CLC\n #_07F001: ADC.w .block_offset_perpendicular_top,Y\n #_07F004: STA.b $06\n\n; ---------------------------------------------------------\n\n #_07F006: LDA.w .link_coord_address_on_axis,Y\n #_07F009: STA.b $0C\n\n #_07F00B: LDA.w .block_coords_address_on_axis,Y\n #_07F00E: STA.b $0E\n\n #_07F010: LDA.b ($0C)\n #_07F012: CLC\n #_07F013: ADC.w .link_offset_on_axis,Y\n #_07F016: STA.b $08\n\n #_07F018: LDA.b ($0E)\n #_07F01A: CLC\n #_07F01B: ADC.w .block_offset_on_axis,Y\n #_07F01E: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_07F020: LDA.b $48\n #_07F022: AND.w #$FFFB\n #_07F025: STA.b $48\n\n #_07F027: PLA\n #_07F028: STA.b $0E\n\n #_07F02A: LDA.b $00\n #_07F02C: CMP.b $04\n #_07F02E: BCC .not_in_block_on_axis\n\n #_07F030: CMP.b $06\n #_07F032: BCC .in_block_on_axis\n\n.not_in_block_on_axis\n #_07F034: LDA.b $02\n #_07F036: CMP.b $04\n #_07F038: BCC .no_pushback\n\n #_07F03A: CMP.b $06\n #_07F03C: BCS .no_pushback\n\n; ---------------------------------------------------------\n\n.in_block_on_axis\n #_07F03E: PHY\n #_07F03F: PHX\n\n #_07F040: LDX.b $0E\n\n #_07F042: LDA.b $2F\n #_07F044: AND.w #$00FF\n #_07F047: CMP.w $05F8,X\n #_07F04A: BNE .direction_mismatch\n\n #_07F04C: LDY.b #$01\n\n #_07F04E: TXA\n #_07F04F: LSR A\n #_07F050: TAX\n\n #_07F051: LDA.w $05FC,X\n #_07F054: BEQ .dont_flag_pushing_block\n\n #_07F056: LDY.b #$04\n\n.dont_flag_pushing_block\n #_07F058: TYA\n #_07F059: AND.w #$00FF\n #_07F05C: TSB.b $48\n\n; ---------------------------------------------------------\n\n.direction_mismatch\n #_07F05E: PLX\n #_07F05F: PLY\n\n #_07F060: TYA\n #_07F061: AND.w #$0002\n #_07F064: BEQ .pushing_up_or_left\n\n #_07F066: LDA.b $08\n #_07F068: SEC\n #_07F069: SBC.b $0A\n #_07F06B: BCC .no_pushback\n\n #_07F06D: CMP.w #$0008\n #_07F070: BCS .no_pushback\n\n #_07F072: EOR.w #$FFFF\n #_07F075: INC A\n #_07F076: STA.b $00\n\n #_07F078: CLC\n #_07F079: ADC.b ($0C)\n #_07F07B: STA.b ($0C)\n\n #_07F07D: BRA .set_axis\n\n; ---------------------------------------------------------\n\n.pushing_up_or_left\n #_07F07F: LDA.b $08\n #_07F081: SEC\n #_07F082: SBC.b $0A\n #_07F084: CMP.w #$FFF8\n #_07F087: BCC .no_pushback\n\n #_07F089: EOR.w #$FFFF\n #_07F08C: INC A\n #_07F08D: STA.b $00\n\n #_07F08F: CLC\n #_07F090: ADC.b ($0C)\n #_07F092: STA.b ($0C)\n\n; ---------------------------------------------------------\n\n.set_axis\n #_07F094: SEP #$20\n\n #_07F096: LDX.b #$00\n\n #_07F098: TYA\n #_07F099: AND.b #$04\n #_07F09B: BEQ .vertical\n\n #_07F09D: INX\n\n.vertical\n #_07F09E: LDA.b $30,X\n #_07F0A0: CLC\n #_07F0A1: ADC.b $00\n #_07F0A3: STA.b $30,X\n\n; ---------------------------------------------------------\n\n.no_pushback\n #_07F0A5: SEP #$20\n\n #_07F0A7: JSR HandleIndoorCameraAndDoors\n\n #_07F0AA: PLY\n\n #_07F0AB: RTS", + "file": "bank_07.asm" + }, + { + "name": "Underworld_DrawAllPushBlocks", + "code": "Underworld_DrawAllPushBlocks:\n #_07F0AC: PHB\n #_07F0AD: PHK\n #_07F0AE: PLB\n\n #_07F0AF: LDA.w $05FC\n #_07F0B2: ORA.w $05FD\n #_07F0B5: BEQ .exit\n\n #_07F0B7: LDX.b #$01\n\n.next\n #_07F0B9: LDA.w $05FC,X\n #_07F0BC: BEQ .skip\n\n #_07F0BE: TXA\n #_07F0BF: ASL A\n #_07F0C0: TAY\n\n #_07F0C1: PHX\n\n #_07F0C2: JSR Underworld_DrawSinglePushBlock\n\n #_07F0C5: PLX\n\n.skip\n #_07F0C6: DEX\n #_07F0C7: BPL .next\n\n.exit\n #_07F0C9: PLB\n\n #_07F0CA: RTL", + "file": "bank_07.asm" + }, + { + "name": "Underworld_DrawSinglePushBlock", + "code": "Underworld_DrawSinglePushBlock:\n #_07F0D9: PHY\n\n #_07F0DA: LDA.b #$04\n #_07F0DC: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_07F0E0: PLY\n\n #_07F0E1: LDA.w $05F0,Y\n #_07F0E4: STA.b $00\n\n #_07F0E6: LDA.w $05EC,Y\n #_07F0E9: STA.b $01\n\n #_07F0EB: LDA.w $05E4,Y\n #_07F0EE: STA.b $02\n\n #_07F0F0: LDA.w $05E0,Y\n #_07F0F3: STA.b $03\n\n #_07F0F5: REP #$20\n\n #_07F0F7: LDA.b $00\n #_07F0F9: SEC\n #_07F0FA: SBC.b $E8\n #_07F0FC: DEC A\n #_07F0FD: STA.b $00\n\n #_07F0FF: LDA.b $02\n #_07F101: SEC\n #_07F102: SBC.b $E2\n #_07F104: STA.b $02\n\n #_07F106: SEP #$20\n\n #_07F108: PHY\n\n #_07F109: LDY.w $02C3\n\n #_07F10C: LDA.w .index,Y\n #_07F10F: TAX\n\n #_07F110: LDY.b #$00\n\n #_07F112: LDA.w .step,X\n #_07F115: CMP.b #$FF\n #_07F117: BNE .draw\n\n #_07F119: BRA .exit\n\n; ---------------------------------------------------------\n\n.draw\n #_07F11B: XBA\n\n #_07F11C: LDA.b $02\n #_07F11E: STA.b ($90),Y\n\n #_07F120: INY\n #_07F121: LDA.b $00\n #_07F123: STA.b ($90),Y\n\n #_07F125: INY\n #_07F126: XBA\n #_07F127: STA.b ($90),Y\n\n #_07F129: INY\n #_07F12A: LDA.b #$20\n #_07F12C: STA.b ($90),Y\n\n #_07F12E: INY\n\n #_07F12F: TYA\n\n #_07F130: SEC\n #_07F131: SBC.b #$04\n\n #_07F133: LSR A\n #_07F134: LSR A\n\n #_07F135: TAY\n\n #_07F136: LDA.b #$02\n #_07F138: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n.exit\n #_07F13A: PLY\n\n #_07F13B: RTS", + "file": "bank_07.asm" + }, + { + "name": "Link_Initialize", + "code": "Link_Initialize:\n #_07F13C: PHB\n #_07F13D: PHK\n #_07F13E: PLB\n\n #_07F13F: LDA.b #$02\n #_07F141: STA.b $2F\n\n #_07F143: STZ.b $26\n\n #_07F145: STZ.w $0301\n #_07F148: STZ.w $037A\n\n #_07F14B: STZ.w $020B\n\n #_07F14E: STZ.w $0350\n\n #_07F151: STZ.w $030D\n #_07F154: STZ.w $030E\n\n #_07F157: STZ.w $030A\n #_07F15A: STZ.w $02E1\n\n #_07F15D: STZ.b $3B\n\n #_07F15F: LDA.b $3A\n #_07F161: AND.b #$BF\n #_07F163: STA.b $3A\n\n #_07F165: STZ.w $0308\n #_07F168: STZ.w $0309\n #_07F16B: STZ.w $0376\n\n #_07F16E: JSL Link_ResetSwimmingState\n\n #_07F172: LDA.b $50\n #_07F174: AND.b #$FE\n #_07F176: STA.b $50\n\n #_07F178: STZ.b $25\n #_07F17A: STZ.b $4D\n #_07F17C: STZ.b $46\n\n #_07F17E: STZ.w $031F\n #_07F181: STZ.w $0360\n #_07F184: STZ.w $02DA\n\n #_07F187: STZ.b $55\n\n #_07F189: JSR Link_ForceUnequipCape_quietly\n #_07F18C: JSR Link_ResetSwordAndItemUsage\n\n #_07F18F: STZ.w $037B\n #_07F192: STZ.w $0300\n\n #_07F195: LDA.b $67\n #_07F197: AND.b #$F0\n #_07F199: STA.b $67\n\n #_07F19B: STZ.w $02F5\n #_07F19E: STZ.w $0079\n\n #_07F1A1: PLB\n\n #_07F1A2: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_ResetProperties_A", + "code": "Link_ResetProperties_A:\n #_07F1A3: STZ.b $26\n #_07F1A5: STZ.b $67\n\n #_07F1A7: STZ.w $031F\n #_07F1AA: STZ.w $034A\n\n #_07F1AD: JSL Link_ResetSwimmingState\n\n #_07F1B1: STZ.w $02E1\n #_07F1B4: STZ.w $031F\n #_07F1B7: STZ.w $03DB\n #_07F1BA: STZ.w $02E0\n\n #_07F1BD: STZ.b $56\n\n #_07F1BF: STZ.w $03F5\n #_07F1C2: STZ.w $03F7\n #_07F1C5: STZ.w $03FC\n #_07F1C8: STZ.w $03F8\n #_07F1CB: STZ.w $03FA\n\n #_07F1CE: STZ.w $03E9\n #_07F1D1: STZ.w $0373\n #_07F1D4: STZ.w $031E\n\n #_07F1D7: STZ.w $02F2\n #_07F1DA: STZ.w $02F8\n\n #_07F1DD: STZ.w $02EA\n #_07F1E0: STZ.w $02E9\n\n #_07F1E3: STZ.w $02DB\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_ResetProperties_B", + "code": "Link_ResetProperties_B:\n #_07F1E6: STZ.w $02F5\n\n #_07F1E9: STZ.w $0079\n #_07F1EC: STZ.w $0302\n #_07F1EF: STZ.w $02F4\n\n #_07F1F2: STZ.b $48\n\n #_07F1F4: STZ.b $5A\n #_07F1F6: STZ.b $5B\n #_07F1F8: STZ.b $5B\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "Link_ResetProperties_C", + "code": "Link_ResetProperties_C:\n #_07F1FA: STZ.w $036C\n\n #_07F1FD: STZ.w $031C\n #_07F200: STZ.w $031D\n\n #_07F203: STZ.w $0315\n #_07F206: STZ.w $03EF\n\n #_07F209: STZ.w $02E3\n #_07F20C: STZ.w $02F6\n\n #_07F20F: STZ.w $0301\n #_07F212: STZ.w $037A\n\n #_07F215: STZ.w $020B\n\n #_07F218: STZ.w $0350\n\n #_07F21B: STZ.w $030D\n #_07F21E: STZ.w $030E\n #_07F221: STZ.w $030A\n\n #_07F224: STZ.b $3B\n #_07F226: STZ.b $3A\n #_07F228: STZ.b $3C\n\n #_07F22A: STZ.w $0308\n #_07F22D: STZ.w $0309\n\n #_07F230: STZ.w $0376\n\n #_07F233: STZ.b $50\n #_07F235: STZ.b $4D\n #_07F237: STZ.b $46\n\n #_07F239: STZ.w $0360\n #_07F23C: STZ.w $02DA\n\n #_07F23F: STZ.b $55\n\n #_07F241: JSR Link_ResetSwordAndItemUsage\n\n #_07F244: STZ.w $037B\n #_07F247: STZ.w $0300\n #_07F24A: STZ.w $037E\n\n #_07F24D: STZ.w $02EC\n\n #_07F250: STZ.w $0314\n #_07F253: STZ.w $03F8\n\n #_07F256: STZ.w $02FA\n\n #_07F259: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_AnimateIntraStairClimbAndSFX", + "code": "Link_AnimateIntraStairClimbAndSFX:\n #_07F25A: PHB\n #_07F25B: PHK\n #_07F25C: PLB\n\n #_07F25D: LDX.b #$09\n\n.clear_sparkles\n #_07F25F: LDA.w $0C4A,X\n #_07F262: CMP.b #$0D ; ANCILLA 0D\n #_07F264: BNE .not_a_sparkle\n\n #_07F266: STZ.w $0C4A,X\n\n.not_a_sparkle\n #_07F269: DEX\n #_07F26A: BPL .clear_sparkles\n\n; ---------------------------------------------------------\n\n #_07F26C: LDA.b $2E\n #_07F26E: CMP.b #$05\n #_07F270: BCC .dont_reset_anim_step\n\n #_07F272: STZ.b $2E\n\n.dont_reset_anim_step\n #_07F274: STZ.b $2A\n #_07F276: STZ.b $2B\n\n #_07F278: STZ.w $030A\n\n #_07F27B: LDA.b #$1C\n #_07F27D: STA.w $0371\n\n #_07F280: LDA.b #$20\n #_07F282: STA.w $0378\n\n #_07F285: LDA.b #$01\n #_07F287: STA.w $037B\n\n; ---------------------------------------------------------\n\n #_07F28A: LDA.w $0462\n #_07F28D: AND.b #$04\n #_07F28F: BEQ .upwards_sfx\n\n #_07F291: LDA.b #$18 ; SFX2.18\n #_07F293: JSR PlaySFX_Set2\n\n #_07F296: BRA .sfx_set\n\n.upwards_sfx\n #_07F298: LDA.b #$16 ; SFX2.16\n #_07F29A: JSR PlaySFX_Set2\n\n; ---------------------------------------------------------\n\n.sfx_set\n #_07F29D: STZ.b $01\n\n #_07F29F: LDX.b #$10\n\n #_07F2A1: LDA.w $0462\n #_07F2A4: AND.b #$04\n #_07F2A6: BEQ .going_up\n\n #_07F2A8: LDX.b #$F1\n\n #_07F2AA: LDA.b #$FF\n #_07F2AC: STA.b $01\n\n.going_up\n #_07F2AE: STX.b $00\n\n #_07F2B0: REP #$20\n\n #_07F2B2: LDA.b $22\n #_07F2B4: CLC\n #_07F2B5: ADC.b $00\n #_07F2B7: STA.b $53\n\n #_07F2B9: LDA.b $20\n #_07F2BB: STA.b $51\n\n #_07F2BD: SEP #$20\n\n #_07F2BF: PLB\n\n #_07F2C0: RTL", + "file": "bank_07.asm" + }, + { + "name": "HandleLinkOnSpiralStairs", + "code": "HandleLinkOnSpiralStairs:\n #_07F2C1: REP #$20\n\n #_07F2C3: LDA.b $22\n #_07F2C5: STA.w $0FC2\n\n #_07F2C8: LDA.b $20\n #_07F2CA: STA.w $0FC4\n\n #_07F2CD: SEP #$20\n\n #_07F2CF: LDA.w $030A\n #_07F2D2: BEQ .please_continue\n\n #_07F2D4: RTL", + "file": "bank_07.asm" + }, + { + "name": "SpiralStairs_FindLandingSpot", + "code": "SpiralStairs_FindLandingSpot:\n #_07F391: PHB\n #_07F392: PHK\n #_07F393: PLB\n\n #_07F394: STZ.w $0373\n\n #_07F397: STZ.b $46\n #_07F399: STZ.b $4D\n\n #_07F39B: STZ.w $037B\n\n #_07F39E: REP #$20\n\n #_07F3A0: LDA.b $22\n #_07F3A2: STA.w $0FC2\n\n #_07F3A5: LDA.b $20\n #_07F3A7: STA.w $0FC4\n\n #_07F3AA: SEP #$20\n\n #_07F3AC: DEC.w $0378\n #_07F3AF: BPL .dont_change_direction\n\n #_07F3B1: STZ.w $0378\n\n #_07F3B4: LDA.b #$02\n #_07F3B6: STA.b $2F\n\n.dont_change_direction\n #_07F3B8: LDA.b #$00\n #_07F3BA: STA.b $27\n\n #_07F3BC: LDA.b #$04\n #_07F3BE: STA.b $28\n\n #_07F3C0: LDA.w $0462\n #_07F3C3: AND.b #$04\n #_07F3C5: BEQ .going_up\n\n #_07F3C7: LDA.b #$02\n #_07F3C9: STA.b $27\n\n #_07F3CB: LDA.b #$FC\n #_07F3CD: STA.b $28\n\n; ---------------------------------------------------------\n\n.going_up\n #_07F3CF: LDA.w $030A\n #_07F3D2: CMP.b #$02\n #_07F3D4: BNE .dont_recoil\n\n #_07F3D6: LDA.b #$10\n #_07F3D8: STA.b $27\n #_07F3DA: STZ.b $28\n\n.dont_recoil\n #_07F3DC: JSL LinkHop_FindArbitraryLandingSpot\n #_07F3E0: JSL Link_HandleMovingAnimation_StartWithDash\n\n #_07F3E4: LDA.b $22\n #_07F3E6: CMP.b $53\n #_07F3E8: BNE .exit\n\n #_07F3EA: LDA.b #$02\n #_07F3EC: STA.w $030A\n\n.exit\n #_07F3EF: SEP #$20\n\n #_07F3F1: PLB\n\n #_07F3F2: RTL", + "file": "bank_07.asm" + }, + { + "name": "LinkResetPushTimer", + "code": "LinkResetPushTimer:\n #_07F3F3: PHB\n #_07F3F4: PHK\n #_07F3F5: PLB\n\n #_07F3F6: LDA.b #$07\n #_07F3F8: STA.w $0371\n\n #_07F3FB: PLB\n\n #_07F3FC: RTL", + "file": "bank_07.asm" + }, + { + "name": "UNREACHABLE_07F3FD", + "code": "UNREACHABLE_07F3FD:\n #_07F3FD: PHB\n #_07F3FE: PHK\n #_07F3FF: PLB\n\n #_07F400: REP #$20\n\n #_07F402: LDA.b $22\n #_07F404: STA.w $0FC2\n\n #_07F407: LDA.b $20\n #_07F409: STA.w $0FC4\n\n #_07F40C: SEP #$20\n\n #_07F40E: STZ.b $28\n\n; ---------------------------------------------------------\n\n #_07F410: LDY.b #$08\n\n #_07F412: LDA.b $11\n #_07F414: CMP.b #$12\n #_07F416: BNE .set_recoil\n\n #_07F418: LDY.b #$FE\n\n #_07F41A: LDA.w $0462\n #_07F41D: AND.b #$04\n #_07F41F: BEQ .set_recoil\n\n #_07F421: LDY.b #$FA\n\n; ---------------------------------------------------------\n\n.set_recoil\n #_07F423: STY.b $27\n\n #_07F425: JSL LinkHop_FindArbitraryLandingSpot\n #_07F429: JSL Link_HandleMovingAnimation_StartWithDash\n\n #_07F42D: PLB\n\n #_07F42E: RTL", + "file": "bank_07.asm" + }, + { + "name": "HandleIndoorCameraAndDoors_long", + "code": "HandleIndoorCameraAndDoors_long:\n #_07F42F: PHB\n #_07F430: PHK\n #_07F431: PLB\n\n #_07F432: PHX\n #_07F433: JSR HandleIndoorCameraAndDoors\n #_07F436: PLX\n\n #_07F437: PLB\n\n #_07F438: RTL", + "file": "bank_07.asm" + }, + { + "name": "Link_CheckForEdgeScreenTransition", + "code": "Link_CheckForEdgeScreenTransition:\n #_07F439: PHB\n #_07F43A: PHK\n #_07F43B: PLB\n\n #_07F43C: LDA.b $5D\n\n #_07F43E: CMP.b #$03 ; LINKSTATE 03\n #_07F440: BEQ .prevent_transition\n\n #_07F442: CMP.b #$08 ; LINKSTATE 08\n #_07F444: BEQ .prevent_transition\n\n #_07F446: CMP.b #$09 ; LINKSTATE 09\n #_07F448: BEQ .prevent_transition\n\n #_07F44A: CMP.b #$0A ; LINKSTATE 0A\n #_07F44C: BEQ .prevent_transition\n\n #_07F44E: LDA.b $46\n #_07F450: BEQ .allow\n\n; ---------------------------------------------------------\n\n.prevent_transition\n #_07F452: STZ.b $27\n #_07F454: STZ.b $28\n\n #_07F456: LDA.b #$03\n #_07F458: STA.w $02C6\n\n #_07F45B: REP #$20\n\n #_07F45D: LDA.w $0FC2\n #_07F460: STA.b $22\n\n #_07F462: LDA.w $0FC4\n #_07F465: STA.b $20\n\n #_07F467: SEP #$20\n #_07F469: SEC\n\n #_07F46A: PLB\n\n #_07F46B: RTL", + "file": "bank_07.asm" + }, + { + "name": "Follower_ValidateMessageFreedom", + "code": "Follower_ValidateMessageFreedom:\n #_07F46F: LDA.b $5D\n\n #_07F471: CMP.b #$00 ; LINKSTATE 00\n #_07F473: BEQ .do_check\n\n #_07F475: CMP.b #$04 ; LINKSTATE 04\n #_07F477: BEQ .do_check\n\n #_07F479: CMP.b #$11 ; LINKSTATE 11\n #_07F47B: BNE .fail\n\n.do_check\n #_07F47D: LDA.b $3A\n #_07F47F: AND.b #$80\n #_07F481: ORA.w $0377\n #_07F484: ORA.w $0301\n #_07F487: ORA.w $037A\n #_07F48A: ORA.w $02EC\n #_07F48D: ORA.w $0314\n #_07F490: ORA.w $0308\n #_07F493: ORA.w $0376\n #_07F496: BNE .fail\n\n.succeed\n #_07F498: SEC\n\n #_07F499: RTL", + "file": "bank_07.asm" + }, + { + "name": "TriforceRoom_LinkApproachTriforce", + "code": "TriforceRoom_LinkApproachTriforce:\n #_07F49C: PHB\n #_07F49D: PHK\n #_07F49E: PLB\n\n #_07F49F: LDA.b $20\n #_07F4A1: CMP.b #$98\n #_07F4A3: BCC .still_walking\n\n #_07F4A5: CMP.b #$A9\n #_07F4A7: BCS .keep_speed\n\n #_07F4A9: LDA.b #$14\n #_07F4AB: STA.b $5E\n\n.keep_speed\n #_07F4AD: LDA.b #$08\n\n #_07F4AF: STA.b $67\n #_07F4B1: STA.b $26\n\n #_07F4B3: STZ.b $2F\n\n #_07F4B5: LDA.b #$40\n #_07F4B7: STA.b $3D\n\n #_07F4B9: BRA .exit\n\n.still_walking\n #_07F4BB: STZ.b $2E\n #_07F4BD: STZ.b $67\n #_07F4BF: STZ.b $26\n\n #_07F4C1: DEC.b $3D\n\n #_07F4C3: LDA.b $3D\n #_07F4C5: BNE .exit\n\n #_07F4C7: LDA.b #$02\n #_07F4C9: STA.w $02DA\n\n #_07F4CC: INC.b $B0\n\n.exit\n #_07F4CE: PLB\n\n #_07F4CF: RTL", + "file": "bank_07.asm" + }, + { + "name": "CheckIfLinkIsBusy", + "code": "CheckIfLinkIsBusy:\n #_07F4D0: PHX\n\n #_07F4D1: LDA.b $4D\n #_07F4D3: ORA.w $02DA\n #_07F4D6: BNE .am_busy\n\n #_07F4D8: LDA.w $0308\n #_07F4DB: AND.b #$80\n #_07F4DD: BNE .am_busy\n\n; ---------------------------------------------------------\n\n #_07F4DF: LDX.b #$04\n\n.next_ancilla\n #_07F4E1: LDA.w $0C4A,X\n #_07F4E4: CMP.b #$27 ; ANCILLA 27\n #_07F4E6: BEQ .am_busy\n\n #_07F4E8: DEX\n #_07F4E9: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n.am_free\n #_07F4EB: PLX\n\n #_07F4EC: CLC\n\n #_07F4ED: RTL", + "file": "bank_07.asm" + }, + { + "name": "Pipe_ValidateEntry", + "code": "Pipe_ValidateEntry:\n #_07F4F1: LDX.b #$04\n\n.next_ancilla\n #_07F4F3: LDA.w $0C4A,X\n #_07F4F6: CMP.b #$31 ; ANCILLA 31\n #_07F4F8: BNE .skip_ancilla\n\n #_07F4FA: STZ.w $037A\n #_07F4FD: STZ.b $50\n\n #_07F4FF: STZ.w $0C4A,X\n\n #_07F502: BRA .continue\n\n.skip_ancilla\n #_07F504: DEX\n #_07F505: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n.continue\n #_07F507: LDA.w $0308\n #_07F50A: AND.b #$80\n #_07F50C: ORA.b $4D\n #_07F50E: BNE .fail\n\n.succeed\n #_07F510: CLC\n\n #_07F511: RTL", + "file": "bank_07.asm" + }, + { + "name": "CacheCameraPropertiesIfOutdoors", + "code": "CacheCameraPropertiesIfOutdoors:\n #_07F514: LDA.b $1B\n #_07F516: BNE .indoors\n\n #_07F518: JSL CacheCameraProperties\n\n.indoors\n #_07F51C: RTS", + "file": "bank_07.asm" + }, + { + "name": "SignText_Overworld", + "code": "SignText_Overworld:\n #_07F51D: dw $00A7, $00A7, $0048, $0040, $0040, $00A7, $00A7, $00A7\n #_07F52D: dw $00A7, $00A7, $003C, $0040, $0040, $00A7, $00A7, $003E\n #_07F53D: dw $003D, $0049, $0042, $0042, $00A7, $00A7, $003F, $00B0\n #_07F54D: dw $003B, $003B, $00A7, $003B, $003B, $0044, $00A7, $00A7\n #_07F55D: dw $003B, $003B, $00A7, $003B, $003B, $0045, $00A7, $00A7\n #_07F56D: dw $00A7, $00A7, $00A7, $00A7, $00A7, $0041, $00A7, $00A7\n #_07F57D: dw $00A7, $00A7, $00A7, $0042, $00A7, $0046, $0046, $00A7\n #_07F58D: dw $00A7, $00A7, $0047, $0043, $00A7, $0046, $0046, $00A7\n\n #_07F59D: dw $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n #_07F5AD: dw $00A7, $00A7, $00A8, $00A7, $00A7, $00A7, $00A7, $00A9\n #_07F5BD: dw $00A7, $00AA, $00AB, $00A7, $00A7, $00A7, $00A7, $00B1\n #_07F5CD: dw $00AF, $00AF, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n #_07F5DD: dw $00AF, $00AF, $00A7, $00A7, $00A7, $00AC, $00A7, $00A7\n #_07F5ED: dw $00A7, $00A7, $00A7, $00A7, $00A7, $00AD, $00A7, $00A7\n #_07F5FD: dw $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n #_07F60D: dw $00A7, $00A7, $00A7, $00AE, $00A7, $00A7, $00A7, $00A7\n\n; =========================================================\n", + "file": "bank_07.asm" + }, + { + "name": "SignText_Underworld", + "code": "SignText_Underworld:\n #_07F61D: dw $00B4, $00B4, $00B4, $00C7\n #_07F625: dw $00B4, $00B4, $00B4, $00B4\n #_07F62D: dw $00B4, $00B4, $00B4, $00B4\n #_07F635: dw $00B4, $00B4, $00C4, $00B4\n #_07F63D: dw $00BE, $00B4, $00B4, $00B4\n #_07F645: dw $00B4, $00B4, $00B4, $00B4\n #_07F64D: dw $00B4, $00B4, $00B4, $00B4\n #_07F655: dw $00B4, $00B4, $00B4, $00B4\n #_07F65D: dw $00B4, $00B4, $00B4, $00B4\n #_07F665: dw $00B4, $00B4, $00B4, $00B5\n #_07F66D: dw $00B9, $00B4, $00B4, $00B4\n #_07F675: dw $00B4, $00B4, $00B4, $00B4\n #_07F67D: dw $00B4, $00B4, $00B4, $00B4\n #_07F685: dw $00B4, $00B4, $00B4, $00B4\n #_07F68D: dw $00B4, $00B4, $00B4, $00B4\n #_07F695: dw $00B4, $00B4, $00C5, $00B4\n #_07F69D: dw $00B4, $00B4, $00B4, $00B4\n #_07F6A5: dw $00B4, $00B4, $00B4, $00B4\n #_07F6AD: dw $00B4, $00B4, $00B4, $00BF\n #_07F6B5: dw $00B4, $00B4, $00B4, $00B4\n #_07F6BD: dw $00B4, $00B4, $00B4, $00B4\n #_07F6C5: dw $00B4, $00B4, $00B9, $00B4\n #_07F6CD: dw $00B4, $00B4, $00B4, $00B4\n #_07F6D5: dw $00B4, $00B4, $00B4, $00B4\n #_07F6DD: dw $00B4, $00B4, $00B4, $00B4\n #_07F6E5: dw $00BA, $00B4, $00B4, $00B4\n #_07F6ED: dw $00B4, $00B4, $00BF, $00B4\n #_07F6F5: dw $00B4, $00B4, $00B4, $00B4\n #_07F6FD: dw $00B4, $00B4, $00B4, $00C0\n #_07F705: dw $00B4, $00B4, $00B4, $00C6\n #_07F70D: dw $00B4, $00B4, $00B4, $00B4\n #_07F715: dw $00C0, $00B4, $00C2, $00B4\n #_07F71D: dw $00B4, $00B4, $00B4, $00B4\n #_07F725: dw $00B4, $00B4, $00B4, $00B4\n #_07F72D: dw $00B4, $00B4, $00B4, $00B4\n #_07F735: dw $00B4, $00B4, $00B4, $00B4\n #_07F73D: dw $00B4, $00B4, $00B4, $00B4\n #_07F745: dw $00B4, $00B4, $00B4, $00BB\n #_07F74D: dw $00B4, $00B4, $00B4, $00B4\n #_07F755: dw $00B4, $00B4, $00B4, $00B4\n #_07F75D: dw $00B4, $00B4, $00B4, $00B4\n #_07F765: dw $00B4, $00B4, $00B4, $00B4\n #_07F76D: dw $00B4, $00B4, $00B4, $00B4\n #_07F775: dw $00B4, $00B4, $00B4, $00B4\n #_07F77D: dw $00C1, $00B4, $00B4, $00B4\n #_07F785: dw $00B4, $00B4, $00B4, $00B4\n #_07F78D: dw $00B4, $00B4, $00B4, $00B4\n #_07F795: dw $00B4, $00B4, $00B4, $00B4\n #_07F79D: dw $00B4, $00B4, $00B4, $00B4\n #_07F7A5: dw $00C3, $00B4, $00B4, $00B4\n #_07F7AD: dw $00B4, $00B4, $00B4, $00B4\n #_07F7B5: dw $00B4, $00B4, $00B4, $00B4\n #_07F7BD: dw $00B4, $00B4, $00B4, $00B4\n #_07F7C5: dw $00B4, $00B4, $00C3, $00B4\n #_07F7CD: dw $00B4, $00B4, $00B4, $00B4\n #_07F7D5: dw $00B4, $00B4, $00B4, $00B4\n #_07F7DD: dw $00B4, $00B4, $00B4, $00B4\n #_07F7E5: dw $00B4, $00B4, $00B4, $00B4\n #_07F7ED: dw $00B4, $00B4, $00B8, $00B4\n #_07F7F5: dw $00B4, $00B4, $00B4, $00B4\n #_07F7FD: dw $00B4, $00B4, $00B4, $00B4\n #_07F805: dw $00B4, $00B4, $00B4, $00B4\n #_07F80D: dw $00B4, $00B4, $00B4, $00B4\n #_07F815: dw $00B4, $00B4, $00B4, $00B4\n #_07F81D: dw $00B4, $00B4, $00B4, $00B4\n #_07F825: dw $00B4, $00B4, $00B4, $00B4\n #_07F82D: dw $00B4, $00B4, $00B4, $00B4\n #_07F835: dw $00B4, $00B5, $00B4, $00B4\n #_07F83D: dw $00B4, $00B4, $00B4, $00B4\n #_07F845: dw $00B4, $00B4, $00B4, $00B4\n #_07F84D: dw $00B4, $00B4, $00B4, $00B4\n #_07F855: dw $00B4, $00B4, $00B4, $00B4\n #_07F85D: dw $00B4, $00B4, $00B4, $00B4\n #_07F865: dw $00B4, $0179, $00B4, $00B4\n #_07F86D: dw $00B4, $00B4, $00B4, $00B4\n #_07F875: dw $00B4, $00B4, $00B4, $00B4\n #_07F87D: dw $00B4, $00B4, $00B4, $00B4\n #_07F885: dw $00B4, $00B4, $00B4, $00B4\n #_07F88D: dw $00B4, $00B4, $00B4, $00B4\n #_07F895: dw $00B4, $00B4, $00B4, $00B4\n\n; =========================================================\n; FREE ROM: 0x763\n; =========================================================", + "file": "bank_07.asm" + }, + { + "name": "Sprite_SpawnSparkleGarnish", + "code": "Sprite_SpawnSparkleGarnish:\n #_058008: LDA.b $1A\n #_05800A: AND.b #$03\n #_05800C: BNE .exit\n\n #_05800E: PHX\n #_05800F: TXY\n\n #_058010: JSL GetRandomNumber\n #_058014: AND.b #$03\n #_058016: TAX\n\n #_058017: LDA.l .offset_low, X\n #_05801B: STA.b $00\n\n #_05801D: LDA.l .offset_high, X\n #_058021: STA.b $01\n\n #_058023: JSL GetRandomNumber\n #_058027: AND.b #$03\n #_058029: TAX\n\n #_05802A: LDA.l .offset_low, X\n #_05802E: STA.b $02\n\n #_058030: LDA.l .offset_high, X\n #_058034: STA.b $03\n\n; ---------------------------------------------------------\n\n #_058036: LDX.b #$1D\n\n.next_slot\n #_058038: LDA.l $7FF800, X\n #_05803C: BEQ .empty_slot\n\n #_05803E: DEX\n #_05803F: BPL .next_slot\n\n #_058041: INX\n\n; ---------------------------------------------------------\n\n.empty_slot\n #_058042: LDA.b #$12 ; GARNISH 12\n #_058044: STA.l $7FF800, X\n #_058048: STA.w $0FB4\n\n #_05804B: LDA.w SprX, Y\n #_05804E: CLC\n #_05804F: ADC.b $00\n #_058051: STA.l $7FF83C, X\n\n #_058055: LDA.w SprXH, Y\n #_058058: ADC.b $01\n #_05805A: STA.l $7FF878, X\n\n #_05805E: LDA.w SprY, Y\n #_058061: CLC\n #_058062: ADC.b $02\n #_058064: STA.l $7FF81E, X\n\n #_058068: LDA.w SprYH, Y\n #_05806B: ADC.b $03\n #_05806D: STA.l $7FF85A, X\n\n #_058071: TYA\n #_058072: STA.l $7FF92C, X\n\n #_058076: LDA.b #$0F\n #_058078: STA.l $7FF90E, X\n\n; ---------------------------------------------------------\n\n #_05807C: TXY\n #_05807D: PLX\n\n.exit\n #_05807E: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_70_KingHelmasaurFireball_bounce", + "code": "Sprite_70_KingHelmasaurFireball_bounce:\n #_05807F: JSL Sprite_70_KingHelmasaurFireball\n\n #_058083: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_66_WallCannonVerticalLeft", + "code": "Sprite_66_WallCannonVerticalLeft:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_67_WallCannonVerticalRight", + "code": "Sprite_67_WallCannonVerticalRight:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_68_WallCannonHorizontalTop", + "code": "Sprite_68_WallCannonHorizontalTop:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_69_WallCannonHorizontalBottom", + "code": "Sprite_69_WallCannonHorizontalBottom:\n #_058090: LDY.w SprMiscC, X\n\n #_058093: LDA.w $0E10, X\n #_058096: CMP.b #$01\n\n #_058098: LDA.w WallCannon_anim, Y\n #_05809B: ADC.b #$00\n #_05809D: STA.w $0DC0, X\n\n #_0580A0: LDA.w $0F50, X\n #_0580A3: AND.b #$BF\n #_0580A5: ORA.w WallCannon_flip, Y\n #_0580A8: STA.w $0F50, X\n\n #_0580AB: JSL SpriteDraw_SingleLarge_long\n #_0580AF: JSR Sprite_CheckIfActive_Bank05\n\n #_0580B2: LDA.w SprTimerA, X\n #_0580B5: BNE .direction_change_delay\n\n #_0580B7: LDA.b #$80\n #_0580B9: STA.w SprTimerA, X\n\n #_0580BC: LDA.w $0D90, X\n #_0580BF: EOR.b #$01\n #_0580C1: STA.w $0D90, X\n\n; ---------------------------------------------------------\n\n.direction_change_delay\n #_0580C4: LDY.w $0D90, X\n\n #_0580C7: LDA.w WallCannon_speed_x, Y\n #_0580CA: STA.w SprXSpeed, X\n\n #_0580CD: LDA.w WallCannon_speed_y, Y\n #_0580D0: STA.w SprYSpeed, X\n\n #_0580D3: JSR Sprite_Move_XY_Bank05\n\n #_0580D6: TXA\n #_0580D7: ASL A\n #_0580D8: ASL A\n #_0580D9: CLC\n #_0580DA: ADC.b $1A\n\n #_0580DC: AND.b #$1F\n #_0580DE: BNE .dont_reset_firing_delay\n\n #_0580E0: LDA.b #$10\n #_0580E2: STA.w $0E10, X\n\n; ---------------------------------------------------------\n\n.dont_reset_firing_delay\n #_0580E5: LDA.w $0E10, X\n #_0580E8: CMP.b #$01\n #_0580EA: BEQ .cleared_for_fire\n\n #_0580EC: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_ArrowGame", + "code": "SpritePrep_ArrowGame:\n #_058192: PHB\n #_058193: PHK\n #_058194: PLB\n\n #_058195: STZ.w $0B88\n\n #_058198: LDA.w SprY, X\n #_05819B: SBC.b #$08\n #_05819D: STA.w SprY, X\n\n; ---------------------------------------------------------\n\n #_0581A0: PHX\n #_0581A1: LDX.b #$07\n\n.next_sprite\n #_0581A3: LDA.b #$65 ; SPRITE 65\n #_0581A5: STA.w $0E20, X\n\n #_0581A8: LDA.b #$09\n #_0581AA: STA.w $0DD0, X\n\n #_0581AD: JSL SpritePrep_LoadProperties\n\n #_0581B1: LDA.b $23\n #_0581B3: STA.w SprXH, X\n\n #_0581B6: LDA.w .pos_x, X\n #_0581B9: STA.w SprX, X\n\n #_0581BC: LDA.b $21\n #_0581BE: STA.w SprYH, X\n\n #_0581C1: LDA.w .pos_y, X\n #_0581C4: STA.w SprY, X\n\n #_0581C7: LDA.w .subtype, X\n #_0581CA: STA.w $0D90, X\n\n #_0581CD: DEC A\n #_0581CE: STA.w $0DC0, X\n\n #_0581D1: TAY\n\n #_0581D2: LDA.w .speed_x, Y\n #_0581D5: STA.w SprXSpeed, X\n\n #_0581D8: LDA.w .hitbox, Y\n #_0581DB: STA.w $0F60, X\n\n #_0581DE: LDA.b #$0D\n #_0581E0: STA.w $0F50, X\n\n #_0581E3: LDA.b $EE\n #_0581E5: STA.w $0F20, X\n\n #_0581E8: JSL GetRandomNumber\n #_0581EC: STA.w SprDelay, X\n\n #_0581EF: DEX\n #_0581F0: BNE .next_sprite\n\n; ---------------------------------------------------------\n\n #_0581F2: PLX\n\n #_0581F3: INC.w $0BA0, X\n\n #_0581F6: LDA.l $7EF377\n #_0581FA: STA.w SprSubtype, X\n\n #_0581FD: PLB\n\n #_0581FE: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_65_ArcheryGame", + "code": "Sprite_65_ArcheryGame:\n #_0581FF: LDA.w SprSubtype, X\n #_058202: STA.l $7EF377\n\n #_058206: LDA.w $0D90, X\n #_058209: JSL JumpTableLocal\n #_05820D: dw ArcheryGame_Host\n #_05820F: dw ArcheryGame_Octo\n #_058211: dw ArcheryGame_Hand\n\n; =========================================================\n\npool ArcheryGame_Host\n\n.anim_step\n #_058213: db $03, $04, $03, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host", + "code": "ArcheryGame_Host:\n #_058217: LDA.w $0B99\n #_05821A: BNE .game_in_progress\n\n #_05821C: INC.w $0B9A\n\n.game_in_progress\n #_05821F: JSL SpriteDraw_ArcheryGame_Host\n #_058223: JSR Sprite_CheckIfActive_Bank05\n\n #_058226: LDA.b #$00\n #_058228: STA.w $0F60, X\n\n; ---------------------------------------------------------\n\n #_05822B: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05822F: BCC .no_contact\n\n #_058231: JSL Sprite_CancelHookshot\n\n #_058235: STZ.b $5E\n\n #_058237: JSL Link_CancelDash_long\n\n; ---------------------------------------------------------\n\n.no_contact\n #_05823B: LDA.w SprTimerA, X\n #_05823E: BEQ .not_drumming\n\n #_058240: AND.b #$07\n #_058242: BNE .skip_a_beat\n\n #_058244: LDA.b #$11 ; SFX2.11\n #_058246: JSL SpriteSFX_QueueSFX2WithPan\n\n.skip_a_beat\n #_05824A: LDA.w SprTimerA, X\n #_05824D: AND.b #$04\n #_05824F: LSR A\n #_058250: LSR A\n #_058251: BRA .adjust_animation\n\n; ---------------------------------------------------------\n\n.not_drumming\n #_058253: LDA.w SprAction, X\n #_058256: BEQ .in_idle_state\n\n #_058258: LDA.b $1A\n\n #_05825A: LSR A\n #_05825B: LSR A\n #_05825C: LSR A\n #_05825D: LSR A\n #_05825E: LSR A\n\n #_05825F: AND.b #$03\n\n; ---------------------------------------------------------\n\n.in_idle_state\n #_058261: TAY\n #_058262: LDA.w .anim_step, Y\n\n; ---------------------------------------------------------\n\n.adjust_animation\n #_058265: STA.w $0DC0, X\n\n #_058268: LDA.w SprAction, X\n\n #_05826B: CMP.b #$02\n #_05826D: BEQ ArcheryGame_Host_ProctorGame\n\n #_05826F: CMP.b #$01\n #_058271: BEQ ArcheryGame_Host_VerifyPlay\n\n #_058273: CMP.b #$03\n #_058275: BNE ArcheryGame_Host_Idle\n\n; =========================================================\n\n #_058277: LDA.w $1CE8\n #_05827A: BNE ArcheryGame_Host_GameRejected\n\n #_05827C: LDA.b #$01\n #_05827E: STA.w SprAction, X\n\n #_058281: BRA ArcheryGame_Host_TakeMoney\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_Idle", + "code": "ArcheryGame_Host_Idle:\n #_058283: LDA.b #$0A\n #_058285: STA.w $0F60, X\n\n #_058288: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05828C: BCC .exit\n\n #_05828E: LDA.b $F6\n #_058290: BPL .exit\n\n #_058292: LDA.b #$85 ; MESSAGE 0085\n #_058294: JSR ArcheryGame_Host_ShowMessage\n\n #_058297: INC.w SprAction, X\n\n.exit\n #_05829A: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_VerifyPlay", + "code": "ArcheryGame_Host_VerifyPlay:\n #_05829B: LDA.w $1CE8\n #_05829E: BNE ArcheryGame_Host_GameRejected\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_TakeMoney", + "code": "ArcheryGame_Host_TakeMoney:\n #_0582A0: REP #$20\n\n #_0582A2: LDA.l $7EF360\n #_0582A6: CMP.w #20\n\n #_0582A9: SEP #$20\n #_0582AB: BCC ArcheryGame_Host_InformLinkOfHisPoverty\n\n #_0582AD: STZ.w SprMiscE, X\n\n #_0582B0: STZ.w $0B88\n\n #_0582B3: INC.w SprAction, X\n\n #_0582B6: LDA.b #$86 ; MESSAGE 0086\n #_0582B8: BRA ArcheryGame_Host_ShowMessage\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_GameRejected", + "code": "ArcheryGame_Host_GameRejected:\n #_0582BA: STZ.w SprAction, X\n\n #_0582BD: LDA.b #$87 ; MESSAGE 0087\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_ShowMessage", + "code": "ArcheryGame_Host_ShowMessage:\n #_0582BF: STA.w $1CF0\n #_0582C2: STZ.w $1CF1\n #_0582C5: JSL Sprite_ShowMessageMinimal\n\n #_0582C9: STZ.w SprTimerA, X\n\n #_0582CC: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_InformLinkOfHisPoverty", + "code": "ArcheryGame_Host_InformLinkOfHisPoverty:\n #_0582CD: STZ.w SprAction, X\n\n #_0582D0: LDA.b #$87 ; MESSAGE 0087\n #_0582D2: BRA ArcheryGame_Host_ShowMessage\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Host_ProctorGame", + "code": "ArcheryGame_Host_ProctorGame:\n #_0582D4: LDA.w SprMiscE, X\n #_0582D7: BNE .arrows_on_display\n\n #_0582D9: LDA.b #$05\n #_0582DB: STA.w $0B99\n\n #_0582DE: LDA.b #$02\n #_0582E0: JSL DeleteBoomAndByrnaSparks\n\n #_0582E4: LDA.b #$27\n #_0582E6: STA.w SprTimerB, X\n\n #_0582E9: REP #$20\n\n #_0582EB: LDA.l $7EF360\n #_0582EF: SEC\n #_0582F0: SBC.w #20\n #_0582F3: STA.l $7EF360\n\n #_0582F7: SEP #$20\n\n #_0582F9: INC.w SprMiscE, X\n\n; ---------------------------------------------------------\n\n.arrows_on_display\n #_0582FC: LDA.b #$34\n #_0582FE: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_058302: JSR Sprite_PrepOAMCoord_Bank05\n\n #_058305: LDY.w $0B99\n #_058308: STY.b $0D\n\n #_05830A: LDA.w SprTimerB, X\n #_05830D: BEQ .dont_update_credits_display\n\n #_05830F: LSR A\n #_058310: LSR A\n #_058311: LSR A\n #_058312: TAY\n\n #_058313: LDA.w .arrow_credits, Y\n #_058316: STA.b $0D\n\n; ---------------------------------------------------------\n\n.dont_update_credits_display\n #_058318: PHX\n\n #_058319: LDA.b $0D\n #_05831B: ASL A\n #_05831C: CLC\n #_05831D: ADC.b #$07\n #_05831F: TAX\n\n; ---------------------------------------------------------\n\n #_058320: LDY.b #$00\n\n.next_arrow_draw\n #_058322: LDA.b $00\n #_058324: CLC\n #_058325: ADC.b #$EC\n #_058327: ADC.w .offset_x, X\n #_05832A: STA.b ($90), Y\n\n #_05832C: LDA.b $02\n #_05832E: CLC\n #_05832F: ADC.b #$D0\n #_058331: ADC.w .offset_y, X\n\n #_058334: INY\n #_058335: STA.b ($90), Y\n\n #_058337: LDA.w .char, X\n #_05833A: INY\n #_05833B: STA.b ($90), Y\n\n #_05833D: LDA.w .props, X\n #_058340: INY\n #_058341: STA.b ($90), Y\n\n #_058343: PHY\n\n #_058344: TYA\n #_058345: LSR A\n #_058346: LSR A\n #_058347: TAY\n\n #_058348: LDA.b #$00\n #_05834A: STA.b ($92), Y\n\n #_05834C: PLY\n #_05834D: INY\n\n #_05834E: DEX\n #_05834F: BPL .next_arrow_draw\n\n; ---------------------------------------------------------\n\n #_058351: PLX\n\n #_058352: LDA.w $0B99\n #_058355: ORA.w $0F10, X\n\n #_058358: ORA.w $0C4A\n #_05835B: ORA.w $0C4B\n #_05835E: ORA.w $0C4C\n #_058361: ORA.w $0C4D\n #_058364: ORA.w $0C4E\n #_058367: BNE .exit_b\n\n #_058369: LDA.b #$0A\n #_05836B: STA.w $0F60, X\n\n #_05836E: JSL Sprite_CheckDamageToLink_same_layer_long\n #_058372: BCC .exit_b\n\n #_058374: LDA.b $F6\n #_058376: BPL .exit_b\n\n #_058378: LDA.b #$88 ; MESSAGE 0088\n #_05837A: JSR ArcheryGame_Host_ShowMessage\n\n #_05837D: INC.w SprAction, X\n\n.exit_b\n #_058380: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Prizes", + "code": "ArcheryGame_Prizes:\n #_0583CF: db 4, 8, 16, 32, 64\n #_0583D4: db 99, 99, 99, 99, 99\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Octo", + "code": "ArcheryGame_Octo:\n #_0583D9: LDA.w $0ED0, X\n #_0583DC: CMP.b #$05\n #_0583DE: BCC .prize_fine\n\n #_0583E0: LDA.b #$06\n #_0583E2: STA.w SprMiscA, X\n\n; ---------------------------------------------------------\n\n.prize_fine\n #_0583E5: LDA.w $0E40, X\n #_0583E8: AND.b #$E0\n #_0583EA: STA.w $0E40, X\n\n #_0583ED: LDA.w $0E10, X\n #_0583F0: BNE .arrow_sticking\n\n #_0583F2: LDA.w SprDelay, X\n #_0583F5: LSR A\n #_0583F6: LSR A\n #_0583F7: LSR A\n\n; ---------------------------------------------------------\n\n.arrow_sticking\n #_0583F8: AND.b #$04\n #_0583FA: ASL A\n #_0583FB: ASL A\n #_0583FC: ASL A\n #_0583FD: ASL A\n #_0583FE: STA.b $00\n\n #_058400: LDA.w $0F50, X\n #_058403: AND.b #$BF\n #_058405: ORA.b $00\n #_058407: STA.w $0F50, X\n\n #_05840A: LDA.w $0FDA\n #_05840D: SEC\n #_05840E: SBC.b #$03\n #_058410: STA.w $0FDA\n\n #_058413: JSL SpriteDraw_SingleLarge_long\n\n; ---------------------------------------------------------\n\n #_058417: LDA.w $0E10, X\n #_05841A: BEQ .no_arrow_sticking\n\n; ---------------------------------------------------------\n\n #_05841C: PHA\n\n #_05841D: LDA.w $0E40, X\n #_058420: ORA.b #$05\n #_058422: STA.w $0E40, X\n\n #_058425: PLA\n #_058426: CMP.b #$60\n #_058428: BNE .dont_payout\n\n #_05842A: LDA.b $11\n #_05842C: BNE .dont_payout\n\n #_05842E: LDA.b #$70\n #_058430: STA.w SprTimerA\n\n #_058433: LDY.w SprMiscA, X\n\n #_058436: LDA.b #$00\n #_058438: XBA\n #_058439: LDA.w ArcheryGame_Prizes-1, Y\n\n #_05843C: REP #$20\n\n #_05843E: CLC\n #_05843F: ADC.l $7EF360\n #_058443: STA.l $7EF360\n\n #_058447: SEP #$20\n\n; ---------------------------------------------------------\n\n.dont_payout\n #_058449: JSR ArcheryGame_DrawPrize\n\n.no_arrow_sticking\n #_05844C: BRA ArcheryGame_TargetMain\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_Hand", + "code": "ArcheryGame_Hand:\n #_05844E: LDA.w $0E40, X\n #_058451: AND.b #$E0\n #_058453: STA.w $0E40, X\n\n #_058456: LDA.w $0FDA\n #_058459: CLC\n #_05845A: ADC.b #$03\n #_05845C: STA.w $0FDA\n\n #_05845F: JSL SpriteDraw_SingleLarge_long\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_TargetMain", + "code": "ArcheryGame_TargetMain:\n #_058463: JSR Sprite_CheckIfActive_Bank05\n\n #_058466: LDA.w $0EE0, X\n #_058469: DEC A\n #_05846A: BNE .no_sfx\n\n #_05846C: LDA.b #$3C ; SFX2.3C\n #_05846E: STA.w $012E\n\n.no_sfx\n #_058471: INC.w SprDelay, X\n\n #_058474: JSR Sprite_Move_X_Bank05\n\n #_058477: LDA.w SprTimerB, X\n #_05847A: BNE .exit_a\n\n #_05847C: LDA.w SprTimerA, X\n #_05847F: STA.w $0BA0, X\n #_058482: BNE .reset_location\n\n; ---------------------------------------------------------\n\n #_058484: JSR Sprite_CheckTileCollision_Bank05\n #_058487: BEQ .exit_a\n\n #_058489: LDA.b #$10\n #_05848B: STA.w SprTimerA, X\n #_05848E: STZ.w $0E10, X\n\n.exit_a\n #_058491: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArcheryGame_DrawPrize", + "code": "ArcheryGame_DrawPrize:\n #_0584CF: JSR Sprite_PrepOAMCoord_Bank05\n\n #_0584D2: LDA.w SprMiscA, X\n #_0584D5: STA.b $06\n\n #_0584D7: PHX\n\n; ---------------------------------------------------------\n\n #_0584D8: LDX.b #$04\n #_0584DA: LDY.b #$04\n\n.next_object\n #_0584DC: LDA.b $00\n #_0584DE: CLC\n #_0584DF: ADC.w .offset_x, X\n #_0584E2: STA.b ($90), Y\n\n #_0584E4: LDA.b $02\n #_0584E6: CLC\n #_0584E7: ADC.w .offset_y, X\n\n #_0584EA: INY\n #_0584EB: STA.b ($90), Y\n\n #_0584ED: CPX.b #$04\n #_0584EF: BNE .not_ones_place\n\n #_0584F1: PHX\n\n #_0584F2: LDX.b $06\n #_0584F4: LDA.w .ones_digit-1, X\n\n #_0584F7: PLX\n\n #_0584F8: BRA .write_char\n\n.not_ones_place\n #_0584FA: CPX.b #$03\n #_0584FC: BNE .not_tens_place\n\n #_0584FE: PHX\n\n #_0584FF: LDX.b $06\n #_058501: LDA.w .tens_digit-1, X\n\n #_058504: PLX\n\n #_058505: BRA .write_char\n\n.not_tens_place\n #_058507: LDA.w .char, X\n\n.write_char\n #_05850A: INY\n #_05850B: STA.b ($90), Y\n\n #_05850D: CMP.b #$7C\n #_05850F: INY\n\n #_058510: LDA.w .prop, X\n #_058513: BCC .nonempty\n\n #_058515: AND.b #$FE\n\n.nonempty\n #_058517: STA.b ($90), Y\n\n #_058519: PHY\n\n #_05851A: TYA\n #_05851B: LSR A\n #_05851C: LSR A\n #_05851D: TAY\n\n #_05851E: LDA.b #$00\n #_058520: STA.b ($92), Y\n\n #_058522: PLY\n #_058523: INY\n\n #_058524: DEX\n #_058525: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_058527: PLX\n\n #_058528: JSL Sprite_DrawDistressSweat\n\n #_05852C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_63_DebirandoPit", + "code": "Sprite_63_DebirandoPit:\n #_058531: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_058534: LDA.b $0E\n #_058536: CLC\n #_058537: ADC.b #$20\n #_058539: CMP.b #$40\n #_05853B: BCS .ignore_link_priority\n\n #_05853D: LDA.b $0F\n #_05853F: CLC\n #_058540: ADC.b #$20\n #_058542: CMP.b #$40\n #_058544: BCS .ignore_link_priority\n\n #_058546: LDA.b #$10\n #_058548: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.ignore_link_priority\n #_05854C: JSR SpriteDraw_DebirandoPit\n #_05854F: JSR Sprite_CheckIfActive_Bank05\n\n; ---------------------------------------------------------\n\n #_058552: LDY.w SprMiscE, X\n\n #_058555: LDA.w $0DD0, Y\n #_058558: CMP.b #$06\n #_05855A: BNE .parent_not_dying\n\n #_05855C: STA.w $0DD0, X\n\n #_05855F: LDA.w SprTimerA, Y\n #_058562: STA.w SprTimerA, X\n\n #_058565: LDA.w $0E40, X\n #_058568: CLC\n #_058569: ADC.b #$04\n #_05856B: STA.w $0E40, X\n\n #_05856E: RTS", + "file": "bank_05.asm" + }, + { + "name": "DebirandoPit_Closed", + "code": "DebirandoPit_Closed:\n #_0585DE: LDA.b #$06\n #_0585E0: STA.w $0DC0, X\n\n #_0585E3: LDA.w SprTimerA, X\n #_0585E6: BNE .exit\n\n #_0585E8: INC.w SprAction, X\n\n #_0585EB: LDA.b #$3F\n #_0585ED: STA.w SprTimerA, X\n\n.exit\n #_0585F0: RTS", + "file": "bank_05.asm" + }, + { + "name": "DebirandoPit_Opening", + "code": "DebirandoPit_Opening:\n #_0585F5: LDA.w SprTimerA, X\n #_0585F8: BNE .delay\n\n #_0585FA: INC.w SprAction, X\n\n #_0585FD: LDA.b #$FF\n #_0585FF: STA.w SprTimerA, X\n\n #_058602: RTS", + "file": "bank_05.asm" + }, + { + "name": "DebirandoPit_Open", + "code": "DebirandoPit_Open:\n #_05860F: LDA.b $1A\n #_058611: AND.b #$0F\n #_058613: BNE .dont_adjust_anim\n\n #_058615: INC.w $0DC0, X\n\n #_058618: LDA.w $0DC0, X\n #_05861B: CMP.b #$03\n #_05861D: BCC .dont_adjust_anim\n\n #_05861F: STZ.w $0DC0, X\n\n.dont_adjust_anim\n #_058622: LDA.w SprTimerA, X\n #_058625: BNE .exit\n\n #_058627: LDA.b #$3F\n #_058629: STA.w SprTimerA, X\n\n #_05862C: INC.w SprAction, X\n\n.exit\n #_05862F: RTS", + "file": "bank_05.asm" + }, + { + "name": "DebirandoPit_Closing", + "code": "DebirandoPit_Closing:\n #_058634: LDA.w SprTimerA, X\n #_058637: BNE .delay\n\n #_058639: STZ.w SprAction, X\n\n #_05863C: LDA.b #$20\n #_05863E: STA.w SprTimerA, X\n\n #_058641: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_DebirandoPit", + "code": "SpriteDraw_DebirandoPit:\n #_0586E4: JSR Sprite_PrepOAMCoord_Bank05\n\n #_0586E7: LDA.w $0DC0, X\n #_0586EA: CMP.b #$06\n #_0586EC: BEQ .exit\n\n #_0586EE: PHX\n\n #_0586EF: TAX\n\n #_0586F0: LDA.w .size, X\n #_0586F3: STA.b $0D\n\n #_0586F5: TXA\n #_0586F6: ASL A\n #_0586F7: ASL A\n #_0586F8: STA.b $06\n\n; ---------------------------------------------------------\n\n #_0586FA: LDX.b #$03\n\n.next_object\n #_0586FC: PHX\n\n #_0586FD: TXA\n #_0586FE: CLC\n #_0586FF: ADC.b $06\n #_058701: PHA\n\n #_058702: ASL A\n #_058703: TAX\n\n #_058704: REP #$20\n\n #_058706: LDA.b $00\n #_058708: CLC\n #_058709: ADC.w .offset_x, X\n #_05870C: STA.b ($90), Y\n\n #_05870E: AND.w #$0100\n #_058711: STA.b $0E\n\n #_058713: LDA.b $02\n #_058715: CLC\n #_058716: ADC.w .offset_y, X\n\n #_058719: INY\n #_05871A: STA.b ($90), Y\n\n #_05871C: CLC\n #_05871D: ADC.w #$0010\n #_058720: CMP.w #$0100\n\n #_058723: SEP #$20\n #_058725: BCC .on_screen\n\n #_058727: LDA.b #$F0\n #_058729: STA.b ($90), Y\n\n.on_screen\n #_05872B: PLX\n\n #_05872C: LDA.w .char, X\n #_05872F: INY\n #_058730: STA.b ($90), Y\n\n #_058732: LDA.w .flip, X\n #_058735: ORA.b $05\n\n #_058737: INY\n #_058738: STA.b ($90), Y\n\n #_05873A: PHY\n\n #_05873B: TYA\n #_05873C: LSR A\n #_05873D: LSR A\n #_05873E: TAY\n\n #_05873F: LDA.b $0D\n #_058741: ORA.b $0F\n #_058743: STA.b ($92), Y\n\n #_058745: PLY\n #_058746: INY\n\n #_058747: PLX\n #_058748: DEX\n #_058749: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_05874B: PLX\n\n.exit\n #_05874C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_64_Debirando", + "code": "Sprite_64_Debirando:\n #_05874D: JSR SpriteDraw_Debirando\n #_058750: JSR Sprite_CheckIfActive_Bank05\n\n #_058753: LDA.w SprAction, X\n #_058756: JSL JumpTableLocal\n #_05875A: dw Debirando_Underground\n #_05875C: dw Debirando_Emerge\n #_05875E: dw Debirando_Shoot\n #_058760: dw Debirando_Submerge\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Debirando_Underground", + "code": "Debirando_Underground:\n #_058762: LDA.w SprTimerA, X\n #_058765: STA.w $0BA0, X\n #_058768: BNE .exit\n\n #_05876A: INC.w SprAction, X\n\n #_05876D: LDA.b #$1F\n #_05876F: STA.w SprTimerA, X\n\n.exit\n #_058772: RTS", + "file": "bank_05.asm" + }, + { + "name": "Debirando_Emerge", + "code": "Debirando_Emerge:\n #_058775: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_058778: LDA.w SprTimerA, X\n #_05877B: BNE .delay\n\n #_05877D: INC.w SprAction, X\n\n #_058780: LDA.b #$80\n #_058782: STA.w SprTimerA, X\n\n #_058785: RTS", + "file": "bank_05.asm" + }, + { + "name": "Debirando_Shoot", + "code": "Debirando_Shoot:\n #_058792: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_058795: LDA.w SprTimerA, X\n #_058798: BNE .delay\n\n #_05879A: LDA.b #$1F\n #_05879C: STA.w SprTimerA, X\n\n #_05879F: INC.w SprAction, X\n\n #_0587A2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Debirando_Submerge", + "code": "Debirando_Submerge:\n #_0587CA: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_0587CD: LDA.w SprTimerA, X\n #_0587D0: BNE .delay\n\n #_0587D2: STZ.w SprAction, X\n\n #_0587D5: LDA.b #$DF\n #_0587D7: STA.w SprTimerA, X\n\n #_0587DA: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Debirando", + "code": "SpriteDraw_Debirando:\n #_058857: LDA.w SprAction, X\n #_05885A: BEQ .exit\n\n #_05885C: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05885F: LDA.w $0DC0, X\n #_058862: ASL A\n #_058863: ASL A\n #_058864: STA.b $06\n\n #_058866: PHX\n\n; ---------------------------------------------------------\n\n #_058867: LDX.b #$03\n\n.next_object\n #_058869: PHX\n\n #_05886A: TXA\n #_05886B: CLC\n #_05886C: ADC.b $06\n #_05886E: PHA\n\n #_05886F: ASL A\n #_058870: TAX\n\n #_058871: REP #$20\n\n #_058873: LDA.b $00\n #_058875: CLC\n #_058876: ADC.w .offset_x, X\n #_058879: STA.b ($90), Y\n\n #_05887B: AND.w #$0100\n #_05887E: STA.b $0E\n\n #_058880: LDA.b $02\n #_058882: CLC\n #_058883: ADC.w .offset_y, X\n\n #_058886: INY\n #_058887: STA.b ($90), Y\n\n #_058889: CLC\n #_05888A: ADC.w #$0010\n #_05888D: CMP.w #$0100\n\n #_058890: SEP #$20\n #_058892: BCC .on_screen\n\n #_058894: LDA.b #$F0\n #_058896: STA.b ($90), Y\n\n.on_screen\n #_058898: PLX\n\n #_058899: LDA.w .char, X\n #_05889C: INY\n #_05889D: STA.b ($90), Y\n\n #_05889F: LDA.w .prop, X\n #_0588A2: PHA\n\n #_0588A3: AND.b #$0F\n #_0588A5: CMP.b #$01\n #_0588A7: PLA\n\n #_0588A8: EOR.b $05\n #_0588AA: BCS .skip_pal_override\n\n #_0588AC: AND.b #$F0\n\n.skip_pal_override\n #_0588AE: INY\n\n #_0588AF: STA.b ($90), Y\n\n #_0588B1: PHY\n\n #_0588B2: TYA\n #_0588B3: LSR A\n #_0588B4: LSR A\n #_0588B5: TAY\n\n #_0588B6: LDA.w .size, X\n #_0588B9: ORA.b $0F\n #_0588BB: STA.b ($92), Y\n\n #_0588BD: PLY\n #_0588BE: INY\n\n #_0588BF: PLX\n #_0588C0: DEX\n #_0588C1: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_0588C3: PLX\n\n.exit\n #_0588C4: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_62_MasterSword", + "code": "Sprite_62_MasterSword:\n #_0588C5: LDA.w SprDelay, X\n #_0588C8: JSL JumpTableLocal\n #_0588CC: dw MasterSword_Main\n #_0588CE: dw MasterSword_LightFountain\n #_0588D0: dw MasterSword_LightBeam\n #_0588D2: dw MasterSword_Prop\n #_0588D4: dw MasterSword_LightWell\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_Main", + "code": "MasterSword_Main:\n #_0588D6: LDA.b $10\n #_0588D8: CMP.b #$1A\n #_0588DA: BEQ .dont_terminate\n\n; ---------------------------------------------------------\n\n #_0588DC: PHX\n\n #_0588DD: LDX.b $8A\n #_0588DF: LDA.l $7EF280, X\n\n #_0588E3: PLX\n\n #_0588E4: AND.b #$40\n #_0588E6: BEQ .dont_terminate\n\n #_0588E8: JMP.w MasterSword_SelfTerminate\n\n; ---------------------------------------------------------\n\n.dont_terminate\n #_0588EB: LDA.w SprAction, X\n #_0588EE: CMP.b #$05\n #_0588F0: BEQ .dont_draw\n\n #_0588F2: JSR SpriteDraw_MasterSword\n\n.dont_draw\n #_0588F5: LDA.w SprAction, X\n #_0588F8: JSL JumpTableLocal\n #_0588FC: dw MasterSword_InPedestal\n #_0588FE: dw MasterSword_PendantsCircling\n #_058900: dw MasterSword_TurnUpLights\n #_058902: dw MasterSword_MaxBrightness\n #_058904: dw MasterSword_HandleReceipt\n #_058906: dw MasterSword_SelfTerminate\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_InPedestal", + "code": "MasterSword_InPedestal:\n #_058908: JSL CheckIfLinkIsBusy\n #_05890C: BCS .exit\n\n #_05890E: JSL Sprite_CheckDamageToLink_same_layer_long\n #_058912: BCC .exit\n\n; ---------------------------------------------------------\n\n #_058914: LDA.b $2F\n #_058916: CMP.b #$02\n #_058918: BNE .exit\n\n #_05891A: LDA.b $F6\n #_05891C: BPL .exit\n\n #_05891E: LDA.l $7EF374\n #_058922: AND.b #$07\n #_058924: CMP.b #$07\n #_058926: BNE .exit\n\n #_058928: LDA.b #$0A ; SONG 0A\n #_05892A: STA.w $012C\n\n #_05892D: LDA.b #$01\n #_05892F: STA.w $037B\n\n #_058932: LDA.b #$09\n #_058934: JSR MasterSword_SpawnPendantProp\n\n #_058937: LDA.b #$0B\n #_058939: JSR MasterSword_SpawnPendantProp\n\n #_05893C: LDA.b #$0F\n #_05893E: JSR MasterSword_SpawnPendantProp\n\n #_058941: JSR MasterSword_SpawnLightWell\n\n #_058944: INC.w SprAction, X\n\n #_058947: LDA.b #$F0\n #_058949: STA.w SprTimerA, X\n\n.exit\n #_05894C: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_PendantsCircling", + "code": "MasterSword_PendantsCircling:\n #_05894D: LDA.w SprTimerA, X\n #_058950: BNE .delay\n\n #_058952: JSR MasterSword_SpawnLightFountain\n\n #_058955: INC.w SprAction, X\n\n #_058958: LDA.b #$C0\n #_05895A: STA.w SprTimerA, X\n\n.delay\n #_05895D: LDA.b #$0A\n #_05895F: STA.w $0377\n\n #_058962: LDA.b #$01\n #_058964: STA.w $02E4\n\n #_058967: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_TurnUpLights", + "code": "MasterSword_TurnUpLights:\n #_058968: LDA.w SprTimerA, X\n #_05896B: BNE .delay\n\n #_05896D: LDY.b #$FF\n #_05896F: JSR MasterSword_SpawnLightBeam\n\n #_058972: INC.w SprAction, X\n\n #_058975: LDA.b #$08\n #_058977: STA.w SprTimerA, X\n\n.delay\n #_05897A: LDA.b #$0A\n #_05897C: BRA MasterSword_AssertCutscene\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_MaxBrightness", + "code": "MasterSword_MaxBrightness:\n #_05897E: LDA.w SprTimerA, X\n #_058981: BNE .delay\n\n #_058983: LDA.b #$01\n #_058985: LDY.b #$FF\n #_058987: JSR MasterSword_SpawnLightBeam\n\n #_05898A: INC.w SprAction, X\n\n #_05898D: LDA.b #$10\n #_05898F: STA.w SprTimerA, X\n\n.delay\n #_058992: LDA.b #$0B\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_AssertCutscene", + "code": "MasterSword_AssertCutscene:\n #_058994: STA.w $0377\n\n #_058997: LDA.b #$01\n #_058999: STA.w $02E4\n\n #_05899C: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_HandleReceipt", + "code": "MasterSword_HandleReceipt:\n #_05899D: LDA.w SprTimerA, X\n #_0589A0: BNE .delay\n\n #_0589A2: PHX\n\n #_0589A3: LDX.b $8A\n\n #_0589A5: LDA.l $7EF280, X\n #_0589A9: ORA.b #$40\n #_0589AB: STA.l $7EF280, X\n\n #_0589AF: LDY.b #$01 ; ITEMGET 01\n #_0589B1: STZ.w $02E9\n #_0589B4: JSL Link_ReceiveItem\n\n #_0589B8: PLX\n\n #_0589B9: LDA.b #$05\n #_0589BB: STA.l $7EF3C7\n\n #_0589BF: STZ.w $0377\n\n #_0589C2: INC.w SprAction, X\n\n.delay\n #_0589C5: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SelfTerminate", + "code": "MasterSword_SelfTerminate:\n #_0589C6: STZ.w $0DD0, X\n\n #_0589C9: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_LightFountain", + "code": "MasterSword_LightFountain:\n #_0589DC: JSR SpriteDraw_LightFountain\n\n #_0589DF: INC.w $0D90, X\n\n #_0589E2: LDA.w $0D90, X\n #_0589E5: BNE .continue_light_show\n\n #_0589E7: INC.w $0DB0, X\n #_0589EA: STZ.w $0DD0, X\n\n; ---------------------------------------------------------\n\n.continue_light_show\n #_0589ED: LSR A\n #_0589EE: LSR A\n #_0589EF: AND.b #$03\n #_0589F1: STA.w SprMiscC, X\n\n #_0589F4: LDA.w $0D90, X\n #_0589F7: LSR A\n #_0589F8: LSR A\n #_0589F9: LSR A\n #_0589FA: LSR A\n #_0589FB: LSR A\n #_0589FC: AND.b #$07\n #_0589FE: TAY\n\n #_0589FF: LDA.w .anim_step, Y\n #_058A02: STA.w $0DC0, X\n\n; ---------------------------------------------------------\n\n #_058A05: LDA.w .spawn_light_flag, Y\n #_058A08: BEQ .exit\n\n #_058A0A: TAY\n\n #_058A0B: LDA.w $0D90, X\n #_058A0E: LSR A\n #_058A0F: LSR A\n #_058A10: AND.b #$01\n\n #_058A12: JSR MasterSword_SpawnLightBeam\n\n.exit\n #_058A15: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_LightWell", + "code": "MasterSword_LightWell:\n #_058A16: JSR SpriteDraw_LightFountain\n\n #_058A19: INC.w $0D90, X\n\n #_058A1C: LDA.w $0D90, X\n #_058A1F: BNE .delay\n\n #_058A21: INC.w $0DB0, X\n\n #_058A24: STZ.w $0DD0, X\n\n.delay\n #_058A27: LSR A\n #_058A28: LSR A\n #_058A29: AND.b #$03\n #_058A2B: STA.w SprMiscC, X\n\n #_058A2E: LDA.b #$00\n #_058A30: STA.w $0DC0, X\n\n #_058A33: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_LightFountain", + "code": "SpriteDraw_LightFountain:\n #_058A94: LDA.b #$04\n #_058A96: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_058A9A: LDA.w $0DC0, X\n #_058A9D: ASL A\n #_058A9E: ASL A\n\n #_058A9F: ADC.w SprMiscC, X\n\n #_058AA2: ASL A\n #_058AA3: ASL A\n #_058AA4: ASL A\n\n #_058AA5: ADC.b #.oam_groups>>0\n #_058AA7: STA.b $08\n\n #_058AA9: LDA.b #.oam_groups>>8\n #_058AAB: ADC.b #$00\n #_058AAD: STA.b $09\n\n #_058AAF: LDA.b #$01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Tabulated_Bank05", + "code": "SpriteDraw_Tabulated_Bank05:\n #_058AB1: JSL SpriteDraw_Tabulated\n\n #_058AB5: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SpawnLightWell", + "code": "MasterSword_SpawnLightWell:\n #_058AB6: LDA.b #$62 ; SPRITE 62\n #_058AB8: JSL Sprite_SpawnDynamically\n #_058ABC: JSL Sprite_SetSpawnedCoordinates\n\n #_058AC0: LDA.b #$04\n #_058AC2: STA.w SprDelay, Y\n\n #_058AC5: LDA.b #$05\n #_058AC7: STA.w $0F50, Y\n\n #_058ACA: LDA.b #$00\n #_058ACC: STA.w $0E40, Y\n\n #_058ACF: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SpawnLightFountain", + "code": "MasterSword_SpawnLightFountain:\n #_058AD0: LDA.b #$62 ; SPRITE 62\n #_058AD2: JSL Sprite_SpawnDynamically\n #_058AD6: JSL Sprite_SetSpawnedCoordinates\n\n #_058ADA: LDA.b #$01\n #_058ADC: STA.w SprDelay, Y\n\n #_058ADF: LDA.b #$05\n #_058AE1: STA.w $0F50, Y\n\n #_058AE4: LDA.b #$00\n #_058AE6: STA.w $0E40, Y\n\n #_058AE9: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_LightBeam", + "code": "MasterSword_LightBeam:\n #_058AEA: JSL SpriteDraw_SingleLarge_long\n\n #_058AEE: LDA.w $0D90, X\n #_058AF1: BEQ .dont_move\n\n #_058AF3: JSR Sprite_Move_XY_Bank05\n\n #_058AF6: LDA.b $1A\n #_058AF8: AND.b #$03\n #_058AFA: BNE .exit\n\n #_058AFC: JSR MasterSword_SpawnReplacementLightBeam\n\n.dont_move\n #_058AFF: DEC.w SprMiscA, X\n #_058B02: BNE .exit\n\n #_058B04: STZ.w $0DD0, X\n\n.exit\n #_058B07: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SpawnReplacementLightBeam", + "code": "MasterSword_SpawnReplacementLightBeam:\n #_058B20: LDA.b #$62 ; SPRITE 62\n #_058B22: JSL Sprite_SpawnDynamically\n #_058B26: BMI .exit\n\n #_058B28: LDA.b $00\n #_058B2A: CLC\n #_058B2B: ADC.b #$00\n #_058B2D: STA.w SprX, Y\n\n #_058B30: LDA.b $01\n #_058B32: ADC.b #$00\n #_058B34: STA.w SprXH, Y\n\n #_058B37: LDA.b $02\n #_058B39: CLC\n #_058B3A: ADC.b #$00\n #_058B3C: STA.w SprY, Y\n\n #_058B3F: LDA.b $03\n #_058B41: ADC.b #$00\n #_058B43: STA.w SprYH, Y\n\n #_058B46: LDA.b #$02\n #_058B48: STA.w SprDelay, Y\n\n #_058B4B: LDA.b #$03\n #_058B4D: STA.w SprMiscA, Y\n\n #_058B50: LDA.w $0DC0, X\n #_058B53: STA.w $0DC0, Y\n\n #_058B56: LDA.w $0F50, X\n #_058B59: STA.w $0F50, Y\n\n #_058B5C: LDA.b #$00\n #_058B5E: STA.w $0E40, Y\n\n.exit\n #_058B61: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SpawnLightBeam", + "code": "MasterSword_SpawnLightBeam:\n #_058B62: PHY\n #_058B63: PHA\n\n #_058B64: LDA.b #$62 ; SPRITE 62\n #_058B66: JSL Sprite_SpawnDynamically\n #_058B6A: BPL .spawn_a\n\n #_058B6C: JMP.w .exit\n\n.spawn_a\n #_058B6F: LDA.b $00\n #_058B71: SEC\n #_058B72: SBC.b #$04\n #_058B74: STA.w SprX, Y\n\n #_058B77: LDA.b $01\n #_058B79: SBC.b #$00\n #_058B7B: STA.w SprXH, Y\n\n #_058B7E: LDA.b $02\n #_058B80: CLC\n #_058B81: ADC.b #$04\n #_058B83: STA.w SprY, Y\n\n #_058B86: LDA.b $03\n #_058B88: ADC.b #$00\n #_058B8A: STA.w SprYH, Y\n\n #_058B8D: LDA.b #$02\n #_058B8F: STA.w SprDelay, Y\n #_058B92: STA.w $0D90, Y\n\n #_058B95: LDA.b #$00\n #_058B97: STA.w $0E40, Y\n\n #_058B9A: PLA\n #_058B9B: PHX\n #_058B9C: TAX\n\n #_058B9D: LDA.w SpawnLightBeam_speed_x_1, X\n #_058BA0: STA.w SprXSpeed, Y\n\n #_058BA3: LDA.w SpawnLightBeam_speed_y_1, X\n #_058BA6: STA.w SprYSpeed, Y\n\n #_058BA9: LDA.w SpawnLightBeam_anim_step_1, X\n #_058BAC: STA.w $0DC0, Y\n\n #_058BAF: LDA.w SpawnLightBeam_props_1, X\n #_058BB2: STA.w $0F50, Y\n\n #_058BB5: TXA\n\n #_058BB6: PLX\n\n #_058BB7: STA.b $00\n\n #_058BB9: PLA\n #_058BBA: STA.w SprMiscA, Y\n\n #_058BBD: PHA\n\n #_058BBE: LDA.b $00\n #_058BC0: PHA\n\n; ---------------------------------------------------------\n\n #_058BC1: LDA.b #$62 ; SPRITE 62\n #_058BC3: JSL Sprite_SpawnDynamically\n #_058BC7: BPL .spawn_b\n\n #_058BC9: JMP.w .exit\n\n.spawn_b\n #_058BCC: LDA.b $00\n #_058BCE: SEC\n #_058BCF: SBC.b #$04\n #_058BD1: STA.w SprX, Y\n\n #_058BD4: LDA.b $01\n #_058BD6: SBC.b #$00\n #_058BD8: STA.w SprXH, Y\n\n #_058BDB: LDA.b $02\n #_058BDD: CLC\n #_058BDE: ADC.b #$04\n #_058BE0: STA.w SprY, Y\n\n #_058BE3: LDA.b $03\n #_058BE5: ADC.b #$00\n #_058BE7: STA.w SprYH, Y\n\n #_058BEA: LDA.b #$02\n #_058BEC: STA.w SprDelay, Y\n #_058BEF: STA.w $0D90, Y\n\n #_058BF2: LDA.b #$00\n #_058BF4: STA.w $0E40, Y\n\n #_058BF7: PLA\n #_058BF8: PHX\n #_058BF9: TAX\n\n #_058BFA: LDA.w SpawnLightBeam_speed_x_2, X\n #_058BFD: STA.w SprXSpeed, Y\n\n #_058C00: LDA.w SpawnLightBeam_speed_y_2, X\n #_058C03: STA.w SprYSpeed, Y\n\n #_058C06: LDA.w SpawnLightBeam_anim_step_1, X\n #_058C09: STA.w $0DC0, Y\n\n #_058C0C: LDA.w SpawnLightBeam_props_1, X\n #_058C0F: STA.w $0F50, Y\n\n #_058C12: TXA\n\n #_058C13: PLX\n #_058C14: STA.b $00\n\n #_058C16: PLA\n #_058C17: STA.w SprMiscA, Y\n\n #_058C1A: PHA\n\n #_058C1B: LDA.b $00\n #_058C1D: PHA\n\n; ---------------------------------------------------------\n\n #_058C1E: LDA.b #$62 ; SPRITE 62\n #_058C20: JSL Sprite_SpawnDynamically\n #_058C24: BPL .spawn_c\n\n #_058C26: JMP.w .exit\n\n.spawn_c\n #_058C29: LDA.b $00\n #_058C2B: SEC\n #_058C2C: SBC.b #$04\n #_058C2E: STA.w SprX, Y\n\n #_058C31: LDA.b $01\n #_058C33: SBC.b #$00\n #_058C35: STA.w SprXH, Y\n\n #_058C38: LDA.b $02\n #_058C3A: CLC\n #_058C3B: ADC.b #$04\n #_058C3D: STA.w SprY, Y\n\n #_058C40: LDA.b $03\n #_058C42: ADC.b #$00\n #_058C44: STA.w SprYH, Y\n\n #_058C47: LDA.b #$02\n #_058C49: STA.w SprDelay, Y\n #_058C4C: STA.w $0D90, Y\n\n #_058C4F: LDA.b #$00\n #_058C51: STA.w $0E40, Y\n\n #_058C54: PLA\n #_058C55: PHX\n #_058C56: TAX\n\n #_058C57: LDA.w SpawnLightBeam_speed_x_3, X\n #_058C5A: STA.w SprXSpeed, Y\n\n #_058C5D: LDA.w SpawnLightBeam_speed_y_3, X\n #_058C60: STA.w SprYSpeed, Y\n\n #_058C63: LDA.w SpawnLightBeam_anim_step_2, X\n #_058C66: STA.w $0DC0, Y\n\n #_058C69: LDA.w SpawnLightBeam_props_2, X\n #_058C6C: STA.w $0F50, Y\n\n #_058C6F: TXA\n\n #_058C70: PLX\n\n #_058C71: STA.b $00\n\n #_058C73: PLA\n #_058C74: STA.w SprMiscA, Y\n\n #_058C77: PHA\n\n #_058C78: LDA.b $00\n #_058C7A: PHA\n\n; ---------------------------------------------------------\n\n #_058C7B: LDA.b #$62 ; SPRITE 62\n #_058C7D: JSL Sprite_SpawnDynamically\n #_058C81: BMI .exit\n\n #_058C83: LDA.b $00\n #_058C85: SEC\n #_058C86: SBC.b #$04\n #_058C88: STA.w SprX, Y\n\n #_058C8B: LDA.b $01\n #_058C8D: SBC.b #$00\n #_058C8F: STA.w SprXH, Y\n\n #_058C92: LDA.b $02\n #_058C94: CLC\n #_058C95: ADC.b #$04\n #_058C97: STA.w SprY, Y\n\n #_058C9A: LDA.b $03\n #_058C9C: ADC.b #$00\n #_058C9E: STA.w SprYH, Y\n\n #_058CA1: LDA.b #$02\n #_058CA3: STA.w SprDelay, Y\n #_058CA6: STA.w $0D90, Y\n\n #_058CA9: LDA.b #$00\n #_058CAB: STA.w $0E40, Y\n\n #_058CAE: PLA\n #_058CAF: PHX\n #_058CB0: TAX\n\n #_058CB1: LDA.w SpawnLightBeam_speed_x_4, X\n #_058CB4: STA.w SprXSpeed, Y\n\n #_058CB7: LDA.w SpawnLightBeam_speed_y_4, X\n #_058CBA: STA.w SprYSpeed, Y\n\n #_058CBD: LDA.w SpawnLightBeam_anim_step_2, X\n #_058CC0: STA.w $0DC0, Y\n\n #_058CC3: LDA.w SpawnLightBeam_props_2, X\n #_058CC6: STA.w $0F50, Y\n\n #_058CC9: TXA\n\n #_058CCA: PLX\n\n #_058CCB: PLA\n #_058CCC: STA.w SprMiscA, Y\n\n #_058CCF: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_SpawnPendantProp", + "code": "MasterSword_SpawnPendantProp:\n #_058CD3: PHA\n\n #_058CD4: LDA.b #$62 ; SPRITE 62\n #_058CD6: JSL Sprite_SpawnDynamically\n\n #_058CDA: PLA\n #_058CDB: STA.w $0F50, Y\n\n #_058CDE: LDA.b $22\n #_058CE0: STA.w SprX, Y\n\n #_058CE3: LDA.b $23\n #_058CE5: STA.w SprXH, Y\n\n #_058CE8: LDA.b $20\n #_058CEA: CLC\n #_058CEB: ADC.b #$08\n #_058CED: STA.w SprY, Y\n\n #_058CF0: LDA.b $21\n #_058CF2: ADC.b #$00\n #_058CF4: STA.w SprYH, Y\n\n #_058CF7: LDA.b #$04\n #_058CF9: STA.w $0DC0, Y\n\n #_058CFC: LDA.b #$03\n #_058CFE: STA.w SprDelay, Y\n\n #_058D01: LDA.b #$40\n #_058D03: STA.w $0E40, Y\n\n #_058D06: LDA.b #$E4\n #_058D08: STA.w SprTimerA, Y\n\n #_058D0B: PHX\n\n #_058D0C: LDA.w $0F50, Y\n #_058D0F: LSR A\n #_058D10: AND.b #$03\n #_058D12: TAX\n\n #_058D13: LDA.w .speed_x, X\n #_058D16: STA.w SprXSpeed, Y\n\n #_058D19: LDA.w .speed_y, X\n #_058D1C: STA.w SprYSpeed, Y\n\n #_058D1F: PLX\n\n #_058D20: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_Prop", + "code": "MasterSword_Prop:\n #_058D29: LDA.b #$04\n #_058D2B: JSL SpriteDraw_AllocateOAMFromRegionB\n #_058D2F: JSL SpriteDraw_SingleLarge_long\n\n #_058D33: LDA.w SprAction, X\n #_058D36: JSL JumpTableLocal\n #_058D3A: dw MasterSword_Prop_Floating\n #_058D3C: dw MasterSword_Prop_Flashing\n #_058D3E: dw MasterSword_Prop_FlyAwayNow\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_Prop_Floating", + "code": "MasterSword_Prop_Floating:\n #_058D40: JSR Sprite_Move_XY_Bank05\n\n #_058D43: LDA.w SprTimerA, X\n #_058D46: BNE .delay\n\n #_058D48: INC.w SprAction, X\n\n #_058D4B: LDA.b #$D0\n #_058D4D: STA.w SprTimerA, X\n\n #_058D50: LDA.w $0F50, X\n #_058D53: STA.w $0D90, X\n\n.delay\n #_058D56: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_Prop_Flashing", + "code": "MasterSword_Prop_Flashing:\n #_058D57: LDA.w $0F50, X\n #_058D5A: AND.b #$F1\n #_058D5C: STA.w $0F50, X\n\n #_058D5F: TXA\n #_058D60: ASL A\n #_058D61: EOR.b $1A\n\n #_058D63: AND.b #$0E\n #_058D65: ORA.w $0F50, X\n #_058D68: STA.w $0F50, X\n\n #_058D6B: LDA.w SprTimerA, X\n #_058D6E: BNE .delay\n\n #_058D70: INC.w SprAction, X\n\n #_058D73: LDA.w $0D90, X\n #_058D76: STA.w $0F50, X\n\n.delay\n #_058D79: RTS", + "file": "bank_05.asm" + }, + { + "name": "MasterSword_Prop_FlyAwayNow", + "code": "MasterSword_Prop_FlyAwayNow:\n #_058D7A: JSR Sprite_Move_XY_Bank05\n\n #_058D7D: LDA.w SprTimerA, X\n #_058D80: BNE .delay\n\n #_058D82: ASL.w SprXSpeed, X\n #_058D85: ASL.w SprYSpeed, X\n\n #_058D88: LDA.b #$06\n #_058D8A: STA.w SprTimerA, X\n\n.delay\n #_058D8D: INC.w $0E90, X\n #_058D90: BNE .exit\n\n #_058D92: STZ.w $0DD0, X\n\n.exit\n #_058D95: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_MasterSword", + "code": "SpriteDraw_MasterSword:\n #_058DA8: JSR Sprite_PrepOAMCoord_Bank05\n\n #_058DAB: PHX\n\n #_058DAC: LDX.b #$05\n\n.next_object\n #_058DAE: LDA.b $00\n #_058DB0: CLC\n #_058DB1: ADC.w .offset_x, X\n #_058DB4: STA.b ($90), Y\n\n #_058DB6: LDA.b $02\n #_058DB8: CLC\n #_058DB9: ADC.w .offset_y, X\n\n #_058DBC: INY\n #_058DBD: STA.b ($90), Y\n\n #_058DBF: LDA.w .prop, X\n #_058DC2: INY\n #_058DC3: STA.b ($90), Y\n\n #_058DC5: INY\n\n #_058DC6: LDA.b $05\n #_058DC8: STA.b ($90), Y\n\n #_058DCA: INY\n\n #_058DCB: DEX\n #_058DCC: BPL .next_object\n\n #_058DCE: PLX\n\n; ---------------------------------------------------------\n\n #_058DCF: LDY.b #$00\n #_058DD1: LDA.b #$05\n #_058DD3: JSL Sprite_CorrectOAMEntries_long\n\n #_058DD7: RTS", + "file": "bank_05.asm" + }, + { + "name": "RollerSpeed", + "code": "RollerSpeed:\n.x ; bleeds into next\n #_058DD8: db -16, 16\n\n.y\n #_058DDA: db 0, 0, -16, 16\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5D_Roller_VerticalDownFirst", + "code": "Sprite_5D_Roller_VerticalDownFirst:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5E_Roller_VerticalUpFirst", + "code": "Sprite_5E_Roller_VerticalUpFirst:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5F_Roller_HorizontalRightFirst", + "code": "Sprite_5F_Roller_HorizontalRightFirst:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_60_Roller_HorizontalLeftFirst", + "code": "Sprite_60_Roller_HorizontalLeftFirst:\n #_058DDE: LDA.w SprMiscC, X\n #_058DE1: AND.b #$02\n #_058DE3: STA.b $00\n\n #_058DE5: LDA.w SprDelay, X\n #_058DE8: LSR A\n #_058DE9: AND.b #$01\n #_058DEB: ORA.b $00\n #_058DED: STA.w $0DC0, X\n\n #_058DF0: JSR SpriteDraw_Roller\n #_058DF3: JSR Sprite_CheckIfActive_Bank05\n #_058DF6: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n; ---------------------------------------------------------\n\n #_058DF9: LDA.w SprTimerA, X\n #_058DFC: BNE .dont_turn\n\n #_058DFE: LDA.b #$70\n #_058E00: STA.w SprTimerA, X\n\n #_058E03: LDA.w SprMiscC, X\n #_058E06: EOR.b #$01\n #_058E08: STA.w SprMiscC, X\n\n.dont_turn\n #_058E0B: LDY.w SprMiscC, X\n\n #_058E0E: LDA.w RollerSpeed_x, Y\n #_058E11: STA.w SprXSpeed, X\n\n #_058E14: LDA.w RollerSpeed_y, Y\n #_058E17: STA.w SprYSpeed, X\n\n #_058E1A: JSR Sprite_Move_XY_Bank05\n\n #_058E1D: INC.w SprDelay, X\n\n #_058E20: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Roller", + "code": "SpriteDraw_Roller:\n #_058EE3: JSR Sprite_PrepOAMCoord_Bank05\n\n #_058EE6: LDA.w $0DC0, X\n #_058EE9: ASL A\n #_058EEA: ASL A\n #_058EEB: ASL A\n #_058EEC: STA.b $06\n\n #_058EEE: TAY\n\n #_058EEF: LDA.w .char, Y\n #_058EF2: STA.b $08\n\n; ---------------------------------------------------------\n\n #_058EF4: PHX\n\n #_058EF5: LDY.w SprAction, X\n #_058EF8: LDX.w .obj_count, Y\n\n #_058EFB: LDY.b #$00\n\n.next_object\n #_058EFD: PHX\n\n #_058EFE: TXA\n #_058EFF: CLC\n #_058F00: ADC.b $06\n #_058F02: PHA\n\n #_058F03: ASL A\n #_058F04: TAX\n\n #_058F05: REP #$20\n\n #_058F07: LDA.b $00\n #_058F09: CLC\n #_058F0A: ADC.w .spacing_x, X\n #_058F0D: STA.b ($90), Y\n\n #_058F0F: AND.w #$0100\n #_058F12: STA.b $0E\n\n #_058F14: LDA.b $02\n #_058F16: CLC\n #_058F17: ADC.w .spacing_y, X\n\n #_058F1A: INY\n #_058F1B: STA.b ($90), Y\n\n #_058F1D: CLC\n #_058F1E: ADC.w #$0010\n #_058F21: CMP.w #$0100\n\n #_058F24: SEP #$20\n #_058F26: BCC .on_screen\n\n #_058F28: LDA.b #$F0\n #_058F2A: STA.b ($90), Y\n\n.on_screen\n #_058F2C: PLX\n\n #_058F2D: LDA.b $08\n #_058F2F: BNE .end_segment\n\n #_058F31: LDA.w .char, X\n\n.end_segment\n #_058F34: STZ.b $08\n\n #_058F36: INY\n #_058F37: STA.b ($90), Y\n\n #_058F39: LDA.w .flip, X\n #_058F3C: ORA.b $05\n #_058F3E: INY\n #_058F3F: STA.b ($90), Y\n\n #_058F41: PHY\n\n #_058F42: TYA\n #_058F43: LSR A\n #_058F44: LSR A\n #_058F45: TAY\n\n #_058F46: LDA.b #$02\n #_058F48: ORA.b $0F\n #_058F4A: STA.b ($92), Y\n\n #_058F4C: PLY\n #_058F4D: INY\n\n #_058F4E: PLX\n #_058F4F: DEX\n #_058F50: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_058F52: PLX\n\n #_058F53: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_61_Beamos", + "code": "Sprite_61_Beamos:\n #_058F54: LDA.w $0DB0, X\n #_058F57: BEQ Beamos_Turret\n\n #_058F59: CMP.b #$01\n #_058F5B: BNE .collided_laser\n\n #_058F5D: JMP.w Beamos_Laser\n\n.collided_laser\n #_058F60: JMP.w Beamos_LaserHit\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Beamos_Turret", + "code": "Beamos_Turret:\n #_058F63: JSR SpriteDraw_Beamos\n #_058F66: JSR Sprite_CheckIfActive_Bank05\n #_058F69: JSR Sprite_CheckTileCollision_Bank05\n #_058F6C: JSL Sprite_CheckDamageToLink_long\n\n #_058F70: LDA.w SprAction, X\n #_058F73: BEQ Beamos_OnPatrol\n\n #_058F75: CMP.b #$03\n #_058F77: BNE Beamos_OnCoolDown\n\n.firing\n #_058F79: LDA.w SprTimerA, X\n #_058F7C: BNE .not_firing\n\n #_058F7E: INC.w SprAction, X\n\n #_058F81: LDA.b #$50\n #_058F83: STA.w SprTimerA, X\n\n #_058F86: JSL SpritePrep_LoadPalette\n\n #_058F8A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Beamos_OnCoolDown", + "code": "Beamos_OnCoolDown:\n #_058F9E: LDA.w SprTimerA, X\n #_058FA1: BNE .exit\n\n #_058FA3: STZ.w SprAction, X\n\n.exit\n #_058FA6: RTS", + "file": "bank_05.asm" + }, + { + "name": "Beamos_OnPatrol", + "code": "Beamos_OnPatrol:\n #_058FA7: TXA\n #_058FA8: EOR.b $1A\n #_058FAA: AND.b #$03\n #_058FAC: BNE .dont_rotate\n\n #_058FAE: LDA.w SprMiscC, X\n #_058FB1: STA.b $0F\n\n #_058FB3: JSR Sprite_SpawnProbeAlways\n\n #_058FB6: INC.w SprMiscC, X\n\n.dont_rotate\n #_058FB9: LDA.w SprMiscC, X\n #_058FBC: AND.b #$3F\n #_058FBE: STA.w SprMiscC, X\n\n; ---------------------------------------------------------\n\n#EXIT_058FC1:\n #_058FC1: RTS", + "file": "bank_05.asm" + }, + { + "name": "Beamos_FireLaser", + "code": "Beamos_FireLaser:\n #_058FC2: LDA.w $0B6A\n #_058FC5: CMP.b #$04\n #_058FC7: BCS EXIT_058FC1\n\n #_058FC9: LDA.b #$61 ; SPRITE 61\n #_058FCB: JSL Sprite_SpawnDynamically\n #_058FCF: BMI EXIT_058FC1\n\n #_058FD1: LDA.b #$19 ; SFX3.19\n #_058FD3: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n #_058FD7: PHX\n\n #_058FD8: LDX.b #$00\n\n #_058FDA: LDA.w $0FA8\n #_058FDD: BPL .positive_x\n\n #_058FDF: DEX\n\n.positive_x\n #_058FE0: CLC\n #_058FE1: ADC.b $00\n #_058FE3: STA.w SprX, Y\n\n #_058FE6: TXA\n #_058FE7: ADC.b $01\n #_058FE9: STA.w SprXH, Y\n\n #_058FEC: LDX.b #$00\n\n #_058FEE: LDA.w $0FA9\n #_058FF1: BPL .positive_y\n\n #_058FF3: DEX\n\n.positive_y\n #_058FF4: CLC\n #_058FF5: ADC.b $02\n #_058FF7: STA.w SprY, Y\n\n #_058FFA: TXA\n #_058FFB: ADC.b $03\n #_058FFD: STA.w SprYH, Y\n\n #_059000: TYX\n\n; ---------------------------------------------------------\n\n #_059001: LDA.b #$20\n #_059003: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_059007: LDA.b #$3F\n #_059009: STA.w $0E40, Y\n\n #_05900C: LDA.b #$54\n #_05900E: STA.w $0F60, Y\n\n #_059011: LDA.b #$01\n #_059013: STA.w $0DB0, Y\n\n #_059016: LDA.b #$48\n #_059018: STA.w $0CAA, Y\n\n #_05901B: LDA.b #$03\n #_05901D: STA.w $0F50, Y\n\n #_059020: LDA.b #$04\n #_059022: STA.w $0CD2, Y\n\n #_059025: LDA.b #$0C\n #_059027: STA.w SprTimerB, Y\n\n #_05902A: LDA.w $0B6A\n #_05902D: STA.w $0DC0, Y\n\n #_059030: INC.w $0B6A\n\n #_059033: LDA.b #$1F\n #_059035: STA.b $00\n\n; ---------------------------------------------------------\n\n #_059037: LDX.w $0DC0, Y\n\n #_05903A: CLC\n #_05903B: ADC.w SpriteSubspriteSlots_Bank05, X\n #_05903E: TAX\n\n.next_subsprite\n #_05903F: LDA.w SprX, Y\n #_059042: STA.l $7FFD80, X\n\n #_059046: LDA.w SprXH, Y\n #_059049: STA.l $7FFE00, X\n\n #_05904D: LDA.w SprY, Y\n #_059050: STA.l $7FFE80, X\n\n #_059054: LDA.w SprYH, Y\n #_059057: STA.l $7FFF00, X\n\n #_05905B: DEX\n\n #_05905C: DEC.b $00\n #_05905E: BPL .next_subsprite\n\n; ---------------------------------------------------------\n\n #_059060: PLX\n\n #_059061: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Beamos", + "code": "SpriteDraw_Beamos:\n #_059068: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05906B: LDY.b #$00\n\n #_05906D: LDA.w SprMiscC, X\n #_059070: CMP.b #$20\n #_059072: BCS .use_region_c\n\n.use_region_b\n #_059074: LDA.b #$0C\n #_059076: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_05907A: LDY.b #$04\n #_05907C: BRA .continue\n\n.use_region_c\n #_05907E: LDA.b #$0C\n #_059080: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_059084: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.continue\n #_059086: PHX\n\n #_059087: LDX.b #$01\n\n.next_object\n #_059089: PHX\n\n #_05908A: TXA\n #_05908B: ASL A\n #_05908C: TAX\n\n #_05908D: REP #$20\n\n #_05908F: LDA.b $00\n #_059091: STA.b ($90), Y\n\n #_059093: AND.w #$0100\n #_059096: STA.b $0E\n\n #_059098: LDA.b $02\n #_05909A: CLC\n #_05909B: ADC.w .offset_eye, X\n\n #_05909E: INY\n #_05909F: STA.b ($90), Y\n\n #_0590A1: CLC\n #_0590A2: ADC.w #$0010\n #_0590A5: CMP.w #$0100\n\n #_0590A8: SEP #$20\n #_0590AA: BCC .on_screen\n\n #_0590AC: LDA.b #$F0\n #_0590AE: STA.b ($90), Y\n\n.on_screen\n #_0590B0: PLX\n\n #_0590B1: LDA.w .char, X\n #_0590B4: INY\n #_0590B5: STA.b ($90), Y\n\n #_0590B7: LDA.b $05\n #_0590B9: INY\n #_0590BA: STA.b ($90), Y\n\n #_0590BC: PHY\n\n #_0590BD: TYA\n #_0590BE: LSR A\n #_0590BF: LSR A\n #_0590C0: TAY\n\n #_0590C1: LDA.b #$02\n #_0590C3: ORA.b $0F\n #_0590C5: STA.b ($92), Y\n\n #_0590C7: PLY\n #_0590C8: INY\n\n #_0590C9: DEX\n #_0590CA: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_0590CC: PLX\n\n #_0590CD: JSR SpriteDraw_Beamos_Eyeball\n\n #_0590D0: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteSubspriteSlots_Bank05", + "code": "SpriteSubspriteSlots_Bank05:\n #_0591B1: db $00, $20, $40, $60\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Beamos_Laser", + "code": "Beamos_Laser:\n #_0591B5: LDA.w SprTimerB, X\n #_0591B8: BNE .exit_a\n\n #_0591BA: JSR SpriteDraw_BeamosLaser\n\n #_0591BD: LDA.w $0DD0, X\n #_0591C0: BNE .active\n\n #_0591C2: DEC.w $0B6A\n\n #_0591C5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_PrepOAMCoord_Bank05_wrapper", + "code": "Sprite_PrepOAMCoord_Bank05_wrapper:\n #_059257: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05925A: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BeamosLaser", + "code": "SpriteDraw_BeamosLaser:\n #_05925B: JSR Sprite_PrepOAMCoord_Bank05_wrapper\n\n #_05925E: PHX\n\n #_05925F: LDA.b #$1F\n #_059261: STA.b $0D\n\n #_059263: LDY.w $0DC0, X\n\n #_059266: CLC\n #_059267: ADC.w SpriteSubspriteSlots_Bank05, Y\n #_05926A: TAX\n\n #_05926B: LDY.b #$00\n\n.next_object\n #_05926D: LDA.l $7FFD80, X\n #_059271: STA.b $00\n\n #_059273: LDA.l $7FFE00, X\n #_059277: STA.b $01\n\n #_059279: LDA.l $7FFE80, X\n #_05927D: STA.b $02\n\n #_05927F: LDA.l $7FFF00, X\n #_059283: STA.b $03\n\n #_059285: REP #$20\n\n #_059287: LDA.b $00\n #_059289: SEC\n #_05928A: SBC.b $E2\n #_05928C: STA.b ($90), Y\n\n #_05928E: AND.w #$0100\n #_059291: STA.b $0E\n\n #_059293: LDA.b $02\n #_059295: SEC\n #_059296: SBC.b $E8\n\n #_059298: INY\n #_059299: STA.b ($90), Y\n\n #_05929B: CLC\n #_05929C: ADC.w #$0010\n #_05929F: CMP.w #$0100\n\n #_0592A2: SEP #$20\n #_0592A4: BCC .on_screen\n\n #_0592A6: LDA.b #$F0\n #_0592A8: STA.b ($90), Y\n\n.on_screen\n #_0592AA: LDA.b #$5C\n #_0592AC: INY\n #_0592AD: STA.b ($90), Y\n\n #_0592AF: LDA.b $05\n #_0592B1: INY\n #_0592B2: STA.b ($90), Y\n\n #_0592B4: PHY\n\n #_0592B5: TYA\n #_0592B6: LSR A\n #_0592B7: LSR A\n #_0592B8: TAY\n\n #_0592B9: LDA.b $0F\n #_0592BB: STA.b ($92), Y\n\n #_0592BD: PLY\n #_0592BE: INY\n\n #_0592BF: DEX\n\n #_0592C0: DEC.b $0D\n #_0592C2: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_0592C4: PLX\n\n #_0592C5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Beamos_LaserHit", + "code": "Beamos_LaserHit:\n #_0592DA: LDA.w SprTimerA, X\n #_0592DD: BNE .delay\n\n #_0592DF: STZ.w $0DD0, X\n\n.delay\n #_0592E2: JSR Sprite_PrepOAMCoord_Bank05\n\n #_0592E5: PHX\n\n; ---------------------------------------------------------\n\n #_0592E6: LDX.b #$03\n\n.next_object\n #_0592E8: PHX\n\n #_0592E9: TXA\n #_0592EA: ASL A\n #_0592EB: TAX\n\n #_0592EC: REP #$20\n\n #_0592EE: LDA.b $00\n #_0592F0: CLC\n #_0592F1: ADC.w .offset_x, X\n #_0592F4: STA.b ($90), Y\n\n #_0592F6: AND.w #$0100\n #_0592F9: STA.b $0E\n\n #_0592FB: LDA.b $02\n #_0592FD: CLC\n #_0592FE: ADC.w .offset_y, X\n\n #_059301: INY\n #_059302: STA.b ($90), Y\n\n #_059304: CLC\n #_059305: ADC.w #$0010\n #_059308: CMP.w #$0100\n\n #_05930B: SEP #$20\n #_05930D: BCC .on_screen\n\n #_05930F: LDA.b #$F0\n #_059311: STA.b ($90), Y\n\n.on_screen\n #_059313: PLX\n\n #_059314: LDA.b #$D6\n #_059316: INY\n #_059317: STA.b ($90), Y\n\n #_059319: LDA.b $05\n #_05931B: AND.b #$30\n #_05931D: ORA.w .prop, X\n\n #_059320: INY\n #_059321: STA.b ($90), Y\n\n #_059323: PHY\n\n #_059324: TYA\n #_059325: LSR A\n #_059326: LSR A\n #_059327: TAY\n\n #_059328: LDA.b $0F\n #_05932A: STA.b ($92), Y\n\n #_05932C: PLY\n #_05932D: INY\n\n #_05932E: DEX\n #_05932F: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_059331: PLX\n\n #_059332: RTS", + "file": "bank_05.asm" + }, + { + "name": "SparkFlip", + "code": "SparkFlip:\n #_059333: db $00, $40, $80, $C0\n", + "file": "bank_05.asm" + }, + { + "name": "SparkDirection", + "code": "SparkDirection:\n #_059337: db $01, $03, $02, $00\n #_05933B: db $07, $05, $06, $04\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5B_Spark_Clockwise", + "code": "Sprite_5B_Spark_Clockwise:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5C_Spark_Counterclockwise", + "code": "Sprite_5C_Spark_Counterclockwise:\n #_05933F: JSL SpriteDraw_SingleLarge_long\n #_059343: JSR Sprite_CheckIfActive_Bank05\n\n #_059346: LDA.b $1A\n #_059348: AND.b #$01\n #_05934A: BNE .dont_flash\n\n #_05934C: LDA.w $0F50, X\n #_05934F: EOR.b #$06\n #_059351: STA.w $0F50, X\n\n.dont_flash\n #_059354: LDA.w SprAction, X\n #_059357: BNE Spark_Main\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Spark_Init", + "code": "Spark_Init:\n #_059359: INC.w SprAction, X\n\n #_05935C: LDA.b #$01\n #_05935E: STA.w SprYSpeed, X\n #_059361: STA.w SprXSpeed, X\n\n #_059364: JSR Sprite_CheckTileCollision_Bank05\n #_059367: PHA\n\n #_059368: LDA.b #$FF\n #_05936A: STA.w SprYSpeed, X\n #_05936D: STA.w SprXSpeed, X\n\n #_059370: JSR Sprite_CheckTileCollision_Bank05\n\n #_059373: PLA\n #_059374: ORA.w SprCollision, X\n\n #_059377: CMP.b #$04\n #_059379: BCS .collided_vertically\n\n #_05937B: LDY.b #$00\n\n #_05937D: AND.b #$01\n #_05937F: BNE .collided_right\n\n; ---------------------------------------------------------\n\n.collided_left\n #_059381: INY\n\n.collided_right\n #_059382: BRA .continue\n\n.collided_vertically\n #_059384: LDY.b #$02\n\n #_059386: AND.b #$04\n #_059388: BNE .continue\n\n.collided_up\n #_05938A: INY\n\n.continue\n #_05938B: LDA.w $0E20, X\n #_05938E: CMP.b #$5C ; SPRITE 5C\n #_059390: BEQ .counterclockwise\n\n #_059392: INY\n #_059393: INY\n #_059394: INY\n #_059395: INY\n\n.counterclockwise\n #_059396: LDA.w SparkDirection, Y\n #_059399: STA.w SprMiscC, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Spark_Main", + "code": "Spark_Main:\n #_05939C: LDA.b $1A\n #_05939E: LSR A\n #_05939F: LSR A\n #_0593A0: AND.b #$03\n #_0593A2: TAY\n\n #_0593A3: LDA.w $0F50, X\n #_0593A6: AND.b #$3F\n #_0593A8: ORA.w SparkFlip, Y\n #_0593AB: STA.w $0F50, X\n\n #_0593AE: JSR Sprite_Move_XY_Bank05\n #_0593B1: JSL Sprite_CheckDamageToLink_long\n\n #_0593B5: LDY.w SprMiscC, X\n\n #_0593B8: LDA.w ProbeAndSparkCheckDirXSpeed, Y\n #_0593BB: STA.w SprXSpeed, X\n\n #_0593BE: LDA.w ProbeAndSparkCheckDirYSpeed, Y\n #_0593C1: STA.w SprYSpeed, X\n\n; ---------------------------------------------------------\n\n #_0593C4: JSR Sprite_CheckTileCollision_Bank05\n\n #_0593C7: LDA.w $0E10, X\n #_0593CA: BEQ .check_orthogonal_collision\n\n #_0593CC: CMP.b #$06\n #_0593CE: BNE .check_colinear_collision\n\n #_0593D0: LDY.w SprMiscC, X\n\n #_0593D3: LDA.w OrthogonalNextDirections, Y\n #_0593D6: STA.w SprMiscC, X\n\n #_0593D9: BRA .check_colinear_collision\n\n.check_orthogonal_collision\n #_0593DB: LDY.w SprMiscC, X\n\n #_0593DE: LDA.w SprCollision, X\n #_0593E1: AND.w OrthogonalDirections, Y\n #_0593E4: BNE .check_colinear_collision\n\n #_0593E6: LDA.b #$0A\n #_0593E8: STA.w $0E10, X\n\n.check_colinear_collision\n #_0593EB: LDY.w SprMiscC, X\n\n #_0593EE: LDA.w SprCollision, X\n #_0593F1: AND.w ColinearDirections, Y\n #_0593F4: BEQ .no_colinear_collision\n\n #_0593F6: LDA.w ColinearNextDirections, Y\n #_0593F9: STA.w SprMiscC, X\n\n; ---------------------------------------------------------\n\n.no_colinear_collision\n #_0593FC: LDY.w SprMiscC, X\n\n #_0593FF: LDA.w ProbeAndSparkXSpeed, Y\n #_059402: ASL A\n #_059403: STA.w SprXSpeed, X\n\n #_059406: LDA.w ProbeAndSparkYSpeed, Y\n #_059409: ASL A\n #_05940A: STA.w SprYSpeed, X\n\n #_05940D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_59_LostWoodsBird", + "code": "Sprite_59_LostWoodsBird:\n #_05940E: LDA.w SprTimerB, X\n #_059411: BNE EXIT_05944B\n\n #_059413: LDA.w $0F50, X\n #_059416: AND.b #$BF\n\n #_059418: LDY.w SprXSpeed, X\n #_05941B: BMI .moving_left\n\n #_05941D: ORA.b #$40\n\n.moving_left\n #_05941F: STA.w $0F50, X\n\n #_059422: JSL SpriteDraw_SingleLarge_long\n #_059426: JSR Sprite_CheckIfActive_Bank05\n #_059429: JSR Sprite_Move_XY_Bank05\n #_05942C: JSR Sprite_Move_Z_Bank05\n\n #_05942F: LDA.w SprAction, X\n #_059432: JSL JumpTableLocal\n #_059436: dw LostWoodsBird_Descend\n #_059438: dw LostWoodsBird_Ascend\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "LostWoodsBird_Descend", + "code": "LostWoodsBird_Descend:\n #_05943A: STZ.w $0DC0, X\n\n #_05943D: LDA.w $0F80, X\n #_059440: DEC A\n #_059441: STA.w $0F80, X\n\n #_059444: CMP.b #$F1\n #_059446: BPL EXIT_05944B\n\n #_059448: INC.w SprAction, X\n\n; ---------------------------------------------------------\n\n#EXIT_05944B:\n #_05944B: RTS", + "file": "bank_05.asm" + }, + { + "name": "LostWoodsBird_Ascend", + "code": "LostWoodsBird_Ascend:\n #_05944C: LDA.w $0F80, X\n #_05944F: INC A\n #_059450: INC A\n #_059451: STA.w $0F80, X\n\n #_059454: CMP.b #$10\n #_059456: BMI .delay\n\n #_059458: STZ.w SprAction, X\n\n.delay\n #_05945B: INC.w SprDelay, X\n\n #_05945E: LDA.w SprDelay, X\n #_059461: LSR A\n #_059462: AND.b #$01\n #_059464: STA.w $0DC0, X\n\n #_059467: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_5A_LostWoodsSquirrel", + "code": "Sprite_5A_LostWoodsSquirrel:\n #_059468: LDA.w SprTimerB, X\n #_05946B: BNE .exit\n\n #_05946D: LDA.w $0F50, X\n #_059470: AND.b #$BF\n\n #_059472: LDY.w SprXSpeed, X\n #_059475: BMI .moving_left\n\n #_059477: ORA.b #$40\n\n.moving_left\n #_059479: STA.w $0F50, X\n\n; ---------------------------------------------------------\n\n #_05947C: JSL SpriteDraw_SingleLarge_long\n #_059480: JSR Sprite_CheckIfActive_Bank05\n #_059483: JSR Sprite_Move_XY_Bank05\n #_059486: JSR Sprite_Move_Z_Bank05\n\n #_059489: LDA.w $0F80, X\n #_05948C: DEC A\n #_05948D: DEC A\n #_05948E: STA.w $0F80, X\n\n #_059491: LDA.w $0F70, X\n #_059494: BPL .airborne\n\n #_059496: STZ.w $0F70, X\n\n #_059499: LDA.b #$10\n #_05949B: STA.w $0F80, X\n\n #_05949E: LDA.b #$0C\n #_0594A0: STA.w SprTimerA, X\n\n.airborne\n #_0594A3: LDA.b #$00\n\n #_0594A5: LDY.w SprTimerA, X\n #_0594A8: BEQ .landing\n\n #_0594AA: INC A\n\n.landing\n #_0594AB: STA.w $0DC0, X\n\n.exit\n #_0594AE: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_58_Crab", + "code": "Sprite_58_Crab:\n #_0594B5: JSR SpriteDraw_Crab\n\n #_0594B8: JSR Sprite_CheckIfActive_Bank05\n #_0594BB: JSR Sprite_CheckIfRecoiling_Bank05\n #_0594BE: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_0594C1: JSR Sprite_Move_XY_Bank05\n #_0594C4: JSR Sprite_CheckTileCollision_Bank05\n #_0594C7: BNE .collision\n\n #_0594C9: LDA.w SprTimerA, X\n #_0594CC: BNE .dont_turn\n\n.collision\n #_0594CE: JSL GetRandomNumber\n #_0594D2: AND.b #$3F\n #_0594D4: ADC.b #$20\n #_0594D6: STA.w SprTimerA, X\n\n #_0594D9: AND.b #$03\n #_0594DB: STA.w SprMiscC, X\n\n.dont_turn\n #_0594DE: LDY.w SprMiscC, X\n\n #_0594E1: LDA.w .speed_x, Y\n #_0594E4: STA.w SprXSpeed, X\n\n #_0594E7: LDA.w .speed_y, Y\n #_0594EA: STA.w SprYSpeed, X\n\n #_0594ED: INC.w SprDelay, X\n\n #_0594F0: LDA.w SprDelay, X\n #_0594F3: LSR A\n\n #_0594F4: CPY.b #$02\n #_0594F6: BCC .horizontal\n\n.vertical\n #_0594F8: LSR A\n #_0594F9: LSR A\n\n.horizontal\n #_0594FA: AND.b #$01\n #_0594FC: STA.w $0DC0, X\n\n #_0594FF: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Crab", + "code": "SpriteDraw_Crab:\n #_059510: JSR Sprite_PrepOAMCoord_Bank05\n\n #_059513: LDA.w $0DC0, X\n #_059516: ASL A\n #_059517: STA.b $06\n\n #_059519: PHX\n\n #_05951A: LDX.b #$01\n\n.next_object\n #_05951C: PHX\n\n #_05951D: TXA\n #_05951E: CLC\n #_05951F: ADC.b $06\n #_059521: PHA\n\n #_059522: ASL A\n #_059523: TAX\n\n #_059524: REP #$20\n\n #_059526: LDA.b $00\n #_059528: CLC\n #_059529: ADC.w .offset_x, X\n #_05952C: STA.b ($90), Y\n\n #_05952E: AND.w #$0100\n #_059531: STA.b $0E\n\n #_059533: LDA.b $02\n #_059535: INY\n #_059536: STA.b ($90), Y\n\n #_059538: CLC\n #_059539: ADC.w #$0010\n #_05953C: CMP.w #$0100\n\n #_05953F: SEP #$20\n #_059541: BCC .on_screen\n\n #_059543: LDA.b #$F0\n #_059545: STA.b ($90), Y\n\n.on_screen\n #_059547: PLX\n\n #_059548: LDA.w .char, X\n #_05954B: INY\n #_05954C: STA.b ($90), Y\n\n #_05954E: LDA.w .flip, X\n #_059551: ORA.b $05\n #_059553: INY\n #_059554: STA.b ($90), Y\n\n #_059556: PHY\n\n #_059557: TYA\n #_059558: LSR A\n #_059559: LSR A\n #_05955A: TAY\n\n #_05955B: LDA.b #$02\n #_05955D: ORA.b $0F\n #_05955F: STA.b ($92), Y\n\n #_059561: PLY\n #_059562: INY\n\n #_059563: PLX\n #_059564: DEX\n #_059565: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_059567: PLX\n\n #_059568: JSL SpriteDraw_Shadow_long\n\n #_05956C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_57_DesertStatue", + "code": "Sprite_57_DesertStatue:\n #_05956D: JSR SpriteDraw_DesertStatue\n #_059570: JSR Sprite_CheckIfActive_Bank05\n #_059573: JSL Sprite_CheckDamageToLink_same_layer_long\n\n #_059577: PHP\n #_059578: BCC .no_collision\n\n #_05957A: JSL Sprite_CancelHookshot\n #_05957E: JSL Sprite_RepelDash_long\n\n.no_collision\n #_059582: PLP\n #_059583: LDA.w SprTimerA, X\n #_059586: BNE .exit\n\n #_059588: LDA.w SprAction, X\n #_05958B: BMI .exit\n #_05958D: BNE DesertStatue_Moving\n\n #_05958F: LDA.w $02F0\n #_059592: BNE DesertStatue_Activate\n\n.exit\n #_059594: RTS", + "file": "bank_05.asm" + }, + { + "name": "DesertStatue_Activate", + "code": "DesertStatue_Activate:\n #_059595: STA.w SprAction, X\n\n #_059598: LDA.b #$80\n #_05959A: STA.w SprTimerA, X\n\n #_05959D: LDA.b #$07 ; SFX1.07\n #_05959F: STA.w $012D\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "DesertStatue_Moving", + "code": "DesertStatue_Moving:\n #_0595A2: BCC .no_collision\n\n #_0595A4: LDA.b $46\n #_0595A6: BNE .no_collision\n\n #_0595A8: LDA.b #$10\n #_0595AA: STA.b $46\n\n #_0595AC: LDA.b #$20\n #_0595AE: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_0595B2: LDA.b $01\n #_0595B4: STA.b $28\n\n #_0595B6: LDA.b $00\n #_0595B8: STA.b $27\n\n; ---------------------------------------------------------\n\n.no_collision\n #_0595BA: LDY.w SprMiscC, X\n\n #_0595BD: LDA.w .speed_x, Y\n #_0595C0: STA.w SprXSpeed, X\n\n #_0595C3: LDA.w .speed_y, Y\n #_0595C6: STA.w SprYSpeed, X\n\n #_0595C9: JSR Sprite_Move_XY_Bank05\n #_0595CC: JSR Sprite_CheckTileCollision_Bank05\n #_0595CF: BEQ .stay_true\n\n #_0595D1: LDY.w SprMiscC, X\n\n #_0595D4: LDA.w .next_direction, Y\n #_0595D7: STA.w SprMiscC, X\n\n; ---------------------------------------------------------\n\n.stay_true\n #_0595DA: LDA.b #$01\n #_0595DC: STA.w $02E4\n\n #_0595DF: INC.w SprDelay, X\n\n #_0595E2: LDA.w SprDelay, X\n #_0595E5: AND.b #$01\n #_0595E7: BNE .exit\n\n #_0595E9: INC.w $0ED0, X\n\n #_0595EC: LDA.w $0ED0, X\n #_0595EF: CMP.b #$82\n #_0595F1: BNE .exit\n\n #_0595F3: LDA.b #$80\n #_0595F5: STA.w SprAction, X\n\n #_0595F8: STZ.w $02E4\n\n.exit\n #_0595FB: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_DesertStatue", + "code": "SpriteDraw_DesertStatue:\n #_059626: LDA.w SprTimerA, X\n #_059629: CMP.b #$01\n #_05962B: BNE .no_sfx\n\n #_05962D: LDY.b #$1B ; SFX3.1B\n #_05962F: STY.w $012F\n\n #_059632: LDY.b #$05 ; SFX1.05\n #_059634: STY.w $012D\n\n.no_sfx\n #_059637: LSR A\n #_059638: AND.b #$01\n #_05963A: CLC\n #_05963B: ADC.w $0FD8\n #_05963E: STA.w $0FD8\n\n #_059641: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_059644: LDA.b $0F\n #_059646: CLC\n #_059647: ADC.b #$20\n #_059649: CMP.b #$40\n #_05964B: BCS .use_current_region\n\n #_05964D: LDA.b $0E\n #_05964F: CLC\n #_059650: ADC.b #$20\n #_059652: CMP.b #$40\n #_059654: BCS .use_current_region\n\n #_059656: LDA.b #$10\n #_059658: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.use_current_region\n #_05965C: REP #$20\n\n #_05965E: LDA.w #.oam_groups\n #_059661: STA.b $08\n\n #_059663: SEP #$20\n\n #_059665: LDA.b #$04\n #_059667: JMP.w SpriteDraw_Tabulated_Bank05\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BlockFireball", + "code": "BlockFireball:\n\n.offset_x_low\n #_05966A: db 4, 4, -4, 16\n\n.shield_sides ; bleeds into next\n #_05966E: db $03, $02\n\n.offset_x_high ; bleeds into next\n #_059670: db 0, 0, -1\n\n.offset_y_low ; bleeds into next\n #_059673: db 0, 16\n\n.hitbox_w ; bleeds into next\n #_059675: db 8, 8\n\n.hitbox_h\n #_059677: db 4, 4, 8, 8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_55_Zora", + "code": "Sprite_55_Zora:\n #_05967B: LDA.w $0E90, X\n #_05967E: BNE Fireball\n\n #_059680: JMP.w Zora_Main\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Fireball", + "code": "Fireball:\n #_059683: STA.w $0BA0, X\n\n #_059686: LDA.w SprTimerA, X\n #_059689: BEQ .skip_allocation\n\n #_05968B: LDA.b #$04\n #_05968D: JSL SpriteDraw_AllocateOAMFromRegionC\n\n.skip_allocation\n #_059691: JSL SpriteDraw_SingleSmall_long\n #_059695: JSR Sprite_CheckIfActive_Bank05\n\n #_059698: JSL Fireball_SpawnTrailGarnish\n\n #_05969C: JSL Sprite_CheckDamageToLink_long\n #_0596A0: BCC .no_damage\n\n.die_forever\n #_0596A2: STZ.w $0DD0, X\n\n #_0596A5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zora_Main", + "code": "Zora_Main:\n #_059725: LDA.w SprAction, X\n #_059728: BNE .just_draw\n\n #_05972A: JSL Sprite_PrepOAMCoord_long\n #_05972E: BRA .continue\n\n.just_draw\n #_059730: JSR SpriteDraw_Zora\n\n.continue\n #_059733: JSR Sprite_CheckIfActive_Bank05\n\n #_059736: LDA.w SprAction, X\n #_059739: BEQ Zora_Submerged\n\n #_05973B: DEC A\n #_05973C: BEQ .surfacing\n\n #_05973E: DEC A\n #_05973F: BEQ .attacking\n\n #_059741: JMP.w Zora_Submerge\n\n.attacking\n #_059744: JMP.w Zora_Attack\n\n.surfacing\n #_059747: JMP.w Zora_Surface\n\n; =========================================================\n\npool Zora_Submerged\n\n.offset_low\n #_05974A: db -32, -24, -16, -8, 8, 16, 24, 32\n\n.offset_high\n #_059752: db -1, -1, -1, -1, 0, 0, 0, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "Zora_Submerged", + "code": "Zora_Submerged:\n #_05975A: LDA.w SprTimerA, X\n #_05975D: STA.w $0BA0, X\n #_059760: BNE .exit\n\n #_059762: JSL GetRandomNumber\n #_059766: AND.b #$07\n #_059768: TAY\n\n #_059769: LDA.w $0D90, X\n #_05976C: CLC\n #_05976D: ADC.w .offset_low, Y\n #_059770: STA.w SprX, X\n\n #_059773: LDA.w SprMiscA, X\n #_059776: ADC.w .offset_high, Y\n #_059779: STA.w SprXH, X\n\n #_05977C: JSL GetRandomNumber\n #_059780: AND.b #$07\n #_059782: TAY\n\n #_059783: LDA.w $0DB0, X\n #_059786: CLC\n #_059787: ADC.w .offset_low, Y\n #_05978A: STA.w SprY, X\n\n #_05978D: LDA.w SprMiscE, X\n #_059790: ADC.w .offset_high, Y\n #_059793: STA.w SprYH, X\n\n #_059796: JSL Sprite_Get16BitCoords_long\n #_05979A: JSR Sprite_CheckTileCollision_Bank05\n\n #_05979D: LDA.w $0FA5\n #_0597A0: CMP.b #$08 ; TILETYPE 08\n #_0597A2: BNE .exit\n\n #_0597A4: LDA.b #$7F\n #_0597A6: STA.w SprTimerA, X\n\n #_0597A9: INC.w SprAction, X\n\n #_0597AC: LDA.w $0E60, X\n #_0597AF: ORA.b #$40\n #_0597B1: STA.w $0E60, X\n\n.exit\n #_0597B4: RTS", + "file": "bank_05.asm" + }, + { + "name": "ZoraSurfacing_anim_step", + "code": "ZoraSurfacing_anim_step:\n #_0597B5: db $04, $03, $02, $01, $02, $01, $02, $01\n #_0597BD: db $02, $01, $02, $01, $02, $01, $00, $00\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Zora_Surface", + "code": "Zora_Surface:\n #_0597C5: LDA.w SprTimerA, X\n #_0597C8: STA.w $0BA0, X\n #_0597CB: BNE .delay\n\n #_0597CD: INC.w SprAction, X\n\n #_0597D0: LDA.b #$7F\n #_0597D2: STA.w SprTimerA, X\n\n #_0597D5: LDA.w $0E60, X\n #_0597D8: AND.b #$BF\n #_0597DA: STA.w $0E60, X\n\n #_0597DD: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zora_Attack", + "code": "Zora_Attack:\n #_0597F1: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_0597F4: LDA.w SprTimerA, X\n #_0597F7: BNE .delay\n\n #_0597F9: INC.w SprAction, X\n\n #_0597FC: LDA.b #$17\n #_0597FE: STA.w SprTimerA, X\n\n #_059801: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zora_Submerge", + "code": "Zora_Submerge:\n #_059824: LDA.w SprTimerA, X\n #_059827: BNE .delay\n\n #_059829: LDA.b #$80\n #_05982B: STA.w SprTimerA, X\n\n #_05982E: STZ.w $0DC0, X\n #_059831: STZ.w SprAction, X\n\n #_059834: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Zora", + "code": "SpriteDraw_Zora:\n #_0598F5: JSR Sprite_PrepOAMCoord_Bank05\n\n #_0598F8: LDA.w $0DC0, X\n #_0598FB: ASL A\n #_0598FC: STA.b $06\n\n #_0598FE: PHX\n\n #_0598FF: LDX.b #$01\n\n.next_object\n #_059901: PHX\n\n #_059902: TXA\n #_059903: CLC\n #_059904: ADC.b $06\n #_059906: PHA\n\n #_059907: ASL A\n #_059908: TAX\n\n #_059909: REP #$20\n\n #_05990B: LDA.b $00\n #_05990D: CLC\n #_05990E: ADC.w .offset_x, X\n #_059911: STA.b ($90), Y\n\n #_059913: AND.w #$0100\n #_059916: STA.b $0E\n\n #_059918: LDA.b $02\n #_05991A: CLC\n #_05991B: ADC.w .offset_y, X\n\n #_05991E: INY\n #_05991F: STA.b ($90), Y\n\n #_059921: CLC\n #_059922: ADC.w #$0010\n #_059925: CMP.w #$0100\n\n #_059928: SEP #$20\n #_05992A: BCC .on_screen\n\n #_05992C: LDA.b #$F0\n #_05992E: STA.b ($90), Y\n\n.on_screen\n #_059930: PLX\n\n #_059931: LDA.w .char, X\n #_059934: INY\n #_059935: STA.b ($90), Y\n\n #_059937: LDA.b #$0F\n #_059939: STA.b $0D\n\n #_05993B: LDA.w .prop, X\n #_05993E: BIT.b $0D\n #_059940: BNE .include_calced_prop\n\n #_059942: ORA.b $05\n\n.include_calced_prop\n #_059944: INY\n\n #_059945: STA.b ($90), Y\n\n #_059947: PHY\n\n #_059948: TYA\n #_059949: LSR A\n #_05994A: LSR A\n #_05994B: TAY\n\n #_05994C: LDA.w .size, X\n #_05994F: ORA.b $0F\n #_059951: STA.b ($92), Y\n\n #_059953: PLY\n #_059954: INY\n\n #_059955: PLX\n #_059956: DEX\n #_059957: BPL .next_object\n\n #_059959: PLX\n\n #_05995A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_52_KingZora", + "code": "Sprite_52_KingZora:\n #_05995B: JSR SpriteDraw_KingZora\n #_05995E: JSR Sprite_CheckIfActive_Bank05\n\n #_059961: LDA.w SprAction, X\n #_059964: JSL JumpTableLocal\n #_059968: dw KingZora_Idle\n #_05996A: dw KingZora_TheRumbling\n #_05996C: dw KingZora_Surface\n #_05996E: dw KingZora_Talking\n #_059970: dw KingZora_Submerge\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_059972", + "code": "UNREACHABLE_059972:\n #_059972: db $28, $78, $C8, $78\n #_059976: db $60, $50, $70, $50\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "KingZora_Idle", + "code": "KingZora_Idle:\n #_05997A: REP #$20\n\n #_05997C: LDA.b $22\n #_05997E: SEC\n #_05997F: SBC.w $0FD8\n #_059982: CLC\n #_059983: ADC.w #$0010\n #_059986: CMP.w #$0020\n #_059989: BCS .out_of_range\n\n #_05998B: LDA.b $20\n #_05998D: SEC\n #_05998E: SBC.w $0FDA\n #_059991: CLC\n #_059992: ADC.w #$0030\n #_059995: CMP.w #$0060\n #_059998: BCS .out_of_range\n\n #_05999A: SEP #$20\n\n #_05999C: JSL Link_CancelDash_long\n\n #_0599A0: LDA.b #$7F\n #_0599A2: STA.w SprTimerA, X\n\n #_0599A5: LDA.b #$35 ; SFX2.35\n #_0599A7: STA.w $012E\n\n #_0599AA: INC.w SprAction, X\n\n; ---------------------------------------------------------\n\n #_0599AD: LDY.b #$0F\n\n.next_sprite\n #_0599AF: CPY.w $0FA0\n #_0599B2: BEQ .this_sprite_can_live\n\n #_0599B4: LDA.w $0CAA, Y\n #_0599B7: BMI .this_sprite_can_live\n\n #_0599B9: PHX\n #_0599BA: TYX\n #_0599BB: PHY\n\n #_0599BC: LDA.w $0DD0, X\n #_0599BF: CMP.b #$0A\n #_0599C1: BNE .not_carried\n\n #_0599C3: STZ.w $0308\n #_0599C6: STZ.w $0309\n\n.not_carried\n #_0599C9: JSL Sprite_KillSelf\n\n #_0599CD: PLY\n #_0599CE: PLX\n\n.this_sprite_can_live\n #_0599CF: DEY\n #_0599D0: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n.out_of_range\n #_0599D2: SEP #$20\n\n #_0599D4: RTS", + "file": "bank_05.asm" + }, + { + "name": "ZoraShake", + "code": "ZoraShake:\n.low\n #_0599D5: db 1, -1\n\n.high\n #_0599D7: db 0, -1\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "KingZora_TheRumbling", + "code": "KingZora_TheRumbling:\n #_0599D9: LDA.w SprTimerA, X\n #_0599DC: BNE .delay\n\n #_0599DE: INC.w SprAction, X\n\n #_0599E1: LDA.b #$7F\n #_0599E3: STA.w SprTimerA, X\n\n #_0599E6: STZ.w $011A\n #_0599E9: STZ.w $011B\n\n #_0599EC: LDA.b #$04\n #_0599EE: STA.w $0DC0, X\n\n #_0599F1: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_Surface", + "code": "KingZora_Surface:\n #_059A17: LDA.w SprTimerA, X\n #_059A1A: BNE .delay\n\n #_059A1C: INC.w SprAction, X\n\n #_059A1F: LDA.b #$7F\n #_059A21: STA.w SprTimerA, X\n\n #_059A24: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_Talking", + "code": "KingZora_Talking:\n #_059A46: LDA.w SprTimerA, X\n #_059A49: BNE .delay\n\n #_059A4B: INC.w SprAction, X\n\n #_059A4E: LDA.b #$24\n #_059A50: STA.w SprTimerA, X\n\n #_059A53: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_WelcomeToZoraMart", + "code": "KingZora_WelcomeToZoraMart:\n #_059A73: LDA.b #$42 ; MESSAGE 0142\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "KingZora_SendYouAMessage", + "code": "KingZora_SendYouAMessage:\n #_059A75: STA.w $1CF0\n\n #_059A78: LDA.b #$01\n #_059A7A: STA.w $1CF1\n\n #_059A7D: JSL Sprite_ShowMessageMinimal\n\n #_059A81: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_SellingFlippers", + "code": "KingZora_SellingFlippers:\n #_059A82: LDA.w $1CE8\n #_059A85: BNE KingZora_OfferRejected\n\n #_059A87: LDA.b #$43 ; MESSAGE 0143\n #_059A89: JSR KingZora_SendYouAMessage\n\n #_059A8C: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_HandlePayment", + "code": "KingZora_HandlePayment:\n #_059A8D: LDA.w $1CE8\n #_059A90: BNE KingZora_FailedToSell\n\n #_059A92: REP #$20\n\n #_059A94: LDA.l $7EF360\n #_059A98: SEC\n #_059A99: SBC.w #500\n #_059A9C: BCC KingZora_FailedToSell\n\n #_059A9E: STA.l $7EF360\n\n #_059AA2: SEP #$20\n\n #_059AA4: LDA.b #$44 ; MESSAGE 0144\n #_059AA6: JSR KingZora_SendYouAMessage\n\n #_059AA9: INC.w $0E90, X\n\n #_059AAC: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_OfferRejected", + "code": "KingZora_OfferRejected:\n #_059AAD: LDA.b #$46 ; MESSAGE 0146\n #_059AAF: JSR KingZora_SendYouAMessage\n\n #_059AB2: LDA.b #$30\n #_059AB4: STA.w SprTimerA, X\n\n #_059AB7: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_FailedToSell", + "code": "KingZora_FailedToSell:\n #_059AB8: SEP #$20\n\n #_059ABA: LDA.b #$45 ; MESSAGE 0145\n #_059ABC: JSR KingZora_SendYouAMessage\n\n #_059ABF: LDA.b #$30\n #_059AC1: STA.w SprTimerA, X\n\n #_059AC4: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_HandleReceipt", + "code": "KingZora_HandleReceipt:\n #_059AC5: LDA.w $0E90, X\n #_059AC8: BEQ .exit\n\n #_059ACA: JSL Zora_RegurgitateFlippers\n\n.exit\n #_059ACE: RTS", + "file": "bank_05.asm" + }, + { + "name": "KingZora_Submerge", + "code": "KingZora_Submerge:\n #_059AE4: LDA.w SprTimerA, X\n #_059AE7: BNE .still_diving\n\n #_059AE9: JSL Sprite_KillSelf\n\n #_059AED: STZ.w $02E4\n\n #_059AF0: RTS", + "file": "bank_05.asm" + }, + { + "name": "Arrghus_SpawnSplash", + "code": "Arrghus_SpawnSplash:\n #_059B38: PHB\n #_059B39: PHK\n #_059B3A: PLB\n\n #_059B3B: JSR Sprite_SpawnBigSplash\n\n #_059B3E: PLB\n\n #_059B3F: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_SpawnBigSplash", + "code": "Sprite_SpawnBigSplash:\n #_059B40: LDA.b #$24 ; SFX2.24\n #_059B42: JSL SpriteSFX_QueueSFX2WithPan\n\n #_059B46: NOP\n\n #_059B47: LDA.b #$07\n #_059B49: STA.b $0D\n\n.next\n #_059B4B: LDA.b #$08 ; SPRITE 08\n #_059B4D: JSL Sprite_SpawnDynamically\n #_059B51: BMI .no_space\n\n #_059B53: LDA.b #$03\n #_059B55: STA.w $0DD0, Y\n\n #_059B58: PHX\n\n #_059B59: LDX.b $0D\n\n #_059B5B: LDA.w .offset_x_low, X\n #_059B5E: SEC\n #_059B5F: SBC.b #$04\n #_059B61: CLC\n #_059B62: ADC.b $00\n #_059B64: STA.w SprX, Y\n\n #_059B67: LDA.b $01\n #_059B69: ADC.w .offset_x_high, X\n #_059B6C: STA.w SprXH, Y\n\n #_059B6F: LDA.w .offset_y_low, X\n #_059B72: SEC\n #_059B73: SBC.b #$04\n #_059B75: CLC\n #_059B76: ADC.b $02\n #_059B78: STA.w SprY, Y\n\n #_059B7B: LDA.b $03\n #_059B7D: ADC.w .offset_y_high, X\n #_059B80: STA.w SprYH, Y\n\n #_059B83: LDA.w .speed_x, X\n #_059B86: STA.w SprXSpeed, Y\n\n #_059B89: LDA.w .speed_y, X\n #_059B8C: STA.w SprYSpeed, Y\n\n #_059B8F: TXA\n #_059B90: STA.w $0D90, Y\n\n #_059B93: PHY\n\n #_059B94: JSL GetRandomNumber\n\n #_059B98: PLY\n\n #_059B99: AND.b #$0F\n #_059B9B: ADC.b #$18\n #_059B9D: STA.w $0F80, Y\n\n #_059BA0: LDA.b #$01\n #_059BA2: STA.w SprAction, Y\n\n #_059BA5: LDA.b #$00\n #_059BA7: STA.w $0F70, Y\n\n #_059BAA: LDA.w $0E60, Y\n #_059BAD: ORA.b #$40\n #_059BAF: STA.w $0E60, Y\n #_059BB2: STA.w $0BA0, Y\n\n #_059BB5: PLX\n\n.no_space\n #_059BB6: DEC.b $0D\n #_059BB8: BPL .next\n\n #_059BBA: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_KingZora", + "code": "SpriteDraw_KingZora:\n #_059CAB: JSR Sprite_PrepOAMCoord_Bank05\n\n #_059CAE: LDA.w SprAction, X\n #_059CB1: CMP.b #$02\n #_059CB3: BCC .draw_whirlpool\n\n #_059CB5: LDA.w $0DC0, X\n #_059CB8: ASL A\n #_059CB9: ASL A\n #_059CBA: STA.b $06\n\n #_059CBC: PHX\n\n #_059CBD: LDX.b #$03\n\n.next_zora_object\n #_059CBF: PHX\n\n #_059CC0: TXA\n #_059CC1: CLC\n #_059CC2: ADC.b $06\n #_059CC4: TAX\n\n #_059CC5: LDA.b $00\n #_059CC7: CLC\n #_059CC8: ADC.w .offset_x, X\n #_059CCB: STA.b ($90), Y\n\n #_059CCD: INY\n\n #_059CCE: LDA.w .offset_y, X\n #_059CD1: CLC\n #_059CD2: ADC.b $02\n #_059CD4: STA.b ($90), Y\n\n #_059CD6: LDA.w .char, X\n #_059CD9: INY\n #_059CDA: STA.b ($90), Y\n\n #_059CDC: LDA.b #$0F\n #_059CDE: STA.b $0F\n\n #_059CE0: LDA.w .prop, X\n #_059CE3: BIT.b $0F\n #_059CE5: BNE .ignore_prop\n\n #_059CE7: ORA.b $05\n\n.ignore_prop\n #_059CE9: INY\n\n #_059CEA: ORA.b #$20\n #_059CEC: STA.b ($90), Y\n\n #_059CEE: INY\n\n #_059CEF: PLX\n #_059CF0: DEX\n #_059CF1: BPL .next_zora_object\n\n; ---------------------------------------------------------\n\n #_059CF3: PLX\n\n #_059CF4: LDY.b #$02\n #_059CF6: LDA.b #$03\n #_059CF8: JSL Sprite_CorrectOAMEntries_long\n\n #_059CFC: JSR Sprite_PrepOAMCoord_Bank05\n\n; ---------------------------------------------------------\n\n.draw_whirlpool\n #_059CFF: LDA.w $0E10, X\n #_059D02: BEQ .exit\n\n #_059D04: LSR A\n #_059D05: AND.b #$04\n #_059D07: STA.b $06\n\n #_059D09: LDA.b #$10\n #_059D0B: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_059D0F: LDY.b #$00\n\n #_059D11: PHX\n\n #_059D12: LDX.b #$03\n\n.next_whirlpool_object\n #_059D14: PHX\n\n #_059D15: TXA\n #_059D16: CLC\n #_059D17: ADC.b $06\n #_059D19: TAX\n\n #_059D1A: LDA.b $00\n #_059D1C: CLC\n #_059D1D: ADC.w .whirlpool_offset_x, X\n #_059D20: STA.b ($90), Y\n\n #_059D22: LDA.b $02\n #_059D24: CLC\n #_059D25: ADC.w .whirlpool_offset_y, X\n\n #_059D28: INY\n #_059D29: STA.b ($90), Y\n\n #_059D2B: LDA.w .whirlpool_char, X\n #_059D2E: INY\n #_059D2F: STA.b ($90), Y\n\n #_059D31: LDA.w .whirlpool_prop, X\n #_059D34: ORA.b #$24\n #_059D36: INY\n #_059D37: STA.b ($90), Y\n\n #_059D39: PHY\n\n #_059D3A: TYA\n #_059D3B: LSR A\n #_059D3C: LSR A\n #_059D3D: TAY\n\n #_059D3E: LDA.b #$02\n #_059D40: STA.b ($92), Y\n\n #_059D42: PLY\n #_059D43: INY\n\n #_059D44: PLX\n #_059D45: DEX\n #_059D46: BPL .next_whirlpool_object\n\n; ---------------------------------------------------------\n\n #_059D48: PLX\n\n.exit\n #_059D49: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_56_WalkingZora", + "code": "Sprite_56_WalkingZora:\n #_059D4A: LDA.w $0EA0, X\n #_059D4D: BEQ .not_recoiling\n\n #_059D4F: STZ.w $0EA0, X\n\n #_059D52: LDA.b #$03\n #_059D54: STA.w SprMiscA, X\n\n #_059D57: LDA.b #$C0\n #_059D59: STA.w $0ED0, X\n\n #_059D5C: LDA.w $0F40, X\n #_059D5F: STA.w SprXSpeed, X\n\n #_059D62: ASL A\n #_059D63: ROR.w SprXSpeed, X\n #_059D66: LDA.w $0F30, X\n\n #_059D69: STA.w SprYSpeed, X\n #_059D6C: ASL A\n #_059D6D: ROR.w SprYSpeed, X\n\n.not_recoiling\n #_059D70: LDA.w SprMiscA, X\n #_059D73: JSL JumpTableLocal\n #_059D77: dw WalkingZora_Wait\n #_059D79: dw WalkingZora_Surface\n #_059D7B: dw WalkingZora_Walking\n #_059D7D: dw WalkingZora_Stunned\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "WalkingZora_Wait", + "code": "WalkingZora_Wait:\n #_059D7F: JSL Sprite_PrepOAMCoord_long\n #_059D83: JSR Sprite_CheckIfActive_Bank05\n\n #_059D86: LDA.w SprTimerA, X\n #_059D89: BNE .exit\n\n #_059D8B: LDA.b #$7F\n #_059D8D: STA.w SprTimerA, X\n\n #_059D90: INC.w SprMiscA, X\n\n #_059D93: LDA.w $0E60, X\n #_059D96: ORA.b #$40\n #_059D98: STA.w $0E60, X\n\n.exit\n #_059D9B: RTS", + "file": "bank_05.asm" + }, + { + "name": "WalkingZora_Surface", + "code": "WalkingZora_Surface:\n #_059D9C: JSR SpriteDraw_Zora\n #_059D9F: JSR Sprite_CheckIfActive_Bank05\n\n #_059DA2: LDA.w SprTimerA, X\n #_059DA5: STA.w $0BA0, X\n #_059DA8: BNE .delay\n\n #_059DAA: LDA.w $0E60, X\n #_059DAD: AND.b #$BF\n #_059DAF: STA.w $0E60, X\n\n #_059DB2: LDA.b #$28 ; SFX2.28\n #_059DB4: JSL SpriteSFX_QueueSFX2WithPan\n\n #_059DB8: INC.w SprMiscA, X\n\n #_059DBB: LDA.b #$30\n #_059DBD: STA.w $0F80, X\n\n #_059DC0: JSR Sprite_DirectionToFaceLink_Bank05\n #_059DC3: TYA\n #_059DC4: STA.w SprMiscC, X\n #_059DC7: STA.w SprMiscE, X\n\n #_059DCA: RTS", + "file": "bank_05.asm" + }, + { + "name": "WalkingZora_Walking", + "code": "WalkingZora_Walking:\n #_059DD6: LDA.w SprDelay, X\n #_059DD9: AND.b #$08\n #_059DDB: LSR A\n #_059DDC: ADC.w SprMiscC, X\n #_059DDF: TAY\n\n #_059DE0: LDA.w ZoraAndGuardAnimationState, Y\n #_059DE3: STA.w $0DC0, X\n\n #_059DE6: JSR SpriteDraw_WalkingZora\n #_059DE9: JSR Sprite_CheckIfActive_Bank05\n #_059DEC: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_059DEF: JSR Sprite_Move_Z_Bank05\n\n #_059DF2: LDA.w $0F80, X\n #_059DF5: SEC\n #_059DF6: SBC.b #$02\n #_059DF8: STA.w $0F80, X\n\n #_059DFB: LDA.w $0F70, X\n #_059DFE: DEC A\n #_059DFF: BPL .continue\n\n #_059E01: LDA.w $0F80, X\n #_059E04: CMP.b #$F0\n #_059E06: BPL .airborne\n\n #_059E08: JSR Sprite_ZeroVelocity_XY_Bank05\n\n; ---------------------------------------------------------\n\n.airborne\n #_059E0B: STZ.w $0F70, X\n #_059E0E: STZ.w $0F80, X\n\n #_059E11: TXA\n #_059E12: EOR.b $1A\n #_059E14: AND.b #$0F\n #_059E16: BNE .continue\n\n #_059E18: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_059E1B: TYA\n #_059E1C: STA.w SprMiscE, X\n\n #_059E1F: TXA\n #_059E20: EOR.b $1A\n #_059E22: AND.b #$1F\n #_059E24: BNE .continue\n\n #_059E26: TYA\n #_059E27: STA.w SprMiscC, X\n\n #_059E2A: LDA.b #$08\n #_059E2C: JSL Sprite_ApplySpeedTowardsLink_long\n\n; ---------------------------------------------------------\n\n.continue\n #_059E30: JSR Sprite_Move_XY_Bank05\n #_059E33: JSR Sprite_CheckTileCollision_Bank05\n\n #_059E36: LDA.w $0F70, X\n #_059E39: DEC A\n #_059E3A: BPL .skip_extra_recoil_logic\n\n #_059E3C: JSR WalkingZora_AdjustShadow\n\n #_059E3F: LDA.w $0FA5\n #_059E42: CMP.b #$08 ; TILETYPE 08\n #_059E44: BNE .skip_extra_recoil_logic\n\n #_059E46: JSL Sprite_KillSelf\n\n #_059E4A: LDA.b #$28 ; SFX2.28\n #_059E4C: JSL SpriteSFX_QueueSFX2WithPan\n\n #_059E50: LDA.b #$03\n #_059E52: STA.w $0DD0, X\n\n #_059E55: LDA.b #$0F\n #_059E57: STA.w SprTimerA, X\n\n #_059E5A: STZ.w SprAction, X\n\n #_059E5D: LDA.b #$03\n #_059E5F: STA.w $0E40, X\n\n.skip_extra_recoil_logic\n #_059E62: JSR ZoraAndGuardAdvanceAnimation\n\n #_059E65: RTS", + "file": "bank_05.asm" + }, + { + "name": "WalkingZora_Stunned", + "code": "WalkingZora_Stunned:\n #_059E66: JSL Sprite_CheckDamageFromLink_long\n\n #_059E6A: LDA.b $1A\n #_059E6C: AND.b #$03\n #_059E6E: BNE .not_waking\n\n #_059E70: DEC.w $0ED0, X\n #_059E73: BNE .not_waking\n\n #_059E75: LDA.b #$02\n #_059E77: STA.w SprMiscA, X\n\n #_059E7A: LDY.w $0DD0, X\n\n #_059E7D: LDA.b #$09\n #_059E7F: STA.w $0DD0, X\n\n #_059E82: CPY.b #$0A\n #_059E84: BNE .not_waking\n\n #_059E86: STZ.w $0308\n #_059E89: STZ.w $0309\n\n; ---------------------------------------------------------\n\n.not_waking\n #_059E8C: LDA.w $0ED0, X\n #_059E8F: CMP.b #$30\n #_059E91: BCS .dont_tremble\n\n #_059E93: LDA.b $1A\n #_059E95: AND.b #$01\n #_059E97: BNE .dont_tremble\n\n #_059E99: LDA.b $1A\n #_059E9B: LSR A\n #_059E9C: AND.b #$01\n #_059E9E: TAY\n\n #_059E9F: LDA.w ZoraShake_low, Y\n #_059EA2: CLC\n #_059EA3: ADC.w SprX, X\n #_059EA6: STA.w SprX, X\n\n #_059EA9: LDA.w .offset_x_high, Y\n #_059EAC: ADC.w SprXH, X\n #_059EAF: STA.w SprXH, X\n\n; ---------------------------------------------------------\n\n.dont_tremble\n #_059EB2: STZ.w $0DC0, X\n #_059EB5: STZ.w SprCollision, X\n\n #_059EB8: JSR WalkingZora_DrawWaterRipples\n\n #_059EBB: DEC.w $0E40, X\n #_059EBE: DEC.w $0E40, X\n\n #_059EC1: JSL SpriteDraw_SingleLarge_long\n\n #_059EC5: INC.w $0E40, X\n #_059EC8: INC.w $0E40, X\n\n #_059ECB: STZ.w SprMiscF, X\n\n #_059ECE: JSR Sprite_CheckIfActive_Bank05\n #_059ED1: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_059ED4: JSR Sprite_Move_XY_Bank05\n #_059ED7: JSL ThrownSprite_TileAndSpriteInteraction_long\n\n; =========================================================\n\n#WalkingZora_AdjustShadow:\n #_059EDB: STZ.w SprMiscF, X\n\n #_059EDE: LDA.w $0F70, X\n #_059EE1: BNE .exit\n\n #_059EE3: LDA.w $0FA5\n #_059EE6: CMP.b #$09 ; TILETYPE 09\n #_059EE8: BNE .exit\n\n #_059EEA: INC.w SprMiscF, X\n\n.exit\n #_059EED: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_WalkingZora", + "code": "SpriteDraw_WalkingZora:\n #_059F08: JSR WalkingZora_DrawWaterRipples\n #_059F0B: JSR Sprite_PrepOAMCoord_Bank05\n\n #_059F0E: LDY.b #$00\n\n #_059F10: LDA.w $0DC0, X\n #_059F13: STA.b $06\n\n #_059F15: CMP.b #$04\n #_059F17: BCS .skip_this_one\n\n #_059F19: LSR A\n\n #_059F1A: REP #$20\n\n #_059F1C: LDA.b $02\n #_059F1E: SBC.w #$0000\n #_059F21: STA.b $02\n\n #_059F23: SEP #$20\n\n; ---------------------------------------------------------\n\n.skip_this_one\n #_059F25: PHX\n\n #_059F26: LDA.w SprMiscE, X\n #_059F29: TAX\n\n #_059F2A: REP #$20\n\n #_059F2C: LDA.b $00\n #_059F2E: STA.b ($90), Y\n\n #_059F30: AND.w #$0100\n #_059F33: STA.b $0E\n\n #_059F35: LDA.b $02\n #_059F37: SEC\n #_059F38: SBC.w #$0006\n\n #_059F3B: INY\n #_059F3C: STA.b ($90), Y\n\n #_059F3E: CLC\n #_059F3F: ADC.w #$0010\n #_059F42: CMP.w #$0100\n #_059F45: BCC .head_on_screen\n\n #_059F47: LDA.w #$00F0\n #_059F4A: STA.b ($90), Y\n\n.head_on_screen\n #_059F4C: SEP #$20\n\n #_059F4E: LDA.w .head_char, X\n #_059F51: INY\n #_059F52: STA.b ($90), Y\n\n #_059F54: LDA.w .head_prop, X\n #_059F57: INY\n #_059F58: ORA.b $05\n #_059F5A: STA.b ($90), Y\n\n #_059F5C: LDA.b #$02\n #_059F5E: ORA.b $0F\n #_059F60: STA.b ($92)\n\n #_059F62: LDA.b $06\n\n #_059F64: PHA\n\n #_059F65: ASL A\n #_059F66: TAX\n\n; ---------------------------------------------------------\n\n #_059F67: REP #$20\n\n #_059F69: LDA.b $00\n #_059F6B: INY\n #_059F6C: STA.b ($90), Y\n\n #_059F6E: AND.w #$0100\n #_059F71: STA.b $0E\n\n #_059F73: LDA.b $02\n #_059F75: INC A\n #_059F76: INC A\n\n #_059F77: INY\n\n #_059F78: STA.b ($90), Y\n\n #_059F7A: CLC\n #_059F7B: ADC.w #$0010\n #_059F7E: CMP.w #$0100\n #_059F81: BCC .body_on_screen\n\n #_059F83: LDA.w #$00F0\n #_059F86: STA.b ($90), Y\n\n.body_on_screen\n #_059F88: SEP #$20\n\n #_059F8A: PLX\n\n #_059F8B: LDA.w .body_char, X\n #_059F8E: INY\n #_059F8F: STA.b ($90), Y\n\n #_059F91: LDA.w .body_prop, X\n #_059F94: ORA.b $05\n #_059F96: INY\n #_059F97: STA.b ($90), Y\n\n #_059F99: LDY.b #$01\n\n #_059F9B: LDA.b #$02\n #_059F9D: ORA.b $0F\n #_059F9F: STA.b ($92), Y\n\n; ---------------------------------------------------------\n\n #_059FA1: PLX\n\n #_059FA2: LDA.w SprMiscF, X\n #_059FA5: BNE .exit\n\n #_059FA7: JSL SpriteDraw_Shadow_long\n\n.exit\n #_059FAB: RTS", + "file": "bank_05.asm" + }, + { + "name": "WalkingZora_DrawWaterRipples", + "code": "WalkingZora_DrawWaterRipples:\n #_059FE0: LDA.w SprMiscF, X\n #_059FE3: BEQ .exit\n\n; =========================================================\n\n#SpriteDraw_WaterRipple_WithOAMAdjust:\n #_059FE5: JSL SpriteDraw_WaterRipple\n\n #_059FE9: REP #$20\n\n #_059FEB: LDA.b $90\n #_059FED: CLC\n #_059FEE: ADC.w #$0008\n #_059FF1: STA.b $90\n\n #_059FF3: INC.b $92\n #_059FF5: INC.b $92\n\n #_059FF7: SEP #$20\n\n.exit\n #_059FF9: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_WaterRipple", + "code": "SpriteDraw_WaterRipple:\n #_059FFA: PHB\n #_059FFB: PHK\n #_059FFC: PLB\n\n #_059FFD: LDA.b $1A\n #_059FFF: LSR A\n #_05A000: LSR A\n #_05A001: AND.b #$03\n #_05A003: TAY\n\n #_05A004: LDA.w .oam_groups_offset, Y\n #_05A007: CLC\n #_05A008: ADC.b #.oam_groups>>0\n #_05A00A: STA.b $08\n\n #_05A00C: LDA.b #.oam_groups>>8\n #_05A00E: ADC.b #$00\n #_05A010: STA.b $09\n\n #_05A012: LDA.b #$02\n #_05A014: JSR SpriteDraw_Tabulated_Bank05\n\n #_05A017: LDY.b #$03\n\n #_05A019: LDA.b ($90), Y\n #_05A01B: AND.b #$30\n #_05A01D: ORA.b #$04\n #_05A01F: STA.b ($90), Y\n\n #_05A021: LDY.b #$07\n #_05A023: ORA.b #$40\n #_05A025: STA.b ($90), Y\n\n #_05A027: PLB\n\n #_05A028: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_WaterRipple_WithOAMAdjust_long", + "code": "SpriteDraw_WaterRipple_WithOAMAdjust_long:\n #_05A029: PHB\n #_05A02A: PHK\n #_05A02B: PLB\n\n #_05A02C: JSR SpriteDraw_WaterRipple_WithOAMAdjust\n\n #_05A02F: PLB\n\n #_05A030: RTL", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnightDeath_anim_step", + "code": "ArmosKnightDeath_anim_step:\n #_05A031: db $05, $04, $03, $02, $01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_53_ArmosKnight", + "code": "Sprite_53_ArmosKnight:\n #_05A036: LDA.w $0B89, X\n #_05A039: ORA.b #$30\n #_05A03B: STA.w $0B89, X\n\n #_05A03E: JSR SpriteDraw_ArmosKnight\n #_05A041: JSR Sprite_CheckIfActivePermissive_Bank05\n\n #_05A044: LDA.w $0DD0, X\n #_05A047: CMP.b #$09\n #_05A049: BEQ ArmosKnight_Alive\n\n #_05A04B: LDA.w SprTimerA, X\n #_05A04E: BNE ArmostKnight_Dying\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnight_Dead", + "code": "ArmosKnight_Dead:\n #_05A050: DEC.w $0FF8\n\n #_05A053: LDA.w $0FF8\n #_05A056: CMP.b #$01\n #_05A058: BNE .knights_remain\n\n #_05A05A: LDY.b #$05\n\n.next_knight\n #_05A05C: LDA.b #$30\n #_05A05E: STA.w $0E50, Y\n\n #_05A061: LDA.b #$00\n #_05A063: STA.w SprXSpeed, Y\n #_05A066: STA.w SprYSpeed, Y\n #_05A069: STA.w $0F80, Y\n\n #_05A06C: DEY\n #_05A06D: BPL .next_knight\n\n; ---------------------------------------------------------\n\n.knights_remain\n #_05A06F: STZ.w $0DD0, X\n\n #_05A072: JSL CheckIfScreenIsClear\n #_05A076: BCC .exit\n\n #_05A078: LDA.b #$EA ; SPRITE EA\n #_05A07A: JSL Sprite_SpawnDynamically\n #_05A07E: JSL Sprite_SetSpawnedCoordinates\n\n #_05A082: LDA.b #$20\n #_05A084: STA.w $0F80, Y\n\n #_05A087: LDA.b #$01\n #_05A089: STA.w $0D90, Y\n\n.exit\n #_05A08C: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmostKnight_Dying", + "code": "ArmostKnight_Dying:\n #_05A08D: LSR A\n #_05A08E: LSR A\n #_05A08F: LSR A\n #_05A090: TAY\n\n #_05A091: LDA.w ArmosKnightDeath_anim_step, Y\n #_05A094: STA.w $0DC0, X\n\n #_05A097: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnight_Alive", + "code": "ArmosKnight_Alive:\n #_05A098: JSR Sprite_Move_XY_Bank05\n #_05A09B: JSR Sprite_Move_Z_Bank05\n\n #_05A09E: LDA.w $0F80, X\n #_05A0A1: SEC\n #_05A0A2: SBC.b #$04\n #_05A0A4: STA.w $0F80, X\n\n #_05A0A7: LDA.w $0F70, X\n #_05A0AA: BPL .continue\n\n #_05A0AC: STZ.w $0F80, X\n #_05A0AF: STZ.w $0F70, X\n\n #_05A0B2: LDA.w $0FF8\n #_05A0B5: CMP.b #$01\n #_05A0B7: BEQ .continue\n\n #_05A0B9: LDA.w $0D90, X\n #_05A0BC: BEQ .continue\n\n #_05A0BE: LDA.b #$30\n #_05A0C0: STA.w $0F80, X\n\n #_05A0C3: LDA.b #$16 ; SFX3.16\n #_05A0C5: JSL SpriteSFX_QueueSFX3WithPan\n\n; ---------------------------------------------------------\n\n.continue\n #_05A0C9: LDA.w $0EA0, X\n #_05A0CC: BEQ .dont_stop\n\n #_05A0CE: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05A0D1: STZ.w SprAction, X\n #_05A0D4: STZ.w $0ED0, X\n\n.dont_stop\n #_05A0D7: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05A0DA: LDA.w $0D90, X\n #_05A0DD: BNE ArmosKnight_Awake\n\n #_05A0DF: LDA.w SprTimerA, X\n #_05A0E2: BNE .still_sleeping\n\n #_05A0E4: INC.w $0D90, X\n\n #_05A0E7: LDA.w $0E40, X\n #_05A0EA: AND.b #$7F\n #_05A0EC: DEC A\n #_05A0ED: DEC A\n #_05A0EE: STA.w $0E40, X\n\n #_05A0F1: LDA.w $0CAA, X\n #_05A0F4: AND.b #$FB\n #_05A0F6: STA.w $0CAA, X\n\n #_05A0F9: LDA.w $0E60, X\n #_05A0FC: AND.b #$BF\n #_05A0FE: STA.w $0E60, X\n\n #_05A101: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnight_Awake", + "code": "ArmosKnight_Awake:\n #_05A133: LDA.w $0FF8\n #_05A136: CMP.b #$01\n #_05A138: BEQ ArmosKnight_BeRed\n\n #_05A13A: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05A13D: LDA.w SprAction, X\n #_05A140: BNE .copy_overlord\n\n #_05A142: JSR ArmosKnight_ProjectSpeedTowardsTarget\n #_05A145: JSL Sprite_Get16BitCoords_long\n\n #_05A149: REP #$20\n\n #_05A14B: LDA.b $04\n #_05A14D: SEC\n #_05A14E: SBC.w $0FD8\n #_05A151: CLC\n #_05A152: ADC.w #$0002\n\n #_05A155: CMP.w #$0004\n #_05A158: BCS .exit\n\n #_05A15A: LDA.b $06\n #_05A15C: SEC\n #_05A15D: SBC.w $0FDA\n #_05A160: CLC\n #_05A161: ADC.w #$0002\n\n #_05A164: CMP.w #$0004\n #_05A167: BCS .exit\n\n #_05A169: SEP #$20\n\n #_05A16B: INC.w SprAction, X\n\n.exit\n #_05A16E: SEP #$20\n\n #_05A170: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnight_BeRed", + "code": "ArmosKnight_BeRed:\n #_05A18A: JSL RedArmosCrusher\n\n #_05A18E: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmosKnight_ProjectSpeedTowardsTarget", + "code": "ArmosKnight_ProjectSpeedTowardsTarget:\n #_05A18F: LDA.w $0B10, X\n #_05A192: STA.b $04\n\n #_05A194: LDA.w $0B20, X\n #_05A197: STA.b $05\n\n #_05A199: LDA.w $0B30, X\n #_05A19C: STA.b $06\n\n #_05A19E: LDA.w $0B40, X\n #_05A1A1: STA.b $07\n\n #_05A1A3: LDA.b #$10\n #_05A1A5: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n #_05A1A9: LDA.b $00\n #_05A1AB: STA.w SprYSpeed, X\n\n #_05A1AE: LDA.b $01\n #_05A1B0: STA.w SprXSpeed, X\n\n #_05A1B3: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_ArmosKnight", + "code": "SpriteDraw_ArmosKnight:\n #_05A274: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05A277: LDA.w $0D90, X\n #_05A27A: BNE .awakening\n\n #_05A27C: LDA.b $11\n #_05A27E: CMP.b #$07\n #_05A280: BEQ .awakening\n\n #_05A282: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n #_05A286: LDY.b #$00\n\n.awakening\n #_05A288: LDA.w $0DC0, X\n #_05A28B: ASL A\n #_05A28C: ASL A\n #_05A28D: STA.b $06\n\n; ---------------------------------------------------------\n\n #_05A28F: PHX\n\n #_05A290: LDX.b #$03\n\n.next_object\n #_05A292: PHX\n\n #_05A293: TXA\n #_05A294: CLC\n #_05A295: ADC.b $06\n #_05A297: PHA\n\n #_05A298: ASL A\n #_05A299: TAX\n\n #_05A29A: REP #$20\n\n #_05A29C: LDA.b $00\n #_05A29E: CLC\n #_05A29F: ADC.w .offset_x, X\n #_05A2A2: STA.b ($90), Y\n\n #_05A2A4: AND.w #$0100\n #_05A2A7: STA.b $0E\n\n #_05A2A9: LDA.b $02\n #_05A2AB: CLC\n #_05A2AC: ADC.w .offset_y, X\n\n #_05A2AF: INY\n #_05A2B0: STA.b ($90), Y\n\n #_05A2B2: CLC\n #_05A2B3: ADC.w #$0010\n #_05A2B6: CMP.w #$0100\n\n #_05A2B9: SEP #$20\n #_05A2BB: BCC .on_screen\n\n #_05A2BD: LDA.b #$F0\n #_05A2BF: STA.b ($90), Y\n\n.on_screen\n #_05A2C1: PLX\n\n #_05A2C2: LDA.w .char, X\n #_05A2C5: INY\n #_05A2C6: STA.b ($90), Y\n\n #_05A2C8: LDA.w .flip, X\n #_05A2CB: ORA.b $05\n #_05A2CD: INY\n #_05A2CE: STA.b ($90), Y\n\n #_05A2D0: PHY\n\n #_05A2D1: TYA\n #_05A2D2: LSR A\n #_05A2D3: LSR A\n #_05A2D4: TAY\n\n #_05A2D5: LDA.w .size, X\n #_05A2D8: ORA.b $0F\n #_05A2DA: STA.b ($92), Y\n\n #_05A2DC: PLY\n #_05A2DD: INY\n\n #_05A2DE: PLX\n #_05A2DF: DEX\n #_05A2E0: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_05A2E2: PLX\n\n #_05A2E3: LDA.w $0DC0, X\n #_05A2E6: BEQ .alive\n\n #_05A2E8: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Lanmolas", + "code": "SpritePrep_Lanmolas:\n #_05A37A: LDA.l .delay, X\n #_05A37E: STA.w SprTimerA, X\n\n #_05A381: LDA.b #$FF\n #_05A383: STA.w $0F70, X\n\n #_05A386: PHX\n\n #_05A387: LDY.b #$3F\n\n #_05A389: LDA.l SubspriteIndices_Bank05, X\n #_05A38D: TAX\n\n #_05A38E: LDA.b #$FF\n\n.next_subsprite\n #_05A390: STA.l $7FFE00, X\n\n #_05A394: INX\n\n #_05A395: DEY\n #_05A396: BPL .next_subsprite\n\n #_05A398: PLX\n\n #_05A399: LDA.b #$07\n #_05A39B: STA.l $7FF81E, X\n\n #_05A39F: RTL", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05A3A0", + "code": "UNREACHABLE_05A3A0:\n #_05A3A0: db $18, $E8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_54_Lanmolas", + "code": "Sprite_54_Lanmolas:\n #_05A3A2: JSL Sprite_PrepOAMCoord_long\n #_05A3A6: JSR SpriteDraw_Lanmola\n #_05A3A9: JSR Sprite_CheckIfActivePermissive_Bank05\n\n #_05A3AC: LDA.w SprAction, X\n #_05A3AF: JSL JumpTableLocal\n #_05A3B3: dw Lanmolas_Hiding\n #_05A3B5: dw Lanmolas_BurrowingUp\n #_05A3B7: dw Lanmolas_LeapFromSand\n #_05A3B9: dw Lanmolas_WiggleInAir\n #_05A3BB: dw Lanmolas_BurrowDown\n #_05A3BD: dw Lanmolas_Exploding\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_Hiding", + "code": "Lanmolas_Hiding:\n #_05A3BF: LDA.w SprTimerA, X\n #_05A3C2: ORA.w $0F00, X\n #_05A3C5: BNE .exit\n\n #_05A3C7: LDA.b #$7F\n #_05A3C9: STA.w SprTimerA, X\n\n #_05A3CC: INC.w SprAction, X\n\n #_05A3CF: LDA.b #$35 ; SFX2.35\n #_05A3D1: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n #_05A3D5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_Targets", + "code": "Lanmolas_Targets:\n.position_x\n #_05A3D6: db $58, $50, $60, $70\n #_05A3DA: db $80, $90, $A0, $98\n\n.position_y\n #_05A3DE: db $68, $60, $70, $80\n #_05A3E2: db $90, $A0, $A8, $80\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_BurrowingUp", + "code": "Lanmolas_BurrowingUp:\n #_05A3E6: LDA.w SprTimerA, X\n #_05A3E9: BNE EXIT_05A42E\n\n #_05A3EB: JSL Lanmola_SpawnShrapnel\n\n #_05A3EF: LDA.b #$13 ; SFX1.13\n #_05A3F1: STA.w $012D\n\n #_05A3F4: JSL GetRandomNumber\n #_05A3F8: AND.b #$07\n #_05A3FA: TAY\n\n #_05A3FB: LDA.w Lanmolas_Targets_position_x, Y\n #_05A3FE: STA.w SprMiscA, X\n\n #_05A401: JSL GetRandomNumber\n #_05A405: AND.b #$07\n #_05A407: TAY\n\n #_05A408: LDA.w Lanmolas_Targets_position_y, Y\n #_05A40B: STA.w $0DB0, X\n\n #_05A40E: INC.w SprAction, X\n\n #_05A411: LDA.b #$18\n #_05A413: STA.w $0F80, X\n\n #_05A416: STZ.w SprMiscF, X\n #_05A419: STZ.w $0ED0, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_CacheLocation", + "code": "Lanmolas_CacheLocation:\n #_05A41C: LDA.w SprX, X\n #_05A41F: STA.w SprMiscC, X\n\n #_05A422: LDA.w SprY, X\n #_05A425: STA.w SprCollision, X\n\n #_05A428: LDA.b #$4A\n #_05A42A: STA.w SprTimerB, X\n\n #_05A42D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_LeapFromSand", + "code": "Lanmolas_LeapFromSand:\n #_05A431: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05A434: JSR Sprite_Move_Z_Bank05\n\n #_05A437: LDA.w SprMiscF, X\n #_05A43A: BNE .ascending\n\n #_05A43C: LDA.w $0F80, X\n #_05A43F: SEC\n #_05A440: SBC.b #$01\n #_05A442: STA.w $0F80, X\n\n #_05A445: BNE .not_at_peak\n\n #_05A447: INC.w SprMiscF, X\n\n.not_at_peak\n #_05A44A: BRA .continue\n\n; ---------------------------------------------------------\n\n.ascending\n #_05A44C: LDA.b $1A\n #_05A44E: AND.b #$01\n #_05A450: BNE .continue\n\n #_05A452: LDA.w $0ED0, X\n #_05A455: AND.b #$01\n #_05A457: TAY\n\n #_05A458: LDA.w $0F80, X\n #_05A45B: CLC\n #_05A45C: ADC.w .z_speed, Y\n #_05A45F: STA.w $0F80, X\n\n #_05A462: CMP.w Speed16_Bank05, Y\n #_05A465: BNE .continue\n\n #_05A467: INC.w $0ED0, X\n\n; ---------------------------------------------------------\n\n.continue\n #_05A46A: LDA.w SprMiscA, X\n #_05A46D: STA.b $04\n\n #_05A46F: LDA.w SprXH, X\n #_05A472: STA.b $05\n\n #_05A474: LDA.w $0DB0, X\n #_05A477: STA.b $06\n\n #_05A479: LDA.w SprYH, X\n #_05A47C: STA.b $07\n\n #_05A47E: LDA.w SprX, X\n #_05A481: STA.b $00\n\n #_05A483: LDA.w SprXH, X\n #_05A486: STA.b $01\n\n #_05A488: LDA.w SprY, X\n #_05A48B: STA.b $02\n\n #_05A48D: LDA.w SprYH, X\n #_05A490: STA.b $03\n\n; ---------------------------------------------------------\n\n #_05A492: REP #$20\n\n #_05A494: LDA.b $00\n #_05A496: SEC\n #_05A497: SBC.b $04\n #_05A499: CLC\n #_05A49A: ADC.w #$0002\n\n #_05A49D: CMP.w #$0004\n #_05A4A0: BCS .not_at_target\n\n #_05A4A2: LDA.b $02\n #_05A4A4: SEC\n #_05A4A5: SBC.b $06\n #_05A4A7: CLC\n #_05A4A8: ADC.w #$0002\n #_05A4AB: CMP.w #$0004\n\n #_05A4AE: SEP #$20\n #_05A4B0: BCS .not_at_target\n\n #_05A4B2: INC.w SprAction, X\n\n; ---------------------------------------------------------\n\n.not_at_target\n #_05A4B5: SEP #$20\n\n #_05A4B7: LDA.b #$0A\n #_05A4B9: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n #_05A4BD: LDA.b $00\n #_05A4BF: STA.w SprYSpeed, X\n\n #_05A4C2: LDA.b $01\n #_05A4C4: STA.w SprXSpeed, X\n\n #_05A4C7: JSR Sprite_Move_XY_Bank05\n\n #_05A4CA: RTS", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_WiggleInAir", + "code": "Lanmolas_WiggleInAir:\n #_05A4CB: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05A4CE: JSR Sprite_Move_XY_Bank05\n #_05A4D1: JSR Sprite_Move_Z_Bank05\n\n #_05A4D4: LDA.w $0F80, X\n #_05A4D7: CMP.b #$EC\n #_05A4D9: BMI .descending\n\n #_05A4DB: SEC\n #_05A4DC: SBC.b #$01\n #_05A4DE: STA.w $0F80, X\n\n.descending\n #_05A4E1: LDA.w $0F70, X\n #_05A4E4: BPL .exit\n\n #_05A4E6: INC.w SprAction, X\n\n #_05A4E9: LDA.b #$80\n #_05A4EB: STA.w SprTimerA, X\n\n #_05A4EE: JSR Lanmolas_CacheLocation\n\n.exit\n #_05A4F1: RTS", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_BurrowDown", + "code": "Lanmolas_BurrowDown:\n #_05A4F2: LDA.w SprTimerA, X\n #_05A4F5: BNE EXIT_05A514\n\n #_05A4F7: STZ.w SprAction, X\n\n #_05A4FA: JSL GetRandomNumber\n #_05A4FE: AND.b #$07\n #_05A500: TAY\n\n #_05A501: LDA.w Lanmolas_Targets_position_x, Y\n #_05A504: STA.w SprX, X\n\n #_05A507: JSL GetRandomNumber\n #_05A50B: AND.b #$07\n #_05A50D: TAY\n\n #_05A50E: LDA.w Lanmolas_Targets_position_y, Y\n #_05A511: STA.w SprY, X\n\n; ---------------------------------------------------------\n\n#EXIT_05A514:\n #_05A514: RTS", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_SegmentOffsets", + "code": "Lanmolas_SegmentOffsets:\n #_05A515: db $00, $08, $10, $18, $20, $28, $30, $38\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Ancilla_SpawnFallingPrize", + "code": "Ancilla_SpawnFallingPrize:\n #_05A51D: PHX\n #_05A51E: TAX\n\n #_05A51F: LDY.b #$04\n #_05A521: LDA.b #$29 ; ANCILLA 29\n #_05A523: JSL AncillaAdd_FallingPrize\n\n #_05A527: PLX\n\n #_05A528: RTL", + "file": "bank_05.asm" + }, + { + "name": "Lanmolas_Exploding", + "code": "Lanmolas_Exploding:\n #_05A529: LDY.w SprTimerA, X\n #_05A52C: BNE .delay\n\n #_05A52E: STZ.w $0DD0, X\n\n #_05A531: JSL CheckIfScreenIsClear\n #_05A535: BCC .delay\n\n #_05A537: LDA.b #$EA ; SPRITE EA\n #_05A539: JSL Sprite_SpawnDynamically\n #_05A53D: JSL Sprite_SetSpawnedCoordinates\n\n #_05A541: LDA.b #$20\n #_05A543: STA.w $0F80, Y\n\n #_05A546: LDA.b #$03\n #_05A548: STA.w $0D90, Y\n\n.delay\n #_05A54B: LDA.w SprTimerA, X\n #_05A54E: CMP.b #$20\n #_05A550: BCC EXIT_05A514\n\n #_05A552: CMP.b #$A0\n #_05A554: BCS EXIT_05A514\n\n #_05A556: AND.b #$0F\n #_05A558: BNE EXIT_05A514\n\n; ---------------------------------------------------------\n\n #_05A55A: LDA.l $7FF81E, X\n #_05A55E: TAY\n\n #_05A55F: LDA.w SprDelay, X\n #_05A562: SEC\n #_05A563: SBC.w Lanmolas_SegmentOffsets, Y\n #_05A566: AND.b #$3F\n\n #_05A568: CLC\n #_05A569: ADC.w SubspriteIndices_Bank05, X\n\n #_05A56C: PHX\n\n #_05A56D: TAX\n\n #_05A56E: LDA.l $7FFC00, X\n #_05A572: SEC\n #_05A573: SBC.b $E2\n #_05A575: STA.b $0A\n\n #_05A577: LDA.l $7FFD00, X\n #_05A57B: SEC\n #_05A57C: SBC.l $7FFE00, X\n #_05A580: SEC\n #_05A581: SBC.b $E8\n #_05A583: STA.b $0B\n\n; ---------------------------------------------------------\n\n #_05A585: PLX\n\n #_05A586: LDA.b #$00 ; SPRITE 00\n #_05A588: JSL Sprite_SpawnDynamically\n #_05A58C: BMI .exit\n\n #_05A58E: LDA.b #$0B\n #_05A590: STA.w $0AAA\n\n #_05A593: LDA.b #$04\n #_05A595: STA.w $0DD0, Y\n\n #_05A598: LDA.b #$1F\n #_05A59A: STA.w SprTimerA, Y\n #_05A59D: STA.w $0D90, Y\n\n #_05A5A0: LDA.b $0A\n #_05A5A2: CLC\n #_05A5A3: ADC.b $E2\n #_05A5A5: STA.w SprX, Y\n\n #_05A5A8: LDA.b $E3\n #_05A5AA: ADC.b #$00\n #_05A5AC: STA.w SprXH, Y\n\n #_05A5AF: LDA.b $0B\n #_05A5B1: CLC\n #_05A5B2: ADC.b $E8\n #_05A5B4: STA.w SprY, Y\n\n #_05A5B7: LDA.b $E9\n #_05A5B9: ADC.b #$00\n #_05A5BB: STA.w SprYH, Y\n\n #_05A5BE: LDA.b #$03\n #_05A5C0: STA.w $0E40, Y\n\n #_05A5C3: LDA.b #$0C\n #_05A5C5: STA.w $0F50, Y\n\n #_05A5C8: LDA.b #$0C ; SFX2.0C\n #_05A5CA: JSL SpriteSFX_QueueSFX2WithPan\n\n #_05A5CE: LDA.l $7FF81E, X\n #_05A5D2: BMI .exit\n\n #_05A5D4: DEC A\n #_05A5D5: STA.l $7FF81E, X\n\n.exit\n #_05A5D9: RTS", + "file": "bank_05.asm" + }, + { + "name": "SubspriteIndices_Bank05", + "code": "SubspriteIndices_Bank05:\n #_05A5DA: db $00, $40, $80, $C0\n\n; =========================================================\n\npool SpriteDraw_Lanmola\n\n.oam_a_offset\n #_05A5DE: db $00, $1C\n\n.oam_b_offset\n #_05A5E0: db $01, $F9\n\n.segment_char\n #_05A5E2: db $C4, $E2, $C2, $E0, $C0, $E0, $C2, $E2\n #_05A5EA: db $C4, $E2, $C2, $E0, $C0, $E0, $C2, $E2\n\n.head_char\n #_05A5F2: db $CC, $E4, $CA, $E6, $C8, $E6, $CA, $E4\n #_05A5FA: db $CC, $E4, $CA, $E6, $C8, $E6, $CA, $E4\n\n.prop\n #_05A602: db $C0, $C0, $C0, $C0, $80, $80, $80, $80\n #_05A60A: db $00, $00, $00, $00, $40, $40, $40, $40\n\n; ---------------------------------------------------------\n\n.tail_offset_x\n #_05A612: db $F8, $08, $F6, $0A, $F0, $10, $E8, $20\n\n.tail_offset_y\n #_05A61A: db $00, $00, $FF, $FF, $FF, $FF, $03, $03\n\n.tail_tile\n #_05A622: db $E8, $E8, $E8, $E8, $EA, $EA, $EA, $EA\n\n.tail_prop\n #_05A62A: db $00, $40, $00, $40, $00, $40, $00, $40\n\n.tail_size\n #_05A632: db $02, $02, $02, $02, $02, $02, $00, $00\n\n; ---------------------------------------------------------\n\n.oam_a_pointer\n #_05A63A: dw $0930\n #_05A63C: dw $08F0\n #_05A63E: dw $08B0\n #_05A640: dw $0870\n\n.oam_b_pointer\n #_05A642: dw $0A6C\n #_05A644: dw $0A5C\n #_05A646: dw $0A4C\n #_05A648: dw $0A3C\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Lanmola", + "code": "SpriteDraw_Lanmola:\n #_05A64A: TXA\n #_05A64B: ASL A\n #_05A64C: TAY\n\n #_05A64D: REP #$20\n\n #_05A64F: LDA.w .oam_a_pointer, Y\n #_05A652: STA.b $90\n\n #_05A654: LDA.w .oam_b_pointer, Y\n #_05A657: STA.b $92\n\n #_05A659: SEP #$20\n\n #_05A65B: LDA.w SprYSpeed, X\n #_05A65E: SEC\n #_05A65F: SBC.w $0F80, X\n #_05A662: STA.b $00\n\n #_05A664: LDA.w SprXSpeed, X\n #_05A667: STA.b $01\n\n #_05A669: JSL Sprite_ConvertVelocityToAngle\n #_05A66D: STA.w $0DC0, X\n\n #_05A670: LDA.w SubspriteIndices_Bank05, X\n #_05A673: STA.b $04\n\n #_05A675: PHX\n\n #_05A676: LDA.w SprX, X\n #_05A679: PHA\n\n #_05A67A: LDA.w SprY, X\n #_05A67D: PHA\n\n #_05A67E: LDA.w $0F70, X\n #_05A681: PHA\n\n #_05A682: LDA.w $0DC0, X\n #_05A685: PHA\n\n #_05A686: LDA.w SprDelay, X\n #_05A689: STA.b $02\n #_05A68B: STA.b $05\n\n #_05A68D: CLC\n #_05A68E: ADC.b $04\n #_05A690: TAX\n\n #_05A691: PLA\n #_05A692: STA.l $7FFF00, X\n\n #_05A696: PLA\n #_05A697: STA.l $7FFE00, X\n\n #_05A69B: PLA\n #_05A69C: STA.l $7FFD00, X\n\n #_05A6A0: PLA\n #_05A6A1: STA.l $7FFC00, X\n\n #_05A6A5: PLX\n\n; ---------------------------------------------------------\n\n #_05A6A6: LDA.w $0DD0, X\n #_05A6A9: CMP.b #$09\n #_05A6AB: BNE .active\n\n #_05A6AD: LDA.b $11\n #_05A6AF: ORA.w $0FC1\n #_05A6B2: BNE .active\n\n #_05A6B4: LDA.w SprDelay, X\n #_05A6B7: INC A\n #_05A6B8: AND.b #$3F\n #_05A6BA: STA.w SprDelay, X\n\n.active\n #_05A6BD: LDA.w $0F50, X\n #_05A6C0: ORA.w $0B89, X\n #_05A6C3: STA.b $03\n\n #_05A6C5: LDA.l $7FF81E, X\n #_05A6C9: BPL .segments_visible\n\n #_05A6CB: RTS", + "file": "bank_05.asm" + }, + { + "name": "RatMovingState", + "code": "RatMovingState:\n #_05A8A8: db $08, $09, $04, $05, $00, $01, $0C, $0D\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6D_Rat", + "code": "Sprite_6D_Rat:\n #_05A8B0: LDY.w $0D90, X\n\n #_05A8B3: LDA.w .anim_step, Y\n #_05A8B6: STA.w $0DC0, X\n\n #_05A8B9: LDA.w $0F50, X\n #_05A8BC: AND.b #$3F\n #_05A8BE: ORA.w .flip, Y\n #_05A8C1: STA.w $0F50, X\n\n #_05A8C4: JSL SpriteDraw_SingleLarge_long\n\n #_05A8C8: JSR Sprite_CheckIfActive_Bank05\n #_05A8CB: JSR Sprite_CheckIfRecoiling_Bank05\n #_05A8CE: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05A8D1: JSR Sprite_Move_XY_Bank05\n #_05A8D4: JSR Sprite_CheckTileCollision_Bank05\n\n #_05A8D7: LDA.w SprAction, X\n #_05A8DA: BNE Rat_Moving\n\n #_05A8DC: JSR Sprite_ZeroVelocity_XY_Bank05\n #_05A8DF: LDA.w SprTimerA, X\n #_05A8E2: BNE .delay\n\n #_05A8E4: JSL GetRandomNumber\n #_05A8E8: PHA\n\n #_05A8E9: AND.b #$03\n #_05A8EB: STA.w SprMiscC, X\n\n #_05A8EE: INC.w SprAction, X\n\n #_05A8F1: PLA\n #_05A8F2: AND.b #$7F\n #_05A8F4: ADC.b #$40\n #_05A8F6: STA.w SprTimerA, X\n\n; ---------------------------------------------------------\n\n.delay\n #_05A8F9: LDA.b $1A\n #_05A8FB: LSR A\n #_05A8FC: LSR A\n #_05A8FD: LSR A\n #_05A8FE: LSR A\n\n #_05A8FF: LDA.w SprMiscC, X\n #_05A902: ROL A\n #_05A903: TAY\n\n #_05A904: LDA.w .stationary_state, Y\n #_05A907: STA.w $0D90, X\n\n #_05A90A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Rat_Moving", + "code": "Rat_Moving:\n #_05A917: LDA.w SprTimerA, X\n #_05A91A: BNE .no_sfx\n\n #_05A91C: LDA.w $0FFF\n #_05A91F: BNE .crickets_dont_squeak\n\n #_05A921: LDA.b #$17 ; SFX3.17\n #_05A923: JSL SpriteSFX_QueueSFX3WithPan\n\n.crickets_dont_squeak\n #_05A927: STZ.w SprAction, X\n\n #_05A92A: LDA.b #$50\n #_05A92C: STA.w SprTimerA, X\n\n.no_sfx\n #_05A92F: LDY.w SprMiscC, X\n\n #_05A932: LDA.w SprCollision, X\n #_05A935: BEQ .no_tile_collision\n\n #_05A937: LDA.w .direction, Y\n #_05A93A: STA.w SprMiscC, X\n #_05A93D: TAY\n\n.no_tile_collision\n #_05A93E: LDA.w .speed_x, Y\n #_05A941: STA.w SprXSpeed, X\n\n #_05A944: LDA.w .speed_y, Y\n #_05A947: STA.w SprYSpeed, X\n\n #_05A94A: LDA.b $1A\n #_05A94C: LSR A\n #_05A94D: LSR A\n #_05A94E: LSR A\n\n #_05A94F: LDA.w SprMiscC, X\n #_05A952: ROL A\n #_05A953: TAY\n\n #_05A954: LDA.w RatMovingState, Y\n #_05A957: STA.w $0D90, X\n\n #_05A95A: RTS", + "file": "bank_05.asm" + }, + { + "name": "RopeAnimControl", + "code": "RopeAnimControl:\n #_05A96B: db $04, $05, $02, $03, $00, $01, $06, $07\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6E_Rope", + "code": "Sprite_6E_Rope:\n #_05A973: LDY.w $0D90, X\n\n #_05A976: LDA.w .anim_step, Y\n #_05A979: STA.w $0DC0, X\n\n #_05A97C: LDA.w $0F50, X\n #_05A97F: AND.b #$3F\n #_05A981: ORA.w .flip, Y\n #_05A984: STA.w $0F50, X\n\n #_05A987: JSL SpriteDraw_SingleLarge_long\n #_05A98B: JSR Sprite_CheckIfActive_Bank05\n\n #_05A98E: LDA.w $0E90, X\n #_05A991: BEQ Rope_Slither\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "RopeFalling", + "code": "RopeFalling:\n #_05A993: LDY.b #$03\n\n #_05A995: LDA.b ($90), Y\n #_05A997: ORA.b #$30\n #_05A999: STA.b ($90), Y\n\n #_05A99B: LDA.w $0F70, X\n #_05A99E: PHA\n\n #_05A99F: JSR Sprite_Move_Z_Bank05\n\n #_05A9A2: LDA.w $0F80, X\n #_05A9A5: CMP.b #$C0\n #_05A9A7: BMI .at_max_z_speed\n\n #_05A9A9: SEC\n #_05A9AA: SBC.b #$02\n #_05A9AC: STA.w $0F80, X\n\n.at_max_z_speed\n #_05A9AF: PLA\n #_05A9B0: EOR.w $0F70, X\n #_05A9B3: BPL .exit\n\n #_05A9B5: LDA.w $0F70, X\n #_05A9B8: BPL .exit\n\n #_05A9BA: STZ.w $0F70, X\n #_05A9BD: STZ.w $0F80, X\n #_05A9C0: STZ.w $0E90, X\n\n #_05A9C3: LDA.w $0E60, X\n #_05A9C6: AND.b #$EF\n #_05A9C8: STA.w $0E60, X\n\n.exit\n #_05A9CB: RTS", + "file": "bank_05.asm" + }, + { + "name": "Rope_Slither", + "code": "Rope_Slither:\n #_05A9CC: STZ.w $0E40, X\n\n #_05A9CF: JSR Sprite_CheckIfRecoiling_Bank05\n #_05A9D2: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05A9D5: JSR Sprite_Move_XY_Bank05\n #_05A9D8: JSR Sprite_CheckTileCollision_Bank05\n\n #_05A9DB: LDA.w SprAction, X\n #_05A9DE: BNE Rope_Moving\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Rope_ChooseNextMove", + "code": "Rope_ChooseNextMove:\n #_05A9E0: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05A9E3: LDA.w SprTimerA, X\n #_05A9E6: BNE .dont_turn\n\n #_05A9E8: STZ.w $0ED0, X\n\n #_05A9EB: JSL GetRandomNumber\n #_05A9EF: PHA\n\n #_05A9F0: AND.b #$03\n #_05A9F2: STA.w SprMiscC, X\n\n #_05A9F5: INC.w SprAction, X\n\n #_05A9F8: PLA\n #_05A9F9: AND.b #$7F\n #_05A9FB: ADC.b #$40\n #_05A9FD: STA.w SprTimerA, X\n\n #_05AA00: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05AA03: LDA.b $0E\n #_05AA05: CLC\n #_05AA06: ADC.b #$10\n #_05AA08: CMP.b #$20\n #_05AA0A: BCC .link_in_sights\n\n #_05AA0C: LDA.b $0F\n #_05AA0E: CLC\n #_05AA0F: ADC.b #$18\n #_05AA11: CMP.b #$20\n #_05AA13: BCS .dont_turn\n\n.link_in_sights\n #_05AA15: LDA.b #$04\n #_05AA17: STA.w $0ED0, X\n\n #_05AA1A: TYA\n #_05AA1B: STA.w SprMiscC, X\n\n.dont_turn\n #_05AA1E: LDA.b $1A\n #_05AA20: LSR A\n #_05AA21: LSR A\n #_05AA22: LSR A\n #_05AA23: LSR A\n\n #_05AA24: LDA.w SprMiscC, X\n #_05AA27: ROL A\n #_05AA28: TAY\n\n #_05AA29: LDA.w RopeAnimControl, Y\n #_05AA2C: STA.w $0D90, X\n\n #_05AA2F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Rope_Moving", + "code": "Rope_Moving:\n #_05AA44: LDA.w SprTimerA, X\n #_05AA47: BNE .delay\n\n #_05AA49: STZ.w SprAction, X\n\n #_05AA4C: LDA.b #$20\n #_05AA4E: STA.w SprTimerA, X\n\n.delay\n #_05AA51: LDY.w SprMiscC, X\n\n #_05AA54: LDA.w SprCollision, X\n #_05AA57: BEQ .no_tile_collision\n\n #_05AA59: LDA.w .direction, Y\n #_05AA5C: STA.w SprMiscC, X\n\n #_05AA5F: TAY\n\n.no_tile_collision\n #_05AA60: TYA\n #_05AA61: CLC\n #_05AA62: ADC.w $0ED0, X\n #_05AA65: TAY\n\n #_05AA66: LDA.w .speed_x, Y\n #_05AA69: STA.w SprXSpeed, X\n\n #_05AA6C: LDA.w .speed_y, Y\n #_05AA6F: STA.w SprYSpeed, X\n\n #_05AA72: LDA.b $1A\n #_05AA74: CPY.b #$04\n #_05AA76: BCS .move_fast\n\n #_05AA78: LSR A\n\n.move_fast\n #_05AA79: LSR A\n #_05AA7A: LSR A\n\n #_05AA7B: LDA.w SprMiscC, X\n #_05AA7E: ROL A\n #_05AA7F: TAY\n\n #_05AA80: LDA.w RopeAnimControl, Y\n #_05AA83: STA.w $0D90, X\n\n #_05AA86: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6F_Keese", + "code": "Sprite_6F_Keese:\n #_05AA8B: LDA.w $0B89, X\n #_05AA8E: ORA.b #$30\n #_05AA90: STA.w $0B89, X\n\n #_05AA93: JSL SpriteDraw_SingleLarge_long\n\n #_05AA97: JSR Sprite_CheckIfActive_Bank05\n #_05AA9A: JSR Sprite_CheckIfRecoiling_Bank05\n #_05AA9D: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05AAA0: JSR Sprite_Move_XY_Bank05\n\n #_05AAA3: LDA.w SprAction, X\n #_05AAA6: BNE Keese_Agitated\n\n #_05AAA8: TXA\n #_05AAA9: EOR.b $1A\n #_05AAAB: AND.b #$03\n #_05AAAD: ORA.w SprTimerA, X\n #_05AAB0: BNE .exit\n\n #_05AAB2: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05AAB5: LDA.b $0E\n #_05AAB7: CLC\n #_05AAB8: ADC.b #$28\n #_05AABA: CMP.b #$50\n #_05AABC: BCS .exit\n\n #_05AABE: LDA.b $0F\n #_05AAC0: CLC\n #_05AAC1: ADC.b #$28\n #_05AAC3: CMP.b #$50\n #_05AAC5: BCS .exit\n\n #_05AAC7: LDA.b #$1E ; SFX3.1E\n #_05AAC9: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05AACD: INC.w SprAction, X\n\n #_05AAD0: LDA.b #$40\n #_05AAD2: STA.w SprTimerA, X\n #_05AAD5: STA.w SprMiscA, X\n\n #_05AAD8: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05AADB: LDA.w .speed_index, Y\n #_05AADE: STA.w $0D90, X\n\n.exit\n #_05AAE1: RTS", + "file": "bank_05.asm" + }, + { + "name": "Keese_MovementIndexStep", + "code": "Keese_MovementIndexStep:\n #_05AAE2: db 1, -1\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SomeRandomXSpeeds_Bank05", + "code": "SomeRandomXSpeeds_Bank05:\n #_05AAE4: db 0, 8, 11, 14\n #_05AAE8: db 16, 14, 11, 8\n #_05AAEC: db 0, -8, -11, -14\n #_05AAF0: db -16, -14, -11, -8\n", + "file": "bank_05.asm" + }, + { + "name": "SomeRandomYSpeeds_Bank05", + "code": "SomeRandomYSpeeds_Bank05:\n #_05AAF4: db -16, -14, -11, -8\n #_05AAF8: db 0, 8, 11, 14\n #_05AAFC: db 16, 14, 11, 8\n #_05AB00: db 0, -9, -11, -14\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Keese_Agitated", + "code": "Keese_Agitated:\n #_05AB04: LDA.w SprTimerA, X\n #_05AB07: BNE .not_calm\n\n #_05AB09: STZ.w SprAction, X\n\n #_05AB0C: LDA.b #$40\n #_05AB0E: STA.w SprTimerA, X\n\n #_05AB11: STZ.w $0DC0, X\n\n #_05AB14: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05AB17: RTS", + "file": "bank_05.asm" + }, + { + "name": "Cannonball", + "code": "Cannonball:\n #_05AB54: JSL SpriteDraw_SingleLarge_long\n #_05AB58: JSR Sprite_CheckIfActive_Bank05\n #_05AB5B: JSR Sprite_Move_XY_Bank05\n\n #_05AB5E: LDA.w SprTimerA, X\n #_05AB61: CMP.b #$1E\n #_05AB63: BNE .no_poof\n\n #_05AB65: PHA\n #_05AB66: JSL Sprite_SpawnPoofGarnish\n #_05AB6A: PLA\n\n.no_poof\n #_05AB6B: CMP.b #$00\n #_05AB6D: BNE Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05AB6F: JSR Sprite_CheckTileCollision_Bank05\n #_05AB72: BEQ Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05AB74: STZ.w $0DD0, X\n\n #_05AB77: LDA.w SprX, X\n #_05AB7A: CLC\n #_05AB7B: ADC.b #$04\n #_05AB7D: STA.w SprX, X\n\n #_05AB80: LDA.w SprY, X\n #_05AB83: CLC\n #_05AB84: ADC.b #$04\n #_05AB86: STA.w SprY, X\n\n #_05AB89: JSL Sprite_PlaceWeaponTink_forced\n\n #_05AB8D: LDA.b #$05 ; SFX2.05\n #_05AB8F: JSL SpriteSFX_QueueSFX2WithPan\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_CheckDamageToAndFromLink_Bank05", + "code": "Sprite_CheckDamageToAndFromLink_Bank05:\n #_05AB93: JSL Sprite_CheckDamageFromLink_long\n #_05AB97: JSL Sprite_CheckDamageToLink_long\n\n #_05AB9B: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_SpawnPoofGarnish", + "code": "Sprite_SpawnPoofGarnish:\n #_05AB9C: PHX\n #_05AB9D: TXY\n\n #_05AB9E: LDX.b #$1D\n\n.next_slot\n #_05ABA0: LDA.l $7FF800, X\n #_05ABA4: BEQ .free_slot\n\n #_05ABA6: DEX\n #_05ABA7: BPL .next_slot\n\n #_05ABA9: INX\n\n.free_slot\n #_05ABAA: LDA.b #$0A ; GARNISH 0A\n #_05ABAC: STA.l $7FF800, X\n #_05ABB0: STA.w $0FB4\n\n #_05ABB3: LDA.w SprX, Y\n #_05ABB6: STA.l $7FF83C, X\n\n #_05ABBA: LDA.w SprXH, Y\n #_05ABBD: STA.l $7FF878, X\n\n #_05ABC1: LDA.w SprY, Y\n #_05ABC4: CLC\n #_05ABC5: ADC.b #$10\n #_05ABC7: STA.l $7FF81E, X\n\n #_05ABCB: LDA.w SprYH, Y\n #_05ABCE: ADC.b #$00\n #_05ABD0: STA.l $7FF85A, X\n\n #_05ABD4: LDA.w $0F20, Y\n #_05ABD7: STA.l $7FF92C, X\n\n #_05ABDB: LDA.b #$0F\n #_05ABDD: STA.l $7FF90E, X\n\n #_05ABE1: TXY\n #_05ABE2: PLX\n\n #_05ABE3: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6B_Cannonball", + "code": "Sprite_6B_Cannonball:\n #_05ABE4: LDA.w $0DB0, X\n #_05ABE7: BEQ CannonGuard\n\n #_05ABE9: JMP.w Cannonball\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard", + "code": "CannonGuard:\n #_05ABEC: LDY.w SprMiscC, X\n #_05ABEF: PHY\n\n #_05ABF0: LDA.w SprTimerB, X\n #_05ABF3: BEQ .dont_turn\n\n #_05ABF5: LDA.w SpriteDirections_Bank05, Y\n #_05ABF8: STA.w SprMiscC, X\n\n.dont_turn\n #_05ABFB: JSR SpriteDraw_CannonGuard\n\n #_05ABFE: PLA\n #_05ABFF: STA.w SprMiscC, X\n\n #_05AC02: JSR Sprite_CheckIfActive_Bank05\n #_05AC05: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05AC08: LDA.w SprAction, X\n\n #_05AC0B: REP #$30\n\n #_05AC0D: AND.w #$00FF\n #_05AC10: ASL A\n #_05AC11: TAY\n\n #_05AC12: LDA.w .vectors, Y\n #_05AC15: DEC A\n #_05AC16: PHA\n\n #_05AC17: SEP #$30\n\n #_05AC19: RTS", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard_Idle", + "code": "CannonGuard_Idle:\n #_05AC24: STZ.w $0D90, X\n\n #_05AC27: LDA.w SprTimerA, X\n #_05AC2A: BNE .exit\n\n #_05AC2C: INC.w SprAction, X\n\n #_05AC2F: LDA.b #$60\n #_05AC31: STA.w SprTimerA, X\n\n; =========================================================\n\n#CannonGuard_FaceLink:\n #_05AC34: LDA.w SprMiscC, X\n #_05AC37: PHA\n\n #_05AC38: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05AC3B: TYA\n #_05AC3C: STA.w SprMiscC, X\n\n #_05AC3F: PLA\n #_05AC40: CMP.w SprMiscC, X\n #_05AC43: BEQ .exit\n\n #_05AC45: EOR.w SprMiscC, X\n #_05AC48: AND.b #$02\n #_05AC4A: BNE .exit\n\n #_05AC4C: LDA.b #$0C\n #_05AC4E: STA.w SprTimerB, X\n\n.exit\n #_05AC51: RTS", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard_Charge", + "code": "CannonGuard_Charge:\n #_05AC52: LDA.b #$00\n\n #_05AC54: LDY.w SprTimerA, X\n #_05AC57: BEQ .fire_shot\n\n #_05AC59: CPY.b #$30\n #_05AC5B: BCS .lift_arm\n\n #_05AC5D: LDA.b #$02\n\n.lift_arm\n #_05AC5F: STA.w $0D90, X\n\n #_05AC62: RTS", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard_Fire", + "code": "CannonGuard_Fire:\n #_05ACF2: LDA.w SprTimerA, X\n #_05ACF5: BNE .delay\n\n #_05ACF7: INC.w SprAction, X\n\n #_05ACFA: LDA.b #$20\n #_05ACFC: STA.w SprTimerA, X\n\n.delay\n #_05ACFF: LDY.w SprMiscC, X\n\n #_05AD02: LDA.w .recoil_speed_x, Y\n #_05AD05: STA.w SprXSpeed, X\n\n #_05AD08: LDA.w .recoil_speed_y, Y\n #_05AD0B: STA.w SprYSpeed, X\n\n #_05AD0E: JSR Sprite_Move_XY_Bank05\n\n #_05AD11: RTS", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard_Recoil", + "code": "CannonGuard_Recoil:\n #_05AD12: LDA.w SprTimerA, X\n #_05AD15: BNE .exit\n\n #_05AD17: INC.w SprAction, X\n\n #_05AD1A: LDA.b #$10\n #_05AD1C: STA.w SprTimerA, X\n\n.exit\n #_05AD1F: RTS", + "file": "bank_05.asm" + }, + { + "name": "CannonGuard_Recover", + "code": "CannonGuard_Recover:\n #_05AD28: LDA.w SprTimerA, X\n #_05AD2B: BNE .delay\n\n #_05AD2D: STZ.w SprAction, X\n\n #_05AD30: LDA.b #$80\n #_05AD32: STA.w SprTimerA, X\n\n.delay\n #_05AD35: LDY.w SprMiscC, X\n\n #_05AD38: LDA.w .recover_speed_x, Y\n #_05AD3B: STA.w SprXSpeed, X\n\n #_05AD3E: LDA.w .recover_speed_y, Y\n #_05AD41: STA.w SprYSpeed, X\n\n #_05AD44: JSR Sprite_Move_XY_Bank05\n\n #_05AD47: LDA.b $1A\n #_05AD49: LSR A\n #_05AD4A: LSR A\n #_05AD4B: AND.b #$01\n #_05AD4D: STA.w $0D90, X\n\n #_05AD50: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_CannonGuard", + "code": "SpriteDraw_CannonGuard:\n #_05AEF9: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05AEFC: LDY.w SprMiscC, X\n\n #_05AEFF: LDA.w .direction_offset, Y\n #_05AF02: CLC\n #_05AF03: ADC.w $0D90, X\n #_05AF06: STA.b $06\n\n #_05AF08: ASL A\n #_05AF09: ASL A\n #_05AF0A: ADC.b $06\n #_05AF0C: STA.b $06\n\n #_05AF0E: PHX\n\n #_05AF0F: LDX.b #$04\n #_05AF11: LDY.b #$00\n\n.next_object\n #_05AF13: PHX\n\n #_05AF14: TXA\n #_05AF15: CLC\n #_05AF16: ADC.b $06\n #_05AF18: PHA\n\n #_05AF19: ASL A\n #_05AF1A: TAX\n\n #_05AF1B: REP #$20\n\n #_05AF1D: LDA.b $00\n #_05AF1F: CLC\n #_05AF20: ADC.w .offset_x, X\n #_05AF23: STA.b ($90), Y\n\n #_05AF25: AND.w #$0100\n #_05AF28: STA.b $0E\n\n #_05AF2A: LDA.b $02\n #_05AF2C: CLC\n #_05AF2D: ADC.w .offset_y, X\n\n #_05AF30: INY\n #_05AF31: STA.b ($90), Y\n\n #_05AF33: CLC\n #_05AF34: ADC.w #$0010\n #_05AF37: CMP.w #$0100\n #_05AF3A: BCC .on_screen\n\n #_05AF3C: LDA.w #$00F0\n #_05AF3F: STA.b ($90), Y\n\n.on_screen\n #_05AF41: SEP #$20\n\n #_05AF43: PLX\n\n #_05AF44: LDA.w .char, X\n #_05AF47: INY\n #_05AF48: STA.b ($90), Y\n\n #_05AF4A: SEC\n #_05AF4B: SBC.b #$24\n #_05AF4D: CMP.b #$05\n\n #_05AF4F: LDA.w .flip, X\n #_05AF52: ORA.b $05\n #_05AF54: BCS .not_cannon\n\n #_05AF56: AND.b #$F1\n #_05AF58: ORA.b #$06\n\n.not_cannon\n #_05AF5A: INY\n\n #_05AF5B: STA.b ($90), Y\n\n #_05AF5D: PHY\n\n #_05AF5E: TYA\n #_05AF5F: LSR A\n #_05AF60: LSR A\n #_05AF61: TAY\n\n #_05AF62: LDA.w .size, X\n #_05AF65: ORA.b $0F\n #_05AF67: STA.b ($92), Y\n\n #_05AF69: PLY\n #_05AF6A: INY\n\n #_05AF6B: PLX\n #_05AF6C: DEX\n #_05AF6D: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_05AF6F: PLX\n\n #_05AF70: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6C_MirrorPortal", + "code": "Sprite_6C_MirrorPortal:\n #_05AF75: LDA.l $7EF3CA\n #_05AF79: BNE .in_dark_world\n\n #_05AF7B: LDA.b $8A\n #_05AF7D: CMP.b #$80 ; SPOW\n #_05AF7F: BCC .in_normal_overworld\n\n #_05AF81: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_6A_BallNChain", + "code": "Sprite_6A_BallNChain:\n #_05B01B: JSR SpriteDraw_BallNChain\n\n #_05B01E: LDA.w SprAction, X\n #_05B021: CMP.b #$02\n #_05B023: BCS .not_attacking\n\n #_05B025: LDA.b #$80\n #_05B027: STA.w $0FAB\n\n.not_attacking\n #_05B02A: JSR Sprite_CheckIfActive_Bank05\n #_05B02D: JSL Guard_ParrySwordAttacks\n\n #_05B031: LDY.w SprAction, X\n\n #_05B034: LDA.w .spin_speed-2, Y\n #_05B037: CLC\n #_05B038: ADC.w $0D90, X\n #_05B03B: STA.w $0D90, X\n\n #_05B03E: LDA.w SprMiscA, X\n #_05B041: ADC.b #$00\n #_05B043: AND.b #$01\n #_05B045: STA.w SprMiscA, X\n\n #_05B048: JSR Sprite_CheckIfRecoiling_Bank05\n #_05B04B: JSR Sprite_CheckTileCollision_Bank05\n #_05B04E: JSR Sprite_Move_XY_Bank05\n #_05B051: JSL Sprite_CheckDamageToLink_long\n\n #_05B055: TXA\n #_05B056: EOR.b $1A\n #_05B058: AND.b #$0F\n #_05B05A: BNE .dont_turn\n\n #_05B05C: JSR Sprite_DirectionToFaceLink_Bank05\n #_05B05F: TYA\n #_05B060: STA.w SprMiscE, X\n\n; ---------------------------------------------------------\n\n.dont_turn\n #_05B063: LDA.w SprAction, X\n\n #_05B066: REP #$30\n\n #_05B068: AND.w #$00FF\n #_05B06B: ASL A\n #_05B06C: TAY\n\n #_05B06D: LDA.w .vectors, Y\n #_05B070: DEC A\n #_05B071: PHA\n\n #_05B072: SEP #$30\n\n #_05B074: RTS", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_Approach", + "code": "BallNChain_Approach:\n #_05B07D: TXA\n #_05B07E: EOR.b $1A\n #_05B080: AND.b #$0F\n #_05B082: BNE BallNChain_Animate\n\n #_05B084: LDA.w SprMiscE, X\n #_05B087: STA.w SprMiscC, X\n\n #_05B08A: LDA.b $0E\n #_05B08C: CLC\n #_05B08D: ADC.b #$40\n #_05B08F: CMP.b #$68\n #_05B091: BCS .out_of_range\n\n #_05B093: LDA.b $0F\n #_05B095: CLC\n #_05B096: ADC.b #$30\n #_05B098: CMP.b #$60\n #_05B09A: BCS .out_of_range\n\n #_05B09C: INC.w SprAction, X\n\n #_05B09F: LDA.b #$18\n #_05B0A1: STA.w SprTimerA, X\n\n #_05B0A4: RTS", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_Animate", + "code": "BallNChain_Animate:\n #_05B0AB: LDA.w SprMiscC, X\n #_05B0AE: ASL A\n #_05B0AF: ASL A\n #_05B0B0: ASL A\n #_05B0B1: STA.b $00\n\n #_05B0B3: INC.w SprDelay, X\n\n #_05B0B6: LDA.w SprDelay, X\n #_05B0B9: LSR A\n #_05B0BA: LSR A\n #_05B0BB: AND.b #$07\n #_05B0BD: ORA.b $00\n #_05B0BF: TAY\n\n #_05B0C0: LDA.w BlusainAndBNC_anim_step, Y\n #_05B0C3: STA.w $0DC0, X\n\n #_05B0C6: RTS", + "file": "bank_05.asm" + }, + { + "name": "BlusainAndBNC_anim_step", + "code": "BlusainAndBNC_anim_step:\n #_05B0C7: db $10, $11, $12, $13, $10, $11, $12, $13\n #_05B0CF: db $06, $07, $08, $09, $06, $07, $08, $09\n #_05B0D7: db $00, $01, $02, $03, $00, $01, $04, $05\n #_05B0DF: db $0A, $0B, $0C, $0D, $0A, $0B, $0E, $0F\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_Steady", + "code": "BallNChain_Steady:\n #_05B0E7: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05B0EA: LDA.w SprTimerA, X\n #_05B0ED: BNE .exit\n\n #_05B0EF: LDA.b #$30\n #_05B0F1: STA.w SprTimerA, X\n\n #_05B0F4: INC.w SprAction, X\n\n.exit\n #_05B0F7: RTS", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_SpinFlail", + "code": "BallNChain_SpinFlail:\n #_05B0FC: LDA.w SprTimerA, X\n #_05B0FF: BNE BallNChain_AnimateAndSFX\n\n #_05B101: LDA.w $0D90, X\n #_05B104: ASL A\n\n #_05B105: LDA.w SprMiscA, X\n #_05B108: ROL A\n #_05B109: TAY\n\n #_05B10A: LDA.w .direction, Y\n #_05B10D: CMP.w SprMiscE, X\n #_05B110: BNE BallNChain_AnimateAndSFX\n\n #_05B112: INC.w SprAction, X\n\n #_05B115: LDA.b #$1F\n #_05B117: STA.w $0E10, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_AnimateAndSFX", + "code": "BallNChain_AnimateAndSFX:\n #_05B11A: INC.w SprDelay, X\n\n #_05B11D: JSR BallNChain_Animate\n\n #_05B120: TXA\n #_05B121: EOR.b $1A\n #_05B123: AND.b #$0F\n #_05B125: BNE .exit\n\n #_05B127: LDA.b #$06 ; SFX3.06\n #_05B129: JSL SpriteSFX_QueueSFX3WithPan\n\n.exit\n #_05B12D: RTS", + "file": "bank_05.asm" + }, + { + "name": "BallNChain_SlowFlail", + "code": "BallNChain_SlowFlail:\n #_05B12E: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05B131: LDA.w $0E10, X\n #_05B134: BNE .delay\n\n #_05B136: STZ.w SprAction, X\n\n.delay\n #_05B139: CMP.b #$10\n #_05B13B: BCS BallNChain_AnimateAndSFX\n\n #_05B13D: INC.w SprDelay, X\n\n #_05B140: JSR BallNChain_Animate\n\n #_05B143: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BallNChain", + "code": "SpriteDraw_BallNChain:\n #_05B144: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05B147: JSR SpriteDraw_BNCHead\n #_05B14A: JSR SpriteDraw_BNCBody\n #_05B14D: JSR SpriteDraw_BNCFlail\n\n #_05B150: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05B153: JMP.w Guard_DrawShadow\n\n; =========================================================\n\npool SpriteDraw_GuardHead\n\n.head_char\n #_05B156: db $02, $02, $00, $04\n\n.head_flip\n #_05B15A: db $40, $00, $00, $00\n\npool off\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BNCHead", + "code": "SpriteDraw_BNCHead:\n #_05B15E: LDY.b #$18\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardHead", + "code": "SpriteDraw_GuardHead:\n #_05B160: PHX\n\n #_05B161: LDA.w SprMiscE, X\n #_05B164: TAX\n\n #_05B165: REP #$20\n\n #_05B167: LDA.b $00\n #_05B169: STA.b ($90), Y\n\n #_05B16B: AND.w #$0100\n #_05B16E: STA.b $0E\n\n #_05B170: LDA.b $02\n #_05B172: SEC\n #_05B173: SBC.w #$0009\n\n #_05B176: INY\n #_05B177: STA.b ($90), Y\n\n #_05B179: CLC\n #_05B17A: ADC.w #$0010\n #_05B17D: CMP.w #$0100\n #_05B180: BCC .head_on_screen\n\n #_05B182: LDA.w #$00F0\n #_05B185: STA.b ($90), Y\n\n.head_on_screen\n #_05B187: SEP #$20\n\n #_05B189: LDA.w .head_char, X\n #_05B18C: INY\n #_05B18D: STA.b ($90), Y\n\n #_05B18F: LDA.w .head_flip, X\n #_05B192: INY\n #_05B193: ORA.b $05\n #_05B195: STA.b ($90), Y\n\n #_05B197: TYA\n #_05B198: LSR A\n #_05B199: LSR A\n #_05B19A: TAY\n\n #_05B19B: LDA.b #$02\n #_05B19D: ORA.b $0F\n #_05B19F: STA.b ($92), Y\n\n #_05B1A1: PLX\n\n #_05B1A2: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BNCBody", + "code": "SpriteDraw_BNCBody:\n #_05B3CB: LDY.b #$14\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardBody", + "code": "SpriteDraw_GuardBody:\n #_05B3CD: LDA.w $0DC0, X\n #_05B3D0: ASL A\n #_05B3D1: ADC.w $0DC0, X\n #_05B3D4: STA.b $06\n\n #_05B3D6: PHX\n\n #_05B3D7: LDA.w $0DC0, X\n #_05B3DA: TAX\n\n #_05B3DB: TYA\n #_05B3DC: CLC\n #_05B3DD: ADC.w .body_oam_offset, X\n #_05B3E0: TAY\n\n #_05B3E1: LDA.w .body_object_count, X\n #_05B3E4: TAX\n\n.next_object\n #_05B3E5: PHX\n\n #_05B3E6: TXA\n #_05B3E7: CLC\n #_05B3E8: ADC.b $06\n #_05B3EA: PHA\n\n #_05B3EB: ASL A\n #_05B3EC: TAX\n\n #_05B3ED: REP #$20\n\n #_05B3EF: LDA.b $00\n #_05B3F1: CLC\n #_05B3F2: ADC.w .body_offset_x, X\n #_05B3F5: STA.b ($90), Y\n\n #_05B3F7: AND.w #$0100\n #_05B3FA: STA.b $0E\n\n #_05B3FC: LDA.b $02\n #_05B3FE: CLC\n #_05B3FF: ADC.w .body_offset_y, X\n\n #_05B402: INY\n #_05B403: STA.b ($90), Y\n\n #_05B405: CLC\n #_05B406: ADC.w #$0010\n #_05B409: CMP.w #$0100\n #_05B40C: BCC .body_on_screen\n\n #_05B40E: LDA.w #$00F0\n #_05B411: STA.b ($90), Y\n\n.body_on_screen\n #_05B413: SEP #$20\n\n #_05B415: PLX\n\n #_05B416: LDA.w .body_char, X\n #_05B419: INY\n #_05B41A: STA.b ($90), Y\n\n #_05B41C: LDA.w .body_flip, X\n #_05B41F: ORA.b $05\n #_05B421: INY\n #_05B422: STA.b ($90), Y\n\n #_05B424: PHY\n\n #_05B425: TYA\n #_05B426: LSR A\n #_05B427: LSR A\n #_05B428: TAY\n\n #_05B429: LDA.w .body_size, X\n #_05B42C: ORA.b $0F\n #_05B42E: STA.b ($92), Y\n\n #_05B430: PLY\n #_05B431: INY\n\n #_05B432: PLX\n #_05B433: CPX.b #$02\n #_05B435: BNE .body_no_advance\n\n #_05B437: INY\n #_05B438: INY\n #_05B439: INY\n #_05B43A: INY\n\n.body_no_advance\n #_05B43B: DEX\n #_05B43C: BPL .next_object\n\n #_05B43E: PLX\n\n #_05B43F: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BNCFlail", + "code": "SpriteDraw_BNCFlail:\n #_05B468: LDA.b $00\n #_05B46A: STA.w $0FA8\n\n #_05B46D: LDA.b $02\n #_05B46F: STA.w $0FA9\n\n #_05B472: LDA.w $0D90, X\n #_05B475: STA.b $00\n\n #_05B477: LDA.w SprMiscA, X\n #_05B47A: STA.b $01\n\n #_05B47C: LDA.b #$00\n\n #_05B47E: LDY.w SprAction, X\n #_05B481: CPY.b #$02\n #_05B483: BCC .not_swinging_a\n\n #_05B485: LDA.w $0E10, X\n #_05B488: TAY\n\n #_05B489: LDA.w .flail_extension, Y\n\n.not_swinging_a\n #_05B48C: STA.b $0F\n\n #_05B48E: LDY.w SprMiscC, X\n\n #_05B491: LDA.w .flail_offset_x, Y\n #_05B494: STA.b $0C\n\n #_05B496: LDA.w .flail_offset_y, Y\n #_05B499: STA.b $0D\n\n #_05B49B: PHX\n\n #_05B49C: REP #$30\n\n #_05B49E: LDA.b $00\n #_05B4A0: AND.w #$01FF\n #_05B4A3: LSR A\n #_05B4A4: LSR A\n #_05B4A5: LSR A\n #_05B4A6: LSR A\n #_05B4A7: LSR A\n #_05B4A8: LSR A\n #_05B4A9: STA.b $0A\n\n #_05B4AB: LDA.b $00\n #_05B4AD: CLC\n #_05B4AE: ADC.w #$0080\n\n #_05B4B1: AND.w #$01FF\n #_05B4B4: STA.b $02\n\n #_05B4B6: LDA.b $00\n #_05B4B8: AND.w #$00FF\n #_05B4BB: ASL A\n #_05B4BC: TAX\n\n #_05B4BD: LDA.l SmoothCurve, X\n #_05B4C1: STA.b $04\n\n #_05B4C3: LDA.b $02\n #_05B4C5: AND.w #$00FF\n #_05B4C8: ASL A\n #_05B4C9: TAX\n\n #_05B4CA: LDA.l SmoothCurve, X\n #_05B4CE: STA.b $06\n\n #_05B4D0: SEP #$30\n\n #_05B4D2: PLX\n\n #_05B4D3: LDA.b $04\n #_05B4D5: STA.w WRMPYA\n\n #_05B4D8: LDA.b $0F\n\n #_05B4DA: LDY.b $05\n #_05B4DC: BNE .not_swinging_b\n\n #_05B4DE: STA.w WRMPYB\n\n #_05B4E1: JSR NOP4\n\n #_05B4E4: ASL.w RDMPYL\n #_05B4E7: LDA.w RDMPYH\n #_05B4EA: ADC.b #$00\n\n.not_swinging_b\n #_05B4EC: STA.b $0E\n\n #_05B4EE: LSR.b $01\n #_05B4F0: BCC .this_is_positive_a\n\n #_05B4F2: EOR.b #$FF\n #_05B4F4: INC A\n\n.this_is_positive_a\n #_05B4F5: STA.b $04\n\n; ---------------------------------------------------------\n\n #_05B4F7: LDA.b $06\n #_05B4F9: STA.w WRMPYA\n\n #_05B4FC: LDA.b $0F\n\n #_05B4FE: LDY.b $07\n #_05B500: BNE .this_was_nonzero\n\n #_05B502: STA.w WRMPYB\n\n #_05B505: JSR NOP4\n\n #_05B508: ASL.w RDMPYL\n #_05B50B: LDA.w RDMPYH\n #_05B50E: ADC.b #$00\n\n.this_was_nonzero\n #_05B510: STA.b $0F\n\n #_05B512: LSR.b $03\n #_05B514: BCC .this_is_positive_b\n\n #_05B516: EOR.b #$FF\n #_05B518: INC A\n\n.this_is_positive_b\n #_05B519: STA.b $06\n\n; ---------------------------------------------------------\n\n #_05B51B: LDY.b #$00\n\n #_05B51D: LDA.b $04\n #_05B51F: SEC\n #_05B520: SBC.b #$04\n\n #_05B522: CLC\n #_05B523: ADC.b $0C\n #_05B525: STA.w $0FAB\n\n #_05B528: CLC\n #_05B529: ADC.w $0FA8\n #_05B52C: STA.b ($90), Y\n\n #_05B52E: LDA.b $06\n #_05B530: SEC\n #_05B531: SBC.b #$04\n\n #_05B533: CLC\n #_05B534: ADC.b $0D\n #_05B536: STA.w $0FAA\n\n #_05B539: CLC\n #_05B53A: ADC.w $0FA9\n #_05B53D: INY\n #_05B53E: STA.b ($90), Y\n\n #_05B540: LDA.b #$2A\n #_05B542: INY\n #_05B543: STA.b ($90), Y\n\n #_05B545: LDA.b #$2D\n #_05B547: INY\n #_05B548: STA.b ($90), Y\n\n #_05B54A: LDA.b #$02\n #_05B54C: STA.b ($92)\n\n #_05B54E: LDY.b #$04\n\n; ---------------------------------------------------------\n\n #_05B550: PHX\n\n #_05B551: LDX.b #$03\n\n.next_object_flail\n #_05B553: LDA.b $0E\n #_05B555: STA.w WRMPYA\n\n #_05B558: LDA.w .chain_multiplicand, X\n #_05B55B: STA.w WRMPYB\n\n #_05B55E: JSR NOP4\n\n #_05B561: LDA.b $04\n #_05B563: ASL A\n\n #_05B564: LDA.w RDMPYH\n #_05B567: BCC .dont_invert_a\n\n #_05B569: EOR.b #$FF\n #_05B56B: INC A\n\n.dont_invert_a\n #_05B56C: CLC\n #_05B56D: ADC.w $0FA8\n #_05B570: CLC\n #_05B571: ADC.b $0C\n #_05B573: STA.b ($90), Y\n\n; ---------------------------------------------------------\n\n #_05B575: LDA.b $0F\n #_05B577: STA.w WRMPYA\n\n #_05B57A: LDA.w .chain_multiplicand, X\n #_05B57D: STA.w WRMPYB\n\n #_05B580: JSR NOP4\n\n #_05B583: LDA.b $06\n #_05B585: ASL A\n\n #_05B586: LDA.w RDMPYH\n #_05B589: BCC .dont_invert_b\n\n #_05B58B: EOR.b #$FF\n #_05B58D: INC A\n\n.dont_invert_b\n #_05B58E: CLC\n #_05B58F: ADC.w $0FA9\n #_05B592: CLC\n #_05B593: ADC.b $0D\n #_05B595: INY\n #_05B596: STA.b ($90), Y\n\n #_05B598: LDA.b #$3F\n #_05B59A: INY\n #_05B59B: STA.b ($90), Y\n\n #_05B59D: LDA.b #$2D\n #_05B59F: INY\n #_05B5A0: STA.b ($90), Y\n\n #_05B5A2: PHY\n\n #_05B5A3: TYA\n #_05B5A4: LSR A\n #_05B5A5: LSR A\n #_05B5A6: TAY\n\n #_05B5A7: LDA.b #$00\n #_05B5A9: STA.b ($92), Y\n\n #_05B5AB: PLY\n #_05B5AC: INY\n\n #_05B5AD: DEX\n #_05B5AE: BPL .next_object_flail\n\n #_05B5B0: PLX\n\n #_05B5B1: LDY.b #$FF\n #_05B5B3: LDA.b #$04\n #_05B5B5: JSL Sprite_CorrectOAMEntries_long\n\n #_05B5B9: RTS", + "file": "bank_05.asm" + }, + { + "name": "NOP4", + "code": "NOP4:\n #_05B5BE: NOP\n #_05B5BF: NOP\n #_05B5C0: NOP\n #_05B5C1: NOP\n\n #_05B5C2: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteModule_Active_Bank05", + "code": "SpriteModule_Active_Bank05:\n #_05B5C3: PHB\n #_05B5C4: PHK\n #_05B5C5: PLB\n\n #_05B5C6: JSR .main\n\n #_05B5C9: PLB\n\n #_05B5CA: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_50_Cannonball", + "code": "Sprite_50_Cannonball:\n #_05B648: LDA.w SprAction, X\n #_05B64B: BNE .big_ball\n\n #_05B64D: JSL SpriteDraw_SingleLarge_long\n #_05B651: BRA .continue\n\n.big_ball\n #_05B653: JSR SpriteDraw_BigCannonball\n\n.continue\n #_05B656: JSR Sprite_CheckIfActive_Bank05\n\n #_05B659: INC.w SprDelay, X\n\n #_05B65C: LDA.w SprDelay, X\n #_05B65F: LSR A\n #_05B660: LSR A\n #_05B661: AND.b #$01\n #_05B663: STA.w $0DC0, X\n\n #_05B666: JSR Sprite_Move_XY_Bank05\n\n #_05B669: LDA.w SprTimerA, X\n #_05B66C: BEQ .delay\n\n #_05B66E: DEC A\n #_05B66F: BNE .exit_a\n\n #_05B671: STZ.w $0DD0, X\n\n.exit_a\n #_05B674: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BigCannonball", + "code": "SpriteDraw_BigCannonball:\n #_05B6A4: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05B6A7: LDA.w $0DC0, X\n #_05B6AA: ASL A\n #_05B6AB: ASL A\n #_05B6AC: STA.b $06\n\n #_05B6AE: PHX\n\n #_05B6AF: LDX.b #$03\n\n.next_object\n #_05B6B1: PHX\n #_05B6B2: PHX\n\n #_05B6B3: TXA\n #_05B6B4: ASL A\n #_05B6B5: TAX\n\n #_05B6B6: REP #$20\n\n #_05B6B8: LDA.b $00\n #_05B6BA: CLC\n #_05B6BB: ADC.w .offset_x, X\n #_05B6BE: STA.b ($90), Y\n\n #_05B6C0: AND.w #$0100\n #_05B6C3: STA.b $0E\n\n #_05B6C5: LDA.b $02\n #_05B6C7: CLC\n #_05B6C8: ADC.w .offset_y, X\n\n #_05B6CB: INY\n #_05B6CC: STA.b ($90), Y\n\n #_05B6CE: CLC\n #_05B6CF: ADC.w #$0010\n #_05B6D2: CMP.w #$0100\n\n #_05B6D5: SEP #$20\n #_05B6D7: BCC .on_screen\n\n #_05B6D9: LDA.b #$F0\n #_05B6DB: STA.b ($90), Y\n\n.on_screen\n #_05B6DD: PLA\n #_05B6DE: CLC\n #_05B6DF: ADC.b $06\n #_05B6E1: TAX\n\n #_05B6E2: LDA.w .char, X\n #_05B6E5: INY\n #_05B6E6: STA.b ($90), Y\n\n #_05B6E8: PLX\n #_05B6E9: LDA.w .flip, X\n\n #_05B6EC: INY\n #_05B6ED: ORA.b $05\n #_05B6EF: STA.b ($90), Y\n\n #_05B6F1: PHY\n\n #_05B6F2: TYA\n #_05B6F3: LSR A\n #_05B6F4: LSR A\n #_05B6F5: TAY\n\n #_05B6F6: LDA.b $0F\n #_05B6F8: ORA.b #$02\n #_05B6FA: STA.b ($92), Y\n\n #_05B6FC: PLY\n #_05B6FD: INY\n\n #_05B6FE: DEX\n #_05B6FF: BPL .next_object\n\n #_05B701: PLX\n\n #_05B702: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_51_ArmosStatue", + "code": "Sprite_51_ArmosStatue:\n #_05B703: JSR SpriteDraw_ArmosStatue\n\n #_05B706: LDA.w $0EA0, X\n #_05B709: BEQ .not_recoiling\n\n #_05B70B: JSR Sprite_ZeroVelocity_XY_Bank05\n\n.not_recoiling\n #_05B70E: JSR Sprite_CheckIfActive_Bank05\n #_05B711: JSR Sprite_Move_Z_Bank05\n\n #_05B714: LDA.w $0F80, X\n #_05B717: SEC\n #_05B718: SBC.b #$02\n #_05B71A: STA.w $0F80, X\n\n #_05B71D: LDA.w $0F70, X\n #_05B720: BPL .airborne\n\n #_05B722: STZ.w $0F70, X\n #_05B725: STZ.w $0F80, X\n\n #_05B728: JSR Sprite_ZeroVelocity_XY_Bank05\n\n.airborne\n #_05B72B: LDA.w SprAction, X\n #_05B72E: BEQ ArmosStatue_Inactive\n\n #_05B730: JMP.w ArmosStatue_Active\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArmosStatue_Inactive", + "code": "ArmosStatue_Inactive:\n #_05B733: LDA.w $0E60, X\n #_05B736: ORA.b #$40\n #_05B738: STA.w $0E60, X\n\n #_05B73B: LDY.w SprTimerA, X\n #_05B73E: CPY.b #$01\n #_05B740: BNE .delay\n\n #_05B742: AND.b #$BF\n #_05B744: STA.w $0E60, X\n\n #_05B747: INC.w SprAction, X\n\n #_05B74A: ASL.w $0E40, X\n #_05B74D: LSR.w $0E40, X\n\n #_05B750: LDA.w $0E60, X\n #_05B753: AND.b #$BF\n #_05B755: STA.w $0E60, X\n\n #_05B758: LDA.b #$0B\n #_05B75A: STA.w $0F50, X\n\n #_05B75D: RTS", + "file": "bank_05.asm" + }, + { + "name": "ArmosStatue_Active", + "code": "ArmosStatue_Active:\n #_05B7BA: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05B7BD: JSR Sprite_CheckIfRecoiling_Bank05\n #_05B7C0: JSR Sprite_Move_XY_Bank05\n #_05B7C3: JSR Sprite_CheckTileCollision_Bank05\n\n #_05B7C6: LDA.w SprTimerA, X\n #_05B7C9: ORA.w $0F70, X\n #_05B7CC: BNE .exit\n\n #_05B7CE: LDA.b #$08\n #_05B7D0: STA.w SprTimerA, X\n\n #_05B7D3: LDA.b #$10\n #_05B7D5: STA.w $0F80, X\n\n #_05B7D8: LDA.b #$0C\n #_05B7DA: JSL Sprite_ApplySpeedTowardsLink_long\n\n.exit\n #_05B7DE: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_ArmosStatue", + "code": "SpriteDraw_ArmosStatue:\n #_05B7EF: LDA.w SprAction, X\n #_05B7F2: BNE .lower_region\n\n #_05B7F4: JSR Sprite_PrepOAMCoord_Bank05\n\n.lower_region\n #_05B7F7: REP #$20\n\n #_05B7F9: LDA.w #.oam_groups\n #_05B7FC: STA.b $08\n\n #_05B7FE: SEP #$20\n\n #_05B800: LDA.b #$02\n #_05B802: JSR SpriteDraw_Tabulated_Bank05\n\n #_05B805: JSL SpriteDraw_Shadow_long\n\n #_05B809: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4E_Popo", + "code": "Sprite_4E_Popo:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4F_Popo", + "code": "Sprite_4F_Popo:\n #_05B80A: JSR SpriteDraw_Popo\n #_05B80D: JSR Sprite_CheckIfActive_Bank05\n #_05B810: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05B813: INC.w SprDelay, X\n\n #_05B816: LDA.w SprDelay, X\n #_05B819: LSR A\n #_05B81A: LSR A\n #_05B81B: LSR A\n #_05B81C: LSR A\n #_05B81D: AND.b #$03\n #_05B81F: STA.w $0D90, X\n\n #_05B822: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05B825: LDA.w SprAction, X\n #_05B828: CMP.b #$02\n #_05B82A: BEQ Popo_Moving\n\n #_05B82C: CMP.b #$01\n #_05B82E: BEQ Popo_Wiggling\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Popo_Idling", + "code": "Popo_Idling:\n #_05B830: LDA.w SprTimerA, X\n #_05B833: BNE .exit\n\n #_05B835: INC.w SprAction, X\n\n #_05B838: LDA.b #$69\n #_05B83A: STA.w SprTimerA, X\n\n.exit\n #_05B83D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Popo_Wiggling", + "code": "Popo_Wiggling:\n #_05B83E: INC.w SprDelay, X\n\n #_05B841: LDA.w SprTimerA, X\n #_05B844: BNE .exit\n\n #_05B846: JSL GetRandomNumber\n #_05B84A: AND.b #$3F\n #_05B84C: ADC.b #$80\n #_05B84E: STA.w SprTimerA, X\n\n #_05B851: INC.w SprAction, X\n\n #_05B854: JSL GetRandomNumber\n #_05B858: AND.b #$0F\n #_05B85A: TAY\n\n #_05B85B: LDA.w SomeRandomXSpeeds_Bank05, Y\n #_05B85E: ASL A\n #_05B85F: ASL A\n #_05B860: STA.w SprXSpeed, X\n\n #_05B863: LDA.w SomeRandomYSpeeds_Bank05, Y\n #_05B866: ASL A\n #_05B867: ASL A\n #_05B868: STA.w SprYSpeed, X\n\n.exit\n #_05B86B: RTS", + "file": "bank_05.asm" + }, + { + "name": "Popo_Moving", + "code": "Popo_Moving:\n #_05B86C: INC.w SprDelay, X\n\n #_05B86F: LDA.w SprTimerA, X\n #_05B872: BNE .delay\n\n.reset_ai\n #_05B874: STZ.w SprAction, X\n\n #_05B877: LDA.b #$50\n #_05B879: STA.w SprTimerA, X\n\n #_05B87C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_CheckTileCollision_Bank05", + "code": "Sprite_CheckTileCollision_Bank05:\n #_05B88D: JSL Sprite_CheckTileCollision_long\n\n #_05B891: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Popo", + "code": "SpriteDraw_Popo:\n #_05B89A: LDY.w $0D90, X\n\n #_05B89D: LDA.w .anim_step, Y\n #_05B8A0: STA.w $0DC0, X\n\n #_05B8A3: LDA.w $0F50, X\n #_05B8A6: AND.b #$BF\n #_05B8A8: ORA.w .flip, Y\n #_05B8AB: STA.w $0F50, X\n\n #_05B8AE: JSL SpriteDraw_SingleLarge_long\n\n #_05B8B2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4C_Geldman", + "code": "Sprite_4C_Geldman:\n #_05B8B3: LDA.w SprAction, X\n #_05B8B6: CMP.b #$02\n #_05B8B8: BCS .do_indeed_draw\n\n #_05B8BA: JSL Sprite_PrepOAMCoord_long\n #_05B8BE: BRA .continue\n\n.do_indeed_draw\n #_05B8C0: JSR SpriteDraw_Geldman\n\n.continue\n #_05B8C3: JSR Sprite_CheckIfActive_Bank05\n #_05B8C6: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05B8C9: LDA.b #$01\n #_05B8CB: STA.w $0BA0, X\n\n #_05B8CE: LDA.w SprAction, X\n\n #_05B8D1: REP #$30\n\n #_05B8D3: AND.w #$00FF\n #_05B8D6: ASL A\n #_05B8D7: TAY\n\n #_05B8D8: LDA.w .vectors, Y\n #_05B8DB: DEC A\n #_05B8DC: PHA\n\n #_05B8DD: SEP #$30\n\n #_05B8DF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Geldman_Hiding", + "code": "Geldman_Hiding:\n #_05B8EA: LDA.w SprTimerA, X\n #_05B8ED: BNE .exit\n\n #_05B8EF: LDA.w $0D90, X\n #_05B8F2: STA.w SprX, X\n\n #_05B8F5: LDA.w SprMiscA, X\n #_05B8F8: STA.w SprXH, X\n\n #_05B8FB: LDA.w $0DB0, X\n #_05B8FE: STA.w SprY, X\n\n #_05B901: LDA.w SprMiscE, X\n #_05B904: STA.w SprYH, X\n\n #_05B907: INC.w SprAction, X\n\n.exit\n #_05B90A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Geldman_WaitForLink", + "code": "Geldman_WaitForLink:\n #_05B90B: TXA\n #_05B90C: EOR.b $1A\n #_05B90E: AND.b #$07\n #_05B910: BNE .dont_pounce\n\n #_05B912: REP #$20\n\n #_05B914: LDA.b $22\n #_05B916: SEC\n #_05B917: SBC.w $0FD8\n #_05B91A: CLC\n #_05B91B: ADC.w #$0030\n\n #_05B91E: CMP.w #$0060\n #_05B921: BCS .dont_pounce\n\n #_05B923: LDA.b $20\n #_05B925: SEC\n #_05B926: SBC.w $0FDA\n #_05B929: CLC\n #_05B92A: ADC.w #$0030\n\n #_05B92D: CMP.w #$0060\n #_05B930: BCS .dont_pounce\n\n #_05B932: SEP #$20\n\n #_05B934: INC.w SprAction, X\n\n #_05B937: LDA.b #$1F\n #_05B939: STA.w SprTimerA, X\n\n.dont_pounce\n #_05B93C: SEP #$20\n\n #_05B93E: RTS", + "file": "bank_05.asm" + }, + { + "name": "Geldman_Ambush", + "code": "Geldman_Ambush:\n #_05B93F: LDA.w SprTimerA, X\n #_05B942: BNE .delay\n\n #_05B944: INC.w SprAction, X\n\n #_05B947: LDA.b #$60\n #_05B949: STA.w SprTimerA, X\n\n #_05B94C: LDA.b #$10\n #_05B94E: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_05B952: RTS", + "file": "bank_05.asm" + }, + { + "name": "Geldman_Chase", + "code": "Geldman_Chase:\n #_05B96C: STZ.w $0BA0, X\n\n #_05B96F: LDA.w SprTimerA, X\n #_05B972: BNE .delay\n\n #_05B974: INC.w SprAction, X\n\n #_05B977: LDA.b #$08\n #_05B979: STA.w SprTimerA, X\n\n #_05B97C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Geldman_Retreat", + "code": "Geldman_Retreat:\n #_05B98F: LDA.w SprTimerA, X\n #_05B992: BNE .delay\n\n #_05B994: STZ.w SprAction, X\n\n #_05B997: LDA.b #$10\n #_05B999: STA.w SprTimerA, X\n\n #_05B99C: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Geldman", + "code": "SpriteDraw_Geldman:\n #_05BA24: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05BA27: LDA.w $0DC0, X\n #_05BA2A: ASL A\n #_05BA2B: ADC.w $0DC0, X\n #_05BA2E: STA.b $06\n\n #_05BA30: PHX\n\n #_05BA31: LDX.b #$02\n\n.next_object\n #_05BA33: PHX\n\n #_05BA34: TXA\n #_05BA35: CLC\n #_05BA36: ADC.b $06\n #_05BA38: PHA\n\n #_05BA39: ASL A\n #_05BA3A: TAX\n\n #_05BA3B: REP #$20\n\n #_05BA3D: LDA.b $00\n #_05BA3F: CLC\n #_05BA40: ADC.w .offset_x, X\n #_05BA43: STA.b ($90), Y\n\n #_05BA45: AND.w #$0100\n #_05BA48: STA.b $0E\n\n #_05BA4A: LDA.b $02\n #_05BA4C: CLC\n #_05BA4D: ADC.w .offset_y, X\n\n #_05BA50: INY\n #_05BA51: STA.b ($90), Y\n\n #_05BA53: CLC\n #_05BA54: ADC.w #$0010\n #_05BA57: CMP.w #$0100\n\n #_05BA5A: SEP #$20\n #_05BA5C: BCC .on_screen\n\n #_05BA5E: LDA.b #$F0\n #_05BA60: STA.b ($90), Y\n\n.on_screen\n #_05BA62: PLX\n\n #_05BA63: LDA.w .char, X\n #_05BA66: INY\n #_05BA67: STA.b ($90), Y\n\n #_05BA69: LDA.w .prop, X\n #_05BA6C: INY\n #_05BA6D: ORA.b $05\n #_05BA6F: STA.b ($90), Y\n\n #_05BA71: PHY\n\n #_05BA72: TYA\n #_05BA73: LSR A\n #_05BA74: LSR A\n #_05BA75: TAY\n\n #_05BA76: LDA.w .size, X\n #_05BA79: ORA.b $0F\n #_05BA7B: STA.b ($92), Y\n\n #_05BA7D: PLY\n #_05BA7E: INY\n\n #_05BA7F: PLX\n #_05BA80: DEX\n #_05BA81: BPL .next_object\n\n #_05BA83: PLX\n\n #_05BA84: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4D_Toppo", + "code": "Sprite_4D_Toppo:\n #_05BA85: LDA.w SprAction, X\n #_05BA88: BEQ .hidden\n\n #_05BA8A: LDA.w $0B89, X\n #_05BA8D: ORA.b #$30\n #_05BA8F: STA.w $0B89, X\n\n #_05BA92: JSR SpriteDraw_Toppo\n\n.hidden\n #_05BA95: JSR Sprite_CheckIfActive_Bank05\n\n #_05BA98: LDA.w SprAction, X\n\n #_05BA9B: REP #$30\n\n #_05BA9D: AND.w #$00FF\n #_05BAA0: ASL A\n #_05BAA1: TAY\n\n #_05BAA2: LDA.w .vectors, Y\n #_05BAA5: DEC A\n #_05BAA6: PHA\n\n #_05BAA7: SEP #$30\n\n #_05BAA9: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_Hiding", + "code": "Toppo_Hiding:\n #_05BAC6: LDA.w SprTimerA, X\n #_05BAC9: BNE .exit\n\n #_05BACB: INC.w SprAction, X\n\n #_05BACE: LDA.b #$08\n #_05BAD0: STA.w SprTimerA, X\n\n #_05BAD3: JSL GetRandomNumber\n #_05BAD7: AND.b #$03\n #_05BAD9: TAY\n\n #_05BADA: LDA.w $0D90, X\n #_05BADD: CLC\n #_05BADE: ADC.w .offset_x_low, Y\n #_05BAE1: STA.w SprX, X\n\n #_05BAE4: LDA.w SprMiscA, X\n #_05BAE7: ADC.w .offset_x_high, Y\n #_05BAEA: STA.w SprXH, X\n\n #_05BAED: LDA.w $0DB0, X\n #_05BAF0: CLC\n #_05BAF1: ADC.w .offset_y_low, Y\n #_05BAF4: STA.w SprY, X\n\n #_05BAF7: LDA.w SprMiscE, X\n #_05BAFA: ADC.w .offset_y_high, Y\n #_05BAFD: STA.w SprYH, X\n\n.exit\n #_05BB00: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_RustleGrass", + "code": "Toppo_RustleGrass:\n #_05BB01: LDA.w SprTimerA, X\n #_05BB04: BNE .delay\n\n #_05BB06: INC.w SprAction, X\n\n #_05BB09: LDA.b #$10\n #_05BB0B: STA.w SprTimerA, X\n\n #_05BB0E: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_PokingOut", + "code": "Toppo_PokingOut:\n #_05BB1A: LDA.w SprTimerA, X\n #_05BB1D: BNE .delay\n\n #_05BB1F: INC.w SprAction, X\n\n #_05BB22: LDA.b #$40\n #_05BB24: STA.w $0F80, X\n\n.delay\n #_05BB27: LDA.b #$02\n #_05BB29: STA.w $0DC0, X\n\n #_05BB2C: JSR Toppo_VerifyTile\n\n #_05BB2F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_Leaping", + "code": "Toppo_Leaping:\n #_05BB30: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05BB33: JSR Sprite_Move_Z_Bank05\n\n #_05BB36: LDA.w $0F80, X\n #_05BB39: SEC\n #_05BB3A: SBC.b #$02\n #_05BB3C: STA.w $0F80, X\n\n #_05BB3F: LDA.w $0F70, X\n #_05BB42: BPL .exit\n\n #_05BB44: STZ.w $0F70, X\n\n #_05BB47: INC.w SprAction, X\n\n #_05BB4A: LDA.b #$10\n #_05BB4C: STA.w SprTimerA, X\n\n #_05BB4F: JSR Toppo_VerifyTile\n\n.exit\n #_05BB52: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_Retreat", + "code": "Toppo_Retreat:\n #_05BB53: LDA.w SprTimerA, X\n #_05BB56: BNE .delay\n\n #_05BB58: STZ.w SprAction, X\n\n #_05BB5B: LDA.b #$20\n #_05BB5D: STA.w SprTimerA, X\n\n #_05BB60: BRA .continue\n\n.delay\n #_05BB62: LSR A\n #_05BB63: LSR A\n #_05BB64: AND.b #$01\n #_05BB66: STA.w $0DC0, X\n\n.continue\n #_05BB69: JSR Toppo_VerifyTile\n\n #_05BB6C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_Flustered_bounce", + "code": "Toppo_Flustered_bounce:\n #_05BB6D: JSL Toppo_Flustered\n\n #_05BB71: RTS", + "file": "bank_05.asm" + }, + { + "name": "Toppo_VerifyTile", + "code": "Toppo_VerifyTile:\n #_05BB72: LDA.w SprY, X\n #_05BB75: STA.b $00\n\n #_05BB77: LDA.w SprYH, X\n #_05BB7A: STA.b $01\n\n #_05BB7C: LDA.w SprX, X\n #_05BB7F: STA.b $02\n\n #_05BB81: LDA.w SprXH, X\n #_05BB84: STA.b $03\n\n #_05BB86: LDA.b #$00\n #_05BB88: JSL GetTileType_long\n\n #_05BB8C: CMP.b #$40\n #_05BB8E: BEQ .exit\n\n #_05BB90: LDA.b #$05\n #_05BB92: STA.w SprAction, X\n\n.exit\n #_05BB95: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Toppo", + "code": "SpriteDraw_Toppo:\n #_05BBFF: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05BC02: LDA.w SprY, X\n #_05BC05: SEC\n #_05BC06: SBC.b $E8\n #_05BC08: STA.b $06\n\n #_05BC0A: LDA.w SprYH, X\n #_05BC0D: SBC.b $E9\n #_05BC0F: STA.b $07\n\n #_05BC11: LDA.w $0DC0, X\n #_05BC14: ASL A\n #_05BC15: ADC.w $0DC0, X\n #_05BC18: STA.b $08\n\n #_05BC1A: PHX\n\n #_05BC1B: LDX.b #$02\n\n.next_object\n #_05BC1D: PHX\n\n #_05BC1E: TXA\n #_05BC1F: CLC\n #_05BC20: ADC.b $08\n #_05BC22: PHA\n\n #_05BC23: TAX\n\n #_05BC24: LDA.w .size, X\n #_05BC27: STA.b $0C\n\n #_05BC29: TXA\n #_05BC2A: ASL A\n #_05BC2B: TAX\n\n #_05BC2C: REP #$20\n\n #_05BC2E: LDA.b $00\n #_05BC30: CLC\n #_05BC31: ADC.w .offset_x, X\n #_05BC34: STA.b ($90), Y\n\n #_05BC36: AND.w #$0100\n #_05BC39: STA.b $0E\n\n #_05BC3B: PHX\n\n #_05BC3C: LDX.b $0C\n #_05BC3E: CPX.b #$01\n\n #_05BC40: PLX\n\n #_05BC41: LDA.b $02\n #_05BC43: BCS .large_object_a\n\n #_05BC45: LDA.b $06\n\n.large_object_a\n #_05BC47: CLC\n #_05BC48: ADC.w .offset_y, X\n\n #_05BC4B: INY\n #_05BC4C: STA.b ($90), Y\n\n #_05BC4E: CLC\n #_05BC4F: ADC.w #$0010\n #_05BC52: CMP.w #$0100\n\n #_05BC55: SEP #$20\n #_05BC57: BCC .on_screen\n\n #_05BC59: LDA.b #$F0\n #_05BC5B: STA.b ($90), Y\n\n.on_screen\n #_05BC5D: PLX\n\n #_05BC5E: LDA.w .char, X\n #_05BC61: INY\n #_05BC62: STA.b ($90), Y\n\n #_05BC64: LDA.b $0C\n #_05BC66: CMP.b #$01\n\n #_05BC68: LDA.w .flip, X\n #_05BC6B: ORA.b $05\n #_05BC6D: BCS .toppo_part\n\n #_05BC6F: AND.b #$F0\n #_05BC71: ORA.b #$02\n\n; ---------------------------------------------------------\n\n.toppo_part\n #_05BC73: INY\n #_05BC74: STA.b ($90), Y\n\n #_05BC76: PHY\n\n #_05BC77: TYA\n #_05BC78: LSR A\n #_05BC79: LSR A\n #_05BC7A: TAY\n\n #_05BC7B: LDA.b $0C\n #_05BC7D: ORA.b $0F\n #_05BC7F: STA.b ($92), Y\n\n #_05BC81: PLY\n #_05BC82: INY\n\n #_05BC83: PLX\n #_05BC84: DEX\n #_05BC85: BPL .next_object\n\n #_05BC87: PLX\n\n #_05BC88: RTS", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05BC89", + "code": "UNREACHABLE_05BC89:\n #_05BC89: RTS", + "file": "bank_05.asm" + }, + { + "name": "GreenKnifeGuardSpeedX", + "code": "GreenKnifeGuardSpeedX:\n #_05BC8A: db 12, -12, 0, 0, 18, -18, 0, 0\n", + "file": "bank_05.asm" + }, + { + "name": "GreenKnifeGuardSpeedY", + "code": "GreenKnifeGuardSpeedY:\n #_05BC92: db 0, 0, 12, -12, 0, 0, 18, -18\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ZoraAndGuardAnimationState", + "code": "ZoraAndGuardAnimationState:\n #_05BC9A: db $00, $02, $04, $06, $01, $03, $05, $07\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4B_GreenKnifeGuard", + "code": "Sprite_4B_GreenKnifeGuard:\n #_05BCA2: LDA.w SprDelay, X\n #_05BCA5: AND.b #$08\n #_05BCA7: LSR A\n #_05BCA8: ADC.w SprMiscC, X\n #_05BCAB: TAY\n\n #_05BCAC: LDA.w ZoraAndGuardAnimationState, Y\n #_05BCAF: STA.w $0DC0, X\n\n #_05BCB2: JSR SpriteDraw_GreenKnifeGuard\n\n #_05BCB5: JSR Sprite_CheckIfActive_Bank05\n #_05BCB8: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05BCBB: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05BCBE: JSR Sprite_Move_XY_Bank05\n #_05BCC1: JSR Sprite_CheckTileCollision_Bank05\n\n #_05BCC4: LDA.w SprAction, X\n #_05BCC7: BNE GreenKnifeGuard_Moving\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GreenKnifeGuard_Idle", + "code": "GreenKnifeGuard_Idle:\n #_05BCC9: LDA.w SprTimerA, X\n #_05BCCC: BNE .exit\n\n #_05BCCE: JSL GetRandomNumber\n #_05BCD2: AND.b #$3F\n #_05BCD4: ADC.b #$30\n #_05BCD6: STA.w SprTimerA, X\n\n #_05BCD9: INC.w SprAction, X\n\n #_05BCDC: LDA.w SprMiscE, X\n #_05BCDF: STA.w SprMiscC, X\n\n #_05BCE2: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05BCE5: TYA\n\n #_05BCE6: LDY.w SprMiscC, X\n #_05BCE9: CMP.w SprMiscC, X\n #_05BCEC: BNE .dont_speed_up\n\n #_05BCEE: LDA.b $0E\n #_05BCF0: CLC\n #_05BCF1: ADC.b #$10\n #_05BCF3: CMP.b #$20\n #_05BCF5: BCC .speed_up\n\n #_05BCF7: LDA.b $0F\n #_05BCF9: CLC\n #_05BCFA: ADC.b #$10\n #_05BCFC: CMP.b #$20\n #_05BCFE: BCS .dont_speed_up\n\n.speed_up\n #_05BD00: INY\n #_05BD01: INY\n #_05BD02: INY\n #_05BD03: INY\n\n #_05BD04: LDA.b #$80\n #_05BD06: STA.w SprTimerA, X\n\n.dont_speed_up\n #_05BD09: LDA.w GreenKnifeGuardSpeedX, Y\n #_05BD0C: STA.w SprXSpeed, X\n\n #_05BD0F: LDA.w GreenKnifeGuardSpeedY, Y\n #_05BD12: STA.w SprYSpeed, X\n\n.exit\n #_05BD15: RTS", + "file": "bank_05.asm" + }, + { + "name": "GreenKnifeGuard_Moving", + "code": "GreenKnifeGuard_Moving:\n #_05BD1E: LDA.b #$10\n\n #_05BD20: LDY.w SprCollision, X\n #_05BD23: BNE .tile_collision\n\n #_05BD25: LDA.w SprTimerA, X\n #_05BD28: BNE .moving\n\n #_05BD2A: LDA.b #$30\n\n.tile_collision\n #_05BD2C: STA.w SprTimerA, X\n\n #_05BD2F: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05BD32: JSL GetRandomNumber\n #_05BD36: AND.b #$01\n #_05BD38: STA.b $00\n\n #_05BD3A: LDA.w SprMiscC, X\n #_05BD3D: ASL A\n #_05BD3E: ORA.b $00\n #_05BD40: TAY\n\n #_05BD41: LDA.w .direction, Y\n #_05BD44: STA.w SprMiscE, X\n\n #_05BD47: STZ.w SprAction, X\n\n.moving\n #_05BD4A: LDA.w SprTimerB, X\n #_05BD4D: BEQ ZoraAndGuardAdvanceAnimation\n\n #_05BD4F: INC.w SprDelay, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ZoraAndGuardAdvanceAnimation", + "code": "ZoraAndGuardAdvanceAnimation:\n #_05BD52: INC.w SprDelay, X\n\n #_05BD55: RTS", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05BD56", + "code": "UNREACHABLE_05BD56:\n #_05BD56: db $82, $82, $80, $84\n #_05BD5A: db $40, $00, $00, $00\n\n; =========================================================\n\npool SpriteDraw_GreenKnifeGuard\n\n.offset_x\n #_05BD5E: dw 2, 2, -2, -2\n #_05BD66: dw 0, 0, 0, 0\n\n.char\n #_05BD6E: db $8A, $8C, $8A, $8C\n #_05BD72: db $86, $88, $8E, $A0\n\n.flip\n #_05BD76: db $40, $40, $00, $00\n #_05BD7A: db $00, $00, $00, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GreenKnifeGuard", + "code": "SpriteDraw_GreenKnifeGuard:\n #_05BD7E: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05BD81: LDA.w $0DC0, X\n #_05BD84: STA.b $06\n\n #_05BD86: PHX\n\n #_05BD87: LDA.w SprMiscE, X\n #_05BD8A: TAX\n\n #_05BD8B: REP #$20\n\n #_05BD8D: LDA.b $00\n #_05BD8F: STA.b ($90), Y\n\n #_05BD91: AND.w #$0100\n #_05BD94: STA.b $0E\n\n #_05BD96: LDA.b $02\n #_05BD98: SEC\n #_05BD99: SBC.w #$000B\n\n #_05BD9C: INY\n #_05BD9D: STA.b ($90), Y\n\n #_05BD9F: CLC\n #_05BDA0: ADC.w #$0010\n #_05BDA3: CMP.w #$0100\n #_05BDA6: BCC .on_screen\n\n #_05BDA8: LDA.w #$00F0\n #_05BDAB: STA.b ($90), Y\n\n.on_screen\n #_05BDAD: SEP #$20\n\n #_05BDAF: LDA.w GuardHeadChar, X\n #_05BDB2: INY\n #_05BDB3: STA.b ($90), Y\n\n #_05BDB5: LDA.w GuardHeadProp, X\n #_05BDB8: INY\n #_05BDB9: ORA.b $05\n #_05BDBB: STA.b ($90), Y\n\n #_05BDBD: LDA.b #$02\n #_05BDBF: ORA.b $0F\n #_05BDC1: STA.b ($92)\n\n; ---------------------------------------------------------\n\n #_05BDC3: LDA.b $06\n #_05BDC5: PHA\n\n #_05BDC6: ASL A\n #_05BDC7: TAX\n\n #_05BDC8: REP #$20\n\n #_05BDCA: LDA.b $00\n #_05BDCC: CLC\n #_05BDCD: ADC.w .offset_x, X\n\n #_05BDD0: INY\n #_05BDD1: STA.b ($90), Y\n\n #_05BDD3: AND.w #$0100\n #_05BDD6: STA.b $0E\n\n #_05BDD8: LDA.b $02\n #_05BDDA: INY\n #_05BDDB: STA.b ($90), Y\n\n #_05BDDD: CLC\n #_05BDDE: ADC.w #$0010\n #_05BDE1: CMP.w #$0100\n #_05BDE4: BCC .body_on_screen\n\n #_05BDE6: LDA.w #$00F0\n #_05BDE9: STA.b ($90), Y\n\n.body_on_screen\n #_05BDEB: SEP #$20\n\n #_05BDED: PLX\n\n #_05BDEE: LDA.w .char, X\n #_05BDF1: INY\n #_05BDF2: STA.b ($90), Y\n\n #_05BDF4: LDA.w .flip, X\n #_05BDF7: ORA.b $05\n #_05BDF9: INY\n #_05BDFA: STA.b ($90), Y\n\n #_05BDFC: LDY.b #$01\n\n #_05BDFE: LDA.b #$02\n #_05BE00: ORA.b $0F\n #_05BE02: STA.b ($92), Y\n\n #_05BE04: PLX\n\n #_05BE05: JSL SpriteDraw_Shadow_long\n\n #_05BE09: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_4A_BombGuard", + "code": "Sprite_4A_BombGuard:\n #_05BE0A: LDA.w $0DB0, X\n #_05BE0D: BNE SpriteBomb\n\n #_05BE0F: JMP.w BombGuard\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteBomb", + "code": "SpriteBomb:\n #_05BE12: CMP.b #$02\n #_05BE14: BCS .explosion_imminent\n\n #_05BE16: JMP.w SpriteBomb_ExplosionIncoming\n\n.explosion_imminent\n #_05BE19: BNE SpriteBomb_Exploding\n\n #_05BE1B: LDY.b #$0F\n\n.check_next_sprite\n #_05BE1D: CPY.w $0FA0\n #_05BE20: BEQ .no_damage\n\n #_05BE22: LDA.w $0DD0, Y\n #_05BE25: CMP.b #$09\n #_05BE27: BCC .no_damage\n\n #_05BE29: TYA\n #_05BE2A: EOR.b $1A\n #_05BE2C: AND.b #$07\n #_05BE2E: ORA.w $0EF0, Y\n #_05BE31: BNE .no_damage\n\n #_05BE33: JSR SpriteBomb_CheckDamageToSprite\n\n.no_damage\n #_05BE36: DEY\n #_05BE37: BPL .check_next_sprite\n\n #_05BE39: JSL Sprite_CheckDamageToLink_long\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteBomb_Exploding", + "code": "SpriteBomb_Exploding:\n #_05BE3D: JSR SpriteDraw_SpriteBombExplosion\n\n #_05BE40: LDA.w SprTimerB, X\n #_05BE43: BNE .exit\n\n #_05BE45: STZ.w $0DD0, X\n\n.exit\n #_05BE48: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteBomb_CheckDamageToSprite", + "code": "SpriteBomb_CheckDamageToSprite:\n #_05BE49: LDA.w SprX, X\n #_05BE4C: SEC\n #_05BE4D: SBC.b #$10\n #_05BE4F: STA.b $00\n\n #_05BE51: LDA.w SprXH, X\n #_05BE54: SBC.b #$00\n #_05BE56: STA.b $08\n\n #_05BE58: LDA.b #$30\n #_05BE5A: STA.b $02\n #_05BE5C: STA.b $03\n\n #_05BE5E: LDA.w SprY, X\n #_05BE61: SEC\n #_05BE62: SBC.b #$10\n #_05BE64: STA.b $01\n\n #_05BE66: LDA.w SprYH, X\n #_05BE69: SBC.b #$00\n #_05BE6B: STA.b $09\n\n #_05BE6D: PHX\n #_05BE6E: TYX\n\n #_05BE6F: JSL Sprite_SetupHitbox_long\n\n #_05BE73: PLX\n\n #_05BE74: JSL CheckIfHitBoxesOverlap_long\n #_05BE78: BCC .no_damage\n\n #_05BE7A: LDA.w $0E20, Y\n #_05BE7D: CMP.b #$11 ; SPRITE 11\n #_05BE7F: BEQ .no_damage\n\n #_05BE81: PHX\n #_05BE82: TYX\n #_05BE83: PHY\n\n #_05BE84: LDA.b #$08\n #_05BE86: JSL Ancilla_CheckDamageToSprite_preset\n\n #_05BE8A: PLY\n #_05BE8B: PLX\n\n #_05BE8C: LDA.w SprX, X\n #_05BE8F: STA.b $00\n\n #_05BE91: LDA.w SprXH, X\n #_05BE94: STA.b $01\n\n #_05BE96: LDA.w SprY, X\n #_05BE99: SEC\n #_05BE9A: SBC.w $0F70, X\n #_05BE9D: STA.b $02\n\n #_05BE9F: LDA.w SprYH, X\n #_05BEA2: SBC.b #$00\n #_05BEA4: STA.b $03\n\n #_05BEA6: LDA.w SprX, Y\n #_05BEA9: STA.b $04\n\n #_05BEAB: LDA.w SprXH, Y\n #_05BEAE: STA.b $05\n\n #_05BEB0: LDA.w SprY, Y\n #_05BEB3: SEC\n #_05BEB4: SBC.w $0F70, Y\n #_05BEB7: STA.b $06\n\n #_05BEB9: LDA.w SprYH, Y\n #_05BEBC: SBC.b #$00\n #_05BEBE: STA.b $07\n\n #_05BEC0: PHY\n\n #_05BEC1: LDA.b #$20\n #_05BEC3: JSL Sprite_ProjectSpeedTowardsLocation_long\n\n #_05BEC7: PLY\n\n #_05BEC8: LDA.b $00\n #_05BECA: STA.w $0F30, Y\n\n #_05BECD: LDA.b $01\n #_05BECF: STA.w $0F40, Y\n\n.no_damage\n #_05BED2: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteBomb_ExplosionIncoming", + "code": "SpriteBomb_ExplosionIncoming:\n #_05BED3: LDA.w $0E90, X\n #_05BED6: BEQ .skip_priority_stuff\n\n #_05BED8: LDA.w $0B89, X\n #_05BEDB: ORA.b #$30\n #_05BEDD: STA.w $0B89, X\n\n.skip_priority_stuff\n #_05BEE0: JSL SpriteDraw_SingleLarge_long\n\n #_05BEE4: LDA.w $0EF0, X\n #_05BEE7: BNE .explode_immediately\n\n #_05BEE9: LDA.w SprTimerB, X\n #_05BEEC: CMP.b #$40\n #_05BEEE: BCS .still_flashing\n\n #_05BEF0: CMP.b #$01\n #_05BEF2: BNE .dont_explode\n\n.explode_immediately\n #_05BEF4: STZ.w $0EF0, X\n\n #_05BEF7: LDA.w $0DD0, X\n #_05BEFA: CMP.b #$0A\n #_05BEFC: BNE .not_carried\n\n #_05BEFE: STZ.w $0309\n #_05BF01: STZ.w $0308\n\n.not_carried\n #_05BF04: LDA.b #$0C ; SFX2.0C\n #_05BF06: JSL SpriteSFX_QueueSFX2WithPan\n\n #_05BF0A: INC.w $0DB0, X\n\n #_05BF0D: LDA.b #$09\n #_05BF0F: STA.w $0F60, X\n\n #_05BF12: LDA.b #$02\n #_05BF14: STA.w $0F50, X\n\n #_05BF17: LDA.b #$1F\n #_05BF19: STA.w SprTimerB, X\n\n #_05BF1C: LDA.b #$06\n #_05BF1E: STA.w $0DD0, X\n\n #_05BF21: LDA.b #$03\n #_05BF23: STA.w $0E40, X\n\n #_05BF26: RTS", + "file": "bank_05.asm" + }, + { + "name": "BombGuard", + "code": "BombGuard:\n #_05BF51: JSR SpriteDraw_BombGuard\n\n #_05BF54: JSR Sprite_CheckIfActive_Bank05\n #_05BF57: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05BF5A: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05BF5D: TYA\n #_05BF5E: STA.w SprMiscC, X\n #_05BF61: STA.w SprMiscE, X\n\n #_05BF64: LDA.w SprAction, X\n #_05BF67: BNE BombGuard_TossingBomb\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BombGuard_Idle", + "code": "BombGuard_Idle:\n #_05BF69: LDA.w SprTimerA, X\n #_05BF6C: BNE .exit\n\n #_05BF6E: INC.w SprAction, X\n\n #_05BF71: LDA.b #$70\n #_05BF73: STA.w SprTimerA, X\n\n.exit\n #_05BF76: RTS", + "file": "bank_05.asm" + }, + { + "name": "BombGuard_TossingBomb", + "code": "BombGuard_TossingBomb:\n #_05BF77: LDA.w SprTimerA, X\n #_05BF7A: BNE .delay\n\n #_05BF7C: STZ.w SprAction, X\n\n #_05BF7F: LDA.b #$20\n\n #_05BF81: STA.w SprTimerA, X\n\n #_05BF84: RTS", + "file": "bank_05.asm" + }, + { + "name": "BombGuard_CreateBomb", + "code": "BombGuard_CreateBomb:\n #_05BFC1: LDA.b #$4A ; SPRITE 4A\n #_05BFC3: JSL Sprite_SpawnDynamically\n #_05BFC7: BMI .exit\n\n #_05BFC9: PHX\n\n #_05BFCA: LDA.w SprMiscC, X\n #_05BFCD: TAX\n\n #_05BFCE: LDA.b $00\n #_05BFD0: CLC\n #_05BFD1: ADC.w .offset_x_low, X\n #_05BFD4: STA.w SprX, Y\n\n #_05BFD7: LDA.b $01\n #_05BFD9: ADC.w .offset_x_high, X\n #_05BFDC: STA.w SprXH, Y\n\n #_05BFDF: LDA.b $02\n #_05BFE1: CLC\n #_05BFE2: ADC.w .offset_y_low, X\n #_05BFE5: STA.w SprY, Y\n\n #_05BFE8: LDA.b $03\n #_05BFEA: ADC.w .offset_y_high, X\n #_05BFED: STA.w SprYH, Y\n\n #_05BFF0: TYX\n\n #_05BFF1: LDA.b #$10\n #_05BFF3: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_05BFF7: LDA.b #$01\n #_05BFF9: STA.w $0DB0, X\n\n #_05BFFC: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05BFFF: LDA.b $0F\n #_05C001: BPL .positive_x\n\n #_05C003: EOR.b #$FF\n #_05C005: INC A\n\n.positive_x\n #_05C006: STA.b $0F\n\n #_05C008: LDA.b $0E\n #_05C00A: BPL .positive_y\n\n #_05C00C: EOR.b #$FF\n #_05C00E: INC A\n\n.positive_y\n #_05C00F: ORA.b $0F\n #_05C011: LSR A\n #_05C012: LSR A\n #_05C013: LSR A\n #_05C014: LSR A\n #_05C015: TAY\n\n #_05C016: LDA.w .z_speed, Y\n #_05C019: STA.w $0F80, X\n\n #_05C01C: LDA.w $0E60, X\n #_05C01F: AND.b #$EE\n #_05C021: ORA.b #$18\n #_05C023: STA.w $0E60, X\n\n #_05C026: LDA.b #$08\n #_05C028: STA.w $0F50, X\n\n #_05C02B: LDA.b #$FF\n #_05C02D: STA.w SprTimerB, X\n\n #_05C030: STZ.w $0E50, X\n\n #_05C033: LDA.b #$13 ; SFX3.13\n #_05C035: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05C039: PLX\n\n.exit\n #_05C03A: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BombGuard", + "code": "SpriteDraw_BombGuard:\n #_05C04B: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05C04E: LDY.b #$08\n #_05C050: JSR SpriteDraw_GuardHead\n\n #_05C053: LDY.b #$04\n #_05C055: JSR SpriteDraw_GuardBody\n\n #_05C058: LDA.w $0DC0, X\n #_05C05B: CMP.b #$14\n #_05C05D: BCS .no_arm\n\n #_05C05F: JSR SpriteDraw_BombGuard_Arm\n\n.no_arm\n #_05C062: LDA.b #$0A\n #_05C064: JSL SpriteDraw_Shadow_custom_long\n\n #_05C068: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BombGuard_Arm", + "code": "SpriteDraw_BombGuard_Arm:\n #_05C089: PHX\n\n #_05C08A: LDA.w SprMiscC, X\n #_05C08D: ASL A\n #_05C08E: ORA.w SprDelay, X\n #_05C091: ASL A\n #_05C092: TAX\n\n #_05C093: REP #$20\n\n #_05C095: LDA.b $00\n #_05C097: CLC\n #_05C098: ADC.w .offset_x, X\n\n #_05C09B: LDY.b #$00\n #_05C09D: STA.b ($90), Y\n\n #_05C09F: AND.w #$0100\n #_05C0A2: STA.b $0E\n\n #_05C0A4: LDA.b $02\n #_05C0A6: CLC\n #_05C0A7: ADC.w .offset_y, X\n\n #_05C0AA: INY\n #_05C0AB: STA.b ($90), Y\n\n #_05C0AD: CLC\n #_05C0AE: ADC.w #$0010\n #_05C0B1: CMP.w #$0100\n #_05C0B4: BCC .on_screen\n\n #_05C0B6: LDA.w #$00F0\n #_05C0B9: STA.b ($90), Y\n\n.on_screen\n #_05C0BB: SEP #$20\n\n #_05C0BD: LDA.b #$6E\n #_05C0BF: INY\n #_05C0C0: STA.b ($90), Y\n\n #_05C0C2: INY\n\n #_05C0C3: LDA.b $05\n #_05C0C5: AND.b #$30\n #_05C0C7: ORA.b #$08\n #_05C0C9: STA.b ($90), Y\n\n #_05C0CB: LDA.b #$02\n #_05C0CD: ORA.b $0F\n #_05C0CF: STA.b ($92)\n\n #_05C0D1: PLX\n\n #_05C0D2: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_SpriteBombExplosion", + "code": "SpriteDraw_SpriteBombExplosion:\n #_05C113: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05C116: LDA.w SprTimerB, X\n #_05C119: LSR A\n #_05C11A: AND.b #$0C\n #_05C11C: STA.b $06\n\n #_05C11E: PHX\n\n #_05C11F: LDX.b #$03\n\n.next_object\n #_05C121: PHX\n\n #_05C122: TXA\n #_05C123: CLC\n #_05C124: ADC.b $06\n #_05C126: TAX\n\n #_05C127: LDA.b $00\n #_05C129: CLC\n #_05C12A: ADC.w .offset_x, X\n #_05C12D: STA.b ($90), Y\n\n #_05C12F: LDA.b $02\n #_05C131: CLC\n #_05C132: ADC.w .offset_y, X\n\n #_05C135: INY\n #_05C136: STA.b ($90), Y\n\n #_05C138: LDA.w .char, X\n #_05C13B: INY\n #_05C13C: STA.b ($90), Y\n\n #_05C13E: LDA.w .flip, X\n #_05C141: ORA.b $05\n #_05C143: INY\n #_05C144: STA.b ($90), Y\n\n #_05C146: INY\n\n #_05C147: PLX\n #_05C148: DEX\n #_05C149: BPL .next_object\n\n #_05C14B: PLX\n\n #_05C14C: LDY.b #$02\n #_05C14E: LDA.b #$03\n #_05C150: JSL Sprite_CorrectOAMEntries_long\n\n #_05C154: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_41_BlueGuard", + "code": "Sprite_41_BlueGuard:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_42_GreenGuard", + "code": "Sprite_42_GreenGuard:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_43_RedGuard", + "code": "Sprite_43_RedGuard:\n #_05C155: LDA.w $0DB0, X\n #_05C158: BNE Probe\n\n #_05C15A: JMP.w Guard_Main\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Probe", + "code": "Probe:\n #_05C15D: LDY.b #$00\n\n #_05C15F: LDA.w SprXSpeed, X\n #_05C162: BPL .positive_x\n\n #_05C164: DEY\n\n .positive_x\n #_05C165: CLC\n #_05C166: ADC.w SprX, X\n #_05C169: STA.w SprX, X\n\n #_05C16C: TYA\n #_05C16D: ADC.w SprXH, X\n #_05C170: STA.w SprXH, X\n\n #_05C173: LDY.b #$00\n\n #_05C175: LDA.w SprYSpeed, X\n #_05C178: BPL .positive_y\n\n #_05C17A: DEY\n\n .positive_y\n #_05C17B: CLC\n #_05C17C: ADC.w SprY, X\n #_05C17F: STA.w SprY, X\n\n #_05C182: TYA\n #_05C183: ADC.w SprYH, X\n #_05C186: STA.w SprYH, X\n\n #_05C189: LDY.w $0DB0, X\n\n #_05C18C: LDA.w $0E20-1, Y\n #_05C18F: CMP.b #$CE ; SPRITE CE\n #_05C191: BNE .not_from_blind\n\n ; -------------------------------------------------------\n\n #_05C193: REP #$20\n\n #_05C195: LDA.w $0FD8\n #_05C198: SEC\n #_05C199: SBC.b $22\n #_05C19B: CLC\n #_05C19C: ADC.w #$0010\n #_05C19F: CMP.w #$0020\n\n #_05C1A2: SEP #$20\n\n #_05C1A4: BCS .no_hit_blind\n\n #_05C1A6: REP #$20\n\n #_05C1A8: LDA.b $20\n #_05C1AA: SEC\n #_05C1AB: SBC.w $0FDA\n #_05C1AE: CLC\n #_05C1AF: ADC.w #$0018\n #_05C1B2: CMP.w #$0020\n\n #_05C1B5: SEP #$20\n\n #_05C1B7: BCS .no_hit_blind\n\n #_05C1B9: JMP.w .made_contact\n\n .no_hit_blind\n #_05C1BC: JMP.w .no_contact\n\n ; -------------------------------------------------------\n\n .not_from_blind\n #_05C1BF: JSL Probe_CheckTileSolidity\n #_05C1C3: BCC .passable\n\n #_05C1C5: LDA.w $0FA5\n #_05C1C8: CMP.b #$09 ; TILETYPE 09\n #_05C1CA: BNE .complete_failure\n\n .passable\n #_05C1CC: LDA.w $0055\n #_05C1CF: BNE .complete_failure\n\n #_05C1D1: REP #$20\n\n #_05C1D3: LDA.w $0FD8\n #_05C1D6: SEC\n #_05C1D7: SBC.b $22\n #_05C1D9: CMP.w #$0010\n\n #_05C1DC: SEP #$20\n\n #_05C1DE: BCS .no_contact\n\n #_05C1E0: REP #$20\n\n #_05C1E2: LDA.w $0FDA\n #_05C1E5: SEC\n #_05C1E6: SBC.b $20\n #_05C1E8: CMP.w #$0010\n\n #_05C1EB: SEP #$20\n\n #_05C1ED: BCS .no_contact\n\n #_05C1EF: LDA.w $0F20, X\n #_05C1F2: CMP.b $EE\n #_05C1F4: BNE .no_contact\n\n ; -------------------------------------------------------\n\n .made_contact\n #_05C1F6: LDA.w $0DB0, X\n #_05C1F9: DEC A\n\n #_05C1FA: PHX\n\n #_05C1FB: TAX\n\n #_05C1FC: LDA.w SprAction, X\n #_05C1FF: CMP.b #$03\n #_05C201: BEQ .dont_trigger_parent\n\n #_05C203: LDA.b #$03\n #_05C205: STA.w SprAction, X\n\n #_05C208: LDA.w $0E20, X\n #_05C20B: CMP.b #$CE ; SPRITE CE\n #_05C20D: BEQ .dont_trigger_parent\n\n #_05C20F: LDA.b #$10\n #_05C211: STA.w SprTimerA, X\n\n #_05C214: STZ.w SprDelay, X\n\n .dont_trigger_parent\n #_05C217: PLX\n\n #_05C218: BRA .complete_failure\n\n ; -------------------------------------------------------\n\n .no_contact\n #_05C21A: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05C21D: LDA.b $01\n #_05C21F: ORA.b $03\n #_05C221: BEQ EXIT_05C226\n\n .complete_failure\n #_05C223: STZ.w $0DD0, X\n\n; ---------------------------------------------------------\n\n#EXIT_05C226:\n #_05C226: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_Main", + "code": "Guard_Main:\n #_05C227: LDA.w $0DC0, X\n #_05C22A: PHA\n\n #_05C22B: LDY.w SprMiscC, X\n #_05C22E: PHY\n\n #_05C22F: LDA.w SprTimerB, X\n #_05C232: BEQ .looking_around\n\n #_05C234: LDA.w SpriteDirections_Bank05, Y\n #_05C237: STA.w SprMiscC, X\n\n #_05C23A: LDA.w SpriteDrawSteps_Bank05, Y\n #_05C23D: STA.w $0DC0, X\n\n.looking_around\n #_05C240: JSR Guard_HandleAllAnimation\n\n #_05C243: PLA\n #_05C244: STA.w SprMiscC, X\n\n #_05C247: PLA\n #_05C248: STA.w $0DC0, X\n\n #_05C24B: LDA.w $0DD0, X\n #_05C24E: CMP.b #$05\n #_05C250: BNE Guard_NotFalling\n\n #_05C252: LDA.b $11\n #_05C254: BNE EXIT_05C226\n\n #_05C256: JSR Guard_TickTwiceAndUpdateBody\n\n #_05C259: JMP.w Guard_TickTwiceAndUpdateBody\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_NotFalling", + "code": "Guard_NotFalling:\n #_05C25C: JSR Sprite_CheckIfActive_Bank05\n #_05C25F: JSL Guard_ParrySwordAttacks\n\n #_05C263: JSL Sprite_CheckDamageToLink_long\n #_05C267: BCS .hit_im\n\n #_05C269: LDA.w $0FDC\n #_05C26C: BEQ .not_triggered\n\n .hit_im\n #_05C26E: LDA.w SprAction, X\n #_05C271: CMP.b #$03\n #_05C273: BCS .not_triggered\n\n #_05C275: LDA.b #$03\n #_05C277: STA.w SprAction, X\n\n #_05C27A: LDA.b #$20\n #_05C27C: BRA .continue\n\n .not_triggered\n #_05C27E: LDA.w $0EA0, X\n #_05C281: BEQ .not_recoiling\n\n #_05C283: CMP.b #$04\n #_05C285: BCC .not_recoiling\n\n #_05C287: LDA.b #$04\n #_05C289: STA.w SprAction, X\n\n #_05C28C: LDA.b #$80\n\n .continue\n #_05C28E: JSR Guard_SetTimerAndAssertTileHitbox\n\n .not_recoiling\n #_05C291: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05C294: LDA.w SprSubtype, X\n #_05C297: AND.b #$07\n #_05C299: CMP.b #$05\n #_05C29B: BCS .cant_go_over_short_tiles\n\n #_05C29D: LDA.w SprCollision, X\n #_05C2A0: BNE .tile_collision\n\n #_05C2A2: JSR Sprite_Move_XY_Bank05\n\n .tile_collision\n #_05C2A5: JSR Sprite_CheckTileCollision_Bank05\n\n #_05C2A8: BRA .continue_after_move\n\n .cant_go_over_short_tiles\n #_05C2AA: JSR Sprite_Move_XY_Bank05\n\n .continue_after_move\n #_05C2AD: LDA.w SprAction, X\n #_05C2B0: CMP.b #$04\n #_05C2B2: BEQ .not_chasing\n\n #_05C2B4: STZ.w $0ED0, X\n\n .not_chasing\n #_05C2B7: REP #$30\n\n #_05C2B9: AND.w #$00FF\n #_05C2BC: ASL A\n #_05C2BD: TAY\n\n #_05C2BE: LDA.w .vectors, Y\n #_05C2C1: DEC A\n #_05C2C2: PHA\n\n #_05C2C3: SEP #$30\n\n #_05C2C5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_Idle", + "code": "Guard_Idle:\n #_05C2D4: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05C2D7: LDA.w SprTimerA, X\n #_05C2DA: BNE .exit\n\n #_05C2DC: INC.w SprAction, X\n\n #_05C2DF: LDA.w SprSubtype, X\n #_05C2E2: BEQ .not_glancing_around\n\n #_05C2E4: AND.b #$07\n #_05C2E6: CMP.b #$05\n #_05C2E8: BCS .not_glancing_around\n\n #_05C2EA: LDA.w SprSubtype, X\n #_05C2ED: LSR A\n #_05C2EE: LSR A\n #_05C2EF: LSR A\n #_05C2F0: AND.b #$03\n #_05C2F2: TAY\n\n #_05C2F3: LDA.w .timer, Y\n #_05C2F6: STA.w SprTimerA, X\n\n #_05C2F9: LDA.w SprMiscC, X\n #_05C2FC: EOR.b #$01\n #_05C2FE: STA.w SprMiscC, X\n\n #_05C301: STZ.w SprDelay, X\n\n #_05C304: BRA Guard_SetGlanceTo12\n\n .not_glancing_around\n #_05C306: JSL GetRandomNumber\n #_05C30A: AND.b #$3F\n #_05C30C: ADC.b #$28\n #_05C30E: STA.w SprTimerA, X\n\n #_05C311: LDA.w SprMiscC, X\n #_05C314: PHA\n\n #_05C315: JSL GetRandomNumber\n #_05C319: AND.b #$03\n #_05C31B: STA.w SprMiscC, X\n\n #_05C31E: PLA\n #_05C31F: CMP.w SprMiscC, X\n #_05C322: BEQ .exit\n\n #_05C324: EOR.w SprMiscC, X\n #_05C327: AND.b #$02\n #_05C329: BNE .exit\n\n; =========================================================\n\n#Guard_SetGlanceTo12:\n #_05C32B: LDA.b #$0C\n #_05C32D: STA.w SprTimerB, X\n\n .exit\n #_05C330: RTS", + "file": "bank_05.asm" + }, + { + "name": "SharedGuardSpeeds_X", + "code": "SharedGuardSpeeds_X:\n #_05C331: db 8, -8, 0, 0\n", + "file": "bank_05.asm" + }, + { + "name": "SharedGuardSpeeds_Y", + "code": "SharedGuardSpeeds_Y:\n #_05C335: db 0, 0, 8, -8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodySteps", + "code": "GuardBodySteps:\n #_05C339: db $0B, $0C, $0D, $0C, $04, $05, $06, $05\n #_05C341: db $00, $01, $02, $03, $07, $08, $09, $0A\n #_05C349: db $11, $12, $11, $12, $07, $08, $07, $08\n #_05C351: db $03, $04, $03, $04, $0D, $0E, $0D, $0E\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ProbeAndSparkCheckDirXSpeed", + "code": "ProbeAndSparkCheckDirXSpeed:\n #_05C359: db 1, 1, -1, -1, -1, -1, 1, 1\n", + "file": "bank_05.asm" + }, + { + "name": "ProbeAndSparkCheckDirYSpeed", + "code": "ProbeAndSparkCheckDirYSpeed:\n #_05C361: db -1, 1, 1, -1, -1, 1, 1, -1\n", + "file": "bank_05.asm" + }, + { + "name": "ProbeAndSparkXSpeed", + "code": "ProbeAndSparkXSpeed:\n #_05C369: db 8, 0, -8, 0, -8, 0, 8, 0\n", + "file": "bank_05.asm" + }, + { + "name": "ProbeAndSparkYSpeed", + "code": "ProbeAndSparkYSpeed:\n #_05C371: db 0, 8, 0, -8, 0, 8, 0, -8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ProbeType", + "code": "ProbeType:\n #_05C379: db $00, $02, $01, $03, $01, $02, $00, $03\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ColinearDirections", + "code": "ColinearDirections:\n #_05C381: db $01, $04, $02, $08, $02, $04, $01, $08\n", + "file": "bank_05.asm" + }, + { + "name": "OrthogonalDirections", + "code": "OrthogonalDirections:\n #_05C389: db $08, $01, $04, $02, $08, $02, $04, $01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ColinearNextDirections", + "code": "ColinearNextDirections:\n #_05C391: db $01, $02, $03, $00, $05, $06, $07, $04\n", + "file": "bank_05.asm" + }, + { + "name": "OrthogonalNextDirections", + "code": "OrthogonalNextDirections:\n #_05C399: db $03, $00, $01, $02, $07, $04, $05, $06\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_ShootProbeAndStuff", + "code": "Guard_ShootProbeAndStuff:\n #_05C3A1: LDY.w SprMiscA, X\n\n #_05C3A4: LDA.w ProbeAndSparkCheckDirXSpeed, Y\n #_05C3A7: STA.w SprXSpeed, X\n\n #_05C3AA: LDA.w ProbeAndSparkCheckDirYSpeed, Y\n #_05C3AD: STA.w SprYSpeed, X\n\n #_05C3B0: JSR Sprite_CheckTileCollision_Bank05\n\n #_05C3B3: LDA.w $0E10, X\n #_05C3B6: BEQ .skip_first_ortho\n\n #_05C3B8: CMP.b #$2C\n #_05C3BA: BNE .done_ortho\n\n #_05C3BC: LDY.w SprMiscA, X\n\n #_05C3BF: LDA.w OrthogonalNextDirections, Y\n #_05C3C2: STA.w SprMiscA, X\n\n #_05C3C5: BRA .done_ortho\n\n .skip_first_ortho\n #_05C3C7: LDY.w SprMiscA, X\n\n #_05C3CA: LDA.w SprCollision, X\n #_05C3CD: AND.w OrthogonalDirections, Y\n #_05C3D0: BNE .done_ortho\n\n #_05C3D2: LDA.b #$58\n #_05C3D4: STA.w $0E10, X\n\n .done_ortho\n #_05C3D7: LDY.w SprMiscA, X\n\n #_05C3DA: LDA.w SprCollision, X\n #_05C3DD: AND.w ColinearDirections, Y\n #_05C3E0: BEQ .skip_next_colinear\n\n #_05C3E2: LDA.w ColinearNextDirections, Y\n #_05C3E5: STA.w SprMiscA, X\n\n .skip_next_colinear\n #_05C3E8: LDY.w SprMiscA, X\n\n #_05C3EB: LDA.w ProbeAndSparkXSpeed, Y\n #_05C3EE: STA.w SprXSpeed, X\n\n #_05C3F1: LDA.w ProbeAndSparkYSpeed, Y\n #_05C3F4: STA.w SprYSpeed, X\n\n #_05C3F7: LDA.w ProbeType, Y\n #_05C3FA: STA.w SprMiscC, X\n #_05C3FD: STA.w SprMiscE, X\n\n #_05C400: JMP.w Guard_TickAndUpdateBody\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_OnPatrol", + "code": "Guard_OnPatrol:\n #_05C403: JSR Guard_SendOutProbe\n\n #_05C406: LDA.w SprSubtype, X\n #_05C409: AND.b #$07\n #_05C40B: CMP.b #$05\n #_05C40D: BCC .check_timer\n\n #_05C40F: JMP.w Guard_ShootProbeAndStuff\n\n .check_timer\n #_05C412: LDA.w SprTimerA, X\n #_05C415: BNE .delay\n\n ; =======================================================\n\n#Guard_StopAndLookAround:\n #_05C417: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05C41A: LDA.b #$02\n #_05C41C: STA.w SprAction, X\n\n #_05C41F: LDA.b #$A0\n #_05C421: STA.w SprTimerA, X\n\n #_05C424: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_TickAndUpdateBody", + "code": "Guard_TickAndUpdateBody:\n #_05C454: INC.w SprDelay, X\n\n #_05C457: LDA.w SprDelay, X\n #_05C45A: LSR A\n #_05C45B: LSR A\n #_05C45C: LSR A\n #_05C45D: AND.b #$03\n #_05C45F: STA.b $00\n\n #_05C461: LDA.w SprMiscC, X\n #_05C464: ASL A\n #_05C465: ASL A\n #_05C466: ADC.b $00\n #_05C468: TAY\n\n #_05C469: LDA.w GuardBodySteps, Y\n #_05C46C: STA.w $0DC0, X\n\n #_05C46F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_GlanceDirections", + "code": "Guard_GlanceDirections:\n #_05C470: db $00, $02, $02, $02, $00, $03, $03, $03 ; up\n #_05C478: db $01, $03, $03, $03, $01, $02, $02, $02 ; down\n #_05C480: db $02, $00, $00, $00, $02, $01, $01, $01 ; left\n #_05C488: db $03, $01, $01, $01, $03, $00, $00, $00 ; right\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_Surveying", + "code": "Guard_Surveying:\n #_05C490: JSR Sprite_ZeroVelocity_XY_Bank05\n #_05C493: JSR Guard_SendOutProbe\n\n #_05C496: LDA.w SprTimerA, X\n #_05C499: BNE .delay\n\n #_05C49B: LDA.b #$20\n #_05C49D: STA.w SprTimerA, X\n\n #_05C4A0: LDA.b #$00\n #_05C4A2: STA.w SprAction, X\n\n #_05C4A5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_NoticeKouhai", + "code": "Guard_NoticeKouhai:\n #_05C4C1: JSR Sprite_ZeroVelocity_XY_Bank05\n #_05C4C4: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05C4C7: TYA\n #_05C4C8: STA.w SprMiscE, X\n\n #_05C4CB: LDA.w SprTimerA, X\n #_05C4CE: BNE .exit\n\n #_05C4D0: LDA.b #$04\n #_05C4D2: STA.w SprAction, X\n\n #_05C4D5: LDA.b #$FF\n\n; =========================================================\n\n#Guard_SetTimerAndAssertTileHitbox:\n #_05C4D7: STA.w SprTimerA, X\n\n #_05C4DA: STZ.w SprSubtype, X\n\n #_05C4DD: LDA.w SprTileDie, X\n #_05C4E0: AND.b #$0F\n #_05C4E2: ORA.b #$60\n #_05C4E4: STA.w SprTileDie, X\n\n.exit\n #_05C4E7: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_InPursuit", + "code": "Guard_InPursuit:\n #_05C4E8: LDA.w SprTimerA, X\n #_05C4EB: BNE .delay\n\n #_05C4ED: LDY.w SprMiscC, X\n\n #_05C4F0: LDA.w Guard_GlanceTimers, Y\n #_05C4F3: STA.w SprMiscF, X\n\n #_05C4F6: BRL Guard_StopAndLookAround\n\n; =========================================================\n\n#Sprite_ZeroVelocity_XY_Bank05:\n #_05C4F9: STZ.w SprXSpeed, X\n #_05C4FC: STZ.w SprYSpeed, X\n\n #_05C4FF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_TickTwiceAndUpdateBody", + "code": "Guard_TickTwiceAndUpdateBody:\n #_05C535: INC.w SprDelay, X\n\n #_05C538: JSR Guard_TickAndUpdateBody\n\n #_05C53B: RTS", + "file": "bank_05.asm" + }, + { + "name": "GuardAppliedSpeeds_X", + "code": "GuardAppliedSpeeds_X:\n #_05C53C: db 14, -14\n", + "file": "bank_05.asm" + }, + { + "name": "GuardAppliedSpeeds_Y", + "code": "GuardAppliedSpeeds_Y:\n #_05C53E: db 0, 0, 14, -14\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_ChaseLinkOnOneAxis", + "code": "Guard_ChaseLinkOnOneAxis:\n #_05C542: PHB\n #_05C543: PHK\n #_05C544: PLB\n\n #_05C545: LDA.w SprCollision, X\n #_05C548: BEQ .exit\n\n #_05C54A: AND.b #$03\n #_05C54C: BEQ .check_horizontal\n\n #_05C54E: JSR Sprite_IsBelowLink_Bank05\n\n #_05C551: INY\n #_05C552: INY\n #_05C553: BRA .continue\n\n.check_horizontal\n #_05C555: JSR Sprite_IsRightOfLink_Bank05\n\n.continue\n #_05C558: LDA.w GuardAppliedSpeeds_X, Y\n #_05C55B: STA.w SprXSpeed, X\n\n #_05C55E: LDA.w GuardAppliedSpeeds_Y, Y\n #_05C561: STA.w SprYSpeed, X\n\n.exit\n #_05C564: PLB\n\n #_05C565: RTL", + "file": "bank_05.asm" + }, + { + "name": "AppliedSpeed16", + "code": "AppliedSpeed16:\n #_05C566: db 16, 16, 16, 16\n", + "file": "bank_05.asm" + }, + { + "name": "AppliedSpeed18", + "code": "AppliedSpeed18:\n #_05C56A: db 18, 18, 18, 18\n\n; =========================================================\n\npool Guard_SendOutProbe\n\n.speed_x\n #_05C56E: db -16, -16, -16, -16, -16, -16, -16, -16\n #_05C576: db -16, -14, -12, -10, -8, -6, -4, -2\n\n #_05C57E: db 0, 2, 4, 6, 8, 10, 12, 14\n #_05C586: db 16, 16, 16, 16, 16, 16, 16, 16\n\n #_05C58E: db 16, 16, 16, 16, 16, 16, 16, 16\n #_05C596: db 14, 12, 10, 8, 6, 4, 2, 0\n\n #_05C59E: db -2, -4, -6, -8, -10, -12, -14, -16\n #_05C5A6: db -16, -16, -16, -16, -16, -16, -16, -16\n\n.speed_y\n #_05C5AE: db 0, 2, 4, 6, 8, 10, 12, 14\n #_05C5B6: db 16, 16, 16, 16, 16, 16, 16, 16\n\n #_05C5BE: db 16, 16, 16, 16, 16, 16, 16, 16\n #_05C5C6: db 14, 12, 10, 8, 6, 4, 2, 0\n\n #_05C5CE: db -2, -4, -6, -8, -10, -12, -14, -16\n #_05C5D6: db -16, -16, -16, -16, -16, -16, -16, -16\n\n #_05C5DE: db -16, -16, -16, -16, -16, -16, -16, -16\n #_05C5E6: db -14, -12, -10, -8, -6, -4, -2, 0\n\n.index_offset\n #_05C5EE: db $10\n #_05C5EF: db $30\n #_05C5F0: db $00\n #_05C5F1: db $20\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_SendOutProbe", + "code": "Guard_SendOutProbe:\n #_05C5F2: TXA\n #_05C5F3: CLC\n #_05C5F4: ADC.b $1A\n #_05C5F6: STA.b $0F\n\n #_05C5F8: AND.b #$03\n #_05C5FA: ORA.w $0F00, X\n #_05C5FD: BNE .exit\n\n #_05C5FF: LDA.w SprMiscF, X\n #_05C602: INC.w SprMiscF, X\n\n #_05C605: LDY.w SprMiscC, X\n\n #_05C608: CLC\n #_05C609: AND.b #$1F\n #_05C60B: ADC.w .index_offset, Y\n\n #_05C60E: AND.b #$3F\n #_05C610: STA.b $0F\n\n; =========================================================\n\n#Sprite_SpawnProbeAlways:\n #_05C612: LDA.b #$41 ; SPRITE 41\n #_05C614: LDY.b #$0A\n #_05C616: JSL Sprite_SpawnDynamically_slot_limited\n #_05C61A: BMI .exit\n\n #_05C61C: LDA.b $00\n #_05C61E: CLC\n #_05C61F: ADC.b #$08\n #_05C621: STA.w SprX, Y\n\n #_05C624: LDA.b $01\n #_05C626: ADC.b #$00\n #_05C628: STA.w SprXH, Y\n\n #_05C62B: LDA.b $02\n #_05C62D: CLC\n #_05C62E: ADC.b #$04\n #_05C630: STA.w SprY, Y\n\n #_05C633: LDA.b $03\n #_05C635: ADC.b #$00\n #_05C637: STA.w SprYH, Y\n\n #_05C63A: PHX\n\n #_05C63B: LDX.b $0F\n #_05C63D: TXA\n #_05C63E: STA.w SprMiscC, Y\n\n #_05C641: LDA.w .speed_x, X\n #_05C644: STA.w SprXSpeed, Y\n\n #_05C647: LDA.w .speed_y, X\n #_05C64A: STA.w SprYSpeed, Y\n\n #_05C64D: LDA.w $0E40, Y\n #_05C650: AND.b #$F0\n #_05C652: ORA.b #$A0\n #_05C654: STA.w $0E40, Y\n\n #_05C657: PLX\n\n #_05C658: TXA\n #_05C659: INC A\n #_05C65A: STA.w $0DB0, Y\n #_05C65D: STA.w $0BA0, Y\n\n #_05C660: LDA.b #$40\n #_05C662: STA.w $0F60, Y\n #_05C665: STA.w $0E60, Y\n\n #_05C668: LDA.b #$02\n #_05C66A: STA.w $0CAA, Y\n\n.exit\n #_05C66D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_SpawnProbeAlways_long", + "code": "Sprite_SpawnProbeAlways_long:\n #_05C66E: PHB\n #_05C66F: PHK\n #_05C670: PLB\n\n #_05C671: JSR Sprite_SpawnProbeAlways\n\n #_05C674: PLB\n\n #_05C675: RTL", + "file": "bank_05.asm" + }, + { + "name": "Guard_HandleAllAnimation_long", + "code": "Guard_HandleAllAnimation_long:\n #_05C676: PHB\n #_05C677: PHK\n #_05C678: PLB\n\n #_05C679: PHX\n\n #_05C67A: JSR Guard_HandleAllAnimation\n\n #_05C67D: PLX\n\n #_05C67E: PLB\n\n #_05C67F: RTL", + "file": "bank_05.asm" + }, + { + "name": "Guard_HandleAllAnimation", + "code": "Guard_HandleAllAnimation:\n #_05C680: JSR Sprite_PrepOAMCoord_Bank05\n #_05C683: JSR Guard_AnimateHead\n #_05C686: JSR Guard_AnimateBody\n #_05C689: JSR Guard_AnimateWeapon\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_DrawShadow", + "code": "Guard_DrawShadow:\n #_05C68C: LDA.w $0E60, X\n #_05C68F: AND.b #$10\n #_05C691: BEQ .exit\n\n #_05C693: LDY.w SprMiscC, X\n\n #_05C696: LDA.w .shadow_type, Y\n #_05C699: JSL SpriteDraw_Shadow_custom_long\n\n.exit\n #_05C69D: RTS", + "file": "bank_05.asm" + }, + { + "name": "GuardHeadChar", + "code": "GuardHeadChar:\n #_05C6A2: db $42, $42, $40, $44\n", + "file": "bank_05.asm" + }, + { + "name": "GuardHeadProp", + "code": "GuardHeadProp:\n #_05C6A6: db $40, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardHeadOffsetY", + "code": "GuardHeadOffsetY:\n #_05C6AA: dw 7, 8, 7, 8\n #_05C6B2: dw 8, 7, 8, 7\n #_05C6BA: dw 8, 7, 8, 8\n #_05C6C2: dw 7, 8, 8, 8\n #_05C6CA: dw 8, 8, 8, 8\n #_05C6D2: dw 8, 8, 8, 8\n #_05C6DA: dw 8, 8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_AnimateHead", + "code": "Guard_AnimateHead:\n #_05C6DE: LDY.b #$00\n\n; ---------------------------------------------------------\n\n#Guard_AnimateHead_PreserveOAMOffset:\n #_05C6E0: PHX\n\n #_05C6E1: LDA.w $0DC0, X\n #_05C6E4: ASL A\n #_05C6E5: STA.b $0D\n\n #_05C6E7: LDA.w SprMiscE, X\n #_05C6EA: TAX\n\n #_05C6EB: REP #$20\n\n #_05C6ED: LDA.b $00\n #_05C6EF: STA.b ($90), Y\n\n #_05C6F1: AND.w #$0100\n #_05C6F4: STA.b $0E\n\n #_05C6F6: PHY\n\n #_05C6F7: LDA.b $02\n #_05C6F9: SEC\n\n #_05C6FA: LDY.b $0D\n #_05C6FC: SBC.w GuardHeadOffsetY, Y\n\n #_05C6FF: PLY\n #_05C700: INY\n\n #_05C701: STA.b ($90), Y\n\n #_05C703: CLC\n #_05C704: ADC.w #$0010\n #_05C707: CMP.w #$0100\n #_05C70A: BCC .on_screen\n\n #_05C70C: LDA.w #$00F0\n #_05C70F: STA.b ($90), Y\n\n.on_screen\n #_05C711: SEP #$20\n\n #_05C713: LDA.w GuardHeadChar, X\n #_05C716: INY\n #_05C717: STA.b ($90), Y\n\n #_05C719: LDA.w GuardHeadProp, X\n #_05C71C: INY\n #_05C71D: ORA.b $05\n #_05C71F: STA.b ($90), Y\n\n #_05C721: TYA\n #_05C722: LSR A\n #_05C723: LSR A\n #_05C724: TAY\n\n #_05C725: LDA.b #$02\n #_05C727: ORA.b $0F\n #_05C729: STA.b ($92), Y\n\n #_05C72B: PLX\n\n #_05C72C: RTS", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyObjectOffsetX", + "code": "GuardBodyObjectOffsetX:\n #_05C72D: dw -4, 4, 10, 10\n #_05C735: dw -4, 4, 10, 10\n #_05C73D: dw -4, 4, 10, 10\n #_05C745: dw -4, 4, 10, 10\n #_05C74D: dw -4, -4, 0, 0\n #_05C755: dw -4, -4, 0, 0\n #_05C75D: dw -3, -3, 0, 0\n #_05C765: dw -3, -3, -4, 4\n #_05C76D: dw -3, -3, -4, 4\n #_05C775: dw -3, -3, -4, 4\n #_05C77D: dw -3, -3, -4, 4\n #_05C785: dw 12, 12, 0, 0\n #_05C78D: dw 12, 12, 0, 0\n #_05C795: dw 11, 11, 0, 0\n #_05C79D: dw -4, 4, 0, 0\n #_05C7A5: dw -4, 4, 0, 0\n #_05C7AD: dw -4, 4, 0, 0\n #_05C7B5: dw 0, 0, 0, 0\n #_05C7BD: dw 0, 0, 0, 0\n #_05C7C5: dw 0, 0, 0, 0\n #_05C7CD: dw -4, 4, 0, 0\n #_05C7D5: dw -4, 4, 0, 0\n #_05C7DD: dw -4, 4, 0, 0\n #_05C7E5: dw 0, 0, 0, 0\n #_05C7ED: dw 0, 0, 0, 0\n #_05C7F5: dw 0, 0, 0, 0\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyObjectOffsetY", + "code": "GuardBodyObjectOffsetY:\n #_05C7FD: dw 0, 0, 2, 10\n #_05C805: dw 0, 0, 2, 10\n #_05C80D: dw 0, 0, 1, 9\n #_05C815: dw 0, 0, 2, 10\n #_05C81D: dw -2, 6, 1, 1\n #_05C825: dw -2, 6, 2, 2\n #_05C82D: dw -2, 6, 1, 1\n #_05C835: dw -5, 3, 0, 0\n #_05C83D: dw -4, 4, 0, 0\n #_05C845: dw -4, 4, 0, 0\n #_05C84D: dw -5, 3, 0, 0\n #_05C855: dw -2, 6, 1, 1\n #_05C85D: dw -2, 6, 2, 2\n #_05C865: dw -2, 6, 1, 1\n #_05C86D: dw 0, 0, 8, 8\n #_05C875: dw 0, 0, 8, 8\n #_05C87D: dw 0, 0, 8, 8\n #_05C885: dw 0, 0, 8, 8\n #_05C88D: dw 0, 0, 8, 8\n #_05C895: dw 0, 0, 8, 8\n #_05C89D: dw 0, 0, 8, 8\n #_05C8A5: dw 0, 0, 8, 8\n #_05C8AD: dw 0, 0, 8, 8\n #_05C8B5: dw 0, 0, 8, 8\n #_05C8BD: dw 0, 0, 8, 8\n #_05C8C5: dw 0, 0, 8, 8\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyObjectChar", + "code": "GuardBodyObjectChar:\n #_05C8CD: db $48, $49, $6D, $7D\n #_05C8D1: db $49, $48, $6D, $7D\n #_05C8D5: db $46, $46, $6D, $7D\n #_05C8D9: db $4B, $46, $6D, $7D\n #_05C8DD: db $4D, $5D, $4E, $4E\n #_05C8E1: db $4D, $5D, $60, $60\n #_05C8E5: db $4D, $5D, $62, $62\n #_05C8E9: db $6D, $7D, $64, $64\n #_05C8ED: db $6D, $7D, $66, $67\n #_05C8F1: db $6D, $7D, $67, $66\n #_05C8F5: db $6D, $7D, $64, $69\n #_05C8F9: db $4D, $5D, $4E, $4E\n #_05C8FD: db $4D, $5D, $60, $60\n #_05C901: db $4D, $5D, $62, $62\n #_05C905: db $02, $03, $20, $20\n #_05C909: db $02, $0C, $20, $20\n #_05C90D: db $02, $0C, $20, $20\n #_05C911: db $08, $08, $20, $20\n #_05C915: db $0E, $0E, $20, $20\n #_05C919: db $0E, $0E, $20, $20\n #_05C91D: db $05, $06, $20, $20\n #_05C921: db $22, $06, $20, $20\n #_05C925: db $22, $06, $20, $20\n #_05C929: db $08, $08, $20, $20\n #_05C92D: db $0E, $0E, $20, $20\n #_05C931: db $0E, $0E, $20, $20\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyObjectFlip", + "code": "GuardBodyObjectFlip:\n #_05C935: db $00, $00, $00, $00\n #_05C939: db $40, $40, $00, $00\n #_05C93D: db $00, $40, $00, $00\n #_05C941: db $00, $40, $00, $00\n #_05C945: db $00, $00, $00, $00\n #_05C949: db $00, $00, $00, $00\n #_05C94D: db $00, $00, $00, $00\n #_05C951: db $00, $00, $00, $40\n #_05C955: db $00, $00, $00, $00\n #_05C959: db $00, $00, $40, $40\n #_05C95D: db $00, $00, $00, $40\n #_05C961: db $40, $40, $40, $40\n #_05C965: db $40, $40, $40, $40\n #_05C969: db $40, $40, $40, $40\n #_05C96D: db $00, $00, $00, $00\n #_05C971: db $00, $00, $00, $00\n #_05C975: db $00, $00, $00, $00\n #_05C979: db $00, $00, $00, $00\n #_05C97D: db $00, $00, $00, $00\n #_05C981: db $00, $00, $00, $00\n #_05C985: db $00, $00, $00, $00\n #_05C989: db $00, $00, $00, $00\n #_05C98D: db $00, $00, $00, $00\n #_05C991: db $40, $40, $40, $40\n #_05C995: db $40, $40, $40, $40\n #_05C999: db $40, $40, $40, $40\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyObjectSize", + "code": "GuardBodyObjectSize:\n #_05C99D: db $02, $02, $00, $00\n #_05C9A1: db $02, $02, $00, $00\n #_05C9A5: db $02, $02, $00, $00\n #_05C9A9: db $02, $02, $00, $00\n #_05C9AD: db $00, $00, $02, $02\n #_05C9B1: db $00, $00, $02, $02\n #_05C9B5: db $00, $00, $02, $02\n #_05C9B9: db $00, $00, $02, $02\n #_05C9BD: db $00, $00, $02, $02\n #_05C9C1: db $00, $00, $02, $02\n #_05C9C5: db $00, $00, $02, $02\n #_05C9C9: db $00, $00, $02, $02\n #_05C9CD: db $00, $00, $02, $02\n #_05C9D1: db $00, $00, $02, $02\n #_05C9D5: db $02, $02, $02, $02\n #_05C9D9: db $02, $02, $02, $02\n #_05C9DD: db $02, $02, $02, $02\n #_05C9E1: db $02, $02, $02, $02\n #_05C9E5: db $02, $02, $02, $02\n #_05C9E9: db $02, $02, $02, $02\n #_05C9ED: db $02, $02, $02, $02\n #_05C9F1: db $02, $02, $02, $02\n #_05C9F5: db $02, $02, $02, $02\n #_05C9F9: db $02, $02, $02, $02\n #_05C9FD: db $02, $02, $02, $02\n #_05CA01: db $02, $02, $02, $02\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardBodyOAMOffsets", + "code": "GuardBodyOAMOffsets:\n #_05CA05: db $0C\n #_05CA06: db $0C\n #_05CA07: db $0C\n #_05CA08: db $04\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_AnimateBody", + "code": "Guard_AnimateBody:\n #_05CA09: LDY.w SprMiscC, X\n\n #_05CA0C: LDA.w GuardBodyOAMOffsets, Y\n #_05CA0F: TAY\n\n; ---------------------------------------------------------\n\n#Guard_AnimateBody_PreserveOAMOffset:\n #_05CA10: LDA.w $0DC0, X\n #_05CA13: ASL A\n #_05CA14: ASL A\n #_05CA15: STA.b $07\n\n #_05CA17: LDA.w $0E20, X\n #_05CA1A: STA.b $08\n\n #_05CA1C: PHX\n\n #_05CA1D: LDX.b #$03\n\n.next_object\n #_05CA1F: PHX\n\n #_05CA20: TXA\n #_05CA21: CLC\n #_05CA22: ADC.b $07\n #_05CA24: TAX\n\n #_05CA25: STX.b $06\n\n #_05CA27: LDA.b $08\n #_05CA29: CMP.b #$46 ; SPRITE 46\n #_05CA2B: BCC .do_draw\n\n #_05CA2D: LDA.w GuardBodyObjectSize, X\n #_05CA30: BEQ .skip\n\n #_05CA32: LDA.w GuardBodyObjectChar, X\n\n #_05CA35: PLX\n #_05CA36: PHX\n\n #_05CA37: CPX.b #$03\n #_05CA39: BNE .do_draw\n\n #_05CA3B: CMP.b #$20\n #_05CA3D: BEQ .skip\n\n.do_draw\n #_05CA3F: LDA.b $06\n #_05CA41: ASL A\n #_05CA42: TAX\n\n #_05CA43: REP #$20\n\n #_05CA45: LDA.b $00\n #_05CA47: CLC\n #_05CA48: ADC.w GuardBodyObjectOffsetX, X\n #_05CA4B: STA.b ($90), Y\n\n #_05CA4D: AND.w #$0100\n #_05CA50: STA.b $0E\n\n #_05CA52: LDA.b $02\n #_05CA54: CLC\n #_05CA55: ADC.w GuardBodyObjectOffsetY, X\n\n #_05CA58: INY\n #_05CA59: STA.b ($90), Y\n\n #_05CA5B: CLC\n #_05CA5C: ADC.w #$0010\n #_05CA5F: CMP.w #$0100\n #_05CA62: BCC .on_screen\n\n #_05CA64: LDA.w #$00F0\n #_05CA67: STA.b ($90), Y\n\n.on_screen\n #_05CA69: SEP #$20\n\n #_05CA6B: LDA.b #$08\n #_05CA6D: STA.b $0D\n\n #_05CA6F: LDX.b $06\n\n #_05CA71: LDA.w GuardBodyObjectChar, X\n #_05CA74: INY\n #_05CA75: STA.b ($90), Y\n\n #_05CA77: CMP.b #$20\n #_05CA79: BNE .test_size\n\n #_05CA7B: LDA.b #$02\n #_05CA7D: STA.b $0D\n\n #_05CA7F: LDA.b $08\n #_05CA81: CMP.b #$46 ; SPRITE 46\n\n #_05CA83: CLC ; so the palette change always occurs\n #_05CA84: BNE .do_flip\n\n #_05CA86: DEY\n\n #_05CA87: LDA.b #$F0\n #_05CA89: STA.b ($90), Y\n\n #_05CA8B: INY\n #_05CA8C: BRA .do_flip\n\n.test_size\n #_05CA8E: LDA.w GuardBodyObjectSize, X\n #_05CA91: CMP.b #$01\n\n.do_flip\n #_05CA93: LDA.w GuardBodyObjectFlip, X\n #_05CA96: ORA.b $05\n #_05CA98: BCS .dont_change_palette\n\n #_05CA9A: AND.b #$F1\n #_05CA9C: ORA.b $0D\n\n.dont_change_palette\n #_05CA9E: INY\n #_05CA9F: STA.b ($90), Y\n\n #_05CAA1: PHY\n\n #_05CAA2: TYA\n #_05CAA3: LSR A\n #_05CAA4: LSR A\n #_05CAA5: TAY\n\n #_05CAA6: LDA.w GuardBodyObjectSize, X\n #_05CAA9: ORA.b $0F\n #_05CAAB: STA.b ($92), Y\n\n #_05CAAD: PLY\n #_05CAAE: INY\n\n; ---------------------------------------------------------\n\n.skip\n #_05CAAF: PLX\n\n #_05CAB0: DEX\n #_05CAB1: BMI .exit\n #_05CAB3: JMP.w .next_object\n\n.exit\n #_05CAB6: PLX\n\n #_05CAB7: RTS", + "file": "bank_05.asm" + }, + { + "name": "GuardWeaponObjectOffsetX", + "code": "GuardWeaponObjectOffsetX:\n #_05CAB8: dw -3, -3\n #_05CABC: dw -4, -4\n #_05CAC0: dw -4, -4\n #_05CAC4: dw -4, -4\n #_05CAC8: dw -11, -3\n #_05CACC: dw -11, -3\n #_05CAD0: dw -16, -8\n #_05CAD4: dw 12, 12\n #_05CAD8: dw 12, 12\n #_05CADC: dw 12, 12\n #_05CAE0: dw 12, 12\n #_05CAE4: dw 21, 13\n #_05CAE8: dw 21, 13\n #_05CAEC: dw 24, 16\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardWeaponObjectOffsetY", + "code": "GuardWeaponObjectOffsetY:\n #_05CAF0: dw 11, 19\n #_05CAF4: dw 11, 19\n #_05CAF8: dw 10, 18\n #_05CAFC: dw 14, 22\n #_05CB00: dw 8, 8\n #_05CB04: dw 8, 8\n #_05CB08: dw 6, 6\n #_05CB0C: dw -10, -2\n #_05CB10: dw -9, -1\n #_05CB14: dw -9, -1\n #_05CB18: dw -16, -8\n #_05CB1C: dw 8, 8\n #_05CB20: dw 8, 8\n #_05CB24: dw 6, 6\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardWeaponObjectChar", + "code": "GuardWeaponObjectChar:\n #_05CB28: db $7B, $6B\n #_05CB2A: db $7B, $6B\n #_05CB2C: db $7B, $6B\n #_05CB2E: db $7B, $6B\n #_05CB30: db $6C, $7C\n #_05CB32: db $6C, $7C\n #_05CB34: db $6C, $7C\n #_05CB36: db $6B, $7B\n #_05CB38: db $6B, $7B\n #_05CB3A: db $6B, $7B\n #_05CB3C: db $6B, $7B\n #_05CB3E: db $6C, $7C\n #_05CB40: db $6C, $7C\n #_05CB42: db $6C, $7C\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardWeaponObjectFlip", + "code": "GuardWeaponObjectFlip:\n #_05CB44: db $80, $80\n #_05CB46: db $80, $80\n #_05CB48: db $80, $80\n #_05CB4A: db $80, $80\n #_05CB4C: db $00, $00\n #_05CB4E: db $00, $00\n #_05CB50: db $00, $00\n #_05CB52: db $00, $00\n #_05CB54: db $00, $00\n #_05CB56: db $00, $00\n #_05CB58: db $00, $00\n #_05CB5A: db $40, $40\n #_05CB5C: db $40, $40\n #_05CB5E: db $40, $40\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "GuardWeaponObjectOAMOffset", + "code": "GuardWeaponObjectOAMOffset:\n #_05CB60: db $04\n #_05CB61: db $04\n #_05CB62: db $04\n #_05CB63: db $14\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_AnimateWeapon", + "code": "Guard_AnimateWeapon:\n #_05CB64: LDA.w $0DC0, X\n #_05CB67: ASL A\n #_05CB68: STA.b $06\n\n #_05CB6A: LDA.w $0E20, X\n #_05CB6D: SEC\n #_05CB6E: SBC.b #$41\n #_05CB70: STA.b $08\n\n #_05CB72: LDY.w SprMiscC, X\n\n #_05CB75: LDA.w GuardWeaponObjectOAMOffset, Y\n #_05CB78: TAY\n\n #_05CB79: PHX\n\n #_05CB7A: LDX.b #$01\n\n.next_object\n #_05CB7C: PHX\n\n #_05CB7D: TXA\n #_05CB7E: CLC\n #_05CB7F: ADC.b $06\n #_05CB81: PHA\n\n #_05CB82: ASL A\n #_05CB83: TAX\n\n #_05CB84: REP #$20\n\n #_05CB86: LDA.w GuardWeaponObjectOffsetX, X\n #_05CB89: CLC\n #_05CB8A: ADC.b $00\n #_05CB8C: STA.b ($90), Y\n\n #_05CB8E: AND.w #$0100\n #_05CB91: STA.b $0E\n\n #_05CB93: LDA.w GuardWeaponObjectOffsetY, X\n #_05CB96: CLC\n #_05CB97: ADC.b $02\n\n #_05CB99: INY\n #_05CB9A: STA.b ($90), Y\n\n #_05CB9C: CLC\n #_05CB9D: ADC.w #$0010\n #_05CBA0: CMP.w #$0100\n #_05CBA3: BCC .on_screen\n\n #_05CBA5: LDA.w #$00F0\n #_05CBA8: STA.b ($90), Y\n\n.on_screen\n #_05CBAA: SEP #$20\n\n #_05CBAC: LDA.w GuardWeaponObjectOffsetX, X\n #_05CBAF: STA.w $0FAB\n\n #_05CBB2: LDA.w GuardWeaponObjectOffsetY, X\n #_05CBB5: STA.w $0FAA\n\n #_05CBB8: PLX\n\n #_05CBB9: LDA.b $08\n #_05CBBB: CMP.b #$02 ; indicates SPRITE 43\n\n #_05CBBD: LDA.w GuardWeaponObjectChar, X\n #_05CBC0: BCS .dont_adjust\n\n #_05CBC2: ADC.b #$03\n\n.dont_adjust\n #_05CBC4: INY\n #_05CBC5: STA.b ($90), Y\n\n #_05CBC7: LDA.w GuardWeaponObjectFlip, X\n #_05CBCA: ORA.b $05\n #_05CBCC: INY\n #_05CBCD: STA.b ($90), Y\n\n #_05CBCF: PHY\n\n #_05CBD0: TYA\n #_05CBD1: LSR A\n #_05CBD2: LSR A\n #_05CBD3: TAY\n\n #_05CBD4: LDA.b $0F\n #_05CBD6: STA.b ($92), Y\n\n #_05CBD8: PLY\n #_05CBD9: INY\n\n #_05CBDA: PLX\n #_05CBDB: DEX\n #_05CBDC: BPL .next_object\n\n #_05CBDE: PLX\n\n #_05CBDF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_45_UsainBolt", + "code": "Sprite_45_UsainBolt:\n #_05CBE0: JSR Guard_HandleAllAnimation\n #_05CBE3: JSR Sprite_CheckIfActive_Bank05\n\n #_05CBE6: JSR BoltGuard_TriggerChaseTheme\n #_05CBE9: JSL Guard_ParrySwordAttacks\n\n #_05CBED: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05CBF0: JSR Guard_MoveIfNoTileCollision\n #_05CBF3: JSR Sprite_CheckTileCollision_Bank05\n\n #_05CBF6: JSL Sprite_CheckDamageToLink_long\n\n #_05CBFA: TXA\n #_05CBFB: EOR.b $1A\n #_05CBFD: AND.b #$0F\n #_05CBFF: BNE .dont_turn\n\n #_05CC01: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05CC04: TYA\n #_05CC05: STA.w SprMiscE, X\n #_05CC08: STA.w SprMiscC, X\n\n #_05CC0B: TXA\n #_05CC0C: AND.b #$03\n #_05CC0E: TAY\n\n #_05CC0F: LDA.w AppliedSpeed18, Y\n #_05CC12: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_05CC16: LDA.w SprCollision, X\n #_05CC19: BEQ .dont_turn\n\n #_05CC1B: AND.b #$03\n #_05CC1D: BEQ .check_horizontal\n\n.check_vertical\n #_05CC1F: JSR Sprite_IsBelowLink_Bank05\n\n #_05CC22: INY\n #_05CC23: INY\n #_05CC24: BRA .do_speed\n\n.check_horizontal\n #_05CC26: JSR Sprite_IsRightOfLink_Bank05\n\n.do_speed\n #_05CC29: LDA.w GuardAppliedSpeeds_X, Y\n #_05CC2C: STA.w SprXSpeed, X\n\n #_05CC2F: LDA.w GuardAppliedSpeeds_Y, Y\n #_05CC32: STA.w SprYSpeed, X\n\n.dont_turn\n #_05CC35: INC.w SprDelay, X\n\n #_05CC38: JSR Guard_TickAndUpdateBody\n\n #_05CC3B: RTS", + "file": "bank_05.asm" + }, + { + "name": "BoltGuard_TriggerChaseTheme", + "code": "BoltGuard_TriggerChaseTheme:\n #_05CC3C: LDA.w $0ED0, X\n #_05CC3F: CMP.b #$10\n #_05CC41: BEQ .exit\n\n #_05CC43: INC.w $0ED0, X\n\n #_05CC46: CMP.b #$0F\n #_05CC48: BNE .exit\n\n #_05CC4A: LDA.b #$04 ; SFX3.04\n #_05CC4C: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05CC50: LDA.l $7EF3C5\n #_05CC54: CMP.b #$02\n #_05CC56: BNE .exit\n\n #_05CC58: LDA.w $040A\n #_05CC5B: CMP.b #$18 ; OW 18\n #_05CC5D: BNE .exit\n\n #_05CC5F: LDA.b #$0C ; SONG 0C\n #_05CC61: STA.w $012C\n\n.exit\n #_05CC64: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_44_BluesainBolt", + "code": "Sprite_44_BluesainBolt:\n #_05CC65: JSR SpriteDraw_BluesainBolt\n #_05CC68: JSR Sprite_CheckIfActive_Bank05\n\n #_05CC6B: JSR BoltGuard_TriggerChaseTheme\n #_05CC6E: JSL Guard_ParrySwordAttacks\n\n #_05CC72: JSR Sprite_CheckIfRecoiling_Bank05\n\n #_05CC75: JSR Guard_MoveIfNoTileCollision\n #_05CC78: JSR Sprite_CheckTileCollision_Bank05\n\n #_05CC7B: JSL Sprite_CheckDamageToLink_long\n\n #_05CC7F: TXA\n #_05CC80: EOR.b $1A\n #_05CC82: AND.b #$0F\n #_05CC84: BNE .dont_turn\n\n #_05CC86: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05CC89: TYA\n #_05CC8A: STA.w SprMiscE, X\n #_05CC8D: STA.w SprMiscC, X\n\n #_05CC90: TXA\n #_05CC91: AND.b #$03\n #_05CC93: TAY\n\n #_05CC94: LDA.w AppliedSpeed18, Y\n #_05CC97: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_05CC9B: LDA.w SprCollision, X\n #_05CC9E: BEQ .dont_turn\n\n; ---------------------------------------------------------\n\n.check_vertical\n #_05CCA0: AND.b #$03\n #_05CCA2: BEQ .check_horizontal\n\n #_05CCA4: JSR Sprite_IsBelowLink_Bank05\n #_05CCA7: INY\n #_05CCA8: INY\n #_05CCA9: BRA .do_speed\n\n.check_horizontal\n #_05CCAB: JSR Sprite_IsRightOfLink_Bank05\n\n.do_speed\n #_05CCAE: LDA.w GuardAppliedSpeeds_X, Y\n #_05CCB1: STA.w SprXSpeed, X\n\n #_05CCB4: LDA.w GuardAppliedSpeeds_Y, Y\n #_05CCB7: STA.w SprYSpeed, X\n\n; ---------------------------------------------------------\n\n.dont_turn\n #_05CCBA: LDA.w SprMiscC, X\n #_05CCBD: ASL A\n #_05CCBE: ASL A\n #_05CCBF: ASL A\n #_05CCC0: STA.b $00\n\n #_05CCC2: INC.w SprDelay, X\n\n #_05CCC5: LDA.w SprDelay, X\n #_05CCC8: LSR A\n #_05CCC9: AND.b #$07\n #_05CCCB: ORA.b $00\n #_05CCCD: TAY\n\n #_05CCCE: LDA.w BlusainAndBNC_anim_step, Y\n #_05CCD1: STA.w $0DC0, X\n\n #_05CCD4: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BluesainBolt", + "code": "SpriteDraw_BluesainBolt:\n #_05CCD5: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05CCD8: LDY.b #$0C\n #_05CCDA: JSR SpriteDraw_GuardHead\n\n #_05CCDD: LDY.b #$08\n #_05CCDF: JSR SpriteDraw_GuardBody\n\n #_05CCE2: JSR SpriteDraw_GuardSpear_Bolt\n\n #_05CCE5: JMP.w Guard_DrawShadow\n\n; ---------------------------------------------------------\n\npool SpriteDraw_GuardSpear\n\n.offset_x\n #_05CCE8: dw 15, 7\n #_05CCEC: dw 17, 9\n #_05CCF0: dw -8, 0\n #_05CCF4: dw -10, -2\n #_05CCF8: dw 13, 13\n #_05CCFC: dw 13, 13\n #_05CD00: dw -4, -4\n #_05CD04: dw -4, -4\n\n.offset_y\n #_05CD08: dw -2, -2\n #_05CD0C: dw -2, -2\n #_05CD10: dw -2, -2\n #_05CD14: dw -2, -2\n #_05CD18: dw 8, 0\n #_05CD1C: dw 10, 2\n #_05CD20: dw -14, -6\n #_05CD24: dw -16, -8\n\n.char\n #_05CD28: db $6F, $7F\n #_05CD2A: db $6F, $7F\n #_05CD2C: db $6F, $7F\n #_05CD2E: db $6F, $7F\n #_05CD30: db $6E, $7E\n #_05CD32: db $6E, $7E\n #_05CD34: db $6E, $7E\n #_05CD36: db $6E, $7E\n\n.flip\n #_05CD38: db $40, $40\n #_05CD3A: db $40, $40\n #_05CD3C: db $00, $00\n #_05CD3E: db $00, $00\n #_05CD40: db $80, $80\n #_05CD42: db $80, $80\n #_05CD44: db $00, $00\n #_05CD46: db $00, $00\n\npool off\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardSpear_Fresh", + "code": "SpriteDraw_GuardSpear_Fresh:\n #_05CD48: LDY.b #$00\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardSpear_PreserveOAMOffset", + "code": "SpriteDraw_GuardSpear_PreserveOAMOffset:\n #_05CD4A: LDA.w $0D90, X\n\n #_05CD4D: BRA SpriteDraw_GuardSpear\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardSpear_Bolt", + "code": "SpriteDraw_GuardSpear_Bolt:\n #_05CD4F: LDA.w $0D90, X\n\n #_05CD52: LDY.b #$00\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GuardSpear", + "code": "SpriteDraw_GuardSpear:\n #_05CD54: EOR.b #$01\n #_05CD56: ASL A\n #_05CD57: AND.b #$02\n #_05CD59: STA.b $06\n\n #_05CD5B: LDA.w $0E20, X\n #_05CD5E: STA.b $08\n\n #_05CD60: LDA.w SprMiscC, X\n #_05CD63: ASL A\n #_05CD64: ASL A\n #_05CD65: ORA.b $06\n #_05CD67: STA.b $06\n\n #_05CD69: PHX\n\n #_05CD6A: LDX.b #$01\n\n.next_object\n #_05CD6C: PHX\n\n #_05CD6D: TXA\n #_05CD6E: CLC\n #_05CD6F: ADC.b $06\n #_05CD71: PHA\n\n #_05CD72: ASL A\n #_05CD73: TAX\n\n #_05CD74: REP #$20\n\n #_05CD76: LDA.w .offset_x, X\n #_05CD79: CLC\n #_05CD7A: ADC.b $00\n #_05CD7C: STA.b ($90), Y\n\n #_05CD7E: AND.w #$0100\n #_05CD81: STA.b $0E\n\n #_05CD83: LDA.w .offset_y, X\n #_05CD86: CLC\n #_05CD87: ADC.b $02\n #_05CD89: INY\n #_05CD8A: STA.b ($90), Y\n\n #_05CD8C: CLC\n #_05CD8D: ADC.w #$0010\n #_05CD90: CMP.w #$0100\n #_05CD93: BCC .on_screen\n\n #_05CD95: LDA.w #$00F0\n #_05CD98: STA.b ($90), Y\n\n.on_screen\n #_05CD9A: SEP #$20\n\n #_05CD9C: LDA.w .offset_x, X\n #_05CD9F: STA.w $0FAB\n\n #_05CDA2: LDA.w .offset_y, X\n #_05CDA5: STA.w $0FAA\n\n #_05CDA8: PLX\n\n #_05CDA9: LDA.b $08\n #_05CDAB: CMP.b #$48 ; SPRITE 48\n\n #_05CDAD: LDA.w .char, X\n #_05CDB0: BCC .dont_adjust_char\n\n #_05CDB2: SBC.b #$03\n\n.dont_adjust_char\n #_05CDB4: INY\n\n #_05CDB5: STA.b ($90), Y\n\n #_05CDB7: LDA.w .flip, X\n #_05CDBA: ORA.b $05\n\n #_05CDBC: AND.b #$F1\n #_05CDBE: ORA.b #$08\n\n #_05CDC0: INY\n #_05CDC1: STA.b ($90), Y\n\n #_05CDC3: PLX\n\n #_05CDC4: PHY\n\n #_05CDC5: TYA\n #_05CDC6: LSR A\n #_05CDC7: LSR A\n #_05CDC8: TAY\n\n #_05CDC9: LDA.b $0F\n #_05CDCB: STA.b ($92), Y\n\n #_05CDCD: PLY\n #_05CDCE: INY\n\n #_05CDCF: DEX\n #_05CDD0: BPL .next_object\n\n #_05CDD2: PLX\n\n #_05CDD3: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_MoveIfNoTileCollision", + "code": "Guard_MoveIfNoTileCollision:\n #_05CDD4: LDA.w SprCollision, X\n #_05CDD7: BNE .exit\n\n #_05CDD9: JMP.w Sprite_Move_XY_Bank05\n\n.exit\n #_05CDDC: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_48_RedJavelinGuard", + "code": "Sprite_48_RedJavelinGuard:\n #_05CDE1: LDA.w $0DC0, X\n #_05CDE4: PHA\n\n #_05CDE5: LDY.w SprMiscC, X\n #_05CDE8: PHY\n\n #_05CDE9: LDA.w SprTimerB, X\n #_05CDEC: BEQ .delay\n\n #_05CDEE: LDA.w SpriteDirections_Bank05, Y\n #_05CDF1: STA.w SprMiscC, X\n\n #_05CDF4: LDA.w .anim_step, Y\n #_05CDF7: STA.w $0DC0, X\n\n.delay\n #_05CDFA: JSR SpriteDraw_RedJavelinGuard\n\n #_05CDFD: BRA ArcherAndJavelinGuardMain\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_46_BlueArcher", + "code": "Sprite_46_BlueArcher:\n #_05CDFF: LDA.w $0DC0, X\n #_05CE02: PHA\n\n #_05CE03: LDY.w SprMiscC, X\n #_05CE06: PHY\n\n #_05CE07: LDA.w SprTimerB, X\n #_05CE0A: BEQ .delay\n\n #_05CE0C: LDA.w SpriteDirections_Bank05, Y\n #_05CE0F: STA.w SprMiscC, X\n\n #_05CE12: LDA.w SpriteDrawSteps_Bank05, Y\n #_05CE15: STA.w $0DC0, X\n\n.delay\n #_05CE18: JSR SpriteDraw_ArcherGuard\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "ArcherAndJavelinGuardMain", + "code": "ArcherAndJavelinGuardMain:\n #_05CE1B: PLA\n #_05CE1C: STA.w SprMiscC, X\n\n #_05CE1F: PLA\n #_05CE20: STA.w $0DC0, X\n\n #_05CE23: JSR Sprite_CheckIfActive_Bank05\n #_05CE26: JSR Sprite_CheckDamageToAndFromLink_Bank05\n #_05CE29: BCS .no_damage\n\n #_05CE2B: LDA.w $0FDC\n #_05CE2E: BEQ .continue\n\n.no_damage\n #_05CE30: LDA.w SprAction, X\n #_05CE33: CMP.b #$03\n #_05CE35: BCS .continue\n\n #_05CE37: LDA.b #$03\n #_05CE39: STA.w SprAction, X\n\n #_05CE3C: LDA.b #$20\n #_05CE3E: STA.w SprTimerA, X\n\n.continue\n #_05CE41: LDA.w $0EA0, X\n #_05CE44: BEQ .not_recoiling\n\n #_05CE46: CMP.b #$04\n #_05CE48: BCC .not_recoiling\n\n #_05CE4A: JSR Archer_NoticeSenpaiWithoutHesitation\n\n.not_recoiling\n #_05CE4D: JSR Sprite_CheckIfRecoiling_Bank05\n #_05CE50: JSR Guard_MoveIfNoTileCollision\n #_05CE53: JSR Sprite_CheckTileCollision_Bank05\n\n #_05CE56: LDA.w SprAction, X\n\n #_05CE59: REP #$30\n\n #_05CE5B: AND.w #$00FF\n #_05CE5E: ASL A\n #_05CE5F: TAY\n\n #_05CE60: LDA.w .vectors, Y\n #_05CE63: DEC A\n #_05CE64: PHA\n\n #_05CE65: SEP #$30\n\n #_05CE67: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_Hiding", + "code": "Archer_Hiding:\n #_05CE74: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05CE77: LDA.w SprTimerA, X\n #_05CE7A: BNE .exit\n\n #_05CE7C: INC.w SprAction, X\n\n #_05CE7F: JSL GetRandomNumber\n #_05CE83: AND.b #$7F\n #_05CE85: ADC.b #$50\n #_05CE87: STA.w SprTimerA, X\n\n #_05CE8A: LDA.w SprMiscC, X\n #_05CE8D: PHA\n\n #_05CE8E: JSL GetRandomNumber\n #_05CE92: AND.b #$03\n #_05CE94: STA.w SprMiscC, X\n\n #_05CE97: PLA\n #_05CE98: CMP.w SprMiscC, X\n #_05CE9B: BEQ .exit\n\n #_05CE9D: EOR.w SprMiscC, X\n #_05CEA0: AND.b #$02\n #_05CEA2: BNE .exit\n\n #_05CEA4: LDA.b #$0C\n #_05CEA6: STA.w SprTimerB, X\n\n.exit\n #_05CEA9: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_Walking", + "code": "Archer_Walking:\n #_05CEAA: LDA.w SprTimerA, X\n #_05CEAD: BNE .delay\n\n #_05CEAF: LDA.b #$02\n #_05CEB1: STA.w SprAction, X\n\n #_05CEB4: LDA.b #$A0\n #_05CEB6: STA.w SprTimerA, X\n\n #_05CEB9: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_AdvanceGlance", + "code": "Archer_AdvanceGlance:\n #_05CEE2: INC.w SprDelay, X\n\n #_05CEE5: LDA.w SprDelay, X\n #_05CEE8: AND.b #$0F\n #_05CEEA: BNE .dont_reset\n\n #_05CEEC: INC.w $0D90, X\n\n #_05CEEF: LDA.w $0D90, X\n #_05CEF2: CMP.b #$02\n #_05CEF4: BNE .dont_reset\n\n #_05CEF6: STZ.w $0D90, X\n\n.dont_reset\n #_05CEF9: LDA.w SprMiscC, X\n #_05CEFC: ASL A\n #_05CEFD: ASL A\n #_05CEFE: ADC.w $0D90, X\n\n #_05CF01: LDY.w $0E20, X\n #_05CF04: CPY.b #$48 ; SPRITE 48\n #_05CF06: BNE .not_red_java\n\n #_05CF08: CLC\n #_05CF09: ADC.b #$10\n\n.not_red_java\n #_05CF0B: TAY\n\n #_05CF0C: LDA.w GuardBodySteps, Y\n #_05CF0F: STA.w $0DC0, X\n\n #_05CF12: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_Scanning", + "code": "Archer_Scanning:\n #_05CF13: JSR Sprite_ZeroVelocity_XY_Bank05\n #_05CF16: JSR Guard_SendOutProbe\n\n #_05CF19: LDA.w SprTimerA, X\n #_05CF1C: BNE .delay\n\n #_05CF1E: LDA.b #$20\n #_05CF20: STA.w SprTimerA, X\n\n #_05CF23: LDA.b #$00\n #_05CF25: STA.w SprAction, X\n\n #_05CF28: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_NoticeSenpai", + "code": "Archer_NoticeSenpai:\n #_05CF44: JSR Sprite_ZeroVelocity_XY_Bank05\n #_05CF47: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05CF4A: TYA\n #_05CF4B: STA.w SprMiscE, X\n\n #_05CF4E: LDA.w SprTimerA, X\n #_05CF51: BNE .exit\n\n; =========================================================\n\n#Archer_NoticeSenpaiWithoutHesitation:\n #_05CF53: LDA.b #$04\n #_05CF55: STA.w SprAction, X\n\n #_05CF58: LDA.b #$3C\n #_05CF5A: STA.w SprTimerA, X\n\n #_05CF5D: STZ.w SprDelay, X\n\n.exit\n #_05CF60: RTS", + "file": "bank_05.asm" + }, + { + "name": "Archer_Agitated", + "code": "Archer_Agitated:\n #_05CF85: LDY.w SprMiscC, X\n\n #_05CF88: LDA.w SprCollision, X\n #_05CF8B: AND.w .masks, Y\n #_05CF8E: BNE .delay\n\n #_05CF90: LDA.w SprTimerA, X\n #_05CF93: BNE .continue\n\n.delay\n #_05CF95: INC.w SprAction, X\n\n #_05CF98: LDA.b #$18\n #_05CF9A: STA.w SprTimerA, X\n\n #_05CF9D: RTS", + "file": "bank_05.asm" + }, + { + "name": "SomeGuardAnimStates", + "code": "SomeGuardAnimStates:\n #_05D001: db $19, $19, $18, $18\n #_05D005: db $17, $17, $17, $17\n #_05D009: db $13, $13, $12, $12\n #_05D00D: db $11, $11, $11, $11\n #_05D011: db $10, $10, $0F, $0F\n #_05D015: db $0E, $0E, $0E, $0E\n #_05D019: db $16, $16, $15, $15\n #_05D01D: db $14, $14, $14, $14\n #_05D021: db $14, $14, $12, $12\n #_05D025: db $12, $10, $10, $10\n #_05D029: db $15, $15, $08, $08\n #_05D02D: db $08, $06, $06, $06\n #_05D031: db $16, $16, $04, $04\n #_05D035: db $04, $03, $03, $03\n #_05D039: db $17, $17, $0F, $0F\n #_05D03D: db $0F, $0B, $0B, $0B\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Guard_GlanceTimers", + "code": "Guard_GlanceTimers:\n #_05D041: db 13, 13, 12, 12\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Archer_Attack", + "code": "Archer_Attack:\n #_05D045: LDY.w SprMiscC, X\n\n #_05D048: LDA.w Guard_GlanceTimers, Y\n #_05D04B: STA.w SprMiscF, X\n\n #_05D04E: JSR Sprite_ZeroVelocity_XY_Bank05\n\n #_05D051: LDA.w SprTimerA, X\n #_05D054: BNE .delay\n\n #_05D056: JMP.w Guard_StopAndLookAround\n\n.delay\n #_05D059: STZ.w SprDelay, X\n\n #_05D05C: CMP.b #$28\n #_05D05E: BCC .normal_timer_speed\n\n #_05D060: DEC.w SprDelay, X\n\n.normal_timer_speed\n #_05D063: CMP.b #$0C\n #_05D065: BNE .dont_shoot\n\n #_05D067: PHA\n #_05D068: JSR Guard_LaunchProjectile\n #_05D06B: PLA\n\n.dont_shoot\n #_05D06C: LSR A\n #_05D06D: LSR A\n #_05D06E: LSR A\n #_05D06F: STA.b $00\n\n #_05D071: LDA.w SprMiscC, X\n #_05D074: ASL A\n #_05D075: ASL A\n #_05D076: ASL A\n #_05D077: ORA.b $00\n\n #_05D079: LDY.w $0E20, X\n #_05D07C: CPY.b #$48 ; SPRITE 48\n #_05D07E: BNE .not_javelin\n\n #_05D080: CLC\n #_05D081: ADC.b #$20\n\n.not_javelin\n #_05D083: TAY\n\n #_05D084: LDA.w SomeGuardAnimStates, Y\n #_05D087: STA.w $0DC0, X\n\n #_05D08A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Guard_LaunchProjectile", + "code": "Guard_LaunchProjectile:\n #_05D0C5: LDA.b #$1B ; SPRITE 1B\n #_05D0C7: JSL Sprite_SpawnDynamically\n #_05D0CB: BMI .exit\n\n #_05D0CD: LDA.b #$05 ; SFX3.05\n #_05D0CF: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05D0D3: PHX\n\n #_05D0D4: LDA.w $0E20, X\n #_05D0D7: CMP.b #$48 ; SPRITE 48\n\n #_05D0D9: LDA.w SprMiscC, X\n #_05D0DC: BCC .not_javelin_a\n\n #_05D0DE: CLC\n #_05D0DF: ADC.b #$04\n\n.not_javelin_a\n #_05D0E1: TAX\n\n #_05D0E2: LDA.b $00\n #_05D0E4: CLC\n #_05D0E5: ADC.w .offset_x_low, X\n #_05D0E8: STA.w SprX, Y\n\n #_05D0EB: LDA.b $01\n #_05D0ED: ADC.w .offset_x_high, X\n #_05D0F0: STA.w SprXH, Y\n\n #_05D0F3: LDA.b $02\n #_05D0F5: CLC\n #_05D0F6: ADC.w .offset_y_low, X\n #_05D0F9: STA.w SprY, Y\n\n #_05D0FC: LDA.b $03\n #_05D0FE: ADC.w .offset_y_high, X\n #_05D101: STA.w SprYH, Y\n\n #_05D104: LDA.w .speed_x, X\n #_05D107: STA.w SprXSpeed, Y\n\n #_05D10A: LDA.w .speed_y, X\n #_05D10D: STA.w SprYSpeed, Y\n\n #_05D110: TXA\n #_05D111: AND.b #$03\n #_05D113: STA.w SprMiscC, Y\n\n #_05D116: TAX\n\n #_05D117: LDA.w .hitbox, X\n #_05D11A: STA.w $0F60, Y\n\n #_05D11D: LDA.b #$00\n #_05D11F: STA.w $0F70, Y\n\n #_05D122: PLX\n\n #_05D123: LDA.w $0E20, X\n #_05D126: CMP.b #$48 ; SPRITE 48\n\n #_05D128: LDA.b #$00\n #_05D12A: BCC .not_javelin_b\n\n #_05D12C: INC A\n\n.not_javelin_b\n #_05D12D: STA.w $0D90, Y\n #_05D130: BEQ .exit\n\n #_05D132: LDA.l $7EF35A\n #_05D136: BNE .exit\n\n #_05D138: LDA.w $0BE0, Y\n #_05D13B: AND.b #$DF\n #_05D13D: STA.w $0BE0, Y\n\n.exit\n #_05D140: RTS", + "file": "bank_05.asm" + }, + { + "name": "RedJavelinGuard_Animate", + "code": "RedJavelinGuard_Animate:\n #_05D141: LDA.w $0DC0, X\n #_05D144: PHA\n\n #_05D145: STZ.w $0DC0, X\n\n #_05D148: LDA.w $0F50, X\n #_05D14B: PHA\n\n #_05D14C: AND.b #$F1\n #_05D14E: ORA.b #$02\n #_05D150: STA.w $0F50, X\n\n #_05D153: REP #$20\n\n #_05D155: LDA.w $0FDA\n #_05D158: PHA\n #_05D159: CLC\n #_05D15A: ADC.w #$0008\n #_05D15D: STA.w $0FDA\n\n #_05D160: SEP #$20\n\n #_05D162: JSL SpriteDraw_SingleLarge_long\n\n #_05D166: REP #$20\n\n #_05D168: PLA\n #_05D169: STA.w $0FDA\n\n #_05D16C: SEP #$20\n\n #_05D16E: PLA\n #_05D16F: STA.w $0F50, X\n\n #_05D172: PLA\n #_05D173: STA.w $0DC0, X\n\n #_05D176: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05D179: LDY.b #$10\n #_05D17B: JSR Guard_AnimateHead_PreserveOAMOffset\n\n #_05D17E: LDY.b #$0C\n #_05D180: JSR SpriteDraw_GuardBody\n\n #_05D183: LDA.w $0DC0, X\n #_05D186: CMP.b #$14\n #_05D188: BCS .use_shadow\n\n #_05D18A: LDY.b #$04\n #_05D18C: JSR SpriteDraw_GuardSpear_PreserveOAMOffset\n\n.use_shadow\n #_05D18F: JMP.w Guard_DrawShadow\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_RedJavelinGuard", + "code": "SpriteDraw_RedJavelinGuard:\n #_05D192: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05D195: LDY.b #$0C\n #_05D197: JSR SpriteDraw_GuardHead\n\n #_05D19A: LDY.b #$08\n #_05D19C: JSR SpriteDraw_GuardBody\n\n #_05D19F: LDA.w $0DC0, X\n #_05D1A2: CMP.b #$14\n #_05D1A4: BCS .use_shadow\n\n #_05D1A6: JSR SpriteDraw_GuardSpear_Fresh\n\n.use_shadow\n #_05D1A9: JMP.w Guard_DrawShadow\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_49_RedBushGuard", + "code": "Sprite_49_RedBushGuard:\n #_05D1AC: LDA.w SprAction, X\n #_05D1AF: BEQ .continue\n\n #_05D1B1: CMP.b #$02\n #_05D1B3: BNE .dont_animate\n\n #_05D1B5: JSR RedJavelinGuard_Animate\n #_05D1B8: BRA .continue\n\n.dont_animate\n #_05D1BA: JSR SpriteDraw_BushGuardBush\n\n.continue\n #_05D1BD: BRA BushGuard_Main\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_47_GreenBushGuard", + "code": "Sprite_47_GreenBushGuard:\n #_05D1BF: LDA.w SprAction, X\n #_05D1C2: BEQ BushGuard_Main\n\n #_05D1C4: LDA.w $0DC0, X\n #_05D1C7: CMP.b #$0E\n #_05D1C9: BCC .not_firing_yet\n\n #_05D1CB: JSR SpriteDraw_ArcherGuard\n\n #_05D1CE: BRA BushGuard_Main\n\n.not_firing_yet\n #_05D1D0: JSR SpriteDraw_BushGuardBush\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_Main", + "code": "BushGuard_Main:\n #_05D1D3: JSR Sprite_CheckIfActive_Bank05\n\n #_05D1D6: LDA.b #$01\n #_05D1D8: STA.w $0BA0, X\n\n #_05D1DB: LDA.w SprAction, X\n\n #_05D1DE: REP #$30\n\n #_05D1E0: AND.w #$00FF\n #_05D1E3: ASL A\n #_05D1E4: TAY\n\n #_05D1E5: LDA.w .vectors, Y\n #_05D1E8: DEC A\n #_05D1E9: PHA\n\n #_05D1EA: SEP #$30\n\n #_05D1EC: RTS", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_Hiding", + "code": "BushGuard_Hiding:\n #_05D1F5: LDA.w SprTimerA, X\n #_05D1F8: BNE .exit\n\n #_05D1FA: INC.w SprAction, X\n\n #_05D1FD: LDA.b #$40\n #_05D1FF: STA.w SprTimerA, X\n\n.exit\n #_05D202: RTS", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_Emerging", + "code": "BushGuard_Emerging:\n #_05D223: JSL Sprite_CheckDamageFromLink_long\n\n #_05D227: LDA.w SprTimerA, X\n #_05D22A: BNE .delay\n\n #_05D22C: INC.w SprAction, X\n\n #_05D22F: LDA.b #$30\n #_05D231: STA.w SprTimerA, X\n\n #_05D234: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05D237: TYA\n #_05D238: STA.w SprMiscC, X\n #_05D23B: STA.w SprMiscE, X\n\n #_05D23E: RTS", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_SpawnFoliage", + "code": "BushGuard_SpawnFoliage:\n #_05D252: LDA.b #$EC ; SPRITE EC\n #_05D254: JSL Sprite_SpawnDynamically\n #_05D258: BMI .exit\n\n #_05D25A: JSL Sprite_SetSpawnedCoordinates\n\n #_05D25E: LDA.b #$06\n #_05D260: STA.w $0DD0, Y\n\n #_05D263: LDA.b #$20\n #_05D265: STA.w SprTimerA, Y\n\n #_05D268: LDA.w $0E40, Y\n #_05D26B: CLC\n #_05D26C: ADC.b #$03\n #_05D26E: STA.w $0E40, Y\n\n #_05D271: LDA.b #$02\n #_05D273: STA.w $0DB0, Y\n\n.exit\n #_05D276: RTS", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_Shoot", + "code": "BushGuard_Shoot:\n #_05D277: STZ.w $0BA0, X\n\n #_05D27A: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05D27D: LDA.w SprTimerA, X\n #_05D280: BNE .delay\n\n #_05D282: INC.w SprAction, X\n\n #_05D285: LDA.b #$30\n #_05D287: STA.w SprTimerA, X\n\n #_05D28A: BRA BushGuard_Retreating\n\n.delay\n #_05D28C: STZ.w $0D90, X\n\n #_05D28F: CMP.b #$28\n #_05D291: BCS .dont_double_tick\n\n #_05D293: DEC.w $0D90, X\n\n.dont_double_tick\n #_05D296: CMP.b #$10\n #_05D298: BNE .dont_shoot\n\n #_05D29A: PHA\n #_05D29B: JSR Guard_LaunchProjectile\n #_05D29E: PLA\n\n.dont_shoot\n #_05D29F: LSR A\n #_05D2A0: LSR A\n #_05D2A1: LSR A\n #_05D2A2: STA.b $00\n\n #_05D2A4: LDA.w SprMiscC, X\n #_05D2A7: ASL A\n #_05D2A8: ASL A\n #_05D2A9: ASL A\n #_05D2AA: ORA.b $00\n\n #_05D2AC: LDY.w $0E20, X\n #_05D2AF: CPY.b #$49 ; SPRITE 49\n #_05D2B1: BNE .not_red_bush_guard\n\n #_05D2B3: CLC\n #_05D2B4: ADC.b #$20\n\n.not_red_bush_guard\n #_05D2B6: TAY\n\n #_05D2B7: LDA.w SomeGuardAnimStates, Y\n #_05D2BA: STA.w $0DC0, X\n\n #_05D2BD: RTS", + "file": "bank_05.asm" + }, + { + "name": "BushGuard_Retreating", + "code": "BushGuard_Retreating:\n #_05D2CE: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05D2D1: LDA.w SprTimerA, X\n #_05D2D4: BNE .delay\n\n #_05D2D6: STZ.w SprAction, X\n\n #_05D2D9: LDA.b #$40\n #_05D2DB: STA.w SprTimerA, X\n\n #_05D2DE: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BushGuardBush", + "code": "SpriteDraw_BushGuardBush:\n #_05D321: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05D324: LDA.w $0DC0, X\n #_05D327: ASL A\n #_05D328: STA.b $06\n\n #_05D32A: PHX\n\n #_05D32B: LDX.b #$01\n\n.next_object\n #_05D32D: PHX\n\n #_05D32E: TXA\n #_05D32F: CLC\n #_05D330: ADC.b $06\n #_05D332: PHA\n\n #_05D333: ASL A\n #_05D334: TAX\n\n #_05D335: REP #$20\n\n #_05D337: LDA.b $00\n #_05D339: STA.b ($90), Y\n\n #_05D33B: AND.w #$0100\n #_05D33E: STA.b $0E\n\n #_05D340: LDA.b $02\n #_05D342: CLC\n #_05D343: ADC.w .offset_y, X\n\n #_05D346: INY\n #_05D347: STA.b ($90), Y\n\n #_05D349: CLC\n #_05D34A: ADC.w #$0010\n #_05D34D: CMP.w #$0100\n #_05D350: BCC .on_screen\n\n #_05D352: LDA.w #$00F0\n #_05D355: STA.b ($90), Y\n\n.on_screen\n #_05D357: SEP #$20\n\n #_05D359: PLX\n\n #_05D35A: LDA.w .char, X\n #_05D35D: INY\n #_05D35E: STA.b ($90), Y\n\n #_05D360: LDA.w .prop, X\n #_05D363: ORA.b #$20\n #_05D365: PLX\n #_05D366: BNE .dont_change_palette\n\n #_05D368: AND.b #$F1\n #_05D36A: ORA.b $05\n\n.dont_change_palette\n #_05D36C: INY\n\n #_05D36D: STA.b ($90), Y\n\n #_05D36F: PHY\n\n #_05D370: TYA\n #_05D371: LSR A\n #_05D372: LSR A\n #_05D373: TAY\n\n #_05D374: LDA.b #$02\n #_05D376: ORA.b $0F\n #_05D378: STA.b ($92), Y\n\n #_05D37A: PLY\n #_05D37B: INY\n\n #_05D37C: DEX\n #_05D37D: BPL .next_object\n\n #_05D37F: PLX\n\n #_05D380: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_ArcherGuard", + "code": "SpriteDraw_ArcherGuard:\n #_05D38C: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05D38F: LDY.w SprMiscC, X\n #_05D392: LDA.w .head, Y\n #_05D395: TAY\n #_05D396: JSR Guard_AnimateHead_PreserveOAMOffset\n\n #_05D399: LDY.w SprMiscC, X\n #_05D39C: LDA.w .body, Y\n #_05D39F: TAY\n #_05D3A0: JSR Guard_AnimateBody_PreserveOAMOffset\n\n #_05D3A3: LDY.w SprMiscC, X\n #_05D3A6: LDA.w .weapon, Y\n #_05D3A9: TAY\n #_05D3AA: JSR SpriteDraw_Archer_Weapon\n\n #_05D3AD: JMP.w Guard_DrawShadow\n\n; =========================================================\n\npool SpriteDraw_Archer_Weapon\n\n.offset_x\n #_05D3B0: dw -1, 7, 3, 3\n #_05D3B8: dw -1, 7, 3, 3\n #_05D3C0: dw -1, 7, 7, 7\n #_05D3C8: dw -5, -5, -10, -2\n #_05D3D0: dw -4, -4, -6, 2\n #_05D3D8: dw -5, -5, -5, -5\n #_05D3E0: dw 6, 14, 11, 11\n #_05D3E8: dw 6, 14, 11, 11\n #_05D3F0: dw 6, 14, 14, 14\n #_05D3F8: dw 11, 11, 18, 10\n #_05D400: dw 12, 12, 14, 6\n #_05D408: dw 11, 11, 11, 11\n\n.offset_y\n #_05D410: dw 7, 7, 3, 11\n #_05D418: dw 6, 6, 1, 9\n #_05D420: dw 7, 7, 7, 7\n #_05D428: dw -2, 6, 2, 2\n #_05D430: dw -2, 6, 2, 2\n #_05D438: dw -2, 6, 6, 6\n #_05D440: dw -6, -6, -12, -4\n #_05D448: dw -6, -6, -9, -1\n #_05D450: dw -6, -6, -6, -6\n #_05D458: dw -2, 6, 2, 2\n #_05D460: dw -2, 6, 2, 2\n #_05D468: dw -2, 6, 6, 6\n\n.char\n #_05D470: db $0A, $0A, $2A, $2B\n #_05D474: db $1A, $1A, $2A, $2B\n #_05D478: db $0A, $0A, $0A, $0A\n #_05D47C: db $0B, $0B, $3D, $3A\n #_05D480: db $1B, $1B, $3D, $3A\n #_05D484: db $0B, $0B, $0B, $0B\n #_05D488: db $0A, $0A, $2B, $2A\n #_05D48C: db $0A, $0A, $2B, $2A\n #_05D490: db $0A, $0A, $0A, $0A\n #_05D494: db $0B, $0B, $3D, $3A\n #_05D498: db $1B, $1B, $3D, $3A\n #_05D49C: db $0B, $0B, $0B, $0B\n\n.prop\n #_05D4A0: db $0D, $4D, $08, $08\n #_05D4A4: db $0D, $4D, $08, $08\n #_05D4A8: db $0D, $4D, $4D, $4D\n #_05D4AC: db $0D, $8D, $48, $48\n #_05D4B0: db $0D, $8D, $48, $48\n #_05D4B4: db $0D, $8D, $8D, $8D\n #_05D4B8: db $8D, $CD, $88, $88\n #_05D4BC: db $8D, $CD, $88, $88\n #_05D4C0: db $8D, $CD, $CD, $CD\n #_05D4C4: db $4D, $CD, $08, $08\n #_05D4C8: db $4D, $CD, $08, $08\n #_05D4CC: db $4D, $CD, $CD, $CD\n\n.oam_offset\n #_05D4D0: db $09\n #_05D4D1: db $03\n #_05D4D2: db $00\n #_05D4D3: db $06\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Archer_Weapon", + "code": "SpriteDraw_Archer_Weapon:\n #_05D4D4: LDA.w $0DC0, X\n #_05D4D7: SEC\n #_05D4D8: SBC.b #$0E\n #_05D4DA: BCS .skip_offset\n\n #_05D4DC: PHY\n\n #_05D4DD: LDY.w SprMiscC, X\n #_05D4E0: LDA.w .oam_offset, Y\n\n #_05D4E3: PLY\n\n.skip_offset\n #_05D4E4: ASL A\n #_05D4E5: ASL A\n #_05D4E6: STA.b $06\n\n #_05D4E8: PHX\n\n #_05D4E9: LDX.b #$03\n\n.next_object\n #_05D4EB: PHX\n\n #_05D4EC: TXA\n #_05D4ED: CLC\n #_05D4EE: ADC.b $06\n #_05D4F0: PHA\n\n #_05D4F1: ASL A\n #_05D4F2: TAX\n\n #_05D4F3: REP #$20\n\n #_05D4F5: LDA.b $00\n #_05D4F7: CLC\n #_05D4F8: ADC.w .offset_x, X\n #_05D4FB: STA.b ($90), Y\n\n #_05D4FD: AND.w #$0100\n #_05D500: STA.b $0E\n\n #_05D502: LDA.b $02\n #_05D504: CLC\n #_05D505: ADC.w .offset_y, X\n\n #_05D508: INY\n #_05D509: STA.b ($90), Y\n\n #_05D50B: CLC\n #_05D50C: ADC.w #$0010\n #_05D50F: CMP.w #$0100\n #_05D512: BCC .on_screen\n\n #_05D514: LDA.w #$00F0\n #_05D517: STA.b ($90), Y\n\n.on_screen\n #_05D519: SEP #$20\n\n #_05D51B: PLX\n\n #_05D51C: LDA.w .char, X\n #_05D51F: INY\n #_05D520: STA.b ($90), Y\n\n #_05D522: LDA.w .prop, X\n #_05D525: ORA.b #$20\n #_05D527: INY\n #_05D528: STA.b ($90), Y\n\n #_05D52A: PHY\n\n #_05D52B: TYA\n #_05D52C: LSR A\n #_05D52D: LSR A\n #_05D52E: TAY\n\n #_05D52F: LDA.b $0F\n #_05D531: STA.b ($92), Y\n\n #_05D533: PLY\n #_05D534: INY\n\n #_05D535: PLX\n #_05D536: DEX\n #_05D537: BPL .next_object\n\n #_05D539: PLX\n\n #_05D53A: RTS", + "file": "bank_05.asm" + }, + { + "name": "TutorialGuardOrBarrier", + "code": "TutorialGuardOrBarrier:\n #_05D53B: PHB\n #_05D53C: PHK\n #_05D53D: PLB\n\n #_05D53E: JSR GuardOrBarrierTest\n\n #_05D541: PLB\n\n #_05D542: RTL", + "file": "bank_05.asm" + }, + { + "name": "BarrierBounce", + "code": "BarrierBounce:\n #_05D543: JSL Sprite_40_LightningGate\n\n #_05D547: RTS", + "file": "bank_05.asm" + }, + { + "name": "GuardOrBarrierTest", + "code": "GuardOrBarrierTest:\n #_05D54C: LDA.w $0E20, X\n #_05D54F: CMP.b #$40 ; SPRITE 40\n #_05D551: BEQ BarrierBounce\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_3F_TutorialGuard", + "code": "Sprite_3F_TutorialGuard:\n #_05D553: LDY.w SprMiscC, X\n\n #_05D556: PHY\n\n #_05D557: LDA.w SprTimerB, X\n #_05D55A: BEQ .dont_turn\n\n #_05D55C: LDA.w SpriteDirections_Bank05, Y\n #_05D55F: STA.w SprMiscC, X\n\n.dont_turn\n #_05D562: LDY.w SprMiscC, X\n\n #_05D565: LDA.w .anim_step, Y\n #_05D568: STA.w $0DC0, X\n\n #_05D56B: JSR SpriteDraw_TutorialGuard\n\n #_05D56E: PLA\n #_05D56F: STA.w SprMiscC, X\n\n #_05D572: JSR Sprite_CheckIfActive_Bank05\n #_05D575: JSL Sprite_CheckDamageFromLink_long\n\n #_05D579: LDA.w $040A\n #_05D57C: CMP.b #$1B ; OW 1B\n #_05D57E: BNE .use_default_messages\n\n #_05D580: LDA.b #$B2 ; MESSAGE 00B2\n\n #_05D582: LDY.w SprY, X\n #_05D585: CPY.b #$50\n #_05D587: BEQ .soldier_on_walls\n\n #_05D589: LDA.b #$B3 ; MESSAGE 00B3\n #_05D58B: CPY.b #$90\n #_05D58D: BNE .use_default_messages\n\n.soldier_on_walls\n #_05D58F: LDY.b #$00\n #_05D591: JSL TutorialGuard_ShowMessageOnContact\n #_05D595: BRA .continue\n\n.use_default_messages\n\n #_05D597: LDA.w $0B69\n #_05D59A: PHA\n\n; This all accounts for:\n; MESSAGE 000F\n; MESSAGE 0010\n; MESSAGE 0011\n; MESSAGE 0012\n; MESSAGE 0013\n; MESSAGE 0014\n #_05D59B: CLC\n #_05D59C: ADC.b #$0F\n\n #_05D59E: LDY.b #$00\n #_05D5A0: JSL TutorialGuard_ShowMessageOnContact\n\n #_05D5A4: PLA\n #_05D5A5: BCC .set_message\n\n #_05D5A7: INC A\n #_05D5A8: CMP.b #$07\n #_05D5AA: BNE .set_message\n\n #_05D5AC: LDA.b #$00\n\n.set_message\n #_05D5AE: STA.w $0B69\n\n.continue\n #_05D5B1: JSR Sprite_CheckDamageToAndFromLink_Bank05\n\n #_05D5B4: TXA\n #_05D5B5: EOR.b $1A\n #_05D5B7: AND.b #$1F\n #_05D5B9: BNE .exit\n\n #_05D5BB: JSR CannonGuard_FaceLink\n\n.exit\n #_05D5BE: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_TutorialGuard", + "code": "SpriteDraw_TutorialGuard:\n #_05D64B: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05D64E: LDA.w $0DC0, X\n #_05D651: ASL A\n #_05D652: ASL A\n #_05D653: ADC.w $0DC0, X\n #_05D656: STA.b $06\n\n #_05D658: PHX\n\n #_05D659: LDX.b #$04\n\n.next_object\n #_05D65B: PHX\n\n #_05D65C: TXA\n #_05D65D: CLC\n #_05D65E: ADC.b $06\n #_05D660: PHA\n\n #_05D661: ASL A\n #_05D662: TAX\n\n #_05D663: REP #$20\n\n #_05D665: LDA.w .offset_x, X\n #_05D668: CLC\n #_05D669: ADC.b $00\n #_05D66B: STA.b ($90), Y\n\n #_05D66D: AND.w #$0100\n #_05D670: STA.b $0E\n\n #_05D672: LDA.w .offset_y, X\n #_05D675: CLC\n #_05D676: ADC.b $02\n\n #_05D678: INY\n #_05D679: STA.b ($90), Y\n\n #_05D67B: CLC\n #_05D67C: ADC.w #$0010\n #_05D67F: CMP.w #$0100\n #_05D682: BCC .on_screen\n\n #_05D684: LDA.w #$00F0\n #_05D687: STA.b ($90), Y\n\n.on_screen\n #_05D689: SEP #$20\n\n #_05D68B: PLX\n\n #_05D68C: LDA.w .char, X\n #_05D68F: INY\n #_05D690: STA.b ($90), Y\n\n #_05D692: CMP.b #$40\n #_05D694: LDA.w .flip, X\n\n #_05D697: ORA.b $05\n #_05D699: BCS .keep_palette\n\n #_05D69B: AND.b #$F1\n #_05D69D: ORA.b #$08\n\n.keep_palette\n #_05D69F: INY\n #_05D6A0: STA.b ($90), Y\n\n #_05D6A2: PHY\n\n #_05D6A3: TYA\n #_05D6A4: LSR A\n #_05D6A5: LSR A\n #_05D6A6: TAY\n\n #_05D6A7: LDA.w .size, X\n #_05D6AA: ORA.b $0F\n #_05D6AC: STA.b ($92), Y\n\n #_05D6AE: PLY\n #_05D6AF: INY\n\n #_05D6B0: PLX\n #_05D6B1: DEX\n #_05D6B2: BPL .next_object\n\n #_05D6B4: PLX\n\n #_05D6B5: LDA.b #$0C\n #_05D6B7: JSL SpriteDraw_Shadow_custom_long\n\n #_05D6BB: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_04_PullSwitch", + "code": "Sprite_04_PullSwitch:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_05_PullSwitch", + "code": "Sprite_05_PullSwitch:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_06_PullSwitch", + "code": "Sprite_06_PullSwitch:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_07_PullSwitch", + "code": "Sprite_07_PullSwitch:", + "file": "bank_05.asm" + }, + { + "name": "Sprite_PullSwitch", + "code": "Sprite_PullSwitch:\n #_05D6BC: PHB\n #_05D6BD: PHK\n #_05D6BE: PLB\n\n #_05D6BF: LDA.w $0E20, X\n #_05D6C2: CMP.b #$07 ; SPRITE 07\n #_05D6C4: BEQ .facing_up\n\n #_05D6C6: CMP.b #$05 ; SPRITE 05\n #_05D6C8: BNE .facing_down\n\n.facing_up\n #_05D6CA: JSR PullSwitch_FacingUp\n\n #_05D6CD: PLB\n\n #_05D6CE: RTL", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_FacingUp", + "code": "PullSwitch_FacingUp:\n #_05D6D4: JSR PullSwitch_HandleUpPulling\n\n #_05D6D7: LDY.w $0DC0, X\n #_05D6DA: BEQ .continue\n\n #_05D6DC: CPY.b #$0B\n #_05D6DE: BEQ .continue\n\n #_05D6E0: LDA.w PullSwitch_LinkAnimState, Y\n #_05D6E3: STA.w $0377\n\n #_05D6E6: LDA.w SprY, X\n #_05D6E9: SEC\n #_05D6EA: SBC.b #$13\n #_05D6EC: STA.b $20\n\n #_05D6EE: LDA.w SprYH, X\n #_05D6F1: SBC.b #$00\n #_05D6F3: STA.b $21\n\n #_05D6F5: LDA.w SprX, X\n #_05D6F8: STA.b $22\n\n #_05D6FA: LDA.w SprXH, X\n #_05D6FD: STA.b $23\n\n #_05D6FF: LDA.w SprTimerA, X\n #_05D702: BNE .continue\n\n #_05D704: INC.w $0DC0, X\n\n #_05D707: LDY.w $0DC0, X\n #_05D70A: CPY.b #$0B\n #_05D70C: BNE .skip_sfx\n\n #_05D70E: LDA.b #$1B ; SFX3.1B\n #_05D710: STA.w $012F\n\n #_05D713: LDA.b #$01\n #_05D715: STA.w $0642\n\n.skip_sfx\n #_05D718: LDA.w PullSwitch_Timers-2, Y\n #_05D71B: STA.w SprTimerA, X\n\n #_05D71E: BRA .continue\n\n.continue\n #_05D720: LDA.w $0E20, X\n #_05D723: CMP.b #$07 ; SPRITE 07\n #_05D725: BEQ .wrong_switch\n\n #_05D727: JSR SpriteDraw_PullSwitch_Good_Up\n\n #_05D72A: RTS", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_Timers", + "code": "PullSwitch_Timers:\n #_05D72F: db 8, 24, 4, 4\n #_05D733: db 4, 4, 4, 4\n #_05D737: db 2\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_LinkAnimState", + "code": "PullSwitch_LinkAnimState:\n #_05D738: db $0A, $06, $07, $08\n #_05D73C: db $08, $08, $08, $08\n #_05D740: db $09, $09, $09\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_HandleUpPulling", + "code": "PullSwitch_HandleUpPulling:\n #_05D743: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05D747: BCC .exit\n\n #_05D749: STZ.b $27\n #_05D74B: STZ.b $28\n\n #_05D74D: JSL Sprite_RepelDash_long\n\n #_05D751: STZ.b $48\n\n #_05D753: LDA.w $0020\n #_05D756: SEC\n #_05D757: SBC.w SprY, X\n #_05D75A: CMP.b #$02\n #_05D75C: BPL .snap_link_down\n\n #_05D75E: CMP.b #$F4\n #_05D760: BMI .check_for_press\n\n #_05D762: LDA.w $0022\n #_05D765: CMP.w SprX, X\n #_05D768: BPL .snap_link_right\n\n.snap_link_left\n #_05D76A: LDA.w SprX, X\n #_05D76D: SEC\n #_05D76E: SBC.b #$10\n #_05D770: STA.b $22\n\n #_05D772: LDA.w SprXH, X\n #_05D775: SBC.b #$00\n #_05D777: STA.b $23\n\n #_05D779: RTS", + "file": "bank_05.asm" + }, + { + "name": "DrawPullSwitch_pull_distance", + "code": "DrawPullSwitch_pull_distance:\n #_05D7E6: db $00, $01, $02, $03, $04, $05, $05\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "DrawPullSwitch_data_index", + "code": "DrawPullSwitch_data_index:\n #_05D7ED: db $00, $00, $01, $01\n #_05D7F1: db $02, $02, $03, $03\n #_05D7F5: db $04, $05, $05, $05\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_PullSwitch_Good_Up", + "code": "SpriteDraw_PullSwitch_Good_Up:\n #_05D7F9: JSR Sprite_PrepOAMCoord_Bank05\n #_05D7FC: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n #_05D800: LDY.w $0DC0, X\n\n #_05D803: LDA.w DrawPullSwitch_data_index, Y\n #_05D806: TAY\n\n #_05D807: LDA.w DrawPullSwitch_pull_distance, Y\n #_05D80A: STA.b $06\n\n #_05D80C: PHX\n\n #_05D80D: LDX.b #$04\n #_05D80F: LDY.b #$00\n\n.next_object\n #_05D811: LDA.b $00\n #_05D813: CLC\n #_05D814: ADC.w .offset_x, X\n #_05D817: STA.b ($90), Y\n\n #_05D819: LDA.b $02\n #_05D81B: CLC\n #_05D81C: ADC.w .offset_y, X\n\n #_05D81F: INY\n #_05D820: STA.b ($90), Y\n\n #_05D822: LDA.w .char, X\n #_05D825: INY\n #_05D826: STA.b ($90), Y\n\n #_05D828: LDA.w .flip, X\n #_05D82B: ORA.b #$21\n #_05D82D: INY\n #_05D82E: STA.b ($90), Y\n\n #_05D830: PHY\n\n #_05D831: CPX.b #$02\n #_05D833: BNE .skip\n\n #_05D835: DEY\n #_05D836: DEY\n\n #_05D837: LDA.b ($90), Y\n #_05D839: SEC\n #_05D83A: SBC.b $06\n #_05D83C: STA.b ($90), Y\n\n.skip\n #_05D83E: TYA\n #_05D83F: LSR A\n #_05D840: LSR A\n #_05D841: TAY\n\n #_05D842: LDA.w .size, X\n #_05D845: STA.b ($92), Y\n\n #_05D847: PLY\n #_05D848: INY\n\n #_05D849: DEX\n #_05D84A: BPL .next_object\n\n #_05D84C: PLX\n\n #_05D84D: LDY.b #$FF\n #_05D84F: LDA.b #$04\n #_05D851: JSL Sprite_CorrectOAMEntries_long\n\n #_05D855: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_PullSwitch_Bad_Up", + "code": "SpriteDraw_PullSwitch_Bad_Up:\n #_05D858: JSR Sprite_PrepOAMCoord_Bank05\n #_05D85B: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n #_05D85F: LDY.w $0DC0, X\n\n #_05D862: LDA.w DrawPullSwitch_data_index, Y\n #_05D865: TAY\n\n #_05D866: LDA.w DrawPullSwitch_pull_distance, Y\n #_05D869: STA.b $06\n #_05D86B: STZ.b $07\n\n #_05D86D: PHX\n\n #_05D86E: LDX.b #$01\n #_05D870: LDY.b #$00\n\n.next_object\n #_05D872: REP #$20\n\n #_05D874: LDA.b $00\n #_05D876: STA.b ($90), Y\n\n #_05D878: AND.w #$0100\n #_05D87B: STA.b $0E\n\n #_05D87D: LDA.b $02\n\n #_05D87F: CPX.b #$00\n #_05D881: BNE .skip\n\n #_05D883: SEC\n #_05D884: SBC.b $06\n\n.skip\n #_05D886: INY\n #_05D887: STA.b ($90), Y\n\n #_05D889: CLC\n #_05D88A: ADC.w #$0010\n #_05D88D: CMP.w #$0100\n\n #_05D890: SEP #$20\n #_05D892: BCC .on_screen\n\n #_05D894: LDA.b #$F0\n #_05D896: STA.b ($90), Y\n\n.on_screen\n #_05D898: LDA.w .char, X\n #_05D89B: INY\n #_05D89C: STA.b ($90), Y\n\n #_05D89E: LDA.b $05\n #_05D8A0: INY\n #_05D8A1: STA.b ($90), Y\n\n #_05D8A3: PHY\n\n #_05D8A4: TYA\n #_05D8A5: LSR A\n #_05D8A6: LSR A\n #_05D8A7: TAY\n\n #_05D8A8: LDA.b #$02\n #_05D8AA: ORA.b $0F\n #_05D8AC: STA.b ($92), Y\n\n #_05D8AE: PLY\n #_05D8AF: INY\n\n #_05D8B0: DEX\n #_05D8B1: BPL .next_object\n\n #_05D8B3: PLX\n\n #_05D8B4: RTS", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_FacingDown", + "code": "PullSwitch_FacingDown:\n #_05D8B5: JSR PullSwitch_HandleDownPulling\n #_05D8B8: LDY.w $0DC0, X\n #_05D8BB: BEQ .continue\n\n #_05D8BD: CPY.b #$0D\n #_05D8BF: BEQ .continue\n\n #_05D8C1: LDA.w .grab_anim_state, Y\n #_05D8C4: STA.w $0377\n\n #_05D8C7: LDA.w SprY, X\n #_05D8CA: CLC\n #_05D8CB: ADC.w .snap_offset_y, Y\n #_05D8CE: STA.b $20\n\n #_05D8D0: LDA.w SprYH, X\n #_05D8D3: ADC.b #$00\n #_05D8D5: STA.b $21\n\n #_05D8D7: LDA.w SprX, X\n #_05D8DA: STA.b $22\n\n #_05D8DC: LDA.w SprXH, X\n #_05D8DF: STA.b $23\n\n #_05D8E1: LDA.w SprTimerA, X\n #_05D8E4: BNE .continue\n\n #_05D8E6: INC.w $0DC0, X\n\n #_05D8E9: LDY.w $0DC0, X\n #_05D8EC: CPY.b #$0D\n #_05D8EE: BNE .adjust_timer\n\n #_05D8F0: LDA.w $0E20, X\n #_05D8F3: CMP.b #$06 ; SPRITE 06\n #_05D8F5: BNE .good_switch\n\n #_05D8F7: LDA.b #$01\n #_05D8F9: STA.w $0CF4\n\n #_05D8FC: LDA.b #$3C ; SFX2.3C\n #_05D8FE: STA.w $012E\n\n #_05D901: BRA .adjust_timer\n\n; ---------------------------------------------------------\n\n.good_switch\n #_05D903: LDA.b #$01\n #_05D905: STA.w $0642\n\n #_05D908: LDA.b #$1B ; SFX3.1B\n #_05D90A: STA.w $012F\n\n.adjust_timer\n #_05D90D: LDA.w .timers-2, Y\n #_05D910: STA.w SprTimerA, X\n\n #_05D913: BRA .continue\n\n; ---------------------------------------------------------\n\n.continue\n #_05D915: JSR SpriteDraw_PullSwitch_Down\n\n #_05D918: LDA.w $0F00, X\n #_05D91B: BEQ .exit\n\n #_05D91D: STZ.w $0DC0, X\n\n.exit\n #_05D920: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_PullSwitch_Down", + "code": "SpriteDraw_PullSwitch_Down:\n #_05D953: JSR Sprite_PrepOAMCoord_Bank05\n #_05D956: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n #_05D95A: LDY.w $0DC0, X\n\n #_05D95D: LDA.w .pull_distance, Y\n #_05D960: STA.b $06\n\n #_05D962: LDY.b #$04\n\n #_05D964: LDA.b $00\n #_05D966: STA.b ($90), Y\n\n #_05D968: LDY.b #$00\n #_05D96A: STA.b ($90), Y\n\n #_05D96C: LDA.b $02\n #_05D96E: DEC A\n #_05D96F: LDY.b #$01\n #_05D971: STA.b ($90), Y\n\n #_05D973: CLC\n #_05D974: ADC.b $06\n #_05D976: LDY.b #$05\n #_05D978: STA.b ($90), Y\n\n #_05D97A: LDA.b #$CE\n #_05D97C: LDY.b #$06\n #_05D97E: STA.b ($90), Y\n\n #_05D980: LDA.b #$EE\n #_05D982: LDY.b #$02\n #_05D984: STA.b ($90), Y\n\n #_05D986: LDA.b $05\n #_05D988: LDY.b #$03\n #_05D98A: STA.b ($90), Y\n\n #_05D98C: LDY.b #$07\n #_05D98E: STA.b ($90), Y\n\n #_05D990: LDY.b #$02\n #_05D992: LDA.b #$01\n #_05D994: JSL Sprite_CorrectOAMEntries_long\n\n #_05D998: RTS", + "file": "bank_05.asm" + }, + { + "name": "PullSwitch_HandleDownPulling", + "code": "PullSwitch_HandleDownPulling:\n #_05D999: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05D99D: BCC .exit\n\n #_05D99F: STZ.b $27\n #_05D9A1: STZ.b $28\n\n #_05D9A3: JSL Sprite_RepelDash_long\n\n #_05D9A7: STZ.b $48\n\n #_05D9A9: LDA.w $0020\n #_05D9AC: SEC\n #_05D9AD: SBC.w SprY, X\n #_05D9B0: CMP.b #$02\n #_05D9B2: BPL .check_input\n\n #_05D9B4: CMP.b #$F4\n #_05D9B6: BMI .snap_link_up\n\n #_05D9B8: LDA.w $0022\n #_05D9BB: CMP.w SprX, X\n #_05D9BE: BPL .snap_link_right\n\n #_05D9C0: LDA.w SprX, X\n #_05D9C3: SEC\n #_05D9C4: SBC.b #$10\n #_05D9C6: STA.b $22\n\n #_05D9C8: LDA.w SprXH, X\n #_05D9CB: SBC.b #$00\n #_05D9CD: STA.b $23\n\n.exit\n #_05D9CF: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_UncleAndPriest", + "code": "SpritePrep_UncleAndPriest:\n #_05DA29: PHB\n #_05DA2A: PHK\n #_05DA2B: PLB\n\n #_05DA2C: JSR UncleOrPriestPrepCheck\n\n #_05DA2F: PLB\n\n #_05DA30: RTL", + "file": "bank_05.asm" + }, + { + "name": "UncleOrPriestPrepCheck", + "code": "UncleOrPriestPrepCheck:\n #_05DA3D: LDA.b $A0\n #_05DA3F: CMP.b #$12 ; ROOM 0012\n #_05DA41: BEQ SpritePrep_Priest\n\n #_05DA43: JMP.w SpritePrep_Uncle\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Priest", + "code": "SpritePrep_Priest:\n #_05DA46: JSR Priest_SpawnMantle\n\n #_05DA49: LDA.l $7EF3C5\n #_05DA4D: CMP.b #$03\n #_05DA4F: BCC .aga_not_defeated\n\n #_05DA51: LDA.l $7EF3C6\n #_05DA55: ORA.b #$02\n #_05DA57: STA.l $7EF3C6\n\n.aga_not_defeated\n #_05DA5B: LDA.l $7EF3C6\n #_05DA5F: AND.b #$02\n #_05DA61: BEQ .alive_and_well\n\n #_05DA63: STZ.w $0DD0, X\n\n #_05DA66: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Uncle", + "code": "SpritePrep_Uncle:\n #_05DAF7: CMP.b #$04\n #_05DAF9: BNE .not_house\n\n #_05DAFB: LDA.l $7EF3C6\n #_05DAFF: AND.b #$10\n #_05DB01: BNE .kill_your_uncle\n\n #_05DB03: LDA.w SprX, X\n #_05DB06: CLC\n #_05DB07: ADC.b #$08\n #_05DB09: STA.w SprX, X\n\n #_05DB0C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_SpawnMantle", + "code": "Priest_SpawnMantle:\n #_05DB27: INC.w $0DDF\n\n #_05DB2A: LDA.b #$73 ; SPRITE 73\n #_05DB2C: JSL Sprite_SpawnDynamically\n\n #_05DB30: STZ.w $0DDF\n\n #_05DB33: LDA.w $0E40, Y\n #_05DB36: AND.b #$F0\n #_05DB38: ORA.b #$03\n #_05DB3A: STA.w $0E40, Y\n\n #_05DB3D: LDA.w .mantle_position_x_low\n #_05DB40: STA.w SprX, Y\n\n #_05DB43: LDA.w .mantle_position_x_high\n #_05DB46: STA.w SprXH, Y\n\n #_05DB49: LDA.w .mantle_position_y_low\n #_05DB4C: STA.w SprY, Y\n\n #_05DB4F: LDA.w .mantle_position_y_high\n #_05DB52: STA.w SprYH, Y\n\n #_05DB55: LDA.b #$02\n #_05DB57: STA.w $0E90, Y\n\n #_05DB5A: LDA.b #$0B\n #_05DB5C: STA.w $0F60, Y\n\n #_05DB5F: LDA.w $0CAA, Y\n #_05DB62: ORA.b #$20\n #_05DB64: STA.w $0CAA, Y\n\n #_05DB67: LDA.b #$01\n #_05DB69: STA.w SprDelay, Y\n\n #_05DB6C: LDA.w SprY, Y\n #_05DB6F: STA.b $00\n\n #_05DB71: LDA.w SprYH, Y\n #_05DB74: STA.b $01\n\n #_05DB76: REP #$30\n\n #_05DB78: LDA.b $20\n #_05DB7A: CMP.b $00\n\n #_05DB7C: SEP #$30\n #_05DB7E: BCS .exit\n\n #_05DB80: LDA.b #$01\n #_05DB82: STA.w $0DB0, Y\n\n.exit\n #_05DB85: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_73_UncleAndPriest", + "code": "Sprite_73_UncleAndPriest:\n #_05DB86: PHB\n #_05DB87: PHK\n #_05DB88: PLB\n\n #_05DB89: JSR .main\n\n #_05DB8C: PLB\n\n #_05DB8D: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_SanctuaryMantle", + "code": "Sprite_SanctuaryMantle:\n #_05DB9B: JSR SpriteDraw_SanctuaryMantle\n #_05DB9E: JSR Sprite_CheckIfActive_Bank05\n\n #_05DBA1: LDA.w $0DB0, X\n #_05DBA4: BNE SanctuaryMantle_SlidingOpen\n\n #_05DBA6: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05DBAA: BCC SanctuaryMantle_NoContact\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_MadeContact", + "code": "SanctuaryMantle_MadeContact:\n #_05DBAC: JSL Sprite_CancelHookshot\n\n #_05DBB0: STZ.b $5E\n\n #_05DBB2: JSL Sprite_RepelDash_long\n\n #_05DBB6: LDA.b #$07\n #_05DBB8: STA.w SprTimerB, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_RecentContact", + "code": "SanctuaryMantle_RecentContact:\n #_05DBBB: STZ.w SprDelay, X\n\n #_05DBBE: LDA.b #$81\n #_05DBC0: STA.b $48\n\n #_05DBC2: LDA.b #$08\n #_05DBC4: STA.b $5E\n\n #_05DBC6: LDA.w SprAction, X\n #_05DBC9: JSL JumpTableLocal\n #_05DBCD: dw SanctuaryMantle_AttemptCutscene\n #_05DBCF: dw SanctuaryMantle_InitializeSlide\n #_05DBD1: dw SanctuaryMantle_SlideToTheRight\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_NoContact", + "code": "SanctuaryMantle_NoContact:\n #_05DBD3: LDA.w SprTimerB, X\n #_05DBD6: BNE SanctuaryMantle_RecentContact\n\n #_05DBD8: LDA.w SprDelay, X\n #_05DBDB: JSL JumpTableLocal\n #_05DBDF: dw SanctuaryMantle_ResetGrabAndSpeed\n #_05DBE1: dw SanctuaryMantle_Nothing\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_SlidingOpen", + "code": "SanctuaryMantle_SlidingOpen:\n #_05DBE3: LDA.b #$40\n #_05DBE5: STA.w $0D90, X\n\n #_05DBE8: LDA.w SprAction, X\n #_05DBEB: JSL JumpTableLocal\n #_05DBEF: dw SanctuaryMantle_AttemptCutscene\n #_05DBF1: dw SanctuaryMantle_InitializeSlide\n #_05DBF3: dw SanctuaryMantle_SlideToTheRight\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_ResetGrabAndSpeed", + "code": "SanctuaryMantle_ResetGrabAndSpeed:\n #_05DBF5: STZ.w $0D90, X\n\n #_05DBF8: STZ.b $48\n #_05DBFA: STZ.b $5E\n\n #_05DBFC: INC.w SprDelay, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_Nothing", + "code": "SanctuaryMantle_Nothing:\n #_05DBFF: RTS", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_AttemptCutscene", + "code": "SanctuaryMantle_AttemptCutscene:\n #_05DC00: LDA.w SprX, X\n #_05DC03: PHA\n\n #_05DC04: CLC\n #_05DC05: ADC.b #$13\n #_05DC07: STA.w SprX, X\n\n #_05DC0A: LDA.w SprXH, X\n #_05DC0D: PHA\n\n #_05DC0E: ADC.b #$00\n #_05DC10: STA.w SprXH, X\n\n #_05DC13: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05DC16: PLA\n #_05DC17: STA.w SprXH, X\n\n #_05DC1A: PLA\n #_05DC1B: STA.w SprX, X\n\n #_05DC1E: CPY.b #$03\n #_05DC20: BEQ .link_above\n\n #_05DC22: CPY.b #$01\n #_05DC24: BNE .exit\n\n.link_above\n #_05DC26: INC.w $0D90, X\n\n #_05DC29: LDA.w $0D90, X\n #_05DC2C: CMP.b #$40\n #_05DC2E: BCC .exit\n\n #_05DC30: INC.w SprAction, X\n\n #_05DC33: LDA.b #$01\n #_05DC35: STA.w $02E4\n\n.exit\n #_05DC38: RTS", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_InitializeSlide", + "code": "SanctuaryMantle_InitializeSlide:\n #_05DC39: LDA.b #$18 ; SFX3.18\n #_05DC3B: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05DC3F: INC.w SprAction, X\n\n #_05DC42: LDA.b #$A8\n #_05DC44: STA.w SprTimerA, X\n\n #_05DC47: LDA.b #$03\n #_05DC49: STA.w SprXSpeed, X\n\n #_05DC4C: LDA.b #$02\n #_05DC4E: STA.w SprTimerB, X\n\n #_05DC51: RTS", + "file": "bank_05.asm" + }, + { + "name": "SanctuaryMantle_SlideToTheRight", + "code": "SanctuaryMantle_SlideToTheRight:\n #_05DC52: JSR Sprite_Move_XY_Bank05\n\n #_05DC55: LDA.w SprTimerA, X\n #_05DC58: BNE .delay\n\n #_05DC5A: STZ.w $02E4\n\n #_05DC5D: STZ.w SprXSpeed, X\n #_05DC60: STZ.w $0DB0, X\n\n #_05DC63: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_SanctuaryMantle", + "code": "SpriteDraw_SanctuaryMantle:\n #_05DC8A: LDA.b #.oam_groups>>0\n #_05DC8C: STA.b $08\n\n #_05DC8E: LDA.b #.oam_groups>>8\n #_05DC90: STA.b $09\n\n #_05DC92: LDA.w $0DB0, X\n #_05DC95: BNE .dont_change_region\n\n #_05DC97: LDA.b #$10\n #_05DC99: JSL SpriteDraw_AllocateOAMFromRegionB\n\n.dont_change_region\n #_05DC9D: LDA.b #$04\n #_05DC9F: JMP.w SpriteDraw_Tabulated_Bank05\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_TrackBodyToHead", + "code": "Sprite_TrackBodyToHead:\n #_05DCA2: LDA.w SprMiscC, X\n #_05DCA5: CMP.w SprMiscE, X\n #_05DCA8: BEQ .sync_body\n\n #_05DCAA: LDA.b $1A\n #_05DCAC: AND.b #$1F\n #_05DCAE: BNE .exit\n\n #_05DCB0: LDA.w SprMiscC, X\n #_05DCB3: EOR.w SprMiscE, X\n #_05DCB6: AND.b #$02\n #_05DCB8: BNE .sync_body\n\n #_05DCBA: TXA\n #_05DCBB: EOR.b $1A\n\n #_05DCBD: LSR A\n #_05DCBE: LSR A\n #_05DCBF: LSR A\n #_05DCC0: LSR A\n #_05DCC1: LSR A\n\n #_05DCC2: ORA.b #$02\n #_05DCC4: AND.b #$03\n #_05DCC6: STA.w SprMiscC, X\n\n #_05DCC9: LDA.w SprMiscE, X\n #_05DCCC: AND.b #$02\n #_05DCCE: EOR.w SprMiscC, X\n #_05DCD1: STA.w SprMiscC, X\n\n.exit\n #_05DCD4: CLC\n\n #_05DCD5: RTL", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05DCDE", + "code": "UNREACHABLE_05DCDE:\n #_05DCDE: db $00, $00, $F7, $09, $F7, $09, $00, $00\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Priest", + "code": "Sprite_Priest:\n #_05DCE6: LDA.w $0D90, X\n #_05DCE9: BNE .skip_drawing\n\n #_05DCEB: JSL SpriteDraw_Priest\n\n.skip_drawing\n #_05DCEF: JSR Sprite_CheckIfActive_Bank05\n #_05DCF2: JSL Sprite_BehaveAsBarrier\n #_05DCF6: JSL Sprite_TrackBodyToHead\n #_05DCFA: JSR Sprite_Move_XY_Bank05\n\n #_05DCFD: LDA.w SprDelay, X\n #_05DD00: JSL JumpTableLocal\n #_05DD04: dw Priest_Dying\n #_05DD06: dw Priest_RunRescueCutscene\n #_05DD08: dw Priest_Chillin\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Priest_Dying", + "code": "Priest_Dying:\n #_05DD0A: LDA.b #$04\n #_05DD0C: STA.w SprMiscE, X\n #_05DD0F: STA.w SprMiscC, X\n\n #_05DD12: LDA.w SprAction, X\n #_05DD15: JSL JumpTableLocal\n #_05DD19: dw Priest_LyingOnGround\n #_05DD1B: dw Priest_FinalWords\n #_05DD1D: dw Priest_Die\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Priest_LyingOnGround", + "code": "Priest_LyingOnGround:\n #_05DD1F: LDA.b #$1B ; MESSAGE 001B\n #_05DD21: LDY.b #$00\n #_05DD23: JSL Sprite_ShowSolicitedMessage\n #_05DD27: BCC .exit\n\n #_05DD29: INC.w SprAction, X\n #_05DD2C: INC.w $0DC0, X\n\n #_05DD2F: LDA.l $7EF3C6\n #_05DD33: ORA.b #$02\n #_05DD35: STA.l $7EF3C6\n\n #_05DD39: LDA.b #$80\n #_05DD3B: STA.w $0E10, X\n\n.exit\n #_05DD3E: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_FinalWords", + "code": "Priest_FinalWords:\n #_05DD3F: STZ.w $0DC0, X\n\n #_05DD42: LDA.w $0E10, X\n #_05DD45: BNE .delay\n\n #_05DD47: INC.w SprAction, X\n\n.delay\n #_05DD4A: LDA.b $1A\n #_05DD4C: AND.b #$02\n #_05DD4E: STA.w $0D90, X\n\n #_05DD51: LDA.w $0E10, X\n #_05DD54: AND.b #$07\n #_05DD56: BNE .exit\n\n #_05DD58: LDA.b #$33 ; SFX2.33\n #_05DD5A: JSL SpriteSFX_QueueSFX2WithPan\n\n.exit\n #_05DD5E: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_Die", + "code": "Priest_Die:\n #_05DD5F: STZ.w $0DD0, X\n\n #_05DD62: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_RunRescueCutscene", + "code": "Priest_RunRescueCutscene:\n #_05DD63: LDA.w SprAction, X\n #_05DD66: JSL JumpTableLocal\n #_05DD6A: dw Priest_WelcomeToSanctuary\n #_05DD6C: dw Priest_WaitForZelda\n #_05DD6E: dw Priest_MoreTalking\n #_05DD70: dw Priest_OfferKisses\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Priest_WelcomeToSanctuary", + "code": "Priest_WelcomeToSanctuary:\n #_05DD72: LDA.b #$00\n #_05DD74: STA.w SprMiscE, X\n #_05DD77: STA.w SprMiscC, X\n\n #_05DD7A: LDA.w SprTimerA, X\n #_05DD7D: BNE .exit\n\n #_05DD7F: LDA.b #$17 ; MESSAGE 0017\n #_05DD81: LDY.b #$00\n #_05DD83: JSL Sprite_ShowMessageUnconditional\n\n #_05DD87: INC.w SprAction, X\n\n #_05DD8A: LDA.b #$01\n #_05DD8C: STA.l $7FFE01\n\n #_05DD90: JSR Priest_SpawnRescuedPrincess\n\n #_05DD93: LDA.b #$01\n #_05DD95: STA.w $02E4\n\n #_05DD98: LDA.b #$01\n #_05DD9A: STA.l $7EF3C7\n\n.exit\n #_05DD9E: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_WaitForZelda", + "code": "Priest_WaitForZelda:\n #_05DD9F: LDA.l $7FFE01\n #_05DDA3: CMP.b #$02\n #_05DDA5: BNE .exit\n\n #_05DDA7: LDA.b #$18 ; MESSAGE 0018\n #_05DDA9: LDY.b #$00\n #_05DDAB: JSL Sprite_ShowMessageUnconditional\n\n #_05DDAF: INC.w SprAction, X\n\n.exit\n #_05DDB2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_MoreTalking", + "code": "Priest_MoreTalking:\n #_05DDB3: LDA.w $1CE8\n #_05DDB6: BNE .player_misunderstood\n\n #_05DDB8: INC.w SprAction, X\n\n #_05DDBB: STZ.w $02E4\n\n #_05DDBE: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_OfferKisses", + "code": "Priest_OfferKisses:\n #_05DDC5: JSR Sprite_DirectionToFaceLink_Bank05\n #_05DDC8: TYA\n #_05DDC9: EOR.b #$03\n #_05DDCB: STA.w SprMiscE, X\n\n #_05DDCE: LDA.b #$16 ; MESSAGE 0016\n #_05DDD0: LDY.b #$00\n #_05DDD2: JSL Sprite_ShowSolicitedMessage\n #_05DDD6: BCC .exit\n\n #_05DDD8: STA.w SprMiscC, X\n #_05DDDB: STA.w SprMiscE, X\n\n.exit\n #_05DDDE: RTS", + "file": "bank_05.asm" + }, + { + "name": "Priest_Chillin", + "code": "Priest_Chillin:\n #_05DDE5: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05DDE8: TYA\n #_05DDE9: EOR.b #$03\n #_05DDEB: STA.w SprMiscE, X\n\n #_05DDEE: LDY.b #$00\n\n #_05DDF0: LDA.l $7EF374\n #_05DDF4: AND.b #$07\n #_05DDF6: CMP.b #$07\n #_05DDF8: BNE .has_every_pendant\n\n #_05DDFA: LDY.b #$02\n #_05DDFC: BRA .quest_unfinished\n\n; ---------------------------------------------------------\n\n.has_every_pendant\n #_05DDFE: LDA.l $7EF3C7\n #_05DE02: CMP.b #$03\n #_05DE04: BCC .quest_unfinished\n\n #_05DE06: LDY.b #$01\n\n.quest_unfinished\n #_05DE08: LDA.w .messages_low, Y\n #_05DE0B: XBA\n\n #_05DE0C: LDA.w .messages_high, Y\n #_05DE0F: TAY\n\n #_05DE10: XBA\n #_05DE11: JSL Sprite_ShowSolicitedMessage\n #_05DE15: BCC .exit\n\n #_05DE17: STA.w SprMiscC, X\n #_05DE1A: STA.w SprMiscE, X\n\n #_05DE1D: LDA.b #$A0\n #_05DE1F: STA.l $7EF372\n\n.exit\n #_05DE23: RTS", + "file": "bank_05.asm" + }, + { + "name": "UncleSpeed_X", + "code": "UncleSpeed_X:\n #_05DE24: db 0, 0, -12, 12\n", + "file": "bank_05.asm" + }, + { + "name": "UncleSpeed_Y", + "code": "UncleSpeed_Y:\n #_05DE28: db -12, 12, 0, 0\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Uncle", + "code": "Sprite_Uncle:\n #_05DE2C: JSL SpriteDraw_Uncle\n #_05DE30: JSR Sprite_CheckIfActive_Bank05\n\n #_05DE33: LDA.w SprDelay, X\n #_05DE36: JSL JumpTableLocal\n #_05DE3A: dw Uncle_AtHouse\n #_05DE3C: dw Uncle_InPassage\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Uncle_AtHouse", + "code": "Uncle_AtHouse:\n #_05DE3E: JSR Sprite_Move_XY_Bank05\n\n #_05DE41: LDA.w SprAction, X\n #_05DE44: JSL JumpTableLocal\n #_05DE48: dw Uncle_TriggerTelepathy\n #_05DE4A: dw Uncle_AwakenLink\n #_05DE4C: dw Uncle_DeclareCurfew\n #_05DE4E: dw Uncle_Embark\n #_05DE50: dw Uncle_ApplyTelepathyFollower\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Uncle_TriggerTelepathy", + "code": "Uncle_TriggerTelepathy:\n #_05DE52: LDA.b #$40\n #_05DE54: STA.w $0FC2\n\n #_05DE57: LDA.b #$09\n #_05DE59: STA.w $0FC3\n\n #_05DE5C: LDA.b #$5A\n #_05DE5E: STA.w $0FC4\n\n #_05DE61: LDA.b #$21\n #_05DE63: STA.w $0FC5\n\n #_05DE66: LDA.b #$1F ; MESSAGE 001F\n #_05DE68: LDY.b #$00\n #_05DE6A: JSL Sprite_ShowMessageUnconditional\n\n #_05DE6E: INC.w SprAction, X\n\n #_05DE71: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_AwakenLink", + "code": "Uncle_AwakenLink:\n #_05DE72: LDA.b $1A\n #_05DE74: AND.b #$03\n #_05DE76: BNE .exit\n\n #_05DE78: LDA.b $9C\n #_05DE7A: CMP.b #$20\n #_05DE7C: BEQ .lights_are_on\n\n #_05DE7E: DEC.b $9C\n #_05DE80: DEC.b $9D\n\n.exit\n #_05DE82: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_DeclareCurfew", + "code": "Uncle_DeclareCurfew:\n #_05DE9A: LDA.b #$0D ; MESSAGE 000D\n #_05DE9C: LDY.b #$00\n #_05DE9E: JSL Sprite_ShowMessageUnconditional\n\n #_05DEA2: INC.w SprAction, X\n\n #_05DEA5: LDA.b #$03 ; SONG 03\n #_05DEA7: STA.w $012C\n\n #_05DEAA: LDA.b #$01\n #_05DEAC: STA.w $0DC0, X\n\n #_05DEAF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_Embark", + "code": "Uncle_Embark:\n #_05DEB4: LDA.w SprTimerA, X\n #_05DEB7: BNE .delay\n\n #_05DEB9: LDY.w $0D90, X\n #_05DEBC: BNE .already_standing\n\n #_05DEBE: LDA.w SprY, X\n #_05DEC1: SEC\n #_05DEC2: SBC.b #$02\n #_05DEC4: STA.w SprY, X\n\n.already_standing\n #_05DEC7: LDA.w .timer, Y\n #_05DECA: STA.w SprTimerA, X\n\n #_05DECD: LDA.w .direction, Y\n #_05DED0: STA.w SprMiscC, X\n\n #_05DED3: TAY\n\n #_05DED4: LDA.w UncleSpeed_X, Y\n #_05DED7: STA.w SprXSpeed, X\n\n #_05DEDA: LDA.w UncleSpeed_Y, Y\n #_05DEDD: STA.w SprYSpeed, X\n\n #_05DEE0: INC.w $0D90, X\n\n #_05DEE3: LDA.w $0D90, X\n #_05DEE6: CMP.b #$03\n #_05DEE8: BNE .delay\n\n #_05DEEA: INC.w SprAction, X\n\n.delay\n #_05DEED: LDA.b $1A\n #_05DEEF: LSR A\n #_05DEF0: LSR A\n #_05DEF1: LSR A\n #_05DEF2: AND.b #$01\n #_05DEF4: STA.w $0DC0, X\n\n #_05DEF7: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_ApplyTelepathyFollower", + "code": "Uncle_ApplyTelepathyFollower:\n #_05DEF8: LDA.b #$05 ; FOLLOWER 05\n #_05DEFA: STA.l $7EF3CC\n\n #_05DEFE: LDA.b #$F3\n #_05DF00: STA.w $02CD\n\n #_05DF03: LDA.b #$0D\n #_05DF05: STA.w $02CE\n\n #_05DF08: LDA.l $7EF3C6\n #_05DF0C: ORA.b #$10\n #_05DF0E: STA.l $7EF3C6\n\n #_05DF12: STZ.w $0DD0, X\n #_05DF15: STZ.w $02E4\n\n #_05DF18: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_InPassage", + "code": "Uncle_InPassage:\n #_05DF19: LDA.w SprAction, X\n #_05DF1C: JSL JumpTableLocal\n #_05DF20: dw Uncle_LyingInDefeat\n #_05DF22: dw Uncle_GrantEquipment\n #_05DF24: dw Uncle_Dead\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Uncle_LyingInDefeat", + "code": "Uncle_LyingInDefeat:\n #_05DF26: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05DF2A: BCC .still_waiting\n\n #_05DF2C: JSL Link_CancelDash_long\n\n.still_waiting\n #_05DF30: LDA.b #$0E ; MESSAGE 000E\n #_05DF32: LDY.b #$00\n #_05DF34: JSL Sprite_ShowMessageOnContact\n #_05DF38: BCC Uncle_Dead\n\n #_05DF3A: LDA.b #$00\n #_05DF3C: STA.l $7EF3CC\n\n #_05DF40: INC.w SprAction, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Uncle_Dead", + "code": "Uncle_Dead:\n #_05DF43: RTS", + "file": "bank_05.asm" + }, + { + "name": "Uncle_GrantEquipment", + "code": "Uncle_GrantEquipment:\n #_05DF44: LDY.b #$00 ; ITEMGET 00\n #_05DF46: STZ.w $02E9\n #_05DF49: JSL Link_ReceiveItem\n\n #_05DF4D: INC.w SprAction, X\n\n #_05DF50: LDA.b #$01\n #_05DF52: STA.w $0DC0, X\n\n #_05DF55: LDA.b #$03\n #_05DF57: STA.l $7EF3C8\n\n #_05DF5B: LDA.l $7EF3C6\n #_05DF5F: ORA.b #$01\n #_05DF61: STA.l $7EF3C6\n\n #_05DF65: LDA.b #$01\n #_05DF67: STA.l $7EF3C5\n\n #_05DF6B: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Tabulated", + "code": "SpriteDraw_Tabulated:\n #_05DF6C: STA.b $06\n #_05DF6E: STZ.b $07\n\n; ---------------------------------------------------------\n\n#SpriteDraw_Tabulated_preset_quantity:\n #_05DF70: JSR SpriteDraw_Tabulated_prep_oam\n #_05DF73: BRA .continue\n\n; ---------------------------------------------------------\n\n#SpriteDraw_Tabulated_player_deferred:\n #_05DF75: JSR SpriteDraw_Tabulated_prep_oam_deferred\n\n; ---------------------------------------------------------\n\n.continue\n #_05DF78: BCS .exit\n\n #_05DF7A: PHX\n\n #_05DF7B: REP #$30\n\n #_05DF7D: LDY.w #$0000\n #_05DF80: LDX.w $0090\n\n.next_object\n #_05DF83: LDA.b ($08), Y\n #_05DF85: CLC\n #_05DF86: ADC.b $00\n #_05DF88: STA.w $0000, X\n\n #_05DF8B: AND.w #$0100\n #_05DF8E: STA.b $0C\n\n #_05DF90: INY\n #_05DF91: INY\n\n #_05DF92: LDA.b ($08), Y\n #_05DF94: CLC\n #_05DF95: ADC.b $02\n #_05DF97: STA.w $0001, X\n\n #_05DF9A: CLC\n #_05DF9B: ADC.w #$0010\n #_05DF9E: CMP.w #$0100\n #_05DFA1: BCC .on_screen\n\n #_05DFA3: LDA.w #$00F0\n #_05DFA6: STA.w $0001, X\n\n.on_screen\n #_05DFA9: INY\n #_05DFAA: INY\n\n #_05DFAB: LDA.w $0CFE\n #_05DFAE: CMP.w #$0001\n\n #_05DFB1: LDA.b ($08), Y\n #_05DFB3: EOR.b $04\n #_05DFB5: BCC .dont_override_palette\n\n #_05DFB7: AND.w #$F1FF\n #_05DFBA: ORA.w #$0400\n\n.dont_override_palette\n #_05DFBD: STA.w $0002, X\n\n #_05DFC0: PHX\n\n #_05DFC1: TXA\n #_05DFC2: SEC\n #_05DFC3: SBC.w #$0800\n #_05DFC6: LSR A\n #_05DFC7: LSR A\n #_05DFC8: TAX\n\n #_05DFC9: SEP #$20\n\n #_05DFCB: INY\n #_05DFCC: INY\n #_05DFCD: INY\n\n #_05DFCE: LDA.b ($08), Y\n #_05DFD0: ORA.b $0D\n #_05DFD2: STA.w $0A20, X\n\n #_05DFD5: PLX\n\n #_05DFD6: REP #$20\n\n #_05DFD8: INY\n\n #_05DFD9: INX\n #_05DFDA: INX\n #_05DFDB: INX\n #_05DFDC: INX\n\n #_05DFDD: DEC.b $06\n #_05DFDF: BNE .next_object\n\n #_05DFE1: SEP #$30\n\n #_05DFE3: PLX\n\n.exit\n #_05DFE4: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Tabulated_prep_oam_deferred", + "code": "SpriteDraw_Tabulated_prep_oam_deferred:\n #_05DFE5: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Tabulated_prep_oam", + "code": "SpriteDraw_Tabulated_prep_oam:\n #_05DFE9: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05DFEC: PHP\n\n #_05DFED: STZ.w $0CFE\n #_05DFF0: STZ.w $0CFF\n\n #_05DFF3: LDA.w $0DD0, X\n #_05DFF6: CMP.b #$0A\n #_05DFF8: BNE .not_carried\n\n #_05DFFA: LDA.l $7FFA2C, X\n\n.not_carried\n #_05DFFE: CMP.b #$0B\n #_05E000: BNE .not_stunned\n\n #_05E002: LDA.l $7FFA3C, X\n #_05E006: STA.w $0CFE\n\n.not_stunned\n #_05E009: PLP\n\n #_05E00A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_32_ArguingBros", + "code": "Sprite_32_ArguingBros:\n #_05E00B: PHB\n #_05E00C: PHK\n #_05E00D: PLB\n\n #_05E00E: JSR .main\n\n #_05E011: PLB\n\n #_05E012: RTL", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05E052", + "code": "UNREACHABLE_05E052:\n #_05E052: JSR Sprite_Move_XY_Bank05\n #_05E055: JSR Sprite_CheckTileCollision_Bank05\n\n #_05E058: LDA.w SprAction, X\n #_05E05B: JSL JumpTableLocal\n #_05E05F: dw UNREACHABLE_05E06B\n #_05E061: dw UNREACHABLE_05E0B6\n\n; =========================================================\n\npool UNREACHABLE_05E06B\n\n.speed_x\n #_05E063: db 0, 0, -12, 11\n\n.speed_y\n #_05E067: db -12, 11, 0, 0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05E06B", + "code": "UNREACHABLE_05E06B:\n #_05E06B: LDA.w SprTimerA, X\n #_05E06E: BNE .delay\n\n #_05E070: JSL GetRandomNumber\n #_05E074: AND.b #$1F\n #_05E076: CLC\n #_05E077: ADC.b #$40\n #_05E079: STA.w SprTimerA, X\n\n #_05E07C: LDA.b $1A\n #_05E07E: AND.b #$01\n #_05E080: ORA.b #$02\n #_05E082: EOR.w SprMiscC, X\n #_05E085: STA.w SprMiscC, X\n\n.delay\n #_05E088: LDA.w SprCollision, X\n #_05E08B: AND.b #$0F\n #_05E08D: BEQ .dont_change_state\n\n #_05E08F: INC.w SprAction, X\n\n #_05E092: LDA.b #$60\n #_05E094: STA.w SprTimerA, X\n\n.dont_change_state\n #_05E097: TXA\n #_05E098: EOR.b $1A\n #_05E09A: LSR A\n #_05E09B: LSR A\n #_05E09C: LSR A\n #_05E09D: AND.b #$01\n #_05E09F: STA.w $0DC0, X\n\n #_05E0A2: LDY.w SprMiscC, X\n\n #_05E0A5: LDA.w .speed_x, Y\n #_05E0A8: STA.w SprXSpeed, X\n\n #_05E0AB: LDA.w .speed_y, Y\n #_05E0AE: STA.w SprYSpeed, X\n\n #_05E0B1: TYA\n #_05E0B2: STA.w $0D90, X\n\n #_05E0B5: RTS", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05E0B6", + "code": "UNREACHABLE_05E0B6:\n #_05E0B6: LDA.w SprTimerA, X\n #_05E0B9: BNE .delay\n\n #_05E0BB: JSL GetRandomNumber\n #_05E0BF: AND.b #$1F\n #_05E0C1: CLC\n #_05E0C2: ADC.b #$60\n #_05E0C4: STA.w SprTimerA, X\n\n #_05E0C7: STZ.w SprAction, X\n\n #_05E0CA: LDA.b $1A\n #_05E0CC: AND.b #$01\n #_05E0CE: ORA.b #$02\n #_05E0D0: EOR.w SprMiscC, X\n #_05E0D3: STA.w SprMiscC, X\n\n.delay\n #_05E0D6: STZ.w SprXSpeed, X\n #_05E0D9: STZ.w SprYSpeed, X\n\n #_05E0DC: TXA\n #_05E0DD: EOR.b $1A\n\n #_05E0DF: LSR A\n #_05E0E0: LSR A\n #_05E0E1: LSR A\n #_05E0E2: LSR A\n #_05E0E3: LSR A\n\n #_05E0E4: AND.b #$03\n #_05E0E6: STA.b $00\n\n #_05E0E8: AND.b #$01\n #_05E0EA: BNE .skip\n\n #_05E0EC: LDA.b $00\n #_05E0EE: LSR A\n #_05E0EF: ORA.b #$02\n\n #_05E0F1: EOR.w SprMiscC, X\n #_05E0F4: STA.w $0D90, X\n\n #_05E0F7: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_ArguingBros", + "code": "SpriteDraw_ArguingBros:\n #_05E17F: LDA.b #$02\n #_05E181: STA.b $06\n #_05E183: STZ.b $07\n\n #_05E185: LDA.w SprMiscC, X\n #_05E188: ASL A\n #_05E189: ADC.w $0DC0, X\n\n #_05E18C: ASL A\n #_05E18D: ASL A\n #_05E18E: ASL A\n #_05E18F: ASL A\n\n #_05E190: ADC.b #.oam_groups>>0\n #_05E192: STA.b $08\n\n #_05E194: LDA.b #.oam_groups>>8\n #_05E196: ADC.b #$00\n #_05E198: STA.b $09\n\n #_05E19A: JSL SpriteDraw_Tabulated_player_deferred\n #_05E19E: JSL SpriteDraw_Shadow_long\n\n #_05E1A2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_ShowSolicitedMessage", + "code": "Sprite_ShowSolicitedMessage:\n #_05E1A7: STA.w $1CF0\n #_05E1AA: STY.w $1CF1\n\n #_05E1AD: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05E1B1: BCC .fail\n\n #_05E1B3: JSL CheckIfLinkIsBusy\n #_05E1B7: BCS .fail\n\n #_05E1B9: LDA.b $F6\n #_05E1BB: BPL .fail\n\n #_05E1BD: LDA.w $0F10, X\n #_05E1C0: BNE .fail\n\n #_05E1C2: LDA.b $4D\n #_05E1C4: CMP.b #$02\n #_05E1C6: BEQ .fail\n\n #_05E1C8: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05E1CB: PHX\n\n #_05E1CC: TYX\n #_05E1CD: LDA.l .direction, X\n\n #_05E1D1: PLX\n\n #_05E1D2: CMP.b $2F\n #_05E1D4: BNE .fail\n\n #_05E1D6: PHY\n\n #_05E1D7: LDA.w $1CF0\n #_05E1DA: LDY.w $1CF1\n #_05E1DD: JSL Sprite_ShowMessageUnconditional\n\n #_05E1E1: LDA.b #$40\n #_05E1E3: STA.w $0F10, X\n\n #_05E1E6: PLA\n #_05E1E7: EOR.b #$03\n #_05E1E9: SEC\n\n #_05E1EA: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_ShowMessageOnContact", + "code": "Sprite_ShowMessageOnContact:\n #_05E1F0: STA.w $1CF0\n #_05E1F3: STY.w $1CF1\n\n #_05E1F6: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05E1FA: BCC .fail\n\n #_05E1FC: LDA.b $4D\n #_05E1FE: CMP.b #$02\n #_05E200: BEQ .fail\n\n #_05E202: LDA.w $1CF0\n #_05E205: LDY.w $1CF1\n #_05E208: JSL Sprite_ShowMessageUnconditional\n\n #_05E20C: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05E20F: TYA\n #_05E210: EOR.b #$03\n #_05E212: SEC\n\n #_05E213: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_ShowMessageUnconditional", + "code": "Sprite_ShowMessageUnconditional:\n #_05E219: STA.w $1CF0\n #_05E21C: STY.w $1CF1\n\n #_05E21F: STZ.w $0223\n #_05E222: STZ.w $1CD8\n\n #_05E225: LDA.b #$02\n #_05E227: STA.b $11\n\n #_05E229: LDA.b $10\n #_05E22B: STA.w $010C\n\n #_05E22E: LDA.b #$0E\n #_05E230: STA.b $10\n\n #_05E232: PHX\n\n #_05E233: JSL Sprite_CancelHookshot\n\n #_05E237: STZ.b $5E\n\n #_05E239: JSL Link_CancelDash_long\n\n #_05E23D: STZ.b $4D\n #_05E23F: STZ.b $46\n\n #_05E241: LDA.b $5D\n #_05E243: CMP.b #$02 ; LINKSTATE 02\n #_05E245: BNE .exit\n\n #_05E247: LDA.b #$00 ; LINKSTATE 00\n #_05E249: STA.b $5D\n\n.exit\n #_05E24B: PLX\n\n #_05E24C: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_33_RupeePull", + "code": "Sprite_33_RupeePull:\n #_05E24D: PHB\n #_05E24E: PHK\n #_05E24F: PLB\n\n #_05E250: JSR .main\n\n #_05E253: PLB\n\n #_05E254: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_14_ThievesTownGrate", + "code": "Sprite_14_ThievesTownGrate:\n #_05E28C: PHB\n #_05E28D: PHK\n #_05E28E: PLB\n\n #_05E28F: JSR .main\n\n #_05E292: PLB\n\n #_05E293: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_34_YoungSnitch", + "code": "Sprite_34_YoungSnitch:\n #_05E2EA: PHB\n #_05E2EB: PHK\n #_05E2EC: PLB\n\n #_05E2ED: JSR .main\n\n #_05E2F0: PLB\n\n #_05E2F1: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_YoungSnitch", + "code": "SpriteDraw_YoungSnitch:\n #_05E37F: LDA.b #$02\n #_05E381: STA.b $06\n #_05E383: STZ.b $07\n\n #_05E385: LDA.w SprMiscC, X\n #_05E388: ASL A\n #_05E389: ADC.w $0DC0, X\n\n #_05E38C: ASL A\n #_05E38D: ASL A\n #_05E38E: ASL A\n #_05E38F: ASL A\n\n #_05E390: ADC.b #.oam_groups>>0\n #_05E392: STA.b $08\n\n #_05E394: LDA.b #.oam_groups>>8\n #_05E396: ADC.b #$00\n #_05E398: STA.b $09\n\n #_05E39A: JSL SpriteDraw_Tabulated_player_deferred\n #_05E39E: JSL SpriteDraw_Shadow_long\n\n #_05E3A2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_35_Innkeeper", + "code": "Sprite_35_Innkeeper:\n #_05E3A7: PHB\n #_05E3A8: PHK\n #_05E3A9: PLB\n\n #_05E3AA: JSR .main\n\n #_05E3AD: PLB\n\n #_05E3AE: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Innkeeper", + "code": "SpriteDraw_Innkeeper:\n #_05E3DC: LDA.b #$02\n #_05E3DE: STA.b $06\n #_05E3E0: STZ.b $07\n\n #_05E3E2: LDA.b #.oam_groups>>0\n #_05E3E4: STA.b $08\n\n #_05E3E6: LDA.b #.oam_groups>>8\n #_05E3E8: STA.b $09\n\n #_05E3EA: JSL SpriteDraw_Tabulated_player_deferred\n #_05E3EE: JSL SpriteDraw_Shadow_long\n\n #_05E3F2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_36_Witch", + "code": "Sprite_36_Witch:\n #_05E3F3: PHB\n #_05E3F4: PHK\n #_05E3F5: PLB\n\n #_05E3F6: JSR .main\n\n #_05E3F9: PLB\n\n #_05E3FA: RTL", + "file": "bank_05.asm" + }, + { + "name": "Witch_GrantByrna", + "code": "Witch_GrantByrna:\n #_05E453: STZ.w SprAction, X\n\n #_05E456: LDY.b #$18 ; ITEMGET 18\n #_05E458: STZ.w $02E9\n #_05E45B: JSL Link_ReceiveItem\n\n #_05E45F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Witch_DiscussThings", + "code": "Witch_DiscussThings:\n #_05E460: STZ.b $00\n\n #_05E462: LDA.l $7EF344\n #_05E466: CMP.b #$01\n #_05E468: BNE .no_mushroom\n\n #_05E46A: INC.b $00\n\n.no_mushroom\n #_05E46C: LDA.b $00\n #_05E46E: JSL JumpTableLocal\n #_05E472: dw Witch_DiscussMushroom\n #_05E474: dw Witch_YouHaveShroom\n #_05E476: dw Witch_YouHaveShroom\n #_05E478: dw Witch_YouHaveShroom\n #_05E47A: dw Witch_YouHaveShroom\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Witch_DiscussMushroom", + "code": "Witch_DiscussMushroom:\n #_05E47C: LDA.l $7EF344\n #_05E480: CMP.b #$02\n #_05E482: BNE .no_powder\n\n.give_me_shroom\n #_05E484: LDA.b #$4A ; MESSAGE 004A\n #_05E486: LDY.b #$00\n #_05E488: JSL Sprite_ShowSolicitedMessage\n\n #_05E48C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Witch_YouHaveShroom", + "code": "Witch_YouHaveShroom:\n #_05E4A7: LDA.b $F0\n #_05E4A9: AND.b #$40\n #_05E4AB: BEQ .no_y_press\n\n #_05E4AD: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05E4B1: BCC .exit\n\n #_05E4B3: LDA.w $0202\n #_05E4B6: CMP.b #$05\n #_05E4B8: BNE .exit\n\n #_05E4BA: LDA.l $7EF344\n #_05E4BE: CMP.b #$01\n #_05E4C0: BNE .exit\n\n #_05E4C2: JSR Witch_AcceptShroom\n\n.exit\n #_05E4C5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Witch_AcceptShroom", + "code": "Witch_AcceptShroom:\n #_05E4CF: LDA.l $7EF344\n #_05E4D3: CMP.b #$01\n #_05E4D5: BNE .thats_not_the_shroom\n\n #_05E4D7: LDA.b #$00\n #_05E4D9: STA.l $7EF344\n\n #_05E4DD: PHX\n\n #_05E4DE: REP #$10\n\n #_05E4E0: LDX.w #$0212\n\n #_05E4E3: LDA.l $7EF000, X\n #_05E4E7: ORA.b #$80\n #_05E4E9: STA.l $7EF000, X\n\n #_05E4ED: SEP #$30\n\n #_05E4EF: STZ.w $012E\n\n #_05E4F2: JSL RefreshIcon_long\n\n #_05E4F6: PLX\n\n #_05E4F7: LDA.b #$4B ; MESSAGE 004B\n #_05E4F9: LDY.b #$00\n #_05E4FB: JSL Sprite_ShowMessageUnconditional\n\n #_05E4FF: LDA.b #$0D ; SFX1.0D\n #_05E501: JSL SpriteSFX_QueueSFX1WithPan\n\n.thats_not_the_shroom\n #_05E505: STZ.w $0ABF\n\n #_05E508: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Witch", + "code": "SpriteDraw_Witch:\n #_05E55D: JSR Sprite_PrepOAMCoord_Bank05\n #_05E560: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n\n #_05E564: LDA.w $0DC0, X\n #_05E567: STA.b $00\n #_05E569: STZ.b $01\n\n #_05E56B: PHX\n\n #_05E56C: REP #$30\n\n #_05E56E: ASL A\n #_05E56F: ASL A\n #_05E570: ASL A\n #_05E571: AND.w #$00FF\n #_05E574: TAX\n\n #_05E575: LDY.b $90\n #_05E577: LDA.w .oam_groups_stirring+0, X\n #_05E57A: CLC\n #_05E57B: ADC.w $0FA8\n #_05E57E: STA.w $0000, Y\n\n #_05E581: LDA.w .oam_groups_stirring+1, X\n #_05E584: CLC\n #_05E585: ADC.w $0FA9\n #_05E588: STA.w $0001, Y\n\n #_05E58B: LDA.w .oam_groups_stirring+2, X\n #_05E58E: ORA.b $04\n #_05E590: STA.w $0002, Y\n\n #_05E593: LDA.w .oam_groups_stirring+4, X\n #_05E596: CLC\n #_05E597: ADC.w $0FA8\n #_05E59A: STA.w $0004, Y\n\n #_05E59D: LDA.w .oam_groups_stirring+5, X\n #_05E5A0: CLC\n #_05E5A1: ADC.w $0FA9\n #_05E5A4: STA.w $0005, Y\n\n #_05E5A7: LDA.w .oam_groups_stirring+6, X\n #_05E5AA: ORA.b $04\n #_05E5AC: STA.w $0006, Y\n\n; ---------------------------------------------------------\n\n #_05E5AF: LDX.w #$0000\n\n #_05E5B2: LDA.w #$0002\n #_05E5B5: STA.b $0E\n\n.next_body_object\n #_05E5B7: LDA.w .oam_groups_body+0, X\n #_05E5BA: CLC\n #_05E5BB: ADC.w $0FA8\n #_05E5BE: STA.w $0008, Y\n\n #_05E5C1: LDA.w .oam_groups_body+1, X\n #_05E5C4: CLC\n #_05E5C5: ADC.w $0FA9\n #_05E5C8: STA.w $0009, Y\n\n #_05E5CB: LDA.w .oam_groups_body+2, X\n #_05E5CE: EOR.b $04\n #_05E5D0: STA.w $000A, Y\n\n #_05E5D3: INX\n #_05E5D4: INX\n #_05E5D5: INX\n #_05E5D6: INX\n\n #_05E5D7: INY\n #_05E5D8: INY\n #_05E5D9: INY\n #_05E5DA: INY\n\n #_05E5DB: DEC.b $0E\n #_05E5DD: BPL .next_body_object\n\n #_05E5DF: LDA.b $00\n #_05E5E1: SEC\n #_05E5E2: SBC.w #$0003\n #_05E5E5: CMP.w #$0003\n #_05E5E8: BCC .next_cloak_object\n\n #_05E5EA: LDX.w #$0000\n #_05E5ED: BRA .first_cloak_object\n\n; ---------------------------------------------------------\n\n.next_cloak_object\n #_05E5EF: LDX.w #$0004\n\n.first_cloak_object\n #_05E5F2: LDA.w .oam_groups_cloak+0, X\n #_05E5F5: CLC\n #_05E5F6: ADC.w $0FA8\n #_05E5F9: STA.w $0008, Y\n\n #_05E5FC: LDA.w .oam_groups_cloak+1, X\n #_05E5FF: CLC\n #_05E600: ADC.w $0FA9\n #_05E603: STA.w $0009, Y\n\n #_05E606: LDA.w .oam_groups_cloak+2, X\n #_05E609: ORA.b $04\n #_05E60B: STA.w $000A, Y\n\n #_05E60E: LDY.b $92\n\n #_05E610: LDA.w #$0000\n #_05E613: STA.w $0000, Y\n\n #_05E616: LDA.w #$0202\n #_05E619: STA.w $0002, Y\n #_05E61C: STA.w $0004, Y\n\n #_05E61F: SEP #$30\n\n #_05E621: PLX\n\n #_05E622: LDA.b #$05\n #_05E624: LDY.b #$FF\n #_05E626: JSL Sprite_CorrectOAMEntries_long\n\n #_05E62A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_38_EyeStatue", + "code": "Sprite_38_EyeStatue:\n #_05E62B: PHB\n #_05E62C: PHK\n #_05E62D: PLB\n\n #_05E62E: JSR .main\n\n #_05E631: PLB\n\n #_05E632: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Decelerate_X", + "code": "Sprite_Decelerate_X:\n #_05E657: LDA.w SprXSpeed, X\n #_05E65A: BEQ .set_speed\n #_05E65C: BPL .positive\n\n #_05E65E: INC A\n #_05E65F: BRA .set_speed\n\n.positive\n #_05E661: DEC A\n\n.set_speed\n #_05E662: STA.w SprXSpeed, X\n\n #_05E665: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Decelerate_Y", + "code": "Sprite_Decelerate_Y:\n #_05E666: LDA.w SprYSpeed, X\n #_05E669: BEQ .set_speed\n #_05E66B: BPL .positive\n\n #_05E66D: INC A\n #_05E66E: BRA .set_speed\n\n.positive\n #_05E670: DEC A\n\n.set_speed\n #_05E671: STA.w SprYSpeed, X\n\n #_05E674: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Snitch", + "code": "SpritePrep_Snitch:\n #_05E675: PHB\n #_05E676: PHK\n #_05E677: PLB\n\n #_05E678: JSR .main\n\n #_05E67B: PLB\n\n #_05E67C: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_3D_OldSnitch", + "code": "Sprite_3D_OldSnitch:\n #_05E69A: PHB\n #_05E69B: PHK\n #_05E69C: PLB\n\n #_05E69D: JSR .main\n\n #_05E6A0: PLB\n\n #_05E6A1: RTL", + "file": "bank_05.asm" + }, + { + "name": "Snitch_Main", + "code": "Snitch_Main:\n #_05E6BF: JSR Sprite_CheckIfActive_Bank05\n #_05E6C2: LDA.w SprAction, X\n #_05E6C5: CMP.b #$03\n #_05E6C7: BCS .continue\n\n #_05E6C9: LDA.b $1B\n #_05E6CB: BEQ .outdoors\n\n; ---------------------------------------------------------\n\n #_05E6CD: JSL Sprite_TrackBodyToHead\n #_05E6D1: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05E6D4: TYA\n #_05E6D5: EOR.b #$03\n #_05E6D7: STA.w SprMiscE, X\n\n #_05E6DA: LDA.b #$AD ; MESSAGE 00AD\n #_05E6DC: LDY.b #$00\n #_05E6DE: JSL Sprite_ShowSolicitedMessage\n\n #_05E6E2: RTS", + "file": "bank_05.asm" + }, + { + "name": "Snitch_Meander", + "code": "Snitch_Meander:\n #_05E71A: LDA.w SprTimerA, X\n #_05E71D: BNE .dont_turn_around\n\n #_05E71F: LDY.w $0DB0, X\n\n #_05E722: LDA.w $0D90, X\n #_05E725: CLC\n #_05E726: ADC.w .max_displacement_low, Y\n #_05E729: CMP.w SprX, X\n #_05E72C: BNE .dont_turn_around\n\n #_05E72E: LDA.w $0D90, X\n #_05E731: CLC\n #_05E732: ADC.w .max_displacement_low, Y\n\n #_05E735: LDA.w SprMiscA, X\n #_05E738: ADC.w .max_displacement_high, Y\n #_05E73B: CMP.w SprXH, X\n #_05E73E: BNE .dont_turn_around\n\n; ---------------------------------------------------------\n\n #_05E740: LDA.w SprMiscC, X\n #_05E743: EOR.b #$01\n #_05E745: STA.w SprMiscE, X\n\n #_05E748: TAY\n\n #_05E749: LDA.w SnitchSpeedX, Y\n #_05E74C: STA.w SprXSpeed, X\n\n #_05E74F: LDA.w SnitchSpeedY, Y\n #_05E752: STA.w SprYSpeed, X\n\n #_05E755: LDA.w $0DB0, X\n #_05E758: EOR.b #$01\n #_05E75A: STA.w $0DB0, X\n\n; ---------------------------------------------------------\n\n.dont_turn_around\n #_05E75D: TXA\n #_05E75E: EOR.b $1A\n\n #_05E760: LSR A\n #_05E761: LSR A\n #_05E762: LSR A\n #_05E763: LSR A\n\n #_05E764: AND.b #$01\n #_05E766: STA.w $0DC0, X\n\n #_05E769: LDA.w $0F60, X\n #_05E76C: PHA\n\n #_05E76D: LDA.b #$03\n #_05E76F: STA.w $0F60, X\n\n #_05E772: LDA.b #$2F ; MESSAGE 002F\n #_05E774: LDY.b #$00\n #_05E776: JSL Sprite_ShowMessageOnContact\n\n #_05E77A: TAY\n\n #_05E77B: PLA\n #_05E77C: STA.w $0F60, X\n #_05E77F: BCC .exit\n\n #_05E781: TYA\n #_05E782: STA.w SprMiscC, X\n\n #_05E785: JSL Snitch_SpawnGuard\n #_05E789: INC.w SprAction, X\n\n.exit\n #_05E78C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Snitch_FreakOut", + "code": "Snitch_FreakOut:\n #_05E78D: STZ.w SprMiscE, X\n\n #_05E790: LDY.w $0FDE\n\n #_05E793: LDA.w $0B18, Y\n #_05E796: STA.b $00\n\n #_05E798: LDA.w $0B20, Y\n #_05E79B: STA.b $01\n\n #_05E79D: LDA.w SprY, X\n #_05E7A0: STA.b $02\n\n #_05E7A2: LDA.w SprYH, X\n #_05E7A5: STA.b $03\n\n #_05E7A7: REP #$20\n\n #_05E7A9: LDA.b $00\n #_05E7AB: CMP.b $02\n\n #_05E7AD: SEP #$30\n\n #_05E7AF: BCC .not_at_door_yet\n\n; ---------------------------------------------------------\n\n #_05E7B1: INC.w SprAction, X\n\n #_05E7B4: STZ.w SprXSpeed, X\n #_05E7B7: STZ.w SprYSpeed, X\n\n #_05E7BA: LDA.b #$02\n #_05E7BC: STA.w $0F60, X\n\n #_05E7BF: LDA.w $0B08, Y\n #_05E7C2: STA.b $02\n\n #_05E7C4: LDA.w $0B10, Y\n #_05E7C7: STA.b $03\n\n #_05E7C9: PHX\n\n #_05E7CA: REP #$30\n\n #_05E7CC: LDA.b $00\n #_05E7CE: SEC\n #_05E7CF: SBC.w $0708\n #_05E7D2: AND.w $070A\n\n #_05E7D5: ASL A\n #_05E7D6: ASL A\n #_05E7D7: ASL A\n\n #_05E7D8: STA.b $04\n\n #_05E7DA: LDA.b $02\n #_05E7DC: LSR A\n #_05E7DD: LSR A\n #_05E7DE: LSR A\n\n #_05E7DF: SEC\n #_05E7E0: SBC.w $070C\n\n #_05E7E3: AND.w $070E\n #_05E7E6: CLC\n #_05E7E7: ADC.b $04\n #_05E7E9: TAX\n\n #_05E7EA: CLC\n #_05E7EB: JSL Overworld_DrawWoodenDoor\n\n #_05E7EF: PLX\n\n #_05E7F0: LDA.b #$10\n #_05E7F2: STA.w SprTimerA, X\n\n #_05E7F5: RTS", + "file": "bank_05.asm" + }, + { + "name": "Snitch_OpenDoor", + "code": "Snitch_OpenDoor:\n #_05E831: LDA.w SprTimerA, X\n #_05E834: BNE .delay\n\n #_05E836: LDY.w $0FDE\n\n #_05E839: LDA.w $0B18, Y\n #_05E83C: STA.w SprY, X\n #_05E83F: STA.b $00\n\n #_05E841: LDA.w $0B20, Y\n #_05E844: STA.w SprYH, X\n #_05E847: STA.b $01\n\n #_05E849: LDA.w $0B08, Y\n #_05E84C: STA.w SprX, X\n #_05E84F: STA.b $02\n\n #_05E851: LDA.w $0B10, Y\n #_05E854: STA.w SprXH, X\n #_05E857: STA.b $03\n\n #_05E859: PHX\n\n #_05E85A: REP #$30\n\n #_05E85C: LDA.b $00\n #_05E85E: SEC\n #_05E85F: SBC.w $0708\n #_05E862: AND.w $070A\n\n #_05E865: ASL A\n #_05E866: ASL A\n #_05E867: ASL A\n\n #_05E868: STA.b $04\n\n #_05E86A: LDA.b $02\n #_05E86C: LSR A\n #_05E86D: LSR A\n #_05E86E: LSR A\n\n #_05E86F: SEC\n #_05E870: SBC.w $070C\n #_05E873: AND.w $070E\n\n #_05E876: CLC\n #_05E877: ADC.b $04\n #_05E879: TAX\n\n #_05E87A: SEC\n #_05E87B: JSL Overworld_DrawWoodenDoor\n\n #_05E87F: PLX\n\n #_05E880: INC.w SprAction, X\n\n.delay\n #_05E883: JSR Sprite_Move_XY_Bank05\n\n #_05E886: RTS", + "file": "bank_05.asm" + }, + { + "name": "Snitch_SlamDoor", + "code": "Snitch_SlamDoor:\n #_05E887: STZ.w $0DD0, X\n #_05E88A: STZ.w $02E4\n\n #_05E88D: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_RunningBoy", + "code": "SpritePrep_RunningBoy:\n #_05E88E: PHB\n #_05E88F: PHK\n #_05E890: PLB\n\n #_05E891: JSR .main\n\n #_05E894: PLB\n\n #_05E895: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_74_RunningBoy", + "code": "Sprite_74_RunningBoy:\n #_05E8A2: PHB\n #_05E8A3: PHK\n #_05E8A4: PLB\n\n #_05E8A5: JSR .main\n\n #_05E8A8: PLB\n\n #_05E8A9: RTL", + "file": "bank_05.asm" + }, + { + "name": "RunningBoy_Idle", + "code": "RunningBoy_Idle:\n #_05E8F7: JSL Sprite_TrackBodyToHead\n #_05E8FB: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05E8FE: TYA\n #_05E8FF: EOR.b #$03\n #_05E901: STA.w SprMiscE, X\n\n #_05E904: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05E908: BCC .no_contact\n\n #_05E90A: JSL Link_CancelDash_long\n #_05E90E: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05E911: TYA\n #_05E912: EOR.b #$03\n #_05E914: STA.w SprMiscC, X\n\n #_05E917: EOR.b #$01\n #_05E919: ORA.b #$02\n #_05E91B: STA.w SprMiscE, X\n\n #_05E91E: TAY\n\n #_05E91F: AND.b #$01\n #_05E921: INC A\n #_05E922: STA.w SprAction, X\n\n #_05E925: LDA.w .speed_x-2, Y\n #_05E928: STA.w SprXSpeed, X\n\n #_05E92B: LDA.b #$20\n #_05E92D: STA.w SprTimerA, X\n\n #_05E930: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningMan_Running", + "code": "RunningMan_Running:\n #_05E938: LDA.b $1A\n #_05E93A: LSR A\n #_05E93B: LSR A\n #_05E93C: LSR A\n #_05E93D: AND.b #$01\n #_05E93F: STA.w $0DC0, X\n\n #_05E942: JSR Sprite_Move_XY_Bank05\n\n #_05E945: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningBoy_RunLeft", + "code": "RunningBoy_RunLeft:\n #_05E946: LDA.w SprTimerA, X\n #_05E949: BNE RunningMan_Running\n\n #_05E94B: JSR RunningMan_AnimateAndDust\n #_05E94E: JSR RunningMan_RunAway\n\n #_05E951: LDA.w $0D90, X\n #_05E954: BNE RunningMan_TickTimer\n\n #_05E956: LDA.b #$FF\n #_05E958: STA.w $0D90, X\n\n #_05E95B: LDA.b #$02\n #_05E95D: STA.w SprMiscE, X\n\n #_05E960: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningMan_TickTimer", + "code": "RunningMan_TickTimer:\n #_05E961: DEC.w $0D90, X\n\n #_05E964: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningMan_Relax", + "code": "RunningMan_Relax:\n #_05E965: STZ.w SprAction, X\n #_05E968: STZ.w SprDelay, X\n\n #_05E96B: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningBoy_RunRight", + "code": "RunningBoy_RunRight:\n #_05E973: LDA.w SprTimerA, X\n #_05E976: BNE RunningMan_Running\n\n #_05E978: JSR RunningMan_AnimateAndDust\n #_05E97B: JSR RunningMan_RunAway\n\n #_05E97E: LDA.w $0D90, X\n #_05E981: BNE RunningMan_TickTimer\n\n #_05E983: LDY.w SprMiscA, X\n\n #_05E986: INC.w SprMiscA, X\n\n #_05E989: LDA.w .timer, Y\n #_05E98C: STA.w $0D90, X\n\n #_05E98F: LDA.w .direction, Y\n #_05E992: BMI RunningMan_Relax\n\n #_05E994: STA.w SprMiscE, X\n\n #_05E997: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningBoy_Caught", + "code": "RunningBoy_Caught:\n #_05E998: LDA.b #$A6 ; MESSAGE 00A6\n #_05E99A: LDY.b #$00\n #_05E99C: JSL Sprite_ShowMessageUnconditional\n #_05E9A0: BCC .no_talk\n\n #_05E9A2: STA.w SprMiscC, X\n\n.no_talk\n #_05E9A5: LDA.w $0DB0, X\n #_05E9A8: STA.w SprAction, X\n\n #_05E9AB: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningMan_AnimateAndDust", + "code": "RunningMan_AnimateAndDust:\n #_05E9AC: JSL RunningBoy_SpawnDustGarnish\n\n #_05E9B0: LDA.b $1A\n #_05E9B2: LSR A\n #_05E9B3: LSR A\n #_05E9B4: AND.b #$01\n #_05E9B6: STA.w $0DC0, X\n\n #_05E9B9: RTS", + "file": "bank_05.asm" + }, + { + "name": "RunningMan_RunAway", + "code": "RunningMan_RunAway:\n #_05E9BA: LDY.w SprMiscE, X\n\n #_05E9BD: LDA.w RunningBoySpeedX, Y\n #_05E9C0: STA.w SprXSpeed, X\n\n #_05E9C3: LDA.w RunningBoySpeedY, Y\n #_05E9C6: STA.w SprYSpeed, X\n\n #_05E9C9: JSR Sprite_Move_XY_Bank05\n\n #_05E9CC: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_RunningBoy", + "code": "SpriteDraw_RunningBoy:\n #_05EA4D: LDA.b #$02\n #_05EA4F: STA.b $06\n #_05EA51: STZ.b $07\n\n #_05EA53: LDA.w SprMiscC, X\n #_05EA56: ASL A\n #_05EA57: ADC.w $0DC0, X\n\n #_05EA5A: ASL A\n #_05EA5B: ASL A\n #_05EA5C: ASL A\n #_05EA5D: ASL A\n\n #_05EA5E: ADC.b #.oam_groups>>0\n #_05EA60: STA.b $08\n\n #_05EA62: LDA.b #.oam_groups>>8\n #_05EA64: ADC.b #$00\n #_05EA66: STA.b $09\n\n #_05EA68: JSL SpriteDraw_Tabulated_player_deferred\n #_05EA6C: JSL SpriteDraw_Shadow_long\n\n #_05EA70: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_75_BottleMerchant", + "code": "Sprite_75_BottleMerchant:\n #_05EA71: PHB\n #_05EA72: PHK\n #_05EA73: PLB\n\n #_05EA74: JSR .main\n\n #_05EA77: PLB\n\n #_05EA78: RTL", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_OutOfStock", + "code": "BottleVendor_OutOfStock:\n #_05EABE: LDA.b #$D4 ; MESSAGE 00D4\n #_05EAC0: LDY.b #$00\n #_05EAC2: JSL Sprite_ShowSolicitedMessage\n\n #_05EAC6: RTS", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_Idle", + "code": "BottleVendor_Idle:\n #_05EAC7: LDA.w $0D90, X\n #_05EACA: BNE .no_trade\n\n #_05EACC: LDA.w $0E90, X\n #_05EACF: BEQ .no_trade\n\n #_05EAD1: LDA.b #$03\n #_05EAD3: STA.w SprAction, X\n\n #_05EAD6: RTS", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_OfferSale", + "code": "BottleVendor_OfferSale:\n #_05EAED: LDA.w $1CE8\n #_05EAF0: BNE .rejected\n\n #_05EAF2: REP #$20\n\n #_05EAF4: LDA.l $7EF360\n #_05EAF8: CMP.w #$64\n\n #_05EAFB: SEP #$30\n\n #_05EAFD: BCC .rejected\n\n #_05EAFF: LDA.b #$D2 ; MESSAGE 00D2\n #_05EB01: LDY.b #$00\n #_05EB03: JSL Sprite_ShowMessageUnconditional\n\n #_05EB07: INC.w SprAction, X\n\n #_05EB0A: RTS", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_GrantBottle", + "code": "BottleVendor_GrantBottle:\n #_05EB17: LDY.b #$16 ; ITEMGET 16\n\n #_05EB19: STZ.w $02E9\n\n #_05EB1C: PHX\n\n #_05EB1D: JSL Link_ReceiveItem\n\n #_05EB21: PLX\n\n #_05EB22: LDA.l $7EF3C9\n #_05EB26: ORA.b #$02\n #_05EB28: STA.l $7EF3C9\n\n #_05EB2C: REP #$20\n\n #_05EB2E: LDA.l $7EF360\n #_05EB32: SEC\n #_05EB33: SBC.w #100\n #_05EB36: STA.l $7EF360\n\n #_05EB3A: SEP #$30\n\n #_05EB3C: STZ.w SprAction, X\n\n #_05EB3F: RTS", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_BuyingItem", + "code": "BottleVendor_BuyingItem:\n #_05EB40: LDA.w $0E90, X\n #_05EB43: BMI .buying_fish\n\n; ---------------------------------------------------------\n\n.buying_bee\n #_05EB45: LDA.b #$D5 ; MESSAGE 00D5\n #_05EB47: LDY.b #$00\n #_05EB49: JSL Sprite_ShowMessageUnconditional\n\n #_05EB4D: INC.w SprAction, X\n\n #_05EB50: RTS", + "file": "bank_05.asm" + }, + { + "name": "BottleVendor_PayOut", + "code": "BottleVendor_PayOut:\n #_05EB5D: LDY.w $0E90, X\n #_05EB60: BMI .buying_fish\n\n; ---------------------------------------------------------\n\n.buying_bee\n #_05EB62: DEY\n #_05EB63: LDA.b #$00\n #_05EB65: STA.w $0DD0, Y\n\n #_05EB68: JSL BottleMerchant_BuyBee\n\n #_05EB6C: STZ.w $0E90, X\n #_05EB6F: STZ.w SprAction, X\n\n #_05EB72: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BottleMerchant", + "code": "SpriteDraw_BottleMerchant:\n #_05EBA7: LDA.b #$02\n #_05EBA9: STA.b $06\n #_05EBAB: STZ.b $07\n\n #_05EBAD: LDA.w $0DC0, X\n #_05EBB0: ASL A\n #_05EBB1: ASL A\n #_05EBB2: ASL A\n #_05EBB3: ASL A\n\n #_05EBB4: ADC.b #.oam_groups>>0\n #_05EBB6: STA.b $08\n\n #_05EBB8: LDA.b #.oam_groups>>8\n #_05EBBA: ADC.b #$00\n #_05EBBC: STA.b $09\n\n #_05EBBE: JSL SpriteDraw_Tabulated_player_deferred\n #_05EBC2: JSL SpriteDraw_Shadow_long\n\n #_05EBC6: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Zelda", + "code": "SpritePrep_Zelda:\n #_05EBC7: PHB\n #_05EBC8: PHK\n #_05EBC9: PLB\n\n #_05EBCA: JSR .main\n\n #_05EBCD: PLB\n\n #_05EBCE: RTL", + "file": "bank_05.asm" + }, + { + "name": "Priest_SpawnRescuedPrincess", + "code": "Priest_SpawnRescuedPrincess:\n #_05EC4C: LDA.b #$76 ; SPRITE 76\n #_05EC4E: JSL Sprite_SpawnDynamically\n\n #_05EC52: PHX\n\n #_05EC53: LDX.w $02CF\n\n #_05EC56: LDA.w $1A64, X\n #_05EC59: AND.b #$03\n #_05EC5B: STA.w SprMiscE, Y\n #_05EC5E: STA.w SprMiscC, Y\n\n #_05EC61: LDA.b $20\n #_05EC63: STA.w SprY, Y\n\n #_05EC66: LDA.b $21\n #_05EC68: STA.w SprYH, Y\n\n #_05EC6B: LDA.b $22\n #_05EC6D: STA.w SprX, Y\n\n #_05EC70: LDA.b $23\n #_05EC72: STA.w SprXH, Y\n\n #_05EC75: LDA.b #$01\n #_05EC77: STA.w SprDelay, Y\n\n #_05EC7A: LDA.b #$00\n #_05EC7C: STA.l $7EF3CC\n\n #_05EC80: LDA.w $0BA0, Y\n #_05EC83: INC A\n #_05EC84: STA.w $0BA0, Y\n\n #_05EC87: LDA.b #$03\n #_05EC89: STA.w $0F60, Y\n\n #_05EC8C: PLX\n\n #_05EC8D: RTS", + "file": "bank_05.asm" + }, + { + "name": "ZeldaSpeedX", + "code": "ZeldaSpeedX:\n #_05EC8E: db 0, 0, -9, 9\n", + "file": "bank_05.asm" + }, + { + "name": "ZeldaSpeedY", + "code": "ZeldaSpeedY:\n #_05EC92: db -9, 9, 0, 0\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_76_Zelda", + "code": "Sprite_76_Zelda:\n #_05EC96: PHB\n #_05EC97: PHK\n #_05EC98: PLB\n\n #_05EC99: JSR .main\n\n #_05EC9C: PLB\n\n #_05EC9D: RTL", + "file": "bank_05.asm" + }, + { + "name": "Zelda_InCell", + "code": "Zelda_InCell:\n #_05ECBF: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05ECC2: TYA\n #_05ECC3: EOR.b #$03\n #_05ECC5: STA.w SprMiscE, X\n\n #_05ECC8: LDA.w SprAction, X\n #_05ECCB: JSL JumpTableLocal\n #_05ECCF: dw Zelda_WaitingInCell\n #_05ECD1: dw Zelda_ApproachHero\n #_05ECD3: dw Zelda_DebaseAgahnim\n #_05ECD5: dw Zelda_VerifyAttentionSpan\n #_05ECD7: dw Zelda_BecomeFollower\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Zelda_WaitingInCell", + "code": "Zelda_WaitingInCell:\n #_05ECD9: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05ECDD: BCC .exit\n\n #_05ECDF: INC.w SprAction, X\n #_05ECE2: INC.w $02E4\n\n #_05ECE5: LDY.w SprMiscE, X\n\n #_05ECE8: LDA.w ZeldaSpeedX, Y\n #_05ECEB: STA.w SprXSpeed, X\n\n #_05ECEE: LDA.w ZeldaSpeedY, Y\n #_05ECF1: STA.w SprYSpeed, X\n\n #_05ECF4: LDA.b #$10\n #_05ECF6: STA.w SprTimerA, X\n\n.exit\n #_05ECF9: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_ApproachHero", + "code": "Zelda_ApproachHero:\n #_05ECFA: LDA.w SprTimerA, X\n #_05ECFD: BNE .delay\n\n #_05ECFF: INC.w SprAction, X\n\n #_05ED02: LDA.b #$1C ; MESSAGE 001C\n #_05ED04: LDY.b #$00\n #_05ED06: JSL Sprite_ShowMessageUnconditional\n\n #_05ED0A: STZ.w SprXSpeed, X\n #_05ED0D: STZ.w SprYSpeed, X\n\n #_05ED10: LDA.b #$19 ; SONG 19\n #_05ED12: STA.w $012C\n\n.delay\n #_05ED15: LDA.b $1A\n #_05ED17: LSR A\n #_05ED18: LSR A\n #_05ED19: LSR A\n #_05ED1A: AND.b #$01\n #_05ED1C: STA.w $0DC0, X\n\n #_05ED1F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_DebaseAgahnim", + "code": "Zelda_DebaseAgahnim:\n #_05ED20: INC.w SprAction, X\n\n #_05ED23: LDA.b #$25 ; MESSAGE 0025\n #_05ED25: LDY.b #$00\n #_05ED27: JSL Sprite_ShowMessageUnconditional\n\n #_05ED2B: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_VerifyAttentionSpan", + "code": "Zelda_VerifyAttentionSpan:\n #_05ED2C: LDA.w $1CE8\n #_05ED2F: BNE .moron\n\n #_05ED31: LDA.b #$24 ; MESSAGE 0024\n #_05ED33: LDY.b #$00\n #_05ED35: JSL Sprite_ShowMessageUnconditional\n\n #_05ED39: INC.w SprAction, X\n\n #_05ED3C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_BecomeFollower", + "code": "Zelda_BecomeFollower:\n #_05ED43: STZ.w $02E4\n\n #_05ED46: LDA.b #$02\n #_05ED48: STA.l $7EF3C8\n\n #_05ED4C: JSL SaveDeathCount\n\n #_05ED50: LDA.b #$01 ; FOLLOWER 01\n #_05ED52: STA.l $7EF3CC\n\n #_05ED56: PHX\n\n #_05ED57: JSL Underworld_FlagRoomData_Quadrants\n #_05ED5B: JSL Sprite_BecomeFollower\n\n #_05ED5F: PLX\n\n #_05ED60: STZ.w $0DD0, X\n\n #_05ED63: LDA.b #$10 ; SONG 10\n #_05ED65: STA.w $012C\n\n #_05ED68: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_EnteringSanctuary", + "code": "Zelda_EnteringSanctuary:\n #_05ED69: LDA.w SprAction, X\n #_05ED6C: JSL JumpTableLocal\n #_05ED70: dw Zelda_EnterSanctuary\n #_05ED72: dw Zelda_TalkHeadOff\n #_05ED74: dw Zelda_WellWishes\n\n; =========================================================\n\npool Zelda_EnterSanctuary\n\n.timer\n #_05ED76: db 38, 26, 44, 1\n\n.direction\n #_05ED7A: db $01, $03, $01, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "Zelda_EnterSanctuary", + "code": "Zelda_EnterSanctuary:\n #_05ED7E: LDA.w SprTimerA, X\n #_05ED81: BNE .walking\n\n #_05ED83: LDY.w $0D90, X\n #_05ED86: CPY.b #$04\n #_05ED88: BCC .turn\n\n #_05ED8A: INC.w SprAction, X\n\n #_05ED8D: STZ.w SprMiscC, X\n #_05ED90: STZ.w SprMiscE, X\n #_05ED93: STZ.w SprXSpeed, X\n #_05ED96: STZ.w SprYSpeed, X\n\n #_05ED99: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_TalkHeadOff", + "code": "Zelda_TalkHeadOff:\n #_05EDC4: LDA.b #$1D ; MESSAGE 001D\n #_05EDC6: LDY.b #$00\n #_05EDC8: JSL Sprite_ShowMessageUnconditional\n\n #_05EDCC: INC.w SprAction, X\n\n #_05EDCF: LDA.b #$02\n #_05EDD1: STA.l $7FFE01\n\n #_05EDD5: LDA.b #$01\n #_05EDD7: STA.l $7EF3C8\n\n #_05EDDB: JSL SaveDeathCount\n\n #_05EDDF: LDA.b #$02\n #_05EDE1: STA.l $7EF3C5\n\n #_05EDE5: PHX\n\n #_05EDE6: JSL Sprite_LoadGraphicsProperties_light_world_only\n\n #_05EDEA: PLX\n\n #_05EDEB: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_WellWishes", + "code": "Zelda_WellWishes:\n #_05EDEC: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05EDEF: TYA\n #_05EDF0: EOR.b #$03\n #_05EDF2: STA.w SprMiscE, X\n\n #_05EDF5: LDA.b #$1E ; MESSAGE 001E\n #_05EDF7: LDY.b #$00\n #_05EDF9: JSL Sprite_ShowSolicitedMessage\n #_05EDFD: BCC .exit\n\n #_05EDFF: STA.w SprMiscC, X\n #_05EE02: STA.w SprMiscE, X\n\n.exit\n #_05EE05: RTS", + "file": "bank_05.asm" + }, + { + "name": "Zelda_AtSanctuary", + "code": "Zelda_AtSanctuary:\n #_05EE0C: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05EE0F: TYA\n #_05EE10: EOR.b #$03\n #_05EE12: STA.w SprMiscE, X\n\n #_05EE15: LDY.b #$00\n\n #_05EE17: LDA.l $7EF374\n #_05EE1B: AND.b #$07\n #_05EE1D: CMP.b #$07\n #_05EE1F: BNE .missing_pendants\n\n #_05EE21: LDY.b #$02\n #_05EE23: BRA .set_message\n\n.missing_pendants\n #_05EE25: LDA.l $7EF3C7\n #_05EE29: CMP.b #$03\n #_05EE2B: BCC .set_message\n\n #_05EE2D: LDY.b #$01\n\n.set_message\n #_05EE2F: LDA.w .message_low, Y\n #_05EE32: XBA\n\n #_05EE33: LDA.w .message_high, Y\n #_05EE36: TAY\n\n #_05EE37: XBA\n #_05EE38: JSL Sprite_ShowSolicitedMessage\n #_05EE3C: BCC .exit\n\n #_05EE3E: STA.w SprMiscC, X\n #_05EE41: STA.w SprMiscE, X\n\n #_05EE44: LDA.b #$A0\n #_05EE46: STA.l $7EF372\n\n.exit\n #_05EE4A: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_Mushroom", + "code": "SpritePrep_Mushroom:\n #_05EE4B: PHB\n #_05EE4C: PHK\n #_05EE4D: PLB\n\n #_05EE4E: JSR .main\n\n #_05EE51: PLB\n\n #_05EE52: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_E7_Mushroom", + "code": "Sprite_E7_Mushroom:\n #_05EE70: PHB\n #_05EE71: PHK\n #_05EE72: PLB\n\n #_05EE73: JSR .main\n\n #_05EE76: PLB\n\n #_05EE77: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_FakeMasterSword", + "code": "SpritePrep_FakeMasterSword:\n #_05EEA6: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_E8_FakeMasterSword", + "code": "Sprite_E8_FakeMasterSword:\n #_05EEA7: PHB\n #_05EEA8: PHK\n #_05EEA9: PLB\n\n #_05EEAA: JSR .main\n\n #_05EEAD: PLB\n\n #_05EEAE: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_FakeMasterSword", + "code": "SpriteDraw_FakeMasterSword:\n #_05EEE6: LDA.b #$02\n #_05EEE8: STA.b $06\n #_05EEEA: STZ.b $07\n\n #_05EEEC: LDA.b #.oam_groups>>0\n #_05EEEE: STA.b $08\n\n #_05EEF0: LDA.b #.oam_groups>>8\n #_05EEF2: STA.b $09\n\n #_05EEF4: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05EEF8: RTS", + "file": "bank_05.asm" + }, + { + "name": "HeartPieceMessage", + "code": "HeartPieceMessage:\n.low\n #_05EEF9: db $58 ; MESSAGE 0158\n #_05EEFA: db $55 ; MESSAGE 0155\n #_05EEFB: db $56 ; MESSAGE 0156\n #_05EEFC: db $57 ; MESSAGE 0157\n\n.high\n #_05EEFD: db $01\n #_05EEFE: db $01\n #_05EEFF: db $01\n #_05EF00: db $01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_HeartContainer", + "code": "SpritePrep_HeartContainer:\n #_05EF01: PHB\n #_05EF02: PHK\n #_05EF03: PLB\n\n #_05EF04: JSR .main\n\n #_05EF07: PLB\n\n #_05EF08: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_EA_HeartContainer", + "code": "Sprite_EA_HeartContainer:\n #_05EF3F: PHB\n #_05EF40: PHK\n #_05EF41: PLB\n\n #_05EF42: JSR .main\n\n #_05EF45: PLB\n\n #_05EF46: RTL", + "file": "bank_05.asm" + }, + { + "name": "HeartSetFlagOverworld", + "code": "HeartSetFlagOverworld:\n #_05EFF7: PHX\n\n #_05EFF8: LDX.b $8A\n\n #_05EFFA: LDA.l $7EF280, X\n #_05EFFE: ORA.b #$40\n #_05F000: STA.l $7EF280, X\n\n #_05F004: PLX\n\n #_05F005: RTS", + "file": "bank_05.asm" + }, + { + "name": "HeartRoomFlags", + "code": "HeartRoomFlags:\n #_05F006: db $40, $20\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "HeartSetFlagUnderWorld", + "code": "HeartSetFlagUnderWorld:\n #_05F008: LDA.w SprXH, X\n #_05F00B: AND.b #$01\n #_05F00D: TAY\n\n #_05F00E: LDA.w $0403\n #_05F011: ORA.w HeartRoomFlags, Y\n #_05F014: STA.w $0403\n\n #_05F017: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_EB_HeartPiece", + "code": "Sprite_EB_HeartPiece:\n #_05F018: PHB\n #_05F019: PHK\n #_05F01A: PLB\n\n #_05F01B: JSR .main\n\n #_05F01E: PLB\n\n #_05F01F: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_16_Elder", + "code": "Sprite_16_Elder:\n #_05F0CD: PHB\n #_05F0CE: PHK\n #_05F0CF: PLB\n\n #_05F0D0: JSR .main\n\n #_05F0D3: PLB\n\n #_05F0D4: RTL", + "file": "bank_05.asm" + }, + { + "name": "Aginah", + "code": "Aginah:\n #_05F0EA: LDA.l $7EF3C6\n #_05F0EE: AND.b #$20\n #_05F0F0: BEQ .first_message\n\n; ---------------------------------------------------------\n\n #_05F0F2: LDA.l $7EF359\n #_05F0F6: CMP.b #$02\n #_05F0F8: BCC .weak_sword\n\n #_05F0FA: LDA.b #$28 ; MESSAGE 0128\n #_05F0FC: LDY.b #$01\n #_05F0FE: JSL Sprite_ShowSolicitedMessage\n\n #_05F102: BRA .continue\n\n; ---------------------------------------------------------\n\n.weak_sword\n #_05F104: LDA.l $7EF374\n #_05F108: AND.b #$07\n #_05F10A: CMP.b #$07\n #_05F10C: BNE .missing_pendants\n\n #_05F10E: LDA.b #$26 ; MESSAGE 0126\n #_05F110: LDY.b #$01\n #_05F112: JSL Sprite_ShowSolicitedMessage\n\n #_05F116: BRA .continue\n\n; ---------------------------------------------------------\n\n.missing_pendants\n #_05F118: AND.b #$02\n #_05F11A: CMP.b #$02\n #_05F11C: BNE .missing_blue_pendant\n\n #_05F11E: LDA.b #$29 ; MESSAGE 0129\n #_05F120: LDY.b #$01\n #_05F122: JSL Sprite_ShowSolicitedMessage\n\n #_05F126: BRA .continue\n\n; ---------------------------------------------------------\n\n.missing_blue_pendant\n #_05F128: LDA.l $7EF34E\n #_05F12C: BEQ .first_message\n\n #_05F12E: LDA.b #$27 ; MESSAGE 0127\n #_05F130: LDY.b #$01\n #_05F132: JSL Sprite_ShowSolicitedMessage\n\n #_05F136: BRA .continue\n\n; ---------------------------------------------------------\n\n.first_message\n #_05F138: LDA.b #$25 ; MESSAGE 0125\n #_05F13A: LDY.b #$01\n #_05F13C: JSL Sprite_ShowSolicitedMessage\n\n #_05F140: LDA.l $7EF3C6\n #_05F144: ORA.b #$20\n #_05F146: STA.l $7EF3C6\n\n.continue\n #_05F14A: JMP.w Elder_Animate\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sahasrahla", + "code": "Sahasrahla:\n #_05F14D: LDA.w SprAction, X\n #_05F150: JSL JumpTableLocal\n #_05F154: dw Sasha_Idle\n #_05F156: dw Sasha_GiveQuest\n #_05F158: dw Sasha_GiveBoots\n #_05F15A: dw Sasha_PromoteIceRod\n\n; =========================================================\n\npool Sasha_Idle\n\n.message_low\n #_05F15C: db $39 ; MESSAGE 0039\n #_05F15D: db $38 ; MESSAGE 0038\n\n.message_high\n #_05F15E: db $00\n #_05F15F: db $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "Sasha_Idle", + "code": "Sasha_Idle:\n #_05F160: LDA.l $7EF374\n #_05F164: AND.b #$04\n #_05F166: BNE .green_pendant_obtained\n\n #_05F168: LDA.b #$32 ; MESSAGE 0032\n #_05F16A: LDY.b #$00\n #_05F16C: JSL Sprite_ShowSolicitedMessage\n #_05F170: BCC .no_talk\n\n #_05F172: INC.w SprAction, X\n\n.no_talk\n #_05F175: BRA Elder_Animate\n\n; ---------------------------------------------------------\n\n.green_pendant_obtained\n #_05F177: LDA.l $7EF355\n #_05F17B: BNE .boots_obtained\n\n #_05F17D: LDA.l $7EF3C7\n #_05F181: CMP.b #$03\n #_05F183: ROL A\n #_05F184: AND.b #$01\n #_05F186: TAY\n\n #_05F187: LDA.w .message_low, Y\n #_05F18A: XBA\n\n #_05F18B: LDA.w .message_high, Y\n #_05F18E: TAY\n\n #_05F18F: XBA\n #_05F190: JSL Sprite_ShowSolicitedMessage\n #_05F194: BCC .no_speak\n\n #_05F196: INC.w SprAction, X\n #_05F199: INC.w SprAction, X\n\n.no_speak\n #_05F19C: BRA Elder_Animate\n\n; ---------------------------------------------------------\n\n.boots_obtained\n #_05F19E: LDA.l $7EF346\n #_05F1A2: BNE .have_ice_rod\n\n #_05F1A4: LDA.b #$37 ; MESSAGE 0037\n #_05F1A6: LDY.b #$00\n #_05F1A8: JSL Sprite_ShowSolicitedMessage\n\n #_05F1AC: BRA Elder_Animate\n\n; ---------------------------------------------------------\n\n.have_ice_rod\n #_05F1AE: LDA.l $7EF374\n #_05F1B2: AND.b #$07\n #_05F1B4: CMP.b #$07\n #_05F1B6: BEQ .have_every_pendant\n\n #_05F1B8: LDA.b #$34 ; MESSAGE 0034\n #_05F1BA: LDY.b #$00\n #_05F1BC: JSL Sprite_ShowSolicitedMessage\n\n #_05F1C0: BRA Elder_Animate\n\n; ---------------------------------------------------------\n\n.have_every_pendant\n #_05F1C2: LDA.l $7EF359\n #_05F1C6: CMP.b #$02\n #_05F1C8: BCS .have_mastersword\n\n #_05F1CA: LDA.b #$30 ; MESSAGE 0030\n #_05F1CC: LDY.b #$00\n #_05F1CE: JSL Sprite_ShowSolicitedMessage\n\n #_05F1D2: BRA Elder_Animate\n\n; ---------------------------------------------------------\n\n.have_mastersword\n #_05F1D4: LDA.b #$31 ; MESSAGE 0031\n #_05F1D6: LDY.b #$00\n #_05F1D8: JSL Sprite_ShowSolicitedMessage\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Elder_Animate", + "code": "Elder_Animate:\n #_05F1DC: LDA.b $1A\n\n #_05F1DE: LSR A\n #_05F1DF: LSR A\n #_05F1E0: LSR A\n #_05F1E1: LSR A\n #_05F1E2: LSR A\n\n #_05F1E3: AND.b #$01\n #_05F1E5: STA.w $0DC0, X\n\n #_05F1E8: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sasha_GiveQuest", + "code": "Sasha_GiveQuest:\n #_05F1E9: LDA.b #$33 ; MESSAGE 0033\n #_05F1EB: LDY.b #$00\n #_05F1ED: JSL Sprite_ShowMessageUnconditional\n\n #_05F1F1: STZ.w SprAction, X\n\n #_05F1F4: LDA.b #$03\n #_05F1F6: STA.l $7EF3C7\n\n #_05F1FA: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sasha_GiveBoots", + "code": "Sasha_GiveBoots:\n #_05F1FB: LDY.b #$4B ; ITEMGET 4B\n #_05F1FD: STZ.w $02E9\n #_05F200: JSL Link_ReceiveItem\n\n #_05F204: INC.w SprAction, X\n\n #_05F207: LDA.b #$03\n #_05F209: STA.l $7EF3C7\n\n #_05F20D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sasha_PromoteIceRod", + "code": "Sasha_PromoteIceRod:\n #_05F20E: LDA.b #$37 ; MESSAGE 0037\n #_05F210: LDY.b #$00\n #_05F212: JSL Sprite_ShowMessageUnconditional\n\n #_05F216: STZ.w SprAction, X\n\n #_05F219: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Elder", + "code": "SpriteDraw_Elder:\n #_05F23A: LDA.b #$02\n #_05F23C: STA.b $06\n #_05F23E: STZ.b $07\n\n #_05F240: LDA.w $0DC0, X\n\n #_05F243: ASL A\n #_05F244: ASL A\n #_05F245: ASL A\n #_05F246: ASL A\n\n #_05F247: ADC.b #.oam_groups>>0\n #_05F249: STA.b $08\n\n #_05F24B: LDA.b #.oam_groups>>8\n #_05F24D: ADC.b #$00\n #_05F24F: STA.b $09\n\n #_05F251: JSL SpriteDraw_Tabulated_player_deferred\n #_05F255: JSL SpriteDraw_Shadow_long\n\n #_05F259: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_MedallionTablet", + "code": "SpritePrep_MedallionTablet:\n #_05F25A: PHB\n #_05F25B: PHK\n #_05F25C: PLB\n\n #_05F25D: JSR .main\n\n #_05F260: PLB\n\n #_05F261: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_F2_MedallionTablet", + "code": "Sprite_F2_MedallionTablet:\n #_05F296: PHB\n #_05F297: PHK\n #_05F298: PLB\n\n #_05F299: JSR .main\n\n #_05F29C: PLB\n\n #_05F29D: RTL", + "file": "bank_05.asm" + }, + { + "name": "DustCloud", + "code": "DustCloud:\n #_05F2B2: JSL SpriteDraw_MedallionTabletDebris\n #_05F2B6: JSR Sprite_CheckIfActive_Bank05\n\n #_05F2B9: LDA.w SprTimerA, X\n #_05F2BC: BNE .exit\n\n #_05F2BE: LDA.b #$05\n #_05F2C0: STA.w SprTimerA, X\n\n #_05F2C3: LDY.w $0D90, X\n\n #_05F2C6: LDA.w .anim_step, Y\n #_05F2C9: BPL .still_animating\n\n #_05F2CB: STZ.w $0DD0, X\n\n #_05F2CE: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_SpawnDustCloud", + "code": "Sprite_SpawnDustCloud:\n #_05F2D6: LDA.b #$F2 ; SPRITE F2\n #_05F2D8: JSL Sprite_SpawnDynamically\n #_05F2DC: BMI .exit\n\n #_05F2DE: JSL GetRandomNumber\n #_05F2E2: STA.b $0F\n\n #_05F2E4: JSL GetRandomNumber\n\n #_05F2E8: REP #$20\n\n #_05F2EA: AND.w #$000F\n\n #_05F2ED: SEC\n #_05F2EE: SBC.w #$0008\n\n #_05F2F1: CLC\n #_05F2F2: ADC.b $00\n #_05F2F4: STA.b $00\n\n #_05F2F6: LDA.b $0F\n #_05F2F8: AND.w #$000F\n\n #_05F2FB: CLC\n #_05F2FC: ADC.b $02\n #_05F2FE: STA.b $02\n\n #_05F300: SEP #$30\n\n #_05F302: JSL Sprite_SetSpawnedCoordinates\n\n #_05F306: LDA.b #$01\n #_05F308: STA.w SprDelay, Y\n\n.exit\n #_05F30B: RTS", + "file": "bank_05.asm" + }, + { + "name": "MedallionTablet_Main", + "code": "MedallionTablet_Main:\n #_05F30C: JSL SpriteDraw_MedallionTablet\n #_05F310: JSR Sprite_CheckIfActive_Bank05\n\n #_05F313: LDA.w $037A\n #_05F316: AND.b #$DF\n #_05F318: STA.w $037A\n\n #_05F31B: STZ.w $0D90, X\n\n #_05F31E: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05F322: BCC .no_contact\n\n #_05F324: JSL Sprite_CancelHookshot\n\n #_05F328: STZ.b $5E\n\n #_05F32A: JSL Sprite_RepelDash_long\n\n #_05F32E: INC.w $0D90, X\n\n.no_contact\n #_05F331: JSL CheckIfLinkIsBusy\n #_05F335: BCC .continue\n\n #_05F337: RTS", + "file": "bank_05.asm" + }, + { + "name": "EtherMessage", + "code": "EtherMessage:\n.low\n #_05F347: db $0D ; MESSAGE 010D\n #_05F348: db $0E ; MESSAGE 010E\n\n.high\n #_05F349: db $01\n #_05F34A: db $01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BombosMessage", + "code": "BombosMessage:\n.low\n #_05F34B: db $0D ; MESSAGE 010D\n #_05F34C: db $0F ; MESSAGE 010F\n\n.high\n #_05F34D: db $01\n #_05F34E: db $01\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MedallionTablet_WaitingToBeRead", + "code": "MedallionTablet_WaitingToBeRead:\n #_05F34F: LDA.b $8A\n #_05F351: CMP.b #$03 ; OW 03\n #_05F353: BEQ EtherTablet\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BombosTablet", + "code": "BombosTablet:\n #_05F355: LDA.b $2F\n #_05F357: BNE .exit\n\n #_05F359: JSR Sprite_DirectionToFaceLink_Bank05\n\n #_05F35C: CPY.b #$02\n #_05F35E: BNE .exit\n\n #_05F360: REP #$20\n\n #_05F362: LDA.w $0FDA\n #_05F365: CLC\n #_05F366: ADC.w #$0010\n #_05F369: CMP.b $20\n\n #_05F36B: SEP #$30\n #_05F36D: BCC .exit\n\n #_05F36F: LDA.b $F4\n #_05F371: BPL .check_for_book\n\n #_05F373: LDA.l $7EF359\n #_05F377: CMP.b #$02\n #_05F379: BNE .check_for_book\n\n #_05F37B: RTS", + "file": "bank_05.asm" + }, + { + "name": "EtherTablet", + "code": "EtherTablet:\n #_05F3C4: LDA.b $2F\n #_05F3C6: BNE .exit\n\n #_05F3C8: JSR Sprite_DirectionToFaceLink_Bank05\n #_05F3CB: CPY.b #$02\n #_05F3CD: BNE .exit\n\n #_05F3CF: LDA.w SprY, X\n #_05F3D2: CLC\n #_05F3D3: ADC.b #$10\n #_05F3D5: CMP.b $20\n #_05F3D7: BCC .exit\n\n #_05F3D9: LDA.b $F4\n #_05F3DB: BPL .check_book\n\n #_05F3DD: LDA.l $7EF359\n #_05F3E1: CMP.b #$02\n #_05F3E3: BNE .check_book\n\n #_05F3E5: RTS", + "file": "bank_05.asm" + }, + { + "name": "MedallionTablet_WasteTime", + "code": "MedallionTablet_WasteTime:\n #_05F42E: LDA.w SprTimerA, X\n #_05F431: BNE .exit\n\n #_05F433: INC.w SprAction, X\n\n #_05F436: LDA.b #$80\n #_05F438: STA.w SprTimerA, X\n\n.exit\n #_05F43B: RTS", + "file": "bank_05.asm" + }, + { + "name": "MedallionTablet_Crumble", + "code": "MedallionTablet_Crumble:\n #_05F43C: LDA.w SprTimerA, X\n #_05F43F: BNE .delay\n\n #_05F441: INC.w SprAction, X\n\n #_05F444: LDA.b #$F0\n #_05F446: STA.w SprTimerA, X\n\n #_05F449: RTS", + "file": "bank_05.asm" + }, + { + "name": "MedallionTablet_AmCrumbled", + "code": "MedallionTablet_AmCrumbled:\n #_05F463: LDA.b #$04\n #_05F465: STA.w $0DC0, X\n\n #_05F468: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_78_MrsSahasrahla", + "code": "Sprite_78_MrsSahasrahla:\n #_05F469: PHB\n #_05F46A: PHK\n #_05F46B: PLB\n\n #_05F46C: JSR .main\n\n #_05F46F: PLB\n\n #_05F470: RTL", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_Idle", + "code": "MrsSahasrahla_Idle:\n #_05F48A: LDA.l $7EF359\n #_05F48E: CMP.b #$02\n #_05F490: BCS MrsSahasrahla_DiscussMasterSword\n\n #_05F492: LDA.b #$2B ; MESSAGE 002B\n #_05F494: LDY.b #$00\n #_05F496: JSL Sprite_ShowSolicitedMessage\n #_05F49A: BCC MrsSahasrahla_Animate\n\n #_05F49C: INC.w SprAction, X\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_Animate", + "code": "MrsSahasrahla_Animate:\n #_05F49F: LDA.b $1A\n #_05F4A1: LSR A\n #_05F4A2: LSR A\n #_05F4A3: LSR A\n #_05F4A4: LSR A\n #_05F4A5: AND.b #$01\n #_05F4A7: STA.w $0DC0, X\n\n #_05F4AA: RTS", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_DiscussMasterSword", + "code": "MrsSahasrahla_DiscussMasterSword:\n #_05F4AB: LDA.b #$2E ; MESSAGE 002E\n #_05F4AD: LDY.b #$00\n #_05F4AF: JSL Sprite_ShowSolicitedMessage\n\n #_05F4B3: BRA MrsSahasrahla_Animate\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_BabbleOn", + "code": "MrsSahasrahla_BabbleOn:\n #_05F4B5: LDA.b #$2C ; MESSAGE 002C\n #_05F4B7: LDY.b #$00\n #_05F4B9: JSL Sprite_ShowMessageUnconditional\n\n #_05F4BD: INC.w SprAction, X\n\n #_05F4C0: RTS", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_QuestionSanity", + "code": "MrsSahasrahla_QuestionSanity:\n #_05F4C1: LDA.w $1CE8\n #_05F4C4: BNE .confirm_insanity\n\n #_05F4C6: INC.w SprAction, X\n\n #_05F4C9: LDA.b #$2D ; MESSAGE 002D\n #_05F4CB: LDY.b #$00\n #_05F4CD: JSL Sprite_ShowMessageUnconditional\n\n #_05F4D1: RTS", + "file": "bank_05.asm" + }, + { + "name": "MrsSahasrahla_FindMyHubby", + "code": "MrsSahasrahla_FindMyHubby:\n #_05F4DB: LDA.b #$2D ; MESSAGE 002D\n #_05F4DD: LDY.b #$00\n #_05F4DF: JSL Sprite_ShowSolicitedMessage\n\n #_05F4E3: BRA MrsSahasrahla_Animate\n\n; =========================================================\n\npool SpriteDraw_MrsSahasrahla\n\n.oam_groups\n #_05F4E5: dw 0, -5 : db $8E, $00, $00, $02\n #_05F4ED: dw 0, 5 : db $28, $00, $00, $02\n\n #_05F4F5: dw 0, -4 : db $8E, $00, $00, $02\n #_05F4FD: dw 0, 5 : db $28, $40, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_MrsSahasrahla", + "code": "SpriteDraw_MrsSahasrahla:\n #_05F505: LDA.b #$02\n #_05F507: STA.b $06\n #_05F509: STZ.b $07\n\n #_05F50B: LDA.w $0DC0, X\n #_05F50E: ASL A\n #_05F50F: ASL A\n #_05F510: ASL A\n #_05F511: ASL A\n\n #_05F512: ADC.b #.oam_groups>>0\n #_05F514: STA.b $08\n\n #_05F516: LDA.b #.oam_groups>>8\n #_05F518: ADC.b #$00\n #_05F51A: STA.b $09\n\n #_05F51C: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05F520: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpritePrep_MagicShopAssistant", + "code": "SpritePrep_MagicShopAssistant:\n #_05F521: PHB\n #_05F522: PHK\n #_05F523: PLB\n\n #_05F524: JSR .main\n\n #_05F527: PLB\n\n #_05F528: RTL", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_SpawnPowder", + "code": "MagicShopAssistant_SpawnPowder:\n #_05F539: LDA.w $0ABF\n #_05F53C: BEQ .exit\n\n #_05F53E: LDA.l $7EF344\n #_05F542: CMP.b #$02\n #_05F544: BEQ .exit\n\n #_05F546: PHX\n\n #_05F547: STZ.b $00\n\n #_05F549: REP #$10\n\n #_05F54B: LDX.w #$0212\n\n #_05F54E: LDA.l $7EF000, X\n #_05F552: AND.b #$80\n #_05F554: STA.b $00\n\n #_05F556: SEP #$30\n\n #_05F558: PLX\n\n #_05F559: LDA.b $00\n #_05F55B: BEQ .exit\n\n #_05F55D: LDA.b #$E9 ; SPRITE E9\n #_05F55F: JSL Sprite_SpawnDynamically\n\n #_05F563: LDA.b #$01\n #_05F565: STA.w SprDelay, Y\n\n #_05F568: LDA.w SprY, X\n #_05F56B: SEC\n #_05F56C: SBC.b #$00\n #_05F56E: STA.w SprY, Y\n\n #_05F571: LDA.w SprYH, X\n #_05F574: SBC.b #$00\n #_05F576: STA.w SprYH, Y\n\n #_05F579: LDA.w SprX, X\n #_05F57C: SEC\n #_05F57D: SBC.b #$10\n #_05F57F: STA.w SprX, Y\n\n #_05F582: LDA.w SprXH, X\n #_05F585: SBC.b #$00\n #_05F587: STA.w SprXH, Y\n\n #_05F58A: JMP.w MagicShopAssistant_SpawnObject\n\n.exit\n #_05F58D: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_SpawnGreenCauldron", + "code": "MagicShopAssistant_SpawnGreenCauldron:\n #_05F58E: LDA.b #$E9 ; SPRITE E9\n #_05F590: JSL Sprite_SpawnDynamically\n\n #_05F594: LDA.b #$02\n #_05F596: STA.w SprDelay, Y\n\n #_05F599: LDA.w SprY, X\n #_05F59C: SEC\n #_05F59D: SBC.b #$48\n #_05F59F: STA.w SprY, Y\n\n #_05F5A2: LDA.w SprYH, X\n #_05F5A5: SBC.b #$00\n #_05F5A7: STA.w SprYH, Y\n\n #_05F5AA: LDA.w SprX, X\n #_05F5AD: SEC\n #_05F5AE: SBC.b #$28\n #_05F5B0: STA.w SprX, Y\n\n #_05F5B3: LDA.w SprXH, X\n #_05F5B6: SBC.b #$00\n #_05F5B8: STA.w SprXH, Y\n\n #_05F5BB: JMP.w MagicShopAssistant_SpawnObject\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05F5BE", + "code": "UNREACHABLE_05F5BE:\n #_05F5BE: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_SpawnBlueCauldron", + "code": "MagicShopAssistant_SpawnBlueCauldron:\n #_05F5BF: LDA.b #$E9 ; SPRITE E9\n #_05F5C1: JSL Sprite_SpawnDynamically\n\n #_05F5C5: LDA.b #$03\n #_05F5C7: STA.w SprDelay, Y\n\n #_05F5CA: LDA.w SprY, X\n #_05F5CD: SEC\n #_05F5CE: SBC.b #$48\n #_05F5D0: STA.w SprY, Y\n\n #_05F5D3: LDA.w SprYH, X\n #_05F5D6: SBC.b #$00\n #_05F5D8: STA.w SprYH, Y\n\n #_05F5DB: LDA.w SprX, X\n #_05F5DE: CLC\n #_05F5DF: ADC.b #$08\n #_05F5E1: STA.w SprX, Y\n\n #_05F5E4: LDA.w SprXH, X\n #_05F5E7: ADC.b #$00\n #_05F5E9: STA.w SprXH, Y\n\n #_05F5EC: JMP.w MagicShopAssistant_SpawnObject\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "UNREACHABLE_05F5EF", + "code": "UNREACHABLE_05F5EF:\n #_05F5EF: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_SpawnRedCauldron", + "code": "MagicShopAssistant_SpawnRedCauldron:\n #_05F5F0: LDA.b #$E9 ; SPRITE E9\n #_05F5F2: JSL Sprite_SpawnDynamically\n\n #_05F5F6: LDA.b #$04\n #_05F5F8: STA.w SprDelay, Y\n\n #_05F5FB: LDA.w SprY, X\n #_05F5FE: SEC\n #_05F5FF: SBC.b #$48\n #_05F601: STA.w SprY, Y\n\n #_05F604: LDA.w SprYH, X\n #_05F607: SBC.b #$00\n #_05F609: STA.w SprYH, Y\n\n #_05F60C: LDA.w SprX, X\n #_05F60F: SEC\n #_05F610: SBC.b #$58\n #_05F612: STA.w SprX, Y\n\n #_05F615: LDA.w SprXH, X\n #_05F618: SBC.b #$00\n #_05F61A: STA.w SprXH, Y\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_SpawnObject", + "code": "MagicShopAssistant_SpawnObject:\n #_05F61D: LDA.b #$03\n #_05F61F: STA.w $0F60, Y\n\n #_05F622: LDA.w $0CAA, Y\n #_05F625: ORA.b #$20\n #_05F627: STA.w $0CAA, Y\n\n #_05F62A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_E9_MagicShopAssistant", + "code": "Sprite_E9_MagicShopAssistant:\n #_05F62B: PHB\n #_05F62C: PHK\n #_05F62D: PLB\n\n #_05F62E: JSR .main\n\n #_05F631: PLB\n\n #_05F632: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_BagOfPowder", + "code": "Sprite_BagOfPowder:\n #_05F644: JSR SpriteDraw_BagOfPowder\n #_05F647: JSR Sprite_CheckIfActive_Bank05\n\n #_05F64A: JSL Sprite_BehaveAsBarrier\n #_05F64E: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05F652: BCC .exit\n\n #_05F654: LDA.b $F6\n #_05F656: BPL .exit\n\n #_05F658: PHX\n\n #_05F659: JSL Link_CancelDash_long\n\n #_05F65D: LDY.b #$0D ; ITEMGET 0D\n #_05F65F: STZ.w $02E9\n #_05F662: JSL Link_ReceiveItem\n\n #_05F666: PLX\n #_05F667: STZ.w $0DD0, X\n\n.exit\n #_05F66A: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BagOfPowder", + "code": "SpriteDraw_BagOfPowder:\n #_05F67B: LDA.b #$02\n #_05F67D: STA.b $06\n #_05F67F: STZ.b $07\n\n #_05F681: LDA.b #.oam_groups>>0\n #_05F683: STA.b $08\n\n #_05F685: LDA.b #.oam_groups>>8\n #_05F687: STA.b $09\n\n #_05F689: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05F68D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_GreenCauldron", + "code": "Sprite_GreenCauldron:\n #_05F68E: JSR SpriteDraw_GreenCauldron\n #_05F691: JSR Sprite_CheckIfActive_Bank05\n #_05F694: JSL Sprite_BehaveAsBarrier\n\n #_05F698: LDA.w SprTimerA, X\n #_05F69B: BNE .exit_a\n\n #_05F69D: JSR PotionCauldron_CheckBottles\n #_05F6A0: BCS .have_bottles\n\n #_05F6A2: LDA.b #$4F ; MESSAGE 004F\n #_05F6A4: LDY.b #$00\n #_05F6A6: JSL Sprite_ShowMessageOnContact\n #_05F6AA: BCC .exit_a\n\n #_05F6AC: JSR PotionCauldron_GoBeep\n\n.exit_a\n #_05F6AF: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_GreenCauldron", + "code": "SpriteDraw_GreenCauldron:\n #_05F718: LDA.b #$03\n #_05F71A: STA.b $06\n #_05F71C: STZ.b $07\n\n #_05F71E: LDA.b #.oam_groups>>0\n #_05F720: STA.b $08\n\n #_05F722: LDA.b #.oam_groups>>8\n #_05F724: STA.b $09\n\n #_05F726: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05F72A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_BlueCauldron", + "code": "Sprite_BlueCauldron:\n #_05F72B: JSR SpriteDraw_BlueCauldron\n #_05F72E: JSR Sprite_CheckIfActive_Bank05\n #_05F731: JSL Sprite_BehaveAsBarrier\n\n #_05F735: LDA.w SprTimerA, X\n #_05F738: BNE .exit_a\n\n #_05F73A: JSR PotionCauldron_CheckBottles\n #_05F73D: BCS .have_bottles\n\n #_05F73F: LDA.b #$4F ; MESSAGE 004F\n #_05F741: LDY.b #$00\n #_05F743: JSL Sprite_ShowMessageOnContact\n #_05F747: BCC .exit_a\n\n #_05F749: JSR PotionCauldron_GoBeep\n\n.exit_a\n #_05F74C: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_BlueCauldron", + "code": "SpriteDraw_BlueCauldron:\n #_05F7BD: LDA.b #$04\n #_05F7BF: STA.b $06\n #_05F7C1: STZ.b $07\n\n #_05F7C3: LDA.b #.oam_groups>>0\n #_05F7C5: STA.b $08\n\n #_05F7C7: LDA.b #.oam_groups>>8\n #_05F7C9: STA.b $09\n\n #_05F7CB: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05F7CF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_RedCauldron", + "code": "Sprite_RedCauldron:\n #_05F7D0: JSR SpriteDraw_RedCauldron\n #_05F7D3: JSR Sprite_CheckIfActive_Bank05\n #_05F7D6: JSL Sprite_BehaveAsBarrier\n\n #_05F7DA: LDA.w SprTimerA, X\n #_05F7DD: BNE .exit_a\n\n #_05F7DF: JSR PotionCauldron_CheckBottles\n #_05F7E2: BCS .have_bottles\n\n #_05F7E4: LDA.b #$4F ; MESSAGE 004F\n #_05F7E6: LDY.b #$00\n #_05F7E8: JSL Sprite_ShowMessageOnContact\n #_05F7EC: BCC .exit_a\n\n #_05F7EE: JSR PotionCauldron_GoBeep\n\n.exit_a\n #_05F7F1: RTS", + "file": "bank_05.asm" + }, + { + "name": "PotionCauldron_PovertyDisclaimer", + "code": "PotionCauldron_PovertyDisclaimer:\n #_05F83E: LDA.b #$7C ; MESSAGE 017C\n #_05F840: LDY.b #$01\n #_05F842: JSL Sprite_ShowMessageUnconditional\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "PotionCauldron_GoBeep", + "code": "PotionCauldron_GoBeep:\n #_05F846: LDA.b #$3C ; SFX2.3C\n #_05F848: JSL SpriteSFX_QueueSFX2WithPan\n\n #_05F84C: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_RedCauldron", + "code": "SpriteDraw_RedCauldron:\n #_05F86D: LDA.b #$04\n #_05F86F: STA.b $06\n #_05F871: STZ.b $07\n\n #_05F873: LDA.b #.oam_groups>>0\n #_05F875: STA.b $08\n\n #_05F877: LDA.b #.oam_groups>>8\n #_05F879: STA.b $09\n\n #_05F87B: JSL SpriteDraw_Tabulated_player_deferred\n\n #_05F87F: RTS", + "file": "bank_05.asm" + }, + { + "name": "PotionCauldron_CheckBottles", + "code": "PotionCauldron_CheckBottles:\n #_05F880: LDA.l $7EF35C\n #_05F884: ORA.l $7EF35D\n #_05F888: ORA.l $7EF35E\n #_05F88C: ORA.l $7EF35F\n\n #_05F890: CMP.b #$02\n\n #_05F892: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicShopAssistant_Main", + "code": "MagicShopAssistant_Main:\n #_05F893: JSL SpriteDraw_Shopkeeper\n #_05F897: JSR Sprite_CheckIfActive_Bank05\n #_05F89A: JSL Sprite_BehaveAsBarrier\n\n #_05F89E: JSL CheckIfLinkIsBusy\n #_05F8A2: BCS .exit\n\n #_05F8A4: LDA.w SprAction, X\n #_05F8A7: BEQ .not_healing\n\n #_05F8A9: LDA.b #$A0\n #_05F8AB: STA.l $7EF372\n\n #_05F8AF: STZ.w SprAction, X\n\n.not_healing\n #_05F8B2: LDA.b $1A\n #_05F8B4: LSR A\n #_05F8B5: LSR A\n #_05F8B6: LSR A\n #_05F8B7: LSR A\n #_05F8B8: LSR A\n #_05F8B9: AND.b #$01\n #_05F8BB: STA.w $0DC0, X\n\n #_05F8BE: LDA.l $7EF35C\n #_05F8C2: CMP.b #$02\n #_05F8C4: BCS .own_bottle\n\n #_05F8C6: LDA.l $7EF35D\n #_05F8CA: CMP.b #$02\n #_05F8CC: BCS .own_bottle\n\n #_05F8CE: LDA.l $7EF35E\n #_05F8D2: CMP.b #$02\n #_05F8D4: BCS .own_bottle\n\n #_05F8D6: LDA.l $7EF35F\n #_05F8DA: CMP.b #$02\n #_05F8DC: BCS .own_bottle\n\n #_05F8DE: LDA.w $0ABF\n #_05F8E1: BEQ .own_bottle\n\n #_05F8E3: LDA.b #$4D ; MESSAGE 004D\n #_05F8E5: LDY.b #$00\n #_05F8E7: JSL Sprite_ShowSolicitedMessage\n\n; ---------------------------------------------------------\n\n.trigger_heal\n #_05F8EB: BCC .exit\n\n #_05F8ED: INC.w SprAction, X\n\n.exit\n #_05F8F0: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_Shopkeeper", + "code": "SpriteDraw_Shopkeeper:\n #_05F91B: PHB\n #_05F91C: PHK\n #_05F91D: PLB\n\n #_05F91E: LDA.b #$02\n #_05F920: STA.b $06\n #_05F922: STZ.b $07\n\n #_05F924: LDA.w $0DC0, X\n\n #_05F927: ASL A\n #_05F928: ASL A\n #_05F929: ASL A\n #_05F92A: ASL A\n\n #_05F92B: ADC.b #.oam_groups>>0\n #_05F92D: STA.b $08\n\n #_05F92F: LDA.b #.oam_groups>>8\n #_05F931: ADC.b #$00\n #_05F933: STA.b $09\n\n #_05F935: JSL SpriteDraw_Tabulated_player_deferred\n #_05F939: JSL SpriteDraw_Shadow_long\n\n #_05F93D: PLB\n\n #_05F93E: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_DirectionToFaceLink_Bank05", + "code": "Sprite_DirectionToFaceLink_Bank05:\n #_05F93F: JSL Sprite_DirectionToFaceLink_long\n\n #_05F943: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_IsRightOfLink_Bank05", + "code": "Sprite_IsRightOfLink_Bank05:\n #_05F944: JSL Sprite_IsRightOfLink_long\n\n #_05F948: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_IsBelowLink_Bank05", + "code": "Sprite_IsBelowLink_Bank05:\n #_05F949: JSL Sprite_IsBelowLink_long\n\n #_05F94D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank05", + "code": "Sprite_CheckIfActive_Bank05:\n #_05F94E: LDA.w $0DD0, X\n #_05F951: CMP.b #$09\n #_05F953: BNE .inactive\n\n#Sprite_CheckIfActivePermissive_Bank05:\n #_05F955: LDA.w $0FC1\n #_05F958: BNE .inactive\n\n #_05F95A: LDA.b $11\n #_05F95C: BNE .inactive\n\n #_05F95E: LDA.w $0CAA, X\n #_05F961: BMI .active\n\n #_05F963: LDA.w $0F00, X\n #_05F966: BEQ .active\n\n.inactive\n #_05F968: PLA\n #_05F969: PLA\n\n.active\n #_05F96A: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_CheckIfRecoiling_Bank05", + "code": "Sprite_CheckIfRecoiling_Bank05:\n #_05F971: LDA.w $0EA0, X\n #_05F974: BEQ .exit\n\n #_05F976: AND.b #$7F\n #_05F978: BEQ .recoil_over\n\n #_05F97A: LDA.w SprYSpeed, X\n #_05F97D: PHA\n\n #_05F97E: LDA.w SprXSpeed, X\n #_05F981: PHA\n\n #_05F982: DEC.w $0EA0, X\n #_05F985: BNE .still_recoiling\n\n #_05F987: LDA.w $0F40, X\n #_05F98A: CLC\n #_05F98B: ADC.b #$20\n #_05F98D: CMP.b #$40\n #_05F98F: BCS .no_adjust\n\n #_05F991: LDA.w $0F30, X\n #_05F994: CLC\n #_05F995: ADC.b #$20\n #_05F997: CMP.b #$40\n #_05F999: BCC .still_recoiling\n\n.no_adjust\n #_05F99B: LDA.b #$90\n #_05F99D: STA.w $0EA0, X\n\n.still_recoiling\n #_05F9A0: LDA.w $0EA0, X\n #_05F9A3: BMI .no_movement\n\n #_05F9A5: LSR A\n #_05F9A6: LSR A\n #_05F9A7: TAY\n\n #_05F9A8: LDA.b $1A\n #_05F9AA: AND.w .masks, Y\n #_05F9AD: BNE .no_movement\n\n #_05F9AF: LDA.w $0F30, X\n #_05F9B2: STA.w SprYSpeed, X\n\n #_05F9B5: LDA.w $0F40, X\n #_05F9B8: STA.w SprXSpeed, X\n\n #_05F9BB: LDA.w $0CD2, X\n #_05F9BE: BMI .handle_movement\n\n #_05F9C0: JSR Sprite_CheckTileCollision_Bank05\n #_05F9C3: AND.b #$0F\n #_05F9C5: BEQ .handle_movement\n\n #_05F9C7: CMP.b #$04\n #_05F9C9: BCS .stop_vertical_movement\n\n.stop_horizontal_movement\n #_05F9CB: STZ.w $0F40, X\n #_05F9CE: STZ.w SprXSpeed, X\n\n #_05F9D1: BRA .movement_stopped\n\n.stop_vertical_movement\n #_05F9D3: STZ.w $0F30, X\n #_05F9D6: STZ.w SprYSpeed, X\n\n.movement_stopped\n #_05F9D9: BRA .no_movement\n\n.handle_movement\n #_05F9DB: JSR Sprite_Move_XY_Bank05\n\n.no_movement\n #_05F9DE: PLA\n #_05F9DF: STA.w SprXSpeed, X\n\n #_05F9E2: PLA\n #_05F9E3: STA.w SprYSpeed, X\n\n #_05F9E6: PLA\n #_05F9E7: PLA\n\n.exit\n #_05F9E8: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Move_XY_Bank05", + "code": "Sprite_Move_XY_Bank05:\n #_05F9ED: JSR Sprite_Move_X_Bank05\n #_05F9F0: JSR Sprite_Move_Y_Bank05\n\n #_05F9F3: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Move_X_Bank05", + "code": "Sprite_Move_X_Bank05:\n #_05F9F4: TXA\n #_05F9F5: CLC\n #_05F9F6: ADC.b #$10\n #_05F9F8: TAX\n\n #_05F9F9: JSR Sprite_Move_Y_Bank05\n\n #_05F9FC: LDX.w $0FA0\n\n #_05F9FF: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Move_Y_Bank05", + "code": "Sprite_Move_Y_Bank05:\n #_05FA00: LDA.w SprYSpeed, X\n #_05FA03: BEQ .exit\n\n #_05FA05: ASL A\n #_05FA06: ASL A\n #_05FA07: ASL A\n #_05FA08: ASL A\n\n #_05FA09: CLC\n #_05FA0A: ADC.w $0D60, X\n #_05FA0D: STA.w $0D60, X\n\n #_05FA10: LDA.w SprYSpeed, X\n #_05FA13: PHP\n\n #_05FA14: LSR A\n #_05FA15: LSR A\n #_05FA16: LSR A\n #_05FA17: LSR A\n\n #_05FA18: LDY.b #$00\n\n #_05FA1A: PLP\n #_05FA1B: BPL .positive_velocity\n\n #_05FA1D: ORA.b #$F0\n #_05FA1F: DEY\n\n.positive_velocity\n #_05FA20: ADC.w SprY, X\n #_05FA23: STA.w SprY, X\n\n #_05FA26: TYA\n #_05FA27: ADC.w SprYH, X\n #_05FA2A: STA.w SprYH, X\n\n.exit\n #_05FA2D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_Move_Z_Bank05", + "code": "Sprite_Move_Z_Bank05:\n #_05FA2E: LDA.w $0F80, X\n #_05FA31: ASL A\n #_05FA32: ASL A\n #_05FA33: ASL A\n #_05FA34: ASL A\n\n #_05FA35: CLC\n #_05FA36: ADC.w $0F90, X\n #_05FA39: STA.w $0F90, X\n\n #_05FA3C: LDA.w $0F80, X\n #_05FA3F: PHP\n\n #_05FA40: LSR A\n #_05FA41: LSR A\n #_05FA42: LSR A\n #_05FA43: LSR A\n\n #_05FA44: PLP\n #_05FA45: BPL .positive_velocity\n\n #_05FA47: ORA.b #$F0\n\n.positive_velocity\n #_05FA49: ADC.w $0F70, X\n #_05FA4C: STA.w $0F70, X\n\n #_05FA4F: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_PrepOAMCoord_Bank05", + "code": "Sprite_PrepOAMCoord_Bank05:\n #_05FA50: JSL Sprite_PrepOAMCoord_long\n #_05FA54: BCC .onscreen\n\n #_05FA56: PLA\n #_05FA57: PLA\n\n.onscreen\n #_05FA58: RTS", + "file": "bank_05.asm" + }, + { + "name": "TutorialGuard_ShowMessageOnContact", + "code": "TutorialGuard_ShowMessageOnContact:\n #_05FA59: STA.w $1CF0\n #_05FA5C: STY.w $1CF1\n\n #_05FA5F: LDA.w $0E40, X\n #_05FA62: PHA\n\n #_05FA63: LDA.b #$80\n #_05FA65: STA.w $0E40, X\n\n #_05FA68: LDA.w $0F60, X\n #_05FA6B: PHA\n\n #_05FA6C: LDA.b #$07\n #_05FA6E: STA.w $0F60, X\n\n #_05FA71: JSL Sprite_CheckDamageToLink_same_layer_long\n\n #_05FA75: PLA\n #_05FA76: STA.w $0F60, X\n\n #_05FA79: PLA\n #_05FA7A: STA.w $0E40, X\n\n #_05FA7D: BCC EXIT_05FAA1\n\n #_05FA7F: PHP\n #_05FA80: JSL Sprite_CancelHookshot\n #_05FA84: PLP\n\n #_05FA85: STZ.w $0372\n #_05FA88: STZ.b $5E\n\n #_05FA8A: LDA.b $4D\n #_05FA8C: BNE EXIT_05FAA1\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "Sprite_ShowMessageMinimal", + "code": "Sprite_ShowMessageMinimal:\n #_05FA8E: STZ.w $0223\n #_05FA91: STZ.w $1CD8\n\n #_05FA94: LDA.b #$02\n #_05FA96: STA.b $11\n\n #_05FA98: LDA.b $10\n #_05FA9A: STA.w $010C\n\n #_05FA9D: LDA.b #$0E\n #_05FA9F: STA.b $10\n\n; ---------------------------------------------------------\n\n#EXIT_05FAA1\n #_05FAA1: RTL", + "file": "bank_05.asm" + }, + { + "name": "Overworld_ReadTileType", + "code": "Overworld_ReadTileType:\n #_05FAA2: REP #$30\n\n #_05FAA4: LDA.b $00\n #_05FAA6: SEC\n #_05FAA7: SBC.w $0708\n #_05FAAA: AND.w $070A\n #_05FAAD: ASL A\n #_05FAAE: ASL A\n #_05FAAF: ASL A\n #_05FAB0: STA.b $06\n\n #_05FAB2: LDA.b $02\n #_05FAB4: SEC\n #_05FAB5: SBC.w $070C\n #_05FAB8: AND.w $070E\n #_05FABB: ORA.b $06\n #_05FABD: TAX\n\n #_05FABE: LDA.l $7E2000, X\n #_05FAC2: TAX\n\n #_05FAC3: LDA.l OverworldTileTypeTable, X\n\n #_05FAC7: SEP #$30\n\n #_05FAC9: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_3A_MagicBat", + "code": "Sprite_3A_MagicBat:\n #_05FACA: PHB\n #_05FACB: PHK\n #_05FACC: PLB\n\n #_05FACD: JSR .main\n\n #_05FAD0: PLB\n\n #_05FAD1: RTL", + "file": "bank_05.asm" + }, + { + "name": "MagicBat", + "code": "MagicBat:\n #_05FADC: LDA.w SprAction, X\n #_05FADF: BEQ .hidden\n\n #_05FAE1: JSL SpriteDraw_SingleLarge_long\n\n.hidden\n #_05FAE5: JSR Sprite_CheckIfActive_Bank05\n #_05FAE8: JSR Sprite_Move_XY_Bank05\n #_05FAEB: JSR Sprite_Move_Z_Bank05\n\n #_05FAEE: LDA.w SprAction, X\n #_05FAF1: JSL JumpTableLocal\n #_05FAF5: dw MagicBat_Dormant\n #_05FAF7: dw MagicBat_Ascend\n #_05FAF9: dw MagicBat_Attack\n #_05FAFB: dw MagicBat_EnhanceMagic\n #_05FAFD: dw MagicBat_Retreat\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "MagicBat_Dormant", + "code": "MagicBat_Dormant:\n #_05FAFF: LDA.l $7EF37B\n #_05FB03: CMP.b #$01\n #_05FB05: BCS .exit\n\n #_05FB07: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05FB0B: BCC .exit\n\n #_05FB0D: LDY.b #$04\n\n.next_ancilla\n #_05FB0F: LDA.w $0C4A, Y\n #_05FB12: CMP.b #$1A ; ANCILLA 1A\n #_05FB14: BEQ .powder\n\n #_05FB16: DEY\n #_05FB17: BPL .next_ancilla\n\n #_05FB19: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicBat_Ascend", + "code": "MagicBat_Ascend:\n #_05FB3C: LDA.w SprTimerA, X\n #_05FB3F: BNE .exit\n\n #_05FB41: DEC.w $0D90, X\n\n #_05FB44: LDA.w $0D90, X\n #_05FB47: STA.w SprTimerA, X\n\n #_05FB4A: CMP.b #$01\n #_05FB4C: BEQ .speak\n\n #_05FB4E: LSR A\n #_05FB4F: LSR A\n #_05FB50: STA.w $0F80, X\n\n #_05FB53: LDA.w $0D90, X\n #_05FB56: AND.b #$01\n #_05FB58: TAY\n\n #_05FB59: LDA.w .speed_x, Y\n #_05FB5C: CLC\n #_05FB5D: ADC.w SprXSpeed, X\n #_05FB60: STA.w SprXSpeed, X\n\n #_05FB63: LDA.w $0DC0, X\n #_05FB66: EOR.b #$01\n #_05FB68: STA.w $0DC0, X\n\n.exit\n #_05FB6B: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicBat_Attack", + "code": "MagicBat_Attack:\n #_05FB8E: LDA.w SprTimerA, X\n #_05FB91: BNE .delay\n\n #_05FB93: INC.w SprAction, X\n\n #_05FB96: LDA.b #$40\n #_05FB98: STA.w SprTimerB, X\n\n #_05FB9B: LDA.w SprTimerA, X\n\n.delay\n #_05FB9E: LSR A\n #_05FB9F: AND.b #$07\n #_05FBA1: TAY\n\n #_05FBA2: LDA.w $0F50, X\n #_05FBA5: AND.b #$F1\n #_05FBA7: ORA.w .palette, Y\n #_05FBAA: STA.w $0F50, X\n\n #_05FBAD: LDA.w SprTimerA, X\n #_05FBB0: CMP.b #$F0\n #_05FBB2: BNE .exit\n\n #_05FBB4: JSL MagicBat_SpawnLightning\n\n.exit\n #_05FBB8: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicBat_EnhanceMagic", + "code": "MagicBat_EnhanceMagic:\n #_05FBB9: LDA.w SprTimerB, X\n #_05FBBC: BNE .delay\n\n #_05FBBE: LDA.b #$11 ; MESSAGE 0111\n #_05FBC0: LDY.b #$01\n #_05FBC2: JSL Sprite_ShowMessageUnconditional\n\n #_05FBC6: PHX\n\n #_05FBC7: JSL Palette_RestoreBGAndHUD\n\n #_05FBCB: INC.b $15\n\n #_05FBCD: PLX\n\n #_05FBCE: INC.w SprAction, X\n\n #_05FBD1: LDA.b #$01\n #_05FBD3: STA.l $7EF37B\n\n #_05FBD7: JSL RefreshIcon_long\n\n #_05FBDB: RTS", + "file": "bank_05.asm" + }, + { + "name": "MagicBat_Retreat", + "code": "MagicBat_Retreat:\n #_05FBE4: JSL Sprite_SpawnDummyDeathAnimation\n\n #_05FBE8: STZ.w $0DD0, X\n\n #_05FBEB: STZ.w $02E4\n\n #_05FBEE: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_3B_BonkItem", + "code": "Sprite_3B_BonkItem:\n #_05FBEF: PHB\n #_05FBF0: PHK\n #_05FBF1: PLB\n\n #_05FBF2: JSR .main\n\n #_05FBF5: PLB\n\n #_05FBF6: RTL", + "file": "bank_05.asm" + }, + { + "name": "Sprite_BonkKey", + "code": "Sprite_BonkKey:\n #_05FC04: JSL Sprite_DrawThinAndTall_long\n #_05FC08: JSR Sprite_CheckIfActive_Bank05\n #_05FC0B: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05FC0F: BCC .no_contact\n\n #_05FC11: LDA.b #$03\n #_05FC13: STA.w SprAction, X\n\n.no_contact\n #_05FC16: JSR Sprite_Move_XY_Bank05\n\n #_05FC19: DEC.w $0F80, X\n\n #_05FC1C: JSR Sprite_Move_Z_Bank05\n\n #_05FC1F: LDA.w $0F70, X\n #_05FC22: BPL .continue\n\n #_05FC24: STZ.w SprYSpeed, X\n #_05FC27: STZ.w $0F70, X\n\n #_05FC2A: LDA.w $0F80, X\n #_05FC2D: EOR.b #$FF\n #_05FC2F: INC A\n\n #_05FC30: LSR A\n #_05FC31: LSR A\n #_05FC32: STA.w $0F80, X\n\n #_05FC35: AND.b #$FE\n #_05FC37: BEQ .continue\n\n #_05FC39: LDA.b #$14 ; SFX3.14\n #_05FC3B: JSL SpriteSFX_QueueSFX3WithPan\n\n.continue\n #_05FC3F: LDA.w SprAction, X\n #_05FC42: JSL JumpTableLocal\n #_05FC46: dw BonkKey_Undisturbed\n #_05FC48: dw BonkItem_KnockedDown\n #_05FC4A: dw BonkItem_Land\n #_05FC4C: dw BonkKey_GrantKey\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BonkKey_Undisturbed", + "code": "BonkKey_Undisturbed:\n #_05FC4E: REP #$20\n\n #_05FC50: LDA.w $0FD8\n #_05FC53: SEC\n #_05FC54: SBC.b $22\n\n #_05FC56: CLC\n #_05FC57: ADC.w #$0010\n\n #_05FC5A: CMP.w #$0021\n #_05FC5D: BCS .remain_stable\n\n #_05FC5F: LDA.w $0FDA\n #_05FC62: SEC\n #_05FC63: SBC.b $20\n\n #_05FC65: CLC\n #_05FC66: ADC.w #$0018\n\n #_05FC69: CMP.w #$0029\n #_05FC6C: BCS .remain_stable\n\n #_05FC6E: LDA.w $011A\n #_05FC71: ORA.w $011C\n #_05FC74: BEQ .remain_stable\n\n #_05FC76: INC.w SprAction, X\n\n.remain_stable\n #_05FC79: SEP #$30\n\n #_05FC7B: RTS", + "file": "bank_05.asm" + }, + { + "name": "BonkKey_GrantKey", + "code": "BonkKey_GrantKey:\n #_05FC7E: LDA.l $7EF36F\n #_05FC82: INC A\n #_05FC83: STA.l $7EF36F\n\n #_05FC87: STZ.w $0DD0, X\n\n #_05FC8A: LDA.w $0CBA, X\n #_05FC8D: TAY\n\n #_05FC8E: LDA.w $0403\n #_05FC91: ORA.w .room_flag, Y\n #_05FC94: STA.w $0403\n\n #_05FC97: LDA.b #$2F ; SFX3.2F\n #_05FC99: JSL SpriteSFX_QueueSFX3WithPan\n\n #_05FC9D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_BookOfMudora", + "code": "Sprite_BookOfMudora:\n #_05FC9E: JSL SpriteDraw_SingleLarge_long\n #_05FCA2: JSR Sprite_CheckIfActive_Bank05\n #_05FCA5: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05FCA9: BCC .no_contact\n\n #_05FCAB: LDA.b #$03\n #_05FCAD: STA.w SprAction, X\n\n.no_contact\n #_05FCB0: JSR Sprite_Move_XY_Bank05\n\n #_05FCB3: DEC.w $0F80, X\n\n #_05FCB6: JSR Sprite_Move_Z_Bank05\n\n #_05FCB9: LDA.w $0F70, X\n\n #_05FCBC: BPL .continue\n\n #_05FCBE: STZ.w SprYSpeed, X\n #_05FCC1: STZ.w $0F70, X\n\n #_05FCC4: LDA.w $0F80, X\n #_05FCC7: EOR.b #$FF\n #_05FCC9: INC A\n #_05FCCA: LSR A\n #_05FCCB: LSR A\n #_05FCCC: STA.w $0F80, X\n\n #_05FCCF: AND.b #$FE\n #_05FCD1: BEQ .continue\n\n #_05FCD3: LDA.b #$21 ; SFX2.21\n #_05FCD5: JSL SpriteSFX_QueueSFX2WithPan\n\n.continue\n #_05FCD9: LDA.w SprAction, X\n #_05FCDC: JSL JumpTableLocal\n #_05FCE0: dw BookOfMudora_WaitForBonk\n #_05FCE2: dw BonkItem_KnockedDown\n #_05FCE4: dw BonkItem_Land\n #_05FCE6: dw BookOfMudora_GrantLiterature\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "BookOfMudora_WaitForBonk", + "code": "BookOfMudora_WaitForBonk:\n #_05FCE8: LDA.w $002F\n #_05FCEB: BNE .fail\n\n #_05FCED: REP #$20\n\n #_05FCEF: LDA.w $0FD8\n #_05FCF2: SEC\n #_05FCF3: SBC.b $22\n\n #_05FCF5: CLC\n #_05FCF6: ADC.w #$0027\n\n #_05FCF9: CMP.w #$002F\n #_05FCFC: BCS .fail\n\n #_05FCFE: LDA.w $0FDA\n #_05FD01: SEC\n #_05FD02: SBC.b $20\n\n #_05FD04: CLC\n #_05FD05: ADC.w #$0028\n\n #_05FD08: CMP.w #$002E\n #_05FD0B: BCS .fail\n\n #_05FD0D: LDA.w $011A\n #_05FD10: ORA.w $011C\n #_05FD13: BEQ .fail\n\n #_05FD15: INC.w SprAction, X\n\n.fail\n #_05FD18: SEP #$30\n\n #_05FD1A: RTS", + "file": "bank_05.asm" + }, + { + "name": "BonkItem_KnockedDown", + "code": "BonkItem_KnockedDown:\n #_05FD1B: LDA.b #$20\n #_05FD1D: STA.w $0F80, X\n\n #_05FD20: LDA.b #$FB\n #_05FD22: STA.w SprYSpeed, X\n\n #_05FD25: INC.w SprAction, X\n\n #_05FD28: LDA.b #$1B ; SFX3.1B\n #_05FD2A: STA.w $012F\n\n #_05FD2D: RTS", + "file": "bank_05.asm" + }, + { + "name": "BonkItem_Land", + "code": "BonkItem_Land:\n #_05FD2E: LDA.w $0F70, X\n #_05FD31: BNE .exit\n\n #_05FD33: LDA.w $00EE\n #_05FD36: STA.w $0F20, X\n\n.exit\n #_05FD39: RTS", + "file": "bank_05.asm" + }, + { + "name": "BookOfMudora_GrantLiterature", + "code": "BookOfMudora_GrantLiterature:\n #_05FD3A: PHX\n\n #_05FD3B: JSL Link_CancelDash_long\n\n #_05FD3F: LDY.b #$1D ; ITEMGET 1D\n #_05FD41: STZ.w $02E9\n #_05FD44: JSL Link_ReceiveItem\n\n #_05FD48: PLX\n\n #_05FD49: STZ.w $0DD0, X\n\n #_05FD4C: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_LumberjackTree", + "code": "Sprite_LumberjackTree:\n #_05FD4D: LDA.b #$8F\n #_05FD4F: STA.w $0E40, X\n\n #_05FD52: LDA.b #$47\n #_05FD54: STA.w $0F60, X\n\n #_05FD57: JSR SpriteDraw_LumberjackTree\n\n #_05FD5A: JSR Sprite_CheckIfActive_Bank05\n #_05FD5D: JSL Sprite_CheckDamageToLink_same_layer_long\n #_05FD61: BCC .no_contact\n\n #_05FD63: PHX\n\n #_05FD64: JSL Sprite_CancelHookshot\n\n #_05FD68: STZ.b $5E\n\n #_05FD6A: JSL Sprite_RepelDash_long\n\n #_05FD6E: PLX\n\n.no_contact\n #_05FD6F: JSR Sprite_Move_XY_Bank05\n\n #_05FD72: DEC.w $0F80, X\n\n #_05FD75: JSR Sprite_Move_Z_Bank05\n\n #_05FD78: LDA.w $0F70, X\n #_05FD7B: BPL .continue\n\n #_05FD7D: STZ.w $0F70, X\n\n #_05FD80: LDA.w $0F80, X\n #_05FD83: EOR.b #$FF\n #_05FD85: INC A\n\n #_05FD86: LSR A\n #_05FD87: LSR A\n #_05FD88: STA.w $0F80, X\n\n.continue\n #_05FD8B: LDA.w SprAction, X\n #_05FD8E: JSL JumpTableLocal\n #_05FD92: dw LumberjackTree_WaitForBonk\n #_05FD94: dw LumberjackTree_ExplodeViolently\n #_05FD96: dw LumberjackTree_DispersionOfLeaves\n\n; =========================================================\n", + "file": "bank_05.asm" + }, + { + "name": "LumberjackTree_WaitForBonk", + "code": "LumberjackTree_WaitForBonk:\n #_05FD98: STZ.w SprDelay, X\n\n #_05FD9B: REP #$20\n\n #_05FD9D: LDA.w $0FD8\n #_05FDA0: SEC\n #_05FDA1: SBC.b $22\n\n #_05FDA3: CLC\n #_05FDA4: ADC.w #$0018\n\n #_05FDA7: CMP.w #$0041\n #_05FDAA: BCS .fail\n\n #_05FDAC: LDA.w $0FDA\n #_05FDAF: SEC\n #_05FDB0: SBC.b $20\n\n #_05FDB2: CLC\n #_05FDB3: ADC.w #$0020\n\n #_05FDB6: CMP.w #$0051\n #_05FDB9: BCS .fail\n\n #_05FDBB: SEP #$30\n\n #_05FDBD: LDA.w $011A\n #_05FDC0: ORA.w $011C\n #_05FDC3: BEQ .fail\n\n #_05FDC5: INC.w SprAction, X\n\n #_05FDC8: LDA.b #$14\n #_05FDCA: STA.w $0F80, X\n\n.fail\n #_05FDCD: SEP #$30\n\n #_05FDCF: RTS", + "file": "bank_05.asm" + }, + { + "name": "LumberjackTree_ExplodeViolently", + "code": "LumberjackTree_ExplodeViolently:\n #_05FDD0: LDA.w $0F70, X\n #_05FDD3: BNE .exit\n\n #_05FDD5: INC.w SprAction, X\n\n #_05FDD8: LDA.b #$1B ; SFX3.1B\n #_05FDDA: STA.w $012F\n\n #_05FDDD: LDA.b #$FC\n #_05FDDF: STA.w SprXSpeed, X\n #_05FDE2: STA.w SprYSpeed, X\n\n #_05FDE5: JSR LumberjackTree_SpawnLeaves\n\n #_05FDE8: LDA.b #$05\n #_05FDEA: STA.w SprXSpeed, Y\n #_05FDED: STA.w SprYSpeed, Y\n\n #_05FDF0: JSR LumberjackTree_SpawnLeaves\n\n #_05FDF3: LDA.b #$05\n #_05FDF5: STA.w SprXSpeed, Y\n\n #_05FDF8: LDA.b #$FC\n #_05FDFA: STA.w SprYSpeed, Y\n\n #_05FDFD: JSR LumberjackTree_SpawnLeaves\n\n #_05FE00: LDA.b #$FC\n #_05FE02: STA.w SprXSpeed, Y\n\n #_05FE05: LDA.b #$04\n #_05FE07: STA.w SprYSpeed, Y\n\n.exit\n #_05FE0A: RTS", + "file": "bank_05.asm" + }, + { + "name": "LumberjackTree_DispersionOfLeaves", + "code": "LumberjackTree_DispersionOfLeaves:\n #_05FE0B: LDA.w SprTimerA, X\n #_05FE0E: BNE .exit\n\n #_05FE10: LDA.b #$08\n #_05FE12: STA.w SprTimerA, X\n\n #_05FE15: LDA.w SprDelay, X\n #_05FE18: CMP.b #$06\n #_05FE1A: BNE .delay\n\n #_05FE1C: STZ.w $0DD0, X\n\n.delay\n #_05FE1F: INC.w SprDelay, X\n\n.exit\n #_05FE22: RTS", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_LumberjackTree", + "code": "SpriteDraw_LumberjackTree:\n #_05FE6F: JSR Sprite_PrepOAMCoord_Bank05\n\n #_05FE72: LDA.w $0FA8\n #_05FE75: SEC\n #_05FE76: SBC.b #$20\n #_05FE78: STA.w $0FA8\n\n #_05FE7B: LDA.w $0FA9\n #_05FE7E: SEC\n #_05FE7F: SBC.b #$20\n #_05FE81: STA.w $0FA9\n\n #_05FE84: PHX\n\n #_05FE85: LDA.w SprDelay, X\n #_05FE88: BNE .exploding\n\n; ---------------------------------------------------------\n\n #_05FE8A: REP #$10\n\n #_05FE8C: LDX.b $90\n\n #_05FE8E: LDA.b #$03\n #_05FE90: STA.b $00\n\n #_05FE92: LDA.w $0FA8\n\n.next_oam_entry\n #_05FE95: STA.b $00, X\n #_05FE97: STA.b $10, X\n #_05FE99: STA.b $20, X\n #_05FE9B: STA.b $30, X\n\n #_05FE9D: CLC\n #_05FE9E: ADC.b #$10\n\n #_05FEA0: INX\n #_05FEA1: INX\n #_05FEA2: INX\n #_05FEA3: INX\n\n #_05FEA4: DEC.b $00\n #_05FEA6: BPL .next_oam_entry\n\n; ---------------------------------------------------------\n\n #_05FEA8: LDX.b $90\n\n #_05FEAA: LDA.w $0FA9\n #_05FEAD: STA.b $01, X\n #_05FEAF: STA.b $05, X\n #_05FEB1: STA.b $09, X\n #_05FEB3: STA.b $0D, X\n\n #_05FEB5: CLC\n #_05FEB6: ADC.b #$10\n #_05FEB8: STA.b $11, X\n #_05FEBA: STA.b $15, X\n #_05FEBC: STA.b $19, X\n #_05FEBE: STA.b $1D, X\n\n #_05FEC0: CLC\n #_05FEC1: ADC.b #$10\n #_05FEC3: STA.b $21, X\n #_05FEC5: STA.b $25, X\n #_05FEC7: STA.b $29, X\n #_05FEC9: STA.b $2D, X\n\n #_05FECB: CLC\n #_05FECC: ADC.b #$10\n #_05FECE: STA.b $31, X\n #_05FED0: STA.b $35, X\n #_05FED2: STA.b $39, X\n #_05FED4: STA.b $3D, X\n\n; ---------------------------------------------------------\n\n #_05FED6: REP #$30\n\n #_05FED8: LDY.w #$0000\n\n.next_tree_char\n #_05FEDB: LDA.w .tree_char, Y\n #_05FEDE: STA.b $02, X\n\n #_05FEE0: INX\n #_05FEE1: INX\n #_05FEE2: INX\n #_05FEE3: INX\n\n #_05FEE4: INY\n #_05FEE5: INY\n\n #_05FEE6: CPY.w #$0020\n #_05FEE9: BCC .next_tree_char\n\n #_05FEEB: SEP #$30\n\n #_05FEED: PLX\n\n #_05FEEE: LDA.b #$0F\n #_05FEF0: LDY.b #$02\n #_05FEF2: JSL Sprite_CorrectOAMEntries_long\n\n #_05FEF6: RTS", + "file": "bank_05.asm" + }, + { + "name": "LumberjackTree_SpawnLeaves", + "code": "LumberjackTree_SpawnLeaves:\n #_05FF39: LDA.b #$3B ; SPRITE 3B\n #_05FF3B: JSL Sprite_SpawnDynamically\n\n #_05FF3F: LDA.b #$02\n #_05FF41: STA.w $0DC0, Y\n\n #_05FF44: LDA.w $0F80, X\n #_05FF47: STA.w $0F80, Y\n\n #_05FF4A: LDA.b #$01\n #_05FF4C: STA.w SprDelay, Y\n\n #_05FF4F: LDA.b #$02\n #_05FF51: STA.w SprAction, Y\n\n #_05FF54: LDA.b #$08\n #_05FF56: STA.w SprTimerA, Y\n\n #_05FF59: JSL Sprite_SetSpawnedCoordinates\n\n #_05FF5D: RTS", + "file": "bank_05.asm" + }, + { + "name": "Sprite_3C_KidInKak", + "code": "Sprite_3C_KidInKak:\n #_05FF5E: PHB\n #_05FF5F: PHK\n #_05FF60: PLB\n\n #_05FF61: JSR .main\n\n #_05FF64: PLB\n\n #_05FF65: RTL", + "file": "bank_05.asm" + }, + { + "name": "SpriteDraw_KidInKak", + "code": "SpriteDraw_KidInKak:\n #_05FFDF: LDA.b #$02\n #_05FFE1: STA.b $06\n #_05FFE3: STZ.b $07\n\n #_05FFE5: LDA.w SprMiscC, X\n\n #_05FFE8: ASL A\n #_05FFE9: ASL A\n #_05FFEA: ASL A\n #_05FFEB: ASL A\n\n #_05FFEC: ADC.b #.oam_groups>>0\n #_05FFEE: STA.b $08\n\n #_05FFF0: LDA.b #.oam_groups>>8\n #_05FFF2: ADC.b #$00\n #_05FFF4: STA.b $09\n\n #_05FFF6: JSL SpriteDraw_Tabulated_player_deferred\n #_05FFFA: JSL SpriteDraw_Shadow_long\n\n #_05FFFE: RTS", + "file": "bank_05.asm" + }, + { + "name": "NULL_0CC10C", + "code": "NULL_0CC10C:\n#_0CC10C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0CC114: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0CC11C: db $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Module00_Intro", + "code": "Module00_Intro:\n#_0CC120: LDA.b $11\n#_0CC122: CMP.b #$08\n#_0CC124: BCC .run_submodule\n\n#_0CC126: LDA.b $F6\n#_0CC128: AND.b #$C0\n\n#_0CC12A: ORA.b $F4\n#_0CC12C: AND.b #$D0\n#_0CC12E: BEQ .run_submodule\n\n#_0CC130: JMP.w FadeMusicAndResetSRAMMirror\n\n; ---------------------------------------------------------\n\n.run_submodule\n#_0CC133: LDA.b $11\n#_0CC135: JSL JumpTableLong\n#_0CC139: dl Intro_InitialInitialization\n#_0CC13C: dl Intro_InitializeMemory\n#_0CC13F: dl Intro_InitializeTriforcePolyThread\n#_0CC142: dl Intro_HandleAllTriforceAnimations\n#_0CC145: dl Intro_HandleAllTriforceAnimations\n#_0CC148: dl Intro_FadeLogoIn\n#_0CC14B: dl Intro_SwordStab\n#_0CC14E: dl Intro_PopSubtitleCard\n#_0CC151: dl Intro_TrianglesBeforeAttract\n#_0CC154: dl Intro_HandleAllTriforceAnimations\n#_0CC157: dl Intro_InitializeTriforcePolyThread\n#_0CC15A: dl Intro_HandleAllTriforceAnimations\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_InitialInitialization", + "code": "Intro_InitialInitialization:\n#_0CC15D: JSL Intro_SetupScreen\n\n#_0CC161: LDA.b #$0F\n#_0CC163: STA.b $13\n\n#_0CC165: STZ.b $B0\n\n#_0CC167: INC.b $15\n#_0CC169: INC.b $11\n\n#_0CC16B: LDA.b #$0A ; SFX3.0A\n#_0CC16D: STA.w $012F\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_InitializeMemory", + "code": "Intro_InitializeMemory:\n#_0CC170: JSR Intro_DisplayLogo\n\n#_0CC173: LDA.b $B0\n#_0CC175: INC.b $B0\n#_0CC177: CMP.b #$0B\n#_0CC179: BCS Intro_InitializeMemory_darken\n\n#_0CC17B: JSL JumpTableLong\n#_0CC17F: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC182: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC185: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC188: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC18B: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC18E: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC191: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC194: dl Intro_Clear1kbBlocksOfWRAM\n#_0CC197: dl Intro_LoadTextAndPalettes\n#_0CC19A: dl LoadItemGFXIntoWRAM4BPPBuffer\n#_0CC19D: dl LoadFollowerGraphics\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_Clear1kbBlocksOfWRAM", + "code": "Intro_Clear1kbBlocksOfWRAM:\n#_0CC1A0: REP #$30\n\n#_0CC1A2: LDX.b $C8\n\n#_0CC1A4: LDA.w #$0000\n\n.loop\n#_0CC1A7: STA.l $7E2000,X\n#_0CC1AB: STA.l $7E4000,X\n#_0CC1AF: STA.l $7E6000,X\n\n#_0CC1B3: STA.l $7E8000,X\n#_0CC1B7: STA.l $7EA000,X\n#_0CC1BB: STA.l $7EC000,X\n#_0CC1BF: STA.l $7EE000,X\n\n#_0CC1C3: STA.l $7F0000,X\n#_0CC1C7: STA.l $7F2000,X\n#_0CC1CB: STA.l $7F4000,X\n#_0CC1CF: STA.l $7F6000,X\n\n#_0CC1D3: STA.l $7F8000,X\n#_0CC1D7: STA.l $7FA000,X\n#_0CC1DB: STA.l $7FC000,X\n#_0CC1DF: STA.l $7FE000,X\n\n#_0CC1E3: DEX\n#_0CC1E4: DEX\n#_0CC1E5: CPX.b $CA\n#_0CC1E7: BNE .loop\n\n; ---------------------------------------------------------\n\n#_0CC1E9: STX.b $C8\n\n#_0CC1EB: TXA\n#_0CC1EC: SEC\n#_0CC1ED: SBC.w #$0400\n#_0CC1F0: STA.b $CA\n\n#_0CC1F2: SEP #$30\n\n#_0CC1F4: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_InitializeMemory_darken", + "code": "Intro_InitializeMemory_darken:\n#_0CC1F5: DEC.b $13\n#_0CC1F7: BNE .still_darkening\n\n; =========================================================\n\n#Intro_InitializeDefaultGFX:\n#_0CC1F9: JSL EnableForceBlank\n#_0CC1FD: JSL EraseTilemaps_normal\n\n#_0CC201: LDA.b #$02\n#_0CC203: STA.w OBSEL\n\n#_0CC206: LDA.b #$23\n#_0CC208: STA.w $0AA1\n\n#_0CC20B: LDA.b #$7D\n#_0CC20D: STA.w $0AA3\n\n#_0CC210: LDA.b #$51\n#_0CC212: STA.w $0AA2\n\n#_0CC215: LDA.b #$08\n#_0CC217: STA.w $0AA4\n\n#_0CC21A: JSL LoadDefaultGraphics\n#_0CC21E: JSL InitializeTilesets\n\n#_0CC222: LDY.b #$5D\n#_0CC224: JSL DecompressAnimatedUnderworldTiles\n\n; ---------------------------------------------------------\n\n#_0CC228: LDA.b #$02\n#_0CC22A: STA.l $7EC00D\n\n#_0CC22E: LDA.b #$00\n#_0CC230: STA.l $7EC00E\n\n#_0CC234: STZ.b $8A\n\n#_0CC236: STZ.w $0AB6\n#_0CC239: STZ.w $0AB8\n\n#_0CC23C: STZ.b $C8\n#_0CC23E: STZ.b $C9\n\n#_0CC240: STZ.b $CA\n#_0CC242: STZ.b $CB\n\n#_0CC244: LDA.b #$02\n#_0CC246: STA.l $7EC009\n\n#_0CC24A: LDA.b #$1F\n#_0CC24C: STA.l $7EC007\n\n#_0CC250: LDA.b #$00\n#_0CC252: STA.l $7EC00B\n\n#_0CC256: STZ.w $0AA6\n\n#_0CC259: INC.b $11\n\n.still_darkening\n#_0CC25B: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_FadeLogoIn", + "code": "Intro_FadeLogoIn:\n#_0CC25C: JSL Intro_HandleAllTriforceAnimations\n\n#_0CC260: LDA.b $1A\n#_0CC262: LSR A\n#_0CC263: BCC .exit_a\n\n#_0CC265: JSL IntroLogoPaletteFadeIn\n\n#_0CC269: LDA.l $7EC007\n#_0CC26D: BNE .dont_advance\n\n#_0CC26F: LDA.b #$2A\n#_0CC271: STA.b $B0\n\n#_0CC273: INC.b $11\n\n#_0CC275: JSR Intro_InitLogoSword\n\n.exit_a\n#_0CC278: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_PopSubtitleCard", + "code": "Intro_PopSubtitleCard:\n#_0CC284: JSR Intro_HandleLogoSword\n\n#_0CC287: JSL Intro_HandleAllTriforceAnimations\n\n#_0CC28B: LDA.l $7EC007\n#_0CC28F: BEQ .delay_fade\n\n#_0CC291: LDA.b $1A\n#_0CC293: LSR A\n#_0CC294: BCC .exit\n\n#_0CC296: JML IntroTitleCardPaletteFadeIn\n\n.delay_fade\n#_0CC29A: LDA.b $F6\n#_0CC29C: AND.b #$C0\n#_0CC29E: ORA.b $F4\n#_0CC2A0: AND.b #$D0\n#_0CC2A2: BEQ .delay_music\n\n#_0CC2A4: JMP.w FadeMusicAndResetSRAMMirror\n\n\n.delay_music\n#_0CC2A7: DEC.b $B0\n#_0CC2A9: BNE .exit\n#_0CC2AB: INC.b $11\n\n.exit\n#_0CC2AD: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_SwordStab", + "code": "Intro_SwordStab:\n#_0CC2AE: JSL Intro_HandleAllTriforceAnimations\n\n#_0CC2B2: STZ.w $1F00\n#_0CC2B5: STZ.w $012A\n\n#_0CC2B8: JSR Intro_HandleLogoSword\n\n#_0CC2BB: DEC.b $B0\n#_0CC2BD: BNE .exit\n\n#_0CC2BF: INC.b $11\n\n#_0CC2C1: LDA.b #$02\n#_0CC2C3: STA.b $99\n\n#_0CC2C5: LDA.b #$22\n#_0CC2C7: STA.b $9A\n\n#_0CC2C9: LDA.b #$1F\n#_0CC2CB: STA.l $7EC007\n\n#_0CC2CF: LDA.b #$02\n#_0CC2D1: STA.b $1D\n\n.exit\n#_0CC2D3: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TrianglesBeforeAttract", + "code": "Intro_TrianglesBeforeAttract:\n#_0CC2D4: JSL Intro_HandleAllTriforceAnimations\n\n#_0CC2D8: STZ.w $1F00\n#_0CC2DB: STZ.w $012A\n\n#_0CC2DE: JSR Intro_HandleLogoSword\n\n#_0CC2E1: DEC.b $B0\n#_0CC2E3: BNE .exit\n\n#_0CC2E5: INC.b $11\n\n#_0CC2E7: LDA.b #$14\n#_0CC2E9: STA.b $10\n\n#_0CC2EB: STZ.b $11\n#_0CC2ED: STZ.b $22\n\n.exit\n#_0CC2EF: RTL", + "file": "bank_0C.asm" + }, + { + "name": "FadeMusicAndResetSRAMMirror", + "code": "FadeMusicAndResetSRAMMirror:\n#_0CC2F0: LDA.b #$FF\n#_0CC2F2: STA.w $0128\n\n#_0CC2F5: LDA.b #$15\n#_0CC2F7: STA.b $1C\n\n#_0CC2F9: STZ.b $1D\n#_0CC2FB: STZ.b $1B\n\n#_0CC2FD: LDA.b #$F1 ; SONG F1 - fade\n#_0CC2FF: STA.w $012C\n\n#_0CC302: JSL FixedColorBlack\n\n; ---------------------------------------------------------\n\n#_0CC306: REP #$30\n\n#_0CC308: LDX.w #$006E\n\n.next_dp\n#_0CC30B: STZ.b $20,X\n\n#_0CC30D: DEX\n#_0CC30E: DEX\n#_0CC30F: BPL .next_dp\n\n; ---------------------------------------------------------\n\n#_0CC311: LDX.w #$0000\n#_0CC314: TXA\n\n.next_sram\n#_0CC315: STA.l $7EF000,X\n#_0CC319: STA.l $7EF100,X\n#_0CC31D: STA.l $7EF200,X\n#_0CC321: STA.l $7EF300,X\n#_0CC325: STA.l $7EF400,X\n\n#_0CC329: INX\n#_0CC32A: INX\n#_0CC32B: CPX.w #$0100\n#_0CC32E: BNE .next_sram\n\n; ---------------------------------------------------------\n\n#_0CC330: SEP #$30\n\n#_0CC332: LDA.b #$01\n#_0CC334: STA.b $10\n#_0CC336: STA.w $04AA\n\n#_0CC339: STZ.b $11\n\n#_0CC33B: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Intro_InitializeTriforcePolyThread", + "code": "Intro_InitializeTriforcePolyThread:\n#_0CC33C: LDA.b #$08\n#_0CC33E: STA.w $0AA4\n\n#_0CC341: JSL LoadCommonSprites_long\n#_0CC345: JSR TriforceInitializePolyhedralModule\n\n#_0CC348: LDA.b #$01\n#_0CC34A: STA.w $1E10\n#_0CC34D: STA.w $1E11\n#_0CC350: STA.w $1E12\n\n#_0CC353: LDA.b #$00\n#_0CC355: STA.w $1E18\n#_0CC358: STA.w $1E19\n#_0CC35B: STA.w $1E1A\n\n#_0CC35E: LDA.b #$01\n#_0CC360: STA.w $1E14\n\n#_0CC363: LDA.b #$02\n#_0CC365: STA.w $1E1C\n\n#_0CC368: LDA.b #$0F\n#_0CC36A: STA.b $13\n\n#_0CC36C: INC.b $11\n\n#_0CC36E: RTL", + "file": "bank_0C.asm" + }, + { + "name": "TriforceInitializePolyhedralModule", + "code": "TriforceInitializePolyhedralModule:\n#_0CC36F: JSL Polyhedral_InitializeThread\n#_0CC373: JSR LoadTriforceSpritePalette\n\n#_0CC376: LDA.b #$90\n#_0CC378: STA.b $FF\n\n#_0CC37A: LDA.b #$FF\n#_0CC37C: STA.w $1F02\n\n#_0CC37F: LDA.b #$20\n#_0CC381: STA.w $1F06\n#_0CC384: STA.w $1F07\n#_0CC387: STA.w $1F08\n\n#_0CC38A: LDA.b #$A0\n#_0CC38C: STA.w $1F04\n\n#_0CC38F: LDA.b #$60\n#_0CC391: STA.w $1F05\n\n#_0CC394: LDA.b #$01\n#_0CC396: STA.w $1F01\n#_0CC399: STA.w $1F03\n#_0CC39C: STA.w $012A\n#_0CC39F: STA.w $1F00\n\n; ---------------------------------------------------------\n\n#_0CC3A2: LDX.b #$0F\n\n.clear_next\n#_0CC3A4: STZ.w $1E00,X\n#_0CC3A7: STZ.w $1E10,X\n#_0CC3AA: STZ.w $1E20,X\n#_0CC3AD: STZ.w $1E30,X\n#_0CC3B0: STZ.w $1E40,X\n#_0CC3B3: STZ.w $1E50,X\n#_0CC3B6: STZ.w $1E60,X\n\n#_0CC3B9: DEX\n#_0CC3BA: BPL .clear_next\n\n; ---------------------------------------------------------\n\n#_0CC3BC: RTS", + "file": "bank_0C.asm" + }, + { + "name": "LoadTriforceSpritePalette", + "code": "LoadTriforceSpritePalette:\n#_0CC3BD: REP #$20\n\n#_0CC3BF: LDA.l Palettes_Triforce+0\n#_0CC3C3: STA.l $7EC6A0\n\n#_0CC3C7: LDA.l Palettes_Triforce+2\n#_0CC3CB: STA.l $7EC6A2\n\n#_0CC3CF: LDA.l Palettes_Triforce+4\n#_0CC3D3: STA.l $7EC6A4\n\n#_0CC3D7: LDA.l Palettes_Triforce+6\n#_0CC3DB: STA.l $7EC6A6\n\n#_0CC3DF: LDA.l Palettes_Triforce+8\n#_0CC3E3: STA.l $7EC6A8\n\n#_0CC3E7: LDA.l Palettes_Triforce+10\n#_0CC3EB: STA.l $7EC6AA\n\n#_0CC3EF: LDA.l Palettes_Triforce+12\n#_0CC3F3: STA.l $7EC6AC\n\n#_0CC3F7: LDA.l Palettes_Triforce+14\n#_0CC3FB: STA.l $7EC6AE\n\n#_0CC3FF: SEP #$30\n\n#_0CC401: INC.b $15\n\n#_0CC403: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_HandleAllTriforceAnimations", + "code": "Intro_HandleAllTriforceAnimations:\n#_0CC404: PHB\n#_0CC405: PHK\n#_0CC406: PLB\n\n#_0CC407: INC.w $1E0A\n\n#_0CC40A: JSR Intro_AnimateTriforce\n#_0CC40D: JSR Scene_AnimateEverySprite\n\n#_0CC410: PLB\n\n#_0CC411: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Scene_AnimateEverySprite", + "code": "Scene_AnimateEverySprite:\n#_0CC412: LDA.b #$00\n#_0CC414: STA.w $1E08\n\n#_0CC417: LDA.b #$08\n#_0CC419: STA.w $1E09\n\n#_0CC41C: LDX.b #$07\n\n.next\n#_0CC41E: JSR Scene_AnimateSingleSprite\n\n#_0CC421: DEX\n#_0CC422: BPL .next\n\n#_0CC424: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Palettes_Triforce", + "code": "Palettes_Triforce:\n; #RRGGBB : 000000, 685000, 806800, 987800, B09000, C89800, E8B800, F8D000\n#_0CC425: dw $0000, $014D, $01B0, $01F3, $0256, $0279, $02FD, $035F\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_AnimateTriforce", + "code": "Intro_AnimateTriforce:\n#_0CC435: LDA.b #$01\n#_0CC437: STA.w $012A\n\n#_0CC43A: LDA.w $1F00\n#_0CC43D: BNE .exit\n\n#_0CC43F: JSR Intro_AnimateTriforceDanceMoves\n\n#_0CC442: LDA.b #$01\n#_0CC444: STA.w $1F00\n\n.exit\n#_0CC447: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_AnimateTriforceDanceMoves", + "code": "Intro_AnimateTriforceDanceMoves:\n#_0CC448: LDA.w $1E00\n#_0CC44B: JSL JumpTableLocal\n#_0CC44F: dw Intro_TriforceTinyDancers\n#_0CC451: dw Intro_TriforceSpinInwards\n#_0CC453: dw Intro_TriforceNearingMerge\n#_0CC455: dw Intro_MergeTriforceSpin\n#_0CC457: dw Intro_TriforceTerminateSpin\n#_0CC459: dw Intro_TriforceDoNothing\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TriforceTinyDancers", + "code": "Intro_TriforceTinyDancers:\n#_0CC45B: INC.w $1E01\n\n#_0CC45E: LDA.w $1E01\n#_0CC461: CMP.b #$40\n#_0CC463: BNE .delay\n\n#_0CC465: INC.w $1E00\n\n.delay\n#_0CC468: LDA.w $1F05\n#_0CC46B: CLC\n#_0CC46C: ADC.b #$05\n#_0CC46E: STA.w $1F05\n\n#_0CC471: LDA.w $1F04\n#_0CC474: CLC\n#_0CC475: ADC.b #$03\n#_0CC477: STA.w $1F04\n\n#_0CC47A: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TriforceSpinInwards", + "code": "Intro_TriforceSpinInwards:\n#_0CC47B: LDA.w $1F02\n#_0CC47E: CMP.b #$02\n#_0CC480: BCS .delay\n\n#_0CC482: STZ.w $1F02\n\n#_0CC485: INC.w $1E00\n\n#_0CC488: LDA.b #$40\n#_0CC48A: STA.w $1E01\n\n#_0CC48D: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TriforceNearingMerge", + "code": "Intro_TriforceNearingMerge:\n#_0CC4BA: DEC.w $1E01\n#_0CC4BD: BNE .delay\n\n#_0CC4BF: INC.w $1E00\n\n#_0CC4C2: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_MergeTriforceSpin", + "code": "Intro_MergeTriforceSpin:\n#_0CC4D6: LDA.w $1F05\n#_0CC4D9: CMP.b #$FA\n#_0CC4DB: BCC .spinning\n\n#_0CC4DD: LDA.w $1F04\n#_0CC4E0: CMP.b #$FC\n#_0CC4E2: BCC .spinning\n\n#_0CC4E4: INC.w $1E00\n\n#_0CC4E7: LDA.b #$20\n#_0CC4E9: STA.w $1E01\n\n#_0CC4EC: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TriforceTerminateSpin", + "code": "Intro_TriforceTerminateSpin:\n#_0CC500: STZ.w $1F05\n#_0CC503: STZ.w $1F04\n\n#_0CC506: DEC.w $1E01\n#_0CC509: BNE .exit\n\n#_0CC50B: INC.w $1E00\n\n#_0CC50E: LDA.b #$01\n#_0CC510: STA.w $1E15\n\n#_0CC513: LDA.b #$03\n#_0CC515: STA.w $1E1D\n\n#_0CC518: LDA.b #$10\n#_0CC51A: STA.b $1C\n\n#_0CC51C: LDA.b #$05\n#_0CC51E: STA.b $1D\n\n#_0CC520: LDA.b #$02\n#_0CC522: STA.b $99\n\n#_0CC524: LDA.b #$31\n#_0CC526: STA.b $9A\n\n#_0CC528: STZ.b $B0\n\n#_0CC52A: INC.b $15\n\n#_0CC52C: LDA.b #$03\n\n; ---------------------------------------------------------\n\n#Intro_SetStripesAndAdvance:\n#_0CC52E: STA.b $14\n\n#_0CC530: INC.b $11\n\n.exit\n#_0CC532: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Intro_TriforceDoNothing", + "code": "Intro_TriforceDoNothing:\n#_0CC533: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Scene_AnimateSingleSprite", + "code": "Scene_AnimateSingleSprite:\n#_0CC534: LDA.w $1E10,X\n#_0CC537: BEQ .exit\n#_0CC539: JSL JumpTableLocal\n#_0CC53D: dw .exit\n#_0CC53F: dw InitializeSceneSprite\n#_0CC541: dw AnimateSceneSprite\n\n; ---------------------------------------------------------\n\n.exit\n#_0CC543: RTS", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite", + "code": "InitializeSceneSprite:\n#_0CC544: LDA.w $1E18,X\n#_0CC547: JSL JumpTableLocal\n#_0CC54B: dw InitializeSceneSprite_Triangle\n#_0CC54D: dw SceneSprite_TitleCard\n#_0CC54F: dw InitializeSceneSprite_Copyright\n#_0CC551: dw InitializeSceneSprite_Sparkle\n#_0CC553: dw InitializeSceneSprite_TriforceRoomTriangle\n#_0CC555: dw InitializeSceneSprite_TriforceRoomTriangle\n#_0CC557: dw InitializeSceneSprite_TriforceRoomTriangle\n#_0CC559: dw InitializeSceneSprite_CreditsTriangle\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite", + "code": "AnimateSceneSprite:\n#_0CC55B: LDA.w $1E18,X\n#_0CC55E: JSL JumpTableLocal\n#_0CC562: dw AnimateSceneSprite_Triangle\n#_0CC564: dw SceneSprite_TitleCard\n#_0CC566: dw AnimateSceneSprite_Copyright\n#_0CC568: dw AnimateSceneSprite_Sparkle\n#_0CC56A: dw AnimateSceneSprite_TriforceRoomTriangle\n#_0CC56C: dw AnimateSceneSprite_TriforceRoomTriangle\n#_0CC56E: dw AnimateSceneSprite_TriforceRoomTriangle\n#_0CC570: dw AnimateSceneSprite_CreditsTriangle\n\n; =========================================================\n\npool InitializeSceneSprite_Triangle\n\n.pos_x_start\n#_0CC572: dw $FFDA\n#_0CC574: dw $005F\n#_0CC576: dw $00E6\n\n.pos_y_start\n#_0CC578: dw $00C8\n#_0CC57A: dw $FFBD\n#_0CC57C: dw $00C8\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite_Triangle", + "code": "InitializeSceneSprite_Triangle:\n#_0CC57E: TXA\n#_0CC57F: ASL A\n#_0CC580: TAY\n\n#_0CC581: LDA.w .pos_x_start+0,Y\n#_0CC584: STA.w $1E30,X\n\n#_0CC587: LDA.w .pos_x_start+1,Y\n#_0CC58A: STA.w $1E38,X\n\n#_0CC58D: LDA.w .pos_y_start+0,Y\n#_0CC590: STA.w $1E48,X\n\n#_0CC593: LDA.w .pos_y_start+1,Y\n#_0CC596: STA.w $1E50,X\n\n#_0CC599: LDA.w IntroTriangleSpeedX,X\n#_0CC59C: CLC\n#_0CC59D: ADC.w $1E58,X\n#_0CC5A0: STA.w $1E58,X\n\n#_0CC5A3: LDA.w IntroTriangleSpeedY,X\n#_0CC5A6: CLC\n#_0CC5A7: ADC.w $1E60,X\n#_0CC5AA: STA.w $1E60,X\n\n#_0CC5AD: INC.w $1E10,X\n\n#_0CC5B0: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_Triangle", + "code": "AnimateSceneSprite_Triangle:\n#_0CC5B1: JSR AnimateSceneSprite_DrawTriangle\n#_0CC5B4: JSR AnimateSceneSprite_MoveTriangle\n\n#_0CC5B7: LDA.w $1E00\n#_0CC5BA: JSL JumpTableLocal\n#_0CC5BE: dw IntroTriangle_MoveIntoPlace\n#_0CC5C0: dw IntroTriangle_MoveIntoPlace\n#_0CC5C2: dw IntroTriangle_MoveIntoPlace\n#_0CC5C4: dw IntroTriangle_MoveIntoPlace\n#_0CC5C6: dw IntroTriangle_MoveIntoPlace\n#_0CC5C8: dw IntroTriangle_StopMoving\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "IntroTriangleSpeedX", + "code": "IntroTriangleSpeedX:\n#_0CC5CA: db 1\n#_0CC5CB: db 0\n#_0CC5CC: db -1\n", + "file": "bank_0C.asm" + }, + { + "name": "IntroTriangleSpeedY", + "code": "IntroTriangleSpeedY:\n#_0CC5CD: db -1\n#_0CC5CE: db 1\n#_0CC5CF: db -1\n\n; =========================================================\n\npool IntroTriangle_MoveIntoPlace\n\n.target_x\n#_0CC5D0: db $4B\n#_0CC5D1: db $5F\n#_0CC5D2: db $75\n\n.target_y\n#_0CC5D3: db $58\n#_0CC5D4: db $30\n#_0CC5D5: db $58\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "IntroTriangle_MoveIntoPlace", + "code": "IntroTriangle_MoveIntoPlace:\n#_0CC5D6: LDA.w $1E0A\n#_0CC5D9: AND.b #$1F\n#_0CC5DB: BNE .dont_accel\n\n#_0CC5DD: LDA.w IntroTriangleSpeedX,X\n#_0CC5E0: CLC\n#_0CC5E1: ADC.w $1E58,X\n#_0CC5E4: STA.w $1E58,X\n\n#_0CC5E7: LDA.w IntroTriangleSpeedY,X\n#_0CC5EA: CLC\n#_0CC5EB: ADC.w $1E60,X\n#_0CC5EE: STA.w $1E60,X\n\n.dont_accel\n#_0CC5F1: LDA.w .target_x,X\n#_0CC5F4: CMP.w $1E30,X\n#_0CC5F7: BNE .dont_reset_speed\n\n#_0CC5F9: STZ.w $1E58,X\n\n.dont_reset_speed\n#_0CC5FC: LDA.w .target_y,X\n#_0CC5FF: CMP.w $1E48,X\n#_0CC602: BNE .exit\n\n#_0CC604: STZ.w $1E60,X\n\n.exit\n#_0CC607: RTS", + "file": "bank_0C.asm" + }, + { + "name": "IntroTriangle_StopMoving", + "code": "IntroTriangle_StopMoving:\n#_0CC608: STZ.w $1E58,X\n#_0CC60B: STZ.w $1E60,X\n\n#_0CC60E: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_DrawTriangle", + "code": "AnimateSceneSprite_DrawTriangle:\n#_0CC70F: LDA.b #$10\n#_0CC711: STA.b $06\n#_0CC713: STZ.b $07\n\n#_0CC715: CPX.b #$02\n#_0CC717: BEQ .left_side\n\n#_0CC719: LDA.b #.rightside_objects>>0\n#_0CC71B: STA.b $08\n\n#_0CC71D: LDA.b #.rightside_objects>>8\n#_0CC71F: STA.b $09\n\n#_0CC721: BRA .continue\n\n\n.left_side\n#_0CC723: LDA.b #.leftside_objects>>0\n#_0CC725: STA.b $08\n\n#_0CC727: LDA.b #.leftside_objects>>8\n#_0CC729: STA.b $09\n\n.continue\n#_0CC72B: JSR AnimateSceneSprite_AddObjectsToOAMBuffer\n\n#_0CC72E: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_DrawTriforceRoomTriangle", + "code": "AnimateSceneSprite_DrawTriforceRoomTriangle:\n#_0CC82F: LDA.b #$10\n#_0CC831: STA.b $06\n#_0CC833: STZ.b $07\n\n#_0CC835: CPX.b #$02\n#_0CC837: BEQ .decrementing\n\n#_0CC839: LDA.b #.rightside_objects>>0\n#_0CC83B: STA.b $08\n\n#_0CC83D: LDA.b #.rightside_objects>>8\n#_0CC83F: STA.b $09\n\n#_0CC841: BRA .continue\n\n; ---------------------------------------------------------\n\n.decrementing\n#_0CC843: LDA.b #.leftside_objects>>0\n#_0CC845: STA.b $08\n\n#_0CC847: LDA.b #.leftside_objects>>8\n#_0CC849: STA.b $09\n\n.continue\n#_0CC84B: JSR AnimateSceneSprite_AddObjectsToOAMBuffer\n\n#_0CC84E: RTS", + "file": "bank_0C.asm" + }, + { + "name": "SceneSprite_TitleCard", + "code": "SceneSprite_TitleCard:\n#_0CC84F: RTS", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite_Copyright", + "code": "InitializeSceneSprite_Copyright:\n#_0CC850: LDA.b #$4C\n#_0CC852: STA.w $1E30,X\n#_0CC855: STZ.w $1E38,X\n\n#_0CC858: LDA.b #$B8\n#_0CC85A: STA.w $1E48,X\n\n#_0CC85D: STZ.w $1E50,X\n\n#_0CC860: INC.w $1E10,X\n\n#_0CC863: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_Copyright", + "code": "AnimateSceneSprite_Copyright:\n#_0CC864: JSR AnimateSceneSprite_DrawCopyright\n\n#_0CC867: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_DrawCopyright", + "code": "AnimateSceneSprite_DrawCopyright:\n#_0CC8D0: LDA.b #$0D\n#_0CC8D2: STA.b $06\n#_0CC8D4: STZ.b $07\n\n#_0CC8D6: LDA.b #.groups>>0\n#_0CC8D8: STA.b $08\n\n#_0CC8DA: LDA.b #.groups>>8\n#_0CC8DC: STA.b $09\n\n#_0CC8DE: JSR AnimateSceneSprite_AddObjectsToOAMBuffer\n\n#_0CC8E1: RTS", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite_Sparkle", + "code": "InitializeSceneSprite_Sparkle:\n#_0CC8E2: LDA.w $1E0A\n\n#_0CC8E5: LSR A\n#_0CC8E6: LSR A\n#_0CC8E7: LSR A\n#_0CC8E8: LSR A\n#_0CC8E9: LSR A\n\n#_0CC8EA: AND.b #$03\n#_0CC8EC: TAY\n\n#_0CC8ED: LDA.w .position_x,Y\n#_0CC8F0: STA.w $1E30,X\n\n#_0CC8F3: LDA.w .position_y,Y\n#_0CC8F6: STA.w $1E48,X\n\n#_0CC8F9: INC.w $1E10,X\n\n#_0CC8FC: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_Sparkle", + "code": "AnimateSceneSprite_Sparkle:\n#_0CC90D: JSR AnimateSceneSprite_DrawSparkle\n\n#_0CC910: LDA.w $1E0A\n#_0CC913: LSR A\n#_0CC914: LSR A\n#_0CC915: AND.b #$07\n#_0CC917: TAY\n\n#_0CC918: LDA.w .anim_step,Y\n#_0CC91B: STA.w $1E20,X\n\n#_0CC91E: LDA.w $1E0A\n#_0CC921: LSR A\n#_0CC922: LSR A\n#_0CC923: LSR A\n#_0CC924: LSR A\n#_0CC925: LSR A\n#_0CC926: AND.b #$03\n#_0CC928: TAY\n\n#_0CC929: LDA.w .position_x,Y\n#_0CC92C: STA.w $1E30,X\n\n#_0CC92F: LDA.w .position_y,Y\n#_0CC932: STA.w $1E48,X\n\n#_0CC935: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_DrawSparkle", + "code": "AnimateSceneSprite_DrawSparkle:\n#_0CC956: LDA.b #$01\n#_0CC958: STA.b $06\n#_0CC95A: STZ.b $07\n\n#_0CC95C: LDA.w $1E20,X\n#_0CC95F: BMI .exit\n\n#_0CC961: ASL A\n#_0CC962: ASL A\n#_0CC963: ASL A\n\n#_0CC964: ADC.b #.groups>>0\n#_0CC966: STA.b $08\n\n#_0CC968: LDA.b #.groups>>8\n#_0CC96A: ADC.b #$00\n#_0CC96C: STA.b $09\n\n#_0CC96E: JSR AnimateSceneSprite_AddObjectsToOAMBuffer\n\n.exit\n#_0CC971: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_AddObjectsToOAMBuffer", + "code": "AnimateSceneSprite_AddObjectsToOAMBuffer:\n#_0CC972: LDA.w $1E30,X\n#_0CC975: STA.b $00\n\n#_0CC977: LDA.w $1E38,X\n#_0CC97A: STA.b $01\n\n#_0CC97C: LDA.w $1E48,X\n#_0CC97F: STA.b $02\n\n#_0CC981: LDA.w $1E50,X\n#_0CC984: STA.b $03\n\n#_0CC986: STZ.b $04\n#_0CC988: STZ.b $05\n\n; ---------------------------------------------------------\n\n#_0CC98A: PHX\n\n#_0CC98B: REP #$30\n\n#_0CC98D: LDY.w #$0000\n#_0CC990: LDX.w $1E08\n\n#_0CC993: LDA.b $06\n#_0CC995: ASL A\n#_0CC996: ASL A\n#_0CC997: ADC.w $1E08\n#_0CC99A: STA.w $1E08\n\n; ---------------------------------------------------------\n\n.next\n#_0CC99D: LDA.b ($08),Y\n#_0CC99F: CLC\n#_0CC9A0: ADC.b $00\n#_0CC9A2: STA.w $0000,X\n\n#_0CC9A5: AND.w #$0100\n#_0CC9A8: STA.b $0C\n\n#_0CC9AA: INY\n#_0CC9AB: INY\n\n#_0CC9AC: LDA.b ($08),Y\n#_0CC9AE: CLC\n#_0CC9AF: ADC.b $02\n#_0CC9B1: STA.w $0001,X\n\n#_0CC9B4: CLC\n#_0CC9B5: ADC.w #$0010\n#_0CC9B8: CMP.w #$0100\n#_0CC9BB: BCC .on_screen\n\n#_0CC9BD: LDA.w #$00F0\n#_0CC9C0: STA.w $0001,X\n\n.on_screen\n#_0CC9C3: INY\n#_0CC9C4: INY\n\n#_0CC9C5: LDA.b ($08),Y\n#_0CC9C7: EOR.b $04\n#_0CC9C9: STA.w $0002,X\n\n#_0CC9CC: PHX\n\n#_0CC9CD: TXA\n#_0CC9CE: SEC\n#_0CC9CF: SBC.w #$0800\n#_0CC9D2: LSR A\n#_0CC9D3: LSR A\n#_0CC9D4: TAX\n\n#_0CC9D5: SEP #$20\n\n#_0CC9D7: INY\n#_0CC9D8: INY\n#_0CC9D9: INY\n\n#_0CC9DA: LDA.b ($08),Y\n#_0CC9DC: ORA.b $0D\n#_0CC9DE: STA.w $0A20,X\n\n#_0CC9E1: PLX\n\n#_0CC9E2: REP #$20\n\n#_0CC9E4: INY\n\n#_0CC9E5: INX\n#_0CC9E6: INX\n#_0CC9E7: INX\n#_0CC9E8: INX\n\n#_0CC9E9: DEC.b $06\n#_0CC9EB: BNE .next\n\n; ---------------------------------------------------------\n\n#_0CC9ED: SEP #$30\n\n#_0CC9EF: PLX\n\n#_0CC9F0: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_MoveTriangle", + "code": "AnimateSceneSprite_MoveTriangle:\n#_0CC9F1: LDA.w $1E58,X\n#_0CC9F4: BEQ .no_x_speed\n\n#_0CC9F6: ASL A\n#_0CC9F7: ASL A\n#_0CC9F8: ASL A\n#_0CC9F9: ASL A\n\n#_0CC9FA: CLC\n#_0CC9FB: ADC.w $1E28,X\n#_0CC9FE: STA.w $1E28,X\n\n#_0CCA01: LDA.w $1E58,X\n#_0CCA04: PHP\n\n#_0CCA05: LSR A\n#_0CCA06: LSR A\n#_0CCA07: LSR A\n#_0CCA08: LSR A\n\n#_0CCA09: LDY.b #$00\n\n#_0CCA0B: PLP\n#_0CCA0C: BPL .positive_x\n\n#_0CCA0E: ORA.b #$F0\n#_0CCA10: DEY\n\n.positive_x\n#_0CCA11: ADC.w $1E30,X\n#_0CCA14: STA.w $1E30,X\n\n#_0CCA17: TYA\n#_0CCA18: ADC.w $1E38,X\n#_0CCA1B: STA.w $1E38,X\n\n; ---------------------------------------------------------\n\n.no_x_speed\n#_0CCA1E: LDA.w $1E60,X\n#_0CCA21: BEQ .exit\n\n#_0CCA23: ASL A\n#_0CCA24: ASL A\n#_0CCA25: ASL A\n#_0CCA26: ASL A\n\n#_0CCA27: CLC\n#_0CCA28: ADC.w $1E40,X\n#_0CCA2B: STA.w $1E40,X\n\n#_0CCA2E: LDA.w $1E60,X\n#_0CCA31: PHP\n\n#_0CCA32: LSR A\n#_0CCA33: LSR A\n#_0CCA34: LSR A\n#_0CCA35: LSR A\n\n#_0CCA36: LDY.b #$00\n\n#_0CCA38: PLP\n#_0CCA39: BPL .positive_y\n\n#_0CCA3B: ORA.b #$F0\n#_0CCA3D: DEY\n\n.positive_y\n#_0CCA3E: ADC.w $1E48,X\n#_0CCA41: STA.w $1E48,X\n\n#_0CCA44: TYA\n#_0CCA45: ADC.w $1E50,X\n#_0CCA48: STA.w $1E50,X\n\n.exit\n#_0CCA4B: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_TerminateTriangle", + "code": "AnimateSceneSprite_TerminateTriangle:\n#_0CCA4C: LDA.w $1E02\n#_0CCA4F: BEQ .exit\n\n#_0CCA51: PLA\n#_0CCA52: PLA\n\n.exit\n#_0CCA53: RTS", + "file": "bank_0C.asm" + }, + { + "name": "TriforceRoom_PrepGFXSlotForPoly", + "code": "TriforceRoom_PrepGFXSlotForPoly:\n#_0CCA54: LDA.b #$08\n#_0CCA56: STA.w $0AA4\n\n#_0CCA59: JSL LoadCommonSprites_long\n#_0CCA5D: JSR TriforceInitializePolyhedralModule\n\n#_0CCA60: LDA.b #$01\n#_0CCA62: STA.w $1E10\n#_0CCA65: STA.w $1E11\n#_0CCA68: STA.w $1E12\n\n#_0CCA6B: LDA.b #$04\n#_0CCA6D: STA.w $1E18\n\n#_0CCA70: LDA.b #$05\n#_0CCA72: STA.w $1E19\n\n#_0CCA75: LDA.b #$06\n#_0CCA77: STA.w $1E1A\n\n#_0CCA7A: LDA.b #$0F\n#_0CCA7C: STA.b $13\n\n#_0CCA7E: INC.b $11\n\n#_0CCA80: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Credits_InitializePolyhedral", + "code": "Credits_InitializePolyhedral:\n#_0CCA81: LDA.b #$08\n#_0CCA83: STA.w $0AA4\n\n#_0CCA86: JSL LoadCommonSprites_long\n#_0CCA8A: JSR TriforceInitializePolyhedralModule\n\n#_0CCA8D: STZ.w $1F02\n\n#_0CCA90: LDA.b #$01\n#_0CCA92: STA.w $1E10\n#_0CCA95: STA.w $1E11\n#_0CCA98: STA.w $1E12\n\n#_0CCA9B: LDA.b #$07\n#_0CCA9D: STA.w $1E18\n\n#_0CCAA0: LDA.b #$07\n#_0CCAA2: STA.w $1E19\n\n#_0CCAA5: LDA.b #$07\n#_0CCAA7: STA.w $1E1A\n\n#_0CCAAA: LDA.b #$0F\n#_0CCAAC: STA.b $13\n\n#_0CCAAE: INC.b $11\n\n#_0CCAB0: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AdvancePolyhedral", + "code": "AdvancePolyhedral:\n#_0CCAB1: PHB\n#_0CCAB2: PHK\n#_0CCAB3: PLB\n\n#_0CCAB4: JSR .do_advance\n#_0CCAB7: JSR Scene_AnimateEverySprite\n\n#_0CCABA: PLB\n\n#_0CCABB: RTL", + "file": "bank_0C.asm" + }, + { + "name": "IntroPolyhedral_StartUp", + "code": "IntroPolyhedral_StartUp:\n#_0CCAE9: LDA.w $1F02\n#_0CCAEC: SEC\n#_0CCAED: SBC.b #$02\n#_0CCAEF: STA.w $1F02\n\n#_0CCAF2: CMP.b #$02\n#_0CCAF4: BCS IntroPolyhedral_MoveGrowRotate\n\n#_0CCAF6: STZ.w $1F02\n\n#_0CCAF9: INC.w $1E00\n#_0CCAFC: INC.b $B0\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "IntroPolyhedral_MoveGrowRotate", + "code": "IntroPolyhedral_MoveGrowRotate:\n#_0CCAFE: LDA.b $B0\n#_0CCB00: CMP.b #$0A\n#_0CCB02: BCC .delay\n\n#_0CCB04: INC.w $1E00\n\n#_0CCB07: LDA.b #$05\n#_0CCB09: STA.w $1E61\n\n.delay\n#_0CCB0C: LDA.w $1F05\n#_0CCB0F: CLC\n#_0CCB10: ADC.b #$02\n#_0CCB12: STA.w $1F05\n\n#_0CCB15: LDA.w $1F04\n#_0CCB18: CLC\n#_0CCB19: ADC.b #$01\n#_0CCB1B: STA.w $1F04\n\n#_0CCB1E: RTS", + "file": "bank_0C.asm" + }, + { + "name": "IntroPolyhedral_MoveRotate", + "code": "IntroPolyhedral_MoveRotate:\n#_0CCB1F: LDA.b #$C0\n#_0CCB21: STA.w $1E0C\n\n#_0CCB24: LDA.b #$01\n#_0CCB26: STA.w $1E0D\n\n#_0CCB29: LDA.w $1F02\n#_0CCB2C: CMP.b #$80\n#_0CCB2E: BCS .negative\n\n#_0CCB30: ADC.b #$01\n#_0CCB32: STA.w $1F02\n\n#_0CCB35: BRA .just_spin\n\n; ---------------------------------------------------------\n\n.negative\n#_0CCB37: LDA.w $1F05\n#_0CCB3A: SEC\n#_0CCB3B: SBC.b #$0A\n#_0CCB3D: AND.b #$7F\n\n#_0CCB3F: CMP.b #$5C\n#_0CCB41: BCC .just_spin\n\n#_0CCB43: LDA.w $1F04\n#_0CCB46: SEC\n#_0CCB47: SBC.b #$0B\n\n#_0CCB49: CMP.b #$DC\n#_0CCB4B: BCC .just_spin\n\n; ---------------------------------------------------------\n\n#_0CCB4D: STZ.w $1F04\n#_0CCB50: STZ.w $1F05\n\n#_0CCB53: INC.b $B0\n#_0CCB55: INC.w $1E00\n\n#_0CCB58: LDA.b #$2C ; SFX2.2C\n#_0CCB5A: STA.w $012E\n\n#_0CCB5D: LDA.b #$FF ; RGB: #F8F8F8\n#_0CCB5F: STA.l $7EC6AE\n\n#_0CCB63: LDA.b #$7F\n#_0CCB65: STA.l $7EC6AF\n\n#_0CCB69: INC.b $15\n\n#_0CCB6B: LDA.b #$06\n#_0CCB6D: STA.w $1E01\n\n#_0CCB70: RTS", + "file": "bank_0C.asm" + }, + { + "name": "IntroPolyhedral_LockIntoPlace", + "code": "IntroPolyhedral_LockIntoPlace:\n#_0CCB84: DEC.w $1E01\n\n#_0CCB87: LDA.w $1E01\n#_0CCB8A: BNE EXIT_0CCBA1\n\n#_0CCB8C: LDA.l Palettes_Triforce+14\n#_0CCB90: STA.l $7EC6AE\n\n#_0CCB94: LDA.l Palettes_Triforce+15\n#_0CCB98: STA.l $7EC6AF\n\n#_0CCB9C: INC.b $15\n#_0CCB9E: INC.w $1E00\n\n; ---------------------------------------------------------\n\n#EXIT_0CCBA1:\n#_0CCBA1: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Credits_AnimateTheTriangles", + "code": "Credits_AnimateTheTriangles:\n#_0CCBA2: PHB\n#_0CCBA3: PHK\n#_0CCBA4: PLB\n\n#_0CCBA5: INC.w $1E0A\n\n#_0CCBA8: JSR CreditsTriangle_HandleRotation\n#_0CCBAB: JSR Scene_AnimateEverySprite\n\n#_0CCBAE: PLB\n\n#_0CCBAF: RTL", + "file": "bank_0C.asm" + }, + { + "name": "CreditsTriangle_HandleRotation", + "code": "CreditsTriangle_HandleRotation:\n#_0CCBB0: LDA.b #$01\n#_0CCBB2: STA.w $012A\n\n#_0CCBB5: LDA.w $1F00\n#_0CCBB8: BNE .exit\n\n#_0CCBBA: JSR CreditsTriangle_ApplyRotation\n\n#_0CCBBD: LDA.b #$01\n#_0CCBBF: STA.w $1F00\n\n.exit\n#_0CCBC2: RTS", + "file": "bank_0C.asm" + }, + { + "name": "CreditsTriangle_ApplyRotation", + "code": "CreditsTriangle_ApplyRotation:\n#_0CCBC3: LDA.w $1F05\n#_0CCBC6: CLC\n#_0CCBC7: ADC.b #$03\n#_0CCBC9: STA.w $1F05\n\n#_0CCBCC: LDA.w $1F04\n#_0CCBCF: CLC\n#_0CCBD0: ADC.b #$01\n#_0CCBD2: STA.w $1F04\n\n#_0CCBD5: RTS", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite_TriforceRoomTriangle", + "code": "InitializeSceneSprite_TriforceRoomTriangle:\n#_0CCBE8: TXA\n#_0CCBE9: ASL A\n#_0CCBEA: TAY\n\n#_0CCBEB: LDA.w .position_x+0,Y\n#_0CCBEE: STA.w $1E30,X\n\n#_0CCBF1: LDA.w .position_x+1,Y\n#_0CCBF4: STA.w $1E38,X\n\n#_0CCBF7: LDA.w .position_y+0,Y\n#_0CCBFA: STA.w $1E48,X\n\n#_0CCBFD: LDA.w .position_y+1,Y\n#_0CCC00: STA.w $1E50,X\n\n#_0CCC03: LDA.w .speed_x,X\n#_0CCC06: STA.w $1E58,X\n\n#_0CCC09: LDA.w .speed_y,X\n#_0CCC0C: STA.w $1E60,X\n\n#_0CCC0F: INC.w $1E10,X\n\n#_0CCC12: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_TriforceRoomTriangle", + "code": "AnimateSceneSprite_TriforceRoomTriangle:\n#_0CCC13: JSR AnimateSceneSprite_DrawTriforceRoomTriangle\n#_0CCC16: JSR AnimateSceneSprite_TerminateTriangle\n#_0CCC19: JSR AnimateSceneSprite_MoveTriangle\n\n#_0CCC1C: LDA.w $1E00\n#_0CCC1F: JSL JumpTableLocal\n#_0CCC23: dw AnimateTriforceRoomTriangle_Expand\n#_0CCC25: dw AnimateTriforceRoomTriangle_RotateInPlace\n#_0CCC27: dw AnimateTriforceRoomTriangle_Contract\n#_0CCC29: dw AnimateTriforceRoomTriangle_Stopped\n#_0CCC2B: dw AnimateTriforceRoomTriangle_Stopped\n\n; =========================================================\n\npool AnimateTriforceRoomTriangle_Expand\n\n.speed_x\n#_0CCC2D: db -1\n#_0CCC2E: db 0\n#_0CCC2F: db 1\n\n.speed_y\n#_0CCC30: db -1\n#_0CCC31: db -1\n#_0CCC32: db -1\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AnimateTriforceRoomTriangle_Expand", + "code": "AnimateTriforceRoomTriangle_Expand:\n#_0CCC33: LDA.w $1E0A\n#_0CCC36: AND.b #$07\n#_0CCC38: BNE .no_x_speed\n\n#_0CCC3A: LDA.w .speed_x,X\n#_0CCC3D: CLC\n#_0CCC3E: ADC.w $1E58,X\n#_0CCC41: STA.w $1E58,X\n\n.no_x_speed\n#_0CCC44: LDA.w $1E0A\n#_0CCC47: AND.b #$03\n#_0CCC49: BNE .exit\n\n#_0CCC4B: LDA.w .speed_y,X\n#_0CCC4E: CLC\n#_0CCC4F: ADC.w $1E60,X\n#_0CCC52: STA.w $1E60,X\n\n.exit\n#_0CCC55: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateTriforceRoomTriangle_RotateInPlace", + "code": "AnimateTriforceRoomTriangle_RotateInPlace:\n#_0CCC56: STZ.w $1E58,X\n#_0CCC59: STZ.w $1E60,X\n\n#_0CCC5C: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateTriforceRoomTriangle_Contract", + "code": "AnimateTriforceRoomTriangle_Contract:\n#_0CCC6B: LDA.w $1E0A\n#_0CCC6E: AND.b #$03\n#_0CCC70: BNE .no_x_speed\n\n#_0CCC72: JSR AnimateTriforceRoomTriangle_HandleContracting\n\n.no_x_speed\n#_0CCC75: LDA.w .target_x,X\n#_0CCC78: CMP.w $1E30,X\n#_0CCC7B: BNE .no_reset\n\n#_0CCC7D: STZ.w $1E58,X\n\n.no_reset\n#_0CCC80: LDA.w .target_y,X\n#_0CCC83: CMP.w $1E48,X\n#_0CCC86: BNE .exit\n\n#_0CCC88: STZ.w $1E60,X\n\n.exit\n#_0CCC8B: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateTriforceRoomTriangle_Stopped", + "code": "AnimateTriforceRoomTriangle_Stopped:\n#_0CCC8F: LDA.w $1E0C\n#_0CCC92: ORA.w $1E0D\n#_0CCC95: BNE .no_adjust\n\n#_0CCC97: LDA.w .position_y,X\n#_0CCC9A: STA.w $1E48,X\n\n#_0CCC9D: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateTriforceRoomTriangle_HandleContracting", + "code": "AnimateTriforceRoomTriangle_HandleContracting:\n#_0CCCB0: LDA.w .target_x,X\n#_0CCCB3: CMP.w $1E30,X\n#_0CCCB6: BCC .below_x\n\n#_0CCCB8: LDA.w .speed_y,X\n#_0CCCBB: BRA .continue_x\n\n.below_x\n#_0CCCBD: LDA.w .speed_x,X\n\n.continue_x\n#_0CCCC0: CLC\n#_0CCCC1: ADC.w $1E58,X\n#_0CCCC4: STA.w $1E58,X\n\n#_0CCCC7: CMP.w .limit_x\n#_0CCCCA: BNE .unequal_x\n\n#_0CCCCC: LDA.w .limit_x\n#_0CCCCF: INC A\n\n#_0CCCD0: BRA .set_x\n\n.unequal_x\n#_0CCCD2: CMP.w .limit_y\n#_0CCCD5: BNE .done_x\n\n#_0CCCD7: LDA.w .limit_y\n#_0CCCDA: DEC A\n\n.set_x\n#_0CCCDB: STA.w $1E58,X\n\n; ---------------------------------------------------------\n\n.done_x\n#_0CCCDE: LDA.w .target_y,X\n#_0CCCE1: CMP.w $1E48,X\n#_0CCCE4: BCC .below_y\n\n#_0CCCE6: LDA.w .speed_y,X\n#_0CCCE9: BRA .continue_y\n\n.below_y\n#_0CCCEB: LDA.w .speed_x,X\n\n.continue_y\n#_0CCCEE: CLC\n#_0CCCEF: ADC.w $1E60,X\n#_0CCCF2: STA.w $1E60,X\n\n#_0CCCF5: CMP.w .limit_x\n#_0CCCF8: BNE .unequal_y\n\n#_0CCCFA: LDA.w .limit_x\n#_0CCCFD: INC A\n#_0CCCFE: BRA .set_y\n\n.unequal_y\n#_0CCD00: CMP.w .limit_y\n#_0CCD03: BNE .exit\n\n#_0CCD05: LDA.w .limit_y\n#_0CCD08: DEC A\n\n.set_y\n#_0CCD09: STA.w $1E60,X\n\n.exit\n#_0CCD0C: RTS", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSceneSprite_CreditsTriangle", + "code": "InitializeSceneSprite_CreditsTriangle:\n#_0CCD19: TXA\n#_0CCD1A: ASL A\n#_0CCD1B: TAY\n\n#_0CCD1C: LDA.w .position_x+0,Y\n#_0CCD1F: STA.w $1E30,X\n\n#_0CCD22: LDA.w .position_x+1,Y\n#_0CCD25: STA.w $1E38,X\n\n#_0CCD28: LDA.w .position_y+0,Y\n#_0CCD2B: STA.w $1E48,X\n\n#_0CCD2E: LDA.w .position_y+1,Y\n#_0CCD31: STA.w $1E50,X\n\n#_0CCD34: INC.w $1E10,X\n\n#_0CCD37: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AnimateSceneSprite_CreditsTriangle", + "code": "AnimateSceneSprite_CreditsTriangle:\n#_0CCD3E: JSR LoadTriforceSpritePalette\n#_0CCD41: JSR AnimateSceneSprite_DrawTriforceRoomTriangle\n#_0CCD44: JSR AnimateSceneSprite_MoveTriangle\n\n#_0CCD47: LDA.b $11\n#_0CCD49: CMP.b #$24\n#_0CCD4B: BNE .reset\n\n#_0CCD4D: LDA.w $1E20,X\n#_0CCD50: CMP.b #$50\n#_0CCD52: BEQ .exit\n\n#_0CCD54: INC.w $1E20,X\n\n#_0CCD57: LDA.w .speed_x,X\n#_0CCD5A: CLC\n#_0CCD5B: ADC.w $1E58,X\n#_0CCD5E: STA.w $1E58,X\n\n#_0CCD61: LDA.w .speed_y,X\n#_0CCD64: CLC\n#_0CCD65: ADC.w $1E60,X\n#_0CCD68: STA.w $1E60,X\n\n.exit\n#_0CCD6B: RTS", + "file": "bank_0C.asm" + }, + { + "name": "UNREACHABLE_0CCD70", + "code": "UNREACHABLE_0CCD70:\n#_0CCD70: dw $0000\n#_0CCD72: dw $0054\n#_0CCD74: dw $00A8\n#_0CCD76: dw $FF8F\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_FairyY", + "code": "FileSelect_FairyY:\n#_0CCD78: db $4A ; File 1\n#_0CCD79: db $6A ; File 2\n#_0CCD7A: db $8A ; File 3\n#_0CCD7B: db $AF ; Copy\n#_0CCD7C: db $BF ; KILL\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Module01_FileSelect", + "code": "Module01_FileSelect:\n#_0CCD7D: STZ.b $E4\n#_0CCD7F: STZ.b $E5\n#_0CCD81: STZ.b $EA\n#_0CCD83: STZ.b $EB\n\n#_0CCD85: LDA.b $11\n#_0CCD87: JSL JumpTableLong\n#_0CCD8B: dl FileSelect_InitializeGFX\n#_0CCD8E: dl FileSelect_ReInitSaveFlagsAndEraseTriforce\n#_0CCD91: dl FileSelect_UploadFancyBackground\n#_0CCD94: dl FileSelect_TriggerStripesAndAdvance\n#_0CCD97: dl FileSelect_TriggerNameStripesAndAdvance\n#_0CCD9A: dl FileSelect_Main\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_InitializeGFX", + "code": "FileSelect_InitializeGFX:\n#_0CCD9D: JSL EnableForceBlank\n\n#_0CCDA1: STZ.w $012A\n#_0CCDA4: STZ.w $1F0C\n\n#_0CCDA7: LDA.b #$0B ; SONG 0B\n#_0CCDA9: STA.w $012C\n\n#_0CCDAC: INC.b $11\n\n#_0CCDAE: LDA.b #$02\n#_0CCDB0: STA.w $0AA9\n\n#_0CCDB3: LDA.b #$06\n#_0CCDB5: STA.w $0AB6\n#_0CCDB8: STA.w $0710\n\n#_0CCDBB: JSL Palettes_Load_UnderworldSet\n#_0CCDBF: JSL Palettes_Load_OWBG3\n\n#_0CCDC3: LDA.b #$00\n#_0CCDC5: STA.w $0AB2\n\n#_0CCDC8: JSL Palettes_Load_HUD\n\n#_0CCDCC: STZ.w $0202\n\n#_0CCDCF: LDA.b #$01\n#_0CCDD1: STA.w $0AA4\n\n#_0CCDD4: LDA.b #$23\n#_0CCDD6: STA.w $0AA1\n\n#_0CCDD9: LDA.b #$51\n#_0CCDDB: STA.w $0AA2\n\n#_0CCDDE: JSL LoadDefaultGraphics\n#_0CCDE2: JSL InitializeTilesets\n#_0CCDE6: JSL LoadFileSelectGraphics\n\n#_0CCDEA: JSL Intro_InitializeSRAMWRAM\n\n#_0CCDEE: JML DecompressEnemyDamageSubclasses\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_ReInitSaveFlagsAndEraseTriforce", + "code": "FileSelect_ReInitSaveFlagsAndEraseTriforce:\n#_0CCDF2: LDX.b #$05\n\n.clear_next\n#_0CCDF4: STZ.b $BF,X\n\n#_0CCDF6: DEX\n#_0CCDF7: BPL .clear_next\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_EraseTriforce", + "code": "FileSelect_EraseTriforce:\n#_0CCDF9: LDA.b #$80\n#_0CCDFB: STA.w $0710\n\n#_0CCDFE: JSL EnableForceBlank\n#_0CCE02: JSL EraseTilemaps_triforce\n#_0CCE06: JSL Palettes_LoadForFileSelect\n\n#_0CCE0A: INC.b $15\n#_0CCE0C: INC.b $11\n\n#_0CCE0E: RTL", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_UploadLinoleum", + "code": "FileSelect_UploadLinoleum:\n#_0CCE1B: LDA.w #$0010\n#_0CCE1E: STA.w $1002\n\n#_0CCE21: LDA.w #$FF07\n#_0CCE24: STA.w $1004\n\n#_0CCE27: STZ.b $00\n\n#_0CCE29: LDX.w #$0000\n\n.next\n#_0CCE2C: LDA.b $00\n#_0CCE2E: PHA\n\n#_0CCE2F: AND.w #$0020\n#_0CCE32: LSR A\n#_0CCE33: LSR A\n#_0CCE34: LSR A\n#_0CCE35: LSR A\n#_0CCE36: TAY\n\n#_0CCE37: LDA.w .pointers,Y\n#_0CCE3A: STA.b $02\n\n#_0CCE3C: PLA\n#_0CCE3D: AND.w #$0001\n#_0CCE40: ASL A\n#_0CCE41: TAY\n\n#_0CCE42: LDA.b ($02),Y\n#_0CCE44: STA.w $1006,X\n\n#_0CCE47: INX\n#_0CCE48: INX\n\n#_0CCE49: INC.b $00\n\n#_0CCE4B: LDA.b $00\n#_0CCE4D: CMP.w #$0400\n#_0CCE50: BNE .next\n\n#_0CCE52: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_UploadFancyBackground", + "code": "FileSelect_UploadFancyBackground:\n#_0CCE53: PHB\n#_0CCE54: PHK\n#_0CCE55: PLB\n\n#_0CCE56: REP #$30\n\n#_0CCE58: JSR FileSelect_UploadLinoleum\n\n; ---------------------------------------------------------\n\n#_0CCE5B: LDY.w #$00DE\n\n.next\n#_0CCE5E: LDA.w FancyBackgroundTileMap,Y\n#_0CCE61: STA.w $1806,Y\n\n#_0CCE64: INX\n#_0CCE65: INX\n\n#_0CCE66: DEY\n#_0CCE67: DEY\n#_0CCE68: BPL .next\n\n; ---------------------------------------------------------\n\n#_0CCE6A: LDA.w #$1103\n#_0CCE6D: STA.b $00\n\n#_0CCE6F: LDA.w #$0011\n#_0CCE72: STA.b $02\n\n.next_stripe\n#_0CCE74: LDA.b $00\n#_0CCE76: XBA\n#_0CCE77: STA.w $1006,X\n\n#_0CCE7A: XBA\n#_0CCE7B: CLC\n#_0CCE7C: ADC.w #$0020\n#_0CCE7F: STA.b $00\n\n#_0CCE81: INX\n#_0CCE82: INX\n\n#_0CCE83: LDA.w #$3240\n#_0CCE86: STA.w $1006,X\n\n#_0CCE89: INX\n#_0CCE8A: INX\n\n#_0CCE8B: LDA.w #$347F\n#_0CCE8E: STA.w $1006,X\n\n#_0CCE91: INX\n#_0CCE92: INX\n#_0CCE93: DEC.b $02\n\n#_0CCE95: BPL .next_stripe\n\n; ---------------------------------------------------------\n\n#_0CCE97: SEP #$20\n\n#_0CCE99: LDA.b #$FF\n#_0CCE9B: STA.w $1006,X\n\n#_0CCE9E: SEP #$10\n\n#_0CCEA0: INC.b $11\n\n#_0CCEA2: JMP.w FileSelect_TriggerTheStripes\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_TriggerStripesAndAdvance", + "code": "FileSelect_TriggerStripesAndAdvance:\n#_0CCEA5: LDA.w $0B9D\n#_0CCEA8: STA.b $C8\n\n.advance_submodule\n#_0CCEAA: INC.b $11\n\n#_0CCEAC: LDA.b #$06\n#_0CCEAE: STA.b $14\n\n#_0CCEB0: RTL", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_Main", + "code": "FileSelect_Main:\n#_0CCEBD: PHB\n#_0CCEBE: PHK\n#_0CCEBF: PLB\n\n#_0CCEC0: JSL FileSelect_HandleInput\n\n#_0CCEC4: JMP.w FileSelect_TriggerTheStripes\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_SetUpNamesStripes", + "code": "FileSelect_SetUpNamesStripes:\n#_0CCEC7: PHB\n#_0CCEC8: PHK\n#_0CCEC9: PLB\n\n#_0CCECA: REP #$10\n\n#_0CCECC: LDX.w #$00FD\n\n.next\n#_0CCECF: LDA.w FileSelectNamesTilemap-1,X\n#_0CCED2: STA.w $1001,X\n\n#_0CCED5: DEX\n#_0CCED6: BNE .next\n\n; ---------------------------------------------------------\n\n#_0CCED8: SEP #$10\n\n#_0CCEDA: PLB\n\n#_0CCEDB: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_HandleInput", + "code": "FileSelect_HandleInput:\n#_0CCEDC: LDA.b $C8\n#_0CCEDE: CMP.b #$03\n#_0CCEE0: BCS .not_on_a_file\n\n#_0CCEE2: STA.w $0B9D\n\n.not_on_a_file\n#_0CCEE5: REP #$30\n\n#_0CCEE7: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.check_next_file\n#_0CCEEA: STX.b $00\n\n#_0CCEEC: LDA.l SaveFileCopyOffsets,X\n#_0CCEF0: TAX\n\n#_0CCEF1: LDA.l $7003E5,X\n#_0CCEF5: CMP.w #$55AA\n#_0CCEF8: BNE .no_name\n\n#_0CCEFA: PHX\n\n#_0CCEFB: LDX.b $00\n\n#_0CCEFD: LDA.w #$0001\n#_0CCF00: STA.b $BF,X\n\n#_0CCF02: PLX\n\n#_0CCF03: LDA.w #FileSelect_DrawLink_offset_y+0\n#_0CCF06: STA.b $04\n\n#_0CCF08: LDA.w #FileSelect_DrawLink_offset_y+1\n#_0CCF0B: STA.b $02\n\n#_0CCF0D: PHX\n\n#_0CCF0E: JSR FileSelect_DrawLink\n#_0CCF11: JSR FileSelect_DrawDeaths\n\n#_0CCF14: PLX\n\n#_0CCF15: JSR FileSelect_CopyNameToStripes\n\n.no_name\n#_0CCF18: LDX.b $00\n#_0CCF1A: INX\n#_0CCF1B: INX\n#_0CCF1C: CPX.w #$0006\n#_0CCF1F: BCC .check_next_file\n\n; ---------------------------------------------------------\n\n#_0CCF21: SEP #$30\n\n#_0CCF23: LDX.b $C8\n\n#_0CCF25: LDA.b #$1C\n#_0CCF27: STA.b $00\n\n#_0CCF29: LDA.w FileSelect_FairyY,X\n#_0CCF2C: STA.b $01\n\n#_0CCF2E: JSR FileSelect_DrawFairy\n\n#_0CCF31: LDY.b #$02\n\n#_0CCF33: LDA.b $F6\n#_0CCF35: AND.b #$C0\n\n#_0CCF37: ORA.b $F4\n#_0CCF39: AND.b #$FC\n#_0CCF3B: BEQ .exit\n\n#_0CCF3D: AND.b #$2C\n#_0CCF3F: BEQ .didnt_change_selection\n\n#_0CCF41: AND.b #$08\n#_0CCF43: BEQ .pressed_down\n\n; ---------------------------------------------------------\n\n#_0CCF45: LDA.b #$20 ; SFX3.20\n#_0CCF47: STA.w $012F\n\n#_0CCF4A: DEC.b $C8\n#_0CCF4C: BPL .proceed_to_exit\n\n#_0CCF4E: LDA.b #$04\n#_0CCF50: STA.b $C8\n\n#_0CCF52: BRA .proceed_to_exit\n\n; ---------------------------------------------------------\n\n.pressed_down\n#_0CCF54: LDA.b #$20 ; SFX3.20\n#_0CCF56: STA.w $012F\n\n#_0CCF59: INC.b $C8\n\n#_0CCF5B: LDA.b $C8\n#_0CCF5D: CMP.b #$05\n#_0CCF5F: BNE .proceed_to_exit\n\n#_0CCF61: STZ.b $C8\n\n.proceed_to_exit\n#_0CCF63: BRA .exit\n\n; ---------------------------------------------------------\n\n.didnt_change_selection\n#_0CCF65: LDA.b #$2C ; SFX2.2C\n#_0CCF67: STA.w $012E\n\n#_0CCF6A: LDA.b $C8\n#_0CCF6C: CMP.b #$03\n#_0CCF6E: BEQ .copy_file\n\n#_0CCF70: BCS .kill_file\n\n#_0CCF72: LDA.b $C8\n#_0CCF74: ASL A\n#_0CCF75: TAX\n\n#_0CCF76: LDA.b $BF,X\n#_0CCF78: BEQ .no_file_there\n\n#_0CCF7A: LDA.b #$F1 ; SONG F1 - fade\n#_0CCF7C: STA.w $012C\n\n#_0CCF7F: STZ.b $C9\n\n#_0CCF81: REP #$20\n\n#_0CCF83: LDA.l SaveFileCopyOffsets,X\n#_0CCF87: STA.b $00\n\n#_0CCF89: LDA.b $C8\n#_0CCF8B: ASL A\n#_0CCF8C: INC A\n#_0CCF8D: INC A\n#_0CCF8E: STA.l $701FFE\n\n#_0CCF92: SEP #$20\n\n#_0CCF94: BRL CopySaveToWRAM\n\n; ---------------------------------------------------------\n\n.no_file_there\n#_0CCF97: STZ.b $C9\n\n#_0CCF99: LDY.b #$04\n#_0CCF9B: BRA .set_module\n\n; ---------------------------------------------------------\n\n.copy_file\n#_0CCF9D: LDY.b #$02\n#_0CCF9F: BRA .check_for_some_file\n\n.kill_file\n#_0CCFA1: LDY.b #$03\n\n.check_for_some_file\n#_0CCFA3: LDA.b $BF\n#_0CCFA5: ORA.b $C1\n#_0CCFA7: ORA.b $C3\n#_0CCFA9: BNE .dont_error_beep\n\n#_0CCFAB: LDA.b #$3C ; SFX2.3C\n#_0CCFAD: STA.w $012E\n\n#_0CCFB0: BRA .exit\n\n.dont_error_beep\n#_0CCFB2: STZ.b $C8\n\n; ---------------------------------------------------------\n\n.set_module\n#_0CCFB4: STY.b $10\n\n#_0CCFB6: STZ.b $11\n#_0CCFB8: STZ.b $B0\n\n.exit\n#_0CCFBA: RTL", + "file": "bank_0C.asm" + }, + { + "name": "CopySaveToWRAM", + "code": "CopySaveToWRAM:\n#_0CCFBB: LDX.b #$0F\n\n#_0CCFBD: LDA.b #$00\n#_0CCFBF: STA.l $001AC0,X\n#_0CCFC3: STA.l $001AE0,X\n\n#_0CCFC7: LDA.b #$00\n#_0CCFC9: STA.l $001AB0,X\n#_0CCFCD: STA.l $001AD0,X\n#_0CCFD1: STA.l $001AF0,X\n\n#_0CCFD5: PHB\n\n#_0CCFD6: LDA.b #$7E\n#_0CCFD8: PHA\n#_0CCFD9: PLB\n\n; ---------------------------------------------------------\n\n#_0CCFDA: REP #$30\n\n#_0CCFDC: LDY.w #$0000\n#_0CCFDF: LDX.b $00\n\n.copy_next\n#_0CCFE1: LDA.l $700000,X\n#_0CCFE5: STA.w $7EF000,Y\n\n#_0CCFE8: LDA.l $700100,X\n#_0CCFEC: STA.w $7EF100,Y\n\n#_0CCFEF: LDA.l $700200,X\n#_0CCFF3: STA.w $7EF200,Y\n\n#_0CCFF6: LDA.l $700300,X\n#_0CCFFA: STA.w $7EF300,Y\n\n#_0CCFFD: LDA.l $700400,X\n#_0CD001: STA.w $7EF400,Y\n\n#_0CD004: INX\n#_0CD005: INX\n\n#_0CD006: INY\n#_0CD007: INY\n#_0CD008: CPY.w #$0100\n#_0CD00B: BNE .copy_next\n\n; ---------------------------------------------------------\n\n#_0CD00D: PLB\n\n#_0CD00E: LDA.w #$0007\n#_0CD011: STA.l $7EC00D\n#_0CD015: STA.l $7EC013\n\n#_0CD019: LDA.w #$0000\n#_0CD01C: STA.l $7EC00F\n#_0CD020: STA.l $7EC015\n\n#_0CD024: LDA.w #$6040 ; VRAM $C080\n#_0CD027: STA.w $0219\n\n#_0CD02A: LDA.w #$4841\n#_0CD02D: STA.w $021D\n\n#_0CD030: LDA.w #$007F\n#_0CD033: STA.w $021F\n\n#_0CD036: LDA.w #$FFFF\n#_0CD039: STA.w $0221\n\n; ---------------------------------------------------------\n\n#_0CD03C: SEP #$30\n\n#_0CD03E: LDA.b #$80\n#_0CD040: STA.w $0204\n\n#_0CD043: LDA.b #$05\n#_0CD045: STA.b $10\n#_0CD047: STZ.b $11\n\n#_0CD049: STZ.w $010E\n\n#_0CD04C: STZ.w $0710\n\n#_0CD04F: STZ.w $0AB2\n\n#_0CD052: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Module02_CopyFile", + "code": "Module02_CopyFile:\n#_0CD053: STZ.w $0B9D\n\n#_0CD056: LDA.b $11\n#_0CD058: JSL JumpTableLong\n#_0CD05C: dl FileSelect_EraseTriforce\n#_0CD05F: dl FileSelect_UploadFancyBackground\n#_0CD062: dl CopyFile_FindFileIndices\n#_0CD065: dl CopyFile_ChooseSelection\n#_0CD068: dl CopyFile_ChooseTarget\n#_0CD06B: dl CopyFile_ConfirmSelection\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_FindFileIndices", + "code": "CopyFile_FindFileIndices:\n#_0CD06E: LDA.b #$07\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_FindFileIndices", + "code": "KILLFile_FindFileIndices:\n#_0CD070: JSR Intro_SetStripesAndAdvance\n\n#_0CD073: LDA.b #$0F\n#_0CD075: STA.b $13\n\n#_0CD077: STZ.w $0710\n\n#_0CD07A: LDX.b #$FE\n\n.find_file\n#_0CD07C: INX\n#_0CD07D: INX\n\n#_0CD07E: LDA.b $BF,X\n#_0CD080: BEQ .find_file\n\n; ---------------------------------------------------------\n\n#_0CD082: TXA\n#_0CD083: LSR A\n#_0CD084: STA.b $C8\n\n#_0CD086: RTL", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_ChooseSelection", + "code": "CopyFile_ChooseSelection:\n#_0CD087: PHB\n#_0CD088: PHK\n#_0CD089: PLB\n\n#_0CD08A: JSR CopyFile_SelectionAndBlinker\n\n#_0CD08D: LDA.b $11\n#_0CD08F: CMP.b #$03\n#_0CD091: BNE FileSelect_TriggerTheStripes\n\n#_0CD093: LDA.b $1A\n#_0CD095: AND.b #$30\n#_0CD097: BNE FileSelect_TriggerTheStripes\n\n#_0CD099: JSR FilePicker_DeleteHeaderStripe\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_TriggerTheStripes", + "code": "FileSelect_TriggerTheStripes:\n#_0CD09C: LDA.b #$01\n#_0CD09E: STA.b $14\n\n#_0CD0A0: PLB\n\n#_0CD0A1: RTL", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_ChooseTarget", + "code": "CopyFile_ChooseTarget:\n#_0CD0A2: PHB\n#_0CD0A3: PHK\n#_0CD0A4: PLB\n\n#_0CD0A5: JSR CopyFile_TargetSelectionAndBlink\n\n#_0CD0A8: LDA.b $11\n#_0CD0AA: CMP.b #$04\n#_0CD0AC: BNE .trigger_stripes\n\n#_0CD0AE: LDA.b $1A\n#_0CD0B0: AND.b #$30\n#_0CD0B2: BNE FileSelect_TriggerTheStripes\n\n#_0CD0B4: JSR FilePicker_DeleteHeaderStripe\n\n.trigger_stripes\n#_0CD0B7: BRA FileSelect_TriggerTheStripes\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_ConfirmSelection", + "code": "CopyFile_ConfirmSelection:\n#_0CD0B9: PHB\n#_0CD0BA: PHK\n#_0CD0BB: PLB\n\n#_0CD0BC: JSR CopyFile_HandleConfirmation\n\n#_0CD0BF: JMP.w FileSelect_TriggerTheStripes\n\n; =========================================================\n\npool FilePicker_DeleteHeaderStripe\n\n.offset\n#_0CD0C2: dw $0004, $001E\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "FilePicker_DeleteHeaderStripe", + "code": "FilePicker_DeleteHeaderStripe:\n#_0CD0C6: REP #$30\n\n#_0CD0C8: LDX.w #$0002\n\n#_0CD0CB: LDA.w #$00A9\n\n.next_stripe\n#_0CD0CE: LDY.w #$000B\n#_0CD0D1: STY.b $00\n\n#_0CD0D3: LDY.w .offset,X\n\n.next_byte\n#_0CD0D6: STA.w $1002,Y\n\n#_0CD0D9: INY\n#_0CD0DA: INY\n\n#_0CD0DB: DEC.b $00\n#_0CD0DD: BNE .next_byte\n\n#_0CD0DF: DEX\n#_0CD0E0: DEX\n#_0CD0E1: BPL .next_stripe\n\n#_0CD0E3: SEP #$30\n\n#_0CD0E5: RTS", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_FairyIndent", + "code": "CopyFile_FairyIndent:\n#_0CD0E6: db $24 ; File 1\n#_0CD0E7: db $24 ; File 2\n#_0CD0E8: db $24 ; File 3\n#_0CD0E9: db $1C ; Exit\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_FairyHeight", + "code": "CopyFile_FairyHeight:\n#_0CD0EA: db $57\n#_0CD0EB: db $6F\n#_0CD0EC: db $87\n#_0CD0ED: db $BF\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_CopyToMenuStripe", + "code": "CopyFile_CopyToMenuStripe:\n#_0CD0EE: dw $6761, $0E40 ; VRAM $C2CE | 16 bytes | Fixed horizontal\n#_0CD0F2: dw $00A9\n\n#_0CD0F4: dw $8761, $0E40 ; VRAM $C30E | 16 bytes | Fixed horizontal\n#_0CD0F8: dw $00A9\n\n#_0CD0FA: dw $C761, $0E40 ; VRAM $C38E | 16 bytes | Fixed horizontal\n#_0CD0FE: dw $00A9\n\n#_0CD100: dw $E761, $0E40 ; VRAM $C3CE | 16 bytes | Fixed horizontal\n#_0CD104: dw $00A9\n\n#_0CD106: dw $3011, $0100 ; VRAM $2260 | 2 bytes | Horizontal\n#_0CD10A: dw $3583\n\n#_0CD10C: dw $3111, $1440 ; VRAM $2262 | 22 bytes | Fixed horizontal\n#_0CD110: dw $3585\n\n#_0CD112: dw $3C11, $0100 ; VRAM $2278 | 2 bytes | Horizontal\n#_0CD116: dw $3584\n\n#_0CD118: dw $5011, $0EC0 ; VRAM $22A0 | 16 bytes | Fixed vertical\n#_0CD11C: dw $3586\n\n#_0CD11E: dw $5C11, $0EC0 ; VRAM $22B8 | 16 bytes | Fixed vertical\n#_0CD122: dw $3596\n\n#_0CD124: dw $5012, $0100 ; VRAM $24A0 | 2 bytes | Horizontal\n#_0CD128: dw $3593\n\n#_0CD12A: dw $5112, $1440 ; VRAM $24A2 | 22 bytes | Fixed horizontal\n#_0CD12E: dw $3595\n\n#_0CD130: dw $5C12, $0100 ; VRAM $24B8 | 2 bytes | Horizontal\n#_0CD134: dw $3594\n\n#_0CD136: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetStripeOffsetAdjuster", + "code": "CopyFile_TargetStripeOffsetAdjuster:\n#_0CD137: db $00 ; File 1\n#_0CD138: db $0C ; File 2\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_NameStripeBufferOffset", + "code": "CopyFile_NameStripeBufferOffset:\n#_0CD139: dw $003C ; File 1\n#_0CD13B: dw $0064 ; File 2\n#_0CD13D: dw $008C ; File 3\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_SelectionAndBlinker", + "code": "CopyFile_SelectionAndBlinker:\n#_0CD13F: REP #$10\n\n#_0CD141: LDX.w #$00AC\n#_0CD144: STX.w $1000\n\n.next_header_stripe\n#_0CD147: LDA.w CopyFile_HeaderStripe,X\n#_0CD14A: STA.w $1002,X\n\n#_0CD14D: DEX\n#_0CD14E: BPL .next_header_stripe\n\n; ---------------------------------------------------------\n\n#_0CD150: REP #$20\n\n#_0CD152: LDX.w #$0000\n\n.next_file_name\n#_0CD155: STX.b $00\n\n#_0CD157: LDA.b $BF,X\n#_0CD159: AND.w #$0001\n#_0CD15C: BEQ .skip_this_file\n\n#_0CD15E: LDA.l SaveFileCopyOffsets,X\n#_0CD162: TXY\n#_0CD163: TAX\n\n#_0CD164: LDA.w CopyFile_NameStripeBufferOffset,Y\n#_0CD167: TAY\n\n#_0CD168: LDA.w #$0006\n#_0CD16B: STA.b $02\n\n.next_letter\n#_0CD16D: LDA.l $7003D9,X\n#_0CD171: CLC\n#_0CD172: ADC.w #$1800\n#_0CD175: STA.w $1002,Y\n\n#_0CD178: CLC\n#_0CD179: ADC.w #$0010\n#_0CD17C: STA.w $1016,Y\n\n#_0CD17F: INX\n#_0CD180: INX\n\n#_0CD181: INY\n#_0CD182: INY\n\n#_0CD183: DEC.b $02\n#_0CD185: BNE .next_letter\n\n.skip_this_file\n#_0CD187: LDX.b $00\n#_0CD189: INX\n#_0CD18A: INX\n#_0CD18B: CPX.w #$0006\n#_0CD18E: BCC .next_file_name\n\n; ---------------------------------------------------------\n\n#_0CD190: SEP #$30\n\n#_0CD192: LDX.b $C8\n\n#_0CD194: LDA.w CopyFile_FairyIndent,X\n#_0CD197: STA.b $00\n\n#_0CD199: LDA.w CopyFile_FairyHeight,X\n#_0CD19C: STA.b $01\n\n#_0CD19E: JSR FileSelect_DrawFairy\n\n#_0CD1A1: LDA.b $F6\n#_0CD1A3: AND.b #$C0\n\n#_0CD1A5: ORA.b $F4\n#_0CD1A7: AND.b #$FC\n#_0CD1A9: BNE .made_input\n\n#_0CD1AB: BRL .exit\n\n.made_input\n#_0CD1AE: AND.b #$2C\n#_0CD1B0: BEQ .made_selection\n\n#_0CD1B2: AND.b #$08\n#_0CD1B4: BEQ .didnt_press_up\n\n#_0CD1B6: LDX.b $C8\n#_0CD1B8: DEX\n#_0CD1B9: BMI .select_exit\n\n; ---------------------------------------------------------\n\n.prev_file_check\n#_0CD1BB: TXA\n#_0CD1BC: ASL A\n#_0CD1BD: TAY\n\n#_0CD1BE: LDA.w $00BF,Y\n#_0CD1C1: BNE .set_new_selection\n\n#_0CD1C3: DEX\n#_0CD1C4: BPL .prev_file_check\n\n.select_exit\n#_0CD1C6: LDX.b #$03\n#_0CD1C8: BRA .set_new_selection\n\n; ---------------------------------------------------------\n\n.didnt_press_up\n#_0CD1CA: LDX.b $C8\n#_0CD1CC: INX\n#_0CD1CD: CPX.b #$03\n#_0CD1CF: BCS .went_too_far\n\n.next_file_check\n#_0CD1D1: TXA\n#_0CD1D2: ASL A\n#_0CD1D3: TAY\n\n#_0CD1D4: LDA.w $00BF,Y\n#_0CD1D7: BNE .set_new_selection\n\n#_0CD1D9: INX\n#_0CD1DA: CPX.b #$03\n#_0CD1DC: BNE .next_file_check\n\n#_0CD1DE: BRA .set_new_selection\n\n.went_too_far\n#_0CD1E0: CPX.b #$04\n#_0CD1E2: BNE .set_new_selection\n\n#_0CD1E4: LDX.b #$00\n#_0CD1E6: BRA .next_file_check\n\n.set_new_selection\n#_0CD1E8: LDA.b #$20 ; SFX3.20\n#_0CD1EA: STA.w $012F\n\n#_0CD1ED: STX.b $C8\n#_0CD1EF: BRA .exit\n\n; ---------------------------------------------------------\n\n.made_selection\n#_0CD1F1: LDA.b #$2C ; SFX2.2C\n#_0CD1F3: STA.w $012E\n\n#_0CD1F6: LDA.b $C8\n#_0CD1F8: CMP.b #$03\n#_0CD1FA: BEQ ReturnToFileSelect\n\n; ---------------------------------------------------------\n\n#_0CD1FC: ASL A\n#_0CD1FD: STA.b $CC\n#_0CD1FF: STZ.b $CD\n\n#_0CD201: LDX.b #$49\n\n.next_target_stripe\n#_0CD203: LDA.w CopyFile_CopyToMenuStripe-1,X\n#_0CD206: STA.w $1035,X\n\n#_0CD209: DEX\n#_0CD20A: BNE .next_target_stripe\n\n; ---------------------------------------------------------\n\n#_0CD20C: LDX.b $C8\n#_0CD20E: CPX.b #$02\n#_0CD210: BEQ .selected_file_3\n\n#_0CD212: LDA.w CopyFile_TargetStripeOffsetAdjuster,X\n#_0CD215: TAX\n\n#_0CD216: LDA.b #$62\n#_0CD218: STA.w $1036,X\n#_0CD21B: STA.w $103C,X\n\n#_0CD21E: LDA.b #$27\n#_0CD220: STA.w $1037,X\n\n#_0CD223: CLC\n#_0CD224: ADC.b #$20\n#_0CD226: STA.w $103D,X\n\n.selected_file_3\n#_0CD229: INC.b $11\n\n#_0CD22B: BRA .reset_cursor\n\n; =========================================================\n\n#ReturnToFileSelect:\n#_0CD22D: LDA.b #$01\n#_0CD22F: STA.b $10\n\n#_0CD231: LDA.b #$01\n#_0CD233: STA.b $11\n\n#_0CD235: STZ.b $B0\n\n.reset_cursor\n#_0CD237: STZ.b $C8\n\n.exit\n#_0CD239: RTS", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_ConfirmationStripes", + "code": "CopyFile_ConfirmationStripes:\n#_0CD23A: dw $B461, $0E40 ; VRAM $C368 | 16 bytes | Fixed horizontal\n#_0CD23E: dw $00A9\n\n#_0CD240: dw $D461, $0E40 ; VRAM $C3A8 | 16 bytes | Fixed horizontal\n#_0CD244: dw $00A9\n\n#_0CD246: dw $C662, $0D00 ; VRAM $C58C | 14 bytes | Horizontal\n#_0CD24A: dw $1802, $180E, $180F, $1828, $18A9, $180E, $180A\n\n#_0CD258: dw $E662, $0D00 ; VRAM $C5CC | 14 bytes | Horizontal\n#_0CD25C: dw $1812, $181E, $181F, $1838, $18A9, $181E, $181A\n\n#_0CD26A: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetFairyX", + "code": "CopyFile_TargetFairyX:\n#_0CD26B: db $8C ; 1\n#_0CD26C: db $8C ; 2\n#_0CD26D: db $1C ; Exit\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetFairyY", + "code": "CopyFile_TargetFairyY:\n#_0CD26E: db $67 ; 1\n#_0CD26F: db $7F ; 2\n#_0CD270: db $BF ; Exit\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_BufferOffset", + "code": "CopyFile_BufferOffset:\n#_0CD271: dw $0038\n#_0CD273: dw $0060\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetNumerals", + "code": "CopyFile_TargetNumerals:\n#_0CD275: dw $18E7 ; 1\n#_0CD277: dw $18E8 ; 2\n#_0CD279: dw $18E9 ; 3\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetSelectionAndBlink", + "code": "CopyFile_TargetSelectionAndBlink:\n#_0CD27B: LDA.b #$04\n#_0CD27D: LDX.b #$01\n\n.next_index_setup\n#_0CD27F: CMP.b $CC\n#_0CD281: BEQ .dont_replace_index\n\n#_0CD283: STA.b $CA,X\n\n#_0CD285: DEX\n\n.dont_replace_index\n#_0CD286: DEC A\n#_0CD287: DEC A\n#_0CD288: BPL .next_index_setup\n\n; ---------------------------------------------------------\n\n#_0CD28A: REP #$10\n\n#_0CD28C: LDX.w #$0084\n#_0CD28F: STX.b $0E\n\n.next_header_stripe\n#_0CD291: LDA.w CopyFile_TargetHeaderStripes,X\n#_0CD294: STA.w $1002,X\n\n#_0CD297: DEX\n#_0CD298: BPL .next_header_stripe\n\n; ---------------------------------------------------------\n\n#_0CD29A: REP #$20\n\n#_0CD29C: LDX.w #$0000\n#_0CD29F: STX.b $04\n\n.next_filename_stripe\n#_0CD2A1: STX.b $00\n\n#_0CD2A3: CPX.b $CC\n#_0CD2A5: BEQ .skip_this_file\n\n#_0CD2A7: LDY.b $04\n\n#_0CD2A9: LDA.w CopyFile_BufferOffset,Y\n#_0CD2AC: TAY\n\n#_0CD2AD: INC.b $04\n#_0CD2AF: INC.b $04\n\n#_0CD2B1: LDA.w CopyFile_TargetNumerals,X\n#_0CD2B4: STA.w $1002,Y\n\n#_0CD2B7: CLC\n#_0CD2B8: ADC.w #$0010\n#_0CD2BB: STA.w $1016,Y\n\n#_0CD2BE: LDA.b $BF,X\n#_0CD2C0: BEQ .skip_this_file\n\n#_0CD2C2: LDA.w #$0006\n#_0CD2C5: STA.b $02\n\n#_0CD2C7: LDA.l SaveFileCopyOffsets,X\n#_0CD2CB: TAX\n\n.next_letter\n#_0CD2CC: LDA.l $7003D9,X\n#_0CD2D0: CLC\n#_0CD2D1: ADC.w #$1800\n#_0CD2D4: STA.w $1006,Y\n\n#_0CD2D7: CLC\n#_0CD2D8: ADC.w #$0010\n#_0CD2DB: STA.w $101A,Y\n\n#_0CD2DE: INX\n#_0CD2DF: INX\n\n#_0CD2E0: INY\n#_0CD2E1: INY\n\n#_0CD2E2: DEC.b $02\n#_0CD2E4: BNE .next_letter\n\n.skip_this_file\n#_0CD2E6: LDX.b $00\n#_0CD2E8: INX\n#_0CD2E9: INX\n#_0CD2EA: CPX.w #$0006\n#_0CD2ED: BCC .next_filename_stripe\n\n; ---------------------------------------------------------\n\n#_0CD2EF: LDX.b $0E\n#_0CD2F1: STX.w $1000\n\n#_0CD2F4: SEP #$30\n\n#_0CD2F6: LDX.b $C8\n\n#_0CD2F8: LDA.w CopyFile_TargetFairyX,X\n#_0CD2FB: STA.b $00\n\n#_0CD2FD: LDA.w CopyFile_TargetFairyY,X\n#_0CD300: STA.b $01\n\n#_0CD302: JSR FileSelect_DrawFairy\n\n#_0CD305: LDA.b $F6\n#_0CD307: AND.b #$C0\n\n#_0CD309: ORA.b $F4\n#_0CD30B: AND.b #$FC\n#_0CD30D: BEQ .exit\n\n#_0CD30F: AND.b #$2C\n#_0CD311: BEQ .made_selection\n\n#_0CD313: AND.b #$08\n#_0CD315: BEQ .didnt_press_up\n\n#_0CD317: LDX.b $C8\n#_0CD319: DEX\n#_0CD31A: BPL .select_exit\n\n#_0CD31C: LDX.b #$02\n#_0CD31E: BRA .select_exit\n\n.didnt_press_up\n#_0CD320: LDX.b $C8\n#_0CD322: INX\n#_0CD323: CPX.b #$03\n#_0CD325: BCC .select_exit\n\n#_0CD327: LDX.b #$00\n\n; ---------------------------------------------------------\n\n.select_exit\n#_0CD329: LDA.b #$20 ; SFX3.20\n#_0CD32B: STA.w $012F\n\n#_0CD32E: STX.b $C8\n#_0CD330: BRA .exit\n\n; ---------------------------------------------------------\n\n.made_selection\n#_0CD332: LDA.b #$2C ; SFX2.2C\n#_0CD334: STA.w $012E\n\n#_0CD337: LDX.b $C8\n#_0CD339: CPX.b #$02\n#_0CD33B: BEQ .selecting_exit\n\n#_0CD33D: LDA.b $CA,X\n#_0CD33F: STA.b $CA\n#_0CD341: STZ.b $CB\n\n#_0CD343: LDX.b #$30\n\n.next_confirm_stripe\n#_0CD345: LDA.w CopyFile_ConfirmationStripes,X\n#_0CD348: STA.w $1036,X\n\n#_0CD34B: DEX\n#_0CD34C: BPL .next_confirm_stripe\n\n#_0CD34E: LDA.b $C8\n#_0CD350: BNE .dont_reposition_deleted_name\n\n#_0CD352: LDA.b #$62\n#_0CD354: STA.w $1036\n#_0CD357: STA.w $103C\n\n#_0CD35A: LDA.b #$14\n#_0CD35C: STA.w $1037\n\n#_0CD35F: CLC\n#_0CD360: ADC.b #$20\n#_0CD362: STA.w $103D\n\n.dont_reposition_deleted_name\n#_0CD365: INC.b $11\n#_0CD367: BRA .reset_selection\n\n; ---------------------------------------------------------\n\n.selecting_exit\n#_0CD369: JSR ReturnToFileSelect\n\n.reset_selection\n#_0CD36C: STZ.b $C8\n\n.exit\n#_0CD36E: RTS", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_HandleConfirmation", + "code": "CopyFile_HandleConfirmation:\n#_0CD371: LDX.b $C8\n\n#_0CD373: LDA.b #$1C\n#_0CD375: STA.b $00\n\n#_0CD377: LDA.w .fairy_y,X\n#_0CD37A: STA.b $01\n\n#_0CD37C: JSR FileSelect_DrawFairy\n\n#_0CD37F: LDA.b $F6\n#_0CD381: AND.b #$C0\n\n#_0CD383: ORA.b $F4\n#_0CD385: AND.b #$FC\n#_0CD387: BEQ .exit\n\n#_0CD389: AND.b #$2C\n#_0CD38B: BEQ .made_selection\n\n#_0CD38D: AND.b #$24\n#_0CD38F: BEQ .select_or_down\n\n#_0CD391: LDA.b #$20 ; SFX3.20\n#_0CD393: STA.w $012F\n\n#_0CD396: INC.b $C8\n\n#_0CD398: LDA.b $C8\n#_0CD39A: CMP.b #$02\n#_0CD39C: BCC .exit\n\n#_0CD39E: STZ.b $C8\n#_0CD3A0: BRA .exit\n\n; ---------------------------------------------------------\n\n.select_or_down\n#_0CD3A2: LDA.b #$20 ; SFX3.20\n#_0CD3A4: STA.w $012F\n\n#_0CD3A7: DEC.b $C8\n#_0CD3A9: BPL .exit\n\n#_0CD3AB: LDA.b #$01\n#_0CD3AD: STA.b $C8\n#_0CD3AF: BRA .exit\n\n; ---------------------------------------------------------\n\n.made_selection\n#_0CD3B1: LDA.b #$2C ; SFX2.2C\n#_0CD3B3: STA.w $012E\n\n#_0CD3B6: LDA.b $C8\n#_0CD3B8: BNE .decided_against_it\n\n#_0CD3BA: REP #$30\n\n#_0CD3BC: LDX.b $CA\n\n#_0CD3BE: LDA.l SaveFileCopyOffsets,X\n#_0CD3C2: TAY\n\n#_0CD3C3: LDX.b $CC\n\n#_0CD3C5: LDA.l SaveFileCopyOffsets,X\n#_0CD3C9: TAX\n\n#_0CD3CA: JSR CopyFile_CopyData\n\n#_0CD3CD: LDX.b $CA\n\n#_0CD3CF: LDA.w #$0001\n#_0CD3D2: STA.b $BF,X\n\n#_0CD3D4: SEP #$30\n\n; ---------------------------------------------------------\n\n.decided_against_it\n#_0CD3D6: JSR ReturnToFileSelect\n\n#_0CD3D9: STZ.b $C8\n\n.exit\n#_0CD3DB: RTS", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_CopyData", + "code": "CopyFile_CopyData:\n#_0CD3DC: SEP #$20\n\n#_0CD3DE: PHB\n\n#_0CD3DF: LDA.b #$70\n#_0CD3E1: PHA\n#_0CD3E2: PLB\n\n#_0CD3E3: REP #$20\n\n#_0CD3E5: LDA.w #$0080\n#_0CD3E8: STA.b $00\n\n.next\n#_0CD3EA: LDA.w $700000,X\n#_0CD3ED: STA.w $700000,Y\n\n#_0CD3F0: LDA.w $700100,X\n#_0CD3F3: STA.w $700100,Y\n\n#_0CD3F6: LDA.w $700200,X\n#_0CD3F9: STA.w $700200,Y\n\n#_0CD3FC: LDA.w $700300,X\n#_0CD3FF: STA.w $700300,Y\n\n#_0CD402: LDA.w $700400,X\n#_0CD405: STA.w $700400,Y\n\n#_0CD408: INY\n#_0CD409: INY\n\n#_0CD40A: INX\n#_0CD40B: INX\n\n#_0CD40C: DEC.b $00\n#_0CD40E: BNE .next\n\n; ---------------------------------------------------------\n\n#_0CD410: SEP #$20\n\n#_0CD412: PLB\n\n#_0CD413: REP #$20\n\n#_0CD415: RTS", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_FairyX", + "code": "KILLFile_FairyX:\n#_0CD416: db $24 ; File 1\n#_0CD417: db $24 ; File 2\n#_0CD418: db $24 ; File 3\n#_0CD419: db $1C ; Exit\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_FairyY", + "code": "KILLFile_FairyY:\n#_0CD41A: db $67 ; File 1\n#_0CD41B: db $7F ; File 2\n#_0CD41C: db $97 ; File 3\n#_0CD41D: db $BF ; Exit\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "KILL_OK_stripes", + "code": "KILL_OK_stripes:\n#_0CD41E: db $61,$A7,$40,$24,$A9,$00,$61,$C7\n#_0CD426: db $40,$24,$A9,$00,$62,$07,$40,$24\n#_0CD42E: db $A9,$00,$62,$27,$40,$24,$A9,$00\n#_0CD436: db $62,$C6,$00,$21,$04,$18,$21,$18\n#_0CD43E: db $00,$18,$22,$18,$04,$18,$A9,$18\n#_0CD446: db $23,$18,$07,$18,$AF,$18,$22,$18\n#_0CD44E: db $A9,$18,$0F,$18,$0B,$18,$00,$18\n#_0CD456: db $28,$18,$04,$18,$21,$18,$62,$E6\n#_0CD45E: db $00,$21,$14,$18,$31,$18,$10,$18\n#_0CD466: db $32,$18,$14,$18,$A9,$18,$33,$18\n#_0CD46E: db $17,$18,$BF,$18,$32,$18,$A9,$18\n#_0CD476: db $1F,$18,$1B,$18,$10,$18,$38,$18\n#_0CD47E: db $14,$18,$31,$18\n\n#_0CD482: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILL_OK_FileNameStripesAdjustment", + "code": "KILL_OK_FileNameStripesAdjustment:\n#_0CD483: db $00 ; File 1\n#_0CD484: db $0C ; File 2\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Module03_KILLFile", + "code": "Module03_KILLFile:\n#_0CD485: LDA.b $11\n#_0CD487: JSL JumpTableLong\n#_0CD48B: dl FileSelect_EraseTriforce\n#_0CD48E: dl FileSelect_UploadFancyBackground\n#_0CD491: dl KILLFile_SetUp\n#_0CD494: dl KILLFile_HandleSelection\n#_0CD497: dl KILLFile_HandleConfirmation\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_SetUp", + "code": "KILLFile_SetUp:\n#_0CD49A: LDA.b #$08\n\n#_0CD49C: JMP.w KILLFile_FindFileIndices\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_HandleSelection", + "code": "KILLFile_HandleSelection:\n#_0CD49F: PHB\n#_0CD4A0: PHK\n#_0CD4A1: PLB\n\n#_0CD4A2: LDA.b $C8\n#_0CD4A4: CMP.b #$03\n#_0CD4A6: BCS .selecting_exit\n\n#_0CD4A8: STA.w $0B9D\n\n.selecting_exit\n#_0CD4AB: JSR KILLFile_ChooseTarget\n\n#_0CD4AE: JMP.w FileSelect_TriggerTheStripes\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_HandleConfirmation", + "code": "KILLFile_HandleConfirmation:\n#_0CD4B1: PHB\n#_0CD4B2: PHK\n#_0CD4B3: PLB\n\n#_0CD4B4: JSR KILLFile_VerifyDeletion\n\n#_0CD4B7: JMP.w FileSelect_TriggerTheStripes\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_ChooseTarget", + "code": "KILLFile_ChooseTarget:\n#_0CD4BA: REP #$10\n\n#_0CD4BC: LDX.w #$00FD\n\n.next_blankname_stripe\n#_0CD4BF: LDA.w KILLFile_BlankNameStripes-1,X\n#_0CD4C2: STA.w $1001,X\n\n#_0CD4C5: DEX\n#_0CD4C6: BNE .next_blankname_stripe\n\n; ---------------------------------------------------------\n\n#_0CD4C8: REP #$20\n\n#_0CD4CA: LDX.w #$0000\n\n.next_filename_stripe\n#_0CD4CD: STX.b $00\n\n#_0CD4CF: LDA.b $BF,X\n#_0CD4D1: AND.w #$0001\n#_0CD4D4: BEQ .skip_this_file\n\n#_0CD4D6: LDA.l SaveFileCopyOffsets,X\n#_0CD4DA: TAX\n#_0CD4DB: JSR FileSelect_CopyNameToStripes\n\n.skip_this_file\n#_0CD4DE: LDX.b $00\n#_0CD4E0: INX\n#_0CD4E1: INX\n#_0CD4E2: CPX.w #$0006\n#_0CD4E5: BCC .next_filename_stripe\n\n; ---------------------------------------------------------\n\n#_0CD4E7: SEP #$30\n\n#_0CD4E9: LDX.b $C8\n\n#_0CD4EB: LDA.w KILLFile_FairyX,X\n#_0CD4EE: STA.b $00\n\n#_0CD4F0: LDA.w KILLFile_FairyY,X\n#_0CD4F3: STA.b $01\n\n#_0CD4F5: JSR FileSelect_DrawFairy\n\n; ---------------------------------------------------------\n\n#_0CD4F8: LDY.b #$02\n\n#_0CD4FA: LDA.b $F4\n#_0CD4FC: AND.b #$20\n#_0CD4FE: BNE .pressed_down_or_select\n\n#_0CD500: LDA.b $F4\n#_0CD502: AND.b #$0C\n#_0CD504: BEQ .check_for_pick\n\n#_0CD506: AND.b #$04\n#_0CD508: BNE .pressed_down_or_select\n\n#_0CD50A: LDA.b #$20 ; SFX3.20\n#_0CD50C: STA.w $012F\n\n#_0CD50F: LDY.b #$FE\n\n#_0CD511: LDX.b $C8\n#_0CD513: DEX\n#_0CD514: BMI .select_exit\n\n.check_prev_file\n#_0CD516: TXA\n#_0CD517: ASL A\n#_0CD518: TAY\n\n#_0CD519: LDA.w $00BF,Y\n#_0CD51C: BNE .check_for_pick\n\n#_0CD51E: DEX\n#_0CD51F: BPL .check_prev_file\n\n; ---------------------------------------------------------\n\n.select_exit\n#_0CD521: LDX.b #$03\n#_0CD523: BRA .check_for_pick\n\n; ---------------------------------------------------------\n\n.pressed_down_or_select\n#_0CD525: LDA.b #$20 ; SFX3.20\n#_0CD527: STA.w $012F\n\n#_0CD52A: LDX.b $C8\n#_0CD52C: INX\n#_0CD52D: CPX.b #$03\n#_0CD52F: BCS .not_on_file\n\n.check_next_file\n#_0CD531: TXA\n#_0CD532: ASL A\n#_0CD533: TAY\n\n#_0CD534: LDA.w $00BF,Y\n#_0CD537: BNE .check_for_pick\n\n#_0CD539: INX\n#_0CD53A: CPX.b #$03\n#_0CD53C: BNE .check_next_file\n\n#_0CD53E: BRA .check_for_pick\n\n.not_on_file\n#_0CD540: CPX.b #$04\n#_0CD542: BNE .check_for_pick\n\n#_0CD544: LDX.b #$00\n#_0CD546: BRA .check_next_file\n\n; ---------------------------------------------------------\n\n.check_for_pick\n#_0CD548: STX.b $C8\n\n#_0CD54A: LDA.b $F6\n#_0CD54C: AND.b #$C0\n\n#_0CD54E: ORA.b $F4\n#_0CD550: AND.b #$D0\n#_0CD552: BEQ .exit\n\n#_0CD554: LDA.b #$2C ; SFX2.2C\n#_0CD556: STA.w $012E\n\n#_0CD559: LDA.b $C8\n#_0CD55B: CMP.b #$03\n#_0CD55D: BEQ .picked_exit\n\n#_0CD55F: LDX.b #$64\n\n.next_ok\n#_0CD561: LDA.w KILL_OK_stripes,X\n#_0CD564: STA.w $1002,X\n\n#_0CD567: DEX\n#_0CD568: BPL .next_ok\n\n; ---------------------------------------------------------\n\n#_0CD56A: INC.b $11\n\n#_0CD56C: LDX.b $C8\n#_0CD56E: CPX.b #$02\n#_0CD570: BEQ .no_filename_stripe_adjustment\n\n#_0CD572: LDA.w KILL_OK_FileNameStripesAdjustment,X\n#_0CD575: TAX\n\n#_0CD576: LDA.b #$62\n#_0CD578: STA.w $1002,X\n#_0CD57B: STA.w $1008,X\n\n#_0CD57E: LDA.b #$67\n#_0CD580: STA.w $1003,X\n\n#_0CD583: CLC\n#_0CD584: ADC.b #$20\n#_0CD586: STA.w $1009,X\n\n.no_filename_stripe_adjustment\n#_0CD589: LDA.b $C8\n#_0CD58B: STA.b $B0\n\n#_0CD58D: STZ.b $C8\n#_0CD58F: BRA .exit\n\n; ---------------------------------------------------------\n\n.picked_exit\n#_0CD591: SEP #$30\n\n#_0CD593: JSR ReturnToFileSelect\n\n.exit\n#_0CD596: RTS", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_VerifyDeletion", + "code": "KILLFile_VerifyDeletion:\n#_0CD599: LDA.b $B0\n#_0CD59B: ASL A\n#_0CD59C: STA.b $00\n\n#_0CD59E: SEP #$30\n\n#_0CD5A0: LDX.b $C8\n\n#_0CD5A2: LDA.b #$1C\n#_0CD5A4: STA.b $00\n\n#_0CD5A6: LDA.w .fairy_pos_y,X\n#_0CD5A9: STA.b $01\n\n#_0CD5AB: JSR FileSelect_DrawFairy\n\n; ---------------------------------------------------------\n\n#_0CD5AE: LDY.b #$02\n\n#_0CD5B0: LDA.b $F4\n#_0CD5B2: AND.b #$2C\n#_0CD5B4: BEQ .not_selection_change_input\n\n#_0CD5B6: AND.b #$24\n#_0CD5B8: BNE .pressed_select_or_down\n\n#_0CD5BA: DEX\n#_0CD5BB: BRA .move_kiss_of_death\n\n.pressed_select_or_down\n#_0CD5BD: INX\n\n.move_kiss_of_death\n#_0CD5BE: TXA\n#_0CD5BF: AND.b #$01\n#_0CD5C1: STA.b $C8\n\n#_0CD5C3: LDA.b #$20 ; SFX3.20\n#_0CD5C5: STA.w $012F\n\n; ---------------------------------------------------------\n\n.not_selection_change_input\n#_0CD5C8: LDA.b $F6\n#_0CD5CA: AND.b #$C0\n\n#_0CD5CC: ORA.b $F4\n#_0CD5CE: AND.b #$D0\n#_0CD5D0: BEQ .exit\n\n#_0CD5D2: LDA.b #$2C ; SFX2.2C\n#_0CD5D4: STA.w $012E\n\n#_0CD5D7: LDA.b $C8\n#_0CD5D9: BNE .chickened_out\n\n#_0CD5DB: LDA.b #$22 ; SFX3.22\n#_0CD5DD: STA.w $012F\n#_0CD5E0: STZ.w $012E\n\n#_0CD5E3: REP #$30\n\n#_0CD5E5: LDA.b $B0\n#_0CD5E7: AND.w #$00FF\n#_0CD5EA: ASL A\n#_0CD5EB: TAX\n\n#_0CD5EC: STZ.b $BF,X\n\n#_0CD5EE: LDA.l SaveFileCopyOffsets,X\n#_0CD5F2: TAX\n\n; ---------------------------------------------------------\n\n#_0CD5F3: LDY.w #$0000\n#_0CD5F6: TYA\n\n.clear_next\n#_0CD5F7: STA.l $700000,X\n#_0CD5FB: STA.l $700100,X\n#_0CD5FF: STA.l $700200,X\n#_0CD603: STA.l $700300,X\n#_0CD607: STA.l $700400,X\n#_0CD60B: STA.l $700F00,X\n#_0CD60F: STA.l $701000,X\n#_0CD613: STA.l $701100,X\n#_0CD617: STA.l $701200,X\n#_0CD61B: STA.l $701300,X\n\n#_0CD61F: INX\n#_0CD620: INX\n\n#_0CD621: INY\n#_0CD622: INY\n#_0CD623: CPY.w #$0100\n#_0CD626: BNE .clear_next\n\n; ---------------------------------------------------------\n\n#_0CD628: SEP #$30\n\n.chickened_out\n#_0CD62A: JSR ReturnToFileSelect\n\n#_0CD62D: STZ.b $B0\n\n.exit\n#_0CD62F: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_CopyNameToStripes", + "code": "FileSelect_CopyNameToStripes:\n#_0CD63C: PHX\n\n#_0CD63D: LDY.b $00\n\n#_0CD63F: LDA.w .name_offset,Y\n#_0CD642: TAY\n\n#_0CD643: LDA.w #$0006\n#_0CD646: STA.b $02\n\n; ---------------------------------------------------------\n\n.next_character\n#_0CD648: LDA.l $7003D9,X\n#_0CD64C: CLC\n#_0CD64D: ADC.w #$1800\n#_0CD650: STA.w $1002,Y\n\n#_0CD653: CLC\n#_0CD654: ADC.w #$0010\n#_0CD657: STA.w $102C,Y\n\n#_0CD65A: INX\n#_0CD65B: INX\n\n#_0CD65C: INY\n#_0CD65D: INY\n\n#_0CD65E: DEC.b $02\n#_0CD660: BNE .next_character\n\n; ---------------------------------------------------------\n\n#_0CD662: PLX\n\n#_0CD663: LDY.w #$0001\n\n#_0CD666: LDA.l $70036C,X\n#_0CD66A: AND.w #$00FF\n#_0CD66D: LSR A\n#_0CD66E: LSR A\n#_0CD66F: LSR A\n#_0CD670: STA.b $02\n\n#_0CD672: LDX.b $00\n\n#_0CD674: LDY.w .hearts_offset,X\n#_0CD677: STY.b $04\n\n#_0CD679: LDA.w #$0520\n#_0CD67C: LDX.w #$000A\n\n; ---------------------------------------------------------\n\n.next_heart\n#_0CD67F: STA.w $1002,Y\n\n#_0CD682: INY\n#_0CD683: INY\n\n#_0CD684: DEX\n#_0CD685: BNE .same_row\n\n#_0CD687: PHA\n\n#_0CD688: LDA.b $04\n#_0CD68A: CLC\n#_0CD68B: ADC.w #$002A\n#_0CD68E: TAY\n\n#_0CD68F: PLA\n\n.same_row\n#_0CD690: DEC.b $02\n#_0CD692: BNE .next_heart\n\n#_0CD694: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_DrawLink", + "code": "FileSelect_DrawLink:\n#_0CD6AF: REP #$30\n\n#_0CD6B1: LDA.w #$0116\n#_0CD6B4: ASL A\n#_0CD6B5: STA.w $0100\n\n#_0CD6B8: LDA.b $00\n#_0CD6BA: AND.w #$00FF\n#_0CD6BD: TAX\n\n#_0CD6BE: LDA.l SaveFileCopyOffsets,X\n#_0CD6C2: STA.b $0E\n\n; ---------------------------------------------------------\n\n#_0CD6C4: SEP #$30\n\n#_0CD6C6: LDA.b $00\n#_0CD6C8: LSR A\n#_0CD6C9: TAY\n\n#_0CD6CA: LDA.w .oam_offset,Y\n#_0CD6CD: TAX\n\n#_0CD6CE: LDA.b ($04)\n#_0CD6D0: CLC\n#_0CD6D1: ADC.b #$0C\n#_0CD6D3: STA.w $0800,X\n#_0CD6D6: STA.w $0804,X\n\n#_0CD6D9: LDA.b ($02),Y\n#_0CD6DB: CLC\n#_0CD6DC: ADC.b #$FB\n#_0CD6DE: STA.w $0801,X\n\n#_0CD6E1: CLC\n#_0CD6E2: ADC.b #$08\n#_0CD6E4: STA.w $0805,X\n\n#_0CD6E7: LDA.w .sword_props,Y\n#_0CD6EA: STA.w $0803,X\n#_0CD6ED: STA.w $0807,X\n\n; ---------------------------------------------------------\n\n#_0CD6F0: PHY\n#_0CD6F1: PHX\n\n#_0CD6F2: REP #$10\n\n#_0CD6F4: LDX.b $0E\n\n#_0CD6F6: LDA.l $700359,X\n\n#_0CD6FA: SEP #$10\n\n#_0CD6FC: PLX\n\n#_0CD6FD: TAY\n#_0CD6FE: DEY\n#_0CD6FF: BPL .have_sword\n\n#_0CD701: LDA.b #$F0\n#_0CD703: STA.w $0801,X\n#_0CD706: STA.w $0805,X\n\n#_0CD709: INY\n\n.have_sword\n#_0CD70A: LDA.w .sword_gfx,Y\n#_0CD70D: STA.w $0802,X\n\n#_0CD710: CLC\n#_0CD711: ADC.b #$10\n#_0CD713: STA.w $0806,X\n\n; ---------------------------------------------------------\n\n#_0CD716: PLY\n\n#_0CD717: PHX\n#_0CD718: TXA\n\n#_0CD719: LSR A\n#_0CD71A: LSR A\n#_0CD71B: TAX\n\n#_0CD71C: LDA.b #$00\n#_0CD71E: STA.w $0A20,X\n#_0CD721: STA.w $0A21,X\n\n#_0CD724: PLA\n#_0CD725: CLC\n#_0CD726: ADC.b #$08\n#_0CD728: TAX\n\n#_0CD729: LDA.b ($04)\n#_0CD72B: CLC\n#_0CD72C: ADC.b #$FB\n#_0CD72E: STA.w $0800,X\n\n#_0CD731: LDA.b ($02),Y\n#_0CD733: CLC\n#_0CD734: ADC.b #$0A\n#_0CD736: STA.w $0801,X\n\n#_0CD739: LDA.w .shield_props,Y\n#_0CD73C: STA.w $0803,X\n\n; ---------------------------------------------------------\n\n#_0CD73F: PHY\n#_0CD740: PHX\n\n#_0CD741: REP #$10\n\n#_0CD743: LDX.b $0E\n\n#_0CD745: LDA.l $70035A,X\n\n#_0CD749: SEP #$10\n\n#_0CD74B: PLX\n\n#_0CD74C: TAY\n#_0CD74D: DEY\n#_0CD74E: BPL .have_shield\n\n#_0CD750: LDA.b #$F0\n#_0CD752: STA.w $0801,X\n\n#_0CD755: INY\n\n.have_shield\n#_0CD756: LDA.w .shield_gfx,Y\n#_0CD759: STA.w $0802,X\n\n#_0CD75C: PLY\n#_0CD75D: PHX\n\n#_0CD75E: TXA\n#_0CD75F: LSR A\n#_0CD760: LSR A\n#_0CD761: TAX\n\n#_0CD762: LDA.b #$02\n#_0CD764: STA.w $0A20,X\n\n#_0CD767: PLA\n#_0CD768: CLC\n#_0CD769: ADC.b #$04\n#_0CD76B: TAX\n\n#_0CD76C: LDA.b ($04)\n#_0CD76E: STA.w $0800,X\n#_0CD771: STA.w $0804,X\n\n#_0CD774: LDA.b #$00\n#_0CD776: STA.w $0802,X\n\n#_0CD779: LDA.b #$02\n#_0CD77B: STA.w $0806,X\n\n#_0CD77E: LDA.w .link_props,Y\n#_0CD781: STA.w $0803,X\n\n#_0CD784: ORA.b #$40\n#_0CD786: STA.w $0807,X\n\n#_0CD789: LDA.b ($02),Y\n#_0CD78B: STA.w $0801,X\n\n#_0CD78E: CLC\n#_0CD78F: ADC.b #$08\n#_0CD791: STA.w $0805,X\n\n#_0CD794: TXA\n#_0CD795: LSR A\n#_0CD796: LSR A\n#_0CD797: TAX\n\n#_0CD798: LDA.b #$02\n#_0CD79A: STA.w $0A20,X\n#_0CD79D: STA.w $0A21,X\n\n#_0CD7A0: REP #$30\n\n#_0CD7A2: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_DrawFairy", + "code": "FileSelect_DrawFairy:\n#_0CD7A5: LDA.b $00\n#_0CD7A7: STA.w $0800\n\n#_0CD7AA: LDA.b $01\n#_0CD7AC: STA.w $0801\n\n#_0CD7AF: PHX\n\n#_0CD7B0: LDX.b #$00\n#_0CD7B2: LDA.b $1A\n\n#_0CD7B4: AND.b #$08\n#_0CD7B6: BEQ .frame_0\n\n#_0CD7B8: INX\n\n.frame_0\n#_0CD7B9: LDA.w .char,X\n#_0CD7BC: STA.w $0802\n\n#_0CD7BF: PLX\n\n#_0CD7C0: LDA.b #$7E\n#_0CD7C2: STA.w $0803\n\n#_0CD7C5: LDA.b #$02\n#_0CD7C7: STA.w $0A20\n\n; ---------------------------------------------------------\n\n#EXIT_0CD7CA:\n#_0CD7CA: RTS", + "file": "bank_0C.asm" + }, + { + "name": "FileSelect_DrawDeaths", + "code": "FileSelect_DrawDeaths:\n#_0CD7DB: REP #$30\n\n#_0CD7DD: LDA.b $02\n#_0CD7DF: PHA\n#_0CD7E0: STA.b $08\n\n#_0CD7E2: LDA.b $04\n#_0CD7E4: PHA\n#_0CD7E5: STA.b $0A\n\n#_0CD7E7: LDX.b $0E\n\n#_0CD7E9: LDA.l $700405,X\n#_0CD7ED: CMP.w #$FFFF\n\n#_0CD7F0: BNE .continue\n\n#_0CD7F2: JMP.w .exit\n\n; ---------------------------------------------------------\n\n.continue\n#_0CD7F5: CMP.w #$03E8\n#_0CD7F8: BCC .under_1000\n\n#_0CD7FA: LDA.w #$0009\n#_0CD7FD: STA.b $02\n#_0CD7FF: STA.b $04\n#_0CD801: STA.b $06\n\n#_0CD803: BRA .done_number\n\n.under_1000\n#_0CD805: LDY.w #$0000\n\n.next_100\n#_0CD808: CMP.w #$000A\n#_0CD80B: BCC .under_100\n\n#_0CD80D: SEC\n#_0CD80E: SBC.w #$000A\n\n#_0CD811: INY\n#_0CD812: BRA .next_100\n\n\n.under_100\n#_0CD814: STA.b $02\n#_0CD816: TYA\n#_0CD817: LDY.w #$0000\n\n.next_10\n#_0CD81A: CMP.w #$000A\n#_0CD81D: BCC .under_10\n#_0CD81F: SEC\n#_0CD820: SBC.w #$000A\n#_0CD823: INY\n#_0CD824: BRA .next_10\n\n\n.under_10\n#_0CD826: STA.b $04\n#_0CD828: STY.b $06\n\n; ---------------------------------------------------------\n\n.done_number\n#_0CD82A: LDX.w #$0004\n\n#_0CD82D: LDA.b $06\n#_0CD82F: BNE .skip_digit\n#_0CD831: DEX\n#_0CD832: DEX\n#_0CD833: LDA.b $04\n#_0CD835: BNE .skip_digit\n#_0CD837: DEX\n#_0CD838: DEX\n\n.skip_digit\n#_0CD839: SEP #$30\n#_0CD83B: LDA.b $00\n#_0CD83D: LSR A\n#_0CD83E: TAY\n#_0CD83F: LDA.w .buffer_offset,Y\n#_0CD842: TAY\n\n; ---------------------------------------------------------\n\n.next_digit\n#_0CD843: PHX\n\n#_0CD844: LDA.b $02,X\n#_0CD846: TAX\n\n#_0CD847: LDA.w .digit_char,X\n#_0CD84A: STA.w $0802,Y\n\n#_0CD84D: PHY\n\n#_0CD84E: LDA.b $00\n#_0CD850: LSR A\n#_0CD851: TAY\n\n#_0CD852: LDA.b ($08),Y\n#_0CD854: CLC\n#_0CD855: ADC.b #$10\n\n#_0CD857: PLY\n#_0CD858: STA.w $0801,Y\n\n#_0CD85B: PLA\n#_0CD85C: PHA\n\n#_0CD85D: LSR A\n#_0CD85E: TAX\n\n#_0CD85F: LDA.b ($0A)\n#_0CD861: CLC\n#_0CD862: ADC.w .digit_position_x,X\n#_0CD865: STA.w $0800,Y\n\n#_0CD868: LDA.b #$3C\n#_0CD86A: STA.w $0803,Y\n\n#_0CD86D: PHY\n\n#_0CD86E: TYA\n#_0CD86F: LSR A\n#_0CD870: LSR A\n#_0CD871: TAY\n\n#_0CD872: LDA.b #$00\n#_0CD874: STA.w $0A20,Y\n\n#_0CD877: PLY\n#_0CD878: INY\n#_0CD879: INY\n#_0CD87A: INY\n#_0CD87B: INY\n\n#_0CD87C: PLX\n#_0CD87D: DEX\n#_0CD87E: DEX\n#_0CD87F: BPL .next_digit\n\n; ---------------------------------------------------------\n\n#_0CD881: REP #$30\n\n.exit\n#_0CD883: PLA\n#_0CD884: STA.b $04\n\n#_0CD886: PLA\n#_0CD887: STA.b $02\n\n#_0CD889: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Module04_NameFile", + "code": "Module04_NameFile:\n#_0CD88A: LDA.b $11\n#_0CD88C: JSL JumpTableLong\n#_0CD890: dl NameFile_EraseSave\n#_0CD893: dl NameFile_FillBackground\n#_0CD896: dl NameFile_MakeScreenVisible\n#_0CD899: dl NameFile_DoTheNaming\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_EraseSave", + "code": "NameFile_EraseSave:\n#_0CD89C: JSL FileSelect_EraseTriforce\n\n#_0CD8A0: LDA.b #$01\n#_0CD8A2: STA.w $0128\n\n#_0CD8A5: STZ.w $0B10\n#_0CD8A8: STZ.w $0B12\n#_0CD8AB: STZ.w $0B15\n\n#_0CD8AE: STZ.w $00CA\n#_0CD8B1: STZ.w $00CC\n\n#_0CD8B4: LDA.b #$83\n#_0CD8B6: STA.w $0B11\n\n#_0CD8B9: REP #$30\n\n#_0CD8BB: LDA.w #$01F0\n#_0CD8BE: STA.w $0630\n\n#_0CD8C1: STZ.b $E4\n\n#_0CD8C3: LDA.b $C8\n#_0CD8C5: ASL A\n#_0CD8C6: TAX\n\n#_0CD8C7: LDA.l SaveFileCopyOffsets,X\n#_0CD8CB: STA.w $0200\n\n#_0CD8CE: TAX\n\n; ---------------------------------------------------------\n\n#_0CD8CF: LDY.w #$0000\n#_0CD8D2: TYA\n\n.next_clear\n#_0CD8D3: STA.l $700000,X\n#_0CD8D7: STA.l $700100,X\n#_0CD8DB: STA.l $700200,X\n#_0CD8DF: STA.l $700300,X\n#_0CD8E3: STA.l $700400,X\n\n#_0CD8E7: INX\n#_0CD8E8: INX\n\n#_0CD8E9: INY\n#_0CD8EA: INY\n#_0CD8EB: CPY.w #$0100\n#_0CD8EE: BNE .next_clear\n\n; ---------------------------------------------------------\n\n#_0CD8F0: LDX.w $0200\n\n#_0CD8F3: LDA.w #$00A9\n#_0CD8F6: STA.l $7003D9,X\n#_0CD8FA: STA.l $7003DB,X\n#_0CD8FE: STA.l $7003DD,X\n#_0CD902: STA.l $7003DF,X\n#_0CD906: STA.l $7003E1,X\n#_0CD90A: STA.l $7003E3,X\n\n#_0CD90E: SEP #$30\n\n#_0CD910: RTL", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_FillBackground", + "code": "NameFile_FillBackground:\n#_0CD911: PHB\n#_0CD912: PHK\n#_0CD913: PLB\n\n#_0CD914: REP #$30\n\n#_0CD916: JSR FileSelect_UploadLinoleum\n\n#_0CD919: LDA.w #$FFFF\n#_0CD91C: STA.w $1006,X\n\n#_0CD91F: SEP #$30\n\n#_0CD921: PLB\n\n#_0CD922: LDA.b #$01\n#_0CD924: JSR Intro_SetStripesAndAdvance\n\n#_0CD927: RTL", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_MakeScreenVisible", + "code": "NameFile_MakeScreenVisible:\n#_0CD928: LDA.b #$05\n#_0CD92A: JSR Intro_SetStripesAndAdvance\n\n#_0CD92D: LDA.b #$0F\n#_0CD92F: STA.b $13\n\n#_0CD931: STZ.w $0710\n\n#_0CD934: RTL", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CharacterLayout", + "code": "NameFile_CharacterLayout:\n#_0CD935: db $06, $07, $5F, $09, $59, $59, $1A, $1B\n#_0CD93D: db $1C, $1D, $1E, $1F, $20, $21, $60, $23\n#_0CD945: db $59, $59, $76, $77, $78, $79, $7A, $59\n#_0CD94D: db $59, $59, $00, $01, $02, $03, $04, $05\n#_0CD955: db $10, $11, $12, $13, $59, $59, $24, $5F\n#_0CD95D: db $26, $27, $28, $29, $2A, $2B, $2C, $2D\n#_0CD965: db $59, $59, $7B, $7C, $7D, $7E, $7F, $59\n#_0CD96D: db $59, $59, $0A, $0B, $0C, $0D, $0E, $0F\n#_0CD975: db $40, $41, $42, $59, $59, $59, $2E, $2F\n#_0CD97D: db $30, $31, $32, $33, $40, $41, $42, $59\n#_0CD985: db $59, $59, $61, $3F, $45, $46, $59, $59\n#_0CD98D: db $59, $59, $14, $15, $16, $17, $18, $19\n#_0CD995: db $44, $59, $6F, $6F, $59, $59, $59, $59\n#_0CD99D: db $59, $59, $59, $5A, $44, $59, $6F, $6F\n#_0CD9A5: db $59, $59, $5A, $44, $59, $6F, $6F, $59\n#_0CD9AD: db $59, $59, $59, $59, $59, $59, $59, $5A\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorPositionX", + "code": "NameFile_CursorPositionX:\n#_0CD9B5: dw $01F0, $0000, $0010, $0020\n#_0CD9BD: dw $0030, $0040, $0050, $0060\n#_0CD9C5: dw $0070, $0080, $0090, $00A0\n#_0CD9CD: dw $00B0, $00C0, $00D0, $00E0\n#_0CD9D5: dw $00F0, $0100, $0110, $0120\n#_0CD9DD: dw $0130, $0140, $0150, $0160\n#_0CD9E5: dw $0170, $0180, $0190, $01A0\n#_0CD9ED: dw $01B0, $01C0, $01D0, $01E0\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorIndexMovementX", + "code": "NameFile_CursorIndexMovementX:\n#_0CD9F5: dw $0001 ; Right\n#_0CD9F7: dw $00FF ; Left\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorIndexBoundaryX", + "code": "NameFile_CursorIndexBoundaryX:\n#_0CD9F9: dw $0020 ; Right\n#_0CD9FB: dw $00FF ; Left\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorIndexWrapX", + "code": "NameFile_CursorIndexWrapX:\n#_0CD9FD: dw $0000 ; Right\n#_0CD9FF: dw $001F ; Left\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorPositionY", + "code": "NameFile_CursorPositionY:\n#_0CDA01: db $83, $93, $A3, $B3\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorIndexMovementY", + "code": "NameFile_CursorIndexMovementY:\n#_0CDA05: db $01, $FF\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorIndexBoundaryY", + "code": "NameFile_CursorIndexBoundaryY:\n#_0CDA07: db $04, $FF\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorStickY", + "code": "NameFile_CursorStickY:\n#_0CDA09: db $00, $03\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_YtoXIndexOffset", + "code": "NameFile_YtoXIndexOffset:\n#_0CDA0B: dw $0000, $0020, $0040, $0060\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_HeartXPosition", + "code": "NameFile_HeartXPosition:\n#_0CDA13: db $1F, $2F, $3F, $4F, $5F, $6F\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CursorMovement", + "code": "NameFile_CursorMovement:\n#_0CDA19: dw -1, 1, -1, 1\n#_0CDA21: dw -1, 1, -1, 1\n#_0CDA29: dw -1, 1, -1, 1\n#_0CDA31: dw -1, 1, -1, 1\n#_0CDA39: dw -2, 2, -2, 2\n#_0CDA41: dw -2, 2, -2, 2\n#_0CDA49: dw -4, 4\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_DoTheNaming", + "code": "NameFile_DoTheNaming:\n.check_x_scroll\n#_0CDA4D: LDY.w $0B13\n#_0CDA50: BEQ .not_busy_scrolling_x\n\n#_0CDA52: TYA\n#_0CDA53: CMP.b #$31\n#_0CDA55: BEQ .hit_target_scroll_x\n\n#_0CDA57: CLC\n#_0CDA58: ADC.b #$04\n#_0CDA5A: STA.w $0B13\n\n.hit_target_scroll_x\n#_0CDA5D: LDA.w $0B10\n#_0CDA60: ASL A\n#_0CDA61: TAX\n\n#_0CDA62: REP #$20\n\n#_0CDA64: DEY\n\n#_0CDA65: LDA.w $0630\n#_0CDA68: CMP.l NameFile_CursorPositionX,X\n#_0CDA6C: BNE .not_at_valid_x_position\n\n#_0CDA6E: SEP #$20\n\n#_0CDA70: LDA.b #$30\n#_0CDA72: STA.w $0B13\n\n#_0CDA75: LDA.b $F0\n#_0CDA77: AND.b #$03\n#_0CDA79: BNE .had_lr_input\n\n#_0CDA7B: STZ.w $0B13\n\n.had_lr_input\n#_0CDA7E: JSR NameFile_CheckForScrollInputX\n#_0CDA81: BRA .check_x_scroll\n\n; ---------------------------------------------------------\n\n.not_at_valid_x_position\n#_0CDA83: REP #$20\n\n#_0CDA85: LDX.w $0B16\n#_0CDA88: BNE .last_move_left\n\n#_0CDA8A: INY\n#_0CDA8B: INY\n\n.last_move_left\n#_0CDA8C: LDA.w $0630\n\n#_0CDA8F: TYX\n\n#_0CDA90: CLC\n#_0CDA91: ADC.l NameFile_CursorMovement,X\n#_0CDA95: AND.w #$01FF\n#_0CDA98: STA.w $0630\n\n#_0CDA9B: SEP #$20\n\n#_0CDA9D: BRA .check_y_scroll\n\n; ---------------------------------------------------------\n\n.not_busy_scrolling_x\n#_0CDA9F: JSR NameFile_CheckForScrollInputX\n\n.check_y_scroll\n#_0CDAA2: LDA.w $0B14\n#_0CDAA5: BEQ .not_busy_scrolling_y\n\n#_0CDAA7: LDX.w $0B15\n#_0CDAAA: LDY.b #$02\n\n#_0CDAAC: LDA.w $0B11\n#_0CDAAF: CMP.l NameFile_CursorPositionY,X\n#_0CDAB3: BNE .not_at_valid_y_position\n\n#_0CDAB5: STZ.w $0B14\n\n#_0CDAB8: JSR NameFile_CheckForScrollInputY\n#_0CDABB: BRA .check_y_scroll\n\n.not_at_valid_y_position\n#_0CDABD: BMI .add_y_scroll\n\n#_0CDABF: LDY.b #$FE\n\n.add_y_scroll\n#_0CDAC1: TYA\n#_0CDAC2: CLC\n#_0CDAC3: ADC.w $0B11\n#_0CDAC6: STA.w $0B11\n#_0CDAC9: BRA .done_y\n\n.not_busy_scrolling_y\n#_0CDACB: JSR NameFile_CheckForScrollInputY\n\n; ---------------------------------------------------------\n\n.done_y\n#_0CDACE: LDX.b #$00\n#_0CDAD0: TXY\n#_0CDAD1: LDA.b #$18\n#_0CDAD3: STA.b $00\n\n.next_horizontal_bar_object\n#_0CDAD5: LDA.b $00\n#_0CDAD7: STA.w $0800,Y\n\n#_0CDADA: CLC\n#_0CDADB: ADC.b #$08\n#_0CDADD: STA.b $00\n\n#_0CDADF: LDA.w $0B11\n#_0CDAE2: STA.w $0801,Y\n\n#_0CDAE5: LDA.b #$2E\n#_0CDAE7: STA.w $0802,Y\n\n#_0CDAEA: LDA.b #$3C\n#_0CDAEC: STA.w $0803,Y\n\n#_0CDAEF: STZ.w $0A20,X\n\n#_0CDAF2: INY\n#_0CDAF3: INY\n#_0CDAF4: INY\n#_0CDAF5: INY\n\n#_0CDAF6: INX\n#_0CDAF7: CPX.b #$1A\n#_0CDAF9: BNE .next_horizontal_bar_object\n\n; ---------------------------------------------------------\n\n#_0CDAFB: PHX\n\n#_0CDAFC: LDX.w $0B12\n\n#_0CDAFF: LDA.l NameFile_HeartXPosition,X\n#_0CDB03: STA.w $0800,Y\n\n#_0CDB06: LDA.b #$58\n#_0CDB08: STA.w $0801,Y\n\n#_0CDB0B: PLX\n\n#_0CDB0C: LDA.b #$29\n#_0CDB0E: STA.w $0802,Y\n\n#_0CDB11: LDA.b #$0C\n#_0CDB13: STA.w $0803,Y\n\n#_0CDB16: STZ.w $0A20,X\n\n#_0CDB19: LDA.w $0B13\n#_0CDB1C: ORA.w $0B14\n#_0CDB1F: BNE .busy_scrolling\n\n#_0CDB21: LDA.b $F4\n#_0CDB23: AND.b #$10\n#_0CDB25: BEQ .no_start_press\n\n#_0CDB27: JMP.w .confirm_name\n\n.no_start_press\n#_0CDB2A: LDA.b $F4\n#_0CDB2C: AND.b #$C0\n#_0CDB2E: BNE .select_item\n\n#_0CDB30: LDA.b $F6\n#_0CDB32: AND.b #$C0\n#_0CDB34: BNE .select_item\n\n.busy_scrolling\n#_0CDB36: JMP.w .exit\n\n.select_item\n#_0CDB39: LDA.b #$2B ; SFX2.2B\n#_0CDB3B: STA.w $012E\n\n#_0CDB3E: REP #$30\n\n#_0CDB40: LDA.w $0B15\n#_0CDB43: AND.w #$00FF\n#_0CDB46: ASL A\n#_0CDB47: TAX\n\n#_0CDB48: LDA.l NameFile_YtoXIndexOffset,X\n#_0CDB4C: CLC\n#_0CDB4D: ADC.w $0B10\n#_0CDB50: AND.w #$00FF\n#_0CDB53: TAX\n\n#_0CDB54: SEP #$20\n\n#_0CDB56: LDA.l NameFile_CharacterLayout,X\n#_0CDB5A: CMP.b #$5A\n#_0CDB5C: BEQ .back_arrow\n\n#_0CDB5E: CMP.b #$44\n#_0CDB60: BEQ .forward_arrow\n\n#_0CDB62: CMP.b #$6F\n#_0CDB64: BEQ .confirm_name\n\n#_0CDB66: STA.b $00\n#_0CDB68: STZ.b $01\n\n#_0CDB6A: BRA .written_character\n\n; ---------------------------------------------------------\n\n.back_arrow\n#_0CDB6C: LDA.w $0B12\n#_0CDB6F: BNE .nonzero\n\n#_0CDB71: LDA.b #$05\n#_0CDB73: STA.w $0B12\n\n#_0CDB76: BRA .exit\n\n.nonzero\n#_0CDB78: DEC.w $0B12\n#_0CDB7B: BRA .exit\n\n\n.forward_arrow\n#_0CDB7D: INC.w $0B12\n\n#_0CDB80: LDA.w $0B12\n#_0CDB83: CMP.b #$06\n#_0CDB85: BNE .nowrap\n\n#_0CDB87: STZ.w $0B12\n\n.nowrap\n#_0CDB8A: BRA .exit\n\n; ---------------------------------------------------------\n\n.written_character\n#_0CDB8C: REP #$30\n\n#_0CDB8E: AND.w #$000F\n#_0CDB91: STA.b $02\n\n#_0CDB93: LDA.w $0B12\n#_0CDB96: AND.w #$00FF\n#_0CDB99: ASL A\n#_0CDB9A: TAY\n\n#_0CDB9B: CLC\n#_0CDB9C: ADC.w $0200\n#_0CDB9F: TAX\n\n#_0CDBA0: LDA.b $00\n#_0CDBA2: AND.w #$FFF0\n#_0CDBA5: ASL A\n#_0CDBA6: ORA.b $02\n#_0CDBA8: STA.l $7003D9,X\n\n#_0CDBAC: JSR NameFile_DrawSelectedCharacter\n\n#_0CDBAF: BRA .forward_arrow\n\n; ---------------------------------------------------------\n\n.confirm_name\n#_0CDBB1: REP #$30\n\n#_0CDBB3: STZ.b $02\n\n.write_name_to_save\n#_0CDBB5: LDA.w $0200\n#_0CDBB8: CLC\n#_0CDBB9: ADC.b $02\n#_0CDBBB: TAX\n\n#_0CDBBC: LDA.l $7003D9,X\n#_0CDBC0: CMP.w #$00A9\n#_0CDBC3: BNE InitializeSaveFile\n\n#_0CDBC5: LDA.b $02\n#_0CDBC7: CMP.w #$000A\n#_0CDBCA: BEQ .finished\n\n#_0CDBCC: INC A\n#_0CDBCD: INC A\n#_0CDBCE: STA.b $02\n#_0CDBD0: BRA .write_name_to_save\n\n\n.finished\n#_0CDBD2: SEP #$20\n\n#_0CDBD4: LDA.b #$3C ; SFX2.3C\n#_0CDBD6: STA.w $012E\n\n.exit\n#_0CDBD9: SEP #$30\n\n#_0CDBDB: RTL", + "file": "bank_0C.asm" + }, + { + "name": "InitializeSaveFile", + "code": "InitializeSaveFile:\n#_0CDBDC: SEP #$30\n\n#_0CDBDE: PHB\n\n#_0CDBDF: LDA.b #DefaultSaveFileItems>>16\n#_0CDBE1: PHA\n#_0CDBE2: PLB\n\n#_0CDBE3: REP #$30\n\n#_0CDBE5: LDA.b $C8\n#_0CDBE7: ASL A\n#_0CDBE8: INC A\n#_0CDBE9: INC A\n#_0CDBEA: STA.l $701FFE\n\n#_0CDBEE: TAX\n\n#_0CDBEF: LDA.l SaveFileOffsets,X\n#_0CDBF3: STA.b $00\n\n#_0CDBF5: TAX\n\n; ---------------------------------------------------------\n\n#_0CDBF6: LDA.w #$55AA\n#_0CDBF9: STA.l $7003E5,X\n\n#_0CDBFD: LDA.w #$F000\n#_0CDC00: STA.l $70020C,X\n#_0CDC04: STA.l $70020E,X\n\n#_0CDC08: LDA.w #$FFFF\n#_0CDC0B: STA.l $700405,X\n\n#_0CDC0F: LDA.w #$001D\n#_0CDC12: STA.b $02\n\n; ---------------------------------------------------------\n\n#_0CDC14: LDY.w #$003C\n\n#_0CDC17: CPX.w #$0000\n#_0CDC1A: BNE .copy_next\n\n#_0CDC1C: LDA.l Player2JoypadReturn\n#_0CDC20: AND.w #$00FF\n#_0CDC23: CMP.w #$0060 ; RTS", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CheckForScrollInputX", + "code": "NameFile_CheckForScrollInputX:\n#_0CDC8C: SEP #$30\n\n#_0CDC8E: LDA.b $F0\n#_0CDC90: AND.b #$03\n#_0CDC92: BEQ .exit\n\n#_0CDC94: INC.w $0B13\n\n#_0CDC97: DEC A\n#_0CDC98: STA.w $0B16\n\n#_0CDC9B: REP #$30\n\n#_0CDC9D: AND.w #$00FF\n#_0CDCA0: ASL A\n#_0CDCA1: TAX\n\n#_0CDCA2: LDA.w $0B10\n#_0CDCA5: AND.w #$00FF\n#_0CDCA8: CLC\n#_0CDCA9: ADC.l NameFile_CursorIndexMovementX,X\n#_0CDCAD: CMP.l NameFile_CursorIndexBoundaryX,X\n#_0CDCB1: BNE .no_wrap\n\n#_0CDCB3: LDA.l NameFile_CursorIndexWrapX,X\n\n.no_wrap\n#_0CDCB7: SEP #$30\n\n#_0CDCB9: STA.w $0B10\n\n.exit\n#_0CDCBC: SEP #$30\n\n#_0CDCBE: RTS", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_CheckForScrollInputY", + "code": "NameFile_CheckForScrollInputY:\n#_0CDCBF: LDA.b $F0\n#_0CDCC1: AND.b #$0C\n#_0CDCC3: BEQ .no_input\n\n#_0CDCC5: STA.b $02\n\n#_0CDCC7: ASL A\n#_0CDCC8: ORA.w $0B15\n#_0CDCCB: CMP.b #$10\n#_0CDCCD: BEQ .set_input\n\n#_0CDCCF: LDA.b $02\n#_0CDCD1: ASL A\n#_0CDCD2: ASL A\n#_0CDCD3: ORA.w $0B15\n\n#_0CDCD6: LDX.w $0B10\n\n#_0CDCD9: CMP.b #$13\n#_0CDCDB: BEQ .set_input\n\n#_0CDCDD: LDA.b $02\n#_0CDCDF: LSR A\n#_0CDCE0: LSR A\n\n.next\n#_0CDCE1: TAX\n\n#_0CDCE2: LDA.w $0B15\n#_0CDCE5: CLC\n#_0CDCE6: ADC.l NameFile_CursorIndexMovementY-1,X\n#_0CDCEA: CMP.l NameFile_CursorIndexBoundaryY-1,X\n#_0CDCEE: BNE .no_stick\n\n#_0CDCF0: LDA.l NameFile_CursorStickY-1,X\n\n.no_stick\n#_0CDCF4: STA.w $0B15\n#_0CDCF7: BRA .not_this_guy\n\n#_0CDCF9: STX.b $01\n\n#_0CDCFB: LDX.w $0B15\n\n#_0CDCFE: LDA.l NameFile_YtoXIndexOffset,X\n#_0CDD02: CLC\n#_0CDD03: ADC.w $0B10\n#_0CDD06: AND.b #$FF\n#_0CDD08: TAX\n\n#_0CDD09: LDA.l NameFile_CharacterLayout,X\n#_0CDD0D: CMP.b #$59\n#_0CDD0F: BNE .not_this_guy\n\n#_0CDD11: LDA.b $01\n#_0CDD13: BRA .next\n\n; ---------------------------------------------------------\n\n.not_this_guy\n#_0CDD15: INC.w $0B14\n#_0CDD18: BRA .set_input\n\n\n.no_input\n#_0CDD1A: STZ.w $00CA\n\n.set_input\n#_0CDD1D: LDA.w $0002\n#_0CDD20: STA.w $00CB\n\n#_0CDD23: RTS", + "file": "bank_0C.asm" + }, + { + "name": "NameFile_DrawSelectedCharacter", + "code": "NameFile_DrawSelectedCharacter:\n#_0CDD30: PHB\n#_0CDD31: PHK\n#_0CDD32: PLB\n\n#_0CDD33: LDA.w #$6100\n#_0CDD36: ORA.w .vram_position_low,Y\n#_0CDD39: XBA\n#_0CDD3A: STA.w $1002\n\n#_0CDD3D: XBA\n#_0CDD3E: CLC\n#_0CDD3F: ADC.w #$0020\n\n#_0CDD42: XBA\n#_0CDD43: STA.w $1008\n\n#_0CDD46: LDA.w #$0100\n#_0CDD49: STA.w $1004\n#_0CDD4C: STA.w $100A\n\n#_0CDD4F: LDA.l $7003D9,X\n#_0CDD53: ORA.w #$1800\n#_0CDD56: STA.w $1006\n\n#_0CDD59: CLC\n#_0CDD5A: ADC.w #$0010\n#_0CDD5D: STA.w $100C\n\n; ---------------------------------------------------------\n\n#_0CDD60: SEP #$30\n\n#_0CDD62: LDA.b #$FF\n#_0CDD64: STA.w $100E\n\n#_0CDD67: LDA.b #$01\n#_0CDD69: STA.b $14\n\n#_0CDD6B: PLB\n\n#_0CDD6C: RTS", + "file": "bank_0C.asm" + }, + { + "name": "IntroLogoTilemap", + "code": "IntroLogoTilemap:\n#_0CDD6D: dw $0B11, $1900 ; VRAM $2216 | 26 bytes | Horizontal\n#_0CDD71: dw $1D68, $1D69, $1D6A, $1D6B, $1D5D, $1D5E, $1C30, $1C31\n#_0CDD81: dw $1C32, $1C33, $1C34, $1C35, $1C36\n\n#_0CDD8B: dw $2B11, $1900 ; VRAM $2256 | 26 bytes | Horizontal\n#_0CDD8F: dw $1D78, $1D79, $1D7A, $1D7B, $1C37, $1C38, $1C39, $1C3A\n#_0CDD9F: dw $1C3B, $1C3C, $1C3D, $1C3E, $1C3F\n\n#_0CDDA9: dw $4611, $2500 ; VRAM $228C | 38 bytes | Horizontal\n#_0CDDAD: dw $18F7, $1900, $1901, $1902, $1903, $1904, $1905, $1905\n#_0CDDBD: dw $1906, $1905, $1907, $5907, $1905, $1908, $1909, $190A\n#_0CDDCD: dw $190B, $190C, $1CF0\n\n#_0CDDD3: dw $6611, $2300 ; VRAM $22CC | 36 bytes | Horizontal\n#_0CDDD7: dw $190D, $190E, $18F9, $390F, $1910, $1911, $1912, $1913\n#_0CDDE7: dw $1914, $1915, $18FA, $58FA, $1916, $1917, $1918, $18FB\n#_0CDDF7: dw $1919, $191A\n\n#_0CDDFB: dw $8611, $2300 ; VRAM $230C | 36 bytes | Horizontal\n#_0CDDFF: dw $18F8, $195F, $391B, $391C, $191D, $191E, $191F, $1920\n#_0CDE0F: dw $1921, $1922, $195F, $195F, $1923, $1924, $1925, $1926\n#_0CDE1F: dw $1927, $1928\n\n#_0CDE23: dw $A811, $1F00 ; VRAM $2350 | 32 bytes | Horizontal\n#_0CDE27: dw $3929, $392A, $192B, $191E, $192C, $192D, $1938, $1922\n#_0CDE37: dw $195F, $195F, $1923, $18FC, $192E, $192F, $1930, $1931\n\n#_0CDE47: dw $C711, $2300 ; VRAM $238E | 36 bytes | Horizontal\n#_0CDE4B: dw $1932, $3933, $3934, $195F, $191E, $191F, $1936, $1937\n#_0CDE5B: dw $1922, $195F, $1939, $1923, $9924, $193A, $193B, $193C\n#_0CDE6B: dw $193D, $193E\n\n#_0CDE6F: dw $E711, $2300 ; VRAM $23CE | 36 bytes | Horizontal\n#_0CDE73: dw $193F, $3940, $3941, $195F, $1942, $1943, $1944, $1945\n#_0CDE83: dw $1946, $1947, $1948, $1949, $194A, $194B, $194C, $194D\n#_0CDE93: dw $194E, $194F\n\n#_0CDE97: dw $0612, $2500 ; VRAM $240C | 38 bytes | Horizontal\n#_0CDE9B: dw $18FD, $1950, $3951, $98F9, $1952, $1953, $1954, $1954\n#_0CDEAB: dw $1955, $1954, $1954, $1956, $1954, $1957, $1958, $1959\n#_0CDEBB: dw $195A, $195B, $195C\n\n#_0CDEC1: dw $2612, $2B00 ; VRAM $244C | 44 bytes | Horizontal\n#_0CDEC5: dw $18F1, $18F2, $18F3, $18F4, $18F5, $18F6, $1D60, $1D61\n#_0CDED5: dw $1D62, $1D63, $1D64, $1D65, $1D66, $1D67, $1D68, $1D69\n#_0CDEE5: dw $1D6A, $1D6B, $1D6C, $1D6D, $1D6E, $1D6F\n\n#_0CDEF1: dw $4C12, $1F00 ; VRAM $2498 | 32 bytes | Horizontal\n#_0CDEF5: dw $1D70, $1D71, $1D72, $1D73, $1D74, $1D75, $1D76, $1D77\n#_0CDF05: dw $1D78, $1D79, $1D7A, $1D7B, $1D7C, $1D7D, $1D7E, $1D7F\n\n#_0CDF15: dw $8000, $BE41 ; VRAM $0100 | 448 bytes | Fixed horizontal\n#_0CDF19: dw $10BD\n\n#_0CDF1B: dw $6501, $2A40 ; VRAM $02CA | 44 bytes | Fixed horizontal\n#_0CDF1F: dw $10BE\n\n#_0CDF21: dw $8801, $2440 ; VRAM $0310 | 38 bytes | Fixed horizontal\n#_0CDF25: dw $10BF\n\n#_0CDF27: dw $2802, $2440 ; VRAM $0450 | 38 bytes | Fixed horizontal\n#_0CDF2B: dw $90BF\n\n#_0CDF2D: dw $4502, $2A40 ; VRAM $048A | 44 bytes | Fixed horizontal\n#_0CDF31: dw $90BE\n\n#_0CDF33: dw $6A02, $1A40 ; VRAM $04D4 | 28 bytes | Fixed horizontal\n#_0CDF37: dw $90BD\n\n#_0CDF39: dw $4001, $1300 ; VRAM $0280 | 20 bytes | Horizontal\n#_0CDF3D: dw $11B3, $11B4, $51B4, $51B3, $10BD, $10BD, $11B3, $11B4\n#_0CDF4D: dw $51B4, $51B3\n\n#_0CDF51: dw $5801, $0500 ; VRAM $02B0 | 6 bytes | Horizontal\n#_0CDF55: dw $11B3, $11B4, $51B4\n\n#_0CDF5B: dw $6001, $0900 ; VRAM $02C0 | 10 bytes | Horizontal\n#_0CDF5F: dw $10B0, $10B1, $10B2, $10B3, $10B4\n\n#_0CDF69: dw $8001, $0F00 ; VRAM $0300 | 16 bytes | Horizontal\n#_0CDF6D: dw $10B5, $10B6, $10B7, $10B8, $10B9, $10BA, $10BB, $10BC\n\n#_0CDF7D: dw $A001, $3500 ; VRAM $0340 | 54 bytes | Horizontal\n#_0CDF81: dw $09C9, $09CA, $09C9, $09CA, $09C9, $09CA, $09C9, $09CA\n#_0CDF91: dw $09FF, $09E7, $09E8, $09E7, $09E8, $09E7, $09E8, $09E7\n#_0CDFA1: dw $09E8, $09E7, $09E8, $09E7, $09E8, $09E7, $09E8, $09E7\n#_0CDFB1: dw $09E8, $09E7, $09E8\n\n#_0CDFB7: dw $C001, $3500 ; VRAM $0380 | 54 bytes | Horizontal\n#_0CDFBB: dw $09D9, $09DA, $09D9, $09DA, $09D9, $09DA, $09D9, $09DA\n#_0CDFCB: dw $09D9, $09DA, $09D9, $09DA, $09D9, $09DA, $09D9, $09DA\n#_0CDFDB: dw $09D9, $09DA, $09D9, $09DA, $09D9, $09DA, $09D9, $09DA\n#_0CDFEB: dw $09D9, $09DA, $09D9\n\n#_0CDFF1: dw $E001, $3500 ; VRAM $03C0 | 54 bytes | Horizontal\n#_0CDFF5: dw $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2\n#_0CE005: dw $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2\n#_0CE015: dw $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2, $0DB1, $0DB2\n#_0CE025: dw $0DB1, $0DB2, $0DB1\n\n#_0CE02B: dw $0002, $3500 ; VRAM $0400 | 54 bytes | Horizontal\n#_0CE02F: dw $8DC9, $8DCA, $8DC9, $8DCA, $8DC9, $8DCA, $8DC9, $8DCA\n#_0CE03F: dw $8DFF, $8DE7, $8DE8, $8DE7, $8DE8, $8DE7, $8DE8, $8DE7\n#_0CE04F: dw $8DE8, $8DE7, $8DE8, $8DE7, $8DE8, $8DE7, $8DE8, $8DE7\n#_0CE05F: dw $8DE8, $8DE7, $8DE8\n\n#_0CE065: dw $2002, $0F00 ; VRAM $0440 | 16 bytes | Horizontal\n#_0CE069: dw $90B5, $90B6, $90B7, $90B8, $90B9, $90BA, $90BB, $90BC\n\n#_0CE079: dw $4002, $0900 ; VRAM $0480 | 10 bytes | Horizontal\n#_0CE07D: dw $90B0, $90B1, $90B2, $90B3, $90B4\n\n#_0CE087: dw $6002, $1300 ; VRAM $04C0 | 20 bytes | Horizontal\n#_0CE08B: dw $91B3, $91B4, $D1B4, $D1B3, $90BD, $90BD, $91B3, $91B4\n#_0CE09B: dw $D1B4, $D1B3\n\n#_0CE09F: dw $7802, $0500 ; VRAM $04F0 | 6 bytes | Horizontal\n#_0CE0A3: dw $91B3, $91B4, $D1B4\n\n#_0CE0A9: dw $8002, $3500 ; VRAM $0500 | 54 bytes | Horizontal\n#_0CE0AD: dw $11F0, $11F1, $11F0, $11F1, $11F0, $11F1, $11F0, $11F1\n#_0CE0BD: dw $11F0, $11F1, $11F0, $11F1, $11F0, $11F1, $11F0, $11F1\n#_0CE0CD: dw $11F0, $11F1, $11F0, $11F1, $11F0, $11F1, $11F0, $11F1\n#_0CE0DD: dw $11F0, $11F1, $11F0\n\n#_0CE0E3: dw $A002, $3500 ; VRAM $0540 | 54 bytes | Horizontal\n#_0CE0E7: dw $11F2, $11F3, $11F2, $11F3, $11F2, $11F3, $11F2, $11F3\n#_0CE0F7: dw $11F2, $11F3, $11F2, $11F3, $11F2, $11F3, $11F2, $11F3\n#_0CE107: dw $11F2, $11F3, $11F2, $11F3, $11F2, $11F3, $11F2, $11F3\n#_0CE117: dw $11F2, $11F3, $11F2\n\n#_0CE11D: dw $3B01, $1980 ; VRAM $0276 | 26 bytes | Vertical\n#_0CE121: dw $15F6, $15F4, $15CB, $15DB, $15DB, $15DB, $15DB, $15DB\n#_0CE131: dw $15EB, $15FB, $15FD, $15FD, $15FD\n\n#_0CE13B: dw $3C01, $1980 ; VRAM $0278 | 26 bytes | Vertical\n#_0CE13F: dw $15F7, $15F5, $15DC, $15DC, $15DC, $15DC, $15DC, $15DC\n#_0CE14F: dw $15B0, $15FC, $15FE, $15FE, $15FE\n\n#_0CE159: dw $3D01, $1980 ; VRAM $027A | 26 bytes | Vertical\n#_0CE15D: dw $15F8, $15CD, $15DD, $15DD, $15DD, $15DD, $15DD, $15DD\n#_0CE16D: dw $15CC, $15ED, $14BD, $14BD, $15FE\n\n#_0CE177: dw $9E00, $2380 ; VRAM $013C | 36 bytes | Vertical\n#_0CE17B: dw $15F6, $15F4, $15CB, $15DB, $15E9, $15F9, $15CE, $15DE\n#_0CE18B: dw $15DE, $15DE, $15DE, $15DE, $15DE, $15CC, $15EE, $14BD\n#_0CE19B: dw $14BD, $14BD\n\n#_0CE19F: dw $9F00, $2380 ; VRAM $013E | 36 bytes | Vertical\n#_0CE1A3: dw $15F7, $15F5, $15DC, $15DC, $15EA, $15FA, $15CF, $15DF\n#_0CE1B3: dw $15DF, $15DF, $15DF, $15DF, $15DF, $15CC, $15EF, $14BD\n#_0CE1C3: dw $14BD, $14BD\n\n#_0CE1C7: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FancyBackgroundTileMap", + "code": "FancyBackgroundTileMap:\n#_0CE1C8: dw $4210, $2700 ; VRAM $2084 | 40 bytes | Horizontal\n#_0CE1CC: dw $3589, $358A, $358B, $358C, $358B, $358C, $358B, $358C\n#_0CE1DC: dw $358B, $358C, $358B, $358C, $358B, $358C, $358B, $358C\n#_0CE1EC: dw $358B, $358C, $758A, $7589\n\n#_0CE1F4: dw $6210, $0300 ; VRAM $20C4 | 4 bytes | Horizontal\n#_0CE1F8: dw $3599, $359A\n\n#_0CE1FC: dw $6410, $1E40 ; VRAM $20C8 | 32 bytes | Fixed horizontal\n#_0CE200: dw $347F\n\n#_0CE202: dw $7410, $0300 ; VRAM $20E8 | 4 bytes | Horizontal\n#_0CE206: dw $759A, $7599\n\n#_0CE20A: dw $8210, $0300 ; VRAM $2104 | 4 bytes | Horizontal\n#_0CE20E: dw $35A9, $35AA\n\n#_0CE212: dw $8410, $1E40 ; VRAM $2108 | 32 bytes | Fixed horizontal\n#_0CE216: dw $347F\n\n#_0CE218: dw $9410, $0300 ; VRAM $2128 | 4 bytes | Horizontal\n#_0CE21C: dw $75AA, $75A9\n\n#_0CE220: dw $A210, $2700 ; VRAM $2144 | 40 bytes | Horizontal\n#_0CE224: dw $359D, $35AD, $359B, $359C, $359B, $359C, $359B, $359C\n#_0CE234: dw $359B, $359C, $359B, $359C, $359B, $359C, $359B, $359C\n#_0CE244: dw $359B, $359C, $75AD, $759D\n\n#_0CE24C: dw $C210, $2700 ; VRAM $2184 | 40 bytes | Horizontal\n#_0CE250: dw $35AB, $35AC, $35AB, $35AC, $35AB, $35AC, $35AB, $35AC\n#_0CE260: dw $35AB, $35AC, $35AB, $35AC, $35AB, $35AC, $35AB, $35AC\n#_0CE270: dw $35AB, $35AC, $75AB, $75AC\n\n#_0CE278: dw $E210, $0100 ; VRAM $21C4 | 2 bytes | Horizontal\n#_0CE27C: dw $3583\n\n#_0CE27E: dw $E310, $3240 ; VRAM $21C6 | 52 bytes | Fixed horizontal\n#_0CE282: dw $3585\n\n#_0CE284: dw $FD10, $0100 ; VRAM $21FA | 2 bytes | Horizontal\n#_0CE288: dw $3584\n\n#_0CE28A: dw $0211, $22C0 ; VRAM $2204 | 36 bytes | Fixed vertical\n#_0CE28E: dw $3586\n\n#_0CE290: dw $1D11, $22C0 ; VRAM $223A | 36 bytes | Fixed vertical\n#_0CE294: dw $3596\n\n#_0CE296: dw $4213, $0100 ; VRAM $2684 | 2 bytes | Horizontal\n#_0CE29A: dw $3593\n\n#_0CE29C: dw $4313, $3240 ; VRAM $2686 | 52 bytes | Fixed horizontal\n#_0CE2A0: dw $3595\n\n#_0CE2A2: dw $5D13, $0100 ; VRAM $26BA | 2 bytes | Horizontal\n#_0CE2A6: dw $3594\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelectTilemap", + "code": "FileSelectTilemap:\n#_0CE2A8: dw $6560, $1B00 ; VRAM $C0CA | 28 bytes | Horizontal\n#_0CE2AC: dw $180F, $180B, $1800, $1828, $1804, $1821, $18A9, $18A9\n#_0CE2BC: dw $1822, $1804, $180B, $1804, $1802, $1823\n\n#_0CE2C8: dw $8560, $1B00 ; VRAM $C10A | 28 bytes | Horizontal\n#_0CE2CC: dw $181F, $181B, $1810, $1838, $1814, $1831, $18B9, $18B9\n#_0CE2DC: dw $1832, $1814, $181B, $1814, $1812, $1833\n\n#_0CE2E8: dw $C662, $1700 ; VRAM $C58C | 24 bytes | Horizontal\n#_0CE2EC: dw $1802, $180E, $180F, $1828, $18A9, $18A9, $180F, $180B\n#_0CE2FC: dw $1800, $1828, $1804, $1821\n\n#_0CE304: dw $E662, $1700 ; VRAM $C5CC | 24 bytes | Horizontal\n#_0CE308: dw $1812, $181E, $181F, $1838, $18A9, $18A9, $181F, $181B\n#_0CE318: dw $1810, $1838, $1814, $1831\n\n#_0CE320: dw $0663, $1700 ; VRAM $C60C | 24 bytes | Horizontal\n#_0CE324: dw $1804, $1821, $1800, $1822, $1804, $18A9, $180F, $180B\n#_0CE334: dw $1800, $1828, $1804, $1821\n\n#_0CE33C: dw $2663, $1700 ; VRAM $C64C | 24 bytes | Horizontal\n#_0CE340: dw $1814, $1831, $1810, $1832, $1814, $18A9, $181F, $181B\n#_0CE350: dw $1810, $1838, $1814, $1831\n\n#_0CE358: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelectNamesTilemap", + "code": "FileSelectNamesTilemap:\n#_0CE359: dw $2961, $2500 ; VRAM $C252 | 38 bytes | Horizontal\n#_0CE35D: dw $18E7, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE36D: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE37D: dw $18A9, $18A9, $18A9\n\n#_0CE383: dw $4961, $2500 ; VRAM $C292 | 38 bytes | Horizontal\n#_0CE387: dw $18F7, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE397: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE3A7: dw $18A9, $18A9, $18A9\n\n#_0CE3AD: dw $A961, $2500 ; VRAM $C352 | 38 bytes | Horizontal\n#_0CE3B1: dw $18E8, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE3C1: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE3D1: dw $18A9, $18A9, $18A9\n\n#_0CE3D7: dw $C961, $2500 ; VRAM $C392 | 38 bytes | Horizontal\n#_0CE3DB: dw $18F8, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE3EB: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE3FB: dw $18A9, $18A9, $18A9\n\n#_0CE401: dw $2962, $2500 ; VRAM $C452 | 38 bytes | Horizontal\n#_0CE405: dw $18E9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE415: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE425: dw $18A9, $18A9, $18A9\n\n#_0CE42B: dw $4962, $2500 ; VRAM $C492 | 38 bytes | Horizontal\n#_0CE42F: dw $18F9, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE43F: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE44F: dw $18A9, $18A9, $18A9\n\n#_0CE455: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelectKILLFileTilemap", + "code": "FileSelectKILLFileTilemap:\n#_0CE456: dw $6560, $1700 ; VRAM $C0CA | 24 bytes | Horizontal\n#_0CE45A: dw $1804, $1821, $1800, $1822, $1804, $18A9, $180F, $180B\n#_0CE46A: dw $1800, $1828, $1804, $1821\n\n#_0CE472: dw $8560, $1700 ; VRAM $C10A | 24 bytes | Horizontal\n#_0CE476: dw $1814, $1831, $1810, $1832, $1814, $18A9, $181F, $181B\n#_0CE486: dw $1810, $1838, $1814, $1831\n\n#_0CE48E: dw $0461, $2F00 ; VRAM $C208 | 48 bytes | Horizontal\n#_0CE492: dw $1826, $1807, $18AF, $1802, $1807, $18A9, $180F, $180B\n#_0CE4A2: dw $1800, $1828, $1804, $1821, $18A9, $1803, $180E, $18A9\n#_0CE4B2: dw $1828, $180E, $1824, $18A9, $1826, $1800, $180D, $1823\n\n#_0CE4C2: dw $2461, $2F00 ; VRAM $C248 | 48 bytes | Horizontal\n#_0CE4C6: dw $1836, $1817, $18BF, $1812, $1817, $18A9, $181F, $181B\n#_0CE4D6: dw $1810, $1838, $1814, $1831, $18A9, $1813, $181E, $18A9\n#_0CE4E6: dw $1838, $181E, $1834, $18A9, $1836, $1810, $181D, $1833\n\n#_0CE4F6: dw $4461, $1300 ; VRAM $C288 | 20 bytes | Horizontal\n#_0CE4FA: dw $1823, $180E, $18A9, $1804, $1821, $1800, $1822, $1804\n#_0CE50A: dw $18A9, $186F\n\n#_0CE50E: dw $6461, $1300 ; VRAM $C2C8 | 20 bytes | Horizontal\n#_0CE512: dw $1833, $181E, $18A9, $1814, $1831, $1810, $1832, $1814\n#_0CE522: dw $18A9, $187F\n\n#_0CE526: dw $0663, $0700 ; VRAM $C60C | 8 bytes | Horizontal\n#_0CE52A: dw $1820, $1824, $18AF, $1823\n\n#_0CE532: dw $2663, $0700 ; VRAM $C64C | 8 bytes | Horizontal\n#_0CE536: dw $1830, $1834, $18BF, $1833\n\n#_0CE53E: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "KILLFile_BlankNameStripes", + "code": "KILLFile_BlankNameStripes:\n#_0CE53F: dw $A761, $2500 ; VRAM $C34E | 38 bytes | Horizontal\n#_0CE543: dw $18E7, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE553: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE563: dw $18A9, $18A9, $18A9\n\n#_0CE569: dw $C761, $2500 ; VRAM $C38E | 38 bytes | Horizontal\n#_0CE56D: dw $18F7, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE57D: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE58D: dw $18A9, $18A9, $18A9\n\n#_0CE593: dw $0762, $2500 ; VRAM $C40E | 38 bytes | Horizontal\n#_0CE597: dw $18E8, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE5A7: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE5B7: dw $18A9, $18A9, $18A9\n\n#_0CE5BD: dw $2762, $2500 ; VRAM $C44E | 38 bytes | Horizontal\n#_0CE5C1: dw $18F8, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE5D1: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE5E1: dw $18A9, $18A9, $18A9\n\n#_0CE5E7: dw $6762, $2500 ; VRAM $C4CE | 38 bytes | Horizontal\n#_0CE5EB: dw $18E9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE5FB: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE60B: dw $18A9, $18A9, $18A9\n\n#_0CE611: dw $8762, $2500 ; VRAM $C50E | 38 bytes | Horizontal\n#_0CE615: dw $18F9, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE625: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CE635: dw $18A9, $18A9, $18A9\n\n#_0CE63B: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "FileSelectCopyFileTilemap", + "code": "FileSelectCopyFileTilemap:\n#_0CE63C: dw $6560, $1700 ; VRAM $C0CA | 24 bytes | Horizontal\n#_0CE640: dw $1802, $180E, $180F, $1828, $18A9, $18A9, $180F, $180B\n#_0CE650: dw $1800, $1828, $1804, $1821\n\n#_0CE658: dw $8560, $1700 ; VRAM $C10A | 24 bytes | Horizontal\n#_0CE65C: dw $1812, $181E, $181F, $1838, $18A9, $18A9, $181F, $181B\n#_0CE66C: dw $1810, $1838, $1814, $1831\n\n#_0CE674: dw $0663, $0700 ; VRAM $C60C | 8 bytes | Horizontal\n#_0CE678: dw $1820, $1824, $18AF, $1823\n\n#_0CE680: dw $2663, $0700 ; VRAM $C64C | 8 bytes | Horizontal\n#_0CE684: dw $1830, $1834, $18BF, $1833\n\n#_0CE68C: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_HeaderStripe", + "code": "CopyFile_HeaderStripe:\n#_0CE68D: dw $0461, $1500 ; VRAM $C208 | 22 bytes | Horizontal\n#_0CE691: dw $1885, $1826, $1807, $18AF, $1802, $1807, $186F, $1886\n#_0CE6A1: dw $18A9, $18A9, $18A9\n\n#_0CE6A7: dw $2461, $1500 ; VRAM $C248 | 22 bytes | Horizontal\n#_0CE6AB: dw $1895, $1836, $1817, $18BF, $1812, $1817, $187F, $1896\n#_0CE6BB: dw $18A9, $18A9, $18A9\n\n#_0CE6C1: dw $6761, $0F00 ; VRAM $C2CE | 16 bytes | Horizontal\n#_0CE6C5: dw $18E7, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE6D5: dw $8761, $0F00 ; VRAM $C30E | 16 bytes | Horizontal\n#_0CE6D9: dw $18F7, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE6E9: dw $C761, $0F00 ; VRAM $C38E | 16 bytes | Horizontal\n#_0CE6ED: dw $18E8, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE6FD: dw $E761, $0F00 ; VRAM $C3CE | 16 bytes | Horizontal\n#_0CE701: dw $18F8, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE711: dw $2762, $0F00 ; VRAM $C44E | 16 bytes | Horizontal\n#_0CE715: dw $18E9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE725: dw $4762, $0F00 ; VRAM $C48E | 16 bytes | Horizontal\n#_0CE729: dw $18F9, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE739: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "CopyFile_TargetHeaderStripes", + "code": "CopyFile_TargetHeaderStripes:\n#_0CE73A: dw $5161, $1500 ; VRAM $C2A2 | 22 bytes | Horizontal\n#_0CE73E: dw $1885, $1823, $180E, $18A9, $1826, $1807, $18AF, $1802\n#_0CE74E: dw $1807, $186F, $1886\n\n#_0CE754: dw $7161, $1500 ; VRAM $C2E2 | 22 bytes | Horizontal\n#_0CE758: dw $1895, $1833, $181E, $18B9, $1836, $1817, $18BF, $1812\n#_0CE768: dw $1817, $187F, $1896\n\n#_0CE76E: dw $B461, $0F00 ; VRAM $C368 | 16 bytes | Horizontal\n#_0CE772: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE782: dw $D461, $0F00 ; VRAM $C3A8 | 16 bytes | Horizontal\n#_0CE786: dw $18A9, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE796: dw $1462, $0F00 ; VRAM $C428 | 16 bytes | Horizontal\n#_0CE79A: dw $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE7AA: dw $3462, $0F00 ; VRAM $C468 | 16 bytes | Horizontal\n#_0CE7AE: dw $18A9, $1891, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n\n#_0CE7BE: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "NamePlayerTilemap", + "code": "NamePlayerTilemap:\n#_0CE7BF: dw $A410, $2A40 ; VRAM $2148 | 44 bytes | Fixed horizontal\n#_0CE7C3: dw $147F\n\n#_0CE7C5: dw $C410, $2A40 ; VRAM $2188 | 44 bytes | Fixed horizontal\n#_0CE7C9: dw $147F\n\n#_0CE7CB: dw $6311, $1840 ; VRAM $22C6 | 26 bytes | Fixed horizontal\n#_0CE7CF: dw $147F\n\n#_0CE7D1: dw $8311, $1840 ; VRAM $2306 | 26 bytes | Fixed horizontal\n#_0CE7D5: dw $147F\n\n#_0CE7D7: dw $A311, $1840 ; VRAM $2346 | 26 bytes | Fixed horizontal\n#_0CE7DB: dw $147F\n\n#_0CE7DD: dw $E311, $3240 ; VRAM $23C6 | 52 bytes | Fixed horizontal\n#_0CE7E1: dw $147F\n\n#_0CE7E3: dw $0312, $3240 ; VRAM $2406 | 52 bytes | Fixed horizontal\n#_0CE7E7: dw $147F\n\n#_0CE7E9: dw $2312, $3240 ; VRAM $2446 | 52 bytes | Fixed horizontal\n#_0CE7ED: dw $147F\n\n#_0CE7EF: dw $4312, $3240 ; VRAM $2486 | 52 bytes | Fixed horizontal\n#_0CE7F3: dw $147F\n\n#_0CE7F5: dw $6312, $3240 ; VRAM $24C6 | 52 bytes | Fixed horizontal\n#_0CE7F9: dw $147F\n\n#_0CE7FB: dw $8312, $3240 ; VRAM $2506 | 52 bytes | Fixed horizontal\n#_0CE7FF: dw $147F\n\n#_0CE801: dw $A312, $3240 ; VRAM $2546 | 52 bytes | Fixed horizontal\n#_0CE805: dw $147F\n\n#_0CE807: dw $C312, $3240 ; VRAM $2586 | 52 bytes | Fixed horizontal\n#_0CE80B: dw $147F\n\n#_0CE80D: dw $E312, $3240 ; VRAM $25C6 | 52 bytes | Fixed horizontal\n#_0CE811: dw $147F\n\n#_0CE813: dw $0313, $3240 ; VRAM $2606 | 52 bytes | Fixed horizontal\n#_0CE817: dw $147F\n\n#_0CE819: dw $8210, $3300 ; VRAM $2104 | 52 bytes | Horizontal\n#_0CE81D: dw $1589, $158A, $158B, $158C, $158B, $158C, $158B, $158C\n#_0CE82D: dw $158B, $158C, $158B, $158C, $158B, $158C, $158B, $158C\n#_0CE83D: dw $158B, $158C, $158B, $158C, $158B, $158C, $158B, $158C\n#_0CE84D: dw $558A, $5589\n\n#_0CE851: dw $A210, $0300 ; VRAM $2144 | 4 bytes | Horizontal\n#_0CE855: dw $1599, $159A\n\n#_0CE859: dw $BA10, $0300 ; VRAM $2174 | 4 bytes | Horizontal\n#_0CE85D: dw $559A, $5599\n\n#_0CE861: dw $C210, $0300 ; VRAM $2184 | 4 bytes | Horizontal\n#_0CE865: dw $15A9, $15AA\n\n#_0CE869: dw $DA10, $0300 ; VRAM $21B4 | 4 bytes | Horizontal\n#_0CE86D: dw $559A, $5599\n\n#_0CE871: dw $E210, $3300 ; VRAM $21C4 | 52 bytes | Horizontal\n#_0CE875: dw $159D, $15AD, $159B, $159C, $159B, $159C, $159B, $159C\n#_0CE885: dw $159B, $159C, $159B, $159C, $159B, $159C, $159B, $159C\n#_0CE895: dw $159B, $159C, $159B, $159C, $159B, $159C, $159B, $159C\n#_0CE8A5: dw $55AD, $559D\n\n#_0CE8A9: dw $0211, $3300 ; VRAM $2204 | 52 bytes | Horizontal\n#_0CE8AD: dw $15AB, $15AC, $15AB, $15AC, $15AB, $15AC, $15AB, $15AC\n#_0CE8BD: dw $15AB, $15AC, $15AB, $15AC, $15AB, $15AC, $15AB, $15AC\n#_0CE8CD: dw $15AB, $15AC, $15AB, $15AC, $15AB, $15AC, $15AB, $15AC\n#_0CE8DD: dw $15AB, $15AC\n\n#_0CE8E1: dw $4211, $1D00 ; VRAM $2284 | 30 bytes | Horizontal\n#_0CE8E5: dw $1587, $1588, $1587, $1588, $1587, $1588, $1587, $1588\n#_0CE8F5: dw $1587, $1588, $1587, $1588, $1587, $1588, $1587\n\n#_0CE903: dw $6211, $1B80 ; VRAM $22C4 | 28 bytes | Vertical\n#_0CE907: dw $15AF, $15A7, $15AF, $15A7, $15AF, $15A7, $15AF, $15A7\n#_0CE917: dw $15AF, $15A7, $15AF, $15A7, $15AF, $15A7\n\n#_0CE923: dw $7011, $0580 ; VRAM $22E0 | 6 bytes | Vertical\n#_0CE927: dw $15A8, $15AE, $15A8\n\n#_0CE92D: dw $C311, $3500 ; VRAM $2386 | 54 bytes | Horizontal\n#_0CE931: dw $1588, $1598, $1588, $1598, $1588, $1598, $1588, $1598\n#_0CE941: dw $1588, $1598, $1588, $1598, $1588, $1598, $1588, $1587\n#_0CE951: dw $1588, $1587, $1588, $1587, $1588, $1587, $1588, $1587\n#_0CE961: dw $1588, $1587, $1588\n\n#_0CE967: dw $FD11, $1380 ; VRAM $23FA | 20 bytes | Vertical\n#_0CE96B: dw $15A8, $15AE, $15A8, $15AE, $15A8, $15AE, $15A8, $15AE\n#_0CE97B: dw $15A8, $15AE\n\n#_0CE97F: dw $2213, $3700 ; VRAM $2644 | 56 bytes | Horizontal\n#_0CE983: dw $1597, $1598, $1597, $1598, $1597, $1598, $1597, $1598\n#_0CE993: dw $1597, $1598, $1597, $1598, $1597, $1598, $1597, $1598\n#_0CE9A3: dw $1597, $1598, $1597, $1598, $1597, $1598, $1597, $1598\n#_0CE9B3: dw $1597, $1598, $1597, $1598\n\n#_0CE9BB: dw $F011, $12C0 ; VRAM $23E0 | 20 bytes | Fixed vertical\n#_0CE9BF: dw $158D\n\n#_0CE9C1: dw $A460, $2B00 ; VRAM $C148 | 44 bytes | Horizontal\n#_0CE9C5: dw $18A9, $1821, $1804, $1806, $18AF, $1822, $1823, $1804\n#_0CE9D5: dw $1821, $18A9, $18A9, $1828, $180E, $1824, $1821, $18A9\n#_0CE9E5: dw $18A9, $180D, $1800, $180C, $1804, $18A9\n\n#_0CE9F1: dw $C460, $2B00 ; VRAM $C188 | 44 bytes | Horizontal\n#_0CE9F5: dw $18A9, $1831, $1814, $1816, $18BF, $1832, $1833, $1814\n#_0CEA05: dw $1831, $18A9, $18A9, $1838, $181E, $1834, $1831, $18A9\n#_0CEA15: dw $18A9, $181D, $1810, $181C, $1814, $18A9\n\n#_0CEA21: dw $0262, $3900 ; VRAM $C404 | 58 bytes | Horizontal\n#_0CEA25: dw $1800, $18A9, $1801, $18A9, $1802, $18A9, $1803, $18A9\n#_0CEA35: dw $1804, $18A9, $1805, $18A9, $1806, $18A9, $1807, $18A9\n#_0CEA45: dw $18AF, $18A9, $1809, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEA55: dw $182A, $18A9, $182B, $18A9, $182C\n\n#_0CEA5F: dw $2262, $3900 ; VRAM $C444 | 58 bytes | Horizontal\n#_0CEA63: dw $1810, $18A9, $1811, $18A9, $1812, $18A9, $1813, $18A9\n#_0CEA73: dw $1814, $18A9, $1815, $18A9, $1816, $18A9, $1817, $18A9\n#_0CEA83: dw $18BF, $18A9, $1819, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEA93: dw $183A, $18A9, $183B, $18A9, $183C\n\n#_0CEA9D: dw $4262, $3900 ; VRAM $C484 | 58 bytes | Horizontal\n#_0CEAA1: dw $180A, $18A9, $180B, $18A9, $180C, $18A9, $180D, $18A9\n#_0CEAB1: dw $180E, $18A9, $180F, $18A9, $1820, $18A9, $1821, $18A9\n#_0CEAC1: dw $1822, $18A9, $1823, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEAD1: dw $1844, $18A9, $18AF, $18A9, $1846\n\n#_0CEADB: dw $6262, $3900 ; VRAM $C4C4 | 58 bytes | Horizontal\n#_0CEADF: dw $181A, $18A9, $181B, $18A9, $181C, $18A9, $181D, $18A9\n#_0CEAEF: dw $181E, $18A9, $181F, $18A9, $1830, $18A9, $1831, $18A9\n#_0CEAFF: dw $1832, $18A9, $1833, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEB0F: dw $1854, $18A9, $18BF, $18A9, $1856\n\n#_0CEB19: dw $8262, $3900 ; VRAM $C504 | 58 bytes | Horizontal\n#_0CEB1D: dw $1824, $18A9, $1825, $18A9, $1826, $18A9, $1827, $18A9\n#_0CEB2D: dw $1828, $18A9, $1829, $18A9, $1880, $18A9, $1881, $18A9\n#_0CEB3D: dw $1882, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEB4D: dw $184E, $18A9, $184F, $18A9, $1860\n\n#_0CEB57: dw $A262, $3900 ; VRAM $C544 | 58 bytes | Horizontal\n#_0CEB5B: dw $1834, $18A9, $1835, $18A9, $1836, $18A9, $1837, $18A9\n#_0CEB6B: dw $1838, $18A9, $1839, $18A9, $1890, $18A9, $1891, $18A9\n#_0CEB7B: dw $1892, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CEB8B: dw $185E, $18A9, $185F, $18A9, $1870\n\n#_0CEB95: dw $CC62, $1100 ; VRAM $C598 | 18 bytes | Horizontal\n#_0CEB99: dw $18AA, $18A9, $1884, $18A9, $18A9, $18A9, $1804, $180D\n#_0CEBA9: dw $1803\n\n#_0CEBAB: dw $EC62, $1100 ; VRAM $C5D8 | 18 bytes | Horizontal\n#_0CEBAF: dw $18BA, $18A9, $1894, $18A9, $18A9, $18A9, $1814, $181D\n#_0CEBBF: dw $1813\n\n#_0CEBC1: dw $0066, $3500 ; VRAM $CC00 | 54 bytes | Horizontal\n#_0CEBC5: dw $182D, $18A9, $182E, $18A9, $182F, $18A9, $1840, $18A9\n#_0CEBD5: dw $1841, $18A9, $18C0, $18A9, $1843, $18A9, $18A9, $18A9\n#_0CEBE5: dw $18A9, $18A9, $18E6, $18A9, $18E7, $18A9, $18E8, $18A9\n#_0CEBF5: dw $18E9, $18A9, $18EA\n\n#_0CEBFB: dw $2066, $3500 ; VRAM $CC40 | 54 bytes | Horizontal\n#_0CEBFF: dw $183D, $18A9, $183E, $18A9, $183F, $18A9, $1850, $18A9\n#_0CEC0F: dw $1851, $18A9, $18D0, $18A9, $1853, $18A9, $18A9, $18A9\n#_0CEC1F: dw $18A9, $18A9, $18F6, $18A9, $18F7, $18A9, $18F8, $18A9\n#_0CEC2F: dw $18F9, $18A9, $18FA\n\n#_0CEC35: dw $4066, $3500 ; VRAM $CC80 | 54 bytes | Horizontal\n#_0CEC39: dw $1847, $18A9, $1848, $18A9, $1849, $18A9, $184A, $18A9\n#_0CEC49: dw $184B, $18A9, $184C, $18A9, $184D, $18A9, $18A9, $18A9\n#_0CEC59: dw $18A9, $18A9, $18EB, $18A9, $18EC, $18A9, $18ED, $18A9\n#_0CEC69: dw $18EE, $18A9, $18EF\n\n#_0CEC6F: dw $6066, $3500 ; VRAM $CCC0 | 54 bytes | Horizontal\n#_0CEC73: dw $1857, $18A9, $1858, $18A9, $1859, $18A9, $185A, $18A9\n#_0CEC83: dw $185B, $18A9, $185C, $18A9, $185D, $18A9, $18A9, $18A9\n#_0CEC93: dw $18A9, $18A9, $18FB, $18A9, $18FC, $18A9, $18FD, $18A9\n#_0CECA3: dw $18FE, $18A9, $18FF\n\n#_0CECA9: dw $8066, $3100 ; VRAM $CD00 | 50 bytes | Horizontal\n#_0CECAD: dw $1861, $18A9, $1862, $18A9, $1863, $18A9, $1880, $18A9\n#_0CECBD: dw $1881, $18A9, $1882, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CECCD: dw $18A9, $18A9, $18C1, $18A9, $186F, $18A9, $1885, $18A9\n#_0CECDD: dw $1886\n\n#_0CECDF: dw $A066, $3100 ; VRAM $CD40 | 50 bytes | Horizontal\n#_0CECE3: dw $1871, $18A9, $1872, $18A9, $1873, $18A9, $1890, $18A9\n#_0CECF3: dw $1891, $18A9, $1892, $18A9, $18A9, $18A9, $18A9, $18A9\n#_0CED03: dw $18A9, $18A9, $18D1, $18A9, $187F, $18A9, $1895, $18A9\n#_0CED13: dw $1896\n\n#_0CED15: dw $C466, $2D00 ; VRAM $CD88 | 46 bytes | Horizontal\n#_0CED19: dw $18AA, $18A9, $1884, $18A9, $18A9, $18A9, $1804, $180D\n#_0CED29: dw $1803, $18A9, $18A9, $18A9, $18A9, $18A9, $18AA, $18A9\n#_0CED39: dw $1884, $18A9, $18A9, $18A9, $1804, $180D, $1803\n\n#_0CED47: dw $E466, $2D00 ; VRAM $CDC8 | 46 bytes | Horizontal\n#_0CED4B: dw $18BA, $18A9, $1894, $18A9, $18A9, $18A9, $1814, $181D\n#_0CED5B: dw $1813, $18A9, $18A9, $18A9, $18A9, $18A9, $18BA, $18A9\n#_0CED6B: dw $1894, $18A9, $18A9, $18A9, $1814, $181D, $1813\n\n#_0CED79: db $FF ; end of stripes data\n\n; =========================================================\n\npool Intro_DisplayLogo\n\n.object_a\n#_0CED7A: db $60, $70, $80, $88\n\n.object_b\n#_0CED7E: db $69, $6B, $6D, $6E\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_DisplayLogo", + "code": "Intro_DisplayLogo:\n#_0CED82: PHB\n#_0CED83: PHK\n#_0CED84: PLB\n\n#_0CED85: LDY.b #$03\n#_0CED87: LDX.b #$0C\n\n.next\n#_0CED89: LDA.b #$02\n#_0CED8B: STA.w $0A20,Y\n\n#_0CED8E: LDA.w .object_a,Y\n#_0CED91: STA.w $0800,X\n\n#_0CED94: LDA.b #$68\n#_0CED96: STA.w $0801,X\n\n#_0CED99: LDA.w .object_b,Y\n#_0CED9C: STA.w $0802,X\n\n#_0CED9F: LDA.b #$32\n#_0CEDA1: STA.w $0803,X\n\n#_0CEDA4: DEX\n#_0CEDA5: DEX\n#_0CEDA6: DEX\n#_0CEDA7: DEX\n\n#_0CEDA8: DEY\n#_0CEDA9: BPL .next\n\n#_0CEDAB: PLB\n\n#_0CEDAC: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Module14_Attract", + "code": "Module14_Attract:\n#_0CEDAD: LDA.b $13\n#_0CEDAF: BEQ .continue\n\n#_0CEDB1: CMP.b #$80\n#_0CEDB3: BEQ .continue\n\n#_0CEDB5: LDA.b $22\n#_0CEDB7: BEQ .continue\n\n#_0CEDB9: CMP.b #$02\n#_0CEDBB: BEQ .continue\n\n#_0CEDBD: CMP.b #$06\n#_0CEDBF: BEQ .continue\n\n#_0CEDC1: LDA.b $F4\n#_0CEDC3: AND.b #$90\n#_0CEDC5: BEQ .continue\n\n#_0CEDC7: LDA.b #$09\n#_0CEDC9: STA.b $22\n\n.continue\n#_0CEDCB: LDA.b $22\n#_0CEDCD: ASL A\n#_0CEDCE: TAX\n\n#_0CEDCF: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n.vectors\n#_0CEDD2: dw Attract_FadeOut ; 0x00\n#_0CEDD4: dw Attract_Initialize ; 0x01\n#_0CEDD6: dw Attract_FadeOutSequence ; 0x02\n#_0CEDD8: dw Attract_LoadNewScene ; 0x03\n#_0CEDDA: dw Attract_FadeInSequence ; 0x04\n#_0CEDDC: dw Attract_EnactStory ; 0x05\n#_0CEDDE: dw Attract_FadeOutSequence ; 0x06\n#_0CEDE0: dw Attract_LoadNewScene ; 0x07\n#_0CEDE2: dw Attract_EnactStory ; 0x08\n#_0CEDE4: dw Attract_SkipToFileSelect ; 0x09\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Attract_FadeOut", + "code": "Attract_FadeOut:\n#_0CEDE6: JSL Intro_HandleAllTriforceAnimations\n\n#_0CEDEA: STZ.w $1F00\n#_0CEDED: STZ.w $012A\n\n#_0CEDF0: JSR Intro_HandleLogoSword\n\n#_0CEDF3: LDA.b $13\n#_0CEDF5: BEQ .fully_faded\n\n#_0CEDF7: DEC.b $13\n\n#_0CEDF9: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_Initialize", + "code": "Attract_Initialize:\n#_0CEE0C: LDX.b #$50\n\n.next\n#_0CEE0E: STZ.b $20,X\n\n#_0CEE10: DEX\n#_0CEE11: BPL .next\n\n#_0CEE13: JSL EraseTilemaps_normal\n#_0CEE17: JSL Attract_LoadBG3GFX\n\n#_0CEE1B: LDA.b #$04\n#_0CEE1D: STA.w $0AB3\n\n#_0CEE20: LDA.b #$01\n#_0CEE22: STA.w $0AB2\n#_0CEE25: STZ.w $0AA9\n\n#_0CEE28: JSL Palettes_Load_HUD\n\n#_0CEE2C: LDA.b #$02\n#_0CEE2E: STA.w $0AA9\n\n#_0CEE31: JSL Palettes_Load_OWBGMain\n#_0CEE35: JSL Palettes_Load_HUD\n#_0CEE39: JSL Palettes_Load_LinkArmorAndGloves\n\n#_0CEE3D: LDA.b #$00 ; RGB: #000070\n#_0CEE3F: STA.l $7EC53A\n\n#_0CEE43: LDA.b #$38\n#_0CEE45: STA.l $7EC53B\n\n#_0CEE49: INC.b $15\n\n; ---------------------------------------------------------\n\n#_0CEE4B: LDA.b #$14\n#_0CEE4D: STA.b $EA\n\n#_0CEE4F: JSR Attract_BuildBackgrounds\n\n#_0CEE52: REP #$10\n\n#_0CEE54: STZ.w $1CD8\n\n#_0CEE57: LDX.w #$0112 ; MESSAGE 0112\n#_0CEE5A: STX.w $1CF0\n\n#_0CEE5D: STZ.b $E8\n#_0CEE5F: STZ.b $E9\n\n#_0CEE61: LDX.w #$1010\n#_0CEE64: STX.w $0200\n\n#_0CEE67: INC.b $22\n#_0CEE69: INC.b $22\n#_0CEE6B: INC.b $22\n\n#_0CEE6D: SEP #$10\n\n#_0CEE6F: JSR Attract_SetUpWindowingHDMA\n\n; ---------------------------------------------------------\n\n#_0CEE72: STZ.b $96\n#_0CEE74: STZ.b $97\n\n#_0CEE76: LDA.b #$B0\n#_0CEE78: STA.b $98\n\n#_0CEE7A: LDA.b #$03\n#_0CEE7C: STA.b $1E\n#_0CEE7E: STZ.b $1F\n\n#_0CEE80: LDA.b #$25 ; Fixed color RGB: #282828\n#_0CEE82: STA.b $9C\n\n#_0CEE84: LDA.b #$45\n#_0CEE86: STA.b $9D\n\n#_0CEE88: LDA.b #$85\n#_0CEE8A: STA.b $9E\n\n#_0CEE8C: LDA.b #$10\n#_0CEE8E: STA.b $99\n\n#_0CEE90: LDA.b #$A3\n#_0CEE92: STA.b $9A\n\n#_0CEE94: STZ.w WBGLOG\n#_0CEE97: STZ.w WOBJLOG\n\n#_0CEE9A: LDA.b #$C0\n#_0CEE9C: STA.b $9B\n\n#_0CEE9E: LDA.b #$06 ; SONG 06\n#_0CEEA0: STA.w $012C\n\n#_0CEEA3: INC.b $27\n\n#_0CEEA5: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_FadeInStep", + "code": "Attract_FadeInStep:\n#_0CEEA6: LDA.b $13\n#_0CEEA8: CMP.b #$0F\n#_0CEEAA: BEQ .step\n\n#_0CEEAC: DEC.b $5E\n#_0CEEAE: BPL .exit\n\n#_0CEEB0: INC.b $13\n\n#_0CEEB2: LDA.b #$01\n#_0CEEB4: STA.b $5E\n\n.exit\n#_0CEEB6: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_FadeInSequence", + "code": "Attract_FadeInSequence:\n#_0CEEBA: LDA.b $13\n#_0CEEBC: CMP.b #$0F\n#_0CEEBE: BEQ Attract_FadedSequenceAdvance\n\n#_0CEEC0: DEC.b $5E\n#_0CEEC2: BPL .exit\n\n#_0CEEC4: INC.b $13\n\n#_0CEEC6: LDA.b #$01\n#_0CEEC8: STA.b $5E\n\n.exit\n#_0CEECA: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_FadeOutSequence", + "code": "Attract_FadeOutSequence:\n#_0CEECB: LDA.b $13\n#_0CEECD: BEQ .advance\n\n#_0CEECF: DEC.b $5E\n#_0CEED1: BPL .exit\n\n#_0CEED3: DEC.b $13\n\n#_0CEED5: LDA.b #$01\n#_0CEED7: STA.b $5E\n\n.exit\n#_0CEED9: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_FadedSequenceAdvance", + "code": "Attract_FadedSequenceAdvance:\n#_0CEEE2: INC.b $22\n\n#_0CEEE4: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_LoadNewScene", + "code": "Attract_LoadNewScene:\n#_0CEEE5: LDA.b $23\n#_0CEEE7: ASL A\n#_0CEEE8: TAX\n\n#_0CEEE9: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n.vectors\n#_0CEEEC: dw AttractScene_PolkaDots ; 0x00\n#_0CEEEE: dw AttractScene_WorldMap ; 0x01\n#_0CEEF0: dw AttractScene_ThroneRoom ; 0x02\n#_0CEEF2: dw AttractScene_Prison ; 0x03\n#_0CEEF4: dw AttractScene_AgahnimAltar ; 0x04\n#_0CEEF6: dw AttractScene_EndOfStory ; 0x05\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_PolkaDots", + "code": "AttractScene_PolkaDots:\n#_0CEEF8: STZ.b $26\n\n#_0CEEFA: INC.b $22\n\n#_0CEEFC: STZ.b $13\n\n#_0CEEFE: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_WorldMap", + "code": "AttractScene_WorldMap:\n#_0CEEFF: LDA.b #$13\n#_0CEF01: STA.w BG1SC\n\n#_0CEF04: LDA.b #$03\n#_0CEF06: STA.w BG2SC\n\n#_0CEF09: LDA.b #$80\n#_0CEF0B: STA.b $99\n\n#_0CEF0D: LDA.b #$21\n#_0CEF0F: STA.b $9A\n\n#_0CEF11: LDA.b #$07\n#_0CEF13: STA.w BGMODE\n#_0CEF16: STA.b $94\n\n#_0CEF18: LDA.b #$80\n#_0CEF1A: STA.w M7SEL\n\n#_0CEF1D: JSL WorldMap_LoadLightWorldMap\n\n; ---------------------------------------------------------\n\n#_0CEF21: REP #$20\n\n#_0CEF23: LDA.w #$00ED\n#_0CEF26: STA.w $063A\n\n#_0CEF29: LDA.w #$0100\n#_0CEF2C: STA.w $0638\n\n#_0CEF2F: LDA.w #$0080\n#_0CEF32: STA.w $0120\n\n#_0CEF35: LDA.w #$00C0\n#_0CEF38: STA.w $0124\n\n#_0CEF3B: SEP #$20\n\n#_0CEF3D: LDA.b #$FF\n#_0CEF3F: STA.w $0637\n\n#_0CEF42: JSR Attract_ControlMapZoom\n\n#_0CEF45: LDA.b #$01\n#_0CEF47: STA.b $25\n\n#_0CEF49: INC.b $22\n\n#_0CEF4B: STZ.b $13\n\n#_0CEF4D: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_ThroneRoom", + "code": "AttractScene_ThroneRoom:\n#_0CEF4E: STZ.w HDMAEN\n#_0CEF51: STZ.b $9B\n\n#_0CEF53: LDA.b #$02\n#_0CEF55: STA.b $99\n\n#_0CEF57: LDA.b #$20\n#_0CEF59: STA.b $9A\n\n#_0CEF5B: LDA.b #$0A\n#_0CEF5D: STA.w $0AA4\n\n#_0CEF60: JSL LoadCommonSprites_long\n\n#_0CEF64: REP #$20\n\n#_0CEF66: LDA.b $20\n#_0CEF68: PHA\n\n#_0CEF69: LDA.b $22\n#_0CEF6B: PHA\n\n#_0CEF6C: SEP #$20\n\n#_0CEF6E: LDA.b #$74\n#_0CEF70: JSL Underworld_LoadAndDrawEntranceRoom\n\n; ---------------------------------------------------------\n\n#_0CEF74: REP #$20\n\n#_0CEF76: PLA\n#_0CEF77: STA.b $22\n\n#_0CEF79: PLA\n#_0CEF7A: STA.b $20\n\n#_0CEF7C: SEP #$20\n\n#_0CEF7E: STZ.w $0AB6\n#_0CEF81: STZ.w $0AAC\n\n#_0CEF84: LDA.b #$0E\n#_0CEF86: STA.w $0AAD\n\n#_0CEF89: LDA.b #$03\n#_0CEF8B: STA.w $0AAE\n\n#_0CEF8E: LDX.b #$7E\n#_0CEF90: LDA.b #$00\n#_0CEF92: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n#_0CEF96: LDA.b #$00 ; RGB: #0008C0\n#_0CEF98: STA.l $7EC53A\n\n#_0CEF9C: LDA.b #$38\n#_0CEF9E: STA.l $7EC53B\n\n; ---------------------------------------------------------\n\n#_0CEFA2: STZ.w $1CD8\n\n#_0CEFA5: LDA.b #$13 ; MESSAGE 0113\n#_0CEFA7: STA.w $1CF0\n\n#_0CEFAA: LDA.b #$01\n#_0CEFAC: STA.w $1CF1\n\n#_0CEFAF: LDA.b #$02\n#_0CEFB1: STA.b $25\n\n#_0CEFB3: LDA.b #$E0\n#_0CEFB5: STA.b $2C\n\n#_0CEFB7: REP #$20\n\n#_0CEFB9: LDA.w #$0210\n#_0CEFBC: STA.b $64\n\n#_0CEFBE: SEP #$20\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_AdvanceFromDungeon", + "code": "AttractScene_AdvanceFromDungeon:\n#_0CEFC0: INC.b $22\n\n#_0CEFC2: STZ.b $13\n#_0CEFC4: STZ.b $EA\n\n#_0CEFC6: LDA.w $011F\n#_0CEFC9: AND.b #$01\n#_0CEFCB: STA.w $011F\n\n#_0CEFCE: LDA.w $0123\n#_0CEFD1: AND.b #$01\n#_0CEFD3: STA.w $0123\n\n#_0CEFD6: LDA.b $E3\n#_0CEFD8: AND.b #$01\n#_0CEFDA: STA.b $E3\n\n#_0CEFDC: LDA.b $E9\n#_0CEFDE: AND.b #$01\n#_0CEFE0: STA.b $E9\n\n#_0CEFE2: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_Prison", + "code": "AttractScene_Prison:\n#_0CEFE3: STZ.b $99\n#_0CEFE5: STZ.b $9A\n\n#_0CEFE7: REP #$20\n\n#_0CEFE9: LDA.b $20\n#_0CEFEB: PHA\n\n#_0CEFEC: LDA.b $22\n#_0CEFEE: PHA\n\n#_0CEFEF: SEP #$20\n\n#_0CEFF1: LDA.b #$73\n#_0CEFF3: JSL Underworld_LoadAndDrawEntranceRoom\n\n#_0CEFF7: REP #$20\n\n#_0CEFF9: PLA\n#_0CEFFA: STA.b $22\n\n#_0CEFFC: PLA\n#_0CEFFD: STA.b $20\n\n#_0CEFFF: SEP #$20\n\n#_0CF001: LDA.b #$02\n#_0CF003: STA.w $0AB6\n#_0CF006: STZ.w $0AAC\n\n#_0CF009: LDA.b #$0E\n#_0CF00B: STA.w $0AAD\n\n#_0CF00E: LDA.b #$03\n#_0CF010: STA.w $0AAE\n\n#_0CF013: LDX.b #$7F\n#_0CF015: LDA.b #$01\n\n#_0CF017: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n#_0CF01B: LDA.b #$00 ; RGB: #000070\n#_0CF01D: STA.l $7EC53A\n\n#_0CF021: LDA.b #$38\n#_0CF023: STA.l $7EC53B\n\n; ---------------------------------------------------------\n\n#_0CF027: STZ.w $1CD8\n\n#_0CF02A: LDA.b #$14 ; MESSAGE 0114\n#_0CF02C: STA.w $1CF0\n\n#_0CF02F: LDA.b #$01\n#_0CF031: STA.w $1CF1\n\n#_0CF034: LDA.b #$94\n#_0CF036: STA.b $2B\n\n#_0CF038: LDA.b #$68\n#_0CF03A: STA.b $30\n\n#_0CF03C: STZ.b $31\n#_0CF03E: STZ.b $32\n#_0CF040: STZ.b $33\n\n#_0CF042: STZ.b $40\n#_0CF044: STZ.b $50\n#_0CF046: STZ.b $5F\n\n#_0CF048: LDA.b #$FF\n#_0CF04A: STA.b $25\n\n#_0CF04C: REP #$20\n\n#_0CF04E: LDA.w #$0240\n#_0CF051: STA.b $64\n\n#_0CF053: SEP #$20\n\n#_0CF055: JMP.w AttractScene_AdvanceFromDungeon\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_AgahnimAltar", + "code": "AttractScene_AgahnimAltar:\n#_0CF058: REP #$20\n\n#_0CF05A: LDA.b $20\n#_0CF05C: PHA\n\n#_0CF05D: LDA.b $22\n#_0CF05F: PHA\n\n#_0CF060: SEP #$20\n\n#_0CF062: LDA.b #$75\n#_0CF064: JSL Underworld_LoadAndDrawEntranceRoom\n\n#_0CF068: REP #$20\n\n#_0CF06A: PLA\n#_0CF06B: STA.b $22\n\n#_0CF06D: PLA\n#_0CF06E: STA.b $20\n\n#_0CF070: SEP #$20\n\n#_0CF072: STZ.w $0AB6\n#_0CF075: STZ.w $0AAC\n\n#_0CF078: LDA.b #$0E\n#_0CF07A: STA.w $0AAD\n\n#_0CF07D: LDA.b #$03\n#_0CF07F: STA.w $0AAE\n#_0CF082: STZ.w $0AA9\n\n#_0CF085: JSL Underworld_LoadAllPalettes\n\n#_0CF089: LDX.b #$7F\n#_0CF08B: LDA.b #$02\n#_0CF08D: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n#_0CF091: LDA.b #$00 ; RGB: #0008C0\n#_0CF093: STA.l $7EC33A\n#_0CF097: STA.l $7EC53A\n\n#_0CF09B: LDA.b #$38\n#_0CF09D: STA.l $7EC33B\n#_0CF0A1: STA.l $7EC53B\n\n; ---------------------------------------------------------\n\n#_0CF0A5: STZ.w $1CD8\n\n#_0CF0A8: LDA.b #$15 ; MESSAGE 0115\n#_0CF0AA: STA.w $1CF0\n\n#_0CF0AD: LDA.b #$01\n#_0CF0AF: STA.w $1CF1\n\n#_0CF0B2: LDA.b #$FF\n#_0CF0B4: STA.b $25\n\n#_0CF0B6: LDA.b #$70\n#_0CF0B8: STA.b $30\n#_0CF0BA: STA.b $62\n\n#_0CF0BC: LDA.b #$70\n#_0CF0BE: STA.b $63\n\n#_0CF0C0: LDA.b #$08\n#_0CF0C2: STA.b $32\n\n#_0CF0C4: STZ.b $50\n#_0CF0C6: STZ.b $51\n#_0CF0C8: STZ.b $52\n\n#_0CF0CA: STZ.b $5F\n#_0CF0CC: STZ.b $60\n#_0CF0CE: STZ.b $61\n\n#_0CF0D0: REP #$20\n\n#_0CF0D2: LDA.w #$00C0\n#_0CF0D5: STA.b $64\n\n#_0CF0D7: SEP #$20\n\n#_0CF0D9: JMP.w AttractScene_AdvanceFromDungeon\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractScene_EndOfStory", + "code": "AttractScene_EndOfStory:\n#_0CF0DC: REP #$20\n\n#_0CF0DE: JSL Attract_SetUpConclusionHDMA\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "InitializeTriforceIntro", + "code": "InitializeTriforceIntro:\n#_0CF0E2: INC.w $0710\n\n#_0CF0E5: JSL Intro_InitializeDefaultGFX\n#_0CF0E9: JSL Overworld_LoadAllPalettes_long\n\n#_0CF0ED: STZ.b $EA\n\n#_0CF0EF: REP #$20\n\n#_0CF0F1: STZ.w $063A\n#_0CF0F4: STZ.w $0638\n\n#_0CF0F7: STZ.w $0120\n#_0CF0FA: STZ.w $0124\n\n#_0CF0FD: STZ.w $011E\n#_0CF100: STZ.w $0122\n\n#_0CF103: SEP #$20\n\n#_0CF105: LDA.b #$F1 ; SONG F1 - fade\n#_0CF107: STA.w $012C\n\n#_0CF10A: STZ.b $23\n#_0CF10C: STZ.b $10\n\n#_0CF10E: LDA.b #$0A\n#_0CF110: STA.b $11\n\n#_0CF112: STA.b $B0\n\n#_0CF114: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_EnactStory", + "code": "Attract_EnactStory:\n#_0CF115: LDA.b $23\n#_0CF117: ASL A\n#_0CF118: TAX\n\n#_0CF119: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n.vectors\n#_0CF11C: dw AttractDramatize_PolkaDots ; 0x00\n#_0CF11E: dw AttractDramatize_WorldMap ; 0x01\n#_0CF120: dw AttractDramatize_ThroneRoom ; 0x02\n#_0CF122: dw AttractDramatize_Prison ; 0x03\n#_0CF124: dw AttractDramatize_AgahnimAltar ; 0x04\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_PolkaDots", + "code": "AttractDramatize_PolkaDots:\n#_0CF126: LDA.b $1A\n#_0CF128: AND.b #$03\n#_0CF12A: BNE .delay_scroll\n\n#_0CF12C: INC.w $0124\n#_0CF12F: INC.w $0120\n#_0CF132: INC.w $0122\n#_0CF135: DEC.w $011E\n\n.delay_scroll\n#_0CF138: LDA.b $27\n#_0CF13A: BEQ .delay_map_update\n\n#_0CF13C: JSR Attract_BuildNextImageTilemap\n\n#_0CF13F: STZ.b $27\n\n#_0CF141: INC.b $26\n#_0CF143: INC.b $26\n\n.delay_map_update\n#_0CF145: STZ.b $F2\n#_0CF147: STZ.b $F6\n#_0CF149: STZ.b $F4\n\n#_0CF14B: JSL RenderText\n\n#_0CF14F: REP #$20\n\n#_0CF151: DEC.w $0200\n#_0CF154: BNE .delay_sequence\n\n#_0CF156: SEP #$20\n\n#_0CF158: INC.b $23\n\n#_0CF15A: DEC.b $22\n#_0CF15C: DEC.b $22\n#_0CF15E: DEC.b $22\n\n#_0CF160: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_sequence\n#_0CF162: LDA.w $0200\n#_0CF165: CMP.w #$0018\n#_0CF168: BCS .exit\n\n#_0CF16A: AND.w #$0001\n#_0CF16D: BEQ .exit\n\n#_0CF16F: SEP #$20\n\n#_0CF171: DEC.b $13\n\n.exit\n#_0CF173: SEP #$20\n\n#_0CF175: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_WorldMap", + "code": "AttractDramatize_WorldMap:\n#_0CF176: LDA.w $0637\n#_0CF179: CMP.b #$00\n#_0CF17B: BEQ .advance_sequence\n\n#_0CF17D: CMP.b #$0F\n#_0CF17F: BCS .skip_fade\n\n#_0CF181: DEC.b $13\n\n.skip_fade\n#_0CF183: LDY.b #$01\n\n#_0CF185: DEC.b $25\n#_0CF187: BNE .exit\n\n#_0CF189: STY.b $25\n\n#_0CF18B: LDA.w $0637\n#_0CF18E: SEC\n#_0CF18F: SBC.b #$01\n#_0CF191: STA.w $0637\n\n#_0CF194: JSR Attract_ControlMapZoom\n\n.exit\n#_0CF197: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_ThroneRoom", + "code": "AttractDramatize_ThroneRoom:\n#_0CF1C8: STZ.b $2A\n\n#_0CF1CA: LDA.b $52\n#_0CF1CC: BNE .continue\n\n#_0CF1CE: LDA.b $13\n#_0CF1D0: CMP.b #$0F\n#_0CF1D2: BEQ .max_brightness\n\n#_0CF1D4: INC.b $13\n\n#_0CF1D6: BRA .continue\n\n.max_brightness\n#_0CF1D8: INC.b $52\n\n; ---------------------------------------------------------\n\n.continue\n#_0CF1DA: REP #$20\n\n#_0CF1DC: LDA.w $0122\n#_0CF1DF: BNE .scroll_screen\n\n#_0CF1E1: SEP #$20\n\n#_0CF1E3: JSR Attract_DoTextInDungeonScene\n\n#_0CF1E6: REP #$20\n\n#_0CF1E8: LDA.b $64\n\n#_0CF1EA: SEP #$20\n\n#_0CF1EC: BNE .continue_dramatization\n\n#_0CF1EE: LDA.b $2C\n#_0CF1F0: CMP.b #$1F\n#_0CF1F2: BCS .dont_fade_out\n\n#_0CF1F4: AND.b #$01\n#_0CF1F6: BNE .dont_fade_out\n\n#_0CF1F8: DEC.b $13\n\n.dont_fade_out\n#_0CF1FA: DEC.b $2C\n#_0CF1FC: BNE .continue_dramatization\n\n#_0CF1FE: INC.b $23\n#_0CF200: INC.b $22\n\n#_0CF202: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_Prison", + "code": "AttractDramatize_Prison:\n#_0CF27A: STZ.b $2A\n\n#_0CF27C: LDA.b $5F\n#_0CF27E: BNE .skip_fade\n\n#_0CF280: JSR Attract_FadeInStep\n\n.skip_fade\n#_0CF283: LDA.b #$38\n#_0CF285: STA.b $28\n\n#_0CF287: JSR Attract_DrawZelda\n\n#_0CF28A: LDA.b $25\n#_0CF28C: CMP.b #$C0\n#_0CF28E: BCS .delay_agahnim\n\n#_0CF290: JMP.w AttractDramatize_Agahnim\n\n.delay_agahnim\n#_0CF293: LDA.b #$70\n#_0CF295: STA.b $29\n\n#_0CF297: DEC.b $50\n#_0CF299: BPL .dont_reset_jab\n\n#_0CF29B: LDA.b #$0F\n#_0CF29D: STA.b $50\n\n.dont_reset_jab\n#_0CF29F: LDX.b $50\n\n#_0CF2A1: LDA.b $31\n#_0CF2A3: STA.b $40\n\n#_0CF2A5: LDA.b $30\n#_0CF2A7: CLC\n#_0CF2A8: ADC.l .maiden_jab_offset_x,X\n#_0CF2AC: STA.b $28\n\n#_0CF2AE: BCC .dont_disable_maiden\n\n#_0CF2B0: INC.b $40\n\n.dont_disable_maiden\n#_0CF2B2: JSR Attract_DrawKidnappedMaiden\n\n; ---------------------------------------------------------\n\n#_0CF2B5: LDX.b #$01\n\n.next_soldier\n#_0CF2B7: STZ.b $03\n\n#_0CF2B9: LDA.b $33\n#_0CF2BB: STA.b $06\n\n#_0CF2BD: LDA.b $29\n#_0CF2BF: CLC\n#_0CF2C0: ADC.l .soldier_offset_y,X\n#_0CF2C4: STA.b $02\n\n#_0CF2C6: LDA.l .soldier_direction,X\n#_0CF2CA: STA.b $04\n\n#_0CF2CC: LDA.l .soldier_palette,X\n#_0CF2D0: STA.b $05\n\n#_0CF2D2: PHX\n\n#_0CF2D3: REP #$20\n\n#_0CF2D5: TXA\n#_0CF2D6: ASL A\n#_0CF2D7: TAX\n\n#_0CF2D8: LDA.b $30\n#_0CF2DA: CLC\n#_0CF2DB: ADC.w #$0100\n\n#_0CF2DE: CLC\n#_0CF2DF: ADC.l .soldier_offset_x,X\n#_0CF2E3: STA.b $00\n\n#_0CF2E5: TAY\n#_0CF2E6: STY.b $34\n\n#_0CF2E8: SEP #$20\n\n#_0CF2EA: JSL SpritePrep_ResetProperties\n#_0CF2EE: JSL PuppetSoldier\n\n#_0CF2F2: PLX\n#_0CF2F3: DEX\n#_0CF2F4: BPL .next_soldier\n\n; ---------------------------------------------------------\n\n#_0CF2F6: INC.b $32\n\n#_0CF2F8: LDA.b $32\n#_0CF2FA: AND.b #$07\n#_0CF2FC: BNE AttractDramatize_Agahnim\n\n#_0CF2FE: LDY.b #$FF\n\n#_0CF300: LDA.b $33\n#_0CF302: CMP.b #$02\n#_0CF304: BNE .delay_sfx\n\n#_0CF306: STY.b $33\n\n#_0CF308: LDA.b $31\n#_0CF30A: BNE .delay_sfx\n\n#_0CF30C: LDA.b $32\n#_0CF30E: AND.b #$08\n#_0CF310: BEQ .delay_sfx\n\n#_0CF312: LDA.b #$04 ; SFX3.04\n#_0CF314: STA.w $012F\n\n.delay_sfx\n#_0CF317: INC.b $33\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_Agahnim", + "code": "AttractDramatize_Agahnim:\n#_0CF319: LDA.b $60\n#_0CF31B: ASL A\n#_0CF31C: TAX\n\n#_0CF31D: JMP.w (.vectors,X)\n\n.vectors\n#_0CF320: dw Dramaghanim_WaitForCue\n#_0CF322: dw Dramaghanim_MoveAndSpin\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Dramaghanim_AdvanceStory", + "code": "Dramaghanim_AdvanceStory:\n#_0CF324: INC.b $23\n\n#_0CF326: DEC.b $22\n#_0CF328: DEC.b $22\n\n#_0CF32A: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Dramaghanim_WaitForCue", + "code": "Dramaghanim_WaitForCue:\n#_0CF32B: LDA.b $34\n#_0CF32D: BNE .delay\n\n#_0CF32F: INC.b $60\n\n.delay\n#_0CF331: REP #$20\n\n#_0CF333: LDA.b $1A\n#_0CF335: AND.w #$0001\n#_0CF338: BEQ .delay_tick\n\n#_0CF33A: DEC.b $30\n\n.delay_tick\n#_0CF33C: LDA.w #AttractAgahnimOAM_size\n#_0CF33F: STA.b $2D\n\n#_0CF341: LDA.w #AttractAgahnimOAM_offset_x\n#_0CF344: STA.b $02\n\n#_0CF346: LDA.w #AttractAgahnimOAM_offset_y\n#_0CF349: STA.b $04\n\n#_0CF34B: LDA.w #AttractAgahnimOAM_char_step0\n#_0CF34E: STA.b $06\n\n#_0CF350: LDA.w #AttractAgahnimOAM_prop_step0\n#_0CF353: STA.b $08\n\n#_0CF355: SEP #$20\n\n#_0CF357: LDA.b #$58\n#_0CF359: STA.b $28\n\n#_0CF35B: LDA.b $2B\n#_0CF35D: STA.b $29\n\n#_0CF35F: LDY.b #$05\n#_0CF361: JSR Attract_DrawPreloadedSprite\n\n#_0CF364: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Dramaghanim_MoveAndSpin", + "code": "Dramaghanim_MoveAndSpin:\n#_0CF379: LDA.b $25\n#_0CF37B: CMP.b #$80\n#_0CF37D: BCS .continue\n\n#_0CF37F: JSR Attract_DoTextInDungeonScene\n\n#_0CF382: REP #$20\n\n#_0CF384: LDA.b $64\n\n#_0CF386: SEP #$20\n\n#_0CF388: BEQ .continue\n\n#_0CF38A: LDX.b #$08\n#_0CF38C: BRA .animate_agahnim\n\n.continue\n#_0CF38E: LDX.b #$00\n\n#_0CF390: LDA.b $2B\n#_0CF392: CMP.b #$6E\n#_0CF394: BEQ .timer_maxed\n\n#_0CF396: DEC.b $2B\n#_0CF398: BRA .animate_agahnim\n\n.timer_maxed\n#_0CF39A: LDA.b $25\n#_0CF39C: CMP.b #$1F\n#_0CF39E: BCS .delay_fade\n\n#_0CF3A0: AND.b #$01\n#_0CF3A2: BNE .delay_fade\n\n#_0CF3A4: DEC.b $13\n\n.delay_fade\n#_0CF3A6: DEC.b $25\n#_0CF3A8: BNE .dont_advance_story\n\n#_0CF3AA: JMP.w Dramaghanim_AdvanceStory\n\n; ---------------------------------------------------------\n\n.dont_advance_story\n#_0CF3AD: LDA.b $25\n#_0CF3AF: CMP.b #$C0\n#_0CF3B1: BCS .animate_agahnim\n\n#_0CF3B3: INX\n#_0CF3B4: INX\n\n#_0CF3B5: CMP.b #$B8\n#_0CF3B7: BCS .animate_agahnim\n\n#_0CF3B9: INX\n#_0CF3BA: INX\n\n#_0CF3BB: CMP.b #$B0\n#_0CF3BD: BCS .animate_agahnim\n\n#_0CF3BF: INX\n#_0CF3C0: INX\n\n#_0CF3C1: CMP.b #$A0\n#_0CF3C3: BCS .animate_agahnim\n\n#_0CF3C5: INX\n#_0CF3C6: INX\n\n; ---------------------------------------------------------\n\n.animate_agahnim\n#_0CF3C7: LDA.b #$A8\n#_0CF3C9: STA.b $28\n\n#_0CF3CB: REP #$20\n\n#_0CF3CD: LDA.b $1A\n#_0CF3CF: AND.w #$0001\n#_0CF3D2: BEQ .delay_tick\n\n#_0CF3D4: DEC.b $30\n\n.delay_tick\n#_0CF3D6: LDA.w #AttractAgahnimOAM_size\n#_0CF3D9: STA.b $2D\n\n#_0CF3DB: LDA.w #AttractAgahnimOAM_offset_x\n#_0CF3DE: STA.b $02\n\n#_0CF3E0: LDA.w #AttractAgahnimOAM_offset_y\n#_0CF3E3: STA.b $04\n\n#_0CF3E5: LDA.l .pointers_char,X\n#_0CF3E9: STA.b $06\n\n#_0CF3EB: LDA.l .pointers_prop,X\n#_0CF3EF: STA.b $08\n\n#_0CF3F1: SEP #$20\n\n#_0CF3F3: LDA.b #$58\n#_0CF3F5: STA.b $28\n\n#_0CF3F7: LDA.b $2B\n#_0CF3F9: STA.b $29\n\n#_0CF3FB: LDY.b #$05\n#_0CF3FD: JSR Attract_DrawPreloadedSprite\n\n#_0CF400: RTL", + "file": "bank_0C.asm" + }, + { + "name": "AttractDramatize_AgahnimAltar", + "code": "AttractDramatize_AgahnimAltar:\n#_0CF423: LDA.b $5D\n#_0CF425: BEQ .delay\n\n#_0CF427: JMP.w Dramaghanim_AdvanceStory\n\n.delay\n#_0CF42A: STZ.b $2A\n\n#_0CF42C: JSL HandleScreenFlash\n\n#_0CF430: LDA.b $5F\n#_0CF432: BNE .delay_fade\n\n#_0CF434: JSR Attract_FadeInStep\n\n.delay_fade\n#_0CF437: LDA.b $50\n#_0CF439: CMP.b #$FF\n#_0CF43B: BEQ .delay_tick\n\n#_0CF43D: INC.b $50\n\n.delay_tick\n#_0CF43F: LDA.w $0FF9\n#_0CF442: BEQ .delay_sfx\n\n#_0CF444: AND.b #$04\n#_0CF446: BEQ .delay_sfx\n\n#_0CF448: LDX.b #$2B ; SFX3.2B\n#_0CF44A: STX.w $012F\n\n; ---------------------------------------------------------\n\n.delay_sfx\n#_0CF44D: LDA.b $60\n#_0CF44F: ASL A\n#_0CF450: TAX\n\n#_0CF451: JSR (.vectors,X)\n\n; ---------------------------------------------------------\n\n#_0CF454: LDX.b #$05\n\n.next_soldier\n#_0CF456: STZ.b $01\n#_0CF458: STZ.b $03\n#_0CF45A: STZ.b $06\n\n#_0CF45C: LDA.l .soldier_position_x,X\n#_0CF460: STA.b $00\n\n#_0CF462: LDA.l .soldier_position_y,X\n#_0CF466: STA.b $02\n\n#_0CF468: LDA.l .soldier_direction,X\n#_0CF46C: STA.b $04\n\n#_0CF46E: LDA.l .soldier_palette,X\n#_0CF472: STA.b $05\n\n#_0CF474: PHX\n\n#_0CF475: JSL SpritePrep_ResetProperties\n#_0CF479: JSL PuppetSoldier\n\n#_0CF47D: PLX\n#_0CF47E: DEX\n#_0CF47F: BPL .next_soldier\n\n; ---------------------------------------------------------\n\n#_0CF481: LDX.b $50\n#_0CF483: CPX.b #$A0\n#_0CF485: BCC .continue\n\n#_0CF487: LDA.b $30\n#_0CF489: CMP.b #$60\n#_0CF48B: BEQ .tick_timer\n\n#_0CF48D: DEC.b $32\n#_0CF48F: BNE .continue\n\n#_0CF491: DEC.b $30\n\n#_0CF493: LDA.b #$08\n#_0CF495: STA.b $32\n\n#_0CF497: BRA .continue\n\n.tick_timer\n#_0CF499: INC.b $61\n\n; ---------------------------------------------------------\n\n.continue\n#_0CF49B: LDA.b $52\n#_0CF49D: BNE .dont_draw_maiden\n\n#_0CF49F: REP #$20\n\n#_0CF4A1: LDA.w #AttractAltarMaidenOAM_size\n#_0CF4A4: STA.b $2D\n\n#_0CF4A6: LDA.w #AttractAltarMaidenOAM_offset_x\n#_0CF4A9: STA.b $02\n\n#_0CF4AB: LDA.w #AttractAltarMaidenOAM_offset_y\n#_0CF4AE: STA.b $04\n\n#_0CF4B0: LDX.b #$00\n\n#_0CF4B2: LDA.b $30\n#_0CF4B4: AND.w #$00FF\n#_0CF4B7: CMP.w #$0070\n#_0CF4BA: BEQ .not_airborne\n\n#_0CF4BC: INX\n#_0CF4BD: INX\n\n.not_airborne\n#_0CF4BE: LDA.l .maiden_char_pointer,X\n#_0CF4C2: STA.b $06\n\n#_0CF4C4: LDA.w #AttractAltarMaidenOAM_prop\n#_0CF4C7: STA.b $08\n\n#_0CF4C9: SEP #$20\n\n#_0CF4CB: LDA.b #$74\n#_0CF4CD: STA.b $28\n\n#_0CF4CF: LDA.b $30\n#_0CF4D1: STA.b $29\n\n#_0CF4D3: LDY.b #$01\n#_0CF4D5: JSR Attract_DrawPreloadedSprite\n\n; ---------------------------------------------------------\n\n#_0CF4D8: LDX.b #$0E\n\n#_0CF4DA: LDA.b $30\n#_0CF4DC: CMP.b #$68\n#_0CF4DE: BCS .adjust_shadow_index\n\n#_0CF4E0: SEC\n#_0CF4E1: SBC.b #$68\n\n#_0CF4E3: ASL A\n#_0CF4E4: AND.b #$0E\n#_0CF4E6: TAX\n\n.adjust_shadow_index\n#_0CF4E7: REP #$20\n\n#_0CF4E9: LDA.w #AttractAltarMaidenShadowOAM_size\n#_0CF4EC: STA.b $2D\n\n#_0CF4EE: LDA.l .shadow_offset_x_pointer,X\n#_0CF4F2: STA.b $02\n\n#_0CF4F4: LDA.w #AttractAltarMaidenShadowOAM_offset_y\n#_0CF4F7: STA.b $04\n\n#_0CF4F9: LDA.w #AttractAltarMaidenShadowOAM_char\n#_0CF4FC: STA.b $06\n\n#_0CF4FE: LDA.w #AttractAltarMaidenShadowOAM_prop\n#_0CF501: STA.b $08\n\n#_0CF503: SEP #$20\n\n#_0CF505: TXA\n#_0CF506: LSR A\n#_0CF507: TAX\n\n#_0CF508: LDA.b #$74\n#_0CF50A: CLC\n#_0CF50B: ADC.l .shadow_base_offset_x,X\n#_0CF50F: STA.b $28\n\n#_0CF511: LDA.b #$76\n#_0CF513: STA.b $29\n\n#_0CF515: LDY.b #$01\n#_0CF517: JSR Attract_DrawPreloadedSprite\n\n; ---------------------------------------------------------\n\n.dont_draw_maiden\n#_0CF51A: LDA.b $50\n\n#_0CF51C: LSR A\n#_0CF51D: LSR A\n#_0CF51E: LSR A\n#_0CF51F: LSR A\n\n#_0CF520: AND.b #$0E\n#_0CF522: TAX\n\n#_0CF523: REP #$20\n\n#_0CF525: LDA.w #AttractAgahnimOAM_size\n#_0CF528: STA.b $2D\n\n#_0CF52A: LDA.w #AttractAgahnimOAM_offset_x\n#_0CF52D: STA.b $02\n\n#_0CF52F: LDA.w #AttractAgahnimOAM_offset_y\n#_0CF532: STA.b $04\n\n#_0CF534: LDA.l .agahnim_char_pointer,X\n#_0CF538: STA.b $06\n\n#_0CF53A: LDA.w #AttractAgahnimOAM_prop_step0\n#_0CF53D: STA.b $08\n\n#_0CF53F: SEP #$20\n\n#_0CF541: LDA.b #$70\n#_0CF543: STA.b $28\n\n#_0CF545: LDA.b #$46\n#_0CF547: STA.b $29\n\n#_0CF549: LDY.b #$05\n#_0CF54B: JSR Attract_DrawPreloadedSprite\n\n#_0CF54E: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Dramagahnim_RaiseTheRoof", + "code": "Dramagahnim_RaiseTheRoof:\n#_0CF57B: LDA.b $61\n#_0CF57D: BEQ .exit\n\n#_0CF57F: INC.b $60\n\n.exit\n#_0CF581: RTS", + "file": "bank_0C.asm" + }, + { + "name": "DramagahnimSpellCharPointer", + "code": "DramagahnimSpellCharPointer:\n#_0CF582: dw DramagahnimSpellOAM_char_step0\n#_0CF584: dw DramagahnimSpellOAM_char_step1\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "DramagahnimSpellPropPointer", + "code": "DramagahnimSpellPropPointer:\n#_0CF586: dw DramagahnimSpellOAM_prop_step0\n#_0CF588: dw DramagahnimSpellOAM_prop_step1\n\n; ---------------------------------------------------------\n\npool Dramagahnim_ReadySpell\n\n.oam_count\n#_0CF58A: db 1\n#_0CF58B: db 1\n#_0CF58C: db 1\n#_0CF58D: db 5\n#_0CF58E: db 5\n#_0CF58F: db 9\n#_0CF590: db 9\n#_0CF591: db 13\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Dramagahnim_ReadySpell", + "code": "Dramagahnim_ReadySpell:\n#_0CF592: LDA.b $1A\n#_0CF594: LSR A\n#_0CF595: AND.b #$02\n#_0CF597: TAX\n\n#_0CF598: REP #$20\n\n#_0CF59A: LDA.w #DramagahnimSpellOAM_size\n#_0CF59D: STA.b $2D\n\n#_0CF59F: LDA.w #DramagahnimSpellOAM_offset_x\n#_0CF5A2: STA.b $02\n\n#_0CF5A4: LDA.w #DramagahnimSpellOAM_offset_y\n#_0CF5A7: STA.b $04\n\n#_0CF5A9: LDA.l DramagahnimSpellCharPointer,X\n#_0CF5AD: STA.b $06\n\n#_0CF5AF: LDA.l DramagahnimSpellPropPointer,X\n#_0CF5B3: STA.b $08\n\n; ---------------------------------------------------------\n\n#_0CF5B5: SEP #$20\n\n#_0CF5B7: LDA.b #$6E\n#_0CF5B9: STA.b $28\n\n#_0CF5BB: LDA.b #$48\n#_0CF5BD: STA.b $29\n\n#_0CF5BF: LDA.b $51\n#_0CF5C1: LSR A\n#_0CF5C2: AND.b #$07\n#_0CF5C4: TAX\n\n#_0CF5C5: LDA.l .oam_count,X\n#_0CF5C9: TAY\n\n#_0CF5CA: JSR Attract_DrawPreloadedSprite\n\n; ---------------------------------------------------------\n\n#_0CF5CD: LDA.b $51\n#_0CF5CF: BNE .delay_sfx\n\n#_0CF5D1: LDY.b $63\n#_0CF5D3: CPY.b #$70\n#_0CF5D5: BNE .delay_sfx\n\n#_0CF5D7: LDX.b #$27 ; SFX3.27\n#_0CF5D9: STX.w $012F\n\n; ---------------------------------------------------------\n\n.delay_sfx\n#_0CF5DC: CMP.b #$0F\n#_0CF5DE: BEQ .advance\n\n#_0CF5E0: CMP.b #$06\n#_0CF5E2: BNE .delay_other_sfx\n\n#_0CF5E4: LDX.b #$90\n#_0CF5E6: STX.w $0FF9\n\n#_0CF5E9: LDX.b #$2B ; SFX3.2B\n#_0CF5EB: STX.w $012F\n\n; ---------------------------------------------------------\n\n.delay_other_sfx\n#_0CF5EE: LDA.b $63\n#_0CF5F0: BEQ .delay_tick\n\n#_0CF5F2: DEC.b $63\n\n#_0CF5F4: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Dramagahnim_CastSpell", + "code": "Dramagahnim_CastSpell:\n#_0CF613: PHB\n#_0CF614: PHK\n#_0CF615: PLB\n\n#_0CF616: LDA.b $1A\n#_0CF618: LSR A\n#_0CF619: AND.b #$02\n#_0CF61B: TAX\n\n#_0CF61C: LDA.b $51\n#_0CF61E: LSR A\n#_0CF61F: AND.b #$07\n#_0CF621: STA.b $00\n\n#_0CF623: ASL A\n#_0CF624: TAY\n\n; ---------------------------------------------------------\n\n#_0CF625: REP #$20\n\n#_0CF627: LDA.w #DramagahnimSpellOAM_size\n#_0CF62A: CLC\n#_0CF62B: ADC.w .index_offset,Y\n#_0CF62E: STA.b $2D\n\n#_0CF630: LDA.w #DramagahnimSpellOAM_offset_x\n#_0CF633: CLC\n#_0CF634: ADC.w .index_offset,Y\n#_0CF637: STA.b $02\n\n#_0CF639: LDA.w #DramagahnimSpellOAM_offset_y\n#_0CF63C: CLC\n#_0CF63D: ADC.w .index_offset,Y\n#_0CF640: STA.b $04\n\n#_0CF642: LDA.w DramagahnimSpellCharPointer,X\n#_0CF645: CLC\n#_0CF646: ADC.w .index_offset,Y\n#_0CF649: STA.b $06\n\n#_0CF64B: LDA.w DramagahnimSpellPropPointer,X\n#_0CF64E: CLC\n#_0CF64F: ADC.w .index_offset,Y\n#_0CF652: STA.b $08\n\n; ---------------------------------------------------------\n\n#_0CF654: SEP #$20\n\n#_0CF656: LDA.b #$6E\n#_0CF658: STA.b $28\n\n#_0CF65A: LDA.b #$48\n#_0CF65C: STA.b $29\n\n#_0CF65E: LDX.b $00\n\n#_0CF660: LDA.w .oam_count,X\n#_0CF663: TAY\n\n#_0CF664: JSR Attract_DrawPreloadedSprite\n\n#_0CF667: PLB\n\n; ---------------------------------------------------------\n\n#_0CF668: LDA.b $51\n#_0CF66A: BNE .delay_tick\n\n#_0CF66C: DEC.b $62\n#_0CF66E: BEQ Dramagahnim_ReadySpell_advance\n\n#_0CF670: BRA .exit\n\n.delay_tick\n#_0CF672: DEC.b $51\n\n.exit\n#_0CF674: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Dramagahnim_RealizeWhatJustHappened", + "code": "Dramagahnim_RealizeWhatJustHappened:\n#_0CF689: LDA.b $51\n#_0CF68B: CMP.b #$06\n#_0CF68D: BNE .delay_sfx\n\n#_0CF68F: INC.b $52\n\n#_0CF691: LDA.b #$33 ; SFX2.33\n#_0CF693: STA.w $012E\n\n.delay_sfx\n#_0CF696: CMP.b #$40\n#_0CF698: BNE .delay_tick\n\n#_0CF69A: LDA.b #$E0\n#_0CF69C: STA.b $51\n\n#_0CF69E: INC.b $60\n\n.delay_tick\n#_0CF6A0: CMP.b #$0F\n#_0CF6A2: BCS .skip_draw\n\n#_0CF6A4: LSR A\n#_0CF6A5: LSR A\n#_0CF6A6: AND.b #$02\n#_0CF6A8: TAX\n\n#_0CF6A9: REP #$20\n\n#_0CF6AB: LDA.w #AttractTelebubbleOAM_size\n#_0CF6AE: STA.b $2D\n\n#_0CF6B0: LDA.l .pointers_offset_x,X\n#_0CF6B4: STA.b $02\n\n#_0CF6B6: LDA.l .pointers_offset_y,X\n#_0CF6BA: STA.b $04\n\n#_0CF6BC: LDA.l .pointers_char,X\n#_0CF6C0: STA.b $06\n\n#_0CF6C2: LDA.l .pointers_prop,X\n#_0CF6C6: STA.b $08\n\n; ---------------------------------------------------------\n\n#_0CF6C8: SEP #$20\n\n#_0CF6CA: TXA\n#_0CF6CB: LSR A\n#_0CF6CC: TAX\n\n#_0CF6CD: LDA.l .position_x,X\n#_0CF6D1: STA.b $28\n\n#_0CF6D3: LDA.b #$60\n#_0CF6D5: STA.b $29\n\n#_0CF6D7: LDA.l .object_count,X\n#_0CF6DB: TAY\n\n#_0CF6DC: JSR Attract_DrawPreloadedSprite\n\n.skip_draw\n#_0CF6DF: INC.b $51\n\n#_0CF6E1: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Dramagahnim_IdleGuiltily", + "code": "Dramagahnim_IdleGuiltily:\n#_0CF6E2: JSR Attract_DoTextInDungeonScene\n\n#_0CF6E5: REP #$20\n\n#_0CF6E7: LDA.b $64\n\n#_0CF6E9: SEP #$20\n\n#_0CF6EB: BNE .exit\n\n#_0CF6ED: LDA.b $51\n#_0CF6EF: CMP.b #$1F\n#_0CF6F1: BCS .delay_fade\n\n#_0CF6F3: AND.b #$01\n#_0CF6F5: BNE .delay_fade\n\n#_0CF6F7: DEC.b $13\n\n.delay_fade\n#_0CF6F9: DEC.b $51\n#_0CF6FB: BNE .exit\n\n#_0CF6FD: INC.b $5D\n\n.exit\n#_0CF6FF: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_SkipToFileSelect", + "code": "Attract_SkipToFileSelect:\n#_0CF700: DEC.b $13\n#_0CF702: BNE .exit\n\n#_0CF704: JSL EnableForceBlank\n\n#_0CF708: LDA.b #$13\n#_0CF70A: STA.w BG1SC\n\n#_0CF70D: LDA.b #$03\n#_0CF70F: STA.w BG2SC\n\n#_0CF712: REP #$20\n\n#_0CF714: JSL Attract_SetUpConclusionHDMA\n\n#_0CF718: REP #$20\n\n#_0CF71A: STZ.w $063A\n#_0CF71D: STZ.w $0638\n\n#_0CF720: STZ.w $0120\n#_0CF723: STZ.w $0124\n\n#_0CF726: STZ.b $EA\n\n#_0CF728: SEP #$20\n\n#_0CF72A: JMP.w FadeMusicAndResetSRAMMirror\n\n.exit\n#_0CF72D: RTL", + "file": "bank_0C.asm" + }, + { + "name": "Attract_BuildNextImageTilemap", + "code": "Attract_BuildNextImageTilemap:\n#_0CF73E: REP #$20\n\n#_0CF740: LDX.b $26\n\n#_0CF742: LDA.l .stripes_sizes,X\n#_0CF746: STA.b $00\n\n#_0CF748: LDA.l .stripes_pointers,X\n#_0CF74C: STA.b $02\n\n#_0CF74E: LDX.b #Attract_BuildNextImageTilemap>>16\n#_0CF750: STX.b $04\n\n#_0CF752: REP #$10\n\n#_0CF754: LDY.b $00\n\n.copy_next\n#_0CF756: LDA.b [$02],Y\n#_0CF758: STA.w $1002,Y\n\n#_0CF75B: DEY\n#_0CF75C: DEY\n#_0CF75D: BPL .copy_next\n\n#_0CF75F: SEP #$30\n\n#_0CF761: LDA.b #$01\n#_0CF763: STA.b $14\n\n#_0CF765: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_DoTextInDungeonScene", + "code": "Attract_DoTextInDungeonScene:\n#_0CF766: LDA.b $E8\n#_0CF768: STA.b $20\n\n#_0CF76A: LDA.b $E9\n#_0CF76C: STA.b $21\n\n#_0CF76E: STZ.b $F2\n#_0CF770: STZ.b $F6\n#_0CF772: STZ.b $F4\n\n#_0CF774: JSL RenderText\n\n#_0CF778: REP #$20\n\n#_0CF77A: LDA.b $64\n\n#_0CF77C: BEQ .exit\n\n#_0CF77E: DEC.b $64\n\n.exit\n#_0CF780: SEP #$20\n\n#_0CF782: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_ControlMapZoom", + "code": "Attract_ControlMapZoom:\n#_0CF783: REP #$10\n\n#_0CF785: LDA.w $0637\n#_0CF788: STA.w WRMPYA\n\n#_0CF78B: LDX.w #$01BE\n\n.copy_next\n#_0CF78E: LDA.l WorldMapHDMA_ZoomedOut_Part1+0,X\n#_0CF792: STA.w WRMPYB\n\n#_0CF795: NOP\n#_0CF796: NOP\n#_0CF797: NOP\n#_0CF798: NOP\n\n#_0CF799: LDA.w RDMPYH\n#_0CF79C: STA.b $00\n\n#_0CF79E: LDA.l WorldMapHDMA_ZoomedOut_Part1+1,X\n#_0CF7A2: STA.w WRMPYB\n\n#_0CF7A5: NOP\n\n#_0CF7A6: LDA.b $00\n#_0CF7A8: CLC\n#_0CF7A9: ADC.w RDMPYL\n#_0CF7AC: STA.w $1B00,X\n\n#_0CF7AF: LDA.w RDMPYH\n#_0CF7B2: ADC.b #$00\n#_0CF7B4: STA.w $1B01,X\n\n#_0CF7B7: DEX\n#_0CF7B8: DEX\n#_0CF7B9: BPL .copy_next\n\n#_0CF7BB: SEP #$10\n\n#_0CF7BD: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AttractBG1Tiles", + "code": "AttractBG1Tiles:\n#_0CF7BE: dw $01A0, $09A6, $89A5, $01A0\n#_0CF7C6: dw $09A5, $01A0, $01A0, $89A6\n#_0CF7CE: dw $49A5, $01A0, $01A0, $49A5\n#_0CF7D6: dw $01A0, $89A5, $C9A5, $01A0\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractBG2Tiles", + "code": "AttractBG2Tiles:\n#_0CF7DE: dw $09A1, $09A2, $09A3, $09A4\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Attract_BuildBackgrounds", + "code": "Attract_BuildBackgrounds:\n#_0CF7E6: LDA.b #$09\n#_0CF7E8: STA.b $94\n\n#_0CF7EA: LDA.b #$17\n#_0CF7EC: STA.b $1C\n#_0CF7EE: STZ.b $1D\n\n#_0CF7F0: LDA.b #$10\n#_0CF7F2: STA.w BG1SC\n\n#_0CF7F5: LDA.b #$00\n#_0CF7F7: STA.w BG2SC\n\n#_0CF7FA: PHB\n#_0CF7FB: PHK\n#_0CF7FC: PLB\n\n; ---------------------------------------------------------\n\n#_0CF7FD: REP #$30\n\n#_0CF7FF: LDX.w #$0000\n\n#_0CF802: LDA.w #AttractBG1Tiles\n#_0CF805: STA.b $30\n\n.next_stripe_bg1\n#_0CF807: TXA\n#_0CF808: AND.w #$0007\n#_0CF80B: TAY\n\n.next_bg1\n#_0CF80C: LDA.b ($30),Y\n#_0CF80E: STA.w $1006,X\n\n#_0CF811: INY\n#_0CF812: INY\n\n#_0CF813: INX\n#_0CF814: INX\n\n#_0CF815: TYA\n#_0CF816: AND.w #$0007\n#_0CF819: BNE .next_bg1\n\n#_0CF81B: TXA\n#_0CF81C: AND.w #$003F\n#_0CF81F: BNE .next_stripe_bg1\n\n#_0CF821: LDA.b $30\n#_0CF823: CLC\n#_0CF824: ADC.w #$0008\n#_0CF827: STA.b $30\n\n#_0CF829: CPX.w #$0100\n#_0CF82C: BNE .next_stripe_bg1\n\n; ---------------------------------------------------------\n\n#_0CF82E: LDA.w #$1000\n#_0CF831: STA.b $30\n\n#_0CF833: JSR Attract_TriggerBGDMA\n\n; ---------------------------------------------------------\n\n#_0CF836: REP #$30\n\n#_0CF838: LDX.w #$0000\n\n#_0CF83B: LDA.w #AttractBG2Tiles\n#_0CF83E: STA.b $30\n\n.next_stripe_bg2\n#_0CF840: TXA\n#_0CF841: AND.w #$0003\n#_0CF844: TAY\n\n.next_bg2\n#_0CF845: LDA.b ($30),Y\n#_0CF847: STA.w $1006,X\n\n#_0CF84A: INY\n#_0CF84B: INY\n\n#_0CF84C: INX\n#_0CF84D: INX\n\n#_0CF84E: TYA\n#_0CF84F: AND.w #$0003\n#_0CF852: BNE .next_bg2\n\n#_0CF854: TXA\n#_0CF855: AND.w #$003F\n#_0CF858: BNE .next_stripe_bg2\n\n#_0CF85A: TXA\n#_0CF85B: AND.w #$0040\n\n#_0CF85E: LSR A\n#_0CF85F: LSR A\n#_0CF860: LSR A\n#_0CF861: LSR A\n\n#_0CF862: CLC\n#_0CF863: ADC.w #AttractBG2Tiles\n#_0CF866: STA.b $30\n\n#_0CF868: CPX.w #$0100\n#_0CF86B: BNE .next_stripe_bg2\n\n#_0CF86D: LDA.w #$0000\n#_0CF870: STA.b $30\n\n#_0CF872: JSR Attract_TriggerBGDMA\n\n#_0CF875: SEP #$30\n\n#_0CF877: PLB\n\n#_0CF878: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_TriggerBGDMA", + "code": "Attract_TriggerBGDMA:\n#_0CF879: SEP #$10\n\n#_0CF87B: LDX.b #$07\n\n#_0CF87D: LDA.b $30\n#_0CF87F: STA.w VMADDR\n\n.next\n#_0CF882: LDY.b #$80\n#_0CF884: STY.w VMAIN\n\n#_0CF887: LDA.w #$1801\n#_0CF88A: STA.w DMA0MODE\n\n#_0CF88D: LDA.w #$1006\n#_0CF890: STA.w DMA0ADDRL\n\n#_0CF893: LDY.b #$00\n#_0CF895: STY.w DMA0ADDRB\n\n#_0CF898: LDA.w #$0100\n#_0CF89B: STA.w DMA0SIZE\n\n#_0CF89E: LDY.b #$01\n#_0CF8A0: STY.w MDMAEN\n\n#_0CF8A3: DEX\n#_0CF8A4: BPL .next\n\n#_0CF8A6: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AttractOAMData", + "code": "AttractOAMData:\n\n.king_size\n#_0CF8A7: db $02, $02, $02, $02\n\n.king_offset_x\n#_0CF8AB: db 16, 0, 16, 0\n\n.king_offset_y\n#_0CF8AF: db 16, 16, 0, 0\n\n.king_char\n#_0CF8B3: db $2A, $2A, $0A, $0A\n\n.king_prop\n#_0CF8B7: db $7B, $3B, $7B, $3B\n\n; ---------------------------------------------------------\n\n.mantle_size\n#_0CF8BB: db $02, $02, $02, $02, $02, $02\n\n.mantle_offset_x\n#_0CF8C1: db 0, 16, 32, 0, 16, 32\n\n.mantle_offset_y\n#_0CF8C7: db 0, 0, 0, 16, 16, 16\n\n.mantle_char\n#_0CF8CD: db $0C, $0E, $0C, $2C, $2E, $2C\n\n.mantle_prop\n#_0CF8D3: db $31, $31, $71, $31, $31, $71\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractAgahnimOAM", + "code": "AttractAgahnimOAM:\n\n.size\n#_0CF8D9: db $02, $02, $02, $02, $02, $02\n\n.offset_x\n#_0CF8DF: db 5, 11, 0, 16, 0, 16\n\n.offset_y\n#_0CF8E5: db 25, 25, 0, 0, 16, 16\n\n; ---------------------------------------------------------\n\n.char_step3\n#_0CF8EB: db $6C, $6C, $82, $82, $A2, $A2\n\n.char_step5\n#_0CF8F1: db $6C, $6C, $80, $82, $A0, $A2\n\n.char_step6\n#_0CF8F7: db $6C, $6C, $82, $80, $A2, $A0\n\n.char_step4\n#_0CF8FD: db $6C, $6C, $80, $80, $A0, $A0\n\n.char_step0\n#_0CF903: db $6C, $6C, $84, $84, $A4, $A4\n\n.char_step1\n#_0CF909: db $6C, $6C, $C4, $C2, $E4, $E6\n\n.char_step2\n#_0CF90F: db $6C, $6C, $88, $8A, $A8, $AA\n\n; ---------------------------------------------------------\n\n.prop_step0\n#_0CF915: db $38, $38, $3B, $7B, $3B, $7B\n\n.prop_step1\n#_0CF91B: db $38, $38, $3B, $3B, $3B, $3B\n\n.prop_step2\n#_0CF921: db $38, $38, $3B, $3B, $3B, $3B\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractAltarMaidenOAM", + "code": "AttractAltarMaidenOAM:\n\n.size\n#_0CF927: db $02, $02\n\n.offset_x\n#_0CF929: db $00, $08\n\n.offset_y\n#_0CF92B: db $00, $00\n\n.char_step0\n#_0CF92D: db $03, $04\n\n.char_step1\n#_0CF92F: db $00, $01\n\n.prop\n#_0CF931: db $3D, $3D\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractAltarMaidenShadowOAM", + "code": "AttractAltarMaidenShadowOAM:\n\n.size\n#_0CF933: db $02, $02\n\n; ---------------------------------------------------------\n\n.offset_x_step4\n#_0CF935: db $00, $08\n\n.offset_x_step3\n#_0CF937: db $00, $06\n\n.offset_x_step2\n#_0CF939: db $00, $04\n\n.offset_x_step1\n#_0CF93B: db $00, $02\n\n.offset_x_step0\n#_0CF93D: db $00, $00\n\n; ---------------------------------------------------------\n\n.offset_y\n#_0CF93F: db $00, $00\n\n.char\n#_0CF941: db $6C, $6C\n\n.prop\n#_0CF943: db $38, $38\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "DramagahnimSpellOAM", + "code": "DramagahnimSpellOAM:\n\n.size\n#_0CF945: db $00, $00, $00, $00\n#_0CF949: db $00, $00, $00, $00\n#_0CF94D: db $00, $00, $02, $02\n#_0CF951: db $02, $02\n\n.offset_x\n#_0CF953: db 0, 28, -2, 30\n#_0CF957: db -2, 30, 0, 28\n#_0CF95B: db 0, 28, 2, 18\n#_0CF95F: db 2, 18\n\n.offset_y\n#_0CF961: db 0, 0, 3, 3\n#_0CF965: db 11, 11, 16, 16\n#_0CF969: db 24, 24, 16, 16\n#_0CF96D: db 32, 32\n\n; ---------------------------------------------------------\n\n.char_step0\n#_0CF96F: db $CE, $CE, $26, $26\n#_0CF973: db $36, $36, $26, $26\n#_0CF977: db $36, $36, $20, $20\n#_0CF97B: db $20, $20\n\n.char_step1\n#_0CF97D: db $CE, $CE, $26, $26\n#_0CF981: db $36, $36, $26, $26\n#_0CF985: db $36, $36, $22, $22\n#_0CF989: db $22, $22\n\n; ---------------------------------------------------------\n\n.prop_step0\n#_0CF98B: db $35, $35, $75, $35\n#_0CF98F: db $75, $35, $75, $35\n#_0CF993: db $75, $35, $35, $75\n#_0CF997: db $B5, $F5\n\n.prop_step1\n#_0CF999: db $37, $37, $77, $37\n#_0CF99D: db $77, $37, $77, $37\n#_0CF9A1: db $77, $37, $37, $77\n#_0CF9A5: db $B7, $F7\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractTelebubbleOAM", + "code": "AttractTelebubbleOAM:\n\n.size\n#_0CF9A7: db $02, $02\n\n.step0_offset_x\n#_0CF9A9: db 0\n\n.step0_offset_y\n#_0CF9AA: db 0\n\n.step0_char\n#_0CF9AB: db $C6\n\n.step0_prop\n#_0CF9AC: db $3D\n\n; ---------------------------------------------------------\n\n.step1_offset_x\n#_0CF9AD: db 0, 16\n\n.step1_offset_y\n#_0CF9AF: db 0, 0\n\n.step1_char\n#_0CF9B1: db $24, $24\n\n.step1_prop\n#_0CF9B3: db $35, $75\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Attract_DrawPreloadedSprite", + "code": "Attract_DrawPreloadedSprite:\n#_0CF9B5: PHB\n#_0CF9B6: PHK\n#_0CF9B7: PLB\n\n.next_object\n#_0CF9B8: LDX.b $2A\n\n#_0CF9BA: LDA.b ($2D),Y\n#_0CF9BC: STA.w $0A60,X\n\n#_0CF9BF: TXA\n#_0CF9C0: ASL A\n#_0CF9C1: ASL A\n#_0CF9C2: TAX\n\n#_0CF9C3: LDA.b ($02),Y\n#_0CF9C5: CLC\n#_0CF9C6: ADC.b $28\n#_0CF9C8: STA.w $0900,X\n\n#_0CF9CB: LDA.b ($04),Y\n#_0CF9CD: CLC\n#_0CF9CE: ADC.b $29\n#_0CF9D0: STA.w $0901,X\n\n#_0CF9D3: LDA.b ($06),Y\n#_0CF9D5: STA.w $0902,X\n\n#_0CF9D8: LDA.b ($08),Y\n#_0CF9DA: STA.w $0903,X\n\n#_0CF9DD: INC.b $2A\n\n#_0CF9DF: DEY\n#_0CF9E0: BPL .next_object\n\n#_0CF9E2: PLB\n\n#_0CF9E3: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_DrawZelda", + "code": "Attract_DrawZelda:\n#_0CF9E8: LDX.b $2A\n\n#_0CF9EA: LDA.b #$02\n#_0CF9EC: STA.w $0A60,X\n\n#_0CF9EF: TXA\n#_0CF9F0: ASL A\n#_0CF9F1: ASL A\n#_0CF9F2: TAX\n\n#_0CF9F3: LDA.b #$60\n#_0CF9F5: STA.w $0900,X\n#_0CF9F8: STA.w $0904,X\n\n#_0CF9FB: LDA.b $28\n#_0CF9FD: STA.w $0901,X\n\n#_0CFA00: CLC\n#_0CFA01: ADC.b #$0A\n#_0CFA03: STA.w $0905,X\n\n#_0CFA06: LDA.l .head_char\n#_0CFA0A: STA.w $0902,X\n\n#_0CFA0D: LDA.l .body_char\n#_0CFA11: STA.w $0906,X\n\n#_0CFA14: LDA.l .head_prop\n#_0CFA18: STA.w $0903,X\n\n#_0CFA1B: LDA.l .body_prop\n#_0CFA1F: STA.w $0907,X\n\n#_0CFA22: INC.b $2A\n#_0CFA24: INC.b $2A\n\n#_0CFA26: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_DrawKidnappedMaiden", + "code": "Attract_DrawKidnappedMaiden:\n#_0CFA30: PHB\n#_0CFA31: PHK\n#_0CFA32: PLB\n\n#_0CFA33: PHY\n\n#_0CFA34: LDX.b $2A\n\n#_0CFA36: LDA.b #$02\n#_0CFA38: LDY.b $40\n#_0CFA3A: BEQ .step_0\n\n#_0CFA3C: ORA.b #$01\n\n.step_0\n#_0CFA3E: STA.w $0A60,X\n#_0CFA41: STA.w $0A61,X\n\n#_0CFA44: TXA\n#_0CFA45: ASL A\n#_0CFA46: ASL A\n#_0CFA47: TAX\n\n#_0CFA48: LDA.b $28\n#_0CFA4A: STA.w $0900,X\n#_0CFA4D: STA.w $0904,X\n\n#_0CFA50: LDA.b $32\n\n#_0CFA52: LSR A\n#_0CFA53: LSR A\n#_0CFA54: LSR A\n\n#_0CFA55: AND.b #$01\n#_0CFA57: TAY\n\n#_0CFA58: LDA.b $29\n#_0CFA5A: CLC\n#_0CFA5B: ADC.w .offset_y,Y\n#_0CFA5E: STA.w $0901,X\n\n#_0CFA61: CLC\n#_0CFA62: ADC.w .body_offset_y,Y\n#_0CFA65: STA.w $0905,X\n\n#_0CFA68: LDA.w .head_char\n#_0CFA6B: STA.w $0902,X\n\n#_0CFA6E: LDA.w .body_char,Y\n#_0CFA71: STA.w $0906,X\n\n#_0CFA74: LDA.w .head_prop\n#_0CFA77: STA.w $0903,X\n\n#_0CFA7A: LDA.w .body_prop\n#_0CFA7D: STA.w $0907,X\n\n#_0CFA80: INC.b $2A\n#_0CFA82: INC.b $2A\n\n#_0CFA84: PLY\n#_0CFA85: PLB\n\n#_0CFA86: RTS", + "file": "bank_0C.asm" + }, + { + "name": "Attract_WindowingHDMA", + "code": "Attract_WindowingHDMA:\n\n.table_a\n#_0CFA87: db $20 : db $FF, $00\n#_0CFA8A: db $50 : db $18, $E0\n#_0CFA8D: db $50 : db $18, $E0\n#_0CFA90: db $01 : db $FF, $00\n#_0CFA93: db $00\n\n.table_b\n#_0CFA94: db $48 : db $FF, $00\n#_0CFA97: db $30 : db $30, $D8\n#_0CFA9A: db $01 : db $FF, $00\n#_0CFA9D: db $00\n\n; ---------------------------------------------------------\n\n.settings\n#_0CFA9E: db $01\n#_0CFA9F: db WH0\n#_0CFAA0: dl .table_a\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "Attract_SetUpWindowingHDMA", + "code": "Attract_SetUpWindowingHDMA:\n#_0CFAA3: LDX.b #$04\n\n.next\n#_0CFAA5: LDA.l Attract_WindowingHDMA_settings,X\n#_0CFAA9: STA.w DMA6MODE,X\n#_0CFAAC: STA.w DMA7MODE,X\n\n#_0CFAAF: DEX\n#_0CFAB0: BPL .next\n\n#_0CFAB2: REP #$20\n\n#_0CFAB4: LDA.w #Attract_WindowingHDMA_table_b\n#_0CFAB7: STA.w DMA7ADDRL\n\n#_0CFABA: SEP #$20\n\n#_0CFABC: LDA.b #WH2\n#_0CFABE: STA.w DMA7PORT\n\n#_0CFAC1: RTS", + "file": "bank_0C.asm" + }, + { + "name": "AttractImage0Stripes", + "code": "AttractImage0Stripes:\n#_0CFAC2: dw $6561, $2840 ; VRAM $C2CA | 42 bytes | Fixed horizontal\n#_0CFAC6: dw $3500\n\n#_0CFAC8: dw $8561, $2840 ; VRAM $C30A | 42 bytes | Fixed horizontal\n#_0CFACC: dw $3510\n\n#_0CFACE: dw $A561, $2900 ; VRAM $C34A | 42 bytes | Horizontal\n#_0CFAD2: dw $3501, $3502, $3501, $3502, $3501, $3502, $3501, $3502\n#_0CFAE2: dw $3501, $3103, $7103, $3502, $3501, $3502, $3501, $3502\n#_0CFAF2: dw $3501, $3502, $3501, $3502, $3501\n\n#_0CFAFC: dw $C561, $2900 ; VRAM $C38A | 42 bytes | Horizontal\n#_0CFB00: dw $3511, $3512, $3511, $3512, $3511, $3512, $3511, $3512\n#_0CFB10: dw $3511, $3513, $7513, $3512, $3511, $3512, $3511, $3512\n#_0CFB20: dw $3511, $3512, $3511, $3512, $3511\n\n#_0CFB2A: dw $E561, $2900 ; VRAM $C3CA | 42 bytes | Horizontal\n#_0CFB2E: dw $3520, $3521, $3520, $3521, $3520, $3521, $3520, $3521\n#_0CFB3E: dw $3520, $3521, $3520, $3521, $3520, $3521, $3520, $3521\n#_0CFB4E: dw $3520, $3521, $3520, $3521, $3520\n\n#_0CFB58: dw $0562, $2840 ; VRAM $C40A | 42 bytes | Fixed horizontal\n#_0CFB5C: dw $B500\n\n#_0CFB5E: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractImage1Stripes", + "code": "AttractImage1Stripes:\n#_0CFB5F: dw $6561, $2840 ; VRAM $C2CA | 42 bytes | Fixed horizontal\n#_0CFB63: dw $3500\n\n#_0CFB65: dw $8561, $1300 ; VRAM $C30A | 20 bytes | Horizontal\n#_0CFB69: dw $3510, $754E, $356E, $3510, $354E, $3510, $354C, $3510\n#_0CFB79: dw $754E, $3549\n\n#_0CFB7D: dw $8F61, $0840 ; VRAM $C31E | 10 bytes | Fixed horizontal\n#_0CFB81: dw $3510\n\n#_0CFB83: dw $9461, $0B00 ; VRAM $C328 | 12 bytes | Horizontal\n#_0CFB87: dw $754E, $356E, $3510, $354E, $3510, $354C\n\n#_0CFB93: dw $A561, $2900 ; VRAM $C34A | 42 bytes | Horizontal\n#_0CFB97: dw $755F, $755E, $357E, $357F, $355E, $355F, $354D, $755F\n#_0CFBA7: dw $755E, $354A, $354B, $3510, $7549, $3510, $755F, $755E\n#_0CFBB7: dw $357E, $357F, $355E, $355F, $354D\n\n#_0CFBC1: dw $C561, $2900 ; VRAM $C38A | 42 bytes | Horizontal\n#_0CFBC5: dw $3550, $3551, $3552, $3553, $3554, $3555, $3556, $3557\n#_0CFBD5: dw $3558, $3559, $355A, $355B, $355C, $355D, $3550, $3551\n#_0CFBE5: dw $3552, $3553, $3554, $3555, $3556\n\n#_0CFBEF: dw $E561, $2900 ; VRAM $C3CA | 42 bytes | Horizontal\n#_0CFBF3: dw $3560, $3561, $3562, $3563, $3564, $3565, $3566, $3567\n#_0CFC03: dw $3568, $3569, $356A, $356B, $356C, $356D, $3560, $3561\n#_0CFC13: dw $3562, $3563, $3564, $3565, $3566\n\n#_0CFC1D: dw $0562, $2900 ; VRAM $C40A | 42 bytes | Horizontal\n#_0CFC21: dw $3570, $3571, $3572, $3573, $3574, $3575, $3576, $3577\n#_0CFC31: dw $3578, $3579, $357A, $357B, $357C, $357D, $3570, $3571\n#_0CFC41: dw $3572, $3573, $3574, $3575, $3576\n\n#_0CFC4B: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractImage2Stripes", + "code": "AttractImage2Stripes:\n#_0CFC4C: dw $6561, $2840 ; VRAM $C2CA | 42 bytes | Fixed horizontal\n#_0CFC50: dw $3500\n\n#_0CFC52: dw $8561, $2840 ; VRAM $C30A | 42 bytes | Fixed horizontal\n#_0CFC56: dw $3510\n\n#_0CFC58: dw $A561, $1D00 ; VRAM $C34A | 30 bytes | Horizontal\n#_0CFC5C: dw $3522, $3523, $3510, $3522, $3523, $3510, $3522, $3523\n#_0CFC6C: dw $3510, $3522, $3523, $3510, $7510, $7523, $7522\n\n#_0CFC7A: dw $B461, $0640 ; VRAM $C368 | 8 bytes | Fixed horizontal\n#_0CFC7E: dw $3510\n\n#_0CFC80: dw $B861, $0300 ; VRAM $C370 | 4 bytes | Horizontal\n#_0CFC84: dw $7523, $7522\n\n#_0CFC88: dw $C561, $2900 ; VRAM $C38A | 42 bytes | Horizontal\n#_0CFC8C: dw $3504, $3505, $3506, $3504, $3505, $3506, $3504, $3505\n#_0CFC9C: dw $3506, $3504, $3505, $3506, $7506, $7505, $7504, $7510\n#_0CFCAC: dw $7523, $7522, $7506, $7505, $7504\n\n#_0CFCB6: dw $E561, $2900 ; VRAM $C3CA | 42 bytes | Horizontal\n#_0CFCBA: dw $3514, $3515, $3516, $3514, $3515, $3516, $3514, $3515\n#_0CFCCA: dw $3516, $3514, $3515, $3516, $7516, $7515, $7514, $7506\n#_0CFCDA: dw $7505, $7504, $7516, $7515, $7514\n\n#_0CFCE4: dw $0562, $2900 ; VRAM $C40A | 42 bytes | Horizontal\n#_0CFCE8: dw $3524, $3525, $3526, $3524, $3525, $3526, $3524, $3525\n#_0CFCF8: dw $3526, $3524, $3525, $3526, $7526, $7525, $7524, $7526\n#_0CFD08: dw $7525, $7524, $7526, $7525, $7524\n\n#_0CFD12: db $FF ; end of stripes data\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "AttractImage3Stripes", + "code": "AttractImage3Stripes:\n#_0CFD13: dw $6561, $2900 ; VRAM $C2CA | 42 bytes | Horizontal\n#_0CFD17: dw $3500, $3500, $351B, $3530, $3531, $3532, $3500, $3500\n#_0CFD27: dw $3500, $3533, $3541, $7541, $7533, $7500, $7500, $7500\n#_0CFD37: dw $7532, $7531, $7530, $751B, $7500\n\n#_0CFD41: dw $8561, $1E40 ; VRAM $C30A | 32 bytes | Fixed horizontal\n#_0CFD45: dw $3510\n\n#_0CFD47: dw $8661, $0900 ; VRAM $C30C | 10 bytes | Horizontal\n#_0CFD4B: dw $3534, $350B, $3540, $3541, $3542\n\n#_0CFD55: dw $9561, $0900 ; VRAM $C32A | 10 bytes | Horizontal\n#_0CFD59: dw $7542, $7541, $7540, $750B, $7534\n\n#_0CFD63: dw $A561, $2900 ; VRAM $C34A | 42 bytes | Horizontal\n#_0CFD67: dw $3543, $3544, $3507, $3508, $3509, $350A, $3510, $350C\n#_0CFD77: dw $350D, $350E, $350F, $750F, $750E, $750D, $750C, $7510\n#_0CFD87: dw $750A, $7509, $7508, $7507, $7544\n\n#_0CFD91: dw $C561, $2900 ; VRAM $C38A | 42 bytes | Horizontal\n#_0CFD95: dw $3535, $3536, $3517, $3518, $3519, $351A, $3510, $351C\n#_0CFDA5: dw $351D, $351E, $351F, $751F, $751E, $751D, $751C, $7510\n#_0CFDB5: dw $751A, $7519, $7518, $7517, $7536\n\n#_0CFDBF: dw $E561, $2900 ; VRAM $C3CA | 42 bytes | Horizontal\n#_0CFDC3: dw $3545, $3546, $3527, $3528, $3529, $352A, $352B, $352C\n#_0CFDD3: dw $352D, $352E, $352F, $752F, $752E, $752D, $752C, $752B\n#_0CFDE3: dw $752A, $7529, $7528, $7527, $7546\n\n#_0CFDED: dw $0562, $2900 ; VRAM $C40A | 42 bytes | Horizontal\n#_0CFDF1: dw $3547, $3548, $3537, $3538, $3539, $353A, $353B, $353C\n#_0CFE01: dw $353D, $353E, $353F, $753F, $753E, $753D, $753C, $753B\n#_0CFE11: dw $753A, $7539, $7538, $7537, $7548\n\n#_0CFE1B: db $FF ; end of stripes data\n\n; =========================================================\n\npool Intro_HandleLogoSword\n\n.char\n#_0CFE1C: db $00\n#_0CFE1D: db $02\n#_0CFE1E: db $20\n#_0CFE1F: db $22\n#_0CFE20: db $04\n#_0CFE21: db $06\n#_0CFE22: db $08\n#_0CFE23: db $0A\n#_0CFE24: db $0C\n#_0CFE25: db $0E\n\n.position_x\n#_0CFE26: db $40\n#_0CFE27: db $40\n#_0CFE28: db $30\n#_0CFE29: db $50\n#_0CFE2A: db $40\n#_0CFE2B: db $40\n#_0CFE2C: db $40\n#_0CFE2D: db $40\n#_0CFE2E: db $40\n#_0CFE2F: db $40\n\n.position_y\n#_0CFE30: dw $0010\n#_0CFE32: dw $0020\n#_0CFE34: dw $0028\n#_0CFE36: dw $0028\n#_0CFE38: dw $0030\n#_0CFE3A: dw $0040\n#_0CFE3C: dw $0050\n#_0CFE3E: dw $0060\n#_0CFE40: dw $0070\n#_0CFE42: dw $0080\n\n#_0CFE44: db $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_InitLogoSword", + "code": "Intro_InitLogoSword:\n#_0CFE45: LDA.b #$07\n#_0CFE47: STA.b $CB\n#_0CFE49: STZ.b $CC\n#_0CFE4B: STZ.b $CD\n\n#_0CFE4D: REP #$20\n\n#_0CFE4F: LDA.w #$FF7E\n#_0CFE52: STA.b $C8\n\n#_0CFE54: SEP #$20\n\n; ---------------------------------------------------------\n", + "file": "bank_0C.asm" + }, + { + "name": "Intro_HandleLogoSword", + "code": "Intro_HandleLogoSword:\n#_0CFE56: PHB\n#_0CFE57: PHK\n#_0CFE58: PLB\n\n#_0CFE59: LDA.b $CA\n#_0CFE5B: BEQ .dont_tick\n\n#_0CFE5D: DEC.b $CA\n\n.dont_tick\n#_0CFE5F: JSL FixedColorBlack\n\n#_0CFE63: LDA.w $0FF9\n#_0CFE66: BEQ .do_sprites\n\n#_0CFE68: AND.b #$03\n#_0CFE6A: BEQ .delay_clear\n\n#_0CFE6C: LDX.b $D0\n\n#_0CFE6E: LDA.b #$1F\n#_0CFE70: ORA.b $9C,X\n#_0CFE72: STA.b $9C,X\n\n#_0CFE74: INX\n#_0CFE75: CPX.b #$03\n#_0CFE77: BNE .nowrap\n\n#_0CFE79: LDX.b #$00\n\n.nowrap\n#_0CFE7B: STX.b $D0\n\n.delay_clear\n#_0CFE7D: DEC.w $0FF9\n\n; ---------------------------------------------------------\n\n.do_sprites\n#_0CFE80: LDY.b #$09\n\n.next_sprite\n#_0CFE82: TYA\n#_0CFE83: ASL A\n#_0CFE84: ASL A\n#_0CFE85: TAX\n\n#_0CFE86: LDA.b #$02\n#_0CFE88: STA.w $0A72,Y\n\n#_0CFE8B: LDA.w .char,Y\n#_0CFE8E: STA.w $094A,X\n\n#_0CFE91: LDA.b #$21\n#_0CFE93: STA.w $094B,X\n\n#_0CFE96: LDA.w .position_x,Y\n#_0CFE99: STA.w $0948,X\n\n#_0CFE9C: PHY\n#_0CFE9D: TYA\n#_0CFE9E: ASL A\n#_0CFE9F: TAY\n\n#_0CFEA0: REP #$20\n\n#_0CFEA2: LDA.b $C8\n#_0CFEA4: CLC\n#_0CFEA5: ADC.w .position_y,Y\n#_0CFEA8: SEP #$20\n#_0CFEAA: XBA\n#_0CFEAB: BEQ .on_screen\n\n#_0CFEAD: LDA.b #$F8\n#_0CFEAF: XBA\n\n.on_screen\n#_0CFEB0: XBA\n#_0CFEB1: SEC\n#_0CFEB2: SBC.b #$08\n#_0CFEB4: STA.w $0949,X\n\n#_0CFEB7: PLY\n#_0CFEB8: DEY\n#_0CFEB9: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n#_0CFEBB: REP #$20\n\n#_0CFEBD: LDA.b $C8\n#_0CFEBF: CMP.w #$001E\n#_0CFEC2: BEQ .no_sfx\n\n#_0CFEC4: LDY.b #$01 ; SFX2.01\n\n#_0CFEC6: CMP.w #$FFBE\n#_0CFEC9: BEQ .play_sfx\n\n#_0CFECB: CMP.w #$000E\n#_0CFECE: BNE .delay\n\n#_0CFED0: STZ.b $D0\n\n#_0CFED2: LDX.b #$20\n#_0CFED4: STX.w $0FF9\n\n#_0CFED7: LDY.b #$2C ; SFX2.2C\n\n.play_sfx\n#_0CFED9: STY.w $012E\n\n.delay\n#_0CFEDC: CLC\n#_0CFEDD: ADC.w #$0010\n#_0CFEE0: STA.b $C8\n\n; ---------------------------------------------------------\n\n.no_sfx\n#_0CFEE2: SEP #$20\n\n#_0CFEE4: LDX.b $CC\n#_0CFEE6: JMP.w (.vectors,X)\n\n.vectors\n#_0CFEE9: dw LogoSword_IdleState\n#_0CFEEB: dw LogoSword_EyeTwinkle\n#_0CFEED: dw LogoSword_BladeShimmer\n\n; =========================================================\n", + "file": "bank_0C.asm" + }, + { + "name": "LogoSword_IdleState", + "code": "LogoSword_IdleState:\n#_0CFEEF: LDA.w $0FF9\n#_0CFEF2: BNE .exit\n\n#_0CFEF4: REP #$20\n\n#_0CFEF6: LDA.b $C8\n#_0CFEF8: CMP.w #$001E\n\n#_0CFEFB: SEP #$20\n\n#_0CFEFD: BNE .exit\n\n#_0CFEFF: INC.b $CC\n#_0CFF01: INC.b $CC\n\n.exit\n#_0CFF03: PLB\n\n#_0CFF04: RTS", + "file": "bank_0C.asm" + }, + { + "name": "LogoSword_EyeTwinkle", + "code": "LogoSword_EyeTwinkle:\n#_0CFF13: LDX.b $CB\n\n#_0CFF15: LDA.b $CA\n#_0CFF17: BNE .char_only\n\n#_0CFF19: DEX\n#_0CFF1A: STX.b $CB\n#_0CFF1C: BPL .delay\n\n#_0CFF1E: STZ.b $CB\n\n#_0CFF20: LDA.b #$02\n#_0CFF22: STA.b $CA\n\n#_0CFF24: INC.b $CC\n#_0CFF26: INC.b $CC\n\n#_0CFF28: BRA .exit\n\n.delay\n#_0CFF2A: LDA.w .timer,X\n#_0CFF2D: STA.b $CA\n\n.char_only\n#_0CFF2F: STZ.w $0A70\n\n#_0CFF32: LDA.b #$44\n#_0CFF34: STA.w $0940\n\n#_0CFF37: LDA.b #$43\n#_0CFF39: STA.w $0941\n\n#_0CFF3C: LDA.b #$25\n#_0CFF3E: STA.w $0943\n\n#_0CFF41: LDA.w .char,X\n#_0CFF44: STA.w $0942\n\n.exit\n#_0CFF47: PLB\n\n#_0CFF48: RTS", + "file": "bank_0C.asm" + }, + { + "name": "LogoSword_BladeShimmer", + "code": "LogoSword_BladeShimmer:\n#_0CFF51: LDX.b $CB\n#_0CFF53: CPX.b #$07\n#_0CFF55: BCS .exit\n\n#_0CFF57: STZ.w $0A70\n#_0CFF5A: STZ.w $0A71\n\n#_0CFF5D: LDA.b #$42\n#_0CFF5F: STA.w $0940\n#_0CFF62: STA.w $0944\n\n#_0CFF65: LDA.b $CD\n#_0CFF67: CMP.b #$50\n#_0CFF69: BCC .not_maxed\n#_0CFF6B: LDA.b #$4F\n\n.not_maxed\n#_0CFF6D: CLC\n#_0CFF6E: ADC.b $C8\n#_0CFF70: CLC\n#_0CFF71: ADC.b #$31\n#_0CFF73: STA.w $0941\n#_0CFF76: CLC\n#_0CFF77: ADC.b #$08\n#_0CFF79: STA.w $0945\n\n#_0CFF7C: LDA.b #$23\n#_0CFF7E: STA.w $0943\n#_0CFF81: STA.w $0947\n\n#_0CFF84: LDA.w .char+0,X\n#_0CFF87: STA.w $0942\n\n#_0CFF8A: LDA.w .char+1,X\n#_0CFF8D: STA.w $0946\n\n; ---------------------------------------------------------\n\n#_0CFF90: LDA.b $CA\n#_0CFF92: BNE .exit\n\n#_0CFF94: LDA.b $CD\n#_0CFF96: CLC\n#_0CFF97: ADC.b #$04\n#_0CFF99: STA.b $CD\n\n#_0CFF9B: CMP.b #$04\n#_0CFF9D: BEQ .advance\n\n#_0CFF9F: CMP.b #$48\n#_0CFFA1: BEQ .advance\n\n#_0CFFA3: CMP.b #$4C\n#_0CFFA5: BEQ .advance\n\n#_0CFFA7: CMP.b #$58\n#_0CFFA9: BNE .exit\n\n.advance\n#_0CFFAB: INC.b $CB\n#_0CFFAD: INC.b $CB\n\n.exit\n#_0CFFAF: PLB\n\n#_0CFFB0: RTS", + "file": "bank_0C.asm" + }, + { + "name": "NULL_0BFE5E", + "code": "NULL_0BFE5E:\n#_0BFE5E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0BFE66: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0BFE6E: db $FF, $FF\n\n; =========================================================\n", + "file": "bank_0B.asm" + }, + { + "name": "Overworld_SetFixedColAndScroll", + "code": "Overworld_SetFixedColAndScroll:\n#_0BFE70: STZ.b $1D\n\n#_0BFE72: REP #$30\n\n#_0BFE74: LDX.w #$19C6 ; RGB: #307030\n\n#_0BFE77: LDA.b $8A\n#_0BFE79: CMP.w #$0080 ; OW 80\n#_0BFE7C: BNE .not_ms_grove\n\n#_0BFE7E: LDA.b $A0\n#_0BFE80: CMP.w #$0181 ; OW 81\n#_0BFE83: BNE .use_this_color\n\n#_0BFE85: INC.b $1D\n#_0BFE87: BRA .check_world\n\n; ---------------------------------------------------------\n\n.not_ms_grove\n#_0BFE89: CMP.w #$0081\n#_0BFE8C: BEQ .use_this_color\n\n#_0BFE8E: LDX.w #$0000 ; RGB: #000000\n#_0BFE91: CMP.w #$005B\n#_0BFE94: BEQ .use_this_color\n\n#_0BFE96: AND.w #$00BF\n#_0BFE99: CMP.w #$0003\n#_0BFE9C: BEQ .use_this_color\n\n#_0BFE9E: CMP.w #$0005\n#_0BFEA1: BEQ .use_this_color\n\n#_0BFEA3: CMP.w #$0007\n#_0BFEA6: BEQ .use_this_color\n\n; ---------------------------------------------------------\n\n.check_world\n#_0BFEA8: LDX.w #$2669 ; RGB: #489848\n\n#_0BFEAB: LDA.b $8A\n#_0BFEAD: AND.w #$0040\n#_0BFEB0: BEQ .use_this_color\n\n#_0BFEB2: LDX.w #$2A32 ; RGB: #908850\n\n; ---------------------------------------------------------\n\n.use_this_color\n#_0BFEB5: TXA\n#_0BFEB6: STA.l $7EC500\n#_0BFEBA: STA.l $7EC300\n#_0BFEBE: STA.l $7EC540\n#_0BFEC2: STA.l $7EC340\n\n#_0BFEC6: LDA.w #$4020 ; Fixed color RGB: #000000\n#_0BFEC9: STA.b $9C\n\n#_0BFECB: LDA.w #$8040\n#_0BFECE: STA.b $9D\n\n#_0BFED0: LDA.b $8A ; OW 00\n#_0BFED2: BEQ .is_woods_or_pyramid\n\n#_0BFED4: CMP.w #$0070 ; OW 70\n#_0BFED7: BNE .not_mire\n\n#_0BFED9: JMP.w .exit_and_trigger\n\n.not_mire\n#_0BFEDC: CMP.w #$0040 ; OW 40\n#_0BFEDF: BEQ .is_woods_or_pyramid\n\n#_0BFEE1: CMP.w #$005B ; OW 5B\n#_0BFEE4: BEQ .is_woods_or_pyramid\n\n#_0BFEE6: LDX.w #$4C26 ; Fixed color RGB: #306060\n#_0BFEE9: LDY.w #$8C4C\n\n#_0BFEEC: CMP.w #$0003 ; OW 03\n#_0BFEEF: BEQ .use_this_fixed_col\n\n#_0BFEF1: CMP.w #$0005 ; OW 05\n#_0BFEF4: BEQ .use_this_fixed_col\n\n#_0BFEF6: CMP.w #$0007 ; OW 07\n#_0BFEF9: BEQ .use_this_fixed_col\n\n#_0BFEFB: LDX.w #$4A26 ; Fixed color RGB: #305038\n#_0BFEFE: LDY.w #$874A\n\n#_0BFF01: CMP.w #$0043 ; OW 43\n#_0BFF04: BEQ .use_this_fixed_col\n\n#_0BFF06: CMP.w #$0045 ; OW 45\n#_0BFF09: BEQ .use_this_fixed_col\n\n#_0BFF0B: SEP #$30\n\n#_0BFF0D: INC.b $15\n\n#_0BFF0F: RTL", + "file": "bank_0B.asm" + }, + { + "name": "WallMaster_SendPlayerToLastEntrance", + "code": "WallMaster_SendPlayerToLastEntrance:\n#_0BFFA8: JSL SaveDungeonKeys\n#_0BFFAC: JSL Underworld_FlagRoomData_Quadrants\n#_0BFFB0: JSL Sprite_ResetAll\n\n#_0BFFB4: STZ.w $04AA\n\n#_0BFFB7: LDA.b #$11\n#_0BFFB9: STA.b $10\n#_0BFFBB: STZ.b $11\n\n#_0BFFBD: STZ.b $14\n\n; =========================================================\n", + "file": "bank_0B.asm" + }, + { + "name": "ResetSomeThingsAfterDeath", + "code": "ResetSomeThingsAfterDeath:\n#_0BFFBF: STZ.w $0345\n\n#_0BFFC2: STA.w $005E\n\n#_0BFFC5: STZ.w $03F3\n#_0BFFC8: STZ.w $0322\n\n#_0BFFCB: STZ.w $02E4\n#_0BFFCE: STZ.w $0ABD\n#_0BFFD1: STZ.w $036B\n#_0BFFD4: STZ.w $0373\n\n#_0BFFD7: STZ.b $27\n#_0BFFD9: STZ.b $28\n#_0BFFDB: STZ.b $29\n#_0BFFDD: STZ.b $24\n\n#_0BFFDF: STZ.w $0351\n#_0BFFE2: STZ.w $0316\n#_0BFFE5: STZ.w $031F\n\n#_0BFFE8: LDA.b #$00 ; LINKSTATE 00\n#_0BFFEA: STA.b $5D\n\n#_0BFFEC: STZ.b $4B\n\n; =========================================================\n", + "file": "bank_0B.asm" + }, + { + "name": "ResetAncillaAndLink", + "code": "ResetAncillaAndLink:\n#_0BFFEE: JSL Ancilla_TerminateSelectInteractives\n\n#_0BFFF2: JML Link_ResetProperties_A\n\n; =========================================================\n; FREE ROM: 0x0A\n; =========================================================", + "file": "bank_0B.asm" + }, + { + "name": "Tile32_BottomLeft", + "code": "Tile32_BottomLeft:\n#_048000: db $0A, $0C, $0B, $0D : db $00, $00 ; 0x0000\u20130x0003: 0x00A, 0x00C, 0x00B, 0x00D\n#_048006: db $04, $0F, $11, $13 : db $00, $00 ; 0x0004\u20130x0007: 0x004, 0x00F, 0x011, 0x013\n#_04800C: db $12, $1C, $1E, $1D : db $00, $00 ; 0x0008\u20130x000B: 0x012, 0x01C, 0x01E, 0x01D\n#_048012: db $1F, $20, $22, $24 : db $00, $00 ; 0x000C\u20130x000F: 0x01F, 0x020, 0x022, 0x024\n#_048018: db $0E, $25, $12, $2C : db $00, $00 ; 0x0010\u20130x0013: 0x00E, 0x025, 0x012, 0x02C\n#_04801E: db $2D, $2E, $30, $30 : db $00, $00 ; 0x0014\u20130x0017: 0x02D, 0x02E, 0x030, 0x030\n#_048024: db $30, $37, $13, $39 : db $00, $00 ; 0x0018\u20130x001B: 0x030, 0x037, 0x013, 0x039\n#_04802A: db $34, $34, $34, $36 : db $00, $00 ; 0x001C\u20130x001F: 0x034, 0x034, 0x034, 0x036\n#_048030: db $34, $2E, $42, $04 : db $00, $00 ; 0x0020\u20130x0023: 0x034, 0x02E, 0x042, 0x004\n#_048036: db $24, $0A, $46, $48 : db $00, $00 ; 0x0024\u20130x0027: 0x024, 0x00A, 0x046, 0x048\n#_04803C: db $4A, $40, $4B, $04 : db $00, $00 ; 0x0028\u20130x002B: 0x04A, 0x040, 0x04B, 0x004\n#_048042: db $38, $5C, $39, $56 : db $00, $00 ; 0x002C\u20130x002F: 0x038, 0x05C, 0x039, 0x056\n#_048048: db $04, $1F, $5E, $5F : db $00, $00 ; 0x0030\u20130x0033: 0x004, 0x01F, 0x05E, 0x05F\n#_04804E: db $60, $12, $37, $34 : db $00, $00 ; 0x0034\u20130x0037: 0x060, 0x012, 0x037, 0x034\n#_048054: db $34, $67, $69, $04 : db $00, $00 ; 0x0038\u20130x003B: 0x034, 0x067, 0x069, 0x004\n#_04805A: db $39, $6A, $6B, $44 : db $00, $00 ; 0x003C\u20130x003F: 0x039, 0x06A, 0x06B, 0x044\n#_048060: db $45, $5E, $04, $41 : db $00, $00 ; 0x0040\u20130x0043: 0x045, 0x05E, 0x004, 0x041\n#_048066: db $34, $6D, $30, $34 : db $00, $00 ; 0x0044\u20130x0047: 0x034, 0x06D, 0x030, 0x034\n#_04806C: db $5F, $21, $2D, $1D : db $00, $00 ; 0x0048\u20130x004B: 0x05F, 0x021, 0x02D, 0x01D\n#_048072: db $33, $6D, $40, $34 : db $00, $00 ; 0x004C\u20130x004F: 0x033, 0x06D, 0x040, 0x034\n#_048078: db $66, $68, $12, $38 : db $00, $00 ; 0x0050\u20130x0053: 0x066, 0x068, 0x012, 0x038\n#_04807E: db $33, $34, $69, $21 : db $00, $00 ; 0x0054\u20130x0057: 0x033, 0x034, 0x069, 0x021\n#_048084: db $69, $23, $1D, $47 : db $00, $00 ; 0x0058\u20130x005B: 0x069, 0x023, 0x01D, 0x047\n#_04808A: db $49, $4B, $21, $74 : db $00, $00 ; 0x005C\u20130x005F: 0x049, 0x04B, 0x021, 0x074\n#_048090: db $04, $4C, $6E, $04 : db $00, $00 ; 0x0060\u20130x0063: 0x004, 0x04C, 0x06E, 0x004\n#_048096: db $56, $29, $15, $11 : db $00, $00 ; 0x0064\u20130x0067: 0x056, 0x029, 0x015, 0x011\n#_04809C: db $39, $47, $04, $56 : db $00, $00 ; 0x0068\u20130x006B: 0x039, 0x047, 0x004, 0x056\n#_0480A2: db $05, $4F, $5F, $0A : db $00, $00 ; 0x006C\u20130x006F: 0x005, 0x04F, 0x05F, 0x00A\n#_0480A8: db $46, $34, $30, $04 : db $00, $00 ; 0x0070\u20130x0073: 0x046, 0x034, 0x030, 0x004\n#_0480AE: db $4C, $76, $38, $6E : db $00, $00 ; 0x0074\u20130x0077: 0x04C, 0x076, 0x038, 0x06E\n#_0480B4: db $68, $30, $11, $12 : db $00, $00 ; 0x0078\u20130x007B: 0x068, 0x030, 0x011, 0x012\n#_0480BA: db $7B, $7D, $34, $7E : db $00, $00 ; 0x007C\u20130x007F: 0x07B, 0x07D, 0x034, 0x07E\n#_0480C0: db $5E, $5F, $10, $0B : db $00, $00 ; 0x0080\u20130x0083: 0x05E, 0x05F, 0x010, 0x00B\n#_0480C6: db $82, $84, $61, $63 : db $00, $00 ; 0x0084\u20130x0087: 0x082, 0x084, 0x061, 0x063\n#_0480CC: db $30, $85, $30, $04 : db $00, $00 ; 0x0088\u20130x008B: 0x030, 0x085, 0x030, 0x004\n#_0480D2: db $1D, $34, $34, $34 : db $00, $00 ; 0x008C\u20130x008F: 0x01D, 0x034, 0x034, 0x034\n#_0480D8: db $34, $34, $89, $12 : db $00, $00 ; 0x0090\u20130x0093: 0x034, 0x034, 0x089, 0x012\n#_0480DE: db $94, $73, $96, $34 : db $00, $00 ; 0x0094\u20130x0097: 0x094, 0x073, 0x096, 0x034\n#_0480E4: db $99, $98, $9A, $9C : db $00, $00 ; 0x0098\u20130x009B: 0x099, 0x098, 0x09A, 0x09C\n#_0480EA: db $9B, $9D, $74, $34 : db $00, $00 ; 0x009C\u20130x009F: 0x09B, 0x09D, 0x074, 0x034\n#_0480F0: db $34, $9F, $A3, $A5 : db $00, $00 ; 0x00A0\u20130x00A3: 0x034, 0x09F, 0x0A3, 0x0A5\n#_0480F6: db $A7, $34, $5F, $1D : db $00, $00 ; 0x00A4\u20130x00A7: 0x0A7, 0x034, 0x05F, 0x01D\n#_0480FC: db $33, $34, $34, $34 : db $00, $00 ; 0x00A8\u20130x00AB: 0x033, 0x034, 0x034, 0x034\n#_048102: db $A5, $A7, $36, $AF : db $00, $00 ; 0x00AC\u20130x00AF: 0x0A5, 0x0A7, 0x036, 0x0AF\n#_048108: db $5F, $6E, $35, $8C : db $00, $00 ; 0x00B0\u20130x00B3: 0x05F, 0x06E, 0x035, 0x08C\n#_04810E: db $34, $34, $AF, $B1 : db $00, $00 ; 0x00B4\u20130x00B7: 0x034, 0x034, 0x0AF, 0x0B1\n#_048114: db $45, $23, $46, $6A : db $00, $00 ; 0x00B8\u20130x00BB: 0x045, 0x023, 0x046, 0x06A\n#_04811A: db $1A, $37, $35, $34 : db $00, $00 ; 0x00BC\u20130x00BF: 0x01A, 0x037, 0x035, 0x034\n#_048120: db $3F, $04, $1F, $5F : db $00, $00 ; 0x00C0\u20130x00C3: 0x03F, 0x004, 0x01F, 0x05F\n#_048126: db $04, $30, $B7, $34 : db $00, $00 ; 0x00C4\u20130x00C7: 0x004, 0x030, 0x0B7, 0x034\n#_04812C: db $97, $B9, $11, $BA : db $00, $00 ; 0x00C8\u20130x00CB: 0x097, 0x0B9, 0x011, 0x0BA\n#_048132: db $39, $11, $68, $8C : db $00, $00 ; 0x00CC\u20130x00CF: 0x039, 0x011, 0x068, 0x08C\n#_048138: db $BF, $AF, $7D, $30 : db $00, $00 ; 0x00D0\u20130x00D3: 0x0BF, 0x0AF, 0x07D, 0x030\n#_04813E: db $22, $34, $8D, $34 : db $00, $00 ; 0x00D4\u20130x00D7: 0x022, 0x034, 0x08D, 0x034\n#_048144: db $74, $49, $4B, $6E : db $00, $00 ; 0x00D8\u20130x00DB: 0x074, 0x049, 0x04B, 0x06E\n#_04814A: db $6C, $34, $36, $5F : db $00, $00 ; 0x00DC\u20130x00DF: 0x06C, 0x034, 0x036, 0x05F\n#_048150: db $34, $30, $04, $23 : db $00, $00 ; 0x00E0\u20130x00E3: 0x034, 0x030, 0x004, 0x023\n#_048156: db $7D, $30, $34, $AF : db $00, $00 ; 0x00E4\u20130x00E7: 0x07D, 0x030, 0x034, 0x0AF\n#_04815C: db $B2, $AF, $46, $56 : db $00, $00 ; 0x00E8\u20130x00EB: 0x0B2, 0x0AF, 0x046, 0x056\n#_048162: db $04, $81, $34, $76 : db $00, $00 ; 0x00EC\u20130x00EF: 0x004, 0x081, 0x034, 0x076\n#_048168: db $63, $62, $64, $69 : db $00, $00 ; 0x00F0\u20130x00F3: 0x063, 0x062, 0x064, 0x069\n#_04816E: db $11, $34, $95, $34 : db $00, $00 ; 0x00F4\u20130x00F7: 0x011, 0x034, 0x095, 0x034\n#_048174: db $34, $34, $34, $35 : db $00, $00 ; 0x00F8\u20130x00FB: 0x034, 0x034, 0x034, 0x035\n#_04817A: db $34, $22, $12, $CB : db $00, $00 ; 0x00FC\u20130x00FF: 0x034, 0x022, 0x012, 0x0CB\n#_048180: db $C5, $C6, $CC, $C8 : db $00, $00 ; 0x0100\u20130x0103: 0x0C5, 0x0C6, 0x0CC, 0x0C8\n#_048186: db $0D, $CE, $C6, $76 : db $00, $00 ; 0x0104\u20130x0107: 0x00D, 0x0CE, 0x0C6, 0x076\n#_04818C: db $D4, $C8, $C9, $C9 : db $00, $00 ; 0x0108\u20130x010B: 0x0D4, 0x0C8, 0x0C9, 0x0C9\n#_048192: db $D2, $C6, $9B, $9D : db $00, $00 ; 0x010C\u20130x010F: 0x0D2, 0x0C6, 0x09B, 0x09D\n#_048198: db $13, $95, $DA, $C8 : db $00, $00 ; 0x0110\u20130x0113: 0x013, 0x095, 0x0DA, 0x0C8\n#_04819E: db $DF, $C9, $C9, $C8 : db $00, $00 ; 0x0114\u20130x0117: 0x0DF, 0x0C9, 0x0C9, 0x0C8\n#_0481A4: db $D2, $34, $83, $83 : db $00, $00 ; 0x0118\u20130x011B: 0x0D2, 0x034, 0x083, 0x083\n#_0481AA: db $82, $DA, $DA, $34 : db $00, $00 ; 0x011C\u20130x011F: 0x082, 0x0DA, 0x0DA, 0x034\n#_0481B0: db $34, $36, $34, $34 : db $00, $00 ; 0x0120\u20130x0123: 0x034, 0x036, 0x034, 0x034\n#_0481B6: db $D3, $C5, $7F, $34 : db $00, $00 ; 0x0124\u20130x0127: 0x0D3, 0x0C5, 0x07F, 0x034\n#_0481BC: db $DA, $34, $36, $EE : db $00, $00 ; 0x0128\u20130x012B: 0x0DA, 0x034, 0x036, 0x0EE\n#_0481C2: db $EF, $36, $CE, $76 : db $00, $00 ; 0x012C\u20130x012F: 0x0EF, 0x036, 0x0CE, 0x076\n#_0481C8: db $34, $DE, $12, $DA : db $00, $00 ; 0x0130\u20130x0133: 0x034, 0x0DE, 0x012, 0x0DA\n#_0481CE: db $36, $EE, $EF, $36 : db $00, $00 ; 0x0134\u20130x0137: 0x036, 0x0EE, 0x0EF, 0x036\n#_0481D4: db $7B, $E7, $25, $E8 : db $00, $00 ; 0x0138\u20130x013B: 0x07B, 0x0E7, 0x025, 0x0E8\n#_0481DA: db $F8, $36, $FA, $FC : db $00, $00 ; 0x013C\u20130x013F: 0x0F8, 0x036, 0x0FA, 0x0FC\n#_0481E0: db $FE, $34, $34, $14 : db $00, $00 ; 0x0140\u20130x0143: 0x0FE, 0x034, 0x034, 0x014\n#_0481E6: db $A8, $DA, $34, $34 : db $00, $00 ; 0x0144\u20130x0147: 0x0A8, 0x0DA, 0x034, 0x034\n#_0481EC: db $04, $06, $09, $34 : db $11, $10 ; 0x0148\u20130x014B: 0x104, 0x106, 0x009, 0x134\n#_0481F2: db $36, $34, $4E, $D9 : db $00, $00 ; 0x014C\u20130x014F: 0x036, 0x034, 0x04E, 0x0D9\n#_0481F8: db $34, $34, $34, $C4 : db $00, $00 ; 0x0150\u20130x0153: 0x034, 0x034, 0x034, 0x0C4\n#_0481FE: db $09, $05, $7B, $34 : db $11, $00 ; 0x0154\u20130x0157: 0x109, 0x105, 0x07B, 0x034\n#_048204: db $34, $0D, $DA, $04 : db $01, $01 ; 0x0158\u20130x015B: 0x134, 0x00D, 0x1DA, 0x004\n#_04820A: db $06, $D5, $C5, $E8 : db $10, $00 ; 0x015C\u20130x015F: 0x006, 0x1D5, 0x0C5, 0x0E8\n#_048210: db $34, $B0, $15, $C6 : db $00, $00 ; 0x0160\u20130x0163: 0x034, 0x0B0, 0x015, 0x0C6\n#_048216: db $D5, $34, $34, $F1 : db $00, $00 ; 0x0164\u20130x0167: 0x0D5, 0x034, 0x034, 0x0F1\n#_04821C: db $4F, $0C, $C6, $7B : db $01, $00 ; 0x0168\u20130x016B: 0x14F, 0x00C, 0x0C6, 0x07B\n#_048222: db $E1, $36, $36, $36 : db $00, $00 ; 0x016C\u20130x016F: 0x0E1, 0x036, 0x036, 0x036\n#_048228: db $36, $C4, $DA, $D5 : db $00, $00 ; 0x0170\u20130x0173: 0x036, 0x0C4, 0x0DA, 0x0D5\n#_04822E: db $1D, $34, $DA, $34 : db $00, $00 ; 0x0174\u20130x0177: 0x01D, 0x034, 0x0DA, 0x034\n#_048234: db $10, $10, $16, $17 : db $11, $11 ; 0x0178\u20130x017B: 0x110, 0x110, 0x116, 0x117\n#_04823A: db $13, $17, $17, $12 : db $11, $11 ; 0x017C\u20130x017F: 0x113, 0x117, 0x117, 0x112\n#_048240: db $17, $12, $12, $19 : db $11, $11 ; 0x0180\u20130x0183: 0x117, 0x112, 0x112, 0x119\n#_048246: db $12, $12, $11, $23 : db $11, $11 ; 0x0184\u20130x0187: 0x112, 0x112, 0x111, 0x123\n#_04824C: db $25, $34, $1D, $34 : db $10, $10 ; 0x0188\u20130x018B: 0x025, 0x134, 0x01D, 0x134\n#_048252: db $27, $29, $1B, $10 : db $11, $11 ; 0x018C\u20130x018F: 0x127, 0x129, 0x11B, 0x110\n#_048258: db $1F, $2B, $33, $2D : db $11, $11 ; 0x0190\u20130x0193: 0x11F, 0x12B, 0x133, 0x12D\n#_04825E: db $34, $34, $2F, $2E : db $00, $11 ; 0x0194\u20130x0197: 0x034, 0x034, 0x12F, 0x12E\n#_048264: db $2F, $34, $36, $37 : db $10, $11 ; 0x0198\u20130x019B: 0x02F, 0x134, 0x136, 0x137\n#_04826A: db $37, $38, $12, $3F : db $11, $11 ; 0x019C\u20130x019F: 0x137, 0x138, 0x112, 0x13F\n#_048270: db $41, $34, $42, $44 : db $10, $11 ; 0x01A0\u20130x01A3: 0x041, 0x134, 0x142, 0x144\n#_048276: db $46, $47, $48, $4D : db $11, $11 ; 0x01A4\u20130x01A7: 0x146, 0x147, 0x148, 0x14D\n#_04827C: db $49, $C8, $41, $4E : db $10, $11 ; 0x01A8\u20130x01AB: 0x049, 0x1C8, 0x141, 0x14E\n#_048282: db $4E, $50, $32, $14 : db $11, $11 ; 0x01AC\u20130x01AF: 0x14E, 0x150, 0x132, 0x114\n#_048288: db $4C, $12, $C8, $C9 : db $11, $00 ; 0x01B0\u20130x01B3: 0x14C, 0x112, 0x0C8, 0x0C9\n#_04828E: db $C9, $54, $12, $13 : db $01, $11 ; 0x01B4\u20130x01B7: 0x1C9, 0x054, 0x112, 0x113\n#_048294: db $13, $28, $14, $1F : db $11, $11 ; 0x01B8\u20130x01BB: 0x113, 0x128, 0x114, 0x11F\n#_04829A: db $49, $57, $57, $12 : db $11, $11 ; 0x01BC\u20130x01BF: 0x149, 0x157, 0x157, 0x112\n#_0482A0: db $4C, $12, $1C, $1D : db $11, $11 ; 0x01C0\u20130x01C3: 0x14C, 0x112, 0x11C, 0x11D\n#_0482A6: db $58, $28, $14, $1F : db $11, $11 ; 0x01C4\u20130x01C7: 0x158, 0x128, 0x114, 0x11F\n#_0482AC: db $2B, $10, $11, $16 : db $11, $11 ; 0x01C8\u20130x01CB: 0x12B, 0x110, 0x111, 0x116\n#_0482B2: db $34, $5B, $5B, $32 : db $01, $11 ; 0x01CC\u20130x01CF: 0x134, 0x05B, 0x15B, 0x132\n#_0482B8: db $2C, $24, $34, $5D : db $11, $01 ; 0x01D0\u20130x01D3: 0x12C, 0x124, 0x134, 0x05D\n#_0482BE: db $5E, $60, $5B, $5B : db $11, $11 ; 0x01D4\u20130x01D7: 0x15E, 0x160, 0x15B, 0x15B\n#_0482C4: db $1D, $C8, $6B, $6D : db $10, $11 ; 0x01D8\u20130x01DB: 0x01D, 0x1C8, 0x16B, 0x16D\n#_0482CA: db $62, $6E, $70, $66 : db $11, $11 ; 0x01DC\u20130x01DF: 0x162, 0x16E, 0x170, 0x166\n#_0482D0: db $73, $74, $78, $5B : db $11, $11 ; 0x01E0\u20130x01E3: 0x173, 0x174, 0x178, 0x15B\n#_0482D6: db $34, $E3, $C8, $CE : db $00, $00 ; 0x01E4\u20130x01E7: 0x034, 0x0E3, 0x0C8, 0x0CE\n#_0482DC: db $79, $34, $C6, $C6 : db $10, $00 ; 0x01E8\u20130x01EB: 0x079, 0x134, 0x0C6, 0x0C6\n#_0482E2: db $C6, $78, $78, $52 : db $01, $11 ; 0x01EC\u20130x01EF: 0x1C6, 0x078, 0x178, 0x152\n#_0482E8: db $80, $82, $39, $34 : db $11, $10 ; 0x01F0\u20130x01F3: 0x180, 0x182, 0x039, 0x134\n#_0482EE: db $CF, $D2, $7D, $83 : db $00, $11 ; 0x01F4\u20130x01F7: 0x0CF, 0x0D2, 0x17D, 0x183\n#_0482F4: db $DC, $84, $DC, $61 : db $01, $01 ; 0x01F8\u20130x01FB: 0x1DC, 0x084, 0x1DC, 0x061\n#_0482FA: db $34, $C9, $78, $DC : db $00, $10 ; 0x01FC\u20130x01FF: 0x034, 0x0C9, 0x078, 0x1DC\n#_048300: db $CA, $C9, $86, $CA : db $00, $10 ; 0x0200\u20130x0203: 0x0CA, 0x0C9, 0x086, 0x1CA\n#_048306: db $34, $61, $6B, $52 : db $01, $11 ; 0x0204\u20130x0207: 0x134, 0x061, 0x16B, 0x152\n#_04830C: db $6C, $82, $17, $87 : db $11, $11 ; 0x0208\u20130x020B: 0x16C, 0x182, 0x117, 0x187\n#_048312: db $93, $95, $97, $97 : db $11, $11 ; 0x020C\u20130x020F: 0x193, 0x195, 0x197, 0x197\n#_048318: db $95, $9A, $92, $18 : db $11, $11 ; 0x0210\u20130x0213: 0x195, 0x19A, 0x192, 0x118\n#_04831E: db $2B, $1F, $10, $22 : db $11, $11 ; 0x0214\u20130x0217: 0x12B, 0x11F, 0x110, 0x122\n#_048324: db $24, $9E, $A0, $A2 : db $10, $11 ; 0x0218\u20130x021B: 0x024, 0x19E, 0x1A0, 0x1A2\n#_04832A: db $A1, $A1, $A3, $A4 : db $11, $11 ; 0x021C\u20130x021F: 0x1A1, 0x1A1, 0x1A3, 0x1A4\n#_048330: db $92, $26, $18, $1F : db $11, $11 ; 0x0220\u20130x0223: 0x192, 0x126, 0x118, 0x11F\n#_048336: db $38, $37, $36, $A9 : db $11, $10 ; 0x0224\u20130x0227: 0x138, 0x137, 0x036, 0x1A9\n#_04833C: db $87, $8A, $8C, $8D : db $11, $11 ; 0x0228\u20130x022B: 0x187, 0x18A, 0x18C, 0x18D\n#_048342: db $8D, $8E, $8F, $92 : db $11, $11 ; 0x022C\u20130x022F: 0x18D, 0x18E, 0x18F, 0x192\n#_048348: db $34, $26, $1E, $12 : db $01, $11 ; 0x0230\u20130x0233: 0x134, 0x026, 0x11E, 0x112\n#_04834E: db $48, $B2, $B4, $87 : db $11, $11 ; 0x0234\u20130x0237: 0x148, 0x1B2, 0x1B4, 0x187\n#_048354: db $B5, $B7, $B8, $BA : db $11, $11 ; 0x0238\u20130x023B: 0x1B5, 0x1B7, 0x1B8, 0x1BA\n#_04835A: db $B5, $B7, $34, $11 : db $11, $01 ; 0x023C\u20130x023F: 0x1B5, 0x1B7, 0x134, 0x011\n#_048360: db $2C, $1C, $AD, $C5 : db $11, $01 ; 0x0240\u20130x0243: 0x12C, 0x11C, 0x1AD, 0x0C5\n#_048366: db $C7, $C9, $CB, $CD : db $11, $11 ; 0x0244\u20130x0247: 0x1C7, 0x1C9, 0x1CB, 0x1CD\n#_04836C: db $CF, $D1, $D3, $04 : db $11, $11 ; 0x0248\u20130x024B: 0x1CF, 0x1D1, 0x1D3, 0x104\n#_048372: db $D5, $12, $1C, $34 : db $11, $10 ; 0x024C\u20130x024F: 0x1D5, 0x112, 0x01C, 0x134\n#_048378: db $DD, $DF, $DE, $E1 : db $11, $11 ; 0x0250\u20130x0253: 0x1DD, 0x1DF, 0x1DE, 0x1E1\n#_04837E: db $E2, $DF, $E4, $AD : db $11, $10 ; 0x0254\u20130x0257: 0x1E2, 0x1DF, 0x0E4, 0x1AD\n#_048384: db $A4, $A5, $A5, $34 : db $00, $00 ; 0x0258\u20130x025B: 0x0A4, 0x0A5, 0x0A5, 0x034\n#_04838A: db $4B, $E5, $34, $34 : db $11, $00 ; 0x025C\u20130x025F: 0x14B, 0x1E5, 0x034, 0x034\n#_048390: db $EB, $C9, $C9, $CF : db $10, $00 ; 0x0260\u20130x0263: 0x0EB, 0x1C9, 0x0C9, 0x0CF\n#_048396: db $D5, $ED, $EF, $9F : db $01, $10 ; 0x0264\u20130x0267: 0x1D5, 0x0ED, 0x0EF, 0x19F\n#_04839C: db $A1, $D5, $07, $F8 : db $00, $11 ; 0x0268\u20130x026B: 0x0A1, 0x0D5, 0x107, 0x1F8\n#_0483A2: db $F2, $34, $EB, $34 : db $10, $10 ; 0x026C\u20130x026F: 0x0F2, 0x134, 0x0EB, 0x134\n#_0483A8: db $A3, $FC, $34, $FE : db $01, $01 ; 0x0270\u20130x0273: 0x1A3, 0x0FC, 0x134, 0x0FE\n#_0483AE: db $FF, $D3, $79, $34 : db $10, $10 ; 0x0274\u20130x0277: 0x0FF, 0x1D3, 0x079, 0x134\n#_0483B4: db $01, $EB, $86, $FB : db $21, $11 ; 0x0278\u20130x027B: 0x101, 0x2EB, 0x186, 0x1FB\n#_0483BA: db $07, $34, $09, $0B : db $20, $22 ; 0x027C\u20130x027F: 0x007, 0x234, 0x209, 0x20B\n#_0483C0: db $00, $00, $C4, $D2 : db $21, $00 ; 0x0280\u20130x0283: 0x100, 0x200, 0x0C4, 0x0D2\n#_0483C6: db $F4, $83, $6A, $A9 : db $11, $10 ; 0x0284\u20130x0287: 0x1F4, 0x183, 0x06A, 0x1A9\n#_0483CC: db $34, $12, $34, $34 : db $02, $00 ; 0x0288\u20130x028B: 0x234, 0x012, 0x034, 0x034\n#_0483D2: db $79, $00, $05, $05 : db $11, $11 ; 0x028C\u20130x028F: 0x179, 0x100, 0x105, 0x105\n#_0483D8: db $06, $86, $10, $06 : db $11, $22 ; 0x0290\u20130x0293: 0x106, 0x186, 0x210, 0x206\n#_0483DE: db $43, $02, $0E, $CE : db $12, $20 ; 0x0294\u20130x0297: 0x243, 0x102, 0x00E, 0x2CE\n#_0483E4: db $C4, $34, $C4, $F6 : db $00, $11 ; 0x0298\u20130x029B: 0x0C4, 0x034, 0x1C4, 0x1F6\n#_0483EA: db $34, $F3, $A4, $E9 : db $01, $01 ; 0x029C\u20130x029F: 0x134, 0x0F3, 0x1A4, 0x0E9\n#_0483F0: db $D1, $4B, $52, $39 : db $01, $11 ; 0x02A0\u20130x02A3: 0x1D1, 0x04B, 0x152, 0x139\n#_0483F6: db $FD, $A5, $A7, $34 : db $10, $00 ; 0x02A4\u20130x02A7: 0x0FD, 0x1A5, 0x0A7, 0x034\n#_0483FC: db $E9, $6C, $50, $61 : db $11, $11 ; 0x02A8\u20130x02AB: 0x1E9, 0x16C, 0x150, 0x161\n#_048402: db $CF, $12, $14, $10 : db $01, $11 ; 0x02AC\u20130x02AF: 0x1CF, 0x012, 0x114, 0x110\n#_048408: db $2A, $10, $15, $12 : db $11, $11 ; 0x02B0\u20130x02B3: 0x12A, 0x110, 0x115, 0x112\n#_04840E: db $12, $15, $12, $20 : db $11, $11 ; 0x02B4\u20130x02B7: 0x112, 0x115, 0x112, 0x120\n#_048414: db $2B, $10, $2A, $1A : db $11, $11 ; 0x02B8\u20130x02BB: 0x12B, 0x110, 0x12A, 0x11A\n#_04841A: db $20, $12, $12, $11 : db $11, $11 ; 0x02BC\u20130x02BF: 0x120, 0x112, 0x112, 0x111\n#_048420: db $10, $10, $10, $1D : db $11, $11 ; 0x02C0\u20130x02C3: 0x110, 0x110, 0x110, 0x11D\n#_048426: db $18, $12, $13, $10 : db $11, $11 ; 0x02C4\u20130x02C7: 0x118, 0x112, 0x113, 0x110\n#_04842C: db $2A, $20, $11, $14 : db $11, $11 ; 0x02C8\u20130x02CB: 0x12A, 0x120, 0x111, 0x114\n#_048432: db $D5, $1A, $1E, $14 : db $12, $11 ; 0x02CC\u20130x02CF: 0x2D5, 0x11A, 0x11E, 0x114\n#_048438: db $11, $C6, $66, $1A : db $10, $12 ; 0x02D0\u20130x02D3: 0x011, 0x1C6, 0x266, 0x11A\n#_04843E: db $1B, $30, $31, $12 : db $21, $11 ; 0x02D4\u20130x02D7: 0x11B, 0x230, 0x131, 0x112\n#_048444: db $10, $24, $1B, $1D : db $11, $22 ; 0x02D8\u20130x02DB: 0x110, 0x124, 0x21B, 0x21D\n#_04844A: db $1C, $6A, $71, $30 : db $21, $01 ; 0x02DC\u20130x02DF: 0x11C, 0x26A, 0x171, 0x030\n#_048450: db $3C, $3D, $3E, $3E : db $11, $11 ; 0x02E0\u20130x02E3: 0x13C, 0x13D, 0x13E, 0x13E\n#_048456: db $3D, $3C, $34, $1C : db $11, $02 ; 0x02E4\u20130x02E7: 0x13D, 0x13C, 0x234, 0x01C\n#_04845C: db $6A, $34, $4B, $31 : db $10, $11 ; 0x02E8\u20130x02EB: 0x06A, 0x134, 0x14B, 0x131\n#_048462: db $4C, $10, $11, $2C : db $11, $11 ; 0x02EC\u20130x02EF: 0x14C, 0x110, 0x111, 0x12C\n#_048468: db $24, $34, $1C, $6A : db $10, $21 ; 0x02F0\u20130x02F3: 0x024, 0x134, 0x11C, 0x26A\n#_04846E: db $4F, $54, $2C, $40 : db $11, $11 ; 0x02F4\u20130x02F7: 0x14F, 0x154, 0x12C, 0x140\n#_048474: db $62, $5B, $53, $56 : db $11, $11 ; 0x02F8\u20130x02FB: 0x162, 0x15B, 0x153, 0x156\n#_04847A: db $12, $59, $10, $1A : db $11, $11 ; 0x02FC\u20130x02FF: 0x112, 0x159, 0x110, 0x11A\n#_048480: db $4A, $40, $D5, $5B : db $11, $01 ; 0x0300\u20130x0303: 0x14A, 0x140, 0x1D5, 0x05B\n#_048486: db $32, $12, $12, $21 : db $11, $11 ; 0x0304\u20130x0307: 0x132, 0x112, 0x112, 0x121\n#_04848C: db $1F, $4A, $5B, $32 : db $11, $11 ; 0x0308\u20130x030B: 0x11F, 0x14A, 0x15B, 0x132\n#_048492: db $20, $10, $1F, $12 : db $11, $11 ; 0x030C\u20130x030F: 0x120, 0x110, 0x11F, 0x112\n#_048498: db $4C, $10, $12, $C6 : db $11, $10 ; 0x0310\u20130x0313: 0x14C, 0x110, 0x012, 0x1C6\n#_04849E: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x0314\u20130x0317: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_0484A4: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x0318\u20130x031B: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_0484AA: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x031C\u20130x031F: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_0484B0: db $D1, $D1, $59, $16 : db $00, $11 ; 0x0320\u20130x0323: 0x0D1, 0x0D1, 0x159, 0x116\n#_0484B6: db $17, $17, $12, $4C : db $11, $11 ; 0x0324\u20130x0327: 0x117, 0x117, 0x112, 0x14C\n#_0484BC: db $11, $13, $23, $3A : db $11, $11 ; 0x0328\u20130x032B: 0x111, 0x113, 0x123, 0x13A\n#_0484C2: db $29, $12, $18, $4D : db $11, $11 ; 0x032C\u20130x032F: 0x129, 0x112, 0x118, 0x14D\n#_0484C8: db $1A, $34, $27, $32 : db $10, $11 ; 0x0330\u20130x0333: 0x01A, 0x134, 0x127, 0x132\n#_0484CE: db $2D, $18, $13, $4C : db $11, $11 ; 0x0334\u20130x0337: 0x12D, 0x118, 0x113, 0x14C\n#_0484D4: db $10, $1A, $4A, $40 : db $11, $11 ; 0x0338\u20130x033B: 0x110, 0x11A, 0x14A, 0x140\n#_0484DA: db $32, $C3, $12, $1F : db $11, $11 ; 0x033C\u20130x033F: 0x132, 0x1C3, 0x112, 0x11F\n#_0484E0: db $4A, $16, $25, $D5 : db $11, $11 ; 0x0340\u20130x0343: 0x14A, 0x116, 0x125, 0x1D5\n#_0484E6: db $C2, $1E, $18, $59 : db $11, $11 ; 0x0344\u20130x0347: 0x1C2, 0x11E, 0x118, 0x159\n#_0484EC: db $2A, $25, $71, $65 : db $11, $11 ; 0x0348\u20130x034B: 0x12A, 0x125, 0x171, 0x165\n#_0484F2: db $34, $34, $18, $24 : db $00, $11 ; 0x034C\u20130x034F: 0x034, 0x034, 0x118, 0x124\n#_0484F8: db $34, $CA, $D0, $17 : db $00, $01 ; 0x0350\u20130x0353: 0x034, 0x0CA, 0x1D0, 0x017\n#_0484FE: db $17, $25, $34, $DB : db $11, $00 ; 0x0354\u20130x0357: 0x117, 0x125, 0x034, 0x0DB\n#_048504: db $C9, $E0, $CA, $65 : db $00, $01 ; 0x0358\u20130x035B: 0x0C9, 0x0E0, 0x1CA, 0x065\n#_04850A: db $65, $67, $34, $28 : db $11, $02 ; 0x035C\u20130x035F: 0x165, 0x167, 0x234, 0x028\n#_048510: db $34, $34, $DB, $C6 : db $00, $00 ; 0x0360\u20130x0363: 0x034, 0x034, 0x0DB, 0x0C6\n#_048516: db $52, $7E, $7F, $53 : db $11, $11 ; 0x0364\u20130x0367: 0x152, 0x17E, 0x17F, 0x153\n#_04851C: db $DC, $DD, $7E, $53 : db $00, $11 ; 0x0368\u20130x036B: 0x0DC, 0x0DD, 0x17E, 0x153\n#_048522: db $53, $53, $DC, $E5 : db $11, $00 ; 0x036C\u20130x036F: 0x153, 0x153, 0x0DC, 0x0E5\n#_048528: db $E3, $2C, $2B, $DC : db $02, $20 ; 0x0370\u20130x0373: 0x2E3, 0x02C, 0x02B, 0x2DC\n#_04852E: db $1C, $DC, $30, $DC : db $20, $20 ; 0x0374\u20130x0377: 0x01C, 0x2DC, 0x030, 0x2DC\n#_048534: db $DC, $E5, $C8, $DD : db $00, $00 ; 0x0378\u20130x037B: 0x0DC, 0x0E5, 0x0C8, 0x0DD\n#_04853A: db $12, $2B, $10, $10 : db $11, $11 ; 0x037C\u20130x037F: 0x112, 0x12B, 0x110, 0x110\n#_048540: db $33, $17, $21, $34 : db $11, $10 ; 0x0380\u20130x0383: 0x133, 0x117, 0x021, 0x134\n#_048546: db $2F, $18, $18, $2E : db $11, $21 ; 0x0384\u20130x0387: 0x12F, 0x118, 0x118, 0x22E\n#_04854C: db $5E, $60, $27, $32 : db $11, $11 ; 0x0388\u20130x038B: 0x15E, 0x160, 0x127, 0x132\n#_048552: db $65, $58, $62, $35 : db $11, $12 ; 0x038C\u20130x038F: 0x165, 0x158, 0x262, 0x135\n#_048558: db $1B, $34, $34, $60 : db $20, $21 ; 0x0390\u20130x0393: 0x01B, 0x234, 0x134, 0x260\n#_04855E: db $D1, $75, $34, $37 : db $01, $02 ; 0x0394\u20130x0397: 0x1D1, 0x075, 0x234, 0x037\n#_048564: db $34, $6A, $27, $20 : db $01, $11 ; 0x0398\u20130x039B: 0x134, 0x06A, 0x127, 0x120\n#_04856A: db $DC, $53, $34, $34 : db $01, $00 ; 0x039C\u20130x039F: 0x1DC, 0x053, 0x034, 0x034\n#_048570: db $37, $34, $6A, $34 : db $20, $11 ; 0x03A0\u20130x03A3: 0x037, 0x234, 0x16A, 0x134\n#_048576: db $1E, $32, $2B, $DC : db $11, $10 ; 0x03A4\u20130x03A7: 0x11E, 0x132, 0x02B, 0x1DC\n#_04857C: db $34, $76, $34, $E7 : db $01, $01 ; 0x03A8\u20130x03AB: 0x134, 0x076, 0x134, 0x0E7\n#_048582: db $FA, $29, $56, $61 : db $11, $11 ; 0x03AC\u20130x03AF: 0x1FA, 0x129, 0x156, 0x161\n#_048588: db $34, $DB, $76, $6C : db $00, $11 ; 0x03B0\u20130x03B3: 0x034, 0x0DB, 0x176, 0x16C\n#_04858E: db $53, $34, $34, $4B : db $10, $01 ; 0x03B4\u20130x03B7: 0x053, 0x134, 0x134, 0x04B\n#_048594: db $12, $40, $DB, $E3 : db $11, $00 ; 0x03B8\u20130x03BB: 0x112, 0x140, 0x0DB, 0x0E3\n#_04859A: db $2D, $34, $3D, $2F : db $10, $21 ; 0x03BC\u20130x03BF: 0x02D, 0x134, 0x13D, 0x22F\n#_0485A0: db $1F, $1A, $3F, $34 : db $11, $20 ; 0x03C0\u20130x03C3: 0x11F, 0x11A, 0x03F, 0x234\n#_0485A6: db $31, $10, $12, $12 : db $11, $11 ; 0x03C4\u20130x03C7: 0x131, 0x110, 0x112, 0x112\n#_0485AC: db $4A, $C9, $C9, $4F : db $10, $01 ; 0x03C8\u20130x03CB: 0x04A, 0x1C9, 0x1C9, 0x04F\n#_0485B2: db $51, $12, $10, $20 : db $11, $11 ; 0x03CC\u20130x03CF: 0x151, 0x112, 0x110, 0x120\n#_0485B8: db $C8, $53, $55, $1F : db $01, $11 ; 0x03D0\u20130x03D3: 0x1C8, 0x053, 0x155, 0x11F\n#_0485BE: db $33, $24, $55, $1F : db $12, $10 ; 0x03D4\u20130x03D7: 0x233, 0x124, 0x055, 0x11F\n#_0485C4: db $47, $34, $4B, $2C : db $00, $00 ; 0x03D8\u20130x03DB: 0x047, 0x034, 0x04B, 0x02C\n#_0485CA: db $90, $37, $33, $34 : db $00, $00 ; 0x03DC\u20130x03DF: 0x090, 0x037, 0x033, 0x034\n#_0485D0: db $34, $8C, $70, $30 : db $00, $00 ; 0x03E0\u20130x03E3: 0x034, 0x08C, 0x070, 0x030\n#_0485D6: db $2E, $40, $34, $69 : db $00, $00 ; 0x03E4\u20130x03E7: 0x02E, 0x040, 0x034, 0x069\n#_0485DC: db $2C, $45, $04, $74 : db $00, $00 ; 0x03E8\u20130x03EB: 0x02C, 0x045, 0x004, 0x074\n#_0485E2: db $4B, $04, $2E, $04 : db $00, $00 ; 0x03EC\u20130x03EF: 0x04B, 0x004, 0x02E, 0x004\n#_0485E8: db $11, $39, $21, $64 : db $00, $00 ; 0x03F0\u20130x03F3: 0x011, 0x039, 0x021, 0x064\n#_0485EE: db $39, $36, $0E, $2F : db $00, $00 ; 0x03F4\u20130x03F7: 0x039, 0x036, 0x00E, 0x02F\n#_0485F4: db $6C, $41, $3A, $69 : db $02, $00 ; 0x03F8\u20130x03FB: 0x26C, 0x041, 0x03A, 0x069\n#_0485FA: db $04, $23, $B2, $7E : db $00, $00 ; 0x03FC\u20130x03FF: 0x004, 0x023, 0x0B2, 0x07E\n#_048600: db $41, $1D, $04, $34 : db $20, $00 ; 0x0400\u20130x0403: 0x041, 0x21D, 0x004, 0x034\n#_048606: db $3F, $17, $04, $04 : db $00, $00 ; 0x0404\u20130x0407: 0x03F, 0x017, 0x004, 0x004\n#_04860C: db $04, $32, $5B, $11 : db $00, $00 ; 0x0408\u20130x040B: 0x004, 0x032, 0x05B, 0x011\n#_048612: db $13, $45, $34, $30 : db $00, $00 ; 0x040C\u20130x040F: 0x013, 0x045, 0x034, 0x030\n#_048618: db $30, $30, $6D, $64 : db $00, $00 ; 0x0410\u20130x0413: 0x030, 0x030, 0x06D, 0x064\n#_04861E: db $04, $1D, $40, $64 : db $00, $00 ; 0x0414\u20130x0417: 0x004, 0x01D, 0x040, 0x064\n#_048624: db $69, $13, $7E, $AE : db $00, $00 ; 0x0418\u20130x041B: 0x069, 0x013, 0x07E, 0x0AE\n#_04862A: db $23, $46, $B2, $7E : db $00, $00 ; 0x041C\u20130x041F: 0x023, 0x046, 0x0B2, 0x07E\n#_048630: db $AE, $45, $89, $1F : db $00, $00 ; 0x0420\u20130x0423: 0x0AE, 0x045, 0x089, 0x01F\n#_048636: db $34, $40, $92, $AE : db $00, $00 ; 0x0424\u20130x0427: 0x034, 0x040, 0x092, 0x0AE\n#_04863C: db $8C, $34, $44, $4B : db $00, $20 ; 0x0428\u20130x042B: 0x08C, 0x034, 0x044, 0x24B\n#_048642: db $97, $9C, $35, $04 : db $00, $00 ; 0x042C\u20130x042F: 0x097, 0x09C, 0x035, 0x004\n#_048648: db $A9, $34, $B6, $78 : db $00, $00 ; 0x0430\u20130x0433: 0x0A9, 0x034, 0x0B6, 0x078\n#_04864E: db $04, $0F, $5D, $05 : db $00, $00 ; 0x0434\u20130x0437: 0x004, 0x00F, 0x05D, 0x005\n#_048654: db $07, $27, $2F, $AD : db $00, $00 ; 0x0438\u20130x043B: 0x007, 0x027, 0x02F, 0x0AD\n#_04865A: db $34, $01, $00, $34 : db $00, $00 ; 0x043C\u20130x043F: 0x034, 0x001, 0x000, 0x034\n#_048660: db $AC, $04, $00, $33 : db $00, $00 ; 0x0440\u20130x0443: 0x0AC, 0x004, 0x000, 0x033\n#_048666: db $AC, $29, $15, $14 : db $00, $00 ; 0x0444\u20130x0447: 0x0AC, 0x029, 0x015, 0x014\n#_04866C: db $16, $15, $70, $70 : db $00, $00 ; 0x0448\u20130x044B: 0x016, 0x015, 0x070, 0x070\n#_048672: db $48, $4A, $07, $09 : db $22, $00 ; 0x044C\u20130x044F: 0x248, 0x24A, 0x007, 0x009\n#_048678: db $4D, $4F, $32, $04 : db $00, $00 ; 0x0450\u20130x0453: 0x04D, 0x04F, 0x032, 0x004\n#_04867E: db $04, $2F, $00, $4C : db $00, $00 ; 0x0454\u20130x0457: 0x004, 0x02F, 0x000, 0x04C\n#_048684: db $30, $6E, $34, $AF : db $00, $00 ; 0x0458\u20130x045B: 0x030, 0x06E, 0x034, 0x0AF\n#_04868A: db $4E, $34, $69, $2A : db $20, $00 ; 0x045C\u20130x045F: 0x04E, 0x234, 0x069, 0x02A\n#_048690: db $18, $3F, $34, $34 : db $00, $00 ; 0x0460\u20130x0463: 0x018, 0x03F, 0x034, 0x034\n#_048696: db $13, $DE, $3A, $36 : db $00, $00 ; 0x0464\u20130x0467: 0x013, 0x0DE, 0x03A, 0x036\n#_04869C: db $4B, $04, $36, $2C : db $00, $00 ; 0x0468\u20130x046B: 0x04B, 0x004, 0x036, 0x02C\n#_0486A2: db $13, $45, $23, $B2 : db $00, $00 ; 0x046C\u20130x046F: 0x013, 0x045, 0x023, 0x0B2\n#_0486A8: db $45, $0A, $7F, $76 : db $00, $00 ; 0x0470\u20130x0473: 0x045, 0x00A, 0x07F, 0x076\n#_0486AE: db $50, $5B, $E4, $E3 : db $21, $00 ; 0x0474\u20130x0477: 0x150, 0x25B, 0x0E4, 0x0E3\n#_0486B4: db $E4, $34, $CA, $DC : db $00, $00 ; 0x0478\u20130x047B: 0x0E4, 0x034, 0x0CA, 0x0DC\n#_0486BA: db $CA, $53, $53, $C9 : db $01, $10 ; 0x047C\u20130x047F: 0x1CA, 0x053, 0x053, 0x1C9\n#_0486C0: db $C9, $E7, $C9, $53 : db $01, $02 ; 0x0480\u20130x0483: 0x1C9, 0x0E7, 0x2C9, 0x053\n#_0486C6: db $E6, $E7, $53, $22 : db $01, $12 ; 0x0484\u20130x0487: 0x1E6, 0x0E7, 0x253, 0x122\n#_0486CC: db $53, $34, $C4, $27 : db $10, $01 ; 0x0488\u20130x048B: 0x053, 0x134, 0x1C4, 0x027\n#_0486D2: db $5B, $3A, $34, $27 : db $11, $01 ; 0x048C\u20130x048F: 0x15B, 0x13A, 0x134, 0x027\n#_0486D8: db $21, $CE, $CA, $6C : db $20, $01 ; 0x0490\u20130x0493: 0x021, 0x2CE, 0x1CA, 0x06C\n#_0486DE: db $82, $53, $53, $DB : db $11, $10 ; 0x0494\u20130x0497: 0x182, 0x153, 0x053, 0x1DB\n#_0486E4: db $53, $4E, $9E, $9F : db $11, $00 ; 0x0498\u20130x049B: 0x153, 0x14E, 0x09E, 0x09F\n#_0486EA: db $53, $83, $C9, $DB : db $11, $00 ; 0x049C\u20130x049F: 0x153, 0x183, 0x0C9, 0x0DB\n#_0486F0: db $59, $5B, $34, $FE : db $22, $01 ; 0x04A0\u20130x04A3: 0x259, 0x25B, 0x134, 0x0FE\n#_0486F6: db $AD, $A7, $83, $63 : db $00, $12 ; 0x04A4\u20130x04A7: 0x0AD, 0x0A7, 0x283, 0x163\n#_0486FC: db $64, $64, $5E, $34 : db $22, $20 ; 0x04A8\u20130x04AB: 0x264, 0x264, 0x05E, 0x234\n#_048702: db $A5, $67, $4F, $63 : db $02, $12 ; 0x04AC\u20130x04AF: 0x2A5, 0x067, 0x24F, 0x163\n#_048708: db $69, $6D, $70, $69 : db $22, $22 ; 0x04B0\u20130x04B3: 0x269, 0x26D, 0x270, 0x269\n#_04870E: db $6E, $5D, $50, $5C : db $22, $12 ; 0x04B4\u20130x04B7: 0x26E, 0x25D, 0x250, 0x15C\n#_048714: db $E4, $34, $73, $EB : db $00, $21 ; 0x04B8\u20130x04BB: 0x0E4, 0x034, 0x173, 0x2EB\n#_04871A: db $34, $86, $74, $0F : db $01, $22 ; 0x04BC\u20130x04BF: 0x134, 0x086, 0x274, 0x20F\n#_048720: db $77, $0F, $34, $4F : db $22, $01 ; 0x04C0\u20130x04C3: 0x277, 0x20F, 0x134, 0x04F\n#_048726: db $34, $34, $6C, $E3 : db $00, $10 ; 0x04C4\u20130x04C7: 0x034, 0x034, 0x06C, 0x1E3\n#_04872C: db $76, $C9, $C9, $4B : db $10, $01 ; 0x04C8\u20130x04CB: 0x076, 0x1C9, 0x1C9, 0x04B\n#_048732: db $C9, $50, $5D, $64 : db $01, $22 ; 0x04CC\u20130x04CF: 0x1C9, 0x050, 0x25D, 0x264\n#_048738: db $79, $7B, $65, $78 : db $22, $22 ; 0x04D0\u20130x04D3: 0x279, 0x27B, 0x265, 0x278\n#_04873E: db $65, $6C, $7F, $80 : db $22, $22 ; 0x04D4\u20130x04D7: 0x265, 0x26C, 0x27F, 0x280\n#_048744: db $23, $78, $7C, $7E : db $22, $22 ; 0x04D8\u20130x04DB: 0x223, 0x278, 0x27C, 0x27E\n#_04874A: db $82, $C4, $CA, $23 : db $20, $02 ; 0x04DC\u20130x04DF: 0x082, 0x2C4, 0x2CA, 0x023\n#_048750: db $78, $78, $82, $83 : db $22, $21 ; 0x04E0\u20130x04E3: 0x278, 0x278, 0x182, 0x283\n#_048756: db $6B, $86, $88, $65 : db $22, $22 ; 0x04E4\u20130x04E7: 0x26B, 0x286, 0x288, 0x265\n#_04875C: db $78, $8C, $C5, $1C : db $12, $02 ; 0x04E8\u20130x04EB: 0x278, 0x18C, 0x2C5, 0x01C\n#_048762: db $81, $20, $F2, $78 : db $22, $12 ; 0x04EC\u20130x04EF: 0x281, 0x220, 0x2F2, 0x178\n#_048768: db $89, $5E, $5C, $80 : db $22, $22 ; 0x04F0\u20130x04F3: 0x289, 0x25E, 0x25C, 0x280\n#_04876E: db $6A, $65, $86, $26 : db $22, $11 ; 0x04F4\u20130x04F7: 0x26A, 0x265, 0x186, 0x126\n#_048774: db $23, $78, $89, $80 : db $22, $22 ; 0x04F8\u20130x04FB: 0x223, 0x278, 0x289, 0x280\n#_04877A: db $78, $78, $24, $34 : db $22, $10 ; 0x04FC\u20130x04FF: 0x278, 0x278, 0x024, 0x134\n#_048780: db $35, $36, $36, $93 : db $11, $12 ; 0x0500\u20130x0503: 0x135, 0x136, 0x236, 0x193\n#_048786: db $94, $95, $96, $93 : db $22, $22 ; 0x0504\u20130x0507: 0x294, 0x295, 0x296, 0x293\n#_04878C: db $F2, $34, $97, $97 : db $00, $22 ; 0x0508\u20130x050B: 0x0F2, 0x034, 0x297, 0x297\n#_048792: db $99, $9A, $9B, $97 : db $22, $22 ; 0x050C\u20130x050F: 0x299, 0x29A, 0x29B, 0x297\n#_048798: db $34, $34, $35, $45 : db $00, $11 ; 0x0510\u20130x0513: 0x034, 0x034, 0x135, 0x145\n#_04879E: db $A2, $A2, $A3, $78 : db $22, $22 ; 0x0514\u20130x0517: 0x2A2, 0x2A2, 0x2A3, 0x278\n#_0487A4: db $78, $34, $4B, $78 : db $20, $12 ; 0x0518\u20130x051B: 0x078, 0x234, 0x24B, 0x178\n#_0487AA: db $78, $7D, $78, $61 : db $22, $21 ; 0x051C\u20130x051F: 0x278, 0x27D, 0x178, 0x261\n#_0487B0: db $63, $78, $78, $78 : db $22, $22 ; 0x0520\u20130x0523: 0x263, 0x278, 0x278, 0x278\n#_0487B6: db $5C, $63, $78, $78 : db $22, $22 ; 0x0524\u20130x0527: 0x25C, 0x263, 0x278, 0x278\n#_0487BC: db $88, $78, $78, $80 : db $22, $22 ; 0x0528\u20130x052B: 0x288, 0x278, 0x278, 0x280\n#_0487C2: db $78, $86, $88, $83 : db $22, $22 ; 0x052C\u20130x052F: 0x278, 0x286, 0x288, 0x283\n#_0487C8: db $71, $65, $81, $78 : db $11, $22 ; 0x0530\u20130x0533: 0x171, 0x165, 0x281, 0x278\n#_0487CE: db $7A, $78, $8A, $ED : db $22, $21 ; 0x0534\u20130x0537: 0x27A, 0x278, 0x18A, 0x2ED\n#_0487D4: db $81, $65, $78, $64 : db $22, $22 ; 0x0538\u20130x053B: 0x281, 0x265, 0x278, 0x264\n#_0487DA: db $79, $7B, $6D, $78 : db $22, $22 ; 0x053C\u20130x053F: 0x279, 0x27B, 0x26D, 0x278\n#_0487E0: db $84, $5C, $78, $78 : db $22, $22 ; 0x0540\u20130x0543: 0x284, 0x25C, 0x278, 0x278\n#_0487E6: db $80, $7A, $89, $5D : db $22, $22 ; 0x0544\u20130x0547: 0x280, 0x27A, 0x289, 0x25D\n#_0487EC: db $30, $A7, $4B, $50 : db $22, $11 ; 0x0548\u20130x054B: 0x230, 0x2A7, 0x14B, 0x150\n#_0487F2: db $E3, $AA, $A9, $CC : db $02, $20 ; 0x054C\u20130x054F: 0x2E3, 0x0AA, 0x0A9, 0x2CC\n#_0487F8: db $39, $34, $AD, $34 : db $20, $00 ; 0x0550\u20130x0553: 0x039, 0x234, 0x0AD, 0x034\n#_0487FE: db $34, $ED, $34, $AE : db $01, $02 ; 0x0554\u20130x0557: 0x134, 0x0ED, 0x234, 0x0AE\n#_048804: db $34, $AD, $B0, $D4 : db $02, $21 ; 0x0558\u20130x055B: 0x234, 0x0AD, 0x1B0, 0x2D4\n#_04880A: db $D5, $34, $C8, $AC : db $10, $02 ; 0x055C\u20130x055F: 0x0D5, 0x134, 0x2C8, 0x0AC\n#_048810: db $E7, $34, $C8, $34 : db $10, $00 ; 0x0560\u20130x0563: 0x0E7, 0x134, 0x0C8, 0x034\n#_048816: db $C4, $D0, $34, $CA : db $00, $00 ; 0x0564\u20130x0567: 0x0C4, 0x0D0, 0x034, 0x0CA\n#_04881C: db $65, $24, $39, $6D : db $21, $12 ; 0x0568\u20130x056B: 0x165, 0x224, 0x239, 0x16D\n#_048822: db $B4, $A6, $E3, $78 : db $22, $02 ; 0x056C\u20130x056F: 0x2B4, 0x2A6, 0x2E3, 0x078\n#_048828: db $63, $1D, $1D, $34 : db $11, $10 ; 0x0570\u20130x0573: 0x163, 0x11D, 0x01D, 0x134\n#_04882E: db $23, $6B, $78, $4E : db $22, $21 ; 0x0574\u20130x0577: 0x223, 0x26B, 0x178, 0x24E\n#_048834: db $35, $4F, $34, $8F : db $01, $02 ; 0x0578\u20130x057B: 0x135, 0x04F, 0x234, 0x08F\n#_04883A: db $78, $87, $6B, $52 : db $22, $21 ; 0x057C\u20130x057F: 0x278, 0x287, 0x16B, 0x252\n#_048840: db $6A, $66, $68, $68 : db $21, $22 ; 0x0580\u20130x0583: 0x16A, 0x266, 0x268, 0x268\n#_048846: db $83, $83, $81, $75 : db $21, $21 ; 0x0584\u20130x0587: 0x183, 0x283, 0x181, 0x275\n#_04884C: db $5B, $BE, $B8, $BF : db $12, $22 ; 0x0588\u20130x058B: 0x25B, 0x1BE, 0x2B8, 0x2BF\n#_048852: db $C6, $83, $5B, $BA : db $01, $12 ; 0x058C\u20130x058F: 0x1C6, 0x083, 0x25B, 0x1BA\n#_048858: db $C2, $C3, $53, $BD : db $22, $12 ; 0x0590\u20130x0593: 0x2C2, 0x2C3, 0x253, 0x1BD\n#_04885E: db $CB, $C0, $78, $C5 : db $22, $12 ; 0x0594\u20130x0597: 0x2CB, 0x2C0, 0x278, 0x1C5\n#_048864: db $C8, $00, $51, $CD : db $21, $12 ; 0x0598\u20130x059B: 0x1C8, 0x200, 0x251, 0x1CD\n#_04886A: db $D5, $D0, $D2, $D3 : db $22, $22 ; 0x059C\u20130x059F: 0x2D5, 0x2D0, 0x2D2, 0x2D3\n#_048870: db $05, $07, $53, $D1 : db $11, $12 ; 0x05A0\u20130x05A3: 0x105, 0x107, 0x253, 0x1D1\n#_048876: db $D2, $D8, $D5, $D9 : db $22, $22 ; 0x05A4\u20130x05A7: 0x2D2, 0x2D8, 0x2D5, 0x2D9\n#_04887C: db $C7, $D3, $D0, $5B : db $22, $01 ; 0x05A8\u20130x05AB: 0x2C7, 0x2D3, 0x1D0, 0x05B\n#_048882: db $C5, $DA, $C7, $CD : db $22, $22 ; 0x05AC\u20130x05AF: 0x2C5, 0x2DA, 0x2C7, 0x2CD\n#_048888: db $DC, $D2, $DB, $34 : db $22, $20 ; 0x05B0\u20130x05B3: 0x2DC, 0x2D2, 0x0DB, 0x234\n#_04888E: db $5C, $CA, $C5, $DF : db $10, $22 ; 0x05B4\u20130x05B7: 0x05C, 0x1CA, 0x2C5, 0x2DF\n#_048894: db $DD, $DB, $C9, $62 : db $22, $21 ; 0x05B8\u20130x05BB: 0x2DD, 0x2DB, 0x1C9, 0x262\n#_04889A: db $E1, $E2, $D5, $C5 : db $22, $02 ; 0x05BC\u20130x05BF: 0x2E1, 0x2E2, 0x2D5, 0x0C5\n#_0488A0: db $DD, $C7, $E9, $EB : db $22, $22 ; 0x05C0\u20130x05C3: 0x2DD, 0x2C7, 0x2E9, 0x2EB\n#_0488A6: db $CE, $EC, $E6, $EE : db $02, $22 ; 0x05C4\u20130x05C7: 0x2CE, 0x0EC, 0x2E6, 0x2EE\n#_0488AC: db $CA, $C5, $CD, $CD : db $02, $22 ; 0x05C8\u20130x05CB: 0x2CA, 0x0C5, 0x2CD, 0x2CD\n#_0488B2: db $F6, $F6, $DF, $F0 : db $22, $22 ; 0x05CC\u20130x05CF: 0x2F6, 0x2F6, 0x2DF, 0x2F0\n#_0488B8: db $DB, $84, $C9, $F5 : db $01, $02 ; 0x05D0\u20130x05D3: 0x1DB, 0x084, 0x2C9, 0x0F5\n#_0488BE: db $EE, $C4, $58, $58 : db $20, $11 ; 0x05D4\u20130x05D7: 0x0EE, 0x2C4, 0x158, 0x158\n#_0488C4: db $F8, $CD, $CD, $FA : db $22, $22 ; 0x05D8\u20130x05DB: 0x2F8, 0x2CD, 0x2CD, 0x2FA\n#_0488CA: db $CD, $C7, $34, $3A : db $22, $02 ; 0x05DC\u20130x05DF: 0x2CD, 0x2C7, 0x234, 0x03A\n#_0488D0: db $E6, $EE, $CF, $31 : db $22, $01 ; 0x05E0\u20130x05E3: 0x2E6, 0x2EE, 0x1CF, 0x031\n#_0488D6: db $CD, $CD, $CD, $00 : db $22, $23 ; 0x05E4\u20130x05E7: 0x2CD, 0x2CD, 0x3CD, 0x200\n#_0488DC: db $5E, $5F, $69, $63 : db $11, $11 ; 0x05E8\u20130x05EB: 0x15E, 0x15F, 0x169, 0x163\n#_0488E2: db $EC, $E6, $C4, $31 : db $22, $01 ; 0x05EC\u20130x05EF: 0x2EC, 0x2E6, 0x1C4, 0x031\n#_0488E8: db $09, $0B, $04, $02 : db $33, $33 ; 0x05F0\u20130x05F3: 0x309, 0x30B, 0x304, 0x302\n#_0488EE: db $E6, $0C, $E1, $E2 : db $23, $22 ; 0x05F4\u20130x05F7: 0x3E6, 0x20C, 0x2E1, 0x2E2\n#_0488F4: db $07, $E6, $5B, $13 : db $32, $13 ; 0x05F8\u20130x05FB: 0x207, 0x3E6, 0x35B, 0x113\n#_0488FA: db $13, $C4, $E6, $E6 : db $30, $22 ; 0x05FC\u20130x05FF: 0x013, 0x3C4, 0x2E6, 0x2E6\n#_048900: db $E6, $15, $CA, $CC : db $23, $22 ; 0x0600\u20130x0603: 0x3E6, 0x215, 0x2CA, 0x2CC\n#_048906: db $CF, $1E, $E6, $06 : db $03, $21 ; 0x0604\u20130x0607: 0x3CF, 0x01E, 0x1E6, 0x206\n#_04890C: db $20, $E6, $E6, $F1 : db $32, $22 ; 0x0608\u20130x060B: 0x220, 0x3E6, 0x2E6, 0x2F1\n#_048912: db $75, $C5, $D4, $C8 : db $12, $20 ; 0x060C\u20130x060F: 0x275, 0x1C5, 0x0D4, 0x2C8\n#_048918: db $E8, $C5, $71, $EC : db $10, $12 ; 0x0610\u20130x0613: 0x0E8, 0x1C5, 0x271, 0x1EC\n#_04891E: db $EE, $F1, $CF, $53 : db $22, $01 ; 0x0614\u20130x0617: 0x2EE, 0x2F1, 0x1CF, 0x053\n#_048924: db $D1, $25, $D4, $C8 : db $23, $20 ; 0x0618\u20130x061B: 0x3D1, 0x225, 0x0D4, 0x2C8\n#_04892A: db $D2, $20, $FE, $E6 : db $03, $20 ; 0x061C\u20130x061F: 0x3D2, 0x020, 0x0FE, 0x2E6\n#_048930: db $D1, $04, $33, $F7 : db $23, $22 ; 0x0620\u20130x0623: 0x3D1, 0x204, 0x233, 0x2F7\n#_048936: db $29, $FE, $2D, $2F : db $32, $33 ; 0x0624\u20130x0627: 0x229, 0x3FE, 0x32D, 0x32F\n#_04893C: db $76, $79, $95, $79 : db $01, $01 ; 0x0628\u20130x062B: 0x176, 0x079, 0x195, 0x079\n#_048942: db $7F, $34, $34, $95 : db $00, $00 ; 0x062C\u20130x062F: 0x07F, 0x034, 0x034, 0x095\n#_048948: db $9A, $34, $AE, $9A : db $00, $00 ; 0x0630\u20130x0633: 0x09A, 0x034, 0x0AE, 0x09A\n#_04894E: db $9C, $33, $35, $34 : db $03, $30 ; 0x0634\u20130x0637: 0x39C, 0x033, 0x035, 0x334\n#_048954: db $34, $34, $34, $71 : db $00, $00 ; 0x0638\u20130x063B: 0x034, 0x034, 0x034, 0x071\n#_04895A: db $94, $34, $34, $7E : db $00, $00 ; 0x063C\u20130x063F: 0x094, 0x034, 0x034, 0x07E\n#_048960: db $76, $38, $34, $9D : db $03, $02 ; 0x0640\u20130x0643: 0x376, 0x038, 0x234, 0x09D\n#_048966: db $0B, $34, $3E, $7B : db $10, $20 ; 0x0644\u20130x0647: 0x00B, 0x134, 0x03E, 0x27B\n#_04896C: db $9D, $11, $7E, $AE : db $20, $00 ; 0x0648\u20130x064B: 0x09D, 0x211, 0x07E, 0x0AE\n#_048972: db $CA, $5B, $3A, $41 : db $01, $33 ; 0x064C\u20130x064F: 0x1CA, 0x05B, 0x33A, 0x341\n#_048978: db $43, $3E, $4C, $4D : db $33, $33 ; 0x0650\u20130x0653: 0x343, 0x33E, 0x34C, 0x34D\n#_04897E: db $4F, $51, $53, $ED : db $33, $31 ; 0x0654\u20130x0657: 0x34F, 0x351, 0x153, 0x3ED\n#_048984: db $5E, $60, $62, $63 : db $33, $33 ; 0x0658\u20130x065B: 0x35E, 0x360, 0x362, 0x363\n#_04898A: db $ED, $95, $66, $68 : db $10, $33 ; 0x065C\u20130x065F: 0x0ED, 0x195, 0x366, 0x368\n#_048990: db $79, $68, $9D, $6D : db $13, $03 ; 0x0660\u20130x0663: 0x379, 0x168, 0x39D, 0x06D\n#_048996: db $34, $70, $72, $79 : db $03, $31 ; 0x0664\u20130x0667: 0x334, 0x070, 0x172, 0x379\n#_04899C: db $72, $73, $34, $34 : db $33, $00 ; 0x0668\u20130x066B: 0x372, 0x373, 0x034, 0x034\n#_0489A2: db $29, $34, $34, $9B : db $20, $00 ; 0x066C\u20130x066F: 0x029, 0x234, 0x034, 0x09B\n#_0489A8: db $95, $79, $95, $E2 : db $01, $00 ; 0x0670\u20130x0673: 0x195, 0x079, 0x095, 0x0E2\n#_0489AE: db $E1, $7A, $7A, $7C : db $03, $33 ; 0x0674\u20130x0677: 0x3E1, 0x07A, 0x37A, 0x37C\n#_0489B4: db $7D, $0F, $36, $34 : db $32, $00 ; 0x0678\u20130x067B: 0x27D, 0x30F, 0x036, 0x034\n#_0489BA: db $36, $7C, $36, $0F : db $01, $02 ; 0x067C\u20130x067F: 0x136, 0x07C, 0x236, 0x00F\n#_0489C0: db $7E, $0F, $36, $79 : db $32, $01 ; 0x0680\u20130x0683: 0x27E, 0x30F, 0x136, 0x079\n#_0489C6: db $0F, $35, $0F, $34 : db $20, $20 ; 0x0684\u20130x0687: 0x00F, 0x235, 0x00F, 0x234\n#_0489CC: db $73, $73, $7F, $79 : db $33, $31 ; 0x0688\u20130x068B: 0x373, 0x373, 0x17F, 0x379\n#_0489D2: db $73, $7E, $7C, $9E : db $33, $10 ; 0x068C\u20130x068F: 0x373, 0x37E, 0x07C, 0x19E\n#_0489D8: db $FF, $A1, $79, $FF : db $10, $11 ; 0x0690\u20130x0693: 0x0FF, 0x1A1, 0x179, 0x1FF\n#_0489DE: db $34, $34, $A5, $A5 : db $00, $00 ; 0x0694\u20130x0697: 0x034, 0x034, 0x0A5, 0x0A5\n#_0489E4: db $C4, $A5, $A5, $A5 : db $11, $11 ; 0x0698\u20130x069B: 0x1C4, 0x1A5, 0x1A5, 0x1A5\n#_0489EA: db $A5, $17, $C4, $A5 : db $02, $11 ; 0x069C\u20130x069F: 0x2A5, 0x017, 0x1C4, 0x1A5\n#_0489F0: db $A5, $4E, $4E, $4E : db $01, $11 ; 0x06A0\u20130x06A3: 0x1A5, 0x04E, 0x14E, 0x14E\n#_0489F6: db $DC, $13, $C6, $C6 : db $20, $00 ; 0x06A4\u20130x06A7: 0x0DC, 0x213, 0x0C6, 0x0C6\n#_0489FC: db $40, $82, $6A, $34 : db $30, $10 ; 0x06A8\u20130x06AB: 0x040, 0x382, 0x06A, 0x134\n#_048A02: db $C9, $E0, $53, $FA : db $00, $11 ; 0x06AC\u20130x06AF: 0x0C9, 0x0E0, 0x153, 0x1FA\n#_048A08: db $9C, $F1, $E6, $E6 : db $02, $22 ; 0x06B0\u20130x06B3: 0x29C, 0x0F1, 0x2E6, 0x2E6\n#_048A0E: db $8A, $34, $71, $36 : db $30, $00 ; 0x06B4\u20130x06B7: 0x08A, 0x334, 0x071, 0x036\n#_048A14: db $DB, $C9, $53, $34 : db $00, $10 ; 0x06B8\u20130x06BB: 0x0DB, 0x0C9, 0x053, 0x134\n#_048A1A: db $36, $34, $73, $8E : db $00, $33 ; 0x06BC\u20130x06BF: 0x036, 0x034, 0x373, 0x38E\n#_048A20: db $71, $34, $E1, $8D : db $00, $03 ; 0x06C0\u20130x06C3: 0x071, 0x034, 0x3E1, 0x08D\n#_048A26: db $73, $83, $34, $34 : db $33, $00 ; 0x06C4\u20130x06C7: 0x373, 0x383, 0x034, 0x034\n#_048A2C: db $34, $8C, $DA, $73 : db $03, $03 ; 0x06C8\u20130x06CB: 0x334, 0x08C, 0x3DA, 0x073\n#_048A32: db $DA, $90, $0F, $E1 : db $03, $10 ; 0x06CC\u20130x06CF: 0x3DA, 0x090, 0x00F, 0x1E1\n#_048A38: db $E1, $7E, $34, $7E : db $03, $03 ; 0x06D0\u20130x06D3: 0x3E1, 0x07E, 0x334, 0x07E\n#_048A3E: db $DA, $DA, $7E, $8D : db $00, $33 ; 0x06D4\u20130x06D7: 0x0DA, 0x0DA, 0x37E, 0x38D\n#_048A44: db $36, $8D, $90, $8D : db $03, $33 ; 0x06D8\u20130x06DB: 0x336, 0x08D, 0x390, 0x38D\n#_048A4A: db $7E, $90, $36, $7E : db $33, $03 ; 0x06DC\u20130x06DF: 0x37E, 0x390, 0x336, 0x07E\n#_048A50: db $8D, $8D, $90, $90 : db $33, $33 ; 0x06E0\u20130x06E3: 0x38D, 0x38D, 0x390, 0x390\n#_048A56: db $73, $DA, $90, $71 : db $30, $30 ; 0x06E4\u20130x06E7: 0x073, 0x3DA, 0x090, 0x371\n#_048A5C: db $DA, $90, $0F, $36 : db $03, $20 ; 0x06E8\u20130x06EB: 0x3DA, 0x090, 0x00F, 0x236\n#_048A62: db $90, $36, $90, $8D : db $30, $33 ; 0x06EC\u20130x06EF: 0x090, 0x336, 0x390, 0x38D\n#_048A68: db $8F, $7E, $73, $36 : db $33, $30 ; 0x06F0\u20130x06F3: 0x38F, 0x37E, 0x073, 0x336\n#_048A6E: db $7F, $73, $90, $90 : db $33, $33 ; 0x06F4\u20130x06F7: 0x37F, 0x373, 0x390, 0x390\n#_048A74: db $71, $34, $A5, $73 : db $00, $13 ; 0x06F8\u20130x06FB: 0x071, 0x034, 0x3A5, 0x173\n#_048A7A: db $0F, $73, $73, $73 : db $23, $33 ; 0x06FC\u20130x06FF: 0x30F, 0x273, 0x373, 0x373\n#_048A80: db $92, $81, $7F, $73 : db $33, $33 ; 0x0700\u20130x0703: 0x392, 0x381, 0x37F, 0x373\n#_048A86: db $C4, $A5, $A5, $A5 : db $11, $10 ; 0x0704\u20130x0707: 0x1C4, 0x1A5, 0x0A5, 0x1A5\n#_048A8C: db $A5, $A4, $4E, $4E : db $00, $11 ; 0x0708\u20130x070B: 0x0A5, 0x0A4, 0x14E, 0x14E\n#_048A92: db $4E, $38, $5B, $B6 : db $13, $12 ; 0x070C\u20130x070F: 0x34E, 0x138, 0x25B, 0x1B6\n#_048A98: db $B7, $B9, $D1, $D4 : db $22, $00 ; 0x0710\u20130x0713: 0x2B7, 0x2B9, 0x0D1, 0x0D4\n#_048A9E: db $31, $CD, $CF, $D0 : db $12, $22 ; 0x0714\u20130x0717: 0x231, 0x1CD, 0x2CF, 0x2D0\n#_048AA4: db $CD, $95, $E1, $83 : db $20, $01 ; 0x0718\u20130x071B: 0x0CD, 0x295, 0x1E1, 0x083\n#_048AAA: db $CD, $CD, $D8, $56 : db $22, $21 ; 0x071C\u20130x071F: 0x2CD, 0x2CD, 0x1D8, 0x256\n#_048AB0: db $DC, $F8, $31, $CD : db $20, $12 ; 0x0720\u20130x0723: 0x0DC, 0x2F8, 0x231, 0x1CD\n#_048AB6: db $CD, $CD, $25, $25 : db $22, $33 ; 0x0724\u20130x0727: 0x2CD, 0x2CD, 0x325, 0x325\n#_048ABC: db $25, $25, $4F, $6C : db $33, $11 ; 0x0728\u20130x072B: 0x325, 0x325, 0x14F, 0x16C\n#_048AC2: db $33, $94, $04, $35 : db $23, $32 ; 0x072C\u20130x072F: 0x333, 0x294, 0x204, 0x335\n#_048AC8: db $71, $34, $36, $54 : db $00, $02 ; 0x0730\u20130x0733: 0x071, 0x034, 0x236, 0x054\n#_048ACE: db $C5, $CD, $CD, $CE : db $22, $22 ; 0x0734\u20130x0737: 0x2C5, 0x2CD, 0x2CD, 0x2CE\n#_048AD4: db $34, $34, $E4, $CD : db $00, $22 ; 0x0738\u20130x073B: 0x034, 0x034, 0x2E4, 0x2CD\n#_048ADA: db $CE, $76, $98, $7E : db $21, $33 ; 0x073C\u20130x073F: 0x1CE, 0x276, 0x398, 0x37E\n#_048AE0: db $26, $F2, $99, $25 : db $11, $33 ; 0x0740\u20130x0743: 0x126, 0x1F2, 0x399, 0x325\n#_048AE6: db $CD, $D5, $56, $A9 : db $22, $10 ; 0x0744\u20130x0747: 0x2CD, 0x2D5, 0x056, 0x1A9\n#_048AEC: db $90, $F7, $CD, $CD : db $22, $22 ; 0x0748\u20130x074B: 0x290, 0x2F7, 0x2CD, 0x2CD\n#_048AF2: db $2D, $A4, $79, $34 : db $10, $10 ; 0x074C\u20130x074F: 0x02D, 0x1A4, 0x079, 0x134\n#_048AF8: db $36, $9D, $CD, $2D : db $23, $21 ; 0x0750\u20130x0753: 0x336, 0x29D, 0x1CD, 0x22D\n#_048AFE: db $34, $A7, $A8, $79 : db $00, $01 ; 0x0754\u20130x0757: 0x034, 0x0A7, 0x1A8, 0x079\n#_048B04: db $7E, $ED, $C5, $CD : db $31, $22 ; 0x0758\u20130x075B: 0x17E, 0x3ED, 0x2C5, 0x2CD\n#_048B0A: db $CD, $2D, $34, $D9 : db $21, $30 ; 0x075C\u20130x075F: 0x1CD, 0x22D, 0x034, 0x3D9\n#_048B10: db $79, $ED, $C5, $FF : db $11, $22 ; 0x0760\u20130x0763: 0x179, 0x1ED, 0x2C5, 0x2FF\n#_048B16: db $63, $35, $32, $C9 : db $10, $20 ; 0x0764\u20130x0767: 0x063, 0x135, 0x032, 0x2C9\n#_048B1C: db $41, $F2, $34, $79 : db $10, $01 ; 0x0768\u20130x076B: 0x041, 0x1F2, 0x134, 0x079\n#_048B22: db $84, $54, $FF, $63 : db $32, $21 ; 0x076C\u20130x076F: 0x284, 0x354, 0x1FF, 0x263\n#_048B28: db $71, $C4, $34, $3A : db $00, $02 ; 0x0770\u20130x0773: 0x071, 0x0C4, 0x234, 0x03A\n#_048B2E: db $F2, $CE, $83, $B7 : db $02, $12 ; 0x0774\u20130x0777: 0x2F2, 0x0CE, 0x283, 0x1B7\n#_048B34: db $D1, $CD, $C9, $13 : db $02, $03 ; 0x0778\u20130x077B: 0x2D1, 0x0CD, 0x3C9, 0x013\n#_048B3A: db $DC, $B7, $C9, $B7 : db $02, $02 ; 0x077C\u20130x077F: 0x2DC, 0x0B7, 0x2C9, 0x0B7\n#_048B40: db $CD, $CD, $56, $B7 : db $22, $12 ; 0x0780\u20130x0783: 0x2CD, 0x2CD, 0x256, 0x1B7\n#_048B46: db $DC, $1D, $CD, $CD : db $23, $22 ; 0x0784\u20130x0787: 0x3DC, 0x21D, 0x2CD, 0x2CD\n#_048B4C: db $CD, $CD, $00, $27 : db $22, $33 ; 0x0788\u20130x078B: 0x2CD, 0x2CD, 0x300, 0x327\n#_048B52: db $25, $33, $A2, $A4 : db $32, $33 ; 0x078C\u20130x078F: 0x225, 0x333, 0x3A2, 0x3A4\n#_048B58: db $D6, $35, $33, $76 : db $20, $20 ; 0x0790\u20130x0793: 0x0D6, 0x235, 0x033, 0x276\n#_048B5E: db $9D, $31, $00, $C2 : db $21, $11 ; 0x0794\u20130x0797: 0x19D, 0x231, 0x100, 0x1C2\n#_048B64: db $34, $7B, $0A, $A6 : db $00, $13 ; 0x0798\u20130x079B: 0x034, 0x07B, 0x30A, 0x1A6\n#_048B6A: db $9A, $A5, $05, $33 : db $33, $12 ; 0x079C\u20130x079F: 0x39A, 0x3A5, 0x205, 0x133\n#_048B70: db $36, $A8, $34, $35 : db $03, $33 ; 0x07A0\u20130x07A3: 0x336, 0x0A8, 0x334, 0x335\n#_048B76: db $34, $71, $34, $AE : db $00, $00 ; 0x07A4\u20130x07A7: 0x034, 0x071, 0x034, 0x0AE\n#_048B7C: db $AF, $7F, $AA, $AC : db $00, $33 ; 0x07A8\u20130x07AB: 0x0AF, 0x07F, 0x3AA, 0x3AC\n#_048B82: db $6A, $6C, $36, $0B : db $33, $01 ; 0x07AC\u20130x07AF: 0x36A, 0x36C, 0x136, 0x00B\n#_048B88: db $76, $B3, $B5, $77 : db $03, $33 ; 0x07B0\u20130x07B3: 0x376, 0x0B3, 0x3B5, 0x377\n#_048B8E: db $79, $36, $74, $35 : db $30, $30 ; 0x07B4\u20130x07B7: 0x079, 0x336, 0x074, 0x335\n#_048B94: db $95, $FB, $BB, $36 : db $00, $30 ; 0x07B8\u20130x07BB: 0x095, 0x0FB, 0x0BB, 0x336\n#_048B9A: db $39, $38, $6D, $7F : db $23, $10 ; 0x07BC\u20130x07BF: 0x339, 0x238, 0x06D, 0x17F\n#_048BA0: db $C0, $34, $C2, $37 : db $30, $12 ; 0x07C0\u20130x07C3: 0x0C0, 0x334, 0x2C2, 0x137\n#_048BA6: db $36, $34, $1A, $C2 : db $02, $21 ; 0x07C4\u20130x07C7: 0x236, 0x034, 0x11A, 0x2C2\n#_048BAC: db $05, $35, $33, $18 : db $12, $22 ; 0x07C8\u20130x07CB: 0x205, 0x135, 0x233, 0x218\n#_048BB2: db $34, $05, $35, $C2 : db $01, $21 ; 0x07CC\u20130x07CF: 0x134, 0x005, 0x135, 0x2C2\n#_048BB8: db $18, $33, $33, $35 : db $22, $22 ; 0x07D0\u20130x07D3: 0x218, 0x233, 0x233, 0x235\n#_048BBE: db $62, $36, $25, $B1 : db $12, $22 ; 0x07D4\u20130x07D7: 0x262, 0x136, 0x225, 0x2B1\n#_048BC4: db $E0, $18, $62, $C2 : db $22, $13 ; 0x07D8\u20130x07DB: 0x2E0, 0x218, 0x362, 0x1C2\n#_048BCA: db $34, $34, $34, $34 : db $00, $00 ; 0x07DC\u20130x07DF: 0x034, 0x034, 0x034, 0x034\n#_048BD0: db $E0, $E6, $0C, $E5 : db $22, $32 ; 0x07E0\u20130x07E3: 0x2E0, 0x2E6, 0x20C, 0x3E5\n#_048BD6: db $9E, $C7, $C9, $CB : db $03, $33 ; 0x07E4\u20130x07E7: 0x39E, 0x0C7, 0x3C9, 0x3CB\n#_048BDC: db $CC, $CD, $CA, $76 : db $33, $30 ; 0x07E8\u20130x07EB: 0x3CC, 0x3CD, 0x0CA, 0x376\n#_048BE2: db $AD, $A5, $C9, $34 : db $00, $30 ; 0x07EC\u20130x07EF: 0x0AD, 0x0A5, 0x0C9, 0x334\n#_048BE8: db $34, $34, $D2, $D5 : db $00, $33 ; 0x07F0\u20130x07F3: 0x034, 0x034, 0x3D2, 0x3D5\n#_048BEE: db $D7, $D8, $98, $34 : db $33, $30 ; 0x07F4\u20130x07F7: 0x3D7, 0x3D8, 0x098, 0x334\n#_048BF4: db $D9, $A3, $DE, $DF : db $33, $33 ; 0x07F8\u20130x07FB: 0x3D9, 0x3A3, 0x3DE, 0x3DF\n#_048BFA: db $3F, $E0, $E1, $76 : db $23, $30 ; 0x07FC\u20130x07FF: 0x33F, 0x2E0, 0x0E1, 0x376\n#_048C00: db $E6, $E8, $E9, $36 : db $33, $30 ; 0x0800\u20130x0803: 0x3E6, 0x3E8, 0x0E9, 0x336\n#_048C06: db $EA, $EB, $F4, $D0 : db $33, $33 ; 0x0804\u20130x0807: 0x3EA, 0x3EB, 0x3F4, 0x3D0\n#_048C0C: db $D0, $C9, $F1, $EB : db $30, $33 ; 0x0808\u20130x080B: 0x0D0, 0x3C9, 0x3F1, 0x3EB\n#_048C12: db $EA, $F7, $F9, $FA : db $33, $33 ; 0x080C\u20130x080F: 0x3EA, 0x3F7, 0x3F9, 0x3FA\n#_048C18: db $34, $C9, $C6, $C6 : db $03, $33 ; 0x0810\u20130x0813: 0x334, 0x0C9, 0x3C6, 0x3C6\n#_048C1E: db $C6, $C6, $C6, $02 : db $33, $34 ; 0x0814\u20130x0817: 0x3C6, 0x3C6, 0x4C6, 0x302\n#_048C24: db $04, $05, $F0, $C9 : db $44, $03 ; 0x0818\u20130x081B: 0x404, 0x405, 0x3F0, 0x0C9\n#_048C2A: db $07, $08, $08, $CA : db $44, $43 ; 0x081C\u20130x081F: 0x407, 0x408, 0x308, 0x4CA\n#_048C30: db $CB, $CC, $F6, $F9 : db $33, $30 ; 0x0820\u20130x0823: 0x3CB, 0x3CC, 0x0F6, 0x3F9\n#_048C36: db $FB, $FD, $FF, $0F : db $00, $04 ; 0x0824\u20130x0827: 0x0FB, 0x0FD, 0x4FF, 0x00F\n#_048C3C: db $10, $11, $CA, $F6 : db $44, $33 ; 0x0828\u20130x082B: 0x410, 0x411, 0x3CA, 0x3F6\n#_048C42: db $34, $F6, $1B, $34 : db $03, $40 ; 0x082C\u20130x082F: 0x334, 0x0F6, 0x01B, 0x434\n#_048C48: db $CA, $CA, $CA, $1C : db $33, $34 ; 0x0830\u20130x0833: 0x3CA, 0x3CA, 0x4CA, 0x31C\n#_048C4E: db $CF, $E1, $34, $CA : db $30, $03 ; 0x0834\u20130x0837: 0x0CF, 0x3E1, 0x334, 0x0CA\n#_048C54: db $23, $22, $E7, $1C : db $44, $34 ; 0x0838\u20130x083B: 0x423, 0x422, 0x4E7, 0x31C\n#_048C5A: db $CD, $26, $26, $CC : db $34, $43 ; 0x083C\u20130x083F: 0x4CD, 0x326, 0x326, 0x4CC\n#_048C60: db $CA, $34, $34, $34 : db $30, $00 ; 0x0840\u20130x0843: 0x0CA, 0x334, 0x034, 0x034\n#_048C66: db $34, $CF, $D0, $35 : db $03, $30 ; 0x0844\u20130x0847: 0x334, 0x0CF, 0x0D0, 0x335\n#_048C6C: db $79, $D6, $4F, $D7 : db $10, $00 ; 0x0848\u20130x084B: 0x079, 0x1D6, 0x04F, 0x0D7\n#_048C72: db $08, $E2, $AC, $AE : db $00, $00 ; 0x084C\u20130x084F: 0x008, 0x0E2, 0x0AC, 0x0AE\n#_048C78: db $7E, $34, $BE, $02 : db $00, $00 ; 0x0850\u20130x0853: 0x07E, 0x034, 0x0BE, 0x002\n#_048C7E: db $CA, $34, $53, $F7 : db $30, $03 ; 0x0854\u20130x0857: 0x0CA, 0x334, 0x353, 0x0F7\n#_048C84: db $F9, $FA, $EC, $2B : db $33, $04 ; 0x0858\u20130x085B: 0x3F9, 0x3FA, 0x4EC, 0x02B\n#_048C8A: db $DA, $DA, $F0, $C6 : db $33, $03 ; 0x085C\u20130x085F: 0x3DA, 0x3DA, 0x3F0, 0x0C6\n#_048C90: db $CA, $50, $C9, $32 : db $31, $04 ; 0x0860\u20130x0863: 0x1CA, 0x350, 0x4C9, 0x032\n#_048C96: db $E1, $34, $35, $FF : db $34, $40 ; 0x0864\u20130x0867: 0x4E1, 0x334, 0x035, 0x4FF\n#_048C9C: db $34, $34, $C9, $D0 : db $00, $32 ; 0x0868\u20130x086B: 0x034, 0x034, 0x2C9, 0x3D0\n#_048CA2: db $1C, $34, $34, $34 : db $40, $33 ; 0x086C\u20130x086F: 0x01C, 0x434, 0x334, 0x334\n#_048CA8: db $E2, $1E, $F7, $1E : db $01, $21 ; 0x0870\u20130x0873: 0x1E2, 0x01E, 0x1F7, 0x21E\n#_048CAE: db $C6, $CA, $28, $27 : db $33, $41 ; 0x0874\u20130x0877: 0x3C6, 0x3CA, 0x128, 0x427\n#_048CB4: db $CA, $CC, $CD, $D2 : db $33, $33 ; 0x0878\u20130x087B: 0x3CA, 0x3CC, 0x3CD, 0x3D2\n#_048CBA: db $26, $26, $D2, $F4 : db $44, $33 ; 0x087C\u20130x087F: 0x426, 0x426, 0x3D2, 0x3F4\n#_048CC0: db $D0, $D1, $CE, $36 : db $33, $30 ; 0x0880\u20130x0883: 0x3D0, 0x3D1, 0x0CE, 0x336\n#_048CC6: db $1C, $F6, $34, $C8 : db $43, $03 ; 0x0884\u20130x0887: 0x31C, 0x4F6, 0x334, 0x0C8\n#_048CCC: db $EC, $CE, $34, $39 : db $03, $04 ; 0x0888\u20130x088B: 0x3EC, 0x0CE, 0x434, 0x039\n#_048CD2: db $1C, $EA, $F0, $CE : db $43, $03 ; 0x088C\u20130x088F: 0x31C, 0x4EA, 0x3F0, 0x0CE\n#_048CD8: db $53, $3E, $1C, $E7 : db $14, $43 ; 0x0890\u20130x0893: 0x453, 0x13E, 0x31C, 0x4E7\n#_048CDE: db $FF, $CE, $AB, $C5 : db $03, $22 ; 0x0894\u20130x0897: 0x3FF, 0x0CE, 0x2AB, 0x2C5\n#_048CE4: db $1C, $34, $F6, $CE : db $40, $33 ; 0x0898\u20130x089B: 0x01C, 0x434, 0x3F6, 0x3CE\n#_048CEA: db $1C, $D0, $D1, $34 : db $43, $30 ; 0x089C\u20130x089F: 0x31C, 0x4D0, 0x0D1, 0x334\n#_048CF0: db $34, $09, $D8, $34 : db $30, $00 ; 0x08A0\u20130x08A3: 0x034, 0x309, 0x0D8, 0x034\n#_048CF6: db $87, $86, $D9, $00 : db $00, $00 ; 0x08A4\u20130x08A7: 0x087, 0x086, 0x0D9, 0x000\n#_048CFC: db $7C, $34, $34, $36 : db $00, $00 ; 0x08A8\u20130x08AB: 0x07C, 0x034, 0x034, 0x036\n#_048D02: db $15, $86, $88, $34 : db $00, $00 ; 0x08AC\u20130x08AF: 0x015, 0x086, 0x088, 0x034\n#_048D08: db $7F, $7B, $E4, $D8 : db $00, $20 ; 0x08B0\u20130x08B3: 0x07F, 0x07B, 0x0E4, 0x2D8\n#_048D0E: db $76, $4F, $E8, $C9 : db $00, $00 ; 0x08B4\u20130x08B7: 0x076, 0x04F, 0x0E8, 0x0C9\n#_048D14: db $34, $7F, $35, $41 : db $00, $01 ; 0x08B8\u20130x08BB: 0x034, 0x07F, 0x135, 0x041\n#_048D1A: db $A8, $E4, $CE, $24 : db $02, $21 ; 0x08BC\u20130x08BF: 0x2A8, 0x0E4, 0x1CE, 0x224\n#_048D20: db $B5, $26, $B6, $09 : db $00, $00 ; 0x08C0\u20130x08C3: 0x0B5, 0x026, 0x0B6, 0x009\n#_048D26: db $8B, $BE, $00, $34 : db $00, $00 ; 0x08C4\u20130x08C7: 0x08B, 0x0BE, 0x000, 0x034\n#_048D2C: db $F2, $CD, $2D, $90 : db $12, $12 ; 0x08C8\u20130x08CB: 0x2F2, 0x1CD, 0x22D, 0x190\n#_048D32: db $CF, $34, $8B, $9C : db $20, $00 ; 0x08CC\u20130x08CF: 0x0CF, 0x234, 0x08B, 0x09C\n#_048D38: db $34, $36, $78, $26 : db $00, $00 ; 0x08D0\u20130x08D3: 0x034, 0x036, 0x078, 0x026\n#_048D3E: db $79, $2D, $7C, $99 : db $01, $00 ; 0x08D4\u20130x08D7: 0x179, 0x02D, 0x07C, 0x099\n#_048D44: db $CD, $2D, $14, $16 : db $21, $00 ; 0x08D8\u20130x08DB: 0x1CD, 0x22D, 0x014, 0x016\n#_048D4A: db $15, $2D, $D8, $24 : db $01, $03 ; 0x08DC\u20130x08DF: 0x115, 0x02D, 0x3D8, 0x024\n#_048D50: db $25, $A0, $55, $57 : db $33, $44 ; 0x08E0\u20130x08E3: 0x325, 0x3A0, 0x455, 0x457\n#_048D56: db $58, $59, $56, $57 : db $44, $44 ; 0x08E4\u20130x08E7: 0x458, 0x459, 0x456, 0x457\n#_048D5C: db $32, $A4, $64, $54 : db $23, $44 ; 0x08E8\u20130x08EB: 0x332, 0x2A4, 0x464, 0x454\n#_048D62: db $65, $67, $69, $54 : db $44, $44 ; 0x08EC\u20130x08EF: 0x465, 0x467, 0x469, 0x454\n#_048D68: db $6B, $54, $6C, $9F : db $44, $43 ; 0x08F0\u20130x08F3: 0x46B, 0x454, 0x36C, 0x49F\n#_048D6E: db $36, $76, $6E, $70 : db $00, $44 ; 0x08F4\u20130x08F7: 0x036, 0x076, 0x46E, 0x470\n#_048D74: db $70, $78, $7A, $7C : db $44, $44 ; 0x08F8\u20130x08FB: 0x470, 0x478, 0x47A, 0x47C\n#_048D7A: db $5D, $24, $95, $70 : db $41, $04 ; 0x08FC\u20130x08FF: 0x15D, 0x424, 0x495, 0x070\n#_048D80: db $81, $83, $72, $7E : db $44, $43 ; 0x0900\u20130x0903: 0x481, 0x483, 0x372, 0x47E\n#_048D86: db $8E, $6F, $90, $91 : db $44, $44 ; 0x0904\u20130x0907: 0x48E, 0x46F, 0x490, 0x491\n#_048D8C: db $57, $6E, $93, $7E : db $44, $43 ; 0x0908\u20130x090B: 0x457, 0x46E, 0x393, 0x47E\n#_048D92: db $6B, $6F, $9B, $9C : db $44, $44 ; 0x090C\u20130x090F: 0x46B, 0x46F, 0x49B, 0x49C\n#_048D98: db $9C, $87, $88, $CD : db $44, $42 ; 0x0910\u20130x0913: 0x49C, 0x487, 0x288, 0x4CD\n#_048D9E: db $24, $4E, $9D, $7E : db $14, $43 ; 0x0914\u20130x0917: 0x424, 0x14E, 0x39D, 0x47E\n#_048DA4: db $84, $8B, $9F, $52 : db $44, $44 ; 0x0918\u20130x091B: 0x484, 0x48B, 0x49F, 0x452\n#_048DAA: db $25, $04, $34, $36 : db $33, $00 ; 0x091C\u20130x091F: 0x325, 0x304, 0x034, 0x036\n#_048DB0: db $A1, $5D, $90, $1C : db $44, $21 ; 0x0920\u20130x0923: 0x4A1, 0x45D, 0x190, 0x21C\n#_048DB6: db $34, $34, $A2, $A3 : db $00, $44 ; 0x0924\u20130x0927: 0x034, 0x034, 0x4A2, 0x4A3\n#_048DBC: db $A4, $A6, $AB, $A7 : db $44, $44 ; 0x0928\u20130x092B: 0x4A4, 0x4A6, 0x4AB, 0x4A7\n#_048DC2: db $AE, $7E, $B0, $A7 : db $43, $44 ; 0x092C\u20130x092F: 0x3AE, 0x47E, 0x4B0, 0x4A7\n#_048DC8: db $AE, $82, $B7, $6F : db $43, $44 ; 0x0930\u20130x0933: 0x3AE, 0x482, 0x4B7, 0x46F\n#_048DCE: db $BA, $F0, $BB, $CD : db $40, $42 ; 0x0934\u20130x0937: 0x0BA, 0x4F0, 0x2BB, 0x4CD\n#_048DD4: db $9C, $34, $8F, $F0 : db $30, $40 ; 0x0938\u20130x093B: 0x09C, 0x334, 0x08F, 0x4F0\n#_048DDA: db $34, $BD, $CD, $37 : db $04, $22 ; 0x093C\u20130x093F: 0x434, 0x0BD, 0x2CD, 0x237\n#_048DE0: db $84, $86, $9F, $34 : db $44, $40 ; 0x0940\u20130x0943: 0x484, 0x486, 0x09F, 0x434\n#_048DE6: db $BD, $62, $C2, $4E : db $44, $44 ; 0x0944\u20130x0947: 0x4BD, 0x462, 0x4C2, 0x44E\n#_048DEC: db $9D, $34, $57, $CA : db $40, $44 ; 0x0948\u20130x094B: 0x09D, 0x434, 0x457, 0x4CA\n#_048DF2: db $C9, $9D, $F7, $25 : db $44, $23 ; 0x094C\u20130x094F: 0x4C9, 0x49D, 0x3F7, 0x225\n#_048DF8: db $25, $26, $CD, $54 : db $33, $24 ; 0x0950\u20130x0953: 0x325, 0x326, 0x4CD, 0x254\n#_048DFE: db $C6, $54, $CF, $9D : db $44, $44 ; 0x0954\u20130x0957: 0x4C6, 0x454, 0x4CF, 0x49D\n#_048E04: db $A6, $34, $F8, $5F : db $32, $24 ; 0x0958\u20130x095B: 0x2A6, 0x334, 0x4F8, 0x25F\n#_048E0A: db $5C, $7B, $61, $70 : db $44, $44 ; 0x095C\u20130x095F: 0x45C, 0x47B, 0x461, 0x470\n#_048E10: db $9D, $76, $70, $72 : db $40, $44 ; 0x0960\u20130x0963: 0x09D, 0x476, 0x470, 0x472\n#_048E16: db $82, $70, $95, $D4 : db $44, $04 ; 0x0964\u20130x0967: 0x482, 0x470, 0x495, 0x0D4\n#_048E1C: db $70, $57, $8F, $C1 : db $44, $44 ; 0x0968\u20130x096B: 0x470, 0x457, 0x48F, 0x4C1\n#_048E22: db $35, $D7, $36, $8B : db $04, $04 ; 0x096C\u20130x096F: 0x435, 0x0D7, 0x436, 0x08B\n#_048E28: db $8B, $9B, $9C, $8F : db $44, $44 ; 0x0970\u20130x0973: 0x48B, 0x49B, 0x49C, 0x48F\n#_048E2E: db $C4, $34, $DE, $34 : db $40, $40 ; 0x0974\u20130x0977: 0x0C4, 0x434, 0x0DE, 0x434\n#_048E34: db $52, $51, $8B, $E3 : db $44, $44 ; 0x0978\u20130x097B: 0x452, 0x451, 0x48B, 0x4E3\n#_048E3A: db $36, $35, $E2, $9D : db $00, $42 ; 0x097C\u20130x097F: 0x036, 0x035, 0x2E2, 0x49D\n#_048E40: db $C5, $5F, $5C, $5C : db $24, $44 ; 0x0980\u20130x0983: 0x4C5, 0x25F, 0x45C, 0x45C\n#_048E46: db $7B, $C3, $34, $36 : db $44, $00 ; 0x0984\u20130x0987: 0x47B, 0x4C3, 0x034, 0x036\n#_048E4C: db $36, $E7, $53, $D1 : db $01, $12 ; 0x0988\u20130x098B: 0x136, 0x0E7, 0x253, 0x1D1\n#_048E52: db $70, $EB, $82, $36 : db $44, $40 ; 0x098C\u20130x098F: 0x470, 0x4EB, 0x082, 0x436\n#_048E58: db $34, $36, $34, $ED : db $30, $31 ; 0x0990\u20130x0993: 0x034, 0x336, 0x134, 0x3ED\n#_048E5E: db $F2, $AD, $F4, $36 : db $44, $40 ; 0x0994\u20130x0997: 0x4F2, 0x4AD, 0x0F4, 0x436\n#_048E64: db $CD, $F2, $AD, $F4 : db $24, $44 ; 0x0998\u20130x099B: 0x4CD, 0x2F2, 0x4AD, 0x4F4\n#_048E6A: db $34, $34, $4E, $B8 : db $00, $44 ; 0x099C\u20130x099F: 0x034, 0x034, 0x44E, 0x4B8\n#_048E70: db $B9, $9D, $36, $A7 : db $44, $04 ; 0x09A0\u20130x09A3: 0x4B9, 0x49D, 0x436, 0x0A7\n#_048E76: db $6F, $D8, $F4, $FA : db $42, $44 ; 0x09A4\u20130x09A7: 0x26F, 0x4D8, 0x4F4, 0x4FA\n#_048E7C: db $FC, $4E, $85, $BF : db $44, $44 ; 0x09A8\u20130x09AB: 0x4FC, 0x44E, 0x485, 0x4BF\n#_048E82: db $34, $F4, $FA, $FC : db $04, $44 ; 0x09AC\u20130x09AF: 0x434, 0x0F4, 0x4FA, 0x4FC\n#_048E88: db $78, $8F, $36, $A7 : db $44, $04 ; 0x09B0\u20130x09B3: 0x478, 0x48F, 0x436, 0x0A7\n#_048E8E: db $36, $34, $8F, $F0 : db $00, $40 ; 0x09B4\u20130x09B7: 0x036, 0x034, 0x08F, 0x4F0\n#_048E94: db $34, $24, $08, $02 : db $01, $12 ; 0x09B8\u20130x09BB: 0x134, 0x024, 0x208, 0x102\n#_048E9A: db $DA, $DA, $54, $37 : db $00, $22 ; 0x09BC\u20130x09BF: 0x0DA, 0x0DA, 0x254, 0x237\n#_048EA0: db $34, $C6, $4B, $37 : db $00, $12 ; 0x09C0\u20130x09C3: 0x034, 0x0C6, 0x24B, 0x137\n#_048EA6: db $36, $34, $C6, $F9 : db $00, $02 ; 0x09C4\u20130x09C7: 0x036, 0x034, 0x2C6, 0x0F9\n#_048EAC: db $48, $34, $70, $9F : db $40, $10 ; 0x09C8\u20130x09CB: 0x048, 0x434, 0x070, 0x19F\n#_048EB2: db $BA, $05, $06, $4C : db $25, $54 ; 0x09CC\u20130x09CF: 0x5BA, 0x205, 0x406, 0x54C\n#_048EB8: db $35, $0D, $C6, $0B : db $02, $05 ; 0x09D0\u20130x09D3: 0x235, 0x00D, 0x5C6, 0x00B\n#_048EBE: db $0D, $0C, $0E, $0F : db $55, $55 ; 0x09D4\u20130x09D7: 0x50D, 0x50C, 0x50E, 0x50F\n#_048EC4: db $34, $35, $DB, $C4 : db $00, $00 ; 0x09D8\u20130x09DB: 0x034, 0x035, 0x0DB, 0x0C4\n#_048ECA: db $34, $AB, $C6, $10 : db $00, $05 ; 0x09DC\u20130x09DF: 0x034, 0x0AB, 0x5C6, 0x010\n#_048ED0: db $11, $12, $7C, $E4 : db $55, $12 ; 0x09E0\u20130x09E3: 0x511, 0x512, 0x27C, 0x1E4\n#_048ED6: db $C4, $AC, $18, $1A : db $10, $55 ; 0x09E4\u20130x09E7: 0x0C4, 0x1AC, 0x518, 0x51A\n#_048EDC: db $1A, $1C, $1E, $C4 : db $55, $51 ; 0x09E8\u20130x09EB: 0x51A, 0x51C, 0x11E, 0x5C4\n#_048EE2: db $34, $AB, $C5, $9E : db $02, $23 ; 0x09EC\u20130x09EF: 0x234, 0x0AB, 0x3C5, 0x29E\n#_048EE8: db $AD, $AC, $D1, $00 : db $00, $21 ; 0x09F0\u20130x09F3: 0x0AD, 0x0AC, 0x1D1, 0x200\n#_048EEE: db $41, $34, $EE, $E4 : db $10, $12 ; 0x09F4\u20130x09F7: 0x041, 0x134, 0x2EE, 0x1E4\n#_048EF4: db $C8, $20, $85, $20 : db $05, $15 ; 0x09F8\u20130x09FB: 0x5C8, 0x020, 0x585, 0x120\n#_048EFA: db $34, $21, $F9, $D4 : db $05, $22 ; 0x09FC\u20130x09FF: 0x534, 0x021, 0x2F9, 0x2D4\n#_048F00: db $DC, $97, $0F, $F9 : db $23, $32 ; 0x0A00\u20130x0A03: 0x3DC, 0x297, 0x20F, 0x3F9\n#_048F06: db $27, $25, $E5, $1C : db $31, $21 ; 0x0A04\u20130x0A07: 0x127, 0x325, 0x1E5, 0x21C\n#_048F0C: db $25, $34, $26, $E5 : db $10, $12 ; 0x0A08\u20130x0A0B: 0x025, 0x134, 0x226, 0x1E5\n#_048F12: db $2D, $A3, $C6, $5B : db $10, $01 ; 0x0A0C\u20130x0A0F: 0x02D, 0x1A3, 0x1C6, 0x05B\n#_048F18: db $87, $5B, $28, $E6 : db $31, $52 ; 0x0A10\u20130x0A13: 0x187, 0x35B, 0x228, 0x5E6\n#_048F1E: db $E6, $E6, $E6, $27 : db $22, $25 ; 0x0A14\u20130x0A17: 0x2E6, 0x2E6, 0x5E6, 0x227\n#_048F24: db $28, $EC, $26, $C9 : db $52, $50 ; 0x0A18\u20130x0A1B: 0x228, 0x5EC, 0x026, 0x5C9\n#_048F2A: db $C9, $C9, $C9, $30 : db $00, $05 ; 0x0A1C\u20130x0A1F: 0x0C9, 0x0C9, 0x5C9, 0x030\n#_048F30: db $34, $E6, $29, $29 : db $52, $33 ; 0x0A20\u20130x0A23: 0x234, 0x5E6, 0x329, 0x329\n#_048F36: db $E6, $E6, $E6, $30 : db $22, $25 ; 0x0A24\u20130x0A27: 0x2E6, 0x2E6, 0x5E6, 0x230\n#_048F3C: db $ED, $FE, $EC, $E6 : db $22, $22 ; 0x0A28\u20130x0A2B: 0x2ED, 0x2FE, 0x2EC, 0x2E6\n#_048F42: db $3B, $E6, $E6, $3A : db $52, $25 ; 0x0A2C\u20130x0A2F: 0x23B, 0x5E6, 0x5E6, 0x23A\n#_048F48: db $E6, $3A, $FE, $2C : db $25, $25 ; 0x0A30\u20130x0A33: 0x5E6, 0x23A, 0x5FE, 0x22C\n#_048F4E: db $E6, $C9, $C9, $3B : db $20, $05 ; 0x0A34\u20130x0A37: 0x0E6, 0x2C9, 0x5C9, 0x03B\n#_048F54: db $EE, $42, $3A, $44 : db $25, $55 ; 0x0A38\u20130x0A3B: 0x5EE, 0x242, 0x53A, 0x544\n#_048F5A: db $46, $EC, $3A, $47 : db $52, $55 ; 0x0A3C\u20130x0A3F: 0x246, 0x5EC, 0x53A, 0x547\n#_048F60: db $28, $E6, $29, $3A : db $52, $35 ; 0x0A40\u20130x0A43: 0x228, 0x5E6, 0x529, 0x33A\n#_048F66: db $3A, $3A, $54, $4A : db $55, $55 ; 0x0A44\u20130x0A47: 0x53A, 0x53A, 0x554, 0x54A\n#_048F6C: db $FE, $3A, $FE, $58 : db $25, $25 ; 0x0A48\u20130x0A4B: 0x5FE, 0x23A, 0x5FE, 0x258\n#_048F72: db $29, $3B, $29, $3A : db $35, $35 ; 0x0A4C\u20130x0A4F: 0x529, 0x33B, 0x529, 0x33A\n#_048F78: db $60, $60, $28, $62 : db $55, $55 ; 0x0A50\u20130x0A53: 0x560, 0x560, 0x528, 0x562\n#_048F7E: db $FE, $FE, $E6, $3A : db $22, $25 ; 0x0A54\u20130x0A57: 0x2FE, 0x2FE, 0x5E6, 0x23A\n#_048F84: db $63, $66, $41, $3A : db $55, $55 ; 0x0A58\u20130x0A5B: 0x563, 0x566, 0x541, 0x53A\n#_048F8A: db $FE, $6A, $29, $70 : db $25, $35 ; 0x0A5C\u20130x0A5F: 0x5FE, 0x26A, 0x529, 0x370\n#_048F90: db $6D, $53, $E6, $71 : db $55, $25 ; 0x0A60\u20130x0A63: 0x56D, 0x553, 0x5E6, 0x271\n#_048F96: db $FE, $E6, $E6, $3A : db $22, $25 ; 0x0A64\u20130x0A67: 0x2FE, 0x2E6, 0x5E6, 0x23A\n#_048F9C: db $4F, $4F, $4F, $4F : db $55, $55 ; 0x0A68\u20130x0A6B: 0x54F, 0x54F, 0x54F, 0x54F\n#_048FA2: db $4F, $73, $2C, $3A : db $55, $55 ; 0x0A6C\u20130x0A6F: 0x54F, 0x573, 0x52C, 0x53A\n#_048FA8: db $3A, $E6, $3B, $3A : db $52, $55 ; 0x0A70\u20130x0A73: 0x23A, 0x5E6, 0x53B, 0x53A\n#_048FAE: db $EC, $4F, $4F, $51 : db $25, $55 ; 0x0A74\u20130x0A77: 0x5EC, 0x24F, 0x54F, 0x551\n#_048FB4: db $E6, $18, $19, $EC : db $23, $32 ; 0x0A78\u20130x0A7B: 0x3E6, 0x218, 0x219, 0x3EC\n#_048FBA: db $E6, $EC, $2A, $28 : db $22, $55 ; 0x0A7C\u20130x0A7F: 0x2E6, 0x2EC, 0x52A, 0x528\n#_048FC0: db $39, $AB, $1C, $5B : db $50, $21 ; 0x0A80\u20130x0A83: 0x039, 0x5AB, 0x11C, 0x25B\n#_048FC6: db $26, $C9, $C9, $41 : db $50, $05 ; 0x0A84\u20130x0A87: 0x026, 0x5C9, 0x5C9, 0x041\n#_048FCC: db $E6, $D1, $53, $34 : db $20, $15 ; 0x0A88\u20130x0A8B: 0x0E6, 0x2D1, 0x553, 0x134\n#_048FD2: db $7D, $87, $7E, $7F : db $53, $55 ; 0x0A8C\u20130x0A8F: 0x37D, 0x587, 0x57E, 0x57F\n#_048FD8: db $7F, $81, $82, $83 : db $55, $55 ; 0x0A90\u20130x0A93: 0x57F, 0x581, 0x582, 0x583\n#_048FDE: db $42, $E6, $FE, $8B : db $52, $25 ; 0x0A94\u20130x0A97: 0x242, 0x5E6, 0x5FE, 0x28B\n#_048FE4: db $84, $8C, $8E, $8D : db $55, $55 ; 0x0A98\u20130x0A9B: 0x584, 0x58C, 0x58E, 0x58D\n#_048FEA: db $8C, $8C, $8C, $EC : db $55, $52 ; 0x0A9C\u20130x0A9F: 0x58C, 0x58C, 0x28C, 0x5EC\n#_048FF0: db $E6, $39, $90, $91 : db $25, $55 ; 0x0AA0\u20130x0AA3: 0x5E6, 0x239, 0x590, 0x591\n#_048FF6: db $6D, $6D, $91, $91 : db $55, $55 ; 0x0AA4\u20130x0AA7: 0x56D, 0x56D, 0x591, 0x591\n#_048FFC: db $9B, $9D, $9F, $72 : db $55, $55 ; 0x0AA8\u20130x0AAB: 0x59B, 0x59D, 0x59F, 0x572\n#_049002: db $2A, $90, $6D, $6D : db $55, $55 ; 0x0AAC\u20130x0AAF: 0x52A, 0x590, 0x56D, 0x56D\n#_049008: db $A1, $A1, $6D, $6D : db $55, $55 ; 0x0AB0\u20130x0AB3: 0x5A1, 0x5A1, 0x56D, 0x56D\n#_04900E: db $84, $C4, $C4, $6D : db $50, $05 ; 0x0AB4\u20130x0AB7: 0x084, 0x5C4, 0x5C4, 0x06D\n#_049014: db $6D, $6D, $6D, $6D : db $55, $55 ; 0x0AB8\u20130x0ABB: 0x56D, 0x56D, 0x56D, 0x56D\n#_04901A: db $6D, $79, $C4, $2C : db $55, $05 ; 0x0ABC\u20130x0ABF: 0x56D, 0x579, 0x5C4, 0x02C\n#_049020: db $A4, $A5, $31, $A6 : db $55, $55 ; 0x0AC0\u20130x0AC3: 0x5A4, 0x5A5, 0x531, 0x5A6\n#_049026: db $6D, $6D, $A7, $C9 : db $55, $50 ; 0x0AC4\u20130x0AC7: 0x56D, 0x56D, 0x0A7, 0x5C9\n#_04902C: db $8B, $AA, $C9, $C9 : db $55, $00 ; 0x0AC8\u20130x0ACB: 0x58B, 0x5AA, 0x0C9, 0x0C9\n#_049032: db $33, $33, $C9, $C9 : db $55, $00 ; 0x0ACC\u20130x0ACF: 0x533, 0x533, 0x0C9, 0x0C9\n#_049038: db $32, $6D, $6D, $38 : db $55, $55 ; 0x0AD0\u20130x0AD3: 0x532, 0x56D, 0x56D, 0x538\n#_04903E: db $38, $6D, $FE, $E5 : db $55, $22 ; 0x0AD4\u20130x0AD7: 0x538, 0x56D, 0x2FE, 0x2E5\n#_049044: db $3A, $6D, $C4, $2A : db $55, $05 ; 0x0AD8\u20130x0ADB: 0x53A, 0x56D, 0x5C4, 0x02A\n#_04904A: db $3E, $C9, $C9, $43 : db $50, $05 ; 0x0ADC\u20130x0ADF: 0x03E, 0x5C9, 0x5C9, 0x043\n#_049050: db $43, $38, $C9, $38 : db $55, $05 ; 0x0AE0\u20130x0AE3: 0x543, 0x538, 0x5C9, 0x038\n#_049056: db $39, $2D, $2E, $31 : db $55, $55 ; 0x0AE4\u20130x0AE7: 0x539, 0x52D, 0x52E, 0x531\n#_04905C: db $3B, $3A, $3A, $3A : db $55, $55 ; 0x0AE8\u20130x0AEB: 0x53B, 0x53A, 0x53A, 0x53A\n#_049062: db $32, $28, $79, $2A : db $55, $55 ; 0x0AEC\u20130x0AEF: 0x532, 0x528, 0x579, 0x52A\n#_049068: db $E6, $37, $37, $39 : db $25, $55 ; 0x0AF0\u20130x0AF3: 0x5E6, 0x237, 0x537, 0x539\n#_04906E: db $34, $41, $33, $C4 : db $55, $50 ; 0x0AF4\u20130x0AF7: 0x534, 0x541, 0x033, 0x5C4\n#_049074: db $28, $29, $C9, $30 : db $55, $05 ; 0x0AF8\u20130x0AFB: 0x528, 0x529, 0x5C9, 0x030\n#_04907A: db $29, $E6, $38, $E6 : db $52, $52 ; 0x0AFC\u20130x0AFF: 0x229, 0x5E6, 0x238, 0x5E6\n#_049080: db $2A, $28, $2A, $F6 : db $55, $53 ; 0x0B00\u20130x0B03: 0x52A, 0x528, 0x32A, 0x5F6\n#_049086: db $36, $D2, $D2, $C9 : db $03, $33 ; 0x0B04\u20130x0B07: 0x336, 0x0D2, 0x3D2, 0x3C9\n#_04908C: db $D0, $CF, $D0, $AC : db $33, $35 ; 0x0B08\u20130x0B0B: 0x3D0, 0x3CF, 0x5D0, 0x3AC\n#_049092: db $AE, $AF, $EC, $B1 : db $55, $05 ; 0x0B0C\u20130x0B0F: 0x5AE, 0x5AF, 0x5EC, 0x0B1\n#_049098: db $B3, $B7, $ED, $F0 : db $55, $00 ; 0x0B10\u20130x0B13: 0x5B3, 0x5B7, 0x0ED, 0x0F0\n#_04909E: db $1E, $1F, $34, $27 : db $44, $04 ; 0x0B14\u20130x0B17: 0x41E, 0x41F, 0x434, 0x027\n#_0490A4: db $BD, $BF, $BE, $C2 : db $55, $55 ; 0x0B18\u20130x0B1B: 0x5BD, 0x5BF, 0x5BE, 0x5C2\n#_0490AA: db $FF, $C6, $C6, $C6 : db $03, $33 ; 0x0B1C\u20130x0B1F: 0x3FF, 0x0C6, 0x3C6, 0x3C6\n#_0490B0: db $C6, $34, $14, $34 : db $30, $40 ; 0x0B20\u20130x0B23: 0x0C6, 0x334, 0x014, 0x434\n#_0490B6: db $34, $D1, $36, $D0 : db $03, $03 ; 0x0B24\u20130x0B27: 0x334, 0x0D1, 0x336, 0x0D0\n#_0490BC: db $CB, $CC, $EB, $E9 : db $33, $33 ; 0x0B28\u20130x0B2B: 0x3CB, 0x3CC, 0x3EB, 0x3E9\n#_0490C2: db $E9, $E9, $C5, $36 : db $33, $50 ; 0x0B2C\u20130x0B2F: 0x3E9, 0x3E9, 0x0C5, 0x536\n#_0490C8: db $36, $EB, $9E, $9F : db $03, $00 ; 0x0B30\u20130x0B33: 0x336, 0x0EB, 0x09E, 0x09F\n#_0490CE: db $ED, $EE, $F0, $7F : db $00, $00 ; 0x0B34\u20130x0B37: 0x0ED, 0x0EE, 0x0F0, 0x07F\n#_0490D4: db $EA, $EB, $A9, $C6 : db $00, $00 ; 0x0B38\u20130x0B3B: 0x0EA, 0x0EB, 0x0A9, 0x0C6\n#_0490DA: db $34, $FC, $76, $F4 : db $40, $00 ; 0x0B3C\u20130x0B3F: 0x034, 0x4FC, 0x076, 0x0F4\n#_0490E0: db $F7, $B5, $26, $79 : db $00, $00 ; 0x0B40\u20130x0B43: 0x0F7, 0x0B5, 0x026, 0x079\n#_0490E6: db $34, $34, $34, $34 : db $00, $00 ; 0x0B44\u20130x0B47: 0x034, 0x034, 0x034, 0x034\n#_0490EC: db $95, $34, $34, $7C : db $00, $00 ; 0x0B48\u20130x0B4B: 0x095, 0x034, 0x034, 0x07C\n#_0490F2: db $F2, $66, $1A, $14 : db $01, $20 ; 0x0B4C\u20130x0B4F: 0x1F2, 0x066, 0x01A, 0x214\n#_0490F8: db $E9, $E9, $E9, $C6 : db $33, $30 ; 0x0B50\u20130x0B53: 0x3E9, 0x3E9, 0x0E9, 0x3C6\n#_0490FE: db $85, $85, $5B, $B6 : db $33, $10 ; 0x0B54\u20130x0B57: 0x385, 0x385, 0x05B, 0x1B6\n#_049104: db $26, $07, $78, $26 : db $00, $00 ; 0x0B58\u20130x0B5B: 0x026, 0x007, 0x078, 0x026\n#_04910A: db $B6, $78, $C6, $C6 : db $00, $00 ; 0x0B5C\u20130x0B5F: 0x0B6, 0x078, 0x0C6, 0x0C6\n#_049110: db $5B, $D2, $D2, $D2 : db $13, $33 ; 0x0B60\u20130x0B63: 0x35B, 0x1D2, 0x3D2, 0x3D2\n#_049116: db $CA, $C9, $CE, $F5 : db $33, $33 ; 0x0B64\u20130x0B67: 0x3CA, 0x3C9, 0x3CE, 0x3F5\n#_04911C: db $CA, $E7, $34, $34 : db $33, $33 ; 0x0B68\u20130x0B6B: 0x3CA, 0x3E7, 0x334, 0x334\n#_049122: db $CE, $36, $AD, $AE : db $30, $55 ; 0x0B6C\u20130x0B6F: 0x0CE, 0x336, 0x5AD, 0x5AE\n#_049128: db $B0, $F6, $CF, $D1 : db $53, $55 ; 0x0B70\u20130x0B73: 0x3B0, 0x5F6, 0x5CF, 0x5D1\n#_04912E: db $B5, $9D, $CE, $36 : db $52, $30 ; 0x0B74\u20130x0B77: 0x2B5, 0x59D, 0x0CE, 0x336\n#_049134: db $B9, $BA, $BC, $F6 : db $55, $53 ; 0x0B78\u20130x0B7B: 0x5B9, 0x5BA, 0x3BC, 0x5F6\n#_04913A: db $BE, $C0, $C1, $36 : db $55, $50 ; 0x0B7C\u20130x0B7F: 0x5BE, 0x5C0, 0x0C1, 0x536\n#_049140: db $FA, $FC, $FE, $F6 : db $00, $03 ; 0x0B80\u20130x0B83: 0x0FA, 0x0FC, 0x3FE, 0x0F6\n#_049146: db $36, $15, $36, $CE : db $04, $03 ; 0x0B84\u20130x0B87: 0x436, 0x015, 0x336, 0x0CE\n#_04914C: db $27, $CE, $27, $42 : db $13, $44 ; 0x0B88\u20130x0B8B: 0x327, 0x1CE, 0x427, 0x442\n#_049152: db $43, $0A, $CA, $C6 : db $41, $33 ; 0x0B8C\u20130x0B8F: 0x143, 0x40A, 0x3CA, 0x3C6\n#_049158: db $C6, $C6, $CA, $C6 : db $33, $33 ; 0x0B90\u20130x0B93: 0x3C6, 0x3C6, 0x3CA, 0x3C6\n#_04915E: db $C6, $C6, $CA, $CC : db $33, $33 ; 0x0B94\u20130x0B97: 0x3C6, 0x3C6, 0x3CA, 0x3CC\n#_049164: db $26, $CD, $CA, $26 : db $43, $34 ; 0x0B98\u20130x0B9B: 0x326, 0x4CD, 0x4CA, 0x326\n#_04916A: db $F2, $CE, $36, $AC : db $13, $05 ; 0x0B9C\u20130x0B9F: 0x3F2, 0x1CE, 0x536, 0x0AC\n#_049170: db $D3, $AF, $EC, $36 : db $55, $00 ; 0x0BA0\u20130x0BA3: 0x5D3, 0x5AF, 0x0EC, 0x036\n#_049176: db $CE, $7F, $CE, $26 : db $30, $31 ; 0x0BA4\u20130x0BA7: 0x0CE, 0x37F, 0x1CE, 0x326\n#_04917C: db $CE, $B1, $B3, $B4 : db $35, $55 ; 0x0BA8\u20130x0BAB: 0x5CE, 0x3B1, 0x5B3, 0x5B4\n#_049182: db $34, $E7, $CE, $76 : db $33, $30 ; 0x0BAC\u20130x0BAF: 0x334, 0x3E7, 0x0CE, 0x376\n#_049188: db $CA, $CE, $D7, $CE : db $33, $53 ; 0x0BB0\u20130x0BB3: 0x3CA, 0x3CE, 0x3D7, 0x5CE\n#_04918E: db $95, $CE, $BF, $C6 : db $03, $53 ; 0x0BB4\u20130x0BB7: 0x395, 0x0CE, 0x3BF, 0x5C6\n#_049194: db $B5, $26, $34, $E9 : db $00, $03 ; 0x0BB8\u20130x0BBB: 0x0B5, 0x026, 0x334, 0x0E9\n#_04919A: db $E9, $E9, $E9, $C4 : db $33, $35 ; 0x0BBC\u20130x0BBF: 0x3E9, 0x3E9, 0x5E9, 0x3C4\n#_0491A0: db $E2, $E4, $E6, $78 : db $55, $50 ; 0x0BC0\u20130x0BC3: 0x5E2, 0x5E4, 0x0E6, 0x578\n#_0491A6: db $34, $7C, $B6, $79 : db $01, $01 ; 0x0BC4\u20130x0BC7: 0x134, 0x07C, 0x1B6, 0x079\n#_0491AC: db $C4, $76, $94, $95 : db $00, $00 ; 0x0BC8\u20130x0BCB: 0x0C4, 0x076, 0x094, 0x095\n#_0491B2: db $E8, $EF, $C4, $34 : db $05, $00 ; 0x0BCC\u20130x0BCF: 0x5E8, 0x0EF, 0x0C4, 0x034\n#_0491B8: db $F4, $F6, $6C, $D8 : db $00, $13 ; 0x0BD0\u20130x0BD3: 0x0F4, 0x0F6, 0x36C, 0x1D8\n#_0491BE: db $A7, $34, $15, $22 : db $30, $44 ; 0x0BD4\u20130x0BD7: 0x0A7, 0x334, 0x415, 0x422\n#_0491C4: db $CA, $E3, $A2, $DF : db $00, $33 ; 0x0BD8\u20130x0BDB: 0x0CA, 0x0E3, 0x3A2, 0x3DF\n#_0491CA: db $76, $34, $F6, $08 : db $13, $51 ; 0x0BDC\u20130x0BDF: 0x376, 0x134, 0x1F6, 0x508\n#_0491D0: db $E3, $CD, $2D, $34 : db $02, $10 ; 0x0BE0\u20130x0BE3: 0x2E3, 0x0CD, 0x02D, 0x134\n#_0491D6: db $76, $F2, $DF, $C9 : db $03, $00 ; 0x0BE4\u20130x0BE7: 0x376, 0x0F2, 0x0DF, 0x0C9\n#_0491DC: db $CD, $A5, $95, $34 : db $23, $03 ; 0x0BE8\u20130x0BEB: 0x3CD, 0x2A5, 0x395, 0x034\n#_0491E2: db $9E, $FF, $E3, $34 : db $01, $30 ; 0x0BEC\u20130x0BEF: 0x19E, 0x0FF, 0x0E3, 0x334\n#_0491E8: db $9E, $9F, $A3, $A5 : db $00, $01 ; 0x0BF0\u20130x0BF3: 0x09E, 0x09F, 0x1A3, 0x0A5\n#_0491EE: db $A4, $34, $C6, $A4 : db $00, $30 ; 0x0BF4\u20130x0BF7: 0x0A4, 0x034, 0x0C6, 0x3A4\n#_0491F4: db $A5, $A6, $34, $35 : db $00, $00 ; 0x0BF8\u20130x0BFB: 0x0A5, 0x0A6, 0x034, 0x035\n#_0491FA: db $34, $34, $34, $C9 : db $00, $05 ; 0x0BFC\u20130x0BFF: 0x034, 0x034, 0x534, 0x0C9\n#_049200: db $9D, $34, $34, $B6 : db $23, $00 ; 0x0C00\u20130x0C03: 0x39D, 0x234, 0x034, 0x0B6\n#_049206: db $78, $79, $9D, $78 : db $00, $20 ; 0x0C04\u20130x0C07: 0x078, 0x079, 0x09D, 0x278\n#_04920C: db $26, $B6, $0A, $07 : db $00, $10 ; 0x0C08\u20130x0C0B: 0x026, 0x0B6, 0x00A, 0x107\n#_049212: db $78, $77, $78, $26 : db $00, $00 ; 0x0C0C\u20130x0C0F: 0x078, 0x077, 0x078, 0x026\n#_049218: db $B6, $34, $34, $34 : db $00, $00 ; 0x0C10\u20130x0C13: 0x0B6, 0x034, 0x034, 0x034\n#_04921E: db $B4, $F9, $FB, $FC : db $45, $55 ; 0x0C14\u20130x0C17: 0x5B4, 0x4F9, 0x5FB, 0x5FC\n#_049224: db $6E, $70, $70, $70 : db $44, $44 ; 0x0C18\u20130x0C1B: 0x46E, 0x470, 0x470, 0x470\n#_04922A: db $FF, $01, $34, $74 : db $56, $04 ; 0x0C1C\u20130x0C1F: 0x6FF, 0x501, 0x434, 0x074\n#_049230: db $57, $05, $6F, $06 : db $46, $46 ; 0x0C20\u20130x0C23: 0x657, 0x405, 0x66F, 0x406\n#_049236: db $08, $34, $54, $6B : db $60, $44 ; 0x0C24\u20130x0C27: 0x008, 0x634, 0x454, 0x46B\n#_04923C: db $9E, $9D, $AE, $D6 : db $44, $42 ; 0x0C28\u20130x0C2B: 0x49E, 0x49D, 0x2AE, 0x4D6\n#_049242: db $71, $5C, $C3, $76 : db $04, $41 ; 0x0C2C\u20130x0C2F: 0x471, 0x05C, 0x1C3, 0x476\n#_049248: db $A7, $34, $36, $34 : db $30, $00 ; 0x0C30\u20130x0C33: 0x0A7, 0x334, 0x036, 0x034\n#_04924E: db $34, $A7, $0D, $D5 : db $04, $62 ; 0x0C34\u20130x0C37: 0x434, 0x0A7, 0x20D, 0x6D5\n#_049254: db $76, $6C, $10, $10 : db $11, $66 ; 0x0C38\u20130x0C3B: 0x176, 0x16C, 0x610, 0x610\n#_04925A: db $CD, $25, $11, $13 : db $23, $66 ; 0x0C3C\u20130x0C3F: 0x3CD, 0x225, 0x611, 0x613\n#_049260: db $08, $36, $34, $7E : db $10, $03 ; 0x0C40\u20130x0C43: 0x008, 0x136, 0x334, 0x07E\n#_049266: db $7E, $B5, $26, $B6 : db $30, $00 ; 0x0C44\u20130x0C47: 0x07E, 0x3B5, 0x026, 0x0B6\n#_04926C: db $78, $B6, $78, $5A : db $00, $00 ; 0x0C48\u20130x0C4B: 0x078, 0x0B6, 0x078, 0x05A\n#_049272: db $F6, $35, $71, $F2 : db $40, $04 ; 0x0C4C\u20130x0C4F: 0x0F6, 0x435, 0x471, 0x0F2\n#_049278: db $AD, $FB, $8F, $B6 : db $45, $44 ; 0x0C50\u20130x0C53: 0x5AD, 0x4FB, 0x48F, 0x4B6\n#_04927E: db $CD, $01, $17, $6E : db $26, $64 ; 0x0C54\u20130x0C57: 0x6CD, 0x201, 0x417, 0x66E\n#_049284: db $70, $70, $1E, $1B : db $44, $16 ; 0x0C58\u20130x0C5B: 0x470, 0x470, 0x61E, 0x11B\n#_04928A: db $8F, $57, $35, $1E : db $44, $31 ; 0x0C5C\u20130x0C5F: 0x48F, 0x457, 0x135, 0x31E\n#_049290: db $90, $F2, $AD, $9F : db $24, $44 ; 0x0C60\u20130x0C63: 0x490, 0x2F2, 0x4AD, 0x49F\n#_049296: db $54, $6D, $34, $F2 : db $43, $04 ; 0x0C64\u20130x0C67: 0x354, 0x46D, 0x434, 0x0F2\n#_04929C: db $AD, $79, $61, $F0 : db $44, $40 ; 0x0C68\u20130x0C6B: 0x4AD, 0x479, 0x061, 0x4F0\n#_0492A2: db $E2, $1E, $0B, $AD : db $46, $14 ; 0x0C6C\u20130x0C6F: 0x6E2, 0x41E, 0x40B, 0x1AD\n#_0492A8: db $E2, $E2, $E2, $E2 : db $44, $44 ; 0x0C70\u20130x0C73: 0x4E2, 0x4E2, 0x4E2, 0x4E2\n#_0492AE: db $E2, $E2, $E2, $1E : db $44, $46 ; 0x0C74\u20130x0C77: 0x4E2, 0x4E2, 0x6E2, 0x41E\n#_0492B4: db $4F, $AD, $6C, $98 : db $14, $13 ; 0x0C78\u20130x0C7B: 0x44F, 0x1AD, 0x36C, 0x198\n#_0492BA: db $53, $AD, $D6, $20 : db $14, $26 ; 0x0C7C\u20130x0C7F: 0x453, 0x1AD, 0x6D6, 0x220\n#_0492C0: db $A1, $A3, $FF, $F0 : db $33, $11 ; 0x0C80\u20130x0C83: 0x3A1, 0x3A3, 0x1FF, 0x1F0\n#_0492C6: db $9F, $9F, $36, $21 : db $00, $06 ; 0x0C84\u20130x0C87: 0x09F, 0x09F, 0x636, 0x021\n#_0492CC: db $26, $B6, $78, $79 : db $00, $00 ; 0x0C88\u20130x0C8B: 0x026, 0x0B6, 0x078, 0x079\n#_0492D2: db $36, $A9, $36, $36 : db $00, $00 ; 0x0C8C\u20130x0C8F: 0x036, 0x0A9, 0x036, 0x036\n#_0492D8: db $54, $34, $AD, $AB : db $20, $00 ; 0x0C90\u20130x0C93: 0x054, 0x234, 0x0AD, 0x0AB\n#_0492DE: db $A9, $E6, $E6, $87 : db $02, $23 ; 0x0C94\u20130x0C97: 0x2A9, 0x0E6, 0x3E6, 0x287\n#_0492E4: db $87, $E6, $A6, $3B : db $32, $55 ; 0x0C98\u20130x0C9B: 0x287, 0x3E6, 0x5A6, 0x53B\n#_0492EA: db $32, $2A, $E6, $3A : db $55, $25 ; 0x0C9C\u20130x0C9F: 0x532, 0x52A, 0x5E6, 0x23A\n#_0492F0: db $E6, $E6, $2A, $28 : db $22, $55 ; 0x0CA0\u20130x0CA3: 0x2E6, 0x2E6, 0x52A, 0x528\n#_0492F6: db $2A, $3B, $A8, $35 : db $55, $55 ; 0x0CA4\u20130x0CA7: 0x52A, 0x53B, 0x5A8, 0x535\n#_0492FC: db $32, $A6, $35, $32 : db $55, $55 ; 0x0CA8\u20130x0CAB: 0x532, 0x5A6, 0x535, 0x532\n#_049302: db $E6, $32, $29, $2D : db $25, $35 ; 0x0CAC\u20130x0CAF: 0x5E6, 0x232, 0x529, 0x32D\n#_049308: db $2E, $2F, $2F, $2D : db $55, $55 ; 0x0CB0\u20130x0CB3: 0x52E, 0x52F, 0x52F, 0x52D\n#_04930E: db $2C, $F4, $2F, $2F : db $52, $55 ; 0x0CB4\u20130x0CB7: 0x22C, 0x5F4, 0x52F, 0x52F\n#_049314: db $3D, $33, $33, $DC : db $55, $50 ; 0x0CB8\u20130x0CBB: 0x53D, 0x533, 0x033, 0x5DC\n#_04931A: db $33, $87, $E6, $3C : db $53, $25 ; 0x0CBC\u20130x0CBF: 0x333, 0x587, 0x5E6, 0x23C\n#_049320: db $27, $33, $36, $E6 : db $55, $52 ; 0x0CC0\u20130x0CC3: 0x527, 0x533, 0x236, 0x5E6\n#_049326: db $E6, $3A, $24, $25 : db $25, $66 ; 0x0CC4\u20130x0CC7: 0x5E6, 0x23A, 0x624, 0x625\n#_04932C: db $27, $29, $2A, $CE : db $66, $60 ; 0x0CC8\u20130x0CCB: 0x627, 0x629, 0x02A, 0x6CE\n#_049332: db $E6, $2A, $CC, $31 : db $25, $06 ; 0x0CCC\u20130x0CCF: 0x5E6, 0x22A, 0x6CC, 0x031\n#_049338: db $33, $35, $36, $2A : db $66, $65 ; 0x0CD0\u20130x0CD3: 0x633, 0x635, 0x536, 0x62A\n#_04933E: db $3E, $25, $27, $29 : db $66, $66 ; 0x0CD4\u20130x0CD7: 0x63E, 0x625, 0x627, 0x629\n#_049344: db $2A, $CE, $F4, $F3 : db $60, $22 ; 0x0CD8\u20130x0CDB: 0x02A, 0x6CE, 0x2F4, 0x2F3\n#_04934A: db $2E, $F4, $3D, $ED : db $52, $51 ; 0x0CDC\u20130x0CDF: 0x22E, 0x5F4, 0x13D, 0x5ED\n#_049350: db $36, $DB, $E3, $85 : db $60, $01 ; 0x0CE0\u20130x0CE3: 0x036, 0x6DB, 0x1E3, 0x085\n#_049356: db $E3, $ED, $6A, $34 : db $01, $10 ; 0x0CE4\u20130x0CE7: 0x1E3, 0x0ED, 0x06A, 0x134\n#_04935C: db $35, $34, $35, $34 : db $00, $00 ; 0x0CE8\u20130x0CEB: 0x035, 0x034, 0x035, 0x034\n#_049362: db $C2, $18, $34, $34 : db $12, $02 ; 0x0CEC\u20130x0CEF: 0x2C2, 0x118, 0x234, 0x034\n#_049368: db $06, $66, $B1, $6A : db $11, $21 ; 0x0CF0\u20130x0CF3: 0x106, 0x166, 0x1B1, 0x26A\n#_04936E: db $85, $C6, $AB, $2A : db $30, $05 ; 0x0CF4\u20130x0CF7: 0x085, 0x3C6, 0x5AB, 0x02A\n#_049374: db $39, $3A, $C9, $C9 : db $55, $00 ; 0x0CF8\u20130x0CFB: 0x539, 0x53A, 0x0C9, 0x0C9\n#_04937A: db $33, $E6, $26, $34 : db $52, $55 ; 0x0CFC\u20130x0CFF: 0x233, 0x5E6, 0x526, 0x534\n#_049380: db $38, $E6, $26, $41 : db $52, $55 ; 0x0D00\u20130x0D03: 0x238, 0x5E6, 0x526, 0x541\n#_049386: db $6A, $34, $CE, $E6 : db $10, $02 ; 0x0D04\u20130x0D07: 0x06A, 0x134, 0x2CE, 0x0E6\n#_04938C: db $3A, $FE, $E6, $29 : db $52, $23 ; 0x0D08\u20130x0D0B: 0x23A, 0x5FE, 0x3E6, 0x229\n#_049392: db $2B, $2E, $6A, $34 : db $55, $10 ; 0x0D0C\u20130x0D0F: 0x52B, 0x52E, 0x06A, 0x134\n#_049398: db $CE, $E6, $2A, $86 : db $02, $51 ; 0x0D10\u20130x0D13: 0x2CE, 0x0E6, 0x12A, 0x586\n#_04939E: db $CE, $5B, $C9, $42 : db $01, $06 ; 0x0D14\u20130x0D17: 0x1CE, 0x05B, 0x6C9, 0x042\n#_0493A4: db $34, $68, $5B, $41 : db $03, $16 ; 0x0D18\u20130x0D1B: 0x334, 0x068, 0x65B, 0x141\n#_0493AA: db $34, $6C, $72, $CE : db $03, $30 ; 0x0D1C\u20130x0D1F: 0x334, 0x06C, 0x072, 0x3CE\n#_0493B0: db $24, $41, $34, $49 : db $66, $06 ; 0x0D20\u20130x0D23: 0x624, 0x641, 0x634, 0x049\n#_0493B6: db $4B, $4A, $4C, $79 : db $66, $63 ; 0x0D24\u20130x0D27: 0x64B, 0x64A, 0x34C, 0x679\n#_0493BC: db $95, $34, $65, $52 : db $00, $36 ; 0x0D28\u20130x0D2B: 0x095, 0x034, 0x665, 0x352\n#_0493C2: db $54, $55, $E8, $CE : db $66, $00 ; 0x0D2C\u20130x0D2F: 0x654, 0x655, 0x0E8, 0x0CE\n#_0493C8: db $41, $68, $6F, $71 : db $63, $33 ; 0x0D30\u20130x0D33: 0x341, 0x668, 0x36F, 0x371\n#_0493CE: db $72, $34, $CE, $77 : db $30, $05 ; 0x0D34\u20130x0D37: 0x072, 0x334, 0x5CE, 0x077\n#_0493D4: db $78, $78, $41, $9A : db $55, $60 ; 0x0D38\u20130x0D3B: 0x578, 0x578, 0x041, 0x69A\n#_0493DA: db $49, $4B, $2C, $F4 : db $66, $52 ; 0x0D3C\u20130x0D3F: 0x649, 0x64B, 0x22C, 0x5F4\n#_0493E0: db $2D, $30, $2E, $2E : db $55, $55 ; 0x0D40\u20130x0D43: 0x52D, 0x530, 0x52E, 0x52E\n#_0493E6: db $34, $34, $65, $56 : db $00, $66 ; 0x0D44\u20130x0D47: 0x034, 0x034, 0x665, 0x656\n#_0493EC: db $34, $E3, $E3, $C2 : db $00, $01 ; 0x0D48\u20130x0D4B: 0x034, 0x0E3, 0x1E3, 0x0C2\n#_0493F2: db $C2, $34, $0F, $C2 : db $10, $21 ; 0x0D4C\u20130x0D4F: 0x0C2, 0x134, 0x10F, 0x2C2\n#_0493F8: db $05, $65, $65, $C6 : db $11, $10 ; 0x0D50\u20130x0D53: 0x105, 0x165, 0x065, 0x1C6\n#_0493FE: db $C6, $6A, $FF, $69 : db $01, $16 ; 0x0D54\u20130x0D57: 0x1C6, 0x06A, 0x6FF, 0x169\n#_049404: db $E6, $87, $66, $ED : db $20, $12 ; 0x0D58\u20130x0D5B: 0x0E6, 0x287, 0x266, 0x1ED\n#_04940A: db $5B, $B6, $5B, $34 : db $10, $10 ; 0x0D5C\u20130x0D5F: 0x05B, 0x1B6, 0x05B, 0x134\n#_049410: db $38, $9D, $0B, $0B : db $32, $11 ; 0x0D60\u20130x0D63: 0x238, 0x39D, 0x10B, 0x10B\n#_049416: db $D1, $75, $34, $0B : db $01, $01 ; 0x0D64\u20130x0D67: 0x1D1, 0x075, 0x134, 0x00B\n#_04941C: db $36, $38, $08, $0B : db $03, $11 ; 0x0D68\u20130x0D6B: 0x336, 0x038, 0x108, 0x10B\n#_049422: db $53, $6A, $36, $0A : db $16, $01 ; 0x0D6C\u20130x0D6F: 0x653, 0x16A, 0x136, 0x00A\n#_049428: db $34, $34, $34, $9D : db $00, $02 ; 0x0D70\u20130x0D73: 0x034, 0x034, 0x234, 0x09D\n#_04942E: db $0B, $35, $6A, $53 : db $13, $61 ; 0x0D74\u20130x0D77: 0x30B, 0x135, 0x16A, 0x653\n#_049434: db $6D, $34, $0B, $36 : db $40, $10 ; 0x0D78\u20130x0D7B: 0x06D, 0x434, 0x00B, 0x136\n#_04943A: db $0A, $AD, $34, $36 : db $13, $00 ; 0x0D7C\u20130x0D7F: 0x30A, 0x1AD, 0x034, 0x036\n#_049440: db $F4, $38, $38, $08 : db $23, $31 ; 0x0D80\u20130x0D83: 0x3F4, 0x238, 0x138, 0x308\n#_049446: db $0B, $0B, $AD, $0A : db $11, $31 ; 0x0D84\u20130x0D87: 0x10B, 0x10B, 0x1AD, 0x30A\n#_04944C: db $36, $36, $34, $99 : db $00, $00 ; 0x0D88\u20130x0D8B: 0x036, 0x036, 0x034, 0x099\n#_049452: db $F6, $F6, $A7, $34 : db $55, $30 ; 0x0D8C\u20130x0D8F: 0x5F6, 0x5F6, 0x0A7, 0x334\n#_049458: db $35, $36, $6E, $FE : db $30, $63 ; 0x0D90\u20130x0D93: 0x035, 0x336, 0x36E, 0x6FE\n#_04945E: db $FE, $35, $36, $03 : db $30, $04 ; 0x0D94\u20130x0D97: 0x0FE, 0x335, 0x436, 0x003\n#_049464: db $04, $67, $EE, $A7 : db $41, $13 ; 0x0D98\u20130x0D9B: 0x104, 0x467, 0x3EE, 0x1A7\n#_04946A: db $36, $FA, $FC, $C6 : db $00, $00 ; 0x0D9C\u20130x0D9F: 0x036, 0x0FA, 0x0FC, 0x0C6\n#_049470: db $1C, $76, $6C, $6C : db $21, $11 ; 0x0DA0\u20130x0DA3: 0x11C, 0x276, 0x16C, 0x16C\n#_049476: db $6C, $6C, $C6, $C2 : db $11, $01 ; 0x0DA4\u20130x0DA7: 0x16C, 0x16C, 0x1C6, 0x0C2\n#_04947C: db $C2, $65, $C6, $AA : db $11, $00 ; 0x0DA8\u20130x0DAB: 0x1C2, 0x165, 0x0C6, 0x0AA\n#_049482: db $9E, $79, $34, $A5 : db $01, $00 ; 0x0DAC\u20130x0DAF: 0x19E, 0x079, 0x034, 0x0A5\n#_049488: db $AC, $6D, $D7, $36 : db $01, $00 ; 0x0DB0\u20130x0DB3: 0x1AC, 0x06D, 0x0D7, 0x036\n#_04948E: db $F8, $F9, $FB, $34 : db $33, $30 ; 0x0DB4\u20130x0DB7: 0x3F8, 0x3F9, 0x0FB, 0x334\n#_049494: db $E7, $75, $AF, $C9 : db $12, $20 ; 0x0DB8\u20130x0DBB: 0x2E7, 0x175, 0x0AF, 0x2C9\n#_04949A: db $C9, $36, $0B, $74 : db $00, $46 ; 0x0DBC\u20130x0DBF: 0x0C9, 0x036, 0x60B, 0x474\n#_0494A0: db $0E, $53, $A9, $7C : db $41, $01 ; 0x0DC0\u20130x0DC3: 0x10E, 0x453, 0x1A9, 0x07C\n#_0494A6: db $14, $16, $36, $34 : db $00, $00 ; 0x0DC4\u20130x0DC7: 0x014, 0x016, 0x036, 0x034\n#_0494AC: db $15, $6C, $AD, $36 : db $41, $00 ; 0x0DC8\u20130x0DCB: 0x115, 0x46C, 0x0AD, 0x036\n#_0494B2: db $C9, $84, $C9, $15 : db $01, $00 ; 0x0DCC\u20130x0DCF: 0x1C9, 0x084, 0x0C9, 0x015\n#_0494B8: db $71, $7D, $7E, $7E : db $03, $33 ; 0x0DD0\u20130x0DD3: 0x371, 0x07D, 0x37E, 0x37E\n#_0494BE: db $AE, $F7, $F9, $FA : db $23, $33 ; 0x0DD4\u20130x0DD7: 0x3AE, 0x2F7, 0x3F9, 0x3FA\n#_0494C4: db $EC, $33, $F0, $FE : db $03, $03 ; 0x0DD8\u20130x0DDB: 0x3EC, 0x033, 0x3F0, 0x0FE\n#_0494CA: db $FE, $00, $33, $36 : db $34, $30 ; 0x0DDC\u20130x0DDF: 0x4FE, 0x300, 0x033, 0x336\n#_0494D0: db $FF, $04, $04, $06 : db $04, $44 ; 0x0DE0\u20130x0DE3: 0x4FF, 0x004, 0x404, 0x406\n#_0494D6: db $34, $34, $E7, $6C : db $00, $11 ; 0x0DE4\u20130x0DE7: 0x034, 0x034, 0x1E7, 0x16C\n#_0494DC: db $80, $6C, $35, $FC : db $11, $40 ; 0x0DE8\u20130x0DEB: 0x180, 0x16C, 0x035, 0x4FC\n#_0494E2: db $FE, $E7, $76, $34 : db $01, $20 ; 0x0DEC\u20130x0DEF: 0x1FE, 0x0E7, 0x076, 0x234\n#_0494E8: db $18, $65, $A5, $A5 : db $21, $11 ; 0x0DF0\u20130x0DF3: 0x118, 0x265, 0x1A5, 0x1A5\n#_0494EE: db $13, $AA, $A4, $CF : db $20, $00 ; 0x0DF4\u20130x0DF7: 0x013, 0x2AA, 0x0A4, 0x0CF\n#_0494F4: db $34, $34, $20, $78 : db $00, $56 ; 0x0DF8\u20130x0DFB: 0x034, 0x034, 0x620, 0x578\n#_0494FA: db $7E, $7F, $AD, $C6 : db $66, $00 ; 0x0DFC\u20130x0DFF: 0x67E, 0x67F, 0x0AD, 0x0C6\n#_049500: db $80, $34, $81, $20 : db $60, $65 ; 0x0E00\u20130x0E03: 0x080, 0x634, 0x581, 0x620\n#_049506: db $88, $8A, $84, $FD : db $66, $61 ; 0x0E04\u20130x0E07: 0x688, 0x68A, 0x184, 0x6FD\n#_04950C: db $16, $FF, $9F, $9F : db $21, $00 ; 0x0E08\u20130x0E0B: 0x116, 0x2FF, 0x09F, 0x09F\n#_049512: db $9F, $9F, $9F, $CF : db $00, $00 ; 0x0E0C\u20130x0E0F: 0x09F, 0x09F, 0x09F, 0x0CF\n#_049518: db $41, $88, $8D, $34 : db $16, $60 ; 0x0E10\u20130x0E13: 0x641, 0x188, 0x08D, 0x634\n#_04951E: db $7C, $7B, $34, $7C : db $66, $06 ; 0x0E14\u20130x0E17: 0x67C, 0x67B, 0x634, 0x07C\n#_049524: db $34, $87, $86, $95 : db $06, $66 ; 0x0E18\u20130x0E1B: 0x634, 0x087, 0x686, 0x695\n#_04952A: db $97, $99, $95, $56 : db $66, $61 ; 0x0E1C\u20130x0E1F: 0x697, 0x699, 0x195, 0x656\n#_049530: db $95, $97, $99, $95 : db $66, $66 ; 0x0E20\u20130x0E23: 0x695, 0x697, 0x699, 0x695\n#_049536: db $CD, $D8, $95, $95 : db $22, $66 ; 0x0E24\u20130x0E27: 0x2CD, 0x2D8, 0x695, 0x695\n#_04953C: db $9E, $CD, $95, $CD : db $32, $62 ; 0x0E28\u20130x0E2B: 0x29E, 0x3CD, 0x295, 0x6CD\n#_049542: db $C7, $A3, $A3, $27 : db $26, $63 ; 0x0E2C\u20130x0E2F: 0x6C7, 0x2A3, 0x3A3, 0x627\n#_049548: db $F8, $F6, $CD, $25 : db $22, $21 ; 0x0E30\u20130x0E33: 0x2F8, 0x2F6, 0x1CD, 0x225\n#_04954E: db $9F, $9F, $26, $1D : db $00, $11 ; 0x0E34\u20130x0E37: 0x09F, 0x09F, 0x126, 0x11D\n#_049554: db $C4, $C6, $A6, $19 : db $10, $02 ; 0x0E38\u20130x0E3B: 0x0C4, 0x1C6, 0x2A6, 0x019\n#_04955A: db $34, $C4, $FF, $04 : db $01, $11 ; 0x0E3C\u20130x0E3F: 0x134, 0x0C4, 0x1FF, 0x104\n#_049560: db $AA, $AB, $AD, $C6 : db $66, $60 ; 0x0E40\u20130x0E43: 0x6AA, 0x6AB, 0x0AD, 0x6C6\n#_049566: db $71, $C4, $65, $C6 : db $11, $10 ; 0x0E44\u20130x0E47: 0x171, 0x1C4, 0x065, 0x1C6\n#_04956C: db $85, $57, $AE, $7E : db $32, $61 ; 0x0E48\u20130x0E4B: 0x285, 0x357, 0x1AE, 0x67E\n#_049572: db $D1, $D1, $AF, $53 : db $00, $61 ; 0x0E4C\u20130x0E4F: 0x0D1, 0x0D1, 0x1AF, 0x653\n#_049578: db $AE, $AA, $7E, $C9 : db $60, $10 ; 0x0E50\u20130x0E53: 0x0AE, 0x6AA, 0x07E, 0x1C9\n#_04957E: db $DF, $B6, $C9, $53 : db $06, $01 ; 0x0E54\u20130x0E57: 0x6DF, 0x0B6, 0x1C9, 0x053\n#_049584: db $CC, $34, $0F, $9E : db $00, $20 ; 0x0E58\u20130x0E5B: 0x0CC, 0x034, 0x00F, 0x29E\n#_04958A: db $AE, $4C, $53, $E5 : db $63, $11 ; 0x0E5C\u20130x0E5F: 0x3AE, 0x64C, 0x153, 0x1E5\n#_049590: db $B7, $1D, $5C, $5E : db $62, $11 ; 0x0E60\u20130x0E63: 0x2B7, 0x61D, 0x15C, 0x15E\n#_049596: db $5F, $AE, $1C, $AE : db $16, $26 ; 0x0E64\u20130x0E67: 0x65F, 0x1AE, 0x61C, 0x2AE\n#_04959C: db $D5, $BC, $BE, $AE : db $06, $66 ; 0x0E68\u20130x0E6B: 0x6D5, 0x0BC, 0x6BE, 0x6AE\n#_0495A2: db $7C, $B8, $C0, $C2 : db $16, $66 ; 0x0E6C\u20130x0E6F: 0x67C, 0x1B8, 0x6C0, 0x6C2\n#_0495A8: db $67, $D5, $CC, $CE : db $10, $66 ; 0x0E70\u20130x0E73: 0x067, 0x1D5, 0x6CC, 0x6CE\n#_0495AE: db $AE, $C5, $D0, $D2 : db $60, $66 ; 0x0E74\u20130x0E77: 0x0AE, 0x6C5, 0x6D0, 0x6D2\n#_0495B4: db $20, $D3, $C7, $DE : db $26, $06 ; 0x0E78\u20130x0E7B: 0x620, 0x2D3, 0x6C7, 0x0DE\n#_0495BA: db $53, $AE, $D1, $C8 : db $16, $00 ; 0x0E7C\u20130x0E7F: 0x653, 0x1AE, 0x0D1, 0x0C8\n#_0495C0: db $DE, $C9, $B4, $E0 : db $60, $66 ; 0x0E80\u20130x0E83: 0x0DE, 0x6C9, 0x6B4, 0x6E0\n#_0495C6: db $C9, $53, $E3, $E5 : db $01, $66 ; 0x0E84\u20130x0E87: 0x1C9, 0x053, 0x6E3, 0x6E5\n#_0495CC: db $AE, $AE, $DE, $87 : db $66, $63 ; 0x0E88\u20130x0E8B: 0x6AE, 0x6AE, 0x3DE, 0x687\n#_0495D2: db $53, $E6, $E8, $E9 : db $16, $66 ; 0x0E8C\u20130x0E8F: 0x653, 0x1E6, 0x6E8, 0x6E9\n#_0495D8: db $E7, $E7, $EC, $EE : db $66, $66 ; 0x0E90\u20130x0E93: 0x6E7, 0x6E7, 0x6EC, 0x6EE\n#_0495DE: db $E7, $E7, $EF, $AE : db $66, $66 ; 0x0E94\u20130x0E97: 0x6E7, 0x6E7, 0x6EF, 0x6AE\n#_0495E4: db $E8, $E7, $FC, $FC : db $66, $66 ; 0x0E98\u20130x0E9B: 0x6E8, 0x6E7, 0x6FC, 0x6FC\n#_0495EA: db $FE, $00, $01, $E7 : db $67, $76 ; 0x0E9C\u20130x0E9F: 0x7FE, 0x600, 0x601, 0x7E7\n#_0495F0: db $FA, $D1, $E8, $29 : db $60, $63 ; 0x0EA0\u20130x0EA3: 0x0FA, 0x6D1, 0x3E8, 0x629\n#_0495F6: db $E7, $03, $04, $05 : db $67, $77 ; 0x0EA4\u20130x0EA7: 0x7E7, 0x603, 0x704, 0x705\n#_0495FC: db $71, $1F, $07, $29 : db $12, $73 ; 0x0EA8\u20130x0EAB: 0x271, 0x11F, 0x307, 0x729\n#_049602: db $06, $04, $8A, $AE : db $77, $36 ; 0x0EAC\u20130x0EAF: 0x706, 0x704, 0x68A, 0x3AE\n#_049608: db $71, $1F, $0C, $04 : db $12, $77 ; 0x0EB0\u20130x0EB3: 0x271, 0x11F, 0x70C, 0x704\n#_04960E: db $AE, $40, $20, $AE : db $66, $26 ; 0x0EB4\u20130x0EB7: 0x6AE, 0x640, 0x620, 0x2AE\n#_049614: db $AB, $40, $AE, $20 : db $06, $62 ; 0x0EB8\u20130x0EBB: 0x6AB, 0x040, 0x2AE, 0x620\n#_04961A: db $05, $E7, $16, $16 : db $76, $77 ; 0x0EBC\u20130x0EBF: 0x605, 0x7E7, 0x716, 0x716\n#_049620: db $18, $19, $1A, $AE : db $77, $76 ; 0x0EC0\u20130x0EC3: 0x718, 0x719, 0x61A, 0x7AE\n#_049626: db $D0, $7E, $D0, $FF : db $01, $01 ; 0x0EC4\u20130x0EC7: 0x1D0, 0x07E, 0x1D0, 0x0FF\n#_04962C: db $DB, $AE, $EE, $EA : db $06, $16 ; 0x0EC8\u20130x0ECB: 0x6DB, 0x0AE, 0x6EE, 0x1EA\n#_049632: db $AE, $34, $D5, $EA : db $60, $06 ; 0x0ECC\u20130x0ECF: 0x0AE, 0x634, 0x6D5, 0x0EA\n#_049638: db $C5, $AE, $AE, $E7 : db $06, $66 ; 0x0ED0\u20130x0ED3: 0x6C5, 0x0AE, 0x6AE, 0x6E7\n#_04963E: db $C5, $EA, $65, $65 : db $01, $11 ; 0x0ED4\u20130x0ED7: 0x1C5, 0x0EA, 0x165, 0x165\n#_049644: db $07, $D1, $40, $1D : db $10, $57 ; 0x0ED8\u20130x0EDB: 0x007, 0x1D1, 0x740, 0x51D\n#_04964A: db $1E, $87, $E7, $E7 : db $73, $66 ; 0x0EDC\u20130x0EDF: 0x31E, 0x787, 0x6E7, 0x6E7\n#_049650: db $61, $C7, $D0, $D1 : db $10, $00 ; 0x0EE0\u20130x0EE3: 0x061, 0x1C7, 0x0D0, 0x0D1\n#_049656: db $D1, $D1, $AE, $25 : db $00, $67 ; 0x0EE4\u20130x0EE7: 0x0D1, 0x0D1, 0x7AE, 0x625\n#_04965C: db $26, $EA, $D0, $E0 : db $76, $06 ; 0x0EE8\u20130x0EEB: 0x626, 0x7EA, 0x6D0, 0x0E0\n#_049662: db $DD, $DC, $29, $E7 : db $00, $76 ; 0x0EEC\u20130x0EEF: 0x0DD, 0x0DC, 0x629, 0x7E7\n#_049668: db $EA, $88, $2A, $E7 : db $63, $76 ; 0x0EF0\u20130x0EF3: 0x3EA, 0x688, 0x62A, 0x7E7\n#_04966E: db $2D, $EA, $C4, $E7 : db $76, $06 ; 0x0EF4\u20130x0EF7: 0x62D, 0x7EA, 0x6C4, 0x0E7\n#_049674: db $D2, $E7, $E7, $D3 : db $06, $60 ; 0x0EF8\u20130x0EFB: 0x6D2, 0x0E7, 0x0E7, 0x6D3\n#_04967A: db $1C, $FE, $E7, $F1 : db $72, $60 ; 0x0EFC\u20130x0EFF: 0x21C, 0x7FE, 0x0E7, 0x6F1\n#_049680: db $34, $D5, $D5, $1A : db $01, $12 ; 0x0F00\u20130x0F03: 0x134, 0x0D5, 0x2D5, 0x11A\n#_049686: db $AD, $34, $1A, $70 : db $00, $21 ; 0x0F04\u20130x0F07: 0x0AD, 0x034, 0x11A, 0x270\n#_04968C: db $79, $36, $10, $C6 : db $10, $20 ; 0x0F08\u20130x0F0B: 0x079, 0x136, 0x010, 0x2C6\n#_049692: db $FF, $9F, $9F, $FF : db $10, $01 ; 0x0F0C\u20130x0F0F: 0x0FF, 0x19F, 0x19F, 0x0FF\n#_049698: db $9F, $9E, $71, $58 : db $00, $11 ; 0x0F10\u20130x0F13: 0x09F, 0x09E, 0x171, 0x158\n#_04969E: db $60, $34, $FD, $A5 : db $10, $10 ; 0x0F14\u20130x0F17: 0x060, 0x134, 0x0FD, 0x1A5\n#_0496A4: db $A5, $A5, $C6, $7E : db $00, $01 ; 0x0F18\u20130x0F1B: 0x0A5, 0x0A5, 0x1C6, 0x07E\n#_0496AA: db $86, $40, $E1, $E1 : db $35, $22 ; 0x0F1C\u20130x0F1F: 0x586, 0x340, 0x2E1, 0x2E1\n#_0496B0: db $67, $34, $7E, $53 : db $10, $11 ; 0x0F20\u20130x0F23: 0x067, 0x134, 0x17E, 0x153\n#_0496B6: db $89, $2A, $E6, $0C : db $37, $23 ; 0x0F24\u20130x0F27: 0x789, 0x32A, 0x3E6, 0x20C\n#_0496BC: db $1A, $1C, $E6, $1F : db $22, $23 ; 0x0F28\u20130x0F2B: 0x21A, 0x21C, 0x3E6, 0x21F\n#_0496C2: db $1C, $1F, $C6, $1A : db $23, $03 ; 0x0F2C\u20130x0F2F: 0x31C, 0x21F, 0x3C6, 0x01A\n#_0496C8: db $E6, $30, $66, $07 : db $27, $11 ; 0x0F30\u20130x0F33: 0x7E6, 0x230, 0x166, 0x107\n#_0496CE: db $AD, $AD, $C6, $66 : db $66, $01 ; 0x0F34\u20130x0F37: 0x6AD, 0x6AD, 0x1C6, 0x066\n#_0496D4: db $58, $65, $65, $65 : db $11, $11 ; 0x0F38\u20130x0F3B: 0x158, 0x165, 0x165, 0x165\n#_0496DA: db $06, $66, $AC, $85 : db $11, $63 ; 0x0F3C\u20130x0F3F: 0x106, 0x166, 0x3AC, 0x685\n#_0496E0: db $66, $30, $C6, $D5 : db $17, $00 ; 0x0F40\u20130x0F43: 0x766, 0x130, 0x0C6, 0x0D5\n#_0496E6: db $5B, $85, $C6, $20 : db $13, $05 ; 0x0F44\u20130x0F47: 0x35B, 0x185, 0x5C6, 0x020\n#_0496EC: db $34, $E0, $CA, $DC : db $70, $00 ; 0x0F48\u20130x0F4B: 0x034, 0x7E0, 0x0CA, 0x0DC\n#_0496F2: db $CC, $DC, $A9, $0F : db $00, $02 ; 0x0F4C\u20130x0F4F: 0x0CC, 0x0DC, 0x2A9, 0x00F\n#_0496F8: db $AD, $F2, $34, $DB : db $00, $00 ; 0x0F50\u20130x0F53: 0x0AD, 0x0F2, 0x034, 0x0DB\n#_0496FE: db $C6, $34, $E1, $38 : db $00, $03 ; 0x0F54\u20130x0F57: 0x0C6, 0x034, 0x3E1, 0x038\n#_049704: db $71, $4F, $C9, $E7 : db $01, $01 ; 0x0F58\u20130x0F5B: 0x171, 0x04F, 0x1C9, 0x0E7\n#_04970A: db $6C, $81, $98, $AC : db $11, $36 ; 0x0F5C\u20130x0F5F: 0x16C, 0x181, 0x698, 0x3AC\n#_049710: db $6A, $3D, $3F, $41 : db $17, $77 ; 0x0F60\u20130x0F63: 0x76A, 0x13D, 0x73F, 0x741\n#_049716: db $34, $08, $53, $56 : db $01, $11 ; 0x0F64\u20130x0F67: 0x134, 0x008, 0x153, 0x156\n#_04971C: db $95, $D2, $20, $6A : db $32, $21 ; 0x0F68\u20130x0F6B: 0x295, 0x3D2, 0x120, 0x26A\n#_049722: db $48, $4A, $4B, $36 : db $77, $73 ; 0x0F6C\u20130x0F6F: 0x748, 0x74A, 0x34B, 0x736\n#_049728: db $56, $D1, $CD, $CD : db $12, $22 ; 0x0F70\u20130x0F73: 0x256, 0x1D1, 0x2CD, 0x2CD\n#_04972E: db $D6, $E4, $6A, $34 : db $22, $10 ; 0x0F74\u20130x0F77: 0x2D6, 0x2E4, 0x06A, 0x134\n#_049734: db $34, $CD, $D9, $CD : db $02, $22 ; 0x0F78\u20130x0F7B: 0x234, 0x0CD, 0x2D9, 0x2CD\n#_04973A: db $20, $66, $68, $F2 : db $21, $10 ; 0x0F7C\u20130x0F7F: 0x120, 0x266, 0x068, 0x1F2\n#_049740: db $C7, $EF, $58, $66 : db $22, $11 ; 0x0F80\u20130x0F83: 0x2C7, 0x2EF, 0x158, 0x166\n#_049746: db $F2, $EF, $04, $C2 : db $02, $33 ; 0x0F84\u20130x0F87: 0x2F2, 0x0EF, 0x304, 0x3C2\n#_04974C: db $E6, $E6, $06, $75 : db $22, $31 ; 0x0F88\u20130x0F8B: 0x2E6, 0x2E6, 0x106, 0x375\n#_049752: db $1C, $34, $CD, $C7 : db $20, $22 ; 0x0F8C\u20130x0F8F: 0x01C, 0x234, 0x2CD, 0x2C7\n#_049758: db $2D, $E6, $35, $EE : db $12, $51 ; 0x0F90\u20130x0F93: 0x22D, 0x1E6, 0x135, 0x5EE\n#_04975E: db $83, $34, $CD, $D5 : db $10, $22 ; 0x0F94\u20130x0F97: 0x083, 0x134, 0x2CD, 0x2D5\n#_049764: db $F1, $53, $20, $75 : db $21, $22 ; 0x0F98\u20130x0F9B: 0x1F1, 0x253, 0x220, 0x275\n#_04976A: db $5B, $50, $C9, $C7 : db $11, $02 ; 0x0F9C\u20130x0F9F: 0x15B, 0x150, 0x2C9, 0x0C7\n#_049770: db $D9, $5B, $34, $DF : db $21, $02 ; 0x0FA0\u20130x0FA3: 0x1D9, 0x25B, 0x234, 0x0DF\n#_049776: db $C7, $C7, $C7, $C7 : db $22, $22 ; 0x0FA4\u20130x0FA7: 0x2C7, 0x2C7, 0x2C7, 0x2C7\n#_04977C: db $D7, $71, $DC, $7F : db $20, $01 ; 0x0FA8\u20130x0FAB: 0x0D7, 0x271, 0x1DC, 0x07F\n#_049782: db $CC, $83, $20, $C7 : db $01, $50 ; 0x0FAC\u20130x0FAF: 0x1CC, 0x083, 0x020, 0x5C7\n#_049788: db $57, $D0, $CC, $CD : db $20, $02 ; 0x0FB0\u20130x0FB3: 0x057, 0x2D0, 0x2CC, 0x0CD\n#_04978E: db $71, $53, $D5, $C7 : db $01, $22 ; 0x0FB4\u20130x0FB7: 0x171, 0x053, 0x2D5, 0x2C7\n#_049794: db $C4, $DA, $EF, $D6 : db $02, $22 ; 0x0FB8\u20130x0FBB: 0x2C4, 0x0DA, 0x2EF, 0x2D6\n#_04979A: db $CA, $F6, $56, $4E : db $02, $17 ; 0x0FBC\u20130x0FBF: 0x2CA, 0x0F6, 0x756, 0x14E\n#_0497A0: db $CA, $E4, $CD, $CA : db $02, $20 ; 0x0FC0\u20130x0FC3: 0x2CA, 0x0E4, 0x0CD, 0x2CA\n#_0497A6: db $C4, $4F, $4F, $2D : db $07, $71 ; 0x0FC4\u20130x0FC7: 0x7C4, 0x04F, 0x14F, 0x72D\n#_0497AC: db $04, $06, $65, $66 : db $31, $11 ; 0x0FC8\u20130x0FCB: 0x104, 0x306, 0x165, 0x166\n#_0497B2: db $2D, $C6, $2F, $66 : db $10, $71 ; 0x0FCC\u20130x0FCF: 0x02D, 0x1C6, 0x12F, 0x766\n#_0497B8: db $E9, $AB, $DF, $C6 : db $10, $00 ; 0x0FD0\u20130x0FD3: 0x0E9, 0x1AB, 0x0DF, 0x0C6\n#_0497BE: db $5B, $C5, $03, $4C : db $10, $33 ; 0x0FD4\u20130x0FD7: 0x05B, 0x1C5, 0x303, 0x34C\n#_0497C4: db $C6, $CD, $37, $ED : db $02, $21 ; 0x0FD8\u20130x0FDB: 0x2C6, 0x0CD, 0x137, 0x2ED\n#_0497CA: db $CA, $C5, $CD, $AE : db $00, $26 ; 0x0FDC\u20130x0FDF: 0x0CA, 0x0C5, 0x6CD, 0x2AE\n#_0497D0: db $20, $E7, $58, $07 : db $26, $77 ; 0x0FE0\u20130x0FE3: 0x620, 0x2E7, 0x758, 0x707\n#_0497D6: db $E7, $8B, $7E, $40 : db $63, $15 ; 0x0FE4\u20130x0FE7: 0x3E7, 0x68B, 0x57E, 0x140\n#_0497DC: db $5A, $5D, $D0, $F4 : db $77, $02 ; 0x0FE8\u20130x0FEB: 0x75A, 0x75D, 0x2D0, 0x0F4\n#_0497E2: db $8B, $AE, $E7, $AE : db $36, $66 ; 0x0FEC\u20130x0FEF: 0x68B, 0x3AE, 0x6E7, 0x6AE\n#_0497E8: db $1C, $29, $5F, $29 : db $73, $73 ; 0x0FF0\u20130x0FF3: 0x31C, 0x729, 0x35F, 0x729\n#_0497EE: db $25, $29, $53, $7F : db $73, $11 ; 0x0FF4\u20130x0FF7: 0x325, 0x729, 0x153, 0x17F\n#_0497F4: db $1C, $EE, $1C, $34 : db $21, $22 ; 0x0FF8\u20130x0FFB: 0x11C, 0x2EE, 0x21C, 0x234\n#_0497FA: db $63, $E7, $64, $33 : db $76, $72 ; 0x0FFC\u20130x0FFF: 0x663, 0x7E7, 0x264, 0x733\n#_049800: db $33, $34, $64, $39 : db $22, $72 ; 0x1000\u20130x1003: 0x233, 0x234, 0x264, 0x739\n#_049806: db $34, $66, $9D, $9E : db $27, $55 ; 0x1004\u20130x1007: 0x734, 0x266, 0x59D, 0x59E\n#_04980C: db $AE, $66, $34, $34 : db $61, $02 ; 0x1008\u20130x100B: 0x1AE, 0x666, 0x234, 0x034\n#_049812: db $97, $97, $05, $07 : db $55, $11 ; 0x100C\u20130x100F: 0x597, 0x597, 0x105, 0x107\n#_049818: db $AE, $65, $65, $65 : db $61, $11 ; 0x1010\u20130x1013: 0x1AE, 0x665, 0x165, 0x165\n#_04981E: db $65, $65, $AA, $96 : db $11, $05 ; 0x1014\u20130x1017: 0x165, 0x165, 0x5AA, 0x096\n#_049824: db $68, $06, $96, $05 : db $71, $51 ; 0x1018\u20130x101B: 0x168, 0x706, 0x196, 0x505\n#_04982A: db $65, $F2, $B7, $FE : db $11, $62 ; 0x101C\u20130x101F: 0x165, 0x1F2, 0x2B7, 0x6FE\n#_049830: db $C5, $AE, $6A, $6B : db $06, $77 ; 0x1020\u20130x1023: 0x6C5, 0x0AE, 0x76A, 0x76B\n#_049836: db $FE, $D0, $EA, $EF : db $20, $66 ; 0x1024\u20130x1027: 0x0FE, 0x2D0, 0x6EA, 0x6EF\n#_04983C: db $55, $EA, $85, $E7 : db $76, $36 ; 0x1028\u20130x102B: 0x655, 0x7EA, 0x685, 0x3E7\n#_049842: db $59, $09, $6D, $25 : db $77, $77 ; 0x102C\u20130x102F: 0x759, 0x709, 0x76D, 0x725\n#_049848: db $E6, $E7, $08, $D0 : db $66, $70 ; 0x1030\u20130x1033: 0x6E6, 0x6E7, 0x008, 0x7D0\n#_04984E: db $D1, $1C, $07, $09 : db $07, $77 ; 0x1034\u20130x1037: 0x7D1, 0x01C, 0x707, 0x709\n#_049854: db $6D, $07, $F9, $71 : db $77, $67 ; 0x1038\u20130x103B: 0x76D, 0x707, 0x7F9, 0x671\n#_04985A: db $6E, $56, $E7, $09 : db $77, $67 ; 0x103C\u20130x103F: 0x76E, 0x756, 0x7E7, 0x609\n#_049860: db $6D, $AE, $AE, $F9 : db $76, $66 ; 0x1040\u20130x1043: 0x66D, 0x7AE, 0x6AE, 0x6F9\n#_049866: db $08, $76, $E7, $1D : db $77, $67 ; 0x1044\u20130x1047: 0x708, 0x776, 0x7E7, 0x61D\n#_04986C: db $E4, $71, $AE, $78 : db $67, $67 ; 0x1048\u20130x104B: 0x7E4, 0x671, 0x7AE, 0x678\n#_049872: db $08, $64, $E4, $76 : db $77, $67 ; 0x104C\u20130x104F: 0x708, 0x764, 0x7E4, 0x676\n#_049878: db $9E, $69, $64, $E4 : db $56, $76 ; 0x1050\u20130x1053: 0x69E, 0x569, 0x664, 0x7E4\n#_04987E: db $E7, $E6, $E7, $5A : db $66, $67 ; 0x1054\u20130x1057: 0x6E7, 0x6E6, 0x7E7, 0x65A\n#_049884: db $E7, $AE, $69, $97 : db $66, $65 ; 0x1058\u20130x105B: 0x6E7, 0x6AE, 0x569, 0x697\n#_04988A: db $97, $97, $9C, $06 : db $55, $51 ; 0x105C\u20130x105F: 0x597, 0x597, 0x19C, 0x506\n#_049890: db $66, $65, $65, $E5 : db $11, $11 ; 0x1060\u20130x1063: 0x166, 0x165, 0x165, 0x1E5\n#_049896: db $06, $1E, $AE, $AE : db $12, $66 ; 0x1064\u20130x1067: 0x206, 0x11E, 0x6AE, 0x6AE\n#_04989C: db $AE, $83, $C9, $D2 : db $61, $00 ; 0x1068\u20130x106B: 0x1AE, 0x683, 0x0C9, 0x0D2\n#_0498A2: db $AE, $AE, $1C, $57 : db $66, $22 ; 0x106C\u20130x106F: 0x6AE, 0x6AE, 0x21C, 0x257\n#_0498A8: db $AE, $AE, $D3, $85 : db $66, $03 ; 0x1070\u20130x1073: 0x6AE, 0x6AE, 0x3D3, 0x085\n#_0498AE: db $71, $01, $DB, $1F : db $01, $02 ; 0x1074\u20130x1077: 0x171, 0x001, 0x2DB, 0x01F\n#_0498B4: db $79, $CE, $B7, $58 : db $10, $61 ; 0x1078\u20130x107B: 0x079, 0x1CE, 0x1B7, 0x658\n#_0498BA: db $7D, $AE, $34, $0E : db $76, $01 ; 0x107C\u20130x107F: 0x67D, 0x7AE, 0x134, 0x00E\n#_0498C0: db $F9, $58, $DB, $53 : db $11, $01 ; 0x1080\u20130x1083: 0x1F9, 0x158, 0x1DB, 0x053\n#_0498C6: db $71, $AE, $AE, $5B : db $06, $61 ; 0x1084\u20130x1087: 0x671, 0x0AE, 0x1AE, 0x65B\n#_0498CC: db $34, $66, $AE, $DA : db $01, $60 ; 0x1088\u20130x108B: 0x134, 0x066, 0x0AE, 0x6DA\n#_0498D2: db $AE, $AE, $34, $75 : db $66, $03 ; 0x108C\u20130x108F: 0x6AE, 0x6AE, 0x334, 0x075\n#_0498D8: db $83, $78, $5A, $0F : db $11, $72 ; 0x1090\u20130x1093: 0x183, 0x178, 0x25A, 0x70F\n#_0498DE: db $34, $78, $42, $E6 : db $01, $52 ; 0x1094\u20130x1097: 0x134, 0x078, 0x242, 0x5E6\n#_0498E4: db $05, $AB, $96, $05 : db $10, $51 ; 0x1098\u20130x109B: 0x005, 0x1AB, 0x196, 0x505\n#_0498EA: db $AA, $18, $0F, $07 : db $62, $21 ; 0x109C\u20130x109F: 0x2AA, 0x618, 0x10F, 0x207\n#_0498F0: db $06, $65, $18, $97 : db $11, $25 ; 0x10A0\u20130x10A3: 0x106, 0x165, 0x518, 0x297\n#_0498F6: db $97, $AE, $18, $AB : db $56, $20 ; 0x10A4\u20130x10A7: 0x697, 0x5AE, 0x018, 0x2AB\n#_0498FC: db $AE, $C2, $C2, $AE : db $61, $16 ; 0x10A8\u20130x10AB: 0x1AE, 0x6C2, 0x6C2, 0x1AE\n#_049902: db $40, $AE, $AB, $34 : db $66, $00 ; 0x10AC\u20130x10AF: 0x640, 0x6AE, 0x0AB, 0x034\n#_049908: db $D2, $EF, $66, $1E : db $22, $12 ; 0x10B0\u20130x10B3: 0x2D2, 0x2EF, 0x266, 0x11E\n#_04990E: db $C2, $80, $CD, $C7 : db $17, $22 ; 0x10B4\u20130x10B7: 0x7C2, 0x180, 0x2CD, 0x2C7\n#_049914: db $DD, $EF, $66, $65 : db $22, $11 ; 0x10B8\u20130x10BB: 0x2DD, 0x2EF, 0x166, 0x165\n#_04991A: db $66, $F8, $C7, $81 : db $12, $27 ; 0x10BC\u20130x10BF: 0x266, 0x1F8, 0x7C7, 0x281\n#_049920: db $65, $7F, $A2, $7E : db $17, $61 ; 0x10C0\u20130x10C3: 0x765, 0x17F, 0x1A2, 0x67E\n#_049926: db $57, $C7, $C7, $EE : db $22, $21 ; 0x10C4\u20130x10C7: 0x257, 0x2C7, 0x1C7, 0x2EE\n#_04992C: db $85, $7E, $D1, $D1 : db $31, $00 ; 0x10C8\u20130x10CB: 0x185, 0x37E, 0x0D1, 0x0D1\n#_049932: db $C6, $C7, $20, $53 : db $02, $21 ; 0x10CC\u20130x10CF: 0x2C6, 0x0C7, 0x120, 0x253\n#_049938: db $87, $87, $42, $57 : db $33, $52 ; 0x10D0\u20130x10D3: 0x387, 0x387, 0x242, 0x557\n#_04993E: db $EE, $83, $F1, $CD : db $17, $22 ; 0x10D4\u20130x10D7: 0x7EE, 0x183, 0x2F1, 0x2CD\n#_049944: db $40, $EE, $34, $20 : db $51, $05 ; 0x10D8\u20130x10DB: 0x140, 0x5EE, 0x534, 0x020\n#_04994A: db $20, $87, $ED, $6A : db $53, $21 ; 0x10DC\u20130x10DF: 0x320, 0x587, 0x1ED, 0x26A\n#_049950: db $A3, $08, $E6, $C6 : db $07, $22 ; 0x10E0\u20130x10E3: 0x7A3, 0x008, 0x2E6, 0x2C6\n#_049956: db $42, $E4, $E4, $EC : db $56, $62 ; 0x10E4\u20130x10E7: 0x642, 0x5E4, 0x2E4, 0x6EC\n#_04995C: db $E6, $CD, $E6, $25 : db $22, $23 ; 0x10E8\u20130x10EB: 0x2E6, 0x2CD, 0x3E6, 0x225\n#_049962: db $28, $EC, $E6, $E7 : db $32, $22 ; 0x10EC\u20130x10EF: 0x228, 0x3EC, 0x2E6, 0x2E7\n#_049968: db $05, $E1, $C2, $0C : db $32, $33 ; 0x10F0\u20130x10F3: 0x205, 0x3E1, 0x3C2, 0x30C\n#_04996E: db $9A, $E0, $96, $97 : db $32, $55 ; 0x10F4\u20130x10F7: 0x29A, 0x3E0, 0x596, 0x597\n#_049974: db $68, $E6, $E6, $B1 : db $62, $22 ; 0x10F8\u20130x10FB: 0x268, 0x6E6, 0x2E6, 0x2B1\n#_04997A: db $65, $58, $9C, $7B : db $11, $57 ; 0x10FC\u20130x10FF: 0x165, 0x158, 0x79C, 0x57B\n#_049980: db $69, $07, $C9, $85 : db $61, $01 ; 0x1100\u20130x1103: 0x169, 0x607, 0x1C9, 0x085\n#_049986: db $CD, $E5, $D9, $E9 : db $21, $21 ; 0x1104\u20130x1107: 0x1CD, 0x2E5, 0x1D9, 0x2E9\n#_04998C: db $DD, $E4, $D6, $D2 : db $22, $22 ; 0x1108\u20130x110B: 0x2DD, 0x2E4, 0x2D6, 0x2D2\n#_049992: db $EF, $F6, $C7, $2D : db $22, $21 ; 0x110C\u20130x110F: 0x2EF, 0x2F6, 0x1C7, 0x22D\n#_049998: db $D0, $CD, $DF, $A2 : db $02, $26 ; 0x1110\u20130x1113: 0x2D0, 0x0CD, 0x6DF, 0x2A2\n#_04999E: db $E4, $C7, $D9, $C7 : db $22, $22 ; 0x1114\u20130x1117: 0x2E4, 0x2C7, 0x2D9, 0x2C7\n#_0499A4: db $FF, $05, $90, $E1 : db $21, $22 ; 0x1118\u20130x111B: 0x1FF, 0x205, 0x290, 0x2E1\n#_0499AA: db $E1, $05, $02, $E6 : db $21, $32 ; 0x111C\u20130x111F: 0x1E1, 0x205, 0x202, 0x3E6\n#_0499B0: db $C4, $E6, $8E, $8D : db $02, $77 ; 0x1120\u20130x1123: 0x2C4, 0x0E6, 0x78E, 0x78D\n#_0499B6: db $2A, $0C, $E1, $E1 : db $73, $22 ; 0x1124\u20130x1127: 0x32A, 0x70C, 0x2E1, 0x2E1\n#_0499BC: db $90, $91, $92, $E6 : db $27, $72 ; 0x1128\u20130x112B: 0x790, 0x291, 0x292, 0x7E6\n#_0499C2: db $8D, $EC, $E6, $C6 : db $72, $20 ; 0x112C\u20130x112F: 0x28D, 0x7EC, 0x0E6, 0x2C6\n#_0499C8: db $85, $07, $9D, $9F : db $31, $77 ; 0x1130\u20130x1133: 0x185, 0x307, 0x79D, 0x79F\n#_0499CE: db $9E, $A0, $A2, $A3 : db $77, $77 ; 0x1134\u20130x1137: 0x79E, 0x7A0, 0x7A2, 0x7A3\n#_0499D4: db $A5, $A7, $A6, $AF : db $77, $77 ; 0x1138\u20130x113B: 0x7A5, 0x7A7, 0x7A6, 0x7AF\n#_0499DA: db $B1, $B0, $B2, $AD : db $77, $77 ; 0x113C\u20130x113F: 0x7B1, 0x7B0, 0x7B2, 0x7AD\n#_0499E0: db $B3, $B5, $A1, $B6 : db $77, $77 ; 0x1140\u20130x1143: 0x7B3, 0x7B5, 0x7A1, 0x7B6\n#_0499E6: db $A7, $C0, $C1, $B2 : db $77, $77 ; 0x1144\u20130x1147: 0x7A7, 0x7C0, 0x7C1, 0x7B2\n#_0499EC: db $C3, $C3, $C4, $AD : db $77, $77 ; 0x1148\u20130x114B: 0x7C3, 0x7C3, 0x7C4, 0x7AD\n#_0499F2: db $C3, $9E, $A1, $AD : db $77, $77 ; 0x114C\u20130x114F: 0x7C3, 0x79E, 0x7A1, 0x7AD\n#_0499F8: db $C0, $C6, $C6, $C6 : db $77, $77 ; 0x1150\u20130x1153: 0x7C0, 0x7C6, 0x7C6, 0x7C6\n#_0499FE: db $C6, $C6, $B0, $AD : db $77, $77 ; 0x1154\u20130x1157: 0x7C6, 0x7C6, 0x7B0, 0x7AD\n#_049A04: db $AD, $B5, $9D, $D5 : db $77, $77 ; 0x1158\u20130x115B: 0x7AD, 0x7B5, 0x79D, 0x7D5\n#_049A0A: db $D7, $D9, $D0, $DA : db $77, $77 ; 0x115C\u20130x115F: 0x7D7, 0x7D9, 0x7D0, 0x7DA\n#_049A10: db $97, $A6, $BF, $C5 : db $77, $77 ; 0x1160\u20130x1163: 0x797, 0x7A6, 0x7BF, 0x7C5\n#_049A16: db $E9, $EB, $ED, $C4 : db $77, $77 ; 0x1164\u20130x1167: 0x7E9, 0x7EB, 0x7ED, 0x7C4\n#_049A1C: db $F0, $D7, $D9, $F1 : db $77, $77 ; 0x1168\u20130x116B: 0x7F0, 0x7D7, 0x7D9, 0x7F1\n#_049A22: db $A6, $F2, $A2, $0F : db $77, $72 ; 0x116C\u20130x116F: 0x7A6, 0x7F2, 0x2A2, 0x70F\n#_049A28: db $FD, $FF, $01, $F8 : db $77, $87 ; 0x1170\u20130x1173: 0x7FD, 0x7FF, 0x701, 0x8F8\n#_049A2E: db $BD, $C0, $02, $D3 : db $77, $87 ; 0x1174\u20130x1177: 0x7BD, 0x7C0, 0x702, 0x8D3\n#_049A34: db $03, $F0, $AD, $0F : db $87, $72 ; 0x1178\u20130x117B: 0x703, 0x8F0, 0x2AD, 0x70F\n#_049A3A: db $04, $0A, $C6, $F8 : db $88, $77 ; 0x117C\u20130x117F: 0x804, 0x80A, 0x7C6, 0x7F8\n#_049A40: db $F3, $C6, $D9, $AD : db $77, $77 ; 0x1180\u20130x1183: 0x7F3, 0x7C6, 0x7D9, 0x7AD\n#_049A46: db $C1, $B0, $F2, $DA : db $77, $70 ; 0x1184\u20130x1187: 0x7C1, 0x7B0, 0x0F2, 0x7DA\n#_049A4C: db $DA, $C6, $0E, $C6 : db $07, $87 ; 0x1188\u20130x118B: 0x7DA, 0x0C6, 0x70E, 0x8C6\n#_049A52: db $0F, $11, $D4, $C5 : db $88, $77 ; 0x118C\u20130x118F: 0x80F, 0x811, 0x7D4, 0x7C5\n#_049A58: db $DA, $CF, $DA, $C6 : db $07, $77 ; 0x1190\u20130x1193: 0x7DA, 0x0CF, 0x7DA, 0x7C6\n#_049A5E: db $F8, $B4, $B0, $D6 : db $77, $77 ; 0x1194\u20130x1197: 0x7F8, 0x7B4, 0x7B0, 0x7D6\n#_049A64: db $D8, $DA, $AD, $AD : db $77, $77 ; 0x1198\u20130x119B: 0x7D8, 0x7DA, 0x7AD, 0x7AD\n#_049A6A: db $DB, $C9, $AD, $D8 : db $77, $77 ; 0x119C\u20130x119F: 0x7DB, 0x7C9, 0x7AD, 0x7D8\n#_049A70: db $B9, $A9, $A5, $C0 : db $77, $77 ; 0x11A0\u20130x11A3: 0x7B9, 0x7A9, 0x7A5, 0x7C0\n#_049A76: db $D6, $17, $98, $FA : db $78, $77 ; 0x11A4\u20130x11A7: 0x8D6, 0x717, 0x798, 0x7FA\n#_049A7C: db $9D, $D5, $C6, $C3 : db $77, $77 ; 0x11A8\u20130x11AB: 0x79D, 0x7D5, 0x7C6, 0x7C3\n#_049A82: db $97, $DB, $EF, $1A : db $77, $78 ; 0x11AC\u20130x11AF: 0x797, 0x7DB, 0x8EF, 0x71A\n#_049A88: db $BF, $C9, $10, $C6 : db $77, $87 ; 0x11B0\u20130x11B3: 0x7BF, 0x7C9, 0x710, 0x8C6\n#_049A8E: db $11, $C3, $A5, $A6 : db $87, $77 ; 0x11B4\u20130x11B7: 0x711, 0x8C3, 0x7A5, 0x7A6\n#_049A94: db $1F, $21, $22, $C6 : db $88, $87 ; 0x11B8\u20130x11BB: 0x81F, 0x821, 0x722, 0x8C6\n#_049A9A: db $24, $26, $B6, $27 : db $88, $78 ; 0x11BC\u20130x11BF: 0x824, 0x826, 0x8B6, 0x727\n#_049AA0: db $C3, $AD, $B0, $C6 : db $77, $77 ; 0x11C0\u20130x11C3: 0x7C3, 0x7AD, 0x7B0, 0x7C6\n#_049AA6: db $C6, $C6, $2B, $A6 : db $77, $87 ; 0x11C4\u20130x11C7: 0x7C6, 0x7C6, 0x72B, 0x8A6\n#_049AAC: db $31, $33, $C6, $34 : db $88, $78 ; 0x11C8\u20130x11CB: 0x831, 0x833, 0x8C6, 0x734\n#_049AB2: db $35, $37, $36, $38 : db $88, $88 ; 0x11CC\u20130x11CF: 0x835, 0x837, 0x836, 0x838\n#_049AB8: db $D9, $C6, $C6, $9F : db $77, $70 ; 0x11D0\u20130x11D3: 0x7D9, 0x7C6, 0x0C6, 0x79F\n#_049ABE: db $A3, $3C, $D9, $B0 : db $08, $77 ; 0x11D4\u20130x11D7: 0x8A3, 0x03C, 0x7D9, 0x7B0\n#_049AC4: db $C5, $C6, $2D, $C6 : db $77, $87 ; 0x11D8\u20130x11DB: 0x7C5, 0x7C6, 0x72D, 0x8C6\n#_049ACA: db $C6, $C6, $3C, $36 : db $77, $80 ; 0x11DC\u20130x11DF: 0x7C6, 0x7C6, 0x03C, 0x836\n#_049AD0: db $41, $D9, $A4, $C9 : db $87, $77 ; 0x11E0\u20130x11E3: 0x741, 0x8D9, 0x7A4, 0x7C9\n#_049AD6: db $C7, $C6, $C6, $C6 : db $77, $77 ; 0x11E4\u20130x11E7: 0x7C7, 0x7C6, 0x7C6, 0x7C6\n#_049ADC: db $41, $44, $03, $B4 : db $88, $87 ; 0x11E8\u20130x11EB: 0x841, 0x844, 0x703, 0x8B4\n#_049AE2: db $D5, $D9, $02, $47 : db $77, $88 ; 0x11EC\u20130x11EF: 0x7D5, 0x7D9, 0x802, 0x847\n#_049AE8: db $C6, $C6, $D0, $D0 : db $77, $77 ; 0x11F0\u20130x11F3: 0x7C6, 0x7C6, 0x7D0, 0x7D0\n#_049AEE: db $97, $F0, $AD, $C2 : db $77, $77 ; 0x11F4\u20130x11F7: 0x797, 0x7F0, 0x7AD, 0x7C2\n#_049AF4: db $C6, $0D, $A6, $A5 : db $78, $77 ; 0x11F8\u20130x11FB: 0x8C6, 0x70D, 0x7A6, 0x7A5\n#_049AFA: db $BF, $C0, $11, $C2 : db $77, $87 ; 0x11FC\u20130x11FF: 0x7BF, 0x7C0, 0x711, 0x8C2\n#_049B00: db $C6, $0D, $C3, $AD : db $78, $77 ; 0x1200\u20130x1203: 0x8C6, 0x70D, 0x7C3, 0x7AD\n#_049B06: db $21, $C3, $B3, $C5 : db $87, $77 ; 0x1204\u20130x1207: 0x721, 0x8C3, 0x7B3, 0x7C5\n#_049B0C: db $F3, $C6, $F8, $B2 : db $77, $77 ; 0x1208\u20130x120B: 0x7F3, 0x7C6, 0x7F8, 0x7B2\n#_049B12: db $F3, $0D, $F8, $D9 : db $78, $77 ; 0x120C\u20130x120F: 0x8F3, 0x70D, 0x7F8, 0x7D9\n#_049B18: db $DA, $C3, $C6, $F8 : db $77, $77 ; 0x1210\u20130x1213: 0x7DA, 0x7C3, 0x7C6, 0x7F8\n#_049B1E: db $D9, $AD, $B4, $21 : db $77, $78 ; 0x1214\u20130x1217: 0x7D9, 0x7AD, 0x8B4, 0x721\n#_049B24: db $C3, $C6, $C6, $41 : db $77, $78 ; 0x1218\u20130x121B: 0x7C3, 0x7C6, 0x8C6, 0x741\n#_049B2A: db $45, $41, $D5, $AD : db $88, $77 ; 0x121C\u20130x121F: 0x845, 0x841, 0x7D5, 0x7AD\n#_049B30: db $0D, $46, $0D, $B2 : db $88, $87 ; 0x1220\u20130x1223: 0x80D, 0x846, 0x70D, 0x8B2\n#_049B36: db $AD, $F8, $1E, $11 : db $77, $88 ; 0x1224\u20130x1227: 0x7AD, 0x7F8, 0x81E, 0x811\n#_049B3C: db $C6, $C7, $C6, $B3 : db $77, $77 ; 0x1228\u20130x122B: 0x7C6, 0x7C7, 0x7C6, 0x7B3\n#_049B42: db $C6, $C6, $0D, $1B : db $00, $12 ; 0x122C\u20130x122F: 0x0C6, 0x0C6, 0x20D, 0x11B\n#_049B48: db $F7, $34, $1B, $34 : db $00, $20 ; 0x1230\u20130x1233: 0x0F7, 0x034, 0x01B, 0x234\n#_049B4E: db $15, $34, $34, $0D : db $40, $01 ; 0x1234\u20130x1237: 0x015, 0x434, 0x134, 0x00D\n#_049B54: db $57, $57, $5E, $5F : db $88, $88 ; 0x1238\u20130x123B: 0x857, 0x857, 0x85E, 0x85F\n#_049B5A: db $57, $55, $61, $51 : db $88, $88 ; 0x123C\u20130x123F: 0x857, 0x855, 0x861, 0x851\n#_049B60: db $17, $17, $58, $58 : db $11, $88 ; 0x1240\u20130x1243: 0x117, 0x117, 0x858, 0x858\n#_049B66: db $60, $62, $5C, $5C : db $88, $88 ; 0x1244\u20130x1247: 0x860, 0x862, 0x85C, 0x85C\n#_049B6C: db $51, $23, $26, $51 : db $81, $18 ; 0x1248\u20130x124B: 0x151, 0x823, 0x826, 0x151\n#_049B72: db $52, $1C, $27, $6B : db $81, $18 ; 0x124C\u20130x124F: 0x152, 0x81C, 0x827, 0x16B\n#_049B78: db $66, $57, $67, $6D : db $88, $88 ; 0x1250\u20130x1253: 0x866, 0x857, 0x867, 0x86D\n#_049B7E: db $72, $73, $74, $38 : db $88, $81 ; 0x1254\u20130x1257: 0x872, 0x873, 0x174, 0x838\n#_049B84: db $38, $38, $58, $79 : db $11, $88 ; 0x1258\u20130x125B: 0x138, 0x138, 0x858, 0x879\n#_049B8A: db $7B, $7C, $7D, $84 : db $88, $88 ; 0x125C\u20130x125F: 0x87B, 0x87C, 0x87D, 0x884\n#_049B90: db $7E, $71, $52, $57 : db $88, $88 ; 0x1260\u20130x1263: 0x87E, 0x871, 0x852, 0x857\n#_049B96: db $55, $61, $7F, $58 : db $88, $88 ; 0x1264\u20130x1267: 0x855, 0x861, 0x87F, 0x858\n#_049B9C: db $C8, $C9, $C9, $54 : db $00, $01 ; 0x1268\u20130x126B: 0x0C8, 0x0C9, 0x1C9, 0x054\n#_049BA2: db $58, $89, $57, $52 : db $88, $88 ; 0x126C\u20130x126F: 0x858, 0x889, 0x857, 0x852\n#_049BA8: db $52, $28, $53, $8B : db $81, $88 ; 0x1270\u20130x1273: 0x152, 0x828, 0x853, 0x88B\n#_049BAE: db $7E, $8C, $8C, $58 : db $88, $88 ; 0x1274\u20130x1277: 0x87E, 0x88C, 0x88C, 0x858\n#_049BB4: db $7F, $52, $58, $1C : db $88, $81 ; 0x1278\u20130x127B: 0x87F, 0x852, 0x158, 0x81C\n#_049BBA: db $28, $53, $8B, $80 : db $18, $88 ; 0x127C\u20130x127F: 0x828, 0x153, 0x88B, 0x880\n#_049BC0: db $50, $51, $5E, $90 : db $88, $88 ; 0x1280\u20130x1283: 0x850, 0x851, 0x85E, 0x890\n#_049BC6: db $71, $52, $52, $6F : db $88, $88 ; 0x1284\u20130x1287: 0x871, 0x852, 0x852, 0x86F\n#_049BCC: db $92, $53, $CC, $53 : db $81, $01 ; 0x1288\u20130x128B: 0x192, 0x853, 0x1CC, 0x053\n#_049BD2: db $A4, $AD, $A5, $A5 : db $00, $11 ; 0x128C\u20130x128F: 0x0A4, 0x0AD, 0x1A5, 0x1A5\n#_049BD8: db $A5, $85, $94, $34 : db $18, $80 ; 0x1290\u20130x1293: 0x8A5, 0x185, 0x094, 0x834\n#_049BDE: db $A5, $93, $A5, $AC : db $18, $10 ; 0x1294\u20130x1297: 0x8A5, 0x193, 0x0A5, 0x1AC\n#_049BE4: db $34, $61, $85, $57 : db $01, $88 ; 0x1298\u20130x129B: 0x134, 0x061, 0x885, 0x857\n#_049BEA: db $6F, $96, $A6, $A7 : db $88, $88 ; 0x129C\u20130x129F: 0x86F, 0x896, 0x8A6, 0x8A7\n#_049BF0: db $9B, $9B, $9B, $9B : db $88, $88 ; 0x12A0\u20130x12A3: 0x89B, 0x89B, 0x89B, 0x89B\n#_049BF6: db $9B, $9B, $AA, $27 : db $88, $81 ; 0x12A4\u20130x12A7: 0x89B, 0x89B, 0x1AA, 0x827\n#_049BFC: db $87, $6E, $57, $58 : db $88, $88 ; 0x12A8\u20130x12AB: 0x887, 0x86E, 0x857, 0x858\n#_049C02: db $5E, $34, $B9, $A0 : db $80, $88 ; 0x12AC\u20130x12AF: 0x05E, 0x834, 0x8B9, 0x8A0\n#_049C08: db $9B, $BB, $BB, $BC : db $88, $88 ; 0x12B0\u20130x12B3: 0x89B, 0x8BB, 0x8BB, 0x8BC\n#_049C0E: db $9B, $B2, $BE, $27 : db $88, $81 ; 0x12B4\u20130x12B7: 0x89B, 0x8B2, 0x1BE, 0x827\n#_049C14: db $53, $8B, $38, $C9 : db $88, $18 ; 0x12B8\u20130x12BB: 0x853, 0x88B, 0x838, 0x1C9\n#_049C1A: db $CA, $34, $CC, $C1 : db $80, $88 ; 0x12BC\u20130x12BF: 0x0CA, 0x834, 0x8CC, 0x8C1\n#_049C20: db $B0, $D0, $D2, $D0 : db $88, $88 ; 0x12C0\u20130x12C3: 0x8B0, 0x8D0, 0x8D2, 0x8D0\n#_049C26: db $B2, $D3, $D5, $1E : db $88, $81 ; 0x12C4\u20130x12C7: 0x8B2, 0x8D3, 0x1D5, 0x81E\n#_049C2C: db $58, $7D, $E2, $E4 : db $88, $88 ; 0x12C8\u20130x12CB: 0x858, 0x87D, 0x8E2, 0x8E4\n#_049C32: db $34, $E6, $D8, $E8 : db $08, $88 ; 0x12CC\u20130x12CF: 0x834, 0x0E6, 0x8D8, 0x8E8\n#_049C38: db $E8, $EA, $E8, $EB : db $88, $88 ; 0x12D0\u20130x12D3: 0x8E8, 0x8EA, 0x8E8, 0x8EB\n#_049C3E: db $E0, $ED, $51, $6F : db $88, $88 ; 0x12D4\u20130x12D7: 0x8E0, 0x8ED, 0x851, 0x86F\n#_049C44: db $34, $FA, $F0, $D3 : db $08, $81 ; 0x12D8\u20130x12DB: 0x834, 0x0FA, 0x1F0, 0x8D3\n#_049C4A: db $C3, $FD, $C3, $D3 : db $88, $81 ; 0x12DC\u20130x12DF: 0x8C3, 0x8FD, 0x1C3, 0x8D3\n#_049C50: db $FE, $34, $58, $34 : db $80, $80 ; 0x12E0\u20130x12E3: 0x0FE, 0x834, 0x058, 0x834\n#_049C56: db $EE, $07, $08, $08 : db $89, $99 ; 0x12E4\u20130x12E7: 0x9EE, 0x807, 0x908, 0x908\n#_049C5C: db $08, $06, $34, $C9 : db $99, $00 ; 0x12E8\u20130x12EB: 0x908, 0x906, 0x034, 0x0C9\n#_049C62: db $D5, $93, $15, $AD : db $08, $20 ; 0x12EC\u20130x12EF: 0x8D5, 0x093, 0x015, 0x2AD\n#_049C68: db $C7, $36, $A5, $79 : db $00, $11 ; 0x12F0\u20130x12F3: 0x0C7, 0x036, 0x1A5, 0x179\n#_049C6E: db $34, $A5, $AC, $06 : db $01, $02 ; 0x12F4\u20130x12F7: 0x134, 0x0A5, 0x2AC, 0x006\n#_049C74: db $02, $34, $F3, $A4 : db $20, $10 ; 0x12F8\u20130x12FB: 0x002, 0x234, 0x0F3, 0x1A4\n#_049C7A: db $85, $A5, $94, $58 : db $80, $88 ; 0x12FC\u20130x12FF: 0x085, 0x8A5, 0x894, 0x858\n#_049C80: db $53, $50, $6C, $50 : db $88, $88 ; 0x1300\u20130x1303: 0x853, 0x850, 0x86C, 0x850\n#_049C86: db $5B, $5C, $0B, $5C : db $88, $98 ; 0x1304\u20130x1307: 0x85B, 0x85C, 0x80B, 0x95C\n#_049C8C: db $5D, $50, $95, $58 : db $88, $88 ; 0x1308\u20130x130B: 0x85D, 0x850, 0x895, 0x858\n#_049C92: db $58, $80, $50, $0E : db $88, $89 ; 0x130C\u20130x130F: 0x858, 0x880, 0x950, 0x80E\n#_049C98: db $55, $81, $6C, $63 : db $88, $88 ; 0x1310\u20130x1313: 0x855, 0x881, 0x86C, 0x863\n#_049C9E: db $68, $5C, $50, $50 : db $88, $88 ; 0x1314\u20130x1317: 0x868, 0x85C, 0x850, 0x850\n#_049CA4: db $58, $58, $53, $11 : db $88, $89 ; 0x1318\u20130x131B: 0x858, 0x858, 0x953, 0x811\n#_049CAA: db $51, $50, $50, $67 : db $88, $88 ; 0x131C\u20130x131F: 0x851, 0x850, 0x850, 0x867\n#_049CB0: db $5D, $50, $50, $1D : db $88, $81 ; 0x1320\u20130x1323: 0x85D, 0x850, 0x150, 0x81D\n#_049CB6: db $5F, $52, $58, $95 : db $88, $88 ; 0x1324\u20130x1327: 0x85F, 0x852, 0x858, 0x895\n#_049CBC: db $59, $5A, $6C, $68 : db $88, $88 ; 0x1328\u20130x132B: 0x859, 0x85A, 0x86C, 0x868\n#_049CC2: db $50, $53, $52, $1E : db $88, $81 ; 0x132C\u20130x132F: 0x850, 0x853, 0x152, 0x81E\n#_049CC8: db $53, $88, $82, $50 : db $88, $88 ; 0x1330\u20130x1333: 0x853, 0x888, 0x882, 0x850\n#_049CCE: db $50, $50, $50, $5E : db $88, $88 ; 0x1334\u20130x1337: 0x850, 0x850, 0x850, 0x85E\n#_049CD4: db $70, $31, $50, $0D : db $81, $89 ; 0x1338\u20130x133B: 0x170, 0x831, 0x950, 0x80D\n#_049CDA: db $24, $70, $76, $77 : db $18, $88 ; 0x133C\u20130x133F: 0x824, 0x170, 0x876, 0x877\n#_049CE0: db $77, $D6, $1C, $4B : db $88, $21 ; 0x1340\u20130x1343: 0x877, 0x8D6, 0x11C, 0x24B\n#_049CE6: db $31, $66, $50, $0B : db $18, $89 ; 0x1344\u20130x1347: 0x831, 0x166, 0x950, 0x80B\n#_049CEC: db $50, $50, $6F, $24 : db $88, $81 ; 0x1348\u20130x134B: 0x850, 0x850, 0x16F, 0x824\n#_049CF2: db $4F, $54, $5D, $6E : db $11, $88 ; 0x134C\u20130x134F: 0x14F, 0x154, 0x85D, 0x86E\n#_049CF8: db $6F, $88, $6C, $81 : db $88, $88 ; 0x1350\u20130x1353: 0x86F, 0x888, 0x86C, 0x881\n#_049CFE: db $6E, $71, $58, $87 : db $88, $88 ; 0x1354\u20130x1357: 0x86E, 0x871, 0x858, 0x887\n#_049D04: db $50, $0D, $71, $87 : db $89, $88 ; 0x1358\u20130x135B: 0x950, 0x80D, 0x871, 0x887\n#_049D0A: db $50, $50, $53, $5B : db $88, $88 ; 0x135C\u20130x135F: 0x850, 0x850, 0x853, 0x85B\n#_049D10: db $5C, $50, $58, $7F : db $88, $88 ; 0x1360\u20130x1363: 0x85C, 0x850, 0x858, 0x87F\n#_049D16: db $0D, $87, $50, $6D : db $98, $88 ; 0x1364\u20130x1367: 0x80D, 0x987, 0x850, 0x86D\n#_049D1C: db $58, $C6, $C6, $C6 : db $80, $00 ; 0x1368\u20130x136B: 0x058, 0x8C6, 0x0C6, 0x0C6\n#_049D22: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x136C\u20130x136F: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_049D28: db $C6, $C6, $58, $89 : db $00, $88 ; 0x1370\u20130x1373: 0x0C6, 0x0C6, 0x858, 0x889\n#_049D2E: db $80, $6D, $5E, $17 : db $88, $81 ; 0x1374\u20130x1377: 0x880, 0x86D, 0x15E, 0x817\n#_049D34: db $17, $53, $12, $67 : db $18, $98 ; 0x1378\u20130x137B: 0x817, 0x153, 0x812, 0x967\n#_049D3A: db $51, $53, $53, $50 : db $88, $88 ; 0x137C\u20130x137F: 0x851, 0x853, 0x853, 0x850\n#_049D40: db $58, $53, $95, $18 : db $88, $89 ; 0x1380\u20130x1383: 0x858, 0x853, 0x995, 0x818\n#_049D46: db $27, $6B, $51, $84 : db $18, $88 ; 0x1384\u20130x1387: 0x827, 0x16B, 0x851, 0x884\n#_049D4C: db $51, $34, $71, $5F : db $80, $88 ; 0x1388\u20130x138B: 0x051, 0x834, 0x871, 0x85F\n#_049D52: db $52, $7F, $57, $6E : db $88, $88 ; 0x138C\u20130x138F: 0x852, 0x87F, 0x857, 0x86E\n#_049D58: db $40, $71, $58, $0D : db $18, $89 ; 0x1390\u20130x1393: 0x840, 0x171, 0x958, 0x80D\n#_049D5E: db $C8, $C9, $5E, $1E : db $00, $81 ; 0x1394\u20130x1397: 0x0C8, 0x0C9, 0x15E, 0x81E\n#_049D64: db $17, $5F, $89, $8A : db $18, $88 ; 0x1398\u20130x139B: 0x817, 0x15F, 0x889, 0x88A\n#_049D6A: db $7E, $7E, $5F, $57 : db $88, $88 ; 0x139C\u20130x139F: 0x87E, 0x87E, 0x85F, 0x857\n#_049D70: db $8B, $17, $17, $17 : db $81, $11 ; 0x13A0\u20130x13A3: 0x18B, 0x817, 0x117, 0x117\n#_049D76: db $35, $85, $53, $53 : db $08, $11 ; 0x13A4\u20130x13A7: 0x835, 0x085, 0x153, 0x153\n#_049D7C: db $A7, $2C, $58, $0C : db $22, $89 ; 0x13A8\u20130x13AB: 0x2A7, 0x22C, 0x958, 0x80C\n#_049D82: db $57, $11, $10, $12 : db $89, $99 ; 0x13AC\u20130x13AF: 0x957, 0x811, 0x910, 0x912\n#_049D88: db $1F, $1F, $52, $1F : db $99, $89 ; 0x13B0\u20130x13B3: 0x91F, 0x91F, 0x952, 0x81F\n#_049D8E: db $67, $50, $72, $17 : db $88, $81 ; 0x13B4\u20130x13B7: 0x867, 0x850, 0x172, 0x817\n#_049D94: db $53, $58, $88, $1E : db $88, $81 ; 0x13B8\u20130x13BB: 0x853, 0x858, 0x188, 0x81E\n#_049D9A: db $52, $50, $50, $34 : db $88, $80 ; 0x13BC\u20130x13BF: 0x852, 0x850, 0x050, 0x834\n#_049DA0: db $34, $0F, $5F, $53 : db $02, $88 ; 0x13C0\u20130x13C3: 0x234, 0x00F, 0x85F, 0x853\n#_049DA6: db $23, $71, $34, $63 : db $98, $01 ; 0x13C4\u20130x13C7: 0x823, 0x971, 0x134, 0x063\n#_049DAC: db $90, $90, $18, $C4 : db $22, $20 ; 0x13C8\u20130x13CB: 0x290, 0x290, 0x018, 0x2C4\n#_049DB2: db $27, $6A, $87, $C4 : db $11, $80 ; 0x13CC\u20130x13CF: 0x127, 0x16A, 0x087, 0x8C4\n#_049DB8: db $27, $ED, $71, $80 : db $91, $88 ; 0x13D0\u20130x13D3: 0x127, 0x9ED, 0x871, 0x880\n#_049DBE: db $39, $2B, $53, $6B : db $29, $18 ; 0x13D4\u20130x13D7: 0x939, 0x22B, 0x853, 0x16B\n#_049DC4: db $34, $32, $CA, $35 : db $09, $09 ; 0x13D8\u20130x13DB: 0x934, 0x032, 0x9CA, 0x035\n#_049DCA: db $37, $38, $39, $31 : db $99, $91 ; 0x13DC\u20130x13DF: 0x937, 0x938, 0x139, 0x931\n#_049DD0: db $58, $34, $34, $DB : db $80, $00 ; 0x13E0\u20130x13E3: 0x058, 0x834, 0x034, 0x0DB\n#_049DD6: db $44, $46, $34, $34 : db $99, $00 ; 0x13E4\u20130x13E7: 0x944, 0x946, 0x034, 0x034\n#_049DDC: db $34, $34, $34, $8B : db $00, $08 ; 0x13E8\u20130x13EB: 0x034, 0x034, 0x834, 0x08B\n#_049DE2: db $31, $50, $58, $58 : db $18, $88 ; 0x13EC\u20130x13EF: 0x831, 0x150, 0x858, 0x858\n#_049DE8: db $51, $58, $59, $50 : db $18, $88 ; 0x13F0\u20130x13F3: 0x851, 0x158, 0x859, 0x850\n#_049DEE: db $8B, $8A, $87, $86 : db $88, $88 ; 0x13F4\u20130x13F7: 0x88B, 0x88A, 0x887, 0x886\n#_049DF4: db $50, $59, $5A, $8B : db $88, $88 ; 0x13F8\u20130x13FB: 0x850, 0x859, 0x85A, 0x88B\n#_049DFA: db $0C, $72, $8F, $81 : db $98, $88 ; 0x13FC\u20130x13FF: 0x80C, 0x972, 0x88F, 0x881\n#_049E00: db $82, $86, $50, $F0 : db $88, $87 ; 0x1400\u20130x1403: 0x882, 0x886, 0x750, 0x8F0\n#_049E06: db $97, $13, $4E, $C6 : db $78, $97 ; 0x1404\u20130x1407: 0x897, 0x713, 0x74E, 0x9C6\n#_049E0C: db $4F, $DA, $B0, $43 : db $97, $78 ; 0x1408\u20130x140B: 0x74F, 0x9DA, 0x8B0, 0x743\n#_049E12: db $F2, $4E, $DB, $D6 : db $78, $77 ; 0x140C\u20130x140F: 0x8F2, 0x74E, 0x7DB, 0x7D6\n#_049E18: db $13, $31, $52, $37 : db $88, $98 ; 0x1410\u20130x1413: 0x813, 0x831, 0x852, 0x937\n#_049E1E: db $2F, $36, $C6, $C4 : db $80, $77 ; 0x1414\u20130x1417: 0x02F, 0x836, 0x7C6, 0x7C4\n#_049E24: db $DB, $DB, $4E, $13 : db $77, $88 ; 0x1418\u20130x141B: 0x7DB, 0x7DB, 0x84E, 0x813\n#_049E2A: db $C6, $F0, $D6, $C6 : db $77, $77 ; 0x141C\u20130x141F: 0x7C6, 0x7F0, 0x7D6, 0x7C6\n#_049E30: db $4E, $C3, $F3, $0D : db $87, $78 ; 0x1420\u20130x1423: 0x74E, 0x8C3, 0x8F3, 0x70D\n#_049E36: db $D0, $C6, $C6, $D0 : db $77, $77 ; 0x1424\u20130x1427: 0x7D0, 0x7C6, 0x7C6, 0x7D0\n#_049E3C: db $C6, $C6, $56, $57 : db $77, $99 ; 0x1428\u20130x142B: 0x7C6, 0x7C6, 0x956, 0x957\n#_049E42: db $F2, $D4, $B4, $D5 : db $77, $77 ; 0x142C\u20130x142F: 0x7F2, 0x7D4, 0x7B4, 0x7D5\n#_049E48: db $97, $58, $13, $41 : db $79, $88 ; 0x1430\u20130x1433: 0x997, 0x758, 0x813, 0x841\n#_049E4E: db $21, $B2, $AD, $AD : db $87, $77 ; 0x1434\u20130x1437: 0x721, 0x8B2, 0x7AD, 0x7AD\n#_049E54: db $B2, $97, $A5, $C0 : db $77, $77 ; 0x1438\u20130x143B: 0x7B2, 0x797, 0x7A5, 0x7C0\n#_049E5A: db $4C, $C4, $C0, $C6 : db $87, $77 ; 0x143C\u20130x143F: 0x74C, 0x8C4, 0x7C0, 0x7C6\n#_049E60: db $A1, $C2, $C3, $5A : db $77, $79 ; 0x1440\u20130x1443: 0x7A1, 0x7C2, 0x9C3, 0x75A\n#_049E66: db $4B, $CA, $F8, $AD : db $97, $77 ; 0x1444\u20130x1447: 0x74B, 0x9CA, 0x7F8, 0x7AD\n#_049E6C: db $B4, $45, $24, $97 : db $78, $87 ; 0x1448\u20130x144B: 0x8B4, 0x745, 0x724, 0x897\n#_049E72: db $C6, $C6, $CF, $A8 : db $77, $77 ; 0x144C\u20130x144F: 0x7C6, 0x7C6, 0x7CF, 0x7A8\n#_049E78: db $AB, $AD, $97, $4B : db $77, $79 ; 0x1450\u20130x1453: 0x7AB, 0x7AD, 0x997, 0x74B\n#_049E7E: db $CF, $AD, $F9, $B8 : db $77, $77 ; 0x1454\u20130x1457: 0x7CF, 0x7AD, 0x7F9, 0x7B8\n#_049E84: db $4B, $A5, $A7, $D4 : db $87, $77 ; 0x1458\u20130x145B: 0x74B, 0x8A5, 0x7A7, 0x7D4\n#_049E8A: db $C6, $C3, $C3, $C3 : db $77, $77 ; 0x145C\u20130x145F: 0x7C6, 0x7C3, 0x7C3, 0x7C3\n#_049E90: db $C4, $C3, $C4, $B0 : db $77, $77 ; 0x1460\u20130x1463: 0x7C4, 0x7C3, 0x7C4, 0x7B0\n#_049E96: db $D0, $13, $1E, $C6 : db $78, $87 ; 0x1464\u20130x1467: 0x8D0, 0x713, 0x71E, 0x8C6\n#_049E9C: db $F8, $A7, $C2, $C6 : db $77, $77 ; 0x1468\u20130x146B: 0x7F8, 0x7A7, 0x7C2, 0x7C6\n#_049EA2: db $C6, $C6, $C6, $0F : db $77, $72 ; 0x146C\u20130x146F: 0x7C6, 0x7C6, 0x2C6, 0x70F\n#_049EA8: db $24, $40, $D4, $B4 : db $88, $77 ; 0x1470\u20130x1473: 0x824, 0x840, 0x7D4, 0x7B4\n#_049EAE: db $D5, $9D, $45, $24 : db $77, $88 ; 0x1474\u20130x1477: 0x7D5, 0x79D, 0x845, 0x824\n#_049EB4: db $40, $D4, $46, $2B : db $87, $88 ; 0x1478\u20130x147B: 0x740, 0x8D4, 0x846, 0x82B\n#_049EBA: db $F0, $AD, $A9, $C4 : db $77, $77 ; 0x147C\u20130x147F: 0x7F0, 0x7AD, 0x7A9, 0x7C4\n#_049EC0: db $C6, $D0, $FA, $12 : db $77, $78 ; 0x1480\u20130x1483: 0x7C6, 0x7D0, 0x8FA, 0x712\n#_049EC6: db $A9, $C6, $2D, $C6 : db $77, $87 ; 0x1484\u20130x1487: 0x7A9, 0x7C6, 0x72D, 0x8C6\n#_049ECC: db $DA, $C6, $4C, $DA : db $77, $97 ; 0x1488\u20130x148B: 0x7DA, 0x7C6, 0x74C, 0x9DA\n#_049ED2: db $C2, $C3, $C6, $C6 : db $77, $77 ; 0x148C\u20130x148F: 0x7C2, 0x7C3, 0x7C6, 0x7C6\n#_049ED8: db $4E, $DA, $39, $5D : db $87, $89 ; 0x1490\u20130x1493: 0x74E, 0x8DA, 0x939, 0x85D\n#_049EDE: db $55, $1C, $4E, $A3 : db $98, $87 ; 0x1494\u20130x1497: 0x855, 0x91C, 0x74E, 0x8A3\n#_049EE4: db $BE, $98, $9A, $E6 : db $77, $77 ; 0x1498\u20130x149B: 0x7BE, 0x798, 0x79A, 0x7E6\n#_049EEA: db $C2, $5E, $3E, $94 : db $79, $87 ; 0x149C\u20130x149F: 0x9C2, 0x75E, 0x73E, 0x894\n#_049EF0: db $93, $36, $18, $AD : db $70, $87 ; 0x14A0\u20130x14A3: 0x093, 0x736, 0x718, 0x8AD\n#_049EF6: db $93, $5B, $18, $A9 : db $79, $87 ; 0x14A4\u20130x14A7: 0x993, 0x75B, 0x718, 0x8A9\n#_049EFC: db $A8, $AA, $A9, $3D : db $77, $78 ; 0x14A8\u20130x14AB: 0x7A8, 0x7AA, 0x8A9, 0x73D\n#_049F02: db $C8, $EE, $5F, $60 : db $77, $99 ; 0x14AC\u20130x14AF: 0x7C8, 0x7EE, 0x95F, 0x960\n#_049F08: db $4E, $9A, $9C, $49 : db $87, $78 ; 0x14B0\u20130x14B3: 0x74E, 0x89A, 0x89C, 0x749\n#_049F0E: db $FA, $B8, $AD, $AD : db $77, $77 ; 0x14B4\u20130x14B7: 0x7FA, 0x7B8, 0x7AD, 0x7AD\n#_049F14: db $C4, $93, $DB, $C3 : db $77, $77 ; 0x14B8\u20130x14BB: 0x7C4, 0x793, 0x7DB, 0x7C3\n#_049F1A: db $C9, $C6, $41, $45 : db $77, $88 ; 0x14BC\u20130x14BF: 0x7C9, 0x7C6, 0x841, 0x845\n#_049F20: db $F8, $4E, $C3, $4A : db $78, $78 ; 0x14C0\u20130x14C3: 0x8F8, 0x74E, 0x8C3, 0x74A\n#_049F26: db $F8, $08, $AC, $D0 : db $78, $77 ; 0x14C4\u20130x14C7: 0x8F8, 0x708, 0x7AC, 0x7D0\n#_049F2C: db $C6, $36, $CA, $F8 : db $70, $77 ; 0x14C8\u20130x14CB: 0x0C6, 0x736, 0x7CA, 0x7F8\n#_049F32: db $A7, $C6, $62, $A2 : db $77, $97 ; 0x14CC\u20130x14CF: 0x7A7, 0x7C6, 0x762, 0x9A2\n#_049F38: db $C6, $36, $C6, $26 : db $70, $78 ; 0x14D0\u20130x14D3: 0x0C6, 0x736, 0x8C6, 0x726\n#_049F3E: db $C6, $34, $DA, $AD : db $78, $77 ; 0x14D4\u20130x14D7: 0x8C6, 0x734, 0x7DA, 0x7AD\n#_049F44: db $36, $A7, $45, $03 : db $07, $88 ; 0x14D8\u20130x14DB: 0x736, 0x0A7, 0x845, 0x803\n#_049F4A: db $B4, $45, $03, $9D : db $78, $87 ; 0x14DC\u20130x14DF: 0x8B4, 0x745, 0x703, 0x89D\n#_049F50: db $25, $1A, $12, $34 : db $88, $00 ; 0x14E0\u20130x14E3: 0x825, 0x81A, 0x012, 0x034\n#_049F56: db $C4, $65, $64, $66 : db $09, $99 ; 0x14E4\u20130x14E7: 0x9C4, 0x065, 0x964, 0x966\n#_049F5C: db $63, $65, $68, $69 : db $19, $99 ; 0x14E8\u20130x14EB: 0x963, 0x165, 0x968, 0x969\n#_049F62: db $34, $63, $6C, $6D : db $01, $99 ; 0x14EC\u20130x14EF: 0x134, 0x063, 0x96C, 0x96D\n#_049F68: db $CA, $DD, $68, $6E : db $00, $99 ; 0x14F0\u20130x14F3: 0x0CA, 0x0DD, 0x968, 0x96E\n#_049F6E: db $66, $6D, $AA, $CA : db $99, $20 ; 0x14F4\u20130x14F7: 0x966, 0x96D, 0x0AA, 0x2CA\n#_049F74: db $C8, $73, $3F, $70 : db $09, $29 ; 0x14F8\u20130x14FB: 0x9C8, 0x073, 0x93F, 0x270\n#_049F7A: db $65, $6B, $D6, $D5 : db $99, $33 ; 0x14FC\u20130x14FF: 0x965, 0x96B, 0x3D6, 0x3D5\n#_049F80: db $34, $E6, $DD, $A3 : db $00, $33 ; 0x1500\u20130x1503: 0x034, 0x0E6, 0x3DD, 0x3A3\n#_049F86: db $34, $AF, $34, $6C : db $02, $01 ; 0x1504\u20130x1507: 0x234, 0x0AF, 0x134, 0x06C\n#_049F8C: db $CE, $34, $CE, $34 : db $00, $00 ; 0x1508\u20130x150B: 0x0CE, 0x034, 0x0CE, 0x034\n#_049F92: db $62, $35, $C9, $C9 : db $12, $00 ; 0x150C\u20130x150F: 0x262, 0x135, 0x0C9, 0x0C9\n#_049F98: db $24, $8D, $34, $21 : db $78, $02 ; 0x1510\u20130x1513: 0x824, 0x78D, 0x234, 0x021\n#_049F9E: db $6C, $94, $61, $83 : db $18, $11 ; 0x1514\u20130x1517: 0x86C, 0x194, 0x161, 0x183\n#_049FA4: db $C9, $FE, $78, $78 : db $01, $22 ; 0x1518\u20130x151B: 0x1C9, 0x0FE, 0x278, 0x278\n#_049FAA: db $78, $7A, $50, $2C : db $29, $12 ; 0x151C\u20130x151F: 0x978, 0x27A, 0x250, 0x12C\n#_049FB0: db $6C, $4F, $C9, $64 : db $11, $02 ; 0x1520\u20130x1523: 0x16C, 0x14F, 0x2C9, 0x064\n#_049FB6: db $7B, $77, $20, $81 : db $29, $29 ; 0x1524\u20130x1527: 0x97B, 0x277, 0x920, 0x281\n#_049FBC: db $7E, $8C, $78, $84 : db $22, $29 ; 0x1528\u20130x152B: 0x27E, 0x28C, 0x978, 0x284\n#_049FC2: db $86, $78, $8C, $83 : db $99, $21 ; 0x152C\u20130x152F: 0x986, 0x978, 0x18C, 0x283\n#_049FC8: db $7E, $8B, $86, $88 : db $29, $22 ; 0x1530\u20130x1533: 0x97E, 0x28B, 0x286, 0x288\n#_049FCE: db $78, $8E, $7C, $8C : db $19, $92 ; 0x1534\u20130x1537: 0x978, 0x18E, 0x27C, 0x98C\n#_049FD4: db $1C, $81, $F2, $91 : db $22, $19 ; 0x1538\u20130x153B: 0x21C, 0x281, 0x9F2, 0x191\n#_049FDA: db $80, $7B, $23, $7A : db $29, $29 ; 0x153C\u20130x153F: 0x980, 0x27B, 0x923, 0x27A\n#_049FE0: db $78, $8C, $73, $78 : db $22, $82 ; 0x1540\u20130x1543: 0x278, 0x28C, 0x273, 0x878\n#_049FE6: db $78, $83, $78, $24 : db $29, $21 ; 0x1544\u20130x1547: 0x978, 0x283, 0x178, 0x224\n#_049FEC: db $78, $82, $78, $77 : db $29, $29 ; 0x1548\u20130x154B: 0x978, 0x282, 0x978, 0x277\n#_049FF2: db $85, $63, $78, $8D : db $82, $29 ; 0x154C\u20130x154F: 0x285, 0x863, 0x978, 0x28D\n#_049FF8: db $78, $99, $88, $78 : db $29, $22 ; 0x1550\u20130x1553: 0x978, 0x299, 0x288, 0x278\n#_049FFE: db $88, $9A, $78, $81 : db $29, $22 ; 0x1554\u20130x1557: 0x988, 0x29A, 0x278, 0x281\n#_04A004: db $9C, $9B, $ED, $81 : db $99, $12 ; 0x1558\u20130x155B: 0x99C, 0x99B, 0x2ED, 0x181\n#_04A00A: db $91, $80, $81, $7C : db $92, $99 ; 0x155C\u20130x155F: 0x291, 0x980, 0x981, 0x97C\n#_04A010: db $7D, $80, $77, $84 : db $92, $99 ; 0x1560\u20130x1563: 0x27D, 0x980, 0x977, 0x984\n#_04A016: db $97, $86, $95, $78 : db $99, $92 ; 0x1564\u20130x1567: 0x997, 0x986, 0x295, 0x978\n#_04A01C: db $30, $36, $AE, $E7 : db $20, $21 ; 0x1568\u20130x156B: 0x030, 0x236, 0x1AE, 0x2E7\n#_04A022: db $9B, $87, $A6, $90 : db $92, $29 ; 0x156C\u20130x156F: 0x29B, 0x987, 0x9A6, 0x290\n#_04A028: db $8F, $84, $87, $89 : db $29, $22 ; 0x1570\u20130x1573: 0x98F, 0x284, 0x287, 0x289\n#_04A02E: db $80, $66, $A2, $80 : db $21, $92 ; 0x1574\u20130x1577: 0x180, 0x266, 0x2A2, 0x980\n#_04A034: db $97, $76, $81, $7A : db $99, $22 ; 0x1578\u20130x157B: 0x997, 0x976, 0x281, 0x27A\n#_04A03A: db $9B, $12, $13, $13 : db $93, $33 ; 0x157C\u20130x157F: 0x39B, 0x912, 0x313, 0x313\n#_04A040: db $1D, $CD, $FB, $CD : db $32, $22 ; 0x1580\u20130x1583: 0x21D, 0x3CD, 0x2FB, 0x2CD\n#_04A046: db $CD, $D9, $D9, $CD : db $22, $22 ; 0x1584\u20130x1587: 0x2CD, 0x2D9, 0x2D9, 0x2CD\n#_04A04C: db $CD, $CD, $C7, $CD : db $22, $22 ; 0x1588\u20130x158B: 0x2CD, 0x2CD, 0x2C7, 0x2CD\n#_04A052: db $3A, $9D, $CD, $25 : db $23, $23 ; 0x158C\u20130x158F: 0x33A, 0x29D, 0x3CD, 0x225\n#_04A058: db $25, $25, $25, $BA : db $33, $32 ; 0x1590\u20130x1593: 0x325, 0x325, 0x225, 0x3BA\n#_04A05E: db $E4, $FA, $25, $D5 : db $22, $50 ; 0x1594\u20130x1597: 0x2E4, 0x2FA, 0x025, 0x5D5\n#_04A064: db $C5, $9D, $F9, $C8 : db $23, $22 ; 0x1598\u20130x159B: 0x3C5, 0x29D, 0x2F9, 0x2C8\n#_04A06A: db $D4, $6D, $34, $36 : db $01, $00 ; 0x159C\u20130x159F: 0x1D4, 0x06D, 0x034, 0x036\n#_04A070: db $CE, $CD, $CD, $C7 : db $02, $22 ; 0x15A0\u20130x15A3: 0x2CE, 0x0CD, 0x2CD, 0x2C7\n#_04A076: db $0F, $36, $CD, $E9 : db $20, $22 ; 0x15A4\u20130x15A7: 0x00F, 0x236, 0x2CD, 0x2E9\n#_04A07C: db $3A, $00, $63, $85 : db $23, $13 ; 0x15A8\u20130x15AB: 0x33A, 0x200, 0x363, 0x185\n#_04A082: db $1C, $36, $33, $25 : db $12, $25 ; 0x15AC\u20130x15AF: 0x21C, 0x136, 0x533, 0x225\n#_04A088: db $C4, $9F, $CF, $34 : db $00, $00 ; 0x15B0\u20130x15B3: 0x0C4, 0x09F, 0x0CF, 0x034\n#_04A08E: db $06, $67, $E8, $71 : db $11, $11 ; 0x15B4\u20130x15B7: 0x106, 0x167, 0x1E8, 0x171\n#_04A094: db $76, $67, $A3, $D5 : db $11, $00 ; 0x15B8\u20130x15BB: 0x176, 0x167, 0x0A3, 0x0D5\n#_04A09A: db $20, $7C, $D5, $76 : db $27, $00 ; 0x15BC\u20130x15BF: 0x720, 0x27C, 0x0D5, 0x076\n#_04A0A0: db $34, $36, $36, $36 : db $00, $00 ; 0x15C0\u20130x15C3: 0x034, 0x036, 0x036, 0x036\n#_04A0A6: db $12, $11, $34, $36 : db $00, $00 ; 0x15C4\u20130x15C7: 0x012, 0x011, 0x034, 0x036\n#_04A0AC: db $34, $34, $34, $71 : db $00, $00 ; 0x15C8\u20130x15CB: 0x034, 0x034, 0x034, 0x071\n#_04A0B2: db $E8, $38, $0B, $2E : db $03, $03 ; 0x15CC\u20130x15CF: 0x3E8, 0x038, 0x30B, 0x02E\n#_04A0B8: db $30, $0D, $A3, $E7 : db $32, $01 ; 0x15D0\u20130x15D3: 0x230, 0x30D, 0x1A3, 0x0E7\n#_04A0BE: db $6C, $6C, $6C, $6D : db $11, $11 ; 0x15D4\u20130x15D7: 0x16C, 0x16C, 0x16C, 0x16D\n#_04A0C4: db $D8, $C8, $0A, $DD : db $30, $03 ; 0x15D8\u20130x15DB: 0x0D8, 0x3C8, 0x30A, 0x0DD\n#_04A0CA: db $34, $F8, $F9, $FB : db $03, $33 ; 0x15DC\u20130x15DF: 0x334, 0x0F8, 0x3F9, 0x3FB\n#_04A0D0: db $B0, $34, $FD, $FE : db $00, $33 ; 0x15E0\u20130x15E3: 0x0B0, 0x034, 0x3FD, 0x3FE\n#_04A0D6: db $00, $34, $0B, $0D : db $40, $44 ; 0x15E4\u20130x15E7: 0x000, 0x434, 0x40B, 0x40D\n#_04A0DC: db $34, $4C, $15, $36 : db $07, $40 ; 0x15E8\u20130x15EB: 0x734, 0x04C, 0x015, 0x436\n#_04A0E2: db $C4, $A9, $0F, $34 : db $10, $20 ; 0x15EC\u20130x15EF: 0x0C4, 0x1A9, 0x00F, 0x234\n#_04A0E8: db $36, $FD, $A5, $34 : db $01, $00 ; 0x15F0\u20130x15F3: 0x136, 0x0FD, 0x0A5, 0x034\n#_04A0EE: db $34, $34, $36, $DC : db $00, $05 ; 0x15F4\u20130x15F7: 0x034, 0x034, 0x536, 0x0DC\n#_04A0F4: db $DE, $E0, $F2, $E9 : db $55, $05 ; 0x15F8\u20130x15FB: 0x5DE, 0x5E0, 0x5F2, 0x0E9\n#_04A0FA: db $EA, $EC, $7F, $34 : db $55, $00 ; 0x15FC\u20130x15FF: 0x5EA, 0x5EC, 0x07F, 0x034\n#_04A100: db $35, $34, $75, $93 : db $00, $93 ; 0x1600\u20130x1603: 0x035, 0x034, 0x375, 0x993\n#_04A106: db $81, $D4, $4E, $E7 : db $10, $11 ; 0x1604\u20130x1607: 0x081, 0x1D4, 0x14E, 0x1E7\n#_04A10C: db $D6, $17, $36, $C9 : db $20, $00 ; 0x1608\u20130x160B: 0x0D6, 0x217, 0x036, 0x0C9\n#_04A112: db $D9, $35, $34, $6D : db $00, $01 ; 0x160C\u20130x160F: 0x0D9, 0x035, 0x134, 0x06D\n#_04A118: db $35, $AF, $6D, $34 : db $02, $10 ; 0x1610\u20130x1613: 0x235, 0x0AF, 0x06D, 0x134\n#_04A11E: db $A8, $34, $F0, $A0 : db $00, $10 ; 0x1614\u20130x1617: 0x0A8, 0x034, 0x0F0, 0x1A0\n#_04A124: db $A3, $A0, $F0, $A5 : db $00, $11 ; 0x1618\u20130x161B: 0x0A3, 0x0A0, 0x1F0, 0x1A5\n#_04A12A: db $F5, $C4, $F5, $17 : db $11, $12 ; 0x161C\u20130x161F: 0x1F5, 0x1C4, 0x2F5, 0x117\n#_04A130: db $16, $26, $79, $B6 : db $20, $00 ; 0x1620\u20130x1623: 0x016, 0x226, 0x079, 0x0B6\n#_04A136: db $78, $78, $A8, $EE : db $00, $01 ; 0x1624\u20130x1627: 0x078, 0x078, 0x1A8, 0x0EE\n#_04A13C: db $86, $5B, $78, $86 : db $11, $11 ; 0x1628\u20130x162B: 0x186, 0x15B, 0x178, 0x186\n#_04A142: db $A9, $C8, $E0, $34 : db $90, $00 ; 0x162C\u20130x162F: 0x0A9, 0x9C8, 0x0E0, 0x034\n#_04A148: db $79, $34, $6C, $79 : db $10, $31 ; 0x1630\u20130x1633: 0x079, 0x134, 0x16C, 0x379\n#_04A14E: db $6C, $34, $79, $79 : db $30, $31 ; 0x1634\u20130x1637: 0x06C, 0x334, 0x179, 0x379\n#_04A154: db $79, $0F, $34, $AB : db $32, $09 ; 0x1638\u20130x163B: 0x279, 0x30F, 0x934, 0x0AB\n#_04A15A: db $34, $AB, $0F, $0F : db $09, $22 ; 0x163C\u20130x163F: 0x934, 0x0AB, 0x20F, 0x20F\n#_04A160: db $AE, $0F, $36, $34 : db $22, $00 ; 0x1640\u20130x1643: 0x2AE, 0x20F, 0x036, 0x034\n#_04A166: db $B2, $B3, $B2, $0F : db $99, $92 ; 0x1644\u20130x1647: 0x9B2, 0x9B3, 0x2B2, 0x90F\n#_04A16C: db $B0, $36, $B3, $34 : db $20, $90 ; 0x1648\u20130x164B: 0x0B0, 0x236, 0x0B3, 0x934\n#_04A172: db $AB, $B3, $AB, $0F : db $99, $92 ; 0x164C\u20130x164F: 0x9AB, 0x9B3, 0x2AB, 0x90F\n#_04A178: db $AC, $AD, $AE, $B2 : db $99, $99 ; 0x1650\u20130x1653: 0x9AC, 0x9AD, 0x9AE, 0x9B2\n#_04A17E: db $B3, $B2, $AE, $E6 : db $99, $92 ; 0x1654\u20130x1657: 0x9B3, 0x9B2, 0x2AE, 0x9E6\n#_04A184: db $EC, $8A, $34, $C9 : db $23, $00 ; 0x1658\u20130x165B: 0x3EC, 0x28A, 0x034, 0x0C9\n#_04A18A: db $85, $E1, $36, $83 : db $10, $03 ; 0x165C\u20130x165F: 0x085, 0x1E1, 0x336, 0x083\n#_04A190: db $34, $34, $34, $E1 : db $00, $00 ; 0x1660\u20130x1663: 0x034, 0x034, 0x034, 0x0E1\n#_04A196: db $27, $34, $DA, $AF : db $20, $09 ; 0x1664\u20130x1667: 0x027, 0x234, 0x9DA, 0x0AF\n#_04A19C: db $F6, $F6, $F6, $F6 : db $55, $55 ; 0x1668\u20130x166B: 0x5F6, 0x5F6, 0x5F6, 0x5F6\n#_04A1A2: db $AB, $E1, $E1, $F6 : db $90, $05 ; 0x166C\u20130x166F: 0x0AB, 0x9E1, 0x5E1, 0x0F6\n#_04A1A8: db $F6, $F6, $81, $36 : db $55, $60 ; 0x1670\u20130x1673: 0x5F6, 0x5F6, 0x081, 0x636\n#_04A1AE: db $29, $B2, $7E, $34 : db $29, $30 ; 0x1674\u20130x1677: 0x929, 0x2B2, 0x07E, 0x334\n#_04A1B4: db $36, $7E, $39, $B0 : db $03, $29 ; 0x1678\u20130x167B: 0x336, 0x07E, 0x939, 0x2B0\n#_04A1BA: db $B0, $F6, $F6, $39 : db $95, $52 ; 0x167C\u20130x167F: 0x5B0, 0x9F6, 0x2F6, 0x539\n#_04A1C0: db $DA, $DA, $F6, $34 : db $00, $50 ; 0x1680\u20130x1683: 0x0DA, 0x0DA, 0x0F6, 0x534\n#_04A1C6: db $7C, $B3, $9D, $36 : db $69, $20 ; 0x1684\u20130x1687: 0x97C, 0x6B3, 0x09D, 0x236\n#_04A1CC: db $B3, $B3, $F6, $7C : db $99, $56 ; 0x1688\u20130x168B: 0x9B3, 0x9B3, 0x6F6, 0x57C\n#_04A1D2: db $F6, $27, $27, $B3 : db $52, $29 ; 0x168C\u20130x168F: 0x2F6, 0x527, 0x927, 0x2B3\n#_04A1D8: db $27, $87, $9D, $34 : db $26, $20 ; 0x1690\u20130x1693: 0x627, 0x287, 0x09D, 0x234\n#_04A1DE: db $AC, $AD, $AD, $36 : db $99, $90 ; 0x1694\u20130x1697: 0x9AC, 0x9AD, 0x0AD, 0x936\n#_04A1E4: db $F2, $B3, $AA, $B3 : db $09, $99 ; 0x1698\u20130x169B: 0x9F2, 0x0B3, 0x9AA, 0x9B3\n#_04A1EA: db $B3, $7E, $AB, $AC : db $93, $09 ; 0x169C\u20130x169F: 0x3B3, 0x97E, 0x9AB, 0x0AC\n#_04A1F0: db $AD, $AD, $AD, $B1 : db $99, $99 ; 0x16A0\u20130x16A3: 0x9AD, 0x9AD, 0x9AD, 0x9B1\n#_04A1F6: db $34, $7F, $F9, $FB : db $30, $33 ; 0x16A4\u20130x16A7: 0x034, 0x37F, 0x3F9, 0x3FB\n#_04A1FC: db $76, $FD, $77, $95 : db $03, $60 ; 0x16A8\u20130x16AB: 0x376, 0x0FD, 0x077, 0x695\n#_04A202: db $0B, $0D, $7F, $35 : db $44, $00 ; 0x16AC\u20130x16AF: 0x40B, 0x40D, 0x07F, 0x035\n#_04A208: db $00, $20, $13, $B4 : db $15, $39 ; 0x16B0\u20130x16B3: 0x500, 0x120, 0x913, 0x3B4\n#_04A20E: db $1D, $40, $ED, $FE : db $35, $22 ; 0x16B4\u20130x16B7: 0x51D, 0x340, 0x2ED, 0x2FE\n#_04A214: db $C9, $B8, $D1, $C8 : db $02, $20 ; 0x16B8\u20130x16BB: 0x2C9, 0x0B8, 0x0D1, 0x2C8\n#_04A21A: db $53, $ED, $CA, $DC : db $12, $02 ; 0x16BC\u20130x16BF: 0x253, 0x1ED, 0x2CA, 0x0DC\n#_04A220: db $1D, $C5, $3A, $3F : db $30, $25 ; 0x16C0\u20130x16C3: 0x01D, 0x3C5, 0x53A, 0x23F\n#_04A226: db $6D, $1D, $D5, $34 : db $11, $00 ; 0x16C4\u20130x16C7: 0x16D, 0x11D, 0x0D5, 0x034\n#_04A22C: db $CE, $E6, $37, $5C : db $02, $21 ; 0x16C8\u20130x16CB: 0x2CE, 0x0E6, 0x137, 0x25C\n#_04A232: db $E6, $ED, $33, $CE : db $22, $20 ; 0x16CC\u20130x16CF: 0x2E6, 0x2ED, 0x033, 0x2CE\n#_04A238: db $B7, $17, $5D, $EB : db $93, $11 ; 0x16D0\u20130x16D3: 0x3B7, 0x917, 0x15D, 0x1EB\n#_04A23E: db $DB, $FD, $32, $00 : db $02, $21 ; 0x16D4\u20130x16D7: 0x2DB, 0x0FD, 0x132, 0x200\n#_04A244: db $C5, $53, $39, $61 : db $01, $21 ; 0x16D8\u20130x16DB: 0x1C5, 0x053, 0x139, 0x261\n#_04A24A: db $16, $8B, $1C, $E8 : db $37, $31 ; 0x16DC\u20130x16DF: 0x716, 0x38B, 0x11C, 0x3E8\n#_04A250: db $37, $C5, $6A, $22 : db $20, $12 ; 0x16E0\u20130x16E3: 0x037, 0x2C5, 0x26A, 0x122\n#_04A256: db $53, $E3, $DB, $20 : db $10, $05 ; 0x16E4\u20130x16E7: 0x053, 0x1E3, 0x5DB, 0x020\n#_04A25C: db $E6, $23, $D3, $6A : db $23, $01 ; 0x16E8\u20130x16EB: 0x3E6, 0x223, 0x1D3, 0x06A\n#_04A262: db $34, $C4, $F9, $AB : db $01, $60 ; 0x16EC\u20130x16EF: 0x134, 0x0C4, 0x0F9, 0x6AB\n#_04A268: db $D5, $37, $C8, $20 : db $02, $05 ; 0x16F0\u20130x16F3: 0x2D5, 0x037, 0x5C8, 0x020\n#_04A26E: db $6D, $E6, $E6, $3A : db $12, $22 ; 0x16F4\u20130x16F7: 0x26D, 0x1E6, 0x2E6, 0x23A\n#_04A274: db $27, $FE, $32, $6A : db $12, $21 ; 0x16F8\u20130x16FB: 0x227, 0x1FE, 0x132, 0x26A\n#_04A27A: db $BB, $F2, $4F, $32 : db $91, $57 ; 0x16FC\u20130x16FF: 0x1BB, 0x9F2, 0x74F, 0x532\n#_04A280: db $BD, $C5, $67, $36 : db $90, $12 ; 0x1700\u20130x1703: 0x0BD, 0x9C5, 0x267, 0x136\n#_04A286: db $33, $33, $33, $C5 : db $22, $20 ; 0x1704\u20130x1707: 0x233, 0x233, 0x033, 0x2C5\n#_04A28C: db $0C, $D8, $6C, $C0 : db $13, $19 ; 0x1708\u20130x170B: 0x30C, 0x1D8, 0x96C, 0x1C0\n#_04A292: db $69, $6B, $3F, $76 : db $33, $23 ; 0x170C\u20130x170F: 0x369, 0x36B, 0x33F, 0x276\n#_04A298: db $78, $76, $34, $EA : db $30, $03 ; 0x1710\u20130x1713: 0x078, 0x376, 0x334, 0x0EA\n#_04A29E: db $34, $02, $C2, $05 : db $04, $94 ; 0x1714\u20130x1717: 0x434, 0x002, 0x4C2, 0x905\n#_04A2A4: db $C4, $C5, $C5, $35 : db $99, $94 ; 0x1718\u20130x171B: 0x9C4, 0x9C5, 0x4C5, 0x935\n#_04A2AA: db $C7, $C8, $C8, $CA : db $99, $93 ; 0x171C\u20130x171F: 0x9C7, 0x9C8, 0x3C8, 0x9CA\n#_04A2B0: db $34, $CA, $CA, $CA : db $03, $33 ; 0x1720\u20130x1723: 0x334, 0x0CA, 0x3CA, 0x3CA\n#_04A2B6: db $CE, $BF, $34, $E7 : db $99, $03 ; 0x1724\u20130x1727: 0x9CE, 0x9BF, 0x334, 0x0E7\n#_04A2BC: db $D5, $34, $D1, $DC : db $90, $39 ; 0x1728\u20130x172B: 0x0D5, 0x934, 0x9D1, 0x3DC\n#_04A2C2: db $DD, $D9, $DA, $DA : db $99, $99 ; 0x172C\u20130x172F: 0x9DD, 0x9D9, 0x9DA, 0x9DA\n#_04A2C8: db $F0, $DC, $DD, $DF : db $09, $99 ; 0x1730\u20130x1733: 0x9F0, 0x0DC, 0x9DD, 0x9DF\n#_04A2CE: db $E1, $E1, $F0, $34 : db $99, $00 ; 0x1734\u20130x1737: 0x9E1, 0x9E1, 0x0F0, 0x034\n#_04A2D4: db $34, $26, $34, $2C : db $04, $04 ; 0x1738\u20130x173B: 0x434, 0x026, 0x434, 0x02C\n#_04A2DA: db $E4, $CE, $E8, $D4 : db $93, $99 ; 0x173C\u20130x173F: 0x3E4, 0x9CE, 0x9E8, 0x9D4\n#_04A2E0: db $1C, $9D, $34, $0B : db $42, $31 ; 0x1740\u20130x1743: 0x21C, 0x49D, 0x134, 0x30B\n#_04A2E6: db $0B, $0B, $9D, $FC : db $11, $23 ; 0x1744\u20130x1747: 0x10B, 0x10B, 0x39D, 0x2FC\n#_04A2EC: db $76, $36, $9D, $34 : db $60, $20 ; 0x1748\u20130x174B: 0x076, 0x636, 0x09D, 0x234\n#_04A2F2: db $36, $34, $34, $F6 : db $00, $35 ; 0x174C\u20130x174F: 0x036, 0x034, 0x534, 0x3F6\n#_04A2F8: db $9D, $36, $38, $34 : db $20, $30 ; 0x1750\u20130x1753: 0x09D, 0x236, 0x038, 0x334\n#_04A2FE: db $34, $34, $0B, $0B : db $00, $11 ; 0x1754\u20130x1757: 0x034, 0x034, 0x10B, 0x10B\n#_04A304: db $EC, $ED, $EF, $F0 : db $99, $99 ; 0x1758\u20130x175B: 0x9EC, 0x9ED, 0x9EF, 0x9F0\n#_04A30A: db $EC, $EE, $F1, $F3 : db $99, $99 ; 0x175C\u20130x175F: 0x9EC, 0x9EE, 0x9F1, 0x9F3\n#_04A310: db $F5, $F3, $F4, $F5 : db $99, $99 ; 0x1760\u20130x1763: 0x9F5, 0x9F3, 0x9F4, 0x9F5\n#_04A316: db $FA, $EE, $F4, $FB : db $99, $99 ; 0x1764\u20130x1767: 0x9FA, 0x9EE, 0x9F4, 0x9FB\n#_04A31C: db $F4, $F8, $F9, $F8 : db $99, $99 ; 0x1768\u20130x176B: 0x9F4, 0x9F8, 0x9F9, 0x9F8\n#_04A322: db $F5, $F3, $F5, $FA : db $99, $99 ; 0x176C\u20130x176F: 0x9F5, 0x9F3, 0x9F5, 0x9FA\n#_04A328: db $24, $F8, $F3, $F9 : db $19, $99 ; 0x1770\u20130x1773: 0x924, 0x1F8, 0x9F3, 0x9F9\n#_04A32E: db $F3, $F4, $F9, $F8 : db $99, $99 ; 0x1774\u20130x1777: 0x9F3, 0x9F4, 0x9F9, 0x9F8\n#_04A334: db $03, $05, $24, $F4 : db $AA, $19 ; 0x1778\u20130x177B: 0xA03, 0xA05, 0x924, 0x1F4\n#_04A33A: db $07, $F5, $F3, $03 : db $A9, $9A ; 0x177C\u20130x177F: 0x907, 0xAF5, 0xAF3, 0x903\n#_04A340: db $0A, $09, $24, $FE : db $AA, $19 ; 0x1780\u20130x1783: 0xA0A, 0xA09, 0x924, 0x1FE\n#_04A346: db $F5, $F6, $F6, $0F : db $99, $9A ; 0x1784\u20130x1787: 0x9F5, 0x9F6, 0xAF6, 0x90F\n#_04A34C: db $11, $F6, $13, $FB : db $A9, $A9 ; 0x1788\u20130x178B: 0x911, 0xAF6, 0x913, 0xAFB\n#_04A352: db $C5, $FE, $FE, $FE : db $59, $99 ; 0x178C\u20130x178F: 0x9C5, 0x5FE, 0x9FE, 0x9FE\n#_04A358: db $02, $04, $09, $03 : db $AA, $AA ; 0x1790\u20130x1793: 0xA02, 0xA04, 0xA09, 0xA03\n#_04A35E: db $0C, $03, $FC, $02 : db $AA, $9A ; 0x1794\u20130x1797: 0xA0C, 0xA03, 0xAFC, 0x902\n#_04A364: db $04, $09, $03, $03 : db $AA, $AA ; 0x1798\u20130x179B: 0xA04, 0xA09, 0xA03, 0xA03\n#_04A36A: db $0C, $F6, $FC, $FC : db $A9, $99 ; 0x179C\u20130x179F: 0x90C, 0xAF6, 0x9FC, 0x9FC\n#_04A370: db $FC, $FE, $12, $FC : db $99, $A9 ; 0x17A0\u20130x17A3: 0x9FC, 0x9FE, 0x912, 0xAFC\n#_04A376: db $FC, $FB, $02, $04 : db $99, $AA ; 0x17A4\u20130x17A7: 0x9FC, 0x9FB, 0xA02, 0xA04\n#_04A37C: db $05, $15, $08, $08 : db $AA, $AA ; 0x17A8\u20130x17AB: 0xA05, 0xA15, 0xA08, 0xA08\n#_04A382: db $17, $F6, $1D, $04 : db $A9, $AA ; 0x17AC\u20130x17AF: 0x917, 0xAF6, 0xA1D, 0xA04\n#_04A388: db $19, $21, $23, $08 : db $AA, $AA ; 0x17B0\u20130x17B3: 0xA19, 0xA21, 0xA23, 0xA08\n#_04A38E: db $FE, $0D, $FE, $11 : db $9A, $9A ; 0x17B4\u20130x17B7: 0xAFE, 0x90D, 0xAFE, 0x911\n#_04A394: db $1A, $F6, $F6, $F6 : db $A9, $99 ; 0x17B8\u20130x17BB: 0x91A, 0xAF6, 0x9F6, 0x9F6\n#_04A39A: db $F6, $FE, $F3, $F0 : db $99, $99 ; 0x17BC\u20130x17BF: 0x9F6, 0x9FE, 0x9F3, 0x9F0\n#_04A3A0: db $00, $FE, $FE, $F0 : db $A9, $99 ; 0x17C0\u20130x17C3: 0x900, 0xAFE, 0x9FE, 0x9F0\n#_04A3A6: db $F0, $F0, $F0, $F0 : db $99, $99 ; 0x17C4\u20130x17C7: 0x9F0, 0x9F0, 0x9F0, 0x9F0\n#_04A3AC: db $F6, $2B, $2D, $FA : db $9A, $A9 ; 0x17C8\u20130x17CB: 0xAF6, 0x92B, 0x92D, 0xAFA\n#_04A3B2: db $2E, $2F, $30, $2E : db $AA, $AA ; 0x17CC\u20130x17CF: 0xA2E, 0xA2F, 0xA30, 0xA2E\n#_04A3B8: db $30, $32, $F0, $2C : db $AA, $9A ; 0x17D0\u20130x17D3: 0xA30, 0xA32, 0xAF0, 0x92C\n#_04A3BE: db $FA, $2E, $30, $33 : db $9A, $AA ; 0x17D4\u20130x17D7: 0xAFA, 0x92E, 0xA30, 0xA33\n#_04A3C4: db $2E, $33, $2F, $FC : db $AA, $A9 ; 0x17D8\u20130x17DB: 0xA2E, 0xA33, 0x92F, 0xAFC\n#_04A3CA: db $33, $2F, $FE, $2F : db $AA, $9A ; 0x17DC\u20130x17DF: 0xA33, 0xA2F, 0xAFE, 0x92F\n#_04A3D0: db $15, $04, $2F, $2F : db $AA, $AA ; 0x17E0\u20130x17E3: 0xA15, 0xA04, 0xA2F, 0xA2F\n#_04A3D6: db $30, $FC, $2F, $30 : db $A9, $AA ; 0x17E4\u20130x17E7: 0x930, 0xAFC, 0xA2F, 0xA30\n#_04A3DC: db $FE, $19, $0B, $04 : db $9A, $AA ; 0x17E8\u20130x17EB: 0xAFE, 0x919, 0xA0B, 0xA04\n#_04A3E2: db $30, $33, $1A, $10 : db $AA, $AA ; 0x17EC\u20130x17EF: 0xA30, 0xA33, 0xA1A, 0xA10\n#_04A3E8: db $F6, $F6, $2F, $FE : db $99, $A9 ; 0x17F0\u20130x17F3: 0x9F6, 0x9F6, 0x92F, 0xAFE\n#_04A3EE: db $FE, $FE, $12, $35 : db $99, $AA ; 0x17F4\u20130x17F7: 0x9FE, 0x9FE, 0xA12, 0xA35\n#_04A3F4: db $C5, $16, $19, $03 : db $5A, $AA ; 0x17F8\u20130x17FB: 0xAC5, 0x516, 0xA19, 0xA03\n#_04A3FA: db $36, $33, $08, $19 : db $AA, $AA ; 0x17FC\u20130x17FF: 0xA36, 0xA33, 0xA08, 0xA19\n#_04A400: db $03, $03, $36, $F9 : db $AA, $A9 ; 0x1800\u20130x1803: 0xA03, 0xA03, 0x936, 0xAF9\n#_04A406: db $FC, $FC, $03, $03 : db $99, $AA ; 0x1804\u20130x1807: 0x9FC, 0x9FC, 0xA03, 0xA03\n#_04A40C: db $03, $03, $36, $36 : db $AA, $AA ; 0x1808\u20130x180B: 0xA03, 0xA03, 0xA36, 0xA36\n#_04A412: db $FE, $FB, $FD, $FD : db $99, $99 ; 0x180C\u20130x180F: 0x9FE, 0x9FB, 0x9FD, 0x9FD\n#_04A418: db $FE, $07, $FE, $F6 : db $9A, $99 ; 0x1810\u20130x1813: 0xAFE, 0x907, 0x9FE, 0x9F6\n#_04A41E: db $F6, $1B, $F0, $F0 : db $9A, $99 ; 0x1814\u20130x1817: 0xAF6, 0x91B, 0x9F0, 0x9F0\n#_04A424: db $F9, $1B, $F0, $F6 : db $9A, $99 ; 0x1818\u20130x181B: 0xAF9, 0x91B, 0x9F0, 0x9F6\n#_04A42A: db $F6, $1B, $2F, $9F : db $9A, $A3 ; 0x181C\u20130x181F: 0xAF6, 0x91B, 0x32F, 0xA9F\n#_04A430: db $DA, $DA, $A5, $34 : db $00, $10 ; 0x1820\u20130x1823: 0x0DA, 0x0DA, 0x0A5, 0x134\n#_04A436: db $A5, $24, $70, $34 : db $11, $10 ; 0x1824\u20130x1827: 0x1A5, 0x124, 0x070, 0x134\n#_04A43C: db $24, $35, $0D, $A5 : db $10, $21 ; 0x1828\u20130x182B: 0x024, 0x135, 0x10D, 0x2A5\n#_04A442: db $27, $0D, $11, $AB : db $13, $30 ; 0x182C\u20130x182F: 0x327, 0x10D, 0x011, 0x3AB\n#_04A448: db $A5, $0E, $71, $C4 : db $12, $01 ; 0x1830\u20130x1833: 0x2A5, 0x10E, 0x171, 0x0C4\n#_04A44E: db $CE, $71, $CE, $C8 : db $20, $20 ; 0x1834\u20130x1837: 0x0CE, 0x271, 0x0CE, 0x2C8\n#_04A454: db $A3, $3C, $3D, $3D : db $0A, $AA ; 0x1838\u20130x183B: 0xAA3, 0x03C, 0xA3D, 0xA3D\n#_04A45A: db $87, $47, $48, $48 : db $3A, $AA ; 0x183C\u20130x183F: 0xA87, 0x347, 0xA48, 0xA48\n#_04A460: db $E6, $4B, $E6, $4C : db $2A, $2A ; 0x1840\u20130x1843: 0xAE6, 0x24B, 0xAE6, 0x24C\n#_04A466: db $EC, $4E, $4E, $4E : db $2A, $AA ; 0x1844\u20130x1847: 0xAEC, 0x24E, 0xA4E, 0xA4E\n#_04A46C: db $45, $54, $56, $4E : db $AA, $AA ; 0x1848\u20130x184B: 0xA45, 0xA54, 0xA56, 0xA4E\n#_04A472: db $E6, $59, $E6, $4C : db $2A, $2A ; 0x184C\u20130x184F: 0xAE6, 0x259, 0xAE6, 0x24C\n#_04A478: db $48, $65, $48, $45 : db $AA, $AA ; 0x1850\u20130x1853: 0xA48, 0xA65, 0xA48, 0xA45\n#_04A47E: db $EC, $4C, $5B, $45 : db $2A, $1A ; 0x1854\u20130x1857: 0xAEC, 0x24C, 0xA5B, 0x145\n#_04A484: db $E6, $6A, $E6, $4D : db $2A, $2A ; 0x1858\u20130x185B: 0xAE6, 0x26A, 0xAE6, 0x24D\n#_04A48A: db $4E, $6D, $4E, $45 : db $AA, $AA ; 0x185C\u20130x185F: 0xA4E, 0xA6D, 0xA4E, 0xA45\n#_04A490: db $5B, $45, $E6, $45 : db $1A, $2A ; 0x1860\u20130x1863: 0xA5B, 0x145, 0xAE6, 0x245\n#_04A496: db $6A, $45, $5B, $40 : db $AA, $1A ; 0x1864\u20130x1867: 0xA6A, 0xA45, 0xA5B, 0x140\n#_04A49C: db $6A, $6A, $6A, $6A : db $AA, $AA ; 0x1868\u20130x186B: 0xA6A, 0xA6A, 0xA6A, 0xA6A\n#_04A4A2: db $6A, $6A, $5B, $51 : db $AA, $15 ; 0x186C\u20130x186F: 0xA6A, 0xA6A, 0x55B, 0x151\n#_04A4A8: db $45, $4E, $45, $45 : db $AA, $AA ; 0x1870\u20130x1873: 0xA45, 0xA4E, 0xA45, 0xA45\n#_04A4AE: db $6A, $6A, $6A, $45 : db $AA, $AA ; 0x1874\u20130x1877: 0xA6A, 0xA6A, 0xA6A, 0xA45\n#_04A4B4: db $E6, $45, $40, $4C : db $2A, $AA ; 0x1878\u20130x187B: 0xAE6, 0x245, 0xA40, 0xA4C\n#_04A4BA: db $5B, $4F, $EC, $45 : db $1A, $2A ; 0x187C\u20130x187F: 0xA5B, 0x14F, 0xAEC, 0x245\n#_04A4C0: db $75, $59, $6E, $45 : db $AA, $AA ; 0x1880\u20130x1883: 0xA75, 0xA59, 0xA6E, 0xA45\n#_04A4C6: db $E6, $45, $54, $6A : db $2A, $AA ; 0x1884\u20130x1887: 0xAE6, 0x245, 0xA54, 0xA6A\n#_04A4CC: db $45, $45, $6A, $EC : db $AA, $A2 ; 0x1888\u20130x188B: 0xA45, 0xA45, 0x26A, 0xAEC\n#_04A4D2: db $40, $ED, $77, $6A : db $A2, $AA ; 0x188C\u20130x188F: 0x240, 0xAED, 0xA77, 0xA6A\n#_04A4D8: db $45, $45, $45, $45 : db $AA, $AA ; 0x1890\u20130x1893: 0xA45, 0xA45, 0xA45, 0xA45\n#_04A4DE: db $45, $40, $EC, $E6 : db $AA, $22 ; 0x1894\u20130x1897: 0xA45, 0xA40, 0x2EC, 0x2E6\n#_04A4E4: db $5B, $EC, $51, $E6 : db $12, $A2 ; 0x1898\u20130x189B: 0x25B, 0x1EC, 0x251, 0xAE6\n#_04A4EA: db $40, $5C, $5E, $40 : db $AA, $AA ; 0x189C\u20130x189F: 0xA40, 0xA5C, 0xA5E, 0xA40\n#_04A4F0: db $40, $40, $74, $28 : db $AA, $A5 ; 0x18A0\u20130x18A3: 0xA40, 0xA40, 0x574, 0xA28\n#_04A4F6: db $E6, $61, $E6, $E6 : db $2A, $22 ; 0x18A4\u20130x18A7: 0xAE6, 0x261, 0x2E6, 0x2E6\n#_04A4FC: db $E6, $E6, $E6, $40 : db $22, $2A ; 0x18A8\u20130x18AB: 0x2E6, 0x2E6, 0xAE6, 0x240\n#_04A502: db $5F, $46, $E6, $79 : db $AA, $2A ; 0x18AC\u20130x18AF: 0xA5F, 0xA46, 0xAE6, 0x279\n#_04A508: db $79, $79, $EC, $E6 : db $AA, $22 ; 0x18B0\u20130x18B3: 0xA79, 0xA79, 0x2EC, 0x2E6\n#_04A50E: db $44, $45, $46, $7C : db $AA, $AA ; 0x18B4\u20130x18B7: 0xA44, 0xA45, 0xA46, 0xA7C\n#_04A514: db $7C, $7E, $73, $6D : db $AA, $AA ; 0x18B8\u20130x18BB: 0xA7C, 0xA7E, 0xA73, 0xA6D\n#_04A51A: db $45, $63, $49, $81 : db $AA, $AA ; 0x18BC\u20130x18BF: 0xA45, 0xA63, 0xA49, 0xA81\n#_04A520: db $82, $83, $81, $3E : db $AA, $AA ; 0x18C0\u20130x18C3: 0xA82, 0xA83, 0xA81, 0xA3E\n#_04A526: db $3C, $7B, $7D, $44 : db $AA, $AA ; 0x18C4\u20130x18C7: 0xA3C, 0xA7B, 0xA7D, 0xA44\n#_04A52C: db $46, $44, $85, $87 : db $AA, $AA ; 0x18C8\u20130x18CB: 0xA46, 0xA44, 0xA85, 0xA87\n#_04A532: db $81, $89, $8B, $81 : db $AA, $AA ; 0x18CC\u20130x18CF: 0xA81, 0xA89, 0xA8B, 0xA81\n#_04A538: db $86, $85, $E6, $45 : db $AA, $2A ; 0x18D0\u20130x18D3: 0xA86, 0xA85, 0xAE6, 0x245\n#_04A53E: db $92, $94, $8E, $95 : db $AA, $AA ; 0x18D4\u20130x18D7: 0xA92, 0xA94, 0xA8E, 0xA95\n#_04A544: db $97, $8F, $93, $92 : db $AA, $AA ; 0x18D8\u20130x18DB: 0xA97, 0xA8F, 0xA93, 0xA92\n#_04A54A: db $45, $40, $41, $9E : db $AA, $AA ; 0x18DC\u20130x18DF: 0xA45, 0xA40, 0xA41, 0xA9E\n#_04A550: db $9F, $A0, $9A, $9C : db $AA, $AA ; 0x18E0\u20130x18E3: 0xA9F, 0xAA0, 0xA9A, 0xA9C\n#_04A556: db $A0, $A1, $A2, $45 : db $AA, $AA ; 0x18E4\u20130x18E7: 0xAA0, 0xAA1, 0xAA2, 0xA45\n#_04A55C: db $E6, $A3, $77, $A6 : db $2A, $AA ; 0x18E8\u20130x18EB: 0xAE6, 0x2A3, 0xA77, 0xAA6\n#_04A562: db $A7, $A5, $A6, $77 : db $AA, $AA ; 0x18EC\u20130x18EF: 0xAA7, 0xAA5, 0xAA6, 0xA77\n#_04A568: db $A3, $4E, $4F, $A3 : db $AA, $AA ; 0x18F0\u20130x18F3: 0xAA3, 0xA4E, 0xA4F, 0xAA3\n#_04A56E: db $A3, $A3, $A3, $A3 : db $AA, $AA ; 0x18F4\u20130x18F7: 0xAA3, 0xAA3, 0xAA3, 0xAA3\n#_04A574: db $A3, $5F, $63, $67 : db $AA, $AA ; 0x18F8\u20130x18FB: 0xAA3, 0xA5F, 0xA63, 0xA67\n#_04A57A: db $3F, $5C, $5E, $5F : db $AA, $AA ; 0x18FC\u20130x18FF: 0xA3F, 0xA5C, 0xA5E, 0xA5F\n#_04A580: db $50, $52, $46, $AD : db $AA, $AA ; 0x1900\u20130x1903: 0xA50, 0xA52, 0xA46, 0xAAD\n#_04A586: db $AD, $AD, $AD, $44 : db $AA, $AA ; 0x1904\u20130x1907: 0xAAD, 0xAAD, 0xAAD, 0xA44\n#_04A58C: db $60, $62, $44, $46 : db $AA, $AA ; 0x1908\u20130x190B: 0xA60, 0xA62, 0xA44, 0xA46\n#_04A592: db $AD, $AD, $44, $3F : db $AA, $AA ; 0x190C\u20130x190F: 0xAAD, 0xAAD, 0xA44, 0xA3F\n#_04A598: db $40, $45, $7E, $5B : db $AA, $AA ; 0x1910\u20130x1913: 0xA40, 0xA45, 0xA7E, 0xA5B\n#_04A59E: db $5D, $40, $E6, $E6 : db $AA, $22 ; 0x1914\u20130x1917: 0xA5D, 0xA40, 0x2E6, 0x2E6\n#_04A5A4: db $4C, $40, $40, $46 : db $AA, $AA ; 0x1918\u20130x191B: 0xA4C, 0xA40, 0xA40, 0xA46\n#_04A5AA: db $A3, $E6, $E6, $A3 : db $A2, $2A ; 0x191C\u20130x191F: 0x2A3, 0xAE6, 0xAE6, 0x2A3\n#_04A5B0: db $AD, $AD, $A3, $7F : db $AA, $AA ; 0x1920\u20130x1923: 0xAAD, 0xAAD, 0xAA3, 0xA7F\n#_04A5B6: db $A3, $A3, $46, $77 : db $AA, $AA ; 0x1924\u20130x1927: 0xAA3, 0xAA3, 0xA46, 0xA77\n#_04A5BC: db $67, $E6, $E6, $E6 : db $A2, $22 ; 0x1928\u20130x192B: 0x267, 0xAE6, 0x2E6, 0x2E6\n#_04A5C2: db $45, $A3, $A3, $46 : db $AA, $AA ; 0x192C\u20130x192F: 0xA45, 0xAA3, 0xAA3, 0xA46\n#_04A5C8: db $E6, $5F, $5B, $40 : db $2A, $AA ; 0x1930\u20130x1933: 0xAE6, 0x25F, 0xA5B, 0xA40\n#_04A5CE: db $40, $44, $46, $A3 : db $AA, $AA ; 0x1934\u20130x1937: 0xA40, 0xA44, 0xA46, 0xAA3\n#_04A5D4: db $39, $A3, $3E, $B0 : db $5A, $5A ; 0x1938\u20130x193B: 0xA39, 0x5A3, 0xA3E, 0x5B0\n#_04A5DA: db $B2, $B3, $C0, $B5 : db $AA, $9A ; 0x193C\u20130x193F: 0xAB2, 0xAB3, 0xAC0, 0x9B5\n#_04A5E0: db $BB, $BC, $B7, $FF : db $AA, $A0 ; 0x1940\u20130x1943: 0xABB, 0xABC, 0x0B7, 0xAFF\n#_04A5E6: db $C1, $C3, $C5, $C6 : db $AA, $AA ; 0x1944\u20130x1947: 0xAC1, 0xAC3, 0xAC5, 0xAC6\n#_04A5EC: db $34, $14, $34, $7F : db $04, $00 ; 0x1948\u20130x194B: 0x434, 0x014, 0x034, 0x07F\n#_04A5F2: db $B2, $34, $CC, $76 : db $A4, $A0 ; 0x194C\u20130x194F: 0x4B2, 0xA34, 0x0CC, 0xA76\n#_04A5F8: db $D0, $95, $34, $34 : db $A0, $00 ; 0x1950\u20130x1953: 0x0D0, 0xA95, 0x034, 0x034\n#_04A5FE: db $E7, $38, $E3, $C6 : db $33, $9A ; 0x1954\u20130x1957: 0x3E7, 0x338, 0xAE3, 0x9C6\n#_04A604: db $34, $BA, $F6, $FD : db $0A, $33 ; 0x1958\u20130x195B: 0xA34, 0x0BA, 0x3F6, 0x3FD\n#_04A60A: db $FE, $C0, $B7, $BD : db $39, $AA ; 0x195C\u20130x195F: 0x9FE, 0x3C0, 0xAB7, 0xABD\n#_04A610: db $F6, $36, $C6, $D4 : db $30, $AA ; 0x1960\u20130x1963: 0x0F6, 0x336, 0xAC6, 0xAD4\n#_04A616: db $C7, $F6, $15, $36 : db $A3, $40 ; 0x1964\u20130x1967: 0x3C7, 0xAF6, 0x015, 0x436\n#_04A61C: db $34, $D6, $C6, $C6 : db $0A, $33 ; 0x1968\u20130x196B: 0xA34, 0x0D6, 0x3C6, 0x3C6\n#_04A622: db $C6, $C6, $C6, $CE : db $33, $33 ; 0x196C\u20130x196F: 0x3C6, 0x3C6, 0x3C6, 0x3CE\n#_04A628: db $E1, $B0, $B2, $B3 : db $0A, $AA ; 0x1970\u20130x1973: 0xAE1, 0x0B0, 0xAB2, 0xAB3\n#_04A62E: db $CE, $68, $CE, $BF : db $33, $39 ; 0x1974\u20130x1977: 0x3CE, 0x368, 0x9CE, 0x3BF\n#_04A634: db $B7, $FF, $35, $2C : db $A0, $04 ; 0x1978\u20130x197B: 0x0B7, 0xAFF, 0x435, 0x02C\n#_04A63A: db $CE, $72, $36, $B5 : db $33, $0A ; 0x197C\u20130x197F: 0x3CE, 0x372, 0xA36, 0x0B5\n#_04A640: db $D9, $EC, $BF, $CE : db $A0, $93 ; 0x1980\u20130x1983: 0x0D9, 0xAEC, 0x3BF, 0x9CE\n#_04A646: db $95, $F0, $D3, $C8 : db $00, $93 ; 0x1984\u20130x1987: 0x095, 0x0F0, 0x3D3, 0x9C8\n#_04A64C: db $34, $34, $34, $BF : db $00, $09 ; 0x1988\u20130x198B: 0x034, 0x034, 0x934, 0x0BF\n#_04A652: db $E9, $E8, $D7, $DF : db $30, $AA ; 0x198C\u20130x198F: 0x0E9, 0x3E8, 0xAD7, 0xADF\n#_04A658: db $E1, $E6, $E8, $A7 : db $AA, $A3 ; 0x1990\u20130x1993: 0xAE1, 0xAE6, 0x3E8, 0xAA7\n#_04A65E: db $34, $15, $F6, $C9 : db $04, $50 ; 0x1994\u20130x1997: 0x434, 0x015, 0x0F6, 0x5C9\n#_04A664: db $9E, $A5, $7C, $3C : db $01, $12 ; 0x1998\u20130x199B: 0x19E, 0x0A5, 0x27C, 0x13C\n#_04A66A: db $AC, $3C, $34, $34 : db $02, $33 ; 0x199C\u20130x199F: 0x2AC, 0x03C, 0x334, 0x334\n#_04A670: db $F3, $03, $0C, $03 : db $9A, $AA ; 0x19A0\u20130x19A3: 0xAF3, 0x903, 0xA0C, 0xA03\n#_04A676: db $0C, $03, $09, $06 : db $AA, $AA ; 0x19A4\u20130x19A7: 0xA0C, 0xA03, 0xA09, 0xA06\n#_04A67C: db $24, $0C, $71, $7E : db $1A, $03 ; 0x19A8\u20130x19AB: 0xA24, 0x10C, 0x371, 0x07E\n#_04A682: db $07, $07, $35, $34 : db $AA, $00 ; 0x19AC\u20130x19AF: 0xA07, 0xA07, 0x035, 0x034\n#_04A688: db $24, $F2, $7D, $07 : db $10, $3A ; 0x19B0\u20130x19B3: 0x024, 0x1F2, 0xA7D, 0x307\n#_04A68E: db $39, $71, $D5, $61 : db $10, $21 ; 0x19B4\u20130x19B7: 0x039, 0x171, 0x1D5, 0x261\n#_04A694: db $11, $FB, $71, $78 : db $61, $00 ; 0x19B8\u20130x19BB: 0x111, 0x6FB, 0x071, 0x078\n#_04A69A: db $06, $16, $04, $14 : db $AA, $AA ; 0x19BC\u20130x19BF: 0xA06, 0xA16, 0xA04, 0xA14\n#_04A6A0: db $04, $04, $04, $06 : db $AA, $AA ; 0x19C0\u20130x19C3: 0xA04, 0xA04, 0xA04, 0xA06\n#_04A6A6: db $14, $07, $7E, $71 : db $AA, $30 ; 0x19C4\u20130x19C7: 0xA14, 0xA07, 0x07E, 0x371\n#_04A6AC: db $34, $82, $82, $7E : db $03, $33 ; 0x19C8\u20130x19CB: 0x334, 0x082, 0x382, 0x37E\n#_04A6B2: db $82, $34, $34, $34 : db $30, $00 ; 0x19CC\u20130x19CF: 0x082, 0x334, 0x034, 0x034\n#_04A6B8: db $1E, $1E, $4F, $98 : db $66, $13 ; 0x19D0\u20130x19D3: 0x61E, 0x61E, 0x34F, 0x198\n#_04A6BE: db $25, $9F, $9D, $0A : db $50, $21 ; 0x19D4\u20130x19D7: 0x025, 0x59F, 0x19D, 0x20A\n#_04A6C4: db $0B, $C6, $C6, $E5 : db $10, $01 ; 0x19D8\u20130x19DB: 0x00B, 0x1C6, 0x1C6, 0x0E5\n#_04A6CA: db $1E, $C6, $EC, $C7 : db $20, $A0 ; 0x19DC\u20130x19DF: 0x01E, 0x2C6, 0x0EC, 0xAC7\n#_04A6D0: db $DC, $E5, $A0, $A3 : db $02, $30 ; 0x19E0\u20130x19E3: 0x2DC, 0x0E5, 0x0A0, 0x3A3\n#_04A6D6: db $E9, $7F, $C6, $EE : db $11, $0A ; 0x19E4\u20130x19E7: 0x1E9, 0x17F, 0xAC6, 0x0EE\n#_04A6DC: db $C6, $CA, $76, $E5 : db $00, $12 ; 0x19E8\u20130x19EB: 0x0C6, 0x0CA, 0x276, 0x1E5\n#_04A6E2: db $90, $34, $1E, $C6 : db $20, $20 ; 0x19EC\u20130x19EF: 0x090, 0x234, 0x01E, 0x2C6\n#_04A6E8: db $C7, $C4, $C8, $01 : db $00, $01 ; 0x19F0\u20130x19F3: 0x0C7, 0x0C4, 0x1C8, 0x001\n#_04A6EE: db $81, $C6, $ED, $C6 : db $70, $A0 ; 0x19F4\u20130x19F7: 0x081, 0x7C6, 0x0ED, 0xAC6\n#_04A6F4: db $C6, $C6, $C7, $40 : db $00, $06 ; 0x19F8\u20130x19FB: 0x0C6, 0x0C6, 0x6C7, 0x040\n#_04A6FA: db $C6, $CC, $CF, $20 : db $00, $05 ; 0x19FC\u20130x19FF: 0x0C6, 0x0CC, 0x5CF, 0x020\n#_04A700: db $34, $36, $C6, $40 : db $00, $06 ; 0x1A00\u20130x1A03: 0x034, 0x036, 0x6C6, 0x040\n#_04A706: db $09, $D6, $E5, $C6 : db $12, $10 ; 0x1A04\u20130x1A07: 0x209, 0x1D6, 0x0E5, 0x1C6\n#_04A70C: db $05, $C4, $35, $85 : db $11, $03 ; 0x1A08\u20130x1A0B: 0x105, 0x1C4, 0x335, 0x085\n#_04A712: db $49, $E6, $90, $90 : db $A2, $AA ; 0x1A0C\u20130x1A0F: 0x249, 0xAE6, 0xA90, 0xA90\n#_04A718: db $90, $8F, $E6, $43 : db $AA, $2A ; 0x1A10\u20130x1A13: 0xA90, 0xA8F, 0xAE6, 0x243\n#_04A71E: db $A3, $A3, $A3, $43 : db $AA, $AA ; 0x1A14\u20130x1A17: 0xAA3, 0xAA3, 0xAA3, 0xA43\n#_04A724: db $43, $F7, $F7, $F7 : db $AA, $AA ; 0x1A18\u20130x1A1B: 0xA43, 0xAF7, 0xAF7, 0xAF7\n#_04A72A: db $42, $46, $E6, $A3 : db $AA, $2A ; 0x1A1C\u20130x1A1F: 0xA42, 0xA46, 0xAE6, 0x2A3\n#_04A730: db $E6, $E6, $AD, $77 : db $22, $AA ; 0x1A20\u20130x1A23: 0x2E6, 0x2E6, 0xAAD, 0xA77\n#_04A736: db $E6, $A3, $E6, $5E : db $2A, $2A ; 0x1A24\u20130x1A27: 0xAE6, 0x2A3, 0xAE6, 0x25E\n#_04A73C: db $E6, $46, $E6, $A3 : db $2A, $2A ; 0x1A28\u20130x1A2B: 0xAE6, 0x246, 0xAE6, 0x2A3\n#_04A742: db $E6, $EC, $AD, $77 : db $22, $AA ; 0x1A2C\u20130x1A2F: 0x2E6, 0x2EC, 0xAAD, 0xA77\n#_04A748: db $E6, $A3, $E6, $E6 : db $2A, $22 ; 0x1A30\u20130x1A33: 0xAE6, 0x2A3, 0x2E6, 0x2E6\n#_04A74E: db $E6, $45, $E6, $43 : db $2A, $2A ; 0x1A34\u20130x1A37: 0xAE6, 0x245, 0xAE6, 0x243\n#_04A754: db $A3, $A3, $43, $A3 : db $AA, $AA ; 0x1A38\u20130x1A3B: 0xAA3, 0xAA3, 0xA43, 0xAA3\n#_04A75A: db $A3, $43, $E6, $E6 : db $AA, $22 ; 0x1A3C\u20130x1A3F: 0xAA3, 0xA43, 0x2E6, 0x2E6\n#_04A760: db $E6, $E6, $E6, $EC : db $22, $22 ; 0x1A40\u20130x1A43: 0x2E6, 0x2E6, 0x2E6, 0x2EC\n#_04A766: db $E6, $6D, $45, $4E : db $2A, $AA ; 0x1A44\u20130x1A47: 0xAE6, 0x26D, 0xA45, 0xA4E\n#_04A76C: db $5B, $F9, $F9, $F9 : db $16, $66 ; 0x1A48\u20130x1A4B: 0x65B, 0x1F9, 0x6F9, 0x6F9\n#_04A772: db $08, $5B, $AD, $A5 : db $71, $00 ; 0x1A4C\u20130x1A4F: 0x108, 0x75B, 0x0AD, 0x0A5\n#_04A778: db $A5, $E6, $73, $EC : db $06, $A2 ; 0x1A50\u20130x1A53: 0x6A5, 0x0E6, 0x273, 0xAEC\n#_04A77E: db $43, $AD, $43, $4D : db $AA, $AA ; 0x1A54\u20130x1A57: 0xA43, 0xAAD, 0xA43, 0xA4D\n#_04A784: db $E8, $34, $34, $A3 : db $62, $0A ; 0x1A58\u20130x1A5B: 0x2E8, 0x634, 0xA34, 0x0A3\n#_04A78A: db $A3, $E6, $E6, $43 : db $A6, $2A ; 0x1A5C\u20130x1A5F: 0x6A3, 0xAE6, 0xAE6, 0x243\n#_04A790: db $AD, $43, $E8, $34 : db $AA, $62 ; 0x1A60\u20130x1A63: 0xAAD, 0xA43, 0x2E8, 0x634\n#_04A796: db $1A, $AD, $A3, $A3 : db $2A, $AA ; 0x1A64\u20130x1A67: 0xA1A, 0x2AD, 0xAA3, 0xAA3\n#_04A79C: db $E6, $43, $E8, $55 : db $6A, $63 ; 0x1A68\u20130x1A6B: 0xAE6, 0x643, 0x3E8, 0x655\n#_04A7A2: db $6A, $A3, $A3, $07 : db $1A, $A7 ; 0x1A6C\u20130x1A6F: 0xA6A, 0x1A3, 0x7A3, 0xA07\n#_04A7A8: db $F9, $F9, $F9, $F9 : db $66, $66 ; 0x1A70\u20130x1A73: 0x6F9, 0x6F9, 0x6F9, 0x6F9\n#_04A7AE: db $F9, $F9, $F9, $FA : db $66, $66 ; 0x1A74\u20130x1A77: 0x6F9, 0x6F9, 0x6F9, 0x6FA\n#_04A7B4: db $6A, $A3, $AD, $AD : db $1A, $A0 ; 0x1A78\u20130x1A7B: 0xA6A, 0x1A3, 0x0AD, 0xAAD\n#_04A7BA: db $A5, $34, $77, $C2 : db $00, $A1 ; 0x1A7C\u20130x1A7F: 0x0A5, 0x034, 0x177, 0xAC2\n#_04A7C0: db $34, $06, $66, $B1 : db $21, $12 ; 0x1A80\u20130x1A83: 0x134, 0x206, 0x266, 0x1B1\n#_04A7C6: db $A3, $E6, $40, $44 : db $A2, $AA ; 0x1A84\u20130x1A87: 0x2A3, 0xAE6, 0xA40, 0xA44\n#_04A7CC: db $45, $3F, $41, $48 : db $AA, $AA ; 0x1A88\u20130x1A8B: 0xA45, 0xA3F, 0xA41, 0xA48\n#_04A7D2: db $C4, $EC, $A5, $25 : db $02, $17 ; 0x1A8C\u20130x1A8F: 0x2C4, 0x0EC, 0x7A5, 0x125\n#_04A7D8: db $A5, $A5, $45, $74 : db $11, $AA ; 0x1A90\u20130x1A93: 0x1A5, 0x1A5, 0xA45, 0xA74\n#_04A7DE: db $45, $46, $77, $F8 : db $AA, $A6 ; 0x1A94\u20130x1A97: 0xA45, 0xA46, 0x677, 0xAF8\n#_04A7E4: db $FA, $79, $A6, $77 : db $61, $07 ; 0x1A98\u20130x1A9B: 0x1FA, 0x679, 0x7A6, 0x077\n#_04A7EA: db $7C, $45, $6A, $6E : db $7A, $AA ; 0x1A9C\u20130x1A9F: 0xA7C, 0x745, 0xA6A, 0xA6E\n#_04A7F0: db $45, $4C, $46, $F9 : db $AA, $A6 ; 0x1AA0\u20130x1AA3: 0xA45, 0xA4C, 0x646, 0xAF9\n#_04A7F6: db $9E, $49, $34, $A5 : db $0A, $01 ; 0x1AA4\u20130x1AA7: 0xA9E, 0x049, 0x134, 0x0A5\n#_04A7FC: db $73, $4C, $74, $E8 : db $7A, $A6 ; 0x1AA8\u20130x1AAB: 0xA73, 0x74C, 0x674, 0xAE8\n#_04A802: db $A3, $A5, $A5, $68 : db $A1, $13 ; 0x1AAC\u20130x1AAF: 0x1A3, 0xAA5, 0x3A5, 0x168\n#_04A808: db $C4, $08, $67, $E8 : db $17, $A6 ; 0x1AB0\u20130x1AB3: 0x7C4, 0x108, 0x667, 0xAE8\n#_04A80E: db $A3, $A4, $34, $77 : db $A0, $07 ; 0x1AB4\u20130x1AB7: 0x0A3, 0xAA4, 0x734, 0x077\n#_04A814: db $A5, $79, $95, $A3 : db $11, $00 ; 0x1AB8\u20130x1ABB: 0x1A5, 0x179, 0x095, 0x0A3\n#_04A81A: db $45, $A5, $65, $EF : db $A0, $31 ; 0x1ABC\u20130x1ABF: 0x045, 0xAA5, 0x165, 0x3EF\n#_04A820: db $34, $A9, $4C, $7D : db $00, $A1 ; 0x1AC0\u20130x1AC3: 0x034, 0x0A9, 0x14C, 0xA7D\n#_04A826: db $A5, $A5, $6C, $E4 : db $11, $76 ; 0x1AC4\u20130x1AC7: 0x1A5, 0x1A5, 0x66C, 0x7E4\n#_04A82C: db $E6, $40, $6E, $21 : db $2A, $77 ; 0x1AC8\u20130x1ACB: 0xAE6, 0x240, 0x76E, 0x721\n#_04A832: db $08, $34, $A6, $C4 : db $70, $01 ; 0x1ACC\u20130x1ACF: 0x008, 0x734, 0x1A6, 0x0C4\n#_04A838: db $34, $D5, $FD, $85 : db $01, $A3 ; 0x1AD0\u20130x1AD3: 0x134, 0x0D5, 0x3FD, 0xA85\n#_04A83E: db $AA, $85, $40, $1C : db $03, $62 ; 0x1AD4\u20130x1AD7: 0x3AA, 0x085, 0x240, 0x61C\n#_04A844: db $FF, $C4, $40, $F2 : db $10, $60 ; 0x1AD8\u20130x1ADB: 0x0FF, 0x1C4, 0x040, 0x6F2\n#_04A84A: db $36, $34, $34, $B6 : db $00, $00 ; 0x1ADC\u20130x1ADF: 0x036, 0x034, 0x034, 0x0B6\n#_04A850: db $71, $34, $34, $34 : db $00, $00 ; 0x1AE0\u20130x1AE3: 0x071, 0x034, 0x034, 0x034\n#_04A856: db $EC, $6A, $39, $36 : db $26, $20 ; 0x1AE4\u20130x1AE7: 0x6EC, 0x26A, 0x039, 0x236\n#_04A85C: db $F4, $38, $34, $34 : db $23, $33 ; 0x1AE8\u20130x1AEB: 0x3F4, 0x238, 0x334, 0x334\n#_04A862: db $E7, $A7, $9D, $34 : db $13, $20 ; 0x1AEC\u20130x1AEF: 0x3E7, 0x1A7, 0x09D, 0x234\n#_04A868: db $34, $D8, $7C, $34 : db $00, $00 ; 0x1AF0\u20130x1AF3: 0x034, 0x0D8, 0x07C, 0x034\n#_04A86E: db $34, $39, $34, $34 : db $02, $00 ; 0x1AF4\u20130x1AF7: 0x234, 0x039, 0x034, 0x034\n#_04A874: db $39, $6D, $85, $C9 : db $11, $10 ; 0x1AF8\u20130x1AFB: 0x139, 0x16D, 0x085, 0x1C9\n#_04A87A: db $7E, $7E, $3B, $6D : db $33, $21 ; 0x1AFC\u20130x1AFF: 0x37E, 0x37E, 0x13B, 0x26D\n#_04A880: db $FA, $F9, $FA, $34 : db $13, $30 ; 0x1B00\u20130x1B03: 0x3FA, 0x1F9, 0x0FA, 0x334\n#_04A886: db $33, $FE, $F0, $FB : db $3A, $00 ; 0x1B04\u20130x1B07: 0xA33, 0x3FE, 0x0F0, 0x0FB\n#_04A88C: db $D9, $F2, $6C, $6C : db $00, $11 ; 0x1B08\u20130x1B0B: 0x0D9, 0x0F2, 0x16C, 0x16C\n#_04A892: db $D6, $34, $34, $A8 : db $00, $00 ; 0x1B0C\u20130x1B0F: 0x0D6, 0x034, 0x034, 0x0A8\n#_04A898: db $7C, $34, $7F, $71 : db $00, $00 ; 0x1B10\u20130x1B13: 0x07C, 0x034, 0x07F, 0x071\n#_04A89E: db $34, $DA, $DA, $DA : db $00, $00 ; 0x1B14\u20130x1B17: 0x034, 0x0DA, 0x0DA, 0x0DA\n#_04A8A4: db $E1, $5A, $79, $7C : db $00, $00 ; 0x1B18\u20130x1B1B: 0x0E1, 0x05A, 0x079, 0x07C\n#_04A8AA: db $5A, $34, $26, $0D : db $00, $01 ; 0x1B1C\u20130x1B1F: 0x05A, 0x034, 0x126, 0x00D\n#_04A8B0: db $E1, $35, $B6, $78 : db $00, $00 ; 0x1B20\u20130x1B23: 0x0E1, 0x035, 0x0B6, 0x078\n#_04A8B6: db $35, $E2, $34, $A8 : db $00, $00 ; 0x1B24\u20130x1B27: 0x035, 0x0E2, 0x034, 0x0A8\n#_04A8BC: db $AF, $35, $35, $D9 : db $00, $00 ; 0x1B28\u20130x1B2B: 0x0AF, 0x035, 0x035, 0x0D9\n#_04A8C2: db $34, $34, $34, $95 : db $00, $00 ; 0x1B2C\u20130x1B2F: 0x034, 0x034, 0x034, 0x095\n#_04A8C8: db $5C, $32, $33, $5D : db $12, $21 ; 0x1B30\u20130x1B33: 0x25C, 0x132, 0x133, 0x25D\n#_04A8CE: db $32, $34, $35, $34 : db $20, $20 ; 0x1B34\u20130x1B37: 0x032, 0x234, 0x035, 0x234\n#_04A8D4: db $7C, $DB, $6C, $34 : db $00, $10 ; 0x1B38\u20130x1B3B: 0x07C, 0x0DB, 0x06C, 0x134\n#_04A8DA: db $77, $A5, $AC, $5D : db $21, $01 ; 0x1B3C\u20130x1B3F: 0x177, 0x2A5, 0x1AC, 0x05D\n#_04A8E0: db $7B, $F0, $A4, $AC : db $11, $00 ; 0x1B40\u20130x1B43: 0x17B, 0x1F0, 0x0A4, 0x0AC\n#_04A8E6: db $5D, $5E, $74, $72 : db $11, $11 ; 0x1B44\u20130x1B47: 0x15D, 0x15E, 0x174, 0x172\n#_04A8EC: db $5E, $5E, $5E, $79 : db $11, $11 ; 0x1B48\u20130x1B4B: 0x15E, 0x15E, 0x15E, 0x179\n#_04A8F2: db $62, $85, $AA, $E2 : db $13, $00 ; 0x1B4C\u20130x1B4F: 0x362, 0x185, 0x0AA, 0x0E2\n#_04A8F8: db $FF, $34, $35, $E1 : db $10, $00 ; 0x1B50\u20130x1B53: 0x0FF, 0x134, 0x035, 0x0E1\n#_04A8FE: db $AD, $F0, $A9, $5E : db $01, $01 ; 0x1B54\u20130x1B57: 0x1AD, 0x0F0, 0x1A9, 0x05E\n#_04A904: db $60, $C4, $C6, $27 : db $11, $01 ; 0x1B58\u20130x1B5B: 0x160, 0x1C4, 0x1C6, 0x027\n#_04A90A: db $34, $60, $37, $F8 : db $01, $20 ; 0x1B5C\u20130x1B5F: 0x134, 0x060, 0x037, 0x2F8\n#_04A910: db $F8, $34, $62, $02 : db $30, $1B ; 0x1B60\u20130x1B63: 0x0F8, 0x334, 0xB62, 0x102\n#_04A916: db $33, $02, $71, $71 : db $2B, $00 ; 0x1B64\u20130x1B67: 0xB33, 0x202, 0x071, 0x071\n#_04A91C: db $6A, $C6, $FF, $36 : db $10, $10 ; 0x1B68\u20130x1B6B: 0x06A, 0x1C6, 0x0FF, 0x136\n#_04A922: db $34, $36, $34, $15 : db $00, $04 ; 0x1B6C\u20130x1B6F: 0x034, 0x036, 0x434, 0x015\n#_04A928: db $20, $AB, $A9, $F8 : db $20, $02 ; 0x1B70\u20130x1B73: 0x020, 0x2AB, 0x2A9, 0x0F8\n#_04A92E: db $6C, $6C, $6C, $7F : db $11, $11 ; 0x1B74\u20130x1B77: 0x16C, 0x16C, 0x16C, 0x17F\n#_04A934: db $C6, $36, $E3, $E3 : db $00, $00 ; 0x1B78\u20130x1B7B: 0x0C6, 0x036, 0x0E3, 0x0E3\n#_04A93A: db $A9, $79, $CC, $C6 : db $01, $00 ; 0x1B7C\u20130x1B7F: 0x1A9, 0x079, 0x0CC, 0x0C6\n#_04A940: db $7C, $A5, $C6, $74 : db $10, $01 ; 0x1B80\u20130x1B83: 0x07C, 0x1A5, 0x1C6, 0x074\n#_04A946: db $72, $5F, $AD, $34 : db $11, $00 ; 0x1B84\u20130x1B87: 0x172, 0x15F, 0x0AD, 0x034\n#_04A94C: db $C6, $13, $A5, $AA : db $02, $10 ; 0x1B88\u20130x1B8B: 0x2C6, 0x013, 0x0A5, 0x1AA\n#_04A952: db $C6, $A4, $A5, $A4 : db $00, $10 ; 0x1B8C\u20130x1B8F: 0x0C6, 0x0A4, 0x0A5, 0x1A4\n#_04A958: db $A5, $03, $DA, $D3 : db $0B, $22 ; 0x1B90\u20130x1B93: 0xBA5, 0x003, 0x2DA, 0x2D3\n#_04A95E: db $A5, $06, $D3, $FD : db $1B, $21 ; 0x1B94\u20130x1B97: 0xBA5, 0x106, 0x1D3, 0x2FD\n#_04A964: db $16, $2D, $41, $06 : db $21, $1B ; 0x1B98\u20130x1B9B: 0x116, 0x22D, 0xB41, 0x106\n#_04A96A: db $C9, $3F, $39, $34 : db $22, $10 ; 0x1B9C\u20130x1B9F: 0x2C9, 0x23F, 0x039, 0x134\n#_04A970: db $4B, $56, $24, $CE : db $11, $12 ; 0x1BA0\u20130x1BA3: 0x14B, 0x156, 0x224, 0x1CE\n#_04A976: db $24, $1B, $C5, $CD : db $12, $22 ; 0x1BA4\u20130x1BA7: 0x224, 0x11B, 0x2C5, 0x2CD\n#_04A97C: db $1B, $1B, $C6, $A2 : db $22, $26 ; 0x1BA8\u20130x1BAB: 0x21B, 0x21B, 0x6C6, 0x2A2\n#_04A982: db $A5, $1C, $9A, $F8 : db $31, $32 ; 0x1BAC\u20130x1BAF: 0x1A5, 0x31C, 0x29A, 0x3F8\n#_04A988: db $CD, $1D, $0B, $38 : db $21, $13 ; 0x1BB0\u20130x1BB3: 0x1CD, 0x21D, 0x30B, 0x138\n#_04A98E: db $A5, $7C, $F3, $A4 : db $11, $10 ; 0x1BB4\u20130x1BB7: 0x1A5, 0x17C, 0x0F3, 0x1A4\n#_04A994: db $A6, $18, $A5, $A4 : db $02, $10 ; 0x1BB8\u20130x1BBB: 0x2A6, 0x018, 0x0A5, 0x1A4\n#_04A99A: db $AA, $AB, $35, $D1 : db $66, $00 ; 0x1BBC\u20130x1BBF: 0x6AA, 0x6AB, 0x035, 0x0D1\n#_04A9A0: db $DD, $20, $86, $7C : db $05, $11 ; 0x1BC0\u20130x1BC3: 0x5DD, 0x020, 0x186, 0x17C\n#_04A9A6: db $E1, $DB, $9F, $A3 : db $00, $00 ; 0x1BC4\u20130x1BC7: 0x0E1, 0x0DB, 0x09F, 0x0A3\n#_04A9AC: db $AC, $A8, $AF, $7F : db $00, $00 ; 0x1BC8\u20130x1BCB: 0x0AC, 0x0A8, 0x0AF, 0x07F\n#_04A9B2: db $AD, $76, $AF, $95 : db $00, $00 ; 0x1BCC\u20130x1BCF: 0x0AD, 0x076, 0x0AF, 0x095\n#_04A9B8: db $76, $11, $13, $34 : db $00, $00 ; 0x1BD0\u20130x1BD3: 0x076, 0x011, 0x013, 0x034\n#_04A9BE: db $7E, $7E, $95, $56 : db $33, $01 ; 0x1BD4\u20130x1BD7: 0x37E, 0x37E, 0x195, 0x056\n#_04A9C4: db $4E, $4E, $4E, $34 : db $11, $10 ; 0x1BD8\u20130x1BDB: 0x14E, 0x14E, 0x04E, 0x134\n#_04A9CA: db $20, $E4, $C4, $CE : db $52, $02 ; 0x1BDC\u20130x1BDF: 0x220, 0x5E4, 0x2C4, 0x0CE\n#_04A9D0: db $24, $06, $65, $66 : db $11, $11 ; 0x1BE0\u20130x1BE3: 0x124, 0x106, 0x165, 0x166\n#_04A9D6: db $CE, $24, $7E, $05 : db $21, $31 ; 0x1BE4\u20130x1BE7: 0x1CE, 0x224, 0x17E, 0x305\n#_04A9DC: db $06, $33, $AA, $82 : db $17, $63 ; 0x1BE8\u20130x1BEB: 0x706, 0x133, 0x3AA, 0x682\n#_04A9E2: db $AD, $66, $24, $65 : db $61, $11 ; 0x1BEC\u20130x1BEF: 0x1AD, 0x666, 0x124, 0x165\n#_04A9E8: db $85, $29, $A5, $C6 : db $33, $10 ; 0x1BF0\u20130x1BF3: 0x385, 0x329, 0x0A5, 0x1C6\n#_04A9EE: db $42, $6D, $0C, $EE : db $57, $11 ; 0x1BF4\u20130x1BF7: 0x742, 0x56D, 0x10C, 0x1EE\n#_04A9F4: db $DB, $E5, $E6, $5B : db $02, $21 ; 0x1BF8\u20130x1BFB: 0x2DB, 0x0E5, 0x1E6, 0x25B\n#_04A9FA: db $EE, $E6, $6A, $E6 : db $12, $12 ; 0x1BFC\u20130x1BFF: 0x2EE, 0x1E6, 0x26A, 0x1E6\n#_04AA00: db $9C, $6A, $82, $FD : db $51, $32 ; 0x1C00\u20130x1C03: 0x19C, 0x56A, 0x282, 0x3FD\n#_04AA06: db $9E, $6A, $34, $FD : db $51, $02 ; 0x1C04\u20130x1C07: 0x19E, 0x56A, 0x234, 0x0FD\n#_04AA0C: db $B8, $FE, $D0, $D1 : db $92, $00 ; 0x1C08\u20130x1C0B: 0x2B8, 0x9FE, 0x0D0, 0x0D1\n#_04AA12: db $D1, $9E, $A5, $F1 : db $00, $12 ; 0x1C0C\u20130x1C0F: 0x0D1, 0x09E, 0x2A5, 0x1F1\n#_04AA18: db $8B, $C9, $CA, $D2 : db $70, $00 ; 0x1C10\u20130x1C13: 0x08B, 0x7C9, 0x0CA, 0x0D2\n#_04AA1E: db $C7, $C9, $E6, $78 : db $00, $27 ; 0x1C14\u20130x1C17: 0x0C7, 0x0C9, 0x7E6, 0x278\n#_04AA24: db $C7, $58, $1A, $A5 : db $01, $21 ; 0x1C18\u20130x1C1B: 0x1C7, 0x058, 0x11A, 0x2A5\n#_04AA2A: db $C6, $C6, $E6, $21 : db $00, $27 ; 0x1C1C\u20130x1C1F: 0x0C6, 0x0C6, 0x7E6, 0x221\n#_04AA30: db $E4, $A5, $A5, $AB : db $00, $10 ; 0x1C20\u20130x1C23: 0x0E4, 0x0A5, 0x0A5, 0x1AB\n#_04AA36: db $A5, $A5, $A5, $6A : db $10, $01 ; 0x1C24\u20130x1C27: 0x0A5, 0x1A5, 0x1A5, 0x06A\n#_04AA3C: db $0F, $34, $18, $1B : db $20, $22 ; 0x1C28\u20130x1C2B: 0x00F, 0x234, 0x218, 0x21B\n#_04AA42: db $1B, $05, $B1, $20 : db $21, $22 ; 0x1C2C\u20130x1C2F: 0x11B, 0x205, 0x2B1, 0x220\n#_04AA48: db $09, $7E, $58, $7D : db $17, $17 ; 0x1C30\u20130x1C33: 0x709, 0x17E, 0x758, 0x17D\n#_04AA4E: db $06, $71, $7E, $C6 : db $11, $70 ; 0x1C34\u20130x1C37: 0x106, 0x171, 0x07E, 0x7C6\n#_04AA54: db $7D, $D5, $57, $C9 : db $70, $20 ; 0x1C38\u20130x1C3B: 0x07D, 0x7D5, 0x057, 0x2C9\n#_04AA5A: db $0E, $53, $1C, $C6 : db $B1, $20 ; 0x1C3C\u20130x1C3F: 0x10E, 0xB53, 0x01C, 0x2C6\n#_04AA60: db $0F, $C7, $13, $0F : db $B2, $BB ; 0x1C40\u20130x1C43: 0x20F, 0xBC7, 0xB13, 0xB0F\n#_04AA66: db $29, $16, $18, $C7 : db $3B, $B2 ; 0x1C44\u20130x1C47: 0xB29, 0x316, 0x218, 0xBC7\n#_04AA6C: db $C7, $C7, $16, $C7 : db $22, $B2 ; 0x1C48\u20130x1C4B: 0x2C7, 0x2C7, 0x216, 0xBC7\n#_04AA72: db $29, $22, $23, $C7 : db $3B, $B2 ; 0x1C4C\u20130x1C4F: 0xB29, 0x322, 0x223, 0xBC7\n#_04AA78: db $C7, $C7, $C7, $C7 : db $22, $22 ; 0x1C50\u20130x1C53: 0x2C7, 0x2C7, 0x2C7, 0x2C7\n#_04AA7E: db $2E, $30, $AB, $C7 : db $BB, $82 ; 0x1C54\u20130x1C57: 0xB2E, 0xB30, 0x2AB, 0x8C7\n#_04AA84: db $33, $35, $42, $CD : db $BB, $52 ; 0x1C58\u20130x1C5B: 0xB33, 0xB35, 0x242, 0x5CD\n#_04AA8A: db $C7, $3B, $3D, $C7 : db $2B, $B2 ; 0x1C5C\u20130x1C5F: 0xBC7, 0x23B, 0x23D, 0xBC7\n#_04AA90: db $3F, $C7, $41, $46 : db $B2, $BB ; 0x1C60\u20130x1C63: 0x23F, 0xBC7, 0xB41, 0xB46\n#_04AA96: db $C6, $49, $4B, $4D : db $2B, $BB ; 0x1C64\u20130x1C67: 0xBC6, 0x249, 0xB4B, 0xB4D\n#_04AA9C: db $4F, $C7, $71, $20 : db $B2, $13 ; 0x1C68\u20130x1C6B: 0x24F, 0xBC7, 0x371, 0x120\n#_04AAA2: db $46, $D7, $D9, $C7 : db $B2, $22 ; 0x1C6C\u20130x1C6F: 0x246, 0xBD7, 0x2D9, 0x2C7\n#_04AAA8: db $56, $58, $59, $55 : db $BB, $BB ; 0x1C70\u20130x1C73: 0xB56, 0xB58, 0xB59, 0xB55\n#_04AAAE: db $20, $12, $C7, $56 : db $3B, $2B ; 0x1C74\u20130x1C77: 0xB20, 0x312, 0xBC7, 0x256\n#_04AAB4: db $5F, $5E, $7F, $C6 : db $BB, $70 ; 0x1C78\u20130x1C7B: 0xB5F, 0xB5E, 0x07F, 0x7C6\n#_04AABA: db $E8, $64, $65, $65 : db $6B, $BB ; 0x1C7C\u20130x1C7F: 0xBE8, 0x664, 0xB65, 0xB65\n#_04AAC0: db $67, $71, $7F, $29 : db $B1, $73 ; 0x1C80\u20130x1C83: 0x167, 0xB71, 0x37F, 0x729\n#_04AAC6: db $47, $29, $EF, $72 : db $BB, $2B ; 0x1C84\u20130x1C87: 0xB47, 0xB29, 0xBEF, 0x272\n#_04AACC: db $F6, $29, $C6, $17 : db $2B, $23 ; 0x1C88\u20130x1C8B: 0xBF6, 0x229, 0x3C6, 0x217\n#_04AAD2: db $20, $15, $20, $D7 : db $2B, $B2 ; 0x1C8C\u20130x1C8F: 0xB20, 0x215, 0x220, 0xBD7\n#_04AAD8: db $72, $C6, $FE, $29 : db $B2, $23 ; 0x1C90\u20130x1C93: 0x272, 0xBC6, 0x3FE, 0x229\n#_04AADE: db $12, $77, $C7, $EE : db $BB, $22 ; 0x1C94\u20130x1C97: 0xB12, 0xB77, 0x2C7, 0x2EE\n#_04AAE4: db $20, $FA, $C7, $C7 : db $26, $22 ; 0x1C98\u20130x1C9B: 0x620, 0x2FA, 0x2C7, 0x2C7\n#_04AAEA: db $C7, $40, $13, $EE : db $2B, $B2 ; 0x1C9C\u20130x1C9F: 0xBC7, 0x240, 0x213, 0xBEE\n#_04AAF0: db $CD, $74, $79, $A2 : db $2B, $B6 ; 0x1CA0\u20130x1CA3: 0xBCD, 0x274, 0x679, 0xBA2\n#_04AAF6: db $D2, $74, $74, $D9 : db $2B, $B2 ; 0x1CA4\u20130x1CA7: 0xBD2, 0x274, 0x274, 0xBD9\n#_04AAFC: db $C7, $74, $CD, $74 : db $2B, $2B ; 0x1CA8\u20130x1CAB: 0xBC7, 0x274, 0xBCD, 0x274\n#_04AB02: db $9D, $13, $EE, $D9 : db $3B, $22 ; 0x1CAC\u20130x1CAF: 0xB9D, 0x313, 0x2EE, 0x2D9\n#_04AB08: db $C7, $47, $7A, $38 : db $2B, $BB ; 0x1CB0\u20130x1CB3: 0xBC7, 0x247, 0xB7A, 0xB38\n#_04AB0E: db $3F, $4F, $1A, $40 : db $B5, $3B ; 0x1CB4\u20130x1CB7: 0x53F, 0xB4F, 0xB1A, 0x340\n#_04AB14: db $7C, $C7, $11, $E6 : db $B2, $B2 ; 0x1CB8\u20130x1CBB: 0x27C, 0xBC7, 0x211, 0xBE6\n#_04AB1A: db $E6, $29, $C7, $81 : db $23, $2B ; 0x1CBC\u20130x1CBF: 0x3E6, 0x229, 0xBC7, 0x281\n#_04AB20: db $C7, $C9, $D7, $CD : db $20, $22 ; 0x1CC0\u20130x1CC3: 0x0C7, 0x2C9, 0x2D7, 0x2CD\n#_04AB26: db $C7, $10, $12, $7A : db $2B, $BB ; 0x1CC4\u20130x1CC7: 0xBC7, 0x210, 0xB12, 0xB7A\n#_04AB2C: db $C7, $71, $C5, $71 : db $2B, $00 ; 0x1CC8\u20130x1CCB: 0xBC7, 0x271, 0x0C5, 0x071\n#_04AB32: db $5D, $5F, $35, $D4 : db $11, $00 ; 0x1CCC\u20130x1CCF: 0x15D, 0x15F, 0x035, 0x0D4\n#_04AB38: db $E3, $00, $C2, $65 : db $01, $11 ; 0x1CD0\u20130x1CD3: 0x1E3, 0x000, 0x1C2, 0x165\n#_04AB3E: db $D1, $7E, $53, $EE : db $01, $11 ; 0x1CD4\u20130x1CD7: 0x1D1, 0x07E, 0x153, 0x1EE\n#_04AB44: db $7D, $34, $34, $7E : db $30, $03 ; 0x1CD8\u20130x1CDB: 0x07D, 0x334, 0x334, 0x07E\n#_04AB4A: db $7E, $C4, $C6, $81 : db $31, $06 ; 0x1CDC\u20130x1CDF: 0x17E, 0x3C4, 0x6C6, 0x081\n#_04AB50: db $7E, $7E, $34, $C6 : db $33, $00 ; 0x1CE0\u20130x1CE3: 0x37E, 0x37E, 0x034, 0x0C6\n#_04AB56: db $C6, $6A, $7E, $7E : db $01, $33 ; 0x1CE4\u20130x1CE7: 0x1C6, 0x06A, 0x37E, 0x37E\n#_04AB5C: db $81, $03, $EA, $9F : db $6B, $20 ; 0x1CE8\u20130x1CEB: 0xB81, 0x603, 0x0EA, 0x29F\n#_04AB62: db $AC, $FA, $03, $EA : db $01, $B2 ; 0x1CEC\u20130x1CEF: 0x1AC, 0x0FA, 0x203, 0xBEA\n#_04AB68: db $EA, $EA, $C7, $C7 : db $22, $22 ; 0x1CF0\u20130x1CF3: 0x2EA, 0x2EA, 0x2C7, 0x2C7\n#_04AB6E: db $1C, $7D, $EF, $CD : db $23, $22 ; 0x1CF4\u20130x1CF7: 0x31C, 0x27D, 0x2EF, 0x2CD\n#_04AB74: db $D6, $CD, $34, $34 : db $22, $00 ; 0x1CF8\u20130x1CFB: 0x2D6, 0x2CD, 0x034, 0x034\n#_04AB7A: db $60, $A2, $F9, $E4 : db $16, $22 ; 0x1CFC\u20130x1CFF: 0x660, 0x1A2, 0x2F9, 0x2E4\n#_04AB80: db $CD, $F9, $D4, $6A : db $22, $11 ; 0x1D00\u20130x1D03: 0x2CD, 0x2F9, 0x1D4, 0x16A\n#_04AB86: db $F9, $CD, $5B, $6A : db $22, $11 ; 0x1D04\u20130x1D07: 0x2F9, 0x2CD, 0x15B, 0x16A\n#_04AB8C: db $07, $E4, $DA, $C7 : db $B2, $22 ; 0x1D08\u20130x1D0B: 0x207, 0xBE4, 0x2DA, 0x2C7\n#_04AB92: db $34, $DB, $DB, $DB : db $02, $22 ; 0x1D0C\u20130x1D0F: 0x234, 0x0DB, 0x2DB, 0x2DB\n#_04AB98: db $DB, $DB, $6A, $88 : db $22, $1B ; 0x1D10\u20130x1D13: 0x2DB, 0x2DB, 0xB6A, 0x188\n#_04AB9E: db $8A, $03, $C7, $C8 : db $BB, $22 ; 0x1D14\u20130x1D17: 0xB8A, 0xB03, 0x2C7, 0x2C8\n#_04ABA4: db $78, $8C, $34, $90 : db $6B, $0B ; 0x1D18\u20130x1D1B: 0xB78, 0x68C, 0xB34, 0x090\n#_04ABAA: db $05, $E9, $34, $88 : db $B2, $06 ; 0x1D1C\u20130x1D1F: 0x205, 0xBE9, 0x634, 0x088\n#_04ABB0: db $8D, $C6, $34, $83 : db $60, $03 ; 0x1D20\u20130x1D23: 0x08D, 0x6C6, 0x334, 0x083\n#_04ABB6: db $34, $82, $86, $7E : db $03, $B3 ; 0x1D24\u20130x1D27: 0x334, 0x082, 0x386, 0xB7E\n#_04ABBC: db $93, $89, $C6, $FA : db $BB, $01 ; 0x1D28\u20130x1D2B: 0xB93, 0xB89, 0x1C6, 0x0FA\n#_04ABC2: db $D1, $D1, $D1, $53 : db $00, $01 ; 0x1D2C\u20130x1D2F: 0x0D1, 0x0D1, 0x1D1, 0x053\n#_04ABC8: db $20, $85, $D2, $89 : db $57, $0B ; 0x1D30\u20130x1D33: 0x720, 0x585, 0xBD2, 0x089\n#_04ABCE: db $7D, $7E, $83, $D2 : db $33, $30 ; 0x1D34\u20130x1D37: 0x37D, 0x37E, 0x083, 0x3D2\n#_04ABD4: db $EA, $EA, $36, $83 : db $22, $03 ; 0x1D38\u20130x1D3B: 0x2EA, 0x2EA, 0x336, 0x083\n#_04ABDA: db $95, $DA, $C7, $7E : db $B2, $23 ; 0x1D3C\u20130x1D3F: 0x295, 0xBDA, 0x3C7, 0x27E\n#_04ABE0: db $7E, $DF, $7E, $7E : db $32, $33 ; 0x1D40\u20130x1D43: 0x27E, 0x3DF, 0x37E, 0x37E\n#_04ABE6: db $82, $C6, $83, $E9 : db $32, $32 ; 0x1D44\u20130x1D47: 0x282, 0x3C6, 0x283, 0x3E9\n#_04ABEC: db $EA, $97, $82, $62 : db $2B, $31 ; 0x1D48\u20130x1D4B: 0xBEA, 0x297, 0x182, 0x362\n#_04ABF2: db $07, $CD, $7E, $7B : db $12, $36 ; 0x1D4C\u20130x1D4F: 0x207, 0x1CD, 0x67E, 0x37B\n#_04ABF8: db $7E, $D3, $7C, $D3 : db $32, $62 ; 0x1D50\u20130x1D53: 0x27E, 0x3D3, 0x27C, 0x6D3\n#_04ABFE: db $34, $07, $81, $DD : db $01, $72 ; 0x1D54\u20130x1D57: 0x134, 0x007, 0x281, 0x7DD\n#_04AC04: db $C7, $7E, $EA, $D3 : db $23, $22 ; 0x1D58\u20130x1D5B: 0x3C7, 0x27E, 0x2EA, 0x2D3\n#_04AC0A: db $87, $D3, $C6, $C5 : db $62, $00 ; 0x1D5C\u20130x1D5F: 0x287, 0x6D3, 0x0C6, 0x0C5\n#_04AC10: db $DB, $DB, $C8, $82 : db $22, $23 ; 0x1D60\u20130x1D63: 0x2DB, 0x2DB, 0x3C8, 0x282\n#_04AC16: db $DB, $DB, $98, $7E : db $22, $B3 ; 0x1D64\u20130x1D67: 0x2DB, 0x2DB, 0x398, 0xB7E\n#_04AC1C: db $7E, $7E, $7D, $7E : db $33, $33 ; 0x1D68\u20130x1D6B: 0x37E, 0x37E, 0x37D, 0x37E\n#_04AC22: db $7E, $7E, $CE, $E9 : db $33, $01 ; 0x1D6C\u20130x1D6F: 0x37E, 0x37E, 0x1CE, 0x0E9\n#_04AC28: db $87, $89, $8A, $F2 : db $BB, $B0 ; 0x1D70\u20130x1D73: 0xB87, 0xB89, 0x08A, 0xBF2\n#_04AC2E: db $4F, $DC, $7E, $6A : db $12, $71 ; 0x1D74\u20130x1D77: 0x24F, 0x1DC, 0x17E, 0x76A\n#_04AC34: db $CD, $6A, $FA, $4A : db $21, $07 ; 0x1D78\u20130x1D7B: 0x1CD, 0x26A, 0x7FA, 0x04A\n#_04AC3A: db $0F, $FB, $CD, $9E : db $32, $23 ; 0x1D7C\u20130x1D7F: 0x20F, 0x3FB, 0x3CD, 0x29E\n#_04AC40: db $CD, $9E, $D2, $CD : db $23, $22 ; 0x1D80\u20130x1D83: 0x3CD, 0x29E, 0x2D2, 0x2CD\n#_04AC46: db $C6, $C7, $F6, $E7 : db $22, $21 ; 0x1D84\u20130x1D87: 0x2C6, 0x2C7, 0x1F6, 0x2E7\n#_04AC4C: db $D9, $5B, $C7, $C7 : db $21, $22 ; 0x1D88\u20130x1D8B: 0x1D9, 0x25B, 0x2C7, 0x2C7\n#_04AC52: db $34, $DD, $C9, $D2 : db $02, $02 ; 0x1D8C\u20130x1D8F: 0x234, 0x0DD, 0x2C9, 0x0D2\n#_04AC58: db $9F, $D7, $D2, $76 : db $B2, $21 ; 0x1D90\u20130x1D93: 0x29F, 0xBD7, 0x1D2, 0x276\n#_04AC5E: db $CD, $DD, $CD, $DD : db $22, $22 ; 0x1D94\u20130x1D97: 0x2CD, 0x2DD, 0x2CD, 0x2DD\n#_04AC64: db $9E, $A0, $C7, $D9 : db $BB, $22 ; 0x1D98\u20130x1D9B: 0xB9E, 0xBA0, 0x2C7, 0x2D9\n#_04AC6A: db $D2, $9E, $A8, $A9 : db $2B, $BB ; 0x1D9C\u20130x1D9F: 0xBD2, 0x29E, 0xBA8, 0xBA9\n#_04AC70: db $AB, $A7, $9F, $9E : db $BB, $BB ; 0x1DA0\u20130x1DA3: 0xBAB, 0xBA7, 0xB9F, 0xB9E\n#_04AC76: db $AD, $D2, $A5, $B0 : db $B2, $BB ; 0x1DA4\u20130x1DA7: 0x2AD, 0xBD2, 0xBA5, 0xBB0\n#_04AC7C: db $B1, $B1, $B1, $B1 : db $BB, $BB ; 0x1DA8\u20130x1DAB: 0xBB1, 0xBB1, 0xBB1, 0xBB1\n#_04AC82: db $B1, $B3, $A0, $C7 : db $BB, $B2 ; 0x1DAC\u20130x1DAF: 0xBB1, 0xBB3, 0x2A0, 0xBC7\n#_04AC88: db $C6, $BD, $B6, $B7 : db $2B, $BB ; 0x1DB0\u20130x1DB3: 0xBC6, 0x2BD, 0xBB6, 0xBB7\n#_04AC8E: db $B7, $B8, $BF, $B7 : db $BB, $BB ; 0x1DB4\u20130x1DB7: 0xBB7, 0xBB8, 0xBBF, 0xBB7\n#_04AC94: db $B3, $BC, $A2, $DF : db $BB, $62 ; 0x1DB8\u20130x1DBB: 0xBB3, 0xBBC, 0x2A2, 0x6DF\n#_04AC9A: db $AC, $B7, $C4, $C5 : db $BB, $BB ; 0x1DBC\u20130x1DBF: 0xBAC, 0xBB7, 0xBC4, 0xBC5\n#_04ACA0: db $B7, $B3, $C7, $C5 : db $BB, $20 ; 0x1DC0\u20130x1DC3: 0xBB7, 0xBB3, 0x0C7, 0x2C5\n#_04ACA6: db $C6, $B6, $C5, $C5 : db $2B, $BB ; 0x1DC4\u20130x1DC7: 0xBC6, 0x2B6, 0xBC5, 0xBC5\n#_04ACAC: db $CB, $CD, $C5, $CF : db $BB, $BB ; 0x1DC8\u20130x1DCB: 0xBCB, 0xBCD, 0xBC5, 0xBCF\n#_04ACB2: db $B3, $DD, $DF, $D4 : db $B2, $2B ; 0x1DCC\u20130x1DCF: 0x2B3, 0xBDD, 0xBDF, 0x2D4\n#_04ACB8: db $B6, $B3, $A9, $AF : db $BB, $BB ; 0x1DD0\u20130x1DD3: 0xBB6, 0xBB3, 0xBA9, 0xBAF\n#_04ACBE: db $D6, $A6, $A9, $C9 : db $BB, $BB ; 0x1DD4\u20130x1DD7: 0xBD6, 0xBA6, 0xBA9, 0xBC9\n#_04ACC4: db $B3, $A7, $C6, $AC : db $BB, $2B ; 0x1DD8\u20130x1DDB: 0xBB3, 0xBA7, 0xBC6, 0x2AC\n#_04ACCA: db $B3, $DA, $A9, $A9 : db $BB, $BB ; 0x1DDC\u20130x1DDF: 0xBB3, 0xBDA, 0xBA9, 0xBA9\n#_04ACD0: db $A9, $BC, $CD, $78 : db $BB, $21 ; 0x1DE0\u20130x1DE3: 0xBA9, 0xBBC, 0x1CD, 0x278\n#_04ACD6: db $DC, $DD, $CA, $5B : db $00, $01 ; 0x1DE4\u20130x1DE7: 0x0DC, 0x0DD, 0x1CA, 0x05B\n#_04ACDC: db $E3, $E5, $82, $6A : db $00, $31 ; 0x1DE8\u20130x1DEB: 0x0E3, 0x0E5, 0x182, 0x36A\n#_04ACE2: db $34, $86, $87, $DB : db $0B, $B0 ; 0x1DEC\u20130x1DEF: 0xB34, 0x086, 0x087, 0xBDB\n#_04ACE8: db $6C, $34, $92, $94 : db $10, $BB ; 0x1DF0\u20130x1DF3: 0x06C, 0x134, 0xB92, 0xB94\n#_04ACEE: db $9E, $AB, $6A, $34 : db $00, $10 ; 0x1DF4\u20130x1DF7: 0x09E, 0x0AB, 0x06A, 0x134\n#_04ACF4: db $95, $9E, $C6, $75 : db $B0, $01 ; 0x1DF8\u20130x1DFB: 0x095, 0xB9E, 0x1C6, 0x075\n#_04ACFA: db $3A, $A3, $87, $20 : db $20, $72 ; 0x1DFC\u20130x1DFF: 0x03A, 0x2A3, 0x287, 0x720\n#_04AD00: db $2D, $5A, $5B, $EE : db $17, $11 ; 0x1E00\u20130x1E03: 0x72D, 0x15A, 0x15B, 0x1EE\n#_04AD06: db $FF, $E6, $70, $E0 : db $22, $72 ; 0x1E04\u20130x1E07: 0x2FF, 0x2E6, 0x270, 0x7E0\n#_04AD0C: db $D5, $E6, $5C, $FC : db $22, $72 ; 0x1E08\u20130x1E0B: 0x2D5, 0x2E6, 0x25C, 0x7FC\n#_04AD12: db $89, $FE, $2D, $3F : db $72, $15 ; 0x1E0C\u20130x1E0F: 0x289, 0x7FE, 0x52D, 0x13F\n#_04AD18: db $57, $1E, $63, $3A : db $23, $12 ; 0x1E10\u20130x1E13: 0x357, 0x21E, 0x263, 0x13A\n#_04AD1E: db $05, $E2, $8C, $8D : db $32, $77 ; 0x1E14\u20130x1E17: 0x205, 0x3E2, 0x78C, 0x78D\n#_04AD24: db $BA, $CD, $05, $E6 : db $22, $52 ; 0x1E18\u20130x1E1B: 0x2BA, 0x2CD, 0x205, 0x5E6\n#_04AD2A: db $E2, $CD, $CD, $DF : db $B2, $22 ; 0x1E1C\u20130x1E1F: 0x2E2, 0xBCD, 0x2CD, 0x2DF\n#_04AD30: db $CD, $85, $E6, $C6 : db $23, $20 ; 0x1E20\u20130x1E23: 0x3CD, 0x285, 0x0E6, 0x2C6\n#_04AD36: db $3E, $C7, $E6, $85 : db $B2, $23 ; 0x1E24\u20130x1E27: 0x23E, 0xBC7, 0x3E6, 0x285\n#_04AD3C: db $C7, $45, $D7, $5F : db $29, $27 ; 0x1E28\u20130x1E2B: 0x9C7, 0x245, 0x7D7, 0x25F\n#_04AD42: db $F6, $DF, $41, $DD : db $22, $B2 ; 0x1E2C\u20130x1E2F: 0x2F6, 0x2DF, 0x241, 0xBDD\n#_04AD48: db $29, $25, $15, $E4 : db $37, $BB ; 0x1E30\u20130x1E33: 0x729, 0x325, 0xB15, 0xBE4\n#_04AD4E: db $C6, $E6, $12, $C7 : db $02, $B2 ; 0x1E34\u20130x1E37: 0x2C6, 0x0E6, 0x212, 0xBC7\n#_04AD54: db $C7, $44, $C7, $75 : db $29, $21 ; 0x1E38\u20130x1E3B: 0x9C7, 0x244, 0x1C7, 0x275\n#_04AD5A: db $EF, $EE, $15, $D9 : db $21, $B2 ; 0x1E3C\u20130x1E3F: 0x1EF, 0x2EE, 0x215, 0xBD9\n#_04AD60: db $C7, $C7, $E6, $C7 : db $22, $22 ; 0x1E40\u20130x1E43: 0x2C7, 0x2C7, 0x2E6, 0x2C7\n#_04AD66: db $C7, $EA, $1C, $34 : db $2B, $22 ; 0x1E44\u20130x1E47: 0xBC7, 0x2EA, 0x21C, 0x234\n#_04AD6C: db $1A, $68, $C7, $34 : db $3B, $22 ; 0x1E48\u20130x1E4B: 0xB1A, 0x368, 0x2C7, 0x234\n#_04AD72: db $EC, $E6, $68, $68 : db $B2, $BB ; 0x1E4C\u20130x1E4F: 0x2EC, 0xBE6, 0xB68, 0xB68\n#_04AD78: db $34, $1A, $E6, $96 : db $23, $25 ; 0x1E50\u20130x1E53: 0x334, 0x21A, 0x5E6, 0x296\n#_04AD7E: db $34, $C6, $AB, $65 : db $20, $01 ; 0x1E54\u20130x1E57: 0x034, 0x2C6, 0x1AB, 0x065\n#_04AD84: db $3E, $C7, $C7, $96 : db $B2, $25 ; 0x1E58\u20130x1E5B: 0x23E, 0xBC7, 0x5C7, 0x296\n#_04AD8A: db $97, $9C, $C6, $67 : db $55, $0B ; 0x1E5C\u20130x1E5F: 0x597, 0x59C, 0xBC6, 0x067\n#_04AD90: db $C7, $67, $E7, $E6 : db $2B, $B2 ; 0x1E60\u20130x1E63: 0xBC7, 0x267, 0x2E7, 0xBE6\n#_04AD96: db $C5, $74, $0F, $36 : db $0B, $BB ; 0x1E64\u20130x1E67: 0xBC5, 0x074, 0xB0F, 0xB36\n#_04AD9C: db $3F, $20, $E6, $B7 : db $BB, $16 ; 0x1E68\u20130x1E6B: 0xB3F, 0xB20, 0x6E6, 0x1B7\n#_04ADA2: db $13, $12, $C7, $CD : db $BB, $22 ; 0x1E6C\u20130x1E6F: 0xB13, 0xB12, 0x2C7, 0x2CD\n#_04ADA8: db $C7, $C6, $20, $C7 : db $20, $22 ; 0x1E70\u20130x1E73: 0x0C7, 0x2C6, 0x220, 0x2C7\n#_04ADAE: db $85, $C8, $EE, $C7 : db $30, $22 ; 0x1E74\u20130x1E77: 0x085, 0x3C8, 0x2EE, 0x2C7\n#_04ADB4: db $EE, $10, $14, $39 : db $BB, $BB ; 0x1E78\u20130x1E7B: 0xBEE, 0xB10, 0xB14, 0xB39\n#_04ADBA: db $C7, $EE, $E4, $36 : db $2B, $BB ; 0x1E7C\u20130x1E7F: 0xBC7, 0x2EE, 0xBE4, 0xB36\n#_04ADC0: db $45, $C7, $F6, $74 : db $92, $2B ; 0x1E80\u20130x1E83: 0x245, 0x9C7, 0xBF6, 0x274\n#_04ADC6: db $CA, $C5, $C7, $3F : db $00, $2B ; 0x1E84\u20130x1E87: 0x0CA, 0x0C5, 0xBC7, 0x23F\n#_04ADCC: db $C7, $C7, $74, $FE : db $22, $B2 ; 0x1E88\u20130x1E8B: 0x2C7, 0x2C7, 0x274, 0xBFE\n#_04ADD2: db $68, $40, $3F, $C7 : db $BB, $B2 ; 0x1E8C\u20130x1E8F: 0xB68, 0xB40, 0x23F, 0xBC7\n#_04ADD8: db $71, $69, $46, $68 : db $B6, $BB ; 0x1E90\u20130x1E93: 0x671, 0xB69, 0xB46, 0xB68\n#_04ADDE: db $71, $97, $05, $07 : db $B5, $11 ; 0x1E94\u20130x1E97: 0x571, 0xB97, 0x105, 0x107\n#_04ADE4: db $97, $97, $40, $C6 : db $55, $60 ; 0x1E98\u20130x1E9B: 0x597, 0x597, 0x040, 0x6C6\n#_04ADEA: db $C6, $C6, $EE, $C6 : db $00, $10 ; 0x1E9C\u20130x1E9F: 0x0C6, 0x0C6, 0x0EE, 0x1C6\n#_04ADF0: db $C6, $6A, $C6, $1B : db $01, $02 ; 0x1EA0\u20130x1EA3: 0x1C6, 0x06A, 0x2C6, 0x01B\n#_04ADF6: db $5B, $1B, $34, $E1 : db $12, $00 ; 0x1EA4\u20130x1EA7: 0x25B, 0x11B, 0x034, 0x0E1\n#_04ADFC: db $1B, $05, $AD, $AB : db $21, $60 ; 0x1EA8\u20130x1EAB: 0x11B, 0x205, 0x0AD, 0x6AB\n#_04AE02: db $C6, $88, $78, $84 : db $0B, $13 ; 0x1EAC\u20130x1EAF: 0xBC6, 0x088, 0x378, 0x184\n#_04AE08: db $7E, $A9, $FF, $5B : db $30, $11 ; 0x1EB0\u20130x1EB3: 0x07E, 0x3A9, 0x1FF, 0x15B\n#_04AE0E: db $10, $03, $34, $03 : db $2B, $0B ; 0x1EB4\u20130x1EB7: 0xB10, 0x203, 0xB34, 0x003\n#_04AE14: db $04, $DA, $DB, $DD : db $B2, $22 ; 0x1EB8\u20130x1EBB: 0x204, 0xBDA, 0x2DB, 0x2DD\n#_04AE1A: db $07, $E9, $C6, $34 : db $B2, $00 ; 0x1EBC\u20130x1EBF: 0x207, 0xBE9, 0x0C6, 0x034\n#_04AE20: db $C7, $E9, $EF, $F1 : db $22, $BB ; 0x1EC0\u20130x1EC3: 0x2C7, 0x2E9, 0xBEF, 0xBF1\n#_04AE26: db $83, $05, $DD, $DF : db $3B, $22 ; 0x1EC4\u20130x1EC7: 0xB83, 0x305, 0x2DD, 0x2DF\n#_04AE2C: db $F3, $F8, $82, $7E : db $BB, $33 ; 0x1EC8\u20130x1ECB: 0xBF3, 0xBF8, 0x382, 0x37E\n#_04AE32: db $06, $DB, $FD, $FF : db $B2, $BB ; 0x1ECC\u20130x1ECF: 0x206, 0xBDB, 0xBFD, 0xBFF\n#_04AE38: db $05, $DF, $34, $05 : db $B2, $0B ; 0x1ED0\u20130x1ED3: 0x205, 0xBDF, 0xB34, 0x005\n#_04AE3E: db $DA, $01, $05, $05 : db $2C, $CB ; 0x1ED4\u20130x1ED7: 0xCDA, 0x201, 0xB05, 0xC05\n#_04AE44: db $D2, $9A, $98, $07 : db $2B, $BC ; 0x1ED8\u20130x1EDB: 0xBD2, 0x29A, 0xC98, 0xB07\n#_04AE4A: db $09, $34, $7B, $7E : db $C0, $61 ; 0x1EDC\u20130x1EDF: 0x009, 0xC34, 0x17B, 0x67E\n#_04AE50: db $84, $00, $C2, $C2 : db $31, $11 ; 0x1EE0\u20130x1EE3: 0x184, 0x300, 0x1C2, 0x1C2\n#_04AE56: db $AC, $AA, $AA, $83 : db $66, $63 ; 0x1EE4\u20130x1EE7: 0x6AC, 0x6AA, 0x3AA, 0x683\n#_04AE5C: db $04, $62, $7E, $4B : db $B1, $31 ; 0x1EE8\u20130x1EEB: 0x104, 0xB62, 0x17E, 0x34B\n#_04AE62: db $7E, $86, $0B, $35 : db $3B, $C0 ; 0x1EEC\u20130x1EEF: 0xB7E, 0x386, 0x00B, 0xC35\n#_04AE68: db $EC, $7E, $34, $53 : db $13, $01 ; 0x1EF0\u20130x1EF3: 0x3EC, 0x17E, 0x134, 0x053\n#_04AE6E: db $EE, $7E, $7E, $34 : db $23, $30 ; 0x1EF4\u20130x1EF7: 0x3EE, 0x27E, 0x07E, 0x334\n#_04AE74: db $EE, $E6, $85, $86 : db $12, $BB ; 0x1EF8\u20130x1EFB: 0x2EE, 0x1E6, 0xB85, 0xB86\n#_04AE7A: db $0D, $95, $71, $EC : db $CB, $02 ; 0x1EFC\u20130x1EFF: 0xB0D, 0xC95, 0x271, 0x0EC\n#_04AE80: db $35, $42, $8D, $34 : db $05, $70 ; 0x1F00\u20130x1F03: 0x535, 0x042, 0x08D, 0x734\n#_04AE86: db $71, $9F, $79, $0E : db $00, $7C ; 0x1F04\u20130x1F07: 0x071, 0x09F, 0xC79, 0x70E\n#_04AE8C: db $57, $A1, $9F, $87 : db $20, $07 ; 0x1F08\u20130x1F0B: 0x057, 0x2A1, 0x79F, 0x087\n#_04AE92: db $E6, $F1, $54, $75 : db $62, $27 ; 0x1F0C\u20130x1F0F: 0x2E6, 0x6F1, 0x754, 0x275\n#_04AE98: db $75, $5A, $75, $E6 : db $77, $72 ; 0x1F10\u20130x1F13: 0x775, 0x75A, 0x275, 0x7E6\n#_04AE9E: db $EE, $27, $E6, $E6 : db $21, $22 ; 0x1F14\u20130x1F17: 0x1EE, 0x227, 0x2E6, 0x2E6\n#_04AEA4: db $E6, $ED, $F2, $97 : db $22, $15 ; 0x1F18\u20130x1F1B: 0x2E6, 0x2ED, 0x5F2, 0x197\n#_04AEAA: db $D5, $AA, $58, $66 : db $16, $11 ; 0x1F1C\u20130x1F1F: 0x6D5, 0x1AA, 0x158, 0x166\n#_04AEB0: db $20, $C6, $31, $C2 : db $20, $11 ; 0x1F20\u20130x1F23: 0x020, 0x2C6, 0x131, 0x1C2\n#_04AEB6: db $66, $F8, $D8, $D7 : db $12, $22 ; 0x1F24\u20130x1F27: 0x266, 0x1F8, 0x2D8, 0x2D7\n#_04AEBC: db $15, $DA, $E6, $DA : db $B2, $22 ; 0x1F28\u20130x1F2B: 0x215, 0xBDA, 0x2E6, 0x2DA\n#_04AEC2: db $71, $47, $87, $42 : db $BB, $35 ; 0x1F2C\u20130x1F2F: 0xB71, 0xB47, 0x587, 0x342\n#_04AEC8: db $E6, $C7, $0F, $10 : db $22, $BB ; 0x1F30\u20130x1F33: 0x2E6, 0x2C7, 0xB0F, 0xB10\n#_04AECE: db $15, $EE, $78, $EF : db $B1, $12 ; 0x1F34\u20130x1F37: 0x115, 0xBEE, 0x278, 0x1EF\n#_04AED4: db $C7, $E6, $E6, $79 : db $22, $2B ; 0x1F38\u20130x1F3B: 0x2C7, 0x2E6, 0xBE6, 0x279\n#_04AEDA: db $97, $50, $4F, $50 : db $57, $77 ; 0x1F3C\u20130x1F3F: 0x797, 0x550, 0x74F, 0x750\n#_04AEE0: db $51, $C6, $65, $C6 : db $70, $12 ; 0x1F40\u20130x1F43: 0x051, 0x7C6, 0x265, 0x1C6\n#_04AEE6: db $B6, $B1, $14, $BA : db $BB, $CB ; 0x1F44\u20130x1F47: 0xBB6, 0xBB1, 0xB14, 0xCBA\n#_04AEEC: db $B1, $16, $EF, $CD : db $BC, $22 ; 0x1F48\u20130x1F4B: 0xCB1, 0xB16, 0x2EF, 0x2CD\n#_04AEF2: db $D3, $C8, $19, $1B : db $BB, $CC ; 0x1F4C\u20130x1F4F: 0xBD3, 0xBC8, 0xC19, 0xC1B\n#_04AEF8: db $C8, $B3, $A0, $CD : db $BB, $B2 ; 0x1F50\u20130x1F53: 0xBC8, 0xBB3, 0x2A0, 0xBCD\n#_04AEFE: db $DF, $B4, $D8, $A6 : db $2B, $BB ; 0x1F54\u20130x1F57: 0xBDF, 0x2B4, 0xBD8, 0xBA6\n#_04AF04: db $D4, $A9, $C2, $B5 : db $BB, $BB ; 0x1F58\u20130x1F5B: 0xBD4, 0xBA9, 0xBC2, 0xBB5\n#_04AF0A: db $9E, $B4, $EF, $DD : db $BB, $22 ; 0x1F5C\u20130x1F5F: 0xB9E, 0xBB4, 0x2EF, 0x2DD\n#_04AF10: db $C7, $D7, $A3, $B4 : db $2B, $BB ; 0x1F60\u20130x1F63: 0xBC7, 0x2D7, 0xBA3, 0xBB4\n#_04AF16: db $C7, $C7, $B4, $C7 : db $22, $B2 ; 0x1F64\u20130x1F67: 0x2C7, 0x2C7, 0x2B4, 0xBC7\n#_04AF1C: db $A0, $9E, $AC, $C7 : db $BB, $B2 ; 0x1F68\u20130x1F6B: 0xBA0, 0xB9E, 0x2AC, 0xBC7\n#_04AF22: db $AC, $AC, $C7, $CD : db $BB, $22 ; 0x1F6C\u20130x1F6F: 0xBAC, 0xBAC, 0x2C7, 0x2CD\n#_04AF28: db $C7, $A2, $F6, $F6 : db $2B, $22 ; 0x1F70\u20130x1F73: 0xBC7, 0x2A2, 0x2F6, 0x2F6\n#_04AF2E: db $DF, $C7, $B5, $A2 : db $22, $BB ; 0x1F74\u20130x1F77: 0x2DF, 0x2C7, 0xBB5, 0xBA2\n#_04AF34: db $E4, $C7, $D2, $C7 : db $22, $22 ; 0x1F78\u20130x1F7B: 0x2E4, 0x2C7, 0x2D2, 0x2C7\n#_04AF3A: db $B5, $D9, $CD, $CD : db $B2, $22 ; 0x1F7C\u20130x1F7F: 0x2B5, 0xBD9, 0x2CD, 0x2CD\n#_04AF40: db $DF, $9E, $D7, $DF : db $2B, $22 ; 0x1F80\u20130x1F83: 0xBDF, 0x29E, 0x2D7, 0x2DF\n#_04AF46: db $B5, $A0, $C7, $EF : db $BB, $22 ; 0x1F84\u20130x1F87: 0xBB5, 0xBA0, 0x2C7, 0x2EF\n#_04AF4C: db $D6, $F6, $EF, $9E : db $22, $23 ; 0x1F88\u20130x1F8B: 0x2D6, 0x2F6, 0x3EF, 0x29E\n#_04AF52: db $4F, $FF, $8C, $8D : db $72, $77 ; 0x1F8C\u20130x1F8F: 0x24F, 0x7FF, 0x78C, 0x78D\n#_04AF58: db $07, $05, $33, $7B : db $51, $77 ; 0x1F90\u20130x1F93: 0x107, 0x505, 0x733, 0x77B\n#_04AF5E: db $E1, $51, $51, $F7 : db $B7, $72 ; 0x1F94\u20130x1F97: 0x7E1, 0xB51, 0x251, 0x7F7\n#_04AF64: db $65, $24, $BA, $0F : db $1C, $23 ; 0x1F98\u20130x1F9B: 0xC65, 0x124, 0x3BA, 0x20F\n#_04AF6A: db $B7, $8D, $31, $CE : db $27, $12 ; 0x1F9C\u20130x1F9F: 0x7B7, 0x28D, 0x231, 0x1CE\n#_04AF70: db $4C, $B8, $E6, $C8 : db $39, $20 ; 0x1FA0\u20130x1FA3: 0x94C, 0x3B8, 0x0E6, 0x2C8\n#_04AF76: db $20, $C6, $1E, $D1 : db $50, $30 ; 0x1FA4\u20130x1FA7: 0x020, 0x5C6, 0x01E, 0x3D1\n#_04AF7C: db $96, $FF, $4F, $05 : db $32, $71 ; 0x1FA8\u20130x1FAB: 0x296, 0x3FF, 0x14F, 0x705\n#_04AF82: db $02, $E1, $90, $2D : db $32, $21 ; 0x1FAC\u20130x1FAF: 0x202, 0x3E1, 0x190, 0x22D\n#_04AF88: db $FD, $E6, $FA, $87 : db $22, $67 ; 0x1FB0\u20130x1FB3: 0x2FD, 0x2E6, 0x7FA, 0x687\n#_04AF8E: db $E4, $E2, $E6, $E6 : db $62, $26 ; 0x1FB4\u20130x1FB7: 0x2E4, 0x6E2, 0x6E6, 0x2E6\n#_04AF94: db $C6, $5C, $E4, $E6 : db $07, $62 ; 0x1FB8\u20130x1FBB: 0x7C6, 0x05C, 0x2E4, 0x6E6\n#_04AF9A: db $E6, $66, $C6, $26 : db $21, $0C ; 0x1FBC\u20130x1FBF: 0x1E6, 0x266, 0xCC6, 0x026\n#_04AFA0: db $2D, $26, $2F, $31 : db $CC, $CC ; 0x1FC0\u20130x1FC3: 0xC2D, 0xC26, 0xC2F, 0xC31\n#_04AFA6: db $32, $33, $34, $26 : db $CC, $CC ; 0x1FC4\u20130x1FC7: 0xC32, 0xC33, 0xC34, 0xC26\n#_04AFAC: db $3E, $31, $35, $26 : db $CC, $CC ; 0x1FC8\u20130x1FCB: 0xC3E, 0xC31, 0xC35, 0xC26\n#_04AFB2: db $26, $26, $26, $48 : db $CC, $CC ; 0x1FCC\u20130x1FCF: 0xC26, 0xC26, 0xC26, 0xC48\n#_04AFB8: db $26, $4A, $4C, $26 : db $CC, $CC ; 0x1FD0\u20130x1FD3: 0xC26, 0xC4A, 0xC4C, 0xC26\n#_04AFBE: db $26, $47, $2C, $54 : db $CC, $CC ; 0x1FD4\u20130x1FD7: 0xC26, 0xC47, 0xC2C, 0xC54\n#_04AFC4: db $56, $5B, $5D, $59 : db $CC, $CC ; 0x1FD8\u20130x1FDB: 0xC56, 0xC5B, 0xC5D, 0xC59\n#_04AFCA: db $56, $63, $65, $63 : db $CC, $CC ; 0x1FDC\u20130x1FDF: 0xC56, 0xC63, 0xC65, 0xC63\n#_04AFD0: db $67, $70, $70, $68 : db $C2, $2C ; 0x1FE0\u20130x1FE3: 0x267, 0xC70, 0xC70, 0x268\n#_04AFD6: db $68, $70, $70, $70 : db $C2, $22 ; 0x1FE4\u20130x1FE7: 0x268, 0xC70, 0x270, 0x270\n#_04AFDC: db $69, $68, $70, $70 : db $CC, $22 ; 0x1FE8\u20130x1FEB: 0xC69, 0xC68, 0x270, 0x270\n#_04AFE2: db $69, $69, $68, $70 : db $CC, $C2 ; 0x1FEC\u20130x1FEF: 0xC69, 0xC69, 0x268, 0xC70\n#_04AFE8: db $70, $6A, $70, $68 : db $2C, $2C ; 0x1FF0\u20130x1FF3: 0xC70, 0x26A, 0xC70, 0x268\n#_04AFEE: db $6B, $70, $6C, $70 : db $C2, $C2 ; 0x1FF4\u20130x1FF7: 0x26B, 0xC70, 0x26C, 0xC70\n#_04AFF4: db $70, $70, $70, $70 : db $22, $22 ; 0x1FF8\u20130x1FFB: 0x270, 0x270, 0x270, 0x270\n#_04AFFA: db $70, $69, $70, $70 : db $2C, $22 ; 0x1FFC\u20130x1FFF: 0xC70, 0x269, 0x270, 0x270\n#_04B000: db $70, $70, $68, $69 : db $22, $CC ; 0x2000\u20130x2003: 0x270, 0x270, 0xC68, 0xC69\n#_04B006: db $6B, $70, $69, $70 : db $C2, $C2 ; 0x2004\u20130x2007: 0x26B, 0xC70, 0x269, 0xC70\n#_04B00C: db $69, $68, $70, $70 : db $CC, $22 ; 0x2008\u20130x200B: 0xC69, 0xC68, 0x270, 0x270\n#_04B012: db $6A, $69, $70, $70 : db $CC, $22 ; 0x200C\u20130x200F: 0xC6A, 0xC69, 0x270, 0x270\n#_04B018: db $70, $69, $6A, $70 : db $2C, $C2 ; 0x2010\u20130x2013: 0xC70, 0x269, 0x26A, 0xC70\n#_04B01E: db $69, $68, $6D, $70 : db $CC, $C2 ; 0x2014\u20130x2017: 0xC69, 0xC68, 0x26D, 0xC70\n#_04B024: db $6B, $70, $6D, $69 : db $C2, $CC ; 0x2018\u20130x201B: 0x26B, 0xC70, 0xC6D, 0xC69\n#_04B02A: db $69, $68, $70, $70 : db $CC, $22 ; 0x201C\u20130x201F: 0xC69, 0xC68, 0x270, 0x270\n#_04B030: db $6D, $70, $69, $69 : db $C2, $CC ; 0x2020\u20130x2023: 0x26D, 0xC70, 0xC69, 0xC69\n#_04B036: db $70, $70, $70, $70 : db $22, $22 ; 0x2024\u20130x2027: 0x270, 0x270, 0x270, 0x270\n#_04B03C: db $6A, $70, $69, $70 : db $C2, $C2 ; 0x2028\u20130x202B: 0x26A, 0xC70, 0x269, 0xC70\n#_04B042: db $70, $70, $70, $68 : db $22, $2C ; 0x202C\u20130x202F: 0x270, 0x270, 0xC70, 0x268\n#_04B048: db $6C, $69, $70, $69 : db $CC, $2C ; 0x2030\u20130x2033: 0xC6C, 0xC69, 0xC70, 0x269\n#_04B04E: db $6B, $6C, $6F, $70 : db $CC, $CC ; 0x2034\u20130x2037: 0xC6B, 0xC6C, 0xC6F, 0xC70\n#_04B054: db $76, $72, $53, $75 : db $CC, $1C ; 0x2038\u20130x203B: 0xC76, 0xC72, 0xC53, 0x175\n#_04B05A: db $E3, $75, $76, $7C : db $0C, $CC ; 0x203C\u20130x203F: 0xCE3, 0x075, 0xC76, 0xC7C\n#_04B060: db $79, $C9, $6D, $7F : db $C0, $1C ; 0x2040\u20130x2043: 0x079, 0xCC9, 0xC6D, 0x17F\n#_04B066: db $80, $34, $7F, $EB : db $C0, $C1 ; 0x2044\u20130x2047: 0x080, 0xC34, 0x17F, 0xCEB\n#_04B06C: db $83, $7C, $34, $34 : db $CC, $00 ; 0x2048\u20130x204B: 0xC83, 0xC7C, 0x034, 0x034\n#_04B072: db $1F, $34, $8D, $87 : db $50, $CC ; 0x204C\u20130x204F: 0x01F, 0x534, 0xC8D, 0xC87\n#_04B078: db $8F, $90, $91, $92 : db $CC, $CC ; 0x2050\u20130x2053: 0xC8F, 0xC90, 0xC91, 0xC92\n#_04B07E: db $9E, $CD, $83, $87 : db $32, $CC ; 0x2054\u20130x2057: 0x29E, 0x3CD, 0xC83, 0xC87\n#_04B084: db $90, $9E, $A0, $91 : db $CC, $CC ; 0x2058\u20130x205B: 0xC90, 0xC9E, 0xCA0, 0xC91\n#_04B08A: db $A1, $A3, $FB, $CD : db $CC, $22 ; 0x205C\u20130x205F: 0xCA1, 0xCA3, 0x2FB, 0x2CD\n#_04B090: db $A5, $AC, $90, $90 : db $CC, $CC ; 0x2060\u20130x2063: 0xCA5, 0xCAC, 0xC90, 0xC90\n#_04B096: db $AD, $A1, $AF, $21 : db $CC, $C5 ; 0x2064\u20130x2067: 0xCAD, 0xCA1, 0x5AF, 0xC21\n#_04B09C: db $B9, $B0, $BB, $BC : db $CC, $CC ; 0x2068\u20130x206B: 0xCB9, 0xCB0, 0xCBB, 0xCBC\n#_04B0A2: db $B7, $A1, $AA, $BE : db $CC, $CC ; 0x206C\u20130x206F: 0xCB7, 0xCA1, 0xCAA, 0xCBE\n#_04B0A8: db $65, $4F, $C3, $83 : db $17, $CC ; 0x2070\u20130x2073: 0x765, 0x14F, 0xCC3, 0xC83\n#_04B0AE: db $87, $34, $C4, $51 : db $C0, $C7 ; 0x2074\u20130x2077: 0x087, 0xC34, 0x7C4, 0xC51\n#_04B0B4: db $AA, $AA, $AA, $AA : db $66, $66 ; 0x2078\u20130x207B: 0x6AA, 0x6AA, 0x6AA, 0x6AA\n#_04B0BA: db $AA, $C7, $71, $78 : db $6C, $CC ; 0x207C\u20130x207F: 0xCAA, 0x6C7, 0xC71, 0xC78\n#_04B0C0: db $34, $C9, $C9, $CB : db $0C, $CC ; 0x2080\u20130x2083: 0xC34, 0x0C9, 0xCC9, 0xCCB\n#_04B0C6: db $CB, $C1, $B9, $A5 : db $CC, $C1 ; 0x2084\u20130x2087: 0xCCB, 0xCC1, 0x1B9, 0xCA5\n#_04B0CC: db $A1, $CF, $D3, $86 : db $CC, $CC ; 0x2088\u20130x208B: 0xCA1, 0xCCF, 0xCD3, 0xC86\n#_04B0D2: db $C4, $A1, $C9, $CC : db $1C, $CC ; 0x208C\u20130x208F: 0xCC4, 0x1A1, 0xCC9, 0xCCC\n#_04B0D8: db $D7, $C2, $C9, $D9 : db $CC, $CC ; 0x2090\u20130x2093: 0xCD7, 0xCC2, 0xCC9, 0xCD9\n#_04B0DE: db $CB, $70, $85, $B9 : db $CC, $CC ; 0x2094\u20130x2097: 0xCCB, 0xC70, 0xC85, 0xCB9\n#_04B0E4: db $A9, $D4, $71, $78 : db $0C, $CC ; 0x2098\u20130x209B: 0xCA9, 0x0D4, 0xC71, 0xC78\n#_04B0EA: db $A5, $9B, $D4, $E0 : db $CC, $CC ; 0x209C\u20130x209F: 0xCA5, 0xC9B, 0xCD4, 0xCE0\n#_04B0F0: db $E1, $DC, $DE, $DE : db $CC, $CC ; 0x20A0\u20130x20A3: 0xCE1, 0xCDC, 0xCDE, 0xCDE\n#_04B0F6: db $DD, $9D, $C9, $CB : db $CC, $CC ; 0x20A4\u20130x20A7: 0xCDD, 0xC9D, 0xCC9, 0xCCB\n#_04B0FC: db $E5, $EC, $C3, $C0 : db $CC, $CC ; 0x20A8\u20130x20AB: 0xCE5, 0xCEC, 0xCC3, 0xCC0\n#_04B102: db $ED, $EF, $F1, $D0 : db $CC, $CC ; 0x20AC\u20130x20AF: 0xCED, 0xCEF, 0xCF1, 0xCD0\n#_04B108: db $A4, $C9, $CB, $F2 : db $CC, $CC ; 0x20B0\u20130x20B3: 0xCA4, 0xCC9, 0xCCB, 0xCF2\n#_04B10E: db $F4, $78, $F7, $7C : db $CC, $CC ; 0x20B4\u20130x20B7: 0xCF4, 0xC78, 0xCF7, 0xC7C\n#_04B114: db $34, $FB, $7C, $FD : db $0C, $CC ; 0x20B8\u20130x20BB: 0xC34, 0x0FB, 0xC7C, 0xCFD\n#_04B11A: db $C7, $FE, $FC, $C7 : db $2C, $C2 ; 0x20BC\u20130x20BF: 0xCC7, 0x2FE, 0x2FC, 0xCC7\n#_04B120: db $FD, $FE, $34, $C0 : db $CC, $0C ; 0x20C0\u20130x20C3: 0xCFD, 0xCFE, 0xC34, 0x0C0\n#_04B126: db $C2, $06, $07, $FF : db $CD, $DC ; 0x20C4\u20130x20C7: 0xDC2, 0xC06, 0xC07, 0xDFF\n#_04B12C: db $03, $CD, $25, $CD : db $D2, $32 ; 0x20C8\u20130x20CB: 0x203, 0xDCD, 0x225, 0x3CD\n#_04B132: db $05, $C7, $FE, $FD : db $D2, $CC ; 0x20CC\u20130x20CF: 0x205, 0xDC7, 0xCFE, 0xCFD\n#_04B138: db $CD, $C0, $8E, $FF : db $2C, $CC ; 0x20D0\u20130x20D3: 0xCCD, 0x2C0, 0xC8E, 0xCFF\n#_04B13E: db $0B, $FC, $08, $CD : db $DC, $D2 ; 0x20D4\u20130x20D7: 0xC0B, 0xDFC, 0x208, 0xDCD\n#_04B144: db $CD, $FE, $0C, $D3 : db $2C, $DC ; 0x20D8\u20130x20DB: 0xCCD, 0x2FE, 0xC0C, 0xDD3\n#_04B14A: db $78, $34, $32, $E7 : db $C0, $21 ; 0x20DC\u20130x20DF: 0x078, 0xC34, 0x132, 0x2E7\n#_04B150: db $CD, $D7, $0C, $C7 : db $22, $D2 ; 0x20E0\u20130x20E3: 0x2CD, 0x2D7, 0x20C, 0xDC7\n#_04B156: db $C0, $C2, $78, $C7 : db $CC, $62 ; 0x20E4\u20130x20E7: 0xCC0, 0xCC2, 0x278, 0x6C7\n#_04B15C: db $08, $C7, $C7, $08 : db $D2, $2D ; 0x20E8\u20130x20EB: 0x208, 0xDC7, 0xDC7, 0x208\n#_04B162: db $06, $36, $03, $04 : db $D0, $DD ; 0x20EC\u20130x20EF: 0x006, 0xD36, 0xD03, 0xD04\n#_04B168: db $1F, $35, $CD, $0A : db $B0, $2D ; 0x20F0\u20130x20F3: 0x01F, 0xB35, 0xDCD, 0x20A\n#_04B16E: db $CD, $CD, $CD, $34 : db $22, $20 ; 0x20F4\u20130x20F7: 0x2CD, 0x2CD, 0x0CD, 0x234\n#_04B174: db $34, $25, $25, $26 : db $23, $33 ; 0x20F8\u20130x20FB: 0x334, 0x225, 0x325, 0x326\n#_04B17A: db $D7, $78, $C7, $33 : db $26, $22 ; 0x20FC\u20130x20FF: 0x6D7, 0x278, 0x2C7, 0x233\n#_04B180: db $F8, $34, $78, $C7 : db $22, $62 ; 0x2100\u20130x2103: 0x2F8, 0x234, 0x278, 0x6C7\n#_04B186: db $0D, $C2, $DC, $B9 : db $DC, $CC ; 0x2104\u20130x2107: 0xC0D, 0xDC2, 0xCDC, 0xCB9\n#_04B18C: db $34, $F8, $ED, $DF : db $22, $12 ; 0x2108\u20130x210B: 0x234, 0x2F8, 0x2ED, 0x1DF\n#_04B192: db $CF, $6D, $79, $D3 : db $21, $CC ; 0x210C\u20130x210F: 0x1CF, 0x26D, 0xC79, 0xCD3\n#_04B198: db $C0, $11, $C1, $34 : db $CD, $C2 ; 0x2110\u20130x2113: 0xDC0, 0xC11, 0x2C1, 0xC34\n#_04B19E: db $C5, $DF, $0A, $6D : db $22, $D1 ; 0x2114\u20130x2117: 0x2C5, 0x2DF, 0x10A, 0xD6D\n#_04B1A4: db $72, $6F, $DA, $B9 : db $CC, $CC ; 0x2118\u20130x211B: 0xC72, 0xC6F, 0xCDA, 0xCB9\n#_04B1AA: db $36, $C7, $C1, $F4 : db $22, $CC ; 0x211C\u20130x211F: 0x236, 0x2C7, 0xCC1, 0xCF4\n#_04B1B0: db $78, $ED, $7C, $78 : db $C1, $C6 ; 0x2120\u20130x2123: 0x178, 0xCED, 0x67C, 0xC78\n#_04B1B6: db $ED, $C5, $FC, $FC : db $12, $CC ; 0x2124\u20130x2127: 0x2ED, 0x1C5, 0xCFC, 0xCFC\n#_04B1BC: db $03, $CD, $04, $04 : db $D2, $DD ; 0x2128\u20130x212B: 0x203, 0xDCD, 0xD04, 0xD04\n#_04B1C2: db $CD, $D1, $C7, $C7 : db $22, $22 ; 0x212C\u20130x212F: 0x2CD, 0x2D1, 0x2C7, 0x2C7\n#_04B1C8: db $C7, $D7, $C7, $08 : db $22, $2D ; 0x2130\u20130x2133: 0x2C7, 0x2D7, 0xDC7, 0x208\n#_04B1CE: db $0B, $01, $C7, $0A : db $DD, $2D ; 0x2134\u20130x2137: 0xD0B, 0xD01, 0xDC7, 0x20A\n#_04B1D4: db $C7, $04, $04, $04 : db $2D, $DD ; 0x2138\u20130x213B: 0xDC7, 0x204, 0xD04, 0xD04\n#_04B1DA: db $CD, $05, $C7, $C7 : db $2D, $22 ; 0x213C\u20130x213F: 0xDCD, 0x205, 0x2C7, 0x2C7\n#_04B1E0: db $C6, $C7, $C7, $04 : db $22, $2D ; 0x2140\u20130x2143: 0x2C6, 0x2C7, 0xDC7, 0x204\n#_04B1E6: db $0B, $CD, $C7, $CD : db $D2, $22 ; 0x2144\u20130x2147: 0x20B, 0xDCD, 0x2C7, 0x2CD\n#_04B1EC: db $0B, $0A, $0A, $C7 : db $DD, $D2 ; 0x2148\u20130x214B: 0xD0B, 0xD0A, 0x20A, 0xDC7\n#_04B1F2: db $03, $04, $0A, $C7 : db $DD, $D2 ; 0x214C\u20130x214F: 0xD03, 0xD04, 0x20A, 0xDC7\n#_04B1F8: db $F8, $CD, $28, $CD : db $22, $32 ; 0x2150\u20130x2153: 0x2F8, 0x2CD, 0x228, 0x3CD\n#_04B1FE: db $CD, $C7, $03, $32 : db $22, $D2 ; 0x2154\u20130x2157: 0x2CD, 0x2C7, 0x203, 0xD32\n#_04B204: db $9B, $71, $12, $13 : db $C0, $33 ; 0x2158\u20130x215B: 0x09B, 0xC71, 0x312, 0x313\n#_04B20A: db $14, $04, $9B, $0F : db $3D, $CD ; 0x215C\u20130x215F: 0xD14, 0x304, 0xD9B, 0xC0F\n#_04B210: db $C2, $71, $F8, $1D : db $C0, $03 ; 0x2160\u20130x2163: 0x0C2, 0xC71, 0x3F8, 0x01D\n#_04B216: db $C0, $0F, $11, $53 : db $2D, $D1 ; 0x2164\u20130x2167: 0xDC0, 0x20F, 0x111, 0xD53\n#_04B21C: db $CD, $2D, $B9, $DE : db $21, $CC ; 0x2168\u20130x216B: 0x1CD, 0x22D, 0xCB9, 0xCDE\n#_04B222: db $11, $11, $C0, $C2 : db $DD, $CC ; 0x216C\u20130x216F: 0xD11, 0xD11, 0xCC0, 0xCC2\n#_04B228: db $16, $71, $C6, $08 : db $D0, $2D ; 0x2170\u20130x2173: 0x016, 0xD71, 0xDC6, 0x208\n#_04B22E: db $C1, $18, $11, $C0 : db $CD, $DC ; 0x2174\u20130x2177: 0xDC1, 0xC18, 0xC11, 0xDC0\n#_04B234: db $10, $9C, $B9, $B9 : db $DC, $CC ; 0x2178\u20130x217B: 0xC10, 0xD9C, 0xCB9, 0xCB9\n#_04B23A: db $99, $25, $26, $05 : db $33, $3D ; 0x217C\u20130x217F: 0x399, 0x325, 0xD26, 0x305\n#_04B240: db $D7, $DA, $34, $F8 : db $2C, $22 ; 0x2180\u20130x2183: 0xCD7, 0x2DA, 0x234, 0x2F8\n#_04B246: db $72, $72, $C1, $0E : db $CC, $CD ; 0x2184\u20130x2187: 0xC72, 0xC72, 0xDC1, 0xC0E\n#_04B24C: db $E9, $DE, $B9, $6D : db $CC, $C4 ; 0x2188\u20130x218B: 0xCE9, 0xCDE, 0x4B9, 0xC6D\n#_04B252: db $79, $F9, $DA, $A4 : db $CC, $CC ; 0x218C\u20130x218F: 0xC79, 0xCF9, 0xCDA, 0xCA4\n#_04B258: db $A4, $18, $C1, $B9 : db $CD, $CC ; 0x2190\u20130x2193: 0xDA4, 0xC18, 0xCC1, 0xCB9\n#_04B25E: db $08, $34, $E2, $6F : db $D0, $0C ; 0x2194\u20130x2197: 0x008, 0xD34, 0xCE2, 0x06F\n#_04B264: db $11, $71, $F4, $77 : db $DC, $CC ; 0x2198\u20130x219B: 0xC11, 0xD71, 0xCF4, 0xC77\n#_04B26A: db $71, $78, $E7, $FF : db $CC, $12 ; 0x219C\u20130x219F: 0xC71, 0xC78, 0x2E7, 0x1FF\n#_04B270: db $9B, $DC, $DC, $11 : db $CC, $CD ; 0x21A0\u20130x21A3: 0xC9B, 0xCDC, 0xDDC, 0xC11\n#_04B276: db $71, $76, $1A, $1A : db $CC, $DD ; 0x21A4\u20130x21A7: 0xC71, 0xC76, 0xD1A, 0xD1A\n#_04B27C: db $E7, $53, $D2, $08 : db $11, $2D ; 0x21A8\u20130x21AB: 0x1E7, 0x153, 0xDD2, 0x208\n#_04B282: db $2D, $0F, $D3, $C0 : db $1D, $CC ; 0x21AC\u20130x21AF: 0xD2D, 0x10F, 0xCD3, 0xCC0\n#_04B288: db $1C, $7C, $76, $6C : db $DC, $11 ; 0x21B0\u20130x21B3: 0xC1C, 0xD7C, 0x176, 0x16C\n#_04B28E: db $7D, $79, $7C, $D2 : db $CC, $C2 ; 0x21B4\u20130x21B7: 0xC7D, 0xC79, 0x27C, 0xCD2\n#_04B294: db $08, $D5, $6C, $6D : db $D2, $11 ; 0x21B8\u20130x21BB: 0x208, 0xDD5, 0x16C, 0x16D\n#_04B29A: db $76, $7C, $EB, $0A : db $CC, $1D ; 0x21BC\u20130x21BF: 0xC76, 0xC7C, 0xDEB, 0x10A\n#_04B2A0: db $7C, $C6, $C7, $1F : db $C2, $2B ; 0x21C0\u20130x21C3: 0x27C, 0xCC6, 0xBC7, 0x21F\n#_04B2A6: db $0A, $0A, $04, $03 : db $DD, $DD ; 0x21C4\u20130x21C7: 0xD0A, 0xD0A, 0xD04, 0xD03\n#_04B2AC: db $1B, $C2, $C7, $99 : db $DC, $23 ; 0x21C8\u20130x21CB: 0xC1B, 0xDC2, 0x3C7, 0x299\n#_04B2B2: db $25, $F8, $83, $FA : db $32, $CC ; 0x21CC\u20130x21CF: 0x225, 0x3F8, 0xC83, 0xCFA\n#_04B2B8: db $C7, $DA, $35, $F8 : db $20, $22 ; 0x21D0\u20130x21D3: 0x0C7, 0x2DA, 0x235, 0x2F8\n#_04B2BE: db $71, $86, $C6, $C7 : db $CC, $22 ; 0x21D4\u20130x21D7: 0xC71, 0xC86, 0x2C6, 0x2C7\n#_04B2C4: db $DB, $76, $35, $9C : db $01, $0C ; 0x21D8\u20130x21DB: 0x1DB, 0x076, 0xC35, 0x09C\n#_04B2CA: db $71, $C2, $35, $CE : db $CC, $00 ; 0x21DC\u20130x21DF: 0xC71, 0xCC2, 0x035, 0x0CE\n#_04B2D0: db $7D, $77, $A4, $11 : db $CC, $CD ; 0x21E0\u20130x21E3: 0xC7D, 0xC77, 0xDA4, 0xC11\n#_04B2D6: db $31, $20, $BC, $21 : db $1D, $2D ; 0x21E4\u20130x21E7: 0xD31, 0x120, 0xDBC, 0x221\n#_04B2DC: db $37, $A4, $11, $6F : db $2C, $DC ; 0x21E8\u20130x21EB: 0xC37, 0x2A4, 0xC11, 0xD6F\n#_04B2E2: db $12, $A4, $12, $71 : db $DC, $DC ; 0x21EC\u20130x21EF: 0xC12, 0xDA4, 0xC12, 0xD71\n#_04B2E8: db $11, $C1, $B9, $72 : db $DC, $CC ; 0x21F0\u20130x21F3: 0xC11, 0xDC1, 0xCB9, 0xC72\n#_04B2EE: db $72, $11, $76, $F3 : db $CD, $CC ; 0x21F4\u20130x21F7: 0xD72, 0xC11, 0xC76, 0xCF3\n#_04B2F4: db $F4, $F5, $F6, $77 : db $CC, $CC ; 0x21F8\u20130x21FB: 0xCF4, 0xCF5, 0xCF6, 0xC77\n#_04B2FA: db $76, $D5, $F7, $7C : db $C2, $CC ; 0x21FC\u20130x21FF: 0x276, 0xCD5, 0xCF7, 0xC7C\n#_04B300: db $1A, $23, $FB, $34 : db $DD, $C0 ; 0x2200\u20130x2203: 0xD1A, 0xD23, 0x0FB, 0xC34\n#_04B306: db $1A, $7D, $C6, $34 : db $DC, $20 ; 0x2204\u20130x2207: 0xC1A, 0xD7D, 0x0C6, 0x234\n#_04B30C: db $73, $AE, $D1, $C7 : db $22, $22 ; 0x2208\u20130x220B: 0x273, 0x2AE, 0x2D1, 0x2C7\n#_04B312: db $9C, $B9, $0B, $34 : db $CC, $10 ; 0x220C\u20130x220F: 0xC9C, 0xCB9, 0x00B, 0x134\n#_04B318: db $FC, $D7, $C7, $C0 : db $C2, $2C ; 0x2210\u20130x2213: 0x2FC, 0xCD7, 0xCC7, 0x2C0\n#_04B31E: db $93, $34, $D0, $FC : db $C3, $2C ; 0x2214\u20130x2217: 0x393, 0xC34, 0xCD0, 0x2FC\n#_04B324: db $FD, $C7, $04, $05 : db $C2, $DD ; 0x2218\u20130x221B: 0x2FD, 0xCC7, 0xD04, 0xD05\n#_04B32A: db $03, $05, $76, $7C : db $DD, $CC ; 0x221C\u20130x221F: 0xD03, 0xD05, 0xC76, 0xC7C\n#_04B330: db $31, $CD, $FF, $7C : db $12, $2C ; 0x2220\u20130x2223: 0x231, 0x1CD, 0xCFF, 0x27C\n#_04B336: db $6D, $31, $13, $13 : db $11, $33 ; 0x2224\u20130x2227: 0x16D, 0x131, 0x313, 0x313\n#_04B33C: db $34, $31, $13, $13 : db $01, $33 ; 0x2228\u20130x222B: 0x134, 0x031, 0x313, 0x313\n#_04B342: db $7C, $AF, $A9, $75 : db $C2, $91 ; 0x222C\u20130x222F: 0x27C, 0xCAF, 0x1A9, 0x975\n#_04B348: db $C0, $6C, $EB, $53 : db $21, $11 ; 0x2230\u20130x2233: 0x1C0, 0x26C, 0x1EB, 0x153\n#_04B34E: db $CD, $C7, $0A, $0A : db $22, $DD ; 0x2234\u20130x2237: 0x2CD, 0x2C7, 0xD0A, 0xD0A\n#_04B354: db $C7, $FD, $D7, $04 : db $2C, $2D ; 0x2238\u20130x223B: 0xCC7, 0x2FD, 0xDD7, 0x204\n#_04B35A: db $35, $35, $DE, $B9 : db $22, $CC ; 0x223C\u20130x223F: 0x235, 0x235, 0xCDE, 0xCB9\n#_04B360: db $FA, $10, $2C, $2E : db $CD, $DD ; 0x2240\u20130x2243: 0xDFA, 0xC10, 0xD2C, 0xD2E\n#_04B366: db $2C, $34, $36, $38 : db $DD, $DD ; 0x2244\u20130x2247: 0xD2C, 0xD34, 0xD36, 0xD38\n#_04B36C: db $34, $39, $3B, $35 : db $DD, $DD ; 0x2248\u20130x224B: 0xD34, 0xD39, 0xD3B, 0xD35\n#_04B372: db $38, $34, $34, $3C : db $DD, $DD ; 0x224C\u20130x224F: 0xD38, 0xD34, 0xD34, 0xD3C\n#_04B378: db $3D, $3F, $3F, $34 : db $DD, $D0 ; 0x2250\u20130x2253: 0xD3D, 0xD3F, 0x03F, 0xD34\n#_04B37E: db $40, $40, $47, $49 : db $DD, $DD ; 0x2254\u20130x2257: 0xD40, 0xD40, 0xD47, 0xD49\n#_04B384: db $43, $40, $4B, $4C : db $DD, $DD ; 0x2258\u20130x225B: 0xD43, 0xD40, 0xD4B, 0xD4C\n#_04B38A: db $4A, $48, $52, $50 : db $DD, $D8 ; 0x225C\u20130x225F: 0xD4A, 0xD48, 0x852, 0xD50\n#_04B390: db $4C, $41, $50, $5A : db $DD, $88 ; 0x2260\u20130x2263: 0xD4C, 0xD41, 0x850, 0x85A\n#_04B396: db $4D, $50, $4B, $54 : db $D8, $D8 ; 0x2264\u20130x2267: 0x84D, 0xD50, 0x84B, 0xD54\n#_04B39C: db $5A, $40, $40, $55 : db $8D, $D8 ; 0x2268\u20130x226B: 0xD5A, 0x840, 0x840, 0xD55\n#_04B3A2: db $59, $65, $50, $50 : db $88, $88 ; 0x226C\u20130x226F: 0x859, 0x865, 0x850, 0x850\n#_04B3A8: db $59, $55, $59, $5A : db $DD, $DD ; 0x2270\u20130x2273: 0xD59, 0xD55, 0xD59, 0xD5A\n#_04B3AE: db $5B, $5D, $67, $5F : db $DD, $DD ; 0x2274\u20130x2277: 0xD5B, 0xD5D, 0xD67, 0xD5F\n#_04B3B4: db $5E, $60, $68, $6A : db $DD, $DD ; 0x2278\u20130x227B: 0xD5E, 0xD60, 0xD68, 0xD6A\n#_04B3BA: db $5F, $5F, $6C, $61 : db $DD, $DD ; 0x227C\u20130x227F: 0xD5F, 0xD5F, 0xD6C, 0xD61\n#_04B3C0: db $5D, $5F, $73, $75 : db $DD, $DD ; 0x2280\u20130x2283: 0xD5D, 0xD5F, 0xD73, 0xD75\n#_04B3C6: db $77, $5F, $5F, $68 : db $DD, $DD ; 0x2284\u20130x2287: 0xD77, 0xD5F, 0xD5F, 0xD68\n#_04B3CC: db $69, $6B, $7A, $7B : db $DD, $DD ; 0x2288\u20130x228B: 0xD69, 0xD6B, 0xD7A, 0xD7B\n#_04B3D2: db $5F, $89, $8A, $8C : db $DD, $DD ; 0x228C\u20130x228F: 0xD5F, 0xD89, 0xD8A, 0xD8C\n#_04B3D8: db $8D, $8E, $90, $92 : db $DD, $DD ; 0x2290\u20130x2293: 0xD8D, 0xD8E, 0xD90, 0xD92\n#_04B3DE: db $93, $93, $93, $9D : db $DD, $DD ; 0x2294\u20130x2297: 0xD93, 0xD93, 0xD93, 0xD9D\n#_04B3E4: db $99, $9F, $9C, $A1 : db $DD, $DD ; 0x2298\u20130x229B: 0xD99, 0xD9F, 0xD9C, 0xDA1\n#_04B3EA: db $99, $9E, $00, $00 : db $DD, $00 ; 0x229C\u20130x229F: 0xD99, 0xD9E, 0x000, 0x000\n\n; =========================================================\n; FREE ROM: 0x16\n; =========================================================", + "file": "bank_04.asm" + }, + { + "name": "NULL_04B3F0", + "code": "NULL_04B3F0:\n#_04B3F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04B3F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "Tile32_BottomRight", + "code": "Tile32_BottomRight:\n#_04B400: db $0B, $0A, $0C, $0E : db $00, $00 ; 0x0000\u20130x0003: 0x00B, 0x00A, 0x00C, 0x00E\n#_04B406: db $04, $10, $12, $11 : db $00, $00 ; 0x0004\u20130x0007: 0x004, 0x010, 0x012, 0x011\n#_04B40C: db $13, $1D, $1C, $1E : db $00, $00 ; 0x0008\u20130x000B: 0x013, 0x01D, 0x01C, 0x01E\n#_04B412: db $04, $21, $23, $25 : db $00, $00 ; 0x000C\u20130x000F: 0x004, 0x021, 0x023, 0x025\n#_04B418: db $24, $0E, $13, $04 : db $00, $00 ; 0x0010\u20130x0013: 0x024, 0x00E, 0x013, 0x004\n#_04B41E: db $1C, $2F, $30, $30 : db $00, $00 ; 0x0014\u20130x0017: 0x01C, 0x02F, 0x030, 0x030\n#_04B424: db $30, $04, $38, $33 : db $00, $00 ; 0x0018\u20130x001B: 0x030, 0x004, 0x038, 0x033\n#_04B42A: db $34, $34, $3A, $36 : db $00, $00 ; 0x001C\u20130x001F: 0x034, 0x034, 0x03A, 0x036\n#_04B430: db $3A, $04, $21, $43 : db $00, $00 ; 0x0020\u20130x0023: 0x03A, 0x004, 0x021, 0x043\n#_04B436: db $44, $45, $47, $49 : db $00, $00 ; 0x0024\u20130x0027: 0x044, 0x045, 0x047, 0x049\n#_04B43C: db $40, $40, $4C, $47 : db $00, $00 ; 0x0028\u20130x002B: 0x040, 0x040, 0x04C, 0x047\n#_04B442: db $5B, $5D, $5E, $5F : db $00, $00 ; 0x002C\u20130x002F: 0x05B, 0x05D, 0x05E, 0x05F\n#_04B448: db $2D, $04, $56, $04 : db $00, $00 ; 0x0030\u20130x0033: 0x02D, 0x004, 0x056, 0x004\n#_04B44E: db $11, $13, $33, $34 : db $00, $00 ; 0x0034\u20130x0037: 0x011, 0x013, 0x033, 0x034\n#_04B454: db $66, $68, $04, $0F : db $00, $00 ; 0x0038\u20130x003B: 0x066, 0x068, 0x004, 0x00F\n#_04B45A: db $04, $04, $24, $0A : db $00, $00 ; 0x003C\u20130x003F: 0x004, 0x004, 0x024, 0x00A\n#_04B460: db $46, $56, $47, $34 : db $00, $00 ; 0x0040\u20130x0043: 0x046, 0x056, 0x047, 0x034\n#_04B466: db $6C, $30, $6E, $69 : db $00, $00 ; 0x0044\u20130x0047: 0x06C, 0x030, 0x06E, 0x069\n#_04B46C: db $20, $4C, $1C, $1F : db $00, $00 ; 0x0048\u20130x004B: 0x020, 0x04C, 0x01C, 0x01F\n#_04B472: db $71, $6F, $41, $34 : db $00, $00 ; 0x004C\u20130x004F: 0x071, 0x06F, 0x041, 0x034\n#_04B478: db $67, $69, $13, $39 : db $00, $00 ; 0x0050\u20130x0053: 0x067, 0x069, 0x013, 0x039\n#_04B47E: db $73, $34, $20, $33 : db $00, $00 ; 0x0054\u20130x0057: 0x073, 0x034, 0x020, 0x033\n#_04B484: db $22, $0B, $2E, $48 : db $00, $00 ; 0x0058\u20130x005B: 0x022, 0x00B, 0x02E, 0x048\n#_04B48A: db $4A, $20, $47, $40 : db $00, $00 ; 0x005C\u20130x005F: 0x04A, 0x020, 0x047, 0x040\n#_04B490: db $04, $2D, $34, $5E : db $00, $00 ; 0x0060\u20130x0063: 0x004, 0x02D, 0x034, 0x05E\n#_04B496: db $5F, $14, $54, $12 : db $00, $00 ; 0x0064\u20130x0067: 0x05F, 0x014, 0x054, 0x012\n#_04B49C: db $04, $41, $5E, $5F : db $00, $00 ; 0x0068\u20130x006B: 0x004, 0x041, 0x05E, 0x05F\n#_04B4A2: db $4E, $32, $04, $45 : db $00, $00 ; 0x006C\u20130x006F: 0x04E, 0x032, 0x004, 0x045\n#_04B4A8: db $33, $6D, $30, $04 : db $00, $00 ; 0x0070\u20130x0073: 0x033, 0x06D, 0x030, 0x004\n#_04B4AE: db $04, $34, $7A, $66 : db $00, $00 ; 0x0074\u20130x0077: 0x004, 0x034, 0x07A, 0x066\n#_04B4B4: db $6D, $64, $12, $13 : db $00, $00 ; 0x0078\u20130x007B: 0x06D, 0x064, 0x012, 0x013\n#_04B4BA: db $34, $33, $69, $7F : db $00, $00 ; 0x007C\u20130x007F: 0x034, 0x033, 0x069, 0x07F\n#_04B4C0: db $80, $81, $11, $0D : db $00, $00 ; 0x0080\u20130x0083: 0x080, 0x081, 0x011, 0x00D\n#_04B4C6: db $83, $30, $62, $30 : db $00, $00 ; 0x0084\u20130x0087: 0x083, 0x030, 0x062, 0x030\n#_04B4CC: db $30, $83, $64, $04 : db $00, $00 ; 0x0088\u20130x008B: 0x030, 0x083, 0x064, 0x004\n#_04B4D2: db $76, $34, $34, $34 : db $00, $00 ; 0x008C\u20130x008F: 0x076, 0x034, 0x034, 0x034\n#_04B4D8: db $34, $34, $1C, $13 : db $00, $00 ; 0x0090\u20130x0093: 0x034, 0x034, 0x01C, 0x013\n#_04B4DE: db $95, $34, $97, $98 : db $00, $00 ; 0x0094\u20130x0097: 0x095, 0x034, 0x097, 0x098\n#_04B4E4: db $34, $99, $9B, $9D : db $00, $00 ; 0x0098\u20130x009B: 0x034, 0x099, 0x09B, 0x09D\n#_04B4EA: db $9C, $9B, $A2, $35 : db $00, $00 ; 0x009C\u20130x009F: 0x09C, 0x09B, 0x0A2, 0x035\n#_04B4F0: db $9E, $9F, $A4, $A6 : db $00, $00 ; 0x00A0\u20130x00A3: 0x09E, 0x09F, 0x0A4, 0x0A6\n#_04B4F6: db $34, $71, $2D, $2E : db $00, $00 ; 0x00A4\u20130x00A7: 0x034, 0x071, 0x02D, 0x02E\n#_04B4FC: db $34, $35, $34, $AD : db $00, $00 ; 0x00A8\u20130x00AB: 0x034, 0x035, 0x034, 0x0AD\n#_04B502: db $A6, $34, $AE, $7E : db $00, $00 ; 0x00AC\u20130x00AF: 0x0A6, 0x034, 0x0AE, 0x07E\n#_04B508: db $0F, $34, $34, $8D : db $00, $00 ; 0x00B0\u20130x00B3: 0x00F, 0x034, 0x034, 0x08D\n#_04B50E: db $34, $AE, $7E, $AF : db $00, $00 ; 0x00B4\u20130x00B7: 0x034, 0x0AE, 0x07E, 0x0AF\n#_04B514: db $B2, $45, $2D, $19 : db $00, $00 ; 0x00B8\u20130x00BB: 0x0B2, 0x045, 0x02D, 0x019\n#_04B51A: db $24, $33, $34, $34 : db $00, $00 ; 0x00BC\u20130x00BF: 0x024, 0x033, 0x034, 0x034\n#_04B520: db $4B, $2D, $0F, $04 : db $00, $00 ; 0x00C0\u20130x00C3: 0x04B, 0x02D, 0x00F, 0x004\n#_04B526: db $2F, $6E, $B8, $96 : db $00, $00 ; 0x00C4\u20130x00C7: 0x02F, 0x06E, 0x0B8, 0x096\n#_04B52C: db $34, $11, $12, $BB : db $00, $00 ; 0x00C8\u20130x00CB: 0x034, 0x011, 0x012, 0x0BB\n#_04B532: db $60, $12, $34, $8D : db $00, $00 ; 0x00CC\u20130x00CF: 0x060, 0x012, 0x034, 0x08D\n#_04B538: db $C0, $0B, $2F, $64 : db $00, $00 ; 0x00D0\u20130x00D3: 0x0C0, 0x00B, 0x02F, 0x064\n#_04B53E: db $23, $8C, $36, $3F : db $00, $00 ; 0x00D4\u20130x00D7: 0x023, 0x08C, 0x036, 0x03F\n#_04B544: db $48, $74, $2D, $72 : db $00, $00 ; 0x00D8\u20130x00DB: 0x048, 0x074, 0x02D, 0x072\n#_04B54A: db $69, $36, $34, $5E : db $00, $00 ; 0x00DC\u20130x00DF: 0x069, 0x036, 0x034, 0x05E\n#_04B550: db $34, $6E, $22, $0B : db $00, $00 ; 0x00E0\u20130x00E3: 0x034, 0x06E, 0x022, 0x00B\n#_04B556: db $2F, $30, $AE, $45 : db $00, $00 ; 0x00E4\u20130x00E7: 0x02F, 0x030, 0x0AE, 0x045\n#_04B55C: db $23, $45, $04, $6A : db $00, $00 ; 0x00E8\u20130x00EB: 0x023, 0x045, 0x004, 0x06A\n#_04B562: db $2D, $2D, $89, $6D : db $00, $00 ; 0x00EC\u20130x00EF: 0x02D, 0x02D, 0x089, 0x06D\n#_04B568: db $61, $63, $0F, $60 : db $00, $00 ; 0x00F0\u20130x00F3: 0x061, 0x063, 0x00F, 0x060\n#_04B56E: db $12, $9A, $34, $34 : db $00, $00 ; 0x00F4\u20130x00F7: 0x012, 0x09A, 0x034, 0x034\n#_04B574: db $34, $34, $34, $34 : db $00, $00 ; 0x00F8\u20130x00FB: 0x034, 0x034, 0x034, 0x034\n#_04B57A: db $69, $23, $13, $C4 : db $00, $00 ; 0x00FC\u20130x00FF: 0x069, 0x023, 0x013, 0x0C4\n#_04B580: db $C6, $C7, $CC, $CA : db $00, $00 ; 0x0100\u20130x0103: 0x0C6, 0x0C7, 0x0CC, 0x0CA\n#_04B586: db $82, $C4, $C6, $34 : db $00, $00 ; 0x0104\u20130x0107: 0x082, 0x0C4, 0x0C6, 0x034\n#_04B58C: db $CA, $C9, $C9, $D0 : db $00, $00 ; 0x0108\u20130x010B: 0x0CA, 0x0C9, 0x0C9, 0x0D0\n#_04B592: db $C6, $D5, $9C, $DE : db $00, $00 ; 0x010C\u20130x010F: 0x0C6, 0x0D5, 0x09C, 0x0DE\n#_04B598: db $94, $DA, $DB, $C9 : db $00, $00 ; 0x0110\u20130x0113: 0x094, 0x0DA, 0x0DB, 0x0C9\n#_04B59E: db $E0, $C9, $CA, $D0 : db $00, $00 ; 0x0114\u20130x0117: 0x0E0, 0x0C9, 0x0CA, 0x0D0\n#_04B5A4: db $D5, $E7, $44, $25 : db $00, $00 ; 0x0118\u20130x011B: 0x0D5, 0x0E7, 0x044, 0x025\n#_04B5AA: db $E8, $DA, $DA, $34 : db $00, $00 ; 0x011C\u20130x011F: 0x0E8, 0x0DA, 0x0DA, 0x034\n#_04B5B0: db $34, $36, $34, $DB : db $00, $00 ; 0x0120\u20130x0123: 0x034, 0x036, 0x034, 0x0DB\n#_04B5B6: db $C4, $D5, $34, $89 : db $00, $00 ; 0x0124\u20130x0127: 0x0C4, 0x0D5, 0x034, 0x089\n#_04B5BC: db $34, $34, $ED, $EE : db $00, $00 ; 0x0128\u20130x012B: 0x034, 0x034, 0x0ED, 0x0EE\n#_04B5C2: db $F0, $34, $C4, $34 : db $00, $00 ; 0x012C\u20130x012F: 0x0F0, 0x034, 0x0C4, 0x034\n#_04B5C8: db $9A, $11, $13, $F2 : db $00, $00 ; 0x0130\u20130x0133: 0x09A, 0x011, 0x013, 0x0F2\n#_04B5CE: db $ED, $EE, $F0, $34 : db $00, $00 ; 0x0134\u20130x0137: 0x0ED, 0x0EE, 0x0F0, 0x034\n#_04B5D4: db $36, $83, $82, $34 : db $00, $00 ; 0x0138\u20130x013B: 0x036, 0x083, 0x082, 0x034\n#_04B5DA: db $DA, $F9, $FB, $FD : db $00, $00 ; 0x013C\u20130x013F: 0x0DA, 0x0F9, 0x0FB, 0x0FD\n#_04B5E0: db $FF, $00, $B0, $15 : db $01, $00 ; 0x0140\u20130x0143: 0x1FF, 0x000, 0x0B0, 0x015\n#_04B5E6: db $34, $08, $34, $34 : db $01, $00 ; 0x0144\u20130x0147: 0x134, 0x008, 0x034, 0x034\n#_04B5EC: db $05, $07, $D5, $34 : db $11, $00 ; 0x0148\u20130x014B: 0x105, 0x107, 0x0D5, 0x034\n#_04B5F2: db $34, $F1, $4F, $34 : db $00, $00 ; 0x014C\u20130x014F: 0x034, 0x0F1, 0x04F, 0x034\n#_04B5F8: db $34, $34, $CE, $C5 : db $00, $00 ; 0x0150\u20130x0153: 0x034, 0x034, 0x0CE, 0x0C5\n#_04B5FE: db $0C, $06, $B0, $34 : db $11, $00 ; 0x0154\u20130x0157: 0x10C, 0x106, 0x0B0, 0x034\n#_04B604: db $34, $DA, $0E, $05 : db $00, $11 ; 0x0158\u20130x015B: 0x034, 0x0DA, 0x10E, 0x105\n#_04B60A: db $07, $C4, $C6, $F1 : db $10, $00 ; 0x015C\u20130x015F: 0x007, 0x1C4, 0x0C6, 0x0F1\n#_04B610: db $F8, $14, $A8, $09 : db $00, $01 ; 0x0160\u20130x0163: 0x0F8, 0x014, 0x1A8, 0x009\n#_04B616: db $D5, $34, $34, $4E : db $00, $00 ; 0x0164\u20130x0167: 0x0D5, 0x034, 0x034, 0x04E\n#_04B61C: db $D9, $05, $C6, $E1 : db $01, $00 ; 0x0168\u20130x016B: 0x1D9, 0x005, 0x0C6, 0x0E1\n#_04B622: db $98, $34, $34, $34 : db $00, $00 ; 0x016C\u20130x016F: 0x098, 0x034, 0x034, 0x034\n#_04B628: db $CE, $C5, $DA, $C4 : db $00, $00 ; 0x0170\u20130x0173: 0x0CE, 0x0C5, 0x0DA, 0x0C4\n#_04B62E: db $76, $34, $DA, $CE : db $00, $00 ; 0x0174\u20130x0177: 0x076, 0x034, 0x0DA, 0x0CE\n#_04B634: db $10, $11, $17, $18 : db $11, $11 ; 0x0178\u20130x017B: 0x110, 0x111, 0x117, 0x118\n#_04B63A: db $16, $17, $18, $16 : db $11, $11 ; 0x017C\u20130x017F: 0x116, 0x117, 0x118, 0x116\n#_04B640: db $17, $12, $14, $1A : db $11, $11 ; 0x0180\u20130x0183: 0x117, 0x112, 0x114, 0x11A\n#_04B646: db $12, $1B, $22, $24 : db $11, $11 ; 0x0184\u20130x0187: 0x112, 0x11B, 0x122, 0x124\n#_04B64C: db $34, $26, $25, $34 : db $01, $10 ; 0x0188\u20130x018B: 0x134, 0x026, 0x025, 0x134\n#_04B652: db $28, $12, $10, $10 : db $11, $11 ; 0x018C\u20130x018F: 0x128, 0x112, 0x110, 0x110\n#_04B658: db $2A, $10, $2C, $24 : db $11, $11 ; 0x0190\u20130x0193: 0x12A, 0x110, 0x12C, 0x124\n#_04B65E: db $2F, $34, $34, $34 : db $10, $11 ; 0x0194\u20130x0197: 0x02F, 0x134, 0x134, 0x134\n#_04B664: db $34, $35, $36, $37 : db $01, $11 ; 0x0198\u20130x019B: 0x134, 0x035, 0x136, 0x137\n#_04B66A: db $38, $38, $2C, $40 : db $11, $11 ; 0x019C\u20130x019F: 0x138, 0x138, 0x12C, 0x140\n#_04B670: db $39, $34, $43, $45 : db $10, $11 ; 0x01A0\u20130x01A3: 0x039, 0x134, 0x143, 0x145\n#_04B676: db $47, $48, $48, $1A : db $11, $11 ; 0x01A4\u20130x01A7: 0x147, 0x148, 0x148, 0x11A\n#_04B67C: db $4A, $40, $4E, $4E : db $11, $11 ; 0x01A8\u20130x01AB: 0x14A, 0x140, 0x14E, 0x14E\n#_04B682: db $4F, $51, $12, $10 : db $11, $11 ; 0x01AC\u20130x01AF: 0x14F, 0x151, 0x112, 0x110\n#_04B688: db $1A, $12, $C9, $C9 : db $11, $00 ; 0x01B0\u20130x01B3: 0x11A, 0x112, 0x0C9, 0x0C9\n#_04B68E: db $53, $55, $20, $13 : db $11, $11 ; 0x01B4\u20130x01B7: 0x153, 0x155, 0x120, 0x113\n#_04B694: db $12, $29, $10, $1A : db $11, $11 ; 0x01B8\u20130x01BB: 0x112, 0x129, 0x110, 0x11A\n#_04B69A: db $57, $57, $55, $12 : db $11, $11 ; 0x01BC\u20130x01BF: 0x157, 0x157, 0x155, 0x112\n#_04B6A0: db $11, $16, $1D, $1D : db $11, $11 ; 0x01C0\u20130x01C3: 0x111, 0x116, 0x11D, 0x11D\n#_04B6A6: db $58, $29, $10, $5A : db $11, $11 ; 0x01C4\u20130x01C7: 0x158, 0x129, 0x110, 0x15A\n#_04B6AC: db $10, $10, $12, $1C : db $11, $11 ; 0x01C8\u20130x01CB: 0x110, 0x110, 0x112, 0x11C\n#_04B6B2: db $34, $5B, $31, $12 : db $01, $11 ; 0x01CC\u20130x01CF: 0x134, 0x05B, 0x131, 0x112\n#_04B6B8: db $2D, $39, $5C, $5E : db $11, $11 ; 0x01D0\u20130x01D3: 0x12D, 0x139, 0x15C, 0x15E\n#_04B6BE: db $5F, $34, $5B, $6A : db $10, $11 ; 0x01D4\u20130x01D7: 0x05F, 0x134, 0x15B, 0x16A\n#_04B6C4: db $DB, $61, $6C, $34 : db $01, $10 ; 0x01D8\u20130x01DB: 0x1DB, 0x061, 0x06C, 0x134\n#_04B6CA: db $63, $6F, $71, $72 : db $11, $11 ; 0x01DC\u20130x01DF: 0x163, 0x16F, 0x171, 0x172\n#_04B6D0: db $73, $06, $75, $6A : db $11, $11 ; 0x01E0\u20130x01E3: 0x173, 0x106, 0x175, 0x16A\n#_04B6D6: db $DB, $E3, $76, $77 : db $00, $11 ; 0x01E4\u20130x01E7: 0x0DB, 0x0E3, 0x176, 0x177\n#_04B6DC: db $34, $A9, $C6, $C6 : db $00, $00 ; 0x01E8\u20130x01EB: 0x034, 0x0A9, 0x0C6, 0x0C6\n#_04B6E2: db $C6, $53, $7F, $6B : db $01, $11 ; 0x01EC\u20130x01EF: 0x1C6, 0x053, 0x17F, 0x16B\n#_04B6E8: db $81, $41, $34, $CE : db $11, $00 ; 0x01F0\u20130x01F3: 0x181, 0x141, 0x034, 0x0CE\n#_04B6EE: db $D0, $7B, $7E, $C9 : db $01, $10 ; 0x01F4\u20130x01F7: 0x1D0, 0x07B, 0x07E, 0x1C9\n#_04B6F4: db $DC, $85, $C8, $41 : db $01, $01 ; 0x01F8\u20130x01FB: 0x1DC, 0x085, 0x1C8, 0x041\n#_04B6FA: db $DB, $53, $C9, $C8 : db $01, $00 ; 0x01FC\u20130x01FF: 0x1DB, 0x053, 0x0C9, 0x0C8\n#_04B700: db $C8, $53, $34, $C8 : db $01, $00 ; 0x0200\u20130x0203: 0x1C8, 0x053, 0x034, 0x0C8\n#_04B706: db $34, $52, $82, $52 : db $01, $11 ; 0x0204\u20130x0207: 0x134, 0x052, 0x182, 0x152\n#_04B70C: db $6C, $52, $17, $88 : db $11, $11 ; 0x0208\u20130x020B: 0x16C, 0x152, 0x117, 0x188\n#_04B712: db $94, $96, $97, $98 : db $11, $11 ; 0x020C\u20130x020F: 0x194, 0x196, 0x197, 0x198\n#_04B718: db $99, $91, $17, $4C : db $11, $11 ; 0x0210\u20130x0213: 0x199, 0x191, 0x117, 0x14C\n#_04B71E: db $10, $1A, $15, $23 : db $11, $11 ; 0x0214\u20130x0217: 0x110, 0x11A, 0x115, 0x123\n#_04B724: db $25, $9F, $A1, $A3 : db $10, $11 ; 0x0218\u20130x021B: 0x025, 0x19F, 0x1A1, 0x1A3\n#_04B72A: db $A1, $A2, $A1, $91 : db $11, $11 ; 0x021C\u20130x021F: 0x1A1, 0x1A2, 0x1A1, 0x191\n#_04B730: db $7C, $1E, $13, $33 : db $11, $11 ; 0x0220\u20130x0223: 0x17C, 0x11E, 0x113, 0x133\n#_04B736: db $37, $36, $35, $A5 : db $11, $11 ; 0x0224\u20130x0227: 0x137, 0x136, 0x135, 0x1A5\n#_04B73C: db $89, $8B, $8D, $8D : db $11, $11 ; 0x0228\u20130x022B: 0x189, 0x18B, 0x18D, 0x18D\n#_04B742: db $8D, $8B, $90, $79 : db $11, $11 ; 0x022C\u20130x022F: 0x18D, 0x18B, 0x190, 0x179\n#_04B748: db $34, $1D, $18, $12 : db $01, $11 ; 0x0230\u20130x0233: 0x134, 0x01D, 0x118, 0x112\n#_04B74E: db $B1, $B3, $35, $9B : db $11, $11 ; 0x0234\u20130x0237: 0x1B1, 0x1B3, 0x135, 0x19B\n#_04B754: db $B6, $9C, $B9, $9C : db $11, $11 ; 0x0238\u20130x023B: 0x1B6, 0x19C, 0x1B9, 0x19C\n#_04B75A: db $B6, $BB, $26, $12 : db $11, $11 ; 0x023C\u20130x023F: 0x1B6, 0x1BB, 0x126, 0x112\n#_04B760: db $C3, $34, $C4, $C6 : db $10, $11 ; 0x0240\u20130x0243: 0x0C3, 0x134, 0x1C4, 0x1C6\n#_04B766: db $C8, $CA, $CC, $CE : db $11, $11 ; 0x0244\u20130x0247: 0x1C8, 0x1CA, 0x1CC, 0x1CE\n#_04B76C: db $D0, $D2, $79, $D4 : db $11, $11 ; 0x0248\u20130x024B: 0x1D0, 0x1D2, 0x179, 0x1D4\n#_04B772: db $D5, $16, $25, $A9 : db $11, $10 ; 0x024C\u20130x024F: 0x1D5, 0x116, 0x025, 0x1A9\n#_04B778: db $DE, $E0, $DF, $CC : db $11, $11 ; 0x0250\u20130x0253: 0x1DE, 0x1E0, 0x1DF, 0x1CC\n#_04B77E: db $DE, $E3, $79, $C4 : db $11, $11 ; 0x0254\u20130x0257: 0x1DE, 0x1E3, 0x179, 0x1C4\n#_04B784: db $A5, $A5, $AC, $34 : db $00, $00 ; 0x0258\u20130x025B: 0x0A5, 0x0A5, 0x0AC, 0x034\n#_04B78A: db $4E, $E6, $34, $E7 : db $11, $01 ; 0x025C\u20130x025F: 0x14E, 0x1E6, 0x134, 0x0E7\n#_04B790: db $C9, $C9, $EC, $CA : db $00, $10 ; 0x0260\u20130x0263: 0x0C9, 0x0C9, 0x0EC, 0x1CA\n#_04B796: db $C5, $EE, $F0, $A0 : db $01, $10 ; 0x0264\u20130x0267: 0x1C5, 0x0EE, 0x0F0, 0x1A0\n#_04B79C: db $34, $C5, $F7, $F9 : db $00, $11 ; 0x0268\u20130x026B: 0x034, 0x0C5, 0x1F7, 0x1F9\n#_04B7A2: db $67, $E7, $FA, $FB : db $11, $11 ; 0x026C\u20130x026F: 0x167, 0x1E7, 0x1FA, 0x1FB\n#_04B7A8: db $A4, $A7, $FD, $C4 : db $00, $11 ; 0x0270\u20130x0273: 0x0A4, 0x0A7, 0x1FD, 0x1C4\n#_04B7AE: db $00, $C4, $34, $A9 : db $20, $00 ; 0x0274\u20130x0277: 0x000, 0x2C4, 0x034, 0x0A9\n#_04B7B4: db $6A, $53, $34, $7D : db $11, $01 ; 0x0278\u20130x027B: 0x16A, 0x153, 0x134, 0x07D\n#_04B7BA: db $34, $08, $0A, $7B : db $02, $21 ; 0x027C\u20130x027F: 0x234, 0x008, 0x10A, 0x27B\n#_04B7C0: db $34, $CE, $C4, $F5 : db $00, $01 ; 0x0280\u20130x0283: 0x034, 0x0CE, 0x1C4, 0x0F5\n#_04B7C6: db $7E, $75, $34, $79 : db $11, $01 ; 0x0284\u20130x0287: 0x17E, 0x175, 0x134, 0x079\n#_04B7CC: db $34, $34, $34, $A9 : db $00, $00 ; 0x0288\u20130x028B: 0x034, 0x034, 0x034, 0x0A9\n#_04B7D2: db $34, $04, $05, $05 : db $01, $11 ; 0x028C\u20130x028F: 0x134, 0x004, 0x105, 0x105\n#_04B7D8: db $07, $34, $70, $42 : db $10, $11 ; 0x0290\u20130x0293: 0x007, 0x134, 0x170, 0x142\n#_04B7DE: db $34, $15, $34, $C4 : db $02, $00 ; 0x0294\u20130x0297: 0x234, 0x015, 0x034, 0x0C4\n#_04B7E4: db $C4, $10, $FF, $A1 : db $02, $10 ; 0x0298\u20130x029B: 0x2C4, 0x010, 0x0FF, 0x1A1\n#_04B7EA: db $EF, $A3, $0E, $D0 : db $10, $20 ; 0x029C\u20130x029F: 0x0EF, 0x1A3, 0x00E, 0x2D0\n#_04B7F0: db $D1, $4F, $41, $34 : db $01, $10 ; 0x02A0\u20130x02A3: 0x1D1, 0x04F, 0x041, 0x134\n#_04B7F6: db $17, $A6, $34, $34 : db $20, $00 ; 0x02A4\u20130x02A7: 0x017, 0x2A6, 0x034, 0x034\n#_04B7FC: db $CA, $82, $53, $6B : db $01, $11 ; 0x02A8\u20130x02AB: 0x1CA, 0x082, 0x153, 0x16B\n#_04B802: db $CA, $13, $10, $1F : db $01, $11 ; 0x02AC\u20130x02AF: 0x1CA, 0x013, 0x110, 0x11F\n#_04B808: db $2B, $10, $12, $12 : db $11, $11 ; 0x02B0\u20130x02B3: 0x12B, 0x110, 0x112, 0x112\n#_04B80E: db $12, $13, $12, $59 : db $11, $11 ; 0x02B4\u20130x02B7: 0x112, 0x113, 0x112, 0x159\n#_04B814: db $10, $1F, $2A, $12 : db $11, $11 ; 0x02B8\u20130x02BB: 0x110, 0x11F, 0x12A, 0x112\n#_04B81A: db $1A, $1B, $13, $14 : db $11, $11 ; 0x02BC\u20130x02BF: 0x11A, 0x11B, 0x113, 0x114\n#_04B820: db $10, $10, $1F, $1E : db $11, $11 ; 0x02C0\u20130x02C3: 0x110, 0x110, 0x11F, 0x11E\n#_04B826: db $12, $12, $14, $1F : db $11, $11 ; 0x02C4\u20130x02C7: 0x112, 0x112, 0x114, 0x11F\n#_04B82C: db $1A, $21, $13, $11 : db $11, $11 ; 0x02C8\u20130x02CB: 0x11A, 0x121, 0x113, 0x111\n#_04B832: db $19, $18, $18, $10 : db $22, $11 ; 0x02CC\u20130x02CF: 0x219, 0x218, 0x118, 0x110\n#_04B838: db $12, $71, $58, $34 : db $11, $10 ; 0x02D0\u20130x02D3: 0x112, 0x171, 0x058, 0x134\n#_04B83E: db $34, $27, $32, $14 : db $01, $11 ; 0x02D4\u20130x02D7: 0x134, 0x027, 0x132, 0x114\n#_04B844: db $11, $30, $1B, $1E : db $11, $22 ; 0x02D8\u20130x02DB: 0x111, 0x130, 0x21B, 0x21E\n#_04B84A: db $5B, $34, $34, $3C : db $10, $01 ; 0x02DC\u20130x02DF: 0x05B, 0x134, 0x134, 0x03C\n#_04B850: db $3D, $3D, $3E, $3D : db $11, $11 ; 0x02E0\u20130x02E3: 0x13D, 0x13D, 0x13E, 0x13D\n#_04B856: db $3C, $30, $1B, $20 : db $11, $22 ; 0x02E4\u20130x02E7: 0x13C, 0x130, 0x21B, 0x220\n#_04B85C: db $35, $34, $27, $32 : db $00, $11 ; 0x02E8\u20130x02EB: 0x035, 0x034, 0x127, 0x132\n#_04B862: db $2B, $10, $12, $2D : db $11, $11 ; 0x02EC\u20130x02EF: 0x12B, 0x110, 0x112, 0x12D\n#_04B868: db $34, $34, $20, $4E : db $00, $21 ; 0x02F0\u20130x02F3: 0x034, 0x034, 0x120, 0x24E\n#_04B86E: db $52, $55, $3F, $41 : db $11, $11 ; 0x02F4\u20130x02F7: 0x152, 0x155, 0x13F, 0x141\n#_04B874: db $06, $83, $56, $56 : db $11, $11 ; 0x02F8\u20130x02FB: 0x106, 0x183, 0x156, 0x156\n#_04B87A: db $20, $21, $19, $49 : db $11, $11 ; 0x02FC\u20130x02FF: 0x120, 0x121, 0x119, 0x149\n#_04B880: db $C8, $E8, $C5, $23 : db $01, $02 ; 0x0300\u20130x0303: 0x1C8, 0x0E8, 0x2C5, 0x023\n#_04B886: db $12, $12, $20, $10 : db $11, $11 ; 0x0304\u20130x0307: 0x112, 0x112, 0x120, 0x110\n#_04B88C: db $4D, $C8, $23, $12 : db $10, $21 ; 0x0308\u20130x030B: 0x04D, 0x1C8, 0x123, 0x212\n#_04B892: db $2B, $10, $33, $2C : db $11, $11 ; 0x030C\u20130x030F: 0x12B, 0x110, 0x133, 0x12C\n#_04B898: db $2B, $10, $12, $C6 : db $11, $10 ; 0x0310\u20130x0313: 0x12B, 0x110, 0x012, 0x1C6\n#_04B89E: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x0314\u20130x0317: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_04B8A4: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x0318\u20130x031B: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_04B8AA: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x031C\u20130x031F: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_04B8B0: db $D1, $D2, $2A, $17 : db $00, $11 ; 0x0320\u20130x0323: 0x0D1, 0x0D2, 0x12A, 0x117\n#_04B8B6: db $17, $18, $12, $2B : db $11, $11 ; 0x0324\u20130x0327: 0x117, 0x118, 0x112, 0x12B\n#_04B8BC: db $13, $22, $24, $3B : db $11, $11 ; 0x0328\u20130x032B: 0x113, 0x122, 0x124, 0x13B\n#_04B8C2: db $12, $16, $12, $1A : db $11, $11 ; 0x032C\u20130x032F: 0x112, 0x116, 0x112, 0x11A\n#_04B8C8: db $2C, $34, $31, $2C : db $10, $11 ; 0x0330\u20130x0333: 0x02C, 0x134, 0x131, 0x12C\n#_04B8CE: db $24, $12, $12, $2B : db $11, $11 ; 0x0334\u20130x0337: 0x124, 0x112, 0x112, 0x12B\n#_04B8D4: db $1F, $49, $C8, $52 : db $11, $01 ; 0x0338\u20130x033B: 0x11F, 0x149, 0x1C8, 0x052\n#_04B8DA: db $2C, $1C, $1B, $24 : db $11, $12 ; 0x033C\u20130x033F: 0x12C, 0x11C, 0x21B, 0x124\n#_04B8E0: db $56, $1C, $00, $1A : db $11, $12 ; 0x0340\u20130x0343: 0x156, 0x11C, 0x200, 0x11A\n#_04B8E6: db $C2, $17, $4C, $59 : db $11, $11 ; 0x0344\u20130x0347: 0x1C2, 0x117, 0x14C, 0x159\n#_04B8EC: db $1A, $34, $65, $65 : db $10, $11 ; 0x0348\u20130x034B: 0x01A, 0x134, 0x165, 0x165\n#_04B8F2: db $34, $34, $14, $34 : db $00, $10 ; 0x034C\u20130x034F: 0x034, 0x034, 0x014, 0x134\n#_04B8F8: db $D4, $C8, $D1, $17 : db $00, $01 ; 0x0350\u20130x0353: 0x0D4, 0x0C8, 0x1D1, 0x017\n#_04B8FE: db $1C, $34, $34, $C8 : db $10, $00 ; 0x0354\u20130x0357: 0x01C, 0x134, 0x034, 0x0C8\n#_04B904: db $DF, $C9, $DC, $65 : db $00, $01 ; 0x0358\u20130x035B: 0x0DF, 0x0C9, 0x1DC, 0x065\n#_04B90A: db $66, $34, $34, $29 : db $10, $02 ; 0x035C\u20130x035F: 0x066, 0x134, 0x234, 0x029\n#_04B910: db $34, $34, $DC, $1C : db $00, $02 ; 0x0360\u20130x0363: 0x034, 0x034, 0x2DC, 0x01C\n#_04B916: db $2B, $83, $83, $DC : db $21, $10 ; 0x0364\u20130x0367: 0x12B, 0x283, 0x083, 0x1DC\n#_04B91C: db $DD, $DC, $83, $78 : db $00, $11 ; 0x0368\u20130x036B: 0x0DD, 0x0DC, 0x183, 0x178\n#_04B922: db $78, $DC, $E4, $E3 : db $10, $00 ; 0x036C\u20130x036F: 0x078, 0x1DC, 0x0E4, 0x0E3\n#_04B928: db $E4, $6B, $DC, $2C : db $01, $02 ; 0x0370\u20130x0373: 0x1E4, 0x06B, 0x2DC, 0x02C\n#_04B92E: db $78, $30, $30, $DC : db $12, $20 ; 0x0374\u20130x0377: 0x278, 0x130, 0x030, 0x2DC\n#_04B934: db $DC, $DC, $61, $DD : db $00, $10 ; 0x0378\u20130x037B: 0x0DC, 0x0DC, 0x061, 0x1DD\n#_04B93A: db $4C, $10, $11, $1F : db $11, $11 ; 0x037C\u20130x037F: 0x14C, 0x110, 0x111, 0x11F\n#_04B940: db $12, $18, $10, $2F : db $11, $11 ; 0x0380\u20130x0383: 0x112, 0x118, 0x110, 0x12F\n#_04B946: db $34, $29, $34, $34 : db $01, $00 ; 0x0384\u20130x0387: 0x134, 0x029, 0x034, 0x034\n#_04B94C: db $5E, $34, $31, $14 : db $10, $11 ; 0x0388\u20130x038B: 0x05E, 0x134, 0x131, 0x114\n#_04B952: db $66, $1A, $32, $34 : db $12, $20 ; 0x038C\u20130x038F: 0x266, 0x11A, 0x032, 0x234\n#_04B958: db $34, $36, $67, $2F : db $02, $11 ; 0x0390\u20130x0393: 0x234, 0x036, 0x167, 0x12F\n#_04B95E: db $83, $6A, $CE, $34 : db $11, $00 ; 0x0394\u20130x0397: 0x183, 0x16A, 0x0CE, 0x034\n#_04B964: db $ED, $34, $EE, $59 : db $10, $11 ; 0x0398\u20130x039B: 0x0ED, 0x134, 0x1EE, 0x159\n#_04B96A: db $78, $86, $34, $CE : db $11, $10 ; 0x039C\u20130x039F: 0x178, 0x186, 0x034, 0x1CE\n#_04B970: db $34, $ED, $2E, $34 : db $01, $10 ; 0x03A0\u20130x03A3: 0x134, 0x0ED, 0x02E, 0x134\n#_04B976: db $38, $4C, $10, $86 : db $21, $11 ; 0x03A4\u20130x03A7: 0x138, 0x24C, 0x110, 0x186\n#_04B97C: db $34, $6D, $34, $EB : db $01, $01 ; 0x03A8\u20130x03AB: 0x134, 0x06D, 0x134, 0x0EB\n#_04B982: db $34, $12, $C8, $41 : db $01, $01 ; 0x03AC\u20130x03AF: 0x134, 0x012, 0x1C8, 0x041\n#_04B988: db $34, $C8, $6C, $EB : db $00, $11 ; 0x03B0\u20130x03B3: 0x034, 0x0C8, 0x16C, 0x1EB\n#_04B98E: db $86, $39, $34, $27 : db $12, $01 ; 0x03B4\u20130x03B7: 0x286, 0x139, 0x134, 0x027\n#_04B994: db $49, $41, $E3, $86 : db $11, $01 ; 0x03B8\u20130x03BB: 0x149, 0x141, 0x1E3, 0x086\n#_04B99A: db $24, $34, $3E, $4F : db $10, $21 ; 0x03BC\u20130x03BF: 0x024, 0x134, 0x13E, 0x24F\n#_04B9A0: db $59, $49, $3F, $27 : db $11, $21 ; 0x03C0\u20130x03C3: 0x159, 0x149, 0x13F, 0x227\n#_04B9A6: db $32, $15, $12, $49 : db $11, $11 ; 0x03C4\u20130x03C7: 0x132, 0x115, 0x112, 0x149\n#_04B9AC: db $C8, $C9, $53, $50 : db $00, $11 ; 0x03C8\u20130x03CB: 0x0C8, 0x0C9, 0x153, 0x150\n#_04B9B2: db $32, $1B, $10, $2A : db $11, $11 ; 0x03CC\u20130x03CF: 0x132, 0x11B, 0x110, 0x12A\n#_04B9B8: db $C9, $54, $12, $2B : db $01, $11 ; 0x03D0\u20130x03D3: 0x1C9, 0x054, 0x112, 0x12B\n#_04B9BE: db $4C, $2B, $20, $4C : db $11, $10 ; 0x03D4\u20130x03D7: 0x14C, 0x12B, 0x020, 0x14C\n#_04B9C4: db $41, $34, $04, $33 : db $00, $00 ; 0x03D8\u20130x03DB: 0x041, 0x034, 0x004, 0x033\n#_04B9CA: db $91, $33, $34, $34 : db $00, $00 ; 0x03DC\u20130x03DF: 0x091, 0x033, 0x034, 0x034\n#_04B9D0: db $34, $8D, $30, $64 : db $00, $00 ; 0x03E0\u20130x03E3: 0x034, 0x08D, 0x030, 0x064\n#_04B9D6: db $40, $48, $34, $0F : db $00, $00 ; 0x03E4\u20130x03E7: 0x040, 0x048, 0x034, 0x00F\n#_04B9DC: db $5E, $B2, $47, $48 : db $00, $00 ; 0x03E8\u20130x03EB: 0x05E, 0x0B2, 0x047, 0x048\n#_04B9E2: db $22, $5E, $04, $5E : db $00, $00 ; 0x03EC\u20130x03EF: 0x022, 0x05E, 0x004, 0x05E\n#_04B9E8: db $12, $20, $2F, $5E : db $00, $00 ; 0x03F0\u20130x03F3: 0x012, 0x020, 0x02F, 0x05E\n#_04B9EE: db $33, $66, $7D, $30 : db $00, $00 ; 0x03F4\u20130x03F7: 0x033, 0x066, 0x07D, 0x030\n#_04B9F4: db $71, $34, $40, $5E : db $00, $20 ; 0x03F8\u20130x03FB: 0x071, 0x034, 0x040, 0x25E\n#_04B9FA: db $22, $45, $23, $7F : db $00, $00 ; 0x03FC\u20130x03FF: 0x022, 0x045, 0x023, 0x07F\n#_04BA00: db $3A, $2E, $33, $34 : db $00, $00 ; 0x0400\u20130x0403: 0x03A, 0x02E, 0x033, 0x034\n#_04BA06: db $B0, $4B, $5E, $33 : db $00, $00 ; 0x0404\u20130x0407: 0x0B0, 0x04B, 0x05E, 0x033\n#_04BA0C: db $05, $04, $10, $12 : db $00, $00 ; 0x0408\u20130x040B: 0x005, 0x004, 0x010, 0x012\n#_04BA12: db $11, $46, $70, $30 : db $00, $00 ; 0x040C\u20130x040F: 0x011, 0x046, 0x070, 0x030\n#_04BA18: db $30, $6E, $30, $04 : db $00, $00 ; 0x0410\u20130x0413: 0x030, 0x06E, 0x030, 0x004\n#_04BA1E: db $6B, $76, $40, $04 : db $00, $00 ; 0x0414\u20130x0417: 0x06B, 0x076, 0x040, 0x004\n#_04BA24: db $04, $2C, $7F, $AF : db $00, $00 ; 0x0418\u20130x041B: 0x004, 0x02C, 0x07F, 0x0AF\n#_04BA2A: db $45, $24, $23, $7F : db $00, $00 ; 0x041C\u20130x041F: 0x045, 0x024, 0x023, 0x07F\n#_04BA30: db $AF, $46, $1C, $81 : db $00, $00 ; 0x0420\u20130x0423: 0x0AF, 0x046, 0x01C, 0x081\n#_04BA36: db $36, $4B, $8B, $AF : db $00, $00 ; 0x0424\u20130x0427: 0x036, 0x04B, 0x08B, 0x0AF\n#_04BA3C: db $8D, $34, $45, $81 : db $00, $20 ; 0x0428\u20130x042B: 0x08D, 0x034, 0x045, 0x281\n#_04BA42: db $35, $95, $71, $04 : db $00, $00 ; 0x042C\u20130x042F: 0x035, 0x095, 0x071, 0x004\n#_04BA48: db $79, $B5, $26, $79 : db $10, $00 ; 0x0430\u20130x0433: 0x079, 0x1B5, 0x026, 0x079\n#_04BA4E: db $04, $5C, $5B, $06 : db $00, $00 ; 0x0434\u20130x0437: 0x004, 0x05C, 0x05B, 0x006\n#_04BA54: db $5A, $28, $6E, $AC : db $00, $00 ; 0x0438\u20130x043B: 0x05A, 0x028, 0x06E, 0x0AC\n#_04BA5A: db $BE, $02, $7C, $AD : db $00, $00 ; 0x043C\u20130x043F: 0x0BE, 0x002, 0x07C, 0x0AD\n#_04BA60: db $34, $1B, $03, $AD : db $00, $00 ; 0x0440\u20130x0443: 0x034, 0x01B, 0x003, 0x0AD\n#_04BA66: db $3F, $14, $16, $15 : db $00, $00 ; 0x0444\u20130x0447: 0x03F, 0x014, 0x016, 0x015\n#_04BA6C: db $14, $16, $64, $64 : db $00, $00 ; 0x0448\u20130x044B: 0x014, 0x016, 0x064, 0x064\n#_04BA72: db $49, $04, $08, $31 : db $20, $00 ; 0x044C\u20130x044F: 0x049, 0x204, 0x008, 0x031\n#_04BA78: db $4E, $4D, $33, $04 : db $00, $00 ; 0x0450\u20130x0453: 0x04E, 0x04D, 0x033, 0x004\n#_04BA7E: db $04, $6E, $3B, $2F : db $00, $00 ; 0x0454\u20130x0457: 0x004, 0x06E, 0x03B, 0x02F\n#_04BA84: db $30, $34, $AE, $45 : db $00, $00 ; 0x0458\u20130x045B: 0x030, 0x034, 0x0AE, 0x045\n#_04BA8A: db $2F, $34, $04, $2B : db $00, $00 ; 0x045C\u20130x045F: 0x02F, 0x034, 0x004, 0x02B\n#_04BA90: db $2F, $40, $72, $71 : db $00, $00 ; 0x0460\u20130x0463: 0x02F, 0x040, 0x072, 0x071\n#_04BA96: db $7B, $11, $34, $36 : db $00, $00 ; 0x0464\u20130x0467: 0x07B, 0x011, 0x034, 0x036\n#_04BA9C: db $04, $4C, $34, $47 : db $00, $00 ; 0x0468\u20130x046B: 0x004, 0x04C, 0x034, 0x047\n#_04BAA2: db $11, $B2, $45, $23 : db $00, $00 ; 0x046C\u20130x046F: 0x011, 0x0B2, 0x045, 0x023\n#_04BAA8: db $B2, $7E, $AE, $89 : db $00, $00 ; 0x0470\u20130x0473: 0x0B2, 0x07E, 0x0AE, 0x089\n#_04BAAE: db $51, $22, $E5, $C8 : db $22, $00 ; 0x0474\u20130x0477: 0x251, 0x222, 0x0E5, 0x0C8\n#_04BAB4: db $E5, $01, $2C, $E3 : db $01, $20 ; 0x0478\u20130x047B: 0x1E5, 0x001, 0x02C, 0x2E3\n#_04BABA: db $DC, $75, $83, $C9 : db $01, $10 ; 0x047C\u20130x047F: 0x1DC, 0x075, 0x083, 0x1C9\n#_04BAC0: db $76, $6C, $52, $C9 : db $11, $20 ; 0x0480\u20130x0483: 0x176, 0x16C, 0x052, 0x2C9\n#_04BAC6: db $37, $EB, $E3, $78 : db $21, $01 ; 0x0484\u20130x0487: 0x137, 0x2EB, 0x1E3, 0x078\n#_04BACC: db $86, $35, $37, $6A : db $10, $21 ; 0x0488\u20130x048B: 0x086, 0x135, 0x137, 0x26A\n#_04BAD2: db $6A, $3B, $4B, $5B : db $11, $11 ; 0x048C\u20130x048F: 0x16A, 0x13B, 0x14B, 0x15B\n#_04BAD8: db $52, $CF, $C8, $6C : db $10, $01 ; 0x0490\u20130x0493: 0x052, 0x1CF, 0x1C8, 0x06C\n#_04BADE: db $50, $78, $DC, $C8 : db $11, $00 ; 0x0494\u20130x0497: 0x150, 0x178, 0x0DC, 0x0C8\n#_04BAE4: db $E3, $39, $9F, $7C : db $01, $01 ; 0x0498\u20130x049B: 0x1E3, 0x039, 0x19F, 0x07C\n#_04BAEA: db $57, $C9, $61, $58 : db $20, $12 ; 0x049C\u20130x049F: 0x057, 0x2C9, 0x261, 0x158\n#_04BAF0: db $5A, $86, $FD, $AC : db $21, $10 ; 0x04A0\u20130x04A3: 0x15A, 0x286, 0x0FD, 0x1AC\n#_04BAF6: db $FC, $4B, $5C, $64 : db $11, $22 ; 0x04A4\u20130x04A7: 0x1FC, 0x14B, 0x25C, 0x264\n#_04BAFC: db $64, $65, $61, $66 : db $22, $12 ; 0x04A8\u20130x04AB: 0x264, 0x265, 0x261, 0x166\n#_04BB02: db $A5, $4E, $50, $68 : db $01, $12 ; 0x04AC\u20130x04AF: 0x1A5, 0x04E, 0x250, 0x168\n#_04BB08: db $69, $6F, $70, $69 : db $22, $22 ; 0x04B0\u20130x04B3: 0x269, 0x26F, 0x270, 0x269\n#_04BB0E: db $65, $5D, $C9, $63 : db $22, $02 ; 0x04B4\u20130x04B7: 0x265, 0x25D, 0x2C9, 0x063\n#_04BB14: db $E5, $E7, $34, $76 : db $01, $02 ; 0x04B8\u20130x04BB: 0x1E5, 0x0E7, 0x234, 0x076\n#_04BB1A: db $34, $34, $75, $34 : db $00, $20 ; 0x04BC\u20130x04BF: 0x034, 0x034, 0x075, 0x234\n#_04BB20: db $34, $34, $0F, $6B : db $00, $21 ; 0x04C0\u20130x04C3: 0x034, 0x034, 0x10F, 0x26B\n#_04BB26: db $0F, $34, $6D, $C8 : db $20, $10 ; 0x04C4\u20130x04C7: 0x00F, 0x234, 0x06D, 0x1C8\n#_04BB2C: db $6D, $53, $C9, $2A : db $11, $02 ; 0x04C8\u20130x04CB: 0x16D, 0x153, 0x2C9, 0x02A\n#_04BB32: db $5D, $5C, $5E, $68 : db $22, $22 ; 0x04CC\u20130x04CF: 0x25D, 0x25C, 0x25E, 0x268\n#_04BB38: db $7A, $78, $5E, $6E : db $22, $22 ; 0x04D0\u20130x04D3: 0x27A, 0x278, 0x25E, 0x26E\n#_04BB3E: db $5D, $78, $64, $78 : db $22, $22 ; 0x04D4\u20130x04D7: 0x25D, 0x278, 0x264, 0x278\n#_04BB44: db $81, $78, $7D, $78 : db $22, $22 ; 0x04D8\u20130x04DB: 0x281, 0x278, 0x27D, 0x278\n#_04BB4A: db $83, $84, $C8, $85 : db $22, $02 ; 0x04DC\u20130x04DF: 0x283, 0x284, 0x2C8, 0x085\n#_04BB50: db $78, $78, $84, $7F : db $22, $21 ; 0x04E0\u20130x04E3: 0x278, 0x278, 0x184, 0x27F\n#_04BB56: db $78, $87, $89, $5E : db $22, $22 ; 0x04E4\u20130x04E7: 0x278, 0x287, 0x289, 0x25E\n#_04BB5C: db $7F, $83, $C6, $23 : db $12, $02 ; 0x04E8\u20130x04EB: 0x27F, 0x183, 0x2C6, 0x023\n#_04BB62: db $6E, $90, $91, $78 : db $22, $22 ; 0x04EC\u20130x04EF: 0x26E, 0x290, 0x291, 0x278\n#_04BB68: db $65, $C9, $63, $78 : db $20, $22 ; 0x04F0\u20130x04F3: 0x065, 0x2C9, 0x263, 0x278\n#_04BB6E: db $6E, $DC, $34, $27 : db $20, $01 ; 0x04F4\u20130x04F7: 0x06E, 0x2DC, 0x134, 0x027\n#_04BB74: db $85, $78, $64, $78 : db $22, $22 ; 0x04F8\u20130x04FB: 0x285, 0x278, 0x264, 0x278\n#_04BB7A: db $6B, $83, $25, $2E : db $22, $11 ; 0x04FC\u20130x04FF: 0x26B, 0x283, 0x125, 0x12E\n#_04BB80: db $36, $93, $93, $36 : db $12, $21 ; 0x0500\u20130x0503: 0x236, 0x193, 0x193, 0x236\n#_04BB86: db $95, $95, $36, $35 : db $22, $11 ; 0x0504\u20130x0507: 0x295, 0x295, 0x136, 0x135\n#_04BB8C: db $34, $97, $97, $9C : db $02, $22 ; 0x0508\u20130x050B: 0x234, 0x097, 0x297, 0x29C\n#_04BB92: db $9A, $9A, $9C, $34 : db $22, $20 ; 0x050C\u20130x050F: 0x29A, 0x29A, 0x09C, 0x234\n#_04BB98: db $34, $0A, $44, $A2 : db $01, $12 ; 0x0510\u20130x0513: 0x134, 0x00A, 0x244, 0x1A2\n#_04BB9E: db $A2, $A2, $78, $78 : db $22, $22 ; 0x0514\u20130x0517: 0x2A2, 0x2A2, 0x278, 0x278\n#_04BBA4: db $B3, $4B, $27, $78 : db $11, $12 ; 0x0518\u20130x051B: 0x1B3, 0x14B, 0x227, 0x178\n#_04BBAA: db $7C, $7E, $84, $41 : db $22, $21 ; 0x051C\u20130x051F: 0x27C, 0x27E, 0x184, 0x241\n#_04BBB0: db $A4, $78, $78, $89 : db $22, $22 ; 0x0520\u20130x0523: 0x2A4, 0x278, 0x278, 0x289\n#_04BBB6: db $5D, $80, $78, $86 : db $22, $22 ; 0x0524\u20130x0527: 0x25D, 0x280, 0x278, 0x286\n#_04BBBC: db $78, $78, $89, $78 : db $22, $22 ; 0x0528\u20130x052B: 0x278, 0x278, 0x289, 0x278\n#_04BBC2: db $78, $87, $78, $C5 : db $22, $20 ; 0x052C\u20130x052F: 0x278, 0x287, 0x078, 0x2C5\n#_04BBC8: db $65, $07, $6C, $79 : db $11, $22 ; 0x0530\u20130x0533: 0x165, 0x107, 0x26C, 0x279\n#_04BBCE: db $7B, $78, $32, $23 : db $22, $22 ; 0x0534\u20130x0537: 0x27B, 0x278, 0x232, 0x223\n#_04BBD4: db $78, $5E, $7F, $80 : db $22, $22 ; 0x0538\u20130x053B: 0x278, 0x25E, 0x27F, 0x280\n#_04BBDA: db $7A, $78, $78, $8C : db $22, $22 ; 0x053C\u20130x053F: 0x27A, 0x278, 0x278, 0x28C\n#_04BBE0: db $76, $63, $78, $78 : db $12, $22 ; 0x0540\u20130x0543: 0x276, 0x163, 0x278, 0x278\n#_04BBE6: db $78, $7B, $65, $63 : db $22, $22 ; 0x0544\u20130x0547: 0x278, 0x27B, 0x265, 0x263\n#_04BBEC: db $A7, $DC, $4E, $53 : db $20, $11 ; 0x0548\u20130x054B: 0x0A7, 0x2DC, 0x14E, 0x153\n#_04BBF2: db $A9, $CC, $AA, $E3 : db $20, $20 ; 0x054C\u20130x054F: 0x0A9, 0x2CC, 0x0AA, 0x2E3\n#_04BBF8: db $34, $4F, $A5, $34 : db $01, $00 ; 0x0550\u20130x0553: 0x134, 0x04F, 0x0A5, 0x034\n#_04BBFE: db $CE, $6A, $AD, $6D : db $01, $21 ; 0x0554\u20130x0557: 0x1CE, 0x06A, 0x1AD, 0x26D\n#_04BC04: db $AB, $AE, $C8, $D5 : db $22, $01 ; 0x0558\u20130x055B: 0x2AB, 0x2AE, 0x1C8, 0x0D5\n#_04BC0A: db $B1, $B0, $C9, $6D : db $22, $01 ; 0x055C\u20130x055F: 0x2B1, 0x2B0, 0x1C9, 0x06D\n#_04BC10: db $82, $AF, $EC, $34 : db $12, $10 ; 0x0560\u20130x0563: 0x282, 0x1AF, 0x0EC, 0x134\n#_04BC16: db $CF, $D1, $35, $C8 : db $00, $00 ; 0x0564\u20130x0567: 0x0CF, 0x0D1, 0x035, 0x0C8\n#_04BC1C: db $B2, $34, $71, $B3 : db $20, $02 ; 0x0568\u20130x056B: 0x0B2, 0x234, 0x271, 0x0B3\n#_04BC22: db $B4, $63, $DC, $92 : db $21, $02 ; 0x056C\u20130x056F: 0x1B4, 0x263, 0x2DC, 0x092\n#_04BC28: db $1C, $1D, $25, $27 : db $11, $11 ; 0x0570\u20130x0573: 0x11C, 0x11D, 0x125, 0x127\n#_04BC2E: db $81, $78, $89, $4E : db $22, $21 ; 0x0574\u20130x0577: 0x281, 0x278, 0x189, 0x24E\n#_04BC34: db $4B, $50, $34, $85 : db $11, $02 ; 0x0578\u20130x057B: 0x14B, 0x150, 0x234, 0x085\n#_04BC3A: db $86, $88, $65, $50 : db $22, $21 ; 0x057C\u20130x057F: 0x286, 0x288, 0x165, 0x250\n#_04BC40: db $8C, $8B, $79, $78 : db $22, $22 ; 0x0580\u20130x0583: 0x28C, 0x28B, 0x279, 0x278\n#_04BC46: db $D0, $8F, $79, $5B : db $02, $21 ; 0x0584\u20130x0587: 0x2D0, 0x08F, 0x179, 0x25B\n#_04BC4C: db $BD, $B8, $B8, $C0 : db $22, $22 ; 0x0588\u20130x058B: 0x2BD, 0x2B8, 0x2B8, 0x2C0\n#_04BC52: db $7E, $75, $31, $C1 : db $11, $12 ; 0x058C\u20130x058F: 0x17E, 0x175, 0x231, 0x1C1\n#_04BC58: db $C2, $2D, $78, $CA : db $21, $12 ; 0x0590\u20130x0593: 0x1C2, 0x22D, 0x278, 0x1CA\n#_04BC5E: db $CC, $CF, $51, $C6 : db $20, $12 ; 0x0594\u20130x0597: 0x0CC, 0x2CF, 0x251, 0x1C6\n#_04BC64: db $C9, $CE, $C5, $D4 : db $20, $22 ; 0x0598\u20130x059B: 0x0C9, 0x2CE, 0x2C5, 0x2D4\n#_04BC6A: db $C8, $D1, $C7, $04 : db $02, $21 ; 0x059C\u20130x059F: 0x2C8, 0x0D1, 0x1C7, 0x204\n#_04BC70: db $06, $C6, $D0, $CD : db $10, $22 ; 0x05A0\u20130x05A3: 0x006, 0x1C6, 0x2D0, 0x2CD\n#_04BC76: db $D7, $D4, $C8, $D2 : db $22, $02 ; 0x05A4\u20130x05A7: 0x2D7, 0x2D4, 0x2C8, 0x0D2\n#_04BC7C: db $C7, $CE, $D2, $31 : db $20, $01 ; 0x05A8\u20130x05AB: 0x0C7, 0x2CE, 0x1D2, 0x031\n#_04BC82: db $C6, $C7, $D7, $D4 : db $22, $22 ; 0x05AC\u20130x05AF: 0x2C6, 0x2C7, 0x2D7, 0x2D4\n#_04BC88: db $D1, $C8, $C9, $34 : db $22, $20 ; 0x05B0\u20130x05B3: 0x2D1, 0x2C8, 0x0C9, 0x234\n#_04BC8E: db $CE, $C8, $CD, $C7 : db $00, $22 ; 0x05B4\u20130x05B7: 0x0CE, 0x0C8, 0x2CD, 0x2C7\n#_04BC94: db $C8, $DB, $34, $E0 : db $22, $02 ; 0x05B8\u20130x05BB: 0x2C8, 0x2DB, 0x234, 0x0E0\n#_04BC9A: db $E1, $E3, $CF, $C6 : db $22, $02 ; 0x05BC\u20130x05BF: 0x2E1, 0x2E3, 0x2CF, 0x0C6\n#_04BCA0: db $C7, $DA, $EA, $35 : db $22, $20 ; 0x05C0\u20130x05C3: 0x2C7, 0x2DA, 0x0EA, 0x235\n#_04BCA6: db $E5, $ED, $E6, $C8 : db $22, $20 ; 0x05C4\u20130x05C7: 0x2E5, 0x2ED, 0x0E6, 0x2C8\n#_04BCAC: db $3A, $CD, $F6, $CD : db $22, $22 ; 0x05C8\u20130x05CB: 0x23A, 0x2CD, 0x2F6, 0x2CD\n#_04BCB2: db $F6, $F6, $E9, $34 : db $22, $20 ; 0x05CC\u20130x05CF: 0x2F6, 0x2F6, 0x0E9, 0x234\n#_04BCB8: db $C8, $85, $F1, $E6 : db $01, $22 ; 0x05D0\u20130x05D3: 0x1C8, 0x085, 0x2F1, 0x2E6\n#_04BCBE: db $C8, $C4, $58, $F7 : db $00, $12 ; 0x05D4\u20130x05D7: 0x0C8, 0x0C4, 0x258, 0x1F7\n#_04BCC4: db $CD, $CD, $CD, $FB : db $22, $22 ; 0x05D8\u20130x05DB: 0x2CD, 0x2CD, 0x2CD, 0x2FB\n#_04BCCA: db $D2, $D3, $34, $FC : db $22, $02 ; 0x05DC\u20130x05DF: 0x2D2, 0x2D3, 0x234, 0x0FC\n#_04BCD0: db $E6, $3A, $CA, $C5 : db $22, $02 ; 0x05E0\u20130x05E3: 0x2E6, 0x23A, 0x2CA, 0x0C5\n#_04BCD6: db $CD, $CD, $FF, $01 : db $22, $23 ; 0x05E4\u20130x05E7: 0x2CD, 0x2CD, 0x3FF, 0x201\n#_04BCDC: db $5E, $68, $62, $02 : db $11, $13 ; 0x05E8\u20130x05EB: 0x15E, 0x168, 0x362, 0x102\n#_04BCE2: db $E6, $FE, $03, $08 : db $22, $33 ; 0x05EC\u20130x05EF: 0x2E6, 0x2FE, 0x303, 0x308\n#_04BCE8: db $0A, $FF, $63, $07 : db $32, $13 ; 0x05F0\u20130x05F3: 0x20A, 0x3FF, 0x363, 0x107\n#_04BCEE: db $E6, $E1, $E1, $02 : db $22, $23 ; 0x05F4\u20130x05F7: 0x2E6, 0x2E1, 0x3E1, 0x202\n#_04BCF4: db $E6, $ED, $12, $13 : db $22, $33 ; 0x05F8\u20130x05FB: 0x2E6, 0x2ED, 0x312, 0x313\n#_04BCFA: db $14, $FD, $E6, $E6 : db $32, $22 ; 0x05FC\u20130x05FF: 0x214, 0x3FD, 0x2E6, 0x2E6\n#_04BD00: db $E6, $F5, $1D, $C0 : db $22, $32 ; 0x0600\u20130x0603: 0x2E6, 0x2F5, 0x21D, 0x3C0\n#_04BD06: db $61, $16, $1F, $66 : db $13, $31 ; 0x0604\u20130x0607: 0x361, 0x116, 0x11F, 0x366\n#_04BD0C: db $1A, $E6, $21, $F5 : db $32, $32 ; 0x0608\u20130x060B: 0x21A, 0x3E6, 0x221, 0x3F5\n#_04BD12: db $31, $E4, $D5, $61 : db $12, $21 ; 0x060C\u20130x060F: 0x231, 0x1E4, 0x1D5, 0x261\n#_04BD18: db $D5, $AB, $66, $E6 : db $00, $12 ; 0x0610\u20130x0613: 0x0D5, 0x0AB, 0x266, 0x1E6\n#_04BD1E: db $C8, $FE, $D0, $D0 : db $02, $02 ; 0x0614\u20130x0617: 0x2C8, 0x0FE, 0x2D0, 0x0D0\n#_04BD24: db $24, $26, $D5, $CA : db $33, $20 ; 0x0618\u20130x061B: 0x324, 0x326, 0x0D5, 0x2CA\n#_04BD2A: db $C6, $E6, $03, $C5 : db $02, $30 ; 0x061C\u20130x061F: 0x2C6, 0x0E6, 0x003, 0x3C5\n#_04BD30: db $FF, $32, $34, $F8 : db $22, $22 ; 0x0620\u20130x0623: 0x2FF, 0x232, 0x234, 0x2F8\n#_04BD36: db $E6, $37, $2E, $30 : db $22, $33 ; 0x0624\u20130x0627: 0x2E6, 0x237, 0x32E, 0x330\n#_04BD3C: db $0D, $89, $A9, $9A : db $20, $00 ; 0x0628\u20130x062B: 0x00D, 0x289, 0x0A9, 0x09A\n#_04BD42: db $34, $AE, $71, $34 : db $00, $00 ; 0x062C\u20130x062F: 0x034, 0x0AE, 0x071, 0x034\n#_04BD48: db $DE, $9A, $AF, $9B : db $00, $00 ; 0x0630\u20130x0633: 0x0DE, 0x09A, 0x0AF, 0x09B\n#_04BD4E: db $95, $34, $34, $34 : db $03, $00 ; 0x0634\u20130x0637: 0x395, 0x034, 0x034, 0x034\n#_04BD54: db $34, $34, $35, $34 : db $00, $00 ; 0x0638\u20130x063B: 0x034, 0x034, 0x035, 0x034\n#_04BD5A: db $95, $36, $36, $B1 : db $00, $00 ; 0x063C\u20130x063F: 0x095, 0x036, 0x036, 0x0B1\n#_04BD60: db $38, $F2, $34, $0B : db $30, $01 ; 0x0640\u20130x0643: 0x038, 0x3F2, 0x134, 0x00B\n#_04BD66: db $89, $3D, $34, $F2 : db $02, $00 ; 0x0644\u20130x0647: 0x289, 0x03D, 0x034, 0x0F2\n#_04BD6C: db $B9, $12, $7F, $AF : db $00, $00 ; 0x0648\u20130x064B: 0x0B9, 0x012, 0x07F, 0x0AF\n#_04BD72: db $DC, $40, $3B, $42 : db $03, $33 ; 0x064C\u20130x064F: 0x3DC, 0x040, 0x33B, 0x342\n#_04BD78: db $44, $3F, $6A, $4E : db $33, $13 ; 0x0650\u20130x0653: 0x344, 0x33F, 0x36A, 0x14E\n#_04BD7E: db $50, $52, $54, $6A : db $33, $31 ; 0x0654\u20130x0657: 0x350, 0x352, 0x154, 0x36A\n#_04BD84: db $5F, $61, $60, $64 : db $33, $33 ; 0x0658\u20130x065B: 0x35F, 0x361, 0x360, 0x364\n#_04BD8A: db $6A, $65, $67, $A9 : db $13, $30 ; 0x065C\u20130x065F: 0x36A, 0x165, 0x067, 0x3A9\n#_04BD90: db $65, $9A, $9B, $6E : db $30, $03 ; 0x0660\u20130x0663: 0x065, 0x39A, 0x39B, 0x06E\n#_04BD96: db $6F, $71, $A9, $6F : db $33, $03 ; 0x0664\u20130x0667: 0x36F, 0x371, 0x3A9, 0x06F\n#_04BD9C: db $34, $34, $E2, $28 : db $00, $02 ; 0x0668\u20130x066B: 0x034, 0x034, 0x2E2, 0x028\n#_04BDA2: db $34, $34, $9A, $9C : db $00, $00 ; 0x066C\u20130x066F: 0x034, 0x034, 0x09A, 0x09C\n#_04BDA8: db $A9, $9A, $34, $34 : db $00, $00 ; 0x0670\u20130x0673: 0x0A9, 0x09A, 0x034, 0x034\n#_04BDAE: db $E1, $34, $7B, $7A : db $00, $33 ; 0x0674\u20130x0677: 0x0E1, 0x034, 0x37B, 0x37A\n#_04BDB4: db $7E, $34, $36, $36 : db $30, $00 ; 0x0678\u20130x067B: 0x07E, 0x334, 0x036, 0x036\n#_04BDBA: db $9E, $36, $34, $7E : db $00, $03 ; 0x067C\u20130x067F: 0x09E, 0x036, 0x334, 0x07E\n#_04BDC0: db $7E, $34, $A9, $36 : db $30, $00 ; 0x0680\u20130x0683: 0x07E, 0x334, 0x0A9, 0x036\n#_04BDC6: db $7E, $34, $83, $34 : db $30, $30 ; 0x0684\u20130x0687: 0x07E, 0x334, 0x083, 0x334\n#_04BDCC: db $73, $73, $A9, $7F : db $33, $03 ; 0x0688\u20130x068B: 0x373, 0x373, 0x3A9, 0x07F\n#_04BDD2: db $7E, $34, $34, $A3 : db $30, $00 ; 0x068C\u20130x068F: 0x07E, 0x334, 0x034, 0x0A3\n#_04BDD8: db $A0, $34, $34, $7C : db $00, $01 ; 0x0690\u20130x0693: 0x0A0, 0x034, 0x134, 0x07C\n#_04BDDE: db $34, $34, $A5, $A5 : db $00, $00 ; 0x0694\u20130x0697: 0x034, 0x034, 0x0A5, 0x0A5\n#_04BDE4: db $AB, $A5, $AB, $A4 : db $01, $00 ; 0x0698\u20130x069B: 0x1AB, 0x0A5, 0x0AB, 0x0A4\n#_04BDEA: db $A6, $A5, $A5, $A5 : db $00, $11 ; 0x069C\u20130x069F: 0x0A6, 0x0A5, 0x1A5, 0x1A5\n#_04BDF0: db $A5, $4E, $4E, $4E : db $01, $11 ; 0x06A0\u20130x06A3: 0x1A5, 0x04E, 0x14E, 0x14E\n#_04BDF6: db $DC, $CB, $AB, $85 : db $20, $03 ; 0x06A4\u20130x06A7: 0x0DC, 0x2CB, 0x3AB, 0x085\n#_04BDFC: db $11, $CE, $83, $DB : db $00, $00 ; 0x06A8\u20130x06AB: 0x011, 0x0CE, 0x083, 0x0DB\n#_04BE02: db $DF, $C9, $78, $34 : db $00, $10 ; 0x06AC\u20130x06AF: 0x0DF, 0x0C9, 0x078, 0x134\n#_04BE08: db $9D, $F5, $E6, $E6 : db $02, $22 ; 0x06B0\u20130x06B3: 0x29D, 0x0F5, 0x2E6, 0x2E6\n#_04BE0E: db $6A, $0F, $35, $36 : db $12, $00 ; 0x06B4\u20130x06B7: 0x26A, 0x10F, 0x035, 0x036\n#_04BE14: db $C8, $C9, $86, $73 : db $00, $13 ; 0x06B8\u20130x06BB: 0x0C8, 0x0C9, 0x386, 0x173\n#_04BE1A: db $34, $36, $34, $8F : db $00, $03 ; 0x06BC\u20130x06BF: 0x034, 0x036, 0x334, 0x08F\n#_04BE20: db $35, $73, $8C, $E1 : db $03, $30 ; 0x06C0\u20130x06C3: 0x335, 0x073, 0x08C, 0x3E1\n#_04BE26: db $34, $34, $73, $34 : db $00, $30 ; 0x06C4\u20130x06C7: 0x034, 0x034, 0x073, 0x334\n#_04BE2C: db $35, $8D, $DA, $0D : db $03, $01 ; 0x06C8\u20130x06CB: 0x335, 0x08D, 0x1DA, 0x00D\n#_04BE32: db $90, $DA, $73, $E1 : db $30, $30 ; 0x06CC\u20130x06CF: 0x090, 0x3DA, 0x073, 0x3E1\n#_04BE38: db $E1, $7E, $39, $34 : db $03, $20 ; 0x06D0\u20130x06D3: 0x3E1, 0x07E, 0x039, 0x234\n#_04BE3E: db $DA, $7D, $8C, $7E : db $03, $33 ; 0x06D4\u20130x06D7: 0x3DA, 0x07D, 0x38C, 0x37E\n#_04BE44: db $8C, $90, $8C, $84 : db $33, $33 ; 0x06D8\u20130x06DB: 0x38C, 0x390, 0x38C, 0x384\n#_04BE4A: db $90, $7D, $7E, $0F : db $33, $32 ; 0x06DC\u20130x06DF: 0x390, 0x37D, 0x27E, 0x30F\n#_04BE50: db $8C, $90, $90, $90 : db $33, $33 ; 0x06E0\u20130x06E3: 0x38C, 0x390, 0x390, 0x390\n#_04BE56: db $34, $DA, $34, $35 : db $00, $00 ; 0x06E4\u20130x06E7: 0x034, 0x0DA, 0x034, 0x035\n#_04BE5C: db $90, $7E, $83, $36 : db $33, $30 ; 0x06E8\u20130x06EB: 0x390, 0x37E, 0x083, 0x336\n#_04BE62: db $90, $8C, $8C, $8E : db $33, $33 ; 0x06EC\u20130x06EF: 0x390, 0x38C, 0x38C, 0x38E\n#_04BE68: db $90, $7E, $7F, $39 : db $33, $32 ; 0x06F0\u20130x06F3: 0x390, 0x37E, 0x27F, 0x339\n#_04BE6E: db $73, $8E, $DA, $90 : db $33, $03 ; 0x06F4\u20130x06F7: 0x373, 0x38E, 0x3DA, 0x090\n#_04BE74: db $90, $A9, $F5, $73 : db $30, $13 ; 0x06F8\u20130x06FB: 0x090, 0x3A9, 0x3F5, 0x173\n#_04BE7A: db $73, $39, $0F, $7F : db $32, $23 ; 0x06FC\u20130x06FF: 0x273, 0x339, 0x30F, 0x27F\n#_04BE80: db $80, $92, $73, $82 : db $33, $33 ; 0x0700\u20130x0703: 0x380, 0x392, 0x373, 0x382\n#_04BE86: db $A5, $A5, $A4, $A5 : db $11, $00 ; 0x0704\u20130x0707: 0x1A5, 0x1A5, 0x0A4, 0x0A5\n#_04BE8C: db $C4, $A5, $4E, $4E : db $10, $11 ; 0x0708\u20130x070B: 0x0C4, 0x1A5, 0x14E, 0x14E\n#_04BE92: db $38, $38, $5B, $B7 : db $33, $12 ; 0x070C\u20130x070F: 0x338, 0x338, 0x25B, 0x1B7\n#_04BE98: db $B7, $C4, $83, $CA : db $20, $10 ; 0x0710\u20130x0713: 0x0B7, 0x2C4, 0x083, 0x1CA\n#_04BE9E: db $C5, $CE, $CA, $D1 : db $22, $02 ; 0x0714\u20130x0717: 0x2C5, 0x2CE, 0x2CA, 0x0D1\n#_04BEA4: db $CD, $0F, $A8, $53 : db $22, $21 ; 0x0718\u20130x071B: 0x2CD, 0x20F, 0x1A8, 0x253\n#_04BEAA: db $E4, $CD, $CD, $D0 : db $22, $22 ; 0x071C\u20130x071F: 0x2E4, 0x2CD, 0x2CD, 0x2D0\n#_04BEB0: db $D5, $AB, $C5, $CD : db $22, $22 ; 0x0720\u20130x0723: 0x2D5, 0x2AB, 0x2C5, 0x2CD\n#_04BEB6: db $E4, $24, $25, $25 : db $23, $33 ; 0x0724\u20130x0727: 0x3E4, 0x224, 0x325, 0x325\n#_04BEBC: db $25, $25, $93, $EB : db $33, $31 ; 0x0728\u20130x072B: 0x325, 0x325, 0x193, 0x3EB\n#_04BEC2: db $33, $95, $32, $34 : db $23, $20 ; 0x072C\u20130x072F: 0x333, 0x295, 0x032, 0x234\n#_04BEC8: db $34, $7E, $7E, $31 : db $03, $31 ; 0x0730\u20130x0733: 0x334, 0x07E, 0x17E, 0x331\n#_04BECE: db $CD, $CD, $CD, $2D : db $22, $21 ; 0x0734\u20130x0737: 0x2CD, 0x2CD, 0x1CD, 0x22D\n#_04BED4: db $71, $34, $CD, $CD : db $00, $22 ; 0x0738\u20130x073B: 0x071, 0x034, 0x2CD, 0x2CD\n#_04BEDA: db $CF, $6C, $41, $7E : db $21, $13 ; 0x073C\u20130x073F: 0x1CF, 0x26C, 0x341, 0x17E\n#_04BEE0: db $1E, $F7, $25, $26 : db $12, $33 ; 0x0740\u20130x0743: 0x21E, 0x1F7, 0x325, 0x326\n#_04BEE6: db $CD, $56, $C8, $79 : db $21, $01 ; 0x0744\u20130x0747: 0x1CD, 0x256, 0x1C8, 0x079\n#_04BEEC: db $9B, $F8, $CD, $CE : db $32, $22 ; 0x0748\u20130x074B: 0x29B, 0x3F8, 0x2CD, 0x2CE\n#_04BEF2: db $9C, $A5, $34, $34 : db $30, $00 ; 0x074C\u20130x074F: 0x09C, 0x3A5, 0x034, 0x034\n#_04BEF8: db $34, $CD, $CE, $37 : db $22, $22 ; 0x0750\u20130x0753: 0x234, 0x2CD, 0x2CE, 0x237\n#_04BEFE: db $35, $B0, $A9, $B0 : db $00, $00 ; 0x0754\u20130x0757: 0x035, 0x0B0, 0x0A9, 0x0B0\n#_04BF04: db $83, $31, $CD, $CD : db $31, $22 ; 0x0758\u20130x075B: 0x183, 0x331, 0x2CD, 0x2CD\n#_04BF0A: db $CE, $24, $F1, $A9 : db $21, $00 ; 0x075C\u20130x075F: 0x1CE, 0x224, 0x0F1, 0x0A9\n#_04BF10: db $F1, $31, $D6, $04 : db $01, $23 ; 0x0760\u20130x0763: 0x1F1, 0x031, 0x3D6, 0x204\n#_04BF16: db $1C, $00, $33, $61 : db $11, $21 ; 0x0764\u20130x0767: 0x11C, 0x100, 0x133, 0x261\n#_04BF1C: db $39, $34, $A9, $34 : db $10, $00 ; 0x0768\u20130x076B: 0x039, 0x134, 0x0A9, 0x034\n#_04BF22: db $7E, $31, $04, $1C : db $31, $31 ; 0x076C\u20130x076F: 0x17E, 0x331, 0x104, 0x31C\n#_04BF28: db $CE, $37, $34, $24 : db $02, $01 ; 0x0770\u20130x0773: 0x2CE, 0x037, 0x134, 0x024\n#_04BF2E: db $34, $2D, $53, $B7 : db $01, $12 ; 0x0774\u20130x0777: 0x134, 0x02D, 0x253, 0x1B7\n#_04BF34: db $CD, $D1, $13, $C9 : db $20, $30 ; 0x0778\u20130x077B: 0x0CD, 0x2D1, 0x013, 0x3C9\n#_04BF3A: db $B7, $DC, $B7, $C9 : db $20, $20 ; 0x077C\u20130x077F: 0x0B7, 0x2DC, 0x0B7, 0x2C9\n#_04BF40: db $CD, $CD, $B7, $56 : db $22, $21 ; 0x0780\u20130x0783: 0x2CD, 0x2CD, 0x1B7, 0x256\n#_04BF46: db $1D, $DC, $24, $CD : db $32, $32 ; 0x0784\u20130x0787: 0x21D, 0x3DC, 0x224, 0x3CD\n#_04BF4C: db $CD, $FF, $27, $27 : db $22, $33 ; 0x0788\u20130x078B: 0x2CD, 0x2FF, 0x327, 0x327\n#_04BF52: db $A0, $A1, $A3, $33 : db $33, $32 ; 0x078C\u20130x078F: 0x3A0, 0x3A1, 0x2A3, 0x333\n#_04BF58: db $CD, $34, $33, $34 : db $20, $20 ; 0x0790\u20130x0793: 0x0CD, 0x234, 0x033, 0x234\n#_04BF5E: db $ED, $C5, $C2, $C2 : db $12, $11 ; 0x0794\u20130x0797: 0x2ED, 0x1C5, 0x1C2, 0x1C2\n#_04BF64: db $34, $9A, $A7, $34 : db $00, $32 ; 0x0798\u20130x079B: 0x034, 0x09A, 0x2A7, 0x334\n#_04BF6A: db $27, $32, $32, $33 : db $32, $22 ; 0x079C\u20130x079F: 0x227, 0x332, 0x232, 0x233\n#_04BF70: db $36, $34, $34, $34 : db $03, $30 ; 0x07A0\u20130x07A3: 0x336, 0x034, 0x034, 0x334\n#_04BF76: db $34, $34, $5C, $AF : db $00, $10 ; 0x07A4\u20130x07A7: 0x034, 0x034, 0x05C, 0x1AF\n#_04BF7C: db $7E, $A9, $AB, $69 : db $03, $33 ; 0x07A8\u20130x07AB: 0x37E, 0x0A9, 0x3AB, 0x369\n#_04BF82: db $6B, $36, $37, $AD : db $30, $33 ; 0x07AC\u20130x07AF: 0x06B, 0x336, 0x337, 0x3AD\n#_04BF88: db $B2, $B4, $76, $78 : db $33, $33 ; 0x07B0\u20130x07B3: 0x3B2, 0x3B4, 0x376, 0x378\n#_04BF8E: db $36, $9D, $75, $CE : db $02, $30 ; 0x07B4\u20130x07B7: 0x236, 0x09D, 0x075, 0x3CE\n#_04BF94: db $BA, $FC, $34, $36 : db $30, $00 ; 0x07B8\u20130x07BB: 0x0BA, 0x3FC, 0x034, 0x036\n#_04BF9A: db $38, $34, $CE, $34 : db $33, $00 ; 0x07BC\u20130x07BF: 0x338, 0x334, 0x0CE, 0x034\n#_04BFA0: db $C1, $34, $18, $CE : db $30, $20 ; 0x07C0\u20130x07C3: 0x0C1, 0x334, 0x018, 0x2CE\n#_04BFA6: db $34, $58, $C2, $04 : db $01, $11 ; 0x07C4\u20130x07C7: 0x134, 0x058, 0x1C2, 0x104\n#_04BFAC: db $32, $CE, $34, $9A : db $20, $20 ; 0x07C8\u20130x07CB: 0x032, 0x2CE, 0x034, 0x29A\n#_04BFB2: db $34, $32, $00, $C2 : db $02, $11 ; 0x07CC\u20130x07CF: 0x234, 0x032, 0x100, 0x1C2\n#_04BFB8: db $36, $33, $33, $5C : db $22, $21 ; 0x07D0\u20130x07D3: 0x236, 0x233, 0x133, 0x25C\n#_04BFBE: db $E0, $34, $D5, $32 : db $22, $12 ; 0x07D4\u20130x07D7: 0x2E0, 0x234, 0x2D5, 0x132\n#_04BFC4: db $06, $71, $E0, $E6 : db $30, $22 ; 0x07D8\u20130x07DB: 0x006, 0x371, 0x2E0, 0x2E6\n#_04BFCA: db $34, $35, $71, $00 : db $00, $01 ; 0x07DC\u20130x07DF: 0x034, 0x035, 0x171, 0x000\n#_04BFD0: db $C2, $E6, $06, $E6 : db $32, $32 ; 0x07E0\u20130x07E3: 0x2C2, 0x3E6, 0x206, 0x3E6\n#_04BFD6: db $7C, $C8, $CA, $CC : db $13, $33 ; 0x07E4\u20130x07E7: 0x37C, 0x1C8, 0x3CA, 0x3CC\n#_04BFDC: db $CC, $CA, $CA, $F2 : db $33, $30 ; 0x07E8\u20130x07EB: 0x3CC, 0x3CA, 0x0CA, 0x3F2\n#_04BFE2: db $A5, $AC, $CE, $34 : db $00, $30 ; 0x07EC\u20130x07EF: 0x0A5, 0x0AC, 0x0CE, 0x334\n#_04BFE8: db $34, $C9, $CE, $D6 : db $03, $33 ; 0x07F0\u20130x07F3: 0x334, 0x0C9, 0x3CE, 0x3D6\n#_04BFEE: db $D5, $6C, $3F, $C9 : db $31, $23 ; 0x07F4\u20130x07F7: 0x1D5, 0x36C, 0x33F, 0x2C9\n#_04BFF4: db $DA, $DD, $A3, $E3 : db $33, $30 ; 0x07F8\u20130x07FB: 0x3DA, 0x3DD, 0x0A3, 0x3E3\n#_04BFFA: db $E0, $93, $E2, $E5 : db $33, $33 ; 0x07FC\u20130x07FF: 0x3E0, 0x393, 0x3E2, 0x3E5\n#_04C000: db $34, $E9, $E9, $C9 : db $03, $33 ; 0x0800\u20130x0803: 0x334, 0x0E9, 0x3E9, 0x3C9\n#_04C006: db $34, $F3, $D0, $D0 : db $33, $33 ; 0x0804\u20130x0807: 0x334, 0x3F3, 0x3D0, 0x3D0\n#_04C00C: db $F5, $F0, $F2, $F3 : db $33, $33 ; 0x0808\u20130x080B: 0x3F5, 0x3F0, 0x3F2, 0x3F3\n#_04C012: db $34, $F8, $F9, $FB : db $03, $33 ; 0x080C\u20130x080F: 0x334, 0x0F8, 0x3F9, 0x3FB\n#_04C018: db $F6, $CA, $C6, $C6 : db $33, $33 ; 0x0810\u20130x0813: 0x3F6, 0x3CA, 0x3C6, 0x3C6\n#_04C01E: db $C6, $C6, $C6, $03 : db $33, $34 ; 0x0814\u20130x0817: 0x3C6, 0x3C6, 0x4C6, 0x303\n#_04C024: db $04, $06, $36, $D2 : db $44, $03 ; 0x0818\u20130x081B: 0x404, 0x406, 0x336, 0x0D2\n#_04C02A: db $08, $08, $09, $CA : db $44, $43 ; 0x081C\u20130x081F: 0x408, 0x408, 0x309, 0x4CA\n#_04C030: db $CC, $CD, $34, $FA : db $33, $00 ; 0x0820\u20130x0823: 0x3CC, 0x3CD, 0x034, 0x0FA\n#_04C036: db $FC, $FE, $E7, $10 : db $00, $34 ; 0x0824\u20130x0827: 0x0FC, 0x0FE, 0x4E7, 0x310\n#_04C03C: db $11, $12, $CE, $34 : db $44, $30 ; 0x0828\u20130x082B: 0x411, 0x412, 0x0CE, 0x334\n#_04C042: db $34, $34, $34, $34 : db $00, $00 ; 0x082C\u20130x082F: 0x034, 0x034, 0x034, 0x034\n#_04C048: db $CA, $CA, $CA, $1D : db $33, $34 ; 0x0830\u20130x0833: 0x3CA, 0x3CA, 0x4CA, 0x31D\n#_04C04E: db $D1, $E1, $EA, $22 : db $30, $34 ; 0x0834\u20130x0837: 0x0D1, 0x3E1, 0x4EA, 0x322\n#_04C054: db $CA, $23, $34, $24 : db $34, $04 ; 0x0838\u20130x083B: 0x4CA, 0x323, 0x434, 0x024\n#_04C05A: db $26, $26, $CB, $CD : db $44, $33 ; 0x083C\u20130x083F: 0x426, 0x426, 0x3CB, 0x3CD\n#_04C060: db $D2, $34, $34, $34 : db $30, $00 ; 0x0840\u20130x0843: 0x0D2, 0x334, 0x034, 0x034\n#_04C066: db $F6, $D0, $D1, $A9 : db $33, $30 ; 0x0844\u20130x0847: 0x3F6, 0x3D0, 0x0D1, 0x3A9\n#_04C06C: db $34, $4E, $D6, $07 : db $00, $00 ; 0x0848\u20130x084B: 0x034, 0x04E, 0x0D6, 0x007\n#_04C072: db $09, $AD, $E1, $AF : db $00, $00 ; 0x084C\u20130x084F: 0x009, 0x0AD, 0x0E1, 0x0AF\n#_04C078: db $7F, $34, $01, $00 : db $00, $00 ; 0x0850\u20130x0853: 0x07F, 0x034, 0x001, 0x000\n#_04C07E: db $CE, $87, $14, $F8 : db $30, $03 ; 0x0854\u20130x0857: 0x0CE, 0x387, 0x314, 0x0F8\n#_04C084: db $F9, $FB, $F6, $2C : db $33, $34 ; 0x0858\u20130x085B: 0x3F9, 0x3FB, 0x4F6, 0x32C\n#_04C08A: db $DA, $2F, $F6, $C6 : db $34, $33 ; 0x085C\u20130x085F: 0x4DA, 0x32F, 0x3F6, 0x3C6\n#_04C090: db $CE, $C9, $C9, $33 : db $30, $04 ; 0x0860\u20130x0863: 0x0CE, 0x3C9, 0x4C9, 0x033\n#_04C096: db $E2, $35, $35, $EA : db $34, $43 ; 0x0864\u20130x0867: 0x4E2, 0x335, 0x335, 0x4EA\n#_04C09C: db $34, $34, $CE, $DC : db $00, $32 ; 0x0868\u20130x086B: 0x034, 0x034, 0x2CE, 0x3DC\n#_04C0A2: db $1C, $34, $34, $34 : db $40, $30 ; 0x086C\u20130x086F: 0x01C, 0x434, 0x034, 0x334\n#_04C0A8: db $E7, $F2, $F8, $F2 : db $11, $21 ; 0x0870\u20130x0873: 0x1E7, 0x1F2, 0x1F8, 0x2F2\n#_04C0AE: db $C6, $CA, $34, $31 : db $33, $01 ; 0x0874\u20130x0877: 0x3C6, 0x3CA, 0x134, 0x031\n#_04C0B4: db $CB, $CC, $CA, $CA : db $33, $33 ; 0x0878\u20130x087B: 0x3CB, 0x3CC, 0x3CA, 0x3CA\n#_04C0BA: db $26, $CA, $CE, $D0 : db $43, $33 ; 0x087C\u20130x087F: 0x326, 0x4CA, 0x3CE, 0x3D0\n#_04C0C0: db $D0, $C9, $1B, $36 : db $33, $20 ; 0x0880\u20130x0883: 0x3D0, 0x3C9, 0x01B, 0x236\n#_04C0C6: db $34, $C9, $C7, $C9 : db $03, $33 ; 0x0884\u20130x0887: 0x334, 0x0C9, 0x3C7, 0x3C9\n#_04C0CC: db $C9, $34, $4B, $3A : db $30, $14 ; 0x0888\u20130x088B: 0x0C9, 0x334, 0x44B, 0x13A\n#_04C0D2: db $34, $C9, $C9, $34 : db $03, $30 ; 0x088C\u20130x088F: 0x334, 0x0C9, 0x0C9, 0x334\n#_04C0D8: db $D0, $3F, $34, $C9 : db $24, $03 ; 0x0890\u20130x0893: 0x4D0, 0x23F, 0x334, 0x0C9\n#_04C0DE: db $C9, $9D, $31, $CD : db $32, $12 ; 0x0894\u20130x0897: 0x2C9, 0x39D, 0x231, 0x1CD\n#_04C0E4: db $34, $34, $C9, $9D : db $00, $32 ; 0x0898\u20130x089B: 0x034, 0x034, 0x2C9, 0x39D\n#_04C0EA: db $CF, $D0, $C9, $34 : db $33, $33 ; 0x089C\u20130x089F: 0x3CF, 0x3D0, 0x3C9, 0x334\n#_04C0F0: db $C9, $07, $D9, $34 : db $30, $00 ; 0x08A0\u20130x08A3: 0x0C9, 0x307, 0x0D9, 0x034\n#_04C0F6: db $88, $34, $27, $01 : db $00, $10 ; 0x08A4\u20130x08A7: 0x088, 0x034, 0x027, 0x101\n#_04C0FC: db $34, $AE, $0F, $27 : db $00, $21 ; 0x08A8\u20130x08AB: 0x034, 0x0AE, 0x10F, 0x227\n#_04C102: db $17, $87, $86, $AE : db $00, $00 ; 0x08AC\u20130x08AF: 0x017, 0x087, 0x086, 0x0AE\n#_04C108: db $89, $27, $CD, $44 : db $01, $24 ; 0x08B0\u20130x08B3: 0x189, 0x027, 0x4CD, 0x244\n#_04C10E: db $9A, $8B, $27, $C9 : db $00, $10 ; 0x08B4\u20130x08B7: 0x09A, 0x08B, 0x027, 0x1C9\n#_04C114: db $AE, $34, $27, $34 : db $00, $10 ; 0x08B8\u20130x08BB: 0x0AE, 0x034, 0x027, 0x134\n#_04C11A: db $27, $CD, $2D, $34 : db $12, $10 ; 0x08BC\u20130x08BF: 0x227, 0x1CD, 0x02D, 0x134\n#_04C120: db $B6, $78, $77, $D8 : db $00, $00 ; 0x08C0\u20130x08C3: 0x0B6, 0x078, 0x077, 0x0D8\n#_04C126: db $27, $01, $7C, $1E : db $10, $01 ; 0x08C4\u20130x08C7: 0x027, 0x101, 0x17C, 0x01E\n#_04C12C: db $F7, $CE, $24, $90 : db $22, $12 ; 0x08C8\u20130x08CB: 0x2F7, 0x2CE, 0x224, 0x190\n#_04C132: db $61, $F1, $34, $95 : db $10, $00 ; 0x08CC\u20130x08CF: 0x061, 0x1F1, 0x034, 0x095\n#_04C138: db $35, $B5, $B6, $78 : db $00, $00 ; 0x08D0\u20130x08D3: 0x035, 0x0B5, 0x0B6, 0x078\n#_04C13E: db $34, $9C, $36, $AB : db $03, $02 ; 0x08D4\u20130x08D7: 0x334, 0x09C, 0x236, 0x0AB\n#_04C144: db $CE, $48, $15, $14 : db $24, $00 ; 0x08D8\u20130x08DB: 0x4CE, 0x248, 0x015, 0x014\n#_04C14A: db $49, $4C, $4D, $25 : db $44, $43 ; 0x08DC\u20130x08DF: 0x449, 0x44C, 0x34D, 0x425\n#_04C150: db $25, $4E, $56, $57 : db $34, $44 ; 0x08E0\u20130x08E3: 0x425, 0x34E, 0x456, 0x457\n#_04C156: db $58, $55, $57, $57 : db $44, $44 ; 0x08E4\u20130x08E7: 0x458, 0x455, 0x457, 0x457\n#_04C15C: db $33, $4E, $54, $54 : db $24, $44 ; 0x08E8\u20130x08EB: 0x433, 0x24E, 0x454, 0x454\n#_04C162: db $66, $68, $6A, $54 : db $44, $44 ; 0x08EC\u20130x08EF: 0x466, 0x468, 0x46A, 0x454\n#_04C168: db $64, $54, $6C, $F2 : db $44, $40 ; 0x08F0\u20130x08F3: 0x464, 0x454, 0x06C, 0x4F2\n#_04C16E: db $89, $4E, $6F, $70 : db $04, $44 ; 0x08F4\u20130x08F7: 0x489, 0x04E, 0x46F, 0x470\n#_04C174: db $70, $79, $7B, $5C : db $44, $44 ; 0x08F8\u20130x08FB: 0x470, 0x479, 0x47B, 0x45C\n#_04C17A: db $5E, $F2, $4E, $70 : db $40, $44 ; 0x08FC\u20130x08FF: 0x05E, 0x4F2, 0x44E, 0x470\n#_04C180: db $82, $71, $70, $73 : db $44, $44 ; 0x0900\u20130x0903: 0x482, 0x471, 0x470, 0x473\n#_04C186: db $6E, $8F, $57, $92 : db $44, $44 ; 0x0904\u20130x0907: 0x46E, 0x48F, 0x457, 0x492\n#_04C18C: db $59, $6F, $94, $9A : db $44, $44 ; 0x0908\u20130x090B: 0x459, 0x46F, 0x494, 0x49A\n#_04C192: db $6E, $8F, $9C, $9C : db $44, $44 ; 0x090C\u20130x090F: 0x46E, 0x48F, 0x49C, 0x49C\n#_04C198: db $6B, $88, $88, $E4 : db $44, $42 ; 0x0910\u20130x0913: 0x46B, 0x488, 0x288, 0x4E4\n#_04C19E: db $08, $6E, $F0, $4E : db $14, $04 ; 0x0914\u20130x0917: 0x408, 0x16E, 0x4F0, 0x04E\n#_04C1A4: db $9E, $8B, $51, $52 : db $44, $44 ; 0x0918\u20130x091B: 0x49E, 0x48B, 0x451, 0x452\n#_04C1AA: db $A0, $63, $7D, $78 : db $31, $34 ; 0x091C\u20130x091F: 0x1A0, 0x363, 0x47D, 0x378\n#_04C1B0: db $7B, $5E, $90, $25 : db $44, $21 ; 0x0920\u20130x0923: 0x47B, 0x45E, 0x190, 0x225\n#_04C1B6: db $7E, $34, $82, $34 : db $30, $40 ; 0x0924\u20130x0927: 0x07E, 0x334, 0x082, 0x434\n#_04C1BC: db $A5, $70, $AC, $AD : db $44, $44 ; 0x0928\u20130x092B: 0x4A5, 0x470, 0x4AC, 0x4AD\n#_04C1C2: db $AF, $82, $B1, $AD : db $43, $44 ; 0x092C\u20130x092F: 0x3AF, 0x482, 0x4B1, 0x4AD\n#_04C1C8: db $AF, $4E, $B8, $B9 : db $44, $44 ; 0x0930\u20130x0933: 0x4AF, 0x44E, 0x4B8, 0x4B9\n#_04C1CE: db $9D, $34, $BC, $D6 : db $40, $42 ; 0x0934\u20130x0937: 0x09D, 0x434, 0x2BC, 0x4D6\n#_04C1D4: db $F2, $4E, $9D, $34 : db $04, $40 ; 0x0938\u20130x093B: 0x4F2, 0x04E, 0x09D, 0x434\n#_04C1DA: db $BD, $34, $CD, $F2 : db $40, $20 ; 0x093C\u20130x093F: 0x0BD, 0x434, 0x0CD, 0x2F2\n#_04C1E0: db $85, $BF, $9D, $BD : db $44, $44 ; 0x0940\u20130x0943: 0x485, 0x4BF, 0x49D, 0x4BD\n#_04C1E6: db $34, $6E, $C3, $6E : db $04, $44 ; 0x0944\u20130x0947: 0x434, 0x06E, 0x4C3, 0x46E\n#_04C1EC: db $F0, $34, $C9, $90 : db $00, $44 ; 0x0948\u20130x094B: 0x0F0, 0x034, 0x4C9, 0x490\n#_04C1F2: db $CA, $34, $99, $25 : db $42, $33 ; 0x094C\u20130x094F: 0x2CA, 0x434, 0x399, 0x325\n#_04C1F8: db $25, $CD, $CD, $54 : db $32, $24 ; 0x0950\u20130x0953: 0x225, 0x3CD, 0x4CD, 0x254\n#_04C1FE: db $9B, $54, $C6, $F0 : db $44, $40 ; 0x0954\u20130x0957: 0x49B, 0x454, 0x0C6, 0x4F0\n#_04C204: db $A1, $F7, $CD, $60 : db $32, $24 ; 0x0958\u20130x095B: 0x2A1, 0x3F7, 0x4CD, 0x260\n#_04C20A: db $7A, $7C, $C3, $8F : db $44, $44 ; 0x095C\u20130x095F: 0x47A, 0x47C, 0x4C3, 0x48F\n#_04C210: db $F0, $9D, $71, $81 : db $02, $44 ; 0x0960\u20130x0963: 0x2F0, 0x09D, 0x471, 0x481\n#_04C216: db $83, $70, $9D, $D5 : db $44, $24 ; 0x0964\u20130x0967: 0x483, 0x470, 0x49D, 0x2D5\n#_04C21C: db $8F, $57, $C0, $F0 : db $44, $40 ; 0x0968\u20130x096B: 0x48F, 0x457, 0x0C0, 0x4F0\n#_04C222: db $D6, $D8, $9D, $8B : db $44, $24 ; 0x096C\u20130x096F: 0x4D6, 0x4D8, 0x49D, 0x28B\n#_04C228: db $8C, $9C, $6B, $9B : db $44, $44 ; 0x0970\u20130x0973: 0x48C, 0x49C, 0x46B, 0x49B\n#_04C22E: db $C5, $DD, $DF, $9D : db $44, $42 ; 0x0974\u20130x0977: 0x4C5, 0x4DD, 0x2DF, 0x49D\n#_04C234: db $52, $84, $9F, $E4 : db $44, $44 ; 0x0978\u20130x097B: 0x452, 0x484, 0x49F, 0x4E4\n#_04C23A: db $4E, $E2, $34, $0B : db $44, $01 ; 0x097C\u20130x097F: 0x44E, 0x4E2, 0x134, 0x00B\n#_04C240: db $CD, $60, $7A, $7A : db $24, $44 ; 0x0980\u20130x0983: 0x4CD, 0x260, 0x47A, 0x47A\n#_04C246: db $E9, $F0, $7D, $E2 : db $40, $34 ; 0x0984\u20130x0987: 0x0E9, 0x4F0, 0x47D, 0x3E2\n#_04C24C: db $9D, $EB, $D0, $CD : db $21, $22 ; 0x0988\u20130x098B: 0x19D, 0x2EB, 0x2D0, 0x2CD\n#_04C252: db $EA, $EC, $A3, $A2 : db $44, $44 ; 0x098C\u20130x098F: 0x4EA, 0x4EC, 0x4A3, 0x4A2\n#_04C258: db $0B, $36, $4E, $31 : db $10, $41 ; 0x0990\u20130x0993: 0x00B, 0x136, 0x14E, 0x431\n#_04C25E: db $F3, $EF, $F5, $9D : db $44, $42 ; 0x0994\u20130x0997: 0x4F3, 0x4EF, 0x2F5, 0x49D\n#_04C264: db $D8, $F3, $EF, $F5 : db $24, $44 ; 0x0998\u20130x099B: 0x4D8, 0x2F3, 0x4EF, 0x4F5\n#_04C26A: db $E2, $9D, $B7, $6F : db $42, $44 ; 0x099C\u20130x099F: 0x2E2, 0x49D, 0x4B7, 0x46F\n#_04C270: db $BA, $F0, $36, $F8 : db $40, $04 ; 0x09A0\u20130x09A3: 0x0BA, 0x4F0, 0x436, 0x0F8\n#_04C276: db $70, $CD, $F9, $FB : db $42, $44 ; 0x09A4\u20130x09A7: 0x270, 0x4CD, 0x4F9, 0x4FB\n#_04C27C: db $B1, $84, $86, $9F : db $44, $44 ; 0x09A8\u20130x09AB: 0x4B1, 0x484, 0x486, 0x49F\n#_04C282: db $9D, $F9, $FB, $B1 : db $24, $44 ; 0x09AC\u20130x09AF: 0x49D, 0x2F9, 0x4FB, 0x4B1\n#_04C288: db $62, $C2, $36, $F8 : db $44, $04 ; 0x09B0\u20130x09B3: 0x462, 0x4C2, 0x436, 0x0F8\n#_04C28E: db $36, $4E, $9D, $34 : db $04, $40 ; 0x09B4\u20130x09B7: 0x436, 0x04E, 0x09D, 0x434\n#_04C294: db $0D, $71, $34, $A4 : db $20, $00 ; 0x09B8\u20130x09BB: 0x00D, 0x271, 0x034, 0x0A4\n#_04C29A: db $DA, $DA, $31, $34 : db $00, $10 ; 0x09BC\u20130x09BF: 0x0DA, 0x0DA, 0x031, 0x134\n#_04C2A0: db $0D, $79, $4F, $36 : db $21, $10 ; 0x09C0\u20130x09C3: 0x10D, 0x279, 0x04F, 0x136\n#_04C2A6: db $36, $CE, $79, $CD : db $00, $12 ; 0x09C4\u20130x09C7: 0x036, 0x0CE, 0x279, 0x1CD\n#_04C2AC: db $14, $10, $FF, $7C : db $02, $11 ; 0x09C8\u20130x09CB: 0x214, 0x010, 0x1FF, 0x17C\n#_04C2B2: db $05, $0A, $2D, $4E : db $53, $10 ; 0x09CC\u20130x09CF: 0x305, 0x50A, 0x02D, 0x14E\n#_04C2B8: db $D4, $C6, $AB, $0C : db $00, $05 ; 0x09D0\u20130x09D3: 0x0D4, 0x0C6, 0x5AB, 0x00C\n#_04C2BE: db $0D, $0C, $0C, $34 : db $55, $50 ; 0x09D4\u20130x09D7: 0x50D, 0x50C, 0x00C, 0x534\n#_04C2C4: db $01, $34, $3A, $37 : db $10, $22 ; 0x09D8\u20130x09DB: 0x001, 0x134, 0x23A, 0x237\n#_04C2CA: db $A9, $C6, $A4, $11 : db $00, $05 ; 0x09DC\u20130x09DF: 0x0A9, 0x0C6, 0x5A4, 0x011\n#_04C2D0: db $11, $FF, $35, $CE : db $51, $02 ; 0x09E0\u20130x09E3: 0x111, 0x5FF, 0x235, 0x0CE\n#_04C2D6: db $A4, $34, $19, $1B : db $00, $55 ; 0x09E4\u20130x09E7: 0x0A4, 0x034, 0x519, 0x51B\n#_04C2DC: db $1B, $1D, $AD, $79 : db $55, $01 ; 0x09E8\u20130x09EB: 0x51B, 0x51D, 0x1AD, 0x079\n#_04C2E2: db $34, $31, $9E, $9E : db $01, $33 ; 0x09EC\u20130x09EF: 0x134, 0x031, 0x39E, 0x39E\n#_04C2E8: db $A5, $34, $CD, $CE : db $00, $20 ; 0x09F0\u20130x09F3: 0x0A5, 0x034, 0x0CD, 0x2CE\n#_04C2EE: db $4E, $ED, $D0, $CD : db $11, $22 ; 0x09F4\u20130x09F7: 0x14E, 0x1ED, 0x2D0, 0x2CD\n#_04C2F4: db $20, $84, $20, $53 : db $51, $51 ; 0x09F8\u20130x09FB: 0x120, 0x584, 0x120, 0x553\n#_04C2FA: db $04, $22, $F9, $DC : db $15, $22 ; 0x09FC\u20130x09FF: 0x504, 0x122, 0x2F9, 0x2DC\n#_04C300: db $96, $DC, $0E, $FF : db $32, $32 ; 0x0A00\u20130x0A03: 0x296, 0x3DC, 0x20E, 0x3FF\n#_04C306: db $A5, $00, $1F, $1D : db $31, $31 ; 0x0A04\u20130x0A07: 0x1A5, 0x300, 0x11F, 0x31D\n#_04C30C: db $34, $34, $1D, $FE : db $00, $12 ; 0x0A08\u20130x0A0B: 0x034, 0x034, 0x21D, 0x1FE\n#_04C312: db $FD, $C6, $C6, $27 : db $20, $05 ; 0x0A0C\u20130x0A0F: 0x0FD, 0x2C6, 0x5C6, 0x027\n#_04C318: db $87, $29, $EC, $E6 : db $33, $22 ; 0x0A10\u20130x0A13: 0x387, 0x329, 0x2EC, 0x2E6\n#_04C31E: db $EC, $E6, $2A, $87 : db $22, $53 ; 0x0A14\u20130x0A17: 0x2EC, 0x2E6, 0x32A, 0x587\n#_04C324: db $E6, $2A, $C9, $C9 : db $25, $00 ; 0x0A18\u20130x0A1B: 0x5E6, 0x22A, 0x0C9, 0x0C9\n#_04C32A: db $C9, $C9, $33, $33 : db $00, $55 ; 0x0A1C\u20130x0A1F: 0x0C9, 0x0C9, 0x533, 0x533\n#_04C330: db $2A, $35, $28, $28 : db $55, $55 ; 0x0A20\u20130x0A23: 0x52A, 0x535, 0x528, 0x528\n#_04C336: db $EC, $E6, $38, $38 : db $22, $55 ; 0x0A24\u20130x0A27: 0x2EC, 0x2E6, 0x538, 0x538\n#_04C33C: db $39, $E5, $2A, $37 : db $52, $55 ; 0x0A28\u20130x0A2B: 0x239, 0x5E5, 0x52A, 0x537\n#_04C342: db $EC, $3B, $ED, $3A : db $25, $25 ; 0x0A2C\u20130x0A2F: 0x5EC, 0x23B, 0x5ED, 0x23A\n#_04C348: db $E6, $39, $3C, $3D : db $25, $55 ; 0x0A30\u20130x0A33: 0x5E6, 0x239, 0x53C, 0x53D\n#_04C34E: db $37, $33, $C9, $ED : db $55, $02 ; 0x0A34\u20130x0A37: 0x537, 0x533, 0x2C9, 0x0ED\n#_04C354: db $87, $E6, $2A, $45 : db $32, $55 ; 0x0A38\u20130x0A3B: 0x287, 0x3E6, 0x52A, 0x545\n#_04C35A: db $45, $39, $47, $47 : db $55, $55 ; 0x0A3C\u20130x0A3F: 0x545, 0x539, 0x547, 0x547\n#_04C360: db $E6, $35, $52, $3A : db $25, $55 ; 0x0A40\u20130x0A43: 0x5E6, 0x235, 0x552, 0x53A\n#_04C366: db $3A, $53, $55, $56 : db $55, $55 ; 0x0A44\u20130x0A47: 0x53A, 0x553, 0x555, 0x556\n#_04C36C: db $32, $39, $57, $59 : db $55, $55 ; 0x0A48\u20130x0A4B: 0x532, 0x539, 0x557, 0x559\n#_04C372: db $28, $32, $52, $5F : db $55, $55 ; 0x0A4C\u20130x0A4F: 0x528, 0x532, 0x552, 0x55F\n#_04C378: db $60, $61, $5D, $39 : db $55, $55 ; 0x0A50\u20130x0A53: 0x560, 0x561, 0x55D, 0x539\n#_04C37E: db $E5, $E5, $32, $67 : db $22, $55 ; 0x0A54\u20130x0A57: 0x2E5, 0x2E5, 0x532, 0x567\n#_04C384: db $68, $67, $5D, $69 : db $55, $55 ; 0x0A58\u20130x0A5B: 0x568, 0x567, 0x55D, 0x569\n#_04C38A: db $37, $6B, $28, $55 : db $55, $55 ; 0x0A5C\u20130x0A5F: 0x537, 0x56B, 0x528, 0x555\n#_04C390: db $6D, $71, $70, $39 : db $55, $55 ; 0x0A60\u20130x0A63: 0x56D, 0x571, 0x570, 0x539\n#_04C396: db $37, $E6, $E6, $2A : db $52, $25 ; 0x0A64\u20130x0A67: 0x237, 0x5E6, 0x5E6, 0x22A\n#_04C39C: db $4F, $4F, $4F, $4F : db $55, $55 ; 0x0A68\u20130x0A6B: 0x54F, 0x54F, 0x54F, 0x54F\n#_04C3A2: db $72, $2A, $2C, $3A : db $55, $55 ; 0x0A6C\u20130x0A6F: 0x572, 0x52A, 0x52C, 0x53A\n#_04C3A8: db $3B, $EC, $3A, $3A : db $52, $55 ; 0x0A70\u20130x0A73: 0x23B, 0x5EC, 0x53A, 0x53A\n#_04C3AE: db $2A, $4F, $50, $3A : db $55, $55 ; 0x0A74\u20130x0A77: 0x52A, 0x54F, 0x550, 0x53A\n#_04C3B4: db $17, $4F, $51, $ED : db $35, $52 ; 0x0A78\u20130x0A7B: 0x517, 0x34F, 0x251, 0x5ED\n#_04C3BA: db $E6, $ED, $29, $3A : db $22, $35 ; 0x0A7C\u20130x0A7F: 0x2E6, 0x2ED, 0x529, 0x33A\n#_04C3C0: db $FE, $C6, $29, $5B : db $20, $31 ; 0x0A80\u20130x0A83: 0x0FE, 0x2C6, 0x129, 0x35B\n#_04C3C6: db $C9, $C9, $40, $3A : db $00, $55 ; 0x0A84\u20130x0A87: 0x0C9, 0x0C9, 0x540, 0x53A\n#_04C3CC: db $EE, $D1, $42, $C4 : db $20, $50 ; 0x0A88\u20130x0A8B: 0x0EE, 0x2D1, 0x042, 0x5C4\n#_04C3D2: db $DC, $36, $7F, $80 : db $05, $55 ; 0x0A8C\u20130x0A8F: 0x5DC, 0x036, 0x57F, 0x580\n#_04C3D8: db $7F, $7B, $7F, $FE : db $55, $52 ; 0x0A90\u20130x0A93: 0x57F, 0x57B, 0x27F, 0x5FE\n#_04C3DE: db $E6, $39, $8A, $6D : db $25, $55 ; 0x0A94\u20130x0A97: 0x5E6, 0x239, 0x58A, 0x56D\n#_04C3E4: db $FE, $8D, $8C, $8E : db $25, $55 ; 0x0A98\u20130x0A9B: 0x5FE, 0x28D, 0x58C, 0x58E\n#_04C3EA: db $8F, $8D, $FE, $E6 : db $55, $22 ; 0x0A9C\u20130x0A9F: 0x58F, 0x58D, 0x2FE, 0x2E6\n#_04C3F0: db $39, $FE, $6D, $6D : db $52, $55 ; 0x0AA0\u20130x0AA3: 0x239, 0x5FE, 0x56D, 0x56D\n#_04C3F6: db $6D, $6D, $95, $FE : db $55, $52 ; 0x0AA4\u20130x0AA7: 0x56D, 0x56D, 0x295, 0x5FE\n#_04C3FC: db $9C, $9E, $A0, $73 : db $55, $55 ; 0x0AA8\u20130x0AAB: 0x59C, 0x59E, 0x5A0, 0x573\n#_04C402: db $6D, $6D, $9A, $6D : db $55, $55 ; 0x0AAC\u20130x0AAF: 0x56D, 0x56D, 0x59A, 0x56D\n#_04C408: db $30, $6D, $9A, $6D : db $55, $55 ; 0x0AB0\u20130x0AB3: 0x530, 0x56D, 0x59A, 0x56D\n#_04C40E: db $FE, $79, $2A, $6D : db $25, $55 ; 0x0AB4\u20130x0AB7: 0x5FE, 0x279, 0x52A, 0x56D\n#_04C414: db $6D, $6D, $6D, $6D : db $55, $55 ; 0x0AB8\u20130x0ABB: 0x56D, 0x56D, 0x56D, 0x56D\n#_04C41A: db $6D, $C9, $3C, $A3 : db $50, $55 ; 0x0ABC\u20130x0ABF: 0x06D, 0x5C9, 0x53C, 0x5A3\n#_04C420: db $A4, $2C, $6D, $A7 : db $55, $55 ; 0x0AC0\u20130x0AC3: 0x5A4, 0x52C, 0x56D, 0x5A7\n#_04C426: db $6D, $A6, $79, $34 : db $55, $55 ; 0x0AC4\u20130x0AC7: 0x56D, 0x5A6, 0x579, 0x534\n#_04C42C: db $6D, $3F, $C9, $C9 : db $55, $00 ; 0x0AC8\u20130x0ACB: 0x56D, 0x53F, 0x0C9, 0x0C9\n#_04C432: db $30, $C9, $C9, $C9 : db $50, $00 ; 0x0ACC\u20130x0ACF: 0x030, 0x5C9, 0x0C9, 0x0C9\n#_04C438: db $E6, $6D, $6D, $30 : db $25, $55 ; 0x0AD0\u20130x0AD3: 0x5E6, 0x26D, 0x56D, 0x530\n#_04C43E: db $6D, $84, $C4, $E6 : db $55, $02 ; 0x0AD4\u20130x0AD7: 0x56D, 0x584, 0x2C4, 0x0E6\n#_04C444: db $E6, $84, $C4, $E6 : db $25, $02 ; 0x0AD8\u20130x0ADB: 0x5E6, 0x284, 0x2C4, 0x0E6\n#_04C44A: db $3F, $C9, $34, $43 : db $50, $55 ; 0x0ADC\u20130x0ADF: 0x03F, 0x5C9, 0x534, 0x543\n#_04C450: db $43, $26, $34, $E6 : db $55, $52 ; 0x0AE0\u20130x0AE3: 0x543, 0x526, 0x234, 0x5E6\n#_04C456: db $FE, $F4, $2C, $E6 : db $22, $52 ; 0x0AE4\u20130x0AE7: 0x2FE, 0x2F4, 0x22C, 0x5E6\n#_04C45C: db $3A, $3A, $3A, $E6 : db $55, $52 ; 0x0AE8\u20130x0AEB: 0x53A, 0x53A, 0x23A, 0x5E6\n#_04C462: db $29, $E6, $34, $E6 : db $32, $52 ; 0x0AEC\u20130x0AEF: 0x229, 0x3E6, 0x234, 0x5E6\n#_04C468: db $E6, $29, $E6, $AB : db $23, $25 ; 0x0AF0\u20130x0AF3: 0x3E6, 0x229, 0x5E6, 0x2AB\n#_04C46E: db $C4, $E6, $34, $C4 : db $02, $50 ; 0x0AF4\u20130x0AF7: 0x2C4, 0x0E6, 0x034, 0x5C4\n#_04C474: db $EC, $26, $33, $33 : db $25, $55 ; 0x0AF8\u20130x0AFB: 0x5EC, 0x226, 0x533, 0x533\n#_04C47A: db $E6, $E6, $FE, $E6 : db $22, $22 ; 0x0AFC\u20130x0AFF: 0x2E6, 0x2E6, 0x2FE, 0x2E6\n#_04C480: db $29, $38, $E6, $36 : db $35, $20 ; 0x0B00\u20130x0B03: 0x529, 0x338, 0x0E6, 0x236\n#_04C486: db $F6, $D2, $D2, $CE : db $33, $33 ; 0x0B04\u20130x0B07: 0x3F6, 0x3D2, 0x3D2, 0x3CE\n#_04C48C: db $D1, $D0, $F5, $AD : db $33, $35 ; 0x0B08\u20130x0B0B: 0x3D1, 0x3D0, 0x5F5, 0x3AD\n#_04C492: db $AE, $B0, $34, $B6 : db $55, $05 ; 0x0B0C\u20130x0B0F: 0x5AE, 0x5B0, 0x534, 0x0B6\n#_04C498: db $B3, $B5, $EF, $F6 : db $55, $03 ; 0x0B10\u20130x0B13: 0x5B3, 0x5B5, 0x3EF, 0x0F6\n#_04C49E: db $27, $34, $42, $43 : db $40, $44 ; 0x0B14\u20130x0B17: 0x027, 0x434, 0x442, 0x443\n#_04C4A4: db $BE, $C0, $C1, $C3 : db $55, $55 ; 0x0B18\u20130x0B1B: 0x5BE, 0x5C0, 0x5C1, 0x5C3\n#_04C4AA: db $F6, $C6, $C6, $C6 : db $33, $33 ; 0x0B1C\u20130x0B1F: 0x3F6, 0x3C6, 0x3C6, 0x3C6\n#_04C4B0: db $C6, $34, $15, $34 : db $30, $40 ; 0x0B20\u20130x0B23: 0x0C6, 0x334, 0x015, 0x434\n#_04C4B6: db $34, $34, $CF, $D1 : db $00, $33 ; 0x0B24\u20130x0B27: 0x034, 0x034, 0x3CF, 0x3D1\n#_04C4BC: db $CC, $CC, $EC, $E9 : db $33, $33 ; 0x0B28\u20130x0B2B: 0x3CC, 0x3CC, 0x3EC, 0x3E9\n#_04C4C2: db $E9, $C4, $C6, $36 : db $35, $50 ; 0x0B2C\u20130x0B2F: 0x5E9, 0x3C4, 0x0C6, 0x536\n#_04C4C8: db $36, $F3, $9F, $7C : db $03, $01 ; 0x0B30\u20130x0B33: 0x336, 0x0F3, 0x19F, 0x07C\n#_04C4CE: db $EE, $EF, $E7, $E9 : db $00, $30 ; 0x0B34\u20130x0B37: 0x0EE, 0x0EF, 0x0E7, 0x3E9\n#_04C4D4: db $EA, $EC, $C6, $79 : db $00, $01 ; 0x0B38\u20130x0B3B: 0x0EA, 0x0EC, 0x1C6, 0x079\n#_04C4DA: db $FB, $C3, $F3, $F4 : db $05, $00 ; 0x0B3C\u20130x0B3F: 0x5FB, 0x0C3, 0x0F3, 0x0F4\n#_04C4E0: db $F0, $B6, $78, $34 : db $00, $00 ; 0x0B40\u20130x0B43: 0x0F0, 0x0B6, 0x078, 0x034\n#_04C4E6: db $34, $34, $34, $34 : db $00, $00 ; 0x0B44\u20130x0B47: 0x034, 0x034, 0x034, 0x034\n#_04C4EC: db $34, $34, $34, $34 : db $00, $00 ; 0x0B48\u20130x0B4B: 0x034, 0x034, 0x034, 0x034\n#_04C4F2: db $36, $58, $18, $15 : db $01, $20 ; 0x0B4C\u20130x0B4F: 0x136, 0x058, 0x018, 0x215\n#_04C4F8: db $E9, $E9, $E9, $C6 : db $33, $30 ; 0x0B50\u20130x0B53: 0x3E9, 0x3E9, 0x0E9, 0x3C6\n#_04C4FE: db $C6, $1C, $39, $26 : db $02, $30 ; 0x0B54\u20130x0B57: 0x2C6, 0x01C, 0x039, 0x326\n#_04C504: db $09, $26, $B6, $78 : db $00, $00 ; 0x0B58\u20130x0B5B: 0x009, 0x026, 0x0B6, 0x078\n#_04C50A: db $26, $B6, $C6, $1C : db $00, $02 ; 0x0B5C\u20130x0B5F: 0x026, 0x0B6, 0x2C6, 0x01C\n#_04C510: db $45, $D2, $D2, $CA : db $33, $33 ; 0x0B60\u20130x0B63: 0x345, 0x3D2, 0x3D2, 0x3CA\n#_04C516: db $CA, $D2, $CF, $C9 : db $33, $33 ; 0x0B64\u20130x0B67: 0x3CA, 0x3D2, 0x3CF, 0x3C9\n#_04C51C: db $CE, $34, $34, $C9 : db $33, $33 ; 0x0B68\u20130x0B6B: 0x3CE, 0x334, 0x334, 0x3C9\n#_04C522: db $36, $AC, $AE, $AF : db $05, $55 ; 0x0B6C\u20130x0B6F: 0x536, 0x0AC, 0x5AE, 0x5AF\n#_04C528: db $EC, $B1, $D0, $D2 : db $05, $55 ; 0x0B70\u20130x0B73: 0x5EC, 0x0B1, 0x5D0, 0x5D2\n#_04C52E: db $F0, $C9, $36, $B8 : db $03, $05 ; 0x0B74\u20130x0B77: 0x3F0, 0x0C9, 0x536, 0x0B8\n#_04C534: db $BA, $BB, $F0, $BD : db $55, $05 ; 0x0B78\u20130x0B7B: 0x5BA, 0x5BB, 0x5F0, 0x0BD\n#_04C53A: db $BF, $BE, $F0, $F9 : db $55, $00 ; 0x0B7C\u20130x0B7F: 0x5BF, 0x5BE, 0x0F0, 0x0F9\n#_04C540: db $FB, $FD, $FF, $36 : db $00, $00 ; 0x0B80\u20130x0B83: 0x0FB, 0x0FD, 0x0FF, 0x036\n#_04C546: db $14, $36, $36, $0A : db $40, $01 ; 0x0B84\u20130x0B87: 0x014, 0x436, 0x136, 0x00A\n#_04C54C: db $31, $42, $1F, $27 : db $14, $44 ; 0x0B88\u20130x0B8B: 0x431, 0x142, 0x41F, 0x427\n#_04C552: db $C9, $C9, $C6, $C6 : db $33, $33 ; 0x0B8C\u20130x0B8F: 0x3C9, 0x3C9, 0x3C6, 0x3C6\n#_04C558: db $C6, $CA, $CA, $C6 : db $33, $33 ; 0x0B90\u20130x0B93: 0x3C6, 0x3CA, 0x3CA, 0x3C6\n#_04C55E: db $C6, $CA, $CB, $CD : db $33, $33 ; 0x0B94\u20130x0B97: 0x3C6, 0x3CA, 0x3CB, 0x3CD\n#_04C564: db $26, $CA, $26, $CA : db $43, $43 ; 0x0B98\u20130x0B9B: 0x326, 0x4CA, 0x326, 0x4CA\n#_04C56A: db $9A, $36, $34, $AD : db $30, $05 ; 0x0B9C\u20130x0B9F: 0x09A, 0x336, 0x534, 0x0AD\n#_04C570: db $D4, $B0, $34, $C9 : db $55, $03 ; 0x0BA0\u20130x0BA3: 0x5D4, 0x5B0, 0x334, 0x0C9\n#_04C576: db $AE, $C9, $01, $1D : db $03, $11 ; 0x0BA4\u20130x0BA7: 0x3AE, 0x0C9, 0x101, 0x11D\n#_04C57C: db $E7, $B2, $B3, $B5 : db $35, $55 ; 0x0BA8\u20130x0BAB: 0x5E7, 0x3B2, 0x5B3, 0x5B5\n#_04C582: db $34, $C9, $89, $C9 : db $33, $03 ; 0x0BAC\u20130x0BAF: 0x334, 0x3C9, 0x389, 0x0C9\n#_04C588: db $C6, $F6, $D7, $9A : db $33, $50 ; 0x0BB0\u20130x0BB3: 0x3C6, 0x3F6, 0x0D7, 0x59A\n#_04C58E: db $C9, $34, $C0, $CA : db $30, $53 ; 0x0BB4\u20130x0BB7: 0x0C9, 0x334, 0x3C0, 0x5CA\n#_04C594: db $B6, $78, $34, $E9 : db $00, $03 ; 0x0BB8\u20130x0BBB: 0x0B6, 0x078, 0x334, 0x0E9\n#_04C59A: db $E9, $E9, $E9, $E1 : db $33, $35 ; 0x0BBC\u20130x0BBF: 0x3E9, 0x3E9, 0x5E9, 0x3E1\n#_04C5A0: db $E3, $E5, $B0, $79 : db $55, $00 ; 0x0BC0\u20130x0BC3: 0x5E3, 0x5E5, 0x0B0, 0x079\n#_04C5A6: db $9E, $B5, $26, $BE : db $00, $00 ; 0x0BC4\u20130x0BC7: 0x09E, 0x0B5, 0x026, 0x0BE\n#_04C5AC: db $24, $27, $9D, $27 : db $11, $01 ; 0x0BC8\u20130x0BCB: 0x124, 0x127, 0x19D, 0x027\n#_04C5B2: db $ED, $F0, $9C, $F3 : db $05, $30 ; 0x0BCC\u20130x0BCF: 0x5ED, 0x0F0, 0x09C, 0x3F3\n#_04C5B8: db $F5, $F4, $2E, $F5 : db $00, $45 ; 0x0BD0\u20130x0BD3: 0x0F5, 0x0F4, 0x52E, 0x4F5\n#_04C5BE: db $34, $14, $34, $23 : db $04, $04 ; 0x0BD4\u20130x0BD7: 0x434, 0x014, 0x434, 0x023\n#_04C5C4: db $CC, $F7, $A3, $C8 : db $05, $30 ; 0x0BD8\u20130x0BDB: 0x5CC, 0x0F7, 0x0A3, 0x3C8\n#_04C5CA: db $F5, $F6, $34, $4B : db $55, $31 ; 0x0BDC\u20130x0BDF: 0x5F5, 0x5F6, 0x134, 0x34B\n#_04C5D0: db $CC, $CE, $24, $89 : db $02, $10 ; 0x0BE0\u20130x0BE3: 0x2CC, 0x0CE, 0x024, 0x189\n#_04C5D6: db $34, $C9, $E0, $C9 : db $00, $00 ; 0x0BE4\u20130x0BE7: 0x034, 0x0C9, 0x0E0, 0x0C9\n#_04C5DC: db $CD, $63, $9D, $34 : db $21, $23 ; 0x0BE8\u20130x0BEB: 0x1CD, 0x263, 0x39D, 0x234\n#_04C5E2: db $A3, $7C, $E4, $26 : db $01, $31 ; 0x0BEC\u20130x0BEF: 0x1A3, 0x07C, 0x1E4, 0x326\n#_04C5E8: db $9F, $9F, $A5, $A5 : db $00, $11 ; 0x0BF0\u20130x0BF3: 0x09F, 0x09F, 0x1A5, 0x1A5\n#_04C5EE: db $AC, $34, $A3, $A5 : db $00, $00 ; 0x0BF4\u20130x0BF7: 0x0AC, 0x034, 0x0A3, 0x0A5\n#_04C5F4: db $A5, $A7, $34, $E2 : db $00, $00 ; 0x0BF8\u20130x0BFB: 0x0A5, 0x0A7, 0x034, 0x0E2\n#_04C5FA: db $34, $34, $71, $CA : db $00, $05 ; 0x0BFC\u20130x0BFF: 0x034, 0x034, 0x571, 0x0CA\n#_04C600: db $34, $34, $71, $26 : db $30, $00 ; 0x0C00\u20130x0C03: 0x034, 0x334, 0x071, 0x026\n#_04C606: db $B6, $36, $34, $B6 : db $00, $00 ; 0x0C04\u20130x0C07: 0x0B6, 0x036, 0x034, 0x0B6\n#_04C60C: db $78, $26, $34, $5A : db $00, $00 ; 0x0C08\u20130x0C0B: 0x078, 0x026, 0x034, 0x05A\n#_04C612: db $B6, $09, $B6, $78 : db $00, $00 ; 0x0C0C\u20130x0C0F: 0x0B6, 0x009, 0x0B6, 0x078\n#_04C618: db $26, $34, $34, $B3 : db $00, $04 ; 0x0C10\u20130x0C13: 0x026, 0x034, 0x434, 0x0B3\n#_04C61E: db $6E, $FA, $FB, $FD : db $45, $55 ; 0x0C14\u20130x0C17: 0x56E, 0x4FA, 0x5FB, 0x5FD\n#_04C624: db $6F, $70, $70, $8F : db $44, $44 ; 0x0C18\u20130x0C1B: 0x46F, 0x470, 0x470, 0x48F\n#_04C62A: db $00, $01, $73, $57 : db $66, $44 ; 0x0C1C\u20130x0C1F: 0x600, 0x601, 0x473, 0x457\n#_04C630: db $57, $6E, $8F, $07 : db $44, $46 ; 0x0C20\u20130x0C23: 0x457, 0x46E, 0x68F, 0x407\n#_04C636: db $08, $9A, $54, $84 : db $64, $44 ; 0x0C24\u20130x0C27: 0x408, 0x69A, 0x454, 0x484\n#_04C63C: db $9F, $FD, $AF, $E4 : db $45, $42 ; 0x0C28\u20130x0C2B: 0x59F, 0x4FD, 0x2AF, 0x4E4\n#_04C642: db $34, $61, $FD, $F5 : db $04, $55 ; 0x0C2C\u20130x0C2F: 0x434, 0x061, 0x5FD, 0x5F5\n#_04C648: db $E1, $36, $36, $34 : db $00, $00 ; 0x0C30\u20130x0C33: 0x0E1, 0x036, 0x036, 0x034\n#_04C64E: db $34, $AD, $AF, $C8 : db $04, $40 ; 0x0C34\u20130x0C37: 0x434, 0x0AD, 0x0AF, 0x4C8\n#_04C654: db $6C, $6C, $0F, $0F : db $11, $66 ; 0x0C38\u20130x0C3B: 0x16C, 0x16C, 0x60F, 0x60F\n#_04C65A: db $E4, $25, $12, $14 : db $23, $66 ; 0x0C3C\u20130x0C3F: 0x3E4, 0x225, 0x612, 0x614\n#_04C660: db $36, $36, $34, $7E : db $00, $03 ; 0x0C40\u20130x0C43: 0x036, 0x036, 0x334, 0x07E\n#_04C666: db $7E, $B6, $78, $26 : db $30, $00 ; 0x0C44\u20130x0C47: 0x07E, 0x3B6, 0x078, 0x026\n#_04C66C: db $B6, $26, $B6, $09 : db $00, $00 ; 0x0C48\u20130x0C4B: 0x0B6, 0x026, 0x0B6, 0x009\n#_04C672: db $F7, $E2, $9D, $15 : db $44, $26 ; 0x0C4C\u20130x0C4F: 0x4F7, 0x4E2, 0x69D, 0x215\n#_04C678: db $B3, $16, $B5, $01 : db $46, $44 ; 0x0C50\u20130x0C53: 0x6B3, 0x416, 0x4B5, 0x401\n#_04C67E: db $D6, $01, $18, $6F : db $26, $64 ; 0x0C54\u20130x0C57: 0x6D6, 0x201, 0x418, 0x66F\n#_04C684: db $70, $8F, $F2, $1C : db $44, $16 ; 0x0C58\u20130x0C5B: 0x470, 0x48F, 0x6F2, 0x11C\n#_04C68A: db $90, $0B, $26, $90 : db $46, $12 ; 0x0C5C\u20130x0C5F: 0x690, 0x40B, 0x226, 0x190\n#_04C690: db $90, $15, $4E, $9B : db $26, $44 ; 0x0C60\u20130x0C63: 0x690, 0x215, 0x44E, 0x49B\n#_04C696: db $54, $6E, $34, $15 : db $43, $06 ; 0x0C64\u20130x0C67: 0x354, 0x46E, 0x634, 0x015\n#_04C69C: db $78, $5C, $C3, $36 : db $44, $40 ; 0x0C68\u20130x0C6B: 0x478, 0x45C, 0x0C3, 0x436\n#_04C6A2: db $E2, $0B, $4E, $E2 : db $41, $14 ; 0x0C6C\u20130x0C6F: 0x1E2, 0x40B, 0x44E, 0x1E2\n#_04C6A8: db $E2, $E2, $E2, $E2 : db $44, $44 ; 0x0C70\u20130x0C73: 0x4E2, 0x4E2, 0x4E2, 0x4E2\n#_04C6AE: db $E2, $E2, $34, $1F : db $44, $06 ; 0x0C74\u20130x0C77: 0x4E2, 0x4E2, 0x634, 0x01F\n#_04C6B4: db $50, $10, $6C, $50 : db $16, $11 ; 0x0C78\u20130x0C7B: 0x650, 0x110, 0x16C, 0x150\n#_04C6BA: db $D0, $10, $CD, $13 : db $26, $26 ; 0x0C7C\u20130x0C7F: 0x6D0, 0x210, 0x6CD, 0x213\n#_04C6C0: db $A2, $A4, $A0, $9F : db $33, $00 ; 0x0C80\u20130x0C83: 0x3A2, 0x3A4, 0x0A0, 0x09F\n#_04C6C6: db $9F, $7C, $37, $34 : db $01, $32 ; 0x0C84\u20130x0C87: 0x19F, 0x07C, 0x237, 0x334\n#_04C6CC: db $78, $26, $B6, $34 : db $00, $00 ; 0x0C88\u20130x0C8B: 0x078, 0x026, 0x0B6, 0x034\n#_04C6D2: db $36, $79, $0F, $37 : db $01, $23 ; 0x0C8C\u20130x0C8F: 0x136, 0x079, 0x30F, 0x237\n#_04C6D8: db $31, $35, $C4, $FF : db $10, $11 ; 0x0C90\u20130x0C93: 0x031, 0x135, 0x1C4, 0x1FF\n#_04C6DE: db $79, $3B, $EE, $DC : db $15, $20 ; 0x0C94\u20130x0C97: 0x579, 0x13B, 0x0EE, 0x2DC\n#_04C6E4: db $42, $E6, $A7, $3A : db $52, $55 ; 0x0C98\u20130x0C9B: 0x242, 0x5E6, 0x5A7, 0x53A\n#_04C6EA: db $27, $E6, $EC, $3A : db $52, $25 ; 0x0C9C\u20130x0C9F: 0x227, 0x5E6, 0x5EC, 0x23A\n#_04C6F0: db $E6, $E6, $29, $3A : db $22, $35 ; 0x0CA0\u20130x0CA3: 0x2E6, 0x2E6, 0x529, 0x33A\n#_04C6F6: db $EC, $3A, $A9, $29 : db $25, $53 ; 0x0CA4\u20130x0CA7: 0x5EC, 0x23A, 0x3A9, 0x529\n#_04C6FC: db $E6, $A7, $29, $E6 : db $25, $32 ; 0x0CA8\u20130x0CAB: 0x5E6, 0x2A7, 0x229, 0x3E6\n#_04C702: db $E6, $29, $2E, $F4 : db $23, $52 ; 0x0CAC\u20130x0CAF: 0x3E6, 0x229, 0x22E, 0x5F4\n#_04C708: db $2C, $30, $2C, $2E : db $55, $55 ; 0x0CB0\u20130x0CB3: 0x52C, 0x530, 0x52C, 0x52E\n#_04C70E: db $2D, $F4, $30, $2C : db $52, $55 ; 0x0CB4\u20130x0CB7: 0x22D, 0x5F4, 0x530, 0x52C\n#_04C714: db $29, $30, $DC, $87 : db $35, $03 ; 0x0CB8\u20130x0CBB: 0x529, 0x330, 0x3DC, 0x087\n#_04C71A: db $87, $42, $3A, $2C : db $35, $55 ; 0x0CBC\u20130x0CBF: 0x587, 0x342, 0x53A, 0x52C\n#_04C720: db $E3, $E3, $2A, $E6 : db $00, $52 ; 0x0CC0\u20130x0CC3: 0x0E3, 0x0E3, 0x22A, 0x5E6\n#_04C726: db $3A, $E6, $5B, $26 : db $52, $16 ; 0x0CC4\u20130x0CC7: 0x23A, 0x5E6, 0x65B, 0x126\n#_04C72C: db $28, $26, $23, $2A : db $66, $65 ; 0x0CC8\u20130x0CCB: 0x628, 0x626, 0x523, 0x62A\n#_04C732: db $3A, $27, $24, $32 : db $55, $66 ; 0x0CCC\u20130x0CCF: 0x53A, 0x527, 0x624, 0x632\n#_04C738: db $34, $32, $23, $6A : db $66, $61 ; 0x0CD0\u20130x0CD3: 0x634, 0x632, 0x123, 0x66A\n#_04C73E: db $5B, $26, $28, $26 : db $16, $66 ; 0x0CD4\u20130x0CD7: 0x65B, 0x126, 0x628, 0x626\n#_04C744: db $23, $3C, $F2, $F4 : db $65, $22 ; 0x0CD8\u20130x0CDB: 0x523, 0x63C, 0x2F2, 0x2F4\n#_04C74A: db $2D, $2E, $6A, $5B : db $55, $11 ; 0x0CDC\u20130x0CDF: 0x52D, 0x52E, 0x16A, 0x15B\n#_04C750: db $35, $E3, $84, $E3 : db $00, $10 ; 0x0CE0\u20130x0CE3: 0x035, 0x0E3, 0x084, 0x1E3\n#_04C756: db $86, $5B, $18, $34 : db $11, $20 ; 0x0CE4\u20130x0CE7: 0x186, 0x15B, 0x018, 0x234\n#_04C75C: db $34, $34, $34, $00 : db $00, $01 ; 0x0CE8\u20130x0CEB: 0x034, 0x034, 0x134, 0x000\n#_04C762: db $C2, $34, $36, $58 : db $10, $21 ; 0x0CEC\u20130x0CEF: 0x0C2, 0x134, 0x136, 0x258\n#_04C768: db $65, $25, $06, $34 : db $12, $10 ; 0x0CF0\u20130x0CF3: 0x265, 0x125, 0x006, 0x134\n#_04C76E: db $C6, $C6, $40, $29 : db $00, $63 ; 0x0CF4\u20130x0CF7: 0x0C6, 0x0C6, 0x340, 0x629\n#_04C774: db $3F, $E6, $C9, $C9 : db $52, $00 ; 0x0CF8\u20130x0CFB: 0x23F, 0x5E6, 0x0C9, 0x0C9\n#_04C77A: db $C9, $29, $C9, $29 : db $05, $05 ; 0x0CFC\u20130x0CFF: 0x5C9, 0x029, 0x5C9, 0x029\n#_04C780: db $39, $2A, $33, $E6 : db $55, $52 ; 0x0D00\u20130x0D03: 0x539, 0x52A, 0x233, 0x5E6\n#_04C786: db $41, $23, $37, $3B : db $66, $55 ; 0x0D04\u20130x0D07: 0x641, 0x623, 0x537, 0x53B\n#_04C78C: db $39, $C4, $2A, $38 : db $50, $55 ; 0x0D08\u20130x0D0B: 0x039, 0x5C4, 0x52A, 0x538\n#_04C792: db $2C, $3D, $41, $23 : db $55, $66 ; 0x0D0C\u20130x0D0F: 0x52C, 0x53D, 0x641, 0x623\n#_04C798: db $E5, $3A, $27, $34 : db $25, $50 ; 0x0D10\u20130x0D13: 0x5E5, 0x23A, 0x027, 0x534\n#_04C79E: db $37, $26, $FA, $34 : db $55, $10 ; 0x0D14\u20130x0D17: 0x537, 0x526, 0x0FA, 0x134\n#_04C7A4: db $65, $23, $6A, $35 : db $36, $10 ; 0x0D18\u20130x0D1B: 0x665, 0x323, 0x06A, 0x135\n#_04C7AA: db $69, $6F, $23, $32 : db $33, $65 ; 0x0D1C\u20130x0D1F: 0x369, 0x36F, 0x523, 0x632\n#_04C7B0: db $6A, $35, $48, $4A : db $10, $66 ; 0x0D20\u20130x0D23: 0x06A, 0x135, 0x648, 0x64A\n#_04C7B6: db $49, $4B, $76, $9A : db $66, $30 ; 0x0D24\u20130x0D27: 0x649, 0x64B, 0x076, 0x39A\n#_04C7BC: db $23, $34, $66, $53 : db $60, $36 ; 0x0D28\u20130x0D2B: 0x023, 0x634, 0x666, 0x353\n#_04C7C2: db $52, $56, $35, $2A : db $66, $05 ; 0x0D2C\u20130x0D2F: 0x652, 0x656, 0x535, 0x02A\n#_04C7C8: db $65, $34, $70, $5C : db $30, $36 ; 0x0D30\u20130x0D33: 0x065, 0x334, 0x670, 0x35C\n#_04C7CE: db $34, $23, $57, $E1 : db $06, $52 ; 0x0D34\u20130x0D37: 0x634, 0x023, 0x257, 0x5E1\n#_04C7D4: db $77, $76, $6F, $63 : db $55, $36 ; 0x0D38\u20130x0D3B: 0x577, 0x576, 0x66F, 0x363\n#_04C7DA: db $4A, $64, $2D, $2E : db $66, $55 ; 0x0D3C\u20130x0D3F: 0x64A, 0x664, 0x52D, 0x52E\n#_04C7E0: db $2F, $2F, $2D, $2D : db $55, $55 ; 0x0D40\u20130x0D43: 0x52F, 0x52F, 0x52D, 0x52D\n#_04C7E6: db $9A, $E7, $66, $E8 : db $00, $60 ; 0x0D44\u20130x0D47: 0x09A, 0x0E7, 0x066, 0x6E8\n#_04C7EC: db $34, $33, $36, $C2 : db $05, $51 ; 0x0D48\u20130x0D4B: 0x534, 0x033, 0x136, 0x5C2\n#_04C7F2: db $C2, $34, $34, $CE : db $10, $00 ; 0x0D4C\u20130x0D4F: 0x0C2, 0x134, 0x034, 0x0CE\n#_04C7F8: db $06, $65, $65, $C6 : db $11, $10 ; 0x0D50\u20130x0D53: 0x106, 0x165, 0x065, 0x1C6\n#_04C7FE: db $C6, $02, $FE, $68 : db $02, $26 ; 0x0D54\u20130x0D57: 0x2C6, 0x002, 0x6FE, 0x268\n#_04C804: db $EC, $53, $58, $35 : db $20, $15 ; 0x0D58\u20130x0D5B: 0x0EC, 0x253, 0x558, 0x135\n#_04C80A: db $39, $08, $29, $38 : db $30, $33 ; 0x0D5C\u20130x0D5F: 0x039, 0x308, 0x329, 0x338\n#_04C810: db $08, $0B, $AD, $0B : db $11, $31 ; 0x0D60\u20130x0D63: 0x108, 0x10B, 0x1AD, 0x30B\n#_04C816: db $83, $29, $0A, $AD : db $13, $13 ; 0x0D64\u20130x0D67: 0x383, 0x129, 0x30A, 0x1AD\n#_04C81C: db $6D, $38, $0A, $BE : db $43, $10 ; 0x0D68\u20130x0D6B: 0x36D, 0x438, 0x00A, 0x1BE\n#_04C822: db $42, $8B, $F2, $AD : db $53, $03 ; 0x0D6C\u20130x0D6F: 0x342, 0x58B, 0x3F2, 0x0AD\n#_04C828: db $34, $9D, $F2, $0B : db $02, $01 ; 0x0D70\u20130x0D73: 0x234, 0x09D, 0x1F2, 0x00B\n#_04C82E: db $0B, $0A, $8B, $78 : db $11, $31 ; 0x0D74\u20130x0D77: 0x10B, 0x10A, 0x18B, 0x378\n#_04C834: db $34, $38, $34, $08 : db $33, $31 ; 0x0D78\u20130x0D7B: 0x334, 0x338, 0x134, 0x308\n#_04C83A: db $0B, $34, $9D, $F1 : db $10, $20 ; 0x0D7C\u20130x0D7F: 0x00B, 0x134, 0x09D, 0x2F1\n#_04C840: db $8B, $38, $38, $34 : db $33, $30 ; 0x0D80\u20130x0D83: 0x38B, 0x338, 0x038, 0x334\n#_04C846: db $0B, $0B, $34, $35 : db $11, $03 ; 0x0D84\u20130x0D87: 0x10B, 0x10B, 0x334, 0x035\n#_04C84C: db $36, $36, $98, $F6 : db $00, $05 ; 0x0D88\u20130x0D8B: 0x036, 0x036, 0x598, 0x0F6\n#_04C852: db $F6, $0A, $34, $37 : db $51, $03 ; 0x0D8C\u20130x0D8F: 0x1F6, 0x50A, 0x334, 0x037\n#_04C858: db $34, $FC, $FE, $FE : db $03, $33 ; 0x0D90\u20130x0D93: 0x334, 0x0FC, 0x3FE, 0x3FE\n#_04C85E: db $FE, $36, $02, $04 : db $30, $44 ; 0x0D94\u20130x0D97: 0x0FE, 0x336, 0x402, 0x404\n#_04C864: db $04, $54, $86, $36 : db $42, $10 ; 0x0D98\u20130x0D9B: 0x204, 0x454, 0x086, 0x136\n#_04C86A: db $F9, $FB, $35, $C6 : db $00, $40 ; 0x0D9C\u20130x0D9F: 0x0F9, 0x0FB, 0x035, 0x4C6\n#_04C870: db $5B, $6C, $6C, $6C : db $11, $11 ; 0x0DA0\u20130x0DA3: 0x15B, 0x16C, 0x16C, 0x16C\n#_04C876: db $6C, $6C, $71, $C2 : db $11, $11 ; 0x0DA4\u20130x0DA7: 0x16C, 0x16C, 0x171, 0x1C2\n#_04C87C: db $C2, $65, $C6, $C6 : db $11, $00 ; 0x0DA8\u20130x0DAB: 0x1C2, 0x165, 0x0C6, 0x0C6\n#_04C882: db $A3, $34, $AD, $A5 : db $00, $00 ; 0x0DAC\u20130x0DAF: 0x0A3, 0x034, 0x0AD, 0x0A5\n#_04C888: db $AC, $F1, $4F, $F7 : db $20, $03 ; 0x0DB0\u20130x0DB3: 0x0AC, 0x2F1, 0x34F, 0x0F7\n#_04C88E: db $F9, $FA, $EC, $34 : db $33, $00 ; 0x0DB4\u20130x0DB7: 0x3F9, 0x3FA, 0x0EC, 0x034\n#_04C894: db $74, $34, $C9, $C9 : db $20, $00 ; 0x0DB8\u20130x0DBB: 0x074, 0x234, 0x0C9, 0x0C9\n#_04C89A: db $C9, $0A, $73, $0B : db $04, $64 ; 0x0DBC\u20130x0DBF: 0x4C9, 0x00A, 0x473, 0x60B\n#_04C8A0: db $F0, $77, $FF, $B0 : db $02, $10 ; 0x0DC0\u20130x0DC3: 0x2F0, 0x077, 0x0FF, 0x1B0\n#_04C8A6: db $15, $14, $36, $14 : db $00, $04 ; 0x0DC4\u20130x0DC7: 0x015, 0x014, 0x436, 0x014\n#_04C8AC: db $E7, $6C, $AC, $F1 : db $11, $00 ; 0x0DC8\u20130x0DCB: 0x1E7, 0x16C, 0x0AC, 0x0F1\n#_04C8B2: db $C9, $85, $C9, $A8 : db $01, $00 ; 0x0DCC\u20130x0DCF: 0x1C9, 0x085, 0x0C9, 0x0A8\n#_04C8B8: db $34, $7E, $7E, $B0 : db $03, $30 ; 0x0DD0\u20130x0DD3: 0x334, 0x07E, 0x07E, 0x3B0\n#_04C8BE: db $6D, $F8, $F9, $FB : db $13, $33 ; 0x0DD4\u20130x0DD7: 0x36D, 0x1F8, 0x3F9, 0x3FB\n#_04C8C4: db $F1, $36, $34, $FE : db $00, $03 ; 0x0DD8\u20130x0DDB: 0x0F1, 0x036, 0x334, 0x0FE\n#_04C8CA: db $76, $F0, $36, $36 : db $60, $30 ; 0x0DDC\u20130x0DDF: 0x076, 0x6F0, 0x036, 0x336\n#_04C8D0: db $34, $04, $05, $F0 : db $04, $40 ; 0x0DE0\u20130x0DE3: 0x434, 0x004, 0x005, 0x4F0\n#_04C8D6: db $34, $34, $6C, $6C : db $00, $11 ; 0x0DE4\u20130x0DE7: 0x034, 0x034, 0x16C, 0x16C\n#_04C8DC: db $81, $6C, $FB, $FD : db $11, $00 ; 0x0DE8\u20130x0DEB: 0x181, 0x16C, 0x0FB, 0x0FD\n#_04C8E2: db $FF, $73, $34, $34 : db $02, $00 ; 0x0DEC\u20130x0DEF: 0x2FF, 0x073, 0x034, 0x034\n#_04C8E8: db $34, $07, $A5, $1C : db $01, $12 ; 0x0DF0\u20130x0DF3: 0x134, 0x007, 0x2A5, 0x11C\n#_04C8EE: db $C6, $C6, $D5, $37 : db $00, $02 ; 0x0DF4\u20130x0DF7: 0x0C6, 0x0C6, 0x2D5, 0x037\n#_04C8F4: db $0B, $D4, $20, $7D : db $20, $56 ; 0x0DF8\u20130x0DFB: 0x00B, 0x2D4, 0x620, 0x57D\n#_04C8FA: db $7E, $7A, $C4, $AA : db $66, $10 ; 0x0DFC\u20130x0DFF: 0x67E, 0x67A, 0x0C4, 0x1AA\n#_04C900: db $81, $80, $34, $20 : db $66, $05 ; 0x0E00\u20130x0E03: 0x681, 0x680, 0x534, 0x020\n#_04C906: db $89, $BC, $85, $FE : db $62, $61 ; 0x0E04\u20130x0E07: 0x289, 0x6BC, 0x185, 0x6FE\n#_04C90C: db $C6, $9F, $9F, $9F : db $00, $00 ; 0x0E08\u20130x0E0B: 0x0C6, 0x09F, 0x09F, 0x09F\n#_04C912: db $9F, $9F, $9F, $61 : db $00, $01 ; 0x0E0C\u20130x0E0F: 0x09F, 0x09F, 0x19F, 0x061\n#_04C918: db $39, $8E, $35, $7B : db $16, $06 ; 0x0E10\u20130x0E13: 0x639, 0x18E, 0x635, 0x07B\n#_04C91E: db $34, $7C, $7B, $34 : db $06, $60 ; 0x0E14\u20130x0E17: 0x634, 0x07C, 0x07B, 0x634\n#_04C924: db $86, $34, $87, $96 : db $60, $66 ; 0x0E18\u20130x0E1B: 0x086, 0x634, 0x687, 0x696\n#_04C92A: db $98, $9A, $3F, $56 : db $66, $21 ; 0x0E1C\u20130x0E1F: 0x698, 0x69A, 0x13F, 0x256\n#_04C930: db $96, $98, $9A, $56 : db $66, $61 ; 0x0E20\u20130x0E23: 0x696, 0x698, 0x19A, 0x656\n#_04C936: db $F9, $CD, $9B, $A0 : db $22, $66 ; 0x0E24\u20130x0E27: 0x2F9, 0x2CD, 0x69B, 0x6A0\n#_04C93C: db $CD, $D9, $A0, $D2 : db $22, $62 ; 0x0E28\u20130x0E2B: 0x2CD, 0x2D9, 0x2A0, 0x6D2\n#_04C942: db $DD, $96, $27, $28 : db $26, $33 ; 0x0E2C\u20130x0E2F: 0x6DD, 0x296, 0x327, 0x328\n#_04C948: db $F6, $F6, $D6, $9E : db $22, $20 ; 0x0E30\u20130x0E33: 0x2F6, 0x2F6, 0x0D6, 0x29E\n#_04C94E: db $9F, $7C, $1D, $1E : db $01, $11 ; 0x0E34\u20130x0E37: 0x19F, 0x07C, 0x11D, 0x11E\n#_04C954: db $C6, $A4, $A7, $1A : db $00, $02 ; 0x0E38\u20130x0E3B: 0x0C6, 0x0A4, 0x2A7, 0x01A\n#_04C95A: db $AD, $C6, $7C, $D5 : db $00, $11 ; 0x0E3C\u20130x0E3F: 0x0AD, 0x0C6, 0x17C, 0x1D5\n#_04C960: db $AA, $AC, $AD, $85 : db $66, $63 ; 0x0E40\u20130x0E43: 0x6AA, 0x6AC, 0x3AD, 0x685\n#_04C966: db $66, $79, $65, $C6 : db $11, $10 ; 0x0E44\u20130x0E47: 0x166, 0x179, 0x065, 0x1C6\n#_04C96C: db $C6, $AE, $AE, $D1 : db $06, $60 ; 0x0E48\u20130x0E4B: 0x6C6, 0x0AE, 0x0AE, 0x6D1\n#_04C972: db $D1, $83, $AF, $57 : db $01, $62 ; 0x0E4C\u20130x0E4F: 0x1D1, 0x083, 0x2AF, 0x657\n#_04C978: db $AE, $AE, $83, $B5 : db $66, $16 ; 0x0E50\u20130x0E53: 0x6AE, 0x6AE, 0x683, 0x1B5\n#_04C97E: db $E0, $C9, $C9, $CC : db $00, $00 ; 0x0E54\u20130x0E57: 0x0E0, 0x0C9, 0x0C9, 0x0CC\n#_04C984: db $86, $0F, $34, $A3 : db $12, $00 ; 0x0E58\u20130x0E5B: 0x286, 0x10F, 0x034, 0x0A3\n#_04C98A: db $AE, $78, $57, $E6 : db $61, $21 ; 0x0E5C\u20130x0E5F: 0x1AE, 0x678, 0x157, 0x2E6\n#_04C990: db $B7, $1E, $5D, $5E : db $62, $11 ; 0x0E60\u20130x0E63: 0x2B7, 0x61E, 0x15D, 0x15E\n#_04C996: db $60, $AE, $20, $AE : db $16, $26 ; 0x0E64\u20130x0E67: 0x660, 0x1AE, 0x620, 0x2AE\n#_04C99C: db $BB, $BD, $20, $FF : db $66, $21 ; 0x0E68\u20130x0E6B: 0x6BB, 0x6BD, 0x120, 0x2FF\n#_04C9A2: db $62, $BF, $C1, $66 : db $16, $61 ; 0x0E6C\u20130x0E6F: 0x662, 0x1BF, 0x1C1, 0x666\n#_04C9A8: db $A9, $CB, $CD, $20 : db $06, $62 ; 0x0E70\u20130x0E73: 0x6A9, 0x0CB, 0x2CD, 0x620\n#_04C9AE: db $D5, $CF, $D1, $1C : db $06, $62 ; 0x0E74\u20130x0E77: 0x6D5, 0x0CF, 0x2D1, 0x61C\n#_04C9B4: db $AE, $D4, $C8, $DF : db $66, $06 ; 0x0E78\u20130x0E7B: 0x6AE, 0x6D4, 0x6C8, 0x0DF\n#_04C9BA: db $57, $7E, $E0, $C9 : db $21, $60 ; 0x0E7C\u20130x0E7F: 0x157, 0x27E, 0x0E0, 0x6C9\n#_04C9C0: db $DF, $53, $D1, $C8 : db $61, $00 ; 0x0E80\u20130x0E83: 0x1DF, 0x653, 0x0D1, 0x0C8\n#_04C9C6: db $C9, $B4, $E4, $AE : db $06, $66 ; 0x0E84\u20130x0E87: 0x6C9, 0x0B4, 0x6E4, 0x6AE\n#_04C9CC: db $AE, $7E, $DF, $C8 : db $61, $60 ; 0x0E88\u20130x0E8B: 0x1AE, 0x67E, 0x0DF, 0x6C8\n#_04C9D2: db $87, $E7, $AE, $E7 : db $36, $66 ; 0x0E8C\u20130x0E8F: 0x687, 0x3E7, 0x6AE, 0x6E7\n#_04C9D8: db $E7, $EB, $ED, $E7 : db $66, $66 ; 0x0E90\u20130x0E93: 0x6E7, 0x6EB, 0x6ED, 0x6E7\n#_04C9DE: db $E7, $E7, $F0, $AB : db $66, $60 ; 0x0E94\u20130x0E97: 0x6E7, 0x6E7, 0x0F0, 0x6AB\n#_04C9E4: db $7E, $FB, $FC, $FD : db $16, $66 ; 0x0E98\u20130x0E9B: 0x67E, 0x1FB, 0x6FC, 0x6FD\n#_04C9EA: db $FF, $FC, $E7, $F8 : db $66, $66 ; 0x0E9C\u20130x0E9F: 0x6FF, 0x6FC, 0x6E7, 0x6F8\n#_04C9F0: db $7E, $D1, $1C, $E7 : db $10, $26 ; 0x0EA0\u20130x0EA3: 0x07E, 0x1D1, 0x61C, 0x2E7\n#_04C9F6: db $02, $03, $F8, $7E : db $77, $61 ; 0x0EA4\u20130x0EA7: 0x702, 0x703, 0x1F8, 0x67E\n#_04C9FC: db $66, $1E, $08, $E7 : db $12, $76 ; 0x0EA8\u20130x0EAB: 0x266, 0x11E, 0x608, 0x7E7\n#_04CA02: db $06, $09, $EE, $AE : db $77, $16 ; 0x0EAC\u20130x0EAF: 0x706, 0x709, 0x6EE, 0x1AE\n#_04CA08: db $66, $E6, $0D, $E7 : db $16, $76 ; 0x0EB0\u20130x0EB3: 0x666, 0x1E6, 0x60D, 0x7E7\n#_04CA0E: db $AE, $1C, $E6, $AE : db $62, $66 ; 0x0EB4\u20130x0EB7: 0x2AE, 0x61C, 0x6E6, 0x6AE\n#_04CA14: db $1C, $AE, $1C, $14 : db $26, $27 ; 0x0EB8\u20130x0EBB: 0x61C, 0x2AE, 0x71C, 0x214\n#_04CA1A: db $1C, $15, $16, $17 : db $27, $77 ; 0x0EBC\u20130x0EBF: 0x71C, 0x215, 0x716, 0x717\n#_04CA20: db $18, $16, $E7, $AE : db $77, $66 ; 0x0EC0\u20130x0EC3: 0x718, 0x716, 0x6E7, 0x6AE\n#_04CA26: db $D2, $83, $D2, $7C : db $01, $01 ; 0x0EC4\u20130x0EC7: 0x1D2, 0x083, 0x1D2, 0x07C\n#_04CA2C: db $C8, $1C, $E9, $C8 : db $02, $60 ; 0x0EC8\u20130x0ECB: 0x2C8, 0x01C, 0x0E9, 0x6C8\n#_04CA32: db $79, $9E, $C5, $D3 : db $10, $00 ; 0x0ECC\u20130x0ECF: 0x079, 0x19E, 0x0C5, 0x0D3\n#_04CA38: db $AE, $AE, $E5, $FE : db $66, $12 ; 0x0ED0\u20130x0ED3: 0x6AE, 0x6AE, 0x2E5, 0x1FE\n#_04CA3E: db $AE, $06, $65, $65 : db $61, $11 ; 0x0ED4\u20130x0ED7: 0x1AE, 0x606, 0x165, 0x165\n#_04CA44: db $AE, $83, $E7, $E7 : db $61, $66 ; 0x0ED8\u20130x0EDB: 0x1AE, 0x683, 0x6E7, 0x6E7\n#_04CA4A: db $AE, $E9, $E7, $3F : db $66, $65 ; 0x0EDC\u20130x0EDF: 0x6AE, 0x6E9, 0x5E7, 0x63F\n#_04CA50: db $E8, $C8, $D1, $D1 : db $10, $00 ; 0x0EE0\u20130x0EE3: 0x0E8, 0x1C8, 0x0D1, 0x0D1\n#_04CA56: db $D1, $D2, $85, $7E : db $00, $31 ; 0x0EE4\u20130x0EE7: 0x0D1, 0x0D2, 0x185, 0x37E\n#_04CA5C: db $27, $C8, $D1, $DC : db $70, $00 ; 0x0EE8\u20130x0EEB: 0x027, 0x7C8, 0x0D1, 0x0DC\n#_04CA62: db $DD, $C8, $E7, $1D : db $00, $67 ; 0x0EEC\u20130x0EEF: 0x0DD, 0x0C8, 0x7E7, 0x61D\n#_04CA68: db $87, $89, $E7, $1C : db $33, $67 ; 0x0EF0\u20130x0EF3: 0x387, 0x389, 0x7E7, 0x61C\n#_04CA6E: db $2E, $D3, $C5, $E7 : db $70, $06 ; 0x0EF4\u20130x0EF7: 0x02E, 0x7D3, 0x6C5, 0x0E7\n#_04CA74: db $AE, $EA, $EA, $03 : db $66, $63 ; 0x0EF8\u20130x0EFB: 0x6AE, 0x6EA, 0x3EA, 0x603\n#_04CA7A: db $E7, $C5, $E7, $D7 : db $60, $60 ; 0x0EFC\u20130x0EFF: 0x0E7, 0x6C5, 0x0E7, 0x6D7\n#_04CA80: db $BE, $D5, $19, $18 : db $01, $22 ; 0x0F00\u20130x0F03: 0x1BE, 0x0D5, 0x219, 0x218\n#_04CA86: db $70, $F8, $10, $C6 : db $10, $20 ; 0x0F04\u20130x0F07: 0x070, 0x1F8, 0x010, 0x2C6\n#_04CA8C: db $34, $36, $C4, $C6 : db $00, $10 ; 0x0F08\u20130x0F0B: 0x034, 0x036, 0x0C4, 0x1C6\n#_04CA92: db $9F, $9F, $A3, $9F : db $00, $00 ; 0x0F0C\u20130x0F0F: 0x09F, 0x09F, 0x0A3, 0x09F\n#_04CA98: db $7C, $9F, $66, $67 : db $10, $11 ; 0x0F10\u20130x0F13: 0x07C, 0x19F, 0x166, 0x167\n#_04CA9E: db $34, $34, $17, $A5 : db $00, $20 ; 0x0F14\u20130x0F17: 0x034, 0x034, 0x017, 0x2A5\n#_04CAA4: db $A5, $A5, $C6, $86 : db $00, $03 ; 0x0F18\u20130x0F1B: 0x0A5, 0x0A5, 0x3C6, 0x086\n#_04CAAA: db $83, $0C, $E1, $06 : db $13, $23 ; 0x0F1C\u20130x0F1F: 0x383, 0x10C, 0x3E1, 0x206\n#_04CAB0: db $60, $35, $83, $88 : db $10, $13 ; 0x0F20\u20130x0F23: 0x060, 0x135, 0x383, 0x188\n#_04CAB6: db $42, $2A, $E6, $06 : db $57, $23 ; 0x0F24\u20130x0F27: 0x742, 0x52A, 0x3E6, 0x206\n#_04CABC: db $C2, $29, $17, $06 : db $13, $31 ; 0x0F28\u20130x0F2B: 0x3C2, 0x129, 0x117, 0x306\n#_04CAC2: db $29, $06, $C6, $E6 : db $31, $02 ; 0x0F2C\u20130x0F2F: 0x129, 0x306, 0x2C6, 0x0E6\n#_04CAC8: db $17, $71, $20, $09 : db $31, $31 ; 0x0F30\u20130x0F33: 0x117, 0x371, 0x120, 0x309\n#_04CACE: db $AD, $30, $71, $58 : db $67, $11 ; 0x0F34\u20130x0F37: 0x7AD, 0x630, 0x171, 0x158\n#_04CAD4: db $AC, $65, $65, $65 : db $61, $11 ; 0x0F38\u20130x0F3B: 0x1AC, 0x665, 0x165, 0x165\n#_04CADA: db $65, $58, $30, $71 : db $11, $71 ; 0x0F3C\u20130x0F3F: 0x165, 0x158, 0x130, 0x771\n#_04CAE0: db $25, $C6, $D5, $C5 : db $20, $00 ; 0x0F40\u20130x0F43: 0x025, 0x2C6, 0x0D5, 0x0C5\n#_04CAE6: db $20, $C6, $AA, $20 : db $20, $05 ; 0x0F44\u20130x0F47: 0x020, 0x2C6, 0x5AA, 0x020\n#_04CAEC: db $DF, $34, $DC, $DC : db $07, $00 ; 0x0F48\u20130x0F4B: 0x7DF, 0x034, 0x0DC, 0x0DC\n#_04CAF2: db $CC, $78, $79, $34 : db $01, $10 ; 0x0F4C\u20130x0F4F: 0x1CC, 0x078, 0x079, 0x134\n#_04CAF8: db $AC, $34, $34, $CC : db $00, $00 ; 0x0F50\u20130x0F53: 0x0AC, 0x034, 0x034, 0x0CC\n#_04CAFE: db $7E, $E1, $34, $38 : db $10, $03 ; 0x0F54\u20130x0F57: 0x07E, 0x1E1, 0x334, 0x038\n#_04CB04: db $34, $50, $20, $6C : db $01, $51 ; 0x0F58\u20130x0F5B: 0x134, 0x050, 0x120, 0x56C\n#_04CB0A: db $80, $6C, $50, $1C : db $11, $12 ; 0x0F5C\u20130x0F5F: 0x180, 0x16C, 0x250, 0x11C\n#_04CB10: db $3C, $3E, $40, $F0 : db $77, $70 ; 0x0F60\u20130x0F63: 0x73C, 0x73E, 0x040, 0x7F0\n#_04CB16: db $33, $E7, $56, $94 : db $31, $13 ; 0x0F64\u20130x0F67: 0x133, 0x3E7, 0x356, 0x194\n#_04CB1C: db $56, $C7, $1C, $F1 : db $12, $25 ; 0x0F68\u20130x0F6B: 0x256, 0x1C7, 0x51C, 0x2F1\n#_04CB22: db $49, $48, $FF, $E7 : db $77, $01 ; 0x0F6C\u20130x0F6F: 0x749, 0x748, 0x1FF, 0x0E7\n#_04CB28: db $D0, $CD, $CD, $CD : db $22, $22 ; 0x0F70\u20130x0F73: 0x2D0, 0x2CD, 0x2CD, 0x2CD\n#_04CB2E: db $CD, $DF, $34, $34 : db $22, $00 ; 0x0F74\u20130x0F77: 0x2CD, 0x2DF, 0x034, 0x034\n#_04CB34: db $34, $D9, $D6, $F6 : db $02, $22 ; 0x0F78\u20130x0F7B: 0x234, 0x0D9, 0x2D6, 0x2F6\n#_04CB3A: db $71, $67, $34, $ED : db $11, $01 ; 0x0F7C\u20130x0F7F: 0x171, 0x167, 0x134, 0x0ED\n#_04CB40: db $C7, $FF, $AC, $67 : db $22, $61 ; 0x0F80\u20130x0F83: 0x2C7, 0x2FF, 0x1AC, 0x667\n#_04CB46: db $54, $FF, $E0, $EC : db $22, $22 ; 0x0F84\u20130x0F87: 0x254, 0x2FF, 0x2E0, 0x2EC\n#_04CB4C: db $ED, $0C, $F7, $20 : db $23, $22 ; 0x0F88\u20130x0F8B: 0x3ED, 0x20C, 0x2F7, 0x220\n#_04CB52: db $6A, $27, $DF, $EF : db $11, $22 ; 0x0F8C\u20130x0F8F: 0x16A, 0x127, 0x2DF, 0x2EF\n#_04CB58: db $E5, $ED, $31, $57 : db $22, $12 ; 0x0F90\u20130x0F93: 0x2E5, 0x2ED, 0x231, 0x157\n#_04CB5E: db $FA, $1E, $CD, $C8 : db $11, $20 ; 0x0F94\u20130x0F97: 0x1FA, 0x11E, 0x0CD, 0x2C8\n#_04CB64: db $F4, $D0, $7E, $34 : db $22, $10 ; 0x0F98\u20130x0F9B: 0x2F4, 0x2D0, 0x07E, 0x134\n#_04CB6A: db $21, $C9, $C9, $D7 : db $20, $02 ; 0x0F9C\u20130x0F9F: 0x021, 0x2C9, 0x2C9, 0x0D7\n#_04CB70: db $CD, $EE, $ED, $C7 : db $21, $12 ; 0x0FA0\u20130x0FA3: 0x1CD, 0x2EE, 0x2ED, 0x1C7\n#_04CB76: db $C7, $C7, $C7, $C7 : db $22, $22 ; 0x0FA4\u20130x0FA7: 0x2C7, 0x2C7, 0x2C7, 0x2C7\n#_04CB7C: db $CD, $CE, $C8, $1C : db $20, $02 ; 0x0FA8\u20130x0FAB: 0x0CD, 0x2CE, 0x2C8, 0x01C\n#_04CB82: db $C8, $53, $D0, $CC : db $01, $00 ; 0x0FAC\u20130x0FAF: 0x1C8, 0x053, 0x0D0, 0x0CC\n#_04CB88: db $83, $C7, $57, $FF : db $10, $22 ; 0x0FB0\u20130x0FB3: 0x083, 0x1C7, 0x257, 0x2FF\n#_04CB8E: db $34, $D0, $C8, $D7 : db $02, $02 ; 0x0FB4\u20130x0FB7: 0x234, 0x0D0, 0x2C8, 0x0D7\n#_04CB94: db $E9, $C7, $CD, $D8 : db $12, $22 ; 0x0FB8\u20130x0FBB: 0x2E9, 0x1C7, 0x2CD, 0x2D8\n#_04CB9A: db $C8, $CD, $C8, $CF : db $02, $00 ; 0x0FBC\u20130x0FBF: 0x2C8, 0x0CD, 0x0C8, 0x0CF\n#_04CBA0: db $D3, $CD, $D4, $E6 : db $02, $20 ; 0x0FC0\u20130x0FC3: 0x2D3, 0x0CD, 0x0D4, 0x2E6\n#_04CBA6: db $C4, $4F, $F8, $C4 : db $07, $20 ; 0x0FC4\u20130x0FC7: 0x7C4, 0x04F, 0x0F8, 0x2C4\n#_04CBAC: db $05, $65, $65, $58 : db $11, $11 ; 0x0FC8\u20130x0FCB: 0x105, 0x165, 0x165, 0x158\n#_04CBB2: db $C4, $AB, $2F, $58 : db $00, $71 ; 0x0FCC\u20130x0FCF: 0x0C4, 0x0AB, 0x12F, 0x758\n#_04CBB8: db $CA, $7E, $E0, $1C : db $01, $02 ; 0x0FD0\u20130x0FD3: 0x1CA, 0x07E, 0x2E0, 0x01C\n#_04CBBE: db $31, $D5, $C8, $31 : db $10, $01 ; 0x0FD4\u20130x0FD7: 0x031, 0x1D5, 0x1C8, 0x031\n#_04CBC4: db $D5, $E4, $34, $31 : db $02, $01 ; 0x0FD8\u20130x0FDB: 0x2D5, 0x0E4, 0x134, 0x031\n#_04CBCA: db $E6, $D5, $CD, $AE : db $00, $26 ; 0x0FDC\u20130x0FDF: 0x0E6, 0x0D5, 0x6CD, 0x2AE\n#_04CBD0: db $AE, $57, $D2, $59 : db $67, $07 ; 0x0FE0\u20130x0FE3: 0x7AE, 0x657, 0x7D2, 0x059\n#_04CBD6: db $6A, $40, $83, $5C : db $65, $17 ; 0x0FE4\u20130x0FE7: 0x56A, 0x640, 0x783, 0x15C\n#_04CBDC: db $1C, $C8, $5E, $F4 : db $20, $72 ; 0x0FE8\u20130x0FEB: 0x01C, 0x2C8, 0x25E, 0x7F4\n#_04CBE2: db $53, $1C, $60, $1C : db $12, $72 ; 0x0FEC\u20130x0FEF: 0x253, 0x11C, 0x260, 0x71C\n#_04CBE8: db $61, $2A, $05, $5F : db $77, $77 ; 0x0FF0\u20130x0FF3: 0x761, 0x72A, 0x705, 0x75F\n#_04CBEE: db $AE, $05, $E9, $83 : db $67, $61 ; 0x0FF4\u20130x0FF7: 0x7AE, 0x605, 0x1E9, 0x683\n#_04CBF4: db $5B, $E9, $20, $20 : db $16, $23 ; 0x0FF8\u20130x0FFB: 0x65B, 0x1E9, 0x320, 0x220\n#_04CBFA: db $E7, $09, $5A, $33 : db $67, $72 ; 0x0FFC\u20130x0FFF: 0x7E7, 0x609, 0x25A, 0x733\n#_04CC00: db $33, $20, $65, $34 : db $23, $70 ; 0x1000\u20130x1003: 0x333, 0x220, 0x065, 0x734\n#_04CC06: db $20, $9C, $9E, $9E : db $35, $55 ; 0x1004\u20130x1007: 0x520, 0x39C, 0x59E, 0x59E\n#_04CC0C: db $71, $67, $34, $69 : db $11, $06 ; 0x1008\u20130x100B: 0x171, 0x167, 0x634, 0x069\n#_04CC12: db $97, $9C, $06, $AE : db $55, $16 ; 0x100C\u20130x100F: 0x597, 0x59C, 0x606, 0x1AE\n#_04CC18: db $AE, $65, $65, $65 : db $61, $11 ; 0x1010\u20130x1013: 0x1AE, 0x665, 0x165, 0x165\n#_04CC1E: db $65, $65, $AE, $97 : db $11, $65 ; 0x1014\u20130x1017: 0x165, 0x165, 0x5AE, 0x697\n#_04CC24: db $1F, $07, $9C, $06 : db $31, $51 ; 0x1018\u20130x101B: 0x11F, 0x307, 0x19C, 0x506\n#_04CC2A: db $F1, $69, $B7, $C4 : db $17, $60 ; 0x101C\u20130x101F: 0x7F1, 0x169, 0x0B7, 0x6C4\n#_04CC30: db $AE, $AE, $6B, $6B : db $66, $77 ; 0x1020\u20130x1023: 0x6AE, 0x6AE, 0x76B, 0x76B\n#_04CC36: db $CF, $D2, $C8, $21 : db $00, $07 ; 0x1024\u20130x1027: 0x0CF, 0x0D2, 0x7C8, 0x021\n#_04CC3C: db $56, $C8, $AE, $5F : db $70, $67 ; 0x1028\u20130x102B: 0x056, 0x7C8, 0x7AE, 0x65F\n#_04CC42: db $E7, $64, $6E, $AE : db $67, $76 ; 0x102C\u20130x102F: 0x7E7, 0x664, 0x66E, 0x7AE\n#_04CC48: db $E7, $F8, $E7, $D1 : db $66, $60 ; 0x1030\u20130x1033: 0x6E7, 0x6F8, 0x0E7, 0x6D1\n#_04CC4E: db $D1, $61, $08, $70 : db $07, $77 ; 0x1034\u20130x1037: 0x7D1, 0x061, 0x708, 0x770\n#_04CC54: db $AE, $F9, $FA, $E7 : db $66, $66 ; 0x1038\u20130x103B: 0x6AE, 0x6F9, 0x6FA, 0x6E7\n#_04CC5A: db $74, $1C, $E7, $70 : db $77, $67 ; 0x103C\u20130x103F: 0x774, 0x71C, 0x7E7, 0x670\n#_04CC60: db $AE, $AE, $6E, $F9 : db $66, $76 ; 0x1040\u20130x1043: 0x6AE, 0x6AE, 0x66E, 0x7F9\n#_04CC66: db $E7, $E7, $E7, $5C : db $66, $67 ; 0x1044\u20130x1047: 0x6E7, 0x6E7, 0x7E7, 0x65C\n#_04CC6C: db $E4, $78, $79, $6E : db $67, $77 ; 0x1048\u20130x104B: 0x7E4, 0x678, 0x779, 0x76E\n#_04CC72: db $09, $E4, $65, $E7 : db $76, $76 ; 0x104C\u20130x104F: 0x609, 0x7E4, 0x665, 0x7E7\n#_04CC78: db $7B, $7A, $E4, $7C : db $77, $67 ; 0x1050\u20130x1053: 0x77B, 0x77A, 0x7E4, 0x67C\n#_04CC7E: db $E8, $E7, $09, $71 : db $66, $77 ; 0x1054\u20130x1057: 0x6E8, 0x6E7, 0x709, 0x771\n#_04CC84: db $96, $71, $97, $97 : db $51, $55 ; 0x1058\u20130x105B: 0x196, 0x571, 0x597, 0x597\n#_04CC8A: db $97, $97, $05, $65 : db $55, $11 ; 0x105C\u20130x105F: 0x597, 0x597, 0x105, 0x165\n#_04CC90: db $1F, $65, $07, $EA : db $21, $11 ; 0x1060\u20130x1063: 0x11F, 0x265, 0x107, 0x1EA\n#_04CC96: db $65, $AE, $C7, $85 : db $16, $03 ; 0x1064\u20130x1067: 0x665, 0x1AE, 0x3C7, 0x085\n#_04CC9C: db $7E, $C9, $D0, $AB : db $10, $00 ; 0x1068\u20130x106B: 0x07E, 0x1C9, 0x0D0, 0x0AB\n#_04CCA2: db $AB, $7E, $EE, $AE : db $01, $16 ; 0x106C\u20130x106F: 0x1AB, 0x07E, 0x6EE, 0x1AE\n#_04CCA8: db $AE, $07, $C5, $AE : db $62, $06 ; 0x1070\u20130x1073: 0x2AE, 0x607, 0x6C5, 0x0AE\n#_04CCAE: db $34, $34, $D3, $AE : db $00, $06 ; 0x1074\u20130x1077: 0x034, 0x034, 0x6D3, 0x0AE\n#_04CCB4: db $E2, $C5, $1B, $7E : db $00, $77 ; 0x1078\u20130x107B: 0x0E2, 0x0C5, 0x71B, 0x77E\n#_04CCBA: db $AE, $79, $DA, $34 : db $61, $00 ; 0x107C\u20130x107F: 0x1AE, 0x679, 0x0DA, 0x034\n#_04CCC0: db $F2, $7E, $C8, $86 : db $17, $01 ; 0x1080\u20130x1083: 0x7F2, 0x17E, 0x1C8, 0x086\n#_04CCC6: db $34, $AE, $01, $20 : db $06, $22 ; 0x1084\u20130x1087: 0x634, 0x0AE, 0x201, 0x220\n#_04CCCC: db $71, $67, $01, $34 : db $01, $20 ; 0x1088\u20130x108B: 0x171, 0x067, 0x001, 0x234\n#_04CCD2: db $0C, $AE, $74, $34 : db $26, $30 ; 0x108C\u20130x108F: 0x60C, 0x2AE, 0x074, 0x334\n#_04CCD8: db $78, $7F, $AE, $35 : db $11, $60 ; 0x1090\u20130x1093: 0x178, 0x17F, 0x0AE, 0x635\n#_04CCDE: db $34, $53, $E6, $5C : db $01, $27 ; 0x1094\u20130x1097: 0x134, 0x053, 0x7E6, 0x25C\n#_04CCE4: db $06, $AE, $9C, $AA : db $16, $56 ; 0x1098\u20130x109B: 0x606, 0x1AE, 0x69C, 0x5AA\n#_04CCEA: db $58, $34, $CE, $AB : db $10, $00 ; 0x109C\u20130x109F: 0x058, 0x134, 0x0CE, 0x0AB\n#_04CCF0: db $65, $66, $DB, $97 : db $11, $05 ; 0x10A0\u20130x10A3: 0x165, 0x166, 0x5DB, 0x097\n#_04CCF6: db $9C, $AE, $DB, $AE : db $56, $06 ; 0x10A4\u20130x10A7: 0x69C, 0x5AE, 0x6DB, 0x0AE\n#_04CCFC: db $AE, $C2, $C2, $AE : db $61, $16 ; 0x10A8\u20130x10AB: 0x1AE, 0x6C2, 0x6C2, 0x1AE\n#_04CD02: db $AE, $AE, $AE, $27 : db $66, $61 ; 0x10AC\u20130x10AF: 0x6AE, 0x6AE, 0x1AE, 0x627\n#_04CD08: db $DA, $CD, $7F, $71 : db $22, $71 ; 0x10B0\u20130x10B3: 0x2DA, 0x2CD, 0x17F, 0x771\n#_04CD0E: db $A9, $F7, $DF, $C7 : db $62, $22 ; 0x10B4\u20130x10B7: 0x2A9, 0x6F7, 0x2DF, 0x2C7\n#_04CD14: db $C7, $CD, $7F, $65 : db $22, $71 ; 0x10B8\u20130x10BB: 0x2C7, 0x2CD, 0x17F, 0x765\n#_04CD1A: db $58, $C6, $DA, $06 : db $12, $21 ; 0x10BC\u20130x10BF: 0x258, 0x1C6, 0x1DA, 0x206\n#_04CD20: db $66, $C6, $CD, $83 : db $10, $21 ; 0x10C0\u20130x10C3: 0x066, 0x1C6, 0x1CD, 0x283\n#_04CD26: db $C6, $C7, $A2, $57 : db $02, $62 ; 0x10C4\u20130x10C7: 0x2C6, 0x0C7, 0x2A2, 0x657\n#_04CD2C: db $C6, $D1, $D1, $D2 : db $00, $00 ; 0x10C8\u20130x10CB: 0x0C6, 0x0D1, 0x0D1, 0x0D2\n#_04CD32: db $C6, $A2, $C6, $87 : db $06, $03 ; 0x10CC\u20130x10CF: 0x6C6, 0x0A2, 0x3C6, 0x087\n#_04CD38: db $87, $C8, $35, $1C : db $30, $52 ; 0x10D0\u20130x10D3: 0x087, 0x3C8, 0x235, 0x51C\n#_04CD3E: db $42, $84, $F5, $CD : db $57, $22 ; 0x10D4\u20130x10D7: 0x742, 0x584, 0x2F5, 0x2CD\n#_04CD44: db $35, $86, $34, $20 : db $51, $05 ; 0x10D8\u20130x10DB: 0x135, 0x586, 0x534, 0x020\n#_04CD4A: db $53, $42, $35, $A3 : db $15, $50 ; 0x10DC\u20130x10DF: 0x553, 0x142, 0x035, 0x5A3\n#_04CD50: db $07, $E6, $8A, $C7 : db $72, $32 ; 0x10E0\u20130x10E3: 0x207, 0x7E6, 0x28A, 0x3C7\n#_04CD56: db $5C, $E4, $7C, $E6 : db $76, $72 ; 0x10E4\u20130x10E7: 0x65C, 0x7E4, 0x27C, 0x7E6\n#_04CD5C: db $89, $CD, $8A, $A0 : db $72, $73 ; 0x10E8\u20130x10EB: 0x289, 0x7CD, 0x38A, 0x7A0\n#_04CD62: db $F8, $E6, $E6, $8A : db $22, $27 ; 0x10EC\u20130x10EF: 0x2F8, 0x2E6, 0x7E6, 0x28A\n#_04CD68: db $E1, $E1, $E6, $06 : db $22, $23 ; 0x10F0\u20130x10F3: 0x2E1, 0x2E1, 0x3E6, 0x206\n#_04CD6E: db $A5, $E1, $97, $97 : db $32, $55 ; 0x10F4\u20130x10F7: 0x2A5, 0x3E1, 0x597, 0x597\n#_04CD74: db $E6, $E6, $E6, $06 : db $22, $21 ; 0x10F8\u20130x10FB: 0x2E6, 0x2E6, 0x1E6, 0x206\n#_04CD7A: db $66, $69, $9D, $69 : db $16, $56 ; 0x10FC\u20130x10FF: 0x666, 0x169, 0x69D, 0x569\n#_04CD80: db $97, $C6, $84, $C9 : db $50, $10 ; 0x1100\u20130x1103: 0x097, 0x5C6, 0x084, 0x1C9\n#_04CD86: db $D6, $D5, $D9, $D0 : db $20, $20 ; 0x1104\u20130x1107: 0x0D6, 0x2D5, 0x0D9, 0x2D0\n#_04CD8C: db $C7, $CD, $CD, $C7 : db $22, $22 ; 0x1108\u20130x110B: 0x2C7, 0x2CD, 0x2CD, 0x2C7\n#_04CD92: db $F6, $DF, $A2, $CF : db $22, $60 ; 0x110C\u20130x110F: 0x2F6, 0x2DF, 0x0A2, 0x6CF\n#_04CD98: db $D2, $CD, $C7, $CD : db $02, $22 ; 0x1110\u20130x1113: 0x2D2, 0x0CD, 0x2C7, 0x2CD\n#_04CD9E: db $C6, $A2, $D2, $C7 : db $26, $22 ; 0x1114\u20130x1117: 0x6C6, 0x2A2, 0x2D2, 0x2C7\n#_04CDA4: db $4F, $63, $05, $E1 : db $71, $32 ; 0x1118\u20130x111B: 0x14F, 0x763, 0x205, 0x3E1\n#_04CDAA: db $06, $63, $07, $E6 : db $31, $32 ; 0x111C\u20130x111F: 0x106, 0x363, 0x207, 0x3E6\n#_04CDB0: db $FD, $6A, $8F, $8D : db $26, $77 ; 0x1120\u20130x1123: 0x6FD, 0x26A, 0x78F, 0x78D\n#_04CDB6: db $E6, $E1, $E1, $E2 : db $22, $22 ; 0x1124\u20130x1127: 0x2E6, 0x2E1, 0x2E1, 0x2E2\n#_04CDBC: db $90, $F4, $E6, $2A : db $72, $27 ; 0x1128\u20130x112B: 0x290, 0x7F4, 0x7E6, 0x22A\n#_04CDC2: db $8D, $E6, $E6, $AB : db $72, $20 ; 0x112C\u20130x112F: 0x28D, 0x7E6, 0x0E6, 0x2AB\n#_04CDC8: db $71, $AB, $9E, $9D : db $10, $77 ; 0x1130\u20130x1133: 0x071, 0x1AB, 0x79E, 0x79D\n#_04CDCE: db $9F, $A1, $97, $A4 : db $77, $77 ; 0x1134\u20130x1137: 0x79F, 0x7A1, 0x797, 0x7A4\n#_04CDD4: db $A6, $A5, $A7, $B0 : db $77, $77 ; 0x1138\u20130x113B: 0x7A6, 0x7A5, 0x7A7, 0x7B0\n#_04CDDA: db $AF, $B1, $AD, $AD : db $77, $77 ; 0x113C\u20130x113F: 0x7AF, 0x7B1, 0x7AD, 0x7AD\n#_04CDE0: db $B4, $B6, $B5, $A1 : db $77, $77 ; 0x1140\u20130x1143: 0x7B4, 0x7B6, 0x7B5, 0x7A1\n#_04CDE6: db $BF, $AD, $AF, $C2 : db $77, $77 ; 0x1144\u20130x1147: 0x7BF, 0x7AD, 0x7AF, 0x7C2\n#_04CDEC: db $C3, $C3, $AD, $C2 : db $77, $77 ; 0x1148\u20130x114B: 0x7C3, 0x7C3, 0x7AD, 0x7C2\n#_04CDF2: db $C3, $A0, $A2, $AD : db $77, $77 ; 0x114C\u20130x114F: 0x7C3, 0x7A0, 0x7A2, 0x7AD\n#_04CDF8: db $C5, $C6, $C6, $C6 : db $77, $77 ; 0x1150\u20130x1153: 0x7C5, 0x7C6, 0x7C6, 0x7C6\n#_04CDFE: db $CA, $CA, $B2, $AD : db $77, $77 ; 0x1154\u20130x1157: 0x7CA, 0x7CA, 0x7B2, 0x7AD\n#_04CE04: db $D2, $D3, $D4, $D6 : db $77, $77 ; 0x1158\u20130x115B: 0x7D2, 0x7D3, 0x7D4, 0x7D6\n#_04CE0A: db $D8, $D0, $D0, $DB : db $77, $77 ; 0x115C\u20130x115F: 0x7D8, 0x7D0, 0x7D0, 0x7DB\n#_04CE10: db $D6, $A7, $C0, $E8 : db $77, $77 ; 0x1160\u20130x1163: 0x7D6, 0x7A7, 0x7C0, 0x7E8\n#_04CE16: db $EA, $EC, $EE, $EF : db $77, $77 ; 0x1164\u20130x1167: 0x7EA, 0x7EC, 0x7EE, 0x7EF\n#_04CE1C: db $97, $D8, $97, $A5 : db $77, $77 ; 0x1168\u20130x116B: 0x797, 0x7D8, 0x797, 0x7A5\n#_04CE22: db $A7, $97, $C5, $FC : db $77, $77 ; 0x116C\u20130x116F: 0x7A7, 0x797, 0x7C5, 0x7FC\n#_04CE28: db $FE, $00, $0F, $A3 : db $78, $27 ; 0x1170\u20130x1173: 0x8FE, 0x700, 0x70F, 0x2A3\n#_04CE2E: db $BE, $97, $B5, $9D : db $77, $77 ; 0x1174\u20130x1177: 0x7BE, 0x797, 0x7B5, 0x79D\n#_04CE34: db $D5, $AD, $C5, $C6 : db $77, $77 ; 0x1178\u20130x117B: 0x7D5, 0x7AD, 0x7C5, 0x7C6\n#_04CE3A: db $09, $07, $0F, $C2 : db $88, $27 ; 0x117C\u20130x117F: 0x809, 0x807, 0x70F, 0x2C2\n#_04CE40: db $C6, $F8, $AD, $DB : db $77, $77 ; 0x1180\u20130x1183: 0x7C6, 0x7F8, 0x7AD, 0x7DB\n#_04CE46: db $AF, $F0, $C5, $DA : db $77, $70 ; 0x1184\u20130x1187: 0x7AF, 0x7F0, 0x0C5, 0x7DA\n#_04CE4C: db $C6, $0D, $F3, $C6 : db $78, $77 ; 0x1188\u20130x118B: 0x8C6, 0x70D, 0x7F3, 0x7C6\n#_04CE52: db $10, $12, $D5, $C6 : db $88, $77 ; 0x118C\u20130x118F: 0x810, 0x812, 0x7D5, 0x7C6\n#_04CE58: db $14, $D0, $C5, $C6 : db $87, $77 ; 0x1190\u20130x1193: 0x714, 0x8D0, 0x7C5, 0x7C6\n#_04CE5E: db $B3, $9E, $B2, $D7 : db $77, $77 ; 0x1194\u20130x1197: 0x7B3, 0x79E, 0x7B2, 0x7D7\n#_04CE64: db $D9, $AD, $D6, $AD : db $77, $77 ; 0x1198\u20130x119B: 0x7D9, 0x7AD, 0x7D6, 0x7AD\n#_04CE6A: db $C1, $C6, $D7, $D9 : db $77, $77 ; 0x119C\u20130x119F: 0x7C1, 0x7C6, 0x7D7, 0x7D9\n#_04CE70: db $A8, $E2, $A6, $97 : db $77, $77 ; 0x11A0\u20130x11A3: 0x7A8, 0x7E2, 0x7A6, 0x797\n#_04CE76: db $D1, $18, $F9, $B8 : db $78, $77 ; 0x11A4\u20130x11A7: 0x8D1, 0x718, 0x7F9, 0x7B8\n#_04CE7C: db $D4, $C5, $C8, $C3 : db $77, $77 ; 0x11A8\u20130x11AB: 0x7D4, 0x7C5, 0x7C8, 0x7C3\n#_04CE82: db $97, $97, $AF, $C6 : db $77, $77 ; 0x11AC\u20130x11AF: 0x797, 0x797, 0x7AF, 0x7C6\n#_04CE88: db $1E, $0F, $11, $C6 : db $88, $87 ; 0x11B0\u20130x11B3: 0x81E, 0x80F, 0x711, 0x8C6\n#_04CE8E: db $C8, $C4, $A6, $A7 : db $77, $77 ; 0x11B4\u20130x11B7: 0x7C8, 0x7C4, 0x7A6, 0x7A7\n#_04CE94: db $C6, $C5, $23, $F8 : db $77, $87 ; 0x11B8\u20130x11BB: 0x7C6, 0x7C5, 0x723, 0x8F8\n#_04CE9A: db $25, $27, $26, $B6 : db $88, $87 ; 0x11BC\u20130x11BF: 0x825, 0x827, 0x726, 0x8B6\n#_04CEA0: db $C4, $AD, $1A, $C6 : db $77, $87 ; 0x11C0\u20130x11C3: 0x7C4, 0x7AD, 0x71A, 0x8C6\n#_04CEA6: db $C6, $C6, $AF, $A7 : db $77, $77 ; 0x11C4\u20130x11C7: 0x7C6, 0x7C6, 0x7AF, 0x7A7\n#_04CEAC: db $32, $34, $33, $C6 : db $88, $87 ; 0x11C8\u20130x11CB: 0x832, 0x834, 0x733, 0x8C6\n#_04CEB2: db $36, $38, $37, $36 : db $88, $88 ; 0x11CC\u20130x11CF: 0x836, 0x838, 0x837, 0x836\n#_04CEB8: db $3B, $C7, $39, $9F : db $87, $80 ; 0x11D0\u20130x11D3: 0x73B, 0x8C7, 0x039, 0x89F\n#_04CEBE: db $A4, $C6, $C1, $B2 : db $07, $77 ; 0x11D4\u20130x11D7: 0x7A4, 0x0C6, 0x7C1, 0x7B2\n#_04CEC4: db $C6, $C7, $2E, $C6 : db $77, $87 ; 0x11D8\u20130x11DB: 0x7C6, 0x7C7, 0x72E, 0x8C6\n#_04CECA: db $C6, $3F, $C6, $40 : db $78, $78 ; 0x11DC\u20130x11DF: 0x8C6, 0x73F, 0x8C6, 0x740\n#_04CED0: db $24, $A3, $A5, $C6 : db $87, $77 ; 0x11E0\u20130x11E3: 0x724, 0x8A3, 0x7A5, 0x7C6\n#_04CED6: db $C6, $C6, $C6, $40 : db $77, $78 ; 0x11E4\u20130x11E7: 0x7C6, 0x7C6, 0x8C6, 0x740\n#_04CEDC: db $24, $41, $45, $D4 : db $88, $87 ; 0x11E8\u20130x11EB: 0x824, 0x841, 0x745, 0x8D4\n#_04CEE2: db $C1, $46, $B5, $F3 : db $78, $77 ; 0x11EC\u20130x11EF: 0x8C1, 0x746, 0x7B5, 0x7F3\n#_04CEE8: db $C6, $0D, $D0, $DA : db $78, $77 ; 0x11F0\u20130x11F3: 0x8C6, 0x70D, 0x7D0, 0x7DA\n#_04CEEE: db $C1, $A3, $46, $F3 : db $77, $87 ; 0x11F4\u20130x11F7: 0x7C1, 0x7A3, 0x746, 0x8F3\n#_04CEF4: db $4A, $DA, $A7, $A6 : db $87, $77 ; 0x11F8\u20130x11FB: 0x74A, 0x8DA, 0x7A7, 0x7A6\n#_04CEFA: db $4B, $F1, $F8, $F3 : db $87, $77 ; 0x11FC\u20130x11FF: 0x74B, 0x8F1, 0x7F8, 0x7F3\n#_04CF00: db $42, $1E, $C4, $B3 : db $88, $77 ; 0x1200\u20130x1203: 0x842, 0x81E, 0x7C4, 0x7B3\n#_04CF06: db $C2, $C4, $B4, $C6 : db $77, $77 ; 0x1204\u20130x1207: 0x7C2, 0x7C4, 0x7B4, 0x7C6\n#_04CF0C: db $C6, $C6, $C1, $C2 : db $77, $77 ; 0x1208\u20130x120B: 0x7C6, 0x7C6, 0x7C1, 0x7C2\n#_04CF12: db $C6, $DA, $D6, $D7 : db $77, $77 ; 0x120C\u20130x120F: 0x7C6, 0x7DA, 0x7D6, 0x7D7\n#_04CF18: db $A3, $F3, $C6, $4E : db $77, $78 ; 0x1210\u20130x1213: 0x7A3, 0x7F3, 0x8C6, 0x74E\n#_04CF1E: db $D7, $B3, $9E, $C2 : db $77, $77 ; 0x1214\u20130x1217: 0x7D7, 0x7B3, 0x79E, 0x7C2\n#_04CF24: db $F3, $C6, $40, $03 : db $77, $88 ; 0x1218\u20130x121B: 0x7F3, 0x7C6, 0x840, 0x803\n#_04CF2A: db $B4, $D4, $46, $EF : db $77, $87 ; 0x121C\u20130x121F: 0x7B4, 0x7D4, 0x746, 0x8EF\n#_04CF30: db $DA, $C1, $EF, $4E : db $77, $78 ; 0x1220\u20130x1223: 0x7DA, 0x7C1, 0x8EF, 0x74E\n#_04CF36: db $A3, $F1, $C3, $0F : db $77, $78 ; 0x1224\u20130x1227: 0x7A3, 0x7F1, 0x8C3, 0x70F\n#_04CF3C: db $C6, $C6, $F8, $B4 : db $77, $77 ; 0x1228\u20130x122B: 0x7C6, 0x7C6, 0x7F8, 0x7B4\n#_04CF42: db $4F, $D5, $F2, $F3 : db $80, $00 ; 0x122C\u20130x122F: 0x04F, 0x8D5, 0x0F2, 0x0F3\n#_04CF48: db $F2, $0D, $34, $14 : db $01, $04 ; 0x1230\u20130x1233: 0x1F2, 0x00D, 0x434, 0x014\n#_04CF4E: db $34, $08, $00, $DA : db $01, $10 ; 0x1234\u20130x1237: 0x134, 0x008, 0x000, 0x1DA\n#_04CF54: db $57, $51, $17, $53 : db $88, $18 ; 0x1238\u20130x123B: 0x857, 0x851, 0x817, 0x153\n#_04CF5A: db $60, $55, $57, $5E : db $88, $88 ; 0x123C\u20130x123F: 0x860, 0x855, 0x857, 0x85E\n#_04CF60: db $17, $5F, $58, $53 : db $18, $88 ; 0x1240\u20130x1243: 0x817, 0x15F, 0x858, 0x853\n#_04CF66: db $61, $63, $5C, $64 : db $88, $88 ; 0x1244\u20130x1247: 0x861, 0x863, 0x85C, 0x864\n#_04CF6C: db $6A, $24, $1E, $52 : db $81, $18 ; 0x1248\u20130x124B: 0x16A, 0x824, 0x81E, 0x152\n#_04CF72: db $5E, $25, $28, $58 : db $81, $18 ; 0x124C\u20130x124F: 0x15E, 0x825, 0x828, 0x158\n#_04CF78: db $57, $57, $6C, $57 : db $88, $88 ; 0x1250\u20130x1253: 0x857, 0x857, 0x86C, 0x857\n#_04CF7E: db $6F, $73, $38, $38 : db $88, $11 ; 0x1254\u20130x1257: 0x86F, 0x873, 0x138, 0x138\n#_04CF84: db $38, $38, $6F, $7A : db $11, $88 ; 0x1258\u20130x125B: 0x138, 0x138, 0x86F, 0x87A\n#_04CF8A: db $7C, $7D, $7D, $6E : db $88, $88 ; 0x125C\u20130x125F: 0x87C, 0x87D, 0x87D, 0x86E\n#_04CF90: db $4A, $58, $53, $60 : db $18, $88 ; 0x1260\u20130x1263: 0x84A, 0x158, 0x853, 0x860\n#_04CF96: db $55, $57, $6E, $58 : db $88, $88 ; 0x1264\u20130x1267: 0x855, 0x857, 0x86E, 0x858\n#_04CF9C: db $C9, $C9, $53, $86 : db $00, $18 ; 0x1268\u20130x126B: 0x0C9, 0x0C9, 0x853, 0x186\n#_04CFA2: db $87, $80, $51, $52 : db $88, $88 ; 0x126C\u20130x126F: 0x887, 0x880, 0x851, 0x852\n#_04CFA8: db $58, $6B, $57, $6E : db $88, $88 ; 0x1270\u20130x1273: 0x858, 0x86B, 0x857, 0x86E\n#_04CFAE: db $8C, $8C, $86, $58 : db $88, $88 ; 0x1274\u20130x1277: 0x88C, 0x88C, 0x886, 0x858\n#_04CFB4: db $72, $52, $5E, $1D : db $88, $81 ; 0x1278\u20130x127B: 0x872, 0x852, 0x15E, 0x81D\n#_04CFBA: db $6B, $57, $8F, $50 : db $88, $88 ; 0x127C\u20130x127F: 0x86B, 0x857, 0x88F, 0x850\n#_04CFC0: db $50, $58, $1C, $91 : db $88, $18 ; 0x1280\u20130x1283: 0x850, 0x858, 0x81C, 0x191\n#_04CFC6: db $58, $52, $58, $2D : db $88, $81 ; 0x1284\u20130x1287: 0x858, 0x852, 0x158, 0x82D\n#_04CFCC: db $6C, $CC, $C8, $57 : db $10, $02 ; 0x1288\u20130x128B: 0x06C, 0x1CC, 0x2C8, 0x057\n#_04CFD2: db $AC, $C4, $A5, $A5 : db $01, $11 ; 0x128C\u20130x128F: 0x1AC, 0x0C4, 0x1A5, 0x1A5\n#_04CFD8: db $A5, $92, $41, $A9 : db $18, $10 ; 0x1290\u20130x1293: 0x8A5, 0x192, 0x041, 0x1A9\n#_04CFDE: db $FF, $A5, $A5, $34 : db $11, $10 ; 0x1294\u20130x1297: 0x1FF, 0x1A5, 0x0A5, 0x134\n#_04CFE4: db $AD, $85, $85, $51 : db $08, $88 ; 0x1298\u20130x129B: 0x8AD, 0x085, 0x885, 0x851\n#_04CFEA: db $24, $A5, $A0, $A0 : db $18, $88 ; 0x129C\u20130x129F: 0x824, 0x1A5, 0x8A0, 0x8A0\n#_04CFF0: db $A0, $99, $A0, $A0 : db $88, $88 ; 0x12A0\u20130x12A3: 0x8A0, 0x899, 0x8A0, 0x8A0\n#_04CFF6: db $A8, $A9, $A4, $71 : db $88, $88 ; 0x12A4\u20130x12A7: 0x8A8, 0x8A9, 0x8A4, 0x871\n#_04CFFC: db $89, $58, $95, $6A : db $88, $88 ; 0x12A8\u20130x12AB: 0x889, 0x858, 0x895, 0x86A\n#_04D002: db $1C, $B8, $B1, $A0 : db $18, $88 ; 0x12AC\u20130x12AF: 0x81C, 0x1B8, 0x8B1, 0x8A0\n#_04D008: db $BA, $BB, $BB, $A0 : db $88, $88 ; 0x12B0\u20130x12B3: 0x8BA, 0x8BB, 0x8BB, 0x8A0\n#_04D00E: db $9B, $BD, $34, $71 : db $88, $08 ; 0x12B4\u20130x12B7: 0x89B, 0x8BD, 0x834, 0x071\n#_04D014: db $57, $72, $38, $C9 : db $88, $18 ; 0x12B8\u20130x12BB: 0x857, 0x872, 0x838, 0x1C9\n#_04D01A: db $73, $CB, $CD, $CE : db $88, $88 ; 0x12BC\u20130x12BF: 0x873, 0x8CB, 0x8CD, 0x8CE\n#_04D020: db $CF, $D1, $CF, $B3 : db $88, $88 ; 0x12C0\u20130x12C3: 0x8CF, 0x8D1, 0x8CF, 0x8B3\n#_04D026: db $C6, $D4, $34, $5F : db $88, $08 ; 0x12C4\u20130x12C7: 0x8C6, 0x8D4, 0x834, 0x05F\n#_04D02C: db $58, $7D, $E3, $73 : db $88, $88 ; 0x12C8\u20130x12CB: 0x858, 0x87D, 0x8E3, 0x873\n#_04D032: db $E5, $D8, $E7, $E8 : db $88, $88 ; 0x12CC\u20130x12CF: 0x8E5, 0x8D8, 0x8E7, 0x8E8\n#_04D038: db $E9, $E8, $E8, $E0 : db $88, $88 ; 0x12D0\u20130x12D3: 0x8E9, 0x8E8, 0x8E8, 0x8E0\n#_04D03E: db $EC, $34, $58, $C3 : db $80, $81 ; 0x12D4\u20130x12D7: 0x0EC, 0x834, 0x158, 0x8C3\n#_04D044: db $34, $FB, $C5, $C2 : db $08, $18 ; 0x12D8\u20130x12DB: 0x834, 0x0FB, 0x8C5, 0x1C2\n#_04D04A: db $FC, $C2, $C5, $F7 : db $88, $18 ; 0x12DC\u20130x12DF: 0x8FC, 0x8C2, 0x8C5, 0x1F7\n#_04D050: db $FF, $00, $5E, $34 : db $81, $80 ; 0x12E0\u20130x12E3: 0x1FF, 0x800, 0x05E, 0x834\n#_04D056: db $06, $08, $08, $08 : db $99, $99 ; 0x12E4\u20130x12E7: 0x906, 0x908, 0x908, 0x908\n#_04D05C: db $09, $F9, $34, $EC : db $98, $01 ; 0x12E8\u20130x12EB: 0x809, 0x9F9, 0x134, 0x0EC\n#_04D062: db $C5, $A4, $AC, $70 : db $00, $01 ; 0x12EC\u20130x12EF: 0x0C5, 0x0A4, 0x1AC, 0x070\n#_04D068: db $C8, $34, $A5, $34 : db $00, $10 ; 0x12F0\u20130x12F3: 0x0C8, 0x034, 0x0A5, 0x134\n#_04D06E: db $36, $79, $34, $34 : db $01, $00 ; 0x12F4\u20130x12F7: 0x136, 0x079, 0x034, 0x034\n#_04D074: db $15, $EF, $93, $0E : db $21, $82 ; 0x12F8\u20130x12FB: 0x115, 0x2EF, 0x293, 0x80E\n#_04D07A: db $41, $A6, $85, $52 : db $10, $88 ; 0x12FC\u20130x12FF: 0x041, 0x1A6, 0x885, 0x852\n#_04D080: db $81, $67, $6D, $50 : db $88, $88 ; 0x1300\u20130x1303: 0x881, 0x867, 0x86D, 0x850\n#_04D086: db $5C, $5C, $5C, $5C : db $88, $88 ; 0x1304\u20130x1307: 0x85C, 0x85C, 0x85C, 0x85C\n#_04D08C: db $50, $50, $52, $58 : db $88, $88 ; 0x1308\u20130x130B: 0x850, 0x850, 0x852, 0x858\n#_04D092: db $58, $50, $55, $55 : db $88, $88 ; 0x130C\u20130x130F: 0x858, 0x850, 0x855, 0x855\n#_04D098: db $61, $67, $6C, $5C : db $88, $88 ; 0x1310\u20130x1313: 0x861, 0x867, 0x86C, 0x85C\n#_04D09E: db $63, $64, $50, $8B : db $88, $88 ; 0x1314\u20130x1317: 0x863, 0x864, 0x850, 0x88B\n#_04D0A4: db $52, $58, $10, $12 : db $88, $99 ; 0x1318\u20130x131B: 0x852, 0x858, 0x910, 0x912\n#_04D0AA: db $53, $50, $50, $63 : db $88, $88 ; 0x131C\u20130x131F: 0x853, 0x850, 0x850, 0x863\n#_04D0B0: db $50, $50, $8B, $1E : db $88, $81 ; 0x1320\u20130x1323: 0x850, 0x850, 0x18B, 0x81E\n#_04D0B6: db $58, $58, $66, $53 : db $88, $88 ; 0x1324\u20130x1327: 0x858, 0x858, 0x866, 0x853\n#_04D0BC: db $0F, $67, $63, $69 : db $98, $88 ; 0x1328\u20130x132B: 0x80F, 0x967, 0x863, 0x869\n#_04D0C2: db $51, $51, $52, $5F : db $88, $88 ; 0x132C\u20130x132F: 0x851, 0x851, 0x852, 0x85F\n#_04D0C8: db $8B, $50, $50, $65 : db $88, $88 ; 0x1330\u20130x1333: 0x88B, 0x850, 0x850, 0x865\n#_04D0CE: db $50, $50, $51, $1C : db $88, $81 ; 0x1334\u20130x1337: 0x850, 0x850, 0x151, 0x81C\n#_04D0D4: db $27, $88, $50, $2D : db $18, $81 ; 0x1338\u20130x133B: 0x827, 0x188, 0x150, 0x82D\n#_04D0DA: db $70, $75, $77, $77 : db $88, $88 ; 0x133C\u20130x133F: 0x870, 0x875, 0x877, 0x877\n#_04D0E0: db $76, $70, $20, $27 : db $88, $21 ; 0x1340\u20130x1343: 0x876, 0x870, 0x120, 0x227\n#_04D0E6: db $71, $50, $0A, $5D : db $88, $98 ; 0x1344\u20130x1347: 0x871, 0x850, 0x80A, 0x95D\n#_04D0EC: db $50, $51, $2D, $34 : db $88, $10 ; 0x1348\u20130x134B: 0x850, 0x851, 0x02D, 0x134\n#_04D0F2: db $85, $86, $0D, $58 : db $88, $98 ; 0x134C\u20130x134F: 0x885, 0x886, 0x80D, 0x958\n#_04D0F8: db $3F, $50, $69, $8B : db $18, $88 ; 0x1350\u20130x1353: 0x83F, 0x150, 0x869, 0x88B\n#_04D0FE: db $7E, $58, $58, $88 : db $88, $88 ; 0x1354\u20130x1357: 0x87E, 0x858, 0x858, 0x888\n#_04D104: db $50, $84, $58, $80 : db $88, $88 ; 0x1358\u20130x135B: 0x850, 0x884, 0x858, 0x880\n#_04D10A: db $50, $51, $50, $5C : db $88, $88 ; 0x135C\u20130x135F: 0x850, 0x851, 0x850, 0x85C\n#_04D110: db $64, $50, $6F, $80 : db $88, $88 ; 0x1360\u20130x1363: 0x864, 0x850, 0x86F, 0x880\n#_04D116: db $6E, $88, $67, $95 : db $88, $88 ; 0x1364\u20130x1367: 0x86E, 0x888, 0x867, 0x895\n#_04D11C: db $58, $C6, $C6, $C6 : db $80, $00 ; 0x1368\u20130x136B: 0x058, 0x8C6, 0x0C6, 0x0C6\n#_04D122: db $C6, $C6, $C6, $C6 : db $00, $00 ; 0x136C\u20130x136F: 0x0C6, 0x0C6, 0x0C6, 0x0C6\n#_04D128: db $C6, $C6, $87, $8A : db $00, $88 ; 0x1370\u20130x1373: 0x0C6, 0x0C6, 0x887, 0x88A\n#_04D12E: db $50, $51, $17, $17 : db $88, $11 ; 0x1374\u20130x1377: 0x850, 0x851, 0x117, 0x117\n#_04D134: db $5F, $10, $57, $6D : db $89, $88 ; 0x1378\u20130x137B: 0x95F, 0x810, 0x857, 0x86D\n#_04D13A: db $52, $51, $50, $8B : db $88, $88 ; 0x137C\u20130x137F: 0x852, 0x851, 0x850, 0x88B\n#_04D140: db $58, $51, $6A, $19 : db $88, $89 ; 0x1380\u20130x1383: 0x858, 0x851, 0x96A, 0x819\n#_04D146: db $28, $53, $5E, $6E : db $18, $88 ; 0x1384\u20130x1387: 0x828, 0x153, 0x85E, 0x86E\n#_04D14C: db $6F, $34, $6F, $58 : db $80, $88 ; 0x1388\u20130x138B: 0x06F, 0x834, 0x86F, 0x858\n#_04D152: db $52, $80, $0D, $7E : db $88, $98 ; 0x138C\u20130x138F: 0x852, 0x880, 0x80D, 0x97E\n#_04D158: db $85, $6F, $66, $89 : db $88, $88 ; 0x1390\u20130x1393: 0x885, 0x86F, 0x866, 0x889\n#_04D15E: db $C9, $53, $1C, $17 : db $01, $11 ; 0x1394\u20130x1397: 0x1C9, 0x053, 0x11C, 0x117\n#_04D164: db $17, $7F, $89, $6E : db $18, $88 ; 0x1398\u20130x139B: 0x817, 0x17F, 0x889, 0x86E\n#_04D16A: db $86, $86, $53, $57 : db $88, $88 ; 0x139C\u20130x139F: 0x886, 0x886, 0x853, 0x857\n#_04D170: db $1D, $17, $17, $1C : db $91, $11 ; 0x13A0\u20130x13A3: 0x11D, 0x917, 0x117, 0x11C\n#_04D176: db $34, $2B, $2C, $DC : db $02, $20 ; 0x13A4\u20130x13A7: 0x234, 0x02B, 0x02C, 0x2DC\n#_04D17C: db $30, $85, $53, $57 : db $28, $88 ; 0x13A8\u20130x13AB: 0x830, 0x285, 0x853, 0x857\n#_04D182: db $10, $12, $11, $1F : db $99, $99 ; 0x13AC\u20130x13AF: 0x910, 0x912, 0x911, 0x91F\n#_04D188: db $1F, $51, $53, $1F : db $98, $89 ; 0x13B0\u20130x13B3: 0x81F, 0x951, 0x953, 0x81F\n#_04D18E: db $20, $8B, $58, $17 : db $98, $81 ; 0x13B4\u20130x13B7: 0x820, 0x98B, 0x158, 0x817\n#_04D194: db $51, $5E, $50, $5F : db $88, $88 ; 0x13B8\u20130x13BB: 0x851, 0x85E, 0x850, 0x85F\n#_04D19A: db $53, $50, $95, $34 : db $88, $80 ; 0x13BC\u20130x13BF: 0x853, 0x850, 0x095, 0x834\n#_04D1A0: db $39, $34, $6B, $50 : db $20, $88 ; 0x13C0\u20130x13C3: 0x039, 0x234, 0x86B, 0x850\n#_04D1A6: db $24, $53, $00, $90 : db $98, $12 ; 0x13C4\u20130x13C7: 0x824, 0x953, 0x200, 0x190\n#_04D1AC: db $90, $F2, $34, $24 : db $21, $01 ; 0x13C8\u20130x13CB: 0x190, 0x2F2, 0x134, 0x024\n#_04D1B2: db $5B, $34, $89, $37 : db $10, $82 ; 0x13CC\u20130x13CF: 0x05B, 0x134, 0x289, 0x837\n#_04D1B8: db $28, $5B, $7F, $0C : db $91, $89 ; 0x13D0\u20130x13D3: 0x128, 0x95B, 0x97F, 0x80C\n#_04D1BE: db $34, $2C, $78, $58 : db $09, $18 ; 0x13D4\u20130x13D7: 0x934, 0x02C, 0x878, 0x158\n#_04D1C4: db $31, $33, $34, $36 : db $99, $99 ; 0x13D8\u20130x13DB: 0x931, 0x933, 0x934, 0x936\n#_04D1CA: db $78, $32, $34, $71 : db $19, $08 ; 0x13DC\u20130x13DF: 0x978, 0x132, 0x834, 0x071\n#_04D1D0: db $7E, $34, $34, $43 : db $80, $09 ; 0x13E0\u20130x13E3: 0x07E, 0x834, 0x934, 0x043\n#_04D1D6: db $45, $86, $34, $34 : db $91, $00 ; 0x13E4\u20130x13E7: 0x145, 0x986, 0x034, 0x034\n#_04D1DC: db $34, $34, $34, $89 : db $00, $08 ; 0x13E8\u20130x13EB: 0x034, 0x034, 0x834, 0x089\n#_04D1E2: db $71, $95, $58, $7E : db $88, $88 ; 0x13EC\u20130x13EF: 0x871, 0x895, 0x858, 0x87E\n#_04D1E8: db $71, $66, $55, $50 : db $88, $88 ; 0x13F0\u20130x13F3: 0x871, 0x866, 0x855, 0x850\n#_04D1EE: db $8A, $6E, $8A, $58 : db $88, $88 ; 0x13F4\u20130x13F7: 0x88A, 0x86E, 0x88A, 0x858\n#_04D1F4: db $0A, $0E, $50, $80 : db $99, $88 ; 0x13F8\u20130x13FB: 0x90A, 0x90E, 0x850, 0x880\n#_04D1FA: db $8B, $7F, $80, $82 : db $88, $88 ; 0x13FC\u20130x13FF: 0x88B, 0x87F, 0x880, 0x882\n#_04D200: db $83, $87, $50, $DB : db $88, $87 ; 0x1400\u20130x1403: 0x883, 0x887, 0x750, 0x8DB\n#_04D206: db $D6, $C6, $C6, $C6 : db $77, $77 ; 0x1404\u20130x1407: 0x7D6, 0x7C6, 0x7C6, 0x7C6\n#_04D20C: db $50, $97, $1A, $A8 : db $97, $87 ; 0x1408\u20130x140B: 0x750, 0x997, 0x71A, 0x8A8\n#_04D212: db $AD, $46, $46, $D0 : db $78, $87 ; 0x140C\u20130x140F: 0x8AD, 0x746, 0x746, 0x8D0\n#_04D218: db $C6, $38, $53, $32 : db $78, $98 ; 0x1410\u20130x1413: 0x8C6, 0x738, 0x853, 0x932\n#_04D21E: db $F9, $C6, $EE, $4E : db $77, $78 ; 0x1414\u20130x1417: 0x7F9, 0x7C6, 0x8EE, 0x74E\n#_04D224: db $4C, $4E, $4E, $C6 : db $88, $87 ; 0x1418\u20130x141B: 0x84C, 0x84E, 0x74E, 0x8C6\n#_04D22A: db $C6, $97, $D1, $C6 : db $77, $77 ; 0x141C\u20130x141F: 0x7C6, 0x797, 0x7D1, 0x7C6\n#_04D230: db $C2, $C3, $C6, $D0 : db $77, $77 ; 0x1420\u20130x1423: 0x7C2, 0x7C3, 0x7C6, 0x7D0\n#_04D236: db $D7, $C6, $CF, $D1 : db $77, $77 ; 0x1424\u20130x1427: 0x7D7, 0x7C6, 0x7CF, 0x7D1\n#_04D23C: db $4A, $EE, $F3, $A5 : db $87, $77 ; 0x1428\u20130x142B: 0x74A, 0x8EE, 0x7F3, 0x7A5\n#_04D242: db $D7, $45, $03, $97 : db $78, $87 ; 0x142C\u20130x142F: 0x8D7, 0x745, 0x703, 0x897\n#_04D248: db $D6, $D7, $40, $9E : db $77, $87 ; 0x1430\u20130x1433: 0x7D6, 0x7D7, 0x740, 0x89E\n#_04D24E: db $D7, $97, $D7, $EF : db $77, $77 ; 0x1434\u20130x1437: 0x7D7, 0x797, 0x7D7, 0x7EF\n#_04D254: db $97, $D7, $A6, $DB : db $77, $77 ; 0x1438\u20130x143B: 0x797, 0x7D7, 0x7A6, 0x7DB\n#_04D25A: db $C2, $D7, $C5, $0F : db $77, $78 ; 0x143C\u20130x143F: 0x7C2, 0x7D7, 0x8C5, 0x70F\n#_04D260: db $21, $C3, $C9, $4A : db $87, $78 ; 0x1440\u20130x1443: 0x721, 0x8C3, 0x8C9, 0x74A\n#_04D266: db $C6, $4E, $D7, $B3 : db $79, $77 ; 0x1444\u20130x1447: 0x9C6, 0x74E, 0x7D7, 0x7B3\n#_04D26C: db $D4, $B4, $25, $C5 : db $77, $87 ; 0x1448\u20130x144B: 0x7D4, 0x7B4, 0x725, 0x8C5\n#_04D272: db $C6, $C6, $43, $A9 : db $77, $87 ; 0x144C\u20130x144F: 0x7C6, 0x7C6, 0x743, 0x8A9\n#_04D278: db $DA, $D7, $C5, $CA : db $77, $77 ; 0x1450\u20130x1453: 0x7DA, 0x7D7, 0x7C5, 0x7CA\n#_04D27E: db $DA, $98, $FA, $AD : db $77, $77 ; 0x1454\u20130x1457: 0x7DA, 0x798, 0x7FA, 0x7AD\n#_04D284: db $A4, $A6, $A5, $D5 : db $77, $77 ; 0x1458\u20130x145B: 0x7A4, 0x7A6, 0x7A5, 0x7D5\n#_04D28A: db $C8, $C3, $C3, $C9 : db $77, $77 ; 0x145C\u20130x145F: 0x7C8, 0x7C3, 0x7C3, 0x7C9\n#_04D290: db $C2, $C3, $02, $1A : db $77, $88 ; 0x1460\u20130x1463: 0x7C2, 0x7C3, 0x802, 0x81A\n#_04D296: db $D0, $0D, $F3, $EE : db $78, $77 ; 0x1464\u20130x1467: 0x8D0, 0x70D, 0x7F3, 0x7EE\n#_04D29C: db $97, $F2, $F3, $5A : db $77, $79 ; 0x1468\u20130x146B: 0x797, 0x7F2, 0x9F3, 0x75A\n#_04D2A2: db $4A, $CA, $36, $CA : db $87, $07 ; 0x146C\u20130x146F: 0x74A, 0x8CA, 0x736, 0x0CA\n#_04D2A8: db $25, $41, $45, $D4 : db $88, $87 ; 0x1470\u20130x1473: 0x825, 0x841, 0x745, 0x8D4\n#_04D2AE: db $B5, $03, $B4, $25 : db $78, $78 ; 0x1474\u20130x1477: 0x8B5, 0x703, 0x8B4, 0x725\n#_04D2B4: db $41, $D5, $B3, $AF : db $87, $77 ; 0x1478\u20130x147B: 0x741, 0x8D5, 0x7B3, 0x7AF\n#_04D2BA: db $46, $C1, $E2, $C2 : db $87, $77 ; 0x147C\u20130x147F: 0x746, 0x8C1, 0x7E2, 0x7C2\n#_04D2C0: db $36, $DA, $2C, $C5 : db $07, $87 ; 0x1480\u20130x1483: 0x736, 0x0DA, 0x72C, 0x8C5\n#_04D2C6: db $3D, $C6, $2E, $0D : db $87, $88 ; 0x1484\u20130x1487: 0x73D, 0x8C6, 0x82E, 0x80D\n#_04D2CC: db $C5, $F8, $4D, $C2 : db $77, $97 ; 0x1488\u20130x148B: 0x7C5, 0x7F8, 0x74D, 0x9C2\n#_04D2D2: db $C3, $F3, $0F, $C6 : db $77, $27 ; 0x148C\u20130x148F: 0x7C3, 0x7F3, 0x70F, 0x2C6\n#_04D2D8: db $4E, $5B, $9F, $54 : db $89, $09 ; 0x1490\u20130x1493: 0x94E, 0x85B, 0x99F, 0x054\n#_04D2DE: db $DC, $1D, $4E, $BD : db $78, $87 ; 0x1494\u20130x1497: 0x8DC, 0x71D, 0x74E, 0x8BD\n#_04D2E4: db $4B, $99, $E5, $E7 : db $87, $77 ; 0x1498\u20130x149B: 0x74B, 0x899, 0x7E5, 0x7E7\n#_04D2EA: db $C9, $17, $59, $95 : db $72, $97 ; 0x149C\u20130x149F: 0x2C9, 0x717, 0x759, 0x995\n#_04D2F0: db $20, $17, $C6, $AE : db $88, $77 ; 0x14A0\u20130x14A3: 0x820, 0x817, 0x7C6, 0x7AE\n#_04D2F6: db $96, $17, $CF, $AA : db $78, $77 ; 0x14A4\u20130x14A7: 0x896, 0x717, 0x7CF, 0x7AA\n#_04D2FC: db $A9, $A8, $AA, $C6 : db $77, $77 ; 0x14A8\u20130x14AB: 0x7A9, 0x7A8, 0x7AA, 0x7C6\n#_04D302: db $C4, $C4, $BB, $AD : db $77, $77 ; 0x14AC\u20130x14AF: 0x7C4, 0x7C4, 0x7BB, 0x7AD\n#_04D308: db $5B, $9B, $B7, $F9 : db $97, $77 ; 0x14B0\u20130x14B3: 0x75B, 0x99B, 0x7B7, 0x7F9\n#_04D30E: db $49, $C5, $4E, $C5 : db $87, $87 ; 0x14B4\u20130x14B7: 0x749, 0x8C5, 0x74E, 0x8C5\n#_04D314: db $AE, $CB, $C2, $C3 : db $77, $77 ; 0x14B8\u20130x14BB: 0x7AE, 0x7CB, 0x7C2, 0x7C3\n#_04D31A: db $C6, $40, $03, $B4 : db $78, $87 ; 0x14BC\u20130x14BF: 0x8C6, 0x740, 0x703, 0x8B4\n#_04D320: db $AD, $C2, $F3, $CA : db $77, $77 ; 0x14C0\u20130x14C3: 0x7AD, 0x7C2, 0x7F3, 0x7CA\n#_04D326: db $DB, $BB, $C2, $13 : db $77, $78 ; 0x14C4\u20130x14C7: 0x7DB, 0x7BB, 0x8C2, 0x713\n#_04D32C: db $51, $C6, $C6, $F1 : db $97, $77 ; 0x14C8\u20130x14CB: 0x751, 0x9C6, 0x7C6, 0x7F1\n#_04D332: db $1F, $35, $A5, $C5 : db $88, $77 ; 0x14CC\u20130x14CF: 0x81F, 0x835, 0x7A5, 0x7C5\n#_04D338: db $C6, $36, $33, $63 : db $70, $89 ; 0x14D0\u20130x14D3: 0x0C6, 0x736, 0x933, 0x863\n#_04D33E: db $40, $C6, $AD, $DB : db $87, $77 ; 0x14D4\u20130x14D7: 0x740, 0x8C6, 0x7AD, 0x7DB\n#_04D344: db $C6, $A5, $B4, $45 : db $77, $78 ; 0x14D8\u20130x14DB: 0x7C6, 0x7A5, 0x8B4, 0x745\n#_04D34A: db $03, $B4, $45, $24 : db $87, $88 ; 0x14DC\u20130x14DF: 0x703, 0x8B4, 0x845, 0x824\n#_04D350: db $40, $51, $13, $34 : db $89, $00 ; 0x14E0\u20130x14E3: 0x940, 0x851, 0x013, 0x034\n#_04D356: db $64, $C4, $66, $66 : db $90, $99 ; 0x14E4\u20130x14E7: 0x064, 0x9C4, 0x966, 0x966\n#_04D35C: db $67, $CF, $69, $6A : db $90, $99 ; 0x14E8\u20130x14EB: 0x067, 0x9CF, 0x969, 0x96A\n#_04D362: db $DA, $6E, $66, $C8 : db $01, $90 ; 0x14EC\u20130x14EF: 0x1DA, 0x06E, 0x066, 0x9C8\n#_04D368: db $DD, $C8, $6A, $6F : db $00, $99 ; 0x14F0\u20130x14F3: 0x0DD, 0x0C8, 0x96A, 0x96F\n#_04D36E: db $66, $A9, $C8, $D3 : db $92, $00 ; 0x14F4\u20130x14F7: 0x266, 0x9A9, 0x0C8, 0x0D3\n#_04D374: db $61, $74, $3F, $72 : db $19, $29 ; 0x14F8\u20130x14FB: 0x961, 0x174, 0x93F, 0x272\n#_04D37A: db $C4, $CA, $D7, $D8 : db $00, $33 ; 0x14FC\u20130x14FF: 0x0C4, 0x0CA, 0x3D7, 0x3D8\n#_04D380: db $AC, $C4, $A2, $DF : db $20, $33 ; 0x1500\u20130x1503: 0x0AC, 0x2C4, 0x3A2, 0x3DF\n#_04D386: db $34, $76, $DB, $D4 : db $01, $00 ; 0x1504\u20130x1507: 0x134, 0x076, 0x0DB, 0x0D4\n#_04D38C: db $2A, $34, $37, $34 : db $30, $20 ; 0x1508\u20130x150B: 0x02A, 0x334, 0x037, 0x234\n#_04D392: db $32, $34, $C9, $24 : db $20, $07 ; 0x150C\u20130x150F: 0x032, 0x234, 0x7C9, 0x024\n#_04D398: db $C9, $8E, $4B, $85 : db $08, $18 ; 0x1510\u20130x1513: 0x8C9, 0x08E, 0x84B, 0x185\n#_04D39E: db $6C, $50, $92, $C9 : db $11, $80 ; 0x1514\u20130x1517: 0x16C, 0x150, 0x092, 0x8C9\n#_04D3A4: db $61, $AC, $77, $78 : db $10, $92 ; 0x1518\u20130x151B: 0x061, 0x1AC, 0x277, 0x978\n#_04D3AA: db $78, $78, $C9, $92 : db $22, $08 ; 0x151C\u20130x151F: 0x278, 0x278, 0x8C9, 0x092\n#_04D3B0: db $94, $92, $C9, $80 : db $88, $02 ; 0x1520\u20130x1523: 0x894, 0x892, 0x2C9, 0x080\n#_04D3B6: db $7D, $78, $20, $82 : db $92, $29 ; 0x1524\u20130x1527: 0x27D, 0x978, 0x920, 0x282\n#_04D3BC: db $83, $83, $78, $83 : db $92, $29 ; 0x1528\u20130x152B: 0x283, 0x983, 0x978, 0x283\n#_04D3C2: db $78, $79, $84, $7F : db $29, $21 ; 0x152C\u20130x152F: 0x978, 0x279, 0x184, 0x27F\n#_04D3C8: db $78, $78, $87, $89 : db $22, $22 ; 0x1530\u20130x1533: 0x278, 0x278, 0x287, 0x289\n#_04D3CE: db $7F, $7B, $86, $83 : db $19, $92 ; 0x1534\u20130x1537: 0x97F, 0x17B, 0x286, 0x983\n#_04D3D4: db $23, $89, $91, $92 : db $22, $29 ; 0x1538\u20130x153B: 0x223, 0x289, 0x991, 0x292\n#_04D3DA: db $93, $89, $81, $78 : db $92, $22 ; 0x153C\u20130x153F: 0x293, 0x989, 0x281, 0x278\n#_04D3E0: db $95, $83, $27, $78 : db $92, $12 ; 0x1540\u20130x1543: 0x295, 0x983, 0x227, 0x178\n#_04D3E6: db $84, $78, $78, $73 : db $92, $28 ; 0x1544\u20130x1547: 0x284, 0x978, 0x878, 0x273\n#_04D3EC: db $81, $78, $7D, $86 : db $92, $99 ; 0x1548\u20130x154B: 0x281, 0x978, 0x97D, 0x986\n#_04D3F2: db $50, $80, $88, $82 : db $12, $29 ; 0x154C\u20130x154F: 0x250, 0x180, 0x988, 0x282\n#_04D3F8: db $98, $78, $78, $86 : db $92, $22 ; 0x1550\u20130x1553: 0x298, 0x978, 0x278, 0x286\n#_04D3FE: db $7B, $78, $78, $8B : db $92, $29 ; 0x1554\u20130x1557: 0x27B, 0x978, 0x978, 0x28B\n#_04D404: db $79, $9D, $23, $7A : db $29, $29 ; 0x1558\u20130x155B: 0x979, 0x29D, 0x923, 0x27A\n#_04D40A: db $82, $78, $7E, $78 : db $92, $92 ; 0x155C\u20130x155F: 0x282, 0x978, 0x27E, 0x978\n#_04D410: db $79, $9A, $78, $9F : db $29, $29 ; 0x1560\u20130x1563: 0x979, 0x29A, 0x978, 0x29F\n#_04D416: db $83, $78, $A0, $76 : db $92, $99 ; 0x1564\u20130x1567: 0x283, 0x978, 0x9A0, 0x976\n#_04D41C: db $DC, $34, $6D, $94 : db $00, $18 ; 0x1568\u20130x156B: 0x0DC, 0x034, 0x86D, 0x194\n#_04D422: db $86, $87, $63, $7C : db $22, $19 ; 0x156C\u20130x156F: 0x286, 0x287, 0x963, 0x17C\n#_04D428: db $81, $86, $88, $65 : db $22, $22 ; 0x1570\u20130x1573: 0x281, 0x286, 0x288, 0x265\n#_04D42E: db $8C, $8D, $89, $79 : db $22, $22 ; 0x1574\u20130x1577: 0x28C, 0x28D, 0x289, 0x279\n#_04D434: db $83, $8C, $79, $7B : db $92, $22 ; 0x1578\u20130x157B: 0x283, 0x98C, 0x279, 0x27B\n#_04D43A: db $7F, $13, $13, $14 : db $23, $33 ; 0x157C\u20130x157F: 0x37F, 0x213, 0x313, 0x314\n#_04D440: db $1D, $FA, $CD, $E4 : db $32, $22 ; 0x1580\u20130x1583: 0x21D, 0x3FA, 0x2CD, 0x2E4\n#_04D446: db $D9, $D9, $D9, $CD : db $22, $22 ; 0x1584\u20130x1587: 0x2D9, 0x2D9, 0x2D9, 0x2CD\n#_04D44C: db $CD, $C6, $DA, $CD : db $22, $22 ; 0x1588\u20130x158B: 0x2CD, 0x2C6, 0x2DA, 0x2CD\n#_04D452: db $C4, $9D, $24, $25 : db $03, $33 ; 0x158C\u20130x158F: 0x3C4, 0x09D, 0x324, 0x325\n#_04D458: db $25, $25, $25, $FB : db $33, $32 ; 0x1590\u20130x1593: 0x325, 0x325, 0x225, 0x3FB\n#_04D45E: db $D8, $FB, $A3, $C4 : db $22, $90 ; 0x1594\u20130x1597: 0x2D8, 0x2FB, 0x0A3, 0x9C4\n#_04D464: db $F9, $9D, $CD, $C9 : db $23, $22 ; 0x1598\u20130x159B: 0x3F9, 0x29D, 0x2CD, 0x2C9\n#_04D46A: db $76, $34, $39, $34 : db $10, $20 ; 0x159C\u20130x159F: 0x076, 0x134, 0x039, 0x234\n#_04D470: db $C4, $CD, $C6, $D3 : db $02, $22 ; 0x15A0\u20130x15A3: 0x2C4, 0x0CD, 0x2C6, 0x2D3\n#_04D476: db $34, $36, $DF, $EB : db $00, $22 ; 0x15A4\u20130x15A7: 0x034, 0x036, 0x2DF, 0x2EB\n#_04D47C: db $9F, $01, $1C, $C6 : db $33, $10 ; 0x15A8\u20130x15AB: 0x39F, 0x301, 0x01C, 0x1C6\n#_04D482: db $25, $33, $33, $1C : db $12, $21 ; 0x15AC\u20130x15AF: 0x225, 0x133, 0x133, 0x21C\n#_04D488: db $24, $7C, $61, $62 : db $11, $11 ; 0x15B0\u20130x15B3: 0x124, 0x17C, 0x161, 0x162\n#_04D48E: db $66, $60, $D5, $66 : db $11, $01 ; 0x15B4\u20130x15B7: 0x166, 0x160, 0x1D5, 0x066\n#_04D494: db $CE, $9E, $A5, $A5 : db $00, $19 ; 0x15B8\u20130x15BB: 0x0CE, 0x09E, 0x9A5, 0x1A5\n#_04D49A: db $E4, $5C, $37, $71 : db $67, $20 ; 0x15BC\u20130x15BF: 0x7E4, 0x65C, 0x037, 0x271\n#_04D4A0: db $36, $36, $36, $36 : db $00, $00 ; 0x15C0\u20130x15C3: 0x036, 0x036, 0x036, 0x036\n#_04D4A6: db $13, $12, $36, $34 : db $00, $00 ; 0x15C4\u20130x15C7: 0x013, 0x012, 0x036, 0x034\n#_04D4AC: db $36, $34, $34, $34 : db $00, $00 ; 0x15C8\u20130x15CB: 0x036, 0x034, 0x034, 0x034\n#_04D4B2: db $34, $F2, $2D, $2F : db $00, $33 ; 0x15CC\u20130x15CF: 0x034, 0x0F2, 0x32D, 0x32F\n#_04D4B8: db $0A, $79, $FF, $6C : db $01, $11 ; 0x15D0\u20130x15D3: 0x10A, 0x079, 0x1FF, 0x16C\n#_04D4BE: db $6C, $6C, $6C, $4B : db $11, $11 ; 0x15D4\u20130x15D7: 0x16C, 0x16C, 0x16C, 0x14B\n#_04D4C4: db $EB, $C9, $A6, $0A : db $10, $90 ; 0x15D8\u20130x15DB: 0x0EB, 0x1C9, 0x0A6, 0x90A\n#_04D4CA: db $F7, $F9, $FA, $EC : db $33, $30 ; 0x15DC\u20130x15DF: 0x3F7, 0x3F9, 0x0FA, 0x3EC\n#_04D4D0: db $14, $FC, $FE, $FF : db $03, $33 ; 0x15E0\u20130x15E3: 0x314, 0x0FC, 0x3FE, 0x3FF\n#_04D4D6: db $F0, $0A, $0C, $0B : db $04, $44 ; 0x15E4\u20130x15E7: 0x4F0, 0x00A, 0x40C, 0x40B\n#_04D4DC: db $36, $14, $4C, $34 : db $04, $70 ; 0x15E8\u20130x15EB: 0x436, 0x014, 0x04C, 0x734\n#_04D4E2: db $FF, $FF, $0F, $34 : db $11, $20 ; 0x15EC\u20130x15EF: 0x1FF, 0x1FF, 0x00F, 0x234\n#_04D4E8: db $36, $17, $C4, $0A : db $02, $11 ; 0x15F0\u20130x15F3: 0x236, 0x017, 0x1C4, 0x10A\n#_04D4EE: db $34, $36, $DB, $DD : db $00, $55 ; 0x15F4\u20130x15F7: 0x034, 0x036, 0x5DB, 0x5DD\n#_04D4F4: db $DF, $34, $E8, $EA : db $50, $55 ; 0x15F8\u20130x15FB: 0x0DF, 0x534, 0x5E8, 0x5EA\n#_04D4FA: db $EB, $34, $34, $35 : db $50, $00 ; 0x15FC\u20130x15FF: 0x0EB, 0x534, 0x034, 0x035\n#_04D500: db $71, $71, $34, $80 : db $00, $01 ; 0x1600\u20130x1603: 0x071, 0x071, 0x134, 0x080\n#_04D506: db $98, $76, $39, $73 : db $31, $12 ; 0x1604\u20130x1607: 0x198, 0x376, 0x239, 0x173\n#_04D50C: db $CD, $86, $36, $C9 : db $20, $00 ; 0x1608\u20130x160B: 0x0CD, 0x286, 0x036, 0x0C9\n#_04D512: db $36, $34, $AC, $34 : db $00, $20 ; 0x160C\u20130x160F: 0x036, 0x034, 0x0AC, 0x234\n#_04D518: db $34, $C9, $34, $34 : db $00, $00 ; 0x1610\u20130x1613: 0x034, 0x0C9, 0x034, 0x034\n#_04D51E: db $36, $EF, $9F, $F3 : db $01, $01 ; 0x1614\u20130x1617: 0x136, 0x0EF, 0x19F, 0x0F3\n#_04D524: db $FF, $A1, $A3, $A5 : db $10, $01 ; 0x1618\u20130x161B: 0x0FF, 0x1A1, 0x1A3, 0x0A5\n#_04D52A: db $F6, $A5, $F4, $A5 : db $11, $10 ; 0x161C\u20130x161F: 0x1F6, 0x1A5, 0x0F4, 0x1A5\n#_04D530: db $A5, $78, $34, $26 : db $10, $00 ; 0x1620\u20130x1623: 0x0A5, 0x178, 0x034, 0x026\n#_04D536: db $79, $79, $27, $D0 : db $00, $12 ; 0x1624\u20130x1627: 0x079, 0x079, 0x227, 0x1D0\n#_04D53C: db $55, $6A, $75, $E7 : db $31, $11 ; 0x1628\u20130x162B: 0x155, 0x36A, 0x175, 0x1E7\n#_04D542: db $6A, $DF, $53, $A9 : db $10, $10 ; 0x162C\u20130x162F: 0x06A, 0x1DF, 0x053, 0x1A9\n#_04D548: db $34, $35, $A9, $69 : db $00, $03 ; 0x1630\u20130x1633: 0x034, 0x035, 0x3A9, 0x069\n#_04D54E: db $34, $76, $A9, $76 : db $03, $03 ; 0x1634\u20130x1637: 0x334, 0x076, 0x3A9, 0x076\n#_04D554: db $34, $34, $AA, $34 : db $00, $90 ; 0x1638\u20130x163B: 0x034, 0x034, 0x0AA, 0x934\n#_04D55A: db $AA, $34, $0F, $AD : db $90, $22 ; 0x163C\u20130x163F: 0x0AA, 0x934, 0x20F, 0x2AD\n#_04D560: db $6C, $34, $36, $B1 : db $10, $09 ; 0x1640\u20130x1643: 0x06C, 0x134, 0x936, 0x0B1\n#_04D566: db $B3, $B1, $34, $7E : db $99, $03 ; 0x1644\u20130x1647: 0x9B3, 0x9B1, 0x334, 0x07E\n#_04D56C: db $E3, $B3, $36, $AA : db $09, $09 ; 0x1648\u20130x164B: 0x9E3, 0x0B3, 0x936, 0x0AA\n#_04D572: db $B3, $AA, $34, $34 : db $99, $00 ; 0x164C\u20130x164F: 0x9B3, 0x9AA, 0x034, 0x034\n#_04D578: db $AD, $AD, $B1, $B3 : db $99, $99 ; 0x1650\u20130x1653: 0x9AD, 0x9AD, 0x9B1, 0x9B3\n#_04D57E: db $B1, $AC, $34, $ED : db $99, $02 ; 0x1654\u20130x1657: 0x9B1, 0x9AC, 0x234, 0x0ED\n#_04D584: db $E6, $6A, $39, $84 : db $21, $21 ; 0x1658\u20130x165B: 0x1E6, 0x26A, 0x139, 0x284\n#_04D58A: db $C9, $E1, $7E, $34 : db $00, $30 ; 0x165C\u20130x165F: 0x0C9, 0x0E1, 0x07E, 0x334\n#_04D590: db $34, $34, $36, $26 : db $00, $02 ; 0x1660\u20130x1663: 0x034, 0x034, 0x236, 0x026\n#_04D596: db $E1, $F2, $E1, $B0 : db $00, $09 ; 0x1664\u20130x1667: 0x0E1, 0x0F2, 0x9E1, 0x0B0\n#_04D59C: db $F6, $F6, $F6, $AA : db $55, $59 ; 0x1668\u20130x166B: 0x5F6, 0x5F6, 0x9F6, 0x5AA\n#_04D5A2: db $36, $E1, $E1, $F6 : db $00, $05 ; 0x166C\u20130x166F: 0x036, 0x0E1, 0x5E1, 0x0F6\n#_04D5A8: db $F6, $80, $7E, $28 : db $56, $32 ; 0x1670\u20130x1673: 0x6F6, 0x580, 0x27E, 0x328\n#_04D5AE: db $B3, $84, $34, $34 : db $93, $00 ; 0x1674\u20130x1677: 0x3B3, 0x984, 0x034, 0x034\n#_04D5B4: db $34, $F6, $AF, $AF : db $05, $99 ; 0x1678\u20130x167B: 0x534, 0x0F6, 0x9AF, 0x9AF\n#_04D5BA: db $F6, $F6, $F6, $34 : db $55, $50 ; 0x167C\u20130x167F: 0x5F6, 0x5F6, 0x0F6, 0x534\n#_04D5C0: db $DA, $F6, $34, $7B : db $05, $06 ; 0x1680\u20130x1683: 0x5DA, 0x0F6, 0x634, 0x07B\n#_04D5C6: db $B3, $34, $83, $36 : db $90, $30 ; 0x1684\u20130x1687: 0x0B3, 0x934, 0x083, 0x336\n#_04D5CC: db $B3, $B3, $7B, $F6 : db $99, $65 ; 0x1688\u20130x168B: 0x9B3, 0x9B3, 0x57B, 0x6F6\n#_04D5D2: db $26, $26, $B3, $26 : db $22, $92 ; 0x168C\u20130x168F: 0x226, 0x226, 0x2B3, 0x926\n#_04D5D8: db $86, $B3, $7E, $A8 : db $69, $33 ; 0x1690\u20130x1693: 0x986, 0x6B3, 0x37E, 0x3A8\n#_04D5DE: db $AD, $AD, $AE, $86 : db $99, $96 ; 0x1694\u20130x1697: 0x9AD, 0x9AD, 0x6AE, 0x986\n#_04D5E4: db $B3, $B3, $AB, $B3 : db $99, $99 ; 0x1698\u20130x169B: 0x9B3, 0x9B3, 0x9AB, 0x9B3\n#_04D5EA: db $B3, $34, $F5, $AD : db $90, $19 ; 0x169C\u20130x169F: 0x0B3, 0x934, 0x9F5, 0x1AD\n#_04D5F0: db $AD, $AD, $AE, $B2 : db $99, $99 ; 0x16A0\u20130x16A3: 0x9AD, 0x9AD, 0x9AE, 0x9B2\n#_04D5F6: db $82, $F7, $FA, $EC : db $33, $30 ; 0x16A4\u20130x16A7: 0x382, 0x3F7, 0x0FA, 0x3EC\n#_04D5FC: db $FC, $6F, $FF, $0A : db $36, $34 ; 0x16A8\u20130x16AB: 0x6FC, 0x36F, 0x4FF, 0x30A\n#_04D602: db $0C, $0B, $34, $34 : db $44, $00 ; 0x16AC\u20130x16AF: 0x40C, 0x40B, 0x034, 0x034\n#_04D608: db $C2, $13, $20, $CA : db $13, $52 ; 0x16B0\u20130x16B3: 0x3C2, 0x113, 0x220, 0x5CA\n#_04D60E: db $1D, $E6, $ED, $37 : db $32, $22 ; 0x16B4\u20130x16B7: 0x21D, 0x3E6, 0x2ED, 0x237\n#_04D614: db $B8, $C9, $E4, $20 : db $20, $25 ; 0x16B8\u20130x16BB: 0x0B8, 0x2C9, 0x5E4, 0x220\n#_04D61A: db $42, $E6, $CA, $1D : db $52, $03 ; 0x16BC\u20130x16BF: 0x242, 0x5E6, 0x3CA, 0x01D\n#_04D620: db $DC, $C7, $FD, $76 : db $20, $21 ; 0x16C0\u20130x16C3: 0x0DC, 0x2C7, 0x1FD, 0x276\n#_04D626: db $34, $1D, $B6, $26 : db $01, $91 ; 0x16C4\u20130x16C7: 0x134, 0x01D, 0x1B6, 0x926\n#_04D62C: db $FD, $FE, $71, $62 : db $22, $01 ; 0x16C8\u20130x16CB: 0x2FD, 0x2FE, 0x171, 0x062\n#_04D632: db $ED, $E6, $35, $FD : db $22, $22 ; 0x16CC\u20130x16CF: 0x2ED, 0x2E6, 0x235, 0x2FD\n#_04D638: db $E6, $FE, $5F, $75 : db $22, $11 ; 0x16D0\u20130x16D3: 0x2E6, 0x2FE, 0x15F, 0x175\n#_04D63E: db $3A, $E6, $35, $04 : db $22, $21 ; 0x16D4\u20130x16D7: 0x23A, 0x2E6, 0x135, 0x204\n#_04D644: db $1C, $DC, $D4, $1E : db $20, $03 ; 0x16D8\u20130x16DB: 0x01C, 0x2DC, 0x3D4, 0x01E\n#_04D64A: db $6A, $1B, $B9, $C4 : db $63, $90 ; 0x16DC\u20130x16DF: 0x36A, 0x61B, 0x0B9, 0x9C4\n#_04D650: db $04, $1C, $ED, $78 : db $12, $11 ; 0x16E0\u20130x16E3: 0x204, 0x11C, 0x1ED, 0x178\n#_04D656: db $E3, $E3, $C8, $28 : db $00, $07 ; 0x16E4\u20130x16E7: 0x0E3, 0x0E3, 0x7C8, 0x028\n#_04D65C: db $E6, $87, $C4, $ED : db $23, $01 ; 0x16E8\u20130x16EB: 0x3E6, 0x287, 0x1C4, 0x0ED\n#_04D662: db $10, $BA, $FA, $07 : db $29, $67 ; 0x16EC\u20130x16EF: 0x910, 0x2BA, 0x7FA, 0x607\n#_04D668: db $C4, $DB, $CA, $76 : db $00, $01 ; 0x16F0\u20130x16F3: 0x0C4, 0x0DB, 0x1CA, 0x076\n#_04D66E: db $AD, $E6, $EE, $37 : db $02, $22 ; 0x16F4\u20130x16F7: 0x2AD, 0x0E6, 0x2EE, 0x237\n#_04D674: db $29, $24, $35, $60 : db $31, $21 ; 0x16F8\u20130x16FB: 0x129, 0x324, 0x135, 0x260\n#_04D67A: db $BC, $31, $4F, $63 : db $97, $51 ; 0x16FC\u20130x16FF: 0x7BC, 0x931, 0x14F, 0x563\n#_04D680: db $BE, $C6, $68, $33 : db $90, $12 ; 0x1700\u20130x1703: 0x0BE, 0x9C6, 0x268, 0x133\n#_04D686: db $33, $33, $33, $09 : db $22, $21 ; 0x1704\u20130x1707: 0x233, 0x233, 0x133, 0x209\n#_04D68C: db $33, $6C, $98, $36 : db $71, $30 ; 0x1708\u20130x170B: 0x133, 0x76C, 0x098, 0x336\n#_04D692: db $6A, $6C, $93, $77 : db $33, $33 ; 0x170C\u20130x170F: 0x36A, 0x36C, 0x393, 0x377\n#_04D698: db $79, $98, $BF, $38 : db $30, $93 ; 0x1710\u20130x1713: 0x079, 0x398, 0x3BF, 0x938\n#_04D69E: db $F6, $03, $C3, $06 : db $34, $94 ; 0x1714\u20130x1717: 0x4F6, 0x303, 0x4C3, 0x906\n#_04D6A4: db $C5, $C5, $C6, $C3 : db $99, $95 ; 0x1718\u20130x171B: 0x9C5, 0x9C5, 0x5C6, 0x9C3\n#_04D6AA: db $C8, $C8, $C9, $CA : db $99, $93 ; 0x171C\u20130x171F: 0x9C8, 0x9C8, 0x3C9, 0x9CA\n#_04D6B0: db $35, $CA, $CA, $CA : db $03, $33 ; 0x1720\u20130x1723: 0x335, 0x0CA, 0x3CA, 0x3CA\n#_04D6B6: db $CF, $D3, $34, $D4 : db $99, $09 ; 0x1724\u20130x1727: 0x9CF, 0x9D3, 0x934, 0x0D4\n#_04D6BC: db $D6, $1C, $1C, $DD : db $94, $49 ; 0x1728\u20130x172B: 0x4D6, 0x91C, 0x91C, 0x4DD\n#_04D6C2: db $DE, $DA, $DA, $DB : db $99, $99 ; 0x172C\u20130x172F: 0x9DE, 0x9DA, 0x9DA, 0x9DB\n#_04D6C8: db $F6, $DD, $DE, $E0 : db $39, $99 ; 0x1730\u20130x1733: 0x9F6, 0x3DD, 0x9DE, 0x9E0\n#_04D6CE: db $E0, $E2, $EA, $34 : db $99, $30 ; 0x1734\u20130x1737: 0x9E0, 0x9E2, 0x0EA, 0x334\n#_04D6D4: db $34, $CB, $2B, $C9 : db $03, $43 ; 0x1738\u20130x173B: 0x334, 0x0CB, 0x32B, 0x4C9\n#_04D6DA: db $E5, $E3, $E9, $D4 : db $99, $99 ; 0x173C\u20130x173F: 0x9E5, 0x9E3, 0x9E9, 0x9D4\n#_04D6E0: db $34, $6B, $0B, $0B : db $06, $11 ; 0x1740\u20130x1743: 0x634, 0x06B, 0x10B, 0x10B\n#_04D6E6: db $0B, $27, $34, $6E : db $11, $06 ; 0x1744\u20130x1747: 0x10B, 0x127, 0x634, 0x06E\n#_04D6EC: db $00, $27, $34, $36 : db $41, $30 ; 0x1748\u20130x174B: 0x100, 0x427, 0x034, 0x336\n#_04D6F2: db $27, $34, $27, $F6 : db $13, $15 ; 0x174C\u20130x174F: 0x327, 0x134, 0x527, 0x1F6\n#_04D6F8: db $6B, $36, $38, $34 : db $60, $30 ; 0x1750\u20130x1753: 0x06B, 0x636, 0x038, 0x334\n#_04D6FE: db $34, $0A, $0B, $AB : db $01, $12 ; 0x1754\u20130x1757: 0x134, 0x00A, 0x20B, 0x1AB\n#_04D704: db $EC, $EE, $F0, $F0 : db $99, $99 ; 0x1758\u20130x175B: 0x9EC, 0x9EE, 0x9F0, 0x9F0\n#_04D70A: db $ED, $EF, $F2, $F4 : db $99, $99 ; 0x175C\u20130x175F: 0x9ED, 0x9EF, 0x9F2, 0x9F4\n#_04D710: db $F6, $F4, $F8, $F9 : db $99, $99 ; 0x1760\u20130x1763: 0x9F6, 0x9F4, 0x9F8, 0x9F9\n#_04D716: db $FA, $F3, $F5, $F3 : db $99, $99 ; 0x1764\u20130x1767: 0x9FA, 0x9F3, 0x9F5, 0x9F3\n#_04D71C: db $F4, $F5, $FC, $F3 : db $99, $99 ; 0x1768\u20130x176B: 0x9F4, 0x9F5, 0x9FC, 0x9F3\n#_04D722: db $F6, $F4, $F9, $FA : db $99, $99 ; 0x176C\u20130x176F: 0x9F6, 0x9F4, 0x9F9, 0x9FA\n#_04D728: db $F4, $F8, $F5, $F8 : db $99, $99 ; 0x1770\u20130x1773: 0x9F4, 0x9F8, 0x9F5, 0x9F8\n#_04D72E: db $F3, $F5, $FC, $02 : db $99, $9A ; 0x1774\u20130x1777: 0x9F3, 0x9F5, 0xAFC, 0x902\n#_04D734: db $04, $06, $F3, $F4 : db $AA, $99 ; 0x1778\u20130x177B: 0xA04, 0xA06, 0x9F3, 0x9F4\n#_04D73A: db $F4, $F9, $02, $04 : db $99, $AA ; 0x177C\u20130x177F: 0x9F4, 0x9F9, 0xA02, 0xA04\n#_04D740: db $0B, $06, $F8, $F3 : db $AA, $99 ; 0x1780\u20130x1783: 0xA0B, 0xA06, 0x9F8, 0x9F3\n#_04D746: db $FB, $FE, $F7, $10 : db $99, $9A ; 0x1784\u20130x1787: 0x9FB, 0x9FE, 0xAF7, 0x910\n#_04D74C: db $FA, $F8, $C5, $FD : db $99, $59 ; 0x1788\u20130x178B: 0x9FA, 0x9F8, 0x9C5, 0x5FD\n#_04D752: db $F6, $F6, $F6, $F4 : db $99, $99 ; 0x178C\u20130x178F: 0x9F6, 0x9F6, 0x9F6, 0x9F4\n#_04D758: db $03, $16, $19, $04 : db $AA, $AA ; 0x1790\u20130x1793: 0xA03, 0xA16, 0xA19, 0xA04\n#_04D75E: db $14, $04, $F3, $03 : db $AA, $9A ; 0x1794\u20130x1797: 0xA14, 0xA04, 0xAF3, 0x903\n#_04D764: db $03, $19, $04, $04 : db $AA, $AA ; 0x1798\u20130x179B: 0xA03, 0xA19, 0xA04, 0xA04\n#_04D76A: db $14, $F8, $F9, $F9 : db $A9, $99 ; 0x179C\u20130x179F: 0x914, 0xAF8, 0x9F9, 0x9F9\n#_04D770: db $F6, $07, $F9, $F9 : db $9A, $99 ; 0x17A0\u20130x17A3: 0xAF6, 0x907, 0x9F9, 0x9F9\n#_04D776: db $F9, $F4, $03, $16 : db $99, $AA ; 0x17A4\u20130x17A7: 0x9F9, 0x9F4, 0xA03, 0xA16\n#_04D77C: db $06, $16, $16, $16 : db $AA, $AA ; 0x17A8\u20130x17AB: 0xA06, 0xA16, 0xA16, 0xA16\n#_04D782: db $18, $F4, $1C, $16 : db $A9, $AA ; 0x17AC\u20130x17AF: 0x918, 0xAF4, 0xA1C, 0xA16\n#_04D788: db $16, $22, $24, $16 : db $AA, $AA ; 0x17B0\u20130x17B3: 0xA16, 0xA22, 0xA24, 0xA16\n#_04D78E: db $F6, $0E, $F6, $FC : db $9A, $99 ; 0x17B4\u20130x17B7: 0xAF6, 0x90E, 0x9F6, 0x9FC\n#_04D794: db $FE, $FE, $F6, $FE : db $99, $99 ; 0x17B8\u20130x17BB: 0x9FE, 0x9FE, 0x9F6, 0x9FE\n#_04D79A: db $FE, $FE, $FF, $F0 : db $99, $99 ; 0x17BC\u20130x17BF: 0x9FE, 0x9FE, 0x9FF, 0x9F0\n#_04D7A0: db $F6, $F6, $1B, $F0 : db $99, $A9 ; 0x17C0\u20130x17C3: 0x9F6, 0x9F6, 0x91B, 0xAF0\n#_04D7A6: db $F0, $F0, $F0, $00 : db $99, $9A ; 0x17C4\u20130x17C7: 0x9F0, 0x9F0, 0xAF0, 0x900\n#_04D7AC: db $FE, $2C, $EC, $FC : db $9A, $99 ; 0x17C8\u20130x17CB: 0xAFE, 0x92C, 0x9EC, 0x9FC\n#_04D7B2: db $33, $2F, $FD, $2F : db $AA, $9A ; 0x17CC\u20130x17CF: 0xA33, 0xA2F, 0xAFD, 0x92F\n#_04D7B8: db $31, $F0, $2B, $2D : db $A9, $AA ; 0x17D0\u20130x17D3: 0x931, 0xAF0, 0xA2B, 0xA2D\n#_04D7BE: db $FC, $2F, $30, $12 : db $9A, $AA ; 0x17D4\u20130x17D7: 0xAFC, 0x92F, 0xA30, 0xA12\n#_04D7C4: db $30, $33, $F9, $2E : db $AA, $9A ; 0x17D8\u20130x17DB: 0xA30, 0xA33, 0xAF9, 0x92E\n#_04D7CA: db $2F, $30, $2E, $30 : db $AA, $AA ; 0x17DC\u20130x17DF: 0xA2F, 0xA30, 0xA2E, 0xA30\n#_04D7D0: db $03, $36, $FD, $2F : db $AA, $9A ; 0x17E0\u20130x17E3: 0xA03, 0xA36, 0xAFD, 0x92F\n#_04D7D6: db $F9, $2E, $30, $33 : db $9A, $AA ; 0x17E4\u20130x17E7: 0xAF9, 0x92E, 0xA30, 0xA33\n#_04D7DC: db $2E, $0A, $03, $36 : db $AA, $AA ; 0x17E8\u20130x17EB: 0xA2E, 0xA0A, 0xA03, 0xA36\n#_04D7E2: db $12, $FE, $0F, $FE : db $A9, $A9 ; 0x17EC\u20130x17EF: 0x912, 0xAFE, 0x90F, 0xAFE\n#_04D7E8: db $FE, $F6, $F6, $F6 : db $99, $99 ; 0x17F0\u20130x17F3: 0x9FE, 0x9F6, 0x9F6, 0x9F6\n#_04D7EE: db $F9, $07, $1B, $33 : db $9A, $AA ; 0x17F4\u20130x17F7: 0xAF9, 0x907, 0xA1B, 0xA33\n#_04D7F4: db $2E, $09, $08, $04 : db $AA, $AA ; 0x17F8\u20130x17FB: 0xA2E, 0xA09, 0xA08, 0xA04\n#_04D7FA: db $30, $F9, $09, $16 : db $A9, $AA ; 0x17FC\u20130x17FF: 0x930, 0xAF9, 0xA09, 0xA16\n#_04D800: db $04, $04, $F9, $F9 : db $AA, $99 ; 0x1800\u20130x1803: 0xA04, 0xA04, 0x9F9, 0x9F9\n#_04D806: db $F9, $F9, $04, $04 : db $99, $AA ; 0x1804\u20130x1807: 0x9F9, 0x9F9, 0xA04, 0xA04\n#_04D80C: db $04, $04, $33, $30 : db $AA, $AA ; 0x1808\u20130x180B: 0xA04, 0xA04, 0xA33, 0xA30\n#_04D812: db $F6, $F6, $FB, $FB : db $99, $99 ; 0x180C\u20130x180F: 0x9F6, 0x9F6, 0x9FB, 0x9FB\n#_04D818: db $F6, $F6, $2E, $FE : db $99, $A9 ; 0x1810\u20130x1813: 0x9F6, 0x9F6, 0x92E, 0xAFE\n#_04D81E: db $FE, $F0, $F0, $00 : db $99, $9A ; 0x1814\u20130x1817: 0x9FE, 0x9F0, 0xAF0, 0x900\n#_04D824: db $FE, $F0, $00, $FE : db $99, $A9 ; 0x1818\u20130x181B: 0x9FE, 0x9F0, 0x900, 0xAFE\n#_04D82A: db $FE, $35, $2F, $DA : db $9A, $A0 ; 0x181C\u20130x181F: 0xAFE, 0x935, 0x02F, 0xADA\n#_04D830: db $DA, $CE, $79, $34 : db $00, $10 ; 0x1820\u20130x1823: 0x0DA, 0x0CE, 0x079, 0x134\n#_04D836: db $79, $34, $FF, $71 : db $10, $10 ; 0x1824\u20130x1827: 0x079, 0x134, 0x0FF, 0x171\n#_04D83C: db $34, $D4, $A5, $AB : db $00, $10 ; 0x1828\u20130x182B: 0x034, 0x0D4, 0x0A5, 0x1AB\n#_04D842: db $38, $0E, $39, $A5 : db $A3, $A1 ; 0x182C\u20130x182F: 0x338, 0xA0E, 0x139, 0xAA5\n#_04D848: db $15, $34, $35, $A4 : db $20, $00 ; 0x1830\u20130x1833: 0x015, 0x234, 0x035, 0x0A4\n#_04D84E: db $3B, $34, $2D, $C9 : db $A0, $10 ; 0x1834\u20130x1837: 0x03B, 0xA34, 0x02D, 0x1C9\n#_04D854: db $A5, $3D, $3D, $3E : db $1A, $AA ; 0x1838\u20130x183B: 0xAA5, 0x13D, 0xA3D, 0xA3E\n#_04D85A: db $3C, $48, $48, $49 : db $AA, $AA ; 0x183C\u20130x183F: 0xA3C, 0xA48, 0xA48, 0xA49\n#_04D860: db $4A, $E6, $44, $46 : db $A2, $AA ; 0x1840\u20130x1843: 0x24A, 0xAE6, 0xA44, 0xA46\n#_04D866: db $4D, $4E, $4E, $53 : db $AA, $AA ; 0x1844\u20130x1847: 0xA4D, 0xA4E, 0xA4E, 0xA53\n#_04D86C: db $45, $55, $57, $4F : db $AA, $AA ; 0x1848\u20130x184B: 0xA45, 0xA55, 0xA57, 0xA4F\n#_04D872: db $58, $5A, $44, $63 : db $AA, $AA ; 0x184C\u20130x184F: 0xA58, 0xA5A, 0xA44, 0xA63\n#_04D878: db $64, $66, $67, $46 : db $AA, $AA ; 0x1850\u20130x1853: 0xA64, 0xA66, 0xA67, 0xA46\n#_04D87E: db $44, $54, $6C, $46 : db $AA, $AA ; 0x1854\u20130x1857: 0xA44, 0xA54, 0xA6C, 0xA46\n#_04D884: db $58, $5A, $ED, $4E : db $AA, $2A ; 0x1858\u20130x185B: 0xA58, 0xA5A, 0xAED, 0x24E\n#_04D88A: db $53, $54, $53, $63 : db $AA, $AA ; 0x185C\u20130x185F: 0xA53, 0xA54, 0xA53, 0xA63\n#_04D890: db $6C, $46, $44, $6E : db $AA, $AA ; 0x1860\u20130x1863: 0xA6C, 0xA46, 0xA44, 0xA6E\n#_04D896: db $6A, $63, $6F, $41 : db $AA, $AA ; 0x1864\u20130x1867: 0xA6A, 0xA63, 0xA6F, 0xA41\n#_04D89C: db $45, $6A, $59, $6E : db $AA, $AA ; 0x1868\u20130x186B: 0xA45, 0xA6A, 0xA59, 0xA6E\n#_04D8A2: db $6A, $59, $29, $E6 : db $AA, $32 ; 0x186C\u20130x186F: 0xA6A, 0xA59, 0x229, 0x3E6\n#_04D8A8: db $54, $53, $6A, $6E : db $AA, $AA ; 0x1870\u20130x1873: 0xA54, 0xA53, 0xA6A, 0xA6E\n#_04D8AE: db $45, $71, $6A, $46 : db $AA, $AA ; 0x1874\u20130x1877: 0xA45, 0xA71, 0xA6A, 0xA46\n#_04D8B4: db $44, $5B, $5F, $46 : db $AA, $AA ; 0x1878\u20130x187B: 0xA44, 0xA5B, 0xA5F, 0xA46\n#_04D8BA: db $68, $E6, $44, $6E : db $A2, $AA ; 0x187C\u20130x187F: 0x268, 0xAE6, 0xA44, 0xA6E\n#_04D8C0: db $6A, $6A, $6A, $46 : db $AA, $AA ; 0x1880\u20130x1883: 0xA6A, 0xA6A, 0xA6A, 0xA46\n#_04D8C6: db $44, $46, $4F, $45 : db $AA, $AA ; 0x1884\u20130x1887: 0xA44, 0xA46, 0xA4F, 0xA45\n#_04D8CC: db $6A, $45, $6A, $3F : db $AA, $AA ; 0x1888\u20130x188B: 0xA6A, 0xA45, 0xA6A, 0xA3F\n#_04D8D2: db $40, $44, $44, $6E : db $AA, $AA ; 0x188C\u20130x188F: 0xA40, 0xA44, 0xA44, 0xA6E\n#_04D8D8: db $45, $6A, $45, $45 : db $AA, $AA ; 0x1890\u20130x1893: 0xA45, 0xA6A, 0xA45, 0xA45\n#_04D8DE: db $5B, $5F, $E6, $E6 : db $AA, $22 ; 0x1894\u20130x1897: 0xA5B, 0xA5F, 0x2E6, 0x2E6\n#_04D8E4: db $70, $50, $52, $3F : db $AA, $AA ; 0x1898\u20130x189B: 0xA70, 0xA50, 0xA52, 0xA3F\n#_04D8EA: db $40, $5D, $40, $40 : db $AA, $AA ; 0x189C\u20130x189F: 0xA40, 0xA5D, 0xA40, 0xA40\n#_04D8F0: db $40, $41, $54, $EC : db $AA, $A2 ; 0x18A0\u20130x18A3: 0xA40, 0xA41, 0x254, 0xAEC\n#_04D8F6: db $60, $62, $E6, $E6 : db $AA, $22 ; 0x18A4\u20130x18A7: 0xA60, 0xA62, 0x2E6, 0x2E6\n#_04D8FC: db $EC, $E6, $47, $40 : db $22, $AA ; 0x18A8\u20130x18AB: 0x2EC, 0x2E6, 0xA47, 0xA40\n#_04D902: db $45, $E6, $78, $79 : db $A2, $AA ; 0x18AC\u20130x18AF: 0x245, 0xAE6, 0xA78, 0xA79\n#_04D908: db $79, $7A, $ED, $EC : db $AA, $22 ; 0x18B0\u20130x18B3: 0xA79, 0xA7A, 0x2ED, 0x2EC\n#_04D90E: db $45, $45, $7B, $7C : db $AA, $AA ; 0x18B4\u20130x18B7: 0xA45, 0xA45, 0xA7B, 0xA7C\n#_04D914: db $7D, $7F, $6D, $4C : db $AA, $AA ; 0x18B8\u20130x18BB: 0xA7D, 0xA7F, 0xA6D, 0xA4C\n#_04D91A: db $45, $48, $80, $81 : db $AA, $AA ; 0x18BC\u20130x18BF: 0xA45, 0xA48, 0xA80, 0xA81\n#_04D920: db $7C, $81, $84, $87 : db $AA, $A3 ; 0x18C0\u20130x18C3: 0xA7C, 0xA81, 0x384, 0xA87\n#_04D926: db $3E, $7C, $FE, $45 : db $AA, $2A ; 0x18C4\u20130x18C7: 0xA3E, 0xA7C, 0xAFE, 0x245\n#_04D92C: db $E6, $46, $86, $80 : db $2A, $AA ; 0x18C8\u20130x18CB: 0xAE6, 0x246, 0xA86, 0xA80\n#_04D932: db $88, $8A, $8C, $84 : db $AA, $AA ; 0x18CC\u20130x18CF: 0xA88, 0xA8A, 0xA8C, 0xA84\n#_04D938: db $87, $FE, $44, $46 : db $A2, $AA ; 0x18D0\u20130x18D3: 0x287, 0xAFE, 0xA44, 0xA46\n#_04D93E: db $93, $90, $8F, $96 : db $AA, $AA ; 0x18D4\u20130x18D7: 0xA93, 0xA90, 0xA8F, 0xA96\n#_04D944: db $8E, $90, $94, $FE : db $AA, $A2 ; 0x18D8\u20130x18DB: 0xA8E, 0xA90, 0x294, 0xAFE\n#_04D94A: db $5B, $40, $E6, $9F : db $AA, $2A ; 0x18DC\u20130x18DF: 0xA5B, 0xA40, 0xAE6, 0x29F\n#_04D950: db $9C, $A0, $9B, $A0 : db $AA, $AA ; 0x18E0\u20130x18E3: 0xA9C, 0xAA0, 0xA9B, 0xAA0\n#_04D956: db $9A, $9F, $FE, $46 : db $AA, $2A ; 0x18E4\u20130x18E7: 0xA9A, 0xA9F, 0xAFE, 0x246\n#_04D95C: db $E6, $A3, $A5, $A6 : db $2A, $AA ; 0x18E8\u20130x18EB: 0xAE6, 0x2A3, 0xAA5, 0xAA6\n#_04D962: db $A4, $A6, $A7, $A3 : db $AA, $AA ; 0x18EC\u20130x18EF: 0xAA4, 0xAA6, 0xAA7, 0xAA3\n#_04D968: db $FE, $55, $E6, $A3 : db $2A, $2A ; 0x18F0\u20130x18F3: 0xAFE, 0x255, 0xAE6, 0x2A3\n#_04D96E: db $A3, $A3, $A3, $A3 : db $AA, $AA ; 0x18F4\u20130x18F7: 0xAA3, 0xAA3, 0xAA3, 0xAA3\n#_04D974: db $A3, $45, $64, $45 : db $AA, $AA ; 0x18F8\u20130x18FB: 0xAA3, 0xA45, 0xA64, 0xA45\n#_04D97A: db $40, $5D, $40, $AC : db $AA, $AA ; 0x18FC\u20130x18FF: 0xA40, 0xA5D, 0xA40, 0xAAC\n#_04D980: db $51, $E6, $A3, $A3 : db $A2, $AA ; 0x1900\u20130x1903: 0x251, 0xAE6, 0xAA3, 0xAA3\n#_04D986: db $A3, $A3, $A3, $AC : db $AA, $AA ; 0x1904\u20130x1907: 0xAA3, 0xAA3, 0xAA3, 0xAAC\n#_04D98C: db $61, $E6, $4C, $A3 : db $A2, $AA ; 0x1908\u20130x190B: 0x261, 0xAE6, 0xA4C, 0xAA3\n#_04D992: db $A3, $A3, $AC, $40 : db $AA, $AA ; 0x190C\u20130x190F: 0xAA3, 0xAA3, 0xAAC, 0xA40\n#_04D998: db $40, $73, $4C, $5C : db $AA, $AA ; 0x1910\u20130x1913: 0xA40, 0xA73, 0xA4C, 0xA5C\n#_04D99E: db $5E, $AE, $E6, $A3 : db $AA, $2A ; 0x1914\u20130x1917: 0xA5E, 0xAAE, 0xAE6, 0x2A3\n#_04D9A4: db $5B, $40, $5F, $E6 : db $AA, $A2 ; 0x1918\u20130x191B: 0xA5B, 0xA40, 0x25F, 0xAE6\n#_04D9AA: db $A3, $FE, $A3, $A3 : db $A2, $AA ; 0x191C\u20130x191F: 0x2A3, 0xAFE, 0xAA3, 0xAA3\n#_04D9B0: db $77, $A3, $A3, $46 : db $AA, $AA ; 0x1920\u20130x1923: 0xA77, 0xAA3, 0xAA3, 0xA46\n#_04D9B6: db $AD, $44, $A3, $77 : db $AA, $AA ; 0x1924\u20130x1927: 0xAAD, 0xA44, 0xAA3, 0xA77\n#_04D9BC: db $6D, $E6, $A3, $E6 : db $A2, $A2 ; 0x1928\u20130x192B: 0x26D, 0xAE6, 0x2A3, 0xAE6\n#_04D9C2: db $46, $AD, $44, $E6 : db $AA, $A2 ; 0x192C\u20130x192F: 0xA46, 0xAAD, 0x244, 0xAE6\n#_04D9C8: db $FE, $4C, $40, $40 : db $2A, $AA ; 0x1930\u20130x1933: 0xAFE, 0x24C, 0xA40, 0xA40\n#_04D9CE: db $AE, $45, $E6, $E6 : db $AA, $22 ; 0x1934\u20130x1937: 0xAAE, 0xA45, 0x2E6, 0x2E6\n#_04D9D4: db $FE, $E6, $FE, $B1 : db $22, $2A ; 0x1938\u20130x193B: 0x2FE, 0x2E6, 0xAFE, 0x2B1\n#_04D9DA: db $34, $B4, $C0, $B6 : db $0A, $9A ; 0x193C\u20130x193F: 0xA34, 0x0B4, 0xAC0, 0x9B6\n#_04D9E0: db $B7, $BD, $B8, $F6 : db $AA, $A3 ; 0x1940\u20130x1943: 0xAB7, 0xABD, 0x3B8, 0xAF6\n#_04D9E6: db $C2, $C4, $0E, $C7 : db $AA, $4A ; 0x1944\u20130x1947: 0xAC2, 0xAC4, 0xA0E, 0x4C7\n#_04D9EC: db $34, $15, $34, $CA : db $04, $0A ; 0x1948\u20130x194B: 0x434, 0x015, 0xA34, 0x0CA\n#_04D9F2: db $34, $CB, $C3, $CF : db $0A, $5A ; 0x194C\u20130x194F: 0xA34, 0x0CB, 0xAC3, 0x5CF\n#_04D9F8: db $F0, $34, $34, $34 : db $00, $00 ; 0x1950\u20130x1953: 0x0F0, 0x034, 0x034, 0x034\n#_04D9FE: db $38, $38, $CA, $B2 : db $33, $AA ; 0x1954\u20130x1957: 0x338, 0x338, 0xACA, 0xAB2\n#_04DA04: db $B9, $EC, $FC, $FE : db $A0, $33 ; 0x1958\u20130x195B: 0x0B9, 0xAEC, 0x3FC, 0x3FE\n#_04DA0A: db $FF, $D3, $B7, $34 : db $3A, $A0 ; 0x195C\u20130x195F: 0xAFF, 0x3D3, 0x0B7, 0xA34\n#_04DA10: db $0A, $D1, $B2, $B9 : db $4A, $AA ; 0x1960\u20130x1963: 0xA0A, 0x4D1, 0xAB2, 0xAB9\n#_04DA16: db $FF, $34, $36, $36 : db $00, $00 ; 0x1964\u20130x1967: 0x0FF, 0x034, 0x036, 0x036\n#_04DA1C: db $D5, $34, $C6, $C6 : db $A0, $33 ; 0x1968\u20130x196B: 0x0D5, 0xA34, 0x3C6, 0x3C6\n#_04DA22: db $C6, $C6, $C6, $E3 : db $33, $39 ; 0x196C\u20130x196F: 0x3C6, 0x3C6, 0x9C6, 0x3E3\n#_04DA28: db $CA, $B1, $36, $B4 : db $9A, $0A ; 0x1970\u20130x1973: 0xACA, 0x9B1, 0xA36, 0x0B4\n#_04DA2E: db $65, $C9, $E7, $C0 : db $33, $39 ; 0x1974\u20130x1977: 0x365, 0x3C9, 0x9E7, 0x3C0\n#_04DA34: db $B8, $34, $2B, $34 : db $A0, $40 ; 0x1978\u20130x197B: 0x0B8, 0xA34, 0x02B, 0x434\n#_04DA3A: db $6F, $C9, $34, $D8 : db $33, $0A ; 0x197C\u20130x197F: 0x36F, 0x3C9, 0xA34, 0x0D8\n#_04DA40: db $DA, $34, $98, $9A : db $A0, $00 ; 0x1980\u20130x1983: 0x0DA, 0xA34, 0x098, 0x09A\n#_04DA46: db $C9, $BF, $C7, $34 : db $39, $30 ; 0x1984\u20130x1987: 0x9C9, 0x3BF, 0x0C7, 0x334\n#_04DA4C: db $35, $34, $34, $34 : db $00, $00 ; 0x1988\u20130x198B: 0x035, 0x034, 0x034, 0x034\n#_04DA52: db $E9, $B5, $DF, $E0 : db $3A, $AA ; 0x198C\u20130x198F: 0xAE9, 0x3B5, 0xADF, 0xAE0\n#_04DA58: db $F0, $E7, $0B, $34 : db $0A, $40 ; 0x1990\u20130x1993: 0xAF0, 0x0E7, 0x00B, 0x434\n#_04DA5E: db $14, $34, $34, $C9 : db $40, $00 ; 0x1994\u20130x1997: 0x014, 0x434, 0x034, 0x0C9\n#_04DA64: db $A3, $7C, $3B, $A9 : db $01, $20 ; 0x1998\u20130x199B: 0x1A3, 0x07C, 0x03B, 0x2A9\n#_04DA6A: db $3B, $34, $34, $34 : db $20, $33 ; 0x199C\u20130x199F: 0x03B, 0x234, 0x334, 0x334\n#_04DA70: db $02, $04, $14, $04 : db $AA, $AA ; 0x19A0\u20130x19A3: 0xA02, 0xA04, 0xA14, 0xA04\n#_04DA76: db $14, $04, $06, $06 : db $AA, $AA ; 0x19A4\u20130x19A7: 0xA14, 0xA04, 0xA06, 0xA06\n#_04DA7C: db $02, $14, $7E, $7E : db $AA, $33 ; 0x19A8\u20130x19AB: 0xA02, 0xA14, 0x37E, 0x37E\n#_04DA82: db $E9, $E9, $DA, $7E : db $AA, $03 ; 0x19AC\u20130x19AF: 0xAE9, 0xAE9, 0x3DA, 0x07E\n#_04DA88: db $38, $E1, $7E, $E9 : db $30, $3A ; 0x19B0\u20130x19B3: 0x038, 0x3E1, 0xA7E, 0x3E9\n#_04DA8E: db $F2, $7D, $C8, $93 : db $03, $03 ; 0x19B4\u20130x19B7: 0x3F2, 0x07D, 0x3C8, 0x093\n#_04DA94: db $EA, $9F, $36, $B6 : db $A0, $00 ; 0x19B8\u20130x19BB: 0x0EA, 0xA9F, 0x036, 0x0B6\n#_04DA9A: db $19, $03, $0C, $03 : db $AA, $AA ; 0x19BC\u20130x19BF: 0xA19, 0xA03, 0xA0C, 0xA03\n#_04DAA0: db $03, $03, $36, $19 : db $AA, $AA ; 0x19C0\u20130x19C3: 0xA03, 0xA03, 0xA36, 0xA19\n#_04DAA6: db $0C, $E9, $34, $34 : db $AA, $00 ; 0x19C4\u20130x19C7: 0xA0C, 0xAE9, 0x034, 0x034\n#_04DAAC: db $7E, $9D, $34, $7E : db $32, $03 ; 0x19C8\u20130x19CB: 0x27E, 0x39D, 0x334, 0x07E\n#_04DAB2: db $34, $0A, $34, $84 : db $01, $03 ; 0x19CC\u20130x19CF: 0x134, 0x00A, 0x334, 0x084\n#_04DAB8: db $0B, $EB, $50, $50 : db $1A, $11 ; 0x19D0\u20130x19D3: 0xA0B, 0x1EB, 0x150, 0x150\n#_04DABE: db $F2, $A0, $26, $0B : db $10, $11 ; 0x19D4\u20130x19D7: 0x0F2, 0x1A0, 0x126, 0x10B\n#_04DAC4: db $0B, $40, $C6, $EC : db $16, $0A ; 0x19D8\u20130x19DB: 0x60B, 0x140, 0xAC6, 0x0EC\n#_04DACA: db $C6, $E5, $1E, $C8 : db $01, $20 ; 0x19DC\u20130x19DF: 0x1C6, 0x0E5, 0x01E, 0x2C8\n#_04DAD0: db $C8, $3F, $04, $C6 : db $05, $30 ; 0x19E0\u20130x19E3: 0x5C8, 0x03F, 0x004, 0x3C6\n#_04DAD6: db $EE, $C6, $E9, $7F : db $A0, $11 ; 0x19E4\u20130x19E7: 0x0EE, 0xAC6, 0x1E9, 0x17F\n#_04DADC: db $C6, $C8, $6D, $E6 : db $00, $12 ; 0x19E8\u20130x19EB: 0x0C6, 0x0C8, 0x26D, 0x1E6\n#_04DAE2: db $1C, $A9, $C6, $C6 : db $10, $00 ; 0x19EC\u20130x19EF: 0x01C, 0x1A9, 0x0C6, 0x0C6\n#_04DAE8: db $D3, $37, $F1, $34 : db $02, $20 ; 0x19F0\u20130x19F3: 0x2D3, 0x037, 0x0F1, 0x234\n#_04DAEE: db $ED, $81, $7F, $D5 : db $A7, $70 ; 0x19F4\u20130x19F7: 0x7ED, 0xA81, 0x07F, 0x7D5\n#_04DAF4: db $85, $85, $CC, $C6 : db $33, $00 ; 0x19F8\u20130x19FB: 0x385, 0x385, 0x0CC, 0x0C6\n#_04DAFA: db $C7, $57, $76, $61 : db $02, $11 ; 0x19FC\u20130x19FF: 0x2C7, 0x057, 0x176, 0x161\n#_04DB00: db $A9, $A9, $C6, $C6 : db $00, $00 ; 0x1A00\u20130x1A03: 0x0A9, 0x0A9, 0x0C6, 0x0C6\n#_04DB06: db $D5, $CE, $EC, $0C : db $02, $A1 ; 0x1A04\u20130x1A07: 0x2D5, 0x0CE, 0x1EC, 0xA0C\n#_04DB0C: db $32, $C6, $36, $C6 : db $20, $00 ; 0x1A08\u20130x1A0B: 0x032, 0x2C6, 0x036, 0x0C6\n#_04DB12: db $E6, $8D, $F2, $F3 : db $2A, $AA ; 0x1A0C\u20130x1A0F: 0xAE6, 0x28D, 0xAF2, 0xAF3\n#_04DB18: db $8E, $8D, $42, $A3 : db $AA, $AA ; 0x1A10\u20130x1A13: 0xA8E, 0xA8D, 0xA42, 0xAA3\n#_04DB1E: db $A3, $42, $A3, $42 : db $AA, $AA ; 0x1A14\u20130x1A17: 0xAA3, 0xA42, 0xAA3, 0xA42\n#_04DB24: db $E6, $F8, $E6, $E6 : db $2A, $22 ; 0x1A18\u20130x1A1B: 0xAE6, 0x2F8, 0x2E6, 0x2E6\n#_04DB2A: db $43, $E6, $A3, $EC : db $A2, $A2 ; 0x1A1C\u20130x1A1F: 0x243, 0xAE6, 0x2A3, 0xAEC\n#_04DB30: db $77, $AD, $E6, $E6 : db $AA, $22 ; 0x1A20\u20130x1A23: 0xA77, 0xAAD, 0x2E6, 0x2E6\n#_04DB36: db $A3, $E6, $44, $5F : db $A2, $AA ; 0x1A24\u20130x1A27: 0x2A3, 0xAE6, 0xA44, 0xA5F\n#_04DB3C: db $E6, $EC, $A3, $E6 : db $22, $A2 ; 0x1A28\u20130x1A2B: 0x2E6, 0x2EC, 0x2A3, 0xAE6\n#_04DB42: db $77, $AD, $E6, $E6 : db $AA, $22 ; 0x1A2C\u20130x1A2F: 0xA77, 0xAAD, 0x2E6, 0x2E6\n#_04DB48: db $A3, $E6, $A3, $44 : db $A2, $AA ; 0x1A30\u20130x1A33: 0x2A3, 0xAE6, 0xAA3, 0xA44\n#_04DB4E: db $4D, $46, $42, $A3 : db $AA, $AA ; 0x1A34\u20130x1A37: 0xA4D, 0xA46, 0xA42, 0xAA3\n#_04DB54: db $A3, $42, $A3, $A3 : db $AA, $AA ; 0x1A38\u20130x1A3B: 0xAA3, 0xA42, 0xAA3, 0xAA3\n#_04DB5A: db $42, $EC, $A3, $44 : db $A2, $AA ; 0x1A3C\u20130x1A3F: 0x242, 0xAEC, 0xAA3, 0xA44\n#_04DB60: db $E6, $E6, $E6, $E6 : db $22, $22 ; 0x1A40\u20130x1A43: 0x2E6, 0x2E6, 0x2E6, 0x2E6\n#_04DB66: db $E6, $46, $54, $53 : db $2A, $AA ; 0x1A44\u20130x1A47: 0xAE6, 0x246, 0xA54, 0xA53\n#_04DB6C: db $20, $F9, $F9, $F9 : db $26, $66 ; 0x1A48\u20130x1A4B: 0x620, 0x2F9, 0x6F9, 0x6F9\n#_04DB72: db $E6, $6A, $A5, $A5 : db $21, $00 ; 0x1A4C\u20130x1A4F: 0x1E6, 0x26A, 0x0A5, 0x0A5\n#_04DB78: db $A5, $44, $46, $42 : db $0A, $AA ; 0x1A50\u20130x1A53: 0xAA5, 0x044, 0xA46, 0xA42\n#_04DB7E: db $AD, $42, $E6, $53 : db $AA, $2A ; 0x1A54\u20130x1A57: 0xAAD, 0xA42, 0xAE6, 0x253\n#_04DB84: db $A5, $58, $A3, $A3 : db $11, $AA ; 0x1A58\u20130x1A5B: 0x1A5, 0x158, 0xAA3, 0xAA3\n#_04DB8A: db $34, $44, $42, $AD : db $0A, $AA ; 0x1A5C\u20130x1A5F: 0xA34, 0x044, 0xA42, 0xAAD\n#_04DB90: db $42, $E6, $A4, $25 : db $A2, $02 ; 0x1A60\u20130x1A63: 0x242, 0xAE6, 0x2A4, 0x025\n#_04DB96: db $A3, $AD, $AD, $34 : db $AA, $A0 ; 0x1A64\u20130x1A67: 0xAA3, 0xAAD, 0x0AD, 0xA34\n#_04DB9C: db $3F, $E6, $79, $5B : db $A2, $11 ; 0x1A68\u20130x1A6B: 0x23F, 0xAE6, 0x179, 0x15B\n#_04DBA2: db $AD, $A3, $34, $F9 : db $AA, $06 ; 0x1A6C\u20130x1A6F: 0xAAD, 0xAA3, 0x634, 0x0F9\n#_04DBA8: db $F9, $F9, $F9, $F9 : db $66, $66 ; 0x1A70\u20130x1A73: 0x6F9, 0x6F9, 0x6F9, 0x6F9\n#_04DBAE: db $F9, $F9, $F9, $79 : db $66, $61 ; 0x1A74\u20130x1A77: 0x6F9, 0x6F9, 0x1F9, 0x679\n#_04DBB4: db $A3, $A3, $A3, $A5 : db $AA, $A0 ; 0x1A78\u20130x1A7B: 0xAA3, 0xAA3, 0x0A3, 0xAA5\n#_04DBBA: db $AC, $77, $34, $18 : db $0A, $02 ; 0x1A7C\u20130x1A7F: 0xAAC, 0x077, 0x234, 0x018\n#_04DBC0: db $25, $65, $25, $06 : db $21, $21 ; 0x1A80\u20130x1A83: 0x125, 0x265, 0x125, 0x206\n#_04DBC6: db $E6, $3F, $41, $45 : db $2A, $AA ; 0x1A84\u20130x1A87: 0xAE6, 0x23F, 0xA41, 0xA45\n#_04DBCC: db $AC, $40, $E6, $FA : db $AA, $2A ; 0x1A88\u20130x1A8B: 0xAAC, 0xA40, 0xAE6, 0x2FA\n#_04DBD2: db $C5, $E6, $07, $A5 : db $02, $71 ; 0x1A8C\u20130x1A8F: 0x2C5, 0x0E6, 0x107, 0x7A5\n#_04DBD8: db $A5, $D5, $6A, $45 : db $10, $AA ; 0x1A90\u20130x1A93: 0x0A5, 0x1D5, 0xA6A, 0xA45\n#_04DBDE: db $71, $77, $3F, $F9 : db $AA, $A6 ; 0x1A94\u20130x1A97: 0xA71, 0xA77, 0x63F, 0xAF9\n#_04DBE4: db $A5, $AD, $17, $E4 : db $10, $26 ; 0x1A98\u20130x1A9B: 0x0A5, 0x1AD, 0x617, 0x2E4\n#_04DBEA: db $D5, $71, $45, $45 : db $0A, $AA ; 0x1A9C\u20130x1A9F: 0xAD5, 0x071, 0xA45, 0xA45\n#_04DBF0: db $59, $45, $F8, $F9 : db $AA, $66 ; 0x1AA0\u20130x1AA3: 0xA59, 0xA45, 0x6F8, 0x6F9\n#_04DBF6: db $A3, $E8, $02, $E3 : db $06, $26 ; 0x1AA4\u20130x1AA7: 0x6A3, 0x0E8, 0x602, 0x2E3\n#_04DBFC: db $44, $AC, $46, $A3 : db $AA, $AA ; 0x1AA8\u20130x1AAB: 0xA44, 0xAAC, 0xA46, 0xAA3\n#_04DC02: db $A3, $A5, $79, $10 : db $A1, $12 ; 0x1AAC\u20130x1AAF: 0x1A3, 0xAA5, 0x279, 0x110\n#_04DC08: db $14, $47, $AC, $A5 : db $7A, $A1 ; 0x1AB0\u20130x1AB3: 0xA14, 0x747, 0x1AC, 0xAA5\n#_04DC0E: db $A5, $AC, $35, $7C : db $10, $07 ; 0x1AB4\u20130x1AB7: 0x0A5, 0x1AC, 0x735, 0x07C\n#_04DC14: db $A5, $48, $FB, $A5 : db $16, $11 ; 0x1AB8\u20130x1ABB: 0x6A5, 0x148, 0x1FB, 0x1A5\n#_04DC1A: db $AC, $AC, $66, $A1 : db $A0, $30 ; 0x1ABC\u20130x1ABF: 0x0AC, 0xAAC, 0x066, 0x3A1\n#_04DC20: db $34, $A5, $AC, $A5 : db $01, $A1 ; 0x1AC0\u20130x1AC3: 0x134, 0x0A5, 0x1AC, 0xAA5\n#_04DC26: db $A5, $A5, $E4, $7C : db $11, $67 ; 0x1AC4\u20130x1AC7: 0x1A5, 0x1A5, 0x7E4, 0x67C\n#_04DC2C: db $3F, $AE, $74, $F9 : db $AA, $76 ; 0x1AC8\u20130x1ACB: 0xA3F, 0xAAE, 0x674, 0x7F9\n#_04DC32: db $D5, $34, $A7, $D5 : db $00, $00 ; 0x1ACC\u20130x1ACF: 0x0D5, 0x034, 0x0A7, 0x0D5\n#_04DC38: db $CE, $FC, $C5, $C6 : db $0A, $00 ; 0x1AD0\u20130x1AD3: 0xACE, 0x0FC, 0x0C5, 0x0C6\n#_04DC3E: db $C6, $C6, $AB, $5B : db $00, $01 ; 0x1AD4\u20130x1AD7: 0x0C6, 0x0C6, 0x1AB, 0x05B\n#_04DC44: db $CE, $C5, $C6, $34 : db $00, $00 ; 0x1AD8\u20130x1ADB: 0x0CE, 0x0C5, 0x0C6, 0x034\n#_04DC4A: db $34, $34, $B5, $08 : db $00, $00 ; 0x1ADC\u20130x1ADF: 0x034, 0x034, 0x0B5, 0x008\n#_04DC50: db $0F, $34, $36, $F2 : db $20, $00 ; 0x1AE0\u20130x1AE3: 0x00F, 0x234, 0x036, 0x0F2\n#_04DC56: db $ED, $8B, $F2, $F1 : db $23, $00 ; 0x1AE4\u20130x1AE7: 0x3ED, 0x28B, 0x0F2, 0x0F1\n#_04DC5C: db $F4, $38, $08, $34 : db $23, $13 ; 0x1AE8\u20130x1AEB: 0x3F4, 0x238, 0x308, 0x134\n#_04DC62: db $EB, $34, $F1, $34 : db $10, $00 ; 0x1AEC\u20130x1AEF: 0x0EB, 0x134, 0x0F1, 0x034\n#_04DC68: db $34, $D6, $34, $E7 : db $00, $01 ; 0x1AF0\u20130x1AF3: 0x034, 0x0D6, 0x134, 0x0E7\n#_04DC6E: db $B0, $34, $39, $4B : db $00, $21 ; 0x1AF4\u20130x1AF7: 0x0B0, 0x034, 0x139, 0x24B\n#_04DC74: db $F1, $39, $C9, $C9 : db $02, $00 ; 0x1AF8\u20130x1AFB: 0x2F1, 0x039, 0x0C9, 0x0C9\n#_04DC7A: db $7E, $82, $3C, $AD : db $33, $20 ; 0x1AFC\u20130x1AFF: 0x37E, 0x382, 0x03C, 0x2AD\n#_04DC80: db $7E, $F9, $FB, $34 : db $33, $30 ; 0x1B00\u20130x1B03: 0x37E, 0x3F9, 0x0FB, 0x334\n#_04DC86: db $34, $FF, $34, $FC : db $3A, $00 ; 0x1B04\u20130x1B07: 0xA34, 0x3FF, 0x034, 0x0FC\n#_04DC8C: db $34, $6B, $6C, $6C : db $06, $11 ; 0x1B08\u20130x1B0B: 0x634, 0x06B, 0x16C, 0x16C\n#_04DC92: db $D7, $BE, $B0, $34 : db $00, $00 ; 0x1B0C\u20130x1B0F: 0x0D7, 0x0BE, 0x0B0, 0x034\n#_04DC98: db $AE, $35, $34, $34 : db $00, $00 ; 0x1B10\u20130x1B13: 0x0AE, 0x035, 0x034, 0x034\n#_04DC9E: db $89, $E1, $E1, $34 : db $00, $00 ; 0x1B14\u20130x1B17: 0x089, 0x0E1, 0x0E1, 0x034\n#_04DCA4: db $34, $78, $F1, $34 : db $00, $00 ; 0x1B18\u20130x1B1B: 0x034, 0x078, 0x0F1, 0x034\n#_04DCAA: db $78, $B5, $78, $DA : db $00, $00 ; 0x1B1C\u20130x1B1F: 0x078, 0x0B5, 0x078, 0x0DA\n#_04DCB0: db $E1, $34, $26, $79 : db $00, $00 ; 0x1B20\u20130x1B23: 0x0E1, 0x034, 0x026, 0x079\n#_04DCB6: db $71, $BE, $34, $AE : db $00, $00 ; 0x1B24\u20130x1B27: 0x071, 0x0BE, 0x034, 0x0AE\n#_04DCBC: db $7E, $34, $B5, $89 : db $00, $00 ; 0x1B28\u20130x1B2B: 0x07E, 0x034, 0x0B5, 0x089\n#_04DCC2: db $71, $BE, $9A, $34 : db $00, $00 ; 0x1B2C\u20130x1B2F: 0x071, 0x0BE, 0x09A, 0x034\n#_04DCC8: db $62, $33, $33, $74 : db $12, $21 ; 0x1B30\u20130x1B33: 0x262, 0x133, 0x133, 0x274\n#_04DCCE: db $35, $71, $71, $35 : db $20, $00 ; 0x1B34\u20130x1B37: 0x035, 0x271, 0x071, 0x035\n#_04DCD4: db $98, $C8, $6C, $9E : db $00, $10 ; 0x1B38\u20130x1B3B: 0x098, 0x0C8, 0x06C, 0x19E\n#_04DCDA: db $71, $A4, $5C, $5E : db $00, $11 ; 0x1B3C\u20130x1B3F: 0x071, 0x0A4, 0x15C, 0x15E\n#_04DCE0: db $A0, $7D, $A5, $5C : db $01, $01 ; 0x1B40\u20130x1B43: 0x1A0, 0x07D, 0x1A5, 0x05C\n#_04DCE6: db $5E, $5E, $06, $5E : db $11, $11 ; 0x1B44\u20130x1B47: 0x15E, 0x15E, 0x106, 0x15E\n#_04DCEC: db $5E, $5E, $5E, $34 : db $11, $10 ; 0x1B48\u20130x1B4B: 0x15E, 0x15E, 0x05E, 0x134\n#_04DCF2: db $06, $C6, $C6, $9E : db $10, $00 ; 0x1B4C\u20130x1B4F: 0x006, 0x1C6, 0x0C6, 0x09E\n#_04DCF8: db $7C, $34, $E1, $34 : db $10, $00 ; 0x1B50\u20130x1B53: 0x07C, 0x134, 0x0E1, 0x034\n#_04DCFE: db $C4, $7C, $C6, $5F : db $11, $01 ; 0x1B54\u20130x1B57: 0x1C4, 0x17C, 0x1C6, 0x05F\n#_04DD04: db $AD, $C6, $79, $31 : db $00, $11 ; 0x1B58\u20130x1B5B: 0x0AD, 0x0C6, 0x179, 0x131\n#_04DD0A: db $62, $AD, $F2, $F7 : db $10, $03 ; 0x1B5C\u20130x1B5F: 0x062, 0x1AD, 0x3F2, 0x0F7\n#_04DD10: db $F9, $69, $32, $08 : db $31, $21 ; 0x1B60\u20130x1B63: 0x1F9, 0x369, 0x132, 0x208\n#_04DD16: db $33, $36, $0A, $ED : db $23, $41 ; 0x1B64\u20130x1B67: 0x333, 0x236, 0x10A, 0x4ED\n#_04DD1C: db $0D, $C6, $00, $36 : db $20, $20 ; 0x1B68\u20130x1B6B: 0x00D, 0x2C6, 0x000, 0x236\n#_04DD22: db $36, $36, $14, $34 : db $00, $40 ; 0x1B6C\u20130x1B6F: 0x036, 0x036, 0x014, 0x434\n#_04DD28: db $AB, $79, $A4, $CD : db $01, $02 ; 0x1B70\u20130x1B73: 0x1AB, 0x079, 0x2A4, 0x0CD\n#_04DD2E: db $74, $6C, $6C, $C6 : db $21, $10 ; 0x1B74\u20130x1B77: 0x174, 0x26C, 0x06C, 0x1C6\n#_04DD34: db $FF, $34, $E3, $77 : db $10, $02 ; 0x1B78\u20130x1B7B: 0x0FF, 0x134, 0x2E3, 0x077\n#_04DD3A: db $C6, $B0, $57, $FF : db $02, $21 ; 0x1B7C\u20130x1B7F: 0x2C6, 0x0B0, 0x157, 0x2FF\n#_04DD40: db $36, $C4, $A4, $06 : db $01, $01 ; 0x1B80\u20130x1B83: 0x136, 0x0C4, 0x1A4, 0x006\n#_04DD46: db $5E, $60, $AC, $00 : db $11, $01 ; 0x1B84\u20130x1B87: 0x15E, 0x160, 0x1AC, 0x000\n#_04DD4C: db $AB, $A5, $AB, $A5 : db $01, $01 ; 0x1B88\u20130x1B8B: 0x1AB, 0x0A5, 0x1AB, 0x0A5\n#_04DD52: db $A5, $D5, $A5, $A5 : db $10, $10 ; 0x1B8C\u20130x1B8F: 0x0A5, 0x1D5, 0x0A5, 0x1A5\n#_04DD58: db $A5, $04, $C7, $34 : db $0B, $20 ; 0x1B90\u20130x1B93: 0xBA5, 0x004, 0x0C7, 0x234\n#_04DD5E: db $AA, $07, $34, $FE : db $0B, $01 ; 0x1B94\u20130x1B97: 0xBAA, 0x007, 0x134, 0x0FE\n#_04DD64: db $A5, $61, $39, $DB : db $11, $12 ; 0x1B98\u20130x1B9B: 0x1A5, 0x161, 0x239, 0x1DB\n#_04DD6A: db $E1, $41, $9D, $F2 : db $01, $20 ; 0x1B9C\u20130x1B9F: 0x1E1, 0x041, 0x09D, 0x2F2\n#_04DD70: db $4F, $3A, $9D, $2D : db $12, $21 ; 0x1BA0\u20130x1BA3: 0x24F, 0x13A, 0x19D, 0x22D\n#_04DD76: db $9D, $F2, $E4, $F9 : db $20, $22 ; 0x1BA4\u20130x1BA7: 0x09D, 0x2F2, 0x2E4, 0x2F9\n#_04DD7C: db $1B, $F2, $C7, $CD : db $20, $22 ; 0x1BA8\u20130x1BAB: 0x01B, 0x2F2, 0x2C7, 0x2CD\n#_04DD82: db $63, $9D, $28, $CD : db $12, $32 ; 0x1BAC\u20130x1BAF: 0x263, 0x19D, 0x228, 0x3CD\n#_04DD88: db $CD, $34, $0B, $34 : db $23, $13 ; 0x1BB0\u20130x1BB3: 0x3CD, 0x234, 0x30B, 0x134\n#_04DD8E: db $FF, $EF, $F4, $A5 : db $11, $10 ; 0x1BB4\u20130x1BB7: 0x1FF, 0x1EF, 0x0F4, 0x1A5\n#_04DD94: db $A7, $34, $A5, $AC : db $00, $10 ; 0x1BB8\u20130x1BBB: 0x0A7, 0x034, 0x0A5, 0x1AC\n#_04DD9A: db $AA, $7E, $E7, $0A : db $67, $1B ; 0x1BBC\u20130x1BBF: 0x7AA, 0x67E, 0xBE7, 0x10A\n#_04DDA0: db $DD, $53, $9E, $34 : db $01, $00 ; 0x1BC0\u20130x1BC3: 0x1DD, 0x053, 0x09E, 0x034\n#_04DDA6: db $E1, $E3, $9F, $A4 : db $00, $00 ; 0x1BC4\u20130x1BC7: 0x0E1, 0x0E3, 0x09F, 0x0A4\n#_04DDAC: db $B0, $AE, $7E, $34 : db $00, $00 ; 0x1BC8\u20130x1BCB: 0x0B0, 0x0AE, 0x07E, 0x034\n#_04DDB2: db $A5, $B0, $7E, $F1 : db $00, $00 ; 0x1BCC\u20130x1BCF: 0x0A5, 0x0B0, 0x07E, 0x0F1\n#_04DDB8: db $B9, $12, $CB, $84 : db $00, $03 ; 0x1BD0\u20130x1BD3: 0x0B9, 0x012, 0x3CB, 0x084\n#_04DDBE: db $7E, $83, $E7, $56 : db $33, $01 ; 0x1BD4\u20130x1BD7: 0x37E, 0x383, 0x1E7, 0x056\n#_04DDC4: db $4E, $4E, $4E, $CE : db $11, $10 ; 0x1BD8\u20130x1BDB: 0x14E, 0x14E, 0x04E, 0x1CE\n#_04DDCA: db $20, $D6, $C4, $C4 : db $52, $00 ; 0x1BDC\u20130x1BDF: 0x220, 0x5D6, 0x0C4, 0x0C4\n#_04DDD0: db $7E, $65, $65, $F7 : db $31, $12 ; 0x1BE0\u20130x1BE3: 0x17E, 0x365, 0x265, 0x1F7\n#_04DDD6: db $C4, $7E, $00, $05 : db $03, $11 ; 0x1BE4\u20130x1BE7: 0x3C4, 0x07E, 0x100, 0x105\n#_04DDDC: db $07, $AA, $AB, $CE : db $16, $60 ; 0x1BE8\u20130x1BEB: 0x607, 0x1AA, 0x0AB, 0x6CE\n#_04DDE2: db $0C, $58, $82, $65 : db $11, $31 ; 0x1BEC\u20130x1BEF: 0x10C, 0x158, 0x182, 0x365\n#_04DDE8: db $7E, $E5, $D5, $09 : db $16, $01 ; 0x1BF0\u20130x1BF3: 0x67E, 0x1E5, 0x1D5, 0x009\n#_04DDEE: db $72, $D5, $06, $78 : db $70, $11 ; 0x1BF4\u20130x1BF7: 0x072, 0x7D5, 0x106, 0x178\n#_04DDF4: db $D3, $E6, $EE, $5B : db $02, $21 ; 0x1BF8\u20130x1BFB: 0x2D3, 0x0E6, 0x1EE, 0x25B\n#_04DDFA: db $86, $FE, $83, $96 : db $12, $35 ; 0x1BFC\u20130x1BFF: 0x286, 0x1FE, 0x583, 0x396\n#_04DE00: db $05, $7E, $35, $E6 : db $13, $02 ; 0x1C00\u20130x1C03: 0x305, 0x17E, 0x235, 0x0E6\n#_04DE06: db $B1, $34, $E2, $E6 : db $20, $02 ; 0x1C04\u20130x1C07: 0x0B1, 0x234, 0x2E2, 0x0E6\n#_04DE0C: db $22, $CF, $D1, $D1 : db $30, $00 ; 0x1C08\u20130x1C0B: 0x022, 0x3CF, 0x0D1, 0x0D1\n#_04DE12: db $D1, $A3, $E9, $F5 : db $00, $12 ; 0x1C0C\u20130x1C0F: 0x0D1, 0x0A3, 0x2E9, 0x1F5\n#_04DE18: db $E6, $C9, $C8, $C6 : db $20, $00 ; 0x1C10\u20130x1C13: 0x0E6, 0x2C9, 0x0C8, 0x0C6\n#_04DE1E: db $C8, $28, $E6, $A5 : db $07, $21 ; 0x1C14\u20130x1C17: 0x7C8, 0x028, 0x1E6, 0x2A5\n#_04DE24: db $C8, $58, $34, $AB : db $01, $00 ; 0x1C18\u20130x1C1B: 0x1C8, 0x058, 0x034, 0x0AB\n#_04DE2A: db $A5, $5B, $EF, $05 : db $17, $67 ; 0x1C1C\u20130x1C1F: 0x7A5, 0x15B, 0x7EF, 0x605\n#_04DE30: db $E5, $C4, $A5, $A5 : db $01, $11 ; 0x1C20\u20130x1C23: 0x1E5, 0x0C4, 0x1A5, 0x1A5\n#_04DE36: db $A4, $A5, $0E, $0F : db $00, $22 ; 0x1C24\u20130x1C27: 0x0A4, 0x0A5, 0x20E, 0x20F\n#_04DE3C: db $34, $34, $34, $1B : db $00, $02 ; 0x1C28\u20130x1C2B: 0x034, 0x034, 0x234, 0x01B\n#_04DE42: db $34, $06, $06, $71 : db $01, $11 ; 0x1C2C\u20130x1C2F: 0x134, 0x006, 0x106, 0x171\n#_04DE48: db $0C, $7D, $58, $71 : db $17, $11 ; 0x1C30\u20130x1C33: 0x70C, 0x17D, 0x158, 0x171\n#_04DE4E: db $07, $66, $7D, $09 : db $11, $71 ; 0x1C34\u20130x1C37: 0x107, 0x166, 0x17D, 0x709\n#_04DE54: db $C6, $C5, $C6, $C9 : db $00, $00 ; 0x1C38\u20130x1C3B: 0x0C6, 0x0C5, 0x0C6, 0x0C9\n#_04DE5A: db $78, $87, $5B, $1C : db $13, $12 ; 0x1C3C\u20130x1C3F: 0x378, 0x187, 0x25B, 0x11C\n#_04DE60: db $12, $C7, $11, $12 : db $B2, $BB ; 0x1C40\u20130x1C43: 0x212, 0xBC7, 0xB11, 0xB12\n#_04DE66: db $15, $17, $19, $C7 : db $BB, $B2 ; 0x1C44\u20130x1C47: 0xB15, 0xB17, 0x219, 0xBC7\n#_04DE6C: db $C7, $C7, $17, $C7 : db $22, $B2 ; 0x1C48\u20130x1C4B: 0x2C7, 0x2C7, 0x217, 0xBC7\n#_04DE72: db $15, $23, $24, $14 : db $BB, $BB ; 0x1C4C\u20130x1C4F: 0xB15, 0xB23, 0xB24, 0xB14\n#_04DE78: db $C7, $C7, $C7, $C7 : db $22, $22 ; 0x1C50\u20130x1C53: 0x2C7, 0x2C7, 0x2C7, 0x2C7\n#_04DE7E: db $2F, $31, $B7, $32 : db $BB, $8B ; 0x1C54\u20130x1C57: 0xB2F, 0xB31, 0xBB7, 0x832\n#_04DE84: db $34, $C7, $15, $D2 : db $B2, $B2 ; 0x1C58\u20130x1C5B: 0x234, 0xBC7, 0x215, 0xBD2\n#_04DE8A: db $3A, $3C, $C7, $3E : db $BB, $2B ; 0x1C5C\u20130x1C5F: 0xB3A, 0xB3C, 0xBC7, 0x23E\n#_04DE90: db $C7, $40, $D7, $47 : db $2B, $2B ; 0x1C60\u20130x1C63: 0xBC7, 0x240, 0xBD7, 0x247\n#_04DE96: db $48, $4A, $4C, $4E : db $BB, $BB ; 0x1C64\u20130x1C67: 0xB48, 0xB4A, 0xB4C, 0xB4E\n#_04DE9C: db $C7, $50, $66, $1A : db $2B, $13 ; 0x1C68\u20130x1C6B: 0xBC7, 0x250, 0x366, 0x11A\n#_04DEA2: db $47, $D9, $D2, $51 : db $B2, $2B ; 0x1C6C\u20130x1C6F: 0x247, 0xBD9, 0xBD2, 0x251\n#_04DEA8: db $57, $58, $5A, $C7 : db $BB, $B2 ; 0x1C70\u20130x1C73: 0xB57, 0xB58, 0x25A, 0xBC7\n#_04DEAE: db $0F, $C7, $51, $5B : db $B2, $BB ; 0x1C74\u20130x1C77: 0x20F, 0xBC7, 0xB51, 0xB5B\n#_04DEB4: db $60, $5A, $1E, $E6 : db $BB, $26 ; 0x1C78\u20130x1C7B: 0xB60, 0xB5A, 0x61E, 0x2E6\n#_04DEBA: db $1C, $65, $65, $66 : db $2B, $BB ; 0x1C7C\u20130x1C7F: 0xB1C, 0x265, 0xB65, 0xB66\n#_04DEC0: db $68, $66, $E6, $46 : db $B1, $6B ; 0x1C80\u20130x1C83: 0x168, 0xB66, 0xBE6, 0x646\n#_04DEC6: db $C7, $2A, $F6, $73 : db $2B, $2B ; 0x1C84\u20130x1C87: 0xBC7, 0x22A, 0xBF6, 0x273\n#_04DECC: db $DF, $2A, $74, $18 : db $2B, $B3 ; 0x1C88\u20130x1C8B: 0xBDF, 0x22A, 0x374, 0xB18\n#_04DED2: db $E6, $C7, $21, $D9 : db $62, $B2 ; 0x1C8C\u20130x1C8F: 0x2E6, 0x6C7, 0x221, 0xBD9\n#_04DED8: db $73, $74, $E5, $0F : db $BB, $2B ; 0x1C90\u20130x1C93: 0xB73, 0xB74, 0xBE5, 0x20F\n#_04DEDE: db $C7, $78, $74, $C8 : db $2B, $B0 ; 0x1C94\u20130x1C97: 0xBC7, 0x278, 0x074, 0xBC8\n#_04DEE4: db $07, $1C, $C7, $C7 : db $72, $22 ; 0x1C98\u20130x1C9B: 0x207, 0x71C, 0x2C7, 0x2C7\n#_04DEEA: db $C7, $3F, $10, $D3 : db $2B, $B0 ; 0x1C9C\u20130x1C9F: 0xBC7, 0x23F, 0x010, 0xBD3\n#_04DEF0: db $DF, $96, $05, $CD : db $25, $12 ; 0x1CA0\u20130x1CA3: 0x5DF, 0x296, 0x205, 0x1CD\n#_04DEF6: db $C7, $FE, $FE, $D2 : db $22, $22 ; 0x1CA4\u20130x1CA7: 0x2C7, 0x2FE, 0x2FE, 0x2D2\n#_04DEFC: db $C7, $3F, $C6, $E6 : db $25, $22 ; 0x1CA8\u20130x1CAB: 0x5C7, 0x23F, 0x2C6, 0x2E6\n#_04DF02: db $CD, $11, $87, $D2 : db $2B, $32 ; 0x1CAC\u20130x1CAF: 0xBCD, 0x211, 0x287, 0x3D2\n#_04DF08: db $74, $C7, $C7, $44 : db $B2, $29 ; 0x1CB0\u20130x1CB3: 0x274, 0xBC7, 0x9C7, 0x244\n#_04DF0E: db $74, $19, $15, $41 : db $B3, $BB ; 0x1CB4\u20130x1CB7: 0x374, 0xB19, 0xB15, 0xB41\n#_04DF14: db $7D, $13, $E6, $EE : db $BB, $22 ; 0x1CB8\u20130x1CBB: 0xB7D, 0xB13, 0x2E6, 0x2EE\n#_04DF1A: db $35, $15, $C7, $82 : db $5B, $2B ; 0x1CBC\u20130x1CBF: 0xB35, 0x515, 0xBC7, 0x282\n#_04DF20: db $13, $53, $CD, $9E : db $B1, $23 ; 0x1CC0\u20130x1CC3: 0x113, 0xB53, 0x3CD, 0x29E\n#_04DF26: db $C7, $10, $C7, $C7 : db $2B, $22 ; 0x1CC4\u20130x1CC7: 0xBC7, 0x210, 0x2C7, 0x2C7\n#_04DF2C: db $67, $96, $85, $5C : db $B5, $31 ; 0x1CC8\u20130x1CCB: 0x567, 0xB96, 0x185, 0x35C\n#_04DF32: db $5E, $60, $34, $D0 : db $11, $00 ; 0x1CCC\u20130x1CCF: 0x15E, 0x160, 0x034, 0x0D0\n#_04DF38: db $86, $04, $C2, $65 : db $11, $11 ; 0x1CD0\u20130x1CD3: 0x186, 0x104, 0x1C2, 0x165\n#_04DF3E: db $D1, $83, $E3, $86 : db $01, $01 ; 0x1CD4\u20130x1CD7: 0x1D1, 0x083, 0x1E3, 0x086\n#_04DF44: db $7E, $7E, $D4, $80 : db $33, $06 ; 0x1CD8\u20130x1CDB: 0x37E, 0x37E, 0x6D4, 0x080\n#_04DF4A: db $83, $A4, $79, $7E : db $30, $13 ; 0x1CDC\u20130x1CDF: 0x083, 0x3A4, 0x379, 0x17E\n#_04DF50: db $80, $1B, $02, $C6 : db $62, $20 ; 0x1CE0\u20130x1CE3: 0x280, 0x61B, 0x002, 0x2C6\n#_04DF56: db $14, $80, $7E, $7E : db $26, $33 ; 0x1CE4\u20130x1CE7: 0x614, 0x280, 0x37E, 0x37E\n#_04DF5C: db $34, $EA, $EA, $9F : db $02, $20 ; 0x1CE8\u20130x1CEB: 0x234, 0x0EA, 0x0EA, 0x29F\n#_04DF62: db $34, $82, $EA, $EA : db $03, $22 ; 0x1CEC\u20130x1CEF: 0x334, 0x082, 0x2EA, 0x2EA\n#_04DF68: db $EA, $04, $C7, $DD : db $2B, $22 ; 0x1CF0\u20130x1CF3: 0xBEA, 0x204, 0x2C7, 0x2DD\n#_04DF6E: db $6A, $05, $CD, $CD : db $1B, $22 ; 0x1CF4\u20130x1CF7: 0xB6A, 0x105, 0x2CD, 0x2CD\n#_04DF74: db $CD, $D6, $34, $34 : db $22, $00 ; 0x1CF8\u20130x1CFB: 0x2CD, 0x2D6, 0x034, 0x034\n#_04DF7A: db $05, $CD, $CD, $CD : db $B2, $22 ; 0x1CFC\u20130x1CFF: 0x205, 0xBCD, 0x2CD, 0x2CD\n#_04DF80: db $CD, $CD, $19, $05 : db $22, $2B ; 0x1D00\u20130x1D03: 0x2CD, 0x2CD, 0xB19, 0x205\n#_04DF86: db $CD, $F9, $6A, $06 : db $22, $1B ; 0x1D04\u20130x1D07: 0x2CD, 0x2F9, 0xB6A, 0x106\n#_04DF8C: db $D7, $D2, $C7, $C7 : db $22, $22 ; 0x1D08\u20130x1D0B: 0x2D7, 0x2D2, 0x2C7, 0x2C7\n#_04DF92: db $06, $DB, $DB, $DB : db $B2, $22 ; 0x1D0C\u20130x1D0F: 0x206, 0xBDB, 0x2DB, 0x2DB\n#_04DF98: db $DB, $DB, $84, $89 : db $22, $3B ; 0x1D10\u20130x1D13: 0x2DB, 0x2DB, 0xB84, 0x389\n#_04DF9E: db $82, $04, $DA, $C9 : db $3B, $22 ; 0x1D14\u20130x1D17: 0xB82, 0x304, 0x2DA, 0x2C9\n#_04DFA4: db $8B, $85, $8D, $34 : db $B6, $B0 ; 0x1D18\u20130x1D1B: 0x68B, 0xB85, 0x08D, 0xB34\n#_04DFAA: db $DD, $EB, $34, $8E : db $22, $06 ; 0x1D1C\u20130x1D1F: 0x2DD, 0x2EB, 0x634, 0x08E\n#_04DFB0: db $34, $1C, $7D, $34 : db $02, $30 ; 0x1D20\u20130x1D23: 0x234, 0x01C, 0x07D, 0x334\n#_04DFB6: db $7D, $85, $86, $7E : db $3B, $B3 ; 0x1D24\u20130x1D27: 0xB7D, 0x385, 0x386, 0xB7E\n#_04DFBC: db $89, $89, $C6, $35 : db $BB, $00 ; 0x1D28\u20130x1D2B: 0xB89, 0xB89, 0x0C6, 0x035\n#_04DFC2: db $D1, $D1, $83, $86 : db $00, $11 ; 0x1D2C\u20130x1D2F: 0x0D1, 0x0D1, 0x183, 0x186\n#_04DFC8: db $53, $86, $C7, $8A : db $17, $0B ; 0x1D30\u20130x1D33: 0x753, 0x186, 0xBC7, 0x08A\n#_04DFCE: db $7E, $7E, $DB, $D5 : db $33, $00 ; 0x1D34\u20130x1D37: 0x37E, 0x37E, 0x0DB, 0x0D5\n#_04DFD4: db $EA, $F0, $7E, $8D : db $22, $3B ; 0x1D38\u20130x1D3B: 0x2EA, 0x2F0, 0xB7E, 0x38D\n#_04DFDA: db $96, $DD, $D3, $7E : db $B2, $23 ; 0x1D3C\u20130x1D3F: 0x296, 0xBDD, 0x3D3, 0x27E\n#_04DFE0: db $CE, $D3, $7E, $83 : db $02, $33 ; 0x1D40\u20130x1D43: 0x2CE, 0x0D3, 0x37E, 0x383\n#_04DFE6: db $84, $D3, $05, $EA : db $32, $B2 ; 0x1D44\u20130x1D47: 0x284, 0x3D3, 0x205, 0xBEA\n#_04DFEC: db $EA, $7E, $5C, $06 : db $23, $11 ; 0x1D48\u20130x1D4B: 0x3EA, 0x27E, 0x15C, 0x106\n#_04DFF2: db $D5, $E4, $7E, $7C : db $02, $36 ; 0x1D4C\u20130x1D4F: 0x2D5, 0x0E4, 0x67E, 0x37C\n#_04DFF8: db $05, $7B, $05, $84 : db $B6, $B3 ; 0x1D50\u20130x1D53: 0x605, 0xB7B, 0x305, 0xB84\n#_04DFFE: db $5C, $E5, $06, $C7 : db $11, $12 ; 0x1D54\u20130x1D57: 0x15C, 0x1E5, 0x206, 0x1C7\n#_04E004: db $D3, $03, $F0, $86 : db $2B, $26 ; 0x1D58\u20130x1D5B: 0xBD3, 0x203, 0x6F0, 0x286\n#_04E00A: db $05, $7D, $D5, $C6 : db $B3, $00 ; 0x1D5C\u20130x1D5F: 0x305, 0xB7D, 0x0D5, 0x0C6\n#_04E010: db $DB, $98, $98, $99 : db $2B, $BB ; 0x1D60\u20130x1D63: 0xBDB, 0x298, 0xB98, 0xB99\n#_04E016: db $DB, $DB, $7E, $D4 : db $22, $30 ; 0x1D64\u20130x1D67: 0x2DB, 0x2DB, 0x07E, 0x3D4\n#_04E01C: db $7E, $7E, $7E, $36 : db $33, $30 ; 0x1D68\u20130x1D6B: 0x37E, 0x37E, 0x07E, 0x336\n#_04E022: db $36, $83, $C5, $D0 : db $03, $00 ; 0x1D6C\u20130x1D6F: 0x336, 0x083, 0x0C5, 0x0D0\n#_04E028: db $7E, $89, $7E, $34 : db $3B, $30 ; 0x1D70\u20130x1D73: 0xB7E, 0x389, 0x07E, 0x334\n#_04E02E: db $50, $1F, $1C, $ED : db $15, $20 ; 0x1D74\u20130x1D77: 0x550, 0x11F, 0x01C, 0x2ED\n#_04E034: db $CD, $F9, $49, $FD : db $20, $70 ; 0x1D78\u20130x1D7B: 0x0CD, 0x2F9, 0x049, 0x7FD\n#_04E03A: db $10, $CD, $CD, $CD : db $32, $22 ; 0x1D7C\u20130x1D7F: 0x210, 0x3CD, 0x2CD, 0x2CD\n#_04E040: db $9E, $CD, $DA, $9D : db $32, $23 ; 0x1D80\u20130x1D83: 0x29E, 0x3CD, 0x3DA, 0x29D\n#_04E046: db $C7, $DD, $CD, $74 : db $22, $22 ; 0x1D84\u20130x1D87: 0x2C7, 0x2DD, 0x2CD, 0x274\n#_04E04C: db $9E, $9D, $C7, $C7 : db $3B, $22 ; 0x1D88\u20130x1D8B: 0xB9E, 0x39D, 0x2C7, 0x2C7\n#_04E052: db $71, $C7, $D0, $9E : db $02, $0B ; 0x1D8C\u20130x1D8F: 0x271, 0x0C7, 0xBD0, 0x09E\n#_04E058: db $A0, $D6, $DD, $CF : db $B2, $20 ; 0x1D90\u20130x1D93: 0x2A0, 0xBD6, 0x0DD, 0x2CF\n#_04E05E: db $DF, $EF, $D2, $C7 : db $22, $22 ; 0x1D94\u20130x1D97: 0x2DF, 0x2EF, 0x2D2, 0x2C7\n#_04E064: db $A4, $C7, $C7, $CD : db $B2, $22 ; 0x1D98\u20130x1D9B: 0x2A4, 0xBC7, 0x2C7, 0x2CD\n#_04E06A: db $C7, $A5, $A5, $AA : db $2B, $BB ; 0x1D9C\u20130x1D9F: 0xBC7, 0x2A5, 0xBA5, 0xBAA\n#_04E070: db $A9, $A4, $A0, $AC : db $BB, $BB ; 0x1DA0\u20130x1DA3: 0xBA9, 0xBA4, 0xBA0, 0xBAC\n#_04E076: db $A0, $9E, $AF, $B1 : db $BB, $BB ; 0x1DA4\u20130x1DA7: 0xBA0, 0xB9E, 0xBAF, 0xBB1\n#_04E07C: db $B1, $B1, $B1, $B1 : db $BB, $BB ; 0x1DA8\u20130x1DAB: 0xBB1, 0xBB1, 0xBB1, 0xBB1\n#_04E082: db $B2, $A8, $DD, $EF : db $BB, $22 ; 0x1DAC\u20130x1DAF: 0xBB2, 0xBA8, 0x2DD, 0x2EF\n#_04E088: db $C7, $AF, $B7, $B7 : db $2B, $BB ; 0x1DB0\u20130x1DB3: 0xBC7, 0x2AF, 0xBB7, 0xBB7\n#_04E08E: db $B7, $BE, $B7, $BB : db $BB, $BB ; 0x1DB4\u20130x1DB7: 0xBB7, 0xBBE, 0xBB7, 0xBBB\n#_04E094: db $A9, $C7, $CD, $9E : db $B2, $2B ; 0x1DB8\u20130x1DBB: 0x2A9, 0xBC7, 0xBCD, 0x29E\n#_04E09A: db $AF, $BE, $C5, $C6 : db $BB, $BB ; 0x1DBC\u20130x1DBF: 0xBAF, 0xBBE, 0xBC5, 0xBC6\n#_04E0A0: db $BE, $BC, $A2, $D5 : db $BB, $60 ; 0x1DC0\u20130x1DC3: 0xBBE, 0xBBC, 0x0A2, 0x6D5\n#_04E0A6: db $C7, $C4, $C5, $C5 : db $2B, $BB ; 0x1DC4\u20130x1DC7: 0xBC7, 0x2C4, 0xBC5, 0xBC5\n#_04E0AC: db $CC, $CE, $C5, $BB : db $BB, $BB ; 0x1DC8\u20130x1DCB: 0xBCC, 0xBCE, 0xBC5, 0xBBB\n#_04E0B2: db $BC, $D7, $BD, $AF : db $B2, $BB ; 0x1DCC\u20130x1DCF: 0x2BC, 0xBD7, 0xBBD, 0xBAF\n#_04E0B8: db $BB, $A9, $A9, $D5 : db $BB, $BB ; 0x1DD0\u20130x1DD3: 0xBBB, 0xBA9, 0xBA9, 0xBD5\n#_04E0BE: db $B3, $A9, $AF, $BB : db $BB, $BB ; 0x1DD4\u20130x1DD7: 0xBB3, 0xBA9, 0xBAF, 0xBBB\n#_04E0C4: db $A9, $A0, $9E, $AF : db $BB, $BB ; 0x1DD8\u20130x1DDB: 0xBA9, 0xBA0, 0xB9E, 0xBAF\n#_04E0CA: db $D9, $A9, $A9, $A9 : db $BB, $BB ; 0x1DDC\u20130x1DDF: 0xBD9, 0xBA9, 0xBA9, 0xBA9\n#_04E0D0: db $AF, $EF, $CD, $20 : db $B2, $25 ; 0x1DE0\u20130x1DE3: 0x2AF, 0xBEF, 0x5CD, 0x220\n#_04E0D6: db $DD, $DC, $E6, $22 : db $00, $02 ; 0x1DE4\u20130x1DE7: 0x0DD, 0x0DC, 0x2E6, 0x022\n#_04E0DC: db $E4, $E3, $34, $60 : db $00, $01 ; 0x1DE8\u20130x1DEB: 0x0E4, 0x0E3, 0x134, 0x060\n#_04E0E2: db $85, $86, $34, $D3 : db $BB, $00 ; 0x1DEC\u20130x1DEF: 0xB85, 0xB86, 0x034, 0x0D3\n#_04E0E8: db $6C, $93, $89, $34 : db $1B, $B0 ; 0x1DF0\u20130x1DF3: 0xB6C, 0x193, 0x089, 0xB34\n#_04E0EE: db $D5, $1C, $DC, $8D : db $02, $BB ; 0x1DF4\u20130x1DF7: 0x2D5, 0x01C, 0xBDC, 0xB8D\n#_04E0F4: db $96, $A3, $D5, $EE : db $B0, $01 ; 0x1DF8\u20130x1DFB: 0x096, 0xBA3, 0x1D5, 0x0EE\n#_04E0FA: db $DE, $87, $C6, $83 : db $B7, $01 ; 0x1DFC\u20130x1DFF: 0x7DE, 0xB87, 0x1C6, 0x083\n#_04E100: db $DF, $C6, $5B, $D0 : db $B0, $12 ; 0x1E00\u20130x1E03: 0x0DF, 0xBC6, 0x25B, 0x1D0\n#_04E106: db $00, $09, $6D, $C2 : db $37, $73 ; 0x1E04\u20130x1E07: 0x700, 0x309, 0x36D, 0x7C2\n#_04E10C: db $C8, $E6, $5A, $16 : db $02, $73 ; 0x1E08\u20130x1E0B: 0x2C8, 0x0E6, 0x35A, 0x716\n#_04E112: db $31, $C4, $FC, $CA : db $10, $20 ; 0x1E0C\u20130x1E0F: 0x031, 0x1C4, 0x0FC, 0x2CA\n#_04E118: db $71, $16, $02, $FD : db $13, $32 ; 0x1E10\u20130x1E13: 0x371, 0x116, 0x202, 0x3FD\n#_04E11E: db $E1, $02, $8D, $E0 : db $23, $7B ; 0x1E14\u20130x1E17: 0x3E1, 0x202, 0xB8D, 0x7E0\n#_04E124: db $FB, $FA, $11, $E1 : db $22, $3B ; 0x1E18\u20130x1E1B: 0x2FB, 0x2FA, 0xB11, 0x3E1\n#_04E12A: db $E6, $CD, $CD, $C7 : db $22, $22 ; 0x1E1C\u20130x1E1F: 0x2E6, 0x2CD, 0x2CD, 0x2C7\n#_04E130: db $CD, $1C, $60, $1C : db $22, $72 ; 0x1E20\u20130x1E23: 0x2CD, 0x21C, 0x260, 0x71C\n#_04E136: db $3F, $14, $61, $1C : db $BB, $72 ; 0x1E24\u20130x1E27: 0xB3F, 0xB14, 0x261, 0x71C\n#_04E13C: db $3E, $39, $D2, $05 : db $BB, $27 ; 0x1E28\u20130x1E2B: 0xB3E, 0xB39, 0x7D2, 0x205\n#_04E142: db $F6, $40, $C7, $C7 : db $2B, $22 ; 0x1E2C\u20130x1E2F: 0xBF6, 0x240, 0x2C7, 0x2C7\n#_04E148: db $5F, $C6, $A2, $E5 : db $70, $6B ; 0x1E30\u20130x1E33: 0x05F, 0x7C6, 0xBA2, 0x6E5\n#_04E14E: db $1C, $0F, $EF, $DD : db $2B, $22 ; 0x1E34\u20130x1E37: 0xB1C, 0x20F, 0x2EF, 0x2DD\n#_04E154: db $38, $3F, $C7, $83 : db $BB, $21 ; 0x1E38\u20130x1E3B: 0xB38, 0xB3F, 0x1C7, 0x283\n#_04E15A: db $CD, $42, $C7, $D9 : db $25, $22 ; 0x1E3C\u20130x1E3F: 0x5CD, 0x242, 0x2C7, 0x2D9\n#_04E160: db $E7, $E8, $15, $C7 : db $BB, $B2 ; 0x1E40\u20130x1E43: 0xBE7, 0xBE8, 0x215, 0xBC7\n#_04E166: db $C7, $C7, $6A, $20 : db $22, $13 ; 0x1E44\u20130x1E47: 0x2C7, 0x2C7, 0x36A, 0x120\n#_04E16C: db $46, $68, $C7, $20 : db $BB, $23 ; 0x1E48\u20130x1E4B: 0xB46, 0xB68, 0x3C7, 0x220\n#_04E172: db $71, $46, $68, $68 : db $BB, $BB ; 0x1E4C\u20130x1E4F: 0xB71, 0xB46, 0xB68, 0xB68\n#_04E178: db $20, $E6, $E6, $9C : db $32, $25 ; 0x1E50\u20130x1E53: 0x220, 0x3E6, 0x5E6, 0x29C\n#_04E17E: db $69, $AA, $71, $65 : db $60, $11 ; 0x1E54\u20130x1E57: 0x069, 0x6AA, 0x171, 0x165\n#_04E184: db $3F, $7A, $74, $97 : db $BB, $B5 ; 0x1E58\u20130x1E5B: 0xB3F, 0xB7A, 0x574, 0xB97\n#_04E18A: db $97, $05, $85, $71 : db $51, $3B ; 0x1E5C\u20130x1E5F: 0x197, 0x505, 0xB85, 0x371\n#_04E190: db $C7, $68, $C7, $E6 : db $2B, $22 ; 0x1E60\u20130x1E63: 0xBC7, 0x268, 0x2C7, 0x2E6\n#_04E196: db $AB, $E6, $12, $44 : db $02, $B9 ; 0x1E64\u20130x1E67: 0x2AB, 0x0E6, 0x912, 0xB44\n#_04E19C: db $E7, $21, $B7, $1D : db $BB, $62 ; 0x1E68\u20130x1E6B: 0xBE7, 0xB21, 0x2B7, 0x61D\n#_04E1A2: db $10, $C7, $EF, $C6 : db $B2, $22 ; 0x1E6C\u20130x1E6F: 0x210, 0xBC7, 0x2EF, 0x2C6\n#_04E1A8: db $C7, $1C, $C6, $74 : db $22, $0B ; 0x1E70\u20130x1E73: 0x2C7, 0x21C, 0xBC6, 0x074\n#_04E1AE: db $E9, $C8, $C8, $C7 : db $10, $02 ; 0x1E74\u20130x1E77: 0x0E9, 0x1C8, 0x2C8, 0x0C7\n#_04E1B4: db $10, $11, $C7, $C7 : db $BB, $22 ; 0x1E78\u20130x1E7B: 0xB10, 0xB11, 0x2C7, 0x2C7\n#_04E1BA: db $C7, $11, $E9, $44 : db $2B, $B9 ; 0x1E7C\u20130x1E7F: 0xBC7, 0x211, 0x9E9, 0xB44\n#_04E1C0: db $39, $C7, $DF, $E6 : db $B2, $22 ; 0x1E80\u20130x1E83: 0x239, 0xBC7, 0x2DF, 0x2E6\n#_04E1C6: db $E6, $C6, $EB, $C7 : db $00, $B2 ; 0x1E84\u20130x1E87: 0x0E6, 0x0C6, 0x2EB, 0xBC7\n#_04E1CC: db $C7, $D7, $E6, $C4 : db $22, $20 ; 0x1E88\u20130x1E8B: 0x2C7, 0x2D7, 0x0E6, 0x2C4\n#_04E1D2: db $47, $45, $E7, $EC : db $B9, $BB ; 0x1E8C\u20130x1E8F: 0x947, 0xB45, 0xBE7, 0xBEC\n#_04E1D8: db $E6, $68, $68, $71 : db $26, $BB ; 0x1E90\u20130x1E93: 0x6E6, 0x268, 0xB68, 0xB71\n#_04E1DE: db $96, $79, $06, $C6 : db $5B, $10 ; 0x1E94\u20130x1E97: 0xB96, 0x579, 0x006, 0x1C6\n#_04E1E4: db $97, $97, $C6, $85 : db $55, $03 ; 0x1E98\u20130x1E9B: 0x597, 0x597, 0x3C6, 0x085\n#_04E1EA: db $AB, $7E, $57, $C6 : db $01, $20 ; 0x1E9C\u20130x1E9F: 0x1AB, 0x07E, 0x057, 0x2C6\n#_04E1F0: db $07, $AD, $79, $A9 : db $20, $10 ; 0x1EA0\u20130x1EA3: 0x007, 0x2AD, 0x079, 0x1A9\n#_04E1F6: db $EE, $A9, $E1, $34 : db $10, $00 ; 0x1EA4\u20130x1EA7: 0x0EE, 0x1A9, 0x0E1, 0x034\n#_04E1FC: db $9E, $AA, $0C, $C6 : db $06, $10 ; 0x1EA8\u20130x1EAB: 0x69E, 0x0AA, 0x00C, 0x1C6\n#_04E202: db $AB, $89, $FA, $7E : db $0B, $13 ; 0x1EAC\u20130x1EAF: 0xBAB, 0x089, 0x3FA, 0x17E\n#_04E208: db $7E, $C6, $7C, $EE : db $30, $11 ; 0x1EB0\u20130x1EB3: 0x07E, 0x3C6, 0x17C, 0x1EE\n#_04E20E: db $C4, $EA, $9E, $EA : db $12, $02 ; 0x1EB4\u20130x1EB7: 0x2C4, 0x1EA, 0x29E, 0x0EA\n#_04E214: db $C7, $C8, $07, $C8 : db $22, $B2 ; 0x1EB8\u20130x1EBB: 0x2C7, 0x2C8, 0x207, 0xBC8\n#_04E21A: db $DA, $EB, $1C, $05 : db $22, $2B ; 0x1EBC\u20130x1EBF: 0x2DA, 0x2EB, 0xB1C, 0x205\n#_04E220: db $C7, $F0, $F0, $F2 : db $22, $BB ; 0x1EC0\u20130x1EC3: 0x2C7, 0x2F0, 0xBF0, 0xBF2\n#_04E226: db $05, $DA, $DA, $EF : db $B2, $22 ; 0x1EC4\u20130x1EC7: 0x205, 0xBDA, 0x2DA, 0x2EF\n#_04E22C: db $F7, $F6, $05, $83 : db $BB, $B3 ; 0x1EC8\u20130x1ECB: 0xBF7, 0xBF6, 0x305, 0xB83\n#_04E232: db $DB, $07, $FE, $00 : db $2B, $BC ; 0x1ECC\u20130x1ECF: 0xBDB, 0x207, 0xCFE, 0xB00\n#_04E238: db $EF, $D3, $34, $C7 : db $22, $02 ; 0x1ED0\u20130x1ED3: 0x2EF, 0x2D3, 0x234, 0x0C7\n#_04E23E: db $C8, $04, $01, $D7 : db $2C, $C2 ; 0x1ED4\u20130x1ED7: 0xCC8, 0x204, 0x201, 0xCD7\n#_04E244: db $D3, $DB, $7E, $08 : db $22, $3C ; 0x1ED8\u20130x1EDB: 0x2D3, 0x2DB, 0xC7E, 0x308\n#_04E24A: db $07, $99, $7C, $83 : db $CB, $61 ; 0x1EDC\u20130x1EDF: 0xB07, 0xC99, 0x17C, 0x683\n#_04E250: db $82, $C2, $C2, $C2 : db $31, $11 ; 0x1EE0\u20130x1EE3: 0x182, 0x3C2, 0x1C2, 0x1C2\n#_04E256: db $30, $AA, $B1, $7D : db $76, $23 ; 0x1EE4\u20130x1EE7: 0x630, 0x7AA, 0x3B1, 0x27D\n#_04E25C: db $D3, $06, $99, $4E : db $21, $B1 ; 0x1EE8\u20130x1EEB: 0x1D3, 0x206, 0x199, 0xB4E\n#_04E262: db $34, $86, $34, $34 : db $0B, $00 ; 0x1EEC\u20130x1EEF: 0xB34, 0x086, 0x034, 0x034\n#_04E268: db $0C, $93, $34, $42 : db $CB, $05 ; 0x1EF0\u20130x1EF3: 0xB0C, 0xC93, 0x534, 0x042\n#_04E26E: db $D3, $7E, $0D, $34 : db $03, $C0 ; 0x1EF4\u20130x1EF7: 0x3D3, 0x07E, 0x00D, 0xC34\n#_04E274: db $42, $3F, $86, $87 : db $55, $BB ; 0x1EF8\u20130x1EFB: 0x542, 0x53F, 0xB86, 0xB87\n#_04E27A: db $95, $90, $AC, $E6 : db $BB, $22 ; 0x1EFC\u20130x1EFF: 0xB95, 0xB90, 0x2AC, 0x2E6\n#_04E280: db $34, $E6, $8D, $E7 : db $02, $71 ; 0x1F00\u20130x1F03: 0x234, 0x0E6, 0x18D, 0x7E7\n#_04E286: db $FB, $A3, $E6, $EE : db $10, $22 ; 0x1F04\u20130x1F07: 0x0FB, 0x1A3, 0x2E6, 0x2EE\n#_04E28C: db $F6, $9E, $A3, $87 : db $10, $07 ; 0x1F08\u20130x1F0B: 0x0F6, 0x19E, 0x7A3, 0x087\n#_04E292: db $E6, $F4, $20, $70 : db $22, $27 ; 0x1F0C\u20130x1F0F: 0x2E6, 0x2F4, 0x720, 0x270\n#_04E298: db $64, $77, $76, $E6 : db $77, $72 ; 0x1F10\u20130x1F13: 0x764, 0x777, 0x276, 0x7E6\n#_04E29E: db $87, $29, $E6, $E6 : db $33, $22 ; 0x1F14\u20130x1F17: 0x387, 0x329, 0x2E6, 0x2E6\n#_04E2A4: db $ED, $ED, $20, $68 : db $22, $36 ; 0x1F18\u20130x1F1B: 0x2ED, 0x2ED, 0x620, 0x368\n#_04E2AA: db $D5, $AB, $69, $25 : db $16, $62 ; 0x1F1C\u20130x1F1F: 0x6D5, 0x1AB, 0x269, 0x625\n#_04E2B0: db $65, $40, $C5, $9B : db $16, $2B ; 0x1F20\u20130x1F23: 0x665, 0x140, 0xBC5, 0x29B\n#_04E2B6: db $F7, $CD, $CD, $CD : db $22, $22 ; 0x1F24\u20130x1F27: 0x2F7, 0x2CD, 0x2CD, 0x2CD\n#_04E2BC: db $C7, $C7, $46, $C7 : db $22, $B2 ; 0x1F28\u20130x1F2B: 0x2C7, 0x2C7, 0x246, 0xBC7\n#_04E2C2: db $46, $D7, $C8, $35 : db $B2, $05 ; 0x1F2C\u20130x1F2F: 0x246, 0xBD7, 0x5C8, 0x035\n#_04E2C8: db $E6, $A2, $10, $11 : db $26, $BB ; 0x1F30\u20130x1F33: 0x6E6, 0x2A2, 0xB10, 0xB11\n#_04E2CE: db $DD, $42, $51, $CD : db $25, $12 ; 0x1F34\u20130x1F37: 0x5DD, 0x242, 0x251, 0x1CD\n#_04E2D4: db $EF, $8A, $88, $9D : db $23, $75 ; 0x1F38\u20130x1F3B: 0x3EF, 0x28A, 0x588, 0x79D\n#_04E2DA: db $79, $AB, $04, $51 : db $B6, $37 ; 0x1F3C\u20130x1F3F: 0x679, 0xBAB, 0x704, 0x351\n#_04E2E0: db $51, $65, $65, $9E : db $71, $1B ; 0x1F40\u20130x1F43: 0x151, 0x765, 0xB65, 0x19E\n#_04E2E6: db $13, $B1, $B9, $15 : db $CB, $BC ; 0x1F44\u20130x1F47: 0xB13, 0xCB1, 0xCB9, 0xB15\n#_04E2EC: db $B1, $BB, $CD, $D8 : db $BB, $22 ; 0x1F48\u20130x1F4B: 0xBB1, 0xBBB, 0x2CD, 0x2D8\n#_04E2F2: db $C8, $C8, $1A, $1C : db $BB, $CC ; 0x1F4C\u20130x1F4F: 0xBC8, 0xBC8, 0xC1A, 0xC1C\n#_04E2F8: db $D0, $A8, $D7, $FF : db $BB, $22 ; 0x1F50\u20130x1F53: 0xBD0, 0xBA8, 0x2D7, 0x2FF\n#_04E2FE: db $C7, $B5, $D4, $A9 : db $2B, $BB ; 0x1F54\u20130x1F57: 0xBC7, 0x2B5, 0xBD4, 0xBA9\n#_04E304: db $A9, $D9, $20, $CA : db $BB, $CB ; 0x1F58\u20130x1F5B: 0xBA9, 0xBD9, 0xB20, 0xCCA\n#_04E30A: db $A0, $A3, $FF, $C7 : db $BB, $22 ; 0x1F5C\u20130x1F5F: 0xBA0, 0xBA3, 0x2FF, 0x2C7\n#_04E310: db $C7, $1D, $C7, $12 : db $2C, $2C ; 0x1F60\u20130x1F63: 0xCC7, 0x21D, 0xCC7, 0x212\n#_04E316: db $DD, $C7, $12, $D7 : db $22, $C2 ; 0x1F64\u20130x1F67: 0x2DD, 0x2C7, 0x212, 0xCD7\n#_04E31C: db $C7, $A4, $BC, $9E : db $2B, $BB ; 0x1F68\u20130x1F6B: 0xBC7, 0x2A4, 0xBBC, 0xB9E\n#_04E322: db $A8, $A9, $EF, $CE : db $BB, $22 ; 0x1F6C\u20130x1F6F: 0xBA8, 0xBA9, 0x2EF, 0x2CE\n#_04E328: db $D7, $A3, $F6, $F6 : db $BB, $22 ; 0x1F70\u20130x1F73: 0xBD7, 0xBA3, 0x2F6, 0x2F6\n#_04E32E: db $C7, $D7, $C2, $12 : db $2B, $BC ; 0x1F74\u20130x1F77: 0xBC7, 0x2D7, 0xCC2, 0xB12\n#_04E334: db $D4, $C7, $D7, $D7 : db $22, $2B ; 0x1F78\u20130x1F7B: 0x2D4, 0x2C7, 0xBD7, 0x2D7\n#_04E33A: db $BC, $CD, $D9, $CD : db $B2, $22 ; 0x1F7C\u20130x1F7F: 0x2BC, 0xBCD, 0x2D9, 0x2CD\n#_04E340: db $EF, $A0, $D4, $A1 : db $2B, $2B ; 0x1F80\u20130x1F83: 0xBEF, 0x2A0, 0xBD4, 0x2A1\n#_04E346: db $A4, $D7, $C7, $DF : db $B2, $22 ; 0x1F84\u20130x1F87: 0x2A4, 0xBD7, 0x2C7, 0x2DF\n#_04E34C: db $CD, $DF, $CD, $E4 : db $22, $22 ; 0x1F88\u20130x1F8B: 0x2CD, 0x2DF, 0x2CD, 0x2E4\n#_04E352: db $4F, $04, $8D, $8D : db $73, $77 ; 0x1F8C\u20130x1F8F: 0x34F, 0x704, 0x78D, 0x78D\n#_04E358: db $08, $05, $AA, $69 : db $51, $66 ; 0x1F90\u20130x1F93: 0x108, 0x505, 0x6AA, 0x669\n#_04E35E: db $8D, $51, $52, $4F : db $77, $77 ; 0x1F94\u20130x1F97: 0x78D, 0x751, 0x752, 0x74F\n#_04E364: db $65, $25, $FB, $09 : db $1C, $25 ; 0x1F98\u20130x1F9B: 0xC65, 0x125, 0x5FB, 0x209\n#_04E36A: db $B9, $2A, $C5, $2D : db $27, $21 ; 0x1F9C\u20130x1F9F: 0x7B9, 0x22A, 0x1C5, 0x22D\n#_04E370: db $EE, $16, $FE, $20 : db $13, $25 ; 0x1FA0\u20130x1FA3: 0x3EE, 0x116, 0x5FE, 0x220\n#_04E376: db $61, $C6, $E6, $83 : db $10, $21 ; 0x1FA4\u20130x1FA7: 0x061, 0x1C6, 0x1E6, 0x283\n#_04E37C: db $97, $4F, $04, $63 : db $37, $31 ; 0x1FA8\u20130x1FAB: 0x797, 0x34F, 0x104, 0x363\n#_04E382: db $E6, $E2, $90, $C4 : db $22, $20 ; 0x1FAC\u20130x1FAF: 0x2E6, 0x2E2, 0x090, 0x2C4\n#_04E388: db $07, $F8, $87, $77 : db $36, $77 ; 0x1FB0\u20130x1FB3: 0x607, 0x3F8, 0x787, 0x777\n#_04E38E: db $7C, $90, $E8, $E6 : db $72, $62 ; 0x1FB4\u20130x1FB7: 0x27C, 0x790, 0x2E8, 0x6E6\n#_04E394: db $D5, $E4, $7C, $E6 : db $06, $72 ; 0x1FB8\u20130x1FBB: 0x6D5, 0x0E4, 0x27C, 0x7E6\n#_04E39A: db $E6, $25, $C6, $2C : db $22, $0C ; 0x1FBC\u20130x1FBF: 0x2E6, 0x225, 0xCC6, 0x02C\n#_04E3A0: db $26, $2E, $30, $30 : db $CC, $CC ; 0x1FC0\u20130x1FC3: 0xC26, 0xC2E, 0xC30, 0xC30\n#_04E3A6: db $2B, $34, $35, $36 : db $CC, $CC ; 0x1FC4\u20130x1FC7: 0xC2B, 0xC34, 0xC35, 0xC36\n#_04E3AC: db $30, $3F, $26, $26 : db $CC, $CC ; 0x1FC8\u20130x1FCB: 0xC30, 0xC3F, 0xC26, 0xC26\n#_04E3B2: db $26, $26, $47, $49 : db $CC, $CC ; 0x1FCC\u20130x1FCF: 0xC26, 0xC26, 0xC47, 0xC49\n#_04E3B8: db $26, $4B, $2D, $26 : db $CC, $CC ; 0x1FD0\u20130x1FD3: 0xC26, 0xC4B, 0xC2D, 0xC26\n#_04E3BE: db $26, $52, $53, $55 : db $CC, $CC ; 0x1FD4\u20130x1FD7: 0xC26, 0xC52, 0xC53, 0xC55\n#_04E3C4: db $56, $5C, $5A, $62 : db $CC, $CC ; 0x1FD8\u20130x1FDB: 0xC56, 0xC5C, 0xC5A, 0xC62\n#_04E3CA: db $56, $64, $61, $64 : db $CC, $CC ; 0x1FDC\u20130x1FDF: 0xC56, 0xC64, 0xC61, 0xC64\n#_04E3D0: db $56, $70, $69, $70 : db $C2, $C2 ; 0x1FE0\u20130x1FE3: 0x256, 0xC70, 0x269, 0xC70\n#_04E3D6: db $70, $70, $68, $70 : db $22, $C2 ; 0x1FE4\u20130x1FE7: 0x270, 0x270, 0x268, 0xC70\n#_04E3DC: db $70, $70, $70, $70 : db $22, $22 ; 0x1FE8\u20130x1FEB: 0x270, 0x270, 0x270, 0x270\n#_04E3E2: db $68, $70, $69, $70 : db $C2, $C2 ; 0x1FEC\u20130x1FEF: 0x268, 0xC70, 0x269, 0xC70\n#_04E3E8: db $70, $69, $68, $70 : db $2C, $C2 ; 0x1FF0\u20130x1FF3: 0xC70, 0x269, 0x268, 0xC70\n#_04E3EE: db $70, $70, $68, $70 : db $22, $C2 ; 0x1FF4\u20130x1FF7: 0x270, 0x270, 0x268, 0xC70\n#_04E3F4: db $70, $69, $70, $70 : db $2C, $22 ; 0x1FF8\u20130x1FFB: 0xC70, 0x269, 0x270, 0x270\n#_04E3FA: db $70, $69, $69, $70 : db $2C, $C2 ; 0x1FFC\u20130x1FFF: 0xC70, 0x269, 0x269, 0xC70\n#_04E400: db $6A, $70, $69, $69 : db $C2, $CC ; 0x2000\u20130x2003: 0x26A, 0xC70, 0xC69, 0xC69\n#_04E406: db $70, $6A, $70, $70 : db $2C, $22 ; 0x2004\u20130x2007: 0xC70, 0x26A, 0x270, 0x270\n#_04E40C: db $69, $6D, $70, $70 : db $CC, $22 ; 0x2008\u20130x200B: 0xC69, 0xC6D, 0x270, 0x270\n#_04E412: db $69, $6D, $68, $69 : db $CC, $CC ; 0x200C\u20130x200F: 0xC69, 0xC6D, 0xC68, 0xC69\n#_04E418: db $6E, $70, $70, $70 : db $C2, $22 ; 0x2010\u20130x2013: 0x26E, 0xC70, 0x270, 0x270\n#_04E41E: db $69, $70, $69, $69 : db $C2, $CC ; 0x2014\u20130x2017: 0x269, 0xC70, 0xC69, 0xC69\n#_04E424: db $70, $70, $70, $68 : db $22, $2C ; 0x2018\u20130x201B: 0x270, 0x270, 0xC70, 0x268\n#_04E42A: db $68, $70, $69, $6A : db $C2, $CC ; 0x201C\u20130x201F: 0x268, 0xC70, 0xC69, 0xC6A\n#_04E430: db $70, $70, $68, $68 : db $22, $CC ; 0x2020\u20130x2023: 0x270, 0x270, 0xC68, 0xC68\n#_04E436: db $70, $68, $70, $6B : db $2C, $2C ; 0x2024\u20130x2027: 0xC70, 0x268, 0xC70, 0x26B\n#_04E43C: db $6C, $69, $68, $69 : db $CC, $CC ; 0x2028\u20130x202B: 0xC6C, 0xC69, 0xC68, 0xC69\n#_04E442: db $6C, $6A, $69, $70 : db $CC, $C2 ; 0x202C\u20130x202F: 0xC6C, 0xC6A, 0x269, 0xC70\n#_04E448: db $70, $70, $70, $6A : db $22, $2C ; 0x2030\u20130x2033: 0x270, 0x270, 0xC70, 0x26A\n#_04E44E: db $70, $70, $6F, $71 : db $22, $CC ; 0x2034\u20130x2037: 0x270, 0x270, 0xC6F, 0xC71\n#_04E454: db $77, $73, $74, $E3 : db $CC, $C0 ; 0x2038\u20130x203B: 0xC77, 0xC73, 0x074, 0xCE3\n#_04E45A: db $74, $C8, $78, $7D : db $C0, $CC ; 0x203C\u20130x203F: 0x074, 0xCC8, 0xC78, 0xC7D\n#_04E460: db $77, $76, $7E, $34 : db $C1, $C0 ; 0x2040\u20130x2043: 0x177, 0xC76, 0x07E, 0xC34\n#_04E466: db $81, $7E, $E7, $C9 : db $CC, $10 ; 0x2044\u20130x2047: 0xC81, 0xC7E, 0x0E7, 0x1C9\n#_04E46C: db $84, $E1, $E2, $7D : db $C0, $0C ; 0x2048\u20130x204B: 0x084, 0xCE1, 0xCE2, 0x07D\n#_04E472: db $D5, $34, $8E, $88 : db $20, $CC ; 0x204C\u20130x204F: 0x0D5, 0x234, 0xC8E, 0xC88\n#_04E478: db $90, $91, $91, $8B : db $CC, $CC ; 0x2050\u20130x2053: 0xC90, 0xC91, 0xC91, 0xC8B\n#_04E47E: db $F9, $A0, $84, $95 : db $26, $CC ; 0x2054\u20130x2057: 0x6F9, 0x2A0, 0xC84, 0xC95\n#_04E484: db $90, $9F, $90, $9A : db $CC, $CC ; 0x2058\u20130x205B: 0xC90, 0xC9F, 0xC90, 0xC9A\n#_04E48A: db $A2, $A4, $CD, $A0 : db $CC, $26 ; 0x205C\u20130x205F: 0xCA2, 0xCA4, 0x6CD, 0x2A0\n#_04E490: db $AB, $90, $90, $90 : db $CC, $CC ; 0x2060\u20130x2063: 0xCAB, 0xC90, 0xC90, 0xC90\n#_04E496: db $AE, $79, $A4, $0E : db $CC, $C3 ; 0x2064\u20130x2067: 0xCAE, 0xC79, 0x3A4, 0xC0E\n#_04E49C: db $34, $BA, $BC, $BD : db $0C, $CC ; 0x2068\u20130x206B: 0xC34, 0x0BA, 0xCBC, 0xCBD\n#_04E4A2: db $34, $A9, $A4, $BF : db $0C, $CC ; 0x206C\u20130x206F: 0xC34, 0x0A9, 0xCA4, 0xCBF\n#_04E4A8: db $66, $4F, $C0, $84 : db $17, $CC ; 0x2070\u20130x2073: 0x766, 0x14F, 0xCC0, 0xC84\n#_04E4AE: db $E2, $7D, $C5, $51 : db $0C, $C7 ; 0x2074\u20130x2077: 0xCE2, 0x07D, 0x7C5, 0xC51\n#_04E4B4: db $AA, $AA, $AA, $AA : db $66, $66 ; 0x2078\u20130x207B: 0x6AA, 0x6AA, 0x6AA, 0x6AA\n#_04E4BA: db $C6, $51, $C8, $7C : db $C7, $CC ; 0x207C\u20130x207F: 0x7C6, 0xC51, 0xCC8, 0xC7C\n#_04E4C0: db $34, $C9, $CD, $CB : db $0C, $CC ; 0x2080\u20130x2083: 0xC34, 0x0C9, 0xCCD, 0xCCB\n#_04E4C6: db $CB, $C2, $34, $79 : db $CC, $01 ; 0x2084\u20130x2087: 0xCCB, 0xCC2, 0x134, 0x079\n#_04E4CC: db $CE, $A4, $85, $B9 : db $CC, $CC ; 0x2088\u20130x208B: 0xCCE, 0xCA4, 0xC85, 0xCB9\n#_04E4D2: db $A5, $A9, $D4, $C9 : db $1C, $CC ; 0x208C\u20130x208F: 0xCA5, 0x1A9, 0xCD4, 0xCC9\n#_04E4D8: db $C1, $B9, $D8, $CB : db $CC, $CC ; 0x2090\u20130x2093: 0xCC1, 0xCB9, 0xCD8, 0xCCB\n#_04E4DE: db $C9, $71, $86, $34 : db $CC, $C0 ; 0x2094\u20130x2097: 0xCC9, 0xC71, 0x086, 0xC34\n#_04E4E4: db $AB, $CB, $C8, $DB : db $0C, $CC ; 0x2098\u20130x209B: 0xCAB, 0x0CB, 0xCC8, 0xCDB\n#_04E4EA: db $34, $CE, $CB, $C0 : db $0C, $CC ; 0x209C\u20130x209F: 0xC34, 0x0CE, 0xCCB, 0xCC0\n#_04E4F0: db $E2, $DD, $DE, $E3 : db $CC, $CC ; 0x20A0\u20130x20A3: 0xCE2, 0xCDD, 0xCDE, 0xCE3\n#_04E4F6: db $9C, $D3, $E4, $CB : db $CC, $CC ; 0x20A4\u20130x20A7: 0xC9C, 0xCD3, 0xCE4, 0xCCB\n#_04E4FC: db $C9, $DA, $C3, $D3 : db $CC, $CC ; 0x20A8\u20130x20AB: 0xCC9, 0xCDA, 0xCC3, 0xCD3\n#_04E502: db $EE, $F0, $D3, $AA : db $CC, $CC ; 0x20AC\u20130x20AF: 0xCEE, 0xCF0, 0xCD3, 0xCAA\n#_04E508: db $C3, $DF, $E5, $C9 : db $CC, $CC ; 0x20B0\u20130x20B3: 0xCC3, 0xCDF, 0xCE5, 0xCC9\n#_04E50E: db $F5, $F6, $77, $FB : db $CC, $CC ; 0x20B4\u20130x20B7: 0xCF5, 0xCF6, 0xC77, 0xCFB\n#_04E514: db $34, $7D, $78, $1F : db $0C, $6B ; 0x20B8\u20130x20BB: 0xC34, 0x07D, 0xB78, 0x61F\n#_04E51A: db $C7, $FC, $FD, $FE : db $2C, $CC ; 0x20BC\u20130x20BF: 0xCC7, 0x2FC, 0xCFD, 0xCFE\n#_04E520: db $C7, $7A, $78, $C1 : db $26, $6C ; 0x20C0\u20130x20C3: 0x6C7, 0x27A, 0xC78, 0x6C1\n#_04E526: db $B9, $C7, $34, $00 : db $C2, $0D ; 0x20C4\u20130x20C7: 0x2B9, 0xCC7, 0xD34, 0x000\n#_04E52C: db $CD, $24, $26, $CD : db $23, $32 ; 0x20C8\u20130x20CB: 0x3CD, 0x224, 0x226, 0x3CD\n#_04E532: db $C7, $C7, $FC, $C7 : db $22, $C2 ; 0x20CC\u20130x20CF: 0x2C7, 0x2C7, 0x2FC, 0xCC7\n#_04E538: db $CD, $8D, $B9, $00 : db $2C, $CD ; 0x20D0\u20130x20D3: 0xCCD, 0x28D, 0xDB9, 0xC00\n#_04E53E: db $FE, $FD, $FF, $CD : db $CC, $22 ; 0x20D4\u20130x20D7: 0xCFE, 0xCFD, 0x2FF, 0x2CD\n#_04E544: db $C6, $FD, $C7, $76 : db $2C, $2C ; 0x20D8\u20130x20DB: 0xCC6, 0x2FD, 0xCC7, 0x276\n#_04E54A: db $87, $34, $35, $EB : db $C0, $21 ; 0x20DC\u20130x20DF: 0x087, 0xC34, 0x135, 0x2EB\n#_04E550: db $0C, $CD, $C7, $0B : db $D2, $2D ; 0x20E0\u20130x20E3: 0x20C, 0xDCD, 0xDC7, 0x20B\n#_04E556: db $C1, $B9, $FD, $C7 : db $CC, $C2 ; 0x20E4\u20130x20E7: 0xCC1, 0xCB9, 0x2FD, 0xCC7\n#_04E55C: db $CD, $C7, $C7, $CD : db $22, $22 ; 0x20E8\u20130x20EB: 0x2CD, 0x2C7, 0x2C7, 0x2CD\n#_04E562: db $C7, $ED, $04, $05 : db $21, $DD ; 0x20EC\u20130x20EF: 0x1C7, 0x2ED, 0xD04, 0xD05\n#_04E568: db $C7, $ED, $05, $0A : db $21, $DD ; 0x20F0\u20130x20F3: 0x1C7, 0x2ED, 0xD05, 0xD0A\n#_04E56E: db $04, $05, $CD, $36 : db $DD, $22 ; 0x20F4\u20130x20F7: 0xD04, 0xD05, 0x2CD, 0x236\n#_04E574: db $F7, $25, $25, $C6 : db $23, $32 ; 0x20F8\u20130x20FB: 0x3F7, 0x225, 0x225, 0x3C6\n#_04E57A: db $0A, $FD, $1F, $33 : db $DC, $B2 ; 0x20FC\u20130x20FF: 0xC0A, 0xDFD, 0x21F, 0xB33\n#_04E580: db $C6, $67, $FD, $0B : db $21, $CD ; 0x2100\u20130x2103: 0x1C6, 0x267, 0xDFD, 0xC0B\n#_04E586: db $9C, $9C, $0E, $36 : db $CC, $D2 ; 0x2104\u20130x2107: 0xC9C, 0xC9C, 0x20E, 0xD36\n#_04E58C: db $F7, $CD, $31, $1F : db $22, $1B ; 0x2108\u20130x210B: 0x2F7, 0x2CD, 0xB31, 0x11F\n#_04E592: db $76, $7D, $77, $A4 : db $1C, $CC ; 0x210C\u20130x210F: 0xC76, 0x17D, 0xC77, 0xCA4\n#_04E598: db $A4, $C0, $C2, $9A : db $CC, $C3 ; 0x2110\u20130x2113: 0xCA4, 0xCC0, 0x3C2, 0xC9A\n#_04E59E: db $CD, $C7, $0A, $7D : db $22, $DC ; 0x2114\u20130x2117: 0x2CD, 0x2C7, 0xC0A, 0xD7D\n#_04E5A4: db $73, $6F, $C0, $9B : db $CC, $CC ; 0x2118\u20130x211B: 0xC73, 0xC6F, 0xCC0, 0xC9B\n#_04E5AA: db $34, $D7, $0F, $77 : db $22, $DC ; 0x211C\u20130x211F: 0x234, 0x2D7, 0xC0F, 0xD77\n#_04E5B0: db $CE, $B6, $7D, $2D : db $02, $C1 ; 0x2120\u20130x2123: 0x2CE, 0x0B6, 0x17D, 0xC2D\n#_04E5B6: db $31, $CD, $FC, $FD : db $12, $CC ; 0x2124\u20130x2127: 0x231, 0x1CD, 0xCFC, 0xCFD\n#_04E5BC: db $2D, $04, $04, $CD : db $1D, $D2 ; 0x2128\u20130x212B: 0xD2D, 0x104, 0x204, 0xDCD\n#_04E5C2: db $D5, $05, $C7, $03 : db $2D, $2D ; 0x212C\u20130x212F: 0xDD5, 0x205, 0xDC7, 0x203\n#_04E5C8: db $C7, $0A, $1F, $CD : db $2D, $B2 ; 0x2130\u20130x2133: 0xDC7, 0x20A, 0x21F, 0xBCD\n#_04E5CE: db $C7, $00, $C7, $CD : db $2D, $22 ; 0x2134\u20130x2137: 0xDC7, 0x200, 0x2C7, 0x2CD\n#_04E5D4: db $08, $04, $04, $04 : db $DD, $DD ; 0x2138\u20130x213B: 0xD08, 0xD04, 0xD04, 0xD04\n#_04E5DA: db $CD, $FE, $C7, $1F : db $2C, $2B ; 0x213C\u20130x213F: 0xCCD, 0x2FE, 0xBC7, 0x21F\n#_04E5E0: db $C7, $08, $D7, $04 : db $2D, $2D ; 0x2140\u20130x2143: 0xDC7, 0x208, 0xDD7, 0x204\n#_04E5E6: db $03, $D2, $03, $C6 : db $D2, $D2 ; 0x2144\u20130x2147: 0x203, 0xDD2, 0x203, 0xDC6\n#_04E5EC: db $C7, $0A, $0C, $08 : db $2D, $DD ; 0x2148\u20130x214B: 0xDC7, 0x20A, 0xD0C, 0xD08\n#_04E5F2: db $CD, $04, $0A, $C7 : db $2D, $D2 ; 0x214C\u20130x214F: 0xDCD, 0x204, 0x20A, 0xDC7\n#_04E5F8: db $CD, $FF, $F8, $04 : db $22, $2D ; 0x2150\u20130x2153: 0x2CD, 0x2FF, 0xDF8, 0x204\n#_04E5FE: db $CD, $C7, $CD, $35 : db $22, $22 ; 0x2154\u20130x2157: 0x2CD, 0x2C7, 0x2CD, 0x235\n#_04E604: db $B9, $36, $13, $13 : db $C2, $33 ; 0x2158\u20130x215B: 0x2B9, 0xC36, 0x313, 0x313\n#_04E60A: db $2D, $CD, $9C, $C1 : db $12, $CC ; 0x215C\u20130x215F: 0x22D, 0x1CD, 0xC9C, 0xCC1\n#_04E610: db $B9, $34, $0E, $CC : db $C0, $12 ; 0x2160\u20130x2163: 0x0B9, 0xC34, 0x20E, 0x1CC\n#_04E616: db $2D, $A4, $11, $A9 : db $1C, $D9 ; 0x2164\u20130x2167: 0xC2D, 0x1A4, 0x911, 0xDA9\n#_04E61C: db $0A, $2A, $9B, $9C : db $D3, $CC ; 0x2168\u20130x216B: 0x30A, 0xD2A, 0xC9B, 0xC9C\n#_04E622: db $11, $11, $C1, $B9 : db $DD, $CC ; 0x216C\u20130x216F: 0xD11, 0xD11, 0xCC1, 0xCB9\n#_04E628: db $B0, $ED, $C7, $CE : db $21, $22 ; 0x2170\u20130x2173: 0x1B0, 0x2ED, 0x2C7, 0x2CE\n#_04E62E: db $18, $A4, $11, $10 : db $DC, $DD ; 0x2174\u20130x2177: 0xC18, 0xDA4, 0xD11, 0xD10\n#_04E634: db $C2, $C2, $ED, $36 : db $CC, $12 ; 0x2178\u20130x217B: 0xCC2, 0xCC2, 0x2ED, 0x136\n#_04E63A: db $25, $25, $CD, $03 : db $33, $2D ; 0x217C\u20130x217F: 0x325, 0x325, 0xDCD, 0x203\n#_04E640: db $CD, $19, $9A, $05 : db $2D, $3D ; 0x2180\u20130x2183: 0xDCD, 0x219, 0xD9A, 0x305\n#_04E646: db $71, $71, $DC, $17 : db $CC, $CD ; 0x2184\u20130x2187: 0xC71, 0xC71, 0xDDC, 0xC17\n#_04E64C: db $C2, $DE, $36, $34 : db $CC, $23 ; 0x2188\u20130x218B: 0xCC2, 0xCDE, 0x336, 0x234\n#_04E652: db $F8, $79, $C0, $C0 : db $CC, $CC ; 0x218C\u20130x218F: 0xCF8, 0xC79, 0xCC0, 0xCC0\n#_04E658: db $C0, $10, $C2, $ED : db $CD, $C1 ; 0x2190\u20130x2193: 0xDC0, 0xC10, 0x1C2, 0xCED\n#_04E65E: db $CE, $E1, $34, $70 : db $20, $0C ; 0x2194\u20130x2197: 0x0CE, 0x2E1, 0xC34, 0x070\n#_04E664: db $11, $1B, $F4, $72 : db $DD, $CC ; 0x2198\u20130x219B: 0xD11, 0xD1B, 0xCF4, 0xC72\n#_04E66A: db $76, $7C, $EB, $04 : db $CC, $13 ; 0x219C\u20130x219F: 0xC76, 0xC7C, 0x3EB, 0x104\n#_04E670: db $9C, $E9, $0E, $19 : db $CC, $DD ; 0x21A0\u20130x21A3: 0xC9C, 0xCE9, 0xD0E, 0xD19\n#_04E676: db $D3, $78, $1A, $79 : db $CC, $DC ; 0x21A4\u20130x21A7: 0xCD3, 0xC78, 0xC1A, 0xD79\n#_04E67C: db $EB, $D0, $13, $CE : db $12, $D2 ; 0x21A8\u20130x21AB: 0x2EB, 0x1D0, 0x213, 0xDCE\n#_04E682: db $37, $D3, $A4, $A4 : db $2C, $CC ; 0x21AC\u20130x21AF: 0xC37, 0x2D3, 0xCA4, 0xCA4\n#_04E688: db $71, $E7, $6C, $EB : db $C1, $11 ; 0x21B0\u20130x21B3: 0x171, 0xCE7, 0x16C, 0x1EB\n#_04E68E: db $FA, $78, $DA, $C7 : db $CC, $02 ; 0x21B4\u20130x21B7: 0xCFA, 0xC78, 0x2DA, 0x0C7\n#_04E694: db $D4, $C8, $6C, $7D : db $20, $1C ; 0x21B8\u20130x21BB: 0x0D4, 0x2C8, 0xC6C, 0x17D\n#_04E69A: db $78, $E7, $51, $0A : db $C1, $1D ; 0x21BC\u20130x21BF: 0x178, 0xCE7, 0xD51, 0x10A\n#_04E6A0: db $ED, $C7, $C7, $D7 : db $12, $22 ; 0x21C0\u20130x21C3: 0x2ED, 0x1C7, 0x2C7, 0x2D7\n#_04E6A6: db $0A, $CD, $DF, $04 : db $D2, $2D ; 0x21C4\u20130x21C7: 0x20A, 0xDCD, 0xDDF, 0x204\n#_04E6AC: db $C1, $87, $08, $25 : db $CC, $D3 ; 0x21C8\u20130x21CB: 0xCC1, 0xC87, 0x308, 0xD25\n#_04E6B2: db $A0, $DF, $84, $87 : db $32, $CC ; 0x21CC\u20130x21CF: 0x2A0, 0x3DF, 0xC84, 0xC87\n#_04E6B8: db $01, $36, $9B, $04 : db $D2, $CD ; 0x21D0\u20130x21D3: 0x201, 0xD36, 0xD9B, 0xC04\n#_04E6BE: db $85, $7C, $0B, $07 : db $CC, $DD ; 0x21D4\u20130x21D7: 0xC85, 0xC7C, 0xD0B, 0xD07\n#_04E6C4: db $C8, $6D, $9B, $0F : db $01, $CD ; 0x21D8\u20130x21DB: 0x1C8, 0x06D, 0xD9B, 0xC0F\n#_04E6CA: db $C1, $7C, $5C, $37 : db $CC, $12 ; 0x21DC\u20130x21DF: 0xCC1, 0xC7C, 0x25C, 0x137\n#_04E6D0: db $79, $1B, $19, $12 : db $CD, $DD ; 0x21E0\u20130x21E3: 0xD79, 0xC1B, 0xD19, 0xD12\n#_04E6D6: db $1F, $BC, $BC, $CE : db $D2, $20 ; 0x21E4\u20130x21E7: 0x21F, 0xDBC, 0x0BC, 0x2CE\n#_04E6DC: db $9B, $11, $12, $6F : db $CD, $DC ; 0x21E8\u20130x21EB: 0xD9B, 0xC11, 0xC12, 0xD6F\n#_04E6E2: db $DA, $11, $DA, $72 : db $CD, $CC ; 0x21EC\u20130x21EF: 0xDDA, 0xC11, 0xCDA, 0xC72\n#_04E6E8: db $C0, $C2, $ED, $71 : db $CC, $1C ; 0x21F0\u20130x21F3: 0xCC0, 0xCC2, 0xCED, 0x171\n#_04E6EE: db $11, $71, $F3, $77 : db $DC, $CC ; 0x21F4\u20130x21F7: 0xC11, 0xD71, 0xCF3, 0xC77\n#_04E6F4: db $F3, $78, $F7, $F4 : db $CC, $CC ; 0x21F8\u20130x21FB: 0xCF3, 0xC78, 0xCF7, 0xCF4\n#_04E6FA: db $C2, $E6, $78, $7D : db $C0, $CC ; 0x21FC\u20130x21FF: 0x0C2, 0xCE6, 0xC78, 0xC7D\n#_04E700: db $7C, $24, $34, $7D : db $CD, $0C ; 0x2200\u20130x2203: 0xD7C, 0xC24, 0xC34, 0x07D\n#_04E706: db $7C, $7C, $C7, $34 : db $CC, $20 ; 0x2204\u20130x2207: 0xC7C, 0xC7C, 0x0C7, 0x234\n#_04E70C: db $AD, $6C, $0C, $C7 : db $21, $D2 ; 0x2208\u20130x220B: 0x1AD, 0x26C, 0x20C, 0xDC7\n#_04E712: db $C2, $34, $E7, $78 : db $C0, $16 ; 0x220C\u20130x220F: 0x0C2, 0xC34, 0x6E7, 0x178\n#_04E718: db $FD, $0C, $1F, $D3 : db $CD, $BC ; 0x2210\u20130x2213: 0xDFD, 0xC0C, 0xC1F, 0xBD3\n#_04E71E: db $34, $E7, $25, $FC : db $31, $DC ; 0x2214\u20130x2217: 0x134, 0x3E7, 0xC25, 0xDFC\n#_04E724: db $FE, $03, $04, $1F : db $CD, $DB ; 0x2218\u20130x221B: 0xDFE, 0xC03, 0xB04, 0xD1F\n#_04E72A: db $04, $0B, $78, $ED : db $DD, $C1 ; 0x221C\u20130x221F: 0xD04, 0xD0B, 0x178, 0xCED\n#_04E730: db $C5, $04, $00, $AC : db $2D, $32 ; 0x2220\u20130x2223: 0xDC5, 0x204, 0x200, 0x3AC\n#_04E736: db $ED, $12, $13, $14 : db $13, $33 ; 0x2224\u20130x2227: 0x3ED, 0x112, 0x313, 0x314\n#_04E73C: db $ED, $12, $13, $13 : db $13, $33 ; 0x2228\u20130x222B: 0x3ED, 0x112, 0x313, 0x313\n#_04E742: db $34, $53, $BD, $BD : db $01, $22 ; 0x222C\u20130x222F: 0x134, 0x053, 0x2BD, 0x2BD\n#_04E748: db $C4, $6C, $51, $D0 : db $01, $12 ; 0x2230\u20130x2233: 0x1C4, 0x06C, 0x251, 0x1D0\n#_04E74E: db $D2, $0B, $0A, $D2 : db $2D, $D2 ; 0x2234\u20130x2237: 0xDD2, 0x20B, 0x20A, 0xDD2\n#_04E754: db $FE, $C7, $0A, $FF : db $C2, $D2 ; 0x2238\u20130x223B: 0x2FE, 0xCC7, 0x20A, 0xDFF\n#_04E75A: db $DB, $9B, $B9, $9B : db $0C, $CC ; 0x223C\u20130x223F: 0xCDB, 0x09B, 0xCB9, 0xC9B\n#_04E760: db $9C, $10, $2D, $2F : db $CD, $DD ; 0x2240\u20130x2243: 0xD9C, 0xC10, 0xD2D, 0xD2F\n#_04E766: db $2D, $35, $37, $34 : db $DD, $DD ; 0x2244\u20130x2247: 0xD2D, 0xD35, 0xD37, 0xD34\n#_04E76C: db $34, $3A, $34, $38 : db $DD, $DD ; 0x2248\u20130x224B: 0xD34, 0xD3A, 0xD34, 0xD38\n#_04E772: db $34, $38, $39, $34 : db $DD, $DD ; 0x224C\u20130x224F: 0xD34, 0xD38, 0xD39, 0xD34\n#_04E778: db $3E, $3F, $3F, $34 : db $DD, $D0 ; 0x2250\u20130x2253: 0xD3E, 0xD3F, 0x03F, 0xD34\n#_04E77E: db $40, $41, $48, $4A : db $DD, $DD ; 0x2254\u20130x2257: 0xD40, 0xD41, 0xD48, 0xD4A\n#_04E784: db $40, $40, $50, $40 : db $DD, $8D ; 0x2258\u20130x225B: 0xD40, 0xD40, 0xD50, 0x840\n#_04E78A: db $4A, $52, $52, $50 : db $DD, $D8 ; 0x225C\u20130x225F: 0xD4A, 0xD52, 0x852, 0xD50\n#_04E790: db $40, $53, $49, $50 : db $DD, $D8 ; 0x2260\u20130x2263: 0xD40, 0xD53, 0x849, 0xD50\n#_04E796: db $48, $50, $50, $55 : db $D8, $88 ; 0x2264\u20130x2267: 0x848, 0xD50, 0x850, 0x855\n#_04E79C: db $50, $40, $55, $55 : db $8D, $D8 ; 0x2268\u20130x226B: 0xD50, 0x840, 0x855, 0xD55\n#_04E7A2: db $5A, $54, $50, $50 : db $88, $88 ; 0x226C\u20130x226F: 0x85A, 0x854, 0x850, 0x850\n#_04E7A8: db $55, $40, $40, $5A : db $DD, $DD ; 0x2270\u20130x2273: 0xD55, 0xD40, 0xD40, 0xD5A\n#_04E7AE: db $5C, $5E, $5F, $67 : db $DD, $DD ; 0x2274\u20130x2277: 0xD5C, 0xD5E, 0xD5F, 0xD67\n#_04E7B4: db $5D, $61, $69, $5F : db $DD, $DD ; 0x2278\u20130x227B: 0xD5D, 0xD61, 0xD69, 0xD5F\n#_04E7BA: db $5F, $6B, $6D, $66 : db $DD, $DD ; 0x227C\u20130x227F: 0xD5F, 0xD6B, 0xD6D, 0xD66\n#_04E7C0: db $5F, $5D, $74, $76 : db $DD, $DD ; 0x2280\u20130x2283: 0xD5F, 0xD5D, 0xD74, 0xD76\n#_04E7C6: db $78, $5F, $5F, $79 : db $DD, $DD ; 0x2284\u20130x2287: 0xD78, 0xD5F, 0xD5F, 0xD79\n#_04E7CC: db $6A, $6C, $6D, $7C : db $DD, $DD ; 0x2288\u20130x228B: 0xD6A, 0xD6C, 0xD6D, 0xD7C\n#_04E7D2: db $5F, $89, $8B, $8A : db $DD, $DD ; 0x228C\u20130x228F: 0xD5F, 0xD89, 0xD8B, 0xD8A\n#_04E7D8: db $8E, $8F, $91, $90 : db $DD, $DD ; 0x2290\u20130x2293: 0xD8E, 0xD8F, 0xD91, 0xD90\n#_04E7DE: db $93, $93, $9C, $99 : db $DD, $DD ; 0x2294\u20130x2297: 0xD93, 0xD93, 0xD9C, 0xD99\n#_04E7E4: db $9E, $93, $9D, $99 : db $DD, $DD ; 0x2298\u20130x229B: 0xD9E, 0xD93, 0xD9D, 0xD99\n#_04E7EA: db $A2, $9F, $00, $00 : db $DD, $00 ; 0x229C\u20130x229F: 0xDA2, 0xD9F, 0x000, 0x000\n\n; =========================================================\n; FREE ROM: 0x16\n; =========================================================", + "file": "bank_04.asm" + }, + { + "name": "NULL_04E7F0", + "code": "NULL_04E7F0:\n#_04E7F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04E7F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "SmoothCurve", + "code": "SmoothCurve:\n#_04E800: dw 0, 3, 6, 9, 12, 15, 18, 21\n#_04E810: dw 25, 28, 31, 34, 37, 40, 40, 46\n#_04E820: dw 49, 53, 56, 59, 62, 65, 68, 71\n#_04E830: dw 74, 77, 80, 83, 86, 89, 92, 95\n#_04E840: dw 97, 100, 103, 106, 109, 112, 115, 117\n#_04E850: dw 120, 123, 126, 128, 131, 134, 136, 139\n#_04E860: dw 142, 144, 147, 149, 152, 155, 157, 159\n#_04E870: dw 162, 164, 167, 169, 171, 174, 176, 178\n#_04E880: dw 181, 183, 185, 187, 189, 191, 193, 195\n#_04E890: dw 197, 199, 201, 203, 205, 207, 209, 211\n#_04E8A0: dw 212, 214, 216, 217, 219, 221, 222, 224\n#_04E8B0: dw 225, 227, 228, 230, 231, 232, 234, 235\n#_04E8C0: dw 236, 237, 238, 239, 241, 242, 243, 244\n#_04E8D0: dw 244, 245, 246, 247, 248, 249, 249, 250\n#_04E8E0: dw 251, 251, 252, 252, 253, 253, 254, 254\n#_04E8F0: dw 254, 255, 255, 255, 255, 255, 255, 255\n#_04E900: dw 256, 255, 255, 255, 255, 255, 255, 255\n#_04E910: dw 254, 254, 254, 253, 253, 252, 252, 251\n#_04E920: dw 251, 250, 249, 249, 248, 247, 246, 245\n#_04E930: dw 244, 244, 243, 242, 241, 239, 238, 237\n#_04E940: dw 236, 235, 234, 232, 231, 230, 228, 227\n#_04E950: dw 225, 224, 222, 221, 219, 217, 216, 214\n#_04E960: dw 212, 211, 209, 207, 205, 203, 201, 199\n#_04E970: dw 197, 195, 193, 191, 189, 187, 185, 183\n#_04E980: dw 181, 178, 176, 174, 171, 169, 167, 164\n#_04E990: dw 162, 159, 157, 155, 152, 149, 147, 144\n#_04E9A0: dw 142, 139, 136, 134, 131, 128, 126, 123\n#_04E9B0: dw 120, 117, 115, 112, 109, 106, 103, 100\n#_04E9C0: dw 97, 95, 92, 89, 86, 83, 80, 77\n#_04E9D0: dw 74, 71, 68, 65, 62, 59, 56, 53\n#_04E9E0: dw 49, 46, 43, 40, 37, 34, 31, 28\n#_04E9F0: dw 25, 21, 18, 15, 12, 9, 6, 3\n\n; =========================================================\n\npool SpriteDraw_Hobo\n\n.oam_groups\n#_04EA00: dw -5, 3 : db $A6, $00, $00, $02\n#_04EA08: dw 3, 3 : db $A7, $00, $00, $02\n#_04EA10: dw -5, 3 : db $A6, $00, $00, $02\n#_04EA18: dw 3, 3 : db $A7, $00, $00, $02\n\n#_04EA20: dw -5, 3 : db $AB, $00, $00, $00\n#_04EA28: dw 3, 3 : db $A7, $00, $00, $02\n#_04EA30: dw -5, 3 : db $A6, $00, $00, $02\n#_04EA38: dw 3, 3 : db $A7, $00, $00, $02\n\n#_04EA40: dw 5, -11 : db $8A, $00, $00, $02\n#_04EA48: dw -5, 3 : db $AB, $00, $00, $00\n#_04EA50: dw 3, 3 : db $88, $00, $00, $02\n#_04EA58: dw -5, 3 : db $A6, $00, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "SpriteDraw_Hobo", + "code": "SpriteDraw_Hobo:\n#_04EA60: PHB\n#_04EA61: PHK\n#_04EA62: PLB\n\n#_04EA63: LDA.b #$04\n#_04EA65: STA.b $06\n#_04EA67: STZ.b $07\n\n#_04EA69: LDA.w $0DC0,X\n#_04EA6C: ASL A\n#_04EA6D: ASL A\n#_04EA6E: ASL A\n#_04EA6F: ASL A\n#_04EA70: ASL A\n#_04EA71: ADC.b #.oam_groups>>0\n#_04EA73: STA.b $08\n\n#_04EA75: LDA.b #.oam_groups>>8\n#_04EA77: ADC.b #$00\n#_04EA79: STA.b $09\n\n#_04EA7B: JSL SpriteDraw_Tabulated_player_deferred\n\n#_04EA7F: PLB\n\n#_04EA80: RTL", + "file": "bank_04.asm" + }, + { + "name": "Landmine_CheckHammer", + "code": "Landmine_CheckHammer:\n#_04EA81: LDA.w $0301\n#_04EA84: AND.b #$0A\n#_04EA86: BEQ .not_hammering\n\n#_04EA88: LDA.b $44\n#_04EA8A: CMP.b #$80\n#_04EA8C: BEQ .not_hammering\n\n#_04EA8E: JSL SetupActionHitbox_long\n#_04EA92: JSL Sprite_SetupHitbox_long\n#_04EA96: JSL CheckIfHitBoxesOverlap_long\n\n#_04EA9A: RTL", + "file": "bank_04.asm" + }, + { + "name": "NRURURU", + "code": "NRURURU:\n#_04EA9D: LDA.b $F2\n#_04EA9F: AND.b #$10\n#_04EAA1: BNE .no_r_press\n\n#_04EAA3: JMP.w DebugHandleNonBAGE\n\n.no_r_press\n#_04EAA6: REP #$20\n\n#_04EAA8: LDA.l $7003D9\n#_04EAAC: CMP.w #$0001\n#_04EAAF: BNE DebugHandleNonBAGE\n\n#_04EAB1: LDA.l $7003DB\n#_04EAB5: CMP.w #$0000\n#_04EAB8: BNE DebugHandleNonBAGE\n\n#_04EABA: LDA.l $7003DD\n#_04EABE: CMP.w #$0006\n#_04EAC1: BNE DebugHandleNonBAGE\n\n#_04EAC3: LDA.l $7003DF\n#_04EAC7: CMP.w #$0004\n#_04EACA: BNE DebugHandleNonBAGE\n\n#_04EACC: SEP #$20\n\n#_04EACE: LDA.b #$01\n#_04EAD0: STA.l $7EF37B\n\n#_04EAD4: LDA.b $F6\n#_04EAD6: JSL BAGE_HandleSword\n\n#_04EADA: LDA.l $7EF359\n#_04EADE: CMP.b #$04\n#_04EAE0: BNE .dont_change_sword\n\n#_04EAE2: LDA.b #$03\n#_04EAE4: STA.l $7EF35A\n\n#_04EAE8: DEC A\n#_04EAE9: STA.l $7EF35B\n\n.dont_change_sword\n#_04EAED: LDA.b $F4\n#_04EAEF: BPL .dont_toggle_oob\n\n#_04EAF1: LDA.w $037F\n#_04EAF4: EOR.b #$01\n#_04EAF6: STA.w $037F\n\n.dont_toggle_oob\n#_04EAF9: BIT.b $F4\n#_04EAFB: BVC .exit\n\n#_04EAFD: LDA.b #$FF\n#_04EAFF: STA.l $7EF372\n#_04EB03: STA.l $7EF373\n#_04EB07: STA.l $7EF375\n#_04EB0B: STA.l $7EF376\n\n#_04EB0F: CLC\n#_04EB10: ADC.l $7EF360\n#_04EB14: STA.l $7EF360\n\n#_04EB18: LDA.l $7EF361\n#_04EB1C: ADC.b #$00\n#_04EB1E: STA.l $7EF361\n\n#_04EB22: LDA.b #$09\n#_04EB24: STA.l $7EF36F\n\n.exit\n#_04EB28: RTL", + "file": "bank_04.asm" + }, + { + "name": "DebugHandleNonBAGE", + "code": "DebugHandleNonBAGE:\n#_04EB29: SEP #$20\n\n#_04EB2B: LDA.b $F3\n#_04EB2D: AND.b #$10\n#_04EB2F: BEQ .exit\n\n#_04EB31: LDA.b $F7\n\n; =========================================================\n\n#BAGE_HandleSword:\n#_04EB33: BPL .exit\n\n#_04EB35: LDA.l $7EF359\n#_04EB39: INC A\n#_04EB3A: CMP.b #$05\n#_04EB3C: BCC .dont_reset_sword\n\n#_04EB3E: LDA.b #$01\n\n.dont_reset_sword\n#_04EB40: STA.l $7EF359\n\n#_04EB44: LDA.l $7EF35B\n#_04EB48: INC A\n#_04EB49: CMP.b #$03\n#_04EB4B: BNE .dont_reset_mail\n\n#_04EB4D: LDA.b #$00\n\n.dont_reset_mail\n#_04EB4F: STA.l $7EF35B\n\n#_04EB53: LDA.l $7EF35A\n#_04EB57: INC A\n#_04EB58: CMP.b #$04\n#_04EB5A: BNE .dont_reset_shield\n\n#_04EB5C: LDA.b #$01\n\n.dont_reset_shield\n#_04EB5E: STA.l $7EF35A\n\n.exit\n#_04EB62: RTL", + "file": "bank_04.asm" + }, + { + "name": "Bomb_HijackSlot0ForRecoil", + "code": "Bomb_HijackSlot0ForRecoil:\n#_04EB63: LDX.b #$00\n\n#_04EB65: LDA.w $0D10,X\n#_04EB68: PHA\n\n#_04EB69: LDA.w $0D30,X\n#_04EB6C: PHA\n\n#_04EB6D: LDA.w $0D00,X\n#_04EB70: PHA\n\n#_04EB71: LDA.w $0D20,X\n#_04EB74: PHA\n\n#_04EB75: LDA.w $0F70,X\n#_04EB78: PHA\n\n#_04EB79: LDA.b $00\n#_04EB7B: STA.w $0D10,X\n\n#_04EB7E: LDA.b $01\n#_04EB80: STA.w $0D30,X\n\n#_04EB83: LDA.b $02\n#_04EB85: STA.w $0D00,X\n\n#_04EB88: LDA.b $03\n#_04EB8A: STA.w $0D20,X\n\n#_04EB8D: STZ.w $0F70,X\n\n#_04EB90: TYA\n\n#_04EB91: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_04EB95: PLA\n#_04EB96: STA.w $0F70,X\n\n#_04EB99: PLA\n#_04EB9A: STA.w $0D20,X\n\n#_04EB9D: PLA\n#_04EB9E: STA.w $0D00,X\n\n#_04EBA1: PLA\n#_04EBA2: STA.w $0D30,X\n\n#_04EBA5: PLA\n#_04EBA6: STA.w $0D10,X\n\n#_04EBA9: RTL", + "file": "bank_04.asm" + }, + { + "name": "ProjectReflexiveSpeedOntoSprite_UsingLinkCoordinates", + "code": "ProjectReflexiveSpeedOntoSprite_UsingLinkCoordinates:\n#_04EBAA: PHB\n#_04EBAB: PHK\n#_04EBAC: PLB\n\n#_04EBAD: JSL Sprite_ProjectSpeedTowardsLink_long\n\n#_04EBB1: PLB\n\n#_04EBB2: RTL", + "file": "bank_04.asm" + }, + { + "name": "SpriteDraw_ArrghusWake", + "code": "SpriteDraw_ArrghusWake:\n#_04EBE5: PHB\n#_04EBE6: PHK\n#_04EBE7: PLB\n\n#_04EBE8: LDA.w $0F50,X\n#_04EBEB: PHA\n\n#_04EBEC: LDA.w $0E80,X\n#_04EBEF: LSR A\n#_04EBF0: AND.b #$01\n#_04EBF2: TAY\n\n#_04EBF3: LDA.w .prop,Y\n#_04EBF6: STA.w $0F50,X\n\n#_04EBF9: LDA.b #$18\n\n#_04EBFB: LDA.w $0B89,X\n#_04EBFE: AND.b #$F0\n#_04EC00: STA.w $0B89,X\n\n#_04EC03: JSL SpriteDraw_AllocateOAMFromRegionC\n\n#_04EC07: REP #$20\n\n#_04EC09: LDA.w #.oam_groups\n#_04EC0C: STA.b $08\n\n#_04EC0E: SEP #$20\n\n#_04EC10: LDA.b #$06\n#_04EC12: JSL SpriteDraw_Tabulated\n\n#_04EC16: PLA\n#_04EC17: STA.w $0F50,X\n\n#_04EC1A: PLB\n\n#_04EC1B: RTL", + "file": "bank_04.asm" + }, + { + "name": "NULL_04EC1C", + "code": "NULL_04EC1C:\n#_04EC1C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC24: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC2C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC34: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC3C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC44: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC4C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC54: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC5C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC64: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC6C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC74: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC7C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC84: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC8C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC94: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04EC9C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04ECA4: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04ECAC: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04ECB4: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_04ECBC: db $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayDataPointers", + "code": "OverlayDataPointers:\n#_04ECC0: dl OverlayData_00\n#_04ECC3: dl OverlayData_01\n#_04ECC6: dl OverlayData_02\n#_04ECC9: dl OverlayData_03\n#_04ECCC: dl OverlayData_04\n#_04ECCF: dl OverlayData_05\n#_04ECD2: dl OverlayData_06\n#_04ECD5: dl OverlayData_07\n#_04ECD8: dl OverlayData_08\n#_04ECDB: dl OverlayData_09\n#_04ECDE: dl OverlayData_0A\n#_04ECE1: dl OverlayData_0B\n#_04ECE4: dl OverlayData_0C\n#_04ECE7: dl OverlayData_0D\n#_04ECEA: dl OverlayData_0E\n#_04ECED: dl OverlayData_0F\n#_04ECF0: dl OverlayData_10\n#_04ECF3: dl OverlayData_11\n#_04ECF6: dl OverlayData_12\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_00", + "code": "OverlayData_00:\n#_04ECF9: db $AC, $38, $A4 ; 0x0A4: Pit \u21f2 | { 2B, 0E } | Size: 00\n#_04ECFC: db $BC, $50, $A4 ; 0x0A4: Pit \u21f2 | { 2F, 14 } | Size: 00\n#_04ECFF: db $B0, $70, $A4 ; 0x0A4: Pit \u21f2 | { 2C, 1C } | Size: 00\n#_04ED02: db $C8, $70, $A4 ; 0x0A4: Pit \u21f2 | { 32, 1C } | Size: 00\n#_04ED05: db $94, $90, $A4 ; 0x0A4: Pit \u21f2 | { 25, 24 } | Size: 00\n#_04ED08: db $B0, $90, $A4 ; 0x0A4: Pit \u21f2 | { 2C, 24 } | Size: 00\n#_04ED0B: db $C8, $90, $A4 ; 0x0A4: Pit \u21f2 | { 32, 24 } | Size: 00\n#_04ED0E: db $94, $A8, $A4 ; 0x0A4: Pit \u21f2 | { 25, 2A } | Size: 00\n#_04ED11: db $DC, $A8, $A4 ; 0x0A4: Pit \u21f2 | { 37, 2A } | Size: 00\n#_04ED14: db $B8, $B8, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 2E } | Size: 00\n#_04ED17: db $A0, $D0, $A4 ; 0x0A4: Pit \u21f2 | { 28, 34 } | Size: 00\n#_04ED1A: db $D0, $D0, $A4 ; 0x0A4: Pit \u21f2 | { 34, 34 } | Size: 00\n#_04ED1D: db $A4, $A8, $A4 ; 0x0A4: Pit \u21f2 | { 29, 2A } | Size: 00\n#_04ED20: db $A0, $70, $A4 ; 0x0A4: Pit \u21f2 | { 28, 1C } | Size: 00\n#_04ED23: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_01", + "code": "OverlayData_01:\n#_04ED25: db $58, $58, $A4 ; 0x0A4: Pit \u21f2 | { 16, 16 } | Size: 00\n#_04ED28: db $A8, $58, $A4 ; 0x0A4: Pit \u21f2 | { 2A, 16 } | Size: 00\n#_04ED2B: db $C8, $58, $A4 ; 0x0A4: Pit \u21f2 | { 32, 16 } | Size: 00\n#_04ED2E: db $C8, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 32, 28 } | Size: 00\n#_04ED31: db $D8, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 36, 2C } | Size: 00\n#_04ED34: db $C8, $C0, $A4 ; 0x0A4: Pit \u21f2 | { 32, 30 } | Size: 00\n#_04ED37: db $30, $58, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 16 } | Size: 00\n#_04ED3A: db $48, $58, $A4 ; 0x0A4: Pit \u21f2 | { 12, 16 } | Size: 00\n#_04ED3D: db $A0, $C8, $A4 ; 0x0A4: Pit \u21f2 | { 28, 32 } | Size: 00\n#_04ED40: db $B8, $80, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 20 } | Size: 00\n#_04ED43: db $C8, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 32, 2C } | Size: 00\n#_04ED46: db $18, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 06, 12 } | Size: 00\n#_04ED49: db $A0, $D8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 36 } | Size: 00\n#_04ED4C: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_02", + "code": "OverlayData_02:\n#_04ED4E: db $B8, $80, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 20 } | Size: 00\n#_04ED51: db $C8, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 32, 2C } | Size: 00\n#_04ED54: db $18, $48, $A4 ; 0x0A4: Pit \u21f2 | { 06, 12 } | Size: 00\n#_04ED57: db $A0, $D8, $A4 ; 0x0A4: Pit \u21f2 | { 28, 36 } | Size: 00\n#_04ED5A: db $30, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 16 } | Size: 00\n#_04ED5D: db $48, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 12, 16 } | Size: 00\n#_04ED60: db $A0, $C8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 32 } | Size: 00\n#_04ED63: db $C8, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 32, 28 } | Size: 00\n#_04ED66: db $D8, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 36, 2C } | Size: 00\n#_04ED69: db $C8, $C0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 32, 30 } | Size: 00\n#_04ED6C: db $58, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 16, 16 } | Size: 00\n#_04ED6F: db $A8, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2A, 16 } | Size: 00\n#_04ED72: db $C8, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 32, 16 } | Size: 00\n#_04ED75: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_03", + "code": "OverlayData_03:\n#_04ED77: db $B8, $38, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 0E } | Size: 00\n#_04ED7A: db $98, $50, $A4 ; 0x0A4: Pit \u21f2 | { 26, 14 } | Size: 00\n#_04ED7D: db $D8, $50, $A4 ; 0x0A4: Pit \u21f2 | { 36, 14 } | Size: 00\n#_04ED80: db $B8, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 28 } | Size: 00\n#_04ED83: db $20, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 08, 28 } | Size: 00\n#_04ED86: db $30, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 2C } | Size: 00\n#_04ED89: db $40, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 10, 2C } | Size: 00\n#_04ED8C: db $50, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 14, 28 } | Size: 00\n#_04ED8F: db $A0, $70, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 1C } | Size: 00\n#_04ED92: db $B8, $70, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 1C } | Size: 00\n#_04ED95: db $D0, $70, $C7 ; 0x0C7: Floor 4 \u21f2 | { 34, 1C } | Size: 00\n#_04ED98: db $A0, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 2C } | Size: 00\n#_04ED9B: db $D0, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 34, 2C } | Size: 00\n#_04ED9E: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_04", + "code": "OverlayData_04:\n#_04EDA0: db $A0, $70, $A4 ; 0x0A4: Pit \u21f2 | { 28, 1C } | Size: 00\n#_04EDA3: db $B8, $70, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 1C } | Size: 00\n#_04EDA6: db $D0, $70, $A4 ; 0x0A4: Pit \u21f2 | { 34, 1C } | Size: 00\n#_04EDA9: db $A0, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 28, 2C } | Size: 00\n#_04EDAC: db $D0, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 34, 2C } | Size: 00\n#_04EDAF: db $20, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 08, 28 } | Size: 00\n#_04EDB2: db $30, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 2C } | Size: 00\n#_04EDB5: db $40, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 10, 2C } | Size: 00\n#_04EDB8: db $50, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 14, 28 } | Size: 00\n#_04EDBB: db $B8, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 0E } | Size: 00\n#_04EDBE: db $98, $50, $C7 ; 0x0C7: Floor 4 \u21f2 | { 26, 14 } | Size: 00\n#_04EDC1: db $D8, $50, $C7 ; 0x0C7: Floor 4 \u21f2 | { 36, 14 } | Size: 00\n#_04EDC4: db $B8, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 28 } | Size: 00\n#_04EDC7: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_05", + "code": "OverlayData_05:\n#_04EDC9: db $78, $78, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 1E } | Size: 00\n#_04EDCC: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_06", + "code": "OverlayData_06:\n#_04EDCE: db $28, $9C, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 27 } | Size: 00\n#_04EDD1: db $38, $9C, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 27 } | Size: 00\n#_04EDD4: db $38, $AC, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 2B } | Size: 00\n#_04EDD7: db $18, $AC, $A4 ; 0x0A4: Pit \u21f2 | { 06, 2B } | Size: 00\n#_04EDDA: db $18, $BC, $A4 ; 0x0A4: Pit \u21f2 | { 06, 2F } | Size: 00\n#_04EDDD: db $18, $CC, $A4 ; 0x0A4: Pit \u21f2 | { 06, 33 } | Size: 00\n#_04EDE0: db $38, $CC, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 33 } | Size: 00\n#_04EDE3: db $48, $BC, $A4 ; 0x0A4: Pit \u21f2 | { 12, 2F } | Size: 00\n#_04EDE6: db $58, $AC, $A4 ; 0x0A4: Pit \u21f2 | { 16, 2B } | Size: 00\n#_04EDE9: db $58, $CC, $A4 ; 0x0A4: Pit \u21f2 | { 16, 33 } | Size: 00\n#_04EDEC: db $28, $AC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 2B } | Size: 00\n#_04EDEF: db $28, $BC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 2F } | Size: 00\n#_04EDF2: db $28, $CC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 33 } | Size: 00\n#_04EDF5: db $28, $DC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 37 } | Size: 00\n#_04EDF8: db $48, $CC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 12, 33 } | Size: 00\n#_04EDFB: db $48, $DC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 12, 37 } | Size: 00\n#_04EDFE: db $48, $9C, $C7 ; 0x0C7: Floor 4 \u21f2 | { 12, 27 } | Size: 00\n#_04EE01: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_07", + "code": "OverlayData_07:\n#_04EE03: db $28, $AC, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 2B } | Size: 00\n#_04EE06: db $28, $BC, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 2F } | Size: 00\n#_04EE09: db $28, $CC, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 33 } | Size: 00\n#_04EE0C: db $28, $DC, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 37 } | Size: 00\n#_04EE0F: db $48, $CC, $A4 ; 0x0A4: Pit \u21f2 | { 12, 33 } | Size: 00\n#_04EE12: db $48, $DC, $A4 ; 0x0A4: Pit \u21f2 | { 12, 37 } | Size: 00\n#_04EE15: db $48, $9C, $A4 ; 0x0A4: Pit \u21f2 | { 12, 27 } | Size: 00\n#_04EE18: db $18, $AC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 06, 2B } | Size: 00\n#_04EE1B: db $18, $BC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 06, 2F } | Size: 00\n#_04EE1E: db $18, $CC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 06, 33 } | Size: 00\n#_04EE21: db $28, $9C, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 27 } | Size: 00\n#_04EE24: db $38, $9C, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0E, 27 } | Size: 00\n#_04EE27: db $38, $AC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0E, 2B } | Size: 00\n#_04EE2A: db $38, $CC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0E, 33 } | Size: 00\n#_04EE2D: db $48, $BC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 12, 2F } | Size: 00\n#_04EE30: db $58, $AC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 16, 2B } | Size: 00\n#_04EE33: db $58, $CC, $C7 ; 0x0C7: Floor 4 \u21f2 | { 16, 33 } | Size: 00\n#_04EE36: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_08", + "code": "OverlayData_08:\n#_04EE38: db $30, $68, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 1A } | Size: 00\n#_04EE3B: db $30, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 28 } | Size: 00\n#_04EE3E: db $30, $78, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 1E } | Size: 00\n#_04EE41: db $30, $90, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 24 } | Size: 00\n#_04EE44: db $78, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1E, 12 } | Size: 00\n#_04EE47: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_09", + "code": "OverlayData_09:\n#_04EE49: db $30, $78, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 1E } | Size: 00\n#_04EE4C: db $30, $90, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 24 } | Size: 00\n#_04EE4F: db $78, $48, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 12 } | Size: 00\n#_04EE52: db $30, $68, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 1A } | Size: 00\n#_04EE55: db $30, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 28 } | Size: 00\n#_04EE58: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0A", + "code": "OverlayData_0A:\n#_04EE5A: db $78, $58, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 16 } | Size: 00\n#_04EE5D: db $78, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1E, 0E } | Size: 00\n#_04EE60: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0B", + "code": "OverlayData_0B:\n#_04EE62: db $78, $38, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 0E } | Size: 00\n#_04EE65: db $78, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1E, 16 } | Size: 00\n#_04EE68: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0C", + "code": "OverlayData_0C:\n#_04EE6A: db $28, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 0A, 2C } | Size: 00\n#_04EE6D: db $38, $C8, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 32 } | Size: 00\n#_04EE70: db $40, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 10, 2C } | Size: 00\n#_04EE73: db $50, $D0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 14, 34 } | Size: 00\n#_04EE76: db $1C, $58, $A4 ; 0x0A4: Pit \u21f2 | { 07, 16 } | Size: 00\n#_04EE79: db $58, $38, $A4 ; 0x0A4: Pit \u21f2 | { 16, 0E } | Size: 00\n#_04EE7C: db $78, $58, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 16 } | Size: 00\n#_04EE7F: db $A0, $38, $A4 ; 0x0A4: Pit \u21f2 | { 28, 0E } | Size: 00\n#_04EE82: db $38, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0E, 0E } | Size: 00\n#_04EE85: db $58, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 16, 12 } | Size: 00\n#_04EE88: db $B0, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2C, 0E } | Size: 00\n#_04EE8B: db $D0, $58, $C7 ;\n#_04EE8E: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0D", + "code": "OverlayData_0D:\n#_04EE90: db $40, $B0, $A4 ; 0x0A4: Pit \u21f2 | { 10, 2C } | Size: 00\n#_04EE93: db $50, $D0, $A4 ; 0x0A4: Pit \u21f2 | { 14, 34 } | Size: 00\n#_04EE96: db $28, $B0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0A, 2C } | Size: 00\n#_04EE99: db $38, $C8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0E, 32 } | Size: 00\n#_04EE9C: db $38, $38, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 0E } | Size: 00\n#_04EE9F: db $58, $48, $A4 ; 0x0A4: Pit \u21f2 | { 16, 12 } | Size: 00\n#_04EEA2: db $B0, $38, $A4 ; 0x0A4: Pit \u21f2 | { 2C, 0E } | Size: 00\n#_04EEA5: db $D0, $58, $A4 ;\n#_04EEA8: db $1C, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 07, 16 } | Size: 00\n#_04EEAB: db $58, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 16, 0E } | Size: 00\n#_04EEAE: db $78, $58, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1E, 16 } | Size: 00\n#_04EEB1: db $A0, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 0E } | Size: 00\n#_04EEB4: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0E", + "code": "OverlayData_0E:\n#_04EEB6: db $30, $48, $A4 ; 0x0A4: Pit \u21f2 | { 0C, 12 } | Size: 00\n#_04EEB9: db $40, $48, $A4 ; 0x0A4: Pit \u21f2 | { 10, 12 } | Size: 00\n#_04EEBC: db $50, $48, $A4 ; 0x0A4: Pit \u21f2 | { 14, 12 } | Size: 00\n#_04EEBF: db $A0, $48, $A4 ; 0x0A4: Pit \u21f2 | { 28, 12 } | Size: 00\n#_04EEC2: db $B8, $A8, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 2A } | Size: 00\n#_04EEC5: db $68, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1A, 0E } | Size: 00\n#_04EEC8: db $78, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 1E, 0E } | Size: 00\n#_04EECB: db $88, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 22, 0E } | Size: 00\n#_04EECE: db $B8, $38, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 0E } | Size: 00\n#_04EED1: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_0F", + "code": "OverlayData_0F:\n#_04EED3: db $68, $38, $A4 ; 0x0A4: Pit \u21f2 | { 1A, 0E } | Size: 00\n#_04EED6: db $78, $38, $A4 ; 0x0A4: Pit \u21f2 | { 1E, 0E } | Size: 00\n#_04EED9: db $88, $38, $A4 ; 0x0A4: Pit \u21f2 | { 22, 0E } | Size: 00\n#_04EEDC: db $B8, $38, $A4 ; 0x0A4: Pit \u21f2 | { 2E, 0E } | Size: 00\n#_04EEDF: db $30, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 0C, 12 } | Size: 00\n#_04EEE2: db $40, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 10, 12 } | Size: 00\n#_04EEE5: db $50, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 14, 12 } | Size: 00\n#_04EEE8: db $A0, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 12 } | Size: 00\n#_04EEEB: db $B8, $A8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2E, 2A } | Size: 00\n#_04EEEE: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_10", + "code": "OverlayData_10:\n#_04EEF0: db $98, $30, $A4 ; 0x0A4: Pit \u21f2 | { 26, 0C } | Size: 00\n#_04EEF3: db $98, $48, $A4 ; 0x0A4: Pit \u21f2 | { 26, 12 } | Size: 00\n#_04EEF6: db $A0, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 28, 28 } | Size: 00\n#_04EEF9: db $B0, $A0, $C7 ; 0x0C7: Floor 4 \u21f2 | { 2C, 28 } | Size: 00\n#_04EEFC: db $C8, $D8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 32, 36 } | Size: 00\n#_04EEFF: db $D8, $D8, $C7 ; 0x0C7: Floor 4 \u21f2 | { 36, 36 } | Size: 00\n#_04EF02: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_11", + "code": "OverlayData_11:\n#_04EF04: db $98, $30, $C7 ; 0x0C7: Floor 4 \u21f2 | { 26, 0C } | Size: 00\n#_04EF07: db $98, $48, $C7 ; 0x0C7: Floor 4 \u21f2 | { 26, 12 } | Size: 00\n#_04EF0A: db $A0, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 28, 28 } | Size: 00\n#_04EF0D: db $B0, $A0, $A4 ; 0x0A4: Pit \u21f2 | { 2C, 28 } | Size: 00\n#_04EF10: db $C8, $D8, $A4 ; 0x0A4: Pit \u21f2 | { 32, 36 } | Size: 00\n#_04EF13: db $D8, $D8, $A4 ; 0x0A4: Pit \u21f2 | { 36, 36 } | Size: 00\n#_04EF16: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "OverlayData_12", + "code": "OverlayData_12:\n#_04EF18: db $20, $20, $A4 ; 0x0A4: Pit \u21f2 | { 08, 08 } | Size: 00\n#_04EF1B: db $18, $50, $A4 ; 0x0A4: Pit \u21f2 | { 06, 14 } | Size: 00\n#_04EF1E: db $38, $40, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 10 } | Size: 00\n#_04EF21: db $38, $58, $A4 ; 0x0A4: Pit \u21f2 | { 0E, 16 } | Size: 00\n#_04EF24: db $50, $20, $A4 ; 0x0A4: Pit \u21f2 | { 14, 08 } | Size: 00\n#_04EF27: db $50, $38, $A4 ; 0x0A4: Pit \u21f2 | { 14, 0E } | Size: 00\n#_04EF2A: db $58, $50, $A4 ; 0x0A4: Pit \u21f2 | { 16, 14 } | Size: 00\n#_04EF2D: db $FF, $FF ; End\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "RoomDraw_LayoutPointers", + "code": "RoomDraw_LayoutPointers:\n#_04EF2F: dl LayoutData_00\n#_04EF32: dl LayoutData_01\n#_04EF35: dl LayoutData_02\n#_04EF38: dl LayoutData_03\n#_04EF3B: dl LayoutData_04\n#_04EF3E: dl LayoutData_05\n#_04EF41: dl LayoutData_06\n#_04EF44: dl LayoutData_07\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_00", + "code": "LayoutData_00:\n#_04EF47: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04EF4A: db $18, $90, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 24 } | Size: 00\n#_04EF4D: db $18, $68, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 1A } | Size: 00\n#_04EF50: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04EF53: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04EF56: db $88, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 06 } | Size: 00\n#_04EF59: db $68, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 06 } | Size: 00\n#_04EF5C: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04EF5F: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04EF62: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04EF65: db $00, $78, $00 ; 0x000: Ceiling \u2194 | { 00, 1E } | Size: 00\n#_04EF68: db $00, $80, $00 ; 0x000: Ceiling \u2194 | { 00, 20 } | Size: 00\n#_04EF6B: db $00, $88, $00 ; 0x000: Ceiling \u2194 | { 00, 22 } | Size: 00\n#_04EF6E: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04EF71: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04EF74: db $78, $00, $60 ; 0x060: Ceiling \u2195 | { 1E, 00 } | Size: 00\n#_04EF77: db $80, $00, $60 ; 0x060: Ceiling \u2195 | { 20, 00 } | Size: 00\n#_04EF7A: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04EF7D: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04EF80: db $FE, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 04 }\n#_04EF83: db $FC, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 24 }\n#_04EF86: db $FE, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 24 }\n#_04EF89: db $FC, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 1A }\n#_04EF8C: db $FE, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 1A }\n#_04EF8F: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04EF92: db $FE, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 3A }\n#_04EF95: db $FD, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 04 }\n#_04EF98: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04EF9B: db $FD, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 24 }\n#_04EF9E: db $FF, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 24 }\n#_04EFA1: db $FD, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 1A }\n#_04EFA4: db $FF, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 1A }\n#_04EFA7: db $FD, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 3A }\n#_04EFAA: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04EFAD: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_01", + "code": "LayoutData_01:\n#_04EFAF: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04EFB2: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04EFB5: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04EFB8: db $88, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 06 } | Size: 00\n#_04EFBB: db $68, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 06 } | Size: 00\n#_04EFBE: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04EFC1: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04EFC4: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04EFC7: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04EFCA: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04EFCD: db $78, $00, $60 ; 0x060: Ceiling \u2195 | { 1E, 00 } | Size: 00\n#_04EFD0: db $80, $00, $60 ; 0x060: Ceiling \u2195 | { 20, 00 } | Size: 00\n#_04EFD3: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04EFD6: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04EFD9: db $FE, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 04 }\n#_04EFDC: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04EFDF: db $FE, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 3A }\n#_04EFE2: db $FD, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 04 }\n#_04EFE5: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04EFE8: db $FD, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 3A }\n#_04EFEB: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04EFEE: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_02", + "code": "LayoutData_02:\n#_04EFF0: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04EFF3: db $1A, $92, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 24 } | Size: 0A\n#_04EFF6: db $1A, $6A, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 1A } | Size: 0A\n#_04EFF9: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04EFFC: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04EFFF: db $88, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 06 } | Size: 00\n#_04F002: db $68, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 06 } | Size: 00\n#_04F005: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F008: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F00B: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F00E: db $0B, $7A, $00 ; 0x000: Ceiling \u2194 | { 02, 1E } | Size: 0E\n#_04F011: db $0B, $82, $00 ; 0x000: Ceiling \u2194 | { 02, 20 } | Size: 0E\n#_04F014: db $0B, $8A, $00 ; 0x000: Ceiling \u2194 | { 02, 22 } | Size: 0E\n#_04F017: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F01A: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F01D: db $78, $00, $60 ; 0x060: Ceiling \u2195 | { 1E, 00 } | Size: 00\n#_04F020: db $80, $00, $60 ; 0x060: Ceiling \u2195 | { 20, 00 } | Size: 00\n#_04F023: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F026: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F029: db $FE, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 04 }\n#_04F02C: db $FC, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 24 }\n#_04F02F: db $FC, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 1A }\n#_04F032: db $FE, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 3A }\n#_04F035: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F038: db $FD, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 04 }\n#_04F03B: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F03E: db $FD, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 24 }\n#_04F041: db $FD, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 1A }\n#_04F044: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F047: db $FD, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 3A }\n#_04F04A: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_03", + "code": "LayoutData_03:\n#_04F04C: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04F04F: db $9A, $92, $01 ; 0x001: Wall (top, north) \u2194 | { 26, 24 } | Size: 0A\n#_04F052: db $9A, $6A, $02 ; 0x002: Wall (top, south) \u2194 | { 26, 1A } | Size: 0A\n#_04F055: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04F058: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04F05B: db $88, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 06 } | Size: 00\n#_04F05E: db $68, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 06 } | Size: 00\n#_04F061: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F064: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F067: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F06A: db $8B, $7A, $00 ; 0x000: Ceiling \u2194 | { 22, 1E } | Size: 0E\n#_04F06D: db $8B, $82, $00 ; 0x000: Ceiling \u2194 | { 22, 20 } | Size: 0E\n#_04F070: db $8B, $8A, $00 ; 0x000: Ceiling \u2194 | { 22, 22 } | Size: 0E\n#_04F073: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F076: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F079: db $78, $00, $60 ; 0x060: Ceiling \u2195 | { 1E, 00 } | Size: 00\n#_04F07C: db $80, $00, $60 ; 0x060: Ceiling \u2195 | { 20, 00 } | Size: 00\n#_04F07F: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F082: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F085: db $FE, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 04 }\n#_04F088: db $FE, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 24 }\n#_04F08B: db $FE, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 1A }\n#_04F08E: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F091: db $FE, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 3A }\n#_04F094: db $FD, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 04 }\n#_04F097: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F09A: db $FF, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 24 }\n#_04F09D: db $FF, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 1A }\n#_04F0A0: db $FD, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 3A }\n#_04F0A3: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F0A6: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_04", + "code": "LayoutData_04:\n#_04F0A8: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04F0AB: db $18, $90, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 24 } | Size: 00\n#_04F0AE: db $18, $68, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 1A } | Size: 00\n#_04F0B1: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04F0B4: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04F0B7: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F0BA: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F0BD: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F0C0: db $00, $78, $00 ; 0x000: Ceiling \u2194 | { 00, 1E } | Size: 00\n#_04F0C3: db $00, $80, $00 ; 0x000: Ceiling \u2194 | { 00, 20 } | Size: 00\n#_04F0C6: db $00, $88, $00 ; 0x000: Ceiling \u2194 | { 00, 22 } | Size: 00\n#_04F0C9: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F0CC: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F0CF: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F0D2: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F0D5: db $FC, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 24 }\n#_04F0D8: db $FC, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 1A }\n#_04F0DB: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F0DE: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F0E1: db $FF, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 24 }\n#_04F0E4: db $FF, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 1A }\n#_04F0E7: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F0EA: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_05", + "code": "LayoutData_05:\n#_04F0EC: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04F0EF: db $18, $90, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 24 } | Size: 00\n#_04F0F2: db $18, $68, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 1A } | Size: 00\n#_04F0F5: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04F0F8: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04F0FB: db $8A, $1A, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 06 } | Size: 0A\n#_04F0FE: db $6A, $1A, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 06 } | Size: 0A\n#_04F101: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F104: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F107: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F10A: db $00, $78, $00 ; 0x000: Ceiling \u2194 | { 00, 1E } | Size: 00\n#_04F10D: db $00, $80, $00 ; 0x000: Ceiling \u2194 | { 00, 20 } | Size: 00\n#_04F110: db $00, $88, $00 ; 0x000: Ceiling \u2194 | { 00, 22 } | Size: 00\n#_04F113: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F116: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F119: db $7B, $11, $60 ; 0x060: Ceiling \u2195 | { 1E, 04 } | Size: 0D\n#_04F11C: db $83, $11, $60 ; 0x060: Ceiling \u2195 | { 20, 04 } | Size: 0D\n#_04F11F: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F122: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F125: db $FE, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 04 }\n#_04F128: db $FC, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 24 }\n#_04F12B: db $FC, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 1A }\n#_04F12E: db $FE, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 1A }\n#_04F131: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F134: db $FD, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 04 }\n#_04F137: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F13A: db $FF, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 24 }\n#_04F13D: db $FD, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 1A }\n#_04F140: db $FF, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 1A }\n#_04F143: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F146: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_06", + "code": "LayoutData_06:\n#_04F148: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04F14B: db $18, $90, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 24 } | Size: 00\n#_04F14E: db $18, $68, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 1A } | Size: 00\n#_04F151: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04F154: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04F157: db $8A, $9A, $61 ; 0x061: Wall (top, west) \u2195 | { 22, 26 } | Size: 0A\n#_04F15A: db $6A, $9A, $62 ; 0x062: Wall (top, east) \u2195 | { 1A, 26 } | Size: 0A\n#_04F15D: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F160: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F163: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F166: db $00, $78, $00 ; 0x000: Ceiling \u2194 | { 00, 1E } | Size: 00\n#_04F169: db $00, $80, $00 ; 0x000: Ceiling \u2194 | { 00, 20 } | Size: 00\n#_04F16C: db $00, $88, $00 ; 0x000: Ceiling \u2194 | { 00, 22 } | Size: 00\n#_04F16F: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F172: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F175: db $7B, $91, $60 ; 0x060: Ceiling \u2195 | { 1E, 24 } | Size: 0D\n#_04F178: db $83, $91, $60 ; 0x060: Ceiling \u2195 | { 20, 24 } | Size: 0D\n#_04F17B: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F17E: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F181: db $FC, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 24 }\n#_04F184: db $FE, $29, $00 ; 0x100: Corner (top, concave) \u259b | { 22, 24 }\n#_04F187: db $FC, $26, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 1A }\n#_04F18A: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F18D: db $FE, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 22, 3A }\n#_04F190: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F193: db $FD, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 1A, 24 }\n#_04F196: db $FF, $A9, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 24 }\n#_04F199: db $FF, $A6, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 1A }\n#_04F19C: db $FD, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 1A, 3A }\n#_04F19F: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F1A2: db $FF, $FF ; End\n\n; ---------------------------------------------------------\n", + "file": "bank_04.asm" + }, + { + "name": "LayoutData_07", + "code": "LayoutData_07:\n#_04F1A4: db $18, $10, $01 ; 0x001: Wall (top, north) \u2194 | { 06, 04 } | Size: 00\n#_04F1A7: db $18, $E8, $02 ; 0x002: Wall (top, south) \u2194 | { 06, 3A } | Size: 00\n#_04F1AA: db $08, $18, $61 ; 0x061: Wall (top, west) \u2195 | { 02, 06 } | Size: 00\n#_04F1AD: db $E8, $18, $62 ; 0x062: Wall (top, east) \u2195 | { 3A, 06 } | Size: 00\n#_04F1B0: db $00, $00, $00 ; 0x000: Ceiling \u2194 | { 00, 00 } | Size: 00\n#_04F1B3: db $00, $08, $00 ; 0x000: Ceiling \u2194 | { 00, 02 } | Size: 00\n#_04F1B6: db $00, $F8, $00 ; 0x000: Ceiling \u2194 | { 00, 3E } | Size: 00\n#_04F1B9: db $00, $00, $60 ; 0x060: Ceiling \u2195 | { 00, 00 } | Size: 00\n#_04F1BC: db $F8, $00, $60 ; 0x060: Ceiling \u2195 | { 3E, 00 } | Size: 00\n#_04F1BF: db $FC, $21, $00 ; 0x100: Corner (top, concave) \u259b | { 02, 04 }\n#_04F1C2: db $FC, $2E, $81 ; 0x101: Corner (top, concave) \u2599 | { 02, 3A }\n#_04F1C5: db $FF, $A1, $02 ; 0x102: Corner (top, concave) \u259c | { 3A, 04 }\n#_04F1C8: db $FF, $AE, $83 ; 0x103: Corner (top, concave) \u259f | { 3A, 3A }\n#_04F1CB: db $FF, $FF ; End\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "WaterOverlayData", + "code": "WaterOverlayData:\n#_04F1CD: db $1B, $A1, $C9 ; 0x0C9: Flood water (medium) \u21f2 | { 06, 28 } | Size: 0D\n#_04F1D0: db $51, $A1, $C9 ; 0x0C9: Flood water (medium) \u21f2 | { 14, 28 } | Size: 05\n#_04F1D3: db $92, $A1, $C9 ; 0x0C9: Flood water (medium) \u21f2 | { 24, 28 } | Size: 09\n#_04F1D6: db $A1, $33, $C9 ; 0x0C9: Flood water (medium) \u21f2 | { 28, 0C } | Size: 07\n#_04F1D9: db $A1, $72, $C9 ; 0x0C9: Flood water (medium) \u21f2 | { 28, 1C } | Size: 06\n#_04F1DC: db $FF, $FF ; End\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "SpecialUnderworldObjects_pushable_block", + "code": "SpecialUnderworldObjects_pushable_block:\n; roomID, tilemap index\n#_04F1DE: dw $010B, $193A ; ROOM 010B\n#_04F1E2: dw $010B, $193E\n\n#_04F1E6: dw $00A8, $36E0 ; ROOM 00A8\n\n#_04F1EA: dw $0063, $162A ; ROOM 0063\n\n#_04F1EE: dw $0083, $1514 ; ROOM 0083\n\n#_04F1F2: dw $00CA, $56B2 ; ROOM 00CA\n#_04F1F6: dw $00CA, $56BA\n\n#_04F1FA: dw $0034, $5722 ; ROOM 0034\n#_04F1FE: dw $0034, $572A\n#_04F202: dw $0034, $5826\n#_04F206: dw $0034, $5926\n\n#_04F20A: dw $0054, $482A ; ROOM 0054\n#_04F20E: dw $0054, $484A\n#_04F212: dw $0054, $542A\n\n#_04F216: dw $0066, $383C ; ROOM 0066\n\n#_04F21A: dw $0011, $465E ; ROOM 0011\n\n#_04F21E: dw $002C, $2814 ; ROOM 002C\n\n#_04F222: dw $002A, $1328 ; ROOM 002A\n\n#_04F226: dw $010B, $1942 ; ROOM 010B\n\n#_04F22A: dw $001F, $5B52 ; ROOM 001F\n\n#_04F22E: dw $0019, $100C ; ROOM 0019\n\n#_04F232: dw $010D, $4718 ; ROOM 010D\n#_04F236: dw $010D, $4724\n#_04F23A: dw $010D, $4918\n#_04F23E: dw $010D, $491C\n#_04F242: dw $010D, $4924\n#_04F246: dw $010D, $4A18\n#_04F24A: dw $010D, $4A20\n\n#_04F24E: dw $001E, $585E ; ROOM 001E\n\n#_04F252: dw $009E, $13A4 ; ROOM 009E\n#_04F256: dw $009E, $1858\n#_04F25A: dw $009E, $179C\n#_04F25E: dw $009E, $1CA4\n\n#_04F262: dw $0097, $5418 ; ROOM 0097\n#_04F266: dw $0097, $5424\n#_04F26A: dw $0097, $4A18\n#_04F26E: dw $0097, $4A24\n#_04F272: dw $0097, $4B18\n#_04F276: dw $0097, $4B24\n#_04F27A: dw $0097, $4C18\n#_04F27E: dw $0097, $4C24\n\n#_04F282: dw $0126, $5868 ; ROOM 0126\n\n#_04F286: dw $001F, $5A52 ; ROOM 001F\n\n#_04F28A: dw $008D, $4AEE ; ROOM 008D\n\n#_04F28E: dw $0004, $5A5E ; ROOM 0004\n\n#_04F292: dw $000B, $5760 ; ROOM 000B\n\n#_04F296: dw $004B, $4960 ; ROOM 004B\n\n#_04F29A: dw $00F8, $4522 ; ROOM 00F8\n#_04F29E: dw $00F8, $449E\n#_04F2A2: dw $00F8, $4B1E\n#_04F2A6: dw $00F8, $4B22\n#_04F2AA: dw $00F8, $4AEE\n#_04F2AE: dw $00F8, $4BE6\n#_04F2B2: dw $00F8, $4BEA\n#_04F2B6: dw $00F8, $4CEE\n\n#_04F2BA: dw $0046, $0624 ; ROOM 0046\n\n#_04F2BE: dw $00C0, $0710 ; ROOM 00C0\n\n#_04F2C2: dw $00D0, $1C16 ; ROOM 00D0\n\n#_04F2C6: dw $007D, $0938 ; ROOM 007D\n\n#_04F2CA: dw $00B2, $175E ; ROOM 00B2\n\n#_04F2CE: dw $00FF, $5A60 ; ROOM 00FF\n\n#_04F2D2: dw $009E, $5764 ; ROOM 009E\n\n#_04F2D6: dw $008B, $0860 ; ROOM 008B\n\n#_04F2DA: dw $00B6, $0A96 ; ROOM 00B6\n\n#_04F2DE: dw $008D, $5718 ; ROOM 008D\n\n#_04F2E2: dw $006B, $060C ; ROOM 006B\n\n#_04F2E6: dw $009D, $4914 ; ROOM 009D\n\n#_04F2EA: dw $008C, $5414 ; ROOM 008C\n\n#_04F2EE: dw $00B6, $0AA6 ; ROOM 00B6\n\n#_04F2F2: dw $008D, $5720 ; ROOM 008D\n#_04F2F6: dw $008D, $5824\n#_04F2FA: dw $008D, $5918\n#_04F2FE: dw $008D, $5920\n\n#_04F302: dw $003A, $4E60 ; ROOM 003A\n\n#_04F306: dw $011D, $583C ; ROOM 011D\n#_04F30A: dw $011D, $5840\n#_04F30E: dw $011D, $5A34\n#_04F312: dw $011D, $5A38\n#_04F316: dw $011D, $5A3C\n#_04F31A: dw $011D, $5A44\n#_04F31E: dw $011D, $5A48\n#_04F322: dw $011D, $5B40\n#_04F326: dw $011D, $5B44\n\n#_04F32A: dw $0097, $5518 ; ROOM 0097\n#_04F32E: dw $0097, $5524\n#_04F332: dw $0097, $5618\n#_04F336: dw $0097, $5624\n\n#_04F33A: dw $0126, $5460 ; ROOM 0126\n#_04F33E: dw $0126, $5468\n#_04F342: dw $0126, $555C\n#_04F346: dw $0126, $5860\n#_04F34A: dw $0126, $556C\n#_04F34E: dw $0126, $5660\n#_04F352: dw $0126, $5668\n#_04F356: dw $0126, $5670\n#_04F35A: dw $0126, $575C\n\n#_04F35E: dw $004D, $5BA0 ; ROOM 004D\n#_04F362: dw $004D, $5BB0\n#_04F366: dw $004D, $5CA8\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "SpecialUnderworldObjects_torch", + "code": "SpecialUnderworldObjects_torch:\n; dw room : dw tilemap index, ... : terminator\n#_04F36A: dw $0043 : dw $03AA, $03B6, $09AA, $09B6 : dw $FFFF ; ROOM 0043\n#_04F376: dw $00CA : dw $14B2, $16AA, $18B2 : dw $FFFF ; ROOM 00CA\n#_04F380: dw $0099 : dw $13BE, $1CAA, $1CD2 : dw $FFFF ; ROOM 0099\n#_04F38A: dw $0000 : dw $8CCA, $8CF2 : dw $FFFF ; ROOM 0000\n#_04F392: dw $0074 : dw $07B8, $07C4 : dw $FFFF ; ROOM 0074\n#_04F39A: dw $008D : dw $0470, $0E72, $1970, $1B4C : dw $FFFF ; ROOM 008D\n#_04F3A6: dw $0021 : dw $0C92, $0CEA, $138A, $1C8A : dw $FFFF ; ROOM 0021\n#_04F3B2: dw $0022 : dw $13CC, $1CCC : dw $FFFF ; ROOM 0022\n#_04F3BA: dw $0053 : dw $08E2, $1368, $1864 : dw $FFFF ; ROOM 0053\n#_04F3C4: dw $0073 : dw $0C8A, $0CB2 : dw $FFFF ; ROOM 0073\n#_04F3CC: dw $000B : dw $1814, $1828, $1854, $1864 : dw $FFFF ; ROOM 000B\n#_04F3D8: dw $0032 : dw $0B8A, $0BF2, $0FF2 : dw $FFFF ; ROOM 0032\n#_04F3E2: dw $0042 : dw $07B6, $07F2 : dw $FFFF ; ROOM 0042\n#_04F3EA: dw $0083 : dw $1914, $191E, $1928 : dw $FFFF ; ROOM 0083\n#_04F3F4: dw $006A : dw $03CA, $03F2 : dw $FFFF ; ROOM 006A\n#_04F3FC: dw $00C0 : dw $06D8, $06E4, $0D24, $1518, $1A10 : dw $FFFF ; ROOM 00C0\n#_04F40A: dw $00D0 : dw $0A1E, $0D24, $1012 : dw $FFFF ; ROOM 00D0\n#_04F414: dw $0055 : dw $1850 : dw $FFFF ; ROOM 0055\n#_04F41A: dw $0041 : dw $053E, $0E70, $1590 : dw $FFFF ; ROOM 0041\n#_04F424: dw $0049 : dw $055C, $0FCE, $0FEE, $1870 : dw $FFFF ; ROOM 0049\n#_04F430: dw $0087 : dw $1850, $186C, $1B50, $1B6C : dw $FFFF ; ROOM 0087\n#_04F43C: dw $00C7 : dw $0932, $094A, $0DB2, $0DCA : dw $FFFF ; ROOM 00C7\n#_04F448: dw $0096 : dw $0420, $0B0C, $0B32, $1220 : dw $FFFF ; ROOM 0096\n#_04F454: dw $FFFF : dw $FFFF ; deleted\n#_04F458: dw $00C1 : dw $140C, $1430, $1C0C, $1C30 : dw $FFFF ; ROOM 00C1\n#_04F464: dw $0097 : dw $0C0C, $0C30, $140C, $1430 : dw $FFFF ; ROOM 0097\n#_04F470: dw $009C : dw $0550 : dw $FFFF ; ROOM 009C\n#_04F476: dw $009D : dw $150C, $1668 : dw $FFFF ; ROOM 009D\n#_04F47E: dw $003D : dw $154C, $1570, $1C50, $1C6C : dw $FFFF ; ROOM 003D\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "DefaultSaveFileItems", + "code": "DefaultSaveFileItems:\n.bage\n#_04F48A: db $01 ; $x340 - bow (normal)\n#_04F48B: db $01 ; $x341 - blue boom\n#_04F48C: db $01 ; $x342 - hookshot\n#_04F48D: db $32 ; $x343 - 50 bombs\n#_04F48E: db $02 ; $x344 - powder\n#_04F48F: db $01 ; $x345 - fire rod\n#_04F490: db $01 ; $x346 - ice rod\n#_04F491: db $01 ; $x347 - bombos\n#_04F492: db $01 ; $x348 - ether\n#_04F493: db $01 ; $x349 - quake\n#_04F494: db $01 ; $x34A - lamp\n#_04F495: db $01 ; $x34B - hammer\n#_04F496: db $03 ; $x34C - active flute\n#_04F497: db $01 ; $x34D - bug net\n#_04F498: db $01 ; $x34E - book\n#_04F499: db $03 ; $x34F - bottle 3 selected\n#_04F49A: db $01 ; $x350 - somaria\n#_04F49B: db $01 ; $x351 - byrna\n#_04F49C: db $01 ; $x352 - cape\n#_04F49D: db $02 ; $x353 - mirror\n#_04F49E: db $02 ; $x354 - titan's mitt\n#_04F49F: db $01 ; $x355 - boots\n#_04F4A0: db $01 ; $x356 - flippers\n#_04F4A1: db $01 ; $x357 - pearl\n#_04F4A2: db $00 ; $x358 - unused\n#_04F4A3: db $01 ; $x359 - fighter sword\n#_04F4A4: db $01 ; $x35A - fighter shield\n#_04F4A5: db $00 ; $x35B - green mail\n#_04F4A6: db $06 ; $x35C - bottle 1: fairy\n#_04F4A7: db $03 ; $x35D - bottle 2: red potion\n#_04F4A8: db $04 ; $x35E - bottle 3: green potion\n#_04F4A9: db $05 ; $x35F - bottle 4: blue potion\n#_04F4AA: db $FF ; $x360 - 255 rupees\n#_04F4AB: db $00 ; $x361 - ditto\n#_04F4AC: db $FF ; $x362 - ditto\n#_04F4AD: db $00 ; $x363 - ditto\n#_04F4AE: db $00 ; $x364 - no compasses\n#_04F4AF: db $00 ; $x365 - no compasses\n#_04F4B0: db $00 ; $x366 - no big keys here\n#_04F4B1: db $80 ; $x367 - hyrule big key\n#_04F4B2: db $00 ; $x368 - no maps\n#_04F4B3: db $00 ; $x369 - no maps\n#_04F4B4: db $00 ; $x36A - donated rupees\n#_04F4B5: db $00 ; $x36B - heart pieces\n#_04F4B6: db $78 ; $x36C - 15 hearts max\n#_04F4B7: db $78 ; $x36D - 15 hearts current\n#_04F4B8: db $80 ; $x36E - full (128) magic\n#_04F4B9: db $00 ; $x36F - 0 keys\n#_04F4BA: db $07 ; $x370 - max bomb capacity\n#_04F4BB: db $07 ; $x371 - max arrow capacity\n#_04F4BC: db $00 ; $x372 - no heals\n#_04F4BD: db $00 ; $x373 - no damage\n#_04F4BE: db $00 ; $x374 - no pendants\n#_04F4BF: db $00 ; $x375 - bomb filler\n#_04F4C0: db $00 ; $x376 - arrow filler\n#_04F4C1: db $32 ; $x377 - 50 arrows\n#_04F4C2: db $00 ; $x378 - unused\n#_04F4C3: db $FE ; $x379 - abilities: everything except the unused prayer\n#_04F4C4: db $00 ; $x37A - no crystals\n#_04F4C5: db $00 ; $x37B - normal magic consumption\n\n; ---------------------------------------------------------\n\n.normal\n#_04F4C6: db $00 ; $x340 - no bow\n#_04F4C7: db $00 ; $x341 - no boom\n#_04F4C8: db $00 ; $x342 - no hookshot\n#_04F4C9: db $00 ; $x343 - 0 bombs\n#_04F4CA: db $00 ; $x344 - no powder\n#_04F4CB: db $00 ; $x345 - no fire rod\n#_04F4CC: db $00 ; $x346 - no ice rod\n#_04F4CD: db $00 ; $x347 - no bombos\n#_04F4CE: db $00 ; $x348 - no ether\n#_04F4CF: db $00 ; $x349 - no quake\n#_04F4D0: db $00 ; $x34A - no lamp\n#_04F4D1: db $00 ; $x34B - no hammer\n#_04F4D2: db $00 ; $x34C - no flute\n#_04F4D3: db $00 ; $x34D - no bug net\n#_04F4D4: db $00 ; $x34E - no book\n#_04F4D5: db $00 ; $x34F - no bottles\n#_04F4D6: db $00 ; $x350 - no somaria\n#_04F4D7: db $00 ; $x351 - no byrna\n#_04F4D8: db $00 ; $x352 - no cape\n#_04F4D9: db $00 ; $x353 - no mirror\n#_04F4DA: db $00 ; $x354 - lift 1\n#_04F4DB: db $00 ; $x355 - no boots\n#_04F4DC: db $00 ; $x356 - no flippers\n#_04F4DD: db $00 ; $x357 - no pearl\n#_04F4DE: db $00 ; $x358 - unused\n#_04F4DF: db $00 ; $x359 - no sword\n#_04F4E0: db $00 ; $x35A - green mail\n#_04F4E1: db $00 ; $x35B - no shield\n#_04F4E2: db $00 ; $x35C - no bottle 1\n#_04F4E3: db $00 ; $x35D - no bottle 2\n#_04F4E4: db $00 ; $x35E - no bottle 3\n#_04F4E5: db $00 ; $x35F - no bottle 4\n#_04F4E6: db $00 ; $x360 - no rupees\n#_04F4E7: db $00 ; $x361 - no rupees\n#_04F4E8: db $00 ; $x362 - no rupees\n#_04F4E9: db $00 ; $x363 - no rupees\n#_04F4EA: db $00 ; $x364 - no compasses\n#_04F4EB: db $00 ; $x365 - no compasses\n#_04F4EC: db $00 ; $x366 - no big keys\n#_04F4ED: db $00 ; $x367 - no big keys\n#_04F4EE: db $00 ; $x368 - no maps\n#_04F4EF: db $00 ; $x369 - no maps\n#_04F4F0: db $00 ; $x36A - donated rupees\n#_04F4F1: db $00 ; $x36B - heart pieces\n#_04F4F2: db $18 ; $x36C - 3 hearts max\n#_04F4F3: db $18 ; $x36D - 3 hearts current\n#_04F4F4: db $00 ; $x36E - 0 magic\n#_04F4F5: db $00 ; $x36F - 0 keys\n#_04F4F6: db $00 ; $x370 - max bomb capacity\n#_04F4F7: db $00 ; $x371 - max arrow capacity\n#_04F4F8: db $00 ; $x372 - no heals\n#_04F4F9: db $00 ; $x373 - no damage\n#_04F4FA: db $00 ; $x374 - no pendants\n#_04F4FB: db $00 ; $x375 - bomb filler\n#_04F4FC: db $00 ; $x376 - arrow filler\n#_04F4FD: db $00 ; $x377 - no arrows\n#_04F4FE: db $00 ; $x378 - unused\n#_04F4FF: db $F8 ; $x379 - abilities: lift, read, talk, unused, pull\n#_04F500: db $00 ; $x37A - no crystals\n#_04F501: db $00 ; $x37B - normal magic consumption\n\n; =========================================================\n", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_RoomToPointer", + "code": "RoomHeader_RoomToPointer:\n#_04F502: dw RoomHeader_Room0000\n#_04F504: dw RoomHeader_Room0001\n#_04F506: dw RoomHeader_Room0002\n#_04F508: dw RoomHeader_Room0003 ; shared { 0003, 002F }\n#_04F50A: dw RoomHeader_Room0004\n#_04F50C: dw RoomHeader_Room0005 ; shared { 0005, 0006}\n#_04F50E: dw RoomHeader_Room0006 ; shared { 0005, 0006}\n#_04F510: dw RoomHeader_Room0007\n\n#_04F512: dw RoomHeader_Room0008\n#_04F514: dw RoomHeader_Room0009\n#_04F516: dw RoomHeader_Room000A\n#_04F518: dw RoomHeader_Room000B\n#_04F51A: dw RoomHeader_Room000C\n#_04F51C: dw RoomHeader_Room000D\n#_04F51E: dw RoomHeader_Room000E\n#_04F520: dw RoomHeader_Room000F ; shared { 000F, 0010 }\n\n#_04F522: dw RoomHeader_Room0010 ; shared { 000F, 0010 }\n#_04F524: dw RoomHeader_Room0011\n#_04F526: dw RoomHeader_Room0012\n#_04F528: dw RoomHeader_Room0013 ; shared { 0013, 0023 }\n#_04F52A: dw RoomHeader_Room0014\n#_04F52C: dw RoomHeader_Room0015\n#_04F52E: dw RoomHeader_Room0016\n#_04F530: dw RoomHeader_Room0017\n\n#_04F532: dw RoomHeader_Room0018 ; shared { 0018, 002C, 0114, 0115 }\n#_04F534: dw RoomHeader_Room0019\n#_04F536: dw RoomHeader_Room001A\n#_04F538: dw RoomHeader_Room001B\n#_04F53A: dw RoomHeader_Room001C\n#_04F53C: dw RoomHeader_Room001D\n#_04F53E: dw RoomHeader_Room001E\n#_04F540: dw RoomHeader_Room001F\n\n#_04F542: dw RoomHeader_Room0020\n#_04F544: dw RoomHeader_Room0021 ; shared { 0021, 0022 }\n#_04F546: dw RoomHeader_Room0022 ; shared { 0021, 0022 }\n#_04F548: dw RoomHeader_Room0023 ; shared { 0013, 0023 }\n#_04F54A: dw RoomHeader_Room0024\n#_04F54C: dw RoomHeader_Room0025 ; shared { 0025, 0026 }\n#_04F54E: dw RoomHeader_Room0026 ; shared { 0025, 0026 }\n#_04F550: dw RoomHeader_Room0027\n\n#_04F552: dw RoomHeader_Room0028\n#_04F554: dw RoomHeader_Room0029\n#_04F556: dw RoomHeader_Room002A\n#_04F558: dw RoomHeader_Room002B\n#_04F55A: dw RoomHeader_Room002C ; shared { 0018, 002C, 0114, 0115 }\n#_04F55C: dw RoomHeader_Room002D ; shared { 002D, 002E }\n#_04F55E: dw RoomHeader_Room002E ; shared { 002D, 002E }\n#_04F560: dw RoomHeader_Room002F ; shared { 0003, 002F }\n\n#_04F562: dw RoomHeader_Room0030\n#_04F564: dw RoomHeader_Room0031\n#_04F566: dw RoomHeader_Room0032\n#_04F568: dw RoomHeader_Room0033\n#_04F56A: dw RoomHeader_Room0034\n#_04F56C: dw RoomHeader_Room0035 ; shared { 0035, 0037 }\n#_04F56E: dw RoomHeader_Room0036\n#_04F570: dw RoomHeader_Room0037 ; shared { 0035, 0037 }\n\n#_04F572: dw RoomHeader_Room0038\n#_04F574: dw RoomHeader_Room0039\n#_04F576: dw RoomHeader_Room003A\n#_04F578: dw RoomHeader_Room003B\n#_04F57A: dw RoomHeader_Room003C\n#_04F57C: dw RoomHeader_Room003D\n#_04F57E: dw RoomHeader_Room003E\n#_04F580: dw RoomHeader_Room003F\n\n#_04F582: dw RoomHeader_Room0040\n#_04F584: dw RoomHeader_Room0041\n#_04F586: dw RoomHeader_Room0042\n#_04F588: dw RoomHeader_Room0043\n#_04F58A: dw RoomHeader_Room0044\n#_04F58C: dw RoomHeader_Room0045\n#_04F58E: dw RoomHeader_Room0046\n#_04F590: dw RoomHeader_Room0047 ; shared { 0047, 0048, 0049 }\n\n#_04F592: dw RoomHeader_Room0048 ; shared { 0047, 0048, 0049 }\n#_04F594: dw RoomHeader_Room0049 ; shared { 0047, 0048, 0049 }\n#_04F596: dw RoomHeader_Room004A\n#_04F598: dw RoomHeader_Room004B\n#_04F59A: dw RoomHeader_Room004C\n#_04F59C: dw RoomHeader_Room004D\n#_04F59E: dw RoomHeader_Room004E\n#_04F5A0: dw RoomHeader_Room004F\n\n#_04F5A2: dw RoomHeader_Room0050\n#_04F5A4: dw RoomHeader_Room0051\n#_04F5A6: dw RoomHeader_Room0052\n#_04F5A8: dw RoomHeader_Room0053\n#_04F5AA: dw RoomHeader_Room0054\n#_04F5AC: dw RoomHeader_Room0055\n#_04F5AE: dw RoomHeader_Room0056\n#_04F5B0: dw RoomHeader_Room0057\n\n#_04F5B2: dw RoomHeader_Room0058\n#_04F5B4: dw RoomHeader_Room0059\n#_04F5B6: dw RoomHeader_Room005A\n#_04F5B8: dw RoomHeader_Room005B\n#_04F5BA: dw RoomHeader_Room005C\n#_04F5BC: dw RoomHeader_Room005D\n#_04F5BE: dw RoomHeader_Room005E\n#_04F5C0: dw RoomHeader_Room005F\n\n#_04F5C2: dw RoomHeader_Room0060 ; shared { 0060, 0062 }\n#_04F5C4: dw RoomHeader_Room0061\n#_04F5C6: dw RoomHeader_Room0062 ; shared { 0060, 0062 }\n#_04F5C8: dw RoomHeader_Room0063\n#_04F5CA: dw RoomHeader_Room0064\n#_04F5CC: dw RoomHeader_Room0065\n#_04F5CE: dw RoomHeader_Room0066\n#_04F5D0: dw RoomHeader_Room0067\n\n#_04F5D2: dw RoomHeader_Room0068\n#_04F5D4: dw RoomHeader_Room0069 ; shared { 0069, 006A }\n#_04F5D6: dw RoomHeader_Room006A ; shared { 0069, 006A }\n#_04F5D8: dw RoomHeader_Room006B\n#_04F5DA: dw RoomHeader_Room006C\n#_04F5DC: dw RoomHeader_Room006D\n#_04F5DE: dw RoomHeader_Room006E\n#_04F5E0: dw RoomHeader_Room006F ; shared { 006F, 0070 }\n\n#_04F5E2: dw RoomHeader_Room0070 ; shared { 006F, 0070 }\n#_04F5E4: dw RoomHeader_Room0071\n#_04F5E6: dw RoomHeader_Room0072\n#_04F5E8: dw RoomHeader_Room0073\n#_04F5EA: dw RoomHeader_Room0074\n#_04F5EC: dw RoomHeader_Room0075\n#_04F5EE: dw RoomHeader_Room0076\n#_04F5F0: dw RoomHeader_Room0077\n\n#_04F5F2: dw RoomHeader_Room0078 ; shared { 0078, 0079, 007A, 007B }\n#_04F5F4: dw RoomHeader_Room0079 ; shared { 0078, 0079, 007A, 007B }\n#_04F5F6: dw RoomHeader_Room007A ; shared { 0078, 0079, 007A, 007B }\n#_04F5F8: dw RoomHeader_Room007B ; shared { 0078, 0079, 007A, 007B }\n#_04F5FA: dw RoomHeader_Room007C\n#_04F5FC: dw RoomHeader_Room007D\n#_04F5FE: dw RoomHeader_Room007E\n#_04F600: dw RoomHeader_Room007F\n\n#_04F602: dw RoomHeader_Room0080\n#_04F604: dw RoomHeader_Room0081 ; shared { 0081, 0082 }\n#_04F606: dw RoomHeader_Room0082 ; shared { 0081, 0082 }\n#_04F608: dw RoomHeader_Room0083\n#_04F60A: dw RoomHeader_Room0084\n#_04F60C: dw RoomHeader_Room0085\n#_04F60E: dw RoomHeader_Room0086 ; shared { 0086, 0087 }\n#_04F610: dw RoomHeader_Room0087 ; shared { 0086, 0087 }\n\n#_04F612: dw RoomHeader_Room0088 ; shared { 0088, 0089 }\n#_04F614: dw RoomHeader_Room0089 ; shared { 0088, 0089 }\n#_04F616: dw RoomHeader_Room008A ; shared { 008A, 008B }\n#_04F618: dw RoomHeader_Room008B ; shared { 008A, 008B }\n#_04F61A: dw RoomHeader_Room008C\n#_04F61C: dw RoomHeader_Room008D\n#_04F61E: dw RoomHeader_Room008E\n#_04F620: dw RoomHeader_Room008F ; shared { 008F, 0090 }\n\n#_04F622: dw RoomHeader_Room0090 ; shared { 008F, 0090 }\n#_04F624: dw RoomHeader_Room0091\n#_04F626: dw RoomHeader_Room0092\n#_04F628: dw RoomHeader_Room0093\n#_04F62A: dw RoomHeader_Room0094 ; shared { 0094, 0095 }\n#_04F62C: dw RoomHeader_Room0095 ; shared { 0094, 0095 }\n#_04F62E: dw RoomHeader_Room0096\n#_04F630: dw RoomHeader_Room0097\n\n#_04F632: dw RoomHeader_Room0098\n#_04F634: dw RoomHeader_Room0099\n#_04F636: dw RoomHeader_Room009A ; shared { 009A, 009B }\n#_04F638: dw RoomHeader_Room009B ; shared { 009A, 009B }\n#_04F63A: dw RoomHeader_Room009C\n#_04F63C: dw RoomHeader_Room009D\n#_04F63E: dw RoomHeader_Room009E\n#_04F640: dw RoomHeader_Room009F\n\n#_04F642: dw RoomHeader_Room00A0\n#_04F644: dw RoomHeader_Room00A1 ; shared { 00A1, 00A3 }\n#_04F646: dw RoomHeader_Room00A2\n#_04F648: dw RoomHeader_Room00A3 ; shared { 00A1, 00A3 }\n#_04F64A: dw RoomHeader_Room00A4\n#_04F64C: dw RoomHeader_Room00A5\n#_04F64E: dw RoomHeader_Room00A6\n#_04F650: dw RoomHeader_Room00A7\n\n#_04F652: dw RoomHeader_Room00A8\n#_04F654: dw RoomHeader_Room00A9\n#_04F656: dw RoomHeader_Room00AA\n#_04F658: dw RoomHeader_Room00AB\n#_04F65A: dw RoomHeader_Room00AC\n#_04F65C: dw RoomHeader_Room00AD ; shared { 00AD, 00AE }\n#_04F65E: dw RoomHeader_Room00AE ; shared { 00AD, 00AE }\n#_04F660: dw RoomHeader_Room00AF\n\n#_04F662: dw RoomHeader_Room00B0\n#_04F664: dw RoomHeader_Room00B1\n#_04F666: dw RoomHeader_Room00B2\n#_04F668: dw RoomHeader_Room00B3\n#_04F66A: dw RoomHeader_Room00B4\n#_04F66C: dw RoomHeader_Room00B5\n#_04F66E: dw RoomHeader_Room00B6\n#_04F670: dw RoomHeader_Room00B7 ; shared { 00B7, 00C6, 00D6 }\n\n#_04F672: dw RoomHeader_Room00B8\n#_04F674: dw RoomHeader_Room00B9\n#_04F676: dw RoomHeader_Room00BA\n#_04F678: dw RoomHeader_Room00BB\n#_04F67A: dw RoomHeader_Room00BC\n#_04F67C: dw RoomHeader_Room00BD ; shared { 00BD, 00BE }\n#_04F67E: dw RoomHeader_Room00BE ; shared { 00BD, 00BE }\n#_04F680: dw RoomHeader_Room00BF\n\n#_04F682: dw RoomHeader_Room00C0\n#_04F684: dw RoomHeader_Room00C1\n#_04F686: dw RoomHeader_Room00C2\n#_04F688: dw RoomHeader_Room00C3\n#_04F68A: dw RoomHeader_Room00C4\n#_04F68C: dw RoomHeader_Room00C5 ; shared { 00C5, 00D5 }\n#_04F68E: dw RoomHeader_Room00C6 ; shared { 00B7, 00C6, 00D6 }\n#_04F690: dw RoomHeader_Room00C7\n\n#_04F692: dw RoomHeader_Room00C8\n#_04F694: dw RoomHeader_Room00C9\n#_04F696: dw RoomHeader_Room00CA ; shared { 00CA, 00CB, 00CC, 00DB, 00DC }\n#_04F698: dw RoomHeader_Room00CB ; shared { 00CA, 00CB, 00CC, 00DB, 00DC }\n#_04F69A: dw RoomHeader_Room00CC ; shared { 00CA, 00CB, 00CC, 00DB, 00DC }\n#_04F69C: dw RoomHeader_Room00CD ; shared { 00CD, 00CE }\n#_04F69E: dw RoomHeader_Room00CE ; shared { 00CD, 00CE }\n#_04F6A0: dw RoomHeader_Room00CF ; shared { 00CF, 00D0 }\n\n#_04F6A2: dw RoomHeader_Room00D0 ; shared { 00CF, 00D0 }\n#_04F6A4: dw RoomHeader_Room00D1\n#_04F6A6: dw RoomHeader_Room00D2\n#_04F6A8: dw RoomHeader_Room00D3 ; shared { 00D3, 00D4, 00D7, 00D8 }\n#_04F6AA: dw RoomHeader_Room00D4 ; shared { 00D3, 00D4, 00D7, 00D8 }\n#_04F6AC: dw RoomHeader_Room00D5 ; shared { 00C5, 00D5 }\n#_04F6AE: dw RoomHeader_Room00D6 ; shared { 00B7, 00C6, 00D6 }\n#_04F6B0: dw RoomHeader_Room00D7 ; shared { 00D3, 00D4, 00D7, 00D8 }\n\n#_04F6B2: dw RoomHeader_Room00D8 ; shared { 00D3, 00D4, 00D7, 00D8 }\n#_04F6B4: dw RoomHeader_Room00D9\n#_04F6B6: dw RoomHeader_Room00DA\n#_04F6B8: dw RoomHeader_Room00DB ; shared { 00CA, 00CB, 00CC, 00DB, 00DC }\n#_04F6BA: dw RoomHeader_Room00DC ; shared { 00CA, 00CB, 00CC, 00DB, 00DC }\n#_04F6BC: dw RoomHeader_Room00DD ; shared { 00DD, 00DE }\n#_04F6BE: dw RoomHeader_Room00DE ; shared { 00DD, 00DE }\n#_04F6C0: dw RoomHeader_Room00DF\n\n#_04F6C2: dw RoomHeader_Room00E0\n#_04F6C4: dw RoomHeader_Room00E1\n#_04F6C6: dw RoomHeader_Room00E2\n#_04F6C8: dw RoomHeader_Room00E3\n#_04F6CA: dw RoomHeader_Room00E4 ; shared { 00E4, 00E5 }\n#_04F6CC: dw RoomHeader_Room00E5 ; shared { 00E4, 00E5 }\n#_04F6CE: dw RoomHeader_Room00E6 ; shared { 00E6, 00E7, 00F0, 00F1 }\n#_04F6D0: dw RoomHeader_Room00E7 ; shared { 00E6, 00E7, 00F0, 00F1 }\n\n#_04F6D2: dw RoomHeader_Room00E8\n#_04F6D4: dw RoomHeader_Room00E9 ; shared { 00E9, 00EA }\n#_04F6D6: dw RoomHeader_Room00EA ; shared { 00E9, 00EA }\n#_04F6D8: dw RoomHeader_Room00EB\n#_04F6DA: dw RoomHeader_Room00EC ; shared { 00EC, 00ED }\n#_04F6DC: dw RoomHeader_Room00ED ; shared { 00EC, 00ED }\n#_04F6DE: dw RoomHeader_Room00EE\n#_04F6E0: dw RoomHeader_Room00EF\n\n#_04F6E2: dw RoomHeader_Room00F0 ; shared { 00E6, 00E7, 00F0, 00F1 }\n#_04F6E4: dw RoomHeader_Room00F1 ; shared { 00E6, 00E7, 00F0, 00F1 }\n#_04F6E6: dw RoomHeader_Room00F2 ; shared { 00F2, 00F3 }\n#_04F6E8: dw RoomHeader_Room00F3 ; shared { 00F2, 00F3 }\n#_04F6EA: dw RoomHeader_Room00F4 ; shared { 00F4, 00F5 }\n#_04F6EC: dw RoomHeader_Room00F5 ; shared { 00F4, 00F5 }\n#_04F6EE: dw RoomHeader_Room00F6 ; shared { 00F6, 00F7, 00F8 }\n#_04F6F0: dw RoomHeader_Room00F7 ; shared { 00F6, 00F7, 00F8 }\n\n#_04F6F2: dw RoomHeader_Room00F8 ; shared { 00F6, 00F7, 00F8 }\n#_04F6F4: dw RoomHeader_Room00F9 ; shared { 00F9, 00FE }\n#_04F6F6: dw RoomHeader_Room00FA\n#_04F6F8: dw RoomHeader_Room00FB\n#_04F6FA: dw RoomHeader_Room00FC ; shared { 00FC, 00FD }\n#_04F6FC: dw RoomHeader_Room00FD ; shared { 00FC, 00FD }\n#_04F6FE: dw RoomHeader_Room00FE ; shared { 00F9, 00FE }\n#_04F700: dw RoomHeader_Room00FF\n\n#_04F702: dw RoomHeader_Room0100\n#_04F704: dw RoomHeader_Room0101\n#_04F706: dw RoomHeader_Room0102\n#_04F708: dw RoomHeader_Room0103 ; shared { 0103, 0118 }\n#_04F70A: dw RoomHeader_Room0104\n#_04F70C: dw RoomHeader_Room0105\n#_04F70E: dw RoomHeader_Room0106\n#_04F710: dw RoomHeader_Room0107\n\n#_04F712: dw RoomHeader_Room0108\n#_04F714: dw RoomHeader_Room0109\n#_04F716: dw RoomHeader_Room010A\n#_04F718: dw RoomHeader_Room010B\n#_04F71A: dw RoomHeader_Room010C\n#_04F71C: dw RoomHeader_Room010D\n#_04F71E: dw RoomHeader_Room010E\n#_04F720: dw RoomHeader_Room010F ; shared { 010F, 0110, 011C }\n\n#_04F722: dw RoomHeader_Room0110 ; shared { 010F, 0110, 011C }\n#_04F724: dw RoomHeader_Room0111 ; shared { 0111, 0121, 0122 }\n#_04F726: dw RoomHeader_Room0112\n#_04F728: dw RoomHeader_Room0113\n#_04F72A: dw RoomHeader_Room0114 ; shared { 0018, 002C, 0114, 0115 }\n#_04F72C: dw RoomHeader_Room0115 ; shared { 0018, 002C, 0114, 0115 }\n#_04F72E: dw RoomHeader_Room0116\n#_04F730: dw RoomHeader_Room0117\n\n#_04F732: dw RoomHeader_Room0118 ; shared { 0103, 0118 }\n#_04F734: dw RoomHeader_Room0119\n#_04F736: dw RoomHeader_Room011A\n#_04F738: dw RoomHeader_Room011B\n#_04F73A: dw RoomHeader_Room011C ; shared { 010F, 0110, 011C }\n#_04F73C: dw RoomHeader_Room011D\n#_04F73E: dw RoomHeader_Room011E ; shared { 011E, 0127 }\n#_04F740: dw RoomHeader_Room011F\n\n#_04F742: dw RoomHeader_Room0120\n#_04F744: dw RoomHeader_Room0121 ; shared { 0111, 0121, 0122 }\n#_04F746: dw RoomHeader_Room0122 ; shared { 0111, 0121, 0122 }\n#_04F748: dw RoomHeader_Room0123\n#_04F74A: dw RoomHeader_Room0124 ; shared { 0124, 0125, 0126 }\n#_04F74C: dw RoomHeader_Room0125 ; shared { 0124, 0125, 0126 }\n#_04F74E: dw RoomHeader_Room0126 ; shared { 0124, 0125, 0126 }\n#_04F750: dw RoomHeader_Room0127 ; shared { 011E, 0127 }\n\n#_04F752: dw RoomHeader_Room0128 ; shared { 0128\u2013013F }\n#_04F754: dw RoomHeader_Room0129 ; shared { 0128\u2013013F }\n#_04F756: dw RoomHeader_Room012A ; shared { 0128\u2013013F }\n#_04F758: dw RoomHeader_Room012B ; shared { 0128\u2013013F }\n#_04F75A: dw RoomHeader_Room012C ; shared { 0128\u2013013F }\n#_04F75C: dw RoomHeader_Room012D ; shared { 0128\u2013013F }\n#_04F75E: dw RoomHeader_Room012E ; shared { 0128\u2013013F }\n#_04F760: dw RoomHeader_Room012F ; shared { 0128\u2013013F }\n\n#_04F762: dw RoomHeader_Room0130 ; shared { 0128\u2013013F }\n#_04F764: dw RoomHeader_Room0131 ; shared { 0128\u2013013F }\n#_04F766: dw RoomHeader_Room0132 ; shared { 0128\u2013013F }\n#_04F768: dw RoomHeader_Room0133 ; shared { 0128\u2013013F }\n#_04F76A: dw RoomHeader_Room0134 ; shared { 0128\u2013013F }\n#_04F76C: dw RoomHeader_Room0135 ; shared { 0128\u2013013F }\n#_04F76E: dw RoomHeader_Room0136 ; shared { 0128\u2013013F }\n#_04F770: dw RoomHeader_Room0137 ; shared { 0128\u2013013F }\n\n#_04F772: dw RoomHeader_Room0138 ; shared { 0128\u2013013F }\n#_04F774: dw RoomHeader_Room0139 ; shared { 0128\u2013013F }\n#_04F776: dw RoomHeader_Room013A ; shared { 0128\u2013013F }\n#_04F778: dw RoomHeader_Room013B ; shared { 0128\u2013013F }\n#_04F77A: dw RoomHeader_Room013C ; shared { 0128\u2013013F }\n#_04F77C: dw RoomHeader_Room013D ; shared { 0128\u2013013F }\n#_04F77E: dw RoomHeader_Room013E ; shared { 0128\u2013013F }\n#_04F780: dw RoomHeader_Room013F ; shared { 0128\u2013013F }\n\n; =========================================================\n; BG2PROP 0x41\n; PALETTE 0x21\n; BLKSET 0x13\n; SPRSET 0x22\n; BGMOVE 0x07\n; EFFECT1 0x3D - Triforce door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x10 => ROOM 0010\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x04 => ROOM 0004 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0000", + "code": "RoomHeader_Room0000:\n#_04F782: db $41, $21, $13, $22, $07, $3D, $00, $00, $00, $10\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x72 => ROOM 0072\n; STAIRS1 0x00 => ROOM 0000\n; STAIRS2 0x50 => ROOM 0050\n; STAIRS3 0x52 => ROOM 0052\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0001", + "code": "RoomHeader_Room0001:\n#_04F78C: db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $72, $00, $50, $52\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x1D\n; BLKSET 0x04\n; SPRSET 0x06\n; BGMOVE 0x00\n; EFFECT1 0x14 - Pull switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x11 => ROOM 0011\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x18 => ROOM 0018 - leaked value\n; STAIRS3 0x0D => ROOM 000D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0002", + "code": "RoomHeader_Room0002:\n#_04F79A: db $C0, $1D, $04, $06, $00, $14, $00, $00, $00, $00, $11\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x26\n; BGMOVE 0x00\n; EFFECT1 0x26 - SE kill push block\n; EFFECT2 0x14 - Pull switch door\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xB5 => ROOM 00B5\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x08 => ROOM 0008 - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0004", + "code": "RoomHeader_Room0004:\n#_04F7A5: db $00, $18, $0D, $26, $00, $26, $14, $00, $00, $00, $B5\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x08\n; BLKSET 0x08\n; SPRSET 0x14\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x20 - leaked value\n; PLANES2 0x06 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0C => ROOM 000C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x25 => ROOM 0025 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0005", + "code": "RoomHeader_Room0005:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0006", + "code": "RoomHeader_Room0006:\n#_04F7B0: db $00, $08, $08, $14, $00, $25, $00\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x0C\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x17 => ROOM 0017\n; STAIRS0 0x17 => ROOM 0017\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0007", + "code": "RoomHeader_Room0007:\n#_04F7B7: db $20, $06, $05, $0C, $00, $25, $00, $00, $00, $17, $17\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x07\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x27 => ROOM 0027 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0008", + "code": "RoomHeader_Room0008:\n#_04F7C2: db $C0, $07, $06, $07, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x4B => ROOM 004B\n; STAIRS0 0x4A => ROOM 004A\n; STAIRS1 0x4A => ROOM 004A\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x0F => ROOM 000F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0009", + "code": "RoomHeader_Room0009:\n#_04F7C9: db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $4B, $4A, $4A\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x09 => ROOM 0009\n; STAIRS0 0x3A => ROOM 003A\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x0F => ROOM 000F - leaked value\n; STAIRS3 0x07 => ROOM 0007 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000A", + "code": "RoomHeader_Room000A:\n#_04F7D5: db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $09, $3A\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x6A => ROOM 006A\n; STAIRS0 0x1B => ROOM 001B\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x28 => ROOM 0028 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000B", + "code": "RoomHeader_Room000B:\n#_04F7E0: db $01, $0F, $07, $19, $00, $03, $00, $00, $00, $6A, $1B\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x6B => ROOM 006B\n; STAIRS1 0x8C => ROOM 008C\n; STAIRS2 0x8C => ROOM 008C\n; STAIRS3 0x40 => ROOM 0040 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000C", + "code": "RoomHeader_Room000C:\n#_04F7EB: db $C0, $28, $0E, $13, $00, $00, $00, $00, $00, $00, $6B, $8C, $8C\n\n; =========================================================\n; BG2PROP 0x40\n; PALETTE 0x1B\n; BLKSET 0x0E\n; SPRSET 0x18\n; BGMOVE 0x05\n; EFFECT1 0x38 - Agahnim 2\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x0B => ROOM 000B - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x08 => ROOM 0008 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000D", + "code": "RoomHeader_Room000D:\n#_04F7F8: db $40, $1B, $0E, $18, $05, $38, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x08 - S kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x1E => ROOM 001E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x21 => ROOM 0021 - leaked value\n; STAIRS3 0x13 => ROOM 0013 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000E", + "code": "RoomHeader_Room000E:\n#_04F7FF: db $00, $13, $0B, $1C, $00, $08, $00, $00, $00, $00, $1E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x21\n; BLKSET 0x13\n; SPRSET 0x22\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x01 - leaked value\n; WARP 0x01 => ROOM 0001 - leaked value\n; STAIRS0 0x01 => ROOM 0001 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room000F", + "code": "RoomHeader_Room000F:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0010", + "code": "RoomHeader_Room0010:\n#_04F80A: db $00, $21, $13, $22, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x02 => ROOM 0002\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x1D => ROOM 001D - leaked value\n; STAIRS3 0x04 => ROOM 0004 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0011", + "code": "RoomHeader_Room0011:\n#_04F811: db $00, $01, $01, $01, $00, $00, $00, $08, $00, $00, $02\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x1D\n; BLKSET 0x04\n; SPRSET 0x06\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x26 => ROOM 0026 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0012", + "code": "RoomHeader_Room0012:\n#_04F81C: db $C0, $1D, $04, $06, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x26\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x1E => ROOM 001E - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0013", + "code": "RoomHeader_Room0013:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0023", + "code": "RoomHeader_Room0023:\n#_04F823: db $00, $18, $0D, $26, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x1E\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x20 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x26 => ROOM 0026 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B7", + "code": "RoomHeader_Room00B7:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C6", + "code": "RoomHeader_Room00C6:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D6", + "code": "RoomHeader_Room00D6:\n#_04F82A: db $00, $18, $0D, $1E, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x26\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x26 => ROOM 0026 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0014", + "code": "RoomHeader_Room0014:\n#_04F831: db $20, $18, $0D, $26, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x26\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xB6 => ROOM 00B6\n; STAIRS1 0x90 => ROOM 0090 - leaked value\n; STAIRS2 0x08 => ROOM 0008 - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0015", + "code": "RoomHeader_Room0015:\n#_04F838: db $C0, $18, $0D, $26, $00, $00, $00, $00, $00, $00, $B6\n\n; =========================================================\n; BG2PROP 0x90\n; PALETTE 0x08\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x03\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x66 => ROOM 0066\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x06 => ROOM 0006 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0016", + "code": "RoomHeader_Room0016:\n#_04F843: db $90, $08, $08, $11, $03, $00, $00, $00, $00, $00, $66\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x35 - Holes 4\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x27 => ROOM 0027\n; STAIRS0 0x07 => ROOM 0007\n; STAIRS1 0x27 => ROOM 0027\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x0F => ROOM 000F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0017", + "code": "RoomHeader_Room0017:\n#_04F84E: db $20, $06, $05, $19, $00, $35, $00, $00, $00, $27, $07, $27\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0019", + "code": "RoomHeader_Room0019:\n#_04F85A: db $01, $0F, $07, $19, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x6A => ROOM 006A\n; STAIRS1 0x6A => ROOM 006A\n; STAIRS2 0x68 => ROOM 0068 - leaked value\n; STAIRS3 0x0F => ROOM 000F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001A", + "code": "RoomHeader_Room001A:\n#_04F861: db $00, $0F, $07, $19, $00, $16, $00, $00, $00, $00, $6A, $6A\n\n; =========================================================\n; BG2PROP 0x68\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x1C - Moving wall east\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x0B => ROOM 000B\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x1A => ROOM 001A - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001B", + "code": "RoomHeader_Room001B:\n#_04F86D: db $68, $0F, $07, $08, $00, $03, $1C, $00, $00, $00, $0B\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1A\n; BLKSET 0x0E\n; SPRSET 0x09\n; BGMOVE 0x00\n; EFFECT1 0x04 - SE kill door\n; EFFECT2 0x3F - Rekillable boss\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x8C => ROOM 008C\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x1B => ROOM 001B - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001C", + "code": "RoomHeader_Room001C:\n#_04F878: db $00, $1A, $0E, $09, $00, $04, $3F, $00, $00, $00, $8C\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1B\n; BLKSET 0x0E\n; SPRSET 0x18\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x4C => ROOM 004C\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001D", + "code": "RoomHeader_Room001D:\n#_04F883: db $00, $1B, $0E, $18, $00, $00, $00, $00, $00, $00, $4C\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x3E => ROOM 003E\n; STAIRS0 0x0E => ROOM 000E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001E", + "code": "RoomHeader_Room001E:\n#_04F88E: db $20, $13, $0B, $1C, $00, $17, $00, $00, $00, $3E, $0E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x3F => ROOM 003F\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x0C => ROOM 000C - leaked value\n; STAIRS3 0x02 => ROOM 0002 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room001F", + "code": "RoomHeader_Room001F:\n#_04F899: db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $3F\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x0C\n; BLKSET 0x02\n; SPRSET 0x12\n; BGMOVE 0x00\n; EFFECT1 0x15 - Beat dungeon door\n; EFFECT2 0x25 - Dungeon prize\n; PLANES1 0x01 - leaked value\n; PLANES2 0x01 - leaked value\n; WARP 0x01 => ROOM 0001 - leaked value\n; STAIRS0 0x01 => ROOM 0001 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0020", + "code": "RoomHeader_Room0020:\n#_04F8A4: db $20, $0C, $02, $12, $00, $15, $25\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x26 => ROOM 0026 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0021", + "code": "RoomHeader_Room0021:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0022", + "code": "RoomHeader_Room0022:\n#_04F8AB: db $01, $01, $01, $01, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x26\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0008 - leaked value\n; STAIRS0 0x11 => ROOM 0011 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0024", + "code": "RoomHeader_Room0024:\n#_04F8B2: db $00, $18, $0D, $26, $00, $01, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x76 => ROOM 0076\n; STAIRS1 0x76 => ROOM 0076\n; STAIRS2 0x76 => ROOM 0076\n; STAIRS3 0x20 => ROOM 0020 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0025", + "code": "RoomHeader_Room0025:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0026", + "code": "RoomHeader_Room0026:\n#_04F8B9: db $00, $0A, $08, $11, $00, $16, $00, $00, $00, $00, $76, $76, $76\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x36 - Holes 5\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x31 => ROOM 0031\n; STAIRS0 0x17 => ROOM 0017\n; STAIRS1 0x31 => ROOM 0031\n; STAIRS2 0x80 => ROOM 0080 - leaked value\n; STAIRS3 0x0A => ROOM 000A - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0027", + "code": "RoomHeader_Room0027:\n#_04F8C6: db $20, $06, $05, $19, $00, $36, $00, $00, $00, $31, $17, $31\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x32 - Full room kill chest\n; EFFECT2 0x1B - Water gate twin\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x38 => ROOM 0038\n; STAIRS1 0xCC => ROOM 00CC - leaked value\n; STAIRS2 0x0E => ROOM 000E - leaked value\n; STAIRS3 0x09 => ROOM 0009 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0028", + "code": "RoomHeader_Room0028:\n#_04F8D2: db $80, $0A, $08, $11, $00, $32, $1B, $00, $00, $00, $38\n\n; =========================================================\n; BG2PROP 0xCC\n; PALETTE 0x0E\n; BLKSET 0x09\n; SPRSET 0x1A\n; BGMOVE 0x02\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0029", + "code": "RoomHeader_Room0029:\n#_04F8DD: db $CC, $0E, $09, $1A, $02, $25, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x2B => ROOM 002B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002A", + "code": "RoomHeader_Room002A:\n#_04F8E4: db $00, $0F, $07, $19, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x2B\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x3B => ROOM 003B\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002B", + "code": "RoomHeader_Room002B:\n#_04F8EB: db $C0, $0F, $07, $2B, $00, $16, $00, $00, $00, $00, $3B\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x2A - NE kill chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002D", + "code": "RoomHeader_Room002D:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002E", + "code": "RoomHeader_Room002E:\n#_04F8F6: db $00, $13, $0B, $1C, $00, $2A, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0C - leaked value\n; WARP 0x02 => ROOM 0002 - leaked value\n; STAIRS0 0x12 => ROOM 0012 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0003", + "code": "RoomHeader_Room0003:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002F", + "code": "RoomHeader_Room002F:\n#_04F8FD: db $C0, $07, $06, $19, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0C\n; BLKSET 0x02\n; SPRSET 0x12\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x40 => ROOM 0040\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x06 => ROOM 0006 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0030", + "code": "RoomHeader_Room0030:\n#_04F904: db $00, $0C, $02, $12, $00, $00, $00, $00, $00, $00, $40\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x37 - Holes 6\n; EFFECT2 0x04 - SE kill door\n; PLANES1 0x22\n; PLANES2 0x00\n; WARP 0x77 => ROOM 0077\n; STAIRS0 0x27 => ROOM 0027\n; STAIRS1 0x77 => ROOM 0077\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0031", + "code": "RoomHeader_Room0031:\n#_04F90F: db $20, $06, $05, $19, $00, $37, $04, $22, $00, $77, $27, $77\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x42 => ROOM 0042\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x04 => ROOM 0004 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0032", + "code": "RoomHeader_Room0032:\n#_04F91B: db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $42\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x04\n; BLKSET 0x05\n; SPRSET 0x0B\n; BGMOVE 0x00\n; EFFECT1 0x15 - Beat dungeon door\n; EFFECT2 0x25 - Dungeon prize\n; PLANES1 0x80 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0008 - leaked value\n; STAIRS0 0x11 => ROOM 0011 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0033", + "code": "RoomHeader_Room0033:\n#_04F926: db $00, $04, $05, $0B, $00, $15, $25\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x54 => ROOM 0054\n; STAIRS1 0x80 => ROOM 0080 - leaked value\n; STAIRS2 0x0A => ROOM 000A - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0034", + "code": "RoomHeader_Room0034:\n#_04F92D: db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $54\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x19 - Fill water\n; PLANES1 0x80 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0008 - leaked value\n; STAIRS0 0x11 => ROOM 0011 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0035", + "code": "RoomHeader_Room0035:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0037", + "code": "RoomHeader_Room0037:\n#_04F938: db $80, $0A, $08, $11, $00, $00, $19\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x80 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0008 - leaked value\n; STAIRS0 0x11 => ROOM 0011 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0036", + "code": "RoomHeader_Room0036:\n#_04F93F: db $80, $0A, $08, $11, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x28 => ROOM 0028\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x0D => ROOM 000D - leaked value\n; STAIRS3 0x09 => ROOM 0009 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0038", + "code": "RoomHeader_Room0038:\n#_04F946: db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $28\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x29 => ROOM 0029\n; STAIRS0 0x20 => ROOM 0020 - leaked value\n; STAIRS1 0x0F => ROOM 000F - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x19 => ROOM 0019 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0039", + "code": "RoomHeader_Room0039:\n#_04F951: db $20, $0D, $09, $13, $00, $00, $00, $00, $00, $29\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x0A => ROOM 000A\n; STAIRS0 0x0A => ROOM 000A\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0F => ROOM 000F - leaked value\n; STAIRS3 0x07 => ROOM 0007 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003A", + "code": "RoomHeader_Room003A:\n#_04F95B: db $20, $0F, $07, $19, $00, $00, $00, $00, $00, $0A, $0A\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x2B => ROOM 002B\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003B", + "code": "RoomHeader_Room003B:\n#_04F966: db $00, $0F, $07, $08, $00, $00, $00, $00, $00, $00, $2B\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x20 - leaked value\n; PLANES2 0x1A - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x0C => ROOM 000C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x33 => ROOM 0033 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003C", + "code": "RoomHeader_Room003C:\n#_04F971: db $00, $07, $06, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x1A\n; BLKSET 0x0E\n; SPRSET 0x0C\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x96 => ROOM 0096\n; STAIRS0 0x96 => ROOM 0096\n; STAIRS1 0xCC => ROOM 00CC - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003D", + "code": "RoomHeader_Room003D:\n#_04F978: db $20, $1A, $0E, $0C, $00, $33, $00, $00, $00, $96, $96\n\n; =========================================================\n; BG2PROP 0xCC\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x02\n; EFFECT1 0x02 - NE kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x1E => ROOM 001E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003E", + "code": "RoomHeader_Room003E:\n#_04F983: db $CC, $13, $0B, $29, $02, $02, $00, $00, $00, $00, $1E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x14 - Pull switch door\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x1F => ROOM 001F\n; STAIRS1 0x5F => ROOM 005F\n; STAIRS2 0xC0 => ROOM 00C0 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room003F", + "code": "RoomHeader_Room003F:\n#_04F98E: db $00, $13, $0B, $29, $00, $27, $14, $00, $00, $00, $1F, $5F\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x02\n; SPRSET 0x27\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x30 => ROOM 0030\n; STAIRS1 0xB0 => ROOM 00B0\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0040", + "code": "RoomHeader_Room0040:\n#_04F99A: db $C0, $00, $02, $27, $00, $00, $00, $00, $00, $00, $30, $B0\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x02\n; BGMOVE 0x00\n; EFFECT1 0x13 - Quadrant block door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x42 => ROOM 0042\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0041", + "code": "RoomHeader_Room0041:\n#_04F9A6: db $01, $00, $00, $02, $00, $13, $00, $00, $00, $00, $42\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x41 => ROOM 0041\n; STAIRS1 0x32 => ROOM 0032\n; STAIRS2 0x68 => ROOM 0068 - leaked value\n; STAIRS3 0x04 => ROOM 0004 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0042", + "code": "RoomHeader_Room0042:\n#_04F9B1: db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $41, $32\n\n; =========================================================\n; BG2PROP 0x68\n; PALETTE 0x04\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x1D - Moving wall west\n; PLANES1 0x00 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0043", + "code": "RoomHeader_Room0043:\n#_04F9BD: db $68, $04, $05, $0A, $00, $00, $1D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x60 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0044", + "code": "RoomHeader_Room0044:\n#_04F9C4: db $00, $17, $0A, $1B, $00, $01, $00\n\n; =========================================================\n; BG2PROP 0x60\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xBC => ROOM 00BC\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0A => ROOM 000A - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0045", + "code": "RoomHeader_Room0045:\n#_04F9CB: db $60, $17, $0A, $1B, $00, $01, $00, $00, $00, $00, $BC\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x3C - Push block chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0D - leaked value\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x33 => ROOM 0033 - leaked value\n; STAIRS3 0x34 => ROOM 0034 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0046", + "code": "RoomHeader_Room0046:\n#_04F9D6: db $00, $0A, $08, $11, $00, $3C, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x34 - Holes 3\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0047", + "code": "RoomHeader_Room0047:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0048", + "code": "RoomHeader_Room0048:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0049", + "code": "RoomHeader_Room0049:\n#_04F9DD: db $00, $0D, $09, $13, $00, $33, $34\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x09 => ROOM 0009\n; STAIRS1 0x09 => ROOM 0009\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x0F => ROOM 000F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004A", + "code": "RoomHeader_Room004A:\n#_04F9E4: db $00, $0F, $07, $19, $00, $17, $00, $00, $00, $00, $09, $09\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x09 => ROOM 0009\n; STAIRS0 0x00 => ROOM 0000 - leaked value\n; STAIRS1 0x1A => ROOM 001A - leaked value\n; STAIRS2 0x0E => ROOM 000E - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004B", + "code": "RoomHeader_Room004B:\n#_04F9F0: db $00, $0F, $07, $08, $00, $01, $00, $00, $00, $09\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1A\n; BLKSET 0x0E\n; SPRSET 0x0C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x1D => ROOM 001D\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x1A => ROOM 001A - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004C", + "code": "RoomHeader_Room004C:\n#_04F9FA: db $00, $1A, $0E, $0C, $00, $00, $00, $00, $00, $00, $1D\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x1A\n; BLKSET 0x0E\n; SPRSET 0x0C\n; BGMOVE 0x00\n; EFFECT1 0x32 - Full room kill chest\n; EFFECT2 0x3F - Rekillable boss\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xA6 => ROOM 00A6\n; STAIRS0 0xA6 => ROOM 00A6\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004D", + "code": "RoomHeader_Room004D:\n#_04FA05: db $20, $1A, $0E, $0C, $00, $32, $3F, $00, $00, $A6, $A6\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x6E => ROOM 006E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004E", + "code": "RoomHeader_Room004E:\n#_04FA10: db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $6E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xBE => ROOM 00BE\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x04 => ROOM 0004 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room004F", + "code": "RoomHeader_Room004F:\n#_04FA1B: db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $BE\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x00 => ROOM 0000\n; STAIRS1 0x00 => ROOM 0000\n; STAIRS2 0x01 => ROOM 0001\n; STAIRS3 0x01 => ROOM 0001\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0050", + "code": "RoomHeader_Room0050:\n#_04FA25: db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x03\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x61 => ROOM 0061\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0051", + "code": "RoomHeader_Room0051:\n#_04FA33: db $C0, $00, $00, $03, $00, $00, $00, $00, $00, $00, $61\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x00 => ROOM 0000\n; STAIRS1 0x00 => ROOM 0000\n; STAIRS2 0x01 => ROOM 0001\n; STAIRS3 0x01 => ROOM 0001\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0052", + "code": "RoomHeader_Room0052:\n#_04FA3E: db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x04\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x63 => ROOM 0063\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x0A => ROOM 000A - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0053", + "code": "RoomHeader_Room0053:\n#_04FA4C: db $C0, $04, $05, $0A, $00, $03, $00, $00, $00, $00, $63\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x34 => ROOM 0034\n; STAIRS0 0x34 => ROOM 0034\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x10 => ROOM 0010 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0054", + "code": "RoomHeader_Room0054:\n#_04FA57: db $20, $0A, $08, $11, $00, $00, $00, $00, $00, $34, $34\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x01\n; BLKSET 0x10\n; SPRSET 0x0D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0D - leaked value\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x23 => ROOM 0023 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0055", + "code": "RoomHeader_Room0055:\n#_04FA62: db $01, $01, $10, $0D, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x23 - Holes 1\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0D - leaked value\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0056", + "code": "RoomHeader_Room0056:\n#_04FA69: db $00, $0D, $09, $13, $00, $23, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0D - leaked value\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x21 => ROOM 0021 - leaked value\n; STAIRS3 0x28 => ROOM 0028 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0057", + "code": "RoomHeader_Room0057:\n#_04FA70: db $00, $0D, $09, $13, $00, $16, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x21 - Holes 0\n; EFFECT2 0x28 - Pull switch bomb wall\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x0D - leaked value'\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0058", + "code": "RoomHeader_Room0058:\n#_04FA77: db $00, $0D, $09, $13, $00, $21, $28\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x10 - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x15 => ROOM 0015 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x25 => ROOM 0025 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0059", + "code": "RoomHeader_Room0059:\n#_04FA7E: db $C0, $0D, $09, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x10\n; BLKSET 0x07\n; SPRSET 0x15\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x1B - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005A", + "code": "RoomHeader_Room005A:\n#_04FA85: db $00, $10, $07, $15, $00, $25, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x1B\n; BLKSET 0x0E\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x1B - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005B", + "code": "RoomHeader_Room005B:\n#_04FA8C: db $C0, $1B, $0E, $0A, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1B\n; BLKSET 0x0E\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x5D => ROOM 005D\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x24 => ROOM 0024 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005C", + "code": "RoomHeader_Room005C:\n#_04FA93: db $00, $1B, $0E, $0A, $00, $00, $00, $00, $00, $00, $5D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x24\n; BLKSET 0x0E\n; SPRSET 0x23\n; BGMOVE 0x00\n; EFFECT1 0x09 - Quadrant kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x5C => ROOM 005C\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005D", + "code": "RoomHeader_Room005D:\n#_04FA9E: db $00, $24, $0E, $23, $00, $09, $00, $00, $00, $00, $5C\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x7E => ROOM 007E\n; STAIRS0 0x7E => ROOM 007E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005E", + "code": "RoomHeader_Room005E:\n#_04FAA9: db $20, $13, $0B, $1C, $00, $00, $00, $00, $00, $7E, $7E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x3F => ROOM 003F\n; STAIRS1 0x7F => ROOM 007F\n; STAIRS2 0xC0 => ROOM 00C0 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room005F", + "code": "RoomHeader_Room005F:\n#_04FAB4: db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $3F, $7F\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x00 - leaked value\n; WARP 0x00 => ROOM 0000 - leaked value\n; STAIRS0 0x04 => ROOM 0004 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0060", + "code": "RoomHeader_Room0060:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0062", + "code": "RoomHeader_Room0062:\n#_04FAC0: db $C0, $00, $00, $04, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x00\n; BLKSET 0x00\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x51 => ROOM 0051\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x09 => ROOM 0009 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0061", + "code": "RoomHeader_Room0061:\n#_04FAC7: db $C0, $00, $00, $04, $00, $00, $00, $08, $00, $00, $51\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x0D - SW block door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x53 => ROOM 0053\n; STAIRS1 0xE0 => ROOM 00E0 - leaked value\n; STAIRS2 0x23 => ROOM 0023 - leaked value\n; STAIRS3 0x0A => ROOM 000A - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0063", + "code": "RoomHeader_Room0063:\n#_04FAD2: db $00, $09, $05, $0A, $00, $0D, $00, $00, $00, $00, $53\n\n; =========================================================\n; BG2PROP 0xE0\n; PALETTE 0x23\n; BLKSET 0x0A\n; SPRSET 0x21\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xAB => ROOM 00AB\n; STAIRS1 0xE0 => ROOM 00E0 - leaked value\n; STAIRS2 0x23 => ROOM 0023 - leaked value\n; STAIRS3 0x0A => ROOM 000A - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0064", + "code": "RoomHeader_Room0064:\n#_04FADD: db $E0, $23, $0A, $21, $00, $17, $00, $00, $00, $00, $AB\n\n; =========================================================\n; BG2PROP 0xE0\n; PALETTE 0x23\n; BLKSET 0x0A\n; SPRSET 0x21\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xAC => ROOM 00AC\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x0A => ROOM 000A - leaked value\n; STAIRS2 0x08 => ROOM 0008 - leaked value\n; STAIRS3 0x11 => ROOM 0011 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0065", + "code": "RoomHeader_Room0065:\n#_04FAE8: db $E0, $23, $0A, $21, $00, $00, $00, $00, $00, $AC\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x3C - Push block chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x16 => ROOM 0016\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0D => ROOM 000D - leaked value\n; STAIRS3 0x09 => ROOM 0009 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0066", + "code": "RoomHeader_Room0066:\n#_04FAF2: db $C0, $0A, $08, $11, $00, $3C, $00, $00, $00, $00, $16\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x22 - Chest holes 0\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0D - leaked value\n; WARP 0x09 => ROOM 0009 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0067", + "code": "RoomHeader_Room0067:\n#_04FAFD: db $00, $0D, $09, $13, $00, $22, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0D\n; BLKSET 0x09\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x07 => ROOM 0007 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0068", + "code": "RoomHeader_Room0068:\n#_04FB04: db $00, $0D, $09, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x0F\n; BLKSET 0x07\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x1A => ROOM 001A\n; STAIRS1 0x1A => ROOM 001A\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x1B => ROOM 001B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0069", + "code": "RoomHeader_Room0069:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006A", + "code": "RoomHeader_Room006A:\n#_04FB0B: db $01, $0F, $07, $19, $00, $00, $00, $00, $00, $00, $1A, $1A\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1B\n; BLKSET 0x0E\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x08 - S kill door\n; EFFECT2 0x0B - NW block door\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x0C => ROOM 000C\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x24 => ROOM 0024 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006B", + "code": "RoomHeader_Room006B:\n#_04FB17: db $00, $1B, $0E, $0A, $00, $08, $0B, $00, $00, $00, $0C\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x24\n; BLKSET 0x0E\n; SPRSET 0x23\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x3F - Rekillable boss\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xA5 => ROOM 00A5\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x24 => ROOM 0024 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006C", + "code": "RoomHeader_Room006C:\n#_04FB22: db $00, $24, $0E, $23, $00, $03, $3F, $00, $00, $00, $A5\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x24\n; BLKSET 0x0E\n; SPRSET 0x23\n; BGMOVE 0x00\n; EFFECT1 0x05 - W kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x0B => ROOM 000B - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x02 => ROOM 0002 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006D", + "code": "RoomHeader_Room006D:\n#_04FB2D: db $00, $24, $0E, $23, $00, $05, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x02 - NE kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x4E => ROOM 004E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006E", + "code": "RoomHeader_Room006E:\n#_04FB34: db $00, $13, $0B, $1C, $00, $02, $00, $00, $00, $00, $4E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x71 => ROOM 0071\n; STAIRS1 0x80 => ROOM 0080\n; STAIRS2 0xC0 => ROOM 00C0 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room006F", + "code": "RoomHeader_Room006F:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0070", + "code": "RoomHeader_Room0070:\n#_04FB3F: db $00, $01, $01, $04, $00, $00, $00, $08, $00, $00, $71, $80\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x08 - S kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x70 => ROOM 0070\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0071", + "code": "RoomHeader_Room0071:\n#_04FB4B: db $C0, $01, $01, $04, $00, $08, $00, $00, $00, $00, $70\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x01 => ROOM 0001\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x09 => ROOM 0009 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0072", + "code": "RoomHeader_Room0072:\n#_04FB56: db $C0, $01, $01, $04, $00, $00, $00, $08, $00, $00, $01\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x09 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x27 => ROOM 0027 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0073", + "code": "RoomHeader_Room0073:\n#_04FB61: db $00, $09, $05, $0A, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x09 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0074", + "code": "RoomHeader_Room0074:\n#_04FB68: db $00, $09, $05, $0A, $00, $27, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x80 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0008 - leaked value\n; STAIRS0 0x11 => ROOM 0011 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x18 => ROOM 0018 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0075", + "code": "RoomHeader_Room0075:\n#_04FB6F: db $00, $09, $05, $0A, $00, $01, $00\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x18 - Water drain\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x26 => ROOM 0026\n; STAIRS1 0x26 => ROOM 0026\n; STAIRS2 0x26 => ROOM 0026\n; STAIRS3 0xC0 => ROOM 00C0 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0076", + "code": "RoomHeader_Room0076:\n#_04FB76: db $80, $0A, $08, $11, $00, $00, $18, $00, $00, $00, $26, $26, $26\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xA7 => ROOM 00A7\n; STAIRS0 0x31 => ROOM 0031\n; STAIRS1 0x87 => ROOM 0087\n; STAIRS2 0x87 => ROOM 0087\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0077", + "code": "RoomHeader_Room0077:\n#_04FB83: db $C0, $06, $05, $19, $00, $00, $00, $00, $00, $A7, $31, $87, $87\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x39 - Holes 7\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x9D => ROOM 009D\n; STAIRS0 0x00 => ROOM 0000 - leaked value\n; STAIRS1 0x28 => ROOM 0028 - leaked value\n; STAIRS2 0x0E => ROOM 000E - leaked value\n; STAIRS3 0x13 => ROOM 0013 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0078", + "code": "RoomHeader_Room0078:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0079", + "code": "RoomHeader_Room0079:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007A", + "code": "RoomHeader_Room007A:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007B", + "code": "RoomHeader_Room007B:\n#_04FB90: db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x20 - Exploding wall switch\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x28 - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x04 => ROOM 0004 - leaked value\n; STAIRS3 0x3C => ROOM 003C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007C", + "code": "RoomHeader_Room007C:\n#_04FB9A: db $00, $28, $0E, $13, $00, $20, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x04 - SE kill door\n; EFFECT2 0x3C - Push block chest\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x9B => ROOM 009B\n; STAIRS0 0x20 => ROOM 0020 - leaked value\n; STAIRS1 0x13 => ROOM 0013 - leaked value\n; STAIRS2 0x0B => ROOM 000B - leaked value\n; STAIRS3 0x1C => ROOM 001C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007D", + "code": "RoomHeader_Room007D:\n#_04FBA1: db $00, $28, $0E, $13, $00, $04, $3C, $00, $00, $9B\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x2B - SW kill chest\n; EFFECT2 0x17 - Toggle switch door\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x9E => ROOM 009E\n; STAIRS0 0x5E => ROOM 005E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007E", + "code": "RoomHeader_Room007E:\n#_04FBAB: db $20, $13, $0B, $1C, $00, $2B, $17, $00, $00, $9E, $5E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x5F => ROOM 005F\n; STAIRS1 0x60 => ROOM 0060 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room007F", + "code": "RoomHeader_Room007F:\n#_04FBB6: db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $00, $5F\n\n; =========================================================\n; BG2PROP 0x60\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x70 => ROOM 0070\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x01 => ROOM 0001 - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0080", + "code": "RoomHeader_Room0080:\n#_04FBC1: db $60, $01, $01, $04, $00, $00, $00, $00, $00, $00, $70\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x01\n; BLKSET 0x01\n; SPRSET 0x04\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x09 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0D => ROOM 000D - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0081", + "code": "RoomHeader_Room0081:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0082", + "code": "RoomHeader_Room0082:\n#_04FBCC: db $C0, $01, $01, $04, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x0D - SW block door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x09 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0083", + "code": "RoomHeader_Room0083:\n#_04FBD3: db $00, $09, $05, $0A, $00, $0D, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x09 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x0A => ROOM 000A - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x02 => ROOM 0002 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0084", + "code": "RoomHeader_Room0084:\n#_04FBDA: db $00, $09, $05, $0A, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x09\n; BLKSET 0x05\n; SPRSET 0x0A\n; BGMOVE 0x00\n; EFFECT1 0x02 - NE kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x06 - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x19 => ROOM 0019 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x3E => ROOM 003E - leaked value\n; STAIRS3 0x01 => ROOM 0001 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0085", + "code": "RoomHeader_Room0085:\n#_04FBE1: db $00, $09, $05, $0A, $00, $02, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x3E - Torch chest\n; EFFECT2 0x01 - NW kill door\n; PLANES1 0x28\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x77 => ROOM 0077\n; STAIRS1 0x77 => ROOM 0077\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0086", + "code": "RoomHeader_Room0086:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0087", + "code": "RoomHeader_Room0087:\n#_04FBE8: db $00, $06, $05, $19, $00, $3E, $01, $28, $00, $00, $77, $77\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x02\n; PLANES2 0x00\n; WARP 0xA9 => ROOM 00A9\n; STAIRS0 0x00 => ROOM 0000 - leaked value\n; STAIRS1 0x28 => ROOM 0028 - leaked value\n; STAIRS2 0x0E => ROOM 000E - leaked value\n; STAIRS3 0x13 => ROOM 0013 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0088", + "code": "RoomHeader_Room0088:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0089", + "code": "RoomHeader_Room0089:\n#_04FBF4: db $00, $0B, $05, $08, $00, $00, $00, $02, $00, $A9\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x3A - Holes 8\n; EFFECT2 0x0C - NE block door\n; PLANES1 0x20 - leaked value\n; PLANES2 0x28 - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008A", + "code": "RoomHeader_Room008A:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008B", + "code": "RoomHeader_Room008B:\n#_04FBFE: db $00, $28, $0E, $13, $00, $3A, $0C\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x28\n; PLANES2 0x00\n; WARP 0x1C => ROOM 001C\n; STAIRS0 0x0C => ROOM 000C\n; STAIRS1 0x0C => ROOM 000C\n; STAIRS2 0x1C => ROOM 001C\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008C", + "code": "RoomHeader_Room008C:\n#_04FC05: db $20, $28, $0E, $13, $00, $16, $00, $28, $00, $1C, $0C, $0C, $1C\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x29 - NW kill chest\n; PLANES1 0x00 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x0B => ROOM 000B - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008D", + "code": "RoomHeader_Room008D:\n#_04FC12: db $00, $28, $0E, $13, $00, $33, $29\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xAE => ROOM 00AE\n; STAIRS1 0x80 => ROOM 0080 - leaked value\n; STAIRS2 0x12 => ROOM 0012 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008E", + "code": "RoomHeader_Room008E:\n#_04FC19: db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $00, $AE\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x12\n; BLKSET 0x0C\n; SPRSET 0x16\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room008F", + "code": "RoomHeader_Room008F:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0090", + "code": "RoomHeader_Room0090:\n#_04FC24: db $80, $12, $0C, $16, $00, $25, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xA0 => ROOM 00A0\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x11 => ROOM 0011 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0091", + "code": "RoomHeader_Room0091:\n#_04FC2B: db $00, $11, $0C, $1C, $00, $00, $00, $00, $00, $00, $A0\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x16 => ROOM 0016 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0092", + "code": "RoomHeader_Room0092:\n#_04FC36: db $01, $11, $0C, $1C, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xA2 => ROOM 00A2\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x25 => ROOM 0025 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0093", + "code": "RoomHeader_Room0093:\n#_04FC3D: db $01, $11, $0C, $1C, $00, $16, $00, $08, $00, $00, $A2\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x25\n; BLKSET 0x0E\n; SPRSET 0x24\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x25 - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x24 => ROOM 0024 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x33 => ROOM 0033 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0094", + "code": "RoomHeader_Room0094:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0095", + "code": "RoomHeader_Room0095:\n#_04FC48: db $00, $25, $0E, $24, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x25\n; BLKSET 0x0E\n; SPRSET 0x24\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x3D => ROOM 003D\n; STAIRS1 0x68 => ROOM 0068 - leaked value\n; STAIRS2 0x11 => ROOM 0011 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0096", + "code": "RoomHeader_Room0096:\n#_04FC4F: db $00, $25, $0E, $24, $00, $33, $00, $00, $00, $00, $3D\n\n; =========================================================\n; BG2PROP 0x68\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x1C - Moving wall east\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xD1 => ROOM 00D1\n; STAIRS0 0xD1 => ROOM 00D1\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x11 => ROOM 0011 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0097", + "code": "RoomHeader_Room0097:\n#_04FC5A: db $68, $11, $0C, $1D, $00, $1C, $00, $00, $00, $D1, $D1\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xD2 => ROOM 00D2\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x0B => ROOM 000B - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0098", + "code": "RoomHeader_Room0098:\n#_04FC65: db $00, $11, $0C, $1C, $00, $00, $00, $00, $00, $00, $D2\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xDA => ROOM 00DA\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x28 => ROOM 0028 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0099", + "code": "RoomHeader_Room0099:\n#_04FC70: db $01, $0B, $05, $08, $00, $00, $00, $00, $00, $00, $DA\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x7D => ROOM 007D\n; STAIRS0 0x00 => ROOM 0000 - leaked value\n; STAIRS1 0x28 => ROOM 0028 - leaked value\n; STAIRS2 0x0E => ROOM 000E - leaked value\n; STAIRS3 0x13 => ROOM 0013 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009A", + "code": "RoomHeader_Room009A:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009B", + "code": "RoomHeader_Room009B:\n#_04FC7B: db $00, $28, $0E, $13, $00, $00, $00, $00, $00, $7D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x06\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x28 - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x06 => ROOM 0006 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x3B => ROOM 003B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009C", + "code": "RoomHeader_Room009C:\n#_04FC85: db $00, $28, $0E, $13, $06, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x28\n; BLKSET 0x0E\n; SPRSET 0x13\n; BGMOVE 0x06\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x3B - Chest holes 8\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x7B => ROOM 007B\n; STAIRS0 0x20 => ROOM 0020 - leaked value\n; STAIRS1 0x13 => ROOM 0013 - leaked value\n; STAIRS2 0x0B => ROOM 000B - leaked value\n; STAIRS3 0x1C => ROOM 001C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009D", + "code": "RoomHeader_Room009D:\n#_04FC8C: db $00, $28, $0E, $13, $06, $00, $3B, $00, $00, $7B\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xBE => ROOM 00BE\n; STAIRS0 0xBE => ROOM 00BE\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009E", + "code": "RoomHeader_Room009E:\n#_04FC96: db $20, $13, $0B, $1C, $00, $00, $00, $00, $00, $BE, $BE\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x12 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1D => ROOM 001D - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room009F", + "code": "RoomHeader_Room009F:\n#_04FCA1: db $00, $13, $0B, $1C, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x12\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x91 => ROOM 0091\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x11 => ROOM 0011 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A0", + "code": "RoomHeader_Room00A0:\n#_04FCA8: db $00, $12, $0C, $1D, $00, $00, $00, $00, $00, $00, $91\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1D => ROOM 001D - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A1", + "code": "RoomHeader_Room00A1:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A3", + "code": "RoomHeader_Room00A3:\n#_04FCB3: db $00, $11, $0C, $1D, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x93 => ROOM 0093\n; STAIRS1 0x60 => ROOM 0060 - leaked value\n; STAIRS2 0x19 => ROOM 0019 - leaked value\n; STAIRS3 0x0D => ROOM 000D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A2", + "code": "RoomHeader_Room00A2:\n#_04FCBA: db $C0, $11, $0C, $1D, $00, $00, $00, $00, $00, $00, $93\n\n; =========================================================\n; BG2PROP 0x60\n; PALETTE 0x19\n; BLKSET 0x0D\n; SPRSET 0x17\n; BGMOVE 0x04\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x25 - leaked value\n; WARP 0x0E => ROOM 000E - leaked value\n; STAIRS0 0x24 => ROOM 0024 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A4", + "code": "RoomHeader_Room00A4:\n#_04FCC5: db $60, $19, $0D, $17, $04, $25, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x25\n; BLKSET 0x0E\n; SPRSET 0x24\n; BGMOVE 0x00\n; EFFECT1 0x07 - N kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x6C => ROOM 006C\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x25 => ROOM 0025 - leaked value\n; STAIRS3 0x0E => ROOM 000E - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A5", + "code": "RoomHeader_Room00A5:\n#_04FCCC: db $00, $25, $0E, $24, $00, $07, $00, $00, $00, $00, $6C\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x25\n; BLKSET 0x0E\n; SPRSET 0x24\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x4D => ROOM 004D\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x06 => ROOM 0006 - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A6", + "code": "RoomHeader_Room00A6:\n#_04FCD7: db $00, $25, $0E, $24, $00, $00, $00, $00, $00, $00, $4D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x06\n; BLKSET 0x05\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x17 => ROOM 0017\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x0B => ROOM 000B - leaked value\n; STAIRS2 0x05 => ROOM 0005 - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A7", + "code": "RoomHeader_Room00A7:\n#_04FCE2: db $00, $06, $05, $19, $00, $00, $00, $00, $00, $17\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A8", + "code": "RoomHeader_Room00A8:\n#_04FCEC: db $C0, $0B, $05, $08, $00, $03, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x89 => ROOM 0089\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x0B => ROOM 000B - leaked value\n; STAIRS2 0x05 => ROOM 0005 - leaked value\n; STAIRS3 0x08 => ROOM 0008 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00A9", + "code": "RoomHeader_Room00A9:\n#_04FCF3: db $C0, $0B, $05, $08, $00, $17, $00, $00, $00, $89\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AA", + "code": "RoomHeader_Room00AA:\n#_04FCFD: db $C0, $0B, $05, $08, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x64 => ROOM 0064\n; STAIRS1 0xE0 => ROOM 00E0 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x0A => ROOM 000A - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AB", + "code": "RoomHeader_Room00AB:\n#_04FD04: db $00, $17, $0A, $1B, $00, $00, $00, $00, $00, $00, $64\n\n; =========================================================\n; BG2PROP 0xE0\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x20\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x0B => ROOM 000B - leaked value\n; STAIRS0 0x1C => ROOM 001C - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x27 => ROOM 0027 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AC", + "code": "RoomHeader_Room00AC:\n#_04FD0F: db $E0, $17, $0A, $20, $00, $25, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x8E => ROOM 008E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AD", + "code": "RoomHeader_Room00AD:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AE", + "code": "RoomHeader_Room00AE:\n#_04FD16: db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $8E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x1C\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x26 - leaked value\n; WARP 0x02 => ROOM 0002 - leaked value\n; STAIRS0 0x21 => ROOM 0021 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x05 => ROOM 0005 - leaked value\n; STAIRS3 0x02 => ROOM 0002 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00AF", + "code": "RoomHeader_Room00AF:\n#_04FD21: db $00, $13, $0B, $1C, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x26\n; BLKSET 0x02\n; SPRSET 0x21\n; BGMOVE 0x00\n; EFFECT1 0x05 - W kill door\n; EFFECT2 0x02 - NE kill door\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x40 => ROOM 0040\n; STAIRS1 0xC0 => ROOM 00C0\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x11 => ROOM 0011 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B0", + "code": "RoomHeader_Room00B0:\n#_04FD28: db $00, $26, $02, $21, $00, $05, $02, $08, $00, $00, $40, $C0\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x02\n; PLANES2 0x00\n; WARP 0xB2 => ROOM 00B2\n; STAIRS0 0xC0 => ROOM 00C0 - leaked value\n; STAIRS1 0x11 => ROOM 0011 - leaked value\n; STAIRS2 0x0C => ROOM 000C - leaked value\n; STAIRS3 0x1D => ROOM 001D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B1", + "code": "RoomHeader_Room00B1:\n#_04FD34: db $00, $11, $0C, $1D, $00, $00, $00, $02, $00, $B2\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x0E - SE block door\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1D => ROOM 001D - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x27 => ROOM 0027 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B2", + "code": "RoomHeader_Room00B2:\n#_04FD3E: db $C0, $11, $0C, $1D, $00, $03, $0E\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x19 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x17 => ROOM 0017 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B3", + "code": "RoomHeader_Room00B3:\n#_04FD45: db $C0, $11, $0C, $1D, $00, $27, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x19\n; BLKSET 0x0D\n; SPRSET 0x17\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xC4 => ROOM 00C4\n; STAIRS1 0x01 => ROOM 0001 - leaked value\n; STAIRS2 0x18 => ROOM 0018 - leaked value\n; STAIRS3 0x0D => ROOM 000D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B4", + "code": "RoomHeader_Room00B4:\n#_04FD4C: db $00, $19, $0D, $17, $00, $00, $00, $00, $00, $00, $C4\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x25\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x04 => ROOM 0004\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x18 => ROOM 0018 - leaked value\n; STAIRS3 0x0D => ROOM 000D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B5", + "code": "RoomHeader_Room00B5:\n#_04FD57: db $01, $18, $0D, $25, $00, $17, $00, $00, $00, $00, $04\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x1E\n; BGMOVE 0x00\n; EFFECT1 0x04 - SE kill door\n; EFFECT2 0x3C - Push block chest\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x15 => ROOM 0015\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0B => ROOM 000B - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B6", + "code": "RoomHeader_Room00B6:\n#_04FD62: db $00, $18, $0D, $1E, $00, $04, $3C, $00, $00, $00, $15\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B8", + "code": "RoomHeader_Room00B8:\n#_04FD6D: db $00, $0B, $05, $08, $00, $27, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00B9", + "code": "RoomHeader_Room00B9:\n#_04FD74: db $C0, $0B, $05, $08, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x40 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BA", + "code": "RoomHeader_Room00BA:\n#_04FD7B: db $01, $0B, $05, $08, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x40\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BB", + "code": "RoomHeader_Room00BB:\n#_04FD82: db $40, $17, $0A, $1B, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x45 => ROOM 0045\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BC", + "code": "RoomHeader_Room00BC:\n#_04FD89: db $00, $17, $0A, $1B, $00, $17, $00, $00, $00, $00, $45\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x16 - Hold switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x4F => ROOM 004F\n; STAIRS0 0x9E => ROOM 009E\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x13 => ROOM 0013 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BD", + "code": "RoomHeader_Room00BD:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BE", + "code": "RoomHeader_Room00BE:\n#_04FD94: db $00, $13, $0B, $29, $00, $16, $00, $00, $00, $4F, $9E\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x00 - leaked value\n; WARP 0x02 => ROOM 0002 - leaked value\n; STAIRS0 0x27 => ROOM 0027 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x02 => ROOM 0002 - leaked value\n; STAIRS3 0x0F => ROOM 000F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00BF", + "code": "RoomHeader_Room00BF:\n#_04FD9F: db $00, $13, $0B, $29, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x00\n; BLKSET 0x02\n; SPRSET 0x27\n; BGMOVE 0x00\n; EFFECT1 0x02 - NE kill door\n; EFFECT2 0x0F - W block door\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xB0 => ROOM 00B0\n; STAIRS1 0xD0 => ROOM 00D0\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x11 => ROOM 0011 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C0", + "code": "RoomHeader_Room00C0:\n#_04FDA6: db $01, $00, $02, $27, $00, $02, $0F, $00, $00, $00, $B0, $D0\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1D => ROOM 001D - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x27 => ROOM 0027 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C1", + "code": "RoomHeader_Room00C1:\n#_04FDB2: db $00, $11, $0C, $1D, $00, $33, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x27 - Switch chest\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x11 - leaked value\n; WARP 0x0C => ROOM 000C - leaked value\n; STAIRS0 0x1D => ROOM 001D - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C2", + "code": "RoomHeader_Room00C2:\n#_04FDB9: db $C0, $11, $0C, $1D, $00, $27, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x25 => ROOM 0025 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C3", + "code": "RoomHeader_Room00C3:\n#_04FDC0: db $C0, $11, $0C, $1D, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x25\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xB4 => ROOM 00B4\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x18 => ROOM 0018 - leaked value\n; STAIRS3 0x0D => ROOM 000D - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C4", + "code": "RoomHeader_Room00C4:\n#_04FDC7: db $00, $18, $0D, $25, $00, $00, $00, $00, $00, $00, $B4\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x25\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x18 - leaked value\n; WARP 0x0D => ROOM 000D - leaked value\n; STAIRS0 0x1E => ROOM 001E - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x33 => ROOM 0033 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C5", + "code": "RoomHeader_Room00C5:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D5", + "code": "RoomHeader_Room00D5:\n#_04FDD2: db $00, $18, $0D, $25, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x18\n; BLKSET 0x0D\n; SPRSET 0x1E\n; BGMOVE 0x00\n; EFFECT1 0x33 - Torch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x09 => ROOM 0009 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x15 => ROOM 0015 - leaked value\n; STAIRS3 0x25 => ROOM 0025 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C7", + "code": "RoomHeader_Room00C7:\n#_04FDD9: db $00, $18, $0D, $1E, $00, $33, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x09\n; BGMOVE 0x00\n; EFFECT1 0x15 - Beat dungeon door\n; EFFECT2 0x25 - Dungeon prize\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C8", + "code": "RoomHeader_Room00C8:\n#_04FDE0: db $00, $0B, $05, $09, $00, $15, $25\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x17 - leaked value\n; WARP 0x0A => ROOM 000A - leaked value\n; STAIRS0 0x1B => ROOM 001B - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00C9", + "code": "RoomHeader_Room00C9:\n#_04FDE7: db $00, $0B, $05, $08, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x17\n; BLKSET 0x0A\n; SPRSET 0x1B\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x20 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x0B => ROOM 000B - leaked value\n; STAIRS0 0x29 => ROOM 0029 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x14 => ROOM 0014 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CA", + "code": "RoomHeader_Room00CA:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CB", + "code": "RoomHeader_Room00CB:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CC", + "code": "RoomHeader_Room00CC:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DB", + "code": "RoomHeader_Room00DB:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DC", + "code": "RoomHeader_Room00DC:\n#_04FDEE: db $C0, $17, $0A, $1B, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x13\n; BLKSET 0x0B\n; SPRSET 0x29\n; BGMOVE 0x00\n; EFFECT1 0x14 - Pull switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xDE => ROOM 00DE\n; STAIRS0 0x01 => ROOM 0001 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x02 => ROOM 0002 - leaked value\n; STAIRS3 0x21 => ROOM 0021 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CD", + "code": "RoomHeader_Room00CD:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CE", + "code": "RoomHeader_Room00CE:\n#_04FDF5: db $20, $13, $0B, $29, $00, $14, $00, $00, $00, $DE\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x00\n; BLKSET 0x02\n; SPRSET 0x21\n; BGMOVE 0x00\n; EFFECT1 0x0F - W block door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xC0 => ROOM 00C0\n; STAIRS1 0xE0 => ROOM 00E0\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x11 => ROOM 0011 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00CF", + "code": "RoomHeader_Room00CF:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D0", + "code": "RoomHeader_Room00D0:\n#_04FDFF: db $01, $00, $02, $21, $00, $0F, $00, $00, $00, $00, $C0, $E0\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xB1 => ROOM 00B1\n; STAIRS0 0x97 => ROOM 0097\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x11 => ROOM 0011 - leaked value\n; STAIRS3 0x0C => ROOM 000C - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D1", + "code": "RoomHeader_Room00D1:\n#_04FE0B: db $00, $11, $0C, $1D, $00, $00, $00, $00, $00, $B1, $97\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x11\n; BLKSET 0x0C\n; SPRSET 0x1D\n; BGMOVE 0x00\n; EFFECT1 0x0A - Full room kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x98 => ROOM 0098\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x0B => ROOM 000B - leaked value\n; STAIRS3 0x05 => ROOM 0005 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D2", + "code": "RoomHeader_Room00D2:\n#_04FE16: db $00, $11, $0C, $1D, $00, $0A, $00, $00, $00, $00, $98\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x06 - E kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D3", + "code": "RoomHeader_Room00D3:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D4", + "code": "RoomHeader_Room00D4:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D7", + "code": "RoomHeader_Room00D7:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D8", + "code": "RoomHeader_Room00D8:\n#_04FE21: db $00, $0B, $05, $08, $00, $06, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0B - leaked value\n; WARP 0x05 => ROOM 0005 - leaked value\n; STAIRS0 0x08 => ROOM 0008 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x17 => ROOM 0017 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00D9", + "code": "RoomHeader_Room00D9:\n#_04FE28: db $00, $0B, $05, $08, $00, $17, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0B\n; BLKSET 0x05\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x17 - Toggle switch door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0x99 => ROOM 0099\n; STAIRS1 0xE0 => ROOM 00E0 - leaked value\n; STAIRS2 0x14 => ROOM 0014 - leaked value\n; STAIRS3 0x0B => ROOM 000B - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DA", + "code": "RoomHeader_Room00DA:\n#_04FE2F: db $00, $0B, $05, $08, $00, $17, $00, $00, $00, $00, $99\n\n; =========================================================\n; BG2PROP 0xE0\n; PALETTE 0x14\n; BLKSET 0x0B\n; SPRSET 0x16\n; BGMOVE 0x00\n; EFFECT1 0x25 - Dungeon prize\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x20 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DD", + "code": "RoomHeader_Room00DD:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DE", + "code": "RoomHeader_Room00DE:\n#_04FE3A: db $E0, $14, $0B, $16, $00, $25, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xEF => ROOM 00EF\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x26 => ROOM 0026 - leaked value\n; STAIRS3 0x02 => ROOM 0002 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00DF", + "code": "RoomHeader_Room00DF:\n#_04FE41: db $C0, $20, $06, $13, $00, $00, $00, $00, $00, $00, $EF\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x26\n; BLKSET 0x02\n; SPRSET 0x21\n; BGMOVE 0x00\n; EFFECT1 0x01 - NW kill door\n; EFFECT2 0x2A - NE kill chest\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xD0 => ROOM 00D0\n; STAIRS1 0xC0 => ROOM 00C0 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E0", + "code": "RoomHeader_Room00E0:\n#_04FE4C: db $00, $26, $02, $21, $00, $01, $2A, $00, $00, $00, $D0\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x28\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x20 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E1", + "code": "RoomHeader_Room00E1:\n#_04FE57: db $C0, $07, $06, $28, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x20 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x09 => ROOM 0009 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E2", + "code": "RoomHeader_Room00E2:\n#_04FE5E: db $00, $20, $06, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x09\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x14 => ROOM 0014 - leaked value\n; STAIRS0 0x01 => ROOM 0001 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E3", + "code": "RoomHeader_Room00E3:\n#_04FE65: db $C0, $20, $06, $09, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x07\n; BLKSET 0x14\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x01 => ROOM 0001 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E4", + "code": "RoomHeader_Room00E4:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E5", + "code": "RoomHeader_Room00E5:\n#_04FE6C: db $01, $07, $14, $01, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x20 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E6", + "code": "RoomHeader_Room00E6:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E7", + "code": "RoomHeader_Room00E7:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F0", + "code": "RoomHeader_Room00F0:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F1", + "code": "RoomHeader_Room00F1:\n#_04FE73: db $01, $07, $06, $01, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xF8 => ROOM 00F8\n; STAIRS0 0xF8 => ROOM 00F8\n; STAIRS1 0xF8 => ROOM 00F8\n; STAIRS2 0xF8 => ROOM 00F8\n; STAIRS3 0xF8 => ROOM 00F8\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E8", + "code": "RoomHeader_Room00E8:\n#_04FE7A: db $20, $07, $06, $13, $00, $00, $00, $00, $00, $F8, $F8, $F8, $F8, $F8\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xFA => ROOM 00FA\n; STAIRS0 0xFA => ROOM 00FA\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00E9", + "code": "RoomHeader_Room00E9:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00EA", + "code": "RoomHeader_Room00EA:\n#_04FE88: db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FA, $FA\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xFB => ROOM 00FB\n; STAIRS0 0xFB => ROOM 00FB\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x20 => ROOM 0020 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00EB", + "code": "RoomHeader_Room00EB:\n#_04FE93: db $20, $07, $06, $19, $00, $00, $00, $00, $00, $FB, $FB\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xFD => ROOM 00FD\n; STAIRS0 0xFD => ROOM 00FD\n; STAIRS1 0xFD => ROOM 00FD\n; STAIRS2 0x20 => ROOM 0020 - leaked value\n; STAIRS3 0x20 => ROOM 0020 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00EC", + "code": "RoomHeader_Room00EC:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00ED", + "code": "RoomHeader_Room00ED:\n#_04FE9E: db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FD, $FD, $FD\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0xFE => ROOM 00FE\n; STAIRS0 0x20 => ROOM 0020 - leaked value\n; STAIRS1 0x20 => ROOM 0020 - leaked value\n; STAIRS2 0x06 => ROOM 0006 - leaked value\n; STAIRS3 0x13 => ROOM 0013 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00EE", + "code": "RoomHeader_Room00EE:\n#_04FEAA: db $20, $20, $06, $13, $00, $00, $00, $00, $00, $FE\n\n; =========================================================\n; BG2PROP 0x20\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x02 - NE kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x08\n; PLANES2 0x00\n; WARP 0xFF => ROOM 00FF\n; STAIRS0 0xDF => ROOM 00DF\n; STAIRS1 0xFF => ROOM 00FF\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x02 => ROOM 0002 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00EF", + "code": "RoomHeader_Room00EF:\n#_04FEB4: db $20, $20, $06, $13, $00, $02, $00, $08, $00, $FF, $DF, $FF\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x02\n; BLKSET 0x03\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing - leaked value\n; EFFECT2 0x02 - NE kill door - leaked value\n; PLANES1 0x03 - leaked value\n; PLANES2 0x0F - leaked value\n; WARP 0x00 => ROOM 0000 - leaked value\n; STAIRS0 0x00 => ROOM 0000 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x07 => ROOM 0007 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F2", + "code": "RoomHeader_Room00F2:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F3", + "code": "RoomHeader_Room00F3:\n#_04FEC0: db $00, $02, $03, $05, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x02\n; BLKSET 0x03\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F4", + "code": "RoomHeader_Room00F4:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F5", + "code": "RoomHeader_Room00F5:\n#_04FEC5: db $00, $02, $03, $0F, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xE8 => ROOM 00E8\n; STAIRS1 0xE8 => ROOM 00E8\n; STAIRS2 0xE8 => ROOM 00E8\n; STAIRS3 0xE8 => ROOM 00E8\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F6", + "code": "RoomHeader_Room00F6:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F7", + "code": "RoomHeader_Room00F7:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F8", + "code": "RoomHeader_Room00F8:\n#_04FECC: db $00, $07, $06, $13, $00, $00, $00, $00, $00, $00, $E8, $E8, $E8, $E8\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x20 - leaked value\n; WARP 0x06 => ROOM 0006 - leaked value\n; STAIRS0 0x13 => ROOM 0013 - leaked value\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x00 => ROOM 0000 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00F9", + "code": "RoomHeader_Room00F9:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FE", + "code": "RoomHeader_Room00FE:\n#_04FEDA: db $00, $20, $06, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xEA => ROOM 00EA\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x07 => ROOM 0007 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FA", + "code": "RoomHeader_Room00FA:\n#_04FEE1: db $C0, $20, $06, $13, $00, $00, $00, $00, $00, $00, $EA\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x19\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xEB => ROOM 00EB\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x20 => ROOM 0020 - leaked value\n; STAIRS3 0x06 => ROOM 0006 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FB", + "code": "RoomHeader_Room00FB:\n\n#_04FEEC: db $00, $07, $06, $19, $00, $00, $00, $00, $00, $00, $EB\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xED => ROOM 00ED\n; STAIRS1 0xED => ROOM 00ED\n; STAIRS2 0x00 => ROOM 0000 - leaked value\n; STAIRS3 0x07 => ROOM 0007 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FC", + "code": "RoomHeader_Room00FC:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FD", + "code": "RoomHeader_Room00FD:\n#_04FEF7: db $00, $20, $06, $13, $00, $00, $00, $00, $00, $00, $ED, $ED\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0000\n; STAIRS0 0xEF => ROOM 00EF\n; STAIRS1 0x00 => ROOM 0000 - leaked value\n; STAIRS2 0x05 => ROOM 0005 - leaked value\n; STAIRS3 0x03 => ROOM 0003 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room00FF", + "code": "RoomHeader_Room00FF:\n#_04FF03: db $00, $07, $06, $05, $00, $00, $00, $00, $00, $00, $EF\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x05\n; BLKSET 0x03\n; SPRSET 0x28\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x1F - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0100", + "code": "RoomHeader_Room0100:\n#_04FF0E: db $00, $05, $03, $28, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1F\n; BLKSET 0x03\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x02 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0F => ROOM 010F - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010F", + "code": "RoomHeader_Room010F:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0110", + "code": "RoomHeader_Room0110:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011C", + "code": "RoomHeader_Room011C:\n#_04FF15: db $00, $1F, $03, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x02\n; BLKSET 0x03\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x15 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0D => ROOM 010D - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0101", + "code": "RoomHeader_Room0101:\n#_04FF1C: db $00, $02, $03, $0F, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x15\n; BLKSET 0x03\n; SPRSET 0x0D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x05 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0F => ROOM 010F - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0102", + "code": "RoomHeader_Room0102:\n#_04FF23: db $00, $15, $03, $0D, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x05\n; BLKSET 0x03\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x15 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0D => ROOM 010D - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0103", + "code": "RoomHeader_Room0103:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0118", + "code": "RoomHeader_Room0118:\n#_04FF2A: db $00, $05, $03, $0F, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x15\n; BLKSET 0x03\n; SPRSET 0x0D\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x1C - leaked value\n; WARP 0x0F => ROOM 010F - leaked value\n; STAIRS0 0x10 => ROOM 0110 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0104", + "code": "RoomHeader_Room0104:\n#_04FF31: db $01, $15, $03, $0D, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1C\n; BLKSET 0x0F\n; SPRSET 0x10\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x1F - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0F => ROOM 010F - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0105", + "code": "RoomHeader_Room0105:\n#_04FF38: db $00, $1C, $0F, $10, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1F\n; BLKSET 0x03\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x02 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x01 => ROOM 0101 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0106", + "code": "RoomHeader_Room0106:\n#_04FF3F: db $00, $1F, $03, $0F, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x02\n; BLKSET 0x03\n; SPRSET 0x01\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x02 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x0E => ROOM 010E - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0107", + "code": "RoomHeader_Room0107:\n#_04FF46: db $00, $02, $03, $01, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x02\n; BLKSET 0x03\n; SPRSET 0x0E\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x05 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0108", + "code": "RoomHeader_Room0108:\n#_04FF4D: db $00, $02, $03, $0E, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x05\n; BLKSET 0x03\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x01 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x10 => ROOM 0110 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0109", + "code": "RoomHeader_Room0109:\n#_04FF54: db $01, $05, $03, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x01\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x10\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x80 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0108 - leaked value\n; STAIRS0 0x08 => ROOM 0108 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x1A => ROOM 011A - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010A", + "code": "RoomHeader_Room010A:\n#_04FF5B: db $01, $07, $06, $10, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x80\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x1A - Water gate\n; PLANES1 0x00 - leaked value\n; PLANES2 0x27 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x08 => ROOM 0108 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x03 => ROOM 0103 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010B", + "code": "RoomHeader_Room010B:\n#_04FF62: db $80, $0A, $08, $08, $00, $00, $1A\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x27\n; BLKSET 0x06\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x0A - leaked value\n; WARP 0x08 => ROOM 0108 - leaked value\n; STAIRS0 0x11 => ROOM 0111 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010C", + "code": "RoomHeader_Room010C:\n#_04FF69: db $00, $27, $06, $08, $00, $03, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x0A\n; BLKSET 0x08\n; SPRSET 0x11\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x14 => ROOM 0114 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010D", + "code": "RoomHeader_Room010D:\n#_04FF70: db $00, $0A, $08, $11, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x14\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x1E - leaked value\n; WARP 0x11 => ROOM 0111 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room010E", + "code": "RoomHeader_Room010E:\n#_04FF77: db $00, $07, $14, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1E\n; BLKSET 0x11\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x14 => ROOM 0114 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0111", + "code": "RoomHeader_Room0111:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0121", + "code": "RoomHeader_Room0121:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0122", + "code": "RoomHeader_Room0122:\n#_04FF7E: db $00, $1E, $11, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x14\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x03 - leaked value\n; WARP 0x10 => ROOM 0110 - leaked value\n; STAIRS0 0x08 => ROOM 0108 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0112", + "code": "RoomHeader_Room0112:\n#_04FF85: db $00, $07, $14, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x03\n; BLKSET 0x10\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x07 => ROOM 0107 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0113", + "code": "RoomHeader_Room0113:\n#_04FF8C: db $00, $03, $10, $08, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x07\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x22 - leaked value\n; WARP 0x12 => ROOM 0112 - leaked value\n; STAIRS0 0x07 => ROOM 0107 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0018", + "code": "RoomHeader_Room0018:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room002C", + "code": "RoomHeader_Room002C:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0114", + "code": "RoomHeader_Room0114:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0115", + "code": "RoomHeader_Room0115:\n#_04FF93: db $00, $07, $06, $07, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x22\n; BLKSET 0x12\n; SPRSET 0x07\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x20 - leaked value\n; WARP 0x14 => ROOM 0114 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0116", + "code": "RoomHeader_Room0116:\n#_04FF9A: db $00, $22, $12, $07, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x20\n; BLKSET 0x14\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xE0 - leaked value\n; PLANES2 0x23 - leaked value\n; WARP 0x0A => ROOM 010A - leaked value\n; STAIRS0 0x0F => ROOM 010F - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0117", + "code": "RoomHeader_Room0117:\n#_04FFA1: db $00, $20, $14, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xE0\n; PALETTE 0x23\n; BLKSET 0x0A\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0100\n; STAIRS0 0x1D => ROOM 011D\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x1C => ROOM 011C - leaked value\n; STAIRS3 0x0F => ROOM 010F - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0119", + "code": "RoomHeader_Room0119:\n#_04FFA8: db $E0, $23, $0A, $0F, $00, $00, $00, $00, $00, $00, $1D\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x1C\n; BLKSET 0x0F\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xC0 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x08 => ROOM 0108 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011A", + "code": "RoomHeader_Room011A:\n#_04FFB3: db $00, $1C, $0F, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xC0\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x08\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x23 - leaked value\n; WARP 0x0A => ROOM 010A - leaked value\n; STAIRS0 0x0F => ROOM 010F - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011B", + "code": "RoomHeader_Room011B:\n#_04FFBA: db $C0, $07, $06, $08, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x23\n; BLKSET 0x0A\n; SPRSET 0x0F\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00\n; PLANES2 0x00\n; WARP 0x00 => ROOM 0100\n; STAIRS0 0x19 => ROOM 0119\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x20 => ROOM 0120 - leaked value\n; STAIRS3 0x06 => ROOM 0106 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011D", + "code": "RoomHeader_Room011D:\n#_04FFC1: db $00, $23, $0A, $0F, $00, $00, $00, $00, $00, $00, $19\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x20\n; BLKSET 0x06\n; SPRSET 0x2A\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x05 - leaked value\n; WARP 0x03 => ROOM 0103 - leaked value\n; STAIRS0 0x05 => ROOM 0105 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011E", + "code": "RoomHeader_Room011E:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0127", + "code": "RoomHeader_Room0127:\n#_04FFCC: db $00, $20, $06, $2A, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x05\n; BLKSET 0x03\n; SPRSET 0x05\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x13 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x13 => ROOM 0113 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room011F", + "code": "RoomHeader_Room011F:\n#_04FFD3: db $00, $05, $03, $05, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x13\n; BLKSET 0x06\n; SPRSET 0x13\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x28 => ROOM 0128 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x03 => ROOM 0103 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0120", + "code": "RoomHeader_Room0120:\n#_04FFDA: db $00, $13, $06, $13, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x28\n; BGMOVE 0x00\n; EFFECT1 0x03 - SW kill door\n; EFFECT2 0x00 - Nothing\n; PLANES1 0x00 - leaked value\n; PLANES2 0x07 - leaked value\n; WARP 0x06 => ROOM 0106 - leaked value\n; STAIRS0 0x28 => ROOM 0128 - leaked value\n; STAIRS1 0x00 => ROOM 0100 - leaked value\n; STAIRS2 0x00 => ROOM 0100 - leaked value\n; STAIRS3 0x00 => ROOM 0100 - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0123", + "code": "RoomHeader_Room0123:\n#_04FFE1: db $00, $07, $06, $28, $00, $03, $00\n\n; =========================================================\n; BG2PROP 0x00\n; PALETTE 0x07\n; BLKSET 0x06\n; SPRSET 0x28\n; BGMOVE 0x00\n; EFFECT1 0x00 - Nothing\n; EFFECT2 0x00 - Nothing\n; PLANES1 0xFF - leaked value\n; PLANES2 0xFF - leaked value\n; WARP 0xFF => ROOM 01FF - leaked value\n; STAIRS0 0xFF => ROOM 01FF - leaked value\n; STAIRS1 0xFF => ROOM 01FF - leaked value\n; STAIRS2 0xFF => ROOM 01FF - leaked value\n; STAIRS3 0xFF => ROOM 01FF - leaked value\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0124", + "code": "RoomHeader_Room0124:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0125", + "code": "RoomHeader_Room0125:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0126", + "code": "RoomHeader_Room0126:\n#_04FFE8: db $00, $07, $06, $28, $00, $00, $00\n\n; =========================================================\n; BG2PROP 0xFF\n; PALETTE 0xFF\n; BLKSET 0xFF\n; SPRSET 0xFF\n; BGMOVE 0xFF\n; EFFECT1 0xFF\n; EFFECT2 0xFF\n; PLANES1 0xFF\n; PLANES2 0xFF\n; WARP 0xFF => ROOM 01FF\n; STAIRS0 0xFF => ROOM 01FF\n; STAIRS1 0xFF => ROOM 01FF\n; STAIRS2 0xFF => ROOM 01FF\n; STAIRS3 0xFF => ROOM 01FF\n; ---------------------------------------------------------", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0128", + "code": "RoomHeader_Room0128:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0129", + "code": "RoomHeader_Room0129:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012A", + "code": "RoomHeader_Room012A:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012B", + "code": "RoomHeader_Room012B:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012C", + "code": "RoomHeader_Room012C:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012D", + "code": "RoomHeader_Room012D:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012E", + "code": "RoomHeader_Room012E:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room012F", + "code": "RoomHeader_Room012F:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0130", + "code": "RoomHeader_Room0130:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0131", + "code": "RoomHeader_Room0131:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0132", + "code": "RoomHeader_Room0132:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0133", + "code": "RoomHeader_Room0133:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0134", + "code": "RoomHeader_Room0134:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0135", + "code": "RoomHeader_Room0135:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0136", + "code": "RoomHeader_Room0136:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0137", + "code": "RoomHeader_Room0137:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0138", + "code": "RoomHeader_Room0138:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room0139", + "code": "RoomHeader_Room0139:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room013A", + "code": "RoomHeader_Room013A:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room013B", + "code": "RoomHeader_Room013B:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room013C", + "code": "RoomHeader_Room013C:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room013D", + "code": "RoomHeader_Room013D:", + "file": "bank_04.asm" + }, + { + "name": "RoomHeader_Room013E", + "code": "RoomHeader_Room013E:", + "file": "bank_04.asm" + }, + { + "name": "GARBAGE_1BB1D7", + "code": "GARBAGE_1BB1D7:\n#_1BB1D7: db $C0, $00, $00, $00, $00, $01, $FF, $00, $00\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "NULL_1BB1E0", + "code": "NULL_1BB1E0:\n#_1BB1E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB1E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB1F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB1F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB200: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB208: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB210: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB218: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB220: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB228: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB230: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB238: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB240: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB248: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB250: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB258: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB260: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB268: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB270: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB278: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB280: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB288: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB290: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB298: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB2F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB300: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB308: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB310: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB318: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB320: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB328: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB330: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB338: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB340: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB348: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB350: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB358: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB360: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB368: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB370: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB378: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB380: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB388: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB390: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB398: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB3F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB400: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB408: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB410: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB418: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB420: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB428: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB430: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB438: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB440: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB448: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB450: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB458: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB460: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB468: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB470: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB478: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB480: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB488: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB490: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB498: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB4F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB500: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB508: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB510: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB518: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB520: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB528: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB530: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB538: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB540: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB548: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB550: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB558: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB560: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB568: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB570: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB578: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB580: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB588: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB590: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB598: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB5F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB600: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB608: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB610: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB618: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB620: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB628: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB630: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB638: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB640: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB648: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB650: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB658: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB660: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB668: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB670: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB678: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB680: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB688: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB690: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB698: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB6F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB700: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB708: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB710: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB718: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB720: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB728: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB730: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB738: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB740: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB748: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB750: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB758: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB760: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB768: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB770: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB778: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB780: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB788: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB790: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB798: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BB7F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n\npool Overworld_GetPitDestination\n{\n.map16\n#_1BB800: dw $0CE0 ; Skull Woods big chest\n#_1BB802: dw $124E ; Skull Woods compass chest\n#_1BB804: dw $12CE ; Skull Woods compass chest\n#_1BB806: dw $1162 ; Skull Woods bumper room\n#_1BB808: dw $11E2 ; Skull Woods bumper room\n#_1BB80A: dw $073C ; Skull Woods middle pit\n#_1BB80C: dw $07BC ; Skull Woods middle pit\n#_1BB80E: dw $0CE0 ; Lost Woods HP\n#_1BB810: dw $003C ; Ganon\n#_1BB812: dw $00BE ; Ganon\n#_1BB814: dw $003E ; Ganon\n#_1BB816: dw $0388 ; Graveyard big faiy\n#_1BB818: dw $0170 ; Castle secret passage\n#_1BB81A: dw $03A4 ; Magic bat\n#_1BB81C: dw $0424 ; Magic bat\n#_1BB81E: dw $0518 ; Lumberjack tree\n#_1BB820: dw $028A ; Kakariko well\n#_1BB822: dw $020A ; Kakariko well\n#_1BB824: dw $0108 ; Back of sewers\n\n.screen\n#_1BB826: dw $0040 ; OW 40 - Skull Woods big chest\n#_1BB828: dw $0040 ; OW 40 - Skull Woods compass chest\n#_1BB82A: dw $0040 ; OW 40 - Skull Woods compass chest\n#_1BB82C: dw $0040 ; OW 40 - Skull Woods bumper room\n#_1BB82E: dw $0040 ; OW 40 - Skull Woods bumper room\n#_1BB830: dw $0040 ; OW 40 - Skull Woods middle pit\n#_1BB832: dw $0040 ; OW 40 - Skull Woods middle pit\n#_1BB834: dw $0000 ; OW 00 - Lost Woods HP\n#_1BB836: dw $005B ; OW 5B - Ganon\n#_1BB838: dw $005B ; OW 5B - Ganon\n#_1BB83A: dw $005B ; OW 5B - Ganon\n#_1BB83C: dw $0015 ; OW 15 - Graveyard big faiy\n#_1BB83E: dw $001B ; OW 1B - Castle secret passage\n#_1BB840: dw $0022 ; OW 22 - Magic bat\n#_1BB842: dw $0022 ; OW 22 - Magic bat\n#_1BB844: dw $0002 ; OW 02 - Lumberjack tree\n#_1BB846: dw $0018 ; OW 18 - Kakariko well\n#_1BB848: dw $0018 ; OW 18 - Kakariko well\n#_1BB84A: dw $0014 ; OW 14 - Back of sewers\n\n.entrance\n#_1BB84C: db $76 ; ENTRANCE 76 - Skull Woods big chest\n#_1BB84D: db $77 ; ENTRANCE 77 - Skull Woods compass chest\n#_1BB84E: db $77 ; ENTRANCE 77 - Skull Woods compass chest\n#_1BB84F: db $78 ; ENTRANCE 78 - Skull Woods bumper room\n#_1BB850: db $78 ; ENTRANCE 78 - Skull Woods bumper room\n#_1BB851: db $79 ; ENTRANCE 79 - Skull Woods middle pit\n#_1BB852: db $79 ; ENTRANCE 79 - Skull Woods middle pit\n#_1BB853: db $7A ; ENTRANCE 7A - Lost Woods HP\n#_1BB854: db $7B ; ENTRANCE 7B - Ganon\n#_1BB855: db $7B ; ENTRANCE 7B - Ganon\n#_1BB856: db $7B ; ENTRANCE 7B - Ganon\n#_1BB857: db $7C ; ENTRANCE 7C - Graveyard big faiy\n#_1BB858: db $7D ; ENTRANCE 7D - Castle secret passage\n#_1BB859: db $7E ; ENTRANCE 7E - Magic bat\n#_1BB85A: db $7E ; ENTRANCE 7E - Magic bat\n#_1BB85B: db $7F ; ENTRANCE 7F - Lumberjack tree\n#_1BB85C: db $80 ; ENTRANCE 80 - Kakariko well\n#_1BB85D: db $80 ; ENTRANCE 80 - Kakariko well\n#_1BB85E: db $81 ; ENTRANCE 81 - Back of sewers\n#_1BB85F: db $82 ; ENTRANCE 82 - Houlihan room\n}\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_GetPitDestination", + "code": "Overworld_GetPitDestination:\n{\n#_1BB860: PHB\n#_1BB861: PHK\n#_1BB862: PLB\n\n#_1BB863: REP #$31\n\n#_1BB865: LDA.b $20\n#_1BB867: AND.w #$FFF8\n#_1BB86A: STA.b $00\n\n#_1BB86C: SEC\n#_1BB86D: SBC.w $0708\n#_1BB870: AND.w $070A\n#_1BB873: ASL A\n#_1BB874: ASL A\n#_1BB875: ASL A\n#_1BB876: STA.b $06\n\n#_1BB878: LDA.b $22\n#_1BB87A: AND.w #$FFF8\n#_1BB87D: LSR A\n#_1BB87E: LSR A\n#_1BB87F: LSR A\n#_1BB880: STA.b $02\n\n#_1BB882: SEC\n#_1BB883: SBC.w $070C\n#_1BB886: AND.w $070E\n#_1BB889: CLC\n#_1BB88A: ADC.b $06\n#_1BB88C: STA.b $00\n\n; ---------------------------------------------------------\n\n#_1BB88E: LDX.w #$0024\n\n.next_entrance\n#_1BB891: LDA.b $00\n#_1BB893: CMP.w .map16,X\n#_1BB896: BNE .map16mismatch\n\n#_1BB898: LDA.w $040A\n#_1BB89B: CMP.w .screen,X\n#_1BB89E: BEQ .found_entrance\n\n.map16mismatch\n#_1BB8A0: DEX\n#_1BB8A1: DEX\n#_1BB8A2: BPL .next_entrance\n\n; ---------------------------------------------------------\n\n#_1BB8A4: LDX.w #$0026\n\n#_1BB8A7: SEP #$20\n\n#_1BB8A9: LDA.b #$00\n#_1BB8AB: STA.l $7EF3CA\n\n; ---------------------------------------------------------\n\n.found_entrance\n#_1BB8AF: SEP #$30\n\n#_1BB8B1: TXA\n#_1BB8B2: LSR A\n#_1BB8B3: TAX\n\n#_1BB8B4: LDA.w .entrance,X\n#_1BB8B7: STA.w $010E\n#_1BB8BA: STZ.w $010F\n\n#_1BB8BD: PLB\n\n#_1BB8BE: RTL", + "file": "bank_1B.asm" + }, + { + "name": "ValidDoorTypes_low", + "code": "ValidDoorTypes_low:\n#_1BB8BF: dw $00FE, $00C5, $00FE, $0114\n#_1BB8C7: dw $0115, $0175, $0156, $00F5\n#_1BB8CF: dw $00E2, $01EF, $0119, $00FE\n#_1BB8D7: dw $0172, $0177, $013F, $0172\n#_1BB8DF: dw $0112, $0161, $0172, $014C\n#_1BB8E7: dw $0156, $01EF, $00FE, $00FE\n#_1BB8EF: dw $00FE, $010B, $0173, $0143\n#_1BB8F7: dw $0149, $0175, $0103, $0100\n#_1BB8FF: dw $01CC, $015E, $0167, $0128\n#_1BB907: dw $0131, $0112, $016D, $0163\n#_1BB90F: dw $0173, $00FE, $0113, $0177\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "ValidDoorTypes_high", + "code": "ValidDoorTypes_high:\n#_1BB917: dw $014A, $00C4, $014F, $0115\n#_1BB91F: dw $0114, $0174, $0155, $00F5\n#_1BB927: dw $00EE, $01EB, $0118, $0146\n#_1BB92F: dw $0171, $0155, $0137, $0174\n#_1BB937: dw $0173, $0121, $0164, $0155\n#_1BB93F: dw $0157, $0128, $0114, $0123\n#_1BB947: dw $0113, $0109, $0118, $0161\n#_1BB94F: dw $0149, $0117, $0174, $0101\n#_1BB957: dw $01CC, $0131, $0051, $014E\n#_1BB95F: dw $0131, $0112, $017A, $0163\n#_1BB967: dw $0172, $01BD, $0152, $0167\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_EntranceScreens", + "code": "Overworld_EntranceScreens:\n{\n#_1BB96F: dw $002C ; 0x00 - OW 2C - Link's house\n#_1BB971: dw $0013 ; 0x01 - OW 13 - Sanctuary\n#_1BB973: dw $001B ; 0x02 - OW 1B - Castle west wing\n#_1BB975: dw $001B ; 0x03 - OW 1B - Castle lobby\n#_1BB977: dw $001B ; 0x04 - OW 1B - Castle east wing\n#_1BB979: dw $000A ; 0x05 - OW 0A - Old man cave west\n#_1BB97B: dw $0003 ; 0x06 - OW 03 - Old man cave east\n#_1BB97D: dw $001E ; 0x07 - OW 1E - Eastern Palace\n#_1BB97F: dw $0030 ; 0x08 - OW 30 - Desert Palace lobby\n#_1BB981: dw $0030 ; 0x09 - OW 30 - Desert Palace east\n#_1BB983: dw $0030 ; 0x0A - OW 30 - Desert Palace west\n#_1BB985: dw $0030 ; 0x0B - OW 30 - Desert Palace back\n#_1BB987: dw $0018 ; 0x0C - OW 18 - Sahasrahla's house west\n#_1BB989: dw $0018 ; 0x0D - OW 18 - Sahasrahla's house east\n#_1BB98B: dw $0028 ; 0x0E - OW 28 - Angry bro west\n#_1BB98D: dw $0029 ; 0x0F - OW 29 - Angry bro east\n#_1BB98F: dw $0022 ; 0x10 - OW 22 - Magic bat\n#_1BB991: dw $0002 ; 0x11 - OW 02 - Lumberjack cave\n#_1BB993: dw $0045 ; 0x12 - OW 45 - Super bunny bottom\n#_1BB995: dw $0045 ; 0x13 - OW 45 - Super bunny top\n#_1BB997: dw $0045 ; 0x14 - OW 45 - Turtle Rock laser pots\n#_1BB999: dw $004A ; 0x15 - OW 4A - Bumper cave bottom\n#_1BB99B: dw $004A ; 0x16 - OW 4A - Bumper cave top\n#_1BB99D: dw $0045 ; 0x17 - OW 45 - Turtle Rock laser bridge\n#_1BB99F: dw $0045 ; 0x18 - OW 45 - Turtle Rock big chest\n#_1BB9A1: dw $0005 ; 0x19 - OW 05 - East Death Mountain useless bottom\n#_1BB9A3: dw $0005 ; 0x1A - OW 05 - East Death Mountain useless top\n#_1BB9A5: dw $0005 ; 0x1B - OW 05 - Spiral cave exit\n#_1BB9A7: dw $0005 ; 0x1C - OW 05 - Spiral cave top\n#_1BB9A9: dw $0005 ; 0x1D - OW 05 - Paradox cave bottom\n#_1BB9AB: dw $0005 ; 0x1E - OW 05 - Paradox cave middle\n#_1BB9AD: dw $0005 ; 0x1F - OW 05 - Paradox cave top\n#_1BB9AF: dw $0003 ; 0x20 - OW 03 - Kiki cave west\n#_1BB9B1: dw $0003 ; 0x21 - OW 03 - Kiki cave east\n#_1BB9B3: dw $0003 ; 0x22 - OW 03 - Spectacle rock\n#_1BB9B5: dw $001B ; 0x23 - OW 1B - Agahnim's Tower\n#_1BB9B7: dw $007B ; 0x24 - OW 7B - Swamp Palace\n#_1BB9B9: dw $005E ; 0x25 - OW 5E - Palace of Darkness\n#_1BB9BB: dw $0070 ; 0x26 - OW 70 - Misery Mire\n#_1BB9BD: dw $0040 ; 0x27 - OW 40 - Skull Woods west\n#_1BB9BF: dw $0040 ; 0x28 - OW 40 - Skull Woods mummy statue\n#_1BB9C1: dw $0040 ; 0x29 - OW 40 - Skull Woods big chest\n#_1BB9C3: dw $0040 ; 0x2A - OW 40 - Skull Woods back\n#_1BB9C5: dw $0000 ; 0x2B - OW 00 - Lost Woods hideout\n#_1BB9C7: dw $0075 ; 0x2C - OW 75 - Ice Palace\n#_1BB9C9: dw $000A ; 0x2D - OW 0A - Death Mountain exit west\n#_1BB9CB: dw $0003 ; 0x2E - OW 03 - Death Mountain exit from summit\n#_1BB9CD: dw $0003 ; 0x2F - OW 03 - Old man home cave west\n#_1BB9CF: dw $0003 ; 0x30 - OW 03 - Old man home cave east\n#_1BB9D1: dw $001B ; 0x31 - OW 1B - Hyrule Castle secret entrance\n#_1BB9D3: dw $0003 ; 0x32 - OW 03 - Tower of Hera\n#_1BB9D5: dw $0058 ; 0x33 - OW 58 - Thieves' Town\n#_1BB9D7: dw $0047 ; 0x34 - OW 47 - Turtle Rock\n#_1BB9D9: dw $005B ; 0x35 - OW 5B - Pyramid drop\n#_1BB9DB: dw $0043 ; 0x36 - OW 43 - Ganon's Tower\n#_1BB9DD: dw $0015 ; 0x37 - OW 15 - Graveyard fairy\n#_1BB9DF: dw $0018 ; 0x38 - OW 18 - Kakariko well\n#_1BB9E1: dw $0045 ; 0x39 - OW 45 - Hookshot cave bottom\n#_1BB9E3: dw $0045 ; 0x3A - OW 45 - Hookshot cave top\n#_1BB9E5: dw $0000 ; 0x3B - OW 00 - Lost Woods chest game\n#_1BB9E7: dw $0074 ; 0x3C - OW 74 - Swamp thief cave hideout\n#_1BB9E9: dw $0018 ; 0x3D - OW 18 - Eastern snitch house\n#_1BB9EB: dw $0018 ; 0x3E - OW 18 - Cucco easter egg\n#_1BB9ED: dw $0018 ; 0x3F - OW 18 - Sick kid\n#_1BB9EF: dw $0043 ; 0x40 - OW 43 - Spike cave\n#_1BB9F1: dw $0018 ; 0x41 - OW 18 - Tavern front\n#_1BB9F3: dw $0018 ; 0x42 - OW 18 - Tavern back\n#_1BB9F5: dw $0018 ; 0x43 - OW 18 - Kakariko Inn\n#_1BB9F7: dw $001E ; 0x44 - OW 1E - Sahasrahla's hideout\n#_1BB9F9: dw $0018 ; 0x45 - OW 18 - Kakariko shop\n#_1BB9FB: dw $0058 ; 0x46 - OW 58 - Village of Outcasts chest game\n#_1BB9FD: dw $0058 ; 0x47 - OW 58 - Village of Outcasts bombable hut\n#_1BB9FF: dw $0029 ; 0x48 - OW 29 - Library\n#_1BBA01: dw $0018 ; 0x49 - OW 18 - Kakariko bombable hut\n#_1BBA03: dw $0018 ; 0x4A - OW 18 - Chicken hut\n#_1BBA05: dw $0016 ; 0x4B - OW 16 - Potion shop\n#_1BBA07: dw $0030 ; 0x4C - OW 30 - Aginah's cave\n#_1BBA09: dw $003B ; 0x4D - OW 3B - Dam\n#_1BBA0B: dw $0005 ; 0x4E - OW 05 - Mimic cave\n#_1BBA0D: dw $0005 ; 0x4F - OW 05 - East Death Mountain fairy pond cave\n#_1BBA0F: dw $0032 ; 0x50 - OW 32 - Circle of bushes heart piece cave\n#_1BBA11: dw $0014 ; 0x51 - OW 14 - Graveyard ledge heart piece cave\n#_1BBA13: dw $006C ; 0x52 - OW 6C - Bomb shop\n#_1BBA15: dw $0058 ; 0x53 - OW 58 - C-shaped house\n#_1BBA17: dw $002F ; 0x54 - OW 2F - Southeast of Eastern Ruins fairy cave\n#_1BBA19: dw $0070 ; 0x55 - OW 70 - Mire big fairy\n#_1BBA1B: dw $0042 ; 0x56 - OW 42 - Dark World lumberjacks shop\n#_1BBA1D: dw $0035 ; 0x57 - OW 35 - Lake Hylia shop\n#_1BBA1F: dw $0069 ; 0x58 - OW 69 - Arrow game\n#_1BBA21: dw $0053 ; 0x59 - OW 53 - Dark World sanctuary cave\n#_1BBA23: dw $0014 ; 0x5A - OW 14 - King's tomb\n#_1BBA25: dw $000F ; 0x5B - OW 0F - Waterfall of Wishing\n#_1BBA27: dw $0035 ; 0x5C - OW 35 - Pond of Happiness\n#_1BBA29: dw $002E ; 0x5D - OW 2E - Big fairy (Eastern Ruins)\n#_1BBA2B: dw $0070 ; 0x5E - OW 70 - Mire shed\n#_1BBA2D: dw $0058 ; 0x5F - OW 58 - Village of Outcasts shop\n#_1BBA2F: dw $0018 ; 0x60 - OW 18 - Blind's hut\n#_1BBA31: dw $0070 ; 0x61 - OW 70 - Watto's cave\n#_1BBA33: dw $005B ; 0x62 - OW 5B - Fat Fairy\n#_1BBA35: dw $0022 ; 0x63 - OW 22 - Smithy's house\n#_1BBA37: dw $0011 ; 0x64 - OW 11 - Light World fortune teller (Kakariko)\n#_1BBA39: dw $0051 ; 0x65 - OW 51 - Dark World fortune teller\n#_1BBA3B: dw $0029 ; 0x66 - OW 29 - South of Kakariko chest game\n#_1BBA3D: dw $005E ; 0x67 - OW 5E - Broccoli's house\n#_1BBA3F: dw $006F ; 0x68 - OW 6F - Bird hint NPC cave\n#_1BBA41: dw $0077 ; 0x69 - OW 77 - Hamburger Helper's cave\n#_1BBA43: dw $0037 ; 0x6A - OW 37 - Ice rod cave golden bee\n#_1BBA45: dw $0034 ; 0x6B - OW 34 - Big fairy (South of Link's house)\n#_1BBA47: dw $006E ; 0x6C - OW 6E - Big fairy (South of Kiki)\n#_1BBA49: dw $0045 ; 0x6D - OW 45 - Dark Death Mountain shop\n#_1BBA4B: dw $0056 ; 0x6E - OW 56 - Dark World witch shop\n#_1BBA4D: dw $0043 ; 0x6F - OW 43 - Dark West Death Mountain big fairy\n#_1BBA4F: dw $0030 ; 0x70 - OW 30 - Aginah's cave\n#_1BBA51: dw $003A ; 0x71 - OW 3A - Desert big fairy\n#_1BBA53: dw $0035 ; 0x72 - OW 35 - Light World fortune teller (Lake Hylia)\n#_1BBA55: dw $0075 ; 0x73 - OW 75 - Dark Lake Hylia shop\n#_1BBA57: dw $005A ; 0x74 - OW 5A - East of Village of Outcasts shop\n#_1BBA59: dw $0002 ; 0x75 - OW 02 - Bumpkin residency\n#_1BBA5B: dw $002B ; 0x76 - OW 2B - Link's house bonk rocks fairy pond\n#_1BBA5D: dw $006B ; 0x77 - OW 6B - Bomb shop bonk rocks fairy pond\n#_1BBA5F: dw $003A ; 0x78 - OW 3A - Desert thief hideout\n#_1BBA61: dw $0013 ; 0x79 - OW 13 - Bonk rocks heart piece cave\n#_1BBA63: dw $0037 ; 0x7A - OW 37 - Lake Hylia falls thief hideout\n#_1BBA65: dw $0077 ; 0x7B - OW 77 - Dark Lake Hylia falls spike cave\n#_1BBA67: dw $0035 ; 0x7C - OW 35 - Mini moldorm cave\n#_1BBA69: dw $0030 ; 0x7D - OW 30 - Checkerboard cave heart piece\n#_1BBA6B: dw $0062 ; 0x7E - OW 62 - Stake puzzle heart piece cave\n#_1BBA6D: dw $0037 ; 0x7F - OW 37 - Ice rod cave\n#_1BBA6F: dw $0077 ; 0x80 - OW 77 - Dark ice rod big fairy\n}\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_EntranceTileIndex", + "code": "Overworld_EntranceTileIndex:\n{\n#_1BBA71: dw $0796 ; 0x00 - Link's house\n#_1BBA73: dw $01AA ; 0x01 - Sanctuary\n#_1BBA75: dw $0124 ; 0x02 - Castle west wing\n#_1BBA77: dw $07BE ; 0x03 - Castle lobby\n#_1BBA79: dw $0158 ; 0x04 - Castle east wing\n#_1BBA7B: dw $0634 ; 0x05 - Old man cave west\n#_1BBA7D: dw $178E ; 0x06 - Old man cave east\n#_1BBA7F: dw $016A ; 0x07 - Eastern Palace\n#_1BBA81: dw $05A4 ; 0x08 - Desert Palace lobby\n#_1BBA83: dw $0538 ; 0x09 - Desert Palace east\n#_1BBA85: dw $0510 ; 0x0A - Desert Palace west\n#_1BBA87: dw $01A4 ; 0x0B - Desert Palace back\n#_1BBA89: dw $054C ; 0x0C - Sahasrahla's house west\n#_1BBA8B: dw $0554 ; 0x0D - Sahasrahla's house east\n#_1BBA8D: dw $0B36 ; 0x0E - Angry bro west\n#_1BBA8F: dw $0B06 ; 0x0F - Angry bro east\n#_1BBA91: dw $06A0 ; 0x10 - Magic bat\n#_1BBA93: dw $03A8 ; 0x11 - Lumberjack cave\n#_1BBA95: dw $126E ; 0x12 - Super bunny bottom\n#_1BBA97: dw $07F6 ; 0x13 - Super bunny top\n#_1BBA99: dw $0B56 ; 0x14 - Turtle Rock laser pots\n#_1BBA9B: dw $0634 ; 0x15 - Bumper cave bottom\n#_1BBA9D: dw $0336 ; 0x16 - Bumper cave top\n#_1BBA9F: dw $0E62 ; 0x17 - Turtle Rock laser bridge\n#_1BBAA1: dw $0B6E ; 0x18 - Turtle Rock big chest\n#_1BBAA3: dw $1162 ; 0x19 - East Death Mountain useless bottom\n#_1BBAA5: dw $0E62 ; 0x1A - East Death Mountain useless top\n#_1BBAA7: dw $1058 ; 0x1B - Spiral cave exit\n#_1BBAA9: dw $0B56 ; 0x1C - Spiral cave top\n#_1BBAAB: dw $1274 ; 0x1D - Paradox cave bottom\n#_1BBAAD: dw $1B78 ; 0x1E - Paradox cave middle\n#_1BBAAF: dw $07F6 ; 0x1F - Paradox cave top\n#_1BBAB1: dw $1128 ; 0x20 - Kiki cave west\n#_1BBAB3: dw $1238 ; 0x21 - Kiki cave east\n#_1BBAB5: dw $0CB8 ; 0x22 - Spectacle rock\n#_1BBAB7: dw $02BE ; 0x23 - Agahnim's Tower\n#_1BBAB9: dw $072E ; 0x24 - Swamp Palace\n#_1BBABB: dw $01EA ; 0x25 - Palace of Darkness\n#_1BBABD: dw $06A4 ; 0x26 - Misery Mire\n#_1BBABF: dw $101C ; 0x27 - Skull Woods west\n#_1BBAC1: dw $1248 ; 0x28 - Skull Woods mummy statue\n#_1BBAC3: dw $12DC ; 0x29 - Skull Woods big chest\n#_1BBAC5: dw $0612 ; 0x2A - Skull Woods back\n#_1BBAC7: dw $12DC ; 0x2B - Lost Woods hideout\n#_1BBAC9: dw $0E56 ; 0x2C - Ice Palace\n#_1BBACB: dw $0336 ; 0x2D - Death Mountain exit west\n#_1BBACD: dw $1108 ; 0x2E - Death Mountain exit from summit\n#_1BBACF: dw $1DA4 ; 0x2F - Old man home cave west\n#_1BBAD1: dw $1450 ; 0x30 - Old man home cave east\n#_1BBAD3: dw $06D8 ; 0x31 - Hyrule Castle secret entrance\n#_1BBAD5: dw $03DE ; 0x32 - Tower of Hera\n#_1BBAD7: dw $0DBE ; 0x33 - Thieves' Town\n#_1BBAD9: dw $09A0 ; 0x34 - Turtle Rock\n#_1BBADB: dw $0D9C ; 0x35 - Pyramid drop\n#_1BBADD: dw $01DE ; 0x36 - Ganon's Tower\n#_1BBADF: dw $0294 ; 0x37 - Graveyard fairy\n#_1BBAE1: dw $0616 ; 0x38 - Kakariko well\n#_1BBAE3: dw $0868 ; 0x39 - Hookshot cave bottom\n#_1BBAE5: dw $01D8 ; 0x3A - Hookshot cave top\n#_1BBAE7: dw $00DE ; 0x3B - Lost Woods chest game\n#_1BBAE9: dw $0330 ; 0x3C - Swamp thief cave hideout\n#_1BBAEB: dw $0D68 ; 0x3D - Eastern snitch house\n#_1BBAED: dw $0B18 ; 0x3E - Cucco easter egg\n#_1BBAEF: dw $144E ; 0x3F - Sick kid\n#_1BBAF1: dw $1264 ; 0x40 - Spike cave\n#_1BBAF3: dw $1BD0 ; 0x41 - Tavern front\n#_1BBAF5: dw $18D0 ; 0x42 - Tavern back\n#_1BBAF7: dw $13E6 ; 0x43 - Kakariko Inn\n#_1BBAF9: dw $099E ; 0x44 - Sahasrahla's hideout\n#_1BBAFB: dw $1A36 ; 0x45 - Kakariko shop\n#_1BBAFD: dw $0B18 ; 0x46 - Village of Outcasts chest game\n#_1BBAFF: dw $1A36 ; 0x47 - Village of Outcasts bombable hut\n#_1BBB01: dw $038E ; 0x48 - Library\n#_1BBB03: dw $1B8C ; 0x49 - Kakariko bombable hut\n#_1BBB05: dw $14B0 ; 0x4A - Chicken hut\n#_1BBB07: dw $0A18 ; 0x4B - Potion shop\n#_1BBB09: dw $0964 ; 0x4C - Aginah's cave\n#_1BBB0B: dw $072E ; 0x4D - Dam\n#_1BBB0D: dw $0B6E ; 0x4E - Mimic cave\n#_1BBB0F: dw $126E ; 0x4F - East Death Mountain fairy pond cave\n#_1BBB11: dw $0906 ; 0x50 - Circle of bushes heart piece cave\n#_1BBB13: dw $02A2 ; 0x51 - Graveyard ledge heart piece cave\n#_1BBB15: dw $0796 ; 0x52 - Bomb shop\n#_1BBB17: dw $0D68 ; 0x53 - C-shaped house\n#_1BBB19: dw $0934 ; 0x54 - Southeast of Eastern Ruins fairy cave\n#_1BBB1B: dw $0636 ; 0x55 - Mire big fairy\n#_1BBB1D: dw $06AA ; 0x56 - Dark World lumberjacks shop\n#_1BBB1F: dw $01B2 ; 0x57 - Lake Hylia shop\n#_1BBB21: dw $092C ; 0x58 - Arrow game\n#_1BBB23: dw $02AA ; 0x59 - Dark World sanctuary cave\n#_1BBB25: dw $05B2 ; 0x5A - King's tomb\n#_1BBB27: dw $008C ; 0x5B - Waterfall of Wishing\n#_1BBB29: dw $0CD4 ; 0x5C - Pond of Happiness\n#_1BBB2B: dw $0224 ; 0x5D - Big fairy (Eastern Ruins)\n#_1BBB2D: dw $0612 ; 0x5E - Mire shed\n#_1BBB2F: dw $13E6 ; 0x5F - Village of Outcasts shop\n#_1BBB31: dw $0540 ; 0x60 - Blind's hut\n#_1BBB33: dw $0964 ; 0x61 - Watto's cave\n#_1BBB35: dw $0DAE ; 0x62 - Fat Fairy\n#_1BBB37: dw $039A ; 0x63 - Smithy's house\n#_1BBB39: dw $089E ; 0x64 - Light World fortune teller (Kakariko)\n#_1BBB3B: dw $089E ; 0x65 - Dark World fortune teller\n#_1BBB3D: dw $092C ; 0x66 - South of Kakariko chest game\n#_1BBB3F: dw $0FB2 ; 0x67 - Broccoli's house\n#_1BBB41: dw $0934 ; 0x68 - Bird hint NPC cave\n#_1BBB43: dw $0212 ; 0x69 - Hamburger Helper's cave\n#_1BBB45: dw $0212 ; 0x6A - Ice rod cave golden bee\n#_1BBB47: dw $0330 ; 0x6B - Big fairy (South of Link's house)\n#_1BBB49: dw $0224 ; 0x6C - Big fairy (South of Kiki)\n#_1BBB4B: dw $1274 ; 0x6D - Dark Death Mountain shop\n#_1BBB4D: dw $0A9A ; 0x6E - Dark World witch shop\n#_1BBB4F: dw $178E ; 0x6F - Dark West Death Mountain big fairy\n#_1BBB51: dw $0964 ; 0x70 - Aginah's cave\n#_1BBB53: dw $018C ; 0x71 - Desert big fairy\n#_1BBB55: dw $060A ; 0x72 - Light World fortune teller (Lake Hylia)\n#_1BBB57: dw $060A ; 0x73 - Dark Lake Hylia shop\n#_1BBB59: dw $0A28 ; 0x74 - East of Village of Outcasts shop\n#_1BBB5B: dw $072A ; 0x75 - Bumpkin residency\n#_1BBB5D: dw $0330 ; 0x76 - Link's house bonk rocks fairy pond\n#_1BBB5F: dw $0330 ; 0x77 - Bomb shop bonk rocks fairy pond\n#_1BBB61: dw $0A1E ; 0x78 - Desert thief hideout\n#_1BBB63: dw $0506 ; 0x79 - Bonk rocks heart piece cave\n#_1BBB65: dw $040C ; 0x7A - Lake Hylia falls thief hideout\n#_1BBB67: dw $040C ; 0x7B - Dark Lake Hylia falls spike cave\n#_1BBB69: dw $178C ; 0x7C - Mini moldorm cave\n#_1BBB6B: dw $0358 ; 0x7D - Checkerboard cave heart piece\n#_1BBB6D: dw $0D20 ; 0x7E - Stake puzzle heart piece cave\n#_1BBB6F: dw $0208 ; 0x7F - Ice rod cave\n#_1BBB71: dw $0208 ; 0x80 - Dark ice rod big fairy\n}\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_Entrance_ID", + "code": "Overworld_Entrance_ID:\n{\n#_1BBB73: db $01 ; 0x00 - ENTRANCE 01 - Link's house\n#_1BBB74: db $02 ; 0x01 - ENTRANCE 02 - Sanctuary\n#_1BBB75: db $03 ; 0x02 - ENTRANCE 03 - Castle west wing\n#_1BBB76: db $04 ; 0x03 - ENTRANCE 04 - Castle lobby\n#_1BBB77: db $05 ; 0x04 - ENTRANCE 05 - Castle east wing\n#_1BBB78: db $06 ; 0x05 - ENTRANCE 06 - Old man cave west\n#_1BBB79: db $07 ; 0x06 - ENTRANCE 07 - Old man cave east\n#_1BBB7A: db $08 ; 0x07 - ENTRANCE 08 - Eastern Palace\n#_1BBB7B: db $09 ; 0x08 - ENTRANCE 09 - Desert Palace lobby\n#_1BBB7C: db $0A ; 0x09 - ENTRANCE 0A - Desert Palace east\n#_1BBB7D: db $0B ; 0x0A - ENTRANCE 0B - Desert Palace west\n#_1BBB7E: db $0C ; 0x0B - ENTRANCE 0C - Desert Palace back\n#_1BBB7F: db $0D ; 0x0C - ENTRANCE 0D - Sahasrahla's house west\n#_1BBB80: db $0E ; 0x0D - ENTRANCE 0E - Sahasrahla's house east\n#_1BBB81: db $0F ; 0x0E - ENTRANCE 0F - Angry bro west\n#_1BBB82: db $10 ; 0x0F - ENTRANCE 10 - Angry bro east\n#_1BBB83: db $11 ; 0x10 - ENTRANCE 11 - Magic bat\n#_1BBB84: db $12 ; 0x11 - ENTRANCE 12 - Lumberjack cave\n#_1BBB85: db $13 ; 0x12 - ENTRANCE 13 - Super bunny bottom\n#_1BBB86: db $14 ; 0x13 - ENTRANCE 14 - Super bunny top\n#_1BBB87: db $15 ; 0x14 - ENTRANCE 15 - Turtle Rock laser pots\n#_1BBB88: db $16 ; 0x15 - ENTRANCE 16 - Bumper cave bottom\n#_1BBB89: db $17 ; 0x16 - ENTRANCE 17 - Bumper cave top\n#_1BBB8A: db $18 ; 0x17 - ENTRANCE 18 - Turtle Rock laser bridge\n#_1BBB8B: db $19 ; 0x18 - ENTRANCE 19 - Turtle Rock big chest\n#_1BBB8C: db $1A ; 0x19 - ENTRANCE 1A - East Death Mountain useless bottom\n#_1BBB8D: db $1B ; 0x1A - ENTRANCE 1B - East Death Mountain useless top\n#_1BBB8E: db $1C ; 0x1B - ENTRANCE 1C - Spiral cave exit\n#_1BBB8F: db $1D ; 0x1C - ENTRANCE 1D - Spiral cave top\n#_1BBB90: db $1E ; 0x1D - ENTRANCE 1E - Paradox cave bottom\n#_1BBB91: db $1F ; 0x1E - ENTRANCE 1F - Paradox cave middle\n#_1BBB92: db $20 ; 0x1F - ENTRANCE 20 - Paradox cave top\n#_1BBB93: db $21 ; 0x20 - ENTRANCE 21 - Kiki cave west\n#_1BBB94: db $22 ; 0x21 - ENTRANCE 22 - Kiki cave east\n#_1BBB95: db $23 ; 0x22 - ENTRANCE 23 - Spectacle rock\n#_1BBB96: db $24 ; 0x23 - ENTRANCE 24 - Agahnim's Tower\n#_1BBB97: db $25 ; 0x24 - ENTRANCE 25 - Swamp Palace\n#_1BBB98: db $26 ; 0x25 - ENTRANCE 26 - Palace of Darkness\n#_1BBB99: db $27 ; 0x26 - ENTRANCE 27 - Misery Mire\n#_1BBB9A: db $28 ; 0x27 - ENTRANCE 28 - Skull Woods west\n#_1BBB9B: db $29 ; 0x28 - ENTRANCE 29 - Skull Woods mummy statue\n#_1BBB9C: db $2A ; 0x29 - ENTRANCE 2A - Skull Woods big chest\n#_1BBB9D: db $2B ; 0x2A - ENTRANCE 2B - Skull Woods back\n#_1BBB9E: db $2C ; 0x2B - ENTRANCE 2C - Lost Woods hideout\n#_1BBB9F: db $2D ; 0x2C - ENTRANCE 2D - Ice Palace\n#_1BBBA0: db $2E ; 0x2D - ENTRANCE 2E - Death Mountain exit west\n#_1BBBA1: db $2F ; 0x2E - ENTRANCE 2F - Death Mountain exit from summit\n#_1BBBA2: db $30 ; 0x2F - ENTRANCE 30 - Old man home cave west\n#_1BBBA3: db $31 ; 0x30 - ENTRANCE 31 - Old man home cave east\n#_1BBBA4: db $32 ; 0x31 - ENTRANCE 32 - Hyrule Castle secret entrance\n#_1BBBA5: db $33 ; 0x32 - ENTRANCE 33 - Tower of Hera\n#_1BBBA6: db $34 ; 0x33 - ENTRANCE 34 - Thieves' Town\n#_1BBBA7: db $35 ; 0x34 - ENTRANCE 35 - Turtle Rock\n#_1BBBA8: db $36 ; 0x35 - ENTRANCE 36 - Pyramid drop\n#_1BBBA9: db $37 ; 0x36 - ENTRANCE 37 - Ganon's Tower\n#_1BBBAA: db $38 ; 0x37 - ENTRANCE 38 - Graveyard fairy\n#_1BBBAB: db $39 ; 0x38 - ENTRANCE 39 - Kakariko well\n#_1BBBAC: db $3A ; 0x39 - ENTRANCE 3A - Hookshot cave bottom\n#_1BBBAD: db $3B ; 0x3A - ENTRANCE 3B - Hookshot cave top\n#_1BBBAE: db $3C ; 0x3B - ENTRANCE 3C - Lost Woods chest game\n#_1BBBAF: db $3D ; 0x3C - ENTRANCE 3D - Swamp thief cave hideout\n#_1BBBB0: db $3E ; 0x3D - ENTRANCE 3E - Eastern snitch house\n#_1BBBB1: db $3F ; 0x3E - ENTRANCE 3F - Cucco easter egg\n#_1BBBB2: db $40 ; 0x3F - ENTRANCE 40 - Sick kid\n#_1BBBB3: db $41 ; 0x40 - ENTRANCE 41 - Spike cave\n#_1BBBB4: db $42 ; 0x41 - ENTRANCE 42 - Tavern front\n#_1BBBB5: db $43 ; 0x42 - ENTRANCE 43 - Tavern back\n#_1BBBB6: db $44 ; 0x43 - ENTRANCE 44 - Kakariko Inn\n#_1BBBB7: db $45 ; 0x44 - ENTRANCE 45 - Sahasrahla's hideout\n#_1BBBB8: db $46 ; 0x45 - ENTRANCE 46 - Kakariko shop\n#_1BBBB9: db $47 ; 0x46 - ENTRANCE 47 - Village of Outcasts chest game\n#_1BBBBA: db $48 ; 0x47 - ENTRANCE 48 - Village of Outcasts bombable hut\n#_1BBBBB: db $49 ; 0x48 - ENTRANCE 49 - Library\n#_1BBBBC: db $4A ; 0x49 - ENTRANCE 4A - Kakariko bombable hut\n#_1BBBBD: db $4B ; 0x4A - ENTRANCE 4B - Chicken hut\n#_1BBBBE: db $4C ; 0x4B - ENTRANCE 4C - Potion shop\n#_1BBBBF: db $4D ; 0x4C - ENTRANCE 4D - Aginah's cave\n#_1BBBC0: db $4E ; 0x4D - ENTRANCE 4E - Dam\n#_1BBBC1: db $4F ; 0x4E - ENTRANCE 4F - Mimic cave\n#_1BBBC2: db $50 ; 0x4F - ENTRANCE 50 - East Death Mountain fairy pond cave\n#_1BBBC3: db $51 ; 0x50 - ENTRANCE 51 - Circle of bushes heart piece cave\n#_1BBBC4: db $52 ; 0x51 - ENTRANCE 52 - Graveyard ledge heart piece cave\n#_1BBBC5: db $53 ; 0x52 - ENTRANCE 53 - Bomb shop\n#_1BBBC6: db $54 ; 0x53 - ENTRANCE 54 - C-shaped house\n#_1BBBC7: db $55 ; 0x54 - ENTRANCE 55 - Southeast of Eastern Ruins fairy cave\n#_1BBBC8: db $5E ; 0x55 - ENTRANCE 5E - Mire big fairy\n#_1BBBC9: db $60 ; 0x56 - ENTRANCE 60 - Dark World lumberjacks shop\n#_1BBBCA: db $58 ; 0x57 - ENTRANCE 58 - Lake Hylia shop\n#_1BBBCB: db $59 ; 0x58 - ENTRANCE 59 - Arrow game\n#_1BBBCC: db $5A ; 0x59 - ENTRANCE 5A - Dark World sanctuary cave\n#_1BBBCD: db $5B ; 0x5A - ENTRANCE 5B - King's tomb\n#_1BBBCE: db $5C ; 0x5B - ENTRANCE 5C - Waterfall of Wishing\n#_1BBBCF: db $5D ; 0x5C - ENTRANCE 5D - Pond of Happiness\n#_1BBBD0: db $5E ; 0x5D - ENTRANCE 5E - Big fairy (Eastern Ruins)\n#_1BBBD1: db $5F ; 0x5E - ENTRANCE 5F - Mire shed\n#_1BBBD2: db $60 ; 0x5F - ENTRANCE 60 - Village of Outcasts shop\n#_1BBBD3: db $61 ; 0x60 - ENTRANCE 61 - Blind's hut\n#_1BBBD4: db $62 ; 0x61 - ENTRANCE 62 - Watto's cave\n#_1BBBD5: db $63 ; 0x62 - ENTRANCE 63 - Fat Fairy\n#_1BBBD6: db $64 ; 0x63 - ENTRANCE 64 - Smithy's house\n#_1BBBD7: db $65 ; 0x64 - ENTRANCE 65 - Light World fortune teller (Kakariko)\n#_1BBBD8: db $66 ; 0x65 - ENTRANCE 66 - Dark World fortune teller\n#_1BBBD9: db $67 ; 0x66 - ENTRANCE 67 - South of Kakariko chest game\n#_1BBBDA: db $68 ; 0x67 - ENTRANCE 68 - Broccoli's house\n#_1BBBDB: db $69 ; 0x68 - ENTRANCE 69 - Bird hint NPC cave\n#_1BBBDC: db $6A ; 0x69 - ENTRANCE 6A - Hamburger Helper's cave\n#_1BBBDD: db $56 ; 0x6A - ENTRANCE 56 - Ice rod cave golden bee\n#_1BBBDE: db $5E ; 0x6B - ENTRANCE 5E - Big fairy (South of Link's house)\n#_1BBBDF: db $5E ; 0x6C - ENTRANCE 5E - Big fairy (South of Kiki)\n#_1BBBE0: db $58 ; 0x6D - ENTRANCE 58 - Dark Death Mountain shop\n#_1BBBE1: db $60 ; 0x6E - ENTRANCE 60 - Dark World witch shop\n#_1BBBE2: db $5E ; 0x6F - ENTRANCE 5E - Dark West Death Mountain big fairy\n#_1BBBE3: db $4D ; 0x70 - ENTRANCE 4D - Aginah's cave\n#_1BBBE4: db $5E ; 0x71 - ENTRANCE 5E - Desert big fairy\n#_1BBBE5: db $65 ; 0x72 - ENTRANCE 65 - Light World fortune teller (Lake Hylia)\n#_1BBBE6: db $60 ; 0x73 - ENTRANCE 60 - Dark Lake Hylia shop\n#_1BBBE7: db $57 ; 0x74 - ENTRANCE 57 - East of Village of Outcasts shop\n#_1BBBE8: db $6B ; 0x75 - ENTRANCE 6B - Bumpkin residency\n#_1BBBE9: db $71 ; 0x76 - ENTRANCE 71 - Link's house bonk rocks fairy pond\n#_1BBBEA: db $71 ; 0x77 - ENTRANCE 71 - Bomb shop bonk rocks fairy pond\n#_1BBBEB: db $6D ; 0x78 - ENTRANCE 6D - Desert thief hideout\n#_1BBBEC: db $6E ; 0x79 - ENTRANCE 6E - Bonk rocks heart piece cave\n#_1BBBED: db $6F ; 0x7A - ENTRANCE 6F - Lake Hylia falls thief hideout\n#_1BBBEE: db $70 ; 0x7B - ENTRANCE 70 - Dark Lake Hylia falls spike cave\n#_1BBBEF: db $6C ; 0x7C - ENTRANCE 6C - Mini moldorm cave\n#_1BBBF0: db $72 ; 0x7D - ENTRANCE 72 - Checkerboard cave heart piece\n#_1BBBF1: db $83 ; 0x7E - ENTRANCE 83 - Stake puzzle heart piece cave\n#_1BBBF2: db $84 ; 0x7F - ENTRANCE 84 - Ice rod cave\n#_1BBBF3: db $5E ; 0x80 - ENTRANCE 5E - Dark ice rod big fairy\n}\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_UseEntrance", + "code": "Overworld_UseEntrance:\n{\n#_1BBBF4: REP #$31\n\n#_1BBBF6: LDA.b $20\n#_1BBBF8: CLC\n#_1BBBF9: ADC.w #$0007\n#_1BBBFC: STA.b $00\n\n#_1BBBFE: SEC\n#_1BBBFF: SBC.w $0708\n#_1BBC02: AND.w $070A\n#_1BBC05: ASL A\n#_1BBC06: ASL A\n#_1BBC07: ASL A\n#_1BBC08: STA.b $06\n\n#_1BBC0A: LDA.b $22\n#_1BBC0C: LSR A\n#_1BBC0D: LSR A\n#_1BBC0E: LSR A\n#_1BBC0F: STA.b $02\n\n#_1BBC11: SEC\n#_1BBC12: SBC.w $070C\n#_1BBC15: AND.w $070E\n#_1BBC18: CLC\n#_1BBC19: ADC.b $06\n\n#_1BBC1B: TAY\n#_1BBC1C: TAX\n\n#_1BBC1D: LDA.l $7E2000,X\n#_1BBC21: ASL A\n#_1BBC22: ASL A\n#_1BBC23: ASL A\n#_1BBC24: TAX\n\n#_1BBC25: LDA.b $2F\n#_1BBC27: AND.w #$00FF\n#_1BBC2A: BNE .not_facing_up\n\n#_1BBC2C: LDA.l Map16Definitions+2,X\n#_1BBC30: AND.w #$41FF\n#_1BBC33: CMP.w #$00E9\n#_1BBC36: BEQ .open_door\n\n#_1BBC38: CMP.w #$0149\n#_1BBC3B: BEQ .left_side_castle_door\n\n#_1BBC3D: CMP.w #$0169\n#_1BBC40: BEQ .left_side_castle_door\n\n#_1BBC42: TYX\n\n#_1BBC43: LDA.l $7E2002,X\n#_1BBC47: ASL A\n#_1BBC48: ASL A\n#_1BBC49: ASL A\n#_1BBC4A: TAX\n\n#_1BBC4B: LDA.l Map16Definitions+0,X\n#_1BBC4F: AND.w #$41FF\n#_1BBC52: CMP.w #$4149\n#_1BBC55: BEQ .right_side_castle_door\n\n#_1BBC57: CMP.w #$4169\n#_1BBC5A: BEQ .right_side_castle_door\n\n#_1BBC5C: CMP.w #$40E9\n#_1BBC5F: BNE .check_door_type\n\n#_1BBC61: DEY\n#_1BBC62: DEY\n\n.open_door\n#_1BBC63: TYX\n\n#_1BBC64: LDA.w #$0DA4\n#_1BBC67: JSL Overworld_DrawMap16_Persist\n\n#_1BBC6B: LDA.w #$0DA6\n#_1BBC6E: STA.l $7E2002,X\n\n#_1BBC72: LDY.w #$0002\n#_1BBC75: JSL Overworld_DrawMap16_Anywhere\n\n#_1BBC79: SEP #$30\n\n#_1BBC7B: LDA.b #$15 ; SFX3.15\n#_1BBC7D: STA.w $012F\n\n#_1BBC80: LDA.b #$01\n#_1BBC82: STA.b $14\n\n#_1BBC84: RTL", + "file": "bank_1B.asm" + }, + { + "name": "FindEntrance", + "code": "FindEntrance:\n{\n#_1BBD04: TYA\n#_1BBD05: STA.b $00\n\n#_1BBD07: LDX.w #$0102\n\n.next_check\n#_1BBD0A: LDA.b $00\n\n.tile_fail\n#_1BBD0C: DEX\n#_1BBD0D: DEX\n#_1BBD0E: BMI .no_entrance_found\n\n#_1BBD10: CMP.l Overworld_EntranceTileIndex,X\n#_1BBD14: BNE .tile_fail\n\n#_1BBD16: LDA.w $040A\n#_1BBD19: CMP.l Overworld_EntranceScreens,X\n#_1BBD1D: BNE .next_check\n\n#_1BBD1F: LDA.l $7EF3D3\n#_1BBD23: AND.w #$00FF\n#_1BBD26: BNE .entry_allowed\n\n#_1BBD28: LDA.w $02DA\n#_1BBD2B: AND.w #$00FF\n#_1BBD2E: CMP.w #$0001\n#_1BBD31: BEQ Overworld_ForbidEntry\n\n; ---------------------------------------------------------\n\n#_1BBD33: LDA.l $7EF3CC\n#_1BBD37: AND.w #$00FF\n#_1BBD3A: BEQ .entry_allowed\n\n#_1BBD3C: CMP.w #$05 ; FOLLOWER 05\n#_1BBD3F: BEQ .entry_allowed\n\n#_1BBD41: CMP.w #$0E ; FOLLOWER 0E\n#_1BBD44: BEQ .entry_allowed\n\n#_1BBD46: CMP.w #$01 ; FOLLOWER 01\n#_1BBD49: BEQ .entry_allowed\n\n#_1BBD4B: CMP.w #$07 ; FOLLOWER 07\n#_1BBD4E: BEQ .check_single_entrance\n\n#_1BBD50: CMP.w #$08 ; FOLLOWER 08\n\n#_1BBD53: BNE Overworld_ForbidEntry\n\n.check_single_entrance\n#_1BBD55: CPX.w #$0076\n#_1BBD58: BCC Overworld_ForbidEntry\n\n; ---------------------------------------------------------\n\n.entry_allowed\n#_1BBD5A: TXA\n#_1BBD5B: LSR A\n#_1BBD5C: TAX\n\n#_1BBD5D: SEP #$20\n\n#_1BBD5F: LDA.l Overworld_Entrance_ID,X\n#_1BBD63: STA.w $010E\n\n#_1BBD66: STZ.b $4D\n#_1BBD68: STZ.b $46\n\n#_1BBD6A: LDA.b #$0F\n#_1BBD6C: STA.b $10\n\n#_1BBD6E: LDA.b #$06\n#_1BBD70: STA.w $010C\n\n#_1BBD73: STZ.b $11\n#_1BBD75: STZ.b $B0\n\n.no_entrance_found\n#_1BBD77: SEP #$30\n\n#_1BBD79: RTL", + "file": "bank_1B.asm" + }, + { + "name": "HandleItemTileAction_Overworld", + "code": "HandleItemTileAction_Overworld:\n{\n#_1BBD7A: LDA.b $1B\n#_1BBD7C: BEQ .continue\n\n#_1BBD7E: JML HandleItemTileAction_Underworld\n\n; ---------------------------------------------------------\n\n.continue\n#_1BBD82: REP #$30\n\n#_1BBD84: STZ.w $04B2\n#_1BBD87: STZ.b $76\n\n#_1BBD89: LDA.b $00\n#_1BBD8B: SEC\n#_1BBD8C: SBC.w $0708\n#_1BBD8F: AND.w $070A\n#_1BBD92: ASL A\n#_1BBD93: ASL A\n#_1BBD94: ASL A\n#_1BBD95: STA.b $06\n\n#_1BBD97: LDA.b $02\n#_1BBD99: SEC\n#_1BBD9A: SBC.w $070C\n#_1BBD9D: AND.w $070E\n#_1BBDA0: CLC\n#_1BBDA1: ADC.b $06\n#_1BBDA3: TAX\n\n#_1BBDA4: LDA.w $0301\n#_1BBDA7: AND.w #$0002\n#_1BBDAA: BNE .hammer\n\n#_1BBDAC: LDA.w $0301\n#_1BBDAF: AND.w #$0040\n#_1BBDB2: BEQ .not_powder\n\n.powder\n#_1BBDB4: LDA.l $7E2000,X\n#_1BBDB8: PHA\n\n#_1BBDB9: LDY.w #$0002\n#_1BBDBC: CMP.w #$0036\n#_1BBDBF: BEQ .is_bush\n\n#_1BBDC1: LDY.w #$0004\n#_1BBDC4: CMP.w #$072A\n#_1BBDC7: BNE .not_bush\n\n.is_bush\n#_1BBDC9: JMP.w OverworldTileAction_Bush\n\n.hammer\n#_1BBDCC: LDA.l $7E2000,X\n#_1BBDD0: PHA\n\n#_1BBDD1: CMP.w #$021B\n#_1BBDD4: BNE .not_peg\n\n#_1BBDD6: SEP #$20\n\n#_1BBDD8: LDA.b #$11 ; SFX2.11\n#_1BBDDA: STA.w $012E\n\n#_1BBDDD: REP #$20\n\n#_1BBDDF: JSL HandlePegPuzzles\n\n#_1BBDE3: LDA.w #$0DCB\n#_1BBDE6: JMP.w OverworldTileAction_Bush_no_secret\n\n.not_peg\n#_1BBDE9: JSR Overworld_PickHammerSFX\n\n.not_bush\n#_1BBDEC: JMP.w OverworldTileAction_Exit\n\n; ---------------------------------------------------------\n\n.not_powder\n#_1BBDEF: LDA.l $7E2000,X\n#_1BBDF3: PHA\n\n#_1BBDF4: CMP.w #$0034\n#_1BBDF7: BEQ OverworldTileAction_Diggable\n\n#_1BBDF9: CMP.w #$0071\n#_1BBDFC: BEQ OverworldTileAction_Diggable\n\n#_1BBDFE: CMP.w #$0035\n#_1BBE01: BEQ OverworldTileAction_Diggable\n\n#_1BBE03: CMP.w #$010D\n#_1BBE06: BEQ OverworldTileAction_Diggable\n\n#_1BBE08: CMP.w #$010F\n#_1BBE0B: BEQ OverworldTileAction_Diggable\n\n#_1BBE0D: CMP.w #$00E1\n#_1BBE10: BEQ OverworldTileAction_Diggable\n\n#_1BBE12: CMP.w #$00E2\n#_1BBE15: BEQ OverworldTileAction_Diggable\n\n#_1BBE17: CMP.w #$00DA\n#_1BBE1A: BEQ OverworldTileAction_Diggable\n\n#_1BBE1C: CMP.w #$00F8\n#_1BBE1F: BEQ OverworldTileAction_Diggable\n\n#_1BBE21: CMP.w #$010E\n#_1BBE24: BEQ OverworldTileAction_Diggable\n\n#_1BBE26: CMP.w #$037E\n#_1BBE29: BEQ .not_grass\n\n#_1BBE2B: LDY.w #$0002\n#_1BBE2E: CMP.w #$0036\n#_1BBE31: BEQ OverworldTileAction_Bush\n\n#_1BBE33: LDY.w #$0004\n#_1BBE36: CMP.w #$072A\n#_1BBE39: BEQ OverworldTileAction_Bush\n\n.not_digging\n#_1BBE3B: JMP.w OverworldTileAction_Exit\n\n; ---------------------------------------------------------\n\n#OverworldTileAction_Diggable:\n#_1BBE3E: LDA.w $037A\n#_1BBE41: AND.w #$00FF\n#_1BBE44: CMP.w #$0001\n#_1BBE47: BNE .not_digging\n\n#_1BBE49: LDA.b $8A\n#_1BBE4B: CMP.w #$002A ; OW 2A\n#_1BBE4E: BNE .not_flute_spot\n\n#_1BBE50: CPX.w #$0492\n#_1BBE53: BNE .not_flute_spot\n\n#_1BBE55: STX.w $04B2\n\n.not_flute_spot\n#_1BBE58: LDY.w #$0DC9\n#_1BBE5B: BRA OverworldTileAction_RevealSecret\n\n.not_grass\n#_1BBE5D: LDA.w $037A\n#_1BBE60: AND.w #$00FF\n#_1BBE63: CMP.w #$0001\n#_1BBE66: BNE .not_digging_carry_on\n\n#_1BBE68: JMP.w OverworldTileAction_Exit\n\n.not_digging_carry_on\n#_1BBE6B: LDA.b $02\n#_1BBE6D: ASL A\n#_1BBE6E: ASL A\n#_1BBE6F: ASL A\n#_1BBE70: SEC\n#_1BBE71: SBC.w #$0008\n#_1BBE74: PHA\n\n#_1BBE75: LDA.b $00\n#_1BBE77: SEC\n#_1BBE78: SBC.w #$0008\n#_1BBE7B: AND.w #$FFF8\n#_1BBE7E: STA.b $74\n\n#_1BBE80: PLA\n#_1BBE81: STA.b $72\n\n#_1BBE83: LDA.w #$0003\n#_1BBE86: STA.b $76\n\n#_1BBE88: LDY.w #$0DC5\n#_1BBE8B: BRA OverworldTileAction_RevealSecret\n}\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldTileAction_Bush", + "code": "OverworldTileAction_Bush:\n{\n#_1BBE8D: LDA.w $037A\n#_1BBE90: AND.w #$00FF\n#_1BBE93: CMP.w #$0001\n#_1BBE96: BEQ .digging\n\n#_1BBE98: LDA.b $02\n#_1BBE9A: AND.w #$FFFE\n#_1BBE9D: ASL A\n#_1BBE9E: ASL A\n#_1BBE9F: ASL A\n#_1BBEA0: PHA\n\n#_1BBEA1: LDA.b $00\n#_1BBEA3: AND.w #$FFF0\n#_1BBEA6: STA.b $74\n\n#_1BBEA8: PLA\n#_1BBEA9: STA.b $72\n\n#_1BBEAB: STY.b $76\n\n#_1BBEAD: PLA\n#_1BBEAE: PHA\n\n#_1BBEAF: LDY.w #$0DC7\n#_1BBEB2: CMP.w #$072A\n#_1BBEB5: BNE OverworldTileAction_RevealSecret\n\n#_1BBEB7: LDY.w #$0DC8\n\n; ---------------------------------------------------------\n\n#OverworldTileAction_RevealSecret:\n#_1BBEBA: STY.b $0E\n\n#_1BBEBC: JSR Overworld_RevealSecret\n#_1BBEBF: BCS .no_secret\n\n#_1BBEC1: LDA.b $0E\n\n.no_secret\n#_1BBEC3: STA.l $7E2000,X\n\n#_1BBEC7: JSL Overworld_MemorizeMap16Change\n#_1BBECB: JSL Overworld_DrawMap16\n\n#_1BBECF: SEP #$20\n\n#_1BBED1: LDA.b #$01\n#_1BBED3: STA.b $14\n\n#_1BBED5: REP #$20\n\n#_1BBED7: PLA\n\n#_1BBED8: BRA .continue_continue\n\n; ---------------------------------------------------------\n\n.digging\n#_1BBEDA: PLA\n#_1BBEDB: LDA.l $7E2000,X\n\n.continue_continue\n#_1BBEDF: ASL A\n#_1BBEE0: ASL A\n#_1BBEE1: STA.b $06\n\n#_1BBEE3: LDA.b $00\n#_1BBEE5: AND.w #$0008\n#_1BBEE8: LSR A\n#_1BBEE9: LSR A\n#_1BBEEA: TSB.b $06\n\n#_1BBEEC: LDA.b $02\n#_1BBEEE: AND.w #$0001\n#_1BBEF1: ORA.b $06\n#_1BBEF3: ASL A\n#_1BBEF4: TAX\n\n#_1BBEF5: LDA.l Map16Definitions+0,X\n#_1BBEF9: AND.w #$01FF\n#_1BBEFC: TAX\n\n#_1BBEFD: LDA.l OverworldTileTypes,X\n#_1BBF01: PHA\n\n#_1BBF02: LDA.b $72\n#_1BBF04: STA.b $00\n\n#_1BBF06: LDA.b $74\n#_1BBF08: STA.b $02\n\n#_1BBF0A: SEP #$30\n\n#_1BBF0C: LDA.b $76\n#_1BBF0E: BEQ .no_poof\n\n#_1BBF10: JSL Sprite_SpawnImmediatelySmashedTerrain\n#_1BBF14: JSL AncillaAdd_BushPoof\n\n.no_poof\n#_1BBF18: REP #$30\n\n; ---------------------------------------------------------\n\n#OverworldTileAction_Exit:\n#_1BBF1A: PLA\n\n#_1BBF1B: SEP #$30\n\n#_1BBF1D: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_PickHammerSFX", + "code": "Overworld_PickHammerSFX:\n{\n#_1BBF1E: ASL A\n#_1BBF1F: ASL A\n#_1BBF20: ASL A\n#_1BBF21: TAX\n\n#_1BBF22: LDA.l Map16Definitions+0,X\n#_1BBF26: AND.w #$01FF\n#_1BBF29: TAX\n\n#_1BBF2A: LDA.l OverworldTileTypes,X\n\n#_1BBF2E: SEP #$30\n\n#_1BBF30: CMP.b #$50\n#_1BBF32: BCC .no_sfx\n\n#_1BBF34: LDY.b #$1A ; SFX2.1A\n#_1BBF36: CMP.b #$52\n#_1BBF38: BCC .play_sfx\n\n#_1BBF3A: LDY.b #$11 ; SFX2.11\n#_1BBF3C: CMP.b #$54\n#_1BBF3E: BEQ .play_sfx\n\n#_1BBF40: LDY.b #$05 ; SFX2.05\n#_1BBF42: CMP.b #$58\n#_1BBF44: BCS .no_sfx\n\n.play_sfx\n#_1BBF46: STY.w $012E\n\n.no_sfx\n#_1BBF49: REP #$30\n\n#_1BBF4B: RTS", + "file": "bank_1B.asm" + }, + { + "name": "RockSmashReplaceOffset", + "code": "RockSmashReplaceOffset:\n.tile1\n#_1BBF4C: dw 0 ; from top left\n#_1BBF4E: dw -2 ; from top right\n#_1BBF50: dw -128 ; from bottom left\n#_1BBF52: dw -130 ; from bottom right\n\n.tile2\n#_1BBF54: dw 0 ; from top left\n#_1BBF56: dw 0 ; from top right\n#_1BBF58: dw -128 ; from bottom left\n#_1BBF5A: dw -128 ; from bottom right\n\n.tile3\n#_1BBF5C: dw 0 ; from top left\n#_1BBF5E: dw -2 ; from top right\n#_1BBF60: dw 0 ; from bottom left\n#_1BBF62: dw -2 ; from bottom right\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_GetLinkMap16Coords", + "code": "Overworld_GetLinkMap16Coords:\n{\n#_1BBF64: LDA.b $2F\n#_1BBF66: AND.w #$00FF\n#_1BBF69: TAX\n\n#_1BBF6A: LDA.b $20\n#_1BBF6C: CLC\n#_1BBF6D: ADC.l LiftableCheckOffset_Y,X\n#_1BBF71: AND.w #$FFF0\n#_1BBF74: STA.b $00\n\n#_1BBF76: SEC\n#_1BBF77: SBC.w $0708\n#_1BBF7A: AND.w $070A\n#_1BBF7D: ASL A\n#_1BBF7E: ASL A\n#_1BBF7F: ASL A\n#_1BBF80: STA.b $06\n\n#_1BBF82: LDA.b $22\n#_1BBF84: CLC\n#_1BBF85: ADC.l LiftableCheckOffset_X,X\n#_1BBF89: AND.w #$FFF0\n#_1BBF8C: STA.b $02\n\n#_1BBF8E: LSR A\n#_1BBF8F: LSR A\n#_1BBF90: LSR A\n#_1BBF91: SEC\n#_1BBF92: SBC.w $070C\n#_1BBF95: AND.w $070E\n#_1BBF98: CLC\n#_1BBF99: ADC.b $06\n\n#_1BBF9B: TAX\n\n#_1BBF9C: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_HandleLiftableTiles", + "code": "Overworld_HandleLiftableTiles:\n{\n#_1BBF9D: REP #$30\n\n#_1BBF9F: JSR Overworld_GetLinkMap16Coords\n\n#_1BBFA2: LDA.b $00\n#_1BBFA4: PHA\n\n#_1BBFA5: LDA.b $02\n#_1BBFA7: PHA\n\n#_1BBFA8: LDA.l $7E2000,X\n\n#_1BBFAC: LDY.w #$0000\n#_1BBFAF: CMP.w #$036D\n#_1BBFB2: BEQ .large_rock\n\n#_1BBFB4: INY\n#_1BBFB5: CMP.w #$036E\n#_1BBFB8: BEQ .large_rock\n\n#_1BBFBA: INY\n#_1BBFBB: CMP.w #$0374\n#_1BBFBE: BEQ .large_rock\n\n#_1BBFC0: INY\n#_1BBFC1: CMP.w #$0375\n#_1BBFC4: BEQ .large_rock\n\n#_1BBFC6: LDY.w #$0000\n#_1BBFC9: CMP.w #$023B\n#_1BBFCC: BEQ .large_rock\n\n#_1BBFCE: INY\n#_1BBFCF: CMP.w #$023C\n#_1BBFD2: BEQ .large_rock\n\n#_1BBFD4: INY\n#_1BBFD5: CMP.w #$023D\n#_1BBFD8: BEQ .large_rock\n\n#_1BBFDA: CMP.w #$023E\n#_1BBFDD: BNE .not_large_rock\n\n#_1BBFDF: INY\n\n.large_rock\n#_1BBFE0: JMP.w SmashRockPile_fromLift\n\n; ---------------------------------------------------------\n\n.not_large_rock\n#_1BBFE3: LDY.w #$0DC7\n#_1BBFE6: CMP.w #$0036\n#_1BBFE9: BEQ .small_object\n\n#_1BBFEB: LDY.w #$0DC8\n#_1BBFEE: CMP.w #$072A\n#_1BBFF1: BEQ .small_object\n\n#_1BBFF3: LDY.w #$0DCA\n#_1BBFF6: CMP.w #$020F\n#_1BBFF9: BEQ .small_object\n\n#_1BBFFB: CMP.w #$0239\n#_1BBFFE: BEQ .small_object\n\n#_1BC000: CMP.w #$0101\n#_1BC003: BNE .not_small_object\n\n#_1BC005: LDY.w #$0DC6\n\n.small_object\n#_1BC008: STY.b $0E\n\n#_1BC00A: PHA\n\n#_1BC00B: JSR Overworld_RevealSecret\n#_1BC00E: BCS .no_secret\n\n#_1BC010: LDA.b $0E\n\n.no_secret\n#_1BC012: STA.l $7E2000,X\n\n#_1BC016: JSL Overworld_MemorizeMap16Change\n#_1BC01A: JSL Overworld_DrawMap16\n\n#_1BC01E: SEP #$20\n\n#_1BC020: LDA.b #$01\n#_1BC022: STA.b $14\n}\n; =========================================================\n\n#Overworld_GetLiftableTileType:\n{\n#_1BC024: REP #$30\n\n#_1BC026: PLA\n\n; ---------------------------------------------------------\n\n.not_small_object\n#_1BC027: ASL A\n#_1BC028: ASL A\n#_1BC029: STA.b $06\n\n#_1BC02B: LDA.b $02\n#_1BC02D: AND.w #$0008\n#_1BC030: LSR A\n#_1BC031: LSR A\n#_1BC032: TSB.b $06\n\n#_1BC034: LDA.b $00\n#_1BC036: LSR A\n#_1BC037: LSR A\n#_1BC038: LSR A\n#_1BC039: AND.w #$0001\n#_1BC03C: ORA.b $06\n\n#_1BC03E: ASL A\n#_1BC03F: TAX\n\n#_1BC040: LDA.l Map16Definitions+0,X\n#_1BC044: AND.w #$01FF\n#_1BC047: TAX\n\n#_1BC048: PLA\n#_1BC049: STA.b $00\n\n#_1BC04B: PLA\n#_1BC04C: STA.b $02\n\n#_1BC04E: LDA.l OverworldTileTypes,X\n\n#_1BC052: SEP #$31\n\n#_1BC054: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_SmashRockPileFromAbove", + "code": "Overworld_SmashRockPileFromAbove:\n#_1BC063: REP #$30\n\n#_1BC065: LDA.b $20\n#_1BC067: PHA\n\n#_1BC068: CLC\n#_1BC069: ADC.w #$0008\n#_1BC06C: STA.b $20\n\n#_1BC06E: JSR Overworld_GetLinkMap16Coords\n\n#_1BC071: PLA\n#_1BC072: STA.b $20\n\n#_1BC074: BRA .continue\n\n; =========================================================\n\n#Overworld_SmashRockPileFromHere:\n#_1BC076: REP #$30\n\n#_1BC078: JSR Overworld_GetLinkMap16Coords\n\n.continue\n#_1BC07B: LDA.b $00\n#_1BC07D: PHA\n\n#_1BC07E: LDA.b $02\n#_1BC080: PHA\n\n#_1BC081: LDA.l $7E2000,X\n#_1BC085: LDY.w #$0000\n#_1BC088: CMP.w #$0226\n#_1BC08B: BEQ .rock_pile\n\n#_1BC08D: INY\n#_1BC08E: CMP.w #$0227\n#_1BC091: BEQ .rock_pile\n\n#_1BC093: INY\n#_1BC094: CMP.w #$0228\n#_1BC097: BEQ .rock_pile\n\n#_1BC099: CMP.w #$0229\n#_1BC09C: BNE Overworld_SmashRockPile\n\n#_1BC09E: INY\n\n.rock_pile\n\n; =========================================================\n\n#SmashRockPile_fromLift:\n#_1BC09F: STY.b $0C\n\n#_1BC0A1: PHA\n\n#_1BC0A2: ASL.b $0C\n\n#_1BC0A4: TXA\n#_1BC0A5: CLC\n#_1BC0A6: LDX.b $0C\n\n#_1BC0A8: ADC.l RockSmashReplaceOffset_tile1,X\n#_1BC0AC: STA.w $0698\n\n#_1BC0AF: TAX\n\n#_1BC0B0: LDA.w #$0028\n#_1BC0B3: STA.w $0692\n\n#_1BC0B6: STZ.b $0E\n\n#_1BC0B8: JSR Overworld_RevealSecret\n\n#_1BC0BB: LDA.b $0E\n#_1BC0BD: CMP.w #$FFFF\n#_1BC0C0: BNE .no_secret\n\n; ---------------------------------------------------------\n\n#_1BC0C2: SEP #$20\n\n#_1BC0C4: LDX.b $8A\n\n#_1BC0C6: LDA.l $7EF280,X\n#_1BC0CA: ORA.b #$20\n#_1BC0CC: STA.l $7EF280,X\n\n#_1BC0D0: LDA.b #$1B ; SFX3.1B\n#_1BC0D2: STA.w $012F\n\n#_1BC0D5: REP #$20\n\n#_1BC0D7: LDA.w #$0050\n#_1BC0DA: STA.w $0692\n\n; ---------------------------------------------------------\n\n.no_secret\n#_1BC0DD: LDX.b $0C\n\n#_1BC0DF: LDA.b $00\n#_1BC0E1: CLC\n#_1BC0E2: ADC.l RockSmashReplaceOffset_tile2,X\n#_1BC0E6: STA.b $00\n\n#_1BC0E8: LDA.b $02\n#_1BC0EA: CLC\n#_1BC0EB: ADC.l RockSmashReplaceOffset_tile3,X\n#_1BC0EF: STA.b $02\n\n#_1BC0F1: JSL Overworld_DoMapUpdate32x32_long\n\n#_1BC0F5: JMP.w Overworld_GetLiftableTileType\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_BombTiles32x32", + "code": "Overworld_BombTiles32x32:\n#_1BC0F8: REP #$30\n\n#_1BC0FA: STZ.b $0E\n#_1BC0FC: STZ.b $08\n\n#_1BC0FE: LDA.w #$0003\n#_1BC101: STA.b $C8\n\n#_1BC103: LDA.b $00\n#_1BC105: SEC\n#_1BC106: SBC.w #$0014\n#_1BC109: AND.w #$FFF8\n#_1BC10C: STA.w $0488\n\n#_1BC10F: LDA.b $02\n#_1BC111: SEC\n#_1BC112: SBC.w #$0017\n#_1BC115: AND.w #$FFF8\n#_1BC118: STA.w $0486\n\n; ---------------------------------------------------------\n\n.next_row\n#_1BC11B: LDA.w $0488\n#_1BC11E: SEC\n#_1BC11F: SBC.w $0708\n#_1BC122: AND.w $070A\n#_1BC125: ASL A\n#_1BC126: ASL A\n#_1BC127: ASL A\n#_1BC128: STA.b $CA\n\n#_1BC12A: LDA.w $0486\n#_1BC12D: JSR Overworld_BombTile\n\n#_1BC130: LDA.w $0486\n#_1BC133: CLC\n#_1BC134: ADC.w #$0010\n#_1BC137: JSR Overworld_BombTile\n\n#_1BC13A: LDA.w $0486\n#_1BC13D: CLC\n#_1BC13E: ADC.w #$0020\n#_1BC141: JSR Overworld_BombTile\n\n#_1BC144: LDA.w $0488\n#_1BC147: CLC\n#_1BC148: ADC.w #$0010\n#_1BC14B: STA.w $0488\n\n#_1BC14E: DEC.b $C8\n#_1BC150: BNE .next_row\n\n; ---------------------------------------------------------\n\n#_1BC152: SEP #$30\n\n#_1BC154: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_BombTile", + "code": "Overworld_BombTile:\n{\n#_1BC155: PHA\n\n#_1BC156: LSR A\n#_1BC157: LSR A\n#_1BC158: LSR A\n#_1BC159: SEC\n#_1BC15A: SBC.w $070C\n#_1BC15D: AND.w $070E\n#_1BC160: CLC\n#_1BC161: ADC.b $CA\n#_1BC163: TAX\n\n#_1BC164: STX.b $04\n\n; ---------------------------------------------------------\n\n#_1BC166: LDA.l $7EF3CC\n#_1BC16A: AND.w #$00FF\n#_1BC16D: CMP.w #$0D ; FOLLOWER 0D\n#_1BC170: BEQ .check_for_cave\n\n#_1BC172: LDA.l $7E2000,X\n\n#_1BC176: LDY.w #$0DC7\n#_1BC179: LDX.w #$0002\n\n#_1BC17C: CMP.w #$0036\n#_1BC17F: BEQ .greenery\n\n#_1BC181: LDX.w #$0004\n#_1BC184: LDY.w #$0DC8\n\n#_1BC187: CMP.w #$072A\n#_1BC18A: BEQ .greenery\n\n#_1BC18C: CMP.w #$037E\n#_1BC18F: BNE .check_for_cave\n\n#_1BC191: LDY.w #$0DC5\n#_1BC194: LDX.w #$0003\n\n.greenery\n#_1BC197: STX.b $0A\n#_1BC199: STY.b $0E\n\n#_1BC19B: LDX.b $04\n\n#_1BC19D: JSR Overworld_RevealSecret\n#_1BC1A0: BCS .no_secret\n\n#_1BC1A2: LDA.b $0E\n\n; ---------------------------------------------------------\n\n.no_secret\n#_1BC1A4: STA.l $7E2000,X\n#_1BC1A8: JSL Overworld_MemorizeMap16Change\n\n#_1BC1AC: LDY.w #$0000\n#_1BC1AF: JSL Overworld_DrawMap16_Anywhere\n\n#_1BC1B3: PLA\n#_1BC1B4: AND.w #$FFF8\n#_1BC1B7: STA.b $00\n\n#_1BC1B9: LDA.w $0488\n#_1BC1BC: AND.w #$FFF8\n#_1BC1BF: STA.b $02\n\n#_1BC1C1: LDA.b $08\n#_1BC1C3: PHA\n\n#_1BC1C4: SEP #$30\n\n#_1BC1C6: LDA.b $0A\n#_1BC1C8: JSL Sprite_SpawnImmediatelySmashedTerrain\n\n#_1BC1CC: LDA.b #$01\n#_1BC1CE: STA.b $14\n\n#_1BC1D0: REP #$30\n\n#_1BC1D2: PLA\n#_1BC1D3: STA.b $08\n\n#_1BC1D5: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AlterWeathervane", + "code": "Overworld_AlterWeathervane:\n{\n#_1BC21D: REP #$30\n\n#_1BC21F: LDA.w #$0068\n#_1BC222: STA.w $0692\n\n#_1BC225: LDA.w #$0C3E\n#_1BC228: STA.w $0698\n\n#_1BC22B: JSL Overworld_DoMapUpdate32x32_long\n\n#_1BC22F: REP #$30\n\n#_1BC231: LDX.w #$0C42\n#_1BC234: LDA.w #$0E21\n#_1BC237: STA.l $7E2000,X\n\n#_1BC23B: LDY.w #$0000\n#_1BC23E: JSL Overworld_DrawMap16_Anywhere\n\n#_1BC242: LDX.w #$0CC0\n#_1BC245: LDA.w #$0E25\n#_1BC248: STA.l $7E2002,X\n\n#_1BC24C: LDY.w #$0002\n#_1BC24F: JSL Overworld_DrawMap16_Anywhere\n\n#_1BC253: SEP #$30\n\n#_1BC255: LDA.l $7EF298\n#_1BC259: ORA.b #$20\n#_1BC25B: STA.l $7EF298\n\n#_1BC25F: LDA.b #$01\n#_1BC261: STA.b $14\n\n#_1BC263: RTL", + "file": "bank_1B.asm" + }, + { + "name": "OpenGargoylesDomain", + "code": "OpenGargoylesDomain:\n{\n#_1BC264: REP #$30\n\n#_1BC266: LDX.w #$0D3E\n#_1BC269: LDA.w #$0E1B\n#_1BC26C: JSL Overworld_DrawMap16_Persist\n\n#_1BC270: LDX.w #$0D40\n#_1BC273: LDA.w #$0E1C\n#_1BC276: JSR Overworld_AlterTileHardcore\n\n#_1BC279: LDX.w #$0DBE\n#_1BC27C: JSR Overworld_AlterTileHardcore\n#_1BC27F: JSR Overworld_AlterTileHardcore\n\n#_1BC282: LDX.w #$0E3E\n#_1BC285: JSR Overworld_AlterTileHardcore\n#_1BC288: JSR Overworld_AlterTileHardcore\n\n#_1BC28B: LDA.w #$FFFF\n#_1BC28E: STA.w $1012,Y\n\n#_1BC291: SEP #$30\n\n#_1BC293: LDA.l $7EF2D8\n#_1BC297: ORA.b #$20\n#_1BC299: STA.l $7EF2D8\n\n#_1BC29D: LDA.b #$1B ; SFX3.1B\n#_1BC29F: STA.w $012F\n\n#_1BC2A2: LDA.b #$01\n#_1BC2A4: STA.b $14\n\n#_1BC2A6: RTL", + "file": "bank_1B.asm" + }, + { + "name": "CreatePyramidHole", + "code": "CreatePyramidHole:\n{\n#_1BC2A7: REP #$30\n\n#_1BC2A9: LDX.w #$03BC\n#_1BC2AC: LDA.w #$0E3F\n#_1BC2AF: JSL Overworld_DrawMap16_Persist\n\n#_1BC2B3: LDX.w #$03BE\n#_1BC2B6: LDA.w #$0E40\n#_1BC2B9: JSR Overworld_AlterTileHardcore\n#_1BC2BC: JSR Overworld_AlterTileHardcore\n\n#_1BC2BF: LDX.w #$043C\n#_1BC2C2: JSR Overworld_AlterTileHardcore\n#_1BC2C5: JSR Overworld_AlterTileHardcore\n#_1BC2C8: JSR Overworld_AlterTileHardcore\n\n#_1BC2CB: LDX.w #$04BC\n#_1BC2CE: JSR Overworld_AlterTileHardcore\n#_1BC2D1: JSR Overworld_AlterTileHardcore\n#_1BC2D4: JSR Overworld_AlterTileHardcore\n\n#_1BC2D7: LDA.w #$FFFF\n#_1BC2DA: STA.w $1012,Y\n\n#_1BC2DD: LDA.w #$3515 ; plays 2 at once SFX1.15 / SFX2.35\n#_1BC2E0: STA.w $012D\n\n#_1BC2E3: SEP #$30\n\n#_1BC2E5: LDA.l $7EF2DB\n#_1BC2E9: ORA.b #$20\n#_1BC2EB: STA.l $7EF2DB\n\n#_1BC2EF: LDA.b #$03 ; SFX3.03\n#_1BC2F1: STA.w $012F\n\n#_1BC2F4: LDA.b #$01\n#_1BC2F6: STA.b $14\n\n#_1BC2F8: RTL", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems", + "code": "OverworldData_HiddenItems:\n{\n; ---------------------------------------------------------\n\n#_1BC2F9: dw OverworldData_HiddenItems_Screen_00 ; 0x00 - Lost Woods\n#_1BC2FB: dw OverworldData_HiddenItems_Screen_00 ; 0x01 - Lost Woods\n#_1BC2FD: dw OverworldData_HiddenItems_Screen_02 ; 0x02 - Lumberjacks\n#_1BC2FF: dw OverworldData_HiddenItems_Screen_03 ; 0x03 - West Death Mountain\n#_1BC301: dw OverworldData_HiddenItems_Screen_03 ; 0x04 - West Death Mountain\n#_1BC303: dw OverworldData_HiddenItems_Screen_05 ; 0x05 - East Death Mountain\n#_1BC305: dw OverworldData_HiddenItems_Screen_05 ; 0x06 - East Death Mountain\n#_1BC307: dw OverworldData_HiddenItems_Screen_07 ; 0x07 - Turtle Rock Portalway\n#_1BC309: dw OverworldData_HiddenItems_Screen_00 ; 0x08 - Lost Woods\n#_1BC30B: dw OverworldData_HiddenItems_Screen_00 ; 0x09 - Lost Woods\n#_1BC30D: dw OverworldData_HiddenItems_Screen_0A ; 0x0A - Death Mountain Foot\n#_1BC30F: dw OverworldData_HiddenItems_Screen_03 ; 0x0B - West Death Mountain\n#_1BC311: dw OverworldData_HiddenItems_Screen_03 ; 0x0C - West Death Mountain\n#_1BC313: dw OverworldData_HiddenItems_Screen_05 ; 0x0D - East Death Mountain\n#_1BC315: dw OverworldData_HiddenItems_Screen_05 ; 0x0E - East Death Mountain\n#_1BC317: dw OverworldData_HiddenItems_Screen_0F ; 0x0F - Waterfall of Wishing\n#_1BC319: dw OverworldData_HiddenItems_Screen_10 ; 0x10 - Lost Woods Alcove\n#_1BC31B: dw OverworldData_HiddenItems_Screen_11 ; 0x11 - North of Kakariko\n#_1BC31D: dw OverworldData_HiddenItems_Screen_12 ; 0x12 - Northwest Pond\n#_1BC31F: dw OverworldData_HiddenItems_Screen_13 ; 0x13 - Sanctuary\n#_1BC321: dw OverworldData_HiddenItems_Screen_14 ; 0x14 - Graveyard\n#_1BC323: dw OverworldData_HiddenItems_Screen_15 ; 0x15 - Hylia River Bend\n#_1BC325: dw OverworldData_HiddenItems_Screen_16 ; 0x16 - Potion Shop\n#_1BC327: dw OverworldData_HiddenItems_Screen_17 ; 0x17 - Octorok Pit\n#_1BC329: dw OverworldData_HiddenItems_Screen_18 ; 0x18 - Kakariko Village\n#_1BC32B: dw OverworldData_HiddenItems_Screen_18 ; 0x19 - Kakariko Village\n#_1BC32D: dw OverworldData_HiddenItems_Screen_1A ; 0x1A - Kakariko Orchard\n#_1BC32F: dw OverworldData_HiddenItems_Screen_1B ; 0x1B - Hyrule Castle\n#_1BC331: dw OverworldData_HiddenItems_Screen_1B ; 0x1C - Hyrule Castle\n#_1BC333: dw OverworldData_HiddenItems_Screen_1D ; 0x1D - Hylia River Peninsula\n#_1BC335: dw OverworldData_HiddenItems_Screen_1E ; 0x1E - Eastern Ruins\n#_1BC337: dw OverworldData_HiddenItems_Screen_1E ; 0x1F - Eastern Ruins\n#_1BC339: dw OverworldData_HiddenItems_Screen_18 ; 0x20 - Kakariko Village\n#_1BC33B: dw OverworldData_HiddenItems_Screen_18 ; 0x21 - Kakariko Village\n#_1BC33D: dw OverworldData_HiddenItems_Screen_22 ; 0x22 - Smith's House\n#_1BC33F: dw OverworldData_HiddenItems_Screen_1B ; 0x23 - Hyrule Castle\n#_1BC341: dw OverworldData_HiddenItems_Screen_1B ; 0x24 - Hyrule Castle\n#_1BC343: dw OverworldData_HiddenItems_Screen_25 ; 0x25 - Boulder Field\n#_1BC345: dw OverworldData_HiddenItems_Screen_1E ; 0x26 - Eastern Ruins\n#_1BC347: dw OverworldData_HiddenItems_Screen_1E ; 0x27 - Eastern Ruins\n#_1BC349: dw OverworldData_HiddenItems_Screen_28 ; 0x28 - Racing Game\n#_1BC34B: dw OverworldData_HiddenItems_Screen_29 ; 0x29 - South of Kakariko\n#_1BC34D: dw OverworldData_HiddenItems_Screen_2A ; 0x2A - Haunted Grove\n#_1BC34F: dw OverworldData_HiddenItems_Screen_2B ; 0x2B - West of Link's House\n#_1BC351: dw OverworldData_HiddenItems_Screen_2C ; 0x2C - Link's House\n#_1BC353: dw OverworldData_HiddenItems_Screen_2D ; 0x2D - Eastern Bridge\n#_1BC355: dw OverworldData_HiddenItems_Screen_2E ; 0x2E - Lake Hylia River Bend\n#_1BC357: dw OverworldData_HiddenItems_Screen_2F ; 0x2F - Eastern Portalway\n#_1BC359: dw OverworldData_HiddenItems_Screen_30 ; 0x30 - Desert\n#_1BC35B: dw OverworldData_HiddenItems_Screen_30 ; 0x31 - Desert\n#_1BC35D: dw OverworldData_HiddenItems_Screen_32 ; 0x32 - Haunted Grove Entrance\n#_1BC35F: dw OverworldData_HiddenItems_Screen_33 ; 0x33 - Marshlands Portalway\n#_1BC361: dw OverworldData_HiddenItems_Screen_34 ; 0x34 - Marshlands Totems\n#_1BC363: dw OverworldData_HiddenItems_Screen_35 ; 0x35 - Lake Hylia\n#_1BC365: dw OverworldData_HiddenItems_Screen_35 ; 0x36 - Lake Hylia\n#_1BC367: dw OverworldData_HiddenItems_Screen_37 ; 0x37 - Lake Hylia River End\n#_1BC369: dw OverworldData_HiddenItems_Screen_30 ; 0x38 - Desert\n#_1BC36B: dw OverworldData_HiddenItems_Screen_30 ; 0x39 - Desert\n#_1BC36D: dw OverworldData_HiddenItems_Screen_3A ; 0x3A - Desert Pass\n#_1BC36F: dw OverworldData_HiddenItems_Screen_3B ; 0x3B - Marshlands Dam Entrance\n#_1BC371: dw OverworldData_HiddenItems_Screen_3C ; 0x3C - Marshlands Ravine\n#_1BC373: dw OverworldData_HiddenItems_Screen_35 ; 0x3D - Lake Hylia\n#_1BC375: dw OverworldData_HiddenItems_Screen_35 ; 0x3E - Lake Hylia\n#_1BC377: dw OverworldData_HiddenItems_Screen_3F ; 0x3F - Lake Hylia Waterfall\n\n; ---------------------------------------------------------\n\n#_1BC379: dw OverworldData_HiddenItems_Screen_40 ; 0x40 - Skull Woods\n#_1BC37B: dw OverworldData_HiddenItems_Screen_40 ; 0x41 - Skull Woods\n#_1BC37D: dw OverworldData_HiddenItems_Screen_42 ; 0x42 - Dark Lumberjacks\n#_1BC37F: dw OverworldData_HiddenItems_Screen_43 ; 0x43 - West Dark Death Mountain\n#_1BC381: dw OverworldData_HiddenItems_Screen_43 ; 0x44 - West Dark Death Mountain\n#_1BC383: dw OverworldData_HiddenItems_Screen_45 ; 0x45 - East Dark Death Mountain\n#_1BC385: dw OverworldData_HiddenItems_Screen_45 ; 0x46 - East Dark Death Mountain\n#_1BC387: dw OverworldData_HiddenItems_Screen_47 ; 0x47 - Turtle Rock\n#_1BC389: dw OverworldData_HiddenItems_Screen_40 ; 0x48 - Skull Woods\n#_1BC38B: dw OverworldData_HiddenItems_Screen_40 ; 0x49 - Skull Woods\n#_1BC38D: dw OverworldData_HiddenItems_Screen_4A ; 0x4A - Bumper Ledge\n#_1BC38F: dw OverworldData_HiddenItems_Screen_43 ; 0x4B - West Dark Death Mountain\n#_1BC391: dw OverworldData_HiddenItems_Screen_43 ; 0x4C - West Dark Death Mountain\n#_1BC393: dw OverworldData_HiddenItems_Screen_45 ; 0x4D - East Dark Death Mountain\n#_1BC395: dw OverworldData_HiddenItems_Screen_45 ; 0x4E - East Dark Death Mountain\n#_1BC397: dw OverworldData_HiddenItems_Screen_4F ; 0x4F - Lake of Bad Omens\n#_1BC399: dw OverworldData_HiddenItems_Screen_50 ; 0x50 - Skull Woods Alcove\n#_1BC39B: dw OverworldData_HiddenItems_Screen_51 ; 0x51 - North of Outcasts\n#_1BC39D: dw OverworldData_HiddenItems_Screen_52 ; 0x52 - Dark Northwest Pond\n#_1BC39F: dw OverworldData_HiddenItems_Screen_53 ; 0x53 - Dark Sanctuary\n#_1BC3A1: dw OverworldData_HiddenItems_Screen_54 ; 0x54 - Dark Graveyard\n#_1BC3A3: dw OverworldData_HiddenItems_Screen_55 ; 0x55 - Dark Hylia River Bend\n#_1BC3A5: dw OverworldData_HiddenItems_Screen_56 ; 0x56 - Dark Northeast Shop\n#_1BC3A7: dw OverworldData_HiddenItems_Screen_57 ; 0x57 - Dark Octorok Pit\n#_1BC3A9: dw OverworldData_HiddenItems_Screen_58 ; 0x58 - Village of Outcasts\n#_1BC3AB: dw OverworldData_HiddenItems_Screen_58 ; 0x59 - Village of Outcasts\n#_1BC3AD: dw OverworldData_HiddenItems_Screen_5A ; 0x5A - Outcasts Orchard\n#_1BC3AF: dw OverworldData_HiddenItems_Screen_5B ; 0x5B - Pyramid of Power\n#_1BC3B1: dw OverworldData_HiddenItems_Screen_5B ; 0x5C - Pyramid of Power\n#_1BC3B3: dw OverworldData_HiddenItems_Screen_5D ; 0x5D - Dark Hylia River Peninsula\n#_1BC3B5: dw OverworldData_HiddenItems_Screen_5E ; 0x5E - Palace of Darkness Maze\n#_1BC3B7: dw OverworldData_HiddenItems_Screen_5E ; 0x5F - Palace of Darkness Maze\n#_1BC3B9: dw OverworldData_HiddenItems_Screen_58 ; 0x60 - Village of Outcasts\n#_1BC3BB: dw OverworldData_HiddenItems_Screen_58 ; 0x61 - Village of Outcasts\n#_1BC3BD: dw OverworldData_HiddenItems_Screen_62 ; 0x62 - Stake Puzzle\n#_1BC3BF: dw OverworldData_HiddenItems_Screen_5B ; 0x63 - Pyramid of Power\n#_1BC3C1: dw OverworldData_HiddenItems_Screen_5B ; 0x64 - Pyramid of Power\n#_1BC3C3: dw OverworldData_HiddenItems_Screen_65 ; 0x65 - Boulder Field\n#_1BC3C5: dw OverworldData_HiddenItems_Screen_5E ; 0x66 - Palace of Darkness Maze\n#_1BC3C7: dw OverworldData_HiddenItems_Screen_5E ; 0x67 - Palace of Darkness Maze\n#_1BC3C9: dw OverworldData_HiddenItems_Screen_68 ; 0x68 - Digging Game\n#_1BC3CB: dw OverworldData_HiddenItems_Screen_69 ; 0x69 - South of Outcasts\n#_1BC3CD: dw OverworldData_HiddenItems_Screen_6A ; 0x6A - Stumpy Grove\n#_1BC3CF: dw OverworldData_HiddenItems_Screen_6B ; 0x6B - West of Bomb Shoppe\n#_1BC3D1: dw OverworldData_HiddenItems_Screen_6C ; 0x6C - Bomb Shoppe\n#_1BC3D3: dw OverworldData_HiddenItems_Screen_6D ; 0x6D - Hammer Bridge\n#_1BC3D5: dw OverworldData_HiddenItems_Screen_6E ; 0x6E - Dark Lake Hylia River Bend\n#_1BC3D7: dw OverworldData_HiddenItems_Screen_6F ; 0x6F - East Dark World Portalway\n#_1BC3D9: dw OverworldData_HiddenItems_Screen_70 ; 0x70 - Misery Mire\n#_1BC3DB: dw OverworldData_HiddenItems_Screen_70 ; 0x71 - Misery Mire\n#_1BC3DD: dw OverworldData_HiddenItems_Screen_72 ; 0x72 - Stumpy Grove Entrance\n#_1BC3DF: dw OverworldData_HiddenItems_Screen_73 ; 0x73 - Swamplands Portalway\n#_1BC3E1: dw OverworldData_HiddenItems_Screen_74 ; 0x74 - Swamplands Totems\n#_1BC3E3: dw OverworldData_HiddenItems_Screen_75 ; 0x75 - Dark Lake Hylia\n#_1BC3E5: dw OverworldData_HiddenItems_Screen_75 ; 0x76 - Dark Lake Hylia\n#_1BC3E7: dw OverworldData_HiddenItems_Screen_77 ; 0x77 - Dark Lake Hylia River End\n#_1BC3E9: dw OverworldData_HiddenItems_Screen_70 ; 0x78 - Misery Mire\n#_1BC3EB: dw OverworldData_HiddenItems_Screen_70 ; 0x79 - Misery Mire\n#_1BC3ED: dw OverworldData_HiddenItems_Screen_7A ; 0x7A - West of Swamplands\n#_1BC3EF: dw OverworldData_HiddenItems_Screen_7B ; 0x7B - Swamplands Palace Entrance\n#_1BC3F1: dw OverworldData_HiddenItems_Screen_7C ; 0x7C - Swamplands Ravine\n#_1BC3F3: dw OverworldData_HiddenItems_Screen_75 ; 0x7D - Dark Lake Hylia\n#_1BC3F5: dw OverworldData_HiddenItems_Screen_75 ; 0x7E - Dark Lake Hylia\n#_1BC3F7: dw OverworldData_HiddenItems_Screen_7F ; 0x7F - Dark Lake Hylia Waterfall\n}\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_00", + "code": "OverworldData_HiddenItems_Screen_00:\n#_1BC3F9: dw $036A : db $04 ; Random pack xy:{ 0x350, 0x060 }\n#_1BC3FC: dw $1914 : db $04 ; Random pack xy:{ 0x0A0, 0x320 }\n#_1BC3FF: dw $10E0 : db $80 ; Hole xy:{ 0x300, 0x200 }\n#_1BC402: dw $1AD0 : db $01 ; Green rupee xy:{ 0x280, 0x340 }\n#_1BC405: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_02", + "code": "OverworldData_HiddenItems_Screen_02:\n#_1BC407: dw $04AE : db $01 ; Green rupee xy:{ 0x170, 0x080 }\n#_1BC40A: dw $0D16 : db $03 ; Bee xy:{ 0x0B0, 0x1A0 }\n#_1BC40D: dw $0DA4 : db $01 ; Green rupee xy:{ 0x120, 0x1A0 }\n#_1BC410: dw $0EA0 : db $01 ; Green rupee xy:{ 0x100, 0x1C0 }\n#_1BC413: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_03", + "code": "OverworldData_HiddenItems_Screen_03:\n#_1BC415: dw $186A : db $05 ; Bomb xy:{ 0x350, 0x300 }\n#_1BC418: dw $1872 : db $05 ; Bomb xy:{ 0x390, 0x300 }\n#_1BC41B: dw $196E : db $04 ; Random pack xy:{ 0x370, 0x320 }\n#_1BC41E: dw $1A6A : db $05 ; Bomb xy:{ 0x350, 0x340 }\n#_1BC421: dw $1A72 : db $05 ; Bomb xy:{ 0x390, 0x340 }\n#_1BC424: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_05", + "code": "OverworldData_HiddenItems_Screen_05:\n#_1BC426: dw $1D4A : db $82 ; Warp xy:{ 0x250, 0x3A0 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_07", + "code": "OverworldData_HiddenItems_Screen_07:\n#_1BC429: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_0A", + "code": "OverworldData_HiddenItems_Screen_0A:\n#_1BC42B: dw $0730 : db $02 ; Hoarder xy:{ 0x180, 0x0E0 }\n#_1BC42E: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_0F", + "code": "OverworldData_HiddenItems_Screen_0F:\n#_1BC430: dw $0618 : db $06 ; Heart xy:{ 0x0C0, 0x0C0 }\n#_1BC433: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_10", + "code": "OverworldData_HiddenItems_Screen_10:\n#_1BC435: dw $0B28 : db $04 ; Random pack xy:{ 0x140, 0x160 }\n#_1BC438: dw $0B2E : db $82 ; Warp xy:{ 0x170, 0x160 }\n#_1BC43B: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_11", + "code": "OverworldData_HiddenItems_Screen_11:\n#_1BC43D: dw $0A34 : db $05 ; Bomb xy:{ 0x1A0, 0x140 }\n#_1BC440: dw $0D8E : db $06 ; Heart xy:{ 0x070, 0x1A0 }\n#_1BC443: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_12", + "code": "OverworldData_HiddenItems_Screen_12:\n#_1BC445: dw $0530 : db $06 ; Heart xy:{ 0x180, 0x0A0 }\n#_1BC448: dw $0808 : db $04 ; Random pack xy:{ 0x040, 0x100 }\n#_1BC44B: dw $09B2 : db $06 ; Heart xy:{ 0x190, 0x120 }\n#_1BC44E: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_13", + "code": "OverworldData_HiddenItems_Screen_13:\n#_1BC450: dw $0506 : db $84 ; Staircase xy:{ 0x030, 0x0A0 }\n#_1BC453: dw $07A0 : db $03 ; Bee xy:{ 0x100, 0x0E0 }\n#_1BC456: dw $0834 : db $04 ; Random pack xy:{ 0x1A0, 0x100 }\n#_1BC459: dw $08A8 : db $04 ; Random pack xy:{ 0x140, 0x100 }\n#_1BC45C: dw $09A2 : db $06 ; Heart xy:{ 0x110, 0x120 }\n#_1BC45F: dw $09B6 : db $04 ; Random pack xy:{ 0x1B0, 0x120 }\n#_1BC462: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_14", + "code": "OverworldData_HiddenItems_Screen_14:\n#_1BC464: dw $0490 : db $01 ; Green rupee xy:{ 0x080, 0x080 }\n#_1BC467: dw $0492 : db $01 ; Green rupee xy:{ 0x090, 0x080 }\n#_1BC46A: dw $071C : db $03 ; Bee xy:{ 0x0E0, 0x0E0 }\n#_1BC46D: dw $07B8 : db $04 ; Random pack xy:{ 0x1C0, 0x0E0 }\n#_1BC470: dw $0A08 : db $04 ; Random pack xy:{ 0x040, 0x140 }\n#_1BC473: dw $0A8C : db $03 ; Bee xy:{ 0x060, 0x140 }\n#_1BC476: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_15", + "code": "OverworldData_HiddenItems_Screen_15:\n#_1BC478: dw $0390 : db $05 ; Bomb xy:{ 0x080, 0x060 }\n#_1BC47B: dw $0788 : db $80 ; Hole xy:{ 0x040, 0x0E0 }\n#_1BC47E: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_16", + "code": "OverworldData_HiddenItems_Screen_16:\n#_1BC480: dw $079C : db $01 ; Green rupee xy:{ 0x0E0, 0x0E0 }\n#_1BC483: dw $0826 : db $03 ; Bee xy:{ 0x130, 0x100 }\n#_1BC486: dw $0928 : db $04 ; Random pack xy:{ 0x140, 0x120 }\n#_1BC489: dw $09A8 : db $04 ; Random pack xy:{ 0x140, 0x120 }\n#_1BC48C: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_17", + "code": "OverworldData_HiddenItems_Screen_17:\n#_1BC48E: dw $0E1C : db $06 ; Heart xy:{ 0x0E0, 0x1C0 }\n#_1BC491: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_18", + "code": "OverworldData_HiddenItems_Screen_18:\n#_1BC493: dw $0AF8 : db $04 ; Random pack xy:{ 0x3C0, 0x140 }\n#_1BC496: dw $0AFA : db $05 ; Bomb xy:{ 0x3D0, 0x140 }\n#_1BC499: dw $0EEE : db $01 ; Green rupee xy:{ 0x370, 0x1C0 }\n#_1BC49C: dw $1112 : db $03 ; Bee xy:{ 0x090, 0x220 }\n#_1BC49F: dw $111E : db $04 ; Random pack xy:{ 0x0F0, 0x220 }\n#_1BC4A2: dw $1216 : db $01 ; Green rupee xy:{ 0x0B0, 0x240 }\n#_1BC4A5: dw $12A0 : db $01 ; Green rupee xy:{ 0x100, 0x240 }\n#_1BC4A8: dw $1392 : db $01 ; Green rupee xy:{ 0x090, 0x260 }\n#_1BC4AB: dw $139E : db $01 ; Green rupee xy:{ 0x0F0, 0x260 }\n#_1BC4AE: dw $1A18 : db $04 ; Random pack xy:{ 0x0C0, 0x340 }\n#_1BC4B1: dw $1A96 : db $04 ; Random pack xy:{ 0x0B0, 0x340 }\n#_1BC4B4: dw $1A9A : db $05 ; Bomb xy:{ 0x0D0, 0x340 }\n#_1BC4B7: dw $1B14 : db $04 ; Random pack xy:{ 0x0A0, 0x360 }\n#_1BC4BA: dw $1C0C : db $86 ; Bomb door xy:{ 0x060, 0x380 }\n#_1BC4BD: dw $1CB2 : db $03 ; Bee xy:{ 0x190, 0x380 }\n#_1BC4C0: dw $156A : db $06 ; Heart xy:{ 0x350, 0x2A0 }\n#_1BC4C3: dw $15E2 : db $04 ; Random pack xy:{ 0x310, 0x2A0 }\n#_1BC4C6: dw $15EE : db $04 ; Random pack xy:{ 0x370, 0x2A0 }\n#_1BC4C9: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_1A", + "code": "OverworldData_HiddenItems_Screen_1A:\n#_1BC4CB: dw $04AA : db $03 ; Bee xy:{ 0x150, 0x080 }\n#_1BC4CE: dw $0A98 : db $05 ; Bomb xy:{ 0x0C0, 0x140 }\n#_1BC4D1: dw $0DAA : db $04 ; Random pack xy:{ 0x150, 0x1A0 }\n#_1BC4D4: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_1B", + "code": "OverworldData_HiddenItems_Screen_1B:\n#_1BC4D6: dw $028C : db $01 ; Green rupee xy:{ 0x060, 0x040 }\n#_1BC4D9: dw $040C : db $04 ; Random pack xy:{ 0x060, 0x080 }\n#_1BC4DC: dw $040E : db $04 ; Random pack xy:{ 0x070, 0x080 }\n#_1BC4DF: dw $0724 : db $03 ; Bee xy:{ 0x120, 0x0E0 }\n#_1BC4E2: dw $02EC : db $04 ; Random pack xy:{ 0x360, 0x040 }\n#_1BC4E5: dw $0570 : db $80 ; Hole xy:{ 0x380, 0x0A0 }\n#_1BC4E8: dw $065C : db $06 ; Heart xy:{ 0x2E0, 0x0C0 }\n#_1BC4EB: dw $08F0 : db $01 ; Green rupee xy:{ 0x380, 0x100 }\n#_1BC4EE: dw $09EC : db $06 ; Heart xy:{ 0x360, 0x120 }\n#_1BC4F1: dw $0E4A : db $01 ; Green rupee xy:{ 0x250, 0x1C0 }\n#_1BC4F4: dw $0ED8 : db $01 ; Green rupee xy:{ 0x2C0, 0x1C0 }\n#_1BC4F7: dw $0F5A : db $01 ; Green rupee xy:{ 0x2D0, 0x1E0 }\n#_1BC4FA: dw $0FD8 : db $01 ; Green rupee xy:{ 0x2C0, 0x1E0 }\n#_1BC4FD: dw $10B4 : db $03 ; Bee xy:{ 0x1A0, 0x200 }\n#_1BC500: dw $169C : db $04 ; Random pack xy:{ 0x0E0, 0x2C0 }\n#_1BC503: dw $16A0 : db $01 ; Green rupee xy:{ 0x100, 0x2C0 }\n#_1BC506: dw $16A2 : db $01 ; Green rupee xy:{ 0x110, 0x2C0 }\n#_1BC509: dw $1C88 : db $01 ; Green rupee xy:{ 0x040, 0x380 }\n#_1BC50C: dw $1D92 : db $04 ; Random pack xy:{ 0x090, 0x3A0 }\n#_1BC50F: dw $10D4 : db $01 ; Green rupee xy:{ 0x2A0, 0x200 }\n#_1BC512: dw $1554 : db $01 ; Green rupee xy:{ 0x2A0, 0x2A0 }\n#_1BC515: dw $15DA : db $01 ; Green rupee xy:{ 0x2D0, 0x2A0 }\n#_1BC518: dw $15DE : db $01 ; Green rupee xy:{ 0x2F0, 0x2A0 }\n#_1BC51B: dw $1652 : db $01 ; Green rupee xy:{ 0x290, 0x2C0 }\n#_1BC51E: dw $1666 : db $01 ; Green rupee xy:{ 0x330, 0x2C0 }\n#_1BC521: dw $1D70 : db $05 ; Bomb xy:{ 0x380, 0x3A0 }\n#_1BC524: dw $1DDA : db $04 ; Random pack xy:{ 0x2D0, 0x3A0 }\n#_1BC527: dw $1DE0 : db $06 ; Heart xy:{ 0x300, 0x3A0 }\n#_1BC52A: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_1D", + "code": "OverworldData_HiddenItems_Screen_1D:\n#_1BC52C: dw $0230 : db $01 ; Green rupee xy:{ 0x180, 0x040 }\n#_1BC52F: dw $0234 : db $05 ; Bomb xy:{ 0x1A0, 0x040 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_1E", + "code": "OverworldData_HiddenItems_Screen_1E:\n#_1BC532: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_22", + "code": "OverworldData_HiddenItems_Screen_22:\n#_1BC534: dw $0428 : db $05 ; Bomb xy:{ 0x140, 0x080 }\n#_1BC537: dw $0B0E : db $01 ; Green rupee xy:{ 0x070, 0x160 }\n#_1BC53A: dw $0B10 : db $01 ; Green rupee xy:{ 0x080, 0x160 }\n#_1BC53D: dw $0B16 : db $01 ; Green rupee xy:{ 0x0B0, 0x160 }\n#_1BC540: dw $0C16 : db $04 ; Random pack xy:{ 0x0B0, 0x180 }\n#_1BC543: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_25", + "code": "OverworldData_HiddenItems_Screen_25:\n#_1BC545: dw $0908 : db $06 ; Heart xy:{ 0x040, 0x120 }\n#_1BC548: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_28", + "code": "OverworldData_HiddenItems_Screen_28:\n#_1BC54A: dw $072A : db $04 ; Random pack xy:{ 0x150, 0x0E0 }\n#_1BC54D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_29", + "code": "OverworldData_HiddenItems_Screen_29:\n#_1BC54F: dw $0308 : db $01 ; Green rupee xy:{ 0x040, 0x060 }\n#_1BC552: dw $0728 : db $03 ; Bee xy:{ 0x140, 0x0E0 }\n#_1BC555: dw $0808 : db $04 ; Random pack xy:{ 0x040, 0x100 }\n#_1BC558: dw $0926 : db $04 ; Random pack xy:{ 0x130, 0x120 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2A", + "code": "OverworldData_HiddenItems_Screen_2A:\n#_1BC55B: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2B", + "code": "OverworldData_HiddenItems_Screen_2B:\n#_1BC55D: dw $031E : db $01 ; Green rupee xy:{ 0x0F0, 0x060 }\n#_1BC560: dw $0330 : db $84 ; Staircase xy:{ 0x180, 0x060 }\n#_1BC563: dw $0C10 : db $01 ; Green rupee xy:{ 0x080, 0x180 }\n#_1BC566: dw $0C18 : db $04 ; Random pack xy:{ 0x0C0, 0x180 }\n#_1BC569: dw $0C1A : db $06 ; Heart xy:{ 0x0D0, 0x180 }\n#_1BC56C: dw $0C8E : db $01 ; Green rupee xy:{ 0x070, 0x180 }\n#_1BC56F: dw $0C96 : db $01 ; Green rupee xy:{ 0x0B0, 0x180 }\n#_1BC572: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2C", + "code": "OverworldData_HiddenItems_Screen_2C:\n#_1BC574: dw $0214 : db $01 ; Green rupee xy:{ 0x0A0, 0x040 }\n#_1BC577: dw $089E : db $01 ; Green rupee xy:{ 0x0F0, 0x100 }\n#_1BC57A: dw $0890 : db $01 ; Green rupee xy:{ 0x080, 0x100 }\n#_1BC57D: dw $0906 : db $01 ; Green rupee xy:{ 0x030, 0x120 }\n#_1BC580: dw $0984 : db $04 ; Random pack xy:{ 0x020, 0x120 }\n#_1BC583: dw $0A1C : db $05 ; Bomb xy:{ 0x0E0, 0x140 }\n#_1BC586: dw $0AB4 : db $06 ; Heart xy:{ 0x1A0, 0x140 }\n#_1BC589: dw $0BB6 : db $01 ; Green rupee xy:{ 0x1B0, 0x160 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2D", + "code": "OverworldData_HiddenItems_Screen_2D:", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2E", + "code": "OverworldData_HiddenItems_Screen_2E:\n#_1BC58C: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_2F", + "code": "OverworldData_HiddenItems_Screen_2F:\n#_1BC58E: dw $0BB2 : db $82 ; Warp xy:{ 0x190, 0x160 }\n#_1BC591: dw $0D12 : db $05 ; Bomb xy:{ 0x090, 0x1A0 }\n#_1BC594: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_30", + "code": "OverworldData_HiddenItems_Screen_30:\n#_1BC596: dw $0358 : db $84 ; Staircase xy:{ 0x2C0, 0x060 }\n#_1BC599: dw $0A50 : db $04 ; Random pack xy:{ 0x280, 0x140 }\n#_1BC59C: dw $1406 : db $06 ; Heart xy:{ 0x030, 0x280 }\n#_1BC59F: dw $1D94 : db $82 ; Warp xy:{ 0x0A0, 0x3A0 }\n#_1BC5A2: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_32", + "code": "OverworldData_HiddenItems_Screen_32:\n#_1BC5A4: dw $051E : db $05 ; Bomb xy:{ 0x0F0, 0x0A0 }\n#_1BC5A7: dw $052A : db $04 ; Random pack xy:{ 0x150, 0x0A0 }\n#_1BC5AA: dw $059C : db $05 ; Bomb xy:{ 0x0E0, 0x0A0 }\n#_1BC5AD: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_33", + "code": "OverworldData_HiddenItems_Screen_33:\n#_1BC5AF: dw $02A8 : db $82 ; Warp xy:{ 0x140, 0x040 }\n#_1BC5B2: dw $0B14 : db $02 ; Hoarder xy:{ 0x0A0, 0x160 }\n#_1BC5B5: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_34", + "code": "OverworldData_HiddenItems_Screen_34:\n#_1BC5B7: dw $03B0 : db $86 ; Bomb door xy:{ 0x180, 0x060 }\n#_1BC5BA: dw $048C : db $04 ; Random pack xy:{ 0x060, 0x080 }\n#_1BC5BD: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_35", + "code": "OverworldData_HiddenItems_Screen_35:\n#_1BC5BF: dw $0A30 : db $04 ; Random pack xy:{ 0x180, 0x140 }\n#_1BC5C2: dw $0C10 : db $06 ; Heart xy:{ 0x080, 0x180 }\n#_1BC5C5: dw $0F56 : db $82 ; Warp xy:{ 0x2B0, 0x1E0 }\n#_1BC5C8: dw $180C : db $86 ; Bomb door xy:{ 0x060, 0x300 }\n#_1BC5CB: dw $1CDE : db $03 ; Bee xy:{ 0x2F0, 0x380 }\n#_1BC5CE: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_37", + "code": "OverworldData_HiddenItems_Screen_37:\n#_1BC5D0: dw $0288 : db $86 ; Bomb door xy:{ 0x040, 0x040 }\n#_1BC5D3: dw $03AA : db $05 ; Bomb xy:{ 0x150, 0x060 }\n#_1BC5D6: dw $040C : db $84 ; Staircase xy:{ 0x060, 0x080 }\n#_1BC5D9: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_3A", + "code": "OverworldData_HiddenItems_Screen_3A:\n#_1BC5DB: dw $081E : db $02 ; Hoarder xy:{ 0x0F0, 0x100 }\n#_1BC5DE: dw $09AC : db $06 ; Heart xy:{ 0x160, 0x120 }\n#_1BC5E1: dw $0A1E : db $84 ; Staircase xy:{ 0x0F0, 0x140 }\n#_1BC5E4: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_3B", + "code": "OverworldData_HiddenItems_Screen_3B:\n#_1BC5E6: dw $061A : db $03 ; Bee xy:{ 0x0D0, 0x0C0 }\n#_1BC5E9: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_3C", + "code": "OverworldData_HiddenItems_Screen_3C:\n#_1BC5EB: dw $0696 : db $03 ; Bee xy:{ 0x0B0, 0x0C0 }\n#_1BC5EE: dw $0710 : db $04 ; Random pack xy:{ 0x080, 0x0E0 }\n#_1BC5F1: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_3F", + "code": "OverworldData_HiddenItems_Screen_3F:\n#_1BC5F3: dw $0C28 : db $04 ; Random pack xy:{ 0x140, 0x180 }\n#_1BC5F6: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_40", + "code": "OverworldData_HiddenItems_Screen_40:\n#_1BC5F8: dw $0338 : db $04 ; Random pack xy:{ 0x1C0, 0x060 }\n#_1BC5FB: dw $036A : db $01 ; Green rupee xy:{ 0x350, 0x060 }\n#_1BC5FE: dw $0570 : db $03 ; Bee xy:{ 0x380, 0x0A0 }\n#_1BC601: dw $05F2 : db $04 ; Random pack xy:{ 0x390, 0x0A0 }\n#_1BC604: dw $1914 : db $03 ; Bee xy:{ 0x0A0, 0x320 }\n#_1BC607: dw $1D38 : db $06 ; Heart xy:{ 0x1C0, 0x3A0 }\n#_1BC60A: dw $1DBC : db $05 ; Bomb xy:{ 0x1E0, 0x3A0 }\n#_1BC60D: dw $105E : db $04 ; Random pack xy:{ 0x2F0, 0x200 }\n#_1BC610: dw $10E0 : db $80 ; Hole xy:{ 0x300, 0x200 }\n#_1BC613: dw $1162 : db $01 ; Green rupee xy:{ 0x310, 0x220 }\n#_1BC616: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_42", + "code": "OverworldData_HiddenItems_Screen_42:\n#_1BC618: dw $04AC : db $01 ; Green rupee xy:{ 0x160, 0x080 }\n#_1BC61B: dw $05B4 : db $01 ; Green rupee xy:{ 0x1A0, 0x0A0 }\n#_1BC61E: dw $090A : db $03 ; Bee xy:{ 0x050, 0x120 }\n#_1BC621: dw $0D98 : db $01 ; Green rupee xy:{ 0x0C0, 0x1A0 }\n#_1BC624: dw $0DA4 : db $01 ; Green rupee xy:{ 0x120, 0x1A0 }\n#_1BC627: dw $0E1E : db $01 ; Green rupee xy:{ 0x0F0, 0x1C0 }\n#_1BC62A: dw $0EA8 : db $01 ; Green rupee xy:{ 0x140, 0x1C0 }\n#_1BC62D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_43", + "code": "OverworldData_HiddenItems_Screen_43:\n#_1BC62F: dw $0A60 : db $04 ; Random pack xy:{ 0x300, 0x140 }\n#_1BC632: dw $0BDA : db $04 ; Random pack xy:{ 0x2D0, 0x160 }\n#_1BC635: dw $0BE6 : db $04 ; Random pack xy:{ 0x330, 0x160 }\n#_1BC638: dw $0D60 : db $04 ; Random pack xy:{ 0x300, 0x1A0 }\n#_1BC63B: dw $1920 : db $01 ; Green rupee xy:{ 0x100, 0x320 }\n#_1BC63E: dw $1A04 : db $04 ; Random pack xy:{ 0x020, 0x340 }\n#_1BC641: dw $17EE : db $06 ; Heart xy:{ 0x370, 0x2E0 }\n#_1BC644: dw $1968 : db $06 ; Heart xy:{ 0x340, 0x320 }\n#_1BC647: dw $1974 : db $06 ; Heart xy:{ 0x3A0, 0x320 }\n#_1BC64A: dw $1AEE : db $06 ; Heart xy:{ 0x370, 0x340 }\n#_1BC64D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_45", + "code": "OverworldData_HiddenItems_Screen_45:\n#_1BC64F: dw $0868 : db $84 ; Staircase xy:{ 0x340, 0x100 }\n#_1BC652: dw $13D8 : db $05 ; Bomb xy:{ 0x2C0, 0x260 }\n#_1BC655: dw $145A : db $05 ; Bomb xy:{ 0x2D0, 0x280 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_47", + "code": "OverworldData_HiddenItems_Screen_47:", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_4A", + "code": "OverworldData_HiddenItems_Screen_4A:\n#_1BC658: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_4F", + "code": "OverworldData_HiddenItems_Screen_4F:\n#_1BC65A: dw $06AE : db $05 ; Bomb xy:{ 0x170, 0x0C0 }\n#_1BC65D: dw $06B4 : db $05 ; Bomb xy:{ 0x1A0, 0x0C0 }\n#_1BC660: dw $0832 : db $06 ; Heart xy:{ 0x190, 0x100 }\n#_1BC663: dw $0A32 : db $06 ; Heart xy:{ 0x190, 0x140 }\n#_1BC666: dw $0B1C : db $06 ; Heart xy:{ 0x0E0, 0x160 }\n#_1BC669: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_50", + "code": "OverworldData_HiddenItems_Screen_50:\n#_1BC66B: dw $040C : db $01 ; Green rupee xy:{ 0x060, 0x080 }\n#_1BC66E: dw $0792 : db $01 ; Green rupee xy:{ 0x090, 0x0E0 }\n#_1BC671: dw $0798 : db $04 ; Random pack xy:{ 0x0C0, 0x0E0 }\n#_1BC674: dw $079E : db $04 ; Random pack xy:{ 0x0F0, 0x0E0 }\n#_1BC677: dw $07A4 : db $01 ; Green rupee xy:{ 0x120, 0x0E0 }\n#_1BC67A: dw $0A34 : db $01 ; Green rupee xy:{ 0x1A0, 0x140 }\n#_1BC67D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_51", + "code": "OverworldData_HiddenItems_Screen_51:\n#_1BC67F: dw $0716 : db $03 ; Bee xy:{ 0x0B0, 0x0E0 }\n#_1BC682: dw $092A : db $01 ; Green rupee xy:{ 0x150, 0x120 }\n#_1BC685: dw $0A34 : db $05 ; Bomb xy:{ 0x1A0, 0x140 }\n#_1BC688: dw $0AA4 : db $01 ; Green rupee xy:{ 0x120, 0x140 }\n#_1BC68B: dw $0B98 : db $01 ; Green rupee xy:{ 0x0C0, 0x160 }\n#_1BC68E: dw $0C1A : db $01 ; Green rupee xy:{ 0x0D0, 0x180 }\n#_1BC691: dw $0D18 : db $01 ; Green rupee xy:{ 0x0C0, 0x1A0 }\n#_1BC694: dw $0D8E : db $04 ; Random pack xy:{ 0x070, 0x1A0 }\n#_1BC697: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_52", + "code": "OverworldData_HiddenItems_Screen_52:\n#_1BC699: dw $04B2 : db $06 ; Heart xy:{ 0x190, 0x080 }\n#_1BC69C: dw $0530 : db $06 ; Heart xy:{ 0x180, 0x0A0 }\n#_1BC69F: dw $05AE : db $06 ; Heart xy:{ 0x170, 0x0A0 }\n#_1BC6A2: dw $0788 : db $01 ; Green rupee xy:{ 0x040, 0x0E0 }\n#_1BC6A5: dw $0808 : db $01 ; Green rupee xy:{ 0x040, 0x100 }\n#_1BC6A8: dw $0888 : db $01 ; Green rupee xy:{ 0x040, 0x100 }\n#_1BC6AB: dw $09B2 : db $04 ; Random pack xy:{ 0x190, 0x120 }\n#_1BC6AE: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_53", + "code": "OverworldData_HiddenItems_Screen_53:\n#_1BC6B0: dw $0584 : db $05 ; Bomb xy:{ 0x020, 0x0A0 }\n#_1BC6B3: dw $05B8 : db $04 ; Random pack xy:{ 0x1C0, 0x0A0 }\n#_1BC6B6: dw $0606 : db $05 ; Bomb xy:{ 0x030, 0x0C0 }\n#_1BC6B9: dw $0688 : db $05 ; Bomb xy:{ 0x040, 0x0C0 }\n#_1BC6BC: dw $070A : db $05 ; Bomb xy:{ 0x050, 0x0E0 }\n#_1BC6BF: dw $078C : db $05 ; Bomb xy:{ 0x060, 0x0E0 }\n#_1BC6C2: dw $07A0 : db $01 ; Green rupee xy:{ 0x100, 0x0E0 }\n#_1BC6C5: dw $07B6 : db $03 ; Bee xy:{ 0x1B0, 0x0E0 }\n#_1BC6C8: dw $0822 : db $01 ; Green rupee xy:{ 0x110, 0x100 }\n#_1BC6CB: dw $082E : db $01 ; Green rupee xy:{ 0x170, 0x100 }\n#_1BC6CE: dw $08A6 : db $01 ; Green rupee xy:{ 0x130, 0x100 }\n#_1BC6D1: dw $08B0 : db $01 ; Green rupee xy:{ 0x180, 0x100 }\n#_1BC6D4: dw $0920 : db $04 ; Random pack xy:{ 0x100, 0x120 }\n#_1BC6D7: dw $0928 : db $01 ; Green rupee xy:{ 0x140, 0x120 }\n#_1BC6DA: dw $0934 : db $01 ; Green rupee xy:{ 0x1A0, 0x120 }\n#_1BC6DD: dw $09B6 : db $01 ; Green rupee xy:{ 0x1B0, 0x120 }\n#_1BC6E0: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_54", + "code": "OverworldData_HiddenItems_Screen_54:\n#_1BC6E2: dw $0490 : db $04 ; Random pack xy:{ 0x080, 0x080 }\n#_1BC6E5: dw $0492 : db $04 ; Random pack xy:{ 0x090, 0x080 }\n#_1BC6E8: dw $05AE : db $01 ; Green rupee xy:{ 0x170, 0x0A0 }\n#_1BC6EB: dw $07B8 : db $03 ; Bee xy:{ 0x1C0, 0x0E0 }\n#_1BC6EE: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_55", + "code": "OverworldData_HiddenItems_Screen_55:\n#_1BC6F0: dw $038A : db $05 ; Bomb xy:{ 0x050, 0x060 }\n#_1BC6F3: dw $0788 : db $04 ; Random pack xy:{ 0x040, 0x0E0 }\n#_1BC6F6: dw $FFFF\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_56", + "code": "OverworldData_HiddenItems_Screen_56:\n#_1BC6F8: dw $079C : db $04 ; Random pack xy:{ 0x0E0, 0x0E0 }\n#_1BC6FB: dw $08A6 : db $01 ; Green rupee xy:{ 0x130, 0x100 }\n#_1BC6FE: dw $0926 : db $01 ; Green rupee xy:{ 0x130, 0x120 }\n#_1BC701: dw $09A6 : db $01 ; Green rupee xy:{ 0x130, 0x120 }\n#_1BC704: dw $0A26 : db $01 ; Green rupee xy:{ 0x130, 0x140 }\n#_1BC707: dw $0C98 : db $01 ; Green rupee xy:{ 0x0C0, 0x180 }\n#_1BC70A: dw $0D1A : db $01 ; Green rupee xy:{ 0x0D0, 0x1A0 }\n#_1BC70D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_57", + "code": "OverworldData_HiddenItems_Screen_57:\n#_1BC70F: dw $0E1C : db $06 ; Heart xy:{ 0x0E0, 0x1C0 }\n#_1BC712: dw $0E20 : db $06 ; Heart xy:{ 0x100, 0x1C0 }\n#_1BC715: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_58", + "code": "OverworldData_HiddenItems_Screen_58:\n#_1BC717: dw $049A : db $04 ; Random pack xy:{ 0x0D0, 0x080 }\n#_1BC71A: dw $0C96 : db $03 ; Bee xy:{ 0x0B0, 0x180 }\n#_1BC71D: dw $0654 : db $01 ; Green rupee xy:{ 0x2A0, 0x0C0 }\n#_1BC720: dw $0656 : db $01 ; Green rupee xy:{ 0x2B0, 0x0C0 }\n#_1BC723: dw $0AF8 : db $04 ; Random pack xy:{ 0x3C0, 0x140 }\n#_1BC726: dw $0AFA : db $04 ; Random pack xy:{ 0x3D0, 0x140 }\n#_1BC729: dw $0CD6 : db $01 ; Green rupee xy:{ 0x2B0, 0x180 }\n#_1BC72C: dw $0E64 : db $01 ; Green rupee xy:{ 0x320, 0x1C0 }\n#_1BC72F: dw $0F66 : db $01 ; Green rupee xy:{ 0x330, 0x1E0 }\n#_1BC732: dw $1092 : db $01 ; Green rupee xy:{ 0x090, 0x200 }\n#_1BC735: dw $10A0 : db $04 ; Random pack xy:{ 0x100, 0x200 }\n#_1BC738: dw $1114 : db $01 ; Green rupee xy:{ 0x0A0, 0x220 }\n#_1BC73B: dw $1212 : db $01 ; Green rupee xy:{ 0x090, 0x240 }\n#_1BC73E: dw $121E : db $04 ; Random pack xy:{ 0x0F0, 0x240 }\n#_1BC741: dw $1296 : db $01 ; Green rupee xy:{ 0x0B0, 0x240 }\n#_1BC744: dw $199C : db $04 ; Random pack xy:{ 0x0E0, 0x320 }\n#_1BC747: dw $1A14 : db $04 ; Random pack xy:{ 0x0A0, 0x340 }\n#_1BC74A: dw $1A98 : db $04 ; Random pack xy:{ 0x0C0, 0x340 }\n#_1BC74D: dw $1B1E : db $04 ; Random pack xy:{ 0x0F0, 0x360 }\n#_1BC750: dw $1C34 : db $05 ; Bomb xy:{ 0x1A0, 0x380 }\n#_1BC753: dw $1CA6 : db $05 ; Bomb xy:{ 0x130, 0x380 }\n#_1BC756: dw $1AB6 : db $86 ; Bomb door xy:{ 0x1B0, 0x340 }\n#_1BC759: dw $14EC : db $01 ; Green rupee xy:{ 0x360, 0x280 }\n#_1BC75C: dw $15E2 : db $01 ; Green rupee xy:{ 0x310, 0x2A0 }\n#_1BC75F: dw $1A4A : db $04 ; Random pack xy:{ 0x250, 0x340 }\n#_1BC762: dw $1B48 : db $03 ; Bee xy:{ 0x240, 0x360 }\n#_1BC765: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_5A", + "code": "OverworldData_HiddenItems_Screen_5A:\n#_1BC767: dw $041A : db $06 ; Heart xy:{ 0x0D0, 0x080 }\n#_1BC76A: dw $08B4 : db $01 ; Green rupee xy:{ 0x1A0, 0x100 }\n#_1BC76D: dw $0A32 : db $01 ; Green rupee xy:{ 0x190, 0x140 }\n#_1BC770: dw $0B32 : db $01 ; Green rupee xy:{ 0x190, 0x160 }\n#_1BC773: dw $0C22 : db $01 ; Green rupee xy:{ 0x110, 0x180 }\n#_1BC776: dw $0C26 : db $01 ; Green rupee xy:{ 0x130, 0x180 }\n#_1BC779: dw $0C2C : db $01 ; Green rupee xy:{ 0x160, 0x180 }\n#_1BC77C: dw $0C30 : db $01 ; Green rupee xy:{ 0x180, 0x180 }\n#_1BC77F: dw $0C8E : db $05 ; Bomb xy:{ 0x070, 0x180 }\n#_1BC782: dw $0CB4 : db $01 ; Green rupee xy:{ 0x1A0, 0x180 }\n#_1BC785: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_5B", + "code": "OverworldData_HiddenItems_Screen_5B:\n#_1BC787: dw $0E2E : db $86 ; Bomb door xy:{ 0x170, 0x1C0 }\n#_1BC78A: dw $1C88 : db $04 ; Random pack xy:{ 0x040, 0x380 }\n#_1BC78D: dw $1E0E : db $01 ; Green rupee xy:{ 0x070, 0x3C0 }\n#_1BC790: dw $1E12 : db $01 ; Green rupee xy:{ 0x090, 0x3C0 }\n#_1BC793: dw $1DDA : db $01 ; Green rupee xy:{ 0x2D0, 0x3A0 }\n#_1BC796: dw $1E60 : db $01 ; Green rupee xy:{ 0x300, 0x3C0 }\n#_1BC799: dw $1E72 : db $03 ; Bee xy:{ 0x390, 0x3C0 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_5D", + "code": "OverworldData_HiddenItems_Screen_5D:", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_5E", + "code": "OverworldData_HiddenItems_Screen_5E:\n#_1BC79C: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_62", + "code": "OverworldData_HiddenItems_Screen_62:\n#_1BC79E: dw $0428 : db $04 ; Random pack xy:{ 0x140, 0x080 }\n#_1BC7A1: dw $0B92 : db $01 ; Green rupee xy:{ 0x090, 0x160 }\n#_1BC7A4: dw $0C92 : db $01 ; Green rupee xy:{ 0x090, 0x180 }\n#_1BC7A7: dw $0C96 : db $01 ; Green rupee xy:{ 0x0B0, 0x180 }\n#_1BC7AA: dw $0D92 : db $01 ; Green rupee xy:{ 0x090, 0x1A0 }\n#_1BC7AD: dw $0E10 : db $01 ; Green rupee xy:{ 0x080, 0x1C0 }\n#_1BC7B0: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_65", + "code": "OverworldData_HiddenItems_Screen_65:\n#_1BC7B2: dw $0908 : db $06 ; Heart xy:{ 0x040, 0x120 }\n#_1BC7B5: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_68", + "code": "OverworldData_HiddenItems_Screen_68:\n#_1BC7B7: dw $0420 : db $01 ; Green rupee xy:{ 0x100, 0x080 }\n#_1BC7BA: dw $0428 : db $01 ; Green rupee xy:{ 0x140, 0x080 }\n#_1BC7BD: dw $0920 : db $03 ; Bee xy:{ 0x100, 0x120 }\n#_1BC7C0: dw $0AB2 : db $04 ; Random pack xy:{ 0x190, 0x140 }\n#_1BC7C3: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_69", + "code": "OverworldData_HiddenItems_Screen_69:\n#_1BC7C5: dw $0408 : db $01 ; Green rupee xy:{ 0x040, 0x080 }\n#_1BC7C8: dw $040C : db $01 ; Green rupee xy:{ 0x060, 0x080 }\n#_1BC7CB: dw $0728 : db $04 ; Random pack xy:{ 0x140, 0x0E0 }\n#_1BC7CE: dw $0926 : db $01 ; Green rupee xy:{ 0x130, 0x120 }\n#_1BC7D1: dw $09A4 : db $01 ; Green rupee xy:{ 0x120, 0x120 }\n#_1BC7D4: dw $09A6 : db $01 ; Green rupee xy:{ 0x130, 0x120 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6A", + "code": "OverworldData_HiddenItems_Screen_6A:\n#_1BC7D7: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6B", + "code": "OverworldData_HiddenItems_Screen_6B:\n#_1BC7D9: dw $0320 : db $04 ; Random pack xy:{ 0x100, 0x060 }\n#_1BC7DC: dw $0330 : db $84 ; Staircase xy:{ 0x180, 0x060 }\n#_1BC7DF: dw $0C0E : db $01 ; Green rupee xy:{ 0x070, 0x180 }\n#_1BC7E2: dw $0C12 : db $01 ; Green rupee xy:{ 0x090, 0x180 }\n#_1BC7E5: dw $0C96 : db $01 ; Green rupee xy:{ 0x0B0, 0x180 }\n#_1BC7E8: dw $0C9A : db $01 ; Green rupee xy:{ 0x0D0, 0x180 }\n#_1BC7EB: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6C", + "code": "OverworldData_HiddenItems_Screen_6C:\n#_1BC7ED: dw $0226 : db $01 ; Green rupee xy:{ 0x130, 0x040 }\n#_1BC7F0: dw $0890 : db $01 ; Green rupee xy:{ 0x080, 0x100 }\n#_1BC7F3: dw $089C : db $01 ; Green rupee xy:{ 0x0E0, 0x100 }\n#_1BC7F6: dw $0906 : db $01 ; Green rupee xy:{ 0x030, 0x120 }\n#_1BC7F9: dw $0912 : db $01 ; Green rupee xy:{ 0x090, 0x120 }\n#_1BC7FC: dw $091E : db $01 ; Green rupee xy:{ 0x0F0, 0x120 }\n#_1BC7FF: dw $0984 : db $04 ; Random pack xy:{ 0x020, 0x120 }\n#_1BC802: dw $0AB4 : db $04 ; Random pack xy:{ 0x1A0, 0x140 }\n#_1BC805: dw $0B36 : db $04 ; Random pack xy:{ 0x1B0, 0x160 }\n#_1BC808: dw $0BB8 : db $04 ; Random pack xy:{ 0x1C0, 0x160 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6D", + "code": "OverworldData_HiddenItems_Screen_6D:", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6E", + "code": "OverworldData_HiddenItems_Screen_6E:\n#_1BC80B: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_6F", + "code": "OverworldData_HiddenItems_Screen_6F:\n#_1BC80D: dw $0B24 : db $05 ; Bomb xy:{ 0x120, 0x160 }\n#_1BC810: dw $0B8C : db $05 ; Bomb xy:{ 0x060, 0x160 }\n#_1BC813: dw $0B96 : db $05 ; Bomb xy:{ 0x0B0, 0x160 }\n#_1BC816: dw $0D12 : db $05 ; Bomb xy:{ 0x090, 0x1A0 }\n#_1BC819: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_70", + "code": "OverworldData_HiddenItems_Screen_70:\n#_1BC81B: dw $1406 : db $06 ; Heart xy:{ 0x030, 0x280 }\n#_1BC81E: dw $1486 : db $06 ; Heart xy:{ 0x030, 0x280 }\n#_1BC821: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_72", + "code": "OverworldData_HiddenItems_Screen_72:\n#_1BC823: dw $051C : db $04 ; Random pack xy:{ 0x0E0, 0x0A0 }\n#_1BC826: dw $051E : db $04 ; Random pack xy:{ 0x0F0, 0x0A0 }\n#_1BC829: dw $059C : db $04 ; Random pack xy:{ 0x0E0, 0x0A0 }\n#_1BC82C: dw $059E : db $04 ; Random pack xy:{ 0x0F0, 0x0A0 }\n#_1BC82F: dw $0626 : db $03 ; Bee xy:{ 0x130, 0x0C0 }\n#_1BC832: dw $0A8C : db $01 ; Green rupee xy:{ 0x060, 0x140 }\n#_1BC835: dw $0B90 : db $01 ; Green rupee xy:{ 0x080, 0x160 }\n#_1BC838: dw $0C08 : db $01 ; Green rupee xy:{ 0x040, 0x180 }\n#_1BC83B: dw $0D0C : db $01 ; Green rupee xy:{ 0x060, 0x1A0 }\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_73", + "code": "OverworldData_HiddenItems_Screen_73:\n#_1BC83E: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_74", + "code": "OverworldData_HiddenItems_Screen_74:\n#_1BC840: dw $03B0 : db $86 ; Bomb door xy:{ 0x180, 0x060 }\n#_1BC843: dw $040C : db $01 ; Green rupee xy:{ 0x060, 0x080 }\n#_1BC846: dw $0590 : db $01 ; Green rupee xy:{ 0x080, 0x0A0 }\n#_1BC849: dw $0614 : db $01 ; Green rupee xy:{ 0x0A0, 0x0C0 }\n#_1BC84C: dw $0728 : db $06 ; Heart xy:{ 0x140, 0x0E0 }\n#_1BC84F: dw $090A : db $01 ; Green rupee xy:{ 0x050, 0x120 }\n#_1BC852: dw $0D9E : db $04 ; Random pack xy:{ 0x0F0, 0x1A0 }\n#_1BC855: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_75", + "code": "OverworldData_HiddenItems_Screen_75:\n#_1BC857: dw $0298 : db $06 ; Heart xy:{ 0x0C0, 0x040 }\n#_1BC85A: dw $0C10 : db $04 ; Random pack xy:{ 0x080, 0x180 }\n#_1BC85D: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_77", + "code": "OverworldData_HiddenItems_Screen_77:\n#_1BC85F: dw $0288 : db $86 ; Bomb door xy:{ 0x040, 0x040 }\n#_1BC862: dw $03AA : db $06 ; Heart xy:{ 0x150, 0x060 }\n#_1BC865: dw $040C : db $84 ; Staircase xy:{ 0x060, 0x080 }\n#_1BC868: dw $0518 : db $05 ; Bomb xy:{ 0x0C0, 0x0A0 }\n#_1BC86B: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_7A", + "code": "OverworldData_HiddenItems_Screen_7A:\n#_1BC86D: dw $0526 : db $05 ; Bomb xy:{ 0x130, 0x0A0 }\n#_1BC870: dw $052A : db $05 ; Bomb xy:{ 0x150, 0x0A0 }\n#_1BC873: dw $052E : db $05 ; Bomb xy:{ 0x170, 0x0A0 }\n#_1BC876: dw $09AC : db $06 ; Heart xy:{ 0x160, 0x120 }\n#_1BC879: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_7B", + "code": "OverworldData_HiddenItems_Screen_7B:\n#_1BC87B: dw $0420 : db $06 ; Heart xy:{ 0x100, 0x080 }\n#_1BC87E: dw $061A : db $04 ; Random pack xy:{ 0x0D0, 0x0C0 }\n#_1BC881: dw $0696 : db $04 ; Random pack xy:{ 0x0B0, 0x0C0 }\n#_1BC884: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_7C", + "code": "OverworldData_HiddenItems_Screen_7C:\n#_1BC886: dw $02A8 : db $05 ; Bomb xy:{ 0x140, 0x040 }\n#_1BC889: dw $0316 : db $06 ; Heart xy:{ 0x0B0, 0x060 }\n#_1BC88C: dw $0698 : db $06 ; Heart xy:{ 0x0C0, 0x0C0 }\n#_1BC88F: dw $0714 : db $04 ; Random pack xy:{ 0x0A0, 0x0E0 }\n#_1BC892: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldData_HiddenItems_Screen_7F", + "code": "OverworldData_HiddenItems_Screen_7F:\n#_1BC894: dw $02AE : db $04 ; Random pack xy:{ 0x170, 0x040 }\n#_1BC897: dw $0C28 : db $04 ; Random pack xy:{ 0x140, 0x180 }\n#_1BC89A: dw $FFFF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_SecretTileType", + "code": "Overworld_SecretTileType:\n#_1BC89C: dw $0DCC ; hole\n#_1BC89E: dw $0212 ; portal\n#_1BC8A0: dw $FFFF ; garbage\n#_1BC8A2: dw $0DB4 ; bomb hole\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_RevealSecret", + "code": "Overworld_RevealSecret:\n#_1BC8A4: STX.b $04\n\n#_1BC8A6: LDA.w $0B9C\n#_1BC8A9: AND.w #$FF00\n#_1BC8AC: STA.w $0B9C\n\n#_1BC8AF: LDA.b $8A\n#_1BC8B1: CMP.w #$0080 ; SPOW\n#_1BC8B4: BCS .fail\n\n#_1BC8B6: ASL A\n#_1BC8B7: TAX\n\n#_1BC8B8: LDA.l OverworldData_HiddenItems,X\n#_1BC8BC: STA.b $00\n\n#_1BC8BE: LDA.w #OverworldData_HiddenItems>>16\n#_1BC8C1: STA.b $02\n\n#_1BC8C3: LDY.w #-3\n\n.next_check\n#_1BC8C6: INY\n#_1BC8C7: INY\n#_1BC8C8: INY\n\n#_1BC8C9: LDA.b [$00],Y\n\n#_1BC8CB: CMP.w #$FFFF\n#_1BC8CE: BEQ .fail\n\n#_1BC8D0: AND.w #$7FFF\n#_1BC8D3: CMP.b $04\n#_1BC8D5: BNE .next_check\n\n#_1BC8D7: INY\n#_1BC8D8: INY\n\n#_1BC8D9: LDA.b [$00],Y\n#_1BC8DB: AND.w #$00FF\n#_1BC8DE: BEQ .dont_set_secret_id\n\n#_1BC8E0: CMP.w #$0080\n#_1BC8E3: BCS .dont_set_secret_id\n\n#_1BC8E5: TSB.w $0B9C\n\n.dont_set_secret_id\n#_1BC8E8: AND.w #$00FF\n#_1BC8EB: CMP.w #$0080\n#_1BC8EE: BCC .item_secret\n\n#_1BC8F0: PHA\n\n#_1BC8F1: LDA.w $0B9C\n#_1BC8F4: ORA.w #$00FF\n#_1BC8F7: STA.w $0B9C\n\n#_1BC8FA: PLA\n#_1BC8FB: CMP.w #$0084\n#_1BC8FE: BEQ .not_stairs\n\n#_1BC900: LDX.b $8A\n#_1BC902: LDA.l $7EF280,X\n#_1BC906: AND.w #$0002\n#_1BC909: BNE .not_stairs\n\n#_1BC90B: LDA.b $8A\n#_1BC90D: CMP.w #$005B ; OW 5B\n#_1BC910: BNE .not_pyramid_screen\n\n#_1BC912: LDA.l $7EF3CC\n#_1BC916: AND.w #$00FF\n#_1BC919: CMP.w #$0D ; FOLLOWER 0D\n#_1BC91C: BNE .fail\n\n.not_pyramid_screen\n#_1BC91E: SEP #$20\n\n#_1BC920: LDA.b #$1B ; SFX3.1B\n#_1BC922: STA.w $012F\n\n#_1BC925: REP #$20\n\n.not_stairs\n#_1BC927: LDA.b [$00],Y\n#_1BC929: AND.w #$000F\n#_1BC92C: TAX\n\n#_1BC92D: LDA.l Overworld_SecretTileType,X\n#_1BC931: STA.b $0E\n\n.fail\n#_1BC933: JSR AdjustSecretForPowder\n#_1BC936: LDX.b $04\n\n#_1BC938: CLC\n\n#_1BC939: RTS", + "file": "bank_1B.asm" + }, + { + "name": "AdjustSecretForPowder", + "code": "AdjustSecretForPowder:\n#_1BC943: LDA.w $0301\n#_1BC946: AND.w #$0040\n#_1BC949: BEQ .not_powder\n\n#_1BC94B: LDA.w #$0004\n#_1BC94E: STA.w $0B9C\n\n.not_powder\n#_1BC951: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_DrawWoodenDoor", + "code": "Overworld_DrawWoodenDoor:\n#_1BC952: BCS .closed\n\n#_1BC954: LDA.w #$0DA4\n#_1BC957: JSL Overworld_DrawMap16_Persist\n\n#_1BC95B: LDA.w #$0DA6\n#_1BC95E: BRA .right_side\n\n.closed\n#_1BC960: LDA.w #$0DA5\n#_1BC963: JSL Overworld_DrawMap16_Persist\n\n#_1BC967: LDA.w #$0DA7\n\n.right_side\n#_1BC96A: STA.l $7E2002,X\n\n#_1BC96E: LDY.w #$0002\n#_1BC971: JSL Overworld_DrawMap16_Anywhere\n\n#_1BC975: SEP #$30\n\n#_1BC977: LDA.b #$01\n#_1BC979: STA.b $14\n\n#_1BC97B: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_DrawMap16_Persist", + "code": "Overworld_DrawMap16_Persist:\n#_1BC97C: STA.l $7E2000,X\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_DrawMap16", + "code": "Overworld_DrawMap16:\n#_1BC980: LDY.w #$0000\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_DrawMap16_Anywhere", + "code": "Overworld_DrawMap16_Anywhere:\n#_1BC983: PHX\n\n#_1BC984: ASL A\n#_1BC985: ASL A\n#_1BC986: ASL A\n\n#_1BC987: STA.b $0C\n#_1BC989: STY.b $00\n\n#_1BC98B: TXA\n#_1BC98C: CLC\n#_1BC98D: ADC.b $00\n#_1BC98F: STA.b $00\n\n#_1BC991: JSR Overworld_FindMap16VRAMAddress\n\n#_1BC994: LDY.w $1000\n\n#_1BC997: LDA.b $02\n#_1BC999: XBA\n#_1BC99A: STA.w $1002,Y\n\n#_1BC99D: LDA.b $02\n#_1BC99F: CLC\n#_1BC9A0: ADC.w #$0020\n#_1BC9A3: XBA\n#_1BC9A4: STA.w $100A,Y\n\n#_1BC9A7: LDA.w #$0300\n#_1BC9AA: STA.w $1004,Y\n#_1BC9AD: STA.w $100C,Y\n\n#_1BC9B0: LDX.b $0C\n\n#_1BC9B2: LDA.l Map16Definitions+0,X\n#_1BC9B6: STA.w $1006,Y\n\n#_1BC9B9: LDA.l Map16Definitions+2,X\n#_1BC9BD: STA.w $1008,Y\n\n#_1BC9C0: LDA.l Map16Definitions+4,X\n#_1BC9C4: STA.w $100E,Y\n\n#_1BC9C7: LDA.l Map16Definitions+6,X\n#_1BC9CB: STA.w $1010,Y\n\n#_1BC9CE: LDA.w #$FFFF\n#_1BC9D1: STA.w $1012,Y\n\n#_1BC9D4: TYA\n#_1BC9D5: CLC\n#_1BC9D6: ADC.w #$0010\n#_1BC9D9: STA.w $1000\n\n#_1BC9DC: PLX\n\n#_1BC9DD: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AlterTileHardcore", + "code": "Overworld_AlterTileHardcore:\n#_1BC9DE: PHA\n\n#_1BC9DF: STA.l $7E2000,X\n\n#_1BC9E3: PHX\n\n#_1BC9E4: ASL A\n#_1BC9E5: ASL A\n#_1BC9E6: ASL A\n#_1BC9E7: STA.b $0C\n\n#_1BC9E9: TXA\n#_1BC9EA: CLC\n#_1BC9EB: ADC.w #$0000\n#_1BC9EE: STA.b $00\n\n#_1BC9F0: STZ.b $02\n\n#_1BC9F2: AND.w #$003F\n#_1BC9F5: CMP.w #$0020\n#_1BC9F8: BCC .dont_adjust_vadd\n\n#_1BC9FA: LDA.w #$0400\n#_1BC9FD: STA.b $02\n\n.dont_adjust_vadd\n#_1BC9FF: LDA.b $00\n#_1BCA01: AND.w #$0FFF\n#_1BCA04: CMP.w #$0800\n#_1BCA07: BCC .no_index_overflow\n\n#_1BCA09: LDA.b $02\n#_1BCA0B: ADC.w #$07FF\n#_1BCA0E: STA.b $02\n\n.no_index_overflow\n#_1BCA10: LDA.b $00\n#_1BCA12: AND.w #$001F\n#_1BCA15: ADC.b $02\n#_1BCA17: STA.b $02\n\n#_1BCA19: LDA.b $00\n#_1BCA1B: AND.w #$0780\n#_1BCA1E: LSR A\n#_1BCA1F: ADC.b $02\n#_1BCA21: STA.b $02\n\n; ---------------------------------------------------------\n\n#_1BCA23: LDY.w $1000\n\n#_1BCA26: XBA\n#_1BCA27: STA.w $1002,Y\n\n#_1BCA2A: LDA.b $02\n#_1BCA2C: CLC\n#_1BCA2D: ADC.w #$0020\n#_1BCA30: XBA\n#_1BCA31: STA.w $100A,Y\n\n#_1BCA34: LDA.w #$0300\n#_1BCA37: STA.w $1004,Y\n#_1BCA3A: STA.w $100C,Y\n\n#_1BCA3D: LDX.b $0C\n\n#_1BCA3F: LDA.l Map16Definitions+0,X\n#_1BCA43: STA.w $1006,Y\n\n#_1BCA46: LDA.l Map16Definitions+2,X\n#_1BCA4A: STA.w $1008,Y\n\n#_1BCA4D: LDA.l Map16Definitions+4,X\n#_1BCA51: STA.w $100E,Y\n\n#_1BCA54: LDA.l Map16Definitions+6,X\n#_1BCA58: STA.w $1010,Y\n\n#_1BCA5B: TYA\n#_1BCA5C: CLC\n#_1BCA5D: ADC.w #$0010\n#_1BCA60: STA.w $1000\n\n#_1BCA63: PLX\n#_1BCA64: INX\n#_1BCA65: INX\n\n#_1BCA66: PLA\n#_1BCA67: INC A\n\n#_1BCA68: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_FindMap16VRAMAddress", + "code": "Overworld_FindMap16VRAMAddress:\n#_1BCA69: STZ.b $02\n\n#_1BCA6B: LDA.b $00\n#_1BCA6D: AND.w #$003F\n#_1BCA70: CMP.w #$0020\n#_1BCA73: BCC .dont_adjust_vadd\n\n#_1BCA75: LDA.w #$0400\n#_1BCA78: STA.b $02\n\n.dont_adjust_vadd\n#_1BCA7A: LDA.b $00\n#_1BCA7C: AND.w #$0FFF\n#_1BCA7F: CMP.w #$0800\n#_1BCA82: BCC .no_index_overflow\n\n#_1BCA84: LDA.b $02\n#_1BCA86: ADC.w #$07FF\n#_1BCA89: STA.b $02\n\n.no_index_overflow\n#_1BCA8B: LDA.b $00\n#_1BCA8D: AND.w #$001F\n#_1BCA90: ADC.b $02\n#_1BCA92: STA.b $02\n\n#_1BCA94: LDA.b $00\n#_1BCA96: AND.w #$0780\n#_1BCA99: LSR A\n#_1BCA9A: ADC.b $02\n#_1BCA9C: STA.b $02\n\n#_1BCA9E: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_CreateTRPortal", + "code": "Overworld_CreateTRPortal:\n#_1BCA9F: REP #$30\n\n#_1BCAA1: LDA.w #$0212\n#_1BCAA4: LDX.w #$0720\n#_1BCAA7: STA.l $7E2000,X\n\n#_1BCAAB: JSL Overworld_MemorizeMap16Change\n#_1BCAAF: JSL Overworld_DrawMap16\n\n#_1BCAB3: SEP #$30\n\n#_1BCAB5: LDA.b #$01\n#_1BCAB7: STA.b $14\n\n#_1BCAB9: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance", + "code": "Overworld_AnimateEntrance:\n#_1BCAC4: STA.w $02E4\n#_1BCAC7: STA.w $0FC1\n#_1BCACA: STA.w $0710\n\n#_1BCACD: DEC A\n#_1BCACE: ASL A\n#_1BCACF: TAX\n\n#_1BCAD0: JSR (.vectors,X)\n\n#_1BCAD3: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance_PoD", + "code": "Overworld_AnimateEntrance_PoD:\n#_1BCADE: LDA.b $B0\n#_1BCAE0: ASL A\n#_1BCAE1: TAX\n\n#_1BCAE2: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_PoD_step1:\n#_1BCAE5: INC.b $C8\n\n#_1BCAE7: LDA.b $C8\n#_1BCAE9: CMP.b #$40\n#_1BCAEB: BNE .exit\n\n#_1BCAED: JSR OverworldEntrance_AdvanceAndBoom\n\n#_1BCAF0: LDA.l $7EF2DE\n#_1BCAF4: ORA.b #$20\n#_1BCAF6: STA.l $7EF2DE\n\n#_1BCAFA: REP #$30\n\n#_1BCAFC: LDX.w #$01E6\n#_1BCAFF: LDA.w #$0E31\n#_1BCB02: JSL Overworld_DrawMap16_Persist\n\n#_1BCB06: LDX.w #$02EA\n#_1BCB09: LDA.w #$0E30\n#_1BCB0C: JSR Overworld_AlterTileHardcore\n\n#_1BCB0F: LDX.w #$026A\n#_1BCB12: LDA.w #$0E26\n#_1BCB15: JSR Overworld_AlterTileHardcore\n\n.modify_bottom_stair_part\n#_1BCB18: LDX.w #$02EA\n\n.modify_specific_stair_part\n#_1BCB1B: JSR Overworld_AlterTileHardcore\n\n#_1BCB1E: LDA.w #$FFFF\n#_1BCB21: STA.w $1012,Y\n\n#_1BCB24: SEP #$30\n\n#_1BCB26: LDA.b #$01\n#_1BCB28: STA.b $14\n\n.exit\n#_1BCB2A: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance_Skull", + "code": "Overworld_AnimateEntrance_Skull:\n#_1BCBA6: LDA.b $B0\n#_1BCBA8: ASL A\n#_1BCBA9: TAX\n\n#_1BCBAA: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_Skull_step1:\n#_1BCBAD: INC.b $C8\n\n#_1BCBAF: LDA.b $C8\n#_1BCBB1: CMP.b #$04\n#_1BCBB3: BNE .exit\n\n#_1BCBB5: INC.b $B0\n\n#_1BCBB7: STZ.b $C8\n\n#_1BCBB9: REP #$30\n\n#_1BCBBB: LDX.w #$0812\n#_1BCBBE: LDA.w #$0E06\n#_1BCBC1: JSL Overworld_DrawMap16_Persist\n\n#_1BCBC5: LDX.w #$0814\n#_1BCBC8: LDA.w #$0E06\n#_1BCBCB: JSR Overworld_AlterTileHardcore\n\n#_1BCBCE: LDA.w #$FFFF\n#_1BCBD1: STA.w $1012,Y\n\n; ---------------------------------------------------------\n\n#_1BCBD4: SEP #$30\n\n#_1BCBD6: LDX.b $8A\n\n#_1BCBD8: LDA.l $7EF280,X\n#_1BCBDC: ORA.b #$20\n#_1BCBDE: STA.l $7EF280,X\n\n#_1BCBE2: SEP #$30\n\n#_1BCBE4: LDA.b #$01\n#_1BCBE6: STA.b $14\n\n#_1BCBE8: LDA.b #$16 ; SFX3.16\n#_1BCBEA: STA.w $012F\n\n.exit\n#_1BCBED: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance_Mire", + "code": "Overworld_AnimateEntrance_Mire:\n#_1BCCD4: LDA.b $B0\n#_1BCCD6: CMP.b #$02\n#_1BCCD8: BCC .no_shake\n\n#_1BCCDA: REP #$20\n\n#_1BCCDC: LDA.b $1A\n#_1BCCDE: AND.w #$0001\n#_1BCCE1: ASL A\n#_1BCCE2: TAX\n\n#_1BCCE3: LDA.l OverworldShake_Offsets_Y,X\n#_1BCCE7: STA.w $011A\n\n#_1BCCEA: LDA.l OverworldShake_Offsets_X,X\n#_1BCCEE: STA.w $011C\n\n#_1BCCF1: SEP #$20\n\n.no_shake\n#_1BCCF3: LDA.b $B0\n#_1BCCF5: ASL A\n#_1BCCF6: TAX\n\n#_1BCCF7: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\npool AnimateEntrance_Mire_step1\n\n.shake_masks\n#_1BCCFA: db $FF, $F7, $F7, $FB, $EE, $EE, $EE, $EE\n#_1BCD02: db $EE, $EE, $AA, $AA, $AA, $AA, $AA, $AA\n#_1BCD0A: db $AA, $88, $88, $88, $88, $80, $80, $80\n#_1BCD12: db $80, $80\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "AnimateEntrance_Mire_step1", + "code": "AnimateEntrance_Mire_step1:\n#_1BCD14: INC.b $C8\n\n#_1BCD16: LDA.b $C8\n#_1BCD18: CMP.b #$20\n#_1BCD1A: BCC .exit\n\n#_1BCD1C: SEC\n#_1BCD1D: SBC.b #$20\n#_1BCD1F: CMP.b #$CF\n#_1BCD21: BNE .dont_advance_step\n\n#_1BCD23: INC.b $B0\n\n#_1BCD25: STZ.b $C8\n\n.dont_advance_step\n#_1BCD27: PHA\n\n#_1BCD28: AND.b #$07\n#_1BCD2A: ASL A\n#_1BCD2B: TAY\n\n#_1BCD2C: PLA\n#_1BCD2D: AND.b #$F8\n#_1BCD2F: LSR A\n#_1BCD30: LSR A\n#_1BCD31: LSR A\n#_1BCD32: TAX\n\n#_1BCD33: LDA.w DungeonMask+1,Y\n\n#_1BCD36: STZ.b $1D\n\n#_1BCD38: AND.l .shake_masks,X\n#_1BCD3C: BEQ .exit\n\n#_1BCD3E: INC.b $1D\n\n.exit\n#_1BCD40: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance_TurtleRock", + "code": "Overworld_AnimateEntrance_TurtleRock:\n#_1BCE28: REP #$20\n\n#_1BCE2A: LDA.b $1A\n#_1BCE2C: AND.w #$0001\n#_1BCE2F: ASL A\n#_1BCE30: TAX\n\n#_1BCE31: LDA.l OverworldShake_Offsets_Y,X\n#_1BCE35: STA.w $011A\n\n#_1BCE38: LDA.l OverworldShake_Offsets_X,X\n#_1BCE3C: STA.w $011C\n\n#_1BCE3F: SEP #$20\n\n#_1BCE41: LDA.b $B0\n#_1BCE43: ASL A\n#_1BCE44: TAX\n\n#_1BCE45: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_TurtleRock_step1:\n#_1BCE48: LDX.b $8A\n\n#_1BCE4A: LDA.l $7EF280,X\n#_1BCE4E: ORA.b #$20\n#_1BCE50: STA.l $7EF280,X\n\n#_1BCE54: LDA.b #$00\n#_1BCE56: JSL ApplyGrayscaleFixed_Parameterized\n\n#_1BCE5A: LDA.b #$10\n#_1BCE5C: BRA .step_parameterized\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_TurtleRock_step2:\n#_1BCE5E: LDA.b #$14\n#_1BCE60: BRA .step_parameterized\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_TurtleRock_step3:\n#_1BCE62: LDA.b #$18\n#_1BCE64: BRA .step_parameterized\n\n; ---------------------------------------------------------\n\n#AnimateEntrance_TurtleRock_step4:\n#_1BCE66: LDA.b #$1C\n\n; ---------------------------------------------------------\n\n.step_parameterized\n#_1BCE68: STA.w $1002\n#_1BCE6B: STZ.w $1003\n\n#_1BCE6E: REP #$20\n\n#_1BCE70: LDA.w #$FE47\n#_1BCE73: STA.w $1004\n\n#_1BCE76: LDA.w #$01E3\n#_1BCE79: STA.w $1006\n\n#_1BCE7C: SEP #$20\n\n#_1BCE7E: LDA.b #$FF\n#_1BCE80: STA.w $1008\n\n#_1BCE83: INC.b $B0\n\n#_1BCE85: LDA.b #$01\n#_1BCE87: STA.b $14\n\n#_1BCE89: RTS", + "file": "bank_1B.asm" + }, + { + "name": "OverworldEntrance_PlayJingle", + "code": "OverworldEntrance_PlayJingle:\n#_1BCF40: LDA.b #$1B ; SFX3.1B\n\n#_1BCF42: STA.w $012F\n\n#_1BCF45: STZ.w $04C6\n#_1BCF48: STZ.b $B0\n#_1BCF4A: STZ.w $0710\n\n#_1BCF4D: STZ.w $02E4\n\n#_1BCF50: STZ.w $0FC1\n\n#_1BCF53: STZ.w $011A\n#_1BCF56: STZ.w $011B\n#_1BCF59: STZ.w $011C\n#_1BCF5C: STZ.w $011D\n\n#_1BCF5F: RTS", + "file": "bank_1B.asm" + }, + { + "name": "OverworldEntrance_DrawManyTR", + "code": "OverworldEntrance_DrawManyTR:\n#_1BCF60: REP #$30\n\n#_1BCF62: LDX.w #$099E\n#_1BCF65: LDA.w #$0E78\n#_1BCF68: JSL Overworld_DrawMap16_Persist\n\n#_1BCF6C: LDX.w #$09A0\n#_1BCF6F: LDA.w #$0E79\n#_1BCF72: JSR Overworld_AlterTileHardcore\n#_1BCF75: JSR Overworld_AlterTileHardcore\n#_1BCF78: JSR Overworld_AlterTileHardcore\n\n#_1BCF7B: LDX.w #$0A1E\n#_1BCF7E: JSR Overworld_AlterTileHardcore\n#_1BCF81: JSR Overworld_AlterTileHardcore\n#_1BCF84: JSR Overworld_AlterTileHardcore\n#_1BCF87: JSR Overworld_AlterTileHardcore\n\n#_1BCF8A: LDX.w #$0A9E\n#_1BCF8D: JSR Overworld_AlterTileHardcore\n#_1BCF90: JSR Overworld_AlterTileHardcore\n#_1BCF93: JSR Overworld_AlterTileHardcore\n#_1BCF96: JSR Overworld_AlterTileHardcore\n\n#_1BCF99: LDX.w #$0B1E\n#_1BCF9C: JSR Overworld_AlterTileHardcore\n#_1BCF9F: JSR Overworld_AlterTileHardcore\n#_1BCFA2: JSR Overworld_AlterTileHardcore\n#_1BCFA5: JSR Overworld_AlterTileHardcore\n\n#_1BCFA8: LDA.w #$FFFF\n#_1BCFAB: STA.w $1012,Y\n\n#_1BCFAE: TYA\n#_1BCFAF: CLC\n#_1BCFB0: ADC.w #$0010\n#_1BCFB3: STA.b $00\n\n#_1BCFB5: SEP #$30\n\n#_1BCFB7: LDA.b #$01\n#_1BCFB9: STA.b $14\n#_1BCFBB: STA.w $0710\n\n#_1BCFBE: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Overworld_AnimateEntrance_GanonsTower", + "code": "Overworld_AnimateEntrance_GanonsTower:\n#_1BCFD9: LDA.b $B0\n#_1BCFDB: ASL A\n#_1BCFDC: TAX\n\n#_1BCFDD: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "AnimateEntrance_GanonsTower_step01", + "code": "AnimateEntrance_GanonsTower_step01:\n#_1BCFE0: LDX.b $8A\n\n#_1BCFE2: LDA.l $7EF280,X\n#_1BCFE6: ORA.b #$20\n#_1BCFE8: STA.l $7EF280,X\n\n#_1BCFEC: JSL GanonsTower_FlashAfterCrystals\n\n#_1BCFF0: RTS", + "file": "bank_1B.asm" + }, + { + "name": "AnimateEntrance_GanonsTower_step02", + "code": "AnimateEntrance_GanonsTower_step02:\n#_1BCFF1: JSL GanonsTower_FlashAfterCrystals\n\n#_1BCFF5: LDA.b $1D\n#_1BCFF7: BNE .exit\n\n#_1BCFF9: INC.b $1D\n#_1BCFFB: INC.b $C8\n\n#_1BCFFD: LDA.b $C8\n#_1BCFFF: CMP.b #$03\n#_1BD001: BNE .skip_sfx\n\n#_1BD003: STZ.b $C8\n\n#_1BD005: LDA.b #$07 ; SFX1.07\n#_1BD007: STA.w $012D\n\n#_1BD00A: RTS", + "file": "bank_1B.asm" + }, + { + "name": "OverworldEntrance_AdvanceAndBoom", + "code": "OverworldEntrance_AdvanceAndBoom:\n#_1BD00E: INC.b $B0\n#_1BD010: STZ.b $C8\n\n#_1BD012: LDA.b #$0C ; SFX2.0C\n#_1BD014: STA.w $012E\n\n#_1BD017: LDA.b #$07 ; SFX3.07\n#_1BD019: STA.w $012F\n\n#_1BD01C: RTS", + "file": "bank_1B.asm" + }, + { + "name": "AnimateEntrance_GanonsTower_step03", + "code": "AnimateEntrance_GanonsTower_step03:\n#_1BD01D: INC.b $C8\n\n#_1BD01F: LDA.b $C8\n#_1BD021: CMP.b #$30\n#_1BD023: BNE .exit_a\n\n#_1BD025: JSR OverworldEntrance_AdvanceAndBoom\n\n#_1BD028: REP #$30\n\n#_1BD02A: LDX.w #$045E\n#_1BD02D: LDA.w #$0E88\n#_1BD030: JSL Overworld_DrawMap16_Persist\n\n#_1BD034: LDX.w #$0460\n#_1BD037: LDA.w #$0E89\n#_1BD03A: JSR Overworld_AlterTileHardcore\n\n#_1BD03D: LDX.w #$04DE\n#_1BD040: LDA.w #$0EA2\n#_1BD043: JSR Overworld_AlterTileHardcore\n#_1BD046: JSR Overworld_AlterTileHardcore\n\n#_1BD049: LDA.w #$0E8A\n\n.draw_at_055E\n#_1BD04C: LDX.w #$055E\n\n.draw2_advance\n#_1BD04F: JSR Overworld_AlterTileHardcore\n\n.draw1_advance\n#_1BD052: JSR Overworld_AlterTileHardcore\n\n#_1BD055: LDA.w #$FFFF\n#_1BD058: STA.w $1012,Y\n\n#_1BD05B: SEP #$30\n\n#_1BD05D: LDA.b #$01\n#_1BD05F: STA.b $14\n\n.exit_a\n#_1BD061: RTS", + "file": "bank_1B.asm" + }, + { + "name": "NULL_1BD1D8", + "code": "NULL_1BD1D8:\n#_1BD1D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD1E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD1E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD1F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD1F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD200: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD208: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1BD210: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteData", + "code": "PaletteData:\n.sprite_00\n; #RRGGBB : F8F8F8, C83010, 388038, 50B090, 282828, F8C820, F87030\n; #RRGGBB : 000000, F8F8F8, C85830, B02828, E07070, 282828, B8B8C8, 787888\n#_1BD218: dw $7FFF, $08D9, $1E07, $4ACA, $14A5, $133F, $19DF\n.sprite_00_right\n#_1BD226: dw $0000, $7FFF, $1979, $14B6, $39DC, $14A5, $66F7, $45EF\n\n.sprite_01\n; #RRGGBB : F8F8F8, 4850D0, 60B8C0, A0F8D8, 282828, 88D0F8, 7890F8\n; #RRGGBB : 000000, F8F8F8, F880B0, 5068A8, 90A8E8, 282828, F8B050, B86028\n#_1BD236: dw $7FFF, $6949, $62EC, $6FF4, $14A5, $7F51, $7E4F\n.sprite_01_right\n#_1BD244: dw $0000, $7FFF, $5A1F, $55AA, $76B2, $14A5, $2ADF, $1597\n\n.sprite_02\n; #RRGGBB : F8F8F8, B0B830, B06028, F0A068, 282828, F07880, B84048\n; #RRGGBB : 000000, 282828, 282828, 282828, 282828, 282828, 282828, 282828\n#_1BD254: dw $7FFF, $1AF6, $1596, $369E, $14A5, $41FE, $2517\n#_1BD262: dw $0000, $14A5, $14A5, $14A5, $14A5, $14A5, $14A5, $14A5\n\n.sprite_03\n; #RRGGBB : F8F8F8, D86060, B06028, F0A068, 282828, B090F8, 5070C8\n; #RRGGBB : 000000, F8F8F8, C83018, 489030, 98D070, 282828, F8D038, B88820\n#_1BD272: dw $7FFF, $319B, $1596, $369E, $14A5, $7E56, $65CA\n#_1BD280: dw $0000, $7FFF, $0CD9, $1A49, $3B53, $14A5, $1F5F, $1237\n\n.sprite_04\n; #RRGGBB : F8F8F8, C83010, 788830, A8B860, 282828, F8C820, F87030\n; #RRGGBB : 000000, F8F8F8, C85830, B02828, E07070, 282828, B8B8C8, 787888\n#_1BD290: dw $7FFF, $08D9, $1A2F, $32F5, $14A5, $133F, $19DF\n#_1BD29E: dw $0000, $7FFF, $1979, $14B6, $39DC, $14A5, $66F7, $45EF\n\n.sprite_05\n; #RRGGBB : F8F8F8, 207058, 78B0C8, A8F0F8, 282828, 80D0B8, 50A088\n; #RRGGBB : 000000, F8F8F8, F880B0, 5068A8, 90A8E8, 282828, F8B050, B86028\n#_1BD2AE: dw $7FFF, $2DC4, $66CF, $7FD5, $14A5, $5F50, $468A\n#_1BD2BC: dw $0000, $7FFF, $5A1F, $55AA, $76B2, $14A5, $2ADF, $1597\n\n.sprite_06\n; #RRGGBB : F8F8F8, D8B818, B06028, F0A068, 282828, F07880, B84048\n; #RRGGBB : 000000, 282828, 282828, 282828, 282828, 282828, 282828, 282828\n#_1BD2CC: dw $7FFF, $0EFB, $1596, $369E, $14A5, $41FE, $2517\n#_1BD2DA: dw $0000, $14A5, $14A5, $14A5, $14A5, $14A5, $14A5, $14A5\n\n.sprite_07\n; #RRGGBB : F8F8F8, D86060, B06028, F0A068, 282828, B090F8, 5070C8\n; #RRGGBB : 000000, F8F8F8, C83018, 489030, 98D070, 282828, F8D038, B88820\n#_1BD2EA: dw $7FFF, $319B, $1596, $369E, $14A5, $7E56, $65CA\n#_1BD2F8: dw $0000, $7FFF, $0CD9, $1A49, $3B53, $14A5, $1F5F, $1237\n\n.Link\n.link_00\n#Palettes_GreenMail:\n; #RRGGBB : F8F8F8, F0D840, B86820, F0A068, 282828, F87800, C01820\n; #RRGGBB : E860B0, 389068, 40D870, 509010, 78B820, E09050, 885828, C080F0\n#_1BD308: dw $7FFF, $237E, $11B7, $369E, $14A5, $01FF, $1078\n#_1BD316: dw $599D, $3647, $3B68, $0A4A, $12EF, $2A5C, $1571, $7A18\n\n.link_01\n#Palettes_BlueMail:\n; #RRGGBB : F8F8F8, F0D840, B86820, F0A068, 282828, F87800, C01820\n; #RRGGBB : E860B0, 0060D0, 88A0E8, C0A848, F8D880, E09050, C86020, C080F0\n#_1BD326: dw $7FFF, $237E, $11B7, $369E, $14A5, $01FF, $1078\n#_1BD334: dw $599D, $6980, $7691, $26B8, $437F, $2A5C, $1199, $7A18\n\n.link_02\n#Palettes_RedMail:\n; #RRGGBB : F8F8F8, F0D840, B86820, F0A068, 282828, F87800, C01820\n; #RRGGBB : E860B0, B81020, F05888, 9878D8, C8A8F8, E09050, 388840, C080F0\n#_1BD344: dw $7FFF, $237E, $11B7, $369E, $14A5, $01FF, $1078\n#_1BD352: dw $599D, $1057, $457E, $6DF3, $7EB9, $2A5C, $2227, $7A18\n\n.link_03\n#Palettes_Bunny:\n; #RRGGBB : F8F8F8, F0D840, D07020, F0A068, 282828, F87800, C01820\n; #RRGGBB : B86078, 389068, 40D870, 509010, 78B820, F098A8, 901830, C080F0\n#_1BD362: dw $7FFF, $237E, $11DA, $369E, $14A5, $01FF, $1078\n#_1BD370: dw $3D97, $3647, $3B68, $0A4A, $12EF, $567E, $1872, $7A18\n\n.link_04\n#Palettes_Zap:\n; #RRGGBB : 000000, D0B818, 8870F8, 000000, D0C0F8, 000000, D0C0F8\n; #RRGGBB : 7058E0, 8870F8, 382880, 8870F8, 382880, 483890, 7830A0, F8F8F8\n#_1BD380: dw $0000, $0EFA, $7DD1, $0000, $7F1A, $0000, $7F1A\n#_1BD38E: dw $716E, $7DD1, $40A7, $7DD1, $40A7, $48E9, $50CF, $7FFF\n\n.spritepal0_00\n; #RRGGBB : 303020, A08020, E8C870, F0B0C8, C880A0, 68B880, 488848\n#_1BD39E: dw $10C6, $1214, $3B3D, $66DE, $5219, $42ED, $2629\n\n.spritepal0_01\n; #RRGGBB : F8F8F8, 305818, C05058, E88888, 282828, 80A060, 587838\n#_1BD3AC: dw $7FFF, $0D66, $2D58, $463D, $14A5, $3290, $1DEB\n\n.spritepal0_02\n; #RRGGBB : 887848, 484018, 5048A0, 8890E0, 282828, 787040, 585030\n#_1BD3BA: dw $25F1, $0D09, $512A, $7251, $14A5, $21CF, $194B\n\n.spritepal0_03\n; #RRGGBB : B09868, 503808, 00A820, 00E058, 282828, 887040, 685020\n#_1BD3C8: dw $3676, $04EA, $12A0, $2F80, $14A5, $21D1, $114D\n\n.spritepal0_04\n; #RRGGBB : F8F8F8, 98F898, A85820, F0A068, 282828, F87818, C83800\n#_1BD3D6: dw $7FFF, $4FF3, $1175, $369E, $14A5, $0DFF, $00F9\n\n.spritepal0_05\n; #RRGGBB : F8F8F8, D0C848, A85820, F0A068, 282828, 78C820, 489808\n#_1BD3E4: dw $7FFF, $273A, $1175, $369E, $14A5, $132F, $0669\n\n.spritepal0_06\n; #RRGGBB : F8F8F8, 505060, 788890, 78C0A8, 282828, 78E8A8, 503860\n#_1BD3F2: dw $7FFF, $314A, $4A2F, $570F, $14A5, $57AF, $30EA\n\n.spritepal0_07\n; #RRGGBB : F8F8F8, D84030, 60A828, A8F070, 282828, F09848, C06018\n#_1BD400: dw $7FFF, $191B, $16AC, $3BD5, $14A5, $267E, $0D98\n\n.spritepal0_08\n; #RRGGBB : F8F8F8, 604838, 686898, 686898, 282828, A08050, 886038\n#_1BD40E: dw $7FFF, $1D2C, $4DAD, $4DAD, $14A5, $2A14, $1D91\n\n.spritepal0_09\n; #RRGGBB : F8F8F8, 286040, C05058, E88888, 282828, 68A080, 488060\n#_1BD41C: dw $7FFF, $2185, $2D58, $463D, $14A5, $428D, $3209\n\n.spritepal0_0A\n; #RRGGBB : F8F8F8, A0A0A0, 383088, 7068C0, 282828, D88830, A85820\n#_1BD42A: dw $7FFF, $5294, $44C7, $61AE, $14A5, $1A3B, $1175\n\n.spritepal0_0B\n; #RRGGBB : F8D868, 4838A8, F89028, B00020, 181058, C0C0D0, 7878C0\n#_1BD438: dw $377F, $54E9, $165F, $1016, $2C43, $6B18, $61EF\n\n.environment_00\n; #RRGGBB : 203028, 585858, 7048C0, A068B8, C8B0F0, E8E8E8, A0A0A0\n#_1BD446: dw $14C4, $2D6B, $612E, $5DB4, $7AD9, $77BD, $5294\n\n.environment_01\n; #RRGGBB : 203028, 585858, 407898, 70A8C8, A0D8F8, E8E8E8, A0A0A0\n#_1BD454: dw $14C4, $2D6B, $4DE8, $66AE, $7F74, $77BD, $5294\n\n.environment_02\n; #RRGGBB : 203028, 585858, F84000, F87800, F8F000, E8E8E8, A0A0A0\n#_1BD462: dw $14C4, $2D6B, $011F, $01FF, $03DF, $77BD, $5294\n\n.environment_03\n; #RRGGBB : F8F8F8, 000000, 000000, 000000, 8000F0, F8D8F8, B800F8\n#_1BD470: dw $7FFF, $0000, $0000, $0000, $7810, $7F7F, $7C17\n\n.environment_04\n; #RRGGBB : F8F8F8, 000000, 3840B0, 7080D8, 000000, D8E8F8, 9098E8\n#_1BD47E: dw $7FFF, $0000, $5907, $6E0E, $0000, $7FBB, $7672\n\n.environment_05\n; #RRGGBB : F8F8F8, F8E0B8, 500000, A880F8, 200858, 8070E8, 5848C0\n#_1BD48C: dw $7FFF, $5F9F, $000A, $7E15, $2C24, $75D0, $612B\n\n.environment_06\n; #RRGGBB : 282828, 508070, 287838, 489848, A08860, B0E8B8, 78B890\n#_1BD49A: dw $14A5, $3A0A, $1DE5, $2669, $3234, $5FB6, $4AEF\n\n.environment_07\n; #RRGGBB : 282828, 282828, 686028, 888040, A08860, 78B890, 508070\n#_1BD4A8: dw $14A5, $14A5, $158D, $2211, $3234, $4AEF, $3A0A\n\n.environment_08\n; #RRGGBB : 203010, 487040, 886898, 98B0E0, B8A820, A0C898, 709868\n#_1BD4B6: dw $08C4, $21C9, $4DB1, $72D3, $12B7, $4F34, $366E\n\n.environment_09\n; #RRGGBB : 181818, 203010, 705830, 907850, 907850, 709868, 487040\n#_1BD4C4: dw $0C63, $08C4, $196E, $29F2, $29F2, $366E, $21C9\n\n.environment_0A\n; #RRGGBB : 303030, 585858, A87850, D0A830, 784848, E8E8E8, A0A0A0\n#_1BD4D2: dw $18C6, $2D6B, $29F5, $1ABA, $252F, $77BD, $5294\n\n.spriteaux_00\n; #RRGGBB : F8F8F8, A0C0F0, 9020B8, D040F0, 282828, F8A800, E86820\n#_1BD4E0: dw $7FFF, $7B14, $5C92, $791A, $14A5, $02BF, $11BD\n\n.spriteaux_01\n; #RRGGBB : F8F8F8, D8B060, B02800, F08848, 282828, A0A0A8, 686870\n#_1BD4EE: dw $7FFF, $32DB, $00B6, $263E, $14A5, $5694, $39AD\n\n.spriteaux_02\n; #RRGGBB : F8F8F8, 885008, 6860B8, 9098E0, 282828, E8B818, B07818\n#_1BD4FC: dw $7FFF, $0551, $5D8D, $7272, $14A5, $0EFD, $0DF6\n\n.spriteaux_03\n; #RRGGBB : F8F8F8, F0D840, A85820, F0A068, 282828, 88D830, 009838\n#_1BD50A: dw $7FFF, $237E, $1175, $369E, $14A5, $1B71, $1E60\n\n.spriteaux_04\n; #RRGGBB : F8F8F8, D02040, A06818, D8B850, 282828, 78D800, 589800\n#_1BD518: dw $7FFF, $209A, $0DB4, $2AFB, $14A5, $036F, $026B\n\n.spriteaux_05\n; #RRGGBB : F8F8F8, A85810, 903068, C868A0, 282828, F8B058, E07820\n#_1BD526: dw $7FFF, $0975, $34D2, $51B9, $14A5, $2EDF, $11FC\n\n.spriteaux_06\n; #RRGGBB : E8E8E8, E03810, A07010, E0B020, 282828, C0B098, 887050\n#_1BD534: dw $77BD, $08FC, $09D4, $12DC, $14A5, $4ED8, $29D1\n\n.spriteaux_07\n; #RRGGBB : F8F8F8, 305830, E06018, D8A800, 282828, 50C090, 408858\n#_1BD542: dw $7FFF, $1966, $0D9C, $02BB, $14A5, $4B0A, $2E28\n\n.spriteaux_08\n; #RRGGBB : F8F8F8, 503818, C8B818, F8D018, 282828, A89818, 806818\n#_1BD550: dw $7FFF, $0CEA, $0EF9, $0F5F, $14A5, $0E75, $0DB0\n\n.spriteaux_09\n; #RRGGBB : F8F8F8, E088B0, 7098C0, A0C8F8, 000000, F8C8F8, F0A0D8\n#_1BD55E: dw $7FFF, $5A3C, $626E, $7F34, $0000, $7F3F, $6E9E\n\n.spriteaux_0A\n; #RRGGBB : F8F8F8, C83010, A85820, F0A068, 282828, D0C040, 988818\n#_1BD56C: dw $7FFF, $08D9, $1175, $369E, $14A5, $231A, $0E33\n\n.spriteaux_0B\n; #RRGGBB : F8F8F8, A04010, 289828, 70D8B8, 282828, F89848, C86828\n#_1BD57A: dw $7FFF, $0914, $1665, $5F6E, $14A5, $267F, $15B9\n\n.spriteaux_0C\n; #RRGGBB : F8F8F8, 4848B0, D85820, F8A840, 282828, A8A8F8, 7870E8\n#_1BD588: dw $7FFF, $5929, $117B, $22BF, $14A5, $7EB5, $75CF\n\n.spriteaux_0D\n; #RRGGBB : F8F8F8, 385088, 886008, C0A028, 282828, 88C8A0, 5088A8\n#_1BD596: dw $7FFF, $4547, $0591, $1698, $14A5, $5331, $562A\n\n.spriteaux_0E\n; #RRGGBB : F8F8F8, C04080, B08828, E8C070, 282828, 90D038, 688020\n#_1BD5A4: dw $7FFF, $4118, $1636, $3B1D, $14A5, $1F52, $120D\n\n.spriteaux_0F\n; #RRGGBB : F8F8F8, D8A068, 58A040, 90D878, 282828, E06868, A84040\n#_1BD5B2: dw $7FFF, $369B, $228B, $3F72, $14A5, $35BC, $2115\n\n.spriteaux_10\n; #RRGGBB : F8F8F8, A00028, 00D018, F8C040, 282828, E88820, D03828\n#_1BD5C0: dw $7FFF, $1414, $0F40, $231F, $14A5, $123D, $14FA\n\n.spriteaux_11\n; #RRGGBB : F8F8F8, F890B8, 905810, C08848, 282828, B088E8, 7848A0\n#_1BD5CE: dw $7FFF, $5E5F, $0972, $2638, $14A5, $7636, $512F\n\n.spriteaux_12\n; #RRGGBB : A888F8, D81830, A85820, F0A068, 282828, F8F8F8, A888F8\n#_1BD5DC: dw $7E35, $187B, $1175, $369E, $14A5, $7FFF, $7E35\n\n.spriteaux_13\n; #RRGGBB : F8F8F8, A0A0B0, B83010, E86040, 282828, C0A028, 886008\n#_1BD5EA: dw $7FFF, $5A94, $08D7, $219D, $14A5, $1698, $0591\n\n.spriteaux_14\n; #RRGGBB : F8F8F8, 903018, D85800, F8A828, 282828, E88068, B04038\n#_1BD5F8: dw $7FFF, $0CD2, $017B, $16BF, $14A5, $361D, $1D16\n\n.spriteaux_15\n; #RRGGBB : 989898, 203868, 904808, C07818, 000000, B83008, 307088\n#_1BD606: dw $4E73, $34E4, $0532, $0DF8, $0000, $04D7, $45C6\n\n.spriteaux_16\n; #RRGGBB : F8F8F8, 709868, A07828, E0C040, 282828, A0C898, C0E8B8\n#_1BD614: dw $7FFF, $366E, $15F4, $231C, $14A5, $4F34, $5FB8\n\n.spriteaux_17\n; #RRGGBB : 505050, E8E8E8, C0C0C0, 888888, E8E8E8, 888888, C0C0C0\n#_1BD622: dw $294A, $77BD, $6318, $4631, $77BD, $4631, $6318\n\n; ---------------------------------------------------------\n\n.sword\n\n.sword_00\n; #RRGGBB : F8F8F8, F8F848, 6888B8\n#_1BD630: dw $7FFF, $27FF, $5E2D\n\n.sword_01\n; #RRGGBB : 7090F8, A0F8D8, A83838\n#_1BD636: dw $7E4E, $6FF4, $1CF5\n\n.sword_02\n; #RRGGBB : D84810, F8A028, 68A0F8\n#_1BD63C: dw $093B, $169F, $7E8D\n\n.sword_03\n; #RRGGBB : F8C800, F8F8C8, 009048\n#_1BD642: dw $033F, $67FF, $2640\n\n; ---------------------------------------------------------\n\n.shield\n.shield_00\n; #RRGGBB : F8F8F8, 383838, 8080F0, 2828C8\n#_1BD648: dw $7FFF, $1CE7, $7A10, $64A5\n\n.shield_01\n; #RRGGBB : F8D098, 383838, E0A058, B02828\n#_1BD650: dw $4F5F, $1CE7, $2E9C, $14B6\n\n.shield_02\n; #RRGGBB : C8E0E0, 383838, C8B800, 988800\n#_1BD658: dw $7399, $1CE7, $02F9, $0233\n\n; ---------------------------------------------------------\n\n.hud_00\n; #RRGGBB : 000000, C06000, A8A8A8, 000000\n#_1BD660: dw $0000, $0198, $56B5, $0000\n\n.hud_01\n; #RRGGBB : 000000, C00000, F8F8F8, 000000\n#_1BD668: dw $0000, $0018, $7FFF, $0000\n\n.hud_02\n; #RRGGBB : 000000, E0A800, F8F8F8, 000000\n#_1BD670: dw $0000, $02BC, $7FFF, $0000\n\n.hud_03\n; #RRGGBB : 000000, 4870D0, F8F8F8, 000000\n#_1BD678: dw $0000, $69C9, $7FFF, $0000\n\n.hud_04\n; #RRGGBB : 000000, 303030, 686870, 000000\n#_1BD680: dw $0000, $18C6, $39AD, $0000\n\n.hud_05\n; #RRGGBB : 000000, C02800, E8C880, 000000\n#_1BD688: dw $0000, $00B8, $433D, $0000\n\n.hud_06\n; #RRGGBB : 000000, 000070, F8F8F8, C00000\n#_1BD690: dw $0000, $3800, $7FFF, $0018\n\n.hud_07\n; #RRGGBB : 000000, 20C028, F8F8F8, 000000\n#_1BD698: dw $0000, $1704, $7FFF, $0000\n\n.hud_08\n; #RRGGBB : 000000, 785840, C89058, 403028\n#_1BD6A0: dw $0000, $216F, $2E59, $14C8\n\n.hud_09\n; #RRGGBB : 000000, C00000, F8F8F8, 000000\n#_1BD6A8: dw $0000, $0018, $7FFF, $0000\n\n.hud_0A\n; #RRGGBB : 000000, 000000, 28F858, 000000\n#_1BD6B0: dw $0000, $0000, $2FE5, $0000\n\n.hud_0B\n; #RRGGBB : 000000, 000000, F8C038, 000000\n#_1BD6B8: dw $0000, $0000, $1F1F, $0000\n\n.hud_0C\n; #RRGGBB : 000000, C0B078, A09058, E8E848\n#_1BD6C0: dw $0000, $3ED8, $2E54, $27BD\n\n.hud_0D\n; #RRGGBB : 000000, C0B078, A09058, 807038\n#_1BD6C8: dw $0000, $3ED8, $2E54, $1DD0\n\n.hud_0E\n; #RRGGBB : 000000, 000070, F05038, 000000\n#_1BD6D0: dw $0000, $3800, $1D5E, $0000\n\n.hud_0F\n; #RRGGBB : 000000, 000000, F8F8F8, 000000\n#_1BD6D8: dw $0000, $0000, $7FFF, $0000\n\n.sword_04\n; #RRGGBB : F8C800, F8F8C8, 009048\n#_1BD6E0: dw $033F, $67FF, $2640\n\n; #RRGGBB : C860E8, C860E8, C860E8, C860E8\n#_1BD6E6: dw $7599, $7599, $7599, $7599\n\n.unused_00\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BD6EE: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n#_1BD6FC: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.dungeonmap_sprites_00\n; #RRGGBB : F8F8F8, C80000, F8F8F8, F8F8F8, 282828, 000000, 000000\n; #RRGGBB : F8F8F8, F8F828, 90D0F8, 705840, 282828, 000000, 000000\n; #RRGGBB : 9870F8, 70E0F8, 68A8C8, B83858, 282828, C0B0F8, 000000\n#_1BD70A: dw $7FFF, $0019, $7FFF, $7FFF, $14A5, $0000, $0000\n#_1BD718: dw $7FFF, $17FF, $7F52, $216E, $14A5, $0000, $0000\n#_1BD726: dw $7DD3, $7F8E, $66AD, $2CF7, $14A5, $7ED8, $0000\n\n.dungeon_00\n; #RRGGBB : 303018, 584828, 807030, A89868, E8D0A0, 703838, 482020\n; #RRGGBB : F8F8F8, 303018, 584828, 807030, A89868, E8D0A0, 703838, 482020\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 202018, 405860, 587078, 688088, 383850, 807030, 703838\n; #RRGGBB : 303018, 584828, 988830, C8C070, 602828, 387098, 305088\n; #RRGGBB : F8F8F8, 202018, 284850, 305860, 406870, 5858F8, 584828, 482020\n; #RRGGBB : 303020, 705840, 987840, E0B070, 683030, F0B0C8, C870B0\n; #RRGGBB : F8F8F8, 282818, 484858, 885858, 986868, 383850, 807030, 703838\n; #RRGGBB : 181828, 804040, C06868, E0E0E0, 404080, D8B028, 6868C0\n; #RRGGBB : F8F8F8, 282818, 484858, 704040, 805050, 383850, 505060, 5858F8\n; #RRGGBB : 303018, 584828, 807030, A89868, E8D0A0, 584828, 5858F8\n; #RRGGBB : F8F8F8, 282818, 504028, 000000, 000000, 683030, A89868, 807030\n#_1BD734: dw $0CC6, $152B, $19D0, $3675, $535D, $1CEE, $1089\n#_1BD742: dw $7FFF, $0CC6, $152B, $19D0, $3675, $535D, $1CEE, $1089\n#_1BD752: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BD760: dw $7FFF, $0C84, $3168, $3DCB, $460D, $28E7, $19D0, $1CEE\n#_1BD770: dw $0CC6, $152B, $1A33, $3B19, $14AC, $4DC7, $4546\n#_1BD77E: dw $7FFF, $0C84, $2925, $3166, $39A8, $7D6B, $152B, $1089\n#_1BD78E: dw $10C6, $216E, $21F3, $3ADC, $18CD, $66DE, $59D9\n#_1BD79C: dw $7FFF, $0CA5, $2D29, $2D71, $35B3, $28E7, $19D0, $1CEE\n#_1BD7AC: dw $1463, $2110, $35B8, $739C, $4108, $16DB, $61AD\n#_1BD7BA: dw $7FFF, $0CA5, $2D29, $210E, $2950, $28E7, $314A, $7D6B\n#_1BD7CA: dw $0CC6, $152B, $19D0, $3675, $535D, $152B, $7D6B\n#_1BD7D8: dw $7FFF, $0CA5, $150A, $0000, $0000, $18CD, $3675, $19D0\n\n.dungeon_01\n; #RRGGBB : 181828, 383058, 504878, 706890, A098C0, 603838, 482020\n; #RRGGBB : F8F8F8, 181828, 383058, 504878, 706890, A098C0, 684838, 503020\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181828, 304858, 486070, 587078, 304858, 504878, 684838\n; #RRGGBB : 181828, 383058, 504878, 706890, A098C0, 603838, 482020\n; #RRGGBB : F8F8F8, 181828, 203848, 284050, 385060, 203848, 383058, 503020\n; #RRGGBB : 303030, 584038, 806048, A07840, 403028, 603838, 482020\n; #RRGGBB : F8F8F8, 302018, 403020, 504030, 605040, A88868, E0C090, F8E8D8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404080, D8B028, 6868C0\n; #RRGGBB : F8F8F8, 181828, 203848, 304858, 486070, 486070, 989898, B8B8B8\n; #RRGGBB : 181828, 3840C8, 4850D0, 88D0F8, 383888, 4858B8, 7890F8\n; #RRGGBB : F8F8F8, 181820, 383050, 203848, 286828, 286828, 706890, 504878\n#_1BD7E8: dw $1463, $2CC7, $3D2A, $49AE, $6274, $1CEC, $1089\n#_1BD7F6: dw $7FFF, $1463, $2CC7, $3D2A, $49AE, $6274, $1D2D, $10CA\n#_1BD806: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BD814: dw $7FFF, $1463, $2D26, $3989, $3DCB, $2D26, $3D2A, $1D2D\n#_1BD824: dw $1463, $2CC7, $3D2A, $49AE, $6274, $1CEC, $1089\n#_1BD832: dw $7FFF, $1463, $24E4, $2905, $3147, $24E4, $2CC7, $10CA\n#_1BD842: dw $18C6, $1D0B, $2590, $21F4, $14C8, $1CEC, $1089\n#_1BD850: dw $7FFF, $0C86, $10C8, $190A, $214C, $3635, $4B1C, $6FBF\n#_1BD860: dw $18C6, $2110, $35B8, $739C, $4108, $16DB, $61AD\n#_1BD86E: dw $7FFF, $1463, $24E4, $2D26, $3989, $3989, $4E73, $5EF7\n#_1BD87E: dw $1463, $6507, $6949, $7F51, $44E7, $5D69, $7E4F\n#_1BD88C: dw $7FFF, $1063, $28C7, $24E4, $15A5, $15A5, $49AE, $3D2A\n\n.dungeon_02\n; #RRGGBB : 382828, 785040, 986840, A88060, D0A878, C0B8A8, 784048\n; #RRGGBB : F8F8F8, 382828, 785040, 986840, A88060, D0A878, C0B8A8, 603838\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 382828, 405860, 587078, 688088, 405860, 986040, 603838\n; #RRGGBB : 382828, 785040, 986840, C09060, 4030C8, 7868F8, F8F8F8\n; #RRGGBB : F8F8F8, 282818, 684830, 785840, 886850, 684830, 785040, 503030\n; #RRGGBB : 483828, 886840, B89068, D0A070, 58E800, C8B0A8, B89890\n; #RRGGBB : F8F8F8, 282818, 684830, 785840, 886850, 684830, 986040, 603838\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404078, D0A830, 7070B8\n; #RRGGBB : F8F8F8, 282818, 204048, 305860, 406870, F8F8F8, 785040, 503030\n; #RRGGBB : 382828, 989808, 686840, 787840, F8F8F8, F8F8F8, F8F8F8\n; #RRGGBB : F8F8F8, 282818, 282010, 403828, 206050, 206050, 382828, 382828\n#_1BD89C: dw $14A7, $214F, $21B3, $3215, $3EBA, $56F8, $250F\n#_1BD8AA: dw $7FFF, $14A7, $214F, $21B3, $3215, $3EBA, $56F8, $1CEC\n#_1BD8BA: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BD8C8: dw $7FFF, $14A7, $3168, $3DCB, $460D, $3168, $2193, $1CEC\n#_1BD8D8: dw $14A7, $214F, $21B3, $3258, $64C8, $7DAF, $7FFF\n#_1BD8E6: dw $7FFF, $0CA5, $192D, $216F, $29B1, $192D, $214F, $18CA\n#_1BD8F6: dw $14E9, $21B1, $3657, $3A9A, $03AB, $56D9, $4A77\n#_1BD904: dw $7FFF, $0CA5, $192D, $216F, $29B1, $192D, $2193, $1CEC\n#_1BD914: dw $18C6, $2110, $35B8, $739C, $3D08, $1ABA, $5DCE\n#_1BD922: dw $7FFF, $0CA5, $2504, $3166, $39A8, $7FFF, $214F, $18CA\n#_1BD932: dw $14A7, $0673, $21AD, $21EF, $7FFF, $7FFF, $7FFF\n#_1BD940: dw $7FFF, $0CA5, $0885, $14E8, $2984, $2984, $14A7, $14A7\n\n.dungeon_03\n; #RRGGBB : 282828, 305030, 407048, 80A870, C8D0A0, 606080, 484868\n; #RRGGBB : F8F8F8, 282828, 305030, 407048, 80A870, C8D0A0, 404878, 383850\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181818, 404860, 505070, 606080, 303858, 407050, 404878\n; #RRGGBB : 282828, 305030, 407048, 80A870, C8D0A0, E0A050, A85050\n; #RRGGBB : F8F8F8, 181818, 303058, 383858, 484868, 283050, 204838, 383850\n; #RRGGBB : 284028, 405840, 587058, 789078, E8D090, C8A068, A87848\n; #RRGGBB : F8F8F8, 282828, 404040, 505050, 606060, 989898, D0D0D0, F8F8F8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404078, D0A830, 7070B8\n; #RRGGBB : F8F8F8, 202020, 382838, 483048, 584058, 505070, A0A0A0, E0E0E0\n; #RRGGBB : 282828, 405888, 6878B0, 8090C8, 286050, 409070, 58C8A0\n; #RRGGBB : F8F8F8, 282828, 284828, 000000, 683838, 683838, 80A870, 407048\n#_1BD950: dw $14A5, $1946, $25C8, $3AB0, $5359, $418C, $3529\n#_1BD95E: dw $7FFF, $14A5, $1946, $25C8, $3AB0, $5359, $3D28, $28E7\n#_1BD96E: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BD97C: dw $7FFF, $0C63, $3128, $394A, $418C, $2CE6, $29C8, $3D28\n#_1BD98C: dw $14A5, $1946, $25C8, $3AB0, $5359, $2A9C, $2955\n#_1BD99A: dw $7FFF, $0C63, $2CC6, $2CE7, $3529, $28C5, $1D24, $28E7\n#_1BD9AA: dw $1505, $2168, $2DCB, $3E4F, $4B5D, $3699, $25F5\n#_1BD9B8: dw $7FFF, $14A5, $2108, $294A, $318C, $4E73, $6B5A, $7FFF\n#_1BD9C8: dw $18C6, $2110, $35B8, $739C, $3D08, $1ABA, $5DCE\n#_1BD9D6: dw $7FFF, $1084, $1CA7, $24C9, $2D0B, $394A, $5294, $739C\n#_1BD9E6: dw $14A5, $4568, $59ED, $6650, $2985, $3A48, $532B\n#_1BD9F4: dw $7FFF, $14A5, $1525, $0000, $1CED, $1CED, $3AB0, $25C8\n\n.dungeon_04\n; #RRGGBB : 202848, 2848B0, 5890D0, A8E0E8, D8F8F8, 7070B8, 6060A8\n; #RRGGBB : F8F8F8, 202848, 2848B0, 5890D0, A8E0E8, D8F8F8, 7078B8, 505898\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 202848, 505898, 6068A8, 7078B8, 284898, 7078B8, 4068A0\n; #RRGGBB : 202848, 2848B0, 5890D0, D8E8E8, D85820, 7870E8, A8A8F8\n; #RRGGBB : F8F8F8, 202848, 505898, 6068A8, 7078B8, 385078, 7078B8, 4068A0\n; #RRGGBB : 202848, 4828F0, 8070F8, 58B0E8, D0F8F8, 4828C8, 6068A8\n; #RRGGBB : F8F8F8, 403068, 505898, 6068A8, 7078B8, 98A8D0, C0D0F0, F8F8F8\n; #RRGGBB : 181828, 804050, C06878, E0E0E0, 5050C0, D0A830, 8888F8\n; #RRGGBB : F8F8F8, 202848, 5860B8, 404898, 304080, 48C0B0, A0A0A0, E0E0E0\n; #RRGGBB : 202848, 406090, 20B8B8, 38D8E0, 383888, 4858B8, 7890F8\n; #RRGGBB : F8F8F8, 202040, 2840A8, 000000, 000000, 5860B8, A8E0E8, C8F8F8\n#_1BDA04: dw $24A4, $5925, $6A4B, $7795, $7FFB, $5DCE, $558C\n#_1BDA12: dw $7FFF, $24A4, $5925, $6A4B, $7795, $7FFB, $5DEE, $4D6A\n#_1BDA22: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDA30: dw $7FFF, $24A4, $4D6A, $55AC, $5DEE, $4D25, $5DEE, $51A8\n#_1BDA40: dw $24A4, $5925, $6A4B, $77BB, $117B, $75CF, $7EB5\n#_1BDA4E: dw $7FFF, $24A4, $4D6A, $55AC, $5DEE, $3D47, $5DEE, $51A8\n#_1BDA5E: dw $24A4, $78A9, $7DD0, $76CB, $7FFA, $64A9, $55AC\n#_1BDA6C: dw $7FFF, $34C8, $4D6A, $55AC, $5DEE, $6AB3, $7B58, $7FFF\n#_1BDA7C: dw $1463, $2910, $3DB8, $739C, $614A, $1ABA, $7E31\n#_1BDA8A: dw $7FFF, $24A4, $5D8B, $4D28, $4106, $5B09, $5294, $739C\n#_1BDA9A: dw $24A4, $4988, $5EE4, $7367, $44E7, $5D69, $7E4F\n#_1BDAA8: dw $7FFF, $2084, $5505, $0000, $0000, $5D8B, $7795, $7FF9\n\n.dungeon_05\n; #RRGGBB : 282818, 503820, 685030, 987850, B0A878, 587058, 486048\n; #RRGGBB : F8F8F8, 282818, 503820, 685030, 987850, B0A878, 405840, 304030\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181818, 405840, 506850, 686850, 806040, 685030, 405840\n; #RRGGBB : 282818, 503820, 685030, 987850, B0A878, 60B050, 287828\n; #RRGGBB : F8F8F8, 181818, 304830, 385840, 585840, 284030, 503820, 304030\n; #RRGGBB : 282818, 503820, 685030, 987850, B0A878, 686850, 506850\n; #RRGGBB : F8F8F8, 383820, 505028, 686838, 808050, B8B880, E8E8B8, F8F8F8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404080, D0A830, 6868C0\n; #RRGGBB : F8F8F8, 181818, 706828, 807838, 706828, 506850, A0A0A0, E0E0E0\n; #RRGGBB : 303048, 304888, 3858C0, 4870C8, 385088, 4070B0, 60A0D0\n; #RRGGBB : F8F8F8, 282818, 503820, 000000, 607838, 607838, 987850, 685030\n#_1BDAB8: dw $0CA5, $10EA, $194D, $29F3, $3EB6, $2DCB, $2589\n#_1BDAC6: dw $7FFF, $0CA5, $10EA, $194D, $29F3, $3EB6, $2168, $1906\n#_1BDAD6: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDAE4: dw $7FFF, $0C63, $2168, $29AA, $29AD, $2190, $194D, $2168\n#_1BDAF4: dw $0CA5, $10EA, $194D, $29F3, $3EB6, $2ACC, $15E5\n#_1BDB02: dw $7FFF, $0C63, $1926, $2167, $216B, $1905, $10EA, $1906\n#_1BDB12: dw $0CA5, $10EA, $194D, $29F3, $3EB6, $29AD, $29AA\n#_1BDB20: dw $7FFF, $10E7, $154A, $1DAD, $2A10, $42F7, $5FBD, $7FFF\n#_1BDB30: dw $18C6, $2110, $35B8, $739C, $4108, $1ABA, $61AD\n#_1BDB3E: dw $7FFF, $0C63, $15AE, $1DF0, $15AE, $29AA, $5294, $739C\n#_1BDB4E: dw $24C6, $4526, $6167, $65C9, $4547, $59C8, $6A8C\n#_1BDB5C: dw $7FFF, $0CA5, $10EA, $0000, $1DEC, $1DEC, $29F3, $194D\n\n.dungeon_06\n; #RRGGBB : 202020, 503030, 704848, 987070, D0A0A0, 606080, 484868\n; #RRGGBB : F8F8F8, 202020, 503030, 704848, 987870, D0A8A0, 484858, 383848\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181818, 484868, 505070, 606080, 404060, 704848, 484858\n; #RRGGBB : 202020, 503030, 704848, 987070, D0A8A0, D09038, A83838\n; #RRGGBB : F8F8F8, 181818, 303050, 383858, 484860, 303050, 503030, 383848\n; #RRGGBB : 202020, 503030, 704848, 987070, D0A8A0, 585878, 484868\n; #RRGGBB : F8F8F8, 203838, 285048, 306058, 387068, 7888B0, C0C8E8, F8F8F8\n; #RRGGBB : 202020, 804040, C06868, E0E0E0, 404080, D8B028, 6060B8\n; #RRGGBB : F8F8F8, 202020, 483028, 603028, 684030, 484868, A0A0A0, E0E0E0\n; #RRGGBB : 282850, 404860, 505870, 606880, 383880, 4858B8, 7080E0\n; #RRGGBB : F8F8F8, 201818, 482828, 000000, 583838, 583838, 987870, 784840\n#_1BDB6C: dw $1084, $18CA, $252E, $39D3, $529A, $418C, $3529\n#_1BDB7A: dw $7FFF, $1084, $18CA, $252E, $39F3, $52BA, $2D29, $24E7\n#_1BDB8A: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDB98: dw $7FFF, $0C63, $3529, $394A, $418C, $3108, $252E, $2D29\n#_1BDBA8: dw $1084, $18CA, $252E, $39D3, $52BA, $1E5A, $1CF5\n#_1BDBB6: dw $7FFF, $0C63, $28C6, $2CE7, $3129, $28C6, $18CA, $24E7\n#_1BDBC6: dw $1084, $18CA, $252E, $39D3, $52BA, $3D6B, $3529\n#_1BDBD4: dw $7FFF, $1CE4, $2545, $2D86, $35C7, $5A2F, $7738, $7FFF\n#_1BDBE4: dw $1084, $2110, $35B8, $739C, $4108, $16DB, $5D8C\n#_1BDBF2: dw $7FFF, $1084, $14C9, $14CC, $190D, $3529, $5294, $739C\n#_1BDC02: dw $28A5, $3128, $396A, $41AC, $40E7, $5D69, $720E\n#_1BDC10: dw $7FFF, $0C64, $14A9, $0000, $1CEB, $1CEB, $39F3, $212F\n\n.dungeon_07\n; #RRGGBB : 282020, 403020, 583830, 886038, A88858, 785048, 604040\n; #RRGGBB : F8F8F8, 282020, 483020, 684830, 886038, A88858, 488080, 386060\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 282020, 483028, 583830, 704840, 403020, 705840, 584030\n; #RRGGBB : 303030, 206030, 309048, 48D870, F87830, A83030, 482820\n; #RRGGBB : F8F8F8, 282020, 402020, 482820, 583028, 302020, 604830, 403020\n; #RRGGBB : 282020, 705840, 987840, B8A880, 5068C8, 584030, 583830\n; #RRGGBB : F8F8F8, 282020, 483028, 583830, 704840, 906858, C0A080, F8E8C8\n; #RRGGBB : 202020, 804040, C06868, E0E0E0, 304880, D8B028, 5870C0\n; #RRGGBB : F8F8F8, 181818, 684020, 886038, A88858, 684840, A0A0A0, E0E0E0\n; #RRGGBB : 181828, 3038B0, 4850C0, 5860C8, 383888, 4858B8, 7088F0\n; #RRGGBB : F8F8F8, 282020, 483020, 000000, 000000, 286868, 282020, 282020\n#_1BDC20: dw $1085, $10C8, $18EB, $1D91, $2E35, $254F, $210C\n#_1BDC2E: dw $7FFF, $1085, $10C9, $192D, $1D91, $2E35, $4209, $3187\n#_1BDC3E: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDC4C: dw $7FFF, $1085, $14C9, $18EB, $212E, $10C8, $216E, $190B\n#_1BDC5C: dw $18C6, $1984, $2646, $3B69, $19FF, $18D5, $10A9\n#_1BDC6A: dw $7FFF, $1085, $1088, $10A9, $14CB, $1086, $192C, $10C8\n#_1BDC7A: dw $1085, $216E, $21F3, $42B7, $65AA, $190B, $18EB\n#_1BDC88: dw $7FFF, $1085, $14C9, $18EB, $212E, $2DB2, $4298, $67BF\n#_1BDC98: dw $1084, $2110, $35B8, $739C, $4126, $16DB, $61CB\n#_1BDCA6: dw $7FFF, $0C63, $110D, $1D91, $2E35, $212D, $5294, $739C\n#_1BDCB6: dw $1463, $58E6, $6149, $658B, $44E7, $5D69, $7A2E\n#_1BDCC4: dw $7FFF, $1085, $10C9, $0000, $0000, $35A5, $1085, $1085\n\n.dungeon_08\n; #RRGGBB : 181818, 404040, 686868, 909090, C8C8C8, 607060, 506050\n; #RRGGBB : F8F8F8, 181818, 404040, 686868, 909090, C8C8C8, 485848, 384838\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 202020, 405040, 506050, 606860, 405040, 686868, 485848\n; #RRGGBB : 181818, 404040, 686868, 909090, C8C8C8, B8B030, 706830\n; #RRGGBB : 000000, 202020, 304030, 384838, 485848, 304030, 404040, 384838\n; #RRGGBB : 181818, 585858, A0A0A0, E0E0E0, 308858, 50E098, 30A870\n; #RRGGBB : F8F8F8, 383020, 484020, 686038, 807850, C0B880, E8E0B8, F8F8F8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404080, D0A830, 6868C0\n; #RRGGBB : F8F8F8, 202020, 483820, 584828, 685838, 506050, A0A0A0, E0E0E0\n; #RRGGBB : 202020, 405040, 607060, B89868, 383888, 4858B8, 7890F8\n; #RRGGBB : F8F8F8, 181818, 383838, 000000, 000000, 607038, 909090, 686868\n#_1BDCD4: dw $0C63, $2108, $35AD, $4A52, $6739, $31CC, $298A\n#_1BDCE2: dw $7FFF, $0C63, $2108, $35AD, $4A52, $6739, $2569, $1D27\n#_1BDCF2: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDD00: dw $7FFF, $1084, $2148, $298A, $31AC, $2148, $35AD, $2569\n#_1BDD10: dw $0C63, $2108, $35AD, $4A52, $6739, $1AD7, $19AE\n#_1BDD1E: dw $0000, $1084, $1906, $1D27, $2569, $1906, $2108, $1D27\n#_1BDD2E: dw $0C63, $2D6B, $5294, $739C, $2E26, $4F8A, $3AA6\n#_1BDD3C: dw $7FFF, $10C7, $1109, $1D8D, $29F0, $42F8, $5F9D, $7FFF\n#_1BDD4C: dw $18C6, $2110, $35B8, $739C, $4108, $1ABA, $61AD\n#_1BDD5A: dw $7FFF, $1084, $10E9, $152B, $1D6D, $298A, $5294, $739C\n#_1BDD6A: dw $1084, $2148, $31CC, $3677, $44E7, $5D69, $7E4F\n#_1BDD78: dw $7FFF, $0C63, $1CE7, $0000, $0000, $1DCC, $4A52, $35AD\n\n.dungeon_09\n; #RRGGBB : 202020, 303830, 605030, 907850, C0B088, 606050, 505020\n; #RRGGBB : F8F8F8, 202020, 303830, 605030, 907850, C0B088, 502828, 302020\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181828, 405020, 505020, 606050, 285030, 506048, 502828\n; #RRGGBB : 202020, 303830, 605030, 907850, C0B088, 606050, 502828\n; #RRGGBB : F8F8F8, 181828, 382020, 402828, 404028, F8F8F8, 384038, 302020\n; #RRGGBB : 202020, 303830, 605030, 907850, C0B088, 606050, 502828\n; #RRGGBB : F8F8F8, 303040, 404060, 585880, 7070A0, 9090C0, C8C8F8, F8F8F8\n; #RRGGBB : 181828, 804040, C06868, E0E0E0, 404080, D8B028, 6868C0\n; #RRGGBB : F8F8F8, 202020, 204870, 306090, 5880B0, 505020, 888888, B0B0B0\n; #RRGGBB : 181828, 88D0F8, 4850D0, 3840C8, 383888, 4858B8, 7890F8\n; #RRGGBB : F8F8F8, 181828, 383058, 404040, F8F8F8, 683030, 907850, 685840\n#_1BDD88: dw $1084, $18E6, $194C, $29F2, $46D8, $298C, $114A\n#_1BDD96: dw $7FFF, $1084, $18E6, $194C, $29F2, $46D8, $14AA, $1086\n#_1BDDA6: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDDB4: dw $7FFF, $1463, $1148, $114A, $298C, $1945, $258A, $14AA\n#_1BDDC4: dw $1084, $18E6, $194C, $29F2, $46D8, $298C, $14AA\n#_1BDDD2: dw $7FFF, $1463, $1087, $14A8, $1508, $7FFF, $1D07, $1086\n#_1BDDE2: dw $1084, $18E6, $194C, $29F2, $46D8, $298C, $14AA\n#_1BDDF0: dw $7FFF, $20C6, $3108, $416B, $51CE, $6252, $7F39, $7FFF\n#_1BDE00: dw $1463, $2110, $35B8, $739C, $4108, $16DB, $61AD\n#_1BDE0E: dw $7FFF, $1084, $3924, $4986, $5A0B, $114A, $4631, $5AD6\n#_1BDE1E: dw $1463, $7F51, $6949, $6507, $44E7, $5D69, $7E4F\n#_1BDE2C: dw $7FFF, $1463, $2CC7, $2108, $7FFF, $18CD, $29F2, $216D\n\n.dungeon_0A\n; #RRGGBB : 202020, 404048, 505060, 787888, B8B8C8, 406060, 306030\n; #RRGGBB : F8F8F8, 202020, 404048, 505060, 787888, B8B8C8, 386038, 304830\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 202020, 284828, 306030, 406060, 686030, 505060, 386038\n; #RRGGBB : 202020, 404048, 505060, 787888, B8B8C8, 406060, 306030\n; #RRGGBB : F8F8F8, 202020, 382820, 403028, 483830, 302820, 404048, 304830\n; #RRGGBB : 202020, 504030, 605040, 706050, C0C0D0, 406060, 306030\n; #RRGGBB : F8F8F8, 483820, 504830, 605840, 706850, A08868, D0C0A8, F8E8D8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404080, D8B028, 6868C0\n; #RRGGBB : F8F8F8, 202020, 284828, 306030, 406060, 306030, A0A0A0, E0E0E0\n; #RRGGBB : 181828, 3840C8, 4850D0, 88D0F8, 383888, 4858B8, 7890F8\n; #RRGGBB : F8F8F8, 181818, 282828, 303030, 686030, 686030, 787888, 505050\n#_1BDE3C: dw $1084, $2508, $314A, $45EF, $66F7, $3188, $1986\n#_1BDE4A: dw $7FFF, $1084, $2508, $314A, $45EF, $66F7, $1D87, $1926\n#_1BDE5A: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDE68: dw $7FFF, $1084, $1525, $1986, $3188, $198D, $314A, $1D87\n#_1BDE78: dw $1084, $2508, $314A, $45EF, $66F7, $3188, $1986\n#_1BDE86: dw $7FFF, $1084, $10A7, $14C8, $18E9, $10A6, $2508, $1926\n#_1BDE96: dw $1084, $190A, $214C, $298E, $6B18, $3188, $1986\n#_1BDEA4: dw $7FFF, $10E9, $192A, $216C, $29AE, $3634, $571A, $6FBF\n#_1BDEB4: dw $18C6, $2110, $35B8, $739C, $4108, $16DB, $61AD\n#_1BDEC2: dw $7FFF, $1084, $1525, $1986, $3188, $1986, $5294, $739C\n#_1BDED2: dw $1463, $6507, $6949, $7F51, $44E7, $5D69, $7E4F\n#_1BDEE0: dw $7FFF, $0C63, $14A5, $18C6, $198D, $198D, $45EF, $294A\n\n.dungeon_0B\n; #RRGGBB : 181818, 285030, 307838, 80B070, B8D8A8, 509880, 408068\n; #RRGGBB : F8F8F8, 181818, 285030, 307838, 80B070, B8D8A8, 786838, 585020\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181818, 386850, 408068, 509880, 285848, 307830, 786838\n; #RRGGBB : 181818, 285030, 307838, 80B070, 386850, 408068, 509880\n; #RRGGBB : F8F8F8, 181818, 285048, 286050, 387058, 285048, 285028, 585020\n; #RRGGBB : 282828, 305830, 58B858, 50C090, F8F8F8, 886848, 683838\n; #RRGGBB : F8F8F8, 483828, 584828, 685838, 807050, 988868, B8A888, F8E8D8\n; #RRGGBB : 181828, 804040, C06868, E0E0E0, 404080, D8B028, 6868C0\n; #RRGGBB : F8F8F8, 181818, 382820, 503828, 584838, 387058, A0A0A0, E0E0E0\n; #RRGGBB : 303030, 0000E0, 2020F8, 2828F8, 185068, 186880, 1890A0\n; #RRGGBB : F8F8F8, 101018, 284828, 000000, 000000, 807038, 80B070, 685848\n#_1BDEF0: dw $0C63, $1945, $1DE6, $3AD0, $5777, $426A, $3608\n#_1BDEFE: dw $7FFF, $0C63, $1945, $1DE6, $3AD0, $5777, $1DAF, $114B\n#_1BDF0E: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDF1C: dw $7FFF, $0C63, $29A7, $3608, $426A, $2565, $19E6, $1DAF\n#_1BDF2C: dw $0C63, $1945, $1DE6, $3AD0, $29A7, $3608, $426A\n#_1BDF3A: dw $7FFF, $0C63, $2545, $2985, $2DC7, $2545, $1545, $114B\n#_1BDF4A: dw $14A5, $1966, $2EEB, $4B0A, $7FFF, $25B1, $1CED\n#_1BDF58: dw $7FFF, $14E9, $152B, $1D6D, $29D0, $3633, $46B7, $6FBF\n#_1BDF68: dw $1463, $2110, $35B8, $739C, $4108, $16DB, $61AD\n#_1BDF76: dw $7FFF, $0C63, $10A7, $14EA, $1D2B, $2DC7, $5294, $739C\n#_1BDF86: dw $18C6, $7000, $7C84, $7CA5, $3543, $41A3, $5243\n#_1BDF94: dw $7FFF, $0C42, $1525, $0000, $0000, $1DD0, $3AD0, $256D\n\n.dungeon_0C\n; #RRGGBB : 282020, 483020, 684830, 886038, A88858, 785048, 604040\n; #RRGGBB : F8F8F8, 282020, 483020, 684830, 886038, A88858, 488080, 386060\n; #RRGGBB : 303030, 585858, A0A0A0, E8E8E8, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 282020, 483028, 583830, 704840, 403020, 705840, 584030\n; #RRGGBB : F8F8F8, 989868, C0C068, E8E868, 282828, 484868, 707068\n; #RRGGBB : F8F8F8, 282020, 402020, 482820, 583028, 302020, 604830, 403020\n; #RRGGBB : 181828, 404028, 585830, 909060, C0C0A0, 604030, 583830\n; #RRGGBB : F8F8F8, 282020, 483028, 583830, 704840, 906858, C0A080, F8E8C8\n; #RRGGBB : 202020, 804040, C06868, E0E0E0, 404868, D8B028, 6068B0\n; #RRGGBB : F8F8F8, 181818, 684020, 886038, A88858, 684840, A0A0A0, E0E0E0\n; #RRGGBB : 282828, 901818, E02020, F87820, 384898, 6078C0, 7090F8\n; #RRGGBB : F8F8F8, 282020, 483020, 000000, 707030, 286868, 282020, 282020\n#_1BDFA4: dw $1085, $10C9, $192D, $1D91, $2E35, $254F, $210C\n#_1BDFB2: dw $7FFF, $1085, $10C9, $192D, $1D91, $2E35, $4209, $3187\n#_1BDFC2: dw $18C6, $2D6B, $5294, $77BD, $252F, $1ABA, $29F5\n#_1BDFD0: dw $7FFF, $1085, $14C9, $18EB, $212E, $10C8, $216E, $190B\n#_1BDFE0: dw $7FFF, $3673, $3718, $37BD, $14A5, $3529, $35CE\n#_1BDFEE: dw $7FFF, $1085, $1088, $10A9, $14CB, $1086, $192C, $10C8\n#_1BDFFE: dw $1463, $1508, $196B, $3252, $5318, $190C, $18EB\n#_1BE00C: dw $7FFF, $1085, $14C9, $18EB, $212E, $2DB2, $4298, $67BF\n#_1BE01C: dw $1084, $2110, $35B8, $739C, $3528, $16DB, $59AC\n#_1BE02A: dw $7FFF, $0C63, $110D, $1D91, $2E35, $212D, $5294, $739C\n#_1BE03A: dw $14A5, $0C72, $109C, $11FF, $4D27, $61EC, $7E4E\n#_1BE048: dw $7FFF, $1085, $10C9, $0000, $19CE, $35A5, $1085, $1085\n\n.dungeon_0D\n; #RRGGBB : 181818, 583048, 785850, A08868, C8B890, 686870, 585860\n; #RRGGBB : F8F8F8, 181818, 583048, 785850, A08868, C8B890, 386060, 284848\n; #RRGGBB : 303030, 585858, A0A0A0, E0E0E0, 784848, D0A830, A87850\n; #RRGGBB : F8F8F8, 181818, 505058, 585860, 686870, 502828, 785850, 386060\n; #RRGGBB : 181818, 583048, 785850, A08868, C8B890, 30A828, 287028\n; #RRGGBB : 000000, 181818, 383840, 404048, 484850, 303040, 583048, 284848\n; #RRGGBB : 181818, 583048, 785850, A08868, C8B890, 887848, 786838\n; #RRGGBB : F8F8F8, 402020, 502828, 683030, 984848, D08888, E8D0D0, F8F8F8\n; #RRGGBB : 303030, 804040, C06868, E0E0E0, 404878, D0A830, 7070B8\n; #RRGGBB : F8F8F8, 402020, 502828, 683030, 984848, 683030, 984848, 000000\n; #RRGGBB : 282828, 284068, 3070A0, 4898B0, C8B890, 583048, 000000\n; #RRGGBB : F8F8F8, 181818, 503048, 000000, 000000, 383868, A08868, A89878\n#_1BE058: dw $0C63, $24CB, $296F, $3634, $4AF9, $39AD, $316B\n#_1BE066: dw $7FFF, $0C63, $24CB, $296F, $3634, $4AF9, $3187, $2525\n#_1BE076: dw $18C6, $2D6B, $5294, $739C, $252F, $1ABA, $29F5\n#_1BE084: dw $7FFF, $0C63, $2D4A, $316B, $39AD, $14AA, $296F, $3187\n#_1BE094: dw $0C63, $24CB, $296F, $3634, $4AF9, $16A6, $15C5\n#_1BE0A2: dw $0000, $0C63, $20E7, $2508, $2929, $20C6, $24CB, $2525\n#_1BE0B2: dw $0C63, $24CB, $296F, $3634, $4AF9, $25F1, $1DAF\n#_1BE0C0: dw $7FFF, $1088, $14AA, $18CD, $2533, $463A, $6B5D, $7FFF\n#_1BE0D0: dw $18C6, $2110, $35B8, $739C, $3D28, $1ABA, $5DCE\n#_1BE0DE: dw $7FFF, $1088, $14AA, $18CD, $2533, $18CD, $2533, $0000\n#_1BE0EE: dw $14A5, $3505, $51C6, $5A69, $4AF9, $24CB, $0000\n#_1BE0FC: dw $7FFF, $0C63, $24CA, $0000, $0000, $34E7, $3634, $3E75\n\n.dungeon_0E\n; #RRGGBB : 181818, 483028, 686040, 989878, C8C8A8, 705020, 707020\n; #RRGGBB : F8F8F8, 181818, 483028, 686040, 989878, C8C8A8, 705020, 707020\n; #RRGGBB : 203028, 585858, A0A0A0, E8E8E8, 904848, D8B028, C87848\n; #RRGGBB : F8F8F8, 181818, 483828, 604030, 684838, 483828, 584820, 483020\n; #RRGGBB : 181818, 503030, 807020, 18A028, F8A828, 6850F8, D81818\n; #RRGGBB : F8F8F8, 181818, 303020, 403828, 484030, 303020, 584820, 483020\n; #RRGGBB : 181818, 502838, 804820, 988050, 682020, F8F8F8, 603848\n; #RRGGBB : F8F8F8, 181818, 682020, 985050, C08080, F8C0C0, 584820, 483020\n; #RRGGBB : 202020, A83838, D86868, E0E0E0, 484868, D8B028, 6868B0\n; #RRGGBB : F8F8F8, 181818, 303020, 403828, 484030, 604030, A0A0A0, E0E0E0\n; #RRGGBB : 181818, 804020, B87830, E8B848, 4848F8, D83030, 18A028\n; #RRGGBB : F8F8F8, 181818, 483028, 000000, 682020, 682020, 204020, 204020\n#_1BE10C: dw $0C63, $14C9, $218D, $3E73, $5739, $114E, $11CE\n#_1BE11A: dw $7FFF, $0C63, $14C9, $218D, $3E73, $5739, $114E, $11CE\n#_1BE12A: dw $14C4, $2D6B, $5294, $77BD, $2532, $16DB, $25F9\n#_1BE138: dw $7FFF, $0C63, $14E9, $190C, $1D2D, $14E9, $112B, $10C9\n#_1BE148: dw $0C63, $18CA, $11D0, $1683, $16BF, $7D4D, $0C7B\n#_1BE156: dw $7FFF, $0C63, $10C6, $14E8, $1909, $10C6, $112B, $10C9\n#_1BE166: dw $0C63, $1CAA, $1130, $2A13, $108D, $7FFF, $24EC\n#_1BE174: dw $7FFF, $0C63, $108D, $2953, $4218, $631F, $112B, $10C9\n#_1BE184: dw $1084, $1CF5, $35BB, $739C, $3529, $16DB, $59AD\n#_1BE192: dw $7FFF, $0C63, $10C6, $14E8, $1909, $190C, $5294, $739C\n#_1BE1A2: dw $0C63, $1110, $19F7, $26FD, $7D29, $18DB, $1683\n#_1BE1B0: dw $7FFF, $0C63, $14C9, $0000, $108D, $108D, $1104, $1104\n\n.dungeon_0F\n; #RRGGBB : 202020, 503848, 784848, 987070, D09898, B0B078, 585828\n; #RRGGBB : F8F8F8, 202020, 503848, 784848, 987070, D09898, B0B078, 585828\n; #RRGGBB : 203028, 585858, A0A0A0, E8E8E8, 904848, D8B028, C87848\n; #RRGGBB : F8F8F8, 202020, 604040, 704848, 805050, 306030, 906058, 585828\n; #RRGGBB : 202020, 503848, 784848, 987070, E0E0F8, 6060F8, 2828C8\n; #RRGGBB : F8F8F8, 202040, 404070, 505078, 606088, 306030, 906058, 585828\n; #RRGGBB : 202020, 604838, 807840, A09860, D83838, E0E0F8, 484898\n; #RRGGBB : F8F8F8, 202020, 0068D8, 00D8F8, A09860, F8F8F8, F87878, D83838\n; #RRGGBB : 202020, A89820, 484890, E0E0E0, 284028, F87878, D83838\n; #RRGGBB : F8F8F8, 202020, 483050, 584060, 605068, 306030, 906058, 585828\n; #RRGGBB : 202020, 886058, 584050, D8A040, 406820, D83838, 981010\n; #RRGGBB : F8F8F8, 202020, 486068, 004800, 386838, 306030, 183018, 183018\n#_1BE1C0: dw $1084, $24EA, $252F, $39D3, $4E7A, $3ED6, $156B\n#_1BE1CE: dw $7FFF, $1084, $24EA, $252F, $39D3, $4E7A, $3ED6, $156B\n#_1BE1DE: dw $14C4, $2D6B, $5294, $77BD, $2532, $16DB, $25F9\n#_1BE1EC: dw $7FFF, $1084, $210C, $252E, $2950, $1986, $2D92, $156B\n#_1BE1FC: dw $1084, $24EA, $252F, $39D3, $7F9C, $7D8C, $64A5\n#_1BE20A: dw $7FFF, $2084, $3908, $3D4A, $458C, $1986, $2D92, $156B\n#_1BE21A: dw $1084, $1D2C, $21F0, $3274, $1CFB, $7F9C, $4D29\n#_1BE228: dw $7FFF, $1084, $6DA0, $7F60, $3274, $7FFF, $3DFF, $1CFB\n#_1BE238: dw $1084, $1275, $4929, $739C, $1505, $3DFF, $1CFB\n#_1BE246: dw $7FFF, $1084, $28C9, $310B, $354C, $1986, $2D92, $156B\n#_1BE256: dw $1084, $2D91, $290B, $229B, $11A8, $1CFB, $0853\n#_1BE264: dw $7FFF, $1084, $3589, $0120, $1DA7, $1986, $0CC3, $0CC3\n\n.dungeon_10\n; #RRGGBB : 282818, 483820, 705838, A09058, D8C880, 88A888, 608060\n; #RRGGBB : F8F8F8, 282818, 583820, 705838, A09058, C8C878, 385038, 283028\n; #RRGGBB : 203028, 585858, A0A0A0, E8E8E8, 904848, D8B028, C87848\n; #RRGGBB : F8F8F8, 202020, 404058, 505068, 606070, F8F8F8, 705838, 385038\n; #RRGGBB : 282818, 483820, 705838, A09058, D8C880, C89038, A85028\n; #RRGGBB : F8F8F8, 181818, 604838, 886038, 907040, 283848, 584020, 283028\n; #RRGGBB : 282818, 304830, 507050, 80A080, D0D0B0, A09058, 705838\n; #RRGGBB : F8F8F8, 383820, 583820, 705838, A09058, B8B880, E8E8B8, F8F8F8\n; #RRGGBB : 202020, A83838, D86868, E0E0E0, 484868, D8B028, 6868B0\n; #RRGGBB : F8F8F8, 181818, 282848, 303050, 303050, 404058, A0A0A0, E0E0E0\n; #RRGGBB : 202020, 684040, 886060, C09898, F8F0E8, 705838, A09058\n; #RRGGBB : F8F8F8, 202018, 503020, 000000, 000000, 883838, A09058, 888058\n#_1BE274: dw $0CA5, $10E9, $1D6E, $2E54, $433B, $46B1, $320C\n#_1BE282: dw $7FFF, $0CA5, $10EB, $1D6E, $2E54, $3F39, $1D47, $14C5\n#_1BE292: dw $14C4, $2D6B, $5294, $77BD, $2532, $16DB, $25F9\n#_1BE2A0: dw $7FFF, $1084, $2D08, $354A, $398C, $7FFF, $1D6E, $1D47\n#_1BE2B0: dw $0CA5, $10E9, $1D6E, $2E54, $433B, $1E59, $1555\n#_1BE2BE: dw $7FFF, $0C63, $1D2C, $1D91, $21D2, $24E5, $110B, $14C5\n#_1BE2CE: dw $0CA5, $1926, $29CA, $4290, $5B5A, $2E54, $1D6E\n#_1BE2DC: dw $7FFF, $10E7, $10EB, $1D6E, $2E54, $42F7, $5FBD, $7FFF\n#_1BE2EC: dw $1084, $1CF5, $35BB, $739C, $3529, $16DB, $59AD\n#_1BE2FA: dw $7FFF, $0C63, $24A5, $28C6, $28C6, $2D08, $5294, $739C\n#_1BE30A: dw $1084, $210D, $3191, $4E78, $77DF, $1D6E, $2E54\n#_1BE318: dw $7FFF, $0C84, $10CA, $0000, $0000, $1CF1, $2E54, $2E11\n\n.dungeon_11\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n#_1BE328: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE336: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE346: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE354: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE364: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE372: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE382: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE390: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3A0: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3AE: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3BE: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3CC: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n\n.dungeon_12\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 000000, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8, F0F0E8\n; #RRGGBB : 282828, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 282828, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n#_1BE3DC: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3EA: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE3FA: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE408: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE418: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE426: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE436: dw $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE444: dw $0000, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE, $77DE\n#_1BE454: dw $14A5, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE462: dw $0000, $14A5, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE472: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE480: dw $0000, $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n\n.dungeon_13\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 282828, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 282828, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 282828, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n; #RRGGBB : 000000, 000000, 700070, C000C0, F800F8, F868F8, F898F8, F8C8F8\n#_1BE490: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE49E: dw $0000, $14A5, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4AE: dw $14A5, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4BC: dw $0000, $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4CC: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4DA: dw $0000, $14A5, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4EA: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE4F8: dw $0000, $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE508: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE516: dw $0000, $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE526: dw $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n#_1BE534: dw $0000, $0000, $380E, $6018, $7C1F, $7DBF, $7E7F, $7F3F\n\n.dungeonmap_bg_00\n; #RRGGBB : 000000, 3878E0, 3878E0, 3878E0, 3878E0, 3878E0, A8A8F8, 383838\n; #RRGGBB : 000000, F8F8F8, E8A800, 688898, 98B8C8, C8E0F8, 688898, C8E0F8\n; #RRGGBB : 000000, 003868, 003868, 003868, 003868, 003868, A8A8F8, 383838\n; #RRGGBB : 000000, F8F8F8, 385898, F07800, E8A800, F0D878, 98B8C8, C8E0F8\n; #RRGGBB : 000000, 3878E0, F8D070, 3878E0, 3878E0, 3878E0, A8A8F8, 383838\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000\n; #RRGGBB : 000000, 3878E0, 3878E0, F87858, F8D070, 3878E0, A8A8F8, 383838\n; #RRGGBB : 000000, F8F8F8, 385898, 688898, 98B8C8, C8E0F8, E8A800, F0D878\n; #RRGGBB : 000000, 481800, 582808, 704018, 905028, A06838, A08048, A89050\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000\n; #RRGGBB : 000000, 003070, 104080, 205090, 3060A0, 4070B0, 5080C0, 6090D0\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE544: dw $0000, $71E7, $71E7, $71E7, $71E7, $71E7, $7EB5, $1CE7\n#_1BE554: dw $0000, $7FFF, $02BD, $4E2D, $66F3, $7F99, $4E2D, $7F99\n#_1BE564: dw $0000, $34E0, $34E0, $34E0, $34E0, $34E0, $7EB5, $1CE7\n#_1BE574: dw $0000, $7FFF, $4D67, $01FE, $02BD, $3F7E, $66F3, $7F99\n#_1BE584: dw $0000, $71E7, $3B5F, $71E7, $71E7, $71E7, $7EB5, $1CE7\n#_1BE594: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n#_1BE5A4: dw $0000, $71E7, $71E7, $2DFF, $3B5F, $71E7, $7EB5, $1CE7\n#_1BE5B4: dw $0000, $7FFF, $4D67, $4E2D, $66F3, $7F99, $02BD, $3F7E\n#_1BE5C4: dw $0000, $0069, $04AB, $0D0E, $1552, $1DB4, $2614, $2A55\n#_1BE5D4: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n#_1BE5E4: dw $0000, $38C0, $4102, $4944, $5186, $59C8, $620A, $6A4C\n#_1BE5F4: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_00\n; #RRGGBB : 504030, 485068, 607888, 8090D8, 686048, 908870, D0C8B8\n#_1BE604: dw $190A, $3549, $45EC, $6E50, $258D, $3A32, $5F3A\n\n.owanim_01\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE612: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_02\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE620: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_03\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE62E: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_04\n; #RRGGBB : 202020, 700000, C81020, F84050, 403838, 101010, 484040\n#_1BE63C: dw $1084, $000E, $1059, $291F, $1CE8, $0842, $2109\n\n.owanim_05\n; #RRGGBB : 181818, 282880, 3858B8, 70A8F8, C0C0F8, 787030, E0D0F0\n#_1BE64A: dw $0C63, $40A5, $5D67, $7EAE, $7F18, $19CF, $7B5C\n\n.owanim_06\n; #RRGGBB : 203010, 201000, 005028, 308860, 503020, 006030, 806038\n#_1BE658: dw $08C4, $0044, $1540, $3226, $10CA, $1980, $1D90\n\n.owanim_07\n; #RRGGBB : 282828, 304878, 3860A8, 70B0F0, 483828, 5880C0, 786038\n#_1BE666: dw $14A5, $3D26, $5587, $7ACE, $14E9, $620B, $1D8F\n\n.owanim_08\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE674: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_09\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE682: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_0A\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE690: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_0B\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE69E: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_0C\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE6AC: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owanim_0D\n; #RRGGBB : 000000, 000000, 000000, 000000, 000000, 000000, 000000\n#_1BE6BA: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000\n\n.owmain_00\n; #RRGGBB : 282828, 483828, 604828, 786038, 307030, 489848, 887848\n; #RRGGBB : 282828, 483828, 604828, 786038, 686028, 888040, 887848\n; #RRGGBB : 282828, 483828, 604828, 786038, 604828, 887848, 887848\n; #RRGGBB : 282828, 508070, 78B890, B0E8B8, 285828, 489848, 30D030\n; #RRGGBB : 282828, 605030, 887048, A08860, 287838, 489848, 408848\n#_1BE6C8: dw $14A5, $14E9, $152C, $1D8F, $19C6, $2669, $25F1\n#_1BE6D6: dw $14A5, $14E9, $152C, $1D8F, $158D, $2211, $25F1\n#_1BE6E4: dw $14A5, $14E9, $152C, $1D8F, $152C, $25F1, $25F1\n#_1BE6F2: dw $14A5, $3A0A, $4AEF, $5FB6, $1565, $2669, $1B46\n#_1BE700: dw $14A5, $194C, $25D1, $3234, $1DE5, $2669, $2628\n\n.owmain_01\n; #RRGGBB : 181818, 382018, 503020, 684820, 606030, 908850, 806038\n; #RRGGBB : 181818, 382818, 503020, 684820, 705830, 907850, 806038\n; #RRGGBB : 181818, 382818, 503020, 684820, 684820, 806038, 806038\n; #RRGGBB : 203010, 487040, 709868, A0C898, 606030, 908850, A09860\n; #RRGGBB : 203010, 886898, 98B0E0, B8A820, 606030, 908850, 787038\n#_1BE70E: dw $0C63, $0C87, $10CA, $112D, $198C, $2A32, $1D90\n#_1BE71C: dw $0C63, $0CA7, $10CA, $112D, $196E, $29F2, $1D90\n#_1BE72A: dw $0C63, $0CA7, $10CA, $112D, $112D, $1D90, $1D90\n#_1BE738: dw $08C4, $21C9, $366E, $4F34, $198C, $2A32, $3274\n#_1BE746: dw $08C4, $4DB1, $72D3, $12B7, $198C, $2A32, $1DCF\n\n.owmain_02\n; #RRGGBB : 181818, 382018, 503020, 684820, 686028, 787030, 806038\n; #RRGGBB : 181818, 382018, 503020, 684820, B0E8D8, 805040, F8F8F8\n; #RRGGBB : 181818, 382018, 503020, 684820, 684820, 806038, 806038\n; #RRGGBB : 303828, 508070, 78B890, B0F0B8, 686028, 787030, F868F8\n; #RRGGBB : 282828, 605020, 887038, A88858, 686028, 787030, 806038\n#_1BE754: dw $0C63, $0C87, $10CA, $112D, $158D, $19CF, $1D90\n#_1BE762: dw $0C63, $0C87, $10CA, $112D, $6FB6, $2150, $7FFF\n#_1BE770: dw $0C63, $0C87, $10CA, $112D, $112D, $1D90, $1D90\n#_1BE77E: dw $14E6, $3A0A, $4AEF, $5FD6, $158D, $19CF, $7DBF\n#_1BE78C: dw $14A5, $114C, $1DD1, $2E35, $158D, $19CF, $1D90\n\n.owmain_03\n; #RRGGBB : 202010, 383018, 504028, 685028, 504028, 605038, 786840\n; #RRGGBB : 202010, 383018, 484028, 605830, A87880, 101010, D0A0A8\n; #RRGGBB : 202010, 383018, 484028, 605830, 484028, 786840, 786840\n; #RRGGBB : 202020, 487040, 709868, A0C898, 504028, 605038, 706048\n; #RRGGBB : 202020, 886898, 98B0E0, B8A820, 483820, 605038, 504028\n#_1BE79A: dw $0884, $0CC7, $150A, $154D, $150A, $1D4C, $21AF\n#_1BE7A8: dw $0884, $0CC7, $1509, $196C, $41F5, $0842, $569A\n#_1BE7B6: dw $0884, $0CC7, $1509, $196C, $1509, $21AF, $21AF\n#_1BE7C4: dw $1084, $21C9, $366E, $4F34, $150A, $1D4C, $258E\n#_1BE7D2: dw $1084, $4DB1, $72D3, $12B7, $10E9, $1D4C, $150A\n\n.owmain_04\n; #RRGGBB : 202000, 282800, 383800, 403800, 585000, 684000, C04000\n; #RRGGBB : 002800, 004000, 105010, 186018, 206820, 606048, 404030\n; #RRGGBB : 303848, 101828, 202838, 384050, 683038, 784048, 703840\n; #RRGGBB : 586070, 485060, 304050, 303848, 202828, 606048, 404030\n; #RRGGBB : 202020, 404030, 606048, 989880, B8B8A0, 582030, 904828\n#_1BE7E0: dw $0084, $00A5, $00E7, $00E8, $014B, $010D, $0118\n#_1BE7EE: dw $00A0, $0100, $0942, $0D83, $11A4, $258C, $1908\n#_1BE7FC: dw $24E6, $1462, $1CA4, $2907, $1CCD, $250F, $20EE\n#_1BE80A: dw $398B, $3149, $2906, $24E6, $14A4, $258C, $1908\n#_1BE818: dw $1084, $1908, $258C, $4273, $52F7, $188B, $1532\n\n.owmain_05\n; #RRGGBB : 6060B8, 5060A8, 98A8E8, A0B8F0, 184818, 207020, 38A040\n; #RRGGBB : 404090, 5060A8, 98A8E8, A0B8F0, 182858, 206068, 488078\n; #RRGGBB : 7880D0, 8090D8, 8898D8, 98A8E8, 5060A8, 7078D0, B8C0F0\n; #RRGGBB : 504030, 485068, 607888, 8090D8, 686048, 908870, D0C8B8\n; #RRGGBB : 202020, 404030, 606048, 989880, B8B8A0, 582030, 904828\n#_1BE826: dw $5D8C, $558A, $76B3, $7AF4, $0D23, $11C4, $2287\n#_1BE834: dw $4908, $558A, $76B3, $7AF4, $2CA3, $3584, $3E09\n#_1BE842: dw $6A0F, $6E50, $6E71, $76B3, $558A, $69EE, $7B17\n#_1BE850: dw $190A, $3549, $45EC, $6E50, $258D, $3A32, $5F3A\n#_1BE85E: dw $1084, $1908, $258C, $4273, $52F7, $188B, $1532\n\n.owaux_00\n; #RRGGBB : 283028, 705840, 987850, B89868, 683838, 905050, B8B088\n; #RRGGBB : 283028, 508070, 78B890, B0E8B8, D0F0D0, 307030, 489848\n; #RRGGBB : 282828, 605030, 887040, A89060, 286840, 407840, 285830\n#_1BE86C: dw $14C5, $216E, $29F3, $3677, $1CED, $2952, $46D7\n#_1BE87A: dw $14C5, $3A0A, $4AEF, $5FB6, $6BDA, $19C6, $2669\n#_1BE888: dw $14A5, $194C, $21D1, $3255, $21A5, $21E8, $1965\n\n.owaux_01\n; #RRGGBB : 282828, 805868, B888A0, E0C0D0, 989840, 586090, 8090C0\n; #RRGGBB : 282828, 605030, 887040, 285830, 905050, 307030, 703838\n; #RRGGBB : 282828, 887050, C0B098, E8E8E8, 385030, 688060, 307030\n#_1BE896: dw $14A5, $3570, $5237, $6B1C, $2273, $498B, $6250\n#_1BE8A4: dw $14A5, $194C, $21D1, $1965, $2952, $19C6, $1CEE\n#_1BE8B2: dw $14A5, $29D1, $4ED8, $77BD, $1947, $320D, $19C6\n\n.owaux_02\n; #RRGGBB : 282828, 886038, C88038, E8A848, F8D0D0, B85858, D88090\n; #RRGGBB : 282828, F8F8F8, 206878, 888888, 883838, F8F8F8, F8F8F8\n; #RRGGBB : 383028, 787058, A09878, E0D0C0, 307030, 489848, F8F8F0\n#_1BE8C0: dw $14A5, $1D91, $1E19, $26BD, $6B5F, $2D77, $4A1B\n#_1BE8CE: dw $14A5, $7FFF, $3DA4, $4631, $1CF1, $7FFF, $7FFF\n#_1BE8DC: dw $14C7, $2DCF, $3E74, $635C, $19C6, $2669, $7BFF\n\n.owaux_03\n; #RRGGBB : 98C0F8, A8D0F8, C8F0F8, E8F8F8, 407060, 000000, 80B0F8\n; #RRGGBB : 701008, 480000, E03818, F8F0C0, 989898, F88860, A81818\n; #RRGGBB : F8F8F8, 787878, 282828, 282828, 000000, C0C0C0, 989898\n#_1BE8EA: dw $7F13, $7F55, $7FD9, $7FFD, $31C8, $0000, $7ED0\n#_1BE8F8: dw $044E, $0009, $0CFC, $63DF, $4E73, $323F, $0C75\n#_1BE906: dw $7FFF, $3DEF, $14A5, $14A5, $0000, $6318, $4E73\n\n.owaux_04\n; #RRGGBB : 303030, 786038, 5880C0, C0E0D0, 387838, 489848, 887848\n; #RRGGBB : 303030, 3860A0, B08838, F0E078, 387838, 489848, 5880C0\n; #RRGGBB : 282828, 483828, 604828, 786038, 307030, 489848, 887848\n#_1BE914: dw $18C6, $1D8F, $620B, $6B98, $1DE7, $2669, $25F1\n#_1BE922: dw $18C6, $5187, $1E36, $3F9E, $1DE7, $2669, $620B\n#_1BE930: dw $14A5, $14E9, $152C, $1D8F, $19C6, $2669, $25F1\n\n.owaux_05\n; #RRGGBB : 202010, 504808, 787840, A8A870, C8C890, 605038, 602830\n; #RRGGBB : 202010, 504808, 787840, A8A870, C8C890, 605038, 602830\n; #RRGGBB : 202010, 404028, 605830, 786840, A87880, 605038, D0A0A8\n#_1BE93E: dw $0884, $052A, $21EF, $3AB5, $4B39, $1D4C, $18AC\n#_1BE94C: dw $0884, $052A, $21EF, $3AB5, $4B39, $1D4C, $18AC\n#_1BE95A: dw $0884, $1508, $196C, $21AF, $41F5, $1D4C, $569A\n\n.owaux_06\n; #RRGGBB : 103070, 1840B0, 3868E8, 58B8F8, 90E8F8, 787030, 181818\n; #RRGGBB : 181818, 584828, 908050, C0B070, 501828, 806038, 483828\n; #RRGGBB : 181818, 604838, 805040, B09848, B0E8D8, 787030, F8F8F8\n#_1BE968: dw $38C2, $5903, $75A7, $7EEB, $7FB2, $19CF, $0C63\n#_1BE976: dw $0C63, $152B, $2A12, $3AD8, $146A, $1D90, $14E9\n#_1BE984: dw $0C63, $1D2C, $2150, $2676, $6FB6, $19CF, $7FFF\n\n.owaux_07\n; #RRGGBB : 181818, 382018, 503020, 684820, 686028, 787030, 806038\n; #RRGGBB : 181818, 382018, 503020, 684820, B0E8D8, F8F8F8, 806038\n; #RRGGBB : 181818, 306060, 307070, 887058, C0C0F8, 509860, E0D0F0\n#_1BE992: dw $0C63, $0C87, $10CA, $112D, $158D, $19CF, $1D90\n#_1BE9A0: dw $0C63, $0C87, $10CA, $112D, $6FB6, $7FFF, $1D90\n#_1BE9AE: dw $0C63, $3186, $39C6, $2DD1, $7F18, $326A, $7B5C\n\n.owaux_08\n; #RRGGBB : 282828, 508070, 78B890, A0E0A8, 307030, 988870, B0A888\n; #RRGGBB : 282828, 685838, 887858, F8F8F8, 286840, B87890, A06068\n; #RRGGBB : 282828, 705840, 987850, B89868, 284860, 406888, B8B088\n#_1BE9BC: dw $14A5, $3A0A, $4AEF, $5794, $19C6, $3A33, $46B6\n#_1BE9CA: dw $14A5, $1D6D, $2DF1, $7FFF, $21A5, $49F7, $3594\n#_1BE9D8: dw $14A5, $216E, $29F3, $3677, $3125, $45A8, $46D7\n\n.owaux_09\n; #RRGGBB : 282828, 586848, 889860, B8C088, 304830, 483828, 887848\n; #RRGGBB : 282828, 605030, 887040, 888040, 989030, 989040, 706828\n; #RRGGBB : 282828, 586848, 889860, B8C088, D0D0B8, 706830, 888040\n#_1BE9E6: dw $14A5, $25AB, $3271, $4717, $1926, $14E9, $25F1\n#_1BE9F4: dw $14A5, $194C, $21D1, $2211, $1A53, $2253, $15AE\n#_1BEA02: dw $14A5, $25AB, $3271, $4717, $5F5A, $19AE, $2211\n\n.owaux_0A\n; #RRGGBB : 000050, 001070, 082888, 2040A0, 6060C8, 6080D0, 489848\n; #RRGGBB : 383838, 588060, 98B888, C8E0A0, F0F8D0, 406880, 489848\n; #RRGGBB : 284028, 605020, 489848, 206830, 288048, 289860, 40B068\n#_1BEA10: dw $2800, $3840, $44A1, $5104, $658C, $6A0C, $2669\n#_1BEA1E: dw $1CE7, $320B, $46F3, $5399, $6BFE, $41A8, $2669\n#_1BEA2C: dw $1505, $114C, $2669, $19A4, $2605, $3265, $36C8\n\n.owaux_0B\n; #RRGGBB : 403800, B0C860, 706050, A09088, 88A850, 587828, A8B870\n; #RRGGBB : 202010, 503808, 685020, 887040, B08020, D0B038, 805000\n; #RRGGBB : 202010, 584818, 887830, B8A878, E8E8B0, 705830, 907850\n#_1BEA3A: dw $00E8, $3336, $298E, $4654, $2AB1, $15EB, $3AF5\n#_1BEA48: dw $0884, $04EA, $114D, $21D1, $1216, $1EDA, $0150\n#_1BEA56: dw $0884, $0D2B, $19F1, $3EB7, $5BBD, $196E, $29F2\n\n.owaux_0C\n; #RRGGBB : 000000, 080810, 181820, 282830, 383858, 484868, 585890\n; #RRGGBB : 382818, 705050, A08088, D0B8B8, 686838, F8F8F8, A8B870\n; #RRGGBB : 202010, 606040, 909058, A8B870, 607038, 809058, 484820\n#_1BEA64: dw $0000, $0821, $1063, $18A5, $2CE7, $3529, $496B\n#_1BEA72: dw $0CA7, $294E, $4614, $5EFA, $1DAD, $7FFF, $3AF5\n#_1BEA80: dw $0884, $218C, $2E52, $3AF5, $1DCC, $2E50, $1129\n\n.owaux_0D\n; #RRGGBB : 204048, 405858, 607880, 609898, 80B0B0, 006030, A8D8D8\n; #RRGGBB : 202010, 006030, 505818, 788830, C8C060, A87810, E0A858\n; #RRGGBB : 202010, 005028, 003020, 807838, 705830, 907850, 006030\n#_1BEA8E: dw $2504, $2D68, $41EC, $4E6C, $5AD0, $1980, $6F75\n#_1BEA9C: dw $0884, $1980, $0D6A, $1A2F, $3319, $09F5, $2EBC\n#_1BEAAA: dw $0884, $1540, $10C0, $1DF0, $196E, $29F2, $1980\n\n.owaux_0E\n; #RRGGBB : 181818, 684820, 006030, 108050, 606030, 908850, 806038\n; #RRGGBB : 181818, 005028, F8F8F8, F8F8F8, 606030, 908850, 006030\n; #RRGGBB : 181818, 382018, 503020, 684820, 606030, 908850, 806038\n#_1BEAB8: dw $0C63, $112D, $1980, $2A02, $198C, $2A32, $1D90\n#_1BEAC6: dw $0C63, $1540, $7FFF, $7FFF, $198C, $2A32, $1980\n#_1BEAD4: dw $0C63, $0C87, $10CA, $112D, $198C, $2A32, $1D90\n\n.owaux_0F\n; #RRGGBB : 403828, 806838, A89858, D0C078, F8F8F8, C0C088, D0D098\n; #RRGGBB : 202010, 503808, 685020, 887040, B87060, D89888, 985048\n; #RRGGBB : 303020, 906848, B89060, D8B070, A06058, C08070, E0A898\n#_1BEAE2: dw $14E8, $1DB0, $2E75, $3F1A, $7FFF, $4718, $4F5A\n#_1BEAF0: dw $0884, $04EA, $114D, $21D1, $31D7, $467B, $2553\n#_1BEAFE: dw $10C6, $25B2, $3257, $3ADB, $2D94, $3A18, $4EBC\n\n.owaux_10\n; #RRGGBB : 181818, 906848, B89060, D8B868, 405050, 605870, 808090\n; #RRGGBB : 303828, 487040, 709868, A0C898, C0E8B8, 606030, 908850\n; #RRGGBB : 202010, 503808, 685020, 887040, 606830, 788848, 385838\n#_1BEB0C: dw $0C63, $25B2, $3257, $36FB, $2948, $396C, $4A10\n#_1BEB1A: dw $14E6, $21C9, $366E, $4F34, $5FB8, $198C, $2A32\n#_1BEB28: dw $0884, $04EA, $114D, $21D1, $19AC, $262F, $1D67\n\n.owaux_11\n; #RRGGBB : 702028, A04030, C87040, F8B860, 080018, 080018, 500030\n; #RRGGBB : 202010, 503808, 685020, 887040, 706090, 9880B0, 504878\n; #RRGGBB : 202010, 705818, 987830, B09048, B8A058, 604020, 503000\n#_1BEB36: dw $148E, $1914, $21D9, $32FF, $0C01, $0C01, $180A\n#_1BEB44: dw $0884, $04EA, $114D, $21D1, $498E, $5A13, $3D2A\n#_1BEB52: dw $0884, $0D6E, $19F3, $2656, $2E97, $110C, $00CA\n\n.owaux_12\n; #RRGGBB : 202010, 484008, 585820, 888850, A8A870, 605038, 807000\n; #RRGGBB : 202010, 383018, 504028, 685028, F8F8B0, D0A0A8, 786840\n; #RRGGBB : 101010, 101010, 181818, 481010, 403838, 181818, 484040\n#_1BEB60: dw $0884, $0509, $116B, $2A31, $3AB5, $1D4C, $01D0\n#_1BEB6E: dw $0884, $0CC7, $150A, $154D, $5BFF, $569A, $21AF\n#_1BEB7C: dw $0842, $0842, $0C63, $0849, $1CE8, $0C63, $2109\n\n.owaux_13\n; #RRGGBB : 202020, 380008, 501820, 703008, 905028, 284830, 403818\n; #RRGGBB : 202010, 583038, 707038, A0A068, C0C088, 605038, 602830\n; #RRGGBB : 202010, 404028, 605830, 786840, A87880, 605038, D0A0A8\n#_1BEB8A: dw $1084, $0407, $106A, $04CE, $1552, $1925, $0CE8\n#_1BEB98: dw $0884, $1CCB, $1DCE, $3694, $4718, $1D4C, $18AC\n#_1BEBA6: dw $0884, $1508, $196C, $21AF, $41F5, $1D4C, $569A\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "SwordPaletteOffsets", + "code": "SwordPaletteOffsets:\n#_1BEBB4: db (PaletteData_sword_00-PaletteData_sword) ; $00\n#_1BEBB5: db (PaletteData_sword_00-PaletteData_sword) ; $00\n#_1BEBB6: db (PaletteData_sword_01-PaletteData_sword) ; $06\n#_1BEBB7: db (PaletteData_sword_02-PaletteData_sword) ; $0C\n#_1BEBB8: db (PaletteData_sword_03-PaletteData_sword) ; $12\n\n#_1BEBB9: db $18, $1E, $24, $2A, $30, $36, $3C, $42\n", + "file": "bank_1B.asm" + }, + { + "name": "ShieldPaletteOffsets", + "code": "ShieldPaletteOffsets:\n#_1BEBC1: db (PaletteData_shield_00-PaletteData_shield) ; $00\n#_1BEBC2: db (PaletteData_shield_00-PaletteData_shield) ; $00\n#_1BEBC3: db (PaletteData_shield_01-PaletteData_shield) ; $08\n#_1BEBC4: db (PaletteData_shield_02-PaletteData_shield) ; $10\n#_1BEBC5: db $18\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset", + "code": "PaletteIDtoOffset:\n#_1BEBC6: db $00 ; 0x00*14\n#_1BEBC7: db $0E ; 0x01*14\n#_1BEBC8: db $1C ; 0x02*14\n#_1BEBC9: db $2A ; 0x03*14\n#_1BEBCA: db $38 ; 0x04*14\n#_1BEBCB: db $46 ; 0x05*14\n#_1BEBCC: db $54 ; 0x06*14\n#_1BEBCD: db $62 ; 0x07*14\n#_1BEBCE: db $70 ; 0x08*14\n#_1BEBCF: db $7E ; 0x09*14\n#_1BEBD0: db $8C ; 0x0A*14\n#_1BEBD1: db $9A ; 0x0B*14\n#_1BEBD2: db $A8 ; 0x0C*14\n#_1BEBD3: db $B6 ; 0x0D*14\n#_1BEBD4: db $C4 ; 0x0E*14\n#_1BEBD5: db $D2 ; 0x0F*14\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset_16bit", + "code": "PaletteIDtoOffset_16bit:\n#_1BEBD6: dw $0000 ; 0x00*14\n#_1BEBD8: dw $000E ; 0x01*14\n#_1BEBDA: dw $001C ; 0x02*14\n#_1BEBDC: dw $002A ; 0x03*14\n#_1BEBDE: dw $0038 ; 0x04*14\n#_1BEBE0: dw $0046 ; 0x05*14\n#_1BEBE2: dw $0054 ; 0x06*14\n#_1BEBE4: dw $0062 ; 0x07*14\n#_1BEBE6: dw $0070 ; 0x08*14\n#_1BEBE8: dw $007E ; 0x09*14\n#_1BEBEA: dw $008C ; 0x0A*14\n#_1BEBEC: dw $009A ; 0x0B*14\n#_1BEBEE: dw $00A8 ; 0x0C*14\n#_1BEBF0: dw $00B6 ; 0x0D*14\n#_1BEBF2: dw $00C4 ; 0x0E*14\n#_1BEBF4: dw $00D2 ; 0x0F*14\n#_1BEBF6: dw $00E0 ; 0x10*14\n#_1BEBF8: dw $00EE ; 0x11*14\n#_1BEBFA: dw $00FC ; 0x12*14\n#_1BEBFC: dw $010A ; 0x13*14\n#_1BEBFE: dw $0118 ; 0x14*14\n#_1BEC00: dw $0126 ; 0x15*14\n#_1BEC02: dw $0134 ; 0x16*14\n#_1BEC04: dw $0142 ; 0x17*14\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "LinkMailPalettesOffsets", + "code": "LinkMailPalettesOffsets:\n#_1BEC06: db (Palettes_GreenMail-PaletteData_Link)/2 ; $00\n#_1BEC07: db (Palettes_BlueMail-PaletteData_Link)/2 ; $0F\n#_1BEC08: db (Palettes_RedMail-PaletteData_Link)/2 ; $1E\n#_1BEC09: db (Palettes_Bunny-PaletteData_Link)/2 ; $2D\n#_1BEC0A: db (Palettes_Zap-PaletteData_Link)/2 ; $3C\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "UnusedPaletteOffsets", + "code": "UnusedPaletteOffsets:\n#_1BEC0B: db $00\n#_1BEC0C: db $1C\n#_1BEC0D: db $38\n#_1BEC0E: db $54\n#_1BEC0F: db $70\n#_1BEC10: db $8C\n#_1BEC11: db $A8\n#_1BEC12: db $C4\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset_OW", + "code": "PaletteIDtoOffset_OW:\n#_1BEC13: dw $0000 ; 0x00*42\n#_1BEC15: dw $002A ; 0x01*42\n#_1BEC17: dw $0054 ; 0x02*42\n#_1BEC19: dw $007E ; 0x03*42\n#_1BEC1B: dw $00A8 ; 0x04*42\n#_1BEC1D: dw $00D2 ; 0x05*42\n#_1BEC1F: dw $00FC ; 0x06*42\n#_1BEC21: dw $0126 ; 0x07*42\n#_1BEC23: dw $0150 ; 0x08*42\n#_1BEC25: dw $017A ; 0x09*42\n#_1BEC27: dw $01A4 ; 0x0A*42\n#_1BEC29: dw $01CE ; 0x0B*42\n#_1BEC2B: dw $01F8 ; 0x0C*42\n#_1BEC2D: dw $0222 ; 0x0D*42\n#_1BEC2F: dw $024C ; 0x0E*42\n#_1BEC31: dw $0276 ; 0x0F*42\n#_1BEC33: dw $02A0 ; 0x10*42\n#_1BEC35: dw $02CA ; 0x11*42\n#_1BEC37: dw $02F4 ; 0x12*42\n#_1BEC39: dw $031E ; 0x13*42\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset_OW2", + "code": "PaletteIDtoOffset_OW2:\n#_1BEC3B: dw $0000 ; 0x00*70\n#_1BEC3D: dw $0046 ; 0x01*70\n#_1BEC3F: dw $008C ; 0x02*70\n#_1BEC41: dw $00D2 ; 0x03*70\n#_1BEC43: dw $0118 ; 0x04*70\n#_1BEC45: dw $015E ; 0x05*70\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset_HUD", + "code": "PaletteIDtoOffset_HUD:\n#_1BEC47: db $00\n#_1BEC48: db $40\n#_1BEC49: db $00\n#_1BEC4A: db $30\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteIDtoOffset_UW", + "code": "PaletteIDtoOffset_UW:\n#_1BEC4B: dw $0000 ; $00*180\n#_1BEC4D: dw $00B4 ; $01*180\n#_1BEC4F: dw $0168 ; $02*180\n#_1BEC51: dw $021C ; $03*180\n#_1BEC53: dw $02D0 ; $04*180\n#_1BEC55: dw $0384 ; $05*180\n#_1BEC57: dw $0438 ; $06*180\n#_1BEC59: dw $04EC ; $07*180\n#_1BEC5B: dw $05A0 ; $08*180\n#_1BEC5D: dw $0654 ; $09*180\n#_1BEC5F: dw $0708 ; $0A*180\n#_1BEC61: dw $07BC ; $0B*180\n#_1BEC63: dw $0870 ; $0C*180\n#_1BEC65: dw $0924 ; $0D*180\n#_1BEC67: dw $09D8 ; $0E*180\n#_1BEC69: dw $0A8C ; $0F*180\n#_1BEC6B: dw $0B40 ; $10*180\n#_1BEC6D: dw $0BF4 ; $11*180\n#_1BEC6F: dw $0CA8 ; $12*180\n#_1BEC71: dw $0D5C ; $13*180\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "PaletteWorldIDtoOffset", + "code": "PaletteWorldIDtoOffset:\n#_1BEC73: dw $0000 ; Light World\n#_1BEC75: dw $0078 ; Dark World\n\n; =========================================================\n\n", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_SpritePal0Left", + "code": "Palettes_Load_SpritePal0Left:\n#_1BEC77: REP #$21\n\n#_1BEC79: LDX.w $0AAC\n\n#_1BEC7C: LDA.l PaletteIDtoOffset,X\n#_1BEC80: AND.w #$00FF\n#_1BEC83: ADC.w #PaletteData_spritepal0_00\n#_1BEC86: STA.b $00\n\n#_1BEC88: REP #$10\n\n#_1BEC8A: LDA.w #$0102\n#_1BEC8D: LDX.w $0ABD\n#_1BEC90: BEQ .no_translucency\n\n#_1BEC92: LDA.w #$01E2\n\n.no_translucency\n#_1BEC95: LDX.w #$0006\n#_1BEC98: JSR Palettes_LoadSingle\n\n#_1BEC9B: SEP #$30\n\n#_1BEC9D: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_SpriteMain", + "code": "Palettes_Load_SpriteMain:\n#_1BEC9E: REP #$21\n\n#_1BECA0: LDX.b #$00\n\n#_1BECA2: LDA.b $8A\n#_1BECA4: AND.w #$0040\n#_1BECA7: BEQ .light_world\n\n#_1BECA9: INX\n#_1BECAA: INX\n\n.light_world\n#_1BECAB: LDA.l PaletteWorldIDtoOffset,X\n#_1BECAF: ADC.w #PaletteData_sprite_00\n#_1BECB2: STA.b $00\n\n#_1BECB4: REP #$10\n\n#_1BECB6: LDA.w #$0122\n#_1BECB9: LDX.w #$000E\n#_1BECBC: LDY.w #$0003\n#_1BECBF: JSR Palettes_LoadMultiple\n\n#_1BECC2: SEP #$30\n\n#_1BECC4: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_SpriteAux1", + "code": "Palettes_Load_SpriteAux1:\n#_1BECC5: REP #$31\n\n#_1BECC7: LDA.w $0AAD\n#_1BECCA: AND.w #$00FF\n#_1BECCD: ASL A\n#_1BECCE: TAX\n\n#_1BECCF: LDA.l PaletteIDtoOffset_16bit,X\n#_1BECD3: ADC.w #PaletteData_spriteaux_00\n#_1BECD6: STA.b $00\n\n#_1BECD8: LDA.w #$01A2\n#_1BECDB: LDX.w #$0006\n#_1BECDE: JSR Palettes_LoadSingle\n\n#_1BECE1: SEP #$30\n\n#_1BECE3: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_SpriteAux2", + "code": "Palettes_Load_SpriteAux2:\n#_1BECE4: REP #$31\n\n#_1BECE6: LDA.w $0AAE\n#_1BECE9: AND.w #$00FF\n#_1BECEC: ASL A\n#_1BECED: TAX\n\n#_1BECEE: LDA.l PaletteIDtoOffset_16bit,X\n#_1BECF2: ADC.w #PaletteData_spriteaux_00\n#_1BECF5: STA.b $00\n\n#_1BECF7: LDA.w #$01C2\n#_1BECFA: LDX.w #$0006\n#_1BECFD: JSR Palettes_LoadSingle\n\n#_1BED00: SEP #$30\n\n#_1BED02: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_Sword", + "code": "Palettes_Load_Sword:\n#_1BED03: REP #$21\n\n#_1BED05: LDA.l $7EF359\n#_1BED09: AND.w #$00FF\n#_1BED0C: TAX\n\n#_1BED0D: LDA.l SwordPaletteOffsets,X\n#_1BED11: AND.w #$00FF\n#_1BED14: ADC.w #PaletteData_sword_00\n#_1BED17: STA.b $00\n\n#_1BED19: REP #$10\n\n#_1BED1B: LDA.w #$01B2\n#_1BED1E: LDX.w #$0002\n#_1BED21: JSR Palettes_LoadMultiple_Arbitrary\n\n#_1BED24: SEP #$30\n\n#_1BED26: INC.b $15\n\n#_1BED28: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_Shield", + "code": "Palettes_Load_Shield:\n#_1BED29: REP #$21\n\n#_1BED2B: LDA.l $7EF35A\n#_1BED2F: AND.w #$00FF\n#_1BED32: TAX\n\n#_1BED33: LDA.l ShieldPaletteOffsets,X\n#_1BED37: AND.w #$00FF\n#_1BED3A: ADC.w #PaletteData_shield_00\n#_1BED3D: STA.b $00\n\n#_1BED3F: REP #$10\n\n#_1BED41: LDA.w #$01B8\n#_1BED44: LDX.w #$0003\n#_1BED47: JSR Palettes_LoadMultiple_Arbitrary\n\n#_1BED4A: SEP #$30\n\n#_1BED4C: INC.b $15\n\n#_1BED4E: RTL", + "file": "bank_1B.asm" + }, + { + "name": "UNREACHABLE_1BED4F", + "code": "UNREACHABLE_1BED4F:\n#_1BED4F: REP #$21\n\n#_1BED51: LDX.w $0AB0\n\n#_1BED54: LDA.l PaletteIDtoOffset,X\n#_1BED58: AND.w #$00FF\n#_1BED5B: ADC.w #PaletteData_environment_00\n#_1BED5E: STA.b $00\n\n#_1BED60: REP #$10\n\n#_1BED62: LDA.w #$01C2\n#_1BED65: LDX.w #$0006\n#_1BED68: JSR Palettes_LoadSingle\n\n#_1BED6B: SEP #$30\n\n#_1BED6D: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_SpriteEnvironment", + "code": "Palettes_Load_SpriteEnvironment:\n#_1BED6E: LDA.b $1B\n#_1BED70: BEQ .outdoors\n\n#Palettes_Load_SpriteEnvironment_Underworld:\n#_1BED72: REP #$21\n\n#_1BED74: LDX.w $0AB1\n\n#_1BED77: LDA.l PaletteIDtoOffset,X\n#_1BED7B: AND.w #$00FF\n#_1BED7E: ADC.w #PaletteData_environment_00\n#_1BED81: STA.b $00\n\n#_1BED83: REP #$10\n\n#_1BED85: LDA.w #$01D2\n#_1BED88: LDX.w #$0006\n#_1BED8B: JSR Palettes_LoadSingle\n\n#_1BED8E: SEP #$30\n\n#_1BED90: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_DungeonMapSprite", + "code": "Palettes_Load_DungeonMapSprite:\n#_1BEDDD: REP #$21\n\n#_1BEDDF: LDA.w #PaletteData_dungeonmap_sprites_00\n#_1BEDE2: STA.b $00\n\n#_1BEDE4: REP #$10\n\n#_1BEDE6: LDA.w #$0182\n#_1BEDE9: LDX.w #$0006\n#_1BEDEC: LDY.w #$0002\n#_1BEDEF: JSR Palettes_LoadMultiple\n\n#_1BEDF2: SEP #$30\n\n#_1BEDF4: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LinkGloveColors", + "code": "Palettes_LinkGloveColors:\n#_1BEDF5: dw $52F6, $0376\n\n; ---------------------------------------------------------\n", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_LinkArmorAndGloves", + "code": "Palettes_Load_LinkArmorAndGloves:\n#_1BEDF9: REP #$21\n\n#_1BEDFB: LDA.l $7EF35B\n#_1BEDFF: AND.w #$00FF\n#_1BEE02: TAX\n\n#_1BEE03: LDA.l LinkMailPalettesOffsets,X\n#_1BEE07: AND.w #$00FF\n#_1BEE0A: ASL A\n#_1BEE0B: ADC.w #PaletteData_link_00\n#_1BEE0E: STA.b $00\n\n#_1BEE10: REP #$10\n\n#_1BEE12: LDA.w #$01E2\n#_1BEE15: LDX.w #$000E\n#_1BEE18: JSR Palettes_LoadMultiple_Arbitrary\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_LinkGloves", + "code": "Palettes_Load_LinkGloves:\n#_1BEE1B: REP #$30\n\n#_1BEE1D: LDA.l $7EF354\n#_1BEE21: AND.w #$00FF\n#_1BEE24: BEQ .no_gloves\n\n#_1BEE26: DEC A\n#_1BEE27: ASL A\n#_1BEE28: TAX\n\n#_1BEE29: LDA.l Palettes_LinkGloveColors,X\n#_1BEE2D: STA.l $7EC4FA\n#_1BEE31: STA.l $7EC6FA\n\n.no_gloves\n#_1BEE35: SEP #$30\n\n#_1BEE37: INC.b $15\n\n#_1BEE39: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_DungeonMapBG", + "code": "Palettes_Load_DungeonMapBG:\n#_1BEE3A: REP #$21\n\n#_1BEE3C: LDA.w #PaletteData_dungeonmap_bg_00\n#_1BEE3F: STA.b $00\n\n#_1BEE41: REP #$10\n\n#_1BEE43: LDA.w #$0040\n#_1BEE46: LDX.w #$000F\n#_1BEE49: LDY.w #$0005\n#_1BEE4C: JSR Palettes_LoadMultiple\n\n#_1BEE4F: SEP #$30\n\n#_1BEE51: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_HUD", + "code": "Palettes_Load_HUD:\n#_1BEE52: REP #$21\n\n#_1BEE54: LDX.w $0AB2\n\n#_1BEE57: LDA.l PaletteIDtoOffset_HUD,X\n#_1BEE5B: AND.w #$00FF\n#_1BEE5E: ADC.w #PaletteData_hud_00\n#_1BEE61: STA.b $00\n\n#_1BEE63: REP #$10\n\n#_1BEE65: LDA.w #$0000\n#_1BEE68: LDX.w #$000F\n#_1BEE6B: LDY.w #$0001\n#_1BEE6E: JSR Palettes_LoadMultiple\n\n#_1BEE71: SEP #$30\n\n#_1BEE73: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_UnderworldSet", + "code": "Palettes_Load_UnderworldSet:\n#_1BEE74: REP #$21\n\n#_1BEE76: LDX.w $0AB6\n\n#_1BEE79: LDA.l PaletteIDtoOffset_UW,X\n#_1BEE7D: ADC.w #PaletteData_dungeon_00\n#_1BEE80: STA.b $00\n\n#_1BEE82: PHA\n\n#_1BEE83: REP #$10\n\n#_1BEE85: LDA.w #$0042\n#_1BEE88: LDX.w #$000E\n#_1BEE8B: LDY.w #$0005\n#_1BEE8E: JSR Palettes_LoadMultiple\n\n#_1BEE91: PLA\n#_1BEE92: STA.b $00\n\n#_1BEE94: LDA.w #$0112\n#_1BEE97: LDX.w $0ABD\n#_1BEE9A: BEQ .not_trans\n\n#_1BEE9C: LDA.w #$01F2\n\n.not_trans\n#_1BEE9F: LDX.w #$0006\n#_1BEEA2: JSR Palettes_LoadSingle\n\n#_1BEEA5: SEP #$30\n\n#_1BEEA7: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_OWBG3", + "code": "Palettes_Load_OWBG3:\n#_1BEEA8: REP #$21\n\n#_1BEEAA: LDX.w $0AB8\n\n#_1BEEAD: LDA.l PaletteIDtoOffset,X\n#_1BEEB1: AND.w #$00FF\n#_1BEEB4: ADC.w #PaletteData_owanim_00\n#_1BEEB7: STA.b $00\n\n#_1BEEB9: REP #$10\n\n#_1BEEBB: LDA.w #$00E2\n#_1BEEBE: LDX.w #$0006\n#_1BEEC1: JSR Palettes_LoadSingle\n\n#_1BEEC4: SEP #$30\n\n#_1BEEC6: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_OWBGMain", + "code": "Palettes_Load_OWBGMain:\n#_1BEEC7: REP #$21\n\n#_1BEEC9: LDA.w $0AB3\n#_1BEECC: ASL A\n#_1BEECD: TAX\n\n#_1BEECE: LDA.l PaletteIDtoOffset_OW2,X\n#_1BEED2: ADC.w #PaletteData_owmain_00\n#_1BEED5: STA.b $00\n\n#_1BEED7: REP #$10\n\n#_1BEED9: LDA.w #$0042\n#_1BEEDC: LDX.w #$0006\n#_1BEEDF: LDY.w #$0004\n#_1BEEE2: JSR Palettes_LoadMultiple\n\n#_1BEEE5: SEP #$30\n\n#_1BEEE7: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_OWBG1", + "code": "Palettes_Load_OWBG1:\n#_1BEEE8: REP #$21\n\n#_1BEEEA: LDA.w $0AB4\n#_1BEEED: AND.w #$00FF\n#_1BEEF0: ASL A\n#_1BEEF1: TAX\n\n#_1BEEF2: LDA.l PaletteIDtoOffset_OW,X\n#_1BEEF6: ADC.w #PaletteData_owaux_00\n#_1BEEF9: STA.b $00\n\n#_1BEEFB: REP #$10\n\n#_1BEEFD: LDA.w #$0052\n#_1BEF00: LDX.w #$0006\n#_1BEF03: LDY.w #$0002\n#_1BEF06: JSR Palettes_LoadMultiple\n\n#_1BEF09: SEP #$30\n\n#_1BEF0B: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_Load_OWBG2", + "code": "Palettes_Load_OWBG2:\n#_1BEF0C: REP #$21\n\n#_1BEF0E: LDA.w $0AB5\n#_1BEF11: AND.w #$00FF\n#_1BEF14: ASL A\n#_1BEF15: TAX\n\n#_1BEF16: LDA.l PaletteIDtoOffset_OW,X\n#_1BEF1A: ADC.w #PaletteData_owaux_00\n#_1BEF1D: STA.b $00\n\n#_1BEF1F: REP #$10\n\n#_1BEF21: LDA.w #$00B2\n#_1BEF24: LDX.w #$0006\n#_1BEF27: LDY.w #$0002\n#_1BEF2A: JSR Palettes_LoadMultiple\n\n#_1BEF2D: SEP #$30\n\n#_1BEF2F: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadSingle", + "code": "Palettes_LoadSingle:\n#_1BEF30: TXY\n#_1BEF31: CLC\n#_1BEF32: ADC.w $0AA8\n#_1BEF35: TAX\n\n#_1BEF36: LDA.w #PaletteData>>16\n#_1BEF39: STA.b $02\n\n.next_color\n#_1BEF3B: LDA.b [$00]\n#_1BEF3D: STA.l $7EC300,X\n\n#_1BEF41: INC.b $00\n#_1BEF43: INC.b $00\n\n#_1BEF45: INX\n#_1BEF46: INX\n\n#_1BEF47: DEY\n#_1BEF48: BPL .next_color\n\n#_1BEF4A: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadMultiple", + "code": "Palettes_LoadMultiple:\n#_1BEF4B: STA.b $04\n#_1BEF4D: STX.b $06\n#_1BEF4F: STY.b $08\n\n#_1BEF51: LDA.w #PaletteData>>16\n#_1BEF54: STA.b $02\n\n; ---------------------------------------------------------\n\n.next_palette\n#_1BEF56: LDA.w $0AA8\n#_1BEF59: CLC\n#_1BEF5A: ADC.b $04\n#_1BEF5C: TAX\n\n#_1BEF5D: LDY.b $06\n\n.next_color\n#_1BEF5F: LDA.b [$00]\n#_1BEF61: STA.l $7EC300,X\n\n#_1BEF65: INC.b $00\n#_1BEF67: INC.b $00\n\n#_1BEF69: INX\n#_1BEF6A: INX\n\n#_1BEF6B: DEY\n\n#_1BEF6C: BPL .next_color\n\n#_1BEF6E: LDA.b $04\n#_1BEF70: CLC\n#_1BEF71: ADC.w #$0020\n#_1BEF74: STA.b $04\n\n#_1BEF76: DEC.b $08\n#_1BEF78: BPL .next_palette\n\n#_1BEF7A: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadMultiple_Arbitrary", + "code": "Palettes_LoadMultiple_Arbitrary:\n#_1BEF7B: TXY\n#_1BEF7C: TAX\n\n#_1BEF7D: LDA.w #PaletteData>>16\n#_1BEF80: STA.b $02\n\n.next_color\n#_1BEF82: LDA.b [$00]\n\n#_1BEF84: STA.l $7EC300,X\n#_1BEF88: STA.l $7EC500,X\n\n#_1BEF8C: INC.b $00\n#_1BEF8E: INC.b $00\n\n#_1BEF90: INX\n#_1BEF91: INX\n\n#_1BEF92: DEY\n#_1BEF93: BPL .next_color\n\n#_1BEF95: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadForFileSelect", + "code": "Palettes_LoadForFileSelect:\n#_1BEF96: PHB\n\n#_1BEF97: LDA.b #PaletteData>>16\n#_1BEF99: PHA\n#_1BEF9A: PLB\n\n#_1BEF9B: REP #$30\n\n; ---------------------------------------------------------\n\n#_1BEF9D: LDX.w #$0000\n#_1BEFA0: LDA.l $700354\n#_1BEFA4: STA.b $0C\n\n#_1BEFA6: LDA.l $70035B\n#_1BEFAA: JSR Palettes_LoadForFileSelect_Armor\n\n#_1BEFAD: LDX.w #$0000\n#_1BEFB0: LDA.l $700359\n#_1BEFB4: JSR Palettes_LoadForFileSelect_Sword\n\n#_1BEFB7: LDX.w #$0000\n#_1BEFBA: LDA.l $70035A\n#_1BEFBE: JSR Palettes_LoadForFileSelect_Shield\n\n; ---------------------------------------------------------\n\n#_1BEFC1: LDX.w #$0040\n#_1BEFC4: LDA.l $700854\n#_1BEFC8: STA.b $0C\n\n#_1BEFCA: LDA.l $70085B\n#_1BEFCE: JSR Palettes_LoadForFileSelect_Armor\n\n#_1BEFD1: LDX.w #$0040\n#_1BEFD4: LDA.l $700859\n#_1BEFD8: JSR Palettes_LoadForFileSelect_Sword\n\n#_1BEFDB: LDX.w #$0040\n#_1BEFDE: LDA.l $70085A\n#_1BEFE2: JSR Palettes_LoadForFileSelect_Shield\n\n; ---------------------------------------------------------\n\n#_1BEFE5: LDX.w #$0080\n#_1BEFE8: LDA.l $700D54\n#_1BEFEC: STA.b $0C\n\n#_1BEFEE: LDA.l $700D5B\n#_1BEFF2: JSR Palettes_LoadForFileSelect_Armor\n\n#_1BEFF5: LDX.w #$0080\n#_1BEFF8: LDA.l $700D59\n#_1BEFFC: JSR Palettes_LoadForFileSelect_Sword\n\n#_1BEFFF: LDX.w #$0080\n#_1BF002: LDA.l $700D5A\n#_1BF006: JSR Palettes_LoadForFileSelect_Shield\n\n#_1BF009: LDY.w #$0000\n#_1BF00C: LDX.w #$0000\n\n.next_low_color\n#_1BF00F: LDA.w PaletteData_sprite_00_right,Y\n#_1BF012: STA.l $7EC4D0,X\n#_1BF016: STA.l $7EC6D0,X\n\n#_1BF01A: LDA.w PaletteData_sprite_01_right,Y\n#_1BF01D: STA.l $7EC4F0,X\n#_1BF021: STA.l $7EC6F0,X\n\n#_1BF025: INY\n#_1BF026: INY\n\n#_1BF027: INX\n#_1BF028: INX\n#_1BF029: CPX.w #$000E ; This should be $0010, otherwise the fairy doesn't have her skin\n#_1BF02C: BNE .next_low_color\n\n#_1BF02E: SEP #$30\n\n#_1BF030: PLB\n\n#_1BF031: RTL", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadForFileSelect_Armor", + "code": "Palettes_LoadForFileSelect_Armor:\n#_1BF032: PHX\n\n#_1BF033: AND.w #$00FF\n#_1BF036: ASL A\n#_1BF037: TAY\n\n#_1BF038: LDA.w LinkMailPalettesOffsets,Y\n#_1BF03B: AND.w #$00FF\n#_1BF03E: CLC\n#_1BF03F: ADC.w #$00F0\n#_1BF042: TAY\n\n#_1BF043: LDA.w #$000F\n#_1BF046: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_color\n#_1BF048: LDA.w PaletteData_sprite_00,Y\n#_1BF04B: STA.l $7EC402,X\n#_1BF04F: STA.l $7EC602,X\n\n#_1BF053: INY\n#_1BF054: INY\n\n#_1BF055: INX\n#_1BF056: INX\n\n#_1BF057: DEC.b $0E\n#_1BF059: BNE .next_color\n\n; ---------------------------------------------------------\n\n#_1BF05B: PLX\n\n#_1BF05C: LDA.b $0C\n#_1BF05E: AND.w #$00FF\n#_1BF061: BEQ .exit\n\n#_1BF063: DEC A\n#_1BF064: ASL A\n#_1BF065: TAY\n\n#_1BF066: LDA.w Palettes_LinkGloveColors,Y\n#_1BF069: STA.l $7EC41A,X\n#_1BF06D: STA.l $7EC61A,X\n\n.exit\n#_1BF071: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadForFileSelect_Sword", + "code": "Palettes_LoadForFileSelect_Sword:\n#_1BF072: AND.w #$00FF\n#_1BF075: TAY\n\n#_1BF076: LDA.w SwordPaletteOffsets,Y\n#_1BF079: AND.w #$00FF\n#_1BF07C: CLC\n#_1BF07D: ADC.w #PaletteData_sword-PaletteData ; #$0418\n#_1BF080: TAY\n\n#_1BF081: LDA.w #$0003\n#_1BF084: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_color\n#_1BF086: LDA.w PaletteData_sprite_00,Y\n#_1BF089: STA.l $7EC432,X\n#_1BF08D: STA.l $7EC632,X\n\n#_1BF091: INY\n#_1BF092: INY\n\n#_1BF093: INX\n#_1BF094: INX\n\n#_1BF095: DEC.b $0E\n#_1BF097: BNE .next_color\n\n#_1BF099: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadForFileSelect_Shield", + "code": "Palettes_LoadForFileSelect_Shield:\n#_1BF09A: AND.w #$00FF\n#_1BF09D: TAY\n\n#_1BF09E: LDA.w ShieldPaletteOffsets,Y\n#_1BF0A1: AND.w #$00FF\n#_1BF0A4: CLC\n#_1BF0A5: ADC.w #PaletteData_shield-PaletteData ; #$0430\n#_1BF0A8: TAY\n\n#_1BF0A9: LDA.w #$0004\n#_1BF0AC: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_color\n#_1BF0AE: LDA.w PaletteData_sprite_00,Y\n#_1BF0B1: STA.l $7EC438,X\n#_1BF0B5: STA.l $7EC638,X\n\n#_1BF0B9: INY\n#_1BF0BA: INY\n\n#_1BF0BB: INX\n#_1BF0BC: INX\n\n#_1BF0BD: DEC.b $0E\n#_1BF0BF: BNE .next_color\n\n#_1BF0C1: RTS", + "file": "bank_1B.asm" + }, + { + "name": "Palettes_LoadAgahnim", + "code": "Palettes_LoadAgahnim:\n#_1BF0C2: REP #$31\n\n#_1BF0C4: LDA.l PaletteIDtoOffset_16bit+($0E*2)\n#_1BF0C8: ADC.w #PaletteData_spriteaux_00\n#_1BF0CB: STA.b $00\n\n#_1BF0CD: PHA\n\n#_1BF0CE: LDA.w #$0162\n#_1BF0D1: LDX.w #$0006\n#_1BF0D4: JSR Palettes_LoadMultiple_Arbitrary\n\n; ---------------------------------------------------------\n\n#_1BF0D7: PLA\n#_1BF0D8: STA.b $00\n\n#_1BF0DA: PHA\n\n#_1BF0DB: LDA.w #$0182\n#_1BF0DE: LDX.w #$0006\n#_1BF0E1: JSR Palettes_LoadMultiple_Arbitrary\n\n; ---------------------------------------------------------\n\n#_1BF0E4: PLA\n#_1BF0E5: STA.b $00\n\n#_1BF0E7: LDA.w #$01A2\n#_1BF0EA: LDX.w #$0006\n#_1BF0ED: JSR Palettes_LoadMultiple_Arbitrary\n\n; ---------------------------------------------------------\n\n#_1BF0F0: LDA.l PaletteIDtoOffset_16bit+($15*2)\n#_1BF0F4: CLC\n#_1BF0F5: ADC.w #PaletteData_spriteaux_00\n#_1BF0F8: STA.b $00\n\n#_1BF0FA: LDA.w #$01C2\n#_1BF0FD: LDX.w #$0006\n#_1BF100: JSR Palettes_LoadMultiple_Arbitrary\n\n#_1BF103: SEP #$30\n\n#_1BF105: INC.b $15\n\n#_1BF107: RTL", + "file": "bank_1B.asm" + }, + { + "name": "NULL_1BF108", + "code": "NULL_1BF108:\n#_1BF108: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_1B.asm" + }, + { + "name": "OverworldTileTypeTable", + "code": "OverworldTileTypeTable:\n#_1BF110: db $01, $27, $01, $02, $02, $02, $01, $01\n#_1BF118: db $01, $01, $01, $01, $01, $01, $01, $02\n#_1BF120: db $01, $27, $01, $01, $01, $01, $27, $27\n#_1BF128: db $01, $02, $01, $02, $01, $01, $27, $27\n#_1BF130: db $01, $01, $02, $27, $01, $01, $27, $27\n#_1BF138: db $02, $27, $01, $01, $02, $02, $27, $02\n#_1BF140: db $02, $01, $01, $02, $48, $48, $50, $02\n#_1BF148: db $02, $01, $48, $02, $02, $00, $02, $02\n#_1BF150: db $02, $02, $01, $02, $01, $27, $02, $02\n#_1BF158: db $01, $00, $01, $02, $02, $01, $01, $01\n#_1BF160: db $02, $02, $02, $02, $27, $43, $00, $01\n#_1BF168: db $02, $02, $01, $01, $01, $01, $43, $01\n#_1BF170: db $02, $01, $00, $01, $42, $02, $02, $48\n#_1BF178: db $02, $02, $01, $02, $48, $02, $02, $42\n#_1BF180: db $02, $48, $00, $48, $01, $02, $27, $27\n#_1BF188: db $27, $48, $01, $48, $48, $02, $27, $27\n#_1BF190: db $01, $02, $01, $01, $02, $02, $27, $27\n#_1BF198: db $27, $27, $01, $01, $02, $01, $02, $02\n#_1BF1A0: db $01, $01, $01, $01, $02, $27, $02, $01\n#_1BF1A8: db $02, $02, $27, $27, $27, $27, $00, $00\n#_1BF1B0: db $00, $00, $02, $00, $00, $00, $00, $48\n#_1BF1B8: db $27, $00, $00, $00, $48, $00, $27, $27\n#_1BF1C0: db $27, $27, $02, $02, $02, $00, $27, $02\n#_1BF1C8: db $02, $00, $01, $01, $02, $02, $00, $02\n#_1BF1D0: db $01, $02, $02, $02, $01, $00, $00, $10\n#_1BF1D8: db $18, $01, $01, $02, $01, $01, $02, $01\n#_1BF1E0: db $01, $29, $00, $18, $02, $02, $01, $01\n#_1BF1E8: db $01, $01, $48, $10, $01, $01, $27, $01\n#_1BF1F0: db $01, $48, $48, $01, $01, $01, $18, $00\n#_1BF1F8: db $48, $01, $01, $01, $48, $01, $01, $01\n#_1BF200: db $48, $01, $27, $01, $01, $01, $01, $01\n#_1BF208: db $48, $02, $02, $02, $02, $02, $02, $48\n#_1BF210: db $00, $54, $48, $48, $12, $1A, $1A, $00\n#_1BF218: db $27, $00, $27, $27, $12, $48, $48, $48\n#_1BF220: db $00, $00, $00, $09, $48, $09, $01, $01\n#_1BF228: db $01, $09, $09, $09, $18, $48, $10, $09\n#_1BF230: db $09, $09, $10, $10, $01, $48, $48, $01\n#_1BF238: db $08, $10, $09, $09, $08, $02, $00, $48\n#_1BF240: db $02, $01, $08, $09, $00, $02, $02, $02\n#_1BF248: db $02, $48, $02, $01, $02, $02, $02, $02\n#_1BF250: db $01, $12, $02, $01, $02, $02, $02, $02\n#_1BF258: db $02, $10, $08, $00, $09, $00, $00, $12\n#_1BF260: db $1A, $01, $01, $01, $01, $10, $01, $08\n#_1BF268: db $01, $09, $09, $01, $00, $12, $01, $01\n#_1BF270: db $48, $01, $12, $1A, $01, $00, $1A, $12\n#_1BF278: db $48, $00, $01, $01, $29, $00, $18, $00\n#_1BF280: db $00, $00, $12, $01, $01, $01, $01, $01\n#_1BF288: db $01, $00, $01, $00, $00, $00, $00, $01\n#_1BF290: db $02, $22, $01, $01, $02, $22, $01, $01\n#_1BF298: db $01, $01, $01, $02, $02, $01, $01, $02\n#_1BF2A0: db $42, $01, $01, $01, $02, $01, $43, $02\n#_1BF2A8: db $02, $43, $42, $44, $01, $00, $29, $01\n#_1BF2B0: db $42, $01, $02, $02, $01, $00, $01, $02\n#_1BF2B8: db $02, $02, $02, $02, $02, $02, $02, $01\n#_1BF2C0: db $02, $02, $02, $02, $02, $01, $00, $01\n#_1BF2C8: db $01, $01, $01, $01, $01, $02, $02, $01\n#_1BF2D0: db $00, $01, $00, $02, $00, $01, $02, $02\n#_1BF2D8: db $02, $02, $02, $02, $22, $01, $02, $02\n#_1BF2E0: db $02, $02, $02, $01, $01, $01, $01, $02\n#_1BF2E8: db $02, $01, $01, $01, $01, $02, $43, $01\n#_1BF2F0: db $02, $02, $01, $02, $02, $00, $12, $00\n#_1BF2F8: db $01, $02, $12, $01, $01, $2B, $01, $00\n#_1BF300: db $00, $01, $18, $00, $00, $00, $00, $00\n#_1BF308: db $00, $10, $01, $00, $00, $48, $00, $00\n#_1BF310: db $48, $01, $00, $02, $01, $02, $00, $00\n#_1BF318: db $02, $01, $02, $00, $01, $00, $48, $52\n#_1BF320: db $00, $00, $4B, $00, $00, $00, $00, $00\n#_1BF328: db $00, $01, $12, $27, $2B, $01, $00, $12\n#_1BF330: db $01, $01, $01, $01, $09, $01, $57, $57\n#_1BF338: db $57, $57, $01, $1A, $02, $02, $01, $02\n#_1BF340: db $02, $01, $1A, $00, $1A, $48, $00, $00\n#_1BF348: db $01, $53, $18, $56, $56, $56, $56, $01\n#_1BF350: db $48, $48, $02, $01, $02, $01, $02, $02\n#_1BF358: db $01, $01, $01, $02, $01, $01, $02, $01\n#_1BF360: db $01, $01, $01, $01, $01, $02, $01, $01\n#_1BF368: db $01, $01, $01, $01, $01, $01, $18, $10\n#_1BF370: db $02, $02, $10, $01, $02, $02, $00, $00\n#_1BF378: db $02, $00, $02, $02, $02, $02, $02, $02\n#_1BF380: db $00, $01, $01, $48, $02, $48, $01, $02\n#_1BF388: db $00, $00, $00, $00, $02, $01, $02, $02\n#_1BF390: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BF398: db $02, $02, $02, $02, $02, $02, $02, $01\n#_1BF3A0: db $01, $02, $02, $02, $02, $02, $02, $00\n#_1BF3A8: db $27, $20, $20, $20, $27, $27, $27, $02\n#_1BF3B0: db $20, $20, $02, $02, $02, $02, $02, $02\n#_1BF3B8: db $01, $01, $01, $01, $00, $00, $02, $02\n#_1BF3C0: db $02, $01, $18, $02, $02, $01, $02, $02\n#_1BF3C8: db $02, $02, $02, $5C, $09, $01, $02, $02\n#_1BF3D0: db $02, $5C, $09, $09, $09, $02, $08, $09\n#_1BF3D8: db $09, $48, $02, $09, $02, $08, $08, $02\n#_1BF3E0: db $01, $10, $08, $09, $08, $18, $08, $09\n#_1BF3E8: db $08, $08, $09, $09, $02, $09, $1A, $09\n#_1BF3F0: db $1A, $00, $01, $01, $08, $00, $48, $48\n#_1BF3F8: db $48, $09, $09, $00, $48, $48, $10, $09\n#_1BF400: db $00, $01, $02, $22, $29, $00, $09, $1A\n#_1BF408: db $08, $5C, $08, $5C, $01, $01, $02, $08\n#_1BF410: db $12, $01, $18, $01, $12, $01, $1A, $48\n#_1BF418: db $02, $08, $5C, $08, $00, $02, $02, $08\n#_1BF420: db $02, $5C, $02, $02, $08, $00, $48, $00\n#_1BF428: db $12, $01, $48, $00, $02, $02, $12, $12\n#_1BF430: db $12, $02, $00, $02, $08, $08, $08, $02\n#_1BF438: db $02, $01, $00, $01, $02, $01, $02, $02\n#_1BF440: db $01, $02, $02, $27, $27, $27, $27, $27\n#_1BF448: db $27, $01, $01, $01, $02, $02, $01, $01\n#_1BF450: db $01, $02, $02, $02, $02, $01, $01, $02\n#_1BF458: db $02, $02, $02, $01, $01, $01, $02, $02\n#_1BF460: db $01, $01, $02, $01, $02, $2B, $01, $43\n#_1BF468: db $01, $01, $01, $01, $01, $01, $02, $02\n#_1BF470: db $02, $00, $00, $02, $02, $27, $27, $27\n#_1BF478: db $27, $27, $01, $01, $27, $55, $55, $27\n#_1BF480: db $01, $01, $27, $02, $55, $55, $01, $01\n#_1BF488: db $01, $01, $01, $02, $02, $00, $40, $01\n#_1BF490: db $02, $02, $48, $48, $48, $00, $29, $01\n#_1BF498: db $01, $01, $2B, $01, $02, $01, $02, $42\n#_1BF4A0: db $00, $02, $02, $01, $00, $00, $08, $08\n#_1BF4A8: db $01, $08, $1A, $01, $01, $08, $02, $01\n#_1BF4B0: db $08, $02, $01, $27, $01, $02, $00, $27\n#_1BF4B8: db $27, $00, $00, $00, $00, $27, $00, $00\n#_1BF4C0: db $00, $00, $01, $01, $01, $01, $01, $01\n#_1BF4C8: db $01, $01, $01, $01, $27, $01, $22, $27\n#_1BF4D0: db $48, $48, $48, $02, $01, $00, $00, $02\n#_1BF4D8: db $01, $00, $00, $01, $01, $01, $00, $01\n#_1BF4E0: db $01, $01, $00, $01, $01, $27, $27, $27\n#_1BF4E8: db $27, $01, $01, $01, $01, $02, $01, $02\n#_1BF4F0: db $01, $02, $02, $02, $02, $02, $20, $01\n#_1BF4F8: db $00, $00, $01, $00, $00, $01, $01, $01\n#_1BF500: db $02, $22, $22, $00, $01, $43, $01, $01\n#_1BF508: db $01, $01, $02, $01, $01, $01, $01, $01\n#_1BF510: db $01, $48, $01, $01, $01, $01, $01, $00\n#_1BF518: db $00, $00, $01, $01, $01, $01, $01, $00\n#_1BF520: db $02, $00, $00, $02, $00, $00, $00, $00\n#_1BF528: db $00, $00, $00, $02, $00, $01, $01, $01\n#_1BF530: db $00, $01, $02, $02, $02, $48, $00, $01\n#_1BF538: db $00, $02, $01, $02, $01, $01, $27, $01\n#_1BF540: db $01, $00, $02, $22, $02, $02, $00, $00\n#_1BF548: db $48, $01, $01, $01, $01, $00, $02, $02\n#_1BF550: db $00, $48, $01, $01, $01, $27, $27, $27\n#_1BF558: db $02, $27, $27, $27, $02, $01, $02, $01\n#_1BF560: db $01, $01, $01, $02, $01, $01, $01, $01\n#_1BF568: db $01, $01, $01, $01, $01, $01, $01, $01\n#_1BF570: db $01, $01, $01, $01, $01, $01, $01, $02\n#_1BF578: db $02, $02, $01, $44, $01, $27, $01, $00\n#_1BF580: db $00, $02, $02, $02, $01, $01, $01, $01\n#_1BF588: db $02, $01, $01, $02, $02, $02, $01, $01\n#_1BF590: db $01, $02, $02, $02, $01, $02, $00, $02\n#_1BF598: db $02, $02, $02, $02, $02, $00, $01, $42\n#_1BF5A0: db $01, $42, $42, $00, $00, $01, $01, $01\n#_1BF5A8: db $01, $00, $02, $01, $01, $01, $02, $42\n#_1BF5B0: db $01, $01, $02, $02, $02, $02, $02, $00\n#_1BF5B8: db $02, $02, $22, $02, $02, $00, $00, $00\n#_1BF5C0: db $02, $02, $00, $02, $02, $01, $01, $01\n#_1BF5C8: db $01, $42, $01, $02, $02, $02, $48, $02\n#_1BF5D0: db $01, $01, $01, $01, $01, $48, $02, $01\n#_1BF5D8: db $02, $01, $02, $01, $02, $01, $00, $01\n#_1BF5E0: db $01, $01, $01, $00, $00, $00, $00, $00\n#_1BF5E8: db $48, $00, $01, $00, $48, $48, $48, $48\n#_1BF5F0: db $02, $02, $00, $01, $01, $01, $01, $02\n#_1BF5F8: db $02, $02, $02, $02, $02, $22, $02, $48\n#_1BF600: db $02, $02, $00, $00, $02, $02, $02, $02\n#_1BF608: db $48, $02, $02, $02, $02, $02, $00, $48\n#_1BF610: db $02, $02, $02, $02, $02, $5C, $08, $08\n#_1BF618: db $08, $02, $27, $02, $02, $02, $02, $02\n#_1BF620: db $00, $00, $00, $02, $02, $02, $02, $02\n#_1BF628: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BF630: db $01, $08, $02, $02, $02, $01, $01, $01\n#_1BF638: db $48, $01, $01, $01, $01, $01, $01, $01\n#_1BF640: db $22, $01, $01, $01, $01, $2B, $01, $01\n#_1BF648: db $01, $00, $00, $00, $01, $01, $00, $02\n#_1BF650: db $01, $48, $01, $00, $00, $00, $00, $48\n#_1BF658: db $00, $00, $00, $00, $00, $00, $12, $01\n#_1BF660: db $02, $48, $00, $00, $00, $00, $00, $01\n#_1BF668: db $01, $01, $02, $01, $01, $00, $00, $02\n#_1BF670: db $01, $01, $00, $02, $02, $01, $01, $01\n#_1BF678: db $01, $00, $01, $01, $00, $00, $00, $01\n#_1BF680: db $00, $48, $01, $02, $01, $01, $01, $01\n#_1BF688: db $01, $01, $02, $01, $01, $02, $02, $01\n#_1BF690: db $01, $01, $01, $01, $00, $02, $02, $02\n#_1BF698: db $02, $01, $02, $01, $02, $02, $02, $00\n#_1BF6A0: db $00, $01, $01, $01, $01, $00, $00, $00\n#_1BF6A8: db $00, $01, $00, $00, $12, $01, $01, $02\n#_1BF6B0: db $01, $01, $00, $01, $29, $01, $42, $02\n#_1BF6B8: db $02, $01, $00, $02, $01, $01, $01, $02\n#_1BF6C0: db $01, $01, $01, $01, $01, $01, $01, $01\n#_1BF6C8: db $01, $01, $01, $01, $01, $01, $01, $01\n#_1BF6D0: db $01, $01, $02, $02, $00, $02, $02, $00\n#_1BF6D8: db $00, $48, $48, $01, $01, $01, $01, $01\n#_1BF6E0: db $01, $01, $01, $01, $01, $01, $01, $48\n#_1BF6E8: db $02, $02, $48, $00, $00, $00, $00, $00\n#_1BF6F0: db $48, $01, $01, $48, $48, $01, $01, $00\n#_1BF6F8: db $02, $02, $48, $02, $02, $01, $01, $02\n#_1BF700: db $02, $42, $02, $02, $02, $27, $00, $01\n#_1BF708: db $29, $01, $01, $01, $01, $00, $01, $01\n#_1BF710: db $01, $00, $01, $01, $00, $01, $01, $01\n#_1BF718: db $01, $01, $01, $01, $00, $00, $02, $00\n#_1BF720: db $02, $01, $02, $02, $00, $00, $02, $01\n#_1BF728: db $01, $01, $01, $01, $01, $02, $27, $27\n#_1BF730: db $00, $27, $02, $00, $01, $00, $00, $00\n#_1BF738: db $00, $00, $48, $00, $00, $00, $00, $00\n#_1BF740: db $48, $01, $01, $01, $00, $01, $01, $01\n#_1BF748: db $02, $02, $02, $48, $02, $02, $01, $00\n#_1BF750: db $00, $48, $48, $00, $27, $27, $27, $48\n#_1BF758: db $00, $27, $01, $01, $48, $00, $27, $01\n#_1BF760: db $01, $48, $01, $01, $01, $01, $01, $27\n#_1BF768: db $27, $12, $01, $02, $27, $01, $01, $01\n#_1BF770: db $01, $01, $48, $27, $02, $01, $01, $01\n#_1BF778: db $00, $12, $00, $29, $27, $01, $01, $01\n#_1BF780: db $10, $02, $01, $01, $01, $02, $01, $01\n#_1BF788: db $00, $00, $00, $02, $01, $00, $00, $00\n#_1BF790: db $02, $01, $00, $00, $00, $00, $02, $02\n#_1BF798: db $00, $00, $09, $00, $00, $48, $00, $02\n#_1BF7A0: db $00, $00, $00, $00, $00, $02, $00, $00\n#_1BF7A8: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1BF7B0: db $08, $5C, $09, $02, $02, $48, $48, $48\n#_1BF7B8: db $48, $01, $01, $01, $12, $00, $00, $01\n#_1BF7C0: db $01, $02, $01, $01, $01, $01, $02, $01\n#_1BF7C8: db $1A, $02, $02, $00, $02, $02, $2B, $01\n#_1BF7D0: db $01, $02, $01, $02, $01, $01, $02, $02\n#_1BF7D8: db $02, $01, $02, $00, $02, $02, $2B, $02\n#_1BF7E0: db $01, $01, $01, $02, $02, $01, $01, $22\n#_1BF7E8: db $02, $01, $01, $02, $02, $02, $01, $22\n#_1BF7F0: db $10, $01, $22, $00, $00, $00, $00, $00\n#_1BF7F8: db $00, $01, $10, $01, $01, $22, $01, $00\n#_1BF800: db $00, $00, $00, $01, $01, $01, $01, $00\n#_1BF808: db $00, $00, $00, $01, $01, $01, $01, $01\n#_1BF810: db $01, $01, $01, $00, $01, $00, $00, $00\n#_1BF818: db $00, $48, $02, $02, $46, $46, $01, $01\n#_1BF820: db $01, $22, $01, $01, $00, $02, $02, $02\n#_1BF828: db $22, $02, $02, $01, $44, $00, $01, $01\n#_1BF830: db $00, $00, $00, $00, $01, $00, $02, $00\n#_1BF838: db $01, $02, $51, $02, $02, $02, $02, $00\n#_1BF840: db $00, $12, $01, $01, $01, $02, $02, $01\n#_1BF848: db $01, $01, $01, $01, $02, $01, $01, $02\n#_1BF850: db $01, $01, $02, $01, $02, $02, $44, $01\n#_1BF858: db $02, $02, $02, $02, $02, $00, $01, $08\n#_1BF860: db $02, $02, $02, $00, $00, $00, $00, $00\n#_1BF868: db $02, $48, $00, $00, $00, $02, $29, $00\n#_1BF870: db $00, $00, $00, $00, $00, $00, $00, $01\n#_1BF878: db $00, $12, $00, $00, $00, $00, $00, $00\n#_1BF880: db $00, $00, $00, $48, $00, $00, $48, $00\n#_1BF888: db $00, $00, $00, $01, $48, $00, $12, $12\n#_1BF890: db $1A, $12, $29, $01, $01, $01, $01, $00\n#_1BF898: db $01, $01, $10, $48, $48, $48, $02, $48\n#_1BF8A0: db $01, $01, $02, $01, $27, $01, $02, $02\n#_1BF8A8: db $02, $01, $01, $01, $01, $01, $01, $01\n#_1BF8B0: db $01, $01, $02, $02, $01, $27, $01, $01\n#_1BF8B8: db $01, $01, $27, $27, $01, $02, $02, $01\n#_1BF8C0: db $01, $27, $27, $02, $02, $01, $01, $01\n#_1BF8C8: db $01, $02, $02, $01, $01, $01, $01, $02\n#_1BF8D0: db $02, $02, $02, $02, $02, $02, $00, $48\n#_1BF8D8: db $02, $02, $00, $02, $01, $00, $01, $02\n#_1BF8E0: db $02, $02, $02, $01, $27, $02, $02, $01\n#_1BF8E8: db $00, $01, $02, $02, $27, $02, $01, $01\n#_1BF8F0: db $02, $02, $27, $02, $02, $01, $02, $02\n#_1BF8F8: db $02, $02, $01, $01, $02, $02, $02, $02\n#_1BF900: db $27, $02, $02, $02, $02, $02, $02, $44\n#_1BF908: db $02, $01, $01, $02, $02, $02, $02, $01\n#_1BF910: db $02, $02, $02, $27, $02, $02, $01, $02\n#_1BF918: db $02, $02, $01, $01, $01, $02, $02, $01\n#_1BF920: db $00, $01, $02, $02, $00, $20, $20, $20\n#_1BF928: db $20, $02, $27, $27, $27, $00, $02, $00\n#_1BF930: db $00, $02, $02, $02, $27, $27, $01, $01\n#_1BF938: db $27, $27, $27, $27, $01, $02, $02, $01\n#_1BF940: db $01, $02, $27, $02, $01, $27, $27, $27\n#_1BF948: db $27, $00, $00, $02, $00, $27, $00, $00\n#_1BF950: db $27, $27, $00, $27, $27, $02, $01, $02\n#_1BF958: db $01, $01, $00, $02, $02, $48, $02, $10\n#_1BF960: db $00, $02, $01, $02, $00, $00, $00, $00\n#_1BF968: db $01, $00, $00, $02, $01, $02, $01, $01\n#_1BF970: db $00, $00, $02, $08, $02, $00, $02, $09\n#_1BF978: db $01, $02, $01, $01, $08, $01, $08, $01\n#_1BF980: db $02, $12, $01, $02, $10, $12, $02, $02\n#_1BF988: db $02, $01, $02, $02, $02, $02, $01, $08\n#_1BF990: db $01, $00, $00, $00, $01, $01, $10, $01\n#_1BF998: db $02, $08, $08, $09, $08, $02, $01, $01\n#_1BF9A0: db $02, $01, $01, $00, $01, $02, $01, $42\n#_1BF9A8: db $01, $01, $01, $01, $02, $02, $02, $02\n#_1BF9B0: db $01, $01, $01, $01, $42, $42, $01, $02\n#_1BF9B8: db $02, $01, $02, $02, $02, $02, $01, $01\n#_1BF9C0: db $01, $01, $01, $01, $01, $01, $02, $02\n#_1BF9C8: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BF9D0: db $01, $02, $01, $01, $02, $02, $02, $02\n#_1BF9D8: db $02, $02, $02, $02, $02, $01, $01, $01\n#_1BF9E0: db $01, $02, $22, $02, $01, $02, $02, $02\n#_1BF9E8: db $01, $02, $02, $02, $22, $02, $02, $02\n#_1BF9F0: db $01, $01, $02, $02, $01, $02, $02, $01\n#_1BF9F8: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BFA00: db $01, $01, $01, $00, $01, $01, $01, $01\n#_1BFA08: db $02, $02, $02, $02, $01, $01, $02, $02\n#_1BFA10: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BFA18: db $02, $02, $02, $01, $00, $02, $00, $00\n#_1BFA20: db $00, $00, $00, $10, $02, $02, $02, $02\n#_1BFA28: db $02, $02, $02, $02, $01, $08, $08, $00\n#_1BFA30: db $01, $02, $02, $02, $02, $01, $02, $01\n#_1BFA38: db $22, $01, $01, $02, $02, $18, $01, $01\n#_1BFA40: db $01, $02, $02, $02, $02, $02, $02, $02\n#_1BFA48: db $01, $02, $02, $02, $02, $02, $02, $42\n#_1BFA50: db $02, $01, $02, $02, $02, $02, $02, $48\n#_1BFA58: db $48, $48, $48, $00, $02, $01, $00, $02\n#_1BFA60: db $02, $27, $27, $01, $00, $27, $02, $00\n#_1BFA68: db $02, $00, $00, $02, $02, $00, $00, $02\n#_1BFA70: db $01, $02, $27, $00, $00, $02, $00, $01\n#_1BFA78: db $01, $29, $00, $02, $00, $10, $01, $00\n#_1BFA80: db $12, $00, $00, $01, $01, $48, $02, $02\n#_1BFA88: db $00, $00, $02, $02, $00, $02, $02, $00\n#_1BFA90: db $00, $00, $02, $02, $00, $02, $00, $00\n#_1BFA98: db $00, $02, $00, $02, $00, $00, $00, $02\n#_1BFAA0: db $00, $00, $00, $02, $00, $02, $00, $00\n#_1BFAA8: db $00, $02, $00, $02, $02, $00, $00, $00\n#_1BFAB0: db $00, $02, $00, $01, $09, $10, $27, $44\n#_1BFAB8: db $02, $01, $00, $00, $02, $02, $02, $01\n#_1BFAC0: db $01, $02, $02, $00, $01, $01, $01, $48\n#_1BFAC8: db $00, $01, $00, $00, $01, $01, $00, $48\n#_1BFAD0: db $48, $00, $02, $02, $02, $02, $02, $02\n#_1BFAD8: db $00, $02, $00, $02, $02, $02, $00, $02\n#_1BFAE0: db $48, $00, $01, $48, $48, $00, $01, $48\n#_1BFAE8: db $01, $01, $01, $01, $01, $02, $02, $01\n#_1BFAF0: db $01, $01, $01, $00, $02, $48, $02, $48\n#_1BFAF8: db $01, $48, $01, $48, $00, $02, $02, $02\n#_1BFB00: db $01, $01, $02, $01, $01, $01, $00, $00\n#_1BFB08: db $01, $00, $00, $00, $00, $00, $00, $01\n#_1BFB10: db $01, $00, $01, $01, $01, $02, $22, $00\n#_1BFB18: db $02, $01, $01, $01, $02, $01, $44, $01\n#_1BFB20: db $01, $02, $00, $01, $02, $22, $01, $02\n#_1BFB28: db $42, $22, $02, $02, $01, $01, $02, $02\n#_1BFB30: db $02, $01, $01, $01, $01, $02, $02, $01\n#_1BFB38: db $01, $02, $01, $01, $02, $02, $01, $01\n#_1BFB40: db $01, $02, $01, $01, $02, $02, $43, $02\n#_1BFB48: db $02, $02, $02, $02, $01, $02, $02, $01\n#_1BFB50: db $01, $01, $02, $02, $01, $01, $01, $02\n#_1BFB58: db $02, $02, $01, $02, $43, $01, $01, $01\n#_1BFB60: db $01, $01, $01, $01, $01, $01, $00, $01\n#_1BFB68: db $00, $00, $00, $01, $01, $00, $01, $01\n#_1BFB70: db $01, $01, $01, $01, $02, $48, $02, $02\n#_1BFB78: db $01, $00, $00, $00, $02, $43, $00, $02\n#_1BFB80: db $01, $00, $00, $01, $01, $00, $00, $02\n#_1BFB88: db $01, $01, $01, $01, $01, $01, $01, $01\n#_1BFB90: db $01, $01, $01, $01, $01, $01, $02, $02\n#_1BFB98: db $02, $01, $01, $01, $01, $01, $02, $02\n#_1BFBA0: db $01, $02, $02, $01, $01, $42, $01, $02\n#_1BFBA8: db $02, $01, $02, $00, $02, $01, $02, $01\n#_1BFBB0: db $00, $01, $01, $00, $00, $02, $01, $01\n#_1BFBB8: db $02, $02, $02, $02, $01, $00, $01, $02\n#_1BFBC0: db $01, $01, $01, $01, $01, $01, $00, $00\n#_1BFBC8: db $01, $01, $01, $00, $00, $48, $00, $00\n#_1BFBD0: db $00, $01, $01, $01, $02, $02, $01, $01\n#_1BFBD8: db $02, $02, $01, $02, $02, $01, $01, $01\n#_1BFBE0: db $01, $01, $01, $00, $48, $00, $48, $00\n#_1BFBE8: db $00, $00, $01, $01, $01, $01, $01, $00\n#_1BFBF0: db $00, $01, $00, $00, $00, $00, $01, $02\n#_1BFBF8: db $01, $00, $02, $27, $00, $01, $01, $01\n#_1BFC00: db $01, $00, $02, $00, $01, $02, $00, $01\n#_1BFC08: db $01, $01, $02, $00, $02, $01, $02, $01\n#_1BFC10: db $01, $01, $27, $00, $09, $09, $00, $09\n#_1BFC18: db $02, $1A, $10, $01, $01, $01, $01, $00\n#_1BFC20: db $00, $48, $09, $09, $02, $00, $09, $09\n#_1BFC28: db $02, $09, $09, $01, $02, $02, $09, $09\n#_1BFC30: db $09, $42, $09, $01, $02, $09, $02, $02\n#_1BFC38: db $02, $02, $02, $09, $09, $09, $09, $02\n#_1BFC40: db $09, $02, $09, $01, $01, $01, $09, $09\n#_1BFC48: db $09, $09, $09, $00, $00, $02, $09, $02\n#_1BFC50: db $02, $02, $09, $00, $00, $02, $48, $09\n#_1BFC58: db $09, $09, $09, $00, $00, $02, $09, $09\n#_1BFC60: db $02, $09, $00, $00, $00, $02, $00, $00\n#_1BFC68: db $00, $00, $00, $00, $01, $02, $00, $02\n#_1BFC70: db $02, $00, $00, $00, $00, $00, $00, $09\n#_1BFC78: db $48, $09, $01, $01, $02, $02, $02, $01\n#_1BFC80: db $02, $48, $00, $00, $48, $00, $00, $00\n#_1BFC88: db $00, $12, $09, $09, $02, $02, $09, $02\n#_1BFC90: db $01, $02, $02, $09, $02, $12, $01, $12\n#_1BFC98: db $02, $01, $01, $00, $00, $10, $01, $00\n#_1BFCA0: db $01, $1A, $01, $02, $01, $01, $18, $00\n#_1BFCA8: db $00, $00, $00, $01, $08, $01, $09, $00\n#_1BFCB0: db $09, $09, $00, $09, $00, $00, $00, $00\n#_1BFCB8: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1BFCC0: db $02, $02, $02, $00, $09, $00, $01, $01\n#_1BFCC8: db $01, $02, $02, $01, $00, $00, $01, $02\n#_1BFCD0: db $02, $02, $00, $09, $01, $01, $01, $01\n#_1BFCD8: db $02, $02, $00, $01, $02, $02, $01, $01\n#_1BFCE0: db $02, $01, $01, $02, $00, $02, $22, $09\n#_1BFCE8: db $00, $00, $00, $01, $00, $02, $00, $00\n#_1BFCF0: db $48, $48, $48, $09, $09, $09, $09, $42\n#_1BFCF8: db $02, $09, $09, $02, $09, $01, $09, $02\n#_1BFD00: db $02, $02, $02, $01, $01, $01, $01, $01\n#_1BFD08: db $01, $01, $01, $01, $01, $01, $01, $01\n#_1BFD10: db $01, $01, $00, $00, $00, $00, $01, $01\n#_1BFD18: db $22, $22, $01, $01, $00, $02, $00, $02\n#_1BFD20: db $02, $02, $09, $01, $02, $01, $01, $01\n#_1BFD28: db $01, $02, $02, $02, $02, $00, $02, $02\n#_1BFD30: db $00, $01, $08, $02, $00, $12, $01, $01\n#_1BFD38: db $01, $01, $01, $01, $01, $01, $02, $01\n#_1BFD40: db $01, $02, $02, $02, $02, $02, $01, $02\n#_1BFD48: db $01, $01, $01, $01, $02, $02, $02, $01\n#_1BFD50: db $02, $01, $01, $01, $01, $01, $01, $02\n#_1BFD58: db $01, $01, $01, $00, $01, $01, $02, $01\n#_1BFD60: db $01, $01, $01, $01, $01, $01, $00, $00\n#_1BFD68: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1BFD70: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1BFD78: db $00, $48, $48, $02, $00, $02, $02, $02\n#_1BFD80: db $02, $02, $02, $02, $01, $01, $02, $02\n#_1BFD88: db $02, $02, $01, $01, $48, $00, $01, $01\n#_1BFD90: db $01, $01, $02, $02, $02, $02, $02, $48\n#_1BFD98: db $02, $02, $02, $02, $02, $02, $00, $02\n#_1BFDA0: db $00, $00, $02, $02, $00, $02, $00, $02\n#_1BFDA8: db $00, $02, $02, $00, $02, $02, $02, $02\n#_1BFDB0: db $02, $00, $00, $02, $02, $48, $02, $02\n#_1BFDB8: db $02, $02, $02, $02, $42, $42, $02, $02\n#_1BFDC0: db $02, $02, $02, $22, $22, $22, $02, $02\n#_1BFDC8: db $08, $00, $02, $22, $22, $22, $02, $08\n#_1BFDD0: db $02, $02, $02, $02, $00, $02, $02, $02\n#_1BFDD8: db $02, $00, $01, $01, $01, $01, $02, $02\n#_1BFDE0: db $02, $01, $01, $02, $01, $00, $01, $02\n#_1BFDE8: db $01, $01, $02, $00, $02, $00, $00, $01\n#_1BFDF0: db $02, $02, $02, $00, $01, $01, $01, $00\n#_1BFDF8: db $01, $02, $02, $01, $02, $02, $01, $00\n#_1BFE00: db $01, $02, $01, $02, $02, $02, $00, $02\n#_1BFE08: db $02, $00, $00, $48, $09, $09, $09, $00\n#_1BFE10: db $09, $09, $09, $09, $09, $09, $09, $09\n#_1BFE18: db $09, $09, $08, $09, $08, $00, $00, $02\n#_1BFE20: db $02, $02, $02, $09, $5C, $08, $00, $00\n#_1BFE28: db $02, $02, $00, $02, $02, $5C, $09, $10\n#_1BFE30: db $09, $09, $27, $27, $27, $09, $00, $5C\n#_1BFE38: db $02, $00, $00, $02, $01, $00, $00, $01\n#_1BFE40: db $02, $02, $02, $02, $02, $02, $02, $02\n#_1BFE48: db $02, $02, $02, $02, $02, $01, $00, $00\n#_1BFE50: db $00, $09, $09, $09, $09, $09, $00, $00\n#_1BFE58: db $09, $09, $09, $48, $09, $09, $09, $09\n#_1BFE60: db $09, $09, $00, $09, $09, $09, $48, $00\n#_1BFE68: db $00, $00, $02, $2E, $28, $2B, $2A, $01\n#_1BFE70: db $01, $00, $01, $01, $01, $01, $01, $02\n#_1BFE78: db $01, $22, $01, $01, $22, $01, $02, $01\n#_1BFE80: db $01, $01, $01, $01, $00, $2E, $22, $2F\n#_1BFE88: db $29, $02, $01, $01, $01, $01, $01, $01\n#_1BFE90: db $1A, $1A, $1A, $1A, $1A, $1A, $1A, $01\n#_1BFE98: db $01, $12, $01, $01, $01, $01, $01, $01\n#_1BFEA0: db $01, $01, $01, $12, $01, $02, $02, $01\n#_1BFEA8: db $01, $02, $02, $02, $12, $02, $02, $01\n#_1BFEB0: db $01, $02, $02, $02, $02, $02, $02, $02\n#_1BFEB8: db $01, $01, $00, $00, $01, $01, $00, $00\n#_1BFEC0: db $01, $01, $01, $01, $02, $02, $01, $01\n#_1BFEC8: db $00, $00, $01, $01, $02, $02, $00, $00\n#_1BFED0: db $00, $00, $00, $00, $00, $48, $00, $48\n#_1BFED8: db $48, $48, $48, $00, $20, $00, $00, $00\n#_1BFEE0: db $48, $02, $01, $02, $42, $02, $02, $02\n#_1BFEE8: db $42, $02, $02, $02, $42, $02, $20, $00\n#_1BFEF0: db $00, $00, $00, $00, $00, $00, $00, $00\n#_1BFEF8: db $00, $00, $00, $00, $00, $00, $00, $09\n#_1BFF00: db $09, $09, $00, $00, $09, $00, $09, $00\n#_1BFF08: db $00, $00, $00, $00, $00, $09, $00, $00\n#_1BFF10: db $00, $48, $00, $00, $00, $00, $00, $00\n#_1BFF18: db $00, $00, $00, $02, $02, $01, $02, $02\n#_1BFF20: db $22, $02, $02, $02, $02, $02, $02, $02\n#_1BFF28: db $02, $02, $02, $01, $02, $01, $01, $01\n#_1BFF30: db $22, $00, $00, $01, $01, $01, $22, $01\n#_1BFF38: db $44, $44, $29, $22, $00, $00, $00, $00\n#_1BFF40: db $00, $01, $48, $02, $02, $02, $01, $01\n#_1BFF48: db $02, $02, $01, $20, $02, $27, $22, $00\n#_1BFF50: db $00, $20, $20, $20, $20, $00, $20, $00\n#_1BFF58: db $09, $02, $02, $09, $01, $01, $02, $02\n#_1BFF60: db $09, $01, $01, $01, $09, $02, $02, $09\n#_1BFF68: db $02, $01, $02, $01, $02, $01, $01, $01\n#_1BFF70: db $01, $01, $02, $01, $09, $02, $02, $09\n#_1BFF78: db $02, $01, $02, $01, $02, $01, $01, $01\n#_1BFF80: db $02, $01, $02, $01, $02, $02, $09, $02\n#_1BFF88: db $02, $02, $02, $02, $44, $02, $02, $44\n#_1BFF90: db $44, $02, $22, $44, $43, $02, $22, $43\n#_1BFF98: db $01, $01, $01, $01, $01, $22, $01, $01\n#_1BFFA0: db $01, $02, $02, $22, $00, $02, $02, $22\n#_1BFFA8: db $02, $22, $02, $22, $02, $22, $02, $22\n#_1BFFB0: db $02, $22, $01, $01, $00, $00, $00, $00\n#_1BFFB8: db $00, $00, $00, $00, $00, $00, $00, $00\n\n; =========================================================\n; FREE ROM: 0x40\n; =========================================================", + "file": "bank_1B.asm" + }, + { + "name": "Map16Definitions", + "code": "Map16Definitions:\n#_0F8000: dw $7031, $7030, $7004, $7003 ; tile000: 0x031, 0x030, 0x004, 0x003\n#_0F8008: dw $3030, $3031, $3003, $3004 ; tile001: 0x030, 0x031, 0x003, 0x004\n#_0F8010: dw $3032, $7032, $3005, $7005 ; tile002: 0x032, 0x032, 0x005, 0x005\n#_0F8018: dw $715A, $1100, $516A, $1100 ; tile003: 0x15A, 0x100, 0x16A, 0x100\n#_0F8020: dw $1100, $1100, $1100, $1100 ; tile004: 0x100, 0x100, 0x100, 0x100\n#_0F8028: dw $1108, $3008, $1100, $1145 ; tile005: 0x108, 0x008, 0x100, 0x145\n#_0F8030: dw $3009, $300A, $1019, $3007 ; tile006: 0x009, 0x00A, 0x019, 0x007\n#_0F8038: dw $3013, $3014, $3000, $3001 ; tile007: 0x013, 0x014, 0x000, 0x001\n#_0F8040: dw $3015, $7015, $3002, $7002 ; tile008: 0x015, 0x015, 0x002, 0x002\n#_0F8048: dw $7014, $7013, $7001, $7000 ; tile009: 0x014, 0x013, 0x001, 0x000\n#_0F8050: dw $3014, $3015, $3001, $3002 ; tile00A: 0x014, 0x015, 0x001, 0x002\n#_0F8058: dw $7015, $7014, $7002, $7001 ; tile00B: 0x015, 0x014, 0x002, 0x001\n#_0F8060: dw $7013, $3013, $7000, $3000 ; tile00C: 0x013, 0x013, 0x000, 0x000\n#_0F8068: dw $7013, $700A, $7000, $5007 ; tile00D: 0x013, 0x00A, 0x000, 0x007\n#_0F8070: dw $7009, $7008, $5019, $5145 ; tile00E: 0x009, 0x008, 0x019, 0x145\n#_0F8078: dw $1100, $1155, $1100, $1100 ; tile00F: 0x100, 0x155, 0x100, 0x100\n#_0F8080: dw $1146, $3017, $1100, $301F ; tile010: 0x146, 0x017, 0x100, 0x01F\n#_0F8088: dw $3010, $3011, $3020, $3021 ; tile011: 0x010, 0x011, 0x020, 0x021\n#_0F8090: dw $3012, $7012, $3022, $7022 ; tile012: 0x012, 0x012, 0x022, 0x022\n#_0F8098: dw $7011, $7010, $7021, $7020 ; tile013: 0x011, 0x010, 0x021, 0x020\n#_0F80A0: dw $3011, $3012, $3021, $3022 ; tile014: 0x011, 0x012, 0x021, 0x022\n#_0F80A8: dw $7012, $7011, $7022, $7021 ; tile015: 0x012, 0x011, 0x022, 0x021\n#_0F80B0: dw $7010, $3010, $7020, $3020 ; tile016: 0x010, 0x010, 0x020, 0x020\n#_0F80B8: dw $7010, $7017, $7020, $701F ; tile017: 0x010, 0x017, 0x020, 0x01F\n#_0F80C0: dw $5146, $5155, $1100, $1100 ; tile018: 0x146, 0x155, 0x100, 0x100\n#_0F80C8: dw $1118, $1171, $1152, $114B ; tile019: 0x118, 0x171, 0x152, 0x14B\n#_0F80D0: dw $5171, $5118, $514B, $5152 ; tile01A: 0x171, 0x118, 0x14B, 0x152\n#_0F80D8: dw $1100, $315A, $1100, $116A ; tile01B: 0x100, 0x15A, 0x100, 0x16A\n#_0F80E0: dw $3031, $3032, $3004, $3005 ; tile01C: 0x031, 0x032, 0x004, 0x005\n#_0F80E8: dw $7032, $7031, $7005, $7004 ; tile01D: 0x032, 0x031, 0x005, 0x004\n#_0F80F0: dw $7030, $3030, $7003, $3003 ; tile01E: 0x030, 0x030, 0x003, 0x003\n#_0F80F8: dw $7030, $715A, $7003, $716A ; tile01F: 0x030, 0x15A, 0x003, 0x16A\n#_0F8100: dw $1162, $1163, $1109, $1119 ; tile020: 0x162, 0x163, 0x109, 0x119\n#_0F8108: dw $5163, $5162, $5119, $5109 ; tile021: 0x163, 0x162, 0x119, 0x109\n#_0F8110: dw $1100, $117A, $315B, $3000 ; tile022: 0x100, 0x17A, 0x15B, 0x000\n#_0F8118: dw $317B, $303E, $3001, $3002 ; tile023: 0x17B, 0x03E, 0x001, 0x002\n#_0F8120: dw $3008, $3009, $1145, $1019 ; tile024: 0x008, 0x009, 0x145, 0x019\n#_0F8128: dw $300A, $700A, $101A, $501A ; tile025: 0x00A, 0x00A, 0x01A, 0x01A\n#_0F8130: dw $303E, $703E, $3002, $7002 ; tile026: 0x03E, 0x03E, 0x002, 0x002\n#_0F8138: dw $717B, $517A, $7001, $7000 ; tile027: 0x17B, 0x17A, 0x001, 0x000\n#_0F8140: dw $1100, $1100, $515B, $1100 ; tile028: 0x100, 0x100, 0x15B, 0x100\n#_0F8148: dw $316B, $3010, $301F, $3020 ; tile029: 0x16B, 0x010, 0x01F, 0x020\n#_0F8150: dw $1155, $1146, $1100, $1100 ; tile02A: 0x155, 0x146, 0x100, 0x100\n#_0F8158: dw $1147, $5147, $1129, $5129 ; tile02B: 0x147, 0x147, 0x129, 0x129\n#_0F8160: dw $716B, $1100, $701F, $1100 ; tile02C: 0x16B, 0x100, 0x01F, 0x100\n#_0F8168: dw $315A, $3030, $116A, $3003 ; tile02D: 0x15A, 0x030, 0x16A, 0x003\n#_0F8170: dw $7030, $715A, $7003, $516A ; tile02E: 0x030, 0x15A, 0x003, 0x16A\n#_0F8178: dw $1100, $5102, $5113, $5112 ; tile02F: 0x100, 0x102, 0x113, 0x112\n#_0F8180: dw $1103, $5103, $113A, $513A ; tile030: 0x103, 0x103, 0x13A, 0x13A\n#_0F8188: dw $700A, $7009, $7007, $5019 ; tile031: 0x00A, 0x009, 0x007, 0x019\n#_0F8190: dw $7008, $5108, $5145, $5100 ; tile032: 0x008, 0x108, 0x145, 0x100\n#_0F8198: dw $5125, $5124, $5135, $5134 ; tile033: 0x125, 0x124, 0x135, 0x134\n#_0F81A0: dw $08AA, $08AA, $08AA, $08AA ; tile034: 0x0AA, 0x0AA, 0x0AA, 0x0AA\n#_0F81A8: dw $08AA, $08AA, $088B, $488B ; tile035: 0x0AA, 0x0AA, 0x08B, 0x08B\n#_0F81B0: dw $1980, $5980, $1990, $5990 ; tile036: 0x180, 0x180, 0x190, 0x190\n#_0F81B8: dw $5108, $1100, $5100, $1100 ; tile037: 0x108, 0x100, 0x100, 0x100\n#_0F81C0: dw $7017, $5146, $701F, $1100 ; tile038: 0x017, 0x146, 0x01F, 0x100\n#_0F81C8: dw $5155, $1100, $1100, $1100 ; tile039: 0x155, 0x100, 0x100, 0x100\n#_0F81D0: dw $08AA, $08AA, $516C, $08AA ; tile03A: 0x0AA, 0x0AA, 0x16C, 0x0AA\n#_0F81D8: dw $715A, $5100, $516A, $5100 ; tile03B: 0x15A, 0x100, 0x16A, 0x100\n#_0F81E0: dw $08AA, $08AA, $1168, $1169 ; tile03C: 0x0AA, 0x0AA, 0x168, 0x169\n#_0F81E8: dw $08AA, $08AA, $116E, $516E ; tile03D: 0x0AA, 0x0AA, 0x16E, 0x16E\n#_0F81F0: dw $08AA, $08AA, $5169, $5168 ; tile03E: 0x0AA, 0x0AA, 0x169, 0x168\n#_0F81F8: dw $08AA, $112A, $113C, $1111 ; tile03F: 0x0AA, 0x12A, 0x13C, 0x111\n#_0F8200: dw $1110, $5110, $1120, $5120 ; tile040: 0x110, 0x110, 0x120, 0x120\n#_0F8208: dw $512A, $08AA, $5111, $513C ; tile041: 0x12A, 0x0AA, 0x111, 0x13C\n#_0F8210: dw $3162, $3163, $3109, $3119 ; tile042: 0x162, 0x163, 0x109, 0x119\n#_0F8218: dw $1100, $1108, $1100, $1100 ; tile043: 0x100, 0x108, 0x100, 0x100\n#_0F8220: dw $300A, $3013, $1007, $3000 ; tile044: 0x00A, 0x013, 0x007, 0x000\n#_0F8228: dw $703E, $717B, $7002, $7001 ; tile045: 0x03E, 0x17B, 0x002, 0x001\n#_0F8230: dw $517A, $1100, $7000, $715B ; tile046: 0x17A, 0x100, 0x000, 0x15B\n#_0F8238: dw $5121, $512B, $1100, $5130 ; tile047: 0x121, 0x12B, 0x100, 0x130\n#_0F8240: dw $3167, $3177, $3172, $B173 ; tile048: 0x167, 0x177, 0x172, 0x173\n#_0F8248: dw $317E, $717E, $B14C, $F14C ; tile049: 0x17E, 0x17E, 0x14C, 0x14C\n#_0F8250: dw $7177, $7167, $7156, $7172 ; tile04A: 0x177, 0x167, 0x156, 0x172\n#_0F8258: dw $112B, $1121, $1130, $1100 ; tile04B: 0x12B, 0x121, 0x130, 0x100\n#_0F8260: dw $1131, $1100, $1100, $1101 ; tile04C: 0x131, 0x100, 0x100, 0x101\n#_0F8268: dw $7008, $3008, $5145, $1145 ; tile04D: 0x008, 0x008, 0x145, 0x145\n#_0F8270: dw $3009, $300A, $1019, $101A ; tile04E: 0x009, 0x00A, 0x019, 0x01A\n#_0F8278: dw $700A, $7009, $501A, $5019 ; tile04F: 0x00A, 0x009, 0x01A, 0x019\n#_0F8280: dw $1100, $3104, $1114, $3115 ; tile050: 0x100, 0x104, 0x114, 0x115\n#_0F8288: dw $3105, $7105, $316F, $716F ; tile051: 0x105, 0x105, 0x16F, 0x16F\n#_0F8290: dw $7104, $1100, $7115, $5114 ; tile052: 0x104, 0x100, 0x115, 0x114\n#_0F8298: dw $3017, $3010, $301F, $3020 ; tile053: 0x017, 0x010, 0x01F, 0x020\n#_0F82A0: dw $7010, $716B, $7020, $701F ; tile054: 0x010, 0x16B, 0x020, 0x01F\n#_0F82A8: dw $B172, $3156, $3172, $3157 ; tile055: 0x172, 0x156, 0x172, 0x157\n#_0F82B0: dw $B14C, $F14C, $314C, $714C ; tile056: 0x14C, 0x14C, 0x14C, 0x14C\n#_0F82B8: dw $7157, $F172, $7173, $7172 ; tile057: 0x157, 0x172, 0x173, 0x172\n#_0F82C0: dw $1131, $1100, $1100, $115B ; tile058: 0x131, 0x100, 0x100, 0x15B\n#_0F82C8: dw $117A, $117B, $3000, $3001 ; tile059: 0x17A, 0x17B, 0x000, 0x001\n#_0F82D0: dw $3015, $703E, $3002, $7002 ; tile05A: 0x015, 0x03E, 0x002, 0x002\n#_0F82D8: dw $5155, $1155, $1100, $1100 ; tile05B: 0x155, 0x155, 0x100, 0x100\n#_0F82E0: dw $1146, $1147, $1100, $1129 ; tile05C: 0x146, 0x147, 0x100, 0x129\n#_0F82E8: dw $5147, $5146, $5129, $1100 ; tile05D: 0x147, 0x146, 0x129, 0x100\n#_0F82F0: dw $B172, $3173, $3172, $B173 ; tile05E: 0x172, 0x173, 0x172, 0x173\n#_0F82F8: dw $F173, $F172, $7173, $7172 ; tile05F: 0x173, 0x172, 0x173, 0x172\n#_0F8300: dw $1100, $316B, $1101, $301F ; tile060: 0x100, 0x16B, 0x101, 0x01F\n#_0F8308: dw $3166, $3164, $1176, $1133 ; tile061: 0x166, 0x164, 0x176, 0x133\n#_0F8310: dw $315C, $715C, $114D, $514D ; tile062: 0x15C, 0x15C, 0x14D, 0x14D\n#_0F8318: dw $7164, $7166, $5133, $5176 ; tile063: 0x164, 0x166, 0x133, 0x176\n#_0F8320: dw $1102, $1100, $1112, $1113 ; tile064: 0x102, 0x100, 0x112, 0x113\n#_0F8328: dw $1131, $315A, $1100, $116A ; tile065: 0x131, 0x15A, 0x100, 0x16A\n#_0F8330: dw $1178, $1179, $08AA, $08AA ; tile066: 0x178, 0x179, 0x0AA, 0x0AA\n#_0F8338: dw $115D, $515D, $08AA, $08AA ; tile067: 0x15D, 0x15D, 0x0AA, 0x0AA\n#_0F8340: dw $5179, $5178, $08AA, $08AA ; tile068: 0x179, 0x178, 0x0AA, 0x0AA\n#_0F8348: dw $1124, $1125, $1134, $1135 ; tile069: 0x124, 0x125, 0x134, 0x135\n#_0F8350: dw $7156, $F172, $7157, $7172 ; tile06A: 0x156, 0x172, 0x157, 0x172\n#_0F8358: dw $1101, $1108, $1100, $1100 ; tile06B: 0x101, 0x108, 0x100, 0x100\n#_0F8360: dw $08AA, $08AA, $116C, $08AA ; tile06C: 0x0AA, 0x0AA, 0x16C, 0x0AA\n#_0F8368: dw $113D, $1123, $48AA, $113B ; tile06D: 0x13D, 0x123, 0x0AA, 0x13B\n#_0F8370: dw $5123, $513D, $513B, $48AA ; tile06E: 0x123, 0x13D, 0x13B, 0x0AA\n#_0F8378: dw $1102, $512B, $1112, $1113 ; tile06F: 0x102, 0x12B, 0x112, 0x113\n#_0F8380: dw $113D, $1123, $14AA, $113B ; tile070: 0x13D, 0x123, 0x0AA, 0x13B\n#_0F8388: dw $088B, $488B, $08AA, $08AA ; tile071: 0x08B, 0x08B, 0x0AA, 0x0AA\n#_0F8390: dw $08AA, $08AA, $0D2F, $4D2F ; tile072: 0x0AA, 0x0AA, 0x12F, 0x12F\n#_0F8398: dw $0D2E, $4D2E, $08AA, $08AA ; tile073: 0x12E, 0x12E, 0x0AA, 0x0AA\n#_0F83A0: dw $7177, $7167, $7173, $7172 ; tile074: 0x177, 0x167, 0x173, 0x172\n#_0F83A8: dw $117A, $317B, $3000, $3001 ; tile075: 0x17A, 0x17B, 0x000, 0x001\n#_0F83B0: dw $7030, $702F, $7003, $703F ; tile076: 0x030, 0x02F, 0x003, 0x03F\n#_0F83B8: dw $303E, $7015, $3002, $7002 ; tile077: 0x03E, 0x015, 0x002, 0x002\n#_0F83C0: dw $703D, $703C, $7001, $7000 ; tile078: 0x03D, 0x03C, 0x001, 0x000\n#_0F83C8: dw $08AA, $08AA, $700E, $08AA ; tile079: 0x0AA, 0x0AA, 0x00E, 0x0AA\n#_0F83D0: dw $5155, $5102, $5113, $5112 ; tile07A: 0x155, 0x102, 0x113, 0x112\n#_0F83D8: dw $700F, $08AA, $701F, $08AA ; tile07B: 0x00F, 0x0AA, 0x01F, 0x0AA\n#_0F83E0: dw $702F, $08AA, $703F, $08AA ; tile07C: 0x02F, 0x0AA, 0x03F, 0x0AA\n#_0F83E8: dw $5108, $5100, $5100, $5100 ; tile07D: 0x108, 0x100, 0x100, 0x100\n#_0F83F0: dw $703E, $703D, $7002, $7001 ; tile07E: 0x03E, 0x03D, 0x002, 0x001\n#_0F83F8: dw $703C, $08AA, $7000, $700E ; tile07F: 0x03C, 0x0AA, 0x000, 0x00E\n#_0F8400: dw $3153, $7153, $B153, $F153 ; tile080: 0x153, 0x153, 0x153, 0x153\n#_0F8408: dw $1100, $1100, $1100, $1131 ; tile081: 0x100, 0x100, 0x100, 0x131\n#_0F8410: dw $7009, $7008, $5019, $5018 ; tile082: 0x009, 0x008, 0x019, 0x018\n#_0F8418: dw $3008, $3009, $1018, $1019 ; tile083: 0x008, 0x009, 0x018, 0x019\n#_0F8420: dw $5108, $5103, $113A, $513A ; tile084: 0x108, 0x103, 0x13A, 0x13A\n#_0F8428: dw $1103, $1108, $113A, $513A ; tile085: 0x103, 0x108, 0x13A, 0x13A\n#_0F8430: dw $5029, $5028, $500D, $08AA ; tile086: 0x029, 0x028, 0x00D, 0x0AA\n#_0F8438: dw $1028, $1029, $08AA, $100D ; tile087: 0x028, 0x029, 0x0AA, 0x00D\n#_0F8440: dw $102A, $502A, $102D, $502D ; tile088: 0x02A, 0x02A, 0x02D, 0x02D\n#_0F8448: dw $302F, $3030, $303F, $3003 ; tile089: 0x02F, 0x030, 0x03F, 0x003\n#_0F8450: dw $700A, $5009, $5007, $5019 ; tile08A: 0x00A, 0x009, 0x007, 0x019\n#_0F8458: dw $5008, $501D, $5018, $501E ; tile08B: 0x008, 0x01D, 0x018, 0x01E\n#_0F8460: dw $1106, $1144, $1116, $114B ; tile08C: 0x106, 0x144, 0x116, 0x14B\n#_0F8468: dw $5144, $5106, $514B, $5116 ; tile08D: 0x144, 0x106, 0x14B, 0x116\n#_0F8470: dw $10CB, $10CC, $10DB, $10DC ; tile08E: 0x0CB, 0x0CC, 0x0DB, 0x0DC\n#_0F8478: dw $50CC, $50CB, $50DC, $50DB ; tile08F: 0x0CC, 0x0CB, 0x0DC, 0x0DB\n#_0F8480: dw $101D, $1008, $101E, $1018 ; tile090: 0x01D, 0x008, 0x01E, 0x018\n#_0F8488: dw $1009, $100A, $1019, $101A ; tile091: 0x009, 0x00A, 0x019, 0x01A\n#_0F8490: dw $500A, $5009, $501A, $5019 ; tile092: 0x00A, 0x009, 0x01A, 0x019\n#_0F8498: dw $5008, $1008, $5018, $1018 ; tile093: 0x008, 0x008, 0x018, 0x018\n#_0F84A0: dw $7017, $5029, $701F, $500D ; tile094: 0x017, 0x029, 0x01F, 0x00D\n#_0F84A8: dw $5028, $08AA, $08AA, $08AA ; tile095: 0x028, 0x0AA, 0x0AA, 0x0AA\n#_0F84B0: dw $1126, $1163, $1136, $1137 ; tile096: 0x126, 0x163, 0x136, 0x137\n#_0F84B8: dw $5163, $5126, $5137, $5136 ; tile097: 0x163, 0x126, 0x137, 0x136\n#_0F84C0: dw $10EB, $10EC, $10FB, $10FC ; tile098: 0x0EB, 0x0EC, 0x0FB, 0x0FC\n#_0F84C8: dw $50EC, $50EB, $50FC, $50FB ; tile099: 0x0EC, 0x0EB, 0x0FC, 0x0FB\n#_0F84D0: dw $08AA, $1028, $08AA, $08AA ; tile09A: 0x0AA, 0x028, 0x0AA, 0x0AA\n#_0F84D8: dw $1029, $102A, $100D, $102D ; tile09B: 0x029, 0x02A, 0x00D, 0x02D\n#_0F84E0: dw $502A, $5029, $502D, $500D ; tile09C: 0x02A, 0x029, 0x02D, 0x00D\n#_0F84E8: dw $5028, $1028, $08AA, $08AA ; tile09D: 0x028, 0x028, 0x0AA, 0x0AA\n#_0F84F0: dw $08AA, $088C, $088C, $089C ; tile09E: 0x0AA, 0x08C, 0x08C, 0x09C\n#_0F84F8: dw $088F, $088F, $08BA, $08BA ; tile09F: 0x08F, 0x08F, 0x0BA, 0x0BA\n#_0F8500: dw $088F, $488C, $08BA, $489F ; tile0A0: 0x08F, 0x08C, 0x0BA, 0x09F\n#_0F8508: dw $08AA, $08AA, $489E, $488C ; tile0A1: 0x0AA, 0x0AA, 0x09E, 0x08C\n#_0F8510: dw $112B, $117A, $315B, $3000 ; tile0A2: 0x12B, 0x17A, 0x15B, 0x000\n#_0F8518: dw $089C, $08BA, $08BA, $08BB ; tile0A3: 0x09C, 0x0BA, 0x0BA, 0x0BB\n#_0F8520: dw $08BA, $08BA, $08AB, $C89C ; tile0A4: 0x0BA, 0x0BA, 0x0AB, 0x09C\n#_0F8528: dw $08BA, $08BA, $888F, $888F ; tile0A5: 0x0BA, 0x0BA, 0x08F, 0x08F\n#_0F8530: dw $08BA, $C89F, $888F, $C88C ; tile0A6: 0x0BA, 0x09F, 0x08F, 0x08C\n#_0F8538: dw $C89E, $C88C, $08AA, $08AA ; tile0A7: 0x09E, 0x08C, 0x0AA, 0x0AA\n#_0F8540: dw $7010, $700F, $7020, $701F ; tile0A8: 0x010, 0x00F, 0x020, 0x01F\n#_0F8548: dw $088E, $08BA, $088E, $08BA ; tile0A9: 0x08E, 0x0BA, 0x08E, 0x0BA\n#_0F8550: dw $08AB, $08BA, $08BB, $08AB ; tile0AA: 0x0AB, 0x0BA, 0x0BB, 0x0AB\n#_0F8558: dw $08AB, $08BA, $08BA, $08BB ; tile0AB: 0x0AB, 0x0BA, 0x0BA, 0x0BB\n#_0F8560: dw $C89C, $C88C, $C88C, $08AA ; tile0AC: 0x09C, 0x08C, 0x08C, 0x0AA\n#_0F8568: dw $888C, $889C, $08AA, $888C ; tile0AD: 0x08C, 0x09C, 0x0AA, 0x08C\n#_0F8570: dw $08AA, $303C, $300E, $3000 ; tile0AE: 0x0AA, 0x03C, 0x00E, 0x000\n#_0F8578: dw $303D, $303E, $3001, $3002 ; tile0AF: 0x03D, 0x03E, 0x001, 0x002\n#_0F8580: dw $300F, $3010, $301F, $3020 ; tile0B0: 0x00F, 0x010, 0x01F, 0x020\n#_0F8588: dw $703C, $303C, $7000, $3000 ; tile0B1: 0x03C, 0x03C, 0x000, 0x000\n#_0F8590: dw $517A, $117A, $7000, $3000 ; tile0B2: 0x17A, 0x17A, 0x000, 0x000\n#_0F8598: dw $48AA, $48AA, $10CB, $10CC ; tile0B3: 0x0AA, 0x0AA, 0x0CB, 0x0CC\n#_0F85A0: dw $48AA, $48AA, $50CC, $50CB ; tile0B4: 0x0AA, 0x0AA, 0x0CC, 0x0CB\n#_0F85A8: dw $08AA, $08AA, $08AA, $300E ; tile0B5: 0x0AA, 0x0AA, 0x0AA, 0x00E\n#_0F85B0: dw $303C, $303D, $3000, $3001 ; tile0B6: 0x03C, 0x03D, 0x000, 0x001\n#_0F85B8: dw $10DB, $10DC, $10EB, $10EC ; tile0B7: 0x0DB, 0x0DC, 0x0EB, 0x0EC\n#_0F85C0: dw $50DC, $50DB, $50EC, $50EB ; tile0B8: 0x0DC, 0x0DB, 0x0EC, 0x0EB\n#_0F85C8: dw $08AA, $300F, $08AA, $301F ; tile0B9: 0x0AA, 0x00F, 0x0AA, 0x01F\n#_0F85D0: dw $1142, $1143, $1152, $114B ; tile0BA: 0x142, 0x143, 0x152, 0x14B\n#_0F85D8: dw $5143, $5142, $514B, $5152 ; tile0BB: 0x143, 0x142, 0x14B, 0x152\n#_0F85E0: dw $10FB, $10FC, $1106, $1144 ; tile0BC: 0x0FB, 0x0FC, 0x106, 0x144\n#_0F85E8: dw $50FC, $50FB, $5144, $5106 ; tile0BD: 0x0FC, 0x0FB, 0x144, 0x106\n#_0F85F0: dw $08AA, $302F, $08AA, $303F ; tile0BE: 0x0AA, 0x02F, 0x0AA, 0x03F\n#_0F85F8: dw $1116, $114B, $1126, $1163 ; tile0BF: 0x116, 0x14B, 0x126, 0x163\n#_0F8600: dw $514B, $5116, $5163, $5126 ; tile0C0: 0x14B, 0x116, 0x163, 0x126\n#_0F8608: dw $1136, $1137, $5169, $5168 ; tile0C1: 0x136, 0x137, 0x169, 0x168\n#_0F8610: dw $5137, $5136, $1168, $1169 ; tile0C2: 0x137, 0x136, 0x168, 0x169\n#_0F8618: dw $4866, $4864, $502E, $4874 ; tile0C3: 0x066, 0x064, 0x02E, 0x074\n#_0F8620: dw $4865, $4864, $4875, $4874 ; tile0C4: 0x065, 0x064, 0x075, 0x074\n#_0F8628: dw $884E, $08BA, $084E, $08BA ; tile0C5: 0x04E, 0x0BA, 0x04E, 0x0BA\n#_0F8630: dw $C8BA, $08BA, $88BA, $C8BA ; tile0C6: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0F8638: dw $50A1, $4862, $08BA, $50A0 ; tile0C7: 0x0A1, 0x062, 0x0BA, 0x0A0\n#_0F8640: dw $4853, $4842, $4863, $4852 ; tile0C8: 0x053, 0x042, 0x063, 0x052\n#_0F8648: dw $0840, $0841, $0850, $0851 ; tile0C9: 0x040, 0x041, 0x050, 0x051\n#_0F8650: dw $4873, $4862, $4843, $4872 ; tile0CA: 0x073, 0x062, 0x043, 0x072\n#_0F8658: dw $503A, $4864, $701F, $4874 ; tile0CB: 0x03A, 0x064, 0x01F, 0x074\n#_0F8660: dw $0860, $0861, $10B0, $10B1 ; tile0CC: 0x060, 0x061, 0x0B0, 0x0B1\n#_0F8668: dw $501C, $4864, $500C, $4874 ; tile0CD: 0x01C, 0x064, 0x00C, 0x074\n#_0F8670: dw $4866, $4864, $4876, $4874 ; tile0CE: 0x066, 0x064, 0x076, 0x074\n#_0F8678: dw $4865, $4848, $4858, $4852 ; tile0CF: 0x065, 0x048, 0x058, 0x052\n#_0F8680: dw $085B, $0879, $4843, $085B ; tile0D0: 0x05B, 0x079, 0x043, 0x05B\n#_0F8688: dw $08BA, $08BA, $085C, $485C ; tile0D1: 0x0BA, 0x0BA, 0x05C, 0x05C\n#_0F8690: dw $08BA, $08BA, $0879, $08BA ; tile0D2: 0x0BA, 0x0BA, 0x079, 0x0BA\n#_0F8698: dw $4853, $4847, $4863, $4874 ; tile0D3: 0x053, 0x047, 0x063, 0x074\n#_0F86A0: dw $4866, $4848, $4876, $4852 ; tile0D4: 0x066, 0x048, 0x076, 0x052\n#_0F86A8: dw $5066, $4864, $5076, $4874 ; tile0D5: 0x066, 0x064, 0x076, 0x074\n#_0F86B0: dw $7008, $3008, $5018, $1018 ; tile0D6: 0x008, 0x008, 0x018, 0x018\n#_0F86B8: dw $3009, $300A, $1019, $1007 ; tile0D7: 0x009, 0x00A, 0x019, 0x007\n#_0F86C0: dw $700A, $7009, $5007, $5019 ; tile0D8: 0x00A, 0x009, 0x007, 0x019\n#_0F86C8: dw $7008, $501D, $5018, $501E ; tile0D9: 0x008, 0x01D, 0x018, 0x01E\n#_0F86D0: dw $088B, $488B, $488B, $088B ; tile0DA: 0x08B, 0x08B, 0x08B, 0x08B\n#_0F86D8: dw $48A1, $4862, $48AA, $48A0 ; tile0DB: 0x0A1, 0x062, 0x0AA, 0x0A0\n#_0F86E0: dw $0860, $0861, $0870, $0871 ; tile0DC: 0x060, 0x061, 0x070, 0x071\n#_0F86E8: dw $2860, $2861, $2870, $2871 ; tile0DD: 0x060, 0x061, 0x070, 0x071\n#_0F86F0: dw $1029, $3017, $100D, $301F ; tile0DE: 0x029, 0x017, 0x00D, 0x01F\n#_0F86F8: dw $29F9, $29FA, $09EB, $09EF ; tile0DF: 0x1F9, 0x1FA, 0x1EB, 0x1EF\n#_0F8700: dw $69FA, $69F9, $49EF, $49EB ; tile0E0: 0x1FA, 0x1F9, 0x1EF, 0x1EB\n#_0F8708: dw $15DB, $488B, $088B, $15DB ; tile0E1: 0x1DB, 0x08B, 0x08B, 0x1DB\n#_0F8710: dw $15DB, $08AA, $088B, $488B ; tile0E2: 0x1DB, 0x0AA, 0x08B, 0x08B\n#_0F8718: dw $0860, $0861, $08B0, $08B1 ; tile0E3: 0x060, 0x061, 0x0B0, 0x0B1\n#_0F8720: dw $09FB, $09EF, $09FC, $09EC ; tile0E4: 0x1FB, 0x1EF, 0x1FC, 0x1EC\n#_0F8728: dw $49EF, $49FB, $49EC, $49FC ; tile0E5: 0x1EF, 0x1FB, 0x1EC, 0x1FC\n#_0F8730: dw $4853, $4847, $4857, $4874 ; tile0E6: 0x053, 0x047, 0x057, 0x074\n#_0F8738: dw $08AA, $101D, $08AA, $101E ; tile0E7: 0x0AA, 0x01D, 0x0AA, 0x01E\n#_0F8740: dw $501D, $08AA, $501E, $08AA ; tile0E8: 0x01D, 0x0AA, 0x01E, 0x0AA\n#_0F8748: dw $28DE, $28DF, $28F2, $28F3 ; tile0E9: 0x0DE, 0x0DF, 0x0F2, 0x0F3\n#_0F8750: dw $28DF, $28DF, $28F3, $28F3 ; tile0EA: 0x0DF, 0x0DF, 0x0F3, 0x0F3\n#_0F8758: dw $28DF, $68DE, $28F3, $68F2 ; tile0EB: 0x0DF, 0x0DE, 0x0F3, 0x0F2\n#_0F8760: dw $08AA, $08AA, $14BD, $08AA ; tile0EC: 0x0AA, 0x0AA, 0x0BD, 0x0AA\n#_0F8768: dw $28F2, $28F3, $28F2, $28F3 ; tile0ED: 0x0F2, 0x0F3, 0x0F2, 0x0F3\n#_0F8770: dw $28F3, $28F3, $28F3, $28F3 ; tile0EE: 0x0F3, 0x0F3, 0x0F3, 0x0F3\n#_0F8778: dw $28F3, $68F2, $28F3, $68F2 ; tile0EF: 0x0F3, 0x0F2, 0x0F3, 0x0F2\n#_0F8780: dw $14AE, $08AA, $14AE, $08AA ; tile0F0: 0x0AE, 0x0AA, 0x0AE, 0x0AA\n#_0F8788: dw $101D, $3008, $101E, $1018 ; tile0F1: 0x01D, 0x008, 0x01E, 0x018\n#_0F8790: dw $198A, $08AA, $199A, $08AA ; tile0F2: 0x18A, 0x0AA, 0x19A, 0x0AA\n#_0F8798: dw $28F2, $28F3, $28F4, $28F5 ; tile0F3: 0x0F2, 0x0F3, 0x0F4, 0x0F5\n#_0F87A0: dw $28F3, $28F3, $28F5, $28F5 ; tile0F4: 0x0F3, 0x0F3, 0x0F5, 0x0F5\n#_0F87A8: dw $28E4, $28E5, $28C4, $28C5 ; tile0F5: 0x0E4, 0x0E5, 0x0C4, 0x0C5\n#_0F87B0: dw $68E5, $68E4, $68C5, $68C4 ; tile0F6: 0x0E5, 0x0E4, 0x0C5, 0x0C4\n#_0F87B8: dw $28F3, $68F2, $28F5, $68F4 ; tile0F7: 0x0F3, 0x0F2, 0x0F5, 0x0F4\n#_0F87C0: dw $088B, $488B, $08AA, $088B ; tile0F8: 0x08B, 0x08B, 0x0AA, 0x08B\n#_0F87C8: dw $08C7, $08C8, $08D7, $08D8 ; tile0F9: 0x0C7, 0x0C8, 0x0D7, 0x0D8\n#_0F87D0: dw $08C9, $48C8, $08D9, $48D8 ; tile0FA: 0x0C9, 0x0C8, 0x0D9, 0x0D8\n#_0F87D8: dw $08E8, $08E9, $08F8, $08F9 ; tile0FB: 0x0E8, 0x0E9, 0x0F8, 0x0F9\n#_0F87E0: dw $48E9, $48E8, $08FA, $48F8 ; tile0FC: 0x0E9, 0x0E8, 0x0FA, 0x0F8\n#_0F87E8: dw $08C8, $48C9, $08D8, $48D9 ; tile0FD: 0x0C8, 0x0C9, 0x0D8, 0x0D9\n#_0F87F0: dw $48C8, $08E7, $48D8, $08F7 ; tile0FE: 0x0C8, 0x0E7, 0x0D8, 0x0F7\n#_0F87F8: dw $14AE, $08AA, $94BD, $08AA ; tile0FF: 0x0AE, 0x0AA, 0x0BD, 0x0AA\n#_0F8800: dw $08AA, $48AF, $48AF, $48BF ; tile100: 0x0AA, 0x0AF, 0x0AF, 0x0BF\n#_0F8808: dw $1982, $5982, $1992, $5992 ; tile101: 0x182, 0x182, 0x192, 0x192\n#_0F8810: dw $08EF, $0CFD, $08AA, $08AA ; tile102: 0x0EF, 0x0FD, 0x0AA, 0x0AA\n#_0F8818: dw $4CFD, $48EF, $08AA, $08AA ; tile103: 0x0FD, 0x0EF, 0x0AA, 0x0AA\n#_0F8820: dw $08BF, $4846, $4856, $4854 ; tile104: 0x0BF, 0x046, 0x056, 0x054\n#_0F8828: dw $4844, $4845, $4855, $4854 ; tile105: 0x044, 0x045, 0x055, 0x054\n#_0F8830: dw $4844, $484D, $484D, $0859 ; tile106: 0x044, 0x04D, 0x04D, 0x059\n#_0F8838: dw $0859, $08BA, $08BA, $08BA ; tile107: 0x059, 0x0BA, 0x0BA, 0x0BA\n#_0F8840: dw $1988, $08AA, $1998, $08AA ; tile108: 0x188, 0x0AA, 0x198, 0x0AA\n#_0F8848: dw $08BA, $50AF, $50AF, $50BF ; tile109: 0x0BA, 0x0AF, 0x0AF, 0x0BF\n#_0F8850: dw $08AA, $1988, $08AA, $1998 ; tile10A: 0x0AA, 0x188, 0x0AA, 0x198\n#_0F8858: dw $1989, $1988, $1999, $1998 ; tile10B: 0x189, 0x188, 0x199, 0x198\n#_0F8860: dw $10BF, $5046, $5056, $4854 ; tile10C: 0x0BF, 0x046, 0x056, 0x054\n#_0F8868: dw $08AA, $088B, $088B, $488B ; tile10D: 0x0AA, 0x08B, 0x08B, 0x08B\n#_0F8870: dw $088B, $488B, $488B, $08AA ; tile10E: 0x08B, 0x08B, 0x08B, 0x0AA\n#_0F8878: dw $488B, $08AA, $088B, $488B ; tile10F: 0x08B, 0x0AA, 0x08B, 0x08B\n#_0F8880: dw $09E3, $09E3, $09E3, $09E3 ; tile110: 0x1E3, 0x1E3, 0x1E3, 0x1E3\n#_0F8888: dw $09E3, $4DDB, $4DDB, $1D6F ; tile111: 0x1E3, 0x1DB, 0x1DB, 0x16F\n#_0F8890: dw $1D6F, $1D6F, $1D6F, $1D6F ; tile112: 0x16F, 0x16F, 0x16F, 0x16F\n#_0F8898: dw $0DDA, $4DDA, $1D6F, $1D6F ; tile113: 0x1DA, 0x1DA, 0x16F, 0x16F\n#_0F88A0: dw $0DDB, $09E3, $1D6F, $0DDB ; tile114: 0x1DB, 0x1E3, 0x16F, 0x1DB\n#_0F88A8: dw $09E3, $4DDB, $09E3, $4DDC ; tile115: 0x1E3, 0x1DB, 0x1E3, 0x1DC\n#_0F88B0: dw $1D6F, $4D45, $4D45, $0886 ; tile116: 0x16F, 0x145, 0x145, 0x086\n#_0F88B8: dw $0D44, $4D44, $08A7, $48A7 ; tile117: 0x144, 0x144, 0x0A7, 0x0A7\n#_0F88C0: dw $0D45, $1D6F, $4886, $0D45 ; tile118: 0x145, 0x16F, 0x086, 0x145\n#_0F88C8: dw $09E3, $4DDD, $09E3, $4DD7 ; tile119: 0x1E3, 0x1DD, 0x1E3, 0x1D7\n#_0F88D0: dw $4DD9, $1D6F, $1D7F, $4DD9 ; tile11A: 0x1D9, 0x16F, 0x17F, 0x1D9\n#_0F88D8: dw $0DDB, $09E3, $0DDC, $09E3 ; tile11B: 0x1DB, 0x1E3, 0x1DC, 0x1E3\n#_0F88E0: dw $0886, $0896, $0896, $48A8 ; tile11C: 0x086, 0x096, 0x096, 0x0A8\n#_0F88E8: dw $08B7, $48B7, $08AA, $08AA ; tile11D: 0x0B7, 0x0B7, 0x0AA, 0x0AA\n#_0F88F0: dw $4896, $4886, $08A8, $4896 ; tile11E: 0x096, 0x086, 0x0A8, 0x096\n#_0F88F8: dw $4DD7, $1D7F, $09E3, $4DD7 ; tile11F: 0x1D7, 0x17F, 0x1E3, 0x1D7\n#_0F8900: dw $1D6F, $0DD9, $0DD9, $1D7F ; tile120: 0x16F, 0x1D9, 0x1D9, 0x17F\n#_0F8908: dw $0DDD, $09E3, $0DD7, $09E3 ; tile121: 0x1DD, 0x1E3, 0x1D7, 0x1E3\n#_0F8910: dw $1D6F, $1D6F, $1D6F, $CDD2 ; tile122: 0x16F, 0x16F, 0x16F, 0x1D2\n#_0F8918: dw $CDD2, $CDD3, $CDD3, $4874 ; tile123: 0x1D2, 0x1D3, 0x1D3, 0x074\n#_0F8920: dw $884E, $48A4, $084E, $48B4 ; tile124: 0x04E, 0x0A4, 0x04E, 0x0B4\n#_0F8928: dw $48A8, $08AA, $08AA, $08AA ; tile125: 0x0A8, 0x0AA, 0x0AA, 0x0AA\n#_0F8930: dw $08AA, $08A8, $08AA, $08AA ; tile126: 0x0AA, 0x0A8, 0x0AA, 0x0AA\n#_0F8938: dw $08A4, $884F, $08B4, $084F ; tile127: 0x0A4, 0x04F, 0x0B4, 0x04F\n#_0F8940: dw $8DD3, $8DD2, $0874, $8DD3 ; tile128: 0x1D3, 0x1D2, 0x074, 0x1D3\n#_0F8948: dw $1D6F, $1D6F, $8DD2, $1D6F ; tile129: 0x16F, 0x16F, 0x1D2, 0x16F\n#_0F8950: dw $0DD8, $4DD8, $0DD6, $4DD6 ; tile12A: 0x1D8, 0x1D8, 0x1D6, 0x1D6\n#_0F8958: dw $1D7F, $0DD7, $0DD7, $09E3 ; tile12B: 0x17F, 0x1D7, 0x1D7, 0x1E3\n#_0F8960: dw $1D6F, $4DC5, $1D6F, $4DD4 ; tile12C: 0x16F, 0x1C5, 0x16F, 0x1D4\n#_0F8968: dw $C9F2, $4864, $49F2, $4874 ; tile12D: 0x1F2, 0x064, 0x1F2, 0x074\n#_0F8970: dw $15DE, $15D5, $15D5, $15DE ; tile12E: 0x1DE, 0x1D5, 0x1D5, 0x1DE\n#_0F8978: dw $08AA, $15DE, $15D5, $08AA ; tile12F: 0x0AA, 0x1DE, 0x1D5, 0x0AA\n#_0F8980: dw $08AA, $08AA, $0926, $4926 ; tile130: 0x0AA, 0x0AA, 0x126, 0x126\n#_0F8988: dw $0864, $89F2, $0874, $09F2 ; tile131: 0x064, 0x1F2, 0x074, 0x1F2\n#_0F8990: dw $0DC5, $1D6F, $0DD4, $1D6F ; tile132: 0x1C5, 0x16F, 0x1D4, 0x16F\n#_0F8998: dw $1D7F, $CDD9, $CDD9, $1D6F ; tile133: 0x17F, 0x1D9, 0x1D9, 0x16F\n#_0F89A0: dw $08AA, $15D5, $15D5, $15DE ; tile134: 0x0AA, 0x1D5, 0x1D5, 0x1DE\n#_0F89A8: dw $0936, $4936, $090C, $490C ; tile135: 0x136, 0x136, 0x10C, 0x10C\n#_0F89B0: dw $1D04, $1D04, $1D0F, $1D0F ; tile136: 0x104, 0x104, 0x10F, 0x10F\n#_0F89B8: dw $1D05, $1D05, $1D0E, $1D0E ; tile137: 0x105, 0x105, 0x10E, 0x10E\n#_0F89C0: dw $1D06, $1D06, $1D0D, $1D0D ; tile138: 0x106, 0x106, 0x10D, 0x10D\n#_0F89C8: dw $08AA, $08AA, $08B8, $08AA ; tile139: 0x0AA, 0x0AA, 0x0B8, 0x0AA\n#_0F89D0: dw $0900, $0956, $0910, $0966 ; tile13A: 0x100, 0x156, 0x110, 0x166\n#_0F89D8: dw $4956, $4900, $4966, $4910 ; tile13B: 0x156, 0x100, 0x166, 0x110\n#_0F89E0: dw $1D1F, $1D1F, $1D14, $1D14 ; tile13C: 0x11F, 0x11F, 0x114, 0x114\n#_0F89E8: dw $1D1E, $1D1E, $1D15, $1D15 ; tile13D: 0x11E, 0x11E, 0x115, 0x115\n#_0F89F0: dw $1D1D, $1D1D, $1D16, $1D16 ; tile13E: 0x11D, 0x11D, 0x116, 0x116\n#_0F89F8: dw $C9F2, $4864, $49F2, $4852 ; tile13F: 0x1F2, 0x064, 0x1F2, 0x052\n#_0F8A00: dw $085B, $0897, $4843, $085B ; tile140: 0x05B, 0x097, 0x043, 0x05B\n#_0F8A08: dw $0887, $08B8, $0897, $0887 ; tile141: 0x087, 0x0B8, 0x097, 0x087\n#_0F8A10: dw $0920, $0976, $0901, $0911 ; tile142: 0x120, 0x176, 0x101, 0x111\n#_0F8A18: dw $4976, $4920, $4911, $4901 ; tile143: 0x176, 0x120, 0x111, 0x101\n#_0F8A20: dw $1D24, $1D24, $08B4, $484E ; tile144: 0x124, 0x124, 0x0B4, 0x04E\n#_0F8A28: dw $1D24, $1D24, $0874, $4D27 ; tile145: 0x124, 0x124, 0x074, 0x127\n#_0F8A30: dw $1D25, $1D25, $1D7F, $CDD8 ; tile146: 0x125, 0x125, 0x17F, 0x1D8\n#_0F8A38: dw $1D25, $1D25, $1D7F, $1D7F ; tile147: 0x125, 0x125, 0x17F, 0x17F\n#_0F8A40: dw $1D35, $1D35, $09E3, $09E3 ; tile148: 0x135, 0x135, 0x1E3, 0x1E3\n#_0F8A48: dw $1D6F, $4DD2, $1D6F, $1D6F ; tile149: 0x16F, 0x1D2, 0x16F, 0x16F\n#_0F8A50: dw $4DD3, $4862, $4DD2, $4DD3 ; tile14A: 0x1D3, 0x062, 0x1D2, 0x1D3\n#_0F8A58: dw $08AA, $08AA, $08AA, $48B8 ; tile14B: 0x0AA, 0x0AA, 0x0AA, 0x0B8\n#_0F8A60: dw $8DD9, $1D7F, $1D6F, $8DD9 ; tile14C: 0x1D9, 0x17F, 0x16F, 0x1D9\n#_0F8A68: dw $1D7F, $1D7F, $1D7F, $1D7F ; tile14D: 0x17F, 0x17F, 0x17F, 0x17F\n#_0F8A70: dw $08AA, $08AA, $0885, $4885 ; tile14E: 0x0AA, 0x0AA, 0x085, 0x085\n#_0F8A78: dw $48B8, $4887, $4887, $4897 ; tile14F: 0x0B8, 0x087, 0x087, 0x097\n#_0F8A80: dw $4897, $085D, $085D, $0843 ; tile150: 0x097, 0x05D, 0x05D, 0x043\n#_0F8A88: dw $0848, $89F2, $0852, $09F2 ; tile151: 0x048, 0x1F2, 0x052, 0x1F2\n#_0F8A90: dw $0895, $4895, $0922, $4922 ; tile152: 0x095, 0x095, 0x122, 0x122\n#_0F8A98: dw $0842, $0853, $0852, $0863 ; tile153: 0x042, 0x053, 0x052, 0x063\n#_0F8AA0: dw $0862, $0DD3, $0DD3, $0DD2 ; tile154: 0x062, 0x1D3, 0x1D3, 0x1D2\n#_0F8AA8: dw $0DD2, $1D6F, $1D6F, $1D6F ; tile155: 0x1D2, 0x16F, 0x16F, 0x16F\n#_0F8AB0: dw $0860, $0861, $09F0, $49F0 ; tile156: 0x060, 0x061, 0x1F0, 0x1F0\n#_0F8AB8: dw $0DD0, $0DD1, $1D6F, $1D6F ; tile157: 0x1D0, 0x1D1, 0x16F, 0x16F\n#_0F8AC0: dw $0845, $0844, $0854, $0855 ; tile158: 0x045, 0x044, 0x054, 0x055\n#_0F8AC8: dw $0DD8, $4DD8, $1D7F, $1D7F ; tile159: 0x1D8, 0x1D8, 0x17F, 0x17F\n#_0F8AD0: dw $1D7F, $1D7F, $0DD6, $4DD6 ; tile15A: 0x17F, 0x17F, 0x1D6, 0x1D6\n#_0F8AD8: dw $0864, $0865, $0874, $0875 ; tile15B: 0x064, 0x065, 0x074, 0x075\n#_0F8AE0: dw $08AA, $08AA, $08AA, $48AF ; tile15C: 0x0AA, 0x0AA, 0x0AA, 0x0AF\n#_0F8AE8: dw $48AF, $48BE, $4856, $0881 ; tile15D: 0x0AF, 0x0BE, 0x056, 0x081\n#_0F8AF0: dw $08BE, $48BE, $0880, $4880 ; tile15E: 0x0BE, 0x0BE, 0x080, 0x080\n#_0F8AF8: dw $08BE, $08AF, $0880, $0856 ; tile15F: 0x0BE, 0x0AF, 0x080, 0x056\n#_0F8B00: dw $08AA, $08AA, $08AF, $08AA ; tile160: 0x0AA, 0x0AA, 0x0AF, 0x0AA\n#_0F8B08: dw $485D, $0897, $4843, $485D ; tile161: 0x05D, 0x097, 0x043, 0x05D\n#_0F8B10: dw $48AF, $4846, $4856, $4854 ; tile162: 0x0AF, 0x046, 0x056, 0x054\n#_0F8B18: dw $4844, $484D, $484D, $0886 ; tile163: 0x044, 0x04D, 0x04D, 0x086\n#_0F8B20: dw $084C, $484C, $50A6, $08BA ; tile164: 0x04C, 0x04C, 0x0A6, 0x0BA\n#_0F8B28: dw $084C, $484C, $08BA, $08BA ; tile165: 0x04C, 0x04C, 0x0BA, 0x0BA\n#_0F8B30: dw $084D, $0844, $0869, $084D ; tile166: 0x04D, 0x044, 0x069, 0x04D\n#_0F8B38: dw $0846, $08AF, $0844, $0856 ; tile167: 0x046, 0x0AF, 0x044, 0x056\n#_0F8B40: dw $14AA, $14AA, $08AF, $14AA ; tile168: 0x0AA, 0x0AA, 0x0AF, 0x0AA\n#_0F8B48: dw $14AA, $14AA, $14AA, $48AF ; tile169: 0x0AA, 0x0AA, 0x0AA, 0x0AF\n#_0F8B50: dw $0864, $0866, $0874, $0876 ; tile16A: 0x064, 0x066, 0x074, 0x076\n#_0F8B58: dw $4894, $086D, $0922, $485C ; tile16B: 0x094, 0x06D, 0x122, 0x05C\n#_0F8B60: dw $086D, $086D, $085C, $485C ; tile16C: 0x06D, 0x06D, 0x05C, 0x05C\n#_0F8B68: dw $086B, $08AA, $087B, $086B ; tile16D: 0x06B, 0x0AA, 0x07B, 0x06B\n#_0F8B70: dw $0886, $1096, $1096, $50A8 ; tile16E: 0x086, 0x096, 0x096, 0x0A8\n#_0F8B78: dw $50A8, $08BA, $08BA, $C89D ; tile16F: 0x0A8, 0x0BA, 0x0BA, 0x09D\n#_0F8B80: dw $48BA, $08BA, $889D, $08BA ; tile170: 0x0BA, 0x0BA, 0x09D, 0x0BA\n#_0F8B88: dw $08BA, $0869, $08BA, $08BA ; tile171: 0x0BA, 0x069, 0x0BA, 0x0BA\n#_0F8B90: dw $0846, $48BE, $0844, $0881 ; tile172: 0x046, 0x0BE, 0x044, 0x081\n#_0F8B98: dw $08BE, $48BE, $0880, $0881 ; tile173: 0x0BE, 0x0BE, 0x080, 0x081\n#_0F8BA0: dw $08BE, $4846, $0880, $4854 ; tile174: 0x0BE, 0x046, 0x080, 0x054\n#_0F8BA8: dw $0848, $0865, $0852, $0858 ; tile175: 0x048, 0x065, 0x052, 0x058\n#_0F8BB0: dw $085B, $087B, $4843, $085B ; tile176: 0x05B, 0x07B, 0x043, 0x05B\n#_0F8BB8: dw $884E, $50A4, $084E, $50B4 ; tile177: 0x04E, 0x0A4, 0x04E, 0x0B4\n#_0F8BC0: dw $0862, $0873, $0872, $0843 ; tile178: 0x062, 0x073, 0x072, 0x043\n#_0F8BC8: dw $08BA, $488E, $08BA, $488E ; tile179: 0x0BA, 0x08E, 0x0BA, 0x08E\n#_0F8BD0: dw $884E, $50B5, $084E, $08BA ; tile17A: 0x04E, 0x0B5, 0x04E, 0x0BA\n#_0F8BD8: dw $48BA, $489D, $48BA, $48BA ; tile17B: 0x0BA, 0x09D, 0x0BA, 0x0BA\n#_0F8BE0: dw $488C, $08AA, $489C, $488C ; tile17C: 0x08C, 0x0AA, 0x09C, 0x08C\n#_0F8BE8: dw $089D, $08AB, $48BA, $48BA ; tile17D: 0x09D, 0x0AB, 0x0BA, 0x0BA\n#_0F8BF0: dw $08BA, $08BA, $08BA, $4879 ; tile17E: 0x0BA, 0x0BA, 0x0BA, 0x079\n#_0F8BF8: dw $0848, $1066, $0852, $1076 ; tile17F: 0x048, 0x066, 0x052, 0x076\n#_0F8C00: dw $086D, $086D, $087E, $087F ; tile180: 0x06D, 0x06D, 0x07E, 0x07F\n#_0F8C08: dw $086D, $086D, $487F, $487E ; tile181: 0x06D, 0x06D, 0x07F, 0x07E\n#_0F8C10: dw $086D, $0894, $085C, $4922 ; tile182: 0x06D, 0x094, 0x05C, 0x122\n#_0F8C18: dw $4879, $085D, $085D, $0843 ; tile183: 0x079, 0x05D, 0x05D, 0x043\n#_0F8C20: dw $087E, $087F, $087E, $087F ; tile184: 0x07E, 0x07F, 0x07E, 0x07F\n#_0F8C28: dw $487F, $487E, $487F, $487E ; tile185: 0x07F, 0x07E, 0x07F, 0x07E\n#_0F8C30: dw $0862, $08A1, $08A0, $08AA ; tile186: 0x062, 0x0A1, 0x0A0, 0x0AA\n#_0F8C38: dw $1940, $1941, $1940, $1941 ; tile187: 0x140, 0x141, 0x140, 0x141\n#_0F8C40: dw $1940, $1940, $1940, $1940 ; tile188: 0x140, 0x140, 0x140, 0x140\n#_0F8C48: dw $1940, $1902, $1940, $1902 ; tile189: 0x140, 0x102, 0x140, 0x102\n#_0F8C50: dw $1960, $191A, $1970, $1939 ; tile18A: 0x160, 0x11A, 0x170, 0x139\n#_0F8C58: dw $193A, $593A, $1921, $5921 ; tile18B: 0x13A, 0x13A, 0x121, 0x121\n#_0F8C60: dw $591A, $1961, $5939, $1971 ; tile18C: 0x11A, 0x161, 0x139, 0x171\n#_0F8C68: dw $1961, $1961, $1971, $1971 ; tile18D: 0x161, 0x161, 0x171, 0x171\n#_0F8C70: dw $1961, $191A, $1971, $1939 ; tile18E: 0x161, 0x11A, 0x171, 0x139\n#_0F8C78: dw $591A, $5960, $5939, $5970 ; tile18F: 0x11A, 0x160, 0x139, 0x170\n#_0F8C80: dw $5902, $5940, $5902, $5940 ; tile190: 0x102, 0x140, 0x102, 0x140\n#_0F8C88: dw $5940, $5940, $5940, $5940 ; tile191: 0x140, 0x140, 0x140, 0x140\n#_0F8C90: dw $5941, $5940, $5941, $5940 ; tile192: 0x141, 0x140, 0x141, 0x140\n#_0F8C98: dw $1940, $1902, $1940, $1903 ; tile193: 0x140, 0x102, 0x140, 0x103\n#_0F8CA0: dw $1932, $1972, $1912, $1930 ; tile194: 0x132, 0x172, 0x112, 0x130\n#_0F8CA8: dw $1973, $5973, $1931, $5931 ; tile195: 0x173, 0x173, 0x131, 0x131\n#_0F8CB0: dw $5972, $1933, $5930, $1912 ; tile196: 0x172, 0x133, 0x130, 0x112\n#_0F8CB8: dw $1933, $1933, $1912, $1912 ; tile197: 0x133, 0x133, 0x112, 0x112\n#_0F8CC0: dw $1933, $1972, $1912, $1930 ; tile198: 0x133, 0x172, 0x112, 0x130\n#_0F8CC8: dw $5972, $5932, $5930, $5912 ; tile199: 0x172, 0x132, 0x130, 0x112\n#_0F8CD0: dw $5902, $5940, $5903, $5940 ; tile19A: 0x102, 0x140, 0x103, 0x140\n#_0F8CD8: dw $194F, $1951, $1902, $1960 ; tile19B: 0x14F, 0x151, 0x102, 0x160\n#_0F8CE0: dw $1951, $1951, $1961, $1961 ; tile19C: 0x151, 0x151, 0x161, 0x161\n#_0F8CE8: dw $190A, $192A, $191A, $193A ; tile19D: 0x10A, 0x12A, 0x11A, 0x13A\n#_0F8CF0: dw $592A, $590A, $593A, $591A ; tile19E: 0x12A, 0x10A, 0x13A, 0x11A\n#_0F8CF8: dw $1951, $594F, $5960, $5902 ; tile19F: 0x151, 0x14F, 0x160, 0x102\n#_0F8D00: dw $1902, $1970, $1902, $1932 ; tile1A0: 0x102, 0x170, 0x102, 0x132\n#_0F8D08: dw $1971, $1971, $1933, $1933 ; tile1A1: 0x171, 0x171, 0x133, 0x133\n#_0F8D10: dw $1939, $1921, $1972, $1973 ; tile1A2: 0x139, 0x121, 0x172, 0x173\n#_0F8D18: dw $5921, $5939, $5973, $5972 ; tile1A3: 0x121, 0x139, 0x173, 0x172\n#_0F8D20: dw $5970, $5902, $5932, $5902 ; tile1A4: 0x170, 0x102, 0x132, 0x102\n#_0F8D28: dw $88BA, $48BA, $48BA, $88BA ; tile1A5: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0F8D30: dw $1940, $1940, $1940, $194F ; tile1A6: 0x140, 0x140, 0x140, 0x14F\n#_0F8D38: dw $1903, $1912, $1951, $190A ; tile1A7: 0x103, 0x112, 0x151, 0x10A\n#_0F8D40: dw $1912, $1912, $192A, $592A ; tile1A8: 0x112, 0x112, 0x12A, 0x12A\n#_0F8D48: dw $1930, $1931, $590A, $1951 ; tile1A9: 0x130, 0x131, 0x10A, 0x151\n#_0F8D50: dw $5931, $5930, $1951, $1951 ; tile1AA: 0x131, 0x130, 0x151, 0x151\n#_0F8D58: dw $1912, $1912, $1951, $1951 ; tile1AB: 0x112, 0x112, 0x151, 0x151\n#_0F8D60: dw $1930, $1931, $1951, $1951 ; tile1AC: 0x130, 0x131, 0x151, 0x151\n#_0F8D68: dw $5931, $5930, $1951, $190A ; tile1AD: 0x131, 0x130, 0x151, 0x10A\n#_0F8D70: dw $5912, $5903, $590A, $5951 ; tile1AE: 0x112, 0x103, 0x10A, 0x151\n#_0F8D78: dw $5940, $5940, $594F, $5940 ; tile1AF: 0x140, 0x140, 0x14F, 0x140\n#_0F8D80: dw $1933, $1933, $3912, $3912 ; tile1B0: 0x133, 0x133, 0x112, 0x112\n#_0F8D88: dw $1D25, $1D25, $8DD8, $CDD8 ; tile1B1: 0x125, 0x125, 0x1D8, 0x1D8\n#_0F8D90: dw $1D25, $1D25, $8DD8, $1D7F ; tile1B2: 0x125, 0x125, 0x1D8, 0x17F\n#_0F8D98: dw $1D24, $1D24, $0D27, $4874 ; tile1B3: 0x124, 0x124, 0x127, 0x074\n#_0F8DA0: dw $1D24, $1D24, $084E, $48B4 ; tile1B4: 0x124, 0x124, 0x04E, 0x0B4\n#_0F8DA8: dw $1951, $190A, $1961, $191A ; tile1B5: 0x151, 0x10A, 0x161, 0x11A\n#_0F8DB0: dw $192A, $592A, $193A, $593A ; tile1B6: 0x12A, 0x12A, 0x13A, 0x13A\n#_0F8DB8: dw $590A, $1951, $591A, $1961 ; tile1B7: 0x10A, 0x151, 0x11A, 0x161\n#_0F8DC0: dw $3951, $3951, $3961, $3943 ; tile1B8: 0x151, 0x151, 0x161, 0x143\n#_0F8DC8: dw $3951, $7951, $3943, $7943 ; tile1B9: 0x151, 0x151, 0x143, 0x143\n#_0F8DD0: dw $7951, $3951, $7943, $3961 ; tile1BA: 0x151, 0x151, 0x143, 0x161\n#_0F8DD8: dw $5951, $594F, $5960, $5902 ; tile1BB: 0x151, 0x14F, 0x160, 0x102\n#_0F8DE0: dw $1971, $1939, $1933, $1972 ; tile1BC: 0x171, 0x139, 0x133, 0x172\n#_0F8DE8: dw $1921, $5921, $1973, $5973 ; tile1BD: 0x121, 0x121, 0x173, 0x173\n#_0F8DF0: dw $5939, $1971, $5972, $1933 ; tile1BE: 0x139, 0x171, 0x172, 0x133\n#_0F8DF8: dw $1971, $1953, $1933, $1963 ; tile1BF: 0x171, 0x153, 0x133, 0x163\n#_0F8E00: dw $18FE, $58FE, $192E, $592E ; tile1C0: 0x0FE, 0x0FE, 0x12E, 0x12E\n#_0F8E08: dw $5953, $1971, $5963, $1933 ; tile1C1: 0x153, 0x171, 0x163, 0x133\n#_0F8E10: dw $08BE, $48BE, $08BF, $08BF ; tile1C2: 0x0BE, 0x0BE, 0x0BF, 0x0BF\n#_0F8E18: dw $C9F2, $4D54, $4D55, $0886 ; tile1C3: 0x1F2, 0x154, 0x155, 0x086\n#_0F8E20: dw $08BA, $08BA, $889C, $08BA ; tile1C4: 0x0BA, 0x0BA, 0x09C, 0x0BA\n#_0F8E28: dw $1940, $1941, $1950, $1951 ; tile1C5: 0x140, 0x141, 0x150, 0x151\n#_0F8E30: dw $1903, $1912, $190A, $192A ; tile1C6: 0x103, 0x112, 0x10A, 0x12A\n#_0F8E38: dw $1912, $1930, $592A, $590A ; tile1C7: 0x112, 0x130, 0x12A, 0x10A\n#_0F8E40: dw $1931, $5931, $1951, $1951 ; tile1C8: 0x131, 0x131, 0x151, 0x151\n#_0F8E48: dw $5930, $1912, $190A, $192A ; tile1C9: 0x130, 0x112, 0x10A, 0x12A\n#_0F8E50: dw $1912, $1912, $592A, $590A ; tile1CA: 0x112, 0x112, 0x12A, 0x10A\n#_0F8E58: dw $1912, $1942, $1951, $1952 ; tile1CB: 0x112, 0x142, 0x151, 0x152\n#_0F8E60: dw $191B, $591B, $191B, $591B ; tile1CC: 0x11B, 0x11B, 0x11B, 0x11B\n#_0F8E68: dw $5942, $5912, $5952, $5951 ; tile1CD: 0x142, 0x112, 0x152, 0x151\n#_0F8E70: dw $5912, $5912, $190A, $192A ; tile1CE: 0x112, 0x112, 0x10A, 0x12A\n#_0F8E78: dw $5912, $1930, $592A, $590A ; tile1CF: 0x112, 0x130, 0x12A, 0x10A\n#_0F8E80: dw $1931, $5931, $5951, $5951 ; tile1D0: 0x131, 0x131, 0x151, 0x151\n#_0F8E88: dw $5930, $5912, $190A, $192A ; tile1D1: 0x130, 0x112, 0x10A, 0x12A\n#_0F8E90: dw $5912, $5903, $592A, $590A ; tile1D2: 0x112, 0x103, 0x12A, 0x10A\n#_0F8E98: dw $5941, $5940, $5951, $5950 ; tile1D3: 0x141, 0x140, 0x151, 0x150\n#_0F8EA0: dw $0880, $0881, $4855, $4868 ; tile1D4: 0x080, 0x081, 0x055, 0x068\n#_0F8EA8: dw $0880, $0881, $0890, $0891 ; tile1D5: 0x080, 0x081, 0x090, 0x091\n#_0F8EB0: dw $196E, $1960, $196E, $1970 ; tile1D6: 0x16E, 0x160, 0x16E, 0x170\n#_0F8EB8: dw $191A, $193A, $1939, $1921 ; tile1D7: 0x11A, 0x13A, 0x139, 0x121\n#_0F8EC0: dw $593A, $591A, $5921, $5939 ; tile1D8: 0x13A, 0x11A, 0x121, 0x139\n#_0F8EC8: dw $1961, $1962, $1971, $1962 ; tile1D9: 0x161, 0x162, 0x171, 0x162\n#_0F8ED0: dw $5962, $5961, $5962, $5971 ; tile1DA: 0x162, 0x161, 0x162, 0x171\n#_0F8ED8: dw $5961, $5961, $5971, $5971 ; tile1DB: 0x161, 0x161, 0x171, 0x171\n#_0F8EE0: dw $5960, $196E, $5970, $196E ; tile1DC: 0x160, 0x16E, 0x170, 0x16E\n#_0F8EE8: dw $196E, $1934, $193E, $193F ; tile1DD: 0x16E, 0x134, 0x13E, 0x13F\n#_0F8EF0: dw $1972, $1973, $1913, $1931 ; tile1DE: 0x172, 0x173, 0x113, 0x131\n#_0F8EF8: dw $5973, $5972, $5931, $5913 ; tile1DF: 0x173, 0x172, 0x131, 0x113\n#_0F8F00: dw $1933, $1933, $193F, $193F ; tile1E0: 0x133, 0x133, 0x13F, 0x13F\n#_0F8F08: dw $1933, $1962, $193F, $1923 ; tile1E1: 0x133, 0x162, 0x13F, 0x123\n#_0F8F10: dw $5962, $5933, $5923, $193F ; tile1E2: 0x162, 0x133, 0x123, 0x13F\n#_0F8F18: dw $5933, $5933, $193F, $193F ; tile1E3: 0x133, 0x133, 0x13F, 0x13F\n#_0F8F20: dw $5934, $196E, $193F, $593E ; tile1E4: 0x134, 0x16E, 0x13F, 0x13E\n#_0F8F28: dw $08BA, $08BA, $08BA, $50AF ; tile1E5: 0x0BA, 0x0BA, 0x0BA, 0x0AF\n#_0F8F30: dw $50AF, $50BE, $5046, $1081 ; tile1E6: 0x0AF, 0x0BE, 0x046, 0x081\n#_0F8F38: dw $08AA, $486B, $486B, $487B ; tile1E7: 0x0AA, 0x06B, 0x06B, 0x07B\n#_0F8F40: dw $0895, $4895, $0879, $08BB ; tile1E8: 0x095, 0x095, 0x079, 0x0BB\n#_0F8F48: dw $5066, $4848, $5076, $4852 ; tile1E9: 0x066, 0x048, 0x076, 0x052\n#_0F8F50: dw $50AF, $5046, $5056, $5054 ; tile1EA: 0x0AF, 0x046, 0x056, 0x054\n#_0F8F58: dw $487B, $085D, $085D, $0843 ; tile1EB: 0x07B, 0x05D, 0x05D, 0x043\n#_0F8F60: dw $485D, $0879, $4843, $485D ; tile1EC: 0x05D, 0x079, 0x043, 0x05D\n#_0F8F68: dw $486A, $884F, $486A, $084F ; tile1ED: 0x06A, 0x04F, 0x06A, 0x04F\n#_0F8F70: dw $0847, $0853, $0874, $0863 ; tile1EE: 0x047, 0x053, 0x074, 0x063\n#_0F8F78: dw $08AA, $08AA, $088C, $089E ; tile1EF: 0x0AA, 0x0AA, 0x08C, 0x09E\n#_0F8F80: dw $088C, $088F, $089F, $08BA ; tile1F0: 0x08C, 0x08F, 0x09F, 0x0BA\n#_0F8F88: dw $084C, $484C, $08BA, $10A6 ; tile1F1: 0x04C, 0x04C, 0x0BA, 0x0A6\n#_0F8F90: dw $084D, $0844, $4886, $084D ; tile1F2: 0x04D, 0x044, 0x086, 0x04D\n#_0F8F98: dw $088C, $089E, $089F, $08BA ; tile1F3: 0x08C, 0x09E, 0x09F, 0x0BA\n#_0F8FA0: dw $089F, $08BA, $08BA, $08BB ; tile1F4: 0x09F, 0x0BA, 0x0BA, 0x0BB\n#_0F8FA8: dw $08BA, $489F, $08BA, $08BA ; tile1F5: 0x0BA, 0x09F, 0x0BA, 0x0BA\n#_0F8FB0: dw $489E, $488C, $08BA, $489F ; tile1F6: 0x09E, 0x08C, 0x0BA, 0x09F\n#_0F8FB8: dw $08BA, $08AB, $08BA, $C89F ; tile1F7: 0x0BA, 0x0AB, 0x0BA, 0x09F\n#_0F8FC0: dw $08BA, $10A8, $889D, $08BA ; tile1F8: 0x0BA, 0x0A8, 0x09D, 0x0BA\n#_0F8FC8: dw $5096, $4886, $10A8, $5096 ; tile1F9: 0x096, 0x086, 0x0A8, 0x096\n#_0F8FD0: dw $0848, $0866, $0852, $0876 ; tile1FA: 0x048, 0x066, 0x052, 0x076\n#_0F8FD8: dw $08AA, $088C, $08AA, $088D ; tile1FB: 0x0AA, 0x08C, 0x0AA, 0x08D\n#_0F8FE0: dw $08BA, $C89F, $C89E, $C88C ; tile1FC: 0x0BA, 0x09F, 0x09E, 0x08C\n#_0F8FE8: dw $888C, $889E, $08AA, $08AA ; tile1FD: 0x08C, 0x09E, 0x0AA, 0x0AA\n#_0F8FF0: dw $889F, $08AB, $888C, $889E ; tile1FE: 0x09F, 0x0AB, 0x08C, 0x09E\n#_0F8FF8: dw $08BA, $489C, $08BA, $08BA ; tile1FF: 0x0BA, 0x09C, 0x0BA, 0x0BA\n#_0F9000: dw $488C, $08AA, $488D, $08AA ; tile200: 0x08C, 0x0AA, 0x08D, 0x0AA\n#_0F9008: dw $10A4, $884F, $10B4, $084F ; tile201: 0x0A4, 0x04F, 0x0B4, 0x04F\n#_0F9010: dw $088C, $089D, $088D, $08BA ; tile202: 0x08C, 0x09D, 0x08D, 0x0BA\n#_0F9018: dw $08AA, $0900, $08AA, $0910 ; tile203: 0x0AA, 0x100, 0x0AA, 0x110\n#_0F9020: dw $0956, $4956, $0966, $4966 ; tile204: 0x156, 0x156, 0x166, 0x166\n#_0F9028: dw $4900, $08AA, $4910, $08AA ; tile205: 0x100, 0x0AA, 0x110, 0x0AA\n#_0F9030: dw $489D, $488C, $48BA, $488D ; tile206: 0x09D, 0x08C, 0x0BA, 0x08D\n#_0F9038: dw $48BA, $C88D, $C89D, $C88C ; tile207: 0x0BA, 0x08D, 0x09D, 0x08C\n#_0F9040: dw $08AA, $0920, $08AA, $0901 ; tile208: 0x0AA, 0x120, 0x0AA, 0x101\n#_0F9048: dw $0976, $4976, $0911, $4911 ; tile209: 0x176, 0x176, 0x111, 0x111\n#_0F9050: dw $4920, $08AA, $4901, $08AA ; tile20A: 0x120, 0x0AA, 0x101, 0x0AA\n#_0F9058: dw $888D, $08AB, $888C, $889D ; tile20B: 0x08D, 0x0AB, 0x08C, 0x09D\n#_0F9060: dw $10B5, $884F, $08BA, $084F ; tile20C: 0x0B5, 0x04F, 0x0BA, 0x04F\n#_0F9068: dw $088C, $089D, $088E, $08BA ; tile20D: 0x08C, 0x09D, 0x08E, 0x0BA\n#_0F9070: dw $C88D, $08AA, $C88C, $08AA ; tile20E: 0x08D, 0x0AA, 0x08C, 0x0AA\n#_0F9078: dw $15A2, $55A2, $15B2, $55B2 ; tile20F: 0x1A2, 0x1A2, 0x1B2, 0x1B2\n#_0F9080: dw $08AA, $888D, $08AA, $888C ; tile210: 0x0AA, 0x08D, 0x0AA, 0x08C\n#_0F9088: dw $489D, $488C, $08BA, $488E ; tile211: 0x09D, 0x08C, 0x0BA, 0x08E\n#_0F9090: dw $1DDF, $5DDF, $9DDF, $DDDF ; tile212: 0x1DF, 0x1DF, 0x1DF, 0x1DF\n#_0F9098: dw $088E, $08BA, $888C, $889D ; tile213: 0x08E, 0x0BA, 0x08C, 0x09D\n#_0F90A0: dw $08BA, $488E, $C89D, $C88C ; tile214: 0x0BA, 0x08E, 0x09D, 0x08C\n#_0F90A8: dw $08AB, $48BA, $08BA, $C89D ; tile215: 0x0AB, 0x0BA, 0x0BA, 0x09D\n#_0F90B0: dw $08BA, $08BA, $889F, $08BA ; tile216: 0x0BA, 0x0BA, 0x09F, 0x0BA\n#_0F90B8: dw $889F, $08BA, $888C, $888F ; tile217: 0x09F, 0x0BA, 0x08C, 0x08F\n#_0F90C0: dw $08AF, $08AA, $08BF, $08AF ; tile218: 0x0AF, 0x0AA, 0x0BF, 0x0AF\n#_0F90C8: dw $0880, $0881, $0868, $0855 ; tile219: 0x080, 0x081, 0x068, 0x055\n#_0F90D0: dw $0846, $08BF, $0854, $0856 ; tile21A: 0x046, 0x0BF, 0x054, 0x056\n#_0F90D8: dw $19A0, $59A0, $19B0, $59B0 ; tile21B: 0x1A0, 0x1A0, 0x1B0, 0x1B0\n#_0F90E0: dw $08BA, $884F, $08BA, $084F ; tile21C: 0x0BA, 0x04F, 0x0BA, 0x04F\n#_0F90E8: dw $10BE, $10AF, $5081, $1046 ; tile21D: 0x0BE, 0x0AF, 0x081, 0x046\n#_0F90F0: dw $08BA, $08BA, $10AF, $08BA ; tile21E: 0x0BA, 0x0BA, 0x0AF, 0x0BA\n#_0F90F8: dw $1046, $10AF, $1054, $1056 ; tile21F: 0x046, 0x0AF, 0x054, 0x056\n#_0F9100: dw $0864, $1066, $0874, $1076 ; tile220: 0x064, 0x066, 0x074, 0x076\n#_0F9108: dw $0895, $4895, $08BB, $4879 ; tile221: 0x095, 0x095, 0x0BB, 0x079\n#_0F9110: dw $0847, $0853, $0874, $0857 ; tile222: 0x047, 0x053, 0x074, 0x057\n#_0F9118: dw $0864, $0D78, $0874, $8D78 ; tile223: 0x064, 0x178, 0x074, 0x178\n#_0F9120: dw $1D7F, $1D7F, $8DD8, $CDD8 ; tile224: 0x17F, 0x17F, 0x1D8, 0x1D8\n#_0F9128: dw $0845, $0867, $0877, $0891 ; tile225: 0x045, 0x067, 0x077, 0x091\n#_0F9130: dw $1584, $5584, $1594, $1585 ; tile226: 0x184, 0x184, 0x194, 0x185\n#_0F9138: dw $1584, $5584, $5585, $5594 ; tile227: 0x184, 0x184, 0x185, 0x194\n#_0F9140: dw $1584, $159E, $1594, $5594 ; tile228: 0x184, 0x19E, 0x194, 0x194\n#_0F9148: dw $559E, $5584, $1594, $5594 ; tile229: 0x19E, 0x184, 0x194, 0x194\n#_0F9150: dw $08A4, $C84E, $08B4, $484E ; tile22A: 0x0A4, 0x04E, 0x0B4, 0x04E\n#_0F9158: dw $4897, $085D, $085D, $4D07 ; tile22B: 0x097, 0x05D, 0x05D, 0x107\n#_0F9160: dw $485D, $0897, $0D07, $485D ; tile22C: 0x05D, 0x097, 0x107, 0x05D\n#_0F9168: dw $0D17, $0D08, $0850, $0D18 ; tile22D: 0x117, 0x108, 0x050, 0x118\n#_0F9170: dw $0840, $0841, $0D09, $4D09 ; tile22E: 0x040, 0x041, 0x109, 0x109\n#_0F9178: dw $4D08, $4D17, $4D18, $4850 ; tile22F: 0x108, 0x117, 0x118, 0x050\n#_0F9180: dw $0D19, $4D19, $0870, $0871 ; tile230: 0x119, 0x119, 0x070, 0x071\n#_0F9188: dw $08BB, $48A4, $0879, $48B4 ; tile231: 0x0BB, 0x0A4, 0x079, 0x0B4\n#_0F9190: dw $4844, $484D, $484D, $086C ; tile232: 0x044, 0x04D, 0x04D, 0x06C\n#_0F9198: dw $084C, $484C, $087D, $087D ; tile233: 0x04C, 0x04C, 0x07D, 0x07D\n#_0F91A0: dw $084D, $0844, $087A, $084D ; tile234: 0x04D, 0x044, 0x07A, 0x04D\n#_0F91A8: dw $086C, $087C, $087C, $08AA ; tile235: 0x06C, 0x07C, 0x07C, 0x0AA\n#_0F91B0: dw $487C, $087A, $08AA, $487C ; tile236: 0x07C, 0x07A, 0x0AA, 0x07C\n#_0F91B8: dw $884E, $086A, $084E, $086A ; tile237: 0x04E, 0x06A, 0x04E, 0x06A\n#_0F91C0: dw $0D54, $89F2, $4886, $0D55 ; tile238: 0x154, 0x1F2, 0x086, 0x155\n#_0F91C8: dw $15A3, $55A3, $15B3, $55B3 ; tile239: 0x1A3, 0x1A3, 0x1B3, 0x1B3\n#_0F91D0: dw $4852, $4847, $4863, $4874 ; tile23A: 0x052, 0x047, 0x063, 0x074\n#_0F91D8: dw $1586, $1587, $1596, $1597 ; tile23B: 0x186, 0x187, 0x196, 0x197\n#_0F91E0: dw $5587, $5586, $5597, $5596 ; tile23C: 0x187, 0x186, 0x197, 0x196\n#_0F91E8: dw $9596, $9597, $9586, $9587 ; tile23D: 0x196, 0x197, 0x186, 0x187\n#_0F91F0: dw $D597, $D596, $D587, $D586 ; tile23E: 0x197, 0x196, 0x187, 0x186\n#_0F91F8: dw $0895, $4895, $085C, $485C ; tile23F: 0x095, 0x095, 0x05C, 0x05C\n#_0F9200: dw $08AA, $516C, $116C, $08AA ; tile240: 0x0AA, 0x16C, 0x16C, 0x0AA\n#_0F9208: dw $116C, $D16C, $516C, $08AA ; tile241: 0x16C, 0x16C, 0x16C, 0x0AA\n#_0F9210: dw $312C, $312D, $3122, $3140 ; tile242: 0x12C, 0x12D, 0x122, 0x140\n#_0F9218: dw $712D, $712C, $7140, $7122 ; tile243: 0x12D, 0x12C, 0x140, 0x122\n#_0F9220: dw $3132, $3141, $314E, $3128 ; tile244: 0x132, 0x141, 0x14E, 0x128\n#_0F9228: dw $7141, $7132, $7128, $714E ; tile245: 0x141, 0x132, 0x128, 0x14E\n#_0F9230: dw $115E, $10FE, $117C, $117F ; tile246: 0x15E, 0x0FE, 0x17C, 0x17F\n#_0F9238: dw $50FE, $515E, $517F, $517C ; tile247: 0x0FE, 0x15E, 0x17F, 0x17C\n#_0F9240: dw $1155, $1142, $1100, $1152 ; tile248: 0x155, 0x142, 0x100, 0x152\n#_0F9248: dw $1143, $5143, $114B, $514B ; tile249: 0x143, 0x143, 0x14B, 0x14B\n#_0F9250: dw $5142, $5155, $5152, $1100 ; tile24A: 0x142, 0x155, 0x152, 0x100\n#_0F9258: dw $1100, $1162, $1100, $1109 ; tile24B: 0x100, 0x162, 0x100, 0x109\n#_0F9260: dw $1163, $5163, $1119, $5119 ; tile24C: 0x163, 0x163, 0x119, 0x119\n#_0F9268: dw $5162, $1100, $5109, $1100 ; tile24D: 0x162, 0x100, 0x109, 0x100\n#_0F9270: dw $1100, $1100, $1101, $1100 ; tile24E: 0x100, 0x100, 0x101, 0x100\n#_0F9278: dw $1009, $300A, $1019, $1007 ; tile24F: 0x009, 0x00A, 0x019, 0x007\n#_0F9280: dw $2860, $2861, $2870, $3947 ; tile250: 0x060, 0x061, 0x070, 0x147\n#_0F9288: dw $2860, $2861, $7947, $2871 ; tile251: 0x060, 0x061, 0x147, 0x071\n#_0F9290: dw $3946, $3947, $09EB, $09EF ; tile252: 0x146, 0x147, 0x1EB, 0x1EF\n#_0F9298: dw $7947, $7946, $49EF, $49EB ; tile253: 0x147, 0x146, 0x1EF, 0x1EB\n#_0F92A0: dw $088E, $884F, $08A5, $084F ; tile254: 0x08E, 0x04F, 0x0A5, 0x04F\n#_0F92A8: dw $397A, $397B, $3957, $3967 ; tile255: 0x17A, 0x17B, 0x157, 0x167\n#_0F92B0: dw $797B, $797A, $7967, $7957 ; tile256: 0x17B, 0x17A, 0x167, 0x157\n#_0F92B8: dw $0862, $10A1, $10A0, $08BA ; tile257: 0x062, 0x0A1, 0x0A0, 0x0BA\n#_0F92C0: dw $0840, $0841, $08B0, $4862 ; tile258: 0x040, 0x041, 0x0B0, 0x062\n#_0F92C8: dw $3946, $3947, $1928, $09EF ; tile259: 0x146, 0x147, 0x128, 0x1EF\n#_0F92D0: dw $7947, $7946, $49EF, $1928 ; tile25A: 0x147, 0x146, 0x1EF, 0x128\n#_0F92D8: dw $0840, $0841, $0862, $08B1 ; tile25B: 0x040, 0x041, 0x062, 0x0B1\n#_0F92E0: dw $0842, $0853, $0852, $0D4A ; tile25C: 0x042, 0x053, 0x052, 0x14A\n#_0F92E8: dw $0860, $0861, $0D48, $4D48 ; tile25D: 0x060, 0x061, 0x148, 0x148\n#_0F92F0: dw $4853, $4842, $4D4A, $4852 ; tile25E: 0x053, 0x042, 0x14A, 0x052\n#_0F92F8: dw $08AA, $48A0, $08AA, $088E ; tile25F: 0x0AA, 0x0A0, 0x0AA, 0x08E\n#_0F9300: dw $1938, $197C, $191C, $08BA ; tile260: 0x138, 0x17C, 0x11C, 0x0BA\n#_0F9308: dw $597C, $1938, $08BA, $191C ; tile261: 0x17C, 0x138, 0x0BA, 0x11C\n#_0F9310: dw $08A0, $08AA, $488E, $08AA ; tile262: 0x0A0, 0x0AA, 0x08E, 0x0AA\n#_0F9318: dw $0D49, $0D59, $0D59, $0D69 ; tile263: 0x149, 0x159, 0x159, 0x169\n#_0F9320: dw $0D58, $4D58, $0D68, $4D68 ; tile264: 0x158, 0x158, 0x168, 0x168\n#_0F9328: dw $4D59, $4D49, $4D69, $4D59 ; tile265: 0x159, 0x149, 0x169, 0x159\n#_0F9330: dw $08AA, $088E, $48AA, $888C ; tile266: 0x0AA, 0x08E, 0x0AA, 0x08C\n#_0F9338: dw $488E, $08AA, $C88C, $0884 ; tile267: 0x08E, 0x0AA, 0x08C, 0x084\n#_0F9340: dw $0D69, $09FF, $0DFF, $09FF ; tile268: 0x169, 0x1FF, 0x1FF, 0x1FF\n#_0F9348: dw $09FF, $09FF, $09FF, $09FF ; tile269: 0x1FF, 0x1FF, 0x1FF, 0x1FF\n#_0F9350: dw $1DC0, $1DFF, $1DFF, $1DFF ; tile26A: 0x1C0, 0x1FF, 0x1FF, 0x1FF\n#_0F9358: dw $1DFF, $1DC1, $1DC0, $1DFF ; tile26B: 0x1FF, 0x1C1, 0x1C0, 0x1FF\n#_0F9360: dw $1DFF, $1DFF, $1DFF, $1DC0 ; tile26C: 0x1FF, 0x1FF, 0x1FF, 0x1C0\n#_0F9368: dw $1DFF, $1DC1, $1DFF, $1DFF ; tile26D: 0x1FF, 0x1C1, 0x1FF, 0x1FF\n#_0F9370: dw $49FF, $4D69, $49FF, $49FF ; tile26E: 0x1FF, 0x169, 0x1FF, 0x1FF\n#_0F9378: dw $1DFF, $1DFF, $1DFF, $1DC1 ; tile26F: 0x1FF, 0x1FF, 0x1FF, 0x1C1\n#_0F9380: dw $1DFF, $1DFF, $1DFF, $1DFF ; tile270: 0x1FF, 0x1FF, 0x1FF, 0x1FF\n#_0F9388: dw $29F9, $3946, $09EB, $09EF ; tile271: 0x1F9, 0x146, 0x1EB, 0x1EF\n#_0F9390: dw $7946, $69F9, $49EF, $49EB ; tile272: 0x146, 0x1F9, 0x1EF, 0x1EB\n#_0F9398: dw $0883, $08AA, $0893, $08AA ; tile273: 0x083, 0x0AA, 0x093, 0x0AA\n#_0F93A0: dw $487B, $0898, $085D, $0878 ; tile274: 0x07B, 0x098, 0x05D, 0x078\n#_0F93A8: dw $08A3, $08AA, $08B3, $08AA ; tile275: 0x0A3, 0x0AA, 0x0B3, 0x0AA\n#_0F93B0: dw $0842, $0882, $0852, $0892 ; tile276: 0x042, 0x082, 0x052, 0x092\n#_0F93B8: dw $08A2, $08AA, $08B2, $08AA ; tile277: 0x0A2, 0x0AA, 0x0B2, 0x0AA\n#_0F93C0: dw $0DFF, $0DFF, $0DFF, $0DFF ; tile278: 0x1FF, 0x1FF, 0x1FF, 0x1FF\n#_0F93C8: dw $0D4B, $0D4C, $0D5B, $0D5C ; tile279: 0x14B, 0x14C, 0x15B, 0x15C\n#_0F93D0: dw $0D4D, $4D4D, $0D5D, $4D5D ; tile27A: 0x14D, 0x14D, 0x15D, 0x15D\n#_0F93D8: dw $4D4C, $4D4B, $4D5C, $4D5B ; tile27B: 0x14C, 0x14B, 0x15C, 0x15B\n#_0F93E0: dw $0D6B, $0D6C, $4D69, $4D59 ; tile27C: 0x16B, 0x16C, 0x169, 0x159\n#_0F93E8: dw $0D6D, $4D6D, $0D48, $4D48 ; tile27D: 0x16D, 0x16D, 0x148, 0x148\n#_0F93F0: dw $4D6C, $4D6B, $0D59, $0D69 ; tile27E: 0x16C, 0x16B, 0x159, 0x169\n#_0F93F8: dw $0DFF, $4D69, $0DFF, $0DFF ; tile27F: 0x1FF, 0x169, 0x1FF, 0x1FF\n#_0F9400: dw $0D69, $0DFF, $0DFF, $0DFF ; tile280: 0x169, 0x1FF, 0x1FF, 0x1FF\n#_0F9408: dw $0D79, $0DFF, $8D79, $0DFF ; tile281: 0x179, 0x1FF, 0x179, 0x1FF\n#_0F9410: dw $49FF, $4D79, $09FF, $CD79 ; tile282: 0x1FF, 0x179, 0x1FF, 0x179\n#_0F9418: dw $4D78, $4864, $CD78, $4874 ; tile283: 0x178, 0x064, 0x178, 0x074\n#_0F9420: dw $4D78, $4864, $CD78, $4852 ; tile284: 0x178, 0x064, 0x178, 0x052\n#_0F9428: dw $0D79, $09FF, $8D79, $09FF ; tile285: 0x179, 0x1FF, 0x179, 0x1FF\n#_0F9430: dw $0DFF, $0DFF, $4D6A, $4D5A ; tile286: 0x1FF, 0x1FF, 0x16A, 0x15A\n#_0F9438: dw $0DFF, $0DFF, $0D5A, $4D5A ; tile287: 0x1FF, 0x1FF, 0x15A, 0x15A\n#_0F9440: dw $0DFF, $0DFF, $0D5A, $0D6A ; tile288: 0x1FF, 0x1FF, 0x15A, 0x16A\n#_0F9448: dw $4DFF, $4D69, $4DFF, $4DFF ; tile289: 0x1FF, 0x169, 0x1FF, 0x1FF\n#_0F9450: dw $4DFF, $4D6A, $4D6A, $4844 ; tile28A: 0x1FF, 0x16A, 0x16A, 0x044\n#_0F9458: dw $0D6A, $0DFF, $0C44, $0D6A ; tile28B: 0x16A, 0x1FF, 0x044, 0x16A\n#_0F9460: dw $4DFF, $4D79, $0DFF, $CD79 ; tile28C: 0x1FF, 0x179, 0x1FF, 0x179\n#_0F9468: dw $0D6A, $0DFF, $0844, $0D6A ; tile28D: 0x16A, 0x1FF, 0x044, 0x16A\n#_0F9470: dw $09FF, $09FF, $0D5A, $0D6A ; tile28E: 0x1FF, 0x1FF, 0x15A, 0x16A\n#_0F9478: dw $0848, $0D78, $0852, $8D78 ; tile28F: 0x048, 0x178, 0x052, 0x178\n#_0F9480: dw $084C, $484C, $08A7, $48A7 ; tile290: 0x04C, 0x04C, 0x0A7, 0x0A7\n#_0F9488: dw $0D6A, $09FF, $0844, $0D6A ; tile291: 0x16A, 0x1FF, 0x044, 0x16A\n#_0F9490: dw $49FF, $4D6A, $4D6A, $4844 ; tile292: 0x1FF, 0x16A, 0x16A, 0x044\n#_0F9498: dw $1D04, $1D04, $1988, $1988 ; tile293: 0x104, 0x104, 0x188, 0x188\n#_0F94A0: dw $1D04, $1D04, $0CB6, $09EE ; tile294: 0x104, 0x104, 0x0B6, 0x1EE\n#_0F94A8: dw $1D04, $1D04, $09EE, $09EE ; tile295: 0x104, 0x104, 0x1EE, 0x1EE\n#_0F94B0: dw $1D04, $1D04, $09EE, $0D95 ; tile296: 0x104, 0x104, 0x1EE, 0x195\n#_0F94B8: dw $1D1F, $1D1F, $1D1F, $1D1F ; tile297: 0x11F, 0x11F, 0x11F, 0x11F\n#_0F94C0: dw $1998, $1998, $1D1F, $1D1F ; tile298: 0x198, 0x198, 0x11F, 0x11F\n#_0F94C8: dw $0CB6, $09EE, $0CB6, $09EE ; tile299: 0x0B6, 0x1EE, 0x0B6, 0x1EE\n#_0F94D0: dw $09EE, $09EE, $09EE, $09EE ; tile29A: 0x1EE, 0x1EE, 0x1EE, 0x1EE\n#_0F94D8: dw $09EE, $0D95, $09EE, $0D95 ; tile29B: 0x1EE, 0x195, 0x1EE, 0x195\n#_0F94E0: dw $1D1F, $1D1F, $1988, $1988 ; tile29C: 0x11F, 0x11F, 0x188, 0x188\n#_0F94E8: dw $08AA, $198A, $08AA, $199A ; tile29D: 0x0AA, 0x18A, 0x0AA, 0x19A\n#_0F94F0: dw $1998, $1998, $1D14, $1D14 ; tile29E: 0x198, 0x198, 0x114, 0x114\n#_0F94F8: dw $0CB6, $09EE, $1D14, $1D14 ; tile29F: 0x0B6, 0x1EE, 0x114, 0x114\n#_0F9500: dw $09EE, $09EE, $1D14, $1D14 ; tile2A0: 0x1EE, 0x1EE, 0x114, 0x114\n#_0F9508: dw $09EE, $0D95, $1D14, $1D14 ; tile2A1: 0x1EE, 0x195, 0x114, 0x114\n#_0F9510: dw $1D24, $1D24, $1DFF, $1DFF ; tile2A2: 0x124, 0x124, 0x1FF, 0x1FF\n#_0F9518: dw $1D24, $09EE, $09EE, $09EE ; tile2A3: 0x124, 0x1EE, 0x1EE, 0x1EE\n#_0F9520: dw $0D69, $09FF, $09FF, $09FF ; tile2A4: 0x169, 0x1FF, 0x1FF, 0x1FF\n#_0F9528: dw $0D6A, $09FF, $0844, $4D5A ; tile2A5: 0x16A, 0x1FF, 0x044, 0x15A\n#_0F9530: dw $09FF, $4D6A, $0D5A, $4844 ; tile2A6: 0x1FF, 0x16A, 0x15A, 0x044\n#_0F9538: dw $2D19, $6D19, $2870, $2871 ; tile2A7: 0x119, 0x119, 0x070, 0x071\n#_0F9540: dw $08A4, $08BB, $08B4, $4879 ; tile2A8: 0x0A4, 0x0BB, 0x0B4, 0x079\n#_0F9548: dw $09FB, $09EF, $11FC, $11EC ; tile2A9: 0x1FB, 0x1EF, 0x1FC, 0x1EC\n#_0F9550: dw $49EF, $49FB, $51EC, $51FC ; tile2AA: 0x1EF, 0x1FB, 0x1EC, 0x1FC\n#_0F9558: dw $08B5, $884F, $088E, $084F ; tile2AB: 0x0B5, 0x04F, 0x08E, 0x04F\n#_0F9560: dw $08AA, $4883, $08AA, $4893 ; tile2AC: 0x0AA, 0x083, 0x0AA, 0x093\n#_0F9568: dw $08AA, $48A3, $08AA, $48B3 ; tile2AD: 0x0AA, 0x0A3, 0x0AA, 0x0B3\n#_0F9570: dw $4898, $087B, $4878, $085B ; tile2AE: 0x098, 0x07B, 0x078, 0x05B\n#_0F9578: dw $4882, $4842, $4892, $4852 ; tile2AF: 0x082, 0x042, 0x092, 0x052\n#_0F9580: dw $08AA, $48A2, $08AA, $48B2 ; tile2B0: 0x0AA, 0x0A2, 0x0AA, 0x0B2\n#_0F9588: dw $4867, $4845, $0890, $4877 ; tile2B1: 0x067, 0x045, 0x090, 0x077\n#_0F9590: dw $4852, $4847, $4D4A, $4874 ; tile2B2: 0x052, 0x047, 0x14A, 0x074\n#_0F9598: dw $09FF, $09FF, $4D6A, $4D5A ; tile2B3: 0x1FF, 0x1FF, 0x16A, 0x15A\n#_0F95A0: dw $09FF, $09FF, $0D5A, $4D5A ; tile2B4: 0x1FF, 0x1FF, 0x15A, 0x15A\n#_0F95A8: dw $0847, $0853, $0874, $0D4A ; tile2B5: 0x047, 0x053, 0x074, 0x14A\n#_0F95B0: dw $1DF5, $1DF4, $0874, $1DE6 ; tile2B6: 0x1F5, 0x1F4, 0x074, 0x1E6\n#_0F95B8: dw $1DCC, $5DCC, $1DCC, $5DCC ; tile2B7: 0x1CC, 0x1CC, 0x1CC, 0x1CC\n#_0F95C0: dw $3DCC, $7DCC, $3DCC, $7DCC ; tile2B8: 0x1CC, 0x1CC, 0x1CC, 0x1CC\n#_0F95C8: dw $5DF4, $5DF5, $5DE6, $4874 ; tile2B9: 0x1F4, 0x1F5, 0x1E6, 0x074\n#_0F95D0: dw $9DC1, $1DF1, $1DC1, $1DE2 ; tile2BA: 0x1C1, 0x1F1, 0x1C1, 0x1E2\n#_0F95D8: dw $5DE1, $1CAD, $5DCF, $1CAD ; tile2BB: 0x1E1, 0x0AD, 0x1CF, 0x0AD\n#_0F95E0: dw $1CAD, $1CAD, $1CAD, $1CAD ; tile2BC: 0x0AD, 0x0AD, 0x0AD, 0x0AD\n#_0F95E8: dw $0864, $1DF6, $0874, $09F2 ; tile2BD: 0x064, 0x1F6, 0x074, 0x1F2\n#_0F95F0: dw $1DF4, $1DCC, $1DE6, $1DCC ; tile2BE: 0x1F4, 0x1CC, 0x1E6, 0x1CC\n#_0F95F8: dw $5DCC, $5DF4, $5DCC, $5DE6 ; tile2BF: 0x1CC, 0x1F4, 0x1CC, 0x1E6\n#_0F9600: dw $5DF6, $4864, $49F2, $4874 ; tile2C0: 0x1F6, 0x064, 0x1F2, 0x074\n#_0F9608: dw $5DE1, $1CAD, $5DCF, $9DD9 ; tile2C1: 0x1E1, 0x0AD, 0x1CF, 0x1D9\n#_0F9610: dw $1CAD, $1CAD, $1DB4, $1DB4 ; tile2C2: 0x0AD, 0x0AD, 0x1B4, 0x1B4\n#_0F9618: dw $1CAD, $1CAD, $1DB4, $596C ; tile2C3: 0x0AD, 0x0AD, 0x1B4, 0x16C\n#_0F9620: dw $1DC7, $5DC7, $1DC7, $5DC7 ; tile2C4: 0x1C7, 0x1C7, 0x1C7, 0x1C7\n#_0F9628: dw $9DC1, $9DD1, $1DC1, $1DD1 ; tile2C5: 0x1C1, 0x1D1, 0x1C1, 0x1D1\n#_0F9630: dw $1DFE, $1DDA, $1DFE, $9DDA ; tile2C6: 0x1FE, 0x1DA, 0x1FE, 0x1DA\n#_0F9638: dw $1DB4, $1DB4, $1DB4, $1DB4 ; tile2C7: 0x1B4, 0x1B4, 0x1B4, 0x1B4\n#_0F9640: dw $1DB4, $1DB4, $1DB4, $596C ; tile2C8: 0x1B4, 0x1B4, 0x1B4, 0x16C\n#_0F9648: dw $596C, $596B, $596B, $08AA ; tile2C9: 0x16C, 0x16B, 0x16B, 0x0AA\n#_0F9650: dw $1DCD, $5DCD, $1DC1, $1DD1 ; tile2CA: 0x1CD, 0x1CD, 0x1C1, 0x1D1\n#_0F9658: dw $1DC6, $5DC6, $1DC9, $5DC9 ; tile2CB: 0x1C6, 0x1C6, 0x1C9, 0x1C9\n#_0F9660: dw $1DCD, $5DCD, $5DD1, $5DC1 ; tile2CC: 0x1CD, 0x1CD, 0x1D1, 0x1C1\n#_0F9668: dw $1DFE, $1DFE, $1DFE, $1DFE ; tile2CD: 0x1FE, 0x1FE, 0x1FE, 0x1FE\n#_0F9670: dw $DDD1, $DDC1, $5DD1, $5DC1 ; tile2CE: 0x1D1, 0x1C1, 0x1D1, 0x1C1\n#_0F9678: dw $C9F2, $4848, $49F2, $4852 ; tile2CF: 0x1F2, 0x048, 0x1F2, 0x052\n#_0F9680: dw $0862, $1DC2, $1DC2, $1DD2 ; tile2D0: 0x062, 0x1C2, 0x1C2, 0x1D2\n#_0F9688: dw $1DD2, $1DD3, $1DD3, $1DFE ; tile2D1: 0x1D2, 0x1D3, 0x1D3, 0x1FE\n#_0F9690: dw $1DFE, $1DD9, $1DD9, $1DB4 ; tile2D2: 0x1FE, 0x1D9, 0x1D9, 0x1B4\n#_0F9698: dw $1DB4, $595D, $1DB4, $595D ; tile2D3: 0x1B4, 0x15D, 0x1B4, 0x15D\n#_0F96A0: dw $5DD3, $5DD2, $1DFE, $5DD3 ; tile2D4: 0x1D3, 0x1D2, 0x1FE, 0x1D3\n#_0F96A8: dw $5DC2, $4862, $5DD2, $5DC2 ; tile2D5: 0x1C2, 0x062, 0x1D2, 0x1C2\n#_0F96B0: dw $1DFE, $1DFE, $1DC3, $5DC3 ; tile2D6: 0x1FE, 0x1FE, 0x1C3, 0x1C3\n#_0F96B8: dw $5DD9, $1DFE, $1DB4, $5DD9 ; tile2D7: 0x1D9, 0x1FE, 0x1B4, 0x1D9\n#_0F96C0: dw $1DC4, $5DC4, $1DFE, $1DFE ; tile2D8: 0x1C4, 0x1C4, 0x1FE, 0x1FE\n#_0F96C8: dw $1DFE, $1DFE, $1DD8, $5DD8 ; tile2D9: 0x1FE, 0x1FE, 0x1D8, 0x1D8\n#_0F96D0: dw $1DB4, $1DD7, $1DD7, $1DB4 ; tile2DA: 0x1B4, 0x1D7, 0x1D7, 0x1B4\n#_0F96D8: dw $1DB4, $1DB4, $196D, $596D ; tile2DB: 0x1B4, 0x1B4, 0x16D, 0x16D\n#_0F96E0: dw $1DC0, $5DC0, $1DD0, $5DD0 ; tile2DC: 0x1C0, 0x1C0, 0x1D0, 0x1D0\n#_0F96E8: dw $1DB4, $1DD6, $1DD7, $1DB4 ; tile2DD: 0x1B4, 0x1D6, 0x1D7, 0x1B4\n#_0F96F0: dw $4844, $484D, $484D, $8879 ; tile2DE: 0x044, 0x04D, 0x04D, 0x079\n#_0F96F8: dw $9DD9, $1DB4, $1DFE, $9DD9 ; tile2DF: 0x1D9, 0x1B4, 0x1FE, 0x1D9\n#_0F9700: dw $4844, $484D, $484D, $0C6C ; tile2E0: 0x044, 0x04D, 0x04D, 0x06C\n#_0F9708: dw $084C, $484C, $0C7D, $0C7D ; tile2E1: 0x04C, 0x04C, 0x07D, 0x07D\n#_0F9710: dw $084C, $484C, $0C7D, $0CA6 ; tile2E2: 0x04C, 0x04C, 0x07D, 0x0A6\n#_0F9718: dw $1059, $88BB, $8895, $C895 ; tile2E3: 0x059, 0x0BB, 0x095, 0x095\n#_0F9720: dw $1DFE, $1DFE, $1DC5, $1DFE ; tile2E4: 0x1FE, 0x1FE, 0x1C5, 0x1FE\n#_0F9728: dw $884E, $0C6A, $084E, $0C6A ; tile2E5: 0x04E, 0x06A, 0x04E, 0x06A\n#_0F9730: dw $0CAA, $0CAA, $0CAA, $0CAA ; tile2E6: 0x0AA, 0x0AA, 0x0AA, 0x0AA\n#_0F9738: dw $0CAA, $0CA8, $0CAA, $0CAA ; tile2E7: 0x0AA, 0x0A8, 0x0AA, 0x0AA\n#_0F9740: dw $0CB7, $4CB7, $0CAA, $0CAA ; tile2E8: 0x0B7, 0x0B7, 0x0AA, 0x0AA\n#_0F9748: dw $1DB4, $595C, $1DB4, $1DB4 ; tile2E9: 0x1B4, 0x15C, 0x1B4, 0x1B4\n#_0F9750: dw $194D, $594D, $1DB4, $1DB4 ; tile2EA: 0x14D, 0x14D, 0x1B4, 0x1B4\n#_0F9758: dw $594C, $08AA, $595C, $554C ; tile2EB: 0x14C, 0x0AA, 0x15C, 0x14C\n#_0F9760: dw $0C8B, $4C8B, $0CAA, $0CAA ; tile2EC: 0x08B, 0x08B, 0x0AA, 0x0AA\n#_0F9768: dw $0CAA, $0CAA, $0C8B, $4C8B ; tile2ED: 0x0AA, 0x0AA, 0x08B, 0x08B\n#_0F9770: dw $4CA1, $4862, $4CAA, $4CA0 ; tile2EE: 0x0A1, 0x062, 0x0AA, 0x0A0\n#_0F9778: dw $1DB4, $DDD9, $DDD9, $1DFE ; tile2EF: 0x1B4, 0x1D9, 0x1D9, 0x1FE\n#_0F9780: dw $594C, $08AA, $595C, $594C ; tile2F0: 0x14C, 0x0AA, 0x15C, 0x14C\n#_0F9788: dw $085B, $0C7B, $4843, $085B ; tile2F1: 0x05B, 0x07B, 0x043, 0x05B\n#_0F9790: dw $0C6D, $0C6D, $087E, $087F ; tile2F2: 0x06D, 0x06D, 0x07E, 0x07F\n#_0F9798: dw $0C6D, $0C6D, $487F, $487E ; tile2F3: 0x06D, 0x06D, 0x07F, 0x07E\n#_0F97A0: dw $0C6D, $0C6D, $085C, $485C ; tile2F4: 0x06D, 0x06D, 0x05C, 0x05C\n#_0F97A8: dw $0C6B, $0CAA, $0C7B, $0C6B ; tile2F5: 0x06B, 0x0AA, 0x07B, 0x06B\n#_0F97B0: dw $9DD8, $DDD8, $1DFE, $1DFE ; tile2F6: 0x1D8, 0x1D8, 0x1FE, 0x1FE\n#_0F97B8: dw $1DCE, $1DD4, $0844, $1DCE ; tile2F7: 0x1CE, 0x1D4, 0x044, 0x1CE\n#_0F97C0: dw $9DD3, $1DFE, $1DD4, $9DD3 ; tile2F8: 0x1D3, 0x1FE, 0x1D4, 0x1D3\n#_0F97C8: dw $1DE1, $5DE1, $1DCF, $5DCF ; tile2F9: 0x1E1, 0x1E1, 0x1CF, 0x1CF\n#_0F97D0: dw $1DFE, $1DE1, $1DFE, $1DCF ; tile2FA: 0x1FE, 0x1E1, 0x1FE, 0x1CF\n#_0F97D8: dw $5DE1, $1DFE, $5DCF, $1DFE ; tile2FB: 0x1E1, 0x1FE, 0x1CF, 0x1FE\n#_0F97E0: dw $884E, $4C8E, $084E, $4CA5 ; tile2FC: 0x04E, 0x08E, 0x04E, 0x0A5\n#_0F97E8: dw $884E, $4CA4, $084E, $4CB4 ; tile2FD: 0x04E, 0x0A4, 0x04E, 0x0B4\n#_0F97F0: dw $4C66, $4864, $4C76, $4874 ; tile2FE: 0x066, 0x064, 0x076, 0x074\n#_0F97F8: dw $9DFE, $DDD3, $DDD3, $5DD4 ; tile2FF: 0x1FE, 0x1D3, 0x1D3, 0x1D4\n#_0F9800: dw $5DD4, $9DC0, $5DCE, $49E0 ; tile300: 0x1D4, 0x1C0, 0x1CE, 0x1E0\n#_0F9808: dw $596C, $48BE, $0880, $0881 ; tile301: 0x16C, 0x0BE, 0x080, 0x081\n#_0F9810: dw $0886, $0C96, $0C96, $4CA8 ; tile302: 0x086, 0x096, 0x096, 0x0A8\n#_0F9818: dw $4873, $4862, $084E, $50A1 ; tile303: 0x073, 0x062, 0x04E, 0x0A1\n#_0F9820: dw $5DD4, $5DCE, $5DCE, $4854 ; tile304: 0x1D4, 0x1CE, 0x1CE, 0x054\n#_0F9828: dw $084C, $484C, $4CA6, $0C7D ; tile305: 0x04C, 0x04C, 0x0A6, 0x07D\n#_0F9830: dw $084D, $0844, $0C7A, $084D ; tile306: 0x04D, 0x044, 0x07A, 0x04D\n#_0F9838: dw $4CA8, $0CAA, $0CAA, $0CAA ; tile307: 0x0A8, 0x0AA, 0x0AA, 0x0AA\n#_0F9840: dw $9DC1, $9DD1, $1DC1, $1DF1 ; tile308: 0x1C1, 0x1D1, 0x1C1, 0x1F1\n#_0F9848: dw $1DFE, $1DE1, $5DE1, $1DCF ; tile309: 0x1FE, 0x1E1, 0x1E1, 0x1CF\n#_0F9850: dw $5DE1, $1DFE, $5DCF, $1DE1 ; tile30A: 0x1E1, 0x1FE, 0x1CF, 0x1E1\n#_0F9858: dw $1DFE, $1DFE, $5DE1, $1DFE ; tile30B: 0x1FE, 0x1FE, 0x1E1, 0x1FE\n#_0F9860: dw $4C7C, $0C7A, $0CAA, $4C7C ; tile30C: 0x07C, 0x07A, 0x0AA, 0x07C\n#_0F9868: dw $9DC1, $1DE2, $1DC1, $1DD1 ; tile30D: 0x1C1, 0x1E2, 0x1C1, 0x1D1\n#_0F9870: dw $5DCF, $1DFE, $1DFE, $1DFE ; tile30E: 0x1CF, 0x1FE, 0x1FE, 0x1FE\n#_0F9878: dw $1DFE, $1DCF, $1DFE, $1DFE ; tile30F: 0x1FE, 0x1CF, 0x1FE, 0x1FE\n#_0F9880: dw $5DCF, $1DE1, $1DFE, $1DCF ; tile310: 0x1CF, 0x1E1, 0x1FE, 0x1CF\n#_0F9888: dw $5DF1, $DDC1, $5DE2, $5DC1 ; tile311: 0x1F1, 0x1C1, 0x1E2, 0x1C1\n#_0F9890: dw $1DF3, $1DC8, $1DE5, $5DCB ; tile312: 0x1F3, 0x1C8, 0x1E5, 0x1CB\n#_0F9898: dw $1DCA, $5DCA, $1DCB, $5DCB ; tile313: 0x1CA, 0x1CA, 0x1CB, 0x1CB\n#_0F98A0: dw $5DC8, $5DF3, $1DCB, $5DE5 ; tile314: 0x1C8, 0x1F3, 0x1CB, 0x1E5\n#_0F98A8: dw $0CAA, $4C83, $0CAA, $4C93 ; tile315: 0x0AA, 0x083, 0x0AA, 0x093\n#_0F98B0: dw $0CAA, $0CAA, $0CB8, $0CAA ; tile316: 0x0AA, 0x0AA, 0x0B8, 0x0AA\n#_0F98B8: dw $0CAA, $0CAA, $0CAA, $4CAF ; tile317: 0x0AA, 0x0AA, 0x0AA, 0x0AF\n#_0F98C0: dw $4CAF, $4CBE, $4C56, $0C81 ; tile318: 0x0AF, 0x0BE, 0x056, 0x081\n#_0F98C8: dw $0CBE, $0CAF, $0C80, $0C56 ; tile319: 0x0BE, 0x0AF, 0x080, 0x056\n#_0F98D0: dw $0CAA, $0CAA, $0CAF, $0CAA ; tile31A: 0x0AA, 0x0AA, 0x0AF, 0x0AA\n#_0F98D8: dw $0CAA, $4CA3, $0CAA, $4CB3 ; tile31B: 0x0AA, 0x0A3, 0x0AA, 0x0B3\n#_0F98E0: dw $4898, $0C7B, $4878, $085B ; tile31C: 0x098, 0x07B, 0x078, 0x05B\n#_0F98E8: dw $1DCD, $5DCD, $1DC9, $5DC9 ; tile31D: 0x1CD, 0x1CD, 0x1C9, 0x1C9\n#_0F98F0: dw $0C87, $0CB8, $0897, $0C87 ; tile31E: 0x087, 0x0B8, 0x097, 0x087\n#_0F98F8: dw $4CAF, $4C46, $4C56, $4854 ; tile31F: 0x0AF, 0x046, 0x056, 0x054\n#_0F9900: dw $0C46, $0CAF, $0844, $0C56 ; tile320: 0x046, 0x0AF, 0x044, 0x056\n#_0F9908: dw $4C82, $4842, $4C92, $4852 ; tile321: 0x082, 0x042, 0x092, 0x052\n#_0F9910: dw $0CAA, $0CAA, $0C85, $4C85 ; tile322: 0x0AA, 0x0AA, 0x085, 0x085\n#_0F9918: dw $0CAA, $4CA2, $0CAA, $4CB2 ; tile323: 0x0AA, 0x0A2, 0x0AA, 0x0B2\n#_0F9920: dw $9DFE, $9DFE, $DDD3, $9DD0 ; tile324: 0x1FE, 0x1FE, 0x1D3, 0x1D0\n#_0F9928: dw $9DFE, $9DFE, $DDD0, $9DD0 ; tile325: 0x1FE, 0x1FE, 0x1D0, 0x1D0\n#_0F9930: dw $9DFE, $1DFE, $DDD0, $9DD3 ; tile326: 0x1FE, 0x1FE, 0x1D0, 0x1D3\n#_0F9938: dw $DDC0, $9DC0, $09E0, $49E0 ; tile327: 0x1C0, 0x1C0, 0x1E0, 0x1E0\n#_0F9940: dw $DDC0, $1DD4, $09E0, $1DCE ; tile328: 0x1C0, 0x1D4, 0x1E0, 0x1CE\n#_0F9948: dw $0864, $0C66, $0874, $0C76 ; tile329: 0x064, 0x066, 0x074, 0x076\n#_0F9950: dw $884E, $C89C, $084E, $086A ; tile32A: 0x04E, 0x09C, 0x04E, 0x06A\n#_0F9958: dw $7031, $3026, $3025, $300B ; tile32B: 0x031, 0x026, 0x025, 0x00B\n#_0F9960: dw $7026, $3031, $700B, $7025 ; tile32C: 0x026, 0x031, 0x00B, 0x025\n#_0F9968: dw $7013, $700A, $7000, $1036 ; tile32D: 0x013, 0x00A, 0x000, 0x036\n#_0F9970: dw $3027, $10FE, $1037, $101B ; tile32E: 0x027, 0x0FE, 0x037, 0x01B\n#_0F9978: dw $10FE, $7027, $501B, $5037 ; tile32F: 0x0FE, 0x027, 0x01B, 0x037\n#_0F9980: dw $300A, $3013, $5036, $3000 ; tile330: 0x00A, 0x013, 0x036, 0x000\n#_0F9988: dw $1006, $102B, $08AA, $088D ; tile331: 0x006, 0x02B, 0x0AA, 0x08D\n#_0F9990: dw $502B, $5006, $489D, $488C ; tile332: 0x02B, 0x006, 0x09D, 0x08C\n#_0F9998: dw $08AA, $08AA, $08AA, $1988 ; tile333: 0x0AA, 0x0AA, 0x0AA, 0x188\n#_0F99A0: dw $1988, $1988, $1998, $1998 ; tile334: 0x188, 0x188, 0x198, 0x198\n#_0F99A8: dw $08AA, $08AA, $1988, $08AA ; tile335: 0x0AA, 0x0AA, 0x188, 0x0AA\n#_0F99B0: dw $1988, $1998, $1998, $14AA ; tile336: 0x188, 0x198, 0x198, 0x0AA\n#_0F99B8: dw $5998, $5988, $14AA, $5998 ; tile337: 0x198, 0x188, 0x0AA, 0x198\n#_0F99C0: dw $1988, $1989, $1998, $1999 ; tile338: 0x188, 0x189, 0x198, 0x199\n#_0F99C8: dw $0864, $0866, $0874, $102E ; tile339: 0x064, 0x066, 0x074, 0x02E\n#_0F99D0: dw $3540, $3541, $3540, $3541 ; tile33A: 0x140, 0x141, 0x140, 0x141\n#_0F99D8: dw $3573, $3541, $3573, $3541 ; tile33B: 0x173, 0x141, 0x173, 0x141\n#_0F99E0: dw $3512, $3503, $3512, $3503 ; tile33C: 0x112, 0x103, 0x112, 0x103\n#_0F99E8: dw $7503, $7512, $7503, $7512 ; tile33D: 0x103, 0x112, 0x103, 0x112\n#_0F99F0: dw $7541, $7573, $7541, $7573 ; tile33E: 0x141, 0x173, 0x141, 0x173\n#_0F99F8: dw $7541, $7540, $7541, $7540 ; tile33F: 0x141, 0x140, 0x141, 0x140\n#_0F9A00: dw $0864, $103A, $0874, $301F ; tile340: 0x064, 0x03A, 0x074, 0x01F\n#_0F9A08: dw $3512, $3503, $3512, $3513 ; tile341: 0x112, 0x103, 0x112, 0x113\n#_0F9A10: dw $3568, $3569, $3578, $3579 ; tile342: 0x168, 0x169, 0x178, 0x179\n#_0F9A18: dw $7569, $7568, $7579, $7578 ; tile343: 0x169, 0x168, 0x179, 0x178\n#_0F9A20: dw $7503, $7512, $7513, $7512 ; tile344: 0x103, 0x112, 0x113, 0x112\n#_0F9A28: dw $0864, $101C, $0874, $100C ; tile345: 0x064, 0x01C, 0x074, 0x00C\n#_0F9A30: dw $3573, $3541, $3536, $3530 ; tile346: 0x173, 0x141, 0x136, 0x130\n#_0F9A38: dw $3522, $3523, $3532, $3533 ; tile347: 0x122, 0x123, 0x132, 0x133\n#_0F9A40: dw $3524, $3525, $3534, $3535 ; tile348: 0x124, 0x125, 0x134, 0x135\n#_0F9A48: dw $7525, $7524, $7535, $7534 ; tile349: 0x125, 0x124, 0x135, 0x134\n#_0F9A50: dw $7523, $7522, $7533, $7532 ; tile34A: 0x123, 0x122, 0x133, 0x132\n#_0F9A58: dw $7541, $7573, $7530, $7536 ; tile34B: 0x141, 0x173, 0x130, 0x136\n#_0F9A60: dw $0862, $0873, $10A1, $084F ; tile34C: 0x062, 0x073, 0x0A1, 0x04F\n#_0F9A68: dw $3550, $3530, $3560, $3561 ; tile34D: 0x150, 0x130, 0x160, 0x161\n#_0F9A70: dw $3531, $3561, $3562, $34FE ; tile34E: 0x131, 0x161, 0x162, 0x0FE\n#_0F9A78: dw $3509, $3529, $3519, $3539 ; tile34F: 0x109, 0x129, 0x119, 0x139\n#_0F9A80: dw $3545, $3546, $3555, $3556 ; tile350: 0x145, 0x146, 0x155, 0x156\n#_0F9A88: dw $7546, $7545, $7556, $7555 ; tile351: 0x146, 0x145, 0x156, 0x155\n#_0F9A90: dw $7529, $7509, $7539, $7519 ; tile352: 0x129, 0x109, 0x139, 0x119\n#_0F9A98: dw $7561, $7531, $74FE, $7562 ; tile353: 0x161, 0x131, 0x0FE, 0x162\n#_0F9AA0: dw $7530, $7550, $7561, $7560 ; tile354: 0x130, 0x150, 0x161, 0x160\n#_0F9AA8: dw $889C, $884F, $486A, $084F ; tile355: 0x09C, 0x04F, 0x06A, 0x04F\n#_0F9AB0: dw $1570, $1571, $1504, $1505 ; tile356: 0x170, 0x171, 0x104, 0x105\n#_0F9AB8: dw $1572, $5571, $156A, $5505 ; tile357: 0x172, 0x171, 0x16A, 0x105\n#_0F9AC0: dw $1563, $1564, $1506, $5506 ; tile358: 0x163, 0x164, 0x106, 0x106\n#_0F9AC8: dw $1148, $1149, $1158, $1159 ; tile359: 0x148, 0x149, 0x158, 0x159\n#_0F9AD0: dw $5149, $5148, $5159, $5158 ; tile35A: 0x149, 0x148, 0x159, 0x158\n#_0F9AD8: dw $5564, $5563, $1506, $5506 ; tile35B: 0x164, 0x163, 0x106, 0x106\n#_0F9AE0: dw $1571, $5572, $1505, $556A ; tile35C: 0x171, 0x172, 0x105, 0x16A\n#_0F9AE8: dw $5571, $5570, $5505, $5504 ; tile35D: 0x171, 0x170, 0x105, 0x104\n#_0F9AF0: dw $1514, $1515, $08AA, $08AA ; tile35E: 0x114, 0x115, 0x0AA, 0x0AA\n#_0F9AF8: dw $157A, $5515, $08AA, $08AA ; tile35F: 0x17A, 0x115, 0x0AA, 0x0AA\n#_0F9B00: dw $1516, $5516, $1526, $5526 ; tile360: 0x116, 0x116, 0x126, 0x126\n#_0F9B08: dw $151C, $150C, $151C, $150C ; tile361: 0x11C, 0x10C, 0x11C, 0x10C\n#_0F9B10: dw $550C, $551C, $550C, $551C ; tile362: 0x10C, 0x11C, 0x10C, 0x11C\n#_0F9B18: dw $1515, $557A, $48AA, $48AA ; tile363: 0x115, 0x17A, 0x0AA, 0x0AA\n#_0F9B20: dw $5515, $5514, $08AA, $08AA ; tile364: 0x115, 0x114, 0x0AA, 0x0AA\n#_0F9B28: dw $08AA, $383C, $380E, $3800 ; tile365: 0x0AA, 0x03C, 0x00E, 0x000\n#_0F9B30: dw $383D, $383E, $3801, $3802 ; tile366: 0x03D, 0x03E, 0x001, 0x002\n#_0F9B38: dw $783E, $783D, $7802, $7801 ; tile367: 0x03E, 0x03D, 0x002, 0x001\n#_0F9B40: dw $783C, $08AA, $7800, $780E ; tile368: 0x03C, 0x0AA, 0x000, 0x00E\n#_0F9B48: dw $380F, $3810, $381F, $3820 ; tile369: 0x00F, 0x010, 0x01F, 0x020\n#_0F9B50: dw $3811, $3812, $3821, $3822 ; tile36A: 0x011, 0x012, 0x021, 0x022\n#_0F9B58: dw $7812, $7811, $7822, $7821 ; tile36B: 0x012, 0x011, 0x022, 0x021\n#_0F9B60: dw $7810, $780F, $7820, $781F ; tile36C: 0x010, 0x00F, 0x020, 0x01F\n#_0F9B68: dw $15A8, $15A9, $15B8, $15B9 ; tile36D: 0x1A8, 0x1A9, 0x1B8, 0x1B9\n#_0F9B70: dw $55A9, $55A8, $55B9, $55B8 ; tile36E: 0x1A9, 0x1A8, 0x1B9, 0x1B8\n#_0F9B78: dw $382F, $3830, $383F, $3803 ; tile36F: 0x02F, 0x030, 0x03F, 0x003\n#_0F9B80: dw $3831, $3832, $3804, $3805 ; tile370: 0x031, 0x032, 0x004, 0x005\n#_0F9B88: dw $7832, $7831, $7805, $7804 ; tile371: 0x032, 0x031, 0x005, 0x004\n#_0F9B90: dw $7830, $782F, $7803, $783F ; tile372: 0x030, 0x02F, 0x003, 0x03F\n#_0F9B98: dw $0D08, $4D08, $0D18, $4D18 ; tile373: 0x108, 0x108, 0x118, 0x118\n#_0F9BA0: dw $95B8, $95B9, $95A8, $95A9 ; tile374: 0x1B8, 0x1B9, 0x1A8, 0x1A9\n#_0F9BA8: dw $D5B9, $D5B8, $D5A9, $D5A8 ; tile375: 0x1B9, 0x1B8, 0x1A9, 0x1A8\n#_0F9BB0: dw $101D, $3808, $101E, $1018 ; tile376: 0x01D, 0x008, 0x01E, 0x018\n#_0F9BB8: dw $3809, $380A, $1019, $101A ; tile377: 0x009, 0x00A, 0x019, 0x01A\n#_0F9BC0: dw $780A, $7809, $501A, $5019 ; tile378: 0x00A, 0x009, 0x01A, 0x019\n#_0F9BC8: dw $7808, $501D, $5018, $501E ; tile379: 0x008, 0x01D, 0x018, 0x01E\n#_0F9BD0: dw $0D74, $4D74, $0D44, $4D44 ; tile37A: 0x174, 0x174, 0x144, 0x144\n#_0F9BD8: dw $48AA, $48AA, $0D07, $48AA ; tile37B: 0x0AA, 0x0AA, 0x107, 0x0AA\n#_0F9BE0: dw $48AA, $48AA, $48AA, $4D07 ; tile37C: 0x0AA, 0x0AA, 0x0AA, 0x107\n#_0F9BE8: dw $08AA, $08AA, $08AA, $198B ; tile37D: 0x0AA, 0x0AA, 0x0AA, 0x18B\n#_0F9BF0: dw $198C, $198D, $199C, $199D ; tile37E: 0x18C, 0x18D, 0x19C, 0x19D\n#_0F9BF8: dw $0D54, $4D54, $0D28, $4D28 ; tile37F: 0x154, 0x154, 0x128, 0x128\n#_0F9C00: dw $0D17, $48AA, $0D27, $48AA ; tile380: 0x117, 0x0AA, 0x127, 0x0AA\n#_0F9C08: dw $48AA, $4D17, $48AA, $4D27 ; tile381: 0x0AA, 0x117, 0x0AA, 0x127\n#_0F9C10: dw $599B, $08AA, $08AA, $08AA ; tile382: 0x19B, 0x0AA, 0x0AA, 0x0AA\n#_0F9C18: dw $08AA, $08AA, $598B, $08AA ; tile383: 0x0AA, 0x0AA, 0x18B, 0x0AA\n#_0F9C20: dw $08AA, $199B, $08AA, $08AA ; tile384: 0x0AA, 0x19B, 0x0AA, 0x0AA\n#_0F9C28: dw $08BB, $08BA, $08BA, $08BA ; tile385: 0x0BB, 0x0BA, 0x0BA, 0x0BA\n#_0F9C30: dw $28BA, $28BA, $285C, $685C ; tile386: 0x0BA, 0x0BA, 0x05C, 0x05C\n#_0F9C38: dw $0860, $0861, $0CB0, $0CB1 ; tile387: 0x060, 0x061, 0x0B0, 0x0B1\n#_0F9C40: dw $09FB, $09EF, $0DFC, $0DEC ; tile388: 0x1FB, 0x1EF, 0x1FC, 0x1EC\n#_0F9C48: dw $49EF, $49FB, $4DEC, $4DFC ; tile389: 0x1EF, 0x1FB, 0x1EC, 0x1FC\n#_0F9C50: dw $8C9C, $884F, $4C6A, $084F ; tile38A: 0x09C, 0x04F, 0x06A, 0x04F\n#_0F9C58: dw $4C7B, $085D, $085D, $0843 ; tile38B: 0x07B, 0x05D, 0x05D, 0x043\n#_0F9C60: dw $1D00, $1D47, $1D10, $1D57 ; tile38C: 0x100, 0x147, 0x110, 0x157\n#_0F9C68: dw $5D47, $5D00, $5D57, $5D10 ; tile38D: 0x147, 0x100, 0x157, 0x110\n#_0F9C70: dw $1D20, $1D02, $1D2E, $1D2F ; tile38E: 0x120, 0x102, 0x12E, 0x12F\n#_0F9C78: dw $5D02, $5D20, $5D2F, $5D2E ; tile38F: 0x102, 0x120, 0x12F, 0x12E\n#_0F9C80: dw $1D6D, $1D6E, $1D7D, $1D7E ; tile390: 0x16D, 0x16E, 0x17D, 0x17E\n#_0F9C88: dw $48AA, $48AA, $0D07, $4D07 ; tile391: 0x0AA, 0x0AA, 0x107, 0x107\n#_0F9C90: dw $0D17, $4D17, $0D27, $4D27 ; tile392: 0x117, 0x117, 0x127, 0x127\n#_0F9C98: dw $4894, $086D, $085C, $485C ; tile393: 0x094, 0x06D, 0x05C, 0x05C\n#_0F9CA0: dw $15E7, $15E8, $15F7, $15F8 ; tile394: 0x1E7, 0x1E8, 0x1F7, 0x1F8\n#_0F9CA8: dw $55E8, $55E7, $55F8, $55F7 ; tile395: 0x1E8, 0x1E7, 0x1F8, 0x1F7\n#_0F9CB0: dw $15E9, $15EA, $1DD0, $5DD0 ; tile396: 0x1E9, 0x1EA, 0x1D0, 0x1D0\n#_0F9CB8: dw $55EA, $55E9, $1DD0, $5DD0 ; tile397: 0x1EA, 0x1E9, 0x1D0, 0x1D0\n#_0F9CC0: dw $086D, $0894, $085C, $485C ; tile398: 0x06D, 0x094, 0x05C, 0x05C\n#_0F9CC8: dw $9DD3, $1DFE, $1DD4, $9DD0 ; tile399: 0x1D3, 0x1FE, 0x1D4, 0x1D0\n#_0F9CD0: dw $1DCE, $9DC0, $0844, $49E0 ; tile39A: 0x1CE, 0x1C0, 0x044, 0x1E0\n#_0F9CD8: dw $084C, $484C, $48A6, $087D ; tile39B: 0x04C, 0x04C, 0x0A6, 0x07D\n#_0F9CE0: dw $884E, $48B5, $084E, $488E ; tile39C: 0x04E, 0x0B5, 0x04E, 0x08E\n#_0F9CE8: dw $1DFE, $1DFE, $1DE1, $5DE1 ; tile39D: 0x1FE, 0x1FE, 0x1E1, 0x1E1\n#_0F9CF0: dw $1DCF, $5DCF, $1DFE, $1DFE ; tile39E: 0x1CF, 0x1CF, 0x1FE, 0x1FE\n#_0F9CF8: dw $884E, $488E, $084E, $48A5 ; tile39F: 0x04E, 0x08E, 0x04E, 0x0A5\n#_0F9D00: dw $1DFE, $DDD3, $DDD0, $5DD4 ; tile3A0: 0x1FE, 0x1D3, 0x1D0, 0x1D4\n#_0F9D08: dw $084C, $3033, $1038, $3000 ; tile3A1: 0x04C, 0x033, 0x038, 0x000\n#_0F9D10: dw $3034, $303E, $3001, $3002 ; tile3A2: 0x034, 0x03E, 0x001, 0x002\n#_0F9D18: dw $703E, $7034, $7002, $7001 ; tile3A3: 0x03E, 0x034, 0x002, 0x001\n#_0F9D20: dw $5033, $484C, $7000, $5038 ; tile3A4: 0x033, 0x04C, 0x000, 0x038\n#_0F9D28: dw $DDC0, $5DCE, $09E0, $4844 ; tile3A5: 0x1C0, 0x1CE, 0x1E0, 0x044\n#_0F9D30: dw $487C, $087A, $14AA, $487C ; tile3A6: 0x07C, 0x07A, 0x0AA, 0x07C\n#_0F9D38: dw $1988, $14AA, $1998, $1988 ; tile3A7: 0x188, 0x0AA, 0x198, 0x188\n#_0F9D40: dw $08AA, $1998, $08AA, $08AA ; tile3A8: 0x0AA, 0x198, 0x0AA, 0x0AA\n#_0F9D48: dw $08AA, $08AA, $292A, $292B ; tile3A9: 0x0AA, 0x0AA, 0x12A, 0x12B\n#_0F9D50: dw $08AA, $08AA, $292C, $292D ; tile3AA: 0x0AA, 0x0AA, 0x12C, 0x12D\n#_0F9D58: dw $08AA, $08AA, $692D, $692C ; tile3AB: 0x0AA, 0x0AA, 0x12D, 0x12C\n#_0F9D60: dw $08AA, $08AA, $692B, $692A ; tile3AC: 0x0AA, 0x0AA, 0x12B, 0x12A\n#_0F9D68: dw $1989, $198A, $1999, $199A ; tile3AD: 0x189, 0x18A, 0x199, 0x19A\n#_0F9D70: dw $293A, $293B, $296B, $293B ; tile3AE: 0x13A, 0x13B, 0x16B, 0x13B\n#_0F9D78: dw $293C, $293D, $297B, $297C ; tile3AF: 0x13C, 0x13D, 0x17B, 0x17C\n#_0F9D80: dw $693D, $693C, $697C, $697B ; tile3B0: 0x13D, 0x13C, 0x17C, 0x17B\n#_0F9D88: dw $693B, $693A, $693B, $696B ; tile3B1: 0x13B, 0x13A, 0x13B, 0x16B\n#_0F9D90: dw $296B, $2967, $296B, $2977 ; tile3B2: 0x16B, 0x167, 0x16B, 0x177\n#_0F9D98: dw $2942, $2943, $2952, $290E ; tile3B3: 0x142, 0x143, 0x152, 0x10E\n#_0F9DA0: dw $6943, $6942, $690E, $6952 ; tile3B4: 0x143, 0x142, 0x10E, 0x152\n#_0F9DA8: dw $6967, $696B, $6977, $696B ; tile3B5: 0x167, 0x16B, 0x177, 0x16B\n#_0F9DB0: dw $290D, $2966, $291D, $2976 ; tile3B6: 0x10D, 0x166, 0x11D, 0x176\n#_0F9DB8: dw $28D4, $2951, $28C4, $28C5 ; tile3B7: 0x0D4, 0x151, 0x0C4, 0x0C5\n#_0F9DC0: dw $6951, $68D4, $68C5, $68C4 ; tile3B8: 0x151, 0x0D4, 0x0C5, 0x0C4\n#_0F9DC8: dw $6966, $690D, $6976, $691D ; tile3B9: 0x166, 0x10D, 0x176, 0x11D\n#_0F9DD0: dw $116C, $0965, $101D, $1175 ; tile3BA: 0x16C, 0x165, 0x01D, 0x175\n#_0F9DD8: dw $4965, $516C, $5175, $501D ; tile3BB: 0x165, 0x16C, 0x175, 0x01D\n#_0F9DE0: dw $101E, $1018, $08AA, $1028 ; tile3BC: 0x01E, 0x018, 0x0AA, 0x028\n#_0F9DE8: dw $1153, $110B, $1029, $111B ; tile3BD: 0x153, 0x10B, 0x029, 0x11B\n#_0F9DF0: dw $510B, $5019, $511B, $5029 ; tile3BE: 0x10B, 0x019, 0x11B, 0x029\n#_0F9DF8: dw $5018, $501E, $5028, $48AA ; tile3BF: 0x018, 0x01E, 0x028, 0x0AA\n#_0F9E00: dw $100D, $111E, $08AA, $08AA ; tile3C0: 0x00D, 0x11E, 0x0AA, 0x0AA\n#_0F9E08: dw $511E, $500D, $08AA, $08AA ; tile3C1: 0x11E, 0x00D, 0x0AA, 0x0AA\n#_0F9E10: dw $0C6C, $0C7C, $0C7C, $0CAA ; tile3C2: 0x06C, 0x07C, 0x07C, 0x0AA\n#_0F9E18: dw $1924, $1957, $1934, $1967 ; tile3C3: 0x124, 0x157, 0x134, 0x167\n#_0F9E20: dw $5957, $5924, $5967, $5934 ; tile3C4: 0x157, 0x124, 0x167, 0x134\n#_0F9E28: dw $08AA, $0CED, $0CED, $D51C ; tile3C5: 0x0AA, 0x0ED, 0x0ED, 0x11C\n#_0F9E30: dw $0CED, $0CED, $551C, $D51C ; tile3C6: 0x0ED, 0x0ED, 0x11C, 0x11C\n#_0F9E38: dw $1925, $1977, $1135, $1133 ; tile3C7: 0x125, 0x177, 0x135, 0x133\n#_0F9E40: dw $5977, $5925, $5133, $5135 ; tile3C8: 0x177, 0x125, 0x133, 0x135\n#_0F9E48: dw $0CED, $951C, $0CED, $D51C ; tile3C9: 0x0ED, 0x11C, 0x0ED, 0x11C\n#_0F9E50: dw $151C, $951C, $551C, $D51C ; tile3CA: 0x11C, 0x11C, 0x11C, 0x11C\n#_0F9E58: dw $151C, $951C, $1560, $1561 ; tile3CB: 0x11C, 0x11C, 0x160, 0x161\n#_0F9E60: dw $151C, $951C, $1561, $1561 ; tile3CC: 0x11C, 0x11C, 0x161, 0x161\n#_0F9E68: dw $151C, $951C, $1561, $5560 ; tile3CD: 0x11C, 0x11C, 0x161, 0x160\n#_0F9E70: dw $151C, $0CED, $551C, $0CED ; tile3CE: 0x11C, 0x0ED, 0x11C, 0x0ED\n#_0F9E78: dw $1570, $1571, $0D00, $0D01 ; tile3CF: 0x170, 0x171, 0x100, 0x101\n#_0F9E80: dw $1571, $1571, $0D01, $0D01 ; tile3D0: 0x171, 0x171, 0x101, 0x101\n#_0F9E88: dw $1571, $5570, $0D01, $4D00 ; tile3D1: 0x171, 0x170, 0x101, 0x100\n#_0F9E90: dw $153E, $953E, $553E, $D53E ; tile3D2: 0x13E, 0x13E, 0x13E, 0x13E\n#_0F9E98: dw $2D43, $2D73, $2D53, $2D52 ; tile3D3: 0x143, 0x173, 0x153, 0x152\n#_0F9EA0: dw $6D73, $2D73, $AD52, $2D52 ; tile3D4: 0x173, 0x173, 0x152, 0x152\n#_0F9EA8: dw $502A, $5029, $4889, $4888 ; tile3D5: 0x02A, 0x029, 0x089, 0x088\n#_0F9EB0: dw $5028, $1028, $085C, $485C ; tile3D6: 0x028, 0x028, 0x05C, 0x05C\n#_0F9EB8: dw $1029, $102A, $0888, $0889 ; tile3D7: 0x029, 0x02A, 0x088, 0x089\n#_0F9EC0: dw $5028, $086D, $085C, $485C ; tile3D8: 0x028, 0x06D, 0x05C, 0x05C\n#_0F9EC8: dw $2D53, $6D52, $2D53, $2D52 ; tile3D9: 0x153, 0x152, 0x153, 0x152\n#_0F9ED0: dw $ED52, $6D52, $AD52, $2D52 ; tile3DA: 0x152, 0x152, 0x152, 0x152\n#_0F9ED8: dw $2D53, $6D52, $2D62, $2D63 ; tile3DB: 0x153, 0x152, 0x162, 0x163\n#_0F9EE0: dw $ED52, $6D52, $6D63, $2D63 ; tile3DC: 0x152, 0x152, 0x163, 0x163\n#_0F9EE8: dw $5016, $1016, $7000, $3000 ; tile3DD: 0x016, 0x016, 0x000, 0x000\n#_0F9EF0: dw $1034, $303E, $3001, $3002 ; tile3DE: 0x034, 0x03E, 0x001, 0x002\n#_0F9EF8: dw $5016, $0861, $7000, $502E ; tile3DF: 0x016, 0x061, 0x000, 0x02E\n#_0F9F00: dw $2895, $6895, $285C, $685C ; tile3E0: 0x095, 0x095, 0x05C, 0x05C\n#_0F9F08: dw $0D03, $0D04, $0D13, $0D14 ; tile3E1: 0x103, 0x104, 0x113, 0x114\n#_0F9F10: dw $4D04, $4D03, $4D14, $4D13 ; tile3E2: 0x104, 0x103, 0x114, 0x113\n#_0F9F18: dw $0D08, $0D09, $0D18, $0DEE ; tile3E3: 0x108, 0x109, 0x118, 0x1EE\n#_0F9F20: dw $4D09, $4D08, $0DEE, $4D18 ; tile3E4: 0x109, 0x108, 0x1EE, 0x118\n#_0F9F28: dw $0D18, $0DEE, $0D28, $0D19 ; tile3E5: 0x118, 0x1EE, 0x128, 0x119\n#_0F9F30: dw $0DEE, $4D18, $4D19, $4D28 ; tile3E6: 0x1EE, 0x118, 0x119, 0x128\n#_0F9F38: dw $1560, $5560, $1576, $5576 ; tile3E7: 0x160, 0x160, 0x176, 0x176\n#_0F9F40: dw $0CED, $0CED, $0CED, $150C ; tile3E8: 0x0ED, 0x0ED, 0x0ED, 0x10C\n#_0F9F48: dw $0CED, $0CED, $150C, $150C ; tile3E9: 0x0ED, 0x0ED, 0x10C, 0x10C\n#_0F9F50: dw $1570, $5570, $0D00, $4D00 ; tile3EA: 0x170, 0x170, 0x100, 0x100\n#_0F9F58: dw $0CED, $150C, $0CED, $150C ; tile3EB: 0x0ED, 0x10C, 0x0ED, 0x10C\n#_0F9F60: dw $150C, $150C, $150C, $150C ; tile3EC: 0x10C, 0x10C, 0x10C, 0x10C\n#_0F9F68: dw $150C, $150C, $1560, $1561 ; tile3ED: 0x10C, 0x10C, 0x160, 0x161\n#_0F9F70: dw $150C, $150C, $1561, $1561 ; tile3EE: 0x10C, 0x10C, 0x161, 0x161\n#_0F9F78: dw $150C, $150C, $1561, $5560 ; tile3EF: 0x10C, 0x10C, 0x161, 0x160\n#_0F9F80: dw $0D10, $0D0B, $0D10, $0D0B ; tile3F0: 0x110, 0x10B, 0x110, 0x10B\n#_0F9F88: dw $0D0B, $0D0B, $0D0B, $0D0B ; tile3F1: 0x10B, 0x10B, 0x10B, 0x10B\n#_0F9F90: dw $0D0B, $4D10, $0D0B, $4D10 ; tile3F2: 0x10B, 0x110, 0x10B, 0x110\n#_0F9F98: dw $150C, $0CED, $150C, $0CED ; tile3F3: 0x10C, 0x0ED, 0x10C, 0x0ED\n#_0F9FA0: dw $1576, $9572, $1576, $5576 ; tile3F4: 0x176, 0x172, 0x176, 0x176\n#_0F9FA8: dw $D572, $5576, $1576, $5576 ; tile3F5: 0x172, 0x176, 0x176, 0x176\n#_0F9FB0: dw $1576, $5576, $1576, $5576 ; tile3F6: 0x176, 0x176, 0x176, 0x176\n#_0F9FB8: dw $28CD, $28CE, $28C0, $28D2 ; tile3F7: 0x0CD, 0x0CE, 0x0C0, 0x0D2\n#_0F9FC0: dw $28CF, $28DD, $28D3, $28C6 ; tile3F8: 0x0CF, 0x0DD, 0x0D3, 0x0C6\n#_0F9FC8: dw $28DD, $28DD, $28E2, $28E2 ; tile3F9: 0x0DD, 0x0DD, 0x0E2, 0x0E2\n#_0F9FD0: dw $28DD, $68CF, $28C6, $68D3 ; tile3FA: 0x0DD, 0x0CF, 0x0C6, 0x0D3\n#_0F9FD8: dw $68CE, $68CD, $28D2, $68C0 ; tile3FB: 0x0CE, 0x0CD, 0x0D2, 0x0C0\n#_0F9FE0: dw $28C0, $28D2, $28C0, $28D2 ; tile3FC: 0x0C0, 0x0D2, 0x0C0, 0x0D2\n#_0F9FE8: dw $28D3, $28E2, $28D3, $28C6 ; tile3FD: 0x0D3, 0x0E2, 0x0D3, 0x0C6\n#_0F9FF0: dw $28E2, $28E2, $28E2, $28E2 ; tile3FE: 0x0E2, 0x0E2, 0x0E2, 0x0E2\n#_0F9FF8: dw $28E2, $68D3, $28C6, $68D3 ; tile3FF: 0x0E2, 0x0D3, 0x0C6, 0x0D3\n#_0FA000: dw $28D2, $68C0, $28D2, $68C0 ; tile400: 0x0D2, 0x0C0, 0x0D2, 0x0C0\n#_0FA008: dw $14BD, $08AA, $14AE, $08AA ; tile401: 0x0BD, 0x0AA, 0x0AE, 0x0AA\n#_0FA010: dw $28C0, $28C1, $28D0, $28D1 ; tile402: 0x0C0, 0x0C1, 0x0D0, 0x0D1\n#_0FA018: dw $28C2, $28C3, $28D2, $28D2 ; tile403: 0x0C2, 0x0C3, 0x0D2, 0x0D2\n#_0FA020: dw $28C3, $28C3, $28D2, $28D2 ; tile404: 0x0C3, 0x0C3, 0x0D2, 0x0D2\n#_0FA028: dw $28C3, $68C2, $28D2, $28D2 ; tile405: 0x0C3, 0x0C2, 0x0D2, 0x0D2\n#_0FA030: dw $68C1, $68C0, $68D1, $68D0 ; tile406: 0x0C1, 0x0C0, 0x0D1, 0x0D0\n#_0FA038: dw $151C, $951C, $551C, $097B ; tile407: 0x11C, 0x11C, 0x11C, 0x17B\n#_0FA040: dw $151C, $951C, $097C, $097C ; tile408: 0x11C, 0x11C, 0x17C, 0x17C\n#_0FA048: dw $151C, $951C, $097C, $497B ; tile409: 0x11C, 0x11C, 0x17C, 0x17B\n#_0FA050: dw $28E0, $28E1, $28F0, $28F1 ; tile40A: 0x0E0, 0x0E1, 0x0F0, 0x0F1\n#_0FA058: dw $28D2, $28D2, $28F1, $28F1 ; tile40B: 0x0D2, 0x0D2, 0x0F1, 0x0F1\n#_0FA060: dw $28D4, $28D5, $28C4, $28C5 ; tile40C: 0x0D4, 0x0D5, 0x0C4, 0x0C5\n#_0FA068: dw $68D5, $68D4, $68C5, $68C4 ; tile40D: 0x0D5, 0x0D4, 0x0C5, 0x0C4\n#_0FA070: dw $68E1, $68E0, $28F1, $68F0 ; tile40E: 0x0E1, 0x0E0, 0x0F1, 0x0F0\n#_0FA078: dw $151C, $097D, $551C, $097D ; tile40F: 0x11C, 0x17D, 0x11C, 0x17D\n#_0FA080: dw $096A, $496A, $097A, $497A ; tile410: 0x16A, 0x16A, 0x17A, 0x17A\n#_0FA088: dw $097F, $097F, $097F, $097F ; tile411: 0x17F, 0x17F, 0x17F, 0x17F\n#_0FA090: dw $097F, $497D, $097F, $497D ; tile412: 0x17F, 0x17D, 0x17F, 0x17D\n#_0FA098: dw $0912, $4912, $0922, $4922 ; tile413: 0x112, 0x112, 0x122, 0x122\n#_0FA0A0: dw $08EF, $0CFD, $0CFD, $4CFD ; tile414: 0x0EF, 0x0FD, 0x0FD, 0x0FD\n#_0FA0A8: dw $4CFD, $48EF, $0CFD, $4CFD ; tile415: 0x0FD, 0x0EF, 0x0FD, 0x0FD\n#_0FA0B0: dw $151C, $897B, $551C, $D51C ; tile416: 0x11C, 0x17B, 0x11C, 0x11C\n#_0FA0B8: dw $897C, $897C, $551C, $D51C ; tile417: 0x17C, 0x17C, 0x11C, 0x11C\n#_0FA0C0: dw $897C, $C97B, $551C, $D51C ; tile418: 0x17C, 0x17B, 0x11C, 0x11C\n#_0FA0C8: dw $08AA, $08AA, $08AA, $0CED ; tile419: 0x0AA, 0x0AA, 0x0AA, 0x0ED\n#_0FA0D0: dw $0CED, $290D, $0CED, $291D ; tile41A: 0x0ED, 0x10D, 0x0ED, 0x11D\n#_0FA0D8: dw $1132, $5132, $08AA, $08AA ; tile41B: 0x132, 0x132, 0x0AA, 0x0AA\n#_0FA0E0: dw $0CED, $0CED, $0CED, $0CED ; tile41C: 0x0ED, 0x0ED, 0x0ED, 0x0ED\n#_0FA0E8: dw $0CED, $292D, $08AA, $0D44 ; tile41D: 0x0ED, 0x12D, 0x0AA, 0x144\n#_0FA0F0: dw $1576, $5576, $1576, $1572 ; tile41E: 0x176, 0x176, 0x176, 0x172\n#_0FA0F8: dw $08AA, $08AA, $1561, $5560 ; tile41F: 0x0AA, 0x0AA, 0x161, 0x160\n#_0FA100: dw $093A, $493A, $093B, $493B ; tile420: 0x13A, 0x13A, 0x13B, 0x13B\n#_0FA108: dw $0CED, $0D54, $0CED, $0D64 ; tile421: 0x0ED, 0x154, 0x0ED, 0x164\n#_0FA110: dw $1106, $1107, $1138, $1139 ; tile422: 0x106, 0x107, 0x138, 0x139\n#_0FA118: dw $5107, $5106, $5139, $5138 ; tile423: 0x107, 0x106, 0x139, 0x138\n#_0FA120: dw $08AA, $0D16, $0CED, $08AA ; tile424: 0x0AA, 0x116, 0x0ED, 0x0AA\n#_0FA128: dw $08AA, $0CED, $08AA, $08AA ; tile425: 0x0AA, 0x0ED, 0x0AA, 0x0AA\n#_0FA130: dw $151C, $951C, $0CED, $0CED ; tile426: 0x11C, 0x11C, 0x0ED, 0x0ED\n#_0FA138: dw $08AA, $08AA, $1561, $1561 ; tile427: 0x0AA, 0x0AA, 0x161, 0x161\n#_0FA140: dw $0CED, $08AA, $551C, $0CED ; tile428: 0x0ED, 0x0AA, 0x11C, 0x0ED\n#_0FA148: dw $1124, $1157, $1134, $1167 ; tile429: 0x124, 0x157, 0x134, 0x167\n#_0FA150: dw $5157, $5124, $5167, $5134 ; tile42A: 0x157, 0x124, 0x167, 0x134\n#_0FA158: dw $1125, $1177, $1135, $1133 ; tile42B: 0x125, 0x177, 0x135, 0x133\n#_0FA160: dw $5177, $5125, $5133, $5135 ; tile42C: 0x177, 0x125, 0x133, 0x135\n#_0FA168: dw $6D73, $6D43, $AD52, $6D53 ; tile42D: 0x173, 0x143, 0x152, 0x153\n#_0FA170: dw $086D, $1028, $085C, $485C ; tile42E: 0x06D, 0x028, 0x05C, 0x05C\n#_0FA178: dw $ED52, $6D53, $AD52, $6D53 ; tile42F: 0x152, 0x153, 0x152, 0x153\n#_0FA180: dw $ED52, $6D53, $6D63, $6D62 ; tile430: 0x152, 0x153, 0x163, 0x162\n#_0FA188: dw $0CED, $951C, $08AA, $0CED ; tile431: 0x0ED, 0x11C, 0x0AA, 0x0ED\n#_0FA190: dw $0D03, $0CFE, $0D13, $0D1B ; tile432: 0x103, 0x0FE, 0x113, 0x11B\n#_0FA198: dw $0CFE, $4D03, $4D1B, $4D13 ; tile433: 0x0FE, 0x103, 0x11B, 0x113\n#_0FA1A0: dw $08C7, $48CA, $08D7, $48DA ; tile434: 0x0C7, 0x0CA, 0x0D7, 0x0DA\n#_0FA1A8: dw $08CA, $48CA, $08DA, $48DA ; tile435: 0x0CA, 0x0CA, 0x0DA, 0x0DA\n#_0FA1B0: dw $290E, $290F, $291E, $291F ; tile436: 0x10E, 0x10F, 0x11E, 0x11F\n#_0FA1B8: dw $35DE, $0CED, $B5DE, $0CED ; tile437: 0x1DE, 0x0ED, 0x1DE, 0x0ED\n#_0FA1C0: dw $08AA, $08AA, $0CED, $08AA ; tile438: 0x0AA, 0x0AA, 0x0ED, 0x0AA\n#_0FA1C8: dw $292E, $292F, $0D48, $4D48 ; tile439: 0x12E, 0x12F, 0x148, 0x148\n#_0FA1D0: dw $08AA, $0CED, $4D44, $08AA ; tile43A: 0x0AA, 0x0ED, 0x144, 0x0AA\n#_0FA1D8: dw $0D49, $4D49, $0D4A, $4D4A ; tile43B: 0x149, 0x149, 0x14A, 0x14A\n#_0FA1E0: dw $4D54, $0CED, $4D64, $0CED ; tile43C: 0x154, 0x0ED, 0x164, 0x0ED\n#_0FA1E8: dw $096F, $093F, $896F, $893F ; tile43D: 0x16F, 0x13F, 0x16F, 0x13F\n#_0FA1F0: dw $0D17, $4D17, $0CED, $0CED ; tile43E: 0x117, 0x117, 0x0ED, 0x0ED\n#_0FA1F8: dw $4D16, $08AA, $08AA, $0CED ; tile43F: 0x116, 0x0AA, 0x0AA, 0x0ED\n#_0FA200: dw $093C, $093D, $C93D, $C93C ; tile440: 0x13C, 0x13D, 0x13D, 0x13C\n#_0FA208: dw $0CED, $08AA, $08AA, $08AA ; tile441: 0x0ED, 0x0AA, 0x0AA, 0x0AA\n#_0FA210: dw $08AA, $08AA, $1560, $1561 ; tile442: 0x0AA, 0x0AA, 0x160, 0x161\n#_0FA218: dw $1576, $5576, $5572, $5576 ; tile443: 0x176, 0x176, 0x172, 0x176\n#_0FA220: dw $7008, $501D, $5018, $48B8 ; tile444: 0x008, 0x01D, 0x018, 0x0B8\n#_0FA228: dw $5028, $0894, $085C, $485C ; tile445: 0x028, 0x094, 0x05C, 0x05C\n#_0FA230: dw $884E, $303C, $103B, $3000 ; tile446: 0x04E, 0x03C, 0x03B, 0x000\n#_0FA238: dw $703C, $884F, $7000, $503B ; tile447: 0x03C, 0x04F, 0x000, 0x03B\n#_0FA240: dw $303A, $3010, $301F, $3020 ; tile448: 0x03A, 0x010, 0x01F, 0x020\n#_0FA248: dw $7010, $503A, $7020, $701F ; tile449: 0x010, 0x03A, 0x020, 0x01F\n#_0FA250: dw $301C, $3030, $102C, $3003 ; tile44A: 0x01C, 0x030, 0x02C, 0x003\n#_0FA258: dw $7030, $501C, $7003, $502C ; tile44B: 0x030, 0x01C, 0x003, 0x02C\n#_0FA260: dw $1039, $3008, $084E, $1018 ; tile44C: 0x039, 0x008, 0x04E, 0x018\n#_0FA268: dw $7008, $5039, $5018, $084F ; tile44D: 0x008, 0x039, 0x018, 0x04F\n#_0FA270: dw $1D12, $1D65, $1D11, $1D63 ; tile44E: 0x112, 0x165, 0x111, 0x163\n#_0FA278: dw $1D42, $1D12, $1D42, $1D11 ; tile44F: 0x142, 0x112, 0x142, 0x111\n#_0FA280: dw $1D65, $1D42, $1D63, $1D42 ; tile450: 0x165, 0x142, 0x163, 0x142\n#_0FA288: dw $1D42, $1D42, $1D42, $1D42 ; tile451: 0x142, 0x142, 0x142, 0x142\n#_0FA290: dw $3D42, $3D42, $3D42, $3D42 ; tile452: 0x142, 0x142, 0x142, 0x142\n#_0FA298: dw $1D20, $1D71, $1D34, $1D31 ; tile453: 0x120, 0x171, 0x134, 0x131\n#_0FA2A0: dw $1D71, $1D71, $1D31, $1D31 ; tile454: 0x171, 0x171, 0x131, 0x131\n#_0FA2A8: dw $1D42, $1D12, $1D42, $1D12 ; tile455: 0x142, 0x112, 0x142, 0x112\n#_0FA2B0: dw $1D40, $1D42, $1D50, $1D2F ; tile456: 0x140, 0x142, 0x150, 0x12F\n#_0FA2B8: dw $1D42, $1D42, $1D52, $1D52 ; tile457: 0x142, 0x142, 0x152, 0x152\n#_0FA2C0: dw $3D42, $3D42, $3D52, $3D52 ; tile458: 0x142, 0x142, 0x152, 0x152\n#_0FA2C8: dw $1D42, $1D42, $5D52, $1D73 ; tile459: 0x142, 0x142, 0x152, 0x173\n#_0FA2D0: dw $1D42, $1D00, $1D42, $1D10 ; tile45A: 0x142, 0x100, 0x142, 0x110\n#_0FA2D8: dw $1D6F, $1D62, $1D70, $1D71 ; tile45B: 0x16F, 0x162, 0x170, 0x171\n#_0FA2E0: dw $5D62, $1D62, $1D71, $1D71 ; tile45C: 0x162, 0x162, 0x171, 0x171\n#_0FA2E8: dw $5D62, $1D3A, $1D7B, $1D54 ; tile45D: 0x162, 0x13A, 0x17B, 0x154\n#_0FA2F0: dw $3D56, $3D56, $1D48, $1D49 ; tile45E: 0x156, 0x156, 0x148, 0x149\n#_0FA2F8: dw $7D56, $7D56, $5D49, $5D48 ; tile45F: 0x156, 0x156, 0x149, 0x148\n#_0FA300: dw $5D3A, $1D62, $5D54, $5D7B ; tile460: 0x13A, 0x162, 0x154, 0x17B\n#_0FA308: dw $5D62, $1D61, $1D71, $1D71 ; tile461: 0x162, 0x161, 0x171, 0x171\n#_0FA310: dw $1D61, $1D7F, $1D75, $1D65 ; tile462: 0x161, 0x17F, 0x175, 0x165\n#_0FA318: dw $7D62, $3D62, $3D71, $3D71 ; tile463: 0x162, 0x162, 0x171, 0x171\n#_0FA320: dw $1D42, $1D20, $1D42, $1D34 ; tile464: 0x142, 0x120, 0x142, 0x134\n#_0FA328: dw $1D71, $1D71, $1D31, $1D08 ; tile465: 0x171, 0x171, 0x131, 0x108\n#_0FA330: dw $1D60, $1D17, $5D08, $1D27 ; tile466: 0x160, 0x117, 0x108, 0x127\n#_0FA338: dw $1D68, $1D69, $1D58, $1D59 ; tile467: 0x168, 0x169, 0x158, 0x159\n#_0FA340: dw $5D69, $5D68, $5D59, $5D58 ; tile468: 0x169, 0x168, 0x159, 0x158\n#_0FA348: dw $5D17, $5D60, $5D27, $1D08 ; tile469: 0x117, 0x160, 0x127, 0x108\n#_0FA350: dw $1D71, $1D71, $5D08, $1D31 ; tile46A: 0x171, 0x171, 0x108, 0x131\n#_0FA358: dw $1D5F, $1D65, $1D33, $1D63 ; tile46B: 0x15F, 0x165, 0x133, 0x163\n#_0FA360: dw $3D71, $3D71, $3D31, $3D31 ; tile46C: 0x171, 0x171, 0x131, 0x131\n#_0FA368: dw $198A, $1989, $199A, $1999 ; tile46D: 0x18A, 0x189, 0x19A, 0x199\n#_0FA370: dw $1D42, $1D02, $1D42, $1D02 ; tile46E: 0x142, 0x102, 0x142, 0x102\n#_0FA378: dw $192D, $190F, $192D, $190F ; tile46F: 0x12D, 0x10F, 0x12D, 0x10F\n#_0FA380: dw $190F, $190F, $190F, $190F ; tile470: 0x10F, 0x10F, 0x10F, 0x10F\n#_0FA388: dw $190F, $1D18, $190F, $1D28 ; tile471: 0x10F, 0x118, 0x10F, 0x128\n#_0FA390: dw $5D18, $190F, $5D28, $190F ; tile472: 0x118, 0x10F, 0x128, 0x10F\n#_0FA398: dw $1D12, $1D40, $1D12, $1D50 ; tile473: 0x112, 0x140, 0x112, 0x150\n#_0FA3A0: dw $1D42, $1D42, $1D2F, $1D52 ; tile474: 0x142, 0x142, 0x12F, 0x152\n#_0FA3A8: dw $1D42, $1D42, $1D52, $1D66 ; tile475: 0x142, 0x142, 0x152, 0x166\n#_0FA3B0: dw $1D42, $1D42, $1D21, $5D21 ; tile476: 0x142, 0x142, 0x121, 0x121\n#_0FA3B8: dw $1D42, $1D42, $5D66, $1D52 ; tile477: 0x142, 0x142, 0x166, 0x152\n#_0FA3C0: dw $1D00, $1D6F, $1D10, $1D70 ; tile478: 0x100, 0x16F, 0x110, 0x170\n#_0FA3C8: dw $1D61, $1D62, $1D71, $1D71 ; tile479: 0x161, 0x162, 0x171, 0x171\n#_0FA3D0: dw $5D62, $1D2C, $1D71, $1D79 ; tile47A: 0x162, 0x12C, 0x171, 0x179\n#_0FA3D8: dw $1D30, $5D30, $1D07, $5D07 ; tile47B: 0x130, 0x130, 0x107, 0x107\n#_0FA3E0: dw $5D2C, $1D62, $5D79, $1D71 ; tile47C: 0x12C, 0x162, 0x179, 0x171\n#_0FA3E8: dw $1D20, $1D71, $1D7A, $1D31 ; tile47D: 0x120, 0x171, 0x17A, 0x131\n#_0FA3F0: dw $1D71, $1D76, $1D31, $1D09 ; tile47E: 0x171, 0x176, 0x131, 0x109\n#_0FA3F8: dw $1D77, $5D77, $1D53, $5D53 ; tile47F: 0x177, 0x177, 0x153, 0x153\n#_0FA400: dw $5D76, $1D71, $5D09, $1D31 ; tile480: 0x176, 0x171, 0x109, 0x131\n#_0FA408: dw $190F, $1D19, $190F, $1D28 ; tile481: 0x10F, 0x119, 0x10F, 0x128\n#_0FA410: dw $1D23, $5D23, $1D29, $5D29 ; tile482: 0x123, 0x123, 0x129, 0x129\n#_0FA418: dw $5D19, $190F, $5D28, $190F ; tile483: 0x119, 0x10F, 0x128, 0x10F\n#_0FA420: dw $1D42, $1D02, $1D42, $9D03 ; tile484: 0x142, 0x102, 0x142, 0x103\n#_0FA428: dw $192D, $190F, $9D04, $9D05 ; tile485: 0x12D, 0x10F, 0x104, 0x105\n#_0FA430: dw $190F, $190F, $192D, $190F ; tile486: 0x10F, 0x10F, 0x12D, 0x10F\n#_0FA438: dw $190F, $190F, $DD05, $DD04 ; tile487: 0x10F, 0x10F, 0x105, 0x104\n#_0FA440: dw $590F, $590F, $9D04, $9D04 ; tile488: 0x10F, 0x10F, 0x104, 0x104\n#_0FA448: dw $190F, $190F, $9D05, $192D ; tile489: 0x10F, 0x10F, 0x105, 0x12D\n#_0FA450: dw $190F, $190F, $190F, $DD05 ; tile48A: 0x10F, 0x10F, 0x10F, 0x105\n#_0FA458: dw $190F, $190F, $9D04, $9D04 ; tile48B: 0x10F, 0x10F, 0x104, 0x104\n#_0FA460: dw $190F, $190F, $9D04, $9D05 ; tile48C: 0x10F, 0x10F, 0x104, 0x105\n#_0FA468: dw $190F, $194C, $195B, $195C ; tile48D: 0x10F, 0x14C, 0x15B, 0x15C\n#_0FA470: dw $1D42, $1D42, $1D2F, $1D73 ; tile48E: 0x142, 0x142, 0x12F, 0x173\n#_0FA478: dw $5D02, $1D42, $5D02, $1D42 ; tile48F: 0x102, 0x142, 0x102, 0x142\n#_0FA480: dw $1D42, $1D42, $5D73, $1D52 ; tile490: 0x142, 0x142, 0x173, 0x152\n#_0FA488: dw $1D02, $192D, $1D51, $192D ; tile491: 0x102, 0x12D, 0x151, 0x12D\n#_0FA490: dw $190F, $5D02, $190F, $5D51 ; tile492: 0x10F, 0x102, 0x10F, 0x151\n#_0FA498: dw $190F, $194B, $190F, $994B ; tile493: 0x10F, 0x14B, 0x10F, 0x14B\n#_0FA4A0: dw $196B, $196C, $996B, $996C ; tile494: 0x16B, 0x16C, 0x16B, 0x16C\n#_0FA4A8: dw $5D7F, $1D61, $5D65, $5D75 ; tile495: 0x17F, 0x161, 0x165, 0x175\n#_0FA4B0: dw $1D62, $5D62, $1D71, $1D71 ; tile496: 0x162, 0x162, 0x171, 0x171\n#_0FA4B8: dw $1D1A, $1D0A, $1D71, $1D71 ; tile497: 0x11A, 0x10A, 0x171, 0x171\n#_0FA4C0: dw $1D0A, $5D1A, $1D71, $1D71 ; tile498: 0x10A, 0x11A, 0x171, 0x171\n#_0FA4C8: dw $995B, $995C, $190F, $994C ; tile499: 0x15B, 0x15C, 0x10F, 0x14C\n#_0FA4D0: dw $1D20, $1D71, $1D2B, $1D31 ; tile49A: 0x120, 0x171, 0x12B, 0x131\n#_0FA4D8: dw $5D65, $5D5F, $5D63, $5D33 ; tile49B: 0x165, 0x15F, 0x163, 0x133\n#_0FA4E0: dw $1D71, $1D71, $5D31, $1D31 ; tile49C: 0x171, 0x171, 0x131, 0x131\n#_0FA4E8: dw $5D65, $5D12, $5D63, $5D11 ; tile49D: 0x165, 0x112, 0x163, 0x111\n#_0FA4F0: dw $192D, $190F, $9D04, $9D04 ; tile49E: 0x12D, 0x10F, 0x104, 0x104\n#_0FA4F8: dw $5D02, $1D42, $DD03, $1D42 ; tile49F: 0x102, 0x142, 0x103, 0x142\n#_0FA500: dw $1D42, $1D42, $1D52, $3D52 ; tile4A0: 0x142, 0x142, 0x152, 0x152\n#_0FA508: dw $1D61, $1D2C, $1D71, $1D79 ; tile4A1: 0x161, 0x12C, 0x171, 0x179\n#_0FA510: dw $08AA, $1D19, $08AA, $1D28 ; tile4A2: 0x0AA, 0x119, 0x0AA, 0x128\n#_0FA518: dw $5D19, $08AA, $5D28, $08AA ; tile4A3: 0x119, 0x0AA, 0x128, 0x0AA\n#_0FA520: dw $5D19, $4D1F, $5D28, $0D1F ; tile4A4: 0x119, 0x11F, 0x128, 0x11F\n#_0FA528: dw $0D0E, $1D18, $0D0E, $1D18 ; tile4A5: 0x10E, 0x118, 0x10E, 0x118\n#_0FA530: dw $5D18, $192D, $5D18, $192D ; tile4A6: 0x118, 0x12D, 0x118, 0x12D\n#_0FA538: dw $08AA, $4D1F, $08AA, $0D1F ; tile4A7: 0x0AA, 0x11F, 0x0AA, 0x11F\n#_0FA540: dw $0D0E, $1D18, $0D0E, $1D28 ; tile4A8: 0x10E, 0x118, 0x10E, 0x128\n#_0FA548: dw $5D18, $1D0B, $5D28, $1D0B ; tile4A9: 0x118, 0x10B, 0x128, 0x10B\n#_0FA550: dw $1D1B, $1D1B, $1D1B, $1D1B ; tile4AA: 0x11B, 0x11B, 0x11B, 0x11B\n#_0FA558: dw $08AA, $1506, $08AA, $1516 ; tile4AB: 0x0AA, 0x106, 0x0AA, 0x116\n#_0FA560: dw $5537, $5506, $1539, $5516 ; tile4AC: 0x137, 0x106, 0x139, 0x116\n#_0FA568: dw $0D0E, $0D0E, $0D0E, $0D0E ; tile4AD: 0x10E, 0x10E, 0x10E, 0x10E\n#_0FA570: dw $0D1F, $0D0F, $4D1F, $0D0F ; tile4AE: 0x11F, 0x10F, 0x11F, 0x10F\n#_0FA578: dw $0D0F, $0D0F, $0D0F, $0D0D ; tile4AF: 0x10F, 0x10F, 0x10F, 0x10D\n#_0FA580: dw $08AA, $1526, $08AA, $1516 ; tile4B0: 0x0AA, 0x126, 0x0AA, 0x116\n#_0FA588: dw $5539, $5526, $1539, $5516 ; tile4B1: 0x139, 0x126, 0x139, 0x116\n#_0FA590: dw $0D0F, $0D0F, $0D0F, $0D0F ; tile4B2: 0x10F, 0x10F, 0x10F, 0x10F\n#_0FA598: dw $54BD, $14BC, $1D01, $1D43 ; tile4B3: 0x0BD, 0x0BC, 0x101, 0x143\n#_0FA5A0: dw $1D12, $1D65, $1D64, $1D7E ; tile4B4: 0x112, 0x165, 0x164, 0x17E\n#_0FA5A8: dw $5D65, $5D12, $5D7E, $5D44 ; tile4B5: 0x165, 0x112, 0x17E, 0x144\n#_0FA5B0: dw $14BF, $14BC, $5D43, $5D01 ; tile4B6: 0x0BF, 0x0BC, 0x143, 0x101\n#_0FA5B8: dw $1D42, $1D42, $1D42, $1D03 ; tile4B7: 0x142, 0x142, 0x142, 0x103\n#_0FA5C0: dw $1D42, $1D02, $1D04, $1D05 ; tile4B8: 0x142, 0x102, 0x104, 0x105\n#_0FA5C8: dw $5D02, $1D42, $5D05, $5D04 ; tile4B9: 0x102, 0x142, 0x105, 0x104\n#_0FA5D0: dw $1D42, $1D42, $5D03, $1D42 ; tile4BA: 0x142, 0x142, 0x103, 0x142\n#_0FA5D8: dw $08AA, $1526, $08AA, $1536 ; tile4BB: 0x0AA, 0x126, 0x0AA, 0x136\n#_0FA5E0: dw $1539, $5526, $1538, $5536 ; tile4BC: 0x139, 0x126, 0x138, 0x136\n#_0FA5E8: dw $154E, $554E, $155E, $555E ; tile4BD: 0x14E, 0x14E, 0x15E, 0x15E\n#_0FA5F0: dw $153B, $553B, $08AA, $08AA ; tile4BE: 0x13B, 0x13B, 0x0AA, 0x0AA\n#_0FA5F8: dw $590F, $590F, $DD05, $DD04 ; tile4BF: 0x10F, 0x10F, 0x105, 0x104\n#_0FA600: dw $1D42, $1D42, $5D73, $5D2F ; tile4C0: 0x142, 0x142, 0x173, 0x12F\n#_0FA608: dw $5D40, $5D12, $5D50, $5D12 ; tile4C1: 0x140, 0x112, 0x150, 0x112\n#_0FA610: dw $5D7F, $5D61, $5D65, $5D75 ; tile4C2: 0x17F, 0x161, 0x165, 0x175\n#_0FA618: dw $5D6F, $5D00, $5D70, $5D10 ; tile4C3: 0x16F, 0x100, 0x170, 0x110\n#_0FA620: dw $1D71, $5D20, $5D31, $5D2B ; tile4C4: 0x171, 0x120, 0x131, 0x12B\n#_0FA628: dw $94BD, $08AA, $08AA, $08AA ; tile4C5: 0x0BD, 0x0AA, 0x0AA, 0x0AA\n#_0FA630: dw $5D20, $1D42, $5D34, $1D42 ; tile4C6: 0x120, 0x142, 0x134, 0x142\n#_0FA638: dw $1D42, $5D65, $1D42, $5D63 ; tile4C7: 0x142, 0x165, 0x142, 0x163\n#_0FA640: dw $5D12, $1D42, $5D11, $1D42 ; tile4C8: 0x112, 0x142, 0x111, 0x142\n#_0FA648: dw $1D42, $5D40, $5D2F, $5D50 ; tile4C9: 0x142, 0x140, 0x12F, 0x150\n#_0FA650: dw $5D12, $1D42, $5D12, $1D42 ; tile4CA: 0x112, 0x142, 0x112, 0x142\n#_0FA658: dw $5D62, $5D6F, $1D71, $5D70 ; tile4CB: 0x162, 0x16F, 0x171, 0x170\n#_0FA660: dw $5D00, $1D42, $5D10, $1D42 ; tile4CC: 0x100, 0x142, 0x110, 0x142\n#_0FA668: dw $1D61, $1D62, $5D71, $1D71 ; tile4CD: 0x161, 0x162, 0x171, 0x171\n#_0FA670: dw $487C, $087A, $14BD, $487C ; tile4CE: 0x07C, 0x07A, 0x0BD, 0x07C\n#_0FA678: dw $1D71, $1D71, $1D31, $5D31 ; tile4CF: 0x171, 0x171, 0x131, 0x131\n#_0FA680: dw $3D42, $1D42, $3D52, $1D52 ; tile4D0: 0x142, 0x142, 0x152, 0x152\n#_0FA688: dw $1D42, $1D42, $1D52, $5D52 ; tile4D1: 0x142, 0x142, 0x152, 0x152\n#_0FA690: dw $1D71, $5D20, $5D31, $5D7A ; tile4D2: 0x171, 0x120, 0x131, 0x17A\n#_0FA698: dw $594C, $190F, $595C, $595B ; tile4D3: 0x14C, 0x10F, 0x15C, 0x15B\n#_0FA6A0: dw $596C, $596B, $D96C, $D96B ; tile4D4: 0x16C, 0x16B, 0x16C, 0x16B\n#_0FA6A8: dw $594B, $190F, $D94B, $190F ; tile4D5: 0x14B, 0x10F, 0x14B, 0x10F\n#_0FA6B0: dw $08AA, $08AA, $08AA, $8CFD ; tile4D6: 0x0AA, 0x0AA, 0x0AA, 0x0FD\n#_0FA6B8: dw $08AA, $08AA, $0D0E, $0D0E ; tile4D7: 0x0AA, 0x0AA, 0x10E, 0x10E\n#_0FA6C0: dw $08AA, $08AA, $0CFD, $08AA ; tile4D8: 0x0AA, 0x0AA, 0x0FD, 0x0AA\n#_0FA6C8: dw $D95C, $D95B, $D94C, $190F ; tile4D9: 0x15C, 0x15B, 0x14C, 0x10F\n#_0FA6D0: dw $5D62, $1D61, $5D71, $1D71 ; tile4DA: 0x162, 0x161, 0x171, 0x171\n#_0FA6D8: dw $08AA, $0D0E, $08AA, $0D0E ; tile4DB: 0x0AA, 0x10E, 0x0AA, 0x10E\n#_0FA6E0: dw $0D0E, $08AA, $0D0E, $08AA ; tile4DC: 0x10E, 0x0AA, 0x10E, 0x0AA\n#_0FA6E8: dw $08AA, $4CFD, $08AA, $08AA ; tile4DD: 0x0AA, 0x0FD, 0x0AA, 0x0AA\n#_0FA6F0: dw $0D0E, $0D0E, $08AA, $08AA ; tile4DE: 0x10E, 0x10E, 0x0AA, 0x0AA\n#_0FA6F8: dw $CCFD, $08AA, $08AA, $08AA ; tile4DF: 0x0FD, 0x0AA, 0x0AA, 0x0AA\n#_0FA700: dw $0D15, $6D15, $0D57, $6D57 ; tile4E0: 0x115, 0x115, 0x157, 0x157\n#_0FA708: dw $2D15, $4D15, $2D57, $4D57 ; tile4E1: 0x115, 0x115, 0x157, 0x157\n#_0FA710: dw $8CFD, $0CFD, $4CFD, $CCFD ; tile4E2: 0x0FD, 0x0FD, 0x0FD, 0x0FD\n#_0FA718: dw $0D67, $6D67, $0D13, $0CFE ; tile4E3: 0x167, 0x167, 0x113, 0x0FE\n#_0FA720: dw $2D67, $4D67, $4CFE, $4D13 ; tile4E4: 0x167, 0x167, 0x0FE, 0x113\n#_0FA728: dw $1D42, $1D42, $3D52, $5D52 ; tile4E5: 0x142, 0x142, 0x152, 0x152\n#_0FA730: dw $1D42, $1D42, $5D52, $1D52 ; tile4E6: 0x142, 0x142, 0x152, 0x152\n#_0FA738: dw $0D13, $0D3F, $0D13, $0D3E ; tile4E7: 0x113, 0x13F, 0x113, 0x13E\n#_0FA740: dw $4D3F, $4D13, $4D3E, $4D13 ; tile4E8: 0x13F, 0x113, 0x13E, 0x113\n#_0FA748: dw $5D2C, $1D61, $5D79, $1D71 ; tile4E9: 0x12C, 0x161, 0x179, 0x171\n#_0FA750: dw $190F, $1D18, $190F, $1D18 ; tile4EA: 0x10F, 0x118, 0x10F, 0x118\n#_0FA758: dw $5D18, $0D0E, $5D18, $0D0E ; tile4EB: 0x118, 0x10E, 0x118, 0x10E\n#_0FA760: dw $4D1F, $1D19, $0D1F, $1D28 ; tile4EC: 0x11F, 0x119, 0x11F, 0x128\n#_0FA768: dw $1D1B, $1D18, $1D1B, $1D28 ; tile4ED: 0x11B, 0x118, 0x11B, 0x128\n#_0FA770: dw $5D18, $0D0E, $5D28, $0D0E ; tile4EE: 0x118, 0x10E, 0x128, 0x10E\n#_0FA778: dw $4D1F, $08AA, $0D1F, $08AA ; tile4EF: 0x11F, 0x0AA, 0x11F, 0x0AA\n#_0FA780: dw $1506, $1537, $1516, $1539 ; tile4F0: 0x106, 0x137, 0x116, 0x139\n#_0FA788: dw $5506, $08AA, $5516, $08AA ; tile4F1: 0x106, 0x0AA, 0x116, 0x0AA\n#_0FA790: dw $0D0F, $0D0F, $4D0D, $0D0F ; tile4F2: 0x10F, 0x10F, 0x10D, 0x10F\n#_0FA798: dw $0D0F, $0D1F, $0D0F, $4D1F ; tile4F3: 0x10F, 0x11F, 0x10F, 0x11F\n#_0FA7A0: dw $1526, $5539, $1516, $1539 ; tile4F4: 0x126, 0x139, 0x116, 0x139\n#_0FA7A8: dw $5526, $08AA, $5516, $08AA ; tile4F5: 0x126, 0x0AA, 0x116, 0x0AA\n#_0FA7B0: dw $1526, $1539, $1536, $1538 ; tile4F6: 0x126, 0x139, 0x136, 0x138\n#_0FA7B8: dw $5526, $08AA, $5536, $08AA ; tile4F7: 0x126, 0x0AA, 0x136, 0x0AA\n#_0FA7C0: dw $0D1F, $08AA, $4D1F, $08AA ; tile4F8: 0x11F, 0x0AA, 0x11F, 0x0AA\n#_0FA7C8: dw $5526, $154E, $5516, $155E ; tile4F9: 0x126, 0x14E, 0x116, 0x15E\n#_0FA7D0: dw $554E, $4D1F, $555E, $0D1F ; tile4FA: 0x14E, 0x11F, 0x15E, 0x11F\n#_0FA7D8: dw $0D1F, $154E, $4D1F, $155E ; tile4FB: 0x11F, 0x14E, 0x11F, 0x15E\n#_0FA7E0: dw $554E, $1526, $555E, $1516 ; tile4FC: 0x14E, 0x126, 0x15E, 0x116\n#_0FA7E8: dw $5526, $153B, $5516, $08AA ; tile4FD: 0x126, 0x13B, 0x116, 0x0AA\n#_0FA7F0: dw $553B, $4D1F, $08AA, $0D1F ; tile4FE: 0x13B, 0x11F, 0x0AA, 0x11F\n#_0FA7F8: dw $0D1F, $153B, $4D1F, $08AA ; tile4FF: 0x11F, 0x13B, 0x11F, 0x0AA\n#_0FA800: dw $553B, $1526, $08AA, $1516 ; tile500: 0x13B, 0x126, 0x0AA, 0x116\n#_0FA808: dw $1539, $5526, $1539, $5516 ; tile501: 0x139, 0x126, 0x139, 0x116\n#_0FA810: dw $5526, $153B, $5536, $08AA ; tile502: 0x126, 0x13B, 0x136, 0x0AA\n#_0FA818: dw $553B, $1526, $08AA, $1536 ; tile503: 0x13B, 0x126, 0x0AA, 0x136\n#_0FA820: dw $1539, $5526, $5538, $5536 ; tile504: 0x139, 0x126, 0x138, 0x136\n#_0FA828: dw $5DE1, $1DE1, $5DCF, $1DCF ; tile505: 0x1E1, 0x1E1, 0x1CF, 0x1CF\n#_0FA830: dw $DDD1, $DDC1, $5DF1, $5DC1 ; tile506: 0x1D1, 0x1C1, 0x1F1, 0x1C1\n#_0FA838: dw $9DFE, $9DFE, $9DFE, $1DE1 ; tile507: 0x1FE, 0x1FE, 0x1FE, 0x1E1\n#_0FA840: dw $9DFE, $9DFE, $5DE1, $9DFE ; tile508: 0x1FE, 0x1FE, 0x1E1, 0x1FE\n#_0FA848: dw $5DE2, $DDC1, $5DD1, $5DC1 ; tile509: 0x1E2, 0x1C1, 0x1D1, 0x1C1\n#_0FA850: dw $884E, $1028, $084E, $086A ; tile50A: 0x04E, 0x028, 0x04E, 0x06A\n#_0FA858: dw $0900, $0901, $092D, $092A ; tile50B: 0x100, 0x101, 0x12D, 0x12A\n#_0FA860: dw $0938, $0938, $092B, $092B ; tile50C: 0x138, 0x138, 0x12B, 0x12B\n#_0FA868: dw $0938, $0901, $092B, $092A ; tile50D: 0x138, 0x101, 0x12B, 0x12A\n#_0FA870: dw $0901, $0938, $092A, $092B ; tile50E: 0x101, 0x138, 0x12A, 0x12B\n#_0FA878: dw $0901, $4900, $092A, $492D ; tile50F: 0x101, 0x100, 0x12A, 0x12D\n#_0FA880: dw $093D, $093B, $093D, $093B ; tile510: 0x13D, 0x13B, 0x13D, 0x13B\n#_0FA888: dw $093B, $093B, $093B, $093B ; tile511: 0x13B, 0x13B, 0x13B, 0x13B\n#_0FA890: dw $093B, $493D, $093B, $493D ; tile512: 0x13B, 0x13D, 0x13B, 0x13D\n#_0FA898: dw $093D, $093B, $0910, $0901 ; tile513: 0x13D, 0x13B, 0x110, 0x101\n#_0FA8A0: dw $093B, $093B, $0938, $0938 ; tile514: 0x13B, 0x13B, 0x138, 0x138\n#_0FA8A8: dw $093B, $093B, $0938, $0901 ; tile515: 0x13B, 0x13B, 0x138, 0x101\n#_0FA8B0: dw $093B, $093B, $0901, $0938 ; tile516: 0x13B, 0x13B, 0x101, 0x138\n#_0FA8B8: dw $093B, $493D, $0901, $4910 ; tile517: 0x13B, 0x13D, 0x101, 0x110\n#_0FA8C0: dw $0928, $0921, $08A5, $084F ; tile518: 0x128, 0x121, 0x0A5, 0x04F\n#_0FA8C8: dw $0922, $0922, $0874, $0918 ; tile519: 0x122, 0x122, 0x074, 0x118\n#_0FA8D0: dw $0922, $0921, $4918, $0918 ; tile51A: 0x122, 0x121, 0x118, 0x118\n#_0FA8D8: dw $0922, $0922, $4918, $0918 ; tile51B: 0x122, 0x122, 0x118, 0x118\n#_0FA8E0: dw $0921, $0922, $4918, $0918 ; tile51C: 0x121, 0x122, 0x118, 0x118\n#_0FA8E8: dw $0922, $0922, $4918, $4874 ; tile51D: 0x122, 0x122, 0x118, 0x074\n#_0FA8F0: dw $0921, $4928, $484F, $48A5 ; tile51E: 0x121, 0x128, 0x04F, 0x0A5\n#_0FA8F8: dw $1DC0, $5DC0, $1DF1, $5DF1 ; tile51F: 0x1C0, 0x1C0, 0x1F1, 0x1F1\n#_0FA900: dw $0840, $0841, $4851, $4850 ; tile520: 0x040, 0x041, 0x051, 0x050\n#_0FA908: dw $1DFE, $1DCF, $1DE1, $5DE1 ; tile521: 0x1FE, 0x1CF, 0x1E1, 0x1E1\n#_0FA910: dw $5DCF, $1DFE, $1DE1, $5DE1 ; tile522: 0x1CF, 0x1FE, 0x1E1, 0x1E1\n#_0FA918: dw $1DCF, $5DCF, $9DFE, $1DE1 ; tile523: 0x1CF, 0x1CF, 0x1FE, 0x1E1\n#_0FA920: dw $1DCF, $5DCF, $5DE1, $9DFE ; tile524: 0x1CF, 0x1CF, 0x1E1, 0x1FE\n#_0FA928: dw $084C, $484C, $087D, $08A6 ; tile525: 0x04C, 0x04C, 0x07D, 0x0A6\n#_0FA930: dw $088A, $0841, $089A, $0851 ; tile526: 0x08A, 0x041, 0x09A, 0x051\n#_0FA938: dw $0864, $0899, $0874, $08A9 ; tile527: 0x064, 0x099, 0x074, 0x0A9\n#_0FA940: dw $0CAE, $4CAA, $8CAE, $4CAA ; tile528: 0x0AE, 0x0AA, 0x0AE, 0x0AA\n#_0FA948: dw $1D45, $5D45, $5D64, $1D64 ; tile529: 0x145, 0x145, 0x164, 0x164\n#_0FA950: dw $5D64, $9D64, $DD64, $1D64 ; tile52A: 0x164, 0x164, 0x164, 0x164\n#_0FA958: dw $1D45, $1D47, $5D64, $1D56 ; tile52B: 0x145, 0x147, 0x164, 0x156\n#_0FA960: dw $1D47, $5D47, $1D57, $5D57 ; tile52C: 0x147, 0x147, 0x157, 0x157\n#_0FA968: dw $1D47, $5D43, $1D57, $5D53 ; tile52D: 0x147, 0x143, 0x157, 0x153\n#_0FA970: dw $1D43, $5D47, $1D53, $5D57 ; tile52E: 0x143, 0x147, 0x153, 0x157\n#_0FA978: dw $1D40, $5D40, $1D50, $1D70 ; tile52F: 0x140, 0x140, 0x150, 0x170\n#_0FA980: dw $1D0B, $1D1B, $1D0B, $1D1B ; tile530: 0x10B, 0x11B, 0x10B, 0x11B\n#_0FA988: dw $1D47, $5D45, $5D56, $1D64 ; tile531: 0x147, 0x145, 0x156, 0x164\n#_0FA990: dw $5D64, $1D64, $5D74, $1D74 ; tile532: 0x164, 0x164, 0x174, 0x174\n#_0FA998: dw $1D60, $5D60, $1D60, $5D60 ; tile533: 0x160, 0x160, 0x160, 0x160\n#_0FA9A0: dw $0840, $488A, $0850, $489A ; tile534: 0x040, 0x08A, 0x050, 0x09A\n#_0FA9A8: dw $4C6A, $884F, $4C6A, $084F ; tile535: 0x06A, 0x04F, 0x06A, 0x04F\n#_0FA9B0: dw $4899, $4864, $48A9, $4874 ; tile536: 0x099, 0x064, 0x0A9, 0x074\n#_0FA9B8: dw $DD74, $9D74, $5D64, $1D64 ; tile537: 0x174, 0x174, 0x164, 0x164\n#_0FA9C0: dw $1D60, $5D60, $1D38, $5D38 ; tile538: 0x160, 0x160, 0x138, 0x138\n#_0FA9C8: dw $4CAA, $4CAE, $4CAA, $CCAE ; tile539: 0x0AA, 0x0AE, 0x0AA, 0x0AE\n#_0FA9D0: dw $1D2D, $5D2D, $1D3D, $5D3D ; tile53A: 0x12D, 0x12D, 0x13D, 0x13D\n#_0FA9D8: dw $9D7B, $DD7B, $1D7B, $5D7B ; tile53B: 0x17B, 0x17B, 0x17B, 0x17B\n#_0FA9E0: dw $5D64, $1D46, $1D55, $5D57 ; tile53C: 0x164, 0x146, 0x155, 0x157\n#_0FA9E8: dw $5D46, $1D64, $1D57, $5D55 ; tile53D: 0x146, 0x164, 0x157, 0x155\n#_0FA9F0: dw $4CAA, $4CAE, $4CAA, $CCAF ; tile53E: 0x0AA, 0x0AE, 0x0AA, 0x0AF\n#_0FA9F8: dw $4C66, $4848, $4C76, $4852 ; tile53F: 0x066, 0x048, 0x076, 0x052\n#_0FAA00: dw $0848, $0C66, $0852, $0C76 ; tile540: 0x048, 0x066, 0x052, 0x076\n#_0FAA08: dw $0CAE, $4CAA, $8CAF, $4CAA ; tile541: 0x0AE, 0x0AA, 0x0AF, 0x0AA\n#_0FAA10: dw $0862, $0CA1, $0CA0, $0CAA ; tile542: 0x062, 0x0A1, 0x0A0, 0x0AA\n#_0FAA18: dw $0CAA, $0CAA, $1D2D, $5D2D ; tile543: 0x0AA, 0x0AA, 0x12D, 0x12D\n#_0FAA20: dw $0CAA, $0CAA, $1D1C, $1D0D ; tile544: 0x0AA, 0x0AA, 0x11C, 0x10D\n#_0FAA28: dw $0CAA, $0CAA, $1D0D, $5D1C ; tile545: 0x0AA, 0x0AA, 0x10D, 0x11C\n#_0FAA30: dw $0CAA, $0CAA, $1D0D, $1D0D ; tile546: 0x0AA, 0x0AA, 0x10D, 0x10D\n#_0FAA38: dw $1D3D, $5D3D, $0CAA, $0CAA ; tile547: 0x13D, 0x13D, 0x0AA, 0x0AA\n#_0FAA40: dw $0CAE, $1D1C, $8CAE, $1D0C ; tile548: 0x0AE, 0x11C, 0x0AE, 0x10C\n#_0FAA48: dw $1D1D, $5D2D, $1D3D, $5D3D ; tile549: 0x11D, 0x12D, 0x13D, 0x13D\n#_0FAA50: dw $1D2D, $5D1D, $1D3D, $5D3D ; tile54A: 0x12D, 0x11D, 0x13D, 0x13D\n#_0FAA58: dw $1D0D, $1D0D, $9D2D, $DD2D ; tile54B: 0x10D, 0x10D, 0x12D, 0x12D\n#_0FAA60: dw $5D1C, $0CAA, $5D1D, $5D1C ; tile54C: 0x11C, 0x0AA, 0x11D, 0x11C\n#_0FAA68: dw $4CAA, $4CAA, $4CAA, $4CAF ; tile54D: 0x0AA, 0x0AA, 0x0AA, 0x0AF\n#_0FAA70: dw $4CAF, $4CBE, $4C56, $4868 ; tile54E: 0x0AF, 0x0BE, 0x056, 0x068\n#_0FAA78: dw $0CBE, $4CBE, $0C80, $0C81 ; tile54F: 0x0BE, 0x0BE, 0x080, 0x081\n#_0FAA80: dw $0CBE, $0CAF, $0868, $0C56 ; tile550: 0x0BE, 0x0AF, 0x068, 0x056\n#_0FAA88: dw $4CAA, $4CAA, $0CAF, $4CAA ; tile551: 0x0AA, 0x0AA, 0x0AF, 0x0AA\n#_0FAA90: dw $0CAE, $1D0C, $8CAE, $1D0C ; tile552: 0x0AE, 0x10C, 0x0AE, 0x10C\n#_0FAA98: dw $1D2D, $5D2D, $1D3D, $DD1D ; tile553: 0x12D, 0x12D, 0x13D, 0x11D\n#_0FAAA0: dw $1D2D, $5D2D, $9D0D, $9D0D ; tile554: 0x12D, 0x12D, 0x10D, 0x10D\n#_0FAAA8: dw $1D2D, $5D2D, $9D1D, $5D3D ; tile555: 0x12D, 0x12D, 0x11D, 0x13D\n#_0FAAB0: dw $5D1C, $4CAE, $5D0C, $CCAE ; tile556: 0x11C, 0x0AE, 0x10C, 0x0AE\n#_0FAAB8: dw $1D65, $5D67, $5D64, $1D76 ; tile557: 0x165, 0x167, 0x164, 0x176\n#_0FAAC0: dw $1D67, $5D67, $1D77, $5D77 ; tile558: 0x167, 0x167, 0x177, 0x177\n#_0FAAC8: dw $1D67, $5D65, $5D76, $1D64 ; tile559: 0x167, 0x165, 0x176, 0x164\n#_0FAAD0: dw $393A, $393B, $3908, $3941 ; tile55A: 0x13A, 0x13B, 0x108, 0x141\n#_0FAAD8: dw $393B, $393B, $3941, $3941 ; tile55B: 0x13B, 0x13B, 0x141, 0x141\n#_0FAAE0: dw $393B, $793A, $3941, $7908 ; tile55C: 0x13B, 0x13A, 0x141, 0x108\n#_0FAAE8: dw $1D0C, $5D2D, $1D0C, $5D3D ; tile55D: 0x10C, 0x12D, 0x10C, 0x13D\n#_0FAAF0: dw $5D0C, $4CAE, $DD1C, $CCAE ; tile55E: 0x10C, 0x0AE, 0x11C, 0x0AE\n#_0FAAF8: dw $3908, $3941, $3908, $3941 ; tile55F: 0x108, 0x141, 0x108, 0x141\n#_0FAB00: dw $3941, $3941, $3941, $3941 ; tile560: 0x141, 0x141, 0x141, 0x141\n#_0FAB08: dw $3941, $7908, $3941, $7908 ; tile561: 0x141, 0x108, 0x141, 0x108\n#_0FAB10: dw $1D2D, $5D0C, $1D3D, $5D0C ; tile562: 0x12D, 0x10C, 0x13D, 0x10C\n#_0FAB18: dw $3918, $3973, $1D49, $5D49 ; tile563: 0x118, 0x173, 0x149, 0x149\n#_0FAB20: dw $7928, $3941, $3908, $3941 ; tile564: 0x128, 0x141, 0x108, 0x141\n#_0FAB28: dw $3941, $3928, $3941, $7908 ; tile565: 0x141, 0x128, 0x141, 0x108\n#_0FAB30: dw $7973, $7918, $1D49, $5D49 ; tile566: 0x173, 0x118, 0x149, 0x149\n#_0FAB38: dw $1D4A, $5D4A, $1D6A, $5D6A ; tile567: 0x14A, 0x14A, 0x16A, 0x16A\n#_0FAB40: dw $3973, $3973, $1CFE, $1CFE ; tile568: 0x173, 0x173, 0x0FE, 0x0FE\n#_0FAB48: dw $5D0C, $4CAE, $5D0C, $CCAE ; tile569: 0x10C, 0x0AE, 0x10C, 0x0AE\n#_0FAB50: dw $0864, $0C66, $1191, $0981 ; tile56A: 0x064, 0x066, 0x191, 0x181\n#_0FAB58: dw $0CBF, $0CBF, $0C80, $0C81 ; tile56B: 0x0BF, 0x0BF, 0x080, 0x081\n#_0FAB60: dw $0CAE, $1D0C, $8CAE, $9D1C ; tile56C: 0x0AE, 0x10C, 0x0AE, 0x11C\n#_0FAB68: dw $9D3F, $DD3F, $1D3F, $5D3F ; tile56D: 0x13F, 0x13F, 0x13F, 0x13F\n#_0FAB70: dw $1CFF, $1CFF, $1D3F, $5D3F ; tile56E: 0x0FF, 0x0FF, 0x13F, 0x13F\n#_0FAB78: dw $5D64, $1D66, $1D75, $5D77 ; tile56F: 0x164, 0x166, 0x175, 0x177\n#_0FAB80: dw $9D1C, $9D1D, $0CAA, $9D1C ; tile570: 0x11C, 0x11D, 0x0AA, 0x11C\n#_0FAB88: dw $DD1D, $DD1C, $DD1C, $4CAA ; tile571: 0x11D, 0x11C, 0x11C, 0x0AA\n#_0FAB90: dw $0CBE, $0CBF, $0C80, $0C81 ; tile572: 0x0BE, 0x0BF, 0x080, 0x081\n#_0FAB98: dw $4C66, $4864, $4981, $5191 ; tile573: 0x066, 0x064, 0x181, 0x191\n#_0FABA0: dw $1D67, $5D65, $1D77, $5D75 ; tile574: 0x167, 0x165, 0x177, 0x175\n#_0FABA8: dw $1D65, $5D67, $1D75, $5D77 ; tile575: 0x165, 0x167, 0x175, 0x177\n#_0FABB0: dw $5D66, $1D64, $1D77, $5D75 ; tile576: 0x166, 0x164, 0x177, 0x175\n#_0FABB8: dw $1D67, $5D44, $1D77, $5D54 ; tile577: 0x167, 0x144, 0x177, 0x154\n#_0FABC0: dw $1D44, $5D67, $1D54, $5D77 ; tile578: 0x144, 0x167, 0x154, 0x177\n#_0FABC8: dw $4865, $485E, $4875, $486E ; tile579: 0x065, 0x05E, 0x075, 0x06E\n#_0FABD0: dw $2D08, $2D41, $2D08, $2D41 ; tile57A: 0x108, 0x141, 0x108, 0x141\n#_0FABD8: dw $2D41, $2D41, $2D41, $2D41 ; tile57B: 0x141, 0x141, 0x141, 0x141\n#_0FABE0: dw $2D41, $6D08, $2D41, $6D08 ; tile57C: 0x141, 0x108, 0x141, 0x108\n#_0FABE8: dw $485F, $0861, $486F, $0871 ; tile57D: 0x05F, 0x061, 0x06F, 0x071\n#_0FABF0: dw $2D08, $2D41, $2D08, $2D28 ; tile57E: 0x108, 0x141, 0x108, 0x128\n#_0FABF8: dw $2D41, $2D41, $2D73, $2D73 ; tile57F: 0x141, 0x141, 0x173, 0x173\n#_0FAC00: dw $2D41, $2D41, $6D28, $2D28 ; tile580: 0x141, 0x141, 0x128, 0x128\n#_0FAC08: dw $2D41, $2D41, $6D28, $2D41 ; tile581: 0x141, 0x141, 0x128, 0x141\n#_0FAC10: dw $2D41, $2D41, $2D41, $2D28 ; tile582: 0x141, 0x141, 0x141, 0x128\n#_0FAC18: dw $2D41, $6D08, $6D28, $6D08 ; tile583: 0x141, 0x108, 0x128, 0x108\n#_0FAC20: dw $9D3F, $DD3E, $1D3F, $5D3E ; tile584: 0x13F, 0x13E, 0x13F, 0x13E\n#_0FAC28: dw $2D08, $6D08, $2D18, $6D18 ; tile585: 0x108, 0x108, 0x118, 0x118\n#_0FAC30: dw $1D58, $1D59, $1D68, $1D69 ; tile586: 0x158, 0x159, 0x168, 0x169\n#_0FAC38: dw $5D59, $5D58, $5D69, $5D68 ; tile587: 0x159, 0x158, 0x169, 0x168\n#_0FAC40: dw $2D08, $2D41, $2D18, $2D73 ; tile588: 0x108, 0x141, 0x118, 0x173\n#_0FAC48: dw $2D41, $6D08, $2D73, $6D18 ; tile589: 0x141, 0x108, 0x173, 0x118\n#_0FAC50: dw $485F, $0861, $4852, $0CB1 ; tile58A: 0x05F, 0x061, 0x052, 0x0B1\n#_0FAC58: dw $5D64, $1D64, $1D75, $5D75 ; tile58B: 0x164, 0x164, 0x175, 0x175\n#_0FAC60: dw $0D5A, $4D5A, $0D49, $4D49 ; tile58C: 0x15A, 0x15A, 0x149, 0x149\n#_0FAC68: dw $1D78, $1D79, $1D36, $1D37 ; tile58D: 0x178, 0x179, 0x136, 0x137\n#_0FAC70: dw $5D79, $5D78, $5D37, $5D36 ; tile58E: 0x179, 0x178, 0x137, 0x136\n#_0FAC78: dw $1CFE, $1CFE, $1CFF, $1CFF ; tile58F: 0x0FE, 0x0FE, 0x0FF, 0x0FF\n#_0FAC80: dw $884E, $1D6B, $084E, $1D6B ; tile590: 0x04E, 0x16B, 0x04E, 0x16B\n#_0FAC88: dw $0D50, $0D70, $0D50, $0D70 ; tile591: 0x150, 0x170, 0x150, 0x170\n#_0FAC90: dw $1D51, $1D52, $1D26, $1D27 ; tile592: 0x151, 0x152, 0x126, 0x127\n#_0FAC98: dw $5D52, $5D51, $5D27, $5D26 ; tile593: 0x152, 0x151, 0x127, 0x126\n#_0FACA0: dw $0D4A, $4D4A, $1D6A, $5D6A ; tile594: 0x14A, 0x14A, 0x16A, 0x16A\n#_0FACA8: dw $1D7E, $1D6E, $1D7E, $1D6E ; tile595: 0x17E, 0x16E, 0x17E, 0x16E\n#_0FACB0: dw $0CAA, $4CAF, $4CAF, $4CBF ; tile596: 0x0AA, 0x0AF, 0x0AF, 0x0BF\n#_0FACB8: dw $0CBE, $4CBE, $0CBF, $0CBF ; tile597: 0x0BE, 0x0BE, 0x0BF, 0x0BF\n#_0FACC0: dw $0CBE, $0CBF, $0CBF, $0CBF ; tile598: 0x0BE, 0x0BF, 0x0BF, 0x0BF\n#_0FACC8: dw $0D60, $4D60, $0D38, $4D38 ; tile599: 0x160, 0x160, 0x138, 0x138\n#_0FACD0: dw $1D6E, $1D6E, $1D6E, $1D6E ; tile59A: 0x16E, 0x16E, 0x16E, 0x16E\n#_0FACD8: dw $4CAA, $4CAF, $4CAA, $CCAE ; tile59B: 0x0AA, 0x0AF, 0x0AA, 0x0AE\n#_0FACE0: dw $0CBF, $4C46, $4C56, $4854 ; tile59C: 0x0BF, 0x046, 0x056, 0x054\n#_0FACE8: dw $0C80, $0C81, $4855, $4868 ; tile59D: 0x080, 0x081, 0x055, 0x068\n#_0FACF0: dw $0C80, $0C81, $0890, $0891 ; tile59E: 0x080, 0x081, 0x090, 0x091\n#_0FACF8: dw $4981, $5191, $0890, $0891 ; tile59F: 0x181, 0x191, 0x090, 0x091\n#_0FAD00: dw $1D63, $5D63, $0C80, $0C81 ; tile5A0: 0x163, 0x163, 0x080, 0x081\n#_0FAD08: dw $0D60, $4D60, $0D60, $4D60 ; tile5A1: 0x160, 0x160, 0x160, 0x160\n#_0FAD10: dw $084C, $484C, $1D6B, $1D6B ; tile5A2: 0x04C, 0x04C, 0x16B, 0x16B\n#_0FAD18: dw $1D47, $5D45, $1D57, $5D55 ; tile5A3: 0x147, 0x145, 0x157, 0x155\n#_0FAD20: dw $1D6B, $1D6B, $085C, $485C ; tile5A4: 0x16B, 0x16B, 0x05C, 0x05C\n#_0FAD28: dw $1D45, $1D47, $1D55, $5D57 ; tile5A5: 0x145, 0x147, 0x155, 0x157\n#_0FAD30: dw $1D02, $1D03, $1D12, $1D48 ; tile5A6: 0x102, 0x103, 0x112, 0x148\n#_0FAD38: dw $5D03, $5D02, $5D48, $5D12 ; tile5A7: 0x103, 0x102, 0x148, 0x112\n#_0FAD40: dw $1D13, $1D42, $1D09, $1D19 ; tile5A8: 0x113, 0x142, 0x109, 0x119\n#_0FAD48: dw $5D42, $5D13, $5D19, $5D09 ; tile5A9: 0x142, 0x113, 0x119, 0x109\n#_0FAD50: dw $9D3F, $DD3E, $1D3F, $5D3C ; tile5AA: 0x13F, 0x13E, 0x13F, 0x13C\n#_0FAD58: dw $4C66, $485E, $4C76, $486E ; tile5AB: 0x066, 0x05E, 0x076, 0x06E\n#_0FAD60: dw $3CCD, $3CCE, $3CC0, $3CD2 ; tile5AC: 0x0CD, 0x0CE, 0x0C0, 0x0D2\n#_0FAD68: dw $3CCF, $3CDD, $3CD3, $3CC6 ; tile5AD: 0x0CF, 0x0DD, 0x0D3, 0x0C6\n#_0FAD70: dw $3CDD, $3CDD, $3CE2, $3CE2 ; tile5AE: 0x0DD, 0x0DD, 0x0E2, 0x0E2\n#_0FAD78: dw $3CDD, $7CCF, $3CC6, $7CD3 ; tile5AF: 0x0DD, 0x0CF, 0x0C6, 0x0D3\n#_0FAD80: dw $7CCE, $7CCD, $3CD2, $7CC0 ; tile5B0: 0x0CE, 0x0CD, 0x0D2, 0x0C0\n#_0FAD88: dw $3CC0, $3CD2, $3CC0, $3CD2 ; tile5B1: 0x0C0, 0x0D2, 0x0C0, 0x0D2\n#_0FAD90: dw $3CD3, $3CE2, $3CD3, $3CE2 ; tile5B2: 0x0D3, 0x0E2, 0x0D3, 0x0E2\n#_0FAD98: dw $3CE2, $3CE2, $3CE2, $3CE2 ; tile5B3: 0x0E2, 0x0E2, 0x0E2, 0x0E2\n#_0FADA0: dw $3CE2, $7CD3, $3CE2, $7CD3 ; tile5B4: 0x0E2, 0x0D3, 0x0E2, 0x0D3\n#_0FADA8: dw $3CD2, $7CC0, $3CD2, $7CC0 ; tile5B5: 0x0D2, 0x0C0, 0x0D2, 0x0C0\n#_0FADB0: dw $3CD3, $3CE2, $3CD3, $3CC6 ; tile5B6: 0x0D3, 0x0E2, 0x0D3, 0x0C6\n#_0FADB8: dw $3CE2, $7CD3, $3CC6, $7CD3 ; tile5B7: 0x0E2, 0x0D3, 0x0C6, 0x0D3\n#_0FADC0: dw $3CC0, $3CC1, $3CD0, $3CD1 ; tile5B8: 0x0C0, 0x0C1, 0x0D0, 0x0D1\n#_0FADC8: dw $3CC2, $3CC3, $3CD2, $3CD2 ; tile5B9: 0x0C2, 0x0C3, 0x0D2, 0x0D2\n#_0FADD0: dw $3CC3, $3CC3, $3CD2, $3CD2 ; tile5BA: 0x0C3, 0x0C3, 0x0D2, 0x0D2\n#_0FADD8: dw $3CC3, $7CC2, $3CD2, $3CD2 ; tile5BB: 0x0C3, 0x0C2, 0x0D2, 0x0D2\n#_0FADE0: dw $7CC1, $7CC0, $7CD1, $7CD0 ; tile5BC: 0x0C1, 0x0C0, 0x0D1, 0x0D0\n#_0FADE8: dw $3CE0, $3CE1, $3CF0, $3CF1 ; tile5BD: 0x0E0, 0x0E1, 0x0F0, 0x0F1\n#_0FADF0: dw $3CD2, $3CD2, $3CF1, $3CF1 ; tile5BE: 0x0D2, 0x0D2, 0x0F1, 0x0F1\n#_0FADF8: dw $3CD4, $3CD5, $3CC4, $3CC5 ; tile5BF: 0x0D4, 0x0D5, 0x0C4, 0x0C5\n#_0FAE00: dw $7CD5, $7CD4, $7CC5, $7CC4 ; tile5C0: 0x0D5, 0x0D4, 0x0C5, 0x0C4\n#_0FAE08: dw $7CE1, $7CE0, $3CF1, $7CF0 ; tile5C1: 0x0E1, 0x0E0, 0x0F1, 0x0F0\n#_0FAE10: dw $48E7, $48CA, $48F7, $48DA ; tile5C2: 0x0E7, 0x0CA, 0x0F7, 0x0DA\n#_0FAE18: dw $08CA, $08E7, $08DA, $08F7 ; tile5C3: 0x0CA, 0x0E7, 0x0DA, 0x0F7\n#_0FAE20: dw $0CED, $0CED, $150C, $0CED ; tile5C4: 0x0ED, 0x0ED, 0x10C, 0x0ED\n#_0FAE28: dw $1D26, $1D27, $1D36, $1D37 ; tile5C5: 0x126, 0x127, 0x136, 0x137\n#_0FAE30: dw $5D27, $5D26, $5D37, $5D36 ; tile5C6: 0x127, 0x126, 0x137, 0x136\n#_0FAE38: dw $0CED, $150C, $0CED, $0CED ; tile5C7: 0x0ED, 0x10C, 0x0ED, 0x0ED\n#_0FAE40: dw $150C, $150C, $0CED, $0CED ; tile5C8: 0x10C, 0x10C, 0x0ED, 0x0ED\n#_0FAE48: dw $112A, $112B, $08AA, $08AA ; tile5C9: 0x12A, 0x12B, 0x0AA, 0x0AA\n#_0FAE50: dw $512B, $512A, $08AA, $08AA ; tile5CA: 0x12B, 0x12A, 0x0AA, 0x0AA\n#_0FAE58: dw $3CCF, $3CDD, $3CD3, $7D42 ; tile5CB: 0x0CF, 0x0DD, 0x0D3, 0x142\n#_0FAE60: dw $3CDD, $3CDD, $3D42, $3CE2 ; tile5CC: 0x0DD, 0x0DD, 0x142, 0x0E2\n#_0FAE68: dw $3CDD, $3CDD, $3CE2, $7D42 ; tile5CD: 0x0DD, 0x0DD, 0x0E2, 0x142\n#_0FAE70: dw $3CDD, $7CCF, $3D42, $7CD3 ; tile5CE: 0x0DD, 0x0CF, 0x142, 0x0D3\n#_0FAE78: dw $3CD3, $7D41, $3CD3, $7D51 ; tile5CF: 0x0D3, 0x141, 0x0D3, 0x151\n#_0FAE80: dw $3D41, $3CE2, $3D51, $3CE2 ; tile5D0: 0x141, 0x0E2, 0x151, 0x0E2\n#_0FAE88: dw $3CE2, $7D41, $3CE2, $7D51 ; tile5D1: 0x0E2, 0x141, 0x0E2, 0x151\n#_0FAE90: dw $3D41, $7CD3, $3D51, $7CD3 ; tile5D2: 0x141, 0x0D3, 0x151, 0x0D3\n#_0FAE98: dw $3CDD, $3CDD, $3CE2, $3CEE ; tile5D3: 0x0DD, 0x0DD, 0x0E2, 0x0EE\n#_0FAEA0: dw $3CDD, $3CDD, $3CEE, $3CE2 ; tile5D4: 0x0DD, 0x0DD, 0x0EE, 0x0E2\n#_0FAEA8: dw $3CE2, $3CEE, $3CE2, $3CE2 ; tile5D5: 0x0E2, 0x0EE, 0x0E2, 0x0E2\n#_0FAEB0: dw $3CEE, $3CE2, $3CE2, $3CE2 ; tile5D6: 0x0EE, 0x0E2, 0x0E2, 0x0E2\n#_0FAEB8: dw $096B, $496B, $08AA, $08AA ; tile5D7: 0x16B, 0x16B, 0x0AA, 0x0AA\n#_0FAEC0: dw $3D0A, $3D30, $3D1A, $3D29 ; tile5D8: 0x10A, 0x130, 0x11A, 0x129\n#_0FAEC8: dw $7D30, $7D0A, $7D29, $7D1A ; tile5D9: 0x130, 0x10A, 0x129, 0x11A\n#_0FAED0: dw $151C, $0CED, $0CED, $08AA ; tile5DA: 0x11C, 0x0ED, 0x0ED, 0x0AA\n#_0FAED8: dw $08AA, $08AA, $08AA, $294B ; tile5DB: 0x0AA, 0x0AA, 0x0AA, 0x14B\n#_0FAEE0: dw $294B, $294C, $315B, $295C ; tile5DC: 0x14B, 0x14C, 0x15B, 0x15C\n#_0FAEE8: dw $294D, $294D, $295D, $295D ; tile5DD: 0x14D, 0x14D, 0x15D, 0x15D\n#_0FAEF0: dw $694D, $694D, $695D, $695D ; tile5DE: 0x14D, 0x14D, 0x15D, 0x15D\n#_0FAEF8: dw $694C, $694B, $695C, $715B ; tile5DF: 0x14C, 0x14B, 0x15C, 0x15B\n#_0FAF00: dw $48AA, $08AA, $694B, $08AA ; tile5E0: 0x0AA, 0x0AA, 0x14B, 0x0AA\n#_0FAF08: dw $08AA, $315B, $08AA, $3145 ; tile5E1: 0x0AA, 0x15B, 0x0AA, 0x145\n#_0FAF10: dw $315B, $296C, $3145, $08AA ; tile5E2: 0x15B, 0x16C, 0x145, 0x0AA\n#_0FAF18: dw $296D, $292C, $08AA, $08AA ; tile5E3: 0x16D, 0x12C, 0x0AA, 0x0AA\n#_0FAF20: dw $692C, $696D, $48AA, $48AA ; tile5E4: 0x12C, 0x16D, 0x0AA, 0x0AA\n#_0FAF28: dw $696C, $715B, $48AA, $7145 ; tile5E5: 0x16C, 0x15B, 0x0AA, 0x145\n#_0FAF30: dw $715B, $08AA, $7145, $08AA ; tile5E6: 0x15B, 0x0AA, 0x145, 0x0AA\n#_0FAF38: dw $150C, $0CED, $0CED, $0CED ; tile5E7: 0x10C, 0x0ED, 0x0ED, 0x0ED\n#_0FAF40: dw $08AA, $115A, $08AA, $08AA ; tile5E8: 0x0AA, 0x15A, 0x0AA, 0x0AA\n#_0FAF48: dw $115A, $08AC, $08AA, $08AA ; tile5E9: 0x15A, 0x0AC, 0x0AA, 0x0AA\n#_0FAF50: dw $08AC, $08AC, $08AA, $08AA ; tile5EA: 0x0AC, 0x0AC, 0x0AA, 0x0AA\n#_0FAF58: dw $08AC, $515A, $08AA, $08AA ; tile5EB: 0x0AC, 0x15A, 0x0AA, 0x0AA\n#_0FAF60: dw $515A, $08AA, $08AA, $08AA ; tile5EC: 0x15A, 0x0AA, 0x0AA, 0x0AA\n#_0FAF68: dw $28DF, $28DF, $2946, $2947 ; tile5ED: 0x0DF, 0x0DF, 0x146, 0x147\n#_0FAF70: dw $28DF, $28DF, $6947, $6946 ; tile5EE: 0x0DF, 0x0DF, 0x147, 0x146\n#_0FAF78: dw $2968, $2969, $2978, $2979 ; tile5EF: 0x168, 0x169, 0x178, 0x179\n#_0FAF80: dw $6969, $6968, $6979, $6978 ; tile5F0: 0x169, 0x168, 0x179, 0x178\n#_0FAF88: dw $0902, $0911, $0920, $0923 ; tile5F1: 0x102, 0x111, 0x120, 0x123\n#_0FAF90: dw $0911, $0911, $0923, $0923 ; tile5F2: 0x111, 0x111, 0x123, 0x123\n#_0FAF98: dw $0921, $0921, $0931, $0931 ; tile5F3: 0x121, 0x121, 0x131, 0x131\n#_0FAFA0: dw $0921, $4902, $0931, $4920 ; tile5F4: 0x121, 0x102, 0x131, 0x120\n#_0FAFA8: dw $086B, $1998, $087B, $086B ; tile5F5: 0x06B, 0x198, 0x07B, 0x06B\n#_0FAFB0: dw $0CFD, $4CFD, $0CFD, $4CFD ; tile5F6: 0x0FD, 0x0FD, 0x0FD, 0x0FD\n#_0FAFB8: dw $0860, $1016, $102E, $3000 ; tile5F7: 0x060, 0x016, 0x02E, 0x000\n#_0FAFC0: dw $286D, $286D, $285C, $685C ; tile5F8: 0x06D, 0x06D, 0x05C, 0x05C\n#_0FAFC8: dw $5D65, $5D12, $5D7E, $1D64 ; tile5F9: 0x165, 0x112, 0x17E, 0x164\n#_0FAFD0: dw $14BF, $14BC, $1D74, $5D74 ; tile5FA: 0x0BF, 0x0BC, 0x174, 0x174\n#_0FAFD8: dw $14BC, $14BC, $1D74, $5D74 ; tile5FB: 0x0BC, 0x0BC, 0x174, 0x174\n#_0FAFE0: dw $14BC, $14BC, $5D43, $5D01 ; tile5FC: 0x0BC, 0x0BC, 0x143, 0x101\n#_0FAFE8: dw $0D2E, $0D0E, $0D2E, $0D0E ; tile5FD: 0x12E, 0x10E, 0x12E, 0x10E\n#_0FAFF0: dw $1D42, $1D42, $1D04, $1D04 ; tile5FE: 0x142, 0x142, 0x104, 0x104\n#_0FAFF8: dw $5D7E, $3D64, $1D42, $3D42 ; tile5FF: 0x17E, 0x164, 0x142, 0x142\n#_0FB000: dw $3D44, $3D47, $3D42, $3D42 ; tile600: 0x144, 0x147, 0x142, 0x142\n#_0FB008: dw $3D3D, $3D3D, $3D1D, $3D1D ; tile601: 0x13D, 0x13D, 0x11D, 0x11D\n#_0FB010: dw $1D42, $3D42, $5D73, $3D52 ; tile602: 0x142, 0x142, 0x173, 0x152\n#_0FB018: dw $3D42, $3D42, $3D52, $3D41 ; tile603: 0x142, 0x142, 0x152, 0x141\n#_0FB020: dw $3D1D, $3D1D, $3D7C, $7D7C ; tile604: 0x11D, 0x11D, 0x17C, 0x17C\n#_0FB028: dw $1D42, $1D42, $1D52, $1D73 ; tile605: 0x142, 0x142, 0x152, 0x173\n#_0FB030: dw $5D7F, $3D61, $5D65, $5D75 ; tile606: 0x17F, 0x161, 0x165, 0x175\n#_0FB038: dw $3D61, $3D46, $1D71, $1D72 ; tile607: 0x161, 0x146, 0x171, 0x172\n#_0FB040: dw $3D7D, $7D7D, $3945, $7945 ; tile608: 0x17D, 0x17D, 0x145, 0x145\n#_0FB048: dw $1D71, $1D25, $1D31, $1D78 ; tile609: 0x171, 0x125, 0x131, 0x178\n#_0FB050: dw $1955, $5955, $1935, $5935 ; tile60A: 0x155, 0x155, 0x135, 0x135\n#_0FB058: dw $1D42, $1D42, $1D52, $5D2F ; tile60B: 0x142, 0x142, 0x152, 0x12F\n#_0FB060: dw $0D2E, $0D0E, $0D0E, $0D0E ; tile60C: 0x12E, 0x10E, 0x10E, 0x10E\n#_0FB068: dw $4D1F, $0D0F, $0D1F, $0D0F ; tile60D: 0x11F, 0x10F, 0x11F, 0x10F\n#_0FB070: dw $1D22, $5D22, $1D14, $5D14 ; tile60E: 0x122, 0x122, 0x114, 0x114\n#_0FB078: dw $0D1C, $0D0E, $0D1C, $0D0E ; tile60F: 0x11C, 0x10E, 0x11C, 0x10E\n#_0FB080: dw $1D14, $5D14, $1D14, $5D14 ; tile610: 0x114, 0x114, 0x114, 0x114\n#_0FB088: dw $7034, $5033, $7001, $7000 ; tile611: 0x034, 0x033, 0x001, 0x000\n#_0FB090: dw $484C, $484C, $5038, $087D ; tile612: 0x04C, 0x04C, 0x038, 0x07D\n#_0FB098: dw $1D24, $5D24, $1D32, $5D32 ; tile613: 0x124, 0x124, 0x132, 0x132\n#_0FB0A0: dw $0D1C, $0D0E, $0D1C, $4D1F ; tile614: 0x11C, 0x10E, 0x11C, 0x11F\n#_0FB0A8: dw $0D0F, $4D1F, $0D0F, $0D1F ; tile615: 0x10F, 0x11F, 0x10F, 0x11F\n#_0FB0B0: dw $1D12, $1D65, $5D64, $1D7E ; tile616: 0x112, 0x165, 0x164, 0x17E\n#_0FB0B8: dw $7D47, $3D44, $3D42, $3D42 ; tile617: 0x147, 0x144, 0x142, 0x142\n#_0FB0C0: dw $7D64, $1D7E, $3D42, $1D42 ; tile618: 0x164, 0x17E, 0x142, 0x142\n#_0FB0C8: dw $3D42, $3D42, $7D41, $7D52 ; tile619: 0x142, 0x142, 0x141, 0x152\n#_0FB0D0: dw $3D42, $1D42, $7D52, $1D73 ; tile61A: 0x142, 0x142, 0x152, 0x173\n#_0FB0D8: dw $7D46, $7D61, $5D72, $1D71 ; tile61B: 0x146, 0x161, 0x172, 0x171\n#_0FB0E0: dw $7D61, $1D7F, $1D75, $1D65 ; tile61C: 0x161, 0x17F, 0x175, 0x165\n#_0FB0E8: dw $5D25, $1D71, $5D78, $1D31 ; tile61D: 0x125, 0x171, 0x178, 0x131\n#_0FB0F0: dw $14AA, $1988, $1988, $5998 ; tile61E: 0x0AA, 0x188, 0x188, 0x198\n#_0FB0F8: dw $1998, $08AA, $08AA, $48B8 ; tile61F: 0x198, 0x0AA, 0x0AA, 0x0B8\n#_0FB100: dw $0D0E, $0D0E, $0D1F, $0D0E ; tile620: 0x10E, 0x10E, 0x11F, 0x10E\n#_0FB108: dw $487C, $087A, $1988, $487C ; tile621: 0x07C, 0x07A, 0x188, 0x07C\n#_0FB110: dw $085E, $0865, $086E, $0875 ; tile622: 0x05E, 0x065, 0x06E, 0x075\n#_0FB118: dw $08AA, $48AE, $08AA, $C8AE ; tile623: 0x0AA, 0x0AE, 0x0AA, 0x0AE\n#_0FB120: dw $0860, $085F, $0870, $086F ; tile624: 0x060, 0x05F, 0x070, 0x06F\n#_0FB128: dw $08AA, $08AA, $08AA, $2D4C ; tile625: 0x0AA, 0x0AA, 0x0AA, 0x14C\n#_0FB130: dw $08AA, $08AA, $2D4D, $6D4D ; tile626: 0x0AA, 0x0AA, 0x14D, 0x14D\n#_0FB138: dw $08AA, $08AA, $2D7C, $2D7D ; tile627: 0x0AA, 0x0AA, 0x17C, 0x17D\n#_0FB140: dw $08AA, $08AA, $2D7D, $2D7D ; tile628: 0x0AA, 0x0AA, 0x17D, 0x17D\n#_0FB148: dw $08AA, $08AA, $2D7D, $6D7C ; tile629: 0x0AA, 0x0AA, 0x17D, 0x17C\n#_0FB150: dw $08AA, $08AA, $6D4C, $08AA ; tile62A: 0x0AA, 0x0AA, 0x14C, 0x0AA\n#_0FB158: dw $08AA, $2D5C, $08AA, $2D6C ; tile62B: 0x0AA, 0x15C, 0x0AA, 0x16C\n#_0FB160: dw $2D5D, $2D5D, $2D6D, $2D6D ; tile62C: 0x15D, 0x15D, 0x16D, 0x16D\n#_0FB168: dw $2D4B, $2D6F, $2D5B, $2D7F ; tile62D: 0x14B, 0x16F, 0x15B, 0x17F\n#_0FB170: dw $2D6F, $2D6F, $2D2E, $6D2E ; tile62E: 0x16F, 0x16F, 0x12E, 0x12E\n#_0FB178: dw $6D6F, $6D4B, $6D7F, $6D5B ; tile62F: 0x16F, 0x14B, 0x17F, 0x15B\n#_0FB180: dw $6D5C, $08AA, $6D6C, $08AA ; tile630: 0x15C, 0x0AA, 0x16C, 0x0AA\n#_0FB188: dw $08AA, $2D61, $08AA, $0D71 ; tile631: 0x0AA, 0x161, 0x0AA, 0x171\n#_0FB190: dw $2D62, $6D62, $0D72, $4D72 ; tile632: 0x162, 0x162, 0x172, 0x172\n#_0FB198: dw $6D61, $08AA, $4D71, $08BC ; tile633: 0x161, 0x0AA, 0x171, 0x0BC\n#_0FB1A0: dw $08AA, $08AA, $08BC, $08BC ; tile634: 0x0AA, 0x0AA, 0x0BC, 0x0BC\n#_0FB1A8: dw $08AA, $2D61, $08BC, $0D71 ; tile635: 0x0AA, 0x161, 0x0BC, 0x171\n#_0FB1B0: dw $6D61, $08AA, $4D71, $08AA ; tile636: 0x161, 0x0AA, 0x171, 0x0AA\n#_0FB1B8: dw $0848, $0865, $0852, $0875 ; tile637: 0x048, 0x065, 0x052, 0x075\n#_0FB1C0: dw $08AA, $0D06, $08AA, $0D16 ; tile638: 0x0AA, 0x106, 0x0AA, 0x116\n#_0FB1C8: dw $0D07, $4D07, $0D17, $4D17 ; tile639: 0x107, 0x107, 0x117, 0x117\n#_0FB1D0: dw $4D06, $88BC, $4D16, $08AA ; tile63A: 0x106, 0x0BC, 0x116, 0x0AA\n#_0FB1D8: dw $88BC, $88BC, $08AA, $08AA ; tile63B: 0x0BC, 0x0BC, 0x0AA, 0x0AA\n#_0FB1E0: dw $88BC, $0D06, $08AA, $0D16 ; tile63C: 0x0BC, 0x106, 0x0AA, 0x116\n#_0FB1E8: dw $4D06, $08AA, $4D16, $08AA ; tile63D: 0x106, 0x0AA, 0x116, 0x0AA\n#_0FB1F0: dw $0862, $0873, $104A, $084F ; tile63E: 0x062, 0x073, 0x04A, 0x04F\n#_0FB1F8: dw $08AA, $48AE, $08AA, $C8AF ; tile63F: 0x0AA, 0x0AE, 0x0AA, 0x0AF\n#_0FB200: dw $08BB, $08AB, $08AB, $08BA ; tile640: 0x0BB, 0x0AB, 0x0AB, 0x0BA\n#_0FB208: dw $88AE, $08AA, $88AE, $08AA ; tile641: 0x0AE, 0x0AA, 0x0AE, 0x0AA\n#_0FB210: dw $08AE, $08AA, $88AF, $08AA ; tile642: 0x0AE, 0x0AA, 0x0AF, 0x0AA\n#_0FB218: dw $08AA, $08AA, $08AA, $380E ; tile643: 0x0AA, 0x0AA, 0x0AA, 0x00E\n#_0FB220: dw $383C, $383D, $3800, $3801 ; tile644: 0x03C, 0x03D, 0x000, 0x001\n#_0FB228: dw $383E, $783E, $3802, $7802 ; tile645: 0x03E, 0x03E, 0x002, 0x002\n#_0FB230: dw $783D, $783C, $7801, $7800 ; tile646: 0x03D, 0x03C, 0x001, 0x000\n#_0FB238: dw $08AA, $08AA, $780E, $08AA ; tile647: 0x0AA, 0x0AA, 0x00E, 0x0AA\n#_0FB240: dw $08AA, $380F, $08AA, $381F ; tile648: 0x0AA, 0x00F, 0x0AA, 0x01F\n#_0FB248: dw $3810, $3811, $3820, $3821 ; tile649: 0x010, 0x011, 0x020, 0x021\n#_0FB250: dw $3812, $7812, $3822, $7822 ; tile64A: 0x012, 0x012, 0x022, 0x022\n#_0FB258: dw $7811, $7810, $7821, $7820 ; tile64B: 0x011, 0x010, 0x021, 0x020\n#_0FB260: dw $780F, $08AA, $781F, $08AA ; tile64C: 0x00F, 0x0AA, 0x01F, 0x0AA\n#_0FB268: dw $08AA, $382F, $08AA, $383F ; tile64D: 0x0AA, 0x02F, 0x0AA, 0x03F\n#_0FB270: dw $3830, $3831, $3803, $3804 ; tile64E: 0x030, 0x031, 0x003, 0x004\n#_0FB278: dw $3832, $7832, $3805, $7805 ; tile64F: 0x032, 0x032, 0x005, 0x005\n#_0FB280: dw $7831, $7830, $7804, $7803 ; tile650: 0x031, 0x030, 0x004, 0x003\n#_0FB288: dw $782F, $08AA, $783F, $08AA ; tile651: 0x02F, 0x0AA, 0x03F, 0x0AA\n#_0FB290: dw $7815, $7814, $7802, $7801 ; tile652: 0x015, 0x014, 0x002, 0x001\n#_0FB298: dw $7813, $3813, $7800, $3800 ; tile653: 0x013, 0x013, 0x000, 0x000\n#_0FB2A0: dw $3814, $3815, $3801, $3802 ; tile654: 0x014, 0x015, 0x001, 0x002\n#_0FB2A8: dw $7813, $780A, $7800, $5807 ; tile655: 0x013, 0x00A, 0x000, 0x007\n#_0FB2B0: dw $7809, $7808, $5019, $5018 ; tile656: 0x009, 0x008, 0x019, 0x018\n#_0FB2B8: dw $7810, $3810, $7820, $3820 ; tile657: 0x010, 0x010, 0x020, 0x020\n#_0FB2C0: dw $7810, $7817, $7820, $781F ; tile658: 0x010, 0x017, 0x020, 0x01F\n#_0FB2C8: dw $48AF, $48BE, $4856, $4868 ; tile659: 0x0AF, 0x0BE, 0x056, 0x068\n#_0FB2D0: dw $08BE, $48BF, $0880, $0881 ; tile65A: 0x0BE, 0x0BF, 0x080, 0x081\n#_0FB2D8: dw $4866, $4864, $4981, $4991 ; tile65B: 0x066, 0x064, 0x181, 0x191\n#_0FB2E0: dw $7830, $3830, $7803, $3803 ; tile65C: 0x030, 0x030, 0x003, 0x003\n#_0FB2E8: dw $3809, $380A, $1019, $1807 ; tile65D: 0x009, 0x00A, 0x019, 0x007\n#_0FB2F0: dw $3813, $3814, $3800, $3801 ; tile65E: 0x013, 0x014, 0x000, 0x001\n#_0FB2F8: dw $3815, $7815, $3802, $7802 ; tile65F: 0x015, 0x015, 0x002, 0x002\n#_0FB300: dw $7814, $7813, $7801, $7800 ; tile660: 0x014, 0x013, 0x001, 0x000\n#_0FB308: dw $780A, $7809, $5807, $5019 ; tile661: 0x00A, 0x009, 0x007, 0x019\n#_0FB310: dw $4CAA, $4CAA, $4CAA, $4CAA ; tile662: 0x0AA, 0x0AA, 0x0AA, 0x0AA\n#_0FB318: dw $1029, $3817, $100D, $381F ; tile663: 0x029, 0x017, 0x00D, 0x01F\n#_0FB320: dw $7817, $5029, $781F, $500D ; tile664: 0x017, 0x029, 0x01F, 0x00D\n#_0FB328: dw $3808, $3809, $1018, $1019 ; tile665: 0x008, 0x009, 0x018, 0x019\n#_0FB330: dw $380A, $780A, $101A, $501A ; tile666: 0x00A, 0x00A, 0x01A, 0x01A\n#_0FB338: dw $4865, $4864, $5181, $5191 ; tile667: 0x065, 0x064, 0x181, 0x191\n#_0FB340: dw $0CAF, $0CAA, $0CBF, $0CAF ; tile668: 0x0AF, 0x0AA, 0x0BF, 0x0AF\n#_0FB348: dw $0C46, $0CBF, $0854, $0C56 ; tile669: 0x046, 0x0BF, 0x054, 0x056\n#_0FB350: dw $0CAA, $4C6B, $4C6B, $4C7B ; tile66A: 0x0AA, 0x06B, 0x06B, 0x07B\n#_0FB358: dw $08AA, $08AA, $09DD, $09DD ; tile66B: 0x0AA, 0x0AA, 0x1DD, 0x1DD\n#_0FB360: dw $1998, $08AA, $08AA, $08AA ; tile66C: 0x198, 0x0AA, 0x0AA, 0x0AA\n#_0FB368: dw $28DD, $28DD, $28E2, $28C6 ; tile66D: 0x0DD, 0x0DD, 0x0E2, 0x0C6\n#_0FB370: dw $28D3, $28E2, $28D3, $28E2 ; tile66E: 0x0D3, 0x0E2, 0x0D3, 0x0E2\n#_0FB378: dw $28E2, $28E2, $28E2, $28C6 ; tile66F: 0x0E2, 0x0E2, 0x0E2, 0x0C6\n#_0FB380: dw $90A1, $884F, $0854, $90A1 ; tile670: 0x0A1, 0x04F, 0x054, 0x0A1\n#_0FB388: dw $2905, $2940, $2915, $2950 ; tile671: 0x105, 0x140, 0x115, 0x150\n#_0FB390: dw $2955, $6905, $2965, $6915 ; tile672: 0x155, 0x105, 0x165, 0x115\n#_0FB398: dw $2974, $2975, $28C4, $28C5 ; tile673: 0x174, 0x175, 0x0C4, 0x0C5\n#_0FB3A0: dw $6975, $6974, $68C5, $68C4 ; tile674: 0x175, 0x174, 0x0C5, 0x0C4\n#_0FB3A8: dw $28DD, $28DD, $28C6, $28E2 ; tile675: 0x0DD, 0x0DD, 0x0C6, 0x0E2\n#_0FB3B0: dw $28E2, $68D3, $28E2, $68D3 ; tile676: 0x0E2, 0x0D3, 0x0E2, 0x0D3\n#_0FB3B8: dw $28E2, $28E2, $28C6, $28E2 ; tile677: 0x0E2, 0x0E2, 0x0C6, 0x0E2\n#_0FB3C0: dw $08AA, $154C, $154C, $155C ; tile678: 0x0AA, 0x14C, 0x14C, 0x15C\n#_0FB3C8: dw $154D, $554D, $08BA, $48BA ; tile679: 0x14D, 0x14D, 0x0BA, 0x0BA\n#_0FB3D0: dw $554C, $08AA, $555C, $554C ; tile67A: 0x14C, 0x0AA, 0x15C, 0x14C\n#_0FB3D8: dw $2D7F, $2D6F, $2D05, $2D55 ; tile67B: 0x17F, 0x16F, 0x105, 0x155\n#_0FB3E0: dw $6D6F, $6D7F, $6D55, $6D05 ; tile67C: 0x16F, 0x17F, 0x155, 0x105\n#_0FB3E8: dw $155C, $88BA, $88BA, $155B ; tile67D: 0x15C, 0x0BA, 0x0BA, 0x15B\n#_0FB3F0: dw $157B, $557B, $152F, $552F ; tile67E: 0x17B, 0x17B, 0x12F, 0x12F\n#_0FB3F8: dw $C8BA, $555C, $555B, $C8BA ; tile67F: 0x0BA, 0x15C, 0x15B, 0x0BA\n#_0FB400: dw $2D15, $2D65, $0D25, $0D75 ; tile680: 0x115, 0x165, 0x125, 0x175\n#_0FB408: dw $6D65, $6D15, $4D75, $4D25 ; tile681: 0x165, 0x115, 0x175, 0x125\n#_0FB410: dw $155D, $88BA, $155D, $88BA ; tile682: 0x15D, 0x0BA, 0x15D, 0x0BA\n#_0FB418: dw $157C, $153A, $957C, $953A ; tile683: 0x17C, 0x13A, 0x17C, 0x13A\n#_0FB420: dw $553A, $557C, $D53A, $D57C ; tile684: 0x13A, 0x17C, 0x13A, 0x17C\n#_0FB428: dw $C8BA, $555D, $C8BA, $555D ; tile685: 0x0BA, 0x15D, 0x0BA, 0x15D\n#_0FB430: dw $0D16, $0D17, $0D26, $0D27 ; tile686: 0x116, 0x117, 0x126, 0x127\n#_0FB438: dw $4D17, $4D16, $4D27, $4D26 ; tile687: 0x117, 0x116, 0x127, 0x126\n#_0FB440: dw $156B, $156C, $08AA, $156B ; tile688: 0x16B, 0x16C, 0x0AA, 0x16B\n#_0FB448: dw $08BA, $955B, $156C, $08BA ; tile689: 0x0BA, 0x15B, 0x16C, 0x0BA\n#_0FB450: dw $952E, $1DB4, $955B, $952E ; tile68A: 0x12E, 0x1B4, 0x15B, 0x12E\n#_0FB458: dw $952F, $D52F, $957B, $D57B ; tile68B: 0x12F, 0x12F, 0x17B, 0x17B\n#_0FB460: dw $D55B, $48BA, $48BA, $556C ; tile68C: 0x15B, 0x0BA, 0x0BA, 0x16C\n#_0FB468: dw $556C, $556B, $556B, $08AA ; tile68D: 0x16C, 0x16B, 0x16B, 0x0AA\n#_0FB470: dw $88BA, $88BA, $156D, $556D ; tile68E: 0x0BA, 0x0BA, 0x16D, 0x16D\n#_0FB478: dw $0D12, $4D12, $0D04, $4D04 ; tile68F: 0x112, 0x112, 0x104, 0x104\n#_0FB480: dw $08AA, $08AA, $0D1E, $0D0C ; tile690: 0x0AA, 0x0AA, 0x11E, 0x10C\n#_0FB488: dw $08AA, $08AA, $0D1C, $4D0C ; tile691: 0x0AA, 0x0AA, 0x11C, 0x10C\n#_0FB490: dw $08AA, $08AA, $0D0F, $8D0F ; tile692: 0x0AA, 0x0AA, 0x10F, 0x10F\n#_0FB498: dw $08AA, $08AA, $0D0C, $4D1C ; tile693: 0x0AA, 0x0AA, 0x10C, 0x11C\n#_0FB4A0: dw $08AA, $08AA, $4D0C, $4D1C ; tile694: 0x0AA, 0x0AA, 0x10C, 0x11C\n#_0FB4A8: dw $0D14, $4D14, $0D14, $4D14 ; tile695: 0x114, 0x114, 0x114, 0x114\n#_0FB4B0: dw $0D1E, $0D1C, $0D1E, $0D0C ; tile696: 0x11E, 0x11C, 0x11E, 0x10C\n#_0FB4B8: dw $0D0D, $0D1D, $0D1D, $0D0D ; tile697: 0x10D, 0x11D, 0x11D, 0x10D\n#_0FB4C0: dw $0D2C, $4D2C, $8D2C, $CD2C ; tile698: 0x12C, 0x12C, 0x12C, 0x12C\n#_0FB4C8: dw $4D1D, $4D0D, $4D0D, $4D1D ; tile699: 0x11D, 0x10D, 0x10D, 0x11D\n#_0FB4D0: dw $4D1C, $4D0C, $4D0C, $4D1C ; tile69A: 0x11C, 0x10C, 0x10C, 0x11C\n#_0FB4D8: dw $0D1E, $0D1D, $0D1E, $0D0D ; tile69B: 0x11E, 0x11D, 0x11E, 0x10D\n#_0FB4E0: dw $0D0D, $0D0D, $0D1D, $0D0D ; tile69C: 0x10D, 0x10D, 0x11D, 0x10D\n#_0FB4E8: dw $0D0F, $8D0F, $CD0F, $4D0F ; tile69D: 0x10F, 0x10F, 0x10F, 0x10F\n#_0FB4F0: dw $4D0D, $4D0D, $4D0D, $4D1D ; tile69E: 0x10D, 0x10D, 0x10D, 0x11D\n#_0FB4F8: dw $4D1D, $4D0C, $4D0D, $4D1C ; tile69F: 0x11D, 0x10C, 0x10D, 0x11C\n#_0FB500: dw $1DE4, $1DE4, $1DE4, $1DE4 ; tile6A0: 0x1E4, 0x1E4, 0x1E4, 0x1E4\n#_0FB508: dw $1DE1, $5DE1, $1DE2, $5DE2 ; tile6A1: 0x1E1, 0x1E1, 0x1E2, 0x1E2\n#_0FB510: dw $5DDA, $1DFE, $DDDA, $1DFE ; tile6A2: 0x1DA, 0x1FE, 0x1DA, 0x1FE\n#_0FB518: dw $0D14, $4D14, $0D24, $4D24 ; tile6A3: 0x114, 0x114, 0x124, 0x124\n#_0FB520: dw $0D03, $4D03, $0D13, $4D13 ; tile6A4: 0x103, 0x103, 0x113, 0x113\n#_0FB528: dw $0D1E, $0D1C, $08AA, $08AA ; tile6A5: 0x11E, 0x11C, 0x0AA, 0x0AA\n#_0FB530: dw $0D0C, $0D1C, $08AA, $08AA ; tile6A6: 0x10C, 0x11C, 0x0AA, 0x0AA\n#_0FB538: dw $CD0F, $4D0F, $08AA, $08AA ; tile6A7: 0x10F, 0x10F, 0x0AA, 0x0AA\n#_0FB540: dw $4D1C, $4D0C, $08AA, $08AA ; tile6A8: 0x11C, 0x10C, 0x0AA, 0x0AA\n#_0FB548: dw $08A4, $C879, $08B4, $08BB ; tile6A9: 0x0A4, 0x079, 0x0B4, 0x0BB\n#_0FB550: dw $1080, $1081, $0890, $0891 ; tile6AA: 0x080, 0x081, 0x090, 0x091\n#_0FB558: dw $1080, $1081, $0868, $0855 ; tile6AB: 0x080, 0x081, 0x068, 0x055\n#_0FB560: dw $1046, $10BF, $1054, $1056 ; tile6AC: 0x046, 0x0BF, 0x054, 0x056\n#_0FB568: dw $10BE, $50BE, $10BF, $10BF ; tile6AD: 0x0BE, 0x0BE, 0x0BF, 0x0BF\n#_0FB570: dw $08BA, $C8BA, $C8BA, $08BA ; tile6AE: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FB578: dw $3565, $7565, $3566, $7566 ; tile6AF: 0x165, 0x165, 0x166, 0x166\n#_0FB580: dw $0860, $0861, $0870, $1523 ; tile6B0: 0x060, 0x061, 0x070, 0x123\n#_0FB588: dw $3523, $3565, $3533, $3566 ; tile6B1: 0x123, 0x165, 0x133, 0x166\n#_0FB590: dw $7565, $7523, $7566, $7533 ; tile6B2: 0x165, 0x123, 0x166, 0x133\n#_0FB598: dw $0860, $0861, $5523, $0871 ; tile6B3: 0x060, 0x061, 0x123, 0x071\n#_0FB5A0: dw $1062, $10A1, $10A0, $485C ; tile6B4: 0x062, 0x0A1, 0x0A0, 0x05C\n#_0FB5A8: dw $0840, $1533, $0850, $0851 ; tile6B5: 0x040, 0x133, 0x050, 0x051\n#_0FB5B0: dw $5533, $0841, $0850, $0851 ; tile6B6: 0x133, 0x041, 0x050, 0x051\n#_0FB5B8: dw $10BE, $50BE, $1080, $1081 ; tile6B7: 0x0BE, 0x0BE, 0x080, 0x081\n#_0FB5C0: dw $4854, $484D, $484D, $0859 ; tile6B8: 0x054, 0x04D, 0x04D, 0x059\n#_0FB5C8: dw $084C, $484C, $155A, $155B ; tile6B9: 0x04C, 0x04C, 0x15A, 0x15B\n#_0FB5D0: dw $084C, $484C, $555B, $555A ; tile6BA: 0x04C, 0x04C, 0x15B, 0x15A\n#_0FB5D8: dw $884E, $154C, $084E, $155C ; tile6BB: 0x04E, 0x14C, 0x04E, 0x15C\n#_0FB5E0: dw $3D4D, $354E, $3D5D, $355E ; tile6BC: 0x14D, 0x14E, 0x15D, 0x15E\n#_0FB5E8: dw $754E, $7D4D, $755E, $7D5D ; tile6BD: 0x14E, 0x14D, 0x15E, 0x15D\n#_0FB5F0: dw $554C, $884F, $555C, $084F ; tile6BE: 0x14C, 0x04F, 0x15C, 0x04F\n#_0FB5F8: dw $1548, $1549, $156F, $1558 ; tile6BF: 0x148, 0x149, 0x16F, 0x158\n#_0FB600: dw $3D4A, $354E, $3D59, $355E ; tile6C0: 0x14A, 0x14E, 0x159, 0x15E\n#_0FB608: dw $754E, $7D4A, $755E, $7D59 ; tile6C1: 0x14E, 0x14A, 0x15E, 0x159\n#_0FB610: dw $5549, $5548, $5558, $556F ; tile6C2: 0x149, 0x148, 0x158, 0x16F\n#_0FB618: dw $884E, $1579, $084E, $1578 ; tile6C3: 0x04E, 0x179, 0x04E, 0x178\n#_0FB620: dw $3D45, $3D43, $3D55, $3D77 ; tile6C4: 0x145, 0x143, 0x155, 0x177\n#_0FB628: dw $7D43, $7D45, $7D77, $7D55 ; tile6C5: 0x143, 0x145, 0x177, 0x155\n#_0FB630: dw $5579, $884F, $5578, $084F ; tile6C6: 0x179, 0x04F, 0x178, 0x04F\n#_0FB638: dw $157F, $1568, $1D10, $1D34 ; tile6C7: 0x17F, 0x168, 0x110, 0x134\n#_0FB640: dw $3D69, $3D57, $3D35, $3D67 ; tile6C8: 0x169, 0x157, 0x135, 0x167\n#_0FB648: dw $7D57, $7D69, $7D67, $7D35 ; tile6C9: 0x157, 0x169, 0x167, 0x135\n#_0FB650: dw $5568, $557F, $5D34, $5D10 ; tile6CA: 0x168, 0x17F, 0x134, 0x110\n#_0FB658: dw $884E, $156B, $084E, $157B ; tile6CB: 0x04E, 0x16B, 0x04E, 0x17B\n#_0FB660: dw $1D21, $1CFE, $1547, $156E ; tile6CC: 0x121, 0x0FE, 0x147, 0x16E\n#_0FB668: dw $5CFE, $5D21, $556E, $5547 ; tile6CD: 0x0FE, 0x121, 0x16E, 0x147\n#_0FB670: dw $556B, $884F, $557B, $084F ; tile6CE: 0x16B, 0x04F, 0x17B, 0x04F\n#_0FB678: dw $1D20, $1575, $1500, $1501 ; tile6CF: 0x120, 0x175, 0x100, 0x101\n#_0FB680: dw $3D76, $3D77, $1D46, $1CFE ; tile6D0: 0x176, 0x177, 0x146, 0x0FE\n#_0FB688: dw $7D77, $7D76, $5CFE, $5D46 ; tile6D1: 0x177, 0x176, 0x0FE, 0x146\n#_0FB690: dw $5575, $5D20, $5501, $5500 ; tile6D2: 0x175, 0x120, 0x101, 0x100\n#_0FB698: dw $1D21, $1CFE, $1D6A, $1D6C ; tile6D3: 0x121, 0x0FE, 0x16A, 0x16C\n#_0FB6A0: dw $5CFE, $5D21, $5D6C, $5D6A ; tile6D4: 0x0FE, 0x121, 0x16C, 0x16A\n#_0FB6A8: dw $085B, $0879, $4843, $485D ; tile6D5: 0x05B, 0x079, 0x043, 0x05D\n#_0FB6B0: dw $1544, $157E, $1554, $150B ; tile6D6: 0x144, 0x17E, 0x154, 0x10B\n#_0FB6B8: dw $557E, $5544, $550B, $5554 ; tile6D7: 0x17E, 0x144, 0x10B, 0x154\n#_0FB6C0: dw $08BA, $1511, $085C, $485C ; tile6D8: 0x0BA, 0x111, 0x05C, 0x05C\n#_0FB6C8: dw $1547, $156E, $1544, $157E ; tile6D9: 0x147, 0x16E, 0x144, 0x17E\n#_0FB6D0: dw $556E, $5547, $557E, $5544 ; tile6DA: 0x16E, 0x147, 0x17E, 0x144\n#_0FB6D8: dw $5511, $48BA, $085C, $485C ; tile6DB: 0x111, 0x0BA, 0x05C, 0x05C\n#_0FB6E0: dw $157A, $157C, $085C, $1D1A ; tile6DC: 0x17A, 0x17C, 0x05C, 0x11A\n#_0FB6E8: dw $557C, $557A, $5D1A, $485C ; tile6DD: 0x17C, 0x17A, 0x11A, 0x05C\n#_0FB6F0: dw $1554, $150B, $1554, $150B ; tile6DE: 0x154, 0x10B, 0x154, 0x10B\n#_0FB6F8: dw $550B, $5554, $550B, $5554 ; tile6DF: 0x10B, 0x154, 0x10B, 0x154\n#_0FB700: dw $50A1, $5062, $085C, $50A0 ; tile6E0: 0x0A1, 0x062, 0x05C, 0x0A0\n#_0FB708: dw $1554, $150B, $1544, $1D7D ; tile6E1: 0x154, 0x10B, 0x144, 0x17D\n#_0FB710: dw $550B, $5554, $5D7D, $5544 ; tile6E2: 0x10B, 0x154, 0x17D, 0x144\n#_0FB718: dw $08AB, $48BA, $08BA, $CC9D ; tile6E3: 0x0AB, 0x0BA, 0x0BA, 0x09D\n#_0FB720: dw $08BA, $08BA, $8C8F, $8C8F ; tile6E4: 0x0BA, 0x0BA, 0x08F, 0x08F\n#_0FB728: dw $48BA, $08BA, $8C9D, $08BA ; tile6E5: 0x0BA, 0x0BA, 0x09D, 0x0BA\n#_0FB730: dw $08BA, $4C8E, $08BA, $4C8E ; tile6E6: 0x0BA, 0x08E, 0x0BA, 0x08E\n#_0FB738: dw $190E, $190F, $191E, $191F ; tile6E7: 0x10E, 0x10F, 0x11E, 0x11F\n#_0FB740: dw $0C8E, $08BA, $0C8E, $08BA ; tile6E8: 0x08E, 0x0BA, 0x08E, 0x0BA\n#_0FB748: dw $0862, $0CA1, $0CA0, $191F ; tile6E9: 0x062, 0x0A1, 0x0A0, 0x11F\n#_0FB750: dw $4CA1, $4862, $191E, $4CA0 ; tile6EA: 0x0A1, 0x062, 0x11E, 0x0A0\n#_0FB758: dw $191F, $1D40, $191E, $1D50 ; tile6EB: 0x11F, 0x140, 0x11E, 0x150\n#_0FB760: dw $1D64, $150B, $1D74, $1D7D ; tile6EC: 0x164, 0x10B, 0x174, 0x17D\n#_0FB768: dw $550B, $5D64, $5D7D, $5D74 ; tile6ED: 0x10B, 0x164, 0x17D, 0x174\n#_0FB770: dw $5D40, $190F, $5D50, $191F ; tile6EE: 0x140, 0x10F, 0x150, 0x11F\n#_0FB778: dw $0CAA, $0CAA, $0C8C, $0C9E ; tile6EF: 0x0AA, 0x0AA, 0x08C, 0x09E\n#_0FB780: dw $0C8C, $0C9E, $0C9F, $08BA ; tile6F0: 0x08C, 0x09E, 0x09F, 0x0BA\n#_0FB788: dw $190E, $190F, $4CAF, $4CBE ; tile6F1: 0x10E, 0x10F, 0x0AF, 0x0BE\n#_0FB790: dw $190E, $190F, $0CBE, $4CBE ; tile6F2: 0x10E, 0x10F, 0x0BE, 0x0BE\n#_0FB798: dw $190E, $1D60, $0CBE, $1D50 ; tile6F3: 0x10E, 0x160, 0x0BE, 0x150\n#_0FB7A0: dw $1D61, $152B, $1D61, $152B ; tile6F4: 0x161, 0x12B, 0x161, 0x12B\n#_0FB7A8: dw $152B, $5D61, $152B, $5D61 ; tile6F5: 0x12B, 0x161, 0x12B, 0x161\n#_0FB7B0: dw $5D60, $190F, $5D50, $4CBE ; tile6F6: 0x160, 0x10F, 0x150, 0x0BE\n#_0FB7B8: dw $190E, $190F, $0CBE, $0CAF ; tile6F7: 0x10E, 0x10F, 0x0BE, 0x0AF\n#_0FB7C0: dw $0CAA, $0C8C, $0C8C, $0C9C ; tile6F8: 0x0AA, 0x08C, 0x08C, 0x09C\n#_0FB7C8: dw $0C8F, $0C8F, $08BA, $08BA ; tile6F9: 0x08F, 0x08F, 0x0BA, 0x0BA\n#_0FB7D0: dw $0C9C, $08BA, $08BA, $08BB ; tile6FA: 0x09C, 0x0BA, 0x0BA, 0x0BB\n#_0FB7D8: dw $1D40, $5D41, $1D50, $1D51 ; tile6FB: 0x140, 0x141, 0x150, 0x151\n#_0FB7E0: dw $1D41, $5D41, $5D52, $1D52 ; tile6FC: 0x141, 0x141, 0x152, 0x152\n#_0FB7E8: dw $1D41, $1D42, $5D52, $5D52 ; tile6FD: 0x141, 0x142, 0x152, 0x152\n#_0FB7F0: dw $1D61, $152B, $1D53, $152B ; tile6FE: 0x161, 0x12B, 0x153, 0x12B\n#_0FB7F8: dw $152B, $5D61, $152B, $5D53 ; tile6FF: 0x12B, 0x161, 0x12B, 0x153\n#_0FB800: dw $5D42, $5D41, $1D52, $1D52 ; tile700: 0x142, 0x141, 0x152, 0x152\n#_0FB808: dw $1D41, $5D40, $5D51, $5D50 ; tile701: 0x141, 0x140, 0x151, 0x150\n#_0FB810: dw $1D60, $1D61, $1D50, $1D61 ; tile702: 0x160, 0x161, 0x150, 0x161\n#_0FB818: dw $152B, $152B, $152B, $152B ; tile703: 0x12B, 0x12B, 0x12B, 0x12B\n#_0FB820: dw $5D61, $5D60, $5D61, $5D50 ; tile704: 0x161, 0x160, 0x161, 0x150\n#_0FB828: dw $0C9D, $08AB, $48BA, $48BA ; tile705: 0x09D, 0x0AB, 0x0BA, 0x0BA\n#_0FB830: dw $152A, $552A, $952A, $D52A ; tile706: 0x12A, 0x12A, 0x12A, 0x12A\n#_0FB838: dw $08BA, $4C9C, $08BA, $08BA ; tile707: 0x0BA, 0x09C, 0x0BA, 0x0BA\n#_0FB840: dw $4C8C, $0CAA, $4C9C, $4C8C ; tile708: 0x08C, 0x0AA, 0x09C, 0x08C\n#_0FB848: dw $8C8C, $8C9E, $0CAA, $0CAA ; tile709: 0x08C, 0x09E, 0x0AA, 0x0AA\n#_0FB850: dw $152A, $0D24, $952A, $0CE3 ; tile70A: 0x12A, 0x124, 0x12A, 0x0E3\n#_0FB858: dw $4D24, $552A, $4CE3, $D52A ; tile70B: 0x124, 0x12A, 0x0E3, 0x12A\n#_0FB860: dw $152A, $8CE3, $952A, $D52A ; tile70C: 0x12A, 0x0E3, 0x12A, 0x12A\n#_0FB868: dw $CCE3, $552A, $952A, $D52A ; tile70D: 0x0E3, 0x12A, 0x12A, 0x12A\n#_0FB870: dw $1D60, $1D71, $1D70, $5D72 ; tile70E: 0x160, 0x171, 0x170, 0x172\n#_0FB878: dw $1D62, $5D62, $1D72, $5D72 ; tile70F: 0x162, 0x162, 0x172, 0x172\n#_0FB880: dw $1D62, $1D63, $1D72, $1D73 ; tile710: 0x162, 0x163, 0x172, 0x173\n#_0FB888: dw $151B, $151B, $151B, $151B ; tile711: 0x11B, 0x11B, 0x11B, 0x11B\n#_0FB890: dw $5D63, $5D62, $5D73, $5D72 ; tile712: 0x163, 0x162, 0x173, 0x172\n#_0FB898: dw $5D71, $5D60, $1D72, $5D70 ; tile713: 0x171, 0x160, 0x172, 0x170\n#_0FB8A0: dw $48BA, $4C9D, $48BA, $48BA ; tile714: 0x0BA, 0x09D, 0x0BA, 0x0BA\n#_0FB8A8: dw $1D31, $1D32, $191E, $191F ; tile715: 0x131, 0x132, 0x11E, 0x11F\n#_0FB8B0: dw $5D32, $1D32, $191E, $191F ; tile716: 0x132, 0x132, 0x11E, 0x11F\n#_0FB8B8: dw $5D32, $1D30, $191E, $191F ; tile717: 0x132, 0x130, 0x11E, 0x11F\n#_0FB8C0: dw $151B, $151B, $191E, $191F ; tile718: 0x11B, 0x11B, 0x11E, 0x11F\n#_0FB8C8: dw $5D30, $1D32, $191E, $191F ; tile719: 0x130, 0x132, 0x11E, 0x11F\n#_0FB8D0: dw $5D32, $5D31, $191E, $191F ; tile71A: 0x132, 0x131, 0x11E, 0x11F\n#_0FB8D8: dw $10BE, $5046, $5081, $4854 ; tile71B: 0x0BE, 0x046, 0x081, 0x054\n#_0FB8E0: dw $114F, $514F, $115F, $515F ; tile71C: 0x14F, 0x14F, 0x15F, 0x15F\n#_0FB8E8: dw $116D, $516D, $191E, $191F ; tile71D: 0x16D, 0x16D, 0x11E, 0x11F\n#_0FB8F0: dw $C84F, $C8BA, $484F, $D0B5 ; tile71E: 0x04F, 0x0BA, 0x04F, 0x0B5\n#_0FB8F8: dw $C84F, $50A4, $484F, $50B4 ; tile71F: 0x04F, 0x0A4, 0x04F, 0x0B4\n#_0FB900: dw $08BA, $C8BA, $D0A8, $08BA ; tile720: 0x0BA, 0x0BA, 0x0A8, 0x0BA\n#_0FB908: dw $0C8C, $0C8F, $0C9F, $08BA ; tile721: 0x08C, 0x08F, 0x09F, 0x0BA\n#_0FB910: dw $0C8F, $0C8F, $08BA, $4879 ; tile722: 0x08F, 0x08F, 0x0BA, 0x079\n#_0FB918: dw $0C83, $190F, $0C93, $191F ; tile723: 0x083, 0x10F, 0x093, 0x11F\n#_0FB920: dw $2840, $2841, $2850, $2851 ; tile724: 0x040, 0x041, 0x050, 0x051\n#_0FB928: dw $0C9F, $08BA, $08BA, $08BB ; tile725: 0x09F, 0x0BA, 0x0BA, 0x0BB\n#_0FB930: dw $4879, $0898, $085D, $0878 ; tile726: 0x079, 0x098, 0x05D, 0x078\n#_0FB938: dw $0CA3, $190F, $0CB3, $191F ; tile727: 0x0A3, 0x10F, 0x0B3, 0x11F\n#_0FB940: dw $0842, $0C82, $0852, $0C92 ; tile728: 0x042, 0x082, 0x052, 0x092\n#_0FB948: dw $0CA2, $190F, $0CB2, $191F ; tile729: 0x0A2, 0x10F, 0x0B2, 0x11F\n#_0FB950: dw $0D83, $4D83, $0D93, $4D93 ; tile72A: 0x183, 0x183, 0x193, 0x193\n#_0FB958: dw $1D2F, $1D15, $191E, $1D25 ; tile72B: 0x12F, 0x115, 0x11E, 0x125\n#_0FB960: dw $5D15, $190F, $5D25, $9D2F ; tile72C: 0x115, 0x10F, 0x125, 0x12F\n#_0FB968: dw $1D04, $1D05, $191E, $1D14 ; tile72D: 0x104, 0x105, 0x11E, 0x114\n#_0FB970: dw $5D05, $5D04, $5D14, $191F ; tile72E: 0x105, 0x104, 0x114, 0x11F\n#_0FB978: dw $E8BA, $28BA, $A8BA, $E8BA ; tile72F: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FB980: dw $10AF, $10BA, $10BF, $10AF ; tile730: 0x0AF, 0x0BA, 0x0BF, 0x0AF\n#_0FB988: dw $0C46, $4CBE, $0844, $0C81 ; tile731: 0x046, 0x0BE, 0x044, 0x081\n#_0FB990: dw $0CBE, $4C46, $0C80, $4854 ; tile732: 0x0BE, 0x046, 0x080, 0x054\n#_0FB998: dw $1080, $1081, $4855, $4868 ; tile733: 0x080, 0x081, 0x055, 0x068\n#_0FB9A0: dw $0860, $0861, $1956, $5956 ; tile734: 0x060, 0x061, 0x156, 0x156\n#_0FB9A8: dw $1936, $5936, $1937, $5937 ; tile735: 0x136, 0x136, 0x137, 0x137\n#_0FB9B0: dw $2D0E, $2D4B, $2D09, $2D41 ; tile736: 0x10E, 0x14B, 0x109, 0x141\n#_0FB9B8: dw $2D6E, $2D7D, $2D40, $2D50 ; tile737: 0x16E, 0x17D, 0x140, 0x150\n#_0FB9C0: dw $2D7D, $2D7D, $2D60, $2D70 ; tile738: 0x17D, 0x17D, 0x160, 0x170\n#_0FB9C8: dw $6D7D, $6D7D, $6D70, $6D60 ; tile739: 0x17D, 0x17D, 0x170, 0x160\n#_0FB9D0: dw $6D7D, $6D6E, $6D50, $6D40 ; tile73A: 0x17D, 0x16E, 0x150, 0x140\n#_0FB9D8: dw $6D4B, $6D0E, $6D41, $6D09 ; tile73B: 0x14B, 0x10E, 0x141, 0x109\n#_0FB9E0: dw $2D19, $2D51, $AD19, $2D51 ; tile73C: 0x119, 0x151, 0x119, 0x151\n#_0FB9E8: dw $2D51, $2D51, $2D0A, $2D4F ; tile73D: 0x151, 0x151, 0x10A, 0x14F\n#_0FB9F0: dw $2D51, $2D7A, $2D69, $2D51 ; tile73E: 0x151, 0x17A, 0x169, 0x151\n#_0FB9F8: dw $6D7A, $6D51, $2D51, $6D69 ; tile73F: 0x17A, 0x151, 0x151, 0x169\n#_0FBA00: dw $6D51, $6D51, $6D4F, $6D0A ; tile740: 0x151, 0x151, 0x14F, 0x10A\n#_0FBA08: dw $6D51, $6D19, $6D51, $ED19 ; tile741: 0x151, 0x119, 0x151, 0x119\n#_0FBA10: dw $2D29, $2D61, $2D39, $2D71 ; tile742: 0x129, 0x161, 0x139, 0x171\n#_0FBA18: dw $2D1A, $2D5F, $2D42, $2D4A ; tile743: 0x11A, 0x15F, 0x142, 0x14A\n#_0FBA20: dw $2D6A, $2D6A, $28C4, $28C5 ; tile744: 0x16A, 0x16A, 0x0C4, 0x0C5\n#_0FBA28: dw $2D6A, $2D6A, $68C5, $68C4 ; tile745: 0x16A, 0x16A, 0x0C5, 0x0C4\n#_0FBA30: dw $6D5F, $6D1A, $6D4A, $6D42 ; tile746: 0x15F, 0x11A, 0x14A, 0x142\n#_0FBA38: dw $6D61, $6D29, $6D71, $6D39 ; tile747: 0x161, 0x129, 0x171, 0x139\n#_0FBA40: dw $0911, $0911, $08D6, $48D6 ; tile748: 0x111, 0x111, 0x0D6, 0x0D6\n#_0FBA48: dw $08E8, $08FE, $08F8, $08FF ; tile749: 0x0E8, 0x0FE, 0x0F8, 0x0FF\n#_0FBA50: dw $08FE, $48E8, $08FF, $48F8 ; tile74A: 0x0FE, 0x0E8, 0x0FF, 0x0F8\n#_0FBA58: dw $0911, $4902, $0923, $4920 ; tile74B: 0x111, 0x102, 0x123, 0x120\n#_0FBA60: dw $08E6, $48E6, $08F6, $48F6 ; tile74C: 0x0E6, 0x0E6, 0x0F6, 0x0F6\n#_0FBA68: dw $086B, $08AA, $087B, $48B8 ; tile74D: 0x06B, 0x0AA, 0x07B, 0x0B8\n#_0FBA70: dw $085B, $485A, $4843, $085B ; tile74E: 0x05B, 0x05A, 0x043, 0x05B\n#_0FBA78: dw $9DD0, $DDD0, $9DC0, $DDC0 ; tile74F: 0x1D0, 0x1D0, 0x1C0, 0x1C0\n#_0FBA80: dw $09E0, $49E0, $4855, $4868 ; tile750: 0x1E0, 0x1E0, 0x055, 0x068\n#_0FBA88: dw $09E0, $49E0, $0890, $0891 ; tile751: 0x1E0, 0x1E0, 0x090, 0x091\n#_0FBA90: dw $09E0, $49E0, $0868, $0855 ; tile752: 0x1E0, 0x1E0, 0x068, 0x055\n#_0FBA98: dw $190E, $4C83, $191E, $4C93 ; tile753: 0x10E, 0x083, 0x11E, 0x093\n#_0FBAA0: dw $0C8F, $0C8F, $0879, $08BA ; tile754: 0x08F, 0x08F, 0x079, 0x0BA\n#_0FBAA8: dw $0C8F, $4C8C, $08BA, $4C9F ; tile755: 0x08F, 0x08C, 0x0BA, 0x09F\n#_0FBAB0: dw $0CAA, $0CAA, $4C9E, $4C8C ; tile756: 0x0AA, 0x0AA, 0x09E, 0x08C\n#_0FBAB8: dw $190E, $4CA3, $191E, $4CB3 ; tile757: 0x10E, 0x0A3, 0x11E, 0x0B3\n#_0FBAC0: dw $4898, $0879, $4878, $085B ; tile758: 0x098, 0x079, 0x078, 0x05B\n#_0FBAC8: dw $4C8C, $0CAA, $4C8D, $0CAA ; tile759: 0x08C, 0x0AA, 0x08D, 0x0AA\n#_0FBAD0: dw $08BA, $08BA, $8C9C, $08BA ; tile75A: 0x0BA, 0x0BA, 0x09C, 0x0BA\n#_0FBAD8: dw $4C9D, $4C8C, $48BA, $4C8D ; tile75B: 0x09D, 0x08C, 0x0BA, 0x08D\n#_0FBAE0: dw $8C8C, $8C9C, $0CAA, $8C8C ; tile75C: 0x08C, 0x09C, 0x0AA, 0x08C\n#_0FBAE8: dw $190E, $4CA2, $191E, $4CB2 ; tile75D: 0x10E, 0x0A2, 0x11E, 0x0B2\n#_0FBAF0: dw $C8BA, $4C9C, $085C, $485C ; tile75E: 0x0BA, 0x09C, 0x05C, 0x05C\n#_0FBAF8: dw $0CAA, $0C8C, $0CAA, $0C8D ; tile75F: 0x0AA, 0x08C, 0x0AA, 0x08D\n#_0FBB00: dw $0C8C, $0C9D, $0C8E, $08BA ; tile760: 0x08C, 0x09D, 0x08E, 0x0BA\n#_0FBB08: dw $0C8E, $08BA, $8C8C, $8C9D ; tile761: 0x08E, 0x0BA, 0x08C, 0x09D\n#_0FBB10: dw $0C8C, $0C9D, $0C8D, $08BA ; tile762: 0x08C, 0x09D, 0x08D, 0x0BA\n#_0FBB18: dw $190E, $190F, $0CAF, $191F ; tile763: 0x10E, 0x10F, 0x0AF, 0x11F\n#_0FBB20: dw $8C9F, $08BA, $8C8C, $8C8F ; tile764: 0x09F, 0x0BA, 0x08C, 0x08F\n#_0FBB28: dw $08BA, $CC9F, $8C8F, $CC8C ; tile765: 0x0BA, 0x09F, 0x08F, 0x08C\n#_0FBB30: dw $190E, $4CAF, $4CAF, $4CBF ; tile766: 0x10E, 0x0AF, 0x0AF, 0x0BF\n#_0FBB38: dw $08BE, $087A, $0880, $0881 ; tile767: 0x0BE, 0x07A, 0x080, 0x081\n#_0FBB40: dw $0CAF, $0CAA, $0CBF, $4CBE ; tile768: 0x0AF, 0x0AA, 0x0BF, 0x0BE\n#_0FBB48: dw $1046, $50BE, $0854, $1081 ; tile769: 0x046, 0x0BE, 0x054, 0x081\n#_0FBB50: dw $08BA, $10A8, $C8BA, $08BA ; tile76A: 0x0BA, 0x0A8, 0x0BA, 0x0BA\n#_0FBB58: dw $10B7, $50B7, $08BA, $08BA ; tile76B: 0x0B7, 0x0B7, 0x0BA, 0x0BA\n#_0FBB60: dw $08BA, $08AB, $08BA, $CC9F ; tile76C: 0x0BA, 0x0AB, 0x0BA, 0x09F\n#_0FBB68: dw $08BA, $08BA, $8C9F, $08BA ; tile76D: 0x0BA, 0x0BA, 0x09F, 0x0BA\n#_0FBB70: dw $08BA, $4C9F, $08BA, $08BA ; tile76E: 0x0BA, 0x09F, 0x0BA, 0x0BA\n#_0FBB78: dw $4C9D, $4C8C, $08BA, $4C8E ; tile76F: 0x09D, 0x08C, 0x0BA, 0x08E\n#_0FBB80: dw $8C9F, $08AB, $8C8C, $8C9E ; tile770: 0x09F, 0x0AB, 0x08C, 0x09E\n#_0FBB88: dw $08BA, $4C8E, $CC9D, $CC8C ; tile771: 0x0BA, 0x08E, 0x09D, 0x08C\n#_0FBB90: dw $0CAA, $8C8D, $0CAA, $8C8C ; tile772: 0x0AA, 0x08D, 0x0AA, 0x08C\n#_0FBB98: dw $CC8D, $0CAA, $CC8C, $0CAA ; tile773: 0x08D, 0x0AA, 0x08C, 0x0AA\n#_0FBBA0: dw $4C9E, $4C8C, $08BA, $4C9F ; tile774: 0x09E, 0x08C, 0x0BA, 0x09F\n#_0FBBA8: dw $08BA, $CC9F, $CC9E, $CC8C ; tile775: 0x0BA, 0x09F, 0x09E, 0x08C\n#_0FBBB0: dw $CC9E, $CC8C, $0CAA, $0CAA ; tile776: 0x09E, 0x08C, 0x0AA, 0x0AA\n#_0FBBB8: dw $08BA, $08BA, $08AB, $CC9C ; tile777: 0x0BA, 0x0BA, 0x0AB, 0x09C\n#_0FBBC0: dw $8C8D, $08AB, $8C8C, $8C9D ; tile778: 0x08D, 0x0AB, 0x08C, 0x09D\n#_0FBBC8: dw $48BA, $CC8D, $CC9D, $CC8C ; tile779: 0x0BA, 0x08D, 0x09D, 0x08C\n#_0FBBD0: dw $0CAF, $190F, $0CBF, $0CAF ; tile77A: 0x0AF, 0x10F, 0x0BF, 0x0AF\n#_0FBBD8: dw $0C80, $0C81, $0868, $0855 ; tile77B: 0x080, 0x081, 0x068, 0x055\n#_0FBBE0: dw $CC9C, $CC8C, $CC8C, $0CAA ; tile77C: 0x09C, 0x08C, 0x08C, 0x0AA\n#_0FBBE8: dw $10AF, $08BA, $10BF, $10AF ; tile77D: 0x0AF, 0x0BA, 0x0BF, 0x0AF\n#_0FBBF0: dw $1046, $10BF, $0854, $1056 ; tile77E: 0x046, 0x0BF, 0x054, 0x056\n#_0FBBF8: dw $1046, $10AF, $0854, $1056 ; tile77F: 0x046, 0x0AF, 0x054, 0x056\n#_0FBC00: dw $084D, $0844, $C879, $084D ; tile780: 0x04D, 0x044, 0x079, 0x04D\n#_0FBC08: dw $50AF, $5046, $5056, $4854 ; tile781: 0x0AF, 0x046, 0x056, 0x054\n#_0FBC10: dw $2C6D, $2C6D, $285C, $685C ; tile782: 0x06D, 0x06D, 0x05C, 0x05C\n#_0FBC18: dw $2840, $2841, $2850, $3D66 ; tile783: 0x040, 0x041, 0x050, 0x166\n#_0FBC20: dw $2840, $2841, $3D67, $2851 ; tile784: 0x040, 0x041, 0x167, 0x051\n#_0FBC28: dw $0860, $1D76, $08B0, $1D06 ; tile785: 0x060, 0x176, 0x0B0, 0x106\n#_0FBC30: dw $1D77, $0861, $1D07, $08B0 ; tile786: 0x177, 0x061, 0x107, 0x0B0\n#_0FBC38: dw $08BA, $08BA, $08BA, $08BA ; tile787: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FBC40: dw $0C8E, $884F, $0CA5, $084F ; tile788: 0x08E, 0x04F, 0x0A5, 0x04F\n#_0FBC48: dw $0CA4, $884F, $0CB4, $084F ; tile789: 0x0A4, 0x04F, 0x0B4, 0x04F\n#_0FBC50: dw $4C96, $4886, $0CA8, $4C96 ; tile78A: 0x096, 0x086, 0x0A8, 0x096\n#_0FBC58: dw $0C83, $0CAA, $0C93, $0CAA ; tile78B: 0x083, 0x0AA, 0x093, 0x0AA\n#_0FBC60: dw $0CAA, $0C8B, $0C8B, $4C8B ; tile78C: 0x0AA, 0x08B, 0x08B, 0x08B\n#_0FBC68: dw $0C8B, $4C8B, $4C8B, $0C8B ; tile78D: 0x08B, 0x08B, 0x08B, 0x08B\n#_0FBC70: dw $4C7B, $0898, $085D, $0878 ; tile78E: 0x07B, 0x098, 0x05D, 0x078\n#_0FBC78: dw $0CA3, $0CAA, $0CB3, $0CAA ; tile78F: 0x0A3, 0x0AA, 0x0B3, 0x0AA\n#_0FBC80: dw $484C, $88BB, $8895, $C895 ; tile790: 0x04C, 0x0BB, 0x095, 0x095\n#_0FBC88: dw $4C94, $0C6D, $085C, $485C ; tile791: 0x094, 0x06D, 0x05C, 0x05C\n#_0FBC90: dw $0CA2, $0CAA, $0CB2, $0CAA ; tile792: 0x0A2, 0x0AA, 0x0B2, 0x0AA\n#_0FBC98: dw $7C31, $7C30, $7C04, $7C03 ; tile793: 0x031, 0x030, 0x004, 0x003\n#_0FBCA0: dw $3C30, $3C31, $3C03, $3C04 ; tile794: 0x030, 0x031, 0x003, 0x004\n#_0FBCA8: dw $3C32, $7C32, $3C05, $7C05 ; tile795: 0x032, 0x032, 0x005, 0x005\n#_0FBCB0: dw $5D69, $1D37, $5D79, $1D37 ; tile796: 0x169, 0x137, 0x179, 0x137\n#_0FBCB8: dw $1D37, $1D37, $1D36, $1D37 ; tile797: 0x137, 0x137, 0x136, 0x137\n#_0FBCC0: dw $1D26, $3C08, $1D37, $1D42 ; tile798: 0x126, 0x008, 0x137, 0x142\n#_0FBCC8: dw $3C09, $3C0A, $1C19, $1C07 ; tile799: 0x009, 0x00A, 0x019, 0x007\n#_0FBCD0: dw $3C13, $3C14, $3C00, $3C01 ; tile79A: 0x013, 0x014, 0x000, 0x001\n#_0FBCD8: dw $3C15, $7C15, $3C02, $7C02 ; tile79B: 0x015, 0x015, 0x002, 0x002\n#_0FBCE0: dw $7C14, $7C13, $7C01, $7C00 ; tile79C: 0x014, 0x013, 0x001, 0x000\n#_0FBCE8: dw $3C14, $3C15, $3C01, $3C02 ; tile79D: 0x014, 0x015, 0x001, 0x002\n#_0FBCF0: dw $7C15, $7C14, $7C02, $7C01 ; tile79E: 0x015, 0x014, 0x002, 0x001\n#_0FBCF8: dw $7C13, $3C13, $7C00, $3C00 ; tile79F: 0x013, 0x013, 0x000, 0x000\n#_0FBD00: dw $7C13, $7C0A, $7C00, $5C07 ; tile7A0: 0x013, 0x00A, 0x000, 0x007\n#_0FBD08: dw $7C09, $7C08, $5C19, $5D42 ; tile7A1: 0x009, 0x008, 0x019, 0x142\n#_0FBD10: dw $5D26, $1D37, $5D37, $1D36 ; tile7A2: 0x126, 0x137, 0x137, 0x136\n#_0FBD18: dw $1D37, $1D05, $1D36, $1D37 ; tile7A3: 0x137, 0x105, 0x136, 0x137\n#_0FBD20: dw $1D43, $3C17, $1D37, $3C1F ; tile7A4: 0x143, 0x017, 0x137, 0x01F\n#_0FBD28: dw $3C10, $3C11, $3C20, $3C21 ; tile7A5: 0x010, 0x011, 0x020, 0x021\n#_0FBD30: dw $3C12, $7C12, $3C22, $7C22 ; tile7A6: 0x012, 0x012, 0x022, 0x022\n#_0FBD38: dw $7C11, $7C10, $7C21, $7C20 ; tile7A7: 0x011, 0x010, 0x021, 0x020\n#_0FBD40: dw $3C11, $3C12, $3C21, $3C22 ; tile7A8: 0x011, 0x012, 0x021, 0x022\n#_0FBD48: dw $7C12, $7C11, $7C22, $7C21 ; tile7A9: 0x012, 0x011, 0x022, 0x021\n#_0FBD50: dw $7C10, $3C10, $7C20, $3C20 ; tile7AA: 0x010, 0x010, 0x020, 0x020\n#_0FBD58: dw $7C10, $7C17, $7C20, $7C1F ; tile7AB: 0x010, 0x017, 0x020, 0x01F\n#_0FBD60: dw $5D43, $5D05, $1D37, $1D37 ; tile7AC: 0x143, 0x105, 0x137, 0x137\n#_0FBD68: dw $1D37, $1D36, $1D36, $1D45 ; tile7AD: 0x137, 0x136, 0x136, 0x145\n#_0FBD70: dw $1D37, $3D69, $1D37, $3D79 ; tile7AE: 0x137, 0x169, 0x137, 0x179\n#_0FBD78: dw $3C31, $3C32, $3C04, $3C05 ; tile7AF: 0x031, 0x032, 0x004, 0x005\n#_0FBD80: dw $7C32, $7C31, $7C05, $7C04 ; tile7B0: 0x032, 0x031, 0x005, 0x004\n#_0FBD88: dw $7C30, $3C30, $7C03, $3C03 ; tile7B1: 0x030, 0x030, 0x003, 0x003\n#_0FBD90: dw $7C30, $7D69, $7C03, $7D79 ; tile7B2: 0x030, 0x169, 0x003, 0x179\n#_0FBD98: dw $1D37, $1D12, $1D68, $3C00 ; tile7B3: 0x137, 0x112, 0x168, 0x000\n#_0FBDA0: dw $1D13, $3C3E, $3C01, $3C02 ; tile7B4: 0x113, 0x03E, 0x001, 0x002\n#_0FBDA8: dw $3C08, $3C09, $1D42, $1C19 ; tile7B5: 0x008, 0x009, 0x142, 0x019\n#_0FBDB0: dw $3C0A, $7C0A, $1C1A, $5C1A ; tile7B6: 0x00A, 0x00A, 0x01A, 0x01A\n#_0FBDB8: dw $7C0A, $7C09, $5C07, $5C19 ; tile7B7: 0x00A, 0x009, 0x007, 0x019\n#_0FBDC0: dw $7C08, $5D26, $5D42, $5D37 ; tile7B8: 0x008, 0x126, 0x142, 0x137\n#_0FBDC8: dw $1D78, $3C10, $3C1F, $3C20 ; tile7B9: 0x178, 0x010, 0x01F, 0x020\n#_0FBDD0: dw $1D05, $1D43, $1D37, $1D37 ; tile7BA: 0x105, 0x143, 0x137, 0x137\n#_0FBDD8: dw $1D44, $5D44, $1D06, $5D06 ; tile7BB: 0x144, 0x144, 0x106, 0x106\n#_0FBDE0: dw $5D43, $5D05, $5D37, $5D37 ; tile7BC: 0x143, 0x105, 0x137, 0x137\n#_0FBDE8: dw $1D43, $1D44, $1D37, $1D06 ; tile7BD: 0x143, 0x144, 0x137, 0x106\n#_0FBDF0: dw $5D44, $5D43, $5D06, $5D37 ; tile7BE: 0x144, 0x143, 0x106, 0x137\n#_0FBDF8: dw $7C17, $5D43, $7C1F, $1D37 ; tile7BF: 0x017, 0x143, 0x01F, 0x137\n#_0FBE00: dw $5D05, $1D36, $1D37, $1D37 ; tile7C0: 0x105, 0x136, 0x137, 0x137\n#_0FBE08: dw $1D69, $3C30, $1D79, $3C03 ; tile7C1: 0x169, 0x030, 0x179, 0x003\n#_0FBE10: dw $5D37, $5D09, $5D09, $5D19 ; tile7C2: 0x137, 0x109, 0x109, 0x119\n#_0FBE18: dw $1D29, $5D29, $1D39, $5D39 ; tile7C3: 0x129, 0x129, 0x139, 0x139\n#_0FBE20: dw $1D09, $1D37, $1D19, $1D09 ; tile7C4: 0x109, 0x137, 0x119, 0x109\n#_0FBE28: dw $5D37, $5D08, $5D09, $5D18 ; tile7C5: 0x137, 0x108, 0x109, 0x118\n#_0FBE30: dw $1D3C, $1D3C, $1D3C, $1D3C ; tile7C6: 0x13C, 0x13C, 0x13C, 0x13C\n#_0FBE38: dw $1D3C, $1D3C, $088B, $488B ; tile7C7: 0x13C, 0x13C, 0x08B, 0x08B\n#_0FBE40: dw $1D08, $5D29, $1D39, $5D39 ; tile7C8: 0x108, 0x129, 0x139, 0x139\n#_0FBE48: dw $1D29, $5D08, $1D39, $5D39 ; tile7C9: 0x129, 0x108, 0x139, 0x139\n#_0FBE50: dw $1D3C, $1D3C, $1D5D, $1D3C ; tile7CA: 0x13C, 0x13C, 0x15D, 0x13C\n#_0FBE58: dw $7D69, $1D37, $7D79, $1D37 ; tile7CB: 0x169, 0x137, 0x179, 0x137\n#_0FBE60: dw $1D3C, $1D3C, $3940, $393F ; tile7CC: 0x13C, 0x13C, 0x140, 0x13F\n#_0FBE68: dw $390F, $790F, $391F, $791F ; tile7CD: 0x10F, 0x10F, 0x11F, 0x11F\n#_0FBE70: dw $1D3C, $1D3C, $793F, $7940 ; tile7CE: 0x13C, 0x13C, 0x13F, 0x140\n#_0FBE78: dw $1D28, $1D07, $1D18, $1D45 ; tile7CF: 0x128, 0x107, 0x118, 0x145\n#_0FBE80: dw $5D07, $1D07, $5D17, $1D45 ; tile7D0: 0x107, 0x107, 0x117, 0x145\n#_0FBE88: dw $5D07, $5D28, $5D45, $5D18 ; tile7D1: 0x107, 0x128, 0x145, 0x118\n#_0FBE90: dw $1D37, $1D26, $1D37, $1D37 ; tile7D2: 0x137, 0x126, 0x137, 0x137\n#_0FBE98: dw $3C0A, $3C13, $1C07, $3C00 ; tile7D3: 0x00A, 0x013, 0x007, 0x000\n#_0FBEA0: dw $7C3E, $5D13, $7C02, $7C01 ; tile7D4: 0x03E, 0x113, 0x002, 0x001\n#_0FBEA8: dw $5D12, $1D37, $7C00, $5D68 ; tile7D5: 0x112, 0x137, 0x000, 0x168\n#_0FBEB0: dw $1D37, $5D38, $1D37, $1D37 ; tile7D6: 0x137, 0x138, 0x137, 0x137\n#_0FBEB8: dw $3960, $190E, $3950, $393F ; tile7D7: 0x160, 0x10E, 0x150, 0x13F\n#_0FBEC0: dw $396B, $796B, $391F, $791F ; tile7D8: 0x16B, 0x16B, 0x11F, 0x11F\n#_0FBEC8: dw $590E, $7960, $793F, $7950 ; tile7D9: 0x10E, 0x160, 0x13F, 0x150\n#_0FBED0: dw $1D38, $5D37, $5D37, $5D37 ; tile7DA: 0x138, 0x137, 0x137, 0x137\n#_0FBED8: dw $1D36, $1D37, $1D37, $5D45 ; tile7DB: 0x136, 0x137, 0x137, 0x145\n#_0FBEE0: dw $3C3E, $7C3E, $3C02, $7C02 ; tile7DC: 0x03E, 0x03E, 0x002, 0x002\n#_0FBEE8: dw $1914, $1915, $1924, $3925 ; tile7DD: 0x114, 0x115, 0x124, 0x125\n#_0FBEF0: dw $192A, $192B, $3956, $3957 ; tile7DE: 0x12A, 0x12B, 0x156, 0x157\n#_0FBEF8: dw $592B, $592A, $7957, $7956 ; tile7DF: 0x12B, 0x12A, 0x157, 0x156\n#_0FBF00: dw $5915, $5914, $7925, $5924 ; tile7E0: 0x115, 0x114, 0x125, 0x124\n#_0FBF08: dw $3C17, $3C10, $3C1F, $3C20 ; tile7E1: 0x017, 0x010, 0x01F, 0x020\n#_0FBF10: dw $7C10, $5D78, $7C20, $7C1F ; tile7E2: 0x010, 0x178, 0x020, 0x01F\n#_0FBF18: dw $1D37, $1D37, $1D37, $1D68 ; tile7E3: 0x137, 0x137, 0x137, 0x168\n#_0FBF20: dw $1D12, $1D13, $3C00, $3C01 ; tile7E4: 0x112, 0x113, 0x000, 0x001\n#_0FBF28: dw $3C15, $7C3E, $3C02, $7C02 ; tile7E5: 0x015, 0x03E, 0x002, 0x002\n#_0FBF30: dw $5D13, $5D12, $7C01, $7C00 ; tile7E6: 0x113, 0x112, 0x001, 0x000\n#_0FBF38: dw $1D37, $1D36, $5D68, $1D37 ; tile7E7: 0x137, 0x136, 0x168, 0x137\n#_0FBF40: dw $195A, $196A, $1D3C, $1D3C ; tile7E8: 0x15A, 0x16A, 0x13C, 0x13C\n#_0FBF48: dw $1934, $3935, $194E, $394F ; tile7E9: 0x134, 0x135, 0x14E, 0x14F\n#_0FBF50: dw $3966, $3967, $3976, $3977 ; tile7EA: 0x166, 0x167, 0x176, 0x177\n#_0FBF58: dw $7967, $7966, $7977, $7976 ; tile7EB: 0x167, 0x166, 0x177, 0x176\n#_0FBF60: dw $7935, $5934, $794F, $594E ; tile7EC: 0x135, 0x134, 0x14F, 0x14E\n#_0FBF68: dw $596A, $595A, $1D3C, $1D3C ; tile7ED: 0x16A, 0x15A, 0x13C, 0x13C\n#_0FBF70: dw $1D4C, $1D19, $1D3C, $1D2C ; tile7EE: 0x14C, 0x119, 0x13C, 0x12C\n#_0FBF78: dw $3D69, $3C30, $3D79, $3C03 ; tile7EF: 0x169, 0x030, 0x179, 0x003\n#_0FBF80: dw $7C30, $5D69, $7C03, $5D79 ; tile7F0: 0x030, 0x169, 0x003, 0x179\n#_0FBF88: dw $1D37, $1D78, $1D37, $3C1F ; tile7F1: 0x137, 0x178, 0x137, 0x01F\n#_0FBF90: dw $5D78, $1D37, $7C1F, $1D37 ; tile7F2: 0x178, 0x137, 0x01F, 0x137\n#_0FBF98: dw $5D19, $5D2C, $5D2C, $1D3C ; tile7F3: 0x119, 0x12C, 0x12C, 0x13C\n#_0FBFA0: dw $195E, $395F, $1946, $1947 ; tile7F4: 0x15E, 0x15F, 0x146, 0x147\n#_0FBFA8: dw $3916, $3904, $3904, $193A ; tile7F5: 0x116, 0x104, 0x104, 0x13A\n#_0FBFB0: dw $7904, $7916, $593A, $7904 ; tile7F6: 0x104, 0x116, 0x13A, 0x104\n#_0FBFB8: dw $795F, $595E, $5947, $5946 ; tile7F7: 0x15F, 0x15E, 0x147, 0x146\n#_0FBFC0: dw $1D08, $1D37, $1D18, $1D09 ; tile7F8: 0x108, 0x137, 0x118, 0x109\n#_0FBFC8: dw $3C09, $3C0A, $1C19, $1C1A ; tile7F9: 0x009, 0x00A, 0x019, 0x01A\n#_0FBFD0: dw $7C0A, $7C09, $5C1A, $5C19 ; tile7FA: 0x00A, 0x009, 0x01A, 0x019\n#_0FBFD8: dw $1D37, $1D69, $1D37, $1D79 ; tile7FB: 0x137, 0x169, 0x137, 0x179\n#_0FBFE0: dw $1D3C, $195A, $1D3C, $1D3C ; tile7FC: 0x13C, 0x15A, 0x13C, 0x13C\n#_0FBFE8: dw $196A, $193B, $1D3C, $1D3C ; tile7FD: 0x16A, 0x13B, 0x13C, 0x13C\n#_0FBFF0: dw $1927, $1953, $197C, $1953 ; tile7FE: 0x127, 0x153, 0x17C, 0x153\n#_0FBFF8: dw $5953, $5927, $5953, $597C ; tile7FF: 0x153, 0x127, 0x153, 0x17C\n#_0FC000: dw $593B, $596A, $1D3C, $1D3C ; tile800: 0x13B, 0x16A, 0x13C, 0x13C\n#_0FC008: dw $595A, $1D3C, $1D3C, $1D3C ; tile801: 0x15A, 0x13C, 0x13C, 0x13C\n#_0FC010: dw $1D36, $1D26, $1D37, $1D37 ; tile802: 0x136, 0x126, 0x137, 0x137\n#_0FC018: dw $3C3E, $5D13, $7C02, $7C01 ; tile803: 0x03E, 0x113, 0x002, 0x001\n#_0FC020: dw $1D3C, $195A, $1D3C, $197E ; tile804: 0x13C, 0x15A, 0x13C, 0x17E\n#_0FC028: dw $196A, $1964, $197F, $1953 ; tile805: 0x16A, 0x164, 0x17F, 0x153\n#_0FC030: dw $5964, $596A, $5953, $597F ; tile806: 0x164, 0x16A, 0x153, 0x17F\n#_0FC038: dw $595A, $1D3C, $597E, $1D3C ; tile807: 0x15A, 0x13C, 0x17E, 0x13C\n#_0FC040: dw $1D05, $1D43, $1D37, $1D36 ; tile808: 0x105, 0x143, 0x137, 0x136\n#_0FC048: dw $196A, $1964, $197F, $1952 ; tile809: 0x16A, 0x164, 0x17F, 0x152\n#_0FC050: dw $5964, $596A, $5952, $597F ; tile80A: 0x164, 0x16A, 0x152, 0x17F\n#_0FC058: dw $1D3C, $1962, $1D3C, $1972 ; tile80B: 0x13C, 0x162, 0x13C, 0x172\n#_0FC060: dw $5962, $1D3C, $5972, $1D3C ; tile80C: 0x162, 0x13C, 0x172, 0x13C\n#_0FC068: dw $1D3C, $1D28, $1D28, $1D38 ; tile80D: 0x13C, 0x128, 0x128, 0x138\n#_0FC070: dw $1D38, $1D37, $1D37, $5D19 ; tile80E: 0x138, 0x137, 0x137, 0x119\n#_0FC078: dw $1960, $190E, $1900, $191E ; tile80F: 0x160, 0x10E, 0x100, 0x11E\n#_0FC080: dw $B90F, $F90F, $1D3C, $1D3C ; tile810: 0x10F, 0x10F, 0x13C, 0x13C\n#_0FC088: dw $590E, $5960, $591E, $5900 ; tile811: 0x10E, 0x160, 0x11E, 0x100\n#_0FC090: dw $1D08, $1D37, $1D18, $1D37 ; tile812: 0x108, 0x137, 0x118, 0x137\n#_0FC098: dw $5D28, $1D3C, $5D38, $5D28 ; tile813: 0x128, 0x13C, 0x138, 0x128\n#_0FC0A0: dw $088B, $488B, $488B, $1D3C ; tile814: 0x08B, 0x08B, 0x08B, 0x13C\n#_0FC0A8: dw $1D0C, $1D0D, $1D1C, $1DEE ; tile815: 0x10C, 0x10D, 0x11C, 0x1EE\n#_0FC0B0: dw $5D0D, $5D0C, $1DEE, $5D1C ; tile816: 0x10D, 0x10C, 0x1EE, 0x11C\n#_0FC0B8: dw $1D1C, $1DEE, $9D0C, $1D1D ; tile817: 0x11C, 0x1EE, 0x10C, 0x11D\n#_0FC0C0: dw $1DEE, $5D1C, $5D1D, $DD0C ; tile818: 0x1EE, 0x11C, 0x11D, 0x10C\n#_0FC0C8: dw $5D37, $5D38, $1D19, $5D37 ; tile819: 0x137, 0x138, 0x119, 0x137\n#_0FC0D0: dw $7C30, $7C2F, $7C03, $7C3F ; tile81A: 0x030, 0x02F, 0x003, 0x03F\n#_0FC0D8: dw $3C3E, $7C15, $3C02, $7C02 ; tile81B: 0x03E, 0x015, 0x002, 0x002\n#_0FC0E0: dw $7C3D, $7C3C, $7C01, $7C00 ; tile81C: 0x03D, 0x03C, 0x001, 0x000\n#_0FC0E8: dw $1D3C, $1D3C, $7C0E, $1D3C ; tile81D: 0x13C, 0x13C, 0x00E, 0x13C\n#_0FC0F0: dw $1D38, $5D09, $5D09, $5D19 ; tile81E: 0x138, 0x109, 0x109, 0x119\n#_0FC0F8: dw $7C0F, $1D3C, $7C1F, $1D3C ; tile81F: 0x00F, 0x13C, 0x01F, 0x13C\n#_0FC100: dw $7C2F, $1D3C, $7C3F, $1D3C ; tile820: 0x02F, 0x13C, 0x03F, 0x13C\n#_0FC108: dw $5D26, $5D37, $5D37, $5D37 ; tile821: 0x126, 0x137, 0x137, 0x137\n#_0FC110: dw $192D, $1920, $1901, $3941 ; tile822: 0x12D, 0x120, 0x101, 0x141\n#_0FC118: dw $5920, $592D, $7941, $5901 ; tile823: 0x120, 0x12D, 0x141, 0x101\n#_0FC120: dw $7C3E, $7C3D, $7C02, $7C01 ; tile824: 0x03E, 0x03D, 0x002, 0x001\n#_0FC128: dw $7C3C, $1D3C, $7C00, $7C0E ; tile825: 0x03C, 0x13C, 0x000, 0x00E\n#_0FC130: dw $7C09, $7C08, $5C19, $5C18 ; tile826: 0x009, 0x008, 0x019, 0x018\n#_0FC138: dw $3C08, $3C09, $1C18, $1C19 ; tile827: 0x008, 0x009, 0x018, 0x019\n#_0FC140: dw $5C29, $5C28, $5C0D, $1D3C ; tile828: 0x029, 0x028, 0x00D, 0x13C\n#_0FC148: dw $1C28, $1C29, $1D3C, $1C0D ; tile829: 0x028, 0x029, 0x13C, 0x00D\n#_0FC150: dw $1C2A, $5C2A, $1C2D, $5C2D ; tile82A: 0x02A, 0x02A, 0x02D, 0x02D\n#_0FC158: dw $3C2F, $3C30, $3C3F, $3C03 ; tile82B: 0x02F, 0x030, 0x03F, 0x003\n#_0FC160: dw $7C08, $5C1D, $5C18, $5C1E ; tile82C: 0x008, 0x01D, 0x018, 0x01E\n#_0FC168: dw $192D, $1920, $1901, $1941 ; tile82D: 0x12D, 0x120, 0x101, 0x141\n#_0FC170: dw $5920, $592D, $5941, $5901 ; tile82E: 0x120, 0x12D, 0x141, 0x101\n#_0FC178: dw $1C1D, $3C08, $1C1E, $1C18 ; tile82F: 0x01D, 0x008, 0x01E, 0x018\n#_0FC180: dw $7C08, $3C08, $5C18, $1C18 ; tile830: 0x008, 0x008, 0x018, 0x018\n#_0FC188: dw $7C17, $5C29, $7C1F, $5C0D ; tile831: 0x017, 0x029, 0x01F, 0x00D\n#_0FC190: dw $5C28, $1D3C, $1D3C, $1D3C ; tile832: 0x028, 0x13C, 0x13C, 0x13C\n#_0FC198: dw $1911, $1951, $194D, $1931 ; tile833: 0x111, 0x151, 0x14D, 0x131\n#_0FC1A0: dw $5951, $5911, $5931, $594D ; tile834: 0x151, 0x111, 0x131, 0x14D\n#_0FC1A8: dw $1D3C, $1C28, $1D3C, $1D3C ; tile835: 0x13C, 0x028, 0x13C, 0x13C\n#_0FC1B0: dw $1C29, $1C2A, $1C0D, $1C2D ; tile836: 0x029, 0x02A, 0x00D, 0x02D\n#_0FC1B8: dw $5C2A, $5C29, $5C2D, $5C0D ; tile837: 0x02A, 0x029, 0x02D, 0x00D\n#_0FC1C0: dw $5C28, $1C28, $1D3C, $1D3C ; tile838: 0x028, 0x028, 0x13C, 0x13C\n#_0FC1C8: dw $1D3C, $088C, $088C, $089C ; tile839: 0x13C, 0x08C, 0x08C, 0x09C\n#_0FC1D0: dw $1D3C, $1D3C, $489E, $488C ; tile83A: 0x13C, 0x13C, 0x09E, 0x08C\n#_0FC1D8: dw $1D38, $1D12, $1D68, $3C00 ; tile83B: 0x138, 0x112, 0x168, 0x000\n#_0FC1E0: dw $C89E, $C88C, $1D3C, $1D3C ; tile83C: 0x09E, 0x08C, 0x13C, 0x13C\n#_0FC1E8: dw $7C10, $7C0F, $7C20, $7C1F ; tile83D: 0x010, 0x00F, 0x020, 0x01F\n#_0FC1F0: dw $C89C, $C88C, $C88C, $1D3C ; tile83E: 0x09C, 0x08C, 0x08C, 0x13C\n#_0FC1F8: dw $888C, $889C, $1D3C, $888C ; tile83F: 0x08C, 0x09C, 0x13C, 0x08C\n#_0FC200: dw $1D3C, $3C3C, $3C0E, $3C00 ; tile840: 0x13C, 0x03C, 0x00E, 0x000\n#_0FC208: dw $3C3D, $3C3E, $3C01, $3C02 ; tile841: 0x03D, 0x03E, 0x001, 0x002\n#_0FC210: dw $088B, $488B, $1D3C, $1D3C ; tile842: 0x08B, 0x08B, 0x13C, 0x13C\n#_0FC218: dw $3C0F, $3C10, $3C1F, $3C20 ; tile843: 0x00F, 0x010, 0x01F, 0x020\n#_0FC220: dw $7C3C, $3C3C, $7C00, $3C00 ; tile844: 0x03C, 0x03C, 0x000, 0x000\n#_0FC228: dw $5D12, $1D12, $7C00, $3C00 ; tile845: 0x112, 0x112, 0x000, 0x000\n#_0FC230: dw $1D45, $1D37, $1D37, $1D37 ; tile846: 0x145, 0x137, 0x137, 0x137\n#_0FC238: dw $5D26, $5D09, $5D09, $5D19 ; tile847: 0x126, 0x109, 0x109, 0x119\n#_0FC240: dw $5D43, $5D05, $5D09, $5D19 ; tile848: 0x143, 0x105, 0x109, 0x119\n#_0FC248: dw $7C08, $3C08, $5D42, $1D42 ; tile849: 0x008, 0x008, 0x142, 0x142\n#_0FC250: dw $5D5D, $1D3C, $1D3C, $1D5D ; tile84A: 0x15D, 0x13C, 0x13C, 0x15D\n#_0FC258: dw $5D05, $1D05, $1D36, $1D37 ; tile84B: 0x105, 0x105, 0x136, 0x137\n#_0FC260: dw $1D37, $1D36, $1D37, $1D37 ; tile84C: 0x137, 0x136, 0x137, 0x137\n#_0FC268: dw $088B, $488B, $1D3C, $088B ; tile84D: 0x08B, 0x08B, 0x13C, 0x08B\n#_0FC270: dw $1D37, $1D37, $1D37, $1D37 ; tile84E: 0x137, 0x137, 0x137, 0x137\n#_0FC278: dw $50A1, $5062, $08BA, $50A0 ; tile84F: 0x0A1, 0x062, 0x0BA, 0x0A0\n#_0FC280: dw $512D, $112D, $513D, $113D ; tile850: 0x12D, 0x12D, 0x13D, 0x13D\n#_0FC288: dw $512D, $4DCB, $4DCB, $1D65 ; tile851: 0x12D, 0x1CB, 0x1CB, 0x165\n#_0FC290: dw $0DCA, $4DCA, $1D65, $1D65 ; tile852: 0x1CA, 0x1CA, 0x165, 0x165\n#_0FC298: dw $0DCB, $112D, $1D65, $0DCB ; tile853: 0x1CB, 0x12D, 0x165, 0x1CB\n#_0FC2A0: dw $512B, $112F, $513C, $112F ; tile854: 0x12B, 0x12F, 0x13C, 0x12F\n#_0FC2A8: dw $112F, $112F, $112F, $112F ; tile855: 0x12F, 0x12F, 0x12F, 0x12F\n#_0FC2B0: dw $112F, $112B, $112F, $113C ; tile856: 0x12F, 0x12B, 0x12F, 0x13C\n#_0FC2B8: dw $112D, $512D, $113D, $513D ; tile857: 0x12D, 0x12D, 0x13D, 0x13D\n#_0FC2C0: dw $1D65, $1D65, $1D65, $1D65 ; tile858: 0x165, 0x165, 0x165, 0x165\n#_0FC2C8: dw $512C, $513B, $513C, $112F ; tile859: 0x12C, 0x13B, 0x13C, 0x12F\n#_0FC2D0: dw $113B, $112C, $112F, $113C ; tile85A: 0x13B, 0x12C, 0x12F, 0x13C\n#_0FC2D8: dw $112D, $5DCB, $113D, $5DCC ; tile85B: 0x12D, 0x1CB, 0x13D, 0x1CC\n#_0FC2E0: dw $1165, $1165, $1165, $1165 ; tile85C: 0x165, 0x165, 0x165, 0x165\n#_0FC2E8: dw $1DCB, $112D, $1165, $1DCB ; tile85D: 0x1CB, 0x12D, 0x165, 0x1CB\n#_0FC2F0: dw $1D65, $4D45, $4D45, $0886 ; tile85E: 0x165, 0x145, 0x145, 0x086\n#_0FC2F8: dw $0D45, $1D65, $4886, $0D45 ; tile85F: 0x145, 0x165, 0x086, 0x145\n#_0FC300: dw $112D, $512B, $113D, $513C ; tile860: 0x12D, 0x12B, 0x13D, 0x13C\n#_0FC308: dw $112B, $512D, $113C, $513D ; tile861: 0x12B, 0x12D, 0x13C, 0x13D\n#_0FC310: dw $512D, $5DCD, $513D, $5DC7 ; tile862: 0x12D, 0x1CD, 0x13D, 0x1C7\n#_0FC318: dw $5DC9, $1165, $1175, $5DC9 ; tile863: 0x1C9, 0x165, 0x175, 0x1C9\n#_0FC320: dw $1DCB, $512D, $1DCC, $513D ; tile864: 0x1CB, 0x12D, 0x1CC, 0x13D\n#_0FC328: dw $512B, $112B, $513D, $113D ; tile865: 0x12B, 0x12B, 0x13D, 0x13D\n#_0FC330: dw $0DCB, $512D, $0DCC, $513D ; tile866: 0x1CB, 0x12D, 0x1CC, 0x13D\n#_0FC338: dw $5DC7, $1175, $113D, $5DC7 ; tile867: 0x1C7, 0x175, 0x13D, 0x1C7\n#_0FC340: dw $1165, $1DC9, $1DC9, $1175 ; tile868: 0x165, 0x1C9, 0x1C9, 0x175\n#_0FC348: dw $1DCD, $112D, $1DC7, $113D ; tile869: 0x1CD, 0x12D, 0x1C7, 0x13D\n#_0FC350: dw $1D65, $1D65, $1D65, $CDD2 ; tile86A: 0x165, 0x165, 0x165, 0x1D2\n#_0FC358: dw $1D65, $1D65, $8DD2, $1D65 ; tile86B: 0x165, 0x165, 0x1D2, 0x165\n#_0FC360: dw $1DC8, $5DC8, $1DC6, $5DC6 ; tile86C: 0x1C8, 0x1C8, 0x1C6, 0x1C6\n#_0FC368: dw $1175, $1DC7, $1DC7, $513D ; tile86D: 0x175, 0x1C7, 0x1C7, 0x13D\n#_0FC370: dw $4DC9, $1D65, $1D75, $4DC9 ; tile86E: 0x1C9, 0x165, 0x175, 0x1C9\n#_0FC378: dw $1D65, $CDD4, $1D65, $4DD4 ; tile86F: 0x165, 0x1D4, 0x165, 0x1D4\n#_0FC380: dw $08AA, $08AA, $1D26, $5D26 ; tile870: 0x0AA, 0x0AA, 0x126, 0x126\n#_0FC388: dw $8DD4, $1D65, $0DD4, $1D65 ; tile871: 0x1D4, 0x165, 0x1D4, 0x165\n#_0FC390: dw $1D75, $CDC9, $CDC9, $1D65 ; tile872: 0x175, 0x1C9, 0x1C9, 0x165\n#_0FC398: dw $1D36, $5D36, $1D0C, $5D0C ; tile873: 0x136, 0x136, 0x10C, 0x10C\n#_0FC3A0: dw $4896, $1D14, $08A8, $1D0D ; tile874: 0x096, 0x114, 0x0A8, 0x10D\n#_0FC3A8: dw $08AA, $08AA, $4887, $1D15 ; tile875: 0x0AA, 0x0AA, 0x087, 0x115\n#_0FC3B0: dw $08AA, $08AA, $1D15, $1D15 ; tile876: 0x0AA, 0x0AA, 0x115, 0x115\n#_0FC3B8: dw $08AA, $08AA, $1D06, $1D06 ; tile877: 0x0AA, 0x0AA, 0x106, 0x106\n#_0FC3C0: dw $48AA, $48AA, $1D15, $1D15 ; tile878: 0x0AA, 0x0AA, 0x115, 0x115\n#_0FC3C8: dw $08A4, $884F, $08B4, $484E ; tile879: 0x0A4, 0x04F, 0x0B4, 0x04E\n#_0FC3D0: dw $5D16, $5D16, $0874, $4D27 ; tile87A: 0x116, 0x116, 0x074, 0x127\n#_0FC3D8: dw $1D16, $5D16, $0DD4, $8DC9 ; tile87B: 0x116, 0x116, 0x1D4, 0x1C9\n#_0FC3E0: dw $1D16, $5D16, $1D75, $1D75 ; tile87C: 0x116, 0x116, 0x175, 0x175\n#_0FC3E8: dw $1D16, $5D16, $513D, $113D ; tile87D: 0x116, 0x116, 0x13D, 0x13D\n#_0FC3F0: dw $1D65, $4DD2, $1D65, $1D65 ; tile87E: 0x165, 0x1D2, 0x165, 0x165\n#_0FC3F8: dw $8DC9, $1D75, $1D65, $8DC9 ; tile87F: 0x1C9, 0x175, 0x165, 0x1C9\n#_0FC400: dw $1D75, $0DC7, $0DC7, $513D ; tile880: 0x175, 0x1C7, 0x1C7, 0x13D\n#_0FC408: dw $112D, $512C, $113D, $513C ; tile881: 0x12D, 0x12C, 0x13D, 0x13C\n#_0FC410: dw $513B, $113B, $112F, $112F ; tile882: 0x13B, 0x13B, 0x12F, 0x12F\n#_0FC418: dw $112C, $512D, $113C, $513D ; tile883: 0x12C, 0x12D, 0x13C, 0x13D\n#_0FC420: dw $1D75, $1D75, $1D75, $1D75 ; tile884: 0x175, 0x175, 0x175, 0x175\n#_0FC428: dw $0895, $4895, $09A4, $49A4 ; tile885: 0x095, 0x095, 0x1A4, 0x1A4\n#_0FC430: dw $0DD2, $1D65, $1D65, $1D65 ; tile886: 0x1D2, 0x165, 0x165, 0x165\n#_0FC438: dw $1D65, $0DC9, $0DC9, $1D75 ; tile887: 0x165, 0x1C9, 0x1C9, 0x175\n#_0FC440: dw $0DCD, $112D, $0DC7, $113D ; tile888: 0x1CD, 0x12D, 0x1C7, 0x13D\n#_0FC448: dw $0DC8, $4DC8, $1D75, $1D75 ; tile889: 0x1C8, 0x1C8, 0x175, 0x175\n#_0FC450: dw $0DC8, $4DC8, $0DC6, $4DC6 ; tile88A: 0x1C8, 0x1C8, 0x1C6, 0x1C6\n#_0FC458: dw $4DC7, $1D75, $113D, $4DC7 ; tile88B: 0x1C7, 0x175, 0x13D, 0x1C7\n#_0FC460: dw $0DD0, $0DD1, $1D65, $1D65 ; tile88C: 0x1D0, 0x1D1, 0x165, 0x165\n#_0FC468: dw $1D28, $1D43, $1D38, $1D53 ; tile88D: 0x128, 0x143, 0x138, 0x153\n#_0FC470: dw $5D43, $5D28, $5D53, $5D38 ; tile88E: 0x143, 0x128, 0x153, 0x138\n#_0FC478: dw $1D75, $1D75, $0DC6, $4DC6 ; tile88F: 0x175, 0x175, 0x1C6, 0x1C6\n#_0FC480: dw $1D29, $1D63, $1D39, $1D35 ; tile890: 0x129, 0x163, 0x139, 0x135\n#_0FC488: dw $5D63, $5D29, $5D35, $5D39 ; tile891: 0x163, 0x129, 0x135, 0x139\n#_0FC490: dw $4894, $086D, $09A4, $485C ; tile892: 0x094, 0x06D, 0x1A4, 0x05C\n#_0FC498: dw $089C, $08BA, $08BA, $08BA ; tile893: 0x09C, 0x0BA, 0x0BA, 0x0BA\n#_0FC4A0: dw $086D, $0894, $085C, $49A4 ; tile894: 0x06D, 0x094, 0x05C, 0x1A4\n#_0FC4A8: dw $112D, $4DCB, $113D, $4DCC ; tile895: 0x12D, 0x1CB, 0x13D, 0x1CC\n#_0FC4B0: dw $1961, $1902, $1961, $1902 ; tile896: 0x161, 0x102, 0x161, 0x102\n#_0FC4B8: dw $1902, $3961, $1902, $3961 ; tile897: 0x102, 0x161, 0x102, 0x161\n#_0FC4C0: dw $3960, $3960, $3940, $3940 ; tile898: 0x160, 0x160, 0x140, 0x140\n#_0FC4C8: dw $3960, $3964, $3940, $3941 ; tile899: 0x160, 0x164, 0x140, 0x141\n#_0FC4D0: dw $3970, $3971, $3940, $3941 ; tile89A: 0x170, 0x171, 0x140, 0x141\n#_0FC4D8: dw $7951, $7960, $7941, $7940 ; tile89B: 0x151, 0x160, 0x141, 0x140\n#_0FC4E0: dw $3920, $3921, $3970, $3971 ; tile89C: 0x120, 0x121, 0x170, 0x171\n#_0FC4E8: dw $7921, $3921, $7971, $7970 ; tile89D: 0x121, 0x121, 0x171, 0x170\n#_0FC4F0: dw $7921, $3921, $3970, $3971 ; tile89E: 0x121, 0x121, 0x170, 0x171\n#_0FC4F8: dw $7921, $7920, $7971, $7970 ; tile89F: 0x121, 0x120, 0x171, 0x170\n#_0FC500: dw $3960, $3951, $3940, $3941 ; tile8A0: 0x160, 0x151, 0x140, 0x141\n#_0FC508: dw $7971, $7970, $7941, $7940 ; tile8A1: 0x171, 0x170, 0x141, 0x140\n#_0FC510: dw $7960, $7960, $7940, $7940 ; tile8A2: 0x160, 0x160, 0x140, 0x140\n#_0FC518: dw $7961, $5902, $7961, $5902 ; tile8A3: 0x161, 0x102, 0x161, 0x102\n#_0FC520: dw $5902, $7961, $5902, $7961 ; tile8A4: 0x102, 0x161, 0x102, 0x161\n#_0FC528: dw $1902, $3910, $1902, $3910 ; tile8A5: 0x102, 0x110, 0x102, 0x110\n#_0FC530: dw $3950, $3960, $3900, $3940 ; tile8A6: 0x150, 0x160, 0x100, 0x140\n#_0FC538: dw $3903, $3901, $3920, $3921 ; tile8A7: 0x103, 0x101, 0x120, 0x121\n#_0FC540: dw $7901, $7903, $7921, $7920 ; tile8A8: 0x101, 0x103, 0x121, 0x120\n#_0FC548: dw $7960, $7950, $7940, $7900 ; tile8A9: 0x160, 0x150, 0x140, 0x100\n#_0FC550: dw $7910, $5902, $7910, $5902 ; tile8AA: 0x110, 0x102, 0x110, 0x102\n#_0FC558: dw $1920, $1921, $1930, $1931 ; tile8AB: 0x120, 0x121, 0x130, 0x131\n#_0FC560: dw $1922, $1920, $1910, $1930 ; tile8AC: 0x122, 0x120, 0x110, 0x130\n#_0FC568: dw $3922, $3950, $3910, $3900 ; tile8AD: 0x122, 0x150, 0x110, 0x100\n#_0FC570: dw $7964, $7960, $7941, $7940 ; tile8AE: 0x164, 0x160, 0x141, 0x140\n#_0FC578: dw $3960, $3951, $3903, $3901 ; tile8AF: 0x160, 0x151, 0x103, 0x101\n#_0FC580: dw $7951, $7960, $7901, $7900 ; tile8B0: 0x151, 0x160, 0x101, 0x100\n#_0FC588: dw $3950, $3951, $3900, $3901 ; tile8B1: 0x150, 0x151, 0x100, 0x101\n#_0FC590: dw $7951, $7950, $7901, $7900 ; tile8B2: 0x151, 0x150, 0x101, 0x100\n#_0FC598: dw $3960, $3951, $3900, $3901 ; tile8B3: 0x160, 0x151, 0x100, 0x101\n#_0FC5A0: dw $7964, $7960, $7901, $7903 ; tile8B4: 0x164, 0x160, 0x101, 0x103\n#_0FC5A8: dw $7950, $7922, $7900, $7910 ; tile8B5: 0x150, 0x122, 0x100, 0x110\n#_0FC5B0: dw $5920, $5922, $5930, $5910 ; tile8B6: 0x120, 0x122, 0x130, 0x110\n#_0FC5B8: dw $5921, $5920, $5931, $5930 ; tile8B7: 0x121, 0x120, 0x131, 0x130\n#_0FC5C0: dw $1910, $1900, $1910, $1911 ; tile8B8: 0x110, 0x100, 0x110, 0x111\n#_0FC5C8: dw $3920, $3922, $3930, $3910 ; tile8B9: 0x120, 0x122, 0x130, 0x110\n#_0FC5D0: dw $3920, $3921, $3930, $3931 ; tile8BA: 0x120, 0x121, 0x130, 0x131\n#_0FC5D8: dw $7921, $3921, $7931, $3931 ; tile8BB: 0x121, 0x121, 0x131, 0x131\n#_0FC5E0: dw $7921, $7920, $7931, $7930 ; tile8BC: 0x121, 0x120, 0x131, 0x130\n#_0FC5E8: dw $7922, $7920, $7910, $7930 ; tile8BD: 0x122, 0x120, 0x110, 0x130\n#_0FC5F0: dw $5900, $5910, $5911, $5910 ; tile8BE: 0x100, 0x110, 0x111, 0x110\n#_0FC5F8: dw $1920, $1922, $1930, $1910 ; tile8BF: 0x120, 0x122, 0x130, 0x110\n#_0FC600: dw $1940, $3920, $1950, $3930 ; tile8C0: 0x140, 0x120, 0x150, 0x130\n#_0FC608: dw $3921, $3922, $3931, $3910 ; tile8C1: 0x121, 0x122, 0x131, 0x110\n#_0FC610: dw $1942, $191A, $1952, $1946 ; tile8C2: 0x142, 0x11A, 0x152, 0x146\n#_0FC618: dw $591A, $5942, $5946, $5952 ; tile8C3: 0x11A, 0x142, 0x146, 0x152\n#_0FC620: dw $1932, $18FE, $1934, $18FE ; tile8C4: 0x132, 0x0FE, 0x134, 0x0FE\n#_0FC628: dw $58FE, $5932, $58FE, $5934 ; tile8C5: 0x0FE, 0x132, 0x0FE, 0x134\n#_0FC630: dw $7922, $7921, $7910, $7931 ; tile8C6: 0x122, 0x121, 0x110, 0x131\n#_0FC638: dw $7920, $5940, $7930, $5950 ; tile8C7: 0x120, 0x140, 0x130, 0x150\n#_0FC640: dw $5922, $5920, $5910, $5930 ; tile8C8: 0x122, 0x120, 0x110, 0x130\n#_0FC648: dw $1D06, $1D06, $1D0D, $5D0D ; tile8C9: 0x106, 0x106, 0x10D, 0x10D\n#_0FC650: dw $5D14, $0896, $5D0D, $48A8 ; tile8CA: 0x114, 0x096, 0x10D, 0x0A8\n#_0FC658: dw $08AA, $1910, $08AA, $1910 ; tile8CB: 0x0AA, 0x110, 0x0AA, 0x110\n#_0FC660: dw $1900, $1970, $1911, $1960 ; tile8CC: 0x100, 0x170, 0x111, 0x160\n#_0FC668: dw $1970, $3920, $1940, $3930 ; tile8CD: 0x170, 0x120, 0x140, 0x130\n#_0FC670: dw $3950, $3964, $3900, $3901 ; tile8CE: 0x150, 0x164, 0x100, 0x101\n#_0FC678: dw $1962, $1947, $1972, $1973 ; tile8CF: 0x162, 0x147, 0x172, 0x173\n#_0FC680: dw $5947, $5962, $5973, $5972 ; tile8D0: 0x147, 0x162, 0x173, 0x172\n#_0FC688: dw $1933, $190B, $1933, $191B ; tile8D1: 0x133, 0x10B, 0x133, 0x11B\n#_0FC690: dw $590B, $5933, $591B, $5933 ; tile8D2: 0x10B, 0x133, 0x11B, 0x133\n#_0FC698: dw $5920, $5970, $5930, $5940 ; tile8D3: 0x120, 0x170, 0x130, 0x140\n#_0FC6A0: dw $5970, $5900, $5960, $5911 ; tile8D4: 0x170, 0x100, 0x160, 0x111\n#_0FC6A8: dw $5910, $08AA, $5910, $08AA ; tile8D5: 0x110, 0x0AA, 0x110, 0x0AA\n#_0FC6B0: dw $48AA, $48AA, $5D15, $0887 ; tile8D6: 0x0AA, 0x0AA, 0x115, 0x087\n#_0FC6B8: dw $1911, $1940, $1911, $1950 ; tile8D7: 0x111, 0x140, 0x111, 0x150\n#_0FC6C0: dw $1960, $1951, $1940, $1941 ; tile8D8: 0x160, 0x151, 0x140, 0x141\n#_0FC6C8: dw $3911, $3911, $3911, $3911 ; tile8D9: 0x111, 0x111, 0x111, 0x111\n#_0FC6D0: dw $3911, $7910, $3911, $3912 ; tile8DA: 0x111, 0x110, 0x111, 0x112\n#_0FC6D8: dw $1933, $191B, $3913, $393F ; tile8DB: 0x133, 0x11B, 0x113, 0x13F\n#_0FC6E0: dw $591B, $5933, $793F, $7913 ; tile8DC: 0x11B, 0x133, 0x13F, 0x113\n#_0FC6E8: dw $3910, $7911, $7912, $7911 ; tile8DD: 0x110, 0x111, 0x112, 0x111\n#_0FC6F0: dw $7911, $7911, $7911, $7911 ; tile8DE: 0x111, 0x111, 0x111, 0x111\n#_0FC6F8: dw $7920, $5970, $7930, $5940 ; tile8DF: 0x120, 0x170, 0x130, 0x140\n#_0FC700: dw $5951, $5960, $5941, $5940 ; tile8E0: 0x151, 0x160, 0x141, 0x140\n#_0FC708: dw $5940, $5911, $5950, $5911 ; tile8E1: 0x140, 0x111, 0x150, 0x111\n#_0FC710: dw $1D16, $5D16, $4DCB, $4DD4 ; tile8E2: 0x116, 0x116, 0x1CB, 0x1D4\n#_0FC718: dw $1D16, $5D16, $49F2, $4874 ; tile8E3: 0x116, 0x116, 0x1F2, 0x074\n#_0FC720: dw $C84F, $48A4, $484F, $48B4 ; tile8E4: 0x04F, 0x0A4, 0x04F, 0x0B4\n#_0FC728: dw $08AA, $1910, $08AA, $1920 ; tile8E5: 0x0AA, 0x110, 0x0AA, 0x120\n#_0FC730: dw $1911, $1900, $1921, $1922 ; tile8E6: 0x111, 0x100, 0x121, 0x122\n#_0FC738: dw $1970, $3920, $1960, $3930 ; tile8E7: 0x170, 0x120, 0x160, 0x130\n#_0FC740: dw $3921, $7921, $3931, $7931 ; tile8E8: 0x121, 0x121, 0x131, 0x131\n#_0FC748: dw $3921, $792E, $3931, $793E ; tile8E9: 0x121, 0x12E, 0x131, 0x13E\n#_0FC750: dw $392E, $7921, $393E, $7931 ; tile8EA: 0x12E, 0x121, 0x13E, 0x131\n#_0FC758: dw $7920, $5970, $7930, $5960 ; tile8EB: 0x120, 0x170, 0x130, 0x160\n#_0FC760: dw $5900, $5911, $5922, $5921 ; tile8EC: 0x100, 0x111, 0x122, 0x121\n#_0FC768: dw $5910, $08AA, $5920, $08AA ; tile8ED: 0x110, 0x0AA, 0x120, 0x0AA\n#_0FC770: dw $08AA, $1930, $08AA, $08AA ; tile8EE: 0x0AA, 0x130, 0x0AA, 0x0AA\n#_0FC778: dw $1931, $1910, $08AA, $1910 ; tile8EF: 0x131, 0x110, 0x0AA, 0x110\n#_0FC780: dw $1950, $1951, $1900, $1901 ; tile8F0: 0x150, 0x151, 0x100, 0x101\n#_0FC788: dw $1940, $1971, $1960, $1964 ; tile8F1: 0x140, 0x171, 0x160, 0x164\n#_0FC790: dw $5971, $5970, $5951, $5960 ; tile8F2: 0x171, 0x170, 0x151, 0x160\n#_0FC798: dw $18FE, $18FE, $18FE, $18FE ; tile8F3: 0x0FE, 0x0FE, 0x0FE, 0x0FE\n#_0FC7A0: dw $1970, $1971, $1960, $1951 ; tile8F4: 0x170, 0x171, 0x160, 0x151\n#_0FC7A8: dw $5971, $5940, $5951, $5960 ; tile8F5: 0x171, 0x140, 0x151, 0x160\n#_0FC7B0: dw $5964, $5960, $5941, $5940 ; tile8F6: 0x164, 0x160, 0x141, 0x140\n#_0FC7B8: dw $5951, $5950, $5901, $5900 ; tile8F7: 0x151, 0x150, 0x101, 0x100\n#_0FC7C0: dw $5910, $5931, $5910, $08AA ; tile8F8: 0x110, 0x131, 0x110, 0x0AA\n#_0FC7C8: dw $5930, $08AA, $08AA, $08AA ; tile8F9: 0x130, 0x0AA, 0x0AA, 0x0AA\n#_0FC7D0: dw $08AA, $1920, $08AA, $1930 ; tile8FA: 0x0AA, 0x120, 0x0AA, 0x130\n#_0FC7D8: dw $1921, $1922, $1931, $1910 ; tile8FB: 0x121, 0x122, 0x131, 0x110\n#_0FC7E0: dw $1960, $1951, $1960, $1951 ; tile8FC: 0x160, 0x151, 0x160, 0x151\n#_0FC7E8: dw $5951, $5960, $5951, $5960 ; tile8FD: 0x151, 0x160, 0x151, 0x160\n#_0FC7F0: dw $5922, $5921, $5910, $5931 ; tile8FE: 0x122, 0x121, 0x110, 0x131\n#_0FC7F8: dw $5920, $08AA, $5930, $08AA ; tile8FF: 0x120, 0x0AA, 0x130, 0x0AA\n#_0FC800: dw $1921, $1922, $1931, $1920 ; tile900: 0x121, 0x122, 0x131, 0x120\n#_0FC808: dw $1900, $1901, $1921, $5921 ; tile901: 0x100, 0x101, 0x121, 0x121\n#_0FC810: dw $5901, $5900, $1921, $1922 ; tile902: 0x101, 0x100, 0x121, 0x122\n#_0FC818: dw $1900, $1901, $5922, $5921 ; tile903: 0x100, 0x101, 0x122, 0x121\n#_0FC820: dw $5901, $5900, $1921, $5921 ; tile904: 0x101, 0x100, 0x121, 0x121\n#_0FC828: dw $5922, $5921, $5920, $5931 ; tile905: 0x122, 0x121, 0x120, 0x131\n#_0FC830: dw $1931, $5931, $08AA, $08AA ; tile906: 0x131, 0x131, 0x0AA, 0x0AA\n#_0FC838: dw $1931, $1920, $08AA, $1930 ; tile907: 0x131, 0x120, 0x0AA, 0x130\n#_0FC840: dw $1921, $5921, $1931, $5931 ; tile908: 0x121, 0x121, 0x131, 0x131\n#_0FC848: dw $5920, $5931, $5930, $08AA ; tile909: 0x120, 0x131, 0x130, 0x0AA\n#_0FC850: dw $512D, $5DCB, $5DCB, $1165 ; tile90A: 0x12D, 0x1CB, 0x1CB, 0x165\n#_0FC858: dw $1DCA, $5DCA, $1165, $1165 ; tile90B: 0x1CA, 0x1CA, 0x165, 0x165\n#_0FC860: dw $112D, $512D, $113D, $513C ; tile90C: 0x12D, 0x12D, 0x13D, 0x13C\n#_0FC868: dw $512D, $4DCD, $513D, $4DC7 ; tile90D: 0x12D, 0x1CD, 0x13D, 0x1C7\n#_0FC870: dw $112B, $512B, $113C, $513C ; tile90E: 0x12B, 0x12B, 0x13C, 0x13C\n#_0FC878: dw $113B, $513B, $112F, $112F ; tile90F: 0x13B, 0x13B, 0x12F, 0x12F\n#_0FC880: dw $112D, $512B, $113D, $513D ; tile910: 0x12D, 0x12B, 0x13D, 0x13D\n#_0FC888: dw $112B, $512B, $113D, $513D ; tile911: 0x12B, 0x12B, 0x13D, 0x13D\n#_0FC890: dw $112B, $512D, $113D, $513D ; tile912: 0x12B, 0x12D, 0x13D, 0x13D\n#_0FC898: dw $4896, $0897, $08A8, $1D0D ; tile913: 0x096, 0x097, 0x0A8, 0x10D\n#_0FC8A0: dw $1D16, $5D16, $0874, $09F2 ; tile914: 0x116, 0x116, 0x074, 0x1F2\n#_0FC8A8: dw $1D16, $5D16, $0DD4, $0DCB ; tile915: 0x116, 0x116, 0x1D4, 0x1CB\n#_0FC8B0: dw $1D16, $5D0E, $513D, $113D ; tile916: 0x116, 0x10E, 0x13D, 0x13D\n#_0FC8B8: dw $1D0E, $1D16, $513D, $513D ; tile917: 0x10E, 0x116, 0x13D, 0x13D\n#_0FC8C0: dw $09AD, $09AE, $09BD, $08FE ; tile918: 0x1AD, 0x1AE, 0x1BD, 0x0FE\n#_0FC8C8: dw $49AE, $49AD, $48FE, $49BD ; tile919: 0x1AE, 0x1AD, 0x0FE, 0x1BD\n#_0FC8D0: dw $09BE, $09BC, $898E, $89BA ; tile91A: 0x1BE, 0x1BC, 0x18E, 0x1BA\n#_0FC8D8: dw $49BC, $49BE, $C9BA, $C98E ; tile91B: 0x1BC, 0x1BE, 0x1BA, 0x18E\n#_0FC8E0: dw $1D75, $1D75, $8DC8, $CDC8 ; tile91C: 0x175, 0x175, 0x1C8, 0x1C8\n#_0FC8E8: dw $4DC9, $1D65, $CDC9, $1D65 ; tile91D: 0x1C9, 0x165, 0x1C9, 0x165\n#_0FC8F0: dw $1DC8, $5DC8, $1175, $1175 ; tile91E: 0x1C8, 0x1C8, 0x175, 0x175\n#_0FC8F8: dw $112D, $512D, $113C, $513C ; tile91F: 0x12D, 0x12D, 0x13C, 0x13C\n#_0FC900: dw $1175, $DDC9, $DDC9, $1165 ; tile920: 0x175, 0x1C9, 0x1C9, 0x165\n#_0FC908: dw $08AA, $090F, $08AA, $0924 ; tile921: 0x0AA, 0x10F, 0x0AA, 0x124\n#_0FC910: dw $490F, $08AA, $4924, $08AA ; tile922: 0x10F, 0x0AA, 0x124, 0x0AA\n#_0FC918: dw $08BE, $0920, $08BF, $0930 ; tile923: 0x0BE, 0x120, 0x0BF, 0x130\n#_0FC920: dw $4920, $48BE, $4930, $08BF ; tile924: 0x120, 0x0BE, 0x130, 0x0BF\n#_0FC928: dw $0880, $0925, $0890, $0935 ; tile925: 0x080, 0x125, 0x090, 0x135\n#_0FC930: dw $4925, $0881, $4935, $0891 ; tile926: 0x125, 0x081, 0x135, 0x091\n#_0FC938: dw $08AA, $08AA, $0957, $890B ; tile927: 0x0AA, 0x0AA, 0x157, 0x10B\n#_0FC940: dw $48AA, $08AA, $C90B, $4957 ; tile928: 0x0AA, 0x0AA, 0x10B, 0x157\n#_0FC948: dw $0956, $091E, $0956, $C91F ; tile929: 0x156, 0x11E, 0x156, 0x11F\n#_0FC950: dw $091F, $4956, $C91E, $4956 ; tile92A: 0x11F, 0x156, 0x11E, 0x156\n#_0FC958: dw $0918, $0909, $0966, $0967 ; tile92B: 0x118, 0x109, 0x166, 0x167\n#_0FC960: dw $4909, $4918, $4967, $4966 ; tile92C: 0x109, 0x118, 0x167, 0x166\n#_0FC968: dw $4853, $4842, $4908, $4907 ; tile92D: 0x053, 0x042, 0x108, 0x107\n#_0FC970: dw $4873, $4862, $4906, $4872 ; tile92E: 0x073, 0x062, 0x106, 0x072\n#_0FC978: dw $0862, $0873, $0872, $0906 ; tile92F: 0x062, 0x073, 0x072, 0x106\n#_0FC980: dw $0842, $0853, $0907, $0908 ; tile930: 0x042, 0x053, 0x107, 0x108\n#_0FC988: dw $48AA, $4919, $48AA, $0926 ; tile931: 0x0AA, 0x119, 0x0AA, 0x126\n#_0FC990: dw $0917, $4917, $0927, $4927 ; tile932: 0x117, 0x117, 0x127, 0x127\n#_0FC998: dw $4916, $4842, $4926, $4852 ; tile933: 0x116, 0x042, 0x126, 0x052\n#_0FC9A0: dw $390A, $3921, $392A, $3931 ; tile934: 0x10A, 0x121, 0x12A, 0x131\n#_0FC9A8: dw $7921, $394E, $7931, $395E ; tile935: 0x121, 0x14E, 0x131, 0x15E\n#_0FC9B0: dw $794E, $3921, $795E, $3931 ; tile936: 0x14E, 0x121, 0x15E, 0x131\n#_0FC9B8: dw $7921, $790A, $7931, $792A ; tile937: 0x121, 0x10A, 0x131, 0x12A\n#_0FC9C0: dw $0842, $0916, $0852, $0926 ; tile938: 0x042, 0x116, 0x052, 0x126\n#_0FC9C8: dw $0919, $08AA, $4926, $08AA ; tile939: 0x119, 0x0AA, 0x126, 0x0AA\n#_0FC9D0: dw $48AA, $4929, $48AA, $091C ; tile93A: 0x0AA, 0x129, 0x0AA, 0x11C\n#_0FC9D8: dw $4928, $0928, $091D, $491D ; tile93B: 0x128, 0x128, 0x11D, 0x11D\n#_0FC9E0: dw $0929, $4862, $491C, $48A0 ; tile93C: 0x129, 0x062, 0x11C, 0x0A0\n#_0FC9E8: dw $192A, $1900, $192A, $1910 ; tile93D: 0x12A, 0x100, 0x12A, 0x110\n#_0FC9F0: dw $1901, $1902, $1911, $1912 ; tile93E: 0x101, 0x102, 0x111, 0x112\n#_0FC9F8: dw $5902, $5901, $5912, $5911 ; tile93F: 0x102, 0x101, 0x112, 0x111\n#_0FCA00: dw $5900, $592A, $5910, $592A ; tile940: 0x100, 0x12A, 0x110, 0x12A\n#_0FCA08: dw $0862, $4929, $08A0, $091C ; tile941: 0x062, 0x129, 0x0A0, 0x11C\n#_0FCA10: dw $0929, $08AA, $491C, $08AA ; tile942: 0x129, 0x0AA, 0x11C, 0x0AA\n#_0FCA18: dw $192A, $1903, $193A, $1913 ; tile943: 0x12A, 0x103, 0x13A, 0x113\n#_0FCA20: dw $1904, $1905, $1914, $1915 ; tile944: 0x104, 0x105, 0x114, 0x115\n#_0FCA28: dw $5905, $5904, $5915, $5914 ; tile945: 0x105, 0x104, 0x115, 0x114\n#_0FCA30: dw $5903, $592A, $5913, $593A ; tile946: 0x103, 0x12A, 0x113, 0x13A\n#_0FCA38: dw $08AA, $190C, $08AA, $08AA ; tile947: 0x0AA, 0x10C, 0x0AA, 0x0AA\n#_0FCA40: dw $190D, $190E, $08AA, $08AA ; tile948: 0x10D, 0x10E, 0x0AA, 0x0AA\n#_0FCA48: dw $590E, $590D, $08AA, $08AA ; tile949: 0x10E, 0x10D, 0x0AA, 0x0AA\n#_0FCA50: dw $590C, $08AA, $08AA, $08AA ; tile94A: 0x10C, 0x0AA, 0x0AA, 0x0AA\n#_0FCA58: dw $1D5D, $1D3C, $1D3C, $1D5D ; tile94B: 0x15D, 0x13C, 0x13C, 0x15D\n#_0FCA60: dw $1911, $3951, $1921, $3961 ; tile94C: 0x111, 0x151, 0x121, 0x161\n#_0FCA68: dw $7951, $5911, $7961, $5921 ; tile94D: 0x151, 0x111, 0x161, 0x121\n#_0FCA70: dw $1D3C, $1D5D, $5D5D, $1D3C ; tile94E: 0x13C, 0x15D, 0x15D, 0x13C\n#_0FCA78: dw $1910, $192E, $1D3C, $193E ; tile94F: 0x110, 0x12E, 0x13C, 0x13E\n#_0FCA80: dw $592E, $5910, $593E, $1D3C ; tile950: 0x12E, 0x110, 0x13E, 0x13C\n#_0FCA88: dw $3C2F, $3C30, $303F, $3C03 ; tile951: 0x02F, 0x030, 0x03F, 0x003\n#_0FCA90: dw $1C29, $5954, $1901, $1941 ; tile952: 0x029, 0x154, 0x101, 0x141\n#_0FCA98: dw $1954, $5C29, $5941, $5901 ; tile953: 0x154, 0x029, 0x141, 0x101\n#_0FCAA0: dw $1D3C, $1D3C, $1D3C, $3C0E ; tile954: 0x13C, 0x13C, 0x13C, 0x00E\n#_0FCAA8: dw $3C3C, $3C3D, $3C00, $3C01 ; tile955: 0x03C, 0x03D, 0x000, 0x001\n#_0FCAB0: dw $1D09, $5D09, $1D19, $5D19 ; tile956: 0x109, 0x109, 0x119, 0x119\n#_0FCAB8: dw $1D3C, $3C0F, $1D3C, $3C1F ; tile957: 0x13C, 0x00F, 0x13C, 0x01F\n#_0FCAC0: dw $1D08, $5D08, $1D38, $5D38 ; tile958: 0x108, 0x108, 0x138, 0x138\n#_0FCAC8: dw $1D3C, $3C2F, $1D3C, $3C3F ; tile959: 0x13C, 0x02F, 0x13C, 0x03F\n#_0FCAD0: dw $1D3C, $1D3C, $1D3C, $5D5D ; tile95A: 0x13C, 0x13C, 0x13C, 0x15D\n#_0FCAD8: dw $5D37, $5D08, $5D37, $5D18 ; tile95B: 0x137, 0x108, 0x137, 0x118\n#_0FCAE0: dw $5D05, $5D28, $5D09, $5D18 ; tile95C: 0x105, 0x128, 0x109, 0x118\n#_0FCAE8: dw $488C, $1D3C, $489C, $488C ; tile95D: 0x08C, 0x13C, 0x09C, 0x08C\n#_0FCAF0: dw $888C, $889E, $1D3C, $1D3C ; tile95E: 0x08C, 0x09E, 0x13C, 0x13C\n#_0FCAF8: dw $1D05, $1D43, $1D36, $1D37 ; tile95F: 0x105, 0x143, 0x136, 0x137\n#_0FCB00: dw $5D43, $5D05, $5D37, $1D36 ; tile960: 0x143, 0x105, 0x137, 0x136\n#_0FCB08: dw $1D38, $1D37, $1D37, $1D68 ; tile961: 0x138, 0x137, 0x137, 0x168\n#_0FCB10: dw $1C29, $3C17, $1C0D, $3C1F ; tile962: 0x029, 0x017, 0x00D, 0x01F\n#_0FCB18: dw $5C1D, $1D3C, $5C1E, $1D3C ; tile963: 0x01D, 0x13C, 0x01E, 0x13C\n#_0FCB20: dw $904E, $10BA, $104E, $10BA ; tile964: 0x04E, 0x0BA, 0x04E, 0x0BA\n#_0FCB28: dw $5066, $5064, $5076, $5074 ; tile965: 0x066, 0x064, 0x076, 0x074\n#_0FCB30: dw $D0BA, $10BA, $90BA, $D0BA ; tile966: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FCB38: dw $1059, $08BA, $08A7, $48A7 ; tile967: 0x059, 0x0BA, 0x0A7, 0x0A7\n#_0FCB40: dw $105B, $1079, $5043, $105B ; tile968: 0x05B, 0x079, 0x043, 0x05B\n#_0FCB48: dw $10BA, $10BA, $105C, $505C ; tile969: 0x0BA, 0x0BA, 0x05C, 0x05C\n#_0FCB50: dw $10BA, $10BA, $1079, $10BA ; tile96A: 0x0BA, 0x0BA, 0x079, 0x0BA\n#_0FCB58: dw $5066, $5048, $5076, $4852 ; tile96B: 0x066, 0x048, 0x076, 0x052\n#_0FCB60: dw $50A8, $08BA, $08BA, $08BA ; tile96C: 0x0A8, 0x0BA, 0x0BA, 0x0BA\n#_0FCB68: dw $50A1, $5062, $10BA, $50A0 ; tile96D: 0x0A1, 0x062, 0x0BA, 0x0A0\n#_0FCB70: dw $8C4E, $50A4, $0C4E, $50B4 ; tile96E: 0x04E, 0x0A4, 0x04E, 0x0B4\n#_0FCB78: dw $08BA, $08BA, $10B8, $08BA ; tile96F: 0x0BA, 0x0BA, 0x0B8, 0x0BA\n#_0FCB80: dw $1087, $10B8, $0897, $1087 ; tile970: 0x087, 0x0B8, 0x097, 0x087\n#_0FCB88: dw $48BA, $48BA, $48BA, $1084 ; tile971: 0x0BA, 0x0BA, 0x0BA, 0x084\n#_0FCB90: dw $08BA, $08BA, $1085, $5085 ; tile972: 0x0BA, 0x0BA, 0x085, 0x085\n#_0FCB98: dw $5094, $08BA, $085C, $485C ; tile973: 0x094, 0x0BA, 0x05C, 0x05C\n#_0FCBA0: dw $08BA, $1094, $085C, $485C ; tile974: 0x0BA, 0x094, 0x05C, 0x05C\n#_0FCBA8: dw $086C, $087C, $087C, $14AA ; tile975: 0x06C, 0x07C, 0x07C, 0x0AA\n#_0FCBB0: dw $4DFF, $0D6F, $0D6F, $CD7A ; tile976: 0x1FF, 0x16F, 0x16F, 0x17A\n#_0FCBB8: dw $CD7A, $4DFF, $4DFF, $4DFF ; tile977: 0x17A, 0x1FF, 0x1FF, 0x1FF\n#_0FCBC0: dw $4D7E, $4D7D, $4D7D, $4D6F ; tile978: 0x17E, 0x17D, 0x17D, 0x16F\n#_0FCBC8: dw $4D6F, $0DFF, $4D7F, $0DFF ; tile979: 0x16F, 0x1FF, 0x17F, 0x1FF\n#_0FCBD0: dw $4D6F, $0DFF, $8D7A, $4D6F ; tile97A: 0x16F, 0x1FF, 0x17A, 0x16F\n#_0FCBD8: dw $8D7A, $8D7D, $4DFF, $0D7D ; tile97B: 0x17A, 0x17D, 0x1FF, 0x17D\n#_0FCBE0: dw $4DFF, $4DFF, $0D7E, $4DFF ; tile97C: 0x1FF, 0x1FF, 0x17E, 0x1FF\n#_0FCBE8: dw $0DFF, $8D7A, $0DFF, $0DFF ; tile97D: 0x1FF, 0x17A, 0x1FF, 0x1FF\n#_0FCBF0: dw $8D7A, $4D6F, $0DFF, $0D7D ; tile97E: 0x17A, 0x16F, 0x1FF, 0x17D\n#_0FCBF8: dw $0DFF, $0DFF, $0D7E, $0DFF ; tile97F: 0x1FF, 0x1FF, 0x17E, 0x1FF\n#_0FCC00: dw $0DFF, $0DFF, $0D6E, $0DFF ; tile980: 0x1FF, 0x1FF, 0x16E, 0x1FF\n#_0FCC08: dw $0DFF, $0D7D, $0DFF, $0DFF ; tile981: 0x1FF, 0x17D, 0x1FF, 0x1FF\n#_0FCC10: dw $8D7A, $0D6E, $0DFF, $8D7A ; tile982: 0x17A, 0x16E, 0x1FF, 0x17A\n#_0FCC18: dw $4D7A, $4DFF, $4D7D, $4D6F ; tile983: 0x17A, 0x1FF, 0x17D, 0x16F\n#_0FCC20: dw $0DFF, $8D6F, $0DFF, $0DFF ; tile984: 0x1FF, 0x16F, 0x1FF, 0x1FF\n#_0FCC28: dw $0D6F, $CD7A, $4D7D, $0DFF ; tile985: 0x16F, 0x17A, 0x17D, 0x1FF\n#_0FCC30: dw $4DFF, $4DFF, $4DFF, $4DFF ; tile986: 0x1FF, 0x1FF, 0x1FF, 0x1FF\n#_0FCC38: dw $4DFF, $0D7D, $4DFF, $8D6F ; tile987: 0x1FF, 0x17D, 0x1FF, 0x16F\n#_0FCC40: dw $0D7E, $4DFF, $4D7F, $0DFF ; tile988: 0x17E, 0x1FF, 0x17F, 0x1FF\n#_0FCC48: dw $CD7D, $CD7A, $4D7D, $0DFF ; tile989: 0x17D, 0x17A, 0x17D, 0x1FF\n#_0FCC50: dw $CD6F, $4DFF, $4DFF, $4DFF ; tile98A: 0x16F, 0x1FF, 0x1FF, 0x1FF\n#_0FCC58: dw $0D6F, $CD7A, $4D7D, $8D6E ; tile98B: 0x16F, 0x17A, 0x17D, 0x16E\n#_0FCC60: dw $0DFF, $4D7E, $0DFF, $0D7F ; tile98C: 0x1FF, 0x17E, 0x1FF, 0x17F\n#_0FCC68: dw $4D7D, $0DFF, $CD6F, $0DFF ; tile98D: 0x17D, 0x1FF, 0x16F, 0x1FF\n#_0FCC70: dw $4DFF, $4D1F, $4DFF, $4DFF ; tile98E: 0x1FF, 0x11F, 0x1FF, 0x1FF\n#_0FCC78: dw $8D7A, $4D6F, $4DFF, $0D7D ; tile98F: 0x17A, 0x16F, 0x1FF, 0x17D\n#_0FCC80: dw $4D7D, $4D6F, $4DFF, $0D7D ; tile990: 0x17D, 0x16F, 0x1FF, 0x17D\n#_0FCC88: dw $4DFF, $0D6F, $4DFF, $0D7F ; tile991: 0x1FF, 0x16F, 0x1FF, 0x17F\n#_0FCC90: dw $0D7D, $0D7E, $0D6F, $0D7D ; tile992: 0x17D, 0x17E, 0x16F, 0x17D\n#_0FCC98: dw $0D7A, $8D7F, $CD6F, $4DFF ; tile993: 0x17A, 0x17F, 0x16F, 0x1FF\n#_0FCCA0: dw $0DFF, $0DFF, $0DFF, $CD1F ; tile994: 0x1FF, 0x1FF, 0x1FF, 0x11F\n#_0FCCA8: dw $0DFF, $0D7A, $0D6F, $0D7D ; tile995: 0x1FF, 0x17A, 0x16F, 0x17D\n#_0FCCB0: dw $0D6F, $0D7D, $4D7D, $0DFF ; tile996: 0x16F, 0x17D, 0x17D, 0x1FF\n#_0FCCB8: dw $4DFF, $8D6F, $4DFF, $4D7E ; tile997: 0x1FF, 0x16F, 0x1FF, 0x17E\n#_0FCCC0: dw $4DFF, $4DFF, $4DFF, $4D7E ; tile998: 0x1FF, 0x1FF, 0x1FF, 0x17E\n#_0FCCC8: dw $0D6F, $CD7A, $4D7D, $4DFF ; tile999: 0x16F, 0x17A, 0x17D, 0x1FF\n#_0FCCD0: dw $0DFF, $0DFF, $0DFF, $4D7E ; tile99A: 0x1FF, 0x1FF, 0x1FF, 0x17E\n#_0FCCD8: dw $4D6E, $CD7A, $CD7A, $4DFF ; tile99B: 0x16E, 0x17A, 0x17A, 0x1FF\n#_0FCCE0: dw $CD7F, $4D7A, $0DFF, $8D6F ; tile99C: 0x17F, 0x17A, 0x1FF, 0x16F\n#_0FCCE8: dw $4D7D, $4DFF, $4DFF, $4DFF ; tile99D: 0x17D, 0x1FF, 0x1FF, 0x1FF\n#_0FCCF0: dw $4DFF, $4DFF, $8D1F, $4DFF ; tile99E: 0x1FF, 0x1FF, 0x11F, 0x1FF\n#_0FCCF8: dw $0D1F, $0DFF, $0DFF, $0DFF ; tile99F: 0x11F, 0x1FF, 0x1FF, 0x1FF\n#_0FCD00: dw $CD6F, $0DFF, $0D7E, $0DFF ; tile9A0: 0x16F, 0x1FF, 0x17E, 0x1FF\n#_0FCD08: dw $8D7A, $4D6F, $CD6E, $0D7D ; tile9A1: 0x17A, 0x16F, 0x16E, 0x17D\n#_0FCD10: dw $4DFF, $4DFF, $4DFF, $4D6E ; tile9A2: 0x1FF, 0x1FF, 0x1FF, 0x16E\n#_0FCD18: dw $8879, $88BB, $8895, $C895 ; tile9A3: 0x079, 0x0BB, 0x095, 0x095\n#_0FCD20: dw $1DB4, $596C, $1DB4, $595D ; tile9A4: 0x1B4, 0x16C, 0x1B4, 0x15D\n#_0FCD28: dw $50A1, $4862, $084E, $50A1 ; tile9A5: 0x0A1, 0x062, 0x04E, 0x0A1\n#_0FCD30: dw $703E, $5034, $7002, $7001 ; tile9A6: 0x03E, 0x034, 0x002, 0x001\n#_0FCD38: dw $294F, $2958, $295F, $2959 ; tile9A7: 0x14F, 0x158, 0x15F, 0x159\n#_0FCD40: dw $6958, $694F, $6959, $695F ; tile9A8: 0x158, 0x14F, 0x159, 0x15F\n#_0FCD48: dw $0862, $10A1, $10A1, $084F ; tile9A9: 0x062, 0x0A1, 0x0A1, 0x04F\n#_0FCD50: dw $2D0C, $2D0D, $2D1C, $2D1D ; tile9AA: 0x10C, 0x10D, 0x11C, 0x11D\n#_0FCD58: dw $6D0D, $6D0C, $6D1D, $6D1C ; tile9AB: 0x10D, 0x10C, 0x11D, 0x11C\n#_0FCD60: dw $1109, $1129, $1119, $1139 ; tile9AC: 0x109, 0x129, 0x119, 0x139\n#_0FCD68: dw $1128, $1129, $1138, $1139 ; tile9AD: 0x128, 0x129, 0x138, 0x139\n#_0FCD70: dw $1128, $5109, $1138, $5119 ; tile9AE: 0x128, 0x109, 0x138, 0x119\n#_0FCD78: dw $2D2C, $2D2D, $08AA, $2D60 ; tile9AF: 0x12C, 0x12D, 0x0AA, 0x160\n#_0FCD80: dw $6D2D, $6D2C, $6D60, $08AA ; tile9B0: 0x12D, 0x12C, 0x160, 0x0AA\n#_0FCD88: dw $08AA, $0D10, $08AA, $0D20 ; tile9B1: 0x0AA, 0x110, 0x0AA, 0x120\n#_0FCD90: dw $4D10, $08AA, $4D20, $08AA ; tile9B2: 0x110, 0x0AA, 0x120, 0x0AA\n#_0FCD98: dw $0D2B, $4D2B, $0D3B, $4D3B ; tile9B3: 0x12B, 0x12B, 0x13B, 0x13B\n#_0FCDA0: dw $0848, $1DF6, $0852, $09F2 ; tile9B4: 0x048, 0x1F6, 0x052, 0x1F2\n#_0FCDA8: dw $08BA, $88BB, $8895, $C895 ; tile9B5: 0x0BA, 0x0BB, 0x095, 0x095\n#_0FCDB0: dw $884E, $4CB5, $084E, $4C8E ; tile9B6: 0x04E, 0x0B5, 0x04E, 0x08E\n#_0FCDB8: dw $4CA8, $0CAA, $0CB8, $0CAA ; tile9B7: 0x0A8, 0x0AA, 0x0B8, 0x0AA\n#_0FCDC0: dw $0CAA, $0CAA, $0CAA, $4CB8 ; tile9B8: 0x0AA, 0x0AA, 0x0AA, 0x0B8\n#_0FCDC8: dw $0C6D, $0C94, $085C, $485C ; tile9B9: 0x06D, 0x094, 0x05C, 0x05C\n#_0FCDD0: dw $4C9C, $0C8F, $08BA, $08BA ; tile9BA: 0x09C, 0x08F, 0x0BA, 0x0BA\n#_0FCDD8: dw $08AF, $08A8, $08BF, $08AF ; tile9BB: 0x0AF, 0x0A8, 0x0BF, 0x0AF\n#_0FCDE0: dw $0CA4, $08BB, $0CB4, $4879 ; tile9BC: 0x0A4, 0x0BB, 0x0B4, 0x079\n#_0FCDE8: dw $08BB, $4CA4, $0879, $4CB4 ; tile9BD: 0x0BB, 0x0A4, 0x079, 0x0B4\n#_0FCDF0: dw $48A8, $48AF, $48AF, $48BF ; tile9BE: 0x0A8, 0x0AF, 0x0AF, 0x0BF\n#_0FCDF8: dw $098E, $498E, $898E, $C98E ; tile9BF: 0x18E, 0x18E, 0x18E, 0x18E\n#_0FCE00: dw $198F, $598F, $199F, $599F ; tile9C0: 0x18F, 0x18F, 0x19F, 0x19F\n#_0FCE08: dw $4D2E, $08AA, $08AA, $0D2E ; tile9C1: 0x12E, 0x0AA, 0x0AA, 0x12E\n#_0FCE10: dw $291A, $291F, $2929, $292F ; tile9C2: 0x11A, 0x11F, 0x129, 0x12F\n#_0FCE18: dw $691F, $691A, $692F, $6929 ; tile9C3: 0x11F, 0x11A, 0x12F, 0x129\n#_0FCE20: dw $0D08, $0D09, $0D18, $1DD5 ; tile9C4: 0x108, 0x109, 0x118, 0x1D5\n#_0FCE28: dw $0D09, $4D09, $1DD5, $1DD5 ; tile9C5: 0x109, 0x109, 0x1D5, 0x1D5\n#_0FCE30: dw $4D09, $4D08, $1DD5, $4D18 ; tile9C6: 0x109, 0x108, 0x1D5, 0x118\n#_0FCE38: dw $0D18, $1DD5, $0D18, $1DD5 ; tile9C7: 0x118, 0x1D5, 0x118, 0x1D5\n#_0FCE40: dw $1DD5, $1DD5, $1DD5, $1DD5 ; tile9C8: 0x1D5, 0x1D5, 0x1D5, 0x1D5\n#_0FCE48: dw $1DD5, $4D18, $1DD5, $4D18 ; tile9C9: 0x1D5, 0x118, 0x1D5, 0x118\n#_0FCE50: dw $4D2E, $08AA, $08AA, $4D2E ; tile9CA: 0x12E, 0x0AA, 0x0AA, 0x12E\n#_0FCE58: dw $0D18, $1DD5, $0D28, $0D19 ; tile9CB: 0x118, 0x1D5, 0x128, 0x119\n#_0FCE60: dw $1DD5, $1DD5, $0D19, $4D19 ; tile9CC: 0x1D5, 0x1D5, 0x119, 0x119\n#_0FCE68: dw $1DD5, $4D18, $4D19, $4D28 ; tile9CD: 0x1D5, 0x118, 0x119, 0x128\n#_0FCE70: dw $08AA, $2D6B, $08AA, $2D7B ; tile9CE: 0x0AA, 0x16B, 0x0AA, 0x17B\n#_0FCE78: dw $2D0E, $2D0F, $2D21, $2D22 ; tile9CF: 0x10E, 0x10F, 0x121, 0x122\n#_0FCE80: dw $08AA, $4D2E, $0D2E, $08AA ; tile9D0: 0x0AA, 0x12E, 0x12E, 0x0AA\n#_0FCE88: dw $08AA, $2D6F, $08AA, $2D7F ; tile9D1: 0x0AA, 0x16F, 0x0AA, 0x17F\n#_0FCE90: dw $2D54, $2D69, $2D64, $2D79 ; tile9D2: 0x154, 0x169, 0x164, 0x179\n#_0FCE98: dw $0D2E, $08AA, $08AA, $08AA ; tile9D3: 0x12E, 0x0AA, 0x0AA, 0x0AA\n#_0FCEA0: dw $0CED, $0CED, $08AA, $08AA ; tile9D4: 0x0ED, 0x0ED, 0x0AA, 0x0AA\n#_0FCEA8: dw $08AA, $48AF, $08AA, $48AE ; tile9D5: 0x0AA, 0x0AF, 0x0AA, 0x0AE\n#_0FCEB0: dw $0D74, $0D75, $2D52, $0D55 ; tile9D6: 0x174, 0x175, 0x152, 0x155\n#_0FCEB8: dw $08AA, $C8BD, $08AA, $08AA ; tile9D7: 0x0AA, 0x0BD, 0x0AA, 0x0AA\n#_0FCEC0: dw $0D62, $0D65, $0D30, $0D31 ; tile9D8: 0x162, 0x165, 0x130, 0x131\n#_0FCEC8: dw $1D60, $1D61, $1D76, $1D05 ; tile9D9: 0x160, 0x161, 0x176, 0x105\n#_0FCED0: dw $1D61, $1D61, $9D05, $1D05 ; tile9DA: 0x161, 0x161, 0x105, 0x105\n#_0FCED8: dw $1D61, $5D60, $9D05, $5D76 ; tile9DB: 0x161, 0x160, 0x105, 0x176\n#_0FCEE0: dw $1D76, $5D05, $1D76, $1D05 ; tile9DC: 0x176, 0x105, 0x176, 0x105\n#_0FCEE8: dw $DD05, $5D05, $9D05, $1D05 ; tile9DD: 0x105, 0x105, 0x105, 0x105\n#_0FCEF0: dw $DD05, $5D76, $9D05, $5D76 ; tile9DE: 0x105, 0x176, 0x105, 0x176\n#_0FCEF8: dw $1D70, $1D71, $0D00, $0D15 ; tile9DF: 0x170, 0x171, 0x100, 0x115\n#_0FCF00: dw $1D71, $1D71, $4D15, $0D01 ; tile9E0: 0x171, 0x171, 0x115, 0x101\n#_0FCF08: dw $1D71, $1D71, $0D01, $0D15 ; tile9E1: 0x171, 0x171, 0x101, 0x115\n#_0FCF10: dw $1D71, $5D70, $4D15, $4D00 ; tile9E2: 0x171, 0x170, 0x115, 0x100\n#_0FCF18: dw $09AF, $49AF, $09BF, $49BF ; tile9E3: 0x1AF, 0x1AF, 0x1BF, 0x1BF\n#_0FCF20: dw $6D0F, $6D0E, $6D22, $6D21 ; tile9E4: 0x10F, 0x10E, 0x122, 0x121\n#_0FCF28: dw $6D6B, $08AA, $6D7B, $08AA ; tile9E5: 0x16B, 0x0AA, 0x17B, 0x0AA\n#_0FCF30: dw $6D69, $6D54, $6D79, $6D64 ; tile9E6: 0x169, 0x154, 0x179, 0x164\n#_0FCF38: dw $6D6F, $08AA, $6D7F, $08AA ; tile9E7: 0x16F, 0x0AA, 0x17F, 0x0AA\n#_0FCF40: dw $4D75, $4D74, $4D55, $6D52 ; tile9E8: 0x175, 0x174, 0x155, 0x152\n#_0FCF48: dw $08AF, $08AA, $08AE, $08AA ; tile9E9: 0x0AF, 0x0AA, 0x0AE, 0x0AA\n#_0FCF50: dw $4D65, $4D62, $4D31, $4D30 ; tile9EA: 0x165, 0x162, 0x131, 0x130\n#_0FCF58: dw $88BD, $08AA, $08AA, $08AA ; tile9EB: 0x0BD, 0x0AA, 0x0AA, 0x0AA\n#_0FCF60: dw $01E3, $01E3, $01E3, $01E3 ; tile9EC: 0x1E3, 0x1E3, 0x1E3, 0x1E3\n#_0FCF68: dw $01E3, $01E3, $1D22, $1D23 ; tile9ED: 0x1E3, 0x1E3, 0x122, 0x123\n#_0FCF70: dw $1D22, $1D23, $1D70, $1D71 ; tile9EE: 0x122, 0x123, 0x170, 0x171\n#_0FCF78: dw $1D16, $1D45, $1D54, $1D55 ; tile9EF: 0x116, 0x145, 0x154, 0x155\n#_0FCF80: dw $1D64, $1D64, $1D74, $1D74 ; tile9F0: 0x164, 0x164, 0x174, 0x174\n#_0FCF88: dw $1D64, $1D64, $1D20, $1D21 ; tile9F1: 0x164, 0x164, 0x120, 0x121\n#_0FCF90: dw $1D30, $1D31, $1D70, $1D71 ; tile9F2: 0x130, 0x131, 0x170, 0x171\n#_0FCF98: dw $1D60, $1D61, $1D70, $1D71 ; tile9F3: 0x160, 0x161, 0x170, 0x171\n#_0FCFA0: dw $1D62, $1D63, $1D60, $1D61 ; tile9F4: 0x162, 0x163, 0x160, 0x161\n#_0FCFA8: dw $1D65, $1D57, $1D65, $1D57 ; tile9F5: 0x165, 0x157, 0x165, 0x157\n#_0FCFB0: dw $9D1E, $9D1F, $1D0E, $1D0F ; tile9F6: 0x11E, 0x11F, 0x10E, 0x10F\n#_0FCFB8: dw $9D1F, $9D1F, $1D0F, $1D0F ; tile9F7: 0x11F, 0x11F, 0x10F, 0x10F\n#_0FCFC0: dw $1D70, $1D71, $1D62, $1D63 ; tile9F8: 0x170, 0x171, 0x162, 0x163\n#_0FCFC8: dw $1D0E, $1D0F, $1D0E, $1D0F ; tile9F9: 0x10E, 0x10F, 0x10E, 0x10F\n#_0FCFD0: dw $1D0F, $1D0F, $1D0F, $1D0F ; tile9FA: 0x10F, 0x10F, 0x10F, 0x10F\n#_0FCFD8: dw $9D1F, $DD1E, $1D1F, $5D1E ; tile9FB: 0x11F, 0x11E, 0x11F, 0x11E\n#_0FCFE0: dw $1D0F, $5D0E, $1D0F, $5D0E ; tile9FC: 0x10F, 0x10E, 0x10F, 0x10E\n#_0FCFE8: dw $9D1E, $9D1F, $1D1E, $1D1F ; tile9FD: 0x11E, 0x11F, 0x11E, 0x11F\n#_0FCFF0: dw $9D1F, $DD1E, $1D0F, $5D0E ; tile9FE: 0x11F, 0x11E, 0x10F, 0x10E\n#_0FCFF8: dw $1D65, $1D35, $1D17, $1D74 ; tile9FF: 0x165, 0x135, 0x117, 0x174\n#_0FD000: dw $1D64, $5D16, $1D74, $5D17 ; tileA00: 0x164, 0x116, 0x174, 0x117\n#_0FD008: dw $1D0F, $1D0F, $1D1F, $1D1F ; tileA01: 0x10F, 0x10F, 0x11F, 0x11F\n#_0FD010: dw $1D70, $1D72, $1D04, $1D03 ; tileA02: 0x170, 0x172, 0x104, 0x103\n#_0FD018: dw $1D40, $1D41, $1D00, $1D01 ; tileA03: 0x140, 0x141, 0x100, 0x101\n#_0FD020: dw $1D42, $1D43, $1D02, $1D03 ; tileA04: 0x142, 0x143, 0x102, 0x103\n#_0FD028: dw $1D14, $1D1B, $1D46, $1D1B ; tileA05: 0x114, 0x11B, 0x146, 0x11B\n#_0FD030: dw $1D0B, $1D0B, $1D0B, $1D0B ; tileA06: 0x10B, 0x10B, 0x10B, 0x10B\n#_0FD038: dw $1D0E, $1D0F, $1D1E, $1D1F ; tileA07: 0x10E, 0x10F, 0x11E, 0x11F\n#_0FD040: dw $1D05, $1D08, $1D10, $1D13 ; tileA08: 0x105, 0x108, 0x110, 0x113\n#_0FD048: dw $1D46, $1D1B, $1D46, $1D1B ; tileA09: 0x146, 0x11B, 0x146, 0x11B\n#_0FD050: dw $2D6E, $2D6F, $2D50, $2D51 ; tileA0A: 0x16E, 0x16F, 0x150, 0x151\n#_0FD058: dw $6D6F, $6D6E, $6D51, $6D50 ; tileA0B: 0x16F, 0x16E, 0x151, 0x150\n#_0FD060: dw $1D05, $1D06, $1D10, $1D11 ; tileA0C: 0x105, 0x106, 0x110, 0x111\n#_0FD068: dw $2D52, $2D5F, $0D44, $0D47 ; tileA0D: 0x152, 0x15F, 0x144, 0x147\n#_0FD070: dw $6D5F, $6D52, $4D47, $4D44 ; tileA0E: 0x15F, 0x152, 0x147, 0x144\n#_0FD078: dw $0D56, $0D73, $0D24, $0D25 ; tileA0F: 0x156, 0x173, 0x124, 0x125\n#_0FD080: dw $4D73, $4D56, $4D25, $4D24 ; tileA10: 0x173, 0x156, 0x125, 0x124\n#_0FD088: dw $1D15, $1D0F, $1D0F, $1D0F ; tileA11: 0x115, 0x10F, 0x10F, 0x10F\n#_0FD090: dw $5D0F, $5D0E, $5D1F, $5D1E ; tileA12: 0x10F, 0x10E, 0x11F, 0x11E\n#_0FD098: dw $1D65, $1D57, $1D17, $1D75 ; tileA13: 0x165, 0x157, 0x117, 0x175\n#_0FD0A0: dw $1D07, $1D08, $1D12, $1D13 ; tileA14: 0x107, 0x108, 0x112, 0x113\n#_0FD0A8: dw $1D0B, $1D14, $1D0B, $1D46 ; tileA15: 0x10B, 0x114, 0x10B, 0x146\n#_0FD0B0: dw $1D40, $1D43, $1D00, $1D03 ; tileA16: 0x140, 0x143, 0x100, 0x103\n#_0FD0B8: dw $1D0A, $1D1A, $1D00, $1D01 ; tileA17: 0x10A, 0x11A, 0x100, 0x101\n#_0FD0C0: dw $1D1A, $5D0A, $1D02, $1D03 ; tileA18: 0x11A, 0x10A, 0x102, 0x103\n#_0FD0C8: dw $1D0B, $1D46, $1D0B, $1D46 ; tileA19: 0x10B, 0x146, 0x10B, 0x146\n#_0FD0D0: dw $1D0F, $1D15, $1D0F, $1D0F ; tileA1A: 0x10F, 0x115, 0x10F, 0x10F\n#_0FD0D8: dw $1D16, $5D64, $1D17, $5D74 ; tileA1B: 0x116, 0x164, 0x117, 0x174\n#_0FD0E0: dw $3D40, $3D41, $3D00, $3D01 ; tileA1C: 0x140, 0x141, 0x100, 0x101\n#_0FD0E8: dw $3D42, $3D43, $3D02, $3D03 ; tileA1D: 0x142, 0x143, 0x102, 0x103\n#_0FD0F0: dw $1D05, $1D06, $1D66, $1D67 ; tileA1E: 0x105, 0x106, 0x166, 0x167\n#_0FD0F8: dw $3D06, $3D06, $3D67, $3D67 ; tileA1F: 0x106, 0x106, 0x167, 0x167\n#_0FD100: dw $1D07, $1D08, $1D67, $5D66 ; tileA20: 0x107, 0x108, 0x167, 0x166\n#_0FD108: dw $1D66, $1D67, $1D66, $1D67 ; tileA21: 0x166, 0x167, 0x166, 0x167\n#_0FD110: dw $3D67, $3D67, $3D67, $3D76 ; tileA22: 0x167, 0x167, 0x167, 0x176\n#_0FD118: dw $7D76, $3D67, $3D77, $3D67 ; tileA23: 0x176, 0x167, 0x177, 0x167\n#_0FD120: dw $1D67, $5D66, $1D67, $5D66 ; tileA24: 0x167, 0x166, 0x167, 0x166\n#_0FD128: dw $1D4E, $1CFE, $1D5E, $1D7E ; tileA25: 0x14E, 0x0FE, 0x15E, 0x17E\n#_0FD130: dw $5CFE, $5D4E, $5D7E, $5D5E ; tileA26: 0x0FE, 0x14E, 0x17E, 0x15E\n#_0FD138: dw $1D66, $1D67, $1D10, $1D11 ; tileA27: 0x166, 0x167, 0x110, 0x111\n#_0FD140: dw $1D67, $1D53, $1D12, $1D33 ; tileA28: 0x167, 0x153, 0x112, 0x133\n#_0FD148: dw $1D78, $1D67, $1D34, $1D11 ; tileA29: 0x178, 0x167, 0x134, 0x111\n#_0FD150: dw $1D67, $5D66, $1D12, $1D13 ; tileA2A: 0x167, 0x166, 0x112, 0x113\n#_0FD158: dw $5D45, $5D16, $5D55, $5D54 ; tileA2B: 0x145, 0x116, 0x155, 0x154\n#_0FD160: dw $5D23, $5D22, $5D71, $5D70 ; tileA2C: 0x123, 0x122, 0x171, 0x170\n#_0FD168: dw $01E3, $01E3, $5D23, $5D22 ; tileA2D: 0x1E3, 0x1E3, 0x123, 0x122\n#_0FD170: dw $5D57, $5D65, $5D57, $5D65 ; tileA2E: 0x157, 0x165, 0x157, 0x165\n#_0FD178: dw $5D63, $5D62, $5D61, $5D60 ; tileA2F: 0x163, 0x162, 0x161, 0x160\n#_0FD180: dw $5D61, $5D60, $5D71, $5D70 ; tileA30: 0x161, 0x160, 0x171, 0x170\n#_0FD188: dw $5D31, $5D30, $5D71, $5D70 ; tileA31: 0x131, 0x130, 0x171, 0x170\n#_0FD190: dw $1D64, $1D64, $5D21, $5D20 ; tileA32: 0x164, 0x164, 0x121, 0x120\n#_0FD198: dw $5D71, $5D70, $5D63, $5D62 ; tileA33: 0x171, 0x170, 0x163, 0x162\n#_0FD1A0: dw $1D16, $5D64, $1D17, $1D74 ; tileA34: 0x116, 0x164, 0x117, 0x174\n#_0FD1A8: dw $5D35, $5D65, $1D74, $5D17 ; tileA35: 0x135, 0x165, 0x174, 0x117\n#_0FD1B0: dw $5D72, $5D70, $5D03, $5D04 ; tileA36: 0x172, 0x170, 0x103, 0x104\n#_0FD1B8: dw $0921, $4921, $0922, $0922 ; tileA37: 0x121, 0x121, 0x122, 0x122\n#_0FD1C0: dw $0922, $0923, $0923, $09F2 ; tileA38: 0x122, 0x123, 0x123, 0x1F2\n#_0FD1C8: dw $4923, $4922, $49F2, $4923 ; tileA39: 0x123, 0x122, 0x1F2, 0x123\n#_0FD1D0: dw $C9F2, $C923, $C923, $C922 ; tileA3A: 0x1F2, 0x123, 0x123, 0x122\n#_0FD1D8: dw $0922, $0922, $0921, $4921 ; tileA3B: 0x122, 0x122, 0x121, 0x121\n#_0FD1E0: dw $0860, $5518, $0CB0, $3552 ; tileA3C: 0x060, 0x118, 0x0B0, 0x152\n#_0FD1E8: dw $1518, $1517, $3553, $3553 ; tileA3D: 0x118, 0x117, 0x153, 0x153\n#_0FD1F0: dw $1518, $0861, $7552, $0CB1 ; tileA3E: 0x118, 0x061, 0x152, 0x0B1\n#_0FD1F8: dw $1D3F, $3542, $1D2F, $7554 ; tileA3F: 0x13F, 0x142, 0x12F, 0x154\n#_0FD200: dw $3553, $3553, $3550, $3551 ; tileA40: 0x153, 0x153, 0x150, 0x151\n#_0FD208: dw $7542, $5D3F, $3554, $5D2F ; tileA41: 0x142, 0x13F, 0x154, 0x12F\n#_0FD210: dw $0D08, $0D09, $0D47, $0D49 ; tileA42: 0x108, 0x109, 0x147, 0x149\n#_0FD218: dw $4D09, $4D08, $4D49, $4D47 ; tileA43: 0x109, 0x108, 0x149, 0x147\n#_0FD220: dw $1D3F, $3542, $1D2F, $3552 ; tileA44: 0x13F, 0x142, 0x12F, 0x152\n#_0FD228: dw $3553, $3553, $3553, $3553 ; tileA45: 0x153, 0x153, 0x153, 0x153\n#_0FD230: dw $7542, $5D3F, $7552, $5D2F ; tileA46: 0x142, 0x13F, 0x152, 0x12F\n#_0FD238: dw $1D3F, $5D11, $9D0C, $5D0E ; tileA47: 0x13F, 0x111, 0x10C, 0x10E\n#_0FD240: dw $1D00, $1D01, $1D0E, $1D0F ; tileA48: 0x100, 0x101, 0x10E, 0x10F\n#_0FD248: dw $1D11, $5D3F, $1D0E, $DD0C ; tileA49: 0x111, 0x13F, 0x10E, 0x10C\n#_0FD250: dw $0D57, $0D59, $0D38, $0D39 ; tileA4A: 0x157, 0x159, 0x138, 0x139\n#_0FD258: dw $4D59, $4D57, $4D39, $4D38 ; tileA4B: 0x159, 0x157, 0x139, 0x138\n#_0FD260: dw $3572, $3553, $3553, $3553 ; tileA4C: 0x172, 0x153, 0x153, 0x153\n#_0FD268: dw $1D0C, $1D1F, $1D2F, $3545 ; tileA4D: 0x10C, 0x11F, 0x12F, 0x145\n#_0FD270: dw $1D1E, $1D1F, $3540, $3541 ; tileA4E: 0x11E, 0x11F, 0x140, 0x141\n#_0FD278: dw $5D1F, $5D0C, $7545, $5D2F ; tileA4F: 0x11F, 0x10C, 0x145, 0x12F\n#_0FD280: dw $1D3F, $3542, $9D6E, $B53C ; tileA50: 0x13F, 0x142, 0x16E, 0x13C\n#_0FD288: dw $3553, $3553, $352E, $352E ; tileA51: 0x153, 0x153, 0x12E, 0x12E\n#_0FD290: dw $7542, $5D3F, $F53C, $DD6E ; tileA52: 0x142, 0x13F, 0x13C, 0x16E\n#_0FD298: dw $1D3F, $3542, $3540, $3544 ; tileA53: 0x13F, 0x142, 0x140, 0x144\n#_0FD2A0: dw $7542, $5D3F, $7544, $7540 ; tileA54: 0x142, 0x13F, 0x144, 0x140\n#_0FD2A8: dw $1D1E, $1D4D, $3540, $355D ; tileA55: 0x11E, 0x14D, 0x140, 0x15D\n#_0FD2B0: dw $1D4D, $1D4D, $354C, $354C ; tileA56: 0x14D, 0x14D, 0x14C, 0x14C\n#_0FD2B8: dw $1D4D, $1D1F, $755D, $3541 ; tileA57: 0x14D, 0x11F, 0x15D, 0x141\n#_0FD2C0: dw $1D6C, $357C, $1D6C, $357C ; tileA58: 0x16C, 0x17C, 0x16C, 0x17C\n#_0FD2C8: dw $352E, $352D, $352E, $352E ; tileA59: 0x12E, 0x12D, 0x12E, 0x12E\n#_0FD2D0: dw $757C, $5D6C, $757C, $5D6C ; tileA5A: 0x17C, 0x16C, 0x17C, 0x16C\n#_0FD2D8: dw $3553, $3553, $3543, $3551 ; tileA5B: 0x153, 0x153, 0x143, 0x151\n#_0FD2E0: dw $3553, $352E, $3550, $356D ; tileA5C: 0x153, 0x12E, 0x150, 0x16D\n#_0FD2E8: dw $352E, $352E, $356D, $356D ; tileA5D: 0x12E, 0x12E, 0x16D, 0x16D\n#_0FD2F0: dw $352E, $3553, $356D, $3551 ; tileA5E: 0x12E, 0x153, 0x16D, 0x151\n#_0FD2F8: dw $7553, $7553, $7551, $7543 ; tileA5F: 0x153, 0x153, 0x151, 0x143\n#_0FD300: dw $1D6E, $353C, $1D2F, $3552 ; tileA60: 0x16E, 0x13C, 0x12F, 0x152\n#_0FD308: dw $352E, $352E, $3553, $3553 ; tileA61: 0x12E, 0x12E, 0x153, 0x153\n#_0FD310: dw $753C, $5D6E, $7552, $5D2F ; tileA62: 0x13C, 0x16E, 0x152, 0x12F\n#_0FD318: dw $7542, $1D01, $7552, $1D0D ; tileA63: 0x142, 0x101, 0x152, 0x10D\n#_0FD320: dw $1D00, $1D7D, $1D0E, $1D5C ; tileA64: 0x100, 0x17D, 0x10E, 0x15C\n#_0FD328: dw $1D7E, $1D7E, $0CAA, $0CAA ; tileA65: 0x17E, 0x17E, 0x0AA, 0x0AA\n#_0FD330: dw $5D7D, $1D01, $5D5C, $1D0F ; tileA66: 0x17D, 0x101, 0x15C, 0x10F\n#_0FD338: dw $5D01, $3542, $5D0D, $3552 ; tileA67: 0x101, 0x142, 0x10D, 0x152\n#_0FD340: dw $0864, $0C66, $1516, $3525 ; tileA68: 0x064, 0x066, 0x116, 0x125\n#_0FD348: dw $9D6E, $B53C, $1D6E, $353C ; tileA69: 0x16E, 0x13C, 0x16E, 0x13C\n#_0FD350: dw $352E, $352E, $352E, $352E ; tileA6A: 0x12E, 0x12E, 0x12E, 0x12E\n#_0FD358: dw $F53C, $DD6E, $753C, $5D6E ; tileA6B: 0x13C, 0x16E, 0x13C, 0x16E\n#_0FD360: dw $1526, $3553, $1536, $3553 ; tileA6C: 0x126, 0x153, 0x136, 0x153\n#_0FD368: dw $3572, $3553, $3553, $7572 ; tileA6D: 0x172, 0x153, 0x153, 0x172\n#_0FD370: dw $352D, $352E, $352E, $352D ; tileA6E: 0x12D, 0x12E, 0x12E, 0x12D\n#_0FD378: dw $1526, $3553, $1536, $3551 ; tileA6F: 0x126, 0x153, 0x136, 0x151\n#_0FD380: dw $0864, $1135, $0874, $0C76 ; tileA70: 0x064, 0x135, 0x074, 0x076\n#_0FD388: dw $352E, $352C, $352D, $352E ; tileA71: 0x12E, 0x12C, 0x12D, 0x12E\n#_0FD390: dw $352C, $352E, $352E, $352E ; tileA72: 0x12C, 0x12E, 0x12E, 0x12E\n#_0FD398: dw $3553, $7572, $3572, $3553 ; tileA73: 0x153, 0x172, 0x172, 0x153\n#_0FD3A0: dw $7562, $3562, $3553, $3553 ; tileA74: 0x162, 0x162, 0x153, 0x153\n#_0FD3A8: dw $352E, $752C, $352C, $352E ; tileA75: 0x12E, 0x12C, 0x12C, 0x12E\n#_0FD3B0: dw $352E, $352D, $352D, $352E ; tileA76: 0x12E, 0x12D, 0x12D, 0x12E\n#_0FD3B8: dw $1D4E, $5D4E, $1D5E, $5D5E ; tileA77: 0x14E, 0x14E, 0x15E, 0x15E\n#_0FD3C0: dw $3D3D, $3D3E, $3D63, $3D74 ; tileA78: 0x13D, 0x13E, 0x163, 0x174\n#_0FD3C8: dw $3D3E, $3D3E, $3D74, $3D74 ; tileA79: 0x13E, 0x13E, 0x174, 0x174\n#_0FD3D0: dw $3D3E, $7D3D, $3D74, $7D63 ; tileA7A: 0x13E, 0x13D, 0x174, 0x163\n#_0FD3D8: dw $3D63, $3D74, $3D63, $3D74 ; tileA7B: 0x163, 0x174, 0x163, 0x174\n#_0FD3E0: dw $3D74, $3D74, $3D74, $3D74 ; tileA7C: 0x174, 0x174, 0x174, 0x174\n#_0FD3E8: dw $3D74, $7D63, $3D74, $7D63 ; tileA7D: 0x174, 0x163, 0x174, 0x163\n#_0FD3F0: dw $3553, $3553, $7562, $3562 ; tileA7E: 0x153, 0x153, 0x162, 0x162\n#_0FD3F8: dw $3553, $3553, $3553, $7572 ; tileA7F: 0x153, 0x153, 0x153, 0x172\n#_0FD400: dw $3D63, $3D74, $3D63, $3D03 ; tileA80: 0x163, 0x174, 0x163, 0x103\n#_0FD408: dw $3D74, $3D74, $3D12, $3D12 ; tileA81: 0x174, 0x174, 0x112, 0x112\n#_0FD410: dw $3D74, $3D74, $7D03, $3D74 ; tileA82: 0x174, 0x174, 0x103, 0x174\n#_0FD418: dw $3D74, $3D74, $3D74, $3D03 ; tileA83: 0x174, 0x174, 0x174, 0x103\n#_0FD420: dw $3D74, $7D63, $7D03, $7D63 ; tileA84: 0x174, 0x163, 0x103, 0x163\n#_0FD428: dw $3D63, $7D63, $3D73, $7D73 ; tileA85: 0x163, 0x163, 0x173, 0x173\n#_0FD430: dw $0D68, $0D69, $0D78, $0D79 ; tileA86: 0x168, 0x169, 0x178, 0x179\n#_0FD438: dw $4D69, $4D68, $4D79, $4D78 ; tileA87: 0x169, 0x168, 0x179, 0x178\n#_0FD440: dw $1D19, $5D19, $1D29, $5D29 ; tileA88: 0x119, 0x119, 0x129, 0x129\n#_0FD448: dw $3D74, $3D74, $3D12, $7D12 ; tileA89: 0x174, 0x174, 0x112, 0x112\n#_0FD450: dw $3D74, $3D74, $7D12, $7D12 ; tileA8A: 0x174, 0x174, 0x112, 0x112\n#_0FD458: dw $3D74, $3D74, $7D12, $3D12 ; tileA8B: 0x174, 0x174, 0x112, 0x112\n#_0FD460: dw $1D48, $5D48, $1D58, $5D58 ; tileA8C: 0x148, 0x148, 0x158, 0x158\n#_0FD468: dw $0D64, $4D64, $0D64, $4D64 ; tileA8D: 0x164, 0x164, 0x164, 0x164\n#_0FD470: dw $0D22, $0D23, $0D32, $0D33 ; tileA8E: 0x122, 0x123, 0x132, 0x133\n#_0FD478: dw $4D23, $4D22, $4D33, $4D32 ; tileA8F: 0x123, 0x122, 0x133, 0x132\n#_0FD480: dw $0D64, $4D64, $0D15, $4D15 ; tileA90: 0x164, 0x164, 0x115, 0x115\n#_0FD488: dw $1D06, $5D06, $1D07, $5D07 ; tileA91: 0x106, 0x106, 0x107, 0x107\n#_0FD490: dw $0D15, $4D15, $0D02, $4D02 ; tileA92: 0x115, 0x115, 0x102, 0x102\n#_0FD498: dw $0D65, $0D66, $0D75, $0D76 ; tileA93: 0x165, 0x166, 0x175, 0x176\n#_0FD4A0: dw $4D66, $4D65, $4D76, $4D75 ; tileA94: 0x166, 0x165, 0x176, 0x175\n#_0FD4A8: dw $0D02, $4D13, $0D1C, $1D4A ; tileA95: 0x102, 0x113, 0x11C, 0x14A\n#_0FD4B0: dw $5D61, $1D61, $5D71, $1D71 ; tileA96: 0x161, 0x161, 0x171, 0x171\n#_0FD4B8: dw $0D13, $4D02, $5D4A, $0D1C ; tileA97: 0x113, 0x102, 0x14A, 0x11C\n#_0FD4C0: dw $5D6A, $1D61, $5D20, $1D21 ; tileA98: 0x16A, 0x161, 0x120, 0x121\n#_0FD4C8: dw $5D61, $1D61, $5D21, $1D21 ; tileA99: 0x161, 0x161, 0x121, 0x121\n#_0FD4D0: dw $0D1C, $1D5A, $0D1C, $1D5A ; tileA9A: 0x11C, 0x15A, 0x11C, 0x15A\n#_0FD4D8: dw $1D6F, $DD7B, $1D7F, $DD6B ; tileA9B: 0x16F, 0x17B, 0x17F, 0x16B\n#_0FD4E0: dw $5D5A, $0D1C, $5D5A, $0D1C ; tileA9C: 0x15A, 0x11C, 0x15A, 0x11C\n#_0FD4E8: dw $5D61, $1D6A, $5D21, $1D20 ; tileA9D: 0x161, 0x16A, 0x121, 0x120\n#_0FD4F0: dw $5D7A, $1D71, $1D7B, $DD6B ; tileA9E: 0x17A, 0x171, 0x17B, 0x16B\n#_0FD4F8: dw $5D71, $1D71, $1D7B, $DD6B ; tileA9F: 0x171, 0x171, 0x17B, 0x16B\n#_0FD500: dw $0D1C, $0D1C, $0D1C, $0D1C ; tileAA0: 0x11C, 0x11C, 0x11C, 0x11C\n#_0FD508: dw $5D71, $1D71, $9D6F, $DD6B ; tileAA1: 0x171, 0x171, 0x16F, 0x16B\n#_0FD510: dw $5D71, $1D7A, $1D7B, $DD6B ; tileAA2: 0x171, 0x17A, 0x17B, 0x16B\n#_0FD518: dw $1D6B, $DD7B, $1D7B, $DD6B ; tileAA3: 0x16B, 0x17B, 0x17B, 0x16B\n#_0FD520: dw $0D4B, $0D5B, $0D4B, $0D5B ; tileAA4: 0x14B, 0x15B, 0x14B, 0x15B\n#_0FD528: dw $5D5A, $0D1C, $5D6A, $1D61 ; tileAA5: 0x15A, 0x11C, 0x16A, 0x161\n#_0FD530: dw $0D1C, $0D1C, $5D61, $1D61 ; tileAA6: 0x11C, 0x11C, 0x161, 0x161\n#_0FD538: dw $0D1C, $1D5A, $5D61, $1D6A ; tileAA7: 0x11C, 0x15A, 0x161, 0x16A\n#_0FD540: dw $5D20, $1D21, $5D7A, $1D71 ; tileAA8: 0x120, 0x121, 0x17A, 0x171\n#_0FD548: dw $5D21, $1D21, $5D71, $1D71 ; tileAA9: 0x121, 0x121, 0x171, 0x171\n#_0FD550: dw $5D21, $1D20, $5D71, $1D7A ; tileAAA: 0x121, 0x120, 0x171, 0x17A\n#_0FD558: dw $4C66, $4864, $7525, $5516 ; tileAAB: 0x066, 0x064, 0x125, 0x116\n#_0FD560: dw $7553, $5526, $7553, $5536 ; tileAAC: 0x153, 0x126, 0x153, 0x136\n#_0FD568: dw $0D6B, $CD7B, $0D7B, $CD6B ; tileAAD: 0x16B, 0x17B, 0x17B, 0x16B\n#_0FD570: dw $7553, $5526, $7551, $5536 ; tileAAE: 0x153, 0x126, 0x151, 0x136\n#_0FD578: dw $5135, $4864, $4C76, $4874 ; tileAAF: 0x135, 0x064, 0x076, 0x074\n#_0FD580: dw $2963, $2973, $28C0, $A943 ; tileAB0: 0x163, 0x173, 0x0C0, 0x143\n#_0FD588: dw $2966, $0941, $690D, $0946 ; tileAB1: 0x166, 0x141, 0x10D, 0x146\n#_0FD590: dw $4941, $0942, $0947, $0956 ; tileAB2: 0x141, 0x142, 0x147, 0x156\n#_0FD598: dw $4942, $0941, $4956, $0947 ; tileAB3: 0x142, 0x141, 0x156, 0x147\n#_0FD5A0: dw $4941, $4940, $4947, $4950 ; tileAB4: 0x141, 0x140, 0x147, 0x150\n#_0FD5A8: dw $28C0, $A943, $28C0, $A943 ; tileAB5: 0x0C0, 0x143, 0x0C0, 0x143\n#_0FD5B0: dw $690D, $08FE, $690D, $08FE ; tileAB6: 0x10D, 0x0FE, 0x10D, 0x0FE\n#_0FD5B8: dw $113C, $113C, $113C, $113C ; tileAB7: 0x13C, 0x13C, 0x13C, 0x13C\n#_0FD5C0: dw $113C, $0940, $113C, $4951 ; tileAB8: 0x13C, 0x140, 0x13C, 0x151\n#_0FD5C8: dw $4942, $0941, $4956, $4947 ; tileAB9: 0x142, 0x141, 0x156, 0x147\n#_0FD5D0: dw $4941, $4940, $0947, $C950 ; tileABA: 0x141, 0x140, 0x147, 0x150\n#_0FD5D8: dw $516E, $116E, $113C, $113C ; tileABB: 0x16E, 0x16E, 0x13C, 0x13C\n#_0FD5E0: dw $113C, $A91D, $113C, $290D ; tileABC: 0x13C, 0x11D, 0x13C, 0x10D\n#_0FD5E8: dw $516E, $08AA, $113C, $08AA ; tileABD: 0x16E, 0x0AA, 0x13C, 0x0AA\n#_0FD5F0: dw $291E, $291E, $297D, $297D ; tileABE: 0x11E, 0x11E, 0x17D, 0x17D\n#_0FD5F8: dw $291E, $291E, $297D, $697C ; tileABF: 0x11E, 0x11E, 0x17D, 0x17C\n#_0FD600: dw $291E, $291E, $08FE, $297C ; tileAC0: 0x11E, 0x11E, 0x0FE, 0x17C\n#_0FD608: dw $28E0, $28E1, $28F0, $68F1 ; tileAC1: 0x0E0, 0x0E1, 0x0F0, 0x0F1\n#_0FD610: dw $28D2, $28D2, $68F1, $28F1 ; tileAC2: 0x0D2, 0x0D2, 0x0F1, 0x0F1\n#_0FD618: dw $28D4, $293D, $28C4, $293B ; tileAC3: 0x0D4, 0x13D, 0x0C4, 0x13B\n#_0FD620: dw $693D, $296A, $693B, $68C4 ; tileAC4: 0x13D, 0x16A, 0x13B, 0x0C4\n#_0FD628: dw $297A, $6943, $28F1, $28F1 ; tileAC5: 0x17A, 0x143, 0x0F1, 0x0F1\n#_0FD630: dw $4941, $0941, $0947, $4947 ; tileAC6: 0x141, 0x141, 0x147, 0x147\n#_0FD638: dw $4941, $4940, $0947, $4951 ; tileAC7: 0x141, 0x140, 0x147, 0x151\n#_0FD640: dw $08E8, $113A, $08F8, $94BD ; tileAC8: 0x0E8, 0x13A, 0x0F8, 0x0BD\n#_0FD648: dw $513A, $48E8, $08AA, $48F8 ; tileAC9: 0x13A, 0x0E8, 0x0AA, 0x0F8\n#_0FD650: dw $0940, $0941, $8950, $0946 ; tileACA: 0x140, 0x141, 0x150, 0x146\n#_0FD658: dw $4904, $48CA, $4914, $48DA ; tileACB: 0x104, 0x0CA, 0x114, 0x0DA\n#_0FD660: dw $08CA, $0904, $08DA, $0914 ; tileACC: 0x0CA, 0x104, 0x0DA, 0x114\n#_0FD668: dw $0940, $08FE, $4950, $08FE ; tileACD: 0x140, 0x0FE, 0x150, 0x0FE\n#_0FD670: dw $113C, $4940, $113C, $4950 ; tileACE: 0x13C, 0x140, 0x13C, 0x150\n#_0FD678: dw $0940, $08FE, $0950, $08FE ; tileACF: 0x140, 0x0FE, 0x150, 0x0FE\n#_0FD680: dw $113C, $0940, $113C, $4950 ; tileAD0: 0x13C, 0x140, 0x13C, 0x150\n#_0FD688: dw $0940, $0941, $0951, $4947 ; tileAD1: 0x140, 0x141, 0x151, 0x147\n#_0FD690: dw $0940, $08FE, $0951, $08FE ; tileAD2: 0x140, 0x0FE, 0x151, 0x0FE\n#_0FD698: dw $08AA, $113C, $08AA, $113C ; tileAD3: 0x0AA, 0x13C, 0x0AA, 0x13C\n#_0FD6A0: dw $113A, $513A, $08AA, $08AA ; tileAD4: 0x13A, 0x13A, 0x0AA, 0x0AA\n#_0FD6A8: dw $08AA, $0CFD, $08AA, $0CFD ; tileAD5: 0x0AA, 0x0FD, 0x0AA, 0x0FD\n#_0FD6B0: dw $4CFD, $08AA, $4CFD, $08AA ; tileAD6: 0x0FD, 0x0AA, 0x0FD, 0x0AA\n#_0FD6B8: dw $691D, $08FE, $08FE, $08FE ; tileAD7: 0x11D, 0x0FE, 0x0FE, 0x0FE\n#_0FD6C0: dw $E91D, $08FE, $690D, $08FE ; tileAD8: 0x11D, 0x0FE, 0x10D, 0x0FE\n#_0FD6C8: dw $113C, $290D, $113C, $290D ; tileAD9: 0x13C, 0x10D, 0x13C, 0x10D\n#_0FD6D0: dw $28D2, $68C0, $E943, $68C0 ; tileADA: 0x0D2, 0x0C0, 0x143, 0x0C0\n#_0FD6D8: dw $2966, $2966, $690D, $0944 ; tileADB: 0x166, 0x166, 0x10D, 0x144\n#_0FD6E0: dw $2966, $2966, $0944, $0944 ; tileADC: 0x166, 0x166, 0x144, 0x144\n#_0FD6E8: dw $2966, $2966, $0944, $290D ; tileADD: 0x166, 0x166, 0x144, 0x10D\n#_0FD6F0: dw $6973, $6963, $28D2, $68C0 ; tileADE: 0x173, 0x163, 0x0D2, 0x0C0\n#_0FD6F8: dw $08FE, $08FE, $113C, $113C ; tileADF: 0x0FE, 0x0FE, 0x13C, 0x13C\n#_0FD700: dw $08FE, $290D, $113C, $290D ; tileAE0: 0x0FE, 0x10D, 0x13C, 0x10D\n#_0FD708: dw $E943, $68C0, $E943, $68C0 ; tileAE1: 0x143, 0x0C0, 0x143, 0x0C0\n#_0FD710: dw $291E, $291E, $497C, $08FE ; tileAE2: 0x11E, 0x11E, 0x17C, 0x0FE\n#_0FD718: dw $291E, $292D, $297C, $297D ; tileAE3: 0x11E, 0x12D, 0x17C, 0x17D\n#_0FD720: dw $292D, $292D, $297D, $297D ; tileAE4: 0x12D, 0x12D, 0x17D, 0x17D\n#_0FD728: dw $292D, $291E, $297D, $297D ; tileAE5: 0x12D, 0x11E, 0x17D, 0x17D\n#_0FD730: dw $2943, $297A, $28F1, $28F1 ; tileAE6: 0x143, 0x17A, 0x0F1, 0x0F1\n#_0FD738: dw $696A, $293D, $28C4, $293B ; tileAE7: 0x16A, 0x13D, 0x0C4, 0x13B\n#_0FD740: dw $693D, $68D4, $693B, $68C4 ; tileAE8: 0x13D, 0x0D4, 0x13B, 0x0C4\n#_0FD748: dw $1D0F, $5D0E, $1D1F, $5D1E ; tileAE9: 0x10F, 0x10E, 0x11F, 0x11E\n#_0FD750: dw $484C, $084C, $5038, $087D ; tileAEA: 0x04C, 0x04C, 0x038, 0x07D\n#_0FD758: dw $1998, $14AA, $14AA, $48B8 ; tileAEB: 0x198, 0x0AA, 0x0AA, 0x0B8\n#_0FD760: dw $08BA, $08BA, $10BE, $50BE ; tileAEC: 0x0BA, 0x0BA, 0x0BE, 0x0BE\n#_0FD768: dw $1080, $1081, $084A, $484A ; tileAED: 0x080, 0x081, 0x04A, 0x04A\n#_0FD770: dw $084B, $484B, $0850, $0851 ; tileAEE: 0x04B, 0x04B, 0x050, 0x051\n#_0FD778: dw $3D63, $3D74, $3D73, $3D12 ; tileAEF: 0x163, 0x174, 0x173, 0x112\n#_0FD780: dw $3D74, $7D63, $3D12, $7D73 ; tileAF0: 0x174, 0x163, 0x112, 0x173\n#_0FD788: dw $1CFE, $1CFE, $1CFE, $1CFE ; tileAF1: 0x0FE, 0x0FE, 0x0FE, 0x0FE\n#_0FD790: dw $0D04, $4D04, $0D14, $4D14 ; tileAF2: 0x104, 0x104, 0x114, 0x114\n#_0FD798: dw $1D3A, $5D3A, $5D5B, $1D5B ; tileAF3: 0x13A, 0x13A, 0x15B, 0x15B\n#_0FD7A0: dw $0D46, $4D46, $0D46, $4D46 ; tileAF4: 0x146, 0x146, 0x146, 0x146\n#_0FD7A8: dw $0D24, $4D24, $0D34, $4D34 ; tileAF5: 0x124, 0x124, 0x134, 0x134\n#_0FD7B0: dw $5D5B, $1D5B, $5D5B, $1D5B ; tileAF6: 0x15B, 0x15B, 0x15B, 0x15B\n#_0FD7B8: dw $0D55, $4D55, $0D56, $4D56 ; tileAF7: 0x155, 0x155, 0x156, 0x156\n#_0FD7C0: dw $0D67, $4D67, $0D77, $4D77 ; tileAF8: 0x167, 0x167, 0x177, 0x177\n#_0FD7C8: dw $0864, $1D35, $0874, $0C76 ; tileAF9: 0x064, 0x135, 0x074, 0x076\n#_0FD7D0: dw $5D35, $4864, $4C76, $4874 ; tileAFA: 0x135, 0x064, 0x076, 0x074\n#_0FD7D8: dw $1D4D, $1D4D, $355D, $755D ; tileAFB: 0x14D, 0x14D, 0x15D, 0x15D\n#_0FD7E0: dw $4981, $4991, $0890, $0891 ; tileAFC: 0x181, 0x191, 0x090, 0x091\n#_0FD7E8: dw $4865, $4864, $4981, $4991 ; tileAFD: 0x065, 0x064, 0x181, 0x191\n#_0FD7F0: dw $291A, $2948, $2929, $2949 ; tileAFE: 0x11A, 0x148, 0x129, 0x149\n#_0FD7F8: dw $6948, $691A, $6949, $6929 ; tileAFF: 0x148, 0x11A, 0x149, 0x129\n#_0FD800: dw $28D4, $294A, $28C4, $28C5 ; tileB00: 0x0D4, 0x14A, 0x0C4, 0x0C5\n#_0FD808: dw $694A, $68D4, $68C5, $68C4 ; tileB01: 0x14A, 0x0D4, 0x0C5, 0x0C4\n#_0FD810: dw $086C, $087C, $087C, $1988 ; tileB02: 0x06C, 0x07C, 0x07C, 0x188\n#_0FD818: dw $08AA, $194C, $194C, $195C ; tileB03: 0x0AA, 0x14C, 0x14C, 0x15C\n#_0FD820: dw $195C, $1DB4, $1DB4, $1DB4 ; tileB04: 0x15C, 0x1B4, 0x1B4, 0x1B4\n#_0FD828: dw $195D, $1DB4, $195D, $1DB4 ; tileB05: 0x15D, 0x1B4, 0x15D, 0x1B4\n#_0FD830: dw $156B, $196C, $08AA, $156B ; tileB06: 0x16B, 0x16C, 0x0AA, 0x16B\n#_0FD838: dw $1DB4, $1DB4, $196C, $1DB4 ; tileB07: 0x1B4, 0x1B4, 0x16C, 0x1B4\n#_0FD840: dw $1DC0, $DDCE, $1DD0, $DDC1 ; tileB08: 0x1C0, 0x1CE, 0x1D0, 0x1C1\n#_0FD848: dw $9DCE, $5DC0, $9DC1, $5DD0 ; tileB09: 0x1CE, 0x1C0, 0x1C1, 0x1D0\n#_0FD850: dw $50A1, $4862, $085C, $50A0 ; tileB0A: 0x0A1, 0x062, 0x05C, 0x0A0\n#_0FD858: dw $09F9, $29FA, $09EB, $09EF ; tileB0B: 0x1F9, 0x1FA, 0x1EB, 0x1EF\n#_0FD860: dw $69FA, $49F9, $49EF, $49EB ; tileB0C: 0x1FA, 0x1F9, 0x1EF, 0x1EB\n#_0FD868: dw $0862, $10A1, $10A0, $485C ; tileB0D: 0x062, 0x0A1, 0x0A0, 0x05C\n#_0FD870: dw $0862, $0853, $10A1, $084F ; tileB0E: 0x062, 0x053, 0x0A1, 0x04F\n#_0FD878: dw $0CAA, $0CAA, $0CAA, $1D3F ; tileB0F: 0x0AA, 0x0AA, 0x0AA, 0x13F\n#_0FD880: dw $0CAA, $0CAA, $1D0F, $1D0F ; tileB10: 0x0AA, 0x0AA, 0x10F, 0x10F\n#_0FD888: dw $4CAA, $4CAA, $5D3F, $4CAA ; tileB11: 0x0AA, 0x0AA, 0x13F, 0x0AA\n#_0FD890: dw $1D3F, $1D2E, $1D2E, $1DB4 ; tileB12: 0x13F, 0x12E, 0x12E, 0x1B4\n#_0FD898: dw $5D2E, $5D3F, $1DB4, $5D2E ; tileB13: 0x12E, 0x13F, 0x1B4, 0x12E\n#_0FD8A0: dw $5903, $1DB4, $5913, $1DB4 ; tileB14: 0x103, 0x1B4, 0x113, 0x1B4\n#_0FD8A8: dw $0CAA, $1D1F, $0CAA, $1D1F ; tileB15: 0x0AA, 0x11F, 0x0AA, 0x11F\n#_0FD8B0: dw $1DB4, $1DB4, $1DB4, $1907 ; tileB16: 0x1B4, 0x1B4, 0x1B4, 0x107\n#_0FD8B8: dw $1DB4, $1907, $1908, $9923 ; tileB17: 0x1B4, 0x107, 0x108, 0x123\n#_0FD8C0: dw $5907, $5DB4, $D923, $5908 ; tileB18: 0x107, 0x1B4, 0x123, 0x108\n#_0FD8C8: dw $5DB4, $5DB4, $5907, $5DB4 ; tileB19: 0x1B4, 0x1B4, 0x107, 0x1B4\n#_0FD8D0: dw $DDD9, $1932, $5DDA, $1922 ; tileB1A: 0x1D9, 0x132, 0x1DA, 0x122\n#_0FD8D8: dw $1970, $3923, $1923, $7923 ; tileB1B: 0x170, 0x123, 0x123, 0x123\n#_0FD8E0: dw $7923, $5970, $3923, $5923 ; tileB1C: 0x123, 0x170, 0x123, 0x123\n#_0FD8E8: dw $5932, $9DD9, $5922, $1DDA ; tileB1D: 0x132, 0x1D9, 0x122, 0x1DA\n#_0FD8F0: dw $1DB4, $1DD6, $1DB4, $1DB4 ; tileB1E: 0x1B4, 0x1D6, 0x1B4, 0x1B4\n#_0FD8F8: dw $1DD7, $1DB4, $1DB4, $1DD7 ; tileB1F: 0x1D7, 0x1B4, 0x1B4, 0x1D7\n#_0FD900: dw $1DB4, $1902, $1DB4, $1912 ; tileB20: 0x1B4, 0x102, 0x1B4, 0x112\n#_0FD908: dw $5902, $1DB4, $5912, $1DB4 ; tileB21: 0x102, 0x1B4, 0x112, 0x1B4\n#_0FD910: dw $DDDA, $1922, $5DDA, $1932 ; tileB22: 0x1DA, 0x122, 0x1DA, 0x132\n#_0FD918: dw $B970, $F970, $3970, $7970 ; tileB23: 0x170, 0x170, 0x170, 0x170\n#_0FD920: dw $5922, $9DDA, $5932, $1DDA ; tileB24: 0x122, 0x1DA, 0x132, 0x1DA\n#_0FD928: dw $DDDA, $9932, $5DD9, $1932 ; tileB25: 0x1DA, 0x132, 0x1D9, 0x132\n#_0FD930: dw $3923, $7923, $D923, $18FE ; tileB26: 0x123, 0x123, 0x123, 0x0FE\n#_0FD938: dw $3923, $7923, $58FE, $9923 ; tileB27: 0x123, 0x123, 0x0FE, 0x123\n#_0FD940: dw $D932, $9DDA, $5932, $1DD9 ; tileB28: 0x132, 0x1DA, 0x132, 0x1D9\n#_0FD948: dw $1900, $1901, $1910, $1911 ; tileB29: 0x100, 0x101, 0x110, 0x111\n#_0FD950: dw $5901, $5900, $5911, $5910 ; tileB2A: 0x101, 0x100, 0x111, 0x110\n#_0FD958: dw $5DB4, $5DB4, $5DB4, $5DB4 ; tileB2B: 0x1B4, 0x1B4, 0x1B4, 0x1B4\n#_0FD960: dw $5DB4, $5DB4, $1946, $1946 ; tileB2C: 0x1B4, 0x1B4, 0x146, 0x146\n#_0FD968: dw $5DB4, $5DB4, $5946, $5946 ; tileB2D: 0x1B4, 0x1B4, 0x146, 0x146\n#_0FD970: dw $1DB4, $1923, $1DB4, $1933 ; tileB2E: 0x1B4, 0x123, 0x1B4, 0x133\n#_0FD978: dw $5923, $190E, $5933, $1DB4 ; tileB2F: 0x123, 0x10E, 0x133, 0x1B4\n#_0FD980: dw $590E, $1923, $5DB4, $1933 ; tileB30: 0x10E, 0x123, 0x1B4, 0x133\n#_0FD988: dw $5923, $5DB4, $5933, $5DB4 ; tileB31: 0x123, 0x1B4, 0x133, 0x1B4\n#_0FD990: dw $5DB4, $1946, $5DB4, $1965 ; tileB32: 0x1B4, 0x146, 0x1B4, 0x165\n#_0FD998: dw $1966, $1967, $1910, $1911 ; tileB33: 0x166, 0x167, 0x110, 0x111\n#_0FD9A0: dw $5967, $5966, $5911, $5910 ; tileB34: 0x167, 0x166, 0x111, 0x110\n#_0FD9A8: dw $5946, $5DB4, $5965, $5DB4 ; tileB35: 0x146, 0x1B4, 0x165, 0x1B4\n#_0FD9B0: dw $1DB4, $1DB4, $1904, $1905 ; tileB36: 0x1B4, 0x1B4, 0x104, 0x105\n#_0FD9B8: dw $1DD7, $1DD6, $1906, $1DB4 ; tileB37: 0x1D7, 0x1D6, 0x106, 0x1B4\n#_0FD9C0: dw $1DD7, $1DD6, $1DD6, $5906 ; tileB38: 0x1D7, 0x1D6, 0x1D6, 0x106\n#_0FD9C8: dw $1DB4, $1DB4, $5905, $5904 ; tileB39: 0x1B4, 0x1B4, 0x105, 0x104\n#_0FD9D0: dw $5DB4, $0D4E, $5DB4, $0D27 ; tileB3A: 0x1B4, 0x14E, 0x1B4, 0x127\n#_0FD9D8: dw $14ED, $0CED, $0CED, $097C ; tileB3B: 0x0ED, 0x0ED, 0x0ED, 0x17C\n#_0FD9E0: dw $0CED, $14ED, $096C, $0CED ; tileB3C: 0x0ED, 0x0ED, 0x16C, 0x0ED\n#_0FD9E8: dw $4D4E, $5DB4, $4D27, $5DB4 ; tileB3D: 0x14E, 0x1B4, 0x127, 0x1B4\n#_0FD9F0: dw $1DB4, $5906, $1DD7, $1DD6 ; tileB3E: 0x1B4, 0x106, 0x1D7, 0x1D6\n#_0FD9F8: dw $1914, $1915, $1DB4, $1DB4 ; tileB3F: 0x114, 0x115, 0x1B4, 0x1B4\n#_0FDA00: dw $5915, $5914, $5DB4, $5DB4 ; tileB40: 0x115, 0x114, 0x1B4, 0x1B4\n#_0FDA08: dw $1906, $5DB4, $5DD6, $5DD7 ; tileB41: 0x106, 0x1B4, 0x1D6, 0x1D7\n#_0FDA10: dw $5DB4, $0D27, $5DB4, $0D27 ; tileB42: 0x1B4, 0x127, 0x1B4, 0x127\n#_0FDA18: dw $0CED, $C96C, $14ED, $0CED ; tileB43: 0x0ED, 0x16C, 0x0ED, 0x0ED\n#_0FDA20: dw $C97C, $0CED, $0CED, $14ED ; tileB44: 0x17C, 0x0ED, 0x0ED, 0x0ED\n#_0FDA28: dw $4D27, $5DB4, $4D27, $5DB4 ; tileB45: 0x127, 0x1B4, 0x127, 0x1B4\n#_0FDA30: dw $0CAA, $1D1E, $0CAA, $0CAA ; tileB46: 0x0AA, 0x11E, 0x0AA, 0x0AA\n#_0FDA38: dw $1D3E, $1DB4, $1D1E, $1D3E ; tileB47: 0x13E, 0x1B4, 0x11E, 0x13E\n#_0FDA40: dw $5DB4, $5DB4, $5DB4, $0976 ; tileB48: 0x1B4, 0x1B4, 0x1B4, 0x176\n#_0FDA48: dw $5DB4, $5DB4, $0977, $0977 ; tileB49: 0x1B4, 0x1B4, 0x177, 0x177\n#_0FDA50: dw $5DB4, $0D27, $097A, $0D78 ; tileB4A: 0x1B4, 0x127, 0x17A, 0x178\n#_0FDA58: dw $117D, $517D, $117D, $114B ; tileB4B: 0x17D, 0x17D, 0x17D, 0x14B\n#_0FDA60: dw $517D, $517D, $114B, $517D ; tileB4C: 0x17D, 0x17D, 0x14B, 0x17D\n#_0FDA68: dw $4D27, $5DB4, $4D78, $497A ; tileB4D: 0x127, 0x1B4, 0x178, 0x17A\n#_0FDA70: dw $5DB4, $5DB4, $4977, $4977 ; tileB4E: 0x1B4, 0x1B4, 0x177, 0x177\n#_0FDA78: dw $5DB4, $5DB4, $4976, $5DB4 ; tileB4F: 0x1B4, 0x1B4, 0x176, 0x1B4\n#_0FDA80: dw $1903, $1DB4, $1913, $1DD7 ; tileB50: 0x103, 0x1B4, 0x113, 0x1D7\n#_0FDA88: dw $5DB4, $0927, $5DB4, $0927 ; tileB51: 0x1B4, 0x127, 0x1B4, 0x127\n#_0FDA90: dw $517D, $117D, $114B, $114B ; tileB52: 0x17D, 0x17D, 0x14B, 0x14B\n#_0FDA98: dw $117D, $114B, $114B, $114B ; tileB53: 0x17D, 0x14B, 0x14B, 0x14B\n#_0FDAA0: dw $114B, $517D, $114B, $114B ; tileB54: 0x14B, 0x17D, 0x14B, 0x14B\n#_0FDAA8: dw $4927, $5DB4, $4927, $5DB4 ; tileB55: 0x127, 0x1B4, 0x127, 0x1B4\n#_0FDAB0: dw $917D, $114B, $117D, $114B ; tileB56: 0x17D, 0x14B, 0x17D, 0x14B\n#_0FDAB8: dw $0D7D, $4D7D, $8D7D, $194B ; tileB57: 0x17D, 0x17D, 0x17D, 0x14B\n#_0FDAC0: dw $0D7D, $4D7D, $194B, $194B ; tileB58: 0x17D, 0x17D, 0x14B, 0x14B\n#_0FDAC8: dw $0D7D, $4D7D, $194B, $CD7D ; tileB59: 0x17D, 0x17D, 0x14B, 0x17D\n#_0FDAD0: dw $114B, $D17D, $114B, $517D ; tileB5A: 0x14B, 0x17D, 0x14B, 0x17D\n#_0FDAD8: dw $0D7D, $194B, $8D7D, $194B ; tileB5B: 0x17D, 0x14B, 0x17D, 0x14B\n#_0FDAE0: dw $194A, $1901, $1910, $1911 ; tileB5C: 0x14A, 0x101, 0x110, 0x111\n#_0FDAE8: dw $5901, $594A, $5911, $5910 ; tileB5D: 0x101, 0x14A, 0x111, 0x110\n#_0FDAF0: dw $194B, $4D7D, $194B, $CD7D ; tileB5E: 0x14B, 0x17D, 0x14B, 0x17D\n#_0FDAF8: dw $1920, $1921, $196A, $195A ; tileB5F: 0x120, 0x121, 0x16A, 0x15A\n#_0FDB00: dw $5921, $5920, $595A, $596A ; tileB60: 0x121, 0x120, 0x15A, 0x16A\n#_0FDB08: dw $0D7D, $194B, $8D7D, $CD7D ; tileB61: 0x17D, 0x14B, 0x17D, 0x17D\n#_0FDB10: dw $194B, $194B, $8D7D, $CD7D ; tileB62: 0x14B, 0x14B, 0x17D, 0x17D\n#_0FDB18: dw $194B, $4D7D, $8D7D, $CD7D ; tileB63: 0x14B, 0x17D, 0x17D, 0x17D\n#_0FDB20: dw $917D, $114B, $917D, $D17D ; tileB64: 0x17D, 0x14B, 0x17D, 0x17D\n#_0FDB28: dw $114B, $114B, $D17D, $917D ; tileB65: 0x14B, 0x14B, 0x17D, 0x17D\n#_0FDB30: dw $114B, $D17D, $D17D, $D17D ; tileB66: 0x14B, 0x17D, 0x17D, 0x17D\n#_0FDB38: dw $1DB4, $5D3E, $5D3E, $5D1E ; tileB67: 0x1B4, 0x13E, 0x13E, 0x11E\n#_0FDB40: dw $1D2F, $1D2F, $0CAA, $0CAA ; tileB68: 0x12F, 0x12F, 0x0AA, 0x0AA\n#_0FDB48: dw $5DB4, $0937, $5DB4, $5DB4 ; tileB69: 0x1B4, 0x137, 0x1B4, 0x1B4\n#_0FDB50: dw $0977, $0977, $5DB4, $5DB4 ; tileB6A: 0x177, 0x177, 0x1B4, 0x1B4\n#_0FDB58: dw $0977, $097A, $5DB4, $5DB4 ; tileB6B: 0x177, 0x17A, 0x1B4, 0x1B4\n#_0FDB60: dw $0D38, $117D, $0D5E, $915D ; tileB6C: 0x138, 0x17D, 0x15E, 0x15D\n#_0FDB68: dw $517D, $4D38, $915D, $4D5E ; tileB6D: 0x17D, 0x138, 0x15D, 0x15E\n#_0FDB70: dw $497A, $4977, $5DB4, $5DB4 ; tileB6E: 0x17A, 0x177, 0x1B4, 0x1B4\n#_0FDB78: dw $4977, $4977, $5DB4, $5DB4 ; tileB6F: 0x177, 0x177, 0x1B4, 0x1B4\n#_0FDB80: dw $4937, $5DB4, $5DB4, $5DB4 ; tileB70: 0x137, 0x1B4, 0x1B4, 0x1B4\n#_0FDB88: dw $5D1E, $4CAA, $4CAA, $4CAA ; tileB71: 0x11E, 0x0AA, 0x0AA, 0x0AA\n#_0FDB90: dw $0CED, $915D, $0CED, $915D ; tileB72: 0x0ED, 0x15D, 0x0ED, 0x15D\n#_0FDB98: dw $915D, $0CED, $915D, $0CED ; tileB73: 0x15D, 0x0ED, 0x15D, 0x0ED\n#_0FDBA0: dw $5D1F, $4CAA, $5D1F, $4CAA ; tileB74: 0x11F, 0x0AA, 0x11F, 0x0AA\n#_0FDBA8: dw $190C, $190D, $991C, $991D ; tileB75: 0x10C, 0x10D, 0x11C, 0x11D\n#_0FDBB0: dw $590D, $590C, $D91D, $D91C ; tileB76: 0x10D, 0x10C, 0x11D, 0x11C\n#_0FDBB8: dw $191C, $191D, $192C, $192D ; tileB77: 0x11C, 0x11D, 0x12C, 0x12D\n#_0FDBC0: dw $591D, $591C, $592D, $592C ; tileB78: 0x11D, 0x11C, 0x12D, 0x12C\n#_0FDBC8: dw $0CBF, $4C46, $4C56, $4C54 ; tileB79: 0x0BF, 0x046, 0x056, 0x054\n#_0FDBD0: dw $1DD7, $1DB4, $1DB4, $1DB4 ; tileB7A: 0x1D7, 0x1B4, 0x1B4, 0x1B4\n#_0FDBD8: dw $5DB4, $5DD7, $5DB4, $5DB4 ; tileB7B: 0x1B4, 0x1D7, 0x1B4, 0x1B4\n#_0FDBE0: dw $1907, $1908, $1932, $1970 ; tileB7C: 0x107, 0x108, 0x132, 0x170\n#_0FDBE8: dw $5908, $5907, $5970, $5932 ; tileB7D: 0x108, 0x107, 0x170, 0x132\n#_0FDBF0: dw $1DB4, $5903, $1DB4, $5913 ; tileB7E: 0x1B4, 0x103, 0x1B4, 0x113\n#_0FDBF8: dw $1922, $9970, $1932, $1970 ; tileB7F: 0x122, 0x170, 0x132, 0x170\n#_0FDC00: dw $D970, $5922, $5970, $5932 ; tileB80: 0x170, 0x122, 0x170, 0x132\n#_0FDC08: dw $1933, $1923, $1DB4, $1932 ; tileB81: 0x133, 0x123, 0x1B4, 0x132\n#_0FDC10: dw $5923, $5933, $5932, $5DB4 ; tileB82: 0x123, 0x133, 0x132, 0x1B4\n#_0FDC18: dw $1DB4, $1933, $1DB4, $1DB4 ; tileB83: 0x1B4, 0x133, 0x1B4, 0x1B4\n#_0FDC20: dw $5933, $5DB4, $5DB4, $5DB4 ; tileB84: 0x133, 0x1B4, 0x1B4, 0x1B4\n#_0FDC28: dw $08AA, $55A6, $55A6, $55B6 ; tileB85: 0x0AA, 0x1A6, 0x1A6, 0x1B6\n#_0FDC30: dw $4D47, $0D47, $D5B5, $15B5 ; tileB86: 0x147, 0x147, 0x1B5, 0x1B5\n#_0FDC38: dw $15A6, $08AA, $15B6, $15A6 ; tileB87: 0x1A6, 0x0AA, 0x1B6, 0x1A6\n#_0FDC40: dw $4D08, $15B5, $4D35, $4D57 ; tileB88: 0x108, 0x1B5, 0x135, 0x157\n#_0FDC48: dw $95B5, $15B5, $15B5, $55B5 ; tileB89: 0x1B5, 0x1B5, 0x1B5, 0x1B5\n#_0FDC50: dw $95B5, $0D08, $15B5, $0D08 ; tileB8A: 0x1B5, 0x108, 0x1B5, 0x108\n#_0FDC58: dw $155C, $88BA, $88BA, $08BA ; tileB8B: 0x15C, 0x0BA, 0x0BA, 0x0BA\n#_0FDC60: dw $88BA, $C8BA, $C8BA, $88BA ; tileB8C: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FDC68: dw $55B7, $55A7, $08AA, $55B7 ; tileB8D: 0x1B7, 0x1A7, 0x0AA, 0x1B7\n#_0FDC70: dw $4D57, $15B5, $55A7, $4D57 ; tileB8E: 0x157, 0x1B5, 0x1A7, 0x157\n#_0FDC78: dw $C8BA, $48BA, $48BA, $556C ; tileB8F: 0x0BA, 0x0BA, 0x0BA, 0x16C\n#_0FDC80: dw $4D46, $0D35, $4D5A, $15B7 ; tileB90: 0x146, 0x135, 0x15A, 0x1B7\n#_0FDC88: dw $55B6, $15B5, $15B5, $95B5 ; tileB91: 0x1B6, 0x1B5, 0x1B5, 0x1B5\n#_0FDC90: dw $15A5, $15B5, $15B5, $15B5 ; tileB92: 0x1A5, 0x1B5, 0x1B5, 0x1B5\n#_0FDC98: dw $4D08, $15B5, $4D08, $95B5 ; tileB93: 0x108, 0x1B5, 0x108, 0x1B5\n#_0FDCA0: dw $95B5, $0D08, $0D57, $0D35 ; tileB94: 0x1B5, 0x108, 0x157, 0x135\n#_0FDCA8: dw $0D46, $4D46, $0D5A, $4D5A ; tileB95: 0x146, 0x146, 0x15A, 0x15A\n#_0FDCB0: dw $15A7, $15B7, $15B7, $08AA ; tileB96: 0x1A7, 0x1B7, 0x1B7, 0x0AA\n#_0FDCB8: dw $594C, $199B, $595C, $594C ; tileB97: 0x14C, 0x19B, 0x15C, 0x14C\n#_0FDCC0: dw $596C, $596B, $596B, $198B ; tileB98: 0x16C, 0x16B, 0x16B, 0x18B\n#_0FDCC8: dw $156B, $196C, $08AA, $196B ; tileB99: 0x16B, 0x16C, 0x0AA, 0x16B\n#_0FDCD0: dw $156B, $196C, $598B, $156B ; tileB9A: 0x16B, 0x16C, 0x18B, 0x16B\n#_0FDCD8: dw $08A4, $08BA, $08B4, $4879 ; tileB9B: 0x0A4, 0x0BA, 0x0B4, 0x079\n#_0FDCE0: dw $1DFE, $1DFE, $1DFE, $1DE1 ; tileB9C: 0x1FE, 0x1FE, 0x1FE, 0x1E1\n#_0FDCE8: dw $0895, $4895, $08BA, $4879 ; tileB9D: 0x095, 0x095, 0x0BA, 0x079\n#_0FDCF0: dw $5DB4, $552B, $552B, $552A ; tileB9E: 0x1B4, 0x12B, 0x12B, 0x12A\n#_0FDCF8: dw $155D, $156D, $154B, $154B ; tileB9F: 0x15D, 0x16D, 0x14B, 0x14B\n#_0FDD00: dw $152B, $1DB4, $152A, $152B ; tileBA0: 0x12B, 0x1B4, 0x12A, 0x12B\n#_0FDD08: dw $554D, $554C, $5DB4, $554D ; tileBA1: 0x14D, 0x14C, 0x1B4, 0x14D\n#_0FDD10: dw $154B, $154B, $155B, $155B ; tileBA2: 0x14B, 0x14B, 0x15B, 0x15B\n#_0FDD18: dw $154C, $154D, $155C, $1DB4 ; tileBA3: 0x14C, 0x14D, 0x15C, 0x1B4\n#_0FDD20: dw $156D, $155D, $154B, $154B ; tileBA4: 0x16D, 0x15D, 0x14B, 0x14B\n#_0FDD28: dw $552A, $554B, $554B, $554B ; tileBA5: 0x12A, 0x14B, 0x14B, 0x14B\n#_0FDD30: dw $154B, $157E, $154B, $156B ; tileBA6: 0x14B, 0x17E, 0x14B, 0x16B\n#_0FDD38: dw $154B, $152A, $154B, $154B ; tileBA7: 0x14B, 0x12A, 0x14B, 0x14B\n#_0FDD40: dw $154B, $153B, $154B, $154B ; tileBA8: 0x14B, 0x13B, 0x14B, 0x14B\n#_0FDD48: dw $154B, $154B, $154B, $154B ; tileBA9: 0x14B, 0x14B, 0x14B, 0x14B\n#_0FDD50: dw $157E, $154B, $154B, $154B ; tileBAA: 0x17E, 0x14B, 0x14B, 0x14B\n#_0FDD58: dw $557E, $154B, $154B, $557E ; tileBAB: 0x17E, 0x14B, 0x14B, 0x17E\n#_0FDD60: dw $553B, $554B, $554B, $554B ; tileBAC: 0x13B, 0x14B, 0x14B, 0x14B\n#_0FDD68: dw $154B, $153B, $154B, $156B ; tileBAD: 0x14B, 0x13B, 0x14B, 0x16B\n#_0FDD70: dw $155D, $155D, $154B, $154B ; tileBAE: 0x15D, 0x15D, 0x14B, 0x14B\n#_0FDD78: dw $154B, $556F, $154B, $556F ; tileBAF: 0x14B, 0x16F, 0x14B, 0x16F\n#_0FDD80: dw $1516, $1525, $1544, $1563 ; tileBB0: 0x116, 0x125, 0x144, 0x163\n#_0FDD88: dw $1524, $1525, $1562, $1562 ; tileBB1: 0x124, 0x125, 0x162, 0x162\n#_0FDD90: dw $1524, $5516, $5563, $5554 ; tileBB2: 0x124, 0x116, 0x163, 0x154\n#_0FDD98: dw $156F, $154B, $156F, $154B ; tileBB3: 0x16F, 0x14B, 0x16F, 0x14B\n#_0FDDA0: dw $554D, $553D, $5DB4, $554D ; tileBB4: 0x14D, 0x13D, 0x1B4, 0x14D\n#_0FDDA8: dw $554B, $554B, $553D, $554B ; tileBB5: 0x14B, 0x14B, 0x13D, 0x14B\n#_0FDDB0: dw $1544, $1553, $1554, $1553 ; tileBB6: 0x144, 0x153, 0x154, 0x153\n#_0FDDB8: dw $1543, $1543, $1543, $1543 ; tileBB7: 0x143, 0x143, 0x143, 0x143\n#_0FDDC0: dw $1543, $1517, $1543, $1543 ; tileBB8: 0x143, 0x117, 0x143, 0x143\n#_0FDDC8: dw $1516, $1525, $9554, $1549 ; tileBB9: 0x116, 0x125, 0x154, 0x149\n#_0FDDD0: dw $5525, $5516, $5549, $D554 ; tileBBA: 0x125, 0x116, 0x149, 0x154\n#_0FDDD8: dw $5553, $5544, $5553, $5554 ; tileBBB: 0x153, 0x144, 0x153, 0x154\n#_0FDDE0: dw $154B, $153C, $154B, $153A ; tileBBC: 0x14B, 0x13C, 0x14B, 0x13A\n#_0FDDE8: dw $553C, $554B, $553A, $554B ; tileBBD: 0x13C, 0x14B, 0x13A, 0x14B\n#_0FDDF0: dw $9554, $1559, $5509, $1529 ; tileBBE: 0x154, 0x159, 0x109, 0x129\n#_0FDDF8: dw $5559, $D554, $5529, $1509 ; tileBBF: 0x159, 0x154, 0x129, 0x109\n#_0FDE00: dw $5519, $1539, $1543, $1543 ; tileBC0: 0x119, 0x139, 0x143, 0x143\n#_0FDE08: dw $5539, $1519, $1543, $1543 ; tileBC1: 0x139, 0x119, 0x143, 0x143\n#_0FDE10: dw $154B, $154B, $154B, $153D ; tileBC2: 0x14B, 0x14B, 0x14B, 0x13D\n#_0FDE18: dw $154C, $154D, $154D, $1DB4 ; tileBC3: 0x14C, 0x14D, 0x14D, 0x1B4\n#_0FDE20: dw $1543, $1543, $5553, $1526 ; tileBC4: 0x143, 0x143, 0x153, 0x126\n#_0FDE28: dw $1543, $1543, $1572, $1573 ; tileBC5: 0x143, 0x143, 0x172, 0x173\n#_0FDE30: dw $1543, $1543, $5526, $1553 ; tileBC6: 0x143, 0x143, 0x126, 0x153\n#_0FDE38: dw $5553, $1536, $5553, $5554 ; tileBC7: 0x153, 0x136, 0x153, 0x154\n#_0FDE40: dw $1534, $1535, $157F, $157F ; tileBC8: 0x134, 0x135, 0x17F, 0x17F\n#_0FDE48: dw $5536, $1553, $1554, $1553 ; tileBC9: 0x136, 0x153, 0x154, 0x153\n#_0FDE50: dw $154B, $153C, $154B, $153C ; tileBCA: 0x14B, 0x13C, 0x14B, 0x13C\n#_0FDE58: dw $5553, $5544, $1572, $1509 ; tileBCB: 0x153, 0x144, 0x172, 0x109\n#_0FDE60: dw $3516, $3525, $B554, $3563 ; tileBCC: 0x116, 0x125, 0x154, 0x163\n#_0FDE68: dw $7525, $7516, $7563, $F554 ; tileBCD: 0x125, 0x116, 0x163, 0x154\n#_0FDE70: dw $1544, $1553, $5509, $1573 ; tileBCE: 0x144, 0x153, 0x109, 0x173\n#_0FDE78: dw $1543, $1543, $5526, $1543 ; tileBCF: 0x143, 0x143, 0x126, 0x143\n#_0FDE80: dw $1534, $1519, $157F, $157F ; tileBD0: 0x134, 0x119, 0x17F, 0x17F\n#_0FDE88: dw $B554, $B563, $5509, $150B ; tileBD1: 0x154, 0x163, 0x109, 0x10B\n#_0FDE90: dw $F563, $F554, $550B, $1509 ; tileBD2: 0x163, 0x154, 0x10B, 0x109\n#_0FDE98: dw $5519, $1535, $157F, $157F ; tileBD3: 0x119, 0x135, 0x17F, 0x17F\n#_0FDEA0: dw $554B, $554B, $554B, $554B ; tileBD4: 0x14B, 0x14B, 0x14B, 0x14B\n#_0FDEA8: dw $5519, $151B, $157F, $157F ; tileBD5: 0x119, 0x11B, 0x17F, 0x17F\n#_0FDEB0: dw $551B, $1519, $157F, $157F ; tileBD6: 0x11B, 0x119, 0x17F, 0x17F\n#_0FDEB8: dw $554D, $554C, $5DB4, $555C ; tileBD7: 0x14D, 0x14C, 0x1B4, 0x15C\n#_0FDEC0: dw $154B, $154B, $557E, $154B ; tileBD8: 0x14B, 0x14B, 0x17E, 0x14B\n#_0FDEC8: dw $154B, $156E, $154B, $157E ; tileBD9: 0x14B, 0x16E, 0x14B, 0x17E\n#_0FDED0: dw $157E, $557E, $154B, $154B ; tileBDA: 0x17E, 0x17E, 0x14B, 0x14B\n#_0FDED8: dw $D5B5, $0D57, $0D57, $15A7 ; tileBDB: 0x1B5, 0x157, 0x157, 0x1A7\n#_0FDEE0: dw $08AA, $486B, $08B8, $487B ; tileBDC: 0x0AA, 0x06B, 0x0B8, 0x07B\n#_0FDEE8: dw $085A, $085D, $085D, $0843 ; tileBDD: 0x05A, 0x05D, 0x05D, 0x043\n#_0FDEF0: dw $884E, $489C, $084E, $08BA ; tileBDE: 0x04E, 0x09C, 0x04E, 0x0BA\n#_0FDEF8: dw $884E, $08BA, $084E, $CC9C ; tileBDF: 0x04E, 0x0BA, 0x04E, 0x09C\n#_0FDF00: dw $4C8B, $0CAA, $0C8B, $4C8B ; tileBE0: 0x08B, 0x0AA, 0x08B, 0x08B\n#_0FDF08: dw $0C8B, $4C8B, $0CAA, $0C8B ; tileBE1: 0x08B, 0x08B, 0x0AA, 0x08B\n#_0FDF10: dw $0C8B, $4C8B, $4C8B, $0CAA ; tileBE2: 0x08B, 0x08B, 0x08B, 0x0AA\n#_0FDF18: dw $1DD6, $1DB4, $1DB4, $5903 ; tileBE3: 0x1D6, 0x1B4, 0x1B4, 0x103\n#_0FDF20: dw $1DB4, $5903, $1DD7, $5913 ; tileBE4: 0x1B4, 0x103, 0x1D7, 0x113\n#_0FDF28: dw $1DB4, $5913, $1DD6, $1DB4 ; tileBE5: 0x1B4, 0x113, 0x1D6, 0x1B4\n#_0FDF30: dw $1DD7, $1DB4, $1DB4, $5903 ; tileBE6: 0x1D7, 0x1B4, 0x1B4, 0x103\n#_0FDF38: dw $1902, $5902, $1912, $5912 ; tileBE7: 0x102, 0x102, 0x112, 0x112\n#_0FDF40: dw $1903, $5913, $1913, $1DD7 ; tileBE8: 0x103, 0x113, 0x113, 0x1D7\n#_0FDF48: dw $1DD7, $1DB4, $1DB4, $1903 ; tileBE9: 0x1D7, 0x1B4, 0x1B4, 0x103\n#_0FDF50: dw $1DD7, $1913, $5903, $1DD6 ; tileBEA: 0x1D7, 0x113, 0x103, 0x1D6\n#_0FDF58: dw $5913, $1903, $1DB4, $1913 ; tileBEB: 0x113, 0x103, 0x1B4, 0x113\n#_0FDF60: dw $5DB4, $5D3E, $5D3E, $5D1E ; tileBEC: 0x1B4, 0x13E, 0x13E, 0x11E\n#_0FDF68: dw $084D, $0867, $0880, $1091 ; tileBED: 0x04D, 0x067, 0x080, 0x091\n#_0FDF70: dw $5D2E, $5D3F, $5DB4, $5D2E ; tileBEE: 0x12E, 0x13F, 0x1B4, 0x12E\n#_0FDF78: dw $0D30, $0D31, $0D52, $0D44 ; tileBEF: 0x130, 0x131, 0x152, 0x144\n#_0FDF80: dw $0D32, $0D32, $0D78, $0D79 ; tileBF0: 0x132, 0x132, 0x178, 0x179\n#_0FDF88: dw $4D32, $4D32, $4D79, $4D78 ; tileBF1: 0x132, 0x132, 0x179, 0x178\n#_0FDF90: dw $4D31, $4D30, $4D44, $4D52 ; tileBF2: 0x131, 0x130, 0x144, 0x152\n#_0FDF98: dw $0D52, $0D43, $0D52, $0D43 ; tileBF3: 0x152, 0x143, 0x152, 0x143\n#_0FDFA0: dw $0D48, $0D49, $0D48, $0D49 ; tileBF4: 0x148, 0x149, 0x148, 0x149\n#_0FDFA8: dw $4D49, $4D48, $4D49, $4D48 ; tileBF5: 0x149, 0x148, 0x149, 0x148\n#_0FDFB0: dw $4D43, $4D52, $4D43, $4D52 ; tileBF6: 0x143, 0x152, 0x143, 0x152\n#_0FDFB8: dw $2D48, $2D49, $2D58, $2D59 ; tileBF7: 0x148, 0x149, 0x158, 0x159\n#_0FDFC0: dw $6D49, $6D48, $6D59, $6D58 ; tileBF8: 0x149, 0x148, 0x159, 0x158\n#_0FDFC8: dw $0D52, $0D53, $0D52, $0D63 ; tileBF9: 0x152, 0x153, 0x152, 0x163\n#_0FDFD0: dw $2D54, $2D62, $2D64, $2D72 ; tileBFA: 0x154, 0x162, 0x164, 0x172\n#_0FDFD8: dw $6D62, $6D54, $6D72, $6D64 ; tileBFB: 0x162, 0x154, 0x172, 0x164\n#_0FDFE0: dw $4D53, $4D52, $4D63, $4D52 ; tileBFC: 0x153, 0x152, 0x163, 0x152\n#_0FDFE8: dw $0D52, $0D73, $0D52, $4D52 ; tileBFD: 0x152, 0x173, 0x152, 0x152\n#_0FDFF0: dw $0D74, $08FE, $0D33, $0D3F ; tileBFE: 0x174, 0x0FE, 0x133, 0x13F\n#_0FDFF8: dw $48FE, $4D74, $4D3F, $4D33 ; tileBFF: 0x0FE, 0x174, 0x13F, 0x133\n#_0FE000: dw $4D73, $4D52, $0D52, $4D52 ; tileC00: 0x173, 0x152, 0x152, 0x152\n#_0FE008: dw $0D52, $4D52, $0D52, $4D52 ; tileC01: 0x152, 0x152, 0x152, 0x152\n#_0FE010: dw $0D1F, $0D3E, $0D1F, $0D3C ; tileC02: 0x11F, 0x13E, 0x11F, 0x13C\n#_0FE018: dw $4D3E, $4D1F, $4D3C, $4D1F ; tileC03: 0x13E, 0x11F, 0x13C, 0x11F\n#_0FE020: dw $0D1F, $0D3C, $0D1F, $0D3C ; tileC04: 0x11F, 0x13C, 0x11F, 0x13C\n#_0FE028: dw $4D3C, $4D1F, $4D3C, $4D1F ; tileC05: 0x13C, 0x11F, 0x13C, 0x11F\n#_0FE030: dw $0D52, $4D52, $0D68, $4D68 ; tileC06: 0x152, 0x152, 0x168, 0x168\n#_0FE038: dw $0D45, $4D45, $0D34, $4D34 ; tileC07: 0x145, 0x145, 0x134, 0x134\n#_0FE040: dw $0D0B, $0D1B, $0D0B, $0D1B ; tileC08: 0x10B, 0x11B, 0x10B, 0x11B\n#_0FE048: dw $4D1B, $4D0B, $4D1B, $4D0B ; tileC09: 0x11B, 0x10B, 0x11B, 0x10B\n#_0FE050: dw $0895, $4895, $08AB, $08BB ; tileC0A: 0x095, 0x095, 0x0AB, 0x0BB\n#_0FE058: dw $0D47, $15A6, $15B5, $0D08 ; tileC0B: 0x147, 0x1A6, 0x1B5, 0x108\n#_0FE060: dw $08BB, $08BA, $0879, $08AB ; tileC0C: 0x0BB, 0x0BA, 0x079, 0x0AB\n#_0FE068: dw $4D35, $0D46, $55B7, $0D5A ; tileC0D: 0x135, 0x146, 0x1B7, 0x15A\n#_0FE070: dw $884E, $CC9C, $084E, $0C6A ; tileC0E: 0x04E, 0x09C, 0x04E, 0x06A\n#_0FE078: dw $154B, $154B, $154B, $1516 ; tileC0F: 0x14B, 0x14B, 0x14B, 0x116\n#_0FE080: dw $154B, $154B, $1524, $1525 ; tileC10: 0x14B, 0x14B, 0x124, 0x125\n#_0FE088: dw $154B, $154B, $5516, $154B ; tileC11: 0x14B, 0x14B, 0x116, 0x14B\n#_0FE090: dw $153D, $154D, $154D, $1DB4 ; tileC12: 0x13D, 0x14D, 0x14D, 0x1B4\n#_0FE098: dw $5553, $5564, $5543, $5562 ; tileC13: 0x153, 0x164, 0x143, 0x162\n#_0FE0A0: dw $1524, $1564, $1562, $1562 ; tileC14: 0x124, 0x164, 0x162, 0x162\n#_0FE0A8: dw $5564, $1525, $1562, $1562 ; tileC15: 0x164, 0x125, 0x162, 0x162\n#_0FE0B0: dw $1564, $1553, $1562, $1543 ; tileC16: 0x164, 0x153, 0x162, 0x143\n#_0FE0B8: dw $1543, $1543, $1572, $5526 ; tileC17: 0x143, 0x143, 0x172, 0x126\n#_0FE0C0: dw $1543, $1543, $1526, $1573 ; tileC18: 0x143, 0x143, 0x126, 0x173\n#_0FE0C8: dw $1534, $5536, $157F, $5509 ; tileC19: 0x134, 0x136, 0x17F, 0x109\n#_0FE0D0: dw $5519, $1539, $1572, $1573 ; tileC1A: 0x119, 0x139, 0x172, 0x173\n#_0FE0D8: dw $5539, $1519, $1572, $1573 ; tileC1B: 0x139, 0x119, 0x172, 0x173\n#_0FE0E0: dw $1536, $1535, $1509, $157F ; tileC1C: 0x136, 0x135, 0x109, 0x17F\n#_0FE0E8: dw $154B, $154B, $155B, $157B ; tileC1D: 0x14B, 0x14B, 0x15B, 0x17B\n#_0FE0F0: dw $556F, $5519, $556F, $157F ; tileC1E: 0x16F, 0x119, 0x16F, 0x17F\n#_0FE0F8: dw $1519, $156F, $157F, $156F ; tileC1F: 0x119, 0x16F, 0x17F, 0x16F\n#_0FE100: dw $154B, $154B, $157B, $155B ; tileC20: 0x14B, 0x14B, 0x17B, 0x15B\n#_0FE108: dw $08BA, $4CA4, $0879, $4CB4 ; tileC21: 0x0BA, 0x0A4, 0x079, 0x0B4\n#_0FE110: dw $DDD0, $1DE2, $9DC0, $DDC0 ; tileC22: 0x1D0, 0x1E2, 0x1C0, 0x1C0\n#_0FE118: dw $5DE2, $9DD0, $9DC0, $DDC0 ; tileC23: 0x1E2, 0x1D0, 0x1C0, 0x1C0\n#_0FE120: dw $084C, $484C, $08BA, $50AF ; tileC24: 0x04C, 0x04C, 0x0BA, 0x0AF\n#_0FE128: dw $084C, $5046, $5056, $4854 ; tileC25: 0x04C, 0x046, 0x056, 0x054\n#_0FE130: dw $1575, $1575, $1575, $1575 ; tileC26: 0x175, 0x175, 0x175, 0x175\n#_0FE138: dw $1575, $1575, $9565, $9548 ; tileC27: 0x175, 0x175, 0x165, 0x148\n#_0FE140: dw $1575, $1575, $D548, $D565 ; tileC28: 0x175, 0x175, 0x148, 0x165\n#_0FE148: dw $1575, $1575, $5559, $5558 ; tileC29: 0x175, 0x175, 0x159, 0x158\n#_0FE150: dw $1575, $1575, $5558, $1558 ; tileC2A: 0x175, 0x175, 0x158, 0x158\n#_0FE158: dw $1575, $1575, $1558, $1559 ; tileC2B: 0x175, 0x175, 0x158, 0x159\n#_0FE160: dw $1565, $1548, $1575, $1575 ; tileC2C: 0x165, 0x148, 0x175, 0x175\n#_0FE168: dw $5548, $5565, $1575, $1575 ; tileC2D: 0x148, 0x165, 0x175, 0x175\n#_0FE170: dw $5559, $5558, $D559, $D54A ; tileC2E: 0x159, 0x158, 0x159, 0x14A\n#_0FE178: dw $554A, $1574, $1574, $1574 ; tileC2F: 0x14A, 0x174, 0x174, 0x174\n#_0FE180: dw $954A, $D558, $154A, $1558 ; tileC30: 0x14A, 0x158, 0x14A, 0x158\n#_0FE188: dw $9558, $D54A, $5558, $554A ; tileC31: 0x158, 0x14A, 0x158, 0x14A\n#_0FE190: dw $D558, $9559, $1558, $1558 ; tileC32: 0x158, 0x159, 0x158, 0x158\n#_0FE198: dw $5559, $1558, $D559, $D558 ; tileC33: 0x159, 0x158, 0x159, 0x158\n#_0FE1A0: dw $1558, $5558, $D558, $9558 ; tileC34: 0x158, 0x158, 0x158, 0x158\n#_0FE1A8: dw $1558, $1559, $D558, $9559 ; tileC35: 0x158, 0x159, 0x158, 0x159\n#_0FE1B0: dw $1575, $1575, $1575, $5559 ; tileC36: 0x175, 0x175, 0x175, 0x159\n#_0FE1B8: dw $5559, $554A, $554A, $954A ; tileC37: 0x159, 0x14A, 0x14A, 0x14A\n#_0FE1C0: dw $954A, $9558, $9559, $1575 ; tileC38: 0x14A, 0x158, 0x159, 0x175\n#_0FE1C8: dw $D54A, $1574, $D559, $9558 ; tileC39: 0x14A, 0x174, 0x159, 0x158\n#_0FE1D0: dw $1574, $1574, $D558, $D558 ; tileC3A: 0x174, 0x174, 0x158, 0x158\n#_0FE1D8: dw $954A, $D558, $9559, $1575 ; tileC3B: 0x14A, 0x158, 0x159, 0x175\n#_0FE1E0: dw $9558, $D558, $1575, $1575 ; tileC3C: 0x158, 0x158, 0x175, 0x175\n#_0FE1E8: dw $D558, $9559, $1575, $1575 ; tileC3D: 0x158, 0x159, 0x175, 0x175\n#_0FE1F0: dw $5559, $554A, $554A, $1574 ; tileC3E: 0x159, 0x14A, 0x14A, 0x174\n#_0FE1F8: dw $1574, $154A, $1574, $954A ; tileC3F: 0x174, 0x14A, 0x174, 0x14A\n#_0FE200: dw $1558, $554A, $D54A, $1574 ; tileC40: 0x158, 0x14A, 0x14A, 0x174\n#_0FE208: dw $1574, $1574, $954A, $D54A ; tileC41: 0x174, 0x174, 0x14A, 0x14A\n#_0FE210: dw $1574, $1574, $1574, $954A ; tileC42: 0x174, 0x174, 0x174, 0x14A\n#_0FE218: dw $1574, $954A, $D558, $9559 ; tileC43: 0x174, 0x14A, 0x158, 0x159\n#_0FE220: dw $9565, $9548, $9549, $156D ; tileC44: 0x165, 0x148, 0x149, 0x16D\n#_0FE228: dw $D548, $9548, $156D, $156D ; tileC45: 0x148, 0x148, 0x16D, 0x16D\n#_0FE230: dw $D548, $D565, $156D, $D549 ; tileC46: 0x148, 0x165, 0x16D, 0x149\n#_0FE238: dw $D559, $D54A, $1575, $D559 ; tileC47: 0x159, 0x14A, 0x175, 0x159\n#_0FE240: dw $154A, $554A, $D54A, $954A ; tileC48: 0x14A, 0x14A, 0x14A, 0x14A\n#_0FE248: dw $954A, $9559, $9559, $1575 ; tileC49: 0x14A, 0x159, 0x159, 0x175\n#_0FE250: dw $1549, $156D, $1565, $1549 ; tileC4A: 0x149, 0x16D, 0x165, 0x149\n#_0FE258: dw $156D, $156D, $156D, $156D ; tileC4B: 0x16D, 0x16D, 0x16D, 0x16D\n#_0FE260: dw $5549, $5548, $D549, $D565 ; tileC4C: 0x149, 0x148, 0x149, 0x165\n#_0FE268: dw $554A, $154A, $D54A, $1574 ; tileC4D: 0x14A, 0x14A, 0x14A, 0x174\n#_0FE270: dw $1559, $1575, $154A, $1559 ; tileC4E: 0x159, 0x175, 0x14A, 0x159\n#_0FE278: dw $1575, $1565, $9565, $D548 ; tileC4F: 0x175, 0x165, 0x165, 0x148\n#_0FE280: dw $1549, $156D, $9549, $156D ; tileC50: 0x149, 0x16D, 0x149, 0x16D\n#_0FE288: dw $156D, $D549, $156D, $156D ; tileC51: 0x16D, 0x149, 0x16D, 0x16D\n#_0FE290: dw $1574, $154A, $D558, $9558 ; tileC52: 0x174, 0x14A, 0x158, 0x158\n#_0FE298: dw $1549, $156D, $1565, $1548 ; tileC53: 0x149, 0x16D, 0x165, 0x148\n#_0FE2A0: dw $156D, $5549, $5548, $5565 ; tileC54: 0x16D, 0x149, 0x148, 0x165\n#_0FE2A8: dw $1548, $5548, $1575, $1575 ; tileC55: 0x148, 0x148, 0x175, 0x175\n#_0FE2B0: dw $153E, $153E, $953E, $953E ; tileC56: 0x13E, 0x13E, 0x13E, 0x13E\n#_0FE2B8: dw $553E, $553E, $553E, $553E ; tileC57: 0x13E, 0x13E, 0x13E, 0x13E\n#_0FE2C0: dw $553E, $553E, $553E, $150C ; tileC58: 0x13E, 0x13E, 0x13E, 0x10C\n#_0FE2C8: dw $553E, $150C, $D50C, $553E ; tileC59: 0x13E, 0x10C, 0x10C, 0x13E\n#_0FE2D0: dw $153E, $153E, $153E, $153E ; tileC5A: 0x13E, 0x13E, 0x13E, 0x13E\n#_0FE2D8: dw $150F, $953E, $953E, $150E ; tileC5B: 0x10F, 0x13E, 0x13E, 0x10E\n#_0FE2E0: dw $150D, $150D, $153F, $153F ; tileC5C: 0x10D, 0x10D, 0x13F, 0x13F\n#_0FE2E8: dw $953E, $550D, $550E, $153E ; tileC5D: 0x13E, 0x10D, 0x10E, 0x13E\n#_0FE2F0: dw $153E, $950E, $150F, $153E ; tileC5E: 0x13E, 0x10E, 0x10F, 0x13E\n#_0FE2F8: dw $153F, $153F, $950D, $950D ; tileC5F: 0x13F, 0x13F, 0x10D, 0x10D\n#_0FE300: dw $D50E, $153E, $153E, $550F ; tileC60: 0x10E, 0x13E, 0x13E, 0x10F\n#_0FE308: dw $150F, $153E, $153E, $153E ; tileC61: 0x10F, 0x13E, 0x13E, 0x13E\n#_0FE310: dw $153E, $951F, $553E, $953E ; tileC62: 0x13E, 0x11F, 0x13E, 0x13E\n#_0FE318: dw $151C, $153F, $151C, $153F ; tileC63: 0x11C, 0x13F, 0x11C, 0x13F\n#_0FE320: dw $153F, $153F, $153F, $153F ; tileC64: 0x13F, 0x13F, 0x13F, 0x13F\n#_0FE328: dw $153F, $551C, $153F, $D51C ; tileC65: 0x13F, 0x11C, 0x13F, 0x11C\n#_0FE330: dw $953E, $950E, $550C, $150E ; tileC66: 0x13E, 0x10E, 0x10C, 0x10E\n#_0FE338: dw $D50E, $D53E, $550E, $150C ; tileC67: 0x10E, 0x13E, 0x10E, 0x10C\n#_0FE340: dw $1DED, $1DFF, $1C9B, $1DFF ; tileC68: 0x1ED, 0x1FF, 0x09B, 0x1FF\n#_0FE348: dw $1DFF, $1DED, $1DFF, $1C9B ; tileC69: 0x1FF, 0x1ED, 0x1FF, 0x09B\n#_0FE350: dw $1DED, $1DED, $1C9B, $1C9B ; tileC6A: 0x1ED, 0x1ED, 0x09B, 0x09B\n#_0FE358: dw $1DFF, $1DFF, $1DFF, $1DB1 ; tileC6B: 0x1FF, 0x1FF, 0x1FF, 0x1B1\n#_0FE360: dw $1DFF, $1DFF, $1DFF, $1DFD ; tileC6C: 0x1FF, 0x1FF, 0x1FF, 0x1FD\n#_0FE368: dw $1DFF, $1DED, $1DFF, $1DA1 ; tileC6D: 0x1FF, 0x1ED, 0x1FF, 0x1A1\n#_0FE370: dw $1DED, $1DFF, $1C9B, $1DB1 ; tileC6E: 0x1ED, 0x1FF, 0x09B, 0x1B1\n#_0FE378: dw $3D16, $3D16, $3D16, $3D16 ; tileC6F: 0x116, 0x116, 0x116, 0x116\n#_0FE380: dw $FD16, $FD15, $FD15, $FD28 ; tileC70: 0x116, 0x115, 0x115, 0x128\n#_0FE388: dw $FD28, $FD27, $FD27, $FD18 ; tileC71: 0x128, 0x127, 0x127, 0x118\n#_0FE390: dw $BD27, $BD28, $BD18, $BD27 ; tileC72: 0x127, 0x128, 0x118, 0x127\n#_0FE398: dw $BD15, $BD16, $BD28, $BD15 ; tileC73: 0x115, 0x116, 0x128, 0x115\n#_0FE3A0: dw $0D50, $0D51, $0D40, $0D41 ; tileC74: 0x150, 0x151, 0x140, 0x141\n#_0FE3A8: dw $4D51, $4D50, $4D41, $4D40 ; tileC75: 0x151, 0x150, 0x141, 0x140\n#_0FE3B0: dw $FD18, $FD37, $FD19, $FD2F ; tileC76: 0x118, 0x137, 0x119, 0x12F\n#_0FE3B8: dw $BD37, $BD18, $BD2F, $BD19 ; tileC77: 0x137, 0x118, 0x12F, 0x119\n#_0FE3C0: dw $FD09, $FD1F, $FD0F, $FD0E ; tileC78: 0x109, 0x11F, 0x10F, 0x10E\n#_0FE3C8: dw $BD1F, $BD09, $BD0E, $BD0F ; tileC79: 0x11F, 0x109, 0x10E, 0x10F\n#_0FE3D0: dw $0944, $0945, $0954, $0955 ; tileC7A: 0x144, 0x145, 0x154, 0x155\n#_0FE3D8: dw $4945, $4944, $4955, $4954 ; tileC7B: 0x145, 0x144, 0x155, 0x154\n#_0FE3E0: dw $9DE3, $9D3B, $1D3C, $88AA ; tileC7C: 0x1E3, 0x13B, 0x13C, 0x0AA\n#_0FE3E8: dw $DD3B, $DDE3, $C8AA, $5D3C ; tileC7D: 0x13B, 0x1E3, 0x0AA, 0x13C\n#_0FE3F0: dw $0D50, $0D51, $0D68, $0D69 ; tileC7E: 0x150, 0x151, 0x168, 0x169\n#_0FE3F8: dw $4D51, $4D50, $4D69, $4D68 ; tileC7F: 0x151, 0x150, 0x169, 0x168\n#_0FE400: dw $0946, $0947, $0962, $095A ; tileC80: 0x146, 0x147, 0x162, 0x15A\n#_0FE408: dw $4947, $4946, $495A, $4962 ; tileC81: 0x147, 0x146, 0x15A, 0x162\n#_0FE410: dw $0978, $4978, $0979, $4979 ; tileC82: 0x178, 0x178, 0x179, 0x179\n#_0FE418: dw $FD18, $FD36, $FD18, $FD26 ; tileC83: 0x118, 0x136, 0x118, 0x126\n#_0FE420: dw $FD35, $FD2E, $FD25, $FD1E ; tileC84: 0x135, 0x12E, 0x125, 0x11E\n#_0FE428: dw $7D18, $7D26, $7D18, $7D36 ; tileC85: 0x118, 0x126, 0x118, 0x136\n#_0FE430: dw $7D25, $7D1E, $7D35, $7D2E ; tileC86: 0x125, 0x11E, 0x135, 0x12E\n#_0FE438: dw $1D3B, $08AA, $9D3B, $88AA ; tileC87: 0x13B, 0x0AA, 0x13B, 0x0AA\n#_0FE440: dw $08AA, $1900, $1900, $1901 ; tileC88: 0x0AA, 0x100, 0x100, 0x101\n#_0FE448: dw $1912, $1912, $1922, $5922 ; tileC89: 0x112, 0x112, 0x122, 0x122\n#_0FE450: dw $5912, $5912, $1922, $5922 ; tileC8A: 0x112, 0x112, 0x122, 0x122\n#_0FE458: dw $5900, $48AA, $5901, $5900 ; tileC8B: 0x100, 0x0AA, 0x101, 0x100\n#_0FE460: dw $1DCF, $5DCF, $1DE1, $5DE1 ; tileC8C: 0x1CF, 0x1CF, 0x1E1, 0x1E1\n#_0FE468: dw $7D18, $7D04, $FD26, $7D14 ; tileC8D: 0x118, 0x104, 0x126, 0x114\n#_0FE470: dw $7D1D, $BDE3, $7D2D, $BDE3 ; tileC8E: 0x11D, 0x1E3, 0x12D, 0x1E3\n#_0FE478: dw $1901, $1911, $1911, $191C ; tileC8F: 0x101, 0x111, 0x111, 0x11C\n#_0FE480: dw $191C, $191C, $191C, $191C ; tileC90: 0x11C, 0x11C, 0x11C, 0x11C\n#_0FE488: dw $591C, $591C, $591C, $591C ; tileC91: 0x11C, 0x11C, 0x11C, 0x11C\n#_0FE490: dw $5911, $5901, $591C, $5911 ; tileC92: 0x111, 0x101, 0x11C, 0x111\n#_0FE498: dw $7D26, $FD14, $FD18, $FD04 ; tileC93: 0x126, 0x114, 0x118, 0x104\n#_0FE4A0: dw $FD2D, $3DE3, $FD1D, $3DE3 ; tileC94: 0x12D, 0x1E3, 0x11D, 0x1E3\n#_0FE4A8: dw $1910, $1921, $1910, $9921 ; tileC95: 0x110, 0x121, 0x110, 0x121\n#_0FE4B0: dw $193A, $593A, $993A, $D93A ; tileC96: 0x13A, 0x13A, 0x13A, 0x13A\n#_0FE4B8: dw $191C, $191C, $191C, $194E ; tileC97: 0x11C, 0x11C, 0x11C, 0x14E\n#_0FE4C0: dw $591C, $591C, $196E, $596E ; tileC98: 0x11C, 0x11C, 0x16E, 0x16E\n#_0FE4C8: dw $591C, $591C, $594E, $591C ; tileC99: 0x11C, 0x11C, 0x14E, 0x11C\n#_0FE4D0: dw $5921, $5910, $D921, $5910 ; tileC9A: 0x121, 0x110, 0x121, 0x110\n#_0FE4D8: dw $48AA, $DD3C, $5D3B, $5DE3 ; tileC9B: 0x0AA, 0x13C, 0x13B, 0x1E3\n#_0FE4E0: dw $3D0E, $3D0F, $3D1F, $3D09 ; tileC9C: 0x10E, 0x10F, 0x11F, 0x109\n#_0FE4E8: dw $3D2F, $3D19, $3D37, $7D18 ; tileC9D: 0x12F, 0x119, 0x137, 0x118\n#_0FE4F0: dw $591C, $195E, $591C, $196A ; tileC9E: 0x11C, 0x15E, 0x11C, 0x16A\n#_0FE4F8: dw $1924, $5924, $1934, $5934 ; tileC9F: 0x124, 0x124, 0x134, 0x134\n#_0FE500: dw $595E, $591C, $596A, $591C ; tileCA0: 0x15E, 0x11C, 0x16A, 0x11C\n#_0FE508: dw $48AA, $5D3B, $C8AA, $DD3B ; tileCA1: 0x0AA, 0x13B, 0x0AA, 0x13B\n#_0FE510: dw $7DE3, $BD2D, $7DE3, $BD1D ; tileCA2: 0x1E3, 0x12D, 0x1E3, 0x11D\n#_0FE518: dw $BD14, $3D26, $BD04, $BD18 ; tileCA3: 0x114, 0x126, 0x104, 0x118\n#_0FE520: dw $3D18, $3D27, $3D27, $3D28 ; tileCA4: 0x118, 0x127, 0x127, 0x128\n#_0FE528: dw $1D3B, $88AA, $9D3B, $88AA ; tileCA5: 0x13B, 0x0AA, 0x13B, 0x0AA\n#_0FE530: dw $191C, $197A, $191C, $191C ; tileCA6: 0x11C, 0x17A, 0x11C, 0x11C\n#_0FE538: dw $1913, $5913, $191C, $191C ; tileCA7: 0x113, 0x113, 0x11C, 0x11C\n#_0FE540: dw $597A, $191C, $191C, $191C ; tileCA8: 0x17A, 0x11C, 0x11C, 0x11C\n#_0FE548: dw $BD2E, $BD35, $BD1E, $BD25 ; tileCA9: 0x12E, 0x135, 0x11E, 0x125\n#_0FE550: dw $BD36, $BD18, $BD26, $BD18 ; tileCAA: 0x136, 0x118, 0x126, 0x118\n#_0FE558: dw $1920, $1931, $1930, $1903 ; tileCAB: 0x120, 0x131, 0x130, 0x103\n#_0FE560: dw $1902, $191C, $1931, $1902 ; tileCAC: 0x102, 0x11C, 0x131, 0x102\n#_0FE568: dw $591C, $5902, $5902, $5931 ; tileCAD: 0x11C, 0x102, 0x102, 0x131\n#_0FE570: dw $5931, $5920, $5903, $5930 ; tileCAE: 0x131, 0x120, 0x103, 0x130\n#_0FE578: dw $BD37, $7D18, $BD2F, $BD19 ; tileCAF: 0x137, 0x118, 0x12F, 0x119\n#_0FE580: dw $48AA, $1932, $48AA, $48AA ; tileCB0: 0x0AA, 0x132, 0x0AA, 0x0AA\n#_0FE588: dw $1903, $1931, $1932, $1903 ; tileCB1: 0x103, 0x131, 0x132, 0x103\n#_0FE590: dw $192C, $191C, $1923, $190B ; tileCB2: 0x12C, 0x11C, 0x123, 0x10B\n#_0FE598: dw $191C, $191C, $190B, $190B ; tileCB3: 0x11C, 0x11C, 0x10B, 0x10B\n#_0FE5A0: dw $591C, $591C, $590B, $590B ; tileCB4: 0x11C, 0x11C, 0x10B, 0x10B\n#_0FE5A8: dw $591C, $592C, $590B, $1923 ; tileCB5: 0x11C, 0x12C, 0x10B, 0x123\n#_0FE5B0: dw $5931, $5903, $5903, $5932 ; tileCB6: 0x131, 0x103, 0x103, 0x132\n#_0FE5B8: dw $5932, $08AA, $08AA, $08AA ; tileCB7: 0x132, 0x0AA, 0x0AA, 0x0AA\n#_0FE5C0: dw $9DFE, $9DFE, $9DFE, $9DFE ; tileCB8: 0x1FE, 0x1FE, 0x1FE, 0x1FE\n#_0FE5C8: dw $9D3C, $08AA, $1DE3, $1D3B ; tileCB9: 0x13C, 0x0AA, 0x1E3, 0x13B\n#_0FE5D0: dw $1923, $190B, $1933, $48AA ; tileCBA: 0x123, 0x10B, 0x133, 0x0AA\n#_0FE5D8: dw $190B, $190B, $48AA, $48AA ; tileCBB: 0x10B, 0x10B, 0x0AA, 0x0AA\n#_0FE5E0: dw $590B, $590B, $08AA, $08AA ; tileCBC: 0x10B, 0x10B, 0x0AA, 0x0AA\n#_0FE5E8: dw $590B, $5923, $08AA, $5933 ; tileCBD: 0x10B, 0x123, 0x0AA, 0x133\n#_0FE5F0: dw $5DE2, $DDD0, $9DC0, $DDC0 ; tileCBE: 0x1E2, 0x1D0, 0x1C0, 0x1C0\n#_0FE5F8: dw $9DD0, $9DD0, $9DC0, $DDC0 ; tileCBF: 0x1D0, 0x1D0, 0x1C0, 0x1C0\n#_0FE600: dw $7D27, $7D18, $7D28, $7D27 ; tileCC0: 0x127, 0x118, 0x128, 0x127\n#_0FE608: dw $7D19, $7D2F, $7D18, $7D37 ; tileCC1: 0x119, 0x12F, 0x118, 0x137\n#_0FE610: dw $7D0F, $7D0E, $7D09, $7D1F ; tileCC2: 0x10F, 0x10E, 0x109, 0x11F\n#_0FE618: dw $7D28, $7D28, $7D28, $7D28 ; tileCC3: 0x128, 0x128, 0x128, 0x128\n#_0FE620: dw $7DE3, $3D1D, $7DE3, $3D2D ; tileCC4: 0x1E3, 0x11D, 0x1E3, 0x12D\n#_0FE628: dw $3D04, $3D18, $3D14, $BD26 ; tileCC5: 0x104, 0x118, 0x114, 0x126\n#_0FE630: dw $11E0, $51E0, $0890, $0891 ; tileCC6: 0x1E0, 0x1E0, 0x090, 0x091\n#_0FE638: dw $11E0, $49E0, $0890, $0891 ; tileCC7: 0x1E0, 0x1E0, 0x090, 0x091\n#_0FE640: dw $7D18, $FD37, $FD19, $FD2F ; tileCC8: 0x118, 0x137, 0x119, 0x12F\n#_0FE648: dw $15E3, $15E3, $15E3, $15E3 ; tileCC9: 0x1E3, 0x1E3, 0x1E3, 0x1E3\n#_0FE650: dw $CD53, $0D42, $CD43, $0D42 ; tileCCA: 0x153, 0x142, 0x143, 0x142\n#_0FE658: dw $0D42, $0D42, $0D42, $0D42 ; tileCCB: 0x142, 0x142, 0x142, 0x142\n#_0FE660: dw $0D42, $0D43, $0D42, $0D53 ; tileCCC: 0x142, 0x143, 0x142, 0x153\n#_0FE668: dw $15E3, $CD53, $15E3, $CD43 ; tileCCD: 0x1E3, 0x153, 0x1E3, 0x143\n#_0FE670: dw $3D1E, $3D25, $3D2E, $3D35 ; tileCCE: 0x11E, 0x125, 0x12E, 0x135\n#_0FE678: dw $3D26, $3D18, $3D36, $3D18 ; tileCCF: 0x126, 0x118, 0x136, 0x118\n#_0FE680: dw $3D26, $7D26, $3D18, $FD26 ; tileCD0: 0x126, 0x126, 0x118, 0x126\n#_0FE688: dw $CD43, $0D42, $15E3, $0D42 ; tileCD1: 0x143, 0x142, 0x1E3, 0x142\n#_0FE690: dw $0D43, $15E3, $0D53, $15E3 ; tileCD2: 0x143, 0x1E3, 0x153, 0x1E3\n#_0FE698: dw $BD18, $BD18, $BD18, $BD18 ; tileCD3: 0x118, 0x118, 0x118, 0x118\n#_0FE6A0: dw $15E3, $0D42, $15E3, $0D42 ; tileCD4: 0x1E3, 0x142, 0x1E3, 0x142\n#_0FE6A8: dw $7D1D, $7DE3, $7D2D, $7DE3 ; tileCD5: 0x11D, 0x1E3, 0x12D, 0x1E3\n#_0FE6B0: dw $15E3, $0D42, $15E3, $CD53 ; tileCD6: 0x1E3, 0x142, 0x1E3, 0x153\n#_0FE6B8: dw $3D37, $7D37, $7D28, $FD37 ; tileCD7: 0x137, 0x137, 0x128, 0x137\n#_0FE6C0: dw $15E3, $CD43, $15E3, $15E3 ; tileCD8: 0x1E3, 0x143, 0x1E3, 0x1E3\n#_0FE6C8: dw $0D42, $0D42, $CD53, $0D42 ; tileCD9: 0x142, 0x142, 0x153, 0x142\n#_0FE6D0: dw $7D15, $7D28, $7D16, $7D15 ; tileCDA: 0x115, 0x128, 0x116, 0x115\n#_0FE6D8: dw $5DE3, $1DE3, $DDE3, $9DE3 ; tileCDB: 0x1E3, 0x1E3, 0x1E3, 0x1E3\n#_0FE6E0: dw $7D3F, $7D3E, $7D08, $7D07 ; tileCDC: 0x13F, 0x13E, 0x108, 0x107\n#_0FE6E8: dw $DDE3, $DDE3, $7D0D, $7D0C ; tileCDD: 0x1E3, 0x1E3, 0x10D, 0x10C\n#_0FE6F0: dw $9D3C, $DD3C, $DDE3, $DDE3 ; tileCDE: 0x13C, 0x13C, 0x1E3, 0x1E3\n#_0FE6F8: dw $4D43, $0D42, $4D53, $0D42 ; tileCDF: 0x143, 0x142, 0x153, 0x142\n#_0FE700: dw $3D37, $7D37, $BD37, $3D28 ; tileCE0: 0x137, 0x137, 0x137, 0x128\n#_0FE708: dw $7D26, $7D29, $7D18, $7D18 ; tileCE1: 0x126, 0x129, 0x118, 0x118\n#_0FE710: dw $7D39, $7D29, $7D18, $7D26 ; tileCE2: 0x139, 0x129, 0x118, 0x126\n#_0FE718: dw $DDE3, $DDE3, $3D0C, $3D0D ; tileCE3: 0x1E3, 0x1E3, 0x10C, 0x10D\n#_0FE720: dw $15E3, $4D43, $15E3, $4D53 ; tileCE4: 0x1E3, 0x143, 0x1E3, 0x153\n#_0FE728: dw $0D42, $0D42, $0D42, $8D53 ; tileCE5: 0x142, 0x142, 0x142, 0x153\n#_0FE730: dw $1166, $1167, $3176, $3177 ; tileCE6: 0x166, 0x167, 0x176, 0x177\n#_0FE738: dw $117D, $517D, $316C, $716C ; tileCE7: 0x17D, 0x17D, 0x16C, 0x16C\n#_0FE740: dw $5167, $5166, $7177, $7176 ; tileCE8: 0x167, 0x166, 0x177, 0x176\n#_0FE748: dw $3D3E, $3D3F, $3D07, $3D08 ; tileCE9: 0x13E, 0x13F, 0x107, 0x108\n#_0FE750: dw $3D29, $3D39, $3D26, $7D18 ; tileCEA: 0x129, 0x139, 0x126, 0x118\n#_0FE758: dw $0D42, $8D43, $8D53, $15E3 ; tileCEB: 0x142, 0x143, 0x153, 0x1E3\n#_0FE760: dw $3D38, $7D38, $3D16, $FD38 ; tileCEC: 0x138, 0x138, 0x116, 0x138\n#_0FE768: dw $7D26, $7D29, $7D18, $3D60 ; tileCED: 0x126, 0x129, 0x118, 0x160\n#_0FE770: dw $3D63, $3170, $3D73, $B170 ; tileCEE: 0x163, 0x170, 0x173, 0x170\n#_0FE778: dw $317C, $717C, $B17F, $F17F ; tileCEF: 0x17C, 0x17C, 0x17F, 0x17F\n#_0FE780: dw $7161, $7D63, $7171, $7D73 ; tileCF0: 0x161, 0x163, 0x171, 0x173\n#_0FE788: dw $3D29, $3D26, $7D60, $3D18 ; tileCF1: 0x129, 0x126, 0x160, 0x118\n#_0FE790: dw $8D43, $15E3, $15E3, $15E3 ; tileCF2: 0x143, 0x1E3, 0x1E3, 0x1E3\n#_0FE798: dw $FD18, $FD18, $BD29, $BD26 ; tileCF3: 0x118, 0x118, 0x129, 0x126\n#_0FE7A0: dw $BD18, $BD18, $FD26, $FD29 ; tileCF4: 0x118, 0x118, 0x126, 0x129\n#_0FE7A8: dw $BD18, $FD26, $FD26, $FD29 ; tileCF5: 0x118, 0x126, 0x126, 0x129\n#_0FE7B0: dw $BD0C, $BD0D, $FDE3, $FDE3 ; tileCF6: 0x10C, 0x10D, 0x1E3, 0x1E3\n#_0FE7B8: dw $BD07, $BD08, $BD3E, $BD3F ; tileCF7: 0x107, 0x108, 0x13E, 0x13F\n#_0FE7C0: dw $FD08, $FD07, $FD3F, $FD3E ; tileCF8: 0x108, 0x107, 0x13F, 0x13E\n#_0FE7C8: dw $FD0D, $FD0C, $BDE3, $BDE3 ; tileCF9: 0x10D, 0x10C, 0x1E3, 0x1E3\n#_0FE7D0: dw $DDE3, $DDE3, $DDE3, $DDE3 ; tileCFA: 0x1E3, 0x1E3, 0x1E3, 0x1E3\n#_0FE7D8: dw $5D3C, $1D3C, $08AA, $08AA ; tileCFB: 0x13C, 0x13C, 0x0AA, 0x0AA\n#_0FE7E0: dw $154D, $154D, $1DB4, $1DB4 ; tileCFC: 0x14D, 0x14D, 0x1B4, 0x1B4\n#_0FE7E8: dw $155C, $1DB4, $1DB4, $1DB4 ; tileCFD: 0x15C, 0x1B4, 0x1B4, 0x1B4\n#_0FE7F0: dw $1DB4, $555C, $1DB4, $1DB4 ; tileCFE: 0x1B4, 0x15C, 0x1B4, 0x1B4\n#_0FE7F8: dw $157B, $156B, $08AA, $157B ; tileCFF: 0x17B, 0x16B, 0x0AA, 0x17B\n#_0FE800: dw $1DB4, $1DB4, $156B, $1DB4 ; tileD00: 0x1B4, 0x1B4, 0x16B, 0x1B4\n#_0FE808: dw $1DB4, $1DB4, $1DB4, $556B ; tileD01: 0x1B4, 0x1B4, 0x1B4, 0x16B\n#_0FE810: dw $1DB4, $1DB4, $954D, $954D ; tileD02: 0x1B4, 0x1B4, 0x14D, 0x14D\n#_0FE818: dw $1DB4, $DDD9, $DDD9, $9DFE ; tileD03: 0x1B4, 0x1D9, 0x1D9, 0x1FE\n#_0FE820: dw $9DD8, $DDD8, $9DFE, $9DFE ; tileD04: 0x1D8, 0x1D8, 0x1FE, 0x1FE\n#_0FE828: dw $9DD9, $1DB4, $9DFE, $9DD9 ; tileD05: 0x1D9, 0x1B4, 0x1FE, 0x1D9\n#_0FE830: dw $155D, $1DB4, $155D, $1DB4 ; tileD06: 0x15D, 0x1B4, 0x15D, 0x1B4\n#_0FE838: dw $1DB4, $555D, $1DB4, $555D ; tileD07: 0x1B4, 0x15D, 0x1B4, 0x15D\n#_0FE840: dw $5DDA, $9DFE, $DDDA, $9DFE ; tileD08: 0x1DA, 0x1FE, 0x1DA, 0x1FE\n#_0FE848: dw $9DD9, $DDB4, $9DFE, $9DD9 ; tileD09: 0x1D9, 0x1B4, 0x1FE, 0x1D9\n#_0FE850: dw $9DFE, $9DFE, $1DD8, $5DD8 ; tileD0A: 0x1FE, 0x1FE, 0x1D8, 0x1D8\n#_0FE858: dw $1DB4, $1DD6, $1DD6, $1DB4 ; tileD0B: 0x1B4, 0x1D6, 0x1D6, 0x1B4\n#_0FE860: dw $9DFE, $1DD9, $1DD9, $5DB4 ; tileD0C: 0x1FE, 0x1D9, 0x1D9, 0x1B4\n#_0FE868: dw $5D2B, $3DE3, $DD2B, $3DE3 ; tileD0D: 0x12B, 0x1E3, 0x12B, 0x1E3\n#_0FE870: dw $3DE3, $3DE3, $7D0D, $7D0C ; tileD0E: 0x1E3, 0x1E3, 0x10D, 0x10C\n#_0FE878: dw $3D2F, $3D19, $3D37, $3D18 ; tileD0F: 0x12F, 0x119, 0x137, 0x118\n#_0FE880: dw $7D26, $7D29, $3D18, $3D18 ; tileD10: 0x126, 0x129, 0x118, 0x118\n#_0FE888: dw $FD28, $FD28, $FD28, $FD28 ; tileD11: 0x128, 0x128, 0x128, 0x128\n#_0FE890: dw $3D28, $3D15, $3D15, $3D16 ; tileD12: 0x128, 0x115, 0x115, 0x116\n#_0FE898: dw $1DD7, $1DB4, $1DD6, $1DB4 ; tileD13: 0x1D7, 0x1B4, 0x1D6, 0x1B4\n#_0FE8A0: dw $1DE1, $5DE1, $1DE2, $5DCF ; tileD14: 0x1E1, 0x1E1, 0x1E2, 0x1CF\n#_0FE8A8: dw $9DFE, $1DE1, $9DFE, $1DCF ; tileD15: 0x1FE, 0x1E1, 0x1FE, 0x1CF\n#_0FE8B0: dw $08AA, $08AA, $DD3C, $9D3C ; tileD16: 0x0AA, 0x0AA, 0x13C, 0x13C\n#_0FE8B8: dw $7DE3, $7DE3, $3D0C, $3D0D ; tileD17: 0x1E3, 0x1E3, 0x10C, 0x10D\n#_0FE8C0: dw $3D29, $3D26, $7D18, $7D18 ; tileD18: 0x129, 0x126, 0x118, 0x118\n#_0FE8C8: dw $3D37, $BD28, $BD37, $FD37 ; tileD19: 0x137, 0x128, 0x137, 0x137\n#_0FE8D0: dw $5DE3, $5DE3, $1D3C, $5D3C ; tileD1A: 0x1E3, 0x1E3, 0x13C, 0x13C\n#_0FE8D8: dw $BD18, $7D26, $BD26, $FD26 ; tileD1B: 0x118, 0x126, 0x126, 0x126\n#_0FE8E0: dw $FD28, $7D28, $FD28, $FD28 ; tileD1C: 0x128, 0x128, 0x128, 0x128\n#_0FE8E8: dw $5DE1, $1DDA, $5DCF, $9DDA ; tileD1D: 0x1E1, 0x1DA, 0x1CF, 0x1DA\n#_0FE8F0: dw $1DD7, $1DB4, $1CAD, $1DD7 ; tileD1E: 0x1D7, 0x1B4, 0x0AD, 0x1D7\n#_0FE8F8: dw $1DD2, $1DD3, $1DD3, $1DD9 ; tileD1F: 0x1D2, 0x1D3, 0x1D3, 0x1D9\n#_0FE900: dw $1DD9, $1CAD, $1CAD, $1CAD ; tileD20: 0x1D9, 0x0AD, 0x0AD, 0x0AD\n#_0FE908: dw $1CAD, $555D, $1CAD, $555D ; tileD21: 0x0AD, 0x15D, 0x0AD, 0x15D\n#_0FE910: dw $BD0C, $BD0D, $1988, $1988 ; tileD22: 0x10C, 0x10D, 0x188, 0x188\n#_0FE918: dw $1998, $1998, $08AA, $08AA ; tileD23: 0x198, 0x198, 0x0AA, 0x0AA\n#_0FE920: dw $1988, $1988, $1998, $199A ; tileD24: 0x188, 0x188, 0x198, 0x19A\n#_0FE928: dw $555C, $154D, $9DD9, $1DB4 ; tileD25: 0x15C, 0x14D, 0x1D9, 0x1B4\n#_0FE930: dw $3DE3, $1D2B, $3DE3, $9D2B ; tileD26: 0x1E3, 0x12B, 0x1E3, 0x12B\n#_0FE938: dw $1DE1, $5DE1, $1DCF, $5DE2 ; tileD27: 0x1E1, 0x1E1, 0x1CF, 0x1E2\n#_0FE940: dw $1528, $1529, $1538, $1539 ; tileD28: 0x128, 0x129, 0x138, 0x139\n#_0FE948: dw $152C, $152D, $153C, $153D ; tileD29: 0x12C, 0x12D, 0x13C, 0x13D\n#_0FE950: dw $552D, $552C, $553D, $553C ; tileD2A: 0x12D, 0x12C, 0x13D, 0x13C\n#_0FE958: dw $5529, $5528, $5539, $5538 ; tileD2B: 0x129, 0x128, 0x139, 0x138\n#_0FE960: dw $154A, $154B, $155A, $155B ; tileD2C: 0x14A, 0x14B, 0x15A, 0x15B\n#_0FE968: dw $154C, $154D, $155C, $155D ; tileD2D: 0x14C, 0x14D, 0x15C, 0x15D\n#_0FE970: dw $554D, $554C, $555D, $555C ; tileD2E: 0x14D, 0x14C, 0x15D, 0x15C\n#_0FE978: dw $554B, $554A, $555B, $555A ; tileD2F: 0x14B, 0x14A, 0x15B, 0x15A\n#_0FE980: dw $156A, $156A, $157A, $157B ; tileD30: 0x16A, 0x16A, 0x17A, 0x17B\n#_0FE988: dw $156A, $156A, $157C, $157D ; tileD31: 0x16A, 0x16A, 0x17C, 0x17D\n#_0FE990: dw $156A, $156A, $557D, $557C ; tileD32: 0x16A, 0x16A, 0x17D, 0x17C\n#_0FE998: dw $156A, $156A, $557B, $557A ; tileD33: 0x16A, 0x16A, 0x17B, 0x17A\n#_0FE9A0: dw $1569, $1569, $153E, $153F ; tileD34: 0x169, 0x169, 0x13E, 0x13F\n#_0FE9A8: dw $1569, $1569, $1509, $157F ; tileD35: 0x169, 0x169, 0x109, 0x17F\n#_0FE9B0: dw $1569, $1569, $1568, $156D ; tileD36: 0x169, 0x169, 0x168, 0x16D\n#_0FE9B8: dw $1569, $1569, $157F, $1579 ; tileD37: 0x169, 0x169, 0x17F, 0x179\n#_0FE9C0: dw $1569, $1569, $1519, $1579 ; tileD38: 0x169, 0x169, 0x119, 0x179\n#_0FE9C8: dw $1569, $1569, $557F, $556D ; tileD39: 0x169, 0x169, 0x17F, 0x16D\n#_0FE9D0: dw $1569, $1569, $5568, $557F ; tileD3A: 0x169, 0x169, 0x168, 0x17F\n#_0FE9D8: dw $1569, $1569, $5509, $1579 ; tileD3B: 0x169, 0x169, 0x109, 0x179\n#_0FE9E0: dw $1569, $1569, $5568, $1579 ; tileD3C: 0x169, 0x169, 0x168, 0x179\n#_0FE9E8: dw $1548, $1549, $1558, $1559 ; tileD3D: 0x148, 0x149, 0x158, 0x159\n#_0FE9F0: dw $156B, $156C, $152E, $152F ; tileD3E: 0x16B, 0x16C, 0x12E, 0x12F\n#_0FE9F8: dw $150D, $150D, $150D, $150D ; tileD3F: 0x10D, 0x10D, 0x10D, 0x10D\n#_0FEA00: dw $116F, $116F, $116F, $116F ; tileD40: 0x16F, 0x16F, 0x16F, 0x16F\n#_0FEA08: dw $116F, $1DD9, $1DD9, $117F ; tileD41: 0x16F, 0x1D9, 0x1D9, 0x17F\n#_0FEA10: dw $1DD8, $5DD8, $117F, $117F ; tileD42: 0x1D8, 0x1D8, 0x17F, 0x17F\n#_0FEA18: dw $5DD9, $116F, $117F, $5DD9 ; tileD43: 0x1D9, 0x16F, 0x17F, 0x1D9\n#_0FEA20: dw $116F, $1DD9, $116F, $9DD9 ; tileD44: 0x16F, 0x1D9, 0x16F, 0x1D9\n#_0FEA28: dw $117F, $1DD7, $1DD7, $513D ; tileD45: 0x17F, 0x1D7, 0x1D7, 0x13D\n#_0FEA30: dw $112D, $5DDB, $5DDB, $116F ; tileD46: 0x12D, 0x1DB, 0x1DB, 0x16F\n#_0FEA38: dw $117F, $117F, $117F, $117F ; tileD47: 0x17F, 0x17F, 0x17F, 0x17F\n#_0FEA40: dw $117F, $1DD7, $1DD7, $113D ; tileD48: 0x17F, 0x1D7, 0x1D7, 0x13D\n#_0FEA48: dw $5DD7, $117F, $513D, $5DD7 ; tileD49: 0x1D7, 0x17F, 0x13D, 0x1D7\n#_0FEA50: dw $1DD8, $5DD8, $1DD6, $5DD6 ; tileD4A: 0x1D8, 0x1D8, 0x1D6, 0x1D6\n#_0FEA58: dw $1DDB, $112D, $116F, $1DDB ; tileD4B: 0x1DB, 0x12D, 0x16F, 0x1DB\n#_0FEA60: dw $512D, $5DDB, $513D, $5DDC ; tileD4C: 0x12D, 0x1DB, 0x13D, 0x1DC\n#_0FEA68: dw $117F, $117F, $1DD6, $5DD6 ; tileD4D: 0x17F, 0x17F, 0x1D6, 0x1D6\n#_0FEA70: dw $5DD7, $117F, $113D, $5DD7 ; tileD4E: 0x1D7, 0x17F, 0x13D, 0x1D7\n#_0FEA78: dw $5DD9, $116F, $DDD9, $116F ; tileD4F: 0x1D9, 0x16F, 0x1D9, 0x16F\n#_0FEA80: dw $1DDB, $512D, $1DDC, $513D ; tileD50: 0x1DB, 0x12D, 0x1DC, 0x13D\n#_0FEA88: dw $112D, $5DDD, $113D, $5DD7 ; tileD51: 0x12D, 0x1DD, 0x13D, 0x1D7\n#_0FEA90: dw $512D, $112D, $513C, $113C ; tileD52: 0x12D, 0x12D, 0x13C, 0x13C\n#_0FEA98: dw $1DDD, $112D, $1DD7, $113D ; tileD53: 0x1DD, 0x12D, 0x1D7, 0x13D\n#_0FEAA0: dw $1DDA, $5DDB, $116F, $116F ; tileD54: 0x1DA, 0x1DB, 0x16F, 0x16F\n#_0FEAA8: dw $1DDA, $5DDA, $116F, $116F ; tileD55: 0x1DA, 0x1DA, 0x16F, 0x16F\n#_0FEAB0: dw $1DDB, $512D, $116F, $1DDB ; tileD56: 0x1DB, 0x12D, 0x16F, 0x1DB\n#_0FEAB8: dw $513B, $112F, $112F, $112F ; tileD57: 0x13B, 0x12F, 0x12F, 0x12F\n#_0FEAC0: dw $112D, $512D, $113C, $513D ; tileD58: 0x12D, 0x12D, 0x13C, 0x13D\n#_0FEAC8: dw $512D, $5DDB, $5DDB, $116F ; tileD59: 0x12D, 0x1DB, 0x1DB, 0x16F\n#_0FEAD0: dw $1537, $1537, $1537, $1537 ; tileD5A: 0x137, 0x137, 0x137, 0x137\n#_0FEAD8: dw $0C4C, $0C4D, $0C4C, $0C4D ; tileD5B: 0x04C, 0x04D, 0x04C, 0x04D\n#_0FEAE0: dw $4C4D, $4C4C, $4C4D, $4C4C ; tileD5C: 0x04D, 0x04C, 0x04D, 0x04C\n#_0FEAE8: dw $0C4F, $4C4F, $0C4F, $4C4F ; tileD5D: 0x04F, 0x04F, 0x04F, 0x04F\n#_0FEAF0: dw $0C4E, $4C4E, $0C4E, $4C4E ; tileD5E: 0x04E, 0x04E, 0x04E, 0x04E\n#_0FEAF8: dw $1840, $1840, $1840, $1840 ; tileD5F: 0x040, 0x040, 0x040, 0x040\n#_0FEB00: dw $5445, $5445, $5445, $5445 ; tileD60: 0x045, 0x045, 0x045, 0x045\n#_0FEB08: dw $147B, $147B, $147B, $147B ; tileD61: 0x07B, 0x07B, 0x07B, 0x07B\n#_0FEB10: dw $544B, $544A, $545B, $545A ; tileD62: 0x04B, 0x04A, 0x05B, 0x05A\n#_0FEB18: dw $5459, $5840, $5459, $5840 ; tileD63: 0x059, 0x040, 0x059, 0x040\n#_0FEB20: dw $1840, $1459, $1840, $1459 ; tileD64: 0x040, 0x059, 0x040, 0x059\n#_0FEB28: dw $144A, $144B, $145A, $145B ; tileD65: 0x04A, 0x04B, 0x05A, 0x05B\n#_0FEB30: dw $1445, $1445, $1445, $1445 ; tileD66: 0x045, 0x045, 0x045, 0x045\n#_0FEB38: dw $0C5F, $4C5F, $0C6F, $4C6F ; tileD67: 0x05F, 0x05F, 0x06F, 0x06F\n#_0FEB40: dw $5445, $5445, $5445, $547C ; tileD68: 0x045, 0x045, 0x045, 0x07C\n#_0FEB48: dw $546B, $546A, $547F, $547A ; tileD69: 0x06B, 0x06A, 0x07F, 0x07A\n#_0FEB50: dw $5469, $5840, $5479, $5840 ; tileD6A: 0x069, 0x040, 0x079, 0x040\n#_0FEB58: dw $1840, $1469, $1840, $1479 ; tileD6B: 0x040, 0x069, 0x040, 0x079\n#_0FEB60: dw $146A, $146B, $147A, $147F ; tileD6C: 0x06A, 0x06B, 0x07A, 0x07F\n#_0FEB68: dw $1445, $1445, $147C, $1445 ; tileD6D: 0x045, 0x045, 0x07C, 0x045\n#_0FEB70: dw $0C5E, $4C5E, $0C6E, $4C6E ; tileD6E: 0x05E, 0x05E, 0x06E, 0x06E\n#_0FEB78: dw $5445, $544B, $5445, $545B ; tileD6F: 0x045, 0x04B, 0x045, 0x05B\n#_0FEB80: dw $544A, $5459, $545A, $5459 ; tileD70: 0x04A, 0x059, 0x05A, 0x059\n#_0FEB88: dw $1459, $144A, $1459, $145A ; tileD71: 0x059, 0x04A, 0x059, 0x05A\n#_0FEB90: dw $144B, $1445, $145B, $1445 ; tileD72: 0x04B, 0x045, 0x05B, 0x045\n#_0FEB98: dw $5445, $546B, $547C, $547F ; tileD73: 0x045, 0x06B, 0x07C, 0x07F\n#_0FEBA0: dw $546A, $5469, $547A, $5479 ; tileD74: 0x06A, 0x069, 0x07A, 0x079\n#_0FEBA8: dw $1469, $146A, $1479, $147A ; tileD75: 0x069, 0x06A, 0x079, 0x07A\n#_0FEBB0: dw $146B, $1445, $147F, $147C ; tileD76: 0x06B, 0x045, 0x07F, 0x07C\n#_0FEBB8: dw $0C4C, $0C4D, $0C5C, $0C5D ; tileD77: 0x04C, 0x04D, 0x05C, 0x05D\n#_0FEBC0: dw $4C4D, $4C4C, $4C5D, $4C5C ; tileD78: 0x04D, 0x04C, 0x05D, 0x05C\n#_0FEBC8: dw $547B, $547B, $5449, $5448 ; tileD79: 0x07B, 0x07B, 0x049, 0x048\n#_0FEBD0: dw $147B, $147B, $1448, $1449 ; tileD7A: 0x07B, 0x07B, 0x048, 0x049\n#_0FEBD8: dw $0C6C, $0C6D, $1840, $0C7D ; tileD7B: 0x06C, 0x06D, 0x040, 0x07D\n#_0FEBE0: dw $4C6D, $4C6C, $4C7D, $1840 ; tileD7C: 0x06D, 0x06C, 0x07D, 0x040\n#_0FEBE8: dw $1840, $1840, $3840, $3840 ; tileD7D: 0x040, 0x040, 0x040, 0x040\n#_0FEBF0: dw $1840, $1841, $3850, $3851 ; tileD7E: 0x040, 0x041, 0x050, 0x051\n#_0FEBF8: dw $1842, $1843, $3852, $3853 ; tileD7F: 0x042, 0x043, 0x052, 0x053\n#_0FEC00: dw $1844, $1844, $3852, $3852 ; tileD80: 0x044, 0x044, 0x052, 0x052\n#_0FEC08: dw $1844, $1844, $3853, $3852 ; tileD81: 0x044, 0x044, 0x053, 0x052\n#_0FEC10: dw $1844, $1844, $3854, $3855 ; tileD82: 0x044, 0x044, 0x054, 0x055\n#_0FEC18: dw $1844, $1844, $3872, $3872 ; tileD83: 0x044, 0x044, 0x072, 0x072\n#_0FEC20: dw $5844, $5844, $7855, $7854 ; tileD84: 0x044, 0x044, 0x055, 0x054\n#_0FEC28: dw $5844, $5844, $7852, $7853 ; tileD85: 0x044, 0x044, 0x052, 0x053\n#_0FEC30: dw $5844, $5844, $7852, $7852 ; tileD86: 0x044, 0x044, 0x052, 0x052\n#_0FEC38: dw $5843, $5842, $7853, $7852 ; tileD87: 0x043, 0x042, 0x053, 0x052\n#_0FEC40: dw $5841, $1840, $7851, $7850 ; tileD88: 0x041, 0x040, 0x051, 0x050\n#_0FEC48: dw $3046, $3046, $3056, $3056 ; tileD89: 0x046, 0x046, 0x056, 0x056\n#_0FEC50: dw $3860, $3861, $3870, $3871 ; tileD8A: 0x060, 0x061, 0x070, 0x071\n#_0FEC58: dw $3862, $3860, $7871, $3870 ; tileD8B: 0x062, 0x060, 0x071, 0x070\n#_0FEC60: dw $3861, $3862, $3871, $7871 ; tileD8C: 0x061, 0x062, 0x071, 0x071\n#_0FEC68: dw $3862, $3863, $7871, $3873 ; tileD8D: 0x062, 0x063, 0x071, 0x073\n#_0FEC70: dw $3864, $3864, $3874, $3874 ; tileD8E: 0x064, 0x064, 0x074, 0x074\n#_0FEC78: dw $7863, $7862, $7873, $3871 ; tileD8F: 0x063, 0x062, 0x073, 0x071\n#_0FEC80: dw $7861, $7860, $7871, $7870 ; tileD90: 0x061, 0x060, 0x071, 0x070\n#_0FEC88: dw $7862, $7861, $3871, $7871 ; tileD91: 0x062, 0x061, 0x071, 0x071\n#_0FEC90: dw $7860, $7862, $7870, $3871 ; tileD92: 0x060, 0x062, 0x070, 0x071\n#_0FEC98: dw $3056, $3056, $3056, $3056 ; tileD93: 0x056, 0x056, 0x056, 0x056\n#_0FECA0: dw $3065, $3066, $3075, $3076 ; tileD94: 0x065, 0x066, 0x075, 0x076\n#_0FECA8: dw $7066, $7065, $7076, $7075 ; tileD95: 0x066, 0x065, 0x076, 0x075\n#_0FECB0: dw $3066, $7066, $3076, $7076 ; tileD96: 0x066, 0x066, 0x076, 0x076\n#_0FECB8: dw $7065, $3066, $7075, $3076 ; tileD97: 0x065, 0x066, 0x075, 0x076\n#_0FECC0: dw $3047, $3068, $3057, $3078 ; tileD98: 0x047, 0x068, 0x057, 0x078\n#_0FECC8: dw $3078, $7078, $3078, $7078 ; tileD99: 0x078, 0x078, 0x078, 0x078\n#_0FECD0: dw $7068, $7047, $7078, $7057 ; tileD9A: 0x068, 0x047, 0x078, 0x057\n#_0FECD8: dw $7066, $3065, $7076, $3075 ; tileD9B: 0x066, 0x065, 0x076, 0x075\n#_0FECE0: dw $3056, $3067, $3056, $3077 ; tileD9C: 0x056, 0x067, 0x056, 0x077\n#_0FECE8: dw $3068, $3078, $3078, $3078 ; tileD9D: 0x068, 0x078, 0x078, 0x078\n#_0FECF0: dw $7078, $7068, $7078, $7078 ; tileD9E: 0x078, 0x068, 0x078, 0x078\n#_0FECF8: dw $7067, $3056, $7077, $3056 ; tileD9F: 0x067, 0x056, 0x077, 0x056\n#_0FED00: dw $3067, $3068, $3077, $3078 ; tileDA0: 0x067, 0x068, 0x077, 0x078\n#_0FED08: dw $3078, $3078, $3078, $3078 ; tileDA1: 0x078, 0x078, 0x078, 0x078\n#_0FED10: dw $7078, $7078, $7078, $7078 ; tileDA2: 0x078, 0x078, 0x078, 0x078\n#_0FED18: dw $7068, $7067, $7078, $7077 ; tileDA3: 0x068, 0x067, 0x078, 0x077\n#_0FED20: dw $08E8, $08FE, $08F8, $08FF ; tileDA4: 0x0E8, 0x0FE, 0x0F8, 0x0FF\n#_0FED28: dw $08E8, $08EA, $08F8, $08F9 ; tileDA5: 0x0E8, 0x0EA, 0x0F8, 0x0F9\n#_0FED30: dw $08FE, $48E8, $08FF, $48F8 ; tileDA6: 0x0FE, 0x0E8, 0x0FF, 0x0F8\n#_0FED38: dw $48EA, $48E8, $08FA, $48F8 ; tileDA7: 0x0EA, 0x0E8, 0x0FA, 0x0F8\n#_0FED40: dw $3545, $3546, $3555, $3556 ; tileDA8: 0x145, 0x146, 0x155, 0x156\n#_0FED48: dw $7546, $7545, $7556, $7555 ; tileDA9: 0x146, 0x145, 0x156, 0x155\n#_0FED50: dw $114B, $114C, $115B, $115C ; tileDAA: 0x14B, 0x14C, 0x15B, 0x15C\n#_0FED58: dw $514C, $514B, $515C, $515B ; tileDAB: 0x14C, 0x14B, 0x15C, 0x15B\n#_0FED60: dw $3545, $3546, $3555, $3556 ; tileDAC: 0x145, 0x146, 0x155, 0x156\n#_0FED68: dw $7546, $7545, $7556, $7555 ; tileDAD: 0x146, 0x145, 0x156, 0x155\n#_0FED70: dw $114D, $10FE, $115D, $10FF ; tileDAE: 0x14D, 0x0FE, 0x15D, 0x0FF\n#_0FED78: dw $10FE, $514D, $10FF, $515D ; tileDAF: 0x0FE, 0x14D, 0x0FF, 0x15D\n#_0FED80: dw $3545, $3546, $3555, $3556 ; tileDB0: 0x145, 0x146, 0x155, 0x156\n#_0FED88: dw $7546, $7545, $7556, $7555 ; tileDB1: 0x146, 0x145, 0x156, 0x155\n#_0FED90: dw $114A, $10FE, $115A, $10FF ; tileDB2: 0x14A, 0x0FE, 0x15A, 0x0FF\n#_0FED98: dw $10FE, $514A, $10FF, $515A ; tileDB3: 0x0FE, 0x14A, 0x0FF, 0x15A\n#_0FEDA0: dw $1D4E, $1CFE, $1D5E, $1D7E ; tileDB4: 0x14E, 0x0FE, 0x15E, 0x17E\n#_0FEDA8: dw $5CFE, $5D4E, $5D7E, $5D5E ; tileDB5: 0x0FE, 0x14E, 0x17E, 0x15E\n#_0FEDB0: dw $3D56, $3D56, $1D4D, $1CFE ; tileDB6: 0x156, 0x156, 0x14D, 0x0FE\n#_0FEDB8: dw $7D56, $7D56, $5CFE, $5D4D ; tileDB7: 0x156, 0x156, 0x0FE, 0x14D\n#_0FEDC0: dw $1D5D, $1CFE, $1D6D, $1CFF ; tileDB8: 0x15D, 0x0FE, 0x16D, 0x0FF\n#_0FEDC8: dw $5CFE, $5D5D, $5CFF, $5D6D ; tileDB9: 0x0FE, 0x15D, 0x0FF, 0x16D\n#_0FEDD0: dw $3D56, $3D56, $1D4A, $1CFE ; tileDBA: 0x156, 0x156, 0x14A, 0x0FE\n#_0FEDD8: dw $7D56, $7D56, $5CFE, $5D4A ; tileDBB: 0x156, 0x156, 0x0FE, 0x14A\n#_0FEDE0: dw $1D5A, $1CFE, $1D6A, $1CFF ; tileDBC: 0x15A, 0x0FE, 0x16A, 0x0FF\n#_0FEDE8: dw $5CFE, $5D5A, $5CFF, $5D6A ; tileDBD: 0x0FE, 0x15A, 0x0FF, 0x16A\n#_0FEDF0: dw $0D1E, $090C, $4D1E, $090C ; tileDBE: 0x11E, 0x10C, 0x11E, 0x10C\n#_0FEDF8: dw $090C, $090C, $090C, $090C ; tileDBF: 0x10C, 0x10C, 0x10C, 0x10C\n#_0FEE00: dw $090C, $4D1E, $090C, $0D1E ; tileDC0: 0x10C, 0x11E, 0x10C, 0x11E\n#_0FEE08: dw $3D7D, $7D7D, $4D1E, $090C ; tileDC1: 0x17D, 0x17D, 0x11E, 0x10C\n#_0FEE10: dw $3D7D, $7D7D, $090C, $090C ; tileDC2: 0x17D, 0x17D, 0x10C, 0x10C\n#_0FEE18: dw $3D7D, $7D7D, $090C, $0D1E ; tileDC3: 0x17D, 0x17D, 0x10C, 0x11E\n#_0FEE20: dw $09FF, $09FF, $09FF, $09FF ; tileDC4: 0x1FF, 0x1FF, 0x1FF, 0x1FF\n#_0FEE28: dw $19AC, $59AC, $99AC, $D9AC ; tileDC5: 0x1AC, 0x1AC, 0x1AC, 0x1AC\n#_0FEE30: dw $09AF, $49AF, $09BF, $49BF ; tileDC6: 0x1AF, 0x1AF, 0x1BF, 0x1BF\n#_0FEE38: dw $198F, $598F, $199F, $599F ; tileDC7: 0x18F, 0x18F, 0x19F, 0x19F\n#_0FEE40: dw $0D8F, $4D8F, $0D9F, $4D9F ; tileDC8: 0x18F, 0x18F, 0x19F, 0x19F\n#_0FEE48: dw $098E, $498E, $898E, $C98E ; tileDC9: 0x18E, 0x18E, 0x18E, 0x18E\n#_0FEE50: dw $098E, $498E, $898E, $C98E ; tileDCA: 0x18E, 0x18E, 0x18E, 0x18E\n#_0FEE58: dw $19AB, $59AB, $19BB, $59BB ; tileDCB: 0x1AB, 0x1AB, 0x1BB, 0x1BB\n#_0FEE60: dw $1024, $5024, $1035, $5035 ; tileDCC: 0x024, 0x024, 0x035, 0x035\n#_0FEE68: dw $098E, $09BA, $09AA, $08BA ; tileDCD: 0x18E, 0x1BA, 0x1AA, 0x0BA\n#_0FEE70: dw $49BA, $498E, $48BA, $49AA ; tileDCE: 0x1BA, 0x18E, 0x0BA, 0x1AA\n#_0FEE78: dw $89AA, $88BA, $898E, $89BA ; tileDCF: 0x1AA, 0x0BA, 0x18E, 0x1BA\n#_0FEE80: dw $C8BA, $C9AA, $C9BA, $C98E ; tileDD0: 0x0BA, 0x1AA, 0x1BA, 0x18E\n#_0FEE88: dw $3D01, $3D47, $3D11, $3D57 ; tileDD1: 0x101, 0x147, 0x111, 0x157\n#_0FEE90: dw $7D47, $7D01, $7D57, $7D11 ; tileDD2: 0x147, 0x101, 0x157, 0x111\n#_0FEE98: dw $1D21, $1D02, $1D37, $0D0F ; tileDD3: 0x121, 0x102, 0x137, 0x10F\n#_0FEEA0: dw $5D02, $5D21, $4D0F, $5D37 ; tileDD4: 0x102, 0x121, 0x10F, 0x137\n#_0FEEA8: dw $1D38, $0D1F, $1D2E, $1D2F ; tileDD5: 0x138, 0x11F, 0x12E, 0x12F\n#_0FEEB0: dw $4D1F, $5D38, $5D2F, $5D2E ; tileDD6: 0x11F, 0x138, 0x12F, 0x12E\n#_0FEEB8: dw $3D21, $3D02, $1D37, $0D3F ; tileDD7: 0x121, 0x102, 0x137, 0x13F\n#_0FEEC0: dw $7D02, $7D21, $4D3F, $5D37 ; tileDD8: 0x102, 0x121, 0x13F, 0x137\n#_0FEEC8: dw $1D38, $0D3E, $1D2E, $1D2F ; tileDD9: 0x138, 0x13E, 0x12E, 0x12F\n#_0FEED0: dw $4D3E, $5D38, $5D2F, $5D2E ; tileDDA: 0x13E, 0x138, 0x12F, 0x12E\n#_0FEED8: dw $1D21, $1D02, $1D37, $1DEE ; tileDDB: 0x121, 0x102, 0x137, 0x1EE\n#_0FEEE0: dw $5D02, $5D21, $1DEE, $5D37 ; tileDDC: 0x102, 0x121, 0x1EE, 0x137\n#_0FEEE8: dw $1D38, $1DEE, $1D2E, $1D2F ; tileDDD: 0x138, 0x1EE, 0x12E, 0x12F\n#_0FEEF0: dw $1DEE, $5D38, $5D2F, $5D2E ; tileDDE: 0x1EE, 0x138, 0x12F, 0x12E\n#_0FEEF8: dw $08AA, $154C, $154C, $155C ; tileDDF: 0x0AA, 0x14C, 0x14C, 0x15C\n#_0FEF00: dw $154D, $554D, $08BA, $48BA ; tileDE0: 0x14D, 0x14D, 0x0BA, 0x0BA\n#_0FEF08: dw $554C, $08AA, $555C, $554C ; tileDE1: 0x14C, 0x0AA, 0x15C, 0x14C\n#_0FEF10: dw $154D, $554D, $08BA, $48BA ; tileDE2: 0x14D, 0x14D, 0x0BA, 0x0BA\n#_0FEF18: dw $155C, $88BA, $88BA, $08BA ; tileDE3: 0x15C, 0x0BA, 0x0BA, 0x0BA\n#_0FEF20: dw $88BA, $C8BA, $C8BA, $88BA ; tileDE4: 0x0BA, 0x0BA, 0x0BA, 0x0BA\n#_0FEF28: dw $C8BA, $555C, $48BA, $C8BA ; tileDE5: 0x0BA, 0x15C, 0x0BA, 0x0BA\n#_0FEF30: dw $C8BA, $48BA, $48BA, $556C ; tileDE6: 0x0BA, 0x0BA, 0x0BA, 0x16C\n#_0FEF38: dw $88BA, $88BA, $156D, $556D ; tileDE7: 0x0BA, 0x0BA, 0x16D, 0x16D\n#_0FEF40: dw $08BA, $88BA, $156C, $08BA ; tileDE8: 0x0BA, 0x0BA, 0x16C, 0x0BA\n#_0FEF48: dw $156B, $156C, $08AA, $156B ; tileDE9: 0x16B, 0x16C, 0x0AA, 0x16B\n#_0FEF50: dw $C8BA, $555D, $C8BA, $555D ; tileDEA: 0x0BA, 0x15D, 0x0BA, 0x15D\n#_0FEF58: dw $155D, $88BA, $155D, $88BA ; tileDEB: 0x15D, 0x0BA, 0x15D, 0x0BA\n#_0FEF60: dw $08BA, $08BA, $08BA, $155B ; tileDEC: 0x0BA, 0x0BA, 0x0BA, 0x15B\n#_0FEF68: dw $157B, $557B, $152F, $552F ; tileDED: 0x17B, 0x17B, 0x12F, 0x12F\n#_0FEF70: dw $48BA, $48BA, $555B, $48BA ; tileDEE: 0x0BA, 0x0BA, 0x15B, 0x0BA\n#_0FEF78: dw $155B, $152E, $152E, $1DB4 ; tileDEF: 0x15B, 0x12E, 0x12E, 0x1B4\n#_0FEF80: dw $1DB4, $1DB4, $1DB4, $1DB4 ; tileDF0: 0x1B4, 0x1B4, 0x1B4, 0x1B4\n#_0FEF88: dw $552E, $555B, $1DB4, $552E ; tileDF1: 0x12E, 0x15B, 0x1B4, 0x12E\n#_0FEF90: dw $157B, $557B, $152F, $552F ; tileDF2: 0x17B, 0x17B, 0x12F, 0x12F\n#_0FEF98: dw $88BA, $955B, $88BA, $08BA ; tileDF3: 0x0BA, 0x15B, 0x0BA, 0x0BA\n#_0FEFA0: dw $952E, $1DB4, $955B, $952E ; tileDF4: 0x12E, 0x1B4, 0x15B, 0x12E\n#_0FEFA8: dw $952F, $D52F, $957B, $D57B ; tileDF5: 0x12F, 0x12F, 0x17B, 0x17B\n#_0FEFB0: dw $952E, $1DB4, $955B, $952E ; tileDF6: 0x12E, 0x1B4, 0x15B, 0x12E\n#_0FEFB8: dw $155D, $88BA, $155D, $155B ; tileDF7: 0x15D, 0x0BA, 0x15D, 0x15B\n#_0FEFC0: dw $C8BA, $555D, $555B, $555D ; tileDF8: 0x0BA, 0x15D, 0x15B, 0x15D\n#_0FEFC8: dw $952F, $D52F, $957B, $D57B ; tileDF9: 0x12F, 0x12F, 0x17B, 0x17B\n#_0FEFD0: dw $155D, $153A, $155D, $953A ; tileDFA: 0x15D, 0x13A, 0x15D, 0x13A\n#_0FEFD8: dw $553A, $555D, $D53A, $555D ; tileDFB: 0x13A, 0x15D, 0x13A, 0x15D\n#_0FEFE0: dw $155D, $955B, $155D, $88BA ; tileDFC: 0x15D, 0x15B, 0x15D, 0x0BA\n#_0FEFE8: dw $5DB4, $D52E, $D52E, $D55B ; tileDFD: 0x1B4, 0x12E, 0x12E, 0x15B\n#_0FEFF0: dw $D55B, $555D, $C8BA, $555D ; tileDFE: 0x15B, 0x15D, 0x0BA, 0x15D\n#_0FEFF8: dw $08BA, $955B, $156C, $08BA ; tileDFF: 0x0BA, 0x15B, 0x16C, 0x0BA\n#_0FF000: dw $D55B, $C8BA, $88BA, $08BA ; tileE00: 0x15B, 0x0BA, 0x0BA, 0x0BA\n#_0FF008: dw $556C, $596B, $596B, $08AA ; tileE01: 0x16C, 0x16B, 0x16B, 0x0AA\n#_0FF010: dw $556C, $596B, $556B, $198B ; tileE02: 0x16C, 0x16B, 0x16B, 0x18B\n#_0FF018: dw $156B, $156C, $598B, $156B ; tileE03: 0x16B, 0x16C, 0x18B, 0x16B\n#_0FF020: dw $155C, $08BA, $08BA, $155B ; tileE04: 0x15C, 0x0BA, 0x0BA, 0x15B\n#_0FF028: dw $48BA, $555C, $555B, $48BA ; tileE05: 0x0BA, 0x15C, 0x15B, 0x0BA\n#_0FF030: dw $1D3C, $1D3C, $1D3C, $1D3C ; tileE06: 0x13C, 0x13C, 0x13C, 0x13C\n#_0FF038: dw $1D3C, $1D3C, $1D3C, $196E ; tileE07: 0x13C, 0x13C, 0x13C, 0x16E\n#_0FF040: dw $1D3C, $1D3C, $196F, $1D3C ; tileE08: 0x13C, 0x13C, 0x16F, 0x13C\n#_0FF048: dw $1D3C, $1D3C, $1D3C, $596F ; tileE09: 0x13C, 0x13C, 0x13C, 0x16F\n#_0FF050: dw $1D3C, $1D3C, $596E, $1D3C ; tileE0A: 0x13C, 0x13C, 0x16E, 0x13C\n#_0FF058: dw $1927, $196C, $197C, $197D ; tileE0B: 0x127, 0x16C, 0x17C, 0x17D\n#_0FF060: dw $596C, $5927, $597D, $597C ; tileE0C: 0x16C, 0x127, 0x17D, 0x17C\n#_0FF068: dw $191A, $191B, $1946, $1947 ; tileE0D: 0x11A, 0x11B, 0x146, 0x147\n#_0FF070: dw $1916, $1904, $1904, $196D ; tileE0E: 0x116, 0x104, 0x104, 0x16D\n#_0FF078: dw $5904, $5916, $596D, $5904 ; tileE0F: 0x104, 0x116, 0x16D, 0x104\n#_0FF080: dw $591B, $591A, $5947, $5946 ; tileE10: 0x11B, 0x11A, 0x147, 0x146\n#_0FF088: dw $1934, $1935, $190A, $190B ; tileE11: 0x134, 0x135, 0x10A, 0x10B\n#_0FF090: dw $5935, $5934, $590B, $590A ; tileE12: 0x135, 0x134, 0x10B, 0x10A\n#_0FF098: dw $1934, $1935, $1922, $1923 ; tileE13: 0x134, 0x135, 0x122, 0x123\n#_0FF0A0: dw $5935, $5934, $5923, $5922 ; tileE14: 0x135, 0x134, 0x123, 0x122\n#_0FF0A8: dw $1932, $1933, $1946, $1947 ; tileE15: 0x132, 0x133, 0x146, 0x147\n#_0FF0B0: dw $3916, $397A, $197A, $196D ; tileE16: 0x116, 0x17A, 0x17A, 0x16D\n#_0FF0B8: dw $797A, $7916, $596D, $597A ; tileE17: 0x17A, 0x116, 0x16D, 0x17A\n#_0FF0C0: dw $5933, $5932, $5947, $5946 ; tileE18: 0x133, 0x132, 0x147, 0x146\n#_0FF0C8: dw $1927, $196C, $197C, $197D ; tileE19: 0x127, 0x16C, 0x17C, 0x17D\n#_0FF0D0: dw $596C, $5927, $597D, $597C ; tileE1A: 0x16C, 0x127, 0x17D, 0x17C\n#_0FF0D8: dw $2D54, $2D69, $2D64, $2D03 ; tileE1B: 0x154, 0x169, 0x164, 0x103\n#_0FF0E0: dw $6D69, $6D54, $6D03, $6D64 ; tileE1C: 0x169, 0x154, 0x103, 0x164\n#_0FF0E8: dw $2D74, $2D53, $2D52, $2D13 ; tileE1D: 0x174, 0x153, 0x152, 0x113\n#_0FF0F0: dw $6D53, $6D74, $6D13, $6D52 ; tileE1E: 0x153, 0x174, 0x113, 0x152\n#_0FF0F8: dw $0D62, $0D3F, $0D30, $0D1B ; tileE1F: 0x162, 0x13F, 0x130, 0x11B\n#_0FF100: dw $4D3F, $4D62, $4D1B, $4D30 ; tileE20: 0x13F, 0x162, 0x11B, 0x130\n#_0FF108: dw $0CED, $0CED, $0CED, $0CED ; tileE21: 0x0ED, 0x0ED, 0x0ED, 0x0ED\n#_0FF110: dw $893B, $493A, $893A, $493B ; tileE22: 0x13B, 0x13A, 0x13A, 0x13B\n#_0FF118: dw $0CED, $08AA, $08AA, $0D44 ; tileE23: 0x0ED, 0x0AA, 0x0AA, 0x144\n#_0FF120: dw $296E, $696E, $0D48, $4D48 ; tileE24: 0x16E, 0x16E, 0x148, 0x148\n#_0FF128: dw $08AA, $0CED, $4D44, $08AA ; tileE25: 0x0AA, 0x0ED, 0x144, 0x0AA\n#_0FF130: dw $0CFE, $0CFE, $1D0B, $5D0B ; tileE26: 0x0FE, 0x0FE, 0x10B, 0x10B\n#_0FF138: dw $5D61, $1D61, $5D71, $1D71 ; tileE27: 0x161, 0x161, 0x171, 0x171\n#_0FF140: dw $0CFE, $0CFE, $1D4F, $5D4F ; tileE28: 0x0FE, 0x0FE, 0x14F, 0x14F\n#_0FF148: dw $1D5F, $5D5F, $5D71, $1D71 ; tileE29: 0x15F, 0x15F, 0x171, 0x171\n#_0FF150: dw $0CFE, $0CFE, $1D0A, $5D0A ; tileE2A: 0x0FE, 0x0FE, 0x10A, 0x10A\n#_0FF158: dw $1D1A, $5D1A, $1D1B, $5D1B ; tileE2B: 0x11A, 0x11A, 0x11B, 0x11B\n#_0FF160: dw $1D6F, $5D6F, $1D7F, $DD6B ; tileE2C: 0x16F, 0x16F, 0x17F, 0x16B\n#_0FF168: dw $1D1D, $5D1D, $1D4B, $5D4B ; tileE2D: 0x11D, 0x11D, 0x14B, 0x14B\n#_0FF170: dw $1D4B, $5D4B, $1D4B, $1D5B ; tileE2E: 0x14B, 0x14B, 0x14B, 0x15B\n#_0FF178: dw $1D4B, $1D5B, $1D7F, $DD6B ; tileE2F: 0x14B, 0x15B, 0x17F, 0x16B\n#_0FF180: dw $1D6F, $DD7B, $1D7F, $DD6B ; tileE30: 0x16F, 0x17B, 0x17F, 0x16B\n#_0FF188: dw $1D48, $5D48, $1D58, $5D58 ; tileE31: 0x148, 0x148, 0x158, 0x158\n#_0FF190: dw $08AA, $08AA, $08AA, $08AA ; tileE32: 0x0AA, 0x0AA, 0x0AA, 0x0AA\n#_0FF198: dw $08AA, $08AA, $1138, $1139 ; tileE33: 0x0AA, 0x0AA, 0x138, 0x139\n#_0FF1A0: dw $08AA, $08AA, $5139, $5138 ; tileE34: 0x0AA, 0x0AA, 0x139, 0x138\n#_0FF1A8: dw $08AA, $1107, $901E, $1117 ; tileE35: 0x0AA, 0x107, 0x01E, 0x117\n#_0FF1B0: dw $1150, $1151, $1160, $09EE ; tileE36: 0x150, 0x151, 0x160, 0x1EE\n#_0FF1B8: dw $5151, $5150, $09EE, $5160 ; tileE37: 0x151, 0x150, 0x1EE, 0x160\n#_0FF1C0: dw $5107, $48AA, $5117, $D01E ; tileE38: 0x107, 0x0AA, 0x117, 0x01E\n#_0FF1C8: dw $101D, $1127, $101E, $1018 ; tileE39: 0x01D, 0x127, 0x01E, 0x018\n#_0FF1D0: dw $1170, $09EE, $1161, $110B ; tileE3A: 0x170, 0x1EE, 0x161, 0x10B\n#_0FF1D8: dw $09EE, $5170, $510B, $5161 ; tileE3B: 0x1EE, 0x170, 0x10B, 0x161\n#_0FF1E0: dw $5127, $501D, $5018, $501E ; tileE3C: 0x127, 0x01D, 0x018, 0x01E\n#_0FF1E8: dw $1029, $111B, $100D, $102D ; tileE3D: 0x029, 0x11B, 0x00D, 0x02D\n#_0FF1F0: dw $511B, $5029, $502D, $500D ; tileE3E: 0x11B, 0x029, 0x02D, 0x00D\n#_0FF1F8: dw $1D0F, $1D0F, $1D2A, $5D2A ; tileE3F: 0x10F, 0x10F, 0x12A, 0x12A\n#_0FF200: dw $1D0F, $1D0F, $1D2B, $1D2A ; tileE40: 0x10F, 0x10F, 0x12B, 0x12A\n#_0FF208: dw $1D2B, $1D0F, $09EE, $5D2A ; tileE41: 0x12B, 0x10F, 0x1EE, 0x12A\n#_0FF210: dw $1D3B, $09EE, $1D3A, $09EE ; tileE42: 0x13B, 0x1EE, 0x13A, 0x1EE\n#_0FF218: dw $09EE, $09EE, $09EE, $09EE ; tileE43: 0x1EE, 0x1EE, 0x1EE, 0x1EE\n#_0FF220: dw $09EE, $5D3B, $09EE, $5D3A ; tileE44: 0x1EE, 0x13B, 0x1EE, 0x13A\n#_0FF228: dw $1D0F, $1D3B, $1D0F, $1D0F ; tileE45: 0x10F, 0x13B, 0x10F, 0x10F\n#_0FF230: dw $09EE, $09EE, $1D1C, $1D1C ; tileE46: 0x1EE, 0x1EE, 0x11C, 0x11C\n#_0FF238: dw $5D3B, $1D0F, $1D0F, $1D0F ; tileE47: 0x13B, 0x10F, 0x10F, 0x10F\n#_0FF240: dw $1DB4, $1DB4, $1DB4, $1908 ; tileE48: 0x1B4, 0x1B4, 0x1B4, 0x108\n#_0FF248: dw $1908, $1908, $1940, $1941 ; tileE49: 0x108, 0x108, 0x140, 0x141\n#_0FF250: dw $5908, $5908, $5941, $5940 ; tileE4A: 0x108, 0x108, 0x141, 0x140\n#_0FF258: dw $5DB4, $5DB4, $5908, $5DB4 ; tileE4B: 0x1B4, 0x1B4, 0x108, 0x1B4\n#_0FF260: dw $1947, $1958, $9947, $1968 ; tileE4C: 0x147, 0x158, 0x147, 0x168\n#_0FF268: dw $1950, $1911, $1960, $1921 ; tileE4D: 0x150, 0x111, 0x160, 0x121\n#_0FF270: dw $5911, $5950, $5921, $5960 ; tileE4E: 0x111, 0x150, 0x121, 0x160\n#_0FF278: dw $5958, $5947, $5968, $D947 ; tileE4F: 0x158, 0x147, 0x168, 0x147\n#_0FF280: dw $1DB4, $1955, $1DB4, $1DB4 ; tileE50: 0x1B4, 0x155, 0x1B4, 0x1B4\n#_0FF288: dw $1971, $1951, $1974, $1974 ; tileE51: 0x171, 0x151, 0x174, 0x174\n#_0FF290: dw $5951, $5971, $5974, $5974 ; tileE52: 0x151, 0x171, 0x174, 0x174\n#_0FF298: dw $5955, $5DB4, $5DB4, $5DB4 ; tileE53: 0x155, 0x1B4, 0x1B4, 0x1B4\n#_0FF2A0: dw $1DB4, $1DB4, $1907, $1908 ; tileE54: 0x1B4, 0x1B4, 0x107, 0x108\n#_0FF2A8: dw $1908, $1908, $1940, $1941 ; tileE55: 0x108, 0x108, 0x140, 0x141\n#_0FF2B0: dw $5908, $5908, $5941, $5940 ; tileE56: 0x108, 0x108, 0x141, 0x140\n#_0FF2B8: dw $5DB4, $5DB4, $5908, $5907 ; tileE57: 0x1B4, 0x1B4, 0x108, 0x107\n#_0FF2C0: dw $1932, $1970, $1922, $1942 ; tileE58: 0x132, 0x170, 0x122, 0x142\n#_0FF2C8: dw $1950, $1911, $1960, $1921 ; tileE59: 0x150, 0x111, 0x160, 0x121\n#_0FF2D0: dw $5911, $5950, $5921, $5960 ; tileE5A: 0x111, 0x150, 0x121, 0x160\n#_0FF2D8: dw $5970, $5932, $5942, $5922 ; tileE5B: 0x170, 0x132, 0x142, 0x122\n#_0FF2E0: dw $1932, $1952, $1922, $9970 ; tileE5C: 0x132, 0x152, 0x122, 0x170\n#_0FF2E8: dw $1971, $1951, $D970, $1961 ; tileE5D: 0x171, 0x151, 0x170, 0x161\n#_0FF2F0: dw $5951, $5971, $5961, $9970 ; tileE5E: 0x151, 0x171, 0x161, 0x170\n#_0FF2F8: dw $5952, $5932, $D970, $5922 ; tileE5F: 0x152, 0x132, 0x170, 0x122\n#_0FF300: dw $1945, $1975, $1DB4, $1955 ; tileE60: 0x145, 0x175, 0x1B4, 0x155\n#_0FF308: dw $5970, $5923, $1956, $1974 ; tileE61: 0x170, 0x123, 0x156, 0x174\n#_0FF310: dw $1923, $1970, $5974, $5956 ; tileE62: 0x123, 0x170, 0x174, 0x156\n#_0FF318: dw $5975, $5945, $5955, $5DB4 ; tileE63: 0x175, 0x145, 0x155, 0x1B4\n#_0FF320: dw $1DB4, $1DB4, $1907, $1908 ; tileE64: 0x1B4, 0x1B4, 0x107, 0x108\n#_0FF328: dw $1908, $1908, $1940, $1941 ; tileE65: 0x108, 0x108, 0x140, 0x141\n#_0FF330: dw $5908, $5908, $5941, $5940 ; tileE66: 0x108, 0x108, 0x141, 0x140\n#_0FF338: dw $5DB4, $5DB4, $5908, $5907 ; tileE67: 0x1B4, 0x1B4, 0x108, 0x107\n#_0FF340: dw $1932, $1970, $1922, $1942 ; tileE68: 0x132, 0x170, 0x122, 0x142\n#_0FF348: dw $1950, $1911, $1960, $3921 ; tileE69: 0x150, 0x111, 0x160, 0x121\n#_0FF350: dw $5911, $5950, $7921, $5960 ; tileE6A: 0x111, 0x150, 0x121, 0x160\n#_0FF358: dw $5970, $5932, $5942, $5922 ; tileE6B: 0x170, 0x132, 0x142, 0x122\n#_0FF360: dw $1932, $1952, $1922, $9970 ; tileE6C: 0x132, 0x152, 0x122, 0x170\n#_0FF368: dw $3971, $3951, $F970, $3961 ; tileE6D: 0x171, 0x151, 0x170, 0x161\n#_0FF370: dw $7951, $7971, $7961, $B970 ; tileE6E: 0x151, 0x171, 0x161, 0x170\n#_0FF378: dw $5952, $5932, $D970, $5922 ; tileE6F: 0x152, 0x132, 0x170, 0x122\n#_0FF380: dw $1932, $1970, $1918, $1923 ; tileE70: 0x132, 0x170, 0x118, 0x123\n#_0FF388: dw $7970, $7923, $5923, $18FE ; tileE71: 0x170, 0x123, 0x123, 0x0FE\n#_0FF390: dw $3923, $3970, $58FE, $1923 ; tileE72: 0x123, 0x170, 0x0FE, 0x123\n#_0FF398: dw $5970, $5932, $5923, $5918 ; tileE73: 0x170, 0x132, 0x123, 0x118\n#_0FF3A0: dw $1928, $1932, $1DB4, $1933 ; tileE74: 0x128, 0x132, 0x1B4, 0x133\n#_0FF3A8: dw $5932, $190E, $5933, $1DB4 ; tileE75: 0x132, 0x10E, 0x133, 0x1B4\n#_0FF3B0: dw $590E, $1932, $5DB4, $1933 ; tileE76: 0x10E, 0x132, 0x1B4, 0x133\n#_0FF3B8: dw $5932, $5928, $5933, $5DB4 ; tileE77: 0x132, 0x128, 0x133, 0x1B4\n#_0FF3C0: dw $150A, $1521, $152A, $1531 ; tileE78: 0x10A, 0x121, 0x12A, 0x131\n#_0FF3C8: dw $7521, $354E, $7531, $355E ; tileE79: 0x121, 0x14E, 0x131, 0x15E\n#_0FF3D0: dw $754E, $3521, $755E, $3531 ; tileE7A: 0x14E, 0x121, 0x15E, 0x131\n#_0FF3D8: dw $5521, $550A, $5531, $552A ; tileE7B: 0x121, 0x10A, 0x131, 0x12A\n#_0FF3E0: dw $152A, $154F, $152A, $154F ; tileE7C: 0x12A, 0x14F, 0x12A, 0x14F\n#_0FF3E8: dw $5532, $0CFE, $5534, $0CFE ; tileE7D: 0x132, 0x0FE, 0x134, 0x0FE\n#_0FF3F0: dw $0CFE, $1532, $0CFE, $1534 ; tileE7E: 0x0FE, 0x132, 0x0FE, 0x134\n#_0FF3F8: dw $554F, $552A, $554F, $552A ; tileE7F: 0x14F, 0x12A, 0x14F, 0x12A\n#_0FF400: dw $152A, $155F, $153A, $1562 ; tileE80: 0x12A, 0x15F, 0x13A, 0x162\n#_0FF408: dw $5533, $150B, $5533, $151B ; tileE81: 0x133, 0x10B, 0x133, 0x11B\n#_0FF410: dw $550B, $1533, $551B, $1533 ; tileE82: 0x10B, 0x133, 0x11B, 0x133\n#_0FF418: dw $555F, $552A, $5562, $553A ; tileE83: 0x15F, 0x12A, 0x162, 0x13A\n#_0FF420: dw $08AA, $1572, $08AA, $08AA ; tileE84: 0x0AA, 0x172, 0x0AA, 0x0AA\n#_0FF428: dw $5523, $151B, $08AA, $08AA ; tileE85: 0x123, 0x11B, 0x0AA, 0x0AA\n#_0FF430: dw $551B, $1523, $08AA, $08AA ; tileE86: 0x11B, 0x123, 0x0AA, 0x0AA\n#_0FF438: dw $5572, $08AA, $08AA, $08AA ; tileE87: 0x172, 0x0AA, 0x0AA, 0x0AA\n#_0FF440: dw $1970, $1976, $1960, $1974 ; tileE88: 0x170, 0x176, 0x160, 0x174\n#_0FF448: dw $5976, $5970, $5974, $5960 ; tileE89: 0x176, 0x170, 0x174, 0x160\n#_0FF450: dw $1950, $197B, $1900, $1977 ; tileE8A: 0x150, 0x17B, 0x100, 0x177\n#_0FF458: dw $597B, $5950, $5977, $5900 ; tileE8B: 0x17B, 0x150, 0x177, 0x100\n#_0FF460: dw $1970, $190B, $1960, $18FE ; tileE8C: 0x170, 0x10B, 0x160, 0x0FE\n#_0FF468: dw $590B, $5970, $18FE, $5960 ; tileE8D: 0x10B, 0x170, 0x0FE, 0x160\n#_0FF470: dw $1960, $18FE, $1960, $18FE ; tileE8E: 0x160, 0x0FE, 0x160, 0x0FE\n#_0FF478: dw $18FE, $5960, $18FE, $5960 ; tileE8F: 0x0FE, 0x160, 0x0FE, 0x160\n#_0FF480: dw $1950, $197C, $1900, $1911 ; tileE90: 0x150, 0x17C, 0x100, 0x111\n#_0FF488: dw $197C, $5950, $1911, $5900 ; tileE91: 0x17C, 0x150, 0x111, 0x100\n#_0FF490: dw $1934, $190B, $1923, $191B ; tileE92: 0x134, 0x10B, 0x123, 0x11B\n#_0FF498: dw $590B, $5934, $591B, $5923 ; tileE93: 0x10B, 0x134, 0x11B, 0x123\n#_0FF4A0: dw $18FE, $18FE, $18FE, $18FE ; tileE94: 0x0FE, 0x0FE, 0x0FE, 0x0FE\n#_0FF4A8: dw $197C, $197C, $1911, $1911 ; tileE95: 0x17C, 0x17C, 0x111, 0x111\n#_0FF4B0: dw $1934, $190B, $1933, $191B ; tileE96: 0x134, 0x10B, 0x133, 0x11B\n#_0FF4B8: dw $590B, $5934, $591B, $5933 ; tileE97: 0x10B, 0x134, 0x11B, 0x133\n#_0FF4C0: dw $1923, $191B, $18FE, $18FE ; tileE98: 0x123, 0x11B, 0x0FE, 0x0FE\n#_0FF4C8: dw $591B, $5923, $18FE, $18FE ; tileE99: 0x11B, 0x123, 0x0FE, 0x0FE\n#_0FF4D0: dw $1933, $191B, $1923, $191B ; tileE9A: 0x133, 0x11B, 0x123, 0x11B\n#_0FF4D8: dw $591B, $5933, $591B, $5923 ; tileE9B: 0x11B, 0x133, 0x11B, 0x123\n#_0FF4E0: dw $1933, $191B, $1933, $191B ; tileE9C: 0x133, 0x11B, 0x133, 0x11B\n#_0FF4E8: dw $591B, $5933, $591B, $5933 ; tileE9D: 0x11B, 0x133, 0x11B, 0x133\n#_0FF4F0: dw $1923, $191B, $197C, $197C ; tileE9E: 0x123, 0x11B, 0x17C, 0x17C\n#_0FF4F8: dw $591B, $5923, $197C, $197C ; tileE9F: 0x11B, 0x123, 0x17C, 0x17C\n#_0FF500: dw $1923, $191B, $1931, $5931 ; tileEA0: 0x123, 0x11B, 0x131, 0x131\n#_0FF508: dw $591B, $5923, $1931, $5931 ; tileEA1: 0x11B, 0x123, 0x131, 0x131\n#_0FF510: dw $1960, $1974, $1960, $1974 ; tileEA2: 0x160, 0x174, 0x160, 0x174\n#_0FF518: dw $5974, $5960, $5974, $5960 ; tileEA3: 0x174, 0x160, 0x174, 0x160\n\n; =========================================================\n; FREE ROM: 0x20\n; =========================================================", + "file": "bank_0F.asm" + }, + { + "name": "NULL_0FF520", + "code": "NULL_0FF520:\n#_0FF520: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0FF528: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0FF530: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_0FF538: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0F.asm" + }, + { + "name": "Sprite_CancelHookshot", + "code": "Sprite_CancelHookshot:\n#_0FF540: PHB\n#_0FF541: PHK\n#_0FF542: PLB\n\n#_0FF543: PHX\n\n#_0FF544: LDX.b #$04\n\n.next_ancilla\n#_0FF546: LDA.w $0C4A,X\n#_0FF549: CMP.b #$1F ; ANCILLA 1F\n#_0FF54B: BNE .not_hooker\n\n.yes_hooker\n#_0FF54D: LDA.w $037E\n#_0FF550: BEQ .not_hooker\n\n.active_hooker\n#_0FF552: STZ.w $037E\n#_0FF555: BRA .stop_hooking\n\n.not_hooker\n#_0FF557: DEX\n#_0FF558: BPL .next_ancilla\n\n; ---------------------------------------------------------\n\n.stop_hooking\n#_0FF55A: LDA.b $23\n#_0FF55C: STA.b $41\n\n#_0FF55E: LDA.b $21\n#_0FF560: STA.b $40\n\n#_0FF562: REP #$20\n\n#_0FF564: LDA.w $0FC2\n#_0FF567: STA.b $22\n\n#_0FF569: LDA.w $0FC4\n#_0FF56C: STA.b $20\n\n#_0FF56E: SEP #$20\n\n#_0FF570: JSL HandleIndoorCameraAndDoors_long\n\n#_0FF574: PLX\n\n#_0FF575: PLB\n\n#_0FF576: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Ancilla_CheckForAvailableSlot", + "code": "Ancilla_CheckForAvailableSlot:\n#_0FF577: STY.b $0F\n\n#_0FF579: INY\n#_0FF57A: STY.b $0E\n\n#_0FF57C: LDY.b #$00\n#_0FF57E: LDX.b #$04\n\n.tallyoop\n#_0FF580: CMP.w $0C4A,X\n#_0FF583: BNE .not_the_same\n\n#_0FF585: INY\n\n.not_the_same\n#_0FF586: DEX\n#_0FF587: BPL .tallyoop\n\n#_0FF589: CPY.b $0E\n#_0FF58B: BEQ .too_many_here\n\n#_0FF58D: LDY.b #$01\n#_0FF58F: CMP.b #$07 ; ANCILLA 07\n#_0FF591: BEQ .find_empty_slot\n\n#_0FF593: CMP.b #$08 ; ANCILLA 08\n#_0FF595: BEQ .find_empty_slot\n\n#_0FF597: LDY.b #$04\n\n.find_empty_slot\n#_0FF599: LDA.w $0C4A,Y\n#_0FF59C: BEQ .slot_available\n\n#_0FF59E: DEY\n#_0FF59F: BPL .find_empty_slot\n\n.check_next_replacement\n#_0FF5A1: DEC.w $03C4\n#_0FF5A4: BPL .continue_with_index\n\n#_0FF5A6: LDA.b $0F\n#_0FF5A8: STA.w $03C4\n\n.continue_with_index\n#_0FF5AB: LDY.w $03C4\n\n#_0FF5AE: LDA.w $0C4A,Y\n#_0FF5B1: CMP.b #$3C ; ANCILLA 3C\n#_0FF5B3: BEQ .slot_available\n\n#_0FF5B5: CMP.b #$13 ; ANCILLA 13\n#_0FF5B7: BEQ .slot_available\n\n#_0FF5B9: CMP.b #$0A ; ANCILLA 0A\n#_0FF5BB: BEQ .slot_available\n\n#_0FF5BD: DEY\n#_0FF5BE: BPL .check_next_replacement\n\n.slot_available\n#_0FF5C0: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Link_SpinAndDie", + "code": "Link_SpinAndDie:\n#_0FF5E3: PHB\n#_0FF5E4: PHK\n#_0FF5E5: PLB\n\n#_0FF5E6: DEC.w $030B\n#_0FF5E9: BPL .timer_running\n\n#_0FF5EB: LDX.w $030D\n#_0FF5EE: INX\n#_0FF5EF: CPX.b #$0F\n#_0FF5F1: BEQ EXIT_0FF64D\n\n#_0FF5F3: CPX.b #$0E\n#_0FF5F5: BNE .swooning\n\n#_0FF5F7: INC.b $11\n\n.swooning\n#_0FF5F9: STX.w $030D\n\n#_0FF5FC: LDA.w .anim_step,X\n#_0FF5FF: STA.w $030A\n\n#_0FF602: LDA.w .timer,X\n#_0FF605: STA.w $030B\n\n.timer_running\n#_0FF608: LDA.w $030D\n#_0FF60B: CMP.b #$0D\n#_0FF60D: BNE EXIT_0FF64D\n\n#_0FF60F: LDA.b $4B\n#_0FF611: CMP.b #$0C\n#_0FF613: BEQ EXIT_0FF64D\n\n#_0FF615: REP #$20\n\n#_0FF617: LDA.b $20\n#_0FF619: CLC\n#_0FF61A: ADC.w #$0010\n#_0FF61D: SEC\n#_0FF61E: SBC.b $E8\n#_0FF620: STA.b $00\n\n#_0FF622: LDA.b $22\n#_0FF624: CLC\n#_0FF625: ADC.w #$0007\n#_0FF628: SEC\n#_0FF629: SBC.b $E2\n#_0FF62B: STA.b $02\n\n; ---------------------------------------------------------\n\n#_0FF62D: SEP #$20\n\n#_0FF62F: LDY.b $EE\n\n#_0FF631: LDA.b $02\n#_0FF633: STA.w $09D0\n\n#_0FF636: LDA.b $00\n#_0FF638: STA.w $09D1\n\n#_0FF63B: LDA.b #$AA\n#_0FF63D: STA.w $09D2\n\n#_0FF640: LDA.w .prop,Y\n\n#_0FF643: ORA.b #$02\n#_0FF645: STA.w $09D3\n\n#_0FF648: LDA.b #$02\n#_0FF64A: STA.w $0A94\n\n; ---------------------------------------------------------\n\n#EXIT_0FF64D:\n#_0FF64D: PLB\n\n#_0FF64E: RTL", + "file": "bank_0F.asm" + }, + { + "name": "AncillaAdd_SwordBeam", + "code": "AncillaAdd_SwordBeam:\n#_0FF67B: PHB\n#_0FF67C: PHK\n#_0FF67D: PLB\n\n#_0FF67E: LDA.b #$0C ; ANCILLA 0C\n#_0FF680: JSL AncillaAdd_AddAncilla_Bank09\n#_0FF684: BCS EXIT_0FF64D\n\n#_0FF686: LDA.b $2F\n#_0FF688: ASL A\n#_0FF689: TAY\n\n#_0FF68A: LDA.w .initial_angles+0,Y\n#_0FF68D: STA.l $7F5800\n\n#_0FF691: LDA.w .initial_angles+1,Y\n#_0FF694: STA.l $7F5801\n\n#_0FF698: LDA.w .initial_angles+2,Y\n#_0FF69B: STA.l $7F5802\n\n#_0FF69F: LDA.w .initial_angles+3,Y\n#_0FF6A2: STA.l $7F5803\n#_0FF6A6: STA.l $7F5804\n\n#_0FF6AA: LDA.b #$02\n#_0FF6AC: STA.w $03B1,X\n\n#_0FF6AF: LDA.b #$4C\n#_0FF6B1: STA.w $0C5E,X\n\n#_0FF6B4: LDA.b #$08\n#_0FF6B6: STA.w $039F,X\n\n#_0FF6B9: STZ.w $0C54,X\n#_0FF6BC: STZ.w $0385,X\n#_0FF6BF: STZ.w $0394,X\n\n#_0FF6C2: LDA.b #$00\n#_0FF6C4: STA.w $03A4,X\n\n#_0FF6C7: LDA.b #$0E\n#_0FF6C9: STA.l $7F5808\n\n#_0FF6CD: LDA.b $2F\n#_0FF6CF: LSR A\n#_0FF6D0: STA.w $0C72,X\n\n#_0FF6D3: TAY\n\n#_0FF6D4: LDA.w .speed_y,Y\n#_0FF6D7: STA.w $0C22,X\n\n#_0FF6DA: LDA.w .speed_x,Y\n#_0FF6DD: STA.w $0C2C,X\n\n#_0FF6E0: LDA.w .speed_angular,Y\n#_0FF6E3: STA.w $03A9,X\n\n#_0FF6E6: REP #$20\n\n#_0FF6E8: LDA.b $20\n#_0FF6EA: CLC\n#_0FF6EB: ADC.w #$000C\n#_0FF6EE: STA.l $7F5810\n\n#_0FF6F2: LDA.b $22\n#_0FF6F4: CLC\n#_0FF6F5: ADC.w #$0008\n#_0FF6F8: STA.l $7F580E\n\n#_0FF6FC: SEP #$20\n\n#_0FF6FE: JSL Ancilla_CheckInitialTile_A\n#_0FF702: BCS .continue\n\n#_0FF704: PLB\n\n#_0FF705: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Ancilla0C_SwordBeam", + "code": "Ancilla0C_SwordBeam:\n#_0FF764: PHB\n#_0FF765: PHK\n#_0FF766: PLB\n\n#_0FF767: PHX\n\n#_0FF768: LDA.b #$02\n#_0FF76A: STA.b $73\n\n#_0FF76C: LDA.b $11\n#_0FF76E: BEQ .do_beam_stuff\n\n#_0FF770: BRL .draw\n\n; ---------------------------------------------------------\n\n.do_beam_stuff\n#_0FF773: LDA.l $7F5810\n#_0FF777: STA.w $0BFA,X\n\n#_0FF77A: LDA.l $7F5811\n#_0FF77E: STA.w $0C0E,X\n\n#_0FF781: LDA.l $7F580E\n#_0FF785: STA.w $0C04,X\n\n#_0FF788: LDA.l $7F580F\n#_0FF78C: STA.w $0C18,X\n\n#_0FF78F: JSR SwordBeam_Move_Y\n#_0FF792: JSR SwordBeam_Move_X\n\n#_0FF795: LDA.w $0BFA,X\n#_0FF798: STA.l $7F5810\n\n#_0FF79C: LDA.w $0C0E,X\n#_0FF79F: STA.l $7F5811\n\n#_0FF7A3: LDA.w $0C04,X\n#_0FF7A6: STA.l $7F580E\n\n#_0FF7AA: LDA.w $0C18,X\n#_0FF7AD: STA.l $7F580F\n\n#_0FF7B1: LDA.w $0394,X\n#_0FF7B4: AND.b #$0F\n#_0FF7B6: BNE .no_sfx\n\n#_0FF7B8: JSL Ancilla_CalculateSFXPan\n#_0FF7BC: ORA.b #$01 ; SFX3.01\n#_0FF7BE: STA.w $012F\n\n.no_sfx\n#_0FF7C1: INC.w $0394,X\n#_0FF7C4: JSL Ancilla_CheckSpriteCollision_long\n#_0FF7C8: BCS .hit_sprite\n\n#_0FF7CA: JSL Ancilla_CheckTileCollision_long\n#_0FF7CE: BCC .no_collision\n\n.hit_sprite\n#_0FF7D0: LDY.w $0C72,X\n\n#_0FF7D3: LDA.w $0BFA,X\n#_0FF7D6: CLC\n#_0FF7D7: ADC.w .offset_y_low,Y\n#_0FF7DA: STA.w $0BFA,X\n\n#_0FF7DD: LDA.w $0C0E,X\n#_0FF7E0: ADC.w .offset_y_high,Y\n#_0FF7E3: STA.w $0C0E,X\n\n#_0FF7E6: LDA.w $0C04,X\n#_0FF7E9: CLC\n#_0FF7EA: ADC.w .offset_x_low,Y\n#_0FF7ED: STA.w $0C04,X\n\n#_0FF7F0: LDA.w $0C18,X\n#_0FF7F3: ADC.w .offset_x_high,Y\n#_0FF7F6: STA.w $0C18,X\n\n#_0FF7F9: LDA.b #$04 ; ANCILLA 04\n#_0FF7FB: STA.w $0C4A,X\n\n#_0FF7FE: LDA.b #$07\n#_0FF800: STA.w $0C68,X\n\n#_0FF803: LDA.b #$10\n#_0FF805: STA.w $0C90,X\n\n#_0FF808: BRL .exit\n\n; ---------------------------------------------------------\n\n.no_collision\n#_0FF80B: DEC.w $03B1,X\n#_0FF80E: BPL .draw\n\n#_0FF810: LDA.b #$04\n#_0FF812: STA.b $73\n\n#_0FF814: LDA.b #$02\n#_0FF816: STA.w $03B1,X\n\n.draw\n#_0FF819: LDA.w $03A9,X\n#_0FF81C: STA.b $76\n\n#_0FF81E: LDY.b #$00\n#_0FF820: LDX.b #$03\n\n.next_object\n#_0FF822: STX.b $72\n\n#_0FF824: LDA.b $11\n#_0FF826: BNE .no_rotation\n\n#_0FF828: LDA.l $7F5800,X\n#_0FF82C: CLC\n#_0FF82D: ADC.b $76\n#_0FF82F: AND.b #$3F\n#_0FF831: STA.l $7F5800,X\n\n; ---------------------------------------------------------\n\n.no_rotation\n#_0FF835: PHX\n#_0FF836: PHY\n\n#_0FF837: LDA.l $7F5808\n#_0FF83B: STA.b $08\n\n#_0FF83D: LDA.l $7F5800,X\n\n#_0FF841: JSL Ancilla_GetRadialProjection_long\n#_0FF845: JSL Sparkle_PrepOAMFromRadial\n\n#_0FF849: PLY\n\n#_0FF84A: JSL Ancilla_SetOAM_XY_long\n\n#_0FF84E: LDX.b $72\n\n#_0FF850: LDA.w .char,X\n#_0FF853: STA.b ($90),Y\n\n#_0FF855: INY\n\n#_0FF856: LDA.b $73\n#_0FF858: ORA.b $65\n#_0FF85A: STA.b ($90),Y\n\n#_0FF85C: INY\n#_0FF85D: PHY\n\n#_0FF85E: TYA\n#_0FF85F: SEC\n#_0FF860: SBC.b #$04\n\n#_0FF862: LSR A\n#_0FF863: LSR A\n#_0FF864: TAY\n\n#_0FF865: LDA.b #$00\n#_0FF867: STA.b ($92),Y\n\n#_0FF869: PLY\n\n#_0FF86A: PLX\n#_0FF86B: DEX\n#_0FF86C: BPL .next_object\n\n#_0FF86E: PLX\n#_0FF86F: PHX\n\n#_0FF870: LDA.b $11\n#_0FF872: BNE .dont_rotate_extra\n\n#_0FF874: DEC.w $039F,X\n#_0FF877: BPL .skip_extra\n\n#_0FF879: LDA.b #$00\n#_0FF87B: STA.w $039F,X\n\n#_0FF87E: LDA.w $03A4,X\n#_0FF881: INC A\n#_0FF882: AND.b #$03\n#_0FF884: STA.w $03A4,X\n\n#_0FF887: CMP.b #$03\n#_0FF889: BNE .dont_rotate_extra\n\n#_0FF88B: LDA.l $7F5804\n#_0FF88F: CLC\n#_0FF890: ADC.b $76\n#_0FF892: AND.b #$3F\n#_0FF894: STA.l $7F5804\n\n.dont_rotate_extra\n#_0FF898: LDA.w $03A4,X\n#_0FF89B: STA.b $72\n\n#_0FF89D: CMP.b #$03\n#_0FF89F: BEQ .skip_extra\n\n#_0FF8A1: PHY\n\n#_0FF8A2: LDA.l $7F5808\n#_0FF8A6: STA.b $08\n\n#_0FF8A8: LDA.l $7F5804\n#_0FF8AC: JSL Ancilla_GetRadialProjection_long\n#_0FF8B0: JSL Sparkle_PrepOAMFromRadial\n\n#_0FF8B4: PLY\n\n#_0FF8B5: JSL Ancilla_SetOAM_XY_long\n\n#_0FF8B9: LDX.b $72\n\n#_0FF8BB: LDA.w .extra_char,X\n#_0FF8BE: STA.b ($90),Y\n\n#_0FF8C0: INY\n#_0FF8C1: LDA.b #$04\n#_0FF8C3: ORA.b $65\n#_0FF8C5: STA.b ($90),Y\n\n#_0FF8C7: INY\n#_0FF8C8: TYA\n#_0FF8C9: SEC\n#_0FF8CA: SBC.b #$04\n\n#_0FF8CC: LSR A\n#_0FF8CD: LSR A\n#_0FF8CE: TAY\n#_0FF8CF: LDA.b #$00\n#_0FF8D1: STA.b ($92),Y\n\n.skip_extra\n#_0FF8D3: PLX\n#_0FF8D4: PHX\n#_0FF8D5: LDY.b #$01\n\n.check_next\n#_0FF8D7: LDA.b ($90),Y\n#_0FF8D9: CMP.b #$F0\n#_0FF8DB: BNE .exit\n\n#_0FF8DD: INY\n#_0FF8DE: INY\n#_0FF8DF: INY\n#_0FF8E0: INY\n#_0FF8E1: CPY.b #$11\n#_0FF8E3: BNE .check_next\n\n#_0FF8E5: STZ.w $0C4A,X\n\n.exit\n#_0FF8E8: PLX\n#_0FF8E9: PLB\n\n#_0FF8EA: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Ancilla0D_SpinAttackFullChargeSpark_long", + "code": "Ancilla0D_SpinAttackFullChargeSpark_long:\n#_0FF8FF: PHB\n#_0FF900: PHK\n#_0FF901: PLB\n\n#_0FF902: LDA.w $0C68,X\n#_0FF905: BNE .stay\n\n#_0FF907: STZ.w $0C4A,X\n\n#_0FF90A: BRA .exit\n\n; ---------------------------------------------------------\n\n.stay\n#_0FF90C: LDA.b $2F\n#_0FF90E: LSR A\n#_0FF90F: TAY\n\n#_0FF910: LDA.b $20\n#_0FF912: CLC\n#_0FF913: ADC.w .offset_y_low,Y\n#_0FF916: STA.b $00\n\n#_0FF918: LDA.b $21\n#_0FF91A: ADC.w .offset_y_high,Y\n#_0FF91D: STA.b $01\n\n#_0FF91F: LDA.b $22\n#_0FF921: CLC\n#_0FF922: ADC.w .offset_x_low,Y\n#_0FF925: STA.b $02\n\n#_0FF927: LDA.b $23\n#_0FF929: ADC.w .offset_x_high,Y\n#_0FF92C: STA.b $03\n\n#_0FF92E: REP #$20\n\n#_0FF930: LDA.b $00\n#_0FF932: SEC\n#_0FF933: SBC.b $E8\n#_0FF935: STA.b $00\n\n#_0FF937: LDA.b $02\n#_0FF939: SEC\n#_0FF93A: SBC.b $E2\n#_0FF93C: STA.b $02\n\n#_0FF93E: SEP #$20\n\n#_0FF940: LDY.w $0C7C,X\n\n#_0FF943: LDA.w .prop,Y\n#_0FF946: STA.b $65\n#_0FF948: STZ.b $64\n\n#_0FF94A: LDY.b #$00\n#_0FF94C: JSL Ancilla_SetOAM_XY_long\n\n#_0FF950: LDA.b #$D7\n#_0FF952: STA.b ($90),Y\n\n#_0FF954: INY\n\n#_0FF955: LDA.b #$02\n#_0FF957: ORA.b $65\n#_0FF959: STA.b ($90),Y\n\n#_0FF95B: LDA.b #$00\n#_0FF95D: STA.b ($92)\n\n.exit\n#_0FF95F: PLB\n\n#_0FF960: RTL", + "file": "bank_0F.asm" + }, + { + "name": "AncillaSpawn_SwordChargeSparkle", + "code": "AncillaSpawn_SwordChargeSparkle:\n#_0FF979: PHB\n#_0FF97A: PHK\n#_0FF97B: PLB\n\n#_0FF97C: LDX.b #$09\n\n.next_slot\n#_0FF97E: LDA.w $0C4A,X\n#_0FF981: BEQ .free_slot\n\n#_0FF983: DEX\n#_0FF984: BPL .next_slot\n\n#_0FF986: BRL .exit\n\n; ---------------------------------------------------------\n\n.free_slot\n#_0FF989: LDA.b #$3C ; ANCILLA 3C\n#_0FF98B: STA.w $0C4A,X\n\n#_0FF98E: STZ.w $0C5E,X\n\n#_0FF991: LDA.b #$04\n#_0FF993: STA.w $0C68,X\n\n#_0FF996: LDA.b $EE\n#_0FF998: STA.w $0C7C,X\n\n#_0FF99B: STZ.b $74\n#_0FF99D: STZ.b $75\n\n#_0FF99F: LDA.b $2F\n#_0FF9A1: LSR A\n#_0FF9A2: TAY\n\n#_0FF9A3: LDA.w .mask_y,Y\n#_0FF9A6: BNE .off_axis_y\n\n#_0FF9A8: LDA.w $0079\n#_0FF9AB: LSR A\n#_0FF9AC: LSR A\n\n#_0FF9AD: CPY.b #$00\n#_0FF9AF: BNE .correct_sign_y\n\n#_0FF9B1: EOR.b #$FF\n#_0FF9B3: INC A\n\n.correct_sign_y\n#_0FF9B4: STA.b $74\n\n#_0FF9B6: LDA.b #$00\n\n.off_axis_y\n#_0FF9B8: STA.b $72\n\n#_0FF9BA: LDA.w .mask_x,Y\n#_0FF9BD: BNE .off_axis_x\n\n#_0FF9BF: LDA.w $0079\n#_0FF9C2: LSR A\n#_0FF9C3: LSR A\n\n#_0FF9C4: CPY.b #$02\n#_0FF9C6: BNE .correct_sign_x\n\n#_0FF9C8: EOR.b #$FF\n#_0FF9CA: INC A\n\n.correct_sign_x\n#_0FF9CB: STA.b $75\n\n#_0FF9CD: LDA.b #$00\n\n.off_axis_x\n#_0FF9CF: STA.b $73\n\n; ---------------------------------------------------------\n\n#_0FF9D1: JSL GetRandomNumber\n#_0FF9D5: STA.b $08\n\n#_0FF9D7: AND.b $72\n#_0FF9D9: STA.b $04\n#_0FF9DB: STZ.b $05\n\n#_0FF9DD: LDA.b $08\n#_0FF9DF: AND.b $73\n#_0FF9E1: LSR A\n#_0FF9E2: LSR A\n#_0FF9E3: LSR A\n#_0FF9E4: LSR A\n#_0FF9E5: STA.b $06\n#_0FF9E7: STZ.b $07\n\n; ---------------------------------------------------------\n\n#_0FF9E9: LDY.b $2F\n\n#_0FF9EB: REP #$20\n\n#_0FF9ED: LDA.b $74\n#_0FF9EF: AND.w #$00FF\n#_0FF9F2: CMP.w #$0080\n#_0FF9F5: BCC .positive_y\n\n#_0FF9F7: ORA.w #$FF00\n\n.positive_y\n#_0FF9FA: CLC\n#_0FF9FB: ADC.b $20\n\n#_0FF9FD: CLC\n#_0FF9FE: ADC.w .offset_y,Y\n\n#_0FFA01: CLC\n#_0FFA02: ADC.b $04\n#_0FFA04: STA.b $00\n\n; ---------------------------------------------------------\n\n#_0FFA06: LDA.b $75\n#_0FFA08: AND.w #$00FF\n#_0FFA0B: CMP.w #$0080\n#_0FFA0E: BCC .positive_x\n\n#_0FFA10: ORA.w #$FF00\n\n.positive_x\n#_0FFA13: CLC\n#_0FFA14: ADC.b $22\n\n#_0FFA16: CLC\n#_0FFA17: ADC.w .offset_x,Y\n\n#_0FFA1A: CLC\n#_0FFA1B: ADC.b $06\n#_0FFA1D: STA.b $02\n\n#_0FFA1F: SEP #$20\n\n#_0FFA21: LDA.b $00\n#_0FFA23: STA.w $0BFA,X\n\n#_0FFA26: LDA.b $01\n#_0FFA28: STA.w $0C0E,X\n\n#_0FFA2B: LDA.b $02\n#_0FFA2D: STA.w $0C04,X\n\n#_0FFA30: LDA.b $03\n#_0FFA32: STA.w $0C18,X\n\n.exit\n#_0FFA35: PLB\n\n#_0FFA36: RTL", + "file": "bank_0F.asm" + }, + { + "name": "SwordBeam_Move_X", + "code": "SwordBeam_Move_X:\n#_0FFA37: TXA\n#_0FFA38: CLC\n#_0FFA39: ADC.b #$0A\n#_0FFA3B: TAX\n\n#_0FFA3C: JSR SwordBeam_Move_Y\n\n#_0FFA3F: LDX.w $0FA0\n\n#_0FFA42: RTS", + "file": "bank_0F.asm" + }, + { + "name": "SwordBeam_Move_Y", + "code": "SwordBeam_Move_Y:\n#_0FFA43: LDA.w $0C22,X\n#_0FFA46: ASL A\n#_0FFA47: ASL A\n#_0FFA48: ASL A\n#_0FFA49: ASL A\n#_0FFA4A: CLC\n#_0FFA4B: ADC.w $0C36,X\n#_0FFA4E: STA.w $0C36,X\n\n#_0FFA51: LDY.b #$00\n\n#_0FFA53: LDA.w $0C22,X\n#_0FFA56: PHP\n\n#_0FFA57: LSR A\n#_0FFA58: LSR A\n#_0FFA59: LSR A\n#_0FFA5A: LSR A\n\n#_0FFA5B: PLP\n#_0FFA5C: BPL .positive_velocity\n\n#_0FFA5E: ORA.b #$F0\n\n#_0FFA60: DEY\n\n.positive_velocity\n#_0FFA61: ADC.w $0BFA,X\n#_0FFA64: STA.w $0BFA,X\n\n#_0FFA67: TYA\n#_0FFA68: ADC.w $0C0E,X\n#_0FFA6B: STA.w $0C0E,X\n\n#_0FFA6E: RTS", + "file": "bank_0F.asm" + }, + { + "name": "PrepareToDie", + "code": "PrepareToDie:\n#_0FFA6F: PHB\n#_0FFA70: PHK\n#_0FFA71: PLB\n\n#_0FFA72: LDA.b #$02\n#_0FFA74: STA.b $2F\n\n#_0FFA76: LDA.b #$01\n#_0FFA78: STA.w $036B\n\n#_0FFA7B: STZ.w $030D\n#_0FFA7E: STZ.w $030A\n\n#_0FFA81: LDA.b #$05\n#_0FFA83: STA.w $030B\n\n#_0FFA86: LDA.b #$00\n#_0FFA88: STA.l $7EF372\n#_0FFA8C: STA.l $7EF36D\n\n#_0FFA90: JSL Link_ResetProperties_C\n\n#_0FFA94: STZ.w $02F5\n#_0FFA97: STZ.w $0351\n#_0FFA9A: STZ.w $02E0\n\n#_0FFA9D: STZ.b $48\n#_0FFA9F: STZ.w $02EC\n\n#_0FFAA2: STZ.b $4D\n#_0FFAA4: STZ.b $46\n\n#_0FFAA6: STZ.w $0373\n#_0FFAA9: STZ.w $02E1\n\n#_0FFAAC: STZ.b $5E\n#_0FFAAE: STZ.w $03F7\n\n#_0FFAB1: LDA.l $7EF357\n#_0FFAB5: BEQ .no_pearl\n\n#_0FFAB7: STZ.b $56\n\n.no_pearl\n#_0FFAB9: STZ.w $03F5\n#_0FFABC: STZ.w $03F6\n\n#_0FFABF: JSL Link_CalculateSFXPan\n#_0FFAC3: ORA.b #$27 ; SFX2.27\n#_0FFAC5: STA.w $012E\n\n#_0FFAC8: LDA.b #$06\n#_0FFACA: CMP.l $7EF35C\n#_0FFACE: BEQ .fairy\n\n#_0FFAD0: CMP.l $7EF35D\n#_0FFAD4: BEQ .fairy\n\n#_0FFAD6: CMP.l $7EF35E\n#_0FFADA: BEQ .fairy\n\n#_0FFADC: CMP.l $7EF35F\n#_0FFAE0: BEQ .fairy\n\n#_0FFAE2: STZ.w $05FC\n#_0FFAE5: STZ.w $05FD\n\n.fairy\n#_0FFAE8: PLB\n\n#_0FFAE9: RTL", + "file": "bank_0F.asm" + }, + { + "name": "RushToTerminateReceiveItem", + "code": "RushToTerminateReceiveItem:\n#_0FFAEA: PHX\n\n#_0FFAEB: LDX.b #$04\n\n.next_slot\n#_0FFAED: LDA.w $0C4A,X\n#_0FFAF0: CMP.b #$22 ; ANCILLA 22\n#_0FFAF2: BNE .not_receive_item\n\n#_0FFAF4: LDA.b #$01\n#_0FFAF6: STA.w $03B1,X\n\n.not_receive_item\n#_0FFAF9: DEX\n#_0FFAFA: BPL .next_slot\n\n#_0FFAFC: PLX\n\n#_0FFAFD: RTL", + "file": "bank_0F.asm" + }, + { + "name": "DashTremor_Twiddle", + "code": "DashTremor_Twiddle:\n#_0FFAFE: LDY.w $0C72,X\n\n#_0FFB01: LDA.w $0BFA,X\n#_0FFB04: STA.b $00\n\n#_0FFB06: LDA.w $0C0E,X\n#_0FFB09: STA.b $01\n\n#_0FFB0B: REP #$20\n\n#_0FFB0D: LDA.b $00\n#_0FFB0F: EOR.w #$FFFF\n#_0FFB12: INC A\n#_0FFB13: STA.b $00\n\n#_0FFB15: SEP #$20\n\n#_0FFB17: LDA.b $00\n#_0FFB19: STA.w $0BFA,X\n\n#_0FFB1C: LDA.b $01\n#_0FFB1E: STA.w $0C0E,X\n\n; ---------------------------------------------------------\n\n#_0FFB21: LDA.b $1B\n#_0FFB23: BNE .exit\n\n#_0FFB25: CPY.b #$02\n#_0FFB27: BNE .horizontal\n\n#_0FFB29: REP #$20\n\n#_0FFB2B: LDA.w $0600\n#_0FFB2E: CLC\n#_0FFB2F: ADC.w #$0001\n#_0FFB32: STA.b $02\n\n#_0FFB34: LDA.w $0602\n#_0FFB37: CLC\n#_0FFB38: ADC.w #$FFFF\n#_0FFB3B: STA.b $04\n\n#_0FFB3D: LDA.b $00\n#_0FFB3F: CLC\n#_0FFB40: ADC.b $E8\n#_0FFB42: CMP.b $02\n#_0FFB44: BEQ .vertical_zero\n#_0FFB46: BCC .vertical_zero\n\n#_0FFB48: CMP.b $04\n#_0FFB4A: BEQ .vertical_zero\n#_0FFB4C: BCC .exit\n\n.vertical_zero\n#_0FFB4E: BRA .zero\n\n; ---------------------------------------------------------\n\n.horizontal\n#_0FFB50: REP #$20\n\n#_0FFB52: LDA.w $0604\n#_0FFB55: CLC\n#_0FFB56: ADC.w #$0001\n#_0FFB59: STA.b $02\n\n#_0FFB5B: LDA.w $0606\n#_0FFB5E: CLC\n#_0FFB5F: ADC.w #$FFFF\n#_0FFB62: STA.b $04\n\n#_0FFB64: LDA.b $00\n#_0FFB66: CLC\n#_0FFB67: ADC.b $E2\n#_0FFB69: CMP.b $02\n#_0FFB6B: BEQ .zero\n#_0FFB6D: BCC .zero\n\n#_0FFB6F: CMP.b $04\n#_0FFB71: BEQ .zero\n#_0FFB73: BCC .exit\n\n.zero\n#_0FFB75: STZ.b $00\n\n.exit\n#_0FFB77: SEP #$20\n\n#_0FFB79: RTL", + "file": "bank_0F.asm" + }, + { + "name": "BombosBlastRandomPosition", + "code": "BombosBlastRandomPosition:\n#_0FFB7A: db $B6, $5D, $A1, $30, $69, $B5, $A3, $24\n#_0FFB82: db $96, $AC, $73, $5F, $92, $48, $52, $81\n#_0FFB8A: db $39, $95, $7F, $20, $88, $5D, $34, $98\n#_0FFB92: db $BC, $D2, $51, $77, $A2, $47, $94, $B2\n#_0FFB9A: db $34, $DA, $30, $62, $9F, $76, $51, $46\n#_0FFBA2: db $98, $5C, $9B, $61, $58, $95, $4C, $BA\n#_0FFBAA: db $7E, $CB, $12, $D0, $70, $A6, $46, $BF\n#_0FFBB2: db $40, $50, $7E, $8C, $2D, $61, $AC, $88\n#_0FFBBA: db $20, $6A, $72, $5F, $D2, $28, $52, $80\n\n; =========================================================\n\npool Ancilla_GetRadialProjection\n\n.multiplier_x\n#_0FFBC2: db $00, $19, $31, $4A, $61, $78, $8E, $A2\n#_0FFBCA: db $B5, $C5, $D4, $E1, $EC, $F4, $FB, $FE\n#_0FFBD2: db $FF, $FE, $FB, $F4, $EC, $E1, $D4, $C5\n#_0FFBDA: db $B5, $A2, $8E, $78, $61, $4A, $31, $19\n#_0FFBE2: db $00, $19, $31, $4A, $61, $78, $8E, $A2\n#_0FFBEA: db $B5, $C5, $D4, $E1, $EC, $F4, $FB, $FE\n#_0FFBF2: db $FF, $FE, $FB, $F4, $EC, $E1, $D4, $C5\n#_0FFBFA: db $B5, $A2, $8E, $78, $61, $4A, $31, $19\n\n.multiplier_y\n#_0FFC02: db $FF, $FE, $FB, $F4, $EC, $E1, $D4, $C5\n#_0FFC0A: db $B5, $A2, $8E, $78, $61, $4A, $31, $19\n#_0FFC12: db $00, $19, $31, $4A, $61, $78, $8E, $A2\n#_0FFC1A: db $B5, $C5, $D4, $E1, $EC, $F4, $FB, $FE\n#_0FFC22: db $FF, $FE, $FB, $F4, $EC, $E1, $D4, $C5\n#_0FFC2A: db $B5, $A2, $8E, $78, $61, $4A, $31, $19\n#_0FFC32: db $00, $19, $31, $4A, $61, $78, $8E, $A2\n#_0FFC3A: db $B5, $C5, $D4, $E1, $EC, $F4, $FB, $FE\n\n.meta_sign_y\n#_0FFC42: db $01, $01, $01, $01, $01, $01, $01, $01\n#_0FFC4A: db $01, $01, $01, $01, $01, $01, $01, $01\n#_0FFC52: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC5A: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC62: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC6A: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC72: db $01, $01, $01, $01, $01, $01, $01, $01\n#_0FFC7A: db $01, $01, $01, $01, $01, $01, $01, $01\n\n.meta_sign_x\n#_0FFC82: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC8A: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC92: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFC9A: db $00, $00, $00, $00, $00, $00, $00, $00\n#_0FFCA2: db $00, $01, $01, $01, $01, $01, $01, $01\n#_0FFCAA: db $01, $01, $01, $01, $01, $01, $01, $01\n#_0FFCB2: db $01, $01, $01, $01, $01, $01, $01, $01\n#_0FFCBA: db $01, $01, $01, $01, $01, $01, $01, $01\n\npool off\n\n; =========================================================\n", + "file": "bank_0F.asm" + }, + { + "name": "SomariaBlockFission", + "code": "SomariaBlockFission:\n.offset_y\n#_0FFCC2: dw -10, -10, 2, 2, -8, 0, -8, 0\n#_0FFCD2: dw -12, -12, 4, 4, -8, 0, -8, 0\n\n.offset_x\n#_0FFCE2: dw -8, 0, -8, 0, -10, -10, 2, 2\n#_0FFCF2: dw -8, 0, -8, 0, -12, -12, 4, 4\n\n.char\n#_0FFD02: db $C6, $C6, $C6, $C6, $C4, $C4, $C4, $C4\n#_0FFD0A: db $D2, $D2, $D2, $D2, $C5, $C5, $C5, $C5\n\n.prop\n#_0FFD12: db $C6, $86, $46, $06, $46, $C6, $06, $86\n#_0FFD1A: db $C6, $86, $46, $06, $46, $C6, $06, $86\n\n; =========================================================\n", + "file": "bank_0F.asm" + }, + { + "name": "Link_CheckIfBunny", + "code": "Link_CheckIfBunny:\n#_0FFD22: LDA.b $5D\n#_0FFD24: CMP.b #$02 ; LINKSTATE 02\n#_0FFD26: BNE .exit\n\n#_0FFD28: LDY.b #$00 ; LINKSTATE 00\n\n#_0FFD2A: LDA.w $02E0\n#_0FFD2D: BEQ .set\n\n#_0FFD2F: LDY.b #$17 ; LINKSTATE 17\n\n#_0FFD31: LDA.l $7EF357\n#_0FFD35: BEQ .set\n\n#_0FFD37: LDY.b #$1C ; LINKSTATE 1C\n\n.set\n#_0FFD39: STY.b $5D\n\n.exit\n#_0FFD3B: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Ancilla_DeleteWaterfallSplashes", + "code": "Ancilla_DeleteWaterfallSplashes:\n#_0FFD3C: LDA.b $8A\n#_0FFD3E: CMP.b #$0F ; OW 0F\n#_0FFD40: BNE .not_waterfall\n\n#_0FFD42: LDX.b #$04\n\n.next_slot\n#_0FFD44: LDA.w $0C4A,X\n#_0FFD47: CMP.b #$41 ; ANCILLA 41\n#_0FFD49: BNE .not_water\n\n#_0FFD4B: STZ.w $0C4A,X\n\n.not_water\n#_0FFD4E: DEX\n#_0FFD4F: BPL .next_slot\n\n.not_waterfall\n#_0FFD51: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Ancilla_TerminateOffScreen", + "code": "Ancilla_TerminateOffScreen:\n#_0FFD52: LDA.w $0BFA,Y\n#_0FFD55: STA.b $0C\n\n#_0FFD57: LDA.w $0C0E,Y\n#_0FFD5A: STA.b $0D\n\n#_0FFD5C: LDA.w $0C04,Y\n#_0FFD5F: STA.b $0E\n\n#_0FFD61: LDA.w $0C18,Y\n#_0FFD64: STA.b $0F\n\n#_0FFD66: REP #$20\n\n#_0FFD68: LDA.b $0C\n#_0FFD6A: SEC\n#_0FFD6B: SBC.b $E8\n#_0FFD6D: CMP.w #$00F0\n#_0FFD70: BCS .terminate\n\n#_0FFD72: LDA.b $0E\n#_0FFD74: SEC\n#_0FFD75: SBC.b $E2\n#_0FFD77: CMP.w #$00F4\n#_0FFD7A: BCC .on_screen\n\n.terminate\n#_0FFD7C: SEP #$20\n\n#_0FFD7E: LDA.b #$00\n#_0FFD80: STA.w $0C4A,Y\n\n.on_screen\n#_0FFD83: SEP #$20\n\n#_0FFD85: RTL", + "file": "bank_0F.asm" + }, + { + "name": "DeleteBoomAndByrnaSparks", + "code": "DeleteBoomAndByrnaSparks:\n#_0FFD86: PHX\n\n#_0FFD87: STA.w $03FC\n\n#_0FFD8A: JSL Link_ResetProperties_C\n\n#_0FFD8E: LDX.b #$04\n\n.next_slot\n#_0FFD90: LDA.w $0C4A,X\n\n#_0FFD93: CMP.b #$30 ; ANCILLA 30\n#_0FFD95: BEQ .delete\n\n#_0FFD97: CMP.b #$31 ; ANCILLA 31\n#_0FFD99: BEQ .delete\n\n#_0FFD9B: CMP.b #$05 ; ANCILLA 05\n#_0FFD9D: BNE .keep\n\n#_0FFD9F: STZ.w $035F\n\n.delete\n#_0FFDA2: STZ.w $0C4A,X\n\n.keep\n#_0FFDA5: DEX\n#_0FFDA6: BPL .next_slot\n\n#_0FFDA8: PLX\n\n#_0FFDA9: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Interface_PrepAndDisplayMessage", + "code": "Interface_PrepAndDisplayMessage:\n#_0FFDAA: LDA.b $10\n#_0FFDAC: CMP.b #$0E\n#_0FFDAE: BEQ .exit\n\n#_0FFDB0: STZ.w $0223\n#_0FFDB3: STZ.w $1CD8\n\n#_0FFDB6: LDA.b #$02\n#_0FFDB8: STA.b $11\n\n#_0FFDBA: LDA.b $10\n#_0FFDBC: STA.w $010C\n\n#_0FFDBF: LDA.b #$0E\n#_0FFDC1: STA.b $10\n\n.exit\n#_0FFDC3: RTL", + "file": "bank_0F.asm" + }, + { + "name": "AncillaAdd_SwordChargeSparkle_preserveX", + "code": "AncillaAdd_SwordChargeSparkle_preserveX:\n#_0FFDC4: PHB\n#_0FFDC5: PHK\n#_0FFDC6: PLB\n\n#_0FFDC7: PHX\n#_0FFDC8: JSL AncillaAdd_SwordChargeSparkle\n#_0FFDCC: PLX\n\n#_0FFDCD: PLB\n\n#_0FFDCE: RTL", + "file": "bank_0F.asm" + }, + { + "name": "AncillaDraw_BombExtraStuff", + "code": "AncillaDraw_BombExtraStuff:\n#_0FFDCF: LDA.w $0C5E,X\n#_0FFDD2: BEQ .not_lifted\n\n#_0FFDD4: BRL .exit\n\n.not_lifted\n#_0FFDD7: STZ.b $0A\n\n#_0FFDD9: LDA.w $03E4,X\n#_0FFDDC: CMP.b #$09 ; TILETYPE 09\n#_0FFDDE: BNE .not_on_water\n\n#_0FFDE0: DEC.w $03E1,X\n#_0FFDE3: BPL .delay_rippling\n\n#_0FFDE5: LDA.b #$03\n#_0FFDE7: STA.w $03E1,X\n\n#_0FFDEA: INC.w $03D2,X\n\n#_0FFDED: LDA.w $03D2,X\n#_0FFDF0: CMP.b #$03\n#_0FFDF2: BNE .delay_rippling\n\n#_0FFDF4: LDA.b #$00\n#_0FFDF6: STA.w $03D2,X\n\n.delay_rippling\n#_0FFDF9: LDA.w $03D2,X\n#_0FFDFC: CLC\n#_0FFDFD: ADC.b #$04\n#_0FFDFF: STA.b $0A\n\n#_0FFE01: LDA.w $012E\n#_0FFE04: AND.b #$3F\n#_0FFE06: CMP.b #$0B ; SFX2.0B\n#_0FFE08: BEQ .set_sfx\n\n#_0FFE0A: CMP.b #$21 ; SFX2.21\n#_0FFE0C: BNE .check_height\n\n.set_sfx\n#_0FFE0E: STZ.w $012E\n\n#_0FFE11: JSL Ancilla_CalculateSFXPan\n#_0FFE15: ORA.b #$28 ; SFX2.28\n#_0FFE17: STA.w $012E\n\n#_0FFE1A: BRA .check_height\n\n.not_on_water\n#_0FFE1C: CMP.b #$40 ; TILETYPE 40\n#_0FFE1E: BNE .check_height\n\n#_0FFE20: LDA.b #$03\n#_0FFE22: STA.b $0A\n\n; ---------------------------------------------------------\n\n.check_height\n#_0FFE24: LDA.w $029E,X\n#_0FFE27: CMP.b #$02\n#_0FFE29: BCC .grounded\n\n#_0FFE2B: CMP.b #$FC\n#_0FFE2D: BCS .grounded\n\n#_0FFE2F: LDA.b #$02\n#_0FFE31: STA.b $0A\n\n.grounded\n#_0FFE33: TXA\n#_0FFE34: INC A\n#_0FFE35: CMP.w $02EC\n#_0FFE38: BNE .ignore_link\n\n#_0FFE3A: LDA.w $0308\n#_0FFE3D: AND.b #$80\n#_0FFE3F: BNE .exit\n\n.ignore_link\n#_0FFE41: CPY.b #$04\n#_0FFE43: BEQ .set_position\n\n#_0FFE45: LDY.b #$00\n\n; ---------------------------------------------------------\n\n.set_position\n#_0FFE47: REP #$20\n\n#_0FFE49: LDA.w $029E,X\n#_0FFE4C: AND.w #$00FF\n#_0FFE4F: CMP.w #$0080\n#_0FFE52: BCC .positive\n\n#_0FFE54: ORA.w #$FF00\n\n.positive\n#_0FFE57: CLC\n#_0FFE58: ADC.b $0C\n#_0FFE5A: CLC\n#_0FFE5B: ADC.w #$0002\n#_0FFE5E: STA.b $00\n\n#_0FFE60: LDA.b $0E\n#_0FFE62: CLC\n#_0FFE63: ADC.w #$FFF8\n#_0FFE66: STA.b $02\n\n#_0FFE68: SEP #$20\n\n#_0FFE6A: LDA.b $65\n#_0FFE6C: STA.b $04\n\n#_0FFE6E: CLC\n#_0FFE6F: RTL", + "file": "bank_0F.asm" + }, + { + "name": "Reset", + "code": "Reset:\n #_008000: SEI\n\n #_008001: STZ.w NMITIMEN\n #_008004: STZ.w HDMAEN\n #_008007: STZ.w MDMAEN\n\n #_00800A: STZ.w APUIO0\n #_00800D: STZ.w APUIO1\n #_008010: STZ.w APUIO2\n #_008013: STZ.w APUIO3\n\n #_008016: LDA.b #$80 ; Enable force blank\n #_008018: STA.w INIDISP\n\n #_00801B: CLC\n #_00801C: XCE\n\n #_00801D: REP #$28\n\n #_00801F: LDA.w #$0000\n #_008022: TCD\n\n #_008023: LDA.w #$01FF\n #_008026: TCS\n\n #_008027: SEP #$30\n\n #_008029: JSR LoadIntroSongBank\n #_00802C: JSR InitializeMemoryAndSRAM\n\n #_00802F: LDA.b #$81 ; enable NMI and auto joypad read\n #_008031: STA.w NMITIMEN\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "MainGameLoop", + "code": "MainGameLoop:\n #_008034: LDA.b $12\n #_008036: BEQ MainGameLoop\n\n #_008038: CLI\n\n #_008039: BRA .do_frame\n\n; ---------------------------------------------------------\n\n.frame_step\n #_00803B: LDA.b $F6\n #_00803D: AND.b #$20\n #_00803F: BEQ .L_not_pressed\n\n #_008041: INC.w $0FD7\n\n.L_not_pressed\n #_008044: LDA.b $F6\n #_008046: AND.b #$10\n #_008048: BNE .do_frame\n\n #_00804A: LDA.w $0FD7\n #_00804D: AND.b #$01\n #_00804F: BNE .skip_frame\n\n; ---------------------------------------------------------\n\n.do_frame\n #_008051: INC.b $1A\n\n #_008053: JSR ClearOAMBuffer\n #_008056: JSL Module_MainRouting\n\n.skip_frame\n #_00805A: JSR NMI_PrepareSprites\n\n #_00805D: STZ.b $12\n\n #_00805F: BRA MainGameLoop\n\n; =========================================================\n\npool Module_MainRouting\n\n.low\n #_008061: db Module00_Intro>>0\n #_008062: db Module01_FileSelect>>0\n #_008063: db Module02_CopyFile>>0\n #_008064: db Module03_KILLFile>>0\n\n #_008065: db Module04_NameFile>>0\n #_008066: db Module05_LoadFile>>0\n #_008067: db Module06_UnderworldLoad>>0\n #_008068: db Module07_Underworld>>0\n\n #_008069: db Module08_OverworldLoad>>0\n #_00806A: db Module09_Overworld>>0\n #_00806B: db Module0A_OverworldSpecialLoad>>0\n #_00806C: db Module0B_OverworldSpecial>>0\n\n #_00806D: db Module0C_Unused>>0\n #_00806E: db Module0D_Unused>>0\n #_00806F: db Module0E_Interface>>0\n #_008070: db Module0F_SpotlightClose>>0\n\n #_008071: db Module10_SpotlightOpen>>0\n #_008072: db Module11_UnderworldFallingEntrance>>0\n #_008073: db Module12_GameOver>>0\n #_008074: db Module13_BossVictory_Pendant>>0\n\n #_008075: db Module14_Attract>>0\n #_008076: db Module15_MirrorWarpFromAga>>0\n #_008077: db Module16_BossVictory_Crystal>>0\n #_008078: db Module17_SaveAndQuit>>0\n\n #_008079: db Module18_GanonEmerges>>0\n #_00807A: db Module19_TriforceRoom>>0\n #_00807B: db Module1A_Credits>>0\n #_00807C: db Module1B_SpawnSelect>>0\n\n; ---------------------------------------------------------\n\n.mid\n #_00807D: db Module00_Intro>>8\n #_00807E: db Module01_FileSelect>>8\n #_00807F: db Module02_CopyFile>>8\n #_008080: db Module03_KILLFile>>8\n\n #_008081: db Module04_NameFile>>8\n #_008082: db Module05_LoadFile>>8\n #_008083: db Module06_UnderworldLoad>>8\n #_008084: db Module07_Underworld>>8\n\n #_008085: db Module08_OverworldLoad>>8\n #_008086: db Module09_Overworld>>8\n #_008087: db Module0A_OverworldSpecialLoad>>8\n #_008088: db Module0B_OverworldSpecial>>8\n\n #_008089: db Module0C_Unused>>8\n #_00808A: db Module0D_Unused>>8\n #_00808B: db Module0E_Interface>>8\n #_00808C: db Module0F_SpotlightClose>>8\n\n #_00808D: db Module10_SpotlightOpen>>8\n #_00808E: db Module11_UnderworldFallingEntrance>>8\n #_00808F: db Module12_GameOver>>8\n #_008090: db Module13_BossVictory_Pendant>>8\n\n #_008091: db Module14_Attract>>8\n #_008092: db Module15_MirrorWarpFromAga>>8\n #_008093: db Module16_BossVictory_Crystal>>8\n #_008094: db Module17_SaveAndQuit>>8\n\n #_008095: db Module18_GanonEmerges>>8\n #_008096: db Module19_TriforceRoom>>8\n #_008097: db Module1A_Credits>>8\n #_008098: db Module1B_SpawnSelect>>8\n\n; ---------------------------------------------------------\n\n.bank\n #_008099: db Module00_Intro>>16\n #_00809A: db Module01_FileSelect>>16\n #_00809B: db Module02_CopyFile>>16\n #_00809C: db Module03_KILLFile>>16\n\n #_00809D: db Module04_NameFile>>16\n #_00809E: db Module05_LoadFile>>16\n #_00809F: db Module06_UnderworldLoad>>16\n #_0080A0: db Module07_Underworld>>16\n\n #_0080A1: db Module08_OverworldLoad>>16\n #_0080A2: db Module09_Overworld>>16\n #_0080A3: db Module0A_OverworldSpecialLoad>>16\n #_0080A4: db Module0B_OverworldSpecial>>16\n\n #_0080A5: db Module0C_Unused>>16\n #_0080A6: db Module0D_Unused>>16\n #_0080A7: db Module0E_Interface>>16\n #_0080A8: db Module0F_SpotlightClose>>16\n\n #_0080A9: db Module10_SpotlightOpen>>16\n #_0080AA: db Module11_UnderworldFallingEntrance>>16\n #_0080AB: db Module12_GameOver>>16\n #_0080AC: db Module13_BossVictory_Pendant>>16\n\n #_0080AD: db Module14_Attract>>16\n #_0080AE: db Module15_MirrorWarpFromAga>>16\n #_0080AF: db Module16_BossVictory_Crystal>>16\n #_0080B0: db Module17_SaveAndQuit>>16\n\n #_0080B1: db Module18_GanonEmerges>>16\n #_0080B2: db Module19_TriforceRoom>>16\n #_0080B3: db Module1A_Credits>>16\n #_0080B4: db Module1B_SpawnSelect>>16\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "Module_MainRouting", + "code": "Module_MainRouting:\n #_0080B5: LDY.b $10\n\n #_0080B7: LDA.w .low,Y\n #_0080BA: STA.b $03\n\n #_0080BC: LDA.w .mid,Y\n #_0080BF: STA.b $04\n\n #_0080C1: LDA.w .bank,Y\n #_0080C4: STA.b $05\n\n #_0080C6: JML.w [$0003]\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Interrupt_NMI", + "code": "Interrupt_NMI:\n #_0080C9: SEI\n #_0080CA: REP #$30\n\n #_0080CC: PHA\n #_0080CD: PHX\n #_0080CE: PHY\n\n #_0080CF: PHD\n #_0080D0: PHB\n\n #_0080D1: LDA.w #$0000\n #_0080D4: TCD\n\n #_0080D5: PHK\n #_0080D6: PLB\n\n #_0080D7: SEP #$30\n\n #_0080D9: LDA.w RDNMI\n\n #_0080DC: LDA.w $012C\n #_0080DF: BNE .song_input\n\n #_0080E1: LDA.w APUIO0\n #_0080E4: CMP.w $0133\n #_0080E7: BNE .handle_sfx1\n\n #_0080E9: STZ.w APUIO0\n\n #_0080EC: BRA .handle_sfx1\n\n.song_input\n #_0080EE: CMP.w $0133\n #_0080F1: BEQ .handle_sfx1\n\n #_0080F3: STA.w APUIO0\n #_0080F6: STA.w $0133\n\n #_0080F9: CMP.b #$F2 ; SONG F2 - half volume\n #_0080FB: BCS .song_command\n\n #_0080FD: STA.w $0130\n\n.song_command\n #_008100: STZ.w $012C\n\n.handle_sfx1\n #_008103: LDA.w $012D\n #_008106: BNE .new_sfx1\n\n #_008108: LDA.w APUIO1\n #_00810B: CMP.w $0131\n #_00810E: BNE .handle_SFX23\n\n #_008110: STZ.w APUIO1\n\n #_008113: BRA .handle_SFX23\n\n.new_sfx1\n #_008115: STA.w $0131\n #_008118: STA.w APUIO1\n\n #_00811B: STZ.w $012D\n\n.handle_SFX23\n #_00811E: LDA.w $012E\n #_008121: STA.w APUIO2\n\n #_008124: LDA.w $012F\n #_008127: STA.w APUIO3\n\n #_00812A: STZ.w $012E\n #_00812D: STZ.w $012F\n\n #_008130: LDA.b #$80\n #_008132: STA.w INIDISP\n #_008135: STZ.w HDMAEN\n\n #_008138: LDA.b $12\n #_00813A: BNE .lag_frame\n\n #_00813C: INC.b $12\n\n #_00813E: JSR NMI_DoUpdates\n #_008141: JSR NMI_ReadJoypads\n\n.lag_frame\n #_008144: LDA.w $012A\n #_008147: BEQ NMI_NoIRQThread\n\n #_008149: JMP.w NMI_SwitchThread\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_NoIRQThread", + "code": "NMI_NoIRQThread:\n #_00814C: LDA.b $96\n #_00814E: STA.w W12SEL\n\n #_008151: LDA.b $97\n #_008153: STA.w W34SEL\n\n #_008156: LDA.b $98\n #_008158: STA.w WOBJSEL\n\n #_00815B: LDA.b $99\n #_00815D: STA.w CGWSEL\n\n #_008160: LDA.b $9A\n #_008162: STA.w CGADSUB\n\n #_008165: LDA.b $9C\n #_008167: STA.w COLDATA\n\n #_00816A: LDA.b $9D\n #_00816C: STA.w COLDATA\n\n #_00816F: LDA.b $9E\n #_008171: STA.w COLDATA\n\n #_008174: LDA.b $1C\n #_008176: STA.w TM\n\n #_008179: LDA.b $1D\n #_00817B: STA.w TS\n\n #_00817E: LDA.b $1E\n #_008180: STA.w TMW\n\n #_008183: LDA.b $1F\n #_008185: STA.w TSW\n\n #_008188: LDA.w $0120\n #_00818B: STA.w BG1HOFS\n\n #_00818E: LDA.w $0121\n #_008191: STA.w BG1HOFS\n\n #_008194: LDA.w $0124\n #_008197: STA.w BG1VOFS\n\n #_00819A: LDA.w $0125\n #_00819D: STA.w BG1VOFS\n\n #_0081A0: LDA.w $011E\n #_0081A3: STA.w BG2HOFS\n\n #_0081A6: LDA.w $011F\n #_0081A9: STA.w BG2HOFS\n\n #_0081AC: LDA.w $0122\n #_0081AF: STA.w BG2VOFS\n\n #_0081B2: LDA.w $0123\n #_0081B5: STA.w BG2VOFS\n\n #_0081B8: LDA.b $E4\n #_0081BA: STA.w BG3HOFS\n\n #_0081BD: LDA.b $E5\n #_0081BF: STA.w BG3HOFS\n\n #_0081C2: LDA.b $EA\n #_0081C4: STA.w BG3VOFS\n\n #_0081C7: LDA.b $EB\n #_0081C9: STA.w BG3VOFS\n\n #_0081CC: LDA.b $95\n #_0081CE: STA.w MOSAIC\n\n; ---------------------------------------------------------\n\n #_0081D1: LDA.b $94\n #_0081D3: STA.w BGMODE\n\n #_0081D6: AND.b #$07\n #_0081D8: CMP.b #$07\n #_0081DA: BNE .not_mode7\n\n #_0081DC: STZ.w M7B\n #_0081DF: STZ.w M7B\n #_0081E2: STZ.w M7C\n #_0081E5: STZ.w M7C\n\n #_0081E8: LDA.w $0638\n #_0081EB: STA.w M7X\n\n #_0081EE: LDA.w $0639\n #_0081F1: STA.w M7X\n\n #_0081F4: LDA.w $063A\n #_0081F7: STA.w M7Y\n\n #_0081FA: LDA.w $063B\n #_0081FD: STA.w M7Y\n\n; ---------------------------------------------------------\n\n.not_mode7\n #_008200: LDA.w $0128\n #_008203: BEQ .IRQ_inactive\n\n #_008205: LDA.w TIMEUP\n\n #_008208: LDA.b #$80\n #_00820A: STA.w VTIMEL\n #_00820D: STZ.w VTIMEH\n\n #_008210: STZ.w HTIMEL\n #_008213: STZ.w HTIMEH\n\n #_008216: LDA.b #$A1\n #_008218: STA.w NMITIMEN\n\n; ---------------------------------------------------------\n\n.IRQ_inactive\n #_00821B: LDA.b $13\n #_00821D: STA.w INIDISP\n\n #_008220: LDA.b $9B\n #_008222: STA.w HDMAEN\n\n #_008225: REP #$30\n\n #_008227: PLB\n #_008228: PLD\n\n #_008229: PLY\n #_00822A: PLX\n #_00822B: PLA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Interrupt_Unused", + "code": "Interrupt_Unused:\n #_00822C: RTI", + "file": "bank_00.asm" + }, + { + "name": "NMI_SwitchThread", + "code": "NMI_SwitchThread:\n #_00822D: JSR NMI_UpdateIRQGFX\n\n #_008230: LDA.b $FF\n #_008232: STA.w VTIMEL\n #_008235: STZ.w VTIMEH\n\n #_008238: LDA.b #$A1 ; enable NMI, IRQ, auto joypad\n #_00823A: STA.w NMITIMEN\n\n #_00823D: LDA.b $96\n #_00823F: STA.w W12SEL\n\n #_008242: LDA.b $97\n #_008244: STA.w W34SEL\n\n #_008247: LDA.b $98\n #_008249: STA.w WOBJSEL\n\n #_00824C: LDA.b $99\n #_00824E: STA.w CGWSEL\n\n #_008251: LDA.b $9A\n #_008253: STA.w CGADSUB\n\n #_008256: LDA.b $9C\n #_008258: STA.w COLDATA\n\n #_00825B: LDA.b $9D\n #_00825D: STA.w COLDATA\n\n #_008260: LDA.b $9E\n #_008262: STA.w COLDATA\n\n #_008265: LDA.b $1C\n #_008267: STA.w TM\n\n #_00826A: LDA.b $1D\n #_00826C: STA.w TS\n\n #_00826F: LDA.b $1E\n #_008271: STA.w TMW\n\n #_008274: LDA.b $1F\n #_008276: STA.w TSW\n\n; ---------------------------------------------------------\n\n #_008279: LDA.w $0120\n #_00827C: STA.w BG1HOFS\n\n #_00827F: LDA.w $0121\n #_008282: STA.w BG1HOFS\n\n #_008285: LDA.w $0124\n #_008288: STA.w BG1VOFS\n\n #_00828B: LDA.w $0125\n #_00828E: STA.w BG1VOFS\n\n #_008291: LDA.w $011E\n #_008294: STA.w BG2HOFS\n\n #_008297: LDA.w $011F\n #_00829A: STA.w BG2HOFS\n\n #_00829D: LDA.w $0122\n #_0082A0: STA.w BG2VOFS\n\n #_0082A3: LDA.w $0123\n #_0082A6: STA.w BG2VOFS\n\n #_0082A9: LDA.b $E4\n #_0082AB: STA.w BG3HOFS\n\n #_0082AE: LDA.b $E5\n #_0082B0: STA.w BG3HOFS\n\n #_0082B3: LDA.b $EA\n #_0082B5: STA.w BG3VOFS\n\n #_0082B8: LDA.b $EB\n #_0082BA: STA.w BG3VOFS\n\n #_0082BD: LDA.b $13\n #_0082BF: STA.w INIDISP\n\n #_0082C2: LDA.b $9B\n #_0082C4: STA.w HDMAEN\n\n; ---------------------------------------------------------\n\n #_0082C7: REP #$30\n\n #_0082C9: TSC\n #_0082CA: TAX\n\n #_0082CB: LDA.w $1F0A\n #_0082CE: TCS\n\n #_0082CF: STX.w $1F0A\n\n #_0082D2: PLB\n #_0082D3: PLD\n\n #_0082D4: PLY\n #_0082D5: PLX\n #_0082D6: PLA\n\n #_0082D7: RTI", + "file": "bank_00.asm" + }, + { + "name": "Interrupt_IRQ", + "code": "Interrupt_IRQ:\n #_0082D8: SEI\n #_0082D9: REP #$30\n\n #_0082DB: PHA\n #_0082DC: PHX\n #_0082DD: PHY\n\n #_0082DE: PHD\n #_0082DF: PHB\n\n #_0082E0: PHK\n #_0082E1: PLB\n\n #_0082E2: SEP #$30\n\n #_0082E4: LDA.w $012A\n #_0082E7: BNE .polyhedral\n\n #_0082E9: LDA.w TIMEUP\n #_0082EC: BPL .exit\n\n #_0082EE: LDA.w $0128\n #_0082F1: BEQ .exit\n\n.wait_for_hblank\n #_0082F3: BIT.w HVBJOY\n #_0082F6: BVC .wait_for_hblank\n\n #_0082F8: LDA.w $0630\n #_0082FB: STA.w BG3HOFS\n\n #_0082FE: LDA.w $0631\n #_008301: STA.w BG3HOFS\n\n #_008304: STZ.w BG3VOFS\n #_008307: STZ.w BG3VOFS\n\n #_00830A: LDA.w $0128\n #_00830D: BPL .exit\n\n #_00830F: STZ.w $0128\n\n #_008312: LDA.b #$81\n #_008314: STA.w NMITIMEN\n\n.exit\n #_008317: REP #$30\n\n #_008319: PLB\n #_00831A: PLD\n\n #_00831B: PLY\n #_00831C: PLX\n #_00831D: PLA\n\n #_00831E: RTI", + "file": "bank_00.asm" + }, + { + "name": "EraseTilemaps_triforce", + "code": "EraseTilemaps_triforce:\n #_008333: REP #$20\n\n #_008335: LDA.w #$00A9\n #_008338: STA.b $02\n\n #_00833A: LDA.w #$007F\n\n #_00833D: BRA EraseTilemaps\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "EraseTilemaps_dungeonmap", + "code": "EraseTilemaps_dungeonmap:\n #_00833F: REP #$20\n\n #_008341: LDA.w #$007F\n #_008344: STA.b $02\n\n #_008346: LDA.w #$0300\n\n #_008349: BRA EraseTilemaps\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "EraseTilemaps_normal", + "code": "EraseTilemaps_normal:\n #_00834B: REP #$20\n\n #_00834D: LDA.w #$007F\n #_008350: STA.b $02\n\n #_008352: LDA.w #$01EC\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "EraseTilemaps", + "code": "EraseTilemaps:\n #_008355: STA.b $00\n\n #_008357: STZ.w VMAIN\n #_00835A: STZ.w VMADDR\n\n #_00835D: LDA.w #$1808\n #_008360: STA.w DMA1MODE\n\n #_008363: STZ.w DMA1ADDRB\n\n #_008366: LDA.w #$0000\n #_008369: STA.w DMA1ADDRL\n\n #_00836C: LDA.w #$2000\n #_00836F: STA.w DMA1SIZE\n\n #_008372: LDY.b #$02\n #_008374: STY.w MDMAEN\n\n #_008377: LDX.b #$80\n #_008379: STX.w VMAIN\n\n #_00837C: STZ.w VMADDR\n\n #_00837F: STA.w DMA1SIZE\n\n #_008382: LDA.w #$1908\n #_008385: STA.w DMA1MODE\n\n #_008388: LDA.w #$0001\n #_00838B: STA.w DMA1ADDRL\n\n #_00838E: STY.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008391: LDA.b $02\n #_008393: STA.b $00\n\n #_008395: STZ.w VMAIN\n\n #_008398: LDA.w #$6000 ; VRAM $C000\n #_00839B: STA.w VMADDR\n\n #_00839E: LDA.w #$1808\n #_0083A1: STA.w DMA1MODE\n\n #_0083A4: LDA.w #$0000\n #_0083A7: STA.w DMA1ADDRL\n\n #_0083AA: LDA.w #$0800\n #_0083AD: STA.w DMA1SIZE\n\n #_0083B0: STY.w MDMAEN\n\n #_0083B3: STX.w VMAIN\n #_0083B6: STA.w DMA1SIZE\n\n #_0083B9: LDA.w #$6000 ; VRAM $C000\n #_0083BC: STA.w VMADDR\n\n #_0083BF: LDA.w #$1908\n #_0083C2: STA.w DMA1MODE\n\n #_0083C5: LDA.w #$0001\n #_0083C8: STA.w DMA1ADDRL\n\n #_0083CB: STY.w MDMAEN\n\n #_0083CE: SEP #$20\n\n #_0083D0: RTL", + "file": "bank_00.asm" + }, + { + "name": "NMI_ReadJoypads", + "code": "NMI_ReadJoypads:\n #_0083D1: STZ.w JOYPAD\n\n #_0083D4: LDA.w JOY1L\n #_0083D7: STA.b $00\n\n #_0083D9: LDA.w JOY1H\n #_0083DC: STA.b $01\n\n #_0083DE: LDA.b $00\n #_0083E0: STA.b $F2\n\n #_0083E2: TAY\n\n #_0083E3: EOR.b $FA\n #_0083E5: AND.b $F2\n #_0083E7: STA.b $F6\n\n #_0083E9: STY.b $FA\n\n #_0083EB: LDA.b $01\n #_0083ED: STA.b $F0\n\n #_0083EF: TAY\n\n #_0083F0: EOR.b $F8\n #_0083F2: AND.b $F0\n #_0083F4: STA.b $F4\n\n #_0083F6: STY.b $F8\n\n; =========================================================\n\n#Player2JoypadReturn:\n #_0083F8: RTS", + "file": "bank_00.asm" + }, + { + "name": "ClearOAMBuffer", + "code": "ClearOAMBuffer:\n #_00841E: LDX.b #$60\n\n.next\n #_008420: LDA.b #$F0\n #_008422: STA.w $0801,X\n #_008425: STA.w $0805,X\n #_008428: STA.w $0809,X\n #_00842B: STA.w $080D,X\n\n #_00842E: STA.w $0811,X\n #_008431: STA.w $0815,X\n #_008434: STA.w $0819,X\n #_008437: STA.w $081D,X\n\n #_00843A: STA.w $0881,X\n #_00843D: STA.w $0885,X\n #_008440: STA.w $0889,X\n #_008443: STA.w $088D,X\n\n #_008446: STA.w $0891,X\n #_008449: STA.w $0895,X\n #_00844C: STA.w $0899,X\n #_00844F: STA.w $089D,X\n\n #_008452: STA.w $0901,X\n #_008455: STA.w $0905,X\n #_008458: STA.w $0909,X\n #_00845B: STA.w $090D,X\n\n #_00845E: STA.w $0911,X\n #_008461: STA.w $0915,X\n #_008464: STA.w $0919,X\n #_008467: STA.w $091D,X\n\n #_00846A: STA.w $0981,X\n #_00846D: STA.w $0985,X\n #_008470: STA.w $0989,X\n #_008473: STA.w $098D,X\n\n #_008476: STA.w $0991,X\n #_008479: STA.w $0995,X\n #_00847C: STA.w $0999,X\n #_00847F: STA.w $099D,X\n\n #_008482: TXA\n #_008483: SEC\n #_008484: SBC.b #$20\n #_008486: TAX\n\n #_008487: BPL .next\n\n #_008489: RTS", + "file": "bank_00.asm" + }, + { + "name": "SaveFileOffsets", + "code": "SaveFileOffsets:\n #_00848A: dw $700000\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "SaveFileCopyOffsets", + "code": "SaveFileCopyOffsets:\n #_00848C: dw $700000, $700500\n #_008490: dw $700A00, $700F00\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DynamicOAM_PushBlockAddresses", + "code": "DynamicOAM_PushBlockAddresses:\n #_008494: dw $7EA480 ; 4/4\n #_008496: dw $7EA4C0 ; 3/4\n #_008498: dw $7EA500 ; 2/4\n #_00849A: dw $7EA540 ; 1/4\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "LinkOAM_SwordAddresses", + "code": "LinkOAM_SwordAddresses:\n #_00849C: dw $7E9000, $7E9020, $7E9060, $7E91E0 ; vertical, slash1, left-up, horizontal\n #_0084A4: dw $7E90A0, $7E90C0, $7E9100, $7E9140 ; up-left, slash2, slash whiff, slash3\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "LinkOAM_ShieldAddresses", + "code": "LinkOAM_ShieldAddresses:\n #_0084AC: dw $7E9300 ; down\n #_0084AE: dw $7E9340 ; up\n #_0084B0: dw $7E9380 ; side\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "DynamicOAM_LinkItemAddresses", + "code": "DynamicOAM_LinkItemAddresses:\n #_0084B2: dw $7E9480, $7E94C0, $7E94E0, $7E95C0 ; rod\n #_0084BA: dw $7E9500, $7E9520, $7E9540, $7E9480 ; rod\n #_0084C2: dw $7E9640, $7E9680, $7E96A0, $7E9780 ; hammer\n #_0084CA: dw $7E96C0, $7E96E0, $7E9700, $7E9480 ; hammer\n\n #_0084D2: dw $7E9800, $7E9840, $7E98A0, $7E9480 ; bow\n #_0084DA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0084E2: dw $7E9AC0, $7E9B00, $7E9480, $7E9480 ; hookshot tip\n #_0084EA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_0084F2: dw $7E9BC0, $7E9C00, $7E9C40, $7E9C80 ; net\n #_0084FA: dw $7E9CC0, $7E9D00, $7E9D40, $7E9480 ; net\n #_008502: dw $7E9F40, $7E9F80, $7E9FC0, $7E9FE0 ; cane\n #_00850A: dw $7EA000, $7E9480, $7E9480, $7E9480 ; cane\n\n #_008512: dw $7EA100, $7E9480, $7E9480, $7E9480 ; book\n #_00851A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008522: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00852A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008532: dw $7E98C0, $7E9900, $7E99C0, $7E99E0 ; shovel, ZZzzzz\n #_00853A: dw $7E9A00, $7E9A20, $7E9A40, $7E9A60 ; Zzzzz, \u266a\n #_008542: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00854A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008552: dw $7E9A80, $7E9480, $7E9480, $7E9480 ; null\n #_00855A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008562: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00856A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008572: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00857A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_008582: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00858A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n #_008592: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_00859A: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0085A2: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n #_0085AA: dw $7E9480, $7E9480, $7E9480, $7E9480 ; null\n\n; ---------------------------------------------------------\n\n.offsets\n #_0085B2: dw $00E0, $00E0, $0060, $0080\n #_0085BA: dw $01C0, $00E0, $0040, $0000\n #_0085C2: dw $0080, $0000, $0040, $0000\n #_0085CA: dw $0000, $0000, $0000, $0000\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RupeeTile_anim_step", + "code": "RupeeTile_anim_step:\n #_0085D2: dw $000E\n #_0085D4: dw $0004\n #_0085D6: dw $0006\n #_0085D8: dw $0010\n #_0085DA: dw $0006\n #_0085DC: dw $0008\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "RupeeTile_anim_stepOffset", + "code": "RupeeTile_anim_stepOffset:\n #_0085DE: dw $0000, $0020, $0040, $0000\n #_0085E6: dw $0020, $0040, $0000, $0040\n #_0085EE: dw $0080, $0000, $0040, $0080\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "StarTileOffset", + "code": "StarTileOffset:\n #_0085F6: dw $7EB340\n #_0085F8: dw $7EB400\n #_0085FA: dw $7EB4C0\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_PrepareSprites", + "code": "NMI_PrepareSprites:\n #_0085FC: LDY.b #$1C\n\n.next_block\n #_0085FE: TYA\n #_0085FF: ASL A\n #_008600: ASL A\n #_008601: TAX\n\n #_008602: LDA.w $0A23,X\n #_008605: ASL A\n #_008606: ASL A\n\n #_008607: ORA.w $0A22,X\n #_00860A: ASL A\n #_00860B: ASL A\n\n #_00860C: ORA.w $0A21,X\n #_00860F: ASL A\n #_008610: ASL A\n\n #_008611: ORA.w $0A20,X\n #_008614: STA.w $0A00,Y\n\n #_008617: LDA.w $0A27,X\n #_00861A: ASL A\n #_00861B: ASL A\n\n #_00861C: ORA.w $0A26,X\n #_00861F: ASL A\n #_008620: ASL A\n\n #_008621: ORA.w $0A25,X\n #_008624: ASL A\n #_008625: ASL A\n\n #_008626: ORA.w $0A24,X\n #_008629: STA.w $0A01,Y\n\n #_00862C: LDA.w $0A2B,X\n #_00862F: ASL A\n #_008630: ASL A\n\n #_008631: ORA.w $0A2A,X\n #_008634: ASL A\n #_008635: ASL A\n\n #_008636: ORA.w $0A29,X\n #_008639: ASL A\n #_00863A: ASL A\n\n #_00863B: ORA.w $0A28,X\n #_00863E: STA.w $0A02,Y\n\n #_008641: LDA.w $0A2F,X\n #_008644: ASL A\n #_008645: ASL A\n\n #_008646: ORA.w $0A2E,X\n #_008649: ASL A\n #_00864A: ASL A\n\n #_00864B: ORA.w $0A2D,X\n #_00864E: ASL A\n #_00864F: ASL A\n\n #_008650: ORA.w $0A2C,X\n #_008653: STA.w $0A03,Y\n\n #_008656: DEY\n #_008657: DEY\n #_008658: DEY\n #_008659: DEY\n #_00865A: BPL .next_block\n\n; ---------------------------------------------------------\n\n #_00865C: REP #$31\n\n #_00865E: LDX.w $0100\n\n #_008661: LDA.w LinkOAM_HeadAddresses,X\n #_008664: STA.w $0ACC\n\n #_008667: ADC.w #$0200\n #_00866A: STA.w $0ACE\n\n #_00866D: LDA.w LinkOAM_BodyAddresses,X\n #_008670: STA.w $0AD0\n\n #_008673: CLC\n #_008674: ADC.w #$0200\n #_008677: STA.w $0AD2\n\n #_00867A: LDX.w $0102\n\n #_00867D: LDA.w LinkOAM_AuxAddresses,X\n #_008680: STA.w $0AD4\n\n #_008683: LDX.w $0104\n\n #_008686: LDA.w LinkOAM_AuxAddresses,X\n #_008689: STA.w $0AD6\n\n #_00868C: SEP #$10\n\n #_00868E: LDX.w $0107\n\n #_008691: LDA.w LinkOAM_SwordAddresses,X\n #_008694: STA.w $0AC0\n\n #_008697: CLC\n #_008698: ADC.w #$0180\n #_00869B: STA.w $0AC2\n\n #_00869E: LDX.w $0108\n\n #_0086A1: LDA.w LinkOAM_ShieldAddresses,X\n #_0086A4: STA.w $0AC4\n\n #_0086A7: CLC\n #_0086A8: ADC.w #$00C0\n #_0086AB: STA.w $0AC6\n\n #_0086AE: LDA.w $0109\n #_0086B1: AND.w #$00F8\n #_0086B4: LSR A\n #_0086B5: LSR A\n #_0086B6: TAY\n\n #_0086B7: LDA.w $0109\n #_0086BA: ASL A\n #_0086BB: TAX\n\n #_0086BC: LDA.w DynamicOAM_LinkItemAddresses,X\n #_0086BF: STA.w $0AC8\n\n #_0086C2: CLC\n #_0086C3: TYX\n #_0086C4: ADC.w DynamicOAM_LinkItemAddresses_offsets,X\n #_0086C7: STA.w $0ACA\n\n #_0086CA: LDA.w $02C3\n #_0086CD: AND.w #$0003\n #_0086D0: ASL A\n #_0086D1: TAX\n\n #_0086D2: LDA.w DynamicOAM_PushBlockAddresses,X\n #_0086D5: STA.w $0AD8\n\n #_0086D8: CLC\n #_0086D9: ADC.w #$0100\n #_0086DC: STA.w $0ADA\n\n #_0086DF: LDA.l $7EC00D\n #_0086E3: DEC A\n #_0086E4: STA.l $7EC00D\n #_0086E8: BNE .dont_animate_bg\n\n; ---------------------------------------------------------\n\n #_0086EA: LDA.w #$0009\n\n #_0086ED: LDX.b $8C\n #_0086EF: CPX.b #$B5 ; OW B5\n #_0086F1: BEQ .use_longer_timer\n\n #_0086F3: CPX.b #$BC ; OW BC\n #_0086F5: BNE .use_shorter_timer\n\n.use_longer_timer\n #_0086F7: LDA.w #$0017\n\n.use_shorter_timer\n #_0086FA: STA.l $7EC00D\n\n #_0086FE: LDA.l $7EC00F\n #_008702: CLC\n #_008703: ADC.w #$0400\n #_008706: CMP.w #$0C00\n #_008709: BNE .dont_reset_rupees_tiles\n\n #_00870B: LDA.w #$0000\n\n.dont_reset_rupees_tiles\n #_00870E: STA.l $7EC00F\n\n #_008712: CLC\n #_008713: ADC.w #$7EA680\n #_008716: STA.w $0ADC\n\n.dont_animate_bg\n #_008719: LDA.l $7EC013\n #_00871D: DEC A\n #_00871E: STA.l $7EC013\n #_008722: BNE .dont_animate_rupee\n\n #_008724: LDA.l $7EC015\n #_008728: TAX\n\n #_008729: INX\n #_00872A: INX\n\n #_00872B: CPX.b #$0C\n #_00872D: BNE .rupee_step_fine\n\n #_00872F: LDX.b #$00\n\n.rupee_step_fine\n #_008731: TXA\n #_008732: STA.l $7EC015\n\n #_008736: LDA.w RupeeTile_anim_step,X\n #_008739: STA.l $7EC013\n\n #_00873D: LDA.w #$7EB280\n #_008740: CLC\n #_008741: ADC.w RupeeTile_anim_stepOffset,X\n #_008744: STA.w $0AE0\n\n #_008747: CLC\n #_008748: ADC.w #$0060\n #_00874B: STA.w $0AE2\n\n.dont_animate_rupee\n #_00874E: LDA.w $0AE8\n #_008751: ASL A\n #_008752: ADC.w #$7EB940\n #_008755: STA.w $0AEC\n\n #_008758: ADC.w #$0200\n #_00875B: STA.w $0AEE\n\n #_00875E: LDA.w $0AEA\n #_008761: ASL A\n #_008762: ADC.w #$7EB940\n #_008765: STA.w $0AF0\n\n #_008768: ADC.w #$0200\n #_00876B: STA.w $0AF2\n\n #_00876E: LDA.w $0AF4\n #_008771: ASL A\n #_008772: ADC.w #$7EB540\n #_008775: STA.w $0AF6\n\n #_008778: ADC.w #$0200\n #_00877B: STA.w $0AF8\n\n #_00877E: SEP #$20\n\n #_008780: RTS", + "file": "bank_00.asm" + }, + { + "name": "JumpTableLocal", + "code": "JumpTableLocal:\n #_008781: STY.b $03\n\n #_008783: PLY\n #_008784: STY.b $00\n\n #_008786: REP #$30\n\n #_008788: AND.w #$00FF\n #_00878B: ASL A\n #_00878C: TAY\n\n #_00878D: PLA\n #_00878E: STA.b $01\n\n #_008790: INY\n\n #_008791: LDA.b [$00],Y\n #_008793: STA.b $00\n\n #_008795: SEP #$30\n\n #_008797: LDY.b $03\n\n #_008799: JML.w [$0000]\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "JumpTableLong", + "code": "JumpTableLong:\n #_00879C: STY.b $05\n\n #_00879E: PLY\n #_00879F: STY.b $02\n\n #_0087A1: REP #$30\n\n #_0087A3: AND.w #$00FF\n #_0087A6: STA.b $03\n\n #_0087A8: ASL A\n #_0087A9: ADC.b $03\n #_0087AB: TAY\n\n #_0087AC: PLA\n #_0087AD: STA.b $03\n\n #_0087AF: INY\n\n #_0087B0: LDA.b [$02],Y\n #_0087B2: STA.b $00\n\n #_0087B4: INY\n\n #_0087B5: LDA.b [$02],Y\n #_0087B7: STA.b $01\n\n #_0087B9: SEP #$30\n\n #_0087BB: LDY.b $05\n\n #_0087BD: JML.w [$0000]\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "InitializeMemoryAndSRAM", + "code": "InitializeMemoryAndSRAM:\n #_0087C0: REP #$30\n\n #_0087C2: LDY.w $01FE\n\n #_0087C5: LDX.w #$03FE\n #_0087C8: LDA.w #$0000\n\n.clear_wram\n #_0087CB: STA.w $0000,X\n #_0087CE: STA.w $0400,X\n #_0087D1: STA.w $0800,X\n #_0087D4: STA.w $0C00,X\n\n #_0087D7: STA.w $1000,X\n #_0087DA: STA.w $1400,X\n #_0087DD: STA.w $1800,X\n #_0087E0: STA.w $1C00,X\n\n #_0087E3: DEX\n #_0087E4: DEX\n #_0087E5: BNE .clear_wram\n\n; ---------------------------------------------------------\n\n #_0087E7: STA.l $7EC500 ; writes RGB: #000000\n #_0087EB: STA.l $701FFE ; not selecting any save file\n\n #_0087EF: LDA.l $7003E5\n #_0087F3: CMP.w #$55AA\n #_0087F6: BEQ .sram1_valid\n\n #_0087F8: LDA.w #$0000\n #_0087FB: STA.l $7003E5\n\n.sram1_valid\n #_0087FF: LDA.l $7008E5\n #_008803: CMP.w #$55AA\n #_008806: BEQ .sram2_valid\n\n #_008808: LDA.w #$0000\n #_00880B: STA.l $7008E5\n\n.sram2_valid\n #_00880F: LDA.l $700DE5\n #_008813: CMP.w #$55AA\n #_008816: BEQ .sram3_valid\n\n #_008818: LDA.w #$0000\n #_00881B: STA.l $700DE5\n\n.sram3_valid\n #_00881F: STY.w $01FE\n\n #_008822: STZ.w TMW\n\n #_008825: SEP #$30\n\n #_008827: LDA.b #$80\n #_008829: STA.b $13\n\n #_00882B: INC.b $15\n\n #_00882D: RTS", + "file": "bank_00.asm" + }, + { + "name": "Overworld_GetTileTypeAtLocation", + "code": "Overworld_GetTileTypeAtLocation:\n #_00882E: REP #$30\n\n #_008830: LDA.b $00\n #_008832: SEC\n #_008833: SBC.w $0708\n\n #_008836: AND.w $070A\n\n #_008839: ASL A\n #_00883A: ASL A\n #_00883B: ASL A\n\n #_00883C: STA.b $06\n\n #_00883E: LDA.b $02\n #_008840: SEC\n #_008841: SBC.w $070C\n\n #_008844: AND.w $070E\n #_008847: ORA.b $06\n #_008849: TAX\n\n #_00884A: LDA.l $7E2000,X\n #_00884E: ASL A\n #_00884F: ASL A\n #_008850: STA.b $06\n\n #_008852: LDA.b $00\n #_008854: AND.w #$0008\n #_008857: LSR A\n #_008858: LSR A\n #_008859: TSB.b $06\n\n #_00885B: LDA.b $02\n #_00885D: AND.w #$0001\n #_008860: ORA.b $06\n #_008862: ASL A\n #_008863: TAX\n\n #_008864: LDA.l Map16Definitions,X\n #_008868: STA.b $06\n\n #_00886A: AND.w #$01FF\n #_00886D: TAX\n\n #_00886E: LDA.l OverworldTileTypes,X\n\n; ---------------------------------------------------------\n\n #_008872: SEP #$30\n\n #_008874: CMP.b #$10\n #_008876: BCC .exit\n\n #_008878: CMP.b #$1C\n #_00887A: BCS .exit\n\n #_00887C: STA.b $06\n\n #_00887E: LDA.b $07\n #_008880: AND.b #$40\n\n #_008882: ASL A\n #_008883: ROL A\n #_008884: ROL A\n #_008885: ORA.b $06\n\n.exit\n #_008887: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadSongBank", + "code": "LoadSongBank:\n #_008888: PHP\n\n #_008889: REP #$30\n\n #_00888B: LDY.w #$0000\n #_00888E: LDA.w #$BBAA\n\n.apu_not_ready\n #_008891: CMP.w APUIO0\n #_008894: BNE .apu_not_ready\n\n #_008896: SEP #$20\n\n #_008898: LDA.b #$CC\n #_00889A: BRA .setup_transfer\n\n; ---------------------------------------------------------\n\n.next_transfer\n #_00889C: LDA.b [$00],Y\n\n #_00889E: INY\n\n #_00889F: XBA\n #_0088A0: LDA.b #$00\n #_0088A2: BRA .write_zero\n\n.next_byte\n #_0088A4: XBA\n #_0088A5: LDA.b [$00],Y\n\n #_0088A7: INY\n #_0088A8: CPY.w #$8000\n #_0088AB: BNE .no_bank_wrap\n\n #_0088AD: LDY.w #$0000\n\n #_0088B0: INC.b $02\n\n.no_bank_wrap\n #_0088B2: XBA\n\n.wait_for_zero\n #_0088B3: CMP.w APUIO0\n #_0088B6: BNE .wait_for_zero\n\n #_0088B8: INC A\n\n.write_zero\n #_0088B9: REP #$20\n\n #_0088BB: STA.w APUIO0\n\n #_0088BE: SEP #$20\n\n #_0088C0: DEX\n #_0088C1: BNE .next_byte\n\n.wait_for_sync\n #_0088C3: CMP.w APUIO0\n #_0088C6: BNE .wait_for_sync\n\n.make_A_nonzero\n #_0088C8: ADC.b #$03\n #_0088CA: BEQ .make_A_nonzero\n\n; ---------------------------------------------------------\n\n.setup_transfer\n #_0088CC: PHA\n\n #_0088CD: REP #$20\n\n #_0088CF: LDA.b [$00],Y\n #_0088D1: INY\n #_0088D2: INY\n #_0088D3: TAX\n\n #_0088D4: LDA.b [$00],Y\n #_0088D6: INY\n #_0088D7: INY\n #_0088D8: STA.w APUIO2\n\n #_0088DB: SEP #$20\n\n #_0088DD: CPX.w #$0001\n\n #_0088E0: LDA.b #$00\n #_0088E2: ROL A\n #_0088E3: STA.w APUIO1\n\n #_0088E6: ADC.b #$7F\n #_0088E8: PLA\n #_0088E9: STA.w APUIO0\n\n.wait_for_sync_2\n #_0088EC: CMP.w APUIO0\n #_0088EF: BNE .wait_for_sync_2\n\n #_0088F1: BVS .next_transfer\n\n; ---------------------------------------------------------\n\n #_0088F3: STZ.w APUIO0\n #_0088F6: STZ.w APUIO1\n #_0088F9: STZ.w APUIO2\n #_0088FC: STZ.w APUIO3\n\n #_0088FF: PLP\n\n #_008900: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadIntroSongBank", + "code": "LoadIntroSongBank:\n #_008901: LDA.b #SamplePointers>>0\n #_008903: STA.b $00\n\n #_008905: LDA.b #SamplePointers>>8\n #_008907: STA.b $01\n\n #_008909: LDA.b #SamplePointers>>16\n #_00890B: STA.b $02\n\n #_00890D: SEI\n\n #_00890E: JSR LoadSongBank\n\n #_008911: CLI\n\n #_008912: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadOverworldSongs", + "code": "LoadOverworldSongs:\n #_008913: LDA.b #SongBank_Overworld_Main>>0\n #_008915: STA.b $00\n\n #_008917: LDA.b #SongBank_Overworld_Main>>8\n #_008919: STA.b $01\n\n #_00891B: LDA.b #SongBank_Overworld_Main>>16\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "PrepareAPUTransfer", + "code": "PrepareAPUTransfer:\n #_00891D: STA.b $02\n\n #_00891F: SEI\n\n #_008920: JSR LoadSongBank\n\n #_008923: CLI\n\n #_008924: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadUnderworldSongs", + "code": "LoadUnderworldSongs:\n #_008925: LDA.b #SongBank_Underworld_Main>>0\n #_008927: STA.b $00\n\n #_008929: LDA.b #SongBank_Underworld_Main>>8\n #_00892B: STA.b $01\n\n #_00892D: LDA.b #SongBank_Underworld_Main>>16\n #_00892F: BRA PrepareAPUTransfer\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LoadCreditsSongs", + "code": "LoadCreditsSongs:\n #_008931: LDA.b #SongBank_Credits_Main>>0\n #_008933: STA.b $00\n\n #_008935: LDA.b #SongBank_Credits_Main>>8\n #_008937: STA.b $01\n\n #_008939: LDA.b #SongBank_Credits_Main>>16\n #_00893B: BRA PrepareAPUTransfer\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "EnableForceBlank", + "code": "EnableForceBlank:\n #_00893D: LDA.b #$80\n #_00893F: STA.w INIDISP\n #_008942: STA.b $13\n\n #_008944: STZ.w HDMAEN\n #_008947: STZ.b $9B\n\n #_008949: RTL", + "file": "bank_00.asm" + }, + { + "name": "SaveGameFile", + "code": "SaveGameFile:\n #_00894A: PHB\n\n #_00894B: LDA.b #$70\n #_00894D: PHA\n #_00894E: PLB\n\n #_00894F: REP #$30\n\n #_008951: LDX.w $701FFE\n\n #_008954: LDA.l SaveFileOffsets,X\n #_008958: TAY\n\n #_008959: PHY\n\n #_00895A: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.write_save\n #_00895D: LDA.l $7EF000,X\n #_008961: STA.w $700000,Y\n #_008964: STA.w $700F00,Y\n\n #_008967: LDA.l $7EF100,X\n #_00896B: STA.w $700100,Y\n #_00896E: STA.w $701000,Y\n\n #_008971: LDA.l $7EF200,X\n #_008975: STA.w $700200,Y\n #_008978: STA.w $701100,Y\n\n #_00897B: LDA.l $7EF300,X\n #_00897F: STA.w $700300,Y\n #_008982: STA.w $701200,Y\n\n #_008985: LDA.l $7EF400,X\n #_008989: STA.w $700400,Y\n #_00898C: STA.w $701300,Y\n\n #_00898F: INY\n #_008990: INY\n\n #_008991: INX\n #_008992: INX\n\n #_008993: CPX.w #$0100\n #_008996: BNE .write_save\n\n; ---------------------------------------------------------\n\n #_008998: LDX.w #$0000\n #_00899B: TXA\n\n.calc_checksum\n #_00899C: CLC\n #_00899D: ADC.l $7EF000,X\n\n #_0089A1: INX\n #_0089A2: INX\n #_0089A3: CPX.w #$04FE\n #_0089A6: BNE .calc_checksum\n\n #_0089A8: STA.b $00\n\n #_0089AA: PLY\n\n #_0089AB: LDA.w #$5A5A\n #_0089AE: SEC\n #_0089AF: SBC.b $00\n #_0089B1: STA.l $7EF4FE\n\n #_0089B5: TYX\n\n #_0089B6: STA.l $7004FE,X\n #_0089BA: STA.l $7013FE,X\n\n #_0089BE: SEP #$30\n\n #_0089C0: PLB\n\n #_0089C1: RTL", + "file": "bank_00.asm" + }, + { + "name": "NULL_0089C2", + "code": "NULL_0089C2:\n #_0089C2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089CA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089D2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0089DA: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_DoUpdates", + "code": "NMI_DoUpdates:\n #_0089E0: REP #$10\n\n #_0089E2: LDA.b #$80\n #_0089E4: STA.w VMAIN\n\n #_0089E7: LDA.w $0710\n #_0089EA: BEQ .do_sprite_updates\n\n #_0089EC: JMP.w .skip_sprite_updates\n\n; ---------------------------------------------------------\n\n.do_sprite_updates\n #_0089EF: LDX.w #$1801\n #_0089F2: STX.w DMA0MODE\n #_0089F5: STX.w DMA1MODE\n #_0089F8: STX.w DMA2MODE\n #_0089FB: STX.w DMA3MODE\n #_0089FE: STX.w DMA4MODE\n\n #_008A01: LDA.b #LinkGraphics>>16\n #_008A03: STA.w DMA0ADDRB\n #_008A06: STA.w DMA1ADDRB\n #_008A09: STA.w DMA2ADDRB\n\n #_008A0C: LDY.w #$4100 ; VRAM $8200\n #_008A0F: STY.w VMADDR\n\n #_008A12: LDY.w $0ACE\n #_008A15: STY.w DMA0ADDRL\n\n #_008A18: LDX.w #$0040\n #_008A1B: STX.w DMA0SIZE\n\n #_008A1E: LDY.w $0AD2\n #_008A21: STY.w DMA1ADDRL\n #_008A24: STX.w DMA1SIZE\n\n #_008A27: LDY.w $0AD6\n #_008A2A: STY.w DMA2ADDRL\n\n #_008A2D: LDY.w #$0020\n #_008A30: STY.w DMA2SIZE\n\n #_008A33: LDA.b #$07\n #_008A35: STA.w MDMAEN\n\n #_008A38: STY.w DMA2SIZE\n\n #_008A3B: LDY.w #$4000 ; VRAM $8000\n #_008A3E: STY.w VMADDR\n\n #_008A41: LDY.w $0ACC\n #_008A44: STY.w DMA0ADDRL\n\n #_008A47: STX.w DMA0SIZE\n\n #_008A4A: LDY.w $0AD0\n\n #_008A4D: STY.w DMA1ADDRL\n #_008A50: STX.w DMA1SIZE\n\n #_008A53: LDY.w $0AD4\n #_008A56: STY.w DMA2ADDRL\n\n #_008A59: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008A5C: LDA.b #$7E\n #_008A5E: STA.w DMA0ADDRB\n #_008A61: STA.w DMA1ADDRB\n #_008A64: STA.w DMA2ADDRB\n #_008A67: STA.w DMA3ADDRB\n #_008A6A: STA.w DMA4ADDRB\n\n #_008A6D: LDY.w $0AC0\n #_008A70: STY.w DMA0ADDRL\n\n #_008A73: STX.w DMA0SIZE\n\n #_008A76: LDY.w $0AC4\n #_008A79: STY.w DMA1ADDRL\n\n #_008A7C: STX.w DMA1SIZE\n\n #_008A7F: LDY.w $0AC8\n #_008A82: STY.w DMA2ADDRL\n\n #_008A85: STX.w DMA2SIZE\n\n #_008A88: LDY.w $0AE0\n #_008A8B: STY.w DMA3ADDRL\n\n #_008A8E: LDY.w #$0020\n #_008A91: STY.w DMA3SIZE\n\n #_008A94: LDY.w $0AD8\n #_008A97: STY.w DMA4ADDRL\n\n #_008A9A: STX.w DMA4SIZE\n\n #_008A9D: LDA.b #$1F\n #_008A9F: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008AA2: LDY.w #$4150 ; VRAM $82A0\n #_008AA5: STY.w VMADDR\n\n #_008AA8: LDY.w $0AC2\n #_008AAB: STY.w DMA0ADDRL\n\n #_008AAE: STX.w DMA0SIZE\n\n #_008AB1: LDY.w $0AC6\n #_008AB4: STY.w DMA1ADDRL\n\n #_008AB7: STX.w DMA1SIZE\n\n #_008ABA: LDY.w $0ACA\n #_008ABD: STY.w DMA2ADDRL\n\n #_008AC0: STX.w DMA2SIZE\n\n #_008AC3: LDY.w $0AE2\n #_008AC6: STY.w DMA3ADDRL\n\n #_008AC9: LDY.w #$0020\n #_008ACC: STY.w DMA3SIZE\n\n #_008ACF: LDY.w $0ADA\n #_008AD2: STY.w DMA4ADDRL\n\n #_008AD5: STX.w DMA4SIZE\n\n #_008AD8: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008ADB: LDY.w #$4200 ; VRAM $8400\n #_008ADE: STY.w VMADDR\n\n #_008AE1: LDY.w $0AEC\n #_008AE4: STY.w DMA0ADDRL\n\n #_008AE7: STX.w DMA0SIZE\n\n #_008AEA: LDY.w $0AF0\n\n #_008AED: STY.w DMA1ADDRL\n #_008AF0: STX.w DMA1SIZE\n\n #_008AF3: LDY.w #$7EBD40\n #_008AF6: STY.w DMA2ADDRL\n\n #_008AF9: STX.w DMA2SIZE\n\n #_008AFC: LDA.b #$07\n #_008AFE: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B01: LDY.w #$4300 ; VRAM $8600\n #_008B04: STY.w VMADDR\n\n #_008B07: LDY.w $0AEE\n #_008B0A: STY.w DMA0ADDRL\n\n #_008B0D: STX.w DMA0SIZE\n\n #_008B10: LDY.w $0AF2\n #_008B13: STY.w DMA1ADDRL\n\n #_008B16: STX.w DMA1SIZE\n\n #_008B19: LDY.w #$7EBD80\n #_008B1C: STY.w DMA2ADDRL\n\n #_008B1F: STX.w DMA2SIZE\n\n #_008B22: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B25: LDA.w $0AF4\n #_008B28: BEQ .no_update_swagduck\n\n #_008B2A: LDY.w #$40E0 ; VRAM $81C0\n #_008B2D: STY.w VMADDR\n\n #_008B30: LDY.w $0AF6\n #_008B33: STY.w DMA0ADDRL\n\n #_008B36: STX.w DMA0SIZE\n\n #_008B39: LDA.b #$01\n #_008B3B: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008B3E: LDY.w #$41E0 ; VRAM $83C0\n #_008B41: STY.w VMADDR\n\n #_008B44: LDY.w $0AF8\n #_008B47: STY.w DMA0ADDRL\n\n #_008B4A: STX.w DMA0SIZE\n\n #_008B4D: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.no_update_swagduck\n #_008B50: LDX.w $0ADC\n #_008B53: STX.w DMA0ADDRL\n\n #_008B56: LDX.w $0134\n #_008B59: STX.w VMADDR\n\n #_008B5C: LDX.w #$0400\n #_008B5F: STX.w DMA0SIZE\n\n #_008B62: LDA.b #$01\n #_008B64: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_sprite_updates\n #_008B67: LDA.b $16\n #_008B69: BEQ .skip_BG3\n\n #_008B6B: LDX.w $0219\n #_008B6E: STX.w VMADDR\n\n #_008B71: LDX.w #$7EC700>>0\n #_008B74: STX.w DMA0ADDRL\n\n #_008B77: LDA.b #$7EC700>>16\n #_008B79: STA.w DMA0ADDRB\n\n #_008B7C: LDX.w #$014A\n #_008B7F: STX.w DMA0SIZE\n\n #_008B82: LDA.b #$01\n #_008B84: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_BG3\n #_008B87: LDA.b $15\n #_008B89: BEQ .skip_CGRAM\n\n #_008B8B: STZ.w CGADD\n\n #_008B8E: LDY.w #$2200\n #_008B91: STY.w DMA1MODE\n\n #_008B94: LDY.w #$7EC500>>0\n #_008B97: STY.w DMA1ADDRL\n\n #_008B9A: LDA.b #$7EC500>>16\n #_008B9C: STA.w DMA1ADDRB\n\n #_008B9F: LDY.w #$0200\n #_008BA2: STY.w DMA1SIZE\n\n #_008BA5: LDA.b #$02\n #_008BA7: STA.w MDMAEN\n\n; ---------------------------------------------------------\n\n.skip_CGRAM\n #_008BAA: REP #$20\n #_008BAC: SEP #$10\n\n #_008BAE: STZ.b $15\n\n #_008BB0: STZ.w OAMADDR\n\n #_008BB3: LDA.w #$0400\n #_008BB6: STA.w DMA0MODE\n\n #_008BB9: LDA.w #$0800\n #_008BBC: STA.w DMA0ADDRL\n #_008BBF: STZ.w DMA0ADDRB\n\n #_008BC2: LDA.w #$0220\n #_008BC5: STA.w DMA0SIZE\n\n #_008BC8: LDY.b #$01\n #_008BCA: STY.w MDMAEN\n\n; ---------------------------------------------------------\n\n #_008BCD: SEP #$30\n\n #_008BCF: LDY.b $14\n #_008BD1: BEQ .no_stripes\n\n #_008BD3: LDA.w Stripes14_SourceAddress_low-1,Y\n #_008BD6: STA.b $00\n\n #_008BD8: LDA.w Stripes14_SourceAddress_high-1,Y\n #_008BDB: STA.b $01\n\n #_008BDD: LDA.w Stripes14_SourceAddress_bank-1,Y\n #_008BE0: STA.b $02\n\n #_008BE2: JSR HandleStripes14\n\n #_008BE5: LDA.b $14\n #_008BE7: CMP.b #$01\n #_008BE9: BNE .leave_stripes_alone\n\n #_008BEB: STZ.w $1000\n #_008BEE: STZ.w $1001\n\n.leave_stripes_alone\n #_008BF1: STZ.b $14\n\n; ---------------------------------------------------------\n\n.no_stripes\n #_008BF3: LDA.b $19\n #_008BF5: BEQ .no_incremental_upload\n\n #_008BF7: STA.w VMADDH\n\n #_008BFA: REP #$10\n\n #_008BFC: LDX.w #$0080\n #_008BFF: STX.w VMAIN\n\n #_008C02: LDX.w #$1801\n #_008C05: STX.w DMA0MODE\n\n #_008C08: LDX.w $0118\n #_008C0B: STX.w DMA0ADDRL\n\n #_008C0E: LDA.b #$7F\n #_008C10: STA.w DMA0ADDRB\n\n #_008C13: LDX.w #$0200\n #_008C16: STX.w DMA0SIZE\n\n #_008C19: LDA.b #$01\n #_008C1B: STA.w MDMAEN\n\n #_008C1E: STZ.b $19\n\n #_008C20: SEP #$10\n\n; ---------------------------------------------------------\n\n.no_incremental_upload\n #_008C22: LDX.b $18\n #_008C24: BEQ .no_arb_dma\n\n #_008C26: STZ.w DMA1ADDRB\n\n #_008C29: REP #$20\n\n #_008C2B: LDA.w #$1801\n #_008C2E: STA.w DMA1MODE\n\n #_008C31: REP #$10\n\n #_008C33: LDX.w #$0000\n\n #_008C36: LDA.w $1100,X\n\n.next_chunk\n #_008C39: STA.w VMADDR\n\n #_008C3C: TXA\n #_008C3D: CLC\n #_008C3E: ADC.w #$1104\n #_008C41: STA.w DMA1ADDRL\n\n #_008C44: LDA.w $1103,X\n #_008C47: AND.w #$00FF\n #_008C4A: STA.w DMA1SIZE\n\n #_008C4D: CLC\n #_008C4E: ADC.w #$0004\n #_008C51: STA.b $00\n\n #_008C53: SEP #$20\n\n #_008C55: LDA.w $1102,X\n #_008C58: STA.w VMAIN\n\n #_008C5B: LDA.b #$02\n #_008C5D: STA.w MDMAEN\n\n #_008C60: REP #$21\n\n #_008C62: TXA\n #_008C63: ADC.b $00\n #_008C65: TAX\n\n #_008C66: LDA.w $1100,X\n #_008C69: CMP.w #$FFFF\n #_008C6C: BNE .next_chunk\n\n #_008C6E: SEP #$30\n\n #_008C70: STZ.b $18\n #_008C72: STZ.w $0710\n\n; ---------------------------------------------------------\n\n.no_arb_dma\n #_008C75: LDA.b $17\n #_008C77: ASL A\n #_008C78: TAX\n\n #_008C79: STZ.b $17\n\n #_008C7B: JMP.w (.vectors,X)\n\n; ---------------------------------------------------------\n\n.vectors\n #_008C7E: dw NMI_NoTileUpdates ; 0x00\n #_008C80: dw NMI_UploadTilemap ; 0x01\n #_008C82: dw NMI_UploadBG3Text ; 0x02\n #_008C84: dw NMI_UpdateOWScroll ; 0x03\n #_008C86: dw NMI_UpdateSubscreenOverlay ; 0x04\n #_008C88: dw NMI_UpdateBG1Wall ; 0x05\n #_008C8A: dw NMI_TilemapNothing ; 0x06\n #_008C8C: dw NMI_UpdateLoadLightWorldMap ; 0x07\n #_008C8E: dw NMI_UpdateBG2Left ; 0x08\n #_008C90: dw NMI_UpdateBGChar3and4 ; 0x09\n #_008C92: dw NMI_UpdateBGChar5and6 ; 0x0A\n #_008C94: dw NMI_UpdateBGCharHalf ; 0x0B\n #_008C96: dw NMI_UploadSubscreenOverlayLatter ; 0x0C\n #_008C98: dw NMI_UploadSubscreenOverlayFormer ; 0x0D\n #_008C9A: dw NMI_UpdateBGChar0 ; 0x0E\n #_008C9C: dw NMI_UpdateBGChar1 ; 0x0F\n #_008C9E: dw NMI_UpdateBGChar2 ; 0x10\n #_008CA0: dw NMI_UpdateBGChar3 ; 0x11\n #_008CA2: dw NMI_UpdateObjChar0 ; 0x12\n #_008CA4: dw NMI_UpdateObjChar2 ; 0x13\n #_008CA6: dw NMI_UpdateObjChar3 ; 0x14\n #_008CA8: dw NMI_UploadDarkWorldMap ; 0x15\n #_008CAA: dw NMI_UploadGameOverText ; 0x16\n #_008CAC: dw NMI_UpdatePegTiles ; 0x17\n #_008CAE: dw NMI_UpdateStarTiles ; 0x18\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadTilemap", + "code": "NMI_UploadTilemap:\n #_008CB0: LDX.w $0116\n\n #_008CB3: LDA.w TilemapUpload_HighBytes,X\n #_008CB6: STA.w VMADDH\n\n #_008CB9: STZ.w DMA0ADDRB\n\n #_008CBC: REP #$20\n\n #_008CBE: LDA.w #$0080\n #_008CC1: STA.w VMAIN\n\n #_008CC4: LDA.w #$1801\n #_008CC7: STA.w DMA0MODE\n\n #_008CCA: LDA.w #$7E1000\n #_008CCD: STA.w DMA0ADDRL\n\n #_008CD0: LDA.w #$0800\n #_008CD3: STA.w DMA0SIZE\n\n #_008CD6: LDY.b #$01\n #_008CD8: STY.w MDMAEN\n\n #_008CDB: STZ.w $1000\n\n #_008CDE: SEP #$20\n\n #_008CE0: STZ.w $0710\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_NoTileUpdates", + "code": "NMI_NoTileUpdates:\n #_008CE3: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadBG3Text", + "code": "NMI_UploadBG3Text:\n #_008CE4: REP #$10\n\n #_008CE6: LDA.b #$80\n #_008CE8: STA.w VMAIN\n\n #_008CEB: LDX.w #$1801\n #_008CEE: STX.w DMA0MODE\n\n #_008CF1: LDY.w #$7C00 ; VRAM $F800\n #_008CF4: STY.w VMADDR\n\n #_008CF7: LDY.w #$7F0000\n #_008CFA: STY.w DMA0ADDRL\n\n #_008CFD: LDA.b #$7F\n #_008CFF: STA.w DMA0ADDRB\n\n #_008D02: LDX.w #$07E0\n #_008D05: STX.w DMA0SIZE\n\n #_008D08: LDA.b #$01\n #_008D0A: STA.w MDMAEN\n\n #_008D0D: SEP #$10\n\n #_008D0F: STZ.w $0710\n\n #_008D12: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateOWScroll", + "code": "NMI_UpdateOWScroll:\n #_008D13: REP #$10\n\n #_008D15: LDX.w #$1801\n #_008D18: STX.w DMA0MODE\n\n #_008D1B: STZ.w DMA0ADDRB\n\n #_008D1E: LDA.w $1101\n #_008D21: AND.b #$80\n #_008D23: ASL A\n #_008D24: ROL A\n #_008D25: ORA.b #$80\n #_008D27: STA.w VMAIN\n\n #_008D2A: REP #$20\n\n #_008D2C: LDA.w $1100\n #_008D2F: AND.w #$3FFF\n #_008D32: TAX\n\n #_008D33: INC A\n #_008D34: INC A\n #_008D35: STA.b $02\n\n #_008D37: LDY.w #$0000\n\n.next_transfer\n #_008D3A: REP #$21\n\n #_008D3C: LDA.w $1102,Y\n #_008D3F: STA.w VMADDR\n\n #_008D42: TYA\n #_008D43: ADC.w #$1104\n #_008D46: STA.w DMA0ADDRL\n\n #_008D49: TYA\n #_008D4A: ADC.b $02\n #_008D4C: TAY\n\n #_008D4D: STX.w DMA0SIZE\n\n #_008D50: SEP #$20\n\n #_008D52: LDA.b #$01\n #_008D54: STA.w MDMAEN\n\n #_008D57: LDA.w $1103,Y\n #_008D5A: BPL .next_transfer\n\n #_008D5C: SEP #$30\n\n #_008D5E: STZ.w $0710\n\n #_008D61: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateSubscreenOverlay", + "code": "NMI_UpdateSubscreenOverlay:\n #_008D62: LDA.b #$7F\n #_008D64: STA.w DMA0ADDRB\n\n #_008D67: LDA.b #$80\n #_008D69: STA.w VMAIN\n\n #_008D6C: REP #$31\n\n #_008D6E: LDA.w #$7F2000\n #_008D71: STA.w DMA0ADDRL\n\n #_008D74: LDX.w #$0000 ; start at $7F4000\n #_008D77: LDA.w #$0080 ; 16 chunks\n #_008D7A: BRA NMI_HandleArbitraryTilemap\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadSubscreenOverlayFormer", + "code": "NMI_UploadSubscreenOverlayFormer:\n #_008D7C: LDA.b #$7F\n #_008D7E: STA.w DMA0ADDRB\n\n #_008D81: LDA.b #$80\n #_008D83: STA.w VMAIN\n\n #_008D86: REP #$31\n\n #_008D88: LDA.w #$7F2000\n #_008D8B: STA.w DMA0ADDRL\n\n #_008D8E: LDX.w #$0000 ; start at $7F4000\n #_008D91: LDA.w #$0040 ; 8 chunks\n\n #_008D94: BRA NMI_HandleArbitraryTilemap\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadSubscreenOverlayLatter", + "code": "NMI_UploadSubscreenOverlayLatter:\n #_008D96: LDA.b #$7F\n #_008D98: STA.w DMA0ADDRB\n\n #_008D9B: LDA.b #$80\n #_008D9D: STA.w VMAIN\n\n #_008DA0: REP #$31\n\n #_008DA2: LDA.w #$7F3000\n #_008DA5: STA.w DMA0ADDRL\n\n #_008DA8: LDX.w #$0040 ; start at $7F4040\n #_008DAB: LDA.w #$0080 ; 16 chunks\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_HandleArbitraryTilemap", + "code": "NMI_HandleArbitraryTilemap:\n #_008DAE: STA.b $02\n\n #_008DB0: LDA.w #$1801\n #_008DB3: STA.w DMA0MODE\n\n #_008DB6: LDA.w #$0001\n #_008DB9: STA.b $00\n\n #_008DBB: LDY.w #$0080\n\n\n.next_chunk\n #_008DBE: LDA.l $7F4000,X\n #_008DC2: STA.w VMADDR\n\n #_008DC5: STY.w DMA0SIZE\n\n #_008DC8: LDA.b $00\n #_008DCA: STA.w MDMAEN\n\n #_008DCD: LDA.l $7F4002,X\n #_008DD1: STA.w VMADDR\n\n #_008DD4: STY.w DMA0SIZE\n\n #_008DD7: LDA.b $00\n #_008DD9: STA.w MDMAEN\n\n #_008DDC: LDA.l $7F4004,X\n #_008DE0: STA.w VMADDR\n\n #_008DE3: STY.w DMA0SIZE\n\n #_008DE6: LDA.b $00\n #_008DE8: STA.w MDMAEN\n\n #_008DEB: LDA.l $7F4006,X\n #_008DEF: STA.w VMADDR\n\n #_008DF2: STY.w DMA0SIZE\n\n #_008DF5: LDA.b $00\n #_008DF7: STA.w MDMAEN\n\n #_008DFA: TXA\n #_008DFB: ADC.w #$0008\n #_008DFE: TAX\n\n #_008DFF: CMP.b $02\n #_008E01: BNE .next_chunk\n\n #_008E03: SEP #$30\n\n #_008E05: STZ.w $0710\n\n #_008E08: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBG1Wall", + "code": "NMI_UpdateBG1Wall:\n #_008E09: REP #$20\n\n #_008E0B: LDA.w #$1801\n #_008E0E: STA.w DMA0MODE\n\n #_008E11: LDA.w $0116\n #_008E14: STA.w VMADDR\n\n #_008E17: LDX.b #$81\n #_008E19: STX.w VMAIN\n\n #_008E1C: LDX.b #$7EC880>>16\n #_008E1E: STX.w DMA0ADDRB\n\n #_008E21: LDA.w #$7EC880>>0\n #_008E24: STA.w DMA0ADDRL\n\n #_008E27: LDA.w #$0040\n #_008E2A: STA.w DMA0SIZE\n\n #_008E2D: LDY.b #$01\n #_008E2F: STY.w MDMAEN\n\n #_008E32: STA.w DMA0SIZE\n\n #_008E35: LDA.w $0116\n #_008E38: CLC\n #_008E39: ADC.w #$0800\n #_008E3C: STA.w VMADDR\n\n #_008E3F: LDA.w #$7EC8C0\n #_008E42: STA.w DMA0ADDRL\n\n #_008E45: STY.w MDMAEN\n\n #_008E48: SEP #$20\n\n #_008E4A: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_TilemapNothing", + "code": "NMI_TilemapNothing:\n #_008E4B: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateLoadLightWorldMap", + "code": "NMI_UpdateLoadLightWorldMap:\n #_008E54: STZ.w VMAIN\n\n #_008E57: LDA.b #WorldMap_LightWorldTilemap>>16\n #_008E59: STA.w DMA0ADDRB\n\n #_008E5C: REP #$20\n\n #_008E5E: LDA.w #$1800\n #_008E61: STA.w DMA0MODE\n\n #_008E64: STZ.b $04\n #_008E66: STZ.b $02\n\n; ---------------------------------------------------------\n\n #_008E68: LDY.b #$01\n #_008E6A: LDX.b #$00\n\n.next_quadrant\n #_008E6C: LDA.w #$0020\n #_008E6F: STA.b $06\n\n #_008E71: LDA.w .vram_offset,X\n #_008E74: STA.b $00\n\n.next_row\n #_008E76: LDA.b $00\n #_008E78: STA.w VMADDR\n\n #_008E7B: CLC\n #_008E7C: ADC.w #$0080\n #_008E7F: STA.b $00\n\n #_008E81: LDA.b $02\n #_008E83: CLC\n #_008E84: ADC.w #WorldMap_LightWorldTilemap\n #_008E87: STA.w DMA0ADDRL\n\n #_008E8A: LDA.w #$0020\n #_008E8D: STA.w DMA0SIZE\n\n #_008E90: STY.w MDMAEN\n\n #_008E93: CLC\n #_008E94: ADC.b $02\n #_008E96: STA.b $02\n\n #_008E98: DEC.b $06\n #_008E9A: BNE .next_row\n\n #_008E9C: INC.b $04\n #_008E9E: INC.b $04\n\n #_008EA0: LDX.b $04\n #_008EA2: CPX.b #$08\n #_008EA4: BNE .next_quadrant\n\n #_008EA6: SEP #$20\n\n #_008EA8: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBG2Left", + "code": "NMI_UpdateBG2Left:\n #_008EA9: LDA.b #$80\n\n #_008EAB: STA.w VMAIN\n\n #_008EAE: REP #$10\n\n #_008EB0: LDY.w #$0000 ; VRAM $0000\n #_008EB3: STY.w VMADDR\n\n #_008EB6: LDY.w #$1801\n #_008EB9: STY.w DMA1MODE\n\n #_008EBC: LDY.w #$7F0000\n #_008EBF: STY.w DMA1ADDRL\n\n #_008EC2: LDA.b #$7F\n #_008EC4: STA.w DMA1ADDRB\n\n #_008EC7: LDY.w #$0800\n #_008ECA: STY.w DMA1SIZE\n\n #_008ECD: LDA.b #$02\n #_008ECF: STA.w MDMAEN\n\n #_008ED2: STY.w DMA1SIZE\n\n #_008ED5: LDY.w #$0800\n #_008ED8: STY.w VMADDR\n\n #_008EDB: LDY.w #$7F0800\n #_008EDE: STY.w DMA1ADDRL\n\n #_008EE1: STA.w MDMAEN\n\n #_008EE4: SEP #$10\n\n #_008EE6: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar3and4", + "code": "NMI_UpdateBGChar3and4:\n #_008EE7: REP #$20\n\n #_008EE9: LDA.w #$2C00 ; VRAM $5800\n #_008EEC: STA.w VMADDR\n\n #_008EEF: LDY.b #$80\n #_008EF1: STY.w VMAIN\n\n #_008EF4: LDA.w #$1801\n #_008EF7: STA.w DMA0MODE\n\n #_008EFA: LDA.w #$7F0000\n #_008EFD: STA.w DMA0ADDRL\n\n #_008F00: LDY.b #$7F\n #_008F02: STY.w DMA0ADDRB\n\n #_008F05: LDA.w #$1000\n #_008F08: STA.w DMA0SIZE\n\n #_008F0B: LDY.b #$01\n #_008F0D: STY.w MDMAEN\n\n #_008F10: SEP #$20\n\n #_008F12: STZ.w $0710\n\n #_008F15: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar5and6", + "code": "NMI_UpdateBGChar5and6:\n #_008F16: REP #$20\n\n #_008F18: LDA.w #$3400 ; VRAM $6800\n #_008F1B: STA.w VMADDR\n\n #_008F1E: LDY.b #$80\n #_008F20: STY.w VMAIN\n\n #_008F23: LDA.w #$1801\n #_008F26: STA.w DMA0MODE\n\n #_008F29: LDA.w #$7F1000\n #_008F2C: STA.w DMA0ADDRL\n\n #_008F2F: LDY.b #$7F\n #_008F31: STY.w DMA0ADDRB\n\n #_008F34: LDA.w #$1000\n #_008F37: STA.w DMA0SIZE\n\n #_008F3A: LDY.b #$01\n #_008F3C: STY.w MDMAEN\n\n #_008F3F: SEP #$20\n\n #_008F41: STZ.w $0710\n\n #_008F44: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGCharHalf", + "code": "NMI_UpdateBGCharHalf:\n #_008F45: LDA.w $0116\n #_008F48: STA.w VMADDH\n\n #_008F4B: REP #$10\n\n #_008F4D: LDX.w #$0080\n #_008F50: STX.w VMAIN\n\n #_008F53: LDX.w #$1801\n #_008F56: STX.w DMA0MODE\n\n #_008F59: LDX.w #$7F1000\n #_008F5C: STX.w DMA0ADDRL\n\n #_008F5F: LDA.b #$7F\n #_008F61: STA.w DMA0ADDRB\n\n #_008F64: LDX.w #$0400\n #_008F67: STX.w DMA0SIZE\n\n #_008F6A: LDA.b #$01\n #_008F6C: STA.w MDMAEN\n\n #_008F6F: SEP #$10\n\n #_008F71: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar0", + "code": "NMI_UpdateBGChar0:\n #_008F72: REP #$20\n\n #_008F74: LDA.w #$2000 ; VRAM $4000\n #_008F77: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar1", + "code": "NMI_UpdateBGChar1:\n #_008F79: REP #$20\n\n #_008F7B: LDA.w #$2800 ; VRAM $5000\n #_008F7E: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar2", + "code": "NMI_UpdateBGChar2:\n #_008F80: REP #$20\n\n #_008F82: LDA.w #$3000 ; VRAM $6000\n #_008F85: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateBGChar3", + "code": "NMI_UpdateBGChar3:\n #_008F87: REP #$20\n\n #_008F89: LDA.w #$3800 ; VRAM $7000\n #_008F8C: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateObjChar0", + "code": "NMI_UpdateObjChar0:\n #_008F8E: REP #$20\n\n #_008F90: LDA.w #$4400 ; VRAM $8800\n #_008F93: STA.w VMADDR\n\n #_008F96: LDA.w #$7F0000\n #_008F99: STA.w DMA0ADDRL\n\n #_008F9C: LDY.b #$80\n #_008F9E: STY.w VMAIN\n\n #_008FA1: LDA.w #$1801\n #_008FA4: STA.w DMA0MODE\n\n #_008FA7: LDY.b #$7F\n #_008FA9: STY.w DMA0ADDRB\n\n #_008FAC: LDA.w #$0800\n #_008FAF: STA.w DMA0SIZE\n\n #_008FB2: LDY.b #$01\n #_008FB4: STY.w MDMAEN\n\n #_008FB7: SEP #$20\n\n #_008FB9: STZ.w $0710\n\n #_008FBC: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateObjChar2", + "code": "NMI_UpdateObjChar2:\n #_008FBD: REP #$20\n\n #_008FBF: LDA.w #$5000 ; VRAM $A000\n\n #_008FC2: BRA NMI_RunTilemapUpdateDMA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateObjChar3", + "code": "NMI_UpdateObjChar3:\n #_008FC4: REP #$20\n\n #_008FC6: LDA.w #$5800 ; VRAM $B000\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "NMI_RunTilemapUpdateDMA", + "code": "NMI_RunTilemapUpdateDMA:\n #_008FC9: STA.w VMADDR\n\n #_008FCC: LDA.w #$7F0000\n #_008FCF: STA.w DMA0ADDRL\n\n #_008FD2: LDY.b #$80\n #_008FD4: STY.w VMAIN\n\n #_008FD7: LDA.w #$1801\n #_008FDA: STA.w DMA0MODE\n\n #_008FDD: LDY.b #$7F\n #_008FDF: STY.w DMA0ADDRB\n\n #_008FE2: LDA.w #$1000\n #_008FE5: STA.w DMA0SIZE\n\n #_008FE8: LDY.b #$01\n #_008FEA: STY.w MDMAEN\n\n #_008FED: SEP #$20\n\n #_008FEF: STZ.w $0710\n\n #_008FF2: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadDarkWorldMap", + "code": "NMI_UploadDarkWorldMap:\n #_008FF3: STZ.w VMAIN\n\n #_008FF6: STZ.w DMA0ADDRB\n\n #_008FF9: REP #$20\n\n #_008FFB: LDA.w #$1800\n #_008FFE: STA.w DMA0MODE\n\n #_009001: STZ.b $02\n\n #_009003: LDA.w #$0020\n #_009006: STA.b $06\n\n #_009008: LDA.w #$0810 ; VRAM $1020\n #_00900B: STA.b $00\n\n #_00900D: LDY.b #$01\n\n; ---------------------------------------------------------\n\n.next_row\n #_00900F: LDA.b $00\n #_009011: STA.w VMADDR\n\n #_009014: CLC\n #_009015: ADC.w #$0080 ; VRAM +$0100\n #_009018: STA.b $00\n\n #_00901A: LDA.b $02\n #_00901C: CLC\n #_00901D: ADC.w #$1000\n #_009020: STA.w DMA0ADDRL\n\n #_009023: LDA.w #$0020\n #_009026: STA.w DMA0SIZE\n\n #_009029: STY.w MDMAEN\n\n #_00902C: CLC\n #_00902D: ADC.b $02\n #_00902F: STA.b $02\n\n #_009031: DEC.b $06\n #_009033: BNE .next_row\n\n #_009035: SEP #$20\n\n #_009037: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadGameOverText", + "code": "NMI_UploadGameOverText:\n #_009038: REP #$20\n\n #_00903A: LDA.w #$7800 ; VRAM $F000\n #_00903D: STA.w VMADDR\n\n #_009040: LDA.w #$7E2000\n #_009043: STA.w DMA0ADDRL\n\n #_009046: LDY.b #$80\n #_009048: STY.w VMAIN\n\n #_00904B: LDA.w #$1801\n #_00904E: STA.w DMA0MODE\n\n #_009051: LDY.b #$7E\n #_009053: STY.w DMA0ADDRB\n\n #_009056: LDA.w #$0800\n #_009059: STA.w DMA0SIZE\n\n #_00905C: LDY.b #$01\n #_00905E: STY.w MDMAEN\n\n #_009061: LDA.w #$7D00 ; VRAM $FA00\n #_009064: STA.w VMADDR\n\n #_009067: LDA.w #$7E3400\n #_00906A: STA.w DMA0ADDRL\n\n #_00906D: LDY.b #$80\n #_00906F: STY.w VMAIN\n\n #_009072: LDA.w #$1801\n #_009075: STA.w DMA0MODE\n\n #_009078: LDY.b #$7E\n #_00907A: STY.w DMA0ADDRB\n\n #_00907D: LDA.w #$0600\n #_009080: STA.w DMA0SIZE\n\n #_009083: LDY.b #$01\n #_009085: STY.w MDMAEN\n\n #_009088: SEP #$20\n\n #_00908A: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdatePegTiles", + "code": "NMI_UpdatePegTiles:\n #_00908B: REP #$10\n\n #_00908D: LDX.w #$3D00 ; VRAM $7A00\n #_009090: STX.w VMADDR\n\n #_009093: LDA.b #$80\n #_009095: STA.w VMAIN\n\n #_009098: LDX.w #$1801\n #_00909B: STX.w DMA0MODE\n\n #_00909E: LDX.w #$7F0000\n #_0090A1: STX.w DMA0ADDRL\n\n #_0090A4: LDA.b #$7F\n #_0090A6: STA.w DMA0ADDRB\n\n #_0090A9: LDX.w #$0100\n #_0090AC: STX.w DMA0SIZE\n\n #_0090AF: LDA.b #$01\n #_0090B1: STA.w MDMAEN\n\n #_0090B4: SEP #$10\n\n #_0090B6: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateStarTiles", + "code": "NMI_UpdateStarTiles:\n #_0090B7: REP #$10\n\n #_0090B9: LDX.w #$3ED0 ; VRAM $7DA0\n #_0090BC: STX.w VMADDR\n\n #_0090BF: LDA.b #$80\n #_0090C1: STA.w VMAIN\n\n #_0090C4: LDX.w #$1801\n #_0090C7: STX.w DMA0MODE\n\n #_0090CA: LDX.w #$7F0000\n #_0090CD: STX.w DMA0ADDRL\n\n #_0090D0: LDA.b #$7F\n #_0090D2: STA.w DMA0ADDRB\n\n #_0090D5: LDX.w #$0040\n #_0090D8: STX.w DMA0SIZE\n\n #_0090DB: LDA.b #$01\n #_0090DD: STA.w MDMAEN\n\n #_0090E0: SEP #$10\n\n #_0090E2: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UploadTilemap_long", + "code": "NMI_UploadTilemap_long:\n #_0090E3: JSR NMI_UploadTilemap\n\n #_0090E6: RTL", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateOWScroll_long", + "code": "NMI_UpdateOWScroll_long:\n #_0090E7: JSR NMI_UpdateOWScroll\n\n #_0090EA: RTL", + "file": "bank_00.asm" + }, + { + "name": "UNREACHABLE_0090EB", + "code": "UNREACHABLE_0090EB:\n #_0090EB: STA.b $14\n\n #_0090ED: TAY\n\n #_0090EE: LDA.w Stripes14_SourceAddress_low-1,Y\n #_0090F1: STA.b $00\n\n #_0090F3: LDA.w Stripes14_SourceAddress_high-1,Y\n #_0090F6: STA.b $01\n\n #_0090F8: LDA.w Stripes14_SourceAddress_bank-1,Y\n #_0090FB: STA.b $02\n\n #_0090FD: JSR HandleStripes14\n\n #_009100: LDA.b $14\n #_009102: CMP.b #$01\n #_009104: BNE .dont_clear\n\n #_009106: STZ.w $1000\n #_009109: STZ.w $1001\n\n.dont_clear\n #_00910C: STZ.b $14\n\n #_00910E: RTL", + "file": "bank_00.asm" + }, + { + "name": "UnderworldTilemapQuadrantOffset", + "code": "UnderworldTilemapQuadrantOffset:\n #_00910F: dw $0000, $1000, $0000, $0040\n #_009117: dw $0040, $1040, $1000, $1040\n #_00911F: dw $1000, $0000, $0040, $0000\n #_009127: dw $1040, $0040, $1040, $1000\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "UnderworldTilemapQuadrantVRAMIndex", + "code": "UnderworldTilemapQuadrantVRAMIndex:\n #_00912F: db $01, $05, $09, $0D\n #_009133: db $02, $06, $0A, $0E\n #_009137: db $03, $07, $0B, $0F\n #_00913B: db $04, $08, $0C, $10\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "Underworld_PrepareNextRoomQuadrantUpload", + "code": "Underworld_PrepareNextRoomQuadrantUpload:\n #_00913F: REP #$31\n\n #_009141: LDA.w $0418\n #_009144: AND.w #$000F\n #_009147: ADC.w $045C\n #_00914A: PHA\n\n #_00914B: ASL A\n #_00914C: TAY\n\n #_00914D: LDX.w UnderworldTilemapQuadrantOffset,Y\n\n; ---------------------------------------------------------\n\n #_009150: LDY.w #$0000\n\n.next\n #_009153: LDA.l $7E2000,X\n #_009157: STA.w $1000,Y\n\n #_00915A: LDA.l $7E2002,X\n #_00915E: STA.w $1002,Y\n\n #_009161: LDA.l $7E2080,X\n #_009165: STA.w $1040,Y\n\n #_009168: LDA.l $7E2082,X\n #_00916C: STA.w $1042,Y\n\n #_00916F: LDA.l $7E2100,X\n #_009173: STA.w $1080,Y\n\n #_009176: LDA.l $7E2102,X\n #_00917A: STA.w $1082,Y\n\n #_00917D: LDA.l $7E2180,X\n #_009181: STA.w $10C0,Y\n\n #_009184: LDA.l $7E2182,X\n #_009188: STA.w $10C2,Y\n\n #_00918B: INX\n #_00918C: INX\n #_00918D: INX\n #_00918E: INX\n\n #_00918F: INY\n #_009190: INY\n #_009191: INY\n #_009192: INY\n\n #_009193: TYA\n #_009194: AND.w #$003F\n #_009197: BNE .next\n\n; ---------------------------------------------------------\n\n #_009199: TYA\n #_00919A: CLC\n #_00919B: ADC.w #$00C0\n #_00919E: TAY\n\n #_00919F: TXA\n #_0091A0: CLC\n #_0091A1: ADC.w #$01C0\n #_0091A4: TAX\n\n #_0091A5: CPY.w #$0800\n #_0091A8: BNE .next\n\n #_0091AA: PLX\n\n #_0091AB: SEP #$30\n\n #_0091AD: LDA.w $045C\n #_0091B0: CLC\n #_0091B1: ADC.b #$04\n #_0091B3: STA.w $045C\n\n #_0091B6: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_0091B9: STA.w $0116\n\n #_0091BC: LDA.b #$01\n #_0091BE: STA.b $17\n #_0091C0: STA.w $0710\n\n #_0091C3: RTL", + "file": "bank_00.asm" + }, + { + "name": "WaterFlood_BuildOneQuadrantForVRAM", + "code": "WaterFlood_BuildOneQuadrantForVRAM:\n #_0091C4: LDA.b $AE\n #_0091C6: CMP.b #$19\n #_0091C8: BNE TilemapPrep_NotWaterOnTag\n\n #_0091CA: LDA.w $0405\n #_0091CD: AND.l DungeonMask+1\n #_0091D1: BEQ WaterFlood_BuildOneQuadrantForVRAM_not_triggered\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "TilemapPrep_NotWaterOnTag", + "code": "TilemapPrep_NotWaterOnTag:\n #_0091D3: REP #$31\n\n #_0091D5: LDA.w $0418\n #_0091D8: AND.w #$000F\n #_0091DB: ADC.w $045C\n #_0091DE: PHA\n\n #_0091DF: ASL A\n #_0091E0: TAY\n\n #_0091E1: LDX.w UnderworldTilemapQuadrantOffset,Y\n\n; ---------------------------------------------------------\n\n #_0091E4: LDY.w #$0000\n\n.next\n #_0091E7: LDA.l $7E4000,X\n #_0091EB: STA.w $1000,Y\n\n #_0091EE: LDA.l $7E4002,X\n #_0091F2: STA.w $1002,Y\n\n #_0091F5: LDA.l $7E4080,X\n #_0091F9: STA.w $1040,Y\n\n #_0091FC: LDA.l $7E4082,X\n #_009200: STA.w $1042,Y\n\n #_009203: LDA.l $7E4100,X\n #_009207: STA.w $1080,Y\n\n #_00920A: LDA.l $7E4102,X\n #_00920E: STA.w $1082,Y\n\n #_009211: LDA.l $7E4180,X\n #_009215: STA.w $10C0,Y\n\n #_009218: LDA.l $7E4182,X\n #_00921C: STA.w $10C2,Y\n\n #_00921F: INX\n #_009220: INX\n #_009221: INX\n #_009222: INX\n\n #_009223: INY\n #_009224: INY\n #_009225: INY\n #_009226: INY\n\n #_009227: TYA\n #_009228: AND.w #$003F\n #_00922B: BNE .next\n\n #_00922D: TYA\n #_00922E: CLC\n #_00922F: ADC.w #$00C0\n #_009232: TAY\n\n #_009233: TXA\n #_009234: CLC\n #_009235: ADC.w #$01C0\n #_009238: TAX\n\n #_009239: CPY.w #$0800\n #_00923C: BNE .next\n\n; ---------------------------------------------------------\n\n #_00923E: PLX\n\n #_00923F: SEP #$30\n\n #_009241: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_009244: CLC\n #_009245: ADC.b #$10\n #_009247: STA.w $0116\n\n #_00924A: LDA.b #$01\n #_00924C: STA.b $17\n #_00924E: STA.w $0710\n\n #_009251: RTL", + "file": "bank_00.asm" + }, + { + "name": "WaterFlood_BuildOneQuadrantForVRAM_not_triggered", + "code": "WaterFlood_BuildOneQuadrantForVRAM_not_triggered:\n #_009252: REP #$31\n\n #_009254: LDX.w #$00F0\n\n #_009257: LDY.w #$0000\n\n.next\n #_00925A: LDA.w RoomDrawObjectData,X\n #_00925D: STA.w $1000,Y\n #_009260: STA.w $1002,Y\n #_009263: STA.w $1040,Y\n #_009266: STA.w $1042,Y\n #_009269: STA.w $1080,Y\n #_00926C: STA.w $1082,Y\n #_00926F: STA.w $10C0,Y\n #_009272: STA.w $10C2,Y\n\n #_009275: INY\n #_009276: INY\n #_009277: INY\n #_009278: INY\n\n #_009279: TYA\n #_00927A: AND.w #$003F\n #_00927D: BNE .next\n\n #_00927F: TYA\n #_009280: CLC\n #_009281: ADC.w #$00C0\n #_009284: TAY\n\n #_009285: CPY.w #$0800\n #_009288: BNE .next\n\n; ---------------------------------------------------------\n\n #_00928A: LDA.w $0418\n #_00928D: AND.w #$000F\n #_009290: CLC\n #_009291: ADC.w $045C\n #_009294: TAX\n\n #_009295: SEP #$30\n\n #_009297: LDA.w UnderworldTilemapQuadrantVRAMIndex,X\n #_00929A: CLC\n #_00929B: ADC.b #$10\n #_00929D: STA.w $0116\n\n #_0092A0: RTL", + "file": "bank_00.asm" + }, + { + "name": "HandleStripes14", + "code": "HandleStripes14:\n #_0092A1: REP #$10\n\n #_0092A3: STA.w DMA1ADDRB\n\n #_0092A6: STZ.b $06\n\n #_0092A8: LDY.w #$0000\n\n #_0092AB: LDA.b [$00],Y\n #_0092AD: BPL .next_stripe\n\n #_0092AF: SEP #$30\n\n #_0092B1: RTS", + "file": "bank_00.asm" + }, + { + "name": "NMI_UpdateIRQGFX", + "code": "NMI_UpdateIRQGFX:\n #_009347: LDA.w $1F0C\n #_00934A: BEQ .exit\n\n #_00934C: LDA.b #$80\n #_00934E: STA.w VMAIN\n\n #_009351: REP #$20\n\n #_009353: LDA.w #$5800 ; VRAM $B000\n #_009356: STA.w VMADDR\n\n #_009359: LDA.w #$1801\n #_00935C: STA.w DMA0MODE\n\n #_00935F: LDA.w #$7EE800>>0\n #_009362: STA.w DMA0ADDRL\n\n #_009365: LDX.b #$7EE800>>16\n #_009367: STX.w DMA0ADDRB\n\n #_00936A: LDA.w #$0800\n #_00936D: STA.w DMA0SIZE\n\n #_009370: SEP #$20\n\n #_009372: LDA.b #$01\n #_009374: STA.w MDMAEN\n\n #_009377: STZ.w $1F0C\n\n.exit\n #_00937A: RTS", + "file": "bank_00.asm" + }, + { + "name": "Stripes14_SourceAddress", + "code": "Stripes14_SourceAddress:\n\n.low\n #_00937B: db $001002>>0\n #_00937C: db $001000>>0\n #_00937D: db IntroLogoTilemap>>0\n #_00937E: db $00021B>>0\n #_00937F: db NamePlayerTilemap>>0\n #_009380: db FileSelectTilemap>>0\n #_009381: db FileSelectCopyFileTilemap>>0\n #_009382: db FileSelectKILLFileTilemap>>0\n #_009383: db DungeonMap_BG3Tilemap>>0\n\n.high\n #_009384: db $001002>>8\n #_009385: db $001000>>8\n #_009386: db IntroLogoTilemap>>8\n #_009387: db $00021B>>8\n #_009388: db NamePlayerTilemap>>8\n #_009389: db FileSelectTilemap>>8\n #_00938A: db FileSelectCopyFileTilemap>>8\n #_00938B: db FileSelectKILLFileTilemap>>8\n #_00938C: db DungeonMap_BG3Tilemap>>8\n\n.bank\n #_00938D: db $001002>>16\n #_00938E: db $001000>>16\n #_00938F: db IntroLogoTilemap>>16\n #_009390: db $00021B>>16\n #_009391: db NamePlayerTilemap>>16\n #_009392: db FileSelectTilemap>>16\n #_009393: db FileSelectCopyFileTilemap>>16\n #_009394: db FileSelectKILLFileTilemap>>16\n #_009395: db DungeonMap_BG3Tilemap>>16\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LinkOAM_HeadAddresses", + "code": "LinkOAM_HeadAddresses:\n #_009396: dw LinkGraphics+$0080 ; 0x000 - $108080\n #_009398: dw LinkGraphics+$0080 ; 0x001 - $108080\n #_00939A: dw LinkGraphics+$0080 ; 0x002 - $108080\n #_00939C: dw LinkGraphics+$0080 ; 0x003 - $108080\n #_00939E: dw LinkGraphics+$0080 ; 0x004 - $108080\n #_0093A0: dw LinkGraphics+$0040 ; 0x005 - $108040\n #_0093A2: dw LinkGraphics+$0040 ; 0x006 - $108040\n #_0093A4: dw LinkGraphics+$0040 ; 0x007 - $108040\n #_0093A6: dw LinkGraphics+$0040 ; 0x008 - $108040\n #_0093A8: dw LinkGraphics+$0040 ; 0x009 - $108040\n #_0093AA: dw LinkGraphics+$0000 ; 0x00A - $108000\n #_0093AC: dw LinkGraphics+$0000 ; 0x00B - $108000\n #_0093AE: dw LinkGraphics+$0000 ; 0x00C - $108000\n #_0093B0: dw LinkGraphics+$0000 ; 0x00D - $108000\n #_0093B2: dw LinkGraphics+$0000 ; 0x00E - $108000\n #_0093B4: dw LinkGraphics+$0000 ; 0x00F - $108000\n #_0093B6: dw LinkGraphics+$1440 ; 0x010 - $109440\n #_0093B8: dw LinkGraphics+$0080 ; 0x011 - $108080\n #_0093BA: dw LinkGraphics+$0080 ; 0x012 - $108080\n #_0093BC: dw LinkGraphics+$0080 ; 0x013 - $108080\n #_0093BE: dw LinkGraphics+$1400 ; 0x014 - $109400\n #_0093C0: dw LinkGraphics+$0040 ; 0x015 - $108040\n #_0093C2: dw LinkGraphics+$00C0 ; 0x016 - $1080C0\n #_0093C4: dw LinkGraphics+$00C0 ; 0x017 - $1080C0\n #_0093C6: dw LinkGraphics+$0000 ; 0x018 - $108000\n #_0093C8: dw LinkGraphics+$0000 ; 0x019 - $108000\n #_0093CA: dw LinkGraphics+$0000 ; 0x01A - $108000\n #_0093CC: dw LinkGraphics+$0000 ; 0x01B - $108000\n #_0093CE: dw LinkGraphics+$0000 ; 0x01C - $108000\n #_0093D0: dw LinkGraphics+$0000 ; 0x01D - $108000\n #_0093D2: dw LinkGraphics+$0000 ; 0x01E - $108000\n #_0093D4: dw LinkGraphics+$0000 ; 0x01F - $108000\n #_0093D6: dw LinkGraphics+$0080 ; 0x020 - $108080\n #_0093D8: dw LinkGraphics+$0080 ; 0x021 - $108080\n #_0093DA: dw LinkGraphics+$0080 ; 0x022 - $108080\n #_0093DC: dw LinkGraphics+$0080 ; 0x023 - $108080\n #_0093DE: dw LinkGraphics+$0080 ; 0x024 - $108080\n #_0093E0: dw LinkGraphics+$0040 ; 0x025 - $108040\n #_0093E2: dw LinkGraphics+$0040 ; 0x026 - $108040\n #_0093E4: dw LinkGraphics+$0040 ; 0x027 - $108040\n #_0093E6: dw LinkGraphics+$0040 ; 0x028 - $108040\n #_0093E8: dw LinkGraphics+$0040 ; 0x029 - $108040\n #_0093EA: dw LinkGraphics+$0000 ; 0x02A - $108000\n #_0093EC: dw LinkGraphics+$28C0 ; 0x02B - $10A8C0\n #_0093EE: dw LinkGraphics+$2900 ; 0x02C - $10A900\n #_0093F0: dw LinkGraphics+$0000 ; 0x02D - $108000\n #_0093F2: dw LinkGraphics+$28C0 ; 0x02E - $10A8C0\n #_0093F4: dw LinkGraphics+$2900 ; 0x02F - $10A900\n #_0093F6: dw LinkGraphics+$1100 ; 0x030 - $109100\n #_0093F8: dw LinkGraphics+$0080 ; 0x031 - $108080\n #_0093FA: dw LinkGraphics+$0080 ; 0x032 - $108080\n #_0093FC: dw LinkGraphics+$10C0 ; 0x033 - $1090C0\n #_0093FE: dw LinkGraphics+$0040 ; 0x034 - $108040\n #_009400: dw LinkGraphics+$0000 ; 0x035 - $108000\n #_009402: dw LinkGraphics+$0000 ; 0x036 - $108000\n #_009404: dw LinkGraphics+$0000 ; 0x037 - $108000\n #_009406: dw LinkGraphics+$0000 ; 0x038 - $108000\n #_009408: dw LinkGraphics+$0000 ; 0x039 - $108000\n #_00940A: dw LinkGraphics+$0000 ; 0x03A - $108000\n #_00940C: dw LinkGraphics+$1A00 ; 0x03B - $109A00\n #_00940E: dw LinkGraphics+$1140 ; 0x03C - $109140\n #_009410: dw LinkGraphics+$1180 ; 0x03D - $109180\n #_009412: dw LinkGraphics+$0000 ; 0x03E - $108000\n #_009414: dw LinkGraphics+$1500 ; 0x03F - $109500\n #_009416: dw LinkGraphics+$1480 ; 0x040 - $109480\n #_009418: dw LinkGraphics+$14C0 ; 0x041 - $1094C0\n #_00941A: dw LinkGraphics+$14C0 ; 0x042 - $1094C0\n #_00941C: dw LinkGraphics+$1AE0 ; 0x043 - $109AE0\n #_00941E: dw LinkGraphics+$0080 ; 0x044 - $108080\n #_009420: dw LinkGraphics+$0080 ; 0x045 - $108080\n #_009422: dw LinkGraphics+$1A60 ; 0x046 - $109A60\n #_009424: dw LinkGraphics+$00C0 ; 0x047 - $1080C0\n #_009426: dw LinkGraphics+$00C0 ; 0x048 - $1080C0\n #_009428: dw LinkGraphics+$1AA0 ; 0x049 - $109AA0\n #_00942A: dw LinkGraphics+$0000 ; 0x04A - $108000\n #_00942C: dw LinkGraphics+$0000 ; 0x04B - $108000\n #_00942E: dw LinkGraphics+$1AA0 ; 0x04C - $109AA0\n #_009430: dw LinkGraphics+$0000 ; 0x04D - $108000\n #_009432: dw LinkGraphics+$0000 ; 0x04E - $108000\n #_009434: dw LinkGraphics+$0080 ; 0x04F - $108080\n #_009436: dw LinkGraphics+$0080 ; 0x050 - $108080\n #_009438: dw LinkGraphics+$0100 ; 0x051 - $108100\n #_00943A: dw LinkGraphics+$0100 ; 0x052 - $108100\n #_00943C: dw LinkGraphics+$05C0 ; 0x053 - $1085C0\n #_00943E: dw LinkGraphics+$0000 ; 0x054 - $108000\n #_009440: dw LinkGraphics+$0000 ; 0x055 - $108000\n #_009442: dw LinkGraphics+$05C0 ; 0x056 - $1085C0\n #_009444: dw LinkGraphics+$0000 ; 0x057 - $108000\n #_009446: dw LinkGraphics+$0000 ; 0x058 - $108000\n #_009448: dw LinkGraphics+$2DC0 ; 0x059 - $10ADC0\n #_00944A: dw LinkGraphics+$2DC0 ; 0x05A - $10ADC0\n #_00944C: dw LinkGraphics+$2DC0 ; 0x05B - $10ADC0\n #_00944E: dw LinkGraphics+$2DC0 ; 0x05C - $10ADC0\n #_009450: dw LinkGraphics+$2DC0 ; 0x05D - $10ADC0\n #_009452: dw LinkGraphics+$2D40 ; 0x05E - $10AD40\n #_009454: dw LinkGraphics+$2D40 ; 0x05F - $10AD40\n #_009456: dw LinkGraphics+$2D40 ; 0x060 - $10AD40\n #_009458: dw LinkGraphics+$2D40 ; 0x061 - $10AD40\n #_00945A: dw LinkGraphics+$2D40 ; 0x062 - $10AD40\n #_00945C: dw LinkGraphics+$2D80 ; 0x063 - $10AD80\n #_00945E: dw LinkGraphics+$2D80 ; 0x064 - $10AD80\n #_009460: dw LinkGraphics+$2D80 ; 0x065 - $10AD80\n #_009462: dw LinkGraphics+$2D80 ; 0x066 - $10AD80\n #_009464: dw LinkGraphics+$2D80 ; 0x067 - $10AD80\n #_009466: dw LinkGraphics+$2D80 ; 0x068 - $10AD80\n #_009468: dw LinkGraphics+$0040 ; 0x069 - $108040\n #_00946A: dw LinkGraphics+$1400 ; 0x06A - $109400\n #_00946C: dw LinkGraphics+$0040 ; 0x06B - $108040\n #_00946E: dw LinkGraphics+$0000 ; 0x06C - $108000\n #_009470: dw LinkGraphics+$0080 ; 0x06D - $108080\n #_009472: dw LinkGraphics+$0080 ; 0x06E - $108080\n #_009474: dw LinkGraphics+$1440 ; 0x06F - $109440\n #_009476: dw LinkGraphics+$0000 ; 0x070 - $108000\n #_009478: dw LinkGraphics+$0000 ; 0x071 - $108000\n #_00947A: dw LinkGraphics+$0000 ; 0x072 - $108000\n #_00947C: dw LinkGraphics+$0000 ; 0x073 - $108000\n #_00947E: dw LinkGraphics+$0080 ; 0x074 - $108080\n #_009480: dw LinkGraphics+$0040 ; 0x075 - $108040\n #_009482: dw LinkGraphics+$0040 ; 0x076 - $108040\n #_009484: dw LinkGraphics+$0000 ; 0x077 - $108000\n #_009486: dw LinkGraphics+$0000 ; 0x078 - $108000\n #_009488: dw LinkGraphics+$0000 ; 0x079 - $108000\n #_00948A: dw LinkGraphics+$0000 ; 0x07A - $108000\n #_00948C: dw LinkGraphics+$0000 ; 0x07B - $108000\n #_00948E: dw LinkGraphics+$0000 ; 0x07C - $108000\n #_009490: dw LinkGraphics+$4440 ; 0x07D - $10C440\n #_009492: dw LinkGraphics+$0140 ; 0x07E - $108140\n #_009494: dw LinkGraphics+$0140 ; 0x07F - $108140\n #_009496: dw LinkGraphics+$4A40 ; 0x080 - $10CA40\n #_009498: dw LinkGraphics+$0000 ; 0x081 - $108000\n #_00949A: dw LinkGraphics+$0000 ; 0x082 - $108000\n #_00949C: dw LinkGraphics+$0000 ; 0x083 - $108000\n #_00949E: dw LinkGraphics+$0000 ; 0x084 - $108000\n #_0094A0: dw LinkGraphics+$0000 ; 0x085 - $108000\n #_0094A2: dw LinkGraphics+$0000 ; 0x086 - $108000\n #_0094A4: dw LinkGraphics+$0040 ; 0x087 - $108040\n #_0094A6: dw LinkGraphics+$05C0 ; 0x088 - $1085C0\n #_0094A8: dw LinkGraphics+$0040 ; 0x089 - $108040\n #_0094AA: dw LinkGraphics+$05C0 ; 0x08A - $1085C0\n #_0094AC: dw LinkGraphics+$0100 ; 0x08B - $108100\n #_0094AE: dw LinkGraphics+$00C0 ; 0x08C - $1080C0\n #_0094B0: dw LinkGraphics+$11C0 ; 0x08D - $1091C0\n #_0094B2: dw LinkGraphics+$0080 ; 0x08E - $108080\n #_0094B4: dw LinkGraphics+$0080 ; 0x08F - $108080\n #_0094B6: dw LinkGraphics+$0040 ; 0x090 - $108040\n #_0094B8: dw LinkGraphics+$0040 ; 0x091 - $108040\n #_0094BA: dw LinkGraphics+$0000 ; 0x092 - $108000\n #_0094BC: dw LinkGraphics+$0000 ; 0x093 - $108000\n #_0094BE: dw LinkGraphics+$0000 ; 0x094 - $108000\n #_0094C0: dw LinkGraphics+$0000 ; 0x095 - $108000\n #_0094C2: dw LinkGraphics+$0080 ; 0x096 - $108080\n #_0094C4: dw LinkGraphics+$0080 ; 0x097 - $108080\n #_0094C6: dw LinkGraphics+$1100 ; 0x098 - $109100\n #_0094C8: dw LinkGraphics+$20C0 ; 0x099 - $10A0C0\n #_0094CA: dw LinkGraphics+$2100 ; 0x09A - $10A100\n #_0094CC: dw LinkGraphics+$2100 ; 0x09B - $10A100\n #_0094CE: dw LinkGraphics+$21C0 ; 0x09C - $10A1C0\n #_0094D0: dw LinkGraphics+$2400 ; 0x09D - $10A400\n #_0094D2: dw LinkGraphics+$2440 ; 0x09E - $10A440\n #_0094D4: dw LinkGraphics+$21C0 ; 0x09F - $10A1C0\n #_0094D6: dw LinkGraphics+$2400 ; 0x0A0 - $10A400\n #_0094D8: dw LinkGraphics+$2440 ; 0x0A1 - $10A440\n #_0094DA: dw LinkGraphics+$0080 ; 0x0A2 - $108080\n #_0094DC: dw LinkGraphics+$4480 ; 0x0A3 - $10C480\n #_0094DE: dw LinkGraphics+$0080 ; 0x0A4 - $108080\n #_0094E0: dw LinkGraphics+$0040 ; 0x0A5 - $108040\n #_0094E2: dw LinkGraphics+$0040 ; 0x0A6 - $108040\n #_0094E4: dw LinkGraphics+$4A80 ; 0x0A7 - $10CA80\n #_0094E6: dw LinkGraphics+$4A80 ; 0x0A8 - $10CA80\n #_0094E8: dw LinkGraphics+$4A00 ; 0x0A9 - $10CA00\n #_0094EA: dw LinkGraphics+$4400 ; 0x0AA - $10C400\n #_0094EC: dw LinkGraphics+$4A00 ; 0x0AB - $10CA00\n #_0094EE: dw LinkGraphics+$4400 ; 0x0AC - $10C400\n #_0094F0: dw LinkGraphics+$01C0 ; 0x0AD - $1081C0\n #_0094F2: dw LinkGraphics+$0080 ; 0x0AE - $108080\n #_0094F4: dw LinkGraphics+$0080 ; 0x0AF - $108080\n #_0094F6: dw LinkGraphics+$0080 ; 0x0B0 - $108080\n #_0094F8: dw LinkGraphics+$0080 ; 0x0B1 - $108080\n #_0094FA: dw LinkGraphics+$0080 ; 0x0B2 - $108080\n #_0094FC: dw LinkGraphics+$0080 ; 0x0B3 - $108080\n #_0094FE: dw LinkGraphics+$0080 ; 0x0B4 - $108080\n #_009500: dw LinkGraphics+$0080 ; 0x0B5 - $108080\n #_009502: dw LinkGraphics+$0040 ; 0x0B6 - $108040\n #_009504: dw LinkGraphics+$0040 ; 0x0B7 - $108040\n #_009506: dw LinkGraphics+$0040 ; 0x0B8 - $108040\n #_009508: dw LinkGraphics+$0040 ; 0x0B9 - $108040\n #_00950A: dw LinkGraphics+$0040 ; 0x0BA - $108040\n #_00950C: dw LinkGraphics+$0040 ; 0x0BB - $108040\n #_00950E: dw LinkGraphics+$0040 ; 0x0BC - $108040\n #_009510: dw LinkGraphics+$0000 ; 0x0BD - $108000\n #_009512: dw LinkGraphics+$28C0 ; 0x0BE - $10A8C0\n #_009514: dw LinkGraphics+$2900 ; 0x0BF - $10A900\n #_009516: dw LinkGraphics+$0000 ; 0x0C0 - $108000\n #_009518: dw LinkGraphics+$0000 ; 0x0C1 - $108000\n #_00951A: dw LinkGraphics+$28C0 ; 0x0C2 - $10A8C0\n #_00951C: dw LinkGraphics+$2900 ; 0x0C3 - $10A900\n #_00951E: dw LinkGraphics+$0000 ; 0x0C4 - $108000\n #_009520: dw LinkGraphics+$28C0 ; 0x0C5 - $10A8C0\n #_009522: dw LinkGraphics+$2900 ; 0x0C6 - $10A900\n #_009524: dw LinkGraphics+$0000 ; 0x0C7 - $108000\n #_009526: dw LinkGraphics+$0000 ; 0x0C8 - $108000\n #_009528: dw LinkGraphics+$28C0 ; 0x0C9 - $10A8C0\n #_00952A: dw LinkGraphics+$2900 ; 0x0CA - $10A900\n #_00952C: dw LinkGraphics+$0040 ; 0x0CB - $108040\n #_00952E: dw LinkGraphics+$0040 ; 0x0CC - $108040\n #_009530: dw LinkGraphics+$0040 ; 0x0CD - $108040\n #_009532: dw LinkGraphics+$0080 ; 0x0CE - $108080\n #_009534: dw LinkGraphics+$0080 ; 0x0CF - $108080\n #_009536: dw LinkGraphics+$0040 ; 0x0D0 - $108040\n #_009538: dw LinkGraphics+$0040 ; 0x0D1 - $108040\n #_00953A: dw LinkGraphics+$0040 ; 0x0D2 - $108040\n #_00953C: dw LinkGraphics+$0040 ; 0x0D3 - $108040\n #_00953E: dw LinkGraphics+$0000 ; 0x0D4 - $108000\n #_009540: dw LinkGraphics+$0000 ; 0x0D5 - $108000\n #_009542: dw LinkGraphics+$0000 ; 0x0D6 - $108000\n #_009544: dw LinkGraphics+$0000 ; 0x0D7 - $108000\n #_009546: dw LinkGraphics+$5080 ; 0x0D8 - $10D080\n #_009548: dw LinkGraphics+$0080 ; 0x0D9 - $108080\n #_00954A: dw LinkGraphics+$10C0 ; 0x0DA - $1090C0\n #_00954C: dw LinkGraphics+$5000 ; 0x0DB - $10D000\n #_00954E: dw LinkGraphics+$1080 ; 0x0DC - $109080\n #_009550: dw LinkGraphics+$5040 ; 0x0DD - $10D040\n #_009552: dw LinkGraphics+$1080 ; 0x0DE - $109080\n #_009554: dw LinkGraphics+$5040 ; 0x0DF - $10D040\n #_009556: dw LinkGraphics+$5080 ; 0x0E0 - $10D080\n #_009558: dw LinkGraphics+$5080 ; 0x0E1 - $10D080\n #_00955A: dw LinkGraphics+$5080 ; 0x0E2 - $10D080\n #_00955C: dw LinkGraphics+$5080 ; 0x0E3 - $10D080\n #_00955E: dw LinkGraphics+$5080 ; 0x0E4 - $10D080\n #_009560: dw LinkGraphics+$5000 ; 0x0E5 - $10D000\n #_009562: dw LinkGraphics+$5000 ; 0x0E6 - $10D000\n #_009564: dw LinkGraphics+$5000 ; 0x0E7 - $10D000\n #_009566: dw LinkGraphics+$5000 ; 0x0E8 - $10D000\n #_009568: dw LinkGraphics+$5000 ; 0x0E9 - $10D000\n #_00956A: dw LinkGraphics+$5040 ; 0x0EA - $10D040\n #_00956C: dw LinkGraphics+$5040 ; 0x0EB - $10D040\n #_00956E: dw LinkGraphics+$5040 ; 0x0EC - $10D040\n #_009570: dw LinkGraphics+$5040 ; 0x0ED - $10D040\n #_009572: dw LinkGraphics+$5040 ; 0x0EE - $10D040\n #_009574: dw LinkGraphics+$5040 ; 0x0EF - $10D040\n #_009576: dw LinkGraphics+$0040 ; 0x0F0 - $108040\n #_009578: dw LinkGraphics+$5000 ; 0x0F1 - $10D000\n #_00957A: dw LinkGraphics+$05C0 ; 0x0F2 - $1085C0\n #_00957C: dw LinkGraphics+$05C0 ; 0x0F3 - $1085C0\n #_00957E: dw LinkGraphics+$05C0 ; 0x0F4 - $1085C0\n #_009580: dw LinkGraphics+$5C40 ; 0x0F5 - $10DC40\n #_009582: dw LinkGraphics+$5C40 ; 0x0F6 - $10DC40\n #_009584: dw LinkGraphics+$5C40 ; 0x0F7 - $10DC40\n #_009586: dw LinkGraphics+$05C0 ; 0x0F8 - $1085C0\n #_009588: dw LinkGraphics+$05C0 ; 0x0F9 - $1085C0\n #_00958A: dw LinkGraphics+$05C0 ; 0x0FA - $1085C0\n #_00958C: dw LinkGraphics+$5C40 ; 0x0FB - $10DC40\n #_00958E: dw LinkGraphics+$5C40 ; 0x0FC - $10DC40\n #_009590: dw LinkGraphics+$5C40 ; 0x0FD - $10DC40\n #_009592: dw LinkGraphics+$61C0 ; 0x0FE - $10E1C0\n #_009594: dw LinkGraphics+$5000 ; 0x0FF - $10D000\n #_009596: dw LinkGraphics+$0000 ; 0x100 - $108000\n #_009598: dw LinkGraphics+$6400 ; 0x101 - $10E400\n #_00959A: dw LinkGraphics+$6400 ; 0x102 - $10E400\n #_00959C: dw LinkGraphics+$6440 ; 0x103 - $10E440\n #_00959E: dw LinkGraphics+$10C0 ; 0x104 - $1090C0\n #_0095A0: dw LinkGraphics+$10C0 ; 0x105 - $1090C0\n #_0095A2: dw LinkGraphics+$5000 ; 0x106 - $10D000\n #_0095A4: dw LinkGraphics+$0000 ; 0x107 - $108000\n #_0095A6: dw LinkGraphics+$0000 ; 0x108 - $108000\n #_0095A8: dw LinkGraphics+$5040 ; 0x109 - $10D040\n #_0095AA: dw LinkGraphics+$0000 ; 0x10A - $108000\n #_0095AC: dw LinkGraphics+$0000 ; 0x10B - $108000\n #_0095AE: dw LinkGraphics+$5040 ; 0x10C - $10D040\n #_0095B0: dw LinkGraphics+$6400 ; 0x10D - $10E400\n #_0095B2: dw LinkGraphics+$6400 ; 0x10E - $10E400\n #_0095B4: dw LinkGraphics+$6400 ; 0x10F - $10E400\n #_0095B6: dw LinkGraphics+$1080 ; 0x110 - $109080\n #_0095B8: dw LinkGraphics+$25C0 ; 0x111 - $10A5C0\n #_0095BA: dw LinkGraphics+$2C40 ; 0x112 - $10AC40\n #_0095BC: dw LinkGraphics+$6480 ; 0x113 - $10E480\n #_0095BE: dw LinkGraphics+$0180 ; 0x114 - $108180\n #_0095C0: dw LinkGraphics+$10C0 ; 0x115 - $1090C0\n #_0095C2: dw LinkGraphics+$00C0 ; 0x116 - $1080C0\n #_0095C4: dw LinkGraphics+$6180 ; 0x117 - $10E180\n #_0095C6: dw LinkGraphics+$5000 ; 0x118 - $10D000\n #_0095C8: dw LinkGraphics+$64C0 ; 0x119 - $10E4C0\n #_0095CA: dw LinkGraphics+$64C0 ; 0x11A - $10E4C0\n #_0095CC: dw LinkGraphics+$6840 ; 0x11B - $10E840\n #_0095CE: dw LinkGraphics+$6840 ; 0x11C - $10E840\n #_0095D0: dw LinkGraphics+$6840 ; 0x11D - $10E840\n #_0095D2: dw LinkGraphics+$6540 ; 0x11E - $10E540\n #_0095D4: dw LinkGraphics+$6540 ; 0x11F - $10E540\n #_0095D6: dw LinkGraphics+$6540 ; 0x120 - $10E540\n #_0095D8: dw LinkGraphics+$6900 ; 0x121 - $10E900\n #_0095DA: dw LinkGraphics+$6900 ; 0x122 - $10E900\n #_0095DC: dw LinkGraphics+$6900 ; 0x123 - $10E900\n #_0095DE: dw LinkGraphics+$6900 ; 0x124 - $10E900\n #_0095E0: dw LinkGraphics+$0080 ; 0x125 - $108080\n #_0095E2: dw LinkGraphics+$0080 ; 0x126 - $108080\n #_0095E4: dw LinkGraphics+$0000 ; 0x127 - $108000\n #_0095E6: dw LinkGraphics+$29C0 ; 0x128 - $10A9C0\n #_0095E8: dw LinkGraphics+$0080 ; 0x129 - $108080\n #_0095EA: dw LinkGraphics+$0140 ; 0x12A - $108140\n #_0095EC: dw LinkGraphics+$11C0 ; 0x12B - $1091C0\n #_0095EE: dw LinkGraphics+$0040 ; 0x12C - $108040\n #_0095F0: dw LinkGraphics+$2800 ; 0x12D - $10A800\n #_0095F2: dw LinkGraphics+$2840 ; 0x12E - $10A840\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LinkOAM_BodyAddresses", + "code": "LinkOAM_BodyAddresses:\n #_0095F4: dw LinkGraphics+$0840 ; 0x000 - $108840\n #_0095F6: dw LinkGraphics+$0800 ; 0x001 - $108800\n #_0095F8: dw LinkGraphics+$0580 ; 0x002 - $108580\n #_0095FA: dw LinkGraphics+$0800 ; 0x003 - $108800\n #_0095FC: dw LinkGraphics+$0580 ; 0x004 - $108580\n #_0095FE: dw LinkGraphics+$04C0 ; 0x005 - $1084C0\n #_009600: dw LinkGraphics+$0500 ; 0x006 - $108500\n #_009602: dw LinkGraphics+$0540 ; 0x007 - $108540\n #_009604: dw LinkGraphics+$0500 ; 0x008 - $108500\n #_009606: dw LinkGraphics+$0540 ; 0x009 - $108540\n #_009608: dw LinkGraphics+$0400 ; 0x00A - $108400\n #_00960A: dw LinkGraphics+$0440 ; 0x00B - $108440\n #_00960C: dw LinkGraphics+$0480 ; 0x00C - $108480\n #_00960E: dw LinkGraphics+$0400 ; 0x00D - $108400\n #_009610: dw LinkGraphics+$0440 ; 0x00E - $108440\n #_009612: dw LinkGraphics+$0480 ; 0x00F - $108480\n #_009614: dw LinkGraphics+$1640 ; 0x010 - $109640\n #_009616: dw LinkGraphics+$0C40 ; 0x011 - $108C40\n #_009618: dw LinkGraphics+$0C80 ; 0x012 - $108C80\n #_00961A: dw LinkGraphics+$2D00 ; 0x013 - $10AD00\n #_00961C: dw LinkGraphics+$1600 ; 0x014 - $109600\n #_00961E: dw LinkGraphics+$0980 ; 0x015 - $108980\n #_009620: dw LinkGraphics+$0C00 ; 0x016 - $108C00\n #_009622: dw LinkGraphics+$2CC0 ; 0x017 - $10ACC0\n #_009624: dw LinkGraphics+$0880 ; 0x018 - $108880\n #_009626: dw LinkGraphics+$08C0 ; 0x019 - $1088C0\n #_009628: dw LinkGraphics+$0900 ; 0x01A - $108900\n #_00962A: dw LinkGraphics+$0940 ; 0x01B - $108940\n #_00962C: dw LinkGraphics+$0880 ; 0x01C - $108880\n #_00962E: dw LinkGraphics+$08C0 ; 0x01D - $1088C0\n #_009630: dw LinkGraphics+$0900 ; 0x01E - $108900\n #_009632: dw LinkGraphics+$0940 ; 0x01F - $108940\n #_009634: dw LinkGraphics+$30C0 ; 0x020 - $10B0C0\n #_009636: dw LinkGraphics+$3100 ; 0x021 - $10B100\n #_009638: dw LinkGraphics+$3140 ; 0x022 - $10B140\n #_00963A: dw LinkGraphics+$3100 ; 0x023 - $10B100\n #_00963C: dw LinkGraphics+$3140 ; 0x024 - $10B140\n #_00963E: dw LinkGraphics+$3000 ; 0x025 - $10B000\n #_009640: dw LinkGraphics+$3040 ; 0x026 - $10B040\n #_009642: dw LinkGraphics+$3080 ; 0x027 - $10B080\n #_009644: dw LinkGraphics+$6C80 ; 0x028 - $10EC80\n #_009646: dw LinkGraphics+$6CC0 ; 0x029 - $10ECC0\n #_009648: dw LinkGraphics+$3180 ; 0x02A - $10B180\n #_00964A: dw LinkGraphics+$5440 ; 0x02B - $10D440\n #_00964C: dw LinkGraphics+$31C0 ; 0x02C - $10B1C0\n #_00964E: dw LinkGraphics+$3180 ; 0x02D - $10B180\n #_009650: dw LinkGraphics+$5440 ; 0x02E - $10D440\n #_009652: dw LinkGraphics+$31C0 ; 0x02F - $10B1C0\n #_009654: dw LinkGraphics+$0C80 ; 0x030 - $108C80\n #_009656: dw LinkGraphics+$2D00 ; 0x031 - $10AD00\n #_009658: dw LinkGraphics+$15C0 ; 0x032 - $1095C0\n #_00965A: dw LinkGraphics+$19C0 ; 0x033 - $1099C0\n #_00965C: dw LinkGraphics+$3440 ; 0x034 - $10B440\n #_00965E: dw LinkGraphics+$1580 ; 0x035 - $109580\n #_009660: dw LinkGraphics+$3480 ; 0x036 - $10B480\n #_009662: dw LinkGraphics+$34C0 ; 0x037 - $10B4C0\n #_009664: dw LinkGraphics+$1580 ; 0x038 - $109580\n #_009666: dw LinkGraphics+$3480 ; 0x039 - $10B480\n #_009668: dw LinkGraphics+$34C0 ; 0x03A - $10B4C0\n #_00966A: dw LinkGraphics+$1C20 ; 0x03B - $109C20\n #_00966C: dw LinkGraphics+$0000 ; 0x03C - $108000\n #_00966E: dw LinkGraphics+$0000 ; 0x03D - $108000\n #_009670: dw LinkGraphics+$0000 ; 0x03E - $108000\n #_009672: dw LinkGraphics+$1700 ; 0x03F - $109700\n #_009674: dw LinkGraphics+$1680 ; 0x040 - $109680\n #_009676: dw LinkGraphics+$16C0 ; 0x041 - $1096C0\n #_009678: dw LinkGraphics+$16C0 ; 0x042 - $1096C0\n #_00967A: dw LinkGraphics+$1CE0 ; 0x043 - $109CE0\n #_00967C: dw LinkGraphics+$0C80 ; 0x044 - $108C80\n #_00967E: dw LinkGraphics+$3540 ; 0x045 - $10B540\n #_009680: dw LinkGraphics+$1C60 ; 0x046 - $109C60\n #_009682: dw LinkGraphics+$3580 ; 0x047 - $10B580\n #_009684: dw LinkGraphics+$0C00 ; 0x048 - $108C00\n #_009686: dw LinkGraphics+$1CA0 ; 0x049 - $109CA0\n #_009688: dw LinkGraphics+$0900 ; 0x04A - $108900\n #_00968A: dw LinkGraphics+$3500 ; 0x04B - $10B500\n #_00968C: dw LinkGraphics+$1CA0 ; 0x04C - $109CA0\n #_00968E: dw LinkGraphics+$0900 ; 0x04D - $108900\n #_009690: dw LinkGraphics+$3500 ; 0x04E - $10B500\n #_009692: dw LinkGraphics+$0C40 ; 0x04F - $108C40\n #_009694: dw LinkGraphics+$6C40 ; 0x050 - $10EC40\n #_009696: dw LinkGraphics+$0C00 ; 0x051 - $108C00\n #_009698: dw LinkGraphics+$6C00 ; 0x052 - $10EC00\n #_00969A: dw LinkGraphics+$0DC0 ; 0x053 - $108DC0\n #_00969C: dw LinkGraphics+$1540 ; 0x054 - $109540\n #_00969E: dw LinkGraphics+$09C0 ; 0x055 - $1089C0\n #_0096A0: dw LinkGraphics+$0DC0 ; 0x056 - $108DC0\n #_0096A2: dw LinkGraphics+$1540 ; 0x057 - $109540\n #_0096A4: dw LinkGraphics+$09C0 ; 0x058 - $1089C0\n #_0096A6: dw LinkGraphics+$3940 ; 0x059 - $10B940\n #_0096A8: dw LinkGraphics+$3980 ; 0x05A - $10B980\n #_0096AA: dw LinkGraphics+$39C0 ; 0x05B - $10B9C0\n #_0096AC: dw LinkGraphics+$3980 ; 0x05C - $10B980\n #_0096AE: dw LinkGraphics+$39C0 ; 0x05D - $10B9C0\n #_0096B0: dw LinkGraphics+$35C0 ; 0x05E - $10B5C0\n #_0096B2: dw LinkGraphics+$3800 ; 0x05F - $10B800\n #_0096B4: dw LinkGraphics+$3840 ; 0x060 - $10B840\n #_0096B6: dw LinkGraphics+$3800 ; 0x061 - $10B800\n #_0096B8: dw LinkGraphics+$3840 ; 0x062 - $10B840\n #_0096BA: dw LinkGraphics+$3880 ; 0x063 - $10B880\n #_0096BC: dw LinkGraphics+$38C0 ; 0x064 - $10B8C0\n #_0096BE: dw LinkGraphics+$3900 ; 0x065 - $10B900\n #_0096C0: dw LinkGraphics+$3880 ; 0x066 - $10B880\n #_0096C2: dw LinkGraphics+$38C0 ; 0x067 - $10B8C0\n #_0096C4: dw LinkGraphics+$3900 ; 0x068 - $10B900\n #_0096C6: dw LinkGraphics+$0980 ; 0x069 - $108980\n #_0096C8: dw LinkGraphics+$1600 ; 0x06A - $109600\n #_0096CA: dw LinkGraphics+$3CC0 ; 0x06B - $10BCC0\n #_0096CC: dw LinkGraphics+$0400 ; 0x06C - $108400\n #_0096CE: dw LinkGraphics+$3C80 ; 0x06D - $10BC80\n #_0096D0: dw LinkGraphics+$0C40 ; 0x06E - $108C40\n #_0096D2: dw LinkGraphics+$1640 ; 0x06F - $109640\n #_0096D4: dw LinkGraphics+$2040 ; 0x070 - $10A040\n #_0096D6: dw LinkGraphics+$2080 ; 0x071 - $10A080\n #_0096D8: dw LinkGraphics+$2000 ; 0x072 - $10A000\n #_0096DA: dw LinkGraphics+$3C40 ; 0x073 - $10BC40\n #_0096DC: dw LinkGraphics+$3D40 ; 0x074 - $10BD40\n #_0096DE: dw LinkGraphics+$0500 ; 0x075 - $108500\n #_0096E0: dw LinkGraphics+$3D00 ; 0x076 - $10BD00\n #_0096E2: dw LinkGraphics+$3D80 ; 0x077 - $10BD80\n #_0096E4: dw LinkGraphics+$3D80 ; 0x078 - $10BD80\n #_0096E6: dw LinkGraphics+$08C0 ; 0x079 - $1088C0\n #_0096E8: dw LinkGraphics+$0900 ; 0x07A - $108900\n #_0096EA: dw LinkGraphics+$69C0 ; 0x07B - $10E9C0\n #_0096EC: dw LinkGraphics+$0900 ; 0x07C - $108900\n #_0096EE: dw LinkGraphics+$4640 ; 0x07D - $10C640\n #_0096F0: dw LinkGraphics+$4040 ; 0x07E - $10C040\n #_0096F2: dw LinkGraphics+$4000 ; 0x07F - $10C000\n #_0096F4: dw LinkGraphics+$4C40 ; 0x080 - $10CC40\n #_0096F6: dw LinkGraphics+$0940 ; 0x081 - $108940\n #_0096F8: dw LinkGraphics+$08C0 ; 0x082 - $1088C0\n #_0096FA: dw LinkGraphics+$0900 ; 0x083 - $108900\n #_0096FC: dw LinkGraphics+$69C0 ; 0x084 - $10E9C0\n #_0096FE: dw LinkGraphics+$0900 ; 0x085 - $108900\n #_009700: dw LinkGraphics+$0940 ; 0x086 - $108940\n #_009702: dw LinkGraphics+$0D40 ; 0x087 - $108D40\n #_009704: dw LinkGraphics+$0D80 ; 0x088 - $108D80\n #_009706: dw LinkGraphics+$0D40 ; 0x089 - $108D40\n #_009708: dw LinkGraphics+$0D80 ; 0x08A - $108D80\n #_00970A: dw LinkGraphics+$3D00 ; 0x08B - $10BD00\n #_00970C: dw LinkGraphics+$3000 ; 0x08C - $10B000\n #_00970E: dw LinkGraphics+$3000 ; 0x08D - $10B000\n #_009710: dw LinkGraphics+$2480 ; 0x08E - $10A480\n #_009712: dw LinkGraphics+$2480 ; 0x08F - $10A480\n #_009714: dw LinkGraphics+$2480 ; 0x090 - $10A480\n #_009716: dw LinkGraphics+$2480 ; 0x091 - $10A480\n #_009718: dw LinkGraphics+$2C00 ; 0x092 - $10AC00\n #_00971A: dw LinkGraphics+$2C00 ; 0x093 - $10AC00\n #_00971C: dw LinkGraphics+$2C00 ; 0x094 - $10AC00\n #_00971E: dw LinkGraphics+$2C00 ; 0x095 - $10AC00\n #_009720: dw LinkGraphics+$2140 ; 0x096 - $10A140\n #_009722: dw LinkGraphics+$2180 ; 0x097 - $10A180\n #_009724: dw LinkGraphics+$2180 ; 0x098 - $10A180\n #_009726: dw LinkGraphics+$24C0 ; 0x099 - $10A4C0\n #_009728: dw LinkGraphics+$24C0 ; 0x09A - $10A4C0\n #_00972A: dw LinkGraphics+$2500 ; 0x09B - $10A500\n #_00972C: dw LinkGraphics+$1D40 ; 0x09C - $109D40\n #_00972E: dw LinkGraphics+$1D80 ; 0x09D - $109D80\n #_009730: dw LinkGraphics+$1DC0 ; 0x09E - $109DC0\n #_009732: dw LinkGraphics+$1D40 ; 0x09F - $109D40\n #_009734: dw LinkGraphics+$1D80 ; 0x0A0 - $109D80\n #_009736: dw LinkGraphics+$1DC0 ; 0x0A1 - $109DC0\n #_009738: dw LinkGraphics+$0D00 ; 0x0A2 - $108D00\n #_00973A: dw LinkGraphics+$4680 ; 0x0A3 - $10C680\n #_00973C: dw LinkGraphics+$4180 ; 0x0A4 - $10C180\n #_00973E: dw LinkGraphics+$4140 ; 0x0A5 - $10C140\n #_009740: dw LinkGraphics+$0C00 ; 0x0A6 - $108C00\n #_009742: dw LinkGraphics+$4C80 ; 0x0A7 - $10CC80\n #_009744: dw LinkGraphics+$4C80 ; 0x0A8 - $10CC80\n #_009746: dw LinkGraphics+$4C00 ; 0x0A9 - $10CC00\n #_009748: dw LinkGraphics+$4600 ; 0x0AA - $10C600\n #_00974A: dw LinkGraphics+$4C00 ; 0x0AB - $10CC00\n #_00974C: dw LinkGraphics+$4600 ; 0x0AC - $10C600\n #_00974E: dw LinkGraphics+$3D00 ; 0x0AD - $10BD00\n #_009750: dw LinkGraphics+$0580 ; 0x0AE - $108580\n #_009752: dw LinkGraphics+$0800 ; 0x0AF - $108800\n #_009754: dw LinkGraphics+$49C0 ; 0x0B0 - $10C9C0\n #_009756: dw LinkGraphics+$4CC0 ; 0x0B1 - $10CCC0\n #_009758: dw LinkGraphics+$4DC0 ; 0x0B2 - $10CDC0\n #_00975A: dw LinkGraphics+$4D00 ; 0x0B3 - $10CD00\n #_00975C: dw LinkGraphics+$4D40 ; 0x0B4 - $10CD40\n #_00975E: dw LinkGraphics+$4D80 ; 0x0B5 - $10CD80\n #_009760: dw LinkGraphics+$0500 ; 0x0B6 - $108500\n #_009762: dw LinkGraphics+$0540 ; 0x0B7 - $108540\n #_009764: dw LinkGraphics+$4940 ; 0x0B8 - $10C940\n #_009766: dw LinkGraphics+$4980 ; 0x0B9 - $10C980\n #_009768: dw LinkGraphics+$0540 ; 0x0BA - $108540\n #_00976A: dw LinkGraphics+$4940 ; 0x0BB - $10C940\n #_00976C: dw LinkGraphics+$4980 ; 0x0BC - $10C980\n #_00976E: dw LinkGraphics+$0440 ; 0x0BD - $108440\n #_009770: dw LinkGraphics+$0480 ; 0x0BE - $108480\n #_009772: dw LinkGraphics+$41C0 ; 0x0BF - $10C1C0\n #_009774: dw LinkGraphics+$4900 ; 0x0C0 - $10C900\n #_009776: dw LinkGraphics+$4580 ; 0x0C1 - $10C580\n #_009778: dw LinkGraphics+$45C0 ; 0x0C2 - $10C5C0\n #_00977A: dw LinkGraphics+$48C0 ; 0x0C3 - $10C8C0\n #_00977C: dw LinkGraphics+$0440 ; 0x0C4 - $108440\n #_00977E: dw LinkGraphics+$0480 ; 0x0C5 - $108480\n #_009780: dw LinkGraphics+$41C0 ; 0x0C6 - $10C1C0\n #_009782: dw LinkGraphics+$4900 ; 0x0C7 - $10C900\n #_009784: dw LinkGraphics+$4580 ; 0x0C8 - $10C580\n #_009786: dw LinkGraphics+$45C0 ; 0x0C9 - $10C5C0\n #_009788: dw LinkGraphics+$48C0 ; 0x0CA - $10C8C0\n #_00978A: dw LinkGraphics+$3D00 ; 0x0CB - $10BD00\n #_00978C: dw LinkGraphics+$2CC0 ; 0x0CC - $10ACC0\n #_00978E: dw LinkGraphics+$4040 ; 0x0CD - $10C040\n #_009790: dw LinkGraphics+$5540 ; 0x0CE - $10D540\n #_009792: dw LinkGraphics+$5580 ; 0x0CF - $10D580\n #_009794: dw LinkGraphics+$54C0 ; 0x0D0 - $10D4C0\n #_009796: dw LinkGraphics+$5500 ; 0x0D1 - $10D500\n #_009798: dw LinkGraphics+$54C0 ; 0x0D2 - $10D4C0\n #_00979A: dw LinkGraphics+$5500 ; 0x0D3 - $10D500\n #_00979C: dw LinkGraphics+$5440 ; 0x0D4 - $10D440\n #_00979E: dw LinkGraphics+$5480 ; 0x0D5 - $10D480\n #_0097A0: dw LinkGraphics+$5440 ; 0x0D6 - $10D440\n #_0097A2: dw LinkGraphics+$5480 ; 0x0D7 - $10D480\n #_0097A4: dw LinkGraphics+$51C0 ; 0x0D8 - $10D1C0\n #_0097A6: dw LinkGraphics+$5400 ; 0x0D9 - $10D400\n #_0097A8: dw LinkGraphics+$5100 ; 0x0DA - $10D100\n #_0097AA: dw LinkGraphics+$5100 ; 0x0DB - $10D100\n #_0097AC: dw LinkGraphics+$5140 ; 0x0DC - $10D140\n #_0097AE: dw LinkGraphics+$5180 ; 0x0DD - $10D180\n #_0097B0: dw LinkGraphics+$5140 ; 0x0DE - $10D140\n #_0097B2: dw LinkGraphics+$5180 ; 0x0DF - $10D180\n #_0097B4: dw LinkGraphics+$30C0 ; 0x0E0 - $10B0C0\n #_0097B6: dw LinkGraphics+$3100 ; 0x0E1 - $10B100\n #_0097B8: dw LinkGraphics+$3140 ; 0x0E2 - $10B140\n #_0097BA: dw LinkGraphics+$3100 ; 0x0E3 - $10B100\n #_0097BC: dw LinkGraphics+$3140 ; 0x0E4 - $10B140\n #_0097BE: dw LinkGraphics+$5D40 ; 0x0E5 - $10DD40\n #_0097C0: dw LinkGraphics+$5D80 ; 0x0E6 - $10DD80\n #_0097C2: dw LinkGraphics+$5DC0 ; 0x0E7 - $10DDC0\n #_0097C4: dw LinkGraphics+$5D80 ; 0x0E8 - $10DD80\n #_0097C6: dw LinkGraphics+$5DC0 ; 0x0E9 - $10DDC0\n #_0097C8: dw LinkGraphics+$5C80 ; 0x0EA - $10DC80\n #_0097CA: dw LinkGraphics+$5CC0 ; 0x0EB - $10DCC0\n #_0097CC: dw LinkGraphics+$5D00 ; 0x0EC - $10DD00\n #_0097CE: dw LinkGraphics+$5C80 ; 0x0ED - $10DC80\n #_0097D0: dw LinkGraphics+$5CC0 ; 0x0EE - $10DCC0\n #_0097D2: dw LinkGraphics+$5D00 ; 0x0EF - $10DD00\n #_0097D4: dw LinkGraphics+$5100 ; 0x0F0 - $10D100\n #_0097D6: dw LinkGraphics+$5100 ; 0x0F1 - $10D100\n #_0097D8: dw LinkGraphics+$6000 ; 0x0F2 - $10E000\n #_0097DA: dw LinkGraphics+$6040 ; 0x0F3 - $10E040\n #_0097DC: dw LinkGraphics+$6080 ; 0x0F4 - $10E080\n #_0097DE: dw LinkGraphics+$60C0 ; 0x0F5 - $10E0C0\n #_0097E0: dw LinkGraphics+$6100 ; 0x0F6 - $10E100\n #_0097E2: dw LinkGraphics+$6140 ; 0x0F7 - $10E140\n #_0097E4: dw LinkGraphics+$6000 ; 0x0F8 - $10E000\n #_0097E6: dw LinkGraphics+$6040 ; 0x0F9 - $10E040\n #_0097E8: dw LinkGraphics+$6080 ; 0x0FA - $10E080\n #_0097EA: dw LinkGraphics+$60C0 ; 0x0FB - $10E0C0\n #_0097EC: dw LinkGraphics+$6100 ; 0x0FC - $10E100\n #_0097EE: dw LinkGraphics+$6140 ; 0x0FD - $10E140\n #_0097F0: dw LinkGraphics+$0000 ; 0x0FE - $108000\n #_0097F2: dw LinkGraphics+$50C0 ; 0x0FF - $10D0C0\n #_0097F4: dw LinkGraphics+$0000 ; 0x100 - $108000\n #_0097F6: dw LinkGraphics+$3940 ; 0x101 - $10B940\n #_0097F8: dw LinkGraphics+$3980 ; 0x102 - $10B980\n #_0097FA: dw LinkGraphics+$3940 ; 0x103 - $10B940\n #_0097FC: dw LinkGraphics+$5D40 ; 0x104 - $10DD40\n #_0097FE: dw LinkGraphics+$5D80 ; 0x105 - $10DD80\n #_009800: dw LinkGraphics+$5D40 ; 0x106 - $10DD40\n #_009802: dw LinkGraphics+$5C80 ; 0x107 - $10DC80\n #_009804: dw LinkGraphics+$5CC0 ; 0x108 - $10DCC0\n #_009806: dw LinkGraphics+$40C0 ; 0x109 - $10C0C0\n #_009808: dw LinkGraphics+$5C80 ; 0x10A - $10DC80\n #_00980A: dw LinkGraphics+$5CC0 ; 0x10B - $10DCC0\n #_00980C: dw LinkGraphics+$40C0 ; 0x10C - $10C0C0\n #_00980E: dw LinkGraphics+$39C0 ; 0x10D - $10B9C0\n #_009810: dw LinkGraphics+$3980 ; 0x10E - $10B980\n #_009812: dw LinkGraphics+$39C0 ; 0x10F - $10B9C0\n #_009814: dw LinkGraphics+$2560 ; 0x110 - $10A560\n #_009816: dw LinkGraphics+$25A0 ; 0x111 - $10A5A0\n #_009818: dw LinkGraphics+$2C80 ; 0x112 - $10AC80\n #_00981A: dw LinkGraphics+$6D00 ; 0x113 - $10ED00\n #_00981C: dw LinkGraphics+$0000 ; 0x114 - $108000\n #_00981E: dw LinkGraphics+$0CC0 ; 0x115 - $108CC0\n #_009820: dw LinkGraphics+$3D00 ; 0x116 - $10BD00\n #_009822: dw LinkGraphics+$6380 ; 0x117 - $10E380\n #_009824: dw LinkGraphics+$3DC0 ; 0x118 - $10BDC0\n #_009826: dw LinkGraphics+$6500 ; 0x119 - $10E500\n #_009828: dw LinkGraphics+$6500 ; 0x11A - $10E500\n #_00982A: dw LinkGraphics+$6880 ; 0x11B - $10E880\n #_00982C: dw LinkGraphics+$68C0 ; 0x11C - $10E8C0\n #_00982E: dw LinkGraphics+$68C0 ; 0x11D - $10E8C0\n #_009830: dw LinkGraphics+$6800 ; 0x11E - $10E800\n #_009832: dw LinkGraphics+$65C0 ; 0x11F - $10E5C0\n #_009834: dw LinkGraphics+$65C0 ; 0x120 - $10E5C0\n #_009836: dw LinkGraphics+$6940 ; 0x121 - $10E940\n #_009838: dw LinkGraphics+$6980 ; 0x122 - $10E980\n #_00983A: dw LinkGraphics+$6940 ; 0x123 - $10E940\n #_00983C: dw LinkGraphics+$6980 ; 0x124 - $10E980\n #_00983E: dw LinkGraphics+$3D40 ; 0x125 - $10BD40\n #_009840: dw LinkGraphics+$0C80 ; 0x126 - $108C80\n #_009842: dw LinkGraphics+$2080 ; 0x127 - $10A080\n #_009844: dw LinkGraphics+$0000 ; 0x128 - $108000\n #_009846: dw LinkGraphics+$2980 ; 0x129 - $10A980\n #_009848: dw LinkGraphics+$3D00 ; 0x12A - $10BD00\n #_00984A: dw LinkGraphics+$3DC0 ; 0x12B - $10BDC0\n #_00984C: dw LinkGraphics+$3400 ; 0x12C - $10B400\n #_00984E: dw LinkGraphics+$2880 ; 0x12D - $10A880\n #_009850: dw LinkGraphics+$6DC0 ; 0x12E - $10EDC0\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LinkOAM_AuxAddresses", + "code": "LinkOAM_AuxAddresses:\n #_009852: dw LinkGraphics+$1A40 ; 0x000 - $109A40\n #_009854: dw LinkGraphics+$1E00 ; 0x001 - $109E00\n #_009856: dw LinkGraphics+$1D20 ; 0x002 - $109D20\n #_009858: dw LinkGraphics+$1F20 ; 0x003 - $109F20\n #_00985A: dw LinkGraphics+$1B20 ; 0x004 - $109B20\n #_00985C: dw LinkGraphics+$3C20 ; 0x005 - $10BC20\n #_00985E: dw LinkGraphics+$3C20 ; 0x006 - $10BC20\n #_009860: dw LinkGraphics+$3E20 ; 0x007 - $10BE20\n #_009862: dw LinkGraphics+$3E20 ; 0x008 - $10BE20\n #_009864: dw LinkGraphics+$3E00 ; 0x009 - $10BE00\n #_009866: dw LinkGraphics+$3E00 ; 0x00A - $10BE00\n #_009868: dw LinkGraphics+$3E00 ; 0x00B - $10BE00\n #_00986A: dw LinkGraphics+$3E00 ; 0x00C - $10BE00\n #_00986C: dw LinkGraphics+$2540 ; 0x00D - $10A540\n #_00986E: dw LinkGraphics+$2540 ; 0x00E - $10A540\n #_009870: dw LinkGraphics+$2540 ; 0x00F - $10A540\n #_009872: dw LinkGraphics+$2540 ; 0x010 - $10A540\n #_009874: dw LinkGraphics+$3C00 ; 0x011 - $10BC00\n #_009876: dw LinkGraphics+$3C00 ; 0x012 - $10BC00\n #_009878: dw LinkGraphics+$3C00 ; 0x013 - $10BC00\n #_00987A: dw LinkGraphics+$3C00 ; 0x014 - $10BC00\n #_00987C: dw LinkGraphics+$2740 ; 0x015 - $10A740\n #_00987E: dw LinkGraphics+$2740 ; 0x016 - $10A740\n #_009880: dw LinkGraphics+$2740 ; 0x017 - $10A740\n #_009882: dw LinkGraphics+$2740 ; 0x018 - $10A740\n #_009884: dw LinkGraphics+$6780 ; 0x019 - $10E780\n #_009886: dw LinkGraphics+$6780 ; 0x01A - $10E780\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "TilemapUpload_HighBytes", + "code": "TilemapUpload_HighBytes:\n #_009888: db $00 ; 0x00 - VRAM $0000>>8\n #_009889: db $00 ; 0x01 - VRAM $0000>>8\n #_00988A: db $04 ; 0x02 - VRAM $0800>>8\n #_00988B: db $08 ; 0x03 - VRAM $1000>>8\n #_00988C: db $0C ; 0x04 - VRAM $1800>>8\n #_00988D: db $08 ; 0x05 - VRAM $1000>>8\n #_00988E: db $0C ; 0x06 - VRAM $1800>>8\n #_00988F: db $00 ; 0x07 - VRAM $0000>>8\n #_009890: db $04 ; 0x08 - VRAM $0800>>8\n #_009891: db $00 ; 0x09 - VRAM $0000>>8\n #_009892: db $08 ; 0x0A - VRAM $1000>>8\n #_009893: db $04 ; 0x0B - VRAM $0800>>8\n #_009894: db $0C ; 0x0C - VRAM $1800>>8\n #_009895: db $04 ; 0x0D - VRAM $0800>>8\n #_009896: db $0C ; 0x0E - VRAM $1800>>8\n #_009897: db $00 ; 0x0F - VRAM $0000>>8\n #_009898: db $08 ; 0x10 - VRAM $1000>>8\n #_009899: db $10 ; 0x11 - VRAM $2000>>8\n #_00989A: db $14 ; 0x12 - VRAM $2800>>8\n #_00989B: db $18 ; 0x13 - VRAM $3000>>8\n #_00989C: db $1C ; 0x14 - VRAM $3800>>8\n #_00989D: db $18 ; 0x15 - VRAM $3000>>8\n #_00989E: db $1C ; 0x16 - VRAM $3800>>8\n #_00989F: db $10 ; 0x17 - VRAM $2000>>8\n #_0098A0: db $14 ; 0x18 - VRAM $2800>>8\n #_0098A1: db $10 ; 0x19 - VRAM $2000>>8\n #_0098A2: db $18 ; 0x1A - VRAM $3000>>8\n #_0098A3: db $14 ; 0x1B - VRAM $2800>>8\n #_0098A4: db $1C ; 0x1C - VRAM $3800>>8\n #_0098A5: db $14 ; 0x1D - VRAM $2800>>8\n #_0098A6: db $1C ; 0x1E - VRAM $3800>>8\n #_0098A7: db $10 ; 0x1F - VRAM $2000>>8\n #_0098A8: db $18 ; 0x20 - VRAM $3000>>8\n #_0098A9: db $60 ; 0x21 - VRAM $C000>>8\n #_0098AA: db $68 ; 0x22 - VRAM $D000>>8\n\n; =========================================================\n; FREE ROM: 0x15\n; =========================================================", + "file": "bank_00.asm" + }, + { + "name": "NULL_0098AB", + "code": "NULL_0098AB:\n #_0098AB: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0098B3: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0098BB: db $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DungeonMask", + "code": "DungeonMask:\n #_0098C0: dw $8000 ; Sewers\n #_0098C2: dw $4000 ; Hyrule Castle\n #_0098C4: dw $2000 ; Eastern Palace\n #_0098C6: dw $1000 ; Desert Palace\n", + "file": "bank_00.asm" + }, + { + "name": "DoorFlagMasks", + "code": "DoorFlagMasks:\n #_0098C8: dw $0800 ; Agahnim's Tower\n #_0098CA: dw $0400 ; Swamp Palace\n #_0098CC: dw $0200 ; Palace of Darkness\n #_0098CE: dw $0100 ; Misery Mire\n #_0098D0: dw $0080 ; Skull Woods\n #_0098D2: dw $0040 ; Ice Palace\n #_0098D4: dw $0020 ; Tower of Hera\n #_0098D6: dw $0010 ; Thieves' Town\n #_0098D8: dw $0008 ; Turtle Rock\n #_0098DA: dw $0004 ; Ganon's Tower\n #_0098DC: dw $0002 ; Unused\n #_0098DE: dw $0001 ; Unused\n", + "file": "bank_00.asm" + }, + { + "name": "DungeonMaskInverted", + "code": "DungeonMaskInverted:\n #_0098E0: dw $7FFF ; Sewers\n #_0098E2: dw $BFFF ; Hyrule Castle\n #_0098E4: dw $DFFF ; Eastern Palace\n #_0098E6: dw $EFFF ; Desert Palace\n #_0098E8: dw $F7FF ; Agahnim's Tower\n #_0098EA: dw $FBFF ; Swamp Palace\n #_0098EC: dw $FDFF ; Palace of Darkness\n #_0098EE: dw $FEFF ; Misery Mire\n #_0098F0: dw $FF7F ; Skull Woods\n #_0098F2: dw $FFBF ; Ice Palace\n #_0098F4: dw $FFDF ; Tower of Hera\n #_0098F6: dw $FFEF ; Thieves' Town\n #_0098F8: dw $FFF7 ; Turtle Rock\n #_0098FA: dw $FFFB ; Ganon's Tower\n #_0098FC: dw $FFFD ; Unused\n #_0098FE: dw $FFFE ; Unused\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomFlagMask", + "code": "RoomFlagMask:\n #_009900: dw $0100\n #_009902: dw $0200\n #_009904: dw $0400\n #_009906: dw $0800\n #_009908: dw $1000\n #_00990A: dw $2000\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomsWithPitDamage", + "code": "RoomsWithPitDamage:\n #_00990C: dw $0072 ; ROOM 0072\n #_00990E: dw $0082 ; ROOM 0082\n #_009910: dw $0040 ; ROOM 0040\n #_009912: dw $00C0 ; ROOM 00C0\n #_009914: dw $0112 ; ROOM 0112\n #_009916: dw $0056 ; ROOM 0056\n #_009918: dw $0057 ; ROOM 0057\n #_00991A: dw $0058 ; ROOM 0058\n #_00991C: dw $0067 ; ROOM 0067\n #_00991E: dw $0068 ; ROOM 0068\n #_009920: dw $0049 ; ROOM 0049\n #_009922: dw $0098 ; ROOM 0098\n #_009924: dw $00D1 ; ROOM 00D1\n #_009926: dw $00C3 ; ROOM 00C3\n #_009928: dw $00A3 ; ROOM 00A3\n #_00992A: dw $00A2 ; ROOM 00A2\n #_00992C: dw $0092 ; ROOM 0092\n #_00992E: dw $00A0 ; ROOM 00A0\n #_009930: dw $004E ; ROOM 004E\n #_009932: dw $007F ; ROOM 007F\n #_009934: dw $00AF ; ROOM 00AF\n #_009936: dw $00F0 ; ROOM 00F0\n #_009938: dw $00F1 ; ROOM 00F1\n #_00993A: dw $00E6 ; ROOM 00E6\n #_00993C: dw $00E7 ; ROOM 00E7\n #_00993E: dw $00C6 ; ROOM 00C6\n #_009940: dw $00C7 ; ROOM 00C7\n #_009942: dw $00D6 ; ROOM 00D6\n #_009944: dw $00B4 ; ROOM 00B4\n #_009946: dw $00B5 ; ROOM 00B5\n #_009948: dw $00C5 ; ROOM 00C5\n #_00994A: dw $0024 ; ROOM 0024\n #_00994C: dw $00D5 ; ROOM 00D5\n #_00994E: dw $00C9 ; ROOM 00C9\n #_009950: dw $002A ; ROOM 002A\n #_009952: dw $001A ; ROOM 001A\n #_009954: dw $004B ; ROOM 004B\n #_009956: dw $00BC ; ROOM 00BC\n #_009958: dw $0044 ; ROOM 0044\n #_00995A: dw $00FB ; ROOM 00FB\n #_00995C: dw $007B ; ROOM 007B\n #_00995E: dw $007C ; ROOM 007C\n #_009960: dw $008B ; ROOM 008B\n #_009962: dw $008D ; ROOM 008D\n #_009964: dw $009B ; ROOM 009B\n #_009966: dw $009C ; ROOM 009C\n #_009968: dw $009D ; ROOM 009D\n #_00996A: dw $00A5 ; ROOM 00A5\n #_00996C: dw $0095 ; ROOM 0095\n #_00996E: dw $001C ; ROOM 001C\n #_009970: dw $005C ; ROOM 005C\n #_009972: dw $007D ; ROOM 007D\n #_009974: dw $004C ; ROOM 004C\n #_009976: dw $0096 ; ROOM 0096\n #_009978: dw $0120 ; ROOM 0120\n #_00997A: dw $003C ; ROOM 003C\n #_00997C: dw $0123 ; ROOM 0123\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_NorthWall", + "code": "DoorTilemapPositions_NorthWall:\n #_00997E: dw $021C\n #_009980: dw $023C\n #_009982: dw $025C\n #_009984: dw $039C\n #_009986: dw $03BC\n #_009988: dw $03DC\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_NorthMiddle", + "code": "DoorTilemapPositions_NorthMiddle:\n #_00998A: dw $121C\n #_00998C: dw $123C\n #_00998E: dw $125C\n #_009990: dw $139C\n #_009992: dw $13BC\n #_009994: dw $13DC\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_SouthMiddle", + "code": "DoorTilemapPositions_SouthMiddle:\n #_009996: dw $0D1C\n #_009998: dw $0D3C\n #_00999A: dw $0D5C\n #_00999C: dw $0B9C\n #_00999E: dw $0BBC\n #_0099A0: dw $0BDC\n #_0099A2: dw $1D1C\n #_0099A4: dw $1D3C\n #_0099A6: dw $1D5C\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_LowerLayerEntrance", + "code": "DoorTilemapPositions_LowerLayerEntrance:\n #_0099A8: dw $1B9C\n #_0099AA: dw $1BBC\n #_0099AC: dw $1BDC\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_WestWall", + "code": "DoorTilemapPositions_WestWall:\n #_0099AE: dw $0784\n #_0099B0: dw $0F84\n #_0099B2: dw $1784\n #_0099B4: dw $078A\n #_0099B6: dw $0F8A\n #_0099B8: dw $178A\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_WestMiddle", + "code": "DoorTilemapPositions_WestMiddle:\n #_0099BA: dw $07C4\n #_0099BC: dw $0FC4\n #_0099BE: dw $17C4\n #_0099C0: dw $07CA\n #_0099C2: dw $0FCA\n #_0099C4: dw $17CA\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_EastMiddle", + "code": "DoorTilemapPositions_EastMiddle:\n #_0099C6: dw $07B4\n #_0099C8: dw $0FB4\n #_0099CA: dw $17B4\n #_0099CC: dw $07AE\n #_0099CE: dw $0FAE\n #_0099D0: dw $17AE\n", + "file": "bank_00.asm" + }, + { + "name": "DoorTilemapPositions_EastWall", + "code": "DoorTilemapPositions_EastWall:\n #_0099D2: dw $07F4\n #_0099D4: dw $0FF4\n #_0099D6: dw $17F4\n #_0099D8: dw $07EE\n #_0099DA: dw $0FEE\n #_0099DC: dw $17EE\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "ExplodingWallTilemapPosition", + "code": "ExplodingWallTilemapPosition:\n #_0099DE: dw $0D8A\n #_0099E0: dw $0DAA\n #_0099E2: dw $0DCA\n #_0099E4: dw $02B6\n #_0099E6: dw $0AB6\n #_0099E8: dw $12B6\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DetectStaircase", + "code": "DetectStaircase:\n\n.offset_y\n #_0099EA: dw $0007\n #_0099EC: dw $0018\n #_0099EE: dw $0008\n #_0099F0: dw $0008\n\n.offset_x\n #_0099F2: dw $0000\n #_0099F4: dw $0000\n #_0099F6: dw $FFFF\n #_0099F8: dw $0011\n\n.index_offset\n #_0099FA: dw $0002\n #_0099FC: dw $0002\n #_0099FE: dw $0080\n #_009A00: dw $0080\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DoorwayReplacementDoorGFX", + "code": "DoorwayReplacementDoorGFX:\n #_009A02: db $00, $00, $02, $00, $00, $00, $00, $00\n #_009A0A: db $00, $00, $00, $00, $00, $00, $00, $00\n #_009A12: db $00, $00, $12, $00, $00, $00, $00, $00\n #_009A1A: db $50, $00, $00, $00, $50, $00, $50, $00\n #_009A22: db $60, $00, $62, $00, $64, $00, $66, $00\n #_009A2A: db $52, $00, $5A, $00, $50, $00, $52, $00\n #_009A32: db $54, $00, $56, $00, $00, $00, $50, $00\n #_009A3A: db $50, $00, $00, $00, $00, $00, $00, $00\n #_009A42: db $40, $00, $58, $00, $58, $00, $00, $00\n #_009A4A: db $58, $00, $58, $00, $00, $00, $00, $00\n", + "file": "bank_00.asm" + }, + { + "name": "DoorwayTileProperties", + "code": "DoorwayTileProperties:\n #_009A52: db $80, $80, $84, $84, $00, $00, $01, $01\n #_009A5A: db $84, $84, $8E, $8E, $00, $00, $00, $00\n #_009A62: db $88, $88, $8E, $8E, $80, $80, $80, $80\n #_009A6A: db $82, $82, $80, $80, $80, $80, $80, $80\n #_009A72: db $80, $80, $80, $80, $80, $80, $80, $80\n #_009A7A: db $82, $82, $8E, $8E, $80, $80, $82, $82\n #_009A82: db $80, $80, $80, $80, $80, $80, $82, $82\n #_009A8A: db $82, $82, $80, $80, $80, $80, $80, $80\n #_009A92: db $84, $84, $84, $84, $86, $86, $88, $88\n #_009A9A: db $86, $86, $86, $86, $80, $80, $80, $80\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomDraw_DoorPartnerSelfLocation", + "code": "RoomDraw_DoorPartnerSelfLocation:\n #_009AA2: dw $0000, $0010, $0020, $0030, $0040, $0050\n #_009AAE: dw $0061, $0071, $0081, $0091, $00A1, $00B1\n #_009ABA: dw $0002, $0012, $0022, $0032, $0042, $0052\n #_009AC6: dw $0063, $0073, $0083, $0093, $00A3, $00B3\n", + "file": "bank_00.asm" + }, + { + "name": "RoomDraw_DoorPartnerLocation", + "code": "RoomDraw_DoorPartnerLocation:\n #_009AD2: dw $0061, $0071, $0081, $0091, $00A1, $00B1\n #_009ADE: dw $0000, $0010, $0020, $0030, $0040, $0050\n #_009AEA: dw $0063, $0073, $0083, $0093, $00A3, $00B3\n #_009AF6: dw $0002, $0012, $0022, $0032, $0042, $0052\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomDraw_QuadrantDataOffset", + "code": "RoomDraw_QuadrantDataOffset:\n #_009B02: dw $0000\n #_009B04: dw $0040\n #_009B06: dw $1000\n #_009B08: dw $1040\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomDraw_MovingWallDirection", + "code": "RoomDraw_MovingWallDirection:\n #_009B0A: dw $0005\n #_009B0C: dw $0007\n #_009B0E: dw $000B\n #_009B10: dw $000F\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "MovingWallObjectCount", + "code": "MovingWallObjectCount:\n #_009B12: dw $0008\n #_009B14: dw $0010\n #_009B16: dw $0018\n #_009B18: dw $0020\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "MovingWallEastBoundaries", + "code": "MovingWallEastBoundaries:\n #_009B1A: dw $FFC1\n #_009B1C: dw $FF81\n #_009B1E: dw $FF41\n #_009B20: dw $FF01\n\n #_009B22: dw $FFB9\n #_009B24: dw $FF79\n #_009B26: dw $FF39\n #_009B28: dw $FEF9\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "MovingWallWestBoundaries", + "code": "MovingWallWestBoundaries:\n #_009B2A: dw $0042\n #_009B2C: dw $0082\n #_009B2E: dw $00C2\n #_009B30: dw $0102\n\n #_009B32: dw $004A\n #_009B34: dw $008A\n #_009B36: dw $00CA\n #_009B38: dw $010A\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "WaterOverlayHDMAPositionOffset", + "code": "WaterOverlayHDMAPositionOffset:\n #_009B3A: dw $0002\n #_009B3C: dw $0003\n #_009B3E: dw $0004\n #_009B40: dw $0005\n", + "file": "bank_00.asm" + }, + { + "name": "WaterOverlayHDMASize", + "code": "WaterOverlayHDMASize:\n #_009B42: dw $0020\n #_009B44: dw $0030\n", + "file": "bank_00.asm" + }, + { + "name": "WaterOverlayObjectCount", + "code": "WaterOverlayObjectCount:\n #_009B46: dw $0040\n #_009B48: dw $0050\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "UNREACHABLE_009B4A", + "code": "UNREACHABLE_009B4A:\n #_009B4A: dw $0003, $0005, $0007, $0009\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "RoomDrawObjectData", + "code": "RoomDrawObjectData:\n\n; ---------------------------------------------------------\n\n#obj0000:\n #_009B52: dw $14EE, $14EF, $14EE, $14EF\n #_009B5A: dw $14FE, $14FF, $14FE, $14FF\n\n; ---------------------------------------------------------\n\n#obj0010:\n #_009B62: dw $0CEE, $0CEF, $0CEE, $0CEF\n #_009B6A: dw $0CFE, $0CFF, $0CFE, $0CFF\n\n; ---------------------------------------------------------\n\n#obj0020:\n #_009B72: dw $0CEC, $0CED, $0CEC, $0CED\n #_009B7A: dw $0CFC, $0CFD, $0CFC, $0CFD\n\n; ---------------------------------------------------------\n\n#obj0030:\n #_009B82: dw $14EC, $14ED, $14EC, $14ED\n #_009B8A: dw $14FC, $14FD, $14FC, $14FD\n\n; ---------------------------------------------------------\n\n#obj0040:\n #_009B92: dw $18EE, $18EF, $18EE, $18EF\n #_009B9A: dw $18FE, $18FF, $18FE, $18FF\n\n; ---------------------------------------------------------\n\n#obj0050:\n #_009BA2: dw $10EE, $10EF, $10EE, $10EF\n #_009BAA: dw $10FE, $10FF, $10FE, $10FF\n\n; ---------------------------------------------------------\n\n#obj0060:\n #_009BB2: dw $10EC, $10ED, $10EC, $10ED\n #_009BBA: dw $10FC, $10FD, $10FC, $10FD\n\n; ---------------------------------------------------------\n\n#obj0070:\n #_009BC2: dw $18EC, $18ED, $18EC, $18ED\n #_009BCA: dw $18FC, $18FD, $18FC, $18FD\n\n; ---------------------------------------------------------\n\n#obj0080:\n #_009BD2: dw $10C1, $10C1, $10C1, $10C1\n #_009BDA: dw $10C1, $10C1, $10C1, $10C1\n\n; ---------------------------------------------------------\n\n#obj0090:\n #_009BE2: dw $18CA, $18CB, $18CA, $18CB\n #_009BEA: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj00A0:\n #_009BF2: dw $18C9, $18C9, $18C9, $18C9\n #_009BFA: dw $18C9, $18C9, $18C9, $18C9\n\n; ---------------------------------------------------------\n\n#obj00B0:\n #_009C02: dw $1DB6, $1DB7, $1DB6, $1DB7\n #_009C0A: dw $1DB8, $1DB9, $1DB8, $1DB9\n\n; ---------------------------------------------------------\n\n#obj00C0:\n #_009C12: dw $1DAE, $1DAF, $1DAE, $1DAF\n #_009C1A: dw $1DBE, $1DBF, $1DBE, $1DBF\n\n; ---------------------------------------------------------\n\n#obj00D0:\n #_009C22: dw $090C, $490C, $090C, $490C\n #_009C2A: dw $890C, $C90C, $890C, $C90C\n\n; ---------------------------------------------------------\n\n#obj00E0:\n #_009C32: dw $01EC, $01EC, $01EC, $01EC\n #_009C3A: dw $01EC, $01EC, $01EC, $01EC\n\n; ---------------------------------------------------------\n\n#obj00F0:\n #_009C42: dw $01EB, $01EB, $01EB, $01EB\n #_009C4A: dw $01EB, $01EB, $01EB, $01EB\n\n; ---------------------------------------------------------\n\n#obj0100:\n #_009C52: dw $1DBA, $1DBB, $1DBA, $1DBB\n #_009C5A: dw $1DBC, $1DBD, $1DBC, $1DBD\n\n; ---------------------------------------------------------\n\n#obj0110:\n #_009C62: dw $1DB6, $1DB7, $1DB6, $1DB7\n #_009C6A: dw $1DB8, $1DB9, $1DB8, $1DB9\n\n; ---------------------------------------------------------\n\n#obj0120:\n #_009C72: dw $1DB0, $1DB1, $1DB0, $1DB1\n #_009C7A: dw $9DB0, $9DB1, $9DB0, $9DB1\n\n; ---------------------------------------------------------\n\n#obj0130:\n #_009C82: dw $1DBA, $1DBB, $1DBA, $1DBB\n #_009C8A: dw $1DBC, $1DBD, $1DBC, $1DBD\n\n; ---------------------------------------------------------\n\n#obj0140:\n #_009C92: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj0148:\n #_009C9A: dw $1DA6, $5DA6, $1DA6, $5DA6\n #_009CA2: dw $9DA6, $DDA6, $9DA6, $DDA6\n\n; ---------------------------------------------------------\n\n#obj0158:\n #_009CAA: dw $08D0, $08D0, $08D0, $08D0\n #_009CB2: dw $08D0, $08D0, $08D0, $08D0\n\n; ---------------------------------------------------------\n\n#obj0168:\n #_009CBA: dw $18CA, $18CB, $18CA, $18CB\n #_009CC2: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj0178:\n #_009CCA: dw $0C62, $0C63, $0C62, $0C63\n #_009CD2: dw $0C62, $0C63, $0C62, $0C63\n\n; ---------------------------------------------------------\n\n#obj0188:\n #_009CDA: dw $0DCC, $0DCC, $0DCC, $0DCC\n #_009CE2: dw $0DCC, $0DCC, $0DCC, $0DCC\n\n; ---------------------------------------------------------\n\n#obj0198:\n #_009CEA: dw $090D, $091D, $490D, $491D\n\n; ---------------------------------------------------------\n\n#obj01A0:\n #_009CF2: dw $10EC, $10ED, $10EC, $10ED\n #_009CFA: dw $10FC, $10FD, $10FC, $10FD\n\n; ---------------------------------------------------------\n\n#obj01B0:\n #_009D02: dw $090C, $490C, $090C, $490C\n #_009D0A: dw $890C, $C90C, $890C, $C90C\n\n; ---------------------------------------------------------\n\n#obj01C0:\n #_009D12: dw $190F, $190F, $190F, $190F\n #_009D1A: dw $190F, $190F, $190F, $190F\n\n; ---------------------------------------------------------\n\n#obj01D0:\n #_009D22: dw $09BE, $49BE, $09BE, $49BE\n #_009D2A: dw $09BE, $49BE, $09BE, $49BE\n\n; ---------------------------------------------------------\n\n#obj01E0:\n #_009D32: dw $09BF, $49BF, $09BF, $49BF\n #_009D3A: dw $09BF, $49BF, $09BF, $49BF\n\n; ---------------------------------------------------------\n\n#obj01F0:\n #_009D42: dw $09B1, $09B1, $09B1, $09B1\n #_009D4A: dw $89B1, $89B1, $89B1, $89B1\n\n; ---------------------------------------------------------\n\n#obj0200:\n #_009D52: dw $09B0, $09B0, $09B0, $09B0\n #_009D5A: dw $89B0, $89B0, $89B0, $89B0\n\n; ---------------------------------------------------------\n\n#obj0210:\n #_009D62: dw $0982, $0992, $0983, $0993\n\n; ---------------------------------------------------------\n\n#obj0218:\n #_009D6A: dw $4983, $4993, $4982, $4992\n\n; ---------------------------------------------------------\n\n#obj0220:\n #_009D72: dw $0CCC, $0CCD, $0CDC, $0CCE\n\n#obj0228:\n #_009D7A: dw $0CCC, $0CCF, $0CDC, $0CDD\n\n#obj0230:\n #_009D82: dw $0CCC, $0CCD, $0CDE, $0CDD\n\n#obj0238:\n #_009D8A: dw $0CDF, $0CCD, $0CDC, $0CDD\n\n #_009D92: dw $0CCC, $0CDC, $0CCD, $0CCE\n #_009D9A: dw $0CCC, $0CDC, $0CCF, $0CDD\n #_009DA2: dw $0CCC, $0CDE, $0CCD, $0CDD\n #_009DAA: dw $0CDF, $0CDC, $0CCD, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0260:\n #_009DB2: dw $0CCC, $0CCD, $0CCC, $0CCD\n #_009DBA: dw $0CDC, $0CDD, $0CDC, $0CDD\n #_009DC2: dw $0CCC, $0CCD, $0CCC, $0CCD\n #_009DCA: dw $0CDC, $0CDD, $0CDC, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0280:\n #_009DD2: dw $0CCC, $0CDC, $0CCD, $0CDD\n\n; ---------------------------------------------------------\n\n#obj0288:\n #_009DDA: dw $1C13, $1C41, $1C13, $1C41\n #_009DE2: dw $1C40, $1C42, $1C40, $1C42\n #_009DEA: dw $1C13, $1C41, $1C13, $1C41\n #_009DF2: dw $1C40, $1C42, $1C40, $1C42\n\n; ---------------------------------------------------------\n\n#obj02A8:\n #_009DFA: dw $1576, $1577, $1576, $1577\n #_009E02: dw $1578, $1579, $1578, $1579\n #_009E0A: dw $1576, $1577, $1576, $1577\n #_009E12: dw $1578, $1579, $1578, $1579\n\n; ---------------------------------------------------------\n\n#obj02C8:\n #_009E1A: dw $0892, $0898, $08A4, $0CAD\n #_009E22: dw $0893, $0899, $08A5, $8CAD\n\n; ---------------------------------------------------------\n\n#obj02D8:\n #_009E2A: dw $4CAD, $48A4, $4898, $4892\n #_009E32: dw $CCAD, $48A5, $4899, $4893\n\n; ---------------------------------------------------------\n\n#obj02E8:\n #_009E3A: dw $0890, $0896, $08A2, $0CAC\n #_009E42: dw $0891, $0897, $08A3, $4CAC\n\n; ---------------------------------------------------------\n\n#obj02F8:\n #_009E4A: dw $8CAC, $88A2, $8896, $8890\n #_009E52: dw $CCAC, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj0308:\n #_009E5A: dw $0843, $0844, $0871, $90AD\n #_009E62: dw $0853, $0854, $0871, $10AD\n\n; ---------------------------------------------------------\n\n#obj0318:\n #_009E6A: dw $D0AD, $4871, $4844, $4843\n #_009E72: dw $50AD, $4871, $4854, $4853\n\n; ---------------------------------------------------------\n\n#obj0328:\n #_009E7A: dw $0850, $0860, $0870, $50AC\n #_009E82: dw $0851, $0861, $0870, $10AC\n\n; ---------------------------------------------------------\n\n#obj0338:\n #_009E8A: dw $D0AC, $8870, $8860, $8850\n #_009E92: dw $90AC, $8870, $8861, $8851\n #_009E9A: dw $1C6B, $1C6B, $1C6B, $1C6B\n #_009EA2: dw $1C6C, $1C8D, $5C8D, $5C6C\n #_009EAA: dw $5C6B, $5C6B, $5C6B, $5C6B\n #_009EB2: dw $1C6A, $1C6A, $1C6A, $1C6A\n #_009EBA: dw $1C7A, $1C8E, $9C8E, $9C7A\n #_009EC2: dw $9C6A, $9C6A, $9C6A, $9C6A\n\n; ---------------------------------------------------------\n\n#obj0378:\n #_009ECA: dw $1C6B, $1C6B, $1C6C, $1C6C\n\n; ---------------------------------------------------------\n\n#obj0380:\n #_009ED2: dw $5C6C, $5C6C, $5C6B, $5C6B\n\n; ---------------------------------------------------------\n\n#obj0388:\n #_009EDA: dw $1C6A, $1C7A, $1C6A, $1C7A\n\n; ---------------------------------------------------------\n\n#obj0390:\n #_009EE2: dw $9C7A, $9C6A, $9C7A, $9C6A\n\n; ---------------------------------------------------------\n\n#obj0398:\n #_009EEA: dw $1C7B, $1C6B, $1C6A, $1C45\n\n; ---------------------------------------------------------\n\n#obj03A0:\n #_009EF2: dw $1C6B, $9C7B, $9C45, $9C6A\n\n; ---------------------------------------------------------\n\n#obj03A8:\n #_009EFA: dw $1C6A, $5C45, $5C7B, $5C6B\n\n; ---------------------------------------------------------\n\n#obj03B0:\n #_009F02: dw $DC45, $9C6A, $5C6B, $DC7B\n\n; ---------------------------------------------------------\n\n#obj03B8:\n #_009F0A: dw $1C7C, $1C7A, $1C6C, $1C55\n\n; ---------------------------------------------------------\n\n#obj03C0:\n #_009F12: dw $9C7A, $9C7C, $9C55, $1C6C\n\n; ---------------------------------------------------------\n\n#obj03C8:\n #_009F1A: dw $5C6C, $5C55, $5C7C, $1C7A\n\n; ---------------------------------------------------------\n\n#obj03D0:\n #_009F22: dw $DC55, $5C6C, $9C7A, $DC7C\n\n; ---------------------------------------------------------\n\n#obj03D8:\n #_009F2A: dw $3C15, $3C15, $3C15, $3C15\n\n; ---------------------------------------------------------\n\n#obj03E0:\n #_009F32: dw $0951, $0961, $0941, $0971\n #_009F3A: dw $8951, $8961, $8941, $8971\n\n; ---------------------------------------------------------\n\n#obj03F0:\n #_009F42: dw $4971, $4941, $4961, $4951\n #_009F4A: dw $C971, $C941, $C961, $C951\n\n; ---------------------------------------------------------\n\n#obj0400:\n #_009F52: dw $0950, $0960, $0940, $0970\n #_009F5A: dw $4950, $4960, $4940, $4970\n\n; ---------------------------------------------------------\n\n#obj0410:\n #_009F62: dw $8970, $8940, $8960, $8950\n #_009F6A: dw $C970, $C940, $C960, $C950\n\n; ---------------------------------------------------------\n\n#obj0420:\n #_009F72: dw $0880, $0881, $089A, $089B\n #_009F7A: dw $14AB\n\n; ---------------------------------------------------------\n\n#obj042A:\n #_009F7C: dw $94AB, $889B, $889A, $8881\n #_009F84: dw $8880\n\n; ---------------------------------------------------------\n\n#obj0434:\n #_009F86: dw $4880, $4881, $489A, $489B\n #_009F8E: dw $54AB\n\n; ---------------------------------------------------------\n\n#obj043E:\n #_009F90: dw $D4AB, $C89B, $C89A, $C881\n #_009F98: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0448:\n #_009F9A: dw $0880, $0881, $089A, $089B\n #_009FA2: dw $0CAB\n\n; ---------------------------------------------------------\n\n#obj0452:\n #_009FA4: dw $8CAB, $889B, $889A, $8881\n #_009FAC: dw $8880\n\n; ---------------------------------------------------------\n\n#obj045C:\n #_009FAE: dw $4880, $4881, $489A, $489B\n #_009FB6: dw $4CAB\n\n; ---------------------------------------------------------\n\n#obj0466:\n #_009FB8: dw $CCAB, $C89B, $C89A, $C881\n #_009FC0: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0470:\n #_009FC2: dw $0880, $0881, $089A, $089B\n #_009FCA: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj047A:\n #_009FCC: dw $90AB, $889B, $889A, $8881\n #_009FD4: dw $8880\n\n; ---------------------------------------------------------\n\n#obj0484:\n #_009FD6: dw $4880, $4881, $489A, $489B\n #_009FDE: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj048E:\n #_009FE0: dw $D0AB, $C89B, $C89A, $C881\n #_009FE8: dw $C880\n\n; ---------------------------------------------------------\n\n#obj0498:\n #_009FEA: dw $0849, $084A, $084B, $089C\n #_009FF2: dw $18AB\n\n; ---------------------------------------------------------\n\n#obj04A2:\n #_009FF4: dw $98AB, $889C, $884B, $884A\n #_009FFC: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04AC:\n #_009FFE: dw $4849, $484A, $484B, $489C\n #_00A006: dw $58AB\n\n; ---------------------------------------------------------\n\n#obj04B6:\n #_00A008: dw $D8AB, $C89C, $C84B, $C84A\n #_00A010: dw $C849\n\n; ---------------------------------------------------------\n\n#obj04C0:\n #_00A012: dw $0849, $084A, $084B, $089C\n #_00A01A: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj04CA:\n #_00A01C: dw $90AB, $889C, $884B, $884A\n #_00A024: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04D4:\n #_00A026: dw $4849, $484A, $484B, $489C\n #_00A02E: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj04DE:\n #_00A030: dw $D0AB, $C89C, $C84B, $C84A\n #_00A038: dw $C849\n\n; ---------------------------------------------------------\n\n#obj04E8:\n #_00A03A: dw $0849, $084A, $084B, $089C\n #_00A042: dw $10AB\n\n; ---------------------------------------------------------\n\n#obj04F2:\n #_00A044: dw $90AB, $889C, $884B, $884A\n #_00A04C: dw $8849\n\n; ---------------------------------------------------------\n\n#obj04FC:\n #_00A04E: dw $4849, $484A, $484B, $489C\n #_00A056: dw $50AB\n\n; ---------------------------------------------------------\n\n#obj0506:\n #_00A058: dw $D0AB, $C89C, $C84B, $C84A\n #_00A060: dw $C849\n\n; ---------------------------------------------------------\n\n#obj0510:\n #_00A062: dw $1DAA, $1DAC, $1DAC, $1D8B\n #_00A06A: dw $1DAD, $1D8C, $1D8B, $1DAF\n #_00A072: dw $1DA5, $1D8B, $1DAF, $1DA6\n #_00A07A: dw $1D8B, $1DAF, $1DA6, $1D8B\n #_00A082: dw $1DAF, $5DA5, $1D8B, $5DAD\n #_00A08A: dw $5D8C, $5DAA, $5DAC, $5DAC\n #_00A092: dw $1DAC, $1D8C, $1DA7, $1DAC\n #_00A09A: dw $1D8C, $1DA7, $1DA9, $1DA9\n #_00A0A2: dw $1DA9, $1DA9, $5DA7, $5D8C\n #_00A0AA: dw $5DAC, $5DA7, $5D8C, $5DAC\n #_00A0B2: dw $1DAC, $1DAC, $1DAB, $1D8C\n #_00A0BA: dw $1D9C, $1D9B, $9DA5, $1DAE\n #_00A0C2: dw $1D9B, $9DA6, $1DAE, $1D9B\n #_00A0CA: dw $9DA6, $1DAE, $1D9B, $DDA5\n #_00A0D2: dw $1DAE, $1D9B, $5D8C, $5D9C\n #_00A0DA: dw $1D9B, $5DAC, $5DAC, $5DAB\n\n; ---------------------------------------------------------\n\n#obj0590:\n #_00A0E2: dw $1DA8, $9DA8, $5DA8, $DDA8\n\n; ---------------------------------------------------------\n\n#obj0598:\n #_00A0EA: dw $1D9D, $1D8D, $1D8D, $1D72\n #_00A0F2: dw $1D72, $1D72, $5D9D, $5D8D\n #_00A0FA: dw $5D8D\n\n; ---------------------------------------------------------\n\n#obj05AA:\n #_00A0FC: dw $01E9, $01E9, $01E9, $01E9\n\n; ---------------------------------------------------------\n\n#obj05B2:\n #_00A104: dw $18C9, $18C9, $18C9, $18C9\n\n; ---------------------------------------------------------\n\n#obj05BA:\n #_00A10C: dw $09DA, $09DE, $09DB, $01E9\n #_00A114: dw $09DB, $01E9, $49DA, $49DE\n #_00A11C: dw $09DE, $09DC, $01E9, $09DD\n #_00A124: dw $01E9, $09DD, $49DE, $49DC\n\n; ---------------------------------------------------------\n\n#obj05DA:\n #_00A12C: dw $09DB, $01E9, $01E9, $09DD\n #_00A134: dw $09DB, $01E9, $01E9, $09DD\n #_00A13C: dw $09DB, $01E9, $01E9, $09DD\n #_00A144: dw $09DB, $01E9, $01E9, $09DD\n\n; ---------------------------------------------------------\n\n#obj05FA:\n #_00A14C: dw $08E1, $08E3, $08E1\n\n; ---------------------------------------------------------\n\n#obj0600:\n #_00A152: dw $08E1, $08E2, $08E1\n\n; ---------------------------------------------------------\n\n#obj0606:\n #_00A158: dw $08E0, $08F0, $48E0, $48F0\n #_00A160: dw $08F3, $48F3, $08E0, $08F1\n #_00A168: dw $08E4, $48E0, $48F1, $48E4\n\n; ---------------------------------------------------------\n\n#obj061E:\n #_00A170: dw $08E0, $08F1, $08E4, $48E0\n #_00A178: dw $48F1, $48E4, $08F4, $08F2\n #_00A180: dw $08E5, $08E0, $08F1, $08E4\n #_00A188: dw $48E0, $48F1, $48E4\n\n; ---------------------------------------------------------\n\n#obj063C:\n #_00A18E: dw $09DA, $09DB, $49DA\n\n; ---------------------------------------------------------\n\n#obj0642:\n #_00A194: dw $09DC, $09DD, $49DC\n\n; ---------------------------------------------------------\n\n#obj0648:\n #_00A19A: dw $09DE\n\n; ---------------------------------------------------------\n\n#obj064A:\n #_00A19C: dw $49DE\n\n; ---------------------------------------------------------\n\n#obj064C:\n #_00A19E: dw $09DF, $09DD, $49DF\n\n; ---------------------------------------------------------\n\n#obj0652:\n #_00A1A4: dw $89DF, $09DB, $C9DF\n\n; ---------------------------------------------------------\n\n#obj0658:\n #_00A1AA: dw $09DF, $09DD, $49DC\n\n; ---------------------------------------------------------\n\n#obj065E:\n #_00A1B0: dw $09DC, $09DD, $49DF\n\n; ---------------------------------------------------------\n\n#obj0664:\n #_00A1B6: dw $89DF, $09DB, $49DA\n\n; ---------------------------------------------------------\n\n#obj066A:\n #_00A1BC: dw $09DA, $09DB, $C9DF\n\n; ---------------------------------------------------------\n\n#obj0670:\n #_00A1C2: dw $08E3, $4846, $4843, $4869\n #_00A1CA: dw $4853, $C846\n\n; ---------------------------------------------------------\n\n#obj067C:\n #_00A1CE: dw $08E3, $0846, $0843, $0869\n #_00A1D6: dw $0853, $8846\n\n; ---------------------------------------------------------\n\n#obj0688:\n #_00A1DA: dw $08E2, $8846, $8850, $8868\n #_00A1E2: dw $8851, $C846\n\n; ---------------------------------------------------------\n\n#obj0694:\n #_00A1E6: dw $08E2, $0846, $0850, $0868\n #_00A1EE: dw $0851, $4846\n\n; ---------------------------------------------------------\n\n#obj06A0:\n #_00A1F2: dw $0852\n\n; ---------------------------------------------------------\n\n#obj06A2:\n #_00A1F4: dw $4852\n\n; ---------------------------------------------------------\n\n#obj06A4:\n #_00A1F6: dw $085C\n\n; ---------------------------------------------------------\n\n#obj06A6:\n #_00A1F8: dw $885C\n\n; ---------------------------------------------------------\n\n#obj06A8:\n #_00A1FA: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A202: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A20A: dw $1CC6, $1CC6, $1CC6, $1CC6\n #_00A212: dw $1CC6, $1CC6, $1CC6, $1CC6\n\n; ---------------------------------------------------------\n\n#obj06C8:\n #_00A21A: dw $0973, $28A0, $28A1, $A8A1\n #_00A222: dw $A8A0, $0867, $09EF, $09EF\n #_00A22A: dw $8867, $0865, $085A, $885A\n #_00A232: dw $8865, $4865, $485A, $C85A\n #_00A23A: dw $C865, $4867, $09EF, $09EF\n #_00A242: dw $C867, $68A0, $68A1, $E8A1\n #_00A24A: dw $E8A0, $28A0, $28A1, $A8A1\n #_00A252: dw $A8A0, $0867, $09EF, $09EF\n #_00A25A: dw $8867, $0865, $085A, $885A\n #_00A262: dw $8865, $4865, $485A, $C85A\n #_00A26A: dw $C865, $4867, $09EF, $09EF\n #_00A272: dw $C867, $68A0, $68A1, $E8A1\n #_00A27A: dw $E8A0\n\n; ---------------------------------------------------------\n\n#obj072A:\n #_00A27C: dw $294E, $2893, $0892, $01EC\n #_00A284: dw $295E, $0898, $01EC, $01EC\n #_00A28C: dw $096E, $0893, $0899, $08A5\n #_00A294: dw $0892, $0898, $08A4, $0893\n #_00A29C: dw $A893, $A94E, $0899, $A95E\n #_00A2A4: dw $01EC, $896E, $01EC, $01EC\n\n; ---------------------------------------------------------\n\n#obj075A:\n #_00A2AC: dw $01EC, $01EC, $496E, $01EC\n #_00A2B4: dw $695E, $4898, $694E, $6893\n #_00A2BC: dw $4892, $48A5, $4899, $4893\n #_00A2C4: dw $48A4, $4898, $4892, $C96E\n #_00A2CC: dw $01EC, $01EC, $4899, $E95E\n #_00A2D4: dw $01EC, $4893, $E893, $E94E\n\n; ---------------------------------------------------------\n\n#obj078A:\n #_00A2DC: dw $096E, $1148, $1168, $1159\n #_00A2E4: dw $496E, $1149, $1169, $5159\n #_00A2EC: dw $096E, $5149, $5169, $1159\n #_00A2F4: dw $496E, $5148, $5168, $5159\n\n; ---------------------------------------------------------\n\n#obj07AA:\n #_00A2FC: dw $097E, $897E, $097E, $897E\n #_00A304: dw $11AE, $1146, $9146, $91AE\n #_00A30C: dw $11AF, $1166, $9166, $91AF\n #_00A314: dw $1156, $9156, $1156, $9156\n\n; ---------------------------------------------------------\n\n#obj07CA:\n #_00A31C: dw $5156, $D156, $5156, $D156\n #_00A324: dw $51AF, $1167, $9167, $D1AF\n #_00A32C: dw $51AE, $1147, $9147, $D1AE\n #_00A334: dw $497E, $C97E, $497E, $C97E\n\n; ---------------------------------------------------------\n\n#obj07EA:\n #_00A33C: dw $096E, $115E, $1178, $1158\n #_00A344: dw $496E, $114E, $1177, $1174\n #_00A34C: dw $096E, $114E, $5177, $5174\n #_00A354: dw $496E, $515E, $5178, $5158\n\n; ---------------------------------------------------------\n\n#obj080A:\n #_00A35C: dw $097E, $897E, $097E, $897E\n #_00A364: dw $11AC, $11AD, $11AD, $91AC\n #_00A36C: dw $1179, $1176, $9176, $9179\n #_00A374: dw $1157, $1175, $9175, $9157\n\n; ---------------------------------------------------------\n\n#obj082A:\n #_00A37C: dw $5157, $5175, $D175, $D157\n #_00A384: dw $5179, $5176, $D176, $D179\n #_00A38C: dw $51AC, $51AD, $51AD, $D1AC\n #_00A394: dw $497E, $C97E, $497E, $C97E\n\n; ---------------------------------------------------------\n\n#obj084A:\n #_00A39C: dw $28E7, $28F7, $28E6, $08F6\n #_00A3A4: dw $68E7, $68F7, $68E6, $48F6\n\n; ---------------------------------------------------------\n\n#obj085A:\n #_00A3AC: dw $2DC2, $2DC3, $2D2C, $0D3C\n #_00A3B4: dw $6DC2, $6DC3, $6D2C, $4D3C\n\n; ---------------------------------------------------------\n\n#obj086A:\n #_00A3BC: dw $0942, $1162, $1152, $0943\n #_00A3C4: dw $1163, $1153, $4943, $5163\n #_00A3CC: dw $5153, $4942, $5162, $5152\n\n; ---------------------------------------------------------\n\n#obj0882:\n #_00A3D4: dw $9152, $9162, $8942, $9153\n #_00A3DC: dw $9163, $8943, $D153, $D163\n #_00A3E4: dw $C943, $D152, $D162, $C942\n\n; ---------------------------------------------------------\n\n#obj089A:\n #_00A3EC: dw $0944, $0954, $8954, $8944\n #_00A3F4: dw $1164, $1165, $9165, $9164\n #_00A3FC: dw $1145, $1155, $9155, $9145\n\n; ---------------------------------------------------------\n\n#obj08B2:\n #_00A404: dw $5145, $5155, $D155, $D145\n #_00A40C: dw $5164, $5165, $D165, $D164\n #_00A414: dw $4944, $4954, $C954, $C944\n\n; ---------------------------------------------------------\n\n#obj08CA:\n #_00A41C: dw $1548, $1549, $5548, $5549\n #_00A424: dw $1548, $1549, $5548, $5549\n\n; ---------------------------------------------------------\n\n#obj08DA:\n #_00A42C: dw $1587, $1588, $5588, $5587\n #_00A434: dw $1597, $1598, $5598, $5597\n #_00A43C: dw $1589, $158A, $558A, $5589\n #_00A444: dw $1599, $159A, $559A, $5599\n\n; ---------------------------------------------------------\n\n#obj08FA:\n #_00A44C: dw $0980, $0990, $4980, $4990\n\n; ---------------------------------------------------------\n\n#obj0902:\n #_00A454: dw $8990, $8980, $C990, $C980\n\n; ---------------------------------------------------------\n\n#obj090A:\n #_00A45C: dw $0981, $8981, $0991, $8991\n\n; ---------------------------------------------------------\n\n#obj0912:\n #_00A464: dw $4991, $C991, $4981, $C981\n\n; ---------------------------------------------------------\n\n#obj091A:\n #_00A46C: dw $1DFE, $1DFC, $5DFE\n\n; ---------------------------------------------------------\n\n#obj0920:\n #_00A472: dw $9DFE, $9DFC, $DDFE\n\n; ---------------------------------------------------------\n\n#obj0926:\n #_00A478: dw $1DFD\n\n; ---------------------------------------------------------\n\n#obj0928:\n #_00A47A: dw $5DFD\n\n; ---------------------------------------------------------\n\n#obj092A:\n #_00A47C: dw $DDFF, $9DFC, $9DFF\n\n; ---------------------------------------------------------\n\n#obj0930:\n #_00A482: dw $5DFF, $1DFC, $1DFF\n\n; ---------------------------------------------------------\n\n#obj0936:\n #_00A488: dw $DDFF, $9DFC, $DDFE\n\n; ---------------------------------------------------------\n\n#obj093C:\n #_00A48E: dw $9DFE, $9DFC, $9DFF\n\n; ---------------------------------------------------------\n\n#obj0942:\n #_00A494: dw $5DFF, $1DFC, $5DFE\n\n; ---------------------------------------------------------\n\n#obj0948:\n #_00A49A: dw $1DFE, $1DFC, $1DFF\n\n; ---------------------------------------------------------\n\n#obj094E:\n #_00A4A0: dw $1DF7, $1C40, $1C41, $1C42\n #_00A4A8: dw $1DB5, $1DB2, $1DB3, $1DB3\n #_00A4B0: dw $1DB4, $1DB5, $5DF7, $5C40\n #_00A4B8: dw $5C41, $5C42, $5DB5\n\n; ---------------------------------------------------------\n\n#obj096C:\n #_00A4BE: dw $1DF7, $1C40, $1DB5, $1DB2\n #_00A4C6: dw $1DB3, $1DB5, $5DF7, $5C40\n #_00A4CE: dw $5DB5\n\n; ---------------------------------------------------------\n\n#obj097E:\n #_00A4D0: dw $0C14, $0C14, $0C14, $0C14\n #_00A4D8: dw $8C14, $8C14, $8C14, $8C14\n\n; ---------------------------------------------------------\n\n#obj098E:\n #_00A4E0: dw $0C64, $0C66, $0C64, $0C66\n #_00A4E8: dw $0C64, $0C66, $0C64, $0C66\n\n; ---------------------------------------------------------\n\n#obj099E:\n #_00A4F0: dw $0D46, $0D56, $157E, $0D47\n #_00A4F8: dw $0D57, $157F, $4D46, $4D56\n #_00A500: dw $557E\n\n; ---------------------------------------------------------\n\n#obj09B0:\n #_00A502: dw $0D46, $4D46, $8DAB, $4DAB\n\n; ---------------------------------------------------------\n\n#obj09B8:\n #_00A50A: dw $0D46, $0DAB, $0D47, $4DAD\n\n; ---------------------------------------------------------\n\n#obj09C0:\n #_00A512: dw $0DAB, $0D56, $4DAC, $0D57\n\n; ---------------------------------------------------------\n\n#obj09C8:\n #_00A51A: dw $0D47, $0DAD, $4D46, $4DAB\n\n; ---------------------------------------------------------\n\n#obj09D0:\n #_00A522: dw $0DAC, $0D57, $4DAB, $4D56\n\n; ---------------------------------------------------------\n\n#obj09D8:\n #_00A52A: dw $0940, $0960, $0950, $0970\n #_00A532: dw $0941, $0961, $0951, $0971\n #_00A53A: dw $4941, $4961, $4951, $4971\n #_00A542: dw $4940, $4960, $4950, $4970\n\n; ---------------------------------------------------------\n\n#obj09F8:\n #_00A54A: dw $0D42\n\n; ---------------------------------------------------------\n\n#obj09FA:\n #_00A54C: dw $0D52\n\n; ---------------------------------------------------------\n\n#obj09FC:\n #_00A54E: dw $0D40\n\n; ---------------------------------------------------------\n\n#obj09FE:\n #_00A550: dw $0D50\n\n; ---------------------------------------------------------\n\n#obj0A00:\n #_00A552: dw $0D41\n\n; ---------------------------------------------------------\n\n#obj0A02:\n #_00A554: dw $0D51\n\n; ---------------------------------------------------------\n\n#obj0A04:\n #_00A556: dw $0D8E\n\n; ---------------------------------------------------------\n\n#obj0A06:\n #_00A558: dw $0D8F\n\n; ---------------------------------------------------------\n\n#obj0A08:\n #_00A55A: dw $0D9E\n\n; ---------------------------------------------------------\n\n#obj0A0A:\n #_00A55C: dw $0D9F\n\n; ---------------------------------------------------------\n\n#obj0A0C:\n #_00A55E: dw $0D43\n\n; ---------------------------------------------------------\n\n#obj0A0E:\n #_00A560: dw $0D53\n\n; ---------------------------------------------------------\n\n#obj0A10:\n #_00A562: dw $0DA9\n\n; ---------------------------------------------------------\n\n#obj0A12:\n #_00A564: dw $0DA8\n\n; ---------------------------------------------------------\n\n#obj0A14:\n #_00A566: dw $09C8, $0DC6, $4DC6, $49C8\n #_00A56E: dw $09CA, $0D02, $4D02, $49CA\n\n; ---------------------------------------------------------\n\n#obj0A24:\n #_00A576: dw $89CA, $8D02, $CD02, $C9CA\n #_00A57E: dw $89C8, $8DC6, $CDC6, $C9C8\n\n; ---------------------------------------------------------\n\n#obj0A34:\n #_00A586: dw $09C9, $0DC7, $8DC7, $89C9\n #_00A58E: dw $09CB, $0D03, $8D03, $89CB\n\n; ---------------------------------------------------------\n\n#obj0A44:\n #_00A596: dw $49CB, $4D03, $CD03, $C9CB\n #_00A59E: dw $49C9, $4DC7, $CDC7, $C9C9\n\n; ---------------------------------------------------------\n\n#obj0A54:\n #_00A5A6: dw $0944, $0954, $8954, $8944\n #_00A5AE: dw $1164, $1165, $9165, $9164\n #_00A5B6: dw $1145, $1155, $9155, $9145\n\n; ---------------------------------------------------------\n\n#obj0A6C:\n #_00A5BE: dw $5145, $5155, $D155, $D145\n #_00A5C6: dw $5164, $5165, $D165, $D164\n #_00A5CE: dw $4944, $4954, $C954, $C944\n\n; ---------------------------------------------------------\n\n#obj0A84:\n #_00A5D6: dw $1146, $1147, $9147, $9146\n #_00A5DE: dw $1166, $1167, $9167, $9166\n #_00A5E6: dw $1156, $1157, $9157, $9156\n\n; ---------------------------------------------------------\n\n#obj0A9C:\n #_00A5EE: dw $5156, $5157, $D157, $D156\n #_00A5F6: dw $5166, $5167, $D167, $D166\n #_00A5FE: dw $5146, $5147, $D147, $D146\n\n; ---------------------------------------------------------\n\n#obj0AB4:\n #_00A606: dw $098E, $098E, $099E, $1CC6\n #_00A60E: dw $1CC6, $099F, $1CC6, $498F\n #_00A616: dw $499E, $1CC6, $0972, $0972\n #_00A61E: dw $1CC6, $098F, $099E, $1CC6\n #_00A626: dw $1CC6, $099F, $498E, $498E\n #_00A62E: dw $499E\n\n; ---------------------------------------------------------\n\n#obj0ADE:\n #_00A630: dw $0DE6, $0DF6, $4DE6, $4DF6\n\n; ---------------------------------------------------------\n\n#obj0AE6:\n #_00A638: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A640: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A648: dw $1DA9, $1DA9, $1DA9, $1DA9\n #_00A650: dw $1DA9, $1DA9, $1DA9, $1DA9\n\n; ---------------------------------------------------------\n\n#obj0B06:\n #_00A658: dw $9DA8, $9DA6, $DDA8\n\n; ---------------------------------------------------------\n\n#obj0B0C:\n #_00A65E: dw $1DA8, $1DA6, $5DA8\n\n; ---------------------------------------------------------\n\n#obj0B12:\n #_00A664: dw $1DA7\n\n; ---------------------------------------------------------\n\n#obj0B14:\n #_00A666: dw $5DA7\n\n; ---------------------------------------------------------\n\n#obj0B16:\n #_00A668: dw $4D66, $1D64, $1D44, $1D54\n #_00A670: dw $0D66, $5D64, $5D44, $5D54\n\n; ---------------------------------------------------------\n\n#obj0B26:\n #_00A678: dw $0946, $0966, $0956, $0CAC\n #_00A680: dw $0947, $0967, $0957, $4CAC\n\n; ---------------------------------------------------------\n\n#obj0B36:\n #_00A688: dw $8CAC, $8956, $8966, $8946\n #_00A690: dw $CCAC, $8957, $8967, $8947\n\n; ---------------------------------------------------------\n\n#obj0B46:\n #_00A698: dw $0948, $0968, $0958, $0CAD\n #_00A6A0: dw $0949, $0969, $0959, $8CAD\n\n; ---------------------------------------------------------\n\n#obj0B56:\n #_00A6A8: dw $4CAD, $4958, $4968, $4948\n #_00A6B0: dw $CCAD, $4959, $4969, $4949\n\n; ---------------------------------------------------------\n\n#obj0B66:\n #_00A6B8: dw $0894, $0893, $0892, $0893\n #_00A6C0: dw $0891, $089E, $0898, $0899\n #_00A6C8: dw $0890, $0896, $08A6, $08A5\n #_00A6D0: dw $0891, $0897, $08A3, $0CAE\n\n; ---------------------------------------------------------\n\n#obj0B86:\n #_00A6D8: dw $0892, $0893, $0892, $8894\n #_00A6E0: dw $0898, $0899, $889E, $8891\n #_00A6E8: dw $08A4, $88A6, $8896, $8890\n #_00A6F0: dw $8CAE, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj0BA6:\n #_00A6F8: dw $0890, $0896, $08A2, $4CAE\n #_00A700: dw $0891, $0897, $48A6, $48A5\n #_00A708: dw $0890, $489E, $4898, $4899\n #_00A710: dw $4894, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj0BC6:\n #_00A718: dw $CCAE, $88A2, $8896, $8890\n #_00A720: dw $48A4, $C8A6, $8897, $8891\n #_00A728: dw $4898, $4899, $C89E, $8890\n #_00A730: dw $4892, $4893, $4892, $C894\n\n; ---------------------------------------------------------\n\n#obj0BE6:\n #_00A738: dw $0846, $0843, $0853, $0843\n #_00A740: dw $0850, $0847, $0854, $0844\n #_00A748: dw $0851, $0861, $0848, $0871\n #_00A750: dw $0850, $0860, $0870, $10AE\n\n; ---------------------------------------------------------\n\n#obj0C06:\n #_00A758: dw $0853, $0843, $0853, $8846\n #_00A760: dw $0854, $0844, $8847, $8850\n #_00A768: dw $0871, $8848, $8861, $8851\n #_00A770: dw $90AE, $8870, $8860, $8850\n\n; ---------------------------------------------------------\n\n#obj0C26:\n #_00A778: dw $0851, $0861, $0870, $50AE\n #_00A780: dw $0850, $0860, $4848, $4871\n #_00A788: dw $0851, $4847, $4854, $4844\n #_00A790: dw $4846, $4843, $4853, $4843\n\n; ---------------------------------------------------------\n\n#obj0C46:\n #_00A798: dw $D0AE, $8870, $8861, $8851\n #_00A7A0: dw $4871, $C848, $8860, $8850\n #_00A7A8: dw $4854, $4844, $C847, $8851\n #_00A7B0: dw $4853, $4843, $4853, $C846\n\n; ---------------------------------------------------------\n\n#obj0C66:\n #_00A7B8: dw $0895, $0896, $08A2, $0CAC\n #_00A7C0: dw $0898, $089F, $08A3, $4CAC\n #_00A7C8: dw $08A4, $08A5, $08A7, $0CAC\n #_00A7D0: dw $0CAD, $8CAD, $0CAD, $0CAF\n\n; ---------------------------------------------------------\n\n#obj0C86:\n #_00A7D8: dw $8CAC, $88A2, $8896, $8895\n #_00A7E0: dw $CCAC, $88A3, $889F, $0899\n #_00A7E8: dw $8CAC, $88A7, $08A4, $08A5\n #_00A7F0: dw $8CAF, $8CAD, $0CAD, $0CAD\n\n; ---------------------------------------------------------\n\n#obj0CA6:\n #_00A7F8: dw $4CAD, $CCAD, $4CAD, $4CAF\n #_00A800: dw $48A4, $48A5, $48A7, $4CAC\n #_00A808: dw $4898, $489F, $08A2, $0CAC\n #_00A810: dw $4895, $0897, $08A3, $4CAC\n\n; ---------------------------------------------------------\n\n#obj0CC6:\n #_00A818: dw $CCAF, $CCAD, $4CAD, $CCAD\n #_00A820: dw $CCAC, $C8A7, $48A4, $48A5\n #_00A828: dw $8CAC, $88A2, $C89F, $4899\n #_00A830: dw $CCAC, $88A3, $8897, $C895\n\n; ---------------------------------------------------------\n\n#obj0CE6:\n #_00A838: dw $0856, $0861, $0870, $10AC\n #_00A840: dw $0854, $0857, $0870, $50AC\n #_00A848: dw $0871, $0871, $0858, $10AC\n #_00A850: dw $10AD, $90AD, $10AD, $10AF\n\n; ---------------------------------------------------------\n\n#obj0D06:\n #_00A858: dw $90AC, $8870, $8861, $8856\n #_00A860: dw $D0AC, $8870, $8857, $0844\n #_00A868: dw $90AC, $8858, $0871, $0871\n #_00A870: dw $90AF, $90AD, $10AD, $90AD\n\n; ---------------------------------------------------------\n\n#obj0D26:\n #_00A878: dw $50AD, $D0AD, $50AD, $50AF\n #_00A880: dw $4871, $4871, $4858, $50AC\n #_00A888: dw $4854, $4857, $0870, $10AC\n #_00A890: dw $4856, $0860, $0870, $50AC\n\n; ---------------------------------------------------------\n\n#obj0D46:\n #_00A898: dw $D0AF, $D0AD, $50AD, $D0AD\n #_00A8A0: dw $D0AC, $C858, $4871, $4871\n #_00A8A8: dw $90AC, $8870, $C857, $4844\n #_00A8B0: dw $D0AC, $8870, $8860, $C856\n\n; ---------------------------------------------------------\n\n#obj0D66:\n #_00A8B8: dw $0861, $0870, $50AE, $50AF\n #_00A8C0: dw $0860, $4848, $4858, $10AC\n #_00A8C8: dw $4847, $4857, $0870, $50AC\n\n; ---------------------------------------------------------\n\n#obj0D7E:\n #_00A8D0: dw $D0AF, $D0AE, $8870, $8861\n #_00A8D8: dw $90AC, $C858, $C848, $8860\n #_00A8E0: dw $D0AC, $8870, $C857, $C847\n\n; ---------------------------------------------------------\n\n#obj0D96:\n #_00A8E8: dw $0847, $0857, $0870, $50AC\n #_00A8F0: dw $0861, $0848, $0858, $10AC\n #_00A8F8: dw $0860, $0870, $10AE, $10AF\n\n; ---------------------------------------------------------\n\n#obj0DAE:\n #_00A900: dw $D0AC, $8870, $8857, $8847\n #_00A908: dw $90AC, $8858, $8848, $8861\n #_00A910: dw $90AF, $90AE, $8870, $8860\n\n; ---------------------------------------------------------\n\n#obj0DC6:\n #_00A918: dw $0854, $0844, $8847, $0871\n #_00A920: dw $8848, $8857, $90AE, $8858\n #_00A928: dw $0871, $90AF, $90AD, $10AD\n\n; ---------------------------------------------------------\n\n#obj0DDE:\n #_00A930: dw $0847, $0854, $0844, $0857\n #_00A938: dw $0848, $0871, $0871, $0858\n #_00A940: dw $10AE, $90AD, $10AD, $10AF\n\n; ---------------------------------------------------------\n\n#obj0DF6:\n #_00A948: dw $D0AF, $D0AD, $50AD, $D0AE\n #_00A950: dw $C858, $4871, $4871, $C848\n #_00A958: dw $C857, $4854, $4844, $C847\n\n; ---------------------------------------------------------\n\n#obj0E0E:\n #_00A960: dw $D0AD, $50AD, $50AF, $4871\n #_00A968: dw $4858, $50AE, $4857, $4848\n #_00A970: dw $4871, $4847, $4854, $4844\n\n; ---------------------------------------------------------\n\n#obj0E26:\n #_00A978: dw $0D00, $0D10, $0D12, $4D00\n #_00A980: dw $0D11, $0D13\n\n; ---------------------------------------------------------\n\n#obj0E32:\n #_00A984: dw $0D04, $0D14, $0D24, $0D34\n #_00A98C: dw $0D05, $0D15, $0D25, $0D35\n #_00A994: dw $4D05, $4D15, $4D25, $4D35\n #_00A99C: dw $4D04, $4D14, $4D24, $4D34\n\n; ---------------------------------------------------------\n\n#obj0E52:\n #_00A9A4: dw $0922, $0932, $0923, $0933\n\n; ---------------------------------------------------------\n\n#obj0E5A:\n #_00A9AC: dw $0DE5, $0DF5, $4DE5, $4DF5\n\n; ---------------------------------------------------------\n\n#obj0E62:\n #_00A9B4: dw $0DE3, $0DF3, $0DE4, $0DF4\n\n; ---------------------------------------------------------\n\n#obj0E6A:\n #_00A9BC: dw $4DE4, $4DF4, $4DE3, $4DF3\n\n; ---------------------------------------------------------\n\n#obj0E72:\n #_00A9C4: dw $8DF3, $8DE3, $8DF4, $8DE4\n\n; ---------------------------------------------------------\n\n#obj0E7A:\n #_00A9CC: dw $CDF4, $CDE4, $CDF3, $CDE3\n\n; ---------------------------------------------------------\n\n#obj0E82:\n #_00A9D4: dw $0D28, $0D38, $4D28, $4D38\n\n; ---------------------------------------------------------\n\n#obj0E8A:\n #_00A9DC: dw $0D2A, $0D3A, $0D2B, $0D3B\n\n; ---------------------------------------------------------\n\n#obj0E92:\n #_00A9E4: dw $0D01, $0D1C, $4D01, $4D1C\n\n; ---------------------------------------------------------\n\n#obj0E9A:\n #_00A9EC: dw $0DEE, $8DEE, $4DEE, $CDEE\n\n; ---------------------------------------------------------\n\n#obj0EA2:\n #_00A9F4: dw $0DED, $8DED, $4DED, $CDED\n\n; ---------------------------------------------------------\n\n#obj0EAA:\n #_00A9FC: dw $0CD2, $0CEB, $0CD3, $0CFB\n\n; ---------------------------------------------------------\n\n#obj0EB2:\n #_00AA04: dw $0CEE, $0CFE, $0CEF, $0CFF\n\n; ---------------------------------------------------------\n\n#obj0EBA:\n #_00AA0C: dw $0CD4, $0CD6, $0CD5, $0CD7\n\n; ---------------------------------------------------------\n\n#obj0EC2:\n #_00AA14: dw $0DE0, $0DF0, $4DE0, $4DF0\n\n; ---------------------------------------------------------\n\n#obj0ECA:\n #_00AA1C: dw $0DC0, $0DC1, $4DC0, $4DC1\n\n; ---------------------------------------------------------\n\n#obj0ED2:\n #_00AA24: dw $094D, $095D, $096D, $494D\n #_00AA2C: dw $495D, $496D\n\n; ---------------------------------------------------------\n\n#obj0EDE:\n #_00AA30: dw $1587, $1589, $1599, $1588\n #_00AA38: dw $158A, $159A, $5588, $558A\n #_00AA40: dw $559A, $5587, $5589, $5599\n\n; ---------------------------------------------------------\n\n#obj0EF6:\n #_00AA48: dw $158C, $158D, $558D, $558C\n #_00AA50: dw $159C, $159D, $559D, $559C\n #_00AA58: dw $159C, $159D, $559D, $559C\n #_00AA60: dw $159C, $159D, $559D, $559C\n #_00AA68: dw $158B, $159B, $559B, $558B\n\n; ---------------------------------------------------------\n\n#obj0F1E:\n #_00AA70: dw $154A, $155A, $156A, $157A\n #_00AA78: dw $154B, $155B, $156B, $157B\n #_00AA80: dw $554B, $555B, $556B, $557B\n #_00AA88: dw $554A, $555A, $556A, $557A\n\n; ---------------------------------------------------------\n\n#obj0F3E:\n #_00AA90: dw $1525, $1563, $1553, $1555\n #_00AA98: dw $1526, $1564, $1554, $1556\n #_00AAA0: dw $5526, $5564, $5554, $5556\n #_00AAA8: dw $5525, $5563, $5553, $5555\n\n; ---------------------------------------------------------\n\n#obj0F5E:\n #_00AAB0: dw $151D, $151E, $151F, $551D\n #_00AAB8: dw $551E, $551F\n\n; ---------------------------------------------------------\n\n#obj0F6A:\n #_00AABC: dw $1548, $1549, $5548, $5549\n\n; ---------------------------------------------------------\n\n#obj0F72:\n #_00AAC4: dw $094A, $095A, $096A, $097A\n #_00AACC: dw $094B, $095B, $096B, $097B\n #_00AAD4: dw $494B, $495B, $496B, $497B\n #_00AADC: dw $494A, $495A, $496A, $497A\n\n; ---------------------------------------------------------\n\n#obj0F92:\n #_00AAE4: dw $0968, $0969, $4969, $4968\n #_00AAEC: dw $0958, $0959, $4959, $4958\n\n; ---------------------------------------------------------\n\n#obj0FA2:\n #_00AAF4: dw $1588, $156C, $556C, $5588\n #_00AAFC: dw $157D, $157C, $557C, $557D\n\n; ---------------------------------------------------------\n\n#obj0FB2:\n #_00AB04: dw $11A0, $11A1, $51A0, $11A2\n #_00AB0C: dw $11A3, $51A2, $1194, $1195\n #_00AB14: dw $5194\n\n; ---------------------------------------------------------\n\n#obj0FC4:\n #_00AB16: dw $094E, $095E, $096E, $09AE\n #_00AB1E: dw $094F, $095F, $096F, $09AF\n #_00AB26: dw $094F, $095F, $096F, $09AF\n #_00AB2E: dw $094F, $095F, $496F, $09AF\n #_00AB36: dw $094F, $095F, $096F, $09AF\n #_00AB3E: dw $494E, $495E, $496E, $49AE\n\n; ---------------------------------------------------------\n\n#obj0FF4:\n #_00AB46: dw $8D84, $0D84, $0976, $8D85\n #_00AB4E: dw $0D85, $0977, $0D86, $0D96\n #_00AB56: dw $0977, $4D86, $4D96, $4977\n #_00AB5E: dw $CD85, $4D85, $4977, $CD84\n #_00AB66: dw $4D84, $4976\n\n; ---------------------------------------------------------\n\n#obj1018:\n #_00AB6A: dw $0978, $0979, $4978, $4979\n\n; ---------------------------------------------------------\n\n#obj1020:\n #_00AB72: dw $0D92, $0DAA, $0D92, $0DAA\n\n; ---------------------------------------------------------\n\n#obj1028:\n #_00AB7A: dw $0942, $0982, $0992, $0943\n #_00AB82: dw $0983, $0993, $4943, $4983\n #_00AB8A: dw $4993, $4942, $4982, $4992\n\n; ---------------------------------------------------------\n\n#obj1040:\n #_00AB92: dw $0CEE, $18D8, $0CEE, $0CFE\n #_00AB9A: dw $18C8, $18D9, $58D9, $0CFF\n #_00ABA2: dw $18C9, $0CFE, $0CEE, $18D9\n #_00ABAA: dw $0CEF, $58D9, $58D8, $0CFF\n\n; ---------------------------------------------------------\n\n#obj1060:\n #_00ABB2: dw $1197, $1198, $1197, $1198\n #_00ABBA: dw $1187, $1188, $1187, $1188\n\n; ---------------------------------------------------------\n\n#obj1070:\n #_00ABC2: dw $1D76, $1D77, $5D76, $5D77\n\n; ---------------------------------------------------------\n\n#obj1078:\n #_00ABCA: dw $9D77, $9D76, $DD77, $DD76\n\n; ---------------------------------------------------------\n\n#obj1080:\n #_00ABD2: dw $5D79, $DD79, $5D78, $DD78\n\n; ---------------------------------------------------------\n\n#obj1088:\n #_00ABDA: dw $084C, $085D, $086D, $087D\n #_00ABE2: dw $084F, $085E, $086E, $087E\n #_00ABEA: dw $484F, $485E, $486E, $487E\n #_00ABF2: dw $484C, $485D, $486D, $487D\n\n; ---------------------------------------------------------\n\n#obj10A8:\n #_00ABFA: dw $0864, $0866, $0866, $09F8\n #_00AC02: dw $085F, $086F, $087F, $09F9\n #_00AC0A: dw $485F, $486F, $487F, $49F9\n #_00AC12: dw $4864, $4866, $4866, $49F8\n\n; ---------------------------------------------------------\n\n#obj10C8:\n #_00AC1A: dw $084D, $085D, $086D, $087D\n #_00AC22: dw $084E, $085E, $086E, $087E\n #_00AC2A: dw $484E, $485E, $486E, $487E\n #_00AC32: dw $484D, $485D, $486D, $487D\n\n; ---------------------------------------------------------\n\n#obj10E8:\n #_00AC3A: dw $887D, $886D, $885D, $884D\n #_00AC42: dw $887E, $886E, $885E, $884E\n #_00AC4A: dw $C87E, $C86E, $C85E, $C84E\n #_00AC52: dw $C87D, $C86D, $C85D, $C84D\n\n; ---------------------------------------------------------\n\n#obj1108:\n #_00AC5A: dw $0982, $0983, $4983, $4982\n #_00AC62: dw $0992, $0993, $4993, $4992\n #_00AC6A: dw $08C9, $08F4, $48F4, $48C9\n #_00AC72: dw $08CA, $08F5, $48F5, $48CA\n #_00AC7A: dw $0841, $0845, $8845, $8841\n #_00AC82: dw $0842, $0855, $8845, $8842\n #_00AC8A: dw $4842, $4855, $C855, $C842\n #_00AC92: dw $4841, $4845, $C845, $C841\n\n; ---------------------------------------------------------\n\n#obj1148:\n #_00AC9A: dw $28B8, $2808, $0818, $289D\n #_00ACA2: dw $082E, $083E, $689D, $082F\n #_00ACAA: dw $083F, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj1160:\n #_00ACB2: dw $28B8, $2808, $0818, $28B9\n #_00ACBA: dw $09EF, $0819, $68B9, $09EF\n #_00ACC2: dw $081A, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj1178:\n #_00ACCA: dw $28B5, $2808, $080D, $28B7\n #_00ACD2: dw $082E, $083E, $68B7, $082F\n #_00ACDA: dw $083F, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj1190:\n #_00ACE2: dw $28B5, $2808, $080D, $28B6\n #_00ACEA: dw $09EF, $0819, $68B6, $09EF\n #_00ACF2: dw $081A, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj11A8:\n #_00ACFA: dw $28B8, $0808, $0818, $4CAC\n #_00AD02: dw $289D, $0807, $0817, $0CAC\n #_00AD0A: dw $689D, $4807, $4817, $4CAC\n #_00AD12: dw $68B8, $4808, $4818, $0CAC\n\n; ---------------------------------------------------------\n\n#obj11C8:\n #_00AD1A: dw $28B8, $2808, $0818, $4CAC\n #_00AD22: dw $28B9, $09EF, $0816, $0CAC\n #_00AD2A: dw $68B9, $09EF, $4816, $4CAC\n #_00AD32: dw $68B8, $6808, $4818, $0CAC\n\n; ---------------------------------------------------------\n\n#obj11E8:\n #_00AD3A: dw $8CAC, $8818, $8808, $A8B8\n #_00AD42: dw $CCAC, $8817, $8807, $A89D\n #_00AD4A: dw $8CAC, $C817, $C807, $E89D\n #_00AD52: dw $CCAC, $C818, $C808, $E8B8\n\n; ---------------------------------------------------------\n\n#obj1208:\n #_00AD5A: dw $8CAC, $880D, $8808, $A8B8\n #_00AD62: dw $CCAC, $8816, $89EF, $A8B9\n #_00AD6A: dw $8CAC, $C816, $C9EF, $E8B9\n #_00AD72: dw $CCAC, $C80D, $C808, $E8B8\n\n; ---------------------------------------------------------\n\n#obj1228:\n #_00AD7A: dw $28B5, $0808, $080D, $50AC\n #_00AD82: dw $28B7, $0807, $0817, $10AC\n #_00AD8A: dw $68B7, $4807, $4817, $50AC\n #_00AD92: dw $68B5, $4808, $480D, $10AC\n\n; ---------------------------------------------------------\n\n#obj1248:\n #_00AD9A: dw $28B5, $0818, $080D, $50AC\n #_00ADA2: dw $28B6, $09EF, $0816, $10AC\n #_00ADAA: dw $68B6, $09EF, $4816, $50AC\n #_00ADB2: dw $68B7, $4810, $480D, $10AC\n\n; ---------------------------------------------------------\n\n#obj1268:\n #_00ADBA: dw $90AC, $880D, $8808, $A8B5\n #_00ADC2: dw $D0AC, $8817, $8807, $A8B7\n #_00ADCA: dw $90AC, $C817, $C807, $E8B7\n #_00ADD2: dw $D0AC, $C80D, $C808, $E8B5\n\n; ---------------------------------------------------------\n\n#obj1288:\n #_00ADDA: dw $90AC, $880D, $8808, $A8B5\n #_00ADE2: dw $D0AC, $8816, $89EF, $A8B6\n #_00ADEA: dw $90AC, $C816, $C9EF, $E8B6\n #_00ADF2: dw $D0AC, $C80D, $C808, $E8B5\n\n; ---------------------------------------------------------\n\n#obj12A8:\n #_00ADFA: dw $0984, $09A7, $0843, $0853\n #_00AE02: dw $0984, $09A4, $09A8, $0854\n #_00AE0A: dw $0984, $0994, $09A4, $09A8\n #_00AE12: dw $0985, $0995, $09A5, $09A9\n #_00AE1A: dw $0986, $0996, $09A6, $099C\n #_00AE22: dw $4986, $4996, $49A6, $499C\n #_00AE2A: dw $4985, $4995, $49A5, $49A9\n #_00AE32: dw $4984, $4994, $49A4, $49A8\n #_00AE3A: dw $4984, $49A4, $49A8, $4854\n #_00AE42: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AE4A: dw $0984, $09A7, $0843, $0853\n #_00AE52: dw $0984, $0994, $09A8, $0854\n #_00AE5A: dw $0985, $0995, $09A5, $09A8\n #_00AE62: dw $0986, $0996, $09A6, $099C\n #_00AE6A: dw $18CB, $18DB, $18CB, $18DB\n #_00AE72: dw $18CA, $18DA, $18CA, $18DA\n #_00AE7A: dw $4986, $4996, $49A6, $499C\n #_00AE82: dw $4985, $4995, $49A5, $49A8\n #_00AE8A: dw $4984, $4994, $49A8, $4854\n #_00AE92: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AE9A: dw $0984, $09A7, $0843, $0853\n #_00AEA2: dw $0985, $0995, $09A8, $0854\n #_00AEAA: dw $0986, $0996, $09A6, $09A8\n #_00AEB2: dw $18CA, $18DA, $18CA, $18DA\n #_00AEBA: dw $18CB, $18DB, $18CB, $18DB\n #_00AEC2: dw $18CA, $18DA, $18CA, $18DA\n #_00AECA: dw $18CB, $18DB, $18CB, $18DB\n #_00AED2: dw $4986, $4996, $49A6, $49A8\n #_00AEDA: dw $4985, $4995, $49A8, $4854\n #_00AEE2: dw $4984, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n #_00AEEA: dw $0985, $09A7, $0843, $0853\n #_00AEF2: dw $0986, $0996, $09A8, $0854\n #_00AEFA: dw $0871, $0871, $098B, $099B\n #_00AF02: dw $18CA, $18DA, $18CA, $18DA\n #_00AF0A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF12: dw $18CA, $18DA, $18CA, $18DA\n #_00AF1A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF22: dw $4871, $4871, $498B, $499B\n #_00AF2A: dw $4986, $4996, $49A8, $4854\n #_00AF32: dw $4985, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n#obj13E8:\n #_00AF3A: dw $0986, $09A7, $0843, $0853\n #_00AF42: dw $0871, $098B, $099B, $0854\n #_00AF4A: dw $0871, $0871, $098B, $099B\n #_00AF52: dw $18CA, $18DA, $18CA, $18DA\n #_00AF5A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF62: dw $18CA, $18DA, $18CA, $18DA\n #_00AF6A: dw $18CB, $18DB, $18CB, $18DB\n #_00AF72: dw $4871, $4871, $498B, $499B\n #_00AF7A: dw $4871, $498B, $499B, $4854\n #_00AF82: dw $4986, $49A7, $4843, $4853\n\n; ---------------------------------------------------------\n\n#obj1438:\n #_00AF8A: dw $18CA, $18CB, $18CA, $18CB\n #_00AF92: dw $18DA, $0974, $4974, $18DB\n #_00AF9A: dw $18CA, $8974, $C974, $18CB\n #_00AFA2: dw $18DA, $18DB, $18DA, $18DB\n\n; ---------------------------------------------------------\n\n#obj1458:\n #_00AFAA: dw $1D48, $1D58, $1568, $1542\n #_00AFB2: dw $1562, $1552, $1D49, $1D59\n #_00AFBA: dw $1D69, $1D43, $1D63, $1D53\n #_00AFC2: dw $1D60, $1D70, $1D78, $1D61\n #_00AFCA: dw $1D71, $1D79, $5D61, $5D71\n #_00AFD2: dw $5D79, $5D60, $5D70, $5D78\n\n; ---------------------------------------------------------\n\n#obj1488:\n #_00AFDA: dw $298D, $298E, $299E, $298F\n #_00AFE2: dw $299F, $299D\n\n; ---------------------------------------------------------\n\n#obj1494:\n #_00AFE6: dw $09A2, $09A3, $49A2, $49A3\n\n; ---------------------------------------------------------\n\n#obj149C:\n #_00AFEE: dw $19E1, $19F1, $59E1, $59F1\n\n; ---------------------------------------------------------\n\n#obj14A4:\n #_00AFF6: dw $19E2, $19F2, $59E2, $59F2\n\n; ---------------------------------------------------------\n\n#obj14AC:\n #_00AFFE: dw $1920, $1930, $1926, $1921\n #_00B006: dw $1931, $1927, $5921, $5931\n #_00B00E: dw $5927, $5920, $5930, $5926\n\n; ---------------------------------------------------------\n\n#obj14C4:\n #_00B016: dw $1906, $1916, $1926, $1907\n #_00B01E: dw $1917, $1927, $5907, $5917\n #_00B026: dw $5927, $5906, $5916, $5926\n\n; ---------------------------------------------------------\n\n#obj14DC:\n #_00B02E: dw $2980, $0990, $09A0, $2981\n #_00B036: dw $0991, $09A1, $2981, $0991\n #_00B03E: dw $09A1, $6981, $4991, $49A1\n #_00B046: dw $6981, $4991, $49A1, $6980\n #_00B04E: dw $4990, $49A1\n\n; ---------------------------------------------------------\n\n#obj1500:\n #_00B052: dw $89A0, $8990, $A980, $89A1\n #_00B05A: dw $8991, $A981, $89A1, $8991\n #_00B062: dw $A981, $C9A1, $C991, $E981\n #_00B06A: dw $C9A1, $C991, $E981, $C9A0\n #_00B072: dw $C990, $E980\n\n; ---------------------------------------------------------\n\n#obj1524:\n #_00B076: dw $2982, $0983, $09A2, $2992\n #_00B07E: dw $0993, $09A3, $2992, $0993\n #_00B086: dw $09A3, $A992, $8993, $89A3\n #_00B08E: dw $A992, $8993, $89A3, $A982\n #_00B096: dw $8983, $89A2\n\n; ---------------------------------------------------------\n\n#obj1548:\n #_00B09A: dw $49A2, $4983, $6982, $49A3\n #_00B0A2: dw $4993, $6992, $49A3, $4993\n #_00B0AA: dw $6992, $C9A3, $C993, $E992\n #_00B0B2: dw $C9A3, $C993, $E992, $C9A2\n #_00B0BA: dw $C983, $E982\n\n; ---------------------------------------------------------\n\n#obj156C:\n #_00B0BE: dw $2984, $0990, $09A0, $2994\n #_00B0C6: dw $0991, $09A1, $2994, $0991\n #_00B0CE: dw $09A1, $6994, $4991, $49A1\n #_00B0D6: dw $6994, $4991, $49A1, $6984\n #_00B0DE: dw $4990, $49A0\n\n; ---------------------------------------------------------\n\n#obj1590:\n #_00B0E2: dw $89A0, $8990, $A984, $89A1\n #_00B0EA: dw $8991, $A994, $89A1, $8991\n #_00B0F2: dw $A994, $C9A1, $C991, $E994\n #_00B0FA: dw $C9A1, $C991, $E994, $C9A0\n #_00B102: dw $C990, $E984\n\n; ---------------------------------------------------------\n\n#obj15B4:\n #_00B106: dw $288A, $288B, $288B, $0809\n #_00B10E: dw $09EF, $09EF, $080A, $0879\n #_00B116: dw $0879, $288A, $A88B, $A88B\n #_00B11E: dw $09EF, $89EF, $8809, $0879\n #_00B126: dw $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj15D8:\n #_00B12A: dw $480A, $4879, $4879, $4809\n #_00B132: dw $49EF, $49EF, $688A, $688B\n #_00B13A: dw $688B, $4879, $C879, $C80A\n #_00B142: dw $49EF, $C9EF, $C809, $688B\n #_00B14A: dw $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj15FC:\n #_00B14E: dw $880D, $8808, $A82C, $8878\n #_00B156: dw $09EF, $A82D, $C878, $09EF\n #_00B15E: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj1614:\n #_00B166: dw $0980, $0981, $4981, $4980\n #_00B16E: dw $0990, $0991, $4991, $4990\n #_00B176: dw $09A0, $09A1, $49A1, $49A0\n\n; ---------------------------------------------------------\n\n#obj162C:\n #_00B17E: dw $0980, $0981, $4981, $4980\n #_00B186: dw $0990, $0991, $4991, $4990\n #_00B18E: dw $09A0, $1DB2, $1DB2, $49A0\n #_00B196: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B19E: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj1654:\n #_00B1A6: dw $2980, $2981, $6981, $6980\n #_00B1AE: dw $2990, $2991, $6991, $6990\n\n #_00B1B6: dw $29A0, $3DB2, $3DB2, $69A0\n #_00B1BE: dw $3DB3, $3DB3, $3DB3, $3DB3\n #_00B1C6: dw $3DB3, $3DB3, $3DB3, $3DB3\n #_00B1CE: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1D6: dw $1DB5, $1DB5, $1DB5, $1DB5\n\n; ---------------------------------------------------------\n\n#obj168C:\n #_00B1DE: dw $09A0, $1DB2, $5DB2, $49A0\n #_00B1E6: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1EE: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B1F6: dw $1DB5, $1DB5, $1DB5, $1DB5\n #_00B1FE: dw $18CA, $18CB, $18CA, $18CB\n\n; ---------------------------------------------------------\n\n#obj16B4:\n #_00B206: dw $09A0, $1DB2, $5DB2, $49A0\n #_00B20E: dw $1DB3, $1DB3, $1DB3, $1DB3\n #_00B216: dw $1DB5, $1DB5, $1DB5, $1DB5\n #_00B21E: dw $0870, $0870, $0870, $0870\n #_00B226: dw $18CA, $18CB, $18CA, $18CB\n\n; ---------------------------------------------------------\n\n#obj16DC:\n #_00B22E: dw $01EC, $853E, $853F, $853D\n #_00B236: dw $853D, $853D, $C53D, $C53D\n #_00B23E: dw $C53D, $C53F, $C53E, $01EC\n #_00B246: dw $052A, $853D, $853D, $853D\n #_00B24E: dw $853D, $853D, $C53D, $C53D\n #_00B256: dw $C53D, $C53D, $C53D, $452A\n #_00B25E: dw $05E8, $853D, $853D, $852E\n #_00B266: dw $852F, $852D, $C52D, $C52F\n #_00B26E: dw $C52E, $C53D, $C53D, $45E8\n #_00B276: dw $05E7, $853D, $052B, $852D\n #_00B27E: dw $852D, $852D, $C52D, $C52D\n #_00B286: dw $C52D, $452B, $C53D, $45E7\n #_00B28E: dw $05E7, $853D, $053B, $852D\n #_00B296: dw $852D, $852D, $C52D, $C52D\n #_00B29E: dw $C52D, $453B, $C53D, $45E7\n #_00B2A6: dw $85E8, $853D, $853B, $852D\n #_00B2AE: dw $852D, $852D, $C52D, $C52D\n #_00B2B6: dw $C52D, $C53B, $C53D, $C5E8\n #_00B2BE: dw $852A, $853D, $852B, $852D\n #_00B2C6: dw $852D, $852D, $C52D, $C52D\n #_00B2CE: dw $C52D, $C52B, $C53D, $C52A\n #_00B2D6: dw $01EC, $853A, $853D, $853B\n #_00B2DE: dw $852D, $852D, $C52D, $C52D\n #_00B2E6: dw $C53B, $C53D, $C53A, $01EC\n #_00B2EE: dw $01EC, $852A, $853D, $852B\n #_00B2F6: dw $852D, $852D, $C52D, $C52D\n #_00B2FE: dw $C52B, $C53D, $C52A, $01EC\n #_00B306: dw $01EC, $01EC, $853A, $853D\n #_00B30E: dw $052E, $052F, $452F, $452E\n #_00B316: dw $C53D, $C53A, $01EC, $01EC\n #_00B31E: dw $01EC, $01EC, $852A, $853D\n #_00B326: dw $853D, $853D, $C53D, $C53D\n #_00B32E: dw $C53D, $C52A, $01EC, $01EC\n #_00B336: dw $01EC, $01EC, $01EC, $053E\n #_00B33E: dw $053F, $853D, $C53D, $453F\n #_00B346: dw $453E\n\n; ---------------------------------------------------------\n\n#obj17F6:\n #_00B348: dw $01EC, $01EC, $01EC, $853E\n #_00B350: dw $853F, $053D, $453D, $C53F\n #_00B358: dw $C53E, $01EC, $01EC, $01EC\n #_00B360: dw $01EC, $01EC, $052A, $053D\n #_00B368: dw $053D, $053D, $453D, $453D\n #_00B370: dw $453D, $452A, $01EC, $01EC\n #_00B378: dw $01EC, $01EC, $053A, $053D\n #_00B380: dw $852E, $852F, $C52F, $C52E\n #_00B388: dw $453D, $453A, $01EC, $01EC\n #_00B390: dw $01EC, $052A, $053D, $052B\n #_00B398: dw $052D, $052D, $452D, $452D\n #_00B3A0: dw $452B, $453D, $452A, $01EC\n #_00B3A8: dw $01EC, $053A, $053D, $053B\n #_00B3B0: dw $052D, $052D, $452D, $452D\n #_00B3B8: dw $453B, $453D, $453A, $01EC\n #_00B3C0: dw $052A, $053D, $052B, $052D\n #_00B3C8: dw $052D, $052D, $452D, $452D\n #_00B3D0: dw $452D, $452B, $453D, $452A\n #_00B3D8: dw $05E8, $053D, $053B, $052D\n #_00B3E0: dw $052D, $052D, $452D, $452D\n #_00B3E8: dw $452D, $453B, $453D, $45E8\n #_00B3F0: dw $05E7, $053D, $853B, $052D\n #_00B3F8: dw $052D, $052D, $452D, $452D\n #_00B400: dw $452D, $C53B, $453D, $45E7\n #_00B408: dw $05E7, $053D, $852B, $052D\n #_00B410: dw $052D, $052D, $452D, $452D\n #_00B418: dw $452D, $C52B, $453D, $45E7\n #_00B420: dw $85E8, $053D, $053D, $052E\n #_00B428: dw $052F, $052D, $452D, $452F\n #_00B430: dw $452E, $453D, $453D, $C5E8\n #_00B438: dw $852A, $053D, $053D, $053D\n #_00B440: dw $053D, $053D, $453D, $453D\n #_00B448: dw $453D, $453D, $453D, $C52A\n #_00B450: dw $01EC, $053E, $053F, $053D\n #_00B458: dw $053D, $053D, $453D, $453D\n #_00B460: dw $453D, $453F, $453E\n\n; ---------------------------------------------------------\n\n#obj1914:\n #_00B466: dw $01EC, $853E, $853F, $053D\n #_00B46E: dw $053D, $C53F, $C53E, $01EC\n #_00B476: dw $01EC, $01EC, $01EC, $01EC\n #_00B47E: dw $052A, $053D, $053D, $053D\n #_00B486: dw $053D, $053D, $053D, $C53F\n #_00B48E: dw $C53E, $01EC, $01EC, $01EC\n #_00B496: dw $053A, $053D, $053D, $852E\n #_00B49E: dw $852F, $C52F, $C52E, $053D\n #_00B4A6: dw $053D, $C53F, $C53E, $01EC\n #_00B4AE: dw $053D, $053D, $052B, $052D\n #_00B4B6: dw $052D, $052D, $852D, $C52F\n #_00B4BE: dw $C52E, $053D, $053D, $452A\n #_00B4C6: dw $053D, $053D, $053B, $052D\n #_00B4CE: dw $052D, $052D, $052D, $052D\n #_00B4D6: dw $052D, $452B, $053D, $453A\n #_00B4DE: dw $053D, $053D, $052D, $052D\n #_00B4E6: dw $052D, $052D, $052D, $052D\n #_00B4EE: dw $052D, $453B, $053D, $053D\n #_00B4F6: dw $853D, $853D, $852D, $852D\n #_00B4FE: dw $852D, $852D, $852D, $852D\n #_00B506: dw $852D, $C53B, $853D, $853D\n #_00B50E: dw $853D, $853D, $853B, $852D\n #_00B516: dw $852D, $852D, $852D, $852D\n #_00B51E: dw $852D, $C52B, $853D, $C53A\n #_00B526: dw $853D, $853D, $852B, $852D\n #_00B52E: dw $852D, $852D, $852D, $452F\n #_00B536: dw $452E, $853D, $853D, $C52A\n #_00B53E: dw $853A, $853D, $853D, $052E\n #_00B546: dw $052F, $452F, $452E, $853D\n #_00B54E: dw $853D, $453F, $453E, $01EC\n #_00B556: dw $852A, $853D, $853D, $853D\n #_00B55E: dw $853D, $853D, $853D, $453F\n #_00B566: dw $453E, $01EC, $01EC, $01EC\n #_00B56E: dw $01EC, $053E, $053F, $853D\n #_00B576: dw $853D, $453F, $453E\n\n; ---------------------------------------------------------\n\n#obj1A2A:\n #_00B57C: dw $01EC, $01EC, $01EC, $01EC\n #_00B584: dw $01EC, $853E, $853F, $453D\n #_00B58C: dw $453D, $C53F, $C53E, $01EC\n #_00B594: dw $01EC, $01EC, $01EC, $853E\n #_00B59C: dw $853F, $453D, $453D, $453D\n #_00B5A4: dw $453D, $453D, $453D, $452A\n #_00B5AC: dw $01EC, $853E, $853F, $453D\n #_00B5B4: dw $453D, $852E, $852F, $C52F\n #_00B5BC: dw $C52E, $453D, $453D, $453A\n #_00B5C4: dw $052A, $453D, $453D, $852E\n #_00B5CC: dw $852F, $452D, $452D, $452D\n #_00B5D4: dw $452D, $452B, $453D, $453D\n #_00B5DC: dw $053A, $453D, $052B, $452D\n #_00B5E4: dw $452D, $452D, $452D, $452D\n #_00B5EC: dw $452D, $453B, $453D, $453D\n #_00B5F4: dw $453D, $453D, $053B, $452D\n #_00B5FC: dw $452D, $452D, $452D, $452D\n #_00B604: dw $452D, $452D, $453D, $453D\n #_00B60C: dw $C53D, $C53D, $853B, $C52D\n #_00B614: dw $C52D, $C52D, $C52D, $C52D\n #_00B61C: dw $C52D, $C52D, $C53D, $C53D\n #_00B624: dw $853A, $C53D, $852B, $C52D\n #_00B62C: dw $C52D, $C52D, $C52D, $C52D\n #_00B634: dw $C52D, $C53B, $C53D, $C53D\n #_00B63C: dw $852A, $C53D, $C53D, $052E\n #_00B644: dw $052F, $C52D, $C52D, $C52D\n #_00B64C: dw $C52D, $C52B, $C53D, $C53D\n #_00B654: dw $01EC, $053E, $053F, $C53D\n #_00B65C: dw $C53D, $052E, $052F, $452F\n #_00B664: dw $452E, $C53D, $C53D, $C53A\n #_00B66C: dw $01EC, $01EC, $01EC, $053E\n #_00B674: dw $053F, $C53D, $C53D, $C53D\n #_00B67C: dw $C53D, $C53D, $C53D, $C52A\n #_00B684: dw $01EC, $01EC, $01EC, $01EC\n #_00B68C: dw $01EC, $053E, $053F, $C53D\n #_00B694: dw $C53D, $453F, $453E, $01EC\n\n; ---------------------------------------------------------\n\n#obj1B4A:\n #_00B69C: dw $099D, $098E, $098E, $098E\n #_00B6A4: dw $098E, $098E, $098E, $098E\n #_00B6AC: dw $098E, $098E, $098E, $098E\n #_00B6B4: dw $098E, $099E, $099F, $18C6\n #_00B6BC: dw $18C6, $18C6, $18C6, $18C6\n #_00B6C4: dw $18C6, $18C6, $18C6, $18C6\n #_00B6CC: dw $18C6, $18C6, $18C6, $099F\n #_00B6D4: dw $099F, $18C6, $18C6, $18C6\n #_00B6DC: dw $18C6, $118A, $119A, $118B\n #_00B6E4: dw $119B, $11A0, $18C6, $18C6\n #_00B6EC: dw $18C6, $099F, $099F, $18C6\n #_00B6F4: dw $18C6, $18C6, $18C6, $1183\n #_00B6FC: dw $1193, $1182, $1192, $11A1\n #_00B704: dw $18C6, $18C6, $498F, $499E\n #_00B70C: dw $099F, $18C6, $18D4, $98D4\n #_00B714: dw $18C6, $1189, $1187, $1197\n #_00B71C: dw $118C, $11A2, $18C6, $18C6\n #_00B724: dw $0972, $0972, $099F, $18D6\n #_00B72C: dw $18D5, $98D5, $98D6, $119C\n #_00B734: dw $1188, $1198, $118D, $11A3\n #_00B73C: dw $18C6, $18C6, $0972, $0972\n\n; ---------------------------------------------------------\n\n#obj1BF2:\n #_00B744: dw $0995, $1D99, $0994, $0CAC\n #_00B74C: dw $0995, $1D99, $0994, $0CAC\n #_00B754: dw $0980, $0990, $0986, $09A6\n #_00B75C: dw $4980, $4990, $4986, $49A6\n #_00B764: dw $0995, $1D99, $0994, $0CAC\n #_00B76C: dw $0995, $1D99, $0994, $0CAC\n\n#obj1C22:\n #_00B774: dw $1DA7, $1DA8, $1DA4, $08F5\n #_00B77C: dw $0CD8\n\n#obj1C2C:\n #_00B77E: dw $0981, $0991, $0985, $09A5\n #_00B786: dw $8981, $8991, $8985, $89A5\n #_00B78E: dw $0996, $1D99, $0984, $0CAD\n #_00B796: dw $0996, $1D99, $0984, $0CAD\n #_00B79E: dw $0996, $1D99, $0984, $0CAD\n #_00B7A6: dw $0996, $1D99, $0984, $0CAD\n\n#obj1C5C:\n #_00B7AE: dw $98D9, $D8C7, $98C7, $D8C7\n #_00B7B6: dw $98C8, $14DB, $14CA, $58C8\n #_00B7BE: dw $18C7, $58C7, $18C7, $58D9\n\n#obj1C74:\n #_00B7C6: dw $58D9, $14CA, $D8C7, $98C8\n #_00B7CE: dw $58C7, $18C7, $D8C7, $98C7\n #_00B7D6: dw $58C8, $18C7, $14DB, $98D9\n\n#obj1C8C:\n #_00B7DE: dw $0CD8, $14CB, $D8C8, $58C8\n #_00B7E6: dw $14DB, $14DA, $18D9, $98C7\n #_00B7EE: dw $18C7, $98D9, $D8C8, $58C7\n #_00B7F6: dw $D8C7, $58C7, $D8D9, $98C8\n #_00B7FE: dw $18C7, $98C7, $18C8, $14DA\n #_00B806: dw $14DB, $58D9, $D8D9, $14CB\n #_00B80E: dw $14DB\n\n; ---------------------------------------------------------\n\n#obj1CBE:\n #_00B810: dw $95A6, $958D, $B597, $95A7\n #_00B818: dw $959C, $B598, $D5A7, $D59C\n #_00B820: dw $F598, $D5A6, $D58D, $F597\n #_00B828: dw $B587, $B595, $95A0, $B588\n #_00B830: dw $B596, $9586, $F588, $F596\n #_00B838: dw $D586, $F587, $F595, $D5A0\n\n; ---------------------------------------------------------\n\n#obj1CEE:\n #_00B840: dw $15A0, $3595, $3587, $3586\n #_00B848: dw $3596, $3588, $7586, $7596\n #_00B850: dw $7588, $55A0, $7595, $7587\n #_00B858: dw $3597, $158D, $15A6, $3598\n #_00B860: dw $159C, $15A7, $7598, $559C\n #_00B868: dw $55A7, $7597, $558D, $55A6\n\n; ---------------------------------------------------------\n\n#obj1D1E:\n #_00B870: dw $55A4, $55A5, $D5A5, $D5A4\n #_00B878: dw $558C, $559C, $D59C, $D58C\n #_00B880: dw $758B, $759B, $F59B, $F58B\n #_00B888: dw $758A, $759A, $F59A, $F58A\n #_00B890: dw $7589, $7599, $F599, $F589\n #_00B898: dw $55A1, $7585, $F585, $D5A1\n\n; ---------------------------------------------------------\n\n#obj1D4E:\n #_00B8A0: dw $15A1, $3585, $B585, $95A1\n #_00B8A8: dw $3589, $3599, $B599, $B589\n #_00B8B0: dw $358A, $359A, $B59A, $B58A\n #_00B8B8: dw $358B, $359B, $B59B, $B58B\n #_00B8C0: dw $158C, $159C, $959C, $958C\n #_00B8C8: dw $15A4, $15A5, $95A5, $95A4\n\n; ---------------------------------------------------------\n\n#obj1D7E:\n #_00B8D0: dw $1590, $1590, $5590, $5590\n\n; ---------------------------------------------------------\n\n#obj1D86:\n #_00B8D8: dw $1580, $9580, $1580, $9580\n\n; ---------------------------------------------------------\n\n#obj1D8E:\n #_00B8E0: dw $1581, $1590, $1580, $1591\n\n; ---------------------------------------------------------\n\n#obj1D96:\n #_00B8E8: dw $1590, $1592, $1582, $9580\n\n; ---------------------------------------------------------\n\n#obj1D9E:\n #_00B8F0: dw $1580, $1593, $1583, $5590\n\n; ---------------------------------------------------------\n\n#obj1DA6:\n #_00B8F8: dw $1584, $9580, $5590, $1594\n\n; ---------------------------------------------------------\n\n#obj1DAE:\n #_00B900: dw $15A3, $1590, $55A3, $5590\n\n; ---------------------------------------------------------\n\n#obj1DB6:\n #_00B908: dw $1590, $95A3, $5590, $D5A3\n\n; ---------------------------------------------------------\n\n#obj1DBE:\n #_00B910: dw $95A2, $15A2, $1580, $9580\n\n; ---------------------------------------------------------\n\n#obj1DC6:\n #_00B918: dw $1580, $9580, $D5A2, $55A2\n\n; ---------------------------------------------------------\n\n#obj1DCE:\n #_00B920: dw $159D, $959D, $559D, $D59D\n\n; ---------------------------------------------------------\n\n#obj1DD6:\n #_00B928: dw $19C4, $19C5\n\n; ---------------------------------------------------------\n\n#obj1DDA:\n #_00B92C: dw $0980, $0990, $0981, $0991\n\n; ---------------------------------------------------------\n\n#obj1DE2:\n #_00B934: dw $8990, $8980, $8991, $8981\n\n; ---------------------------------------------------------\n\n#obj1DEA:\n #_00B93C: dw $0D29, $0D39, $4D29, $4D39\n\n; ---------------------------------------------------------\n\n#obj1DF2:\n #_00B944: dw $19CD, $19CE, $59CD, $59CE\n\n; ---------------------------------------------------------\n\n#obj1DFA:\n #_00B94C: dw $01EC, $1585, $1586, $1587\n #_00B954: dw $1588, $1589, $1578, $5586\n #_00B95C: dw $5585, $01EC, $1594, $1595\n #_00B964: dw $1596, $1597, $1598, $1599\n #_00B96C: dw $1579, $5596, $5595, $5594\n #_00B974: dw $158A, $158B, $158C, $158D\n #_00B97C: dw $158E, $158F, $1572, $558C\n #_00B984: dw $558B, $558A, $159A, $159B\n #_00B98C: dw $159C, $159D, $159E, $159F\n #_00B994: dw $559D, $559C, $559B, $559A\n #_00B99C: dw $15AA, $15AB, $15AC, $15AD\n #_00B9A4: dw $15AE, $15AF, $55AD, $55AC\n #_00B9AC: dw $55AB, $55AA, $15A0, $15A1\n #_00B9B4: dw $15A2, $15A3, $15A4, $15A5\n #_00B9BC: dw $55A3, $55A2, $55A1, $55A0\n #_00B9C4: dw $15A7, $15A8, $154E, $156E\n #_00B9CC: dw $1576, $1577, $556E, $554E\n #_00B9D4: dw $55A8, $55A7, $01EC, $15A9\n #_00B9DC: dw $155E, $157E, $1574, $1575\n\n #_00B9E4: dw $557E, $555E, $55A9, $01EC\n\n; ---------------------------------------------------------\n\n#obj1E9A:\n #_00B9EC: dw $01EC, $31AA, $3161, $3162\n #_00B9F4: dw $3163, $7163, $7162, $7161\n #_00B9FC: dw $71AA, $01EC, $01EC, $3170\n #_00BA04: dw $3171, $3172, $317E, $717E\n #_00BA0C: dw $7172, $7171, $7170, $01EC\n #_00BA14: dw $3144, $3145, $3146, $3147\n #_00BA1C: dw $3148, $7148, $7147, $7146\n #_00BA24: dw $7145, $7144, $3154, $3155\n #_00BA2C: dw $3156, $3157, $3158, $7158\n #_00BA34: dw $7157, $7156, $7155, $7154\n #_00BA3C: dw $3164, $3165, $3166, $3167\n #_00BA44: dw $3168, $7168, $7167, $7166\n #_00BA4C: dw $7165, $7164, $3174, $3175\n #_00BA54: dw $3176, $3177, $3178, $7178\n #_00BA5C: dw $7177, $7176, $7175, $7174\n #_00BA64: dw $3149, $3159, $3169, $3179\n #_00BA6C: dw $31AF, $71AF, $7179, $7169\n #_00BA74: dw $7159, $7149, $31AA, $31AB\n #_00BA7C: dw $31AC, $31AD, $31AE, $71AE\n #_00BA84: dw $71AD, $71AC, $71AB, $71AA\n\n; ---------------------------------------------------------\n\n#obj1F3A:\n #_00BA8C: dw $0DCF, $8DCF, $4DCF, $CDCF\n\n; ---------------------------------------------------------\n\n#obj1F42:\n #_00BA94: dw $0D1F, $8D1F, $4D1F, $CD1F\n\n; ---------------------------------------------------------\n\n#obj1F4A:\n #_00BA9C: dw $0D01, $8D01, $4D01, $CD01\n\n; ---------------------------------------------------------\n\n#obj1F52:\n #_00BAA4: dw $19D0, $19D2, $19D1, $19D3\n\n; ---------------------------------------------------------\n\n#obj1F5A:\n #_00BAAC: dw $0DD4, $0DD6, $0DD5, $0DD7\n\n; ---------------------------------------------------------\n\n#obj1F62:\n #_00BAB4: dw $0993, $0D82, $0D84, $0890\n #_00BABC: dw $0D83, $0D85, $0890, $0D92\n #_00BAC4: dw $0D86, $0890, $4D92, $4D86\n #_00BACC: dw $0890, $0D92, $0D86, $0890\n #_00BAD4: dw $4D92, $4D86, $0890, $4D83\n #_00BADC: dw $4D85, $4993, $4D82, $4D84\n\n; ---------------------------------------------------------\n\n#obj1F92:\n #_00BAE4: dw $094A, $094B, $094B, $494B\n #_00BAEC: dw $494B, $494A, $094E, $0978\n #_00BAF4: dw $0979, $4979, $4978, $494E\n #_00BAFC: dw $094E, $094F, $1DB3, $5DB3\n #_00BB04: dw $494F, $494E, $094E, $094F\n #_00BB0C: dw $1DB4, $5DB4, $494F, $494E\n #_00BB14: dw $094E, $094F, $1DB4, $5DB4\n #_00BB1C: dw $494F, $494E, $094E, $094F\n #_00BB24: dw $9DB3, $DDB3, $494F, $494E\n #_00BB2C: dw $096A, $095E, $095F, $495F\n #_00BB34: dw $495E, $496A, $097A, $096E\n #_00BB3C: dw $096F, $496F, $496E, $497A\n\n; ---------------------------------------------------------\n\n#obj1FF2:\n #_00BB44: dw $11A0, $11A2, $1194, $11A1\n #_00BB4C: dw $11A3, $1195, $51A1, $51A3\n #_00BB54: dw $5195, $11A1, $11A3, $1195\n #_00BB5C: dw $51A1, $51A3, $5195, $51A0\n #_00BB64: dw $51A2, $5194\n\n; ---------------------------------------------------------\n\n#obj2016:\n #_00BB68: dw $0DAA, $0DAC, $0DAE, $0DAB\n #_00BB70: dw $0DAD, $0DAF, $4DAB, $4DAD\n #_00BB78: dw $4DAF, $4DAA, $4DAC, $4DAE\n\n; ---------------------------------------------------------\n\n#obj202E:\n #_00BB80: dw $0D51, $0D66, $1D64, $1D44\n #_00BB88: dw $1D54, $1D64, $1D54, $09EF\n #_00BB90: dw $0D55, $0D65, $156B, $157B\n #_00BB98: dw $158B, $1D40, $19B2, $157C\n #_00BBA0: dw $158C, $1D41, $156C, $157D\n #_00BBA8: dw $158C, $5D41, $14E4, $14E5\n #_00BBB0: dw $158D, $1D41\n\n; ---------------------------------------------------------\n\n#obj2062:\n #_00BBB4: dw $1540, $1550, $1576, $1541\n #_00BBBC: dw $1551, $1577, $5541, $5551\n #_00BBC4: dw $5577, $1541, $1551, $1577\n #_00BBCC: dw $5541, $5551, $5577, $5540\n #_00BBD4: dw $5550, $5576\n\n; ---------------------------------------------------------\n\n#obj2086:\n #_00BBD8: dw $1180, $1190, $1190, $1190\n #_00BBE0: dw $1191, $1186, $1196, $1181\n #_00BBE8: dw $5190, $5190, $5190, $5191\n #_00BBF0: dw $5186, $5196, $1182, $1192\n #_00BBF8: dw $1184, $1194, $11A4, $11A4\n #_00BC00: dw $11A4, $1183, $1193, $1185\n #_00BC08: dw $1195, $11A4, $11A4, $11A4\n #_00BC10: dw $5183, $5193, $5185, $5195\n #_00BC18: dw $51A4, $51A4, $51A4, $5182\n #_00BC20: dw $5192, $5184, $5194, $51A4\n #_00BC28: dw $51A4, $51A4, $5181, $1190\n #_00BC30: dw $1190, $1190, $1191, $1186\n #_00BC38: dw $1196, $5180, $5190, $5190\n #_00BC40: dw $5190, $5191, $5186, $5196\n\n; ---------------------------------------------------------\n\n#obj20F6:\n #_00BC48: dw $1593, $1580, $1580, $1580\n #_00BC50: dw $1580, $1580, $1580, $1580\n #_00BC58: dw $1580, $1580, $15A1, $1580\n #_00BC60: dw $1580, $1580, $1580, $1580\n #_00BC68: dw $1580, $1580, $1580, $1580\n #_00BC70: dw $1582, $15A3, $1580, $5583\n #_00BC78: dw $5593, $1580, $1580, $1580\n #_00BC80: dw $1582, $1592, $1580, $1583\n #_00BC88: dw $1596, $1580, $55A1, $D5A1\n #_00BC90: dw $1580, $1580, $1580, $1583\n #_00BC98: dw $1593, $1580, $1580, $55A1\n #_00BCA0: dw $1580, $5582, $5592, $1580\n #_00BCA8: dw $1580, $1580, $1580, $1580\n #_00BCB0: dw $1580, $1580, $55A0, $1580\n #_00BCB8: dw $1580, $1580, $15B4, $15B3\n #_00BCC0: dw $95B3, $95B4, $1580, $1580\n #_00BCC8: dw $1580, $5591, $1580, $1580\n #_00BCD0: dw $15B6, $15B5, $1581, $1581\n #_00BCD8: dw $95B5, $95B6, $1580, $1580\n #_00BCE0: dw $5590, $95A0, $15B7, $15B5\n #_00BCE8: dw $1581, $1581, $1581, $1581\n #_00BCF0: dw $95B5, $95B7, $1580, $55A1\n #_00BCF8: dw $95A1, $15B8, $1581, $1595\n #_00BD00: dw $15A5, $95A5, $9595, $9581\n #_00BD08: dw $95B8, $1580, $55A0, $D5A1\n #_00BD10: dw $15B9, $1585, $15A4, $15A4\n #_00BD18: dw $15A4, $15A4, $9585, $95B9\n #_00BD20: dw $1580, $5591, $D5A0, $15B2\n #_00BD28: dw $1586, $15A4, $15A4, $15A4\n #_00BD30: dw $15A4, $9586, $95B2, $1580\n #_00BD38: dw $5590, $1580, $55B2, $5586\n #_00BD40: dw $15A4, $15A4, $15A4, $15A4\n #_00BD48: dw $D586, $D5B2, $1580, $1590\n #_00BD50: dw $1580, $55B9, $5585, $15A4\n #_00BD58: dw $15A4, $15A4, $15A4, $D585\n #_00BD60: dw $D5B9, $1580, $1591, $1580\n #_00BD68: dw $55B8, $5581, $5595, $55A5\n #_00BD70: dw $D5A5, $D595, $D581, $D5B8\n #_00BD78: dw $1580, $15A0, $1580, $55B7\n #_00BD80: dw $55B5, $5581, $5581, $5581\n #_00BD88: dw $5581, $D5B5, $D5B7, $1582\n #_00BD90: dw $1596, $1580, $1580, $55B6\n #_00BD98: dw $55B5, $5581, $5581, $D5B5\n #_00BDA0: dw $D5B6, $1580, $1583, $1596\n #_00BDA8: dw $95A0, $1580, $1580, $55B4\n #_00BDB0: dw $55B3, $D5B3, $D5B4, $1580\n #_00BDB8: dw $1580, $1580, $1590, $95A1\n #_00BDC0: dw $1580, $1580, $1580, $1580\n #_00BDC8: dw $1580, $1580, $1580, $1580\n #_00BDD0: dw $1580, $1591, $9590, $1580\n #_00BDD8: dw $5583, $5593, $1580, $1582\n #_00BDE0: dw $1592, $1580, $1580, $1580\n #_00BDE8: dw $15A0, $9591, $1580, $55A1\n #_00BDF0: dw $D5A1, $1580, $1583, $1593\n #_00BDF8: dw $1580, $1580, $1580, $15A1\n #_00BE00: dw $95A0, $1580, $5582, $5592\n #_00BE08: dw $1580, $1580, $1580, $1580\n #_00BE10: dw $1580, $1580, $1590, $95A1\n #_00BE18: dw $1580, $1580, $1580, $1580\n #_00BE20: dw $1580, $1580, $1580, $1580\n #_00BE28: dw $1580, $1591\n\n; ---------------------------------------------------------\n\n#obj22DA:\n #_00BE2C: dw $0CEE, $D594, $1584, $15A3\n #_00BE34: dw $5594, $1594\n\n; ---------------------------------------------------------\n\n#obj22E6:\n #_00BE38: dw $0D09, $0D19, $4D09, $4D19\n\n; ---------------------------------------------------------\n\n#obj22EE:\n #_00BE40: dw $0D0A, $0D1A, $4D0A, $4D1A\n\n; ---------------------------------------------------------\n\n#obj22F6:\n #_00BE48: dw $0D4A, $0D5A, $0D6A, $0D7A\n #_00BE50: dw $0D4B, $0D5B, $0D6B, $0D7B\n #_00BE58: dw $4D4B, $4D5B, $4D6B, $4D7B\n #_00BE60: dw $4D4A, $4D5A, $4D6A, $4D7A\n\n; ---------------------------------------------------------\n\n#obj2316:\n #_00BE68: dw $0966, $0956, $1D48, $0967\n #_00BE70: dw $0957, $1DBE, $4967, $4957\n #_00BE78: dw $5DBE, $4966, $4956, $5D48\n\n; ---------------------------------------------------------\n\n#obj232E:\n #_00BE80: dw $9D48, $8956, $8966, $9DBE\n #_00BE88: dw $8957, $8967, $DDBE, $C957\n #_00BE90: dw $C967, $DD48, $C956, $C966\n\n; ---------------------------------------------------------\n\n#obj2346:\n #_00BE98: dw $0968, $0969, $8969, $8968\n #_00BEA0: dw $0958, $0959, $8959, $8958\n #_00BEA8: dw $1D49, $1DBF, $9DBF, $9D49\n\n; ---------------------------------------------------------\n\n#obj235E:\n #_00BEB0: dw $5D49, $5DBF, $DDBF, $DD49\n #_00BEB8: dw $4958, $4959, $C959, $C958\n #_00BEC0: dw $4968, $4969, $C969, $C968\n\n; ---------------------------------------------------------\n\n#obj2376:\n #_00BEC8: dw $113D, $113D, $113D, $113D\n #_00BED0: dw $113D, $113D, $113D, $113D\n #_00BED8: dw $113D, $113D, $113D, $113D\n #_00BEE0: dw $113D, $113D, $113D, $113D\n\n#obj2396:\n #_00BEE8: dw $1164, $1164, $1164, $1174\n #_00BEF0: dw $1165, $1165, $1165, $1175\n #_00BEF8: dw $5165, $5165, $5165, $5175\n #_00BF00: dw $5164, $5164, $5164, $5174\n\n; ---------------------------------------------------------\n\n#obj23B6:\n #_00BF08: dw $1144, $1154, $1154, $1154\n #_00BF10: dw $1176, $112D, $112D, $112D\n #_00BF18: dw $1145, $1155, $1155, $1155\n #_00BF20: dw $1176, $112D, $112D, $112D\n #_00BF28: dw $5176, $512D, $512D, $512D\n #_00BF30: dw $5145, $5155, $5155, $5155\n #_00BF38: dw $5176, $512D, $512D, $512D\n #_00BF40: dw $5144, $5154, $5154, $5154\n #_00BF48: dw $1154, $1154, $1154, $9144\n #_00BF50: dw $112D, $112D, $112D, $9176\n #_00BF58: dw $1155, $1155, $1155, $9145\n #_00BF60: dw $112D, $112D, $112D, $9176\n #_00BF68: dw $512D, $512D, $512D, $D176\n #_00BF70: dw $5155, $5155, $5155, $D145\n #_00BF78: dw $512D, $512D, $512D, $D176\n #_00BF80: dw $5154, $5154, $5154, $D144\n\n; ---------------------------------------------------------\n\n#obj2436:\n #_00BF88: dw $09E5, $09F5, $0936, $09FA\n #_00BF90: dw $49E5, $09F7, $0937, $09FB\n #_00BF98: dw $0000, $0000, $0000, $0CAC\n #_00BFA0: dw $0000, $0000, $0000, $4CAC\n #_00BFA8: dw $0000, $0000, $0000, $0CAC\n #_00BFB0: dw $0000, $0000, $0000, $4CAC\n #_00BFB8: dw $09E5, $49F7, $4937, $49FB\n #_00BFC0: dw $49E5, $49F5, $4936, $49FA\n #_00BFC8: dw $1414, $9414, $1414, $9414\n #_00BFD0: dw $5414, $D414, $5414, $D414\n #_00BFD8: dw $1414, $14E9, $14F9, $9414\n #_00BFE0: dw $5414, $14EA, $14FA, $D414\n #_00BFE8: dw $1414, $54EA, $54FA, $9414\n #_00BFF0: dw $5414, $54E9, $54F9, $D414\n #_00BFF8: dw $1414, $9414, $1414, $9414\n #_00C000: dw $5414, $D414, $5414, $D414\n\n; ---------------------------------------------------------\n\n#obj24B6:\n #_00C008: dw $2984, $09AC, $0994, $2985\n #_00C010: dw $15AD, $1595, $2986, $15AE\n #_00C018: dw $1596, $2987, $09AF, $0997\n #_00C020: dw $6987, $49AF, $4997, $6986\n #_00C028: dw $55AE, $5596, $6985, $55AD\n #_00C030: dw $5595, $6984, $49AC, $4994\n\n; ---------------------------------------------------------\n\n#obj24E6:\n #_00C038: dw $0980, $0990, $09A0, $0981\n #_00C040: dw $0991, $09A1, $0982, $0992\n #_00C048: dw $11A2, $1183, $1193, $11A3\n #_00C050: dw $5183, $5193, $51A3, $4982\n #_00C058: dw $4992, $51A2, $4981, $4991\n #_00C060: dw $49A1, $4980, $4990, $49A0\n\n; ---------------------------------------------------------\n\n#obj2516:\n #_00C068: dw $490C, $C90C, $099A, $09AA\n #_00C070: dw $090C, $098B, $099B, $09AB\n #_00C078: dw $490C, $498B, $499B, $49AB\n #_00C080: dw $090C, $890C, $499A, $49AA\n #_00C088: dw $490C, $09A8, $09A6, $C90C\n #_00C090: dw $098A, $09A9, $09A7, $890C\n #_00C098: dw $498A, $49A9, $49A7, $C90C\n #_00C0A0: dw $090C, $49A8, $49A6, $890C\n\n; ---------------------------------------------------------\n\n#obj2556:\n #_00C0A8: dw $09AC, $0994, $1D8C, $01EC\n #_00C0B0: dw $15AD, $1595, $1D9C, $01EC\n #_00C0B8: dw $15AE, $1596, $1D9C, $01EC\n #_00C0C0: dw $09AF, $0997, $1D9C, $01EC\n #_00C0C8: dw $49AF, $4997, $1D9C, $01EC\n #_00C0D0: dw $55AE, $5596, $1D9C, $01EC\n #_00C0D8: dw $55AD, $5595, $1D9C, $01EC\n #_00C0E0: dw $49AC, $4994, $5D8C, $01EC\n\n#obj2596:\n #_00C0E8: dw $09AC, $0994, $1D8C, $1D8C\n #_00C0F0: dw $15AD, $1595, $1D9C, $1D9C\n #_00C0F8: dw $15AE, $1596, $1D9C, $1D9C\n #_00C100: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C108: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C110: dw $55AE, $5596, $1D9C, $1D9C\n #_00C118: dw $55AD, $5595, $1D9C, $1D9C\n #_00C120: dw $49AC, $4994, $5D8C, $5D8C\n\n#obj25D6:\n #_00C128: dw $09AC, $0994, $1D8C, $1D8C\n #_00C130: dw $15AD, $1595, $1D9C, $1D9C\n #_00C138: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C140: dw $1D88, $1D98, $1D89, $1D99\n #_00C148: dw $1D88, $1D98, $1D89, $1D99\n #_00C150: dw $1D88, $1D98, $1D9C, $1D9C\n #_00C158: dw $55AD, $5595, $1D9C, $1D9C\n #_00C160: dw $49AC, $4994, $5D8C, $5D8C\n\n#obj2616:\n #_00C168: dw $09AC, $0994, $1D8C, $1D8C\n #_00C170: dw $1D8D, $1D98, $1D89, $1D99\n #_00C178: dw $1D88, $1D98, $1D89, $1D99\n #_00C180: dw $1D88, $1D98, $1D89, $1D99\n #_00C188: dw $1D88, $1D98, $1D89, $1D99\n #_00C190: dw $1D88, $1D98, $1D89, $1D99\n #_00C198: dw $5D8D, $1D98, $1D89, $1D99\n #_00C1A0: dw $49AC, $4994, $5D8C, $5D8C\n\n; ---------------------------------------------------------\n\n#obj2656:\n #_00C1A8: dw $08D0, $08D0, $08D0, $08D0\n #_00C1B0: dw $08D0, $48D0, $48D0, $48D0\n #_00C1B8: dw $48D0, $48D0, $08D0, $14C0\n #_00C1C0: dw $14C0, $14C0, $14C0, $54C0\n #_00C1C8: dw $54C0, $54C0, $54C0, $48D0\n #_00C1D0: dw $08D0, $14C0, $14C0, $14C0\n #_00C1D8: dw $14D1, $54D1, $54C0, $54C0\n #_00C1E0: dw $54C0, $48D0, $08D0, $14C0\n #_00C1E8: dw $14C0, $14C2, $14C3, $54C3\n #_00C1F0: dw $54C2, $54C0, $54C0, $48D0\n #_00C1F8: dw $097C, $097D, $097F, $14C4\n #_00C200: dw $14C5, $54C5, $54C4, $497F\n #_00C208: dw $497D, $497C, $096C, $096D\n #_00C210: dw $096F, $0908, $14E8, $54E8\n #_00C218: dw $4908, $496F, $496D, $496C\n #_00C220: dw $095C, $095D, $095F, $0918\n #_00C228: dw $14F8, $54F8, $4918, $495F\n #_00C230: dw $495D, $495C, $094C, $094D\n #_00C238: dw $094F, $A888, $A889, $E889\n #_00C240: dw $E888, $494F, $494D, $494C\n\n; ---------------------------------------------------------\n\n#obj26F6:\n #_00C248: dw $14C8, $097E, $096E, $295E\n #_00C250: dw $14D8, $14C9, $14D9, $294E\n #_00C258: dw $54D8, $54C9, $54D9, $694E\n #_00C260: dw $54C8, $497E, $496E, $695E\n\n; =========================================================\n\n#obj2716:\n #_00C268: dw $2888, $0808, $0818, $2889\n #_00C270: dw $09EF, $0878, $6889, $09EF\n #_00C278: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj272E:\n #_00C280: dw $282C, $0808, $080D, $282D\n #_00C288: dw $09EF, $0878, $682D, $09EF\n #_00C290: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj2746:\n #_00C298: dw $2888, $0808, $0818, $2889\n #_00C2A0: dw $09EF, $0878, $6889, $09EF\n #_00C2A8: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj275E:\n #_00C2B0: dw $0882, $0824, $0834, $0883\n #_00C2B8: dw $0825, $0835, $4883, $4825\n #_00C2C0: dw $4835, $4882, $4824, $4834\n\n; ---------------------------------------------------------\n\n#obj2776:\n #_00C2C8: dw $0890, $0896, $08A2, $0891\n #_00C2D0: dw $0897, $08A3, $0890, $0896\n #_00C2D8: dw $08A2, $0891, $0897, $08A3\n\n; ---------------------------------------------------------\n\n#obj278E:\n #_00C2E0: dw $0882, $0800, $0810, $0883\n #_00C2E8: dw $0802, $0812, $4883, $4802\n #_00C2F0: dw $4812, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27A6:\n #_00C2F8: dw $0882, $0800, $0810, $0883\n #_00C300: dw $0801, $0811, $4883, $4801\n #_00C308: dw $4811, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27BE:\n #_00C310: dw $0882, $0800, $0810, $0883\n #_00C318: dw $0802, $0812, $4883, $4802\n #_00C320: dw $4812, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj27D6:\n #_00C328: dw $08B0, $0800, $080B, $08B1\n #_00C330: dw $0802, $0812, $48B1, $4802\n #_00C338: dw $4812, $48B0, $4800, $480B\n\n; ---------------------------------------------------------\n\n#obj27EE:\n #_00C340: dw $0890, $08BA, $08A9, $08B4\n #_00C348: dw $088C, $088E, $48B4, $088D\n #_00C350: dw $088F, $0891, $48BA, $48A9\n\n; ---------------------------------------------------------\n\n#obj2806:\n #_00C358: dw $0882, $0800, $0810, $0883\n #_00C360: dw $0801, $0811, $4883, $4801\n #_00C368: dw $4811, $4882, $4800, $4810\n\n; ---------------------------------------------------------\n\n#obj281E:\n #_00C370: dw $0890, $0896, $08A2, $0891\n #_00C378: dw $088C, $088E, $0890, $088D\n #_00C380: dw $088F, $0891, $0897, $08A3\n\n; ---------------------------------------------------------\n\n#obj2836:\n #_00C388: dw $0882, $0824, $0834, $0883\n #_00C390: dw $0825, $0835, $4883, $4825\n #_00C398: dw $4835, $4882, $4824, $4834\n\n; ---------------------------------------------------------\n\n#obj284E:\n #_00C3A0: dw $2888, $0808, $0818, $2889\n #_00C3A8: dw $09EF, $0878, $6889, $09EF\n #_00C3B0: dw $4878, $6888, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj2866:\n #_00C3B8: dw $282C, $0808, $080D, $282D\n #_00C3C0: dw $09EF, $0878, $682D, $09EF\n #_00C3C8: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj287E:\n #_00C3D0: dw $08B0, $0800, $080B, $08B1\n #_00C3D8: dw $0801, $0811, $48B1, $4801\n #_00C3E0: dw $4811, $48B0, $4800, $480B\n\n; ---------------------------------------------------------\n\n#obj2896:\n #_00C3E8: dw $08B0, $0824, $080C, $08B1\n #_00C3F0: dw $0825, $0835, $48B1, $4825\n #_00C3F8: dw $4835, $48B0, $4824, $480C\n\n; ---------------------------------------------------------\n\n#obj28AE:\n #_00C400: dw $282C, $0808, $080D, $282D\n #_00C408: dw $09EF, $0878, $682D, $09EF\n #_00C410: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj28C6:\n #_00C418: dw $08B0, $0824, $080C, $08B1\n #_00C420: dw $0825, $0835, $48B1, $4825\n #_00C428: dw $4835, $48B0, $4824, $480C\n\n; ---------------------------------------------------------\n\n#obj28DE:\n #_00C430: dw $282C, $0808, $080D, $282D\n #_00C438: dw $09EF, $0878, $682D, $09EF\n #_00C440: dw $4878, $682C, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj28F6:\n #_00C448: dw $2882, $0808, $0818, $2883\n #_00C450: dw $09EF, $0878, $6883, $09EF\n #_00C458: dw $4878, $6882, $4808, $4818\n\n; ---------------------------------------------------------\n\n#obj290E:\n #_00C460: dw $2886, $0877, $0875, $2887\n #_00C468: dw $09EF, $0859, $6887, $09EF\n #_00C470: dw $4859, $6886, $4877, $4875\n\n; ---------------------------------------------------------\n\n#obj2926:\n #_00C478: dw $0872, $0872, $0872, $0873\n #_00C480: dw $0874, $0875, $0876, $0876\n #_00C488: dw $0876, $0876, $0876, $0876\n #_00C490: dw $085B, $4876, $4876, $4876\n #_00C498: dw $4876, $4876, $4876, $4872\n #_00C4A0: dw $4872, $4872, $4873, $4874\n #_00C4A8: dw $4875\n\n; ---------------------------------------------------------\n\n#obj2958:\n #_00C4AA: dw $296E, $115E, $1178, $1158\n #_00C4B2: dw $696E, $09EF, $0878, $1174\n #_00C4BA: dw $296E, $49EF, $4878, $5174\n #_00C4C2: dw $696E, $515E, $5178, $5158\n\n; ---------------------------------------------------------\n\n#obj2978:\n #_00C4CA: dw $28B0, $0808, $080D, $28B1\n #_00C4D2: dw $09EF, $0878, $68B1, $09EF\n #_00C4DA: dw $4878, $68B0, $4808, $480D\n\n; ---------------------------------------------------------\n\n#obj2990:\n #_00C4E2: dw $28B8, $2808, $0818, $289D\n #_00C4EA: dw $082E, $083E, $689D, $082F\n #_00C4F2: dw $083F, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj29A8:\n #_00C4FA: dw $28B8, $2808, $0818, $28B9\n #_00C502: dw $09EF, $0819, $68B9, $09EF\n #_00C50A: dw $081A, $68B8, $6808, $4818\n\n; ---------------------------------------------------------\n\n#obj29C0:\n #_00C512: dw $28B5, $2808, $080D, $28B7\n #_00C51A: dw $082E, $083E, $68B7, $082F\n #_00C522: dw $083F, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj29D8:\n #_00C52A: dw $28B5, $2808, $080D, $28B6\n #_00C532: dw $09EF, $0819, $68B6, $09EF\n #_00C53A: dw $081A, $68B5, $6808, $480D\n\n; ---------------------------------------------------------\n\n#obj29F0:\n #_00C542: dw $8818, $8808, $A888, $8878\n #_00C54A: dw $09EF, $A889, $8878, $09EF\n #_00C552: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A08:\n #_00C55A: dw $880D, $8808, $A82C, $8878\n #_00C562: dw $09EF, $A82D, $C878, $09EF\n #_00C56A: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2A20:\n #_00C572: dw $8818, $8808, $A888, $8878\n #_00C57A: dw $09EF, $A889, $8878, $09EF\n #_00C582: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A38:\n #_00C58A: dw $8834, $8824, $8882, $8835\n #_00C592: dw $8825, $8883, $C835, $C825\n #_00C59A: dw $C883, $C834, $C824, $C882\n\n; ---------------------------------------------------------\n\n#obj2A50:\n #_00C5A2: dw $88A2, $8896, $8890, $88A3\n #_00C5AA: dw $8897, $8891, $88A2, $8896\n #_00C5B2: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2A68:\n #_00C5BA: dw $8810, $8800, $8882, $8812\n #_00C5C2: dw $8802, $8883, $C812, $C802\n #_00C5CA: dw $C883, $C810, $C800, $C882\n\n; ---------------------------------------------------------\n\n#obj2A80:\n #_00C5D2: dw $8818, $8808, $A888, $8878\n #_00C5DA: dw $09EF, $A889, $8878, $09EF\n #_00C5E2: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2A98:\n #_00C5EA: dw $88A9, $88BA, $8890, $888E\n #_00C5F2: dw $888C, $88B4, $888F, $888D\n #_00C5FA: dw $C8B4, $C8A9, $C8BA, $8891\n\n; ---------------------------------------------------------\n\n#obj2AB0:\n #_00C602: dw $88A2, $8896, $8890, $888E\n #_00C60A: dw $888C, $8891, $888F, $888D\n #_00C612: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2AC8:\n #_00C61A: dw $8810, $8800, $8882, $8811\n #_00C622: dw $8801, $8883, $C811, $C801\n #_00C62A: dw $C883, $C810, $C800, $C882\n\n; ---------------------------------------------------------\n\n#obj2AE0:\n #_00C632: dw $88A2, $8896, $8890, $888E\n #_00C63A: dw $888C, $8891, $888F, $888D\n #_00C642: dw $8890, $88A3, $8897, $8891\n\n; ---------------------------------------------------------\n\n#obj2AF8:\n #_00C64A: dw $8818, $8808, $A888, $8878\n #_00C652: dw $09EF, $A889, $8878, $09EF\n #_00C65A: dw $E889, $C818, $C808, $E888\n\n; ---------------------------------------------------------\n\n#obj2B10:\n #_00C662: dw $8834, $8824, $8882, $8835\n #_00C66A: dw $8825, $8883, $C835, $C825\n #_00C672: dw $C883, $C834, $C824, $C882\n\n; ---------------------------------------------------------\n\n#obj2B28:\n #_00C67A: dw $880D, $8808, $A82C, $8878\n #_00C682: dw $09EF, $A82D, $C878, $09EF\n #_00C68A: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2B40:\n #_00C692: dw $880B, $8800, $88B0, $8811\n #_00C69A: dw $8801, $88B1, $C811, $C801\n #_00C6A2: dw $C8B1, $C80B, $C800, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2B58:\n #_00C6AA: dw $880C, $8824, $88B0, $8835\n #_00C6B2: dw $8825, $88B1, $C835, $C825\n #_00C6BA: dw $C8B1, $C80C, $C824, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2B70:\n #_00C6C2: dw $880D, $8808, $A82C, $8878\n #_00C6CA: dw $09EF, $A82D, $C878, $09EF\n #_00C6D2: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2B88:\n #_00C6DA: dw $880D, $8808, $A82C, $8878\n #_00C6E2: dw $09EF, $A82D, $C878, $09EF\n #_00C6EA: dw $E82D, $C80D, $C808, $E82C\n\n; ---------------------------------------------------------\n\n#obj2BA0:\n #_00C6F2: dw $880C, $8824, $88B0, $8835\n #_00C6FA: dw $8825, $88B1, $C835, $C825\n #_00C702: dw $C8B1, $C80C, $C824, $C8B0\n\n; ---------------------------------------------------------\n\n#obj2BB8:\n #_00C70A: dw $8818, $8808, $A882, $8878\n #_00C712: dw $09EF, $A883, $C878, $09EF\n #_00C71A: dw $E883, $C818, $C808, $E882\n\n; ---------------------------------------------------------\n\n#obj2BD0:\n #_00C722: dw $8875, $8877, $A886, $8859\n #_00C72A: dw $09EF, $A887, $C859, $09EF\n #_00C732: dw $E887, $C875, $C877, $E886\n\n; ---------------------------------------------------------\n\n#obj2BE8:\n #_00C73A: dw $8875, $8874, $8873, $8872\n #_00C742: dw $8872, $8872, $8876, $8876\n #_00C74A: dw $8876, $8876, $8876, $8876\n #_00C752: dw $085B, $C876, $C876, $C876\n #_00C75A: dw $C876, $C876, $C876, $C875\n #_00C762: dw $C874, $C873, $C872, $C872\n #_00C76A: dw $C872\n\n; ---------------------------------------------------------\n\n#obj2C1A:\n #_00C76C: dw $9158, $9178, $915E, $A96E\n #_00C774: dw $9174, $8878, $89EF, $E96E\n #_00C77C: dw $D174, $C878, $C9EF, $A96E\n #_00C784: dw $D158, $D178, $D15E, $E96E\n\n; ---------------------------------------------------------\n\n#obj2C3A:\n #_00C78C: dw $880D, $8808, $A8B0, $8878\n #_00C794: dw $09EF, $A8B1, $C878, $09EF\n #_00C79C: dw $E8B1, $C80D, $C808, $E8B0\n\n; ---------------------------------------------------------\n\n#obj2C52:\n #_00C7A4: dw $0960, $296E, $295E, $14C9\n #_00C7AC: dw $14D9, $294E, $54C9, $54D9\n #_00C7B4: dw $694E, $4960, $696E, $695E\n\n; ---------------------------------------------------------\n\n#obj2C6A:\n #_00C7BC: dw $288A, $288B, $A88B, $A88A\n #_00C7C4: dw $0809, $09EF, $09EF, $8809\n #_00C7CC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2C82:\n #_00C7D4: dw $283C, $283D, $A83D, $A83C\n #_00C7DC: dw $0809, $09EF, $09EF, $8809\n #_00C7E4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2C9A:\n #_00C7EC: dw $288A, $288B, $A88B, $A88A\n #_00C7F4: dw $0809, $09EF, $09EF, $8809\n #_00C7FC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2CB2:\n #_00C804: dw $0884, $0885, $8885, $8884\n #_00C80C: dw $0826, $0836, $8836, $8826\n #_00C814: dw $0827, $0837, $8837, $8827\n\n; ---------------------------------------------------------\n\n#obj2CCA:\n #_00C81C: dw $0892, $0893, $0892, $0893\n #_00C824: dw $0898, $0899, $0898, $0899\n #_00C82C: dw $082D, $083D, $082D, $083D\n\n; ---------------------------------------------------------\n\n#obj2CE2:\n #_00C834: dw $0884, $0885, $8885, $8884\n #_00C83C: dw $0803, $0805, $8805, $8803\n #_00C844: dw $0804, $0806, $8806, $8804\n\n; ---------------------------------------------------------\n\n#obj2CFA:\n #_00C84C: dw $0892, $08A8, $88A8, $0893\n #_00C854: dw $08BB, $08BC, $08BD, $88BB\n #_00C85C: dw $08AA, $08BE, $08BF, $88AA\n\n; ---------------------------------------------------------\n\n#obj2D12:\n #_00C864: dw $0884, $0885, $8885, $8884\n #_00C86C: dw $0803, $0813, $8813, $8803\n #_00C874: dw $0804, $0814, $8814, $8804\n\n; ---------------------------------------------------------\n\n#obj2D2A:\n #_00C87C: dw $0892, $0893, $0892, $0893\n #_00C884: dw $0898, $08BC, $08BD, $0899\n #_00C88C: dw $08A4, $08BE, $08BF, $08A5\n\n; ---------------------------------------------------------\n\n#obj2D42:\n #_00C894: dw $0884, $0885, $8885, $8884\n #_00C89C: dw $0826, $0836, $8836, $8826\n #_00C8A4: dw $0827, $0837, $8837, $8827\n\n; ---------------------------------------------------------\n\n#obj2D5A:\n #_00C8AC: dw $288A, $288B, $A88B, $A88A\n #_00C8B4: dw $0809, $09EF, $09EF, $8809\n #_00C8BC: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2D72:\n #_00C8C4: dw $283C, $283D, $A83D, $A83C\n #_00C8CC: dw $0809, $09EF, $09EF, $8809\n #_00C8D4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2D8A:\n #_00C8DC: dw $08B2, $08B3, $88B3, $88B2\n #_00C8E4: dw $0803, $0813, $8813, $8803\n #_00C8EC: dw $081B, $0814, $8814, $881B\n\n; ---------------------------------------------------------\n\n#obj2DA2:\n #_00C8F4: dw $08B2, $08B3, $88B3, $88B2\n #_00C8FC: dw $0826, $0836, $8836, $8826\n #_00C904: dw $081C, $0837, $8837, $881C\n\n; ---------------------------------------------------------\n\n#obj2DBA:\n #_00C90C: dw $283C, $283D, $A83D, $A83C\n #_00C914: dw $0809, $09EF, $09EF, $8809\n #_00C91C: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2DD2:\n #_00C924: dw $08B2, $08B3, $88B3, $88B2\n #_00C92C: dw $0826, $0836, $8836, $8826\n #_00C934: dw $081C, $0837, $8837, $881C\n\n; ---------------------------------------------------------\n\n#obj2DEA:\n #_00C93C: dw $283C, $283D, $A83D, $A83C\n #_00C944: dw $0809, $09EF, $09EF, $8809\n #_00C94C: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2E02:\n #_00C954: dw $2884, $2885, $A885, $A884\n #_00C95C: dw $0809, $09EF, $09EF, $8809\n #_00C964: dw $080A, $0879, $8879, $880A\n\n; ---------------------------------------------------------\n\n#obj2E1A:\n #_00C96C: dw $28A0, $28A1, $A8A1, $A8A0\n #_00C974: dw $0867, $09EF, $09EF, $8867\n #_00C97C: dw $0865, $085A, $885A, $8865\n\n; ---------------------------------------------------------\n\n#obj2E32:\n #_00C984: dw $297E, $A97E, $297E, $A97E\n #_00C98C: dw $11AC, $09EF, $89EF, $91AC\n #_00C994: dw $1179, $0879, $8879, $9179\n #_00C99C: dw $1157, $1175, $9175, $9157\n\n; ---------------------------------------------------------\n\n#obj2E52:\n #_00C9A4: dw $28B2, $28B3, $A8B3, $A8B2\n #_00C9AC: dw $0809, $09EF, $09EF, $8809\n #_00C9B4: dw $081D, $0879, $8879, $881D\n\n; ---------------------------------------------------------\n\n#obj2E6A:\n #_00C9BC: dw $480A, $4879, $C879, $C80A\n #_00C9C4: dw $4809, $09EF, $09EF, $C809\n #_00C9CC: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2E82:\n #_00C9D4: dw $481D, $4879, $C879, $C81D\n #_00C9DC: dw $4809, $09EF, $09EF, $C809\n #_00C9E4: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2E9A:\n #_00C9EC: dw $480A, $4879, $C879, $C80A\n #_00C9F4: dw $4809, $09EF, $09EF, $C809\n #_00C9FC: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2EB2:\n #_00CA04: dw $4827, $4837, $C837, $C827\n #_00CA0C: dw $4826, $4836, $C836, $C826\n #_00CA14: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2ECA:\n #_00CA1C: dw $482D, $483D, $482D, $483D\n #_00CA24: dw $4898, $4899, $4898, $4899\n #_00CA2C: dw $4892, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj2EE2:\n #_00CA34: dw $4804, $4806, $C806, $C804\n #_00CA3C: dw $4803, $4805, $C805, $C803\n #_00CA44: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2EFA:\n #_00CA4C: dw $48AA, $48BE, $48BF, $C8AA\n #_00CA54: dw $48BB, $48BC, $48BD, $C8BB\n #_00CA5C: dw $4892, $48A8, $C8A8, $4893\n\n; ---------------------------------------------------------\n\n#obj2F12:\n #_00CA64: dw $4804, $4814, $C814, $C804\n #_00CA6C: dw $4803, $4813, $C813, $C803\n #_00CA74: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2F2A:\n #_00CA7C: dw $48A4, $48BE, $48BF, $48A5\n #_00CA84: dw $4898, $48BC, $48BD, $4899\n #_00CA8C: dw $4892, $4893, $4892, $4893\n\n; ---------------------------------------------------------\n\n#obj2F42:\n #_00CA94: dw $480A, $4879, $C879, $C80A\n #_00CA9C: dw $4809, $09EF, $09EF, $C809\n #_00CAA4: dw $688A, $688B, $E88B, $E88A\n\n; ---------------------------------------------------------\n\n#obj2F5A:\n #_00CAAC: dw $4827, $4837, $C837, $C827\n #_00CAB4: dw $4826, $4836, $C836, $C826\n #_00CABC: dw $4884, $4885, $C885, $C884\n\n; ---------------------------------------------------------\n\n#obj2F72:\n #_00CAC4: dw $481D, $4879, $C879, $C81D\n #_00CACC: dw $4809, $09EF, $09EF, $C809\n #_00CAD4: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2F8A:\n #_00CADC: dw $481B, $4814, $C814, $C81B\n #_00CAE4: dw $4803, $4813, $C813, $C803\n #_00CAEC: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj2FA2:\n #_00CAF4: dw $481C, $4837, $C837, $C81C\n #_00CAFC: dw $4826, $4836, $C836, $C826\n #_00CB04: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj2FBA:\n #_00CB0C: dw $481D, $4879, $C879, $C81D\n #_00CB14: dw $4809, $09EF, $09EF, $C809\n #_00CB1C: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2FD2:\n #_00CB24: dw $481D, $4879, $C879, $C81D\n #_00CB2C: dw $4809, $09EF, $09EF, $C809\n #_00CB34: dw $683C, $683D, $E83D, $E83C\n\n; ---------------------------------------------------------\n\n#obj2FEA:\n #_00CB3C: dw $481C, $4837, $C837, $C81C\n #_00CB44: dw $4826, $4836, $C836, $C826\n #_00CB4C: dw $48B2, $48B3, $C8B3, $C8B2\n\n; ---------------------------------------------------------\n\n#obj3002:\n #_00CB54: dw $480A, $4879, $C879, $C80A\n #_00CB5C: dw $4809, $09EF, $09EF, $C809\n #_00CB64: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj301A:\n #_00CB6C: dw $4865, $485A, $C85A, $C865\n #_00CB74: dw $4867, $09EF, $09EF, $C867\n #_00CB7C: dw $68A0, $68A1, $E8A1, $E8A0\n\n; ---------------------------------------------------------\n\n#obj3032:\n #_00CB84: dw $5157, $5175, $D175, $D157\n #_00CB8C: dw $5179, $4879, $C879, $D179\n #_00CB94: dw $51AC, $49EF, $C9EF, $D1AC\n #_00CB9C: dw $697E, $E97E, $697E, $E97E\n\n; ---------------------------------------------------------\n\n#obj3052:\n #_00CBA4: dw $481D, $4879, $C879, $C81D\n #_00CBAC: dw $4809, $09EF, $09EF, $C809\n #_00CBB4: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj306A:\n #_00CBBC: dw $2882, $0820, $0830, $2883\n #_00CBC4: dw $0821, $0831, $6883, $4821\n #_00CBCC: dw $4831, $6882, $4820, $4830\n\n; ---------------------------------------------------------\n\n#obj3082:\n #_00CBD4: dw $2882, $0828, $0838, $2883\n #_00CBDC: dw $0829, $0839, $6883, $4829\n #_00CBE4: dw $4839, $6882, $4828, $4838\n\n; ---------------------------------------------------------\n\n#obj309A:\n #_00CBEC: dw $28B0, $0820, $080E, $28B1\n #_00CBF4: dw $0821, $0831, $68B1, $4821\n #_00CBFC: dw $4831, $68B0, $4820, $480E\n\n; ---------------------------------------------------------\n\n#obj30B2:\n #_00CC04: dw $28B0, $0828, $080F, $28B1\n #_00CC0C: dw $0829, $0839, $68B1, $4829\n #_00CC14: dw $4839, $68B0, $4828, $480F\n\n; ---------------------------------------------------------\n\n#obj30CA:\n #_00CC1C: dw $8830, $8820, $A882, $8831\n #_00CC24: dw $8821, $A883, $C831, $C821\n #_00CC2C: dw $E883, $C830, $C820, $E882\n\n; ---------------------------------------------------------\n\n#obj30E2:\n #_00CC34: dw $8838, $8828, $A882, $8839\n #_00CC3C: dw $8829, $A883, $C839, $C829\n #_00CC44: dw $E883, $C838, $C828, $E882\n\n; ---------------------------------------------------------\n\n#obj30FA:\n #_00CC4C: dw $880E, $8820, $A8B0, $8831\n #_00CC54: dw $8821, $A8B1, $C831, $C821\n #_00CC5C: dw $E8B1, $C80E, $C820, $E8B0\n\n; ---------------------------------------------------------\n\n#obj3112:\n #_00CC64: dw $880F, $8828, $A8B0, $8839\n #_00CC6C: dw $8829, $A8B1, $C839, $C829\n #_00CC74: dw $E8B1, $C80F, $C828, $E8B0\n\n; ---------------------------------------------------------\n\n#obj312A:\n #_00CC7C: dw $2884, $2885, $A885, $A884\n #_00CC84: dw $0822, $0832, $8832, $8822\n #_00CC8C: dw $0823, $0833, $8833, $8823\n\n; ---------------------------------------------------------\n\n#obj3142:\n #_00CC94: dw $2884, $2885, $A885, $A884\n #_00CC9C: dw $082A, $083A, $883A, $882A\n #_00CCA4: dw $082B, $083B, $883B, $882B\n\n; ---------------------------------------------------------\n\n#obj315A:\n #_00CCAC: dw $28B2, $28B3, $A8B3, $A8B2\n #_00CCB4: dw $0822, $0832, $8832, $8822\n #_00CCBC: dw $081E, $0833, $8833, $881E\n\n; ---------------------------------------------------------\n\n#obj3172:\n #_00CCC4: dw $28B2, $28B3, $A8B3, $A8B2\n #_00CCCC: dw $082A, $083A, $883A, $882A\n #_00CCD4: dw $081F, $083B, $883B, $881F\n\n; ---------------------------------------------------------\n\n#obj318A:\n #_00CCDC: dw $4823, $4833, $C833, $C823\n #_00CCE4: dw $4822, $4832, $C832, $C822\n #_00CCEC: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj31A2:\n #_00CCF4: dw $482B, $483B, $C83B, $C82B\n #_00CCFC: dw $482A, $483A, $C83A, $C82A\n #_00CD04: dw $6884, $6885, $E885, $E884\n\n; ---------------------------------------------------------\n\n#obj31BA:\n #_00CD0C: dw $481E, $4833, $C833, $C81E\n #_00CD14: dw $4822, $4832, $C832, $C822\n #_00CD1C: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj31D2:\n #_00CD24: dw $481F, $483B, $C83B, $C81F\n #_00CD2C: dw $482A, $483A, $C83A, $C82A\n #_00CD34: dw $68B2, $68B3, $E8B3, $E8B2\n\n; ---------------------------------------------------------\n\n#obj31EA:\n #_00CD3C: dw $8875, $8874, $8873, $8872\n #_00CD44: dw $8872, $8872, $0872, $8872\n #_00CD4C: dw $8872, $0873, $0874, $0875\n #_00CD54: dw $8876, $8876, $8876, $8876\n #_00CD5C: dw $8876, $0876, $0876, $0876\n #_00CD64: dw $0876, $0876, $0876, $0876\n #_00CD6C: dw $085B, $C876, $C876, $C876\n #_00CD74: dw $C876, $C876, $4876, $4876\n #_00CD7C: dw $4876, $4876, $4876, $4876\n #_00CD84: dw $4876, $C875, $C874, $C873\n #_00CD8C: dw $C872, $C872, $C872, $4872\n #_00CD94: dw $4872, $4872, $4873, $4874\n #_00CD9C: dw $4875\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DoorGFXDataOffset_North", + "code": "DoorGFXDataOffset_North:\n #_00CD9E: dw obj2716-RoomDrawObjectData ; 0x00 - Normal door\n #_00CDA0: dw obj272E-RoomDrawObjectData ; 0x02 - Normal door (lower layer)\n #_00CDA2: dw obj272E-RoomDrawObjectData ; 0x04 - Exit (lower layer)\n #_00CDA4: dw obj2746-RoomDrawObjectData ; 0x06 - Unused cave exit (lower layer)\n #_00CDA6: dw obj2746-RoomDrawObjectData ; 0x08 - Waterfall door\n #_00CDA8: dw obj2746-RoomDrawObjectData ; 0x0A - Fancy dungeon exit\n #_00CDAA: dw obj2746-RoomDrawObjectData ; 0x0C - Fancy dungeon exit (lower layer)\n #_00CDAC: dw obj2746-RoomDrawObjectData ; 0x0E - Cave exit\n #_00CDAE: dw obj2746-RoomDrawObjectData ; 0x10 - Lit cave exit (lower layer)\n #_00CDB0: dw obj275E-RoomDrawObjectData ; 0x12 - Exit marker\n #_00CDB2: dw obj275E-RoomDrawObjectData ; 0x14 - Dungeon swap marker\n #_00CDB4: dw obj275E-RoomDrawObjectData ; 0x16 - Layer swap marker\n #_00CDB6: dw obj275E-RoomDrawObjectData ; 0x18 - Double sided shutter door\n #_00CDB8: dw obj2776-RoomDrawObjectData ; 0x1A - Eye watch door\n #_00CDBA: dw obj278E-RoomDrawObjectData ; 0x1C - Small key door\n #_00CDBC: dw obj27A6-RoomDrawObjectData ; 0x1E - Big key door\n #_00CDBE: dw obj27BE-RoomDrawObjectData ; 0x20 - Small key stairs (upwards)\n #_00CDC0: dw obj27BE-RoomDrawObjectData ; 0x22 - Small key stairs (downwards)\n #_00CDC2: dw obj27D6-RoomDrawObjectData ; 0x24 - Small key stairs (lower layer; upwards)\n #_00CDC4: dw obj27D6-RoomDrawObjectData ; 0x26 - Small key stairs (lower layer; downwards)\n #_00CDC6: dw obj27EE-RoomDrawObjectData ; 0x28 - Dash wall\n #_00CDC8: dw obj2806-RoomDrawObjectData ; 0x2A - Bombable cave exit\n #_00CDCA: dw obj2806-RoomDrawObjectData ; 0x2C - Unopenable, double-sided big key door\n #_00CDCC: dw obj281E-RoomDrawObjectData ; 0x2E - Bombable door\n #_00CDCE: dw obj2836-RoomDrawObjectData ; 0x30 - Exploding wall\n #_00CDD0: dw obj2836-RoomDrawObjectData ; 0x32 - Curtain door\n #_00CDD2: dw obj2836-RoomDrawObjectData ; 0x34 - Unusable bottom-sided shutter door\n #_00CDD4: dw obj2836-RoomDrawObjectData ; 0x36 - Bottom-sided shutter door\n #_00CDD6: dw obj284E-RoomDrawObjectData ; 0x38 - Top-sided shutter door\n #_00CDD8: dw obj2866-RoomDrawObjectData ; 0x3A - Unusable normal door (lower layer)\n #_00CDDA: dw obj2866-RoomDrawObjectData ; 0x3C - Unusable normal door (lower layer)\n #_00CDDC: dw obj2866-RoomDrawObjectData ; 0x3E - Unusable normal door (lower layer)\n #_00CDDE: dw obj2866-RoomDrawObjectData ; 0x40 - Normal door (lower layer; used with one-sided shutters)\n #_00CDE0: dw obj287E-RoomDrawObjectData ; 0x42 - Unused double-sided shutter\n #_00CDE2: dw obj2896-RoomDrawObjectData ; 0x44 - Double-sided shutter (lower layer)\n #_00CDE4: dw obj28AE-RoomDrawObjectData ; 0x46 - Explicit room door\n #_00CDE6: dw obj28C6-RoomDrawObjectData ; 0x48 - Bottom-sided shutter door (lower layer)\n #_00CDE8: dw obj28DE-RoomDrawObjectData ; 0x4A - Top-sided shutter door (lower layer)\n #_00CDEA: dw obj28F6-RoomDrawObjectData ; 0x4C - Unusable normal door (lower layer)\n #_00CDEC: dw obj28F6-RoomDrawObjectData ; 0x4E - Unusable normal door (lower layer)\n #_00CDEE: dw obj28F6-RoomDrawObjectData ; 0x50 - Unusable normal door (lower layer)\n #_00CDF0: dw obj290E-RoomDrawObjectData ; 0x52 - Unusable bombed-open door (lower layer)\n #_00CDF2: dw obj2926-RoomDrawObjectData ; 0x54 - Unusable glitchy door (lower layer)\n #_00CDF4: dw obj2958-RoomDrawObjectData ; 0x56 - Unusable glitchy door (lower layer)\n #_00CDF6: dw obj2978-RoomDrawObjectData ; 0x58 - Unusable normal door (lower layer)\n #_00CDF8: dw obj2990-RoomDrawObjectData ; 0x5A - Unusable glitchy/stairs up (lower layer)\n #_00CDFA: dw obj2990-RoomDrawObjectData ; 0x5C - Unusable glitchy/stairs up (lower layer)\n #_00CDFC: dw obj2990-RoomDrawObjectData ; 0x5E - Unusable glitchy/stairs up (lower layer)\n #_00CDFE: dw obj2990-RoomDrawObjectData ; 0x60 - Unusable glitchy/stairs up (lower layer)\n #_00CE00: dw obj29A8-RoomDrawObjectData ; 0x62 - Unusable glitchy/stairs down (lower layer)\n #_00CE02: dw obj29C0-RoomDrawObjectData ; 0x64 - Unusable glitchy/stairs up (lower layer)\n #_00CE04: dw obj29D8-RoomDrawObjectData ; 0x66 - Unusable glitchy/stairs down (lower layer)\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "DoorGFXDataOffset_South", + "code": "DoorGFXDataOffset_South:\n #_00CE06: dw obj29F0-RoomDrawObjectData\n #_00CE08: dw obj2A08-RoomDrawObjectData\n #_00CE0A: dw obj2A08-RoomDrawObjectData\n #_00CE0C: dw obj2A20-RoomDrawObjectData\n #_00CE0E: dw obj2A20-RoomDrawObjectData\n #_00CE10: dw obj2A20-RoomDrawObjectData\n #_00CE12: dw obj2A20-RoomDrawObjectData\n #_00CE14: dw obj2A20-RoomDrawObjectData\n #_00CE16: dw obj2A20-RoomDrawObjectData\n #_00CE18: dw obj2A38-RoomDrawObjectData\n #_00CE1A: dw obj2A38-RoomDrawObjectData\n #_00CE1C: dw obj2A38-RoomDrawObjectData\n #_00CE1E: dw obj2A38-RoomDrawObjectData\n #_00CE20: dw obj2A50-RoomDrawObjectData\n #_00CE22: dw obj2A68-RoomDrawObjectData\n #_00CE24: dw obj2A80-RoomDrawObjectData\n #_00CE26: dw obj2A98-RoomDrawObjectData\n #_00CE28: dw obj2A98-RoomDrawObjectData\n #_00CE2A: dw obj2A98-RoomDrawObjectData\n #_00CE2C: dw obj2A98-RoomDrawObjectData\n #_00CE2E: dw obj2A98-RoomDrawObjectData\n #_00CE30: dw obj2AB0-RoomDrawObjectData\n #_00CE32: dw obj2AC8-RoomDrawObjectData\n #_00CE34: dw obj2AE0-RoomDrawObjectData\n #_00CE36: dw obj2AF8-RoomDrawObjectData\n #_00CE38: dw obj2AF8-RoomDrawObjectData\n #_00CE3A: dw obj2AF8-RoomDrawObjectData\n #_00CE3C: dw obj2AF8-RoomDrawObjectData\n #_00CE3E: dw obj2B10-RoomDrawObjectData\n #_00CE40: dw obj2B28-RoomDrawObjectData\n #_00CE42: dw obj2B28-RoomDrawObjectData\n #_00CE44: dw obj2B28-RoomDrawObjectData\n #_00CE46: dw obj2B28-RoomDrawObjectData\n #_00CE48: dw obj2B40-RoomDrawObjectData\n #_00CE4A: dw obj2B58-RoomDrawObjectData\n #_00CE4C: dw obj2B70-RoomDrawObjectData\n #_00CE4E: dw obj2B88-RoomDrawObjectData\n #_00CE50: dw obj2BA0-RoomDrawObjectData\n #_00CE52: dw obj2BB8-RoomDrawObjectData\n #_00CE54: dw obj2BB8-RoomDrawObjectData\n #_00CE56: dw obj2BB8-RoomDrawObjectData\n #_00CE58: dw obj2BD0-RoomDrawObjectData\n #_00CE5A: dw obj2BE8-RoomDrawObjectData\n #_00CE5C: dw obj2C1A-RoomDrawObjectData\n #_00CE5E: dw obj2C3A-RoomDrawObjectData\n #_00CE60: dw obj2C52-RoomDrawObjectData\n #_00CE62: dw obj2C6A-RoomDrawObjectData\n #_00CE64: dw obj2C6A-RoomDrawObjectData\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "DoorGFXDataOffset_West", + "code": "DoorGFXDataOffset_West:\n #_00CE66: dw obj2C6A-RoomDrawObjectData\n #_00CE68: dw obj2C82-RoomDrawObjectData\n #_00CE6A: dw obj2C82-RoomDrawObjectData\n #_00CE6C: dw obj2C9A-RoomDrawObjectData\n #_00CE6E: dw obj2C9A-RoomDrawObjectData\n #_00CE70: dw obj2C9A-RoomDrawObjectData\n #_00CE72: dw obj2C9A-RoomDrawObjectData\n #_00CE74: dw obj2C9A-RoomDrawObjectData\n #_00CE76: dw obj2C9A-RoomDrawObjectData\n #_00CE78: dw obj2CB2-RoomDrawObjectData\n #_00CE7A: dw obj2CB2-RoomDrawObjectData\n #_00CE7C: dw obj2CB2-RoomDrawObjectData\n #_00CE7E: dw obj2CB2-RoomDrawObjectData\n #_00CE80: dw obj2CCA-RoomDrawObjectData\n #_00CE82: dw obj2CE2-RoomDrawObjectData\n #_00CE84: dw obj2CFA-RoomDrawObjectData\n #_00CE86: dw obj2CFA-RoomDrawObjectData\n #_00CE88: dw obj2CFA-RoomDrawObjectData\n #_00CE8A: dw obj2CFA-RoomDrawObjectData\n #_00CE8C: dw obj2CFA-RoomDrawObjectData\n #_00CE8E: dw obj2CFA-RoomDrawObjectData\n #_00CE90: dw obj2D12-RoomDrawObjectData\n #_00CE92: dw obj2D12-RoomDrawObjectData\n #_00CE94: dw obj2D2A-RoomDrawObjectData\n #_00CE96: dw obj2D42-RoomDrawObjectData\n #_00CE98: dw obj2D42-RoomDrawObjectData\n #_00CE9A: dw obj2D42-RoomDrawObjectData\n #_00CE9C: dw obj2D42-RoomDrawObjectData\n #_00CE9E: dw obj2D5A-RoomDrawObjectData\n #_00CEA0: dw obj2D72-RoomDrawObjectData\n #_00CEA2: dw obj2D72-RoomDrawObjectData\n #_00CEA4: dw obj2D72-RoomDrawObjectData\n #_00CEA6: dw obj2D72-RoomDrawObjectData\n #_00CEA8: dw obj2D8A-RoomDrawObjectData\n #_00CEAA: dw obj2DA2-RoomDrawObjectData\n #_00CEAC: dw obj2DBA-RoomDrawObjectData\n #_00CEAE: dw obj2DD2-RoomDrawObjectData\n #_00CEB0: dw obj2DEA-RoomDrawObjectData\n #_00CEB2: dw obj2E02-RoomDrawObjectData\n #_00CEB4: dw obj2E02-RoomDrawObjectData\n #_00CEB6: dw obj2E02-RoomDrawObjectData\n #_00CEB8: dw obj2E1A-RoomDrawObjectData\n #_00CEBA: dw obj2E32-RoomDrawObjectData\n #_00CEBC: dw obj2E32-RoomDrawObjectData\n #_00CEBE: dw obj2E52-RoomDrawObjectData\n #_00CEC0: dw obj2E6A-RoomDrawObjectData\n #_00CEC2: dw obj2E6A-RoomDrawObjectData\n #_00CEC4: dw obj2E6A-RoomDrawObjectData\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "DoorGFXDataOffset_East", + "code": "DoorGFXDataOffset_East:\n #_00CEC6: dw obj2E6A-RoomDrawObjectData\n #_00CEC8: dw obj2E82-RoomDrawObjectData\n #_00CECA: dw obj2E82-RoomDrawObjectData\n #_00CECC: dw obj2E9A-RoomDrawObjectData\n #_00CECE: dw obj2E9A-RoomDrawObjectData\n #_00CED0: dw obj2E9A-RoomDrawObjectData\n #_00CED2: dw obj2E9A-RoomDrawObjectData\n #_00CED4: dw obj2E9A-RoomDrawObjectData\n #_00CED6: dw obj2E9A-RoomDrawObjectData\n #_00CED8: dw obj2EB2-RoomDrawObjectData\n #_00CEDA: dw obj2EB2-RoomDrawObjectData\n #_00CEDC: dw obj2EB2-RoomDrawObjectData\n #_00CEDE: dw obj2EB2-RoomDrawObjectData\n #_00CEE0: dw obj2ECA-RoomDrawObjectData\n #_00CEE2: dw obj2EE2-RoomDrawObjectData\n #_00CEE4: dw obj2EFA-RoomDrawObjectData\n #_00CEE6: dw obj2EFA-RoomDrawObjectData\n #_00CEE8: dw obj2EFA-RoomDrawObjectData\n #_00CEEA: dw obj2EFA-RoomDrawObjectData\n #_00CEEC: dw obj2EFA-RoomDrawObjectData\n #_00CEEE: dw obj2EFA-RoomDrawObjectData\n #_00CEF0: dw obj2F12-RoomDrawObjectData\n #_00CEF2: dw obj2F12-RoomDrawObjectData\n #_00CEF4: dw obj2F2A-RoomDrawObjectData\n #_00CEF6: dw obj2F42-RoomDrawObjectData\n #_00CEF8: dw obj2F42-RoomDrawObjectData\n #_00CEFA: dw obj2F42-RoomDrawObjectData\n #_00CEFC: dw obj2F42-RoomDrawObjectData\n #_00CEFE: dw obj2F5A-RoomDrawObjectData\n #_00CF00: dw obj2F72-RoomDrawObjectData\n #_00CF02: dw obj2F72-RoomDrawObjectData\n #_00CF04: dw obj2F72-RoomDrawObjectData\n #_00CF06: dw obj2F72-RoomDrawObjectData\n #_00CF08: dw obj2F8A-RoomDrawObjectData\n #_00CF0A: dw obj2FA2-RoomDrawObjectData\n #_00CF0C: dw obj2FBA-RoomDrawObjectData\n #_00CF0E: dw obj2FD2-RoomDrawObjectData\n #_00CF10: dw obj2FEA-RoomDrawObjectData\n #_00CF12: dw obj3002-RoomDrawObjectData\n #_00CF14: dw obj3002-RoomDrawObjectData\n #_00CF16: dw obj3002-RoomDrawObjectData\n #_00CF18: dw obj301A-RoomDrawObjectData\n #_00CF1A: dw obj3032-RoomDrawObjectData\n #_00CF1C: dw obj3032-RoomDrawObjectData\n #_00CF1E: dw obj3052-RoomDrawObjectData\n #_00CF20: dw obj306A-RoomDrawObjectData\n #_00CF22: dw obj306A-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DoorAnimGFXDataOffset_North", + "code": "DoorAnimGFXDataOffset_North:\n #_00CF24: dw obj306A-RoomDrawObjectData ; Lower layer shutter\n #_00CF26: dw obj306A-RoomDrawObjectData ; Key doors\n #_00CF28: dw obj3082-RoomDrawObjectData ; Shutters\n #_00CF2A: dw obj309A-RoomDrawObjectData ; Lower layer key door\n", + "file": "bank_00.asm" + }, + { + "name": "DoorAnimGFXDataOffset_South", + "code": "DoorAnimGFXDataOffset_South:\n #_00CF2C: dw obj30B2-RoomDrawObjectData ; Lower layer shutter\n #_00CF2E: dw obj30CA-RoomDrawObjectData ; Key doors\n #_00CF30: dw obj30E2-RoomDrawObjectData ; Shutters\n #_00CF32: dw obj30FA-RoomDrawObjectData ; Lower layer key door\n", + "file": "bank_00.asm" + }, + { + "name": "DoorAnimGFXDataOffset_West", + "code": "DoorAnimGFXDataOffset_West:\n #_00CF34: dw obj3112-RoomDrawObjectData ; Lower layer shutter\n #_00CF36: dw obj312A-RoomDrawObjectData ; Key doors\n #_00CF38: dw obj3142-RoomDrawObjectData ; Shutters\n #_00CF3A: dw obj315A-RoomDrawObjectData ; Lower layer key door\n", + "file": "bank_00.asm" + }, + { + "name": "DoorAnimGFXDataOffset_East", + "code": "DoorAnimGFXDataOffset_East:\n #_00CF3C: dw obj3172-RoomDrawObjectData ; Lower layer shutter\n #_00CF3E: dw obj318A-RoomDrawObjectData ; Key doors\n #_00CF40: dw obj31A2-RoomDrawObjectData ; Shutters\n #_00CF42: dw obj31BA-RoomDrawObjectData ; Lower layer key door\n #_00CF44: dw obj31D2-RoomDrawObjectData ; Unused cool looking shutter\n\n; =========================================================\n; FREE ROM: 0x3A\n; =========================================================", + "file": "bank_00.asm" + }, + { + "name": "NULL_00CF46", + "code": "NULL_00CF46:\n #_00CF46: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF4E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF56: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF5E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF66: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF6E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF76: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00CF7E: db $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "GFXSheetPointers", + "code": "GFXSheetPointers:\n\n.background_bank\n #_00CF80: db GFX_00>>16\n #_00CF81: db GFX_01>>16\n #_00CF82: db GFX_02>>16\n #_00CF83: db GFX_03>>16\n #_00CF84: db GFX_04>>16\n #_00CF85: db GFX_05>>16\n #_00CF86: db GFX_06>>16\n #_00CF87: db GFX_07>>16\n #_00CF88: db GFX_08>>16\n #_00CF89: db GFX_09>>16\n #_00CF8A: db GFX_0A>>16\n #_00CF8B: db GFX_0B>>16\n #_00CF8C: db GFX_0C>>16\n #_00CF8D: db GFX_0D>>16\n #_00CF8E: db GFX_0E>>16\n #_00CF8F: db GFX_0F>>16\n #_00CF90: db GFX_10>>16\n #_00CF91: db GFX_11>>16\n #_00CF92: db GFX_12>>16\n #_00CF93: db GFX_13>>16\n #_00CF94: db GFX_14>>16\n #_00CF95: db GFX_15>>16\n #_00CF96: db GFX_16>>16\n #_00CF97: db GFX_17>>16\n #_00CF98: db GFX_18>>16\n #_00CF99: db GFX_19>>16\n #_00CF9A: db GFX_1A>>16\n #_00CF9B: db GFX_1B>>16\n #_00CF9C: db GFX_1C>>16\n #_00CF9D: db GFX_1D>>16\n #_00CF9E: db GFX_1E>>16\n #_00CF9F: db GFX_1F>>16\n #_00CFA0: db GFX_20>>16\n #_00CFA1: db GFX_21>>16\n #_00CFA2: db GFX_22>>16\n #_00CFA3: db GFX_23>>16\n #_00CFA4: db GFX_24>>16\n #_00CFA5: db GFX_25>>16\n #_00CFA6: db GFX_26>>16\n #_00CFA7: db GFX_27>>16\n #_00CFA8: db GFX_28>>16\n #_00CFA9: db GFX_29>>16\n #_00CFAA: db GFX_2A>>16\n #_00CFAB: db GFX_2B>>16\n #_00CFAC: db GFX_2C>>16\n #_00CFAD: db GFX_2D>>16\n #_00CFAE: db GFX_2E>>16\n #_00CFAF: db GFX_2F>>16\n #_00CFB0: db GFX_30>>16\n #_00CFB1: db GFX_31>>16\n #_00CFB2: db GFX_32>>16\n #_00CFB3: db GFX_33>>16\n #_00CFB4: db GFX_34>>16\n #_00CFB5: db GFX_35>>16\n #_00CFB6: db GFX_36>>16\n #_00CFB7: db GFX_37>>16\n #_00CFB8: db GFX_38>>16\n #_00CFB9: db GFX_39>>16\n #_00CFBA: db GFX_3A>>16\n #_00CFBB: db GFX_3B>>16\n #_00CFBC: db GFX_3C>>16\n #_00CFBD: db GFX_3D>>16\n #_00CFBE: db GFX_3E>>16\n #_00CFBF: db GFX_3F>>16\n #_00CFC0: db GFX_40>>16\n #_00CFC1: db GFX_41>>16\n #_00CFC2: db GFX_42>>16\n #_00CFC3: db GFX_43>>16\n #_00CFC4: db GFX_44>>16\n #_00CFC5: db GFX_45>>16\n #_00CFC6: db GFX_46>>16\n #_00CFC7: db GFX_47>>16\n #_00CFC8: db GFX_48>>16\n #_00CFC9: db GFX_49>>16\n #_00CFCA: db GFX_4A>>16\n #_00CFCB: db GFX_4B>>16\n #_00CFCC: db GFX_4C>>16\n #_00CFCD: db GFX_4D>>16\n #_00CFCE: db GFX_4E>>16\n #_00CFCF: db GFX_4F>>16\n #_00CFD0: db GFX_50>>16\n #_00CFD1: db GFX_51>>16\n #_00CFD2: db GFX_52>>16\n #_00CFD3: db GFX_53>>16\n #_00CFD4: db GFX_54>>16\n #_00CFD5: db GFX_55>>16\n #_00CFD6: db GFX_56>>16\n #_00CFD7: db GFX_57>>16\n #_00CFD8: db GFX_58>>16\n #_00CFD9: db GFX_59>>16\n #_00CFDA: db GFX_5A>>16\n #_00CFDB: db GFX_5B>>16\n #_00CFDC: db GFX_5C>>16\n #_00CFDD: db GFX_5D>>16\n #_00CFDE: db GFX_5E>>16\n #_00CFDF: db GFX_5F>>16\n #_00CFE0: db GFX_60>>16\n #_00CFE1: db GFX_61>>16\n #_00CFE2: db GFX_62>>16\n #_00CFE3: db GFX_63>>16\n #_00CFE4: db GFX_64>>16\n #_00CFE5: db GFX_65>>16\n #_00CFE6: db GFX_66>>16\n #_00CFE7: db GFX_67>>16\n #_00CFE8: db GFX_68>>16\n #_00CFE9: db GFX_69>>16\n #_00CFEA: db GFX_6A>>16\n #_00CFEB: db GFX_6B>>16\n #_00CFEC: db GFX_6C>>16\n #_00CFED: db GFX_6D>>16\n #_00CFEE: db GFX_6E>>16\n #_00CFEF: db GFX_6F>>16\n #_00CFF0: db GFX_70>>16\n #_00CFF1: db GFX_DD>>16\n #_00CFF2: db GFX_DE>>16\n\n; ---------------------------------------------------------\n\n.sprite_bank\n #_00CFF3: db GFX_73>>16 ; 0x00\n #_00CFF4: db GFX_74>>16 ; 0x01\n #_00CFF5: db GFX_75>>16 ; 0x02\n #_00CFF6: db GFX_76>>16 ; 0x03\n #_00CFF7: db GFX_77>>16 ; 0x04\n #_00CFF8: db GFX_78>>16 ; 0x05\n #_00CFF9: db GFX_79>>16 ; 0x06\n #_00CFFA: db GFX_7A>>16 ; 0x07\n #_00CFFB: db GFX_7B>>16 ; 0x08\n #_00CFFC: db GFX_7C>>16 ; 0x09\n #_00CFFD: db GFX_7D>>16 ; 0x0A\n #_00CFFE: db GFX_7E>>16 ; 0x0B\n #_00CFFF: db GFX_7F>>16 ; 0x0C\n #_00D000: db GFX_80>>16 ; 0x0D\n #_00D001: db GFX_81>>16 ; 0x0E\n #_00D002: db GFX_82>>16 ; 0x0F\n #_00D003: db GFX_83>>16 ; 0x10\n #_00D004: db GFX_84>>16 ; 0x11\n #_00D005: db GFX_85>>16 ; 0x12\n #_00D006: db GFX_86>>16 ; 0x13\n #_00D007: db GFX_87>>16 ; 0x14\n #_00D008: db GFX_88>>16 ; 0x15\n #_00D009: db GFX_89>>16 ; 0x16\n #_00D00A: db GFX_8A>>16 ; 0x17\n #_00D00B: db GFX_8B>>16 ; 0x18\n #_00D00C: db GFX_8C>>16 ; 0x19\n #_00D00D: db GFX_8D>>16 ; 0x1A\n #_00D00E: db GFX_8E>>16 ; 0x1B\n #_00D00F: db GFX_8F>>16 ; 0x1C\n #_00D010: db GFX_90>>16 ; 0x1D\n #_00D011: db GFX_91>>16 ; 0x1E\n #_00D012: db GFX_92>>16 ; 0x1F\n #_00D013: db GFX_93>>16 ; 0x20\n #_00D014: db GFX_94>>16 ; 0x21\n #_00D015: db GFX_95>>16 ; 0x22\n #_00D016: db GFX_96>>16 ; 0x23\n #_00D017: db GFX_97>>16 ; 0x24\n #_00D018: db GFX_98>>16 ; 0x25\n #_00D019: db GFX_99>>16 ; 0x26\n #_00D01A: db GFX_9A>>16 ; 0x27\n #_00D01B: db GFX_9B>>16 ; 0x28\n #_00D01C: db GFX_9C>>16 ; 0x29\n #_00D01D: db GFX_9D>>16 ; 0x2A\n #_00D01E: db GFX_9E>>16 ; 0x2B\n #_00D01F: db GFX_9F>>16 ; 0x2C\n #_00D020: db GFX_A0>>16 ; 0x2D\n #_00D021: db GFX_A1>>16 ; 0x2E\n #_00D022: db GFX_A2>>16 ; 0x2F\n #_00D023: db GFX_A3>>16 ; 0x30\n #_00D024: db GFX_A4>>16 ; 0x31\n #_00D025: db GFX_A5>>16 ; 0x32\n #_00D026: db GFX_A6>>16 ; 0x33\n #_00D027: db GFX_A7>>16 ; 0x34\n #_00D028: db GFX_A8>>16 ; 0x35\n #_00D029: db GFX_A9>>16 ; 0x36\n #_00D02A: db GFX_AA>>16 ; 0x37\n #_00D02B: db GFX_AB>>16 ; 0x38\n #_00D02C: db GFX_AC>>16 ; 0x39\n #_00D02D: db GFX_AD>>16 ; 0x3A\n #_00D02E: db GFX_AE>>16 ; 0x3B\n #_00D02F: db GFX_AF>>16 ; 0x3C\n #_00D030: db GFX_B0>>16 ; 0x3D\n #_00D031: db GFX_B1>>16 ; 0x3E\n #_00D032: db GFX_B2>>16 ; 0x3F\n #_00D033: db GFX_B3>>16 ; 0x40\n #_00D034: db GFX_B4>>16 ; 0x41\n #_00D035: db GFX_B5>>16 ; 0x42\n #_00D036: db GFX_B6>>16 ; 0x43\n #_00D037: db GFX_B7>>16 ; 0x44\n #_00D038: db GFX_B8>>16 ; 0x45\n #_00D039: db GFX_B9>>16 ; 0x46\n #_00D03A: db GFX_BA>>16 ; 0x47\n #_00D03B: db GFX_BB>>16 ; 0x48\n #_00D03C: db GFX_BC>>16 ; 0x49\n #_00D03D: db GFX_BD>>16 ; 0x4A\n #_00D03E: db GFX_BE>>16 ; 0x4B\n #_00D03F: db GFX_BF>>16 ; 0x4C\n #_00D040: db GFX_C0>>16 ; 0x4D\n #_00D041: db GFX_C1>>16 ; 0x4E\n #_00D042: db GFX_C2>>16 ; 0x4F\n #_00D043: db GFX_C3>>16 ; 0x50\n #_00D044: db GFX_C4>>16 ; 0x51\n #_00D045: db GFX_C5>>16 ; 0x52\n #_00D046: db GFX_C6>>16 ; 0x53\n #_00D047: db GFX_C7>>16 ; 0x54\n #_00D048: db GFX_C8>>16 ; 0x55\n #_00D049: db GFX_C9>>16 ; 0x56\n #_00D04A: db GFX_CA>>16 ; 0x57\n #_00D04B: db GFX_CB>>16 ; 0x58\n #_00D04C: db GFX_CC>>16 ; 0x59\n #_00D04D: db GFX_CD>>16 ; 0x5A\n #_00D04E: db GFX_CE>>16 ; 0x5B\n #_00D04F: db GFX_CF>>16 ; 0x5C\n #_00D050: db GFX_D0>>16 ; 0x5D\n #_00D051: db GFX_D1>>16 ; 0x5E\n #_00D052: db GFX_D2>>16 ; 0x5F\n #_00D053: db GFX_D3>>16 ; 0x60\n #_00D054: db GFX_D4>>16 ; 0x61\n #_00D055: db GFX_D5>>16 ; 0x62\n #_00D056: db GFX_D6>>16 ; 0x63\n #_00D057: db GFX_D7>>16 ; 0x64\n #_00D058: db GFX_D8>>16 ; 0x65\n #_00D059: db GFX_D9>>16 ; 0x66\n #_00D05A: db GFX_DA>>16 ; 0x67\n #_00D05B: db GFX_DB>>16 ; 0x68\n #_00D05C: db GFX_DC>>16 ; 0x69\n #_00D05D: db GFX_DD>>16 ; 0x6A\n #_00D05E: db GFX_DE>>16 ; 0x6B\n\n; ---------------------------------------------------------\n\n.background_high\n #_00D05F: db GFX_00>>8\n #_00D060: db GFX_01>>8\n #_00D061: db GFX_02>>8\n #_00D062: db GFX_03>>8\n #_00D063: db GFX_04>>8\n #_00D064: db GFX_05>>8\n #_00D065: db GFX_06>>8\n #_00D066: db GFX_07>>8\n #_00D067: db GFX_08>>8\n #_00D068: db GFX_09>>8\n #_00D069: db GFX_0A>>8\n #_00D06A: db GFX_0B>>8\n #_00D06B: db GFX_0C>>8\n #_00D06C: db GFX_0D>>8\n #_00D06D: db GFX_0E>>8\n #_00D06E: db GFX_0F>>8\n #_00D06F: db GFX_10>>8\n #_00D070: db GFX_11>>8\n #_00D071: db GFX_12>>8\n #_00D072: db GFX_13>>8\n #_00D073: db GFX_14>>8\n #_00D074: db GFX_15>>8\n #_00D075: db GFX_16>>8\n #_00D076: db GFX_17>>8\n #_00D077: db GFX_18>>8\n #_00D078: db GFX_19>>8\n #_00D079: db GFX_1A>>8\n #_00D07A: db GFX_1B>>8\n #_00D07B: db GFX_1C>>8\n #_00D07C: db GFX_1D>>8\n #_00D07D: db GFX_1E>>8\n #_00D07E: db GFX_1F>>8\n #_00D07F: db GFX_20>>8\n #_00D080: db GFX_21>>8\n #_00D081: db GFX_22>>8\n #_00D082: db GFX_23>>8\n #_00D083: db GFX_24>>8\n #_00D084: db GFX_25>>8\n #_00D085: db GFX_26>>8\n #_00D086: db GFX_27>>8\n #_00D087: db GFX_28>>8\n #_00D088: db GFX_29>>8\n #_00D089: db GFX_2A>>8\n #_00D08A: db GFX_2B>>8\n #_00D08B: db GFX_2C>>8\n #_00D08C: db GFX_2D>>8\n #_00D08D: db GFX_2E>>8\n #_00D08E: db GFX_2F>>8\n #_00D08F: db GFX_30>>8\n #_00D090: db GFX_31>>8\n #_00D091: db GFX_32>>8\n #_00D092: db GFX_33>>8\n #_00D093: db GFX_34>>8\n #_00D094: db GFX_35>>8\n #_00D095: db GFX_36>>8\n #_00D096: db GFX_37>>8\n #_00D097: db GFX_38>>8\n #_00D098: db GFX_39>>8\n #_00D099: db GFX_3A>>8\n #_00D09A: db GFX_3B>>8\n #_00D09B: db GFX_3C>>8\n #_00D09C: db GFX_3D>>8\n #_00D09D: db GFX_3E>>8\n #_00D09E: db GFX_3F>>8\n #_00D09F: db GFX_40>>8\n #_00D0A0: db GFX_41>>8\n #_00D0A1: db GFX_42>>8\n #_00D0A2: db GFX_43>>8\n #_00D0A3: db GFX_44>>8\n #_00D0A4: db GFX_45>>8\n #_00D0A5: db GFX_46>>8\n #_00D0A6: db GFX_47>>8\n #_00D0A7: db GFX_48>>8\n #_00D0A8: db GFX_49>>8\n #_00D0A9: db GFX_4A>>8\n #_00D0AA: db GFX_4B>>8\n #_00D0AB: db GFX_4C>>8\n #_00D0AC: db GFX_4D>>8\n #_00D0AD: db GFX_4E>>8\n #_00D0AE: db GFX_4F>>8\n #_00D0AF: db GFX_50>>8\n #_00D0B0: db GFX_51>>8\n #_00D0B1: db GFX_52>>8\n #_00D0B2: db GFX_53>>8\n #_00D0B3: db GFX_54>>8\n #_00D0B4: db GFX_55>>8\n #_00D0B5: db GFX_56>>8\n #_00D0B6: db GFX_57>>8\n #_00D0B7: db GFX_58>>8\n #_00D0B8: db GFX_59>>8\n #_00D0B9: db GFX_5A>>8\n #_00D0BA: db GFX_5B>>8\n #_00D0BB: db GFX_5C>>8\n #_00D0BC: db GFX_5D>>8\n #_00D0BD: db GFX_5E>>8\n #_00D0BE: db GFX_5F>>8\n #_00D0BF: db GFX_60>>8\n #_00D0C0: db GFX_61>>8\n #_00D0C1: db GFX_62>>8\n #_00D0C2: db GFX_63>>8\n #_00D0C3: db GFX_64>>8\n #_00D0C4: db GFX_65>>8\n #_00D0C5: db GFX_66>>8\n #_00D0C6: db GFX_67>>8\n #_00D0C7: db GFX_68>>8\n #_00D0C8: db GFX_69>>8\n #_00D0C9: db GFX_6A>>8\n #_00D0CA: db GFX_6B>>8\n #_00D0CB: db GFX_6C>>8\n #_00D0CC: db GFX_6D>>8\n #_00D0CD: db GFX_6E>>8\n #_00D0CE: db GFX_6F>>8\n #_00D0CF: db GFX_70>>8\n #_00D0D0: db GFX_DD>>8\n #_00D0D1: db GFX_DE>>8\n\n; ---------------------------------------------------------\n\n.sprite_high\n #_00D0D2: db GFX_73>>8 ; 0x00\n #_00D0D3: db GFX_74>>8 ; 0x01\n #_00D0D4: db GFX_75>>8 ; 0x02\n #_00D0D5: db GFX_76>>8 ; 0x03\n #_00D0D6: db GFX_77>>8 ; 0x04\n #_00D0D7: db GFX_78>>8 ; 0x05\n #_00D0D8: db GFX_79>>8 ; 0x06\n #_00D0D9: db GFX_7A>>8 ; 0x07\n #_00D0DA: db GFX_7B>>8 ; 0x08\n #_00D0DB: db GFX_7C>>8 ; 0x09\n #_00D0DC: db GFX_7D>>8 ; 0x0A\n #_00D0DD: db GFX_7E>>8 ; 0x0B\n #_00D0DE: db GFX_7F>>8 ; 0x0C\n #_00D0DF: db GFX_80>>8 ; 0x0D\n #_00D0E0: db GFX_81>>8 ; 0x0E\n #_00D0E1: db GFX_82>>8 ; 0x0F\n #_00D0E2: db GFX_83>>8 ; 0x10\n #_00D0E3: db GFX_84>>8 ; 0x11\n #_00D0E4: db GFX_85>>8 ; 0x12\n #_00D0E5: db GFX_86>>8 ; 0x13\n #_00D0E6: db GFX_87>>8 ; 0x14\n #_00D0E7: db GFX_88>>8 ; 0x15\n #_00D0E8: db GFX_89>>8 ; 0x16\n #_00D0E9: db GFX_8A>>8 ; 0x17\n #_00D0EA: db GFX_8B>>8 ; 0x18\n #_00D0EB: db GFX_8C>>8 ; 0x19\n #_00D0EC: db GFX_8D>>8 ; 0x1A\n #_00D0ED: db GFX_8E>>8 ; 0x1B\n #_00D0EE: db GFX_8F>>8 ; 0x1C\n #_00D0EF: db GFX_90>>8 ; 0x1D\n #_00D0F0: db GFX_91>>8 ; 0x1E\n #_00D0F1: db GFX_92>>8 ; 0x1F\n #_00D0F2: db GFX_93>>8 ; 0x20\n #_00D0F3: db GFX_94>>8 ; 0x21\n #_00D0F4: db GFX_95>>8 ; 0x22\n #_00D0F5: db GFX_96>>8 ; 0x23\n #_00D0F6: db GFX_97>>8 ; 0x24\n #_00D0F7: db GFX_98>>8 ; 0x25\n #_00D0F8: db GFX_99>>8 ; 0x26\n #_00D0F9: db GFX_9A>>8 ; 0x27\n #_00D0FA: db GFX_9B>>8 ; 0x28\n #_00D0FB: db GFX_9C>>8 ; 0x29\n #_00D0FC: db GFX_9D>>8 ; 0x2A\n #_00D0FD: db GFX_9E>>8 ; 0x2B\n #_00D0FE: db GFX_9F>>8 ; 0x2C\n #_00D0FF: db GFX_A0>>8 ; 0x2D\n #_00D100: db GFX_A1>>8 ; 0x2E\n #_00D101: db GFX_A2>>8 ; 0x2F\n #_00D102: db GFX_A3>>8 ; 0x30\n #_00D103: db GFX_A4>>8 ; 0x31\n #_00D104: db GFX_A5>>8 ; 0x32\n #_00D105: db GFX_A6>>8 ; 0x33\n #_00D106: db GFX_A7>>8 ; 0x34\n #_00D107: db GFX_A8>>8 ; 0x35\n #_00D108: db GFX_A9>>8 ; 0x36\n #_00D109: db GFX_AA>>8 ; 0x37\n #_00D10A: db GFX_AB>>8 ; 0x38\n #_00D10B: db GFX_AC>>8 ; 0x39\n #_00D10C: db GFX_AD>>8 ; 0x3A\n #_00D10D: db GFX_AE>>8 ; 0x3B\n #_00D10E: db GFX_AF>>8 ; 0x3C\n #_00D10F: db GFX_B0>>8 ; 0x3D\n #_00D110: db GFX_B1>>8 ; 0x3E\n #_00D111: db GFX_B2>>8 ; 0x3F\n #_00D112: db GFX_B3>>8 ; 0x40\n #_00D113: db GFX_B4>>8 ; 0x41\n #_00D114: db GFX_B5>>8 ; 0x42\n #_00D115: db GFX_B6>>8 ; 0x43\n #_00D116: db GFX_B7>>8 ; 0x44\n #_00D117: db GFX_B8>>8 ; 0x45\n #_00D118: db GFX_B9>>8 ; 0x46\n #_00D119: db GFX_BA>>8 ; 0x47\n #_00D11A: db GFX_BB>>8 ; 0x48\n #_00D11B: db GFX_BC>>8 ; 0x49\n #_00D11C: db GFX_BD>>8 ; 0x4A\n #_00D11D: db GFX_BE>>8 ; 0x4B\n #_00D11E: db GFX_BF>>8 ; 0x4C\n #_00D11F: db GFX_C0>>8 ; 0x4D\n #_00D120: db GFX_C1>>8 ; 0x4E\n #_00D121: db GFX_C2>>8 ; 0x4F\n #_00D122: db GFX_C3>>8 ; 0x50\n #_00D123: db GFX_C4>>8 ; 0x51\n #_00D124: db GFX_C5>>8 ; 0x52\n #_00D125: db GFX_C6>>8 ; 0x53\n #_00D126: db GFX_C7>>8 ; 0x54\n #_00D127: db GFX_C8>>8 ; 0x55\n #_00D128: db GFX_C9>>8 ; 0x56\n #_00D129: db GFX_CA>>8 ; 0x57\n #_00D12A: db GFX_CB>>8 ; 0x58\n #_00D12B: db GFX_CC>>8 ; 0x59\n #_00D12C: db GFX_CD>>8 ; 0x5A\n #_00D12D: db GFX_CE>>8 ; 0x5B\n #_00D12E: db GFX_CF>>8 ; 0x5C\n #_00D12F: db GFX_D0>>8 ; 0x5D\n #_00D130: db GFX_D1>>8 ; 0x5E\n #_00D131: db GFX_D2>>8 ; 0x5F\n #_00D132: db GFX_D3>>8 ; 0x60\n #_00D133: db GFX_D4>>8 ; 0x61\n #_00D134: db GFX_D5>>8 ; 0x62\n #_00D135: db GFX_D6>>8 ; 0x63\n #_00D136: db GFX_D7>>8 ; 0x64\n #_00D137: db GFX_D8>>8 ; 0x65\n #_00D138: db GFX_D9>>8 ; 0x66\n #_00D139: db GFX_DA>>8 ; 0x67\n #_00D13A: db GFX_DB>>8 ; 0x68\n #_00D13B: db GFX_DC>>8 ; 0x69\n #_00D13C: db GFX_DD>>8 ; 0x6A\n #_00D13D: db GFX_DE>>8 ; 0x6B\n\n; ---------------------------------------------------------\n\n.background_low\n #_00D13E: db GFX_00>>0\n #_00D13F: db GFX_01>>0\n #_00D140: db GFX_02>>0\n #_00D141: db GFX_03>>0\n #_00D142: db GFX_04>>0\n #_00D143: db GFX_05>>0\n #_00D144: db GFX_06>>0\n #_00D145: db GFX_07>>0\n #_00D146: db GFX_08>>0\n #_00D147: db GFX_09>>0\n #_00D148: db GFX_0A>>0\n #_00D149: db GFX_0B>>0\n #_00D14A: db GFX_0C>>0\n #_00D14B: db GFX_0D>>0\n #_00D14C: db GFX_0E>>0\n #_00D14D: db GFX_0F>>0\n #_00D14E: db GFX_10>>0\n #_00D14F: db GFX_11>>0\n #_00D150: db GFX_12>>0\n #_00D151: db GFX_13>>0\n #_00D152: db GFX_14>>0\n #_00D153: db GFX_15>>0\n #_00D154: db GFX_16>>0\n #_00D155: db GFX_17>>0\n #_00D156: db GFX_18>>0\n #_00D157: db GFX_19>>0\n #_00D158: db GFX_1A>>0\n #_00D159: db GFX_1B>>0\n #_00D15A: db GFX_1C>>0\n #_00D15B: db GFX_1D>>0\n #_00D15C: db GFX_1E>>0\n #_00D15D: db GFX_1F>>0\n #_00D15E: db GFX_20>>0\n #_00D15F: db GFX_21>>0\n #_00D160: db GFX_22>>0\n #_00D161: db GFX_23>>0\n #_00D162: db GFX_24>>0\n #_00D163: db GFX_25>>0\n #_00D164: db GFX_26>>0\n #_00D165: db GFX_27>>0\n #_00D166: db GFX_28>>0\n #_00D167: db GFX_29>>0\n #_00D168: db GFX_2A>>0\n #_00D169: db GFX_2B>>0\n #_00D16A: db GFX_2C>>0\n #_00D16B: db GFX_2D>>0\n #_00D16C: db GFX_2E>>0\n #_00D16D: db GFX_2F>>0\n #_00D16E: db GFX_30>>0\n #_00D16F: db GFX_31>>0\n #_00D170: db GFX_32>>0\n #_00D171: db GFX_33>>0\n #_00D172: db GFX_34>>0\n #_00D173: db GFX_35>>0\n #_00D174: db GFX_36>>0\n #_00D175: db GFX_37>>0\n #_00D176: db GFX_38>>0\n #_00D177: db GFX_39>>0\n #_00D178: db GFX_3A>>0\n #_00D179: db GFX_3B>>0\n #_00D17A: db GFX_3C>>0\n #_00D17B: db GFX_3D>>0\n #_00D17C: db GFX_3E>>0\n #_00D17D: db GFX_3F>>0\n #_00D17E: db GFX_40>>0\n #_00D17F: db GFX_41>>0\n #_00D180: db GFX_42>>0\n #_00D181: db GFX_43>>0\n #_00D182: db GFX_44>>0\n #_00D183: db GFX_45>>0\n #_00D184: db GFX_46>>0\n #_00D185: db GFX_47>>0\n #_00D186: db GFX_48>>0\n #_00D187: db GFX_49>>0\n #_00D188: db GFX_4A>>0\n #_00D189: db GFX_4B>>0\n #_00D18A: db GFX_4C>>0\n #_00D18B: db GFX_4D>>0\n #_00D18C: db GFX_4E>>0\n #_00D18D: db GFX_4F>>0\n #_00D18E: db GFX_50>>0\n #_00D18F: db GFX_51>>0\n #_00D190: db GFX_52>>0\n #_00D191: db GFX_53>>0\n #_00D192: db GFX_54>>0\n #_00D193: db GFX_55>>0\n #_00D194: db GFX_56>>0\n #_00D195: db GFX_57>>0\n #_00D196: db GFX_58>>0\n #_00D197: db GFX_59>>0\n #_00D198: db GFX_5A>>0\n #_00D199: db GFX_5B>>0\n #_00D19A: db GFX_5C>>0\n #_00D19B: db GFX_5D>>0\n #_00D19C: db GFX_5E>>0\n #_00D19D: db GFX_5F>>0\n #_00D19E: db GFX_60>>0\n #_00D19F: db GFX_61>>0\n #_00D1A0: db GFX_62>>0\n #_00D1A1: db GFX_63>>0\n #_00D1A2: db GFX_64>>0\n #_00D1A3: db GFX_65>>0\n #_00D1A4: db GFX_66>>0\n #_00D1A5: db GFX_67>>0\n #_00D1A6: db GFX_68>>0\n #_00D1A7: db GFX_69>>0\n #_00D1A8: db GFX_6A>>0\n #_00D1A9: db GFX_6B>>0\n #_00D1AA: db GFX_6C>>0\n #_00D1AB: db GFX_6D>>0\n #_00D1AC: db GFX_6E>>0\n #_00D1AD: db GFX_6F>>0\n #_00D1AE: db GFX_70>>0\n #_00D1AF: db GFX_DD>>0\n #_00D1B0: db GFX_DE>>0\n\n; ---------------------------------------------------------\n\n.sprite_low\n #_00D1B1: db GFX_73>>0 ; 0x00\n #_00D1B2: db GFX_74>>0 ; 0x01\n #_00D1B3: db GFX_75>>0 ; 0x02\n #_00D1B4: db GFX_76>>0 ; 0x03\n #_00D1B5: db GFX_77>>0 ; 0x04\n #_00D1B6: db GFX_78>>0 ; 0x05\n #_00D1B7: db GFX_79>>0 ; 0x06\n #_00D1B8: db GFX_7A>>0 ; 0x07\n #_00D1B9: db GFX_7B>>0 ; 0x08\n #_00D1BA: db GFX_7C>>0 ; 0x09\n #_00D1BB: db GFX_7D>>0 ; 0x0A\n #_00D1BC: db GFX_7E>>0 ; 0x0B\n #_00D1BD: db GFX_7F>>0 ; 0x0C\n #_00D1BE: db GFX_80>>0 ; 0x0D\n #_00D1BF: db GFX_81>>0 ; 0x0E\n #_00D1C0: db GFX_82>>0 ; 0x0F\n #_00D1C1: db GFX_83>>0 ; 0x10\n #_00D1C2: db GFX_84>>0 ; 0x11\n #_00D1C3: db GFX_85>>0 ; 0x12\n #_00D1C4: db GFX_86>>0 ; 0x13\n #_00D1C5: db GFX_87>>0 ; 0x14\n #_00D1C6: db GFX_88>>0 ; 0x15\n #_00D1C7: db GFX_89>>0 ; 0x16\n #_00D1C8: db GFX_8A>>0 ; 0x17\n #_00D1C9: db GFX_8B>>0 ; 0x18\n #_00D1CA: db GFX_8C>>0 ; 0x19\n #_00D1CB: db GFX_8D>>0 ; 0x1A\n #_00D1CC: db GFX_8E>>0 ; 0x1B\n #_00D1CD: db GFX_8F>>0 ; 0x1C\n #_00D1CE: db GFX_90>>0 ; 0x1D\n #_00D1CF: db GFX_91>>0 ; 0x1E\n #_00D1D0: db GFX_92>>0 ; 0x1F\n #_00D1D1: db GFX_93>>0 ; 0x20\n #_00D1D2: db GFX_94>>0 ; 0x21\n #_00D1D3: db GFX_95>>0 ; 0x22\n #_00D1D4: db GFX_96>>0 ; 0x23\n #_00D1D5: db GFX_97>>0 ; 0x24\n #_00D1D6: db GFX_98>>0 ; 0x25\n #_00D1D7: db GFX_99>>0 ; 0x26\n #_00D1D8: db GFX_9A>>0 ; 0x27\n #_00D1D9: db GFX_9B>>0 ; 0x28\n #_00D1DA: db GFX_9C>>0 ; 0x29\n #_00D1DB: db GFX_9D>>0 ; 0x2A\n #_00D1DC: db GFX_9E>>0 ; 0x2B\n #_00D1DD: db GFX_9F>>0 ; 0x2C\n #_00D1DE: db GFX_A0>>0 ; 0x2D\n #_00D1DF: db GFX_A1>>0 ; 0x2E\n #_00D1E0: db GFX_A2>>0 ; 0x2F\n #_00D1E1: db GFX_A3>>0 ; 0x30\n #_00D1E2: db GFX_A4>>0 ; 0x31\n #_00D1E3: db GFX_A5>>0 ; 0x32\n #_00D1E4: db GFX_A6>>0 ; 0x33\n #_00D1E5: db GFX_A7>>0 ; 0x34\n #_00D1E6: db GFX_A8>>0 ; 0x35\n #_00D1E7: db GFX_A9>>0 ; 0x36\n #_00D1E8: db GFX_AA>>0 ; 0x37\n #_00D1E9: db GFX_AB>>0 ; 0x38\n #_00D1EA: db GFX_AC>>0 ; 0x39\n #_00D1EB: db GFX_AD>>0 ; 0x3A\n #_00D1EC: db GFX_AE>>0 ; 0x3B\n #_00D1ED: db GFX_AF>>0 ; 0x3C\n #_00D1EE: db GFX_B0>>0 ; 0x3D\n #_00D1EF: db GFX_B1>>0 ; 0x3E\n #_00D1F0: db GFX_B2>>0 ; 0x3F\n #_00D1F1: db GFX_B3>>0 ; 0x40\n #_00D1F2: db GFX_B4>>0 ; 0x41\n #_00D1F3: db GFX_B5>>0 ; 0x42\n #_00D1F4: db GFX_B6>>0 ; 0x43\n #_00D1F5: db GFX_B7>>0 ; 0x44\n #_00D1F6: db GFX_B8>>0 ; 0x45\n #_00D1F7: db GFX_B9>>0 ; 0x46\n #_00D1F8: db GFX_BA>>0 ; 0x47\n #_00D1F9: db GFX_BB>>0 ; 0x48\n #_00D1FA: db GFX_BC>>0 ; 0x49\n #_00D1FB: db GFX_BD>>0 ; 0x4A\n #_00D1FC: db GFX_BE>>0 ; 0x4B\n #_00D1FD: db GFX_BF>>0 ; 0x4C\n #_00D1FE: db GFX_C0>>0 ; 0x4D\n #_00D1FF: db GFX_C1>>0 ; 0x4E\n #_00D200: db GFX_C2>>0 ; 0x4F\n #_00D201: db GFX_C3>>0 ; 0x50\n #_00D202: db GFX_C4>>0 ; 0x51\n #_00D203: db GFX_C5>>0 ; 0x52\n #_00D204: db GFX_C6>>0 ; 0x53\n #_00D205: db GFX_C7>>0 ; 0x54\n #_00D206: db GFX_C8>>0 ; 0x55\n #_00D207: db GFX_C9>>0 ; 0x56\n #_00D208: db GFX_CA>>0 ; 0x57\n #_00D209: db GFX_CB>>0 ; 0x58\n #_00D20A: db GFX_CC>>0 ; 0x59\n #_00D20B: db GFX_CD>>0 ; 0x5A\n #_00D20C: db GFX_CE>>0 ; 0x5B\n #_00D20D: db GFX_CF>>0 ; 0x5C\n #_00D20E: db GFX_D0>>0 ; 0x5D\n #_00D20F: db GFX_D1>>0 ; 0x5E\n #_00D210: db GFX_D2>>0 ; 0x5F\n #_00D211: db GFX_D3>>0 ; 0x60\n #_00D212: db GFX_D4>>0 ; 0x61\n #_00D213: db GFX_D5>>0 ; 0x62\n #_00D214: db GFX_D6>>0 ; 0x63\n #_00D215: db GFX_D7>>0 ; 0x64\n #_00D216: db GFX_D8>>0 ; 0x65\n #_00D217: db GFX_D9>>0 ; 0x66\n #_00D218: db GFX_DA>>0 ; 0x67\n #_00D219: db GFX_DB>>0 ; 0x68\n #_00D21A: db GFX_DC>>0 ; 0x69\n #_00D21B: db GFX_DD>>0 ; 0x6A\n #_00D21C: db GFX_DE>>0 ; 0x6B\n\n; =========================================================\n\npool LoadItemGFX\n\n.offset\n #_00D21D: dw $0000 ; rods\n #_00D21F: dw $0108 ; hammer\n #_00D221: dw $00C0 ; bow\n #_00D223: dw $0390 ; shovel\n #_00D225: dw $03F0 ; Zzz \u266a\n #_00D227: dw $0438 ; powder dust\n #_00D229: dw $0330 ; hookshot\n #_00D22B: dw $0048 ; net\n #_00D22D: dw $0318 ; cane\n #_00D22F: dw $0450 ; book\n\npool off\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFXIntoWRAM4BPPBuffer", + "code": "LoadItemGFXIntoWRAM4BPPBuffer:\n #_00D231: PHB\n #_00D232: PHK\n #_00D233: PLB\n\n #_00D234: REP #$20\n\n #_00D236: STZ.b $0A\n #_00D238: STZ.b $0C\n\n #_00D23A: LDA.w #$0480\n #_00D23D: STA.b $06\n\n #_00D23F: SEP #$20\n\n #_00D241: LDA.b #$07\n #_00D243: JSR LoadItemGFX_sheet0\n\n #_00D246: LDA.b #$07\n #_00D248: JSR LoadItemGFX_sheet0\n\n #_00D24B: LDA.b #$03\n #_00D24D: JSR LoadItemGFX_sheet0\n\n #_00D250: LDY.b #$5F\n #_00D252: LDA.b #$04\n #_00D254: JSR LoadItemGFX_arbitrary_sheet\n\n #_00D257: LDA.b #$03\n #_00D259: JSR LoadItemGFX_current_sheet\n\n #_00D25C: LDA.b #$01\n #_00D25E: JSR LoadItemGFX_current_sheet\n\n #_00D261: LDA.b #$04\n #_00D263: JSR LoadItemGFX_sheet0\n\n #_00D266: LDY.b #$60\n #_00D268: LDA.b #$0E\n #_00D26A: JSR LoadItemGFX_arbitrary_sheet\n\n #_00D26D: LDA.b #$07\n #_00D26F: JSR LoadItemGFX_current_sheet\n\n #_00D272: LDY.b #$5F\n #_00D274: LDA.b #$02\n #_00D276: JSR LoadItemGFX_arbitrary_sheet\n\n; ---------------------------------------------------------\n\n #_00D279: LDY.b #$54\n #_00D27B: JSR Decompress_sprite_low\n\n #_00D27E: REP #$30\n\n #_00D280: LDA.b $00\n\n #_00D282: LDX.w #$1480\n\n #_00D285: PHA\n\n #_00D286: LDY.w #$0008\n #_00D289: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D28C: PLA\n #_00D28D: CLC\n #_00D28E: ADC.w #$0180\n\n #_00D291: LDY.w #$0008\n #_00D294: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D297: SEP #$30\n\n #_00D299: LDY.b #$60\n #_00D29B: JSR Decompress_sprite_low\n\n #_00D29E: REP #$30\n\n #_00D2A0: LDA.b $00\n #_00D2A2: LDX.w #$2280\n #_00D2A5: LDY.w #$0003\n\n #_00D2A8: PHA\n\n #_00D2A9: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2AC: PLA\n #_00D2AD: CLC\n #_00D2AE: ADC.w #$0180\n\n #_00D2B1: LDY.w #$0003\n #_00D2B4: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2B7: SEP #$30\n\n #_00D2B9: JSR LoadItemGFX_Auxiliary\n\n #_00D2BC: PLB\n\n #_00D2BD: RTL", + "file": "bank_00.asm" + }, + { + "name": "DecompressSwordGraphics", + "code": "DecompressSwordGraphics:\n #_00D2C8: PHB\n #_00D2C9: PHK\n #_00D2CA: PLB\n\n #_00D2CB: LDY.b #$5F\n #_00D2CD: JSR Decompress_sprite_high\n\n #_00D2D0: LDY.b #$5E\n #_00D2D2: JSR Decompress_sprite_low\n\n #_00D2D5: REP #$21\n\n #_00D2D7: LDA.l $7EF359\n #_00D2DB: AND.w #$00FF\n #_00D2DE: ASL A\n #_00D2DF: TAY\n\n #_00D2E0: LDA.b $00\n #_00D2E2: ADC.w .offset,Y\n\n #_00D2E5: REP #$10\n\n #_00D2E7: LDX.w #$0000\n #_00D2EA: LDY.w #$000C\n\n #_00D2ED: PHA\n\n #_00D2EE: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2F1: PLA\n #_00D2F2: CLC\n #_00D2F3: ADC.w #$0180\n\n #_00D2F6: LDY.w #$000C\n #_00D2F9: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D2FC: SEP #$30\n\n #_00D2FE: PLB\n\n #_00D2FF: RTL", + "file": "bank_00.asm" + }, + { + "name": "DecompressShieldGraphics", + "code": "DecompressShieldGraphics:\n #_00D308: PHB\n #_00D309: PHK\n #_00D30A: PLB\n\n #_00D30B: LDY.b #$5F\n #_00D30D: JSR Decompress_sprite_high\n\n #_00D310: LDY.b #$5E\n #_00D312: JSR Decompress_sprite_low\n\n #_00D315: REP #$21\n\n #_00D317: LDA.l $7EF35A\n #_00D31B: ASL A\n #_00D31C: TAY\n\n #_00D31D: LDA.b $00\n #_00D31F: ADC.w .offset,Y\n\n #_00D322: REP #$10\n\n #_00D324: LDX.w #$0300\n\n #_00D327: PHA\n\n #_00D328: JSR Do3bppToWRAM4bpp_RightPal\n\n #_00D32B: PLA\n #_00D32C: CLC\n #_00D32D: ADC.w #$0180\n #_00D330: JSR Do3bppToWRAM4bpp_RightPal\n\n #_00D333: SEP #$30\n\n #_00D335: PLB\n\n #_00D336: RTL", + "file": "bank_00.asm" + }, + { + "name": "DecompressAnimatedUnderworldTiles", + "code": "DecompressAnimatedUnderworldTiles:\n #_00D337: PHB\n #_00D338: PHK\n #_00D339: PLB\n\n #_00D33A: JSR Decompress_background_low\n\n #_00D33D: REP #$30\n\n #_00D33F: LDA.b $00\n #_00D341: LDY.w #$0030\n #_00D344: LDX.w #$1680\n #_00D347: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D34A: SEP #$30\n\n #_00D34C: LDY.b #$5C\n #_00D34E: JSR Decompress_background_low\n\n #_00D351: REP #$30\n\n #_00D353: LDA.b $00\n #_00D355: LDY.w #$0030\n #_00D358: LDX.w #$1C80\n #_00D35B: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D35E: LDX.w #$0000\n\n.next_tile_frame\n #_00D361: LDA.l $7EA880,X\n #_00D365: PHA\n\n #_00D366: LDA.l $7EAC80,X\n #_00D36A: STA.l $7EA880,X\n\n #_00D36E: LDA.l $7EAE80,X\n #_00D372: STA.l $7EAC80,X\n\n #_00D376: LDA.l $7EAA80,X\n #_00D37A: STA.l $7EAE80,X\n\n #_00D37E: PLA\n #_00D37F: STA.l $7EAA80,X\n\n #_00D383: INX\n #_00D384: INX\n #_00D385: CPX.w #$0200\n #_00D388: BNE .next_tile_frame\n\n; ---------------------------------------------------------\n\n #_00D38A: LDA.w #$3B00 ; VRAM $7600\n #_00D38D: STA.w $0134\n\n #_00D390: SEP #$30\n\n #_00D392: PLB\n\n #_00D393: RTL", + "file": "bank_00.asm" + }, + { + "name": "DecompressAnimatedOverworldTiles", + "code": "DecompressAnimatedOverworldTiles:\n #_00D394: PHB\n #_00D395: PHK\n #_00D396: PLB\n\n #_00D397: PHY\n\n #_00D398: JSR Decompress_background_low\n\n #_00D39B: REP #$30\n\n #_00D39D: LDA.b $00\n #_00D39F: LDY.w #$0040\n #_00D3A2: LDX.w #$1680\n #_00D3A5: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3A8: SEP #$30\n\n #_00D3AA: PLY\n #_00D3AB: INY\n\n #_00D3AC: JSR Decompress_background_low\n\n #_00D3AF: REP #$30\n\n #_00D3B1: LDA.b $00\n #_00D3B3: LDY.w #$0020\n #_00D3B6: LDX.w #$1E80\n #_00D3B9: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3BC: LDA.w #$3C00 ; VRAM $7800\n #_00D3BF: STA.w $0134\n\n #_00D3C2: SEP #$30\n\n #_00D3C4: PLB\n\n #_00D3C5: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFX_Auxiliary", + "code": "LoadItemGFX_Auxiliary:\n #_00D3C6: LDY.b #$0F\n #_00D3C8: JSR Decompress_background_low\n\n #_00D3CB: REP #$30\n\n #_00D3CD: LDA.b $00\n #_00D3CF: LDY.w #$0010\n #_00D3D2: LDX.w #$2340\n\n #_00D3D5: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3D8: SEP #$30\n\n #_00D3DA: LDY.b #$58\n #_00D3DC: JSR Decompress_sprite_low\n\n #_00D3DF: REP #$30\n\n #_00D3E1: LDA.b $00\n #_00D3E3: LDY.w #$0020\n #_00D3E6: LDX.w #$2540\n\n #_00D3E9: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D3EC: SEP #$30\n\n #_00D3EE: LDY.b #$05\n #_00D3F0: JSR Decompress_background_low\n\n #_00D3F3: REP #$30\n\n #_00D3F5: LDA.b $00\n #_00D3F7: CLC\n #_00D3F8: ADC.w #$0480\n\n #_00D3FB: LDY.w #$0002\n #_00D3FE: LDX.w #$2DC0\n #_00D401: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D404: SEP #$30\n\n #_00D406: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadFollowerGraphics", + "code": "LoadFollowerGraphics:\n #_00D423: PHB\n #_00D424: PHK\n #_00D425: PLB\n\n #_00D426: LDY.b #$64\n #_00D428: LDA.l $7EF3CC\n #_00D42C: CMP.b #$01 ; FOLLOWER 01\n #_00D42E: BEQ .start\n\n #_00D430: LDY.b #$66\n #_00D432: LDA.l $7EF3CC\n #_00D436: CMP.b #$09 ; FOLLOWER 09\n #_00D438: BCC .start\n\n #_00D43A: LDY.b #$59\n #_00D43C: CMP.b #$0C\n #_00D43E: BCC .start\n\n #_00D440: LDY.b #$58\n\n; ---------------------------------------------------------\n\n.start\n #_00D442: JSR Decompress_sprite_high\n\n #_00D445: LDY.b #$65\n #_00D447: JSR Decompress_sprite_low\n\n #_00D44A: REP #$30\n\n #_00D44C: LDA.l $7EF3CC\n #_00D450: AND.w #$00FF\n #_00D453: ASL A\n #_00D454: TAX\n\n #_00D455: LDA.b $00\n #_00D457: CLC\n #_00D458: ADC.l .gfx_offset,X\n\n #_00D45C: LDY.w #$0020\n #_00D45F: LDX.w #$2940\n #_00D462: JSR Do3bppToWRAM4bpp_LeftPal_arbitrary\n\n #_00D465: SEP #$30\n\n #_00D467: PLB\n\n #_00D468: RTL", + "file": "bank_00.asm" + }, + { + "name": "WriteTo4BPPBuffer_at_7F4000", + "code": "WriteTo4BPPBuffer_at_7F4000:\n #_00D4DB: PHB\n #_00D4DC: PHK\n #_00D4DD: PLB\n\n #_00D4DE: PHA\n\n #_00D4DF: STZ.b $00\n\n #_00D4E1: LDA.b #$7F4000>>8\n #_00D4E3: STA.b $01\n\n #_00D4E5: LDA.b #$7F4000>>16\n #_00D4E7: STA.b $02\n #_00D4E9: STA.b $05\n\n #_00D4EB: BRA WriteTo4BPPBuffer\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "WriteTo4BPPBuffer_item_gfx", + "code": "WriteTo4BPPBuffer_item_gfx:\n #_00D4ED: PHB\n #_00D4EE: PHK\n #_00D4EF: PLB\n\n #_00D4F0: PHA\n\n #_00D4F1: LDY.b #$5D\n #_00D4F3: CMP.b #$23\n #_00D4F5: BEQ .set_a\n\n #_00D4F7: CMP.b #$37\n #_00D4F9: BCS .set_a\n\n #_00D4FB: LDY.b #$5C\n #_00D4FD: CMP.b #$0C\n #_00D4FF: BEQ .set_a\n\n #_00D501: CMP.b #$24\n #_00D503: BCS .set_a\n\n #_00D505: LDY.b #$5B\n\n.set_a\n #_00D507: JSR Decompress_sprite_high\n\n #_00D50A: LDY.b #$5A\n #_00D50C: JSR Decompress_sprite_low\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "WriteTo4BPPBuffer", + "code": "WriteTo4BPPBuffer:\n #_00D50F: PLA\n\n #_00D510: REP #$21\n\n #_00D512: AND.w #$00FF\n #_00D515: ASL A\n #_00D516: TAX\n\n #_00D517: LDA.b $00\n #_00D519: ADC.w .offsets,X\n\n #_00D51C: REP #$10\n\n #_00D51E: LDX.w #$2D40\n #_00D521: LDY.w #$0002\n\n #_00D524: PHA\n\n #_00D525: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D528: PLA\n #_00D529: CLC\n #_00D52A: ADC.w #$0180\n\n #_00D52D: LDY.w #$0002\n #_00D530: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D533: SEP #$30\n\n #_00D535: PLB\n\n #_00D536: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFX_sheet0", + "code": "LoadItemGFX_sheet0:\n #_00D537: STA.b $0A\n\n #_00D539: LDY.b #$00\n\n #_00D53B: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00D53E: STA.b $02\n #_00D540: STA.b $05\n\n #_00D542: LDA.w GFXSheetPointers_sprite_high,Y\n #_00D545: STA.b $01\n\n #_00D547: LDA.w GFXSheetPointers_sprite_low,Y\n #_00D54A: STA.b $00\n\n #_00D54C: BRA LoadItemGFX\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFX_arbitrary_sheet", + "code": "LoadItemGFX_arbitrary_sheet:\n #_00D54E: PHA\n\n #_00D54F: JSR Decompress_sprite_low\n\n #_00D552: PLA\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFX_current_sheet", + "code": "LoadItemGFX_current_sheet:\n #_00D553: STA.b $0A\n\n #_00D555: STZ.b $00\n\n #_00D557: LDA.b #$7F4000>>8\n #_00D559: STA.b $01\n\n #_00D55B: LDA.b #$7F4000>>16\n #_00D55D: STA.b $02\n\n #_00D55F: STA.b $05\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "LoadItemGFX", + "code": "LoadItemGFX:\n #_00D561: REP #$31\n\n #_00D563: LDY.b $0C\n\n #_00D565: LDA.b $00\n #_00D567: ADC.w .offset,Y\n\n #_00D56A: LDX.b $06\n #_00D56C: LDY.b $0A\n\n #_00D56E: PHA\n\n #_00D56F: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D572: PLA\n #_00D573: CLC\n #_00D574: ADC.w #$0180\n\n #_00D577: LDY.b $0A\n #_00D579: JSR Do3bppToWRAM4bpp_RightPal_arbitrary\n\n #_00D57C: INC.b $0C\n #_00D57E: INC.b $0C\n\n #_00D580: STX.b $06\n\n #_00D582: SEP #$30\n\n #_00D584: RTS", + "file": "bank_00.asm" + }, + { + "name": "UNREACHABLE_00D585", + "code": "UNREACHABLE_00D585:\n #_00D585: LDY.w #$0008\n #_00D588: STY.b $0E\n\n.next_tile\n #_00D58A: STA.b $00\n\n #_00D58C: CLC\n #_00D58D: ADC.w #$0010\n #_00D590: STA.b $03\n\n #_00D592: LDY.w #$0007\n\n.next_word\n #_00D595: LDA.b [$00]\n #_00D597: STA.l $7E9000,X\n\n #_00D59B: INC.b $00\n #_00D59D: INC.b $00\n\n #_00D59F: LDA.b [$03]\n #_00D5A1: AND.w #$00FF\n #_00D5A4: STA.l $7E9010,X\n\n #_00D5A8: INC.b $03\n\n #_00D5AA: INX\n #_00D5AB: INX\n\n #_00D5AC: DEY\n #_00D5AD: BPL .next_word\n\n #_00D5AF: TXA\n #_00D5B0: CLC\n #_00D5B1: ADC.w #$0010\n #_00D5B4: TAX\n\n #_00D5B5: LDA.b $03\n #_00D5B7: AND.w #$0078\n #_00D5BA: BNE .same_row\n\n #_00D5BC: LDA.b $03\n #_00D5BE: CLC\n #_00D5BF: ADC.w #$0180\n #_00D5C2: STA.b $03\n\n.same_row\n #_00D5C4: LDA.b $03\n\n #_00D5C6: DEC.b $0E\n #_00D5C8: BNE .next_tile\n\n #_00D5CA: RTS", + "file": "bank_00.asm" + }, + { + "name": "Do3bppToWRAM4bpp_LeftPal", + "code": "Do3bppToWRAM4bpp_LeftPal:\n #_00D5CB: LDY.w #$0008\n\n.arbitrary\n #_00D5CE: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00D5D0: STA.b $00\n\n #_00D5D2: CLC\n #_00D5D3: ADC.w #$0010\n #_00D5D6: STA.b $03\n\n #_00D5D8: LDY.w #$0003\n\n.next_word\n #_00D5DB: LDA.b [$00]\n #_00D5DD: STA.l $7E9000,X\n\n #_00D5E1: INC.b $00\n #_00D5E3: INC.b $00\n\n #_00D5E5: LDA.b [$03]\n #_00D5E7: AND.w #$00FF\n #_00D5EA: STA.l $7E9010,X\n\n #_00D5EE: INC.b $03\n\n #_00D5F0: INX\n #_00D5F1: INX\n\n #_00D5F2: LDA.b [$00]\n #_00D5F4: STA.l $7E9000,X\n\n #_00D5F8: INC.b $00\n #_00D5FA: INC.b $00\n\n #_00D5FC: LDA.b [$03]\n #_00D5FE: AND.w #$00FF\n #_00D601: STA.l $7E9010,X\n\n #_00D605: INC.b $03\n\n #_00D607: INX\n #_00D608: INX\n\n #_00D609: DEY\n #_00D60A: BPL .next_word\n\n #_00D60C: TXA\n #_00D60D: CLC\n #_00D60E: ADC.w #$0010\n #_00D611: TAX\n\n #_00D612: LDA.b $03\n\n #_00D614: DEC.b $0E\n #_00D616: BNE .next_tile\n\n #_00D618: RTS", + "file": "bank_00.asm" + }, + { + "name": "Do3bppToWRAM4bpp_RightPal", + "code": "Do3bppToWRAM4bpp_RightPal:\n #_00D619: LDY.w #$0006\n\n.arbitrary\n #_00D61C: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00D61E: STA.b $00\n\n #_00D620: CLC\n #_00D621: ADC.w #$0010\n #_00D624: STA.b $03\n\n #_00D626: LDY.w #$0007\n\n.next_word\n #_00D629: LDA.b [$00]\n #_00D62B: STA.l $7E9000,X\n\n #_00D62F: XBA\n #_00D630: ORA.b [$00]\n #_00D632: AND.w #$00FF\n #_00D635: STA.b $08\n\n #_00D637: INC.b $00\n #_00D639: INC.b $00\n\n #_00D63B: LDA.b [$03]\n #_00D63D: AND.w #$00FF\n #_00D640: STA.b $BD\n\n #_00D642: ORA.b $08\n #_00D644: XBA\n #_00D645: ORA.b $BD\n #_00D647: STA.l $7E9010,X\n\n #_00D64B: INC.b $03\n\n #_00D64D: INX\n #_00D64E: INX\n\n #_00D64F: DEY\n #_00D650: BPL .next_word\n\n; ---------------------------------------------------------\n\n #_00D652: TXA\n #_00D653: CLC\n #_00D654: ADC.w #$0010\n #_00D657: TAX\n\n #_00D658: LDA.b $03\n #_00D65A: AND.w #$0078\n #_00D65D: BNE .same_row\n\n #_00D65F: LDA.b $03\n #_00D661: CLC\n #_00D662: ADC.w #$0180\n #_00D665: STA.b $03\n\n.same_row\n #_00D667: LDA.b $03\n\n #_00D669: DEC.b $0E\n #_00D66B: BNE .next_tile\n\n #_00D66D: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadTransAuxGFX", + "code": "LoadTransAuxGFX:\n #_00D66E: PHB\n #_00D66F: PHK\n #_00D670: PLB\n\n #_00D671: STZ.b $00\n\n #_00D673: LDA.b #$7E6000>>8\n #_00D675: STA.b $01\n\n #_00D677: LDA.b #$7E6000>>16\n #_00D679: STA.b $02\n\n #_00D67B: REP #$30\n\n #_00D67D: LDA.w $0AA2\n #_00D680: AND.w #$00FF\n #_00D683: ASL A\n #_00D684: ASL A\n #_00D685: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_00D687: SEP #$20\n\n #_00D689: LDX.b $0E\n\n #_00D68B: LDA.w SheetsTable_AA2+0,X\n #_00D68E: BEQ .skip_bg0\n\n #_00D690: STA.l $7EC2F8\n\n #_00D694: SEP #$10\n\n #_00D696: TAY\n #_00D697: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg0\n #_00D69A: SEP #$10\n\n #_00D69C: LDA.b $01\n #_00D69E: CLC\n #_00D69F: ADC.b #$06\n #_00D6A1: STA.b $01\n\n #_00D6A3: REP #$10\n\n #_00D6A5: LDX.b $0E\n\n #_00D6A7: LDA.w SheetsTable_AA2+1,X\n #_00D6AA: BEQ .skip_bg1\n\n #_00D6AC: STA.l $7EC2F9\n\n #_00D6B0: SEP #$10\n\n #_00D6B2: TAY\n #_00D6B3: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg1\n #_00D6B6: SEP #$10\n\n #_00D6B8: LDA.b $01\n #_00D6BA: CLC\n #_00D6BB: ADC.b #$06\n #_00D6BD: STA.b $01\n\n #_00D6BF: REP #$10\n\n #_00D6C1: LDX.b $0E\n\n #_00D6C3: LDA.w SheetsTable_AA2+2,X\n #_00D6C6: BEQ .skip_bg2\n\n #_00D6C8: STA.l $7EC2FA\n\n #_00D6CC: SEP #$10\n\n #_00D6CE: TAY\n #_00D6CF: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg2\n #_00D6D2: SEP #$10\n\n #_00D6D4: LDA.b $01\n #_00D6D6: CLC\n #_00D6D7: ADC.b #$06\n #_00D6D9: STA.b $01\n\n #_00D6DB: REP #$10\n\n #_00D6DD: LDX.b $0E\n #_00D6DF: LDA.w SheetsTable_AA2+3,X\n #_00D6E2: BEQ .skip_bg3\n\n #_00D6E4: STA.l $7EC2FB\n\n #_00D6E8: SEP #$10\n\n #_00D6EA: TAY\n #_00D6EB: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n.skip_bg3\n #_00D6EE: SEP #$10\n\n #_00D6F0: LDA.b $01\n #_00D6F2: CLC\n #_00D6F3: ADC.b #$06\n #_00D6F5: STA.b $01\n\n #_00D6F7: BRA .continue\n\n; =========================================================\n\n#LoadTransAuxGFX_sprite:\n #_00D6F9: PHB\n #_00D6FA: PHK\n #_00D6FB: PLB\n\n #_00D6FC: STZ.b $00\n\n #_00D6FE: LDA.b #$7E7800>>8\n #_00D700: STA.b $01\n\n #_00D702: LDA.b #$7E7800>>16\n #_00D704: STA.b $02\n\n; =========================================================\n\n.continue\n #_00D706: REP #$30\n\n #_00D708: LDA.w $0AA3\n #_00D70B: AND.w #$00FF\n #_00D70E: ASL A\n #_00D70F: ASL A\n #_00D710: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_00D712: SEP #$20\n\n #_00D714: LDX.b $0E\n #_00D716: LDA.w SheetsTable_AA3+0,X\n #_00D719: BEQ .skip_spr0\n\n #_00D71B: STA.l $7EC2FC\n\n.skip_spr0\n #_00D71F: SEP #$10\n\n #_00D721: LDA.l $7EC2FC\n #_00D725: TAY\n\n #_00D726: JSR Decompress_sprite_arbitrary\n\n #_00D729: LDA.b $01\n #_00D72B: CLC\n #_00D72C: ADC.b #$06\n #_00D72E: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D730: REP #$10\n\n #_00D732: LDX.b $0E\n\n #_00D734: LDA.w SheetsTable_AA3+1,X\n #_00D737: BEQ .skip_spr1\n\n #_00D739: STA.l $7EC2FD\n\n.skip_spr1\n #_00D73D: SEP #$10\n\n #_00D73F: LDA.l $7EC2FD\n #_00D743: TAY\n\n #_00D744: JSR Decompress_sprite_arbitrary\n\n #_00D747: LDA.b $01\n #_00D749: CLC\n #_00D74A: ADC.b #$06\n #_00D74C: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D74E: REP #$10\n\n #_00D750: LDX.b $0E\n\n #_00D752: LDA.w SheetsTable_AA3+2,X\n #_00D755: BEQ .skip_spr2\n\n #_00D757: STA.l $7EC2FE\n\n.skip_spr2\n #_00D75B: SEP #$10\n\n #_00D75D: LDA.l $7EC2FE\n #_00D761: TAY\n\n #_00D762: JSR Decompress_sprite_arbitrary\n\n #_00D765: LDA.b $01\n #_00D767: CLC\n #_00D768: ADC.b #$06\n #_00D76A: STA.b $01\n\n; ---------------------------------------------------------\n\n #_00D76C: REP #$10\n\n #_00D76E: LDX.b $0E\n\n #_00D770: LDA.w SheetsTable_AA3+3,X\n #_00D773: BEQ .skip_spr3\n\n #_00D775: STA.l $7EC2FF\n\n.skip_spr3\n #_00D779: SEP #$10\n\n #_00D77B: LDA.l $7EC2FF\n #_00D77F: TAY\n\n #_00D780: JSR Decompress_sprite_arbitrary\n\n #_00D783: STZ.w $0412\n\n #_00D786: PLB\n\n #_00D787: RTL", + "file": "bank_00.asm" + }, + { + "name": "ReloadPreviouslyLoadedSheets", + "code": "ReloadPreviouslyLoadedSheets:\n #_00D788: PHB\n #_00D789: PHK\n #_00D78A: PLB\n\n #_00D78B: STZ.b $00\n\n #_00D78D: LDA.b #$7E6000>>8\n #_00D78F: STA.b $01\n\n #_00D791: LDA.b #$7E6000>>16\n #_00D793: STA.b $02\n\n #_00D795: LDA.l $7EC2F8\n #_00D799: TAY\n\n #_00D79A: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D79D: LDA.b $01\n #_00D79F: CLC\n #_00D7A0: ADC.b #$06\n #_00D7A2: STA.b $01\n\n #_00D7A4: LDA.l $7EC2F9\n #_00D7A8: TAY\n\n #_00D7A9: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7AC: LDA.b $01\n #_00D7AE: CLC\n #_00D7AF: ADC.b #$06\n #_00D7B1: STA.b $01\n\n #_00D7B3: LDA.l $7EC2FA\n #_00D7B7: TAY\n\n #_00D7B8: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7BB: LDA.b $01\n #_00D7BD: CLC\n #_00D7BE: ADC.b #$06\n #_00D7C0: STA.b $01\n\n #_00D7C2: LDA.l $7EC2FB\n #_00D7C6: TAY\n\n #_00D7C7: JSR Decompress_background_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7CA: STZ.b $00\n\n #_00D7CC: LDA.b #$7E7800>>8\n #_00D7CE: STA.b $01\n\n #_00D7D0: LDA.b #$7E7800>>16\n #_00D7D2: STA.b $02\n\n #_00D7D4: LDA.l $7EC2FC\n #_00D7D8: TAY\n\n #_00D7D9: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7DC: LDA.b $01\n #_00D7DE: CLC\n #_00D7DF: ADC.b #$06\n #_00D7E1: STA.b $01\n\n #_00D7E3: LDA.l $7EC2FD\n #_00D7E7: TAY\n\n #_00D7E8: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7EB: LDA.b $01\n #_00D7ED: CLC\n #_00D7EE: ADC.b #$06\n #_00D7F0: STA.b $01\n\n #_00D7F2: LDA.l $7EC2FE\n #_00D7F6: TAY\n\n #_00D7F7: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D7FA: LDA.b $01\n #_00D7FC: CLC\n #_00D7FD: ADC.b #$06\n #_00D7FF: STA.b $01\n\n #_00D801: LDA.l $7EC2FF\n #_00D805: TAY\n\n #_00D806: JSR Decompress_sprite_arbitrary\n\n; ---------------------------------------------------------\n\n #_00D809: STZ.w $0412\n\n #_00D80C: PLB\n\n #_00D80D: RTL", + "file": "bank_00.asm" + }, + { + "name": "Attract_DecompressStoryGFX", + "code": "Attract_DecompressStoryGFX:\n #_00D80E: PHB\n #_00D80F: PHK\n #_00D810: PLB\n\n #_00D811: STZ.b $00\n\n #_00D813: LDA.b #$7F4000>>8\n #_00D815: STA.b $01\n\n #_00D817: LDA.b #$7F4000>>16\n #_00D819: STA.b $02\n #_00D81B: STA.b $05\n\n #_00D81D: LDA.b #$67\n #_00D81F: STA.b $0E\n\n.next\n #_00D821: LDY.b $0E\n\n #_00D823: JSR Decompress_sprite_arbitrary\n\n #_00D826: LDA.b $01\n #_00D828: CLC\n #_00D829: ADC.b #$08\n #_00D82B: STA.b $01\n\n #_00D82D: INC.b $0E\n\n #_00D82F: LDA.b $0E\n #_00D831: CMP.b #$69\n #_00D833: BNE .next\n\n #_00D835: PLB\n\n #_00D836: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp", + "code": "AnimateMirrorWarp:\n #_00D864: STZ.b $00\n\n #_00D866: LDA.b #$40\n #_00D868: STA.b $01\n\n #_00D86A: LDX.w $0200\n\n #_00D86D: LDA.l .next_tilemap,X\n #_00D871: STA.b $17\n #_00D873: STA.w $0710\n\n #_00D876: LDA.l .vector_low,X\n #_00D87A: STA.b $0E\n\n #_00D87C: LDA.l .vector_high,X\n #_00D880: STA.b $0F\n\n #_00D882: LDX.b #$00\n\n #_00D884: LDA.b $8A\n #_00D886: AND.b #$40\n #_00D888: BEQ .light_world\n\n #_00D88A: LDX.b #$08\n\n.light_world\n #_00D88C: INC.w $0200\n\n #_00D88F: JMP.w ($000E)\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_LoadPyramidIfAga", + "code": "AnimateMirrorWarp_LoadPyramidIfAga:\n #_00D892: INC.w $06BA\n\n #_00D895: LDA.w $06BA\n #_00D898: CMP.b #$20\n #_00D89A: BEQ .continue\n\n #_00D89C: STZ.w $0200\n\n #_00D89F: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_TriggerOverlayA_2", + "code": "AnimateMirrorWarp_TriggerOverlayA_2:\n #_00D8A5: JSL MirrorWarp_HandleCastlePyramidSubscreen\n\n #_00D8A9: DEC.b $11\n\n #_00D8AB: LDA.b #$0C\n #_00D8AD: STA.b $17\n #_00D8AF: STA.w $0710\n\n #_00D8B2: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DrawDestinationScreen", + "code": "AnimateMirrorWarp_DrawDestinationScreen:\n #_00D8B3: JSL Overworld_DrawScreenAtCurrentMirrorPosition\n\n #_00D8B7: INC.w $0710\n\n #_00D8BA: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DoSpritesPalettes", + "code": "AnimateMirrorWarp_DoSpritesPalettes:\n #_00D8BB: JSL MirrorWarp_LoadSpritesAndColors\n\n #_00D8BF: LDA.b #$0C\n #_00D8C1: STA.b $17\n #_00D8C3: STA.w $0710\n\n #_00D8C6: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_TriggerOverlayB", + "code": "AnimateMirrorWarp_TriggerOverlayB:\n #_00D8C7: LDA.b #$0D\n #_00D8C9: STA.b $17\n #_00D8CB: STA.w $0710\n\n #_00D8CE: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_TriggerBGChar0", + "code": "AnimateMirrorWarp_TriggerBGChar0:\n #_00D8CF: LDA.b #$0E\n #_00D8D1: STA.w $0200\n\n #_00D8D4: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressAnimatedTiles", + "code": "AnimateMirrorWarp_DecompressAnimatedTiles:\n #_00D8D5: LDY.b #$58\n\n #_00D8D7: LDA.b $8A\n #_00D8D9: AND.b #$BF\n #_00D8DB: CMP.b #$03 ; OW 03, 0W 43\n #_00D8DD: BEQ .not_death_mountain\n\n #_00D8DF: CMP.b #$05 ; OW 05, 0W 45\n #_00D8E1: BEQ .not_death_mountain\n\n #_00D8E3: CMP.b #$07 ; OW 07, 0W 47\n #_00D8E5: BEQ .not_death_mountain\n\n #_00D8E7: LDY.b #$5A\n\n.not_death_mountain\n #_00D8E9: JSL DecompressAnimatedOverworldTiles\n\n #_00D8ED: RTL", + "file": "bank_00.asm" + }, + { + "name": "SheetsTable_Mirror", + "code": "SheetsTable_Mirror:\n #_00D8EE: db $3A\n #_00D8EF: db $3B\n #_00D8F0: db $3C\n #_00D8F1: db $3D\n #_00D8F2: db $3E\n #_00D8F3: db $5B\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "SheetsTable_AA4", + "code": "SheetsTable_AA4:\n #_00D8F4: db $01\n #_00D8F5: db $5A\n #_00D8F6: db $42\n #_00D8F7: db $43\n #_00D8F8: db $44\n #_00D8F9: db $45\n #_00D8FA: db $3F\n #_00D8FB: db $59\n #_00D8FC: db $0B\n #_00D8FD: db $5A\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressNewTileSets", + "code": "AnimateMirrorWarp_DecompressNewTileSets:\n #_00D8FE: PHB\n #_00D8FF: PHK\n #_00D900: PLB\n\n #_00D901: PHX\n\n #_00D902: REP #$30\n\n #_00D904: LDA.w $0AA1\n #_00D907: AND.w #$00FF\n #_00D90A: ASL A\n #_00D90B: ASL A\n #_00D90C: ASL A\n #_00D90D: TAX\n\n #_00D90E: LDA.w $0AA2\n #_00D911: AND.w #$00FF\n #_00D914: ASL A\n #_00D915: ASL A\n #_00D916: TAY\n\n #_00D917: SEP #$20\n\n #_00D919: LDA.w SheetsTable_AA2+0,Y\n #_00D91C: BNE .not_default_a\n\n #_00D91E: LDA.w SheetsTable_AA1+3,X\n\n.not_default_a\n #_00D921: STA.l $7EC2F8\n\n #_00D925: LDA.w SheetsTable_AA2+1,Y\n #_00D928: BNE .not_default_b\n\n #_00D92A: LDA.w SheetsTable_AA1+4,X\n\n.not_default_b\n #_00D92D: STA.l $7EC2F9\n\n #_00D931: LDA.w SheetsTable_AA2+2,Y\n #_00D934: BNE .not_default_c\n\n #_00D936: LDA.w SheetsTable_AA1+5,X\n\n.not_default_c\n #_00D939: STA.l $7EC2FA\n\n #_00D93D: LDA.w SheetsTable_AA2+3,Y\n #_00D940: BNE .not_default_d\n\n #_00D942: LDA.w SheetsTable_AA1+6,X\n\n.not_default_d\n #_00D945: STA.l $7EC2FB\n\n; ---------------------------------------------------------\n\n #_00D949: REP #$20\n\n #_00D94B: LDA.w $0AA3\n #_00D94E: AND.w #$00FF\n #_00D951: ASL A\n #_00D952: ASL A\n #_00D953: TAY\n\n #_00D954: SEP #$20\n\n #_00D956: LDA.w SheetsTable_AA3+0,Y\n #_00D959: BEQ .dont_change_a\n\n #_00D95B: STA.l $7EC2FC\n\n.dont_change_a\n #_00D95F: LDA.w SheetsTable_AA3+1,Y\n #_00D962: BEQ .dont_change_b\n\n #_00D964: STA.l $7EC2FD\n\n.dont_change_b\n #_00D968: LDA.w SheetsTable_AA3+2,Y\n #_00D96B: BEQ .dont_change_c\n\n #_00D96D: STA.l $7EC2FE\n\n.dont_change_c\n #_00D971: LDA.w SheetsTable_AA3+3,Y\n #_00D974: BEQ .dont_change_d\n\n #_00D976: STA.l $7EC2FF\n\n; ---------------------------------------------------------\n\n.dont_change_d\n #_00D97A: SEP #$10\n\n #_00D97C: PLX\n\n #_00D97D: LDA.l SheetsTable_Mirror+1,X\n #_00D981: STA.b $08\n\n #_00D983: LDA.l SheetsTable_Mirror+0,X\n #_00D987: TAY\n\n #_00D988: LDA.b #$7F\n #_00D98A: JSR Decompress_background_arbitrary_bank\n\n #_00D98D: LDA.b $01\n #_00D98F: CLC\n #_00D990: ADC.b #$06\n #_00D992: STA.b $01\n\n #_00D994: LDY.b $08\n #_00D996: JSR Decompress_background_arbitrary\n\n #_00D999: PLB\n\n #_00D99A: LDA.b #$7F\n #_00D99C: STA.b $02\n #_00D99E: STA.b $05\n\n #_00D9A0: REP #$31\n\n #_00D9A2: LDX.w #$0000\n #_00D9A5: LDY.w #$0040\n #_00D9A8: LDA.w #$4000\n #_00D9AB: JSR Do3To4High16Bit\n\n #_00D9AE: LDY.w #$0040\n #_00D9B1: LDA.b $03\n #_00D9B3: JSR Do3To4Low16Bit\n\n #_00D9B6: SEP #$30\n\n #_00D9B8: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsA", + "code": "AnimateMirrorWarp_DecompressBackgroundsA:\n #_00D9B9: PHB\n #_00D9BA: PHK\n #_00D9BB: PLB\n\n #_00D9BC: LDA.l SheetsTable_Mirror+3,X\n #_00D9C0: STA.b $08\n\n #_00D9C2: LDA.l SheetsTable_Mirror+2,X\n #_00D9C6: TAY\n\n #_00D9C7: LDA.b #$7F\n #_00D9C9: JSR Decompress_background_arbitrary_bank\n\n #_00D9CC: LDA.b $01\n #_00D9CE: CLC\n #_00D9CF: ADC.b #$06\n #_00D9D1: STA.b $01\n\n #_00D9D3: LDY.b $08\n #_00D9D5: JSR Decompress_background_arbitrary\n\n #_00D9D8: PLB\n\n #_00D9D9: LDA.b #$7F\n #_00D9DB: STA.b $02\n #_00D9DD: STA.b $05\n\n #_00D9DF: REP #$31\n\n #_00D9E1: LDX.w #$0000\n #_00D9E4: LDY.w #$0040\n #_00D9E7: LDA.w #$4000\n #_00D9EA: JSR Do3To4Low16Bit\n\n #_00D9ED: LDY.w #$0040\n #_00D9F0: LDA.b $03\n #_00D9F2: JSR Do3To4High16Bit\n\n #_00D9F5: SEP #$30\n\n #_00D9F7: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsB", + "code": "AnimateMirrorWarp_DecompressBackgroundsB:\n #_00D9F8: PHB\n #_00D9F9: PHK\n #_00D9FA: PLB\n\n #_00D9FB: LDA.l $7EC2F9\n #_00D9FF: TAY\n\n #_00DA00: LDA.b #$7F\n #_00DA02: JSR Decompress_background_arbitrary_bank\n\n #_00DA05: LDA.b $01\n #_00DA07: CLC\n #_00DA08: ADC.b #$06\n #_00DA0A: STA.b $01\n\n #_00DA0C: LDA.l $7EC2FA\n #_00DA10: TAY\n #_00DA11: JSR Decompress_background_arbitrary\n\n #_00DA14: PLB\n\n #_00DA15: LDA.b #$7F\n #_00DA17: STA.b $02\n #_00DA19: STA.b $05\n\n #_00DA1B: REP #$31\n\n #_00DA1D: LDX.w #$0000\n #_00DA20: LDY.w #$0080\n #_00DA23: LDA.w #$4000\n #_00DA26: JSR Do3To4High16Bit\n\n #_00DA29: SEP #$30\n\n #_00DA2B: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsC", + "code": "AnimateMirrorWarp_DecompressBackgroundsC:\n #_00DA2C: PHB\n #_00DA2D: PHK\n #_00DA2E: PLB\n\n #_00DA2F: LDA.l SheetsTable_Mirror+5,X\n #_00DA33: STA.b $08\n\n #_00DA35: LDA.l SheetsTable_Mirror+4,X\n #_00DA39: TAY\n\n #_00DA3A: LDA.b #$7F\n #_00DA3C: JSR Decompress_background_arbitrary_bank\n\n #_00DA3F: LDA.b $01\n #_00DA41: CLC\n #_00DA42: ADC.b #$06\n #_00DA44: STA.b $01\n\n #_00DA46: LDY.b $08\n #_00DA48: JSR Decompress_background_arbitrary\n\n #_00DA4B: PLB\n\n #_00DA4C: LDA.b #$7F\n #_00DA4E: STA.b $02\n #_00DA50: STA.b $05\n\n #_00DA52: REP #$31\n\n #_00DA54: LDX.w #$0000\n #_00DA57: LDY.w #$0080\n #_00DA5A: LDA.w #$4000\n #_00DA5D: JSR Do3To4Low16Bit\n\n #_00DA60: SEP #$30\n\n #_00DA62: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_LoadSubscreen", + "code": "AnimateMirrorWarp_LoadSubscreen:\n #_00DA63: STZ.b $1D\n\n #_00DA65: LDA.b $8A\n #_00DA67: BEQ .subscreen\n\n #_00DA69: CMP.b #$70 ; OW 70\n #_00DA6B: BEQ .subscreen\n\n #_00DA6D: CMP.b #$40 ; OW 40\n #_00DA6F: BEQ .subscreen\n\n #_00DA71: CMP.b #$5B ; OW 5B\n #_00DA73: BEQ .subscreen\n\n #_00DA75: CMP.b #$03 ; OW 03\n #_00DA77: BEQ .subscreen\n\n #_00DA79: CMP.b #$05 ; OW 05\n #_00DA7B: BEQ .subscreen\n\n #_00DA7D: CMP.b #$07 ; OW 07\n #_00DA7F: BEQ .subscreen\n\n #_00DA81: CMP.b #$43 ; OW 43\n #_00DA83: BEQ .subscreen\n\n #_00DA85: CMP.b #$45 ; OW 45\n #_00DA87: BEQ .subscreen\n\n #_00DA89: CMP.b #$47 ; OW 47\n #_00DA8B: BNE .no_subscreen\n\n.subscreen\n #_00DA8D: LDA.b #$01\n #_00DA8F: STA.b $1D\n\n.no_subscreen\n #_00DA91: PHB\n #_00DA92: PHK\n #_00DA93: PLB\n\n #_00DA94: LDA.l SheetsTable_Mirror+6,X\n #_00DA98: TAY\n\n #_00DA99: LDA.w GFXSheetPointers_sprite_low,Y\n #_00DA9C: STA.b $00\n\n #_00DA9E: LDA.w GFXSheetPointers_sprite_high,Y\n #_00DAA1: STA.b $01\n\n #_00DAA3: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00DAA6: STA.b $02\n #_00DAA8: STA.b $05\n\n #_00DAAA: PLB\n\n #_00DAAB: REP #$31\n\n #_00DAAD: LDX.w #$0000\n #_00DAB0: LDY.w #$0040\n\n #_00DAB3: LDA.b $00\n #_00DAB5: JSR Do3To4High16Bit\n\n #_00DAB8: SEP #$30\n\n #_00DABA: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressSpritesA", + "code": "AnimateMirrorWarp_DecompressSpritesA:\n #_00DABB: PHB\n #_00DABC: PHK\n #_00DABD: PLB\n\n #_00DABE: LDA.l $7EC2FC\n #_00DAC2: TAY\n\n #_00DAC3: LDA.b #$7F\n #_00DAC5: STA.b $02\n #_00DAC7: STA.b $05\n\n #_00DAC9: JSR Decompress_sprite_arbitrary\n\n #_00DACC: LDA.b $01\n #_00DACE: CLC\n #_00DACF: ADC.b #$06\n #_00DAD1: STA.b $01\n\n #_00DAD3: LDA.l $7EC2FD\n #_00DAD7: TAY\n #_00DAD8: JSR Decompress_sprite_arbitrary\n\n #_00DADB: PLB\n\n; ---------------------------------------------------------\n\n #_00DADC: LDA.b #$7F\n #_00DADE: STA.b $02\n #_00DAE0: STA.b $05\n\n #_00DAE2: REP #$31\n\n #_00DAE4: LDX.w #$0000\n #_00DAE7: LDY.w #$0040\n\n #_00DAEA: LDA.l $7EC2FC\n #_00DAEE: CMP.w #$0052\n #_00DAF1: BEQ .right_side_palette\n\n #_00DAF3: CMP.w #$0053\n #_00DAF6: BEQ .right_side_palette\n\n #_00DAF8: CMP.w #$005A\n #_00DAFB: BEQ .right_side_palette\n\n #_00DAFD: CMP.w #$005B\n #_00DB00: BNE .left_side_palette\n\n.right_side_palette\n #_00DB02: LDA.w #$4000\n #_00DB05: JSR Do3To4High16Bit\n\n #_00DB08: BRA .done\n\n.left_side_palette\n #_00DB0A: LDA.w #$4000\n #_00DB0D: JSR Do3To4Low16Bit\n\n.done\n #_00DB10: LDY.w #$0040\n #_00DB13: LDA.b $03\n #_00DB15: JSR Do3To4Low16Bit\n\n #_00DB18: SEP #$30\n\n #_00DB1A: RTL", + "file": "bank_00.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressSpritesB", + "code": "AnimateMirrorWarp_DecompressSpritesB:\n #_00DB1B: PHB\n #_00DB1C: PHK\n #_00DB1D: PLB\n\n #_00DB1E: LDA.l $7EC2FE\n #_00DB22: TAY\n\n #_00DB23: LDA.b #$7F\n #_00DB25: STA.b $02\n #_00DB27: STA.b $05\n #_00DB29: JSR Decompress_sprite_arbitrary\n\n #_00DB2C: LDA.b $01\n #_00DB2E: CLC\n #_00DB2F: ADC.b #$06\n #_00DB31: STA.b $01\n\n #_00DB33: LDA.l $7EC2FF\n #_00DB37: TAY\n #_00DB38: JSR Decompress_sprite_arbitrary\n\n #_00DB3B: PLB\n\n #_00DB3C: LDA.b #$7F\n #_00DB3E: STA.b $02\n #_00DB40: STA.b $05\n\n #_00DB42: REP #$31\n\n #_00DB44: LDX.w #$0000\n #_00DB47: LDY.w #$0080\n #_00DB4A: LDA.w #$7F4000\n #_00DB4D: JSR Do3To4Low16Bit\n\n #_00DB50: SEP #$30\n\n #_00DB52: JSL HandleFollowersAfterMirroring\n\n #_00DB56: RTL", + "file": "bank_00.asm" + }, + { + "name": "SheetsTable_AA3", + "code": "SheetsTable_AA3:\n #_00DB57: db $00, $49, $00, $00 ; 0x00\n #_00DB5B: db $46, $49, $0C, $1D ; 0x01\n #_00DB5F: db $48, $49, $13, $1D ; 0x02\n #_00DB63: db $46, $49, $13, $0E ; 0x03\n #_00DB67: db $48, $49, $0C, $11 ; 0x04\n #_00DB6B: db $48, $49, $0C, $10 ; 0x05\n #_00DB6F: db $4F, $49, $4A, $50 ; 0x06\n #_00DB73: db $0E, $49, $4A, $11 ; 0x07\n #_00DB77: db $46, $49, $12, $00 ; 0x08\n #_00DB7B: db $00, $49, $00, $50 ; 0x09\n #_00DB7F: db $00, $49, $00, $11 ; 0x0A\n #_00DB83: db $48, $49, $0C, $00 ; 0x0B\n #_00DB87: db $00, $00, $37, $36 ; 0x0C\n #_00DB8B: db $48, $49, $4C, $11 ; 0x0D\n #_00DB8F: db $5D, $2C, $0C, $44 ; 0x0E\n #_00DB93: db $00, $00, $4E, $00 ; 0x0F\n #_00DB97: db $0F, $00, $12, $10 ; 0x10\n #_00DB9B: db $00, $00, $00, $4C ; 0x11\n #_00DB9F: db $00, $0D, $17, $00 ; 0x12\n #_00DBA3: db $16, $0D, $17, $1B ; 0x13\n #_00DBA7: db $16, $0D, $17, $14 ; 0x14\n #_00DBAB: db $15, $0D, $17, $15 ; 0x15\n #_00DBAF: db $16, $0D, $18, $19 ; 0x16\n #_00DBB3: db $16, $0D, $17, $19 ; 0x17\n #_00DBB7: db $16, $0D, $00, $00 ; 0x18\n #_00DBBB: db $16, $0D, $18, $1B ; 0x19\n #_00DBBF: db $0F, $49, $4A, $11 ; 0x1A\n #_00DBC3: db $4B, $2A, $5C, $15 ; 0x1B\n #_00DBC7: db $16, $49, $17, $1D ; 0x1C\n #_00DBCB: db $00, $00, $00, $15 ; 0x1D\n #_00DBCF: db $16, $0D, $17, $10 ; 0x1E\n #_00DBD3: db $16, $49, $12, $00 ; 0x1F\n #_00DBD7: db $16, $49, $0C, $11 ; 0x20\n #_00DBDB: db $00, $00, $12, $10 ; 0x21\n #_00DBDF: db $16, $0D, $00, $11 ; 0x22\n #_00DBE3: db $16, $49, $0C, $00 ; 0x23\n #_00DBE7: db $16, $0D, $4C, $11 ; 0x24\n #_00DBEB: db $0E, $0D, $4A, $11 ; 0x25\n #_00DBEF: db $16, $1A, $17, $1B ; 0x26\n #_00DBF3: db $4F, $34, $4A, $50 ; 0x27\n #_00DBF7: db $35, $4D, $65, $36 ; 0x28\n #_00DBFB: db $4A, $34, $4E, $00 ; 0x29\n #_00DBFF: db $0E, $34, $4A, $11 ; 0x2A\n #_00DC03: db $51, $34, $5D, $59 ; 0x2B\n #_00DC07: db $4B, $49, $4C, $11 ; 0x2C\n #_00DC0B: db $2D, $00, $00, $00 ; 0x2D\n #_00DC0F: db $5D, $00, $12, $59 ; 0x2E\n #_00DC13: db $00, $00, $00, $00 ; 0x2F\n #_00DC17: db $00, $00, $00, $00 ; 0x30\n #_00DC1B: db $00, $00, $00, $00 ; 0x31\n #_00DC1F: db $00, $00, $00, $00 ; 0x32\n #_00DC23: db $00, $00, $00, $00 ; 0x33\n #_00DC27: db $00, $00, $00, $00 ; 0x34\n #_00DC2B: db $00, $00, $00, $00 ; 0x35\n #_00DC2F: db $00, $00, $00, $00 ; 0x36\n #_00DC33: db $00, $00, $00, $00 ; 0x37\n #_00DC37: db $00, $00, $00, $00 ; 0x38\n #_00DC3B: db $00, $00, $00, $00 ; 0x39\n #_00DC3F: db $00, $00, $00, $00 ; 0x3A\n #_00DC43: db $00, $00, $00, $00 ; 0x3B\n #_00DC47: db $00, $00, $00, $00 ; 0x3C\n #_00DC4B: db $00, $00, $00, $00 ; 0x3D\n #_00DC4F: db $00, $00, $00, $00 ; 0x3E\n #_00DC53: db $00, $00, $00, $00 ; 0x3F\n #_00DC57: db $47, $49, $2B, $2D ; 0x40 - 0x00 for underworld\n #_00DC5B: db $46, $49, $1C, $52 ; 0x41 - 0x01 for underworld\n #_00DC5F: db $00, $49, $1C, $52 ; 0x42 - 0x02 for underworld\n #_00DC63: db $5D, $49, $00, $52 ; 0x43 - 0x03 for underworld\n #_00DC67: db $46, $49, $13, $52 ; 0x44 - 0x04 for underworld\n #_00DC6B: db $4B, $4D, $4A, $5A ; 0x45 - 0x05 for underworld\n #_00DC6F: db $47, $49, $1C, $52 ; 0x46 - 0x06 for underworld\n #_00DC73: db $4B, $4D, $39, $36 ; 0x47 - 0x07 for underworld\n #_00DC77: db $1F, $2C, $2E, $52 ; 0x48 - 0x08 for underworld\n #_00DC7B: db $1F, $2C, $2E, $1D ; 0x49 - 0x09 for underworld\n #_00DC7F: db $2F, $2C, $2E, $52 ; 0x4A - 0x0A for underworld\n #_00DC83: db $2F, $2C, $2E, $31 ; 0x4B - 0x0B for underworld\n #_00DC87: db $1F, $1E, $30, $52 ; 0x4C - 0x0C for underworld\n #_00DC8B: db $51, $49, $13, $00 ; 0x4D - 0x0D for underworld\n #_00DC8F: db $4F, $49, $13, $50 ; 0x4E - 0x0E for underworld\n #_00DC93: db $4F, $4D, $4A, $50 ; 0x4F - 0x0F for underworld\n #_00DC97: db $4B, $49, $4C, $2B ; 0x50 - 0x10 for underworld\n #_00DC9B: db $1F, $20, $22, $53 ; 0x51 - 0x11 for underworld\n #_00DC9F: db $55, $3D, $42, $43 ; 0x52 - 0x12 for underworld\n #_00DCA3: db $1F, $1E, $23, $52 ; 0x53 - 0x13 for underworld\n #_00DCA7: db $1F, $1E, $39, $3A ; 0x54 - 0x14 for underworld\n #_00DCAB: db $1F, $1E, $3A, $3E ; 0x55 - 0x15 for underworld\n #_00DCAF: db $1F, $1E, $3C, $3D ; 0x56 - 0x16 for underworld\n #_00DCB3: db $40, $1E, $27, $3F ; 0x57 - 0x17 for underworld\n #_00DCB7: db $55, $1A, $42, $43 ; 0x58 - 0x18 for underworld\n #_00DCBB: db $1F, $1E, $2A, $52 ; 0x59 - 0x19 for underworld\n #_00DCBF: db $1F, $1E, $38, $52 ; 0x5A - 0x1A for underworld\n #_00DCC3: db $1F, $20, $28, $52 ; 0x5B - 0x1B for underworld\n #_00DCC7: db $1F, $20, $26, $52 ; 0x5C - 0x1C for underworld\n #_00DCCB: db $1F, $2C, $25, $52 ; 0x5D - 0x1D for underworld\n #_00DCCF: db $1F, $20, $27, $52 ; 0x5E - 0x1E for underworld\n #_00DCD3: db $1F, $1E, $29, $52 ; 0x5F - 0x1F for underworld\n #_00DCD7: db $1F, $2C, $3B, $52 ; 0x60 - 0x20 for underworld\n #_00DCDB: db $46, $49, $24, $52 ; 0x61 - 0x21 for underworld\n #_00DCDF: db $21, $41, $45, $33 ; 0x62 - 0x22 for underworld\n #_00DCE3: db $1F, $2C, $28, $31 ; 0x63 - 0x23 for underworld\n #_00DCE7: db $1F, $0D, $29, $52 ; 0x64 - 0x24 for underworld\n #_00DCEB: db $1F, $1E, $27, $52 ; 0x65 - 0x25 for underworld\n #_00DCEF: db $1F, $20, $27, $53 ; 0x66 - 0x26 for underworld\n #_00DCF3: db $48, $49, $13, $52 ; 0x67 - 0x27 for underworld\n #_00DCF7: db $0E, $1E, $4A, $50 ; 0x68 - 0x28 for underworld\n #_00DCFB: db $1F, $20, $26, $53 ; 0x69 - 0x29 for underworld\n #_00DCFF: db $15, $00, $00, $00 ; 0x6A - 0x2A for underworld\n #_00DD03: db $1F, $00, $2A, $52 ; 0x6B - 0x2B for underworld\n #_00DD07: db $00, $00, $00, $00 ; 0x6C - 0x2C for underworld\n #_00DD0B: db $00, $00, $00, $00 ; 0x6D - 0x2D for underworld\n #_00DD0F: db $00, $00, $00, $00 ; 0x6E - 0x2E for underworld\n #_00DD13: db $00, $00, $00, $00 ; 0x6F - 0x2F for underworld\n #_00DD17: db $00, $00, $00, $00 ; 0x70 - 0x30 for underworld\n #_00DD1B: db $00, $00, $00, $00 ; 0x71 - 0x31 for underworld\n #_00DD1F: db $00, $00, $00, $00 ; 0x72 - 0x32 for underworld\n #_00DD23: db $00, $00, $00, $00 ; 0x73 - 0x33 for underworld\n #_00DD27: db $00, $00, $00, $00 ; 0x74 - 0x34 for underworld\n #_00DD2B: db $00, $00, $00, $00 ; 0x75 - 0x35 for underworld\n #_00DD2F: db $00, $00, $00, $00 ; 0x76 - 0x36 for underworld\n #_00DD33: db $00, $00, $00, $00 ; 0x77 - 0x37 for underworld\n #_00DD37: db $00, $00, $00, $00 ; 0x78 - 0x38 for underworld\n #_00DD3B: db $00, $00, $00, $00 ; 0x79 - 0x39 for underworld\n #_00DD3F: db $00, $00, $00, $00 ; 0x7A - 0x3A for underworld\n #_00DD43: db $00, $00, $00, $00 ; 0x7B - 0x3B for underworld\n #_00DD47: db $00, $00, $00, $00 ; 0x7C - 0x3C for underworld\n #_00DD4B: db $32, $00, $00, $08 ; 0x7D - 0x3D for underworld\n #_00DD4F: db $5D, $49, $00, $52 ; 0x7E - 0x3E for underworld\n #_00DD53: db $55, $49, $42, $43 ; 0x7F - 0x3F for underworld\n #_00DD57: db $61, $62, $63, $50 ; 0x80 - 0x40 for underworld\n #_00DD5B: db $61, $62, $63, $50 ; 0x81 - 0x41 for underworld\n #_00DD5F: db $61, $62, $63, $50 ; 0x82 - 0x42 for underworld\n #_00DD63: db $61, $62, $63, $50 ; 0x83 - 0x43 for underworld\n #_00DD67: db $61, $62, $63, $50 ; 0x84 - 0x44 for underworld\n #_00DD6B: db $61, $62, $63, $50 ; 0x85 - 0x45 for underworld\n #_00DD6F: db $61, $56, $57, $50 ; 0x86 - 0x46 for underworld\n #_00DD73: db $61, $62, $63, $50 ; 0x87 - 0x47 for underworld\n #_00DD77: db $61, $62, $63, $50 ; 0x88 - 0x48 for underworld\n #_00DD7B: db $61, $56, $57, $50 ; 0x89 - 0x49 for underworld\n #_00DD7F: db $61, $56, $63, $50 ; 0x8A - 0x4A for underworld\n #_00DD83: db $61, $56, $57, $50 ; 0x8B - 0x4B for underworld\n #_00DD87: db $61, $56, $33, $50 ; 0x8C - 0x4C for underworld\n #_00DD8B: db $61, $56, $57, $50 ; 0x8D - 0x4D for underworld\n #_00DD8F: db $61, $62, $63, $50 ; 0x8E - 0x4E for underworld\n #_00DD93: db $61, $62, $63, $50 ; 0x8F - 0x4F for underworld\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "SheetsTable_AA2", + "code": "SheetsTable_AA2:\n #_00DD97: db $06, $00, $1F, $18 ; 0x00\n #_00DD9B: db $08, $00, $22, $1B ; 0x01\n #_00DD9F: db $06, $00, $1F, $18 ; 0x02\n #_00DDA3: db $07, $00, $23, $1C ; 0x03\n #_00DDA7: db $07, $00, $21, $18 ; 0x04\n #_00DDAB: db $09, $00, $20, $19 ; 0x05\n #_00DDAF: db $0B, $00, $21, $1A ; 0x06\n #_00DDB3: db $0C, $00, $24, $19 ; 0x07\n #_00DDB7: db $08, $00, $22, $1B ; 0x08\n #_00DDBB: db $0C, $00, $25, $1B ; 0x09\n #_00DDBF: db $0C, $00, $26, $1B ; 0x0A\n #_00DDC3: db $0A, $00, $27, $1D ; 0x0B\n #_00DDC7: db $0A, $00, $28, $1E ; 0x0C\n #_00DDCB: db $0B, $00, $29, $16 ; 0x0D\n #_00DDCF: db $0D, $00, $2A, $18 ; 0x0E\n #_00DDD3: db $07, $00, $23, $1C ; 0x0F\n #_00DDD7: db $07, $00, $04, $05 ; 0x10\n #_00DDDB: db $07, $00, $04, $05 ; 0x11\n #_00DDDF: db $09, $00, $20, $1B ; 0x12\n #_00DDE3: db $09, $00, $2A, $17 ; 0x13\n #_00DDE7: db $0B, $00, $21, $1C ; 0x14\n #_00DDEB: db $09, $00, $20, $19 ; 0x15\n #_00DDEF: db $0B, $00, $21, $1A ; 0x16\n #_00DDF3: db $09, $00, $24, $1B ; 0x17\n #_00DDF7: db $08, $00, $22, $1B ; 0x18\n #_00DDFB: db $09, $00, $25, $1B ; 0x19\n #_00DDFF: db $09, $00, $26, $1B ; 0x1A\n #_00DE03: db $0A, $00, $27, $1D ; 0x1B\n #_00DE07: db $09, $00, $28, $1E ; 0x1C\n #_00DE0B: db $0C, $00, $29, $16 ; 0x1D\n #_00DE0F: db $0D, $00, $2A, $17 ; 0x1E\n #_00DE13: db $72, $00, $2B, $5D ; 0x1F\n\n #_00DE17: db $00, $00, $00, $00 ; 0x20\n #_00DE1B: db $00, $57, $4C, $00 ; 0x21\n #_00DE1F: db $00, $56, $4F, $00 ; 0x22\n #_00DE23: db $00, $53, $4D, $00 ; 0x23\n #_00DE27: db $00, $52, $49, $00 ; 0x24\n #_00DE2B: db $00, $55, $4A, $00 ; 0x25\n #_00DE2F: db $00, $53, $54, $00 ; 0x26\n #_00DE33: db $00, $51, $4E, $00 ; 0x27\n #_00DE37: db $00, $00, $00, $00 ; 0x28\n #_00DE3B: db $00, $50, $4B, $00 ; 0x29\n #_00DE3F: db $00, $53, $4D, $00 ; 0x2A\n #_00DE43: db $00, $55, $54, $00 ; 0x2B\n #_00DE47: db $00, $00, $00, $00 ; 0x2C\n #_00DE4B: db $00, $00, $00, $00 ; 0x2D\n #_00DE4F: db $00, $00, $00, $00 ; 0x2E\n #_00DE53: db $00, $47, $48, $00 ; 0x2F\n #_00DE57: db $00, $00, $00, $00 ; 0x30\n #_00DE5B: db $00, $57, $4C, $00 ; 0x31\n #_00DE5F: db $00, $56, $4F, $00 ; 0x32\n #_00DE63: db $00, $53, $4D, $00 ; 0x33\n #_00DE67: db $00, $52, $49, $00 ; 0x34\n #_00DE6B: db $00, $55, $4A, $00 ; 0x35\n #_00DE6F: db $00, $53, $54, $00 ; 0x36\n #_00DE73: db $00, $51, $4E, $00 ; 0x37\n #_00DE77: db $00, $00, $00, $00 ; 0x38\n #_00DE7B: db $00, $50, $4B, $00 ; 0x39\n #_00DE7F: db $00, $53, $00, $00 ; 0x3A\n #_00DE83: db $00, $35, $36, $00 ; 0x3B\n #_00DE87: db $00, $60, $34, $00 ; 0x3C\n #_00DE8B: db $00, $2B, $2C, $00 ; 0x3D\n #_00DE8F: db $00, $2D, $2E, $00 ; 0x3E\n #_00DE93: db $00, $2F, $30, $00 ; 0x3F\n #_00DE97: db $00, $37, $38, $00 ; 0x40\n #_00DE9B: db $00, $33, $34, $00 ; 0x41\n #_00DE9F: db $00, $31, $32, $00 ; 0x42\n #_00DEA3: db $00, $00, $00, $00 ; 0x43\n #_00DEA7: db $00, $00, $00, $00 ; 0x44\n #_00DEAB: db $00, $00, $00, $00 ; 0x45\n #_00DEAF: db $00, $00, $00, $00 ; 0x46\n #_00DEB3: db $00, $00, $00, $00 ; 0x47\n #_00DEB7: db $00, $00, $00, $00 ; 0x48\n #_00DEBB: db $00, $00, $00, $00 ; 0x49\n #_00DEBF: db $00, $00, $00, $00 ; 0x4A\n #_00DEC3: db $00, $00, $00, $00 ; 0x4B\n #_00DEC7: db $00, $00, $00, $00 ; 0x4C\n #_00DECB: db $00, $00, $00, $00 ; 0x4D\n #_00DECF: db $00, $00, $00, $00 ; 0x4E\n #_00DED3: db $00, $00, $00, $00 ; 0x4F\n #_00DED7: db $72, $71, $72, $71 ; 0x50\n #_00DEDB: db $17, $40, $41, $39 ; 0x51\n\n; =========================================================\n\npool Graphics_IncrementalVRAMUpload\n\n.vram_address_high\n #_00DEDF: db $50 ; VRAM $A000\n #_00DEE0: db $51 ; VRAM $A200\n #_00DEE1: db $52 ; VRAM $A400\n #_00DEE2: db $53 ; VRAM $A600\n #_00DEE3: db $54 ; VRAM $A800\n #_00DEE4: db $55 ; VRAM $AA00\n #_00DEE5: db $56 ; VRAM $AC00\n #_00DEE6: db $57 ; VRAM $AE00\n #_00DEE7: db $58 ; VRAM $B000\n #_00DEE8: db $59 ; VRAM $B200\n #_00DEE9: db $5A ; VRAM $B400\n #_00DEEA: db $5B ; VRAM $B600\n #_00DEEB: db $5C ; VRAM $B800\n #_00DEEC: db $5D ; VRAM $BA00\n #_00DEED: db $5E ; VRAM $BC00\n #_00DEEE: db $5F ; VRAM $BE00\n\n; ---------------------------------------------------------\n\n.buffer_address_high\n #_00DEEF: db $7F0000>>8 ; $50\n #_00DEF0: db $7F0200>>8 ; $51\n #_00DEF1: db $7F0400>>8 ; $52\n #_00DEF2: db $7F0600>>8 ; $53\n #_00DEF3: db $7F0800>>8 ; $54\n #_00DEF4: db $7F0A00>>8 ; $55\n #_00DEF5: db $7F0C00>>8 ; $56\n #_00DEF6: db $7F0E00>>8 ; $57\n #_00DEF7: db $7F1000>>8 ; $58\n #_00DEF8: db $7F1200>>8 ; $59\n #_00DEF9: db $7F1400>>8 ; $5A\n #_00DEFA: db $7F1600>>8 ; $5B\n #_00DEFB: db $7F1800>>8 ; $5C\n #_00DEFC: db $7F1A00>>8 ; $5D\n #_00DEFD: db $7F1C00>>8 ; $5E\n #_00DEFE: db $7F1E00>>8 ; $5F\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "Graphics_IncrementalVRAMUpload", + "code": "Graphics_IncrementalVRAMUpload:\n #_00DEFF: LDX.w $0412\n #_00DF02: CPX.b #$10\n #_00DF04: BEQ .exit\n\n #_00DF06: LDA.l .vram_address_high,X\n #_00DF0A: STA.b $19\n\n #_00DF0C: STZ.w $0118\n\n #_00DF0F: LDA.l .buffer_address_high,X\n #_00DF13: STA.w $0119\n\n #_00DF16: INC.w $0412\n\n.exit\n #_00DF19: RTL", + "file": "bank_00.asm" + }, + { + "name": "PrepTransAuxGfx", + "code": "PrepTransAuxGfx:\n #_00DF1A: LDA.b #$7E\n #_00DF1C: STA.b $02\n #_00DF1E: STA.b $05\n\n #_00DF20: REP #$31\n\n #_00DF22: LDX.w #$0000\n #_00DF25: LDY.w #$0040\n #_00DF28: LDA.w #$7E6000\n #_00DF2B: JSR Do3To4High16Bit\n\n #_00DF2E: LDY.w #$00C0\n\n #_00DF31: LDA.w $0AA2\n #_00DF34: AND.w #$00FF\n #_00DF37: CMP.w #$0020\n #_00DF3A: BCC .left_side_palettes\n\n #_00DF3C: LDY.w #$0080\n\n #_00DF3F: LDA.b $03\n #_00DF41: JSR Do3To4High16Bit\n\n #_00DF44: LDY.w #$0040\n\n.left_side_palettes\n #_00DF47: LDA.b $03\n #_00DF49: JSR Do3To4Low16Bit\n\n #_00DF4C: SEP #$30\n\n #_00DF4E: RTL", + "file": "bank_00.asm" + }, + { + "name": "Do3To4High16Bit", + "code": "Do3To4High16Bit:\n #_00DF4F: STY.b $0C\n\n.next_tile\n #_00DF51: STA.b $00\n\n #_00DF53: CLC\n #_00DF54: ADC.w #$0010\n #_00DF57: STA.b $03\n\n #_00DF59: LDY.w #$0003\n\n.next_convert\n #_00DF5C: LDA.b [$00]\n #_00DF5E: STA.l $7F0000,X\n\n #_00DF62: XBA\n #_00DF63: ORA.b [$00]\n #_00DF65: AND.w #$00FF\n #_00DF68: STA.b $08\n\n #_00DF6A: INC.b $00\n #_00DF6C: INC.b $00\n\n #_00DF6E: LDA.b [$03]\n #_00DF70: AND.w #$00FF\n #_00DF73: STA.b $0A\n\n #_00DF75: ORA.b $08\n #_00DF77: XBA\n #_00DF78: ORA.b $0A\n #_00DF7A: STA.l $7F0010,X\n\n #_00DF7E: INC.b $03\n\n #_00DF80: INX\n #_00DF81: INX\n\n #_00DF82: LDA.b [$00]\n #_00DF84: STA.l $7F0000,X\n\n #_00DF88: XBA\n #_00DF89: ORA.b [$00]\n #_00DF8B: AND.w #$00FF\n #_00DF8E: STA.b $08\n\n #_00DF90: INC.b $00\n #_00DF92: INC.b $00\n\n #_00DF94: LDA.b [$03]\n #_00DF96: AND.w #$00FF\n #_00DF99: STA.b $0A\n\n #_00DF9B: ORA.b $08\n #_00DF9D: XBA\n #_00DF9E: ORA.b $0A\n #_00DFA0: STA.l $7F0010,X\n\n #_00DFA4: INC.b $03\n\n #_00DFA6: INX\n #_00DFA7: INX\n\n #_00DFA8: DEY\n #_00DFA9: BPL .next_convert\n\n #_00DFAB: TXA\n #_00DFAC: CLC\n #_00DFAD: ADC.w #$0010\n #_00DFB0: TAX\n\n #_00DFB1: LDA.b $03\n\n #_00DFB3: DEC.b $0C\n #_00DFB5: BNE .next_tile\n\n #_00DFB7: RTS", + "file": "bank_00.asm" + }, + { + "name": "Do3To4Low16Bit", + "code": "Do3To4Low16Bit:\n #_00DFB8: STY.b $0C\n\n.next_tile\n #_00DFBA: STA.b $00\n\n #_00DFBC: CLC\n #_00DFBD: ADC.w #$0010\n #_00DFC0: STA.b $03\n\n #_00DFC2: LDY.w #$0001\n\n.next_convert\n #_00DFC5: LDA.b [$00]\n #_00DFC7: STA.l $7F0000,X\n\n #_00DFCB: INC.b $00\n #_00DFCD: INC.b $00\n\n #_00DFCF: LDA.b [$03]\n #_00DFD1: AND.w #$00FF\n #_00DFD4: STA.l $7F0010,X\n\n #_00DFD8: INC.b $03\n\n #_00DFDA: INX\n #_00DFDB: INX\n\n #_00DFDC: LDA.b [$00]\n #_00DFDE: STA.l $7F0000,X\n\n #_00DFE2: INC.b $00\n #_00DFE4: INC.b $00\n\n #_00DFE6: LDA.b [$03]\n #_00DFE8: AND.w #$00FF\n #_00DFEB: STA.l $7F0010,X\n\n #_00DFEF: INC.b $03\n\n #_00DFF1: INX\n #_00DFF2: INX\n\n #_00DFF3: LDA.b [$00]\n #_00DFF5: STA.l $7F0000,X\n\n #_00DFF9: INC.b $00\n #_00DFFB: INC.b $00\n\n #_00DFFD: LDA.b [$03]\n #_00DFFF: AND.w #$00FF\n #_00E002: STA.l $7F0010,X\n\n #_00E006: INC.b $03\n\n #_00E008: INX\n #_00E009: INX\n\n #_00E00A: LDA.b [$00]\n #_00E00C: STA.l $7F0000,X\n\n #_00E010: INC.b $00\n #_00E012: INC.b $00\n\n #_00E014: LDA.b [$03]\n #_00E016: AND.w #$00FF\n #_00E019: STA.l $7F0010,X\n\n #_00E01D: INC.b $03\n\n #_00E01F: INX\n #_00E020: INX\n\n #_00E021: DEY\n #_00E022: BPL .next_convert\n\n #_00E024: TXA\n #_00E025: CLC\n #_00E026: ADC.w #$0010\n #_00E029: TAX\n\n #_00E02A: LDA.b $03\n\n #_00E02C: DEC.b $0C\n #_00E02E: BNE .next_tile\n\n #_00E030: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadNewSpriteGFXSet", + "code": "LoadNewSpriteGFXSet:\n #_00E031: LDA.b #$7E\n #_00E033: STA.b $02\n #_00E035: STA.b $05\n\n #_00E037: REP #$31\n\n #_00E039: LDX.w #$0000\n\n #_00E03C: LDA.w #$7E7800\n #_00E03F: LDY.w #$00C0\n #_00E042: JSR Do3To4Low16Bit\n\n #_00E045: LDY.w #$0040\n\n #_00E048: LDA.l $7EC2FF\n #_00E04C: AND.w #$00FF\n #_00E04F: CMP.w #$0052\n #_00E052: BEQ .right_side\n\n #_00E054: CMP.w #$0053\n #_00E057: BEQ .right_side\n\n #_00E059: CMP.w #$005A\n #_00E05C: BEQ .right_side\n\n #_00E05E: CMP.w #$005B\n #_00E061: BNE .left_side\n\n.right_side\n #_00E063: LDA.b $03\n #_00E065: JSR Do3To4High16Bit\n\n #_00E068: SEP #$30\n\n #_00E06A: RTL", + "file": "bank_00.asm" + }, + { + "name": "SheetsTable_AA1", + "code": "SheetsTable_AA1:\n; Underworld\n #_00E073: db $00, $01, $10, $06, $0E, $1F, $18, $0F ; 0x00\n #_00E07B: db $00, $01, $10, $08, $0E, $22, $1B, $0F ; 0x01\n #_00E083: db $00, $01, $10, $06, $0E, $1F, $18, $0F ; 0x02\n #_00E08B: db $00, $01, $13, $07, $0E, $23, $1C, $0F ; 0x03\n #_00E093: db $00, $01, $10, $07, $0E, $21, $18, $0F ; 0x04\n #_00E09B: db $00, $01, $10, $09, $0E, $20, $19, $0F ; 0x05\n #_00E0A3: db $02, $03, $12, $0B, $0E, $21, $1A, $0F ; 0x06\n #_00E0AB: db $00, $01, $11, $0C, $0E, $24, $1B, $0F ; 0x07\n #_00E0B3: db $00, $01, $11, $08, $0E, $22, $1B, $0F ; 0x08\n #_00E0BB: db $00, $01, $11, $0C, $0E, $25, $1A, $0F ; 0x09\n #_00E0C3: db $00, $01, $11, $0C, $0E, $26, $1B, $0F ; 0x0A\n #_00E0CB: db $00, $01, $14, $0A, $0E, $27, $1D, $0F ; 0x0B\n #_00E0D3: db $00, $01, $11, $0A, $0E, $28, $1E, $0F ; 0x0C\n #_00E0DB: db $02, $03, $12, $0B, $0E, $29, $16, $0F ; 0x0D\n #_00E0E3: db $00, $01, $15, $0D, $0E, $2A, $18, $0F ; 0x0E\n #_00E0EB: db $00, $01, $10, $07, $0E, $23, $1C, $0F ; 0x0F\n #_00E0F3: db $00, $01, $13, $07, $0E, $04, $05, $0F ; 0x10\n #_00E0FB: db $00, $01, $13, $07, $0E, $04, $05, $0F ; 0x11\n #_00E103: db $00, $01, $10, $09, $0E, $20, $1B, $0F ; 0x12\n #_00E10B: db $00, $01, $10, $09, $0E, $2A, $17, $0F ; 0x13\n #_00E113: db $02, $03, $12, $0B, $0E, $21, $1C, $0F ; 0x14\n\n #_00E11B: db $00, $08, $11, $1B, $22, $2E, $5D, $5B ; 0x15\n #_00E123: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x16\n #_00E12B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x17\n\n; Overworld\n #_00E133: db $3A, $3B, $3C, $3D, $53, $4D, $3E, $5B ; 0x18\n #_00E13B: db $42, $43, $44, $45, $20, $2B, $3F, $5D ; 0x19\n #_00E143: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1A\n #_00E14B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1B\n #_00E153: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1C\n #_00E15B: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1D\n #_00E163: db $00, $08, $10, $18, $20, $2B, $5D, $5B ; 0x1E\n #_00E16B: db $71, $72, $71, $72, $20, $2B, $5D, $5B ; 0x1F\n #_00E173: db $3A, $3B, $3C, $3D, $53, $4D, $3E, $5B ; 0x20\n #_00E17B: db $42, $43, $44, $45, $20, $2B, $3F, $59 ; 0x21\n #_00E183: db $00, $72, $71, $72, $20, $2B, $5D, $0F ; 0x22\n #_00E18B: db $16, $39, $1D, $17, $40, $41, $39, $1E ; 0x23\n #_00E193: db $00, $46, $39, $72, $40, $41, $39, $0F ; 0x24\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "InitializeTilesets", + "code": "InitializeTilesets:\n #_00E19B: PHB\n #_00E19C: PHK\n #_00E19D: PLB\n\n #_00E19E: LDA.b #$80\n #_00E1A0: STA.w VMAIN\n\n #_00E1A3: STZ.w VMADDL\n\n #_00E1A6: LDA.b #$44 ; VRAM $8800\n #_00E1A8: STA.w VMADDH\n\n #_00E1AB: JSR LoadCommonSprites\n\n #_00E1AE: REP #$30\n\n #_00E1B0: LDA.w $0AA3\n #_00E1B3: AND.w #$00FF\n #_00E1B6: ASL A\n #_00E1B7: ASL A\n #_00E1B8: TAY\n\n #_00E1B9: SEP #$20\n\n #_00E1BB: LDA.w SheetsTable_AA3+0,Y\n #_00E1BE: BEQ .dont_change_a\n\n #_00E1C0: STA.l $7EC2FC\n\n.dont_change_a\n #_00E1C4: LDA.l $7EC2FC\n #_00E1C8: STA.b $09\n\n #_00E1CA: LDA.w SheetsTable_AA3+1,Y\n #_00E1CD: BEQ .dont_change_b\n\n #_00E1CF: STA.l $7EC2FD\n\n.dont_change_b\n #_00E1D3: LDA.l $7EC2FD\n #_00E1D7: STA.b $08\n\n #_00E1D9: LDA.w SheetsTable_AA3+2,Y\n #_00E1DC: BEQ .dont_change_c\n\n #_00E1DE: STA.l $7EC2FE\n\n.dont_change_c\n #_00E1E2: LDA.l $7EC2FE\n #_00E1E6: STA.b $07\n\n #_00E1E8: LDA.w SheetsTable_AA3+3,Y\n #_00E1EB: BEQ .dont_change_d\n\n #_00E1ED: STA.l $7EC2FF\n\n.dont_change_d\n #_00E1F1: LDA.l $7EC2FF\n #_00E1F5: STA.b $06\n\n; ---------------------------------------------------------\n\n #_00E1F7: SEP #$10\n\n #_00E1F9: LDY.b $09\n\n #_00E1FB: LDA.b #$7E\n #_00E1FD: STA.b $02\n\n #_00E1FF: LDX.b #$78\n #_00E201: JSR LoadSpriteGraphics\n\n #_00E204: LDY.b $08\n #_00E206: LDX.b #$7E\n #_00E208: JSR LoadSpriteGraphics\n\n #_00E20B: LDY.b $07\n #_00E20D: LDX.b #$84\n #_00E20F: JSR LoadSpriteGraphics\n\n #_00E212: LDY.b $06\n #_00E214: LDX.b #$8A\n #_00E216: JSR LoadSpriteGraphics\n\n #_00E219: REP #$30\n\n #_00E21B: LDA.w #$2000 ; VRAM $4000\n #_00E21E: STA.w VMADDR\n\n #_00E221: LDA.w $0AA1\n #_00E224: AND.w #$00FF\n #_00E227: ASL A\n #_00E228: ASL A\n #_00E229: ASL A\n #_00E22A: TAY\n\n #_00E22B: LDA.w $0AA2\n #_00E22E: AND.w #$00FF\n #_00E231: ASL A\n #_00E232: ASL A\n #_00E233: TAX\n\n #_00E234: SEP #$20\n\n #_00E236: LDA.w SheetsTable_AA1+0,Y\n #_00E239: STA.b $0D\n\n #_00E23B: LDA.w SheetsTable_AA1+1,Y\n #_00E23E: STA.b $0C\n\n #_00E240: LDA.w SheetsTable_AA1+2,Y\n #_00E243: STA.b $0B\n\n #_00E245: LDA.w SheetsTable_AA2+0,X\n #_00E248: BNE .not_default_a\n\n #_00E24A: LDA.w SheetsTable_AA1+3,Y\n\n.not_default_a\n #_00E24D: STA.l $7EC2F8\n #_00E251: STA.b $0A\n\n #_00E253: LDA.w SheetsTable_AA2+1,X\n #_00E256: BNE .not_default_b\n\n #_00E258: LDA.w SheetsTable_AA1+4,Y\n\n.not_default_b\n #_00E25B: STA.l $7EC2F9\n #_00E25F: STA.b $09\n\n #_00E261: LDA.w SheetsTable_AA2+2,X\n #_00E264: BNE .not_default_c\n\n #_00E266: LDA.w SheetsTable_AA1+5,Y\n\n.not_default_c\n #_00E269: STA.l $7EC2FA\n #_00E26D: STA.b $08\n\n #_00E26F: LDA.w SheetsTable_AA2+3,X\n #_00E272: BNE .not_default_d\n\n #_00E274: LDA.w SheetsTable_AA1+6,Y\n\n.not_default_d\n #_00E277: STA.l $7EC2FB\n #_00E27B: STA.b $07\n\n; ---------------------------------------------------------\n\n #_00E27D: LDA.w SheetsTable_AA1+7,Y\n #_00E280: STA.b $06\n\n #_00E282: SEP #$10\n\n #_00E284: LDA.b #$07\n #_00E286: STA.b $0F\n\n #_00E288: LDY.b $0D\n #_00E28A: JSR LoadBackgroundGraphics\n\n #_00E28D: DEC.b $0F\n\n #_00E28F: LDY.b $0C\n #_00E291: JSR LoadBackgroundGraphics\n\n #_00E294: DEC.b $0F\n\n #_00E296: LDY.b $0B\n #_00E298: JSR LoadBackgroundGraphics\n\n #_00E29B: DEC.b $0F\n\n #_00E29D: LDY.b $0A\n #_00E29F: LDA.b #$7E\n #_00E2A1: LDX.b #$60\n #_00E2A3: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2A6: DEC.b $0F\n\n #_00E2A8: LDY.b $09\n #_00E2AA: LDA.b #$7E\n #_00E2AC: LDX.b #$66\n #_00E2AE: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2B1: DEC.b $0F\n\n #_00E2B3: LDY.b $08\n #_00E2B5: LDA.b #$7E\n #_00E2B7: LDX.b #$6C\n #_00E2B9: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2BC: DEC.b $0F\n\n #_00E2BE: LDY.b $07\n #_00E2C0: LDA.b #$7E\n #_00E2C2: LDX.b #$72\n #_00E2C4: JSR LoadBackgroundGraphics_arbitrary\n\n #_00E2C7: DEC.b $0F\n\n #_00E2C9: LDY.b $06\n #_00E2CB: JSR LoadBackgroundGraphics\n\n #_00E2CE: PLB\n\n #_00E2CF: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadDefaultGraphics", + "code": "LoadDefaultGraphics:\n #_00E2D0: PHB\n #_00E2D1: PHK\n #_00E2D2: PLB\n\n #_00E2D3: LDA.b #$80\n #_00E2D5: STA.w VMAIN\n\n #_00E2D8: LDA.w GFXSheetPointers_sprite_bank\n #_00E2DB: STA.b $02\n\n #_00E2DD: LDA.w GFXSheetPointers_sprite_high\n #_00E2E0: STA.b $01\n\n #_00E2E2: LDA.w GFXSheetPointers_sprite_low\n #_00E2E5: STA.b $00\n\n #_00E2E7: REP #$20\n\n #_00E2E9: LDA.w #$4000 ; VRAM $8000\n #_00E2EC: STA.w VMADDR\n\n #_00E2EF: LDY.b #$40\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E2F1: LDX.b #$0E\n\n.next_planes_a\n #_00E2F3: LDA.b [$00]\n #_00E2F5: STA.w VMDATA\n\n #_00E2F8: XBA\n #_00E2F9: ORA.b [$00]\n #_00E2FB: AND.w #$00FF\n #_00E2FE: STA.b $BF,X\n\n #_00E300: INC.b $00\n #_00E302: INC.b $00\n\n #_00E304: DEX\n #_00E305: DEX\n #_00E306: BPL .next_planes_a\n\n #_00E308: LDX.b #$0E\n\n.next_planes_b\n #_00E30A: LDA.b [$00]\n #_00E30C: AND.w #$00FF\n #_00E30F: STA.b $BD\n\n #_00E311: ORA.b $BF,X\n #_00E313: XBA\n #_00E314: ORA.b $BD\n #_00E316: STA.w VMDATA\n\n #_00E319: INC.b $00\n\n #_00E31B: DEX\n #_00E31C: DEX\n #_00E31D: BPL .next_planes_b\n\n #_00E31F: DEY\n #_00E320: BNE .next_tile\n\n; ---------------------------------------------------------\n\n #_00E322: LDA.w #$7000 ; VRAM $E000\n #_00E325: STA.w VMADDR\n\n #_00E328: SEP #$20\n\n #_00E32A: LDY.b #$6A\n #_00E32C: JSR DecompressAndCopyManually\n\n #_00E32F: LDY.b #$6B\n #_00E331: JSR DecompressAndCopyManually\n\n #_00E334: LDY.b #$69\n #_00E336: JSR DecompressAndCopyManually\n\n #_00E339: PLB\n\n #_00E33A: RTL", + "file": "bank_00.asm" + }, + { + "name": "DecompressAndCopyManually", + "code": "DecompressAndCopyManually:\n #_00E33B: JSR Decompress_sprite_low\n\n #_00E33E: REP #$30\n\n #_00E340: LDX.w #$00FF\n\n.copy_next\n #_00E343: LDA.b [$00]\n #_00E345: STA.w VMDATA\n\n #_00E348: INC.b $00\n #_00E34A: INC.b $00\n\n #_00E34C: LDA.b [$00]\n #_00E34E: STA.w VMDATA\n\n #_00E351: INC.b $00\n #_00E353: INC.b $00\n\n #_00E355: LDA.b [$00]\n #_00E357: STA.w VMDATA\n\n #_00E35A: INC.b $00\n #_00E35C: INC.b $00\n\n #_00E35E: LDA.b [$00]\n #_00E360: STA.w VMDATA\n\n #_00E363: INC.b $00\n #_00E365: INC.b $00\n\n #_00E367: DEX\n #_00E368: BPL .copy_next\n\n #_00E36A: SEP #$30\n\n #_00E36C: RTS", + "file": "bank_00.asm" + }, + { + "name": "Attract_LoadBG3GFX", + "code": "Attract_LoadBG3GFX:\n #_00E36D: PHB\n #_00E36E: PHK\n #_00E36F: PLB\n\n #_00E370: LDA.b #$80\n #_00E372: STA.w VMAIN\n #_00E375: STZ.w VMADDL\n\n #_00E378: LDA.b #$78\n #_00E37A: STA.w VMADDH\n\n #_00E37D: LDY.b #$67\n #_00E37F: JSR DecompressAndCopyManually\n\n #_00E382: PLB\n\n #_00E383: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadCommonSprites_long", + "code": "LoadCommonSprites_long:\n #_00E384: PHB\n #_00E385: PHK\n #_00E386: PLB\n\n #_00E387: LDA.b #$80\n #_00E389: STA.w VMAIN\n\n #_00E38C: STZ.w VMADDL\n\n #_00E38F: LDA.b #$44 ; VRAM $8800\n #_00E391: STA.w VMADDH\n\n #_00E394: JSR LoadCommonSprites\n\n #_00E397: PLB\n\n #_00E398: RTL", + "file": "bank_00.asm" + }, + { + "name": "TransferMode7Characters", + "code": "TransferMode7Characters:\n #_00E399: LDA.b #WorldMap_Mode7TileGFX>>16\n #_00E39B: STA.b $02\n\n #_00E39D: LDA.b #$80\n #_00E39F: STA.w VMAIN\n\n #_00E3A2: STZ.w VMADDL ; VRAM $0000\n #_00E3A5: STZ.w VMADDH\n\n #_00E3A8: REP #$10\n\n #_00E3AA: LDY.w #WorldMap_Mode7TileGFX>>0\n #_00E3AD: STY.b $00\n\n; ---------------------------------------------------------\n\n #_00E3AF: LDY.w #$0000\n\n.next\n #_00E3B2: LDA.b [$00],Y\n #_00E3B4: STA.w VMDATAH\n\n #_00E3B7: INY\n #_00E3B8: LDA.b [$00],Y\n #_00E3BA: STA.w VMDATAH\n\n #_00E3BD: INY\n #_00E3BE: LDA.b [$00],Y\n #_00E3C0: STA.w VMDATAH\n\n #_00E3C3: INY\n #_00E3C4: LDA.b [$00],Y\n #_00E3C6: STA.w VMDATAH\n\n #_00E3C9: INY\n #_00E3CA: CPY.w #$4000\n #_00E3CD: BNE .next\n\n #_00E3CF: SEP #$10\n\n; ---------------------------------------------------------\n\n#EXIT_00E3D1:\n #_00E3D1: RTL", + "file": "bank_00.asm" + }, + { + "name": "Graphics_LoadChrHalfSlot", + "code": "Graphics_LoadChrHalfSlot:\n #_00E3FA: LDX.w $0AAA\n #_00E3FD: BEQ EXIT_00E3D1\n\n #_00E3FF: PHB\n #_00E400: PHK\n #_00E401: PLB\n\n #_00E402: LDA.w .palette_id-1,X\n #_00E405: BMI .done_palette\n\n #_00E407: STA.w $0AB1\n\n #_00E40A: CPX.b #$01\n #_00E40C: BNE .not_sheet_1\n\n #_00E40E: LDA.b #$0A\n #_00E410: STA.w $0AB1\n\n #_00E413: LDA.b #$02\n #_00E415: STA.w $0AA9\n\n #_00E418: JSL Palettes_Load_SpriteEnvironment\n\n #_00E41C: INC.b $15\n\n #_00E41E: BRA .done_palette\n\n.not_sheet_1\n #_00E420: LDA.b #$02\n #_00E422: STA.w $0AA9\n\n #_00E425: JSL Palettes_Load_SpriteEnvironment_Underworld\n\n #_00E429: INC.b $15\n\n; ---------------------------------------------------------\n\n.done_palette\n #_00E42B: LDX.w $0AAA\n\n #_00E42E: LDY.b #$44\n\n #_00E430: STZ.b $08\n #_00E432: STZ.b $09\n\n #_00E434: INC.w $0AAA\n\n #_00E437: LDA.w $0AAA\n #_00E43A: LSR A\n #_00E43B: BCC .dont_reset_medallion_flags\n\n #_00E43D: STZ.w $0AAA\n\n #_00E440: CPX.b #$12\n #_00E442: BEQ .dont_reset_medallion_flags\n\n #_00E444: LDA.b #$03\n #_00E446: STA.b $09\n\n #_00E448: LDY.b #$46\n #_00E44A: CPX.b #$02\n #_00E44C: BNE .dont_reset_medallion_flags\n\n #_00E44E: STZ.w $0112\n\n.dont_reset_medallion_flags\n #_00E451: STY.w $0116\n\n #_00E454: LDA.b #$0B\n #_00E456: STA.b $17\n\n #_00E458: LDY.w .sheet_id-1,X\n #_00E45B: CPY.b #$01\n #_00E45D: BNE .dont_reload_from_tileset\n\n #_00E45F: LDY.w $0AA4\n\n.dont_reload_from_tileset\n #_00E462: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E465: STA.b $02\n #_00E467: STA.b $05\n\n #_00E469: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E46C: STA.b $01\n\n #_00E46E: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E471: STA.b $00\n\n #_00E473: REP #$31\n\n #_00E475: LDY.w #$0020\n #_00E478: STY.b $0C\n\n #_00E47A: LDX.w #$0000\n\n #_00E47D: LDA.b $00\n #_00E47F: ADC.b $08\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E481: STA.b $00\n\n #_00E483: CLC\n #_00E484: ADC.w #$0010\n #_00E487: BNE .no_bank_cross_1\n\n #_00E489: LDA.w #$8000\n #_00E48C: INC.b $05\n\n.no_bank_cross_1\n #_00E48E: STA.b $03\n\n #_00E490: LDY.w #$0007\n\n.next_plane\n #_00E493: LDA.b [$00]\n #_00E495: STA.l $7F1000,X\n\n #_00E499: XBA\n #_00E49A: ORA.b [$00]\n #_00E49C: AND.w #$00FF\n #_00E49F: STA.b $08\n\n #_00E4A1: INC.b $00\n #_00E4A3: INC.b $00\n #_00E4A5: BNE .no_bank_cross_2\n\n #_00E4A7: LDA.b $03\n #_00E4A9: INC A\n #_00E4AA: STA.b $00\n\n #_00E4AC: INC.b $02\n\n #_00E4AE: LDA.b $02\n #_00E4B0: STA.b $05\n\n.no_bank_cross_2\n #_00E4B2: LDA.b [$03]\n #_00E4B4: AND.w #$00FF\n #_00E4B7: STA.b $0A\n\n #_00E4B9: ORA.b $08\n #_00E4BB: XBA\n #_00E4BC: ORA.b $0A\n #_00E4BE: STA.l $7F1010,X\n\n #_00E4C2: INC.b $03\n #_00E4C4: BNE .no_bank_cross_3\n\n #_00E4C6: LDA.w #$8000\n #_00E4C9: STA.b $00\n\n #_00E4CB: LDA.w #$8010\n #_00E4CE: STA.b $03\n\n #_00E4D0: INC.b $02\n #_00E4D2: INC.b $05\n\n.no_bank_cross_3\n #_00E4D4: INX\n #_00E4D5: INX\n\n #_00E4D6: DEY\n #_00E4D7: BPL .next_plane\n\n #_00E4D9: TXA\n #_00E4DA: CLC\n #_00E4DB: ADC.w #$0010\n #_00E4DE: TAX\n\n #_00E4DF: LDA.b $03\n\n #_00E4E1: DEC.b $0C\n #_00E4E3: BNE .next_tile\n\n #_00E4E5: SEP #$30\n\n #_00E4E7: PLB\n\n #_00E4E8: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadFileSelectGraphics", + "code": "LoadFileSelectGraphics:\n #_00E4E9: LDA.b #$02\n #_00E4EB: STA.w OBSEL\n\n #_00E4EE: LDA.b #$80\n #_00E4F0: STA.w VMAIN\n #_00E4F3: STZ.w VMADDL\n\n #_00E4F6: LDA.b #$50 ; VRAM $A000\n #_00E4F8: STA.w VMADDH\n\n; ---------------------------------------------------------\n\n #_00E4FB: PHB\n #_00E4FC: PHK\n #_00E4FD: PLB\n\n #_00E4FE: LDY.b #$5E\n #_00E500: JSR Decompress_sprite_low\n\n #_00E503: REP #$20\n\n #_00E505: LDY.b #$3F\n #_00E507: JSR Do3To4High\n\n #_00E50A: LDY.b #$5F\n #_00E50C: JSR Decompress_sprite_low\n\n #_00E50F: REP #$20\n\n #_00E511: LDY.b #$3F\n #_00E513: JSR Do3To4High\n\n #_00E516: PLB\n\n; ---------------------------------------------------------\n\n #_00E517: LDA.b #TheFont>>16\n #_00E519: STA.b $02\n\n #_00E51B: REP #$30\n\n #_00E51D: LDA.w #$7000 ; VRAM $E000\n #_00E520: STA.w VMADDR\n\n #_00E523: LDA.w #TheFont\n #_00E526: STA.b $00\n\n #_00E528: LDX.w #(TheFont_end-TheFont)/2-1\n\n.next_a\n #_00E52B: LDA.b [$00]\n #_00E52D: STA.w VMDATA\n\n #_00E530: INC.b $00\n #_00E532: INC.b $00\n\n #_00E534: DEX\n #_00E535: BPL .next_a\n\n; ---------------------------------------------------------\n\n #_00E537: SEP #$30\n\n #_00E539: PHB\n #_00E53A: PHK\n #_00E53B: PLB\n\n #_00E53C: LDY.b #$6B\n #_00E53E: JSR Decompress_sprite_low\n\n #_00E541: REP #$30\n\n #_00E543: LDX.w #$02FF\n\n.next_b\n #_00E546: LDA.b [$00]\n #_00E548: STA.w VMDATA\n\n #_00E54B: INC.b $00\n #_00E54D: INC.b $00\n\n #_00E54F: DEX\n #_00E550: BPL .next_b\n\n #_00E552: SEP #$30\n\n #_00E554: PLB\n\n #_00E555: RTL", + "file": "bank_00.asm" + }, + { + "name": "TransferFontToVRAM", + "code": "TransferFontToVRAM:\n #_00E556: LDA.b #$02\n #_00E558: STA.w OBSEL\n\n #_00E55B: LDA.b #$80\n #_00E55D: STA.w VMAIN\n\n #_00E560: LDA.b #TheFont>>16\n #_00E562: STA.b $02\n\n #_00E564: REP #$30\n\n #_00E566: LDA.w #$7000 ; VRAM $E000\n #_00E569: STA.w VMADDR\n\n #_00E56C: LDA.w #TheFont\n #_00E56F: STA.b $00\n\n #_00E571: LDX.w #(TheFont_end-TheFont)/2-1\n\n.next\n #_00E574: LDA.b [$00]\n #_00E576: STA.w VMDATA\n\n #_00E579: INC.b $00\n #_00E57B: INC.b $00\n\n #_00E57D: DEX\n #_00E57E: BPL .next\n\n #_00E580: SEP #$30\n\n #_00E582: RTL", + "file": "bank_00.asm" + }, + { + "name": "LoadSpriteGraphics", + "code": "LoadSpriteGraphics:\n #_00E583: STZ.b $00\n #_00E585: STX.b $01\n\n #_00E587: PHY\n\n #_00E588: JSR Decompress_sprite_arbitrary\n\n #_00E58B: REP #$20\n\n #_00E58D: LDY.b #$3F\n\n #_00E58F: PLX\n\n #_00E590: CPX.b #$52\n #_00E592: BEQ Do3To4High\n\n #_00E594: CPX.b #$53\n #_00E596: BEQ Do3To4High\n\n #_00E598: CPX.b #$5A\n #_00E59A: BEQ Do3To4High\n\n #_00E59C: CPX.b #$5B\n #_00E59E: BEQ Do3To4High\n\n #_00E5A0: CPX.b #$5C\n #_00E5A2: BEQ Do3To4High\n\n #_00E5A4: CPX.b #$5E\n #_00E5A6: BEQ Do3To4High\n\n #_00E5A8: CPX.b #$5F\n #_00E5AA: BEQ Do3To4High\n\n #_00E5AC: JMP.w Do3To4Low\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Do3To4High", + "code": "Do3To4High:\n.next_tile\n #_00E5AF: LDX.b #$0E\n\n.next_planes_a\n #_00E5B1: LDA.b [$00]\n #_00E5B3: STA.w VMDATA\n\n #_00E5B6: XBA\n #_00E5B7: ORA.b [$00]\n #_00E5B9: AND.w #$00FF\n #_00E5BC: STA.b $BF,X\n\n #_00E5BE: INC.b $00\n #_00E5C0: INC.b $00\n\n #_00E5C2: DEX\n #_00E5C3: DEX\n\n #_00E5C4: LDA.b [$00]\n #_00E5C6: STA.w VMDATA\n\n #_00E5C9: XBA\n #_00E5CA: ORA.b [$00]\n #_00E5CC: AND.w #$00FF\n #_00E5CF: STA.b $BF,X\n\n #_00E5D1: INC.b $00\n #_00E5D3: INC.b $00\n\n #_00E5D5: DEX\n #_00E5D6: DEX\n #_00E5D7: BPL .next_planes_a\n\n; ---------------------------------------------------------\n\n #_00E5D9: LDX.b #$0E\n\n.next_planes_b\n #_00E5DB: LDA.b [$00]\n #_00E5DD: AND.w #$00FF\n #_00E5E0: STA.b $BD\n\n #_00E5E2: ORA.b $BF,X\n #_00E5E4: XBA\n #_00E5E5: ORA.b $BD\n #_00E5E7: STA.w VMDATA\n #_00E5EA: INC.b $00\n\n #_00E5EC: DEX\n #_00E5ED: DEX\n\n #_00E5EE: LDA.b [$00]\n #_00E5F0: AND.w #$00FF\n #_00E5F3: STA.b $BD\n\n #_00E5F5: ORA.b $BF,X\n #_00E5F7: XBA\n #_00E5F8: ORA.b $BD\n #_00E5FA: STA.w VMDATA\n\n #_00E5FD: INC.b $00\n\n #_00E5FF: DEX\n #_00E600: DEX\n #_00E601: BPL .next_planes_b\n\n #_00E603: DEY\n #_00E604: BPL .next_tile\n\n #_00E606: SEP #$20\n\n #_00E608: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadBackgroundGraphics", + "code": "LoadBackgroundGraphics:\n #_00E609: LDA.b #$7F4000>>16\n #_00E60B: LDX.b #$7F4000>>8\n\n.arbitrary\n #_00E60D: STZ.b $00\n #_00E60F: STX.b $01\n #_00E611: STA.b $02\n\n #_00E613: JSR Decompress_background_arbitrary\n\n #_00E616: REP #$20\n\n #_00E618: LDY.b #$3F\n\n #_00E61A: LDX.w $0AA1\n #_00E61D: CPX.b #$20\n #_00E61F: BCC .do_low\n\n #_00E621: LDX.b $0F\n #_00E623: CPX.b #$07\n #_00E625: BEQ Do3To4High\n\n #_00E627: CPX.b #$02\n #_00E629: BEQ Do3To4High\n\n #_00E62B: CPX.b #$04\n #_00E62D: BEQ Do3To4High\n\n #_00E62F: CPX.b #$03\n #_00E631: BNE Do3To4Low\n\n.nevermind_do_high\n #_00E633: JMP.w Do3To4High\n\n.do_low\n #_00E636: LDX.b $0F\n #_00E638: CPX.b #$04\n #_00E63A: BCS .nevermind_do_high\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Do3To4Low", + "code": "Do3To4Low:\n\n.next_super\n #_00E63C: LDA.b [$00]\n #_00E63E: STA.w VMDATA\n\n #_00E641: INC.b $00\n #_00E643: INC.b $00\n\n #_00E645: LDA.b [$00]\n #_00E647: STA.w VMDATA\n\n #_00E64A: INC.b $00\n #_00E64C: INC.b $00\n\n #_00E64E: LDA.b [$00]\n #_00E650: STA.w VMDATA\n\n #_00E653: INC.b $00\n #_00E655: INC.b $00\n\n #_00E657: LDA.b [$00]\n #_00E659: STA.w VMDATA\n\n #_00E65C: INC.b $00\n #_00E65E: INC.b $00\n\n #_00E660: LDA.b [$00]\n #_00E662: STA.w VMDATA\n\n #_00E665: INC.b $00\n #_00E667: INC.b $00\n\n #_00E669: LDA.b [$00]\n #_00E66B: STA.w VMDATA\n\n #_00E66E: INC.b $00\n #_00E670: INC.b $00\n\n #_00E672: LDA.b [$00]\n #_00E674: STA.w VMDATA\n\n #_00E677: INC.b $00\n #_00E679: INC.b $00\n\n #_00E67B: LDA.b [$00]\n #_00E67D: STA.w VMDATA\n\n #_00E680: INC.b $00\n #_00E682: INC.b $00\n\n; ---------------------------------------------------------\n\n #_00E684: LDX.b #$01\n\n.next\n #_00E686: LDA.b [$00]\n #_00E688: AND.w #$00FF\n #_00E68B: STA.w VMDATA\n\n #_00E68E: INC.b $00\n\n #_00E690: LDA.b [$00]\n #_00E692: AND.w #$00FF\n #_00E695: STA.w VMDATA\n\n #_00E698: INC.b $00\n\n #_00E69A: LDA.b [$00]\n #_00E69C: AND.w #$00FF\n #_00E69F: STA.w VMDATA\n\n #_00E6A2: INC.b $00\n\n #_00E6A4: LDA.b [$00]\n #_00E6A6: AND.w #$00FF\n #_00E6A9: STA.w VMDATA\n\n #_00E6AC: INC.b $00\n\n #_00E6AE: DEX\n #_00E6AF: BPL .next\n\n; ---------------------------------------------------------\n\n #_00E6B1: DEY\n #_00E6B2: BPL .next_super\n\n #_00E6B4: SEP #$20\n\n #_00E6B6: RTS", + "file": "bank_00.asm" + }, + { + "name": "LoadCommonSprites", + "code": "LoadCommonSprites:\n #_00E6B7: LDY.w $0AA4\n\n #_00E6BA: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E6BD: STA.b $02\n\n #_00E6BF: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E6C2: STA.b $01\n\n #_00E6C4: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E6C7: STA.b $00\n\n #_00E6C9: REP #$20\n\n #_00E6CB: LDY.b #$40\n\n; ---------------------------------------------------------\n\n.next_tile\n #_00E6CD: LDX.b #$0E\n\n.next_planes_a\n #_00E6CF: LDA.b [$00]\n #_00E6D1: STA.w VMDATA\n\n #_00E6D4: XBA\n #_00E6D5: ORA.b [$00]\n #_00E6D7: AND.w #$00FF\n #_00E6DA: STA.b $BF,X\n\n #_00E6DC: INC.b $00\n #_00E6DE: INC.b $00\n\n #_00E6E0: DEX\n #_00E6E1: DEX\n\n #_00E6E2: LDA.b [$00]\n #_00E6E4: STA.w VMDATA\n\n #_00E6E7: XBA\n #_00E6E8: ORA.b [$00]\n #_00E6EA: AND.w #$00FF\n #_00E6ED: STA.b $BF,X\n\n #_00E6EF: INC.b $00\n #_00E6F1: INC.b $00\n\n #_00E6F3: DEX\n #_00E6F4: DEX\n #_00E6F5: BPL .next_planes_a\n\n; ---------------------------------------------------------\n\n #_00E6F7: LDX.b #$0E\n\n.next_planes_b\n #_00E6F9: LDA.b [$00]\n #_00E6FB: AND.w #$00FF\n #_00E6FE: STA.b $BD\n\n #_00E700: ORA.b $BF,X\n #_00E702: XBA\n #_00E703: ORA.b $BD\n #_00E705: STA.w VMDATA\n\n #_00E708: INC.b $00\n\n #_00E70A: DEX\n #_00E70B: DEX\n\n #_00E70C: LDA.b [$00]\n #_00E70E: AND.w #$00FF\n #_00E711: STA.b $BD\n\n #_00E713: ORA.b $BF,X\n #_00E715: XBA\n #_00E716: ORA.b $BD\n #_00E718: STA.w VMDATA\n\n #_00E71B: INC.b $00\n\n #_00E71D: DEX\n #_00E71E: DEX\n #_00E71F: BPL .next_planes_b\n\n #_00E721: DEY\n #_00E722: BNE .next_tile\n\n; ---------------------------------------------------------\n\n #_00E724: SEP #$20\n\n #_00E726: LDA.b $10\n #_00E728: CMP.b #$01\n #_00E72A: BEQ .in_file_select\n\n #_00E72C: LDY.b #$06\n\n #_00E72E: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E731: STA.b $02\n\n #_00E733: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E736: STA.b $01\n\n #_00E738: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E73B: STA.b $00\n\n #_00E73D: REP #$20\n\n #_00E73F: LDY.b #$7F\n\n #_00E741: JMP.w Do3To4Low\n\n; ---------------------------------------------------------\n\n.in_file_select\n #_00E744: STZ.b $0F\n\n #_00E746: LDY.b #$5E\n #_00E748: STY.b $06\n\n #_00E74A: LDA.b #$7F\n #_00E74C: STA.b $02\n\n #_00E74E: LDX.b #$40\n\n #_00E750: JSR LoadSpriteGraphics\n\n #_00E753: LDY.b #$5F\n #_00E755: STY.b $06\n\n #_00E757: LDX.b #$40\n\n #_00E759: JMP.w LoadSpriteGraphics\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress_sprite_high", + "code": "Decompress_sprite_high:\n #_00E75C: STZ.b $00\n\n #_00E75E: LDA.b #$7F4600>>8\n #_00E760: STA.b $01\n\n #_00E762: LDA.b #$7F4600>>16\n #_00E764: BRA .sprite_set_bank\n\n; =========================================================\n\n#Decompress_sprite_low:\n #_00E766: STZ.b $00\n\n #_00E768: LDA.b #$40\n #_00E76A: STA.b $01\n\n #_00E76C: LDA.b #$7F\n\n; ---------------------------------------------------------\n\n.sprite_set_bank\n #_00E76E: STA.b $02\n #_00E770: STA.b $05\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress_sprite_arbitrary", + "code": "Decompress_sprite_arbitrary:\n #_00E772: LDA.w GFXSheetPointers_sprite_bank,Y\n #_00E775: STA.b $CA\n\n #_00E777: LDA.w GFXSheetPointers_sprite_high,Y\n #_00E77A: STA.b $C9\n\n #_00E77C: LDA.w GFXSheetPointers_sprite_low,Y\n #_00E77F: STA.b $C8\n\n #_00E781: BRA Decompress\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress_background_low", + "code": "Decompress_background_low:\n #_00E783: STZ.b $00\n\n #_00E785: LDA.b #$7F4000>>8\n #_00E787: STA.b $01\n\n #_00E789: LDA.b #$7F4000>>16\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress_background_arbitrary_bank", + "code": "Decompress_background_arbitrary_bank:\n #_00E78B: STA.b $02\n #_00E78D: STA.b $05\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress_background_arbitrary", + "code": "Decompress_background_arbitrary:\n #_00E78F: LDA.w GFXSheetPointers_background_bank,Y\n #_00E792: STA.b $CA\n\n #_00E794: LDA.w GFXSheetPointers_background_high,Y\n #_00E797: STA.b $C9\n\n #_00E799: LDA.w GFXSheetPointers_background_low,Y\n #_00E79C: STA.b $C8\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Decompress", + "code": "Decompress:\n #_00E79E: REP #$10\n\n #_00E7A0: LDY.w #$0000\n\n.next_command\n #_00E7A3: JSR Decompression_GetNextByte\n\n #_00E7A6: CMP.b #$FF ; stop decompression\n #_00E7A8: BNE .continue\n\n #_00E7AA: SEP #$10\n\n #_00E7AC: RTS", + "file": "bank_00.asm" + }, + { + "name": "Decompression_GetNextByte", + "code": "Decompression_GetNextByte:\n #_00E843: LDA.b [$C8]\n\n #_00E845: LDX.b $C8\n #_00E847: INX\n #_00E848: BNE .no_bank_wrap\n\n #_00E84A: LDX.w #$8000\n #_00E84D: INC.b $CA\n\n.no_bank_wrap\n #_00E84F: STX.b $C8\n\n #_00E851: RTS", + "file": "bank_00.asm" + }, + { + "name": "NULL_00E852", + "code": "NULL_00E852:\n #_00E852: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E85A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E862: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E86A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E872: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00E87A: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilterColorAdd", + "code": "PaletteFilterColorAdd:\n #_00E880: dw $FFFF, $0001\n #_00E884: dw $FFE0, $0020\n #_00E888: dw $FC00, $0400\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilterColorMasks", + "code": "PaletteFilterColorMasks:\n #_00E88C: dw $FFFF, $FFFF, $FFFE, $FFFF\n #_00E894: dw $7FFF, $7FFF, $7FDF, $FBFF\n #_00E89C: dw $7F7F, $7F7F, $7DF7, $EFBF\n #_00E8A4: dw $7BDF, $7BDF, $77BB, $DDEF\n #_00E8AC: dw $7777, $7777, $6EDD, $BB77\n #_00E8B4: dw $6DB7, $6DB7, $5B6D, $B6DB\n #_00E8BC: dw $5B5B, $5B5B, $56B6, $AD6B\n #_00E8C4: dw $5555, $AD6B, $5555, $AAAB\n #_00E8CC: dw $5555, $5555, $2A55, $5555\n #_00E8D4: dw $2A55, $2A55, $294A, $5295\n #_00E8DC: dw $2525, $2525, $2492, $4925\n #_00E8E4: dw $1249, $1249, $1122, $4489\n #_00E8EC: dw $1111, $1111, $0844, $2211\n #_00E8F4: dw $0421, $0421, $0208, $1041\n #_00E8FC: dw $0101, $0101, $0020, $0401\n #_00E904: dw $0001, $0001, $0000, $0001\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter", + "code": "PaletteFilter:\n #_00E90C: SEP #$20\n\n #_00E90E: LDA.b $1A\n #_00E910: LSR A\n #_00E911: BCC ApplyPaletteFilter\n\n #_00E913: RTL", + "file": "bank_00.asm" + }, + { + "name": "ApplyPaletteFilter", + "code": "ApplyPaletteFilter:\n #_00E914: REP #$30\n\n #_00E916: LDX.w #PaletteFilterColorAdd+12\n\n #_00E919: LDA.l $7EC007\n #_00E91D: CMP.w #$0010\n #_00E920: BCC .first_half\n\n #_00E922: INX\n #_00E923: INX\n\n.first_half\n #_00E924: STX.b $B7\n\n #_00E926: AND.w #$000F\n #_00E929: ASL A\n #_00E92A: TAX\n\n #_00E92B: LDA.w DungeonMask,X\n #_00E92E: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_00E930: PHB\n #_00E931: PHK\n #_00E932: PLB\n\n #_00E933: LDA.l $7EC009\n #_00E937: TAX\n\n #_00E938: LDA.w PaletteFilterColorAdd+0,X\n #_00E93B: STA.b $06\n\n #_00E93D: LDA.w PaletteFilterColorAdd+4,X\n #_00E940: STA.b $08\n\n #_00E942: LDA.w PaletteFilterColorAdd+8,X\n #_00E945: STA.b $0A\n\n #_00E947: LDX.w #$0040\n #_00E94A: JSR PaletteFilter_FilterColors\n\n #_00E94D: LDA.l $7EC500\n #_00E951: STA.b $04\n\n; ---------------------------------------------------------\n\n #_00E953: LDA.l $7EC300\n #_00E957: AND.w #$001F\n #_00E95A: ASL A\n #_00E95B: ASL A\n #_00E95C: TAY\n\n #_00E95D: LDA.b ($B7),Y\n #_00E95F: AND.b $0C\n #_00E961: BNE .no_red\n\n #_00E963: LDA.b $04\n #_00E965: ADC.b $06\n #_00E967: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00E969: LDA.l $7EC300\n #_00E96D: AND.w #$03E0\n #_00E970: LSR A\n #_00E971: LSR A\n #_00E972: LSR A\n #_00E973: TAY\n\n #_00E974: LDA.b ($B7),Y\n #_00E976: AND.b $0C\n #_00E978: BNE .no_green\n\n #_00E97A: LDA.b $04\n #_00E97C: ADC.b $08\n #_00E97E: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00E980: LDA.l $7EC301\n #_00E984: AND.w #$007C\n #_00E987: TAY\n\n #_00E988: LDA.b ($B7),Y\n #_00E98A: AND.b $0C\n #_00E98C: BNE .no_blue\n\n #_00E98E: LDA.b $04\n #_00E990: CLC\n #_00E991: ADC.b $0A\n #_00E993: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00E995: LDA.b $04\n #_00E997: STA.l $7EC500\n\n #_00E99B: PLB\n\n #_00E99C: LDA.l $7EC009\n #_00E9A0: BNE .lightening\n\n #_00E9A2: LDA.l $7EC007\n #_00E9A6: INC A\n #_00E9A7: STA.l $7EC007\n\n #_00E9AB: CMP.l $7EC00B\n #_00E9AF: BNE .continue_filtering\n\n.swap\n #_00E9B1: LDA.l $7EC009\n #_00E9B5: EOR.w #$0002\n #_00E9B8: STA.l $7EC009\n\n #_00E9BC: LDA.w #$0000\n #_00E9BF: STA.l $7EC007\n\n #_00E9C3: SEP #$20\n\n #_00E9C5: INC.b $B0\n\n.continue_filtering\n #_00E9C7: SEP #$30\n\n #_00E9C9: INC.b $15\n\n #_00E9CB: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_FilterColors", + "code": "PaletteFilter_FilterColors:\n.next_color\n #_00E9E4: LDA.l $7EC500,X\n #_00E9E8: STA.b $04\n\n #_00E9EA: LDA.l $7EC300,X\n #_00E9EE: BEQ .color_is_black\n\n; ---------------------------------------------------------\n\n #_00E9F0: AND.w #$001F\n #_00E9F3: ASL A\n #_00E9F4: ASL A\n #_00E9F5: TAY\n\n #_00E9F6: LDA.b ($B7),Y\n #_00E9F8: AND.b $0C\n #_00E9FA: BNE .no_red\n\n #_00E9FC: LDA.b $04\n #_00E9FE: ADC.b $06\n #_00EA00: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00EA02: LDA.l $7EC300,X\n #_00EA06: AND.w #$03E0\n #_00EA09: LSR A\n #_00EA0A: LSR A\n #_00EA0B: LSR A\n #_00EA0C: TAY\n\n #_00EA0D: LDA.b ($B7),Y\n #_00EA0F: AND.b $0C\n #_00EA11: BNE .no_green\n\n #_00EA13: LDA.b $04\n #_00EA15: ADC.b $08\n #_00EA17: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00EA19: LDA.l $7EC301,X\n #_00EA1D: AND.w #$007C\n #_00EA20: TAY\n\n #_00EA21: LDA.b ($B7),Y\n #_00EA23: AND.b $0C\n #_00EA25: BNE .no_blue\n\n #_00EA27: LDA.b $04\n #_00EA29: CLC\n #_00EA2A: ADC.b $0A\n #_00EA2C: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00EA2E: LDA.b $04\n #_00EA30: STA.l $7EC500,X\n\n.color_is_black\n #_00EA34: INX\n #_00EA35: INX\n #_00EA36: CPX.w #$01B0\n #_00EA39: BCC .next_color\n\n #_00EA3B: BNE .dont_skip_palette_5\n\n #_00EA3D: TXA\n #_00EA3E: CLC\n #_00EA3F: ADC.w #$0010\n #_00EA42: TAX\n\n; ---------------------------------------------------------\n\n.dont_skip_palette_5\n #_00EA43: CPX.w #$01E0\n #_00EA46: BNE .next_color\n\n #_00EA48: RTS", + "file": "bank_00.asm" + }, + { + "name": "UNREACHABLE_00EA49", + "code": "UNREACHABLE_00EA49:\n #_00EA49: REP #$30\n\n #_00EA4B: LDX.w #PaletteFilterColorAdd+12\n\n #_00EA4E: LDA.l $7EC007\n #_00EA52: CMP.w #$0010\n #_00EA55: BCC .first_half\n\n #_00EA57: INX\n #_00EA58: INX\n\n.first_half\n #_00EA59: STX.b $B7\n\n #_00EA5B: AND.w #$000F\n #_00EA5E: ASL A\n #_00EA5F: TAX\n\n #_00EA60: LDA.w DungeonMask,X\n #_00EA63: STA.b $0C\n\n #_00EA65: PHB\n #_00EA66: PHK\n #_00EA67: PLB\n\n #_00EA68: LDA.l $7EC009\n #_00EA6C: TAX\n\n #_00EA6D: LDA.w PaletteFilterColorAdd+0,X\n #_00EA70: STA.b $06\n\n #_00EA72: LDA.w PaletteFilterColorAdd+4,X\n #_00EA75: STA.b $08\n\n #_00EA77: LDA.w PaletteFilterColorAdd+8,X\n #_00EA7A: STA.b $0A\n\n #_00EA7C: LDX.w #$0040\n #_00EA7F: LDA.w #$0200\n #_00EA82: JSR FilterColorsEndpoint\n\n #_00EA85: PLB\n\n; ---------------------------------------------------------\n\n #_00EA86: LDA.l $7EC009\n #_00EA8A: BNE .lightening\n\n #_00EA8C: LDA.l $7EC007\n #_00EA90: INC A\n #_00EA91: STA.l $7EC007\n\n #_00EA95: CMP.l $7EC00B\n #_00EA99: BNE .continue_filtering\n\n; ---------------------------------------------------------\n\n.swap\n #_00EA9B: LDA.l $7EC009\n #_00EA9F: EOR.w #$0002\n #_00EAA2: STA.l $7EC009\n\n #_00EAA6: LDA.w #$0000\n #_00EAA9: STA.l $7EC007\n\n #_00EAAD: SEP #$20\n\n #_00EAAF: INC.b $B0\n\n; ---------------------------------------------------------\n\n.continue_filtering\n #_00EAB1: SEP #$30\n\n #_00EAB3: INC.b $15\n\n #_00EAB5: RTL", + "file": "bank_00.asm" + }, + { + "name": "FilterColorsEndpoint", + "code": "FilterColorsEndpoint:\n #_00EACE: STA.b $0E\n\n.next_color\n #_00EAD0: LDA.l $7EC500,X\n #_00EAD4: STA.b $04\n\n #_00EAD6: LDA.l $7EC300,X\n #_00EADA: BEQ .skip_color\n\n #_00EADC: AND.w #$001F\n #_00EADF: ASL A\n #_00EAE0: ASL A\n #_00EAE1: TAY\n\n #_00EAE2: LDA.b ($B7),Y\n #_00EAE4: AND.b $0C\n #_00EAE6: BNE .no_red\n\n #_00EAE8: LDA.b $04\n #_00EAEA: CLC\n #_00EAEB: ADC.b $06\n #_00EAED: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_red\n #_00EAEF: LDA.l $7EC300,X\n #_00EAF3: AND.w #$03E0\n #_00EAF6: LSR A\n #_00EAF7: LSR A\n #_00EAF8: LSR A\n #_00EAF9: TAY\n\n #_00EAFA: LDA.b ($B7),Y\n #_00EAFC: AND.b $0C\n #_00EAFE: BNE .no_green\n\n #_00EB00: LDA.b $04\n #_00EB02: CLC\n #_00EB03: ADC.b $08\n #_00EB05: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_green\n #_00EB07: LDA.l $7EC301,X\n #_00EB0B: AND.w #$007C\n #_00EB0E: TAY\n\n #_00EB0F: LDA.b ($B7),Y\n #_00EB11: AND.b $0C\n #_00EB13: BNE .no_blue\n\n #_00EB15: LDA.b $04\n #_00EB17: CLC\n #_00EB18: ADC.b $0A\n #_00EB1A: STA.b $04\n\n; ---------------------------------------------------------\n\n.no_blue\n #_00EB1C: LDA.b $04\n #_00EB1E: STA.l $7EC500,X\n\n; ---------------------------------------------------------\n\n.skip_color\n #_00EB22: INX\n #_00EB23: INX\n #_00EB24: CPX.b $0E\n #_00EB26: BNE .next_color\n\n #_00EB28: RTS", + "file": "bank_00.asm" + }, + { + "name": "ResetHUDPalettes4and5", + "code": "ResetHUDPalettes4and5:\n #_00EB29: REP #$20\n\n #_00EB2B: LDA.w #$0000 ; RGB: #000000\n\n #_00EB2E: STA.l $7EC520\n #_00EB32: STA.l $7EC522\n #_00EB36: STA.l $7EC524\n #_00EB3A: STA.l $7EC526\n #_00EB3E: STA.l $7EC528\n #_00EB42: STA.l $7EC52A\n #_00EB46: STA.l $7EC52C\n #_00EB4A: STA.l $7EC52E\n\n #_00EB4E: STA.l $7EC007 ; reset mosaic control\n\n #_00EB52: LDA.w #$0002 ; lightening screen\n #_00EB55: STA.l $7EC009\n\n #_00EB59: SEP #$20\n\n #_00EB5B: INC.b $15\n\n #_00EB5D: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilterHistory", + "code": "PaletteFilterHistory:\n #_00EB5E: REP #$30\n\n #_00EB60: LDX.w #PaletteFilterColorAdd+12\n\n #_00EB63: LDA.l $7EC007\n #_00EB67: CMP.w #$0010\n #_00EB6A: BCC .first_half\n\n #_00EB6C: INX\n #_00EB6D: INX\n\n.first_half\n #_00EB6E: STX.b $B7\n\n #_00EB70: AND.w #$000F\n #_00EB73: ASL A\n #_00EB74: TAX\n\n #_00EB75: LDA.l DungeonMask,X\n #_00EB79: STA.b $0C\n\n #_00EB7B: PHB\n #_00EB7C: PHK\n #_00EB7D: PLB\n\n #_00EB7E: LDA.l $7EC009\n #_00EB82: TAX\n\n #_00EB83: LDA.w PaletteFilterColorAdd+0,X\n #_00EB86: STA.b $06\n\n #_00EB88: LDA.w PaletteFilterColorAdd+4,X\n #_00EB8B: STA.b $08\n\n #_00EB8D: LDA.w PaletteFilterColorAdd+8,X\n #_00EB90: STA.b $0A\n\n #_00EB92: LDX.w #$0020\n #_00EB95: LDA.w #$0030\n\n; =========================================================\n\n#PaletteFilterHistory_do_filtering:\n #_00EB98: JSR FilterColorsEndpoint\n\n #_00EB9B: PLB\n\n #_00EB9C: LDA.l $7EC007\n #_00EBA0: INC A\n #_00EBA1: STA.l $7EC007\n\n #_00EBA5: CMP.w #$001F\n #_00EBA8: BNE .still_filtering\n\n #_00EBAA: LDA.w #$0000\n #_00EBAD: STA.l $7EC007\n\n #_00EBB1: LDA.l $7EC009\n #_00EBB5: EOR.w #$0002\n #_00EBB8: STA.l $7EC009\n #_00EBBC: BEQ .still_filtering\n\n #_00EBBE: INC.b $27\n\n.still_filtering\n #_00EBC0: SEP #$30\n\n #_00EBC2: INC.b $15\n\n #_00EBC4: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_WishPonds", + "code": "PaletteFilter_WishPonds:\n #_00EBC5: LDA.b #$02\n #_00EBC7: STA.b $1D\n\n #_00EBC9: LDA.b #$30\n #_00EBCB: STA.b $9A\n\n #_00EBCD: BRA .start\n\n; =========================================================\n\n#PaletteFilter_Crystal:\n #_00EBCF: LDA.b #$01\n #_00EBD1: STA.b $1D\n\n; =========================================================\n\n#PaletteFilter_TheEndSprite:\n.start\n #_00EBD3: REP #$20\n\n #_00EBD5: LDX.b #$0E\n #_00EBD7: LDA.w #$0000 ; RGB: #000000\n\n.next_black\n #_00EBDA: STA.l $7EC6A0,X\n\n #_00EBDE: DEX\n #_00EBDF: DEX\n #_00EBE0: BPL .next_black\n\n; ---------------------------------------------------------\n\n #_00EBE2: STA.l $7EC007\n\n #_00EBE6: LDA.w #$0002\n #_00EBE9: STA.l $7EC009\n\n #_00EBED: SEP #$20\n\n #_00EBEF: INC.b $15\n\n #_00EBF1: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_RestoreSP5F", + "code": "PaletteFilter_RestoreSP5F:\n #_00EBF2: REP #$20\n\n #_00EBF4: LDX.b #$0E\n\n.next_color\n #_00EBF6: LDA.l $7EC4A0,X\n #_00EBFA: STA.l $7EC6A0,X\n\n #_00EBFE: DEX\n #_00EBFF: DEX\n #_00EC00: BPL .next_color\n\n #_00EC02: SEP #$20\n\n #_00EC04: STZ.b $1D\n\n #_00EC06: LDA.b #$20\n #_00EC08: STA.b $9A\n\n #_00EC0A: INC.b $15\n\n; ---------------------------------------------------------\n\n#EXIT_00EC0C:\n #_00EC0C: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_SP5F", + "code": "PaletteFilter_SP5F:\n #_00EC0D: JSL .filter\n\n #_00EC11: LDA.l $7EC007\n #_00EC15: BEQ EXIT_00EC0C\n\n; ---------------------------------------------------------\n\n.filter\n #_00EC17: REP #$30\n\n #_00EC19: LDX.w #PaletteFilterColorAdd+12\n\n #_00EC1C: LDA.l $7EC007\n #_00EC20: CMP.w #$0010\n #_00EC23: BCC .first_half\n\n #_00EC25: INX\n #_00EC26: INX\n\n.first_half\n #_00EC27: STX.b $B7\n\n #_00EC29: AND.w #$000F\n #_00EC2C: ASL A\n #_00EC2D: TAX\n\n #_00EC2E: LDA.l DungeonMask,X\n #_00EC32: STA.b $0C\n\n #_00EC34: PHB\n #_00EC35: PHK\n #_00EC36: PLB\n\n #_00EC37: LDA.l $7EC009\n #_00EC3B: TAX\n\n #_00EC3C: LDA.w PaletteFilterColorAdd+0,X\n #_00EC3F: STA.b $06\n\n #_00EC41: LDA.w PaletteFilterColorAdd+4,X\n #_00EC44: STA.b $08\n\n #_00EC46: LDA.w PaletteFilterColorAdd+8,X\n #_00EC49: STA.b $0A\n\n #_00EC4B: LDX.w #$01A0\n #_00EC4E: LDA.w #$01B0\n #_00EC51: JMP.w PaletteFilterHistory_do_filtering\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_KholdstareShell_init", + "code": "PaletteFilter_KholdstareShell_init:\n #_00EC54: REP #$20\n\n #_00EC56: LDX.b #$0E\n\n.next_color\n #_00EC58: LDA.l $7EC380,X\n #_00EC5C: STA.l $7EC580,X\n\n #_00EC60: DEX\n #_00EC61: DEX\n #_00EC62: BPL .next_color\n\n; ---------------------------------------------------------\n\n #_00EC64: LDA.w #$0000\n #_00EC67: STA.l $7EC007\n #_00EC6B: STA.l $7EC009\n\n #_00EC6F: SEP #$20\n\n #_00EC71: INC.b $15\n\n #_00EC73: INC.b $B0\n\n #_00EC75: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_KholdstareShell_disable_subscreen", + "code": "PaletteFilter_KholdstareShell_disable_subscreen:\n #_00EC76: STZ.b $1D\n\n #_00EC78: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_KholdstareShell", + "code": "PaletteFilter_KholdstareShell:\n #_00EC79: LDA.b $B0\n #_00EC7B: BEQ PaletteFilter_KholdstareShell_init\n\n #_00EC7D: JSL .filter\n\n #_00EC81: LDA.l $7EC007\n #_00EC85: BEQ PaletteFilter_KholdstareShell_disable_subscreen\n\n; ---------------------------------------------------------\n\n.filter\n #_00EC87: REP #$30\n\n #_00EC89: LDX.w #PaletteFilterColorAdd+12\n\n #_00EC8C: LDA.l $7EC007\n #_00EC90: CMP.w #$0010\n #_00EC93: BCC .first_half\n\n #_00EC95: INX\n #_00EC96: INX\n\n.first_half\n #_00EC97: STX.b $B7\n\n #_00EC99: AND.w #$000F\n #_00EC9C: ASL A\n #_00EC9D: TAX\n\n #_00EC9E: LDA.l DungeonMask,X\n #_00ECA2: STA.b $0C\n\n #_00ECA4: PHB\n #_00ECA5: PHK\n #_00ECA6: PLB\n\n #_00ECA7: LDA.l $7EC009\n #_00ECAB: TAX\n\n #_00ECAC: LDA.w PaletteFilterColorAdd+0,X\n #_00ECAF: STA.b $06\n\n #_00ECB1: LDA.w PaletteFilterColorAdd+4,X\n #_00ECB4: STA.b $08\n\n #_00ECB6: LDA.w PaletteFilterColorAdd+8,X\n #_00ECB9: STA.b $0A\n\n #_00ECBB: LDX.w #$0080\n #_00ECBE: LDA.w #$0090\n #_00ECC1: JMP.w PaletteFilterHistory_do_filtering\n\n; =========================================================\n\npool AgahnimWarpShadowFilter\n\n.palette_offset\n #_00ECC4: dw $0160\n #_00ECC6: dw $0180\n #_00ECC8: dw $01A0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_00.asm" + }, + { + "name": "AgahnimWarpShadowFilter", + "code": "AgahnimWarpShadowFilter:\n #_00ECCA: PHX\n\n #_00ECCB: TXA\n #_00ECCC: ASL A\n #_00ECCD: TAX\n\n #_00ECCE: REP #$20\n\n #_00ECD0: LDA.l $7EC019,X\n #_00ECD4: STA.l $7EC007\n\n #_00ECD8: LDA.l $7EC01F,X\n #_00ECDC: STA.l $7EC009\n\n #_00ECE0: LDA.l .palette_offset,X\n #_00ECE4: STA.b $00\n\n #_00ECE6: CLC\n #_00ECE7: ADC.w #$0010\n #_00ECEA: STA.b $02\n\n #_00ECEC: REP #$10\n\n #_00ECEE: JSR AgahnimWarpShadowFilter_filter_one\n\n #_00ECF1: LDA.l $7EC007\n #_00ECF5: BEQ .done\n\n #_00ECF7: JSR AgahnimWarpShadowFilter_filter_one\n\n; ---------------------------------------------------------\n\n.done\n #_00ECFA: SEP #$30\n\n #_00ECFC: PLX\n #_00ECFD: PHX\n\n #_00ECFE: TXA\n #_00ECFF: ASL A\n #_00ED00: TAX\n\n #_00ED01: REP #$20\n\n #_00ED03: LDA.l $7EC007\n #_00ED07: STA.l $7EC019,X\n\n #_00ED0B: LDA.l $7EC009\n #_00ED0F: STA.l $7EC01F,X\n\n #_00ED13: SEP #$20\n\n #_00ED15: PLX\n\n #_00ED16: INC.b $15\n\n #_00ED18: RTL", + "file": "bank_00.asm" + }, + { + "name": "AgahnimWarpShadowFilter_filter_one", + "code": "AgahnimWarpShadowFilter_filter_one:\n #_00ED19: LDY.w #PaletteFilterColorAdd+12\n\n #_00ED1C: LDA.l $7EC007\n #_00ED20: CMP.w #$0010\n #_00ED23: BCC .first_half\n\n #_00ED25: INY\n #_00ED26: INY\n\n.first_half\n #_00ED27: STY.b $B7\n\n #_00ED29: AND.w #$000F\n #_00ED2C: ASL A\n #_00ED2D: TAX\n\n #_00ED2E: LDA.l DungeonMask,X\n #_00ED32: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_00ED34: PHB\n #_00ED35: PHK\n #_00ED36: PLB\n\n #_00ED37: LDA.l $7EC009\n #_00ED3B: TAX\n\n #_00ED3C: LDA.w PaletteFilterColorAdd+0,X\n #_00ED3F: STA.b $06\n\n #_00ED41: LDA.w PaletteFilterColorAdd+4,X\n #_00ED44: STA.b $08\n\n #_00ED46: LDA.w PaletteFilterColorAdd+8,X\n #_00ED49: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_00ED4B: LDX.b $00\n #_00ED4D: PHX\n\n #_00ED4E: LDA.b $02\n #_00ED50: PHA\n\n #_00ED51: JSR FilterColorsEndpoint\n\n #_00ED54: PLA\n #_00ED55: STA.b $02\n\n #_00ED57: PLX\n #_00ED58: STX.b $00\n\n #_00ED5A: PLB\n\n #_00ED5B: LDA.l $7EC007\n #_00ED5F: INC A\n #_00ED60: STA.l $7EC007\n\n #_00ED64: CMP.w #$001F\n #_00ED67: BNE .exit\n\n #_00ED69: LDA.w #$0000\n #_00ED6C: STA.l $7EC007\n\n #_00ED70: LDA.l $7EC009\n #_00ED74: EOR.w #$0002\n #_00ED77: STA.l $7EC009\n\n.exit\n #_00ED7B: RTS", + "file": "bank_00.asm" + }, + { + "name": "IntroLogoPaletteFadeIn", + "code": "IntroLogoPaletteFadeIn:\n #_00ED7C: REP #$30\n\n #_00ED7E: LDX.w #$0100\n #_00ED81: LDA.w #$01A0\n #_00ED84: JSR PaletteFilter_RestoreAdditive\n\n #_00ED87: LDX.w #$00C0\n #_00ED8A: LDA.w #$0100\n #_00ED8D: BRA .finish\n\n; ---------------------------------------------------------\n\n#IntroTitleCardPaletteFadeIn:\n #_00ED8F: REP #$30\n\n #_00ED91: LDX.w #$0040\n #_00ED94: LDA.w #$00C0\n #_00ED97: JSR PaletteFilter_RestoreAdditive\n\n #_00ED9A: LDX.w #$0040\n #_00ED9D: LDA.w #$00C0\n\n; ---------------------------------------------------------\n\n.finish\n #_00EDA0: JSR PaletteFilter_RestoreAdditive\n\n #_00EDA3: SEP #$30\n\n #_00EDA5: LDA.l $7EC007\n #_00EDA9: DEC A\n #_00EDAA: STA.l $7EC007\n\n #_00EDAE: INC.b $15\n\n #_00EDB0: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_Restore", + "code": "PaletteFilter_Restore:\n #_00EDB1: REP #$30\n\n #_00EDB3: LDX.w #$00B0\n #_00EDB6: LDA.w #$00C0\n #_00EDB9: JSR PaletteFilter_RestoreAdditive\n\n #_00EDBC: LDX.w #$00D0\n #_00EDBF: LDA.w #$00E0\n #_00EDC2: JSR PaletteFilter_RestoreSubtractive\n\n #_00EDC5: SEP #$30\n\n #_00EDC7: INC.b $15\n\n #_00EDC9: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_RestoreAdditive", + "code": "PaletteFilter_RestoreAdditive:\n #_00EDCA: STA.b $0E\n\n.next_color\n #_00EDCC: LDA.l $7EC500,X\n #_00EDD0: TAY\n\n #_00EDD1: AND.w #$001F\n #_00EDD4: STA.b $08\n\n #_00EDD6: TYA\n #_00EDD7: AND.w #$03E0\n #_00EDDA: STA.b $0A\n\n #_00EDDC: TYA\n #_00EDDD: AND.w #$7C00\n #_00EDE0: STA.b $0C\n\n #_00EDE2: LDA.l $7EC300,X\n #_00EDE6: AND.w #$001F\n #_00EDE9: CMP.b $08\n #_00EDEB: BEQ .red_equal\n\n #_00EDED: TYA\n #_00EDEE: CLC\n #_00EDEF: ADC.w #$0001\n #_00EDF2: TAY\n\n.red_equal\n #_00EDF3: LDA.l $7EC300,X\n #_00EDF7: AND.w #$03E0\n #_00EDFA: CMP.b $0A\n #_00EDFC: BEQ .green_equal\n\n #_00EDFE: TYA\n #_00EDFF: CLC\n #_00EE00: ADC.w #$0020\n #_00EE03: TAY\n\n.green_equal\n #_00EE04: LDA.l $7EC300,X\n #_00EE08: AND.w #$7C00\n #_00EE0B: CMP.b $0C\n #_00EE0D: BEQ .blue_equal\n\n #_00EE0F: TYA\n #_00EE10: CLC\n #_00EE11: ADC.w #$0400\n #_00EE14: TAY\n\n.blue_equal\n #_00EE15: TYA\n #_00EE16: STA.l $7EC500,X\n\n #_00EE1A: INX\n #_00EE1B: INX\n #_00EE1C: CPX.b $0E\n #_00EE1E: BNE .next_color\n\n #_00EE20: RTS", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_RestoreSubtractive", + "code": "PaletteFilter_RestoreSubtractive:\n #_00EE21: STA.b $0E\n\n.next_color\n #_00EE23: LDA.l $7EC500,X\n #_00EE27: TAY\n\n #_00EE28: AND.w #$001F\n #_00EE2B: STA.b $08\n\n #_00EE2D: TYA\n #_00EE2E: AND.w #$03E0\n #_00EE31: STA.b $0A\n\n #_00EE33: TYA\n #_00EE34: AND.w #$7C00\n #_00EE37: STA.b $0C\n\n #_00EE39: LDA.l $7EC300,X\n #_00EE3D: AND.w #$001F\n #_00EE40: CMP.b $08\n #_00EE42: BEQ .red_equal\n\n #_00EE44: TYA\n #_00EE45: SEC\n #_00EE46: SBC.w #$0001\n #_00EE49: TAY\n\n.red_equal\n #_00EE4A: LDA.l $7EC300,X\n #_00EE4E: AND.w #$03E0\n #_00EE51: CMP.b $0A\n #_00EE53: BEQ .green_equal\n\n #_00EE55: TYA\n #_00EE56: SEC\n #_00EE57: SBC.w #$0020\n #_00EE5A: TAY\n\n.green_equal\n #_00EE5B: LDA.l $7EC300,X\n #_00EE5F: AND.w #$7C00\n #_00EE62: CMP.b $0C\n #_00EE64: BEQ .blue_equal\n\n #_00EE66: TYA\n #_00EE67: SEC\n #_00EE68: SBC.w #$0400\n #_00EE6B: TAY\n\n.blue_equal\n #_00EE6C: TYA\n #_00EE6D: STA.l $7EC500,X\n\n #_00EE71: INX\n #_00EE72: INX\n #_00EE73: CPX.b $0E\n #_00EE75: BNE .next_color\n\n #_00EE77: RTS", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_InitializeWhiteFilter", + "code": "PaletteFilter_InitializeWhiteFilter:\n #_00EE78: REP #$20\n\n #_00EE7A: LDX.b #$00\n\n #_00EE7C: LDA.w #$7FFF ; RGB: #F8F8F8\n\n.next_white\n #_00EE7F: STA.l $7EC300,X\n #_00EE83: STA.l $7EC340,X\n #_00EE87: STA.l $7EC380,X\n #_00EE8B: STA.l $7EC3C0,X\n\n #_00EE8F: STA.l $7EC400,X\n #_00EE93: STA.l $7EC440,X\n #_00EE97: STA.l $7EC480,X\n #_00EE9B: STA.l $7EC4C0,X\n\n #_00EE9F: INX\n #_00EEA0: INX\n #_00EEA1: CPX.b #$40\n #_00EEA3: BNE .next_white\n\n; ---------------------------------------------------------\n\n #_00EEA5: LDA.l $7EC500\n #_00EEA9: STA.l $7EC540\n\n #_00EEAD: LDA.w #$0000\n #_00EEB0: STA.l $7EC007\n\n #_00EEB4: LDA.w #$0002\n #_00EEB7: STA.l $7EC009\n\n #_00EEBB: LDA.b $8A\n #_00EEBD: CMP.w #$001B ; OW 1B\n #_00EEC0: BNE .not_hyrule_castle\n\n #_00EEC2: LDA.w #$0000 ; RGB: #000000\n #_00EEC5: STA.l $7EC300\n #_00EEC9: STA.l $7EC340\n #_00EECD: STA.l $7EC500\n #_00EED1: STA.l $7EC540\n\n.not_hyrule_castle\n #_00EED5: SEP #$20\n\n #_00EED7: LDA.b #$08\n #_00EED9: STA.w $06BB\n #_00EEDC: STZ.w $06BA\n\n #_00EEDF: RTL", + "file": "bank_00.asm" + }, + { + "name": "MirrorWarp_GoToSubmodules", + "code": "MirrorWarp_GoToSubmodules:\n #_00EEE0: JSL AnimateMirrorWarp\n\n; ---------------------------------------------------------\n\n#EXIT_00EEE4:\n #_00EEE4: SEP #$30\n\n #_00EEE6: RTL", + "file": "bank_00.asm" + }, + { + "name": "MirrorWarp_RunAnimationSubmodules", + "code": "MirrorWarp_RunAnimationSubmodules:\n #_00EEE7: DEC.w $06BB\n #_00EEEA: BNE MirrorWarp_GoToSubmodules\n\n #_00EEEC: LDA.b #$02\n #_00EEEE: STA.w $06BB\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_BlindingWhite", + "code": "PaletteFilter_BlindingWhite:\n #_00EEF1: REP #$30\n\n #_00EEF3: LDA.l $7EC009\n #_00EEF7: CMP.w #$00FF\n #_00EEFA: BEQ EXIT_00EEE4\n\n #_00EEFC: CMP.w #$0002\n #_00EEFF: BNE .restore_subtractive\n\n #_00EF01: LDX.w #$0040\n #_00EF04: LDA.w #$01B0\n #_00EF07: JSR PaletteFilter_RestoreAdditive\n\n #_00EF0A: LDX.w #$01C0\n #_00EF0D: LDA.w #$01E0\n #_00EF10: JSR PaletteFilter_RestoreAdditive\n\n #_00EF13: BRA PaletteFilter_StartBlindingWhite\n\n.restore_subtractive\n #_00EF15: LDX.w #$0040\n #_00EF18: LDA.w #$01B0\n #_00EF1B: JSR PaletteFilter_RestoreSubtractive\n\n #_00EF1E: LDX.w #$01C0\n #_00EF21: LDA.w #$01E0\n #_00EF24: JSR PaletteFilter_RestoreSubtractive\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_StartBlindingWhite", + "code": "PaletteFilter_StartBlindingWhite:\n #_00EF27: LDA.l $7EC540\n #_00EF2B: STA.l $7EC500\n\n #_00EF2F: LDA.l $7EC009\n #_00EF33: BNE .check_shorter\n\n #_00EF35: LDA.l $7EC007\n #_00EF39: INC A\n #_00EF3A: STA.l $7EC007\n\n #_00EF3E: CMP.w #$0042\n #_00EF41: BNE .trigger_update\n\n #_00EF43: LDA.w #$00FF\n #_00EF46: STA.l $7EC009\n\n #_00EF4A: SEP #$20\n\n #_00EF4C: LDA.b #$20\n #_00EF4E: STA.w $06BB\n\n.trigger_update\n #_00EF51: SEP #$30\n\n #_00EF53: INC.b $15\n\n #_00EF55: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_BlindingWhiteTriforce", + "code": "PaletteFilter_BlindingWhiteTriforce:\n #_00EF8A: REP #$30\n\n #_00EF8C: LDX.w #$0040\n #_00EF8F: LDA.w #$0200\n #_00EF92: JSR PaletteFilter_RestoreAdditive\n\n #_00EF95: BRA PaletteFilter_StartBlindingWhite\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_WhirlpoolBlue", + "code": "PaletteFilter_WhirlpoolBlue:\n #_00EF97: LDA.b $1A\n #_00EF99: LSR A\n #_00EF9A: BCC .skip\n\n #_00EF9C: REP #$30\n\n #_00EF9E: PHB\n #_00EF9F: PHK\n #_00EFA0: PLB\n\n; ---------------------------------------------------------\n\n #_00EFA1: LDX.w #$0040\n\n.next_color\n #_00EFA4: LDA.l $7EC500,X\n #_00EFA8: TAY\n\n #_00EFA9: AND.w #$7C00\n #_00EFAC: CMP.w #$7C00\n #_00EFAF: BEQ .max_blue\n\n #_00EFB1: TYA\n #_00EFB2: CLC\n #_00EFB3: ADC.w #$0400\n #_00EFB6: TAY\n\n.max_blue\n #_00EFB7: TYA\n #_00EFB8: STA.l $7EC500,X\n\n #_00EFBC: INX\n #_00EFBD: INX\n #_00EFBE: CPX.w #$0200\n #_00EFC1: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00EFC3: LDA.l $7EC540\n #_00EFC7: STA.l $7EC500\n\n #_00EFCB: PLB\n\n #_00EFCC: SEP #$20\n\n #_00EFCE: LDA.l $7EC007\n #_00EFD2: LSR A\n #_00EFD3: BCS .no_mosaic_increment\n\n #_00EFD5: LDA.l $7EC011\n #_00EFD9: CLC\n #_00EFDA: ADC.b #$10\n #_00EFDC: STA.l $7EC011\n\n.no_mosaic_increment\n #_00EFE0: LDA.l $7EC007\n #_00EFE4: INC A\n #_00EFE5: STA.l $7EC007\n\n #_00EFE9: CMP.b #$1F\n #_00EFEB: BNE .skip\n\n #_00EFED: LDA.b #$00\n #_00EFEF: STA.l $7EC007\n\n #_00EFF3: INC.b $B0\n\n #_00EFF5: LDA.b #$F0\n #_00EFF7: STA.l $7EC011\n\n; ---------------------------------------------------------\n\n.skip\n #_00EFFB: SEP #$30\n\n #_00EFFD: LDA.b #$09\n #_00EFFF: STA.b $94\n\n #_00F001: LDA.l $7EC011\n #_00F005: ORA.b #$03\n #_00F007: STA.b $95\n\n #_00F009: INC.b $15\n\n #_00F00B: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_IsolateWhirlpoolBlue", + "code": "PaletteFilter_IsolateWhirlpoolBlue:\n #_00F00C: REP #$30\n\n #_00F00E: PHB\n #_00F00F: PHK\n #_00F010: PLB\n\n #_00F011: LDX.w #$0040\n\n.next_color_isolated\n #_00F014: LDA.l $7EC500,X\n #_00F018: TAY\n\n #_00F019: AND.w #$03E0\n #_00F01C: BEQ .no_green\n\n #_00F01E: TYA\n #_00F01F: SEC\n #_00F020: SBC.w #$0020\n #_00F023: TAY\n\n.no_green\n #_00F024: TYA\n #_00F025: AND.w #$001F\n #_00F028: BEQ .no_red\n\n #_00F02A: TYA\n #_00F02B: SEC\n #_00F02C: SBC.w #$0001\n #_00F02F: TAY\n\n.no_red\n #_00F030: TYA\n #_00F031: STA.l $7EC500,X\n\n #_00F035: INX\n #_00F036: INX\n #_00F037: CPX.w #$0200\n #_00F03A: BNE .next_color_isolated\n\n; ---------------------------------------------------------\n\n #_00F03C: LDA.l $7EC540\n #_00F040: STA.l $7EC500\n\n #_00F044: PLB\n\n #_00F045: SEP #$20\n\n #_00F047: JMP.w PaletteFilter_WhirlpoolBlue_no_mosaic_increment\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_WhirlpoolRestoreBlue", + "code": "PaletteFilter_WhirlpoolRestoreBlue:\n #_00F04A: LDA.b $1A\n #_00F04C: LSR A\n #_00F04D: BCC .skip\n\n #_00F04F: REP #$30\n\n #_00F051: PHB\n #_00F052: PHK\n #_00F053: PLB\n\n #_00F054: LDX.w #$0040\n\n.next_color\n #_00F057: LDA.l $7EC300,X\n #_00F05B: AND.w #$7C00\n #_00F05E: STA.b $00\n\n #_00F060: LDA.l $7EC500,X\n #_00F064: TAY\n\n #_00F065: AND.w #$7C00\n #_00F068: CMP.b $00\n #_00F06A: BEQ .blue_equal\n\n #_00F06C: TYA\n #_00F06D: SEC\n #_00F06E: SBC.w #$0400\n #_00F071: TAY\n\n.blue_equal\n #_00F072: TYA\n #_00F073: STA.l $7EC500,X\n\n #_00F077: INX\n #_00F078: INX\n #_00F079: CPX.w #$0200\n #_00F07C: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00F07E: LDA.l $7EC540\n #_00F082: STA.l $7EC500\n\n #_00F086: PLB\n\n #_00F087: SEP #$20\n\n #_00F089: LDA.l $7EC007\n #_00F08D: LSR A\n #_00F08E: BCS .no_mosaic_decrement\n\n #_00F090: LDA.l $7EC011\n #_00F094: BEQ .no_mosaic_decrement\n\n #_00F096: SEC\n #_00F097: SBC.b #$10\n #_00F099: STA.l $7EC011\n\n.no_mosaic_decrement\n #_00F09D: LDA.l $7EC007\n #_00F0A1: INC A\n #_00F0A2: STA.l $7EC007\n\n #_00F0A6: CMP.b #$1F\n #_00F0A8: BNE .skip\n\n #_00F0AA: LDA.b #$00\n #_00F0AC: STA.l $7EC007\n #_00F0B0: STA.l $7EC011\n\n #_00F0B4: INC.b $B0\n\n; ---------------------------------------------------------\n\n.skip\n #_00F0B6: SEP #$30\n\n #_00F0B8: LDA.b #$09\n #_00F0BA: STA.b $94\n\n #_00F0BC: LDA.l $7EC011\n #_00F0C0: ORA.b #$03\n #_00F0C2: STA.b $95\n\n #_00F0C4: INC.b $15\n\n #_00F0C6: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_WhirlpoolRestoreRedGreen", + "code": "PaletteFilter_WhirlpoolRestoreRedGreen:\n #_00F0C7: REP #$30\n\n #_00F0C9: PHB\n #_00F0CA: PHK\n #_00F0CB: PLB\n\n #_00F0CC: LDX.w #$0040\n\n.next_color\n #_00F0CF: LDA.l $7EC300,X\n #_00F0D3: AND.w #$03E0\n #_00F0D6: STA.b $00\n\n #_00F0D8: LDA.l $7EC300,X\n #_00F0DC: AND.w #$001F\n #_00F0DF: STA.b $02\n\n #_00F0E1: LDA.l $7EC500,X\n #_00F0E5: TAY\n\n #_00F0E6: AND.w #$03E0\n #_00F0E9: CMP.b $00\n #_00F0EB: BEQ .green_equal\n\n #_00F0ED: TYA\n #_00F0EE: CLC\n #_00F0EF: ADC.w #$0020\n #_00F0F2: TAY\n\n.green_equal\n #_00F0F3: TYA\n #_00F0F4: AND.w #$001F\n #_00F0F7: CMP.b $02\n #_00F0F9: BEQ .red_equal\n\n #_00F0FB: TYA\n #_00F0FC: CLC\n #_00F0FD: ADC.w #$0001\n #_00F100: TAY\n\n.red_equal\n #_00F101: TYA\n #_00F102: STA.l $7EC500,X\n\n #_00F106: INX\n #_00F107: INX\n #_00F108: CPX.w #$0200\n #_00F10B: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_00F10D: LDA.l $7EC540\n #_00F111: STA.l $7EC500\n\n #_00F115: PLB\n\n #_00F116: SEP #$20\n\n #_00F118: LDA.l $7EC007\n\n #_00F11C: INC A\n #_00F11D: STA.l $7EC007\n\n #_00F121: CMP.b #$1F\n #_00F123: BNE .still_going\n\n #_00F125: LDA.b #$00\n #_00F127: STA.l $7EC007\n\n #_00F12B: INC.b $B0\n\n.still_going\n #_00F12D: SEP #$30\n\n #_00F12F: INC.b $15\n\n #_00F131: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_RestoreBGSubstractiveStrict", + "code": "PaletteFilter_RestoreBGSubstractiveStrict:\n #_00F135: REP #$30\n\n #_00F137: LDA.l $7EC009\n #_00F13B: CMP.w #$00FF\n #_00F13E: BEQ EXIT_00F132\n\n #_00F140: PHB\n #_00F141: PHK\n #_00F142: PLB\n\n #_00F143: LDX.w #$0040\n #_00F146: LDA.w #$0100\n #_00F149: JSR PaletteFilter_RestoreSubtractive\n\n #_00F14C: PLB\n\n #_00F14D: LDA.l $7EC007\n #_00F151: INC A\n #_00F152: STA.l $7EC007\n\n #_00F156: CMP.w #$0020\n #_00F159: BNE .still_going\n\n #_00F15B: LDA.w #$00FF\n #_00F15E: STA.l $7EC009\n\n #_00F162: STZ.b $1D\n\n.still_going\n #_00F164: SEP #$30\n\n #_00F166: INC.b $15\n\n #_00F168: RTL", + "file": "bank_00.asm" + }, + { + "name": "PaletteFilter_RestoreBGAdditiveStrict", + "code": "PaletteFilter_RestoreBGAdditiveStrict:\n #_00F169: REP #$30\n\n #_00F16B: PHB\n #_00F16C: PHK\n #_00F16D: PLB\n\n #_00F16E: LDX.w #$0040\n #_00F171: LDA.w #$0100\n #_00F174: JSR PaletteFilter_RestoreAdditive\n\n #_00F177: PLB\n\n #_00F178: LDA.l $7EC007\n #_00F17C: INC A\n #_00F17D: STA.l $7EC007\n\n #_00F181: BRA PaletteFilter_RestoreBGSubstractiveStrict_still_going\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Trinexx_FlashShellPalette_Red", + "code": "Trinexx_FlashShellPalette_Red:\n #_00F183: LDA.w $04BE\n #_00F186: BNE TrinexxFilterRed_tick_timer\n\n #_00F188: REP #$20\n\n #_00F18A: LDX.b #$00\n\n.next_color\n #_00F18C: LDA.l $7EC582,X\n #_00F190: AND.w #$001F\n #_00F193: CMP.w #$001F\n #_00F196: BEQ .red_equal\n\n #_00F198: CLC\n #_00F199: ADC.w #$0001\n\n.red_equal\n #_00F19C: STA.b $00\n\n #_00F19E: LDA.l $7EC582,X\n #_00F1A2: AND.w #$FFE0\n #_00F1A5: ORA.b $00\n #_00F1A7: STA.l $7EC582,X\n\n #_00F1AB: INX\n #_00F1AC: INX\n #_00F1AD: CPX.b #$0E\n #_00F1AF: BNE .next_color\n\n; ---------------------------------------------------------\n\n#TrinexxFilterRed_continue:\n #_00F1B1: SEP #$20\n\n #_00F1B3: INC.b $15\n\n #_00F1B5: INC.w $04C0\n\n #_00F1B8: LDA.w $04C0\n #_00F1BB: CMP.b #$0C\n #_00F1BD: BCS .done\n\n #_00F1BF: LDA.b #$03\n #_00F1C1: STA.w $04BE\n\n; ---------------------------------------------------------\n\n#TrinexxFilterRed_tick_timer:\n #_00F1C4: DEC.w $04BE\n\n #_00F1C7: RTL", + "file": "bank_00.asm" + }, + { + "name": "Trinexx_UnflashShellPalette_Red", + "code": "Trinexx_UnflashShellPalette_Red:\n #_00F1CF: LDA.w $04BE\n #_00F1D2: BNE TrinexxFilterRed_tick_timer\n\n #_00F1D4: REP #$20\n\n #_00F1D6: LDX.b #$00\n\n.next_color\n #_00F1D8: LDA.l $7EC382,X\n #_00F1DC: AND.w #$001F\n #_00F1DF: STA.b $0C\n\n #_00F1E1: LDA.l $7EC582,X\n #_00F1E5: AND.w #$001F\n #_00F1E8: CMP.b $0C\n #_00F1EA: BEQ .red_equal\n\n #_00F1EC: SEC\n #_00F1ED: SBC.w #$0001\n\n.red_equal\n #_00F1F0: STA.b $00\n\n #_00F1F2: LDA.l $7EC582,X\n #_00F1F6: AND.w #$FFE0\n #_00F1F9: ORA.b $00\n #_00F1FB: STA.l $7EC582,X\n\n #_00F1FF: INX\n #_00F200: INX\n #_00F201: CPX.b #$0E\n #_00F203: BNE .next_color\n\n #_00F205: BRA TrinexxFilterRed_continue\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Trinexx_FlashShellPalette_Blue", + "code": "Trinexx_FlashShellPalette_Blue:\n #_00F207: LDA.w $04BF\n #_00F20A: BNE TrinexxFilterBlue_tick_timer\n\n #_00F20C: REP #$20\n\n #_00F20E: LDX.b #$00\n\n.next_color\n #_00F210: LDA.l $7EC582,X\n #_00F214: AND.w #$7C00\n #_00F217: CMP.w #$7C00\n #_00F21A: BEQ .blue_equal\n\n #_00F21C: CLC\n #_00F21D: ADC.w #$0400\n\n.blue_equal\n #_00F220: STA.b $00\n\n #_00F222: LDA.l $7EC582,X\n #_00F226: AND.w #$83FF\n #_00F229: ORA.b $00\n #_00F22B: STA.l $7EC582,X\n\n #_00F22F: INX\n #_00F230: INX\n #_00F231: CPX.b #$0E\n #_00F233: BNE .next_color\n\n; ---------------------------------------------------------\n\n#TrinexxFilterBlue_continue:\n #_00F235: SEP #$20\n\n #_00F237: INC.b $15\n\n #_00F239: INC.w $04C1\n\n #_00F23C: LDA.w $04C1\n #_00F23F: CMP.b #$0C\n #_00F241: BCS .done\n\n #_00F243: LDA.b #$03\n #_00F245: STA.w $04BF\n\n; ---------------------------------------------------------\n\n#TrinexxFilterBlue_tick_timer:\n #_00F248: DEC.w $04BF\n\n #_00F24B: RTL", + "file": "bank_00.asm" + }, + { + "name": "Trinexx_UnflashShellPalette_Blue", + "code": "Trinexx_UnflashShellPalette_Blue:\n #_00F253: LDA.w $04BF\n #_00F256: BNE TrinexxFilterBlue_tick_timer\n\n #_00F258: REP #$20\n\n #_00F25A: LDX.b #$00\n\n.next_color\n #_00F25C: LDA.l $7EC382,X\n #_00F260: AND.w #$7C00\n #_00F263: STA.b $0C\n\n #_00F265: LDA.l $7EC582,X\n #_00F269: AND.w #$7C00\n #_00F26C: CMP.b $0C\n #_00F26E: BEQ .blue_equal\n\n #_00F270: SEC\n #_00F271: SBC.w #$0400\n\n.blue_equal\n #_00F274: STA.b $00\n\n #_00F276: LDA.l $7EC582,X\n #_00F27A: AND.w #$83FF\n #_00F27D: ORA.b $00\n #_00F27F: STA.l $7EC582,X\n\n #_00F283: INX\n #_00F284: INX\n #_00F285: CPX.b #$0E\n #_00F287: BNE .next_color\n\n #_00F289: BRA TrinexxFilterBlue_continue\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "IrisSpotlight_close", + "code": "IrisSpotlight_close:\n #_00F28B: REP #$10\n\n #_00F28D: LDY.w #$0000\n #_00F290: LDX.w #$007E\n\n #_00F293: BRA .continue\n\n; =========================================================\n\n#IrisSpotlight_open:\n #_00F295: REP #$10\n\n #_00F297: LDY.w #$0002\n #_00F29A: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.continue\n #_00F29D: STY.w $067E\n\n #_00F2A0: STX.w $067C\n\n #_00F2A3: STZ.w HDMAEN\n\n #_00F2A6: LDX.w #$2641\n #_00F2A9: STX.w DMA6MODE\n #_00F2AC: STX.w DMA7MODE\n\n #_00F2AF: LDX.w #.hdma_table>>0\n #_00F2B2: STX.w DMA6ADDRL\n #_00F2B5: STX.w DMA7ADDRL\n\n #_00F2B8: LDA.b #.hdma_table>>16\n #_00F2BA: STA.w DMA6ADDRB\n #_00F2BD: STA.w DMA7ADDRB\n\n #_00F2C0: LDA.b #$00\n #_00F2C2: STA.w HDMA6INDIRECTB\n #_00F2C5: STA.w HDMA7INDIRECTB\n\n; ---------------------------------------------------------\n\n #_00F2C8: LDA.b #$33\n #_00F2CA: STA.b $96\n\n #_00F2CC: LDA.b #$03\n #_00F2CE: STA.b $97\n\n #_00F2D0: LDA.b #$33\n #_00F2D2: STA.b $98\n\n #_00F2D4: LDA.b $1C\n #_00F2D6: STA.b $1E\n\n #_00F2D8: LDA.b $1D\n #_00F2DA: STA.b $1F\n\n #_00F2DC: LDA.b $1B\n #_00F2DE: BNE .indoors\n\n #_00F2E0: LDA.b #$20 ; Fixed color RGB: #000000\n #_00F2E2: STA.b $9C\n\n #_00F2E4: LDA.b #$40\n #_00F2E6: STA.b $9D\n\n #_00F2E8: LDA.b #$80\n #_00F2EA: STA.b $9E\n\n; ---------------------------------------------------------\n\n.indoors\n #_00F2EC: SEP #$10\n\n #_00F2EE: JSL IrisSpotlight_ConfigureTable\n\n #_00F2F2: LDA.b #$80\n #_00F2F4: STA.b $9B\n\n #_00F2F6: LDA.b #$0F\n #_00F2F8: STA.b $13\n\n #_00F2FA: RTL", + "file": "bank_00.asm" + }, + { + "name": "IrisSpotlight_ConfigureTable", + "code": "IrisSpotlight_ConfigureTable:\n #_00F312: PHB\n #_00F313: PHK\n #_00F314: PLB\n\n #_00F315: REP #$30\n\n #_00F317: LDA.b $20\n #_00F319: SEC\n #_00F31A: SBC.b $E8\n\n #_00F31C: CLC\n #_00F31D: ADC.w #$000C\n #_00F320: STA.b $0E\n\n #_00F322: SEC\n #_00F323: SBC.w $067C\n #_00F326: STA.w $0674\n\n #_00F329: LDA.b $0E\n #_00F32B: CLC\n #_00F32C: ADC.w $067C\n #_00F32F: STA.w $0676\n\n; ---------------------------------------------------------\n\n #_00F332: LDA.b $22\n #_00F334: SEC\n #_00F335: SBC.b $E2\n\n #_00F337: CLC\n #_00F338: ADC.w #$0008\n #_00F33B: STA.w $0670\n\n #_00F33E: LDA.w $067C\n #_00F341: STA.w $067A\n\n #_00F344: LDA.b $0E\n #_00F346: ASL A\n #_00F347: STA.b $06\n\n; ---------------------------------------------------------\n\n #_00F349: CMP.w #$00E0\n #_00F34C: BCS .big_enough\n\n #_00F34E: LDA.w #$00E0\n #_00F351: STA.b $06\n\n.big_enough\n #_00F353: LDA.b $06\n #_00F355: SEC\n #_00F356: SBC.b $0E\n #_00F358: STA.b $0A\n\n #_00F35A: LDA.b $0E\n #_00F35C: SEC\n #_00F35D: SBC.b $0A\n #_00F35F: STA.b $04\n\n; ---------------------------------------------------------\n\n.next_check\n #_00F361: LDA.w #$00FF\n #_00F364: STA.b $08\n\n #_00F366: LDA.b $06\n #_00F368: CMP.w $0676\n #_00F36B: BCS .past_calced_size\n\n #_00F36D: LDA.w $067A\n #_00F370: BEQ .at_zero\n\n #_00F372: DEC.w $067A\n\n.at_zero\n #_00F375: JSR IrisSpotlight_CalculateCircleValue\n\n.past_calced_size\n #_00F378: LDA.b $04\n #_00F37A: ASL A\n #_00F37B: CMP.w #$01C0\n #_00F37E: BCS .skip_update_a\n\n #_00F380: TAX\n\n #_00F381: LDA.b $08\n #_00F383: STA.l $7F7000,X\n\n.skip_update_a\n #_00F387: LDA.b $06\n #_00F389: ASL A\n #_00F38A: CMP.w #$01C0\n #_00F38D: BCS .skip_update_b\n\n #_00F38F: TAX\n\n #_00F390: LDA.b $08\n #_00F392: STA.l $7F7000,X\n\n.skip_update_b\n #_00F396: LDA.b $0E\n #_00F398: CMP.b $04\n #_00F39A: BEQ .wait_for_scanline\n\n #_00F39C: INC.b $04\n\n #_00F39E: DEC.b $06\n\n #_00F3A0: JMP.w .next_check\n\n; ---------------------------------------------------------\n\n.wait_for_scanline\n #_00F3A3: LDA.w SLVH\n #_00F3A6: LDA.w STAT78\n\n #_00F3A9: LDA.w OPVCT\n #_00F3AC: AND.w #$00FF\n #_00F3AF: CMP.w #$00C0\n #_00F3B2: BCC .wait_for_scanline\n\n #_00F3B4: LDX.w #$0000\n\n.copy_table\n #_00F3B7: LDA.l $7F7000,X\n #_00F3BB: STA.w $1B00,X\n\n #_00F3BE: INX\n #_00F3BF: INX\n #_00F3C0: CPX.w #$01C0\n #_00F3C3: BCC .copy_table\n\n; ---------------------------------------------------------\n\n #_00F3C5: LDX.w $067E\n\n #_00F3C8: LDA.w $067C\n #_00F3CB: CLC\n #_00F3CC: ADC.w .delta,X\n #_00F3CF: STA.w $067C\n\n #_00F3D2: CMP.w .target,X\n #_00F3D5: BNE .exit\n\n #_00F3D7: SEP #$20\n\n #_00F3D9: LDA.w $067E\n #_00F3DC: BNE .reset_table\n\n #_00F3DE: LDA.b #$80\n #_00F3E0: STA.b $13\n #_00F3E2: STA.w INIDISP\n\n #_00F3E5: BRA .continue\n\n; ---------------------------------------------------------\n\n.reset_table\n #_00F3E7: JSL IrisSpotlight_ResetTable\n\n.continue\n #_00F3EB: SEP #$30\n\n #_00F3ED: STZ.b $B0\n #_00F3EF: STZ.b $11\n\n #_00F3F1: LDA.b $10\n #_00F3F3: CMP.b #$07\n #_00F3F5: BEQ .underworld\n\n #_00F3F7: CMP.b #$10\n #_00F3F9: BNE .not_opening\n\n.underworld\n #_00F3FB: LDA.b $1B\n #_00F3FD: BNE .check_music_command\n\n #_00F3FF: LDX.b $8A\n #_00F401: LDA.l $7F5B00,X\n #_00F405: LSR A\n #_00F406: LSR A\n #_00F407: LSR A\n #_00F408: LSR A\n #_00F409: STA.w $012D\n\n.check_music_command\n #_00F40C: LDA.w $0132\n #_00F40F: CMP.b #$FF ; SONG FF - transfer\n #_00F411: BEQ .not_opening\n\n #_00F413: STA.w $012C\n\n.not_opening\n #_00F416: LDA.w $010C\n #_00F419: STA.b $10\n\n #_00F41B: CMP.b #$06\n #_00F41D: BNE .exit\n\n #_00F41F: JSL Sprite_ResetAll\n\n.exit\n #_00F423: SEP #$30\n\n #_00F425: PLB\n\n #_00F426: RTL", + "file": "bank_00.asm" + }, + { + "name": "IrisSpotlight_ResetTable", + "code": "IrisSpotlight_ResetTable:\n #_00F427: REP #$30\n\n #_00F429: LDX.w #$003E\n #_00F42C: LDA.w #$FF00\n\n.next\n #_00F42F: STA.w $1B00,X\n #_00F432: STA.w $1B40,X\n #_00F435: STA.w $1B80,X\n #_00F438: STA.w $1BC0,X\n #_00F43B: STA.w $1C00,X\n #_00F43E: STA.w $1C40,X\n #_00F441: STA.w $1C80,X\n\n #_00F444: DEX\n #_00F445: DEX\n #_00F446: BPL .next\n\n #_00F448: SEP #$30\n\n #_00F44A: RTL", + "file": "bank_00.asm" + }, + { + "name": "IrisSpotlight_CalculateCircleValue", + "code": "IrisSpotlight_CalculateCircleValue:\n #_00F4CC: SEP #$30\n\n #_00F4CE: STA.w WRDIVH\n #_00F4D1: STZ.w WRDIVL\n\n #_00F4D4: LDA.w $067C\n #_00F4D7: STA.w WRDIVB\n\n #_00F4DA: NOP\n #_00F4DB: NOP\n #_00F4DC: NOP\n #_00F4DD: NOP\n #_00F4DE: NOP\n #_00F4DF: NOP\n\n #_00F4E0: REP #$20\n\n #_00F4E2: LDA.w RDDIV\n #_00F4E5: LSR A\n\n #_00F4E6: SEP #$20\n\n #_00F4E8: TAX\n\n #_00F4E9: LDY.w .multiplicand,X\n #_00F4EC: STY.b $0A\n #_00F4EE: STY.w WRMPYA\n\n #_00F4F1: LDA.w $067C\n #_00F4F4: STA.w WRMPYB\n\n #_00F4F7: NOP\n #_00F4F8: NOP\n\n #_00F4F9: STZ.b $01\n #_00F4FB: STZ.b $0B\n\n #_00F4FD: LDA.w RDMPYH\n #_00F500: STA.b $00\n\n #_00F502: REP #$30\n\n #_00F504: ASL.b $00\n #_00F506: LDA.b $0A\n #_00F508: BEQ .exit\n\n #_00F50A: LDA.b $00\n #_00F50C: CLC\n #_00F50D: ADC.w $0670\n #_00F510: STA.b $02\n\n #_00F512: LDA.w $0670\n #_00F515: SEC\n #_00F516: SBC.b $00\n\n #_00F518: STZ.b $00\n\n #_00F51A: BMI .positive\n\n #_00F51C: BIT.w #$FF00\n #_00F51F: BEQ .zero_high_a\n\n #_00F521: LDA.w #$00FF\n\n.zero_high_a\n #_00F524: STA.b $00\n\n.positive\n #_00F526: LDA.b $02\n #_00F528: BIT.w #$FF00\n #_00F52B: BEQ .zero_high_b\n\n #_00F52D: LDA.w #$00FF\n\n.zero_high_b\n #_00F530: XBA\n #_00F531: ORA.b $00\n #_00F533: CMP.w #$FFFF\n #_00F536: BNE .keep\n\n #_00F538: LDA.w #$00FF\n\n.keep\n #_00F53B: STA.b $08\n\n.exit\n #_00F53D: RTS", + "file": "bank_00.asm" + }, + { + "name": "OrientLampLightCone", + "code": "OrientLampLightCone:\n #_00F567: LDA.w $0458\n #_00F56A: BEQ EXIT_00F566\n\n #_00F56C: LDA.b $11\n #_00F56E: CMP.b #$14\n #_00F570: BEQ EXIT_00F566\n\n #_00F572: REP #$30\n\n #_00F574: LDA.b $2F\n #_00F576: AND.w #$00FF\n #_00F579: STA.b $00\n\n #_00F57B: TAX\n\n #_00F57C: LDA.b $6C\n #_00F57E: AND.w #$00FF\n #_00F581: BEQ .not_in_doorway\n\n #_00F583: AND.w #$00FE\n #_00F586: ASL A\n #_00F587: TAX\n #_00F588: BEQ .vertical_doorway\n\n #_00F58A: LDA.b $00\n #_00F58C: CMP.w #$0004\n #_00F58F: BCS .facing_horizontal\n\n #_00F591: LDA.b $22\n #_00F593: CLC\n #_00F594: ADC.w #$0008\n #_00F597: AND.w #$00FF\n\n #_00F59A: BRA .doorway_continue\n\n.facing_horizontal\n #_00F59C: TAX\n\n #_00F59D: BRA .not_in_doorway\n\n; ---------------------------------------------------------\n\n.vertical_doorway\n #_00F59F: LDA.b $00\n #_00F5A1: CMP.w #$0004\n #_00F5A4: BCC .facing_horizontal\n\n #_00F5A6: LDA.b $20\n #_00F5A8: AND.w #$00FF\n\n; ---------------------------------------------------------\n\n.doorway_continue\n #_00F5AB: CMP.w #$0080\n #_00F5AE: BCC .not_in_doorway\n\n #_00F5B0: INX\n #_00F5B1: INX\n\n.not_in_doorway\n #_00F5B2: CPX.w #$0004\n #_00F5B5: BCS OrientHorizontalLampCone\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "OrientVerticalLampCone", + "code": "OrientVerticalLampCone:\n #_00F5B7: LDA.b $22\n #_00F5B9: SEC\n #_00F5BA: SBC.w #$0077\n #_00F5BD: STA.b $00\n\n #_00F5BF: LDA.b $E2\n #_00F5C1: SEC\n #_00F5C2: SBC.b $00\n\n #_00F5C4: CLC\n #_00F5C5: ADC.l .horizontal,X\n #_00F5C9: STA.b $E0\n\n #_00F5CB: LDA.b $20\n #_00F5CD: SEC\n #_00F5CE: SBC.w #$0058\n #_00F5D1: STA.b $00\n\n; ---------------------------------------------------------\n\n #_00F5D3: LDA.b $E8\n #_00F5D5: SEC\n #_00F5D6: SBC.b $00\n\n #_00F5D8: CLC\n #_00F5D9: ADC.l .vertical,X\n\n #_00F5DD: CLC\n #_00F5DE: ADC.l .adjust,X\n\n #_00F5E2: CLC\n #_00F5E3: ADC.l .margin,X\n\n #_00F5E7: BPL .lower_in_bounds\n\n #_00F5E9: LDA.w #$0000\n\n.lower_in_bounds\n #_00F5EC: CMP.l .max,X\n #_00F5F0: BCC .upper_in_bounds\n\n #_00F5F2: LDA.l .max,X\n\n.upper_in_bounds\n #_00F5F6: SEC\n #_00F5F7: SBC.l .margin,X\n #_00F5FB: STA.b $E6\n\n #_00F5FD: SEP #$30\n\n #_00F5FF: RTL", + "file": "bank_00.asm" + }, + { + "name": "OrientHorizontalLampCone", + "code": "OrientHorizontalLampCone:\n #_00F600: LDA.b $20\n #_00F602: SEC\n #_00F603: SBC.w #$0072\n #_00F606: STA.b $00\n\n #_00F608: LDA.b $E8\n #_00F60A: SEC\n #_00F60B: SBC.b $00\n\n #_00F60D: CLC\n #_00F60E: ADC.l .vertical,X\n #_00F612: STA.b $E6\n\n #_00F614: LDA.b $22\n #_00F616: SEC\n #_00F617: SBC.w #$0058\n #_00F61A: STA.b $00\n\n; ---------------------------------------------------------\n\n #_00F61C: LDA.b $E2\n #_00F61E: SEC\n #_00F61F: SBC.b $00\n\n #_00F621: CLC\n #_00F622: ADC.l .horizontal,X\n\n #_00F626: CLC\n #_00F627: ADC.l .adjust,X\n\n #_00F62B: CLC\n #_00F62C: ADC.l .margin,X\n\n #_00F630: BPL .lower_in_bounds\n\n #_00F632: LDA.w #$0000\n\n.lower_in_bounds\n #_00F635: CMP.l .max,X\n #_00F639: BCC .upper_in_bounds\n\n #_00F63B: LDA.l .max,X\n\n.upper_in_bounds\n #_00F63F: SEC\n #_00F640: SBC.l .margin,X\n #_00F644: STA.b $E0\n\n #_00F646: SEP #$30\n\n #_00F648: RTL", + "file": "bank_00.asm" + }, + { + "name": "AdjustWaterHDMAWindow", + "code": "AdjustWaterHDMAWindow:\n #_00F649: REP #$30\n\n #_00F64B: LDA.w $0682\n #_00F64E: SEC\n #_00F64F: SBC.b $E8\n #_00F651: STA.b $0A\n\n #_00F653: SEC\n #_00F654: SBC.w $0684\n #_00F657: STA.w $0674\n\n #_00F65A: LDA.b $0A\n #_00F65C: CLC\n #_00F65D: ADC.w $0684\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "AdjustWaterHDMAWindow_Horizontal", + "code": "AdjustWaterHDMAWindow_Horizontal:\n #_00F660: STA.w $0676\n\n #_00F663: LDA.w $0680\n #_00F666: SEC\n #_00F667: SBC.b $E2\n #_00F669: STA.w $0670\n\n #_00F66C: LDA.w $0686\n #_00F66F: BEQ .horizontal_zero\n\n #_00F671: DEC A\n\n.horizontal_zero\n #_00F672: STA.b $0C\n\n #_00F674: CLC\n #_00F675: ADC.w $0670\n #_00F678: STA.b $02\n\n #_00F67A: LDA.w $0670\n #_00F67D: SEC\n #_00F67E: SBC.b $0C\n #_00F680: STA.b $00\n\n #_00F682: LDY.w #$0000\n #_00F685: BMI .positive_a\n\n #_00F687: TAY\n\n #_00F688: AND.w #$FF00\n #_00F68B: BEQ .positive_a\n\n #_00F68D: LDY.w #$00FF\n\n.positive_a\n #_00F690: TYA\n #_00F691: AND.w #$00FF\n #_00F694: STA.b $00\n\n #_00F696: LDA.b $02\n #_00F698: TAY\n\n #_00F699: AND.w #$FF00\n #_00F69C: BEQ .positive_b\n\n #_00F69E: LDY.w #$00FF\n\n.positive_b\n #_00F6A1: TYA\n #_00F6A2: AND.w #$00FF\n #_00F6A5: XBA\n #_00F6A6: ORA.b $00\n #_00F6A8: STA.b $0C\n\n #_00F6AA: LDA.b $0A\n #_00F6AC: ASL A\n #_00F6AD: STA.b $06\n\n #_00F6AF: CMP.w #$00E0\n #_00F6B2: BCS .not_too_far\n\n #_00F6B4: LDA.w #$00E0\n #_00F6B7: STA.b $06\n\n.not_too_far\n #_00F6B9: LDA.b $06\n #_00F6BB: SEC\n #_00F6BC: SBC.b $0A\n #_00F6BE: STA.b $08\n\n #_00F6C0: LDA.b $0A\n #_00F6C2: SEC\n #_00F6C3: SBC.b $08\n #_00F6C5: STA.b $04\n\n #_00F6C7: BRA .start\n\n; ---------------------------------------------------------\n\n.next\n #_00F6C9: INC.b $04\n\n #_00F6CB: DEC.b $06\n\n.start\n #_00F6CD: LDA.b $04\n #_00F6CF: BMI .dont_add_to_hdma_y\n\n #_00F6D1: LDA.w $0674\n #_00F6D4: BMI .no_new_line_y\n\n #_00F6D6: LDA.b $04\n #_00F6D8: CMP.w $0674\n #_00F6DB: BCS .no_new_line_y\n\n #_00F6DD: ASL A\n #_00F6DE: TAX\n\n #_00F6DF: LDA.w #$00FF\n\n #_00F6E2: BRA .check_for_entry_y\n\n.no_new_line_y\n #_00F6E4: LDA.b $04\n #_00F6E6: ASL A\n #_00F6E7: TAX\n\n #_00F6E8: LDA.b $0C\n\n.check_for_entry_y\n #_00F6EA: CPX.w #$01C0\n #_00F6ED: BCS .dont_add_to_hdma_y\n\n #_00F6EF: CMP.w #$FFFF\n #_00F6F2: BNE .not_end_y\n\n #_00F6F4: LDA.w #$00FF\n\n.not_end_y\n #_00F6F7: STA.w $1B00,X\n\n.dont_add_to_hdma_y\n #_00F6FA: LDA.b $06\n #_00F6FC: CMP.w $0676\n #_00F6FF: BCC .no_new_line_x\n\n #_00F701: ASL A\n #_00F702: TAX\n\n #_00F703: LDA.w #$00FF\n #_00F706: BRA .check_for_entry_x\n\n.no_new_line_x\n #_00F708: CMP.w #$00E1\n #_00F70B: BCC .dont_change_boundary_x\n\n #_00F70D: LDA.w $0678\n #_00F710: BEQ .dont_change_boundary_x\n\n #_00F712: DEC.w $0678\n\n.dont_change_boundary_x\n #_00F715: LDA.b $06\n #_00F717: ASL A\n #_00F718: TAX\n\n #_00F719: LDA.b $0C\n\n.check_for_entry_x\n #_00F71B: CPX.w #$01C0\n #_00F71E: BCS .dont_add_to_hdma_x\n\n #_00F720: CMP.w #$FFFF\n #_00F723: BNE .not_end_x\n\n #_00F725: LDA.w #$00FF\n\n.not_end_x\n #_00F728: STA.w $1B00,X\n\n.dont_add_to_hdma_x\n #_00F72B: LDA.b $0A\n #_00F72D: CMP.b $04\n #_00F72F: BNE .next\n\n #_00F731: SEP #$30\n\n #_00F733: RTL", + "file": "bank_00.asm" + }, + { + "name": "FloodDam_PrepFloodHDMA", + "code": "FloodDam_PrepFloodHDMA:\n #_00F734: REP #$30\n\n #_00F736: STZ.b $04\n\n #_00F738: LDA.w $0682\n #_00F73B: SEC\n #_00F73C: SBC.b $E8\n #_00F73E: STA.w $0674\n\n #_00F741: LDA.w $0680\n #_00F744: SEC\n #_00F745: SBC.b $E2\n #_00F747: STA.w $0670\n\n #_00F74A: LDA.w $0686\n #_00F74D: EOR.w #$0001\n #_00F750: STA.b $0E\n\n #_00F752: CLC\n #_00F753: ADC.w $0670\n #_00F756: STA.b $02\n\n #_00F758: LDA.w $0670\n #_00F75B: SEC\n #_00F75C: SBC.b $0E\n #_00F75E: AND.w #$00FF\n #_00F761: STA.b $00\n\n #_00F763: LDA.b $02\n #_00F765: AND.w #$00FF\n #_00F768: XBA\n #_00F769: ORA.b $00\n #_00F76B: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next_a\n #_00F76D: LDA.b $04\n #_00F76F: ASL A\n #_00F770: TAX\n\n #_00F771: LDA.w #$FF00\n #_00F774: STA.w $1B00,X\n\n #_00F777: INC.b $04\n\n #_00F779: LDA.b $04\n #_00F77B: CMP.w $0676\n #_00F77E: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_00F780: LDA.b $0E\n #_00F782: SEC\n #_00F783: SBC.w #$0007\n #_00F786: CLC\n #_00F787: ADC.w #$0008\n #_00F78A: STA.b $0C\n\n #_00F78C: CLC\n #_00F78D: ADC.w $0670\n #_00F790: STA.b $02\n\n #_00F792: LDA.w $0670\n #_00F795: SEC\n #_00F796: SBC.b $0C\n #_00F798: AND.w #$00FF\n #_00F79B: STA.b $00\n\n #_00F79D: LDA.b $02\n #_00F79F: AND.w #$00FF\n #_00F7A2: XBA\n #_00F7A3: ORA.b $00\n #_00F7A5: STA.b $0C\n\n #_00F7A7: LDA.w $0676\n #_00F7AA: CLC\n #_00F7AB: ADC.w $0684\n #_00F7AE: EOR.w #$0001\n #_00F7B1: STA.b $0A\n\n; ---------------------------------------------------------\n\n.next_b\n #_00F7B3: LDA.b $04\n #_00F7B5: CMP.b $0A\n #_00F7B7: BCC .shift_in_bounds\n\n #_00F7B9: ASL A\n #_00F7BA: TAX\n\n #_00F7BB: LDA.w #$00FF\n\n #_00F7BE: BRA .continue\n\n.shift_in_bounds\n #_00F7C0: ASL A\n\n #_00F7C1: TAX\n #_00F7C2: CPX.w #$01C0\n #_00F7C5: BCS .shift_in_bounds\n\n #_00F7C7: LDA.b $0C\n\n.continue\n #_00F7C9: CMP.w #$FFFF\n #_00F7CC: BNE .not_neg1\n\n #_00F7CE: LDA.w #$00FF\n\n.not_neg1\n #_00F7D1: STA.w $1B00,X\n\n #_00F7D4: INC.b $04\n\n #_00F7D6: LDA.b $04\n #_00F7D8: CMP.w #$00E1\n #_00F7DB: BCC .next_b\n\n #_00F7DD: SEP #$30\n\n #_00F7DF: RTL", + "file": "bank_00.asm" + }, + { + "name": "NULL_00F7E0", + "code": "NULL_00F7E0:\n #_00F7E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_00F7F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Module0E_Interface", + "code": "Module0E_Interface:\n #_00F800: LDA.b $1B\n #_00F802: BEQ .outdoors\n\n #_00F804: LDA.b $11\n #_00F806: CMP.b #$03\n #_00F808: BNE .not_dungeon_map\n\n #_00F80A: LDA.w $0200\n #_00F80D: BEQ .continue\n\n #_00F80F: CMP.b #$07\n #_00F811: BEQ .continue\n\n #_00F813: BRA .skip_core\n\n; ---------------------------------------------------------\n\n.not_dungeon_map\n #_00F815: JSL PushBlock_Handler\n\n #_00F819: BRA .continue\n\n; ---------------------------------------------------------\n\n.outdoors\n #_00F81B: LDA.b $11\n #_00F81D: CMP.b #$07\n #_00F81F: BEQ .overworld_map\n\n #_00F821: CMP.b #$0A ; duck\n #_00F823: BNE .continue\n\n.overworld_map\n #_00F825: LDA.w $0200\n #_00F828: BNE .skip_core\n\n; ---------------------------------------------------------\n\n.continue\n #_00F82A: JSL Sprite_Main\n #_00F82E: JSL LinkOAM_Main\n\n #_00F832: LDA.b $1B\n #_00F834: BNE .indoors\n\n #_00F836: JSL OverworldOverlay_HandleRain\n\n.indoors\n #_00F83A: JSL RefillLogic_long\n\n #_00F83E: LDA.b $11\n #_00F840: CMP.b #$02\n #_00F842: BEQ .skip_core\n\n #_00F844: JSL OrientLampLightCone\n\n; ---------------------------------------------------------\n\n.skip_core\n #_00F848: SEP #$30\n\n #_00F84A: JSL RunInterface\n\n #_00F84E: REP #$21\n\n #_00F850: LDA.b $E2\n #_00F852: ADC.w $011A\n #_00F855: STA.w $011E\n\n #_00F858: LDA.b $E8\n #_00F85A: CLC\n #_00F85B: ADC.w $011C\n #_00F85E: STA.w $0122\n\n #_00F861: LDA.b $E0\n #_00F863: CLC\n #_00F864: ADC.w $011A\n #_00F867: STA.w $0120\n\n #_00F86A: LDA.b $E6\n #_00F86C: CLC\n #_00F86D: ADC.w $011C\n #_00F870: STA.w $0124\n\n #_00F873: SEP #$20\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Module0E_00_Nothing", + "code": "Module0E_00_Nothing:\n #_00F875: RTL", + "file": "bank_00.asm" + }, + { + "name": "RunInterface", + "code": "RunInterface:\n #_00F89A: LDX.b $11\n\n #_00F89C: LDA.l .low,X\n #_00F8A0: STA.b $00\n\n #_00F8A2: LDA.l .high,X\n #_00F8A6: STA.b $01\n\n #_00F8A8: LDA.l .bank,X\n #_00F8AC: STA.b $02\n\n #_00F8AE: JML.w [$0000]\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Module0E_05_DesertPrayer", + "code": "Module0E_05_DesertPrayer:\n #_00F8B1: LDA.b $B0\n #_00F8B3: JSL JumpTableLong\n #_00F8B7: dl ResetTransitionPropsAndAdvance_ResetInterface_long\n #_00F8BA: dl ApplyPaletteFilter\n #_00F8BD: dl DesertPrayer_InitializeCutscene\n #_00F8C0: dl DesertPrayer_FadeScene\n #_00F8C3: dl DesertPrayer_WaitForInput\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DesertPrayer_InitializeCutscene", + "code": "DesertPrayer_InitializeCutscene:\n #_00F8C6: JSL DesertPrayer_InitializeIrisHDMA\n\n #_00F8CA: LDA.l $7EC00B\n #_00F8CE: DEC A\n #_00F8CF: STA.l $7EC007\n\n #_00F8D3: LDA.b #$00\n #_00F8D5: STA.l $7EC00B\n\n #_00F8D9: LDA.b #$02\n #_00F8DB: STA.l $7EC009\n\n #_00F8DF: RTL", + "file": "bank_00.asm" + }, + { + "name": "DesertPrayer_FadeScene", + "code": "DesertPrayer_FadeScene:\n #_00F8E0: JSL ApplyPaletteFilter\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "DesertPrayer_WaitForInput", + "code": "DesertPrayer_WaitForInput:\n #_00F8E4: JSL DesertPrayer_BuildIrisHDMATable\n\n #_00F8E8: RTL", + "file": "bank_00.asm" + }, + { + "name": "Module0E_06_Unused", + "code": "Module0E_06_Unused:\n #_00F8E9: LDA.b $B0\n #_00F8EB: JSL JumpTableLong\n #_00F8EF: dl ResetTransitionPropsAndAdvance_ResetInterface_long\n #_00F8F2: dl ApplyPaletteFilter\n #_00F8F5: dl Underworld_HandleTranslucencyAndPalettes_long\n #_00F8F8: dl UnusedInterfacePaletteRecovery_long\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Module0E_04_RedPotion", + "code": "Module0E_04_RedPotion:\n #_00F8FB: JSL AnimatedRefill_Health\n #_00F8FF: BCC .exit\n\n; =========================================================\n\n#Module0E_Interface_RestoreModeFromPotion:\n #_00F901: LDA.b $3A\n #_00F903: AND.b #$BF\n #_00F905: STA.b $3A\n\n #_00F907: INC.b $16\n\n #_00F909: STZ.b $11\n\n #_00F90B: LDA.w $010C\n #_00F90E: STA.b $10\n\n.exit\n #_00F910: RTL", + "file": "bank_00.asm" + }, + { + "name": "Module0E_08_GreenPotion", + "code": "Module0E_08_GreenPotion:\n #_00F911: JSL AnimatedRefill_Magic\n #_00F915: BCS Module0E_Interface_RestoreModeFromPotion\n\n #_00F917: RTL", + "file": "bank_00.asm" + }, + { + "name": "Module0E_09_BluePotion", + "code": "Module0E_09_BluePotion:\n #_00F918: JSL AnimatedRefill_Health\n #_00F91C: BCC .health_full\n\n #_00F91E: LDA.b #$08\n #_00F920: STA.b $11\n\n.health_full\n #_00F922: JSL AnimatedRefill_Magic\n #_00F926: BCC .magic_full\n\n #_00F928: LDA.b #$04\n #_00F92A: STA.b $11\n\n.magic_full\n #_00F92C: RTL", + "file": "bank_00.asm" + }, + { + "name": "PrepareDungeonExitFromBossFight", + "code": "PrepareDungeonExitFromBossFight:\n #_00F945: JSL SaveDeathCount\n #_00F949: JSL SaveDungeonKeys\n\n #_00F94D: LDA.w $0403\n #_00F950: ORA.b #$80\n #_00F952: STA.w $0403\n\n #_00F955: JSL Underworld_FlagRoomData_Quadrants\n\n #_00F959: LDX.b #$0C\n\n #_00F95B: LDA.b $A0\n\n.check_next\n #_00F95D: DEX\n\n #_00F95E: CMP.l .boss_room,X\n #_00F962: BNE .check_next\n\n #_00F964: LDA.l .exit_room,X\n #_00F968: STA.b $A0\n\n #_00F96A: CMP.b #$20\n #_00F96C: BNE .not_aga1\n\n; ---------------------------------------------------------\n\n #_00F96E: LDA.b #$03\n #_00F970: STA.l $7EF3C5\n\n #_00F974: LDA.l $7EF282\n #_00F978: ORA.b #$20\n #_00F97A: STA.l $7EF282\n\n #_00F97E: LDA.l $7EF3CA\n #_00F982: EOR.b #$40\n #_00F984: STA.l $7EF3CA\n\n #_00F988: JSL Sprite_LoadGraphicsProperties_light_world_only\n #_00F98C: JSL Ancilla_TerminateSelectInteractives\n\n #_00F990: STZ.w $037B\n\n #_00F993: STZ.b $3C\n #_00F995: STZ.b $3A\n\n #_00F997: STZ.w $03EF\n\n #_00F99A: LDA.b #$01\n #_00F99C: STA.w $02E4\n\n #_00F99F: LDA.b #$08\n #_00F9A1: STA.w $010C\n\n #_00F9A4: LDA.b #$15\n #_00F9A6: STA.b $10\n\n #_00F9A8: STZ.b $11\n #_00F9AA: STZ.b $B0\n\n #_00F9AC: RTL", + "file": "bank_00.asm" + }, + { + "name": "SaveDeathCount", + "code": "SaveDeathCount:\n #_00F9DD: PHX\n\n #_00F9DE: REP #$20\n\n #_00F9E0: LDX.w $040C\n\n #_00F9E3: LDA.l $7EF403\n #_00F9E7: STA.l $7EF3E7,X\n\n #_00F9EB: CPX.b #$08 ; DUNGEON 08\n #_00F9ED: BEQ .aga_tower\n\n #_00F9EF: LDA.w #$0000\n #_00F9F2: STA.l $7EF403\n\n.aga_tower\n #_00F9F6: SEP #$20\n #_00F9F8: PLX\n\n #_00F9F9: RTL", + "file": "bank_00.asm" + }, + { + "name": "Module0E_0B_SaveMenu", + "code": "Module0E_0B_SaveMenu:\n #_00F9FA: LDA.b $1B\n #_00F9FC: BNE .indoors\n\n #_00F9FE: JSL FlashGanonTowerPalette\n\n.indoors\n #_00FA02: JSL RenderText\n\n #_00FA06: STZ.b $16\n #_00FA08: STZ.w $0710\n\n #_00FA0B: LDA.b $B0\n #_00FA0D: CMP.b #$03\n #_00FA0F: BCS .done_text_sub\n\n #_00FA11: INC.b $B0\n\n #_00FA13: BRA .continue\n\n.done_text_sub\n #_00FA15: STZ.b $14\n\n.continue\n #_00FA17: LDA.b $11\n #_00FA19: BNE .exit\n\n #_00FA1B: STZ.b $B0\n\n #_00FA1D: LDA.b #$01\n #_00FA1F: STA.b $14\n\n #_00FA21: LDA.w $1CE8\n #_00FA24: BEQ .dont_save\n\n #_00FA26: LDA.b #$0F ; SFX1.0F\n #_00FA28: STA.w $012D\n\n #_00FA2B: LDA.b #$17\n #_00FA2D: STA.b $10\n\n #_00FA2F: LDA.b #$01\n #_00FA31: STA.b $11\n\n #_00FA33: STZ.w $05FC\n #_00FA36: STZ.w $05FD\n\n #_00FA39: RTL", + "file": "bank_00.asm" + }, + { + "name": "Sprite_LoadGraphicsProperties", + "code": "Sprite_LoadGraphicsProperties:\n #_00FC41: PHB\n #_00FC42: PHK\n #_00FC43: PLB\n\n #_00FC44: REP #$30\n\n #_00FC46: LDY.w #$00FE\n #_00FC49: LDX.w #$003E\n\n.next_a\n #_00FC4C: LDA.w .sprite_set,Y\n #_00FC4F: STA.l $7EFD00,X\n\n #_00FC53: LDA.w .palette,Y\n #_00FC56: STA.l $7EFD80,X\n\n #_00FC5A: DEY\n #_00FC5B: DEY\n\n #_00FC5C: DEX\n #_00FC5D: DEX\n #_00FC5E: BPL .next_a\n\n #_00FC60: BRA .continue\n\n; =========================================================\n\n#Sprite_LoadGraphicsProperties_light_world_only:\n #_00FC62: PHB\n #_00FC63: PHK\n #_00FC64: PLB\n\n #_00FC65: REP #$30\n\n.continue\n #_00FC67: LDY.w #$003E\n\n #_00FC6A: LDA.l $7EF3C5\n #_00FC6E: AND.w #$00FF\n #_00FC71: CMP.w #$0002\n #_00FC74: BCC .start_lw\n\n #_00FC76: LDY.w #$007E\n #_00FC79: CMP.w #$0003\n #_00FC7C: BNE .start_lw\n\n #_00FC7E: LDY.w #$00BE\n\n; ---------------------------------------------------------\n\n.start_lw\n #_00FC81: LDX.w #$003E\n\n.next_b\n #_00FC84: LDA.w .sprite_set,Y\n #_00FC87: STA.l $7EFCC0,X\n\n #_00FC8B: LDA.w .palette,Y\n #_00FC8E: STA.l $7EFD40,X\n\n #_00FC92: DEY\n #_00FC93: DEY\n\n #_00FC94: DEX\n #_00FC95: DEX\n #_00FC96: BPL .next_b\n\n; ---------------------------------------------------------\n\n #_00FC98: SEP #$30\n\n #_00FC9A: PLB\n\n #_00FC9B: RTL", + "file": "bank_00.asm" + }, + { + "name": "GFXAA2ValsOW", + "code": "GFXAA2ValsOW:\n #_00FC9C: db $21, $21, $21, $22, $22, $22, $22, $22\n #_00FCA4: db $21, $21, $21, $22, $22, $22, $22, $27\n #_00FCAC: db $23, $23, $20, $29, $29, $20, $29, $29\n #_00FCB4: db $23, $23, $20, $24, $24, $27, $25, $25\n #_00FCBC: db $23, $23, $23, $24, $24, $20, $25, $25\n #_00FCC4: db $23, $2A, $21, $20, $20, $27, $20, $25\n #_00FCCC: db $2B, $2B, $20, $27, $27, $27, $27, $27\n #_00FCD4: db $2B, $2B, $20, $27, $27, $27, $27, $27\n #_00FCDC: db $3E, $3E, $3E, $41, $41, $41, $41, $3C\n #_00FCE4: db $3E, $3E, $3E, $41, $41, $41, $41, $40\n #_00FCEC: db $3F, $3F, $30, $40, $40, $30, $40, $30\n #_00FCF4: db $3F, $3F, $30, $3B, $3B, $40, $3D, $3D\n #_00FCFC: db $3F, $3F, $3F, $3B, $3B, $30, $3D, $3D\n #_00FD04: db $3F, $3F, $30, $30, $30, $40, $30, $3D\n #_00FD0C: db $42, $42, $30, $40, $40, $42, $42, $40\n #_00FD14: db $42, $42, $30, $40, $40, $42, $42, $30\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "OverworldPalettesScreenToSet", + "code": "OverworldPalettesScreenToSet:\n #_00FD1C: db $06, $06, $08, $07, $07, $07, $07, $07\n #_00FD24: db $06, $06, $08, $07, $07, $07, $07, $04\n #_00FD2C: db $08, $08, $00, $01, $01, $00, $09, $00\n #_00FD34: db $08, $08, $00, $02, $02, $04, $09, $09\n #_00FD3C: db $08, $08, $08, $02, $02, $00, $09, $09\n #_00FD44: db $08, $08, $01, $00, $00, $04, $00, $09\n #_00FD4C: db $09, $00, $00, $04, $04, $04, $04, $04\n #_00FD54: db $09, $09, $00, $04, $04, $04, $04, $04\n #_00FD5C: db $1B, $1B, $1E, $17, $17, $17, $17, $18\n #_00FD64: db $1B, $1B, $1E, $17, $17, $17, $17, $1D\n #_00FD6C: db $1E, $1E, $10, $1E, $1E, $10, $1E, $10\n #_00FD74: db $1E, $1E, $10, $12, $12, $10, $1A, $1A\n #_00FD7C: db $1E, $1E, $1E, $12, $12, $10, $1A, $1A\n #_00FD84: db $1E, $10, $12, $10, $10, $1D, $10, $1A\n #_00FD8C: db $1C, $1C, $10, $1D, $1D, $1C, $1C, $1D\n #_00FD94: db $1C, $1C, $10, $1D, $1D, $1C, $1C, $10\n #_00FD9C: db $0A, $0A, $0A, $0A, $02, $02, $02, $0A\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "ResetStarTileGraphics", + "code": "ResetStarTileGraphics:\n #_00FDA4: STZ.w $04BC\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "ToggleStarTileGraphics", + "code": "ToggleStarTileGraphics:\n #_00FDA7: REP #$10\n\n #_00FDA9: LDX.w #$0000\n #_00FDAC: LDY.w #$0020\n\n #_00FDAF: LDA.w $04BC\n #_00FDB2: BEQ .already_zero\n\n #_00FDB4: TYX\n #_00FDB5: LDY.w #$0000\n\n.already_zero\n #_00FDB8: STY.b $0E\n\n #_00FDBA: PHB\n\n #_00FDBB: LDA.b #$7F\n #_00FDBD: PHA\n #_00FDBE: PLB\n\n; ---------------------------------------------------------\n\n #_00FDBF: REP #$20\n\n #_00FDC1: LDY.w #$0000\n\n.next_a\n #_00FDC4: LDA.l $7EBDC0,X\n #_00FDC8: STA.w $7F0000,Y\n\n #_00FDCB: INX\n #_00FDCC: INX\n\n #_00FDCD: INY\n #_00FDCE: INY\n\n #_00FDCF: CPY.w #$0020\n #_00FDD2: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_00FDD4: LDX.b $0E\n\n.next_b\n #_00FDD6: LDA.l $7EBDC0,X\n #_00FDDA: STA.w $7F0000,Y\n\n #_00FDDD: INX\n #_00FDDE: INX\n\n #_00FDDF: INY\n #_00FDE0: INY\n\n #_00FDE1: CPY.w #$0040\n #_00FDE4: BNE .next_b\n\n; ---------------------------------------------------------\n\n #_00FDE6: SEP #$30\n\n #_00FDE8: PLB\n\n #_00FDE9: LDA.b #$18\n #_00FDEB: STA.b $17\n\n #_00FDED: RTL", + "file": "bank_00.asm" + }, + { + "name": "InitializeMirrorHDMA", + "code": "InitializeMirrorHDMA:\n #_00FDEE: STZ.b $9B\n\n #_00FDF0: REP #$20\n\n #_00FDF2: STZ.w $06A0\n #_00FDF5: STZ.w $06AC\n #_00FDF8: STZ.w $06AA\n #_00FDFB: STZ.w $06AE\n #_00FDFE: STZ.w $06B0\n\n #_00FE01: LDA.w #$0008\n #_00FE04: STA.w $06B4\n #_00FE07: STA.w $06B6\n\n #_00FE0A: LDA.w #$0015\n #_00FE0D: STA.w $06B2\n\n #_00FE10: LDA.w #$FFC0\n #_00FE13: STA.w $06A6\n\n #_00FE16: LDA.w #$0040\n #_00FE19: STA.w $06A8\n\n #_00FE1C: LDA.w #$FE00\n #_00FE1F: STA.w $06A2\n\n #_00FE22: LDA.w #$0200\n #_00FE25: STA.w $06A4\n\n #_00FE28: STZ.w $06AC\n #_00FE2B: STZ.w $06AE\n\n #_00FE2E: LDA.w #$0F42\n #_00FE31: STA.w DMA7MODE\n\n #_00FE34: LDA.w #$0D42\n #_00FE37: STA.w DMA6MODE\n\n #_00FE3A: LDX.b #$3E\n\n #_00FE3C: LDA.b $E2\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "InitializeHDMATable", + "code": "InitializeHDMATable:\n.next\n #_00FE3E: STA.w $1B00,X\n #_00FE41: STA.w $1B40,X\n #_00FE44: STA.w $1B80,X\n #_00FE47: STA.w $1BC0,X\n #_00FE4A: STA.w $1C00,X\n #_00FE4D: STA.w $1C40,X\n #_00FE50: STA.w $1C80,X\n\n #_00FE53: DEX\n #_00FE54: DEX\n #_00FE55: BPL .next\n\n #_00FE57: SEP #$20\n\n #_00FE59: LDA.b #$C0\n #_00FE5B: STA.b $9B\n\n; ---------------------------------------------------------\n\n#EXIT_00FE5D:\n #_00FE5D: RTL", + "file": "bank_00.asm" + }, + { + "name": "MirrorWarp_BuildAndEnableHDMATable", + "code": "MirrorWarp_BuildAndEnableHDMATable:\n #_00FE5E: INC.b $B0\n\n #_00FE60: LDA.b #$C0\n #_00FE62: STA.b $9B\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "MirrorWarp_BuildWavingHDMATable", + "code": "MirrorWarp_BuildWavingHDMATable:\n #_00FE64: JSL MirrorWarp_RunAnimationSubmodules\n\n #_00FE68: LDA.b $1A\n #_00FE6A: LSR A\n #_00FE6B: BCS EXIT_00FE5D\n\n #_00FE6D: REP #$30\n\n #_00FE6F: LDX.w #$01A0\n #_00FE72: LDY.w #$01B0\n\n #_00FE75: LDA.w #$0002\n #_00FE78: STA.b $00\n\n #_00FE7A: LDA.w #$0003\n #_00FE7D: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_00FE7F: LDA.w $1B00,X\n #_00FE82: STA.w $1B00,Y\n #_00FE85: STA.w $1B04,Y\n #_00FE88: STA.w $1B08,Y\n #_00FE8B: STA.w $1B0C,Y\n\n #_00FE8E: TXA\n #_00FE8F: SEC\n #_00FE90: SBC.w #$0010\n #_00FE93: TAX\n\n #_00FE94: DEC.b $00\n #_00FE96: BNE .dont_reset_a\n\n #_00FE98: LDA.w #$0008\n #_00FE9B: STA.b $00\n\n.dont_reset_a\n #_00FE9D: TYA\n #_00FE9E: SEC\n #_00FE9F: SBC.w #$0010\n #_00FEA2: TAY\n\n #_00FEA3: DEC.b $02\n #_00FEA5: BNE .dont_reset_b\n\n #_00FEA7: LDA.w #$0008\n #_00FEAA: STA.b $02\n\n.dont_reset_b\n #_00FEAC: CPY.w #$0000\n #_00FEAF: BNE .next\n\n; ---------------------------------------------------------\n\n #_00FEB1: LDX.w $06A0\n\n #_00FEB4: LDA.w $06AC\n #_00FEB7: CLC\n #_00FEB8: ADC.w $06A6,X\n #_00FEBB: PHA\n\n #_00FEBC: SEC\n #_00FEBD: SBC.w $06A2,X\n #_00FEC0: EOR.w $06A2,X\n #_00FEC3: BMI .negative\n\n #_00FEC5: STZ.w $06AA\n #_00FEC8: STZ.w $06AE\n\n #_00FECB: LDA.w $06A0\n #_00FECE: EOR.w #$0002\n #_00FED1: STA.w $06A0\n\n #_00FED4: PLA\n #_00FED5: LDA.w $06A2,X\n\n #_00FED8: PHA\n\n.negative\n #_00FED9: PLA\n #_00FEDA: STA.w $06AC\n\n #_00FEDD: CLC\n #_00FEDE: ADC.w $06AE\n #_00FEE1: PHA\n\n #_00FEE2: AND.w #$00FF\n #_00FEE5: STA.w $06AE\n\n; ---------------------------------------------------------\n\n #_00FEE8: PLA\n #_00FEE9: BPL .positive\n\n #_00FEEB: ORA.w #$00FF\n #_00FEEE: BRA .continue_with_sign\n\n.positive\n #_00FEF0: AND.w #$FF00\n\n.continue_with_sign\n #_00FEF3: XBA\n #_00FEF4: CLC\n #_00FEF5: ADC.w $06AA\n #_00FEF8: STA.w $06AA\n\n #_00FEFB: TAX\n\n #_00FEFC: LDA.l $7EC007\n #_00FF00: CMP.w #$0030\n #_00FF03: BCC .dont_advance\n\n #_00FF05: TXA\n #_00FF06: AND.w #$FFF8\n #_00FF09: BNE .dont_advance\n\n #_00FF0B: LDA.w #$FF00\n #_00FF0E: STA.w $06A2\n\n #_00FF11: LDA.w #$0100\n #_00FF14: STA.w $06A4\n\n #_00FF17: LDX.w #$0000\n\n #_00FF1A: INC.b $B0\n\n; ---------------------------------------------------------\n\n.dont_advance\n #_00FF1C: TXA\n #_00FF1D: CLC\n #_00FF1E: ADC.b $E2\n #_00FF20: STA.w $1B00\n #_00FF23: STA.w $1B04\n #_00FF26: STA.w $1B08\n #_00FF29: STA.w $1B0C\n\n #_00FF2C: SEP #$30\n\n; ---------------------------------------------------------\n\n#EXIT_00FF2E:\n #_00FF2E: RTL", + "file": "bank_00.asm" + }, + { + "name": "MirrorWarp_BuildDewavingHDMATable", + "code": "MirrorWarp_BuildDewavingHDMATable:\n #_00FF2F: JSL MirrorWarp_RunAnimationSubmodules\n\n #_00FF33: LDA.b $1A\n #_00FF35: LSR A\n #_00FF36: BCS EXIT_00FF2E\n\n #_00FF38: REP #$30\n\n #_00FF3A: LDX.w #$01A0\n #_00FF3D: LDY.w #$01B0\n\n #_00FF40: LDA.w #$0002\n #_00FF43: STA.b $00\n\n #_00FF45: LDA.w #$0003\n #_00FF48: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_00FF4A: LDA.w $1B00,X\n #_00FF4D: STA.w $1B00,Y\n #_00FF50: STA.w $1B04,Y\n #_00FF53: STA.w $1B08,Y\n #_00FF56: STA.w $1B0C,Y\n\n #_00FF59: TXA\n #_00FF5A: SEC\n #_00FF5B: SBC.w #$0010\n #_00FF5E: TAX\n\n #_00FF5F: DEC.b $00\n #_00FF61: BNE .dont_reset_a\n\n #_00FF63: LDA.w #$0008\n #_00FF66: STA.b $00\n\n.dont_reset_a\n #_00FF68: TYA\n #_00FF69: SEC\n #_00FF6A: SBC.w #$0010\n #_00FF6D: TAY\n\n #_00FF6E: DEC.b $02\n #_00FF70: BNE .dont_reset_b\n\n #_00FF72: LDA.w #$0008\n #_00FF75: STA.b $02\n\n.dont_reset_b\n #_00FF77: CPY.w #$0000\n #_00FF7A: BNE .next\n\n; ---------------------------------------------------------\n\n #_00FF7C: LDA.w $1C80\n #_00FF7F: ORA.w $1C90\n #_00FF82: ORA.w $1CA0\n #_00FF85: ORA.w $1CB0\n\n #_00FF88: CMP.b $E2\n #_00FF8A: BNE .exit\n\n #_00FF8C: SEP #$20\n\n #_00FF8E: STZ.b $9B\n\n #_00FF90: INC.b $B0\n\n #_00FF92: JSL Overworld_SetFixedColAndScroll\n\n #_00FF96: LDA.b $8A\n #_00FF98: AND.b #$3F\n #_00FF9A: CMP.b #$1B ; OW 1B, OW 5B\n #_00FF9C: BEQ .exit\n\n #_00FF9E: REP #$20\n\n #_00FFA0: LDA.b $E2\n #_00FFA2: STA.b $E0\n #_00FFA4: STA.w $0120\n #_00FFA7: STA.w $011E\n\n #_00FFAA: LDA.b $E8\n #_00FFAC: STA.b $E6\n #_00FFAE: STA.w $0122\n #_00FFB1: STA.w $0124\n\n.exit\n #_00FFB4: SEP #$30\n\n #_00FFB6: RTL", + "file": "bank_00.asm" + }, + { + "name": "NULL_00FFB7", + "code": "NULL_00FFB7:\n #_00FFB7: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_00.asm" + }, + { + "name": "Message_Data", + "code": "Message_Data:\n\n; =========================================================\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0000", + "code": "Message_0000:\n#_1C8000: db $7F ; end of message\n\n; =========================================================\n; >\n;\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0001", + "code": "Message_0001:\n#_1C8001: db $7A, $00 ; set draw speed\n#_1C8003: db $76 ; line 3\n#_1C8004: db $88, $8A ; [ ][ ]\n#_1C8006: db $75 ; line 2\n#_1C8007: db $88, $44 ; [ ]>\n#_1C8009: db $68 ; choose 2 indented\n#_1C800A: db $7F ; end of message\n\n; =========================================================\n;\n; >\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0002", + "code": "Message_0002:\n#_1C800B: db $7A, $00 ; set draw speed\n#_1C800D: db $75 ; line 2\n#_1C800E: db $88, $8A ; [ ][ ]\n#_1C8010: db $76 ; line 3\n#_1C8011: db $88, $44 ; [ ]>\n#_1C8013: db $68 ; choose 2 indented\n#_1C8014: db $7F ; end of message\n\n; =========================================================\n; Save And Continue\n; Save And Quit\n; Do Not Save And Continue\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0003", + "code": "Message_0003:\n#_1C8015: db $7A, $00 ; set draw speed\n#_1C8017: db $12, $1A, $2F, $1E, $59, $00, $27, $1D ; Save\u23b5And\n#_1C801F: db $59, $02, $C7, $2D, $B4, $2E, $1E ; \u23b5C[on]t[in]ue\n#_1C8026: db $75 ; line 2\n#_1C8027: db $12, $1A, $2F, $1E, $59, $00, $27, $1D ; Save\u23b5And\n#_1C802F: db $59, $10, $2E, $B6 ; \u23b5Qu[it]\n#_1C8033: db $76 ; line 3\n#_1C8034: db $03, $28, $59, $0D, $28, $2D, $59, $12 ; Do\u23b5Not\u23b5S\n#_1C803C: db $1A, $2F, $1E, $59, $00, $27, $1D, $59 ; ave\u23b5And\u23b5\n#_1C8044: db $02, $C7, $2D, $B4, $2E, $1E ; C[on]t[in]ue\n#_1C804A: db $7F ; end of message\n\n; =========================================================\n; 0- [#0]. 1- [#1]\n; 2- [#2]. 3- [#3]\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0004", + "code": "Message_0004:\n#_1C804B: db $7A, $00 ; set draw speed\n#_1C804D: db $34, $40, $59, $6C, $00, $41, $59, $35 ; 0-\u23b5[#0].\u23b51\n#_1C8055: db $40, $59, $6C, $01 ; -\u23b5[#1]\n#_1C8059: db $75 ; line 2\n#_1C805A: db $36, $40, $59, $6C, $02, $41, $59, $37 ; 2-\u23b5[#2].\u23b53\n#_1C8062: db $40, $59, $6C, $03 ; -\u23b5[#3]\n#_1C8066: db $7F ; end of message\n\n; =========================================================\n; You can't enter with something\n; following you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0005", + "code": "Message_0005:\n#_1C8067: db $E8, $59, $1C, $93, $51, $2D, $59, $A3 ; [You]\u23b5c[an]'t\u23b5[ent]\n#_1C806F: db $A1, $DE, $59, $CF, $D5, $20 ; [er ][with]\u23b5[some][thin]g\n#_1C8075: db $75 ; line 2\n#_1C8076: db $1F, $28, $25, $BB, $E2, $27, $20, $59 ; fol[lo][wi]ng\u23b5\n#_1C807E: db $E3, $41 ; [you].\n#_1C8080: db $7F ; end of message\n\n; =========================================================\n; >\n;\n;\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0006", + "code": "Message_0006:\n#_1C8081: db $7A, $00 ; set draw speed\n#_1C8083: db $74 ; line 1\n#_1C8084: db $44 ; >\n#_1C8085: db $75 ; line 2\n#_1C8086: db $8A ; [ ]\n#_1C8087: db $76 ; line 3\n#_1C8088: db $8A ; [ ]\n#_1C8089: db $71 ; choose 3\n#_1C808A: db $7F ; end of message\n\n; =========================================================\n;\n; >\n;\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0007", + "code": "Message_0007:\n#_1C808B: db $7A, $00 ; set draw speed\n#_1C808D: db $74 ; line 1\n#_1C808E: db $8A ; [ ]\n#_1C808F: db $75 ; line 2\n#_1C8090: db $44 ; >\n#_1C8091: db $76 ; line 3\n#_1C8092: db $8A ; [ ]\n#_1C8093: db $71 ; choose 3\n#_1C8094: db $7F ; end of message\n\n; =========================================================\n;\n;\n; >\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0008", + "code": "Message_0008:\n#_1C8095: db $7A, $00 ; set draw speed\n#_1C8097: db $74 ; line 1\n#_1C8098: db $8A ; [ ]\n#_1C8099: db $75 ; line 2\n#_1C809A: db $8A ; [ ]\n#_1C809B: db $76 ; line 3\n#_1C809C: db $44 ; >\n#_1C809D: db $71 ; choose 3\n#_1C809E: db $7F ; end of message\n\n; =========================================================\n; >\n;\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0009", + "code": "Message_0009:\n#_1C809F: db $7A, $00 ; set draw speed\n#_1C80A1: db $74 ; line 1\n#_1C80A2: db $44 ; >\n#_1C80A3: db $75 ; line 2\n#_1C80A4: db $8A ; [ ]\n#_1C80A5: db $72 ; choose 2 high\n#_1C80A6: db $7F ; end of message\n\n; =========================================================\n;\n; >\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000A", + "code": "Message_000A:\n#_1C80A7: db $7A, $00 ; set draw speed\n#_1C80A9: db $74 ; line 1\n#_1C80AA: db $8A ; [ ]\n#_1C80AB: db $75 ; line 2\n#_1C80AC: db $44 ; >\n#_1C80AD: db $72 ; choose 2 high\n#_1C80AE: db $7F ; end of message\n\n; =========================================================\n;\n; >\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000B", + "code": "Message_000B:\n#_1C80AF: db $7A, $00 ; set draw speed\n#_1C80B1: db $76 ; line 3\n#_1C80B2: db $88 ; [ ]\n#_1C80B3: db $75 ; line 2\n#_1C80B4: db $8A, $44 ; [ ]>\n#_1C80B6: db $6F ; choose 2 low\n#_1C80B7: db $7F ; end of message\n\n; =========================================================\n;\n; >\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000C", + "code": "Message_000C:\n#_1C80B8: db $7A, $00 ; set draw speed\n#_1C80BA: db $75 ; line 2\n#_1C80BB: db $88 ; [ ]\n#_1C80BC: db $76 ; line 3\n#_1C80BD: db $8A, $44 ; [ ]>\n#_1C80BF: db $6F ; choose 2 low\n#_1C80C0: db $7F ; end of message\n\n; =========================================================\n; [LINK], I'm going out for a\n; while. I'll be back by morning.\n; Don't leave the house.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000D", + "code": "Message_000D:\n#_1C80C1: db $6A, $42, $59, $08, $51, $26, $59, $AC ; [LINK],\u23b5I'm\u23b5[go]\n#_1C80C9: db $B3, $C5, $A8, $59, $1A ; [ing ][out ][for]\u23b5a\n#_1C80CE: db $75 ; line 2\n#_1C80CF: db $E1, $22, $25, $1E, $41, $8A, $08, $51 ; [wh]ile.[ ]I'\n#_1C80D7: db $25, $25, $59, $97, $59, $96, $9C, $59 ; ll\u23b5[be]\u23b5[ba][ck]\u23b5\n#_1C80DF: db $1B, $32, $59, $26, $C8, $27, $B4, $20 ; by\u23b5m[or]n[in]g\n#_1C80E7: db $41 ; .\n#_1C80E8: db $76 ; line 3\n#_1C80E9: db $03, $C7, $51, $2D, $59, $25, $1E, $1A ; D[on]'t\u23b5lea\n#_1C80F1: db $2F, $1E, $59, $D8, $59, $21, $28, $2E ; ve\u23b5[the]\u23b5hou\n#_1C80F9: db $D0, $41 ; [se].\n#_1C80FB: db $7F ; end of message\n\n; =========================================================\n; Unnh\u2026 [LINK], I didn't want\n; you involved in this\u2026 I told\n; you not to leave the house\u2026\n; Take my sword and shield and\n; listen. You can focus power in\n; the blade (hold the \u24b7 Button).\n; \u2026Then release it using the\n; secret technique handed down\n; by our people\u2026\n; [LINK], you can do it!\n; Save the Princess\u2026\n; Zelda is your\u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000E", + "code": "Message_000E:\n#_1C80FC: db $14, $27, $27, $21, $43, $59, $6A, $42 ; Unnh\u2026\u23b5[LINK],\n#_1C8104: db $59, $08, $59, $9E, $1D, $C0, $DF, $27 ; \u23b5I\u23b5[di]d[n't ][wa]n\n#_1C810C: db $2D ; t\n#_1C810D: db $75 ; line 2\n#_1C810E: db $E3, $59, $B4, $2F, $28, $25, $2F, $A4 ; [you]\u23b5[in]volv[ed ]\n#_1C8116: db $B4, $59, $D9, $2C, $43, $8A, $08, $59 ; [in]\u23b5[thi]s\u2026[ ]I\u23b5\n#_1C811E: db $DA, $25, $1D ; [to]ld\n#_1C8121: db $76 ; line 3\n#_1C8122: db $E3, $59, $C2, $59, $DA, $59, $25, $1E ; [you]\u23b5[not]\u23b5[to]\u23b5le\n#_1C812A: db $1A, $2F, $1E, $59, $D8, $59, $21, $28 ; ave\u23b5[the]\u23b5ho\n#_1C8132: db $2E, $D0, $43 ; u[se]\u2026\n#_1C8135: db $7E ; wait for key\n#_1C8136: db $73 ; scroll text\n#_1C8137: db $13, $1A, $24, $1E, $59, $26, $32, $59 ; Take\u23b5my\u23b5\n#_1C813F: db $2C, $30, $C8, $1D, $59, $8C, $D1, $22 ; sw[or]d\u23b5[and ][sh]i\n#_1C8147: db $1E, $25, $1D, $59, $90 ; eld\u23b5[and]\n#_1C814C: db $73 ; scroll text\n#_1C814D: db $25, $B5, $2D, $A5, $41, $8A, $E8, $59 ; l[is]t[en].[ ][You]\u23b5\n#_1C8155: db $99, $1F, $28, $1C, $2E, $2C, $59, $CB ; [can ]focus\u23b5[pow]\n#_1C815D: db $A1, $B4 ; [er ][in]\n#_1C815F: db $73 ; scroll text\n#_1C8160: db $D8, $59, $1B, $BA, $1D, $1E, $59, $45 ; [the]\u23b5b[la]de\u23b5(\n#_1C8168: db $21, $28, $25, $1D, $59, $D8, $59, $5C ; hold\u23b5[the]\u23b5\u24b7\n#_1C8170: db $59, $01, $2E, $2D, $DA, $27, $46, $41 ; \u23b5But[to]n).\n#_1C8178: db $7E ; wait for key\n#_1C8179: db $73 ; scroll text\n#_1C817A: db $43, $E6, $27, $59, $CE, $25, $1E, $1A ; \u2026[The]n\u23b5[re]lea\n#_1C8182: db $D0, $59, $B6, $59, $2E, $2C, $B3, $D8 ; [se]\u23b5[it]\u23b5us[ing ][the]\n#_1C818A: db $73 ; scroll text\n#_1C818B: db $D0, $1C, $CE, $2D, $59, $2D, $1E, $1C ; [se]c[re]t\u23b5tec\n#_1C8193: db $21, $27, $22, $2A, $2E, $1E, $59, $B1 ; hnique\u23b5[ha]\n#_1C819B: db $27, $1D, $A4, $9F, $30, $27 ; nd[ed ][do]wn\n#_1C81A1: db $73 ; scroll text\n#_1C81A2: db $1B, $32, $59, $28, $2E, $2B, $59, $29 ; by\u23b5our\u23b5p\n#_1C81AA: db $1E, $28, $CA, $43 ; eo[ple]\u2026\n#_1C81AE: db $7E ; wait for key\n#_1C81AF: db $73 ; scroll text\n#_1C81B0: db $6A, $42, $59, $E3, $59, $99, $9F, $59 ; [LINK],\u23b5[you]\u23b5[can ][do]\u23b5\n#_1C81B8: db $B6, $3E ; [it]!\n#_1C81BA: db $73 ; scroll text\n#_1C81BB: db $12, $1A, $2F, $1E, $59, $D8, $59, $0F ; Save\u23b5[the]\u23b5P\n#_1C81C3: db $2B, $B4, $1C, $1E, $2C, $2C, $43 ; r[in]cess\u2026\n#_1C81CA: db $73 ; scroll text\n#_1C81CB: db $19, $1E, $25, $1D, $1A, $59, $B5, $59 ; Zelda\u23b5[is]\u23b5\n#_1C81D3: db $E3, $2B, $43, $59, $43, $59, $43 ; [you]r\u2026\u23b5\u2026\u23b5\u2026\n#_1C81DA: db $7F ; end of message\n\n; =========================================================\n; What're you doing up this late,\n; kid? You can stay up when\n; you're grown up! Now go home!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_000F", + "code": "Message_000F:\n#_1C81DB: db $16, $B1, $2D, $51, $CD, $E3, $59, $9F ; W[ha]t'[re ][you]\u23b5[do]\n#_1C81E3: db $B3, $DC, $59, $D9, $2C, $59, $BA, $2D ; [ing ][up]\u23b5[thi]s\u23b5[la]t\n#_1C81EB: db $1E, $42 ; e,\n#_1C81ED: db $75 ; line 2\n#_1C81EE: db $24, $22, $1D, $3F, $8A, $E8, $59, $99 ; kid?[ ][You]\u23b5[can ]\n#_1C81F6: db $D3, $1A, $32, $59, $DC, $59, $E1, $A5 ; [st]ay\u23b5[up]\u23b5[wh][en]\n#_1C81FE: db $76 ; line 3\n#_1C81FF: db $E3, $51, $CD, $20, $2B, $28, $30, $27 ; [you]'[re ]grown\n#_1C8207: db $59, $DC, $3E, $8A, $0D, $28, $30, $59 ; \u23b5[up]![ ]Now\u23b5\n#_1C820F: db $AC, $59, $21, $28, $BE, $3E ; [go]\u23b5ho[me]!\n#_1C8215: db $7F ; end of message\n\n; =========================================================\n; I see you brought a map so you\n; don't get lost. (Press the\n; \u24e7 Button to see your map).\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0010", + "code": "Message_0010:\n#_1C8216: db $08, $59, $D0, $1E, $59, $E3, $59, $1B ; I\u23b5[se]e\u23b5[you]\u23b5b\n#_1C821E: db $2B, $28, $2E, $20, $21, $2D, $59, $1A ; rought\u23b5a\n#_1C8226: db $59, $BD, $29, $59, $D2, $59, $E3 ; \u23b5[ma]p\u23b5[so]\u23b5[you]\n#_1C822D: db $75 ; line 2\n#_1C822E: db $9F, $C0, $AB, $59, $BB, $D3, $41, $8A ; [do][n't ][get]\u23b5[lo][st].[ ]\n#_1C8236: db $45, $0F, $CE, $2C, $2C, $59, $D8 ; (P[re]ss\u23b5[the]\n#_1C823D: db $76 ; line 3\n#_1C823E: db $5D, $59, $01, $2E, $2D, $DA, $27, $59 ; \u24e7\u23b5But[to]n\u23b5\n#_1C8246: db $DA, $59, $D0, $1E, $59, $E3, $2B, $59 ; [to]\u23b5[se]e\u23b5[you]r\u23b5\n#_1C824E: db $BD, $29, $46, $41 ; [ma]p).\n#_1C8252: db $7F ; end of message\n\n; =========================================================\n; You look strong for a kid. How\n; much can you lift? (Press the\n; \u24b6 Button while touching a thing\n; to lift it.)\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0011", + "code": "Message_0011:\n#_1C8253: db $E8, $59, $BB, $28, $24, $59, $D3, $2B ; [You]\u23b5[lo]ok\u23b5[st]r\n#_1C825B: db $C7, $20, $59, $A8, $59, $1A, $59, $24 ; [on]g\u23b5[for]\u23b5a\u23b5k\n#_1C8263: db $22, $1D, $41, $8A, $07, $28, $30 ; id.[ ]How\n#_1C826A: db $75 ; line 2\n#_1C826B: db $BF, $1C, $21, $59, $99, $E3, $59, $25 ; [mu]ch\u23b5[can ][you]\u23b5l\n#_1C8273: db $22, $1F, $2D, $3F, $8A, $45, $0F, $CE ; ift?[ ](P[re]\n#_1C827B: db $2C, $2C, $59, $D8 ; ss\u23b5[the]\n#_1C827F: db $76 ; line 3\n#_1C8280: db $5B, $59, $01, $2E, $2D, $DA, $27, $59 ; \u24b6\u23b5But[to]n\u23b5\n#_1C8288: db $E1, $22, $25, $1E, $59, $DA, $2E, $1C ; [wh]ile\u23b5[to]uc\n#_1C8290: db $B0, $27, $20, $59, $1A, $59, $D5, $20 ; [hi]ng\u23b5a\u23b5[thin]g\n#_1C8298: db $7E ; wait for key\n#_1C8299: db $73 ; scroll text\n#_1C829A: db $DA, $59, $25, $22, $1F, $2D, $59, $B6 ; [to]\u23b5lift\u23b5[it]\n#_1C82A2: db $41, $46 ; .)\n#_1C82A4: db $7F ; end of message\n\n; =========================================================\n; I'll bet you can't wait until you\n; are old enough to use a sword!\n; (Press the \u24b7 Button to use\n; your sword when you get it.)\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0012", + "code": "Message_0012:\n#_1C82A5: db $08, $51, $25, $25, $59, $97, $2D, $59 ; I'll\u23b5[be]t\u23b5\n#_1C82AD: db $E3, $59, $1C, $93, $51, $2D, $59, $DF ; [you]\u23b5c[an]'t\u23b5[wa]\n#_1C82B5: db $B6, $59, $2E, $27, $2D, $22, $25, $59 ; [it]\u23b5until\u23b5\n#_1C82BD: db $E3 ; [you]\n#_1C82BE: db $75 ; line 2\n#_1C82BF: db $8D, $28, $25, $1D, $59, $A5, $28, $2E ; [are ]old\u23b5[en]ou\n#_1C82C7: db $20, $21, $59, $DA, $59, $2E, $D0, $59 ; gh\u23b5[to]\u23b5u[se]\u23b5\n#_1C82CF: db $1A, $59, $2C, $30, $C8, $1D, $3E ; a\u23b5sw[or]d!\n#_1C82D6: db $76 ; line 3\n#_1C82D7: db $45, $0F, $CE, $2C, $2C, $59, $D8, $59 ; (P[re]ss\u23b5[the]\u23b5\n#_1C82DF: db $5C, $59, $01, $2E, $2D, $DA, $27, $59 ; \u24b7\u23b5But[to]n\u23b5\n#_1C82E7: db $DA, $59, $2E, $D0 ; [to]\u23b5u[se]\n#_1C82EB: db $7E ; wait for key\n#_1C82EC: db $73 ; scroll text\n#_1C82ED: db $E3, $2B, $59, $2C, $30, $C8, $1D, $59 ; [you]r\u23b5sw[or]d\u23b5\n#_1C82F5: db $E1, $A0, $E3, $59, $AB, $59, $B6, $41 ; [wh][en ][you]\u23b5[get]\u23b5[it].\n#_1C82FD: db $46 ; )\n#_1C82FE: db $7F ; end of message\n\n; =========================================================\n; That mark on your map must be\n; your destination.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0013", + "code": "Message_0013:\n#_1C82FF: db $E5, $2D, $59, $BD, $2B, $24, $59, $C7 ; [Tha]t\u23b5[ma]rk\u23b5[on]\n#_1C8307: db $59, $E3, $2B, $59, $BD, $29, $59, $BF ; \u23b5[you]r\u23b5[ma]p\u23b5[mu]\n#_1C830F: db $D3, $59, $97 ; [st]\u23b5[be]\n#_1C8312: db $75 ; line 2\n#_1C8313: db $E3, $2B, $59, $9D, $2D, $B4, $94, $22 ; [you]r\u23b5[des]t[in][at]i\n#_1C831B: db $C7, $41 ; [on].\n#_1C831D: db $7F ; end of message\n\n; =========================================================\n; You can often find valuables\n; in chests. (Press the \u24b6\n; Button in front of a chest to\n; open it.)\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0014", + "code": "Message_0014:\n#_1C831E: db $E8, $59, $99, $C6, $2D, $A0, $1F, $B4 ; [You]\u23b5[can ][of]t[en ]f[in]\n#_1C8326: db $1D, $59, $2F, $1A, $25, $2E, $1A, $95 ; d\u23b5valua[ble]\n#_1C832E: db $2C ; s\n#_1C832F: db $75 ; line 2\n#_1C8330: db $B4, $59, $9A, $D3, $2C, $41, $8A, $45 ; [in]\u23b5[che][st]s.[ ](\n#_1C8338: db $0F, $CE, $2C, $2C, $59, $D8, $59, $5B ; P[re]ss\u23b5[the]\u23b5\u24b6\n#_1C8340: db $76 ; line 3\n#_1C8341: db $01, $2E, $2D, $DA, $27, $59, $B4, $59 ; But[to]n\u23b5[in]\u23b5\n#_1C8349: db $A9, $27, $2D, $59, $C6, $59, $1A, $59 ; [fro]nt\u23b5[of]\u23b5a\u23b5\n#_1C8351: db $9A, $D3, $59, $DA ; [che][st]\u23b5[to]\n#_1C8355: db $7E ; wait for key\n#_1C8356: db $73 ; scroll text\n#_1C8357: db $C3, $59, $B6, $41, $46 ; [open]\u23b5[it].)\n#_1C835C: db $7F ; end of message\n\n; =========================================================\n; Us soldiers have been around,\n; kid. You can learn a lot from\n; us. But you already know that!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0015", + "code": "Message_0015:\n#_1C835D: db $14, $2C, $59, $D2, $25, $9E, $A6, $2C ; Us\u23b5[so]l[di][er]s\n#_1C8365: db $59, $AD, $59, $97, $A0, $1A, $2B, $C4 ; \u23b5[have]\u23b5[be][en ]ar[ound]\n#_1C836D: db $42 ; ,\n#_1C836E: db $75 ; line 2\n#_1C836F: db $24, $22, $1D, $41, $8A, $E8, $59, $99 ; kid.[ ][You]\u23b5[can ]\n#_1C8377: db $25, $A2, $27, $59, $1A, $59, $BB, $2D ; l[ear]n\u23b5a\u23b5[lo]t\n#_1C837F: db $59, $A9, $26 ; \u23b5[fro]m\n#_1C8382: db $76 ; line 3\n#_1C8383: db $2E, $2C, $41, $8A, $01, $2E, $2D, $59 ; us.[ ]But\u23b5\n#_1C838B: db $E3, $59, $1A, $25, $CE, $1A, $1D, $32 ; [you]\u23b5al[re]ady\n#_1C8393: db $59, $B8, $59, $D7, $2D, $3E ; \u23b5[know]\u23b5[tha]t!\n#_1C8399: db $7F ; end of message\n\n; =========================================================\n; Meet the elder of the village\n; and get the Master Sword.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0016", + "code": "Message_0016:\n#_1C839A: db $0C, $1E, $1E, $2D, $59, $D8, $59, $1E ; Meet\u23b5[the]\u23b5e\n#_1C83A2: db $25, $1D, $A1, $C6, $59, $D8, $59, $2F ; ld[er ][of]\u23b5[the]\u23b5v\n#_1C83AA: db $22, $25, $BA, $20, $1E ; il[la]ge\n#_1C83AF: db $75 ; line 2\n#_1C83B0: db $8C, $AB, $59, $D8, $59, $0C, $92, $A1 ; [and ][get]\u23b5[the]\u23b5M[ast][er ]\n#_1C83B8: db $12, $30, $C8, $1D, $41 ; Sw[or]d.\n#_1C83BD: db $7F ; end of message\n\n; =========================================================\n; Princess Zelda, you are safe!\n; Is this your doing, [LINK]?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0017", + "code": "Message_0017:\n#_1C83BE: db $0F, $2B, $B4, $1C, $1E, $2C, $2C, $59 ; Pr[in]cess\u23b5\n#_1C83C6: db $19, $1E, $25, $1D, $1A, $42, $59, $E3 ; Zelda,\u23b5[you]\n#_1C83CE: db $59, $8D, $2C, $1A, $1F, $1E, $3E ; \u23b5[are ]safe!\n#_1C83D5: db $75 ; line 2\n#_1C83D6: db $08, $2C, $59, $D9, $2C, $59, $E3, $2B ; Is\u23b5[thi]s\u23b5[you]r\n#_1C83DE: db $59, $9F, $B4, $20, $42, $59, $6A, $3F ; \u23b5[do][in]g,\u23b5[LINK]?\n#_1C83E6: db $7F ; end of message\n\n; =========================================================\n; I sense that a mighty evil\n; force guides the wizard's\n; actions and augments his\n; magical power. The only\n; weapon potent enough to\n; defeat the wizard is the\n; legendary Master Sword.\n; It is said that the village elder\n; is a descendant of one of the\n; seven wise men. Maybe\n; he can tell you more\u2026\n; I will mark his house on your\n; map. But watch your every\n; move! I am certain that the\n; castle soldiers will be looking\n; for you now! \u2026 \u2026 \u2026\n; I will hide Princess Zelda here.\n; Do not worry! Seek the elder!\n; \u2026 \u2026 \u2026\n; Do you understand?\n; > Yes\n; Not at all\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0018", + "code": "Message_0018:\n#_1C83E7: db $08, $59, $D0, $27, $D0, $59, $D7, $2D ; I\u23b5[se]n[se]\u23b5[tha]t\n#_1C83EF: db $59, $1A, $59, $26, $22, $20, $21, $2D ; \u23b5a\u23b5might\n#_1C83F7: db $32, $59, $A7, $22, $25 ; y\u23b5[ev]il\n#_1C83FC: db $75 ; line 2\n#_1C83FD: db $A8, $1C, $1E, $59, $20, $2E, $22, $9D ; [for]ce\u23b5gui[des]\n#_1C8405: db $59, $D8, $59, $E2, $33, $1A, $2B, $1D ; \u23b5[the]\u23b5[wi]zard\n#_1C840D: db $51, $2C ; 's\n#_1C840F: db $76 ; line 3\n#_1C8410: db $1A, $1C, $2D, $22, $C7, $2C, $59, $8C ; acti[on]s\u23b5[and ]\n#_1C8418: db $1A, $2E, $20, $BE, $27, $2D, $2C, $59 ; aug[me]nts\u23b5\n#_1C8420: db $B0, $2C ; [hi]s\n#_1C8422: db $7E ; wait for key\n#_1C8423: db $73 ; scroll text\n#_1C8424: db $BD, $20, $22, $1C, $1A, $25, $59, $CB ; [ma]gical\u23b5[pow]\n#_1C842C: db $A6, $41, $8A, $E6, $59, $C7, $25, $32 ; [er].[ ][The]\u23b5[on]ly\n#_1C8434: db $73 ; scroll text\n#_1C8435: db $E0, $1A, $29, $C7, $59, $29, $28, $2D ; [we]ap[on]\u23b5pot\n#_1C843D: db $A3, $59, $A5, $28, $2E, $20, $21, $59 ; [ent]\u23b5[en]ough\u23b5\n#_1C8445: db $DA ; [to]\n#_1C8446: db $73 ; scroll text\n#_1C8447: db $1D, $1E, $1F, $1E, $91, $D8, $59, $E2 ; defe[at ][the]\u23b5[wi]\n#_1C844F: db $33, $1A, $2B, $1D, $59, $B5, $59, $D8 ; zard\u23b5[is]\u23b5[the]\n#_1C8457: db $7E ; wait for key\n#_1C8458: db $73 ; scroll text\n#_1C8459: db $25, $1E, $20, $A5, $1D, $1A, $2B, $32 ; leg[en]dary\n#_1C8461: db $59, $0C, $92, $A1, $12, $30, $C8, $1D ; \u23b5M[ast][er ]Sw[or]d\n#_1C8469: db $41 ; .\n#_1C846A: db $73 ; scroll text\n#_1C846B: db $08, $2D, $59, $B5, $59, $2C, $1A, $22 ; It\u23b5[is]\u23b5sai\n#_1C8473: db $1D, $59, $D7, $2D, $59, $D8, $59, $2F ; d\u23b5[tha]t\u23b5[the]\u23b5v\n#_1C847B: db $22, $25, $BA, $20, $1E, $59, $1E, $25 ; il[la]ge\u23b5el\n#_1C8483: db $1D, $A6 ; d[er]\n#_1C8485: db $73 ; scroll text\n#_1C8486: db $B5, $59, $1A, $59, $9D, $1C, $A5, $1D ; [is]\u23b5a\u23b5[des]c[en]d\n#_1C848E: db $93, $2D, $59, $C6, $59, $C7, $1E, $59 ; [an]t\u23b5[of]\u23b5[on]e\u23b5\n#_1C8496: db $C6, $59, $D8 ; [of]\u23b5[the]\n#_1C8499: db $7E ; wait for key\n#_1C849A: db $73 ; scroll text\n#_1C849B: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1C84A3: db $41, $8A, $0C, $1A, $32, $97 ; .[ ]May[be]\n#_1C84A9: db $73 ; scroll text\n#_1C84AA: db $21, $1E, $59, $99, $2D, $1E, $25, $25 ; he\u23b5[can ]tell\n#_1C84B2: db $59, $E3, $59, $26, $C8, $1E, $43 ; \u23b5[you]\u23b5m[or]e\u2026\n#_1C84B9: db $73 ; scroll text\n#_1C84BA: db $08, $59, $E2, $25, $25, $59, $BD, $2B ; I\u23b5[wi]ll\u23b5[ma]r\n#_1C84C2: db $24, $59, $B0, $2C, $59, $21, $28, $2E ; k\u23b5[hi]s\u23b5hou\n#_1C84CA: db $D0, $59, $C7, $59, $E3, $2B ; [se]\u23b5[on]\u23b5[you]r\n#_1C84D0: db $7E ; wait for key\n#_1C84D1: db $73 ; scroll text\n#_1C84D2: db $BD, $29, $41, $8A, $01, $2E, $2D, $59 ; [ma]p.[ ]But\u23b5\n#_1C84DA: db $DF, $2D, $1C, $21, $59, $E3, $2B, $59 ; [wa]tch\u23b5[you]r\u23b5\n#_1C84E2: db $A7, $A6, $32 ; [ev][er]y\n#_1C84E5: db $73 ; scroll text\n#_1C84E6: db $26, $28, $2F, $1E, $3E, $8A, $08, $59 ; move![ ]I\u23b5\n#_1C84EE: db $1A, $26, $59, $1C, $A6, $2D, $8F, $59 ; am\u23b5c[er]t[ain]\u23b5\n#_1C84F6: db $D7, $2D, $59, $D8 ; [tha]t\u23b5[the]\n#_1C84FA: db $73 ; scroll text\n#_1C84FB: db $1C, $92, $25, $1E, $59, $D2, $25, $9E ; c[ast]le\u23b5[so]l[di]\n#_1C8503: db $A6, $2C, $59, $E2, $25, $25, $59, $97 ; [er]s\u23b5[wi]ll\u23b5[be]\n#_1C850B: db $59, $BB, $28, $24, $B4, $20 ; \u23b5[lo]ok[in]g\n#_1C8511: db $7E ; wait for key\n#_1C8512: db $73 ; scroll text\n#_1C8513: db $A8, $59, $E3, $59, $27, $28, $30, $3E ; [for]\u23b5[you]\u23b5now!\n#_1C851B: db $8A, $43, $88, $43, $88, $43 ; [ ]\u2026[ ]\u2026[ ]\u2026\n#_1C8521: db $79, $2D ; play sfx\n#_1C8523: db $73 ; scroll text\n#_1C8524: db $08, $59, $E2, $25, $25, $59, $B0, $1D ; I\u23b5[wi]ll\u23b5[hi]d\n#_1C852C: db $1E, $59, $0F, $2B, $B4, $1C, $1E, $2C ; e\u23b5Pr[in]ces\n#_1C8534: db $2C, $59, $19, $1E, $25, $1D, $1A, $59 ; s\u23b5Zelda\u23b5\n#_1C853C: db $AF, $1E, $41 ; [her]e.\n#_1C853F: db $73 ; scroll text\n#_1C8540: db $03, $28, $59, $C2, $59, $30, $C8, $2B ; Do\u23b5[not]\u23b5w[or]r\n#_1C8548: db $32, $3E, $8A, $12, $1E, $1E, $24, $59 ; y![ ]Seek\u23b5\n#_1C8550: db $D8, $59, $1E, $25, $1D, $A6, $3E ; [the]\u23b5eld[er]!\n#_1C8557: db $7E ; wait for key\n#_1C8558: db $73 ; scroll text\n#_1C8559: db $43, $88, $43, $88, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1C855E: db $73 ; scroll text\n#_1C855F: db $03, $28, $59, $E3, $59, $2E, $27, $1D ; Do\u23b5[you]\u23b5und\n#_1C8567: db $A6, $D3, $90, $3F ; [er][st][and]?\n#_1C856B: db $73 ; scroll text\n#_1C856C: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1C8572: db $73 ; scroll text\n#_1C8573: db $88, $89, $0D, $28, $2D, $59, $91, $1A ; [ ][ ]Not\u23b5[at ]a\n#_1C857B: db $25, $25 ; ll\n#_1C857D: db $68 ; choose 2 indented\n#_1C857E: db $7F ; end of message\n\n; =========================================================\n; If you defeat the wizard, the\n; soldiers may regain\n; their sanity.\n; Go, seek the Pendants!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0019", + "code": "Message_0019:\n#_1C857F: db $08, $1F, $59, $E3, $59, $1D, $1E, $1F ; If\u23b5[you]\u23b5def\n#_1C8587: db $1E, $91, $D8, $59, $E2, $33, $1A, $2B ; e[at ][the]\u23b5[wi]zar\n#_1C858F: db $1D, $42, $59, $D8 ; d,\u23b5[the]\n#_1C8593: db $75 ; line 2\n#_1C8594: db $D2, $25, $9E, $A6, $2C, $59, $BD, $32 ; [so]l[di][er]s\u23b5[ma]y\n#_1C859C: db $59, $CE, $20, $8F ; \u23b5[re]g[ain]\n#_1C85A0: db $76 ; line 3\n#_1C85A1: db $D8, $22, $2B, $59, $2C, $93, $B6, $32 ; [the]ir\u23b5s[an][it]y\n#_1C85A9: db $41 ; .\n#_1C85AA: db $7E ; wait for key\n#_1C85AB: db $73 ; scroll text\n#_1C85AC: db $06, $28, $42, $59, $D0, $1E, $24, $59 ; Go,\u23b5[se]ek\u23b5\n#_1C85B4: db $D8, $59, $0F, $A5, $1D, $93, $2D, $2C ; [the]\u23b5P[en]d[an]ts\n#_1C85BC: db $3E ; !\n#_1C85BD: db $7F ; end of message\n\n; =========================================================\n; Take the three Pendants into\n; the Lost Woods. The Master\n; Sword awaits you there.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001A", + "code": "Message_001A:\n#_1C85BE: db $13, $1A, $24, $1E, $59, $D8, $59, $2D ; Take\u23b5[the]\u23b5t\n#_1C85C6: db $21, $CE, $1E, $59, $0F, $A5, $1D, $93 ; h[re]e\u23b5P[en]d[an]\n#_1C85CE: db $2D, $2C, $59, $B4, $DA ; ts\u23b5[in][to]\n#_1C85D3: db $75 ; line 2\n#_1C85D4: db $D8, $59, $0B, $28, $D3, $59, $16, $28 ; [the]\u23b5Lo[st]\u23b5Wo\n#_1C85DC: db $28, $1D, $2C, $41, $8A, $E6, $59, $0C ; ods.[ ][The]\u23b5M\n#_1C85E4: db $92, $A6 ; [ast][er]\n#_1C85E6: db $76 ; line 3\n#_1C85E7: db $12, $30, $C8, $1D, $59, $1A, $DF, $B6 ; Sw[or]d\u23b5a[wa][it]\n#_1C85EF: db $2C, $59, $E3, $59, $D8, $CE, $41 ; s\u23b5[you]\u23b5[the][re].\n#_1C85F6: db $7F ; end of message\n\n; =========================================================\n; [LINK]! You are a second too\n; late. I have failed\u2026 Zelda\u2026\n; The soldiers have\n; abducted her.\n; They have taken her to\n; the castle.\n; You must find her before the\n; wizard works his magic.\n; Please\u2026You are our only hope\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001B", + "code": "Message_001B:\n#_1C85F7: db $6A, $3E, $8A, $E8, $59, $8D, $1A, $59 ; [LINK]![ ][You]\u23b5[are ]a\u23b5\n#_1C85FF: db $D0, $1C, $C7, $1D, $59, $DA, $28 ; [se]c[on]d\u23b5[to]o\n#_1C8606: db $75 ; line 2\n#_1C8607: db $BA, $2D, $1E, $41, $8A, $08, $59, $AD ; [la]te.[ ]I\u23b5[have]\n#_1C860F: db $59, $1F, $1A, $22, $25, $1E, $1D, $43 ; \u23b5failed\u2026\n#_1C8617: db $59, $19, $1E, $25, $1D, $1A, $43 ; \u23b5Zelda\u2026\n#_1C861E: db $76 ; line 3\n#_1C861F: db $E6, $59, $D2, $25, $9E, $A6, $2C, $59 ; [The]\u23b5[so]l[di][er]s\u23b5\n#_1C8627: db $AD ; [have]\n#_1C8628: db $7E ; wait for key\n#_1C8629: db $73 ; scroll text\n#_1C862A: db $1A, $1B, $1D, $2E, $1C, $2D, $A4, $AF ; abduct[ed ][her]\n#_1C8632: db $41 ; .\n#_1C8633: db $73 ; scroll text\n#_1C8634: db $E6, $32, $59, $AD, $59, $2D, $1A, $24 ; [The]y\u23b5[have]\u23b5tak\n#_1C863C: db $A0, $AF, $59, $DA ; [en ][her]\u23b5[to]\n#_1C8640: db $73 ; scroll text\n#_1C8641: db $D8, $59, $1C, $92, $25, $1E, $41 ; [the]\u23b5c[ast]le.\n#_1C8648: db $7E ; wait for key\n#_1C8649: db $73 ; scroll text\n#_1C864A: db $E8, $59, $BF, $D3, $59, $1F, $B4, $1D ; [You]\u23b5[mu][st]\u23b5f[in]d\n#_1C8652: db $59, $AF, $59, $97, $A8, $1E, $59, $D8 ; \u23b5[her]\u23b5[be][for]e\u23b5[the]\n#_1C865A: db $73 ; scroll text\n#_1C865B: db $E2, $33, $1A, $2B, $1D, $59, $30, $C8 ; [wi]zard\u23b5w[or]\n#_1C8663: db $24, $2C, $59, $B0, $2C, $59, $BD, $20 ; ks\u23b5[hi]s\u23b5[ma]g\n#_1C866B: db $22, $1C, $41 ; ic.\n#_1C866E: db $73 ; scroll text\n#_1C866F: db $0F, $25, $1E, $1A, $D0, $43, $E8, $59 ; Plea[se]\u2026[You]\u23b5\n#_1C8677: db $8D, $28, $2E, $2B, $59, $C7, $B9, $21 ; [are ]our\u23b5[on][ly ]h\n#_1C867F: db $28, $29, $1E, $43 ; ope\u2026\n#_1C8683: db $7F ; end of message\n\n; =========================================================\n; Thank you, [LINK]. I had a\n; feeling you were getting close.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001C", + "code": "Message_001C:\n#_1C8684: db $E5, $27, $24, $59, $E3, $42, $59, $6A ; [Tha]nk\u23b5[you],\u23b5[LINK]\n#_1C868C: db $41, $8A, $08, $59, $B1, $1D, $59, $1A ; .[ ]I\u23b5[ha]d\u23b5a\n#_1C8694: db $75 ; line 2\n#_1C8695: db $1F, $1E, $1E, $25, $B3, $E3, $59, $E0 ; feel[ing ][you]\u23b5[we]\n#_1C869D: db $CD, $AB, $2D, $B3, $1C, $BB, $D0, $41 ; [re ][get]t[ing ]c[lo][se].\n#_1C86A5: db $7F ; end of message\n\n; =========================================================\n; Yes, it was [LINK] who helped\n; me escape from the dungeon!\n; When I was captive the wizard\n; said, \"Once I have finished with\n; you, the final one, the seal of\n; the wise men will open.\"\n; \u2026 \u2026 \u2026\n; [LINK], you must not let the\n; land of Hyrule fall into the\n; wizard's clutches.\n; If he releases the seal of the\n; seven wise men, evil power will\n; overwhelm this land.\n; Before that happens\u2026\n; before it's too late\u2026 destroy\n; the wizard before he destroys\n; all of Hyrule! You can do it!\n; You can\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001D", + "code": "Message_001D:\n#_1C86A6: db $18, $1E, $2C, $42, $59, $B6, $59, $DF ; Yes,\u23b5[it]\u23b5[wa]\n#_1C86AE: db $2C, $59, $6A, $59, $E1, $28, $59, $21 ; s\u23b5[LINK]\u23b5[wh]o\u23b5h\n#_1C86B6: db $1E, $25, $29, $1E, $1D ; elped\n#_1C86BB: db $75 ; line 2\n#_1C86BC: db $BE, $59, $1E, $2C, $1C, $1A, $29, $1E ; [me]\u23b5escape\n#_1C86C4: db $59, $A9, $26, $59, $D8, $59, $1D, $2E ; \u23b5[fro]m\u23b5[the]\u23b5du\n#_1C86CC: db $27, $20, $1E, $C7, $3E ; nge[on]!\n#_1C86D1: db $76 ; line 3\n#_1C86D2: db $16, $21, $A0, $08, $59, $DF, $2C, $59 ; Wh[en ]I\u23b5[wa]s\u23b5\n#_1C86DA: db $1C, $1A, $29, $2D, $22, $2F, $1E, $59 ; captive\u23b5\n#_1C86E2: db $D8, $59, $E2, $33, $1A, $2B, $1D ; [the]\u23b5[wi]zard\n#_1C86E9: db $7E ; wait for key\n#_1C86EA: db $73 ; scroll text\n#_1C86EB: db $2C, $1A, $22, $1D, $42, $59, $4C, $0E ; said,\u23b5\"O\n#_1C86F3: db $27, $1C, $1E, $59, $08, $59, $AD, $59 ; nce\u23b5I\u23b5[have]\u23b5\n#_1C86FB: db $1F, $B4, $B5, $21, $A4, $DE ; f[in][is]h[ed ][with]\n#_1C8701: db $73 ; scroll text\n#_1C8702: db $E3, $42, $59, $D8, $59, $1F, $B4, $1A ; [you],\u23b5[the]\u23b5f[in]a\n#_1C870A: db $25, $59, $C7, $1E, $42, $59, $D8, $59 ; l\u23b5[on]e,\u23b5[the]\u23b5\n#_1C8712: db $D0, $1A, $25, $59, $C6 ; [se]al\u23b5[of]\n#_1C8717: db $73 ; scroll text\n#_1C8718: db $D8, $59, $E2, $D0, $59, $BE, $27, $59 ; [the]\u23b5[wi][se]\u23b5[me]n\u23b5\n#_1C8720: db $E2, $25, $25, $59, $C3, $41, $4C ; [wi]ll\u23b5[open].\"\n#_1C8727: db $7E ; wait for key\n#_1C8728: db $73 ; scroll text\n#_1C8729: db $43, $88, $43, $88, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1C872E: db $73 ; scroll text\n#_1C872F: db $6A, $42, $59, $E3, $59, $BF, $D3, $59 ; [LINK],\u23b5[you]\u23b5[mu][st]\u23b5\n#_1C8737: db $C2, $59, $25, $1E, $2D, $59, $D8 ; [not]\u23b5let\u23b5[the]\n#_1C873E: db $73 ; scroll text\n#_1C873F: db $BA, $27, $1D, $59, $C6, $59, $07, $32 ; [la]nd\u23b5[of]\u23b5Hy\n#_1C8747: db $2B, $2E, $25, $1E, $59, $1F, $8E, $B4 ; rule\u23b5f[all ][in]\n#_1C874F: db $DA, $59, $D8 ; [to]\u23b5[the]\n#_1C8752: db $7E ; wait for key\n#_1C8753: db $73 ; scroll text\n#_1C8754: db $E2, $33, $1A, $2B, $1D, $8B, $1C, $25 ; [wi]zard['s ]cl\n#_1C875C: db $2E, $2D, $9A, $2C, $41 ; ut[che]s.\n#_1C8761: db $73 ; scroll text\n#_1C8762: db $08, $1F, $59, $21, $1E, $59, $CE, $25 ; If\u23b5he\u23b5[re]l\n#_1C876A: db $1E, $1A, $D0, $2C, $59, $D8, $59, $D0 ; ea[se]s\u23b5[the]\u23b5[se]\n#_1C8772: db $1A, $25, $59, $C6, $59, $D8 ; al\u23b5[of]\u23b5[the]\n#_1C8778: db $73 ; scroll text\n#_1C8779: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1C8781: db $42, $59, $A7, $22, $25, $59, $CB, $A1 ; ,\u23b5[ev]il\u23b5[pow][er ]\n#_1C8789: db $E2, $25, $25 ; [wi]ll\n#_1C878C: db $7E ; wait for key\n#_1C878D: db $73 ; scroll text\n#_1C878E: db $28, $DD, $E1, $1E, $25, $26, $59, $D9 ; o[ver][wh]elm\u23b5[thi]\n#_1C8796: db $2C, $59, $BA, $27, $1D, $41 ; s\u23b5[la]nd.\n#_1C879C: db $73 ; scroll text\n#_1C879D: db $01, $1E, $A8, $1E, $59, $D7, $2D, $59 ; Be[for]e\u23b5[tha]t\u23b5\n#_1C87A5: db $B1, $29, $29, $A5, $2C, $43 ; [ha]pp[en]s\u2026\n#_1C87AB: db $73 ; scroll text\n#_1C87AC: db $97, $A8, $1E, $59, $B6, $8B, $DA, $28 ; [be][for]e\u23b5[it]['s ][to]o\n#_1C87B4: db $59, $BA, $2D, $1E, $43, $59, $9D, $DB ; \u23b5[la]te\u2026\u23b5[des][tr]\n#_1C87BC: db $28, $32 ; oy\n#_1C87BE: db $7E ; wait for key\n#_1C87BF: db $73 ; scroll text\n#_1C87C0: db $D8, $59, $E2, $33, $1A, $2B, $1D, $59 ; [the]\u23b5[wi]zard\u23b5\n#_1C87C8: db $97, $A8, $1E, $59, $21, $1E, $59, $9D ; [be][for]e\u23b5he\u23b5[des]\n#_1C87D0: db $DB, $28, $32, $2C ; [tr]oys\n#_1C87D4: db $73 ; scroll text\n#_1C87D5: db $8E, $C6, $59, $07, $32, $2B, $2E, $25 ; [all ][of]\u23b5Hyrul\n#_1C87DD: db $1E, $3E, $8A, $E8, $59, $99, $9F, $59 ; e![ ][You]\u23b5[can ][do]\u23b5\n#_1C87E5: db $B6, $3E ; [it]!\n#_1C87E7: db $73 ; scroll text\n#_1C87E8: db $E8, $59, $1C, $93, $43 ; [You]\u23b5c[an]\u2026\n#_1C87ED: db $7F ; end of message\n\n; =========================================================\n; [LINK], be careful out there!\n; I know you can save Hyrule!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001E", + "code": "Message_001E:\n#_1C87EE: db $6A, $42, $59, $97, $59, $1C, $1A, $CE ; [LINK],\u23b5[be]\u23b5ca[re]\n#_1C87F6: db $1F, $2E, $25, $59, $C5, $D8, $CE, $3E ; ful\u23b5[out ][the][re]!\n#_1C87FE: db $75 ; line 2\n#_1C87FF: db $08, $59, $B8, $59, $E3, $59, $99, $2C ; I\u23b5[know]\u23b5[you]\u23b5[can ]s\n#_1C8807: db $1A, $2F, $1E, $59, $07, $32, $2B, $2E ; ave\u23b5Hyru\n#_1C880F: db $25, $1E, $3E ; le!\n#_1C8812: db $7F ; end of message\n\n; =========================================================\n; Help me\u2026\n; Please help me\u2026\n; I am a prisoner in the dungeon\n; of the castle.\n; My name is Zelda.\n; The wizard, Agahnim, has done\u2026\n; something to the other missing\n; girls. Now only I remain\u2026\n; Agahnim has seized control of\n; the castle and is now trying to\n; open the seven wise men's\n; seal. \u2026 \u2026\n; I am in the dungeon of the\n; castle.\n; Please help me\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_001F", + "code": "Message_001F:\n#_1C8813: db $6B, $02 ; set window border\n#_1C8815: db $7A, $03 ; set draw speed\n#_1C8817: db $07, $1E, $25, $29, $59, $BE, $43 ; Help\u23b5[me]\u2026\n#_1C881E: db $78, $01 ; delay\n#_1C8820: db $76 ; line 3\n#_1C8821: db $0F, $25, $1E, $1A, $D0, $59, $21, $1E ; Plea[se]\u23b5he\n#_1C8829: db $25, $29, $59, $BE, $43 ; lp\u23b5[me]\u2026\n#_1C882E: db $7E ; wait for key\n#_1C882F: db $73 ; scroll text\n#_1C8830: db $08, $59, $1A, $26, $59, $1A, $59, $29 ; I\u23b5am\u23b5a\u23b5p\n#_1C8838: db $2B, $B5, $C7, $A1, $B4, $59, $D8, $59 ; r[is][on][er ][in]\u23b5[the]\u23b5\n#_1C8840: db $1D, $2E, $27, $20, $1E, $C7 ; dunge[on]\n#_1C8846: db $73 ; scroll text\n#_1C8847: db $C6, $59, $D8, $59, $1C, $92, $25, $1E ; [of]\u23b5[the]\u23b5c[ast]le\n#_1C884F: db $41 ; .\n#_1C8850: db $73 ; scroll text\n#_1C8851: db $0C, $32, $59, $27, $1A, $BE, $59, $B5 ; My\u23b5na[me]\u23b5[is]\n#_1C8859: db $59, $19, $1E, $25, $1D, $1A, $41 ; \u23b5Zelda.\n#_1C8860: db $7E ; wait for key\n#_1C8861: db $73 ; scroll text\n#_1C8862: db $E6, $59, $E2, $33, $1A, $2B, $1D, $42 ; [The]\u23b5[wi]zard,\n#_1C886A: db $59, $00, $20, $1A, $21, $27, $22, $26 ; \u23b5Agahnim\n#_1C8872: db $42, $59, $AE, $59, $9F, $27, $1E, $43 ; ,\u23b5[has]\u23b5[do]ne\u2026\n#_1C887A: db $73 ; scroll text\n#_1C887B: db $CF, $D5, $20, $59, $DA, $59, $D8, $59 ; [some][thin]g\u23b5[to]\u23b5[the]\u23b5\n#_1C8883: db $28, $D8, $2B, $59, $26, $B5, $2C, $B4 ; o[the]r\u23b5m[is]s[in]\n#_1C888B: db $20 ; g\n#_1C888C: db $73 ; scroll text\n#_1C888D: db $20, $22, $2B, $25, $2C, $41, $8A, $0D ; girls.[ ]N\n#_1C8895: db $28, $30, $59, $C7, $B9, $08, $59, $CE ; ow\u23b5[on][ly ]I\u23b5[re]\n#_1C889D: db $BD, $B4, $43 ; [ma][in]\u2026\n#_1C88A0: db $7E ; wait for key\n#_1C88A1: db $73 ; scroll text\n#_1C88A2: db $00, $20, $1A, $21, $27, $22, $26, $59 ; Agahnim\u23b5\n#_1C88AA: db $AE, $59, $D0, $22, $33, $A4, $1C, $C7 ; [has]\u23b5[se]iz[ed ]c[on]\n#_1C88B2: db $DB, $28, $25, $59, $C6 ; [tr]ol\u23b5[of]\n#_1C88B7: db $73 ; scroll text\n#_1C88B8: db $D8, $59, $1C, $92, $25, $1E, $59, $8C ; [the]\u23b5c[ast]le\u23b5[and ]\n#_1C88C0: db $B5, $59, $27, $28, $30, $59, $DB, $32 ; [is]\u23b5now\u23b5[tr]y\n#_1C88C8: db $B3, $DA ; [ing ][to]\n#_1C88CA: db $73 ; scroll text\n#_1C88CB: db $C3, $59, $D8, $59, $D0, $2F, $A0, $E2 ; [open]\u23b5[the]\u23b5[se]v[en ][wi]\n#_1C88D3: db $D0, $59, $BE, $27, $51, $2C ; [se]\u23b5[me]n's\n#_1C88D9: db $7E ; wait for key\n#_1C88DA: db $73 ; scroll text\n#_1C88DB: db $D0, $1A, $25, $41, $8A, $43, $89, $43 ; [se]al.[ ]\u2026[ ]\u2026\n#_1C88E3: db $73 ; scroll text\n#_1C88E4: db $08, $59, $1A, $26, $59, $B4, $59, $D8 ; I\u23b5am\u23b5[in]\u23b5[the]\n#_1C88EC: db $59, $1D, $2E, $27, $20, $1E, $C7, $59 ; \u23b5dunge[on]\u23b5\n#_1C88F4: db $C6, $59, $D8 ; [of]\u23b5[the]\n#_1C88F7: db $73 ; scroll text\n#_1C88F8: db $1C, $92, $25, $1E, $41 ; c[ast]le.\n#_1C88FD: db $7E ; wait for key\n#_1C88FE: db $73 ; scroll text\n#_1C88FF: db $0F, $25, $1E, $1A, $D0, $59, $21, $1E ; Plea[se]\u23b5he\n#_1C8907: db $25, $29, $59, $BE, $43 ; lp\u23b5[me]\u2026\n#_1C890C: db $7F ; end of message\n\n; =========================================================\n; Help me\u2026\n; I am in the dungeon of the\n; castle.\n; I know there is a hidden path\n; from outside of the castle to\n; the garden inside.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0020", + "code": "Message_0020:\n#_1C890D: db $6B, $02 ; set window border\n#_1C890F: db $7A, $03 ; set draw speed\n#_1C8911: db $07, $1E, $25, $29, $59, $BE, $43 ; Help\u23b5[me]\u2026\n#_1C8918: db $75 ; line 2\n#_1C8919: db $08, $59, $1A, $26, $59, $B4, $59, $D8 ; I\u23b5am\u23b5[in]\u23b5[the]\n#_1C8921: db $59, $1D, $2E, $27, $20, $1E, $C7, $59 ; \u23b5dunge[on]\u23b5\n#_1C8929: db $C6, $59, $D8 ; [of]\u23b5[the]\n#_1C892C: db $76 ; line 3\n#_1C892D: db $1C, $92, $25, $1E, $41 ; c[ast]le.\n#_1C8932: db $7E ; wait for key\n#_1C8933: db $73 ; scroll text\n#_1C8934: db $08, $59, $B8, $59, $D8, $CD, $B5, $59 ; I\u23b5[know]\u23b5[the][re ][is]\u23b5\n#_1C893C: db $1A, $59, $B0, $1D, $1D, $A0, $29, $94 ; a\u23b5[hi]dd[en ]p[at]\n#_1C8944: db $21 ; h\n#_1C8945: db $73 ; scroll text\n#_1C8946: db $A9, $26, $59, $28, $2E, $2D, $2C, $22 ; [fro]m\u23b5outsi\n#_1C894E: db $1D, $1E, $59, $C6, $8A, $D8, $59, $1C ; de\u23b5[of][ ][the]\u23b5c\n#_1C8956: db $92, $25, $1E, $59, $DA ; [ast]le\u23b5[to]\n#_1C895B: db $73 ; scroll text\n#_1C895C: db $D8, $59, $20, $1A, $2B, $1D, $A0, $B4 ; [the]\u23b5gard[en ][in]\n#_1C8964: db $2C, $22, $1D, $1E, $41 ; side.\n#_1C8969: db $7F ; end of message\n\n; =========================================================\n; There is a secret passage in\n; the throne room that leads to\n; Sanctuary. I'm sure the old\n; man there will help us.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0021", + "code": "Message_0021:\n#_1C896A: db $E6, $CD, $B5, $59, $1A, $59, $D0, $1C ; [The][re ][is]\u23b5a\u23b5[se]c\n#_1C8972: db $CE, $2D, $59, $29, $1A, $2C, $2C, $1A ; [re]t\u23b5passa\n#_1C897A: db $20, $1E, $59, $B4 ; ge\u23b5[in]\n#_1C897E: db $75 ; line 2\n#_1C897F: db $D8, $59, $2D, $21, $2B, $C7, $1E, $59 ; [the]\u23b5thr[on]e\u23b5\n#_1C8987: db $2B, $28, $28, $26, $59, $D7, $2D, $59 ; room\u23b5[tha]t\u23b5\n#_1C898F: db $25, $1E, $1A, $1D, $2C, $59, $DA ; leads\u23b5[to]\n#_1C8996: db $76 ; line 3\n#_1C8997: db $12, $93, $1C, $2D, $2E, $1A, $2B, $32 ; S[an]ctuary\n#_1C899F: db $41, $8A, $08, $51, $26, $59, $2C, $2E ; .[ ]I'm\u23b5su\n#_1C89A7: db $CD, $D8, $59, $28, $25, $1D ; [re ][the]\u23b5old\n#_1C89AD: db $7E ; wait for key\n#_1C89AE: db $73 ; scroll text\n#_1C89AF: db $BC, $59, $D8, $CD, $E2, $25, $25, $59 ; [man]\u23b5[the][re ][wi]ll\u23b5\n#_1C89B7: db $21, $1E, $25, $29, $59, $2E, $2C, $41 ; help\u23b5us.\n#_1C89BF: db $7F ; end of message\n\n; =========================================================\n; That ornamental shelf should\n; open. Do you have a light?\n; It's pitch dark inside and you\n; can't see without one.\n; If you're ready, let's go!\n; Help me push it from the left!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0022", + "code": "Message_0022:\n#_1C89C0: db $E5, $2D, $59, $C8, $27, $1A, $BE, $27 ; [Tha]t\u23b5[or]na[me]n\n#_1C89C8: db $2D, $1A, $25, $59, $D1, $1E, $25, $1F ; tal\u23b5[sh]elf\n#_1C89D0: db $59, $D1, $28, $2E, $25, $1D ; \u23b5[sh]ould\n#_1C89D6: db $75 ; line 2\n#_1C89D7: db $C3, $41, $8A, $03, $28, $59, $E3, $59 ; [open].[ ]Do\u23b5[you]\u23b5\n#_1C89DF: db $AD, $59, $1A, $59, $25, $22, $20, $21 ; [have]\u23b5a\u23b5ligh\n#_1C89E7: db $2D, $3F ; t?\n#_1C89E9: db $76 ; line 3\n#_1C89EA: db $08, $2D, $8B, $29, $B6, $1C, $21, $59 ; It['s ]p[it]ch\u23b5\n#_1C89F2: db $1D, $1A, $2B, $24, $59, $B4, $2C, $22 ; dark\u23b5[in]si\n#_1C89FA: db $1D, $1E, $59, $8C, $E3 ; de\u23b5[and ][you]\n#_1C89FF: db $7E ; wait for key\n#_1C8A00: db $73 ; scroll text\n#_1C8A01: db $1C, $93, $51, $2D, $59, $D0, $1E, $59 ; c[an]'t\u23b5[se]e\u23b5\n#_1C8A09: db $DE, $C5, $C7, $1E, $41 ; [with][out ][on]e.\n#_1C8A0E: db $73 ; scroll text\n#_1C8A0F: db $08, $1F, $59, $E3, $51, $CD, $CE, $1A ; If\u23b5[you]'[re ][re]a\n#_1C8A17: db $1D, $32, $42, $59, $25, $1E, $2D, $8B ; dy,\u23b5let['s ]\n#_1C8A1F: db $AC, $3E ; [go]!\n#_1C8A21: db $73 ; scroll text\n#_1C8A22: db $07, $1E, $25, $29, $59, $BE, $59, $29 ; Help\u23b5[me]\u23b5p\n#_1C8A2A: db $2E, $D1, $59, $B6, $59, $A9, $26, $59 ; u[sh]\u23b5[it]\u23b5[fro]m\u23b5\n#_1C8A32: db $D8, $59, $25, $1E, $1F, $2D, $3E ; [the]\u23b5left!\n#_1C8A39: db $7F ; end of message\n\n; =========================================================\n; You have to pull the lever to\n; open the door. (Press the \u24b6\n; Button and hold Down on the\n; Control Pad. )\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0023", + "code": "Message_0023:\n#_1C8A3A: db $E8, $59, $AD, $59, $DA, $59, $29, $2E ; [You]\u23b5[have]\u23b5[to]\u23b5pu\n#_1C8A42: db $25, $25, $59, $D8, $59, $25, $A7, $A1 ; ll\u23b5[the]\u23b5l[ev][er ]\n#_1C8A4A: db $DA ; [to]\n#_1C8A4B: db $75 ; line 2\n#_1C8A4C: db $C3, $59, $D8, $59, $9F, $C8, $41, $8A ; [open]\u23b5[the]\u23b5[do][or].[ ]\n#_1C8A54: db $45, $0F, $CE, $2C, $2C, $59, $D8, $59 ; (P[re]ss\u23b5[the]\u23b5\n#_1C8A5C: db $5B ; \u24b6\n#_1C8A5D: db $76 ; line 3\n#_1C8A5E: db $01, $2E, $2D, $DA, $27, $59, $8C, $21 ; But[to]n\u23b5[and ]h\n#_1C8A66: db $28, $25, $1D, $59, $03, $28, $30, $27 ; old\u23b5Down\n#_1C8A6E: db $59, $C7, $59, $D8 ; \u23b5[on]\u23b5[the]\n#_1C8A72: db $7E ; wait for key\n#_1C8A73: db $73 ; scroll text\n#_1C8A74: db $02, $C7, $DB, $28, $25, $59, $0F, $1A ; C[on][tr]ol\u23b5Pa\n#_1C8A7C: db $1D, $41, $59, $46 ; d.\u23b5)\n#_1C8A80: db $7F ; end of message\n\n; =========================================================\n; All right, let's get out of here\n; before the wizard notices. I\n; know a secret path, but first\n; we have to go to the\n; first floor. Let's go!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0024", + "code": "Message_0024:\n#_1C8A81: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_1C8A89: db $2D, $42, $8A, $25, $1E, $2D, $8B, $AB ; t,[ ]let['s ][get]\n#_1C8A91: db $59, $C5, $C6, $59, $AF, $1E ; \u23b5[out ][of]\u23b5[her]e\n#_1C8A97: db $75 ; line 2\n#_1C8A98: db $97, $A8, $1E, $59, $D8, $59, $E2, $33 ; [be][for]e\u23b5[the]\u23b5[wi]z\n#_1C8AA0: db $1A, $2B, $1D, $59, $C2, $22, $1C, $1E ; ard\u23b5[not]ice\n#_1C8AA8: db $2C, $41, $8A, $08 ; s.[ ]I\n#_1C8AAC: db $76 ; line 3\n#_1C8AAD: db $B8, $59, $1A, $59, $D0, $1C, $CE, $2D ; [know]\u23b5a\u23b5[se]c[re]t\n#_1C8AB5: db $59, $29, $94, $21, $42, $59, $1B, $2E ; \u23b5p[at]h,\u23b5bu\n#_1C8ABD: db $2D, $59, $1F, $22, $2B, $D3 ; t\u23b5fir[st]\n#_1C8AC3: db $7E ; wait for key\n#_1C8AC4: db $73 ; scroll text\n#_1C8AC5: db $E0, $59, $AD, $59, $DA, $59, $AC, $59 ; [we]\u23b5[have]\u23b5[to]\u23b5[go]\u23b5\n#_1C8ACD: db $DA, $59, $D8 ; [to]\u23b5[the]\n#_1C8AD0: db $73 ; scroll text\n#_1C8AD1: db $1F, $22, $2B, $D3, $59, $1F, $BB, $C8 ; fir[st]\u23b5f[lo][or]\n#_1C8AD9: db $41, $8A, $0B, $1E, $2D, $8B, $59, $AC ; .[ ]Let['s ]\u23b5[go]\n#_1C8AE1: db $3E ; !\n#_1C8AE2: db $7F ; end of message\n\n; =========================================================\n; [LINK], listen carefully. The\n; wizard is magically controlling\n; all the soldiers in the castle.\n; I fear the worst for\n; my father\u2026\n; The wizard is an inhuman fiend\n; with strong magical powers!\n; \u2026 \u2026 \u2026\n; Do you understand?\n; > Yes\n; Not at all\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0025", + "code": "Message_0025:\n#_1C8AE3: db $6A, $42, $59, $25, $B5, $2D, $A0, $1C ; [LINK],\u23b5l[is]t[en ]c\n#_1C8AEB: db $1A, $CE, $1F, $2E, $25, $25, $32, $41 ; a[re]fully.\n#_1C8AF3: db $8A, $E6 ; [ ][The]\n#_1C8AF5: db $75 ; line 2\n#_1C8AF6: db $E2, $33, $1A, $2B, $1D, $59, $B5, $59 ; [wi]zard\u23b5[is]\u23b5\n#_1C8AFE: db $BD, $20, $22, $1C, $1A, $25, $B9, $1C ; [ma]gical[ly ]c\n#_1C8B06: db $C7, $DB, $28, $25, $25, $B4, $20 ; [on][tr]oll[in]g\n#_1C8B0D: db $76 ; line 3\n#_1C8B0E: db $8E, $D8, $59, $D2, $25, $9E, $A6, $2C ; [all ][the]\u23b5[so]l[di][er]s\n#_1C8B16: db $59, $B4, $59, $D8, $59, $1C, $92, $25 ; \u23b5[in]\u23b5[the]\u23b5c[ast]l\n#_1C8B1E: db $1E, $41 ; e.\n#_1C8B20: db $7E ; wait for key\n#_1C8B21: db $73 ; scroll text\n#_1C8B22: db $08, $59, $1F, $A2, $59, $D8, $59, $30 ; I\u23b5f[ear]\u23b5[the]\u23b5w\n#_1C8B2A: db $C8, $D3, $59, $A8 ; [or][st]\u23b5[for]\n#_1C8B2E: db $73 ; scroll text\n#_1C8B2F: db $26, $32, $59, $1F, $94, $AF, $43 ; my\u23b5f[at][her]\u2026\n#_1C8B36: db $73 ; scroll text\n#_1C8B37: db $E6, $59, $E2, $33, $1A, $2B, $1D, $59 ; [The]\u23b5[wi]zard\u23b5\n#_1C8B3F: db $B5, $59, $93, $59, $B4, $21, $2E, $BC ; [is]\u23b5[an]\u23b5[in]hu[man]\n#_1C8B47: db $59, $1F, $22, $A5, $1D ; \u23b5fi[en]d\n#_1C8B4C: db $7E ; wait for key\n#_1C8B4D: db $73 ; scroll text\n#_1C8B4E: db $DE, $59, $D3, $2B, $C7, $20, $59, $BD ; [with]\u23b5[st]r[on]g\u23b5[ma]\n#_1C8B56: db $20, $22, $1C, $1A, $25, $59, $CB, $A6 ; gical\u23b5[pow][er]\n#_1C8B5E: db $2C, $3E ; s!\n#_1C8B60: db $73 ; scroll text\n#_1C8B61: db $43, $89, $43, $89, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1C8B66: db $7E ; wait for key\n#_1C8B67: db $73 ; scroll text\n#_1C8B68: db $03, $28, $59, $E3, $59, $2E, $27, $1D ; Do\u23b5[you]\u23b5und\n#_1C8B70: db $A6, $D3, $90, $3F ; [er][st][and]?\n#_1C8B74: db $73 ; scroll text\n#_1C8B75: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1C8B7B: db $73 ; scroll text\n#_1C8B7C: db $88, $89, $0D, $28, $2D, $59, $91, $1A ; [ ][ ]Not\u23b5[at ]a\n#_1C8B84: db $25, $25 ; ll\n#_1C8B86: db $68 ; choose 2 indented\n#_1C8B87: db $7F ; end of message\n\n; =========================================================\n; You should follow the marks\n; the elder made on your map\n; when you explore.\n; If you don't know what to do\n; next, you can also visit a\n; fortune teller.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0026", + "code": "Message_0026:\n#_1C8B88: db $E8, $59, $D1, $28, $2E, $25, $1D, $59 ; [You]\u23b5[sh]ould\u23b5\n#_1C8B90: db $1F, $28, $25, $BB, $30, $59, $D8, $59 ; fol[lo]w\u23b5[the]\u23b5\n#_1C8B98: db $BD, $2B, $24, $2C ; [ma]rks\n#_1C8B9C: db $75 ; line 2\n#_1C8B9D: db $D8, $59, $1E, $25, $1D, $A1, $BD, $1D ; [the]\u23b5eld[er ][ma]d\n#_1C8BA5: db $1E, $59, $C7, $59, $E3, $2B, $59, $BD ; e\u23b5[on]\u23b5[you]r\u23b5[ma]\n#_1C8BAD: db $29 ; p\n#_1C8BAE: db $76 ; line 3\n#_1C8BAF: db $E1, $A0, $E3, $59, $1E, $31, $29, $BB ; [wh][en ][you]\u23b5exp[lo]\n#_1C8BB7: db $CE, $41 ; [re].\n#_1C8BB9: db $7E ; wait for key\n#_1C8BBA: db $73 ; scroll text\n#_1C8BBB: db $08, $1F, $59, $E3, $59, $9F, $C0, $B8 ; If\u23b5[you]\u23b5[do][n't ][know]\n#_1C8BC3: db $59, $E1, $91, $DA, $59, $9F ; \u23b5[wh][at ][to]\u23b5[do]\n#_1C8BC9: db $73 ; scroll text\n#_1C8BCA: db $27, $1E, $31, $2D, $42, $59, $E3, $59 ; next,\u23b5[you]\u23b5\n#_1C8BD2: db $99, $1A, $25, $D2, $59, $2F, $B5, $B6 ; [can ]al[so]\u23b5v[is][it]\n#_1C8BDA: db $59, $1A ; \u23b5a\n#_1C8BDC: db $73 ; scroll text\n#_1C8BDD: db $A8, $2D, $2E, $27, $1E, $59, $2D, $1E ; [for]tune\u23b5te\n#_1C8BE5: db $25, $25, $A6, $41 ; ll[er].\n#_1C8BE9: db $7F ; end of message\n\n; =========================================================\n; [LINK], you are wonderful!\n; As I thought, you have the\n; power of the Hero inside you!\n; Now, you should get the Master\n; Sword. I am confident that you\n; can defeat the evil wizard!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0027", + "code": "Message_0027:\n#_1C8BEA: db $6A, $42, $59, $E3, $59, $8D, $30, $C7 ; [LINK],\u23b5[you]\u23b5[are ]w[on]\n#_1C8BF2: db $1D, $A6, $1F, $2E, $25, $3E ; d[er]ful!\n#_1C8BF8: db $75 ; line 2\n#_1C8BF9: db $00, $2C, $59, $08, $59, $2D, $21, $28 ; As\u23b5I\u23b5tho\n#_1C8C01: db $2E, $20, $21, $2D, $42, $59, $E3, $59 ; ught,\u23b5[you]\u23b5\n#_1C8C09: db $AD, $59, $D8 ; [have]\u23b5[the]\n#_1C8C0C: db $76 ; line 3\n#_1C8C0D: db $CB, $A1, $C6, $59, $D8, $59, $E4, $28 ; [pow][er ][of]\u23b5[the]\u23b5[Her]o\n#_1C8C15: db $59, $B4, $2C, $22, $1D, $1E, $59, $E3 ; \u23b5[in]side\u23b5[you]\n#_1C8C1D: db $3E ; !\n#_1C8C1E: db $7E ; wait for key\n#_1C8C1F: db $73 ; scroll text\n#_1C8C20: db $0D, $28, $30, $42, $59, $E3, $59, $D1 ; Now,\u23b5[you]\u23b5[sh]\n#_1C8C28: db $28, $2E, $25, $1D, $59, $AB, $59, $D8 ; ould\u23b5[get]\u23b5[the]\n#_1C8C30: db $59, $0C, $92, $A6 ; \u23b5M[ast][er]\n#_1C8C34: db $73 ; scroll text\n#_1C8C35: db $12, $30, $C8, $1D, $41, $8A, $08, $59 ; Sw[or]d.[ ]I\u23b5\n#_1C8C3D: db $1A, $26, $59, $1C, $C7, $1F, $22, $1D ; am\u23b5c[on]fid\n#_1C8C45: db $A3, $59, $D7, $2D, $59, $E3 ; [ent]\u23b5[tha]t\u23b5[you]\n#_1C8C4B: db $73 ; scroll text\n#_1C8C4C: db $99, $1D, $1E, $1F, $1E, $91, $D8, $59 ; [can ]defe[at ][the]\u23b5\n#_1C8C54: db $A7, $22, $25, $59, $E2, $33, $1A, $2B ; [ev]il\u23b5[wi]zar\n#_1C8C5C: db $1D, $3E ; d!\n#_1C8C5E: db $7F ; end of message\n\n; =========================================================\n; [LINK]! Help! The soldiers\n; are coming to Sanctuary!\n; AIEEEEEEE!\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0028", + "code": "Message_0028:\n#_1C8C5F: db $6B, $02 ; set window border\n#_1C8C61: db $7A, $03 ; set draw speed\n#_1C8C63: db $6A, $3E, $8A, $07, $1E, $25, $29, $3E ; [LINK]![ ]Help!\n#_1C8C6B: db $8A, $E6, $59, $D2, $25, $9E, $A6, $2C ; [ ][The]\u23b5[so]l[di][er]s\n#_1C8C73: db $75 ; line 2\n#_1C8C74: db $8D, $9B, $B3, $DA, $59, $12, $93, $1C ; [are ][com][ing ][to]\u23b5S[an]c\n#_1C8C7C: db $2D, $2E, $1A, $2B, $32, $3E ; tuary!\n#_1C8C82: db $76 ; line 3\n#_1C8C83: db $00, $08, $04, $04, $04, $04, $04, $04 ; AIEEEEEE\n#_1C8C8B: db $04, $3E ; E!\n#_1C8C8D: db $7E ; wait for key\n#_1C8C8E: db $73 ; scroll text\n#_1C8C8F: db $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\n#_1C8C94: db $7F ; end of message\n\n; =========================================================\n; After passing through these\n; sewers, we will be very close\n; to Sanctuary!\n; Let's be careful!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0029", + "code": "Message_0029:\n#_1C8C95: db $00, $1F, $D4, $29, $1A, $2C, $2C, $B3 ; Af[ter ]pass[ing ]\n#_1C8C9D: db $2D, $21, $2B, $28, $2E, $20, $21, $59 ; through\u23b5\n#_1C8CA5: db $D8, $D0 ; [the][se]\n#_1C8CA7: db $75 ; line 2\n#_1C8CA8: db $D0, $E0, $2B, $2C, $42, $59, $E0, $59 ; [se][we]rs,\u23b5[we]\u23b5\n#_1C8CB0: db $E2, $25, $25, $59, $97, $59, $DD, $32 ; [wi]ll\u23b5[be]\u23b5[ver]y\n#_1C8CB8: db $59, $1C, $BB, $D0 ; \u23b5c[lo][se]\n#_1C8CBC: db $76 ; line 3\n#_1C8CBD: db $DA, $59, $12, $93, $1C, $2D, $2E, $1A ; [to]\u23b5S[an]ctua\n#_1C8CC5: db $2B, $32, $3E ; ry!\n#_1C8CC8: db $7E ; wait for key\n#_1C8CC9: db $73 ; scroll text\n#_1C8CCA: db $0B, $1E, $2D, $8B, $97, $59, $1C, $1A ; Let['s ][be]\u23b5ca\n#_1C8CD2: db $CE, $1F, $2E, $25, $3E ; [re]ful!\n#_1C8CD7: db $7F ; end of message\n\n; =========================================================\n; Sanctuary is just beyond that\n; door. Pull the switch over\n; there.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002A", + "code": "Message_002A:\n#_1C8CD8: db $12, $93, $1C, $2D, $2E, $1A, $2B, $32 ; S[an]ctuary\n#_1C8CE0: db $59, $B5, $59, $B7, $59, $97, $32, $C7 ; \u23b5[is]\u23b5[just]\u23b5[be]y[on]\n#_1C8CE8: db $1D, $59, $D7, $2D ; d\u23b5[tha]t\n#_1C8CEC: db $75 ; line 2\n#_1C8CED: db $9F, $C8, $41, $8A, $0F, $2E, $25, $25 ; [do][or].[ ]Pull\n#_1C8CF5: db $59, $D8, $59, $2C, $E2, $2D, $1C, $21 ; \u23b5[the]\u23b5s[wi]tch\n#_1C8CFD: db $59, $28, $DD ; \u23b5o[ver]\n#_1C8D00: db $76 ; line 3\n#_1C8D01: db $D8, $CE, $41 ; [the][re].\n#_1C8D04: db $7F ; end of message\n\n; =========================================================\n; Who? Oh, it's you, [LINK]!\n; What can I do for you, young\n; man? The elder? Oh, no one\n; has seen him since the wizard\n; began collecting victims\u2026\n; \u2026 \u2026 \u2026\n; What? Master Sword? Well, I\n; don't remember the details\n; exactly, but\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002B", + "code": "Message_002B:\n#_1C8D05: db $16, $21, $28, $3F, $59, $0E, $21, $42 ; Who?\u23b5Oh,\n#_1C8D0D: db $59, $B6, $8B, $E3, $42, $59, $6A, $3E ; \u23b5[it]['s ][you],\u23b5[LINK]!\n#_1C8D15: db $75 ; line 2\n#_1C8D16: db $16, $B1, $2D, $59, $99, $08, $59, $9F ; W[ha]t\u23b5[can ]I\u23b5[do]\n#_1C8D1E: db $59, $A8, $59, $E3, $42, $59, $E3, $27 ; \u23b5[for]\u23b5[you],\u23b5[you]n\n#_1C8D26: db $20 ; g\n#_1C8D27: db $76 ; line 3\n#_1C8D28: db $BC, $3F, $8A, $E6, $59, $1E, $25, $1D ; [man]?[ ][The]\u23b5eld\n#_1C8D30: db $A6, $3F, $8A, $0E, $21, $42, $59, $27 ; [er]?[ ]Oh,\u23b5n\n#_1C8D38: db $28, $59, $C7, $1E ; o\u23b5[on]e\n#_1C8D3C: db $7E ; wait for key\n#_1C8D3D: db $73 ; scroll text\n#_1C8D3E: db $AE, $59, $D0, $A0, $B0, $26, $59, $2C ; [has]\u23b5[se][en ][hi]m\u23b5s\n#_1C8D46: db $B4, $1C, $1E, $59, $D8, $59, $E2, $33 ; [in]ce\u23b5[the]\u23b5[wi]z\n#_1C8D4E: db $1A, $2B, $1D ; ard\n#_1C8D51: db $73 ; scroll text\n#_1C8D52: db $97, $20, $93, $59, $1C, $28, $25, $25 ; [be]g[an]\u23b5coll\n#_1C8D5A: db $1E, $1C, $2D, $B3, $2F, $22, $1C, $2D ; ect[ing ]vict\n#_1C8D62: db $22, $26, $2C, $43 ; ims\u2026\n#_1C8D66: db $73 ; scroll text\n#_1C8D67: db $43, $89, $43, $89, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1C8D6C: db $7E ; wait for key\n#_1C8D6D: db $73 ; scroll text\n#_1C8D6E: db $16, $B1, $2D, $3F, $8A, $0C, $92, $A1 ; W[ha]t?[ ]M[ast][er ]\n#_1C8D76: db $12, $30, $C8, $1D, $3F, $8A, $16, $1E ; Sw[or]d?[ ]We\n#_1C8D7E: db $25, $25, $42, $59, $08 ; ll,\u23b5I\n#_1C8D83: db $73 ; scroll text\n#_1C8D84: db $9F, $C0, $CE, $BE, $26, $97, $2B, $59 ; [do][n't ][re][me]m[be]r\u23b5\n#_1C8D8C: db $D8, $59, $1D, $1E, $2D, $1A, $22, $25 ; [the]\u23b5detail\n#_1C8D94: db $2C ; s\n#_1C8D95: db $73 ; scroll text\n#_1C8D96: db $1E, $31, $1A, $1C, $2D, $25, $32, $42 ; exactly,\n#_1C8D9E: db $59, $1B, $2E, $2D, $43 ; \u23b5but\u2026\n#_1C8DA3: db $7F ; end of message\n\n; =========================================================\n; Long ago, a prosperous people\n; known as the Hylia inhabited\n; this land\u2026\n; Legends tell of many treasures\n; that the Hylia hid throughout\n; the land\u2026\n; The Master Sword, a mighty\n; blade forged against those\n; with evil hearts, is one of\n; them. People say that now it\n; is sleeping deep in the forest\u2026\n; \u2026 \u2026 \u2026\n; Do you understand the legend?\n; > Yes\n; Not at all\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002C", + "code": "Message_002C:\n#_1C8DA4: db $0B, $C7, $20, $59, $1A, $AC, $42, $59 ; L[on]g\u23b5a[go],\u23b5\n#_1C8DAC: db $1A, $59, $CC, $2C, $C9, $28, $2E, $2C ; a\u23b5[pro]s[per]ous\n#_1C8DB4: db $59, $29, $1E, $28, $CA ; \u23b5peo[ple]\n#_1C8DB9: db $75 ; line 2\n#_1C8DBA: db $B8, $27, $59, $1A, $2C, $59, $D8, $59 ; [know]n\u23b5as\u23b5[the]\u23b5\n#_1C8DC2: db $07, $32, $25, $22, $1A, $59, $B4, $B1 ; Hylia\u23b5[in][ha]\n#_1C8DCA: db $1B, $B6, $1E, $1D ; b[it]ed\n#_1C8DCE: db $76 ; line 3\n#_1C8DCF: db $D9, $2C, $59, $BA, $27, $1D, $43 ; [thi]s\u23b5[la]nd\u2026\n#_1C8DD6: db $7E ; wait for key\n#_1C8DD7: db $73 ; scroll text\n#_1C8DD8: db $0B, $1E, $20, $A5, $1D, $2C, $59, $2D ; Leg[en]ds\u23b5t\n#_1C8DE0: db $1E, $25, $25, $59, $C6, $59, $BC, $32 ; ell\u23b5[of]\u23b5[man]y\n#_1C8DE8: db $59, $DB, $1E, $1A, $2C, $2E, $CE, $2C ; \u23b5[tr]easu[re]s\n#_1C8DF0: db $73 ; scroll text\n#_1C8DF1: db $D7, $2D, $59, $D8, $59, $07, $32, $25 ; [tha]t\u23b5[the]\u23b5Hyl\n#_1C8DF9: db $22, $1A, $59, $B0, $1D, $59, $2D, $21 ; ia\u23b5[hi]d\u23b5th\n#_1C8E01: db $2B, $28, $2E, $20, $21, $28, $2E, $2D ; roughout\n#_1C8E09: db $73 ; scroll text\n#_1C8E0A: db $D8, $59, $BA, $27, $1D, $43 ; [the]\u23b5[la]nd\u2026\n#_1C8E10: db $7E ; wait for key\n#_1C8E11: db $73 ; scroll text\n#_1C8E12: db $E6, $59, $0C, $92, $A1, $12, $30, $C8 ; [The]\u23b5M[ast][er ]Sw[or]\n#_1C8E1A: db $1D, $42, $59, $1A, $59, $26, $22, $20 ; d,\u23b5a\u23b5mig\n#_1C8E22: db $21, $2D, $32 ; hty\n#_1C8E25: db $73 ; scroll text\n#_1C8E26: db $1B, $BA, $1D, $1E, $59, $A8, $20, $A4 ; b[la]de\u23b5[for]g[ed ]\n#_1C8E2E: db $1A, $20, $8F, $D3, $59, $2D, $21, $28 ; ag[ain][st]\u23b5tho\n#_1C8E36: db $D0 ; [se]\n#_1C8E37: db $73 ; scroll text\n#_1C8E38: db $DE, $59, $A7, $22, $25, $59, $21, $A2 ; [with]\u23b5[ev]il\u23b5h[ear]\n#_1C8E40: db $2D, $2C, $42, $59, $B5, $59, $C7, $1E ; ts,\u23b5[is]\u23b5[on]e\n#_1C8E48: db $59, $C6 ; \u23b5[of]\n#_1C8E4A: db $7E ; wait for key\n#_1C8E4B: db $73 ; scroll text\n#_1C8E4C: db $D8, $26, $41, $8A, $0F, $1E, $28, $CA ; [the]m.[ ]Peo[ple]\n#_1C8E54: db $59, $2C, $1A, $32, $59, $D7, $2D, $59 ; \u23b5say\u23b5[tha]t\u23b5\n#_1C8E5C: db $27, $28, $30, $59, $B6 ; now\u23b5[it]\n#_1C8E61: db $73 ; scroll text\n#_1C8E62: db $B5, $59, $2C, $25, $1E, $1E, $29, $B3 ; [is]\u23b5sleep[ing ]\n#_1C8E6A: db $1D, $1E, $1E, $29, $59, $B4, $59, $D8 ; deep\u23b5[in]\u23b5[the]\n#_1C8E72: db $59, $A8, $1E, $D3, $43 ; \u23b5[for]e[st]\u2026\n#_1C8E77: db $73 ; scroll text\n#_1C8E78: db $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\n#_1C8E7D: db $7E ; wait for key\n#_1C8E7E: db $73 ; scroll text\n#_1C8E7F: db $03, $28, $59, $E3, $59, $2E, $27, $1D ; Do\u23b5[you]\u23b5und\n#_1C8E87: db $A6, $D3, $8C, $D8, $59, $25, $1E, $20 ; [er][st][and ][the]\u23b5leg\n#_1C8E8F: db $A5, $1D, $3F ; [en]d?\n#_1C8E92: db $73 ; scroll text\n#_1C8E93: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1C8E99: db $73 ; scroll text\n#_1C8E9A: db $88, $89, $0D, $28, $2D, $59, $91, $1A ; [ ][ ]Not\u23b5[at ]a\n#_1C8EA2: db $25, $25 ; ll\n#_1C8EA4: db $68 ; choose 2 indented\n#_1C8EA5: db $7F ; end of message\n\n; =========================================================\n; Anyway, look for the elder.\n; There must be someone in the\n; village who knows where he is.\n; You take care now, [LINK]\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002D", + "code": "Message_002D:\n#_1C8EA6: db $00, $27, $32, $DF, $32, $42, $59, $BB ; Any[wa]y,\u23b5[lo]\n#_1C8EAE: db $28, $24, $59, $A8, $59, $D8, $59, $1E ; ok\u23b5[for]\u23b5[the]\u23b5e\n#_1C8EB6: db $25, $1D, $A6, $41 ; ld[er].\n#_1C8EBA: db $75 ; line 2\n#_1C8EBB: db $E6, $CD, $BF, $D3, $59, $97, $59, $CF ; [The][re ][mu][st]\u23b5[be]\u23b5[some]\n#_1C8EC3: db $C7, $1E, $59, $B4, $59, $D8 ; [on]e\u23b5[in]\u23b5[the]\n#_1C8EC9: db $76 ; line 3\n#_1C8ECA: db $2F, $22, $25, $BA, $20, $1E, $59, $E1 ; vil[la]ge\u23b5[wh]\n#_1C8ED2: db $28, $59, $B8, $2C, $59, $E1, $A6, $1E ; o\u23b5[know]s\u23b5[wh][er]e\n#_1C8EDA: db $59, $21, $1E, $59, $B5, $41 ; \u23b5he\u23b5[is].\n#_1C8EE0: db $7E ; wait for key\n#_1C8EE1: db $73 ; scroll text\n#_1C8EE2: db $E8, $59, $2D, $1A, $24, $1E, $59, $1C ; [You]\u23b5take\u23b5c\n#_1C8EEA: db $8D, $27, $28, $30, $42, $59, $6A, $43 ; [are ]now,\u23b5[LINK]\u2026\n#_1C8EF2: db $7F ; end of message\n\n; =========================================================\n; Ohhh,[LINK]. You've changed!\n; You look marvelous\u2026 Please\n; save us from Agahnim\n; the wizard!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002E", + "code": "Message_002E:\n#_1C8EF3: db $0E, $21, $21, $21, $42, $6A, $41, $8A ; Ohhh,[LINK].[ ]\n#_1C8EFB: db $E8, $51, $2F, $1E, $59, $1C, $B1, $27 ; [You]'ve\u23b5c[ha]n\n#_1C8F03: db $20, $1E, $1D, $3E ; ged!\n#_1C8F07: db $75 ; line 2\n#_1C8F08: db $E8, $59, $BB, $28, $24, $59, $BD, $2B ; [You]\u23b5[lo]ok\u23b5[ma]r\n#_1C8F10: db $2F, $1E, $BB, $2E, $2C, $43, $8A, $0F ; ve[lo]us\u2026[ ]P\n#_1C8F18: db $25, $1E, $1A, $D0 ; lea[se]\n#_1C8F1C: db $76 ; line 3\n#_1C8F1D: db $2C, $1A, $2F, $1E, $59, $2E, $2C, $59 ; save\u23b5us\u23b5\n#_1C8F25: db $A9, $26, $59, $00, $20, $1A, $21, $27 ; [fro]m\u23b5Agahn\n#_1C8F2D: db $22, $26 ; im\n#_1C8F2F: db $7E ; wait for key\n#_1C8F30: db $73 ; scroll text\n#_1C8F31: db $D8, $59, $E2, $33, $1A, $2B, $1D, $3E ; [the]\u23b5[wi]zard!\n#_1C8F39: db $7F ; end of message\n\n; =========================================================\n; Hey! Here is [LINK], the\n; wanted man! Soldiers! Anyone!\n; Come quickly!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_002F", + "code": "Message_002F:\n#_1C8F3A: db $07, $1E, $32, $3E, $8A, $E4, $1E, $59 ; Hey![ ][Her]e\u23b5\n#_1C8F42: db $B5, $59, $6A, $42, $59, $D8 ; [is]\u23b5[LINK],\u23b5[the]\n#_1C8F48: db $75 ; line 2\n#_1C8F49: db $DF, $27, $2D, $A4, $BC, $3E, $8A, $12 ; [wa]nt[ed ][man]![ ]S\n#_1C8F51: db $28, $25, $9E, $A6, $2C, $3E, $8A, $00 ; ol[di][er]s![ ]A\n#_1C8F59: db $27, $32, $C7, $1E, $3E ; ny[on]e!\n#_1C8F5E: db $76 ; line 3\n#_1C8F5F: db $02, $28, $BE, $59, $2A, $2E, $22, $9C ; Co[me]\u23b5qui[ck]\n#_1C8F67: db $25, $32, $3E ; ly!\n#_1C8F6A: db $7F ; end of message\n\n; =========================================================\n; Incredible! At last you have\n; the three Pendants\u2026 Now, you\n; should go to the Lost Woods.\n; If you are the true Hero, the\n; sword itself will select you.\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0030", + "code": "Message_0030:\n#_1C8F6B: db $08, $27, $1C, $CE, $9E, $95, $3E, $8A ; Inc[re][di][ble]![ ]\n#_1C8F73: db $00, $2D, $59, $BA, $D3, $59, $E3, $59 ; At\u23b5[la][st]\u23b5[you]\u23b5\n#_1C8F7B: db $AD ; [have]\n#_1C8F7C: db $75 ; line 2\n#_1C8F7D: db $D8, $59, $2D, $21, $CE, $1E, $59, $0F ; [the]\u23b5th[re]e\u23b5P\n#_1C8F85: db $A5, $1D, $93, $2D, $2C, $43, $8A, $0D ; [en]d[an]ts\u2026[ ]N\n#_1C8F8D: db $28, $30, $42, $59, $E3 ; ow,\u23b5[you]\n#_1C8F92: db $76 ; line 3\n#_1C8F93: db $D1, $28, $2E, $25, $1D, $59, $AC, $59 ; [sh]ould\u23b5[go]\u23b5\n#_1C8F9B: db $DA, $59, $D8, $59, $0B, $28, $D3, $59 ; [to]\u23b5[the]\u23b5Lo[st]\u23b5\n#_1C8FA3: db $16, $28, $28, $1D, $2C, $41 ; Woods.\n#_1C8FA9: db $7E ; wait for key\n#_1C8FAA: db $73 ; scroll text\n#_1C8FAB: db $08, $1F, $59, $E3, $59, $8D, $D8, $59 ; If\u23b5[you]\u23b5[are ][the]\u23b5\n#_1C8FB3: db $DB, $2E, $1E, $59, $E4, $28, $42, $59 ; [tr]ue\u23b5[Her]o,\u23b5\n#_1C8FBB: db $D8 ; [the]\n#_1C8FBC: db $73 ; scroll text\n#_1C8FBD: db $2C, $30, $C8, $1D, $59, $B6, $D0, $25 ; sw[or]d\u23b5[it][se]l\n#_1C8FC5: db $1F, $59, $E2, $25, $25, $59, $D0, $25 ; f\u23b5[wi]ll\u23b5[se]l\n#_1C8FCD: db $1E, $1C, $2D, $59, $E3, $41 ; ect\u23b5[you].\n#_1C8FD3: db $73 ; scroll text\n#_1C8FD4: db $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\n#_1C8FD9: db $7F ; end of message\n\n; =========================================================\n; I am too old to fight.\n; I can only rely on you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0031", + "code": "Message_0031:\n#_1C8FDA: db $08, $59, $1A, $26, $59, $DA, $28, $59 ; I\u23b5am\u23b5[to]o\u23b5\n#_1C8FE2: db $28, $25, $1D, $59, $DA, $59, $1F, $22 ; old\u23b5[to]\u23b5fi\n#_1C8FEA: db $20, $21, $2D, $41 ; ght.\n#_1C8FEE: db $75 ; line 2\n#_1C8FEF: db $08, $59, $99, $C7, $B9, $CE, $B9, $C7 ; I\u23b5[can ][on][ly ][re][ly ][on]\n#_1C8FF7: db $59, $E3, $41 ; \u23b5[you].\n#_1C8FFA: db $7F ; end of message\n\n; =========================================================\n; I am, indeed, Sahasrahla, the\n; village elder and a descendent\n; of the seven wise men.\n; \u2026 \u2026 Oh really?\n; [LINK], I am surprised a young\n; man like you is searching for\n; the sword of evil's bane.\n; Not just anyone can use that\n; weapon. Legends say only the\n; Hero who has won the three\n; Pendants can wield the sword.\n; \u2026 \u2026 \u2026\n; Do you really want to find it?\n; > Yeah!\n; Of Course!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0032", + "code": "Message_0032:\n#_1C8FFB: db $08, $59, $1A, $26, $42, $59, $B4, $1D ; I\u23b5am,\u23b5[in]d\n#_1C9003: db $1E, $1E, $1D, $42, $59, $12, $1A, $AE ; eed,\u23b5Sa[has]\n#_1C900B: db $2B, $1A, $21, $BA, $42, $59, $D8 ; rah[la],\u23b5[the]\n#_1C9012: db $75 ; line 2\n#_1C9013: db $2F, $22, $25, $BA, $20, $1E, $59, $1E ; vil[la]ge\u23b5e\n#_1C901B: db $25, $1D, $A1, $8C, $1A, $59, $9D, $1C ; ld[er ][and ]a\u23b5[des]c\n#_1C9023: db $A5, $1D, $A3 ; [en]d[ent]\n#_1C9026: db $76 ; line 3\n#_1C9027: db $C6, $59, $D8, $59, $D0, $2F, $A0, $E2 ; [of]\u23b5[the]\u23b5[se]v[en ][wi]\n#_1C902F: db $D0, $59, $BE, $27, $41 ; [se]\u23b5[me]n.\n#_1C9034: db $7E ; wait for key\n#_1C9035: db $73 ; scroll text\n#_1C9036: db $43, $89, $43, $88, $59, $0E, $21, $59 ; \u2026[ ]\u2026[ ]\u23b5Oh\u23b5\n#_1C903E: db $CE, $1A, $25, $25, $32, $3F ; [re]ally?\n#_1C9044: db $73 ; scroll text\n#_1C9045: db $6A, $42, $59, $08, $59, $1A, $26, $59 ; [LINK],\u23b5I\u23b5am\u23b5\n#_1C904D: db $2C, $2E, $2B, $29, $2B, $B5, $A4, $1A ; surpr[is][ed ]a\n#_1C9055: db $59, $E3, $27, $20 ; \u23b5[you]ng\n#_1C9059: db $73 ; scroll text\n#_1C905A: db $BC, $59, $25, $22, $24, $1E, $59, $E3 ; [man]\u23b5like\u23b5[you]\n#_1C9062: db $59, $B5, $59, $D0, $1A, $2B, $1C, $B0 ; \u23b5[is]\u23b5[se]arc[hi]\n#_1C906A: db $27, $20, $59, $A8 ; ng\u23b5[for]\n#_1C906E: db $7E ; wait for key\n#_1C906F: db $73 ; scroll text\n#_1C9070: db $D8, $59, $2C, $30, $C8, $1D, $59, $C6 ; [the]\u23b5sw[or]d\u23b5[of]\n#_1C9078: db $59, $A7, $22, $25, $8B, $96, $27, $1E ; \u23b5[ev]il['s ][ba]ne\n#_1C9080: db $41 ; .\n#_1C9081: db $73 ; scroll text\n#_1C9082: db $0D, $28, $2D, $59, $B7, $59, $93, $32 ; Not\u23b5[just]\u23b5[an]y\n#_1C908A: db $C7, $1E, $59, $99, $2E, $D0, $59, $D7 ; [on]e\u23b5[can ]u[se]\u23b5[tha]\n#_1C9092: db $2D ; t\n#_1C9093: db $73 ; scroll text\n#_1C9094: db $E0, $1A, $29, $C7, $41, $8A, $0B, $1E ; [we]ap[on].[ ]Le\n#_1C909C: db $20, $A5, $1D, $2C, $59, $2C, $1A, $32 ; g[en]ds\u23b5say\n#_1C90A4: db $59, $C7, $B9, $D8 ; \u23b5[on][ly ][the]\n#_1C90A8: db $7E ; wait for key\n#_1C90A9: db $73 ; scroll text\n#_1C90AA: db $E4, $28, $59, $E1, $28, $59, $AE, $59 ; [Her]o\u23b5[wh]o\u23b5[has]\u23b5\n#_1C90B2: db $30, $C7, $59, $D8, $59, $2D, $21, $CE ; w[on]\u23b5[the]\u23b5th[re]\n#_1C90BA: db $1E ; e\n#_1C90BB: db $73 ; scroll text\n#_1C90BC: db $0F, $A5, $1D, $93, $2D, $2C, $59, $99 ; P[en]d[an]ts\u23b5[can ]\n#_1C90C4: db $E2, $1E, $25, $1D, $59, $D8, $59, $2C ; [wi]eld\u23b5[the]\u23b5s\n#_1C90CC: db $30, $C8, $1D, $41 ; w[or]d.\n#_1C90D0: db $73 ; scroll text\n#_1C90D1: db $43, $89, $43, $89, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1C90D6: db $7E ; wait for key\n#_1C90D7: db $73 ; scroll text\n#_1C90D8: db $03, $28, $59, $E3, $59, $CE, $1A, $25 ; Do\u23b5[you]\u23b5[re]al\n#_1C90E0: db $B9, $DF, $27, $2D, $59, $DA, $59, $1F ; [ly ][wa]nt\u23b5[to]\u23b5f\n#_1C90E8: db $B4, $1D, $59, $B6, $3F ; [in]d\u23b5[it]?\n#_1C90ED: db $73 ; scroll text\n#_1C90EE: db $88, $44, $59, $18, $1E, $1A, $21, $3E ; [ ]>\u23b5Yeah!\n#_1C90F6: db $73 ; scroll text\n#_1C90F7: db $88, $89, $0E, $1F, $59, $02, $28, $2E ; [ ][ ]Of\u23b5Cou\n#_1C90FF: db $2B, $D0, $3E ; r[se]!\n#_1C9102: db $68 ; choose 2 indented\n#_1C9103: db $7F ; end of message\n\n; =========================================================\n; Good. As a test, can you\n; retrieve the Pendant Of\n; Courage from the East Palace?\n; If you bring it here, I will tell\n; you more of the legend and\n; give you a magical artifact.\n; Now, go forward to the palace.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0033", + "code": "Message_0033:\n#_1C9104: db $06, $28, $28, $1D, $41, $8A, $00, $2C ; Good.[ ]As\n#_1C910C: db $59, $1A, $59, $2D, $1E, $D3, $42, $59 ; \u23b5a\u23b5te[st],\u23b5\n#_1C9114: db $99, $E3 ; [can ][you]\n#_1C9116: db $75 ; line 2\n#_1C9117: db $CE, $DB, $22, $A7, $1E, $59, $D8, $59 ; [re][tr]i[ev]e\u23b5[the]\u23b5\n#_1C911F: db $0F, $A5, $1D, $93, $2D, $59, $0E, $1F ; P[en]d[an]t\u23b5Of\n#_1C9127: db $76 ; line 3\n#_1C9128: db $02, $28, $2E, $2B, $1A, $20, $1E, $59 ; Courage\u23b5\n#_1C9130: db $A9, $26, $59, $D8, $59, $04, $92, $59 ; [fro]m\u23b5[the]\u23b5E[ast]\u23b5\n#_1C9138: db $0F, $1A, $BA, $1C, $1E, $3F ; Pa[la]ce?\n#_1C913E: db $7E ; wait for key\n#_1C913F: db $73 ; scroll text\n#_1C9140: db $08, $1F, $59, $E3, $59, $1B, $2B, $B3 ; If\u23b5[you]\u23b5br[ing ]\n#_1C9148: db $B6, $59, $AF, $1E, $42, $59, $08, $59 ; [it]\u23b5[her]e,\u23b5I\u23b5\n#_1C9150: db $E2, $25, $25, $59, $2D, $1E, $25, $25 ; [wi]ll\u23b5tell\n#_1C9158: db $73 ; scroll text\n#_1C9159: db $E3, $59, $26, $C8, $1E, $59, $C6, $59 ; [you]\u23b5m[or]e\u23b5[of]\u23b5\n#_1C9161: db $D8, $59, $25, $1E, $20, $A5, $1D, $59 ; [the]\u23b5leg[en]d\u23b5\n#_1C9169: db $90 ; [and]\n#_1C916A: db $73 ; scroll text\n#_1C916B: db $AA, $E3, $59, $1A, $59, $BD, $20, $22 ; [give ][you]\u23b5a\u23b5[ma]gi\n#_1C9173: db $1C, $1A, $25, $59, $1A, $2B, $2D, $22 ; cal\u23b5arti\n#_1C917B: db $1F, $1A, $1C, $2D, $41 ; fact.\n#_1C9180: db $79, $2D ; play sfx\n#_1C9182: db $7E ; wait for key\n#_1C9183: db $73 ; scroll text\n#_1C9184: db $0D, $28, $30, $42, $59, $AC, $59, $A8 ; Now,\u23b5[go]\u23b5[for]\n#_1C918C: db $DF, $2B, $1D, $59, $DA, $59, $D8, $59 ; [wa]rd\u23b5[to]\u23b5[the]\u23b5\n#_1C9194: db $29, $1A, $BA, $1C, $1E, $41 ; pa[la]ce.\n#_1C919A: db $7F ; end of message\n\n; =========================================================\n; Other relatives of the wise men\n; are hiding from the evil\n; wizard's followers.\n; You should find them.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0034", + "code": "Message_0034:\n#_1C919B: db $0E, $D8, $2B, $59, $CE, $BA, $2D, $22 ; O[the]r\u23b5[re][la]ti\n#_1C91A3: db $2F, $1E, $2C, $59, $C6, $59, $D8, $59 ; ves\u23b5[of]\u23b5[the]\u23b5\n#_1C91AB: db $E2, $D0, $59, $BE, $27 ; [wi][se]\u23b5[me]n\n#_1C91B0: db $75 ; line 2\n#_1C91B1: db $8D, $B0, $9E, $27, $20, $59, $A9, $26 ; [are ][hi][di]ng\u23b5[fro]m\n#_1C91B9: db $59, $D8, $59, $A7, $22, $25 ; \u23b5[the]\u23b5[ev]il\n#_1C91BF: db $76 ; line 3\n#_1C91C0: db $E2, $33, $1A, $2B, $1D, $8B, $1F, $28 ; [wi]zard['s ]fo\n#_1C91C8: db $25, $BB, $E0, $2B, $2C, $41 ; l[lo][we]rs.\n#_1C91CE: db $7E ; wait for key\n#_1C91CF: db $73 ; scroll text\n#_1C91D0: db $E8, $59, $D1, $28, $2E, $25, $1D, $59 ; [You]\u23b5[sh]ould\u23b5\n#_1C91D8: db $1F, $B4, $1D, $59, $D8, $26, $41 ; f[in]d\u23b5[the]m.\n#_1C91DF: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla.\n; I am communicating to you\n; across the void through\n; telepathy\u2026 The place where\n; you now stand was the Golden\n; Land, but evil power turned it\n; into the Dark World. The\n; wizard has broken the wise\n; men's seal and opened a gate\n; to link the worlds\n; at Hyrule Castle. In\n; order to save this half of the\n; world, the Light World, you\n; must win back the Golden\n; Power. You must also rescue\n; the seven maidens who Agahnim\n; sent to the Dark World. As\n; members of the blood-line of\n; the seven wise men, they have\n; power that will surely help you.\n; The maidens are locked in\n; hidden dungeons full of evil\n; creatures and dangerous traps.\n; The Palace of Darkness should\n; be your first goal in this world!\n; [LINK], I can rely on only\n; you. Please make this old\n; man's wishes come true.\n; I beg you!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0035", + "code": "Message_0035:\n#_1C91E0: db $6B, $02 ; set window border\n#_1C91E2: db $7A, $03 ; set draw speed\n#_1C91E4: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1C91EC: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1C91F4: db $BA, $41 ; [la].\n#_1C91F6: db $75 ; line 2\n#_1C91F7: db $08, $59, $1A, $26, $59, $9B, $BF, $27 ; I\u23b5am\u23b5[com][mu]n\n#_1C91FF: db $22, $1C, $94, $B3, $DA, $59, $E3 ; ic[at][ing ][to]\u23b5[you]\n#_1C9206: db $76 ; line 3\n#_1C9207: db $1A, $1C, $2B, $28, $2C, $2C, $59, $D8 ; across\u23b5[the]\n#_1C920F: db $59, $2F, $28, $22, $1D, $59, $2D, $21 ; \u23b5void\u23b5th\n#_1C9217: db $2B, $28, $2E, $20, $21 ; rough\n#_1C921C: db $7E ; wait for key\n#_1C921D: db $73 ; scroll text\n#_1C921E: db $2D, $1E, $25, $1E, $29, $94, $21, $32 ; telep[at]hy\n#_1C9226: db $43, $8A, $E6, $59, $29, $BA, $1C, $1E ; \u2026[ ][The]\u23b5p[la]ce\n#_1C922E: db $59, $E1, $A6, $1E ; \u23b5[wh][er]e\n#_1C9232: db $73 ; scroll text\n#_1C9233: db $E3, $59, $27, $28, $30, $59, $D3, $8C ; [you]\u23b5now\u23b5[st][and ]\n#_1C923B: db $DF, $2C, $59, $D8, $59, $06, $28, $25 ; [wa]s\u23b5[the]\u23b5Gol\n#_1C9243: db $1D, $A5 ; d[en]\n#_1C9245: db $73 ; scroll text\n#_1C9246: db $0B, $90, $42, $59, $1B, $2E, $2D, $59 ; L[and],\u23b5but\u23b5\n#_1C924E: db $A7, $22, $25, $59, $CB, $A1, $2D, $2E ; [ev]il\u23b5[pow][er ]tu\n#_1C9256: db $2B, $27, $A4, $B6 ; rn[ed ][it]\n#_1C925A: db $7E ; wait for key\n#_1C925B: db $73 ; scroll text\n#_1C925C: db $B4, $DA, $59, $D8, $59, $03, $1A, $2B ; [in][to]\u23b5[the]\u23b5Dar\n#_1C9264: db $24, $59, $16, $C8, $25, $1D, $41, $8A ; k\u23b5W[or]ld.[ ]\n#_1C926C: db $E6 ; [The]\n#_1C926D: db $73 ; scroll text\n#_1C926E: db $E2, $33, $1A, $2B, $1D, $59, $AE, $59 ; [wi]zard\u23b5[has]\u23b5\n#_1C9276: db $1B, $2B, $28, $24, $A0, $D8, $59, $E2 ; brok[en ][the]\u23b5[wi]\n#_1C927E: db $D0 ; [se]\n#_1C927F: db $73 ; scroll text\n#_1C9280: db $BE, $27, $8B, $D0, $1A, $25, $59, $8C ; [me]n['s ][se]al\u23b5[and ]\n#_1C9288: db $C3, $A4, $1A, $59, $20, $94, $1E ; [open][ed ]a\u23b5g[at]e\n#_1C928F: db $7E ; wait for key\n#_1C9290: db $73 ; scroll text\n#_1C9291: db $DA, $59, $25, $B4, $24, $59, $D8, $59 ; [to]\u23b5l[in]k\u23b5[the]\u23b5\n#_1C9299: db $30, $C8, $25, $1D, $2C ; w[or]lds\n#_1C929E: db $73 ; scroll text\n#_1C929F: db $91, $07, $32, $2B, $2E, $25, $1E, $59 ; [at ]Hyrule\u23b5\n#_1C92A7: db $02, $92, $25, $1E, $41, $8A, $08, $27 ; C[ast]le.[ ]In\n#_1C92AF: db $73 ; scroll text\n#_1C92B0: db $C8, $1D, $A1, $DA, $59, $2C, $1A, $2F ; [or]d[er ][to]\u23b5sav\n#_1C92B8: db $1E, $59, $D9, $2C, $59, $B1, $25, $1F ; e\u23b5[thi]s\u23b5[ha]lf\n#_1C92C0: db $59, $C6, $59, $D8 ; \u23b5[of]\u23b5[the]\n#_1C92C4: db $7E ; wait for key\n#_1C92C5: db $73 ; scroll text\n#_1C92C6: db $30, $C8, $25, $1D, $42, $59, $D8, $59 ; w[or]ld,\u23b5[the]\u23b5\n#_1C92CE: db $0B, $B2, $16, $C8, $25, $1D, $42, $59 ; L[ight ]W[or]ld,\u23b5\n#_1C92D6: db $E3 ; [you]\n#_1C92D7: db $73 ; scroll text\n#_1C92D8: db $BF, $D3, $59, $E2, $27, $59, $96, $9C ; [mu][st]\u23b5[wi]n\u23b5[ba][ck]\n#_1C92E0: db $59, $D8, $59, $06, $28, $25, $1D, $A5 ; \u23b5[the]\u23b5Gold[en]\n#_1C92E8: db $73 ; scroll text\n#_1C92E9: db $0F, $28, $E0, $2B, $41, $8A, $E8, $59 ; Po[we]r.[ ][You]\u23b5\n#_1C92F1: db $BF, $D3, $59, $1A, $25, $D2, $59, $CE ; [mu][st]\u23b5al[so]\u23b5[re]\n#_1C92F9: db $2C, $1C, $2E, $1E ; scue\n#_1C92FD: db $7E ; wait for key\n#_1C92FE: db $73 ; scroll text\n#_1C92FF: db $D8, $59, $D0, $2F, $A0, $BD, $22, $1D ; [the]\u23b5[se]v[en ][ma]id\n#_1C9307: db $A5, $2C, $59, $E1, $28, $59, $00, $20 ; [en]s\u23b5[wh]o\u23b5Ag\n#_1C930F: db $1A, $21, $27, $22, $26 ; ahnim\n#_1C9314: db $73 ; scroll text\n#_1C9315: db $D0, $27, $2D, $59, $DA, $59, $D8, $59 ; [se]nt\u23b5[to]\u23b5[the]\u23b5\n#_1C931D: db $03, $1A, $2B, $24, $59, $16, $C8, $25 ; Dark\u23b5W[or]l\n#_1C9325: db $1D, $41, $8A, $00, $2C ; d.[ ]As\n#_1C932A: db $73 ; scroll text\n#_1C932B: db $BE, $26, $97, $2B, $2C, $59, $C6, $59 ; [me]m[be]rs\u23b5[of]\u23b5\n#_1C9333: db $D8, $59, $1B, $BB, $28, $1D, $40, $25 ; [the]\u23b5b[lo]od-l\n#_1C933B: db $B4, $1E, $59, $C6 ; [in]e\u23b5[of]\n#_1C933F: db $7E ; wait for key\n#_1C9340: db $73 ; scroll text\n#_1C9341: db $D8, $59, $D0, $2F, $A0, $E2, $D0, $59 ; [the]\u23b5[se]v[en ][wi][se]\u23b5\n#_1C9349: db $BE, $27, $42, $59, $D8, $32, $59, $AD ; [me]n,\u23b5[the]y\u23b5[have]\n#_1C9351: db $73 ; scroll text\n#_1C9352: db $CB, $A1, $D7, $2D, $59, $E2, $25, $25 ; [pow][er ][tha]t\u23b5[wi]ll\n#_1C935A: db $59, $2C, $2E, $CE, $B9, $21, $1E, $25 ; \u23b5su[re][ly ]hel\n#_1C9362: db $29, $59, $E3, $41 ; p\u23b5[you].\n#_1C9366: db $73 ; scroll text\n#_1C9367: db $E6, $59, $BD, $22, $1D, $A5, $2C, $59 ; [The]\u23b5[ma]id[en]s\u23b5\n#_1C936F: db $8D, $BB, $9C, $A4, $B4 ; [are ][lo][ck][ed ][in]\n#_1C9374: db $7E ; wait for key\n#_1C9375: db $73 ; scroll text\n#_1C9376: db $B0, $1D, $1D, $A0, $1D, $2E, $27, $20 ; [hi]dd[en ]dung\n#_1C937E: db $1E, $C7, $2C, $59, $1F, $2E, $25, $25 ; e[on]s\u23b5full\n#_1C9386: db $59, $C6, $59, $A7, $22, $25 ; \u23b5[of]\u23b5[ev]il\n#_1C938C: db $73 ; scroll text\n#_1C938D: db $1C, $CE, $94, $2E, $CE, $2C, $59, $8C ; c[re][at]u[re]s\u23b5[and ]\n#_1C9395: db $1D, $93, $20, $A6, $28, $2E, $2C, $59 ; d[an]g[er]ous\u23b5\n#_1C939D: db $DB, $1A, $29, $2C, $41 ; [tr]aps.\n#_1C93A2: db $73 ; scroll text\n#_1C93A3: db $E6, $59, $0F, $1A, $BA, $1C, $1E, $59 ; [The]\u23b5Pa[la]ce\u23b5\n#_1C93AB: db $C6, $59, $03, $1A, $2B, $24, $27, $1E ; [of]\u23b5Darkne\n#_1C93B3: db $2C, $2C, $59, $D1, $28, $2E, $25, $1D ; ss\u23b5[sh]ould\n#_1C93BB: db $7E ; wait for key\n#_1C93BC: db $73 ; scroll text\n#_1C93BD: db $97, $59, $E3, $2B, $59, $1F, $22, $2B ; [be]\u23b5[you]r\u23b5fir\n#_1C93C5: db $D3, $59, $AC, $1A, $25, $59, $B4, $59 ; [st]\u23b5[go]al\u23b5[in]\u23b5\n#_1C93CD: db $D9, $2C, $59, $30, $C8, $25, $1D, $3E ; [thi]s\u23b5w[or]ld!\n#_1C93D5: db $79, $2D ; play sfx\n#_1C93D7: db $73 ; scroll text\n#_1C93D8: db $6A, $42, $59, $08, $59, $99, $CE, $B9 ; [LINK],\u23b5I\u23b5[can ][re][ly ]\n#_1C93E0: db $C7, $59, $C7, $25, $32 ; [on]\u23b5[on]ly\n#_1C93E5: db $73 ; scroll text\n#_1C93E6: db $E3, $41, $8A, $0F, $25, $1E, $1A, $D0 ; [you].[ ]Plea[se]\n#_1C93EE: db $59, $BD, $24, $1E, $59, $D9, $2C, $59 ; \u23b5[ma]ke\u23b5[thi]s\u23b5\n#_1C93F6: db $28, $25, $1D ; old\n#_1C93F9: db $7E ; wait for key\n#_1C93FA: db $73 ; scroll text\n#_1C93FB: db $BC, $8B, $E2, $D1, $1E, $2C, $59, $9B ; [man]['s ][wi][sh]es\u23b5[com]\n#_1C9403: db $1E, $59, $DB, $2E, $1E, $41 ; e\u23b5[tr]ue.\n#_1C9409: db $73 ; scroll text\n#_1C940A: db $08, $59, $97, $20, $59, $E3, $3E ; I\u23b5[be]g\u23b5[you]!\n#_1C9411: db $7F ; end of message\n\n; =========================================================\n; But I sense your helplessness\u2026\n; Before you go any further,\n; find the Moon Pearl on\n; Death Mountain. It will protect\n; you from the Dark World's\n; magic so you can keep your\n; heroic figure.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0036", + "code": "Message_0036:\n#_1C9412: db $6B, $02 ; set window border\n#_1C9414: db $7A, $03 ; set draw speed\n#_1C9416: db $01, $2E, $2D, $59, $08, $59, $D0, $27 ; But\u23b5I\u23b5[se]n\n#_1C941E: db $D0, $59, $E3, $2B, $59, $21, $1E, $25 ; [se]\u23b5[you]r\u23b5hel\n#_1C9426: db $CA, $2C, $2C, $27, $1E, $2C, $2C, $43 ; [ple]ssness\u2026\n#_1C942E: db $75 ; line 2\n#_1C942F: db $01, $1E, $A8, $1E, $59, $E3, $59, $AC ; Be[for]e\u23b5[you]\u23b5[go]\n#_1C9437: db $59, $93, $32, $59, $1F, $2E, $2B, $D8 ; \u23b5[an]y\u23b5fur[the]\n#_1C943F: db $2B, $42 ; r,\n#_1C9441: db $76 ; line 3\n#_1C9442: db $1F, $B4, $1D, $59, $D8, $59, $0C, $28 ; f[in]d\u23b5[the]\u23b5Mo\n#_1C944A: db $C7, $59, $0F, $A2, $25, $59, $C7 ; [on]\u23b5P[ear]l\u23b5[on]\n#_1C9451: db $7E ; wait for key\n#_1C9452: db $73 ; scroll text\n#_1C9453: db $03, $1E, $94, $21, $59, $0C, $28, $2E ; De[at]h\u23b5Mou\n#_1C945B: db $27, $2D, $8F, $41, $8A, $08, $2D, $59 ; nt[ain].[ ]It\u23b5\n#_1C9463: db $E2, $25, $25, $59, $CC, $2D, $1E, $1C ; [wi]ll\u23b5[pro]tec\n#_1C946B: db $2D ; t\n#_1C946C: db $73 ; scroll text\n#_1C946D: db $E3, $59, $A9, $26, $59, $D8, $59, $03 ; [you]\u23b5[fro]m\u23b5[the]\u23b5D\n#_1C9475: db $1A, $2B, $24, $59, $16, $C8, $25, $1D ; ark\u23b5W[or]ld\n#_1C947D: db $51, $2C ; 's\n#_1C947F: db $73 ; scroll text\n#_1C9480: db $BD, $20, $22, $1C, $59, $D2, $59, $E3 ; [ma]gic\u23b5[so]\u23b5[you]\n#_1C9488: db $59, $99, $24, $1E, $1E, $29, $59, $E3 ; \u23b5[can ]keep\u23b5[you]\n#_1C9490: db $2B ; r\n#_1C9491: db $7E ; wait for key\n#_1C9492: db $73 ; scroll text\n#_1C9493: db $AF, $28, $22, $1C, $59, $1F, $22, $20 ; [her]oic\u23b5fig\n#_1C949B: db $2E, $CE, $41 ; u[re].\n#_1C949E: db $7F ; end of message\n\n; =========================================================\n; A helpful item is hidden in the\n; cave on the east side of Lake\n; Hylia. Get it!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0037", + "code": "Message_0037:\n#_1C949F: db $00, $59, $21, $1E, $25, $29, $1F, $2E ; A\u23b5helpfu\n#_1C94A7: db $25, $59, $B6, $1E, $26, $59, $B5, $59 ; l\u23b5[it]em\u23b5[is]\u23b5\n#_1C94AF: db $B0, $1D, $1D, $A0, $B4, $59, $D8 ; [hi]dd[en ][in]\u23b5[the]\n#_1C94B6: db $75 ; line 2\n#_1C94B7: db $1C, $1A, $2F, $1E, $59, $C7, $59, $D8 ; cave\u23b5[on]\u23b5[the]\n#_1C94BF: db $59, $1E, $92, $59, $2C, $22, $1D, $1E ; \u23b5e[ast]\u23b5side\n#_1C94C7: db $59, $C6, $59, $0B, $1A, $24, $1E ; \u23b5[of]\u23b5Lake\n#_1C94CE: db $76 ; line 3\n#_1C94CF: db $07, $32, $25, $22, $1A, $41, $8A, $06 ; Hylia.[ ]G\n#_1C94D7: db $1E, $2D, $59, $B6, $3E ; et\u23b5[it]!\n#_1C94DC: db $7F ; end of message\n\n; =========================================================\n; Oh!? You got the Pendant Of\n; Courage! Now I will tell you\n; more of the legend\u2026\n; Three or four generations ago,\n; an order of knights protected\n; the royalty of the Hylia.\n; These Knights Of Hyrule were\n; also guardians of the Pendant\n; Of Courage.\n; Unfortunately, most of them\n; were destroyed in the great\n; war against evil that took\n; place when the seven wise men\n; created their seal. Among the\n; descendants of the Knights Of\n; Hyrule a hero must appear.\n; \u2026I see. [LINK], I believe you.\n; You should get the remaining\n; Pendants.\n; And carry this with you.\n; This is a treasure passed down\n; by the families of the wise\n; men. I want you to have it.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0038", + "code": "Message_0038:\n#_1C94DD: db $0E, $21, $3E, $3F, $8A, $E8, $59, $AC ; Oh!?[ ][You]\u23b5[go]\n#_1C94E5: db $2D, $59, $D8, $59, $0F, $A5, $1D, $93 ; t\u23b5[the]\u23b5P[en]d[an]\n#_1C94ED: db $2D, $59, $0E, $1F ; t\u23b5Of\n#_1C94F1: db $75 ; line 2\n#_1C94F2: db $02, $28, $2E, $2B, $1A, $20, $1E, $3E ; Courage!\n#_1C94FA: db $8A, $0D, $28, $30, $59, $08, $59, $E2 ; [ ]Now\u23b5I\u23b5[wi]\n#_1C9502: db $25, $25, $59, $2D, $1E, $25, $25, $59 ; ll\u23b5tell\u23b5\n#_1C950A: db $E3 ; [you]\n#_1C950B: db $76 ; line 3\n#_1C950C: db $26, $C8, $1E, $59, $C6, $59, $D8, $59 ; m[or]e\u23b5[of]\u23b5[the]\u23b5\n#_1C9514: db $25, $1E, $20, $A5, $1D, $43 ; leg[en]d\u2026\n#_1C951A: db $7E ; wait for key\n#_1C951B: db $73 ; scroll text\n#_1C951C: db $13, $21, $CE, $1E, $59, $C8, $59, $1F ; Th[re]e\u23b5[or]\u23b5f\n#_1C9524: db $28, $2E, $2B, $59, $20, $A5, $A6, $94 ; our\u23b5g[en][er][at]\n#_1C952C: db $22, $C7, $2C, $59, $1A, $AC, $42 ; i[on]s\u23b5a[go],\n#_1C9533: db $73 ; scroll text\n#_1C9534: db $93, $59, $C8, $1D, $A1, $C6, $59, $24 ; [an]\u23b5[or]d[er ][of]\u23b5k\n#_1C953C: db $27, $22, $20, $21, $2D, $2C, $59, $CC ; nights\u23b5[pro]\n#_1C9544: db $2D, $1E, $1C, $2D, $1E, $1D ; tected\n#_1C954A: db $73 ; scroll text\n#_1C954B: db $D8, $59, $2B, $28, $32, $1A, $25, $2D ; [the]\u23b5royalt\n#_1C9553: db $32, $59, $C6, $59, $D8, $59, $07, $32 ; y\u23b5[of]\u23b5[the]\u23b5Hy\n#_1C955B: db $25, $22, $1A, $41 ; lia.\n#_1C955F: db $7E ; wait for key\n#_1C9560: db $73 ; scroll text\n#_1C9561: db $E6, $D0, $59, $0A, $27, $22, $20, $21 ; [The][se]\u23b5Knigh\n#_1C9569: db $2D, $2C, $59, $0E, $1F, $59, $07, $32 ; ts\u23b5Of\u23b5Hy\n#_1C9571: db $2B, $2E, $25, $1E, $59, $E0, $CE ; rule\u23b5[we][re]\n#_1C9578: db $73 ; scroll text\n#_1C9579: db $1A, $25, $D2, $59, $20, $2E, $1A, $2B ; al[so]\u23b5guar\n#_1C9581: db $9E, $93, $2C, $59, $C6, $59, $D8, $59 ; [di][an]s\u23b5[of]\u23b5[the]\u23b5\n#_1C9589: db $0F, $A5, $1D, $93, $2D ; P[en]d[an]t\n#_1C958E: db $73 ; scroll text\n#_1C958F: db $0E, $1F, $59, $02, $28, $2E, $2B, $1A ; Of\u23b5Coura\n#_1C9597: db $20, $1E, $41 ; ge.\n#_1C959A: db $7E ; wait for key\n#_1C959B: db $73 ; scroll text\n#_1C959C: db $14, $27, $A8, $2D, $2E, $27, $94, $1E ; Un[for]tun[at]e\n#_1C95A4: db $25, $32, $42, $59, $26, $28, $D3, $59 ; ly,\u23b5mo[st]\u23b5\n#_1C95AC: db $C6, $59, $D8, $26 ; [of]\u23b5[the]m\n#_1C95B0: db $73 ; scroll text\n#_1C95B1: db $E0, $CD, $9D, $DB, $28, $32, $A4, $B4 ; [we][re ][des][tr]oy[ed ][in]\n#_1C95B9: db $59, $D8, $59, $20, $CE, $94 ; \u23b5[the]\u23b5g[re][at]\n#_1C95BF: db $73 ; scroll text\n#_1C95C0: db $DF, $2B, $59, $1A, $20, $8F, $D3, $59 ; [wa]r\u23b5ag[ain][st]\u23b5\n#_1C95C8: db $A7, $22, $25, $59, $D7, $2D, $59, $DA ; [ev]il\u23b5[tha]t\u23b5[to]\n#_1C95D0: db $28, $24 ; ok\n#_1C95D2: db $7E ; wait for key\n#_1C95D3: db $73 ; scroll text\n#_1C95D4: db $29, $BA, $1C, $1E, $59, $E1, $A0, $D8 ; p[la]ce\u23b5[wh][en ][the]\n#_1C95DC: db $59, $D0, $2F, $A0, $E2, $D0, $59, $BE ; \u23b5[se]v[en ][wi][se]\u23b5[me]\n#_1C95E4: db $27 ; n\n#_1C95E5: db $73 ; scroll text\n#_1C95E6: db $1C, $CE, $94, $A4, $D8, $22, $2B, $59 ; c[re][at][ed ][the]ir\u23b5\n#_1C95EE: db $D0, $1A, $25, $41, $8A, $00, $26, $C7 ; [se]al.[ ]Am[on]\n#_1C95F6: db $20, $59, $D8 ; g\u23b5[the]\n#_1C95F9: db $73 ; scroll text\n#_1C95FA: db $9D, $1C, $A5, $1D, $93, $2D, $2C, $59 ; [des]c[en]d[an]ts\u23b5\n#_1C9602: db $C6, $59, $D8, $59, $0A, $27, $22, $20 ; [of]\u23b5[the]\u23b5Knig\n#_1C960A: db $21, $2D, $2C, $59, $0E, $1F ; hts\u23b5Of\n#_1C9610: db $7E ; wait for key\n#_1C9611: db $73 ; scroll text\n#_1C9612: db $07, $32, $2B, $2E, $25, $1E, $59, $1A ; Hyrule\u23b5a\n#_1C961A: db $59, $AF, $28, $59, $BF, $D3, $59, $1A ; \u23b5[her]o\u23b5[mu][st]\u23b5a\n#_1C9622: db $29, $29, $A2, $41 ; pp[ear].\n#_1C9626: db $73 ; scroll text\n#_1C9627: db $43, $08, $59, $D0, $1E, $41, $8A, $6A ; \u2026I\u23b5[se]e.[ ][LINK]\n#_1C962F: db $42, $59, $08, $59, $97, $25, $22, $A7 ; ,\u23b5I\u23b5[be]li[ev]\n#_1C9637: db $1E, $59, $E3, $41 ; e\u23b5[you].\n#_1C963B: db $73 ; scroll text\n#_1C963C: db $E8, $59, $D1, $28, $2E, $25, $1D, $59 ; [You]\u23b5[sh]ould\u23b5\n#_1C9644: db $AB, $59, $D8, $59, $CE, $BD, $B4, $B4 ; [get]\u23b5[the]\u23b5[re][ma][in][in]\n#_1C964C: db $20 ; g\n#_1C964D: db $7E ; wait for key\n#_1C964E: db $73 ; scroll text\n#_1C964F: db $0F, $A5, $1D, $93, $2D, $2C, $41 ; P[en]d[an]ts.\n#_1C9656: db $73 ; scroll text\n#_1C9657: db $00, $27, $1D, $59, $1C, $1A, $2B, $2B ; And\u23b5carr\n#_1C965F: db $32, $59, $D9, $2C, $59, $DE, $59, $E3 ; y\u23b5[thi]s\u23b5[with]\u23b5[you]\n#_1C9667: db $41 ; .\n#_1C9668: db $73 ; scroll text\n#_1C9669: db $E7, $2C, $59, $B5, $59, $1A, $59, $DB ; [Thi]s\u23b5[is]\u23b5a\u23b5[tr]\n#_1C9671: db $1E, $1A, $2C, $2E, $CD, $29, $1A, $2C ; easu[re ]pas\n#_1C9679: db $D0, $1D, $59, $9F, $30, $27 ; [se]d\u23b5[do]wn\n#_1C967F: db $7E ; wait for key\n#_1C9680: db $73 ; scroll text\n#_1C9681: db $1B, $32, $59, $D8, $59, $1F, $1A, $26 ; by\u23b5[the]\u23b5fam\n#_1C9689: db $22, $25, $22, $1E, $2C, $59, $C6, $59 ; ilies\u23b5[of]\u23b5\n#_1C9691: db $D8, $59, $E2, $D0 ; [the]\u23b5[wi][se]\n#_1C9695: db $73 ; scroll text\n#_1C9696: db $BE, $27, $41, $8A, $08, $59, $DF, $27 ; [me]n.[ ]I\u23b5[wa]n\n#_1C969E: db $2D, $59, $E3, $59, $DA, $59, $AD, $59 ; t\u23b5[you]\u23b5[to]\u23b5[have]\u23b5\n#_1C96A6: db $B6, $41 ; [it].\n#_1C96A8: db $7F ; end of message\n\n; =========================================================\n; You are correct, young man!\n; I am Sahasrahla, the village\n; elder and a descendent of the\n; seven wise men.\n; \u2026 \u2026 \u2026 What?\n; [LINK], I'm surprised a young\n; man like you is looking for the\n; sword of evil's bane. Not just\n; anyone can use that sword.\n; According to the tales handed\n; down by the Hylia, only the\n; Hero who has destroyed three\n; great evils and won the three\n; Pendants can wield the sword\u2026\n; \u2026 \u2026 \u2026\n; I see you have acquired the\n; Pendant of Courage. I will tell\n; you about the legend behind it.\n; Three or four generations ago,\n; an order of knights protected\n; the royalty of the Hylia.\n; These Knights Of Hyrule were\n; also guardians of the Pendant\n; Of Courage.\n; Unfortunately, most of them\n; were destroyed in the great\n; war against evil that took\n; place when the seven wise men\n; created their seal. Among the\n; descendants of the Knights Of\n; Hyrule a hero must appear.\n; \u2026I see. [LINK], I believe you.\n; You should get the remaining\n; Pendants.\n; And carry this with you.\n; This is a treasure passed down\n; by the families of the wise\n; men. I want you to have it.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0039", + "code": "Message_0039:\n#_1C96A9: db $E8, $59, $8D, $1C, $C8, $CE, $1C, $2D ; [You]\u23b5[are ]c[or][re]ct\n#_1C96B1: db $42, $59, $E3, $27, $20, $59, $BC, $3E ; ,\u23b5[you]ng\u23b5[man]!\n#_1C96B9: db $75 ; line 2\n#_1C96BA: db $08, $59, $1A, $26, $59, $12, $1A, $AE ; I\u23b5am\u23b5Sa[has]\n#_1C96C2: db $2B, $1A, $21, $BA, $42, $59, $D8, $59 ; rah[la],\u23b5[the]\u23b5\n#_1C96CA: db $2F, $22, $25, $BA, $20, $1E ; vil[la]ge\n#_1C96D0: db $76 ; line 3\n#_1C96D1: db $1E, $25, $1D, $A1, $8C, $1A, $59, $9D ; eld[er ][and ]a\u23b5[des]\n#_1C96D9: db $1C, $A5, $1D, $A3, $59, $C6, $59, $D8 ; c[en]d[ent]\u23b5[of]\u23b5[the]\n#_1C96E1: db $7E ; wait for key\n#_1C96E2: db $73 ; scroll text\n#_1C96E3: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1C96EB: db $41 ; .\n#_1C96EC: db $73 ; scroll text\n#_1C96ED: db $43, $59, $43, $59, $43, $59, $16, $B1 ; \u2026\u23b5\u2026\u23b5\u2026\u23b5W[ha]\n#_1C96F5: db $2D, $3F ; t?\n#_1C96F7: db $73 ; scroll text\n#_1C96F8: db $6A, $42, $59, $08, $51, $26, $59, $2C ; [LINK],\u23b5I'm\u23b5s\n#_1C9700: db $2E, $2B, $29, $2B, $B5, $A4, $1A, $59 ; urpr[is][ed ]a\u23b5\n#_1C9708: db $E3, $27, $20 ; [you]ng\n#_1C970B: db $7E ; wait for key\n#_1C970C: db $73 ; scroll text\n#_1C970D: db $BC, $59, $25, $22, $24, $1E, $59, $E3 ; [man]\u23b5like\u23b5[you]\n#_1C9715: db $59, $B5, $59, $BB, $28, $24, $B3, $A8 ; \u23b5[is]\u23b5[lo]ok[ing ][for]\n#_1C971D: db $59, $D8 ; \u23b5[the]\n#_1C971F: db $73 ; scroll text\n#_1C9720: db $2C, $30, $C8, $1D, $59, $C6, $59, $A7 ; sw[or]d\u23b5[of]\u23b5[ev]\n#_1C9728: db $22, $25, $8B, $96, $27, $1E, $41, $8A ; il['s ][ba]ne.[ ]\n#_1C9730: db $0D, $28, $2D, $59, $B7 ; Not\u23b5[just]\n#_1C9735: db $73 ; scroll text\n#_1C9736: db $93, $32, $C7, $1E, $59, $99, $2E, $D0 ; [an]y[on]e\u23b5[can ]u[se]\n#_1C973E: db $59, $D7, $2D, $59, $2C, $30, $C8, $1D ; \u23b5[tha]t\u23b5sw[or]d\n#_1C9746: db $41 ; .\n#_1C9747: db $7E ; wait for key\n#_1C9748: db $73 ; scroll text\n#_1C9749: db $00, $1C, $1C, $C8, $9E, $27, $20, $59 ; Acc[or][di]ng\u23b5\n#_1C9751: db $DA, $59, $D8, $59, $2D, $1A, $25, $1E ; [to]\u23b5[the]\u23b5tale\n#_1C9759: db $2C, $59, $B1, $27, $1D, $1E, $1D ; s\u23b5[ha]nded\n#_1C9760: db $73 ; scroll text\n#_1C9761: db $9F, $30, $27, $59, $1B, $32, $59, $D8 ; [do]wn\u23b5by\u23b5[the]\n#_1C9769: db $59, $07, $32, $25, $22, $1A, $42, $59 ; \u23b5Hylia,\u23b5\n#_1C9771: db $C7, $B9, $D8 ; [on][ly ][the]\n#_1C9774: db $73 ; scroll text\n#_1C9775: db $E4, $28, $59, $E1, $28, $59, $AE, $59 ; [Her]o\u23b5[wh]o\u23b5[has]\u23b5\n#_1C977D: db $9D, $DB, $28, $32, $A4, $2D, $21, $CE ; [des][tr]oy[ed ]th[re]\n#_1C9785: db $1E ; e\n#_1C9786: db $7E ; wait for key\n#_1C9787: db $73 ; scroll text\n#_1C9788: db $20, $CE, $91, $A7, $22, $25, $2C, $59 ; g[re][at ][ev]ils\u23b5\n#_1C9790: db $8C, $30, $C7, $59, $D8, $59, $2D, $21 ; [and ]w[on]\u23b5[the]\u23b5th\n#_1C9798: db $CE, $1E ; [re]e\n#_1C979A: db $73 ; scroll text\n#_1C979B: db $0F, $A5, $1D, $93, $2D, $2C, $59, $99 ; P[en]d[an]ts\u23b5[can ]\n#_1C97A3: db $E2, $1E, $25, $1D, $59, $D8, $59, $2C ; [wi]eld\u23b5[the]\u23b5s\n#_1C97AB: db $30, $C8, $1D, $43 ; w[or]d\u2026\n#_1C97AF: db $73 ; scroll text\n#_1C97B0: db $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\n#_1C97B5: db $7E ; wait for key\n#_1C97B6: db $73 ; scroll text\n#_1C97B7: db $08, $59, $D0, $1E, $59, $E3, $59, $AD ; I\u23b5[se]e\u23b5[you]\u23b5[have]\n#_1C97BF: db $59, $1A, $1C, $2A, $2E, $22, $CE, $1D ; \u23b5acqui[re]d\n#_1C97C7: db $59, $D8 ; \u23b5[the]\n#_1C97C9: db $73 ; scroll text\n#_1C97CA: db $0F, $A5, $1D, $93, $2D, $59, $C6, $59 ; P[en]d[an]t\u23b5[of]\u23b5\n#_1C97D2: db $02, $28, $2E, $2B, $1A, $20, $1E, $41 ; Courage.\n#_1C97DA: db $8A, $08, $59, $E2, $25, $25, $59, $2D ; [ ]I\u23b5[wi]ll\u23b5t\n#_1C97E2: db $1E, $25, $25 ; ell\n#_1C97E5: db $73 ; scroll text\n#_1C97E6: db $E3, $59, $1A, $98, $2E, $2D, $59, $D8 ; [you]\u23b5a[bo]ut\u23b5[the]\n#_1C97EE: db $59, $25, $1E, $20, $A5, $1D, $59, $97 ; \u23b5leg[en]d\u23b5[be]\n#_1C97F6: db $B0, $27, $1D, $59, $B6, $41 ; [hi]nd\u23b5[it].\n#_1C97FC: db $7E ; wait for key\n#_1C97FD: db $73 ; scroll text\n#_1C97FE: db $13, $21, $CE, $1E, $59, $C8, $59, $1F ; Th[re]e\u23b5[or]\u23b5f\n#_1C9806: db $28, $2E, $2B, $59, $20, $A5, $A6, $94 ; our\u23b5g[en][er][at]\n#_1C980E: db $22, $C7, $2C, $59, $1A, $AC, $42 ; i[on]s\u23b5a[go],\n#_1C9815: db $73 ; scroll text\n#_1C9816: db $93, $59, $C8, $1D, $A1, $C6, $59, $24 ; [an]\u23b5[or]d[er ][of]\u23b5k\n#_1C981E: db $27, $22, $20, $21, $2D, $2C, $59, $CC ; nights\u23b5[pro]\n#_1C9826: db $2D, $1E, $1C, $2D, $1E, $1D ; tected\n#_1C982C: db $73 ; scroll text\n#_1C982D: db $D8, $59, $2B, $28, $32, $1A, $25, $2D ; [the]\u23b5royalt\n#_1C9835: db $32, $59, $C6, $59, $D8, $59, $07, $32 ; y\u23b5[of]\u23b5[the]\u23b5Hy\n#_1C983D: db $25, $22, $1A, $41 ; lia.\n#_1C9841: db $7E ; wait for key\n#_1C9842: db $73 ; scroll text\n#_1C9843: db $E6, $D0, $59, $0A, $27, $22, $20, $21 ; [The][se]\u23b5Knigh\n#_1C984B: db $2D, $2C, $59, $0E, $1F, $59, $07, $32 ; ts\u23b5Of\u23b5Hy\n#_1C9853: db $2B, $2E, $25, $1E, $59, $E0, $CE ; rule\u23b5[we][re]\n#_1C985A: db $73 ; scroll text\n#_1C985B: db $1A, $25, $D2, $59, $20, $2E, $1A, $2B ; al[so]\u23b5guar\n#_1C9863: db $9E, $93, $2C, $59, $C6, $59, $D8, $59 ; [di][an]s\u23b5[of]\u23b5[the]\u23b5\n#_1C986B: db $0F, $A5, $1D, $93, $2D ; P[en]d[an]t\n#_1C9870: db $73 ; scroll text\n#_1C9871: db $0E, $1F, $59, $02, $28, $2E, $2B, $1A ; Of\u23b5Coura\n#_1C9879: db $20, $1E, $41 ; ge.\n#_1C987C: db $7E ; wait for key\n#_1C987D: db $73 ; scroll text\n#_1C987E: db $14, $27, $A8, $2D, $2E, $27, $94, $1E ; Un[for]tun[at]e\n#_1C9886: db $25, $32, $42, $59, $26, $28, $D3, $59 ; ly,\u23b5mo[st]\u23b5\n#_1C988E: db $C6, $59, $D8, $26 ; [of]\u23b5[the]m\n#_1C9892: db $73 ; scroll text\n#_1C9893: db $E0, $CD, $9D, $DB, $28, $32, $A4, $B4 ; [we][re ][des][tr]oy[ed ][in]\n#_1C989B: db $59, $D8, $59, $20, $CE, $94 ; \u23b5[the]\u23b5g[re][at]\n#_1C98A1: db $73 ; scroll text\n#_1C98A2: db $DF, $2B, $59, $1A, $20, $8F, $D3, $59 ; [wa]r\u23b5ag[ain][st]\u23b5\n#_1C98AA: db $A7, $22, $25, $59, $D7, $2D, $59, $DA ; [ev]il\u23b5[tha]t\u23b5[to]\n#_1C98B2: db $28, $24 ; ok\n#_1C98B4: db $7E ; wait for key\n#_1C98B5: db $73 ; scroll text\n#_1C98B6: db $29, $BA, $1C, $1E, $59, $E1, $A0, $D8 ; p[la]ce\u23b5[wh][en ][the]\n#_1C98BE: db $59, $D0, $2F, $A0, $E2, $D0, $59, $BE ; \u23b5[se]v[en ][wi][se]\u23b5[me]\n#_1C98C6: db $27 ; n\n#_1C98C7: db $73 ; scroll text\n#_1C98C8: db $1C, $CE, $94, $A4, $D8, $22, $2B, $59 ; c[re][at][ed ][the]ir\u23b5\n#_1C98D0: db $D0, $1A, $25, $41, $8A, $00, $26, $C7 ; [se]al.[ ]Am[on]\n#_1C98D8: db $20, $59, $D8 ; g\u23b5[the]\n#_1C98DB: db $73 ; scroll text\n#_1C98DC: db $9D, $1C, $A5, $1D, $93, $2D, $2C, $59 ; [des]c[en]d[an]ts\u23b5\n#_1C98E4: db $C6, $59, $D8, $59, $0A, $27, $22, $20 ; [of]\u23b5[the]\u23b5Knig\n#_1C98EC: db $21, $2D, $2C, $59, $0E, $1F ; hts\u23b5Of\n#_1C98F2: db $7E ; wait for key\n#_1C98F3: db $73 ; scroll text\n#_1C98F4: db $07, $32, $2B, $2E, $25, $1E, $59, $1A ; Hyrule\u23b5a\n#_1C98FC: db $59, $AF, $28, $59, $BF, $D3, $59, $1A ; \u23b5[her]o\u23b5[mu][st]\u23b5a\n#_1C9904: db $29, $29, $A2, $41 ; pp[ear].\n#_1C9908: db $73 ; scroll text\n#_1C9909: db $43, $08, $59, $D0, $1E, $41, $8A, $6A ; \u2026I\u23b5[se]e.[ ][LINK]\n#_1C9911: db $42, $59, $08, $59, $97, $25, $22, $A7 ; ,\u23b5I\u23b5[be]li[ev]\n#_1C9919: db $1E, $59, $E3, $41 ; e\u23b5[you].\n#_1C991D: db $73 ; scroll text\n#_1C991E: db $E8, $59, $D1, $28, $2E, $25, $1D, $59 ; [You]\u23b5[sh]ould\u23b5\n#_1C9926: db $AB, $59, $D8, $59, $CE, $BD, $B4, $B4 ; [get]\u23b5[the]\u23b5[re][ma][in][in]\n#_1C992E: db $20 ; g\n#_1C992F: db $7E ; wait for key\n#_1C9930: db $73 ; scroll text\n#_1C9931: db $0F, $A5, $1D, $93, $2D, $2C, $41 ; P[en]d[an]ts.\n#_1C9938: db $73 ; scroll text\n#_1C9939: db $00, $27, $1D, $59, $1C, $1A, $2B, $2B ; And\u23b5carr\n#_1C9941: db $32, $59, $D9, $2C, $59, $DE, $59, $E3 ; y\u23b5[thi]s\u23b5[with]\u23b5[you]\n#_1C9949: db $41 ; .\n#_1C994A: db $73 ; scroll text\n#_1C994B: db $E7, $2C, $59, $B5, $59, $1A, $59, $DB ; [Thi]s\u23b5[is]\u23b5a\u23b5[tr]\n#_1C9953: db $1E, $1A, $2C, $2E, $CD, $29, $1A, $2C ; easu[re ]pas\n#_1C995B: db $D0, $1D, $59, $9F, $30, $27 ; [se]d\u23b5[do]wn\n#_1C9961: db $7E ; wait for key\n#_1C9962: db $73 ; scroll text\n#_1C9963: db $1B, $32, $59, $D8, $59, $1F, $1A, $26 ; by\u23b5[the]\u23b5fam\n#_1C996B: db $22, $25, $22, $1E, $2C, $59, $C6, $59 ; ilies\u23b5[of]\u23b5\n#_1C9973: db $D8, $59, $E2, $D0 ; [the]\u23b5[wi][se]\n#_1C9977: db $73 ; scroll text\n#_1C9978: db $BE, $27, $41, $8A, $08, $59, $DF, $27 ; [me]n.[ ]I\u23b5[wa]n\n#_1C9980: db $2D, $59, $E3, $59, $DA, $59, $AD, $59 ; t\u23b5[you]\u23b5[to]\u23b5[have]\u23b5\n#_1C9988: db $B6, $41 ; [it].\n#_1C998A: db $7F ; end of message\n\n; =========================================================\n; I will give 100 Rupees to the\n; man who finds the descendants\n; of the wise men. THE KING\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003A", + "code": "Message_003A:\n#_1C998B: db $08, $59, $E2, $25, $25, $59, $AA, $35 ; I\u23b5[wi]ll\u23b5[give ]1\n#_1C9993: db $34, $34, $59, $11, $DC, $1E, $1E, $2C ; 00\u23b5R[up]ees\n#_1C999B: db $59, $DA, $59, $D8 ; \u23b5[to]\u23b5[the]\n#_1C999F: db $75 ; line 2\n#_1C99A0: db $BC, $59, $E1, $28, $59, $1F, $B4, $1D ; [man]\u23b5[wh]o\u23b5f[in]d\n#_1C99A8: db $2C, $59, $D8, $59, $9D, $1C, $A5, $1D ; s\u23b5[the]\u23b5[des]c[en]d\n#_1C99B0: db $93, $2D, $2C ; [an]ts\n#_1C99B3: db $76 ; line 3\n#_1C99B4: db $C6, $59, $D8, $59, $E2, $D0, $59, $BE ; [of]\u23b5[the]\u23b5[wi][se]\u23b5[me]\n#_1C99BC: db $27, $41, $89, $13, $07, $04, $59, $0A ; n.[ ]THE\u23b5K\n#_1C99C4: db $08, $0D, $06 ; ING\n#_1C99C7: db $7F ; end of message\n\n; =========================================================\n; \ud83d\ude2c WANTED! This is the\n; criminal who kidnapped Zelda.\n; Call a soldier if you see him!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003B", + "code": "Message_003B:\n#_1C99C8: db $8A, $4A, $4B, $8A, $16, $00, $0D, $13 ; [ ]\ud83d\ude2c[ ]WANT\n#_1C99D0: db $04, $03, $3E, $8A, $E7, $2C, $59, $B5 ; ED![ ][Thi]s\u23b5[is]\n#_1C99D8: db $59, $D8 ; \u23b5[the]\n#_1C99DA: db $75 ; line 2\n#_1C99DB: db $1C, $2B, $22, $26, $B4, $1A, $25, $59 ; crim[in]al\u23b5\n#_1C99E3: db $E1, $28, $59, $24, $22, $1D, $27, $1A ; [wh]o\u23b5kidna\n#_1C99EB: db $29, $29, $A4, $19, $1E, $25, $1D, $1A ; pp[ed ]Zelda\n#_1C99F3: db $41 ; .\n#_1C99F4: db $76 ; line 3\n#_1C99F5: db $02, $8E, $1A, $59, $D2, $25, $9E, $A1 ; C[all ]a\u23b5[so]l[di][er ]\n#_1C99FD: db $22, $1F, $59, $E3, $59, $D0, $1E, $59 ; if\u23b5[you]\u23b5[se]e\u23b5\n#_1C9A05: db $B0, $26, $3E ; [hi]m!\n#_1C9A08: db $7F ; end of message\n\n; =========================================================\n; DANGER!\n; Do not enter Death Mountain\n; without the King's permission!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003C", + "code": "Message_003C:\n#_1C9A09: db $88, $59, $03, $00, $0D, $06, $04, $11 ; [ ]\u23b5DANGER\n#_1C9A11: db $3E ; !\n#_1C9A12: db $75 ; line 2\n#_1C9A13: db $03, $28, $59, $C2, $59, $A3, $A1, $03 ; Do\u23b5[not]\u23b5[ent][er ]D\n#_1C9A1B: db $1E, $94, $21, $59, $0C, $28, $2E, $27 ; e[at]h\u23b5Moun\n#_1C9A23: db $2D, $8F ; t[ain]\n#_1C9A25: db $76 ; line 3\n#_1C9A26: db $DE, $C5, $D8, $59, $0A, $B4, $20, $8B ; [with][out ][the]\u23b5K[in]g['s ]\n#_1C9A2E: db $C9, $26, $B5, $2C, $22, $C7, $3E ; [per]m[is]si[on]!\n#_1C9A35: db $7F ; end of message\n\n; =========================================================\n; This way to the\n; Lost Woods\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003D", + "code": "Message_003D:\n#_1C9A36: db $E7, $2C, $59, $DF, $32, $59, $DA, $59 ; [Thi]s\u23b5[wa]y\u23b5[to]\u23b5\n#_1C9A3E: db $D8 ; [the]\n#_1C9A3F: db $75 ; line 2\n#_1C9A40: db $88, $59, $0B, $28, $D3, $59, $16, $28 ; [ ]\u23b5Lo[st]\u23b5Wo\n#_1C9A48: db $28, $1D, $2C ; ods\n#_1C9A4B: db $7F ; end of message\n\n; =========================================================\n; DANGER!\n; Beware of deep water and Zora!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003E", + "code": "Message_003E:\n#_1C9A4C: db $88, $88, $89, $03, $00, $0D, $06, $04 ; [ ][ ][ ]DANGE\n#_1C9A54: db $11, $3E ; R!\n#_1C9A56: db $75 ; line 2\n#_1C9A57: db $01, $1E, $DF, $CD, $C6, $59, $1D, $1E ; Be[wa][re ][of]\u23b5de\n#_1C9A5F: db $1E, $29, $59, $DF, $D4, $8C, $19, $C8 ; ep\u23b5[wa][ter ][and ]Z[or]\n#_1C9A67: db $1A, $3E ; a!\n#_1C9A69: db $7F ; end of message\n\n; =========================================================\n; Welcome to the Magic Shop.\n; The Waterfall Of Wishing is\n; just ahead.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_003F", + "code": "Message_003F:\n#_1C9A6A: db $16, $1E, $25, $9B, $1E, $59, $DA, $59 ; Wel[com]e\u23b5[to]\u23b5\n#_1C9A72: db $D8, $59, $0C, $1A, $20, $22, $1C, $59 ; [the]\u23b5Magic\u23b5\n#_1C9A7A: db $12, $21, $28, $29, $41 ; Shop.\n#_1C9A7F: db $75 ; line 2\n#_1C9A80: db $E6, $59, $16, $94, $A6, $1F, $8E, $0E ; [The]\u23b5W[at][er]f[all ]O\n#_1C9A88: db $1F, $59, $16, $B5, $B0, $27, $20, $59 ; f\u23b5W[is][hi]ng\u23b5\n#_1C9A90: db $B5 ; [is]\n#_1C9A91: db $76 ; line 3\n#_1C9A92: db $B7, $59, $1A, $21, $1E, $1A, $1D, $41 ; [just]\u23b5ahead.\n#_1C9A9A: db $8A ; [ ]\n#_1C9A9B: db $7F ; end of message\n\n; =========================================================\n; This cave leads to the path\n; back to Kakariko Village.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0040", + "code": "Message_0040:\n#_1C9A9C: db $E7, $2C, $59, $1C, $1A, $2F, $1E, $59 ; [Thi]s\u23b5cave\u23b5\n#_1C9AA4: db $25, $1E, $1A, $1D, $2C, $59, $DA, $59 ; leads\u23b5[to]\u23b5\n#_1C9AAC: db $D8, $59, $29, $94, $21 ; [the]\u23b5p[at]h\n#_1C9AB1: db $75 ; line 2\n#_1C9AB2: db $96, $9C, $59, $DA, $59, $0A, $1A, $24 ; [ba][ck]\u23b5[to]\u23b5Kak\n#_1C9ABA: db $1A, $2B, $22, $24, $28, $59, $15, $22 ; ariko\u23b5Vi\n#_1C9AC2: db $25, $BA, $20, $1E, $41 ; l[la]ge.\n#_1C9AC7: db $7F ; end of message\n\n; =========================================================\n; This way \u2193\n; Lake Hylia\n; Shop\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0041", + "code": "Message_0041:\n#_1C9AC8: db $E7, $2C, $59, $DF, $32, $59, $4E ; [Thi]s\u23b5[wa]y\u23b5\u2193\n#_1C9ACF: db $75 ; line 2\n#_1C9AD0: db $88, $88, $59, $0B, $1A, $24, $1E, $59 ; [ ][ ]\u23b5Lake\u23b5\n#_1C9AD8: db $07, $32, $25, $22, $1A ; Hylia\n#_1C9ADD: db $76 ; line 3\n#_1C9ADE: db $88, $88, $59, $12, $21, $28, $29 ; [ ][ ]\u23b5Shop\n#_1C9AE5: db $7F ; end of message\n\n; =========================================================\n; This way \u2190\n; Kakariko Village\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0042", + "code": "Message_0042:\n#_1C9AE6: db $E7, $2C, $59, $DF, $32, $59, $4F ; [Thi]s\u23b5[wa]y\u23b5\u2190\n#_1C9AED: db $75 ; line 2\n#_1C9AEE: db $88, $88, $59, $0A, $1A, $24, $1A, $2B ; [ ][ ]\u23b5Kakar\n#_1C9AF6: db $22, $24, $28, $59, $15, $22, $25, $BA ; iko\u23b5Vil[la]\n#_1C9AFE: db $20, $1E ; ge\n#_1C9B00: db $7F ; end of message\n\n; =========================================================\n; This way \u2190\n; Desert Of Mystery\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0043", + "code": "Message_0043:\n#_1C9B01: db $E7, $2C, $59, $DF, $32, $59, $4F ; [Thi]s\u23b5[wa]y\u23b5\u2190\n#_1C9B08: db $75 ; line 2\n#_1C9B09: db $88, $88, $59, $03, $1E, $D0, $2B, $2D ; [ ][ ]\u23b5De[se]rt\n#_1C9B11: db $59, $0E, $1F, $59, $0C, $32, $D3, $A6 ; \u23b5Of\u23b5My[st][er]\n#_1C9B19: db $32 ; y\n#_1C9B1A: db $7F ; end of message\n\n; =========================================================\n; This way \u2191 \u2192\n; Magic Shop\n; Waterfall Of Wishing\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0044", + "code": "Message_0044:\n#_1C9B1B: db $E7, $2C, $59, $DF, $32, $59, $4D, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2191\u23b5\n#_1C9B23: db $50 ; \u2192\n#_1C9B24: db $75 ; line 2\n#_1C9B25: db $88, $88, $59, $0C, $1A, $20, $22, $1C ; [ ][ ]\u23b5Magic\n#_1C9B2D: db $59, $12, $21, $28, $29 ; \u23b5Shop\n#_1C9B32: db $76 ; line 3\n#_1C9B33: db $88, $88, $59, $16, $94, $A6, $1F, $8E ; [ ][ ]\u23b5W[at][er]f[all ]\n#_1C9B3B: db $0E, $1F, $59, $16, $B5, $B0, $27, $20 ; Of\u23b5W[is][hi]ng\n#_1C9B43: db $7F ; end of message\n\n; =========================================================\n; This way \u2192 Eastern Palace\n; This way \u2190 Hyrule Castle\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0045", + "code": "Message_0045:\n#_1C9B44: db $E7, $2C, $59, $DF, $32, $59, $50, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2192\u23b5\n#_1C9B4C: db $04, $92, $A6, $27, $59, $0F, $1A, $BA ; E[ast][er]n\u23b5Pa[la]\n#_1C9B54: db $1C, $1E ; ce\n#_1C9B56: db $76 ; line 3\n#_1C9B57: db $E7, $2C, $59, $DF, $32, $59, $4F, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2190\u23b5\n#_1C9B5F: db $07, $32, $2B, $2E, $25, $1E, $59, $02 ; Hyrule\u23b5C\n#_1C9B67: db $92, $25, $1E ; [ast]le\n#_1C9B6A: db $7F ; end of message\n\n; =========================================================\n; Lake Hylia\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0046", + "code": "Message_0046:\n#_1C9B6B: db $75 ; line 2\n#_1C9B6C: db $88, $88, $0B, $1A, $24, $1E, $59, $07 ; [ ][ ]Lake\u23b5H\n#_1C9B74: db $32, $25, $22, $1A ; ylia\n#_1C9B78: db $7F ; end of message\n\n; =========================================================\n; Pay no attention to the\n; average middle-aged man\n; standing by this sign.\n; Leave him alone!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0047", + "code": "Message_0047:\n#_1C9B79: db $0F, $1A, $32, $59, $27, $28, $59, $94 ; Pay\u23b5no\u23b5[at]\n#_1C9B81: db $2D, $A3, $22, $C7, $59, $DA, $59, $D8 ; t[ent]i[on]\u23b5[to]\u23b5[the]\n#_1C9B89: db $75 ; line 2\n#_1C9B8A: db $1A, $DD, $1A, $20, $1E, $59, $26, $22 ; a[ver]age\u23b5mi\n#_1C9B92: db $1D, $1D, $25, $1E, $40, $1A, $20, $A4 ; ddle-ag[ed ]\n#_1C9B9A: db $BC ; [man]\n#_1C9B9B: db $76 ; line 3\n#_1C9B9C: db $D3, $90, $B3, $1B, $32, $59, $D9, $2C ; [st][and][ing ]by\u23b5[thi]s\n#_1C9BA4: db $59, $2C, $22, $20, $27, $41 ; \u23b5sign.\n#_1C9BAA: db $7E ; wait for key\n#_1C9BAB: db $73 ; scroll text\n#_1C9BAC: db $0B, $1E, $1A, $2F, $1E, $59, $B0, $26 ; Leave\u23b5[hi]m\n#_1C9BB4: db $59, $1A, $BB, $27, $1E, $3E ; \u23b5a[lo]ne!\n#_1C9BBA: db $7F ; end of message\n\n; =========================================================\n; The House Of Lumberjacks\n; A. Bumpkin and B. Bumpkin\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0048", + "code": "Message_0048:\n#_1C9BBB: db $75 ; line 2\n#_1C9BBC: db $E6, $59, $07, $28, $2E, $D0, $59, $0E ; [The]\u23b5Hou[se]\u23b5O\n#_1C9BC4: db $1F, $59, $0B, $2E, $26, $97, $2B, $23 ; f\u23b5Lum[be]rj\n#_1C9BCC: db $1A, $9C, $2C ; a[ck]s\n#_1C9BCF: db $76 ; line 3\n#_1C9BD0: db $00, $41, $59, $01, $2E, $26, $29, $24 ; A.\u23b5Bumpk\n#_1C9BD8: db $B4, $59, $8C, $01, $41, $59, $01, $2E ; [in]\u23b5[and ]B.\u23b5Bu\n#_1C9BE0: db $26, $29, $24, $B4 ; mpk[in]\n#_1C9BE4: db $7F ; end of message\n\n; =========================================================\n; This way \u2193\n; Kakariko Village\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0049", + "code": "Message_0049:\n#_1C9BE5: db $E7, $2C, $59, $DF, $32, $59, $4E ; [Thi]s\u23b5[wa]y\u23b5\u2193\n#_1C9BEC: db $75 ; line 2\n#_1C9BED: db $88, $89, $0A, $1A, $24, $1A, $2B, $22 ; [ ][ ]Kakari\n#_1C9BF5: db $24, $28, $59, $15, $22, $25, $BA, $20 ; ko\u23b5Vil[la]g\n#_1C9BFD: db $1E ; e\n#_1C9BFE: db $7F ; end of message\n\n; =========================================================\n; Double, double toil and trouble,\n; fire burn and cauldron bubble\u2026\n; Making mushroom brew, I am\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004A", + "code": "Message_004A:\n#_1C9BFF: db $03, $28, $2E, $95, $42, $59, $9F, $2E ; Dou[ble],\u23b5[do]u\n#_1C9C07: db $95, $59, $DA, $22, $25, $59, $8C, $DB ; [ble]\u23b5[to]il\u23b5[and ][tr]\n#_1C9C0F: db $28, $2E, $95, $42 ; ou[ble],\n#_1C9C13: db $75 ; line 2\n#_1C9C14: db $1F, $22, $CD, $1B, $2E, $2B, $27, $59 ; fi[re ]burn\u23b5\n#_1C9C1C: db $8C, $1C, $1A, $2E, $25, $1D, $2B, $C7 ; [and ]cauldr[on]\n#_1C9C24: db $59, $1B, $2E, $1B, $95, $43 ; \u23b5bub[ble]\u2026\n#_1C9C2A: db $76 ; line 3\n#_1C9C2B: db $0C, $1A, $24, $B3, $BF, $D1, $2B, $28 ; Mak[ing ][mu][sh]ro\n#_1C9C33: db $28, $26, $59, $1B, $CE, $30, $42, $59 ; om\u23b5b[re]w,\u23b5\n#_1C9C3B: db $08, $59, $1A, $26, $43 ; I\u23b5am\u2026\n#_1C9C40: db $7F ; end of message\n\n; =========================================================\n; Heh heh\u2026 Thank you, young\n; man\u2026 Come back to the shop\n; later for something good\u2026\n; Heh heh\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004B", + "code": "Message_004B:\n#_1C9C41: db $07, $1E, $21, $59, $21, $1E, $21, $43 ; Heh\u23b5heh\u2026\n#_1C9C49: db $8A, $E5, $27, $24, $59, $E3, $42, $59 ; [ ][Tha]nk\u23b5[you],\u23b5\n#_1C9C51: db $E3, $27, $20 ; [you]ng\n#_1C9C54: db $75 ; line 2\n#_1C9C55: db $BC, $43, $8A, $02, $28, $BE, $59, $96 ; [man]\u2026[ ]Co[me]\u23b5[ba]\n#_1C9C5D: db $9C, $59, $DA, $59, $D8, $59, $D1, $28 ; [ck]\u23b5[to]\u23b5[the]\u23b5[sh]o\n#_1C9C65: db $29 ; p\n#_1C9C66: db $76 ; line 3\n#_1C9C67: db $BA, $D4, $A8, $59, $CF, $D5, $20, $59 ; [la][ter ][for]\u23b5[some][thin]g\u23b5\n#_1C9C6F: db $AC, $28, $1D, $43 ; [go]od\u2026\n#_1C9C73: db $7E ; wait for key\n#_1C9C74: db $73 ; scroll text\n#_1C9C75: db $07, $1E, $21, $59, $21, $1E, $21, $43 ; Heh\u23b5heh\u2026\n#_1C9C7D: db $7F ; end of message\n\n; =========================================================\n; Mmmmm\u2026 The smell of rotten\n; fruit\u2026 If you give me that\n; Mushroom, I can finish my brew.\n; Heh heh\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004C", + "code": "Message_004C:\n#_1C9C7E: db $0C, $26, $26, $26, $26, $43, $8A, $E6 ; Mmmmm\u2026[ ][The]\n#_1C9C86: db $59, $2C, $BE, $25, $25, $59, $C6, $59 ; \u23b5s[me]ll\u23b5[of]\u23b5\n#_1C9C8E: db $2B, $28, $2D, $2D, $A5 ; rott[en]\n#_1C9C93: db $75 ; line 2\n#_1C9C94: db $1F, $2B, $2E, $B6, $43, $8A, $08, $1F ; fru[it]\u2026[ ]If\n#_1C9C9C: db $59, $E3, $59, $AA, $BE, $59, $D7, $2D ; \u23b5[you]\u23b5[give ][me]\u23b5[tha]t\n#_1C9CA4: db $76 ; line 3\n#_1C9CA5: db $0C, $2E, $D1, $2B, $28, $28, $26, $42 ; Mu[sh]room,\n#_1C9CAD: db $59, $08, $59, $99, $1F, $B4, $B5, $21 ; \u23b5I\u23b5[can ]f[in][is]h\n#_1C9CB5: db $59, $26, $32, $59, $1B, $CE, $30, $41 ; \u23b5my\u23b5b[re]w.\n#_1C9CBD: db $7E ; wait for key\n#_1C9CBE: db $73 ; scroll text\n#_1C9CBF: db $07, $1E, $21, $59, $21, $1E, $21, $43 ; Heh\u23b5heh\u2026\n#_1C9CC7: db $7F ; end of message\n\n; =========================================================\n; If you want to buy the potion,\n; you should bring a bottle to\n; put it in\u2026 He he he!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004D", + "code": "Message_004D:\n#_1C9CC8: db $08, $1F, $59, $E3, $59, $DF, $27, $2D ; If\u23b5[you]\u23b5[wa]nt\n#_1C9CD0: db $59, $DA, $59, $1B, $2E, $32, $59, $D8 ; \u23b5[to]\u23b5buy\u23b5[the]\n#_1C9CD8: db $59, $29, $28, $2D, $22, $C7, $42 ; \u23b5poti[on],\n#_1C9CDF: db $75 ; line 2\n#_1C9CE0: db $E3, $59, $D1, $28, $2E, $25, $1D, $59 ; [you]\u23b5[sh]ould\u23b5\n#_1C9CE8: db $1B, $2B, $B3, $1A, $59, $98, $2D, $2D ; br[ing ]a\u23b5[bo]tt\n#_1C9CF0: db $25, $1E, $59, $DA ; le\u23b5[to]\n#_1C9CF4: db $76 ; line 3\n#_1C9CF5: db $29, $2E, $2D, $59, $B6, $59, $B4, $43 ; put\u23b5[it]\u23b5[in]\u2026\n#_1C9CFD: db $8A, $07, $1E, $59, $21, $1E, $59, $21 ; [ ]He\u23b5he\u23b5h\n#_1C9D05: db $1E, $3E ; e!\n#_1C9D07: db $7F ; end of message\n\n; =========================================================\n; Red is the medicine of life.\n; Green is the medicine of magic.\n; Blue renews both life and\n; magic.\n; Here, taste a sample of the\n; Red Potion\u2026 He he!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004E", + "code": "Message_004E:\n#_1C9D08: db $11, $A4, $B5, $59, $D8, $59, $BE, $9E ; R[ed ][is]\u23b5[the]\u23b5[me][di]\n#_1C9D10: db $1C, $B4, $1E, $59, $C6, $59, $25, $22 ; c[in]e\u23b5[of]\u23b5li\n#_1C9D18: db $1F, $1E, $41 ; fe.\n#_1C9D1B: db $75 ; line 2\n#_1C9D1C: db $06, $CE, $A0, $B5, $59, $D8, $59, $BE ; G[re][en ][is]\u23b5[the]\u23b5[me]\n#_1C9D24: db $9E, $1C, $B4, $1E, $59, $C6, $59, $BD ; [di]c[in]e\u23b5[of]\u23b5[ma]\n#_1C9D2C: db $20, $22, $1C, $41 ; gic.\n#_1C9D30: db $76 ; line 3\n#_1C9D31: db $01, $25, $2E, $1E, $59, $CE, $27, $1E ; Blue\u23b5[re]ne\n#_1C9D39: db $30, $2C, $59, $98, $2D, $21, $59, $25 ; ws\u23b5[bo]th\u23b5l\n#_1C9D41: db $22, $1F, $1E, $59, $90 ; ife\u23b5[and]\n#_1C9D46: db $7E ; wait for key\n#_1C9D47: db $73 ; scroll text\n#_1C9D48: db $BD, $20, $22, $1C, $41 ; [ma]gic.\n#_1C9D4D: db $73 ; scroll text\n#_1C9D4E: db $E4, $1E, $42, $59, $2D, $92, $1E, $59 ; [Her]e,\u23b5t[ast]e\u23b5\n#_1C9D56: db $1A, $59, $2C, $1A, $26, $CA, $59, $C6 ; a\u23b5sam[ple]\u23b5[of]\n#_1C9D5E: db $59, $D8 ; \u23b5[the]\n#_1C9D60: db $73 ; scroll text\n#_1C9D61: db $11, $A4, $0F, $28, $2D, $22, $C7, $43 ; R[ed ]Poti[on]\u2026\n#_1C9D69: db $8A, $07, $1E, $59, $21, $1E, $3E ; [ ]He\u23b5he!\n#_1C9D70: db $7F ; end of message\n\n; =========================================================\n; Without a magic bottle, you can\n; not buy any potions.\n; He he he!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_004F", + "code": "Message_004F:\n#_1C9D71: db $16, $B6, $21, $C5, $1A, $59, $BD, $20 ; W[it]h[out ]a\u23b5[ma]g\n#_1C9D79: db $22, $1C, $59, $98, $2D, $2D, $25, $1E ; ic\u23b5[bo]ttle\n#_1C9D81: db $42, $59, $E3, $59, $1C, $93 ; ,\u23b5[you]\u23b5c[an]\n#_1C9D87: db $75 ; line 2\n#_1C9D88: db $C2, $59, $1B, $2E, $32, $59, $93, $32 ; [not]\u23b5buy\u23b5[an]y\n#_1C9D90: db $59, $29, $28, $2D, $22, $C7, $2C, $41 ; \u23b5poti[on]s.\n#_1C9D98: db $76 ; line 3\n#_1C9D99: db $07, $1E, $59, $21, $1E, $59, $21, $1E ; He\u23b5he\u23b5he\n#_1C9DA1: db $3E ; !\n#_1C9DA2: db $7F ; end of message\n\n; =========================================================\n; No, no, no\u2026 I can't put\n; anything into a full bottle.\n; He he he!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0050", + "code": "Message_0050:\n#_1C9DA3: db $0D, $28, $42, $8A, $27, $28, $42, $8A ; No,[ ]no,[ ]\n#_1C9DAB: db $27, $28, $43, $8A, $08, $59, $1C, $93 ; no\u2026[ ]I\u23b5c[an]\n#_1C9DB3: db $51, $2D, $59, $29, $2E, $2D ; 't\u23b5put\n#_1C9DB9: db $75 ; line 2\n#_1C9DBA: db $93, $32, $D5, $20, $59, $B4, $DA, $59 ; [an]y[thin]g\u23b5[in][to]\u23b5\n#_1C9DC2: db $1A, $59, $1F, $2E, $25, $25, $59, $98 ; a\u23b5full\u23b5[bo]\n#_1C9DCA: db $2D, $2D, $25, $1E, $41 ; ttle.\n#_1C9DCF: db $76 ; line 3\n#_1C9DD0: db $07, $1E, $59, $21, $1E, $59, $21, $1E ; He\u23b5he\u23b5he\n#_1C9DD8: db $3E ; !\n#_1C9DD9: db $7F ; end of message\n\n; =========================================================\n; You got the Lamp!\n; Now you can light torches and\n; see your way in darkness.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0051", + "code": "Message_0051:\n#_1C9DDA: db $E8, $59, $AC, $2D, $59, $D8, $59, $0B ; [You]\u23b5[go]t\u23b5[the]\u23b5L\n#_1C9DE2: db $1A, $26, $29, $3E ; amp!\n#_1C9DE6: db $75 ; line 2\n#_1C9DE7: db $0D, $28, $30, $59, $E3, $59, $99, $25 ; Now\u23b5[you]\u23b5[can ]l\n#_1C9DEF: db $B2, $DA, $2B, $9A, $2C, $59, $90 ; [ight ][to]r[che]s\u23b5[and]\n#_1C9DF6: db $76 ; line 3\n#_1C9DF7: db $D0, $1E, $59, $E3, $2B, $59, $DF, $32 ; [se]e\u23b5[you]r\u23b5[wa]y\n#_1C9DFF: db $59, $B4, $59, $1D, $1A, $2B, $24, $27 ; \u23b5[in]\u23b5darkn\n#_1C9E07: db $1E, $2C, $2C, $41 ; ess.\n#_1C9E0B: db $7F ; end of message\n\n; =========================================================\n; You got the Boomerang!\n; Give it a try! (To select an\n; item, press the Start Button. )\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0052", + "code": "Message_0052:\n#_1C9E0C: db $E8, $59, $AC, $2D, $59, $D8, $59, $01 ; [You]\u23b5[go]t\u23b5[the]\u23b5B\n#_1C9E14: db $28, $28, $BE, $2B, $93, $20, $3E ; oo[me]r[an]g!\n#_1C9E1B: db $75 ; line 2\n#_1C9E1C: db $06, $22, $2F, $1E, $59, $B6, $59, $1A ; Give\u23b5[it]\u23b5a\n#_1C9E24: db $59, $DB, $32, $3E, $8A, $45, $13, $28 ; \u23b5[tr]y![ ](To\n#_1C9E2C: db $59, $D0, $25, $1E, $1C, $2D, $59, $93 ; \u23b5[se]lect\u23b5[an]\n#_1C9E34: db $76 ; line 3\n#_1C9E35: db $B6, $1E, $26, $42, $59, $29, $CE, $2C ; [it]em,\u23b5p[re]s\n#_1C9E3D: db $2C, $59, $D8, $59, $12, $2D, $1A, $2B ; s\u23b5[the]\u23b5Star\n#_1C9E45: db $2D, $59, $01, $2E, $2D, $DA, $27, $41 ; t\u23b5But[to]n.\n#_1C9E4D: db $59, $46 ; \u23b5)\n#_1C9E4F: db $7F ; end of message\n\n; =========================================================\n; You found the Bow!\n; You can shoot arrows until you\n; run out!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0053", + "code": "Message_0053:\n#_1C9E50: db $E8, $59, $1F, $C4, $59, $D8, $59, $01 ; [You]\u23b5f[ound]\u23b5[the]\u23b5B\n#_1C9E58: db $28, $30, $3E ; ow!\n#_1C9E5B: db $75 ; line 2\n#_1C9E5C: db $E8, $59, $99, $D1, $28, $28, $2D, $59 ; [You]\u23b5[can ][sh]oot\u23b5\n#_1C9E64: db $1A, $2B, $2B, $28, $30, $2C, $59, $2E ; arrows\u23b5u\n#_1C9E6C: db $27, $2D, $22, $25, $59, $E3 ; ntil\u23b5[you]\n#_1C9E72: db $76 ; line 3\n#_1C9E73: db $2B, $2E, $27, $59, $28, $2E, $2D, $3E ; run\u23b5out!\n#_1C9E7B: db $7F ; end of message\n\n; =========================================================\n; You borrowed a shovel!\n; You can dig in many places.\n; You never know what you'll\n; find!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0054", + "code": "Message_0054:\n#_1C9E7C: db $E8, $59, $98, $2B, $2B, $28, $E0, $1D ; [You]\u23b5[bo]rro[we]d\n#_1C9E84: db $59, $1A, $59, $D1, $28, $2F, $1E, $25 ; \u23b5a\u23b5[sh]ovel\n#_1C9E8C: db $3E ; !\n#_1C9E8D: db $75 ; line 2\n#_1C9E8E: db $E8, $59, $99, $9E, $20, $59, $B4, $59 ; [You]\u23b5[can ][di]g\u23b5[in]\u23b5\n#_1C9E96: db $BC, $32, $59, $29, $BA, $1C, $1E, $2C ; [man]y\u23b5p[la]ces\n#_1C9E9E: db $41 ; .\n#_1C9E9F: db $76 ; line 3\n#_1C9EA0: db $E8, $59, $27, $A7, $A1, $B8, $59, $E1 ; [You]\u23b5n[ev][er ][know]\u23b5[wh]\n#_1C9EA8: db $91, $E3, $51, $25, $25 ; [at ][you]'ll\n#_1C9EAD: db $7E ; wait for key\n#_1C9EAE: db $73 ; scroll text\n#_1C9EAF: db $1F, $B4, $1D, $3E ; f[in]d!\n#_1C9EB3: db $7F ; end of message\n\n; =========================================================\n; This is the Magic Cape!\n; You are invisible when you wear\n; it! Watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0055", + "code": "Message_0055:\n#_1C9EB4: db $E7, $2C, $59, $B5, $59, $D8, $59, $0C ; [Thi]s\u23b5[is]\u23b5[the]\u23b5M\n#_1C9EBC: db $1A, $20, $22, $1C, $59, $02, $1A, $29 ; agic\u23b5Cap\n#_1C9EC4: db $1E, $3E ; e!\n#_1C9EC6: db $75 ; line 2\n#_1C9EC7: db $E8, $59, $8D, $B4, $2F, $B5, $22, $95 ; [You]\u23b5[are ][in]v[is]i[ble]\n#_1C9ECF: db $59, $E1, $A0, $E3, $59, $E0, $1A, $2B ; \u23b5[wh][en ][you]\u23b5[we]ar\n#_1C9ED7: db $76 ; line 3\n#_1C9ED8: db $B6, $3E, $59, $16, $94, $1C, $21, $59 ; [it]!\u23b5W[at]ch\u23b5\n#_1C9EE0: db $E3, $2B, $59, $0C, $1A, $20, $22, $1C ; [you]r\u23b5Magic\n#_1C9EE8: db $59, $0C, $1E, $D6, $3E ; \u23b5Me[ter]!\n#_1C9EED: db $7F ; end of message\n\n; =========================================================\n; This is Magic Powder!\n; Try to sprinkle it on enemies\n; and many other things!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0056", + "code": "Message_0056:\n#_1C9EEE: db $E7, $2C, $59, $B5, $59, $0C, $1A, $20 ; [Thi]s\u23b5[is]\u23b5Mag\n#_1C9EF6: db $22, $1C, $59, $0F, $28, $30, $1D, $A6 ; ic\u23b5Powd[er]\n#_1C9EFE: db $3E ; !\n#_1C9EFF: db $75 ; line 2\n#_1C9F00: db $13, $2B, $32, $59, $DA, $59, $2C, $29 ; Try\u23b5[to]\u23b5sp\n#_1C9F08: db $2B, $B4, $24, $25, $1E, $59, $B6, $59 ; r[in]kle\u23b5[it]\u23b5\n#_1C9F10: db $C7, $59, $A5, $1E, $26, $22, $1E, $2C ; [on]\u23b5[en]emies\n#_1C9F18: db $76 ; line 3\n#_1C9F19: db $8C, $BC, $32, $59, $28, $D8, $2B, $59 ; [and ][man]y\u23b5o[the]r\u23b5\n#_1C9F21: db $D5, $20, $2C, $3E ; [thin]gs!\n#_1C9F25: db $7F ; end of message\n\n; =========================================================\n; You bought Zora's Flippers!\n; With these you should be able\n; to swim even in deep water!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0057", + "code": "Message_0057:\n#_1C9F26: db $E8, $59, $98, $2E, $20, $21, $2D, $59 ; [You]\u23b5[bo]ught\u23b5\n#_1C9F2E: db $19, $C8, $1A, $8B, $05, $25, $22, $29 ; Z[or]a['s ]Flip\n#_1C9F36: db $C9, $2C, $3E ; [per]s!\n#_1C9F39: db $75 ; line 2\n#_1C9F3A: db $16, $B6, $21, $59, $D8, $D0, $59, $E3 ; W[it]h\u23b5[the][se]\u23b5[you]\n#_1C9F42: db $59, $D1, $28, $2E, $25, $1D, $59, $97 ; \u23b5[sh]ould\u23b5[be]\n#_1C9F4A: db $59, $1A, $95 ; \u23b5a[ble]\n#_1C9F4D: db $76 ; line 3\n#_1C9F4E: db $DA, $59, $2C, $E2, $26, $59, $A7, $A0 ; [to]\u23b5s[wi]m\u23b5[ev][en ]\n#_1C9F56: db $B4, $59, $1D, $1E, $1E, $29, $59, $DF ; [in]\u23b5deep\u23b5[wa]\n#_1C9F5E: db $D6, $3E ; [ter]!\n#_1C9F60: db $7F ; end of message\n\n; =========================================================\n; You got the Power Glove!\n; You can feel strength in both\n; hands! You can pick up and\n; carry stones now!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0058", + "code": "Message_0058:\n#_1C9F61: db $E8, $59, $AC, $2D, $59, $D8, $59, $0F ; [You]\u23b5[go]t\u23b5[the]\u23b5P\n#_1C9F69: db $28, $E0, $2B, $59, $06, $BB, $2F, $1E ; o[we]r\u23b5G[lo]ve\n#_1C9F71: db $3E ; !\n#_1C9F72: db $75 ; line 2\n#_1C9F73: db $E8, $59, $99, $1F, $1E, $1E, $25, $59 ; [You]\u23b5[can ]feel\u23b5\n#_1C9F7B: db $D3, $CE, $27, $20, $2D, $21, $59, $B4 ; [st][re]ngth\u23b5[in]\n#_1C9F83: db $59, $98, $2D, $21 ; \u23b5[bo]th\n#_1C9F87: db $76 ; line 3\n#_1C9F88: db $B1, $27, $1D, $2C, $3E, $8A, $E8, $59 ; [ha]nds![ ][You]\u23b5\n#_1C9F90: db $99, $29, $22, $9C, $59, $DC, $59, $90 ; [can ]pi[ck]\u23b5[up]\u23b5[and]\n#_1C9F98: db $7E ; wait for key\n#_1C9F99: db $73 ; scroll text\n#_1C9F9A: db $1C, $1A, $2B, $2B, $32, $59, $D3, $C7 ; carry\u23b5[st][on]\n#_1C9FA2: db $1E, $2C, $59, $27, $28, $30, $3E ; es\u23b5now!\n#_1C9FA9: db $7F ; end of message\n\n; =========================================================\n; You won the Pendant Of\n; Courage! Take it to\n; Sahasrahla!\n; Two Pendants remain!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0059", + "code": "Message_0059:\n#_1C9FAA: db $E8, $59, $30, $C7, $59, $D8, $59, $0F ; [You]\u23b5w[on]\u23b5[the]\u23b5P\n#_1C9FB2: db $A5, $1D, $93, $2D, $59, $0E, $1F ; [en]d[an]t\u23b5Of\n#_1C9FB9: db $75 ; line 2\n#_1C9FBA: db $02, $28, $2E, $2B, $1A, $20, $1E, $3E ; Courage!\n#_1C9FC2: db $8A, $13, $1A, $24, $1E, $59, $B6, $59 ; [ ]Take\u23b5[it]\u23b5\n#_1C9FCA: db $DA ; [to]\n#_1C9FCB: db $76 ; line 3\n#_1C9FCC: db $12, $1A, $AE, $2B, $1A, $21, $BA, $3E ; Sa[has]rah[la]!\n#_1C9FD4: db $7E ; wait for key\n#_1C9FD5: db $73 ; scroll text\n#_1C9FD6: db $13, $30, $28, $59, $0F, $A5, $1D, $93 ; Two\u23b5P[en]d[an]\n#_1C9FDE: db $2D, $2C, $59, $CE, $BD, $B4, $3E ; ts\u23b5[re][ma][in]!\n#_1C9FE5: db $7F ; end of message\n\n; =========================================================\n; You won the Pendant Of Power!\n; Your goal of finding three\n; Pendants is in sight!\n; Go for the last one!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005A", + "code": "Message_005A:\n#_1C9FE6: db $E8, $59, $30, $C7, $59, $D8, $59, $0F ; [You]\u23b5w[on]\u23b5[the]\u23b5P\n#_1C9FEE: db $A5, $1D, $93, $2D, $59, $0E, $1F, $59 ; [en]d[an]t\u23b5Of\u23b5\n#_1C9FF6: db $0F, $28, $E0, $2B, $3E ; Po[we]r!\n#_1C9FFB: db $75 ; line 2\n#_1C9FFC: db $E8, $2B, $59, $AC, $1A, $25, $59, $C6 ; [You]r\u23b5[go]al\u23b5[of]\n#_1CA004: db $59, $1F, $B4, $9E, $27, $20, $59, $2D ; \u23b5f[in][di]ng\u23b5t\n#_1CA00C: db $21, $CE, $1E ; h[re]e\n#_1CA00F: db $76 ; line 3\n#_1CA010: db $0F, $A5, $1D, $93, $2D, $2C, $59, $B5 ; P[en]d[an]ts\u23b5[is]\n#_1CA018: db $59, $B4, $59, $2C, $22, $20, $21, $2D ; \u23b5[in]\u23b5sight\n#_1CA020: db $3E ; !\n#_1CA021: db $7E ; wait for key\n#_1CA022: db $73 ; scroll text\n#_1CA023: db $06, $28, $59, $A8, $59, $D8, $59, $BA ; Go\u23b5[for]\u23b5[the]\u23b5[la]\n#_1CA02B: db $D3, $59, $C7, $1E, $3E ; [st]\u23b5[on]e!\n#_1CA030: db $7F ; end of message\n\n; =========================================================\n; You won the Pendant Of Wisdom!\n; With this, you have collected\n; all three Pendants! Go now to\n; the Lost Woods to get\n; the Master Sword!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005B", + "code": "Message_005B:\n#_1CA031: db $E8, $59, $30, $C7, $59, $D8, $59, $0F ; [You]\u23b5w[on]\u23b5[the]\u23b5P\n#_1CA039: db $A5, $1D, $93, $2D, $59, $0E, $1F, $59 ; [en]d[an]t\u23b5Of\u23b5\n#_1CA041: db $16, $B5, $9F, $26, $3E ; W[is][do]m!\n#_1CA046: db $75 ; line 2\n#_1CA047: db $16, $B6, $21, $59, $D9, $2C, $42, $59 ; W[it]h\u23b5[thi]s,\u23b5\n#_1CA04F: db $E3, $59, $AD, $59, $1C, $28, $25, $25 ; [you]\u23b5[have]\u23b5coll\n#_1CA057: db $1E, $1C, $2D, $1E, $1D ; ected\n#_1CA05C: db $76 ; line 3\n#_1CA05D: db $8E, $2D, $21, $CE, $1E, $59, $0F, $A5 ; [all ]th[re]e\u23b5P[en]\n#_1CA065: db $1D, $93, $2D, $2C, $3E, $8A, $06, $28 ; d[an]ts![ ]Go\n#_1CA06D: db $59, $27, $28, $30, $59, $DA ; \u23b5now\u23b5[to]\n#_1CA073: db $7E ; wait for key\n#_1CA074: db $73 ; scroll text\n#_1CA075: db $D8, $59, $0B, $28, $D3, $59, $16, $28 ; [the]\u23b5Lo[st]\u23b5Wo\n#_1CA07D: db $28, $1D, $2C, $59, $DA, $59, $AB ; ods\u23b5[to]\u23b5[get]\n#_1CA084: db $73 ; scroll text\n#_1CA085: db $D8, $59, $0C, $92, $A1, $12, $30, $C8 ; [the]\u23b5M[ast][er ]Sw[or]\n#_1CA08D: db $1D, $3E ; d!\n#_1CA08F: db $7F ; end of message\n\n; =========================================================\n; This Mushroom smells like sweet\n; rotten fruit\u2026\n; You can give this to anyone\n; who wants it (Select it and\n; press the \u24e8 Button).\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005C", + "code": "Message_005C:\n#_1CA090: db $E7, $2C, $59, $0C, $2E, $D1, $2B, $28 ; [Thi]s\u23b5Mu[sh]ro\n#_1CA098: db $28, $26, $59, $2C, $BE, $25, $25, $2C ; om\u23b5s[me]lls\n#_1CA0A0: db $59, $25, $22, $24, $1E, $59, $2C, $E0 ; \u23b5like\u23b5s[we]\n#_1CA0A8: db $1E, $2D ; et\n#_1CA0AA: db $75 ; line 2\n#_1CA0AB: db $2B, $28, $2D, $2D, $A0, $1F, $2B, $2E ; rott[en ]fru\n#_1CA0B3: db $B6, $43 ; [it]\u2026\n#_1CA0B5: db $76 ; line 3\n#_1CA0B6: db $E8, $59, $99, $AA, $D9, $2C, $59, $DA ; [You]\u23b5[can ][give ][thi]s\u23b5[to]\n#_1CA0BE: db $59, $93, $32, $C7, $1E ; \u23b5[an]y[on]e\n#_1CA0C3: db $7E ; wait for key\n#_1CA0C4: db $73 ; scroll text\n#_1CA0C5: db $E1, $28, $59, $DF, $27, $2D, $2C, $59 ; [wh]o\u23b5[wa]nts\u23b5\n#_1CA0CD: db $B6, $59, $45, $12, $1E, $25, $1E, $1C ; [it]\u23b5(Selec\n#_1CA0D5: db $2D, $59, $B6, $59, $90 ; t\u23b5[it]\u23b5[and]\n#_1CA0DA: db $73 ; scroll text\n#_1CA0DB: db $29, $CE, $2C, $2C, $59, $D8, $59, $5E ; p[re]ss\u23b5[the]\u23b5\u24e8\n#_1CA0E3: db $59, $01, $2E, $2D, $DA, $27, $46, $41 ; \u23b5But[to]n).\n#_1CA0EB: db $7F ; end of message\n\n; =========================================================\n; You found the Book of Mudora!\n; You can use it to read the\n; ancient language of the Hylia!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005D", + "code": "Message_005D:\n#_1CA0EC: db $E8, $59, $1F, $C4, $59, $D8, $59, $01 ; [You]\u23b5f[ound]\u23b5[the]\u23b5B\n#_1CA0F4: db $28, $28, $24, $59, $C6, $59, $0C, $2E ; ook\u23b5[of]\u23b5Mu\n#_1CA0FC: db $9F, $2B, $1A, $3E ; [do]ra!\n#_1CA100: db $75 ; line 2\n#_1CA101: db $E8, $59, $99, $2E, $D0, $59, $B6, $59 ; [You]\u23b5[can ]u[se]\u23b5[it]\u23b5\n#_1CA109: db $DA, $59, $CE, $1A, $1D, $59, $D8 ; [to]\u23b5[re]ad\u23b5[the]\n#_1CA110: db $76 ; line 3\n#_1CA111: db $93, $1C, $22, $A3, $59, $BA, $27, $20 ; [an]ci[ent]\u23b5[la]ng\n#_1CA119: db $2E, $1A, $20, $1E, $59, $C6, $59, $D8 ; uage\u23b5[of]\u23b5[the]\n#_1CA121: db $59, $07, $32, $25, $22, $1A, $3E ; \u23b5Hylia!\n#_1CA128: db $7F ; end of message\n\n; =========================================================\n; You found the Moon Pearl!\n; This protects The Hero from\n; the changing effects of the\n; Golden Power.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005E", + "code": "Message_005E:\n#_1CA129: db $E8, $59, $1F, $C4, $59, $D8, $59, $0C ; [You]\u23b5f[ound]\u23b5[the]\u23b5M\n#_1CA131: db $28, $C7, $59, $0F, $A2, $25, $3E ; o[on]\u23b5P[ear]l!\n#_1CA138: db $75 ; line 2\n#_1CA139: db $E7, $2C, $59, $CC, $2D, $1E, $1C, $2D ; [Thi]s\u23b5[pro]tect\n#_1CA141: db $2C, $59, $E6, $59, $E4, $28, $59, $A9 ; s\u23b5[The]\u23b5[Her]o\u23b5[fro]\n#_1CA149: db $26 ; m\n#_1CA14A: db $76 ; line 3\n#_1CA14B: db $D8, $59, $1C, $B1, $27, $20, $B3, $1E ; [the]\u23b5c[ha]ng[ing ]e\n#_1CA153: db $1F, $1F, $1E, $1C, $2D, $2C, $59, $C6 ; ffects\u23b5[of]\n#_1CA15B: db $59, $D8 ; \u23b5[the]\n#_1CA15D: db $7E ; wait for key\n#_1CA15E: db $73 ; scroll text\n#_1CA15F: db $06, $28, $25, $1D, $A0, $0F, $28, $E0 ; Gold[en ]Po[we]\n#_1CA167: db $2B, $41 ; r.\n#_1CA169: db $7F ; end of message\n\n; =========================================================\n; You found the Compass!\n; Now you can pinpoint the\n; lair of the dungeon's evil\n; master!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_005F", + "code": "Message_005F:\n#_1CA16A: db $E8, $59, $1F, $C4, $59, $D8, $59, $02 ; [You]\u23b5f[ound]\u23b5[the]\u23b5C\n#_1CA172: db $28, $26, $29, $1A, $2C, $2C, $3E ; ompass!\n#_1CA179: db $75 ; line 2\n#_1CA17A: db $0D, $28, $30, $59, $E3, $59, $99, $29 ; Now\u23b5[you]\u23b5[can ]p\n#_1CA182: db $B4, $29, $28, $B4, $2D, $59, $D8 ; [in]po[in]t\u23b5[the]\n#_1CA189: db $76 ; line 3\n#_1CA18A: db $BA, $22, $2B, $59, $C6, $59, $D8, $59 ; [la]ir\u23b5[of]\u23b5[the]\u23b5\n#_1CA192: db $1D, $2E, $27, $20, $1E, $C7, $8B, $A7 ; dunge[on]['s ][ev]\n#_1CA19A: db $22, $25 ; il\n#_1CA19C: db $7E ; wait for key\n#_1CA19D: db $73 ; scroll text\n#_1CA19E: db $BD, $D3, $A6, $3E ; [ma][st][er]!\n#_1CA1A2: db $7F ; end of message\n\n; =========================================================\n; You got the Map!\n; You can use it to see your\n; current position and the rest\n; of the dungeon (Press \u24e7).\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0060", + "code": "Message_0060:\n#_1CA1A3: db $E8, $59, $AC, $2D, $59, $D8, $59, $0C ; [You]\u23b5[go]t\u23b5[the]\u23b5M\n#_1CA1AB: db $1A, $29, $3E ; ap!\n#_1CA1AE: db $75 ; line 2\n#_1CA1AF: db $E8, $59, $99, $2E, $D0, $59, $B6, $59 ; [You]\u23b5[can ]u[se]\u23b5[it]\u23b5\n#_1CA1B7: db $DA, $59, $D0, $1E, $59, $E3, $2B ; [to]\u23b5[se]e\u23b5[you]r\n#_1CA1BE: db $76 ; line 3\n#_1CA1BF: db $1C, $2E, $2B, $CE, $27, $2D, $59, $29 ; cur[re]nt\u23b5p\n#_1CA1C7: db $28, $2C, $B6, $22, $C7, $59, $8C, $D8 ; os[it]i[on]\u23b5[and ][the]\n#_1CA1CF: db $59, $CE, $D3 ; \u23b5[re][st]\n#_1CA1D2: db $7E ; wait for key\n#_1CA1D3: db $73 ; scroll text\n#_1CA1D4: db $C6, $59, $D8, $59, $1D, $2E, $27, $20 ; [of]\u23b5[the]\u23b5dung\n#_1CA1DC: db $1E, $C7, $59, $45, $0F, $CE, $2C, $2C ; e[on]\u23b5(P[re]ss\n#_1CA1E4: db $59, $5D, $46, $41 ; \u23b5\u24e7).\n#_1CA1E8: db $7F ; end of message\n\n; =========================================================\n; You found the Ice Rod!\n; Its chill magic blasts the air!\n; But watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0061", + "code": "Message_0061:\n#_1CA1E9: db $E8, $59, $1F, $C4, $59, $D8, $59, $08 ; [You]\u23b5f[ound]\u23b5[the]\u23b5I\n#_1CA1F1: db $1C, $1E, $59, $11, $28, $1D, $3E ; ce\u23b5Rod!\n#_1CA1F8: db $75 ; line 2\n#_1CA1F9: db $08, $2D, $2C, $59, $1C, $B0, $25, $25 ; Its\u23b5c[hi]ll\n#_1CA201: db $59, $BD, $20, $22, $1C, $59, $1B, $BA ; \u23b5[ma]gic\u23b5b[la]\n#_1CA209: db $D3, $2C, $59, $D8, $59, $1A, $22, $2B ; [st]s\u23b5[the]\u23b5air\n#_1CA211: db $3E ; !\n#_1CA212: db $76 ; line 3\n#_1CA213: db $01, $2E, $2D, $59, $DF, $2D, $1C, $21 ; But\u23b5[wa]tch\n#_1CA21B: db $59, $E3, $2B, $59, $0C, $1A, $20, $22 ; \u23b5[you]r\u23b5Magi\n#_1CA223: db $1C, $59, $0C, $1E, $D6, $3E ; c\u23b5Me[ter]!\n#_1CA229: db $7F ; end of message\n\n; =========================================================\n; You found the Fire Rod!\n; This rod commands the red fire!\n; But watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0062", + "code": "Message_0062:\n#_1CA22A: db $E8, $59, $1F, $C4, $59, $D8, $59, $05 ; [You]\u23b5f[ound]\u23b5[the]\u23b5F\n#_1CA232: db $22, $CD, $11, $28, $1D, $3E ; i[re ]Rod!\n#_1CA238: db $75 ; line 2\n#_1CA239: db $E7, $2C, $59, $2B, $28, $1D, $59, $9B ; [Thi]s\u23b5rod\u23b5[com]\n#_1CA241: db $BC, $1D, $2C, $59, $D8, $59, $CE, $1D ; [man]ds\u23b5[the]\u23b5[re]d\n#_1CA249: db $59, $1F, $22, $CE, $3E ; \u23b5fi[re]!\n#_1CA24E: db $76 ; line 3\n#_1CA24F: db $01, $2E, $2D, $59, $DF, $2D, $1C, $21 ; But\u23b5[wa]tch\n#_1CA257: db $59, $E3, $2B, $59, $0C, $1A, $20, $22 ; \u23b5[you]r\u23b5Magi\n#_1CA25F: db $1C, $59, $0C, $1E, $D6, $3E ; c\u23b5Me[ter]!\n#_1CA265: db $7F ; end of message\n\n; =========================================================\n; This is the Ether Medallion!\n; Its magic controls the upper\n; atmosphere and polar wind!\n; Watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0063", + "code": "Message_0063:\n#_1CA266: db $E7, $2C, $59, $B5, $59, $D8, $59, $04 ; [Thi]s\u23b5[is]\u23b5[the]\u23b5E\n#_1CA26E: db $D8, $2B, $59, $0C, $1E, $1D, $1A, $25 ; [the]r\u23b5Medal\n#_1CA276: db $25, $22, $C7, $3E ; li[on]!\n#_1CA27A: db $75 ; line 2\n#_1CA27B: db $08, $2D, $2C, $59, $BD, $20, $22, $1C ; Its\u23b5[ma]gic\n#_1CA283: db $59, $1C, $C7, $DB, $28, $25, $2C, $59 ; \u23b5c[on][tr]ols\u23b5\n#_1CA28B: db $D8, $59, $DC, $C9 ; [the]\u23b5[up][per]\n#_1CA28F: db $76 ; line 3\n#_1CA290: db $94, $26, $28, $2C, $29, $AF, $1E, $59 ; [at]mosp[her]e\u23b5\n#_1CA298: db $8C, $29, $28, $BA, $2B, $59, $E2, $27 ; [and ]po[la]r\u23b5[wi]n\n#_1CA2A0: db $1D, $3E ; d!\n#_1CA2A2: db $7E ; wait for key\n#_1CA2A3: db $73 ; scroll text\n#_1CA2A4: db $16, $94, $1C, $21, $59, $E3, $2B, $59 ; W[at]ch\u23b5[you]r\u23b5\n#_1CA2AC: db $0C, $1A, $20, $22, $1C, $59, $0C, $1E ; Magic\u23b5Me\n#_1CA2B4: db $D6, $3E ; [ter]!\n#_1CA2B6: db $7F ; end of message\n\n; =========================================================\n; This is the Bombos Medallion!\n; Its magic makes the ground\n; explode with power!\n; Watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0064", + "code": "Message_0064:\n#_1CA2B7: db $E7, $2C, $59, $B5, $59, $D8, $59, $01 ; [Thi]s\u23b5[is]\u23b5[the]\u23b5B\n#_1CA2BF: db $28, $26, $98, $2C, $59, $0C, $1E, $1D ; om[bo]s\u23b5Med\n#_1CA2C7: db $1A, $25, $25, $22, $C7, $3E ; alli[on]!\n#_1CA2CD: db $75 ; line 2\n#_1CA2CE: db $08, $2D, $2C, $59, $BD, $20, $22, $1C ; Its\u23b5[ma]gic\n#_1CA2D6: db $59, $BD, $24, $1E, $2C, $59, $D8, $59 ; \u23b5[ma]kes\u23b5[the]\u23b5\n#_1CA2DE: db $20, $2B, $C4 ; gr[ound]\n#_1CA2E1: db $76 ; line 3\n#_1CA2E2: db $1E, $31, $29, $BB, $1D, $1E, $59, $DE ; exp[lo]de\u23b5[with]\n#_1CA2EA: db $59, $CB, $A6, $3E ; \u23b5[pow][er]!\n#_1CA2EE: db $7E ; wait for key\n#_1CA2EF: db $73 ; scroll text\n#_1CA2F0: db $16, $94, $1C, $21, $59, $E3, $2B, $59 ; W[at]ch\u23b5[you]r\u23b5\n#_1CA2F8: db $0C, $1A, $20, $22, $1C, $59, $0C, $1E ; Magic\u23b5Me\n#_1CA300: db $D6, $3E ; [ter]!\n#_1CA302: db $7F ; end of message\n\n; =========================================================\n; This is the Quake Medallion!\n; Its magic causes the ground\n; to shake and defeats\n; nearby enemies!\n; Watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0065", + "code": "Message_0065:\n#_1CA303: db $E7, $2C, $59, $B5, $59, $D8, $59, $10 ; [Thi]s\u23b5[is]\u23b5[the]\u23b5Q\n#_1CA30B: db $2E, $1A, $24, $1E, $59, $0C, $1E, $1D ; uake\u23b5Med\n#_1CA313: db $1A, $25, $25, $22, $C7, $3E ; alli[on]!\n#_1CA319: db $75 ; line 2\n#_1CA31A: db $08, $2D, $2C, $59, $BD, $20, $22, $1C ; Its\u23b5[ma]gic\n#_1CA322: db $59, $1C, $1A, $2E, $D0, $2C, $59, $D8 ; \u23b5cau[se]s\u23b5[the]\n#_1CA32A: db $59, $20, $2B, $C4 ; \u23b5gr[ound]\n#_1CA32E: db $76 ; line 3\n#_1CA32F: db $DA, $59, $D1, $1A, $24, $1E, $59, $8C ; [to]\u23b5[sh]ake\u23b5[and ]\n#_1CA337: db $1D, $1E, $1F, $1E, $94, $2C ; defe[at]s\n#_1CA33D: db $7E ; wait for key\n#_1CA33E: db $73 ; scroll text\n#_1CA33F: db $27, $A2, $1B, $32, $59, $A5, $1E, $26 ; n[ear]by\u23b5[en]em\n#_1CA347: db $22, $1E, $2C, $3E ; ies!\n#_1CA34B: db $73 ; scroll text\n#_1CA34C: db $16, $94, $1C, $21, $59, $E3, $2B, $59 ; W[at]ch\u23b5[you]r\u23b5\n#_1CA354: db $0C, $1A, $20, $22, $1C, $59, $0C, $1E ; Magic\u23b5Me\n#_1CA35C: db $D6, $3E ; [ter]!\n#_1CA35E: db $7F ; end of message\n\n; =========================================================\n; You got the Magic Hammer!\n; You can drive the wooden\n; stakes down into the ground!\n; You can use it to pound on\n; other things too!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0066", + "code": "Message_0066:\n#_1CA35F: db $E8, $59, $AC, $2D, $59, $D8, $59, $0C ; [You]\u23b5[go]t\u23b5[the]\u23b5M\n#_1CA367: db $1A, $20, $22, $1C, $59, $07, $1A, $26 ; agic\u23b5Ham\n#_1CA36F: db $BE, $2B, $3E ; [me]r!\n#_1CA372: db $75 ; line 2\n#_1CA373: db $E8, $59, $99, $1D, $2B, $22, $2F, $1E ; [You]\u23b5[can ]drive\n#_1CA37B: db $59, $D8, $59, $30, $28, $28, $1D, $A5 ; \u23b5[the]\u23b5wood[en]\n#_1CA383: db $76 ; line 3\n#_1CA384: db $D3, $1A, $24, $1E, $2C, $59, $9F, $30 ; [st]akes\u23b5[do]w\n#_1CA38C: db $27, $59, $B4, $DA, $59, $D8, $59, $20 ; n\u23b5[in][to]\u23b5[the]\u23b5g\n#_1CA394: db $2B, $C4, $3E ; r[ound]!\n#_1CA397: db $7E ; wait for key\n#_1CA398: db $73 ; scroll text\n#_1CA399: db $E8, $59, $99, $2E, $D0, $59, $B6, $59 ; [You]\u23b5[can ]u[se]\u23b5[it]\u23b5\n#_1CA3A1: db $DA, $59, $29, $C4, $59, $C7 ; [to]\u23b5p[ound]\u23b5[on]\n#_1CA3A7: db $73 ; scroll text\n#_1CA3A8: db $28, $D8, $2B, $59, $D5, $20, $2C, $59 ; o[the]r\u23b5[thin]gs\u23b5\n#_1CA3B0: db $DA, $28, $3E ; [to]o!\n#_1CA3B3: db $7F ; end of message\n\n; =========================================================\n; Oh! Here is the Flute!\n; Its music surely has some\n; mysterious power!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0067", + "code": "Message_0067:\n#_1CA3B4: db $0E, $21, $3E, $8A, $E4, $1E, $59, $B5 ; Oh![ ][Her]e\u23b5[is]\n#_1CA3BC: db $59, $D8, $59, $05, $25, $2E, $2D, $1E ; \u23b5[the]\u23b5Flute\n#_1CA3C4: db $3E ; !\n#_1CA3C5: db $75 ; line 2\n#_1CA3C6: db $08, $2D, $2C, $59, $BF, $2C, $22, $1C ; Its\u23b5[mu]sic\n#_1CA3CE: db $59, $2C, $2E, $CE, $B9, $AE, $59, $CF ; \u23b5su[re][ly ][has]\u23b5[some]\n#_1CA3D6: db $76 ; line 3\n#_1CA3D7: db $26, $32, $D3, $A6, $22, $28, $2E, $2C ; my[st][er]ious\n#_1CA3DF: db $59, $CB, $A6, $3E ; \u23b5[pow][er]!\n#_1CA3E3: db $7F ; end of message\n\n; =========================================================\n; You got the Cane Of Somaria!\n; It will be very helpful if you\n; make proper use of it!\n; What a mysterious cane!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0068", + "code": "Message_0068:\n#_1CA3E4: db $E8, $59, $AC, $2D, $59, $D8, $59, $02 ; [You]\u23b5[go]t\u23b5[the]\u23b5C\n#_1CA3EC: db $93, $1E, $59, $0E, $1F, $59, $12, $28 ; [an]e\u23b5Of\u23b5So\n#_1CA3F4: db $BD, $2B, $22, $1A, $3E ; [ma]ria!\n#_1CA3F9: db $75 ; line 2\n#_1CA3FA: db $08, $2D, $59, $E2, $25, $25, $59, $97 ; It\u23b5[wi]ll\u23b5[be]\n#_1CA402: db $59, $DD, $32, $59, $21, $1E, $25, $29 ; \u23b5[ver]y\u23b5help\n#_1CA40A: db $1F, $2E, $25, $59, $22, $1F, $59, $E3 ; ful\u23b5if\u23b5[you]\n#_1CA412: db $76 ; line 3\n#_1CA413: db $BD, $24, $1E, $59, $CC, $C9, $59, $2E ; [ma]ke\u23b5[pro][per]\u23b5u\n#_1CA41B: db $D0, $59, $C6, $59, $B6, $3E ; [se]\u23b5[of]\u23b5[it]!\n#_1CA421: db $7E ; wait for key\n#_1CA422: db $73 ; scroll text\n#_1CA423: db $16, $B1, $2D, $59, $1A, $59, $26, $32 ; W[ha]t\u23b5a\u23b5my\n#_1CA42B: db $D3, $A6, $22, $28, $2E, $2C, $59, $1C ; [st][er]ious\u23b5c\n#_1CA433: db $93, $1E, $3E ; [an]e!\n#_1CA436: db $7F ; end of message\n\n; =========================================================\n; BOING! This is the Hook Shot!\n; It extends and contracts and\u2026\n; BOING! It can grapple many\n; things!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0069", + "code": "Message_0069:\n#_1CA437: db $01, $0E, $08, $0D, $06, $3E, $8A, $E7 ; BOING![ ][Thi]\n#_1CA43F: db $2C, $59, $B5, $59, $D8, $59, $07, $28 ; s\u23b5[is]\u23b5[the]\u23b5Ho\n#_1CA447: db $28, $24, $59, $12, $21, $28, $2D, $3E ; ok\u23b5Shot!\n#_1CA44F: db $75 ; line 2\n#_1CA450: db $08, $2D, $59, $1E, $31, $2D, $A5, $1D ; It\u23b5ext[en]d\n#_1CA458: db $2C, $59, $8C, $1C, $C7, $DB, $1A, $1C ; s\u23b5[and ]c[on][tr]ac\n#_1CA460: db $2D, $2C, $59, $90, $43 ; ts\u23b5[and]\u2026\n#_1CA465: db $76 ; line 3\n#_1CA466: db $01, $0E, $08, $0D, $06, $3E, $8A, $08 ; BOING![ ]I\n#_1CA46E: db $2D, $59, $99, $20, $2B, $1A, $29, $CA ; t\u23b5[can ]grap[ple]\n#_1CA476: db $59, $BC, $32 ; \u23b5[man]y\n#_1CA479: db $7E ; wait for key\n#_1CA47A: db $73 ; scroll text\n#_1CA47B: db $D5, $20, $2C, $3E ; [thin]gs!\n#_1CA47F: db $7F ; end of message\n\n; =========================================================\n; You got some Bombs!\n; You can pick up and throw\n; a Bomb you placed\n; (Press the \u24b6 Button)!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006A", + "code": "Message_006A:\n#_1CA480: db $E8, $59, $AC, $2D, $59, $CF, $59, $01 ; [You]\u23b5[go]t\u23b5[some]\u23b5B\n#_1CA488: db $28, $26, $1B, $2C, $3E ; ombs!\n#_1CA48D: db $75 ; line 2\n#_1CA48E: db $E8, $59, $99, $29, $22, $9C, $59, $DC ; [You]\u23b5[can ]pi[ck]\u23b5[up]\n#_1CA496: db $59, $8C, $2D, $21, $2B, $28, $30 ; \u23b5[and ]throw\n#_1CA49D: db $76 ; line 3\n#_1CA49E: db $1A, $59, $01, $28, $26, $1B, $59, $E3 ; a\u23b5Bomb\u23b5[you]\n#_1CA4A6: db $59, $29, $BA, $1C, $1E, $1D ; \u23b5p[la]ced\n#_1CA4AC: db $7E ; wait for key\n#_1CA4AD: db $73 ; scroll text\n#_1CA4AE: db $45, $0F, $CE, $2C, $2C, $59, $D8, $59 ; (P[re]ss\u23b5[the]\u23b5\n#_1CA4B6: db $5B, $59, $01, $2E, $2D, $DA, $27, $46 ; \u24b6\u23b5But[to]n)\n#_1CA4BE: db $3E ; !\n#_1CA4BF: db $7F ; end of message\n\n; =========================================================\n; This is a Magic Bottle!\n; You can store an item\n; inside and then use it later!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006B", + "code": "Message_006B:\n#_1CA4C0: db $E7, $2C, $59, $B5, $59, $1A, $59, $0C ; [Thi]s\u23b5[is]\u23b5a\u23b5M\n#_1CA4C8: db $1A, $20, $22, $1C, $59, $01, $28, $2D ; agic\u23b5Bot\n#_1CA4D0: db $2D, $25, $1E, $3E ; tle!\n#_1CA4D4: db $75 ; line 2\n#_1CA4D5: db $E8, $59, $99, $D3, $C8, $1E, $59, $93 ; [You]\u23b5[can ][st][or]e\u23b5[an]\n#_1CA4DD: db $59, $B6, $1E, $26 ; \u23b5[it]em\n#_1CA4E1: db $76 ; line 3\n#_1CA4E2: db $B4, $2C, $22, $1D, $1E, $59, $8C, $D8 ; [in]side\u23b5[and ][the]\n#_1CA4EA: db $27, $59, $2E, $D0, $59, $B6, $59, $BA ; n\u23b5u[se]\u23b5[it]\u23b5[la]\n#_1CA4F2: db $D6, $3E ; [ter]!\n#_1CA4F4: db $7F ; end of message\n\n; =========================================================\n; You got the Big Key!\n; This is the master key of the\n; dungeon. It can open many\n; locks that small keys cannot.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006C", + "code": "Message_006C:\n#_1CA4F5: db $E8, $59, $AC, $2D, $59, $D8, $59, $01 ; [You]\u23b5[go]t\u23b5[the]\u23b5B\n#_1CA4FD: db $22, $20, $59, $0A, $1E, $32, $3E ; ig\u23b5Key!\n#_1CA504: db $75 ; line 2\n#_1CA505: db $E7, $2C, $59, $B5, $59, $D8, $59, $BD ; [Thi]s\u23b5[is]\u23b5[the]\u23b5[ma]\n#_1CA50D: db $D3, $A1, $24, $1E, $32, $59, $C6, $59 ; [st][er ]key\u23b5[of]\u23b5\n#_1CA515: db $D8 ; [the]\n#_1CA516: db $76 ; line 3\n#_1CA517: db $1D, $2E, $27, $20, $1E, $C7, $41, $8A ; dunge[on].[ ]\n#_1CA51F: db $08, $2D, $59, $99, $C3, $59, $BC, $32 ; It\u23b5[can ][open]\u23b5[man]y\n#_1CA527: db $7E ; wait for key\n#_1CA528: db $73 ; scroll text\n#_1CA529: db $BB, $9C, $2C, $59, $D7, $2D, $59, $2C ; [lo][ck]s\u23b5[tha]t\u23b5s\n#_1CA531: db $BD, $25, $25, $59, $24, $1E, $32, $2C ; [ma]ll\u23b5keys\n#_1CA539: db $59, $1C, $93, $C2, $41 ; \u23b5c[an][not].\n#_1CA53E: db $7F ; end of message\n\n; =========================================================\n; You got the Titan's Mitt!\n; Now you can lift the heaviest\n; stones that were once\n; impossible to budge.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006D", + "code": "Message_006D:\n#_1CA53F: db $E8, $59, $AC, $2D, $59, $D8, $59, $13 ; [You]\u23b5[go]t\u23b5[the]\u23b5T\n#_1CA547: db $B6, $93, $8B, $0C, $B6, $2D, $3E ; [it][an]['s ]M[it]t!\n#_1CA54E: db $75 ; line 2\n#_1CA54F: db $0D, $28, $30, $59, $E3, $59, $99, $25 ; Now\u23b5[you]\u23b5[can ]l\n#_1CA557: db $22, $1F, $2D, $59, $D8, $59, $21, $1E ; ift\u23b5[the]\u23b5he\n#_1CA55F: db $1A, $2F, $22, $1E, $D3 ; avie[st]\n#_1CA564: db $76 ; line 3\n#_1CA565: db $D3, $C7, $1E, $2C, $59, $D7, $2D, $59 ; [st][on]es\u23b5[tha]t\u23b5\n#_1CA56D: db $E0, $CD, $C7, $1C, $1E ; [we][re ][on]ce\n#_1CA572: db $7E ; wait for key\n#_1CA573: db $73 ; scroll text\n#_1CA574: db $22, $26, $29, $28, $2C, $2C, $22, $95 ; impossi[ble]\n#_1CA57C: db $59, $DA, $59, $1B, $2E, $1D, $20, $1E ; \u23b5[to]\u23b5budge\n#_1CA584: db $41 ; .\n#_1CA585: db $7F ; end of message\n\n; =========================================================\n; He gave you the Magic Mirror!\n; This mirror is blue, clear and\n; beautiful\u2026\n; You feel like it is going to\n; absorb you into another world\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006E", + "code": "Message_006E:\n#_1CA586: db $07, $1E, $59, $20, $1A, $2F, $1E, $59 ; He\u23b5gave\u23b5\n#_1CA58E: db $E3, $59, $D8, $59, $0C, $1A, $20, $22 ; [you]\u23b5[the]\u23b5Magi\n#_1CA596: db $1C, $59, $0C, $22, $2B, $2B, $C8, $3E ; c\u23b5Mirr[or]!\n#_1CA59E: db $75 ; line 2\n#_1CA59F: db $E7, $2C, $59, $26, $22, $2B, $2B, $C8 ; [Thi]s\u23b5mirr[or]\n#_1CA5A7: db $59, $B5, $59, $1B, $25, $2E, $1E, $42 ; \u23b5[is]\u23b5blue,\n#_1CA5AF: db $59, $1C, $25, $A2, $59, $90 ; \u23b5cl[ear]\u23b5[and]\n#_1CA5B5: db $76 ; line 3\n#_1CA5B6: db $97, $1A, $2E, $2D, $22, $1F, $2E, $25 ; [be]autiful\n#_1CA5BE: db $43 ; \u2026\n#_1CA5BF: db $7E ; wait for key\n#_1CA5C0: db $73 ; scroll text\n#_1CA5C1: db $E8, $59, $1F, $1E, $1E, $25, $59, $25 ; [You]\u23b5feel\u23b5l\n#_1CA5C9: db $22, $24, $1E, $59, $B6, $59, $B5, $59 ; ike\u23b5[it]\u23b5[is]\u23b5\n#_1CA5D1: db $AC, $B3, $DA ; [go][ing ][to]\n#_1CA5D4: db $73 ; scroll text\n#_1CA5D5: db $1A, $1B, $D2, $2B, $1B, $59, $E3, $59 ; ab[so]rb\u23b5[you]\u23b5\n#_1CA5DD: db $B4, $DA, $59, $93, $28, $D8, $2B, $59 ; [in][to]\u23b5[an]o[the]r\u23b5\n#_1CA5E5: db $30, $C8, $25, $1D, $43 ; w[or]ld\u2026\n#_1CA5EA: db $7F ; end of message\n\n; =========================================================\n; This is it! The Master Sword!\n; \u2026 \u2026 \u2026\n; No, this can't be it\u2026 Too bad.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_006F", + "code": "Message_006F:\n#_1CA5EB: db $E7, $2C, $59, $B5, $59, $B6, $3E, $8A ; [Thi]s\u23b5[is]\u23b5[it]![ ]\n#_1CA5F3: db $E6, $59, $0C, $92, $A1, $12, $30, $C8 ; [The]\u23b5M[ast][er ]Sw[or]\n#_1CA5FB: db $1D, $3E ; d!\n#_1CA5FD: db $75 ; line 2\n#_1CA5FE: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CA603: db $76 ; line 3\n#_1CA604: db $0D, $28, $42, $59, $D9, $2C, $59, $1C ; No,\u23b5[thi]s\u23b5c\n#_1CA60C: db $93, $51, $2D, $59, $97, $59, $B6, $43 ; [an]'t\u23b5[be]\u23b5[it]\u2026\n#_1CA614: db $59, $13, $28, $28, $59, $96, $1D, $41 ; \u23b5Too\u23b5[ba]d.\n#_1CA61C: db $7F ; end of message\n\n; =========================================================\n; Suddenly, Sahasrahla contacts\n; you telepathically\u2026\n; \u2026 \u2026 \u2026\n; [LINK], it is extraordinary\n; that you won the Master Sword\n; that makes evil retreat\u2026\n; With this shining sword, I\n; believe you can deflect the\n; wizard's evil powers.\n;\n; The destiny of this land\n; is in your hands.\n; Please, [LINK]\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0070", + "code": "Message_0070:\n#_1CA61D: db $6B, $02 ; set window border\n#_1CA61F: db $7A, $03 ; set draw speed\n#_1CA621: db $12, $2E, $1D, $1D, $A5, $25, $32, $42 ; Sudd[en]ly,\n#_1CA629: db $59, $12, $1A, $AE, $2B, $1A, $21, $BA ; \u23b5Sa[has]rah[la]\n#_1CA631: db $59, $1C, $C7, $2D, $1A, $1C, $2D, $2C ; \u23b5c[on]tacts\n#_1CA639: db $75 ; line 2\n#_1CA63A: db $E3, $59, $2D, $1E, $25, $1E, $29, $94 ; [you]\u23b5telep[at]\n#_1CA642: db $B0, $1C, $1A, $25, $25, $32, $43 ; [hi]cally\u2026\n#_1CA649: db $76 ; line 3\n#_1CA64A: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CA64F: db $7E ; wait for key\n#_1CA650: db $73 ; scroll text\n#_1CA651: db $6A, $42, $59, $B6, $59, $B5, $59, $1E ; [LINK],\u23b5[it]\u23b5[is]\u23b5e\n#_1CA659: db $31, $DB, $1A, $C8, $9E, $27, $1A, $2B ; x[tr]a[or][di]nar\n#_1CA661: db $32 ; y\n#_1CA662: db $73 ; scroll text\n#_1CA663: db $D7, $2D, $59, $E3, $59, $30, $C7, $59 ; [tha]t\u23b5[you]\u23b5w[on]\u23b5\n#_1CA66B: db $D8, $59, $0C, $92, $A1, $12, $30, $C8 ; [the]\u23b5M[ast][er ]Sw[or]\n#_1CA673: db $1D ; d\n#_1CA674: db $73 ; scroll text\n#_1CA675: db $D7, $2D, $59, $BD, $24, $1E, $2C, $59 ; [tha]t\u23b5[ma]kes\u23b5\n#_1CA67D: db $A7, $22, $25, $59, $CE, $DB, $1E, $94 ; [ev]il\u23b5[re][tr]e[at]\n#_1CA685: db $43 ; \u2026\n#_1CA686: db $7E ; wait for key\n#_1CA687: db $73 ; scroll text\n#_1CA688: db $16, $B6, $21, $59, $D9, $2C, $59, $D1 ; W[it]h\u23b5[thi]s\u23b5[sh]\n#_1CA690: db $B4, $B3, $2C, $30, $C8, $1D, $42, $59 ; [in][ing ]sw[or]d,\u23b5\n#_1CA698: db $08 ; I\n#_1CA699: db $73 ; scroll text\n#_1CA69A: db $97, $25, $22, $A7, $1E, $59, $E3, $59 ; [be]li[ev]e\u23b5[you]\u23b5\n#_1CA6A2: db $99, $1D, $1E, $1F, $25, $1E, $1C, $2D ; [can ]deflect\n#_1CA6AA: db $59, $D8 ; \u23b5[the]\n#_1CA6AC: db $73 ; scroll text\n#_1CA6AD: db $E2, $33, $1A, $2B, $1D, $8B, $A7, $22 ; [wi]zard['s ][ev]i\n#_1CA6B5: db $25, $59, $CB, $A6, $2C, $41 ; l\u23b5[pow][er]s.\n#_1CA6BB: db $7E ; wait for key\n#_1CA6BC: db $73 ; scroll text\n#_1CA6BD: db $73 ; scroll text\n#_1CA6BE: db $E6, $59, $9D, $2D, $B4, $32, $59, $C6 ; [The]\u23b5[des]t[in]y\u23b5[of]\n#_1CA6C6: db $59, $D9, $2C, $59, $BA, $27, $1D ; \u23b5[thi]s\u23b5[la]nd\n#_1CA6CD: db $73 ; scroll text\n#_1CA6CE: db $B5, $59, $B4, $59, $E3, $2B, $59, $B1 ; [is]\u23b5[in]\u23b5[you]r\u23b5[ha]\n#_1CA6D6: db $27, $1D, $2C, $41 ; nds.\n#_1CA6DA: db $7E ; wait for key\n#_1CA6DB: db $73 ; scroll text\n#_1CA6DC: db $0F, $25, $1E, $1A, $D0, $42, $59, $6A ; Plea[se],\u23b5[LINK]\n#_1CA6E4: db $43 ; \u2026\n#_1CA6E5: db $7F ; end of message\n\n; =========================================================\n; Heh heh heh\u2026 Thank you!\n; This is the Medicine of Life.\n; Use it to regain your Life\n; power.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0071", + "code": "Message_0071:\n#_1CA6E6: db $07, $1E, $21, $59, $21, $1E, $21, $59 ; Heh\u23b5heh\u23b5\n#_1CA6EE: db $21, $1E, $21, $43, $8A, $E5, $27, $24 ; heh\u2026[ ][Tha]nk\n#_1CA6F6: db $59, $E3, $3E ; \u23b5[you]!\n#_1CA6F9: db $75 ; line 2\n#_1CA6FA: db $E7, $2C, $59, $B5, $59, $D8, $59, $0C ; [Thi]s\u23b5[is]\u23b5[the]\u23b5M\n#_1CA702: db $1E, $9E, $1C, $B4, $1E, $59, $C6, $59 ; e[di]c[in]e\u23b5[of]\u23b5\n#_1CA70A: db $0B, $22, $1F, $1E, $41 ; Life.\n#_1CA70F: db $76 ; line 3\n#_1CA710: db $14, $D0, $59, $B6, $59, $DA, $59, $CE ; U[se]\u23b5[it]\u23b5[to]\u23b5[re]\n#_1CA718: db $20, $8F, $59, $E3, $2B, $59, $0B, $22 ; g[ain]\u23b5[you]r\u23b5Li\n#_1CA720: db $1F, $1E ; fe\n#_1CA722: db $7E ; wait for key\n#_1CA723: db $73 ; scroll text\n#_1CA724: db $CB, $A6, $41 ; [pow][er].\n#_1CA727: db $7F ; end of message\n\n; =========================================================\n; Heh heh heh\u2026 Thank you!\n; This is the Medicine of Magic.\n; You can recharge your mystic\n; energy with it.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0072", + "code": "Message_0072:\n#_1CA728: db $07, $1E, $21, $59, $21, $1E, $21, $59 ; Heh\u23b5heh\u23b5\n#_1CA730: db $21, $1E, $21, $43, $8A, $E5, $27, $24 ; heh\u2026[ ][Tha]nk\n#_1CA738: db $59, $E3, $3E ; \u23b5[you]!\n#_1CA73B: db $75 ; line 2\n#_1CA73C: db $E7, $2C, $59, $B5, $59, $D8, $59, $0C ; [Thi]s\u23b5[is]\u23b5[the]\u23b5M\n#_1CA744: db $1E, $9E, $1C, $B4, $1E, $59, $C6, $59 ; e[di]c[in]e\u23b5[of]\u23b5\n#_1CA74C: db $0C, $1A, $20, $22, $1C, $41 ; Magic.\n#_1CA752: db $76 ; line 3\n#_1CA753: db $E8, $59, $99, $CE, $1C, $B1, $2B, $20 ; [You]\u23b5[can ][re]c[ha]rg\n#_1CA75B: db $1E, $59, $E3, $2B, $59, $26, $32, $D3 ; e\u23b5[you]r\u23b5my[st]\n#_1CA763: db $22, $1C ; ic\n#_1CA765: db $7E ; wait for key\n#_1CA766: db $73 ; scroll text\n#_1CA767: db $A5, $A6, $20, $32, $59, $DE, $59, $B6 ; [en][er]gy\u23b5[with]\u23b5[it]\n#_1CA76F: db $41 ; .\n#_1CA770: db $7F ; end of message\n\n; =========================================================\n; Heh heh heh\u2026 Thank you!\n; This is the Medicine of Life and\n; Magic! You can recover both!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0073", + "code": "Message_0073:\n#_1CA771: db $07, $1E, $21, $59, $21, $1E, $21, $59 ; Heh\u23b5heh\u23b5\n#_1CA779: db $21, $1E, $21, $43, $8A, $E5, $27, $24 ; heh\u2026[ ][Tha]nk\n#_1CA781: db $59, $E3, $3E ; \u23b5[you]!\n#_1CA784: db $75 ; line 2\n#_1CA785: db $E7, $2C, $59, $B5, $59, $D8, $59, $0C ; [Thi]s\u23b5[is]\u23b5[the]\u23b5M\n#_1CA78D: db $1E, $9E, $1C, $B4, $1E, $59, $C6, $59 ; e[di]c[in]e\u23b5[of]\u23b5\n#_1CA795: db $0B, $22, $1F, $1E, $59, $90 ; Life\u23b5[and]\n#_1CA79B: db $76 ; line 3\n#_1CA79C: db $0C, $1A, $20, $22, $1C, $3E, $8A, $E8 ; Magic![ ][You]\n#_1CA7A4: db $59, $99, $CE, $1C, $28, $DD, $59, $98 ; \u23b5[can ][re]co[ver]\u23b5[bo]\n#_1CA7AC: db $2D, $21, $3E ; th!\n#_1CA7AF: db $7F ; end of message\n\n; =========================================================\n; You borrowed the Bug Catching\n; Net! There may be some other\n; things you can catch with it,\n; too.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0074", + "code": "Message_0074:\n#_1CA7B0: db $E8, $59, $98, $2B, $2B, $28, $E0, $1D ; [You]\u23b5[bo]rro[we]d\n#_1CA7B8: db $59, $D8, $59, $01, $2E, $20, $59, $02 ; \u23b5[the]\u23b5Bug\u23b5C\n#_1CA7C0: db $94, $1C, $B0, $27, $20 ; [at]c[hi]ng\n#_1CA7C5: db $75 ; line 2\n#_1CA7C6: db $0D, $1E, $2D, $3E, $8A, $E6, $CD, $BD ; Net![ ][The][re ][ma]\n#_1CA7CE: db $32, $59, $97, $59, $CF, $59, $28, $D8 ; y\u23b5[be]\u23b5[some]\u23b5o[the]\n#_1CA7D6: db $2B ; r\n#_1CA7D7: db $76 ; line 3\n#_1CA7D8: db $D5, $20, $2C, $59, $E3, $59, $99, $1C ; [thin]gs\u23b5[you]\u23b5[can ]c\n#_1CA7E0: db $94, $1C, $21, $59, $DE, $59, $B6, $42 ; [at]ch\u23b5[with]\u23b5[it],\n#_1CA7E8: db $7E ; wait for key\n#_1CA7E9: db $73 ; scroll text\n#_1CA7EA: db $DA, $28, $41 ; [to]o.\n#_1CA7ED: db $7F ; end of message\n\n; =========================================================\n; You found the Blue Mail!\n; This armor reduces the damage\n; that you take from enemies!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0075", + "code": "Message_0075:\n#_1CA7EE: db $E8, $59, $1F, $C4, $59, $D8, $59, $01 ; [You]\u23b5f[ound]\u23b5[the]\u23b5B\n#_1CA7F6: db $25, $2E, $1E, $59, $0C, $1A, $22, $25 ; lue\u23b5Mail\n#_1CA7FE: db $3E ; !\n#_1CA7FF: db $75 ; line 2\n#_1CA800: db $E7, $2C, $59, $1A, $2B, $26, $C8, $59 ; [Thi]s\u23b5arm[or]\u23b5\n#_1CA808: db $CE, $1D, $2E, $1C, $1E, $2C, $59, $D8 ; [re]duces\u23b5[the]\n#_1CA810: db $59, $1D, $1A, $BD, $20, $1E ; \u23b5da[ma]ge\n#_1CA816: db $76 ; line 3\n#_1CA817: db $D7, $2D, $59, $E3, $59, $2D, $1A, $24 ; [tha]t\u23b5[you]\u23b5tak\n#_1CA81F: db $1E, $59, $A9, $26, $59, $A5, $1E, $26 ; e\u23b5[fro]m\u23b5[en]em\n#_1CA827: db $22, $1E, $2C, $3E ; ies!\n#_1CA82B: db $7F ; end of message\n\n; =========================================================\n; You found the Red Mail!\n; This provides even better\n; protection than the Blue Mail!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0076", + "code": "Message_0076:\n#_1CA82C: db $E8, $59, $1F, $C4, $59, $D8, $59, $11 ; [You]\u23b5f[ound]\u23b5[the]\u23b5R\n#_1CA834: db $A4, $0C, $1A, $22, $25, $3E ; [ed ]Mail!\n#_1CA83A: db $75 ; line 2\n#_1CA83B: db $E7, $2C, $59, $CC, $2F, $22, $9D, $59 ; [Thi]s\u23b5[pro]vi[des]\u23b5\n#_1CA843: db $A7, $A0, $97, $2D, $D6 ; [ev][en ][be]t[ter]\n#_1CA848: db $76 ; line 3\n#_1CA849: db $CC, $2D, $1E, $1C, $2D, $22, $C7, $59 ; [pro]tecti[on]\u23b5\n#_1CA851: db $D7, $27, $59, $D8, $59, $01, $25, $2E ; [tha]n\u23b5[the]\u23b5Blu\n#_1CA859: db $1E, $59, $0C, $1A, $22, $25, $3E ; e\u23b5Mail!\n#_1CA860: db $7F ; end of message\n\n; =========================================================\n; Great! Your sword is stronger!\n; You can feel the sheer power\n; flowing through your body!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0077", + "code": "Message_0077:\n#_1CA861: db $06, $CE, $94, $3E, $8A, $E8, $2B, $59 ; G[re][at]![ ][You]r\u23b5\n#_1CA869: db $2C, $30, $C8, $1D, $59, $B5, $59, $D3 ; sw[or]d\u23b5[is]\u23b5[st]\n#_1CA871: db $2B, $C7, $20, $A6, $3E ; r[on]g[er]!\n#_1CA876: db $75 ; line 2\n#_1CA877: db $E8, $59, $99, $1F, $1E, $1E, $25, $59 ; [You]\u23b5[can ]feel\u23b5\n#_1CA87F: db $D8, $59, $D1, $1E, $A1, $CB, $A6 ; [the]\u23b5[sh]e[er ][pow][er]\n#_1CA886: db $76 ; line 3\n#_1CA887: db $1F, $BB, $E2, $27, $20, $59, $2D, $21 ; f[lo][wi]ng\u23b5th\n#_1CA88F: db $2B, $28, $2E, $20, $21, $59, $E3, $2B ; rough\u23b5[you]r\n#_1CA897: db $59, $98, $1D, $32, $3E ; \u23b5[bo]dy!\n#_1CA89C: db $7F ; end of message\n\n; =========================================================\n; You found the Mirror Shield!\n; You can now reflect beams\n; that your old shield\n; couldn't block!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0078", + "code": "Message_0078:\n#_1CA89D: db $E8, $59, $1F, $C4, $59, $D8, $59, $0C ; [You]\u23b5f[ound]\u23b5[the]\u23b5M\n#_1CA8A5: db $22, $2B, $2B, $C8, $59, $12, $B0, $1E ; irr[or]\u23b5S[hi]e\n#_1CA8AD: db $25, $1D, $3E ; ld!\n#_1CA8B0: db $75 ; line 2\n#_1CA8B1: db $E8, $59, $99, $27, $28, $30, $59, $CE ; [You]\u23b5[can ]now\u23b5[re]\n#_1CA8B9: db $1F, $25, $1E, $1C, $2D, $59, $97, $1A ; flect\u23b5[be]a\n#_1CA8C1: db $26, $2C ; ms\n#_1CA8C3: db $76 ; line 3\n#_1CA8C4: db $D7, $2D, $59, $E3, $2B, $59, $28, $25 ; [tha]t\u23b5[you]r\u23b5ol\n#_1CA8CC: db $1D, $59, $D1, $22, $1E, $25, $1D ; d\u23b5[sh]ield\n#_1CA8D3: db $7E ; wait for key\n#_1CA8D4: db $73 ; scroll text\n#_1CA8D5: db $1C, $28, $2E, $25, $1D, $C0, $1B, $BB ; could[n't ]b[lo]\n#_1CA8DD: db $9C, $3E ; [ck]!\n#_1CA8DF: db $7F ; end of message\n\n; =========================================================\n; You got the Cane Of Byrna!\n; If you swing it once, a ring of\n; light will protect you!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0079", + "code": "Message_0079:\n#_1CA8E0: db $E8, $59, $AC, $2D, $59, $D8, $59, $02 ; [You]\u23b5[go]t\u23b5[the]\u23b5C\n#_1CA8E8: db $93, $1E, $59, $0E, $1F, $59, $01, $32 ; [an]e\u23b5Of\u23b5By\n#_1CA8F0: db $2B, $27, $1A, $3E ; rna!\n#_1CA8F4: db $75 ; line 2\n#_1CA8F5: db $08, $1F, $59, $E3, $59, $2C, $E2, $27 ; If\u23b5[you]\u23b5s[wi]n\n#_1CA8FD: db $20, $59, $B6, $59, $C7, $1C, $1E, $42 ; g\u23b5[it]\u23b5[on]ce,\n#_1CA905: db $59, $1A, $59, $2B, $B3, $C6 ; \u23b5a\u23b5r[ing ][of]\n#_1CA90B: db $76 ; line 3\n#_1CA90C: db $25, $B2, $E2, $25, $25, $59, $CC, $2D ; l[ight ][wi]ll\u23b5[pro]t\n#_1CA914: db $1E, $1C, $2D, $59, $E3, $3E ; ect\u23b5[you]!\n#_1CA91A: db $7F ; end of message\n\n; =========================================================\n; Eh? It's locked!\n; If you had the Big Key, you\n; might be able to open it!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007A", + "code": "Message_007A:\n#_1CA91B: db $04, $21, $3F, $8A, $08, $2D, $8B, $BB ; Eh?[ ]It['s ][lo]\n#_1CA923: db $9C, $1E, $1D, $3E ; [ck]ed!\n#_1CA927: db $75 ; line 2\n#_1CA928: db $08, $1F, $59, $E3, $59, $B1, $1D, $59 ; If\u23b5[you]\u23b5[ha]d\u23b5\n#_1CA930: db $D8, $59, $01, $22, $20, $59, $0A, $1E ; [the]\u23b5Big\u23b5Ke\n#_1CA938: db $32, $42, $59, $E3 ; y,\u23b5[you]\n#_1CA93C: db $76 ; line 3\n#_1CA93D: db $26, $B2, $97, $59, $1A, $95, $59, $DA ; m[ight ][be]\u23b5a[ble]\u23b5[to]\n#_1CA945: db $59, $C3, $59, $B6, $3E ; \u23b5[open]\u23b5[it]!\n#_1CA94A: db $7F ; end of message\n\n; =========================================================\n; You are short on Magic Power!\n; You can't use this item now.\n; Watch your Magic Meter!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007B", + "code": "Message_007B:\n#_1CA94B: db $E8, $59, $8D, $D1, $C8, $2D, $59, $C7 ; [You]\u23b5[are ][sh][or]t\u23b5[on]\n#_1CA953: db $59, $0C, $1A, $20, $22, $1C, $59, $0F ; \u23b5Magic\u23b5P\n#_1CA95B: db $28, $E0, $2B, $3E ; o[we]r!\n#_1CA95F: db $75 ; line 2\n#_1CA960: db $E8, $59, $1C, $93, $51, $2D, $59, $2E ; [You]\u23b5c[an]'t\u23b5u\n#_1CA968: db $D0, $59, $D9, $2C, $59, $B6, $1E, $26 ; [se]\u23b5[thi]s\u23b5[it]em\n#_1CA970: db $59, $27, $28, $30, $41 ; \u23b5now.\n#_1CA975: db $76 ; line 3\n#_1CA976: db $16, $94, $1C, $21, $59, $E3, $2B, $59 ; W[at]ch\u23b5[you]r\u23b5\n#_1CA97E: db $0C, $1A, $20, $22, $1C, $59, $0C, $1E ; Magic\u23b5Me\n#_1CA986: db $D6, $3E ; [ter]!\n#_1CA988: db $7F ; end of message\n\n; =========================================================\n; He gives you the Pegasus\n; Shoes! Now you can execute a\n; devastating dash attack!\n; (Hold the \u24b6 Button\n; for a short time.)\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007C", + "code": "Message_007C:\n#_1CA989: db $07, $1E, $59, $20, $22, $2F, $1E, $2C ; He\u23b5gives\n#_1CA991: db $59, $E3, $59, $D8, $59, $0F, $1E, $20 ; \u23b5[you]\u23b5[the]\u23b5Peg\n#_1CA999: db $1A, $2C, $2E, $2C ; asus\n#_1CA99D: db $75 ; line 2\n#_1CA99E: db $12, $21, $28, $1E, $2C, $3E, $8A, $0D ; Shoes![ ]N\n#_1CA9A6: db $28, $30, $59, $E3, $59, $99, $1E, $31 ; ow\u23b5[you]\u23b5[can ]ex\n#_1CA9AE: db $1E, $1C, $2E, $2D, $1E, $59, $1A ; ecute\u23b5a\n#_1CA9B5: db $76 ; line 3\n#_1CA9B6: db $1D, $A7, $92, $94, $B3, $1D, $1A, $D1 ; d[ev][ast][at][ing ]da[sh]\n#_1CA9BE: db $59, $94, $2D, $1A, $9C, $3E ; \u23b5[at]ta[ck]!\n#_1CA9C4: db $7E ; wait for key\n#_1CA9C5: db $73 ; scroll text\n#_1CA9C6: db $45, $07, $28, $25, $1D, $59, $D8, $59 ; (Hold\u23b5[the]\u23b5\n#_1CA9CE: db $5B, $59, $01, $2E, $2D, $DA, $27 ; \u24b6\u23b5But[to]n\n#_1CA9D5: db $73 ; scroll text\n#_1CA9D6: db $A8, $59, $1A, $59, $D1, $C8, $2D, $59 ; [for]\u23b5a\u23b5[sh][or]t\u23b5\n#_1CA9DE: db $2D, $22, $BE, $41, $46 ; ti[me].)\n#_1CA9E3: db $7F ; end of message\n\n; =========================================================\n; Wow! I haven't seen a normal\n; person in a few hundred years!\n; Let me talk to you for a while.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007D", + "code": "Message_007D:\n#_1CA9E4: db $16, $28, $30, $3E, $8A, $08, $59, $AD ; Wow![ ]I\u23b5[have]\n#_1CA9EC: db $C0, $D0, $A0, $1A, $59, $27, $C8, $BD ; [n't ][se][en ]a\u23b5n[or][ma]\n#_1CA9F4: db $25 ; l\n#_1CA9F5: db $75 ; line 2\n#_1CA9F6: db $C9, $D2, $27, $59, $B4, $59, $1A, $59 ; [per][so]n\u23b5[in]\u23b5a\u23b5\n#_1CA9FE: db $1F, $1E, $30, $59, $21, $2E, $27, $1D ; few\u23b5hund\n#_1CAA06: db $CE, $1D, $59, $32, $A2, $2C, $3E ; [re]d\u23b5y[ear]s!\n#_1CAA0D: db $76 ; line 3\n#_1CAA0E: db $0B, $1E, $2D, $59, $BE, $59, $2D, $1A ; Let\u23b5[me]\u23b5ta\n#_1CAA16: db $25, $24, $59, $DA, $59, $E3, $59, $A8 ; lk\u23b5[to]\u23b5[you]\u23b5[for]\n#_1CAA1E: db $59, $1A, $59, $E1, $22, $25, $1E, $41 ; \u23b5a\u23b5[wh]ile.\n#_1CAA26: db $7F ; end of message\n\n; =========================================================\n; Do you know about the\n; Gargoyle statue in the village?\n; People say they can hear a girl\n; calling for help from under the\n; statue. Isn't that a strange\n; story\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007E", + "code": "Message_007E:\n#_1CAA27: db $03, $28, $59, $E3, $59, $B8, $59, $1A ; Do\u23b5[you]\u23b5[know]\u23b5a\n#_1CAA2F: db $98, $2E, $2D, $59, $D8 ; [bo]ut\u23b5[the]\n#_1CAA34: db $75 ; line 2\n#_1CAA35: db $06, $1A, $2B, $AC, $32, $25, $1E, $59 ; Gar[go]yle\u23b5\n#_1CAA3D: db $D3, $94, $2E, $1E, $59, $B4, $59, $D8 ; [st][at]ue\u23b5[in]\u23b5[the]\n#_1CAA45: db $59, $2F, $22, $25, $BA, $20, $1E, $3F ; \u23b5vil[la]ge?\n#_1CAA4D: db $76 ; line 3\n#_1CAA4E: db $0F, $1E, $28, $CA, $59, $2C, $1A, $32 ; Peo[ple]\u23b5say\n#_1CAA56: db $59, $D8, $32, $59, $99, $21, $A2, $59 ; \u23b5[the]y\u23b5[can ]h[ear]\u23b5\n#_1CAA5E: db $1A, $59, $20, $22, $2B, $25 ; a\u23b5girl\n#_1CAA64: db $7E ; wait for key\n#_1CAA65: db $73 ; scroll text\n#_1CAA66: db $1C, $1A, $25, $25, $B3, $A8, $59, $21 ; call[ing ][for]\u23b5h\n#_1CAA6E: db $1E, $25, $29, $59, $A9, $26, $59, $2E ; elp\u23b5[fro]m\u23b5u\n#_1CAA76: db $27, $1D, $A1, $D8 ; nd[er ][the]\n#_1CAA7A: db $73 ; scroll text\n#_1CAA7B: db $D3, $94, $2E, $1E, $41, $8A, $08, $2C ; [st][at]ue.[ ]Is\n#_1CAA83: db $C0, $D7, $2D, $59, $1A, $59, $D3, $2B ; [n't ][tha]t\u23b5a\u23b5[st]r\n#_1CAA8B: db $93, $20, $1E ; [an]ge\n#_1CAA8E: db $73 ; scroll text\n#_1CAA8F: db $D3, $C8, $32, $43 ; [st][or]y\u2026\n#_1CAA93: db $7F ; end of message\n\n; =========================================================\n; Surprisingly, the Triforce\n; created this world to fulfill\n; Ganon's wish.\n; What is Ganon's wish,\n; you ask? It is to rule the\n; entire cosmos! Don't you think\n; it might be possible with the\n; power of the Triforce\n; behind you?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_007F", + "code": "Message_007F:\n#_1CAA94: db $12, $2E, $2B, $29, $2B, $B5, $B4, $20 ; Surpr[is][in]g\n#_1CAA9C: db $25, $32, $42, $59, $D8, $59, $13, $2B ; ly,\u23b5[the]\u23b5Tr\n#_1CAAA4: db $22, $A8, $1C, $1E ; i[for]ce\n#_1CAAA8: db $75 ; line 2\n#_1CAAA9: db $1C, $CE, $94, $A4, $D9, $2C, $59, $30 ; c[re][at][ed ][thi]s\u23b5w\n#_1CAAB1: db $C8, $25, $1D, $59, $DA, $59, $1F, $2E ; [or]ld\u23b5[to]\u23b5fu\n#_1CAAB9: db $25, $1F, $22, $25, $25 ; lfill\n#_1CAABE: db $76 ; line 3\n#_1CAABF: db $06, $93, $C7, $8B, $E2, $D1, $41 ; G[an][on]['s ][wi][sh].\n#_1CAAC6: db $7E ; wait for key\n#_1CAAC7: db $73 ; scroll text\n#_1CAAC8: db $16, $B1, $2D, $59, $B5, $59, $06, $93 ; W[ha]t\u23b5[is]\u23b5G[an]\n#_1CAAD0: db $C7, $8B, $E2, $D1, $42 ; [on]['s ][wi][sh],\n#_1CAAD5: db $73 ; scroll text\n#_1CAAD6: db $E3, $59, $1A, $2C, $24, $3F, $8A, $08 ; [you]\u23b5ask?[ ]I\n#_1CAADE: db $2D, $59, $B5, $59, $DA, $59, $2B, $2E ; t\u23b5[is]\u23b5[to]\u23b5ru\n#_1CAAE6: db $25, $1E, $59, $D8 ; le\u23b5[the]\n#_1CAAEA: db $73 ; scroll text\n#_1CAAEB: db $A3, $22, $CD, $1C, $28, $2C, $26, $28 ; [ent]i[re ]cosmo\n#_1CAAF3: db $2C, $3E, $8A, $03, $C7, $51, $2D, $59 ; s![ ]D[on]'t\u23b5\n#_1CAAFB: db $E3, $59, $D5, $24 ; [you]\u23b5[thin]k\n#_1CAAFF: db $7E ; wait for key\n#_1CAB00: db $73 ; scroll text\n#_1CAB01: db $B6, $59, $26, $B2, $97, $59, $29, $28 ; [it]\u23b5m[ight ][be]\u23b5po\n#_1CAB09: db $2C, $2C, $22, $95, $59, $DE, $59, $D8 ; ssi[ble]\u23b5[with]\u23b5[the]\n#_1CAB11: db $73 ; scroll text\n#_1CAB12: db $CB, $A1, $C6, $59, $D8, $59, $13, $2B ; [pow][er ][of]\u23b5[the]\u23b5Tr\n#_1CAB1A: db $22, $A8, $1C, $1E ; i[for]ce\n#_1CAB1E: db $73 ; scroll text\n#_1CAB1F: db $97, $B0, $27, $1D, $59, $E3, $3F ; [be][hi]nd\u23b5[you]?\n#_1CAB26: db $7F ; end of message\n\n; =========================================================\n; I once lived in the Lost Woods,\n; until the day I wandered into a\n; magic transporter\u2026\n; The power of the Dark World\n; quickly turned me into this\n; tree shape\u2026\n; I guess the two forests are\n; connected with each other\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0080", + "code": "Message_0080:\n#_1CAB27: db $08, $59, $C7, $1C, $1E, $59, $25, $22 ; I\u23b5[on]ce\u23b5li\n#_1CAB2F: db $2F, $A4, $B4, $59, $D8, $59, $0B, $28 ; v[ed ][in]\u23b5[the]\u23b5Lo\n#_1CAB37: db $D3, $59, $16, $28, $28, $1D, $2C, $42 ; [st]\u23b5Woods,\n#_1CAB3F: db $75 ; line 2\n#_1CAB40: db $2E, $27, $2D, $22, $25, $59, $D8, $59 ; until\u23b5[the]\u23b5\n#_1CAB48: db $1D, $1A, $32, $59, $08, $59, $DF, $27 ; day\u23b5I\u23b5[wa]n\n#_1CAB50: db $1D, $A6, $A4, $B4, $DA, $59, $1A ; d[er][ed ][in][to]\u23b5a\n#_1CAB57: db $76 ; line 3\n#_1CAB58: db $BD, $20, $22, $1C, $59, $DB, $93, $2C ; [ma]gic\u23b5[tr][an]s\n#_1CAB60: db $29, $C8, $D6, $43 ; p[or][ter]\u2026\n#_1CAB64: db $7E ; wait for key\n#_1CAB65: db $73 ; scroll text\n#_1CAB66: db $E6, $59, $CB, $A1, $C6, $59, $D8, $59 ; [The]\u23b5[pow][er ][of]\u23b5[the]\u23b5\n#_1CAB6E: db $03, $1A, $2B, $24, $59, $16, $C8, $25 ; Dark\u23b5W[or]l\n#_1CAB76: db $1D ; d\n#_1CAB77: db $73 ; scroll text\n#_1CAB78: db $2A, $2E, $22, $9C, $B9, $2D, $2E, $2B ; qui[ck][ly ]tur\n#_1CAB80: db $27, $A4, $BE, $59, $B4, $DA, $59, $D9 ; n[ed ][me]\u23b5[in][to]\u23b5[thi]\n#_1CAB88: db $2C ; s\n#_1CAB89: db $73 ; scroll text\n#_1CAB8A: db $DB, $1E, $1E, $59, $D1, $1A, $29, $1E ; [tr]ee\u23b5[sh]ape\n#_1CAB92: db $43 ; \u2026\n#_1CAB93: db $7E ; wait for key\n#_1CAB94: db $73 ; scroll text\n#_1CAB95: db $08, $59, $20, $2E, $1E, $2C, $2C, $59 ; I\u23b5guess\u23b5\n#_1CAB9D: db $D8, $59, $2D, $30, $28, $59, $A8, $1E ; [the]\u23b5two\u23b5[for]e\n#_1CABA5: db $D3, $2C, $59, $1A, $CE ; [st]s\u23b5a[re]\n#_1CABAA: db $73 ; scroll text\n#_1CABAB: db $1C, $C7, $27, $1E, $1C, $2D, $A4, $DE ; c[on]nect[ed ][with]\n#_1CABB3: db $59, $1E, $1A, $1C, $21, $59, $28, $D8 ; \u23b5each\u23b5o[the]\n#_1CABBB: db $2B, $43 ; r\u2026\n#_1CABBD: db $7F ; end of message\n\n; =========================================================\n; I heard that using Bombs is the\n; best way to defeat the\n; one-eyed giants.\n; That's all I know!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0081", + "code": "Message_0081:\n#_1CABBE: db $08, $59, $21, $A2, $1D, $59, $D7, $2D ; I\u23b5h[ear]d\u23b5[tha]t\n#_1CABC6: db $59, $2E, $2C, $B3, $01, $28, $26, $1B ; \u23b5us[ing ]Bomb\n#_1CABCE: db $2C, $59, $B5, $59, $D8 ; s\u23b5[is]\u23b5[the]\n#_1CABD3: db $75 ; line 2\n#_1CABD4: db $97, $D3, $59, $DF, $32, $59, $DA, $59 ; [be][st]\u23b5[wa]y\u23b5[to]\u23b5\n#_1CABDC: db $1D, $1E, $1F, $1E, $91, $D8 ; defe[at ][the]\n#_1CABE2: db $76 ; line 3\n#_1CABE3: db $C7, $1E, $40, $1E, $32, $A4, $20, $22 ; [on]e-ey[ed ]gi\n#_1CABEB: db $93, $2D, $2C, $41 ; [an]ts.\n#_1CABEF: db $7E ; wait for key\n#_1CABF0: db $73 ; scroll text\n#_1CABF1: db $E5, $2D, $8B, $8E, $08, $59, $B8, $3E ; [Tha]t['s ][all ]I\u23b5[know]!\n#_1CABF9: db $7F ; end of message\n\n; =========================================================\n; Quit bothering me! And watch\n; where you're going when you\n; dash around!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0082", + "code": "Message_0082:\n#_1CABFA: db $10, $2E, $B6, $59, $98, $D8, $2B, $B3 ; Qu[it]\u23b5[bo][the]r[ing ]\n#_1CAC02: db $BE, $3E, $8A, $00, $27, $1D, $59, $DF ; [me]![ ]And\u23b5[wa]\n#_1CAC0A: db $2D, $1C, $21 ; tch\n#_1CAC0D: db $75 ; line 2\n#_1CAC0E: db $E1, $A6, $1E, $59, $E3, $51, $CD, $AC ; [wh][er]e\u23b5[you]'[re ][go]\n#_1CAC16: db $B3, $E1, $A0, $E3 ; [ing ][wh][en ][you]\n#_1CAC1A: db $76 ; line 3\n#_1CAC1B: db $1D, $1A, $D1, $59, $1A, $2B, $C4, $3E ; da[sh]\u23b5ar[ound]!\n#_1CAC23: db $7F ; end of message\n\n; =========================================================\n; You got the Pendant Of Power!\n; You have now collected all\n; three Pendants! Go forth now\n; to the Lost Woods for the\n; Master Sword!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0083", + "code": "Message_0083:\n#_1CAC24: db $E8, $59, $AC, $2D, $59, $D8, $59, $0F ; [You]\u23b5[go]t\u23b5[the]\u23b5P\n#_1CAC2C: db $A5, $1D, $93, $2D, $59, $0E, $1F, $59 ; [en]d[an]t\u23b5Of\u23b5\n#_1CAC34: db $0F, $28, $E0, $2B, $3E ; Po[we]r!\n#_1CAC39: db $75 ; line 2\n#_1CAC3A: db $E8, $59, $AD, $59, $27, $28, $30, $59 ; [You]\u23b5[have]\u23b5now\u23b5\n#_1CAC42: db $1C, $28, $25, $25, $1E, $1C, $2D, $A4 ; collect[ed ]\n#_1CAC4A: db $1A, $25, $25 ; all\n#_1CAC4D: db $76 ; line 3\n#_1CAC4E: db $2D, $21, $CE, $1E, $59, $0F, $A5, $1D ; th[re]e\u23b5P[en]d\n#_1CAC56: db $93, $2D, $2C, $3E, $8A, $06, $28, $59 ; [an]ts![ ]Go\u23b5\n#_1CAC5E: db $A8, $2D, $21, $59, $27, $28, $30 ; [for]th\u23b5now\n#_1CAC65: db $7E ; wait for key\n#_1CAC66: db $73 ; scroll text\n#_1CAC67: db $DA, $59, $D8, $59, $0B, $28, $D3, $59 ; [to]\u23b5[the]\u23b5Lo[st]\u23b5\n#_1CAC6F: db $16, $28, $28, $1D, $2C, $59, $A8, $59 ; Woods\u23b5[for]\u23b5\n#_1CAC77: db $D8 ; [the]\n#_1CAC78: db $73 ; scroll text\n#_1CAC79: db $0C, $92, $A1, $12, $30, $C8, $1D, $3E ; M[ast][er ]Sw[or]d!\n#_1CAC81: db $7F ; end of message\n\n; =========================================================\n; You got the Pendant Of Wisdom!\n; Again your power has increased!\n; Now, go for the last one!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0084", + "code": "Message_0084:\n#_1CAC82: db $E8, $59, $AC, $2D, $59, $D8, $59, $0F ; [You]\u23b5[go]t\u23b5[the]\u23b5P\n#_1CAC8A: db $A5, $1D, $93, $2D, $59, $0E, $1F, $59 ; [en]d[an]t\u23b5Of\u23b5\n#_1CAC92: db $16, $B5, $9F, $26, $3E ; W[is][do]m!\n#_1CAC97: db $75 ; line 2\n#_1CAC98: db $00, $20, $8F, $59, $E3, $2B, $59, $CB ; Ag[ain]\u23b5[you]r\u23b5[pow]\n#_1CACA0: db $A1, $AE, $59, $B4, $1C, $CE, $1A, $D0 ; [er ][has]\u23b5[in]c[re]a[se]\n#_1CACA8: db $1D, $3E ; d!\n#_1CACAA: db $76 ; line 3\n#_1CACAB: db $0D, $28, $30, $42, $59, $AC, $59, $A8 ; Now,\u23b5[go]\u23b5[for]\n#_1CACB3: db $59, $D8, $59, $BA, $D3, $59, $C7, $1E ; \u23b5[the]\u23b5[la][st]\u23b5[on]e\n#_1CACBB: db $3E ; !\n#_1CACBC: db $7F ; end of message\n\n; =========================================================\n; Well howdy, Light Worlder!\n; You look like a straight\n; shooter\u2026 Want to try your\n; skill in my shooting gallery?\n; I'll give you five shots for 20\n; Rupees. If you're as sharp\n; as I think you are, you stand\n; to rake in the Rupees.\n; How about it, stranger?\n; > Play\n; No way\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0085", + "code": "Message_0085:\n#_1CACBD: db $16, $1E, $25, $25, $59, $21, $28, $30 ; Well\u23b5how\n#_1CACC5: db $1D, $32, $42, $59, $0B, $B2, $16, $C8 ; dy,\u23b5L[ight ]W[or]\n#_1CACCD: db $25, $1D, $A6, $3E ; ld[er]!\n#_1CACD1: db $75 ; line 2\n#_1CACD2: db $E8, $59, $BB, $28, $24, $59, $25, $22 ; [You]\u23b5[lo]ok\u23b5li\n#_1CACDA: db $24, $1E, $59, $1A, $59, $D3, $2B, $1A ; ke\u23b5a\u23b5[st]ra\n#_1CACE2: db $22, $20, $21, $2D ; ight\n#_1CACE6: db $76 ; line 3\n#_1CACE7: db $D1, $28, $28, $D6, $43, $8A, $16, $93 ; [sh]oo[ter]\u2026[ ]W[an]\n#_1CACEF: db $2D, $59, $DA, $59, $DB, $32, $59, $E3 ; t\u23b5[to]\u23b5[tr]y\u23b5[you]\n#_1CACF7: db $2B ; r\n#_1CACF8: db $7E ; wait for key\n#_1CACF9: db $73 ; scroll text\n#_1CACFA: db $2C, $24, $22, $25, $25, $59, $B4, $59 ; skill\u23b5[in]\u23b5\n#_1CAD02: db $26, $32, $59, $D1, $28, $28, $2D, $B3 ; my\u23b5[sh]oot[ing ]\n#_1CAD0A: db $20, $1A, $25, $25, $A6, $32, $3F ; gall[er]y?\n#_1CAD11: db $73 ; scroll text\n#_1CAD12: db $08, $51, $25, $25, $59, $AA, $E3, $59 ; I'll\u23b5[give ][you]\u23b5\n#_1CAD1A: db $1F, $22, $2F, $1E, $59, $D1, $28, $2D ; five\u23b5[sh]ot\n#_1CAD22: db $2C, $59, $A8, $59, $36, $34 ; s\u23b5[for]\u23b520\n#_1CAD28: db $73 ; scroll text\n#_1CAD29: db $11, $DC, $1E, $1E, $2C, $41, $8A, $08 ; R[up]ees.[ ]I\n#_1CAD31: db $1F, $59, $E3, $51, $CD, $1A, $2C, $59 ; f\u23b5[you]'[re ]as\u23b5\n#_1CAD39: db $D1, $1A, $2B, $29 ; [sh]arp\n#_1CAD3D: db $7E ; wait for key\n#_1CAD3E: db $73 ; scroll text\n#_1CAD3F: db $1A, $2C, $59, $08, $59, $D5, $24, $59 ; as\u23b5I\u23b5[thin]k\u23b5\n#_1CAD47: db $E3, $59, $1A, $CE, $42, $59, $E3, $59 ; [you]\u23b5a[re],\u23b5[you]\u23b5\n#_1CAD4F: db $D3, $90 ; [st][and]\n#_1CAD51: db $73 ; scroll text\n#_1CAD52: db $DA, $59, $2B, $1A, $24, $1E, $59, $B4 ; [to]\u23b5rake\u23b5[in]\n#_1CAD5A: db $59, $D8, $59, $11, $DC, $1E, $1E, $2C ; \u23b5[the]\u23b5R[up]ees\n#_1CAD62: db $41 ; .\n#_1CAD63: db $7E ; wait for key\n#_1CAD64: db $73 ; scroll text\n#_1CAD65: db $07, $28, $30, $59, $1A, $98, $2E, $2D ; How\u23b5a[bo]ut\n#_1CAD6D: db $59, $B6, $42, $59, $D3, $2B, $93, $20 ; \u23b5[it],\u23b5[st]r[an]g\n#_1CAD75: db $A6, $3F ; [er]?\n#_1CAD77: db $73 ; scroll text\n#_1CAD78: db $88, $44, $59, $0F, $BA, $32 ; [ ]>\u23b5P[la]y\n#_1CAD7E: db $73 ; scroll text\n#_1CAD7F: db $88, $89, $0D, $28, $59, $DF, $32 ; [ ][ ]No\u23b5[wa]y\n#_1CAD86: db $68 ; choose 2 indented\n#_1CAD87: db $7F ; end of message\n\n; =========================================================\n; All right! Aim carefully!\n; Ready? GO!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0086", + "code": "Message_0086:\n#_1CAD88: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_1CAD90: db $2D, $3E, $8A, $00, $22, $26, $59, $1C ; t![ ]Aim\u23b5c\n#_1CAD98: db $1A, $CE, $1F, $2E, $25, $25, $32, $3E ; a[re]fully!\n#_1CADA0: db $75 ; line 2\n#_1CADA1: db $11, $1E, $1A, $1D, $32, $3F, $8A, $06 ; Ready?[ ]G\n#_1CADA9: db $0E, $3E ; O!\n#_1CADAB: db $7F ; end of message\n\n; =========================================================\n; Well little partner, you can\n; turn yourself right around and\n; leave the same way you\n; came in.\n; See you later! Have a nice day!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0087", + "code": "Message_0087:\n#_1CADAC: db $16, $1E, $25, $25, $59, $25, $B6, $2D ; Well\u23b5l[it]t\n#_1CADB4: db $25, $1E, $59, $29, $1A, $2B, $2D, $27 ; le\u23b5partn\n#_1CADBC: db $A6, $42, $59, $E3, $59, $1C, $93 ; [er],\u23b5[you]\u23b5c[an]\n#_1CADC3: db $75 ; line 2\n#_1CADC4: db $2D, $2E, $2B, $27, $59, $E3, $2B, $D0 ; turn\u23b5[you]r[se]\n#_1CADCC: db $25, $1F, $59, $2B, $B2, $1A, $2B, $C4 ; lf\u23b5r[ight ]ar[ound]\n#_1CADD4: db $59, $90 ; \u23b5[and]\n#_1CADD6: db $76 ; line 3\n#_1CADD7: db $25, $1E, $1A, $2F, $1E, $59, $D8, $59 ; leave\u23b5[the]\u23b5\n#_1CADDF: db $2C, $1A, $BE, $59, $DF, $32, $59, $E3 ; sa[me]\u23b5[wa]y\u23b5[you]\n#_1CADE7: db $59 ; \u23b5\n#_1CADE8: db $7E ; wait for key\n#_1CADE9: db $73 ; scroll text\n#_1CADEA: db $1C, $1A, $BE, $59, $B4, $41 ; ca[me]\u23b5[in].\n#_1CADF0: db $73 ; scroll text\n#_1CADF1: db $12, $1E, $1E, $59, $E3, $59, $BA, $D6 ; See\u23b5[you]\u23b5[la][ter]\n#_1CADF9: db $3E, $8A, $07, $1A, $2F, $1E, $59, $1A ; ![ ]Have\u23b5a\n#_1CAE01: db $59, $27, $22, $1C, $1E, $59, $1D, $1A ; \u23b5nice\u23b5da\n#_1CAE09: db $32, $3E ; y!\n#_1CAE0B: db $7F ; end of message\n\n; =========================================================\n; Want to shoot again?\n; > Continue\n; Quit\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0088", + "code": "Message_0088:\n#_1CAE0C: db $16, $93, $2D, $59, $DA, $59, $D1, $28 ; W[an]t\u23b5[to]\u23b5[sh]o\n#_1CAE14: db $28, $2D, $59, $1A, $20, $8F, $3F ; ot\u23b5ag[ain]?\n#_1CAE1B: db $75 ; line 2\n#_1CAE1C: db $88, $44, $59, $02, $C7, $2D, $B4, $2E ; [ ]>\u23b5C[on]t[in]u\n#_1CAE24: db $1E ; e\n#_1CAE25: db $76 ; line 3\n#_1CAE26: db $88, $89, $10, $2E, $B6 ; [ ][ ]Qu[it]\n#_1CAE2B: db $68 ; choose 2 indented\n#_1CAE2C: db $7F ; end of message\n\n; =========================================================\n; --POND OF HAPPINESS--\n; Throw some Rupees in and your\n; wishes will surely come true.\n; Do you want to throw Rupees?\n; > Throw a few\n; Don't feel like it\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0089", + "code": "Message_0089:\n#_1CAE2D: db $40, $40, $0F, $0E, $0D, $03, $59, $0E ; --POND\u23b5O\n#_1CAE35: db $05, $59, $07, $00, $0F, $0F, $08, $0D ; F\u23b5HAPPIN\n#_1CAE3D: db $04, $12, $12, $40, $40 ; ESS--\n#_1CAE42: db $75 ; line 2\n#_1CAE43: db $13, $21, $2B, $28, $30, $59, $CF, $59 ; Throw\u23b5[some]\u23b5\n#_1CAE4B: db $11, $DC, $1E, $1E, $2C, $59, $B4, $59 ; R[up]ees\u23b5[in]\u23b5\n#_1CAE53: db $8C, $E3, $2B ; [and ][you]r\n#_1CAE56: db $76 ; line 3\n#_1CAE57: db $E2, $D1, $1E, $2C, $59, $E2, $25, $25 ; [wi][sh]es\u23b5[wi]ll\n#_1CAE5F: db $59, $2C, $2E, $CE, $B9, $9B, $1E, $59 ; \u23b5su[re][ly ][com]e\u23b5\n#_1CAE67: db $DB, $2E, $1E, $41 ; [tr]ue.\n#_1CAE6B: db $7E ; wait for key\n#_1CAE6C: db $73 ; scroll text\n#_1CAE6D: db $03, $28, $59, $E3, $59, $DF, $27, $2D ; Do\u23b5[you]\u23b5[wa]nt\n#_1CAE75: db $59, $DA, $59, $2D, $21, $2B, $28, $30 ; \u23b5[to]\u23b5throw\n#_1CAE7D: db $59, $11, $DC, $1E, $1E, $2C, $3F ; \u23b5R[up]ees?\n#_1CAE84: db $73 ; scroll text\n#_1CAE85: db $88, $44, $59, $13, $21, $2B, $28, $30 ; [ ]>\u23b5Throw\n#_1CAE8D: db $59, $1A, $59, $1F, $1E, $30 ; \u23b5a\u23b5few\n#_1CAE93: db $73 ; scroll text\n#_1CAE94: db $88, $89, $03, $C7, $51, $2D, $59, $1F ; [ ][ ]D[on]'t\u23b5f\n#_1CAE9C: db $1E, $1E, $25, $59, $25, $22, $24, $1E ; eel\u23b5like\n#_1CAEA4: db $59, $B6 ; \u23b5[it]\n#_1CAEA6: db $68 ; choose 2 indented\n#_1CAEA7: db $7F ; end of message\n\n; =========================================================\n; Select an item using the\n; Control Pad and throw it using\n; the \u24e8 Button.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008A", + "code": "Message_008A:\n#_1CAEA8: db $12, $1E, $25, $1E, $1C, $2D, $59, $93 ; Select\u23b5[an]\n#_1CAEB0: db $59, $B6, $1E, $26, $59, $2E, $2C, $B3 ; \u23b5[it]em\u23b5us[ing ]\n#_1CAEB8: db $D8 ; [the]\n#_1CAEB9: db $75 ; line 2\n#_1CAEBA: db $02, $C7, $DB, $28, $25, $59, $0F, $1A ; C[on][tr]ol\u23b5Pa\n#_1CAEC2: db $1D, $59, $8C, $2D, $21, $2B, $28, $30 ; d\u23b5[and ]throw\n#_1CAECA: db $59, $B6, $59, $2E, $2C, $B4, $20 ; \u23b5[it]\u23b5us[in]g\n#_1CAED1: db $76 ; line 3\n#_1CAED2: db $D8, $59, $5E, $59, $01, $2E, $2D, $DA ; [the]\u23b5\u24e8\u23b5But[to]\n#_1CAEDA: db $27, $41 ; n.\n#_1CAEDC: db $69 ; choose item\n#_1CAEDD: db $7F ; end of message\n\n; =========================================================\n; Hello there. Did you drop this?\n; > Yes\n; No, I didn't\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008B", + "code": "Message_008B:\n#_1CAEDE: db $07, $1E, $25, $BB, $59, $D8, $CE, $41 ; Hel[lo]\u23b5[the][re].\n#_1CAEE6: db $8A, $03, $22, $1D, $59, $E3, $59, $1D ; [ ]Did\u23b5[you]\u23b5d\n#_1CAEEE: db $2B, $28, $29, $59, $D9, $2C, $3F ; rop\u23b5[thi]s?\n#_1CAEF5: db $75 ; line 2\n#_1CAEF6: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1CAEFC: db $76 ; line 3\n#_1CAEFD: db $88, $89, $0D, $28, $42, $59, $08, $59 ; [ ][ ]No,\u23b5I\u23b5\n#_1CAF05: db $9E, $1D, $27, $51, $2D ; [di]dn't\n#_1CAF0A: db $68 ; choose 2 indented\n#_1CAF0B: db $7F ; end of message\n\n; =========================================================\n; I like an honest person.\n; I will give you something better\n; in return.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008C", + "code": "Message_008C:\n#_1CAF0C: db $08, $59, $25, $22, $24, $1E, $59, $93 ; I\u23b5like\u23b5[an]\n#_1CAF14: db $59, $21, $C7, $1E, $D3, $59, $C9, $D2 ; \u23b5h[on]e[st]\u23b5[per][so]\n#_1CAF1C: db $27, $41 ; n.\n#_1CAF1E: db $75 ; line 2\n#_1CAF1F: db $08, $59, $E2, $25, $25, $59, $AA, $E3 ; I\u23b5[wi]ll\u23b5[give ][you]\n#_1CAF27: db $59, $CF, $D5, $20, $59, $97, $2D, $D6 ; \u23b5[some][thin]g\u23b5[be]t[ter]\n#_1CAF2F: db $76 ; line 3\n#_1CAF30: db $B4, $59, $CE, $2D, $2E, $2B, $27, $41 ; [in]\u23b5[re]turn.\n#_1CAF38: db $7F ; end of message\n\n; =========================================================\n; Are you sure this is not yours?\n; > Really, it isn't\n; To tell the truth, it is\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008D", + "code": "Message_008D:\n#_1CAF39: db $00, $CD, $E3, $59, $2C, $2E, $CD, $D9 ; A[re ][you]\u23b5su[re ][thi]\n#_1CAF41: db $2C, $59, $B5, $59, $C2, $59, $E3, $2B ; s\u23b5[is]\u23b5[not]\u23b5[you]r\n#_1CAF49: db $2C, $3F ; s?\n#_1CAF4B: db $75 ; line 2\n#_1CAF4C: db $88, $44, $59, $11, $1E, $1A, $25, $25 ; [ ]>\u23b5Reall\n#_1CAF54: db $32, $42, $59, $B6, $59, $B5, $27, $51 ; y,\u23b5[it]\u23b5[is]n'\n#_1CAF5C: db $2D ; t\n#_1CAF5D: db $76 ; line 3\n#_1CAF5E: db $88, $89, $13, $28, $59, $2D, $1E, $25 ; [ ][ ]To\u23b5tel\n#_1CAF66: db $25, $59, $D8, $59, $DB, $2E, $2D, $21 ; l\u23b5[the]\u23b5[tr]uth\n#_1CAF6E: db $42, $59, $B6, $59, $B5 ; ,\u23b5[it]\u23b5[is]\n#_1CAF73: db $68 ; choose 2 indented\n#_1CAF74: db $7F ; end of message\n\n; =========================================================\n; Now, now, don't tell me a lie.\n; Please take it back.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008E", + "code": "Message_008E:\n#_1CAF75: db $0D, $28, $30, $42, $8A, $27, $28, $30 ; Now,[ ]now\n#_1CAF7D: db $42, $59, $9F, $C0, $2D, $1E, $25, $25 ; ,\u23b5[do][n't ]tell\n#_1CAF85: db $59, $BE, $59, $1A, $59, $25, $22, $1E ; \u23b5[me]\u23b5a\u23b5lie\n#_1CAF8D: db $41 ; .\n#_1CAF8E: db $75 ; line 2\n#_1CAF8F: db $0F, $25, $1E, $1A, $D0, $59, $2D, $1A ; Plea[se]\u23b5ta\n#_1CAF97: db $24, $1E, $59, $B6, $59, $96, $9C, $41 ; ke\u23b5[it]\u23b5[ba][ck].\n#_1CAF9F: db $7F ; end of message\n\n; =========================================================\n; You got the Magical Boomerang!\n; You can throw this faster and\n; farther than your old one!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_008F", + "code": "Message_008F:\n#_1CAFA0: db $E8, $59, $AC, $2D, $59, $D8, $59, $0C ; [You]\u23b5[go]t\u23b5[the]\u23b5M\n#_1CAFA8: db $1A, $20, $22, $1C, $1A, $25, $59, $01 ; agical\u23b5B\n#_1CAFB0: db $28, $28, $BE, $2B, $93, $20, $3E ; oo[me]r[an]g!\n#_1CAFB7: db $75 ; line 2\n#_1CAFB8: db $E8, $59, $99, $2D, $21, $2B, $28, $30 ; [You]\u23b5[can ]throw\n#_1CAFC0: db $59, $D9, $2C, $59, $1F, $92, $A1, $90 ; \u23b5[thi]s\u23b5f[ast][er ][and]\n#_1CAFC8: db $76 ; line 3\n#_1CAFC9: db $1F, $1A, $2B, $D8, $2B, $59, $D7, $27 ; far[the]r\u23b5[tha]n\n#_1CAFD1: db $59, $E3, $2B, $59, $28, $25, $1D, $59 ; \u23b5[you]r\u23b5old\u23b5\n#_1CAFD9: db $C7, $1E, $3E ; [on]e!\n#_1CAFDC: db $7F ; end of message\n\n; =========================================================\n; Your shield is improved!\n; Now you can defend yourself\n; against fireballs!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0090", + "code": "Message_0090:\n#_1CAFDD: db $E8, $2B, $59, $D1, $22, $1E, $25, $1D ; [You]r\u23b5[sh]ield\n#_1CAFE5: db $59, $B5, $59, $22, $26, $CC, $2F, $1E ; \u23b5[is]\u23b5im[pro]ve\n#_1CAFED: db $1D, $3E ; d!\n#_1CAFEF: db $75 ; line 2\n#_1CAFF0: db $0D, $28, $30, $59, $E3, $59, $99, $1D ; Now\u23b5[you]\u23b5[can ]d\n#_1CAFF8: db $1E, $1F, $A5, $1D, $59, $E3, $2B, $D0 ; ef[en]d\u23b5[you]r[se]\n#_1CB000: db $25, $1F ; lf\n#_1CB002: db $76 ; line 3\n#_1CB003: db $1A, $20, $8F, $D3, $59, $1F, $22, $CE ; ag[ain][st]\u23b5fi[re]\n#_1CB00B: db $96, $25, $25, $2C, $3E ; [ba]lls!\n#_1CB010: db $7F ; end of message\n\n; =========================================================\n; These are the Silver Arrows\n; you need to defeat Ganon!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0091", + "code": "Message_0091:\n#_1CB011: db $E6, $D0, $59, $8D, $D8, $59, $12, $22 ; [The][se]\u23b5[are ][the]\u23b5Si\n#_1CB019: db $25, $DD, $59, $00, $2B, $2B, $28, $30 ; l[ver]\u23b5Arrow\n#_1CB021: db $2C ; s\n#_1CB022: db $75 ; line 2\n#_1CB023: db $E3, $59, $27, $1E, $A4, $DA, $59, $1D ; [you]\u23b5ne[ed ][to]\u23b5d\n#_1CB02B: db $1E, $1F, $1E, $91, $06, $93, $C7, $3E ; efe[at ]G[an][on]!\n#_1CB033: db $7F ; end of message\n\n; =========================================================\n; She filled your bottle with the\n; Medicine Of Magic. To get such\n; a potion free is quite\n; a bargain!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0092", + "code": "Message_0092:\n#_1CB034: db $12, $21, $1E, $59, $1F, $22, $25, $25 ; She\u23b5fill\n#_1CB03C: db $A4, $E3, $2B, $59, $98, $2D, $2D, $25 ; [ed ][you]r\u23b5[bo]ttl\n#_1CB044: db $1E, $59, $DE, $59, $D8 ; e\u23b5[with]\u23b5[the]\n#_1CB049: db $75 ; line 2\n#_1CB04A: db $0C, $1E, $9E, $1C, $B4, $1E, $59, $0E ; Me[di]c[in]e\u23b5O\n#_1CB052: db $1F, $59, $0C, $1A, $20, $22, $1C, $41 ; f\u23b5Magic.\n#_1CB05A: db $8A, $13, $28, $59, $AB, $59, $2C, $2E ; [ ]To\u23b5[get]\u23b5su\n#_1CB062: db $1C, $21 ; ch\n#_1CB064: db $76 ; line 3\n#_1CB065: db $1A, $59, $29, $28, $2D, $22, $C7, $59 ; a\u23b5poti[on]\u23b5\n#_1CB06D: db $1F, $CE, $1E, $59, $B5, $59, $2A, $2E ; f[re]e\u23b5[is]\u23b5qu\n#_1CB075: db $B6, $1E ; [it]e\n#_1CB077: db $7E ; wait for key\n#_1CB078: db $73 ; scroll text\n#_1CB079: db $1A, $59, $96, $2B, $20, $8F, $3E ; a\u23b5[ba]rg[ain]!\n#_1CB080: db $7F ; end of message\n\n; =========================================================\n; Your sword is stronger!\n; You can feel its power\n; throbbing in your hand!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0093", + "code": "Message_0093:\n#_1CB081: db $E8, $2B, $59, $2C, $30, $C8, $1D, $59 ; [You]r\u23b5sw[or]d\u23b5\n#_1CB089: db $B5, $59, $D3, $2B, $C7, $20, $A6, $3E ; [is]\u23b5[st]r[on]g[er]!\n#_1CB091: db $75 ; line 2\n#_1CB092: db $E8, $59, $99, $1F, $1E, $1E, $25, $59 ; [You]\u23b5[can ]feel\u23b5\n#_1CB09A: db $B6, $2C, $59, $CB, $A6 ; [it]s\u23b5[pow][er]\n#_1CB09F: db $76 ; line 3\n#_1CB0A0: db $2D, $21, $2B, $28, $1B, $1B, $B3, $B4 ; throbb[ing ][in]\n#_1CB0A8: db $59, $E3, $2B, $59, $B1, $27, $1D, $3E ; \u23b5[you]r\u23b5[ha]nd!\n#_1CB0B0: db $7F ; end of message\n\n; =========================================================\n; Happiness increased [#3][#2] Rupees.\n; In total, your Happiness is [#1][#0].\n; You became happier by one\n; step.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0094", + "code": "Message_0094:\n#_1CB0B1: db $07, $1A, $29, $29, $B4, $1E, $2C, $2C ; Happ[in]ess\n#_1CB0B9: db $59, $B4, $1C, $CE, $1A, $D0, $1D, $59 ; \u23b5[in]c[re]a[se]d\u23b5\n#_1CB0C1: db $6C, $03, $6C, $02, $59, $11, $DC, $1E ; [#3][#2]\u23b5R[up]e\n#_1CB0C9: db $1E, $2C, $41 ; es.\n#_1CB0CC: db $75 ; line 2\n#_1CB0CD: db $08, $27, $59, $DA, $2D, $1A, $25, $42 ; In\u23b5[to]tal,\n#_1CB0D5: db $59, $E3, $2B, $59, $07, $1A, $29, $29 ; \u23b5[you]r\u23b5Happ\n#_1CB0DD: db $B4, $1E, $2C, $2C, $59, $B5, $59 ; [in]ess\u23b5[is]\u23b5\n#_1CB0E4: db $6C, $01, $6C, $00, $41 ; [#1][#0].\n#_1CB0E9: db $76 ; line 3\n#_1CB0EA: db $E8, $59, $97, $1C, $1A, $BE, $59, $B1 ; [You]\u23b5[be]ca[me]\u23b5[ha]\n#_1CB0F2: db $29, $29, $22, $A1, $1B, $32, $59, $C7 ; ppi[er ]by\u23b5[on]\n#_1CB0FA: db $1E ; e\n#_1CB0FB: db $7E ; wait for key\n#_1CB0FC: db $73 ; scroll text\n#_1CB0FD: db $D3, $1E, $29, $41 ; [st]ep.\n#_1CB101: db $7F ; end of message\n\n; =========================================================\n; I will make your wish come true.\n; >I want to carry more Bombs\n; I want to carry more Arrows\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0095", + "code": "Message_0095:\n#_1CB102: db $08, $59, $E2, $25, $25, $59, $BD, $24 ; I\u23b5[wi]ll\u23b5[ma]k\n#_1CB10A: db $1E, $59, $E3, $2B, $59, $E2, $D1, $59 ; e\u23b5[you]r\u23b5[wi][sh]\u23b5\n#_1CB112: db $9B, $1E, $59, $DB, $2E, $1E, $41 ; [com]e\u23b5[tr]ue.\n#_1CB119: db $75 ; line 2\n#_1CB11A: db $8A, $44, $08, $59, $DF, $27, $2D, $59 ; [ ]>I\u23b5[wa]nt\u23b5\n#_1CB122: db $DA, $59, $1C, $1A, $2B, $2B, $32, $59 ; [to]\u23b5carry\u23b5\n#_1CB12A: db $26, $C8, $1E, $59, $01, $28, $26, $1B ; m[or]e\u23b5Bomb\n#_1CB132: db $2C ; s\n#_1CB133: db $76 ; line 3\n#_1CB134: db $88, $08, $59, $DF, $27, $2D, $59, $DA ; [ ]I\u23b5[wa]nt\u23b5[to]\n#_1CB13C: db $59, $1C, $1A, $2B, $2B, $32, $59, $26 ; \u23b5carry\u23b5m\n#_1CB144: db $C8, $1E, $59, $00, $2B, $2B, $28, $30 ; [or]e\u23b5Arrow\n#_1CB14C: db $2C ; s\n#_1CB14D: db $6F ; choose 2 low\n#_1CB14E: db $7F ; end of message\n\n; =========================================================\n; Then I will increase your\n; carrying ability so you can\n; carry [#1][#0] Bombs at maximum.\n; This is just a small happiness\n; I can give to you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0096", + "code": "Message_0096:\n#_1CB14F: db $E6, $27, $59, $08, $59, $E2, $25, $25 ; [The]n\u23b5I\u23b5[wi]ll\n#_1CB157: db $59, $B4, $1C, $CE, $1A, $D0, $59, $E3 ; \u23b5[in]c[re]a[se]\u23b5[you]\n#_1CB15F: db $2B ; r\n#_1CB160: db $75 ; line 2\n#_1CB161: db $1C, $1A, $2B, $2B, $32, $B3, $1A, $1B ; carry[ing ]ab\n#_1CB169: db $22, $25, $B6, $32, $59, $D2, $59, $E3 ; il[it]y\u23b5[so]\u23b5[you]\n#_1CB171: db $59, $1C, $93 ; \u23b5c[an]\n#_1CB174: db $76 ; line 3\n#_1CB175: db $1C, $1A, $2B, $2B, $32, $59, $6C, $01 ; carry\u23b5[#1]\n#_1CB17D: db $6C, $00, $59, $01, $28, $26, $1B, $2C ; [#0]\u23b5Bombs\n#_1CB185: db $59, $91, $BD, $31, $22, $BF, $26, $41 ; \u23b5[at ][ma]xi[mu]m.\n#_1CB18D: db $7E ; wait for key\n#_1CB18E: db $73 ; scroll text\n#_1CB18F: db $E7, $2C, $59, $B5, $59, $B7, $59, $1A ; [Thi]s\u23b5[is]\u23b5[just]\u23b5a\n#_1CB197: db $59, $2C, $BD, $25, $25, $59, $B1, $29 ; \u23b5s[ma]ll\u23b5[ha]p\n#_1CB19F: db $29, $B4, $1E, $2C, $2C ; p[in]ess\n#_1CB1A4: db $73 ; scroll text\n#_1CB1A5: db $08, $59, $99, $AA, $DA, $59, $E3, $41 ; I\u23b5[can ][give ][to]\u23b5[you].\n#_1CB1AD: db $7F ; end of message\n\n; =========================================================\n; Then I will increase your\n; carrying ability so you can\n; carry [#1][#0] Arrows at maximum.\n; This is just a small happiness\n; I can give to you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0097", + "code": "Message_0097:\n#_1CB1AE: db $E6, $27, $59, $08, $59, $E2, $25, $25 ; [The]n\u23b5I\u23b5[wi]ll\n#_1CB1B6: db $59, $B4, $1C, $CE, $1A, $D0, $59, $E3 ; \u23b5[in]c[re]a[se]\u23b5[you]\n#_1CB1BE: db $2B ; r\n#_1CB1BF: db $75 ; line 2\n#_1CB1C0: db $1C, $1A, $2B, $2B, $32, $B3, $1A, $1B ; carry[ing ]ab\n#_1CB1C8: db $22, $25, $B6, $32, $59, $D2, $59, $E3 ; il[it]y\u23b5[so]\u23b5[you]\n#_1CB1D0: db $59, $1C, $93 ; \u23b5c[an]\n#_1CB1D3: db $76 ; line 3\n#_1CB1D4: db $1C, $1A, $2B, $2B, $32, $59, $6C, $01 ; carry\u23b5[#1]\n#_1CB1DC: db $6C, $00, $59, $00, $2B, $2B, $28, $30 ; [#0]\u23b5Arrow\n#_1CB1E4: db $2C, $59, $91, $BD, $31, $22, $BF, $26 ; s\u23b5[at ][ma]xi[mu]m\n#_1CB1EC: db $41 ; .\n#_1CB1ED: db $7E ; wait for key\n#_1CB1EE: db $73 ; scroll text\n#_1CB1EF: db $E7, $2C, $59, $B5, $59, $B7, $59, $1A ; [Thi]s\u23b5[is]\u23b5[just]\u23b5a\n#_1CB1F7: db $59, $2C, $BD, $25, $25, $59, $B1, $29 ; \u23b5s[ma]ll\u23b5[ha]p\n#_1CB1FF: db $29, $B4, $1E, $2C, $2C ; p[in]ess\n#_1CB204: db $73 ; scroll text\n#_1CB205: db $08, $59, $99, $AA, $DA, $59, $E3, $41 ; I\u23b5[can ][give ][to]\u23b5[you].\n#_1CB20D: db $7F ; end of message\n\n; =========================================================\n; I cannot grant any more wishes\n; for you, but a friend of mine\n; might be able to\u2026\n; She lives in the Waterfall Of\n; Wishing near Zora's lake.\n; I will return your Rupees to\n; you. May you be happy\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0098", + "code": "Message_0098:\n#_1CB20E: db $08, $59, $1C, $93, $C2, $59, $20, $2B ; I\u23b5c[an][not]\u23b5gr\n#_1CB216: db $93, $2D, $59, $93, $32, $59, $26, $C8 ; [an]t\u23b5[an]y\u23b5m[or]\n#_1CB21E: db $1E, $59, $E2, $D1, $1E, $2C ; e\u23b5[wi][sh]es\n#_1CB224: db $75 ; line 2\n#_1CB225: db $A8, $59, $E3, $42, $59, $1B, $2E, $2D ; [for]\u23b5[you],\u23b5but\n#_1CB22D: db $59, $1A, $59, $1F, $2B, $22, $A5, $1D ; \u23b5a\u23b5fri[en]d\n#_1CB235: db $59, $C6, $59, $26, $B4, $1E ; \u23b5[of]\u23b5m[in]e\n#_1CB23B: db $76 ; line 3\n#_1CB23C: db $26, $B2, $97, $59, $1A, $95, $59, $DA ; m[ight ][be]\u23b5a[ble]\u23b5[to]\n#_1CB244: db $43 ; \u2026\n#_1CB245: db $7E ; wait for key\n#_1CB246: db $73 ; scroll text\n#_1CB247: db $12, $21, $1E, $59, $25, $22, $2F, $1E ; She\u23b5live\n#_1CB24F: db $2C, $59, $B4, $59, $D8, $59, $16, $94 ; s\u23b5[in]\u23b5[the]\u23b5W[at]\n#_1CB257: db $A6, $1F, $8E, $0E, $1F ; [er]f[all ]Of\n#_1CB25C: db $73 ; scroll text\n#_1CB25D: db $16, $B5, $B0, $27, $20, $59, $27, $A2 ; W[is][hi]ng\u23b5n[ear]\n#_1CB265: db $59, $19, $C8, $1A, $8B, $BA, $24, $1E ; \u23b5Z[or]a['s ][la]ke\n#_1CB26D: db $41 ; .\n#_1CB26E: db $73 ; scroll text\n#_1CB26F: db $08, $59, $E2, $25, $25, $59, $CE, $2D ; I\u23b5[wi]ll\u23b5[re]t\n#_1CB277: db $2E, $2B, $27, $59, $E3, $2B, $59, $11 ; urn\u23b5[you]r\u23b5R\n#_1CB27F: db $DC, $1E, $1E, $2C, $59, $DA ; [up]ees\u23b5[to]\n#_1CB285: db $7E ; wait for key\n#_1CB286: db $73 ; scroll text\n#_1CB287: db $E3, $41, $8A, $0C, $1A, $32, $59, $E3 ; [you].[ ]May\u23b5[you]\n#_1CB28F: db $59, $97, $59, $B1, $29, $29, $32, $43 ; \u23b5[be]\u23b5[ha]ppy\u2026\n#_1CB297: db $7F ; end of message\n\n; =========================================================\n; Uhhh\u2026 Watch your step.\n; There are holes in the ground.\n; Could you turn right here?\n; Young man, are you also going\n; to the mountain to look for the\n; Golden Power?\n; Just ahead is a mountain full\n; of monsters. Many people have\n; vanished in this mountain while\n; looking for the Golden Power.\n;\n;\n; I don't want to steer you\n; wrong, so please don't get too\n; involved in such a mad quest.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0099", + "code": "Message_0099:\n#_1CB298: db $14, $21, $21, $21, $43, $8A, $16, $94 ; Uhhh\u2026[ ]W[at]\n#_1CB2A0: db $1C, $21, $59, $E3, $2B, $59, $D3, $1E ; ch\u23b5[you]r\u23b5[st]e\n#_1CB2A8: db $29, $41 ; p.\n#_1CB2AA: db $75 ; line 2\n#_1CB2AB: db $E6, $CD, $8D, $21, $28, $25, $1E, $2C ; [The][re ][are ]holes\n#_1CB2B3: db $59, $B4, $59, $D8, $59, $20, $2B, $C4 ; \u23b5[in]\u23b5[the]\u23b5gr[ound]\n#_1CB2BB: db $41 ; .\n#_1CB2BC: db $76 ; line 3\n#_1CB2BD: db $02, $28, $2E, $25, $1D, $59, $E3, $59 ; Could\u23b5[you]\u23b5\n#_1CB2C5: db $2D, $2E, $2B, $27, $59, $2B, $B2, $AF ; turn\u23b5r[ight ][her]\n#_1CB2CD: db $1E, $3F ; e?\n#_1CB2CF: db $7E ; wait for key\n#_1CB2D0: db $73 ; scroll text\n#_1CB2D1: db $E8, $27, $20, $59, $BC, $42, $59, $8D ; [You]ng\u23b5[man],\u23b5[are ]\n#_1CB2D9: db $E3, $59, $1A, $25, $D2, $59, $AC, $B4 ; [you]\u23b5al[so]\u23b5[go][in]\n#_1CB2E1: db $20 ; g\n#_1CB2E2: db $73 ; scroll text\n#_1CB2E3: db $DA, $59, $D8, $59, $26, $28, $2E, $27 ; [to]\u23b5[the]\u23b5moun\n#_1CB2EB: db $2D, $8F, $59, $DA, $59, $BB, $28, $24 ; t[ain]\u23b5[to]\u23b5[lo]ok\n#_1CB2F3: db $59, $A8, $59, $D8 ; \u23b5[for]\u23b5[the]\n#_1CB2F7: db $73 ; scroll text\n#_1CB2F8: db $06, $28, $25, $1D, $A0, $0F, $28, $E0 ; Gold[en ]Po[we]\n#_1CB300: db $2B, $3F ; r?\n#_1CB302: db $7E ; wait for key\n#_1CB303: db $73 ; scroll text\n#_1CB304: db $09, $2E, $D3, $59, $1A, $21, $1E, $1A ; Ju[st]\u23b5ahea\n#_1CB30C: db $1D, $59, $B5, $59, $1A, $59, $26, $28 ; d\u23b5[is]\u23b5a\u23b5mo\n#_1CB314: db $2E, $27, $2D, $8F, $59, $1F, $2E, $25 ; unt[ain]\u23b5ful\n#_1CB31C: db $25 ; l\n#_1CB31D: db $73 ; scroll text\n#_1CB31E: db $C6, $59, $26, $C7, $D3, $A6, $2C, $41 ; [of]\u23b5m[on][st][er]s.\n#_1CB326: db $8A, $0C, $93, $32, $59, $29, $1E, $28 ; [ ]M[an]y\u23b5peo\n#_1CB32E: db $CA, $59, $AD ; [ple]\u23b5[have]\n#_1CB331: db $73 ; scroll text\n#_1CB332: db $2F, $93, $B5, $21, $A4, $B4, $59, $D9 ; v[an][is]h[ed ][in]\u23b5[thi]\n#_1CB33A: db $2C, $59, $26, $28, $2E, $27, $2D, $8F ; s\u23b5mount[ain]\n#_1CB342: db $59, $E1, $22, $25, $1E ; \u23b5[wh]ile\n#_1CB347: db $7E ; wait for key\n#_1CB348: db $73 ; scroll text\n#_1CB349: db $BB, $28, $24, $B3, $A8, $59, $D8, $59 ; [lo]ok[ing ][for]\u23b5[the]\u23b5\n#_1CB351: db $06, $28, $25, $1D, $A0, $0F, $28, $E0 ; Gold[en ]Po[we]\n#_1CB359: db $2B, $41 ; r.\n#_1CB35B: db $73 ; scroll text\n#_1CB35C: db $73 ; scroll text\n#_1CB35D: db $7E ; wait for key\n#_1CB35E: db $73 ; scroll text\n#_1CB35F: db $08, $59, $9F, $C0, $DF, $27, $2D, $59 ; I\u23b5[do][n't ][wa]nt\u23b5\n#_1CB367: db $DA, $59, $D3, $1E, $A1, $E3 ; [to]\u23b5[st]e[er ][you]\n#_1CB36D: db $73 ; scroll text\n#_1CB36E: db $30, $2B, $C7, $20, $42, $59, $D2, $59 ; wr[on]g,\u23b5[so]\u23b5\n#_1CB376: db $CA, $1A, $D0, $59, $9F, $C0, $AB, $59 ; [ple]a[se]\u23b5[do][n't ][get]\u23b5\n#_1CB37E: db $DA, $28 ; [to]o\n#_1CB380: db $73 ; scroll text\n#_1CB381: db $B4, $2F, $28, $25, $2F, $A4, $B4, $59 ; [in]volv[ed ][in]\u23b5\n#_1CB389: db $2C, $2E, $1C, $21, $59, $1A, $59, $BD ; such\u23b5a\u23b5[ma]\n#_1CB391: db $1D, $59, $2A, $2E, $1E, $D3, $41 ; d\u23b5que[st].\n#_1CB398: db $7F ; end of message\n\n; =========================================================\n; Uhh\u2026 There must be a Heart in\n; the bottle.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009A", + "code": "Message_009A:\n#_1CB399: db $14, $21, $21, $43, $8A, $E6, $CD, $BF ; Uhh\u2026[ ][The][re ][mu]\n#_1CB3A1: db $D3, $59, $97, $59, $1A, $59, $07, $A2 ; [st]\u23b5[be]\u23b5a\u23b5H[ear]\n#_1CB3A9: db $2D, $59, $B4 ; t\u23b5[in]\n#_1CB3AC: db $75 ; line 2\n#_1CB3AD: db $D8, $59, $98, $2D, $2D, $25, $1E, $41 ; [the]\u23b5[bo]ttle.\n#_1CB3B5: db $7F ; end of message\n\n; =========================================================\n; Uhh\u2026 Turn right here\u2026 \u2026\n; You know, I have a\n; granddaughter who is your\n; age\u2026 The King took her to the\n; castle and she never returned.\n; Kidnapping those maidens must\n; be part of the wizard's plot!\n; I'm sure he is trying to\n; somehow use the power of the\n; descendants of the wise\n; men\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009B", + "code": "Message_009B:\n#_1CB3B6: db $14, $21, $21, $43, $8A, $13, $2E, $2B ; Uhh\u2026[ ]Tur\n#_1CB3BE: db $27, $59, $2B, $B2, $AF, $1E, $43, $89 ; n\u23b5r[ight ][her]e\u2026[ ]\n#_1CB3C6: db $43 ; \u2026\n#_1CB3C7: db $75 ; line 2\n#_1CB3C8: db $E8, $59, $B8, $42, $59, $08, $59, $AD ; [You]\u23b5[know],\u23b5I\u23b5[have]\n#_1CB3D0: db $59, $1A ; \u23b5a\n#_1CB3D2: db $76 ; line 3\n#_1CB3D3: db $20, $2B, $90, $1D, $1A, $2E, $20, $21 ; gr[and]daugh\n#_1CB3DB: db $D4, $E1, $28, $59, $B5, $59, $E3, $2B ; [ter ][wh]o\u23b5[is]\u23b5[you]r\n#_1CB3E3: db $7E ; wait for key\n#_1CB3E4: db $73 ; scroll text\n#_1CB3E5: db $1A, $20, $1E, $43, $8A, $E6, $59, $0A ; age\u2026[ ][The]\u23b5K\n#_1CB3ED: db $B3, $DA, $28, $24, $59, $AF, $59, $DA ; [ing ][to]ok\u23b5[her]\u23b5[to]\n#_1CB3F5: db $59, $D8 ; \u23b5[the]\n#_1CB3F7: db $73 ; scroll text\n#_1CB3F8: db $1C, $92, $25, $1E, $59, $8C, $D1, $1E ; c[ast]le\u23b5[and ][sh]e\n#_1CB400: db $59, $27, $A7, $A1, $CE, $2D, $2E, $2B ; \u23b5n[ev][er ][re]tur\n#_1CB408: db $27, $1E, $1D, $41 ; ned.\n#_1CB40C: db $73 ; scroll text\n#_1CB40D: db $0A, $22, $1D, $27, $1A, $29, $29, $B3 ; Kidnapp[ing ]\n#_1CB415: db $2D, $21, $28, $D0, $59, $BD, $22, $1D ; tho[se]\u23b5[ma]id\n#_1CB41D: db $A5, $2C, $59, $BF, $D3 ; [en]s\u23b5[mu][st]\n#_1CB422: db $7E ; wait for key\n#_1CB423: db $73 ; scroll text\n#_1CB424: db $97, $59, $29, $1A, $2B, $2D, $59, $C6 ; [be]\u23b5part\u23b5[of]\n#_1CB42C: db $59, $D8, $59, $E2, $33, $1A, $2B, $1D ; \u23b5[the]\u23b5[wi]zard\n#_1CB434: db $8B, $29, $BB, $2D, $3E ; ['s ]p[lo]t!\n#_1CB439: db $73 ; scroll text\n#_1CB43A: db $08, $51, $26, $59, $2C, $2E, $CD, $21 ; I'm\u23b5su[re ]h\n#_1CB442: db $1E, $59, $B5, $59, $DB, $32, $B3, $DA ; e\u23b5[is]\u23b5[tr]y[ing ][to]\n#_1CB44A: db $73 ; scroll text\n#_1CB44B: db $CF, $21, $28, $30, $59, $2E, $D0, $59 ; [some]how\u23b5u[se]\u23b5\n#_1CB453: db $D8, $59, $CB, $A1, $C6, $59, $D8 ; [the]\u23b5[pow][er ][of]\u23b5[the]\n#_1CB45A: db $7E ; wait for key\n#_1CB45B: db $73 ; scroll text\n#_1CB45C: db $9D, $1C, $A5, $1D, $93, $2D, $2C, $59 ; [des]c[en]d[an]ts\u23b5\n#_1CB464: db $C6, $59, $D8, $59, $E2, $D0 ; [of]\u23b5[the]\u23b5[wi][se]\n#_1CB46A: db $73 ; scroll text\n#_1CB46B: db $BE, $27, $43 ; [me]n\u2026\n#_1CB46E: db $7F ; end of message\n\n; =========================================================\n; I don't know who you are, but\n; if you are going to go up\n; the mountain, will you take me\n; with you? I lost my lamp,\n; so\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009C", + "code": "Message_009C:\n#_1CB46F: db $08, $59, $9F, $C0, $B8, $59, $E1, $28 ; I\u23b5[do][n't ][know]\u23b5[wh]o\n#_1CB477: db $59, $E3, $59, $1A, $CE, $42, $59, $1B ; \u23b5[you]\u23b5a[re],\u23b5b\n#_1CB47F: db $2E, $2D ; ut\n#_1CB481: db $75 ; line 2\n#_1CB482: db $22, $1F, $59, $E3, $59, $8D, $AC, $B3 ; if\u23b5[you]\u23b5[are ][go][ing ]\n#_1CB48A: db $DA, $59, $AC, $59, $DC ; [to]\u23b5[go]\u23b5[up]\n#_1CB48F: db $76 ; line 3\n#_1CB490: db $D8, $59, $26, $28, $2E, $27, $2D, $8F ; [the]\u23b5mount[ain]\n#_1CB498: db $42, $59, $E2, $25, $25, $59, $E3, $59 ; ,\u23b5[wi]ll\u23b5[you]\u23b5\n#_1CB4A0: db $2D, $1A, $24, $1E, $59, $BE ; take\u23b5[me]\n#_1CB4A6: db $7E ; wait for key\n#_1CB4A7: db $73 ; scroll text\n#_1CB4A8: db $DE, $59, $E3, $3F, $8A, $08, $59, $BB ; [with]\u23b5[you]?[ ]I\u23b5[lo]\n#_1CB4B0: db $D3, $59, $26, $32, $59, $BA, $26, $29 ; [st]\u23b5my\u23b5[la]mp\n#_1CB4B8: db $42 ; ,\n#_1CB4B9: db $73 ; scroll text\n#_1CB4BA: db $D2, $43 ; [so]\u2026\n#_1CB4BC: db $7F ; end of message\n\n; =========================================================\n; The missing maidens are still\n; alive somewhere. I believe that\n; a Hero will rescue them\u2026\n; I wait for that day\u2026\n; Uhh\u2026 These are dangerous\n; times\u2026 I talked too much.\n; Anyway\u2026 Thank you for your\n; kindness to an old man like me.\n; Uhh\u2026 I wanted to give you\n; this. If you wander into\n; a magical transporter, gaze\n; into this mirror.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009D", + "code": "Message_009D:\n#_1CB4BD: db $E6, $59, $26, $B5, $2C, $B3, $BD, $22 ; [The]\u23b5m[is]s[ing ][ma]i\n#_1CB4C5: db $1D, $A5, $2C, $59, $8D, $D3, $22, $25 ; d[en]s\u23b5[are ][st]il\n#_1CB4CD: db $25 ; l\n#_1CB4CE: db $75 ; line 2\n#_1CB4CF: db $1A, $25, $22, $2F, $1E, $59, $CF, $E1 ; alive\u23b5[some][wh]\n#_1CB4D7: db $A6, $1E, $41, $8A, $08, $59, $97, $25 ; [er]e.[ ]I\u23b5[be]l\n#_1CB4DF: db $22, $A7, $1E, $59, $D7, $2D ; i[ev]e\u23b5[tha]t\n#_1CB4E5: db $76 ; line 3\n#_1CB4E6: db $1A, $59, $E4, $28, $59, $E2, $25, $25 ; a\u23b5[Her]o\u23b5[wi]ll\n#_1CB4EE: db $59, $CE, $2C, $1C, $2E, $1E, $59, $D8 ; \u23b5[re]scue\u23b5[the]\n#_1CB4F6: db $26, $43 ; m\u2026\n#_1CB4F8: db $7E ; wait for key\n#_1CB4F9: db $73 ; scroll text\n#_1CB4FA: db $08, $59, $DF, $B6, $59, $A8, $59, $D7 ; I\u23b5[wa][it]\u23b5[for]\u23b5[tha]\n#_1CB502: db $2D, $59, $1D, $1A, $32, $43 ; t\u23b5day\u2026\n#_1CB508: db $73 ; scroll text\n#_1CB509: db $14, $21, $21, $43, $8A, $E6, $D0, $59 ; Uhh\u2026[ ][The][se]\u23b5\n#_1CB511: db $8D, $1D, $93, $20, $A6, $28, $2E, $2C ; [are ]d[an]g[er]ous\n#_1CB519: db $73 ; scroll text\n#_1CB51A: db $2D, $22, $BE, $2C, $43, $8A, $08, $59 ; ti[me]s\u2026[ ]I\u23b5\n#_1CB522: db $2D, $1A, $25, $24, $A4, $DA, $28, $59 ; talk[ed ][to]o\u23b5\n#_1CB52A: db $BF, $1C, $21, $41 ; [mu]ch.\n#_1CB52E: db $7E ; wait for key\n#_1CB52F: db $73 ; scroll text\n#_1CB530: db $00, $27, $32, $DF, $32, $43, $8A, $E5 ; Any[wa]y\u2026[ ][Tha]\n#_1CB538: db $27, $24, $59, $E3, $59, $A8, $59, $E3 ; nk\u23b5[you]\u23b5[for]\u23b5[you]\n#_1CB540: db $2B ; r\n#_1CB541: db $73 ; scroll text\n#_1CB542: db $24, $B4, $1D, $27, $1E, $2C, $2C, $59 ; k[in]dness\u23b5\n#_1CB54A: db $DA, $59, $93, $59, $28, $25, $1D, $59 ; [to]\u23b5[an]\u23b5old\u23b5\n#_1CB552: db $BC, $59, $25, $22, $24, $1E, $59, $BE ; [man]\u23b5like\u23b5[me]\n#_1CB55A: db $41 ; .\n#_1CB55B: db $73 ; scroll text\n#_1CB55C: db $14, $21, $21, $43, $8A, $08, $59, $DF ; Uhh\u2026[ ]I\u23b5[wa]\n#_1CB564: db $27, $2D, $A4, $DA, $59, $AA, $E3 ; nt[ed ][to]\u23b5[give ][you]\n#_1CB56B: db $7E ; wait for key\n#_1CB56C: db $73 ; scroll text\n#_1CB56D: db $D9, $2C, $41, $8A, $08, $1F, $59, $E3 ; [thi]s.[ ]If\u23b5[you]\n#_1CB575: db $59, $DF, $27, $1D, $A1, $B4, $DA ; \u23b5[wa]nd[er ][in][to]\n#_1CB57C: db $73 ; scroll text\n#_1CB57D: db $1A, $59, $BD, $20, $22, $1C, $1A, $25 ; a\u23b5[ma]gical\n#_1CB585: db $59, $DB, $93, $2C, $29, $C8, $D6, $42 ; \u23b5[tr][an]sp[or][ter],\n#_1CB58D: db $59, $20, $1A, $33, $1E ; \u23b5gaze\n#_1CB592: db $73 ; scroll text\n#_1CB593: db $B4, $DA, $59, $D9, $2C, $59, $26, $22 ; [in][to]\u23b5[thi]s\u23b5mi\n#_1CB59B: db $2B, $2B, $C8, $41 ; rr[or].\n#_1CB59F: db $7F ; end of message\n\n; =========================================================\n; The wizard has deceived the\n; King, and now he is trying to\n; open the way to the\n; Dark World. To complete\n; your quest, you will need\n; the Moon Pearl, which is in the\n; tower on top of the mountain.\n; All I can do for you now is to\n; comfort your weariness\u2026\n; Come back here any time.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009E", + "code": "Message_009E:\n#_1CB5A0: db $E6, $59, $E2, $33, $1A, $2B, $1D, $59 ; [The]\u23b5[wi]zard\u23b5\n#_1CB5A8: db $AE, $59, $1D, $1E, $1C, $1E, $22, $2F ; [has]\u23b5deceiv\n#_1CB5B0: db $A4, $D8 ; [ed ][the]\n#_1CB5B2: db $75 ; line 2\n#_1CB5B3: db $0A, $B4, $20, $42, $59, $8C, $27, $28 ; K[in]g,\u23b5[and ]no\n#_1CB5BB: db $30, $59, $21, $1E, $59, $B5, $59, $DB ; w\u23b5he\u23b5[is]\u23b5[tr]\n#_1CB5C3: db $32, $B3, $DA ; y[ing ][to]\n#_1CB5C6: db $76 ; line 3\n#_1CB5C7: db $C3, $59, $D8, $59, $DF, $32, $59, $DA ; [open]\u23b5[the]\u23b5[wa]y\u23b5[to]\n#_1CB5CF: db $59, $D8 ; \u23b5[the]\n#_1CB5D1: db $7E ; wait for key\n#_1CB5D2: db $73 ; scroll text\n#_1CB5D3: db $03, $1A, $2B, $24, $59, $16, $C8, $25 ; Dark\u23b5W[or]l\n#_1CB5DB: db $1D, $41, $8A, $13, $28, $59, $9B, $CA ; d.[ ]To\u23b5[com][ple]\n#_1CB5E3: db $2D, $1E ; te\n#_1CB5E5: db $73 ; scroll text\n#_1CB5E6: db $E3, $2B, $59, $2A, $2E, $1E, $D3, $42 ; [you]r\u23b5que[st],\n#_1CB5EE: db $59, $E3, $59, $E2, $25, $25, $59, $27 ; \u23b5[you]\u23b5[wi]ll\u23b5n\n#_1CB5F6: db $1E, $1E, $1D ; eed\n#_1CB5F9: db $73 ; scroll text\n#_1CB5FA: db $D8, $59, $0C, $28, $C7, $59, $0F, $A2 ; [the]\u23b5Mo[on]\u23b5P[ear]\n#_1CB602: db $25, $42, $59, $E1, $22, $1C, $21, $59 ; l,\u23b5[wh]ich\u23b5\n#_1CB60A: db $B5, $59, $B4, $59, $D8 ; [is]\u23b5[in]\u23b5[the]\n#_1CB60F: db $7E ; wait for key\n#_1CB610: db $73 ; scroll text\n#_1CB611: db $DA, $E0, $2B, $59, $C7, $59, $DA, $29 ; [to][we]r\u23b5[on]\u23b5[to]p\n#_1CB619: db $59, $C6, $59, $D8, $59, $26, $28, $2E ; \u23b5[of]\u23b5[the]\u23b5mou\n#_1CB621: db $27, $2D, $8F, $41 ; nt[ain].\n#_1CB625: db $73 ; scroll text\n#_1CB626: db $00, $25, $25, $59, $08, $59, $99, $9F ; All\u23b5I\u23b5[can ][do]\n#_1CB62E: db $59, $A8, $59, $E3, $59, $27, $28, $30 ; \u23b5[for]\u23b5[you]\u23b5now\n#_1CB636: db $59, $B5, $59, $DA ; \u23b5[is]\u23b5[to]\n#_1CB63A: db $73 ; scroll text\n#_1CB63B: db $9B, $A8, $2D, $59, $E3, $2B, $59, $E0 ; [com][for]t\u23b5[you]r\u23b5[we]\n#_1CB643: db $1A, $2B, $B4, $1E, $2C, $2C, $43 ; ar[in]ess\u2026\n#_1CB64A: db $7E ; wait for key\n#_1CB64B: db $73 ; scroll text\n#_1CB64C: db $02, $28, $BE, $59, $96, $9C, $59, $AF ; Co[me]\u23b5[ba][ck]\u23b5[her]\n#_1CB654: db $1E, $59, $93, $32, $59, $2D, $22, $BE ; e\u23b5[an]y\u23b5ti[me]\n#_1CB65C: db $41 ; .\n#_1CB65D: db $7F ; end of message\n\n; =========================================================\n; The Moon Pearl will protect its\n; bearer from the magical air of\n; the Golden Land, so you can\n; keep your human shape there.\n; All I can do for you now is\n; comfort your weariness\u2026\n; Come back here any time.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_009F", + "code": "Message_009F:\n#_1CB65E: db $74 ; line 1\n#_1CB65F: db $E6, $59, $0C, $28, $C7, $59, $0F, $A2 ; [The]\u23b5Mo[on]\u23b5P[ear]\n#_1CB667: db $25, $59, $E2, $25, $25, $59, $CC, $2D ; l\u23b5[wi]ll\u23b5[pro]t\n#_1CB66F: db $1E, $1C, $2D, $59, $B6, $2C ; ect\u23b5[it]s\n#_1CB675: db $75 ; line 2\n#_1CB676: db $97, $1A, $CE, $2B, $59, $A9, $26, $59 ; [be]a[re]r\u23b5[fro]m\u23b5\n#_1CB67E: db $D8, $59, $BD, $20, $22, $1C, $1A, $25 ; [the]\u23b5[ma]gical\n#_1CB686: db $59, $1A, $22, $2B, $59, $C6 ; \u23b5air\u23b5[of]\n#_1CB68C: db $76 ; line 3\n#_1CB68D: db $D8, $59, $06, $28, $25, $1D, $A0, $0B ; [the]\u23b5Gold[en ]L\n#_1CB695: db $90, $42, $59, $D2, $59, $E3, $59, $1C ; [and],\u23b5[so]\u23b5[you]\u23b5c\n#_1CB69D: db $93 ; [an]\n#_1CB69E: db $7E ; wait for key\n#_1CB69F: db $73 ; scroll text\n#_1CB6A0: db $24, $1E, $1E, $29, $59, $E3, $2B, $59 ; keep\u23b5[you]r\u23b5\n#_1CB6A8: db $21, $2E, $BC, $59, $D1, $1A, $29, $1E ; hu[man]\u23b5[sh]ape\n#_1CB6B0: db $59, $D8, $CE, $41 ; \u23b5[the][re].\n#_1CB6B4: db $73 ; scroll text\n#_1CB6B5: db $00, $25, $25, $59, $08, $59, $99, $9F ; All\u23b5I\u23b5[can ][do]\n#_1CB6BD: db $59, $A8, $59, $E3, $59, $27, $28, $30 ; \u23b5[for]\u23b5[you]\u23b5now\n#_1CB6C5: db $59, $B5 ; \u23b5[is]\n#_1CB6C7: db $73 ; scroll text\n#_1CB6C8: db $9B, $A8, $2D, $59, $E3, $2B, $59, $E0 ; [com][for]t\u23b5[you]r\u23b5[we]\n#_1CB6D0: db $1A, $2B, $B4, $1E, $2C, $2C, $43, $59 ; ar[in]ess\u2026\u23b5\n#_1CB6D8: db $7E ; wait for key\n#_1CB6D9: db $73 ; scroll text\n#_1CB6DA: db $02, $28, $BE, $59, $96, $9C, $59, $AF ; Co[me]\u23b5[ba][ck]\u23b5[her]\n#_1CB6E2: db $1E, $59, $93, $32, $59, $2D, $22, $BE ; e\u23b5[an]y\u23b5ti[me]\n#_1CB6EA: db $41 ; .\n#_1CB6EB: db $7F ; end of message\n\n; =========================================================\n; [LINK], I think the wizard\n; connected the two worlds\n; somewhere around the castle.\n; All I can do for you now is to\n; comfort your weariness\u2026\n; Come back here any time.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A0", + "code": "Message_00A0:\n#_1CB6EC: db $6A, $42, $59, $08, $59, $D5, $24, $59 ; [LINK],\u23b5I\u23b5[thin]k\u23b5\n#_1CB6F4: db $D8, $59, $E2, $33, $1A, $2B, $1D ; [the]\u23b5[wi]zard\n#_1CB6FB: db $75 ; line 2\n#_1CB6FC: db $1C, $C7, $27, $1E, $1C, $2D, $A4, $D8 ; c[on]nect[ed ][the]\n#_1CB704: db $59, $2D, $30, $28, $59, $30, $C8, $25 ; \u23b5two\u23b5w[or]l\n#_1CB70C: db $1D, $2C ; ds\n#_1CB70E: db $76 ; line 3\n#_1CB70F: db $CF, $E1, $A6, $1E, $59, $1A, $2B, $C4 ; [some][wh][er]e\u23b5ar[ound]\n#_1CB717: db $59, $D8, $59, $1C, $92, $25, $1E, $41 ; \u23b5[the]\u23b5c[ast]le.\n#_1CB71F: db $7E ; wait for key\n#_1CB720: db $73 ; scroll text\n#_1CB721: db $00, $25, $25, $59, $08, $59, $99, $9F ; All\u23b5I\u23b5[can ][do]\n#_1CB729: db $59, $A8, $59, $E3, $59, $27, $28, $30 ; \u23b5[for]\u23b5[you]\u23b5now\n#_1CB731: db $59, $B5, $59, $DA ; \u23b5[is]\u23b5[to]\n#_1CB735: db $73 ; scroll text\n#_1CB736: db $9B, $A8, $2D, $59, $E3, $2B, $59, $E0 ; [com][for]t\u23b5[you]r\u23b5[we]\n#_1CB73E: db $1A, $2B, $B4, $1E, $2C, $2C, $43 ; ar[in]ess\u2026\n#_1CB745: db $73 ; scroll text\n#_1CB746: db $02, $28, $BE, $59, $96, $9C, $59, $AF ; Co[me]\u23b5[ba][ck]\u23b5[her]\n#_1CB74E: db $1E, $59, $93, $32, $59, $2D, $22, $BE ; e\u23b5[an]y\u23b5ti[me]\n#_1CB756: db $41 ; .\n#_1CB757: db $7F ; end of message\n\n; =========================================================\n; \u2026mumble mumble\u2026 My son\n; really liked to play the flute,\n; but he went to look for the\n; Golden Power and has not\n; returned\u2026 \u2026 \u2026\n; I wonder where he is and what\n; he is doing now?\u2026\n; \u2026 Zzzzzz Zzzzzz\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A1", + "code": "Message_00A1:\n#_1CB758: db $43, $BF, $26, $95, $59, $BF, $26, $95 ; \u2026[mu]m[ble]\u23b5[mu]m[ble]\n#_1CB760: db $43, $8A, $0C, $32, $59, $D2, $27 ; \u2026[ ]My\u23b5[so]n\n#_1CB767: db $75 ; line 2\n#_1CB768: db $CE, $1A, $25, $B9, $25, $22, $24, $A4 ; [re]al[ly ]lik[ed ]\n#_1CB770: db $DA, $59, $29, $BA, $32, $59, $D8, $59 ; [to]\u23b5p[la]y\u23b5[the]\u23b5\n#_1CB778: db $1F, $25, $2E, $2D, $1E, $42 ; flute,\n#_1CB77E: db $76 ; line 3\n#_1CB77F: db $1B, $2E, $2D, $59, $21, $1E, $59, $E0 ; but\u23b5he\u23b5[we]\n#_1CB787: db $27, $2D, $59, $DA, $59, $BB, $28, $24 ; nt\u23b5[to]\u23b5[lo]ok\n#_1CB78F: db $59, $A8, $59, $D8 ; \u23b5[for]\u23b5[the]\n#_1CB793: db $7E ; wait for key\n#_1CB794: db $73 ; scroll text\n#_1CB795: db $06, $28, $25, $1D, $A0, $0F, $28, $E0 ; Gold[en ]Po[we]\n#_1CB79D: db $2B, $59, $8C, $AE, $59, $C2 ; r\u23b5[and ][has]\u23b5[not]\n#_1CB7A3: db $73 ; scroll text\n#_1CB7A4: db $CE, $2D, $2E, $2B, $27, $1E, $1D, $43 ; [re]turned\u2026\n#_1CB7AC: db $59, $43, $59, $43 ; \u23b5\u2026\u23b5\u2026\n#_1CB7B0: db $73 ; scroll text\n#_1CB7B1: db $08, $59, $30, $C7, $1D, $A1, $E1, $A6 ; I\u23b5w[on]d[er ][wh][er]\n#_1CB7B9: db $1E, $59, $21, $1E, $59, $B5, $59, $8C ; e\u23b5he\u23b5[is]\u23b5[and ]\n#_1CB7C1: db $E1, $94 ; [wh][at]\n#_1CB7C3: db $7E ; wait for key\n#_1CB7C4: db $73 ; scroll text\n#_1CB7C5: db $21, $1E, $59, $B5, $59, $9F, $B3, $27 ; he\u23b5[is]\u23b5[do][ing ]n\n#_1CB7CD: db $28, $30, $3F, $43 ; ow?\u2026\n#_1CB7D1: db $73 ; scroll text\n#_1CB7D2: db $43, $8A, $19, $33, $33, $33, $33, $33 ; \u2026[ ]Zzzzzz\n#_1CB7DA: db $8A, $19, $33, $33, $33, $33, $33 ; [ ]Zzzzzz\n#_1CB7E1: db $7F ; end of message\n\n; =========================================================\n; \u2026mumble mumble\u2026 Oh? This\n; is my son's flute\u2026!\n; Did you meet my son?\n; Where is he? Is he all right?\n; \u2026 \u2026 \u2026 \u2026\n;\n; Oh, I see\u2026 Well, I can tell\n; what you want to say by the\n; look in your eyes\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A2", + "code": "Message_00A2:\n#_1CB7E2: db $43, $BF, $26, $95, $59, $BF, $26, $95 ; \u2026[mu]m[ble]\u23b5[mu]m[ble]\n#_1CB7EA: db $43, $8A, $0E, $21, $3F, $8A, $E7, $2C ; \u2026[ ]Oh?[ ][Thi]s\n#_1CB7F2: db $75 ; line 2\n#_1CB7F3: db $B5, $59, $26, $32, $59, $D2, $27, $8B ; [is]\u23b5my\u23b5[so]n['s ]\n#_1CB7FB: db $1F, $25, $2E, $2D, $1E, $43, $3E ; flute\u2026!\n#_1CB802: db $76 ; line 3\n#_1CB803: db $03, $22, $1D, $59, $E3, $59, $BE, $1E ; Did\u23b5[you]\u23b5[me]e\n#_1CB80B: db $2D, $59, $26, $32, $59, $D2, $27, $3F ; t\u23b5my\u23b5[so]n?\n#_1CB813: db $7E ; wait for key\n#_1CB814: db $73 ; scroll text\n#_1CB815: db $16, $AF, $1E, $59, $B5, $59, $21, $1E ; W[her]e\u23b5[is]\u23b5he\n#_1CB81D: db $3F, $8A, $08, $2C, $59, $21, $1E, $59 ; ?[ ]Is\u23b5he\u23b5\n#_1CB825: db $8E, $2B, $22, $20, $21, $2D, $3F ; [all ]right?\n#_1CB82C: db $73 ; scroll text\n#_1CB82D: db $43, $59, $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\u23b5\u2026\n#_1CB834: db $73 ; scroll text\n#_1CB835: db $7E ; wait for key\n#_1CB836: db $73 ; scroll text\n#_1CB837: db $0E, $21, $42, $59, $08, $59, $D0, $1E ; Oh,\u23b5I\u23b5[se]e\n#_1CB83F: db $43, $8A, $16, $1E, $25, $25, $42, $59 ; \u2026[ ]Well,\u23b5\n#_1CB847: db $08, $59, $99, $2D, $1E, $25, $25 ; I\u23b5[can ]tell\n#_1CB84E: db $73 ; scroll text\n#_1CB84F: db $E1, $91, $E3, $59, $DF, $27, $2D, $59 ; [wh][at ][you]\u23b5[wa]nt\u23b5\n#_1CB857: db $DA, $59, $2C, $1A, $32, $59, $1B, $32 ; [to]\u23b5say\u23b5by\n#_1CB85F: db $59, $D8 ; \u23b5[the]\n#_1CB861: db $73 ; scroll text\n#_1CB862: db $BB, $28, $24, $59, $B4, $59, $E3, $2B ; [lo]ok\u23b5[in]\u23b5[you]r\n#_1CB86A: db $59, $1E, $32, $1E, $2C, $43 ; \u23b5eyes\u2026\n#_1CB870: db $7F ; end of message\n\n; =========================================================\n; Would you keep the flute?\n; And will you play its sweet\n; melody for the bird in the\n; village square?\n; I beg of you, please!\n; My son would probably want it\n; this way\u2026\n; \u2026But still, I wish I could\n; see him once more\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A3", + "code": "Message_00A3:\n#_1CB871: db $16, $28, $2E, $25, $1D, $59, $E3, $59 ; Would\u23b5[you]\u23b5\n#_1CB879: db $24, $1E, $1E, $29, $59, $D8, $59, $1F ; keep\u23b5[the]\u23b5f\n#_1CB881: db $25, $2E, $2D, $1E, $3F ; lute?\n#_1CB886: db $75 ; line 2\n#_1CB887: db $00, $27, $1D, $59, $E2, $25, $25, $59 ; And\u23b5[wi]ll\u23b5\n#_1CB88F: db $E3, $59, $29, $BA, $32, $59, $B6, $2C ; [you]\u23b5p[la]y\u23b5[it]s\n#_1CB897: db $59, $2C, $E0, $1E, $2D ; \u23b5s[we]et\n#_1CB89C: db $76 ; line 3\n#_1CB89D: db $BE, $BB, $1D, $32, $59, $A8, $59, $D8 ; [me][lo]dy\u23b5[for]\u23b5[the]\n#_1CB8A5: db $59, $1B, $22, $2B, $1D, $59, $B4, $59 ; \u23b5bird\u23b5[in]\u23b5\n#_1CB8AD: db $D8 ; [the]\n#_1CB8AE: db $7E ; wait for key\n#_1CB8AF: db $73 ; scroll text\n#_1CB8B0: db $2F, $22, $25, $BA, $20, $1E, $59, $2C ; vil[la]ge\u23b5s\n#_1CB8B8: db $2A, $2E, $1A, $CE, $3F ; qua[re]?\n#_1CB8BD: db $73 ; scroll text\n#_1CB8BE: db $08, $59, $97, $20, $59, $C6, $59, $E3 ; I\u23b5[be]g\u23b5[of]\u23b5[you]\n#_1CB8C6: db $42, $59, $CA, $1A, $D0, $3E ; ,\u23b5[ple]a[se]!\n#_1CB8CC: db $73 ; scroll text\n#_1CB8CD: db $0C, $32, $59, $D2, $27, $59, $30, $28 ; My\u23b5[so]n\u23b5wo\n#_1CB8D5: db $2E, $25, $1D, $59, $CC, $96, $1B, $B9 ; uld\u23b5[pro][ba]b[ly ]\n#_1CB8DD: db $DF, $27, $2D, $59, $B6 ; [wa]nt\u23b5[it]\n#_1CB8E2: db $7E ; wait for key\n#_1CB8E3: db $73 ; scroll text\n#_1CB8E4: db $D9, $2C, $59, $DF, $32, $43 ; [thi]s\u23b5[wa]y\u2026\n#_1CB8EA: db $73 ; scroll text\n#_1CB8EB: db $43, $01, $2E, $2D, $59, $D3, $22, $25 ; \u2026But\u23b5[st]il\n#_1CB8F3: db $25, $42, $59, $08, $59, $E2, $D1, $59 ; l,\u23b5I\u23b5[wi][sh]\u23b5\n#_1CB8FB: db $08, $59, $1C, $28, $2E, $25, $1D ; I\u23b5could\n#_1CB902: db $73 ; scroll text\n#_1CB903: db $D0, $1E, $59, $B0, $26, $59, $C7, $1C ; [se]e\u23b5[hi]m\u23b5[on]c\n#_1CB90B: db $1E, $59, $26, $C8, $1E, $43 ; e\u23b5m[or]e\u2026\n#_1CB911: db $7F ; end of message\n\n; =========================================================\n; Zzzzzzz Zzzzzzzz\n; \u2026 \u2026 \u2026\n; Snore Zzzzzz Zzzzzz\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A4", + "code": "Message_00A4:\n#_1CB912: db $19, $33, $33, $33, $33, $33, $33, $8A ; Zzzzzzz[ ]\n#_1CB91A: db $19, $33, $33, $33, $33, $33, $33, $33 ; Zzzzzzzz\n#_1CB922: db $75 ; line 2\n#_1CB923: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CB928: db $76 ; line 3\n#_1CB929: db $12, $27, $C8, $1E, $8A, $19, $33, $33 ; Sn[or]e[ ]Zzz\n#_1CB931: db $33, $33, $33, $8A, $19, $33, $33, $33 ; zzz[ ]Zzzz\n#_1CB939: db $33, $33 ; zz\n#_1CB93B: db $7F ; end of message\n\n; =========================================================\n; Oh, [LINK]. The rumors say\n; you kidnapped the Princess,\n; but I still trust you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A5", + "code": "Message_00A5:\n#_1CB93C: db $0E, $21, $42, $59, $6A, $41, $8A, $E6 ; Oh,\u23b5[LINK].[ ][The]\n#_1CB944: db $59, $2B, $2E, $26, $C8, $2C, $59, $2C ; \u23b5rum[or]s\u23b5s\n#_1CB94C: db $1A, $32 ; ay\n#_1CB94E: db $75 ; line 2\n#_1CB94F: db $E3, $59, $24, $22, $1D, $27, $1A, $29 ; [you]\u23b5kidnap\n#_1CB957: db $29, $A4, $D8, $59, $0F, $2B, $B4, $1C ; p[ed ][the]\u23b5Pr[in]c\n#_1CB95F: db $1E, $2C, $2C, $42 ; ess,\n#_1CB963: db $76 ; line 3\n#_1CB964: db $1B, $2E, $2D, $59, $08, $59, $D3, $22 ; but\u23b5I\u23b5[st]i\n#_1CB96C: db $25, $25, $59, $DB, $2E, $D3, $59, $E3 ; ll\u23b5[tr]u[st]\u23b5[you]\n#_1CB974: db $41 ; .\n#_1CB975: db $7F ; end of message\n\n; =========================================================\n; I can't believe you caught me!\n; With your speed it must have\n; been easy to kidnap Zelda\u2026\n; You don't look like such a bad\n; guy, though\u2026\n; Anyway, because you have\n; such quick feet, it might be a\n; good idea to run and bash into\n; many things\u2026\n; For example, the trees in this\n; village have many useful things\n; hanging in their branches\u2026\n; Well, just try it, OK?!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A6", + "code": "Message_00A6:\n#_1CB976: db $08, $59, $1C, $93, $51, $2D, $59, $97 ; I\u23b5c[an]'t\u23b5[be]\n#_1CB97E: db $25, $22, $A7, $1E, $59, $E3, $59, $1C ; li[ev]e\u23b5[you]\u23b5c\n#_1CB986: db $1A, $2E, $20, $21, $2D, $59, $BE, $3E ; aught\u23b5[me]!\n#_1CB98E: db $75 ; line 2\n#_1CB98F: db $16, $B6, $21, $59, $E3, $2B, $59, $2C ; W[it]h\u23b5[you]r\u23b5s\n#_1CB997: db $29, $1E, $A4, $B6, $59, $BF, $D3, $59 ; pe[ed ][it]\u23b5[mu][st]\u23b5\n#_1CB99F: db $AD ; [have]\n#_1CB9A0: db $76 ; line 3\n#_1CB9A1: db $97, $A0, $1E, $1A, $2C, $32, $59, $DA ; [be][en ]easy\u23b5[to]\n#_1CB9A9: db $59, $24, $22, $1D, $27, $1A, $29, $59 ; \u23b5kidnap\u23b5\n#_1CB9B1: db $19, $1E, $25, $1D, $1A, $43 ; Zelda\u2026\n#_1CB9B7: db $7E ; wait for key\n#_1CB9B8: db $73 ; scroll text\n#_1CB9B9: db $E8, $59, $9F, $C0, $BB, $28, $24, $59 ; [You]\u23b5[do][n't ][lo]ok\u23b5\n#_1CB9C1: db $25, $22, $24, $1E, $59, $2C, $2E, $1C ; like\u23b5suc\n#_1CB9C9: db $21, $59, $1A, $59, $96, $1D ; h\u23b5a\u23b5[ba]d\n#_1CB9CF: db $73 ; scroll text\n#_1CB9D0: db $20, $2E, $32, $42, $59, $2D, $21, $28 ; guy,\u23b5tho\n#_1CB9D8: db $2E, $20, $21, $43 ; ugh\u2026\n#_1CB9DC: db $73 ; scroll text\n#_1CB9DD: db $00, $27, $32, $DF, $32, $42, $59, $97 ; Any[wa]y,\u23b5[be]\n#_1CB9E5: db $1C, $1A, $2E, $D0, $59, $E3, $59, $AD ; cau[se]\u23b5[you]\u23b5[have]\n#_1CB9ED: db $7E ; wait for key\n#_1CB9EE: db $73 ; scroll text\n#_1CB9EF: db $2C, $2E, $1C, $21, $59, $2A, $2E, $22 ; such\u23b5qui\n#_1CB9F7: db $9C, $59, $1F, $1E, $1E, $2D, $42, $59 ; [ck]\u23b5feet,\u23b5\n#_1CB9FF: db $B6, $59, $26, $B2, $97, $59, $1A ; [it]\u23b5m[ight ][be]\u23b5a\n#_1CBA06: db $73 ; scroll text\n#_1CBA07: db $AC, $28, $1D, $59, $22, $1D, $1E, $1A ; [go]od\u23b5idea\n#_1CBA0F: db $59, $DA, $59, $2B, $2E, $27, $59, $8C ; \u23b5[to]\u23b5run\u23b5[and ]\n#_1CBA17: db $96, $D1, $59, $B4, $DA ; [ba][sh]\u23b5[in][to]\n#_1CBA1C: db $73 ; scroll text\n#_1CBA1D: db $BC, $32, $59, $D5, $20, $2C, $43 ; [man]y\u23b5[thin]gs\u2026\n#_1CBA24: db $7E ; wait for key\n#_1CBA25: db $73 ; scroll text\n#_1CBA26: db $05, $C8, $59, $1E, $31, $1A, $26, $CA ; F[or]\u23b5exam[ple]\n#_1CBA2E: db $42, $59, $D8, $59, $DB, $1E, $1E, $2C ; ,\u23b5[the]\u23b5[tr]ees\n#_1CBA36: db $59, $B4, $59, $D9, $2C ; \u23b5[in]\u23b5[thi]s\n#_1CBA3B: db $73 ; scroll text\n#_1CBA3C: db $2F, $22, $25, $BA, $20, $1E, $59, $AD ; vil[la]ge\u23b5[have]\n#_1CBA44: db $59, $BC, $32, $59, $2E, $D0, $1F, $2E ; \u23b5[man]y\u23b5u[se]fu\n#_1CBA4C: db $25, $59, $D5, $20, $2C ; l\u23b5[thin]gs\n#_1CBA51: db $73 ; scroll text\n#_1CBA52: db $B1, $27, $20, $B3, $B4, $59, $D8, $22 ; [ha]ng[ing ][in]\u23b5[the]i\n#_1CBA5A: db $2B, $59, $1B, $2B, $93, $9A, $2C, $43 ; r\u23b5br[an][che]s\u2026\n#_1CBA62: db $7E ; wait for key\n#_1CBA63: db $73 ; scroll text\n#_1CBA64: db $16, $1E, $25, $25, $42, $59, $B7, $59 ; Well,\u23b5[just]\u23b5\n#_1CBA6C: db $DB, $32, $59, $B6, $42, $59, $0E, $0A ; [tr]y\u23b5[it],\u23b5OK\n#_1CBA74: db $3F, $3E ; ?!\n#_1CBA76: db $7F ; end of message\n\n; =========================================================\n; If you have enough time to\n; read this sign, you should go\n; to the goal immediately!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A7", + "code": "Message_00A7:\n#_1CBA77: db $08, $1F, $59, $E3, $59, $AD, $59, $A5 ; If\u23b5[you]\u23b5[have]\u23b5[en]\n#_1CBA7F: db $28, $2E, $20, $21, $59, $2D, $22, $BE ; ough\u23b5ti[me]\n#_1CBA87: db $59, $DA ; \u23b5[to]\n#_1CBA89: db $75 ; line 2\n#_1CBA8A: db $CE, $1A, $1D, $59, $D9, $2C, $59, $2C ; [re]ad\u23b5[thi]s\u23b5s\n#_1CBA92: db $22, $20, $27, $42, $59, $E3, $59, $D1 ; ign,\u23b5[you]\u23b5[sh]\n#_1CBA9A: db $28, $2E, $25, $1D, $59, $AC ; ould\u23b5[go]\n#_1CBAA0: db $76 ; line 3\n#_1CBAA1: db $DA, $59, $D8, $59, $AC, $1A, $25, $59 ; [to]\u23b5[the]\u23b5[go]al\u23b5\n#_1CBAA9: db $22, $26, $BE, $9E, $94, $1E, $25, $32 ; im[me][di][at]ely\n#_1CBAB1: db $3E ; !\n#_1CBAB2: db $7F ; end of message\n\n; =========================================================\n; I'll give a piece of Heart to\n; the person who wears the Cape.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A8", + "code": "Message_00A8:\n#_1CBAB3: db $08, $51, $25, $25, $59, $AA, $1A, $59 ; I'll\u23b5[give ]a\u23b5\n#_1CBABB: db $29, $22, $1E, $1C, $1E, $59, $C6, $59 ; piece\u23b5[of]\u23b5\n#_1CBAC3: db $07, $A2, $2D, $59, $DA ; H[ear]t\u23b5[to]\n#_1CBAC8: db $75 ; line 2\n#_1CBAC9: db $D8, $59, $C9, $D2, $27, $59, $E1, $28 ; [the]\u23b5[per][so]n\u23b5[wh]o\n#_1CBAD1: db $59, $E0, $1A, $2B, $2C, $59, $D8, $59 ; \u23b5[we]ars\u23b5[the]\u23b5\n#_1CBAD9: db $02, $1A, $29, $1E, $41 ; Cape.\n#_1CBADE: db $7F ; end of message\n\n; =========================================================\n; Curses to anyone who throws\n; something into my circle of\n; stones.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00A9", + "code": "Message_00A9:\n#_1CBADF: db $02, $2E, $2B, $D0, $2C, $59, $DA, $59 ; Cur[se]s\u23b5[to]\u23b5\n#_1CBAE7: db $93, $32, $C7, $1E, $59, $E1, $28, $59 ; [an]y[on]e\u23b5[wh]o\u23b5\n#_1CBAEF: db $2D, $21, $2B, $28, $30, $2C ; throws\n#_1CBAF5: db $75 ; line 2\n#_1CBAF6: db $CF, $D5, $20, $59, $B4, $DA, $59, $26 ; [some][thin]g\u23b5[in][to]\u23b5m\n#_1CBAFE: db $32, $59, $1C, $22, $2B, $1C, $25, $1E ; y\u23b5circle\n#_1CBB06: db $59, $C6 ; \u23b5[of]\n#_1CBB08: db $76 ; line 3\n#_1CBB09: db $D3, $C7, $1E, $2C, $41 ; [st][on]es.\n#_1CBB0E: db $7F ; end of message\n\n; =========================================================\n; This way \u2191 Skeleton Forest\n; This way \u2193 Village Of Outcasts\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AA", + "code": "Message_00AA:\n#_1CBB0F: db $E7, $2C, $59, $DF, $32, $59, $4D, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2191\u23b5\n#_1CBB17: db $12, $24, $1E, $25, $1E, $DA, $27, $59 ; Skele[to]n\u23b5\n#_1CBB1F: db $05, $C8, $1E, $D3 ; F[or]e[st]\n#_1CBB23: db $76 ; line 3\n#_1CBB24: db $E7, $2C, $59, $DF, $32, $59, $4E, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2193\u23b5\n#_1CBB2C: db $15, $22, $25, $BA, $20, $1E, $59, $0E ; Vil[la]ge\u23b5O\n#_1CBB34: db $1F, $59, $0E, $2E, $2D, $1C, $92, $2C ; f\u23b5Outc[ast]s\n#_1CBB3C: db $7F ; end of message\n\n; =========================================================\n; This way \u2192 Cave\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AB", + "code": "Message_00AB:\n#_1CBB3D: db $75 ; line 2\n#_1CBB3E: db $E7, $2C, $59, $DF, $32, $59, $50, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2192\u23b5\n#_1CBB46: db $02, $1A, $2F, $1E ; Cave\n#_1CBB4A: db $7F ; end of message\n\n; =========================================================\n; This way \u2192 Palace Of Darkness\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AC", + "code": "Message_00AC:\n#_1CBB4B: db $75 ; line 2\n#_1CBB4C: db $E7, $2C, $59, $DF, $32, $59, $50, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2192\u23b5\n#_1CBB54: db $0F, $1A, $BA, $1C, $1E, $59, $0E, $1F ; Pa[la]ce\u23b5Of\n#_1CBB5C: db $59, $03, $1A, $2B, $24, $27, $1E, $2C ; \u23b5Darknes\n#_1CBB64: db $2C ; s\n#_1CBB65: db $7F ; end of message\n\n; =========================================================\n; This way \u2190 Bomb Shop\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AD", + "code": "Message_00AD:\n#_1CBB66: db $75 ; line 2\n#_1CBB67: db $E7, $2C, $59, $DF, $32, $59, $4F, $59 ; [Thi]s\u23b5[wa]y\u23b5\u2190\u23b5\n#_1CBB6F: db $01, $28, $26, $1B, $59, $12, $21, $28 ; Bomb\u23b5Sho\n#_1CBB77: db $29 ; p\n#_1CBB78: db $7F ; end of message\n\n; =========================================================\n; \u2190 Swamp Of Evil\n; No Entrance\n; No Escape\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AE", + "code": "Message_00AE:\n#_1CBB79: db $4F, $8A, $12, $DF, $26, $29, $59, $0E ; \u2190[ ]S[wa]mp\u23b5O\n#_1CBB81: db $1F, $59, $04, $2F, $22, $25 ; f\u23b5Evil\n#_1CBB87: db $75 ; line 2\n#_1CBB88: db $88, $88, $59, $0D, $28, $59, $04, $27 ; [ ][ ]\u23b5No\u23b5En\n#_1CBB90: db $DB, $93, $1C, $1E ; [tr][an]ce\n#_1CBB94: db $76 ; line 3\n#_1CBB95: db $88, $88, $59, $0D, $28, $59, $04, $2C ; [ ][ ]\u23b5No\u23b5Es\n#_1CBB9D: db $1C, $1A, $29, $1E ; cape\n#_1CBBA1: db $7F ; end of message\n\n; =========================================================\n; This is the Village Of Outcasts.\n; People without Rupees are not\n; welcome here.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00AF", + "code": "Message_00AF:\n#_1CBBA2: db $E7, $2C, $59, $B5, $59, $D8, $59, $15 ; [Thi]s\u23b5[is]\u23b5[the]\u23b5V\n#_1CBBAA: db $22, $25, $BA, $20, $1E, $59, $0E, $1F ; il[la]ge\u23b5Of\n#_1CBBB2: db $59, $0E, $2E, $2D, $1C, $92, $2C, $41 ; \u23b5Outc[ast]s.\n#_1CBBBA: db $75 ; line 2\n#_1CBBBB: db $0F, $1E, $28, $CA, $59, $DE, $C5, $11 ; Peo[ple]\u23b5[with][out ]R\n#_1CBBC3: db $DC, $1E, $1E, $2C, $59, $8D, $C2 ; [up]ees\u23b5[are ][not]\n#_1CBBCA: db $76 ; line 3\n#_1CBBCB: db $E0, $25, $9B, $1E, $59, $AF, $1E, $41 ; [we]l[com]e\u23b5[her]e.\n#_1CBBD3: db $7F ; end of message\n\n; =========================================================\n; The Waterfall Of Wishing is just\n; around the corner.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B0", + "code": "Message_00B0:\n#_1CBBD4: db $E6, $59, $16, $94, $A6, $1F, $8E, $0E ; [The]\u23b5W[at][er]f[all ]O\n#_1CBBDC: db $1F, $59, $16, $B5, $B0, $27, $20, $59 ; f\u23b5W[is][hi]ng\u23b5\n#_1CBBE4: db $B5, $59, $B7 ; [is]\u23b5[just]\n#_1CBBE7: db $75 ; line 2\n#_1CBBE8: db $1A, $2B, $C4, $59, $D8, $59, $1C, $C8 ; ar[ound]\u23b5[the]\u23b5c[or]\n#_1CBBF0: db $27, $A6, $41 ; n[er].\n#_1CBBF3: db $7F ; end of message\n\n; =========================================================\n; This way \u2192\u2191\n; Lake Of Ill Omen\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B1", + "code": "Message_00B1:\n#_1CBBF4: db $E7, $2C, $59, $DF, $32, $59, $50, $4D ; [Thi]s\u23b5[wa]y\u23b5\u2192\u2191\n#_1CBBFC: db $75 ; line 2\n#_1CBBFD: db $0B, $1A, $24, $1E, $59, $0E, $1F, $59 ; Lake\u23b5Of\u23b5\n#_1CBC05: db $08, $25, $25, $59, $0E, $BE, $27 ; Ill\u23b5O[me]n\n#_1CBC0C: db $7F ; end of message\n\n; =========================================================\n; After Agahnim took over,\n; everyone began to act\n; strangely.\n; I suppose it's only\n; a matter of time before\n; I'm affected, too.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B2", + "code": "Message_00B2:\n#_1CBC0D: db $00, $1F, $D4, $00, $20, $1A, $21, $27 ; Af[ter ]Agahn\n#_1CBC15: db $22, $26, $59, $DA, $28, $24, $59, $28 ; im\u23b5[to]ok\u23b5o\n#_1CBC1D: db $DD, $42 ; [ver],\n#_1CBC1F: db $75 ; line 2\n#_1CBC20: db $A7, $A6, $32, $C7, $1E, $59, $97, $20 ; [ev][er]y[on]e\u23b5[be]g\n#_1CBC28: db $93, $59, $DA, $59, $1A, $1C, $2D ; [an]\u23b5[to]\u23b5act\n#_1CBC2F: db $76 ; line 3\n#_1CBC30: db $D3, $2B, $93, $20, $1E, $25, $32, $41 ; [st]r[an]gely.\n#_1CBC38: db $7E ; wait for key\n#_1CBC39: db $73 ; scroll text\n#_1CBC3A: db $08, $59, $2C, $DC, $29, $28, $D0, $59 ; I\u23b5s[up]po[se]\u23b5\n#_1CBC42: db $B6, $8B, $C7, $25, $32 ; [it]['s ][on]ly\n#_1CBC47: db $73 ; scroll text\n#_1CBC48: db $1A, $59, $BD, $2D, $D4, $C6, $59, $2D ; a\u23b5[ma]t[ter ][of]\u23b5t\n#_1CBC50: db $22, $BE, $59, $97, $A8, $1E ; i[me]\u23b5[be][for]e\n#_1CBC56: db $73 ; scroll text\n#_1CBC57: db $08, $51, $26, $59, $1A, $1F, $1F, $1E ; I'm\u23b5affe\n#_1CBC5F: db $1C, $2D, $1E, $1D, $42, $59, $DA, $28 ; cted,\u23b5[to]o\n#_1CBC67: db $41 ; .\n#_1CBC68: db $7F ; end of message\n\n; =========================================================\n; Hey hey! You're not allowed in\n; the castle, son!\n; Go home and get some sleep!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B3", + "code": "Message_00B3:\n#_1CBC69: db $07, $1E, $32, $59, $21, $1E, $32, $3E ; Hey\u23b5hey!\n#_1CBC71: db $8A, $E8, $51, $CD, $C2, $59, $1A, $25 ; [ ][You]'[re ][not]\u23b5al\n#_1CBC79: db $BB, $E0, $1D, $59, $B4 ; [lo][we]d\u23b5[in]\n#_1CBC7E: db $75 ; line 2\n#_1CBC7F: db $D8, $59, $1C, $92, $25, $1E, $42, $59 ; [the]\u23b5c[ast]le,\u23b5\n#_1CBC87: db $D2, $27, $3E ; [so]n!\n#_1CBC8A: db $76 ; line 3\n#_1CBC8B: db $06, $28, $59, $21, $28, $BE, $59, $8C ; Go\u23b5ho[me]\u23b5[and ]\n#_1CBC93: db $AB, $59, $CF, $59, $2C, $25, $1E, $1E ; [get]\u23b5[some]\u23b5slee\n#_1CBC9B: db $29, $3E ; p!\n#_1CBC9D: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla. I\n; can talk to you telepathically\n; when you touch these tiles.\n; Here is a hint. You can use the\n; treasure hidden in this palace\n; to defeat armored foes.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B4", + "code": "Message_00B4:\n#_1CBC9E: db $6B, $02 ; set window border\n#_1CBCA0: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CBCA8: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CBCB0: db $BA, $41, $8A, $08 ; [la].[ ]I\n#_1CBCB4: db $75 ; line 2\n#_1CBCB5: db $99, $2D, $1A, $25, $24, $59, $DA, $59 ; [can ]talk\u23b5[to]\u23b5\n#_1CBCBD: db $E3, $59, $2D, $1E, $25, $1E, $29, $94 ; [you]\u23b5telep[at]\n#_1CBCC5: db $B0, $1C, $1A, $25, $25, $32 ; [hi]cally\n#_1CBCCB: db $76 ; line 3\n#_1CBCCC: db $E1, $A0, $E3, $59, $DA, $2E, $1C, $21 ; [wh][en ][you]\u23b5[to]uch\n#_1CBCD4: db $59, $D8, $D0, $59, $2D, $22, $25, $1E ; \u23b5[the][se]\u23b5tile\n#_1CBCDC: db $2C, $41 ; s.\n#_1CBCDE: db $7E ; wait for key\n#_1CBCDF: db $73 ; scroll text\n#_1CBCE0: db $E4, $1E, $59, $B5, $59, $1A, $59, $B0 ; [Her]e\u23b5[is]\u23b5a\u23b5[hi]\n#_1CBCE8: db $27, $2D, $41, $8A, $E8, $59, $99, $2E ; nt.[ ][You]\u23b5[can ]u\n#_1CBCF0: db $D0, $59, $D8 ; [se]\u23b5[the]\n#_1CBCF3: db $73 ; scroll text\n#_1CBCF4: db $DB, $1E, $1A, $2C, $2E, $CD, $B0, $1D ; [tr]easu[re ][hi]d\n#_1CBCFC: db $1D, $A0, $B4, $59, $D9, $2C, $59, $29 ; d[en ][in]\u23b5[thi]s\u23b5p\n#_1CBD04: db $1A, $BA, $1C, $1E ; a[la]ce\n#_1CBD08: db $73 ; scroll text\n#_1CBD09: db $DA, $59, $1D, $1E, $1F, $1E, $91, $1A ; [to]\u23b5defe[at ]a\n#_1CBD11: db $2B, $26, $C8, $A4, $1F, $28, $1E, $2C ; rm[or][ed ]foes\n#_1CBD19: db $41 ; .\n#_1CBD1A: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla the\n; elder. An orb known as the\n; Moon Pearl is in this tower.\n; Whoever holds the Moon Pearl is\n; protected so that his form will\n; not change in the Dark World.\n; You must find it and escape\n; from the tower!\n; Don't forget the Moon Pearl\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B5", + "code": "Message_00B5:\n#_1CBD1B: db $6B, $02 ; set window border\n#_1CBD1D: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CBD25: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CBD2D: db $BA, $59, $D8 ; [la]\u23b5[the]\n#_1CBD30: db $75 ; line 2\n#_1CBD31: db $1E, $25, $1D, $A6, $41, $8A, $00, $27 ; eld[er].[ ]An\n#_1CBD39: db $59, $C8, $1B, $59, $B8, $27, $59, $1A ; \u23b5[or]b\u23b5[know]n\u23b5a\n#_1CBD41: db $2C, $59, $D8 ; s\u23b5[the]\n#_1CBD44: db $76 ; line 3\n#_1CBD45: db $0C, $28, $C7, $59, $0F, $A2, $25, $59 ; Mo[on]\u23b5P[ear]l\u23b5\n#_1CBD4D: db $B5, $59, $B4, $59, $D9, $2C, $59, $DA ; [is]\u23b5[in]\u23b5[thi]s\u23b5[to]\n#_1CBD55: db $E0, $2B, $41 ; [we]r.\n#_1CBD58: db $7E ; wait for key\n#_1CBD59: db $73 ; scroll text\n#_1CBD5A: db $16, $21, $28, $A7, $A1, $21, $28, $25 ; Who[ev][er ]hol\n#_1CBD62: db $1D, $2C, $59, $D8, $59, $0C, $28, $C7 ; ds\u23b5[the]\u23b5Mo[on]\n#_1CBD6A: db $59, $0F, $A2, $25, $59, $B5 ; \u23b5P[ear]l\u23b5[is]\n#_1CBD70: db $73 ; scroll text\n#_1CBD71: db $CC, $2D, $1E, $1C, $2D, $A4, $D2, $59 ; [pro]tect[ed ][so]\u23b5\n#_1CBD79: db $D7, $2D, $59, $B0, $2C, $59, $A8, $26 ; [tha]t\u23b5[hi]s\u23b5[for]m\n#_1CBD81: db $59, $E2, $25, $25 ; \u23b5[wi]ll\n#_1CBD85: db $73 ; scroll text\n#_1CBD86: db $C2, $59, $1C, $B1, $27, $20, $1E, $59 ; [not]\u23b5c[ha]nge\u23b5\n#_1CBD8E: db $B4, $59, $D8, $59, $03, $1A, $2B, $24 ; [in]\u23b5[the]\u23b5Dark\n#_1CBD96: db $59, $16, $C8, $25, $1D, $41 ; \u23b5W[or]ld.\n#_1CBD9C: db $7E ; wait for key\n#_1CBD9D: db $73 ; scroll text\n#_1CBD9E: db $E8, $59, $BF, $D3, $59, $1F, $B4, $1D ; [You]\u23b5[mu][st]\u23b5f[in]d\n#_1CBDA6: db $59, $B6, $59, $8C, $1E, $2C, $1C, $1A ; \u23b5[it]\u23b5[and ]esca\n#_1CBDAE: db $29, $1E ; pe\n#_1CBDB0: db $73 ; scroll text\n#_1CBDB1: db $A9, $26, $59, $D8, $59, $DA, $E0, $2B ; [fro]m\u23b5[the]\u23b5[to][we]r\n#_1CBDB9: db $3E ; !\n#_1CBDBA: db $73 ; scroll text\n#_1CBDBB: db $03, $C7, $51, $2D, $59, $A8, $AB, $59 ; D[on]'t\u23b5[for][get]\u23b5\n#_1CBDC3: db $D8, $59, $0C, $28, $C7, $59, $0F, $A2 ; [the]\u23b5Mo[on]\u23b5P[ear]\n#_1CBDCB: db $25, $43 ; l\u2026\n#_1CBDCD: db $7F ; end of message\n\n; =========================================================\n; \u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\ud80c\ude17\ud80c\ude17\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\n; \u2625\u01a7\u2625\u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\n; \u2625\ud80c\ude17\u2625\u01a7\u2625\u2625\ud80c\ude17\u2625\u01a7\u01a7\ud80c\ude17\u2625\u2625\u01a7\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B6", + "code": "Message_00B6:\n#_1CBDCE: db $47, $48, $47, $49, $47, $48, $47, $49 ; \u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\n#_1CBDD6: db $47, $48, $48, $48, $48, $47, $49, $47 ; \u2625\ud80c\ude17\ud80c\ude17\ud80c\ude17\ud80c\ude17\u2625\u01a7\u2625\n#_1CBDDE: db $48, $47, $49 ; \ud80c\ude17\u2625\u01a7\n#_1CBDE1: db $75 ; line 2\n#_1CBDE2: db $47, $49, $47, $47, $48, $47, $49, $47 ; \u2625\u01a7\u2625\u2625\ud80c\ude17\u2625\u01a7\u2625\n#_1CBDEA: db $48, $47, $49 ; \ud80c\ude17\u2625\u01a7\n#_1CBDED: db $76 ; line 3\n#_1CBDEE: db $47, $48, $47, $49, $47, $47, $48, $47 ; \u2625\ud80c\ude17\u2625\u01a7\u2625\u2625\ud80c\ude17\u2625\n#_1CBDF6: db $49, $49, $48, $47, $47, $49 ; \u01a7\u01a7\ud80c\ude17\u2625\u2625\u01a7\n#_1CBDFC: db $7F ; end of message\n\n; =========================================================\n; The Hero's triumph on\n; Cataclysm's Eve\n; Wins three symbols of virtue.\n; The Master Sword he will then\n; retrieve,\n; Keeping the Knight's line true.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B7", + "code": "Message_00B7:\n#_1CBDFD: db $E6, $59, $E4, $28, $8B, $DB, $22, $2E ; [The]\u23b5[Her]o['s ][tr]iu\n#_1CBE05: db $26, $29, $21, $59, $C7 ; mph\u23b5[on]\n#_1CBE0A: db $75 ; line 2\n#_1CBE0B: db $02, $94, $1A, $1C, $25, $32, $2C, $26 ; C[at]aclysm\n#_1CBE13: db $8B, $04, $2F, $1E ; ['s ]Eve\n#_1CBE17: db $76 ; line 3\n#_1CBE18: db $16, $B4, $2C, $59, $2D, $21, $CE, $1E ; W[in]s\u23b5th[re]e\n#_1CBE20: db $59, $2C, $32, $26, $98, $25, $2C, $59 ; \u23b5sym[bo]ls\u23b5\n#_1CBE28: db $C6, $59, $2F, $22, $2B, $2D, $2E, $1E ; [of]\u23b5virtue\n#_1CBE30: db $41 ; .\n#_1CBE31: db $7E ; wait for key\n#_1CBE32: db $73 ; scroll text\n#_1CBE33: db $E6, $59, $0C, $92, $A1, $12, $30, $C8 ; [The]\u23b5M[ast][er ]Sw[or]\n#_1CBE3B: db $1D, $59, $21, $1E, $59, $E2, $25, $25 ; d\u23b5he\u23b5[wi]ll\n#_1CBE43: db $59, $D8, $27 ; \u23b5[the]n\n#_1CBE46: db $73 ; scroll text\n#_1CBE47: db $CE, $DB, $22, $A7, $1E, $42 ; [re][tr]i[ev]e,\n#_1CBE4D: db $73 ; scroll text\n#_1CBE4E: db $0A, $1E, $1E, $29, $B3, $D8, $59, $0A ; Keep[ing ][the]\u23b5K\n#_1CBE56: db $27, $22, $20, $21, $2D, $8B, $25, $B4 ; night['s ]l[in]\n#_1CBE5E: db $1E, $59, $DB, $2E, $1E, $41 ; e\u23b5[tr]ue.\n#_1CBE64: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla.\n; You must somehow make your\n; way to the top of Spectacle\n; Rock. From there you can\n; reach the Tower of Hera on\n; top of Death Mountain.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B8", + "code": "Message_00B8:\n#_1CBE65: db $6B, $02 ; set window border\n#_1CBE67: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CBE6F: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CBE77: db $BA, $41 ; [la].\n#_1CBE79: db $75 ; line 2\n#_1CBE7A: db $E8, $59, $BF, $D3, $59, $CF, $21, $28 ; [You]\u23b5[mu][st]\u23b5[some]ho\n#_1CBE82: db $30, $59, $BD, $24, $1E, $59, $E3, $2B ; w\u23b5[ma]ke\u23b5[you]r\n#_1CBE8A: db $76 ; line 3\n#_1CBE8B: db $DF, $32, $59, $DA, $59, $D8, $59, $DA ; [wa]y\u23b5[to]\u23b5[the]\u23b5[to]\n#_1CBE93: db $29, $59, $C6, $59, $12, $29, $1E, $1C ; p\u23b5[of]\u23b5Spec\n#_1CBE9B: db $2D, $1A, $1C, $25, $1E ; tacle\n#_1CBEA0: db $7E ; wait for key\n#_1CBEA1: db $73 ; scroll text\n#_1CBEA2: db $11, $28, $9C, $41, $8A, $05, $2B, $28 ; Ro[ck].[ ]Fro\n#_1CBEAA: db $26, $59, $D8, $CD, $E3, $59, $1C, $93 ; m\u23b5[the][re ][you]\u23b5c[an]\n#_1CBEB2: db $73 ; scroll text\n#_1CBEB3: db $CE, $1A, $1C, $21, $59, $D8, $59, $13 ; [re]ach\u23b5[the]\u23b5T\n#_1CBEBB: db $28, $E0, $2B, $59, $C6, $59, $E4, $1A ; o[we]r\u23b5[of]\u23b5[Her]a\n#_1CBEC3: db $59, $C7 ; \u23b5[on]\n#_1CBEC5: db $73 ; scroll text\n#_1CBEC6: db $DA, $29, $59, $C6, $59, $03, $1E, $94 ; [to]p\u23b5[of]\u23b5De[at]\n#_1CBECE: db $21, $59, $0C, $28, $2E, $27, $2D, $8F ; h\u23b5Mount[ain]\n#_1CBED6: db $41 ; .\n#_1CBED7: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla.\n; Objects exist simultaneously in\n; both worlds with similar shapes.\n; If the form of a thing changes,\n; it will affect the shape of its\n; twin in the other world.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00B9", + "code": "Message_00B9:\n#_1CBED8: db $6B, $02 ; set window border\n#_1CBEDA: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CBEE2: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CBEEA: db $BA, $41 ; [la].\n#_1CBEEC: db $75 ; line 2\n#_1CBEED: db $0E, $1B, $23, $1E, $1C, $2D, $2C, $59 ; Objects\u23b5\n#_1CBEF5: db $1E, $31, $B5, $2D, $59, $2C, $22, $BF ; ex[is]t\u23b5si[mu]\n#_1CBEFD: db $25, $2D, $93, $1E, $28, $2E, $2C, $B9 ; lt[an]eous[ly ]\n#_1CBF05: db $B4 ; [in]\n#_1CBF06: db $76 ; line 3\n#_1CBF07: db $98, $2D, $21, $59, $30, $C8, $25, $1D ; [bo]th\u23b5w[or]ld\n#_1CBF0F: db $2C, $59, $DE, $59, $2C, $22, $26, $22 ; s\u23b5[with]\u23b5simi\n#_1CBF17: db $BA, $2B, $59, $D1, $1A, $29, $1E, $2C ; [la]r\u23b5[sh]apes\n#_1CBF1F: db $41 ; .\n#_1CBF20: db $7E ; wait for key\n#_1CBF21: db $73 ; scroll text\n#_1CBF22: db $08, $1F, $59, $D8, $59, $A8, $26, $59 ; If\u23b5[the]\u23b5[for]m\u23b5\n#_1CBF2A: db $C6, $59, $1A, $59, $D5, $20, $59, $1C ; [of]\u23b5a\u23b5[thin]g\u23b5c\n#_1CBF32: db $B1, $27, $20, $1E, $2C, $42 ; [ha]nges,\n#_1CBF38: db $73 ; scroll text\n#_1CBF39: db $B6, $59, $E2, $25, $25, $59, $1A, $1F ; [it]\u23b5[wi]ll\u23b5af\n#_1CBF41: db $1F, $1E, $1C, $2D, $59, $D8, $59, $D1 ; fect\u23b5[the]\u23b5[sh]\n#_1CBF49: db $1A, $29, $1E, $59, $C6, $59, $B6, $2C ; ape\u23b5[of]\u23b5[it]s\n#_1CBF51: db $73 ; scroll text\n#_1CBF52: db $2D, $E2, $27, $59, $B4, $59, $D8, $59 ; t[wi]n\u23b5[in]\u23b5[the]\u23b5\n#_1CBF5A: db $28, $D8, $2B, $59, $30, $C8, $25, $1D ; o[the]r\u23b5w[or]ld\n#_1CBF62: db $41 ; .\n#_1CBF63: db $7F ; end of message\n\n; =========================================================\n; [LINK]\u2026 It's me, Zelda\u2026\n; Don't be deceived by the magic\n; of Blind the Thief! Be careful!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BA", + "code": "Message_00BA:\n#_1CBF64: db $6B, $02 ; set window border\n#_1CBF66: db $6A, $43, $8A, $08, $2D, $8B, $BE, $42 ; [LINK]\u2026[ ]It['s ][me],\n#_1CBF6E: db $59, $19, $1E, $25, $1D, $1A, $43 ; \u23b5Zelda\u2026\n#_1CBF75: db $75 ; line 2\n#_1CBF76: db $03, $C7, $51, $2D, $59, $97, $59, $1D ; D[on]'t\u23b5[be]\u23b5d\n#_1CBF7E: db $1E, $1C, $1E, $22, $2F, $A4, $1B, $32 ; eceiv[ed ]by\n#_1CBF86: db $59, $D8, $59, $BD, $20, $22, $1C ; \u23b5[the]\u23b5[ma]gic\n#_1CBF8D: db $76 ; line 3\n#_1CBF8E: db $C6, $59, $01, $25, $B4, $1D, $59, $D8 ; [of]\u23b5Bl[in]d\u23b5[the]\n#_1CBF96: db $59, $E7, $1E, $1F, $3E, $8A, $01, $1E ; \u23b5[Thi]ef![ ]Be\n#_1CBF9E: db $59, $1C, $1A, $CE, $1F, $2E, $25, $3E ; \u23b5ca[re]ful!\n#_1CBFA6: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla\n; the elder! You must set fire\n; to four torches to open\n; the way forward.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BB", + "code": "Message_00BB:\n#_1CBFA7: db $6B, $02 ; set window border\n#_1CBFA9: db $6A, $42, $8A, $B6, $59, $B5, $59, $08 ; [LINK],[ ][it]\u23b5[is]\u23b5I\n#_1CBFB1: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CBFB9: db $BA ; [la]\n#_1CBFBA: db $75 ; line 2\n#_1CBFBB: db $D8, $59, $1E, $25, $1D, $A6, $3E, $8A ; [the]\u23b5eld[er]![ ]\n#_1CBFC3: db $E8, $59, $BF, $D3, $59, $D0, $2D, $59 ; [You]\u23b5[mu][st]\u23b5[se]t\u23b5\n#_1CBFCB: db $1F, $22, $CE ; fi[re]\n#_1CBFCE: db $76 ; line 3\n#_1CBFCF: db $DA, $59, $1F, $28, $2E, $2B, $59, $DA ; [to]\u23b5four\u23b5[to]\n#_1CBFD7: db $2B, $9A, $2C, $59, $DA, $59, $C3 ; r[che]s\u23b5[to]\u23b5[open]\n#_1CBFDE: db $7E ; wait for key\n#_1CBFDF: db $73 ; scroll text\n#_1CBFE0: db $D8, $59, $DF, $32, $59, $A8, $DF, $2B ; [the]\u23b5[wa]y\u23b5[for][wa]r\n#_1CBFE8: db $1D, $41 ; d.\n#_1CBFEA: db $7F ; end of message\n\n; =========================================================\n; \u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\u2625\ud80c\ude17\u2625\n; \u2625\ud80c\ude17\u2625\u01a7\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\n; \u2625\ud80c\ude17\u2625\u01a7\u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\u2625\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BC", + "code": "Message_00BC:\n#_1CBFEB: db $47, $49, $47, $48, $47, $49, $47, $48 ; \u2625\u01a7\u2625\ud80c\ude17\u2625\u01a7\u2625\ud80c\ude17\n#_1CBFF3: db $47, $48, $47 ; \u2625\ud80c\ude17\u2625\n#_1CBFF6: db $75 ; line 2\n#_1CBFF7: db $47, $48, $47, $49, $47, $49, $47, $48 ; \u2625\ud80c\ude17\u2625\u01a7\u2625\u01a7\u2625\ud80c\ude17\n#_1CBFFF: db $47, $49 ; \u2625\u01a7\n#_1CC001: db $76 ; line 3\n#_1CC002: db $47, $48, $47, $49, $47, $49, $47, $48 ; \u2625\ud80c\ude17\u2625\u01a7\u2625\u01a7\u2625\ud80c\ude17\n#_1CC00A: db $47, $49, $47 ; \u2625\u01a7\u2625\n#_1CC00D: db $7F ; end of message\n\n; =========================================================\n; To open the way to go forward,\n; Make your wish here\n; And it will be granted.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BD", + "code": "Message_00BD:\n#_1CC00E: db $13, $28, $59, $C3, $59, $D8, $59, $DF ; To\u23b5[open]\u23b5[the]\u23b5[wa]\n#_1CC016: db $32, $59, $DA, $59, $AC, $59, $A8, $DF ; y\u23b5[to]\u23b5[go]\u23b5[for][wa]\n#_1CC01E: db $2B, $1D, $42 ; rd,\n#_1CC021: db $75 ; line 2\n#_1CC022: db $0C, $1A, $24, $1E, $59, $E3, $2B, $59 ; Make\u23b5[you]r\u23b5\n#_1CC02A: db $E2, $D1, $59, $AF, $1E ; [wi][sh]\u23b5[her]e\n#_1CC02F: db $76 ; line 3\n#_1CC030: db $00, $27, $1D, $59, $B6, $59, $E2, $25 ; And\u23b5[it]\u23b5[wi]l\n#_1CC038: db $25, $59, $97, $59, $20, $2B, $93, $2D ; l\u23b5[be]\u23b5gr[an]t\n#_1CC040: db $1E, $1D, $41 ; ed.\n#_1CC043: db $7F ; end of message\n\n; =========================================================\n; When Ganon is stunned, give\n; him his last moment with a\n; Silver Arrow!\n; Do you understand, [LINK]?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BE", + "code": "Message_00BE:\n#_1CC044: db $6B, $02 ; set window border\n#_1CC046: db $16, $21, $A0, $06, $93, $C7, $59, $B5 ; Wh[en ]G[an][on]\u23b5[is]\n#_1CC04E: db $59, $D3, $2E, $27, $27, $1E, $1D, $42 ; \u23b5[st]unned,\n#_1CC056: db $59, $20, $22, $2F, $1E ; \u23b5give\n#_1CC05B: db $75 ; line 2\n#_1CC05C: db $B0, $26, $59, $B0, $2C, $59, $BA, $D3 ; [hi]m\u23b5[hi]s\u23b5[la][st]\n#_1CC064: db $59, $26, $28, $BE, $27, $2D, $59, $DE ; \u23b5mo[me]nt\u23b5[with]\n#_1CC06C: db $59, $1A ; \u23b5a\n#_1CC06E: db $76 ; line 3\n#_1CC06F: db $12, $22, $25, $DD, $59, $00, $2B, $2B ; Sil[ver]\u23b5Arr\n#_1CC077: db $28, $30, $3E ; ow!\n#_1CC07A: db $7E ; wait for key\n#_1CC07B: db $73 ; scroll text\n#_1CC07C: db $03, $28, $59, $E3, $59, $2E, $27, $1D ; Do\u23b5[you]\u23b5und\n#_1CC084: db $A6, $D3, $90, $42, $59, $6A, $3F ; [er][st][and],\u23b5[LINK]?\n#_1CC08B: db $7F ; end of message\n\n; =========================================================\n; [LINK], can you hear me?\n; It's me, Zelda. I am locked in\n; Turtle Rock on top of Death\n; Mountain. I know you are doing\n; your best, but please hurry\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00BF", + "code": "Message_00BF:\n#_1CC08C: db $6B, $02 ; set window border\n#_1CC08E: db $6A, $42, $59, $99, $E3, $59, $21, $A2 ; [LINK],\u23b5[can ][you]\u23b5h[ear]\n#_1CC096: db $59, $BE, $3F ; \u23b5[me]?\n#_1CC099: db $75 ; line 2\n#_1CC09A: db $08, $2D, $8B, $BE, $42, $59, $19, $1E ; It['s ][me],\u23b5Ze\n#_1CC0A2: db $25, $1D, $1A, $41, $8A, $08, $59, $1A ; lda.[ ]I\u23b5a\n#_1CC0AA: db $26, $59, $BB, $9C, $A4, $B4 ; m\u23b5[lo][ck][ed ][in]\n#_1CC0B0: db $76 ; line 3\n#_1CC0B1: db $13, $2E, $2B, $2D, $25, $1E, $59, $11 ; Turtle\u23b5R\n#_1CC0B9: db $28, $9C, $59, $C7, $59, $DA, $29, $59 ; o[ck]\u23b5[on]\u23b5[to]p\u23b5\n#_1CC0C1: db $C6, $59, $03, $1E, $94, $21 ; [of]\u23b5De[at]h\n#_1CC0C7: db $7E ; wait for key\n#_1CC0C8: db $73 ; scroll text\n#_1CC0C9: db $0C, $28, $2E, $27, $2D, $8F, $41, $8A ; Mount[ain].[ ]\n#_1CC0D1: db $08, $59, $B8, $59, $E3, $59, $8D, $9F ; I\u23b5[know]\u23b5[you]\u23b5[are ][do]\n#_1CC0D9: db $B4, $20 ; [in]g\n#_1CC0DB: db $73 ; scroll text\n#_1CC0DC: db $E3, $2B, $59, $97, $D3, $42, $59, $1B ; [you]r\u23b5[be][st],\u23b5b\n#_1CC0E4: db $2E, $2D, $59, $CA, $1A, $D0, $59, $21 ; ut\u23b5[ple]a[se]\u23b5h\n#_1CC0EC: db $2E, $2B, $2B, $32, $43 ; urry\u2026\n#_1CC0F1: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla.\n; You must never fail to find all\n; the treasures in each dungeon.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C0", + "code": "Message_00C0:\n#_1CC0F2: db $6B, $02 ; set window border\n#_1CC0F4: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CC0FC: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CC104: db $BA, $41 ; [la].\n#_1CC106: db $75 ; line 2\n#_1CC107: db $E8, $59, $BF, $D3, $59, $27, $A7, $A1 ; [You]\u23b5[mu][st]\u23b5n[ev][er ]\n#_1CC10F: db $1F, $1A, $22, $25, $59, $DA, $59, $1F ; fail\u23b5[to]\u23b5f\n#_1CC117: db $B4, $1D, $59, $1A, $25, $25 ; [in]d\u23b5all\n#_1CC11D: db $76 ; line 3\n#_1CC11E: db $D8, $59, $DB, $1E, $1A, $2C, $2E, $CE ; [the]\u23b5[tr]easu[re]\n#_1CC126: db $2C, $59, $B4, $59, $1E, $1A, $1C, $21 ; s\u23b5[in]\u23b5each\n#_1CC12E: db $59, $1D, $2E, $27, $20, $1E, $C7, $41 ; \u23b5dunge[on].\n#_1CC136: db $7F ; end of message\n\n; =========================================================\n; Listen well, [LINK].\n; Even with the Master Sword,\n; you cannot inflict physical\n; harm on the wizard.\n; You must find a way to return\n; his own evil magic power to him.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C1", + "code": "Message_00C1:\n#_1CC137: db $6B, $02 ; set window border\n#_1CC139: db $0B, $B5, $2D, $A0, $E0, $25, $25, $42 ; L[is]t[en ][we]ll,\n#_1CC141: db $59, $6A, $41 ; \u23b5[LINK].\n#_1CC144: db $75 ; line 2\n#_1CC145: db $04, $2F, $A0, $DE, $59, $D8, $59, $0C ; Ev[en ][with]\u23b5[the]\u23b5M\n#_1CC14D: db $92, $A1, $12, $30, $C8, $1D, $42 ; [ast][er ]Sw[or]d,\n#_1CC154: db $76 ; line 3\n#_1CC155: db $E3, $59, $1C, $93, $C2, $59, $B4, $1F ; [you]\u23b5c[an][not]\u23b5[in]f\n#_1CC15D: db $25, $22, $1C, $2D, $59, $29, $21, $32 ; lict\u23b5phy\n#_1CC165: db $2C, $22, $1C, $1A, $25 ; sical\n#_1CC16A: db $7E ; wait for key\n#_1CC16B: db $73 ; scroll text\n#_1CC16C: db $B1, $2B, $26, $59, $C7, $59, $D8, $59 ; [ha]rm\u23b5[on]\u23b5[the]\u23b5\n#_1CC174: db $E2, $33, $1A, $2B, $1D, $41 ; [wi]zard.\n#_1CC17A: db $73 ; scroll text\n#_1CC17B: db $E8, $59, $BF, $D3, $59, $1F, $B4, $1D ; [You]\u23b5[mu][st]\u23b5f[in]d\n#_1CC183: db $59, $1A, $59, $DF, $32, $59, $DA, $59 ; \u23b5a\u23b5[wa]y\u23b5[to]\u23b5\n#_1CC18B: db $CE, $2D, $2E, $2B, $27 ; [re]turn\n#_1CC190: db $73 ; scroll text\n#_1CC191: db $B0, $2C, $59, $28, $30, $27, $59, $A7 ; [hi]s\u23b5own\u23b5[ev]\n#_1CC199: db $22, $25, $59, $BD, $20, $22, $1C, $59 ; il\u23b5[ma]gic\u23b5\n#_1CC1A1: db $CB, $A1, $DA, $59, $B0, $26, $41 ; [pow][er ][to]\u23b5[hi]m.\n#_1CC1A8: db $7F ; end of message\n\n; =========================================================\n; [LINK], do not use all your\n; magic power if you do not\n; possess the Medicine Of Magic.\n; Now, get ready to go into the\n; depths of this dungeon.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C2", + "code": "Message_00C2:\n#_1CC1A9: db $6B, $02 ; set window border\n#_1CC1AB: db $6A, $42, $59, $9F, $59, $C2, $59, $2E ; [LINK],\u23b5[do]\u23b5[not]\u23b5u\n#_1CC1B3: db $D0, $59, $8E, $E3, $2B ; [se]\u23b5[all ][you]r\n#_1CC1B8: db $75 ; line 2\n#_1CC1B9: db $BD, $20, $22, $1C, $59, $CB, $A1, $22 ; [ma]gic\u23b5[pow][er ]i\n#_1CC1C1: db $1F, $59, $E3, $59, $9F, $59, $C2 ; f\u23b5[you]\u23b5[do]\u23b5[not]\n#_1CC1C8: db $76 ; line 3\n#_1CC1C9: db $29, $28, $2C, $D0, $2C, $2C, $59, $D8 ; pos[se]ss\u23b5[the]\n#_1CC1D1: db $59, $0C, $1E, $9E, $1C, $B4, $1E, $59 ; \u23b5Me[di]c[in]e\u23b5\n#_1CC1D9: db $0E, $1F, $59, $0C, $1A, $20, $22, $1C ; Of\u23b5Magic\n#_1CC1E1: db $41 ; .\n#_1CC1E2: db $7E ; wait for key\n#_1CC1E3: db $73 ; scroll text\n#_1CC1E4: db $0D, $28, $30, $42, $59, $AB, $59, $CE ; Now,\u23b5[get]\u23b5[re]\n#_1CC1EC: db $1A, $1D, $32, $59, $DA, $59, $AC, $59 ; ady\u23b5[to]\u23b5[go]\u23b5\n#_1CC1F4: db $B4, $DA, $59, $D8 ; [in][to]\u23b5[the]\n#_1CC1F8: db $73 ; scroll text\n#_1CC1F9: db $1D, $1E, $29, $2D, $21, $2C, $59, $C6 ; depths\u23b5[of]\n#_1CC201: db $59, $D9, $2C, $59, $1D, $2E, $27, $20 ; \u23b5[thi]s\u23b5dung\n#_1CC209: db $1E, $C7, $41 ; e[on].\n#_1CC20C: db $7F ; end of message\n\n; =========================================================\n; [LINK], do you possess the\n; Medicine of Magic? If not, I\n; recommend against going any\n; further.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C3", + "code": "Message_00C3:\n#_1CC20D: db $6B, $02 ; set window border\n#_1CC20F: db $6A, $42, $59, $9F, $59, $E3, $59, $29 ; [LINK],\u23b5[do]\u23b5[you]\u23b5p\n#_1CC217: db $28, $2C, $D0, $2C, $2C, $59, $D8 ; os[se]ss\u23b5[the]\n#_1CC21E: db $75 ; line 2\n#_1CC21F: db $0C, $1E, $9E, $1C, $B4, $1E, $59, $C6 ; Me[di]c[in]e\u23b5[of]\n#_1CC227: db $59, $0C, $1A, $20, $22, $1C, $3F, $8A ; \u23b5Magic?[ ]\n#_1CC22F: db $08, $1F, $59, $C2, $42, $59, $08 ; If\u23b5[not],\u23b5I\n#_1CC236: db $76 ; line 3\n#_1CC237: db $CE, $9B, $BE, $27, $1D, $59, $1A, $20 ; [re][com][me]nd\u23b5ag\n#_1CC23F: db $8F, $D3, $59, $AC, $B3, $93, $32 ; [ain][st]\u23b5[go][ing ][an]y\n#_1CC246: db $7E ; wait for key\n#_1CC247: db $73 ; scroll text\n#_1CC248: db $1F, $2E, $2B, $D8, $2B, $41 ; fur[the]r.\n#_1CC24E: db $7F ; end of message\n\n; =========================================================\n; [LINK], the magic flames will\n; protect you inside this icy\n; dungeon.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C4", + "code": "Message_00C4:\n#_1CC24F: db $6B, $02 ; set window border\n#_1CC251: db $6A, $42, $59, $D8, $59, $BD, $20, $22 ; [LINK],\u23b5[the]\u23b5[ma]gi\n#_1CC259: db $1C, $59, $1F, $BA, $BE, $2C, $59, $E2 ; c\u23b5f[la][me]s\u23b5[wi]\n#_1CC261: db $25, $25 ; ll\n#_1CC263: db $75 ; line 2\n#_1CC264: db $CC, $2D, $1E, $1C, $2D, $59, $E3, $59 ; [pro]tect\u23b5[you]\u23b5\n#_1CC26C: db $B4, $2C, $22, $1D, $1E, $59, $D9, $2C ; [in]side\u23b5[thi]s\n#_1CC274: db $59, $22, $1C, $32 ; \u23b5icy\n#_1CC278: db $76 ; line 3\n#_1CC279: db $1D, $2E, $27, $20, $1E, $C7, $41 ; dunge[on].\n#_1CC280: db $7F ; end of message\n\n; =========================================================\n; You cannot destroy the\n; Skeleton Knight with the sword\n; alone. When he collapses, he is\n; vulnerable to another weapon.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C5", + "code": "Message_00C5:\n#_1CC281: db $6B, $02 ; set window border\n#_1CC283: db $E8, $59, $1C, $93, $C2, $59, $9D, $DB ; [You]\u23b5c[an][not]\u23b5[des][tr]\n#_1CC28B: db $28, $32, $59, $D8 ; oy\u23b5[the]\n#_1CC28F: db $75 ; line 2\n#_1CC290: db $12, $24, $1E, $25, $1E, $DA, $27, $59 ; Skele[to]n\u23b5\n#_1CC298: db $0A, $27, $B2, $DE, $59, $D8, $59, $2C ; Kn[ight ][with]\u23b5[the]\u23b5s\n#_1CC2A0: db $30, $C8, $1D ; w[or]d\n#_1CC2A3: db $76 ; line 3\n#_1CC2A4: db $1A, $BB, $27, $1E, $41, $8A, $16, $21 ; a[lo]ne.[ ]Wh\n#_1CC2AC: db $A0, $21, $1E, $59, $1C, $28, $25, $BA ; [en ]he\u23b5col[la]\n#_1CC2B4: db $29, $D0, $2C, $42, $59, $21, $1E, $59 ; p[se]s,\u23b5he\u23b5\n#_1CC2BC: db $B5 ; [is]\n#_1CC2BD: db $7E ; wait for key\n#_1CC2BE: db $73 ; scroll text\n#_1CC2BF: db $2F, $2E, $25, $27, $A6, $1A, $95, $59 ; vuln[er]a[ble]\u23b5\n#_1CC2C7: db $DA, $59, $93, $28, $D8, $2B, $59, $E0 ; [to]\u23b5[an]o[the]r\u23b5[we]\n#_1CC2CF: db $1A, $29, $C7, $41 ; ap[on].\n#_1CC2D3: db $7F ; end of message\n\n; =========================================================\n; [LINK], it is I, Sahasrahla the\n; elder. I have some advice\u2026\n; In the dungeons, you can gaze\n; into the Magic Mirror to return\n; to the entrance at any time.\n; Do not forget this!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C6", + "code": "Message_00C6:\n#_1CC2D4: db $6B, $02 ; set window border\n#_1CC2D6: db $6A, $42, $59, $B6, $59, $B5, $59, $08 ; [LINK],\u23b5[it]\u23b5[is]\u23b5I\n#_1CC2DE: db $42, $59, $12, $1A, $AE, $2B, $1A, $21 ; ,\u23b5Sa[has]rah\n#_1CC2E6: db $BA, $59, $D8 ; [la]\u23b5[the]\n#_1CC2E9: db $75 ; line 2\n#_1CC2EA: db $1E, $25, $1D, $A6, $41, $8A, $08, $59 ; eld[er].[ ]I\u23b5\n#_1CC2F2: db $AD, $59, $CF, $59, $1A, $1D, $2F, $22 ; [have]\u23b5[some]\u23b5advi\n#_1CC2FA: db $1C, $1E, $43 ; ce\u2026\n#_1CC2FD: db $76 ; line 3\n#_1CC2FE: db $08, $27, $59, $D8, $59, $1D, $2E, $27 ; In\u23b5[the]\u23b5dun\n#_1CC306: db $20, $1E, $C7, $2C, $42, $59, $E3, $59 ; ge[on]s,\u23b5[you]\u23b5\n#_1CC30E: db $99, $20, $1A, $33, $1E ; [can ]gaze\n#_1CC313: db $7E ; wait for key\n#_1CC314: db $73 ; scroll text\n#_1CC315: db $B4, $DA, $59, $D8, $59, $0C, $1A, $20 ; [in][to]\u23b5[the]\u23b5Mag\n#_1CC31D: db $22, $1C, $59, $0C, $22, $2B, $2B, $C8 ; ic\u23b5Mirr[or]\n#_1CC325: db $59, $DA, $59, $CE, $2D, $2E, $2B, $27 ; \u23b5[to]\u23b5[re]turn\n#_1CC32D: db $73 ; scroll text\n#_1CC32E: db $DA, $59, $D8, $59, $A3, $2B, $93, $1C ; [to]\u23b5[the]\u23b5[ent]r[an]c\n#_1CC336: db $1E, $59, $91, $93, $32, $59, $2D, $22 ; e\u23b5[at ][an]y\u23b5ti\n#_1CC33E: db $BE, $41 ; [me].\n#_1CC340: db $73 ; scroll text\n#_1CC341: db $03, $28, $59, $C2, $59, $A8, $AB, $59 ; Do\u23b5[not]\u23b5[for][get]\u23b5\n#_1CC349: db $D9, $2C, $3E ; [thi]s!\n#_1CC34C: db $7F ; end of message\n\n; =========================================================\n; My name is Chris Houlihan.\n; This is my top secret room.\n; Keep it between us, OK?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C7", + "code": "Message_00C7:\n#_1CC34D: db $0C, $32, $59, $27, $1A, $BE, $59, $B5 ; My\u23b5na[me]\u23b5[is]\n#_1CC355: db $59, $02, $21, $2B, $B5, $59, $07, $28 ; \u23b5Chr[is]\u23b5Ho\n#_1CC35D: db $2E, $25, $22, $B1, $27, $41 ; uli[ha]n.\n#_1CC363: db $75 ; line 2\n#_1CC364: db $E7, $2C, $59, $B5, $59, $26, $32, $59 ; [Thi]s\u23b5[is]\u23b5my\u23b5\n#_1CC36C: db $DA, $29, $59, $D0, $1C, $CE, $2D, $59 ; [to]p\u23b5[se]c[re]t\u23b5\n#_1CC374: db $2B, $28, $28, $26, $41 ; room.\n#_1CC379: db $76 ; line 3\n#_1CC37A: db $0A, $1E, $1E, $29, $59, $B6, $59, $97 ; Keep\u23b5[it]\u23b5[be]\n#_1CC382: db $2D, $E0, $A0, $2E, $2C, $42, $59, $0E ; t[we][en ]us,\u23b5O\n#_1CC38A: db $0A, $3F ; K?\n#_1CC38C: db $7F ; end of message\n\n; =========================================================\n; You caught a bee!\n; What will you do?\n; > Keep it in a bottle\n; Set it free\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C8", + "code": "Message_00C8:\n#_1CC38D: db $E8, $59, $1C, $1A, $2E, $20, $21, $2D ; [You]\u23b5caught\n#_1CC395: db $59, $1A, $59, $97, $1E, $3E ; \u23b5a\u23b5[be]e!\n#_1CC39B: db $7E ; wait for key\n#_1CC39C: db $75 ; line 2\n#_1CC39D: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_1CC3A5: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_1CC3A9: db $76 ; line 3\n#_1CC3AA: db $88, $44, $59, $0A, $1E, $1E, $29, $59 ; [ ]>\u23b5Keep\u23b5\n#_1CC3B2: db $B6, $59, $B4, $59, $1A, $59, $98, $2D ; [it]\u23b5[in]\u23b5a\u23b5[bo]t\n#_1CC3BA: db $2D, $25, $1E ; tle\n#_1CC3BD: db $73 ; scroll text\n#_1CC3BE: db $88, $89, $12, $1E, $2D, $59, $B6, $59 ; [ ][ ]Set\u23b5[it]\u23b5\n#_1CC3C6: db $1F, $CE, $1E ; f[re]e\n#_1CC3C9: db $68 ; choose 2 indented\n#_1CC3CA: db $7F ; end of message\n\n; =========================================================\n; You caught a faerie!\n; What will you do?\n; > Keep it in a bottle\n; Set it free\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00C9", + "code": "Message_00C9:\n#_1CC3CB: db $E8, $59, $1C, $1A, $2E, $20, $21, $2D ; [You]\u23b5caught\n#_1CC3D3: db $59, $1A, $59, $1F, $1A, $A6, $22, $1E ; \u23b5a\u23b5fa[er]ie\n#_1CC3DB: db $3E ; !\n#_1CC3DC: db $7E ; wait for key\n#_1CC3DD: db $75 ; line 2\n#_1CC3DE: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_1CC3E6: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_1CC3EA: db $76 ; line 3\n#_1CC3EB: db $88, $44, $59, $0A, $1E, $1E, $29, $59 ; [ ]>\u23b5Keep\u23b5\n#_1CC3F3: db $B6, $59, $B4, $59, $1A, $59, $98, $2D ; [it]\u23b5[in]\u23b5a\u23b5[bo]t\n#_1CC3FB: db $2D, $25, $1E ; tle\n#_1CC3FE: db $73 ; scroll text\n#_1CC3FF: db $88, $89, $12, $1E, $2D, $59, $B6, $59 ; [ ][ ]Set\u23b5[it]\u23b5\n#_1CC407: db $1F, $CE, $1E ; f[re]e\n#_1CC40A: db $68 ; choose 2 indented\n#_1CC40B: db $7F ; end of message\n\n; =========================================================\n; You don't have any empty\n; bottles. You have no choice\u2026\n; Just set it free.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CA", + "code": "Message_00CA:\n#_1CC40C: db $E8, $59, $9F, $C0, $AD, $59, $93, $32 ; [You]\u23b5[do][n't ][have]\u23b5[an]y\n#_1CC414: db $59, $1E, $26, $29, $2D, $32 ; \u23b5empty\n#_1CC41A: db $75 ; line 2\n#_1CC41B: db $98, $2D, $2D, $25, $1E, $2C, $41, $8A ; [bo]ttles.[ ]\n#_1CC423: db $E8, $59, $AD, $59, $27, $28, $59, $1C ; [You]\u23b5[have]\u23b5no\u23b5c\n#_1CC42B: db $21, $28, $22, $1C, $1E, $43 ; hoice\u2026\n#_1CC431: db $76 ; line 3\n#_1CC432: db $09, $2E, $D3, $59, $D0, $2D, $59, $B6 ; Ju[st]\u23b5[se]t\u23b5[it]\n#_1CC43A: db $59, $1F, $CE, $1E, $41 ; \u23b5f[re]e.\n#_1CC43F: db $7F ; end of message\n\n; =========================================================\n; This try your time was\n; [#3][#2] minutes [#1][#0] seconds.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CB", + "code": "Message_00CB:\n#_1CC440: db $E7, $2C, $59, $DB, $32, $59, $E3, $2B ; [Thi]s\u23b5[tr]y\u23b5[you]r\n#_1CC448: db $59, $2D, $22, $BE, $59, $DF, $2C ; \u23b5ti[me]\u23b5[wa]s\n#_1CC44F: db $75 ; line 2\n#_1CC450: db $6C, $03, $6C, $02, $59, $26, $B4, $2E ; [#3][#2]\u23b5m[in]u\n#_1CC458: db $2D, $1E, $2C, $59, $6C, $01, $6C, $00 ; tes\u23b5[#1][#0]\n#_1CC460: db $59, $D0, $1C, $C7, $1D, $2C, $41 ; \u23b5[se]c[on]ds.\n#_1CC467: db $7F ; end of message\n\n; =========================================================\n; If you can reach the goal\n; within 15 seconds, we will give\n; you something good.\n; Ready, Set\u2026 \u2026 GO!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CC", + "code": "Message_00CC:\n#_1CC468: db $08, $1F, $59, $E3, $59, $99, $CE, $1A ; If\u23b5[you]\u23b5[can ][re]a\n#_1CC470: db $1C, $21, $59, $D8, $59, $AC, $1A, $25 ; ch\u23b5[the]\u23b5[go]al\n#_1CC478: db $75 ; line 2\n#_1CC479: db $DE, $B4, $59, $35, $39, $59, $D0, $1C ; [with][in]\u23b515\u23b5[se]c\n#_1CC481: db $C7, $1D, $2C, $42, $59, $E0, $59, $E2 ; [on]ds,\u23b5[we]\u23b5[wi]\n#_1CC489: db $25, $25, $59, $20, $22, $2F, $1E ; ll\u23b5give\n#_1CC490: db $76 ; line 3\n#_1CC491: db $E3, $59, $CF, $D5, $20, $59, $AC, $28 ; [you]\u23b5[some][thin]g\u23b5[go]o\n#_1CC499: db $1D, $41 ; d.\n#_1CC49B: db $7E ; wait for key\n#_1CC49C: db $73 ; scroll text\n#_1CC49D: db $11, $1E, $1A, $1D, $32, $42, $59, $12 ; Ready,\u23b5S\n#_1CC4A5: db $1E, $2D, $43, $59, $43, $8A, $06, $0E ; et\u2026\u23b5\u2026[ ]GO\n#_1CC4AD: db $3E ; !\n#_1CC4AE: db $7F ; end of message\n\n; =========================================================\n; You qualified!\n; Congratulations!\n; I present you with a piece of\n; Heart!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CD", + "code": "Message_00CD:\n#_1CC4AF: db $E8, $59, $2A, $2E, $1A, $25, $22, $1F ; [You]\u23b5qualif\n#_1CC4B7: db $22, $1E, $1D, $3E ; ied!\n#_1CC4BB: db $75 ; line 2\n#_1CC4BC: db $02, $C7, $20, $2B, $94, $2E, $BA, $2D ; C[on]gr[at]u[la]t\n#_1CC4C4: db $22, $C7, $2C, $3E ; i[on]s!\n#_1CC4C8: db $76 ; line 3\n#_1CC4C9: db $08, $59, $29, $CE, $D0, $27, $2D, $59 ; I\u23b5p[re][se]nt\u23b5\n#_1CC4D1: db $E3, $59, $DE, $59, $1A, $59, $29, $22 ; [you]\u23b5[with]\u23b5a\u23b5pi\n#_1CC4D9: db $1E, $1C, $1E, $59, $C6 ; ece\u23b5[of]\n#_1CC4DE: db $7E ; wait for key\n#_1CC4DF: db $73 ; scroll text\n#_1CC4E0: db $07, $A2, $2D, $3E ; H[ear]t!\n#_1CC4E4: db $7F ; end of message\n\n; =========================================================\n; You're not qualified.\n; Too bad!\n; Why don't you try again?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CE", + "code": "Message_00CE:\n#_1CC4E5: db $E8, $51, $CD, $C2, $59, $2A, $2E, $1A ; [You]'[re ][not]\u23b5qua\n#_1CC4ED: db $25, $22, $1F, $22, $1E, $1D, $41 ; lified.\n#_1CC4F4: db $75 ; line 2\n#_1CC4F5: db $13, $28, $28, $59, $96, $1D, $3E ; Too\u23b5[ba]d!\n#_1CC4FC: db $76 ; line 3\n#_1CC4FD: db $16, $21, $32, $59, $9F, $C0, $E3, $59 ; Why\u23b5[do][n't ][you]\u23b5\n#_1CC505: db $DB, $32, $59, $1A, $20, $8F, $3F ; [tr]y\u23b5ag[ain]?\n#_1CC50C: db $7F ; end of message\n\n; =========================================================\n; I don't have anything more to\n; give you.\n; I'm sorry!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00CF", + "code": "Message_00CF:\n#_1CC50D: db $08, $59, $9F, $C0, $AD, $59, $93, $32 ; I\u23b5[do][n't ][have]\u23b5[an]y\n#_1CC515: db $D5, $20, $59, $26, $C8, $1E, $59, $DA ; [thin]g\u23b5m[or]e\u23b5[to]\n#_1CC51D: db $75 ; line 2\n#_1CC51E: db $AA, $E3, $41 ; [give ][you].\n#_1CC521: db $76 ; line 3\n#_1CC522: db $08, $51, $26, $59, $D2, $2B, $2B, $32 ; I'm\u23b5[so]rry\n#_1CC52A: db $3E ; !\n#_1CC52B: db $7F ; end of message\n\n; =========================================================\n; You have to enter the maze\n; from the proper entrance or I\n; can't clock your time\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D0", + "code": "Message_00D0:\n#_1CC52C: db $E8, $59, $AD, $59, $DA, $59, $A3, $A1 ; [You]\u23b5[have]\u23b5[to]\u23b5[ent][er ]\n#_1CC534: db $D8, $59, $BD, $33, $1E ; [the]\u23b5[ma]ze\n#_1CC539: db $75 ; line 2\n#_1CC53A: db $A9, $26, $59, $D8, $59, $CC, $C9, $59 ; [fro]m\u23b5[the]\u23b5[pro][per]\u23b5\n#_1CC542: db $A3, $2B, $93, $1C, $1E, $59, $C8, $59 ; [ent]r[an]ce\u23b5[or]\u23b5\n#_1CC54A: db $08 ; I\n#_1CC54B: db $76 ; line 3\n#_1CC54C: db $1C, $93, $51, $2D, $59, $1C, $BB, $9C ; c[an]'t\u23b5c[lo][ck]\n#_1CC554: db $59, $E3, $2B, $59, $2D, $22, $BE, $43 ; \u23b5[you]r\u23b5ti[me]\u2026\n#_1CC55C: db $7F ; end of message\n\n; =========================================================\n; You, sir! Have you been going\n; through life without one of my\n; hold-anything bottles?\n; Well step right up and make\n; your life complete! I've got\n; one on sale now for the low,\n; low price of 100 Rupees!\n; What do you say? Interested?\n; > I'll take one\n; Don't need it\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D1", + "code": "Message_00D1:\n#_1CC55D: db $E8, $42, $59, $2C, $22, $2B, $3E, $8A ; [You],\u23b5sir![ ]\n#_1CC565: db $07, $1A, $2F, $1E, $59, $E3, $59, $97 ; Have\u23b5[you]\u23b5[be]\n#_1CC56D: db $A0, $AC, $B4, $20 ; [en ][go][in]g\n#_1CC571: db $75 ; line 2\n#_1CC572: db $2D, $21, $2B, $28, $2E, $20, $21, $59 ; through\u23b5\n#_1CC57A: db $25, $22, $1F, $1E, $59, $DE, $C5, $C7 ; life\u23b5[with][out ][on]\n#_1CC582: db $1E, $59, $C6, $59, $26, $32 ; e\u23b5[of]\u23b5my\n#_1CC588: db $76 ; line 3\n#_1CC589: db $21, $28, $25, $1D, $40, $93, $32, $D5 ; hold-[an]y[thin]\n#_1CC591: db $20, $59, $98, $2D, $2D, $25, $1E, $2C ; g\u23b5[bo]ttles\n#_1CC599: db $3F ; ?\n#_1CC59A: db $7E ; wait for key\n#_1CC59B: db $73 ; scroll text\n#_1CC59C: db $16, $1E, $25, $25, $59, $D3, $1E, $29 ; Well\u23b5[st]ep\n#_1CC5A4: db $59, $2B, $B2, $DC, $59, $8C, $BD, $24 ; \u23b5r[ight ][up]\u23b5[and ][ma]k\n#_1CC5AC: db $1E ; e\n#_1CC5AD: db $73 ; scroll text\n#_1CC5AE: db $E3, $2B, $59, $25, $22, $1F, $1E, $59 ; [you]r\u23b5life\u23b5\n#_1CC5B6: db $9B, $CA, $2D, $1E, $3E, $8A, $08, $51 ; [com][ple]te![ ]I'\n#_1CC5BE: db $2F, $1E, $59, $AC, $2D ; ve\u23b5[go]t\n#_1CC5C3: db $73 ; scroll text\n#_1CC5C4: db $C7, $1E, $59, $C7, $59, $2C, $1A, $25 ; [on]e\u23b5[on]\u23b5sal\n#_1CC5CC: db $1E, $59, $27, $28, $30, $59, $A8, $59 ; e\u23b5now\u23b5[for]\u23b5\n#_1CC5D4: db $D8, $59, $BB, $30, $42 ; [the]\u23b5[lo]w,\n#_1CC5D9: db $7E ; wait for key\n#_1CC5DA: db $73 ; scroll text\n#_1CC5DB: db $BB, $30, $59, $29, $2B, $22, $1C, $1E ; [lo]w\u23b5price\n#_1CC5E3: db $59, $C6, $59, $35, $34, $34, $59, $11 ; \u23b5[of]\u23b5100\u23b5R\n#_1CC5EB: db $DC, $1E, $1E, $2C, $3E ; [up]ees!\n#_1CC5F0: db $7E ; wait for key\n#_1CC5F1: db $73 ; scroll text\n#_1CC5F2: db $16, $B1, $2D, $59, $9F, $59, $E3, $59 ; W[ha]t\u23b5[do]\u23b5[you]\u23b5\n#_1CC5FA: db $2C, $1A, $32, $3F, $8A, $08, $27, $D6 ; say?[ ]In[ter]\n#_1CC602: db $1E, $D3, $1E, $1D, $3F ; e[st]ed?\n#_1CC607: db $73 ; scroll text\n#_1CC608: db $88, $44, $59, $08, $51, $25, $25, $59 ; [ ]>\u23b5I'll\u23b5\n#_1CC610: db $2D, $1A, $24, $1E, $59, $C7, $1E ; take\u23b5[on]e\n#_1CC617: db $73 ; scroll text\n#_1CC618: db $88, $89, $03, $C7, $51, $2D, $59, $27 ; [ ][ ]D[on]'t\u23b5n\n#_1CC620: db $1E, $A4, $B6 ; e[ed ][it]\n#_1CC623: db $68 ; choose 2 indented\n#_1CC624: db $7F ; end of message\n\n; =========================================================\n; Good buy! Thanks a lot!\n; Now, hold it above your head\n; for the whole world to see, OK?\n; It's good for business!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D2", + "code": "Message_00D2:\n#_1CC625: db $06, $28, $28, $1D, $59, $1B, $2E, $32 ; Good\u23b5buy\n#_1CC62D: db $3E, $8A, $E5, $27, $24, $2C, $59, $1A ; ![ ][Tha]nks\u23b5a\n#_1CC635: db $59, $BB, $2D, $3E ; \u23b5[lo]t!\n#_1CC639: db $75 ; line 2\n#_1CC63A: db $0D, $28, $30, $42, $59, $21, $28, $25 ; Now,\u23b5hol\n#_1CC642: db $1D, $59, $B6, $59, $1A, $98, $2F, $1E ; d\u23b5[it]\u23b5a[bo]ve\n#_1CC64A: db $59, $E3, $2B, $59, $21, $1E, $1A, $1D ; \u23b5[you]r\u23b5head\n#_1CC652: db $76 ; line 3\n#_1CC653: db $A8, $59, $D8, $59, $E1, $28, $25, $1E ; [for]\u23b5[the]\u23b5[wh]ole\n#_1CC65B: db $59, $30, $C8, $25, $1D, $59, $DA, $59 ; \u23b5w[or]ld\u23b5[to]\u23b5\n#_1CC663: db $D0, $1E, $42, $59, $0E, $0A, $3F ; [se]e,\u23b5OK?\n#_1CC66A: db $7E ; wait for key\n#_1CC66B: db $73 ; scroll text\n#_1CC66C: db $08, $2D, $8B, $AC, $28, $1D, $59, $A8 ; It['s ][go]od\u23b5[for]\n#_1CC674: db $59, $1B, $2E, $2C, $B4, $1E, $2C, $2C ; \u23b5bus[in]ess\n#_1CC67C: db $3E ; !\n#_1CC67D: db $7F ; end of message\n\n; =========================================================\n; So you're broke, eh? Too bad\u2026\n; Come back after you earn more\n; Rupees. It might still be here.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D3", + "code": "Message_00D3:\n#_1CC67E: db $12, $28, $59, $E3, $51, $CD, $1B, $2B ; So\u23b5[you]'[re ]br\n#_1CC686: db $28, $24, $1E, $42, $59, $1E, $21, $3F ; oke,\u23b5eh?\n#_1CC68E: db $8A, $13, $28, $28, $59, $96, $1D, $43 ; [ ]Too\u23b5[ba]d\u2026\n#_1CC696: db $75 ; line 2\n#_1CC697: db $02, $28, $BE, $59, $96, $9C, $59, $1A ; Co[me]\u23b5[ba][ck]\u23b5a\n#_1CC69F: db $1F, $D4, $E3, $59, $A2, $27, $59, $26 ; f[ter ][you]\u23b5[ear]n\u23b5m\n#_1CC6A7: db $C8, $1E ; [or]e\n#_1CC6A9: db $76 ; line 3\n#_1CC6AA: db $11, $DC, $1E, $1E, $2C, $41, $8A, $08 ; R[up]ees.[ ]I\n#_1CC6B2: db $2D, $59, $26, $B2, $D3, $22, $25, $25 ; t\u23b5m[ight ][st]ill\n#_1CC6BA: db $59, $97, $59, $AF, $1E, $41 ; \u23b5[be]\u23b5[her]e.\n#_1CC6C0: db $7F ; end of message\n\n; =========================================================\n; I'm all sold out of bottles.\n; Come back later, OK?\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D4", + "code": "Message_00D4:\n#_1CC6C1: db $08, $51, $26, $59, $8E, $D2, $25, $1D ; I'm\u23b5[all ][so]ld\n#_1CC6C9: db $59, $C5, $C6, $59, $98, $2D, $2D, $25 ; \u23b5[out ][of]\u23b5[bo]ttl\n#_1CC6D1: db $1E, $2C, $41 ; es.\n#_1CC6D4: db $75 ; line 2\n#_1CC6D5: db $02, $28, $BE, $59, $96, $9C, $59, $BA ; Co[me]\u23b5[ba][ck]\u23b5[la]\n#_1CC6DD: db $D6, $42, $59, $0E, $0A, $3F, $59 ; [ter],\u23b5OK?\u23b5\n#_1CC6E4: db $76 ; line 3\n#_1CC6E5: db $59, $43, $59, $43, $59, $43 ; \u23b5\u2026\u23b5\u2026\u23b5\u2026\n#_1CC6EB: db $7F ; end of message\n\n; =========================================================\n; Wow! I've never seen such a\n; rare bug! I'll buy it for\n; 100 Rupees, OK? Done!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D5", + "code": "Message_00D5:\n#_1CC6EC: db $16, $28, $30, $3E, $8A, $08, $51, $2F ; Wow![ ]I'v\n#_1CC6F4: db $1E, $59, $27, $A7, $A1, $D0, $A0, $2C ; e\u23b5n[ev][er ][se][en ]s\n#_1CC6FC: db $2E, $1C, $21, $59, $1A ; uch\u23b5a\n#_1CC701: db $75 ; line 2\n#_1CC702: db $2B, $8D, $1B, $2E, $20, $3E, $8A, $08 ; r[are ]bug![ ]I\n#_1CC70A: db $51, $25, $25, $59, $1B, $2E, $32, $59 ; 'll\u23b5buy\u23b5\n#_1CC712: db $B6, $59, $A8 ; [it]\u23b5[for]\n#_1CC715: db $76 ; line 3\n#_1CC716: db $35, $34, $34, $59, $11, $DC, $1E, $1E ; 100\u23b5R[up]ee\n#_1CC71E: db $2C, $42, $59, $0E, $0A, $3F, $8A, $03 ; s,\u23b5OK?[ ]D\n#_1CC726: db $C7, $1E, $3E ; [on]e!\n#_1CC729: db $7F ; end of message\n\n; =========================================================\n; Hey! They say eating fish\n; makes you smart. You have to\n; give me this fish for this\n; stuff, OK? Done!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D6", + "code": "Message_00D6:\n#_1CC72A: db $07, $1E, $32, $3E, $8A, $E6, $32, $59 ; Hey![ ][The]y\u23b5\n#_1CC732: db $2C, $1A, $32, $59, $1E, $94, $B3, $1F ; say\u23b5e[at][ing ]f\n#_1CC73A: db $B5, $21 ; [is]h\n#_1CC73C: db $75 ; line 2\n#_1CC73D: db $BD, $24, $1E, $2C, $59, $E3, $59, $2C ; [ma]kes\u23b5[you]\u23b5s\n#_1CC745: db $BD, $2B, $2D, $41, $8A, $E8, $59, $AD ; [ma]rt.[ ][You]\u23b5[have]\n#_1CC74D: db $59, $DA ; \u23b5[to]\n#_1CC74F: db $76 ; line 3\n#_1CC750: db $AA, $BE, $59, $D9, $2C, $59, $1F, $B5 ; [give ][me]\u23b5[thi]s\u23b5f[is]\n#_1CC758: db $21, $59, $A8, $59, $D9, $2C ; h\u23b5[for]\u23b5[thi]s\n#_1CC75E: db $7E ; wait for key\n#_1CC75F: db $73 ; scroll text\n#_1CC760: db $D3, $2E, $1F, $1F, $42, $59, $0E, $0A ; [st]uff,\u23b5OK\n#_1CC768: db $3F, $8A, $03, $C7, $1E, $3E ; ?[ ]D[on]e!\n#_1CC76E: db $7F ; end of message\n\n; =========================================================\n; Yo! [LINK]! You seem to be in\n; a heap of trouble, but this is\n; all I can give you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D7", + "code": "Message_00D7:\n#_1CC76F: db $18, $28, $3E, $8A, $6A, $3E, $59, $E8 ; Yo![ ][LINK]!\u23b5[You]\n#_1CC777: db $59, $D0, $1E, $26, $59, $DA, $59, $97 ; \u23b5[se]em\u23b5[to]\u23b5[be]\n#_1CC77F: db $59, $B4 ; \u23b5[in]\n#_1CC781: db $75 ; line 2\n#_1CC782: db $1A, $59, $21, $1E, $1A, $29, $59, $C6 ; a\u23b5heap\u23b5[of]\n#_1CC78A: db $59, $DB, $28, $2E, $95, $42, $59, $1B ; \u23b5[tr]ou[ble],\u23b5b\n#_1CC792: db $2E, $2D, $59, $D9, $2C, $59, $B5 ; ut\u23b5[thi]s\u23b5[is]\n#_1CC799: db $76 ; line 3\n#_1CC79A: db $8E, $08, $59, $99, $AA, $E3, $41 ; [all ]I\u23b5[can ][give ][you].\n#_1CC7A1: db $7F ; end of message\n\n; =========================================================\n; Hey you!\n; Welcome!\n;\n; Ask us to do anything!\n; > Temper my sword\n; I just dropped by\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D8", + "code": "Message_00D8:\n#_1CC7A2: db $07, $1E, $32, $59, $E3, $3E ; Hey\u23b5[you]!\n#_1CC7A8: db $75 ; line 2\n#_1CC7A9: db $16, $1E, $25, $9B, $1E, $3E ; Wel[com]e!\n#_1CC7AF: db $76 ; line 3\n#_1CC7B0: db $7E ; wait for key\n#_1CC7B1: db $73 ; scroll text\n#_1CC7B2: db $00, $2C, $24, $59, $2E, $2C, $59, $DA ; Ask\u23b5us\u23b5[to]\n#_1CC7BA: db $59, $9F, $59, $93, $32, $D5, $20, $3E ; \u23b5[do]\u23b5[an]y[thin]g!\n#_1CC7C2: db $73 ; scroll text\n#_1CC7C3: db $88, $44, $59, $13, $1E, $26, $C9, $59 ; [ ]>\u23b5Tem[per]\u23b5\n#_1CC7CB: db $26, $32, $59, $2C, $30, $C8, $1D ; my\u23b5sw[or]d\n#_1CC7D2: db $73 ; scroll text\n#_1CC7D3: db $88, $89, $08, $59, $B7, $59, $1D, $2B ; [ ][ ]I\u23b5[just]\u23b5dr\n#_1CC7DB: db $28, $29, $29, $A4, $1B, $32 ; opp[ed ]by\n#_1CC7E1: db $68 ; choose 2 indented\n#_1CC7E2: db $7F ; end of message\n\n; =========================================================\n; I'll give you a big discount!\n; >Sword Tempered\u2026 10 Rupees\n; Wait a minute\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00D9", + "code": "Message_00D9:\n#_1CC7E3: db $08, $51, $25, $25, $59, $AA, $E3, $59 ; I'll\u23b5[give ][you]\u23b5\n#_1CC7EB: db $1A, $59, $1B, $22, $20, $59, $9E, $2C ; a\u23b5big\u23b5[di]s\n#_1CC7F3: db $1C, $28, $2E, $27, $2D, $3E ; count!\n#_1CC7F9: db $75 ; line 2\n#_1CC7FA: db $88, $44, $12, $30, $C8, $1D, $59, $13 ; [ ]>Sw[or]d\u23b5T\n#_1CC802: db $1E, $26, $C9, $1E, $1D, $43, $59, $35 ; em[per]ed\u2026\u23b51\n#_1CC80A: db $34, $59, $11, $DC, $1E, $1E, $2C ; 0\u23b5R[up]ees\n#_1CC811: db $76 ; line 3\n#_1CC812: db $88, $8A, $16, $1A, $B6, $59, $1A, $59 ; [ ][ ]Wa[it]\u23b5a\u23b5\n#_1CC81A: db $26, $B4, $2E, $2D, $1E ; m[in]ute\n#_1CC81F: db $68 ; choose 2 indented\n#_1CC820: db $7F ; end of message\n\n; =========================================================\n; Tempered, eh? Are you sure?\n; > Yes\n; I changed my mind\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DA", + "code": "Message_00DA:\n#_1CC821: db $13, $1E, $26, $C9, $1E, $1D, $42, $59 ; Tem[per]ed,\u23b5\n#_1CC829: db $1E, $21, $3F, $8A, $00, $CD, $E3, $59 ; eh?[ ]A[re ][you]\u23b5\n#_1CC831: db $2C, $2E, $CE, $3F ; su[re]?\n#_1CC835: db $75 ; line 2\n#_1CC836: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1CC83C: db $76 ; line 3\n#_1CC83D: db $88, $89, $08, $59, $1C, $B1, $27, $20 ; [ ][ ]I\u23b5c[ha]ng\n#_1CC845: db $A4, $26, $32, $59, $26, $B4, $1D ; [ed ]my\u23b5m[in]d\n#_1CC84C: db $68 ; choose 2 indented\n#_1CC84D: db $7F ; end of message\n\n; =========================================================\n; Well, we can't make it any\n; stronger than that\u2026 Sorry!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DB", + "code": "Message_00DB:\n#_1CC84E: db $16, $1E, $25, $25, $42, $59, $E0, $59 ; Well,\u23b5[we]\u23b5\n#_1CC856: db $1C, $93, $51, $2D, $59, $BD, $24, $1E ; c[an]'t\u23b5[ma]ke\n#_1CC85E: db $59, $B6, $59, $93, $32 ; \u23b5[it]\u23b5[an]y\n#_1CC863: db $75 ; line 2\n#_1CC864: db $D3, $2B, $C7, $20, $A1, $D7, $27, $59 ; [st]r[on]g[er ][tha]n\u23b5\n#_1CC86C: db $D7, $2D, $43, $59, $12, $C8, $2B, $32 ; [tha]t\u2026\u23b5S[or]ry\n#_1CC874: db $3E ; !\n#_1CC875: db $7F ; end of message\n\n; =========================================================\n; Drop by again anytime you\n; want to. Hi ho! Hi ho!\n; We're off to work!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DC", + "code": "Message_00DC:\n#_1CC876: db $03, $2B, $28, $29, $59, $1B, $32, $59 ; Drop\u23b5by\u23b5\n#_1CC87E: db $1A, $20, $8F, $59, $93, $32, $2D, $22 ; ag[ain]\u23b5[an]yti\n#_1CC886: db $BE, $59, $E3 ; [me]\u23b5[you]\n#_1CC889: db $75 ; line 2\n#_1CC88A: db $DF, $27, $2D, $59, $DA, $41, $8A, $07 ; [wa]nt\u23b5[to].[ ]H\n#_1CC892: db $22, $59, $21, $28, $3E, $8A, $07, $22 ; i\u23b5ho![ ]Hi\n#_1CC89A: db $59, $21, $28, $3E ; \u23b5ho!\n#_1CC89E: db $76 ; line 3\n#_1CC89F: db $16, $1E, $51, $CD, $C6, $1F, $59, $DA ; We'[re ][of]f\u23b5[to]\n#_1CC8A7: db $59, $30, $C8, $24, $3E ; \u23b5w[or]k!\n#_1CC8AC: db $7F ; end of message\n\n; =========================================================\n; All right, no problem.\n; We'll have to keep your sword\n; for a while.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DD", + "code": "Message_00DD:\n#_1CC8AD: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_1CC8B5: db $2D, $42, $59, $27, $28, $59, $CC, $95 ; t,\u23b5no\u23b5[pro][ble]\n#_1CC8BD: db $26, $41 ; m.\n#_1CC8BF: db $75 ; line 2\n#_1CC8C0: db $16, $1E, $51, $25, $25, $59, $AD, $59 ; We'll\u23b5[have]\u23b5\n#_1CC8C8: db $DA, $59, $24, $1E, $1E, $29, $59, $E3 ; [to]\u23b5keep\u23b5[you]\n#_1CC8D0: db $2B, $59, $2C, $30, $C8, $1D ; r\u23b5sw[or]d\n#_1CC8D6: db $76 ; line 3\n#_1CC8D7: db $A8, $59, $1A, $59, $E1, $22, $25, $1E ; [for]\u23b5a\u23b5[wh]ile\n#_1CC8DF: db $41 ; .\n#_1CC8E0: db $7F ; end of message\n\n; =========================================================\n; Your sword is tempered-up!\n; Now hold it!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DE", + "code": "Message_00DE:\n#_1CC8E1: db $E8, $2B, $59, $2C, $30, $C8, $1D, $59 ; [You]r\u23b5sw[or]d\u23b5\n#_1CC8E9: db $B5, $59, $2D, $1E, $26, $C9, $1E, $1D ; [is]\u23b5tem[per]ed\n#_1CC8F1: db $40, $DC, $3E ; -[up]!\n#_1CC8F4: db $75 ; line 2\n#_1CC8F5: db $0D, $28, $30, $59, $21, $28, $25, $1D ; Now\u23b5hold\n#_1CC8FD: db $59, $B6, $3E ; \u23b5[it]!\n#_1CC900: db $7F ; end of message\n\n; =========================================================\n; If my lost partner returns,\n; we can temper your sword,\n; but now, I can't do\n; anything for you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00DF", + "code": "Message_00DF:\n#_1CC901: db $08, $1F, $59, $26, $32, $59, $BB, $D3 ; If\u23b5my\u23b5[lo][st]\n#_1CC909: db $59, $29, $1A, $2B, $2D, $27, $A1, $CE ; \u23b5partn[er ][re]\n#_1CC911: db $2D, $2E, $2B, $27, $2C, $42 ; turns,\n#_1CC917: db $75 ; line 2\n#_1CC918: db $E0, $59, $99, $2D, $1E, $26, $C9, $59 ; [we]\u23b5[can ]tem[per]\u23b5\n#_1CC920: db $E3, $2B, $59, $2C, $30, $C8, $1D, $42 ; [you]r\u23b5sw[or]d,\n#_1CC928: db $76 ; line 3\n#_1CC929: db $1B, $2E, $2D, $59, $27, $28, $30, $42 ; but\u23b5now,\n#_1CC931: db $59, $08, $59, $1C, $93, $51, $2D, $59 ; \u23b5I\u23b5c[an]'t\u23b5\n#_1CC939: db $9F ; [do]\n#_1CC93A: db $7E ; wait for key\n#_1CC93B: db $73 ; scroll text\n#_1CC93C: db $93, $32, $D5, $20, $59, $A8, $59, $E3 ; [an]y[thin]g\u23b5[for]\u23b5[you]\n#_1CC944: db $41 ; .\n#_1CC945: db $7F ; end of message\n\n; =========================================================\n; Oh! Happy days are here again!\n; You found my partner!\n; \u2026 We are very happy now\u2026\n; Drop by here again!\n; At that time, we will temper\n; your sword perfectly!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E0", + "code": "Message_00E0:\n#_1CC946: db $0E, $21, $3E, $8A, $07, $1A, $29, $29 ; Oh![ ]Happ\n#_1CC94E: db $32, $59, $1D, $1A, $32, $2C, $59, $8D ; y\u23b5days\u23b5[are ]\n#_1CC956: db $AF, $1E, $59, $1A, $20, $8F, $3E ; [her]e\u23b5ag[ain]!\n#_1CC95D: db $75 ; line 2\n#_1CC95E: db $E8, $59, $1F, $C4, $59, $26, $32, $59 ; [You]\u23b5f[ound]\u23b5my\u23b5\n#_1CC966: db $29, $1A, $2B, $2D, $27, $A6, $3E ; partn[er]!\n#_1CC96D: db $76 ; line 3\n#_1CC96E: db $43, $8A, $16, $1E, $59, $8D, $DD, $32 ; \u2026[ ]We\u23b5[are ][ver]y\n#_1CC976: db $59, $B1, $29, $29, $32, $59, $27, $28 ; \u23b5[ha]ppy\u23b5no\n#_1CC97E: db $30, $43 ; w\u2026\n#_1CC980: db $7E ; wait for key\n#_1CC981: db $73 ; scroll text\n#_1CC982: db $03, $2B, $28, $29, $59, $1B, $32, $59 ; Drop\u23b5by\u23b5\n#_1CC98A: db $AF, $1E, $59, $1A, $20, $8F, $3E ; [her]e\u23b5ag[ain]!\n#_1CC991: db $73 ; scroll text\n#_1CC992: db $00, $2D, $59, $D7, $2D, $59, $2D, $22 ; At\u23b5[tha]t\u23b5ti\n#_1CC99A: db $BE, $42, $59, $E0, $59, $E2, $25, $25 ; [me],\u23b5[we]\u23b5[wi]ll\n#_1CC9A2: db $59, $2D, $1E, $26, $C9 ; \u23b5tem[per]\n#_1CC9A7: db $73 ; scroll text\n#_1CC9A8: db $E3, $2B, $59, $2C, $30, $C8, $1D, $59 ; [you]r\u23b5sw[or]d\u23b5\n#_1CC9B0: db $C9, $1F, $1E, $1C, $2D, $25, $32, $3E ; [per]fectly!\n#_1CC9B8: db $7F ; end of message\n\n; =========================================================\n; Ribbit ribbit\u2026 Your body did\n; not change! You are not just\n; an ordinary guy, are you?\n; I used to live in Kakariko Town.\n; I wonder what my partner is\n; doing there without me\u2026\n; Ribbit! I have a request of\n; you.\n; Please take me to my partner!\n; Please! Ribbit! Please!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E1", + "code": "Message_00E1:\n#_1CC9B9: db $11, $22, $1B, $1B, $B6, $59, $2B, $22 ; Ribb[it]\u23b5ri\n#_1CC9C1: db $1B, $1B, $B6, $43, $8A, $E8, $2B, $59 ; bb[it]\u2026[ ][You]r\u23b5\n#_1CC9C9: db $98, $1D, $32, $59, $9E, $1D ; [bo]dy\u23b5[di]d\n#_1CC9CF: db $75 ; line 2\n#_1CC9D0: db $C2, $59, $1C, $B1, $27, $20, $1E, $3E ; [not]\u23b5c[ha]nge!\n#_1CC9D8: db $8A, $E8, $59, $8D, $C2, $59, $B7 ; [ ][You]\u23b5[are ][not]\u23b5[just]\n#_1CC9DF: db $76 ; line 3\n#_1CC9E0: db $93, $59, $C8, $9E, $27, $1A, $2B, $32 ; [an]\u23b5[or][di]nary\n#_1CC9E8: db $59, $20, $2E, $32, $42, $59, $8D, $E3 ; \u23b5guy,\u23b5[are ][you]\n#_1CC9F0: db $3F ; ?\n#_1CC9F1: db $7E ; wait for key\n#_1CC9F2: db $73 ; scroll text\n#_1CC9F3: db $08, $59, $2E, $D0, $1D, $59, $DA, $59 ; I\u23b5u[se]d\u23b5[to]\u23b5\n#_1CC9FB: db $25, $22, $2F, $1E, $59, $B4, $59, $0A ; live\u23b5[in]\u23b5K\n#_1CCA03: db $1A, $24, $1A, $2B, $22, $24, $28, $59 ; akariko\u23b5\n#_1CCA0B: db $13, $28, $30, $27, $41 ; Town.\n#_1CCA10: db $73 ; scroll text\n#_1CCA11: db $08, $59, $30, $C7, $1D, $A1, $E1, $91 ; I\u23b5w[on]d[er ][wh][at ]\n#_1CCA19: db $26, $32, $59, $29, $1A, $2B, $2D, $27 ; my\u23b5partn\n#_1CCA21: db $A1, $B5 ; [er ][is]\n#_1CCA23: db $73 ; scroll text\n#_1CCA24: db $9F, $B3, $D8, $CD, $DE, $C5, $BE, $43 ; [do][ing ][the][re ][with][out ][me]\u2026\n#_1CCA2C: db $7E ; wait for key\n#_1CCA2D: db $73 ; scroll text\n#_1CCA2E: db $11, $22, $1B, $1B, $B6, $3E, $8A, $08 ; Ribb[it]![ ]I\n#_1CCA36: db $59, $AD, $59, $1A, $59, $CE, $2A, $2E ; \u23b5[have]\u23b5a\u23b5[re]qu\n#_1CCA3E: db $1E, $D3, $59, $C6 ; e[st]\u23b5[of]\n#_1CCA42: db $73 ; scroll text\n#_1CCA43: db $E3, $41 ; [you].\n#_1CCA45: db $73 ; scroll text\n#_1CCA46: db $0F, $25, $1E, $1A, $D0, $59, $2D, $1A ; Plea[se]\u23b5ta\n#_1CCA4E: db $24, $1E, $59, $BE, $59, $DA, $59, $26 ; ke\u23b5[me]\u23b5[to]\u23b5m\n#_1CCA56: db $32, $59, $29, $1A, $2B, $2D, $27, $A6 ; y\u23b5partn[er]\n#_1CCA5E: db $3E ; !\n#_1CCA5F: db $7E ; wait for key\n#_1CCA60: db $73 ; scroll text\n#_1CCA61: db $0F, $25, $1E, $1A, $D0, $3E, $8A, $11 ; Plea[se]![ ]R\n#_1CCA69: db $22, $1B, $1B, $B6, $3E, $8A, $0F, $25 ; ibb[it]![ ]Pl\n#_1CCA71: db $1E, $1A, $D0, $3E ; ea[se]!\n#_1CCA75: db $7F ; end of message\n\n; =========================================================\n; I'm sorry, we're not done yet.\n; Come back after a while.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E2", + "code": "Message_00E2:\n#_1CCA76: db $08, $51, $26, $59, $D2, $2B, $2B, $32 ; I'm\u23b5[so]rry\n#_1CCA7E: db $42, $59, $E0, $51, $CD, $C2, $59, $9F ; ,\u23b5[we]'[re ][not]\u23b5[do]\n#_1CCA86: db $27, $1E, $59, $32, $1E, $2D, $41 ; ne\u23b5yet.\n#_1CCA8D: db $75 ; line 2\n#_1CCA8E: db $02, $28, $BE, $59, $96, $9C, $59, $1A ; Co[me]\u23b5[ba][ck]\u23b5a\n#_1CCA96: db $1F, $D4, $1A, $59, $E1, $22, $25, $1E ; f[ter ]a\u23b5[wh]ile\n#_1CCA9E: db $41 ; .\n#_1CCA9F: db $7F ; end of message\n\n; =========================================================\n; Thank you!\n;\n; Thank you!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E3", + "code": "Message_00E3:\n#_1CCAA0: db $E5, $27, $24, $59, $E3, $3E ; [Tha]nk\u23b5[you]!\n#_1CCAA6: db $75 ; line 2\n#_1CCAA7: db $76 ; line 3\n#_1CCAA8: db $E5, $27, $24, $59, $E3, $3E ; [Tha]nk\u23b5[you]!\n#_1CCAAE: db $7F ; end of message\n\n; =========================================================\n; Hey hey, amateurs shouldn't\n; try to do this. You're just\n; getting in the way!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E4", + "code": "Message_00E4:\n#_1CCAAF: db $07, $1E, $32, $59, $21, $1E, $32, $42 ; Hey\u23b5hey,\n#_1CCAB7: db $59, $1A, $BD, $2D, $1E, $2E, $2B, $2C ; \u23b5a[ma]teurs\n#_1CCABF: db $59, $D1, $28, $2E, $25, $1D, $27, $51 ; \u23b5[sh]ouldn'\n#_1CCAC7: db $2D ; t\n#_1CCAC8: db $75 ; line 2\n#_1CCAC9: db $DB, $32, $59, $DA, $59, $9F, $59, $D9 ; [tr]y\u23b5[to]\u23b5[do]\u23b5[thi]\n#_1CCAD1: db $2C, $41, $8A, $E8, $51, $CD, $B7 ; s.[ ][You]'[re ][just]\n#_1CCAD8: db $76 ; line 3\n#_1CCAD9: db $AB, $2D, $B3, $B4, $59, $D8, $59, $DF ; [get]t[ing ][in]\u23b5[the]\u23b5[wa]\n#_1CCAE1: db $32, $3E ; y!\n#_1CCAE3: db $7F ; end of message\n\n; =========================================================\n; After wandering into this world\n; I turned into this shape.\n; \u2026 \u2026 \u2026\n; I enjoyed playing the flute in\n; the original world\u2026\n; \u2026 \u2026 \u2026\n; There was a small grove where\n; many animals gathered. I want\n; to see that place again\u2026\n; I buried my flute there with\n; some flower seeds.\n;\n; Will you try to find it for me?\n; > Yes\n; No way\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E5", + "code": "Message_00E5:\n#_1CCAE4: db $00, $1F, $D4, $DF, $27, $1D, $A6, $B3 ; Af[ter ][wa]nd[er][ing ]\n#_1CCAEC: db $B4, $DA, $59, $D9, $2C, $59, $30, $C8 ; [in][to]\u23b5[thi]s\u23b5w[or]\n#_1CCAF4: db $25, $1D ; ld\n#_1CCAF6: db $75 ; line 2\n#_1CCAF7: db $08, $59, $2D, $2E, $2B, $27, $A4, $B4 ; I\u23b5turn[ed ][in]\n#_1CCAFF: db $DA, $59, $D9, $2C, $59, $D1, $1A, $29 ; [to]\u23b5[thi]s\u23b5[sh]ap\n#_1CCB07: db $1E, $41 ; e.\n#_1CCB09: db $76 ; line 3\n#_1CCB0A: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CCB0F: db $7E ; wait for key\n#_1CCB10: db $73 ; scroll text\n#_1CCB11: db $08, $59, $A5, $23, $28, $32, $A4, $29 ; I\u23b5[en]joy[ed ]p\n#_1CCB19: db $BA, $32, $B3, $D8, $59, $1F, $25, $2E ; [la]y[ing ][the]\u23b5flu\n#_1CCB21: db $2D, $1E, $59, $B4 ; te\u23b5[in]\n#_1CCB25: db $73 ; scroll text\n#_1CCB26: db $D8, $59, $C8, $22, $20, $B4, $1A, $25 ; [the]\u23b5[or]ig[in]al\n#_1CCB2E: db $59, $30, $C8, $25, $1D, $43 ; \u23b5w[or]ld\u2026\n#_1CCB34: db $73 ; scroll text\n#_1CCB35: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CCB3A: db $7E ; wait for key\n#_1CCB3B: db $73 ; scroll text\n#_1CCB3C: db $E6, $CD, $DF, $2C, $59, $1A, $59, $2C ; [The][re ][wa]s\u23b5a\u23b5s\n#_1CCB44: db $BD, $25, $25, $59, $20, $2B, $28, $2F ; [ma]ll\u23b5grov\n#_1CCB4C: db $1E, $59, $E1, $A6, $1E ; e\u23b5[wh][er]e\n#_1CCB51: db $73 ; scroll text\n#_1CCB52: db $BC, $32, $59, $93, $22, $BD, $25, $2C ; [man]y\u23b5[an]i[ma]ls\n#_1CCB5A: db $59, $20, $94, $AF, $1E, $1D, $41, $8A ; \u23b5g[at][her]ed.[ ]\n#_1CCB62: db $08, $59, $DF, $27, $2D ; I\u23b5[wa]nt\n#_1CCB67: db $73 ; scroll text\n#_1CCB68: db $DA, $59, $D0, $1E, $59, $D7, $2D, $59 ; [to]\u23b5[se]e\u23b5[tha]t\u23b5\n#_1CCB70: db $29, $BA, $1C, $1E, $59, $1A, $20, $8F ; p[la]ce\u23b5ag[ain]\n#_1CCB78: db $43 ; \u2026\n#_1CCB79: db $7E ; wait for key\n#_1CCB7A: db $73 ; scroll text\n#_1CCB7B: db $08, $59, $1B, $2E, $2B, $22, $A4, $26 ; I\u23b5buri[ed ]m\n#_1CCB83: db $32, $59, $1F, $25, $2E, $2D, $1E, $59 ; y\u23b5flute\u23b5\n#_1CCB8B: db $D8, $CD, $DE ; [the][re ][with]\n#_1CCB8E: db $73 ; scroll text\n#_1CCB8F: db $CF, $59, $1F, $BB, $E0, $2B, $59, $D0 ; [some]\u23b5f[lo][we]r\u23b5[se]\n#_1CCB97: db $1E, $1D, $2C, $41 ; eds.\n#_1CCB9B: db $73 ; scroll text\n#_1CCB9C: db $7E ; wait for key\n#_1CCB9D: db $73 ; scroll text\n#_1CCB9E: db $16, $22, $25, $25, $59, $E3, $59, $DB ; Will\u23b5[you]\u23b5[tr]\n#_1CCBA6: db $32, $59, $DA, $59, $1F, $B4, $1D, $59 ; y\u23b5[to]\u23b5f[in]d\u23b5\n#_1CCBAE: db $B6, $59, $A8, $59, $BE, $3F ; [it]\u23b5[for]\u23b5[me]?\n#_1CCBB4: db $73 ; scroll text\n#_1CCBB5: db $88, $44, $59, $18, $1E, $2C ; [ ]>\u23b5Yes\n#_1CCBBB: db $73 ; scroll text\n#_1CCBBC: db $88, $89, $0D, $28, $59, $DF, $32 ; [ ][ ]No\u23b5[wa]y\n#_1CCBC3: db $68 ; choose 2 indented\n#_1CCBC4: db $7F ; end of message\n\n; =========================================================\n; Then I will lend you my shovel.\n; Good luck!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E6", + "code": "Message_00E6:\n#_1CCBC5: db $E6, $27, $59, $08, $59, $E2, $25, $25 ; [The]n\u23b5I\u23b5[wi]ll\n#_1CCBCD: db $59, $25, $A5, $1D, $59, $E3, $59, $26 ; \u23b5l[en]d\u23b5[you]\u23b5m\n#_1CCBD5: db $32, $59, $D1, $28, $2F, $1E, $25, $41 ; y\u23b5[sh]ovel.\n#_1CCBDD: db $75 ; line 2\n#_1CCBDE: db $06, $28, $28, $1D, $59, $25, $2E, $9C ; Good\u23b5lu[ck]\n#_1CCBE6: db $3E ; !\n#_1CCBE7: db $7F ; end of message\n\n; =========================================================\n; \u2026 \u2026 \u2026\n; I see. I won't ask you again\u2026\n; Good bye.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E7", + "code": "Message_00E7:\n#_1CCBE8: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CCBED: db $75 ; line 2\n#_1CCBEE: db $08, $59, $D0, $1E, $41, $8A, $08, $59 ; I\u23b5[se]e.[ ]I\u23b5\n#_1CCBF6: db $30, $C7, $51, $2D, $59, $1A, $2C, $24 ; w[on]'t\u23b5ask\n#_1CCBFE: db $59, $E3, $59, $1A, $20, $8F, $43 ; \u23b5[you]\u23b5ag[ain]\u2026\n#_1CCC05: db $76 ; line 3\n#_1CCC06: db $06, $28, $28, $1D, $59, $1B, $32, $1E ; Good\u23b5bye\n#_1CCC0E: db $41 ; .\n#_1CCC0F: db $7F ; end of message\n\n; =========================================================\n; Did you find my flute?\n; \u2026 \u2026 \u2026\n; Please keep looking for it\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E8", + "code": "Message_00E8:\n#_1CCC10: db $03, $22, $1D, $59, $E3, $59, $1F, $B4 ; Did\u23b5[you]\u23b5f[in]\n#_1CCC18: db $1D, $59, $26, $32, $59, $1F, $25, $2E ; d\u23b5my\u23b5flu\n#_1CCC20: db $2D, $1E, $3F ; te?\n#_1CCC23: db $75 ; line 2\n#_1CCC24: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CCC29: db $76 ; line 3\n#_1CCC2A: db $0F, $25, $1E, $1A, $D0, $59, $24, $1E ; Plea[se]\u23b5ke\n#_1CCC32: db $1E, $29, $59, $BB, $28, $24, $B3, $A8 ; ep\u23b5[lo]ok[ing ][for]\n#_1CCC3A: db $59, $B6, $43 ; \u23b5[it]\u2026\n#_1CCC3D: db $7F ; end of message\n\n; =========================================================\n; Thank you, [LINK]. But it\n; looks like I can't play my flute\n; any more. Please take it.\n; If by chance you go to the\n; village I lived in, please give\n; it to a tired old man you will\n; find there.\n; \u2026 \u2026 \u2026\n; Well, my mind is getting\n; hazy\u2026\n; Please let me hear the sound of\n; the flute one last time\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00E9", + "code": "Message_00E9:\n#_1CCC3E: db $E5, $27, $24, $59, $E3, $42, $59, $6A ; [Tha]nk\u23b5[you],\u23b5[LINK]\n#_1CCC46: db $41, $8A, $01, $2E, $2D, $59, $B6 ; .[ ]But\u23b5[it]\n#_1CCC4D: db $75 ; line 2\n#_1CCC4E: db $BB, $28, $24, $2C, $59, $25, $22, $24 ; [lo]oks\u23b5lik\n#_1CCC56: db $1E, $59, $08, $59, $1C, $93, $51, $2D ; e\u23b5I\u23b5c[an]'t\n#_1CCC5E: db $59, $29, $BA, $32, $59, $26, $32, $59 ; \u23b5p[la]y\u23b5my\u23b5\n#_1CCC66: db $1F, $25, $2E, $2D, $1E ; flute\n#_1CCC6B: db $76 ; line 3\n#_1CCC6C: db $93, $32, $59, $26, $C8, $1E, $41, $8A ; [an]y\u23b5m[or]e.[ ]\n#_1CCC74: db $0F, $25, $1E, $1A, $D0, $59, $2D, $1A ; Plea[se]\u23b5ta\n#_1CCC7C: db $24, $1E, $59, $B6, $41 ; ke\u23b5[it].\n#_1CCC81: db $7E ; wait for key\n#_1CCC82: db $73 ; scroll text\n#_1CCC83: db $08, $1F, $59, $1B, $32, $59, $1C, $B1 ; If\u23b5by\u23b5c[ha]\n#_1CCC8B: db $27, $1C, $1E, $59, $E3, $59, $AC, $59 ; nce\u23b5[you]\u23b5[go]\u23b5\n#_1CCC93: db $DA, $59, $D8 ; [to]\u23b5[the]\n#_1CCC96: db $73 ; scroll text\n#_1CCC97: db $2F, $22, $25, $BA, $20, $1E, $59, $08 ; vil[la]ge\u23b5I\n#_1CCC9F: db $59, $25, $22, $2F, $A4, $B4, $42, $59 ; \u23b5liv[ed ][in],\u23b5\n#_1CCCA7: db $CA, $1A, $D0, $59, $20, $22, $2F, $1E ; [ple]a[se]\u23b5give\n#_1CCCAF: db $73 ; scroll text\n#_1CCCB0: db $B6, $59, $DA, $59, $1A, $59, $2D, $22 ; [it]\u23b5[to]\u23b5a\u23b5ti\n#_1CCCB8: db $CE, $1D, $59, $28, $25, $1D, $59, $BC ; [re]d\u23b5old\u23b5[man]\n#_1CCCC0: db $59, $E3, $59, $E2, $25, $25 ; \u23b5[you]\u23b5[wi]ll\n#_1CCCC6: db $7E ; wait for key\n#_1CCCC7: db $73 ; scroll text\n#_1CCCC8: db $1F, $B4, $1D, $59, $D8, $CE, $41 ; f[in]d\u23b5[the][re].\n#_1CCCCF: db $73 ; scroll text\n#_1CCCD0: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CCCD5: db $73 ; scroll text\n#_1CCCD6: db $16, $1E, $25, $25, $42, $8A, $26, $32 ; Well,[ ]my\n#_1CCCDE: db $59, $26, $B4, $1D, $59, $B5, $59, $AB ; \u23b5m[in]d\u23b5[is]\u23b5[get]\n#_1CCCE6: db $2D, $B4, $20 ; t[in]g\n#_1CCCE9: db $7E ; wait for key\n#_1CCCEA: db $73 ; scroll text\n#_1CCCEB: db $B1, $33, $32, $43 ; [ha]zy\u2026\n#_1CCCEF: db $73 ; scroll text\n#_1CCCF0: db $0F, $25, $1E, $1A, $D0, $59, $25, $1E ; Plea[se]\u23b5le\n#_1CCCF8: db $2D, $59, $BE, $59, $21, $A2, $59, $D8 ; t\u23b5[me]\u23b5h[ear]\u23b5[the]\n#_1CCD00: db $59, $D2, $2E, $27, $1D, $59, $C6 ; \u23b5[so]und\u23b5[of]\n#_1CCD07: db $73 ; scroll text\n#_1CCD08: db $D8, $59, $1F, $25, $2E, $2D, $1E, $59 ; [the]\u23b5flute\u23b5\n#_1CCD10: db $C7, $1E, $59, $BA, $D3, $59, $2D, $22 ; [on]e\u23b5[la][st]\u23b5ti\n#_1CCD18: db $BE, $43 ; [me]\u2026\n#_1CCD1A: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will find the elder\n; Sahasrahla\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00EA", + "code": "Message_00EA:\n#_1CCD1B: db $6D, $01 ; set window position\n#_1CCD1D: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CCD25: db $1C, $2E, $2C, $3E ; cus!\n#_1CCD29: db $75 ; line 2\n#_1CCD2A: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CCD32: db $1D, $59, $D8, $59, $1E, $25, $1D, $A6 ; d\u23b5[the]\u23b5eld[er]\n#_1CCD3A: db $76 ; line 3\n#_1CCD3B: db $12, $1A, $AE, $2B, $1A, $21, $BA, $43 ; Sa[has]rah[la]\u2026\n#_1CCD43: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; You will open a desert lock with\n; the Book of Mudora.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00EB", + "code": "Message_00EB:\n#_1CCD44: db $6D, $01 ; set window position\n#_1CCD46: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CCD4E: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CCD56: db $33, $1A, $26, $3E ; zam!\n#_1CCD5A: db $75 ; line 2\n#_1CCD5B: db $E8, $59, $E2, $25, $25, $59, $C3, $59 ; [You]\u23b5[wi]ll\u23b5[open]\u23b5\n#_1CCD63: db $1A, $59, $9D, $A6, $2D, $59, $BB, $9C ; a\u23b5[des][er]t\u23b5[lo][ck]\n#_1CCD6B: db $59, $DE ; \u23b5[with]\n#_1CCD6D: db $76 ; line 3\n#_1CCD6E: db $D8, $59, $01, $28, $28, $24, $59, $C6 ; [the]\u23b5Book\u23b5[of]\n#_1CCD76: db $59, $0C, $2E, $9F, $2B, $1A, $41 ; \u23b5Mu[do]ra.\n#_1CCD7D: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will find a member of the\n; wise men's line in the desert.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00EC", + "code": "Message_00EC:\n#_1CCD7E: db $6D, $01 ; set window position\n#_1CCD80: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CCD88: db $1C, $2E, $2C, $3E ; cus!\n#_1CCD8C: db $75 ; line 2\n#_1CCD8D: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CCD95: db $1D, $59, $1A, $59, $BE, $26, $97, $2B ; d\u23b5a\u23b5[me]m[be]r\n#_1CCD9D: db $59, $C6, $59, $D8 ; \u23b5[of]\u23b5[the]\n#_1CCDA1: db $76 ; line 3\n#_1CCDA2: db $E2, $D0, $59, $BE, $27, $8B, $25, $B4 ; [wi][se]\u23b5[me]n['s ]l[in]\n#_1CCDAA: db $1E, $59, $B4, $59, $D8, $59, $9D, $A6 ; e\u23b5[in]\u23b5[the]\u23b5[des][er]\n#_1CCDB2: db $2D, $41 ; t.\n#_1CCDB4: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; You will find a mushroom lover\n; at the Magic Shop\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00ED", + "code": "Message_00ED:\n#_1CCDB5: db $6D, $01 ; set window position\n#_1CCDB7: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CCDBF: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CCDC7: db $33, $1A, $26, $3E ; zam!\n#_1CCDCB: db $75 ; line 2\n#_1CCDCC: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CCDD4: db $1D, $59, $1A, $59, $BF, $D1, $2B, $28 ; d\u23b5a\u23b5[mu][sh]ro\n#_1CCDDC: db $28, $26, $59, $BB, $DD ; om\u23b5[lo][ver]\n#_1CCDE1: db $76 ; line 3\n#_1CCDE2: db $91, $D8, $59, $0C, $1A, $20, $22, $1C ; [at ][the]\u23b5Magic\n#_1CCDEA: db $59, $12, $21, $28, $29, $43 ; \u23b5Shop\u2026\n#_1CCDF0: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will meet Zora living in a\n; lake at the river's source\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00EE", + "code": "Message_00EE:\n#_1CCDF1: db $6D, $01 ; set window position\n#_1CCDF3: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CCDFB: db $1C, $2E, $2C, $3E ; cus!\n#_1CCDFF: db $75 ; line 2\n#_1CCE00: db $E8, $59, $E2, $25, $25, $59, $BE, $1E ; [You]\u23b5[wi]ll\u23b5[me]e\n#_1CCE08: db $2D, $59, $19, $C8, $1A, $59, $25, $22 ; t\u23b5Z[or]a\u23b5li\n#_1CCE10: db $2F, $B3, $B4, $59, $1A ; v[ing ][in]\u23b5a\n#_1CCE15: db $76 ; line 3\n#_1CCE16: db $BA, $24, $1E, $59, $91, $D8, $59, $2B ; [la]ke\u23b5[at ][the]\u23b5r\n#_1CCE1E: db $22, $DD, $8B, $D2, $2E, $2B, $1C, $1E ; i[ver]['s ][so]urce\n#_1CCE26: db $43 ; \u2026\n#_1CCE27: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; The true Hero will find the\n; Moon Pearl in the\n; mountain tower.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00EF", + "code": "Message_00EF:\n#_1CCE28: db $6D, $01 ; set window position\n#_1CCE2A: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CCE32: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CCE3A: db $33, $1A, $26, $3E ; zam!\n#_1CCE3E: db $75 ; line 2\n#_1CCE3F: db $E6, $59, $DB, $2E, $1E, $59, $E4, $28 ; [The]\u23b5[tr]ue\u23b5[Her]o\n#_1CCE47: db $59, $E2, $25, $25, $59, $1F, $B4, $1D ; \u23b5[wi]ll\u23b5f[in]d\n#_1CCE4F: db $59, $D8 ; \u23b5[the]\n#_1CCE51: db $76 ; line 3\n#_1CCE52: db $0C, $28, $C7, $59, $0F, $A2, $25, $59 ; Mo[on]\u23b5P[ear]l\u23b5\n#_1CCE5A: db $B4, $59, $D8 ; [in]\u23b5[the]\n#_1CCE5D: db $7E ; wait for key\n#_1CCE5E: db $73 ; scroll text\n#_1CCE5F: db $26, $28, $2E, $27, $2D, $8F, $59, $DA ; mount[ain]\u23b5[to]\n#_1CCE67: db $E0, $2B, $41 ; [we]r.\n#_1CCE6A: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; Even the mighty Master Sword\n; cannot harm the wizard's body.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F0", + "code": "Message_00F0:\n#_1CCE6B: db $6D, $01 ; set window position\n#_1CCE6D: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CCE75: db $1C, $2E, $2C, $3E ; cus!\n#_1CCE79: db $75 ; line 2\n#_1CCE7A: db $04, $2F, $A0, $D8, $59, $26, $22, $20 ; Ev[en ][the]\u23b5mig\n#_1CCE82: db $21, $2D, $32, $59, $0C, $92, $A1, $12 ; hty\u23b5M[ast][er ]S\n#_1CCE8A: db $30, $C8, $1D ; w[or]d\n#_1CCE8D: db $76 ; line 3\n#_1CCE8E: db $1C, $93, $C2, $59, $B1, $2B, $26, $59 ; c[an][not]\u23b5[ha]rm\u23b5\n#_1CCE96: db $D8, $59, $E2, $33, $1A, $2B, $1D, $8B ; [the]\u23b5[wi]zard['s ]\n#_1CCE9E: db $98, $1D, $32, $41 ; [bo]dy.\n#_1CCEA2: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; The true Hero will jump into the\n; well near the smithy's shop.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F1", + "code": "Message_00F1:\n#_1CCEA3: db $6D, $01 ; set window position\n#_1CCEA5: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CCEAD: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CCEB5: db $33, $1A, $26, $3E ; zam!\n#_1CCEB9: db $75 ; line 2\n#_1CCEBA: db $E6, $59, $DB, $2E, $1E, $59, $E4, $28 ; [The]\u23b5[tr]ue\u23b5[Her]o\n#_1CCEC2: db $59, $E2, $25, $25, $59, $23, $2E, $26 ; \u23b5[wi]ll\u23b5jum\n#_1CCECA: db $29, $59, $B4, $DA, $59, $D8 ; p\u23b5[in][to]\u23b5[the]\n#_1CCED0: db $76 ; line 3\n#_1CCED1: db $E0, $25, $25, $59, $27, $A2, $59, $D8 ; [we]ll\u23b5n[ear]\u23b5[the]\n#_1CCED9: db $59, $2C, $26, $B6, $21, $32, $8B, $D1 ; \u23b5sm[it]hy['s ][sh]\n#_1CCEE1: db $28, $29, $41 ; op.\n#_1CCEE4: db $7F ; end of message\n\n; =========================================================\n; Well, I have to say my condition\n; isn't very good today. But I\n; want you to come back again\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F2", + "code": "Message_00F2:\n#_1CCEE5: db $6D, $01 ; set window position\n#_1CCEE7: db $16, $1E, $25, $25, $42, $59, $08, $59 ; Well,\u23b5I\u23b5\n#_1CCEEF: db $AD, $59, $DA, $59, $2C, $1A, $32, $59 ; [have]\u23b5[to]\u23b5say\u23b5\n#_1CCEF7: db $26, $32, $59, $1C, $C7, $9E, $2D, $22 ; my\u23b5c[on][di]ti\n#_1CCEFF: db $C7 ; [on]\n#_1CCF00: db $75 ; line 2\n#_1CCF01: db $B5, $C0, $DD, $32, $59, $AC, $28, $1D ; [is][n't ][ver]y\u23b5[go]od\n#_1CCF09: db $59, $DA, $1D, $1A, $32, $41, $8A, $01 ; \u23b5[to]day.[ ]B\n#_1CCF11: db $2E, $2D, $59, $08 ; ut\u23b5I\n#_1CCF15: db $76 ; line 3\n#_1CCF16: db $DF, $27, $2D, $59, $E3, $59, $DA, $59 ; [wa]nt\u23b5[you]\u23b5[to]\u23b5\n#_1CCF1E: db $9B, $1E, $59, $96, $9C, $59, $1A, $20 ; [com]e\u23b5[ba][ck]\u23b5ag\n#_1CCF26: db $8F, $43 ; [ain]\u2026\n#_1CCF28: db $7F ; end of message\n\n; =========================================================\n; Hmmm\u2026 You look like you might\n; have an interesting destiny\u2026\n; May I tell your fortune?\n; I'll make it cheap\u2026\n; > Ask him to tell it\n; Not interested\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F3", + "code": "Message_00F3:\n#_1CCF29: db $6D, $01 ; set window position\n#_1CCF2B: db $07, $26, $26, $26, $43, $8A, $E8, $59 ; Hmmm\u2026[ ][You]\u23b5\n#_1CCF33: db $BB, $28, $24, $59, $25, $22, $24, $1E ; [lo]ok\u23b5like\n#_1CCF3B: db $59, $E3, $59, $26, $22, $20, $21, $2D ; \u23b5[you]\u23b5might\n#_1CCF43: db $75 ; line 2\n#_1CCF44: db $AD, $59, $93, $59, $B4, $D6, $1E, $D3 ; [have]\u23b5[an]\u23b5[in][ter]e[st]\n#_1CCF4C: db $B3, $9D, $2D, $B4, $32, $43 ; [ing ][des]t[in]y\u2026\n#_1CCF52: db $76 ; line 3\n#_1CCF53: db $0C, $1A, $32, $59, $08, $59, $2D, $1E ; May\u23b5I\u23b5te\n#_1CCF5B: db $25, $25, $59, $E3, $2B, $59, $A8, $2D ; ll\u23b5[you]r\u23b5[for]t\n#_1CCF63: db $2E, $27, $1E, $3F ; une?\n#_1CCF67: db $7E ; wait for key\n#_1CCF68: db $73 ; scroll text\n#_1CCF69: db $08, $51, $25, $25, $59, $BD, $24, $1E ; I'll\u23b5[ma]ke\n#_1CCF71: db $59, $B6, $59, $9A, $1A, $29, $43 ; \u23b5[it]\u23b5[che]ap\u2026\n#_1CCF78: db $73 ; scroll text\n#_1CCF79: db $88, $44, $59, $00, $2C, $24, $59, $B0 ; [ ]>\u23b5Ask\u23b5[hi]\n#_1CCF81: db $26, $59, $DA, $59, $2D, $1E, $25, $25 ; m\u23b5[to]\u23b5tell\n#_1CCF89: db $59, $B6 ; \u23b5[it]\n#_1CCF8B: db $73 ; scroll text\n#_1CCF8C: db $88, $89, $0D, $28, $2D, $59, $B4, $D6 ; [ ][ ]Not\u23b5[in][ter]\n#_1CCF94: db $1E, $D3, $1E, $1D ; e[st]ed\n#_1CCF98: db $68 ; choose 2 indented\n#_1CCF99: db $7F ; end of message\n\n; =========================================================\n; Now I will take [#0][#1] Rupees.\n; I hope you will be healthy.\n; Yeehah ha hah!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F4", + "code": "Message_00F4:\n#_1CCF9A: db $6D, $01 ; set window position\n#_1CCF9C: db $0D, $28, $30, $59, $08, $59, $E2, $25 ; Now\u23b5I\u23b5[wi]l\n#_1CCFA4: db $25, $59, $2D, $1A, $24, $1E, $59 ; l\u23b5take\u23b5\n#_1CCFAB: db $6C, $00, $6C, $01, $59, $11, $DC, $1E ; [#0][#1]\u23b5R[up]e\n#_1CCFB3: db $1E, $2C, $41 ; es.\n#_1CCFB6: db $75 ; line 2\n#_1CCFB7: db $08, $59, $21, $28, $29, $1E, $59, $E3 ; I\u23b5hope\u23b5[you]\n#_1CCFBF: db $59, $E2, $25, $25, $59, $97, $59, $21 ; \u23b5[wi]ll\u23b5[be]\u23b5h\n#_1CCFC7: db $1E, $1A, $25, $2D, $21, $32, $41 ; ealthy.\n#_1CCFCE: db $76 ; line 3\n#_1CCFCF: db $18, $1E, $1E, $B1, $21, $59, $B1, $59 ; Yee[ha]h\u23b5[ha]\u23b5\n#_1CCFD7: db $B1, $21, $3E ; [ha]h!\n#_1CCFDA: db $7F ; end of message\n\n; =========================================================\n; It is indeed a poor man who is\n; not interested in his future\u2026\n; I'll be waiting for your return.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F5", + "code": "Message_00F5:\n#_1CCFDB: db $6D, $01 ; set window position\n#_1CCFDD: db $08, $2D, $59, $B5, $59, $B4, $1D, $1E ; It\u23b5[is]\u23b5[in]de\n#_1CCFE5: db $A4, $1A, $59, $29, $28, $C8, $59, $BC ; [ed ]a\u23b5po[or]\u23b5[man]\n#_1CCFED: db $59, $E1, $28, $59, $B5 ; \u23b5[wh]o\u23b5[is]\n#_1CCFF2: db $75 ; line 2\n#_1CCFF3: db $C2, $59, $B4, $D6, $1E, $D3, $A4, $B4 ; [not]\u23b5[in][ter]e[st][ed ][in]\n#_1CCFFB: db $59, $B0, $2C, $59, $1F, $2E, $2D, $2E ; \u23b5[hi]s\u23b5futu\n#_1CD003: db $CE, $43 ; [re]\u2026\n#_1CD005: db $76 ; line 3\n#_1CD006: db $08, $51, $25, $25, $59, $97, $59, $DF ; I'll\u23b5[be]\u23b5[wa]\n#_1CD00E: db $B6, $B3, $A8, $59, $E3, $2B, $59, $CE ; [it][ing ][for]\u23b5[you]r\u23b5[re]\n#_1CD016: db $2D, $2E, $2B, $27, $41 ; turn.\n#_1CD01B: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will meet a strange man\n; standing in the desert\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F6", + "code": "Message_00F6:\n#_1CD01C: db $6D, $01 ; set window position\n#_1CD01E: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CD026: db $1C, $2E, $2C, $3E ; cus!\n#_1CD02A: db $75 ; line 2\n#_1CD02B: db $E8, $59, $E2, $25, $25, $59, $BE, $1E ; [You]\u23b5[wi]ll\u23b5[me]e\n#_1CD033: db $2D, $59, $1A, $59, $D3, $2B, $93, $20 ; t\u23b5a\u23b5[st]r[an]g\n#_1CD03B: db $1E, $59, $BC ; e\u23b5[man]\n#_1CD03E: db $76 ; line 3\n#_1CD03F: db $D3, $90, $B3, $B4, $59, $D8, $59, $9D ; [st][and][ing ][in]\u23b5[the]\u23b5[des]\n#_1CD047: db $A6, $2D, $43 ; [er]t\u2026\n#_1CD04A: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; The gossip shop in the Dark\n; World has treasure for the\n; asking\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F7", + "code": "Message_00F7:\n#_1CD04B: db $6D, $01 ; set window position\n#_1CD04D: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CD055: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CD05D: db $33, $1A, $26, $3E ; zam!\n#_1CD061: db $75 ; line 2\n#_1CD062: db $E6, $59, $AC, $2C, $2C, $22, $29, $59 ; [The]\u23b5[go]ssip\u23b5\n#_1CD06A: db $D1, $28, $29, $59, $B4, $59, $D8, $59 ; [sh]op\u23b5[in]\u23b5[the]\u23b5\n#_1CD072: db $03, $1A, $2B, $24 ; Dark\n#_1CD076: db $76 ; line 3\n#_1CD077: db $16, $C8, $25, $1D, $59, $AE, $59, $DB ; W[or]ld\u23b5[has]\u23b5[tr]\n#_1CD07F: db $1E, $1A, $2C, $2E, $CD, $A8, $59, $D8 ; easu[re ][for]\u23b5[the]\n#_1CD087: db $7E ; wait for key\n#_1CD088: db $73 ; scroll text\n#_1CD089: db $1A, $2C, $24, $B4, $20, $43 ; ask[in]g\u2026\n#_1CD08F: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will find the smith's\n; partner in the\n; Village Of Outcasts.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F8", + "code": "Message_00F8:\n#_1CD090: db $6D, $01 ; set window position\n#_1CD092: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CD09A: db $1C, $2E, $2C, $3E ; cus!\n#_1CD09E: db $75 ; line 2\n#_1CD09F: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CD0A7: db $1D, $59, $D8, $59, $2C, $26, $B6, $21 ; d\u23b5[the]\u23b5sm[it]h\n#_1CD0AF: db $51, $2C ; 's\n#_1CD0B1: db $76 ; line 3\n#_1CD0B2: db $29, $1A, $2B, $2D, $27, $A1, $B4, $59 ; partn[er ][in]\u23b5\n#_1CD0BA: db $D8 ; [the]\n#_1CD0BB: db $7E ; wait for key\n#_1CD0BC: db $73 ; scroll text\n#_1CD0BD: db $15, $22, $25, $BA, $20, $1E, $59, $0E ; Vil[la]ge\u23b5O\n#_1CD0C5: db $1F, $59, $0E, $2E, $2D, $1C, $92, $2C ; f\u23b5Outc[ast]s\n#_1CD0CD: db $41 ; .\n#_1CD0CE: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; You will find a treasure resting\n; in peace in the graveyard.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00F9", + "code": "Message_00F9:\n#_1CD0CF: db $6D, $01 ; set window position\n#_1CD0D1: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CD0D9: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CD0E1: db $33, $1A, $26, $3E ; zam!\n#_1CD0E5: db $75 ; line 2\n#_1CD0E6: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CD0EE: db $1D, $59, $1A, $59, $DB, $1E, $1A, $2C ; d\u23b5a\u23b5[tr]eas\n#_1CD0F6: db $2E, $CD, $CE, $D3, $B4, $20 ; u[re ][re][st][in]g\n#_1CD0FC: db $76 ; line 3\n#_1CD0FD: db $B4, $59, $29, $1E, $1A, $1C, $1E, $59 ; [in]\u23b5peace\u23b5\n#_1CD105: db $B4, $59, $D8, $59, $20, $2B, $1A, $2F ; [in]\u23b5[the]\u23b5grav\n#_1CD10D: db $1E, $32, $1A, $2B, $1D, $41 ; eyard.\n#_1CD113: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will buy a new kind of bomb\n; in the Bomb Shop.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FA", + "code": "Message_00FA:\n#_1CD114: db $6D, $01 ; set window position\n#_1CD116: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CD11E: db $1C, $2E, $2C, $3E ; cus!\n#_1CD122: db $75 ; line 2\n#_1CD123: db $E8, $59, $E2, $25, $25, $59, $1B, $2E ; [You]\u23b5[wi]ll\u23b5bu\n#_1CD12B: db $32, $59, $1A, $59, $27, $1E, $30, $59 ; y\u23b5a\u23b5new\u23b5\n#_1CD133: db $24, $B4, $1D, $59, $C6, $59, $98, $26 ; k[in]d\u23b5[of]\u23b5[bo]m\n#_1CD13B: db $1B ; b\n#_1CD13C: db $76 ; line 3\n#_1CD13D: db $B4, $59, $D8, $59, $01, $28, $26, $1B ; [in]\u23b5[the]\u23b5Bomb\n#_1CD145: db $59, $12, $21, $28, $29, $41 ; \u23b5Shop.\n#_1CD14B: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; You will find something inside\n; the pyramid of the Dark World.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FB", + "code": "Message_00FB:\n#_1CD14C: db $6D, $01 ; set window position\n#_1CD14E: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CD156: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CD15E: db $33, $1A, $26, $3E ; zam!\n#_1CD162: db $75 ; line 2\n#_1CD163: db $E8, $59, $E2, $25, $25, $59, $1F, $B4 ; [You]\u23b5[wi]ll\u23b5f[in]\n#_1CD16B: db $1D, $59, $CF, $D5, $20, $59, $B4, $2C ; d\u23b5[some][thin]g\u23b5[in]s\n#_1CD173: db $22, $1D, $1E ; ide\n#_1CD176: db $76 ; line 3\n#_1CD177: db $D8, $59, $29, $32, $2B, $1A, $26, $22 ; [the]\u23b5pyrami\n#_1CD17F: db $1D, $59, $C6, $59, $D8, $59, $03, $1A ; d\u23b5[of]\u23b5[the]\u23b5Da\n#_1CD187: db $2B, $24, $59, $16, $C8, $25, $1D, $41 ; rk\u23b5W[or]ld.\n#_1CD18F: db $7F ; end of message\n\n; =========================================================\n; Hocus pocus!\n; You will run into a barrier if\n; you try to enter\n; Ganon's tower.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FC", + "code": "Message_00FC:\n#_1CD190: db $6D, $01 ; set window position\n#_1CD192: db $07, $28, $1C, $2E, $2C, $59, $29, $28 ; Hocus\u23b5po\n#_1CD19A: db $1C, $2E, $2C, $3E ; cus!\n#_1CD19E: db $75 ; line 2\n#_1CD19F: db $E8, $59, $E2, $25, $25, $59, $2B, $2E ; [You]\u23b5[wi]ll\u23b5ru\n#_1CD1A7: db $27, $59, $B4, $DA, $59, $1A, $59, $96 ; n\u23b5[in][to]\u23b5a\u23b5[ba]\n#_1CD1AF: db $2B, $2B, $22, $A1, $22, $1F ; rri[er ]if\n#_1CD1B5: db $76 ; line 3\n#_1CD1B6: db $E3, $59, $DB, $32, $59, $DA, $59, $A3 ; [you]\u23b5[tr]y\u23b5[to]\u23b5[ent]\n#_1CD1BE: db $A6 ; [er]\n#_1CD1BF: db $7E ; wait for key\n#_1CD1C0: db $73 ; scroll text\n#_1CD1C1: db $06, $93, $C7, $8B, $DA, $E0, $2B, $41 ; G[an][on]['s ][to][we]r.\n#_1CD1C9: db $7F ; end of message\n\n; =========================================================\n; Abracadabra alakazam!\n; You will need Silver Arrows to\n; give Ganon his last moment.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FD", + "code": "Message_00FD:\n#_1CD1CA: db $6D, $01 ; set window position\n#_1CD1CC: db $00, $1B, $2B, $1A, $1C, $1A, $1D, $1A ; Abracada\n#_1CD1D4: db $1B, $2B, $1A, $59, $1A, $BA, $24, $1A ; bra\u23b5a[la]ka\n#_1CD1DC: db $33, $1A, $26, $3E ; zam!\n#_1CD1E0: db $75 ; line 2\n#_1CD1E1: db $E8, $59, $E2, $25, $25, $59, $27, $1E ; [You]\u23b5[wi]ll\u23b5ne\n#_1CD1E9: db $A4, $12, $22, $25, $DD, $59, $00, $2B ; [ed ]Sil[ver]\u23b5Ar\n#_1CD1F1: db $2B, $28, $30, $2C, $59, $DA ; rows\u23b5[to]\n#_1CD1F7: db $76 ; line 3\n#_1CD1F8: db $AA, $06, $93, $C7, $59, $B0, $2C, $59 ; [give ]G[an][on]\u23b5[hi]s\u23b5\n#_1CD200: db $BA, $D3, $59, $26, $28, $BE, $27, $2D ; [la][st]\u23b5mo[me]nt\n#_1CD208: db $41 ; .\n#_1CD209: db $7F ; end of message\n\n; =========================================================\n; Hey! I'll tell you a profitable\n; story if you pay me 20 Rupees.\n; How about it?\n; > Pay Rupees\n; Don't want to hear it\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FE", + "code": "Message_00FE:\n#_1CD20A: db $07, $1E, $32, $3E, $8A, $08, $51, $25 ; Hey![ ]I'l\n#_1CD212: db $25, $59, $2D, $1E, $25, $25, $59, $E3 ; l\u23b5tell\u23b5[you]\n#_1CD21A: db $59, $1A, $59, $CC, $1F, $B6, $1A, $95 ; \u23b5a\u23b5[pro]f[it]a[ble]\n#_1CD222: db $75 ; line 2\n#_1CD223: db $D3, $C8, $32, $59, $22, $1F, $59, $E3 ; [st][or]y\u23b5if\u23b5[you]\n#_1CD22B: db $59, $29, $1A, $32, $59, $BE, $59, $36 ; \u23b5pay\u23b5[me]\u23b52\n#_1CD233: db $34, $59, $11, $DC, $1E, $1E, $2C, $41 ; 0\u23b5R[up]ees.\n#_1CD23B: db $7E ; wait for key\n#_1CD23C: db $73 ; scroll text\n#_1CD23D: db $07, $28, $30, $59, $1A, $98, $2E, $2D ; How\u23b5a[bo]ut\n#_1CD245: db $59, $B6, $3F ; \u23b5[it]?\n#_1CD248: db $73 ; scroll text\n#_1CD249: db $88, $44, $59, $0F, $1A, $32, $59, $11 ; [ ]>\u23b5Pay\u23b5R\n#_1CD251: db $DC, $1E, $1E, $2C ; [up]ees\n#_1CD255: db $73 ; scroll text\n#_1CD256: db $88, $89, $03, $C7, $51, $2D, $59, $DF ; [ ][ ]D[on]'t\u23b5[wa]\n#_1CD25E: db $27, $2D, $59, $DA, $59, $21, $A2, $59 ; nt\u23b5[to]\u23b5h[ear]\u23b5\n#_1CD266: db $B6 ; [it]\n#_1CD267: db $68 ; choose 2 indented\n#_1CD268: db $7F ; end of message\n\n; =========================================================\n; Hah! Thank you. They say\n; there is a tiny circle of rocks\n; in the lake at the source of\n; the river. I don't know what\n; will happen, but it might be fun\n; to throw something into it\u2026\n; Heh heh. See you\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_00FF", + "code": "Message_00FF:\n#_1CD269: db $07, $1A, $21, $3E, $8A, $E5, $27, $24 ; Hah![ ][Tha]nk\n#_1CD271: db $59, $E3, $41, $8A, $E6, $32, $59, $2C ; \u23b5[you].[ ][The]y\u23b5s\n#_1CD279: db $1A, $32 ; ay\n#_1CD27B: db $75 ; line 2\n#_1CD27C: db $D8, $CD, $B5, $59, $1A, $59, $2D, $B4 ; [the][re ][is]\u23b5a\u23b5t[in]\n#_1CD284: db $32, $59, $1C, $22, $2B, $1C, $25, $1E ; y\u23b5circle\n#_1CD28C: db $59, $C6, $59, $2B, $28, $9C, $2C ; \u23b5[of]\u23b5ro[ck]s\n#_1CD293: db $76 ; line 3\n#_1CD294: db $B4, $59, $D8, $59, $BA, $24, $1E, $59 ; [in]\u23b5[the]\u23b5[la]ke\u23b5\n#_1CD29C: db $91, $D8, $59, $D2, $2E, $2B, $1C, $1E ; [at ][the]\u23b5[so]urce\n#_1CD2A4: db $59, $C6 ; \u23b5[of]\n#_1CD2A6: db $7E ; wait for key\n#_1CD2A7: db $73 ; scroll text\n#_1CD2A8: db $D8, $59, $2B, $22, $DD, $41, $8A, $08 ; [the]\u23b5ri[ver].[ ]I\n#_1CD2B0: db $59, $9F, $C0, $B8, $59, $E1, $94 ; \u23b5[do][n't ][know]\u23b5[wh][at]\n#_1CD2B7: db $73 ; scroll text\n#_1CD2B8: db $E2, $25, $25, $59, $B1, $29, $29, $A5 ; [wi]ll\u23b5[ha]pp[en]\n#_1CD2C0: db $42, $59, $1B, $2E, $2D, $59, $B6, $59 ; ,\u23b5but\u23b5[it]\u23b5\n#_1CD2C8: db $26, $B2, $97, $59, $1F, $2E, $27 ; m[ight ][be]\u23b5fun\n#_1CD2CF: db $73 ; scroll text\n#_1CD2D0: db $DA, $59, $2D, $21, $2B, $28, $30, $59 ; [to]\u23b5throw\u23b5\n#_1CD2D8: db $CF, $D5, $20, $59, $B4, $DA, $59, $B6 ; [some][thin]g\u23b5[in][to]\u23b5[it]\n#_1CD2E0: db $43 ; \u2026\n#_1CD2E1: db $7E ; wait for key\n#_1CD2E2: db $73 ; scroll text\n#_1CD2E3: db $07, $1E, $21, $59, $21, $1E, $21, $41 ; Heh\u23b5heh.\n#_1CD2EB: db $8A, $12, $1E, $1E, $59, $E3, $43 ; [ ]See\u23b5[you]\u2026\n#_1CD2F2: db $7F ; end of message\n\n; =========================================================\n; Heh heh. I see. I'm not\n; interested in talking to people\n; who don't have Rupees\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0100", + "code": "Message_0100:\n#_1CD2F3: db $07, $1E, $21, $59, $21, $1E, $21, $41 ; Heh\u23b5heh.\n#_1CD2FB: db $8A, $08, $59, $D0, $1E, $41, $8A, $08 ; [ ]I\u23b5[se]e.[ ]I\n#_1CD303: db $51, $26, $59, $C2 ; 'm\u23b5[not]\n#_1CD307: db $75 ; line 2\n#_1CD308: db $B4, $D6, $1E, $D3, $A4, $B4, $59, $2D ; [in][ter]e[st][ed ][in]\u23b5t\n#_1CD310: db $1A, $25, $24, $B3, $DA, $59, $29, $1E ; alk[ing ][to]\u23b5pe\n#_1CD318: db $28, $CA ; o[ple]\n#_1CD31A: db $76 ; line 3\n#_1CD31B: db $E1, $28, $59, $9F, $C0, $AD, $59, $11 ; [wh]o\u23b5[do][n't ][have]\u23b5R\n#_1CD323: db $DC, $1E, $1E, $2C, $43 ; [up]ees\u2026\n#_1CD328: db $7F ; end of message\n\n; =========================================================\n; Heh heh. Thank you. To tell\n; you the truth, I used to be a\n; thief in the Light World\u2026\n; some of my fellow thieves went\n; into hiding because they were\n; afraid of being caught.\n; One of them was a master\n; locksmith, but now he is hiding\n; the fact that he was a thief\u2026\n; \u2026by pretending to be a\n; strange middle-aged guy!\n; Ha ha ha\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0101", + "code": "Message_0101:\n#_1CD329: db $07, $1E, $21, $59, $21, $1E, $21, $41 ; Heh\u23b5heh.\n#_1CD331: db $8A, $E5, $27, $24, $59, $E3, $41, $8A ; [ ][Tha]nk\u23b5[you].[ ]\n#_1CD339: db $13, $28, $59, $2D, $1E, $25, $25 ; To\u23b5tell\n#_1CD340: db $75 ; line 2\n#_1CD341: db $E3, $59, $D8, $59, $DB, $2E, $2D, $21 ; [you]\u23b5[the]\u23b5[tr]uth\n#_1CD349: db $42, $59, $08, $59, $2E, $D0, $1D, $59 ; ,\u23b5I\u23b5u[se]d\u23b5\n#_1CD351: db $DA, $59, $97, $59, $1A ; [to]\u23b5[be]\u23b5a\n#_1CD356: db $76 ; line 3\n#_1CD357: db $D9, $1E, $1F, $59, $B4, $59, $D8, $59 ; [thi]ef\u23b5[in]\u23b5[the]\u23b5\n#_1CD35F: db $0B, $B2, $16, $C8, $25, $1D, $43 ; L[ight ]W[or]ld\u2026\n#_1CD366: db $7E ; wait for key\n#_1CD367: db $73 ; scroll text\n#_1CD368: db $CF, $59, $C6, $59, $26, $32, $59, $1F ; [some]\u23b5[of]\u23b5my\u23b5f\n#_1CD370: db $1E, $25, $BB, $30, $59, $D9, $A7, $1E ; el[lo]w\u23b5[thi][ev]e\n#_1CD378: db $2C, $59, $E0, $27, $2D ; s\u23b5[we]nt\n#_1CD37D: db $73 ; scroll text\n#_1CD37E: db $B4, $DA, $59, $B0, $9E, $27, $20, $59 ; [in][to]\u23b5[hi][di]ng\u23b5\n#_1CD386: db $97, $1C, $1A, $2E, $D0, $59, $D8, $32 ; [be]cau[se]\u23b5[the]y\n#_1CD38E: db $59, $E0, $CE ; \u23b5[we][re]\n#_1CD391: db $73 ; scroll text\n#_1CD392: db $1A, $1F, $2B, $1A, $22, $1D, $59, $C6 ; afraid\u23b5[of]\n#_1CD39A: db $59, $97, $B3, $1C, $1A, $2E, $20, $21 ; \u23b5[be][ing ]caugh\n#_1CD3A2: db $2D, $41 ; t.\n#_1CD3A4: db $7E ; wait for key\n#_1CD3A5: db $73 ; scroll text\n#_1CD3A6: db $0E, $27, $1E, $59, $C6, $59, $D8, $26 ; One\u23b5[of]\u23b5[the]m\n#_1CD3AE: db $59, $DF, $2C, $59, $1A, $59, $BD, $D3 ; \u23b5[wa]s\u23b5a\u23b5[ma][st]\n#_1CD3B6: db $A6 ; [er]\n#_1CD3B7: db $73 ; scroll text\n#_1CD3B8: db $BB, $9C, $2C, $26, $B6, $21, $42, $59 ; [lo][ck]sm[it]h,\u23b5\n#_1CD3C0: db $1B, $2E, $2D, $59, $27, $28, $30, $59 ; but\u23b5now\u23b5\n#_1CD3C8: db $21, $1E, $59, $B5, $59, $B0, $9E, $27 ; he\u23b5[is]\u23b5[hi][di]n\n#_1CD3D0: db $20 ; g\n#_1CD3D1: db $73 ; scroll text\n#_1CD3D2: db $D8, $59, $1F, $1A, $1C, $2D, $59, $D7 ; [the]\u23b5fact\u23b5[tha]\n#_1CD3DA: db $2D, $59, $21, $1E, $59, $DF, $2C, $59 ; t\u23b5he\u23b5[wa]s\u23b5\n#_1CD3E2: db $1A, $59, $D9, $1E, $1F, $43 ; a\u23b5[thi]ef\u2026\n#_1CD3E8: db $7E ; wait for key\n#_1CD3E9: db $73 ; scroll text\n#_1CD3EA: db $43, $1B, $32, $59, $29, $CE, $2D, $A5 ; \u2026by\u23b5p[re]t[en]\n#_1CD3F2: db $9E, $27, $20, $59, $DA, $59, $97, $59 ; [di]ng\u23b5[to]\u23b5[be]\u23b5\n#_1CD3FA: db $1A ; a\n#_1CD3FB: db $73 ; scroll text\n#_1CD3FC: db $D3, $2B, $93, $20, $1E, $59, $26, $22 ; [st]r[an]ge\u23b5mi\n#_1CD404: db $1D, $1D, $25, $1E, $40, $1A, $20, $A4 ; ddle-ag[ed ]\n#_1CD40C: db $20, $2E, $32, $3E ; guy!\n#_1CD410: db $73 ; scroll text\n#_1CD411: db $07, $1A, $59, $B1, $59, $B1, $43 ; Ha\u23b5[ha]\u23b5[ha]\u2026\n#_1CD418: db $7F ; end of message\n\n; =========================================================\n; Hah! Thank you. To tell you\n; the truth, I found incredible\n; beauty inside the pyramid,\n; but someone sealed the door.\n; You can't do anything with a\n; standard bomb, they say\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0102", + "code": "Message_0102:\n#_1CD419: db $07, $1A, $21, $3E, $8A, $E5, $27, $24 ; Hah![ ][Tha]nk\n#_1CD421: db $59, $E3, $41, $8A, $13, $28, $59, $2D ; \u23b5[you].[ ]To\u23b5t\n#_1CD429: db $1E, $25, $25, $59, $E3 ; ell\u23b5[you]\n#_1CD42E: db $75 ; line 2\n#_1CD42F: db $D8, $59, $DB, $2E, $2D, $21, $42, $59 ; [the]\u23b5[tr]uth,\u23b5\n#_1CD437: db $08, $59, $1F, $C4, $59, $B4, $1C, $CE ; I\u23b5f[ound]\u23b5[in]c[re]\n#_1CD43F: db $9E, $95 ; [di][ble]\n#_1CD441: db $76 ; line 3\n#_1CD442: db $97, $1A, $2E, $2D, $32, $59, $B4, $2C ; [be]auty\u23b5[in]s\n#_1CD44A: db $22, $1D, $1E, $59, $D8, $59, $29, $32 ; ide\u23b5[the]\u23b5py\n#_1CD452: db $2B, $1A, $26, $22, $1D, $42 ; ramid,\n#_1CD458: db $7E ; wait for key\n#_1CD459: db $73 ; scroll text\n#_1CD45A: db $1B, $2E, $2D, $59, $CF, $C7, $1E, $59 ; but\u23b5[some][on]e\u23b5\n#_1CD462: db $D0, $1A, $25, $A4, $D8, $59, $9F, $C8 ; [se]al[ed ][the]\u23b5[do][or]\n#_1CD46A: db $41 ; .\n#_1CD46B: db $73 ; scroll text\n#_1CD46C: db $E8, $59, $1C, $93, $51, $2D, $59, $9F ; [You]\u23b5c[an]'t\u23b5[do]\n#_1CD474: db $59, $93, $32, $D5, $20, $59, $DE, $59 ; \u23b5[an]y[thin]g\u23b5[with]\u23b5\n#_1CD47C: db $1A ; a\n#_1CD47D: db $73 ; scroll text\n#_1CD47E: db $D3, $90, $1A, $2B, $1D, $59, $98, $26 ; [st][and]ard\u23b5[bo]m\n#_1CD486: db $1B, $42, $59, $D8, $32, $59, $2C, $1A ; b,\u23b5[the]y\u23b5sa\n#_1CD48E: db $32, $43 ; y\u2026\n#_1CD490: db $7F ; end of message\n\n; =========================================================\n; Heh heh. Thank you. As a\n; matter of fact, monster magic\n; is making it rain in the swamp.\n; If you can move the air with\n; more force than the monsters,\n; the rain may stop.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0103", + "code": "Message_0103:\n#_1CD491: db $07, $1E, $21, $59, $21, $1E, $21, $41 ; Heh\u23b5heh.\n#_1CD499: db $8A, $E5, $27, $24, $59, $E3, $41, $8A ; [ ][Tha]nk\u23b5[you].[ ]\n#_1CD4A1: db $00, $2C, $59, $1A ; As\u23b5a\n#_1CD4A5: db $75 ; line 2\n#_1CD4A6: db $BD, $2D, $D4, $C6, $59, $1F, $1A, $1C ; [ma]t[ter ][of]\u23b5fac\n#_1CD4AE: db $2D, $42, $59, $26, $C7, $D3, $A1, $BD ; t,\u23b5m[on][st][er ][ma]\n#_1CD4B6: db $20, $22, $1C ; gic\n#_1CD4B9: db $76 ; line 3\n#_1CD4BA: db $B5, $59, $BD, $24, $B3, $B6, $59, $2B ; [is]\u23b5[ma]k[ing ][it]\u23b5r\n#_1CD4C2: db $8F, $59, $B4, $59, $D8, $59, $2C, $DF ; [ain]\u23b5[in]\u23b5[the]\u23b5s[wa]\n#_1CD4CA: db $26, $29, $41 ; mp.\n#_1CD4CD: db $7E ; wait for key\n#_1CD4CE: db $73 ; scroll text\n#_1CD4CF: db $08, $1F, $59, $E3, $59, $99, $26, $28 ; If\u23b5[you]\u23b5[can ]mo\n#_1CD4D7: db $2F, $1E, $59, $D8, $59, $1A, $22, $2B ; ve\u23b5[the]\u23b5air\n#_1CD4DF: db $59, $DE ; \u23b5[with]\n#_1CD4E1: db $73 ; scroll text\n#_1CD4E2: db $26, $C8, $1E, $59, $A8, $1C, $1E, $59 ; m[or]e\u23b5[for]ce\u23b5\n#_1CD4EA: db $D7, $27, $59, $D8, $59, $26, $C7, $D3 ; [tha]n\u23b5[the]\u23b5m[on][st]\n#_1CD4F2: db $A6, $2C, $42 ; [er]s,\n#_1CD4F5: db $73 ; scroll text\n#_1CD4F6: db $D8, $59, $2B, $8F, $59, $BD, $32, $59 ; [the]\u23b5r[ain]\u23b5[ma]y\u23b5\n#_1CD4FE: db $D3, $28, $29, $41 ; [st]op.\n#_1CD502: db $7F ; end of message\n\n; =========================================================\n; Sniffle\u2026 Hey brother [LINK]!\n; Do you have a bottle to keep\n; a bug in?\n; \u2026\n; I see. You don't have one\u2026\n; Cough cough\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0104", + "code": "Message_0104:\n#_1CD503: db $12, $27, $22, $1F, $1F, $25, $1E, $43 ; Sniffle\u2026\n#_1CD50B: db $59, $07, $1E, $32, $59, $1B, $2B, $28 ; \u23b5Hey\u23b5bro\n#_1CD513: db $D8, $2B, $59, $6A, $3E ; [the]r\u23b5[LINK]!\n#_1CD518: db $75 ; line 2\n#_1CD519: db $03, $28, $59, $E3, $59, $AD, $59, $1A ; Do\u23b5[you]\u23b5[have]\u23b5a\n#_1CD521: db $59, $98, $2D, $2D, $25, $1E, $59, $DA ; \u23b5[bo]ttle\u23b5[to]\n#_1CD529: db $59, $24, $1E, $1E, $29 ; \u23b5keep\n#_1CD52E: db $76 ; line 3\n#_1CD52F: db $1A, $59, $1B, $2E, $20, $59, $B4, $3F ; a\u23b5bug\u23b5[in]?\n#_1CD537: db $7E ; wait for key\n#_1CD538: db $73 ; scroll text\n#_1CD539: db $43 ; \u2026\n#_1CD53A: db $73 ; scroll text\n#_1CD53B: db $08, $59, $D0, $1E, $41, $8A, $E8, $59 ; I\u23b5[se]e.[ ][You]\u23b5\n#_1CD543: db $9F, $C0, $AD, $59, $C7, $1E, $43 ; [do][n't ][have]\u23b5[on]e\u2026\n#_1CD54A: db $73 ; scroll text\n#_1CD54B: db $02, $28, $2E, $20, $21, $59, $1C, $28 ; Cough\u23b5co\n#_1CD553: db $2E, $20, $21, $43 ; ugh\u2026\n#_1CD557: db $7F ; end of message\n\n; =========================================================\n; I can't go out 'cause I'm sick\u2026\n; Cough cough\u2026\n; People say I caught this cold\n; from the evil air that is coming\n; down off the mountain\u2026\n; Sniff sniff\u2026\n; This is my bug-catching net.\n; I'll use it when I'm better, but\n; for now, I'll lend it to you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0105", + "code": "Message_0105:\n#_1CD558: db $08, $59, $1C, $93, $51, $2D, $59, $AC ; I\u23b5c[an]'t\u23b5[go]\n#_1CD560: db $59, $C5, $51, $1C, $1A, $2E, $D0, $59 ; \u23b5[out ]'cau[se]\u23b5\n#_1CD568: db $08, $51, $26, $59, $2C, $22, $9C, $43 ; I'm\u23b5si[ck]\u2026\n#_1CD570: db $75 ; line 2\n#_1CD571: db $02, $28, $2E, $20, $21, $59, $1C, $28 ; Cough\u23b5co\n#_1CD579: db $2E, $20, $21, $43 ; ugh\u2026\n#_1CD57D: db $76 ; line 3\n#_1CD57E: db $0F, $1E, $28, $CA, $59, $2C, $1A, $32 ; Peo[ple]\u23b5say\n#_1CD586: db $59, $08, $59, $1C, $1A, $2E, $20, $21 ; \u23b5I\u23b5caugh\n#_1CD58E: db $2D, $59, $D9, $2C, $59, $1C, $28, $25 ; t\u23b5[thi]s\u23b5col\n#_1CD596: db $1D ; d\n#_1CD597: db $7E ; wait for key\n#_1CD598: db $73 ; scroll text\n#_1CD599: db $A9, $26, $59, $D8, $59, $A7, $22, $25 ; [fro]m\u23b5[the]\u23b5[ev]il\n#_1CD5A1: db $59, $1A, $22, $2B, $59, $D7, $2D, $59 ; \u23b5air\u23b5[tha]t\u23b5\n#_1CD5A9: db $B5, $59, $9B, $B4, $20 ; [is]\u23b5[com][in]g\n#_1CD5AE: db $73 ; scroll text\n#_1CD5AF: db $9F, $30, $27, $59, $C6, $1F, $59, $D8 ; [do]wn\u23b5[of]f\u23b5[the]\n#_1CD5B7: db $59, $26, $28, $2E, $27, $2D, $8F, $43 ; \u23b5mount[ain]\u2026\n#_1CD5BF: db $73 ; scroll text\n#_1CD5C0: db $12, $27, $22, $1F, $1F, $59, $2C, $27 ; Sniff\u23b5sn\n#_1CD5C8: db $22, $1F, $1F, $43 ; iff\u2026\n#_1CD5CC: db $7E ; wait for key\n#_1CD5CD: db $73 ; scroll text\n#_1CD5CE: db $E7, $2C, $59, $B5, $59, $26, $32, $59 ; [Thi]s\u23b5[is]\u23b5my\u23b5\n#_1CD5D6: db $1B, $2E, $20, $40, $1C, $94, $1C, $B0 ; bug-c[at]c[hi]\n#_1CD5DE: db $27, $20, $59, $27, $1E, $2D, $41 ; ng\u23b5net.\n#_1CD5E5: db $73 ; scroll text\n#_1CD5E6: db $08, $51, $25, $25, $59, $2E, $D0, $59 ; I'll\u23b5u[se]\u23b5\n#_1CD5EE: db $B6, $59, $E1, $A0, $08, $51, $26, $59 ; [it]\u23b5[wh][en ]I'm\u23b5\n#_1CD5F6: db $97, $2D, $D6, $42, $59, $1B, $2E, $2D ; [be]t[ter],\u23b5but\n#_1CD5FE: db $73 ; scroll text\n#_1CD5FF: db $A8, $59, $27, $28, $30, $42, $59, $08 ; [for]\u23b5now,\u23b5I\n#_1CD607: db $51, $25, $25, $59, $25, $A5, $1D, $59 ; 'll\u23b5l[en]d\u23b5\n#_1CD60F: db $B6, $59, $DA, $59, $E3, $41 ; [it]\u23b5[to]\u23b5[you].\n#_1CD615: db $7F ; end of message\n\n; =========================================================\n; Sniffle\u2026 I hope I get well\n; soon\u2026\n; Cough cough\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0106", + "code": "Message_0106:\n#_1CD616: db $12, $27, $22, $1F, $1F, $25, $1E, $43 ; Sniffle\u2026\n#_1CD61E: db $59, $08, $59, $21, $28, $29, $1E, $59 ; \u23b5I\u23b5hope\u23b5\n#_1CD626: db $08, $59, $AB, $59, $E0, $25, $25 ; I\u23b5[get]\u23b5[we]ll\n#_1CD62D: db $75 ; line 2\n#_1CD62E: db $D2, $C7, $43 ; [so][on]\u2026\n#_1CD631: db $76 ; line 3\n#_1CD632: db $02, $28, $2E, $20, $21, $59, $1C, $28 ; Cough\u23b5co\n#_1CD63A: db $2E, $20, $21, $43 ; ugh\u2026\n#_1CD63E: db $7F ; end of message\n\n; =========================================================\n; \u2026 \u2026 \u2026 \u2026 \u2026 \u2026\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0107", + "code": "Message_0107:\n#_1CD63F: db $43, $8A, $43, $8A, $43, $8A, $43, $8A ; \u2026[ ]\u2026[ ]\u2026[ ]\u2026[ ]\n#_1CD647: db $43, $8A, $43 ; \u2026[ ]\u2026\n#_1CD64A: db $75 ; line 2\n#_1CD64B: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CD650: db $7F ; end of message\n\n; =========================================================\n; Why did you take my sign? It\n; says plain as day to just leave\n; me alone! Sheeesh!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0108", + "code": "Message_0108:\n#_1CD651: db $16, $21, $32, $59, $9E, $1D, $59, $E3 ; Why\u23b5[di]d\u23b5[you]\n#_1CD659: db $59, $2D, $1A, $24, $1E, $59, $26, $32 ; \u23b5take\u23b5my\n#_1CD661: db $59, $2C, $22, $20, $27, $3F, $8A, $08 ; \u23b5sign?[ ]I\n#_1CD669: db $2D ; t\n#_1CD66A: db $75 ; line 2\n#_1CD66B: db $2C, $1A, $32, $2C, $59, $29, $BA, $B4 ; says\u23b5p[la][in]\n#_1CD673: db $59, $1A, $2C, $59, $1D, $1A, $32, $59 ; \u23b5as\u23b5day\u23b5\n#_1CD67B: db $DA, $59, $B7, $59, $25, $1E, $1A, $2F ; [to]\u23b5[just]\u23b5leav\n#_1CD683: db $1E ; e\n#_1CD684: db $76 ; line 3\n#_1CD685: db $BE, $59, $1A, $BB, $27, $1E, $3E, $8A ; [me]\u23b5a[lo]ne![ ]\n#_1CD68D: db $12, $21, $1E, $1E, $1E, $D1, $3E ; Sheee[sh]!\n#_1CD694: db $7F ; end of message\n\n; =========================================================\n; I heard that you know I used to\n; be a thief, right?\n;\n; Well, I'll open a chest for you.\n; Will you keep it secret from\n; everyone else?\n; Would you please promise ?\n; > Promise not to tell\n; Tell it to everyone\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0109", + "code": "Message_0109:\n#_1CD695: db $08, $59, $21, $A2, $1D, $59, $D7, $2D ; I\u23b5h[ear]d\u23b5[tha]t\n#_1CD69D: db $59, $E3, $59, $B8, $59, $08, $59, $2E ; \u23b5[you]\u23b5[know]\u23b5I\u23b5u\n#_1CD6A5: db $D0, $1D, $59, $DA ; [se]d\u23b5[to]\n#_1CD6A9: db $75 ; line 2\n#_1CD6AA: db $97, $59, $1A, $59, $D9, $1E, $1F, $42 ; [be]\u23b5a\u23b5[thi]ef,\n#_1CD6B2: db $59, $2B, $22, $20, $21, $2D, $3F ; \u23b5right?\n#_1CD6B9: db $76 ; line 3\n#_1CD6BA: db $7E ; wait for key\n#_1CD6BB: db $73 ; scroll text\n#_1CD6BC: db $16, $1E, $25, $25, $42, $59, $08, $51 ; Well,\u23b5I'\n#_1CD6C4: db $25, $25, $59, $C3, $59, $1A, $59, $9A ; ll\u23b5[open]\u23b5a\u23b5[che]\n#_1CD6CC: db $D3, $59, $A8, $59, $E3, $41 ; [st]\u23b5[for]\u23b5[you].\n#_1CD6D2: db $73 ; scroll text\n#_1CD6D3: db $16, $22, $25, $25, $59, $E3, $59, $24 ; Will\u23b5[you]\u23b5k\n#_1CD6DB: db $1E, $1E, $29, $59, $B6, $59, $D0, $1C ; eep\u23b5[it]\u23b5[se]c\n#_1CD6E3: db $CE, $2D, $59, $A9, $26 ; [re]t\u23b5[fro]m\n#_1CD6E8: db $73 ; scroll text\n#_1CD6E9: db $A7, $A6, $32, $C7, $1E, $59, $1E, $25 ; [ev][er]y[on]e\u23b5el\n#_1CD6F1: db $D0, $3F ; [se]?\n#_1CD6F3: db $7E ; wait for key\n#_1CD6F4: db $73 ; scroll text\n#_1CD6F5: db $16, $28, $2E, $25, $1D, $59, $E3, $59 ; Would\u23b5[you]\u23b5\n#_1CD6FD: db $CA, $1A, $D0, $59, $CC, $26, $B5, $1E ; [ple]a[se]\u23b5[pro]m[is]e\n#_1CD705: db $59, $3F ; \u23b5?\n#_1CD707: db $73 ; scroll text\n#_1CD708: db $88, $44, $59, $0F, $2B, $28, $26, $B5 ; [ ]>\u23b5Prom[is]\n#_1CD710: db $1E, $59, $C2, $59, $DA, $59, $2D, $1E ; e\u23b5[not]\u23b5[to]\u23b5te\n#_1CD718: db $25, $25 ; ll\n#_1CD71A: db $73 ; scroll text\n#_1CD71B: db $88, $89, $13, $1E, $25, $25, $59, $B6 ; [ ][ ]Tell\u23b5[it]\n#_1CD723: db $59, $DA, $59, $A7, $A6, $32, $C7, $1E ; \u23b5[to]\u23b5[ev][er]y[on]e\n#_1CD72B: db $68 ; choose 2 indented\n#_1CD72C: db $7F ; end of message\n\n; =========================================================\n; OK, if that's the way you want\n; it, I hope you drag that chest\n; around forever!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010A", + "code": "Message_010A:\n#_1CD72D: db $0E, $0A, $42, $59, $22, $1F, $59, $D7 ; OK,\u23b5if\u23b5[tha]\n#_1CD735: db $2D, $8B, $D8, $59, $DF, $32, $59, $E3 ; t['s ][the]\u23b5[wa]y\u23b5[you]\n#_1CD73D: db $59, $DF, $27, $2D ; \u23b5[wa]nt\n#_1CD741: db $75 ; line 2\n#_1CD742: db $B6, $42, $59, $08, $59, $21, $28, $29 ; [it],\u23b5I\u23b5hop\n#_1CD74A: db $1E, $59, $E3, $59, $1D, $2B, $1A, $20 ; e\u23b5[you]\u23b5drag\n#_1CD752: db $59, $D7, $2D, $59, $9A, $D3 ; \u23b5[tha]t\u23b5[che][st]\n#_1CD758: db $76 ; line 3\n#_1CD759: db $1A, $2B, $C4, $59, $A8, $A7, $A6, $3E ; ar[ound]\u23b5[for][ev][er]!\n#_1CD761: db $7F ; end of message\n\n; =========================================================\n; Remember, you promised\u2026\n; Don't tell anyone.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010B", + "code": "Message_010B:\n#_1CD762: db $11, $1E, $BE, $26, $97, $2B, $42, $59 ; Re[me]m[be]r,\u23b5\n#_1CD76A: db $E3, $59, $CC, $26, $B5, $1E, $1D, $43 ; [you]\u23b5[pro]m[is]ed\u2026\n#_1CD772: db $75 ; line 2\n#_1CD773: db $03, $C7, $51, $2D, $59, $2D, $1E, $25 ; D[on]'t\u23b5tel\n#_1CD77B: db $25, $59, $93, $32, $C7, $1E, $41 ; l\u23b5[an]y[on]e.\n#_1CD782: db $7F ; end of message\n\n; =========================================================\n; All right, bring that chest over\n; here\u2026 Seriously, keep this a\n; secret from everyone.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010C", + "code": "Message_010C:\n#_1CD783: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_1CD78B: db $2D, $42, $59, $1B, $2B, $B3, $D7, $2D ; t,\u23b5br[ing ][tha]t\n#_1CD793: db $59, $9A, $D3, $59, $28, $DD ; \u23b5[che][st]\u23b5o[ver]\n#_1CD799: db $75 ; line 2\n#_1CD79A: db $AF, $1E, $43, $8A, $12, $A6, $22, $28 ; [her]e\u2026[ ]S[er]io\n#_1CD7A2: db $2E, $2C, $25, $32, $42, $59, $24, $1E ; usly,\u23b5ke\n#_1CD7AA: db $1E, $29, $59, $D9, $2C, $59, $1A ; ep\u23b5[thi]s\u23b5a\n#_1CD7B1: db $76 ; line 3\n#_1CD7B2: db $D0, $1C, $CE, $2D, $59, $A9, $26, $59 ; [se]c[re]t\u23b5[fro]m\u23b5\n#_1CD7BA: db $A7, $A6, $32, $C7, $1E, $41 ; [ev][er]y[on]e.\n#_1CD7C0: db $7F ; end of message\n\n; =========================================================\n; \ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\ud80c\ude17\ud80c\ude17\u01a7\n; \ud80c\ude17\u2625\u01a7\u01a7\u2625\ud80c\ude17\u2625\u01a7\ud80c\ude17\u2625\u01a7\ud80c\ude17\u2625\u01a7\ud80c\ude17\u2625\n; \ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u2625\ud80c\ude17\u2625\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010D", + "code": "Message_010D:\n#_1CD7C1: db $48, $49, $48, $49, $48, $49, $48, $49 ; \ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\n#_1CD7C9: db $48, $49, $48, $48, $48, $49 ; \ud80c\ude17\u01a7\ud80c\ude17\ud80c\ude17\ud80c\ude17\u01a7\n#_1CD7CF: db $75 ; line 2\n#_1CD7D0: db $48, $47, $49, $49, $47, $48, $47, $49 ; \ud80c\ude17\u2625\u01a7\u01a7\u2625\ud80c\ude17\u2625\u01a7\n#_1CD7D8: db $48, $47, $49, $48, $47, $49, $48, $47 ; \ud80c\ude17\u2625\u01a7\ud80c\ude17\u2625\u01a7\ud80c\ude17\u2625\n#_1CD7E0: db $76 ; line 3\n#_1CD7E1: db $48, $49, $48, $49, $48, $49, $48, $47 ; \ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u01a7\ud80c\ude17\u2625\n#_1CD7E9: db $48, $47 ; \ud80c\ude17\u2625\n#_1CD7EB: db $7F ; end of message\n\n; =========================================================\n; Hold up the Master Sword and\n; you will get the magic of\n; Ether.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010E", + "code": "Message_010E:\n#_1CD7EC: db $07, $28, $25, $1D, $59, $DC, $59, $D8 ; Hold\u23b5[up]\u23b5[the]\n#_1CD7F4: db $59, $0C, $92, $A1, $12, $30, $C8, $1D ; \u23b5M[ast][er ]Sw[or]d\n#_1CD7FC: db $59, $90 ; \u23b5[and]\n#_1CD7FE: db $75 ; line 2\n#_1CD7FF: db $E3, $59, $E2, $25, $25, $59, $AB, $59 ; [you]\u23b5[wi]ll\u23b5[get]\u23b5\n#_1CD807: db $D8, $59, $BD, $20, $22, $1C, $59, $C6 ; [the]\u23b5[ma]gic\u23b5[of]\n#_1CD80F: db $76 ; line 3\n#_1CD810: db $04, $D8, $2B, $41 ; E[the]r.\n#_1CD814: db $7F ; end of message\n\n; =========================================================\n; Hold up the Master Sword and\n; you will get the magic of\n; Bombos.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_010F", + "code": "Message_010F:\n#_1CD815: db $07, $28, $25, $1D, $59, $DC, $59, $D8 ; Hold\u23b5[up]\u23b5[the]\n#_1CD81D: db $59, $0C, $92, $A1, $12, $30, $C8, $1D ; \u23b5M[ast][er ]Sw[or]d\n#_1CD825: db $59, $90 ; \u23b5[and]\n#_1CD827: db $75 ; line 2\n#_1CD828: db $E3, $59, $E2, $25, $25, $59, $AB, $59 ; [you]\u23b5[wi]ll\u23b5[get]\u23b5\n#_1CD830: db $D8, $59, $BD, $20, $22, $1C, $59, $C6 ; [the]\u23b5[ma]gic\u23b5[of]\n#_1CD838: db $76 ; line 3\n#_1CD839: db $01, $28, $26, $98, $2C, $41 ; Bom[bo]s.\n#_1CD83F: db $7F ; end of message\n\n; =========================================================\n; Hey! Blast you for waking me\n; from my deep, dark sleep!\n; \u2026I mean, thanks a lot, sir!\n; But now I will get my revenge\n; on you. Get ready for it!\n; \u2026Err, is that OK with you,\n; sir?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0110", + "code": "Message_0110:\n#_1CD840: db $07, $1E, $32, $3E, $8A, $01, $BA, $D3 ; Hey![ ]B[la][st]\n#_1CD848: db $59, $E3, $59, $A8, $59, $DF, $24, $B3 ; \u23b5[you]\u23b5[for]\u23b5[wa]k[ing ]\n#_1CD850: db $BE ; [me]\n#_1CD851: db $75 ; line 2\n#_1CD852: db $A9, $26, $59, $26, $32, $59, $1D, $1E ; [fro]m\u23b5my\u23b5de\n#_1CD85A: db $1E, $29, $42, $59, $1D, $1A, $2B, $24 ; ep,\u23b5dark\n#_1CD862: db $59, $2C, $25, $1E, $1E, $29, $3E ; \u23b5sleep!\n#_1CD869: db $76 ; line 3\n#_1CD86A: db $43, $08, $59, $BE, $93, $42, $59, $D7 ; \u2026I\u23b5[me][an],\u23b5[tha]\n#_1CD872: db $27, $24, $2C, $59, $1A, $59, $BB, $2D ; nks\u23b5a\u23b5[lo]t\n#_1CD87A: db $42, $59, $2C, $22, $2B, $3E ; ,\u23b5sir!\n#_1CD880: db $7E ; wait for key\n#_1CD881: db $73 ; scroll text\n#_1CD882: db $01, $2E, $2D, $59, $27, $28, $30, $59 ; But\u23b5now\u23b5\n#_1CD88A: db $08, $59, $E2, $25, $25, $59, $AB, $59 ; I\u23b5[wi]ll\u23b5[get]\u23b5\n#_1CD892: db $26, $32, $59, $CE, $2F, $A5, $20, $1E ; my\u23b5[re]v[en]ge\n#_1CD89A: db $73 ; scroll text\n#_1CD89B: db $C7, $59, $E3, $41, $8A, $06, $1E, $2D ; [on]\u23b5[you].[ ]Get\n#_1CD8A3: db $59, $CE, $1A, $1D, $32, $59, $A8, $59 ; \u23b5[re]ady\u23b5[for]\u23b5\n#_1CD8AB: db $B6, $3E ; [it]!\n#_1CD8AD: db $73 ; scroll text\n#_1CD8AE: db $43, $04, $2B, $2B, $42, $59, $B5, $59 ; \u2026Err,\u23b5[is]\u23b5\n#_1CD8B6: db $D7, $2D, $59, $0E, $0A, $59, $DE, $59 ; [tha]t\u23b5OK\u23b5[with]\u23b5\n#_1CD8BE: db $E3, $42 ; [you],\n#_1CD8C0: db $7E ; wait for key\n#_1CD8C1: db $73 ; scroll text\n#_1CD8C2: db $2C, $22, $2B, $3F ; sir?\n#_1CD8C6: db $7F ; end of message\n\n; =========================================================\n; Heh heh heh! I laugh at your\n; misfortune! Now your magic\n; power will drop by one half!\n; Congratulations!\n; Now, do your best, even though\n; I'm sure it won't be enough!\n; Have a nice day! See you!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0111", + "code": "Message_0111:\n#_1CD8C7: db $07, $1E, $21, $59, $21, $1E, $21, $59 ; Heh\u23b5heh\u23b5\n#_1CD8CF: db $21, $1E, $21, $3E, $8A, $08, $59, $BA ; heh![ ]I\u23b5[la]\n#_1CD8D7: db $2E, $20, $21, $59, $91, $E3, $2B ; ugh\u23b5[at ][you]r\n#_1CD8DE: db $75 ; line 2\n#_1CD8DF: db $26, $B5, $A8, $2D, $2E, $27, $1E, $3E ; m[is][for]tune!\n#_1CD8E7: db $8A, $0D, $28, $30, $59, $E3, $2B, $59 ; [ ]Now\u23b5[you]r\u23b5\n#_1CD8EF: db $BD, $20, $22, $1C ; [ma]gic\n#_1CD8F3: db $76 ; line 3\n#_1CD8F4: db $CB, $A1, $E2, $25, $25, $59, $1D, $2B ; [pow][er ][wi]ll\u23b5dr\n#_1CD8FC: db $28, $29, $59, $1B, $32, $59, $C7, $1E ; op\u23b5by\u23b5[on]e\n#_1CD904: db $59, $B1, $25, $1F, $3E ; \u23b5[ha]lf!\n#_1CD909: db $7E ; wait for key\n#_1CD90A: db $73 ; scroll text\n#_1CD90B: db $02, $C7, $20, $2B, $94, $2E, $BA, $2D ; C[on]gr[at]u[la]t\n#_1CD913: db $22, $C7, $2C, $3E ; i[on]s!\n#_1CD917: db $73 ; scroll text\n#_1CD918: db $0D, $28, $30, $42, $59, $9F, $59, $E3 ; Now,\u23b5[do]\u23b5[you]\n#_1CD920: db $2B, $59, $97, $D3, $42, $59, $A7, $A0 ; r\u23b5[be][st],\u23b5[ev][en ]\n#_1CD928: db $2D, $21, $28, $2E, $20, $21 ; though\n#_1CD92E: db $73 ; scroll text\n#_1CD92F: db $08, $51, $26, $59, $2C, $2E, $CD, $B6 ; I'm\u23b5su[re ][it]\n#_1CD937: db $59, $30, $C7, $51, $2D, $59, $97, $59 ; \u23b5w[on]'t\u23b5[be]\u23b5\n#_1CD93F: db $A5, $28, $2E, $20, $21, $3E ; [en]ough!\n#_1CD945: db $7E ; wait for key\n#_1CD946: db $73 ; scroll text\n#_1CD947: db $07, $1A, $2F, $1E, $59, $1A, $59, $27 ; Have\u23b5a\u23b5n\n#_1CD94F: db $22, $1C, $1E, $59, $1D, $1A, $32, $3E ; ice\u23b5day!\n#_1CD957: db $8A, $12, $1E, $1E, $59, $E3, $3E ; [ ]See\u23b5[you]!\n#_1CD95E: db $7F ; end of message\n\n; =========================================================\n; Long ago, in the beautiful\n; kingdom of Hyrule surrounded\n; by mountains and forests\u2026\n; legends told of an omnipotent\n; and omniscient Golden Power\n; that resided in a hidden land.\n; Many people aggressively\n; sought to enter the hidden\n; Golden Land\u2026\n; But no one ever returned.\n; One day evil power began to\n; flow from the Golden Land\u2026\n; So the King commanded seven\n; wise men to seal the gate to\n; the Land of the Golden Power.\n; That seal should have remained\n; for all time\u2026\n;\n; \u2026 \u2026But, when these events\n; were obscured by the mists of\n; time and became legend\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0112", + "code": "Message_0112:\n#_1CD95F: db $6E, $00 ; set scroll speed\n#_1CD961: db $77, $07 ; set text color\n#_1CD963: db $7A, $03 ; set draw speed\n#_1CD965: db $6B, $02 ; set window border\n#_1CD967: db $67 ; next image\n#_1CD968: db $0B, $C7, $20, $59, $1A, $AC, $42, $59 ; L[on]g\u23b5a[go],\u23b5\n#_1CD970: db $B4, $59, $D8, $59, $97, $1A, $2E, $2D ; [in]\u23b5[the]\u23b5[be]aut\n#_1CD978: db $22, $1F, $2E, $25 ; iful\n#_1CD97C: db $75 ; line 2\n#_1CD97D: db $24, $B4, $20, $9F, $26, $59, $C6, $59 ; k[in]g[do]m\u23b5[of]\u23b5\n#_1CD985: db $07, $32, $2B, $2E, $25, $1E, $59, $2C ; Hyrule\u23b5s\n#_1CD98D: db $2E, $2B, $2B, $C4, $1E, $1D ; urr[ound]ed\n#_1CD993: db $76 ; line 3\n#_1CD994: db $1B, $32, $59, $26, $28, $2E, $27, $2D ; by\u23b5mount\n#_1CD99C: db $8F, $2C, $59, $8C, $A8, $1E, $D3, $2C ; [ain]s\u23b5[and ][for]e[st]s\n#_1CD9A4: db $43 ; \u2026\n#_1CD9A5: db $78, $09 ; delay\n#_1CD9A7: db $73 ; scroll text\n#_1CD9A8: db $25, $1E, $20, $A5, $1D, $2C, $59, $DA ; leg[en]ds\u23b5[to]\n#_1CD9B0: db $25, $1D, $59, $C6, $59, $93, $59, $28 ; ld\u23b5[of]\u23b5[an]\u23b5o\n#_1CD9B8: db $26, $27, $22, $29, $28, $2D, $A3 ; mnipot[ent]\n#_1CD9BF: db $73 ; scroll text\n#_1CD9C0: db $8C, $28, $26, $27, $B5, $1C, $22, $A3 ; [and ]omn[is]ci[ent]\n#_1CD9C8: db $59, $06, $28, $25, $1D, $A0, $0F, $28 ; \u23b5Gold[en ]Po\n#_1CD9D0: db $E0, $2B ; [we]r\n#_1CD9D2: db $73 ; scroll text\n#_1CD9D3: db $D7, $2D, $59, $CE, $2C, $22, $1D, $A4 ; [tha]t\u23b5[re]sid[ed ]\n#_1CD9DB: db $B4, $59, $1A, $59, $B0, $1D, $1D, $A0 ; [in]\u23b5a\u23b5[hi]dd[en ]\n#_1CD9E3: db $BA, $27, $1D, $41 ; [la]nd.\n#_1CD9E7: db $78, $09 ; delay\n#_1CD9E9: db $67 ; next image\n#_1CD9EA: db $67 ; next image\n#_1CD9EB: db $73 ; scroll text\n#_1CD9EC: db $0C, $93, $32, $59, $29, $1E, $28, $CA ; M[an]y\u23b5peo[ple]\n#_1CD9F4: db $59, $1A, $20, $20, $CE, $2C, $2C, $22 ; \u23b5agg[re]ssi\n#_1CD9FC: db $2F, $1E, $25, $32 ; vely\n#_1CDA00: db $73 ; scroll text\n#_1CDA01: db $D2, $2E, $20, $21, $2D, $59, $DA, $59 ; [so]ught\u23b5[to]\u23b5\n#_1CDA09: db $A3, $A1, $D8, $59, $B0, $1D, $1D, $A5 ; [ent][er ][the]\u23b5[hi]dd[en]\n#_1CDA11: db $73 ; scroll text\n#_1CDA12: db $06, $28, $25, $1D, $A0, $0B, $90, $43 ; Gold[en ]L[and]\u2026\n#_1CDA1A: db $78, $07 ; delay\n#_1CDA1C: db $73 ; scroll text\n#_1CDA1D: db $01, $2E, $2D, $59, $27, $28, $59, $C7 ; But\u23b5no\u23b5[on]\n#_1CDA25: db $1E, $59, $A7, $A1, $CE, $2D, $2E, $2B ; e\u23b5[ev][er ][re]tur\n#_1CDA2D: db $27, $1E, $1D, $41 ; ned.\n#_1CDA31: db $73 ; scroll text\n#_1CDA32: db $0E, $27, $1E, $59, $1D, $1A, $32, $59 ; One\u23b5day\u23b5\n#_1CDA3A: db $A7, $22, $25, $59, $CB, $A1, $97, $20 ; [ev]il\u23b5[pow][er ][be]g\n#_1CDA42: db $93, $59, $DA ; [an]\u23b5[to]\n#_1CDA45: db $73 ; scroll text\n#_1CDA46: db $1F, $BB, $30, $59, $A9, $26, $59, $D8 ; f[lo]w\u23b5[fro]m\u23b5[the]\n#_1CDA4E: db $59, $06, $28, $25, $1D, $A0, $0B, $90 ; \u23b5Gold[en ]L[and]\n#_1CDA56: db $43 ; \u2026\n#_1CDA57: db $78, $07 ; delay\n#_1CDA59: db $73 ; scroll text\n#_1CDA5A: db $12, $28, $59, $D8, $59, $0A, $B3, $9B ; So\u23b5[the]\u23b5K[ing ][com]\n#_1CDA62: db $BC, $1D, $A4, $D0, $2F, $A5 ; [man]d[ed ][se]v[en]\n#_1CDA68: db $73 ; scroll text\n#_1CDA69: db $E2, $D0, $59, $BE, $27, $59, $DA, $59 ; [wi][se]\u23b5[me]n\u23b5[to]\u23b5\n#_1CDA71: db $D0, $1A, $25, $59, $D8, $59, $20, $94 ; [se]al\u23b5[the]\u23b5g[at]\n#_1CDA79: db $1E, $59, $DA ; e\u23b5[to]\n#_1CDA7C: db $73 ; scroll text\n#_1CDA7D: db $D8, $59, $0B, $8C, $C6, $59, $D8, $59 ; [the]\u23b5L[and ][of]\u23b5[the]\u23b5\n#_1CDA85: db $06, $28, $25, $1D, $A0, $0F, $28, $E0 ; Gold[en ]Po[we]\n#_1CDA8D: db $2B, $41 ; r.\n#_1CDA8F: db $78, $09 ; delay\n#_1CDA91: db $67 ; next image\n#_1CDA92: db $67 ; next image\n#_1CDA93: db $73 ; scroll text\n#_1CDA94: db $E5, $2D, $59, $D0, $1A, $25, $59, $D1 ; [Tha]t\u23b5[se]al\u23b5[sh]\n#_1CDA9C: db $28, $2E, $25, $1D, $59, $AD, $59, $CE ; ould\u23b5[have]\u23b5[re]\n#_1CDAA4: db $BD, $B4, $1E, $1D ; [ma][in]ed\n#_1CDAA8: db $73 ; scroll text\n#_1CDAA9: db $A8, $59, $8E, $2D, $22, $BE, $43 ; [for]\u23b5[all ]ti[me]\u2026\n#_1CDAB0: db $73 ; scroll text\n#_1CDAB1: db $78, $09 ; delay\n#_1CDAB3: db $67 ; next image\n#_1CDAB4: db $67 ; next image\n#_1CDAB5: db $73 ; scroll text\n#_1CDAB6: db $43, $8A, $43, $01, $2E, $2D, $42, $59 ; \u2026[ ]\u2026But,\u23b5\n#_1CDABE: db $E1, $A0, $D8, $D0, $59, $A7, $A3, $2C ; [wh][en ][the][se]\u23b5[ev][ent]s\n#_1CDAC6: db $73 ; scroll text\n#_1CDAC7: db $E0, $CD, $28, $1B, $2C, $1C, $2E, $CE ; [we][re ]obscu[re]\n#_1CDACF: db $1D, $59, $1B, $32, $59, $D8, $59, $26 ; d\u23b5by\u23b5[the]\u23b5m\n#_1CDAD7: db $B5, $2D, $2C, $59, $C6 ; [is]ts\u23b5[of]\n#_1CDADC: db $73 ; scroll text\n#_1CDADD: db $2D, $22, $BE, $59, $8C, $97, $1C, $1A ; ti[me]\u23b5[and ][be]ca\n#_1CDAE5: db $BE, $59, $25, $1E, $20, $A5, $1D, $43 ; [me]\u23b5leg[en]d\u2026\n#_1CDAED: db $7F ; end of message\n\n; =========================================================\n; A mysterious wizard known as\n; Agahnim came to Hyrule to\n; release the seal. He eliminated\n; the good King of Hyrule\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0113", + "code": "Message_0113:\n#_1CDAEE: db $6B, $02 ; set window border\n#_1CDAF0: db $77, $07 ; set text color\n#_1CDAF2: db $7A, $03 ; set draw speed\n#_1CDAF4: db $74 ; line 1\n#_1CDAF5: db $00, $59, $26, $32, $D3, $A6, $22, $28 ; A\u23b5my[st][er]io\n#_1CDAFD: db $2E, $2C, $59, $E2, $33, $1A, $2B, $1D ; us\u23b5[wi]zard\n#_1CDB05: db $59, $B8, $27, $59, $1A, $2C ; \u23b5[know]n\u23b5as\n#_1CDB0B: db $75 ; line 2\n#_1CDB0C: db $00, $20, $1A, $21, $27, $22, $26, $59 ; Agahnim\u23b5\n#_1CDB14: db $1C, $1A, $BE, $59, $DA, $59, $07, $32 ; ca[me]\u23b5[to]\u23b5Hy\n#_1CDB1C: db $2B, $2E, $25, $1E, $59, $DA ; rule\u23b5[to]\n#_1CDB22: db $76 ; line 3\n#_1CDB23: db $CE, $25, $1E, $1A, $D0, $59, $D8, $59 ; [re]lea[se]\u23b5[the]\u23b5\n#_1CDB2B: db $D0, $1A, $25, $41, $8A, $07, $1E, $59 ; [se]al.[ ]He\u23b5\n#_1CDB33: db $1E, $25, $22, $26, $B4, $94, $1E, $1D ; elim[in][at]ed\n#_1CDB3B: db $78, $05 ; delay\n#_1CDB3D: db $73 ; scroll text\n#_1CDB3E: db $D8, $59, $AC, $28, $1D, $59, $0A, $B3 ; [the]\u23b5[go]od\u23b5K[ing ]\n#_1CDB46: db $C6, $59, $07, $32, $2B, $2E, $25, $1E ; [of]\u23b5Hyrule\n#_1CDB4E: db $43 ; \u2026\n#_1CDB4F: db $78, $05 ; delay\n#_1CDB51: db $7F ; end of message\n\n; =========================================================\n; Through evil magic, he began\n; to make descendants of the\n; seven wise men vanish, one\n; after another.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0114", + "code": "Message_0114:\n#_1CDB52: db $6B, $02 ; set window border\n#_1CDB54: db $77, $07 ; set text color\n#_1CDB56: db $7A, $03 ; set draw speed\n#_1CDB58: db $74 ; line 1\n#_1CDB59: db $13, $21, $2B, $28, $2E, $20, $21, $59 ; Through\u23b5\n#_1CDB61: db $A7, $22, $25, $59, $BD, $20, $22, $1C ; [ev]il\u23b5[ma]gic\n#_1CDB69: db $42, $59, $21, $1E, $59, $97, $20, $93 ; ,\u23b5he\u23b5[be]g[an]\n#_1CDB71: db $75 ; line 2\n#_1CDB72: db $DA, $59, $BD, $24, $1E, $59, $9D, $1C ; [to]\u23b5[ma]ke\u23b5[des]c\n#_1CDB7A: db $A5, $1D, $93, $2D, $2C, $59, $C6, $59 ; [en]d[an]ts\u23b5[of]\u23b5\n#_1CDB82: db $D8 ; [the]\n#_1CDB83: db $76 ; line 3\n#_1CDB84: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1CDB8C: db $59, $2F, $93, $B5, $21, $42, $59, $C7 ; \u23b5v[an][is]h,\u23b5[on]\n#_1CDB94: db $1E ; e\n#_1CDB95: db $78, $05 ; delay\n#_1CDB97: db $73 ; scroll text\n#_1CDB98: db $1A, $1F, $D4, $93, $28, $D8, $2B, $41 ; af[ter ][an]o[the]r.\n#_1CDBA0: db $78, $05 ; delay\n#_1CDBA2: db $7F ; end of message\n\n; =========================================================\n; And the time of destiny for\n; Princess Zelda is drawing\n; near.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0115", + "code": "Message_0115:\n#_1CDBA3: db $6B, $02 ; set window border\n#_1CDBA5: db $77, $07 ; set text color\n#_1CDBA7: db $7A, $03 ; set draw speed\n#_1CDBA9: db $74 ; line 1\n#_1CDBAA: db $00, $27, $1D, $59, $D8, $59, $2D, $22 ; And\u23b5[the]\u23b5ti\n#_1CDBB2: db $BE, $59, $C6, $59, $9D, $2D, $B4, $32 ; [me]\u23b5[of]\u23b5[des]t[in]y\n#_1CDBBA: db $59, $A8 ; \u23b5[for]\n#_1CDBBC: db $75 ; line 2\n#_1CDBBD: db $0F, $2B, $B4, $1C, $1E, $2C, $2C, $59 ; Pr[in]cess\u23b5\n#_1CDBC5: db $19, $1E, $25, $1D, $1A, $59, $B5, $59 ; Zelda\u23b5[is]\u23b5\n#_1CDBCD: db $1D, $2B, $1A, $E2, $27, $20 ; dra[wi]ng\n#_1CDBD3: db $76 ; line 3\n#_1CDBD4: db $27, $A2, $41 ; n[ear].\n#_1CDBD7: db $78, $05 ; delay\n#_1CDBD9: db $7F ; end of message\n\n; =========================================================\n; Because the key is locked\n; inside this chest, you can\n; never open it.\n; Just take it with you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0116", + "code": "Message_0116:\n#_1CDBDA: db $01, $1E, $1C, $1A, $2E, $D0, $59, $D8 ; Becau[se]\u23b5[the]\n#_1CDBE2: db $59, $24, $1E, $32, $59, $B5, $59, $BB ; \u23b5key\u23b5[is]\u23b5[lo]\n#_1CDBEA: db $9C, $1E, $1D ; [ck]ed\n#_1CDBED: db $75 ; line 2\n#_1CDBEE: db $B4, $2C, $22, $1D, $1E, $59, $D9, $2C ; [in]side\u23b5[thi]s\n#_1CDBF6: db $59, $9A, $D3, $42, $59, $E3, $59, $1C ; \u23b5[che][st],\u23b5[you]\u23b5c\n#_1CDBFE: db $93 ; [an]\n#_1CDBFF: db $76 ; line 3\n#_1CDC00: db $27, $A7, $A1, $C3, $59, $B6, $41 ; n[ev][er ][open]\u23b5[it].\n#_1CDC07: db $7E ; wait for key\n#_1CDC08: db $73 ; scroll text\n#_1CDC09: db $09, $2E, $D3, $59, $2D, $1A, $24, $1E ; Ju[st]\u23b5take\n#_1CDC11: db $59, $B6, $59, $DE, $59, $E3, $41 ; \u23b5[it]\u23b5[with]\u23b5[you].\n#_1CDC18: db $7F ; end of message\n\n; =========================================================\n; 100 Rupees for 30 Bombs! 30\n; Bombs for just 100 Rupees!\n; Please buy 'em, mister!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0117", + "code": "Message_0117:\n#_1CDC19: db $35, $34, $34, $59, $11, $DC, $1E, $1E ; 100\u23b5R[up]ee\n#_1CDC21: db $2C, $59, $A8, $59, $37, $34, $59, $01 ; s\u23b5[for]\u23b530\u23b5B\n#_1CDC29: db $28, $26, $1B, $2C, $3E, $8A, $37, $34 ; ombs![ ]30\n#_1CDC31: db $75 ; line 2\n#_1CDC32: db $01, $28, $26, $1B, $2C, $59, $A8, $59 ; Bombs\u23b5[for]\u23b5\n#_1CDC3A: db $B7, $59, $35, $34, $34, $59, $11, $DC ; [just]\u23b5100\u23b5R[up]\n#_1CDC42: db $1E, $1E, $2C, $3E ; ees!\n#_1CDC46: db $76 ; line 3\n#_1CDC47: db $0F, $25, $1E, $1A, $D0, $59, $1B, $2E ; Plea[se]\u23b5bu\n#_1CDC4F: db $32, $59, $51, $1E, $26, $42, $59, $26 ; y\u23b5'em,\u23b5m\n#_1CDC57: db $B5, $D6, $3E ; [is][ter]!\n#_1CDC5A: db $7F ; end of message\n\n; =========================================================\n; 100 Rupees for 30 Bombs! I also\n; have a new Super Bomb in stock\n; for only 100 Rupees! Please\n; buy it too, mister!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0118", + "code": "Message_0118:\n#_1CDC5B: db $35, $34, $34, $59, $11, $DC, $1E, $1E ; 100\u23b5R[up]ee\n#_1CDC63: db $2C, $59, $A8, $59, $37, $34, $59, $01 ; s\u23b5[for]\u23b530\u23b5B\n#_1CDC6B: db $28, $26, $1B, $2C, $3E, $8A, $08, $59 ; ombs![ ]I\u23b5\n#_1CDC73: db $1A, $25, $D2 ; al[so]\n#_1CDC76: db $75 ; line 2\n#_1CDC77: db $AD, $59, $1A, $59, $27, $1E, $30, $59 ; [have]\u23b5a\u23b5new\u23b5\n#_1CDC7F: db $12, $DC, $A1, $01, $28, $26, $1B, $59 ; S[up][er ]Bomb\u23b5\n#_1CDC87: db $B4, $59, $D3, $28, $9C ; [in]\u23b5[st]o[ck]\n#_1CDC8C: db $76 ; line 3\n#_1CDC8D: db $A8, $59, $C7, $B9, $35, $34, $34, $59 ; [for]\u23b5[on][ly ]100\u23b5\n#_1CDC95: db $11, $DC, $1E, $1E, $2C, $3E, $8A, $0F ; R[up]ees![ ]P\n#_1CDC9D: db $25, $1E, $1A, $D0 ; lea[se]\n#_1CDCA1: db $7E ; wait for key\n#_1CDCA2: db $73 ; scroll text\n#_1CDCA3: db $1B, $2E, $32, $59, $B6, $59, $DA, $28 ; buy\u23b5[it]\u23b5[to]o\n#_1CDCAB: db $42, $59, $26, $B5, $D6, $3E ; ,\u23b5m[is][ter]!\n#_1CDCB1: db $7F ; end of message\n\n; =========================================================\n; Thank you very much.\n; Thank you very much.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0119", + "code": "Message_0119:\n#_1CDCB2: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_1CDCBA: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_1CDCBF: db $75 ; line 2\n#_1CDCC0: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_1CDCC8: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_1CDCCD: db $7F ; end of message\n\n; =========================================================\n; Thank you very much. You can\n; drop this Bomb off anywhere.\n; (Press the \u24b6 Button.)\n; Please don't forget it.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011A", + "code": "Message_011A:\n#_1CDCCE: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_1CDCD6: db $59, $BF, $1C, $21, $41, $8A, $E8, $59 ; \u23b5[mu]ch.[ ][You]\u23b5\n#_1CDCDE: db $1C, $93 ; c[an]\n#_1CDCE0: db $75 ; line 2\n#_1CDCE1: db $1D, $2B, $28, $29, $59, $D9, $2C, $59 ; drop\u23b5[thi]s\u23b5\n#_1CDCE9: db $01, $28, $26, $1B, $59, $C6, $1F, $59 ; Bomb\u23b5[of]f\u23b5\n#_1CDCF1: db $93, $32, $E1, $A6, $1E, $41 ; [an]y[wh][er]e.\n#_1CDCF7: db $76 ; line 3\n#_1CDCF8: db $45, $0F, $CE, $2C, $2C, $59, $D8, $59 ; (P[re]ss\u23b5[the]\u23b5\n#_1CDD00: db $5B, $59, $01, $2E, $2D, $DA, $27, $41 ; \u24b6\u23b5But[to]n.\n#_1CDD08: db $46 ; )\n#_1CDD09: db $7E ; wait for key\n#_1CDD0A: db $73 ; scroll text\n#_1CDD0B: db $0F, $25, $1E, $1A, $D0, $59, $9F, $C0 ; Plea[se]\u23b5[do][n't ]\n#_1CDD13: db $A8, $AB, $59, $B6, $41 ; [for][get]\u23b5[it].\n#_1CDD18: db $7F ; end of message\n\n; =========================================================\n; Ki ki ki! If you give me 100\n; Rupees, I will open the\n; entrance for you. Ki ki ki!\n; What will you do?\n; > Ask him to open it\n; Try to open it yourself\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011B", + "code": "Message_011B:\n#_1CDD19: db $0A, $22, $59, $24, $22, $59, $24, $22 ; Ki\u23b5ki\u23b5ki\n#_1CDD21: db $3E, $8A, $08, $1F, $59, $E3, $59, $AA ; ![ ]If\u23b5[you]\u23b5[give ]\n#_1CDD29: db $BE, $59, $35, $34, $34 ; [me]\u23b5100\n#_1CDD2E: db $75 ; line 2\n#_1CDD2F: db $11, $DC, $1E, $1E, $2C, $42, $8A, $08 ; R[up]ees,[ ]I\n#_1CDD37: db $59, $E2, $25, $25, $59, $C3, $59, $D8 ; \u23b5[wi]ll\u23b5[open]\u23b5[the]\n#_1CDD3F: db $76 ; line 3\n#_1CDD40: db $A3, $2B, $93, $1C, $1E, $59, $A8, $59 ; [ent]r[an]ce\u23b5[for]\u23b5\n#_1CDD48: db $E3, $41, $8A, $0A, $22, $59, $24, $22 ; [you].[ ]Ki\u23b5ki\n#_1CDD50: db $59, $24, $22, $3E ; \u23b5ki!\n#_1CDD54: db $7E ; wait for key\n#_1CDD55: db $73 ; scroll text\n#_1CDD56: db $8A, $16, $B1, $2D, $59, $E2, $25, $25 ; [ ]W[ha]t\u23b5[wi]ll\n#_1CDD5E: db $59, $E3, $59, $9F, $3F ; \u23b5[you]\u23b5[do]?\n#_1CDD63: db $73 ; scroll text\n#_1CDD64: db $88, $44, $59, $00, $2C, $24, $59, $B0 ; [ ]>\u23b5Ask\u23b5[hi]\n#_1CDD6C: db $26, $59, $DA, $59, $C3, $59, $B6 ; m\u23b5[to]\u23b5[open]\u23b5[it]\n#_1CDD73: db $73 ; scroll text\n#_1CDD74: db $88, $89, $13, $2B, $32, $59, $DA, $59 ; [ ][ ]Try\u23b5[to]\u23b5\n#_1CDD7C: db $C3, $59, $B6, $59, $E3, $2B, $D0, $25 ; [open]\u23b5[it]\u23b5[you]r[se]l\n#_1CDD84: db $1F ; f\n#_1CDD85: db $68 ; choose 2 indented\n#_1CDD86: db $7F ; end of message\n\n; =========================================================\n; Ki ki ki! Hmph!\n; Do it yourself, then!\n; Kik ki ki!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011C", + "code": "Message_011C:\n#_1CDD87: db $0A, $22, $59, $24, $22, $59, $24, $22 ; Ki\u23b5ki\u23b5ki\n#_1CDD8F: db $3E, $8A, $07, $26, $29, $21, $3E ; ![ ]Hmph!\n#_1CDD96: db $75 ; line 2\n#_1CDD97: db $03, $28, $59, $B6, $59, $E3, $2B, $D0 ; Do\u23b5[it]\u23b5[you]r[se]\n#_1CDD9F: db $25, $1F, $42, $59, $D8, $27, $3E ; lf,\u23b5[the]n!\n#_1CDDA6: db $76 ; line 3\n#_1CDDA7: db $0A, $22, $24, $59, $24, $22, $59, $24 ; Kik\u23b5ki\u23b5k\n#_1CDDAF: db $22, $3E ; i!\n#_1CDDB1: db $7F ; end of message\n\n; =========================================================\n; Ki ki! Good choice! Then I get\n; 100 of your Rupees. Kik ki ki!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011D", + "code": "Message_011D:\n#_1CDDB2: db $0A, $22, $59, $24, $22, $3E, $8A, $06 ; Ki\u23b5ki![ ]G\n#_1CDDBA: db $28, $28, $1D, $59, $1C, $21, $28, $22 ; ood\u23b5choi\n#_1CDDC2: db $1C, $1E, $3E, $8A, $E6, $27, $59, $08 ; ce![ ][The]n\u23b5I\n#_1CDDCA: db $59, $AB ; \u23b5[get]\n#_1CDDCC: db $75 ; line 2\n#_1CDDCD: db $35, $34, $34, $59, $C6, $59, $E3, $2B ; 100\u23b5[of]\u23b5[you]r\n#_1CDDD5: db $59, $11, $DC, $1E, $1E, $2C, $41, $8A ; \u23b5R[up]ees.[ ]\n#_1CDDDD: db $0A, $22, $24, $59, $24, $22, $59, $24 ; Kik\u23b5ki\u23b5k\n#_1CDDE5: db $22, $3E ; i!\n#_1CDDE7: db $7F ; end of message\n\n; =========================================================\n; I'm Kiki the monkey ki ki!\n; I love Rupees more than\n; anything. Can you spare me\n; 10 Rupees?\n; What will you do?\n; > Give him 10 Rupees\n; Never give him anything\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011E", + "code": "Message_011E:\n#_1CDDE8: db $08, $51, $26, $59, $0A, $22, $24, $22 ; I'm\u23b5Kiki\n#_1CDDF0: db $59, $D8, $59, $26, $C7, $24, $1E, $32 ; \u23b5[the]\u23b5m[on]key\n#_1CDDF8: db $59, $24, $22, $59, $24, $22, $3E ; \u23b5ki\u23b5ki!\n#_1CDDFF: db $75 ; line 2\n#_1CDE00: db $08, $59, $BB, $2F, $1E, $59, $11, $DC ; I\u23b5[lo]ve\u23b5R[up]\n#_1CDE08: db $1E, $1E, $2C, $59, $26, $C8, $1E, $59 ; ees\u23b5m[or]e\u23b5\n#_1CDE10: db $D7, $27 ; [tha]n\n#_1CDE12: db $76 ; line 3\n#_1CDE13: db $93, $32, $D5, $20, $41, $8A, $02, $93 ; [an]y[thin]g.[ ]C[an]\n#_1CDE1B: db $59, $E3, $59, $2C, $29, $8D, $BE ; \u23b5[you]\u23b5sp[are ][me]\n#_1CDE22: db $7E ; wait for key\n#_1CDE23: db $73 ; scroll text\n#_1CDE24: db $35, $34, $59, $11, $DC, $1E, $1E, $2C ; 10\u23b5R[up]ees\n#_1CDE2C: db $3F ; ?\n#_1CDE2D: db $7E ; wait for key\n#_1CDE2E: db $73 ; scroll text\n#_1CDE2F: db $59, $16, $B1, $2D, $59, $E2, $25, $25 ; \u23b5W[ha]t\u23b5[wi]ll\n#_1CDE37: db $59, $E3, $59, $9F, $3F ; \u23b5[you]\u23b5[do]?\n#_1CDE3C: db $73 ; scroll text\n#_1CDE3D: db $88, $44, $59, $06, $22, $2F, $1E, $59 ; [ ]>\u23b5Give\u23b5\n#_1CDE45: db $B0, $26, $59, $35, $34, $59, $11, $DC ; [hi]m\u23b510\u23b5R[up]\n#_1CDE4D: db $1E, $1E, $2C ; ees\n#_1CDE50: db $73 ; scroll text\n#_1CDE51: db $88, $89, $0D, $A7, $A1, $AA, $B0, $26 ; [ ][ ]N[ev][er ][give ][hi]m\n#_1CDE59: db $59, $93, $32, $D5, $20 ; \u23b5[an]y[thin]g\n#_1CDE5E: db $68 ; choose 2 indented\n#_1CDE5F: db $7F ; end of message\n\n; =========================================================\n; Ki ki ki ki! Good choice! I\n; will accompany you for a while.\n; Kik kiki!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_011F", + "code": "Message_011F:\n#_1CDE60: db $0A, $22, $59, $24, $22, $59, $24, $22 ; Ki\u23b5ki\u23b5ki\n#_1CDE68: db $59, $24, $22, $3E, $8A, $06, $28, $28 ; \u23b5ki![ ]Goo\n#_1CDE70: db $1D, $59, $1C, $21, $28, $22, $1C, $1E ; d\u23b5choice\n#_1CDE78: db $3E, $8A, $08 ; ![ ]I\n#_1CDE7B: db $75 ; line 2\n#_1CDE7C: db $E2, $25, $25, $59, $1A, $1C, $9B, $29 ; [wi]ll\u23b5ac[com]p\n#_1CDE84: db $93, $32, $59, $E3, $59, $A8, $59, $1A ; [an]y\u23b5[you]\u23b5[for]\u23b5a\n#_1CDE8C: db $59, $E1, $22, $25, $1E, $41 ; \u23b5[wh]ile.\n#_1CDE92: db $76 ; line 3\n#_1CDE93: db $0A, $22, $24, $59, $24, $22, $24, $22 ; Kik\u23b5kiki\n#_1CDE9B: db $3E ; !\n#_1CDE9C: db $7F ; end of message\n\n; =========================================================\n; Ki ki! Harumph! I have no\n; reason to talk to you, then.\n; Bye bye! Kik ki ki!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0120", + "code": "Message_0120:\n#_1CDE9D: db $0A, $22, $59, $24, $22, $3E, $8A, $07 ; Ki\u23b5ki![ ]H\n#_1CDEA5: db $1A, $2B, $2E, $26, $29, $21, $3E, $8A ; arumph![ ]\n#_1CDEAD: db $08, $59, $AD, $59, $27, $28 ; I\u23b5[have]\u23b5no\n#_1CDEB3: db $75 ; line 2\n#_1CDEB4: db $CE, $1A, $D2, $27, $59, $DA, $59, $2D ; [re]a[so]n\u23b5[to]\u23b5t\n#_1CDEBC: db $1A, $25, $24, $59, $DA, $59, $E3, $42 ; alk\u23b5[to]\u23b5[you],\n#_1CDEC4: db $59, $D8, $27, $41 ; \u23b5[the]n.\n#_1CDEC8: db $76 ; line 3\n#_1CDEC9: db $01, $32, $1E, $59, $1B, $32, $1E, $3E ; Bye\u23b5bye!\n#_1CDED1: db $8A, $0A, $22, $24, $59, $24, $22, $59 ; [ ]Kik\u23b5ki\u23b5\n#_1CDED9: db $24, $22, $3E ; ki!\n#_1CDEDC: db $7F ; end of message\n\n; =========================================================\n; Ki ki? What are you doing?\n; I don't want to go there!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0121", + "code": "Message_0121:\n#_1CDEDD: db $0A, $22, $59, $24, $22, $3F, $8A, $16 ; Ki\u23b5ki?[ ]W\n#_1CDEE5: db $B1, $2D, $59, $8D, $E3, $59, $9F, $B4 ; [ha]t\u23b5[are ][you]\u23b5[do][in]\n#_1CDEED: db $20, $3F ; g?\n#_1CDEEF: db $75 ; line 2\n#_1CDEF0: db $08, $59, $9F, $C0, $DF, $27, $2D, $59 ; I\u23b5[do][n't ][wa]nt\u23b5\n#_1CDEF8: db $DA, $59, $AC, $59, $D8, $CE, $3E ; [to]\u23b5[go]\u23b5[the][re]!\n#_1CDEFF: db $7F ; end of message\n\n; =========================================================\n; Ohh, thank you very much!\n; You saved my life. Please take\n; me outside.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0122", + "code": "Message_0122:\n#_1CDF00: db $0E, $21, $21, $42, $59, $D7, $27, $24 ; Ohh,\u23b5[tha]nk\n#_1CDF08: db $59, $E3, $59, $DD, $32, $59, $BF, $1C ; \u23b5[you]\u23b5[ver]y\u23b5[mu]c\n#_1CDF10: db $21, $3E ; h!\n#_1CDF12: db $75 ; line 2\n#_1CDF13: db $E8, $59, $2C, $1A, $2F, $A4, $26, $32 ; [You]\u23b5sav[ed ]my\n#_1CDF1B: db $59, $25, $22, $1F, $1E, $41, $8A, $0F ; \u23b5life.[ ]P\n#_1CDF23: db $25, $1E, $1A, $D0, $59, $2D, $1A, $24 ; lea[se]\u23b5tak\n#_1CDF2B: db $1E ; e\n#_1CDF2C: db $76 ; line 3\n#_1CDF2D: db $BE, $59, $28, $2E, $2D, $2C, $22, $1D ; [me]\u23b5outsid\n#_1CDF35: db $1E, $41 ; e.\n#_1CDF37: db $7F ; end of message\n\n; =========================================================\n; Gyaaah!\n; Too bright!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0123", + "code": "Message_0123:\n#_1CDF38: db $06, $32, $1A, $1A, $1A, $21, $3E ; Gyaaah!\n#_1CDF3F: db $75 ; line 2\n#_1CDF40: db $13, $28, $28, $59, $1B, $2B, $22, $20 ; Too\u23b5brig\n#_1CDF48: db $21, $2D, $3E ; ht!\n#_1CDF4B: db $7F ; end of message\n\n; =========================================================\n; Err\u2026 Wait a minute\u2026\n; Please don't go this way.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0124", + "code": "Message_0124:\n#_1CDF4C: db $04, $2B, $2B, $43, $8A, $16, $1A, $B6 ; Err\u2026[ ]Wa[it]\n#_1CDF54: db $59, $1A, $59, $26, $B4, $2E, $2D, $1E ; \u23b5a\u23b5m[in]ute\n#_1CDF5C: db $43 ; \u2026\n#_1CDF5D: db $75 ; line 2\n#_1CDF5E: db $0F, $25, $1E, $1A, $D0, $59, $9F, $C0 ; Plea[se]\u23b5[do][n't ]\n#_1CDF66: db $AC, $59, $D9, $2C, $59, $DF, $32, $41 ; [go]\u23b5[thi]s\u23b5[wa]y.\n#_1CDF6E: db $7F ; end of message\n\n; =========================================================\n; I am Aginah. I sense something\n; is happening in the Golden Land\n; the seven wise men sealed\u2026\n; This must be an omen of the\n; Great Cataclysm foretold by\n; the people of Hylian blood\u2026\n; \u2026 \u2026 \u2026\n; The prophecy says, \"The Hero\n; will stand in the desert holding\n; the Book Of Mudora.\"\n; If you have the Book Of Mudora\n; you can read the language of\n; the Hylia People.\n; It should be in the house of\n; books in the village\u2026\n; You must get it!\n; If you are the person who will\n; be The Hero\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0125", + "code": "Message_0125:\n#_1CDF6F: db $08, $59, $1A, $26, $59, $00, $20, $B4 ; I\u23b5am\u23b5Ag[in]\n#_1CDF77: db $1A, $21, $41, $8A, $08, $59, $D0, $27 ; ah.[ ]I\u23b5[se]n\n#_1CDF7F: db $D0, $59, $CF, $D5, $20 ; [se]\u23b5[some][thin]g\n#_1CDF84: db $75 ; line 2\n#_1CDF85: db $B5, $59, $B1, $29, $29, $A5, $B3, $B4 ; [is]\u23b5[ha]pp[en][ing ][in]\n#_1CDF8D: db $59, $D8, $59, $06, $28, $25, $1D, $A0 ; \u23b5[the]\u23b5Gold[en ]\n#_1CDF95: db $0B, $90 ; L[and]\n#_1CDF97: db $76 ; line 3\n#_1CDF98: db $D8, $59, $D0, $2F, $A0, $E2, $D0, $59 ; [the]\u23b5[se]v[en ][wi][se]\u23b5\n#_1CDFA0: db $BE, $27, $59, $D0, $1A, $25, $1E, $1D ; [me]n\u23b5[se]aled\n#_1CDFA8: db $43 ; \u2026\n#_1CDFA9: db $7E ; wait for key\n#_1CDFAA: db $73 ; scroll text\n#_1CDFAB: db $E7, $2C, $59, $BF, $D3, $59, $97, $59 ; [Thi]s\u23b5[mu][st]\u23b5[be]\u23b5\n#_1CDFB3: db $93, $59, $28, $BE, $27, $59, $C6, $59 ; [an]\u23b5o[me]n\u23b5[of]\u23b5\n#_1CDFBB: db $D8 ; [the]\n#_1CDFBC: db $73 ; scroll text\n#_1CDFBD: db $06, $CE, $91, $02, $94, $1A, $1C, $25 ; G[re][at ]C[at]acl\n#_1CDFC5: db $32, $2C, $26, $59, $A8, $1E, $DA, $25 ; ysm\u23b5[for]e[to]l\n#_1CDFCD: db $1D, $59, $1B, $32 ; d\u23b5by\n#_1CDFD1: db $73 ; scroll text\n#_1CDFD2: db $D8, $59, $29, $1E, $28, $CA, $59, $C6 ; [the]\u23b5peo[ple]\u23b5[of]\n#_1CDFDA: db $59, $07, $32, $25, $22, $93, $59, $1B ; \u23b5Hyli[an]\u23b5b\n#_1CDFE2: db $BB, $28, $1D, $43 ; [lo]od\u2026\n#_1CDFE6: db $7E ; wait for key\n#_1CDFE7: db $73 ; scroll text\n#_1CDFE8: db $43, $59, $43, $59, $43 ; \u2026\u23b5\u2026\u23b5\u2026\n#_1CDFED: db $73 ; scroll text\n#_1CDFEE: db $E6, $59, $CC, $29, $21, $1E, $1C, $32 ; [The]\u23b5[pro]phecy\n#_1CDFF6: db $59, $2C, $1A, $32, $2C, $42, $59, $4C ; \u23b5says,\u23b5\"\n#_1CDFFE: db $E6, $59, $E4, $28 ; [The]\u23b5[Her]o\n#_1CE002: db $73 ; scroll text\n#_1CE003: db $E2, $25, $25, $59, $D3, $8C, $B4, $59 ; [wi]ll\u23b5[st][and ][in]\u23b5\n#_1CE00B: db $D8, $59, $9D, $A6, $2D, $59, $21, $28 ; [the]\u23b5[des][er]t\u23b5ho\n#_1CE013: db $25, $9E, $27, $20 ; l[di]ng\n#_1CE017: db $7E ; wait for key\n#_1CE018: db $73 ; scroll text\n#_1CE019: db $D8, $59, $01, $28, $28, $24, $59, $0E ; [the]\u23b5Book\u23b5O\n#_1CE021: db $1F, $59, $0C, $2E, $9F, $2B, $1A, $41 ; f\u23b5Mu[do]ra.\n#_1CE029: db $4C ; \"\n#_1CE02A: db $73 ; scroll text\n#_1CE02B: db $08, $1F, $59, $E3, $59, $AD, $59, $D8 ; If\u23b5[you]\u23b5[have]\u23b5[the]\n#_1CE033: db $59, $01, $28, $28, $24, $59, $0E, $1F ; \u23b5Book\u23b5Of\n#_1CE03B: db $59, $0C, $2E, $9F, $2B, $1A ; \u23b5Mu[do]ra\n#_1CE041: db $73 ; scroll text\n#_1CE042: db $E3, $59, $99, $CE, $1A, $1D, $59, $D8 ; [you]\u23b5[can ][re]ad\u23b5[the]\n#_1CE04A: db $59, $BA, $27, $20, $2E, $1A, $20, $1E ; \u23b5[la]nguage\n#_1CE052: db $59, $C6 ; \u23b5[of]\n#_1CE054: db $7E ; wait for key\n#_1CE055: db $73 ; scroll text\n#_1CE056: db $D8, $59, $07, $32, $25, $22, $1A, $59 ; [the]\u23b5Hylia\u23b5\n#_1CE05E: db $0F, $1E, $28, $CA, $41 ; Peo[ple].\n#_1CE063: db $73 ; scroll text\n#_1CE064: db $08, $2D, $59, $D1, $28, $2E, $25, $1D ; It\u23b5[sh]ould\n#_1CE06C: db $59, $97, $59, $B4, $59, $D8, $59, $21 ; \u23b5[be]\u23b5[in]\u23b5[the]\u23b5h\n#_1CE074: db $28, $2E, $D0, $59, $C6 ; ou[se]\u23b5[of]\n#_1CE079: db $73 ; scroll text\n#_1CE07A: db $98, $28, $24, $2C, $59, $B4, $59, $D8 ; [bo]oks\u23b5[in]\u23b5[the]\n#_1CE082: db $59, $2F, $22, $25, $BA, $20, $1E, $43 ; \u23b5vil[la]ge\u2026\n#_1CE08A: db $7E ; wait for key\n#_1CE08B: db $73 ; scroll text\n#_1CE08C: db $E8, $59, $BF, $D3, $59, $AB, $59, $B6 ; [You]\u23b5[mu][st]\u23b5[get]\u23b5[it]\n#_1CE094: db $3E ; !\n#_1CE095: db $73 ; scroll text\n#_1CE096: db $08, $1F, $59, $E3, $59, $8D, $D8, $59 ; If\u23b5[you]\u23b5[are ][the]\u23b5\n#_1CE09E: db $C9, $D2, $27, $59, $E1, $28, $59, $E2 ; [per][so]n\u23b5[wh]o\u23b5[wi]\n#_1CE0A6: db $25, $25 ; ll\n#_1CE0A8: db $73 ; scroll text\n#_1CE0A9: db $97, $59, $E6, $59, $E4, $28, $43 ; [be]\u23b5[The]\u23b5[Her]o\u2026\n#_1CE0B0: db $7F ; end of message\n\n; =========================================================\n; You have collected the three\n; Pendants.\n; If you are indeed the Hero who\n; has Wisdom, Courage and Power,\n; the Master Sword sleeping in\n; the forest will be yours.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0126", + "code": "Message_0126:\n#_1CE0B1: db $E8, $59, $AD, $59, $1C, $28, $25, $25 ; [You]\u23b5[have]\u23b5coll\n#_1CE0B9: db $1E, $1C, $2D, $A4, $D8, $59, $2D, $21 ; ect[ed ][the]\u23b5th\n#_1CE0C1: db $CE, $1E ; [re]e\n#_1CE0C3: db $75 ; line 2\n#_1CE0C4: db $0F, $A5, $1D, $93, $2D, $2C, $41 ; P[en]d[an]ts.\n#_1CE0CB: db $76 ; line 3\n#_1CE0CC: db $08, $1F, $59, $E3, $59, $8D, $B4, $1D ; If\u23b5[you]\u23b5[are ][in]d\n#_1CE0D4: db $1E, $A4, $D8, $59, $E4, $28, $59, $E1 ; e[ed ][the]\u23b5[Her]o\u23b5[wh]\n#_1CE0DC: db $28 ; o\n#_1CE0DD: db $7E ; wait for key\n#_1CE0DE: db $73 ; scroll text\n#_1CE0DF: db $AE, $59, $16, $B5, $9F, $26, $42, $59 ; [has]\u23b5W[is][do]m,\u23b5\n#_1CE0E7: db $02, $28, $2E, $2B, $1A, $20, $1E, $59 ; Courage\u23b5\n#_1CE0EF: db $8C, $0F, $28, $E0, $2B, $42 ; [and ]Po[we]r,\n#_1CE0F5: db $73 ; scroll text\n#_1CE0F6: db $D8, $59, $0C, $92, $A1, $12, $30, $C8 ; [the]\u23b5M[ast][er ]Sw[or]\n#_1CE0FE: db $1D, $59, $2C, $25, $1E, $1E, $29, $B3 ; d\u23b5sleep[ing ]\n#_1CE106: db $B4 ; [in]\n#_1CE107: db $73 ; scroll text\n#_1CE108: db $D8, $59, $A8, $1E, $D3, $59, $E2, $25 ; [the]\u23b5[for]e[st]\u23b5[wi]l\n#_1CE110: db $25, $59, $97, $59, $E3, $2B, $2C, $41 ; l\u23b5[be]\u23b5[you]rs.\n#_1CE118: db $7F ; end of message\n\n; =========================================================\n; Aha! It is the Book Of Mudora.\n; With it, you can read the\n; language of the Hylia people.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0127", + "code": "Message_0127:\n#_1CE119: db $00, $B1, $3E, $8A, $08, $2D, $59, $B5 ; A[ha]![ ]It\u23b5[is]\n#_1CE121: db $59, $D8, $59, $01, $28, $28, $24, $59 ; \u23b5[the]\u23b5Book\u23b5\n#_1CE129: db $0E, $1F, $59, $0C, $2E, $9F, $2B, $1A ; Of\u23b5Mu[do]ra\n#_1CE131: db $41 ; .\n#_1CE132: db $75 ; line 2\n#_1CE133: db $16, $B6, $21, $59, $B6, $42, $59, $E3 ; W[it]h\u23b5[it],\u23b5[you]\n#_1CE13B: db $59, $99, $CE, $1A, $1D, $59, $D8 ; \u23b5[can ][re]ad\u23b5[the]\n#_1CE142: db $76 ; line 3\n#_1CE143: db $BA, $27, $20, $2E, $1A, $20, $1E, $59 ; [la]nguage\u23b5\n#_1CE14B: db $C6, $59, $D8, $59, $07, $32, $25, $22 ; [of]\u23b5[the]\u23b5Hyli\n#_1CE153: db $1A, $59, $29, $1E, $28, $CA, $41 ; a\u23b5peo[ple].\n#_1CE15A: db $7F ; end of message\n\n; =========================================================\n; You are the true Hero\u2026\n; I believe that you will return\n; peace to this land again.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0128", + "code": "Message_0128:\n#_1CE15B: db $E8, $59, $8D, $D8, $59, $DB, $2E, $1E ; [You]\u23b5[are ][the]\u23b5[tr]ue\n#_1CE163: db $59, $E4, $28, $43 ; \u23b5[Her]o\u2026\n#_1CE167: db $75 ; line 2\n#_1CE168: db $08, $59, $97, $25, $22, $A7, $1E, $59 ; I\u23b5[be]li[ev]e\u23b5\n#_1CE170: db $D7, $2D, $59, $E3, $59, $E2, $25, $25 ; [tha]t\u23b5[you]\u23b5[wi]ll\n#_1CE178: db $59, $CE, $2D, $2E, $2B, $27 ; \u23b5[re]turn\n#_1CE17E: db $76 ; line 3\n#_1CE17F: db $29, $1E, $1A, $1C, $1E, $59, $DA, $59 ; peace\u23b5[to]\u23b5\n#_1CE187: db $D9, $2C, $59, $BA, $27, $1D, $59, $1A ; [thi]s\u23b5[la]nd\u23b5a\n#_1CE18F: db $20, $8F, $41 ; g[ain].\n#_1CE192: db $7F ; end of message\n\n; =========================================================\n; Your trial in the desert has\n; made you stronger. The blood\n; of the Hero must be in your\n; veins\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0129", + "code": "Message_0129:\n#_1CE193: db $E8, $2B, $59, $DB, $22, $1A, $25, $59 ; [You]r\u23b5[tr]ial\u23b5\n#_1CE19B: db $B4, $59, $D8, $59, $9D, $A6, $2D, $59 ; [in]\u23b5[the]\u23b5[des][er]t\u23b5\n#_1CE1A3: db $AE ; [has]\n#_1CE1A4: db $75 ; line 2\n#_1CE1A5: db $BD, $1D, $1E, $59, $E3, $59, $D3, $2B ; [ma]de\u23b5[you]\u23b5[st]r\n#_1CE1AD: db $C7, $20, $A6, $41, $8A, $E6, $59, $1B ; [on]g[er].[ ][The]\u23b5b\n#_1CE1B5: db $BB, $28, $1D ; [lo]od\n#_1CE1B8: db $76 ; line 3\n#_1CE1B9: db $C6, $59, $D8, $59, $E4, $28, $59, $BF ; [of]\u23b5[the]\u23b5[Her]o\u23b5[mu]\n#_1CE1C1: db $D3, $59, $97, $59, $B4, $59, $E3, $2B ; [st]\u23b5[be]\u23b5[in]\u23b5[you]r\n#_1CE1C9: db $7E ; wait for key\n#_1CE1CA: db $73 ; scroll text\n#_1CE1CB: db $2F, $1E, $B4, $2C, $43 ; ve[in]s\u2026\n#_1CE1D0: db $7F ; end of message\n\n; =========================================================\n; Was it you who disturbed my\n; peaceful nap? I will give this\n; to you if you go away!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012A", + "code": "Message_012A:\n#_1CE1D1: db $16, $1A, $2C, $59, $B6, $59, $E3, $59 ; Was\u23b5[it]\u23b5[you]\u23b5\n#_1CE1D9: db $E1, $28, $59, $9E, $D3, $2E, $2B, $97 ; [wh]o\u23b5[di][st]ur[be]\n#_1CE1E1: db $1D, $59, $26, $32 ; d\u23b5my\n#_1CE1E5: db $75 ; line 2\n#_1CE1E6: db $29, $1E, $1A, $1C, $1E, $1F, $2E, $25 ; peaceful\n#_1CE1EE: db $59, $27, $1A, $29, $3F, $8A, $08, $59 ; \u23b5nap?[ ]I\u23b5\n#_1CE1F6: db $E2, $25, $25, $59, $AA, $D9, $2C ; [wi]ll\u23b5[give ][thi]s\n#_1CE1FD: db $76 ; line 3\n#_1CE1FE: db $DA, $59, $E3, $59, $22, $1F, $59, $E3 ; [to]\u23b5[you]\u23b5if\u23b5[you]\n#_1CE206: db $59, $AC, $59, $1A, $DF, $32, $3E ; \u23b5[go]\u23b5a[wa]y!\n#_1CE20D: db $7F ; end of message\n\n; =========================================================\n; I don't have any more good\n; presents for you. Take this\n; instead, pest!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012B", + "code": "Message_012B:\n#_1CE20E: db $08, $59, $9F, $C0, $AD, $59, $93, $32 ; I\u23b5[do][n't ][have]\u23b5[an]y\n#_1CE216: db $59, $26, $C8, $1E, $59, $AC, $28, $1D ; \u23b5m[or]e\u23b5[go]od\n#_1CE21E: db $75 ; line 2\n#_1CE21F: db $29, $CE, $D0, $27, $2D, $2C, $59, $A8 ; p[re][se]nts\u23b5[for]\n#_1CE227: db $59, $E3, $41, $8A, $13, $1A, $24, $1E ; \u23b5[you].[ ]Take\n#_1CE22F: db $59, $D9, $2C ; \u23b5[thi]s\n#_1CE232: db $76 ; line 3\n#_1CE233: db $B4, $D3, $1E, $1A, $1D, $42, $59, $29 ; [in][st]ead,\u23b5p\n#_1CE23B: db $1E, $D3, $3E ; e[st]!\n#_1CE23E: db $7F ; end of message\n\n; =========================================================\n; Yo [LINK]! A mysterious fog\n; has recently fallen over the\n; forest. We have to be careful!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012C", + "code": "Message_012C:\n#_1CE23F: db $18, $28, $59, $6A, $3E, $8A, $00, $59 ; Yo\u23b5[LINK]![ ]A\u23b5\n#_1CE247: db $26, $32, $D3, $A6, $22, $28, $2E, $2C ; my[st][er]ious\n#_1CE24F: db $59, $1F, $28, $20 ; \u23b5fog\n#_1CE253: db $75 ; line 2\n#_1CE254: db $AE, $59, $CE, $1C, $A3, $B9, $1F, $1A ; [has]\u23b5[re]c[ent][ly ]fa\n#_1CE25C: db $25, $25, $A0, $28, $DD, $59, $D8 ; ll[en ]o[ver]\u23b5[the]\n#_1CE263: db $76 ; line 3\n#_1CE264: db $A8, $1E, $D3, $41, $8A, $16, $1E, $59 ; [for]e[st].[ ]We\u23b5\n#_1CE26C: db $AD, $59, $DA, $59, $97, $59, $1C, $1A ; [have]\u23b5[to]\u23b5[be]\u23b5ca\n#_1CE274: db $CE, $1F, $2E, $25, $3E ; [re]ful!\n#_1CE279: db $7F ; end of message\n\n; =========================================================\n; Maybe it's nothing, but this\n; tree feels kind of strange as\n; we cut it\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012D", + "code": "Message_012D:\n#_1CE27A: db $0C, $1A, $32, $97, $59, $B6, $8B, $C2 ; May[be]\u23b5[it]['s ][not]\n#_1CE282: db $B0, $27, $20, $42, $59, $1B, $2E, $2D ; [hi]ng,\u23b5but\n#_1CE28A: db $59, $D9, $2C ; \u23b5[thi]s\n#_1CE28D: db $75 ; line 2\n#_1CE28E: db $DB, $1E, $1E, $59, $1F, $1E, $1E, $25 ; [tr]ee\u23b5feel\n#_1CE296: db $2C, $59, $24, $B4, $1D, $59, $C6, $59 ; s\u23b5k[in]d\u23b5[of]\u23b5\n#_1CE29E: db $D3, $2B, $93, $20, $1E, $59, $1A, $2C ; [st]r[an]ge\u23b5as\n#_1CE2A6: db $76 ; line 3\n#_1CE2A7: db $E0, $59, $1C, $2E, $2D, $59, $B6, $43 ; [we]\u23b5cut\u23b5[it]\u2026\n#_1CE2AF: db $7F ; end of message\n\n; =========================================================\n; Yo! The fog in the forest is\n; clearing. Thank you! We can\n; go there again! Hey brother!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012E", + "code": "Message_012E:\n#_1CE2B0: db $18, $28, $3E, $8A, $E6, $59, $1F, $28 ; Yo![ ][The]\u23b5fo\n#_1CE2B8: db $20, $59, $B4, $59, $D8, $59, $A8, $1E ; g\u23b5[in]\u23b5[the]\u23b5[for]e\n#_1CE2C0: db $D3, $59, $B5 ; [st]\u23b5[is]\n#_1CE2C3: db $75 ; line 2\n#_1CE2C4: db $1C, $25, $A2, $B4, $20, $41, $8A, $E5 ; cl[ear][in]g.[ ][Tha]\n#_1CE2CC: db $27, $24, $59, $E3, $3E, $8A, $16, $1E ; nk\u23b5[you]![ ]We\n#_1CE2D4: db $59, $1C, $93 ; \u23b5c[an]\n#_1CE2D7: db $76 ; line 3\n#_1CE2D8: db $AC, $59, $D8, $CD, $1A, $20, $8F, $3E ; [go]\u23b5[the][re ]ag[ain]!\n#_1CE2E0: db $8A, $07, $1E, $32, $59, $1B, $2B, $28 ; [ ]Hey\u23b5bro\n#_1CE2E8: db $D8, $2B, $3E ; [the]r!\n#_1CE2EB: db $7F ; end of message\n\n; =========================================================\n; Yeah [LINK], now I'm\n; quarreling with my younger\n; brother. I sealed the door to\n; his room.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_012F", + "code": "Message_012F:\n#_1CE2EC: db $18, $1E, $1A, $21, $59, $6A, $42, $59 ; Yeah\u23b5[LINK],\u23b5\n#_1CE2F4: db $27, $28, $30, $59, $08, $51, $26 ; now\u23b5I'm\n#_1CE2FB: db $75 ; line 2\n#_1CE2FC: db $2A, $2E, $1A, $2B, $CE, $25, $B3, $DE ; quar[re]l[ing ][with]\n#_1CE304: db $59, $26, $32, $59, $E3, $27, $20, $A6 ; \u23b5my\u23b5[you]ng[er]\n#_1CE30C: db $76 ; line 3\n#_1CE30D: db $1B, $2B, $28, $D8, $2B, $41, $8A, $08 ; bro[the]r.[ ]I\n#_1CE315: db $59, $D0, $1A, $25, $A4, $D8, $59, $9F ; \u23b5[se]al[ed ][the]\u23b5[do]\n#_1CE31D: db $C8, $59, $DA ; [or]\u23b5[to]\n#_1CE320: db $7E ; wait for key\n#_1CE321: db $73 ; scroll text\n#_1CE322: db $B0, $2C, $59, $2B, $28, $28, $26, $41 ; [hi]s\u23b5room.\n#_1CE32A: db $7F ; end of message\n\n; =========================================================\n; So the doorway is open again\u2026\n; OK OK, maybe I should make up\n; with my brother\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0130", + "code": "Message_0130:\n#_1CE32B: db $12, $28, $59, $D8, $59, $9F, $C8, $DF ; So\u23b5[the]\u23b5[do][or][wa]\n#_1CE333: db $32, $59, $B5, $59, $C3, $59, $1A, $20 ; y\u23b5[is]\u23b5[open]\u23b5ag\n#_1CE33B: db $8F, $43 ; [ain]\u2026\n#_1CE33D: db $75 ; line 2\n#_1CE33E: db $0E, $0A, $59, $0E, $0A, $42, $59, $BD ; OK\u23b5OK,\u23b5[ma]\n#_1CE346: db $32, $97, $59, $08, $59, $D1, $28, $2E ; y[be]\u23b5I\u23b5[sh]ou\n#_1CE34E: db $25, $1D, $59, $BD, $24, $1E, $59, $DC ; ld\u23b5[ma]ke\u23b5[up]\n#_1CE356: db $76 ; line 3\n#_1CE357: db $DE, $59, $26, $32, $59, $1B, $2B, $28 ; [with]\u23b5my\u23b5bro\n#_1CE35F: db $D8, $2B, $43 ; [the]r\u2026\n#_1CE362: db $7F ; end of message\n\n; =========================================================\n; Hey [LINK], did you come from\n; my older brother's room? Is he\n; still angry?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0131", + "code": "Message_0131:\n#_1CE363: db $07, $1E, $32, $59, $6A, $42, $59, $9E ; Hey\u23b5[LINK],\u23b5[di]\n#_1CE36B: db $1D, $59, $E3, $59, $9B, $1E, $59, $A9 ; d\u23b5[you]\u23b5[com]e\u23b5[fro]\n#_1CE373: db $26 ; m\n#_1CE374: db $75 ; line 2\n#_1CE375: db $26, $32, $59, $28, $25, $1D, $A1, $1B ; my\u23b5old[er ]b\n#_1CE37D: db $2B, $28, $D8, $2B, $8B, $2B, $28, $28 ; ro[the]r['s ]roo\n#_1CE385: db $26, $3F, $8A, $08, $2C, $59, $21, $1E ; m?[ ]Is\u23b5he\n#_1CE38D: db $76 ; line 3\n#_1CE38E: db $D3, $22, $25, $25, $59, $93, $20, $2B ; [st]ill\u23b5[an]gr\n#_1CE396: db $32, $3F ; y?\n#_1CE398: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; \u2026This world used to be the\n; Golden Land where the Triforce\n; was hidden.\n; But because Ganon, the boss\n; of thieves, wished it the world\n; was transformed\u2026\n; I'm sure he's intending to\n; conquer even our Light World\n; after building his power here.\n; He is trying to open a larger\n; gate between worlds near the\n; castle using our powers.\n; But the gate is not open\n; completely yet\u2026\n; If we seven maidens come\n; together, we can break the\n; barrier around Ganon's hiding\n; place.\n; I will tell you where the other\n; girls are held. I believe you\n; will destroy Ganon.\n; I will return to my original\n; form at that time.\n; \u2026 \u2026 \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0132", + "code": "Message_0132:\n#_1CE399: db $7A, $02 ; set draw speed\n#_1CE39B: db $6D, $01 ; set window position\n#_1CE39D: db $6B, $02 ; set window border\n#_1CE39F: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CE3A7: db $59, $C6, $59, $E3, $42, $8A, $08, $59 ; \u23b5[of]\u23b5[you],[ ]I\u23b5\n#_1CE3AF: db $1C, $93 ; c[an]\n#_1CE3B1: db $75 ; line 2\n#_1CE3B2: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CE3BA: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CE3C2: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CE3C6: db $76 ; line 3\n#_1CE3C7: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CE3CF: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CE3D7: db $59, $E3, $3E ; \u23b5[you]!\n#_1CE3DA: db $7E ; wait for key\n#_1CE3DB: db $73 ; scroll text\n#_1CE3DC: db $43, $E7, $2C, $59, $30, $C8, $25, $1D ; \u2026[Thi]s\u23b5w[or]ld\n#_1CE3E4: db $59, $2E, $D0, $1D, $59, $DA, $59, $97 ; \u23b5u[se]d\u23b5[to]\u23b5[be]\n#_1CE3EC: db $59, $D8 ; \u23b5[the]\n#_1CE3EE: db $73 ; scroll text\n#_1CE3EF: db $06, $28, $25, $1D, $A0, $0B, $8C, $E1 ; Gold[en ]L[and ][wh]\n#_1CE3F7: db $A6, $1E, $59, $D8, $59, $13, $2B, $22 ; [er]e\u23b5[the]\u23b5Tri\n#_1CE3FF: db $A8, $1C, $1E ; [for]ce\n#_1CE402: db $73 ; scroll text\n#_1CE403: db $DF, $2C, $59, $B0, $1D, $1D, $A5, $41 ; [wa]s\u23b5[hi]dd[en].\n#_1CE40B: db $7E ; wait for key\n#_1CE40C: db $73 ; scroll text\n#_1CE40D: db $01, $2E, $2D, $59, $97, $1C, $1A, $2E ; But\u23b5[be]cau\n#_1CE415: db $D0, $59, $06, $93, $C7, $42, $59, $D8 ; [se]\u23b5G[an][on],\u23b5[the]\n#_1CE41D: db $59, $98, $2C, $2C ; \u23b5[bo]ss\n#_1CE421: db $73 ; scroll text\n#_1CE422: db $C6, $59, $D9, $A7, $1E, $2C, $42, $59 ; [of]\u23b5[thi][ev]es,\u23b5\n#_1CE42A: db $E2, $D1, $A4, $B6, $59, $D8, $59, $30 ; [wi][sh][ed ][it]\u23b5[the]\u23b5w\n#_1CE432: db $C8, $25, $1D ; [or]ld\n#_1CE435: db $73 ; scroll text\n#_1CE436: db $DF, $2C, $59, $DB, $93, $2C, $A8, $BE ; [wa]s\u23b5[tr][an]s[for][me]\n#_1CE43E: db $1D, $43 ; d\u2026\n#_1CE440: db $7E ; wait for key\n#_1CE441: db $73 ; scroll text\n#_1CE442: db $08, $51, $26, $59, $2C, $2E, $CD, $21 ; I'm\u23b5su[re ]h\n#_1CE44A: db $1E, $8B, $B4, $2D, $A5, $9E, $27, $20 ; e['s ][in]t[en][di]ng\n#_1CE452: db $59, $DA ; \u23b5[to]\n#_1CE454: db $73 ; scroll text\n#_1CE455: db $1C, $C7, $2A, $2E, $A1, $A7, $A0, $28 ; c[on]qu[er ][ev][en ]o\n#_1CE45D: db $2E, $2B, $59, $0B, $B2, $16, $C8, $25 ; ur\u23b5L[ight ]W[or]l\n#_1CE465: db $1D ; d\n#_1CE466: db $73 ; scroll text\n#_1CE467: db $1A, $1F, $D4, $1B, $2E, $22, $25, $9E ; af[ter ]buil[di]\n#_1CE46F: db $27, $20, $59, $B0, $2C, $59, $CB, $A1 ; ng\u23b5[hi]s\u23b5[pow][er ]\n#_1CE477: db $AF, $1E, $41 ; [her]e.\n#_1CE47A: db $7E ; wait for key\n#_1CE47B: db $73 ; scroll text\n#_1CE47C: db $07, $1E, $59, $B5, $59, $DB, $32, $B3 ; He\u23b5[is]\u23b5[tr]y[ing ]\n#_1CE484: db $DA, $59, $C3, $59, $1A, $59, $BA, $2B ; [to]\u23b5[open]\u23b5a\u23b5[la]r\n#_1CE48C: db $20, $A6 ; g[er]\n#_1CE48E: db $73 ; scroll text\n#_1CE48F: db $20, $94, $1E, $59, $97, $2D, $E0, $A0 ; g[at]e\u23b5[be]t[we][en ]\n#_1CE497: db $30, $C8, $25, $1D, $2C, $59, $27, $A2 ; w[or]lds\u23b5n[ear]\n#_1CE49F: db $59, $D8 ; \u23b5[the]\n#_1CE4A1: db $73 ; scroll text\n#_1CE4A2: db $1C, $92, $25, $1E, $59, $2E, $2C, $B3 ; c[ast]le\u23b5us[ing ]\n#_1CE4AA: db $28, $2E, $2B, $59, $CB, $A6, $2C, $41 ; our\u23b5[pow][er]s.\n#_1CE4B2: db $7E ; wait for key\n#_1CE4B3: db $73 ; scroll text\n#_1CE4B4: db $01, $2E, $2D, $59, $D8, $59, $20, $94 ; But\u23b5[the]\u23b5g[at]\n#_1CE4BC: db $1E, $59, $B5, $59, $C2, $59, $C3 ; e\u23b5[is]\u23b5[not]\u23b5[open]\n#_1CE4C3: db $73 ; scroll text\n#_1CE4C4: db $9B, $CA, $2D, $1E, $B9, $32, $1E, $2D ; [com][ple]te[ly ]yet\n#_1CE4CC: db $43 ; \u2026\n#_1CE4CD: db $73 ; scroll text\n#_1CE4CE: db $08, $1F, $59, $E0, $59, $D0, $2F, $A0 ; If\u23b5[we]\u23b5[se]v[en ]\n#_1CE4D6: db $BD, $22, $1D, $A5, $2C, $59, $9B, $1E ; [ma]id[en]s\u23b5[com]e\n#_1CE4DE: db $7E ; wait for key\n#_1CE4DF: db $73 ; scroll text\n#_1CE4E0: db $DA, $AB, $AF, $42, $59, $E0, $59, $99 ; [to][get][her],\u23b5[we]\u23b5[can ]\n#_1CE4E8: db $1B, $CE, $1A, $24, $59, $D8 ; b[re]ak\u23b5[the]\n#_1CE4EE: db $73 ; scroll text\n#_1CE4EF: db $96, $2B, $2B, $22, $A1, $1A, $2B, $C4 ; [ba]rri[er ]ar[ound]\n#_1CE4F7: db $59, $06, $93, $C7, $8B, $B0, $9E, $27 ; \u23b5G[an][on]['s ][hi][di]n\n#_1CE4FF: db $20 ; g\n#_1CE500: db $73 ; scroll text\n#_1CE501: db $29, $BA, $1C, $1E, $41 ; p[la]ce.\n#_1CE506: db $7E ; wait for key\n#_1CE507: db $73 ; scroll text\n#_1CE508: db $08, $59, $E2, $25, $25, $59, $2D, $1E ; I\u23b5[wi]ll\u23b5te\n#_1CE510: db $25, $25, $59, $E3, $59, $E1, $A6, $1E ; ll\u23b5[you]\u23b5[wh][er]e\n#_1CE518: db $59, $D8, $59, $28, $D8, $2B ; \u23b5[the]\u23b5o[the]r\n#_1CE51E: db $73 ; scroll text\n#_1CE51F: db $20, $22, $2B, $25, $2C, $59, $8D, $21 ; girls\u23b5[are ]h\n#_1CE527: db $1E, $25, $1D, $41, $8A, $08, $59, $97 ; eld.[ ]I\u23b5[be]\n#_1CE52F: db $25, $22, $A7, $1E, $59, $E3 ; li[ev]e\u23b5[you]\n#_1CE535: db $73 ; scroll text\n#_1CE536: db $E2, $25, $25, $59, $9D, $DB, $28, $32 ; [wi]ll\u23b5[des][tr]oy\n#_1CE53E: db $59, $06, $93, $C7, $41 ; \u23b5G[an][on].\n#_1CE543: db $7E ; wait for key\n#_1CE544: db $73 ; scroll text\n#_1CE545: db $08, $59, $E2, $25, $25, $59, $CE, $2D ; I\u23b5[wi]ll\u23b5[re]t\n#_1CE54D: db $2E, $2B, $27, $59, $DA, $59, $26, $32 ; urn\u23b5[to]\u23b5my\n#_1CE555: db $59, $C8, $22, $20, $B4, $1A, $25 ; \u23b5[or]ig[in]al\n#_1CE55C: db $73 ; scroll text\n#_1CE55D: db $A8, $26, $59, $91, $D7, $2D, $59, $2D ; [for]m\u23b5[at ][tha]t\u23b5t\n#_1CE565: db $22, $BE, $41 ; i[me].\n#_1CE568: db $73 ; scroll text\n#_1CE569: db $59, $43, $59, $43, $59, $43, $59, $43 ; \u23b5\u2026\u23b5\u2026\u23b5\u2026\u23b5\u2026\n#_1CE571: db $59, $43 ; \u23b5\u2026\n#_1CE573: db $79, $2D ; play sfx\n#_1CE575: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; \u2026The Triforce will grant the\n; wishes of whoever touches it,\n; as long as that person lives\u2026\n; That is why it was hidden in\n; the Golden Land. Only a select\n; few knew of its location,\n; but at some point that\n; knowledge was lost\u2026\n; The person who rediscovered\n; the Golden Land was\n; Ganondorf the evil thief.\n; Luckily, he couldn't figure out\n; how to return to the Light\n; World\u2026\n; \u2026Well, remember that you\n; have magical powers, which only\n; The Hero can make the most of!\n; There are some other magical\n; warping points like the one you\n; saw on Death Mountain.\n; By using them you can go\n; between the two worlds and\n; find the evils hidden in the\n; Dark World. You are the only\n; one who can destroy\n; Ganondorf, the thief-no,\n; Ganon, the evil King Of\n; Darkness!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0133", + "code": "Message_0133:\n#_1CE576: db $7A, $02 ; set draw speed\n#_1CE578: db $6D, $01 ; set window position\n#_1CE57A: db $6B, $02 ; set window border\n#_1CE57C: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CE584: db $59, $C6, $59, $E3, $42, $59, $08, $59 ; \u23b5[of]\u23b5[you],\u23b5I\u23b5\n#_1CE58C: db $1C, $93 ; c[an]\n#_1CE58E: db $75 ; line 2\n#_1CE58F: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CE597: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CE59F: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CE5A3: db $76 ; line 3\n#_1CE5A4: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CE5AC: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CE5B4: db $59, $E3, $3E ; \u23b5[you]!\n#_1CE5B7: db $7E ; wait for key\n#_1CE5B8: db $73 ; scroll text\n#_1CE5B9: db $43, $E6, $59, $13, $2B, $22, $A8, $1C ; \u2026[The]\u23b5Tri[for]c\n#_1CE5C1: db $1E, $59, $E2, $25, $25, $59, $20, $2B ; e\u23b5[wi]ll\u23b5gr\n#_1CE5C9: db $93, $2D, $59, $D8 ; [an]t\u23b5[the]\n#_1CE5CD: db $73 ; scroll text\n#_1CE5CE: db $E2, $D1, $1E, $2C, $59, $C6, $59, $E1 ; [wi][sh]es\u23b5[of]\u23b5[wh]\n#_1CE5D6: db $28, $A7, $A1, $DA, $2E, $9A, $2C, $59 ; o[ev][er ][to]u[che]s\u23b5\n#_1CE5DE: db $B6, $42 ; [it],\n#_1CE5E0: db $73 ; scroll text\n#_1CE5E1: db $1A, $2C, $59, $BB, $27, $20, $59, $1A ; as\u23b5[lo]ng\u23b5a\n#_1CE5E9: db $2C, $59, $D7, $2D, $59, $C9, $D2, $27 ; s\u23b5[tha]t\u23b5[per][so]n\n#_1CE5F1: db $59, $25, $22, $2F, $1E, $2C, $43 ; \u23b5lives\u2026\n#_1CE5F8: db $7E ; wait for key\n#_1CE5F9: db $73 ; scroll text\n#_1CE5FA: db $E5, $2D, $59, $B5, $59, $E1, $32, $59 ; [Tha]t\u23b5[is]\u23b5[wh]y\u23b5\n#_1CE602: db $B6, $59, $DF, $2C, $59, $B0, $1D, $1D ; [it]\u23b5[wa]s\u23b5[hi]dd\n#_1CE60A: db $A0, $B4 ; [en ][in]\n#_1CE60C: db $73 ; scroll text\n#_1CE60D: db $D8, $59, $06, $28, $25, $1D, $A0, $0B ; [the]\u23b5Gold[en ]L\n#_1CE615: db $90, $41, $8A, $0E, $27, $B9, $1A, $59 ; [and].[ ]On[ly ]a\u23b5\n#_1CE61D: db $D0, $25, $1E, $1C, $2D ; [se]lect\n#_1CE622: db $73 ; scroll text\n#_1CE623: db $1F, $1E, $30, $59, $24, $27, $1E, $30 ; few\u23b5knew\n#_1CE62B: db $59, $C6, $59, $B6, $2C, $59, $BB, $1C ; \u23b5[of]\u23b5[it]s\u23b5[lo]c\n#_1CE633: db $94, $22, $C7, $42 ; [at]i[on],\n#_1CE637: db $7E ; wait for key\n#_1CE638: db $73 ; scroll text\n#_1CE639: db $1B, $2E, $2D, $59, $91, $CF, $59, $29 ; but\u23b5[at ][some]\u23b5p\n#_1CE641: db $28, $B4, $2D, $59, $D7, $2D ; o[in]t\u23b5[tha]t\n#_1CE647: db $73 ; scroll text\n#_1CE648: db $B8, $25, $1E, $1D, $20, $1E, $59, $DF ; [know]ledge\u23b5[wa]\n#_1CE650: db $2C, $59, $BB, $D3, $43 ; s\u23b5[lo][st]\u2026\n#_1CE655: db $73 ; scroll text\n#_1CE656: db $E6, $59, $C9, $D2, $27, $59, $E1, $28 ; [The]\u23b5[per][so]n\u23b5[wh]o\n#_1CE65E: db $59, $CE, $9E, $2C, $1C, $28, $DD, $1E ; \u23b5[re][di]sco[ver]e\n#_1CE666: db $1D ; d\n#_1CE667: db $7E ; wait for key\n#_1CE668: db $73 ; scroll text\n#_1CE669: db $D8, $59, $06, $28, $25, $1D, $A0, $0B ; [the]\u23b5Gold[en ]L\n#_1CE671: db $8C, $DF, $2C ; [and ][wa]s\n#_1CE674: db $73 ; scroll text\n#_1CE675: db $06, $93, $C7, $9F, $2B, $1F, $59, $D8 ; G[an][on][do]rf\u23b5[the]\n#_1CE67D: db $59, $A7, $22, $25, $59, $D9, $1E, $1F ; \u23b5[ev]il\u23b5[thi]ef\n#_1CE685: db $41 ; .\n#_1CE686: db $73 ; scroll text\n#_1CE687: db $0B, $2E, $9C, $22, $25, $32, $42, $59 ; Lu[ck]ily,\u23b5\n#_1CE68F: db $21, $1E, $59, $1C, $28, $2E, $25, $1D ; he\u23b5could\n#_1CE697: db $C0, $1F, $22, $20, $2E, $CD, $28, $2E ; [n't ]figu[re ]ou\n#_1CE69F: db $2D ; t\n#_1CE6A0: db $7E ; wait for key\n#_1CE6A1: db $73 ; scroll text\n#_1CE6A2: db $21, $28, $30, $59, $DA, $59, $CE, $2D ; how\u23b5[to]\u23b5[re]t\n#_1CE6AA: db $2E, $2B, $27, $59, $DA, $59, $D8, $59 ; urn\u23b5[to]\u23b5[the]\u23b5\n#_1CE6B2: db $0B, $22, $20, $21, $2D ; Light\n#_1CE6B7: db $73 ; scroll text\n#_1CE6B8: db $16, $C8, $25, $1D, $43 ; W[or]ld\u2026\n#_1CE6BD: db $73 ; scroll text\n#_1CE6BE: db $43, $16, $1E, $25, $25, $42, $59, $CE ; \u2026Well,\u23b5[re]\n#_1CE6C6: db $BE, $26, $97, $2B, $59, $D7, $2D, $59 ; [me]m[be]r\u23b5[tha]t\u23b5\n#_1CE6CE: db $E3 ; [you]\n#_1CE6CF: db $7E ; wait for key\n#_1CE6D0: db $73 ; scroll text\n#_1CE6D1: db $AD, $59, $BD, $20, $22, $1C, $1A, $25 ; [have]\u23b5[ma]gical\n#_1CE6D9: db $59, $CB, $A6, $2C, $42, $59, $E1, $22 ; \u23b5[pow][er]s,\u23b5[wh]i\n#_1CE6E1: db $1C, $21, $59, $C7, $25, $32 ; ch\u23b5[on]ly\n#_1CE6E7: db $73 ; scroll text\n#_1CE6E8: db $E6, $59, $E4, $28, $59, $99, $BD, $24 ; [The]\u23b5[Her]o\u23b5[can ][ma]k\n#_1CE6F0: db $1E, $59, $D8, $59, $26, $28, $D3, $59 ; e\u23b5[the]\u23b5mo[st]\u23b5\n#_1CE6F8: db $C6, $3E ; [of]!\n#_1CE6FA: db $73 ; scroll text\n#_1CE6FB: db $E6, $CD, $8D, $CF, $59, $28, $D8, $2B ; [The][re ][are ][some]\u23b5o[the]r\n#_1CE703: db $59, $BD, $20, $22, $1C, $1A, $25 ; \u23b5[ma]gical\n#_1CE70A: db $7E ; wait for key\n#_1CE70B: db $73 ; scroll text\n#_1CE70C: db $DF, $2B, $29, $B3, $29, $28, $B4, $2D ; [wa]rp[ing ]po[in]t\n#_1CE714: db $2C, $59, $25, $22, $24, $1E, $59, $D8 ; s\u23b5like\u23b5[the]\n#_1CE71C: db $59, $C7, $1E, $59, $E3 ; \u23b5[on]e\u23b5[you]\n#_1CE721: db $73 ; scroll text\n#_1CE722: db $2C, $1A, $30, $59, $C7, $59, $03, $1E ; saw\u23b5[on]\u23b5De\n#_1CE72A: db $94, $21, $59, $0C, $28, $2E, $27, $2D ; [at]h\u23b5Mount\n#_1CE732: db $8F, $41 ; [ain].\n#_1CE734: db $73 ; scroll text\n#_1CE735: db $01, $32, $59, $2E, $2C, $B3, $D8, $26 ; By\u23b5us[ing ][the]m\n#_1CE73D: db $59, $E3, $59, $99, $AC ; \u23b5[you]\u23b5[can ][go]\n#_1CE742: db $7E ; wait for key\n#_1CE743: db $73 ; scroll text\n#_1CE744: db $97, $2D, $E0, $A0, $D8, $59, $2D, $30 ; [be]t[we][en ][the]\u23b5tw\n#_1CE74C: db $28, $59, $30, $C8, $25, $1D, $2C, $59 ; o\u23b5w[or]lds\u23b5\n#_1CE754: db $90 ; [and]\n#_1CE755: db $73 ; scroll text\n#_1CE756: db $1F, $B4, $1D, $59, $D8, $59, $A7, $22 ; f[in]d\u23b5[the]\u23b5[ev]i\n#_1CE75E: db $25, $2C, $59, $B0, $1D, $1D, $A0, $B4 ; ls\u23b5[hi]dd[en ][in]\n#_1CE766: db $59, $D8 ; \u23b5[the]\n#_1CE768: db $73 ; scroll text\n#_1CE769: db $03, $1A, $2B, $24, $59, $16, $C8, $25 ; Dark\u23b5W[or]l\n#_1CE771: db $1D, $41, $8A, $E8, $59, $8D, $D8, $59 ; d.[ ][You]\u23b5[are ][the]\u23b5\n#_1CE779: db $C7, $25, $32 ; [on]ly\n#_1CE77C: db $7E ; wait for key\n#_1CE77D: db $73 ; scroll text\n#_1CE77E: db $C7, $1E, $59, $E1, $28, $59, $99, $9D ; [on]e\u23b5[wh]o\u23b5[can ][des]\n#_1CE786: db $DB, $28, $32 ; [tr]oy\n#_1CE789: db $73 ; scroll text\n#_1CE78A: db $06, $93, $C7, $9F, $2B, $1F, $42, $59 ; G[an][on][do]rf,\u23b5\n#_1CE792: db $D8, $59, $D9, $1E, $1F, $40, $27, $28 ; [the]\u23b5[thi]ef-no\n#_1CE79A: db $42 ; ,\n#_1CE79B: db $73 ; scroll text\n#_1CE79C: db $06, $93, $C7, $42, $59, $D8, $59, $A7 ; G[an][on],\u23b5[the]\u23b5[ev]\n#_1CE7A4: db $22, $25, $59, $0A, $B3, $0E, $1F ; il\u23b5K[ing ]Of\n#_1CE7AB: db $7E ; wait for key\n#_1CE7AC: db $73 ; scroll text\n#_1CE7AD: db $03, $1A, $2B, $24, $27, $1E, $2C, $2C ; Darkness\n#_1CE7B5: db $3E ; !\n#_1CE7B6: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; \u2026Do you know the prophecy of\n; the Great Cataclysm?\n; This is the way I heard it\u2026\n; If a person who has an evil\n; heart gets the Triforce, a Hero\n; is destined to appear\u2026\n; \u2026and he alone must face the\n; person who began the Great\n; Cataclysm.\n; If the evil one destroys the\n; Hero, nothing can save the\n; world from his wicked reign.\n; Only a person of the Knights Of\n; Hyrule, who protected the\n; royalty of Hylia, can become\n; the Hero\u2026 You are of their\n; blood-line, aren't you? Then\n; you must rescue\n; Zelda without fail.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0134", + "code": "Message_0134:\n#_1CE7B7: db $7A, $02 ; set draw speed\n#_1CE7B9: db $6D, $01 ; set window position\n#_1CE7BB: db $6B, $02 ; set window border\n#_1CE7BD: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CE7C5: db $59, $C6, $59, $E3, $42, $59, $08, $59 ; \u23b5[of]\u23b5[you],\u23b5I\u23b5\n#_1CE7CD: db $1C, $93 ; c[an]\n#_1CE7CF: db $75 ; line 2\n#_1CE7D0: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CE7D8: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CE7E0: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CE7E4: db $76 ; line 3\n#_1CE7E5: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CE7ED: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CE7F5: db $59, $E3, $3E ; \u23b5[you]!\n#_1CE7F8: db $7E ; wait for key\n#_1CE7F9: db $73 ; scroll text\n#_1CE7FA: db $43, $03, $28, $59, $E3, $59, $B8, $59 ; \u2026Do\u23b5[you]\u23b5[know]\u23b5\n#_1CE802: db $D8, $59, $CC, $29, $21, $1E, $1C, $32 ; [the]\u23b5[pro]phecy\n#_1CE80A: db $59, $C6 ; \u23b5[of]\n#_1CE80C: db $73 ; scroll text\n#_1CE80D: db $D8, $59, $06, $CE, $91, $02, $94, $1A ; [the]\u23b5G[re][at ]C[at]a\n#_1CE815: db $1C, $25, $32, $2C, $26, $3F ; clysm?\n#_1CE81B: db $73 ; scroll text\n#_1CE81C: db $E7, $2C, $59, $B5, $59, $D8, $59, $DF ; [Thi]s\u23b5[is]\u23b5[the]\u23b5[wa]\n#_1CE824: db $32, $59, $08, $59, $21, $A2, $1D, $59 ; y\u23b5I\u23b5h[ear]d\u23b5\n#_1CE82C: db $B6, $43 ; [it]\u2026\n#_1CE82E: db $7E ; wait for key\n#_1CE82F: db $73 ; scroll text\n#_1CE830: db $08, $1F, $59, $1A, $59, $C9, $D2, $27 ; If\u23b5a\u23b5[per][so]n\n#_1CE838: db $59, $E1, $28, $59, $AE, $59, $93, $59 ; \u23b5[wh]o\u23b5[has]\u23b5[an]\u23b5\n#_1CE840: db $A7, $22, $25 ; [ev]il\n#_1CE843: db $73 ; scroll text\n#_1CE844: db $21, $A2, $2D, $59, $AB, $2C, $59, $D8 ; h[ear]t\u23b5[get]s\u23b5[the]\n#_1CE84C: db $59, $13, $2B, $22, $A8, $1C, $1E, $42 ; \u23b5Tri[for]ce,\n#_1CE854: db $59, $1A, $59, $E4, $28 ; \u23b5a\u23b5[Her]o\n#_1CE859: db $73 ; scroll text\n#_1CE85A: db $B5, $59, $9D, $2D, $B4, $A4, $DA, $59 ; [is]\u23b5[des]t[in][ed ][to]\u23b5\n#_1CE862: db $1A, $29, $29, $A2, $43 ; app[ear]\u2026\n#_1CE867: db $7E ; wait for key\n#_1CE868: db $73 ; scroll text\n#_1CE869: db $43, $8C, $21, $1E, $59, $1A, $BB, $27 ; \u2026[and ]he\u23b5a[lo]n\n#_1CE871: db $1E, $59, $BF, $D3, $59, $1F, $1A, $1C ; e\u23b5[mu][st]\u23b5fac\n#_1CE879: db $1E, $59, $D8 ; e\u23b5[the]\n#_1CE87C: db $73 ; scroll text\n#_1CE87D: db $C9, $D2, $27, $59, $E1, $28, $59, $97 ; [per][so]n\u23b5[wh]o\u23b5[be]\n#_1CE885: db $20, $93, $59, $D8, $59, $06, $CE, $94 ; g[an]\u23b5[the]\u23b5G[re][at]\n#_1CE88D: db $73 ; scroll text\n#_1CE88E: db $02, $94, $1A, $1C, $25, $32, $2C, $26 ; C[at]aclysm\n#_1CE896: db $41 ; .\n#_1CE897: db $7E ; wait for key\n#_1CE898: db $73 ; scroll text\n#_1CE899: db $08, $1F, $59, $D8, $59, $A7, $22, $25 ; If\u23b5[the]\u23b5[ev]il\n#_1CE8A1: db $59, $C7, $1E, $59, $9D, $DB, $28, $32 ; \u23b5[on]e\u23b5[des][tr]oy\n#_1CE8A9: db $2C, $59, $D8 ; s\u23b5[the]\n#_1CE8AC: db $73 ; scroll text\n#_1CE8AD: db $E4, $28, $42, $59, $C2, $B0, $27, $20 ; [Her]o,\u23b5[not][hi]ng\n#_1CE8B5: db $59, $99, $2C, $1A, $2F, $1E, $59, $D8 ; \u23b5[can ]save\u23b5[the]\n#_1CE8BD: db $73 ; scroll text\n#_1CE8BE: db $30, $C8, $25, $1D, $59, $A9, $26, $59 ; w[or]ld\u23b5[fro]m\u23b5\n#_1CE8C6: db $B0, $2C, $59, $E2, $9C, $A4, $CE, $22 ; [hi]s\u23b5[wi][ck][ed ][re]i\n#_1CE8CE: db $20, $27, $41 ; gn.\n#_1CE8D1: db $7E ; wait for key\n#_1CE8D2: db $73 ; scroll text\n#_1CE8D3: db $0E, $27, $B9, $1A, $59, $C9, $D2, $27 ; On[ly ]a\u23b5[per][so]n\n#_1CE8DB: db $59, $C6, $59, $D8, $59, $0A, $27, $22 ; \u23b5[of]\u23b5[the]\u23b5Kni\n#_1CE8E3: db $20, $21, $2D, $2C, $59, $0E, $1F ; ghts\u23b5Of\n#_1CE8EA: db $73 ; scroll text\n#_1CE8EB: db $07, $32, $2B, $2E, $25, $1E, $42, $59 ; Hyrule,\u23b5\n#_1CE8F3: db $E1, $28, $59, $CC, $2D, $1E, $1C, $2D ; [wh]o\u23b5[pro]tect\n#_1CE8FB: db $A4, $D8 ; [ed ][the]\n#_1CE8FD: db $73 ; scroll text\n#_1CE8FE: db $2B, $28, $32, $1A, $25, $2D, $32, $59 ; royalty\u23b5\n#_1CE906: db $C6, $59, $07, $32, $25, $22, $1A, $42 ; [of]\u23b5Hylia,\n#_1CE90E: db $59, $99, $97, $9B, $1E ; \u23b5[can ][be][com]e\n#_1CE913: db $7E ; wait for key\n#_1CE914: db $73 ; scroll text\n#_1CE915: db $D8, $59, $E4, $28, $43, $8A, $E8, $59 ; [the]\u23b5[Her]o\u2026[ ][You]\u23b5\n#_1CE91D: db $8D, $C6, $59, $D8, $22, $2B ; [are ][of]\u23b5[the]ir\n#_1CE923: db $73 ; scroll text\n#_1CE924: db $1B, $BB, $28, $1D, $40, $25, $B4, $1E ; b[lo]od-l[in]e\n#_1CE92C: db $42, $59, $1A, $CE, $C0, $E3, $3F, $8A ; ,\u23b5a[re][n't ][you]?[ ]\n#_1CE934: db $E6, $27 ; [The]n\n#_1CE936: db $73 ; scroll text\n#_1CE937: db $E3, $59, $BF, $D3, $59, $CE, $2C, $1C ; [you]\u23b5[mu][st]\u23b5[re]sc\n#_1CE93F: db $2E, $1E ; ue\n#_1CE941: db $7E ; wait for key\n#_1CE942: db $73 ; scroll text\n#_1CE943: db $19, $1E, $25, $1D, $1A, $59, $DE, $C5 ; Zelda\u23b5[with][out ]\n#_1CE94B: db $1F, $1A, $22, $25, $41 ; fail.\n#_1CE950: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; As the wise men sealed the way\n; to the Dark World, the Knights\n; Of Hyrule defended them from\n; the attacks of evil monsters.\n; I heard that the Knights Of\n; Hyrule were nearly wiped out in\n; that battle\u2026\n; You are perhaps the last one\n; to carry on the blood-line of\n; the Knights\u2026\n; It is ironic that the last one in\n; the line has the potential to\n; become the Hero of legend.\n; Surely you can destroy Ganon!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0135", + "code": "Message_0135:\n#_1CE951: db $7A, $02 ; set draw speed\n#_1CE953: db $6D, $01 ; set window position\n#_1CE955: db $6B, $02 ; set window border\n#_1CE957: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CE95F: db $59, $C6, $59, $E3, $42, $59, $08, $59 ; \u23b5[of]\u23b5[you],\u23b5I\u23b5\n#_1CE967: db $1C, $93 ; c[an]\n#_1CE969: db $75 ; line 2\n#_1CE96A: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CE972: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CE97A: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CE97E: db $76 ; line 3\n#_1CE97F: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CE987: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CE98F: db $59, $E3, $3E ; \u23b5[you]!\n#_1CE992: db $7E ; wait for key\n#_1CE993: db $73 ; scroll text\n#_1CE994: db $00, $2C, $59, $D8, $59, $E2, $D0, $59 ; As\u23b5[the]\u23b5[wi][se]\u23b5\n#_1CE99C: db $BE, $27, $59, $D0, $1A, $25, $A4, $D8 ; [me]n\u23b5[se]al[ed ][the]\n#_1CE9A4: db $59, $DF, $32 ; \u23b5[wa]y\n#_1CE9A7: db $73 ; scroll text\n#_1CE9A8: db $DA, $59, $D8, $59, $03, $1A, $2B, $24 ; [to]\u23b5[the]\u23b5Dark\n#_1CE9B0: db $59, $16, $C8, $25, $1D, $42, $59, $D8 ; \u23b5W[or]ld,\u23b5[the]\n#_1CE9B8: db $59, $0A, $27, $22, $20, $21, $2D, $2C ; \u23b5Knights\n#_1CE9C0: db $73 ; scroll text\n#_1CE9C1: db $0E, $1F, $59, $07, $32, $2B, $2E, $25 ; Of\u23b5Hyrul\n#_1CE9C9: db $1E, $59, $1D, $1E, $1F, $A5, $1D, $A4 ; e\u23b5def[en]d[ed ]\n#_1CE9D1: db $D8, $26, $59, $A9, $26 ; [the]m\u23b5[fro]m\n#_1CE9D6: db $7E ; wait for key\n#_1CE9D7: db $73 ; scroll text\n#_1CE9D8: db $D8, $59, $94, $2D, $1A, $9C, $2C, $59 ; [the]\u23b5[at]ta[ck]s\u23b5\n#_1CE9E0: db $C6, $59, $A7, $22, $25, $59, $26, $C7 ; [of]\u23b5[ev]il\u23b5m[on]\n#_1CE9E8: db $D3, $A6, $2C, $41 ; [st][er]s.\n#_1CE9EC: db $7E ; wait for key\n#_1CE9ED: db $73 ; scroll text\n#_1CE9EE: db $08, $59, $21, $A2, $1D, $59, $D7, $2D ; I\u23b5h[ear]d\u23b5[tha]t\n#_1CE9F6: db $59, $D8, $59, $0A, $27, $22, $20, $21 ; \u23b5[the]\u23b5Knigh\n#_1CE9FE: db $2D, $2C, $59, $0E, $1F ; ts\u23b5Of\n#_1CEA03: db $73 ; scroll text\n#_1CEA04: db $07, $32, $2B, $2E, $25, $1E, $59, $E0 ; Hyrule\u23b5[we]\n#_1CEA0C: db $CD, $27, $A2, $B9, $E2, $29, $A4, $C5 ; [re ]n[ear][ly ][wi]p[ed ][out ]\n#_1CEA14: db $B4 ; [in]\n#_1CEA15: db $73 ; scroll text\n#_1CEA16: db $D7, $2D, $59, $96, $2D, $2D, $25, $1E ; [tha]t\u23b5[ba]ttle\n#_1CEA1E: db $43 ; \u2026\n#_1CEA1F: db $7E ; wait for key\n#_1CEA20: db $73 ; scroll text\n#_1CEA21: db $E8, $59, $8D, $C9, $B1, $29, $2C, $59 ; [You]\u23b5[are ][per][ha]ps\u23b5\n#_1CEA29: db $D8, $59, $BA, $D3, $59, $C7, $1E ; [the]\u23b5[la][st]\u23b5[on]e\n#_1CEA30: db $73 ; scroll text\n#_1CEA31: db $DA, $59, $1C, $1A, $2B, $2B, $32, $59 ; [to]\u23b5carry\u23b5\n#_1CEA39: db $C7, $59, $D8, $59, $1B, $BB, $28, $1D ; [on]\u23b5[the]\u23b5b[lo]od\n#_1CEA41: db $40, $25, $B4, $1E, $59, $C6 ; -l[in]e\u23b5[of]\n#_1CEA47: db $73 ; scroll text\n#_1CEA48: db $D8, $59, $0A, $27, $22, $20, $21, $2D ; [the]\u23b5Knight\n#_1CEA50: db $2C, $43 ; s\u2026\n#_1CEA52: db $7E ; wait for key\n#_1CEA53: db $73 ; scroll text\n#_1CEA54: db $08, $2D, $59, $B5, $59, $22, $2B, $C7 ; It\u23b5[is]\u23b5ir[on]\n#_1CEA5C: db $22, $1C, $59, $D7, $2D, $59, $D8, $59 ; ic\u23b5[tha]t\u23b5[the]\u23b5\n#_1CEA64: db $BA, $D3, $59, $C7, $1E, $59, $B4 ; [la][st]\u23b5[on]e\u23b5[in]\n#_1CEA6B: db $73 ; scroll text\n#_1CEA6C: db $D8, $59, $25, $B4, $1E, $59, $AE, $59 ; [the]\u23b5l[in]e\u23b5[has]\u23b5\n#_1CEA74: db $D8, $59, $29, $28, $2D, $A3, $22, $1A ; [the]\u23b5pot[ent]ia\n#_1CEA7C: db $25, $59, $DA ; l\u23b5[to]\n#_1CEA7F: db $73 ; scroll text\n#_1CEA80: db $97, $9B, $1E, $59, $D8, $59, $E4, $28 ; [be][com]e\u23b5[the]\u23b5[Her]o\n#_1CEA88: db $59, $C6, $59, $25, $1E, $20, $A5, $1D ; \u23b5[of]\u23b5leg[en]d\n#_1CEA90: db $41 ; .\n#_1CEA91: db $7E ; wait for key\n#_1CEA92: db $73 ; scroll text\n#_1CEA93: db $12, $2E, $CE, $B9, $E3, $59, $99, $9D ; Su[re][ly ][you]\u23b5[can ][des]\n#_1CEA9B: db $DB, $28, $32, $59, $06, $93, $C7, $3E ; [tr]oy\u23b5G[an][on]!\n#_1CEAA3: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; They say the Hylia people\n; controlled mysterious powers,\n; as did the seven wise men.\n; But the blood of the Hylia has\n; become thin over time. We who\n; carry the blood of the seven\n; wise men do not possess strong\n; power any more, either.\n; Our powers will increase if we\n; mix the courage of the Knights\n; with the wisdom of the wise\n; men. Only a short time remains\n; until the gate at the castle\n; linking the worlds opens\n; completely. If you defeat\n; Ganon, this world will vanish\n; and the Triforce will wait for\n; a new holder.\n; I believe in you\u2026\n; Good luck!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0136", + "code": "Message_0136:\n#_1CEAA4: db $7A, $02 ; set draw speed\n#_1CEAA6: db $6D, $01 ; set window position\n#_1CEAA8: db $6B, $02 ; set window border\n#_1CEAAA: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CEAB2: db $59, $C6, $59, $E3, $42, $59, $08, $59 ; \u23b5[of]\u23b5[you],\u23b5I\u23b5\n#_1CEABA: db $1C, $93 ; c[an]\n#_1CEABC: db $75 ; line 2\n#_1CEABD: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CEAC5: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CEACD: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CEAD1: db $76 ; line 3\n#_1CEAD2: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CEADA: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CEAE2: db $59, $E3, $3E ; \u23b5[you]!\n#_1CEAE5: db $7E ; wait for key\n#_1CEAE6: db $73 ; scroll text\n#_1CEAE7: db $E6, $32, $59, $2C, $1A, $32, $59, $D8 ; [The]y\u23b5say\u23b5[the]\n#_1CEAEF: db $59, $07, $32, $25, $22, $1A, $59, $29 ; \u23b5Hylia\u23b5p\n#_1CEAF7: db $1E, $28, $CA ; eo[ple]\n#_1CEAFA: db $73 ; scroll text\n#_1CEAFB: db $1C, $C7, $DB, $28, $25, $25, $A4, $26 ; c[on][tr]oll[ed ]m\n#_1CEB03: db $32, $D3, $A6, $22, $28, $2E, $2C, $59 ; y[st][er]ious\u23b5\n#_1CEB0B: db $CB, $A6, $2C, $42 ; [pow][er]s,\n#_1CEB0F: db $73 ; scroll text\n#_1CEB10: db $1A, $2C, $59, $9E, $1D, $59, $D8, $59 ; as\u23b5[di]d\u23b5[the]\u23b5\n#_1CEB18: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1CEB20: db $41 ; .\n#_1CEB21: db $7E ; wait for key\n#_1CEB22: db $73 ; scroll text\n#_1CEB23: db $01, $2E, $2D, $59, $D8, $59, $1B, $BB ; But\u23b5[the]\u23b5b[lo]\n#_1CEB2B: db $28, $1D, $59, $C6, $59, $D8, $59, $07 ; od\u23b5[of]\u23b5[the]\u23b5H\n#_1CEB33: db $32, $25, $22, $1A, $59, $AE ; ylia\u23b5[has]\n#_1CEB39: db $73 ; scroll text\n#_1CEB3A: db $97, $9B, $1E, $59, $D5, $59, $28, $DD ; [be][com]e\u23b5[thin]\u23b5o[ver]\n#_1CEB42: db $59, $2D, $22, $BE, $41, $8A, $16, $1E ; \u23b5ti[me].[ ]We\n#_1CEB4A: db $59, $E1, $28 ; \u23b5[wh]o\n#_1CEB4D: db $73 ; scroll text\n#_1CEB4E: db $1C, $1A, $2B, $2B, $32, $59, $D8, $59 ; carry\u23b5[the]\u23b5\n#_1CEB56: db $1B, $BB, $28, $1D, $59, $C6, $59, $D8 ; b[lo]od\u23b5[of]\u23b5[the]\n#_1CEB5E: db $59, $D0, $2F, $A5 ; \u23b5[se]v[en]\n#_1CEB62: db $7E ; wait for key\n#_1CEB63: db $73 ; scroll text\n#_1CEB64: db $E2, $D0, $59, $BE, $27, $59, $9F, $59 ; [wi][se]\u23b5[me]n\u23b5[do]\u23b5\n#_1CEB6C: db $C2, $59, $29, $28, $2C, $D0, $2C, $2C ; [not]\u23b5pos[se]ss\n#_1CEB74: db $59, $D3, $2B, $C7, $20 ; \u23b5[st]r[on]g\n#_1CEB79: db $73 ; scroll text\n#_1CEB7A: db $CB, $A1, $93, $32, $59, $26, $C8, $1E ; [pow][er ][an]y\u23b5m[or]e\n#_1CEB82: db $42, $59, $1E, $B6, $AF, $41 ; ,\u23b5e[it][her].\n#_1CEB88: db $7E ; wait for key\n#_1CEB89: db $73 ; scroll text\n#_1CEB8A: db $0E, $2E, $2B, $59, $CB, $A6, $2C, $59 ; Our\u23b5[pow][er]s\u23b5\n#_1CEB92: db $E2, $25, $25, $59, $B4, $1C, $CE, $1A ; [wi]ll\u23b5[in]c[re]a\n#_1CEB9A: db $D0, $59, $22, $1F, $59, $E0 ; [se]\u23b5if\u23b5[we]\n#_1CEBA0: db $73 ; scroll text\n#_1CEBA1: db $26, $22, $31, $59, $D8, $59, $1C, $28 ; mix\u23b5[the]\u23b5co\n#_1CEBA9: db $2E, $2B, $1A, $20, $1E, $59, $C6, $59 ; urage\u23b5[of]\u23b5\n#_1CEBB1: db $D8, $59, $0A, $27, $22, $20, $21, $2D ; [the]\u23b5Knight\n#_1CEBB9: db $2C ; s\n#_1CEBBA: db $73 ; scroll text\n#_1CEBBB: db $DE, $59, $D8, $59, $E2, $2C, $9F, $26 ; [with]\u23b5[the]\u23b5[wi]s[do]m\n#_1CEBC3: db $59, $C6, $59, $D8, $59, $E2, $D0 ; \u23b5[of]\u23b5[the]\u23b5[wi][se]\n#_1CEBCA: db $7E ; wait for key\n#_1CEBCB: db $73 ; scroll text\n#_1CEBCC: db $BE, $27, $41, $8A, $0E, $27, $B9, $1A ; [me]n.[ ]On[ly ]a\n#_1CEBD4: db $59, $D1, $C8, $2D, $59, $2D, $22, $BE ; \u23b5[sh][or]t\u23b5ti[me]\n#_1CEBDC: db $59, $CE, $BD, $B4, $2C ; \u23b5[re][ma][in]s\n#_1CEBE1: db $73 ; scroll text\n#_1CEBE2: db $2E, $27, $2D, $22, $25, $59, $D8, $59 ; until\u23b5[the]\u23b5\n#_1CEBEA: db $20, $94, $1E, $59, $91, $D8, $59, $1C ; g[at]e\u23b5[at ][the]\u23b5c\n#_1CEBF2: db $92, $25, $1E ; [ast]le\n#_1CEBF5: db $73 ; scroll text\n#_1CEBF6: db $25, $B4, $24, $B3, $D8, $59, $30, $C8 ; l[in]k[ing ][the]\u23b5w[or]\n#_1CEBFE: db $25, $1D, $2C, $59, $C3, $2C ; lds\u23b5[open]s\n#_1CEC04: db $7E ; wait for key\n#_1CEC05: db $73 ; scroll text\n#_1CEC06: db $9B, $CA, $2D, $1E, $25, $32, $41, $8A ; [com][ple]tely.[ ]\n#_1CEC0E: db $08, $1F, $59, $E3, $59, $1D, $1E, $1F ; If\u23b5[you]\u23b5def\n#_1CEC16: db $1E, $94 ; e[at]\n#_1CEC18: db $73 ; scroll text\n#_1CEC19: db $06, $93, $C7, $42, $59, $D9, $2C, $59 ; G[an][on],\u23b5[thi]s\u23b5\n#_1CEC21: db $30, $C8, $25, $1D, $59, $E2, $25, $25 ; w[or]ld\u23b5[wi]ll\n#_1CEC29: db $59, $2F, $93, $B5, $21 ; \u23b5v[an][is]h\n#_1CEC2E: db $73 ; scroll text\n#_1CEC2F: db $8C, $D8, $59, $13, $2B, $22, $A8, $1C ; [and ][the]\u23b5Tri[for]c\n#_1CEC37: db $1E, $59, $E2, $25, $25, $59, $DF, $B6 ; e\u23b5[wi]ll\u23b5[wa][it]\n#_1CEC3F: db $59, $A8 ; \u23b5[for]\n#_1CEC41: db $7E ; wait for key\n#_1CEC42: db $73 ; scroll text\n#_1CEC43: db $1A, $59, $27, $1E, $30, $59, $21, $28 ; a\u23b5new\u23b5ho\n#_1CEC4B: db $25, $1D, $A6, $41 ; ld[er].\n#_1CEC4F: db $73 ; scroll text\n#_1CEC50: db $08, $59, $97, $25, $22, $A7, $1E, $59 ; I\u23b5[be]li[ev]e\u23b5\n#_1CEC58: db $B4, $59, $E3, $43 ; [in]\u23b5[you]\u2026\n#_1CEC5C: db $73 ; scroll text\n#_1CEC5D: db $06, $28, $28, $1D, $59, $25, $2E, $9C ; Good\u23b5lu[ck]\n#_1CEC65: db $3E ; !\n#_1CEC66: db $7F ; end of message\n\n; =========================================================\n; [LINK], because of you, I can\n; escape from the clutches of\n; the evil monsters. Thank you!\n; Ganon captured us because he\n; couldn't break the seal of the\n; wise men with his power alone.\n; And then, using the wizard\n; Agahnim as his pawn, he drew us\n; to the Dark World.\n; After cracking the seal with\n; our powers, he sealed us inside\n; of these crystals.\n; He then gave us to his loyal\n; monsters. But Ganon didn't\n; plan on your getting this far.\n; Now, Princess Zelda is waiting\n; for you inside of Turtle Rock.\n; Please hurry!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0137", + "code": "Message_0137:\n#_1CEC67: db $7A, $02 ; set draw speed\n#_1CEC69: db $6D, $01 ; set window position\n#_1CEC6B: db $6B, $02 ; set window border\n#_1CEC6D: db $6A, $42, $59, $97, $1C, $1A, $2E, $D0 ; [LINK],\u23b5[be]cau[se]\n#_1CEC75: db $59, $C6, $59, $E3, $42, $59, $08, $59 ; \u23b5[of]\u23b5[you],\u23b5I\u23b5\n#_1CEC7D: db $1C, $93 ; c[an]\n#_1CEC7F: db $75 ; line 2\n#_1CEC80: db $1E, $2C, $1C, $1A, $29, $1E, $59, $A9 ; escape\u23b5[fro]\n#_1CEC88: db $26, $59, $D8, $59, $1C, $25, $2E, $2D ; m\u23b5[the]\u23b5clut\n#_1CEC90: db $9A, $2C, $59, $C6 ; [che]s\u23b5[of]\n#_1CEC94: db $76 ; line 3\n#_1CEC95: db $D8, $59, $A7, $22, $25, $59, $26, $C7 ; [the]\u23b5[ev]il\u23b5m[on]\n#_1CEC9D: db $D3, $A6, $2C, $41, $8A, $E5, $27, $24 ; [st][er]s.[ ][Tha]nk\n#_1CECA5: db $59, $E3, $3E ; \u23b5[you]!\n#_1CECA8: db $7E ; wait for key\n#_1CECA9: db $73 ; scroll text\n#_1CECAA: db $06, $93, $C7, $59, $1C, $1A, $29, $2D ; G[an][on]\u23b5capt\n#_1CECB2: db $2E, $CE, $1D, $59, $2E, $2C, $59, $97 ; u[re]d\u23b5us\u23b5[be]\n#_1CECBA: db $1C, $1A, $2E, $D0, $59, $21, $1E ; cau[se]\u23b5he\n#_1CECC1: db $73 ; scroll text\n#_1CECC2: db $1C, $28, $2E, $25, $1D, $C0, $1B, $CE ; could[n't ]b[re]\n#_1CECCA: db $1A, $24, $59, $D8, $59, $D0, $1A, $25 ; ak\u23b5[the]\u23b5[se]al\n#_1CECD2: db $59, $C6, $59, $D8 ; \u23b5[of]\u23b5[the]\n#_1CECD6: db $73 ; scroll text\n#_1CECD7: db $E2, $D0, $59, $BE, $27, $59, $DE, $59 ; [wi][se]\u23b5[me]n\u23b5[with]\u23b5\n#_1CECDF: db $B0, $2C, $59, $CB, $A1, $1A, $BB, $27 ; [hi]s\u23b5[pow][er ]a[lo]n\n#_1CECE7: db $1E, $41 ; e.\n#_1CECE9: db $7E ; wait for key\n#_1CECEA: db $73 ; scroll text\n#_1CECEB: db $00, $27, $1D, $59, $D8, $27, $42, $59 ; And\u23b5[the]n,\u23b5\n#_1CECF3: db $2E, $2C, $B3, $D8, $59, $E2, $33, $1A ; us[ing ][the]\u23b5[wi]za\n#_1CECFB: db $2B, $1D ; rd\n#_1CECFD: db $73 ; scroll text\n#_1CECFE: db $00, $20, $1A, $21, $27, $22, $26, $59 ; Agahnim\u23b5\n#_1CED06: db $1A, $2C, $59, $B0, $2C, $59, $29, $1A ; as\u23b5[hi]s\u23b5pa\n#_1CED0E: db $30, $27, $42, $59, $21, $1E, $59, $1D ; wn,\u23b5he\u23b5d\n#_1CED16: db $CE, $30, $59, $2E, $2C ; [re]w\u23b5us\n#_1CED1B: db $73 ; scroll text\n#_1CED1C: db $DA, $59, $D8, $59, $03, $1A, $2B, $24 ; [to]\u23b5[the]\u23b5Dark\n#_1CED24: db $59, $16, $C8, $25, $1D, $41 ; \u23b5W[or]ld.\n#_1CED2A: db $7E ; wait for key\n#_1CED2B: db $73 ; scroll text\n#_1CED2C: db $00, $1F, $D4, $1C, $2B, $1A, $9C, $B3 ; Af[ter ]cra[ck][ing ]\n#_1CED34: db $D8, $59, $D0, $1A, $25, $59, $DE ; [the]\u23b5[se]al\u23b5[with]\n#_1CED3B: db $73 ; scroll text\n#_1CED3C: db $28, $2E, $2B, $59, $CB, $A6, $2C, $42 ; our\u23b5[pow][er]s,\n#_1CED44: db $59, $21, $1E, $59, $D0, $1A, $25, $A4 ; \u23b5he\u23b5[se]al[ed ]\n#_1CED4C: db $2E, $2C, $59, $B4, $2C, $22, $1D, $1E ; us\u23b5[in]side\n#_1CED54: db $73 ; scroll text\n#_1CED55: db $C6, $59, $D8, $D0, $59, $1C, $2B, $32 ; [of]\u23b5[the][se]\u23b5cry\n#_1CED5D: db $D3, $1A, $25, $2C, $41 ; [st]als.\n#_1CED62: db $7E ; wait for key\n#_1CED63: db $73 ; scroll text\n#_1CED64: db $07, $1E, $59, $D8, $27, $59, $20, $1A ; He\u23b5[the]n\u23b5ga\n#_1CED6C: db $2F, $1E, $59, $2E, $2C, $59, $DA, $59 ; ve\u23b5us\u23b5[to]\u23b5\n#_1CED74: db $B0, $2C, $59, $BB, $32, $1A, $25 ; [hi]s\u23b5[lo]yal\n#_1CED7B: db $73 ; scroll text\n#_1CED7C: db $26, $C7, $D3, $A6, $2C, $41, $8A, $01 ; m[on][st][er]s.[ ]B\n#_1CED84: db $2E, $2D, $59, $06, $93, $C7, $59, $9E ; ut\u23b5G[an][on]\u23b5[di]\n#_1CED8C: db $1D, $27, $51, $2D ; dn't\n#_1CED90: db $73 ; scroll text\n#_1CED91: db $29, $BA, $27, $59, $C7, $59, $E3, $2B ; p[la]n\u23b5[on]\u23b5[you]r\n#_1CED99: db $59, $AB, $2D, $B3, $D9, $2C, $59, $1F ; \u23b5[get]t[ing ][thi]s\u23b5f\n#_1CEDA1: db $1A, $2B, $41 ; ar.\n#_1CEDA4: db $7E ; wait for key\n#_1CEDA5: db $73 ; scroll text\n#_1CEDA6: db $0D, $28, $30, $42, $59, $0F, $2B, $B4 ; Now,\u23b5Pr[in]\n#_1CEDAE: db $1C, $1E, $2C, $2C, $59, $19, $1E, $25 ; cess\u23b5Zel\n#_1CEDB6: db $1D, $1A, $59, $B5, $59, $DF, $B6, $B4 ; da\u23b5[is]\u23b5[wa][it][in]\n#_1CEDBE: db $20 ; g\n#_1CEDBF: db $73 ; scroll text\n#_1CEDC0: db $A8, $59, $E3, $59, $B4, $2C, $22, $1D ; [for]\u23b5[you]\u23b5[in]sid\n#_1CEDC8: db $1E, $59, $C6, $59, $13, $2E, $2B, $2D ; e\u23b5[of]\u23b5Turt\n#_1CEDD0: db $25, $1E, $59, $11, $28, $9C, $41 ; le\u23b5Ro[ck].\n#_1CEDD7: db $73 ; scroll text\n#_1CEDD8: db $0F, $25, $1E, $1A, $D0, $59, $21, $2E ; Plea[se]\u23b5hu\n#_1CEDE0: db $2B, $2B, $32, $3E ; rry!\n#_1CEDE4: db $7F ; end of message\n\n; =========================================================\n; I appreciate your coming so far\n; to rescue me. As I thought,\n; you are the legendary Hero.\n; I have felt this from the first\n; time we met.\n; \u2026 \u2026 \u2026\n; Ganon is waiting inside of his\n; tower to pass through the\n; gate linking the two worlds.\n; Once Ganon enters the Light\n; World, it is unlikely that\n; anyone can stop him.\n; But if he stays in the closed\n; space of this world, you can\n; find him wherever he runs.\n; Now, go to the Tower Of\n; Ganon! We will use our\n; combined powers to break the\n; barrier. Let's return peace to\n; the country without fail\u2026\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0138", + "code": "Message_0138:\n#_1CEDE5: db $7A, $02 ; set draw speed\n#_1CEDE7: db $6D, $01 ; set window position\n#_1CEDE9: db $6B, $02 ; set window border\n#_1CEDEB: db $08, $59, $1A, $29, $29, $CE, $1C, $22 ; I\u23b5app[re]ci\n#_1CEDF3: db $94, $1E, $59, $E3, $2B, $59, $9B, $B3 ; [at]e\u23b5[you]r\u23b5[com][ing ]\n#_1CEDFB: db $D2, $59, $1F, $1A, $2B ; [so]\u23b5far\n#_1CEE00: db $75 ; line 2\n#_1CEE01: db $DA, $59, $CE, $2C, $1C, $2E, $1E, $59 ; [to]\u23b5[re]scue\u23b5\n#_1CEE09: db $BE, $41, $8A, $00, $2C, $59, $08, $59 ; [me].[ ]As\u23b5I\u23b5\n#_1CEE11: db $2D, $21, $28, $2E, $20, $21, $2D, $42 ; thought,\n#_1CEE19: db $76 ; line 3\n#_1CEE1A: db $E3, $59, $8D, $D8, $59, $25, $1E, $20 ; [you]\u23b5[are ][the]\u23b5leg\n#_1CEE22: db $A5, $1D, $1A, $2B, $32, $59, $E4, $28 ; [en]dary\u23b5[Her]o\n#_1CEE2A: db $41 ; .\n#_1CEE2B: db $7E ; wait for key\n#_1CEE2C: db $73 ; scroll text\n#_1CEE2D: db $08, $59, $AD, $59, $1F, $1E, $25, $2D ; I\u23b5[have]\u23b5felt\n#_1CEE35: db $59, $D9, $2C, $59, $A9, $26, $59, $D8 ; \u23b5[thi]s\u23b5[fro]m\u23b5[the]\n#_1CEE3D: db $59, $1F, $22, $2B, $D3 ; \u23b5fir[st]\n#_1CEE42: db $73 ; scroll text\n#_1CEE43: db $2D, $22, $BE, $59, $E0, $59, $BE, $2D ; ti[me]\u23b5[we]\u23b5[me]t\n#_1CEE4B: db $41 ; .\n#_1CEE4C: db $73 ; scroll text\n#_1CEE4D: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CEE52: db $7E ; wait for key\n#_1CEE53: db $73 ; scroll text\n#_1CEE54: db $06, $93, $C7, $59, $B5, $59, $DF, $B6 ; G[an][on]\u23b5[is]\u23b5[wa][it]\n#_1CEE5C: db $B3, $B4, $2C, $22, $1D, $1E, $59, $C6 ; [ing ][in]side\u23b5[of]\n#_1CEE64: db $59, $B0, $2C ; \u23b5[hi]s\n#_1CEE67: db $73 ; scroll text\n#_1CEE68: db $DA, $E0, $2B, $59, $DA, $59, $29, $1A ; [to][we]r\u23b5[to]\u23b5pa\n#_1CEE70: db $2C, $2C, $59, $2D, $21, $2B, $28, $2E ; ss\u23b5throu\n#_1CEE78: db $20, $21, $59, $D8 ; gh\u23b5[the]\n#_1CEE7C: db $73 ; scroll text\n#_1CEE7D: db $20, $94, $1E, $59, $25, $B4, $24, $B3 ; g[at]e\u23b5l[in]k[ing ]\n#_1CEE85: db $D8, $59, $2D, $30, $28, $59, $30, $C8 ; [the]\u23b5two\u23b5w[or]\n#_1CEE8D: db $25, $1D, $2C, $41 ; lds.\n#_1CEE91: db $7E ; wait for key\n#_1CEE92: db $73 ; scroll text\n#_1CEE93: db $0E, $27, $1C, $1E, $59, $06, $93, $C7 ; Once\u23b5G[an][on]\n#_1CEE9B: db $59, $A3, $A6, $2C, $59, $D8, $59, $0B ; \u23b5[ent][er]s\u23b5[the]\u23b5L\n#_1CEEA3: db $22, $20, $21, $2D ; ight\n#_1CEEA7: db $73 ; scroll text\n#_1CEEA8: db $16, $C8, $25, $1D, $42, $59, $B6, $59 ; W[or]ld,\u23b5[it]\u23b5\n#_1CEEB0: db $B5, $59, $2E, $27, $25, $22, $24, $1E ; [is]\u23b5unlike\n#_1CEEB8: db $B9, $D7, $2D ; [ly ][tha]t\n#_1CEEBB: db $73 ; scroll text\n#_1CEEBC: db $93, $32, $C7, $1E, $59, $99, $D3, $28 ; [an]y[on]e\u23b5[can ][st]o\n#_1CEEC4: db $29, $59, $B0, $26, $41 ; p\u23b5[hi]m.\n#_1CEEC9: db $7E ; wait for key\n#_1CEECA: db $73 ; scroll text\n#_1CEECB: db $01, $2E, $2D, $59, $22, $1F, $59, $21 ; But\u23b5if\u23b5h\n#_1CEED3: db $1E, $59, $D3, $1A, $32, $2C, $59, $B4 ; e\u23b5[st]ays\u23b5[in]\n#_1CEEDB: db $59, $D8, $59, $1C, $BB, $D0, $1D ; \u23b5[the]\u23b5c[lo][se]d\n#_1CEEE2: db $73 ; scroll text\n#_1CEEE3: db $2C, $29, $1A, $1C, $1E, $59, $C6, $59 ; space\u23b5[of]\u23b5\n#_1CEEEB: db $D9, $2C, $59, $30, $C8, $25, $1D, $42 ; [thi]s\u23b5w[or]ld,\n#_1CEEF3: db $59, $E3, $59, $1C, $93 ; \u23b5[you]\u23b5c[an]\n#_1CEEF8: db $73 ; scroll text\n#_1CEEF9: db $1F, $B4, $1D, $59, $B0, $26, $59, $E1 ; f[in]d\u23b5[hi]m\u23b5[wh]\n#_1CEF01: db $A6, $A7, $A1, $21, $1E, $59, $2B, $2E ; [er][ev][er ]he\u23b5ru\n#_1CEF09: db $27, $2C, $41 ; ns.\n#_1CEF0C: db $7E ; wait for key\n#_1CEF0D: db $73 ; scroll text\n#_1CEF0E: db $0D, $28, $30, $42, $59, $AC, $59, $DA ; Now,\u23b5[go]\u23b5[to]\n#_1CEF16: db $59, $D8, $59, $13, $28, $E0, $2B, $59 ; \u23b5[the]\u23b5To[we]r\u23b5\n#_1CEF1E: db $0E, $1F ; Of\n#_1CEF20: db $73 ; scroll text\n#_1CEF21: db $06, $93, $C7, $3E, $8A, $16, $1E, $59 ; G[an][on]![ ]We\u23b5\n#_1CEF29: db $E2, $25, $25, $59, $2E, $D0, $59, $28 ; [wi]ll\u23b5u[se]\u23b5o\n#_1CEF31: db $2E, $2B ; ur\n#_1CEF33: db $73 ; scroll text\n#_1CEF34: db $9B, $1B, $B4, $A4, $CB, $A6, $2C, $59 ; [com]b[in][ed ][pow][er]s\u23b5\n#_1CEF3C: db $DA, $59, $1B, $CE, $1A, $24, $59, $D8 ; [to]\u23b5b[re]ak\u23b5[the]\n#_1CEF44: db $7E ; wait for key\n#_1CEF45: db $73 ; scroll text\n#_1CEF46: db $96, $2B, $2B, $22, $A6, $41, $8A, $0B ; [ba]rri[er].[ ]L\n#_1CEF4E: db $1E, $2D, $8B, $CE, $2D, $2E, $2B, $27 ; et['s ][re]turn\n#_1CEF56: db $59, $29, $1E, $1A, $1C, $1E, $59, $DA ; \u23b5peace\u23b5[to]\n#_1CEF5E: db $73 ; scroll text\n#_1CEF5F: db $D8, $59, $1C, $28, $2E, $27, $DB, $32 ; [the]\u23b5coun[tr]y\n#_1CEF67: db $59, $DE, $C5, $1F, $1A, $22, $25, $43 ; \u23b5[with][out ]fail\u2026\n#_1CEF6F: db $73 ; scroll text\n#_1CEF70: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CEF75: db $79, $2D ; play sfx\n#_1CEF77: db $7F ; end of message\n\n; =========================================================\n; May the way of the Hero lead\n; to the Triforce.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0139", + "code": "Message_0139:\n#_1CEF78: db $7A, $02 ; set draw speed\n#_1CEF7A: db $6D, $01 ; set window position\n#_1CEF7C: db $6B, $02 ; set window border\n#_1CEF7E: db $0C, $1A, $32, $59, $D8, $59, $DF, $32 ; May\u23b5[the]\u23b5[wa]y\n#_1CEF86: db $59, $C6, $59, $D8, $59, $E4, $28, $59 ; \u23b5[of]\u23b5[the]\u23b5[Her]o\u23b5\n#_1CEF8E: db $25, $1E, $1A, $1D ; lead\n#_1CEF92: db $75 ; line 2\n#_1CEF93: db $DA, $59, $D8, $59, $13, $2B, $22, $A8 ; [to]\u23b5[the]\u23b5Tri[for]\n#_1CEF9B: db $1C, $1E, $41 ; ce.\n#_1CEF9E: db $7F ; end of message\n\n; =========================================================\n; Do you understand?\n; > Yes\n; Not at all\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013A", + "code": "Message_013A:\n#_1CEF9F: db $7A, $02 ; set draw speed\n#_1CEFA1: db $6D, $01 ; set window position\n#_1CEFA3: db $6B, $02 ; set window border\n#_1CEFA5: db $03, $28, $59, $E3, $59, $2E, $27, $1D ; Do\u23b5[you]\u23b5und\n#_1CEFAD: db $A6, $D3, $90, $3F ; [er][st][and]?\n#_1CEFB1: db $75 ; line 2\n#_1CEFB2: db $88, $44, $8A, $18, $1E, $2C ; [ ]>[ ]Yes\n#_1CEFB8: db $76 ; line 3\n#_1CEFB9: db $88, $88, $0D, $28, $2D, $59, $91, $1A ; [ ][ ]Not\u23b5[at ]a\n#_1CEFC1: db $25, $25 ; ll\n#_1CEFC3: db $68 ; choose 2 indented\n#_1CEFC4: db $7F ; end of message\n\n; =========================================================\n; [LINK], we are going to break\n; the barrier of Ganon's Tower\n; with our power.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013B", + "code": "Message_013B:\n#_1CEFC5: db $6A, $42, $59, $E0, $59, $8D, $AC, $B3 ; [LINK],\u23b5[we]\u23b5[are ][go][ing ]\n#_1CEFCD: db $DA, $59, $1B, $CE, $1A, $24 ; [to]\u23b5b[re]ak\n#_1CEFD3: db $75 ; line 2\n#_1CEFD4: db $D8, $59, $96, $2B, $2B, $22, $A1, $C6 ; [the]\u23b5[ba]rri[er ][of]\n#_1CEFDC: db $59, $06, $93, $C7, $8B, $13, $28, $E0 ; \u23b5G[an][on]['s ]To[we]\n#_1CEFE4: db $2B ; r\n#_1CEFE5: db $76 ; line 3\n#_1CEFE6: db $DE, $59, $28, $2E, $2B, $59, $CB, $A6 ; [with]\u23b5our\u23b5[pow][er]\n#_1CEFEE: db $41 ; .\n#_1CEFEF: db $7F ; end of message\n\n; =========================================================\n; I appreciate your coming so far\n; to rescue me. As I thought,\n; you are the legendary Hero.\n; I have felt this from the first\n; time we met.\n; \u2026 \u2026 \u2026\n; Ganon is waiting inside of his\n; tower to pass through the\n; gate linking the two worlds.\n; Once Ganon enters the Light\n; World, it is unlikely that\n; anyone can stop him.\n; But if he stays in the closed\n; space of this world, you can\n; find him wherever he runs.\n; Some maidens still need your\n; help, though. Once you rescue\n; them all, go to Ganon's Tower.\n; We who are of the blood-line of\n; the wise men will then use our\n; power to break\n; Ganon's barrier!\n; [LINK]\u2026 You must return\n; peace to this country\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013C", + "code": "Message_013C:\n#_1CEFF0: db $7A, $02 ; set draw speed\n#_1CEFF2: db $6D, $01 ; set window position\n#_1CEFF4: db $6B, $02 ; set window border\n#_1CEFF6: db $08, $59, $1A, $29, $29, $CE, $1C, $22 ; I\u23b5app[re]ci\n#_1CEFFE: db $94, $1E, $59, $E3, $2B, $59, $9B, $B3 ; [at]e\u23b5[you]r\u23b5[com][ing ]\n#_1CF006: db $D2, $59, $1F, $1A, $2B ; [so]\u23b5far\n#_1CF00B: db $75 ; line 2\n#_1CF00C: db $DA, $59, $CE, $2C, $1C, $2E, $1E, $59 ; [to]\u23b5[re]scue\u23b5\n#_1CF014: db $BE, $41, $8A, $00, $2C, $59, $08, $59 ; [me].[ ]As\u23b5I\u23b5\n#_1CF01C: db $2D, $21, $28, $2E, $20, $21, $2D, $42 ; thought,\n#_1CF024: db $76 ; line 3\n#_1CF025: db $E3, $59, $8D, $D8, $59, $25, $1E, $20 ; [you]\u23b5[are ][the]\u23b5leg\n#_1CF02D: db $A5, $1D, $1A, $2B, $32, $59, $E4, $28 ; [en]dary\u23b5[Her]o\n#_1CF035: db $41 ; .\n#_1CF036: db $7E ; wait for key\n#_1CF037: db $73 ; scroll text\n#_1CF038: db $08, $59, $AD, $59, $1F, $1E, $25, $2D ; I\u23b5[have]\u23b5felt\n#_1CF040: db $59, $D9, $2C, $59, $A9, $26, $59, $D8 ; \u23b5[thi]s\u23b5[fro]m\u23b5[the]\n#_1CF048: db $59, $1F, $22, $2B, $D3 ; \u23b5fir[st]\n#_1CF04D: db $73 ; scroll text\n#_1CF04E: db $2D, $22, $BE, $59, $E0, $59, $BE, $2D ; ti[me]\u23b5[we]\u23b5[me]t\n#_1CF056: db $41 ; .\n#_1CF057: db $73 ; scroll text\n#_1CF058: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_1CF05D: db $7E ; wait for key\n#_1CF05E: db $73 ; scroll text\n#_1CF05F: db $06, $93, $C7, $59, $B5, $59, $DF, $B6 ; G[an][on]\u23b5[is]\u23b5[wa][it]\n#_1CF067: db $B3, $B4, $2C, $22, $1D, $1E, $59, $C6 ; [ing ][in]side\u23b5[of]\n#_1CF06F: db $59, $B0, $2C ; \u23b5[hi]s\n#_1CF072: db $73 ; scroll text\n#_1CF073: db $DA, $E0, $2B, $59, $DA, $59, $29, $1A ; [to][we]r\u23b5[to]\u23b5pa\n#_1CF07B: db $2C, $2C, $59, $2D, $21, $2B, $28, $2E ; ss\u23b5throu\n#_1CF083: db $20, $21, $59, $D8 ; gh\u23b5[the]\n#_1CF087: db $73 ; scroll text\n#_1CF088: db $20, $94, $1E, $59, $25, $B4, $24, $B3 ; g[at]e\u23b5l[in]k[ing ]\n#_1CF090: db $D8, $59, $2D, $30, $28, $59, $30, $C8 ; [the]\u23b5two\u23b5w[or]\n#_1CF098: db $25, $1D, $2C, $41 ; lds.\n#_1CF09C: db $7E ; wait for key\n#_1CF09D: db $73 ; scroll text\n#_1CF09E: db $0E, $27, $1C, $1E, $59, $06, $93, $C7 ; Once\u23b5G[an][on]\n#_1CF0A6: db $59, $A3, $A6, $2C, $59, $D8, $59, $0B ; \u23b5[ent][er]s\u23b5[the]\u23b5L\n#_1CF0AE: db $22, $20, $21, $2D ; ight\n#_1CF0B2: db $73 ; scroll text\n#_1CF0B3: db $16, $C8, $25, $1D, $42, $59, $B6, $59 ; W[or]ld,\u23b5[it]\u23b5\n#_1CF0BB: db $B5, $59, $2E, $27, $25, $22, $24, $1E ; [is]\u23b5unlike\n#_1CF0C3: db $B9, $D7, $2D ; [ly ][tha]t\n#_1CF0C6: db $73 ; scroll text\n#_1CF0C7: db $93, $32, $C7, $1E, $59, $99, $D3, $28 ; [an]y[on]e\u23b5[can ][st]o\n#_1CF0CF: db $29, $59, $B0, $26, $41 ; p\u23b5[hi]m.\n#_1CF0D4: db $7E ; wait for key\n#_1CF0D5: db $73 ; scroll text\n#_1CF0D6: db $01, $2E, $2D, $59, $22, $1F, $59, $21 ; But\u23b5if\u23b5h\n#_1CF0DE: db $1E, $59, $D3, $1A, $32, $2C, $59, $B4 ; e\u23b5[st]ays\u23b5[in]\n#_1CF0E6: db $59, $D8, $59, $1C, $BB, $D0, $1D ; \u23b5[the]\u23b5c[lo][se]d\n#_1CF0ED: db $73 ; scroll text\n#_1CF0EE: db $2C, $29, $1A, $1C, $1E, $59, $C6, $59 ; space\u23b5[of]\u23b5\n#_1CF0F6: db $D9, $2C, $59, $30, $C8, $25, $1D, $42 ; [thi]s\u23b5w[or]ld,\n#_1CF0FE: db $59, $E3, $59, $1C, $93 ; \u23b5[you]\u23b5c[an]\n#_1CF103: db $73 ; scroll text\n#_1CF104: db $1F, $B4, $1D, $59, $B0, $26, $59, $E1 ; f[in]d\u23b5[hi]m\u23b5[wh]\n#_1CF10C: db $A6, $A7, $A1, $21, $1E, $59, $2B, $2E ; [er][ev][er ]he\u23b5ru\n#_1CF114: db $27, $2C, $41 ; ns.\n#_1CF117: db $7E ; wait for key\n#_1CF118: db $73 ; scroll text\n#_1CF119: db $12, $28, $BE, $59, $BD, $22, $1D, $A5 ; So[me]\u23b5[ma]id[en]\n#_1CF121: db $2C, $59, $D3, $22, $25, $25, $59, $27 ; s\u23b5[st]ill\u23b5n\n#_1CF129: db $1E, $A4, $E3, $2B ; e[ed ][you]r\n#_1CF12D: db $73 ; scroll text\n#_1CF12E: db $21, $1E, $25, $29, $42, $59, $2D, $21 ; help,\u23b5th\n#_1CF136: db $28, $2E, $20, $21, $41, $8A, $0E, $27 ; ough.[ ]On\n#_1CF13E: db $1C, $1E, $59, $E3, $59, $CE, $2C, $1C ; ce\u23b5[you]\u23b5[re]sc\n#_1CF146: db $2E, $1E ; ue\n#_1CF148: db $73 ; scroll text\n#_1CF149: db $D8, $26, $59, $1A, $25, $25, $42, $59 ; [the]m\u23b5all,\u23b5\n#_1CF151: db $AC, $59, $DA, $59, $06, $93, $C7, $8B ; [go]\u23b5[to]\u23b5G[an][on]['s ]\n#_1CF159: db $13, $28, $E0, $2B, $41 ; To[we]r.\n#_1CF15E: db $7E ; wait for key\n#_1CF15F: db $73 ; scroll text\n#_1CF160: db $16, $1E, $59, $E1, $28, $59, $8D, $C6 ; We\u23b5[wh]o\u23b5[are ][of]\n#_1CF168: db $59, $D8, $59, $1B, $BB, $28, $1D, $40 ; \u23b5[the]\u23b5b[lo]od-\n#_1CF170: db $25, $B4, $1E, $59, $C6 ; l[in]e\u23b5[of]\n#_1CF175: db $73 ; scroll text\n#_1CF176: db $D8, $59, $E2, $D0, $59, $BE, $27, $59 ; [the]\u23b5[wi][se]\u23b5[me]n\u23b5\n#_1CF17E: db $E2, $25, $25, $59, $D8, $27, $59, $2E ; [wi]ll\u23b5[the]n\u23b5u\n#_1CF186: db $D0, $59, $28, $2E, $2B ; [se]\u23b5our\n#_1CF18B: db $73 ; scroll text\n#_1CF18C: db $CB, $A1, $DA, $59, $1B, $CE, $1A, $24 ; [pow][er ][to]\u23b5b[re]ak\n#_1CF194: db $7E ; wait for key\n#_1CF195: db $73 ; scroll text\n#_1CF196: db $06, $93, $C7, $8B, $96, $2B, $2B, $22 ; G[an][on]['s ][ba]rri\n#_1CF19E: db $A6, $3E, $8A ; [er]![ ]\n#_1CF1A1: db $73 ; scroll text\n#_1CF1A2: db $6A, $43, $8A, $E8, $59, $BF, $D3, $59 ; [LINK]\u2026[ ][You]\u23b5[mu][st]\u23b5\n#_1CF1AA: db $CE, $2D, $2E, $2B, $27 ; [re]turn\n#_1CF1AF: db $73 ; scroll text\n#_1CF1B0: db $29, $1E, $1A, $1C, $1E, $59, $DA, $59 ; peace\u23b5[to]\u23b5\n#_1CF1B8: db $D9, $2C, $59, $1C, $28, $2E, $27, $DB ; [thi]s\u23b5coun[tr]\n#_1CF1C0: db $32, $43 ; y\u2026\n#_1CF1C2: db $7F ; end of message\n\n; =========================================================\n; Ahah\u2026 [LINK]!\n; I have been waiting for you!\n; Heh heh heh\u2026\n; I was hoping I could make Zelda\n; vanish in front of your eyes.\n; Behold! The last moment of\n; Princess Zelda!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013D", + "code": "Message_013D:\n#_1CF1C3: db $00, $B1, $21, $43, $59, $6A, $3E ; A[ha]h\u2026\u23b5[LINK]!\n#_1CF1CA: db $75 ; line 2\n#_1CF1CB: db $08, $59, $AD, $59, $97, $A0, $DF, $B6 ; I\u23b5[have]\u23b5[be][en ][wa][it]\n#_1CF1D3: db $B3, $A8, $59, $E3, $3E ; [ing ][for]\u23b5[you]!\n#_1CF1D8: db $76 ; line 3\n#_1CF1D9: db $07, $1E, $21, $59, $21, $1E, $21, $59 ; Heh\u23b5heh\u23b5\n#_1CF1E1: db $21, $1E, $21, $43 ; heh\u2026\n#_1CF1E5: db $7E ; wait for key\n#_1CF1E6: db $73 ; scroll text\n#_1CF1E7: db $08, $59, $DF, $2C, $59, $21, $28, $29 ; I\u23b5[wa]s\u23b5hop\n#_1CF1EF: db $B3, $08, $59, $1C, $28, $2E, $25, $1D ; [ing ]I\u23b5could\n#_1CF1F7: db $59, $BD, $24, $1E, $59, $19, $1E, $25 ; \u23b5[ma]ke\u23b5Zel\n#_1CF1FF: db $1D, $1A ; da\n#_1CF201: db $73 ; scroll text\n#_1CF202: db $2F, $93, $B5, $21, $59, $B4, $59, $A9 ; v[an][is]h\u23b5[in]\u23b5[fro]\n#_1CF20A: db $27, $2D, $59, $C6, $59, $E3, $2B, $59 ; nt\u23b5[of]\u23b5[you]r\u23b5\n#_1CF212: db $1E, $32, $1E, $2C, $41 ; eyes.\n#_1CF217: db $73 ; scroll text\n#_1CF218: db $01, $1E, $21, $28, $25, $1D, $3E, $8A ; Behold![ ]\n#_1CF220: db $E6, $59, $BA, $D3, $59, $26, $28, $BE ; [The]\u23b5[la][st]\u23b5mo[me]\n#_1CF228: db $27, $2D, $59, $C6 ; nt\u23b5[of]\n#_1CF22C: db $7E ; wait for key\n#_1CF22D: db $73 ; scroll text\n#_1CF22E: db $0F, $2B, $B4, $1C, $1E, $2C, $2C, $59 ; Pr[in]cess\u23b5\n#_1CF236: db $19, $1E, $25, $1D, $1A, $3E ; Zelda!\n#_1CF23C: db $7F ; end of message\n\n; =========================================================\n; Ho ho ho\u2026 With this, the\n; seal of the seven wise men is\n; at last broken.\n; It is now only a matter of time\n; before evil power covers this\n; land\u2026\n; After all, the legendary Hero\n; cannot defeat us, the tribe of\n; evil, when we are armed with\n; the Power of Gold.\n; Ho ho ho\u2026 Now, I must go!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013E", + "code": "Message_013E:\n#_1CF23D: db $07, $28, $59, $21, $28, $59, $21, $28 ; Ho\u23b5ho\u23b5ho\n#_1CF245: db $43, $8A, $16, $B6, $21, $59, $D9, $2C ; \u2026[ ]W[it]h\u23b5[thi]s\n#_1CF24D: db $42, $59, $D8 ; ,\u23b5[the]\n#_1CF250: db $75 ; line 2\n#_1CF251: db $D0, $1A, $25, $59, $C6, $59, $D8, $59 ; [se]al\u23b5[of]\u23b5[the]\u23b5\n#_1CF259: db $D0, $2F, $A0, $E2, $D0, $59, $BE, $27 ; [se]v[en ][wi][se]\u23b5[me]n\n#_1CF261: db $59, $B5 ; \u23b5[is]\n#_1CF263: db $76 ; line 3\n#_1CF264: db $91, $BA, $D3, $59, $1B, $2B, $28, $24 ; [at ][la][st]\u23b5brok\n#_1CF26C: db $A5, $41 ; [en].\n#_1CF26E: db $7E ; wait for key\n#_1CF26F: db $73 ; scroll text\n#_1CF270: db $08, $2D, $59, $B5, $59, $27, $28, $30 ; It\u23b5[is]\u23b5now\n#_1CF278: db $59, $C7, $B9, $1A, $59, $BD, $2D, $D4 ; \u23b5[on][ly ]a\u23b5[ma]t[ter ]\n#_1CF280: db $C6, $59, $2D, $22, $BE ; [of]\u23b5ti[me]\n#_1CF285: db $73 ; scroll text\n#_1CF286: db $97, $A8, $1E, $59, $A7, $22, $25, $59 ; [be][for]e\u23b5[ev]il\u23b5\n#_1CF28E: db $CB, $A1, $1C, $28, $DD, $2C, $59, $D9 ; [pow][er ]co[ver]s\u23b5[thi]\n#_1CF296: db $2C ; s\n#_1CF297: db $73 ; scroll text\n#_1CF298: db $BA, $27, $1D, $43 ; [la]nd\u2026\n#_1CF29C: db $7E ; wait for key\n#_1CF29D: db $73 ; scroll text\n#_1CF29E: db $00, $1F, $D4, $1A, $25, $25, $42, $59 ; Af[ter ]all,\u23b5\n#_1CF2A6: db $D8, $59, $25, $1E, $20, $A5, $1D, $1A ; [the]\u23b5leg[en]da\n#_1CF2AE: db $2B, $32, $59, $E4, $28 ; ry\u23b5[Her]o\n#_1CF2B3: db $73 ; scroll text\n#_1CF2B4: db $1C, $93, $C2, $59, $1D, $1E, $1F, $1E ; c[an][not]\u23b5defe\n#_1CF2BC: db $91, $2E, $2C, $42, $59, $D8, $59, $DB ; [at ]us,\u23b5[the]\u23b5[tr]\n#_1CF2C4: db $22, $97, $59, $C6 ; i[be]\u23b5[of]\n#_1CF2C8: db $73 ; scroll text\n#_1CF2C9: db $A7, $22, $25, $42, $59, $E1, $A0, $E0 ; [ev]il,\u23b5[wh][en ][we]\n#_1CF2D1: db $59, $8D, $1A, $2B, $BE, $1D, $59, $DE ; \u23b5[are ]ar[me]d\u23b5[with]\n#_1CF2D9: db $7E ; wait for key\n#_1CF2DA: db $73 ; scroll text\n#_1CF2DB: db $D8, $59, $0F, $28, $E0, $2B, $59, $C6 ; [the]\u23b5Po[we]r\u23b5[of]\n#_1CF2E3: db $59, $06, $28, $25, $1D, $41 ; \u23b5Gold.\n#_1CF2E9: db $73 ; scroll text\n#_1CF2EA: db $07, $28, $59, $21, $28, $59, $21, $28 ; Ho\u23b5ho\u23b5ho\n#_1CF2F2: db $43, $59, $0D, $28, $30, $42, $59, $08 ; \u2026\u23b5Now,\u23b5I\n#_1CF2FA: db $59, $BF, $D3, $59, $AC, $3E ; \u23b5[mu][st]\u23b5[go]!\n#_1CF300: db $7F ; end of message\n\n; =========================================================\n; Oh, so?\u2026 You mean to say you\n; would like to be totally\n; destroyed? Well, I can make\n; your wish come true!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_013F", + "code": "Message_013F:\n#_1CF301: db $0E, $21, $42, $59, $D2, $3F, $43, $8A ; Oh,\u23b5[so]?\u2026[ ]\n#_1CF309: db $E8, $59, $BE, $93, $59, $DA, $59, $2C ; [You]\u23b5[me][an]\u23b5[to]\u23b5s\n#_1CF311: db $1A, $32, $59, $E3 ; ay\u23b5[you]\n#_1CF315: db $75 ; line 2\n#_1CF316: db $30, $28, $2E, $25, $1D, $59, $25, $22 ; would\u23b5li\n#_1CF31E: db $24, $1E, $59, $DA, $59, $97, $59, $DA ; ke\u23b5[to]\u23b5[be]\u23b5[to]\n#_1CF326: db $2D, $1A, $25, $25, $32 ; tally\n#_1CF32B: db $76 ; line 3\n#_1CF32C: db $9D, $DB, $28, $32, $1E, $1D, $3F, $8A ; [des][tr]oyed?[ ]\n#_1CF334: db $16, $1E, $25, $25, $42, $59, $08, $59 ; Well,\u23b5I\u23b5\n#_1CF33C: db $99, $BD, $24, $1E ; [can ][ma]ke\n#_1CF340: db $7E ; wait for key\n#_1CF341: db $73 ; scroll text\n#_1CF342: db $E3, $2B, $59, $E2, $D1, $59, $9B, $1E ; [you]r\u23b5[wi][sh]\u23b5[com]e\n#_1CF34A: db $59, $DB, $2E, $1E, $3E ; \u23b5[tr]ue!\n#_1CF34F: db $7F ; end of message\n\n; =========================================================\n; Grrrrugh! Well met! Like the\n; true Hero that you are\u2026\n; But I am not ready to admit\n; defeat yet. I will draw you\n; into the Dark World!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0140", + "code": "Message_0140:\n#_1CF350: db $06, $2B, $2B, $2B, $2B, $2E, $20, $21 ; Grrrrugh\n#_1CF358: db $3E, $8A, $16, $1E, $25, $25, $59, $BE ; ![ ]Well\u23b5[me]\n#_1CF360: db $2D, $3E, $8A, $0B, $22, $24, $1E, $59 ; t![ ]Like\u23b5\n#_1CF368: db $D8 ; [the]\n#_1CF369: db $75 ; line 2\n#_1CF36A: db $DB, $2E, $1E, $59, $E4, $28, $59, $D7 ; [tr]ue\u23b5[Her]o\u23b5[tha]\n#_1CF372: db $2D, $59, $E3, $59, $1A, $CE, $43 ; t\u23b5[you]\u23b5a[re]\u2026\n#_1CF379: db $76 ; line 3\n#_1CF37A: db $01, $2E, $2D, $59, $08, $59, $1A, $26 ; But\u23b5I\u23b5am\n#_1CF382: db $59, $C2, $59, $CE, $1A, $1D, $32, $59 ; \u23b5[not]\u23b5[re]ady\u23b5\n#_1CF38A: db $DA, $59, $1A, $1D, $26, $B6 ; [to]\u23b5adm[it]\n#_1CF390: db $7E ; wait for key\n#_1CF391: db $73 ; scroll text\n#_1CF392: db $1D, $1E, $1F, $1E, $91, $32, $1E, $2D ; defe[at ]yet\n#_1CF39A: db $41, $8A, $08, $59, $E2, $25, $25, $59 ; .[ ]I\u23b5[wi]ll\u23b5\n#_1CF3A2: db $1D, $2B, $1A, $30, $59, $E3 ; draw\u23b5[you]\n#_1CF3A8: db $73 ; scroll text\n#_1CF3A9: db $B4, $DA, $59, $D8, $59, $03, $1A, $2B ; [in][to]\u23b5[the]\u23b5Dar\n#_1CF3B1: db $24, $59, $16, $C8, $25, $1D, $3E ; k\u23b5W[or]ld!\n#_1CF3B8: db $7F ; end of message\n\n; =========================================================\n; Ho ho ho! It's great that you\n; could come all the way here,\n; [LINK].\n; I'm very happy to see you\n; again, but\n; you'd better believe that we\n; will not have a third meeting!\n; Prepare to meet your doom!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0141", + "code": "Message_0141:\n#_1CF3B9: db $07, $28, $59, $21, $28, $59, $21, $28 ; Ho\u23b5ho\u23b5ho\n#_1CF3C1: db $3E, $8A, $08, $2D, $8B, $20, $CE, $91 ; ![ ]It['s ]g[re][at ]\n#_1CF3C9: db $D7, $2D, $59, $E3 ; [tha]t\u23b5[you]\n#_1CF3CD: db $75 ; line 2\n#_1CF3CE: db $1C, $28, $2E, $25, $1D, $59, $9B, $1E ; could\u23b5[com]e\n#_1CF3D6: db $59, $8E, $D8, $59, $DF, $32, $59, $AF ; \u23b5[all ][the]\u23b5[wa]y\u23b5[her]\n#_1CF3DE: db $1E, $42 ; e,\n#_1CF3E0: db $76 ; line 3\n#_1CF3E1: db $6A, $41 ; [LINK].\n#_1CF3E3: db $7E ; wait for key\n#_1CF3E4: db $73 ; scroll text\n#_1CF3E5: db $08, $51, $26, $59, $DD, $32, $59, $B1 ; I'm\u23b5[ver]y\u23b5[ha]\n#_1CF3ED: db $29, $29, $32, $59, $DA, $59, $D0, $1E ; ppy\u23b5[to]\u23b5[se]e\n#_1CF3F5: db $59, $E3 ; \u23b5[you]\n#_1CF3F7: db $73 ; scroll text\n#_1CF3F8: db $1A, $20, $8F, $42, $59, $1B, $2E, $2D ; ag[ain],\u23b5but\n#_1CF400: db $73 ; scroll text\n#_1CF401: db $E3, $51, $1D, $59, $97, $2D, $D4, $97 ; [you]'d\u23b5[be]t[ter ][be]\n#_1CF409: db $25, $22, $A7, $1E, $59, $D7, $2D, $59 ; li[ev]e\u23b5[tha]t\u23b5\n#_1CF411: db $E0 ; [we]\n#_1CF412: db $7E ; wait for key\n#_1CF413: db $73 ; scroll text\n#_1CF414: db $E2, $25, $25, $59, $C2, $59, $AD, $59 ; [wi]ll\u23b5[not]\u23b5[have]\u23b5\n#_1CF41C: db $1A, $59, $D9, $2B, $1D, $59, $BE, $1E ; a\u23b5[thi]rd\u23b5[me]e\n#_1CF424: db $2D, $B4, $20, $3E ; t[in]g!\n#_1CF428: db $73 ; scroll text\n#_1CF429: db $0F, $CE, $29, $8D, $DA, $59, $BE, $1E ; P[re]p[are ][to]\u23b5[me]e\n#_1CF431: db $2D, $59, $E3, $2B, $59, $9F, $28, $26 ; t\u23b5[you]r\u23b5[do]om\n#_1CF439: db $3E ; !\n#_1CF43A: db $7F ; end of message\n\n; =========================================================\n; Wah ha ha! What do you want,\n; little man? Do you have\n; something to ask me?\n; > I want the flippers\n; I just dropped by\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0142", + "code": "Message_0142:\n#_1CF43B: db $16, $1A, $21, $59, $B1, $59, $B1, $3E ; Wah\u23b5[ha]\u23b5[ha]!\n#_1CF443: db $8A, $16, $B1, $2D, $59, $9F, $59, $E3 ; [ ]W[ha]t\u23b5[do]\u23b5[you]\n#_1CF44B: db $59, $DF, $27, $2D, $42 ; \u23b5[wa]nt,\n#_1CF450: db $75 ; line 2\n#_1CF451: db $25, $B6, $2D, $25, $1E, $59, $BC, $3F ; l[it]tle\u23b5[man]?\n#_1CF459: db $8A, $03, $28, $59, $E3, $59, $AD ; [ ]Do\u23b5[you]\u23b5[have]\n#_1CF460: db $76 ; line 3\n#_1CF461: db $CF, $D5, $20, $59, $DA, $59, $1A, $2C ; [some][thin]g\u23b5[to]\u23b5as\n#_1CF469: db $24, $59, $BE, $3F ; k\u23b5[me]?\n#_1CF46D: db $7E ; wait for key\n#_1CF46E: db $73 ; scroll text\n#_1CF46F: db $88, $44, $8A, $08, $59, $DF, $27, $2D ; [ ]>[ ]I\u23b5[wa]nt\n#_1CF477: db $59, $D8, $59, $1F, $25, $22, $29, $C9 ; \u23b5[the]\u23b5flip[per]\n#_1CF47F: db $2C ; s\n#_1CF480: db $73 ; scroll text\n#_1CF481: db $88, $88, $08, $59, $B7, $59, $1D, $2B ; [ ][ ]I\u23b5[just]\u23b5dr\n#_1CF489: db $28, $29, $29, $A4, $1B, $32 ; opp[ed ]by\n#_1CF48F: db $68 ; choose 2 indented\n#_1CF490: db $7F ; end of message\n\n; =========================================================\n; Wah ha ha! But I don't just\n; give flippers away for free.\n; I sell them for 500 Rupees a\n; pair.\n; What do you do?\n; > Pay 500 Rupees\n; Quit after all\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0143", + "code": "Message_0143:\n#_1CF491: db $16, $1A, $21, $59, $B1, $59, $B1, $3E ; Wah\u23b5[ha]\u23b5[ha]!\n#_1CF499: db $8A, $01, $2E, $2D, $59, $08, $59, $9F ; [ ]But\u23b5I\u23b5[do]\n#_1CF4A1: db $C0, $B7 ; [n't ][just]\n#_1CF4A3: db $75 ; line 2\n#_1CF4A4: db $AA, $1F, $25, $22, $29, $C9, $2C, $59 ; [give ]flip[per]s\u23b5\n#_1CF4AC: db $1A, $DF, $32, $59, $A8, $59, $1F, $CE ; a[wa]y\u23b5[for]\u23b5f[re]\n#_1CF4B4: db $1E, $41 ; e.\n#_1CF4B6: db $76 ; line 3\n#_1CF4B7: db $08, $59, $D0, $25, $25, $59, $D8, $26 ; I\u23b5[se]ll\u23b5[the]m\n#_1CF4BF: db $59, $A8, $59, $39, $34, $34, $59, $11 ; \u23b5[for]\u23b5500\u23b5R\n#_1CF4C7: db $DC, $1E, $1E, $2C, $59, $1A ; [up]ees\u23b5a\n#_1CF4CD: db $7E ; wait for key\n#_1CF4CE: db $73 ; scroll text\n#_1CF4CF: db $29, $1A, $22, $2B, $41 ; pair.\n#_1CF4D4: db $7E ; wait for key\n#_1CF4D5: db $73 ; scroll text\n#_1CF4D6: db $16, $B1, $2D, $59, $9F, $59, $E3, $59 ; W[ha]t\u23b5[do]\u23b5[you]\u23b5\n#_1CF4DE: db $9F, $3F ; [do]?\n#_1CF4E0: db $73 ; scroll text\n#_1CF4E1: db $88, $44, $8A, $0F, $1A, $32, $59, $39 ; [ ]>[ ]Pay\u23b55\n#_1CF4E9: db $34, $34, $59, $11, $DC, $1E, $1E, $2C ; 00\u23b5R[up]ees\n#_1CF4F1: db $73 ; scroll text\n#_1CF4F2: db $88, $88, $10, $2E, $B6, $59, $1A, $1F ; [ ][ ]Qu[it]\u23b5af\n#_1CF4FA: db $D4, $1A, $25, $25 ; [ter ]all\n#_1CF4FE: db $68 ; choose 2 indented\n#_1CF4FF: db $7F ; end of message\n\n; =========================================================\n; Wah ha ha! One pair of\n; flippers coming up. I will\n; give you a free bonus with\n; your purchase.\n; I will let you use the magic\n; water ways of the sea folk\n; which link lakes and rivers.\n; When you see a whirlpool, dive\n; into it. You never know where\n; you'll surface! Wah ha ha!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0144", + "code": "Message_0144:\n#_1CF500: db $16, $1A, $21, $59, $B1, $59, $B1, $3E ; Wah\u23b5[ha]\u23b5[ha]!\n#_1CF508: db $8A, $0E, $27, $1E, $59, $29, $1A, $22 ; [ ]One\u23b5pai\n#_1CF510: db $2B, $59, $C6 ; r\u23b5[of]\n#_1CF513: db $75 ; line 2\n#_1CF514: db $1F, $25, $22, $29, $C9, $2C, $59, $9B ; flip[per]s\u23b5[com]\n#_1CF51C: db $B3, $DC, $41, $8A, $08, $59, $E2, $25 ; [ing ][up].[ ]I\u23b5[wi]l\n#_1CF524: db $25 ; l\n#_1CF525: db $76 ; line 3\n#_1CF526: db $AA, $E3, $59, $1A, $59, $1F, $CE, $1E ; [give ][you]\u23b5a\u23b5f[re]e\n#_1CF52E: db $59, $98, $27, $2E, $2C, $59, $DE ; \u23b5[bo]nus\u23b5[with]\n#_1CF535: db $7E ; wait for key\n#_1CF536: db $73 ; scroll text\n#_1CF537: db $E3, $2B, $59, $29, $2E, $2B, $1C, $AE ; [you]r\u23b5purc[has]\n#_1CF53F: db $1E, $41 ; e.\n#_1CF541: db $73 ; scroll text\n#_1CF542: db $08, $59, $E2, $25, $25, $59, $25, $1E ; I\u23b5[wi]ll\u23b5le\n#_1CF54A: db $2D, $59, $E3, $59, $2E, $D0, $59, $D8 ; t\u23b5[you]\u23b5u[se]\u23b5[the]\n#_1CF552: db $59, $BD, $20, $22, $1C ; \u23b5[ma]gic\n#_1CF557: db $73 ; scroll text\n#_1CF558: db $DF, $D4, $DF, $32, $2C, $59, $C6, $59 ; [wa][ter ][wa]ys\u23b5[of]\u23b5\n#_1CF560: db $D8, $59, $D0, $1A, $59, $1F, $28, $25 ; [the]\u23b5[se]a\u23b5fol\n#_1CF568: db $24 ; k\n#_1CF569: db $7E ; wait for key\n#_1CF56A: db $73 ; scroll text\n#_1CF56B: db $E1, $22, $1C, $21, $59, $25, $B4, $24 ; [wh]ich\u23b5l[in]k\n#_1CF573: db $59, $BA, $24, $1E, $2C, $59, $8C, $2B ; \u23b5[la]kes\u23b5[and ]r\n#_1CF57B: db $22, $DD, $2C, $41 ; i[ver]s.\n#_1CF57F: db $73 ; scroll text\n#_1CF580: db $16, $21, $A0, $E3, $59, $D0, $1E, $59 ; Wh[en ][you]\u23b5[se]e\u23b5\n#_1CF588: db $1A, $59, $E1, $22, $2B, $25, $29, $28 ; a\u23b5[wh]irlpo\n#_1CF590: db $28, $25, $42, $59, $9E, $2F, $1E ; ol,\u23b5[di]ve\n#_1CF597: db $73 ; scroll text\n#_1CF598: db $B4, $DA, $59, $B6, $41, $8A, $E8, $59 ; [in][to]\u23b5[it].[ ][You]\u23b5\n#_1CF5A0: db $27, $A7, $A1, $B8, $59, $E1, $A6, $1E ; n[ev][er ][know]\u23b5[wh][er]e\n#_1CF5A8: db $7E ; wait for key\n#_1CF5A9: db $73 ; scroll text\n#_1CF5AA: db $E3, $51, $25, $25, $59, $2C, $2E, $2B ; [you]'ll\u23b5sur\n#_1CF5B2: db $1F, $1A, $1C, $1E, $3E, $8A, $16, $1A ; face![ ]Wa\n#_1CF5BA: db $21, $59, $B1, $59, $B1, $3E ; h\u23b5[ha]\u23b5[ha]!\n#_1CF5C0: db $7F ; end of message\n\n; =========================================================\n; Wade back this way when you\n; have more Rupees\u2026\n; Wah ha ha! I'll see you again!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0145", + "code": "Message_0145:\n#_1CF5C1: db $16, $1A, $1D, $1E, $59, $96, $9C, $59 ; Wade\u23b5[ba][ck]\u23b5\n#_1CF5C9: db $D9, $2C, $59, $DF, $32, $59, $E1, $A0 ; [thi]s\u23b5[wa]y\u23b5[wh][en ]\n#_1CF5D1: db $E3 ; [you]\n#_1CF5D2: db $75 ; line 2\n#_1CF5D3: db $AD, $59, $26, $C8, $1E, $59, $11, $DC ; [have]\u23b5m[or]e\u23b5R[up]\n#_1CF5DB: db $1E, $1E, $2C, $43 ; ees\u2026\n#_1CF5DF: db $76 ; line 3\n#_1CF5E0: db $16, $1A, $21, $59, $B1, $59, $B1, $3E ; Wah\u23b5[ha]\u23b5[ha]!\n#_1CF5E8: db $8A, $08, $51, $25, $25, $59, $D0, $1E ; [ ]I'll\u23b5[se]e\n#_1CF5F0: db $59, $E3, $59, $1A, $20, $8F, $3E ; \u23b5[you]\u23b5ag[ain]!\n#_1CF5F7: db $7F ; end of message\n\n; =========================================================\n; Great! Whenever you want to\n; see my fishy face, you are\n; welcome here.\n; \u2026\n; Wah ha ha! Good bye\u2026!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0146", + "code": "Message_0146:\n#_1CF5F8: db $06, $CE, $94, $3E, $8A, $16, $21, $A5 ; G[re][at]![ ]Wh[en]\n#_1CF600: db $A7, $A1, $E3, $59, $DF, $27, $2D, $59 ; [ev][er ][you]\u23b5[wa]nt\u23b5\n#_1CF608: db $DA ; [to]\n#_1CF609: db $75 ; line 2\n#_1CF60A: db $D0, $1E, $59, $26, $32, $59, $1F, $B5 ; [se]e\u23b5my\u23b5f[is]\n#_1CF612: db $21, $32, $59, $1F, $1A, $1C, $1E, $42 ; hy\u23b5face,\n#_1CF61A: db $59, $E3, $59, $1A, $CE ; \u23b5[you]\u23b5a[re]\n#_1CF61F: db $76 ; line 3\n#_1CF620: db $E0, $25, $9B, $1E, $59, $AF, $1E, $41 ; [we]l[com]e\u23b5[her]e.\n#_1CF628: db $7E ; wait for key\n#_1CF629: db $73 ; scroll text\n#_1CF62A: db $43 ; \u2026\n#_1CF62B: db $73 ; scroll text\n#_1CF62C: db $16, $1A, $21, $59, $B1, $59, $B1, $3E ; Wah\u23b5[ha]\u23b5[ha]!\n#_1CF634: db $8A, $06, $28, $28, $1D, $59, $1B, $32 ; [ ]Good\u23b5by\n#_1CF63C: db $1E, $43, $3E ; e\u2026!\n#_1CF63F: db $7F ; end of message\n\n; =========================================================\n; Hi [LINK]!\n; Elder? Are you talking about\n; the grandpa? OK, but don't\n; tell any of the bad people\n; about this.\n; He's hiding in the palace past\n; the castle.\n; I will mark the spot on your\n; map. Here you are\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0147", + "code": "Message_0147:\n#_1CF640: db $07, $22, $59, $6A, $3E ; Hi\u23b5[LINK]!\n#_1CF645: db $75 ; line 2\n#_1CF646: db $04, $25, $1D, $A6, $3F, $8A, $00, $CD ; Eld[er]?[ ]A[re ]\n#_1CF64E: db $E3, $59, $2D, $1A, $25, $24, $B3, $1A ; [you]\u23b5talk[ing ]a\n#_1CF656: db $98, $2E, $2D ; [bo]ut\n#_1CF659: db $76 ; line 3\n#_1CF65A: db $D8, $59, $20, $2B, $90, $29, $1A, $3F ; [the]\u23b5gr[and]pa?\n#_1CF662: db $8A, $0E, $0A, $42, $8A, $1B, $2E, $2D ; [ ]OK,[ ]but\n#_1CF66A: db $59, $9F, $27, $51, $2D ; \u23b5[do]n't\n#_1CF66F: db $7E ; wait for key\n#_1CF670: db $73 ; scroll text\n#_1CF671: db $2D, $1E, $25, $25, $59, $93, $32, $59 ; tell\u23b5[an]y\u23b5\n#_1CF679: db $C6, $59, $D8, $59, $96, $1D, $59, $29 ; [of]\u23b5[the]\u23b5[ba]d\u23b5p\n#_1CF681: db $1E, $28, $CA ; eo[ple]\n#_1CF684: db $73 ; scroll text\n#_1CF685: db $1A, $98, $2E, $2D, $59, $D9, $2C, $41 ; a[bo]ut\u23b5[thi]s.\n#_1CF68D: db $73 ; scroll text\n#_1CF68E: db $07, $1E, $8B, $B0, $9E, $27, $20, $59 ; He['s ][hi][di]ng\u23b5\n#_1CF696: db $B4, $59, $D8, $59, $29, $1A, $BA, $1C ; [in]\u23b5[the]\u23b5pa[la]c\n#_1CF69E: db $1E, $59, $29, $92 ; e\u23b5p[ast]\n#_1CF6A2: db $7E ; wait for key\n#_1CF6A3: db $73 ; scroll text\n#_1CF6A4: db $D8, $59, $1C, $92, $25, $1E, $41 ; [the]\u23b5c[ast]le.\n#_1CF6AB: db $73 ; scroll text\n#_1CF6AC: db $08, $59, $E2, $25, $25, $59, $BD, $2B ; I\u23b5[wi]ll\u23b5[ma]r\n#_1CF6B4: db $24, $59, $D8, $59, $2C, $29, $28, $2D ; k\u23b5[the]\u23b5spot\n#_1CF6BC: db $59, $C7, $59, $E3, $2B ; \u23b5[on]\u23b5[you]r\n#_1CF6C1: db $73 ; scroll text\n#_1CF6C2: db $BD, $29, $41, $8A, $E4, $1E, $59, $E3 ; [ma]p.[ ][Her]e\u23b5[you]\n#_1CF6CA: db $59, $1A, $CE, $43 ; \u23b5a[re]\u2026\n#_1CF6CE: db $79, $2D ; play sfx\n#_1CF6D0: db $7F ; end of message\n\n; =========================================================\n; Did you meet the grandpa? If\n; all the bad people go away, he\n; can come back to the village.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0148", + "code": "Message_0148:\n#_1CF6D1: db $03, $22, $1D, $59, $E3, $59, $BE, $1E ; Did\u23b5[you]\u23b5[me]e\n#_1CF6D9: db $2D, $59, $D8, $59, $20, $2B, $90, $29 ; t\u23b5[the]\u23b5gr[and]p\n#_1CF6E1: db $1A, $3F, $8A, $08, $1F ; a?[ ]If\n#_1CF6E6: db $75 ; line 2\n#_1CF6E7: db $8E, $D8, $59, $96, $1D, $59, $29, $1E ; [all ][the]\u23b5[ba]d\u23b5pe\n#_1CF6EF: db $28, $CA, $59, $AC, $59, $1A, $DF, $32 ; o[ple]\u23b5[go]\u23b5a[wa]y\n#_1CF6F7: db $42, $59, $21, $1E ; ,\u23b5he\n#_1CF6FB: db $76 ; line 3\n#_1CF6FC: db $99, $9B, $1E, $59, $96, $9C, $59, $DA ; [can ][com]e\u23b5[ba][ck]\u23b5[to]\n#_1CF704: db $59, $D8, $59, $2F, $22, $25, $BA, $20 ; \u23b5[the]\u23b5vil[la]g\n#_1CF70C: db $1E, $41 ; e.\n#_1CF70E: db $7F ; end of message\n\n; =========================================================\n; You're new here, aren't you?\n; Did you come here looking for\n; the Power Of Gold?\n; Well, you're too late. It will\n; obey only the first person who\n; touches it.\n; The man who last claimed the\n; Power Of Gold wished for this\n; world. It reflects his heart.\n; Yes, I came here because of\n; greed for the Golden Power,\n; and look what happened to me\u2026\n; To restore the Golden Land, a\n; person worthy of the Golden\n; Power must defeat the man who\n; created this place\u2026\n; Until that time, I am stuck in\n; this bizarre shape.\n; But what a mischievous thing\n; to leave lying around\u2026\n; The Power Of Gold\u2026\n; Triforce\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0149", + "code": "Message_0149:\n#_1CF70F: db $E8, $51, $CD, $27, $1E, $30, $59, $AF ; [You]'[re ]new\u23b5[her]\n#_1CF717: db $1E, $42, $59, $1A, $CE, $C0, $E3, $3F ; e,\u23b5a[re][n't ][you]?\n#_1CF71F: db $75 ; line 2\n#_1CF720: db $03, $22, $1D, $59, $E3, $59, $9B, $1E ; Did\u23b5[you]\u23b5[com]e\n#_1CF728: db $59, $AF, $1E, $59, $BB, $28, $24, $B3 ; \u23b5[her]e\u23b5[lo]ok[ing ]\n#_1CF730: db $A8 ; [for]\n#_1CF731: db $76 ; line 3\n#_1CF732: db $D8, $59, $0F, $28, $E0, $2B, $59, $0E ; [the]\u23b5Po[we]r\u23b5O\n#_1CF73A: db $1F, $59, $06, $28, $25, $1D, $3F ; f\u23b5Gold?\n#_1CF741: db $7E ; wait for key\n#_1CF742: db $73 ; scroll text\n#_1CF743: db $16, $1E, $25, $25, $42, $59, $E3, $51 ; Well,\u23b5[you]'\n#_1CF74B: db $CD, $DA, $28, $59, $BA, $2D, $1E, $41 ; [re ][to]o\u23b5[la]te.\n#_1CF753: db $8A, $08, $2D, $59, $E2, $25, $25 ; [ ]It\u23b5[wi]ll\n#_1CF75A: db $73 ; scroll text\n#_1CF75B: db $28, $97, $32, $59, $C7, $B9, $D8, $59 ; o[be]y\u23b5[on][ly ][the]\u23b5\n#_1CF763: db $1F, $22, $2B, $D3, $59, $C9, $D2, $27 ; fir[st]\u23b5[per][so]n\n#_1CF76B: db $59, $E1, $28 ; \u23b5[wh]o\n#_1CF76E: db $73 ; scroll text\n#_1CF76F: db $DA, $2E, $9A, $2C, $59, $B6, $41 ; [to]u[che]s\u23b5[it].\n#_1CF776: db $7E ; wait for key\n#_1CF777: db $73 ; scroll text\n#_1CF778: db $E6, $59, $BC, $59, $E1, $28, $59, $BA ; [The]\u23b5[man]\u23b5[wh]o\u23b5[la]\n#_1CF780: db $D3, $59, $1C, $BA, $22, $BE, $1D, $59 ; [st]\u23b5c[la]i[me]d\u23b5\n#_1CF788: db $D8 ; [the]\n#_1CF789: db $73 ; scroll text\n#_1CF78A: db $0F, $28, $E0, $2B, $59, $0E, $1F, $59 ; Po[we]r\u23b5Of\u23b5\n#_1CF792: db $06, $28, $25, $1D, $59, $E2, $D1, $A4 ; Gold\u23b5[wi][sh][ed ]\n#_1CF79A: db $A8, $59, $D9, $2C ; [for]\u23b5[thi]s\n#_1CF79E: db $73 ; scroll text\n#_1CF79F: db $30, $C8, $25, $1D, $41, $8A, $08, $2D ; w[or]ld.[ ]It\n#_1CF7A7: db $59, $CE, $1F, $25, $1E, $1C, $2D, $2C ; \u23b5[re]flects\n#_1CF7AF: db $59, $B0, $2C, $59, $21, $A2, $2D, $41 ; \u23b5[hi]s\u23b5h[ear]t.\n#_1CF7B7: db $7E ; wait for key\n#_1CF7B8: db $73 ; scroll text\n#_1CF7B9: db $18, $1E, $2C, $42, $59, $08, $59, $1C ; Yes,\u23b5I\u23b5c\n#_1CF7C1: db $1A, $BE, $59, $AF, $1E, $59, $97, $1C ; a[me]\u23b5[her]e\u23b5[be]c\n#_1CF7C9: db $1A, $2E, $D0, $59, $C6 ; au[se]\u23b5[of]\n#_1CF7CE: db $73 ; scroll text\n#_1CF7CF: db $20, $CE, $A4, $A8, $59, $D8, $59, $06 ; g[re][ed ][for]\u23b5[the]\u23b5G\n#_1CF7D7: db $28, $25, $1D, $A0, $0F, $28, $E0, $2B ; old[en ]Po[we]r\n#_1CF7DF: db $42 ; ,\n#_1CF7E0: db $73 ; scroll text\n#_1CF7E1: db $8C, $BB, $28, $24, $59, $E1, $91, $B1 ; [and ][lo]ok\u23b5[wh][at ][ha]\n#_1CF7E9: db $29, $29, $A5, $A4, $DA, $59, $BE, $43 ; pp[en][ed ][to]\u23b5[me]\u2026\n#_1CF7F1: db $59 ; \u23b5\n#_1CF7F2: db $7E ; wait for key\n#_1CF7F3: db $73 ; scroll text\n#_1CF7F4: db $13, $28, $59, $CE, $D3, $C8, $1E, $59 ; To\u23b5[re][st][or]e\u23b5\n#_1CF7FC: db $D8, $59, $06, $28, $25, $1D, $A0, $0B ; [the]\u23b5Gold[en ]L\n#_1CF804: db $90, $42, $59, $1A ; [and],\u23b5a\n#_1CF808: db $73 ; scroll text\n#_1CF809: db $C9, $D2, $27, $59, $30, $C8, $2D, $21 ; [per][so]n\u23b5w[or]th\n#_1CF811: db $32, $59, $C6, $59, $D8, $59, $06, $28 ; y\u23b5[of]\u23b5[the]\u23b5Go\n#_1CF819: db $25, $1D, $A5 ; ld[en]\n#_1CF81C: db $73 ; scroll text\n#_1CF81D: db $0F, $28, $E0, $2B, $59, $BF, $D3, $59 ; Po[we]r\u23b5[mu][st]\u23b5\n#_1CF825: db $1D, $1E, $1F, $1E, $91, $D8, $59, $BC ; defe[at ][the]\u23b5[man]\n#_1CF82D: db $59, $E1, $28 ; \u23b5[wh]o\n#_1CF830: db $7E ; wait for key\n#_1CF831: db $73 ; scroll text\n#_1CF832: db $1C, $CE, $94, $A4, $D9, $2C, $59, $29 ; c[re][at][ed ][thi]s\u23b5p\n#_1CF83A: db $BA, $1C, $1E, $43 ; [la]ce\u2026\n#_1CF83E: db $73 ; scroll text\n#_1CF83F: db $14, $27, $2D, $22, $25, $59, $D7, $2D ; Until\u23b5[tha]t\n#_1CF847: db $59, $2D, $22, $BE, $42, $59, $08, $59 ; \u23b5ti[me],\u23b5I\u23b5\n#_1CF84F: db $1A, $26, $59, $D3, $2E, $9C, $59, $B4 ; am\u23b5[st]u[ck]\u23b5[in]\n#_1CF857: db $73 ; scroll text\n#_1CF858: db $D9, $2C, $59, $1B, $22, $33, $1A, $2B ; [thi]s\u23b5bizar\n#_1CF860: db $CD, $D1, $1A, $29, $1E, $41 ; [re ][sh]ape.\n#_1CF866: db $7E ; wait for key\n#_1CF867: db $73 ; scroll text\n#_1CF868: db $01, $2E, $2D, $59, $E1, $91, $1A, $59 ; But\u23b5[wh][at ]a\u23b5\n#_1CF870: db $26, $B5, $1C, $B0, $A7, $28, $2E, $2C ; m[is]c[hi][ev]ous\n#_1CF878: db $59, $D5, $20 ; \u23b5[thin]g\n#_1CF87B: db $73 ; scroll text\n#_1CF87C: db $DA, $59, $25, $1E, $1A, $2F, $1E, $59 ; [to]\u23b5leave\u23b5\n#_1CF884: db $25, $32, $B3, $1A, $2B, $C4, $43 ; ly[ing ]ar[ound]\u2026\n#_1CF88B: db $73 ; scroll text\n#_1CF88C: db $E6, $59, $0F, $28, $E0, $2B, $59, $0E ; [The]\u23b5Po[we]r\u23b5O\n#_1CF894: db $1F, $59, $06, $28, $25, $1D, $43 ; f\u23b5Gold\u2026\n#_1CF89B: db $7E ; wait for key\n#_1CF89C: db $73 ; scroll text\n#_1CF89D: db $13, $2B, $22, $A8, $1C, $1E, $43 ; Tri[for]ce\u2026\n#_1CF8A4: db $7F ; end of message\n\n; =========================================================\n; -Mysterious Pond-\n; Won't you throw something in?\n;\n; What will you do?\n; > Throw an item\n; Don't try it\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014A", + "code": "Message_014A:\n#_1CF8A5: db $88, $59, $40, $0C, $32, $D3, $A6, $22 ; [ ]\u23b5-My[st][er]i\n#_1CF8AD: db $28, $2E, $2C, $59, $0F, $C7, $1D, $40 ; ous\u23b5P[on]d-\n#_1CF8B5: db $75 ; line 2\n#_1CF8B6: db $16, $C7, $51, $2D, $59, $E3, $59, $2D ; W[on]'t\u23b5[you]\u23b5t\n#_1CF8BE: db $21, $2B, $28, $30, $59, $CF, $D5, $20 ; hrow\u23b5[some][thin]g\n#_1CF8C6: db $59, $B4, $3F ; \u23b5[in]?\n#_1CF8C9: db $76 ; line 3\n#_1CF8CA: db $7E ; wait for key\n#_1CF8CB: db $73 ; scroll text\n#_1CF8CC: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_1CF8D4: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_1CF8D8: db $73 ; scroll text\n#_1CF8D9: db $88, $44, $59, $13, $21, $2B, $28, $30 ; [ ]>\u23b5Throw\n#_1CF8E1: db $59, $93, $59, $B6, $1E, $26 ; \u23b5[an]\u23b5[it]em\n#_1CF8E7: db $73 ; scroll text\n#_1CF8E8: db $88, $89, $03, $C7, $51, $2D, $59, $DB ; [ ][ ]D[on]'t\u23b5[tr]\n#_1CF8F0: db $32, $59, $B6 ; y\u23b5[it]\n#_1CF8F3: db $68 ; choose 2 indented\n#_1CF8F4: db $7F ; end of message\n\n; =========================================================\n; Don't do it!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014B", + "code": "Message_014B:\n#_1CF8F5: db $03, $C7, $51, $2D, $59, $9F, $59, $B6 ; D[on]'t\u23b5[do]\u23b5[it]\n#_1CF8FD: db $3E ; !\n#_1CF8FE: db $7F ; end of message\n\n; =========================================================\n; Don't do it!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014C", + "code": "Message_014C:\n#_1CF8FF: db $03, $C7, $51, $2D, $59, $9F, $59, $B6 ; D[on]'t\u23b5[do]\u23b5[it]\n#_1CF907: db $3E ; !\n#_1CF908: db $7F ; end of message\n\n; =========================================================\n; I will give this back to you\n; then. Don't drop it again.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014D", + "code": "Message_014D:\n#_1CF909: db $08, $59, $E2, $25, $25, $59, $AA, $D9 ; I\u23b5[wi]ll\u23b5[give ][thi]\n#_1CF911: db $2C, $59, $96, $9C, $59, $DA, $59, $E3 ; s\u23b5[ba][ck]\u23b5[to]\u23b5[you]\n#_1CF919: db $75 ; line 2\n#_1CF91A: db $D8, $27, $41, $8A, $03, $C7, $51, $2D ; [the]n.[ ]D[on]'t\n#_1CF922: db $59, $1D, $2B, $28, $29, $59, $B6, $59 ; \u23b5drop\u23b5[it]\u23b5\n#_1CF92A: db $1A, $20, $8F, $41 ; ag[ain].\n#_1CF92E: db $7F ; end of message\n\n; =========================================================\n; How many Rupees will you toss?\n; > [#1][#0] Rupees\n; [#3][#2] Rupees\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014E", + "code": "Message_014E:\n#_1CF92F: db $07, $28, $30, $59, $BC, $32, $59, $11 ; How\u23b5[man]y\u23b5R\n#_1CF937: db $DC, $1E, $1E, $2C, $59, $E2, $25, $25 ; [up]ees\u23b5[wi]ll\n#_1CF93F: db $59, $E3, $59, $DA, $2C, $2C, $3F ; \u23b5[you]\u23b5[to]ss?\n#_1CF946: db $75 ; line 2\n#_1CF947: db $88, $44, $59, $6C, $01, $6C, $00, $59 ; [ ]>\u23b5[#1][#0]\u23b5\n#_1CF94F: db $11, $DC, $1E, $1E, $2C ; R[up]ees\n#_1CF954: db $76 ; line 3\n#_1CF955: db $88, $89, $6C, $03, $6C, $02, $59, $11 ; [ ][ ][#3][#2]\u23b5R\n#_1CF95D: db $DC, $1E, $1E, $2C ; [up]ees\n#_1CF961: db $68 ; choose 2 indented\n#_1CF962: db $7F ; end of message\n\n; =========================================================\n; You are an honest person.\n; I like you.\n; I will give you something\n; important\u2026\n; These are the Silver Arrows.\n; To give Ganon his last\n; moment, you definitely need\n; them! I know I don't quite have\n; the figure of a faerie.\n; Ganon's cruel power\n; is to blame!\n; You must defeat Ganon!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_014F", + "code": "Message_014F:\n#_1CF963: db $E8, $59, $8D, $93, $59, $21, $C7, $1E ; [You]\u23b5[are ][an]\u23b5h[on]e\n#_1CF96B: db $D3, $59, $C9, $D2, $27, $41 ; [st]\u23b5[per][so]n.\n#_1CF971: db $75 ; line 2\n#_1CF972: db $08, $59, $25, $22, $24, $1E, $59, $E3 ; I\u23b5like\u23b5[you]\n#_1CF97A: db $41 ; .\n#_1CF97B: db $76 ; line 3\n#_1CF97C: db $08, $59, $E2, $25, $25, $59, $AA, $E3 ; I\u23b5[wi]ll\u23b5[give ][you]\n#_1CF984: db $59, $CF, $D5, $20 ; \u23b5[some][thin]g\n#_1CF988: db $7E ; wait for key\n#_1CF989: db $73 ; scroll text\n#_1CF98A: db $22, $26, $29, $C8, $2D, $93, $2D, $43 ; imp[or]t[an]t\u2026\n#_1CF992: db $73 ; scroll text\n#_1CF993: db $E6, $D0, $59, $8D, $D8, $59, $12, $22 ; [The][se]\u23b5[are ][the]\u23b5Si\n#_1CF99B: db $25, $DD, $59, $00, $2B, $2B, $28, $30 ; l[ver]\u23b5Arrow\n#_1CF9A3: db $2C, $41 ; s.\n#_1CF9A5: db $73 ; scroll text\n#_1CF9A6: db $13, $28, $59, $AA, $06, $93, $C7, $59 ; To\u23b5[give ]G[an][on]\u23b5\n#_1CF9AE: db $B0, $2C, $59, $BA, $D3 ; [hi]s\u23b5[la][st]\n#_1CF9B3: db $7E ; wait for key\n#_1CF9B4: db $73 ; scroll text\n#_1CF9B5: db $26, $28, $BE, $27, $2D, $42, $59, $E3 ; mo[me]nt,\u23b5[you]\n#_1CF9BD: db $59, $1D, $1E, $1F, $B4, $B6, $1E, $B9 ; \u23b5def[in][it]e[ly ]\n#_1CF9C5: db $27, $1E, $1E, $1D ; need\n#_1CF9C9: db $73 ; scroll text\n#_1CF9CA: db $D8, $26, $3E, $8A, $08, $59, $B8, $59 ; [the]m![ ]I\u23b5[know]\u23b5\n#_1CF9D2: db $08, $59, $9F, $C0, $2A, $2E, $B6, $1E ; I\u23b5[do][n't ]qu[it]e\n#_1CF9DA: db $59, $AD ; \u23b5[have]\n#_1CF9DC: db $73 ; scroll text\n#_1CF9DD: db $D8, $59, $1F, $22, $20, $2E, $CD, $C6 ; [the]\u23b5figu[re ][of]\n#_1CF9E5: db $59, $1A, $59, $1F, $1A, $A6, $22, $1E ; \u23b5a\u23b5fa[er]ie\n#_1CF9ED: db $41 ; .\n#_1CF9EE: db $7E ; wait for key\n#_1CF9EF: db $73 ; scroll text\n#_1CF9F0: db $06, $93, $C7, $8B, $1C, $2B, $2E, $1E ; G[an][on]['s ]crue\n#_1CF9F8: db $25, $59, $CB, $A6 ; l\u23b5[pow][er]\n#_1CF9FC: db $73 ; scroll text\n#_1CF9FD: db $B5, $59, $DA, $59, $1B, $BA, $BE, $3E ; [is]\u23b5[to]\u23b5b[la][me]!\n#_1CFA05: db $73 ; scroll text\n#_1CFA06: db $E8, $59, $BF, $D3, $59, $1D, $1E, $1F ; [You]\u23b5[mu][st]\u23b5def\n#_1CFA0E: db $1E, $91, $06, $93, $C7, $3E ; e[at ]G[an][on]!\n#_1CFA14: db $7F ; end of message\n\n; =========================================================\n; Great Luck.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0150", + "code": "Message_0150:\n#_1CFA15: db $75 ; line 2\n#_1CFA16: db $89, $06, $CE, $91, $0B, $2E, $9C, $41 ; [ ]G[re][at ]Lu[ck].\n#_1CFA1E: db $7F ; end of message\n\n; =========================================================\n; Good Luck.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0151", + "code": "Message_0151:\n#_1CFA1F: db $75 ; line 2\n#_1CFA20: db $89, $06, $28, $28, $1D, $59, $0B, $2E ; [ ]Good\u23b5Lu\n#_1CFA28: db $9C, $41 ; [ck].\n#_1CFA2A: db $7F ; end of message\n\n; =========================================================\n; A Little Luck.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0152", + "code": "Message_0152:\n#_1CFA2B: db $75 ; line 2\n#_1CFA2C: db $89, $00, $59, $0B, $B6, $2D, $25, $1E ; [ ]A\u23b5L[it]tle\n#_1CFA34: db $59, $0B, $2E, $9C, $41 ; \u23b5Lu[ck].\n#_1CFA39: db $7F ; end of message\n\n; =========================================================\n; Big Trouble.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0153", + "code": "Message_0153:\n#_1CFA3A: db $75 ; line 2\n#_1CFA3B: db $89, $01, $22, $20, $59, $13, $2B, $28 ; [ ]Big\u23b5Tro\n#_1CFA43: db $2E, $95, $41 ; u[ble].\n#_1CFA46: db $7F ; end of message\n\n; =========================================================\n; For your reference, today you\n; will have\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0154", + "code": "Message_0154:\n#_1CFA47: db $05, $C8, $59, $E3, $2B, $59, $CE, $1F ; F[or]\u23b5[you]r\u23b5[re]f\n#_1CFA4F: db $A6, $A5, $1C, $1E, $42, $59, $DA, $1D ; [er][en]ce,\u23b5[to]d\n#_1CFA57: db $1A, $32, $59, $E3 ; ay\u23b5[you]\n#_1CFA5B: db $75 ; line 2\n#_1CFA5C: db $E2, $25, $25, $59, $AD ; [wi]ll\u23b5[have]\n#_1CFA61: db $7F ; end of message\n\n; =========================================================\n; You found a piece of Heart!\n; \u2665\u2665\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0155", + "code": "Message_0155:\n#_1CFA62: db $E8, $59, $1F, $C4, $59, $1A, $59, $29 ; [You]\u23b5f[ound]\u23b5a\u23b5p\n#_1CFA6A: db $22, $1E, $1C, $1E, $59, $C6, $59, $07 ; iece\u23b5[of]\u23b5H\n#_1CFA72: db $A2, $2D, $3E ; [ear]t!\n#_1CFA75: db $75 ; line 2\n#_1CFA76: db $88, $88, $88, $88, $59, $52, $53 ; [ ][ ][ ][ ]\u23b5\u2665\u2665\n#_1CFA7D: db $7F ; end of message\n\n; =========================================================\n; You found a piece of Heart!\n; \u2665\u2665\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0156", + "code": "Message_0156:\n#_1CFA7E: db $E8, $59, $1F, $C4, $59, $1A, $59, $29 ; [You]\u23b5f[ound]\u23b5a\u23b5p\n#_1CFA86: db $22, $1E, $1C, $1E, $59, $C6, $59, $07 ; iece\u23b5[of]\u23b5H\n#_1CFA8E: db $A2, $2D, $3E ; [ear]t!\n#_1CFA91: db $75 ; line 2\n#_1CFA92: db $88, $88, $88, $88, $59, $54, $53 ; [ ][ ][ ][ ]\u23b5\u2665\u2665\n#_1CFA99: db $7F ; end of message\n\n; =========================================================\n; You found a piece of Heart!\n; \u2665\u2665\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0157", + "code": "Message_0157:\n#_1CFA9A: db $E8, $59, $1F, $C4, $59, $1A, $59, $29 ; [You]\u23b5f[ound]\u23b5a\u23b5p\n#_1CFAA2: db $22, $1E, $1C, $1E, $59, $C6, $59, $07 ; iece\u23b5[of]\u23b5H\n#_1CFAAA: db $A2, $2D, $3E ; [ear]t!\n#_1CFAAD: db $75 ; line 2\n#_1CFAAE: db $88, $88, $88, $88, $59, $55, $56 ; [ ][ ][ ][ ]\u23b5\u2665\u2665\n#_1CFAB5: db $7F ; end of message\n\n; =========================================================\n; You found a piece of Heart!\n; \u2665\u2665\n; Your Heart level increased!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0158", + "code": "Message_0158:\n#_1CFAB6: db $E8, $59, $1F, $C4, $59, $1A, $59, $29 ; [You]\u23b5f[ound]\u23b5a\u23b5p\n#_1CFABE: db $22, $1E, $1C, $1E, $59, $C6, $59, $07 ; iece\u23b5[of]\u23b5H\n#_1CFAC6: db $A2, $2D, $3E ; [ear]t!\n#_1CFAC9: db $75 ; line 2\n#_1CFACA: db $88, $88, $88, $88, $59, $57, $58 ; [ ][ ][ ][ ]\u23b5\u2665\u2665\n#_1CFAD1: db $76 ; line 3\n#_1CFAD2: db $E8, $2B, $59, $07, $A2, $2D, $59, $25 ; [You]r\u23b5H[ear]t\u23b5l\n#_1CFADA: db $A7, $1E, $25, $59, $B4, $1C, $CE, $1A ; [ev]el\u23b5[in]c[re]a\n#_1CFAE2: db $D0, $1D, $3E ; [se]d!\n#_1CFAE5: db $7F ; end of message\n\n; =========================================================\n; You found a Heart Container!\n; \u2665\u2665\n; Your Heart level increased!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0159", + "code": "Message_0159:\n#_1CFAE6: db $E8, $59, $1F, $C4, $59, $1A, $59, $07 ; [You]\u23b5f[ound]\u23b5a\u23b5H\n#_1CFAEE: db $A2, $2D, $59, $02, $C7, $2D, $8F, $A6 ; [ear]t\u23b5C[on]t[ain][er]\n#_1CFAF6: db $3E ; !\n#_1CFAF7: db $75 ; line 2\n#_1CFAF8: db $88, $88, $88, $88, $59, $57, $58 ; [ ][ ][ ][ ]\u23b5\u2665\u2665\n#_1CFAFF: db $76 ; line 3\n#_1CFB00: db $E8, $2B, $59, $07, $A2, $2D, $59, $25 ; [You]r\u23b5H[ear]t\u23b5l\n#_1CFB08: db $A7, $1E, $25, $59, $B4, $1C, $CE, $1A ; [ev]el\u23b5[in]c[re]a\n#_1CFB10: db $D0, $1D, $3E ; [se]d!\n#_1CFB13: db $7F ; end of message\n\n; =========================================================\n; I will sooth your wounds and\n; comfort your weariness\u2026\n; Close your eyes and relax\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015A", + "code": "Message_015A:\n#_1CFB14: db $08, $59, $E2, $25, $25, $59, $D2, $28 ; I\u23b5[wi]ll\u23b5[so]o\n#_1CFB1C: db $2D, $21, $59, $E3, $2B, $59, $30, $C4 ; th\u23b5[you]r\u23b5w[ound]\n#_1CFB24: db $2C, $59, $90 ; s\u23b5[and]\n#_1CFB27: db $75 ; line 2\n#_1CFB28: db $9B, $A8, $2D, $59, $E3, $2B, $59, $E0 ; [com][for]t\u23b5[you]r\u23b5[we]\n#_1CFB30: db $1A, $2B, $B4, $1E, $2C, $2C, $43 ; ar[in]ess\u2026\n#_1CFB37: db $76 ; line 3\n#_1CFB38: db $02, $BB, $D0, $59, $E3, $2B, $59, $1E ; C[lo][se]\u23b5[you]r\u23b5e\n#_1CFB40: db $32, $1E, $2C, $59, $8C, $CE, $BA, $31 ; yes\u23b5[and ][re][la]x\n#_1CFB48: db $43 ; \u2026\n#_1CFB49: db $7F ; end of message\n\n; =========================================================\n; Oh? Who are you, Mr. Bunny?\n; This world is like the real\n; world, but evil has twisted it.\n; The Golden Power is what\n; changed your shape to reflect\n; what is in your heart and mind.\n; I am always changing my mind,\n; so I turned into a ball\u2026\n; But if you have a ball called\n; the Moon Pearl, you can keep\n; your original shape here.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015B", + "code": "Message_015B:\n#_1CFB4A: db $0E, $21, $3F, $8A, $16, $21, $28, $59 ; Oh?[ ]Who\u23b5\n#_1CFB52: db $8D, $E3, $42, $59, $0C, $2B, $41, $59 ; [are ][you],\u23b5Mr.\u23b5\n#_1CFB5A: db $01, $2E, $27, $27, $32, $3F ; Bunny?\n#_1CFB60: db $75 ; line 2\n#_1CFB61: db $E7, $2C, $59, $30, $C8, $25, $1D, $59 ; [Thi]s\u23b5w[or]ld\u23b5\n#_1CFB69: db $B5, $59, $25, $22, $24, $1E, $59, $D8 ; [is]\u23b5like\u23b5[the]\n#_1CFB71: db $59, $CE, $1A, $25 ; \u23b5[re]al\n#_1CFB75: db $76 ; line 3\n#_1CFB76: db $30, $C8, $25, $1D, $42, $59, $1B, $2E ; w[or]ld,\u23b5bu\n#_1CFB7E: db $2D, $59, $A7, $22, $25, $59, $AE, $59 ; t\u23b5[ev]il\u23b5[has]\u23b5\n#_1CFB86: db $2D, $E2, $D3, $A4, $B6, $41 ; t[wi][st][ed ][it].\n#_1CFB8C: db $7E ; wait for key\n#_1CFB8D: db $73 ; scroll text\n#_1CFB8E: db $E6, $59, $06, $28, $25, $1D, $A0, $0F ; [The]\u23b5Gold[en ]P\n#_1CFB96: db $28, $E0, $2B, $59, $B5, $59, $E1, $94 ; o[we]r\u23b5[is]\u23b5[wh][at]\n#_1CFB9E: db $73 ; scroll text\n#_1CFB9F: db $1C, $B1, $27, $20, $A4, $E3, $2B, $59 ; c[ha]ng[ed ][you]r\u23b5\n#_1CFBA7: db $D1, $1A, $29, $1E, $59, $DA, $59, $CE ; [sh]ape\u23b5[to]\u23b5[re]\n#_1CFBAF: db $1F, $25, $1E, $1C, $2D ; flect\n#_1CFBB4: db $73 ; scroll text\n#_1CFBB5: db $E1, $91, $B5, $59, $B4, $59, $E3, $2B ; [wh][at ][is]\u23b5[in]\u23b5[you]r\n#_1CFBBD: db $59, $21, $A2, $2D, $59, $8C, $26, $B4 ; \u23b5h[ear]t\u23b5[and ]m[in]\n#_1CFBC5: db $1D, $41 ; d.\n#_1CFBC7: db $7E ; wait for key\n#_1CFBC8: db $73 ; scroll text\n#_1CFBC9: db $08, $59, $1A, $26, $59, $1A, $25, $DF ; I\u23b5am\u23b5al[wa]\n#_1CFBD1: db $32, $2C, $59, $1C, $B1, $27, $20, $B3 ; ys\u23b5c[ha]ng[ing ]\n#_1CFBD9: db $26, $32, $59, $26, $B4, $1D, $42 ; my\u23b5m[in]d,\n#_1CFBE0: db $73 ; scroll text\n#_1CFBE1: db $D2, $59, $08, $59, $2D, $2E, $2B, $27 ; [so]\u23b5I\u23b5turn\n#_1CFBE9: db $A4, $B4, $DA, $59, $1A, $59, $96, $25 ; [ed ][in][to]\u23b5a\u23b5[ba]l\n#_1CFBF1: db $25, $43 ; l\u2026\n#_1CFBF3: db $73 ; scroll text\n#_1CFBF4: db $01, $2E, $2D, $59, $22, $1F, $59, $E3 ; But\u23b5if\u23b5[you]\n#_1CFBFC: db $59, $AD, $59, $1A, $59, $96, $25, $25 ; \u23b5[have]\u23b5a\u23b5[ba]ll\n#_1CFC04: db $59, $1C, $1A, $25, $25, $1E, $1D ; \u23b5called\n#_1CFC0B: db $7E ; wait for key\n#_1CFC0C: db $73 ; scroll text\n#_1CFC0D: db $D8, $59, $0C, $28, $C7, $59, $0F, $A2 ; [the]\u23b5Mo[on]\u23b5P[ear]\n#_1CFC15: db $25, $42, $59, $E3, $59, $99, $24, $1E ; l,\u23b5[you]\u23b5[can ]ke\n#_1CFC1D: db $1E, $29 ; ep\n#_1CFC1F: db $73 ; scroll text\n#_1CFC20: db $E3, $2B, $59, $C8, $22, $20, $B4, $1A ; [you]r\u23b5[or]ig[in]a\n#_1CFC28: db $25, $59, $D1, $1A, $29, $1E, $59, $AF ; l\u23b5[sh]ape\u23b5[her]\n#_1CFC30: db $1E, $41 ; e.\n#_1CFC32: db $7F ; end of message\n\n; =========================================================\n; You didn't change your shape?\n; You aren't just a normal guy,\n; are you?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015C", + "code": "Message_015C:\n#_1CFC33: db $E8, $59, $9E, $1D, $C0, $1C, $B1, $27 ; [You]\u23b5[di]d[n't ]c[ha]n\n#_1CFC3B: db $20, $1E, $59, $E3, $2B, $59, $D1, $1A ; ge\u23b5[you]r\u23b5[sh]a\n#_1CFC43: db $29, $1E, $3F ; pe?\n#_1CFC46: db $75 ; line 2\n#_1CFC47: db $E8, $59, $1A, $CE, $C0, $B7, $59, $1A ; [You]\u23b5a[re][n't ][just]\u23b5a\n#_1CFC4F: db $59, $27, $C8, $BD, $25, $59, $20, $2E ; \u23b5n[or][ma]l\u23b5gu\n#_1CFC57: db $32, $42 ; y,\n#_1CFC59: db $76 ; line 3\n#_1CFC5A: db $8D, $E3, $3F ; [are ][you]?\n#_1CFC5D: db $7F ; end of message\n\n; =========================================================\n; What do you want?!\n; Do you have something to say\n; to me, silly rabbit?!\n; I came here to get the Power\n; Of Gold but now I'm a freak and\n; I can't go back to the real\n; world! If I only had the Moon\n; Pearl from the Tower Of Hera, I\n; could go back to my original\n; shape! I've got good reason\n; to be stressed out!\n; So back off! Shoo shoo!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015D", + "code": "Message_015D:\n#_1CFC5E: db $16, $B1, $2D, $59, $9F, $59, $E3, $59 ; W[ha]t\u23b5[do]\u23b5[you]\u23b5\n#_1CFC66: db $DF, $27, $2D, $3F, $3E ; [wa]nt?!\n#_1CFC6B: db $75 ; line 2\n#_1CFC6C: db $03, $28, $59, $E3, $59, $AD, $59, $CF ; Do\u23b5[you]\u23b5[have]\u23b5[some]\n#_1CFC74: db $D5, $20, $59, $DA, $59, $2C, $1A, $32 ; [thin]g\u23b5[to]\u23b5say\n#_1CFC7C: db $76 ; line 3\n#_1CFC7D: db $DA, $59, $BE, $42, $59, $2C, $22, $25 ; [to]\u23b5[me],\u23b5sil\n#_1CFC85: db $B9, $2B, $1A, $1B, $1B, $B6, $3F, $3E ; [ly ]rabb[it]?!\n#_1CFC8D: db $7E ; wait for key\n#_1CFC8E: db $73 ; scroll text\n#_1CFC8F: db $08, $59, $1C, $1A, $BE, $59, $AF, $1E ; I\u23b5ca[me]\u23b5[her]e\n#_1CFC97: db $59, $DA, $59, $AB, $59, $D8, $59, $0F ; \u23b5[to]\u23b5[get]\u23b5[the]\u23b5P\n#_1CFC9F: db $28, $E0, $2B ; o[we]r\n#_1CFCA2: db $73 ; scroll text\n#_1CFCA3: db $0E, $1F, $59, $06, $28, $25, $1D, $59 ; Of\u23b5Gold\u23b5\n#_1CFCAB: db $1B, $2E, $2D, $59, $27, $28, $30, $59 ; but\u23b5now\u23b5\n#_1CFCB3: db $08, $51, $26, $59, $1A, $59, $1F, $CE ; I'm\u23b5a\u23b5f[re]\n#_1CFCBB: db $1A, $24, $59, $90 ; ak\u23b5[and]\n#_1CFCBF: db $73 ; scroll text\n#_1CFCC0: db $08, $59, $1C, $93, $51, $2D, $59, $AC ; I\u23b5c[an]'t\u23b5[go]\n#_1CFCC8: db $59, $96, $9C, $59, $DA, $59, $D8, $59 ; \u23b5[ba][ck]\u23b5[to]\u23b5[the]\u23b5\n#_1CFCD0: db $CE, $1A, $25 ; [re]al\n#_1CFCD3: db $7E ; wait for key\n#_1CFCD4: db $73 ; scroll text\n#_1CFCD5: db $30, $C8, $25, $1D, $3E, $8A, $08, $1F ; w[or]ld![ ]If\n#_1CFCDD: db $59, $08, $59, $C7, $B9, $B1, $1D, $59 ; \u23b5I\u23b5[on][ly ][ha]d\u23b5\n#_1CFCE5: db $D8, $59, $0C, $28, $C7 ; [the]\u23b5Mo[on]\n#_1CFCEA: db $73 ; scroll text\n#_1CFCEB: db $0F, $A2, $25, $59, $A9, $26, $59, $D8 ; P[ear]l\u23b5[fro]m\u23b5[the]\n#_1CFCF3: db $59, $13, $28, $E0, $2B, $59, $0E, $1F ; \u23b5To[we]r\u23b5Of\n#_1CFCFB: db $59, $E4, $1A, $42, $59, $08 ; \u23b5[Her]a,\u23b5I\n#_1CFD01: db $73 ; scroll text\n#_1CFD02: db $1C, $28, $2E, $25, $1D, $59, $AC, $59 ; could\u23b5[go]\u23b5\n#_1CFD0A: db $96, $9C, $59, $DA, $59, $26, $32, $59 ; [ba][ck]\u23b5[to]\u23b5my\u23b5\n#_1CFD12: db $C8, $22, $20, $B4, $1A, $25 ; [or]ig[in]al\n#_1CFD18: db $7E ; wait for key\n#_1CFD19: db $73 ; scroll text\n#_1CFD1A: db $D1, $1A, $29, $1E, $3E, $8A, $08, $51 ; [sh]ape![ ]I'\n#_1CFD22: db $2F, $1E, $59, $AC, $2D, $59, $AC, $28 ; ve\u23b5[go]t\u23b5[go]o\n#_1CFD2A: db $1D, $59, $CE, $1A, $D2, $27 ; d\u23b5[re]a[so]n\n#_1CFD30: db $73 ; scroll text\n#_1CFD31: db $DA, $59, $97, $59, $D3, $CE, $2C, $D0 ; [to]\u23b5[be]\u23b5[st][re]s[se]\n#_1CFD39: db $1D, $59, $28, $2E, $2D, $3E ; d\u23b5out!\n#_1CFD3F: db $73 ; scroll text\n#_1CFD40: db $12, $28, $59, $96, $9C, $59, $C6, $1F ; So\u23b5[ba][ck]\u23b5[of]f\n#_1CFD48: db $3E, $8A, $12, $21, $28, $28, $59, $D1 ; ![ ]Shoo\u23b5[sh]\n#_1CFD50: db $28, $28, $3E ; oo!\n#_1CFD53: db $7F ; end of message\n\n; =========================================================\n; WOW! Your shape didn't change!\n; You got the Moon Pearl, huh?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015E", + "code": "Message_015E:\n#_1CFD54: db $16, $0E, $16, $3E, $8A, $E8, $2B, $59 ; WOW![ ][You]r\u23b5\n#_1CFD5C: db $D1, $1A, $29, $1E, $59, $9E, $1D, $C0 ; [sh]ape\u23b5[di]d[n't ]\n#_1CFD64: db $1C, $B1, $27, $20, $1E, $3E ; c[ha]nge!\n#_1CFD6A: db $75 ; line 2\n#_1CFD6B: db $E8, $59, $AC, $2D, $59, $D8, $59, $0C ; [You]\u23b5[go]t\u23b5[the]\u23b5M\n#_1CFD73: db $28, $C7, $59, $0F, $A2, $25, $42, $59 ; o[on]\u23b5P[ear]l,\u23b5\n#_1CFD7B: db $21, $2E, $21, $3F ; huh?\n#_1CFD7F: db $7F ; end of message\n\n; =========================================================\n; In such a dangerous world you\n; may need many things. Select\n; something that you like\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_015F", + "code": "Message_015F:\n#_1CFD80: db $08, $27, $59, $2C, $2E, $1C, $21, $59 ; In\u23b5such\u23b5\n#_1CFD88: db $1A, $59, $1D, $93, $20, $A6, $28, $2E ; a\u23b5d[an]g[er]ou\n#_1CFD90: db $2C, $59, $30, $C8, $25, $1D, $59, $E3 ; s\u23b5w[or]ld\u23b5[you]\n#_1CFD98: db $75 ; line 2\n#_1CFD99: db $BD, $32, $59, $27, $1E, $A4, $BC, $32 ; [ma]y\u23b5ne[ed ][man]y\n#_1CFDA1: db $59, $D5, $20, $2C, $41, $8A, $12, $1E ; \u23b5[thin]gs.[ ]Se\n#_1CFDA9: db $25, $1E, $1C, $2D ; lect\n#_1CFDAD: db $76 ; line 3\n#_1CFDAE: db $CF, $D5, $20, $59, $D7, $2D, $59, $E3 ; [some][thin]g\u23b5[tha]t\u23b5[you]\n#_1CFDB6: db $59, $25, $22, $24, $1E, $43 ; \u23b5like\u2026\n#_1CFDBC: db $7F ; end of message\n\n; =========================================================\n; Hi, may I help you? You can\n; open two chests for 30 Rupees.\n; Why don't you play?\n; What will you do?\n; > Play here\n; Maybe next time\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0160", + "code": "Message_0160:\n#_1CFDBD: db $07, $22, $42, $59, $BD, $32, $59, $08 ; Hi,\u23b5[ma]y\u23b5I\n#_1CFDC5: db $59, $21, $1E, $25, $29, $59, $E3, $3F ; \u23b5help\u23b5[you]?\n#_1CFDCD: db $8A, $E8, $59, $1C, $93 ; [ ][You]\u23b5c[an]\n#_1CFDD2: db $75 ; line 2\n#_1CFDD3: db $C3, $59, $2D, $30, $28, $59, $9A, $D3 ; [open]\u23b5two\u23b5[che][st]\n#_1CFDDB: db $2C, $59, $A8, $59, $37, $34, $59, $11 ; s\u23b5[for]\u23b530\u23b5R\n#_1CFDE3: db $DC, $1E, $1E, $2C, $41 ; [up]ees.\n#_1CFDE8: db $76 ; line 3\n#_1CFDE9: db $16, $21, $32, $59, $9F, $C0, $E3, $59 ; Why\u23b5[do][n't ][you]\u23b5\n#_1CFDF1: db $29, $BA, $32, $3F ; p[la]y?\n#_1CFDF5: db $7E ; wait for key\n#_1CFDF6: db $73 ; scroll text\n#_1CFDF7: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_1CFDFF: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_1CFE03: db $73 ; scroll text\n#_1CFE04: db $88, $44, $59, $0F, $BA, $32, $59, $AF ; [ ]>\u23b5P[la]y\u23b5[her]\n#_1CFE0C: db $1E ; e\n#_1CFE0D: db $73 ; scroll text\n#_1CFE0E: db $88, $89, $0C, $1A, $32, $97, $59, $27 ; [ ][ ]May[be]\u23b5n\n#_1CFE16: db $1E, $31, $2D, $59, $2D, $22, $BE ; ext\u23b5ti[me]\n#_1CFE1D: db $68 ; choose 2 indented\n#_1CFE1E: db $7F ; end of message\n\n; =========================================================\n; Well, come back and play some\n; time. I'll be waiting for you.\n; Until then, good bye!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0161", + "code": "Message_0161:\n#_1CFE1F: db $16, $1E, $25, $25, $42, $59, $9B, $1E ; Well,\u23b5[com]e\n#_1CFE27: db $59, $96, $9C, $59, $8C, $29, $BA, $32 ; \u23b5[ba][ck]\u23b5[and ]p[la]y\n#_1CFE2F: db $59, $CF ; \u23b5[some]\n#_1CFE31: db $75 ; line 2\n#_1CFE32: db $2D, $22, $BE, $41, $8A, $08, $51, $25 ; ti[me].[ ]I'l\n#_1CFE3A: db $25, $59, $97, $59, $DF, $B6, $B3, $A8 ; l\u23b5[be]\u23b5[wa][it][ing ][for]\n#_1CFE42: db $59, $E3, $41 ; \u23b5[you].\n#_1CFE45: db $76 ; line 3\n#_1CFE46: db $14, $27, $2D, $22, $25, $59, $D8, $27 ; Until\u23b5[the]n\n#_1CFE4E: db $42, $59, $AC, $28, $1D, $59, $1B, $32 ; ,\u23b5[go]od\u23b5by\n#_1CFE56: db $1E, $3E ; e!\n#_1CFE58: db $7F ; end of message\n\n; =========================================================\n; Hey kid!\n; You can open a chest after\n; paying Rupees!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0162", + "code": "Message_0162:\n#_1CFE59: db $07, $1E, $32, $59, $24, $22, $1D, $3E ; Hey\u23b5kid!\n#_1CFE61: db $75 ; line 2\n#_1CFE62: db $E8, $59, $99, $C3, $59, $1A, $59, $9A ; [You]\u23b5[can ][open]\u23b5a\u23b5[che]\n#_1CFE6A: db $D3, $59, $1A, $1F, $D6 ; [st]\u23b5af[ter]\n#_1CFE6F: db $76 ; line 3\n#_1CFE70: db $29, $1A, $32, $B3, $11, $DC, $1E, $1E ; pay[ing ]R[up]ee\n#_1CFE78: db $2C, $3E ; s!\n#_1CFE7A: db $7F ; end of message\n\n; =========================================================\n; You can't open any more\n; chests. The game is over.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0163", + "code": "Message_0163:\n#_1CFE7B: db $E8, $59, $1C, $93, $51, $2D, $59, $C3 ; [You]\u23b5c[an]'t\u23b5[open]\n#_1CFE83: db $59, $93, $32, $59, $26, $C8, $1E ; \u23b5[an]y\u23b5m[or]e\n#_1CFE8A: db $75 ; line 2\n#_1CFE8B: db $9A, $D3, $2C, $41, $8A, $E6, $59, $20 ; [che][st]s.[ ][The]\u23b5g\n#_1CFE93: db $1A, $BE, $59, $B5, $59, $28, $DD, $41 ; a[me]\u23b5[is]\u23b5o[ver].\n#_1CFE9B: db $7F ; end of message\n\n; =========================================================\n; All right, kid.\n; Choose well! Good luck!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0164", + "code": "Message_0164:\n#_1CFE9C: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_1CFEA4: db $2D, $42, $59, $24, $22, $1D, $41 ; t,\u23b5kid.\n#_1CFEAB: db $75 ; line 2\n#_1CFEAC: db $02, $21, $28, $28, $D0, $59, $E0, $25 ; Choo[se]\u23b5[we]l\n#_1CFEB4: db $25, $3E, $8A, $06, $28, $28, $1D, $59 ; l![ ]Good\u23b5\n#_1CFEBC: db $25, $2E, $9C, $3E ; lu[ck]!\n#_1CFEC0: db $7F ; end of message\n\n; =========================================================\n; May I help you? Select the\n; thing you like (Press the \u24b6\n; Button). Prices as marked!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0165", + "code": "Message_0165:\n#_1CFEC1: db $0C, $1A, $32, $59, $08, $59, $21, $1E ; May\u23b5I\u23b5he\n#_1CFEC9: db $25, $29, $59, $E3, $3F, $8A, $12, $1E ; lp\u23b5[you]?[ ]Se\n#_1CFED1: db $25, $1E, $1C, $2D, $59, $D8 ; lect\u23b5[the]\n#_1CFED7: db $75 ; line 2\n#_1CFED8: db $D5, $20, $59, $E3, $59, $25, $22, $24 ; [thin]g\u23b5[you]\u23b5lik\n#_1CFEE0: db $1E, $59, $45, $0F, $CE, $2C, $2C, $59 ; e\u23b5(P[re]ss\u23b5\n#_1CFEE8: db $D8, $59, $5B ; [the]\u23b5\u24b6\n#_1CFEEB: db $76 ; line 3\n#_1CFEEC: db $01, $2E, $2D, $DA, $27, $46, $41, $8A ; But[to]n).[ ]\n#_1CFEF4: db $0F, $2B, $22, $1C, $1E, $2C, $59, $1A ; Prices\u23b5a\n#_1CFEFC: db $2C, $59, $BD, $2B, $24, $1E, $1D, $3E ; s\u23b5[ma]rked!\n#_1CFF04: db $7F ; end of message\n\n; =========================================================\n; You don't need that item\u2026\n; Why not select something else?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0166", + "code": "Message_0166:\n#_1CFF05: db $E8, $59, $9F, $C0, $27, $1E, $A4, $D7 ; [You]\u23b5[do][n't ]ne[ed ][tha]\n#_1CFF0D: db $2D, $59, $B6, $1E, $26, $43 ; t\u23b5[it]em\u2026\n#_1CFF13: db $75 ; line 2\n#_1CFF14: db $16, $21, $32, $59, $C2, $59, $D0, $25 ; Why\u23b5[not]\u23b5[se]l\n#_1CFF1C: db $1E, $1C, $2D, $59, $CF, $D5, $20, $59 ; ect\u23b5[some][thin]g\u23b5\n#_1CFF24: db $1E, $25, $D0, $3F ; el[se]?\n#_1CFF28: db $7F ; end of message\n\n; ---------------------------------------------------------\n\n#_1CFF29: db $80 ; change banks\n\n; ---------------------------------------------------------\n\n; =========================================================\n; FREE ROM: 0xD6\n; =========================================================", + "file": "text.asm" + }, + { + "name": "NULL_1CFF2A", + "code": "NULL_1CFF2A:\n#_1CFF2A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF32: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF3A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF42: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF4A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF52: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF5A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF62: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF6A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF72: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF7A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF82: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF8A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF92: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFF9A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFA2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFAA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFB2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFBA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFC2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFCA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFD2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFDA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFE2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFEA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFF2: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1CFFFA: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n; ---------------------------------------------------------\n; Text bank change\n; ---------------------------------------------------------\n; =========================================================\n\norg $0EDF40\n", + "file": "text.asm" + }, + { + "name": "Message_DataExtra", + "code": "Message_DataExtra:\n\n; =========================================================\n; Thank you very much.\n; Whenever you lose your shield,\n; come back here again.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0167", + "code": "Message_0167:\n#_0EDF40: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_0EDF48: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_0EDF4D: db $75 ; line 2\n#_0EDF4E: db $16, $21, $A5, $A7, $A1, $E3, $59, $BB ; Wh[en][ev][er ][you]\u23b5[lo]\n#_0EDF56: db $D0, $59, $E3, $2B, $59, $D1, $22, $1E ; [se]\u23b5[you]r\u23b5[sh]ie\n#_0EDF5E: db $25, $1D, $42 ; ld,\n#_0EDF61: db $76 ; line 3\n#_0EDF62: db $9B, $1E, $59, $96, $9C, $59, $AF, $1E ; [com]e\u23b5[ba][ck]\u23b5[her]e\n#_0EDF6A: db $59, $1A, $20, $8F, $41 ; \u23b5ag[ain].\n#_0EDF6F: db $7F ; end of message\n\n; =========================================================\n; Thank you very much.\n; This is the Medicine of Life.\n; It helps you recover your Life.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0168", + "code": "Message_0168:\n#_0EDF70: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_0EDF78: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_0EDF7D: db $75 ; line 2\n#_0EDF7E: db $E7, $2C, $59, $B5, $59, $D8, $59, $0C ; [Thi]s\u23b5[is]\u23b5[the]\u23b5M\n#_0EDF86: db $1E, $9E, $1C, $B4, $1E, $59, $C6, $59 ; e[di]c[in]e\u23b5[of]\u23b5\n#_0EDF8E: db $0B, $22, $1F, $1E, $41 ; Life.\n#_0EDF93: db $76 ; line 3\n#_0EDF94: db $08, $2D, $59, $21, $1E, $25, $29, $2C ; It\u23b5helps\n#_0EDF9C: db $59, $E3, $59, $CE, $1C, $28, $DD, $59 ; \u23b5[you]\u23b5[re]co[ver]\u23b5\n#_0EDFA4: db $E3, $2B, $59, $0B, $22, $1F, $1E, $41 ; [you]r\u23b5Life.\n#_0EDFAC: db $7F ; end of message\n\n; =========================================================\n; Thank you very much.\n; These are Arrows. You can't\n; use them without a Bow.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0169", + "code": "Message_0169:\n#_0EDFAD: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_0EDFB5: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_0EDFBA: db $75 ; line 2\n#_0EDFBB: db $E6, $D0, $59, $8D, $00, $2B, $2B, $28 ; [The][se]\u23b5[are ]Arro\n#_0EDFC3: db $30, $2C, $41, $8A, $E8, $59, $1C, $93 ; ws.[ ][You]\u23b5c[an]\n#_0EDFCB: db $51, $2D ; 't\n#_0EDFCD: db $76 ; line 3\n#_0EDFCE: db $2E, $D0, $59, $D8, $26, $59, $DE, $C5 ; u[se]\u23b5[the]m\u23b5[with][out ]\n#_0EDFD6: db $1A, $59, $01, $28, $30, $41 ; a\u23b5Bow.\n#_0EDFDC: db $7F ; end of message\n\n; =========================================================\n; These are Bombs.\n; Did you know you can pick up\n; a Bomb you already placed ?\n; (Press the \u24b6 Button).\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016A", + "code": "Message_016A:\n#_0EDFDD: db $E6, $D0, $59, $8D, $01, $28, $26, $1B ; [The][se]\u23b5[are ]Bomb\n#_0EDFE5: db $2C, $41 ; s.\n#_0EDFE7: db $75 ; line 2\n#_0EDFE8: db $03, $22, $1D, $59, $E3, $59, $B8, $59 ; Did\u23b5[you]\u23b5[know]\u23b5\n#_0EDFF0: db $E3, $59, $99, $29, $22, $9C, $59, $DC ; [you]\u23b5[can ]pi[ck]\u23b5[up]\n#_0EDFF8: db $76 ; line 3\n#_0EDFF9: db $1A, $59, $01, $28, $26, $1B, $59, $E3 ; a\u23b5Bomb\u23b5[you]\n#_0EE001: db $59, $1A, $25, $CE, $1A, $1D, $32, $59 ; \u23b5al[re]ady\u23b5\n#_0EE009: db $29, $BA, $1C, $A4, $3F ; p[la]c[ed ]?\n#_0EE00E: db $7E ; wait for key\n#_0EE00F: db $73 ; scroll text\n#_0EE010: db $45, $0F, $CE, $2C, $2C, $59, $D8, $59 ; (P[re]ss\u23b5[the]\u23b5\n#_0EE018: db $5B, $59, $01, $2E, $2D, $DA, $27, $46 ; \u24b6\u23b5But[to]n)\n#_0EE020: db $41 ; .\n#_0EE021: db $7F ; end of message\n\n; =========================================================\n; Thank you very much.\n; That is a Bee. Don't ask me\n; what it is used for, either.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016B", + "code": "Message_016B:\n#_0EE022: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_0EE02A: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_0EE02F: db $75 ; line 2\n#_0EE030: db $E5, $2D, $59, $B5, $59, $1A, $59, $01 ; [Tha]t\u23b5[is]\u23b5a\u23b5B\n#_0EE038: db $1E, $1E, $41, $8A, $03, $C7, $51, $2D ; ee.[ ]D[on]'t\n#_0EE040: db $59, $1A, $2C, $24, $59, $BE ; \u23b5ask\u23b5[me]\n#_0EE046: db $76 ; line 3\n#_0EE047: db $E1, $91, $B6, $59, $B5, $59, $2E, $D0 ; [wh][at ][it]\u23b5[is]\u23b5u[se]\n#_0EE04F: db $1D, $59, $A8, $42, $59, $1E, $B6, $AF ; d\u23b5[for],\u23b5e[it][her]\n#_0EE057: db $41 ; .\n#_0EE058: db $7F ; end of message\n\n; =========================================================\n; Thank you very much.\n; You can recover one Heart.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016C", + "code": "Message_016C:\n#_0EE059: db $E5, $27, $24, $59, $E3, $59, $DD, $32 ; [Tha]nk\u23b5[you]\u23b5[ver]y\n#_0EE061: db $59, $BF, $1C, $21, $41 ; \u23b5[mu]ch.\n#_0EE066: db $75 ; line 2\n#_0EE067: db $E8, $59, $99, $CE, $1C, $28, $DD, $59 ; [You]\u23b5[can ][re]co[ver]\u23b5\n#_0EE06F: db $C7, $1E, $59, $07, $A2, $2D, $41 ; [on]e\u23b5H[ear]t.\n#_0EE076: db $7F ; end of message\n\n; =========================================================\n; No no no\u2026 I can't sell the\n; merchandise because you don't\n; have an empty bottle.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016D", + "code": "Message_016D:\n#_0EE077: db $0D, $28, $59, $27, $28, $59, $27, $28 ; No\u23b5no\u23b5no\n#_0EE07F: db $43, $8A, $08, $59, $1C, $93, $51, $2D ; \u2026[ ]I\u23b5c[an]'t\n#_0EE087: db $59, $D0, $25, $25, $59, $D8 ; \u23b5[se]ll\u23b5[the]\n#_0EE08D: db $75 ; line 2\n#_0EE08E: db $BE, $2B, $1C, $B1, $27, $9E, $D0, $59 ; [me]rc[ha]n[di][se]\u23b5\n#_0EE096: db $97, $1C, $1A, $2E, $D0, $59, $E3, $59 ; [be]cau[se]\u23b5[you]\u23b5\n#_0EE09E: db $9F, $27, $51, $2D ; [do]n't\n#_0EE0A2: db $76 ; line 3\n#_0EE0A3: db $AD, $59, $93, $59, $1E, $26, $29, $2D ; [have]\u23b5[an]\u23b5empt\n#_0EE0AB: db $32, $59, $98, $2D, $2D, $25, $1E, $41 ; y\u23b5[bo]ttle.\n#_0EE0B3: db $7F ; end of message\n\n; =========================================================\n; You can't carry any more\n; now, but you may need\n; some later!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016E", + "code": "Message_016E:\n#_0EE0B4: db $E8, $59, $1C, $93, $51, $2D, $59, $1C ; [You]\u23b5c[an]'t\u23b5c\n#_0EE0BC: db $1A, $2B, $2B, $32, $59, $93, $32, $59 ; arry\u23b5[an]y\u23b5\n#_0EE0C4: db $26, $C8, $1E ; m[or]e\n#_0EE0C7: db $75 ; line 2\n#_0EE0C8: db $27, $28, $30, $42, $59, $1B, $2E, $2D ; now,\u23b5but\n#_0EE0D0: db $59, $E3, $59, $BD, $32, $59, $27, $1E ; \u23b5[you]\u23b5[ma]y\u23b5ne\n#_0EE0D8: db $1E, $1D ; ed\n#_0EE0DA: db $76 ; line 3\n#_0EE0DB: db $CF, $59, $BA, $D6, $3E ; [some]\u23b5[la][ter]!\n#_0EE0E0: db $7F ; end of message\n\n; =========================================================\n; I never imagined a boy like you\n; could give me so much trouble.\n; It's unbelievable that you\n; defeated my alterego, Agahnim\n; the Dark Wizard, twice!\n; But I will never give you the\n; Triforce. I will destroy you\n; and make my wish to conquer\n; both Light and Dark Worlds\n; come true without delay.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_016F", + "code": "Message_016F:\n#_0EE0E1: db $08, $59, $27, $A7, $A1, $22, $BD, $20 ; I\u23b5n[ev][er ]i[ma]g\n#_0EE0E9: db $B4, $A4, $1A, $59, $98, $32, $59, $25 ; [in][ed ]a\u23b5[bo]y\u23b5l\n#_0EE0F1: db $22, $24, $1E, $59, $E3 ; ike\u23b5[you]\n#_0EE0F6: db $75 ; line 2\n#_0EE0F7: db $1C, $28, $2E, $25, $1D, $59, $AA, $BE ; could\u23b5[give ][me]\n#_0EE0FF: db $59, $D2, $59, $BF, $1C, $21, $59, $DB ; \u23b5[so]\u23b5[mu]ch\u23b5[tr]\n#_0EE107: db $28, $2E, $95, $41 ; ou[ble].\n#_0EE10B: db $76 ; line 3\n#_0EE10C: db $08, $2D, $8B, $2E, $27, $97, $25, $22 ; It['s ]un[be]li\n#_0EE114: db $A7, $1A, $95, $59, $D7, $2D, $59, $E3 ; [ev]a[ble]\u23b5[tha]t\u23b5[you]\n#_0EE11C: db $7E ; wait for key\n#_0EE11D: db $73 ; scroll text\n#_0EE11E: db $1D, $1E, $1F, $1E, $94, $A4, $26, $32 ; defe[at][ed ]my\n#_0EE126: db $59, $1A, $25, $D6, $1E, $AC, $42, $59 ; \u23b5al[ter]e[go],\u23b5\n#_0EE12E: db $00, $20, $1A, $21, $27, $22, $26 ; Agahnim\n#_0EE135: db $73 ; scroll text\n#_0EE136: db $D8, $59, $03, $1A, $2B, $24, $59, $16 ; [the]\u23b5Dark\u23b5W\n#_0EE13E: db $22, $33, $1A, $2B, $1D, $42, $59, $2D ; izard,\u23b5t\n#_0EE146: db $E2, $1C, $1E, $3E ; [wi]ce!\n#_0EE14A: db $7E ; wait for key\n#_0EE14B: db $73 ; scroll text\n#_0EE14C: db $01, $2E, $2D, $59, $08, $59, $E2, $25 ; But\u23b5I\u23b5[wi]l\n#_0EE154: db $25, $59, $27, $A7, $A1, $AA, $E3, $59 ; l\u23b5n[ev][er ][give ][you]\u23b5\n#_0EE15C: db $D8 ; [the]\n#_0EE15D: db $73 ; scroll text\n#_0EE15E: db $13, $2B, $22, $A8, $1C, $1E, $41, $8A ; Tri[for]ce.[ ]\n#_0EE166: db $08, $59, $E2, $25, $25, $59, $9D, $DB ; I\u23b5[wi]ll\u23b5[des][tr]\n#_0EE16E: db $28, $32, $59, $E3 ; oy\u23b5[you]\n#_0EE172: db $73 ; scroll text\n#_0EE173: db $8C, $BD, $24, $1E, $59, $26, $32, $59 ; [and ][ma]ke\u23b5my\u23b5\n#_0EE17B: db $E2, $D1, $59, $DA, $59, $1C, $C7, $2A ; [wi][sh]\u23b5[to]\u23b5c[on]q\n#_0EE183: db $2E, $A6 ; u[er]\n#_0EE185: db $7E ; wait for key\n#_0EE186: db $73 ; scroll text\n#_0EE187: db $98, $2D, $21, $59, $0B, $B2, $8C, $03 ; [bo]th\u23b5L[ight ][and ]D\n#_0EE18F: db $1A, $2B, $24, $59, $16, $C8, $25, $1D ; ark\u23b5W[or]ld\n#_0EE197: db $2C ; s\n#_0EE198: db $73 ; scroll text\n#_0EE199: db $9B, $1E, $59, $DB, $2E, $1E, $59, $DE ; [com]e\u23b5[tr]ue\u23b5[with]\n#_0EE1A1: db $C5, $1D, $1E, $BA, $32, $41 ; [out ]de[la]y.\n#_0EE1A7: db $7F ; end of message\n\n; =========================================================\n; You are doing well, lad. But\n; can you break through this\n; secret technique of Darkness?\n; En Garde!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0170", + "code": "Message_0170:\n#_0EE1A8: db $E8, $59, $8D, $9F, $B3, $E0, $25, $25 ; [You]\u23b5[are ][do][ing ][we]ll\n#_0EE1B0: db $42, $59, $BA, $1D, $41, $8A, $01, $2E ; ,\u23b5[la]d.[ ]Bu\n#_0EE1B8: db $2D ; t\n#_0EE1B9: db $75 ; line 2\n#_0EE1BA: db $99, $E3, $59, $1B, $CE, $1A, $24, $59 ; [can ][you]\u23b5b[re]ak\u23b5\n#_0EE1C2: db $2D, $21, $2B, $28, $2E, $20, $21, $59 ; through\u23b5\n#_0EE1CA: db $D9, $2C ; [thi]s\n#_0EE1CC: db $76 ; line 3\n#_0EE1CD: db $D0, $1C, $CE, $2D, $59, $2D, $1E, $1C ; [se]c[re]t\u23b5tec\n#_0EE1D5: db $21, $27, $22, $2A, $2E, $1E, $59, $C6 ; hnique\u23b5[of]\n#_0EE1DD: db $59, $03, $1A, $2B, $24, $27, $1E, $2C ; \u23b5Darknes\n#_0EE1E5: db $2C, $3F ; s?\n#_0EE1E7: db $7E ; wait for key\n#_0EE1E8: db $73 ; scroll text\n#_0EE1E9: db $04, $27, $59, $06, $1A, $2B, $1D, $1E ; En\u23b5Garde\n#_0EE1F1: db $3E ; !\n#_0EE1F2: db $7F ; end of message\n\n; =========================================================\n; Hey kid, this is a secret hide-\n; out for a gang of thieves!\n; Don't enter without permission!\n; By the way, I heard that one\n; of our ex-members is staying\n; at the entrance to the Desert.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0171", + "code": "Message_0171:\n#_0EE1F3: db $07, $1E, $32, $59, $24, $22, $1D, $42 ; Hey\u23b5kid,\n#_0EE1FB: db $59, $D9, $2C, $59, $B5, $59, $1A, $59 ; \u23b5[thi]s\u23b5[is]\u23b5a\u23b5\n#_0EE203: db $D0, $1C, $CE, $2D, $59, $B0, $1D, $1E ; [se]c[re]t\u23b5[hi]de\n#_0EE20B: db $40 ; -\n#_0EE20C: db $75 ; line 2\n#_0EE20D: db $C5, $A8, $59, $1A, $59, $20, $93, $20 ; [out ][for]\u23b5a\u23b5g[an]g\n#_0EE215: db $59, $C6, $59, $D9, $A7, $1E, $2C, $3E ; \u23b5[of]\u23b5[thi][ev]es!\n#_0EE21D: db $76 ; line 3\n#_0EE21E: db $03, $C7, $51, $2D, $59, $A3, $A1, $DE ; D[on]'t\u23b5[ent][er ][with]\n#_0EE226: db $C5, $C9, $26, $B5, $2C, $22, $C7, $3E ; [out ][per]m[is]si[on]!\n#_0EE22E: db $7E ; wait for key\n#_0EE22F: db $73 ; scroll text\n#_0EE230: db $01, $32, $59, $D8, $59, $DF, $32, $42 ; By\u23b5[the]\u23b5[wa]y,\n#_0EE238: db $59, $08, $59, $21, $A2, $1D, $59, $D7 ; \u23b5I\u23b5h[ear]d\u23b5[tha]\n#_0EE240: db $2D, $59, $C7, $1E ; t\u23b5[on]e\n#_0EE244: db $73 ; scroll text\n#_0EE245: db $C6, $59, $28, $2E, $2B, $59, $1E, $31 ; [of]\u23b5our\u23b5ex\n#_0EE24D: db $40, $BE, $26, $97, $2B, $2C, $59, $B5 ; -[me]m[be]rs\u23b5[is]\n#_0EE255: db $59, $D3, $1A, $32, $B4, $20 ; \u23b5[st]ay[in]g\n#_0EE25B: db $73 ; scroll text\n#_0EE25C: db $91, $D8, $59, $A3, $2B, $93, $1C, $1E ; [at ][the]\u23b5[ent]r[an]ce\n#_0EE264: db $59, $DA, $59, $D8, $59, $03, $1E, $D0 ; \u23b5[to]\u23b5[the]\u23b5De[se]\n#_0EE26C: db $2B, $2D, $41 ; rt.\n#_0EE26F: db $7F ; end of message\n\n; =========================================================\n; Yo [LINK]! This house used\n; to be a hideout for a gang of\n; thieves.\n; What was their leader's name\u2026\n; Oh yeah, his name was Blind and\n; he hated bright light a lot.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0172", + "code": "Message_0172:\n#_0EE270: db $18, $28, $59, $6A, $3E, $8A, $E7, $2C ; Yo\u23b5[LINK]![ ][Thi]s\n#_0EE278: db $59, $21, $28, $2E, $D0, $59, $2E, $D0 ; \u23b5hou[se]\u23b5u[se]\n#_0EE280: db $1D ; d\n#_0EE281: db $75 ; line 2\n#_0EE282: db $DA, $59, $97, $59, $1A, $59, $B0, $1D ; [to]\u23b5[be]\u23b5a\u23b5[hi]d\n#_0EE28A: db $1E, $C5, $A8, $59, $1A, $59, $20, $93 ; e[out ][for]\u23b5a\u23b5g[an]\n#_0EE292: db $20, $59, $C6 ; g\u23b5[of]\n#_0EE295: db $76 ; line 3\n#_0EE296: db $D9, $A7, $1E, $2C, $41 ; [thi][ev]es.\n#_0EE29B: db $7E ; wait for key\n#_0EE29C: db $73 ; scroll text\n#_0EE29D: db $16, $B1, $2D, $59, $DF, $2C, $59, $D8 ; W[ha]t\u23b5[wa]s\u23b5[the]\n#_0EE2A5: db $22, $2B, $59, $25, $1E, $1A, $1D, $A6 ; ir\u23b5lead[er]\n#_0EE2AD: db $8B, $27, $1A, $BE, $43 ; ['s ]na[me]\u2026\n#_0EE2B2: db $73 ; scroll text\n#_0EE2B3: db $0E, $21, $59, $32, $1E, $1A, $21, $42 ; Oh\u23b5yeah,\n#_0EE2BB: db $59, $B0, $2C, $59, $27, $1A, $BE, $59 ; \u23b5[hi]s\u23b5na[me]\u23b5\n#_0EE2C3: db $DF, $2C, $59, $01, $25, $B4, $1D, $59 ; [wa]s\u23b5Bl[in]d\u23b5\n#_0EE2CB: db $90 ; [and]\n#_0EE2CC: db $73 ; scroll text\n#_0EE2CD: db $21, $1E, $59, $B1, $2D, $A4, $1B, $2B ; he\u23b5[ha]t[ed ]br\n#_0EE2D5: db $B2, $25, $B2, $1A, $59, $BB, $2D, $41 ; [ight ]l[ight ]a\u23b5[lo]t.\n#_0EE2DD: db $7F ; end of message\n\n; =========================================================\n; Welcome, [LINK]\u2026\n; I am the Essence Of The\n; Triforce.\n; \u2026 \u2026 \u2026\n;\n;\n;\n; The Triforce will grant the\n; wishes in the heart and mind of\n; the person who touches it.\n;\n;\n;\n; If a person with a good heart\n; touches it, it will make his good\n; wishes come true\u2026 If an evil-\n; hearted person touches it, it\n; grants his evil wishes.\n;\n;\n;\n; The stronger the wish, the\n; more powerful the Triforce's\n; expression of that wish.\n;\n;\n;\n; Ganon's wish was to conquer\n; the world. That wish changed\n; the Golden Land to the Dark\n; World.\n;\n;\n;\n; Ganon was building up his\n; power here so he could conquer\n; the Light World and make his\n; wish come completely true.\n;\n;\n;\n; But now, you have totally\n; destroyed Ganon. His Dark\n; World will vanish.\n;\n;\n;\n; The Triforce is waiting for a\n; new owner. Its Golden Power is\n; in your hands\u2026\n;\n;\n;\n; Now, touch it with a wish in\n; your heart.\n; \u2026 \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0173", + "code": "Message_0173:\n#_0EE2DE: db $7A, $02 ; set draw speed\n#_0EE2E0: db $6D, $00 ; set window position\n#_0EE2E2: db $6B, $02 ; set window border\n#_0EE2E4: db $16, $1E, $25, $9B, $1E, $42, $59, $6A ; Wel[com]e,\u23b5[LINK]\n#_0EE2EC: db $43 ; \u2026\n#_0EE2ED: db $75 ; line 2\n#_0EE2EE: db $08, $89, $1A, $26, $89, $D8, $89, $04 ; I[ ]am[ ][the][ ]E\n#_0EE2F6: db $2C, $D0, $27, $1C, $1E, $89, $0E, $1F ; s[se]nce[ ]Of\n#_0EE2FE: db $89, $E6 ; [ ][The]\n#_0EE300: db $76 ; line 3\n#_0EE301: db $13, $2B, $22, $A8, $1C, $1E, $41 ; Tri[for]ce.\n#_0EE308: db $7E ; wait for key\n#_0EE309: db $73 ; scroll text\n#_0EE30A: db $43, $89, $43, $89, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_0EE30F: db $7A, $01 ; set draw speed\n#_0EE311: db $7E ; wait for key\n#_0EE312: db $74 ; line 1\n#_0EE313: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE31B: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE31E: db $75 ; line 2\n#_0EE31F: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE327: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE32A: db $76 ; line 3\n#_0EE32B: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE333: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE336: db $7A, $02 ; set draw speed\n#_0EE338: db $74 ; line 1\n#_0EE339: db $E6, $59, $13, $2B, $22, $A8, $1C, $1E ; [The]\u23b5Tri[for]ce\n#_0EE341: db $59, $E2, $25, $25, $59, $20, $2B, $93 ; \u23b5[wi]ll\u23b5gr[an]\n#_0EE349: db $2D, $59, $D8 ; t\u23b5[the]\n#_0EE34C: db $75 ; line 2\n#_0EE34D: db $E2, $D1, $1E, $2C, $59, $B4, $59, $D8 ; [wi][sh]es\u23b5[in]\u23b5[the]\n#_0EE355: db $59, $21, $A2, $2D, $59, $8C, $26, $B4 ; \u23b5h[ear]t\u23b5[and ]m[in]\n#_0EE35D: db $1D, $59, $C6 ; d\u23b5[of]\n#_0EE360: db $76 ; line 3\n#_0EE361: db $D8, $59, $C9, $D2, $27, $59, $E1, $28 ; [the]\u23b5[per][so]n\u23b5[wh]o\n#_0EE369: db $59, $DA, $2E, $9A, $2C, $59, $B6, $41 ; \u23b5[to]u[che]s\u23b5[it].\n#_0EE371: db $7A, $01 ; set draw speed\n#_0EE373: db $7E ; wait for key\n#_0EE374: db $74 ; line 1\n#_0EE375: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE37D: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE380: db $75 ; line 2\n#_0EE381: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE389: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE38C: db $76 ; line 3\n#_0EE38D: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE395: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE398: db $7A, $02 ; set draw speed\n#_0EE39A: db $74 ; line 1\n#_0EE39B: db $08, $1F, $59, $1A, $59, $C9, $D2, $27 ; If\u23b5a\u23b5[per][so]n\n#_0EE3A3: db $59, $DE, $59, $1A, $59, $AC, $28, $1D ; \u23b5[with]\u23b5a\u23b5[go]od\n#_0EE3AB: db $59, $21, $A2, $2D ; \u23b5h[ear]t\n#_0EE3AF: db $75 ; line 2\n#_0EE3B0: db $DA, $2E, $9A, $2C, $59, $B6, $42, $59 ; [to]u[che]s\u23b5[it],\u23b5\n#_0EE3B8: db $B6, $59, $E2, $25, $25, $59, $BD, $24 ; [it]\u23b5[wi]ll\u23b5[ma]k\n#_0EE3C0: db $1E, $59, $B0, $2C, $59, $AC, $28, $1D ; e\u23b5[hi]s\u23b5[go]od\n#_0EE3C8: db $76 ; line 3\n#_0EE3C9: db $E2, $D1, $1E, $2C, $59, $9B, $1E, $59 ; [wi][sh]es\u23b5[com]e\u23b5\n#_0EE3D1: db $DB, $2E, $1E, $43, $8A, $08, $1F, $59 ; [tr]ue\u2026[ ]If\u23b5\n#_0EE3D9: db $93, $59, $A7, $22, $25, $40 ; [an]\u23b5[ev]il-\n#_0EE3DF: db $7E ; wait for key\n#_0EE3E0: db $73 ; scroll text\n#_0EE3E1: db $21, $A2, $2D, $A4, $C9, $D2, $27, $59 ; h[ear]t[ed ][per][so]n\u23b5\n#_0EE3E9: db $DA, $2E, $9A, $2C, $59, $B6, $42, $59 ; [to]u[che]s\u23b5[it],\u23b5\n#_0EE3F1: db $B6 ; [it]\n#_0EE3F2: db $73 ; scroll text\n#_0EE3F3: db $20, $2B, $93, $2D, $2C, $59, $B0, $2C ; gr[an]ts\u23b5[hi]s\n#_0EE3FB: db $59, $A7, $22, $25, $59, $E2, $D1, $1E ; \u23b5[ev]il\u23b5[wi][sh]e\n#_0EE403: db $2C, $41 ; s.\n#_0EE405: db $7A, $01 ; set draw speed\n#_0EE407: db $7E ; wait for key\n#_0EE408: db $74 ; line 1\n#_0EE409: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE411: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE414: db $75 ; line 2\n#_0EE415: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE41D: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE420: db $76 ; line 3\n#_0EE421: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE429: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE42C: db $7A, $02 ; set draw speed\n#_0EE42E: db $74 ; line 1\n#_0EE42F: db $E6, $59, $D3, $2B, $C7, $20, $A1, $D8 ; [The]\u23b5[st]r[on]g[er ][the]\n#_0EE437: db $59, $E2, $D1, $42, $59, $D8 ; \u23b5[wi][sh],\u23b5[the]\n#_0EE43D: db $75 ; line 2\n#_0EE43E: db $26, $C8, $1E, $59, $CB, $A6, $1F, $2E ; m[or]e\u23b5[pow][er]fu\n#_0EE446: db $25, $59, $D8, $59, $13, $2B, $22, $A8 ; l\u23b5[the]\u23b5Tri[for]\n#_0EE44E: db $1C, $1E, $51, $2C ; ce's\n#_0EE452: db $76 ; line 3\n#_0EE453: db $1E, $31, $29, $CE, $2C, $2C, $22, $C7 ; exp[re]ssi[on]\n#_0EE45B: db $59, $C6, $59, $D7, $2D, $59, $E2, $D1 ; \u23b5[of]\u23b5[tha]t\u23b5[wi][sh]\n#_0EE463: db $41 ; .\n#_0EE464: db $7A, $01 ; set draw speed\n#_0EE466: db $7E ; wait for key\n#_0EE467: db $74 ; line 1\n#_0EE468: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE470: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE473: db $75 ; line 2\n#_0EE474: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE47C: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE47F: db $76 ; line 3\n#_0EE480: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE488: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE48B: db $7A, $02 ; set draw speed\n#_0EE48D: db $74 ; line 1\n#_0EE48E: db $06, $93, $C7, $8B, $E2, $D1, $59, $DF ; G[an][on]['s ][wi][sh]\u23b5[wa]\n#_0EE496: db $2C, $59, $DA, $59, $1C, $C7, $2A, $2E ; s\u23b5[to]\u23b5c[on]qu\n#_0EE49E: db $A6 ; [er]\n#_0EE49F: db $75 ; line 2\n#_0EE4A0: db $D8, $59, $30, $C8, $25, $1D, $41, $8A ; [the]\u23b5w[or]ld.[ ]\n#_0EE4A8: db $E5, $2D, $59, $E2, $D1, $59, $1C, $B1 ; [Tha]t\u23b5[wi][sh]\u23b5c[ha]\n#_0EE4B0: db $27, $20, $1E, $1D ; nged\n#_0EE4B4: db $76 ; line 3\n#_0EE4B5: db $D8, $59, $06, $28, $25, $1D, $A0, $0B ; [the]\u23b5Gold[en ]L\n#_0EE4BD: db $8C, $DA, $59, $D8, $59, $03, $1A, $2B ; [and ][to]\u23b5[the]\u23b5Dar\n#_0EE4C5: db $24 ; k\n#_0EE4C6: db $7E ; wait for key\n#_0EE4C7: db $73 ; scroll text\n#_0EE4C8: db $16, $C8, $25, $1D, $41 ; W[or]ld.\n#_0EE4CD: db $7A, $01 ; set draw speed\n#_0EE4CF: db $7E ; wait for key\n#_0EE4D0: db $74 ; line 1\n#_0EE4D1: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE4D9: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE4DC: db $75 ; line 2\n#_0EE4DD: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE4E5: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE4E8: db $76 ; line 3\n#_0EE4E9: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE4F1: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE4F4: db $7A, $02 ; set draw speed\n#_0EE4F6: db $74 ; line 1\n#_0EE4F7: db $06, $93, $C7, $59, $DF, $2C, $59, $1B ; G[an][on]\u23b5[wa]s\u23b5b\n#_0EE4FF: db $2E, $22, $25, $9E, $27, $20, $59, $DC ; uil[di]ng\u23b5[up]\n#_0EE507: db $59, $B0, $2C ; \u23b5[hi]s\n#_0EE50A: db $75 ; line 2\n#_0EE50B: db $CB, $A1, $AF, $1E, $59, $D2, $59, $21 ; [pow][er ][her]e\u23b5[so]\u23b5h\n#_0EE513: db $1E, $59, $1C, $28, $2E, $25, $1D, $59 ; e\u23b5could\u23b5\n#_0EE51B: db $1C, $C7, $2A, $2E, $A6 ; c[on]qu[er]\n#_0EE520: db $76 ; line 3\n#_0EE521: db $D8, $59, $0B, $B2, $16, $C8, $25, $1D ; [the]\u23b5L[ight ]W[or]ld\n#_0EE529: db $59, $8C, $BD, $24, $1E, $59, $B0, $2C ; \u23b5[and ][ma]ke\u23b5[hi]s\n#_0EE531: db $7E ; wait for key\n#_0EE532: db $73 ; scroll text\n#_0EE533: db $E2, $D1, $59, $9B, $1E, $59, $9B, $CA ; [wi][sh]\u23b5[com]e\u23b5[com][ple]\n#_0EE53B: db $2D, $1E, $B9, $DB, $2E, $1E, $41 ; te[ly ][tr]ue.\n#_0EE542: db $7A, $01 ; set draw speed\n#_0EE544: db $7E ; wait for key\n#_0EE545: db $74 ; line 1\n#_0EE546: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE54E: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE551: db $75 ; line 2\n#_0EE552: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE55A: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE55D: db $76 ; line 3\n#_0EE55E: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE566: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE569: db $7A, $02 ; set draw speed\n#_0EE56B: db $74 ; line 1\n#_0EE56C: db $01, $2E, $2D, $59, $27, $28, $30, $42 ; But\u23b5now,\n#_0EE574: db $59, $E3, $59, $AD, $59, $DA, $2D, $1A ; \u23b5[you]\u23b5[have]\u23b5[to]ta\n#_0EE57C: db $25, $25, $32 ; lly\n#_0EE57F: db $75 ; line 2\n#_0EE580: db $9D, $DB, $28, $32, $A4, $06, $93, $C7 ; [des][tr]oy[ed ]G[an][on]\n#_0EE588: db $41, $8A, $07, $B5, $59, $03, $1A, $2B ; .[ ]H[is]\u23b5Dar\n#_0EE590: db $24 ; k\n#_0EE591: db $76 ; line 3\n#_0EE592: db $16, $C8, $25, $1D, $59, $E2, $25, $25 ; W[or]ld\u23b5[wi]ll\n#_0EE59A: db $59, $2F, $93, $B5, $21, $41 ; \u23b5v[an][is]h.\n#_0EE5A0: db $7A, $01 ; set draw speed\n#_0EE5A2: db $7E ; wait for key\n#_0EE5A3: db $74 ; line 1\n#_0EE5A4: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE5AC: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE5AF: db $75 ; line 2\n#_0EE5B0: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE5B8: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE5BB: db $76 ; line 3\n#_0EE5BC: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE5C4: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE5C7: db $7A, $02 ; set draw speed\n#_0EE5C9: db $74 ; line 1\n#_0EE5CA: db $E6, $59, $13, $2B, $22, $A8, $1C, $1E ; [The]\u23b5Tri[for]ce\n#_0EE5D2: db $59, $B5, $59, $DF, $B6, $B3, $A8, $59 ; \u23b5[is]\u23b5[wa][it][ing ][for]\u23b5\n#_0EE5DA: db $1A ; a\n#_0EE5DB: db $75 ; line 2\n#_0EE5DC: db $27, $1E, $30, $59, $28, $30, $27, $A6 ; new\u23b5own[er]\n#_0EE5E4: db $41, $8A, $08, $2D, $2C, $59, $06, $28 ; .[ ]Its\u23b5Go\n#_0EE5EC: db $25, $1D, $A0, $0F, $28, $E0, $2B, $59 ; ld[en ]Po[we]r\u23b5\n#_0EE5F4: db $B5 ; [is]\n#_0EE5F5: db $76 ; line 3\n#_0EE5F6: db $B4, $59, $E3, $2B, $59, $B1, $27, $1D ; [in]\u23b5[you]r\u23b5[ha]nd\n#_0EE5FE: db $2C, $43 ; s\u2026\n#_0EE600: db $7A, $01 ; set draw speed\n#_0EE602: db $7E ; wait for key\n#_0EE603: db $74 ; line 1\n#_0EE604: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE60C: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE60F: db $75 ; line 2\n#_0EE610: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE618: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE61B: db $76 ; line 3\n#_0EE61C: db $88, $88, $88, $88, $88, $88, $88, $88 ; [ ][ ][ ][ ][ ][ ][ ][ ]\n#_0EE624: db $88, $88, $8A ; [ ][ ][ ]\n#_0EE627: db $7A, $02 ; set draw speed\n#_0EE629: db $74 ; line 1\n#_0EE62A: db $0D, $28, $30, $42, $59, $DA, $2E, $1C ; Now,\u23b5[to]uc\n#_0EE632: db $21, $59, $B6, $59, $DE, $59, $1A, $59 ; h\u23b5[it]\u23b5[with]\u23b5a\u23b5\n#_0EE63A: db $E2, $D1, $59, $B4 ; [wi][sh]\u23b5[in]\n#_0EE63E: db $75 ; line 2\n#_0EE63F: db $E3, $2B, $59, $21, $A2, $2D, $41 ; [you]r\u23b5h[ear]t.\n#_0EE646: db $76 ; line 3\n#_0EE647: db $43, $8A, $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026[ ]\u2026\n#_0EE64E: db $7F ; end of message\n\n; =========================================================\n; All right! Take it, thief!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0174", + "code": "Message_0174:\n#_0EE64F: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_0EE657: db $2D, $3E, $59, $13, $1A, $24, $1E, $59 ; t!\u23b5Take\u23b5\n#_0EE65F: db $B6, $42, $59, $D9, $1E, $1F, $3E ; [it],\u23b5[thi]ef!\n#_0EE666: db $7F ; end of message\n\n; =========================================================\n; Whoa\u2026 I saw her.\n; A very nice young lady at the\n; Waterfall Of Wishing in the\n; hills where the river\n; begins\u2026\n; [LINK], you should meet her\n; at least once. I'm sure you will\n; like her.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0175", + "code": "Message_0175:\n#_0EE667: db $16, $21, $28, $1A, $43, $8A, $08, $59 ; Whoa\u2026[ ]I\u23b5\n#_0EE66F: db $2C, $1A, $30, $59, $AF, $41 ; saw\u23b5[her].\n#_0EE675: db $75 ; line 2\n#_0EE676: db $00, $59, $DD, $32, $59, $27, $22, $1C ; A\u23b5[ver]y\u23b5nic\n#_0EE67E: db $1E, $59, $E3, $27, $20, $59, $BA, $1D ; e\u23b5[you]ng\u23b5[la]d\n#_0EE686: db $32, $59, $91, $D8 ; y\u23b5[at ][the]\n#_0EE68A: db $76 ; line 3\n#_0EE68B: db $16, $94, $A6, $1F, $8E, $0E, $1F, $59 ; W[at][er]f[all ]Of\u23b5\n#_0EE693: db $16, $B5, $B0, $27, $20, $59, $B4, $59 ; W[is][hi]ng\u23b5[in]\u23b5\n#_0EE69B: db $D8 ; [the]\n#_0EE69C: db $7E ; wait for key\n#_0EE69D: db $73 ; scroll text\n#_0EE69E: db $B0, $25, $25, $2C, $59, $E1, $A6, $1E ; [hi]lls\u23b5[wh][er]e\n#_0EE6A6: db $59, $D8, $59, $2B, $22, $DD ; \u23b5[the]\u23b5ri[ver]\n#_0EE6AC: db $73 ; scroll text\n#_0EE6AD: db $97, $20, $B4, $2C, $43 ; [be]g[in]s\u2026\n#_0EE6B2: db $73 ; scroll text\n#_0EE6B3: db $6A, $42, $59, $E3, $59, $D1, $28, $2E ; [LINK],\u23b5[you]\u23b5[sh]ou\n#_0EE6BB: db $25, $1D, $59, $BE, $1E, $2D, $59, $AF ; ld\u23b5[me]et\u23b5[her]\n#_0EE6C3: db $7E ; wait for key\n#_0EE6C4: db $73 ; scroll text\n#_0EE6C5: db $91, $25, $1E, $92, $59, $C7, $1C, $1E ; [at ]le[ast]\u23b5[on]ce\n#_0EE6CD: db $41, $8A, $08, $51, $26, $59, $2C, $2E ; .[ ]I'm\u23b5su\n#_0EE6D5: db $CD, $E3, $59, $E2, $25, $25 ; [re ][you]\u23b5[wi]ll\n#_0EE6DB: db $73 ; scroll text\n#_0EE6DC: db $25, $22, $24, $1E, $59, $AF, $41 ; like\u23b5[her].\n#_0EE6E3: db $7F ; end of message\n\n; =========================================================\n; Take some Rupees, but don't\n; tell anyone I gave them to you.\n; Keep it between us, OK?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0176", + "code": "Message_0176:\n#_0EE6E4: db $13, $1A, $24, $1E, $59, $CF, $59, $11 ; Take\u23b5[some]\u23b5R\n#_0EE6EC: db $DC, $1E, $1E, $2C, $42, $59, $1B, $2E ; [up]ees,\u23b5bu\n#_0EE6F4: db $2D, $59, $9F, $27, $51, $2D ; t\u23b5[do]n't\n#_0EE6FA: db $75 ; line 2\n#_0EE6FB: db $2D, $1E, $25, $25, $59, $93, $32, $C7 ; tell\u23b5[an]y[on]\n#_0EE703: db $1E, $59, $08, $59, $20, $1A, $2F, $1E ; e\u23b5I\u23b5gave\n#_0EE70B: db $59, $D8, $26, $59, $DA, $59, $E3, $41 ; \u23b5[the]m\u23b5[to]\u23b5[you].\n#_0EE713: db $76 ; line 3\n#_0EE714: db $0A, $1E, $1E, $29, $59, $B6, $59, $97 ; Keep\u23b5[it]\u23b5[be]\n#_0EE71C: db $2D, $E0, $A0, $2E, $2C, $42, $59, $0E ; t[we][en ]us,\u23b5O\n#_0EE724: db $0A, $3F ; K?\n#_0EE726: db $7F ; end of message\n\n; =========================================================\n; Check out the cave east of\n; Lake Hylia. Strange and\n; wonderful things live in it\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0177", + "code": "Message_0177:\n#_0EE727: db $02, $21, $1E, $9C, $59, $C5, $D8, $59 ; Che[ck]\u23b5[out ][the]\u23b5\n#_0EE72F: db $1C, $1A, $2F, $1E, $59, $1E, $92, $59 ; cave\u23b5e[ast]\u23b5\n#_0EE737: db $C6 ; [of]\n#_0EE738: db $75 ; line 2\n#_0EE739: db $0B, $1A, $24, $1E, $59, $07, $32, $25 ; Lake\u23b5Hyl\n#_0EE741: db $22, $1A, $41, $8A, $12, $DB, $93, $20 ; ia.[ ]S[tr][an]g\n#_0EE749: db $1E, $59, $90 ; e\u23b5[and]\n#_0EE74C: db $76 ; line 3\n#_0EE74D: db $30, $C7, $1D, $A6, $1F, $2E, $25, $59 ; w[on]d[er]ful\u23b5\n#_0EE755: db $D5, $20, $2C, $59, $25, $22, $2F, $1E ; [thin]gs\u23b5live\n#_0EE75D: db $59, $B4, $59, $B6, $43 ; \u23b5[in]\u23b5[it]\u2026\n#_0EE762: db $7F ; end of message\n\n; =========================================================\n; You can earn a lot of Rupees\n; by defeating enemies. It's\n; the secret of my success\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0178", + "code": "Message_0178:\n#_0EE763: db $E8, $59, $99, $A2, $27, $59, $1A, $59 ; [You]\u23b5[can ][ear]n\u23b5a\u23b5\n#_0EE76B: db $BB, $2D, $59, $C6, $59, $11, $DC, $1E ; [lo]t\u23b5[of]\u23b5R[up]e\n#_0EE773: db $1E, $2C ; es\n#_0EE775: db $75 ; line 2\n#_0EE776: db $1B, $32, $59, $1D, $1E, $1F, $1E, $94 ; by\u23b5defe[at]\n#_0EE77E: db $B3, $A5, $1E, $26, $22, $1E, $2C, $41 ; [ing ][en]emies.\n#_0EE786: db $8A, $08, $2D, $51, $2C ; [ ]It's\n#_0EE78B: db $76 ; line 3\n#_0EE78C: db $D8, $59, $D0, $1C, $CE, $2D, $59, $C6 ; [the]\u23b5[se]c[re]t\u23b5[of]\n#_0EE794: db $59, $26, $32, $59, $2C, $2E, $1C, $1C ; \u23b5my\u23b5succ\n#_0EE79C: db $1E, $2C, $2C, $43 ; ess\u2026\n#_0EE7A0: db $7F ; end of message\n\n; =========================================================\n; [LINK], did you know that if\n; you destroy frozen enemies\n; with the Hammer, you will often\n; get a Magic Decanter?\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0179", + "code": "Message_0179:\n#_0EE7A1: db $6A, $42, $59, $9E, $1D, $59, $E3, $59 ; [LINK],\u23b5[di]d\u23b5[you]\u23b5\n#_0EE7A9: db $B8, $59, $D7, $2D, $59, $22, $1F ; [know]\u23b5[tha]t\u23b5if\n#_0EE7B0: db $75 ; line 2\n#_0EE7B1: db $E3, $59, $9D, $DB, $28, $32, $59, $A9 ; [you]\u23b5[des][tr]oy\u23b5[fro]\n#_0EE7B9: db $33, $A0, $A5, $1E, $26, $22, $1E, $2C ; z[en ][en]emies\n#_0EE7C1: db $76 ; line 3\n#_0EE7C2: db $DE, $59, $D8, $59, $07, $1A, $26, $BE ; [with]\u23b5[the]\u23b5Ham[me]\n#_0EE7CA: db $2B, $42, $59, $E3, $59, $E2, $25, $25 ; r,\u23b5[you]\u23b5[wi]ll\n#_0EE7D2: db $59, $C6, $2D, $A5 ; \u23b5[of]t[en]\n#_0EE7D6: db $7E ; wait for key\n#_0EE7D7: db $73 ; scroll text\n#_0EE7D8: db $AB, $59, $1A, $59, $0C, $1A, $20, $22 ; [get]\u23b5a\u23b5Magi\n#_0EE7E0: db $1C, $59, $03, $1E, $1C, $93, $D6, $3F ; c\u23b5Dec[an][ter]?\n#_0EE7E8: db $7F ; end of message\n\n; =========================================================\n; Tra la la, look for\n; Sahasrahla.\n; \u2026 \u2026 \u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017A", + "code": "Message_017A:\n#_0EE7E9: db $13, $2B, $1A, $59, $BA, $59, $BA, $42 ; Tra\u23b5[la]\u23b5[la],\n#_0EE7F1: db $59, $BB, $28, $24, $59, $A8 ; \u23b5[lo]ok\u23b5[for]\n#_0EE7F7: db $75 ; line 2\n#_0EE7F8: db $12, $1A, $AE, $2B, $1A, $21, $BA, $41 ; Sa[has]rah[la].\n#_0EE800: db $76 ; line 3\n#_0EE801: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_0EE806: db $7F ; end of message\n\n; =========================================================\n; Oh yah, you found Sahasrahla!\n; \u2026 \u2026 \u2026\n; Good job la la!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017B", + "code": "Message_017B:\n#_0EE807: db $0E, $21, $59, $32, $1A, $21, $42, $59 ; Oh\u23b5yah,\u23b5\n#_0EE80F: db $E3, $59, $1F, $C4, $59, $12, $1A, $AE ; [you]\u23b5f[ound]\u23b5Sa[has]\n#_0EE817: db $2B, $1A, $21, $BA, $3E ; rah[la]!\n#_0EE81C: db $75 ; line 2\n#_0EE81D: db $43, $8A, $43, $8A, $43 ; \u2026[ ]\u2026[ ]\u2026\n#_0EE822: db $76 ; line 3\n#_0EE823: db $06, $28, $28, $1D, $59, $23, $28, $1B ; Good\u23b5job\n#_0EE82B: db $59, $BA, $59, $BA, $3E ; \u23b5[la]\u23b5[la]!\n#_0EE830: db $7F ; end of message\n\n; =========================================================\n; I'm sorry, but you don't\n; seem to have enough Rupees\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017C", + "code": "Message_017C:\n#_0EE831: db $08, $51, $26, $59, $D2, $2B, $2B, $32 ; I'm\u23b5[so]rry\n#_0EE839: db $42, $59, $1B, $2E, $2D, $59, $E3, $59 ; ,\u23b5but\u23b5[you]\u23b5\n#_0EE841: db $9F, $27, $51, $2D ; [do]n't\n#_0EE845: db $75 ; line 2\n#_0EE846: db $D0, $1E, $26, $59, $DA, $59, $AD, $59 ; [se]em\u23b5[to]\u23b5[have]\u23b5\n#_0EE84E: db $A5, $28, $2E, $20, $21, $59, $11, $DC ; [en]ough\u23b5R[up]\n#_0EE856: db $1E, $1E, $2C, $43 ; ees\u2026\n#_0EE85A: db $7F ; end of message\n\n; =========================================================\n; Cluck cluck\u2026 What?!\n; You turned me into a human.\n; I can even speak!\n; Aha, it must be you who is\n; always teasing my friends.\n; The Weathercock is always\n; watching you harass them.\n; Well, this human shape is\n; uncomfortable for me.\n; Ahhh, I want to be a chicken\n; again! Cluck cluck\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017D", + "code": "Message_017D:\n#_0EE85B: db $02, $25, $2E, $9C, $59, $1C, $25, $2E ; Clu[ck]\u23b5clu\n#_0EE863: db $9C, $43, $8A, $16, $B1, $2D, $3F, $3E ; [ck]\u2026[ ]W[ha]t?!\n#_0EE86B: db $75 ; line 2\n#_0EE86C: db $E8, $59, $2D, $2E, $2B, $27, $A4, $BE ; [You]\u23b5turn[ed ][me]\n#_0EE874: db $59, $B4, $DA, $59, $1A, $59, $21, $2E ; \u23b5[in][to]\u23b5a\u23b5hu\n#_0EE87C: db $BC, $41 ; [man].\n#_0EE87E: db $76 ; line 3\n#_0EE87F: db $08, $59, $99, $A7, $A0, $2C, $29, $1E ; I\u23b5[can ][ev][en ]spe\n#_0EE887: db $1A, $24, $3E ; ak!\n#_0EE88A: db $7E ; wait for key\n#_0EE88B: db $73 ; scroll text\n#_0EE88C: db $00, $B1, $42, $59, $B6, $59, $BF, $D3 ; A[ha],\u23b5[it]\u23b5[mu][st]\n#_0EE894: db $59, $97, $59, $E3, $59, $E1, $28, $59 ; \u23b5[be]\u23b5[you]\u23b5[wh]o\u23b5\n#_0EE89C: db $B5 ; [is]\n#_0EE89D: db $73 ; scroll text\n#_0EE89E: db $1A, $25, $DF, $32, $2C, $59, $2D, $1E ; al[wa]ys\u23b5te\n#_0EE8A6: db $1A, $2C, $B3, $26, $32, $59, $1F, $2B ; as[ing ]my\u23b5fr\n#_0EE8AE: db $22, $A5, $1D, $2C, $41 ; i[en]ds.\n#_0EE8B3: db $73 ; scroll text\n#_0EE8B4: db $E6, $59, $16, $1E, $94, $AF, $1C, $28 ; [The]\u23b5We[at][her]co\n#_0EE8BC: db $9C, $59, $B5, $59, $1A, $25, $DF, $32 ; [ck]\u23b5[is]\u23b5al[wa]y\n#_0EE8C4: db $2C ; s\n#_0EE8C5: db $7E ; wait for key\n#_0EE8C6: db $73 ; scroll text\n#_0EE8C7: db $DF, $2D, $1C, $B0, $27, $20, $59, $E3 ; [wa]tc[hi]ng\u23b5[you]\n#_0EE8CF: db $59, $B1, $2B, $1A, $2C, $2C, $59, $D8 ; \u23b5[ha]rass\u23b5[the]\n#_0EE8D7: db $26, $41 ; m.\n#_0EE8D9: db $73 ; scroll text\n#_0EE8DA: db $16, $1E, $25, $25, $42, $59, $D9, $2C ; Well,\u23b5[thi]s\n#_0EE8E2: db $59, $21, $2E, $BC, $59, $D1, $1A, $29 ; \u23b5hu[man]\u23b5[sh]ap\n#_0EE8EA: db $1E, $59, $B5 ; e\u23b5[is]\n#_0EE8ED: db $73 ; scroll text\n#_0EE8EE: db $2E, $27, $9B, $A8, $2D, $1A, $95, $59 ; un[com][for]ta[ble]\u23b5\n#_0EE8F6: db $A8, $59, $BE, $41 ; [for]\u23b5[me].\n#_0EE8FA: db $7E ; wait for key\n#_0EE8FB: db $73 ; scroll text\n#_0EE8FC: db $00, $21, $21, $21, $42, $59, $08, $59 ; Ahhh,\u23b5I\u23b5\n#_0EE904: db $DF, $27, $2D, $59, $DA, $59, $97, $59 ; [wa]nt\u23b5[to]\u23b5[be]\u23b5\n#_0EE90C: db $1A, $59, $1C, $B0, $9C, $A5 ; a\u23b5c[hi][ck][en]\n#_0EE912: db $73 ; scroll text\n#_0EE913: db $1A, $20, $8F, $3E, $8A, $02, $25, $2E ; ag[ain]![ ]Clu\n#_0EE91B: db $9C, $59, $1C, $25, $2E, $9C, $43 ; [ck]\u23b5clu[ck]\u2026\n#_0EE922: db $7F ; end of message\n\n; =========================================================\n; Pay me 20 Rupees and I'll let\n; you open one chest. You can\n; keep what is inside.\n; What will you do?\n; > Open A Chest\n; Escape\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017E", + "code": "Message_017E:\n#_0EE923: db $0F, $1A, $32, $59, $BE, $59, $36, $34 ; Pay\u23b5[me]\u23b520\n#_0EE92B: db $59, $11, $DC, $1E, $1E, $2C, $59, $8C ; \u23b5R[up]ees\u23b5[and ]\n#_0EE933: db $08, $51, $25, $25, $59, $25, $1E, $2D ; I'll\u23b5let\n#_0EE93B: db $75 ; line 2\n#_0EE93C: db $E3, $59, $C3, $59, $C7, $1E, $59, $9A ; [you]\u23b5[open]\u23b5[on]e\u23b5[che]\n#_0EE944: db $D3, $41, $8A, $E8, $59, $1C, $93 ; [st].[ ][You]\u23b5c[an]\n#_0EE94B: db $76 ; line 3\n#_0EE94C: db $24, $1E, $1E, $29, $59, $E1, $91, $B5 ; keep\u23b5[wh][at ][is]\n#_0EE954: db $59, $B4, $2C, $22, $1D, $1E, $41 ; \u23b5[in]side.\n#_0EE95B: db $7E ; wait for key\n#_0EE95C: db $73 ; scroll text\n#_0EE95D: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_0EE965: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_0EE969: db $73 ; scroll text\n#_0EE96A: db $88, $44, $8A, $0E, $29, $A0, $00, $59 ; [ ]>[ ]Op[en ]A\u23b5\n#_0EE972: db $02, $21, $1E, $D3 ; Che[st]\n#_0EE976: db $73 ; scroll text\n#_0EE977: db $88, $88, $04, $2C, $1C, $1A, $29, $1E ; [ ][ ]Escape\n#_0EE97F: db $68 ; choose 2 indented\n#_0EE980: db $7F ; end of message\n\n; =========================================================\n; All right! Open the chest you\n; like!\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_017F", + "code": "Message_017F:\n#_0EE981: db $00, $25, $25, $59, $2B, $22, $20, $21 ; All\u23b5righ\n#_0EE989: db $2D, $3E, $8A, $0E, $29, $A0, $D8, $59 ; t![ ]Op[en ][the]\u23b5\n#_0EE991: db $9A, $D3, $59, $E3 ; [che][st]\u23b5[you]\n#_0EE995: db $75 ; line 2\n#_0EE996: db $25, $22, $24, $1E, $3E ; like!\n#_0EE99B: db $7F ; end of message\n\n; =========================================================\n; Oh, I see\u2026 Too bad.\n; Drop by again after collecting\n; Rupees.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0180", + "code": "Message_0180:\n#_0EE99C: db $0E, $21, $42, $59, $08, $59, $D0, $1E ; Oh,\u23b5I\u23b5[se]e\n#_0EE9A4: db $43, $8A, $13, $28, $28, $59, $96, $1D ; \u2026[ ]Too\u23b5[ba]d\n#_0EE9AC: db $41 ; .\n#_0EE9AD: db $75 ; line 2\n#_0EE9AE: db $03, $2B, $28, $29, $59, $1B, $32, $59 ; Drop\u23b5by\u23b5\n#_0EE9B6: db $1A, $20, $8F, $59, $1A, $1F, $D4, $1C ; ag[ain]\u23b5af[ter ]c\n#_0EE9BE: db $28, $25, $25, $1E, $1C, $2D, $B4, $20 ; ollect[in]g\n#_0EE9C6: db $76 ; line 3\n#_0EE9C7: db $11, $DC, $1E, $1E, $2C, $41 ; R[up]ees.\n#_0EE9CD: db $7F ; end of message\n\n; =========================================================\n; For 100 Rupees, I'll let you\n; open one chest and keep the\n; treasure that is inside.\n; What will you do?\n; > Open A Chest\n; Escape\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0181", + "code": "Message_0181:\n#_0EE9CE: db $05, $C8, $59, $35, $34, $34, $59, $11 ; F[or]\u23b5100\u23b5R\n#_0EE9D6: db $DC, $1E, $1E, $2C, $42, $59, $08, $51 ; [up]ees,\u23b5I'\n#_0EE9DE: db $25, $25, $59, $25, $1E, $2D, $59, $E3 ; ll\u23b5let\u23b5[you]\n#_0EE9E6: db $75 ; line 2\n#_0EE9E7: db $C3, $59, $C7, $1E, $59, $9A, $D3, $59 ; [open]\u23b5[on]e\u23b5[che][st]\u23b5\n#_0EE9EF: db $8C, $24, $1E, $1E, $29, $59, $D8 ; [and ]keep\u23b5[the]\n#_0EE9F6: db $76 ; line 3\n#_0EE9F7: db $DB, $1E, $1A, $2C, $2E, $CD, $D7, $2D ; [tr]easu[re ][tha]t\n#_0EE9FF: db $59, $B5, $59, $B4, $2C, $22, $1D, $1E ; \u23b5[is]\u23b5[in]side\n#_0EEA07: db $41 ; .\n#_0EEA08: db $7E ; wait for key\n#_0EEA09: db $73 ; scroll text\n#_0EEA0A: db $16, $B1, $2D, $59, $E2, $25, $25, $59 ; W[ha]t\u23b5[wi]ll\u23b5\n#_0EEA12: db $E3, $59, $9F, $3F ; [you]\u23b5[do]?\n#_0EEA16: db $73 ; scroll text\n#_0EEA17: db $88, $44, $8A, $0E, $29, $A0, $00, $59 ; [ ]>[ ]Op[en ]A\u23b5\n#_0EEA1F: db $02, $21, $1E, $D3 ; Che[st]\n#_0EEA23: db $73 ; scroll text\n#_0EEA24: db $88, $88, $04, $2C, $1C, $1A, $29, $1E ; [ ][ ]Escape\n#_0EEA2C: db $68 ; choose 2 indented\n#_0EEA2D: db $7F ; end of message\n\n; =========================================================\n; Hi, [LINK]. Sorry about my\n; yard. It's a little over\n; grown. Thanks for visiting.\n; I'm glad to have company to\n; talk to. I will tell you an\n; interesting story.\n; There is a lake swimming with\n; Zoras at the source of the\n; river, but it is hard to find.\n; The treasure of Zora can turn\n; people into fish. Heh heh heh.\n; I'd love to see that.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0182", + "code": "Message_0182:\n#_0EEA2E: db $07, $22, $42, $59, $6A, $41, $8A, $12 ; Hi,\u23b5[LINK].[ ]S\n#_0EEA36: db $C8, $2B, $32, $59, $1A, $98, $2E, $2D ; [or]ry\u23b5a[bo]ut\n#_0EEA3E: db $59, $26, $32 ; \u23b5my\n#_0EEA41: db $75 ; line 2\n#_0EEA42: db $32, $1A, $2B, $1D, $41, $8A, $08, $2D ; yard.[ ]It\n#_0EEA4A: db $8B, $1A, $59, $25, $B6, $2D, $25, $1E ; ['s ]a\u23b5l[it]tle\n#_0EEA52: db $59, $28, $DD ; \u23b5o[ver]\n#_0EEA55: db $76 ; line 3\n#_0EEA56: db $20, $2B, $28, $30, $27, $41, $8A, $E5 ; grown.[ ][Tha]\n#_0EEA5E: db $27, $24, $2C, $59, $A8, $59, $2F, $B5 ; nks\u23b5[for]\u23b5v[is]\n#_0EEA66: db $B6, $B4, $20, $41 ; [it][in]g.\n#_0EEA6A: db $7E ; wait for key\n#_0EEA6B: db $73 ; scroll text\n#_0EEA6C: db $08, $51, $26, $59, $20, $BA, $1D, $59 ; I'm\u23b5g[la]d\u23b5\n#_0EEA74: db $DA, $59, $AD, $59, $9B, $29, $93, $32 ; [to]\u23b5[have]\u23b5[com]p[an]y\n#_0EEA7C: db $59, $DA ; \u23b5[to]\n#_0EEA7E: db $73 ; scroll text\n#_0EEA7F: db $2D, $1A, $25, $24, $59, $DA, $41, $8A ; talk\u23b5[to].[ ]\n#_0EEA87: db $08, $59, $E2, $25, $25, $59, $2D, $1E ; I\u23b5[wi]ll\u23b5te\n#_0EEA8F: db $25, $25, $59, $E3, $59, $93 ; ll\u23b5[you]\u23b5[an]\n#_0EEA95: db $73 ; scroll text\n#_0EEA96: db $B4, $D6, $1E, $D3, $B3, $D3, $C8, $32 ; [in][ter]e[st][ing ][st][or]y\n#_0EEA9E: db $41 ; .\n#_0EEA9F: db $7E ; wait for key\n#_0EEAA0: db $73 ; scroll text\n#_0EEAA1: db $E6, $CD, $B5, $59, $1A, $59, $BA, $24 ; [The][re ][is]\u23b5a\u23b5[la]k\n#_0EEAA9: db $1E, $59, $2C, $E2, $26, $26, $B3, $DE ; e\u23b5s[wi]mm[ing ][with]\n#_0EEAB1: db $73 ; scroll text\n#_0EEAB2: db $19, $C8, $1A, $2C, $59, $91, $D8, $59 ; Z[or]as\u23b5[at ][the]\u23b5\n#_0EEABA: db $D2, $2E, $2B, $1C, $1E, $59, $C6, $59 ; [so]urce\u23b5[of]\u23b5\n#_0EEAC2: db $D8 ; [the]\n#_0EEAC3: db $73 ; scroll text\n#_0EEAC4: db $2B, $22, $DD, $42, $59, $1B, $2E, $2D ; ri[ver],\u23b5but\n#_0EEACC: db $59, $B6, $59, $B5, $59, $B1, $2B, $1D ; \u23b5[it]\u23b5[is]\u23b5[ha]rd\n#_0EEAD4: db $59, $DA, $59, $1F, $B4, $1D, $41 ; \u23b5[to]\u23b5f[in]d.\n#_0EEADB: db $7E ; wait for key\n#_0EEADC: db $73 ; scroll text\n#_0EEADD: db $E6, $59, $DB, $1E, $1A, $2C, $2E, $CD ; [The]\u23b5[tr]easu[re ]\n#_0EEAE5: db $C6, $59, $19, $C8, $1A, $59, $99, $2D ; [of]\u23b5Z[or]a\u23b5[can ]t\n#_0EEAED: db $2E, $2B, $27 ; urn\n#_0EEAF0: db $73 ; scroll text\n#_0EEAF1: db $29, $1E, $28, $CA, $59, $B4, $DA, $59 ; peo[ple]\u23b5[in][to]\u23b5\n#_0EEAF9: db $1F, $B5, $21, $41, $8A, $07, $1E, $21 ; f[is]h.[ ]Heh\n#_0EEB01: db $59, $21, $1E, $21, $59, $21, $1E, $21 ; \u23b5heh\u23b5heh\n#_0EEB09: db $41 ; .\n#_0EEB0A: db $73 ; scroll text\n#_0EEB0B: db $08, $51, $1D, $59, $BB, $2F, $1E, $59 ; I'd\u23b5[lo]ve\u23b5\n#_0EEB13: db $DA, $59, $D0, $1E, $59, $D7, $2D, $41 ; [to]\u23b5[se]e\u23b5[tha]t.\n#_0EEB1B: db $7F ; end of message\n\n; =========================================================\n; I haven't had a chance to trim\n; my hedges recently. Thanks\n; for visiting anyway\u2026\n; A while ago, there was a boy in\n; this village who could talk to\n; animals with his Flute.\n; He had a pet bird that flew\n; with him everywhere, but\n; he went to the mountain and\n; never returned.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0183", + "code": "Message_0183:\n#_0EEB1C: db $08, $59, $AD, $C0, $B1, $1D, $59, $1A ; I\u23b5[have][n't ][ha]d\u23b5a\n#_0EEB24: db $59, $1C, $B1, $27, $1C, $1E, $59, $DA ; \u23b5c[ha]nce\u23b5[to]\n#_0EEB2C: db $59, $DB, $22, $26 ; \u23b5[tr]im\n#_0EEB30: db $75 ; line 2\n#_0EEB31: db $26, $32, $59, $21, $1E, $1D, $20, $1E ; my\u23b5hedge\n#_0EEB39: db $2C, $59, $CE, $1C, $A3, $25, $32, $41 ; s\u23b5[re]c[ent]ly.\n#_0EEB41: db $8A, $E5, $27, $24, $2C ; [ ][Tha]nks\n#_0EEB46: db $76 ; line 3\n#_0EEB47: db $A8, $59, $2F, $B5, $B6, $B3, $93, $32 ; [for]\u23b5v[is][it][ing ][an]y\n#_0EEB4F: db $DF, $32, $43 ; [wa]y\u2026\n#_0EEB52: db $7E ; wait for key\n#_0EEB53: db $73 ; scroll text\n#_0EEB54: db $00, $59, $E1, $22, $25, $1E, $59, $1A ; A\u23b5[wh]ile\u23b5a\n#_0EEB5C: db $AC, $42, $59, $D8, $CD, $DF, $2C, $59 ; [go],\u23b5[the][re ][wa]s\u23b5\n#_0EEB64: db $1A, $59, $98, $32, $59, $B4 ; a\u23b5[bo]y\u23b5[in]\n#_0EEB6A: db $73 ; scroll text\n#_0EEB6B: db $D9, $2C, $59, $2F, $22, $25, $BA, $20 ; [thi]s\u23b5vil[la]g\n#_0EEB73: db $1E, $59, $E1, $28, $59, $1C, $28, $2E ; e\u23b5[wh]o\u23b5cou\n#_0EEB7B: db $25, $1D, $59, $2D, $1A, $25, $24, $59 ; ld\u23b5talk\u23b5\n#_0EEB83: db $DA ; [to]\n#_0EEB84: db $73 ; scroll text\n#_0EEB85: db $93, $22, $BD, $25, $2C, $59, $DE, $59 ; [an]i[ma]ls\u23b5[with]\u23b5\n#_0EEB8D: db $B0, $2C, $59, $05, $25, $2E, $2D, $1E ; [hi]s\u23b5Flute\n#_0EEB95: db $41 ; .\n#_0EEB96: db $7E ; wait for key\n#_0EEB97: db $73 ; scroll text\n#_0EEB98: db $07, $1E, $59, $B1, $1D, $59, $1A, $59 ; He\u23b5[ha]d\u23b5a\u23b5\n#_0EEBA0: db $29, $1E, $2D, $59, $1B, $22, $2B, $1D ; pet\u23b5bird\n#_0EEBA8: db $59, $D7, $2D, $59, $1F, $25, $1E, $30 ; \u23b5[tha]t\u23b5flew\n#_0EEBB0: db $73 ; scroll text\n#_0EEBB1: db $DE, $59, $B0, $26, $59, $A7, $A6, $32 ; [with]\u23b5[hi]m\u23b5[ev][er]y\n#_0EEBB9: db $E1, $A6, $1E, $42, $59, $1B, $2E, $2D ; [wh][er]e,\u23b5but\n#_0EEBC1: db $73 ; scroll text\n#_0EEBC2: db $21, $1E, $59, $E0, $27, $2D, $59, $DA ; he\u23b5[we]nt\u23b5[to]\n#_0EEBCA: db $59, $D8, $59, $26, $28, $2E, $27, $2D ; \u23b5[the]\u23b5mount\n#_0EEBD2: db $8F, $59, $90 ; [ain]\u23b5[and]\n#_0EEBD5: db $7E ; wait for key\n#_0EEBD6: db $73 ; scroll text\n#_0EEBD7: db $27, $A7, $A1, $CE, $2D, $2E, $2B, $27 ; n[ev][er ][re]turn\n#_0EEBDF: db $1E, $1D, $41 ; ed.\n#_0EEBE2: db $7F ; end of message\n\n; =========================================================\n; >Start From [LINK]'s House\n; Start From Sanctuary\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0184", + "code": "Message_0184:\n#_0EEBE3: db $6D, $00 ; set window position\n#_0EEBE5: db $7A, $00 ; set draw speed\n#_0EEBE7: db $44, $12, $2D, $1A, $2B, $2D, $59, $05 ; >Start\u23b5F\n#_0EEBEF: db $2B, $28, $26, $59, $6A, $8B, $07, $28 ; rom\u23b5[LINK]['s ]Ho\n#_0EEBF7: db $2E, $D0 ; u[se]\n#_0EEBF9: db $75 ; line 2\n#_0EEBFA: db $8A, $12, $2D, $1A, $2B, $2D, $59, $05 ; [ ]Start\u23b5F\n#_0EEC02: db $2B, $28, $26, $59, $12, $93, $1C, $2D ; rom\u23b5S[an]ct\n#_0EEC0A: db $2E, $1A, $2B, $32 ; uary\n#_0EEC0E: db $72 ; choose 2 high\n#_0EEC0F: db $7F ; end of message\n\n; =========================================================\n; >Start From [LINK]'s House\n; Start From Sanctuary\n; Start From The Mountain Cave\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0185", + "code": "Message_0185:\n#_0EEC10: db $6D, $00 ; set window position\n#_0EEC12: db $7A, $00 ; set draw speed\n#_0EEC14: db $44, $12, $2D, $1A, $2B, $2D, $59, $05 ; >Start\u23b5F\n#_0EEC1C: db $2B, $28, $26, $59, $6A, $8B, $07, $28 ; rom\u23b5[LINK]['s ]Ho\n#_0EEC24: db $2E, $D0 ; u[se]\n#_0EEC26: db $75 ; line 2\n#_0EEC27: db $8A, $12, $2D, $1A, $2B, $2D, $59, $05 ; [ ]Start\u23b5F\n#_0EEC2F: db $2B, $28, $26, $59, $12, $93, $1C, $2D ; rom\u23b5S[an]ct\n#_0EEC37: db $2E, $1A, $2B, $32 ; uary\n#_0EEC3B: db $76 ; line 3\n#_0EEC3C: db $8A, $12, $2D, $1A, $2B, $2D, $59, $05 ; [ ]Start\u23b5F\n#_0EEC44: db $2B, $28, $26, $59, $E6, $59, $0C, $28 ; rom\u23b5[The]\u23b5Mo\n#_0EEC4C: db $2E, $27, $2D, $8F, $59, $02, $1A, $2F ; unt[ain]\u23b5Cav\n#_0EEC54: db $1E ; e\n#_0EEC55: db $71 ; choose 3\n#_0EEC56: db $7F ; end of message\n\n; =========================================================\n; > Continue Game\n; Save and Quit\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0186", + "code": "Message_0186:\n#_0EEC57: db $7A, $00 ; set draw speed\n#_0EEC59: db $44, $59, $02, $C7, $2D, $B4, $2E, $1E ; >\u23b5C[on]t[in]ue\n#_0EEC61: db $59, $06, $1A, $BE ; \u23b5Ga[me]\n#_0EEC65: db $75 ; line 2\n#_0EEC66: db $89, $12, $1A, $2F, $1E, $59, $8C, $10 ; [ ]Save\u23b5[and ]Q\n#_0EEC6E: db $2E, $B6 ; u[it]\n#_0EEC70: db $72 ; choose 2 high\n#_0EEC71: db $7F ; end of message\n\n; =========================================================\n; Welcome to the treasure field.\n; The object is to dig as many\n; holes as you can in 30 seconds.\n; Any treasures you dig up will\n; be yours to keep.\n; It's only 80 Rupees to play.\n; What do you say?\n; > I want to dig\n; I don't want to dig\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0187", + "code": "Message_0187:\n#_0EEC72: db $16, $1E, $25, $9B, $1E, $59, $DA, $59 ; Wel[com]e\u23b5[to]\u23b5\n#_0EEC7A: db $D8, $59, $DB, $1E, $1A, $2C, $2E, $CD ; [the]\u23b5[tr]easu[re ]\n#_0EEC82: db $1F, $22, $1E, $25, $1D, $41 ; field.\n#_0EEC88: db $75 ; line 2\n#_0EEC89: db $E6, $59, $28, $1B, $23, $1E, $1C, $2D ; [The]\u23b5object\n#_0EEC91: db $59, $B5, $59, $DA, $59, $9E, $20, $59 ; \u23b5[is]\u23b5[to]\u23b5[di]g\u23b5\n#_0EEC99: db $1A, $2C, $59, $BC, $32 ; as\u23b5[man]y\n#_0EEC9E: db $76 ; line 3\n#_0EEC9F: db $21, $28, $25, $1E, $2C, $59, $1A, $2C ; holes\u23b5as\n#_0EECA7: db $59, $E3, $59, $99, $B4, $59, $37, $34 ; \u23b5[you]\u23b5[can ][in]\u23b530\n#_0EECAF: db $59, $D0, $1C, $C7, $1D, $2C, $41 ; \u23b5[se]c[on]ds.\n#_0EECB6: db $7E ; wait for key\n#_0EECB7: db $73 ; scroll text\n#_0EECB8: db $00, $27, $32, $59, $DB, $1E, $1A, $2C ; Any\u23b5[tr]eas\n#_0EECC0: db $2E, $CE, $2C, $59, $E3, $59, $9E, $20 ; u[re]s\u23b5[you]\u23b5[di]g\n#_0EECC8: db $59, $DC, $59, $E2, $25, $25 ; \u23b5[up]\u23b5[wi]ll\n#_0EECCE: db $73 ; scroll text\n#_0EECCF: db $97, $59, $E3, $2B, $2C, $59, $DA, $59 ; [be]\u23b5[you]rs\u23b5[to]\u23b5\n#_0EECD7: db $24, $1E, $1E, $29, $41 ; keep.\n#_0EECDC: db $73 ; scroll text\n#_0EECDD: db $08, $2D, $8B, $C7, $B9, $3C, $34, $59 ; It['s ][on][ly ]80\u23b5\n#_0EECE5: db $11, $DC, $1E, $1E, $2C, $59, $DA, $59 ; R[up]ees\u23b5[to]\u23b5\n#_0EECED: db $29, $BA, $32, $41 ; p[la]y.\n#_0EECF1: db $7E ; wait for key\n#_0EECF2: db $73 ; scroll text\n#_0EECF3: db $16, $B1, $2D, $59, $9F, $59, $E3, $59 ; W[ha]t\u23b5[do]\u23b5[you]\u23b5\n#_0EECFB: db $2C, $1A, $32, $3F ; say?\n#_0EECFF: db $73 ; scroll text\n#_0EED00: db $88, $44, $59, $08, $59, $DF, $27, $2D ; [ ]>\u23b5I\u23b5[wa]nt\n#_0EED08: db $59, $DA, $59, $9E, $20 ; \u23b5[to]\u23b5[di]g\n#_0EED0D: db $73 ; scroll text\n#_0EED0E: db $88, $89, $08, $59, $9F, $C0, $DF, $27 ; [ ][ ]I\u23b5[do][n't ][wa]n\n#_0EED16: db $2D, $59, $DA, $59, $9E, $20 ; t\u23b5[to]\u23b5[di]g\n#_0EED1C: db $68 ; choose 2 indented\n#_0EED1D: db $7F ; end of message\n\n; =========================================================\n; Then I will lend you a shovel.\n; When you have it in your hand,\n; start digging! (Press the\n; \u24e8 Button to dig.)\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0188", + "code": "Message_0188:\n#_0EED1E: db $E6, $27, $59, $08, $59, $E2, $25, $25 ; [The]n\u23b5I\u23b5[wi]ll\n#_0EED26: db $59, $25, $A5, $1D, $59, $E3, $59, $1A ; \u23b5l[en]d\u23b5[you]\u23b5a\n#_0EED2E: db $59, $D1, $28, $2F, $1E, $25, $41 ; \u23b5[sh]ovel.\n#_0EED35: db $75 ; line 2\n#_0EED36: db $16, $21, $A0, $E3, $59, $AD, $59, $B6 ; Wh[en ][you]\u23b5[have]\u23b5[it]\n#_0EED3E: db $59, $B4, $59, $E3, $2B, $59, $B1, $27 ; \u23b5[in]\u23b5[you]r\u23b5[ha]n\n#_0EED46: db $1D, $42 ; d,\n#_0EED48: db $76 ; line 3\n#_0EED49: db $D3, $1A, $2B, $2D, $59, $9E, $20, $20 ; [st]art\u23b5[di]gg\n#_0EED51: db $B4, $20, $3E, $59, $45, $0F, $CE, $2C ; [in]g!\u23b5(P[re]s\n#_0EED59: db $2C, $59, $D8 ; s\u23b5[the]\n#_0EED5C: db $7E ; wait for key\n#_0EED5D: db $73 ; scroll text\n#_0EED5E: db $5E, $59, $01, $2E, $2D, $DA, $27, $59 ; \u24e8\u23b5But[to]n\u23b5\n#_0EED66: db $DA, $59, $9E, $20, $41, $46 ; [to]\u23b5[di]g.)\n#_0EED6C: db $7F ; end of message\n\n; =========================================================\n; I see. Then I give up. Save\n; some Rupees and come back.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_0189", + "code": "Message_0189:\n#_0EED6D: db $08, $59, $D0, $1E, $41, $8A, $E6, $27 ; I\u23b5[se]e.[ ][The]n\n#_0EED75: db $59, $08, $59, $AA, $DC, $41, $8A, $12 ; \u23b5I\u23b5[give ][up].[ ]S\n#_0EED7D: db $1A, $2F, $1E ; ave\n#_0EED80: db $75 ; line 2\n#_0EED81: db $CF, $59, $11, $DC, $1E, $1E, $2C, $59 ; [some]\u23b5R[up]ees\u23b5\n#_0EED89: db $8C, $9B, $1E, $59, $96, $9C, $41 ; [and ][com]e\u23b5[ba][ck].\n#_0EED90: db $7F ; end of message\n\n; =========================================================\n; OK! Time's up, game over.\n; Come back again. Good bye\u2026\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_018A", + "code": "Message_018A:\n#_0EED91: db $0E, $0A, $3E, $8A, $13, $22, $BE, $8B ; OK![ ]Ti[me]['s ]\n#_0EED99: db $DC, $42, $59, $20, $1A, $BE, $59, $28 ; [up],\u23b5ga[me]\u23b5o\n#_0EEDA1: db $DD, $41 ; [ver].\n#_0EEDA3: db $75 ; line 2\n#_0EEDA4: db $02, $28, $BE, $59, $96, $9C, $59, $1A ; Co[me]\u23b5[ba][ck]\u23b5a\n#_0EEDAC: db $20, $8F, $41, $8A, $06, $28, $28, $1D ; g[ain].[ ]Good\n#_0EEDB4: db $59, $1B, $32, $1E, $43 ; \u23b5bye\u2026\n#_0EEDB9: db $7F ; end of message\n\n; =========================================================\n; Come back again!\n; I will be waiting for you.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "Message_018B", + "code": "Message_018B:\n#_0EEDBA: db $02, $28, $BE, $59, $96, $9C, $59, $1A ; Co[me]\u23b5[ba][ck]\u23b5a\n#_0EEDC2: db $20, $8F, $3E ; g[ain]!\n#_0EEDC5: db $75 ; line 2\n#_0EEDC6: db $08, $59, $E2, $25, $25, $59, $97, $59 ; I\u23b5[wi]ll\u23b5[be]\u23b5\n#_0EEDCE: db $DF, $B6, $B3, $A8, $59, $E3, $41 ; [wa][it][ing ][for]\u23b5[you].\n#_0EEDD5: db $7F ; end of message\n\n; =========================================================\n; I can't tell you details, but\n; it's not a convenient time for\n; me now. Come back here again.\n; Sorry.\n; ---------------------------------------------------------", + "file": "text.asm" + }, + { + "name": "DrawObjects", + "code": "DrawObjects:\n\n.type1_subtype_1_data_offset\n\n #_018000: dw obj03D8-RoomDrawObjectData ; $03D8 ; 000 -\n #_018002: dw obj02E8-RoomDrawObjectData ; $02E8 ; 001 -\n #_018004: dw obj02F8-RoomDrawObjectData ; $02F8 ; 002 -\n #_018006: dw obj0328-RoomDrawObjectData ; $0328 ; 003 -\n #_018008: dw obj0338-RoomDrawObjectData ; $0338 ; 004 -\n #_01800A: dw obj0400-RoomDrawObjectData ; $0400 ; 005 -\n #_01800C: dw obj0410-RoomDrawObjectData ; $0410 ; 006 -\n #_01800E: dw obj0388-RoomDrawObjectData ; $0388 ; 007 -\n #_018010: dw obj0390-RoomDrawObjectData ; $0390 ; 008 -\n #_018012: dw obj0420-RoomDrawObjectData ; $0420 ; 009 -\n #_018014: dw obj042A-RoomDrawObjectData ; $042A ; 00A -\n #_018016: dw obj0434-RoomDrawObjectData ; $0434 ; 00B -\n #_018018: dw obj043E-RoomDrawObjectData ; $043E ; 00C -\n #_01801A: dw obj0448-RoomDrawObjectData ; $0448 ; 00D -\n #_01801C: dw obj0452-RoomDrawObjectData ; $0452 ; 00E -\n #_01801E: dw obj045C-RoomDrawObjectData ; $045C ; 00F -\n #_018020: dw obj0466-RoomDrawObjectData ; $0466 ; 010 -\n #_018022: dw obj0470-RoomDrawObjectData ; $0470 ; 011 -\n #_018024: dw obj047A-RoomDrawObjectData ; $047A ; 012 -\n #_018026: dw obj0484-RoomDrawObjectData ; $0484 ; 013 -\n #_018028: dw obj048E-RoomDrawObjectData ; $048E ; 014 -\n #_01802A: dw obj0498-RoomDrawObjectData ; $0498 ; 015 -\n #_01802C: dw obj04A2-RoomDrawObjectData ; $04A2 ; 016 -\n #_01802E: dw obj04AC-RoomDrawObjectData ; $04AC ; 017 -\n #_018030: dw obj04B6-RoomDrawObjectData ; $04B6 ; 018 -\n #_018032: dw obj04C0-RoomDrawObjectData ; $04C0 ; 019 -\n #_018034: dw obj04CA-RoomDrawObjectData ; $04CA ; 01A -\n #_018036: dw obj04D4-RoomDrawObjectData ; $04D4 ; 01B -\n #_018038: dw obj04DE-RoomDrawObjectData ; $04DE ; 01C -\n #_01803A: dw obj04E8-RoomDrawObjectData ; $04E8 ; 01D -\n #_01803C: dw obj04F2-RoomDrawObjectData ; $04F2 ; 01E -\n #_01803E: dw obj04FC-RoomDrawObjectData ; $04FC ; 01F -\n #_018040: dw obj0506-RoomDrawObjectData ; $0506 ; 020 -\n #_018042: dw obj0598-RoomDrawObjectData ; $0598 ; 021 -\n #_018044: dw obj0600-RoomDrawObjectData ; $0600 ; 022 -\n #_018046: dw obj063C-RoomDrawObjectData ; $063C ; 023 -\n #_018048: dw obj063C-RoomDrawObjectData ; $063C ; 024 -\n #_01804A: dw obj063C-RoomDrawObjectData ; $063C ; 025 -\n #_01804C: dw obj063C-RoomDrawObjectData ; $063C ; 026 -\n #_01804E: dw obj063C-RoomDrawObjectData ; $063C ; 027 -\n #_018050: dw obj0642-RoomDrawObjectData ; $0642 ; 028 -\n #_018052: dw obj064C-RoomDrawObjectData ; $064C ; 029 -\n #_018054: dw obj0652-RoomDrawObjectData ; $0652 ; 02A -\n #_018056: dw obj0658-RoomDrawObjectData ; $0658 ; 02B -\n #_018058: dw obj065E-RoomDrawObjectData ; $065E ; 02C -\n #_01805A: dw obj0664-RoomDrawObjectData ; $0664 ; 02D -\n #_01805C: dw obj066A-RoomDrawObjectData ; $066A ; 02E -\n #_01805E: dw obj0688-RoomDrawObjectData ; $0688 ; 02F -\n #_018060: dw obj0694-RoomDrawObjectData ; $0694 ; 030 -\n #_018062: dw obj06A8-RoomDrawObjectData ; $06A8 ; 031 -\n #_018064: dw obj06A8-RoomDrawObjectData ; $06A8 ; 032 -\n #_018066: dw obj06A8-RoomDrawObjectData ; $06A8 ; 033 -\n #_018068: dw obj06C8-RoomDrawObjectData ; $06C8 ; 034 -\n #_01806A: dw $0000 ; $0000 ; 035 -\n #_01806C: dw obj078A-RoomDrawObjectData ; $078A ; 036 -\n #_01806E: dw obj07AA-RoomDrawObjectData ; $07AA ; 037 -\n #_018070: dw obj0E26-RoomDrawObjectData ; $0E26 ; 038 -\n #_018072: dw obj084A-RoomDrawObjectData ; $084A ; 039 -\n #_018074: dw obj086A-RoomDrawObjectData ; $086A ; 03A -\n #_018076: dw obj0882-RoomDrawObjectData ; $0882 ; 03B -\n #_018078: dw obj08CA-RoomDrawObjectData ; $08CA ; 03C -\n #_01807A: dw obj085A-RoomDrawObjectData ; $085A ; 03D -\n #_01807C: dw obj08FA-RoomDrawObjectData ; $08FA ; 03E -\n #_01807E: dw obj091A-RoomDrawObjectData ; $091A ; 03F -\n #_018080: dw obj0920-RoomDrawObjectData ; $0920 ; 040 -\n #_018082: dw obj092A-RoomDrawObjectData ; $092A ; 041 -\n #_018084: dw obj0930-RoomDrawObjectData ; $0930 ; 042 -\n #_018086: dw obj0936-RoomDrawObjectData ; $0936 ; 043 -\n #_018088: dw obj093C-RoomDrawObjectData ; $093C ; 044 -\n #_01808A: dw obj0942-RoomDrawObjectData ; $0942 ; 045 -\n #_01808C: dw obj0948-RoomDrawObjectData ; $0948 ; 046 -\n #_01808E: dw obj094E-RoomDrawObjectData ; $094E ; 047 -\n #_018090: dw obj096C-RoomDrawObjectData ; $096C ; 048 -\n #_018092: dw obj097E-RoomDrawObjectData ; $097E ; 049 -\n #_018094: dw obj098E-RoomDrawObjectData ; $098E ; 04A -\n #_018096: dw obj0902-RoomDrawObjectData ; $0902 ; 04B -\n #_018098: dw obj099E-RoomDrawObjectData ; $099E ; 04C -\n #_01809A: dw obj09D8-RoomDrawObjectData ; $09D8 ; 04D -\n #_01809C: dw obj09D8-RoomDrawObjectData ; $09D8 ; 04E -\n #_01809E: dw obj09D8-RoomDrawObjectData ; $09D8 ; 04F -\n #_0180A0: dw obj09FA-RoomDrawObjectData ; $09FA ; 050 -\n #_0180A2: dw obj156C-RoomDrawObjectData ; $156C ; 051 -\n #_0180A4: dw obj1590-RoomDrawObjectData ; $1590 ; 052 -\n #_0180A6: dw obj1D86-RoomDrawObjectData ; $1D86 ; 053 -\n #_0180A8: dw $0000 ; $0000 ; 054 -\n #_0180AA: dw obj0A14-RoomDrawObjectData ; $0A14 ; 055 -\n #_0180AC: dw obj0A24-RoomDrawObjectData ; $0A24 ; 056 -\n #_0180AE: dw obj0A54-RoomDrawObjectData ; $0A54 ; 057 -\n #_0180B0: dw obj0A54-RoomDrawObjectData ; $0A54 ; 058 -\n #_0180B2: dw obj0A84-RoomDrawObjectData ; $0A84 ; 059 -\n #_0180B4: dw obj0A84-RoomDrawObjectData ; $0A84 ; 05A -\n #_0180B6: dw obj14DC-RoomDrawObjectData ; $14DC ; 05B -\n #_0180B8: dw obj1500-RoomDrawObjectData ; $1500 ; 05C -\n #_0180BA: dw obj061E-RoomDrawObjectData ; $061E ; 05D -\n #_0180BC: dw obj0E52-RoomDrawObjectData ; $0E52 ; 05E -\n #_0180BE: dw obj0600-RoomDrawObjectData ; $0600 ; 05F -\n #_0180C0: dw obj03D8-RoomDrawObjectData ; $03D8 ; 060 -\n #_0180C2: dw obj02C8-RoomDrawObjectData ; $02C8 ; 061 -\n #_0180C4: dw obj02D8-RoomDrawObjectData ; $02D8 ; 062 -\n #_0180C6: dw obj0308-RoomDrawObjectData ; $0308 ; 063 -\n #_0180C8: dw obj0318-RoomDrawObjectData ; $0318 ; 064 -\n #_0180CA: dw obj03E0-RoomDrawObjectData ; $03E0 ; 065 -\n #_0180CC: dw obj03F0-RoomDrawObjectData ; $03F0 ; 066 -\n #_0180CE: dw obj0378-RoomDrawObjectData ; $0378 ; 067 -\n #_0180D0: dw obj0380-RoomDrawObjectData ; $0380 ; 068 -\n #_0180D2: dw obj05FA-RoomDrawObjectData ; $05FA ; 069 -\n #_0180D4: dw obj0648-RoomDrawObjectData ; $0648 ; 06A -\n #_0180D6: dw obj064A-RoomDrawObjectData ; $064A ; 06B -\n #_0180D8: dw obj0670-RoomDrawObjectData ; $0670 ; 06C -\n #_0180DA: dw obj067C-RoomDrawObjectData ; $067C ; 06D -\n #_0180DC: dw obj06A8-RoomDrawObjectData ; $06A8 ; 06E -\n #_0180DE: dw obj06A8-RoomDrawObjectData ; $06A8 ; 06F -\n #_0180E0: dw obj06A8-RoomDrawObjectData ; $06A8 ; 070 -\n #_0180E2: dw obj06C8-RoomDrawObjectData ; $06C8 ; 071 -\n #_0180E4: dw $0000 ; $0000 ; 072 -\n #_0180E6: dw obj07AA-RoomDrawObjectData ; $07AA ; 073 -\n #_0180E8: dw obj07CA-RoomDrawObjectData ; $07CA ; 074 -\n #_0180EA: dw obj084A-RoomDrawObjectData ; $084A ; 075 -\n #_0180EC: dw obj089A-RoomDrawObjectData ; $089A ; 076 -\n #_0180EE: dw obj08B2-RoomDrawObjectData ; $08B2 ; 077 -\n #_0180F0: dw obj090A-RoomDrawObjectData ; $090A ; 078 -\n #_0180F2: dw obj0926-RoomDrawObjectData ; $0926 ; 079 -\n #_0180F4: dw obj0928-RoomDrawObjectData ; $0928 ; 07A -\n #_0180F6: dw obj0912-RoomDrawObjectData ; $0912 ; 07B -\n #_0180F8: dw obj09F8-RoomDrawObjectData ; $09F8 ; 07C -\n #_0180FA: dw obj1D7E-RoomDrawObjectData ; $1D7E ; 07D -\n #_0180FC: dw $0000 ; $0000 ; 07E -\n #_0180FE: dw obj0A34-RoomDrawObjectData ; $0A34 ; 07F -\n #_018100: dw obj0A44-RoomDrawObjectData ; $0A44 ; 080 -\n #_018102: dw obj0A54-RoomDrawObjectData ; $0A54 ; 081 -\n #_018104: dw obj0A6C-RoomDrawObjectData ; $0A6C ; 082 -\n #_018106: dw obj0A84-RoomDrawObjectData ; $0A84 ; 083 -\n #_018108: dw obj0A9C-RoomDrawObjectData ; $0A9C ; 084 -\n #_01810A: dw obj1524-RoomDrawObjectData ; $1524 ; 085 -\n #_01810C: dw obj1548-RoomDrawObjectData ; $1548 ; 086 -\n #_01810E: dw obj085A-RoomDrawObjectData ; $085A ; 087 -\n #_018110: dw obj0606-RoomDrawObjectData ; $0606 ; 088 -\n #_018112: dw obj0E52-RoomDrawObjectData ; $0E52 ; 089 -\n #_018114: dw obj05FA-RoomDrawObjectData ; $05FA ; 08A -\n #_018116: dw obj06A0-RoomDrawObjectData ; $06A0 ; 08B -\n #_018118: dw obj06A2-RoomDrawObjectData ; $06A2 ; 08C -\n #_01811A: dw obj0B12-RoomDrawObjectData ; $0B12 ; 08D -\n #_01811C: dw obj0B14-RoomDrawObjectData ; $0B14 ; 08E -\n #_01811E: dw obj09B0-RoomDrawObjectData ; $09B0 ; 08F -\n #_018120: dw obj0B46-RoomDrawObjectData ; $0B46 ; 090 -\n #_018122: dw obj0B56-RoomDrawObjectData ; $0B56 ; 091 -\n #_018124: dw obj1F52-RoomDrawObjectData ; $1F52 ; 092 -\n #_018126: dw obj1F5A-RoomDrawObjectData ; $1F5A ; 093 -\n #_018128: dw obj0288-RoomDrawObjectData ; $0288 ; 094 -\n #_01812A: dw obj0E82-RoomDrawObjectData ; $0E82 ; 095 -\n #_01812C: dw obj1DF2-RoomDrawObjectData ; $1DF2 ; 096 -\n #_01812E: dw $0000 ; $0000 ; 097 -\n #_018130: dw $0000 ; $0000 ; 098 -\n #_018132: dw $0000 ; $0000 ; 099 -\n #_018134: dw $0000 ; $0000 ; 09A -\n #_018136: dw $0000 ; $0000 ; 09B -\n #_018138: dw $0000 ; $0000 ; 09C -\n #_01813A: dw $0000 ; $0000 ; 09D -\n #_01813C: dw $0000 ; $0000 ; 09E -\n #_01813E: dw $0000 ; $0000 ; 09F -\n #_018140: dw obj03D8-RoomDrawObjectData ; $03D8 ; 0A0 -\n #_018142: dw obj03D8-RoomDrawObjectData ; $03D8 ; 0A1 -\n #_018144: dw obj03D8-RoomDrawObjectData ; $03D8 ; 0A2 -\n #_018146: dw obj03D8-RoomDrawObjectData ; $03D8 ; 0A3 -\n #_018148: dw obj05AA-RoomDrawObjectData ; $05AA ; 0A4 -\n #_01814A: dw obj05B2-RoomDrawObjectData ; $05B2 ; 0A5 -\n #_01814C: dw obj05B2-RoomDrawObjectData ; $05B2 ; 0A6 -\n #_01814E: dw obj05B2-RoomDrawObjectData ; $05B2 ; 0A7 -\n #_018150: dw obj05B2-RoomDrawObjectData ; $05B2 ; 0A8 -\n #_018152: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0A9 -\n #_018154: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0AA -\n #_018156: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0AB -\n #_018158: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0AC -\n #_01815A: dw obj0110-RoomDrawObjectData ; $0110 ; 0AD -\n #_01815C: dw $0000 ; $0000 ; 0AE -\n #_01815E: dw $0000 ; $0000 ; 0AF -\n #_018160: dw obj06A4-RoomDrawObjectData ; $06A4 ; 0B0 -\n #_018162: dw obj06A6-RoomDrawObjectData ; $06A6 ; 0B1 -\n #_018164: dw obj0AE6-RoomDrawObjectData ; $0AE6 ; 0B2 -\n #_018166: dw obj0B06-RoomDrawObjectData ; $0B06 ; 0B3 -\n #_018168: dw obj0B0C-RoomDrawObjectData ; $0B0C ; 0B4 -\n #_01816A: dw obj0B16-RoomDrawObjectData ; $0B16 ; 0B5 -\n #_01816C: dw obj0B26-RoomDrawObjectData ; $0B26 ; 0B6 -\n #_01816E: dw obj0B36-RoomDrawObjectData ; $0B36 ; 0B7 -\n #_018170: dw obj1F52-RoomDrawObjectData ; $1F52 ; 0B8 -\n #_018172: dw obj1F5A-RoomDrawObjectData ; $1F5A ; 0B9 -\n #_018174: dw obj0288-RoomDrawObjectData ; $0288 ; 0BA -\n #_018176: dw obj0EBA-RoomDrawObjectData ; $0EBA ; 0BB -\n #_018178: dw obj0E82-RoomDrawObjectData ; $0E82 ; 0BC -\n #_01817A: dw obj1DF2-RoomDrawObjectData ; $1DF2 ; 0BD -\n #_01817C: dw $0000 ; $0000 ; 0BE -\n #_01817E: dw $0000 ; $0000 ; 0BF -\n #_018180: dw obj03D8-RoomDrawObjectData ; $03D8 ; 0C0 -\n #_018182: dw obj0510-RoomDrawObjectData ; $0510 ; 0C1 -\n #_018184: dw obj05AA-RoomDrawObjectData ; $05AA ; 0C2 -\n #_018186: dw obj05AA-RoomDrawObjectData ; $05AA ; 0C3 -\n #_018188: dw $0000 ; $0000 ; 0C4 -\n #_01818A: dw obj0168-RoomDrawObjectData ; $0168 ; 0C5 -\n #_01818C: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0C6 -\n #_01818E: dw obj0158-RoomDrawObjectData ; $0158 ; 0C7 -\n #_018190: dw obj0100-RoomDrawObjectData ; $0100 ; 0C8 -\n #_018192: dw obj0110-RoomDrawObjectData ; $0110 ; 0C9 -\n #_018194: dw obj0178-RoomDrawObjectData ; $0178 ; 0CA -\n #_018196: dw obj072A-RoomDrawObjectData ; $072A ; 0CB -\n #_018198: dw obj072A-RoomDrawObjectData ; $072A ; 0CC -\n #_01819A: dw obj072A-RoomDrawObjectData ; $072A ; 0CD -\n #_01819C: dw obj075A-RoomDrawObjectData ; $075A ; 0CE -\n #_01819E: dw obj0670-RoomDrawObjectData ; $0670 ; 0CF -\n #_0181A0: dw obj0670-RoomDrawObjectData ; $0670 ; 0D0 -\n #_0181A2: dw obj0130-RoomDrawObjectData ; $0130 ; 0D1 -\n #_0181A4: dw obj0148-RoomDrawObjectData ; $0148 ; 0D2 -\n #_0181A6: dw obj072A-RoomDrawObjectData ; $072A ; 0D3 -\n #_0181A8: dw obj072A-RoomDrawObjectData ; $072A ; 0D4 -\n #_0181AA: dw obj072A-RoomDrawObjectData ; $072A ; 0D5 -\n #_0181AC: dw obj075A-RoomDrawObjectData ; $075A ; 0D6 -\n #_0181AE: dw obj00E0-RoomDrawObjectData ; $00E0 ; 0D7 -\n #_0181B0: dw obj0110-RoomDrawObjectData ; $0110 ; 0D8 -\n #_0181B2: dw obj00F0-RoomDrawObjectData ; $00F0 ; 0D9 -\n #_0181B4: dw obj0110-RoomDrawObjectData ; $0110 ; 0DA -\n #_0181B6: dw $0000 ; $0000 ; 0DB -\n #_0181B8: dw obj0AB4-RoomDrawObjectData ; $0AB4 ; 0DC -\n #_0181BA: dw obj08DA-RoomDrawObjectData ; $08DA ; 0DD -\n #_0181BC: dw obj0ADE-RoomDrawObjectData ; $0ADE ; 0DE -\n #_0181BE: dw obj0188-RoomDrawObjectData ; $0188 ; 0DF -\n #_0181C0: dw obj01A0-RoomDrawObjectData ; $01A0 ; 0E0 -\n #_0181C2: dw obj01B0-RoomDrawObjectData ; $01B0 ; 0E1 -\n #_0181C4: dw obj01C0-RoomDrawObjectData ; $01C0 ; 0E2 -\n #_0181C6: dw obj01D0-RoomDrawObjectData ; $01D0 ; 0E3 -\n #_0181C8: dw obj01E0-RoomDrawObjectData ; $01E0 ; 0E4 -\n #_0181CA: dw obj01F0-RoomDrawObjectData ; $01F0 ; 0E5 -\n #_0181CC: dw obj0200-RoomDrawObjectData ; $0200 ; 0E6 -\n #_0181CE: dw obj0120-RoomDrawObjectData ; $0120 ; 0E7 -\n #_0181D0: dw obj02A8-RoomDrawObjectData ; $02A8 ; 0E8 -\n #_0181D2: dw $0000 ; $0000 ; 0E9 -\n #_0181D4: dw $0000 ; $0000 ; 0EA -\n #_0181D6: dw $0000 ; $0000 ; 0EB -\n #_0181D8: dw $0000 ; $0000 ; 0EC -\n #_0181DA: dw $0000 ; $0000 ; 0ED -\n #_0181DC: dw $0000 ; $0000 ; 0EE -\n #_0181DE: dw $0000 ; $0000 ; 0EF -\n #_0181E0: dw $0000 ; $0000 ; 0F0 -\n #_0181E2: dw $0000 ; $0000 ; 0F1 -\n #_0181E4: dw $0000 ; $0000 ; 0F2 -\n #_0181E6: dw $0000 ; $0000 ; 0F3 -\n #_0181E8: dw $0000 ; $0000 ; 0F4 -\n #_0181EA: dw $0000 ; $0000 ; 0F5 -\n #_0181EC: dw $0000 ; $0000 ; 0F6 -\n #_0181EE: dw $0000 ; $0000 ; 0F7 -\n #_0181F0: dw $0000 ; $0000 ; 0F8 -\n #_0181F2: dw $0000 ; $0000 ; 0F9 -\n #_0181F4: dw $0000 ; $0000 ; 0FA -\n #_0181F6: dw $0000 ; $0000 ; 0FB -\n #_0181F8: dw $0000 ; $0000 ; 0FC -\n #_0181FA: dw $0000 ; $0000 ; 0FD -\n #_0181FC: dw $0000 ; $0000 ; 0FE -\n #_0181FE: dw $0000 ; $0000 ; 0FF -\n\n; ---------------------------------------------------------\n\n.type1_subtype_1_routine\n #_018200: dw RoomDraw_Rightwards2x2_1to15or32 ; 000\n #_018202: dw RoomDraw_Rightwards2x4_1to15or26 ; 001\n #_018204: dw RoomDraw_Rightwards2x4_1to15or26 ; 002\n #_018206: dw RoomDraw_Rightwards2x4spaced4_1to16 ; 003\n #_018208: dw RoomDraw_Rightwards2x4spaced4_1to16 ; 004\n #_01820A: dw RoomDraw_Rightwards2x4spaced4_1to16_BothBG ; 005\n #_01820C: dw RoomDraw_Rightwards2x4spaced4_1to16_BothBG ; 006\n #_01820E: dw RoomDraw_Rightwards2x2_1to16 ; 007\n #_018210: dw RoomDraw_Rightwards2x2_1to16 ; 008\n #_018212: dw RoomDraw_DiagonalAcute_1to16 ; 009\n #_018214: dw RoomDraw_DiagonalGrave_1to16 ; 00A\n #_018216: dw RoomDraw_DiagonalGrave_1to16 ; 00B\n #_018218: dw RoomDraw_DiagonalAcute_1to16 ; 00C\n #_01821A: dw RoomDraw_DiagonalAcute_1to16 ; 00D\n #_01821C: dw RoomDraw_DiagonalGrave_1to16 ; 00E\n #_01821E: dw RoomDraw_DiagonalGrave_1to16 ; 00F\n #_018220: dw RoomDraw_DiagonalAcute_1to16 ; 010\n #_018222: dw RoomDraw_DiagonalAcute_1to16 ; 011\n #_018224: dw RoomDraw_DiagonalGrave_1to16 ; 012\n #_018226: dw RoomDraw_DiagonalGrave_1to16 ; 013\n #_018228: dw RoomDraw_DiagonalAcute_1to16 ; 014\n #_01822A: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 015\n #_01822C: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 016\n #_01822E: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 017\n #_018230: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 018\n #_018232: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 019\n #_018234: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 01A\n #_018236: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 01B\n #_018238: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 01C\n #_01823A: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 01D\n #_01823C: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 01E\n #_01823E: dw RoomDraw_DiagonalGrave_1to16_BothBG ; 01F\n #_018240: dw RoomDraw_DiagonalAcute_1to16_BothBG ; 020\n #_018242: dw RoomDraw_Rightwards1x2_1to16_plus2 ; 021\n #_018244: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus3 ; 022\n #_018246: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 023\n #_018248: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 024\n #_01824A: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 025\n #_01824C: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 026\n #_01824E: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 027\n #_018250: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 028\n #_018252: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 029\n #_018254: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 02A\n #_018256: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 02B\n #_018258: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 02C\n #_01825A: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 02D\n #_01825C: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 02E\n #_01825E: dw RoomDraw_RightwardsTopCorners1x2_1to16_plus13 ; 02F\n #_018260: dw RoomDraw_RightwardsBottomCorners1x2_1to16_plus13 ; 030\n #_018262: dw RoomDraw_Nothing_A ; 031\n #_018264: dw RoomDraw_Nothing_A ; 032\n #_018266: dw RoomDraw_Rightwards4x4_1to16 ; 033\n #_018268: dw RoomDraw_Rightwards1x1Solid_1to16_plus3 ; 034\n #_01826A: dw RoomDraw_DoorSwitcherer ; 035\n #_01826C: dw RoomDraw_RightwardsDecor4x4spaced2_1to16 ; 036\n #_01826E: dw RoomDraw_RightwardsDecor4x4spaced2_1to16 ; 037\n #_018270: dw RoomDraw_RightwardsStatue2x3spaced2_1to16 ; 038\n #_018272: dw RoomDraw_RightwardsPillar2x4spaced4_1to16 ; 039\n #_018274: dw RoomDraw_RightwardsDecor4x3spaced4_1to16 ; 03A\n #_018276: dw RoomDraw_RightwardsDecor4x3spaced4_1to16 ; 03B\n #_018278: dw RoomDraw_RightwardsDoubled2x2spaced2_1to16 ; 03C\n #_01827A: dw RoomDraw_RightwardsPillar2x4spaced4_1to16 ; 03D\n #_01827C: dw RoomDraw_RightwardsDecor2x2spaced12_1to16 ; 03E\n #_01827E: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 03F\n #_018280: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 040\n #_018282: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 041\n #_018284: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 042\n #_018286: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 043\n #_018288: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 044\n #_01828A: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 045\n #_01828C: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 046\n #_01828E: dw RoomDraw_Waterfall47 ; 047\n #_018290: dw RoomDraw_Waterfall48 ; 048\n #_018292: dw RoomDraw_RightwardsFloorTile4x2_1to16 ; 049\n #_018294: dw RoomDraw_RightwardsFloorTile4x2_1to16 ; 04A\n #_018296: dw RoomDraw_RightwardsDecor2x2spaced12_1to16 ; 04B\n #_018298: dw RoomDraw_RightwardsBar4x3_1to16 ; 04C\n #_01829A: dw RoomDraw_RightwardsShelf4x4_1to16 ; 04D\n #_01829C: dw RoomDraw_RightwardsShelf4x4_1to16 ; 04E\n #_01829E: dw RoomDraw_RightwardsShelf4x4_1to16 ; 04F\n #_0182A0: dw RoomDraw_RightwardsLine1x1_1to16plus1 ; 050\n #_0182A2: dw RoomDraw_RightwardsCannonHole4x3_1to16 ; 051\n #_0182A4: dw RoomDraw_RightwardsCannonHole4x3_1to16 ; 052\n #_0182A6: dw RoomDraw_Rightwards2x2_1to16 ; 053\n #_0182A8: dw RoomDraw_Nothing_B ; 054\n #_0182AA: dw RoomDraw_RightwardsDecor4x2spaced8_1to16 ; 055\n #_0182AC: dw RoomDraw_RightwardsDecor4x2spaced8_1to16 ; 056\n #_0182AE: dw RoomDraw_Nothing_C ; 057\n #_0182B0: dw RoomDraw_Nothing_C ; 058\n #_0182B2: dw RoomDraw_Nothing_C ; 059\n #_0182B4: dw RoomDraw_Nothing_C ; 05A\n #_0182B6: dw RoomDraw_RightwardsCannonHole4x3_1to16 ; 05B\n #_0182B8: dw RoomDraw_RightwardsCannonHole4x3_1to16 ; 05C\n #_0182BA: dw RoomDraw_RightwardsBigRail1x3_1to16plus5 ; 05D\n #_0182BC: dw RoomDraw_RightwardsBlock2x2spaced2_1to16 ; 05E\n #_0182BE: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus23 ; 05F\n #_0182C0: dw RoomDraw_Downwards2x2_1to15or32 ; 060\n #_0182C2: dw RoomDraw_Downwards4x2_1to15or26 ; 061\n #_0182C4: dw RoomDraw_Downwards4x2_1to15or26 ; 062\n #_0182C6: dw RoomDraw_Downwards4x2_1to16_BothBG ; 063\n #_0182C8: dw RoomDraw_Downwards4x2_1to16_BothBG ; 064\n #_0182CA: dw RoomDraw_DownwardsDecor4x2spaced4_1to16 ; 065\n #_0182CC: dw RoomDraw_DownwardsDecor4x2spaced4_1to16 ; 066\n #_0182CE: dw RoomDraw_Downwards2x2_1to16 ; 067\n #_0182D0: dw RoomDraw_Downwards2x2_1to16 ; 068\n #_0182D2: dw RoomDraw_DownwardsHasEdge1x1_1to16_plus3 ; 069\n #_0182D4: dw RoomDraw_DownwardsEdge1x1_1to16 ; 06A\n #_0182D6: dw RoomDraw_DownwardsEdge1x1_1to16 ; 06B\n #_0182D8: dw RoomDraw_DownwardsLeftCorners2x1_1to16_plus12 ; 06C\n #_0182DA: dw RoomDraw_DownwardsRightCorners2x1_1to16_plus12 ; 06D\n #_0182DC: dw RoomDraw_Nothing_A ; 06E\n #_0182DE: dw RoomDraw_Nothing_A ; 06F\n #_0182E0: dw RoomDraw_DownwardsFloor4x4_1to16 ; 070\n #_0182E2: dw RoomDraw_Downwards1x1Solid_1to16_plus3 ; 071\n #_0182E4: dw RoomDraw_Nothing_B ; 072\n #_0182E6: dw RoomDraw_DownwardsDecor4x4spaced2_1to16 ; 073\n #_0182E8: dw RoomDraw_DownwardsDecor4x4spaced2_1to16 ; 074\n #_0182EA: dw RoomDraw_DownwardsPillar2x4spaced2_1to16 ; 075\n #_0182EC: dw RoomDraw_DownwardsDecor3x4spaced4_1to16 ; 076\n #_0182EE: dw RoomDraw_DownwardsDecor3x4spaced4_1to16 ; 077\n #_0182F0: dw RoomDraw_DownwardsDecor2x2spaced12_1to16 ; 078\n #_0182F2: dw RoomDraw_DownwardsEdge1x1_1to16 ; 079\n #_0182F4: dw RoomDraw_DownwardsEdge1x1_1to16 ; 07A\n #_0182F6: dw RoomDraw_DownwardsDecor2x2spaced12_1to16 ; 07B\n #_0182F8: dw RoomDraw_DownwardsLine1x1_1to16plus1 ; 07C\n #_0182FA: dw RoomDraw_Downwards2x2_1to16 ; 07D\n #_0182FC: dw RoomDraw_Nothing_B ; 07E\n #_0182FE: dw RoomDraw_DownwardsDecor2x4spaced8_1to16 ; 07F\n #_018300: dw RoomDraw_DownwardsDecor2x4spaced8_1to16 ; 080\n #_018302: dw RoomDraw_DownwardsDecor3x4spaced2_1to16 ; 081\n #_018304: dw RoomDraw_DownwardsDecor3x4spaced2_1to16 ; 082\n #_018306: dw RoomDraw_DownwardsDecor3x4spaced2_1to16 ; 083\n #_018308: dw RoomDraw_DownwardsDecor3x4spaced2_1to16 ; 084\n #_01830A: dw RoomDraw_DownwardsCannonHole3x4_1to16 ; 085\n #_01830C: dw RoomDraw_DownwardsCannonHole3x4_1to16 ; 086\n #_01830E: dw RoomDraw_DownwardsPillar2x4spaced2_1to16 ; 087\n #_018310: dw RoomDraw_DownwardsBigRail3x1_1to16plus5 ; 088\n #_018312: dw RoomDraw_DownwardsBlock2x2spaced2_1to16 ; 089\n #_018314: dw RoomDraw_DownwardsHasEdge1x1_1to16_plus23 ; 08A\n #_018316: dw RoomDraw_DownwardsEdge1x1_1to16plus7 ; 08B\n #_018318: dw RoomDraw_DownwardsEdge1x1_1to16plus7 ; 08C\n #_01831A: dw RoomDraw_DownwardsEdge1x1_1to16 ; 08D\n #_01831C: dw RoomDraw_DownwardsEdge1x1_1to16 ; 08E\n #_01831E: dw RoomDraw_DownwardsBar2x5_1to16 ; 08F\n #_018320: dw RoomDraw_Downwards4x2_1to15or26 ; 090\n #_018322: dw RoomDraw_Downwards4x2_1to15or26 ; 091\n #_018324: dw RoomDraw_Downwards2x2_1to15or32 ; 092\n #_018326: dw RoomDraw_Downwards2x2_1to15or32 ; 093\n #_018328: dw RoomDraw_DownwardsFloor4x4_1to16 ; 094\n #_01832A: dw RoomDraw_DownwardsPots2x2_1to16 ; 095\n #_01832C: dw RoomDraw_DownwardsHammerPegs2x2_1to16 ; 096\n #_01832E: dw RoomDraw_Nothing_B ; 097\n #_018330: dw RoomDraw_Nothing_B ; 098\n #_018332: dw RoomDraw_Nothing_B ; 099\n #_018334: dw RoomDraw_Nothing_B ; 09A\n #_018336: dw RoomDraw_Nothing_B ; 09B\n #_018338: dw RoomDraw_Nothing_B ; 09C\n #_01833A: dw RoomDraw_Nothing_B ; 09D\n #_01833C: dw RoomDraw_Nothing_B ; 09E\n #_01833E: dw RoomDraw_Nothing_B ; 09F\n #_018340: dw RoomDraw_DiagonalCeilingTopLeftA ; 0A0\n #_018342: dw RoomDraw_DiagonalCeilingBottomLeftA ; 0A1\n #_018344: dw RoomDraw_DiagonalCeilingTopRightA ; 0A2\n #_018346: dw RoomDraw_DiagonalCeilingBottomRightA ; 0A3\n #_018348: dw RoomDraw_BigHole4x4_1to16 ; 0A4\n #_01834A: dw RoomDraw_DiagonalCeilingTopLeftB ; 0A5\n #_01834C: dw RoomDraw_DiagonalCeilingBottomLeftB ; 0A6\n #_01834E: dw RoomDraw_DiagonalCeilingTopRightB ; 0A7\n #_018350: dw RoomDraw_DiagonalCeilingBottomRightB ; 0A8\n #_018352: dw RoomDraw_DiagonalCeilingTopLeftB ; 0A9\n #_018354: dw RoomDraw_DiagonalCeilingBottomLeftB ; 0AA\n #_018356: dw RoomDraw_DiagonalCeilingTopRightB ; 0AB\n #_018358: dw RoomDraw_DiagonalCeilingBottomRightB ; 0AC\n #_01835A: dw RoomDraw_Nothing_B ; 0AD\n #_01835C: dw RoomDraw_Nothing_B ; 0AE\n #_01835E: dw RoomDraw_Nothing_B ; 0AF\n #_018360: dw RoomDraw_RightwardsEdge1x1_1to16plus7 ; 0B0\n #_018362: dw RoomDraw_RightwardsEdge1x1_1to16plus7 ; 0B1\n #_018364: dw RoomDraw_Rightwards4x4_1to16 ; 0B2\n #_018366: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 0B3\n #_018368: dw RoomDraw_RightwardsHasEdge1x1_1to16_plus2 ; 0B4\n #_01836A: dw RoomDraw_Weird2x4_1_to_16 ; 0B5\n #_01836C: dw RoomDraw_Rightwards2x4_1to15or26 ; 0B6\n #_01836E: dw RoomDraw_Rightwards2x4_1to15or26 ; 0B7\n #_018370: dw RoomDraw_Rightwards2x2_1to15or32 ; 0B8\n #_018372: dw RoomDraw_Rightwards2x2_1to15or32 ; 0B9\n #_018374: dw RoomDraw_Rightwards4x4_1to16 ; 0BA\n #_018376: dw RoomDraw_RightwardsBlock2x2spaced2_1to16 ; 0BB\n #_018378: dw RoomDraw_RightwardsPots2x2_1to16 ; 0BC\n #_01837A: dw RoomDraw_RightwardsHammerPegs2x2_1to16 ; 0BD\n #_01837C: dw RoomDraw_Nothing_B ; 0BE\n #_01837E: dw RoomDraw_Nothing_B ; 0BF\n #_018380: dw RoomDraw_4x4BlocksIn4x4SuperSquare ; 0C0\n #_018382: dw RoomDraw_ClosedChestPlatform ; 0C1\n #_018384: dw RoomDraw_4x4BlocksIn4x4SuperSquare ; 0C2\n #_018386: dw RoomDraw_3x3FloorIn4x4SuperSquare ; 0C3\n #_018388: dw RoomDraw_4x4FloorOneIn4x4SuperSquare ; 0C4\n #_01838A: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0C5\n #_01838C: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0C6\n #_01838E: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0C7\n #_018390: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0C8\n #_018392: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0C9\n #_018394: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0CA\n #_018396: dw RoomDraw_Nothing_E ; 0CB\n #_018398: dw RoomDraw_Nothing_E ; 0CC\n #_01839A: dw RoomDraw_MovingWallWest ; 0CD\n #_01839C: dw RoomDraw_MovingWallEast ; 0CE\n #_01839E: dw RoomDraw_Nothing_D ; 0CF\n #_0183A0: dw RoomDraw_Nothing_D ; 0D0\n #_0183A2: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0D1\n #_0183A4: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0D2\n #_0183A6: dw RoomDraw_CheckIfWallIsMoved ; 0D3\n #_0183A8: dw RoomDraw_CheckIfWallIsMoved ; 0D4\n #_0183AA: dw RoomDraw_CheckIfWallIsMoved ; 0D5\n #_0183AC: dw RoomDraw_CheckIfWallIsMoved ; 0D6\n #_0183AE: dw RoomDraw_3x3FloorIn4x4SuperSquare ; 0D7\n #_0183B0: dw RoomDraw_WaterOverlayA8x8_1to16 ; 0D8\n #_0183B2: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0D9\n #_0183B4: dw RoomDraw_WaterOverlayB8x8_1to16 ; 0DA\n #_0183B6: dw RoomDraw_4x4FloorTwoIn4x4SuperSquare ; 0DB\n #_0183B8: dw RoomDraw_OpenChestPlatform ; 0DC\n #_0183BA: dw RoomDraw_TableRock4x4_1to16 ; 0DD\n #_0183BC: dw RoomDraw_Spike2x2In4x4SuperSquare ; 0DE\n #_0183BE: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0DF\n #_0183C0: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E0\n #_0183C2: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E1\n #_0183C4: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E2\n #_0183C6: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E3\n #_0183C8: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E4\n #_0183CA: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E5\n #_0183CC: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E6\n #_0183CE: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E7\n #_0183D0: dw RoomDraw_4x4FloorIn4x4SuperSquare ; 0E8\n #_0183D2: dw RoomDraw_Nothing_B ; 0E9\n #_0183D4: dw RoomDraw_Nothing_B ; 0EA\n #_0183D6: dw RoomDraw_Nothing_B ; 0EB\n #_0183D8: dw RoomDraw_Nothing_B ; 0EC\n #_0183DA: dw RoomDraw_Nothing_B ; 0ED\n #_0183DC: dw RoomDraw_Nothing_B ; 0EE\n #_0183DE: dw RoomDraw_Nothing_B ; 0EF\n #_0183E0: dw RoomDraw_Nothing_B ; 0F0\n #_0183E2: dw RoomDraw_Nothing_B ; 0F1\n #_0183E4: dw RoomDraw_Nothing_B ; 0F2\n #_0183E6: dw RoomDraw_Nothing_B ; 0F3\n #_0183E8: dw RoomDraw_Nothing_B ; 0F4\n #_0183EA: dw RoomDraw_Nothing_B ; 0F5\n #_0183EC: dw RoomDraw_Nothing_B ; 0F6\n #_0183EE: dw RoomDraw_Nothing_B ; 0F7\n\n; =========================================================\n\n.type1_subtype_2_data_offset\n\n #_0183F0: dw obj0B66-RoomDrawObjectData ; $0B66 ; 100 -\n #_0183F2: dw obj0B86-RoomDrawObjectData ; $0B86 ; 101 -\n #_0183F4: dw obj0BA6-RoomDrawObjectData ; $0BA6 ; 102 -\n #_0183F6: dw obj0BC6-RoomDrawObjectData ; $0BC6 ; 103 -\n #_0183F8: dw obj0C66-RoomDrawObjectData ; $0C66 ; 104 -\n #_0183FA: dw obj0C86-RoomDrawObjectData ; $0C86 ; 105 -\n #_0183FC: dw obj0CA6-RoomDrawObjectData ; $0CA6 ; 106 -\n #_0183FE: dw obj0CC6-RoomDrawObjectData ; $0CC6 ; 107 -\n #_018400: dw obj0BE6-RoomDrawObjectData ; $0BE6 ; 108 -\n #_018402: dw obj0C06-RoomDrawObjectData ; $0C06 ; 109 -\n #_018404: dw obj0C26-RoomDrawObjectData ; $0C26 ; 10A -\n #_018406: dw obj0C46-RoomDrawObjectData ; $0C46 ; 10B -\n #_018408: dw obj0CE6-RoomDrawObjectData ; $0CE6 ; 10C -\n #_01840A: dw obj0D06-RoomDrawObjectData ; $0D06 ; 10D -\n #_01840C: dw obj0D26-RoomDrawObjectData ; $0D26 ; 10E -\n #_01840E: dw obj0D46-RoomDrawObjectData ; $0D46 ; 10F -\n #_018410: dw obj0D66-RoomDrawObjectData ; $0D66 ; 110 -\n #_018412: dw obj0D7E-RoomDrawObjectData ; $0D7E ; 111 -\n #_018414: dw obj0D96-RoomDrawObjectData ; $0D96 ; 112 -\n #_018416: dw obj0DAE-RoomDrawObjectData ; $0DAE ; 113 -\n #_018418: dw obj0DC6-RoomDrawObjectData ; $0DC6 ; 114 -\n #_01841A: dw obj0DDE-RoomDrawObjectData ; $0DDE ; 115 -\n #_01841C: dw obj0DF6-RoomDrawObjectData ; $0DF6 ; 116 -\n #_01841E: dw obj0E0E-RoomDrawObjectData ; $0E0E ; 117 -\n #_018420: dw obj0398-RoomDrawObjectData ; $0398 ; 118 -\n #_018422: dw obj03A0-RoomDrawObjectData ; $03A0 ; 119 -\n #_018424: dw obj03A8-RoomDrawObjectData ; $03A8 ; 11A -\n #_018426: dw obj03B0-RoomDrawObjectData ; $03B0 ; 11B -\n #_018428: dw obj0E32-RoomDrawObjectData ; $0E32 ; 11C -\n #_01842A: dw obj0E26-RoomDrawObjectData ; $0E26 ; 11D -\n #_01842C: dw obj0EA2-RoomDrawObjectData ; $0EA2 ; 11E -\n #_01842E: dw obj0E9A-RoomDrawObjectData ; $0E9A ; 11F -\n #_018430: dw obj0ECA-RoomDrawObjectData ; $0ECA ; 120 -\n #_018432: dw obj0ED2-RoomDrawObjectData ; $0ED2 ; 121 -\n #_018434: dw obj0EDE-RoomDrawObjectData ; $0EDE ; 122 -\n #_018436: dw obj0EDE-RoomDrawObjectData ; $0EDE ; 123 -\n #_018438: dw obj0F1E-RoomDrawObjectData ; $0F1E ; 124 -\n #_01843A: dw obj0F3E-RoomDrawObjectData ; $0F3E ; 125 -\n #_01843C: dw obj0F5E-RoomDrawObjectData ; $0F5E ; 126 -\n #_01843E: dw obj0F6A-RoomDrawObjectData ; $0F6A ; 127 -\n #_018440: dw obj0EF6-RoomDrawObjectData ; $0EF6 ; 128 -\n #_018442: dw obj0F72-RoomDrawObjectData ; $0F72 ; 129 -\n #_018444: dw obj0F92-RoomDrawObjectData ; $0F92 ; 12A -\n #_018446: dw obj0FA2-RoomDrawObjectData ; $0FA2 ; 12B -\n #_018448: dw obj0FA2-RoomDrawObjectData ; $0FA2 ; 12C -\n #_01844A: dw obj1088-RoomDrawObjectData ; $1088 ; 12D -\n #_01844C: dw obj10A8-RoomDrawObjectData ; $10A8 ; 12E -\n #_01844E: dw obj10A8-RoomDrawObjectData ; $10A8 ; 12F -\n #_018450: dw obj10C8-RoomDrawObjectData ; $10C8 ; 130 -\n #_018452: dw obj10C8-RoomDrawObjectData ; $10C8 ; 131 -\n #_018454: dw obj10C8-RoomDrawObjectData ; $10C8 ; 132 -\n #_018456: dw obj10C8-RoomDrawObjectData ; $10C8 ; 133 -\n #_018458: dw obj0E52-RoomDrawObjectData ; $0E52 ; 134 -\n #_01845A: dw obj1108-RoomDrawObjectData ; $1108 ; 135 -\n #_01845C: dw obj1108-RoomDrawObjectData ; $1108 ; 136 -\n #_01845E: dw obj12A8-RoomDrawObjectData ; $12A8 ; 137 -\n #_018460: dw obj1148-RoomDrawObjectData ; $1148 ; 138 -\n #_018462: dw obj1160-RoomDrawObjectData ; $1160 ; 139 -\n #_018464: dw obj1178-RoomDrawObjectData ; $1178 ; 13A -\n #_018466: dw obj1190-RoomDrawObjectData ; $1190 ; 13B -\n #_018468: dw obj1458-RoomDrawObjectData ; $1458 ; 13C -\n #_01846A: dw obj1488-RoomDrawObjectData ; $1488 ; 13D -\n #_01846C: dw obj2062-RoomDrawObjectData ; $2062 ; 13E -\n #_01846E: dw obj2086-RoomDrawObjectData ; $2086 ; 13F -\n\n; ---------------------------------------------------------\n\n.type1_subtype_2_routine\n #_018470: dw RoomDraw_4x4 ; 100\n #_018472: dw RoomDraw_4x4 ; 101\n #_018474: dw RoomDraw_4x4 ; 102\n #_018476: dw RoomDraw_4x4 ; 103\n #_018478: dw RoomDraw_4x4 ; 104\n #_01847A: dw RoomDraw_4x4 ; 105\n #_01847C: dw RoomDraw_4x4 ; 106\n #_01847E: dw RoomDraw_4x4 ; 107\n #_018480: dw RoomDraw_4x4Corner_BothBG ; 108\n #_018482: dw RoomDraw_4x4Corner_BothBG ; 109\n #_018484: dw RoomDraw_4x4Corner_BothBG ; 10A\n #_018486: dw RoomDraw_4x4Corner_BothBG ; 10B\n #_018488: dw RoomDraw_4x4Corner_BothBG ; 10C\n #_01848A: dw RoomDraw_4x4Corner_BothBG ; 10D\n #_01848C: dw RoomDraw_4x4Corner_BothBG ; 10E\n #_01848E: dw RoomDraw_4x4Corner_BothBG ; 10F\n #_018490: dw RoomDraw_WeirdCornerBottom_BothBG ; 110\n #_018492: dw RoomDraw_WeirdCornerBottom_BothBG ; 111\n #_018494: dw RoomDraw_WeirdCornerBottom_BothBG ; 112\n #_018496: dw RoomDraw_WeirdCornerBottom_BothBG ; 113\n #_018498: dw RoomDraw_WeirdCornerTop_BothBG ; 114\n #_01849A: dw RoomDraw_WeirdCornerTop_BothBG ; 115\n #_01849C: dw RoomDraw_WeirdCornerTop_BothBG ; 116\n #_01849E: dw RoomDraw_WeirdCornerTop_BothBG ; 117\n #_0184A0: dw RoomDraw_Rightwards2x2 ; 118\n #_0184A2: dw RoomDraw_Rightwards2x2 ; 119\n #_0184A4: dw RoomDraw_Rightwards2x2 ; 11A\n #_0184A6: dw RoomDraw_Rightwards2x2 ; 11B\n #_0184A8: dw RoomDraw_4x4 ; 11C\n #_0184AA: dw RoomDraw_Single2x3Pillar ; 11D\n #_0184AC: dw RoomDraw_Single2x2 ; 11E\n #_0184AE: dw RoomDraw_EnabledStarSwitch ; 11F\n #_0184B0: dw RoomDraw_LitTorch ; 120\n #_0184B2: dw RoomDraw_Single2x3Pillar ; 121\n #_0184B4: dw RoomDraw_Bed4x5 ; 122\n #_0184B6: dw RoomDraw_TableRock4x3 ; 123\n #_0184B8: dw RoomDraw_4x4 ; 124\n #_0184BA: dw RoomDraw_4x4 ; 125\n #_0184BC: dw RoomDraw_Single2x3Pillar ; 126\n #_0184BE: dw RoomDraw_Rightwards2x2 ; 127\n #_0184C0: dw RoomDraw_Bed4x5 ; 128\n #_0184C2: dw RoomDraw_4x4 ; 129\n #_0184C4: dw RoomDraw_PortraitOfMario ; 12A\n #_0184C6: dw RoomDraw_Rightwards2x2 ; 12B\n #_0184C8: dw RoomDraw_DrawRightwards3x6 ; 12C\n #_0184CA: dw RoomDraw_InterRoomFatStairsUp ; 12D\n #_0184CC: dw RoomDraw_InterRoomFatStairsDown_A ; 12E\n #_0184CE: dw RoomDraw_InterRoomFatStairsDown_B ; 12F\n #_0184D0: dw RoomDraw_AutoStairs_North_MultiLayer_A ; 130\n #_0184D2: dw RoomDraw_AutoStairs_North_MultiLayer_B ; 131\n #_0184D4: dw RoomDraw_AutoStairs_North_MergedLayer_A ; 132\n #_0184D6: dw RoomDraw_AutoStairs_North_MergedLayer_B ; 133\n #_0184D8: dw RoomDraw_Rightwards2x2 ; 134\n #_0184DA: dw RoomDraw_WaterHopStairs_A ; 135\n #_0184DC: dw RoomDraw_WaterHopStairs_B ; 136\n #_0184DE: dw RoomDraw_DamFloodGate ; 137\n #_0184E0: dw RoomDraw_SpiralStairsGoingUpUpper ; 138\n #_0184E2: dw RoomDraw_SpiralStairsGoingDownUpper ; 139\n #_0184E4: dw RoomDraw_SpiralStairsGoingUpLower ; 13A\n #_0184E6: dw RoomDraw_SpiralStairsGoingDownLower ; 13B\n #_0184E8: dw RoomDraw_SanctuaryWall ; 13C\n #_0184EA: dw RoomDraw_TableRock4x3 ; 13D\n #_0184EC: dw RoomDraw_Utility6x3 ; 13E\n #_0184EE: dw RoomDraw_MagicBatAltar ; 13F\n\n; =========================================================\n\n.type1_subtype_3_data_offset\n\n #_0184F0: dw obj1614-RoomDrawObjectData ; $1614 ; 200 -\n #_0184F2: dw obj162C-RoomDrawObjectData ; $162C ; 201 -\n #_0184F4: dw obj1654-RoomDrawObjectData ; $1654 ; 202 -\n #_0184F6: dw obj0A0E-RoomDrawObjectData ; $0A0E ; 203 -\n #_0184F8: dw obj0A0C-RoomDrawObjectData ; $0A0C ; 204 -\n #_0184FA: dw obj09FC-RoomDrawObjectData ; $09FC ; 205 -\n #_0184FC: dw obj09FE-RoomDrawObjectData ; $09FE ; 206 -\n #_0184FE: dw obj0A00-RoomDrawObjectData ; $0A00 ; 207 -\n #_018500: dw obj0A02-RoomDrawObjectData ; $0A02 ; 208 -\n #_018502: dw obj0A04-RoomDrawObjectData ; $0A04 ; 209 -\n #_018504: dw obj0A06-RoomDrawObjectData ; $0A06 ; 20A -\n #_018506: dw obj0A08-RoomDrawObjectData ; $0A08 ; 20B -\n #_018508: dw obj0A0A-RoomDrawObjectData ; $0A0A ; 20C -\n #_01850A: dw $0000 ; $0000 ; 20D -\n #_01850C: dw obj0A10-RoomDrawObjectData ; $0A10 ; 20E -\n #_01850E: dw obj0A12-RoomDrawObjectData ; $0A12 ; 20F -\n #_018510: dw obj1DDA-RoomDrawObjectData ; $1DDA ; 210 -\n #_018512: dw obj1DE2-RoomDrawObjectData ; $1DE2 ; 211 -\n #_018514: dw obj1DD6-RoomDrawObjectData ; $1DD6 ; 212 -\n #_018516: dw obj1DEA-RoomDrawObjectData ; $1DEA ; 213 -\n #_018518: dw obj15FC-RoomDrawObjectData ; $15FC ; 214 -\n #_01851A: dw obj1DFA-RoomDrawObjectData ; $1DFA ; 215 -\n #_01851C: dw obj1DF2-RoomDrawObjectData ; $1DF2 ; 216 -\n #_01851E: dw obj1488-RoomDrawObjectData ; $1488 ; 217 -\n #_018520: dw obj1494-RoomDrawObjectData ; $1494 ; 218 -\n #_018522: dw obj149C-RoomDrawObjectData ; $149C ; 219 -\n #_018524: dw obj14A4-RoomDrawObjectData ; $14A4 ; 21A -\n #_018526: dw obj10E8-RoomDrawObjectData ; $10E8 ; 21B -\n #_018528: dw obj10E8-RoomDrawObjectData ; $10E8 ; 21C -\n #_01852A: dw obj10E8-RoomDrawObjectData ; $10E8 ; 21D -\n #_01852C: dw obj11A8-RoomDrawObjectData ; $11A8 ; 21E -\n #_01852E: dw obj11C8-RoomDrawObjectData ; $11C8 ; 21F -\n #_018530: dw obj11E8-RoomDrawObjectData ; $11E8 ; 220 -\n #_018532: dw obj1208-RoomDrawObjectData ; $1208 ; 221 -\n #_018534: dw obj03B8-RoomDrawObjectData ; $03B8 ; 222 -\n #_018536: dw obj03C0-RoomDrawObjectData ; $03C0 ; 223 -\n #_018538: dw obj03C8-RoomDrawObjectData ; $03C8 ; 224 -\n #_01853A: dw obj03D0-RoomDrawObjectData ; $03D0 ; 225 -\n #_01853C: dw obj1228-RoomDrawObjectData ; $1228 ; 226 -\n #_01853E: dw obj1248-RoomDrawObjectData ; $1248 ; 227 -\n #_018540: dw obj1268-RoomDrawObjectData ; $1268 ; 228 -\n #_018542: dw obj1288-RoomDrawObjectData ; $1288 ; 229 -\n #_018544: dw $0000 ; $0000 ; 22A -\n #_018546: dw obj0E5A-RoomDrawObjectData ; $0E5A ; 22B -\n #_018548: dw obj0E62-RoomDrawObjectData ; $0E62 ; 22C -\n #_01854A: dw $0000 ; $0000 ; 22D -\n #_01854C: dw $0000 ; $0000 ; 22E -\n #_01854E: dw obj0E82-RoomDrawObjectData ; $0E82 ; 22F -\n #_018550: dw obj0E8A-RoomDrawObjectData ; $0E8A ; 230 -\n #_018552: dw obj14AC-RoomDrawObjectData ; $14AC ; 231 -\n #_018554: dw obj14C4-RoomDrawObjectData ; $14C4 ; 232 -\n #_018556: dw obj10E8-RoomDrawObjectData ; $10E8 ; 233 -\n #_018558: dw obj1614-RoomDrawObjectData ; $1614 ; 234 -\n #_01855A: dw obj1614-RoomDrawObjectData ; $1614 ; 235 -\n #_01855C: dw obj1614-RoomDrawObjectData ; $1614 ; 236 -\n #_01855E: dw obj1614-RoomDrawObjectData ; $1614 ; 237 -\n #_018560: dw obj1614-RoomDrawObjectData ; $1614 ; 238 -\n #_018562: dw obj1614-RoomDrawObjectData ; $1614 ; 239 -\n #_018564: dw obj1CBE-RoomDrawObjectData ; $1CBE ; 23A -\n #_018566: dw obj1CEE-RoomDrawObjectData ; $1CEE ; 23B -\n #_018568: dw obj1D1E-RoomDrawObjectData ; $1D1E ; 23C -\n #_01856A: dw obj1D4E-RoomDrawObjectData ; $1D4E ; 23D -\n #_01856C: dw obj1D8E-RoomDrawObjectData ; $1D8E ; 23E -\n #_01856E: dw obj1D96-RoomDrawObjectData ; $1D96 ; 23F -\n #_018570: dw obj1D9E-RoomDrawObjectData ; $1D9E ; 240 -\n #_018572: dw obj1DA6-RoomDrawObjectData ; $1DA6 ; 241 -\n #_018574: dw obj1DAE-RoomDrawObjectData ; $1DAE ; 242 -\n #_018576: dw obj1DB6-RoomDrawObjectData ; $1DB6 ; 243 -\n #_018578: dw obj1DBE-RoomDrawObjectData ; $1DBE ; 244 -\n #_01857A: dw obj1DC6-RoomDrawObjectData ; $1DC6 ; 245 -\n #_01857C: dw obj1DCE-RoomDrawObjectData ; $1DCE ; 246 -\n #_01857E: dw obj0220-RoomDrawObjectData ; $0220 ; 247 -\n #_018580: dw obj0260-RoomDrawObjectData ; $0260 ; 248 -\n #_018582: dw obj0280-RoomDrawObjectData ; $0280 ; 249 -\n #_018584: dw obj1F3A-RoomDrawObjectData ; $1F3A ; 24A -\n #_018586: dw obj1F62-RoomDrawObjectData ; $1F62 ; 24B -\n #_018588: dw obj1F92-RoomDrawObjectData ; $1F92 ; 24C -\n #_01858A: dw obj1FF2-RoomDrawObjectData ; $1FF2 ; 24D -\n #_01858C: dw obj2016-RoomDrawObjectData ; $2016 ; 24E -\n #_01858E: dw obj1F42-RoomDrawObjectData ; $1F42 ; 24F -\n #_018590: dw obj0EAA-RoomDrawObjectData ; $0EAA ; 250 -\n #_018592: dw obj1F4A-RoomDrawObjectData ; $1F4A ; 251 -\n #_018594: dw obj1F52-RoomDrawObjectData ; $1F52 ; 252 -\n #_018596: dw obj1F5A-RoomDrawObjectData ; $1F5A ; 253 -\n #_018598: dw obj202E-RoomDrawObjectData ; $202E ; 254 -\n #_01859A: dw obj2062-RoomDrawObjectData ; $2062 ; 255 -\n #_01859C: dw obj09B8-RoomDrawObjectData ; $09B8 ; 256 -\n #_01859E: dw obj09C0-RoomDrawObjectData ; $09C0 ; 257 -\n #_0185A0: dw obj09C8-RoomDrawObjectData ; $09C8 ; 258 -\n #_0185A2: dw obj09D0-RoomDrawObjectData ; $09D0 ; 259 -\n #_0185A4: dw obj0FA2-RoomDrawObjectData ; $0FA2 ; 25A -\n #_0185A6: dw obj0FB2-RoomDrawObjectData ; $0FB2 ; 25B -\n #_0185A8: dw obj0FC4-RoomDrawObjectData ; $0FC4 ; 25C -\n #_0185AA: dw obj0FF4-RoomDrawObjectData ; $0FF4 ; 25D -\n #_0185AC: dw obj1018-RoomDrawObjectData ; $1018 ; 25E -\n #_0185AE: dw obj1020-RoomDrawObjectData ; $1020 ; 25F -\n #_0185B0: dw obj15B4-RoomDrawObjectData ; $15B4 ; 260 -\n #_0185B2: dw obj15D8-RoomDrawObjectData ; $15D8 ; 261 -\n #_0185B4: dw obj20F6-RoomDrawObjectData ; $20F6 ; 262 -\n #_0185B6: dw obj0EBA-RoomDrawObjectData ; $0EBA ; 263 -\n #_0185B8: dw obj22E6-RoomDrawObjectData ; $22E6 ; 264 -\n #_0185BA: dw obj22EE-RoomDrawObjectData ; $22EE ; 265 -\n #_0185BC: dw obj05DA-RoomDrawObjectData ; $05DA ; 266 -\n #_0185BE: dw obj281E-RoomDrawObjectData ; $281E ; 267 -\n #_0185C0: dw obj2AE0-RoomDrawObjectData ; $2AE0 ; 268 -\n #_0185C2: dw obj2D2A-RoomDrawObjectData ; $2D2A ; 269 -\n #_0185C4: dw obj2F2A-RoomDrawObjectData ; $2F2A ; 26A -\n #_0185C6: dw obj22F6-RoomDrawObjectData ; $22F6 ; 26B -\n #_0185C8: dw obj2316-RoomDrawObjectData ; $2316 ; 26C -\n #_0185CA: dw obj232E-RoomDrawObjectData ; $232E ; 26D -\n #_0185CC: dw obj2346-RoomDrawObjectData ; $2346 ; 26E -\n #_0185CE: dw obj235E-RoomDrawObjectData ; $235E ; 26F -\n #_0185D0: dw obj2376-RoomDrawObjectData ; $2376 ; 270 -\n #_0185D2: dw obj23B6-RoomDrawObjectData ; $23B6 ; 271 -\n #_0185D4: dw obj1E9A-RoomDrawObjectData ; $1E9A ; 272 -\n #_0185D6: dw $0000 ; $0000 ; 273 -\n #_0185D8: dw obj2436-RoomDrawObjectData ; $2436 ; 274 -\n #_0185DA: dw obj149C-RoomDrawObjectData ; $149C ; 275 -\n #_0185DC: dw obj24B6-RoomDrawObjectData ; $24B6 ; 276 -\n #_0185DE: dw obj24E6-RoomDrawObjectData ; $24E6 ; 277 -\n #_0185E0: dw obj2516-RoomDrawObjectData ; $2516 ; 278 -\n #_0185E2: dw obj1028-RoomDrawObjectData ; $1028 ; 279 -\n #_0185E4: dw obj1040-RoomDrawObjectData ; $1040 ; 27A -\n #_0185E6: dw obj1060-RoomDrawObjectData ; $1060 ; 27B -\n #_0185E8: dw obj1070-RoomDrawObjectData ; $1070 ; 27C -\n #_0185EA: dw obj1078-RoomDrawObjectData ; $1078 ; 27D -\n #_0185EC: dw obj1080-RoomDrawObjectData ; $1080 ; 27E -\n #_0185EE: dw $0000 ; $0000 ; 27F -\n\n; ---------------------------------------------------------\n\n.type1_subtype_3_routine\n #_0185F0: dw RoomDraw_EmptyWaterFace ; 200\n #_0185F2: dw RoomDraw_SpittingWaterFace ; 201\n #_0185F4: dw RoomDraw_DrenchingWaterFace ; 202\n #_0185F6: dw RoomDraw_SomariaLine_increment_count ; 203\n #_0185F8: dw RoomDraw_SomariaLine ; 204\n #_0185FA: dw RoomDraw_SomariaLine ; 205\n #_0185FC: dw RoomDraw_SomariaLine ; 206\n #_0185FE: dw RoomDraw_SomariaLine ; 207\n #_018600: dw RoomDraw_SomariaLine ; 208\n #_018602: dw RoomDraw_SomariaLine ; 209\n #_018604: dw RoomDraw_SomariaLine ; 20A\n #_018606: dw RoomDraw_SomariaLine ; 20B\n #_018608: dw RoomDraw_SomariaLine ; 20C\n #_01860A: dw RoomDraw_PrisonCell ; 20D\n #_01860C: dw RoomDraw_SomariaLine_increment_count ; 20E\n #_01860E: dw RoomDraw_SomariaLine ; 20F\n #_018610: dw RoomDraw_Rightwards2x2 ; 210\n #_018612: dw RoomDraw_Rightwards2x2 ; 211\n #_018614: dw RoomDraw_RupeeFloor ; 212\n #_018616: dw RoomDraw_Rightwards2x2 ; 213\n #_018618: dw RoomDraw_TableRock4x3 ; 214\n #_01861A: dw RoomDraw_KholdstareShell ; 215\n #_01861C: dw RoomDraw_HammerPegSingle ; 216\n #_01861E: dw RoomDraw_PrisonCell ; 217\n #_018620: dw RoomDraw_BigKeyLock ; 218\n #_018622: dw RoomDraw_Chest ; 219\n #_018624: dw RoomDraw_OpenChest ; 21A\n #_018626: dw RoomDraw_AutoStairs_South_MultiLayer_A ; 21B\n #_018628: dw RoomDraw_AutoStairs_South_MultiLayer_B ; 21C\n #_01862A: dw RoomDraw_AutoStairs_South_MultiLayer_C ; 21D\n #_01862C: dw RoomDraw_StraightInterroomStairsGoingUpNorthUpper ; 21E\n #_01862E: dw RoomDraw_StraightInterroomStairsGoingDownNorthUpper ; 21F\n #_018630: dw RoomDraw_StraightInterroomStairsGoingUpSouthUpper ; 220\n #_018632: dw RoomDraw_StraightInterroomStairsGoingDownSouthUpper ; 221\n #_018634: dw RoomDraw_Rightwards2x2 ; 222\n #_018636: dw RoomDraw_Rightwards2x2 ; 223\n #_018638: dw RoomDraw_Rightwards2x2 ; 224\n #_01863A: dw RoomDraw_Rightwards2x2 ; 225\n #_01863C: dw RoomDraw_StraightInterroomStairsGoingUpNorthLower ; 226\n #_01863E: dw RoomDraw_StraightInterroomStairsGoingDownNorthLower ; 227\n #_018640: dw RoomDraw_StraightInterroomStairsGoingUpSouthLower ; 228\n #_018642: dw RoomDraw_StraightInterroomStairsGoingDownSouthLower ; 229\n #_018644: dw RoomDraw_LampCones ; 22A\n #_018646: dw RoomDraw_WeirdGloveRequiredPot ; 22B\n #_018648: dw RoomDraw_BigGrayRock ; 22C\n #_01864A: dw RoomDraw_AgahnimsAltar ; 22D\n #_01864C: dw RoomDraw_AgahnimsWindows ; 22E\n #_01864E: dw RoomDraw_SinglePot ; 22F\n #_018650: dw RoomDraw_WeirdUglyPot ; 230\n #_018652: dw RoomDraw_BigChest ; 231\n #_018654: dw RoomDraw_OpenBigChest ; 232\n #_018656: dw RoomDraw_AutoStairs_South_MergedLayer ; 233\n #_018658: dw RoomDraw_ChestPlatformVerticalWall ; 234\n #_01865A: dw RoomDraw_ChestPlatformVerticalWall ; 235\n #_01865C: dw RoomDraw_DrawRightwards3x6 ; 236\n #_01865E: dw RoomDraw_DrawRightwards3x6 ; 237\n #_018660: dw RoomDraw_ChestPlatformVerticalWall ; 238\n #_018662: dw RoomDraw_ChestPlatformVerticalWall ; 239\n #_018664: dw RoomDraw_VerticalTurtleRockPipe ; 23A\n #_018666: dw RoomDraw_VerticalTurtleRockPipe ; 23B\n #_018668: dw RoomDraw_HorizontalTurtleRockPipe ; 23C\n #_01866A: dw RoomDraw_HorizontalTurtleRockPipe ; 23D\n #_01866C: dw RoomDraw_Rightwards2x2 ; 23E\n #_01866E: dw RoomDraw_Rightwards2x2 ; 23F\n #_018670: dw RoomDraw_Rightwards2x2 ; 240\n #_018672: dw RoomDraw_Rightwards2x2 ; 241\n #_018674: dw RoomDraw_Rightwards2x2 ; 242\n #_018676: dw RoomDraw_Rightwards2x2 ; 243\n #_018678: dw RoomDraw_Rightwards2x2 ; 244\n #_01867A: dw RoomDraw_Rightwards2x2 ; 245\n #_01867C: dw RoomDraw_Rightwards2x2 ; 246\n #_01867E: dw RoomDraw_BombableFloor ; 247\n #_018680: dw RoomDraw_4x4 ; 248\n #_018682: dw RoomDraw_Rightwards2x2 ; 249\n #_018684: dw RoomDraw_Rightwards2x2 ; 24A\n #_018686: dw RoomDraw_BigWallDecor ; 24B\n #_018688: dw RoomDraw_SmithyFurnace ; 24C\n #_01868A: dw RoomDraw_Utility6x3 ; 24D\n #_01868C: dw RoomDraw_TableRock4x3 ; 24E\n #_01868E: dw RoomDraw_Rightwards2x2 ; 24F\n #_018690: dw RoomDraw_Single2x2 ; 250\n #_018692: dw RoomDraw_Rightwards2x2 ; 251\n #_018694: dw RoomDraw_Rightwards2x2 ; 252\n #_018696: dw RoomDraw_Rightwards2x2 ; 253\n #_018698: dw RoomDraw_FortuneTellerRoom ; 254\n #_01869A: dw RoomDraw_Utility3x5 ; 255\n #_01869C: dw RoomDraw_Rightwards2x2 ; 256\n #_01869E: dw RoomDraw_Rightwards2x2 ; 257\n #_0186A0: dw RoomDraw_Rightwards2x2 ; 258\n #_0186A2: dw RoomDraw_Rightwards2x2 ; 259\n #_0186A4: dw RoomDraw_TableBowl ; 25A\n #_0186A6: dw RoomDraw_Utility3x5 ; 25B\n #_0186A8: dw RoomDraw_HorizontalTurtleRockPipe ; 25C\n #_0186AA: dw RoomDraw_Utility6x3 ; 25D\n #_0186AC: dw RoomDraw_Rightwards2x2 ; 25E\n #_0186AE: dw RoomDraw_Rightwards2x2 ; 25F\n #_0186B0: dw RoomDraw_ArcheryGameTargetDoor ; 260\n #_0186B2: dw RoomDraw_ArcheryGameTargetDoor ; 261\n #_0186B4: dw RoomDraw_VitreousGooGraphics ; 262\n #_0186B6: dw RoomDraw_Rightwards2x2 ; 263\n #_0186B8: dw RoomDraw_Rightwards2x2 ; 264\n #_0186BA: dw RoomDraw_Rightwards2x2 ; 265\n #_0186BC: dw RoomDraw_4x4 ; 266\n #_0186BE: dw RoomDraw_TableRock4x3 ; 267\n #_0186C0: dw RoomDraw_TableRock4x3 ; 268\n #_0186C2: dw RoomDraw_SolidWallDecor3x4 ; 269\n #_0186C4: dw RoomDraw_SolidWallDecor3x4 ; 26A\n #_0186C6: dw RoomDraw_4x4 ; 26B\n #_0186C8: dw RoomDraw_TableRock4x3 ; 26C\n #_0186CA: dw RoomDraw_TableRock4x3 ; 26D\n #_0186CC: dw RoomDraw_SolidWallDecor3x4 ; 26E\n #_0186CE: dw RoomDraw_SolidWallDecor3x4 ; 26F\n #_0186D0: dw RoomDraw_LightBeamOnFloor ; 270\n #_0186D2: dw RoomDraw_BigLightBeamOnFloor ; 271\n #_0186D4: dw RoomDraw_TrinexxShell ; 272\n #_0186D6: dw RoomDraw_BG2MaskFull ; 273\n #_0186D8: dw RoomDraw_FloorLight ; 274\n #_0186DA: dw RoomDraw_Rightwards2x2 ; 275\n #_0186DC: dw RoomDraw_BigWallDecor ; 276\n #_0186DE: dw RoomDraw_BigWallDecor ; 277\n #_0186E0: dw RoomDraw_GanonTriforceFloorDecor ; 278\n #_0186E2: dw RoomDraw_TableRock4x3 ; 279\n #_0186E4: dw RoomDraw_4x4 ; 27A\n #_0186E6: dw RoomDraw_VitreousGooDamage ; 27B\n #_0186E8: dw RoomDraw_Rightwards2x2 ; 27C\n #_0186EA: dw RoomDraw_Rightwards2x2 ; 27D\n #_0186EC: dw RoomDraw_Rightwards2x2 ; 27E\n #_0186EE: dw RoomDraw_Nothing_B ; 27F\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorDrawRoutines", + "code": "DoorDrawRoutines:\n #_0186F0: dw RoomDraw_Door_North\n #_0186F2: dw RoomDraw_Door_South\n #_0186F4: dw RoomDraw_Door_West\n #_0186F6: dw RoomDraw_Door_East\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_TilemapPointers", + "code": "RoomData_TilemapPointers:\n.upper_layer\n #_0186F8: dl $7E2000+$000\n #_0186FB: dl $7E2000+$002\n #_0186FE: dl $7E2000+$004\n #_018701: dl $7E2000+$006\n\n #_018704: dl $7E2000+$080\n #_018707: dl $7E2000+$082\n #_01870A: dl $7E2000+$084\n #_01870D: dl $7E2000+$086\n\n #_018710: dl $7E2000+$100\n #_018713: dl $7E2000+$180\n #_018716: dl $7E2000+$200\n\n; ---------------------------------------------------------\n\n.lower_layer\n #_018719: dl $7E4000+$000\n #_01871C: dl $7E4000+$002\n #_01871F: dl $7E4000+$004\n #_018722: dl $7E4000+$006\n\n #_018725: dl $7E4000+$080\n #_018728: dl $7E4000+$082\n #_01872B: dl $7E4000+$084\n #_01872E: dl $7E4000+$086\n\n #_018731: dl $7E4000+$100\n #_018734: dl $7E4000+$180\n #_018737: dl $7E4000+$200\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadRoom", + "code": "Underworld_LoadRoom:\n #_01873A: JSR Underworld_LoadHeader\n\n #_01873D: STZ.w $03F4\n\n #_018740: REP #$30\n\n #_018742: LDX.w $0110 ; this holds roomID*3\n\n #_018745: LDA.l RoomData_ObjectDataPointers+1,X\n #_018749: STA.b $B8\n\n #_01874B: LDA.l RoomData_ObjectDataPointers+0,X\n #_01874F: STA.b $B7\n\n #_018751: LDA.b $AD\n #_018753: STA.w $0428\n\n #_018756: LDA.w #$FF30\n #_018759: STA.w $041C\n\n; ---------------------------------------------------------\n\n #_01875C: STZ.w $041A\n #_01875F: STZ.w $0420\n #_018762: STZ.w $0312\n #_018765: STZ.w $0310\n #_018768: STZ.w $0422\n #_01876B: STZ.w $0424\n\n #_01876E: LDA.w #$FFFF\n #_018771: STA.w $0436\n\n #_018774: STZ.w $0452\n #_018777: STZ.w $0454\n #_01877A: STZ.w $0456\n\n #_01877D: STZ.w $068A\n #_018780: STZ.w $044E\n #_018783: STZ.w $0450\n\n #_018786: STZ.b $FC\n\n; ---------------------------------------------------------\n\n #_018788: STZ.w $045C\n #_01878B: STZ.w $0438\n #_01878E: STZ.w $043A\n #_018791: STZ.w $043C\n\n #_018794: STZ.w $043E\n #_018797: STZ.w $0440\n #_01879A: STZ.w $0442\n #_01879D: STZ.w $0444\n\n #_0187A0: STZ.w $0446\n #_0187A3: STZ.w $0448\n #_0187A6: STZ.w $049A\n #_0187A9: STZ.w $049C\n\n #_0187AC: STZ.w $049E\n #_0187AF: STZ.w $04AE\n\n #_0187B2: STZ.w $047E\n #_0187B5: STZ.w $0480\n #_0187B8: STZ.w $0482\n #_0187BB: STZ.w $0484\n\n #_0187BE: STZ.w $04A2\n #_0187C1: STZ.w $04A4\n #_0187C4: STZ.w $04A6\n #_0187C7: STZ.w $04A8\n\n #_0187CA: STZ.w $19E2\n #_0187CD: STZ.w $19E4\n #_0187D0: STZ.w $19E6\n #_0187D3: STZ.w $19E8\n #_0187D6: STZ.w $19E0\n\n #_0187D9: STZ.w $0430\n #_0187DC: STZ.w $0432\n #_0187DF: STZ.w $042C\n #_0187E2: STZ.w $042E\n\n #_0187E5: STZ.w $0496\n #_0187E8: STZ.w $0498\n\n #_0187EB: STZ.w $04B0\n\n; ---------------------------------------------------------\n\n #_0187EE: LDX.w #$001E\n\n #_0187F1: STZ.w $0460\n\n.next_obj_clear\n #_0187F4: STZ.w $19A0,X\n #_0187F7: STZ.w $1980,X\n #_0187FA: STZ.w $19C0,X\n\n #_0187FD: STZ.w $04F0,X\n #_018800: STZ.w $0500,X\n #_018803: STZ.w $0520,X\n #_018806: STZ.w $0540,X\n\n #_018809: DEX\n #_01880A: DEX\n #_01880B: BPL .next_obj_clear\n\n; ---------------------------------------------------------\n\n #_01880D: STZ.b $BA\n\n #_01880F: JSR RoomDraw_DrawFloors\n\n #_018812: LDY.b $BA\n #_018814: PHY\n\n #_018815: LDA.b [$B7],Y\n #_018817: AND.w #$00FF\n #_01881A: STA.w $040E\n\n #_01881D: LSR A\n #_01881E: LSR A\n #_01881F: STA.b $00\n\n #_018821: ASL A\n #_018822: CLC\n #_018823: ADC.b $00\n #_018825: TAX\n\n #_018826: LDA.l RoomDraw_LayoutPointers+1,X\n #_01882A: STA.b $B8\n\n #_01882C: LDA.l RoomDraw_LayoutPointers+0,X\n #_018830: STA.b $B7\n\n #_018832: STZ.b $BA\n\n #_018834: JSR RoomDraw_DrawAllObjects\n\n #_018837: PLY\n #_018838: INY\n #_018839: STY.b $BA\n\n; ---------------------------------------------------------\n\n #_01883B: LDX.w $0110\n\n #_01883E: LDA.l RoomData_ObjectDataPointers+1,X\n #_018842: STA.b $B8\n\n #_018844: LDA.l RoomData_ObjectDataPointers+0,X\n #_018848: STA.b $B7\n\n #_01884A: JSR RoomDraw_DrawAllObjects\n\n #_01884D: INC.b $BA\n #_01884F: INC.b $BA\n\n; ---------------------------------------------------------\n\n #_018851: LDX.w #$001E\n\n.save_next_lower_layer_pointer\n #_018854: LDA.l RoomData_TilemapPointers_lower_layer+1,X\n #_018858: STA.b $C0,X\n\n #_01885A: DEX\n #_01885B: DEX\n #_01885C: DEX\n #_01885D: BPL .save_next_lower_layer_pointer\n\n #_01885F: JSR RoomDraw_DrawAllObjects\n\n; ---------------------------------------------------------\n\n #_018862: INC.b $BA\n #_018864: INC.b $BA\n\n #_018866: LDX.w #$001E\n\n.save_next_upper_layer_pointer\n #_018869: LDA.l RoomData_TilemapPointers_upper_layer+1,X\n #_01886D: STA.b $C0,X\n\n #_01886F: DEX\n #_018870: DEX\n #_018871: DEX\n #_018872: BPL .save_next_upper_layer_pointer\n\n #_018874: JSR RoomDraw_DrawAllObjects\n\n; ---------------------------------------------------------\n\n #_018877: STZ.b $BA\n\n.next_block\n #_018879: LDX.b $BA\n\n #_01887B: LDA.l $7EF940,X\n #_01887F: CMP.b $A0\n #_018881: BNE .block_not_in_this_room\n\n #_018883: LDA.l $7EF942,X\n #_018887: STA.b $08\n\n #_018889: TAY\n\n #_01888A: JSR RoomDraw_PushableBlock\n\n.block_not_in_this_room\n #_01888D: LDA.b $BA\n #_01888F: CLC\n #_018890: ADC.w #$0004\n #_018893: STA.b $BA\n\n #_018895: CMP.w #$018C\n #_018898: BNE .next_block\n\n; ---------------------------------------------------------\n\n #_01889A: REP #$20\n\n #_01889C: LDA.w $042C\n #_01889F: STA.w $042E\n #_0188A2: STA.w $0478\n\n #_0188A5: STZ.b $BA\n\n.next_torch_check\n #_0188A7: LDX.b $BA\n\n #_0188A9: LDA.l $7EFB40,X\n #_0188AD: CMP.b $A0\n #_0188AF: BEQ .torches_in_this_room\n\n #_0188B1: INX\n #_0188B2: INX\n\n.find_next_torch\n #_0188B3: LDA.l $7EFB40,X\n\n #_0188B7: INX\n #_0188B8: INX\n #_0188B9: STX.b $BA\n\n #_0188BB: CMP.w #$FFFF\n #_0188BE: BNE .find_next_torch\n\n #_0188C0: CPX.w #$0120\n #_0188C3: BNE .next_torch_check\n\n #_0188C5: BRA .exit\n\n; ---------------------------------------------------------\n\n.torches_in_this_room\n #_0188C7: INX\n #_0188C8: INX\n\n.draw_next_torch\n #_0188C9: LDA.l $7EFB40,X\n #_0188CD: STA.b $08\n\n #_0188CF: INX\n #_0188D0: INX\n #_0188D1: STX.b $BA\n\n #_0188D3: JSR RoomDraw_LightableTorch\n\n #_0188D6: LDX.b $BA\n\n #_0188D8: LDA.l $7EFB40,X\n #_0188DC: CMP.w #$FFFF\n #_0188DF: BNE .draw_next_torch\n\n; ---------------------------------------------------------\n\n.exit\n #_0188E1: SEP #$30\n\n #_0188E3: RTL", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrawAllObjects", + "code": "RoomDraw_DrawAllObjects:\n.next\n #_0188E4: STZ.b $B2\n #_0188E6: STZ.b $B4\n\n #_0188E8: LDY.b $BA\n\n #_0188EA: LDA.b [$B7],Y\n #_0188EC: CMP.w #$FFFF\n #_0188EF: BEQ .return\n\n #_0188F1: STA.b $00\n\n #_0188F3: CMP.w #$FFF0\n #_0188F6: BEQ .start_doors\n\n #_0188F8: JSR RoomDraw_RoomObject\n\n #_0188FB: BRA .next\n\n.return\n #_0188FD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DoorObject", + "code": "RoomDraw_DoorObject:\n #_018916: AND.w #$00F0\n #_018919: LSR A\n #_01891A: LSR A\n #_01891B: LSR A\n #_01891C: STA.b $02\n\n #_01891E: LDA.b $00\n #_018920: XBA\n #_018921: AND.w #$00FF\n #_018924: STA.b $0A\n #_018926: STA.b $04\n\n #_018928: LDA.b $00\n #_01892A: AND.w #$0003\n #_01892D: ASL A\n #_01892E: TAX\n\n #_01892F: LDA.l DoorDrawRoutines,X\n #_018933: STA.b $0E\n\n #_018935: LDX.b $02\n #_018937: LDA.b $04\n\n #_018939: JMP.w ($000E)\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RoomObject", + "code": "RoomDraw_RoomObject:\n #_01893C: SEP #$20\n\n #_01893E: AND.b #$FC\n #_018940: CMP.b #$FC\n #_018942: BEQ .subtype_2\n\n #_018944: STA.b $08\n\n #_018946: LDA.b $00\n #_018948: AND.b #$03\n #_01894A: STA.b $B2\n\n #_01894C: LDA.b $01\n #_01894E: AND.b #$03\n #_018950: STA.b $B4\n\n #_018952: INY\n #_018953: INY\n\n #_018954: LDA.b [$B7],Y\n #_018956: STA.b $04\n\n #_018958: INY\n #_018959: STY.b $BA\n\n #_01895B: LDA.b $01\n #_01895D: LSR A\n #_01895E: LSR A\n #_01895F: LSR A\n #_018960: ROR.b $08\n #_018962: STA.b $09\n\n #_018964: STZ.b $03\n #_018966: STZ.b $05\n\n; ---------------------------------------------------------\n\n #_018968: REP #$20\n\n #_01896A: LDA.b $04\n #_01896C: ASL A\n #_01896D: CMP.w #$01F0\n #_018970: BCS .subtype_3\n\n #_018972: TAX\n\n #_018973: LDA.l DrawObjects_type1_subtype_1_routine,X\n #_018977: STA.b $0E\n\n #_018979: LDA.l DrawObjects_type1_subtype_1_data_offset,X\n #_01897D: TAX\n\n #_01897E: LDY.b $08\n\n #_018980: JMP.w ($000E)\n\n; ---------------------------------------------------------\n\n.subtype_2\n #_018983: REP #$20\n\n #_018985: LDA.b $00\n #_018987: XBA\n #_018988: AND.w #$03F0\n #_01898B: LSR A\n #_01898C: LSR A\n #_01898D: LSR A\n #_01898E: STA.b $08\n\n #_018990: INY\n\n #_018991: LDA.b [$B7],Y\n #_018993: XBA\n #_018994: AND.w #$0FC0\n\n #_018997: ASL A\n #_018998: ORA.b $08\n #_01899A: STA.b $08\n\n #_01899C: LDA.b [$B7],Y\n #_01899E: XBA\n #_01899F: AND.w #$003F\n\n #_0189A2: INY\n #_0189A3: INY\n #_0189A4: STY.b $BA\n\n #_0189A6: ASL A\n #_0189A7: TAX\n\n #_0189A8: LDA.l DrawObjects_type1_subtype_2_routine,X\n #_0189AC: STA.b $0E\n\n #_0189AE: LDA.l DrawObjects_type1_subtype_2_data_offset,X\n #_0189B2: TAX\n\n #_0189B3: LDY.b $08\n\n #_0189B5: JMP.w ($000E)\n\n; ---------------------------------------------------------\n\n.subtype_3\n #_0189B8: AND.w #$000E\n #_0189BB: ASL A\n #_0189BC: ASL A\n #_0189BD: ASL A\n #_0189BE: STA.b $04\n\n #_0189C0: LDA.b $B4\n #_0189C2: ASL A\n #_0189C3: ASL A\n #_0189C4: ORA.b $B2\n #_0189C6: TSB.b $04\n\n #_0189C8: LDA.b $04\n #_0189CA: ASL A\n #_0189CB: TAX\n\n #_0189CC: LDA.l DrawObjects_type1_subtype_3_routine,X\n #_0189D0: STA.b $0E\n\n #_0189D2: LDA.l DrawObjects_type1_subtype_3_data_offset,X\n #_0189D6: TAX\n\n #_0189D7: LDY.b $08\n\n #_0189D9: JMP.w ($000E)\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrawFloors", + "code": "RoomDraw_DrawFloors:\n #_0189DC: LDX.w #$001E\n\n.next_pointer_a\n #_0189DF: LDA.l RoomData_TilemapPointers_lower_layer+0,X\n #_0189E3: STA.b $BF,X\n\n #_0189E5: LDA.l RoomData_TilemapPointers_lower_layer+1,X\n #_0189E9: STA.b $C0,X\n\n #_0189EB: DEX\n #_0189EC: DEX\n #_0189ED: DEX\n #_0189EE: BPL .next_pointer_a\n\n; ---------------------------------------------------------\n\n #_0189F0: LDY.b $BA\n\n #_0189F2: INC.b $BA\n\n #_0189F4: STZ.b $0C\n\n #_0189F6: LDA.b [$B7],Y\n #_0189F8: PHA\n\n #_0189F9: AND.w #$00F0\n #_0189FC: STA.w $0490\n\n #_0189FF: TAX\n\n #_018A00: JSR RoomDraw_FloorChunks\n\n; ---------------------------------------------------------\n\n #_018A03: LDX.w #$001E\n\n.next_pointer_b\n #_018A06: LDA.l RoomData_TilemapPointers_upper_layer+1,X\n #_018A0A: STA.b $C0,X\n\n #_018A0C: DEX\n #_018A0D: DEX\n #_018A0E: DEX\n #_018A0F: BPL .next_pointer_b\n\n #_018A11: STZ.b $0C\n\n #_018A13: PLA\n #_018A14: AND.w #$000F\n\n #_018A17: ASL A\n #_018A18: ASL A\n #_018A19: ASL A\n #_018A1A: ASL A\n\n #_018A1B: STA.w $046A\n\n #_018A1E: TAX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_FloorChunks", + "code": "RoomDraw_FloorChunks:\n\n.next_super\n #_018A1F: LDY.b $0C\n\n #_018A21: LDA.w RoomDraw_QuadrantDataOffset,Y\n #_018A24: TAY\n\n #_018A25: LDA.w #$0008\n #_018A28: STA.b $0E\n\n.next_square\n #_018A2A: LDA.w #$0008\n #_018A2D: JSR RoomDraw_A_Many32x32Blocks\n\n #_018A30: ADC.w #$01C0\n #_018A33: TAY\n\n #_018A34: DEC.b $0E\n #_018A36: BNE .next_square\n\n #_018A38: INC.b $0C\n #_018A3A: INC.b $0C\n\n #_018A3C: LDA.b $0C\n #_018A3E: CMP.w #$0008\n #_018A41: BNE .next_super\n\n #_018A43: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_A_Many32x32Blocks", + "code": "RoomDraw_A_Many32x32Blocks:\n #_018A44: STA.b $0A\n\n.next_set\n #_018A46: LDA.w #$0002\n #_018A49: STA.b $04\n\n.next_block\n #_018A4B: LDA.w RoomDrawObjectData+0,X\n #_018A4E: STA.b [$BF],Y\n\n #_018A50: LDA.w RoomDrawObjectData+2,X\n #_018A53: STA.b [$C2],Y\n\n #_018A55: LDA.w RoomDrawObjectData+4,X\n #_018A58: STA.b [$C5],Y\n\n #_018A5A: LDA.w RoomDrawObjectData+6,X\n #_018A5D: STA.b [$C8],Y\n\n #_018A5F: LDA.w RoomDrawObjectData+8,X\n #_018A62: STA.b [$CB],Y\n\n #_018A64: LDA.w RoomDrawObjectData+10,X\n #_018A67: STA.b [$CE],Y\n\n #_018A69: LDA.w RoomDrawObjectData+12,X\n #_018A6C: STA.b [$D1],Y\n\n #_018A6E: LDA.w RoomDrawObjectData+14,X\n #_018A71: STA.b [$D4],Y\n\n #_018A73: TYA\n #_018A74: CLC\n #_018A75: ADC.w #$0100\n #_018A78: TAY\n\n #_018A79: DEC.b $04\n #_018A7B: BNE .next_block\n\n #_018A7D: TYA\n #_018A7E: SEC\n #_018A7F: SBC.w #$01F8\n #_018A82: TAY\n\n #_018A83: DEC.b $0A\n #_018A85: BNE .next_set\n\n #_018A87: CLC\n\n #_018A88: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards4x2_1to15or26", + "code": "RoomDraw_Downwards4x2_1to15or26:\n #_018A89: JSR RoomDraw_GetSize_1to15or26\n\n #_018A8C: LDA.w #$0100\n #_018A8F: JMP.w RoomDraw_Downwards4x2VariableSpacing\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x4_1to15or26", + "code": "RoomDraw_Rightwards2x4_1to15or26:\n #_018A92: JSR RoomDraw_GetSize_1to15or26\n\n #_018A95: STX.b $0A\n\n.next\n #_018A97: LDA.w #$0002\n #_018A9A: JSR RoomDraw_Nx4\n\n #_018A9D: LDX.b $0A\n\n #_018A9F: DEC.b $B2\n #_018AA1: BNE .next\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nothing_B", + "code": "RoomDraw_Nothing_B:\n #_018AA3: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards4x2_1to16_BothBG", + "code": "RoomDraw_Downwards4x2_1to16_BothBG:\n #_018AA4: TXA\n #_018AA5: TYX\n #_018AA6: TAY\n\n #_018AA7: JSR RoomDraw_GetSize_1to16\n\n.next_row\n #_018AAA: LDA.w RoomDrawObjectData+0,Y\n #_018AAD: STA.l $7E4000,X\n #_018AB1: STA.l $7E2000,X\n\n #_018AB5: LDA.w RoomDrawObjectData+2,Y\n #_018AB8: STA.l $7E4002,X\n #_018ABC: STA.l $7E2002,X\n\n #_018AC0: LDA.w RoomDrawObjectData+4,Y\n #_018AC3: STA.l $7E4004,X\n #_018AC7: STA.l $7E2004,X\n\n #_018ACB: LDA.w RoomDrawObjectData+6,Y\n #_018ACE: STA.l $7E4006,X\n #_018AD2: STA.l $7E2006,X\n\n #_018AD6: LDA.w RoomDrawObjectData+8,Y\n #_018AD9: STA.l $7E4080,X\n #_018ADD: STA.l $7E2080,X\n\n #_018AE1: LDA.w RoomDrawObjectData+10,Y\n #_018AE4: STA.l $7E4082,X\n #_018AE8: STA.l $7E2082,X\n\n #_018AEC: LDA.w RoomDrawObjectData+12,Y\n #_018AEF: STA.l $7E4084,X\n #_018AF3: STA.l $7E2084,X\n\n #_018AF7: LDA.w RoomDrawObjectData+14,Y\n #_018AFA: STA.l $7E4086,X\n #_018AFE: STA.l $7E2086,X\n\n #_018B02: TXA\n #_018B03: CLC\n #_018B04: ADC.w #$0100\n #_018B07: TAX\n\n #_018B08: DEC.b $B2\n #_018B0A: BNE .next_row\n\n #_018B0C: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x4spaced4_1to16", + "code": "RoomDraw_Rightwards2x4spaced4_1to16:\n #_018B0D: TXA\n #_018B0E: TYX\n #_018B0F: TAY\n\n #_018B10: JSR RoomDraw_GetSize_1to16\n\n.next_row\n #_018B13: LDA.w RoomDrawObjectData+0,Y\n #_018B16: STA.l $7E4000,X\n #_018B1A: STA.l $7E2000,X\n\n #_018B1E: LDA.w RoomDrawObjectData+2,Y\n #_018B21: STA.l $7E4080,X\n #_018B25: STA.l $7E2080,X\n\n #_018B29: LDA.w RoomDrawObjectData+4,Y\n #_018B2C: STA.l $7E4100,X\n #_018B30: STA.l $7E2100,X\n\n #_018B34: LDA.w RoomDrawObjectData+6,Y\n #_018B37: STA.l $7E4180,X\n #_018B3B: STA.l $7E2180,X\n\n #_018B3F: LDA.w RoomDrawObjectData+8,Y\n #_018B42: STA.l $7E4002,X\n #_018B46: STA.l $7E2002,X\n\n #_018B4A: LDA.w RoomDrawObjectData+10,Y\n #_018B4D: STA.l $7E4082,X\n #_018B51: STA.l $7E2082,X\n\n #_018B55: LDA.w RoomDrawObjectData+12,Y\n #_018B58: STA.l $7E4102,X\n #_018B5C: STA.l $7E2102,X\n\n #_018B60: LDA.w RoomDrawObjectData+14,Y\n #_018B63: STA.l $7E4182,X\n #_018B67: STA.l $7E2182,X\n\n #_018B6B: INX\n #_018B6C: INX\n #_018B6D: INX\n #_018B6E: INX\n\n #_018B6F: DEC.b $B2\n #_018B71: BNE .next_row\n\n #_018B73: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards2x2_1to16", + "code": "RoomDraw_Downwards2x2_1to16:\n #_018B74: JSR RoomDraw_GetSize_1to16\n\n #_018B77: BRA RoomDraw_Downwards2x2_1to15or32_next\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x2_1to16", + "code": "RoomDraw_Rightwards2x2_1to16:\n #_018B79: JSR RoomDraw_GetSize_1to16\n\n #_018B7C: BRA RoomDraw_Rightwards2x2_1to15or32_next\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards2x2_1to15or32", + "code": "RoomDraw_Downwards2x2_1to15or32:\n #_018B7E: JSR RoomDraw_GetSize_1to15or32\n\n.next\n #_018B81: JSR RoomDraw_Downwards2x2\n\n #_018B84: DEC.b $B2\n #_018B86: BNE .next\n\n #_018B88: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x2_1to15or32", + "code": "RoomDraw_Rightwards2x2_1to15or32:\n #_018B89: JSR RoomDraw_GetSize_1to15or32\n\n.next\n #_018B8C: JSR RoomDraw_Rightwards2x2\n\n #_018B8F: DEC.b $B2\n #_018B91: BNE .next\n\n #_018B93: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4BlocksIn4x4SuperSquare", + "code": "RoomDraw_4x4BlocksIn4x4SuperSquare:\n #_018B94: INC.b $B2\n #_018B96: INC.b $B4\n\n.next_super_square\n #_018B98: LDA.b $B2\n #_018B9A: STA.b $0A\n\n.next_square\n #_018B9C: LDA.w RoomDrawObjectData+0,X\n #_018B9F: STA.b [$BF],Y\n #_018BA1: STA.b [$C2],Y\n #_018BA3: STA.b [$C5],Y\n #_018BA5: STA.b [$C8],Y\n #_018BA7: STA.b [$CB],Y\n #_018BA9: STA.b [$CE],Y\n #_018BAB: STA.b [$D1],Y\n #_018BAD: STA.b [$D4],Y\n\n #_018BAF: TYA\n #_018BB0: CLC\n #_018BB1: ADC.w #$0100\n #_018BB4: TAY\n\n #_018BB5: LDA.w RoomDrawObjectData+0,X\n #_018BB8: STA.b [$BF],Y\n #_018BBA: STA.b [$C2],Y\n #_018BBC: STA.b [$C5],Y\n #_018BBE: STA.b [$C8],Y\n #_018BC0: STA.b [$CB],Y\n #_018BC2: STA.b [$CE],Y\n #_018BC4: STA.b [$D1],Y\n #_018BC6: STA.b [$D4],Y\n\n #_018BC8: TYA\n #_018BC9: SEC\n #_018BCA: SBC.w #$00F8\n #_018BCD: TAY\n\n #_018BCE: DEC.b $0A\n #_018BD0: BNE .next_square\n\n #_018BD2: LDA.b $08\n #_018BD4: CLC\n #_018BD5: ADC.w #$0200\n #_018BD8: STA.b $08\n\n #_018BDA: TAY\n\n #_018BDB: DEC.b $B4\n #_018BDD: BNE .next_super_square\n\n #_018BDF: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingTopLeftA", + "code": "RoomDraw_DiagonalCeilingTopLeftA:\n #_018BE0: LDA.w #$0004\n #_018BE3: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018BE6: JSR RoomDraw_Repeated1x1_CachedCount\n #_018BE9: ADC.w #$0080\n #_018BEC: STA.b $08\n\n #_018BEE: TAY\n\n #_018BEF: DEC.b $B2\n #_018BF1: BNE .next\n\n #_018BF3: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingBottomLeftA", + "code": "RoomDraw_DiagonalCeilingBottomLeftA:\n #_018BF4: LDA.w #$0004\n #_018BF7: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018BFA: INC.b $B4\n\n.next\n #_018BFC: LDA.b $B4\n #_018BFE: JSR RoomDraw_Repeated1x1\n\n #_018C01: ADC.w #$0080\n #_018C04: STA.b $08\n\n #_018C06: TAY\n\n #_018C07: INC.b $B4\n\n #_018C09: DEC.b $B2\n #_018C0B: BNE .next\n\n #_018C0D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingTopRightA", + "code": "RoomDraw_DiagonalCeilingTopRightA:\n #_018C0E: LDA.w #$0004\n #_018C11: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018C14: JSR RoomDraw_Repeated1x1_CachedCount\n #_018C17: ADC.w #$0082\n #_018C1A: STA.b $08\n\n #_018C1C: TAY\n\n #_018C1D: DEC.b $B2\n #_018C1F: BNE .next\n\n #_018C21: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingBottomRightA", + "code": "RoomDraw_DiagonalCeilingBottomRightA:\n #_018C22: LDA.w #$0004\n #_018C25: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018C28: JSR RoomDraw_Repeated1x1_CachedCount\n #_018C2B: SEC\n #_018C2C: SBC.w #$007E\n #_018C2F: STA.b $08\n\n #_018C31: TAY\n\n #_018C32: DEC.b $B2\n #_018C34: BNE .next\n\n #_018C36: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x4spaced4_1to16_BothBG", + "code": "RoomDraw_Rightwards2x4spaced4_1to16_BothBG:\n #_018C37: JSR RoomDraw_GetSize_1to16\n\n #_018C3A: STX.b $0A\n\n.next\n #_018C3C: LDA.w #$0002\n #_018C3F: JSR RoomDraw_Nx4\n\n #_018C42: TYA\n #_018C43: CLC\n #_018C44: ADC.w #$0008\n #_018C47: TAY\n\n #_018C48: LDX.b $0A\n\n #_018C4A: DEC.b $B2\n #_018C4C: BNE .next\n\n #_018C4E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor4x2spaced4_1to16", + "code": "RoomDraw_DownwardsDecor4x2spaced4_1to16:\n #_018C4F: JSR RoomDraw_GetSize_1to16\n\n #_018C52: LDA.w #$0300\n #_018C55: JMP.w RoomDraw_Downwards4x2VariableSpacing\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalAcute_1to16", + "code": "RoomDraw_DiagonalAcute_1to16:\n #_018C58: LDA.w #$0007\n #_018C5B: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018C5E: JMP.w RoomDraw_DrawDiagonalAcute_start\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalGrave_1to16", + "code": "RoomDraw_DiagonalGrave_1to16:\n #_018C61: LDA.w #$0007\n #_018C64: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018C67: JMP.w RoomDraw_DrawDiagonalGrave_start\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalAcute_1to16_BothBG", + "code": "RoomDraw_DiagonalAcute_1to16_BothBG:\n #_018C6A: TXA\n #_018C6B: TYX\n #_018C6C: TAY\n\n #_018C6D: LDA.w #$0006\n #_018C70: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018C73: LDA.w #$FF82\n\n.next_bg\n #_018C76: STA.b $0E\n\n.next\n #_018C78: LDA.w RoomDrawObjectData+0,Y\n #_018C7B: STA.l $7E4000,X\n #_018C7F: STA.l $7E2000,X\n\n #_018C83: LDA.w RoomDrawObjectData+2,Y\n #_018C86: STA.l $7E4080,X\n #_018C8A: STA.l $7E2080,X\n\n #_018C8E: LDA.w RoomDrawObjectData+4,Y\n #_018C91: STA.l $7E4100,X\n #_018C95: STA.l $7E2100,X\n\n #_018C99: LDA.w RoomDrawObjectData+6,Y\n #_018C9C: STA.l $7E4180,X\n #_018CA0: STA.l $7E2180,X\n\n #_018CA4: LDA.w RoomDrawObjectData+8,Y\n #_018CA7: STA.l $7E4200,X\n #_018CAB: STA.l $7E2200,X\n\n #_018CAF: TXA\n #_018CB0: CLC\n #_018CB1: ADC.b $0E\n #_018CB3: TAX\n\n #_018CB4: DEC.b $B2\n #_018CB6: BNE .next\n\n #_018CB8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ClosedChestPlatform", + "code": "RoomDraw_ClosedChestPlatform:\n #_018CC7: LDA.b $B2\n #_018CC9: CLC\n #_018CCA: ADC.w #$0004\n #_018CCD: STA.b $B2\n #_018CCF: STA.b $0A\n\n #_018CD1: INC.b $B4\n\n #_018CD3: JSR RoomDraw_ChestPlatformHorizontalWallWithCorners\n\n #_018CD6: STX.w $0006\n\n #_018CD9: LDA.b $08\n #_018CDB: STA.b $04\n\n #_018CDD: CLC\n #_018CDE: ADC.w #$0180\n #_018CE1: STA.b $08\n\n #_018CE3: LDA.b $B4\n #_018CE5: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_vertical_wall\n #_018CE7: LDA.b $B2\n #_018CE9: STA.b $0A\n\n #_018CEB: LDY.b $08\n #_018CED: LDX.b $06\n\n #_018CEF: JSR RoomDraw_ChestPlatformVerticalWall\n\n #_018CF2: TXA\n #_018CF3: CLC\n #_018CF4: ADC.w #$000C\n #_018CF7: TAX\n\n #_018CF8: TYA\n #_018CF9: CLC\n #_018CFA: ADC.w #$0006\n #_018CFD: TAY\n\n.next_horizontal_carpet\n #_018CFE: JSR RoomDraw_Rightwards2x2\n\n #_018D01: DEC.b $0A\n #_018D03: BNE .next_horizontal_carpet\n\n #_018D05: TXA\n #_018D06: CLC\n #_018D07: ADC.w #$0008\n #_018D0A: TAX\n\n #_018D0B: JSR RoomDraw_ChestPlatformVerticalWall\n\n #_018D0E: LDA.b $08\n #_018D10: CLC\n #_018D11: ADC.w #$0100\n #_018D14: STA.b $08\n\n #_018D16: DEC.b $0E\n #_018D18: BNE .next_vertical_wall\n\n; ---------------------------------------------------------\n\n #_018D1A: TXA\n #_018D1B: CLC\n #_018D1C: ADC.w #$000C\n #_018D1F: TAX\n\n #_018D20: LDY.b $08\n\n #_018D22: LDA.b $B2\n #_018D24: STA.b $0A\n\n #_018D26: JSR RoomDraw_ChestPlatformHorizontalWallWithCorners\n\n #_018D29: LDA.w #$FF80\n\n.looking_for_bottom\n #_018D2C: SEC\n #_018D2D: SBC.w #$0080\n\n #_018D30: DEC.b $B4\n #_018D32: BNE .looking_for_bottom\n\n #_018D34: CLC\n #_018D35: ADC.b $08\n\n #_018D37: INC.b $B2\n #_018D39: INC.b $B2\n #_018D3B: ASL.b $B2\n\n #_018D3D: CLC\n #_018D3E: ADC.b $B2\n #_018D40: TAY\n\n #_018D41: LDX.w #obj0590-RoomDrawObjectData\n #_018D44: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ChestPlatformHorizontalWallWithCorners", + "code": "RoomDraw_ChestPlatformHorizontalWallWithCorners:\n #_018D47: JSR RoomDraw_ChestPlatformCorner\n\n.next\n #_018D4A: LDA.w #$0002\n #_018D4D: JSR RoomDraw_1x3N_rightwards\n\n #_018D50: TXA\n #_018D51: SEC\n #_018D52: SBC.w #$000C\n #_018D55: TAX\n\n #_018D56: DEC.b $0A\n #_018D58: BNE .next\n\n #_018D5A: JMP.w RoomDraw_ChestPlatformCorner_advance_from_A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards1x2_1to16_plus2", + "code": "RoomDraw_Rightwards1x2_1to16_plus2:\n #_018D5D: LDA.b $B2\n #_018D5F: ASL A\n #_018D60: ASL A\n\n #_018D61: ORA.b $B4\n\n #_018D63: ASL A\n #_018D64: INC A\n #_018D65: STA.b $B2\n\n #_018D67: LDA.w #$0002\n #_018D6A: JSR RoomDraw_1x3N_rightwards\n\n.next_set\n #_018D6D: TXA\n #_018D6E: SEC\n #_018D6F: SBC.w #$0006\n #_018D72: TAX\n\n #_018D73: LDA.w #$0001\n #_018D76: JSR RoomDraw_1x3N_rightwards\n\n #_018D79: DEC.b $B2\n #_018D7B: BNE .next_set\n\n #_018D7D: LDA.w #$0001\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_1x3N_rightwards", + "code": "RoomDraw_1x3N_rightwards:\n #_018D80: STA.b $0E\n\n.next\n #_018D82: LDA.w RoomDrawObjectData+0,X\n #_018D85: STA.b [$BF],Y\n\n #_018D87: LDA.w RoomDrawObjectData+2,X\n #_018D8A: STA.b [$CB],Y\n\n #_018D8C: LDA.w RoomDrawObjectData+4,X\n #_018D8F: STA.b [$D7],Y\n\n #_018D91: TXA\n #_018D92: CLC\n #_018D93: ADC.w #$0006\n #_018D96: TAX\n\n #_018D97: INY\n #_018D98: INY\n\n #_018D99: DEC.b $0E\n #_018D9B: BNE .next\n\n #_018D9D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_3x3FloorIn4x4SuperSquare", + "code": "RoomDraw_3x3FloorIn4x4SuperSquare:\n #_018D9E: INC.b $B2\n #_018DA0: INC.b $B4\n\n.next_super_square\n #_018DA2: LDA.b $B2\n #_018DA4: STA.b $0A\n\n.next_square\n #_018DA6: LDA.w RoomDrawObjectData+0,X\n #_018DA9: STA.b [$BF],Y\n #_018DAB: STA.b [$C2],Y\n #_018DAD: STA.b [$C5],Y\n #_018DAF: STA.b [$CB],Y\n #_018DB1: STA.b [$CE],Y\n #_018DB3: STA.b [$D1],Y\n\n #_018DB5: TYA\n #_018DB6: CLC\n #_018DB7: ADC.w #$0100\n #_018DBA: TAY\n\n #_018DBB: LDA.w RoomDrawObjectData+0,X\n #_018DBE: STA.b [$BF],Y\n #_018DC0: STA.b [$C2],Y\n #_018DC2: STA.b [$C5],Y\n\n #_018DC4: TYA\n #_018DC5: SEC\n #_018DC6: SBC.w #$00FA\n #_018DC9: TAY\n\n #_018DCA: DEC.b $0A\n #_018DCC: BNE .next_square\n\n #_018DCE: LDA.b $08\n #_018DD0: CLC\n #_018DD1: ADC.w #$0180\n #_018DD4: STA.b $08\n\n #_018DD6: TAY\n\n #_018DD7: DEC.b $B4\n #_018DD9: BNE .next_super_square\n\n #_018DDB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigHole4x4_1to16", + "code": "RoomDraw_BigHole4x4_1to16:\n #_018DDC: LDA.w #$0004\n #_018DDF: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018DE2: STA.b $B4\n #_018DE4: STA.b $0E\n\n #_018DE6: PHY\n\n; ---------------------------------------------------------\n\n.next_pit_square\n #_018DE7: JSR RoomDraw_Repeated1x1_CachedCount\n #_018DEA: STA.b $0C\n\n #_018DEC: ADC.w #$0080\n #_018DEF: STA.b $08\n\n #_018DF1: TAY\n\n #_018DF2: DEC.b $0E\n #_018DF4: BNE .next_pit_square\n\n; ---------------------------------------------------------\n\n #_018DF6: PLY\n #_018DF7: STY.b $08\n\n #_018DF9: LDA.w #$0002\n #_018DFC: STA.b $0E\n\n #_018DFE: LDX.w #obj063C-RoomDrawObjectData\n\n.next_verticals_row\n #_018E01: LDA.b $B2\n #_018E03: DEC A\n #_018E04: DEC A\n #_018E05: STA.b $0A\n\n #_018E07: LDA.w RoomDrawObjectData+0,X\n #_018E0A: STA.b [$BF],Y\n\n #_018E0C: LDA.w RoomDrawObjectData+2,X\n\n.next_vertical_edge\n #_018E0F: STA.b [$C2],Y\n\n #_018E11: INY\n #_018E12: INY\n\n #_018E13: DEC.b $0A\n #_018E15: BNE .next_vertical_edge\n\n #_018E17: LDA.w RoomDrawObjectData+4,X\n #_018E1A: STA.b [$C2],Y\n\n #_018E1C: TXA\n #_018E1D: CLC\n #_018E1E: ADC.w #$0006\n #_018E21: TAX\n\n #_018E22: LDY.b $0C\n\n #_018E24: DEC.b $0E\n #_018E26: BNE .next_verticals_row\n\n; ---------------------------------------------------------\n\n #_018E28: LDA.b $08\n #_018E2A: CLC\n #_018E2B: ADC.w #$0080\n\n #_018E2E: LDY.b $B2\n #_018E30: DEY\n #_018E31: STY.b $B4\n\n #_018E33: DEC.b $B4\n\n.advance_A\n #_018E35: INC A\n #_018E36: INC A\n\n #_018E37: DEY\n #_018E38: BNE .advance_A\n\n #_018E3A: STA.b $0C\n\n #_018E3C: LDA.w #$0002\n #_018E3F: STA.b $0E\n\n #_018E41: LDA.b $08\n #_018E43: CLC\n #_018E44: ADC.w #$0080\n #_018E47: TAY\n\n #_018E48: LDX.w #obj0648-RoomDrawObjectData\n\n; ---------------------------------------------------------\n\n.next_horizontal_row\n #_018E4B: LDA.b $B4\n #_018E4D: STA.b $0A\n\n.next_horizontal_edge\n #_018E4F: LDA.w RoomDrawObjectData+0,X\n #_018E52: STA.b [$BF],Y\n\n #_018E54: TYA\n #_018E55: CLC\n #_018E56: ADC.w #$0080\n #_018E59: TAY\n\n #_018E5A: DEC.b $0A\n #_018E5C: BNE .next_horizontal_edge\n\n #_018E5E: INX\n #_018E5F: INX\n\n #_018E60: LDY.b $0C\n\n #_018E62: DEC.b $0E\n #_018E64: BNE .next_horizontal_row\n\n #_018E66: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingTopLeftB", + "code": "RoomDraw_DiagonalCeilingTopLeftB:\n #_018E67: LDA.w #$0004\n #_018E6A: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018E6D: JSR RoomDraw_Repeated1x1_CachedCount\n #_018E70: ADC.w #$0080\n #_018E73: STA.b $08\n\n #_018E75: TAY\n\n #_018E76: DEC.b $B2\n #_018E78: BNE .next\n\n #_018E7A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingBottomLeftB", + "code": "RoomDraw_DiagonalCeilingBottomLeftB:\n #_018E7B: LDA.w #$0004\n #_018E7E: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018E81: INC.b $B4\n\n.next\n #_018E83: LDA.b $B4\n #_018E85: JSR RoomDraw_Repeated1x1\n\n #_018E88: ADC.w #$0080\n #_018E8B: STA.b $08\n\n #_018E8D: TAY\n\n #_018E8E: INC.b $B4\n\n #_018E90: DEC.b $B2\n #_018E92: BNE .next\n\n #_018E94: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingTopRightB", + "code": "RoomDraw_DiagonalCeilingTopRightB:\n #_018E95: LDA.w #$0004\n #_018E98: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018E9B: JSR RoomDraw_Repeated1x1_CachedCount\n #_018E9E: ADC.w #$0082\n #_018EA1: STA.b $08\n\n #_018EA3: TAY\n\n #_018EA4: DEC.b $B2\n #_018EA6: BNE .next\n\n #_018EA8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DiagonalCeilingBottomRightB", + "code": "RoomDraw_DiagonalCeilingBottomRightB:\n #_018EA9: LDA.w #$0004\n #_018EAC: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_018EAF: JSR RoomDraw_Repeated1x1_CachedCount\n #_018EB2: SEC\n #_018EB3: SBC.w #$007E\n #_018EB6: STA.b $08\n\n #_018EB8: TAY\n\n #_018EB9: DEC.b $B2\n #_018EBB: BNE .next\n\n #_018EBD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsHasEdge1x1_1to16_plus23", + "code": "RoomDraw_DownwardsHasEdge1x1_1to16_plus23:\n #_018EBE: LDA.w #$0015\n #_018EC1: BRA RoomDraw_DownwardsHasEdge1x1_1to16\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsHasEdge1x1_1to16_plus3", + "code": "RoomDraw_DownwardsHasEdge1x1_1to16_plus3:\n #_018EC3: LDA.w #$0002\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsHasEdge1x1_1to16", + "code": "RoomDraw_DownwardsHasEdge1x1_1to16:\n #_018EC6: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018EC9: LDA.w #$00E3\n #_018ECC: JSR RoomDraw_SmallRailCorner\n\n #_018ECF: BCC .next\n\n #_018ED1: LDA.w RoomDrawObjectData+0,X\n #_018ED4: STA.b [$BF],Y\n\n.next\n #_018ED6: TYA\n #_018ED7: CLC\n #_018ED8: ADC.w #$0080\n #_018EDB: TAY\n\n #_018EDC: LDA.w RoomDrawObjectData+2,X\n #_018EDF: STA.b [$BF],Y\n\n #_018EE1: DEC.b $B2\n #_018EE3: BNE .next\n\n #_018EE5: LDA.w RoomDrawObjectData+4,X\n #_018EE8: STA.b [$CB],Y\n\n #_018EEA: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsHasEdge1x1_1to16_plus23", + "code": "RoomDraw_RightwardsHasEdge1x1_1to16_plus23:\n #_018EEB: LDA.w #$0015\n #_018EEE: BRA RoomDraw_RightwardsHasEdge1x1_1to16\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsHasEdge1x1_1to16_plus3", + "code": "RoomDraw_RightwardsHasEdge1x1_1to16_plus3:\n #_018EF0: LDA.w #$0002\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsHasEdge1x1_1to16", + "code": "RoomDraw_RightwardsHasEdge1x1_1to16:\n #_018EF3: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018EF6: LDA.w #$00E2\n #_018EF9: JSR RoomDraw_SmallRailCorner\n #_018EFC: BCC .no_corner_needed\n\n #_018EFE: LDA.w RoomDrawObjectData+0,X\n #_018F01: STA.b [$BF],Y\n\n.no_corner_needed\n #_018F03: JSR RoomDraw_Repeated1x1_AdvanceWithCachedCount\n\n #_018F06: LDA.w RoomDrawObjectData+2,X\n #_018F09: STA.b [$BF],Y\n\n #_018F0B: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsBigRail3x1_1to16plus5", + "code": "RoomDraw_DownwardsBigRail3x1_1to16plus5:\n #_018F0C: JSR RoomDraw_GetSize_1to16\n #_018F0F: JSR RoomDraw_Downwards2x2\n\n #_018F12: TXA\n #_018F13: CLC\n #_018F14: ADC.w #$0008\n #_018F17: TAX\n\n.next\n #_018F18: LDA.w RoomDrawObjectData+0,X\n #_018F1B: STA.b [$BF],Y\n\n #_018F1D: LDA.w RoomDrawObjectData+2,X\n #_018F20: STA.b [$C2],Y\n\n #_018F22: TYA\n #_018F23: CLC\n #_018F24: ADC.w #$0080\n #_018F27: TAY\n\n #_018F28: DEC.b $B2\n #_018F2A: BNE .next\n\n #_018F2C: INX\n #_018F2D: INX\n #_018F2E: INX\n #_018F2F: INX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Single2x3Pillar", + "code": "RoomDraw_Single2x3Pillar:\n #_018F30: LDA.w #$0002\n #_018F33: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsBigRail1x3_1to16plus5", + "code": "RoomDraw_RightwardsBigRail1x3_1to16plus5:\n #_018F36: JSR RoomDraw_GetSize_1to16\n\n #_018F39: INC.b $B2\n\n #_018F3B: LDA.w #$0002\n #_018F3E: JSR RoomDraw_1x3N_rightwards\n\n.next\n #_018F41: LDA.w RoomDrawObjectData+0,X\n #_018F44: STA.b [$BF],Y\n\n #_018F46: LDA.w RoomDrawObjectData+2,X\n #_018F49: STA.b [$CB],Y\n\n #_018F4B: LDA.w RoomDrawObjectData+4,X\n #_018F4E: STA.b [$D7],Y\n\n #_018F50: INY\n #_018F51: INY\n\n #_018F52: DEC.b $B2\n #_018F54: BNE .next\n\n #_018F56: INX\n #_018F57: INX\n #_018F58: INX\n #_018F59: INX\n #_018F5A: INX\n #_018F5B: INX\n\n #_018F5C: LDA.w #$0002\n\n #_018F5F: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsHasEdge1x1_1to16_plus2", + "code": "RoomDraw_RightwardsHasEdge1x1_1to16_plus2:\n #_018F62: JSR RoomDraw_GetSize_1to16\n\n #_018F65: LDA.w #$01DB\n #_018F68: JSR RoomDraw_SmallRailCorner\n #_018F6B: BCC .no_corner_needed\n\n #_018F6D: CMP.w #$01A6\n #_018F70: BEQ .no_corner_needed\n\n #_018F72: CMP.w #$01DD\n #_018F75: BEQ .no_corner_needed\n\n #_018F77: CMP.w #$01FC\n #_018F7A: BEQ .no_corner_needed\n\n #_018F7C: LDA.w RoomDrawObjectData+0,X\n #_018F7F: STA.b [$BF],Y\n\n.no_corner_needed\n #_018F81: JSR RoomDraw_Repeated1x1_AdvanceWithCachedCount\n\n #_018F84: LDA.w RoomDrawObjectData+2,X\n #_018F87: STA.b [$BF],Y\n\n #_018F89: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsEdge1x1_1to16", + "code": "RoomDraw_DownwardsEdge1x1_1to16:\n #_018F8A: JSR RoomDraw_GetSize_1to16\n\n.next\n #_018F8D: LDA.w RoomDrawObjectData+0,X\n #_018F90: STA.b [$BF],Y\n\n #_018F92: TYA\n #_018F93: CLC\n #_018F94: ADC.w #$0080\n #_018F97: TAY\n\n #_018F98: DEC.b $B2\n #_018F9A: BNE .next\n\n #_018F9C: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4FloorTwoIn4x4SuperSquare", + "code": "RoomDraw_4x4FloorTwoIn4x4SuperSquare:\n #_018F9D: LDX.w $0490\n #_018FA0: BRA RoomDraw_4x4FloorIn4x4SuperSquare\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4FloorOneIn4x4SuperSquare", + "code": "RoomDraw_4x4FloorOneIn4x4SuperSquare:\n #_018FA2: LDX.w $046A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4FloorIn4x4SuperSquare", + "code": "RoomDraw_4x4FloorIn4x4SuperSquare:\n #_018FA5: INC.b $B2\n #_018FA7: INC.b $B4\n\n.next\n #_018FA9: LDA.b $B2\n #_018FAB: JSR RoomDraw_A_Many32x32Blocks\n\n #_018FAE: LDA.b $08\n #_018FB0: CLC\n #_018FB1: ADC.w #$0200\n #_018FB4: STA.b $08\n\n #_018FB6: TAY\n\n #_018FB7: DEC.b $B4\n #_018FB9: BNE .next\n\n #_018FBB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nothing_D", + "code": "RoomDraw_Nothing_D:\n #_018FBC: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsTopCorners1x2_1to16_plus13", + "code": "RoomDraw_RightwardsTopCorners1x2_1to16_plus13:\n #_018FBD: LDA.w #$000A\n #_018FC0: JSR RoomDraw_GetSize_1to16_timesA\n\n #_018FC3: LDA.w RoomDrawObjectData+0,X\n #_018FC6: STA.b $0E\n\n #_018FC8: INX\n #_018FC9: INX\n\n #_018FCA: LDA.b [$BF],Y\n #_018FCC: AND.w #$03FF\n #_018FCF: CMP.w #$00E2\n #_018FD2: BEQ .skip_corner\n\n #_018FD4: JSR .draw_corner\n\n.skip_corner\n #_018FD7: INX\n #_018FD8: INX\n #_018FD9: INX\n #_018FDA: INX\n\n.next\n #_018FDB: LDA.w RoomDrawObjectData+0,X\n #_018FDE: STA.b [$BF],Y\n\n #_018FE0: LDA.b $0E\n #_018FE2: STA.b [$CB],Y\n\n #_018FE4: INY\n #_018FE5: INY\n\n #_018FE6: DEC.b $B2\n #_018FE8: BNE .next\n\n #_018FEA: INX\n #_018FEB: INX\n\n; ---------------------------------------------------------\n\n.draw_corner\n #_018FEC: LDA.w RoomDrawObjectData+0,X\n #_018FEF: STA.b [$BF],Y\n\n #_018FF1: LDA.w RoomDrawObjectData+2,X\n #_018FF4: STA.b [$C2],Y\n\n #_018FF6: LDA.b $0E\n #_018FF8: STA.b [$CB],Y\n #_018FFA: STA.b [$CE],Y\n\n #_018FFC: INY\n #_018FFD: INY\n #_018FFE: INY\n #_018FFF: INY\n\n #_019000: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsBottomCorners1x2_1to16_plus13", + "code": "RoomDraw_RightwardsBottomCorners1x2_1to16_plus13:\n #_019001: LDA.w #$000A\n #_019004: JSR RoomDraw_GetSize_1to16_timesA\n\n #_019007: LDA.w RoomDrawObjectData+0,X\n #_01900A: STA.b $0E\n\n #_01900C: INX\n #_01900D: INX\n\n #_01900E: LDA.b [$CB],Y\n #_019010: AND.w #$03FF\n #_019013: CMP.w #$00E2\n #_019016: BEQ .skip_corner\n\n #_019018: JSR .draw_corner\n\n.skip_corner\n #_01901B: INX\n #_01901C: INX\n #_01901D: INX\n #_01901E: INX\n\n.next\n #_01901F: LDA.b $0E\n #_019021: STA.b [$BF],Y\n\n #_019023: LDA.w RoomDrawObjectData+0,X\n #_019026: STA.b [$CB],Y\n\n #_019028: INY\n #_019029: INY\n\n #_01902A: DEC.b $B2\n #_01902C: BNE .next\n\n; ---------------------------------------------------------\n\n #_01902E: INX\n #_01902F: INX\n\n.draw_corner\n #_019030: LDA.b $0E\n #_019032: STA.b [$BF],Y\n #_019034: STA.b [$C2],Y\n\n #_019036: LDA.w RoomDrawObjectData+0,X\n #_019039: STA.b [$CB],Y\n\n #_01903B: LDA.w RoomDrawObjectData+2,X\n #_01903E: STA.b [$CE],Y\n\n #_019040: INY\n #_019041: INY\n #_019042: INY\n #_019043: INY\n\n #_019044: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsLeftCorners2x1_1to16_plus12", + "code": "RoomDraw_DownwardsLeftCorners2x1_1to16_plus12:\n #_019045: LDA.w #$000A\n #_019048: JSR RoomDraw_GetSize_1to16_timesA\n\n #_01904B: LDA.w RoomDrawObjectData+0,X\n #_01904E: STA.b $0E\n\n #_019050: INX\n #_019051: INX\n\n #_019052: LDA.b [$BF],Y\n #_019054: AND.w #$03FF\n #_019057: CMP.w #$00E3\n #_01905A: BEQ .skip_corner\n\n #_01905C: JSR .draw_corner\n\n.skip_corner\n #_01905F: INX\n #_019060: INX\n #_019061: INX\n #_019062: INX\n\n.next\n #_019063: LDA.w RoomDrawObjectData+0,X\n #_019066: STA.b [$BF],Y\n\n #_019068: LDA.b $0E\n #_01906A: STA.b [$C2],Y\n\n #_01906C: TYA\n #_01906D: CLC\n #_01906E: ADC.w #$0080\n #_019071: TAY\n\n #_019072: DEC.b $B2\n #_019074: BNE .next\n\n; ---------------------------------------------------------\n\n #_019076: INX\n #_019077: INX\n\n.draw_corner\n #_019078: LDA.w RoomDrawObjectData+0,X\n #_01907B: STA.b [$BF],Y\n\n #_01907D: LDA.w RoomDrawObjectData+2,X\n #_019080: STA.b [$CB],Y\n\n #_019082: LDA.b $0E\n #_019084: STA.b [$C2],Y\n #_019086: STA.b [$CE],Y\n\n #_019088: TYA\n #_019089: CLC\n #_01908A: ADC.w #$0100\n #_01908D: TAY\n\n #_01908E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsRightCorners2x1_1to16_plus12", + "code": "RoomDraw_DownwardsRightCorners2x1_1to16_plus12:\n #_01908F: LDA.w #$000A\n #_019092: JSR RoomDraw_GetSize_1to16_timesA\n\n #_019095: LDA.w RoomDrawObjectData+0,X\n #_019098: STA.b $0E\n\n #_01909A: INX\n #_01909B: INX\n\n #_01909C: LDA.b [$C2],Y\n #_01909E: AND.w #$03FF\n #_0190A1: CMP.w #$00E3\n #_0190A4: BEQ .skip_corner\n\n #_0190A6: JSR .draw_corner\n\n.skip_corner\n #_0190A9: INX\n #_0190AA: INX\n #_0190AB: INX\n #_0190AC: INX\n\n.next\n #_0190AD: LDA.b $0E\n #_0190AF: STA.b [$BF],Y\n\n #_0190B1: LDA.w RoomDrawObjectData+0,X\n #_0190B4: STA.b [$C2],Y\n\n #_0190B6: TYA\n #_0190B7: CLC\n #_0190B8: ADC.w #$0080\n #_0190BB: TAY\n\n #_0190BC: DEC.b $B2\n #_0190BE: BNE .next\n\n #_0190C0: INX\n #_0190C1: INX\n\n; ---------------------------------------------------------\n\n.draw_corner\n #_0190C2: LDA.b $0E\n #_0190C4: STA.b [$BF],Y\n #_0190C6: STA.b [$CB],Y\n\n #_0190C8: LDA.w RoomDrawObjectData+0,X\n #_0190CB: STA.b [$C2],Y\n\n #_0190CD: LDA.w RoomDrawObjectData+2,X\n #_0190D0: STA.b [$CE],Y\n\n #_0190D2: TYA\n #_0190D3: CLC\n #_0190D4: ADC.w #$0100\n #_0190D7: TAY\n\n #_0190D8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsEdge1x1_1to16plus7", + "code": "RoomDraw_RightwardsEdge1x1_1to16plus7:\n #_0190D9: LDA.w #$0008\n #_0190DC: JSR RoomDraw_GetSize_1to16_timesA\n\n #_0190DF: JMP.w RoomDraw_Repeated1x1_CachedCount\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsEdge1x1_1to16plus7", + "code": "RoomDraw_DownwardsEdge1x1_1to16plus7:\n #_0190E2: LDA.w #$0008\n #_0190E5: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_0190E8: LDA.w RoomDrawObjectData+0,X\n #_0190EB: STA.b [$BF],Y\n\n #_0190ED: TYA\n #_0190EE: CLC\n #_0190EF: ADC.w #$0080\n #_0190F2: TAY\n\n #_0190F3: DEC.b $B2\n #_0190F5: BNE .next\n\n #_0190F7: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nothing_A", + "code": "RoomDraw_Nothing_A:\n #_0190F8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsFloor4x4_1to16", + "code": "RoomDraw_DownwardsFloor4x4_1to16:\n #_0190F9: STX.b $0A\n\n #_0190FB: JSR RoomDraw_GetSize_1to16\n\n.next\n #_0190FE: LDX.b $0A\n #_019100: JSR RoomDraw_4x4\n\n #_019103: LDA.b $08\n #_019105: CLC\n #_019106: ADC.w #$0200\n #_019109: STA.b $08\n\n #_01910B: TAY\n\n #_01910C: DEC.b $B2\n #_01910E: BNE .next\n\n #_019110: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards4x4_1to16", + "code": "RoomDraw_Rightwards4x4_1to16:\n #_019111: STX.b $0A\n\n #_019113: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019116: LDX.b $0A\n #_019118: JSR RoomDraw_4x4\n\n #_01911B: DEC.b $B2\n\n #_01911D: BNE .next\n\n #_01911F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards1x1Solid_1to16_plus3", + "code": "RoomDraw_Downwards1x1Solid_1to16_plus3:\n #_019120: LDA.w #$0004\n #_019123: JSR RoomDraw_GetSize_1to16_timesA\n\n.next\n #_019126: LDA.w RoomDrawObjectData+0,X\n #_019129: STA.b [$BF],Y\n\n #_01912B: TYA\n #_01912C: CLC\n #_01912D: ADC.w #$0080\n #_019130: TAY\n\n #_019131: DEC.b $B2\n #_019133: BNE .next\n\n #_019135: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards1x1Solid_1to16_plus3", + "code": "RoomDraw_Rightwards1x1Solid_1to16_plus3:\n #_019136: LDA.w #$0004\n #_019139: JSR RoomDraw_GetSize_1to16_timesA\n\n #_01913C: JMP.w RoomDraw_Repeated1x1_CachedCount\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DoorSwitcherer", + "code": "RoomDraw_DoorSwitcherer:\n #_01913F: STY.w $04B0\n\n #_019142: LDA.b $BF\n #_019144: CMP.w #$4000\n #_019147: BNE .lower_layer_a\n\n #_019149: TYA\n #_01914A: ORA.w #$2000\n #_01914D: STA.w $04B0\n\n #_019150: TAY\n\n.lower_layer_a\n #_019151: LDA.w $0402\n #_019154: AND.w #$1000\n #_019157: BEQ .dont_draw\n\n #_019159: STY.b $08\n\n #_01915B: LDY.w #$0052\n #_01915E: LDY.b $08\n\n #_019160: LDA.w #$0003\n #_019163: STA.b $0E\n\n #_019165: JSR DrawUnusedDoorSwitchObject\n\n #_019168: LDY.w #$0052\n\n #_01916B: LDA.b $08\n #_01916D: CLC\n #_01916E: ADC.w #$000A\n\n #_019171: LDY.b $BF\n #_019173: CPY.w #$4000\n #_019176: BNE .lower_layer_b\n\n #_019178: CLC\n #_019179: ADC.w #$0004\n\n.lower_layer_b\n #_01917C: LDA.w #$0003\n #_01917F: STA.b $0E\n\n #_019181: JSR RoomDraw_DrawUnreachableDoorSwitcher\n\n #_019184: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nothing_E", + "code": "RoomDraw_Nothing_E:\n #_01918F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MovingWallWest", + "code": "RoomDraw_MovingWallWest:\n #_019190: JSR RoomDraw_CheckIfWallIsMoved\n #_019193: BCS .continue\n\n #_019195: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ChestPlatformCorner_advance_from_X", + "code": "RoomDraw_ChestPlatformCorner_advance_from_X:\n #_019210: TXA\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ChestPlatformCorner_advance_from_A", + "code": "RoomDraw_ChestPlatformCorner_advance_from_A:\n #_019211: CLC\n #_019212: ADC.w #$000C\n #_019215: TAX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ChestPlatformCorner", + "code": "RoomDraw_ChestPlatformCorner:\n #_019216: LDA.w #$0003\n\n #_019219: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MovingWallEast", + "code": "RoomDraw_MovingWallEast:\n #_01921C: JSR RoomDraw_CheckIfWallIsMoved\n #_01921F: BCS .continue\n\n #_019221: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_CheckIfWallIsMoved", + "code": "RoomDraw_CheckIfWallIsMoved:\n #_019298: STZ.w $041C\n #_01929B: STZ.w $041A\n\n #_01929E: SEP #$30\n\n #_0192A0: LDX.b #$00\n #_0192A2: TXY\n\n #_0192A3: LDA.b $AE\n #_0192A5: CMP.b #$1C\n #_0192A7: BCC .not_moving_wall_tag\n\n #_0192A9: CMP.b #$20\n #_0192AB: BCC .has_moving_wall_tag\n\n.not_moving_wall_tag\n #_0192AD: LDY.b #$02\n #_0192AF: INX\n\n #_0192B0: LDA.b $AF\n #_0192B2: CMP.b #$1C\n #_0192B4: BCC .draw_wall\n\n #_0192B6: CMP.b #$20\n #_0192B8: BCS .draw_wall\n\n.has_moving_wall_tag\n #_0192BA: LDA.w $0403\n #_0192BD: AND.w DoorFlagMasks-1,Y\n #_0192C0: BEQ .draw_wall\n\n #_0192C2: STZ.w $046C\n\n #_0192C5: STZ.b $AE,X\n\n #_0192C7: STZ.w $0414\n\n #_0192CA: REP #$31\n\n #_0192CC: RTS", + "file": "bank_01.asm" + }, + { + "name": "MovingWall_FillReplacementBuffer", + "code": "MovingWall_FillReplacementBuffer:\n #_0192D1: LDX.w #$007E\n #_0192D4: LDA.w #$01EC\n\n.set_next\n #_0192D7: STA.l $7EC880,X\n\n #_0192DB: DEX\n #_0192DC: DEX\n #_0192DD: BPL .set_next\n\n; ---------------------------------------------------------\n\n #_0192DF: LDA.b $06\n #_0192E1: AND.w #$003F\n #_0192E4: LSR A\n #_0192E5: STA.b $0A\n\n #_0192E7: TYA\n #_0192E8: AND.w #$0040\n #_0192EB: BEQ .upper_layer\n\n #_0192ED: LDA.w #$0400\n #_0192F0: TSB.b $0A\n\n.upper_layer\n #_0192F2: LDA.b $0A\n #_0192F4: ORA.w #$1000\n #_0192F7: STA.w $042A\n\n #_0192FA: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsDecor4x4spaced2_1to16", + "code": "RoomDraw_RightwardsDecor4x4spaced2_1to16:\n #_0192FB: JSR RoomDraw_GetSize_1to16\n\n #_0192FE: STX.b $0A\n\n.next\n #_019300: LDX.b $0A\n #_019302: JSR RoomDraw_4x4\n\n #_019305: INY\n #_019306: INY\n #_019307: INY\n #_019308: INY\n\n #_019309: DEC.b $B2\n #_01930B: BNE .next\n\n #_01930D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor4x4spaced2_1to16", + "code": "RoomDraw_DownwardsDecor4x4spaced2_1to16:\n #_01930E: JSR RoomDraw_GetSize_1to16\n\n #_019311: STX.b $0A\n\n.next\n #_019313: LDX.b $0A\n #_019315: JSR RoomDraw_4x4\n\n #_019318: TYA\n #_019319: CLC\n #_01931A: ADC.w #$02F8\n #_01931D: TAY\n\n #_01931E: DEC.b $B2\n #_019320: BNE .next\n\n #_019322: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsStatue2x3spaced2_1to16", + "code": "RoomDraw_RightwardsStatue2x3spaced2_1to16:\n #_019323: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019326: LDX.w #obj0E26-RoomDrawObjectData\n #_019329: LDA.w #$0002\n #_01932C: JSR RoomDraw_1x3N_rightwards\n\n #_01932F: INY\n #_019330: INY\n #_019331: INY\n #_019332: INY\n\n #_019333: DEC.b $B2\n #_019335: BNE .next\n\n #_019337: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsBlock2x2spaced2_1to16", + "code": "RoomDraw_RightwardsBlock2x2spaced2_1to16:\n #_019338: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01933B: JSR RoomDraw_Rightwards2x2\n\n #_01933E: INY\n #_01933F: INY\n #_019340: INY\n #_019341: INY\n\n #_019342: DEC.b $B2\n #_019344: BNE .next\n\n #_019346: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsBlock2x2spaced2_1to16", + "code": "RoomDraw_DownwardsBlock2x2spaced2_1to16:\n #_019347: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01934A: JSR RoomDraw_Downwards2x2\n\n #_01934D: CLC\n #_01934E: ADC.w #$0100\n #_019351: TAY\n\n #_019352: DEC.b $B2\n #_019354: BNE .next\n\n #_019356: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsPillar2x4spaced2_1to16", + "code": "RoomDraw_DownwardsPillar2x4spaced2_1to16:\n #_019357: JSR RoomDraw_GetSize_1to16\n\n #_01935A: STX.b $0C\n\n.next\n #_01935C: LDX.b $0C\n #_01935E: LDA.w #$0002\n #_019361: JSR RoomDraw_Nx4\n\n #_019364: TYA\n #_019365: CLC\n #_019366: ADC.w #$02FC\n #_019369: TAY\n\n #_01936A: DEC.b $B2\n #_01936C: BNE .next\n\n #_01936E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsPillar2x4spaced4_1to16", + "code": "RoomDraw_RightwardsPillar2x4spaced4_1to16:\n #_01936F: JSR RoomDraw_GetSize_1to16\n\n #_019372: STX.b $0C\n\n.next\n #_019374: LDX.b $0C\n #_019376: LDA.w #$0002\n #_019379: JSR RoomDraw_Nx4\n\n #_01937C: TYA\n #_01937D: CLC\n #_01937E: ADC.w #$0008\n #_019381: TAY\n\n #_019382: DEC.b $B2\n #_019384: BNE .next\n\n #_019386: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsDecor4x3spaced4_1to16", + "code": "RoomDraw_RightwardsDecor4x3spaced4_1to16:\n #_019387: STX.b $0A\n\n #_019389: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01938C: LDX.b $0A\n #_01938E: LDA.w #$0004\n #_019391: JSR RoomDraw_1x3N_rightwards\n\n #_019394: TYA\n #_019395: CLC\n #_019396: ADC.w #$0008\n #_019399: TAY\n\n #_01939A: DEC.b $B2\n #_01939C: BNE .next\n\n #_01939E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor3x4spaced4_1to16", + "code": "RoomDraw_DownwardsDecor3x4spaced4_1to16:\n #_01939F: STX.b $0A\n\n #_0193A1: JSR RoomDraw_GetSize_1to16\n\n.next\n #_0193A4: LDX.b $0A\n #_0193A6: LDA.w #$0003\n #_0193A9: JSR RoomDraw_Nx4\n\n #_0193AC: TYA\n #_0193AD: CLC\n #_0193AE: ADC.w #$03FA\n #_0193B1: TAY\n\n #_0193B2: DEC.b $B2\n #_0193B4: BNE .next\n\n #_0193B6: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsDoubled2x2spaced2_1to16", + "code": "RoomDraw_RightwardsDoubled2x2spaced2_1to16:\n #_0193B7: JSR RoomDraw_GetSize_1to16\n\n.next\n #_0193BA: LDX.w #obj08CA-RoomDrawObjectData\n #_0193BD: JSR RoomDraw_Downwards2x2\n\n #_0193C0: CLC\n #_0193C1: ADC.w #$0200\n #_0193C4: TAY\n\n #_0193C5: TXA\n #_0193C6: CLC\n #_0193C7: ADC.w #$0008\n #_0193CA: TAX\n\n #_0193CB: JSR RoomDraw_Downwards2x2\n\n #_0193CE: LDA.b $08\n #_0193D0: CLC\n #_0193D1: ADC.w #$0008\n #_0193D4: STA.b $08\n\n #_0193D6: TAY\n\n #_0193D7: DEC.b $B2\n #_0193D9: BNE .next\n\n #_0193DB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_TableRock4x4_1to16", + "code": "RoomDraw_TableRock4x4_1to16:\n #_0193DC: INC.b $B2\n\n #_0193DE: ASL.b $B4\n #_0193E0: INC.b $B4\n\n #_0193E2: JSR .draw_rock_segment\n\n #_0193E5: INX\n #_0193E6: INX\n #_0193E7: INX\n #_0193E8: INX\n #_0193E9: INX\n #_0193EA: INX\n #_0193EB: INX\n #_0193EC: INX\n\n; ---------------------------------------------------------\n\n.next_rock\n #_0193ED: JSR .draw_rock_segment\n\n #_0193F0: DEC.b $B4\n #_0193F2: BNE .next_rock\n\n #_0193F4: JSR .draw_rock_segment_with_advance\n\n; ---------------------------------------------------------\n\n.draw_rock_segment_with_advance\n #_0193F7: INX\n #_0193F8: INX\n #_0193F9: INX\n #_0193FA: INX\n #_0193FB: INX\n #_0193FC: INX\n #_0193FD: INX\n #_0193FE: INX\n\n; ---------------------------------------------------------\n\n.draw_rock_segment\n #_0193FF: LDA.b $B2\n #_019401: STA.b $0E\n\n #_019403: LDA.w RoomDrawObjectData+0,X\n #_019406: STA.b [$BF],Y\n\n.next_rock_sub\n #_019408: LDA.w RoomDrawObjectData+2,X\n #_01940B: STA.b [$C2],Y\n\n #_01940D: LDA.w RoomDrawObjectData+4,X\n #_019410: STA.b [$C5],Y\n\n #_019412: INY\n #_019413: INY\n #_019414: INY\n #_019415: INY\n\n #_019416: DEC.b $0E\n #_019418: BNE .next_rock_sub\n\n; ---------------------------------------------------------\n\n #_01941A: LDA.w RoomDrawObjectData+6,X\n #_01941D: STA.b [$C2],Y\n\n #_01941F: LDA.b $08\n #_019421: CLC\n #_019422: ADC.w #$0080\n #_019425: STA.b $08\n\n #_019427: TAY\n\n #_019428: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Spike2x2In4x4SuperSquare", + "code": "RoomDraw_Spike2x2In4x4SuperSquare:\n #_019429: INC.b $B2\n #_01942B: INC.b $B4\n\n.next_super\n #_01942D: LDA.b $B2\n #_01942F: STA.b $0E\n\n.next\n #_019431: JSR RoomDraw_Rightwards2x2\n\n #_019434: DEC.b $0E\n #_019436: BNE .next\n\n #_019438: LDA.b $08\n #_01943A: CLC\n #_01943B: ADC.w #$0100\n #_01943E: STA.b $08\n\n #_019440: TAY\n\n #_019441: DEC.b $B4\n #_019443: BNE .next_super\n\n #_019445: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor2x2spaced12_1to16", + "code": "RoomDraw_DownwardsDecor2x2spaced12_1to16:\n #_019446: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019449: JSR RoomDraw_Downwards2x2\n\n #_01944C: CLC\n #_01944D: ADC.w #$0600\n #_019450: TAY\n\n #_019451: DEC.b $B2\n #_019453: BNE .next\n\n #_019455: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsDecor2x2spaced12_1to16", + "code": "RoomDraw_RightwardsDecor2x2spaced12_1to16:\n #_019456: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019459: JSR RoomDraw_Downwards2x2\n\n #_01945C: CLC\n #_01945D: ADC.w #$FF1C\n #_019460: TAY\n\n #_019461: DEC.b $B2\n #_019463: BNE .next\n\n #_019465: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Waterfall47", + "code": "RoomDraw_Waterfall47:\n #_019466: JSR RoomDraw_GetSize_1to16\n\n #_019469: ASL.b $B2\n\n #_01946B: JSR RoomDraw_2x2and1\n\n #_01946E: TXA\n #_01946F: CLC\n #_019470: ADC.w #$000A\n #_019473: TAX\n\n #_019474: INY\n #_019475: INY\n\n.next\n #_019476: JSR RoomDraw_2x2and1\n\n #_019479: INY\n #_01947A: INY\n\n #_01947B: DEC.b $B2\n #_01947D: BNE .next\n\n #_01947F: TXA\n #_019480: CLC\n #_019481: ADC.w #$000A\n #_019484: TAX\n\n #_019485: JMP.w RoomDraw_2x2and1\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Waterfall48", + "code": "RoomDraw_Waterfall48:\n #_019488: JSR RoomDraw_GetSize_1to16\n\n #_01948B: ASL.b $B2\n\n #_01948D: LDA.w #$0001\n #_019490: JSR RoomDraw_1x3N_rightwards\n\n.next\n #_019493: LDA.w RoomDrawObjectData+0,X\n #_019496: STA.b [$BF],Y\n\n #_019498: LDA.w RoomDrawObjectData+2,X\n #_01949B: STA.b [$CB],Y\n\n #_01949D: LDA.w RoomDrawObjectData+4,X\n #_0194A0: STA.b [$D7],Y\n\n #_0194A2: INY\n #_0194A3: INY\n\n #_0194A4: DEC.b $B2\n #_0194A6: BNE .next\n\n; ---------------------------------------------------------\n\n #_0194A8: INX\n #_0194A9: INX\n #_0194AA: INX\n #_0194AB: INX\n #_0194AC: INX\n #_0194AD: INX\n\n #_0194AE: LDA.w #$0001\n #_0194B1: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsFloorTile4x2_1to16", + "code": "RoomDraw_RightwardsFloorTile4x2_1to16:\n #_0194B4: JSR RoomDraw_GetSize_1to16\n\n #_0194B7: LDA.w #$0008\n #_0194BA: JMP.w RoomDraw_Downwards4x2VariableSpacing\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsBar4x3_1to16", + "code": "RoomDraw_RightwardsBar4x3_1to16:\n #_0194BD: JSR RoomDraw_GetSize_1to16\n\n #_0194C0: ASL.b $B2\n\n #_0194C2: JSR RoomDraw_RightwardBarSegment\n\n #_0194C5: INY\n #_0194C6: INY\n\n #_0194C7: TXA\n #_0194C8: CLC\n #_0194C9: ADC.w #$0006\n #_0194CC: TAX\n\n; ---------------------------------------------------------\n\n.next\n #_0194CD: JSR RoomDraw_RightwardBarSegment\n\n #_0194D0: INY\n #_0194D1: INY\n\n #_0194D2: DEC.b $B2\n #_0194D4: BNE .next\n\n; ---------------------------------------------------------\n\n #_0194D6: TXA\n #_0194D7: CLC\n #_0194D8: ADC.w #$0006\n #_0194DB: TAX\n\n #_0194DC: JMP.w RoomDraw_RightwardBarSegment\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsShelf4x4_1to16", + "code": "RoomDraw_RightwardsShelf4x4_1to16:\n #_0194DF: JSR RoomDraw_GetSize_1to16\n\n #_0194E2: LDA.w #$0001\n #_0194E5: JSR RoomDraw_Nx4\n\n.next\n #_0194E8: LDA.w #$0002\n #_0194EB: JSR RoomDraw_Nx4\n\n #_0194EE: TXA\n #_0194EF: SEC\n #_0194F0: SBC.w #$0010\n #_0194F3: TAX\n\n #_0194F4: DEC.b $B2\n #_0194F6: BNE .next\n\n #_0194F8: TXA\n #_0194F9: CLC\n #_0194FA: ADC.w #$0010\n #_0194FD: TAX\n\n #_0194FE: JMP.w RoomDraw_RightwardShelfEnd\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WaterOverlayA8x8_1to16", + "code": "RoomDraw_WaterOverlayA8x8_1to16:\n #_019501: LDA.b $B2\n #_019503: ASL A\n #_019504: TAX\n\n #_019505: LDA.w WaterOverlayHDMAPositionOffset,X\n #_019508: STA.b $B2\n\n #_01950A: LDA.w WaterOverlayHDMASize,X\n #_01950D: STA.w $0686\n\n #_019510: LDA.b $B4\n #_019512: ASL A\n #_019513: TAX\n\n #_019514: LDA.w WaterOverlayHDMAPositionOffset,X\n #_019517: STA.b $B4\n\n #_019519: LDA.w WaterOverlayHDMASize,X\n #_01951C: STA.w $0684\n\n #_01951F: SEC\n #_019520: SBC.w #$0018\n #_019523: STA.w $0688\n\n #_019526: TYA\n #_019527: AND.w #$007E\n #_01952A: ASL A\n #_01952B: ASL A\n #_01952C: STA.w $0680\n\n; ---------------------------------------------------------\n\n #_01952F: LDA.b $B2\n #_019531: ASL A\n #_019532: ASL A\n #_019533: ASL A\n #_019534: ASL A\n\n #_019535: CLC\n #_019536: ADC.w $062C\n\n #_019539: CLC\n #_01953A: ADC.w $0680\n #_01953D: STA.w $0680\n\n #_019540: TYA\n #_019541: AND.w #$1F80\n #_019544: LSR A\n #_019545: LSR A\n #_019546: LSR A\n #_019547: LSR A\n #_019548: STA.w $0682\n\n #_01954B: LDA.b $B4\n #_01954D: ASL A\n #_01954E: ASL A\n #_01954F: ASL A\n #_019550: ASL A\n\n #_019551: CLC\n #_019552: ADC.w $062E\n\n #_019555: CLC\n #_019556: ADC.w $0682\n #_019559: STA.w $0682\n\n; ---------------------------------------------------------\n\n #_01955C: SEP #$30\n\n #_01955E: LDA.w $0403\n #_019561: AND.w DoorFlagMasks+1\n #_019564: BEQ RoomDraw_NoWater\n\n #_019566: STZ.b $AF\n\n #_019568: STZ.w $0414\n\n #_01956B: REP #$30\n\n #_01956D: LDA.w $0442\n #_019570: STA.w $0440\n\n #_019573: LDA.w $0444\n #_019576: STA.w $0448\n\n #_019579: STZ.w $0444\n #_01957C: STZ.w $0442\n\n #_01957F: LDA.w $04AE\n #_019582: STA.w $049E\n\n #_019585: STZ.w $04AE\n\n #_019588: LDA.b $B2\n #_01958A: DEC A\n #_01958B: ASL A\n #_01958C: ASL A\n #_01958D: STA.b $0E\n\n #_01958F: LDA.b $08\n #_019591: ADC.b $0E\n #_019593: STA.b $08\n\n #_019595: LDA.b $B4\n #_019597: DEC A\n #_019598: XBA\n #_019599: STA.b $0E\n\n #_01959B: LDA.b $08\n #_01959D: ADC.b $0E\n #_01959F: TAX\n\n; =========================================================\n\n#RoomTag_WaterOff_AdjustWater:\n #_0195A0: LDY.w #obj1438-RoomDrawObjectData\n\n #_0195A3: LDA.w #$0004\n #_0195A6: STA.b $0E\n\n.next_floor\n #_0195A8: LDA.w RoomDrawObjectData+0,Y\n #_0195AB: STA.l $7E2000,X\n\n #_0195AF: LDA.w RoomDrawObjectData+2,Y\n #_0195B2: STA.l $7E2002,X\n\n #_0195B6: LDA.w RoomDrawObjectData+4,Y\n #_0195B9: STA.l $7E2004,X\n\n #_0195BD: LDA.w RoomDrawObjectData+6,Y\n #_0195C0: STA.l $7E2006,X\n\n #_0195C4: TYA\n #_0195C5: CLC\n #_0195C6: ADC.w #$0008\n #_0195C9: TAY\n\n #_0195CA: TXA\n #_0195CB: CLC\n #_0195CC: ADC.w #$0080\n #_0195CF: TAX\n\n #_0195D0: DEC.b $0E\n #_0195D2: BNE .next_floor\n\n #_0195D4: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NoWater", + "code": "RoomDraw_NoWater:\n #_0195D5: REP #$30\n\n #_0195D7: LDX.w #obj0110-RoomDrawObjectData\n #_0195DA: LDY.b $08\n\n.next_chunk\n #_0195DC: LDA.b $B2\n #_0195DE: JSR RoomDraw_A_Many32x32Blocks\n\n #_0195E1: LDA.b $08\n #_0195E3: CLC\n #_0195E4: ADC.w #$0200\n #_0195E7: STA.b $08\n\n #_0195E9: TAY\n\n #_0195EA: DEC.b $B4\n #_0195EC: BNE .next_chunk\n\n #_0195EE: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WaterOverlayB8x8_1to16", + "code": "RoomDraw_WaterOverlayB8x8_1to16:\n #_0195EF: LDA.b $B2\n #_0195F1: ASL A\n #_0195F2: TAX\n\n #_0195F3: LDA.w WaterOverlayHDMAPositionOffset,X\n #_0195F6: STA.b $B2\n\n #_0195F8: LDA.w WaterOverlayHDMASize,X\n #_0195FB: SEC\n #_0195FC: SBC.w #$0018\n #_0195FF: STA.w $0686\n\n #_019602: LDA.b $B4\n #_019604: ASL A\n #_019605: TAX\n\n #_019606: LDA.w WaterOverlayHDMAPositionOffset,X\n #_019609: STA.b $B4\n\n #_01960B: LDA.w WaterOverlayHDMASize,X\n #_01960E: SEC\n #_01960F: SBC.w #$0008\n #_019612: STA.w $0688\n\n #_019615: SEC\n #_019616: SBC.w #$0018\n #_019619: STA.w $0684\n\n #_01961C: STZ.w $068A\n\n; ---------------------------------------------------------\n\n #_01961F: TYA\n #_019620: AND.w #$007E\n #_019623: ASL A\n #_019624: ASL A\n #_019625: STA.w $0680\n\n #_019628: LDA.b $B2\n #_01962A: ASL A\n #_01962B: ASL A\n #_01962C: ASL A\n #_01962D: ASL A\n\n #_01962E: CLC\n #_01962F: ADC.w $062C\n\n #_019632: CLC\n #_019633: ADC.w $0680\n #_019636: STA.w $0680\n\n #_019639: TYA\n #_01963A: AND.w #$1F80\n #_01963D: LSR A\n #_01963E: LSR A\n #_01963F: LSR A\n #_019640: LSR A\n #_019641: STA.w $0682\n\n #_019644: LDA.b $B4\n #_019646: ASL A\n #_019647: ASL A\n #_019648: ASL A\n #_019649: ASL A\n\n #_01964A: CLC\n #_01964B: ADC.w $062E\n\n #_01964E: CLC\n #_01964F: ADC.w $0682\n\n #_019652: SEC\n #_019653: SBC.w #$0008\n #_019656: STA.w $0682\n\n; ---------------------------------------------------------\n\n #_019659: SEP #$30\n\n #_01965B: LDA.w $0403\n #_01965E: AND.w DoorFlagMasks+1\n #_019661: BEQ .not_drained_or_maybe_not_filled\n\n #_019663: STZ.b $AF\n\n #_019665: BRA .continue\n\n; ---------------------------------------------------------\n\n.not_drained_or_maybe_not_filled\n #_019667: REP #$30\n\n #_019669: LDA.w $0442\n #_01966C: STA.w $0440\n\n #_01966F: LDA.w $0444\n #_019672: STA.w $0448\n\n #_019675: STZ.w $0444\n #_019678: STZ.w $0442\n\n #_01967B: LDA.w $04AE\n #_01967E: STA.w $049E\n\n #_019681: STZ.w $04AE\n #_019684: STZ.w $0414\n\n; ---------------------------------------------------------\n\n.continue\n #_019687: REP #$30\n\n #_019689: LDA.b $B4\n #_01968B: ASL A\n #_01968C: TAX\n\n #_01968D: LDA.w WaterOverlayObjectCount,X\n #_019690: STA.b $04\n\n #_019692: LDX.w #obj0110-RoomDrawObjectData\n\n; ---------------------------------------------------------\n\n.next_chunk\n #_019695: LDY.b $08\n\n #_019697: LDA.b $B2\n #_019699: STA.b $0A\n\n.next_tile\n #_01969B: LDA.w RoomDrawObjectData+0,X\n #_01969E: STA.b [$BF],Y\n\n #_0196A0: LDA.w RoomDrawObjectData+2,X\n #_0196A3: STA.b [$C2],Y\n\n #_0196A5: LDA.w RoomDrawObjectData+4,X\n #_0196A8: STA.b [$C5],Y\n\n #_0196AA: LDA.w RoomDrawObjectData+6,X\n #_0196AD: STA.b [$C8],Y\n\n #_0196AF: LDA.w RoomDrawObjectData+8,X\n #_0196B2: STA.b [$CB],Y\n\n #_0196B4: LDA.w RoomDrawObjectData+10,X\n #_0196B7: STA.b [$CE],Y\n\n #_0196B9: LDA.w RoomDrawObjectData+12,X\n #_0196BC: STA.b [$D1],Y\n\n #_0196BE: LDA.w RoomDrawObjectData+14,X\n #_0196C1: STA.b [$D4],Y\n\n #_0196C3: INY\n #_0196C4: INY\n #_0196C5: INY\n #_0196C6: INY\n #_0196C7: INY\n #_0196C8: INY\n #_0196C9: INY\n #_0196CA: INY\n\n #_0196CB: DEC.b $0A\n #_0196CD: BNE .next_tile\n\n #_0196CF: LDA.b $08\n #_0196D1: CLC\n #_0196D2: ADC.w #$0100\n #_0196D5: STA.b $08\n\n #_0196D7: DEC.b $04\n #_0196D9: BNE .next_chunk\n\n #_0196DB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsLine1x1_1to16plus1", + "code": "RoomDraw_RightwardsLine1x1_1to16plus1:\n #_0196DC: JSR RoomDraw_GetSize_1to16\n\n #_0196DF: INC.b $B2\n\n #_0196E1: JMP.w RoomDraw_Repeated1x1_CachedCount\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsLine1x1_1to16plus1", + "code": "RoomDraw_DownwardsLine1x1_1to16plus1:\n #_0196E4: JSR RoomDraw_GetSize_1to16\n\n #_0196E7: INC.b $B2\n\n.next\n #_0196E9: LDA.w RoomDrawObjectData+0,X\n #_0196EC: STA.b [$BF],Y\n\n #_0196EE: TYA\n #_0196EF: CLC\n #_0196F0: ADC.w #$0080\n #_0196F3: TAY\n\n #_0196F4: DEC.b $B2\n #_0196F6: BNE .next\n\n #_0196F8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsDecor4x2spaced8_1to16", + "code": "RoomDraw_RightwardsDecor4x2spaced8_1to16:\n #_0196F9: JSR RoomDraw_GetSize_1to16\n\n #_0196FC: LDA.w #$0018\n #_0196FF: JMP.w RoomDraw_Downwards4x2VariableSpacing\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor2x4spaced8_1to16", + "code": "RoomDraw_DownwardsDecor2x4spaced8_1to16:\n #_019702: STX.b $0A\n\n #_019704: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019707: LDX.b $0A\n\n #_019709: LDA.w #$0002\n #_01970C: JSR RoomDraw_Nx4\n\n #_01970F: TYA\n #_019710: CLC\n #_019711: ADC.w #$05FC\n #_019714: TAY\n\n #_019715: DEC.b $B2\n #_019717: BNE .next\n\n #_019719: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nothing_C", + "code": "RoomDraw_Nothing_C:\n #_01971A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsDecor3x4spaced2_1to16", + "code": "RoomDraw_DownwardsDecor3x4spaced2_1to16:\n #_01971B: STX.b $0A\n\n #_01971D: JSR RoomDraw_GetSize_1to16\n\n.next\n #_019720: LDX.b $0A\n\n #_019722: LDA.w #$0003\n #_019725: JSR RoomDraw_Nx4\n\n #_019728: TYA\n #_019729: CLC\n #_01972A: ADC.w #$02FA\n #_01972D: TAY\n\n #_01972E: DEC.b $B2\n #_019730: BNE .next\n\n #_019732: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OpenChestPlatform", + "code": "RoomDraw_OpenChestPlatform:\n #_019733: LDA.b $BF\n #_019735: CMP.w #$4000\n #_019738: BNE .lower_layer\n\n #_01973A: TYA\n #_01973B: ORA.w #$2000\n #_01973E: TAY\n\n.lower_layer\n #_01973F: TYX\n\n #_019740: LDY.w #obj0AB4-RoomDrawObjectData\n\n #_019743: INC.b $B2\n\n #_019745: LDA.b $B4\n #_019747: ASL A\n #_019748: CLC\n #_019749: ADC.w #$0005\n #_01974C: STA.b $B4\n\n; ---------------------------------------------------------\n\n.next_segment\n #_01974E: JSR .draw_segment\n\n #_019751: DEC.b $B4\n #_019753: BNE .next_segment\n\n #_019755: INY\n #_019756: INY\n\n #_019757: JSR .draw_segment\n\n #_01975A: INY\n #_01975B: INY\n\n; ---------------------------------------------------------\n\n.draw_segment\n #_01975C: PHX\n\n #_01975D: LDA.b $B2\n #_01975F: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_019761: LDA.w RoomDrawObjectData+0,Y\n #_019764: STA.l $7E2000,X\n\n #_019768: LDA.w RoomDrawObjectData+6,Y\n\n.next_fill_a\n #_01976B: STA.l $7E2002,X\n\n #_01976F: INX\n #_019770: INX\n\n #_019771: DEC.b $0A\n #_019773: BNE .next_fill_a\n\n; ---------------------------------------------------------\n\n #_019775: LDA.w RoomDrawObjectData+12,Y\n #_019778: STA.l $7E2002,X\n\n #_01977C: LDA.w RoomDrawObjectData+18,Y\n #_01977F: STA.l $7E2004,X\n #_019783: STA.l $7E2006,X\n #_019787: STA.l $7E2008,X\n #_01978B: STA.l $7E200A,X\n\n #_01978F: LDA.b $B2\n #_019791: STA.b $0A\n\n #_019793: LDA.w RoomDrawObjectData+24,Y\n #_019796: STA.l $7E200C,X\n\n; ---------------------------------------------------------\n\n #_01979A: LDA.w RoomDrawObjectData+30,Y\n\n.next_fill_b\n #_01979D: STA.l $7E200E,X\n\n #_0197A1: INX\n #_0197A2: INX\n\n #_0197A3: DEC.b $0A\n #_0197A5: BNE .next_fill_b\n\n; ---------------------------------------------------------\n\n #_0197A7: LDA.w RoomDrawObjectData+36,Y\n #_0197AA: STA.l $7E200E,X\n\n #_0197AE: PLA\n #_0197AF: CLC\n #_0197B0: ADC.w #$0080\n #_0197B3: TAX\n\n #_0197B4: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsBar2x5_1to16", + "code": "RoomDraw_DownwardsBar2x5_1to16:\n #_0197B5: LDA.w #$0002\n #_0197B8: JSR RoomDraw_GetSize_1to16_timesA\n\n #_0197BB: ASL.b $B2\n\n #_0197BD: LDA.w RoomDrawObjectData+0,X\n #_0197C0: STA.b [$BF],Y\n\n #_0197C2: LDA.w RoomDrawObjectData+2,X\n #_0197C5: STA.b [$C2],Y\n\n.next\n #_0197C7: LDA.w RoomDrawObjectData+4,X\n #_0197CA: STA.b [$CB],Y\n\n #_0197CC: LDA.w RoomDrawObjectData+6,X\n #_0197CF: STA.b [$CE],Y\n\n #_0197D1: TYA\n #_0197D2: CLC\n #_0197D3: ADC.w #$0080\n #_0197D6: TAY\n\n #_0197D7: DEC.b $B2\n #_0197D9: BNE .next\n\n #_0197DB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Weird2x4_1_to_16", + "code": "RoomDraw_Weird2x4_1_to_16:\n #_0197DC: JSR RoomDraw_GetSize_1to16\n\n.next\n #_0197DF: LDX.w #obj0B16-RoomDrawObjectData\n #_0197E2: LDA.w #$0002\n #_0197E5: JSR RoomDraw_Nx4\n\n #_0197E8: DEC.b $B2\n #_0197EA: BNE .next\n\n #_0197EC: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4", + "code": "RoomDraw_4x4:\n #_0197ED: LDA.w #$0004\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Nx4", + "code": "RoomDraw_Nx4:\n #_0197F0: STA.b $0E\n\n.next\n #_0197F2: LDA.w RoomDrawObjectData+0,X\n #_0197F5: STA.b [$BF],Y\n\n #_0197F7: LDA.w RoomDrawObjectData+2,X\n #_0197FA: STA.b [$CB],Y\n\n #_0197FC: LDA.w RoomDrawObjectData+4,X\n #_0197FF: STA.b [$D7],Y\n\n #_019801: LDA.w RoomDrawObjectData+6,X\n #_019804: STA.b [$DA],Y\n\n #_019806: TXA\n #_019807: CLC\n #_019808: ADC.w #$0008\n #_01980B: TAX\n\n #_01980C: INY\n #_01980D: INY\n\n #_01980E: DEC.b $0E\n #_019810: BNE .next\n\n #_019812: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_4x4Corner_BothBG", + "code": "RoomDraw_4x4Corner_BothBG:\n #_019813: TXA\n #_019814: TYX\n #_019815: TAY\n\n #_019816: LDA.w #$0004\n\n; ---------------------------------------------------------\n\n.set_count\n #_019819: STA.b $0E\n\n.next\n #_01981B: LDA.w RoomDrawObjectData+0,Y\n #_01981E: STA.l $7E4000,X\n #_019822: STA.l $7E2000,X\n\n #_019826: LDA.w RoomDrawObjectData+2,Y\n #_019829: STA.l $7E4080,X\n #_01982D: STA.l $7E2080,X\n\n #_019831: LDA.w RoomDrawObjectData+4,Y\n #_019834: STA.l $7E4100,X\n #_019838: STA.l $7E2100,X\n\n #_01983C: LDA.w RoomDrawObjectData+6,Y\n #_01983F: STA.l $7E4180,X\n #_019843: STA.l $7E2180,X\n\n #_019847: TYA\n #_019848: CLC\n #_019849: ADC.w #$0008\n #_01984C: TAY\n\n #_01984D: INX\n #_01984E: INX\n\n #_01984F: DEC.b $0E\n #_019851: BNE .next\n\n #_019853: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WeirdCornerBottom_BothBG", + "code": "RoomDraw_WeirdCornerBottom_BothBG:\n #_019854: TXA\n #_019855: TYX\n #_019856: TAY\n\n #_019857: LDA.w #$0003\n #_01985A: BRA RoomDraw_4x4Corner_BothBG_set_count\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WeirdCornerTop_BothBG", + "code": "RoomDraw_WeirdCornerTop_BothBG:\n #_01985C: TXA\n #_01985D: TYX\n #_01985E: TAY\n\n #_01985F: LDA.w #$0004\n #_019862: STA.b $0E\n\n.next\n #_019864: LDA.w RoomDrawObjectData+0,Y\n #_019867: STA.l $7E4000,X\n #_01986B: STA.l $7E2000,X\n\n #_01986F: LDA.w RoomDrawObjectData+2,Y\n #_019872: STA.l $7E4080,X\n #_019876: STA.l $7E2080,X\n\n #_01987A: LDA.w RoomDrawObjectData+4,Y\n #_01987D: STA.l $7E4100,X\n #_019881: STA.l $7E2100,X\n\n #_019885: TYA\n #_019886: CLC\n #_019887: ADC.w #$0006\n #_01988A: TAY\n\n #_01988B: INX\n #_01988C: INX\n\n #_01988D: DEC.b $0E\n #_01988F: BNE .next\n\n #_019891: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_LitTorch", + "code": "RoomDraw_LitTorch:\n #_019892: INC.w $045A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Rightwards2x2", + "code": "RoomDraw_Rightwards2x2:\n #_019895: LDA.w RoomDrawObjectData+0,X\n #_019898: STA.b [$BF],Y\n\n #_01989A: LDA.w RoomDrawObjectData+2,X\n #_01989D: STA.b [$CB],Y\n\n #_01989F: LDA.w RoomDrawObjectData+4,X\n #_0198A2: STA.b [$C2],Y\n\n #_0198A4: LDA.w RoomDrawObjectData+6,X\n #_0198A7: STA.b [$CE],Y\n\n #_0198A9: INY\n #_0198AA: INY\n #_0198AB: INY\n #_0198AC: INY\n\n #_0198AD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigKeyLock", + "code": "RoomDraw_BigKeyLock:\n #_0198AE: LDX.w $0498\n\n #_0198B1: TYA\n #_0198B2: STA.w $06E0,X\n\n #_0198B5: LDA.w $0402\n #_0198B8: AND.w RoomFlagMask,X\n #_0198BB: BNE .lock_opened\n\n #_0198BD: INX\n #_0198BE: INX\n #_0198BF: STX.w $0498\n\n #_0198C2: LDX.w #obj1494-RoomDrawObjectData\n #_0198C5: BRA RoomDraw_Rightwards2x2\n\n.lock_opened\n #_0198C7: STZ.w $06E0,X\n\n #_0198CA: INX\n #_0198CB: INX\n #_0198CC: STX.w $0498\n\n; ---------------------------------------------------------\n\n#EXIT_0198CF:\n #_0198CF: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Chest", + "code": "RoomDraw_Chest:\n #_0198D0: LDA.b $10\n #_0198D2: AND.w #$00FF\n #_0198D5: CMP.w #$001A\n #_0198D8: BEQ EXIT_0198CF\n\n #_0198DA: LDX.w $0496\n\n #_0198DD: TYA\n #_0198DE: STA.w $06E0,X\n\n #_0198E1: LDA.b $BF\n #_0198E3: CMP.w #$4000\n #_0198E6: BNE .lower_layer\n\n #_0198E8: TYA\n #_0198E9: ORA.w #$2000\n #_0198EC: STA.w $06E0,X\n\n.lower_layer\n #_0198EF: LDA.w $0402\n #_0198F2: AND.w RoomFlagMask,X\n #_0198F5: BNE RoomDraw_Chest_opened\n\n #_0198F7: INX\n #_0198F8: INX\n #_0198F9: STX.w $0496\n #_0198FC: STX.w $0498\n\n #_0198FF: LDY.w #$FF00\n #_019902: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n #_019905: LDA.b $AE\n #_019907: AND.w #$00FF\n #_01990A: CMP.w #$0027\n #_01990D: BEQ .tag_1_invisible\n\n #_01990F: CMP.w #$003C\n #_019912: BEQ .tag_1_invisible\n\n #_019914: CMP.w #$003E\n #_019917: BEQ .tag_1_invisible\n\n #_019919: CMP.w #$0029\n #_01991C: BCC .tag_1_not_invisible\n\n #_01991E: CMP.w #$0033\n #_019921: BCC .tag_1_invisible\n\n; ---------------------------------------------------------\n\n.tag_1_not_invisible\n #_019923: LDA.b $AF\n #_019925: AND.w #$00FF\n #_019928: CMP.w #$0027\n #_01992B: BEQ .tag_2_invisible\n\n #_01992D: CMP.w #$003C\n #_019930: BEQ .tag_2_invisible\n\n #_019932: CMP.w #$003E\n #_019935: BEQ .tag_2_invisible\n\n #_019937: CMP.w #$0029\n #_01993A: BCC .tag_2_not_invisible\n\n #_01993C: CMP.w #$0033\n #_01993F: BCS .tag_2_not_invisible\n\n.tag_2_invisible\n #_019941: LDY.w #$00FF\n\n #_019944: INX\n #_019945: INX\n\n; ---------------------------------------------------------\n\n.tag_1_invisible\n #_019946: LDA.w $0402\n #_019949: AND.l RoomFlagMask,X\n #_01994D: BEQ EXIT_0198CF\n\n #_01994F: TYA\n #_019950: AND.b $AE\n #_019952: STA.b $AE\n\n.tag_2_not_invisible\n #_019954: LDY.b $08\n #_019956: LDX.w #obj149C-RoomDrawObjectData\n #_019959: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Chest_opened", + "code": "RoomDraw_Chest_opened:\n #_01995C: STZ.w $06E0,X\n\n #_01995F: INX\n #_019960: INX\n #_019961: STX.w $0496\n #_019964: STX.w $0498\n\n #_019967: LDY.w #$FF00\n #_01996A: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n #_01996D: LDA.b $AE\n #_01996F: AND.w #$00FF\n #_019972: CMP.w #$0027\n #_019975: BEQ .tag_1_invisible\n\n #_019977: CMP.w #$003C\n #_01997A: BEQ .tag_1_invisible\n\n #_01997C: CMP.w #$003E\n #_01997F: BEQ .tag_1_invisible\n\n #_019981: CMP.w #$0029\n #_019984: BCC .tag_1_not_invisible\n\n #_019986: CMP.w #$0033\n #_019989: BCC .tag_1_invisible\n\n; ---------------------------------------------------------\n\n.tag_1_not_invisible\n #_01998B: LDA.b $AF\n #_01998D: AND.w #$00FF\n #_019990: CMP.w #$0027\n #_019993: BEQ .tag_2_invisible\n\n #_019995: CMP.w #$003C\n #_019998: BEQ .tag_2_invisible\n\n #_01999A: CMP.w #$003E\n #_01999D: BEQ .tag_2_invisible\n\n #_01999F: CMP.w #$0029\n #_0199A2: BCC .tag_2_not_invisible\n\n #_0199A4: CMP.w #$0033\n #_0199A7: BCS .tag_2_not_invisible\n\n.tag_2_invisible\n #_0199A9: LDY.w #$00FF\n #_0199AC: INX\n #_0199AD: INX\n\n.tag_1_invisible\n #_0199AE: TYA\n #_0199AF: AND.b $AE\n #_0199B1: STA.b $AE\n\n.tag_2_not_invisible\n #_0199B3: LDY.b $08\n #_0199B5: LDX.w #obj14A4-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OpenChest", + "code": "RoomDraw_OpenChest:\n #_0199B8: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigChest", + "code": "RoomDraw_BigChest:\n #_0199BB: LDX.w $0496\n\n #_0199BE: TYA\n #_0199BF: ORA.w #$8000\n #_0199C2: STA.w $06E0,X\n\n #_0199C5: LDA.b $BF\n #_0199C7: CMP.w #$4000\n #_0199CA: BNE .lower_layer\n\n #_0199CC: TYA\n #_0199CD: ORA.w #$A000\n #_0199D0: STA.w $06E0,X\n\n.lower_layer\n #_0199D3: LDA.w $0402\n #_0199D6: AND.w RoomFlagMask,X\n #_0199D9: BNE RoomDraw_BigChest_opened\n\n #_0199DB: INX\n #_0199DC: INX\n #_0199DD: STX.w $0496\n #_0199E0: STX.w $0498\n\n #_0199E3: LDX.w #obj14AC-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_TableRock4x3", + "code": "RoomDraw_TableRock4x3:\n #_0199E6: LDA.w #$0004\n #_0199E9: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SolidWallDecor3x4", + "code": "RoomDraw_SolidWallDecor3x4:\n #_0199EC: LDA.w #$0003\n #_0199EF: JMP.w RoomDraw_Nx4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigChest_opened", + "code": "RoomDraw_BigChest_opened:\n #_0199F2: STZ.w $06E0,X\n\n #_0199F5: INX\n #_0199F6: INX\n #_0199F7: STX.w $0496\n #_0199FA: STX.w $0498\n\n #_0199FD: LDX.w #obj14C4-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OpenBigChest", + "code": "RoomDraw_OpenBigChest:\n #_019A00: LDA.w #$0004\n #_019A03: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigWallDecor", + "code": "RoomDraw_BigWallDecor:\n #_019A06: LDA.w #$0008\n #_019A09: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Utility6x3", + "code": "RoomDraw_Utility6x3:\n #_019A0C: LDA.w #$0006\n #_019A0F: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MagicBatAltar", + "code": "RoomDraw_MagicBatAltar:\n #_019A12: TXY\n\n #_019A13: LDA.b $BF\n #_019A15: CMP.w #$4000\n #_019A18: BNE .lower_layer\n\n #_019A1A: LDA.b $08\n #_019A1C: ORA.w #$2000\n #_019A1F: STA.b $08\n\n.lower_layer\n #_019A21: LDX.b $08\n\n #_019A23: LDA.w #$0008\n #_019A26: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next\n #_019A28: LDA.w RoomDrawObjectData+0,Y\n #_019A2B: STA.l $7E2000,X\n\n #_019A2F: LDA.w RoomDrawObjectData+2,Y\n #_019A32: STA.l $7E2080,X\n\n #_019A36: LDA.w RoomDrawObjectData+4,Y\n #_019A39: STA.l $7E2100,X\n\n #_019A3D: LDA.w RoomDrawObjectData+6,Y\n #_019A40: STA.l $7E2180,X\n\n #_019A44: LDA.w RoomDrawObjectData+8,Y\n #_019A47: STA.l $7E2200,X\n\n #_019A4B: LDA.w RoomDrawObjectData+10,Y\n #_019A4E: STA.l $7E2280,X\n\n #_019A52: LDA.w RoomDrawObjectData+12,Y\n #_019A55: STA.l $7E2300,X\n\n #_019A59: TYA\n #_019A5A: CLC\n #_019A5B: ADC.w #$000E\n #_019A5E: TAY\n\n #_019A5F: INX\n #_019A60: INX\n\n #_019A61: DEC.b $0E\n #_019A63: BNE .next\n\n #_019A65: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SmithyFurnace", + "code": "RoomDraw_SmithyFurnace:\n #_019A66: LDY.w #obj1F92-RoomDrawObjectData\n #_019A69: LDA.w #$0006\n #_019A6C: JMP.w RoomDraw_SomeBigDecors\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_EnabledStarSwitch", + "code": "RoomDraw_EnabledStarSwitch:\n #_019A6F: PHX\n\n #_019A70: LDX.w $0432\n\n #_019A73: TYA\n #_019A74: LSR A\n #_019A75: STA.w $06A0,X\n\n #_019A78: LDA.b $BF\n #_019A7A: CMP.w #$4000\n #_019A7D: BNE .lower_layer\n\n #_019A7F: TYA\n #_019A80: ORA.w #$2000\n #_019A83: LSR A\n #_019A84: STA.w $06A0,X\n\n.lower_layer\n #_019A87: INX\n #_019A88: INX\n #_019A89: STX.w $0432\n\n #_019A8C: PLX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Single2x2", + "code": "RoomDraw_Single2x2:\n #_019A8D: JMP.w RoomDraw_Downwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_VerticalTurtleRockPipe", + "code": "RoomDraw_VerticalTurtleRockPipe:\n #_019A90: LDA.w #$0004\n #_019A93: JSR RoomDraw_1x3N_rightwards\n\n #_019A96: LDA.b $08\n #_019A98: CLC\n #_019A99: ADC.w #$0180\n #_019A9C: TAY\n\n #_019A9D: LDA.w #$0004\n #_019AA0: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_HorizontalTurtleRockPipe", + "code": "RoomDraw_HorizontalTurtleRockPipe:\n #_019AA3: LDA.w #$0006\n #_019AA6: JMP.w RoomDraw_Nx4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RupeeFloor", + "code": "RoomDraw_RupeeFloor:\n #_019AA9: LDA.w $0402\n #_019AAC: AND.w #$1000\n #_019AAF: BNE .exit\n\n #_019AB1: LDA.w #$0003\n #_019AB4: STA.b $0E\n\n #_019AB6: LDY.w #obj1DD6-RoomDrawObjectData\n #_019AB9: LDX.b $08\n\n #_019ABB: LDA.b $BF\n #_019ABD: CMP.w #$4000\n #_019AC0: BNE .next\n\n #_019AC2: TXA\n #_019AC3: ORA.w #$2000\n #_019AC6: TAX\n\n; ---------------------------------------------------------\n\n.next\n #_019AC7: LDA.w RoomDrawObjectData+0,Y\n #_019ACA: STA.l $7E2000,X\n #_019ACE: STA.l $7E2180,X\n #_019AD2: STA.l $7E2300,X\n\n #_019AD6: LDA.w RoomDrawObjectData+2,Y\n #_019AD9: STA.l $7E2080,X\n #_019ADD: STA.l $7E2200,X\n #_019AE1: STA.l $7E2380,X\n\n #_019AE5: INX\n #_019AE6: INX\n #_019AE7: INX\n #_019AE8: INX\n\n #_019AE9: DEC.b $0E\n #_019AEB: BNE .next\n\n.exit\n #_019AED: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Bed4x5", + "code": "RoomDraw_Bed4x5:\n #_019AEE: LDA.w #$0005\n #_019AF1: STA.b $0E\n\n.next\n #_019AF3: LDA.w RoomDrawObjectData+0,X\n #_019AF6: STA.b [$BF],Y\n\n #_019AF8: LDA.w RoomDrawObjectData+2,X\n #_019AFB: STA.b [$C2],Y\n\n #_019AFD: LDA.w RoomDrawObjectData+4,X\n #_019B00: STA.b [$C5],Y\n\n #_019B02: LDA.w RoomDrawObjectData+6,X\n #_019B05: STA.b [$C8],Y\n\n #_019B07: TXA\n #_019B08: CLC\n #_019B09: ADC.w #$0008\n #_019B0C: TAX\n\n #_019B0D: TYA\n #_019B0E: CLC\n #_019B0F: ADC.w #$0080\n #_019B12: TAY\n\n #_019B13: DEC.b $0E\n #_019B15: BNE .next\n\n #_019B17: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_019B18", + "code": "UNREACHABLE_019B18:\n #_019B18: LDA.w #$0002\n #_019B1B: JMP.w RoomDraw_Nx4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WaterHopStairs_A", + "code": "RoomDraw_WaterHopStairs_A:\n #_019B1E: LDA.b $AF\n #_019B20: AND.w #$00FF\n #_019B23: CMP.w #$001B\n #_019B26: BNE .continue\n\n #_019B28: LDA.b $A0\n #_019B2A: ASL A\n #_019B2B: TAX\n\n #_019B2C: LDA.l $7EF000,X\n #_019B30: AND.w #$0100\n #_019B33: BNE .continue\n\n #_019B35: JMP.w RoomDraw_WaterHopStairs_B\n\n; ---------------------------------------------------------\n\n.continue\n #_019B38: LDX.w $0444\n\n #_019B3B: TYA\n #_019B3C: LSR A\n #_019B3D: STA.w $06B8,X\n\n #_019B40: INX\n #_019B41: INX\n #_019B42: STX.w $0444\n\n #_019B45: LDX.w #obj1108-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_PortraitOfMario", + "code": "RoomDraw_PortraitOfMario:\n #_019B48: LDA.w #$0001\n #_019B4B: STA.b $B2\n\n #_019B4D: JMP.w RoomDraw_Downwards4x2VariableSpacing\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrawRightwards3x6", + "code": "RoomDraw_DrawRightwards3x6:\n #_019B50: LDA.w #$0006\n #_019B53: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SanctuaryWall", + "code": "RoomDraw_SanctuaryWall:\n #_019B56: TXY\n\n #_019B57: LDX.b $08\n\n #_019B59: LDA.w #$0006\n #_019B5C: STA.b $0E\n\n.next\n #_019B5E: LDA.w RoomDrawObjectData+0,Y\n #_019B61: STA.l $7E2000,X\n #_019B65: STA.l $7E2008,X\n #_019B69: STA.l $7E2010,X\n #_019B6D: STA.l $7E201C,X\n #_019B71: STA.l $7E2024,X\n #_019B75: STA.l $7E202C,X\n\n #_019B79: ORA.w #$4000\n #_019B7C: STA.l $7E2002,X\n #_019B80: STA.l $7E200A,X\n #_019B84: STA.l $7E2012,X\n #_019B88: STA.l $7E201E,X\n #_019B8C: STA.l $7E2026,X\n #_019B90: STA.l $7E202E,X\n\n #_019B94: LDA.w RoomDrawObjectData+12,Y\n #_019B97: STA.l $7E2004,X\n #_019B9B: STA.l $7E200C,X\n #_019B9F: STA.l $7E2020,X\n #_019BA3: STA.l $7E2028,X\n\n #_019BA7: ORA.w #$4000\n #_019BAA: STA.l $7E2006,X\n #_019BAE: STA.l $7E200E,X\n #_019BB2: STA.l $7E2022,X\n #_019BB6: STA.l $7E202A,X\n\n #_019BBA: INY\n #_019BBB: INY\n\n #_019BBC: TXA\n #_019BBD: CLC\n #_019BBE: ADC.w #$0080\n #_019BC1: TAX\n\n #_019BC2: DEC.b $0E\n #_019BC4: BNE .next\n\n; ---------------------------------------------------------\n\n #_019BC6: TYA\n #_019BC7: CLC\n #_019BC8: ADC.w #$000C\n #_019BCB: TAX\n\n #_019BCC: LDA.b $08\n #_019BCE: CLC\n #_019BCF: ADC.w #$0014\n #_019BD2: TAY\n\n #_019BD3: LDA.w #$0004\n #_019BD6: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ChestPlatformVerticalWall", + "code": "RoomDraw_ChestPlatformVerticalWall:\n #_019BD9: LDA.w RoomDrawObjectData+0,X\n #_019BDC: STA.b [$BF],Y\n\n #_019BDE: LDA.w RoomDrawObjectData+2,X\n #_019BE1: STA.b [$C2],Y\n\n #_019BE3: LDA.w RoomDrawObjectData+4,X\n #_019BE6: STA.b [$C5],Y\n\n #_019BE8: LDA.w RoomDrawObjectData+6,X\n #_019BEB: STA.b [$CB],Y\n\n #_019BED: LDA.w RoomDrawObjectData+8,X\n #_019BF0: STA.b [$CE],Y\n\n #_019BF2: LDA.w RoomDrawObjectData+10,X\n #_019BF5: STA.b [$D1],Y\n\n #_019BF7: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DamFloodGate", + "code": "RoomDraw_DamFloodGate:\n #_019BF8: LDA.w $0402\n #_019BFB: AND.w #$0800\n #_019BFE: BNE .draw_water\n\n #_019C00: LDA.w #$000A\n #_019C03: JSR RoomDraw_Nx4\n\n #_019C06: LDA.w #$000F\n #_019C09: STA.w $0470\n\n #_019C0C: LDA.b $08\n #_019C0E: STA.w $0472\n\n #_019C11: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SomariaLine_increment_count", + "code": "RoomDraw_SomariaLine_increment_count:\n #_019C3B: INC.w $03F4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SomariaLine", + "code": "RoomDraw_SomariaLine:\n #_019C3E: LDA.w RoomDrawObjectData+0,X\n #_019C41: STA.b [$BF],Y\n\n #_019C43: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_PrisonCell", + "code": "RoomDraw_PrisonCell:\n #_019C44: TYX\n\n #_019C45: LDA.b $BF\n #_019C47: CMP.w #$4000\n #_019C4A: BNE .lower_layer\n\n #_019C4C: TXA\n #_019C4D: ORA.w #$2000\n #_019C50: TAX\n\n.lower_layer\n #_019C51: PHX\n\n #_019C52: LDY.w #obj1488-RoomDrawObjectData\n\n #_019C55: LDA.w #$0005\n #_019C58: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next\n #_019C5A: LDA.w RoomDrawObjectData+2,Y\n #_019C5D: STA.l $7E2004,X\n #_019C61: STA.l $7E2012,X\n\n #_019C65: LDA.w RoomDrawObjectData+4,Y\n #_019C68: STA.l $7E2084,X\n\n #_019C6C: ORA.w #$4000\n #_019C6F: STA.l $7E2092,X\n\n #_019C73: LDA.w RoomDrawObjectData+8,Y\n #_019C76: STA.l $7E2104,X\n\n #_019C7A: ORA.w #$4000\n #_019C7D: STA.l $7E2112,X\n\n #_019C81: LDA.w RoomDrawObjectData+10,Y\n #_019C84: STA.l $7E2184,X\n\n #_019C88: ORA.w #$4000\n #_019C8B: STA.l $7E2192,X\n\n #_019C8F: INX\n #_019C90: INX\n\n #_019C91: DEC.b $0C\n #_019C93: BNE .next\n\n; ---------------------------------------------------------\n\n #_019C95: PLX\n\n #_019C96: LDA.w RoomDrawObjectData+0,Y\n #_019C99: STA.l $7E2000,X\n\n #_019C9D: ORA.w #$4000\n #_019CA0: STA.l $7E201E,X\n\n #_019CA4: LDA.w RoomDrawObjectData+2,Y\n #_019CA7: STA.l $7E2002,X\n #_019CAB: STA.l $7E200E,X\n #_019CAF: STA.l $7E2010,X\n #_019CB3: STA.l $7E201C,X\n\n #_019CB7: LDA.w RoomDrawObjectData+6,Y\n #_019CBA: STA.l $7E2102,X\n\n #_019CBE: ORA.w #$4000\n #_019CC1: STA.l $7E211C,X\n\n #_019CC5: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsCannonHole4x3_1to16", + "code": "RoomDraw_RightwardsCannonHole4x3_1to16:\n #_019CC6: JSR RoomDraw_GetSize_1to16\n\n #_019CC9: LDA.w #$0002\n #_019CCC: JSR RoomDraw_1x3N_rightwards\n\n #_019CCF: DEC.b $B2\n #_019CD1: BEQ .skip\n\n.next\n #_019CD3: PHX\n\n #_019CD4: LDA.w #$0002\n #_019CD7: JSR RoomDraw_1x3N_rightwards\n\n #_019CDA: PLX\n\n #_019CDB: DEC.b $B2\n #_019CDD: BNE .next\n\n; ---------------------------------------------------------\n\n.skip\n #_019CDF: TXA\n #_019CE0: CLC\n #_019CE1: ADC.w #$000C\n #_019CE4: TAX\n\n #_019CE5: LDA.w #$0002\n #_019CE8: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsCannonHole3x4_1to16", + "code": "RoomDraw_DownwardsCannonHole3x4_1to16:\n #_019CEB: JSR RoomDraw_GetSize_1to16\n #_019CEE: JSR .draw_segment\n\n #_019CF1: DEC.b $B2\n #_019CF3: BEQ .skip\n\n.next_segment\n #_019CF5: PHX\n\n #_019CF6: JSR .draw_segment\n\n #_019CF9: PLX\n\n #_019CFA: DEC.b $B2\n #_019CFC: BNE .next_segment\n\n.skip\n #_019CFE: TXA\n #_019CFF: CLC\n #_019D00: ADC.w #$000C\n #_019D03: TAX\n\n; ---------------------------------------------------------\n\n.draw_segment\n #_019D04: LDA.w #$0002\n #_019D07: STA.b $0A\n\n.next_segment_part\n #_019D09: LDA.w RoomDrawObjectData+0,X\n #_019D0C: STA.b [$BF],Y\n\n #_019D0E: LDA.w RoomDrawObjectData+2,X\n #_019D11: STA.b [$C2],Y\n\n #_019D13: LDA.w RoomDrawObjectData+4,X\n #_019D16: STA.b [$C5],Y\n\n #_019D18: INX\n #_019D19: INX\n #_019D1A: INX\n #_019D1B: INX\n #_019D1C: INX\n #_019D1D: INX\n\n #_019D1E: TYA\n #_019D1F: CLC\n #_019D20: ADC.w #$0080\n #_019D23: TAY\n\n #_019D24: DEC.b $0A\n #_019D26: BNE .next_segment_part\n\n #_019D28: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_EmptyWaterFace", + "code": "RoomDraw_EmptyWaterFace:\n #_019D29: LDA.b $AF\n #_019D2B: AND.w #$00FF\n #_019D2E: CMP.w #$001B\n #_019D31: BNE .no_water_tag\n\n #_019D33: LDA.b $A0\n #_019D35: ASL A\n #_019D36: TAX\n\n #_019D37: LDA.l $7EF000,X\n #_019D3B: AND.w #$0100\n #_019D3E: BNE RoomDraw_SpittingWaterFace\n\n #_019D40: LDX.w #obj1614-RoomDrawObjectData\n\n; ---------------------------------------------------------\n\n.no_water_tag\n #_019D43: SEP #$20\n\n #_019D45: LDA.b #$19\n #_019D47: CMP.b $AF\n #_019D49: BNE .still_no_water_tag\n\n #_019D4B: LDA.w $0403\n #_019D4E: AND.w DoorFlagMasks+1\n #_019D51: BNE RoomDraw_SpittingWaterFace\n\n.still_no_water_tag\n #_019D53: REP #$20\n\n #_019D55: STY.w $047C\n\n #_019D58: LDA.w #$0003\n #_019D5B: BRA RoomDraw_WaterHoldingObject\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpittingWaterFace", + "code": "RoomDraw_SpittingWaterFace:\n #_019D5D: REP #$20\n\n #_019D5F: LDX.w #obj162C-RoomDrawObjectData\n #_019D62: LDA.w #$0005\n\n #_019D65: BRA RoomDraw_WaterHoldingObject\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrenchingWaterFace", + "code": "RoomDraw_DrenchingWaterFace:\n #_019D67: LDA.w #$0007\n\n #_019D6A: BRA RoomDraw_WaterHoldingObject\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_TableBowl", + "code": "RoomDraw_TableBowl:\n #_019D6C: LDA.w #$0002\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WaterHoldingObject", + "code": "RoomDraw_WaterHoldingObject:\n #_019D6F: STA.b $0E\n\n.next\n #_019D71: LDA.w RoomDrawObjectData+0,X\n #_019D74: STA.b [$BF],Y\n\n #_019D76: LDA.w RoomDrawObjectData+2,X\n #_019D79: STA.b [$C2],Y\n\n #_019D7B: LDA.w RoomDrawObjectData+4,X\n #_019D7E: STA.b [$C5],Y\n\n #_019D80: LDA.w RoomDrawObjectData+6,X\n #_019D83: STA.b [$C8],Y\n\n #_019D85: TXA\n #_019D86: CLC\n #_019D87: ADC.w #$0008\n #_019D8A: TAX\n\n #_019D8B: TYA\n #_019D8C: CLC\n #_019D8D: ADC.w #$0080\n #_019D90: TAY\n\n #_019D91: DEC.b $0E\n #_019D93: BNE .next\n\n #_019D95: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_KholdstareShell", + "code": "RoomDraw_KholdstareShell:\n #_019D96: LDA.w $0402\n #_019D99: ASL A\n #_019D9A: BCS EXIT_019DD8\n\n #_019D9C: LDY.w #obj1DFA-RoomDrawObjectData\n #_019D9F: LDA.w #$000A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SomeBigDecors", + "code": "RoomDraw_SomeBigDecors:\n #_019DA2: STA.b $0A\n\n #_019DA4: LDA.b $BF\n #_019DA6: CMP.w #$4000\n #_019DA9: BNE .lower_layer\n\n #_019DAB: LDA.b $08\n #_019DAD: ORA.w #$2000\n #_019DB0: STA.b $08\n\n.lower_layer\n #_019DB2: LDA.w #$0008\n #_019DB5: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next_super\n #_019DB7: LDA.b $0A\n #_019DB9: STA.b $0E\n\n #_019DBB: LDX.b $08\n\n.next\n #_019DBD: LDA.w RoomDrawObjectData+0,Y\n #_019DC0: STA.l $7E2000,X\n\n #_019DC4: INY\n #_019DC5: INY\n\n #_019DC6: INX\n #_019DC7: INX\n\n #_019DC8: DEC.b $0E\n #_019DCA: BNE .next\n\n #_019DCC: LDA.b $08\n #_019DCE: CLC\n #_019DCF: ADC.w #$0080\n #_019DD2: STA.b $08\n\n #_019DD4: DEC.b $0C\n #_019DD6: BNE .next_super\n\n; ---------------------------------------------------------\n\n#EXIT_019DD8:\n #_019DD8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_TrinexxShell", + "code": "RoomDraw_TrinexxShell:\n #_019DD9: LDA.w $0402\n #_019DDC: ASL A\n #_019DDD: BCS EXIT_019DD8\n\n #_019DDF: TXY\n\n #_019DE0: LDA.w #$000A\n #_019DE3: BRA RoomDraw_SomeBigDecors\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_LampCones", + "code": "RoomDraw_LampCones:\n #_019DE5: LDY.w #obj16DC-RoomDrawObjectData\n #_019DE8: LDA.w #$0514\n #_019DEB: JSR RoomDraw_SingleLampCone\n\n #_019DEE: LDY.w #obj17F6-RoomDrawObjectData\n #_019DF1: LDA.w #$0554\n #_019DF4: JSR RoomDraw_SingleLampCone\n\n #_019DF7: LDY.w #obj1914-RoomDrawObjectData\n #_019DFA: LDA.w #$1514\n #_019DFD: JSR RoomDraw_SingleLampCone\n\n #_019E00: LDY.w #obj1A2A-RoomDrawObjectData\n #_019E03: LDA.w #$1554\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SingleLampCone", + "code": "RoomDraw_SingleLampCone:\n #_019E06: STA.b $00\n\n #_019E08: LDA.w #$000C\n #_019E0B: STA.b $02\n\n.next_super\n #_019E0D: LDA.w #$000C\n #_019E10: STA.b $0C\n\n #_019E12: LDX.b $00\n\n.next\n #_019E14: LDA.w RoomDrawObjectData+0,Y\n #_019E17: STA.l $7E4000,X\n\n #_019E1B: INY\n #_019E1C: INY\n\n #_019E1D: INX\n #_019E1E: INX\n\n #_019E1F: DEC.b $0C\n #_019E21: BNE .next\n\n #_019E23: LDA.b $00\n #_019E25: CLC\n #_019E26: ADC.w #$0080\n #_019E29: STA.b $00\n\n #_019E2B: DEC.b $02\n #_019E2D: BNE .next_super\n\n #_019E2F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AgahnimsAltar", + "code": "RoomDraw_AgahnimsAltar:\n #_019E30: LDA.w #$000E\n #_019E33: STA.b $0E\n\n #_019E35: LDY.w #obj1B4A-RoomDrawObjectData\n #_019E38: LDX.b $08\n\n.next\n #_019E3A: LDA.w RoomDrawObjectData+0,Y\n #_019E3D: STA.l $7E2000,X\n\n #_019E41: ORA.w #$4000\n #_019E44: STA.l $7E201A,X\n\n #_019E48: LDA.w RoomDrawObjectData+28,Y\n #_019E4B: STA.l $7E2002,X\n #_019E4F: STA.l $7E2004,X\n\n #_019E53: EOR.w #$4000\n #_019E56: STA.l $7E2016,X\n #_019E5A: STA.l $7E2018,X\n\n #_019E5E: LDA.w RoomDrawObjectData+56,Y\n #_019E61: STA.l $7E2006,X\n\n #_019E65: EOR.w #$4000\n #_019E68: STA.l $7E2014,X\n\n #_019E6C: LDA.w RoomDrawObjectData+84,Y\n #_019E6F: STA.l $7E2008,X\n\n #_019E73: EOR.w #$4000\n #_019E76: STA.l $7E2012,X\n\n #_019E7A: LDA.w RoomDrawObjectData+112,Y\n #_019E7D: STA.l $7E200A,X\n\n #_019E81: EOR.w #$4000\n #_019E84: STA.l $7E2010,X\n\n #_019E88: LDA.w RoomDrawObjectData+140,Y\n #_019E8B: STA.l $7E200C,X\n\n #_019E8F: EOR.w #$4000\n #_019E92: STA.l $7E200E,X\n\n #_019E96: TXA\n #_019E97: CLC\n #_019E98: ADC.w #$0080\n #_019E9B: TAX\n\n #_019E9C: INY\n #_019E9D: INY\n\n #_019E9E: DEC.b $0E\n #_019EA0: BNE .next\n\n #_019EA2: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AgahnimsWindows", + "code": "RoomDraw_AgahnimsWindows:\n #_019EA3: LDA.w #$0006\n #_019EA6: STA.b $0E\n\n #_019EA8: LDY.w #obj1BF2-RoomDrawObjectData\n #_019EAB: LDX.b $08\n\n.next_a\n #_019EAD: LDA.w RoomDrawObjectData+0,Y\n #_019EB0: STA.l $7E220E,X\n #_019EB4: STA.l $7E221A,X\n #_019EB8: STA.l $7E2226,X\n\n #_019EBC: LDA.w RoomDrawObjectData+2,Y\n #_019EBF: STA.l $7E228E,X\n #_019EC3: STA.l $7E229A,X\n #_019EC7: STA.l $7E22A6,X\n\n #_019ECB: LDA.w RoomDrawObjectData+4,Y\n #_019ECE: STA.l $7E230E,X\n #_019ED2: STA.l $7E231A,X\n #_019ED6: STA.l $7E2326,X\n\n #_019EDA: LDA.w RoomDrawObjectData+6,Y\n #_019EDD: STA.l $7E238E,X\n #_019EE1: STA.l $7E239A,X\n #_019EE5: STA.l $7E23A6,X\n\n #_019EE9: INY\n #_019EEA: INY\n #_019EEB: INY\n #_019EEC: INY\n #_019EED: INY\n #_019EEE: INY\n #_019EEF: INY\n #_019EF0: INY\n\n #_019EF1: INX\n #_019EF2: INX\n\n #_019EF3: DEC.b $0E\n #_019EF5: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_019EF7: LDA.w #$0005\n #_019EFA: STA.b $0E\n\n #_019EFC: LDY.w #obj1C22-RoomDrawObjectData\n #_019EFF: LDX.b $08\n\n.next_b\n #_019F01: LDA.w RoomDrawObjectData+0,Y\n #_019F04: STA.l $7E2504,X\n #_019F08: STA.l $7E2486,X\n #_019F0C: STA.l $7E2408,X\n #_019F10: STA.l $7E238A,X\n #_019F14: STA.l $7E230C,X\n #_019F18: STA.l $7E228E,X\n #_019F1C: STA.l $7E2210,X\n\n #_019F20: ORA.w #$4000\n #_019F23: STA.l $7E222E,X\n #_019F27: STA.l $7E22B0,X\n #_019F2B: STA.l $7E2332,X\n #_019F2F: STA.l $7E23B4,X\n #_019F33: STA.l $7E2436,X\n #_019F37: STA.l $7E24B8,X\n #_019F3B: STA.l $7E253A,X\n\n #_019F3F: INY\n #_019F40: INY\n\n #_019F41: TXA\n #_019F42: CLC\n #_019F43: ADC.w #$0080\n #_019F46: TAX\n\n #_019F47: DEC.b $0E\n #_019F49: BNE .next_b\n\n; ---------------------------------------------------------\n\n #_019F4B: LDA.w #$0006\n #_019F4E: STA.b $0E\n\n #_019F50: LDY.w #obj1C2C-RoomDrawObjectData\n #_019F53: LDX.b $08\n\n.next_c\n #_019F55: LDA.w RoomDrawObjectData+0,Y\n #_019F58: STA.l $7E2584,X\n #_019F5C: STA.l $7E2884,X\n #_019F60: STA.l $7E2B84,X\n\n #_019F64: ORA.w #$4000\n #_019F67: STA.l $7E25BA,X\n #_019F6B: STA.l $7E28BA,X\n #_019F6F: STA.l $7E2BBA,X\n\n #_019F73: LDA.w RoomDrawObjectData+2,Y\n #_019F76: STA.l $7E2586,X\n #_019F7A: STA.l $7E2886,X\n #_019F7E: STA.l $7E2B86,X\n\n #_019F82: ORA.w #$4000\n #_019F85: STA.l $7E25B8,X\n #_019F89: STA.l $7E28B8,X\n #_019F8D: STA.l $7E2BB8,X\n\n #_019F91: LDA.w RoomDrawObjectData+4,Y\n #_019F94: STA.l $7E2588,X\n #_019F98: STA.l $7E2888,X\n #_019F9C: STA.l $7E2B88,X\n\n #_019FA0: ORA.w #$4000\n #_019FA3: STA.l $7E25B6,X\n #_019FA7: STA.l $7E28B6,X\n #_019FAB: STA.l $7E2BB6,X\n\n #_019FAF: LDA.w RoomDrawObjectData+6,Y\n #_019FB2: STA.l $7E258A,X\n #_019FB6: STA.l $7E288A,X\n #_019FBA: STA.l $7E2B8A,X\n\n #_019FBE: ORA.w #$4000\n #_019FC1: STA.l $7E25B4,X\n #_019FC5: STA.l $7E28B4,X\n #_019FC9: STA.l $7E2BB4,X\n\n #_019FCD: INY\n #_019FCE: INY\n #_019FCF: INY\n #_019FD0: INY\n #_019FD1: INY\n #_019FD2: INY\n #_019FD3: INY\n #_019FD4: INY\n\n #_019FD5: TXA\n #_019FD6: CLC\n #_019FD7: ADC.w #$0080\n #_019FDA: TAX\n\n #_019FDB: DEC.b $0E\n #_019FDD: BEQ .done_c\n\n #_019FDF: JMP.w .next_c\n\n; ---------------------------------------------------------\n\n.done_c\n #_019FE2: LDA.w #$0006\n #_019FE5: STA.b $0E\n\n #_019FE7: LDY.w #obj1C5C-RoomDrawObjectData\n #_019FEA: LDX.b $08\n\n.next_d\n #_019FEC: LDA.w RoomDrawObjectData+0,Y\n #_019FEF: STA.l $7E2498,X\n #_019FF3: STA.l $7E24A4,X\n\n #_019FF7: LDA.w RoomDrawObjectData+12,Y\n #_019FFA: STA.l $7E2518,X\n #_019FFE: STA.l $7E2524,X\n\n #_01A002: INY\n #_01A003: INY\n\n #_01A004: INX\n #_01A005: INX\n\n #_01A006: DEC.b $0E\n #_01A008: BNE .next_d\n\n; ---------------------------------------------------------\n\n #_01A00A: LDA.w #$0006\n #_01A00D: STA.b $0E\n\n #_01A00F: LDY.w #obj1C74-RoomDrawObjectData\n #_01A012: LDX.b $08\n\n.next_e\n #_01A014: LDA.w RoomDrawObjectData+0,Y\n #_01A017: STA.l $7E270E,X\n #_01A01B: STA.l $7E2A0E,X\n\n #_01A01F: LDA.w RoomDrawObjectData+2,Y\n #_01A022: STA.l $7E2710,X\n #_01A026: STA.l $7E2A10,X\n\n #_01A02A: INY\n #_01A02B: INY\n #_01A02C: INY\n #_01A02D: INY\n\n #_01A02E: TXA\n #_01A02F: CLC\n #_01A030: ADC.w #$0080\n #_01A033: TAX\n\n #_01A034: DEC.b $0E\n #_01A036: BNE .next_e\n\n; ---------------------------------------------------------\n\n #_01A038: LDA.w #$0005\n #_01A03B: STA.b $0E\n\n #_01A03D: LDY.w #obj1C8C-RoomDrawObjectData\n #_01A040: LDX.b $08\n\n.next_f\n #_01A042: LDA.w RoomDrawObjectData+0,Y\n #_01A045: STA.l $7E248E,X\n\n #_01A049: LDA.w RoomDrawObjectData+2,Y\n #_01A04C: STA.l $7E250E,X\n\n #_01A050: LDA.w RoomDrawObjectData+4,Y\n #_01A053: STA.l $7E258E,X\n\n #_01A057: LDA.w RoomDrawObjectData+6,Y\n #_01A05A: STA.l $7E260E,X\n\n #_01A05E: LDA.w RoomDrawObjectData+8,Y\n #_01A061: STA.l $7E268E,X\n\n #_01A065: TYA\n #_01A066: CLC\n #_01A067: ADC.w #$000A\n #_01A06A: TAY\n\n #_01A06B: INX\n #_01A06C: INX\n\n #_01A06D: DEC.b $0E\n #_01A06F: BNE .next_f\n\n; ---------------------------------------------------------\n\n #_01A071: LDA.w #$0004\n #_01A074: STA.b $0E\n\n #_01A076: LDX.b $08\n\n.next_g\n #_01A078: LDA.l $7E2E1C,X\n #_01A07C: ORA.w #$2000\n #_01A07F: STA.l $7E2E1C,X\n\n #_01A083: LDA.l $7E2E9C,X\n #_01A087: ORA.w #$2000\n #_01A08A: STA.l $7E2E9C,X\n\n #_01A08E: INX\n #_01A08F: INX\n\n #_01A090: DEC.b $0E\n #_01A092: BNE .next_g\n\n #_01A094: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_FortuneTellerRoom", + "code": "RoomDraw_FortuneTellerRoom:\n #_01A095: LDA.w #$0006\n #_01A098: STA.b $0E\n\n #_01A09A: LDY.w #obj202E-RoomDrawObjectData\n #_01A09D: LDX.b $08\n\n.next_a\n #_01A09F: LDA.w RoomDrawObjectData+0,Y\n #_01A0A2: STA.l $7E2002,X\n #_01A0A6: STA.l $7E2004,X\n #_01A0AA: STA.l $7E2082,X\n #_01A0AE: STA.l $7E2084,X\n\n #_01A0B2: LDA.w RoomDrawObjectData+2,Y\n #_01A0B5: STA.l $7E2102,X\n\n #_01A0B9: ORA.w #$4000\n #_01A0BC: STA.l $7E2104,X\n\n #_01A0C0: INX\n #_01A0C1: INX\n #_01A0C2: INX\n #_01A0C3: INX\n\n #_01A0C4: DEC.b $0E\n #_01A0C6: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_01A0C8: LDA.w #$0003\n #_01A0CB: STA.b $0E\n\n #_01A0CD: LDX.b $08\n\n.next_b\n #_01A0CF: LDA.w RoomDrawObjectData+4,Y\n #_01A0D2: STA.l $7E2180,X\n #_01A0D6: STA.l $7E2184,X\n #_01A0DA: STA.l $7E2194,X\n #_01A0DE: STA.l $7E2198,X\n\n #_01A0E2: ORA.w #$4000\n #_01A0E5: STA.l $7E2182,X\n #_01A0E9: STA.l $7E2186,X\n #_01A0ED: STA.l $7E2196,X\n #_01A0F1: STA.l $7E219A,X\n\n #_01A0F5: LDA.w RoomDrawObjectData+10,Y\n #_01A0F8: STA.l $7E2188,X\n #_01A0FC: STA.l $7E218C,X\n #_01A100: STA.l $7E2190,X\n\n #_01A104: ORA.w #$4000\n #_01A107: STA.l $7E218A,X\n #_01A10B: STA.l $7E218E,X\n #_01A10F: STA.l $7E2192,X\n\n #_01A113: INY\n #_01A114: INY\n\n #_01A115: TXA\n #_01A116: CLC\n #_01A117: ADC.w #$0080\n #_01A11A: TAX\n\n #_01A11B: DEC.b $0E\n #_01A11D: BNE .next_b\n\n; ---------------------------------------------------------\n\n #_01A11F: LDX.b $08\n\n #_01A121: LDA.w RoomDrawObjectData+10,Y\n #_01A124: STA.l $7E2000,X\n #_01A128: STA.l $7E2080,X\n\n #_01A12C: ORA.w #$4000\n #_01A12F: STA.l $7E201A,X\n #_01A133: STA.l $7E209A,X\n\n #_01A137: LDA.w RoomDrawObjectData+12,Y\n #_01A13A: STA.l $7E2100,X\n\n #_01A13E: ORA.w #$4000\n #_01A141: STA.l $7E211A,X\n\n; ---------------------------------------------------------\n\n #_01A145: LDA.w #$0004\n #_01A148: STA.b $0E\n\n #_01A14A: LDY.w #obj202E-RoomDrawObjectData\n #_01A14D: LDX.b $08\n\n.next_c\n #_01A14F: LDA.w RoomDrawObjectData+20,Y\n #_01A152: STA.l $7E2506,X\n\n #_01A156: EOR.w #$4000\n #_01A159: STA.l $7E2514,X\n\n #_01A15D: LDA.w RoomDrawObjectData+28,Y\n #_01A160: STA.l $7E2508,X\n\n #_01A164: EOR.w #$4000\n #_01A167: STA.l $7E2512,X\n\n #_01A16B: LDA.w RoomDrawObjectData+36,Y\n #_01A16E: STA.l $7E250A,X\n\n #_01A172: EOR.w #$4000\n #_01A175: STA.l $7E2510,X\n\n #_01A179: LDA.w RoomDrawObjectData+44,Y\n #_01A17C: STA.l $7E250C,X\n\n #_01A180: EOR.w #$4000\n #_01A183: STA.l $7E250E,X\n\n #_01A187: INY\n #_01A188: INY\n\n #_01A189: TXA\n #_01A18A: CLC\n #_01A18B: ADC.w #$0080\n #_01A18E: TAX\n\n #_01A18F: DEC.b $0E\n #_01A191: BNE .next_c\n\n #_01A193: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Utility3x5", + "code": "RoomDraw_Utility3x5:\n #_01A194: LDA.w #$0003\n #_01A197: STA.b $0E\n\n #_01A199: LDA.w RoomDrawObjectData+0,X\n #_01A19C: STA.b [$BF],Y\n\n #_01A19E: LDA.w RoomDrawObjectData+2,X\n #_01A1A1: STA.b [$C2],Y\n\n #_01A1A3: LDA.w RoomDrawObjectData+4,X\n #_01A1A6: STA.b [$C5],Y\n\n; ---------------------------------------------------------\n\n.next\n #_01A1A8: LDA.w RoomDrawObjectData+6,X\n #_01A1AB: STA.b [$CB],Y\n\n #_01A1AD: LDA.w RoomDrawObjectData+8,X\n #_01A1B0: STA.b [$CE],Y\n\n #_01A1B2: LDA.w RoomDrawObjectData+10,X\n #_01A1B5: STA.b [$D1],Y\n\n #_01A1B7: TYA\n #_01A1B8: CLC\n #_01A1B9: ADC.w #$0080\n #_01A1BC: TAY\n\n #_01A1BD: DEC.b $0E\n #_01A1BF: BNE .next\n\n; ---------------------------------------------------------\n\n #_01A1C1: LDA.w RoomDrawObjectData+12,X\n #_01A1C4: STA.b [$CB],Y\n\n #_01A1C6: LDA.w RoomDrawObjectData+14,X\n #_01A1C9: STA.b [$CE],Y\n\n #_01A1CB: LDA.w RoomDrawObjectData+16,X\n #_01A1CE: STA.b [$D1],Y\n\n #_01A1D0: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_VitreousGooGraphics", + "code": "RoomDraw_VitreousGooGraphics:\n #_01A1D1: LDY.w #obj20F6-RoomDrawObjectData\n #_01A1D4: LDX.b $08\n\n #_01A1D6: LDA.w #$0016\n #_01A1D9: STA.b $0E\n\n.next_a\n #_01A1DB: LDA.w RoomDrawObjectData+0,Y\n #_01A1DE: STA.l $7E4000,X\n\n #_01A1E2: LDA.w RoomDrawObjectData+2,Y\n #_01A1E5: STA.l $7E4080,X\n\n #_01A1E9: LDA.w RoomDrawObjectData+4,Y\n #_01A1EC: STA.l $7E4100,X\n\n #_01A1F0: LDA.w RoomDrawObjectData+6,Y\n #_01A1F3: STA.l $7E4180,X\n\n #_01A1F7: LDA.w RoomDrawObjectData+8,Y\n #_01A1FA: STA.l $7E4200,X\n\n #_01A1FE: LDA.w RoomDrawObjectData+10,Y\n #_01A201: STA.l $7E4280,X\n\n #_01A205: LDA.w RoomDrawObjectData+12,Y\n #_01A208: STA.l $7E4300,X\n\n #_01A20C: LDA.w RoomDrawObjectData+14,Y\n #_01A20F: STA.l $7E4380,X\n\n #_01A213: LDA.w RoomDrawObjectData+16,Y\n #_01A216: STA.l $7E4400,X\n\n #_01A21A: LDA.w RoomDrawObjectData+18,Y\n #_01A21D: STA.l $7E4480,X\n\n #_01A221: LDA.w RoomDrawObjectData+20,Y\n #_01A224: STA.l $7E4500,X\n\n #_01A228: TYA\n #_01A229: CLC\n #_01A22A: ADC.w #$0016\n #_01A22D: TAY\n\n #_01A22E: INX\n #_01A22F: INX\n\n #_01A230: DEC.b $0E\n #_01A232: BNE .next_a\n\n; ---------------------------------------------------------\n\n #_01A234: LDY.w #obj22DA-RoomDrawObjectData\n #_01A237: LDX.b $08\n\n #_01A239: LDA.w #$0003\n #_01A23C: STA.b $0E\n\n.next_b\n #_01A23E: LDA.w RoomDrawObjectData+0,Y\n #_01A241: STA.l $7E4592,X\n\n #_01A245: LDA.w RoomDrawObjectData+6,Y\n #_01A248: STA.l $7E4612,X\n\n #_01A24C: INY\n #_01A24D: INY\n\n #_01A24E: INX\n #_01A24F: INX\n\n #_01A250: DEC.b $0E\n #_01A252: BNE .next_b\n\n #_01A254: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BG2MaskFull", + "code": "RoomDraw_BG2MaskFull:\n #_01A255: STZ.b $0C\n\n #_01A257: LDX.w #obj00E0-RoomDrawObjectData\n #_01A25A: JMP.w RoomDraw_FloorChunks\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_North_MultiLayer_A", + "code": "RoomDraw_AutoStairs_North_MultiLayer_A:\n #_01A25D: PHX\n\n #_01A25E: LDX.w $043C\n\n #_01A261: TYA\n #_01A262: LSR A\n #_01A263: STA.w $06B8,X\n\n #_01A266: INX\n #_01A267: INX\n #_01A268: STX.w $043C\n\n #_01A26B: BRA RoomDraw_AutoStairs_North_MultiLayer\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_North_MultiLayer_B", + "code": "RoomDraw_AutoStairs_North_MultiLayer_B:\n #_01A26D: PHX\n\n #_01A26E: LDX.w $043E\n\n #_01A271: TYA\n #_01A272: LSR A\n #_01A273: STA.w $06B8,X\n\n #_01A276: INX\n #_01A277: INX\n #_01A278: STX.w $043E\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_North_MultiLayer", + "code": "RoomDraw_AutoStairs_North_MultiLayer:\n #_01A27B: STX.w $0446\n #_01A27E: STX.w $0448\n\n #_01A281: TYX\n\n #_01A282: PLY\n\n; ---------------------------------------------------------\n\n #_01A283: LDA.w #$0004\n #_01A286: STA.b $0E\n\n.next\n #_01A288: LDA.w RoomDrawObjectData+0,Y\n #_01A28B: STA.l $7E2000,X\n #_01A28F: STA.l $7E4000,X\n\n #_01A293: LDA.w RoomDrawObjectData+2,Y\n #_01A296: STA.l $7E2080,X\n #_01A29A: STA.l $7E4080,X\n\n #_01A29E: LDA.w RoomDrawObjectData+4,Y\n #_01A2A1: STA.l $7E2100,X\n #_01A2A5: STA.l $7E4100,X\n\n #_01A2A9: LDA.w RoomDrawObjectData+6,Y\n #_01A2AC: STA.l $7E2180,X\n #_01A2B0: STA.l $7E4180,X\n\n #_01A2B4: TYA\n #_01A2B5: CLC\n #_01A2B6: ADC.w #$0008\n #_01A2B9: TAY\n\n #_01A2BA: INX\n #_01A2BB: INX\n\n #_01A2BC: DEC.b $0E\n #_01A2BE: BNE .next\n\n #_01A2C0: RTS", + "file": "bank_01.asm" + }, + { + "name": "AutoStairsNorthMergedStart", + "code": "AutoStairsNorthMergedStart:\n #_01A2C1: STZ.w $0414\n\n #_01A2C4: LDX.w #obj10C8-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_North_MergedLayer_A", + "code": "RoomDraw_AutoStairs_North_MergedLayer_A:\n #_01A2C7: PHX\n\n #_01A2C8: LDX.w $0440\n\n #_01A2CB: TYA\n #_01A2CC: LSR A\n #_01A2CD: STA.w $06B8,X\n\n #_01A2D0: INX\n #_01A2D1: INX\n\n #_01A2D2: STX.w $0440\n #_01A2D5: STX.w $0446\n #_01A2D8: STX.w $0448\n\n #_01A2DB: PLX\n\n #_01A2DC: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_North_MergedLayer_B", + "code": "RoomDraw_AutoStairs_North_MergedLayer_B:\n #_01A2DF: LDA.b $AF\n #_01A2E1: AND.w #$00FF\n #_01A2E4: CMP.w #$001B ; check for dam gate\n #_01A2E7: BNE .dont_check_room\n\n #_01A2E9: LDA.b $A0\n #_01A2EB: ASL A\n #_01A2EC: TAX\n\n #_01A2ED: LDA.l $7EF000,X\n #_01A2F1: AND.w #$0100\n #_01A2F4: BEQ AutoStairsNorthMergedStart\n\n; ---------------------------------------------------------\n\n.dont_check_room\n #_01A2F6: LDX.w $0442\n\n #_01A2F9: TYA\n #_01A2FA: LSR A\n #_01A2FB: STA.w $06B8,X\n\n #_01A2FE: INX\n #_01A2FF: INX\n #_01A300: STX.w $0442\n #_01A303: STX.w $0444\n\n #_01A306: LDX.w #obj10C8-RoomDrawObjectData\n #_01A309: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_South_MultiLayer_A", + "code": "RoomDraw_AutoStairs_South_MultiLayer_A:\n #_01A30C: PHX\n\n #_01A30D: LDX.w $049A\n\n #_01A310: TYA\n #_01A311: LSR A\n #_01A312: STA.w $06B8,X\n\n #_01A315: INX\n #_01A316: INX\n #_01A317: STX.w $049A\n\n #_01A31A: BRA RoomDraw_AutoStairs_South_MultiLayer\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_South_MultiLayer_B", + "code": "RoomDraw_AutoStairs_South_MultiLayer_B:\n #_01A31C: PHX\n\n #_01A31D: LDX.w $049C\n\n #_01A320: TYA\n #_01A321: LSR A\n #_01A322: STA.w $06EC,X\n\n #_01A325: INX\n #_01A326: INX\n #_01A327: STX.w $049C\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_South_MultiLayer", + "code": "RoomDraw_AutoStairs_South_MultiLayer:\n #_01A32A: TYX\n\n #_01A32B: PLY\n\n #_01A32C: LDA.w #$0004\n #_01A32F: STA.b $0E\n\n.next\n #_01A331: LDA.w RoomDrawObjectData+0,Y\n #_01A334: STA.l $7E2000,X\n #_01A338: STA.l $7E4000,X\n\n #_01A33C: LDA.w RoomDrawObjectData+2,Y\n #_01A33F: STA.l $7E2080,X\n #_01A343: STA.l $7E4080,X\n\n #_01A347: LDA.w RoomDrawObjectData+4,Y\n #_01A34A: STA.l $7E2100,X\n #_01A34E: STA.l $7E4100,X\n\n #_01A352: LDA.w RoomDrawObjectData+6,Y\n #_01A355: STA.l $7E2180,X\n #_01A359: STA.l $7E4180,X\n\n #_01A35D: TYA\n #_01A35E: CLC\n #_01A35F: ADC.w #$0008\n #_01A362: TAY\n\n #_01A363: INX\n #_01A364: INX\n\n #_01A365: DEC.b $0E\n #_01A367: BNE .next\n\n #_01A369: RTS", + "file": "bank_01.asm" + }, + { + "name": "South_MergedStairs_BecomeMultiC", + "code": "South_MergedStairs_BecomeMultiC:\n #_01A36A: STZ.w $0414\n\n #_01A36D: PLX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_South_MultiLayer_C", + "code": "RoomDraw_AutoStairs_South_MultiLayer_C:\n #_01A36E: PHX\n\n #_01A36F: LDX.w $049E\n\n #_01A372: TYA\n #_01A373: LSR A\n #_01A374: STA.w $06EC,X\n\n #_01A377: INX\n #_01A378: INX\n #_01A379: STX.w $049E\n\n #_01A37C: PLX\n\n #_01A37D: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AutoStairs_South_MergedLayer", + "code": "RoomDraw_AutoStairs_South_MergedLayer:\n #_01A380: PHX\n\n #_01A381: LDA.b $AF\n #_01A383: AND.w #$00FF\n #_01A386: CMP.w #$001B\n #_01A389: BNE .not_dam_gate\n\n #_01A38B: LDA.b $A0\n #_01A38D: ASL A\n #_01A38E: TAX\n\n #_01A38F: LDA.l $7EF000,X\n #_01A393: AND.w #$0100\n #_01A396: BEQ South_MergedStairs_BecomeMultiC\n\n #_01A398: LDA.w #$6202\n #_01A39B: STA.b $99\n\n.not_dam_gate\n #_01A39D: LDX.w $04AE\n\n #_01A3A0: TYA\n #_01A3A1: LSR A\n #_01A3A2: STA.w $06EC,X\n\n #_01A3A5: INX\n #_01A3A6: INX\n #_01A3A7: STX.w $04AE\n\n #_01A3AA: PLX\n\n #_01A3AB: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WaterHopStairs_B", + "code": "RoomDraw_WaterHopStairs_B:\n #_01A3AE: LDX.w $0446\n\n #_01A3B1: TYA\n #_01A3B2: LSR A\n #_01A3B3: STA.w $06B8,X\n\n #_01A3B6: INX\n #_01A3B7: INX\n\n #_01A3B8: STX.w $0446\n #_01A3BB: STX.w $0448\n\n #_01A3BE: TYX\n\n #_01A3BF: LDY.w #obj1108-RoomDrawObjectData\n\n #_01A3C2: LDA.w RoomDrawObjectData+0,Y\n #_01A3C5: STA.l $7E2000,X\n #_01A3C9: STA.l $7E4000,X\n\n #_01A3CD: LDA.w RoomDrawObjectData+2,Y\n #_01A3D0: STA.l $7E2002,X\n #_01A3D4: STA.l $7E4002,X\n\n #_01A3D8: LDA.w RoomDrawObjectData+4,Y\n #_01A3DB: STA.l $7E2004,X\n #_01A3DF: STA.l $7E4004,X\n\n #_01A3E3: LDA.w RoomDrawObjectData+6,Y\n #_01A3E6: STA.l $7E2006,X\n #_01A3EA: STA.l $7E4006,X\n\n #_01A3EE: LDA.w RoomDrawObjectData+8,Y\n #_01A3F1: STA.l $7E2080,X\n #_01A3F5: STA.l $7E4080,X\n\n #_01A3F9: LDA.w RoomDrawObjectData+10,Y\n #_01A3FC: STA.l $7E2082,X\n #_01A400: STA.l $7E4082,X\n\n #_01A404: LDA.w RoomDrawObjectData+12,Y\n #_01A407: STA.l $7E2084,X\n #_01A40B: STA.l $7E4084,X\n\n #_01A40F: LDA.w RoomDrawObjectData+14,Y\n #_01A412: STA.l $7E2086,X\n #_01A416: STA.l $7E4086,X\n\n #_01A41A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_InterRoomFatStairsUp", + "code": "RoomDraw_InterRoomFatStairsUp:\n #_01A41B: LDX.w $0438\n\n #_01A41E: TYA\n #_01A41F: LSR A\n #_01A420: STA.w $06B0,X\n\n #_01A423: LDA.b $BF\n #_01A425: CMP.w #$4000\n #_01A428: BNE .lower_layer\n\n #_01A42A: TYA\n #_01A42B: ORA.w #$2000\n #_01A42E: LSR A\n #_01A42F: STA.w $06B0,X\n\n.lower_layer\n #_01A432: INX\n #_01A433: INX\n\n #_01A434: STX.w $0438\n\n #_01A437: STX.w $047E\n #_01A43A: STX.w $0482\n\n #_01A43D: STX.w $04A2\n #_01A440: STX.w $04A4\n\n #_01A443: STX.w $043A\n\n #_01A446: STX.w $0480\n #_01A449: STX.w $0484\n\n #_01A44C: STX.w $04A6\n #_01A44F: STX.w $04A8\n\n #_01A452: LDX.w #obj1088-RoomDrawObjectData\n #_01A455: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_InterRoomFatStairsDown_A", + "code": "RoomDraw_InterRoomFatStairsDown_A:\n #_01A458: LDX.w $043A\n #_01A45B: TYA\n #_01A45C: LSR A\n #_01A45D: STA.w $06B0,X\n\n #_01A460: LDA.b $BF\n #_01A462: CMP.w #$4000\n #_01A465: BNE .lower_layer\n\n #_01A467: TYA\n #_01A468: ORA.w #$2000\n #_01A46B: LSR A\n #_01A46C: STA.w $06B0,X\n\n.lower_layer\n #_01A46F: INX\n #_01A470: INX\n\n #_01A471: STX.w $043A\n\n #_01A474: STX.w $0480\n #_01A477: STX.w $0484\n\n #_01A47A: STX.w $04A6\n #_01A47D: STX.w $04A8\n\n #_01A480: LDX.w #obj10A8-RoomDrawObjectData\n #_01A483: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_InterRoomFatStairsDown_B", + "code": "RoomDraw_InterRoomFatStairsDown_B:\n #_01A486: LDX.w $043A\n\n #_01A489: TYA\n #_01A48A: LSR A\n #_01A48B: STA.w $06B0,X\n\n #_01A48E: LDA.b $BF\n #_01A490: CMP.w #$4000\n #_01A493: BNE .lower_layer\n\n #_01A495: TYA\n #_01A496: ORA.w #$2000\n #_01A499: LSR A\n #_01A49A: STA.w $06B0,X\n\n.lower_layer\n #_01A49D: INX\n #_01A49E: INX\n\n #_01A49F: STX.w $043A\n\n #_01A4A2: STX.w $0480\n #_01A4A5: STX.w $0484\n\n #_01A4A8: STX.w $04A6\n #_01A4AB: STX.w $04A8\n\n #_01A4AE: LDX.w #obj10A8-RoomDrawObjectData\n #_01A4B1: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpiralStairsGoingUpUpper", + "code": "RoomDraw_SpiralStairsGoingUpUpper:\n #_01A4B4: LDX.w $047E\n\n #_01A4B7: TYA\n #_01A4B8: SEC\n #_01A4B9: SBC.w #$0080\n #_01A4BC: LSR A\n #_01A4BD: STA.w $06B0,X\n\n #_01A4C0: LDA.b $BF\n #_01A4C2: CMP.w #$4000\n #_01A4C5: BNE .lower_layer\n\n #_01A4C7: TYA\n #_01A4C8: SEC\n #_01A4C9: SBC.w #$0080\n #_01A4CC: ORA.w #$2000\n #_01A4CF: LSR A\n #_01A4D0: STA.w $06B0,X\n\n.lower_layer\n #_01A4D3: INX\n #_01A4D4: INX\n\n #_01A4D5: STX.w $047E\n #_01A4D8: STX.w $0482\n\n #_01A4DB: STX.w $04A2\n #_01A4DE: STX.w $04A4\n\n #_01A4E1: STX.w $043A\n\n #_01A4E4: STX.w $0480\n #_01A4E7: STX.w $0484\n\n #_01A4EA: STX.w $04A6\n #_01A4ED: STX.w $04A8\n\n #_01A4F0: LDX.w #obj1148-RoomDrawObjectData\n #_01A4F3: BRA RoomDraw_SpiralStairsUpper\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpiralStairsGoingUpLower", + "code": "RoomDraw_SpiralStairsGoingUpLower:\n #_01A4F5: LDX.w $0482\n\n #_01A4F8: TYA\n #_01A4F9: SEC\n #_01A4FA: SBC.w #$0080\n #_01A4FD: LSR A\n #_01A4FE: STA.w $06B0,X\n\n #_01A501: LDA.b $BF\n #_01A503: CMP.w #$4000\n #_01A506: BNE .lower_layer\n\n #_01A508: TYA\n #_01A509: SEC\n #_01A50A: SBC.w #$0080\n #_01A50D: ORA.w #$2000\n #_01A510: LSR A\n #_01A511: STA.w $06B0,X\n\n.lower_layer\n #_01A514: INX\n #_01A515: INX\n\n #_01A516: STX.w $0482\n\n #_01A519: STX.w $04A2\n #_01A51C: STX.w $04A4\n\n #_01A51F: STX.w $043A\n\n #_01A522: STX.w $0480\n #_01A525: STX.w $0484\n\n #_01A528: STX.w $04A6\n #_01A52B: STX.w $04A8\n\n #_01A52E: LDX.w #obj1178-RoomDrawObjectData\n #_01A531: BRA RoomDraw_SpiralStairsGoingDownLower_continue\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpiralStairsGoingDownUpper", + "code": "RoomDraw_SpiralStairsGoingDownUpper:\n #_01A533: LDX.w $0480\n\n #_01A536: TYA\n #_01A537: SEC\n #_01A538: SBC.w #$0080\n #_01A53B: LSR A\n #_01A53C: STA.w $06B0,X\n\n #_01A53F: LDA.b $BF\n #_01A541: CMP.w #$4000\n #_01A544: BNE .lower_layer\n\n #_01A546: TYA\n #_01A547: SEC\n #_01A548: SBC.w #$0080\n #_01A54B: ORA.w #$2000\n #_01A54E: LSR A\n #_01A54F: STA.w $06B0,X\n\n.lower_layer\n #_01A552: INX\n #_01A553: INX\n\n #_01A554: STX.w $0480\n #_01A557: STX.w $0484\n\n #_01A55A: STX.w $04A6\n #_01A55D: STX.w $04A8\n\n #_01A560: LDX.w #obj1160-RoomDrawObjectData\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpiralStairsUpper", + "code": "RoomDraw_SpiralStairsUpper:\n #_01A563: LDA.w #$0004\n #_01A566: JSR RoomDraw_1x3N_rightwards\n\n #_01A569: LDX.b $08\n #_01A56B: DEX\n #_01A56C: DEX\n\n #_01A56D: LDA.l $7E2000,X\n #_01A571: ORA.w #$2000\n #_01A574: STA.l $7E2000,X\n\n #_01A578: LDA.l $7E200A,X\n #_01A57C: ORA.w #$2000\n #_01A57F: STA.l $7E200A,X\n\n #_01A583: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SpiralStairsGoingDownLower", + "code": "RoomDraw_SpiralStairsGoingDownLower:\n #_01A584: LDX.w $0484\n\n #_01A587: TYA\n #_01A588: SEC\n #_01A589: SBC.w #$0080\n #_01A58C: LSR A\n #_01A58D: STA.w $06B0,X\n\n #_01A590: LDA.b $BF\n #_01A592: CMP.w #$4000\n #_01A595: BNE .lower_layer\n\n #_01A597: TYA\n #_01A598: SEC\n #_01A599: SBC.w #$0080\n #_01A59C: ORA.w #$2000\n #_01A59F: LSR A\n #_01A5A0: STA.w $06B0,X\n\n.lower_layer\n #_01A5A3: INX\n #_01A5A4: INX\n\n #_01A5A5: STX.w $0484\n\n #_01A5A8: STX.w $04A6\n #_01A5AB: STX.w $04A8\n\n #_01A5AE: LDX.w #obj1190-RoomDrawObjectData\n\n; ---------------------------------------------------------\n\n#RoomDraw_SpiralStairsGoingDownLower_continue:\n #_01A5B1: LDA.w #$0004\n #_01A5B4: JSR RoomDraw_1x3N_rightwards\n\n #_01A5B7: LDX.b $08\n #_01A5B9: DEX\n #_01A5BA: DEX\n\n #_01A5BB: LDA.l $7E4000,X\n #_01A5BF: ORA.w #$2000\n #_01A5C2: STA.l $7E4000,X\n\n #_01A5C6: LDA.l $7E400A,X\n #_01A5CA: ORA.w #$2000\n #_01A5CD: STA.l $7E400A,X\n\n #_01A5D1: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingUpNorthUpper", + "code": "RoomDraw_StraightInterroomStairsGoingUpNorthUpper:\n #_01A5D2: PHX\n\n #_01A5D3: LDX.w $04A2\n\n #_01A5D6: TYA\n #_01A5D7: LSR A\n #_01A5D8: STA.w $06B0,X\n\n #_01A5DB: INX\n #_01A5DC: INX\n\n #_01A5DD: STX.w $04A2\n #_01A5E0: STX.w $04A4\n\n #_01A5E3: STX.w $043A\n\n #_01A5E6: STX.w $0480\n #_01A5E9: STX.w $0484\n\n #_01A5EC: STX.w $04A6\n #_01A5EF: STX.w $04A8\n\n #_01A5F2: BRA RoomDraw_StraightInterroomStairsUpper\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingDownNorthUpper", + "code": "RoomDraw_StraightInterroomStairsGoingDownNorthUpper:\n #_01A5F4: PHX\n\n #_01A5F5: LDX.w $04A6\n\n #_01A5F8: TYA\n #_01A5F9: LSR A\n #_01A5FA: STA.w $06B0,X\n\n #_01A5FD: INX\n #_01A5FE: INX\n #_01A5FF: STX.w $04A6\n #_01A602: STX.w $04A8\n\n #_01A605: BRA RoomDraw_StraightInterroomStairsUpper\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingUpSouthUpper", + "code": "RoomDraw_StraightInterroomStairsGoingUpSouthUpper:\n #_01A607: PHX\n\n #_01A608: LDX.w $04A4\n\n #_01A60B: TYA\n #_01A60C: LSR A\n #_01A60D: STA.w $06B0,X\n\n #_01A610: INX\n #_01A611: INX\n #_01A612: STX.w $04A4\n #_01A615: STX.w $043A\n\n #_01A618: STX.w $0480\n #_01A61B: STX.w $0484\n\n #_01A61E: STX.w $04A6\n #_01A621: STX.w $04A8\n\n #_01A624: BRA RoomDraw_StraightInterroomStairsUpper\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingDownSouthUpper", + "code": "RoomDraw_StraightInterroomStairsGoingDownSouthUpper:\n #_01A626: PHX\n\n #_01A627: LDX.w $04A8\n\n #_01A62A: TYA\n #_01A62B: LSR A\n #_01A62C: STA.w $06B0,X\n\n #_01A62F: INX\n #_01A630: INX\n #_01A631: STX.w $04A8\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsUpper", + "code": "RoomDraw_StraightInterroomStairsUpper:\n #_01A634: TYX\n\n #_01A635: PLY\n\n #_01A636: LDA.w #$0004\n #_01A639: STA.b $0E\n\n.next\n #_01A63B: LDA.w RoomDrawObjectData+0,Y\n #_01A63E: STA.l $7E2000,X\n\n #_01A642: LDA.w RoomDrawObjectData+2,Y\n #_01A645: STA.l $7E2080,X\n\n #_01A649: LDA.w RoomDrawObjectData+4,Y\n #_01A64C: STA.l $7E2100,X\n\n #_01A650: LDA.w RoomDrawObjectData+6,Y\n #_01A653: STA.l $7E2180,X\n\n #_01A657: TYA\n #_01A658: CLC\n #_01A659: ADC.w #$0008\n #_01A65C: TAY\n\n #_01A65D: INX\n #_01A65E: INX\n\n #_01A65F: DEC.b $0E\n #_01A661: BNE .next\n\n #_01A663: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingUpNorthLower", + "code": "RoomDraw_StraightInterroomStairsGoingUpNorthLower:\n #_01A664: PHX\n\n #_01A665: LDX.w $04A2\n\n #_01A668: TYA\n #_01A669: LSR A\n #_01A66A: STA.w $06B0,X\n\n #_01A66D: LDA.b $BF\n #_01A66F: CMP.w #$4000\n #_01A672: BNE .lower_layer\n\n #_01A674: TYA\n #_01A675: ORA.w #$2000\n #_01A678: LSR A\n #_01A679: STA.w $06B0,X\n\n.lower_layer\n #_01A67C: INX\n #_01A67D: INX\n\n #_01A67E: STX.w $04A2\n #_01A681: STX.w $04A4\n\n #_01A684: STX.w $043A\n\n #_01A687: STX.w $0480\n #_01A68A: STX.w $0484\n\n #_01A68D: STX.w $04A6\n #_01A690: STX.w $04A8\n\n #_01A693: BRA RoomDraw_StraightInterroomStairsLower\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingDownNorthLower", + "code": "RoomDraw_StraightInterroomStairsGoingDownNorthLower:\n #_01A695: PHX\n\n #_01A696: LDX.w $04A6\n\n #_01A699: TYA\n #_01A69A: LSR A\n #_01A69B: STA.w $06B0,X\n\n #_01A69E: LDA.b $BF\n #_01A6A0: CMP.w #$4000\n #_01A6A3: BNE .lower_layer\n\n #_01A6A5: TYA\n #_01A6A6: ORA.w #$2000\n #_01A6A9: LSR A\n #_01A6AA: STA.w $06B0,X\n\n.lower_layer\n #_01A6AD: INX\n #_01A6AE: INX\n #_01A6AF: STX.w $04A6\n #_01A6B2: STX.w $04A8\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsLower", + "code": "RoomDraw_StraightInterroomStairsLower:\n #_01A6B5: TYX\n\n #_01A6B6: PLY\n\n #_01A6B7: LDA.w #$0004\n #_01A6BA: STA.b $0E\n\n.next\n #_01A6BC: LDA.w RoomDrawObjectData+0,Y\n #_01A6BF: STA.l $7E2000,X\n #_01A6C3: STA.l $7E4000,X\n\n #_01A6C7: LDA.w RoomDrawObjectData+2,Y\n #_01A6CA: STA.l $7E4080,X\n\n #_01A6CE: LDA.w RoomDrawObjectData+4,Y\n #_01A6D1: STA.l $7E4100,X\n\n #_01A6D5: LDA.w RoomDrawObjectData+6,Y\n #_01A6D8: STA.l $7E4180,X\n\n #_01A6DC: TYA\n #_01A6DD: CLC\n #_01A6DE: ADC.w #$0008\n #_01A6E1: TAY\n\n #_01A6E2: INX\n #_01A6E3: INX\n\n #_01A6E4: DEC.b $0E\n #_01A6E6: BNE .next\n\n; ---------------------------------------------------------\n\n #_01A6E8: LDA.b $08\n #_01A6EA: SEC\n #_01A6EB: SBC.w #$0200\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "StraightInterroomStairsLower_finish_up", + "code": "StraightInterroomStairsLower_finish_up:\n #_01A6EE: TAX\n\n #_01A6EF: LDA.l $7E2000,X\n #_01A6F3: ORA.w #$2000\n #_01A6F6: STA.l $7E2000,X\n\n #_01A6FA: LDA.l $7E2080,X\n #_01A6FE: ORA.w #$2000\n #_01A701: STA.l $7E2080,X\n\n #_01A705: LDA.l $7E2100,X\n #_01A709: ORA.w #$2000\n #_01A70C: STA.l $7E2100,X\n\n #_01A710: LDA.l $7E2180,X\n #_01A714: ORA.w #$2000\n #_01A717: STA.l $7E2180,X\n\n #_01A71B: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingUpSouthLower", + "code": "RoomDraw_StraightInterroomStairsGoingUpSouthLower:\n #_01A71C: PHX\n\n #_01A71D: LDX.w $04A4\n\n #_01A720: TYA\n #_01A721: LSR A\n #_01A722: STA.w $06B0,X\n\n #_01A725: LDA.b $BF\n #_01A727: CMP.w #$4000\n #_01A72A: BNE .lower_layer\n\n #_01A72C: TYA\n #_01A72D: ORA.w #$2000\n #_01A730: LSR A\n #_01A731: STA.w $06B0,X\n\n.lower_layer\n #_01A734: INX\n #_01A735: INX\n\n #_01A736: STX.w $04A4\n\n #_01A739: STX.w $043A\n\n #_01A73C: STX.w $0480\n #_01A73F: STX.w $0484\n\n #_01A742: STX.w $04A6\n #_01A745: STX.w $04A8\n\n #_01A748: BRA StraightInterroomStairsLower_continue\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_StraightInterroomStairsGoingDownSouthLower", + "code": "RoomDraw_StraightInterroomStairsGoingDownSouthLower:\n #_01A74A: PHX\n\n #_01A74B: LDX.w $04A8\n\n #_01A74E: TYA\n #_01A74F: LSR A\n #_01A750: STA.w $06B0,X\n\n #_01A753: LDA.b $BF\n #_01A755: CMP.w #$4000\n #_01A758: BNE .lower_layer\n\n #_01A75A: TYA\n #_01A75B: ORA.w #$2000\n #_01A75E: LSR A\n #_01A75F: STA.w $06B0,X\n\n.lower_layer\n #_01A762: INX\n #_01A763: INX\n #_01A764: STX.w $04A8\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "StraightInterroomStairsLower_continue", + "code": "StraightInterroomStairsLower_continue:\n #_01A767: TYX\n\n #_01A768: PLY\n\n #_01A769: LDA.w #$0004\n #_01A76C: STA.b $0E\n\n.next\n #_01A76E: LDA.w RoomDrawObjectData+0,Y\n #_01A771: STA.l $7E4000,X\n\n #_01A775: LDA.w RoomDrawObjectData+2,Y\n #_01A778: STA.l $7E4080,X\n\n #_01A77C: LDA.w RoomDrawObjectData+4,Y\n #_01A77F: STA.l $7E4100,X\n\n #_01A783: LDA.w RoomDrawObjectData+6,Y\n #_01A786: STA.l $7E2180,X\n #_01A78A: STA.l $7E4180,X\n\n #_01A78E: TYA\n #_01A78F: CLC\n #_01A790: ADC.w #$0008\n #_01A793: TAY\n\n #_01A794: INX\n #_01A795: INX\n\n #_01A796: DEC.b $0E\n #_01A798: BNE .next\n\n; ---------------------------------------------------------\n\n #_01A79A: LDA.b $08\n #_01A79C: CLC\n #_01A79D: ADC.w #$0200\n\n #_01A7A0: JMP.w StraightInterroomStairsLower_finish_up\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ArcheryGameTargetDoor", + "code": "RoomDraw_ArcheryGameTargetDoor:\n #_01A7A3: LDA.w #$0003\n #_01A7A6: JSR RoomDraw_1x3N_rightwards\n\n #_01A7A9: LDA.b $08\n #_01A7AB: CLC\n #_01A7AC: ADC.w #$0180\n #_01A7AF: TAY\n\n #_01A7B0: LDA.w #$0003\n #_01A7B3: JMP.w RoomDraw_1x3N_rightwards\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_LightBeamOnFloor", + "code": "RoomDraw_LightBeamOnFloor:\n #_01A7B6: JSR RoomDraw_4x4\n\n #_01A7B9: LDA.b $08\n #_01A7BB: CLC\n #_01A7BC: ADC.w #$0100\n #_01A7BF: TAY\n\n #_01A7C0: LDX.w #obj2376-RoomDrawObjectData\n #_01A7C3: JSR RoomDraw_4x4\n\n #_01A7C6: LDA.b $08\n #_01A7C8: CLC\n #_01A7C9: ADC.w #$0300\n #_01A7CC: TAY\n\n #_01A7CD: LDX.w #obj2396-RoomDrawObjectData\n #_01A7D0: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigLightBeamOnFloor", + "code": "RoomDraw_BigLightBeamOnFloor:\n #_01A7D3: LDA.l $7EF0CA\n #_01A7D7: AND.w #$0100\n #_01A7DA: BEQ EXIT_01A7EF\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_FloorLight", + "code": "RoomDraw_FloorLight:\n #_01A7DC: JSR RoomDraw_4x4\n #_01A7DF: JSR RoomDraw_4x4\n\n #_01A7E2: LDA.b $08\n #_01A7E4: CLC\n #_01A7E5: ADC.w #$0200\n #_01A7E8: TAY\n\n #_01A7E9: JSR RoomDraw_4x4\n #_01A7EC: JSR RoomDraw_4x4\n\n; ---------------------------------------------------------\n\n#EXIT_01A7EF:\n #_01A7EF: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_GanonTriforceFloorDecor", + "code": "RoomDraw_GanonTriforceFloorDecor:\n #_01A7F0: JSR RoomDraw_4x4\n\n #_01A7F3: LDA.b $08\n #_01A7F5: CLC\n #_01A7F6: ADC.w #$01FC\n #_01A7F9: TAY\n\n #_01A7FA: PHX\n\n #_01A7FB: JSR RoomDraw_4x4\n\n #_01A7FE: PLX\n\n #_01A7FF: LDA.b $08\n #_01A801: CLC\n #_01A802: ADC.w #$0204\n #_01A805: TAY\n\n #_01A806: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_VitreousGooDamage", + "code": "RoomDraw_VitreousGooDamage:\n #_01A809: LDA.w #$0005\n #_01A80C: JSR RoomDraw_A_Many32x32Blocks\n\n #_01A80F: LDA.b $08\n #_01A811: CLC\n #_01A812: ADC.w #$0200\n #_01A815: TAY\n\n #_01A816: LDA.w #$0005\n #_01A819: JMP.w RoomDraw_A_Many32x32Blocks\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Door_North", + "code": "RoomDraw_Door_North:\n #_01A81C: LDY.w DoorTilemapPositions_NorthWall,X\n #_01A81F: STY.b $08\n\n #_01A821: CMP.w #$0030\n #_01A824: BNE .not_exploding_wall\n\n #_01A826: JMP.w RoomDraw_Door_ExplodingWall\n\n; ---------------------------------------------------------\n\n.not_exploding_wall\n #_01A829: CMP.w #$0016\n #_01A82C: BNE .not_to_layer2_door\n\n #_01A82E: TYA\n #_01A82F: SEC\n #_01A830: SBC.w #$00FE\n\n #_01A833: JMP.w RoomDraw_MarkLayerToggleDoor\n\n; ---------------------------------------------------------\n\n.not_to_layer2_door\n #_01A836: CMP.w #$0032\n #_01A839: BNE .not_curtain_door\n\n #_01A83B: JMP.w RoomDraw_NorthCurtainDoor\n\n; ---------------------------------------------------------\n\n.not_curtain_door\n #_01A83E: CMP.w #$0006\n #_01A841: BNE .not_lower_layer_door_1\n\n #_01A843: JMP.w RoomDraw_MakeDoorHighPriorityLowerLayer_North\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_1\n #_01A846: CMP.w #$0014\n #_01A849: BNE .not_dungeon_swap_door\n\n #_01A84B: TYA\n #_01A84C: SEC\n #_01A84D: SBC.w #$00FE\n\n #_01A850: JMP.w RoomDraw_MarkDungeonToggleDoor\n\n; ---------------------------------------------------------\n\n.not_dungeon_swap_door\n #_01A853: CMP.w #$0002\n #_01A856: BNE .not_lower_layer_door_2\n\n #_01A858: TYA\n #_01A859: AND.w #$F07F\n #_01A85C: JSR RoomDraw_MakeDoorPartsHighPriority_Vertical\n\n #_01A85F: JMP.w RoomDraw_NormalRangedDoors_North\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_2\n #_01A862: CMP.w #$0012\n #_01A865: BNE .not_exit_modifier\n\n #_01A867: LDX.w $19E0\n\n #_01A86A: TYA\n #_01A86B: STA.w $19E2,X\n\n #_01A86E: INX\n #_01A86F: INX\n #_01A870: STX.w $19E0\n\n #_01A873: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NormalRangedDoors_North", + "code": "RoomDraw_NormalRangedDoors_North:\n #_01A90F: LDX.b $02\n #_01A911: CPX.w #$000C\n #_01A914: BCC RoomDraw_OneSidedShutters_North\n\n #_01A916: PHY\n\n #_01A917: LDA.w $0460\n #_01A91A: PHA\n\n #_01A91B: ORA.w #$0010\n #_01A91E: STA.w $0460\n\n #_01A921: LDY.w DoorTilemapPositions_NorthMiddle,X\n\n #_01A924: LDA.b $04\n #_01A926: JSR RoomDraw_CheckIfLowerLayerDoors_Vertical\n\n #_01A929: PLA\n #_01A92A: STA.w $0460\n\n #_01A92D: PLY\n\n #_01A92E: LDA.b $04\n #_01A930: STA.b $0A\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedShutters_North", + "code": "RoomDraw_OneSidedShutters_North:\n #_01A932: STY.b $08\n\n #_01A934: LDX.w $0460\n #_01A937: LDA.w #$0000\n #_01A93A: JSR RoomDraw_FlagDoorsAndGetFinalType\n #_01A93D: BCC .exit\n\n #_01A93F: LDA.w #$0018\n #_01A942: CPY.w #$0036\n #_01A945: BEQ .onesided_shutter\n\n #_01A947: LDA.w #$0000\n #_01A94A: CPY.w #$0038\n #_01A94D: BNE .not_onesided_shutter\n\n.onesided_shutter\n #_01A94F: STA.b $0E\n\n #_01A951: LDA.w $197E,X\n #_01A954: AND.w #$FF00\n #_01A957: ORA.b $0E\n #_01A959: STA.w $197E,X\n\n #_01A95C: LDY.b $0E\n\n; ---------------------------------------------------------\n\n.not_onesided_shutter\n #_01A95E: LDX.w DoorGFXDataOffset_North,Y\n\n #_01A961: LDY.b $08\n\n #_01A963: LDA.w #$0004\n #_01A966: STA.b $0E\n\n.next\n #_01A968: LDA.w RoomDrawObjectData+0,X\n #_01A96B: STA.b [$BF],Y\n\n #_01A96D: LDA.w RoomDrawObjectData+2,X\n #_01A970: STA.b [$CB],Y\n\n #_01A972: LDA.w RoomDrawObjectData+4,X\n #_01A975: STA.b [$D7],Y\n\n #_01A977: TXA\n #_01A978: CLC\n #_01A979: ADC.w #$0006\n #_01A97C: TAX\n\n #_01A97D: INY\n #_01A97E: INY\n\n #_01A97F: DEC.b $0E\n #_01A981: BNE .next\n\n.exit\n #_01A983: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Door_South", + "code": "RoomDraw_Door_South:\n #_01A984: LDY.w DoorTilemapPositions_SouthMiddle,X\n #_01A987: STY.b $08\n\n #_01A989: CMP.w #$0016\n #_01A98C: BNE .not_to_layer2_door\n\n #_01A98E: TYA\n #_01A98F: CLC\n #_01A990: ADC.w #$0202\n\n #_01A993: JMP.w RoomDraw_MarkLayerToggleDoor\n\n; ---------------------------------------------------------\n\n.not_to_layer2_door\n #_01A996: CMP.w #$0006\n #_01A999: BNE .not_lower_layer_door_1\n\n #_01A99B: JMP.w RoomDraw_MakeDoorHighPriorityLowerLayer_South\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_1\n #_01A99E: CMP.w #$0014\n #_01A9A1: BNE .not_dungeon_swap_door\n\n #_01A9A3: TYA\n #_01A9A4: CLC\n #_01A9A5: ADC.w #$0202\n\n #_01A9A8: JMP.w RoomDraw_MarkDungeonToggleDoor\n\n; ---------------------------------------------------------\n\n.not_dungeon_swap_door\n #_01A9AB: CMP.w #$0012\n #_01A9AE: BNE .not_exit_modifier\n\n #_01A9B0: LDX.w $19E0\n\n #_01A9B3: TYA\n #_01A9B4: STA.w $19E2,X\n\n #_01A9B7: INX\n #_01A9B8: INX\n\n #_01A9B9: STX.w $19E0\n\n #_01A9BC: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NormalRangedDoors_South", + "code": "RoomDraw_NormalRangedDoors_South:\n #_01A9C5: CMP.w #$000A\n #_01A9C8: BNE .not_fancy_dungeon_exit\n\n #_01A9CA: LDX.w $0460\n #_01A9CD: LDA.w #$0001\n #_01A9D0: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01A9D3: LDA.b $08\n #_01A9D5: SEC\n #_01A9D6: SBC.w #$0206\n #_01A9D9: STA.b $08\n\n #_01A9DB: LDY.w #obj2656-RoomDrawObjectData\n #_01A9DE: LDA.w #$000A\n #_01A9E1: JMP.w RoomDraw_SomeBigDecors\n\n; ---------------------------------------------------------\n\n.not_fancy_dungeon_exit\n #_01A9E4: CMP.w #$000C\n #_01A9E7: BNE .not_lower_layer_fancy_dungeon_exit\n\n #_01A9E9: TYA\n #_01A9EA: ORA.w #$2000\n #_01A9ED: STA.b $08\n\n #_01A9EF: TAY\n\n #_01A9F0: LDX.w $0460\n #_01A9F3: LDA.w #$0001\n #_01A9F6: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01A9F9: LDA.b $08\n #_01A9FB: SEC\n #_01A9FC: SBC.w #$0206\n #_01A9FF: STA.b $08\n\n #_01AA01: LDY.w #obj2656-RoomDrawObjectData\n #_01AA04: LDA.w #$000A\n #_01AA07: JSR RoomDraw_SomeBigDecors\n\n #_01AA0A: LDA.b $08\n #_01AA0C: SEC\n #_01AA0D: SBC.w #$2080\n #_01AA10: TAX\n\n; ---------------------------------------------------------\n\n #_01AA11: LDY.w #$000A\n\n.next\n #_01AA14: LDA.l $7E4000,X\n #_01AA18: ORA.w #$2000\n #_01AA1B: STA.l $7E2000,X\n\n #_01AA1F: INX\n #_01AA20: INX\n\n #_01AA21: DEY\n #_01AA22: BNE .next\n\n #_01AA24: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_HighPriorityExitLight", + "code": "RoomDraw_HighPriorityExitLight:\n #_01AA2F: TYA\n #_01AA30: CLC\n #_01AA31: ADC.w #$0200\n #_01AA34: JSR RoomDraw_MakeDoorPartsHighPriority_Vertical\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_CaveExitLight", + "code": "RoomDraw_CaveExitLight:\n #_01AA37: LDX.w $0460\n #_01AA3A: LDA.w #$0001\n #_01AA3D: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AA40: LDY.b $08\n\n #_01AA42: LDX.w #obj26F6-RoomDrawObjectData\n #_01AA45: LDA.w #$000A\n #_01AA48: JMP.w RoomDraw_4x4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_CheckIfExitDoor", + "code": "RoomDraw_CheckIfExitDoor:\n #_01AA4B: CMP.w #$0004\n #_01AA4E: BNE RoomDraw_CheckIfLowerLayerDoors_Vertical\n\n #_01AA50: TYA\n #_01AA51: PHY\n\n #_01AA52: ORA.w #$2000\n #_01AA55: STA.b $08\n\n #_01AA57: TAY\n\n #_01AA58: JSR RoomDraw_HighPriorityExitLight\n\n #_01AA5B: PLA\n #_01AA5C: CLC\n #_01AA5D: ADC.w #$0180\n #_01AA60: TAX\n\n #_01AA61: LDY.w #$0004\n\n #_01AA64: BRA RoomDraw_NormalRangedDoors_South_next\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_CheckIfLowerLayerDoors_Vertical", + "code": "RoomDraw_CheckIfLowerLayerDoors_Vertical:\n #_01AA66: CMP.w #$0002\n #_01AA69: BNE .not_lower_layer\n\n #_01AA6B: TYA\n #_01AA6C: CLC\n #_01AA6D: ADC.w #$0200\n #_01AA70: JSR RoomDraw_MakeDoorPartsHighPriority_Vertical\n\n #_01AA73: BRA RoomDraw_OneSidedShutters_South\n\n; ---------------------------------------------------------\n\n.not_lower_layer\n #_01AA75: CMP.w #$0008\n #_01AA78: BNE RoomDraw_OneSidedShutters_South\n\n #_01AA7A: JSR RoomDraw_OneSidedShutters_South\n #_01AA7D: JMP.w RoomDraw_ChangeTilemapAddressToLowerLayer\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedShutters_South", + "code": "RoomDraw_OneSidedShutters_South:\n #_01AA80: STY.b $08\n\n #_01AA82: LDX.w $0460\n\n #_01AA85: LDA.w #$0001\n #_01AA88: JSR RoomDraw_FlagDoorsAndGetFinalType\n #_01AA8B: BCC .exit\n\n #_01AA8D: LDA.w #$0000\n #_01AA90: CPY.w #$001E\n #_01AA93: BEQ .onesided_shutter_or_big_key_door\n\n #_01AA95: CPY.w #$0036\n #_01AA98: BEQ .onesided_shutter_or_big_key_door\n\n #_01AA9A: LDA.w #$0018\n #_01AA9D: CPY.w #$0038\n #_01AAA0: BNE .not_onesided_shutter\n\n.onesided_shutter_or_big_key_door\n #_01AAA2: STA.b $0E\n\n #_01AAA4: LDA.w $197E,X\n #_01AAA7: AND.w #$FF00\n #_01AAAA: ORA.b $0E\n #_01AAAC: STA.w $197E,X\n\n #_01AAAF: LDY.b $0E\n\n.not_onesided_shutter\n #_01AAB1: LDX.w DoorGFXDataOffset_South,Y\n #_01AAB4: LDY.b $08\n\n #_01AAB6: LDA.w #$0004\n #_01AAB9: STA.b $0E\n\n.next\n #_01AABB: LDA.w RoomDrawObjectData+0,X\n #_01AABE: STA.b [$CB],Y\n\n #_01AAC0: LDA.w RoomDrawObjectData+2,X\n #_01AAC3: STA.b [$D7],Y\n\n #_01AAC5: LDA.w RoomDrawObjectData+4,X\n #_01AAC8: STA.b [$DA],Y\n\n #_01AACA: TXA\n #_01AACB: CLC\n #_01AACC: ADC.w #$0006\n #_01AACF: TAX\n\n #_01AAD0: INY\n #_01AAD1: INY\n\n #_01AAD2: DEC.b $0E\n #_01AAD4: BNE .next\n\n.exit\n #_01AAD6: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Door_West", + "code": "RoomDraw_Door_West:\n #_01AAD7: LDY.w DoorTilemapPositions_WestWall,X\n #_01AADA: STY.b $08\n\n #_01AADC: CMP.w #$0016\n #_01AADF: BNE .not_to_layer2_door\n\n #_01AAE1: TYA\n #_01AAE2: CLC\n #_01AAE3: ADC.w #$007C\n\n #_01AAE6: JMP.w RoomDraw_MarkLayerToggleDoor\n\n; ---------------------------------------------------------\n\n.not_to_layer2_door\n #_01AAE9: CMP.w #$0006\n #_01AAEC: BNE .not_lower_layer_door_1\n\n #_01AAEE: JMP.w RoomDraw_MakeDoorHighPriorityLowerLayer_West\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_1\n #_01AAF1: CMP.w #$0014\n #_01AAF4: BNE .not_dungeon_swap_door\n\n #_01AAF6: TYA\n #_01AAF7: CLC\n #_01AAF8: ADC.w #$007C\n\n #_01AAFB: JMP.w RoomDraw_MarkDungeonToggleDoor\n\n; ---------------------------------------------------------\n\n.not_dungeon_swap_door\n #_01AAFE: CMP.w #$0002\n #_01AB01: BNE .not_lower_layer_door_2\n\n #_01AB03: TYA\n #_01AB04: AND.w #$FFC0\n #_01AB07: JSR RoomDraw_MakeDoorPartsHighPriority_Horizontal\n #_01AB0A: BRA RoomDraw_NormalRangedDoors_West\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_2\n #_01AB0C: CMP.w #$0008\n #_01AB0F: BNE .not_waterfall_door\n\n #_01AB11: JSR RoomDraw_NormalRangedDoors_West\n\n #_01AB14: JMP.w RoomDraw_ChangeTilemapAddressToLowerLayer\n\n; ---------------------------------------------------------\n\n.not_waterfall_door\n #_01AB17: CMP.w #$0040\n #_01AB1A: BCC RoomDraw_NormalRangedDoors_West\n\n #_01AB1C: JMP.w RoomDraw_HighRangeDoor_West\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NormalRangedDoors_West", + "code": "RoomDraw_NormalRangedDoors_West:\n #_01AB1F: LDX.b $02\n #_01AB21: CPX.w #$000C\n #_01AB24: BCC .is_a_cooler_type_of_door\n\n #_01AB26: PHY\n\n #_01AB27: LDA.w $0460\n #_01AB2A: PHA\n\n #_01AB2B: ORA.w #$0010\n #_01AB2E: STA.w $0460\n\n #_01AB31: LDY.w DoorTilemapPositions_WestMiddle,X\n\n #_01AB34: LDA.b $04\n #_01AB36: JSR RoomDraw_NormalRangedDoors_East\n\n #_01AB39: PLA\n #_01AB3A: STA.w $0460\n\n #_01AB3D: PLY\n\n #_01AB3E: LDA.b $04\n #_01AB40: STA.b $0A\n\n; =========================================================\n\n.is_a_cooler_type_of_door\n #_01AB42: STY.b $08\n\n #_01AB44: LDX.w $0460\n #_01AB47: LDA.w #$0002\n #_01AB4A: JSR RoomDraw_FlagDoorsAndGetFinalType\n #_01AB4D: BCC .exit\n\n #_01AB4F: LDA.w #$0018\n #_01AB52: CPY.w #$0036\n #_01AB55: BEQ .onesided_shutter\n\n #_01AB57: LDA.w #$0000\n #_01AB5A: CPY.w #$0038\n #_01AB5D: BNE .not_onesided_shutter\n\n.onesided_shutter\n #_01AB5F: STA.b $0E\n\n #_01AB61: LDA.w $197E,X\n #_01AB64: AND.w #$FF00\n #_01AB67: ORA.b $0E\n #_01AB69: STA.w $197E,X\n\n #_01AB6C: LDY.b $0E\n\n; ---------------------------------------------------------\n\n.not_onesided_shutter\n #_01AB6E: LDX.w DoorGFXDataOffset_West,Y\n #_01AB71: LDY.b $08\n\n #_01AB73: LDA.w #$0003\n #_01AB76: STA.b $0E\n\n; =========================================================\n\n#RoomDraw_DrawUnreachableDoorSwitcher:\n.next\n #_01AB78: LDA.w RoomDrawObjectData+0,X\n #_01AB7B: STA.b [$BF],Y\n\n #_01AB7D: LDA.w RoomDrawObjectData+2,X\n #_01AB80: STA.b [$CB],Y\n\n #_01AB82: LDA.w RoomDrawObjectData+4,X\n #_01AB85: STA.b [$D7],Y\n\n #_01AB87: LDA.w RoomDrawObjectData+6,X\n #_01AB8A: STA.b [$DA],Y\n\n #_01AB8C: TXA\n #_01AB8D: CLC\n #_01AB8E: ADC.w #$0008\n #_01AB91: TAX\n\n #_01AB92: INY\n #_01AB93: INY\n\n #_01AB94: DEC.b $0E\n #_01AB96: BNE .next\n\n.exit\n #_01AB98: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Door_East", + "code": "RoomDraw_Door_East:\n #_01AB99: LDY.w DoorTilemapPositions_EastMiddle,X\n #_01AB9C: STY.b $08\n\n #_01AB9E: CMP.w #$0016\n #_01ABA1: BNE .not_to_layer2_door\n\n #_01ABA3: TYA\n #_01ABA4: CLC\n #_01ABA5: ADC.w #$0088\n\n #_01ABA8: JMP.w RoomDraw_MarkLayerToggleDoor\n\n; ---------------------------------------------------------\n\n.not_to_layer2_door\n #_01ABAB: CMP.w #$0006\n #_01ABAE: BNE .not_lower_layer_door_1\n\n #_01ABB0: JMP.w RoomDraw_MakeDoorHighPriorityLowerLayer_East\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_1\n #_01ABB3: CMP.w #$0014\n #_01ABB6: BNE .not_dungeon_swap_door\n\n #_01ABB8: TYA\n #_01ABB9: CLC\n #_01ABBA: ADC.w #$0088\n\n #_01ABBD: JMP.w RoomDraw_MarkDungeonToggleDoor\n\n; ---------------------------------------------------------\n\n.not_dungeon_swap_door\n #_01ABC0: CMP.w #$0040\n #_01ABC3: BCC RoomDraw_NormalRangedDoors_East\n\n #_01ABC5: JMP.w RoomDraw_OneSidedLowerShutters_East\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NormalRangedDoors_East", + "code": "RoomDraw_NormalRangedDoors_East:\n #_01ABC8: CMP.w #$0002\n #_01ABCB: BNE .not_lower_layer_door_2\n\n #_01ABCD: TYA\n #_01ABCE: CLC\n #_01ABCF: ADC.w #$0008\n #_01ABD2: JSR RoomDraw_MakeDoorPartsHighPriority_Horizontal\n\n #_01ABD5: BRA .not_lower_layer_door_2\n\n; ---------------------------------------------------------\n\n.not_lower_layer_door_2\n #_01ABD7: CMP.w #$0008\n #_01ABDA: BNE RoomDraw_OneSidedShutters_East\n\n #_01ABDC: JSR RoomDraw_OneSidedShutters_East\n\n #_01ABDF: JMP.w RoomDraw_ChangeTilemapAddressToLowerLayer\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedShutters_East", + "code": "RoomDraw_OneSidedShutters_East:\n #_01ABE2: STY.b $08\n\n #_01ABE4: LDX.w $0460\n #_01ABE7: LDA.w #$0003\n #_01ABEA: JSR RoomDraw_FlagDoorsAndGetFinalType\n #_01ABED: BCC EXIT_01AC3A\n\n #_01ABEF: LDA.w #$0000\n #_01ABF2: CPY.w #$0036\n #_01ABF5: BEQ .onesided_shutter\n\n #_01ABF7: LDA.w #$0018\n #_01ABFA: CPY.w #$0038\n #_01ABFD: BNE .not_onesided_shutter\n\n.onesided_shutter\n #_01ABFF: STA.b $0E\n\n #_01AC01: LDA.w $197E,X\n #_01AC04: AND.w #$FF00\n #_01AC07: ORA.b $0E\n #_01AC09: STA.w $197E,X\n\n #_01AC0C: LDY.b $0E\n\n.not_onesided_shutter\n #_01AC0E: LDX.w DoorGFXDataOffset_East,Y\n\n #_01AC11: LDY.b $08\n #_01AC13: INY\n #_01AC14: INY\n\n #_01AC15: LDA.w #$0003\n #_01AC18: STA.b $0E\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DrawUnusedDoorSwitchObject", + "code": "DrawUnusedDoorSwitchObject:\n.next\n #_01AC1A: LDA.w RoomDrawObjectData+0,X\n #_01AC1D: STA.b [$BF],Y\n\n #_01AC1F: LDA.w RoomDrawObjectData+2,X\n #_01AC22: STA.b [$CB],Y\n\n #_01AC24: LDA.w RoomDrawObjectData+4,X\n #_01AC27: STA.b [$D7],Y\n\n #_01AC29: LDA.w RoomDrawObjectData+6,X\n #_01AC2C: STA.b [$DA],Y\n\n #_01AC2E: TXA\n #_01AC2F: CLC\n #_01AC30: ADC.w #$0008\n #_01AC33: TAX\n\n #_01AC34: INY\n #_01AC35: INY\n\n #_01AC36: DEC.b $0E\n #_01AC38: BNE .next\n\n; ---------------------------------------------------------\n\n#EXIT_01AC3A:\n #_01AC3A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_NorthCurtainDoor", + "code": "RoomDraw_NorthCurtainDoor:\n #_01AC3B: STY.b $08\n\n #_01AC3D: LDX.w $0460\n\n #_01AC40: LDA.w #$0000\n #_01AC43: JSR RoomDraw_FlagDoorsAndGetFinalType\n #_01AC46: BCC .not_open\n\n #_01AC48: LDX.w DoorGFXDataOffset_North,Y\n\n #_01AC4B: BRA .draw_open\n\n.not_open\n #_01AC4D: LDY.b $08\n #_01AC4F: LDX.w #obj078A-RoomDrawObjectData\n #_01AC52: JMP.w RoomDraw_4x4\n\n.draw_open\n #_01AC55: LDY.b $08\n #_01AC57: JSR RoomDraw_4x4\n\n #_01AC5A: RTS", + "file": "bank_01.asm" + }, + { + "name": "ExplodingWallNotOpen", + "code": "ExplodingWallNotOpen:\n #_01AC5B: LDX.w $0460\n\n #_01AC5E: STZ.w $19C0,X\n\n #_01AC61: TXA\n #_01AC62: LSR A\n #_01AC63: XBA\n #_01AC64: ORA.w #$0030\n #_01AC67: STA.w $1980,X\n\n #_01AC6A: INX\n #_01AC6B: INX\n #_01AC6C: STX.w $0460\n\n #_01AC6F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Door_ExplodingWall", + "code": "RoomDraw_Door_ExplodingWall:\n #_01AC70: LDY.w ExplodingWallTilemapPosition,X\n #_01AC73: STY.b $08\n\n #_01AC75: LDX.w $0460\n\n #_01AC78: LDA.b $08\n #_01AC7A: CLC\n #_01AC7B: ADC.w #$0014\n #_01AC7E: STA.w $19A0,X\n\n #_01AC81: TXA\n #_01AC82: LSR A\n #_01AC83: XBA\n #_01AC84: ORA.w #$0030\n #_01AC87: STA.w $1980,X\n\n #_01AC8A: TXA\n #_01AC8B: AND.w #$000F\n #_01AC8E: TAY\n\n #_01AC8F: LDA.w $068C\n #_01AC92: AND.w DungeonMask,Y\n #_01AC95: BEQ ExplodingWallNotOpen\n\n #_01AC97: SEP #$30\n\n #_01AC99: LDX.b #$00\n\n #_01AC9B: LDA.b $AE\n #_01AC9D: CMP.b #$20\n #_01AC9F: BEQ .delete_tag\n\n #_01ACA1: CMP.b #$25\n #_01ACA3: BEQ .delete_tag\n\n #_01ACA5: CMP.b #$28\n #_01ACA7: BEQ .delete_tag\n\n #_01ACA9: INX\n\n.delete_tag\n #_01ACAA: STZ.b $AE,X\n\n; ---------------------------------------------------------\n\n #_01ACAC: REP #$30\n\n #_01ACAE: LDA.b $08\n #_01ACB0: PHA\n\n #_01ACB1: LDA.b $A7\n #_01ACB3: ORA.w #$0002\n #_01ACB6: STA.b $A7\n\n #_01ACB8: LDA.w $0452\n #_01ACBB: ORA.w #$0100\n #_01ACBE: STA.w $0452\n\n #_01ACC1: LDY.w #$0054\n #_01ACC4: LDX.w DoorGFXDataOffset_South,Y\n #_01ACC7: JSR RoomDraw_ExplodingWallSegment\n\n #_01ACCA: PLA\n #_01ACCB: CLC\n #_01ACCC: ADC.w #$0300\n #_01ACCF: STA.b $08\n\n #_01ACD1: INC.w $0460\n #_01ACD4: INC.w $0460\n\n #_01ACD7: LDA.b $FC\n #_01ACD9: ORA.w #$0200\n #_01ACDC: STA.b $FC\n\n #_01ACDE: LDY.w #$0054\n #_01ACE1: LDX.w DoorGFXDataOffset_North,Y\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ExplodingWallSegment", + "code": "RoomDraw_ExplodingWallSegment:\n #_01ACE4: LDA.w #$0012\n #_01ACE7: STA.b $B2\n\n #_01ACE9: LDY.b $08\n #_01ACEB: JSR RoomDraw_ExplodingWallColumn\n\n #_01ACEE: LDA.b $08\n #_01ACF0: CLC\n #_01ACF1: ADC.w #$0004\n #_01ACF4: STA.b $08\n\n #_01ACF6: TXA\n #_01ACF7: CLC\n #_01ACF8: ADC.w #$000C\n #_01ACFB: TAX\n\n #_01ACFC: PHX\n\n #_01ACFD: TXY\n\n; ---------------------------------------------------------\n\n #_01ACFE: LDX.b $08\n\n #_01AD00: LDA.w RoomDrawObjectData+0,Y\n\n.next\n #_01AD03: STA.l $7E2000,X\n #_01AD07: STA.l $7E2080,X\n #_01AD0B: STA.l $7E2100,X\n #_01AD0F: STA.l $7E2180,X\n #_01AD13: STA.l $7E2200,X\n #_01AD17: STA.l $7E2280,X\n\n #_01AD1B: INX\n #_01AD1C: INX\n\n #_01AD1D: DEC.b $B2\n #_01AD1F: BNE .next\n\n; ---------------------------------------------------------\n\n #_01AD21: TXY\n\n #_01AD22: PLX\n #_01AD23: INX\n #_01AD24: INX\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_ExplodingWallColumn", + "code": "RoomDraw_ExplodingWallColumn:\n #_01AD25: LDA.w #$0006\n #_01AD28: STA.b $0A\n\n.next\n #_01AD2A: LDA.w RoomDrawObjectData+0,X\n #_01AD2D: STA.b [$BF],Y\n\n #_01AD2F: LDA.w RoomDrawObjectData+12,X\n #_01AD32: STA.b [$C2],Y\n\n #_01AD34: INX\n #_01AD35: INX\n\n #_01AD36: TYA\n #_01AD37: CLC\n #_01AD38: ADC.w #$0080\n #_01AD3B: TAY\n\n #_01AD3C: DEC.b $0A\n #_01AD3E: BNE .next\n\n #_01AD40: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_HighRangeDoor_North", + "code": "RoomDraw_HighRangeDoor_North:\n #_01AD41: LDX.b $02\n #_01AD43: CPX.w #$000C\n #_01AD46: BCC RoomDraw_OneSidedLowerShutters_North\n\n #_01AD48: LDA.b $04\n #_01AD4A: CMP.w #$0046\n #_01AD4D: BEQ RoomDraw_OneSidedLowerShutters_North\n\n #_01AD4F: PHY\n\n #_01AD50: LDA.w $0460\n #_01AD53: PHA\n\n #_01AD54: ORA.w #$0010\n #_01AD57: STA.w $0460\n\n #_01AD5A: LDY.w DoorTilemapPositions_NorthMiddle,X\n #_01AD5D: JSR RoomDraw_OneSidedLowerShutters_South\n\n #_01AD60: PLA\n #_01AD61: STA.w $0460\n\n #_01AD64: PLY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedLowerShutters_North", + "code": "RoomDraw_OneSidedLowerShutters_North:\n #_01AD65: STY.b $08\n\n #_01AD67: LDX.w $0460\n\n #_01AD6A: LDA.w #$0000\n #_01AD6D: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AD70: LDA.w #$0044\n #_01AD73: CPY.w #$0048\n #_01AD76: BEQ .lower_layer_onesided_shutter\n\n #_01AD78: LDA.w #$0040\n #_01AD7B: CPY.w #$004A\n #_01AD7E: BNE .not_lower_layer_onesided_shutter\n\n.lower_layer_onesided_shutter\n #_01AD80: STA.b $0E\n\n #_01AD82: LDA.w $197E,X\n #_01AD85: AND.w #$FF00\n #_01AD88: ORA.b $0E\n #_01AD8A: STA.w $197E,X\n\n #_01AD8D: LDY.b $0E\n\n.not_lower_layer_onesided_shutter\n #_01AD8F: LDA.w DoorGFXDataOffset_North,Y\n #_01AD92: TAY\n\n; ---------------------------------------------------------\n\n #_01AD93: LDX.b $08\n\n #_01AD95: LDA.w #$0004\n #_01AD98: STA.b $0E\n\n.next\n #_01AD9A: LDA.w RoomDrawObjectData+0,Y\n #_01AD9D: STA.l $7E2000,X\n\n #_01ADA1: LDA.w RoomDrawObjectData+2,Y\n #_01ADA4: STA.l $7E4080,X\n\n #_01ADA8: LDA.w RoomDrawObjectData+4,Y\n #_01ADAB: STA.l $7E4100,X\n\n #_01ADAF: TYA\n #_01ADB0: CLC\n #_01ADB1: ADC.w #$0006\n #_01ADB4: TAY\n\n #_01ADB5: INX\n #_01ADB6: INX\n\n #_01ADB7: DEC.b $0E\n #_01ADB9: BNE .next\n\n; ---------------------------------------------------------\n\n #_01ADBB: LDA.b $04\n #_01ADBD: CMP.w #$0046\n #_01ADC0: BEQ .is_teleport_door\n\n #_01ADC2: LDA.b $08\n #_01ADC4: JSR RoomDraw_MakeDoorHighPriority_North\n\n.is_teleport_door\n #_01ADC7: LDX.w $0460\n\n #_01ADCA: LDA.w $199E,X\n #_01ADCD: ORA.w #$2000\n #_01ADD0: STA.w $199E,X\n\n #_01ADD3: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedLowerShutters_South", + "code": "RoomDraw_OneSidedLowerShutters_South:\n #_01ADD4: STY.b $08\n\n #_01ADD6: LDX.w $0460\n #_01ADD9: LDA.w #$0001\n #_01ADDC: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01ADDF: LDA.w #$0040\n #_01ADE2: CPY.w #$0048\n #_01ADE5: BEQ .lower_layer_onesided_shutter\n\n #_01ADE7: LDA.w #$0044\n #_01ADEA: CPY.w #$004A\n #_01ADED: BNE .not_lower_layer_onesided_shutter\n\n.lower_layer_onesided_shutter\n #_01ADEF: STA.b $0E\n\n #_01ADF1: LDA.w $197E,X\n #_01ADF4: AND.w #$FF00\n #_01ADF7: ORA.b $0E\n #_01ADF9: STA.w $197E,X\n\n #_01ADFC: LDY.b $0E\n\n.not_lower_layer_onesided_shutter\n #_01ADFE: LDA.w DoorGFXDataOffset_South,Y\n #_01AE01: TAY\n\n; ---------------------------------------------------------\n\n #_01AE02: LDX.b $08\n\n #_01AE04: LDA.w #$0004\n #_01AE07: STA.b $0E\n\n.next\n #_01AE09: LDA.w RoomDrawObjectData+0,Y\n #_01AE0C: STA.l $7E4080,X\n\n #_01AE10: LDA.w RoomDrawObjectData+2,Y\n #_01AE13: STA.l $7E4100,X\n\n #_01AE17: LDA.w RoomDrawObjectData+4,Y\n #_01AE1A: STA.l $7E2180,X\n\n #_01AE1E: TYA\n #_01AE1F: CLC\n #_01AE20: ADC.w #$0006\n #_01AE23: TAY\n\n #_01AE24: INX\n #_01AE25: INX\n\n #_01AE26: DEC.b $0E\n #_01AE28: BNE .next\n\n; ---------------------------------------------------------\n\n #_01AE2A: LDA.b $08\n #_01AE2C: CLC\n #_01AE2D: ADC.w #$0200\n #_01AE30: JSR RoomDraw_MakeDoorHighPriority_South\n\n #_01AE33: LDX.w $0460\n\n #_01AE36: LDA.w $199E,X\n #_01AE39: ORA.w #$2000\n #_01AE3C: STA.w $199E,X\n\n #_01AE3F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_HighRangeDoor_West", + "code": "RoomDraw_HighRangeDoor_West:\n #_01AE40: LDX.b $02\n #_01AE42: CPX.w #$000C\n #_01AE45: BCC RoomDraw_OneSidedLowerShutters_West\n\n #_01AE47: PHY\n\n #_01AE48: LDA.w $0460\n #_01AE4B: PHA\n\n #_01AE4C: ORA.w #$0010\n #_01AE4F: STA.w $0460\n\n #_01AE52: LDY.w DoorTilemapPositions_WestMiddle,X\n #_01AE55: JSR RoomDraw_OneSidedLowerShutters_East\n\n #_01AE58: PLA\n #_01AE59: STA.w $0460\n\n #_01AE5C: PLY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedLowerShutters_West", + "code": "RoomDraw_OneSidedLowerShutters_West:\n #_01AE5D: STY.b $08\n\n #_01AE5F: LDX.w $0460\n\n #_01AE62: LDA.w #$0002\n #_01AE65: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AE68: LDA.w #$0044\n #_01AE6B: CPY.w #$0048\n #_01AE6E: BEQ .lower_layer_onesided_shutter\n\n #_01AE70: LDA.w #$0040\n #_01AE73: CPY.w #$004A\n #_01AE76: BNE .not_lower_layer_onesided_shutter\n\n.lower_layer_onesided_shutter\n #_01AE78: STA.b $0E\n\n #_01AE7A: LDA.w $197E,X\n #_01AE7D: AND.w #$FF00\n #_01AE80: ORA.b $0E\n #_01AE82: STA.w $197E,X\n\n #_01AE85: LDY.b $0E\n\n; ---------------------------------------------------------\n\n.not_lower_layer_onesided_shutter\n #_01AE87: LDA.w DoorGFXDataOffset_West,Y\n #_01AE8A: TAY\n\n #_01AE8B: LDX.b $08\n\n #_01AE8D: LDA.w RoomDrawObjectData+0,Y\n #_01AE90: STA.l $7E2000,X\n\n #_01AE94: LDA.w RoomDrawObjectData+2,Y\n #_01AE97: STA.l $7E2080,X\n\n #_01AE9B: LDA.w RoomDrawObjectData+4,Y\n #_01AE9E: STA.l $7E2100,X\n\n #_01AEA2: LDA.w RoomDrawObjectData+6,Y\n #_01AEA5: STA.l $7E2180,X\n\n #_01AEA9: TYA\n #_01AEAA: CLC\n #_01AEAB: ADC.w #$0008\n #_01AEAE: TAY\n\n #_01AEAF: INX\n #_01AEB0: INX\n\n; ---------------------------------------------------------\n\n #_01AEB1: LDA.w #$0002\n #_01AEB4: STA.b $0E\n\n.next\n #_01AEB6: LDA.w RoomDrawObjectData+0,Y\n #_01AEB9: STA.l $7E4000,X\n\n #_01AEBD: LDA.w RoomDrawObjectData+2,Y\n #_01AEC0: STA.l $7E4080,X\n\n #_01AEC4: LDA.w RoomDrawObjectData+4,Y\n #_01AEC7: STA.l $7E4100,X\n\n #_01AECB: LDA.w RoomDrawObjectData+6,Y\n #_01AECE: STA.l $7E4180,X\n\n #_01AED2: TYA\n #_01AED3: CLC\n #_01AED4: ADC.w #$0008\n #_01AED7: TAY\n\n #_01AED8: INX\n #_01AED9: INX\n\n #_01AEDA: DEC.b $0E\n #_01AEDC: BNE .next\n\n; ---------------------------------------------------------\n\n #_01AEDE: LDA.b $08\n #_01AEE0: JSR RoomDraw_MakeDoorHighPriority_West\n\n #_01AEE3: LDX.w $0460\n\n #_01AEE6: LDA.w $199E,X\n #_01AEE9: ORA.w #$2000\n #_01AEEC: STA.w $199E,X\n\n #_01AEEF: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OneSidedLowerShutters_East", + "code": "RoomDraw_OneSidedLowerShutters_East:\n #_01AEF0: STY.b $08\n\n #_01AEF2: LDX.w $0460\n\n #_01AEF5: LDA.w #$0003\n #_01AEF8: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AEFB: LDA.w #$0040\n\n #_01AEFE: CPY.w #$0048\n #_01AF01: BEQ .lower_layer_onesided_shutter\n\n #_01AF03: LDA.w #$0044\n #_01AF06: CPY.w #$004A\n #_01AF09: BNE .not_lower_layer_onesided_shutter\n\n.lower_layer_onesided_shutter\n #_01AF0B: STA.b $0E\n\n #_01AF0D: LDA.w $197E,X\n #_01AF10: AND.w #$FF00\n #_01AF13: ORA.b $0E\n #_01AF15: STA.w $197E,X\n\n #_01AF18: LDY.b $0E\n\n.not_lower_layer_onesided_shutter\n #_01AF1A: LDA.w DoorGFXDataOffset_East,Y\n #_01AF1D: TAY\n\n #_01AF1E: LDX.b $08\n\n #_01AF20: LDA.w #$0002\n #_01AF23: STA.b $0E\n\n.next\n #_01AF25: LDA.w RoomDrawObjectData+0,Y\n #_01AF28: STA.l $7E4002,X\n\n #_01AF2C: LDA.w RoomDrawObjectData+2,Y\n #_01AF2F: STA.l $7E4082,X\n\n #_01AF33: LDA.w RoomDrawObjectData+4,Y\n #_01AF36: STA.l $7E4102,X\n\n #_01AF3A: LDA.w RoomDrawObjectData+6,Y\n #_01AF3D: STA.l $7E4182,X\n\n #_01AF41: TYA\n #_01AF42: CLC\n #_01AF43: ADC.w #$0008\n #_01AF46: TAY\n\n #_01AF47: INX\n #_01AF48: INX\n\n #_01AF49: DEC.b $0E\n #_01AF4B: BNE .next\n\n; ---------------------------------------------------------\n\n #_01AF4D: LDA.w RoomDrawObjectData+0,Y\n #_01AF50: STA.l $7E2002,X\n\n #_01AF54: LDA.w RoomDrawObjectData+2,Y\n #_01AF57: STA.l $7E2082,X\n\n #_01AF5B: LDA.w RoomDrawObjectData+4,Y\n #_01AF5E: STA.l $7E2102,X\n\n #_01AF62: LDA.w RoomDrawObjectData+6,Y\n #_01AF65: STA.l $7E2182,X\n\n #_01AF69: LDA.b $08\n #_01AF6B: CLC\n #_01AF6C: ADC.w #$0008\n #_01AF6F: JSR RoomDraw_MakeDoorHighPriority_East\n\n #_01AF72: LDX.w $0460\n\n #_01AF75: LDA.w $199E,X\n #_01AF78: ORA.w #$2000\n #_01AF7B: STA.w $199E,X\n\n #_01AF7E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriorityLowerLayer_North", + "code": "RoomDraw_MakeDoorHighPriorityLowerLayer_North:\n #_01AF7F: LDA.w #$0000\n #_01AF82: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AF85: LDA.b $08\n #_01AF87: CLC\n #_01AF88: ADC.w #$0080\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriority_North", + "code": "RoomDraw_MakeDoorHighPriority_North:\n #_01AF8B: STA.b $02\n\n #_01AF8D: AND.w #$F07F\n #_01AF90: TAX\n\n.next\n #_01AF91: LDA.l $7E2000,X\n #_01AF95: ORA.w #$2000\n #_01AF98: STA.l $7E2000,X\n\n #_01AF9C: LDA.l $7E2002,X\n #_01AFA0: ORA.w #$2000\n #_01AFA3: STA.l $7E2002,X\n\n #_01AFA7: LDA.l $7E2004,X\n #_01AFAB: ORA.w #$2000\n #_01AFAE: STA.l $7E2004,X\n\n #_01AFB2: LDA.l $7E2006,X\n #_01AFB6: ORA.w #$2000\n #_01AFB9: STA.l $7E2006,X\n\n #_01AFBD: TXA\n #_01AFBE: CLC\n #_01AFBF: ADC.w #$0080\n #_01AFC2: TAX\n\n #_01AFC3: CPX.b $02\n #_01AFC5: BNE .next\n\n #_01AFC7: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriorityLowerLayer_South", + "code": "RoomDraw_MakeDoorHighPriorityLowerLayer_South:\n #_01AFC8: LDA.w #$0001\n #_01AFCB: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01AFCE: LDA.b $08\n #_01AFD0: CLC\n #_01AFD1: ADC.w #$0100\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriority_South", + "code": "RoomDraw_MakeDoorHighPriority_South:\n #_01AFD4: TAX\n\n.next\n #_01AFD5: LDA.l $7E2000,X\n #_01AFD9: ORA.w #$2000\n #_01AFDC: STA.l $7E2000,X\n\n #_01AFE0: LDA.l $7E2002,X\n #_01AFE4: ORA.w #$2000\n #_01AFE7: STA.l $7E2002,X\n\n #_01AFEB: LDA.l $7E2004,X\n #_01AFEF: ORA.w #$2000\n #_01AFF2: STA.l $7E2004,X\n\n #_01AFF6: LDA.l $7E2006,X\n #_01AFFA: ORA.w #$2000\n #_01AFFD: STA.l $7E2006,X\n\n #_01B001: TXA\n #_01B002: CLC\n #_01B003: ADC.w #$0080\n #_01B006: TAX\n\n #_01B007: AND.w #$0F80\n #_01B00A: BNE .next\n\n #_01B00C: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriorityLowerLayer_West", + "code": "RoomDraw_MakeDoorHighPriorityLowerLayer_West:\n #_01B00D: LDA.w #$0002\n #_01B010: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01B013: LDA.b $08\n #_01B015: INC A\n #_01B016: INC A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriority_West", + "code": "RoomDraw_MakeDoorHighPriority_West:\n #_01B017: STA.b $02\n\n #_01B019: AND.w #$FFC0\n #_01B01C: TAX\n\n.next\n #_01B01D: LDA.l $7E2000,X\n #_01B021: ORA.w #$2000\n #_01B024: STA.l $7E2000,X\n\n #_01B028: LDA.l $7E2080,X\n #_01B02C: ORA.w #$2000\n #_01B02F: STA.l $7E2080,X\n\n #_01B033: LDA.l $7E2100,X\n #_01B037: ORA.w #$2000\n #_01B03A: STA.l $7E2100,X\n\n #_01B03E: LDA.l $7E2180,X\n #_01B042: ORA.w #$2000\n #_01B045: STA.l $7E2180,X\n\n #_01B049: INX\n #_01B04A: INX\n #_01B04B: CPX.b $02\n #_01B04D: BNE .next\n\n #_01B04F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriorityLowerLayer_East", + "code": "RoomDraw_MakeDoorHighPriorityLowerLayer_East:\n #_01B050: LDA.w #$0003\n #_01B053: JSR RoomDraw_FlagDoorsAndGetFinalType\n\n #_01B056: LDA.b $08\n #_01B058: CLC\n #_01B059: ADC.w #$0004\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorHighPriority_East", + "code": "RoomDraw_MakeDoorHighPriority_East:\n #_01B05C: TAX\n\n.next\n #_01B05D: LDA.l $7E2000,X\n #_01B061: ORA.w #$2000\n #_01B064: STA.l $7E2000,X\n\n #_01B068: LDA.l $7E2080,X\n #_01B06C: ORA.w #$2000\n #_01B06F: STA.l $7E2080,X\n\n #_01B073: LDA.l $7E2100,X\n #_01B077: ORA.w #$2000\n #_01B07A: STA.l $7E2100,X\n\n #_01B07E: LDA.l $7E2180,X\n #_01B082: ORA.w #$2000\n #_01B085: STA.l $7E2180,X\n\n #_01B089: INX\n #_01B08A: INX\n\n #_01B08B: TXA\n #_01B08C: AND.w #$003F\n #_01B08F: BNE .next\n\n #_01B091: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MarkDungeonToggleDoor", + "code": "RoomDraw_MarkDungeonToggleDoor:\n #_01B092: LDX.w $0450\n\n #_01B095: LSR A\n #_01B096: STA.w $06D0,X\n\n #_01B099: INX\n #_01B09A: INX\n #_01B09B: STX.w $0450\n\n #_01B09E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MarkLayerToggleDoor", + "code": "RoomDraw_MarkLayerToggleDoor:\n #_01B09F: LDX.w $044E\n\n #_01B0A2: LSR A\n #_01B0A3: STA.w $06C0,X\n\n #_01B0A6: INX\n #_01B0A7: INX\n #_01B0A8: STX.w $044E\n\n #_01B0AB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_GetSize_1to16", + "code": "RoomDraw_GetSize_1to16:\n #_01B0AC: LDA.w #$0001\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_GetSize_1to16_timesA", + "code": "RoomDraw_GetSize_1to16_timesA:\n #_01B0AF: STA.b $0E\n\n #_01B0B1: LDA.b $B2\n #_01B0B3: ASL A\n #_01B0B4: ASL A\n #_01B0B5: ORA.b $B4\n #_01B0B7: ADC.b $0E\n #_01B0B9: STA.b $B2\n\n #_01B0BB: STZ.b $B4\n\n #_01B0BD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_GetSize_1to15or26", + "code": "RoomDraw_GetSize_1to15or26:\n #_01B0BE: LDA.b $B2\n #_01B0C0: ASL A\n #_01B0C1: ASL A\n #_01B0C2: ORA.b $B4\n #_01B0C4: BNE .nonzero\n\n #_01B0C6: LDA.w #$001A\n\n.nonzero\n #_01B0C9: STA.b $B2\n\n #_01B0CB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_GetSize_1to15or32", + "code": "RoomDraw_GetSize_1to15or32:\n #_01B0CC: LDA.b $B2\n #_01B0CE: ASL A\n #_01B0CF: ASL A\n #_01B0D0: ORA.b $B4\n #_01B0D2: BNE .nonzero\n\n #_01B0D4: LDA.w #$0020\n\n.nonzero\n #_01B0D7: STA.b $B2\n\n #_01B0D9: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_FlagDoorsAndGetFinalType", + "code": "RoomDraw_FlagDoorsAndGetFinalType:\n #_01B0DA: STA.w $19C0,X\n\n #_01B0DD: TYA\n #_01B0DE: STA.w $19A0,X\n\n #_01B0E1: TXA\n #_01B0E2: LSR A\n #_01B0E3: XBA\n\n #_01B0E4: ORA.b $04\n #_01B0E6: STA.w $1980,X\n\n #_01B0E9: TXA\n #_01B0EA: AND.w #$000F\n #_01B0ED: TAY\n\n #_01B0EE: CPY.w #$0008\n #_01B0F1: BCS .dont_flag_door_open\n\n #_01B0F3: LDA.w $068C\n #_01B0F6: AND.w DungeonMask,Y\n #_01B0F9: BEQ .dont_flag_door_open\n\n #_01B0FB: LDA.w $1980,X\n #_01B0FE: AND.w #$00FF\n #_01B101: CMP.w #$0018\n #_01B104: BEQ .is_shutter_door\n\n #_01B106: CMP.w #$0044\n #_01B109: BNE .not_shutter_door\n\n.is_shutter_door\n #_01B10B: LDA.w $0468\n #_01B10E: BNE .dont_flag_door_open\n\n.not_shutter_door\n #_01B110: PHX\n\n #_01B111: LDX.b $04\n\n #_01B113: LDA.w DoorwayReplacementDoorGFX,X\n #_01B116: STA.b $0A\n\n #_01B118: PLX\n\n #_01B119: LDA.w $1980,X\n #_01B11C: AND.w #$00FF\n #_01B11F: CMP.w #$0018\n #_01B122: BEQ .dont_flag_door_open\n\n #_01B124: CMP.w #$0044\n #_01B127: BEQ .dont_flag_door_open\n\n #_01B129: CMP.w #$001A\n #_01B12C: BCC .dont_flag_door_open\n\n #_01B12E: CMP.w #$0040\n #_01B131: BEQ .dont_flag_door_open\n\n #_01B133: CMP.w #$0046\n #_01B136: BEQ .dont_flag_door_open\n\n #_01B138: LDA.w $0400\n #_01B13B: ORA.w DungeonMask,X\n #_01B13E: STA.w $0400\n\n.dont_flag_door_open\n #_01B141: LDY.b $0A\n\n #_01B143: INX\n #_01B144: INX\n #_01B145: STX.w $0460\n\n #_01B148: CPY.w #$0032\n #_01B14B: BEQ CLC_and_EXIT\n\n #_01B14D: CPY.w #$0008\n #_01B150: BEQ CLC_and_EXIT\n\n #_01B152: LDA.b $04\n #_01B154: CMP.w #$001A\n #_01B157: BNE .no_extra_flagging_needed\n\n #_01B159: LDA.b $2F\n #_01B15B: AND.w #$00FF\n #_01B15E: STA.b $0A\n\n #_01B160: DEX\n #_01B161: DEX\n\n #_01B162: TXA\n #_01B163: XBA\n #_01B164: STA.w $0436\n\n #_01B167: LDA.b $00\n #_01B169: AND.w #$0003\n #_01B16C: ASL A\n #_01B16D: ORA.w $0436\n #_01B170: STA.w $0436\n\n #_01B173: AND.w #$00FF\n #_01B176: CMP.b $0A\n #_01B178: BNE .flag_shutter_door\n\n #_01B17A: EOR.w #$0002\n #_01B17D: CMP.b $0A\n #_01B17F: BEQ CLC_and_EXIT\n\n.flag_shutter_door\n #_01B181: LDA.w $068C\n #_01B184: ORA.w DungeonMask,X\n #_01B187: STA.w $068C\n\n #_01B18A: LDY.w #$0000\n\n; ---------------------------------------------------------\n\n.no_extra_flagging_needed\n #_01B18D: SEC\n\n #_01B18E: RTS", + "file": "bank_01.asm" + }, + { + "name": "CLC_and_EXIT", + "code": "CLC_and_EXIT:\n #_01B18F: CLC\n\n #_01B190: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SmallRailCorner", + "code": "RoomDraw_SmallRailCorner:\n #_01B191: STA.b $0E\n\n #_01B193: LDA.b [$BF],Y\n #_01B195: AND.w #$03FF\n #_01B198: CMP.b $0E\n #_01B19A: BEQ CLC_and_EXIT\n\n #_01B19C: SEC\n\n #_01B19D: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01B19E", + "code": "UNREACHABLE_01B19E:\n #_01B19E: TAX\n\n #_01B19F: LDA.w #$0007\n #_01B1A2: BRA RoomDraw_MakeDoorPartsHighPriority_Vertical_set_size\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorPartsHighPriority_Vertical", + "code": "RoomDraw_MakeDoorPartsHighPriority_Vertical:\n #_01B1A4: TAX\n\n #_01B1A5: LDA.w #$0007\n\n.set_size\n #_01B1A8: STA.b $0E\n\n.next\n #_01B1AA: LDA.l $7E2000,X\n #_01B1AE: ORA.w #$2000\n #_01B1B1: STA.l $7E2000,X\n\n #_01B1B5: LDA.l $7E2002,X\n #_01B1B9: ORA.w #$2000\n #_01B1BC: STA.l $7E2002,X\n\n #_01B1C0: LDA.l $7E2004,X\n #_01B1C4: ORA.w #$2000\n #_01B1C7: STA.l $7E2004,X\n\n #_01B1CB: LDA.l $7E2006,X\n #_01B1CF: ORA.w #$2000\n #_01B1D2: STA.l $7E2006,X\n\n #_01B1D6: TXA\n #_01B1D7: CLC\n #_01B1D8: ADC.w #$0080\n #_01B1DB: TAX\n\n #_01B1DC: DEC.b $0E\n #_01B1DE: BNE .next\n\n #_01B1E0: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01B1E1", + "code": "UNREACHABLE_01B1E1:\n #_01B1E1: TAX\n\n #_01B1E2: LDA.w #$0007\n #_01B1E5: BRA RoomDraw_MakeDoorPartsHighPriority_Horizontal_continue\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_MakeDoorPartsHighPriority_Horizontal", + "code": "RoomDraw_MakeDoorPartsHighPriority_Horizontal:\n #_01B1E7: TAX\n\n #_01B1E8: LDA.w #$0005\n\n.continue\n #_01B1EB: STA.b $0E\n\n.next\n #_01B1ED: LDA.l $7E2000,X\n #_01B1F1: ORA.w #$2000\n #_01B1F4: STA.l $7E2000,X\n\n #_01B1F8: LDA.l $7E2080,X\n #_01B1FC: ORA.w #$2000\n #_01B1FF: STA.l $7E2080,X\n\n #_01B203: LDA.l $7E2100,X\n #_01B207: ORA.w #$2000\n #_01B20A: STA.l $7E2100,X\n\n #_01B20E: LDA.l $7E2180,X\n #_01B212: ORA.w #$2000\n #_01B215: STA.l $7E2180,X\n\n #_01B219: INX\n #_01B21A: INX\n\n #_01B21B: DEC.b $0E\n #_01B21D: BNE .next\n\n #_01B21F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards4x2VariableSpacing", + "code": "RoomDraw_Downwards4x2VariableSpacing:\n #_01B220: STA.b $0E\n\n.next\n #_01B222: LDA.w RoomDrawObjectData+0,X\n #_01B225: STA.b [$BF],Y\n\n #_01B227: LDA.w RoomDrawObjectData+2,X\n #_01B22A: STA.b [$C2],Y\n\n #_01B22C: LDA.w RoomDrawObjectData+4,X\n #_01B22F: STA.b [$C5],Y\n\n #_01B231: LDA.w RoomDrawObjectData+6,X\n #_01B234: STA.b [$C8],Y\n\n #_01B236: LDA.w RoomDrawObjectData+8,X\n #_01B239: STA.b [$CB],Y\n\n #_01B23B: LDA.w RoomDrawObjectData+10,X\n #_01B23E: STA.b [$CE],Y\n\n #_01B240: LDA.w RoomDrawObjectData+12,X\n #_01B243: STA.b [$D1],Y\n\n #_01B245: LDA.w RoomDrawObjectData+14,X\n #_01B248: STA.b [$D4],Y\n\n #_01B24A: TYA\n #_01B24B: CLC\n #_01B24C: ADC.b $0E\n #_01B24E: TAY\n\n #_01B24F: DEC.b $B2\n #_01B251: BNE .next\n\n #_01B253: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01B254", + "code": "UNREACHABLE_01B254:\n #_01B254: STA.b $0E\n\n.next\n #_01B256: JSR RoomDraw_Downwards2x2\n\n #_01B259: TXA\n #_01B25A: CLC\n #_01B25B: ADC.w #$0008\n #_01B25E: TAX\n\n #_01B25F: DEC.b $0E\n #_01B261: BNE .next\n\n #_01B263: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01B264", + "code": "UNREACHABLE_01B264:\n #_01B264: LDA.b $B2\n #_01B266: BEQ .exit\n\n.next\n #_01B268: LDA.w #$0002\n #_01B26B: JSR RoomDraw_Nx4\n\n #_01B26E: TXA\n #_01B26F: SEC\n #_01B270: SBC.w #$0010\n #_01B273: TAX\n\n #_01B274: DEC.b $B2\n #_01B276: BNE .next\n\n.exit\n #_01B278: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_2x2and1", + "code": "RoomDraw_2x2and1:\n #_01B279: LDA.w RoomDrawObjectData+0,X\n #_01B27C: STA.b [$BF],Y\n\n #_01B27E: LDA.w RoomDrawObjectData+2,X\n #_01B281: STA.b [$CB],Y\n\n #_01B283: LDA.w RoomDrawObjectData+4,X\n #_01B286: STA.b [$D7],Y\n\n #_01B288: LDA.w RoomDrawObjectData+6,X\n #_01B28B: STA.b [$DA],Y\n\n #_01B28D: LDA.w RoomDrawObjectData+8,X\n #_01B290: STA.b [$DD],Y\n\n #_01B292: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrawDiagonalGrave", + "code": "RoomDraw_DrawDiagonalGrave:\n.next\n #_01B293: JSR RoomDraw_2x2and1\n\n #_01B296: TYA\n #_01B297: CLC\n #_01B298: ADC.w #$0082\n #_01B29B: TAY\n\n; ---------------------------------------------------------\n\n#RoomDraw_DrawDiagonalGrave_start:\n #_01B29C: DEC.b $B2\n #_01B29E: BNE .next\n\n #_01B2A0: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DrawDiagonalAcute", + "code": "RoomDraw_DrawDiagonalAcute:\n.next\n #_01B2A1: JSR RoomDraw_2x2and1\n\n #_01B2A4: TYA\n #_01B2A5: SEC\n #_01B2A6: SBC.w #$007E\n #_01B2A9: TAY\n\n; ---------------------------------------------------------\n\n#RoomDraw_DrawDiagonalAcute_start:\n #_01B2AA: DEC.b $B2\n #_01B2AC: BNE .next\n\n #_01B2AE: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Downwards2x2", + "code": "RoomDraw_Downwards2x2:\n #_01B2AF: LDA.w RoomDrawObjectData+0,X\n #_01B2B2: STA.b [$BF],Y\n\n #_01B2B4: LDA.w RoomDrawObjectData+2,X\n #_01B2B7: STA.b [$CB],Y\n\n #_01B2B9: LDA.w RoomDrawObjectData+4,X\n #_01B2BC: STA.b [$C2],Y\n\n #_01B2BE: LDA.w RoomDrawObjectData+6,X\n #_01B2C1: STA.b [$CE],Y\n\n #_01B2C3: TYA\n #_01B2C4: CLC\n #_01B2C5: ADC.w #$0100\n #_01B2C8: TAY\n\n #_01B2C9: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Repeated1x1_AdvanceWithCachedCount", + "code": "RoomDraw_Repeated1x1_AdvanceWithCachedCount:\n #_01B2CA: INX\n #_01B2CB: INX\n\n #_01B2CC: INY\n #_01B2CD: INY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Repeated1x1_CachedCount", + "code": "RoomDraw_Repeated1x1_CachedCount:\n #_01B2CE: LDA.b $B2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_Repeated1x1", + "code": "RoomDraw_Repeated1x1:\n #_01B2D0: STA.b $0A\n\n #_01B2D2: LDA.w RoomDrawObjectData+0,X\n\n.next\n #_01B2D5: STA.b [$BF],Y\n\n #_01B2D7: INY\n #_01B2D8: INY\n\n #_01B2D9: DEC.b $0A\n #_01B2DB: BNE .next\n\n #_01B2DD: LDA.b $08\n #_01B2DF: CLC\n\n #_01B2E0: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardShelfEnd", + "code": "RoomDraw_RightwardShelfEnd:\n #_01B2E1: LDA.w RoomDrawObjectData+0,X\n #_01B2E4: STA.b [$BF],Y\n\n #_01B2E6: LDA.w RoomDrawObjectData+2,X\n #_01B2E9: STA.b [$CB],Y\n\n #_01B2EB: LDA.w RoomDrawObjectData+4,X\n #_01B2EE: STA.b [$D7],Y\n\n #_01B2F0: LDA.w RoomDrawObjectData+6,X\n #_01B2F3: STA.b [$DA],Y\n\n #_01B2F5: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardBarSegment", + "code": "RoomDraw_RightwardBarSegment:\n #_01B2F6: LDA.w RoomDrawObjectData+0,X\n #_01B2F9: STA.b [$BF],Y\n\n #_01B2FB: LDA.w RoomDrawObjectData+2,X\n #_01B2FE: STA.b [$CB],Y\n\n #_01B300: LDA.w RoomDrawObjectData+4,X\n #_01B303: STA.b [$D7],Y\n\n #_01B305: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WeirdGloveRequiredPot", + "code": "RoomDraw_WeirdGloveRequiredPot:\n #_01B306: LDA.w #$1010\n #_01B309: BRA DrawBigGraySegment\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_WeirdUglyPot", + "code": "RoomDraw_WeirdUglyPot:\n #_01B30B: LDA.w #$1212\n #_01B30E: BRA DrawBigGraySegment\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BigGrayRock", + "code": "RoomDraw_BigGrayRock:\n #_01B310: STY.b $08\n\n #_01B312: LDX.w #obj0E62-RoomDrawObjectData\n #_01B315: LDA.w #$2020\n #_01B318: JSR DrawBigGraySegment\n\n #_01B31B: LDX.w #obj0E6A-RoomDrawObjectData\n #_01B31E: LDA.w #$2121\n #_01B321: JSR DrawBigGraySegment\n\n #_01B324: LDA.b $08\n #_01B326: CLC\n #_01B327: ADC.w #$0100\n #_01B32A: TAY\n\n #_01B32B: LDX.w #obj0E72-RoomDrawObjectData\n #_01B32E: LDA.w #$2222\n #_01B331: JSR DrawBigGraySegment\n\n #_01B334: LDX.w #obj0E7A-RoomDrawObjectData\n #_01B337: LDA.w #$2323\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DrawBigGraySegment", + "code": "DrawBigGraySegment:\n #_01B33A: PHX\n\n #_01B33B: LDX.w $042C\n\n #_01B33E: STA.w $0500,X\n\n #_01B341: INC.w $042C\n #_01B344: INC.w $042C\n\n #_01B347: LDA.b $BA\n #_01B349: STA.w $0520,X\n\n #_01B34C: TYA\n #_01B34D: STA.w $0540,X\n\n #_01B350: LDA.b $BF\n #_01B352: CMP.w #$4000\n #_01B355: BNE .lower_layer\n\n #_01B357: TYA\n #_01B358: ORA.w #$2000\n #_01B35B: STA.w $0540,X\n\n.lower_layer\n #_01B35E: LDA.b [$BF],Y\n #_01B360: STA.w $0560,X\n\n #_01B363: LDA.b [$CB],Y\n #_01B365: STA.w $0580,X\n\n #_01B368: LDA.b [$C2],Y\n #_01B36A: STA.w $05A0,X\n\n #_01B36D: LDA.b [$CE],Y\n #_01B36F: STA.w $05C0,X\n\n #_01B372: PLX\n\n #_01B373: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsPots2x2_1to16", + "code": "RoomDraw_RightwardsPots2x2_1to16:\n #_01B376: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01B379: JSR RoomDraw_SinglePot\n\n #_01B37C: DEC.b $B2\n #_01B37E: BNE .next\n\n #_01B380: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsPots2x2_1to16", + "code": "RoomDraw_DownwardsPots2x2_1to16:\n #_01B381: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01B384: JSR RoomDraw_SinglePot\n\n #_01B387: LDA.b $08\n #_01B389: CLC\n #_01B38A: ADC.w #$0100\n #_01B38D: STA.b $08\n\n #_01B38F: TAY\n\n #_01B390: DEC.b $B2\n #_01B392: BNE .next\n\n #_01B394: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_SinglePot", + "code": "RoomDraw_SinglePot:\n #_01B395: PHX\n\n #_01B396: LDX.w $042C\n\n #_01B399: INC.w $042C\n #_01B39C: INC.w $042C\n\n #_01B39F: LDA.w #$1111\n #_01B3A2: STA.w $0500,X\n\n #_01B3A5: LDA.b $BA\n #_01B3A7: STA.w $0520,X\n\n #_01B3AA: TYA\n #_01B3AB: STA.w $0540,X\n\n #_01B3AE: LDA.b $BF\n #_01B3B0: CMP.w #$4000\n #_01B3B3: BNE .lower_layer\n\n #_01B3B5: TYA\n #_01B3B6: ORA.w #$2000\n #_01B3B9: STA.w $0540,X\n\n.lower_layer\n #_01B3BC: LDA.w #$0D0E\n #_01B3BF: STA.w $0560,X\n\n #_01B3C2: LDA.w #$0D1E\n #_01B3C5: STA.w $0580,X\n\n #_01B3C8: LDA.w #$4D0E\n #_01B3CB: STA.w $05A0,X\n\n #_01B3CE: LDA.w #$4D1E\n #_01B3D1: STA.w $05C0,X\n\n #_01B3D4: PLX\n\n #_01B3D5: LDA.l $7EF3CA\n #_01B3D9: BEQ .light_world\n\n #_01B3DB: LDX.w #obj0E92-RoomDrawObjectData\n\n.light_world\n #_01B3DE: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_BombableFloor", + "code": "RoomDraw_BombableFloor:\n #_01B3E1: LDA.b $A0\n #_01B3E3: CMP.w #$0065 ; ROOM 0065\n #_01B3E6: BNE .not_open_tt_attic\n\n #_01B3E8: LDA.w $0402\n #_01B3EB: AND.w #$1000\n #_01B3EE: BEQ .not_open_tt_attic\n\n #_01B3F0: STZ.b $B2\n #_01B3F2: STZ.b $B4\n\n #_01B3F4: LDX.w #obj05AA-RoomDrawObjectData\n #_01B3F7: JMP.w RoomDraw_BigHole4x4_1to16\n\n; ---------------------------------------------------------\n\n.not_open_tt_attic\n #_01B3FA: STY.b $08\n\n #_01B3FC: LDA.w #obj05BA-RoomDrawObjectData\n #_01B3FF: STA.b $0E\n\n #_01B401: LDX.w #obj0220-RoomDrawObjectData\n #_01B404: LDA.w #$3030\n #_01B407: JSR .draw_segment\n\n #_01B40A: LDX.w #obj0228-RoomDrawObjectData\n #_01B40D: LDA.w #$3131\n #_01B410: JSR .draw_segment\n\n #_01B413: LDA.b $08\n #_01B415: CLC\n #_01B416: ADC.w #$0100\n #_01B419: TAY\n\n #_01B41A: LDX.w #obj0230-RoomDrawObjectData\n #_01B41D: LDA.w #$3232\n #_01B420: JSR .draw_segment\n\n #_01B423: LDX.w #obj0238-RoomDrawObjectData\n #_01B426: LDA.w #$3333\n\n; ---------------------------------------------------------\n\n.draw_segment\n #_01B429: PHX\n\n #_01B42A: LDX.w $042C\n\n #_01B42D: STA.w $0500,X\n\n #_01B430: INC.w $042C\n #_01B433: INC.w $042C\n\n #_01B436: LDA.b $BA\n #_01B438: STA.w $0520,X\n\n #_01B43B: TYA\n #_01B43C: STA.w $0540,X\n\n #_01B43F: LDA.b $BF\n #_01B441: CMP.w #$4000\n #_01B444: BNE .lower_layer\n\n #_01B446: TYA\n #_01B447: ORA.w #$2000\n #_01B44A: STA.w $0540,X\n\n.lower_layer\n #_01B44D: PHY\n\n #_01B44E: LDY.b $0E\n\n #_01B450: LDA.w RoomDrawObjectData+0,Y\n #_01B453: STA.w $0560,X\n\n #_01B456: LDA.w RoomDrawObjectData+2,Y\n #_01B459: STA.w $0580,X\n\n #_01B45C: LDA.w RoomDrawObjectData+4,Y\n #_01B45F: STA.w $05A0,X\n\n #_01B462: LDA.w RoomDrawObjectData+6,Y\n #_01B465: STA.w $05C0,X\n\n #_01B468: TYA\n #_01B469: CLC\n #_01B46A: ADC.w #$0008\n #_01B46D: STA.b $0E\n\n #_01B46F: PLY\n #_01B470: PLX\n\n #_01B471: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_RightwardsHammerPegs2x2_1to16", + "code": "RoomDraw_RightwardsHammerPegs2x2_1to16:\n #_01B474: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01B477: JSR RoomDraw_HammerPegSingle\n\n #_01B47A: DEC.b $B2\n #_01B47C: BNE .next\n\n #_01B47E: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_DownwardsHammerPegs2x2_1to16", + "code": "RoomDraw_DownwardsHammerPegs2x2_1to16:\n #_01B47F: JSR RoomDraw_GetSize_1to16\n\n.next\n #_01B482: JSR RoomDraw_HammerPegSingle\n\n #_01B485: LDA.b $08\n #_01B487: CLC\n #_01B488: ADC.w #$0100\n #_01B48B: STA.b $08\n\n #_01B48D: TAY\n\n #_01B48E: DEC.b $B2\n #_01B490: BNE .next\n\n #_01B492: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_HammerPegSingle", + "code": "RoomDraw_HammerPegSingle:\n #_01B493: PHX\n\n #_01B494: LDX.w $042C\n\n #_01B497: INC.w $042C\n #_01B49A: INC.w $042C\n\n #_01B49D: LDA.w #$4040\n #_01B4A0: STA.w $0500,X\n\n #_01B4A3: LDA.b $BA\n #_01B4A5: STA.w $0520,X\n\n #_01B4A8: TYA\n #_01B4A9: STA.w $0540,X\n\n #_01B4AC: LDA.b $BF\n #_01B4AE: CMP.w #$4000\n #_01B4B1: BNE .lower_layer\n\n #_01B4B3: TYA\n #_01B4B4: ORA.w #$2000\n #_01B4B7: STA.w $0540,X\n\n.lower_layer\n #_01B4BA: LDA.w #$19D8\n #_01B4BD: STA.w $0560,X\n\n #_01B4C0: LDA.w #$19D9\n #_01B4C3: STA.w $0580,X\n\n #_01B4C6: LDA.w #$59D8\n #_01B4C9: STA.w $05A0,X\n\n #_01B4CC: LDA.w #$59D9\n #_01B4CF: STA.w $05C0,X\n\n #_01B4D2: PLX\n\n #_01B4D3: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_PushableBlock", + "code": "RoomDraw_PushableBlock:\n #_01B4D6: LDX.w $042C\n\n #_01B4D9: INC.w $042C\n #_01B4DC: INC.w $042C\n\n #_01B4DF: STZ.w $0500,X\n\n #_01B4E2: LDA.b $BA\n #_01B4E4: STA.w $0520,X\n\n #_01B4E7: TYA\n #_01B4E8: STA.w $0540,X\n\n #_01B4EB: AND.w #$3FFF\n #_01B4EE: TAY\n\n #_01B4EF: LDA.b [$BF],Y\n #_01B4F1: STA.w $0560,X\n\n #_01B4F4: LDA.b [$CB],Y\n #_01B4F6: STA.w $0580,X\n\n #_01B4F9: LDA.b [$C2],Y\n #_01B4FB: STA.w $05A0,X\n\n #_01B4FE: LDA.b [$CE],Y\n #_01B500: STA.w $05C0,X\n\n #_01B503: LDX.w #obj0E52-RoomDrawObjectData\n #_01B506: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_LightableTorch", + "code": "RoomDraw_LightableTorch:\n #_01B509: LDY.w $042E\n\n #_01B50C: STA.w $0540,Y\n\n #_01B50F: DEX\n #_01B510: DEX\n\n #_01B511: TXA\n #_01B512: STA.w $0520,Y\n\n #_01B515: INC.w $042E\n #_01B518: INC.w $042E\n\n #_01B51B: LDX.w #obj0EC2-RoomDrawObjectData\n\n #_01B51E: LDA.b $08\n #_01B520: ASL A\n #_01B521: BCC .dont_tally\n\n #_01B523: LDX.w #obj0ECA-RoomDrawObjectData\n\n #_01B526: LDA.w $045A\n #_01B529: CMP.w #$0003\n #_01B52C: BCS .dont_tally\n\n #_01B52E: INC.w $045A\n\n.dont_tally\n #_01B531: STX.b $0C\n\n #_01B533: LDA.b $08\n #_01B535: AND.w #$3FFF\n #_01B538: TAY\n\n #_01B539: JMP.w RoomDraw_Rightwards2x2\n\n; =========================================================\n; FREE ROM: 0x24\n; =========================================================", + "file": "bank_01.asm" + }, + { + "name": "NULL_01B53C", + "code": "NULL_01B53C:\n #_01B53C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_01B544: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_01B54C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_01B554: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_01B55C: db $FF, $FF, $FF, $FF\n\n; =========================================================\n\npool Underworld_LoadHeader\n\n.camera_offset\n #_01B560: dw 256\n #_01B562: dw -256\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadHeader", + "code": "Underworld_LoadHeader:\n #_01B564: STZ.w $0642\n #_01B567: STZ.w $0646\n #_01B56A: STZ.w $0641\n\n #_01B56D: REP #$30\n\n #_01B56F: LDA.b $11\n #_01B571: AND.w #$00FF\n #_01B574: BNE .nonzero_submodule\n\n #_01B576: LDA.b $E2\n #_01B578: AND.w #$FE00\n #_01B57B: STA.w $062C\n\n #_01B57E: LDA.b $E8\n #_01B580: BRA .set_lower_bound_y\n\n; ---------------------------------------------------------\n\n.nonzero_submodule\n #_01B582: CMP.w #$0015\n #_01B585: BEQ .adjust_camera_x\n\n #_01B587: CMP.w #$0012\n #_01B58A: BCS .dont_adjust_camera_x\n\n #_01B58C: CMP.w #$0006\n #_01B58F: BCC .dont_adjust_camera_x\n\n.adjust_camera_x\n #_01B591: LDA.b $E2\n #_01B593: CLC\n #_01B594: ADC.w #$0020\n\n #_01B597: BRA .set_lower_bound_x\n\n.dont_adjust_camera_x\n #_01B599: LDA.b $67\n #_01B59B: AND.w #$000F\n #_01B59E: LSR A\n #_01B59F: CMP.w #$0002\n #_01B5A2: BCS .walking_vertically\n\n #_01B5A4: ASL A\n #_01B5A5: TAX\n\n #_01B5A6: LDA.b $E2\n #_01B5A8: CLC\n #_01B5A9: ADC.l .camera_offset,X\n\n.set_lower_bound_x\n #_01B5AD: AND.w #$FE00\n #_01B5B0: STA.w $062C\n\n #_01B5B3: LDA.b $E8\n #_01B5B5: CLC\n #_01B5B6: ADC.w #$0020\n\n #_01B5B9: BRA .set_lower_bound_y\n\n.walking_vertically\n #_01B5BB: LSR A\n #_01B5BC: LSR A\n #_01B5BD: ASL A\n #_01B5BE: TAX\n\n #_01B5BF: LDA.b $E2\n #_01B5C1: CLC\n #_01B5C2: ADC.w #$0020\n #_01B5C5: AND.w #$FE00\n #_01B5C8: STA.w $062C\n\n #_01B5CB: LDA.b $E8\n #_01B5CD: CLC\n #_01B5CE: ADC.l .camera_offset,X\n\n.set_lower_bound_y\n #_01B5D2: AND.w #$FE00\n #_01B5D5: STA.w $062E\n\n #_01B5D8: LDA.b $A0\n #_01B5DA: ASL A\n #_01B5DB: TAX\n\n #_01B5DC: LDA.l RoomHeader_RoomToPointer,X\n #_01B5E0: STA.b $0D\n\n; ---------------------------------------------------------\n\n #_01B5E2: SEP #$20\n #_01B5E4: REP #$10\n\n #_01B5E6: LDA.b #RoomHeader_RoomToPointer>>16\n #_01B5E8: STA.b $0F\n\n #_01B5EA: LDA.w $0414\n #_01B5ED: STA.l $7EC208\n\n #_01B5F1: LDY.w #$0000\n\n #_01B5F4: LDA.b [$0D],Y\n #_01B5F6: AND.b #$E0\n #_01B5F8: ASL A\n #_01B5F9: ROL A\n #_01B5FA: ROL A\n #_01B5FB: ROL A\n #_01B5FC: STA.w $0414\n\n #_01B5FF: LDA.b [$0D],Y\n #_01B601: AND.b #$1C\n #_01B603: LSR A\n #_01B604: LSR A\n #_01B605: STA.w $046C\n\n #_01B608: LDA.l $7EC005\n #_01B60C: STA.l $7EC006\n\n #_01B610: LDA.b [$0D],Y\n #_01B612: AND.b #$01\n #_01B614: STA.l $7EC005\n\n #_01B618: REP #$20\n\n #_01B61A: INY\n\n #_01B61B: LDA.b [$0D],Y\n #_01B61D: AND.w #$00FF\n #_01B620: ASL A\n #_01B621: ASL A\n #_01B622: TAX\n\n #_01B623: SEP #$20\n\n #_01B625: LDA.l UnderworldPaletteSets+0,X\n #_01B629: STA.w $0AB6\n\n #_01B62C: LDA.l UnderworldPaletteSets+1,X\n #_01B630: STA.w $0AAC\n\n #_01B633: LDA.l UnderworldPaletteSets+2,X\n #_01B637: STA.w $0AAD\n\n #_01B63A: LDA.l UnderworldPaletteSets+3,X\n #_01B63E: STA.w $0AAE\n\n #_01B641: INY\n\n #_01B642: LDA.b [$0D],Y\n #_01B644: STA.w $0AA2\n\n #_01B647: INY\n\n #_01B648: LDA.b [$0D],Y\n #_01B64A: CLC\n #_01B64B: ADC.b #$40\n #_01B64D: STA.w $0AA3\n\n #_01B650: INY\n\n #_01B651: LDA.b [$0D],Y\n #_01B653: STA.b $AD\n\n #_01B655: INY\n\n #_01B656: LDA.b [$0D],Y\n #_01B658: STA.b $AE\n\n #_01B65A: INY\n\n #_01B65B: LDA.b [$0D],Y\n #_01B65D: STA.b $AF\n\n #_01B65F: INY\n\n #_01B660: LDA.b [$0D],Y\n #_01B662: AND.b #$03\n #_01B664: STA.w $063C\n\n #_01B667: LDA.b [$0D],Y\n #_01B669: AND.b #$0C\n #_01B66B: LSR A\n #_01B66C: LSR A\n #_01B66D: STA.w $063D\n\n #_01B670: LDA.b [$0D],Y\n #_01B672: AND.b #$30\n #_01B674: LSR A\n #_01B675: LSR A\n #_01B676: LSR A\n #_01B677: LSR A\n #_01B678: STA.w $063E\n\n #_01B67B: LDA.b [$0D],Y\n #_01B67D: AND.b #$C0\n #_01B67F: ASL A\n #_01B680: ROL A\n #_01B681: ROL A\n #_01B682: STA.w $063F\n\n #_01B685: INY\n\n #_01B686: LDA.b [$0D],Y\n #_01B688: AND.b #$03\n #_01B68A: STA.w $0640\n\n #_01B68D: INY\n\n #_01B68E: LDA.b [$0D],Y\n #_01B690: STA.l $7EC000\n\n #_01B694: INY\n\n #_01B695: LDA.b [$0D],Y\n #_01B697: STA.l $7EC001\n\n #_01B69B: INY\n\n #_01B69C: LDA.b [$0D],Y\n #_01B69E: STA.l $7EC002\n\n #_01B6A2: INY\n\n #_01B6A3: LDA.b [$0D],Y\n #_01B6A5: STA.l $7EC003\n\n #_01B6A9: INY\n\n #_01B6AA: LDA.b [$0D],Y\n #_01B6AC: STA.l $7EC004\n\n; ---------------------------------------------------------\n\n #_01B6B0: REP #$30\n\n #_01B6B2: LDA.w #$0001\n #_01B6B5: STA.w $0468\n\n #_01B6B8: STZ.w $04BA\n\n #_01B6BB: LDA.b $A0\n #_01B6BD: ASL A\n #_01B6BE: CLC\n #_01B6BF: ADC.b $A0\n #_01B6C1: STA.w $0110\n\n #_01B6C4: TAX\n\n #_01B6C5: LDA.l RoomData_DoorDataPointers+1,X\n #_01B6C9: STA.b $B8\n\n #_01B6CB: LDA.l RoomData_DoorDataPointers+0,X\n #_01B6CF: STA.b $B7\n\n #_01B6D1: LDA.b $A0\n #_01B6D3: ASL A\n #_01B6D4: TAX\n\n #_01B6D5: LDA.l $7EF000,X\n #_01B6D9: AND.w #$F000\n #_01B6DC: STA.w $0400\n\n #_01B6DF: ORA.w #$0F00\n #_01B6E2: STA.w $068C\n\n #_01B6E5: LDA.l $7EF000,X\n #_01B6E9: AND.w #$0FF0\n #_01B6EC: ASL A\n #_01B6ED: ASL A\n #_01B6EE: ASL A\n #_01B6EF: ASL A\n #_01B6F0: STA.w $0402\n\n #_01B6F3: LDA.l $7EF000,X\n #_01B6F7: AND.w #$000F\n #_01B6FA: STA.w $0408\n\n #_01B6FD: LDX.w #$0000\n #_01B700: TXY\n\n; ---------------------------------------------------------\n\n.next_door\n #_01B701: STZ.w $19A0,X\n\n #_01B704: LDA.b [$B7],Y\n #_01B706: CMP.w #$FFFF\n #_01B709: BEQ .doors_done\n\n #_01B70B: STA.w $19A0,X\n\n #_01B70E: INY\n #_01B70F: INY\n\n #_01B710: INX\n #_01B711: INX\n\n #_01B712: BRA .next_door\n\n; ---------------------------------------------------------\n\n.doors_done\n #_01B714: LDA.b $A0\n #_01B716: DEC A\n #_01B717: TAX\n\n #_01B718: AND.w #$000F\n #_01B71B: CMP.w #$000F\n #_01B71E: BEQ .room_id_X0\n\n #_01B720: LDA.w #$0024\n #_01B723: JSR Underworld_CheckAdjacentRoomsForOpenDoors\n\n.room_id_X0\n #_01B726: LDA.b $A0\n #_01B728: INC A\n #_01B729: TAX\n\n #_01B72A: AND.w #$000F\n #_01B72D: BEQ .room_id_XF\n\n #_01B72F: LDA.w #$0018\n #_01B732: JSR Underworld_CheckAdjacentRoomsForOpenDoors\n\n.room_id_XF\n #_01B735: LDA.b $A0\n #_01B737: SEC\n #_01B738: SBC.w #$0010\n #_01B73B: TAX\n #_01B73C: BMI .room_id_0X\n\n #_01B73E: LDA.w #$000C\n #_01B741: JSR Underworld_CheckAdjacentRoomsForOpenDoors\n\n.room_id_0X\n #_01B744: LDA.b $A0\n #_01B746: CLC\n #_01B747: ADC.w #$0010\n #_01B74A: TAX\n\n #_01B74B: CMP.w #$0140 ; ROOM 0140+\n #_01B74E: BCS .room_id_FX\n\n #_01B750: LDA.w #$0000\n #_01B753: JSR Underworld_CheckAdjacentRoomsForOpenDoors\n\n.room_id_FX\n #_01B756: SEP #$30\n\n; ---------------------------------------------------------\n\n#EXIT_01B758:\n #_01B758: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_CheckAdjacentRoomsForOpenDoors", + "code": "Underworld_CheckAdjacentRoomsForOpenDoors:\n #_01B759: STA.b $04\n\n #_01B75B: JSR Underworld_LoadAdjacentRoomDoors\n\n #_01B75E: LDY.w #$0000\n\n.next_door\n #_01B761: LDA.w $1110,Y\n #_01B764: CMP.w #$FFFF\n #_01B767: BEQ EXIT_01B758\n\n #_01B769: STA.b $02\n\n #_01B76B: LDX.b $04\n\n #_01B76D: AND.w #$00FF\n #_01B770: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B773: BEQ .match\n\n #_01B775: INX\n #_01B776: INX\n #_01B777: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B77A: BEQ .match\n\n #_01B77C: INX\n #_01B77D: INX\n #_01B77E: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B781: BEQ .match\n\n #_01B783: INX\n #_01B784: INX\n #_01B785: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B788: BEQ .match\n\n #_01B78A: INX\n #_01B78B: INX\n #_01B78C: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B78F: BEQ .match\n\n #_01B791: INX\n #_01B792: INX\n #_01B793: CMP.w RoomDraw_DoorPartnerSelfLocation,X\n #_01B796: BNE .no_match\n\n; ---------------------------------------------------------\n\n.match\n #_01B798: LDA.w RoomDraw_DoorPartnerLocation,X\n #_01B79B: STA.b $00\n\n #_01B79D: LDX.w #$0000\n\n.try_next\n #_01B7A0: LDA.w $19A0,X\n #_01B7A3: AND.w #$00FF\n #_01B7A6: CMP.b $00\n #_01B7A8: BEQ .matching_partner\n\n #_01B7AA: INX\n #_01B7AB: INX\n #_01B7AC: CPX.w #$0010\n #_01B7AF: BNE .try_next\n\n #_01B7B1: BRA .no_match\n\n; ---------------------------------------------------------\n\n.matching_partner\n #_01B7B3: LDA.w $19A0,X\n #_01B7B6: AND.w #$FF00\n #_01B7B9: CMP.w #$3000\n #_01B7BC: BEQ .no_match\n\n #_01B7BE: CMP.w #$4400\n #_01B7C1: BEQ .shutter\n\n #_01B7C3: CMP.w #$1800\n #_01B7C6: BNE .not_shutter\n\n.shutter\n #_01B7C8: LDA.b $0E\n #_01B7CA: CMP.b $A2\n #_01B7CC: BNE .no_match\n\n #_01B7CE: STZ.w $0468\n\n #_01B7D1: BRA .open_door\n\n.not_shutter\n #_01B7D3: LDA.w $1100\n #_01B7D6: AND.w DungeonMask,Y\n #_01B7D9: BEQ .no_match\n\n.open_door\n #_01B7DB: LDA.w $068C\n #_01B7DE: ORA.w DungeonMask,X\n #_01B7E1: STA.w $068C\n\n.no_match\n #_01B7E4: INY\n #_01B7E5: INY\n #_01B7E6: CPY.w #$0010\n #_01B7E9: BEQ EXIT_01B7EE\n\n #_01B7EB: JMP.w .next_door\n\n; ---------------------------------------------------------\n\n#EXIT_01B7EE:\n #_01B7EE: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadAdjacentRoomDoors", + "code": "Underworld_LoadAdjacentRoomDoors:\n #_01B7EF: STX.b $0E\n\n #_01B7F1: TXA\n #_01B7F2: ASL A\n #_01B7F3: CLC\n #_01B7F4: ADC.b $0E\n #_01B7F6: TAX\n\n #_01B7F7: LDA.l RoomData_DoorDataPointers+1,X\n #_01B7FB: STA.b $B8\n\n #_01B7FD: LDA.l RoomData_DoorDataPointers+0,X\n #_01B801: STA.b $B7\n\n #_01B803: LDA.b $0E\n #_01B805: ASL A\n #_01B806: TAX\n\n #_01B807: LDA.l $7EF000,X\n #_01B80B: AND.w #$F000\n #_01B80E: ORA.w #$0F00\n #_01B811: STA.w $1100\n\n; ---------------------------------------------------------\n\n #_01B814: LDX.w #$0000\n #_01B817: TXY\n\n.next_door\n #_01B818: LDA.b [$B7],Y\n #_01B81A: STA.w $1110,X\n\n #_01B81D: CMP.w #$FFFF\n #_01B820: BEQ EXIT_01B7EE\n\n #_01B822: AND.w #$FF00\n #_01B825: CMP.w #$4000\n #_01B828: BEQ .default\n\n #_01B82A: CMP.w #$0200\n #_01B82D: BCS .not_default\n\n.default\n #_01B82F: LDA.w $1100\n #_01B832: ORA.w DungeonMask,X\n #_01B835: STA.w $1100\n\n.not_default\n #_01B838: INY\n #_01B839: INY\n\n #_01B83A: INX\n #_01B83B: INX\n\n #_01B83C: BRA .next_door\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_ApplyRoomOverlay", + "code": "Underworld_ApplyRoomOverlay:\n #_01B83E: REP #$30\n\n #_01B840: LDA.b $BA\n #_01B842: BNE .pointer_is_set\n\n #_01B844: STZ.w $045E\n\n #_01B847: LDA.w $04BA\n #_01B84A: ASL A\n #_01B84B: CLC\n #_01B84C: ADC.w $04BA\n #_01B84F: TAX\n\n #_01B850: LDA.l OverlayDataPointers+1,X\n #_01B854: STA.b $B8\n\n #_01B856: LDA.l OverlayDataPointers+0,X\n #_01B85A: STA.b $B7\n\n #_01B85C: JSR Underworld_DrawRoomOverlay\n\n #_01B85F: REP #$30\n\n #_01B861: STZ.b $BA\n #_01B863: STZ.w $045E\n\n; ---------------------------------------------------------\n\n.pointer_is_set\n #_01B866: STZ.b $0C\n\n.next\n #_01B868: LDY.b $BA\n\n #_01B86A: LDA.b [$B7],Y\n #_01B86C: CMP.w #$FFFF\n #_01B86F: BEQ .end\n\n #_01B871: STA.b $00\n\n #_01B873: SEP #$20\n\n #_01B875: LDA.b [$B7],Y\n #_01B877: AND.b #$FC\n #_01B879: STA.b $08\n\n #_01B87B: INY\n #_01B87C: INY\n\n #_01B87D: LDA.b $01\n #_01B87F: LSR A\n #_01B880: LSR A\n #_01B881: LSR A\n #_01B882: ROR.b $08\n #_01B884: STA.b $09\n\n #_01B886: INY\n #_01B887: STY.b $BA\n\n #_01B889: REP #$20\n\n #_01B88B: LDA.b $08\n #_01B88D: PHA\n\n #_01B88E: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01B891: PLA\n #_01B892: JSR Underworld_DrawRoomOverlay_Apply\n\n #_01B895: BRA .next\n\n; ---------------------------------------------------------\n\n.end\n #_01B897: LDY.b $0C\n\n #_01B899: LDA.w #$FFFF\n #_01B89C: STA.w $1100,Y\n\n #_01B89F: SEP #$30\n\n #_01B8A1: LDA.b #$01\n #_01B8A3: STA.b $18\n\n #_01B8A5: STZ.b $11\n\n #_01B8A7: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadAttribute_Selectable", + "code": "Underworld_LoadAttribute_Selectable:\n #_01B8B4: LDA.w $0200\n #_01B8B7: ASL A\n #_01B8B8: TAX\n\n #_01B8B9: JSR (.vectors,X)\n\n #_01B8BC: SEP #$30\n\n #_01B8BE: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadAttributeTable", + "code": "Underworld_LoadAttributeTable:\n #_01B8BF: REP #$20\n\n #_01B8C1: STZ.b $B2\n #_01B8C3: STZ.b $B4\n\n #_01B8C5: LDA.w #$1000\n #_01B8C8: STA.b $00\n\n #_01B8CA: JSR Underworld_LoadBasicAttribute_full\n\n #_01B8CD: SEP #$30\n\n #_01B8CF: JSR Underworld_LoadObjectAttribute\n #_01B8D2: JSR Underworld_LoadDoorAttribute\n\n #_01B8D5: LDA.l $7EC172\n #_01B8D9: BEQ .dont_flip\n\n #_01B8DB: JSL Underworld_FlipCrystalPegAttribute\n\n.dont_flip\n #_01B8DF: STZ.w $0200\n\n #_01B8E2: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadBasicAttribute", + "code": "Underworld_LoadBasicAttribute:\n #_01B8E3: REP #$20\n\n #_01B8E5: INC.w $0200\n\n #_01B8E8: STZ.b $B2\n #_01B8EA: STZ.b $B4\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadBasicAttribute_partial", + "code": "Underworld_LoadBasicAttribute_partial:\n #_01B8EC: REP #$20\n\n #_01B8EE: LDA.w #$0040\n #_01B8F1: STA.b $00\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadBasicAttribute_full", + "code": "Underworld_LoadBasicAttribute_full:\n #_01B8F3: PHB\n\n #_01B8F4: LDX.b #$7E\n #_01B8F6: PHX\n #_01B8F7: PLB\n\n #_01B8F8: REP #$10\n\n; ---------------------------------------------------------\n\n.next\n #_01B8FA: LDX.b $B2\n\n #_01B8FC: LDA.l $7E2002,X\n #_01B900: AND.w #$03FF\n #_01B903: TAY\n\n #_01B904: LDA.w $7EFE00,Y\n #_01B907: STA.b $04\n\n #_01B909: LDA.l $7E2000,X\n #_01B90D: AND.w #$03FF\n #_01B910: TAY\n\n #_01B911: SEP #$20\n\n; ---------------------------------------------------------\n\n #_01B913: LDA.w $7EFE00,Y\n #_01B916: CMP.b #$10\n #_01B918: BCC .dont_flip_a\n\n #_01B91A: CMP.b #$1C\n #_01B91C: BCS .dont_flip_a\n\n #_01B91E: LDA.l $7E2001,X\n #_01B922: ASL A\n #_01B923: ROL A\n #_01B924: ROL A\n #_01B925: AND.b #$03\n #_01B927: ORA.w $7EFE00,Y\n\n.dont_flip_a\n #_01B92A: STA.b $02\n\n #_01B92C: LDA.b $04\n #_01B92E: CMP.b #$10\n #_01B930: BCC .dont_flip_b\n\n #_01B932: CMP.b #$1C\n #_01B934: BCS .dont_flip_b\n\n #_01B936: LDA.l $7E2003,X\n #_01B93A: ASL A\n #_01B93B: ROL A\n #_01B93C: ROL A\n #_01B93D: AND.b #$03\n #_01B93F: ORA.b $04\n\n.dont_flip_b\n #_01B941: XBA\n\n #_01B942: LDA.b $02\n\n #_01B944: REP #$21\n\n #_01B946: LDX.b $B4\n\n #_01B948: STA.l $7F2000,X\n\n #_01B94C: INX\n #_01B94D: INX\n #_01B94E: STX.b $B4\n\n #_01B950: LDA.b $B2\n #_01B952: ADC.w #$0004\n #_01B955: STA.b $B2\n\n #_01B957: DEC.b $00\n #_01B959: BNE .next\n\n; ---------------------------------------------------------\n\n #_01B95B: LDA.b $B4\n #_01B95D: CMP.w #$2000\n #_01B960: BNE .more_to_go\n\n #_01B962: INC.w $7E0200\n\n.more_to_go\n #_01B965: PLB\n\n; ---------------------------------------------------------\n\n#EXIT_01B966:\n #_01B966: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadObjectAttribute", + "code": "Underworld_LoadObjectAttribute:\n #_01B967: REP #$30\n\n #_01B969: LDX.w $0432\n #_01B96C: BEQ .no_star_tiles\n\n #_01B96E: LDY.w #$0000\n #_01B971: LDA.w #$3B3B ; TILETYPE 3B\n\n.next_star_tile\n #_01B974: LDX.w $06A0,Y\n\n #_01B977: STA.l $7F2000,X\n #_01B97B: STA.l $7F2040,X\n\n #_01B97F: INY\n #_01B980: INY\n #_01B981: CPY.w $0432\n #_01B984: BNE .next_star_tile\n\n; ---------------------------------------------------------\n\n.no_star_tiles\n #_01B986: LDA.w #$3030 ; TILETYPE 30\n #_01B989: STA.b $00\n\n #_01B98B: LDY.w #$0000\n\n #_01B98E: LDX.w $0438\n #_01B991: BEQ .no_intraroom_stairs_up\n\n.next_intraroom_stairs_up\n #_01B993: LDX.w $06B0,Y\n\n #_01B996: LDA.w #$0000 ; TILETYPE 00\n #_01B999: STA.l $7F2081,X\n\n #_01B99D: LDA.w #$2626 ; TILETYPE 26\n #_01B9A0: STA.l $7F2001,X\n\n #_01B9A4: LDA.b $00\n #_01B9A6: STA.l $7F2041,X\n\n #_01B9AA: CLC\n #_01B9AB: ADC.w #$0101\n #_01B9AE: STA.b $00\n\n #_01B9B0: INY\n #_01B9B1: INY\n #_01B9B2: CPY.w $0438\n #_01B9B5: BNE .next_intraroom_stairs_up\n\n; ---------------------------------------------------------\n\n.no_intraroom_stairs_up\n #_01B9B7: CPY.w $047E\n #_01B9BA: BEQ .no_spiral_stairs_up_a\n\n.next_spiral_stairs_up_a\n #_01B9BC: LDX.w $06B0,Y\n\n #_01B9BF: LDA.w #$5E5E ; TILETYPE 5E\n #_01B9C2: STA.l $7F2001,X\n #_01B9C6: STA.l $7F2081,X\n #_01B9CA: STA.l $7F20C1,X\n\n #_01B9CE: LDA.b $00\n #_01B9D0: STA.l $7F2041,X\n\n #_01B9D4: CLC\n #_01B9D5: ADC.w #$0101\n #_01B9D8: STA.b $00\n\n #_01B9DA: INY\n #_01B9DB: INY\n #_01B9DC: CPY.w $047E\n #_01B9DF: BNE .next_spiral_stairs_up_a\n\n; ---------------------------------------------------------\n\n.no_spiral_stairs_up_a\n #_01B9E1: CPY.w $0482\n #_01B9E4: BEQ .no_spiral_stairs_up_b\n\n.next_spiral_stairs_up_b\n #_01B9E6: LDX.w $06B0,Y\n\n #_01B9E9: LDA.w #$5F5F ; TILETYPE 5F\n #_01B9EC: STA.l $7F2001,X\n #_01B9F0: STA.l $7F2081,X\n #_01B9F4: STA.l $7F20C1,X\n\n #_01B9F8: LDA.b $00\n #_01B9FA: STA.l $7F2041,X\n\n #_01B9FE: CLC\n #_01B9FF: ADC.w #$0101\n #_01BA02: STA.b $00\n\n #_01BA04: INY\n #_01BA05: INY\n #_01BA06: CPY.w $0482\n #_01BA09: BNE .next_spiral_stairs_up_b\n\n; ---------------------------------------------------------\n\n.no_spiral_stairs_up_b\n #_01BA0B: CPY.w $04A2\n #_01BA0E: BEQ .no_straight_stairs_up_north\n\n.next_straight_stairs_up_north\n #_01BA10: LDX.w $06B0,Y\n\n #_01BA13: LDA.w #$0000 ; TILETYPE 00\n #_01BA16: STA.l $7F2081,X\n #_01BA1A: STA.l $7F20C1,X\n\n #_01BA1E: LDA.w #$3838 ; TILETYPE 38\n #_01BA21: STA.l $7F2001,X\n\n #_01BA25: LDA.b $00\n #_01BA27: STA.l $7F2041,X\n\n #_01BA2B: CLC\n #_01BA2C: ADC.w #$0101\n #_01BA2F: STA.b $00\n\n #_01BA31: INY\n #_01BA32: INY\n #_01BA33: CPY.w $04A2\n #_01BA36: BNE .next_straight_stairs_up_north\n\n; ---------------------------------------------------------\n\n.no_straight_stairs_up_north\n #_01BA38: CPY.w $04A4\n #_01BA3B: BEQ .no_straight_stairs_up_south\n\n.next_straight_stairs_up_south\n #_01BA3D: LDX.w $06B0,Y\n\n #_01BA40: LDA.w #$0000 ; TILETYPE 00\n #_01BA43: STA.l $7F2001,X\n #_01BA47: STA.l $7F2041,X\n\n #_01BA4B: LDA.w #$3939 ; TILETYPE 39\n #_01BA4E: STA.l $7F20C1,X\n\n #_01BA52: LDA.b $00\n #_01BA54: STA.l $7F2081,X\n\n #_01BA58: CLC\n #_01BA59: ADC.w #$0101\n #_01BA5C: STA.b $00\n\n #_01BA5E: INY\n #_01BA5F: INY\n #_01BA60: CPY.w $04A4\n #_01BA63: BNE .next_straight_stairs_up_south\n\n; ---------------------------------------------------------\n\n.no_straight_stairs_up_south\n #_01BA65: LDA.b $00\n #_01BA67: AND.w #$0707\n #_01BA6A: ORA.w #$3434\n #_01BA6D: STA.b $00\n\n #_01BA6F: CPY.w $043A\n #_01BA72: BEQ .no_intra_stairs_south\n\n.next_intra_stairs_south\n #_01BA74: LDX.w $06B0,Y\n\n #_01BA77: LDA.w #$2626 ; TILETYPE 26\n #_01BA7A: STA.l $7F20C1,X\n\n #_01BA7E: LDA.b $00\n #_01BA80: STA.l $7F2081,X\n\n #_01BA84: CLC\n #_01BA85: ADC.w #$0101\n #_01BA88: STA.b $00\n\n #_01BA8A: INY\n #_01BA8B: INY\n #_01BA8C: CPY.w $043A\n #_01BA8F: BNE .next_intra_stairs_south\n\n; ---------------------------------------------------------\n\n.no_intra_stairs_south\n #_01BA91: CPY.w $0480\n #_01BA94: BEQ .no_spiral_stairs_down_north_a\n\n.next_spiral_stairs_down_north_a\n #_01BA96: LDX.w $06B0,Y\n\n #_01BA99: LDA.w #$5E5E ; TILETYPE 5E\n #_01BA9C: STA.l $7F2001,X\n #_01BAA0: STA.l $7F2081,X\n #_01BAA4: STA.l $7F20C1,X\n\n #_01BAA8: LDA.b $00\n #_01BAAA: STA.l $7F2041,X\n\n #_01BAAE: CLC\n #_01BAAF: ADC.w #$0101\n #_01BAB2: STA.b $00\n\n #_01BAB4: INY\n #_01BAB5: INY\n #_01BAB6: CPY.w $0480\n #_01BAB9: BNE .next_spiral_stairs_down_north_a\n\n; ---------------------------------------------------------\n\n.no_spiral_stairs_down_north_a\n #_01BABB: CPY.w $0484\n #_01BABE: BEQ .no_spiral_stairs_down_north_b\n\n.next_spiral_stairs_down_north_b\n #_01BAC0: LDX.w $06B0,Y\n\n #_01BAC3: LDA.w #$5F5F ; TILETYPE 5F\n #_01BAC6: STA.l $7F2001,X\n #_01BACA: STA.l $7F2081,X\n #_01BACE: STA.l $7F20C1,X\n\n #_01BAD2: LDA.b $00\n #_01BAD4: STA.l $7F2041,X\n\n #_01BAD8: CLC\n #_01BAD9: ADC.w #$0101\n #_01BADC: STA.b $00\n\n #_01BADE: INY\n #_01BADF: INY\n #_01BAE0: CPY.w $0484\n #_01BAE3: BNE .next_spiral_stairs_down_north_b\n\n; ---------------------------------------------------------\n\n.no_spiral_stairs_down_north_b\n #_01BAE5: CPY.w $04A6\n #_01BAE8: BEQ .no_straight_stairs_down_north\n\n.next_straight_stairs_down_north\n #_01BAEA: LDX.w $06B0,Y\n\n #_01BAED: LDA.w #$0000 ; TILETYPE 00\n #_01BAF0: STA.l $7F2081,X\n #_01BAF4: STA.l $7F20C1,X\n\n #_01BAF8: LDA.w #$3838 ; TILETYPE 38\n #_01BAFB: STA.l $7F2001,X\n\n #_01BAFF: LDA.b $00\n #_01BB01: STA.l $7F2041,X\n\n #_01BB05: CLC\n #_01BB06: ADC.w #$0101\n #_01BB09: STA.b $00\n\n #_01BB0B: INY\n #_01BB0C: INY\n #_01BB0D: CPY.w $04A6\n #_01BB10: BNE .next_straight_stairs_down_north\n\n; ---------------------------------------------------------\n\n.no_straight_stairs_down_north\n #_01BB12: CPY.w $04A8\n #_01BB15: BEQ .no_straight_stairs_down_south\n\n.next_straight_stairs_down_south\n #_01BB17: LDX.w $06B0,Y\n\n #_01BB1A: LDA.w #$0000 ; TILETYPE 00\n #_01BB1D: STA.l $7F2001,X\n #_01BB21: STA.l $7F2041,X\n\n #_01BB25: LDA.w #$3939 ; TILETYPE 39\n #_01BB28: STA.l $7F20C1,X\n\n #_01BB2C: LDA.b $00\n #_01BB2E: STA.l $7F2081,X\n\n #_01BB32: CLC\n #_01BB33: ADC.w #$0101\n #_01BB36: STA.b $00\n\n #_01BB38: INY\n #_01BB39: INY\n #_01BB3A: CPY.w $04A8\n #_01BB3D: BNE .next_straight_stairs_down_south\n\n; ---------------------------------------------------------\n\n.no_straight_stairs_down_south\n #_01BB3F: LDY.w #$0000\n #_01BB42: STY.b $02\n\n #_01BB44: LDA.w #$1F1F ; TILETYPE 1F\n #_01BB47: LDX.w $043C\n #_01BB4A: BNE .some_auto_north_multilayer_stairs\n\n #_01BB4C: INC.b $02\n\n #_01BB4E: LDA.w #$1E1E ; TILETYPE 1E\n #_01BB51: LDX.w $043E\n #_01BB54: BNE .some_auto_north_multilayer_stairs\n\n #_01BB56: LDX.w $0440\n #_01BB59: BEQ .none_of_these_water_stairs\n\n #_01BB5B: INC.b $02\n\n #_01BB5D: LDA.w #$1D1D ; TILETYPE 1D\n\n.some_auto_north_multilayer_stairs\n #_01BB60: STA.b $00\n\n #_01BB62: LDA.b $02\n #_01BB64: STA.w $044A\n\n #_01BB67: STX.b $02\n\n; ---------------------------------------------------------\n\n.next_of_these_water_stairs\n #_01BB69: LDX.w $06B8,Y\n\n #_01BB6C: LDA.w #$0002 ; TILETYPE 02, TILETYPE 00\n #_01BB6F: STA.l $7F2000,X\n #_01BB73: STA.l $7F30C0,X\n\n #_01BB77: XBA\n #_01BB78: STA.l $7F2002,X\n #_01BB7C: STA.l $7F30C2,X\n\n #_01BB80: LDA.w #$0001 ; TILETYPE 01, TILETYPE 01\n #_01BB83: STA.l $7F2040,X\n #_01BB87: STA.l $7F3080,X\n\n #_01BB8B: XBA\n #_01BB8C: STA.l $7F2042,X\n #_01BB90: STA.l $7F3082,X\n\n #_01BB94: LDA.b $00\n #_01BB96: STA.l $7F2041,X\n #_01BB9A: STA.l $7F3041,X\n #_01BB9E: STA.l $7F2081,X\n #_01BBA2: STA.l $7F3081,X\n\n #_01BBA6: INY\n #_01BBA7: INY\n #_01BBA8: CPY.b $02\n #_01BBAA: BNE .next_of_these_water_stairs\n\n; ---------------------------------------------------------\n\n.none_of_these_water_stairs\n #_01BBAC: CPY.w $0448\n #_01BBAF: BEQ .no_water_overlay_a\n\n #_01BBB1: LDA.w #$0002\n #_01BBB4: STA.w $044A\n\n.next_water_overlay_a\n #_01BBB7: LDX.w $06B8,Y\n\n #_01BBBA: LDA.w #$0A03 ; TILETYPE 03, TILETYPE 0A\n #_01BBBD: STA.l $7F2000,X\n #_01BBC1: STA.l $7F3000,X\n\n #_01BBC5: XBA\n #_01BBC6: STA.l $7F2002,X\n #_01BBCA: STA.l $7F3002,X\n\n #_01BBCE: LDA.w #$0803 ; TILETYPE 03, TILETYPE 08\n #_01BBD1: STA.l $7F2040,X\n\n #_01BBD5: XBA\n #_01BBD6: STA.l $7F2042,X\n\n #_01BBDA: INY\n #_01BBDB: INY\n #_01BBDC: CPY.w $0448\n #_01BBDF: BNE .next_water_overlay_a\n\n; ---------------------------------------------------------\n\n.no_water_overlay_a\n #_01BBE1: LDY.w #$0000\n #_01BBE4: LDX.w $0442\n #_01BBE7: BEQ .no_water_overlay_a2\n\n #_01BBE9: LDA.w #$0002\n #_01BBEC: STA.w $044A\n\n.next_water_overlay_a2\n #_01BBEF: LDX.w $06B8,Y\n\n #_01BBF2: LDA.w #$0003 ; TILETYPE 00, TILETYPE 03\n #_01BBF5: STA.l $7F2000,X\n\n #_01BBF9: XBA\n #_01BBFA: STA.l $7F2002,X\n\n #_01BBFE: LDA.w #$0A03 ; TILETYPE 03, TILETYPE 0A\n #_01BC01: STA.l $7F3000,X\n\n #_01BC05: XBA\n #_01BC06: STA.l $7F3002,X\n\n #_01BC0A: LDA.w #$0808 ; TILETYPE 08\n #_01BC0D: STA.l $7F2040,X\n #_01BC11: STA.l $7F2042,X\n\n #_01BC15: INY\n #_01BC16: INY\n #_01BC17: CPY.w $0442\n #_01BC1A: BNE .next_water_overlay_a2\n\n; ---------------------------------------------------------\n\n.no_water_overlay_a2\n #_01BC1C: CPY.w $0444\n #_01BC1F: BEQ .no_water_ladders\n\n #_01BC21: LDA.w #$0002\n #_01BC24: STA.w $044A\n\n.next_water_ladder\n #_01BC27: LDX.w $06B8,Y\n\n #_01BC2A: LDA.w #$0003 ; TILETYPE 03, TILETYPE 00\n #_01BC2D: STA.l $7F2000,X\n\n #_01BC31: XBA\n #_01BC32: STA.l $7F2002,X\n\n #_01BC36: LDA.w #$0A03 ; TILETYPE 03, TILETYPE 0A\n #_01BC39: STA.l $7F3000,X\n\n #_01BC3D: XBA\n #_01BC3E: STA.l $7F3002,X\n\n #_01BC42: INY\n #_01BC43: INY\n #_01BC44: CPY.w $0444\n #_01BC47: BNE .next_water_ladder\n\n; ---------------------------------------------------------\n\n.no_water_ladders\n #_01BC49: LDY.w #$0000\n\n #_01BC4C: LDX.w $042C\n #_01BC4F: BEQ .no_manipulables\n\n #_01BC51: LDA.w #$7070 ; TILETYPE 70\n #_01BC54: STA.b $00\n\n.next_manipulable\n #_01BC56: LDA.w $0500,Y\n #_01BC59: AND.w #$00F0\n #_01BC5C: CMP.w #$0030\n #_01BC5F: BEQ .skip_manip\n\n #_01BC61: LDA.w $0540,Y\n #_01BC64: AND.w #$3FFF\n #_01BC67: LSR A\n #_01BC68: TAX\n\n #_01BC69: LDA.b $00\n #_01BC6B: STA.l $7F2000,X\n #_01BC6F: STA.l $7F2040,X\n\n.skip_manip\n #_01BC73: LDA.b $00\n #_01BC75: CLC\n #_01BC76: ADC.w #$0101\n #_01BC79: STA.b $00\n\n #_01BC7B: INY\n #_01BC7C: INY\n #_01BC7D: CPY.w $042C\n #_01BC80: BNE .next_manipulable\n\n; ---------------------------------------------------------\n\n.no_manipulables\n #_01BC82: CPY.w $042E\n #_01BC85: BEQ .no_torches\n\n #_01BC87: STZ.b $04\n\n #_01BC89: LDA.w #$C0C0 ; TILETYPE C0\n #_01BC8C: STA.b $00\n\n.next_torch\n #_01BC8E: LDA.w $0540,Y\n #_01BC91: AND.w #$3FFF\n #_01BC94: LSR A\n #_01BC95: TAX\n\n #_01BC96: LDA.b $00\n #_01BC98: STA.l $7F2000,X\n #_01BC9C: STA.l $7F2040,X\n\n #_01BCA0: AND.w #$EFEF\n #_01BCA3: CLC\n #_01BCA4: ADC.w #$0101\n #_01BCA7: STA.b $00\n\n #_01BCA9: INY\n #_01BCAA: INY\n #_01BCAB: CPY.w $042E\n #_01BCAE: BNE .next_torch\n\n #_01BCB0: LDA.b $04\n #_01BCB2: STA.w $042E\n\n; ---------------------------------------------------------\n\n.no_torches\n #_01BCB5: LDA.w #$5858 ; TILETYPE 58\n #_01BCB8: STA.b $00\n\n #_01BCBA: LDY.w #$0000\n\n #_01BCBD: LDX.w $0496\n #_01BCC0: BEQ .no_chest\n\n; ---------------------------------------------------------\n\n #_01BCC2: LDA.b $AE\n #_01BCC4: AND.w #$00FF\n #_01BCC7: CMP.w #$0027\n #_01BCCA: BEQ .hidden_chests\n\n #_01BCCC: CMP.w #$003C\n #_01BCCF: BEQ .hidden_chests\n\n #_01BCD1: CMP.w #$003E\n #_01BCD4: BEQ .hidden_chests\n\n #_01BCD6: CMP.w #$0029\n #_01BCD9: BCC .check_tag_2\n\n #_01BCDB: CMP.w #$0033\n #_01BCDE: BCC .hidden_chests\n\n; ---------------------------------------------------------\n\n.check_tag_2\n #_01BCE0: LDA.b $AF\n #_01BCE2: AND.w #$00FF\n #_01BCE5: CMP.w #$0027\n #_01BCE8: BEQ .hidden_chests\n\n #_01BCEA: CMP.w #$003C\n #_01BCED: BEQ .hidden_chests\n\n #_01BCEF: CMP.w #$003E\n #_01BCF2: BEQ .hidden_chests\n\n #_01BCF4: CMP.w #$0029\n #_01BCF7: BCC .no_hidden_chests\n\n #_01BCF9: CMP.w #$0033\n #_01BCFC: BCC .hidden_chests\n\n.no_hidden_chests\n #_01BCFE: JSR Underworld_SetChestAttributes\n\n; ---------------------------------------------------------\n\n.no_chest\n #_01BD01: CPY.w $0498\n #_01BD04: BEQ .hidden_chests\n\n.next_big_key_lock\n #_01BD06: LDA.w $06E0,Y\n #_01BD09: ORA.w #$8000\n #_01BD0C: STA.w $06E0,Y\n\n #_01BD0F: AND.w #$7FFF\n #_01BD12: LSR A\n #_01BD13: TAX\n\n #_01BD14: LDA.b $00\n #_01BD16: STA.l $7F2000,X\n #_01BD1A: STA.l $7F2040,X\n\n #_01BD1E: CLC\n #_01BD1F: ADC.w #$0101\n #_01BD22: STA.b $00\n\n #_01BD24: INY\n #_01BD25: INY\n #_01BD26: CPY.w $0498\n #_01BD29: BNE .next_big_key_lock\n\n; ---------------------------------------------------------\n\n.hidden_chests\n #_01BD2B: LDY.w #$0000\n #_01BD2E: STY.b $02\n\n #_01BD30: LDA.w #$3F3F ; TILETYPE 3F\n #_01BD33: LDX.w $049A\n #_01BD36: BNE .some_auto_south_stairs\n\n #_01BD38: INC.b $02\n\n #_01BD3A: LDA.w #$3E3E ; TILETYPE 3E\n #_01BD3D: LDX.w $049C\n #_01BD40: BNE .some_auto_south_stairs\n\n #_01BD42: LDX.w $049E\n #_01BD45: BEQ .no_auto_south_stairs\n\n #_01BD47: INC.b $02\n\n #_01BD49: LDA.w #$3D3D ; TILETYPE 3D\n\n.some_auto_south_stairs\n #_01BD4C: STA.b $00\n\n #_01BD4E: LDA.b $02\n #_01BD50: STA.w $044A\n\n #_01BD53: STX.b $02\n\n.next_auto_south_stairs\n #_01BD55: LDX.w $06EC,Y\n\n #_01BD58: LDA.w #$0002 ; TILETYPE 02, TILETYPE 00\n #_01BD5B: STA.l $7F3000,X\n #_01BD5F: STA.l $7F20C0,X\n\n #_01BD63: LDA.w #$0001 ; TILETYPE 01, TILETYPE 00\n #_01BD66: STA.l $7F3040,X\n #_01BD6A: STA.l $7F2080,X\n\n #_01BD6E: LDA.w #$0200 ; TILETYPE 00, TILETYPE 02\n #_01BD71: STA.l $7F3002,X\n #_01BD75: STA.l $7F20C2,X\n\n #_01BD79: LDA.w #$0100 ; TILETYPE 00, TILETYPE 01\n #_01BD7C: STA.l $7F3042,X\n #_01BD80: STA.l $7F2082,X\n\n #_01BD84: LDA.b $00\n #_01BD86: STA.l $7F2041,X\n #_01BD8A: STA.l $7F3041,X\n #_01BD8E: STA.l $7F2081,X\n #_01BD92: STA.l $7F3081,X\n\n #_01BD96: INY\n #_01BD97: INY\n #_01BD98: CPY.b $02\n #_01BD9A: BNE .next_auto_south_stairs\n\n; ---------------------------------------------------------\n\n.no_auto_south_stairs\n #_01BD9C: LDY.w #$0000\n\n #_01BD9F: LDX.w $04AE\n #_01BDA2: BEQ .no_south_merged_auto_stairs\n\n #_01BDA4: LDA.w #$0002\n #_01BDA7: STA.w $044A\n\n.next_south_merged_auto_stairs\n #_01BDAA: LDX.w $06EC,Y\n\n #_01BDAD: LDA.w #$0A03 ; TILETYPE 03, TILETYPE 0A\n #_01BDB0: STA.l $7F30C0,X\n\n #_01BDB4: XBA\n #_01BDB5: STA.l $7F30C2,X\n\n #_01BDB9: LDA.w #$0003 ; TILETYPE 03, TILETYPE 00\n #_01BDBC: STA.l $7F20C0,X\n\n #_01BDC0: XBA\n #_01BDC1: STA.l $7F20C2,X\n\n #_01BDC5: LDA.w #$0808 ; TILETYPE 08\n #_01BDC8: STA.l $7F2080,X\n #_01BDCC: STA.l $7F2082,X\n\n #_01BDD0: INY\n #_01BDD1: INY\n #_01BDD2: CPY.w $04AE\n #_01BDD5: BNE .next_south_merged_auto_stairs\n\n; ---------------------------------------------------------\n\n.no_south_merged_auto_stairs\n #_01BDD7: INC.w $0200\n\n #_01BDDA: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_SetChestAttributes", + "code": "Underworld_SetChestAttributes:\n.next\n #_01BDDB: LDA.w $06E0,Y\n #_01BDDE: BEQ .to_next\n\n #_01BDE0: AND.w #$7FFF\n #_01BDE3: LSR A\n #_01BDE4: TAX\n\n #_01BDE5: LDA.b $00\n #_01BDE7: STA.l $7F2000,X\n #_01BDEB: STA.l $7F2040,X\n\n #_01BDEF: LDA.w $06E0,Y\n #_01BDF2: ASL A\n #_01BDF3: BCC .to_next\n\n #_01BDF5: LSR A\n #_01BDF6: STA.w $06E0,Y\n\n #_01BDF9: LDA.b $00\n #_01BDFB: STA.l $7F2042,X\n #_01BDFF: STA.l $7F2080,X\n #_01BE03: STA.l $7F2082,X\n\n.to_next\n #_01BE07: LDA.b $00\n #_01BE09: CLC\n #_01BE0A: ADC.w #$0101\n #_01BE0D: STA.b $00\n\n #_01BE0F: INY\n #_01BE10: INY\n #_01BE11: CPY.w $0496\n #_01BE14: BNE .next\n\n #_01BE16: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadDoorAttribute", + "code": "Underworld_LoadDoorAttribute:\n #_01BE17: REP #$30\n\n #_01BE19: LDY.w #$0000\n\n.next\n #_01BE1C: LDA.w $19A0,Y\n #_01BE1F: BEQ .skip\n\n #_01BE21: JSR Underworld_LoadSingleDoorAttribute\n\n.skip\n #_01BE24: INY\n #_01BE25: INY\n #_01BE26: CPY.w #$0020\n #_01BE29: BNE .next\n\n; ---------------------------------------------------------\n\n #_01BE2B: JSR Underworld_LoadSingleDoorTileType\n #_01BE2E: JSR ChangeDoorToSwitch\n\n #_01BE31: INC.w $0200\n\n #_01BE34: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadSingleDoorAttribute", + "code": "Underworld_LoadSingleDoorAttribute:\n #_01BE35: LDA.w $1980,Y\n #_01BE38: AND.w #$00FE\n #_01BE3B: STA.b $02\n\n #_01BE3D: BEQ .apply_doorway\n\n #_01BE3F: CMP.w #$0006\n #_01BE42: BEQ .apply_doorway\n\n #_01BE44: CMP.w #$0012\n #_01BE47: BEQ .apply_doorway\n\n #_01BE49: CMP.w #$000A\n #_01BE4C: BEQ .apply_doorway\n\n #_01BE4E: CMP.w #$000C\n #_01BE51: BEQ .exit_or_lower_layer\n\n #_01BE53: CMP.w #$000E\n #_01BE56: BEQ .apply_doorway\n\n #_01BE58: CMP.w #$0010\n #_01BE5B: BEQ .exit_or_lower_layer\n\n #_01BE5D: CMP.w #$0004\n #_01BE60: BEQ .exit_or_lower_layer\n\n #_01BE62: CMP.w #$0002\n #_01BE65: BEQ .exit_or_lower_layer\n\n #_01BE67: CMP.w #$0008\n #_01BE6A: BNE .not_exit_or_lower_layer\n\n.exit_or_lower_layer\n #_01BE6C: JMP.w AddFullLongDoorDoorwayProps\n\n.not_exit_or_lower_layer\n #_01BE6F: CMP.w #$0030\n #_01BE72: BNE .not_exploding_wall\n\n #_01BE74: JMP.w EXIT_01BFB2\n\n.not_exploding_wall\n #_01BE77: CMP.w #$0040\n #_01BE7A: BCC .normalish_doors\n\n #_01BE7C: JMP.w AddDoorwayPropsForWeirdos\n\n.normalish_doors\n #_01BE7F: CMP.w #$0018\n #_01BE82: BEQ .shutter_door\n\n #_01BE84: CMP.w #$0044\n #_01BE87: BEQ .shutter_door\n\n #_01BE89: TYA\n #_01BE8A: AND.w #$000F\n\n #_01BE8D: BRA .check_door_mask\n\n.shutter_door\n #_01BE8F: TYA\n #_01BE90: AND.w #$00FF\n\n.check_door_mask\n #_01BE93: TAX\n\n #_01BE94: LDA.w $068C\n #_01BE97: AND.w DungeonMask,X\n #_01BE9A: BNE .apply_doorway\n\n #_01BE9C: SEP #$20\n\n #_01BE9E: TYA\n #_01BE9F: LSR A\n #_01BEA0: ORA.b #$F0\n #_01BEA2: STA.b $00\n #_01BEA4: STA.b $01\n\n #_01BEA6: REP #$20\n\n #_01BEA8: LDA.w $19A0,Y\n #_01BEAB: LSR A\n #_01BEAC: TAX\n\n #_01BEAD: LDA.b $00\n #_01BEAF: STA.l $7F2041,X\n #_01BEB3: STA.l $7F2081,X\n\n; ---------------------------------------------------------\n\n#EXIT_01BEB7:\n #_01BEB7: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01BFB3", + "code": "UNREACHABLE_01BFB3:\n #_01BFB3: TYA\n #_01BFB4: AND.w #$000F\n #_01BFB7: TAX\n\n #_01BFB8: LDA.w $068C\n #_01BFBB: AND.w DungeonMask,X\n #_01BFBE: BNE Underworld_DoorLoadBlastWallAttribute\n\n #_01BFC0: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_DoorLoadBlastWallAttribute", + "code": "Underworld_DoorLoadBlastWallAttribute:\n #_01BFC1: LDA.w $19C0,Y\n #_01BFC4: AND.w #$0002\n #_01BFC7: BNE .horizontal\n\n; ---------------------------------------------------------\n\n.vertical\n #_01BFC9: LDA.w $19A0,Y\n #_01BFCC: LSR A\n #_01BFCD: TAX\n\n #_01BFCE: LDA.w #$000C\n #_01BFD1: STA.b $00\n\n.vertical_next\n #_01BFD3: LDA.w #$0102 ; TILETYPE 02, TILETYPE 01\n #_01BFD6: STA.l $7F2000,X\n\n #_01BFDA: LDA.w #$0000 ; TILETYPE 00\n #_01BFDD: STA.l $7F2002,X\n #_01BFE1: STA.l $7F2004,X\n #_01BFE5: STA.l $7F2006,X\n #_01BFE9: STA.l $7F2008,X\n\n #_01BFED: STA.l $7F200A,X\n #_01BFF1: STA.l $7F200C,X\n #_01BFF5: STA.l $7F200E,X\n #_01BFF9: STA.l $7F2010,X\n\n #_01BFFD: STA.l $7F2012,X\n\n #_01C001: LDA.w #$0201 ; TILETYPE 01, TILETYPE 02\n #_01C004: STA.l $7F2014,X\n\n #_01C008: TXA\n #_01C009: CLC\n #_01C00A: ADC.w #$0040\n #_01C00D: TAX\n\n #_01C00E: DEC.b $00\n #_01C010: BNE .vertical_next\n\n #_01C012: RTS", + "file": "bank_01.asm" + }, + { + "name": "AddDoorwayPropsForWeirdos", + "code": "AddDoorwayPropsForWeirdos:\n #_01C085: CMP.w #$0040\n #_01C088: BEQ AddFullLongDoorDoorwayProps\n\n #_01C08A: CMP.w #$0046\n #_01C08D: BEQ AddFullLongDoorDoorwayProps\n\n #_01C08F: TYA\n #_01C090: AND.w #$00FF\n #_01C093: TAX\n\n #_01C094: LDA.w $068C\n #_01C097: AND.w DungeonMask,X\n #_01C09A: BNE AddFullLongDoorDoorwayProps\n\n #_01C09C: SEP #$20\n\n #_01C09E: TYA\n #_01C09F: LSR A\n #_01C0A0: ORA.b #$F0\n #_01C0A2: STA.b $00\n #_01C0A4: STA.b $01\n\n #_01C0A6: REP #$20\n\n #_01C0A8: LDA.w $19A0,Y\n #_01C0AB: LSR A\n #_01C0AC: TAX\n\n #_01C0AD: LDA.b $00\n #_01C0AF: STA.l $7F2041,X\n #_01C0B3: STA.l $7F2081,X\n\n #_01C0B7: RTS", + "file": "bank_01.asm" + }, + { + "name": "AddFullLongDoorDoorwayProps", + "code": "AddFullLongDoorDoorwayProps:\n #_01C0B8: LDX.b $02\n\n #_01C0BA: LDA.w DoorwayTileProperties,X\n #_01C0BD: STA.b $00\n\n #_01C0BF: LDA.w $19C0,Y\n #_01C0C2: AND.w #$0003\n #_01C0C5: BNE .not_north_door\n\n #_01C0C7: LDA.w $19A0,Y\n #_01C0CA: LSR A\n #_01C0CB: AND.w #$783F\n #_01C0CE: TAX\n\n #_01C0CF: LDA.b $00\n #_01C0D1: STA.l $7F2001,X\n #_01C0D5: STA.l $7F2041,X\n #_01C0D9: STA.l $7F2081,X\n #_01C0DD: STA.l $7F20C1,X\n\n #_01C0E1: STA.l $7F2101,X\n #_01C0E5: STA.l $7F2141,X\n #_01C0E9: STA.l $7F2181,X\n #_01C0ED: STA.l $7F21C1,X\n\n #_01C0F1: STA.l $7F2201,X\n #_01C0F5: STA.l $7F2241,X\n\n #_01C0F9: RTS", + "file": "bank_01.asm" + }, + { + "name": "ChangeDoorToSwitch", + "code": "ChangeDoorToSwitch:\n #_01C1BA: REP #$30\n\n #_01C1BC: LDA.w $04B0\n #_01C1BF: BEQ .exit\n\n #_01C1C1: LDA.w $04B0\n #_01C1C4: AND.w #$3FFF\n #_01C1C7: LSR A\n #_01C1C8: TAX\n\n #_01C1C9: LDY.w #$0004\n\n #_01C1CC: LDA.w $04B0\n #_01C1CF: ASL A\n #_01C1D0: BCC .draw_5\n\n #_01C1D2: INY\n\n.draw_5\n #_01C1D3: LDA.w $0402\n #_01C1D6: AND.w #$1000\n #_01C1D9: BEQ .next_b\n\n; ---------------------------------------------------------\n\n.next_a\n #_01C1DB: LDA.w #$0101 ; TILETYPE 01\n #_01C1DE: STA.l $7F2000,X\n #_01C1E2: STA.l $7F2280,X\n\n #_01C1E6: LDA.w #$0000 ; TILETYPE 00\n #_01C1E9: STA.l $7F2080,X\n #_01C1ED: STA.l $7F2100,X\n #_01C1F1: STA.l $7F2180,X\n #_01C1F5: STA.l $7F2200,X\n\n #_01C1F9: INX\n #_01C1FA: INX\n\n #_01C1FB: DEY\n #_01C1FC: BPL .next_a\n\n #_01C1FE: SEP #$30\n\n #_01C200: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_InitializePegAttribute", + "code": "Underworld_InitializePegAttribute:\n #_01C21C: INC.w $0200\n\n #_01C21F: LDA.l $7EC172\n #_01C223: BEQ .exit\n\n #_01C225: JSL Underworld_FlipCrystalPegAttribute\n\n.exit\n #_01C229: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FlipCrystalPegAttribute", + "code": "Underworld_FlipCrystalPegAttribute:\n #_01C22A: REP #$10\n\n #_01C22C: LDX.w #$07FF\n\n.next_super\n #_01C22F: LDA.l $7F2000,X\n #_01C233: CMP.b #$66 ; TILETYPE 66\n #_01C235: BEQ .do_toggle_a\n\n #_01C237: CMP.b #$67 ; TILETYPE 67\n #_01C239: BNE .no_toggle_a\n\n.do_toggle_a\n #_01C23B: EOR.b #$01\n #_01C23D: STA.l $7F2000,X\n\n; ---------------------------------------------------------\n\n.no_toggle_a\n #_01C241: LDA.l $7F2800,X\n #_01C245: CMP.b #$66 ; TILETYPE 66\n #_01C247: BEQ .do_toggle_b\n\n #_01C249: CMP.b #$67 ; TILETYPE 67\n #_01C24B: BNE .no_toggle_b\n\n.do_toggle_b\n #_01C24D: EOR.b #$01\n #_01C24F: STA.l $7F2800,X\n\n; ---------------------------------------------------------\n\n.no_toggle_b\n #_01C253: LDA.l $7F3000,X\n #_01C257: CMP.b #$66 ; TILETYPE 66\n #_01C259: BEQ .do_toggle_c\n\n #_01C25B: CMP.b #$67 ; TILETYPE 67\n #_01C25D: BNE .no_toggle_c\n\n.do_toggle_c\n #_01C25F: EOR.b #$01\n #_01C261: STA.l $7F3000,X\n\n; ---------------------------------------------------------\n\n.no_toggle_c\n #_01C265: LDA.l $7F3800,X\n #_01C269: CMP.b #$66 ; TILETYPE 66\n #_01C26B: BEQ .do_toggle_d\n\n #_01C26D: CMP.b #$67 ; TILETYPE 67\n #_01C26F: BNE .no_toggle_d\n\n.do_toggle_d\n #_01C271: EOR.b #$01\n #_01C273: STA.l $7F3800,X\n\n; ---------------------------------------------------------\n\n.no_toggle_d\n #_01C277: DEX\n #_01C278: BPL .next_super\n\n #_01C27A: SEP #$10\n\n #_01C27C: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_HandleRoomTags", + "code": "Underworld_HandleRoomTags:\n #_01C2FD: LDA.w $04C7\n #_01C300: BNE .ignore_tags\n\n #_01C302: SEP #$30\n\n #_01C304: JSR Underworld_DetectStaircase\n\n #_01C307: STZ.b $0E\n\n #_01C309: LDA.b $AE\n #_01C30B: ASL A\n #_01C30C: TAX\n\n #_01C30D: JSR (.vectors,X)\n\n #_01C310: LDA.b #$01\n #_01C312: STA.b $0E\n\n #_01C314: LDA.b $AF\n #_01C316: ASL A\n #_01C317: TAX\n\n #_01C318: JSR (.vectors,X)\n\n.ignore_tags\n #_01C31B: STZ.w $04C7\n\n #_01C31E: RTL", + "file": "bank_01.asm" + }, + { + "name": "LayerOfDestination", + "code": "LayerOfDestination:\n.for_0476\n #_01C31F: db $00, $01, $01\n\n.for_EE\n #_01C322: db $00, $00, $01\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_DirtyExit", + "code": "RoomTag_DirtyExit:\n #_01C325: PLA\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_FastExit", + "code": "RoomTag_FastExit:\n #_01C326: SEP #$30\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Nothing", + "code": "RoomTag_Nothing:\n #_01C328: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_DetectStaircase", + "code": "Underworld_DetectStaircase:\n #_01C329: REP #$20\n\n #_01C32B: LDA.b $67\n #_01C32D: AND.w #$000C\n #_01C330: BEQ RoomTag_FastExit\n\n #_01C332: STA.b $02\n\n #_01C334: TAY\n\n #_01C335: LDA.b $20\n #_01C337: CLC\n #_01C338: ADC.w DetectStaircase_offset_y,Y\n #_01C33B: AND.w #$01F8\n\n #_01C33E: ASL A\n #_01C33F: ASL A\n #_01C340: ASL A\n #_01C341: STA.b $00\n\n #_01C343: LDA.b $22\n #_01C345: AND.w #$01F8\n #_01C348: LSR A\n #_01C349: LSR A\n #_01C34A: LSR A\n #_01C34B: ORA.b $00\n\n #_01C34D: LDX.b $EE\n #_01C34F: BEQ .upper_layer\n\n #_01C351: ORA.w #$1000\n\n.upper_layer\n #_01C354: REP #$10\n\n #_01C356: TAX\n\n; ---------------------------------------------------------\n\n #_01C357: PHX\n\n #_01C358: LDY.b $02\n #_01C35A: CPY.w #$0004\n #_01C35D: BNE .going_up\n\n #_01C35F: CLC\n #_01C360: ADC.w #$0080\n #_01C363: TAX\n\n.going_up\n #_01C364: SEP #$20\n\n #_01C366: LDA.l $7F2000,X\n\n #_01C36A: PLX\n\n #_01C36B: CMP.b #$26 ; TILETYPE 26\n #_01C36D: BEQ .stairs_edge\n\n #_01C36F: CMP.b #$38 ; TILETYPE 38\n #_01C371: BEQ .stairs_edge\n\n #_01C373: CMP.b #$39 ; TILETYPE 39\n #_01C375: BEQ .stairs_edge\n\n #_01C377: CMP.b #$5E ; TILETYPE 5E\n #_01C379: BEQ .stairs_edge\n\n #_01C37B: CMP.b #$5F ; TILETYPE 5F\n #_01C37D: BNE RoomTag_FastExit\n\n; ---------------------------------------------------------\n\n.stairs_edge\n #_01C37F: PHA\n\n #_01C380: STA.b $0E\n\n #_01C382: LDA.l $7F2040,X\n #_01C386: TAY\n\n #_01C387: AND.b #$F8\n #_01C389: CMP.b #$30\n #_01C38B: BNE RoomTag_DirtyExit\n\n #_01C38D: LDA.w $0308\n #_01C390: BPL .not_carrying\n\n #_01C392: PLA\n\n #_01C393: REP #$20\n\n #_01C395: LDA.w $0FC4\n #_01C398: STA.b $20\n\n #_01C39A: BRA RoomTag_FastExit\n\n; ---------------------------------------------------------\n\n.not_carrying\n #_01C39C: REP #$20\n\n #_01C39E: STY.w $0462\n\n #_01C3A1: LDA.b $A0\n #_01C3A3: STA.b $A2\n\n #_01C3A5: SEP #$30\n\n #_01C3A7: JSL Underworld_FlagRoomData_Quadrants\n\n #_01C3AB: SEP #$30\n\n #_01C3AD: LDA.b $0E\n #_01C3AF: CMP.b #$38 ; TILETYPE 38\n #_01C3B1: BEQ .is_edge\n\n #_01C3B3: CMP.b #$39 ; TILETYPE 39\n #_01C3B5: BNE .continue\n\n.is_edge\n #_01C3B7: LDX.b #$20\n #_01C3B9: STX.w $0464\n\n #_01C3BC: CMP.b #$38 ; TILETYPE 38\n #_01C3BE: BNE .not_edge38\n\n #_01C3C0: JSL HandleEdgeTransitionMovementNorth\n #_01C3C4: BRA .continue\n\n.not_edge38\n #_01C3C6: JSL HandleEdgeTransitionMovementSouth\n\n; ---------------------------------------------------------\n\n.continue\n #_01C3CA: LDA.w $0462\n #_01C3CD: AND.b #$03\n #_01C3CF: TAX\n\n #_01C3D0: LDA.l $7EC001,X\n #_01C3D4: STA.b $A0\n\n #_01C3D6: LDA.w $063D,X\n #_01C3D9: STA.w $048A\n\n #_01C3DC: LDX.b #$02\n\n #_01C3DE: LDA.b $EE\n #_01C3E0: BNE .set_layer\n\n #_01C3E2: LDX.b #$00\n\n #_01C3E4: LDA.w $0476\n #_01C3E7: BEQ .set_layer\n\n #_01C3E9: LDX.b #$02\n\n.set_layer\n #_01C3EB: STX.w $0492\n\n #_01C3EE: STZ.b $B0\n\n #_01C3F0: STZ.b $48\n\n #_01C3F2: STZ.b $3D\n #_01C3F4: STZ.b $3A\n #_01C3F6: STZ.b $3C\n\n; ---------------------------------------------------------\n\n #_01C3F8: LDA.b $50\n #_01C3FA: AND.b #$FE\n #_01C3FC: STA.b $50\n\n #_01C3FE: LDX.b #$06\n\n #_01C400: PLA\n\n #_01C401: CMP.b #$26 ; TILETYPE 26\n #_01C403: BEQ .set_submodule_and_sfx\n\n #_01C405: LDX.b #$12\n #_01C407: CMP.b #$38 ; TILETYPE 38\n #_01C409: BEQ .set_submodule_only\n\n #_01C40B: LDX.b #$13\n #_01C40D: CMP.b #$39 ; TILETYPE 39\n #_01C40F: BEQ .set_submodule_only\n\n; ---------------------------------------------------------\n\n #_01C411: JSL Link_AnimateIntraStairClimbAndSFX\n\n #_01C415: LDX.b #$0E\n #_01C417: STX.b $11\n\n #_01C419: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_NorthWestTrigger", + "code": "RoomTag_NorthWestTrigger:\n #_01C432: LDA.b $23\n #_01C434: LSR A\n #_01C435: BCC RoomTag_NorthTrigger\n\n #_01C437: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_NorthEastTrigger", + "code": "RoomTag_NorthEastTrigger:\n #_01C438: LDA.b $23\n #_01C43A: LSR A\n #_01C43B: BCS RoomTag_NorthTrigger\n\n #_01C43D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_SouthWestTrigger", + "code": "RoomTag_SouthWestTrigger:\n #_01C43E: LDA.b $23\n #_01C440: LSR A\n #_01C441: BCC RoomTag_SouthTrigger\n\n #_01C443: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_SouthEastTrigger", + "code": "RoomTag_SouthEastTrigger:\n #_01C444: LDA.b $23\n #_01C446: LSR A\n #_01C447: BCS RoomTag_SouthTrigger\n\n #_01C449: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_WestTrigger", + "code": "RoomTag_WestTrigger:\n #_01C44A: LDA.b $23\n #_01C44C: LSR A\n #_01C44D: BCC RoomTag_QuadrantTrigger\n\n #_01C44F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_EastTrigger", + "code": "RoomTag_EastTrigger:\n #_01C450: LDA.b $23\n #_01C452: LSR A\n #_01C453: BCS RoomTag_QuadrantTrigger\n\n #_01C455: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_NorthTrigger", + "code": "RoomTag_NorthTrigger:\n #_01C456: LDA.b $21\n #_01C458: LSR A\n #_01C459: BCC RoomTag_QuadrantTrigger\n\n; ---------------------------------------------------------\n\n#EXIT_01C45B:\n #_01C45B: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_SouthTrigger", + "code": "RoomTag_SouthTrigger:\n #_01C45C: LDA.b $21\n #_01C45E: LSR A\n #_01C45F: BCC EXIT_01C45B\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_QuadrantTrigger", + "code": "RoomTag_QuadrantTrigger:\n #_01C461: LDX.b $0E\n\n #_01C463: LDA.b $AE,X\n #_01C465: CMP.b #$0B\n #_01C467: BCC RoomTag_OperateKillDoor\n\n #_01C469: CMP.b #$29\n #_01C46B: BCC RoomTag_OperateBlockDoor\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateKillChest", + "code": "RoomTag_OperateKillChest:\n #_01C46D: JSL CheckIfScreenIsClear\n #_01C471: BCC .exit\n\n #_01C473: JSR RoomTag_OperateChestReveal\n\n.exit\n #_01C476: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateBlockDoor", + "code": "RoomTag_OperateBlockDoor:\n #_01C477: LDA.w $0641\n #_01C47A: EOR.b #$01\n #_01C47C: CMP.w $0468\n #_01C47F: BEQ .exit\n\n #_01C481: STA.w $0468\n\n #_01C484: LDA.b #$25 ; SFX3.25\n #_01C486: STA.w $012F\n\n #_01C489: LDA.b #$05\n #_01C48B: STA.b $11\n\n #_01C48D: REP #$20\n\n #_01C48F: STZ.w $068E\n #_01C492: STZ.w $0690\n\n.exit\n #_01C495: SEP #$30\n\n #_01C497: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateKillDoor", + "code": "RoomTag_OperateKillDoor:\n #_01C498: JSL CheckIfScreenIsClear\n #_01C49C: BCC .exit\n\n; =========================================================\n\n#RoomTag_OperateShutters:\n #_01C49E: REP #$30\n\n #_01C4A0: LDX.w #$0000\n #_01C4A3: CPX.w $0468\n #_01C4A6: BEQ .exit\n\n #_01C4A8: STZ.w $0468\n\n #_01C4AB: STZ.w $068E\n #_01C4AE: STZ.w $0690\n\n #_01C4B1: SEP #$30\n\n #_01C4B3: LDA.b #$1B ; SFX3.1B\n #_01C4B5: STA.w $012F\n\n #_01C4B8: LDA.b #$05\n #_01C4BA: STA.b $11\n\n.exit\n #_01C4BC: SEP #$30\n\n #_01C4BE: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_RoomTrigger", + "code": "RoomTag_RoomTrigger:\n #_01C4BF: LDX.b $0E\n\n #_01C4C1: LDA.b $AE,X\n #_01C4C3: CMP.b #$0A\n #_01C4C5: BEQ RoomTag_FullRoomKillCheck\n\n #_01C4C7: JSL CheckIfRoomIsClear\n #_01C4CB: BCC EXIT_01C4D0\n\n #_01C4CD: JSR RoomTag_OperateChestReveal\n\n; ---------------------------------------------------------\n\n#EXIT_01C4D0:\n #_01C4D0: SEP #$30\n\n #_01C4D2: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_FullRoomKillCheck", + "code": "RoomTag_FullRoomKillCheck:\n #_01C4D3: JSL CheckIfRoomIsClear\n #_01C4D7: BCC EXIT_01C4D0\n #_01C4D9: BCS RoomTag_OperateShutters\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_RekillableBoss", + "code": "RoomTag_RekillableBoss:\n #_01C4DB: JSL CheckIfRoomIsClear\n #_01C4DF: BCC EXIT_01C4D0\n\n #_01C4E1: STZ.w $0FFC\n\n #_01C4E4: STZ.b $AF\n\n #_01C4E6: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_PullSwitchDoor", + "code": "RoomTag_PullSwitchDoor:\n #_01C4E7: LDA.w $0642\n #_01C4EA: BEQ .exit\n\n #_01C4EC: REP #$30\n\n #_01C4EE: LDX.w #$0000\n #_01C4F1: CPX.w $0468\n #_01C4F4: BEQ .exit\n\n #_01C4F6: STX.w $0468\n\n #_01C4F9: STZ.w $068E\n #_01C4FC: STZ.w $0690\n\n #_01C4FF: SEP #$30\n\n #_01C501: LDA.b #$05\n #_01C503: STA.b $11\n\n.exit\n #_01C505: SEP #$30\n\n #_01C507: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_PrizeTriggerDoorDoor", + "code": "RoomTag_PrizeTriggerDoorDoor:\n #_01C508: LDA.w $040C\n #_01C50B: LSR A\n #_01C50C: TAX\n\n #_01C50D: LDA.l $7EF3CA\n #_01C511: BNE .dark_world\n\n #_01C513: LDA.l $7EF374\n #_01C517: AND.l RoomTagPrizeChecks,X\n #_01C51B: BEQ .exit\n #_01C51D: BRA .open_door\n\n.dark_world\n #_01C51F: LDA.l $7EF37A\n #_01C523: AND.l RoomTagPrizeChecks,X\n #_01C527: BEQ .exit\n\n.open_door\n #_01C529: REP #$30\n\n #_01C52B: STZ.w $0468\n #_01C52E: STZ.w $068E\n #_01C531: STZ.w $0690\n\n #_01C534: SEP #$30\n\n #_01C536: LDA.b #$05\n #_01C538: STA.b $11\n\n #_01C53A: LDX.b $0E\n #_01C53C: STZ.b $AE,X\n\n.exit\n #_01C53E: SEP #$30\n\n #_01C540: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_SwitchTrigger_HoldDoor", + "code": "RoomTag_SwitchTrigger_HoldDoor:\n #_01C541: REP #$30\n\n #_01C543: LDA.w #$0005\n #_01C546: LDX.w #$FFFE\n\n.next_check\n #_01C549: INX\n #_01C54A: INX\n #_01C54B: CPX.w $0478\n #_01C54E: BEQ .match\n\n #_01C550: CMP.w $0500,X\n #_01C553: BNE .next_check\n\n #_01C555: LDX.w $0466\n #_01C558: CPX.w #$FFFF\n #_01C55B: BNE .fail\n\n.match\n #_01C55D: LDX.w #$0000\n\n #_01C560: LDA.w $0646\n #_01C563: AND.w #$00FF\n #_01C566: BNE .fail\n\n #_01C568: LDA.w $0642\n #_01C56B: AND.w #$00FF\n #_01C56E: BNE .fail\n\n #_01C570: JSR RoomTag_CheckForPressedSwitch\n\n #_01C573: LDX.w #$0000\n #_01C576: BCS .fail\n\n #_01C578: INX\n\n.fail\n #_01C579: CPX.w $0468\n #_01C57C: BEQ .exit\n\n #_01C57E: STX.w $0468\n\n #_01C581: STZ.w $068E\n #_01C584: STZ.w $0690\n\n #_01C587: SEP #$30\n\n #_01C589: CPX.b #$00\n #_01C58B: BNE .no_sfx\n\n #_01C58D: LDA.b #$25 ; SFX3.25\n #_01C58F: STA.w $012F\n\n.no_sfx\n #_01C592: LDA.b #$05\n #_01C594: STA.b $11\n\n.exit\n #_01C596: SEP #$30\n\n #_01C598: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_SwitchTrigger_ToggleDoor", + "code": "RoomTag_SwitchTrigger_ToggleDoor:\n #_01C599: REP #$30\n\n #_01C59B: LDA.w $0430\n #_01C59E: BNE .close\n\n #_01C5A0: JSR RoomTag_MaybeCheckShutters\n #_01C5A3: BCC .exit\n\n #_01C5A5: STZ.w $068E\n #_01C5A8: STZ.w $0690\n\n #_01C5AB: SEP #$30\n\n #_01C5AD: LDA.b #$25 ; SFX3.25\n #_01C5AF: STA.w $012F\n\n #_01C5B2: LDA.b #$05\n #_01C5B4: JSR PushPressurePlate\n\n #_01C5B7: LDA.w $0468\n #_01C5BA: EOR.b #$01\n #_01C5BC: STA.w $0468\n\n #_01C5BF: INC.w $0430\n #_01C5C2: BRA .exit\n\n.close\n #_01C5C4: JSR RoomTag_MaybeCheckShutters\n #_01C5C7: BCS .exit\n\n #_01C5C9: STZ.w $0430\n\n.exit\n #_01C5CC: SEP #$30\n\n #_01C5CE: RTS", + "file": "bank_01.asm" + }, + { + "name": "PushPressurePlate", + "code": "PushPressurePlate:\n #_01C5CF: STA.b $11\n\n #_01C5D1: LDX.b $0C\n #_01C5D3: CPX.b #$23\n #_01C5D5: BEQ .exit\n\n #_01C5D7: LDA.w $04B6\n #_01C5DA: ORA.w $04B7\n #_01C5DD: BEQ .exit\n\n #_01C5DF: LDA.b $11\n #_01C5E1: STA.w $010C\n\n #_01C5E4: LDA.b #$17\n #_01C5E6: STA.b $11\n\n #_01C5E8: LDA.b #$20\n #_01C5EA: STA.b $B0\n\n; ---------------------------------------------------------\n\n #_01C5EC: REP #$30\n\n #_01C5EE: LDA.b $20\n #_01C5F0: CLC\n #_01C5F1: ADC.w #$0002\n #_01C5F4: STA.b $20\n\n #_01C5F6: LDX.w $04B6\n\n #_01C5F9: LDA.l $7F2000,X\n #_01C5FD: AND.w #$FE00\n #_01C600: CMP.w #$2400 ; TILETYPE 24, TILETYPE 25\n #_01C603: BEQ .not_switch\n\n #_01C605: INX\n\n.not_switch\n #_01C606: STX.w $04B6\n\n #_01C609: TXA\n #_01C60A: STA.b $00\n\n #_01C60C: LSR A\n #_01C60D: LSR A\n #_01C60E: LSR A\n\n #_01C60F: AND.w #$01F8\n #_01C612: STA.b $02\n\n #_01C614: LDA.b $00\n #_01C616: AND.w #$003F\n\n #_01C619: ASL A\n #_01C61A: ASL A\n #_01C61B: ASL A\n\n #_01C61C: STA.b $00\n\n #_01C61E: SEP #$30\n\n #_01C620: LDY.b #$10\n #_01C622: JSL Underworld_UpdateTilemapWithCommonTile\n\n.exit\n #_01C626: SEP #$30\n\n #_01C628: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_TorchPuzzleDoor", + "code": "RoomTag_TorchPuzzleDoor:\n #_01C629: REP #$30\n\n #_01C62B: LDX.w #$0000\n #_01C62E: STX.b $00\n\n.next\n #_01C630: LDA.w $0540,X\n #_01C633: ASL A\n #_01C634: BCC .skip\n\n #_01C636: INC.b $00\n\n.skip\n #_01C638: INX\n #_01C639: INX\n #_01C63A: CPX.w #$0020\n #_01C63D: BNE .next\n\n; ---------------------------------------------------------\n\n #_01C63F: LDX.w #$0001\n\n #_01C642: LDA.b $00\n #_01C644: CMP.w #$0004\n #_01C647: BCC .not_enough_torches\n\n #_01C649: DEX\n\n.not_enough_torches\n #_01C64A: CPX.w $0468\n #_01C64D: BEQ .fail\n\n #_01C64F: STX.w $0468\n\n #_01C652: STZ.w $068E\n #_01C655: STZ.w $0690\n\n #_01C658: SEP #$30\n\n #_01C65A: LDA.b #$1B ; SFX3.1B\n #_01C65C: STA.w $012F\n\n #_01C65F: LDA.b #$05\n #_01C661: STA.b $11\n\n.fail\n #_01C663: SEP #$30\n\n #_01C665: RTS", + "file": "bank_01.asm" + }, + { + "name": "ExplodingWallExplosionMovement", + "code": "ExplodingWallExplosionMovement:\n #_01C666: dw $0004\n #_01C668: dw $0006\n #_01C66A: dw $0000\n #_01C66C: dw $0000\n #_01C66E: dw $0002\n", + "file": "bank_01.asm" + }, + { + "name": "ExplodingWallTilemapOffset", + "code": "ExplodingWallTilemapOffset:\n #_01C670: dw $0000\n #_01C672: dw $000A\n #_01C674: dw $0000\n #_01C676: dw $0000\n #_01C678: dw $0280\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Switch_ExplodingWall", + "code": "RoomTag_Switch_ExplodingWall:\n #_01C67A: REP #$30\n\n #_01C67C: JSR RoomTag_MaybeCheckShutters\n #_01C67F: BCC EXIT_01C6F9\n\n #_01C681: REP #$30\n\n #_01C683: BRA RoomTag_RunExplodingWall\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_PullSwitchExplodingWall", + "code": "RoomTag_PullSwitchExplodingWall:\n #_01C685: LDA.w $0642\n #_01C688: BEQ EXIT_01C6F9\n\n #_01C68A: REP #$30\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_RunExplodingWall", + "code": "RoomTag_RunExplodingWall:\n #_01C68C: LDY.w #$FFFE\n\n.next\n #_01C68F: INY\n #_01C690: INY\n\n #_01C691: LDA.w $1980,Y\n #_01C694: AND.w #$00FE\n\n #_01C697: CMP.w #$0030\n #_01C69A: BNE .next\n\n; ---------------------------------------------------------\n\n #_01C69C: STY.w $0456\n\n #_01C69F: LDA.b $21\n #_01C6A1: AND.w #$0001\n #_01C6A4: INC A\n\n #_01C6A5: ASL A\n #_01C6A6: ASL A\n #_01C6A7: TAX\n\n #_01C6A8: LDA.w $19C0,Y\n #_01C6AB: AND.w #$0002\n #_01C6AE: BEQ .run_check\n\n #_01C6B0: LDA.b $23\n #_01C6B2: AND.w #$0001\n #_01C6B5: ASL A\n #_01C6B6: TAX\n\n.run_check\n #_01C6B7: LDA.l ExplodingWallExplosionMovement,X\n #_01C6BB: STA.l $7F001C\n\n #_01C6BF: LDA.w $19A0,Y\n #_01C6C2: CLC\n #_01C6C3: ADC.l ExplodingWallTilemapOffset,X\n #_01C6C7: TAY\n\n #_01C6C8: AND.w #$007E\n #_01C6CB: ASL A\n #_01C6CC: ASL A\n #_01C6CD: CLC\n #_01C6CE: ADC.w $062C\n #_01C6D1: STA.l $7F001A\n\n #_01C6D5: TYA\n #_01C6D6: AND.w #$1F80\n\n #_01C6D9: LSR A\n #_01C6DA: LSR A\n #_01C6DB: LSR A\n #_01C6DC: LSR A\n\n #_01C6DD: CLC\n #_01C6DE: ADC.w $062E\n #_01C6E1: STA.l $7F0018\n\n #_01C6E5: SEP #$30\n\n #_01C6E7: LDA.b #$1B ; SFX3.1B\n #_01C6E9: STA.w $012F\n\n #_01C6EC: LDA.b #$01\n #_01C6EE: STA.w $0454\n\n #_01C6F1: LDX.b $0E\n\n #_01C6F3: STZ.b $AE,X\n\n #_01C6F5: JSL AncillaAdd_BlastWall\n\n; ---------------------------------------------------------\n\n#EXIT_01C6F9:\n #_01C6F9: SEP #$30\n\n #_01C6FB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_GetHeartForPrize", + "code": "RoomTag_GetHeartForPrize:\n #_01C709: LDA.w $0403\n #_01C70C: AND.b #$80\n #_01C70E: BEQ .exit\n\n #_01C710: LDA.w $040C\n #_01C713: LSR A\n #_01C714: TAX\n\n #_01C715: LDA.l $7EF3CA\n #_01C719: BNE .dark_world\n\n #_01C71B: LDA.l $7EF374\n #_01C71F: AND.l RoomTagPrizeChecks,X\n #_01C723: BNE .delete_tag\n #_01C725: BRA .spawn_prize\n\n.dark_world\n #_01C727: LDA.l $7EF37A\n #_01C72B: AND.l RoomTagPrizeChecks,X\n #_01C72F: BNE .delete_tag\n\n.spawn_prize\n #_01C731: LDA.b #$80\n #_01C733: STA.w $04C2\n\n #_01C736: LDA.b $0E\n #_01C738: PHA\n\n #_01C739: LDA.w $040C\n #_01C73C: LSR A\n #_01C73D: TAX\n\n #_01C73E: LDA.l .prizes,X\n #_01C742: JSL Ancilla_SpawnFallingPrize\n\n #_01C746: PLA\n #_01C747: STA.b $0E\n\n.delete_tag\n #_01C749: LDX.b $0E\n #_01C74B: STZ.b $AE,X\n\n.exit\n #_01C74D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Agahnim", + "code": "RoomTag_Agahnim:\n #_01C74E: LDA.l $7EF2DB\n #_01C752: AND.b #$20\n #_01C754: BNE .exit\n\n #_01C756: LDA.w $0403\n #_01C759: ASL A\n #_01C75A: BCC .exit\n\n #_01C75C: JSL Palette_RevertTranslucencySwap\n\n #_01C760: STZ.b $AE\n\n #_01C762: JSL PrepareDungeonExitFromBossFight\n\n.exit\n #_01C766: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_GanonDoor", + "code": "RoomTag_GanonDoor:\n #_01C767: LDX.b #$0F\n\n.next_sprite\n #_01C769: LDA.w $0DD0,X\n #_01C76C: CMP.b #$04\n #_01C76E: BEQ .exit\n\n #_01C770: LDA.w $0F60,X\n #_01C773: AND.b #$40\n #_01C775: BNE .skip\n\n #_01C777: LDA.w $0DD0,X\n #_01C77A: BNE .exit\n\n.skip\n #_01C77C: DEX\n #_01C77D: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_01C77F: LDA.b $5D\n #_01C781: CMP.b #$01 ; LINKSTATE 01\n #_01C783: BEQ .exit\n\n #_01C785: LDA.b #$1A\n #_01C787: STA.w $02E4\n #_01C78A: STA.b $11\n\n #_01C78C: STZ.b $B0\n #_01C78E: STZ.b $AE\n\n #_01C790: LDA.b #$01\n #_01C792: STA.w $03EF\n\n #_01C795: STZ.b $3A\n #_01C797: STZ.b $3C\n\n #_01C799: LDA.b #$64\n #_01C79B: STA.b $C8\n\n #_01C79D: LDA.b #$03\n #_01C79F: STA.b $C9\n\n.exit\n #_01C7A1: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_KillRoomBlock", + "code": "RoomTag_KillRoomBlock:\n #_01C7A2: LDA.b $23\n #_01C7A4: LSR A\n #_01C7A5: BCC EXIT_01C7C1\n\n #_01C7A7: LDA.b $21\n #_01C7A9: LSR A\n #_01C7AA: BCC EXIT_01C7C1\n\n #_01C7AC: LDA.b $0E\n #_01C7AE: PHA\n\n #_01C7AF: JSL CheckIfScreenIsClear\n #_01C7B3: BCC .fail\n\n #_01C7B5: LDA.b #$1B ; SFX3.1B\n #_01C7B7: STA.w $012F\n\n #_01C7BA: PLX\n #_01C7BB: STZ.b $AE,X\n\n #_01C7BD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_PushBlockForChest", + "code": "RoomTag_PushBlockForChest:\n #_01C7C2: LDA.b $14\n #_01C7C4: BNE .exit\n\n #_01C7C6: LDA.w $0641\n #_01C7C9: BNE RoomTag_OperateChestReveal\n\n.exit\n #_01C7CB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_TriggerChest", + "code": "RoomTag_TriggerChest:\n #_01C7CC: LDA.w $031F\n #_01C7CF: BNE EXIT_01C7C1\n\n #_01C7D1: REP #$30\n\n #_01C7D3: JSR RoomTag_MaybeCheckShutters\n #_01C7D6: BCC EXIT_01C7BF\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateChestReveal", + "code": "RoomTag_OperateChestReveal:\n #_01C7D8: SEP #$30\n\n #_01C7DA: LDX.b $0E\n #_01C7DC: STZ.b $AE,X\n\n #_01C7DE: REP #$30\n\n #_01C7E0: STZ.w $1000\n #_01C7E3: STZ.w $0200\n\n #_01C7E6: LDA.w #$5858 ; TILETYPE 58\n #_01C7E9: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next_tile\n #_01C7EB: LDX.w $0200\n\n #_01C7EE: LDA.w $06E0,X\n #_01C7F1: AND.w #$3FFF\n #_01C7F4: TAX\n\n; ---------------------------------------------------------\n\n #_01C7F5: LDY.w #obj149C-RoomDrawObjectData\n\n #_01C7F8: LDA.w RoomDrawObjectData+0,Y\n #_01C7FB: STA.l $7E2000,X\n #_01C7FF: STA.b $02\n\n #_01C801: LDA.w RoomDrawObjectData+2,Y\n #_01C804: STA.l $7E2080,X\n #_01C808: STA.b $04\n\n #_01C80A: LDA.w RoomDrawObjectData+4,Y\n #_01C80D: STA.l $7E2002,X\n #_01C811: STA.b $06\n\n #_01C813: LDA.w RoomDrawObjectData+6,Y\n #_01C816: STA.l $7E2082,X\n #_01C81A: STA.b $08\n\n; ---------------------------------------------------------\n\n #_01C81C: LDY.w $0200\n\n #_01C81F: LDA.w $06E0,Y\n #_01C822: AND.w #$3FFF\n #_01C825: LSR A\n #_01C826: TAX\n\n #_01C827: LDA.b $0C\n #_01C829: STA.l $7F2000,X\n #_01C82D: STA.l $7F2040,X\n\n #_01C831: CLC\n #_01C832: ADC.w #$0101\n #_01C835: STA.b $0C\n\n; ---------------------------------------------------------\n\n #_01C837: LDX.w $1000\n\n #_01C83A: LDA.w #$0000\n #_01C83D: JSR RoomTag_BuildChestStripes\n #_01C840: STA.w $1002,X\n\n #_01C843: LDA.w #$0080\n #_01C846: JSR RoomTag_BuildChestStripes\n #_01C849: STA.w $1008,X\n\n #_01C84C: LDA.w #$0002\n #_01C84F: JSR RoomTag_BuildChestStripes\n #_01C852: STA.w $100E,X\n\n #_01C855: LDA.w #$0082\n #_01C858: JSR RoomTag_BuildChestStripes\n #_01C85B: STA.w $1014,X\n\n; ---------------------------------------------------------\n\n #_01C85E: LDA.b $02\n #_01C860: STA.w $1006,X\n\n #_01C863: LDA.b $04\n #_01C865: STA.w $100C,X\n\n #_01C868: LDA.b $06\n #_01C86A: STA.w $1012,X\n\n #_01C86D: LDA.b $08\n #_01C86F: STA.w $1018,X\n\n #_01C872: LDA.w #$0100\n #_01C875: STA.w $1004,X\n #_01C878: STA.w $100A,X\n #_01C87B: STA.w $1010,X\n #_01C87E: STA.w $1016,X\n\n #_01C881: LDA.w #$FFFF\n #_01C884: STA.w $101A,X\n\n; ---------------------------------------------------------\n\n #_01C887: TXA\n #_01C888: CLC\n #_01C889: ADC.w #$0018\n #_01C88C: STA.w $1000\n\n #_01C88F: LDA.w $0200\n #_01C892: INC A\n #_01C893: INC A\n #_01C894: STA.w $0200\n\n #_01C897: CMP.w $0496\n #_01C89A: BEQ .done\n\n #_01C89C: JMP.w .next_tile\n\n; ---------------------------------------------------------\n\n.done\n #_01C89F: STZ.w $0200\n\n #_01C8A2: SEP #$30\n\n #_01C8A4: LDA.b #$1A ; SFX3.1A\n #_01C8A6: STA.w $012F\n\n #_01C8A9: LDA.b #$01\n #_01C8AB: STA.b $14\n\n #_01C8AD: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_TorchPuzzleChest", + "code": "RoomTag_TorchPuzzleChest:\n #_01C8AE: REP #$30\n\n #_01C8B0: LDX.w #$0000\n #_01C8B3: STX.b $00\n\n.next\n #_01C8B5: LDA.w $0540,X\n #_01C8B8: ASL A\n #_01C8B9: BCC .skip\n\n #_01C8BB: INC.b $00\n\n.skip\n #_01C8BD: INX\n #_01C8BE: INX\n #_01C8BF: CPX.w #$0020\n #_01C8C2: BNE .next\n\n #_01C8C4: LDX.w #$0001\n\n #_01C8C7: LDA.b $00\n #_01C8C9: CMP.w #$0004\n #_01C8CC: BCC .exit\n\n #_01C8CE: JSR RoomTag_OperateChestReveal\n\n.exit\n #_01C8D1: SEP #$30\n\n #_01C8D3: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_MovingWall_East", + "code": "RoomTag_MovingWall_East:\n #_01C8D4: REP #$20\n\n #_01C8D6: LDA.w $041A\n #_01C8D9: BNE .move_wall\n\n #_01C8DB: JSR RoomTag_MovingWallTorchesCheck\n #_01C8DE: BRA .continue\n\n.move_wall\n #_01C8E0: LDY.b #$01\n #_01C8E2: STY.w $0FC1\n\n #_01C8E5: JSR RoomTag_MovingWallShakeItUp\n\n #_01C8E8: LDA.w #$FFFF\n #_01C8EB: JSR MovingWall_MoveALittle\n\n.continue\n #_01C8EE: STA.w $0312\n\n #_01C8F1: LDA.w $0422\n #_01C8F4: SEC\n #_01C8F5: SBC.w $0312\n #_01C8F8: STA.w $0422\n\n #_01C8FB: CLC\n #_01C8FC: ADC.b $E2\n #_01C8FE: STA.b $E0\n\n #_01C900: LDA.w $0312\n #_01C903: BEQ .exit\n\n; ---------------------------------------------------------\n\n #_01C905: LDX.w $041E\n\n #_01C908: LDA.w $0422\n #_01C90B: CMP.w MovingWallEastBoundaries,X\n #_01C90E: BCS .dont_advance\n\n #_01C910: JSR RoomTag_AdvanceGiganticWall\n\n #_01C913: LDA.w $0422\n #_01C916: CMP.w MovingWallEastBoundaries,X\n #_01C919: BCS .dont_advance\n\n; ---------------------------------------------------------\n\n #_01C91B: LDX.b #$1B ; SFX3.1B\n #_01C91D: STX.w $012F\n\n #_01C920: LDX.b #$05 ; SFX1.05\n #_01C922: STX.w $012D\n\n #_01C925: LDX.b $0E\n\n #_01C927: LDY.b #$00\n #_01C929: STY.b $AE,X\n\n #_01C92B: STY.w $02E4\n #_01C92E: STY.w $0FC1\n\n #_01C931: STZ.w $011A\n #_01C934: STZ.w $011B\n #_01C937: STZ.w $011C\n #_01C93A: STZ.w $011D\n\n; ---------------------------------------------------------\n\n.dont_advance\n #_01C93D: LDX.b #$05\n #_01C93F: STX.b $17\n\n #_01C941: LDA.w #$0000\n #_01C944: SEC\n #_01C945: SBC.w $0422\n #_01C948: STA.b $00\n\n #_01C94A: AND.w #$01F8\n #_01C94D: LSR A\n #_01C94E: LSR A\n #_01C94F: LSR A\n #_01C950: STA.b $00\n\n #_01C952: LDA.w $042A\n #_01C955: SEC\n #_01C956: SBC.b $00\n #_01C958: AND.w #$141F\n #_01C95B: STA.w $0116\n\n.exit\n #_01C95E: SEP #$20\n\n #_01C960: RTS", + "file": "bank_01.asm" + }, + { + "name": "OverworldShake_Offsets_Y", + "code": "OverworldShake_Offsets_Y:\n #_01C961: db 1\n #_01C962: db 0\n #_01C963: db -1\n #_01C964: db -1\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "OverworldShake_Offsets_X", + "code": "OverworldShake_Offsets_X:\n #_01C965: db -1\n #_01C966: db -1\n #_01C967: db 1\n #_01C968: db 0\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_MovingWallShakeItUp", + "code": "RoomTag_MovingWallShakeItUp:\n #_01C969: LDA.b $1A\n #_01C96B: AND.w #$0001\n #_01C96E: ASL A\n #_01C96F: TAX\n\n #_01C970: LDA.l OverworldShake_Offsets_Y,X\n #_01C974: STA.w $011A\n\n #_01C977: LDA.l OverworldShake_Offsets_X,X\n #_01C97B: STA.w $011C\n\n #_01C97E: LDX.b $0E\n\n #_01C980: LDY.b $AE,X\n #_01C982: BNE .exit\n\n #_01C984: STZ.w $011A\n #_01C987: STZ.w $011C\n\n.exit\n #_01C98A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_MovingWall_West", + "code": "RoomTag_MovingWall_West:\n #_01C98B: REP #$20\n\n #_01C98D: LDA.w $041A\n #_01C990: BNE .move_wall\n\n #_01C992: JSR RoomTag_MovingWallTorchesCheck\n #_01C995: BRA .continue\n\n.move_wall\n #_01C997: LDY.b #$01\n #_01C999: STY.w $0FC1\n\n #_01C99C: JSR RoomTag_MovingWallShakeItUp\n\n #_01C99F: LDA.w #$0001\n #_01C9A2: JSR MovingWall_MoveALittle\n\n.continue\n #_01C9A5: STA.w $0312\n #_01C9A8: CLC\n #_01C9A9: ADC.w $0422\n #_01C9AC: STA.w $0422\n\n #_01C9AF: CLC\n #_01C9B0: ADC.b $E2\n #_01C9B2: STA.b $E0\n\n #_01C9B4: LDA.w $0312\n #_01C9B7: BEQ .exit\n\n; ---------------------------------------------------------\n\n #_01C9B9: LDX.w $041E\n\n #_01C9BC: LDA.w $0422\n #_01C9BF: CMP.w MovingWallWestBoundaries,X\n #_01C9C2: BCC .dont_advance\n\n #_01C9C4: JSR RoomTag_AdvanceGiganticWall\n\n #_01C9C7: LDA.w $0422\n #_01C9CA: CMP.w MovingWallWestBoundaries,X\n #_01C9CD: BCC .dont_advance\n\n; ---------------------------------------------------------\n\n #_01C9CF: LDX.b #$1B ; SFX3.1B\n #_01C9D1: STX.w $012F\n\n #_01C9D4: LDX.b #$05 ; SFX1.05\n #_01C9D6: STX.w $012D\n\n #_01C9D9: LDX.b $0E\n\n #_01C9DB: LDY.b #$00\n #_01C9DD: STY.b $AE,X\n #_01C9DF: STY.w $02E4\n #_01C9E2: STY.w $0FC1\n\n #_01C9E5: STZ.w $011A\n #_01C9E8: STZ.w $011B\n #_01C9EB: STZ.w $011C\n #_01C9EE: STZ.w $011D\n\n; ---------------------------------------------------------\n\n.dont_advance\n #_01C9F1: LDX.b #$05\n #_01C9F3: STX.b $17\n\n #_01C9F5: LDA.w $0422\n #_01C9F8: AND.w #$01F8\n\n #_01C9FB: LSR A\n #_01C9FC: LSR A\n #_01C9FD: LSR A\n\n #_01C9FE: STA.b $00\n\n #_01CA00: LDA.w $042A\n #_01CA03: CLC\n #_01CA04: ADC.b $00\n #_01CA06: STA.w $0116\n\n #_01CA09: AND.w #$1020\n #_01CA0C: BEQ .exit\n\n #_01CA0E: EOR.w #$0420\n #_01CA11: STA.w $0116\n\n.exit\n #_01CA14: SEP #$20\n\n #_01CA16: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_MovingWallTorchesCheck", + "code": "RoomTag_MovingWallTorchesCheck:\n #_01CA17: REP #$10\n\n #_01CA19: LDA.w $0642\n #_01CA1C: AND.w #$00FF\n #_01CA1F: BNE .succeed\n\n #_01CA21: LDX.w #$0000\n #_01CA24: STX.b $00\n\n.next\n #_01CA26: LDA.w $0540,X\n #_01CA29: ASL A\n #_01CA2A: BCC .skip\n\n #_01CA2C: INC.b $00\n\n.skip\n #_01CA2E: INX\n #_01CA2F: INX\n #_01CA30: CPX.w #$0020\n #_01CA33: BNE .next\n\n; ---------------------------------------------------------\n\n #_01CA35: LDA.b $00\n #_01CA37: CMP.w #$0004\n #_01CA3A: BCC .fail\n\n.succeed\n #_01CA3C: INC.w $041A\n\n #_01CA3F: STZ.w $0642\n\n #_01CA42: SEP #$20\n\n #_01CA44: LDA.b $0E\n #_01CA46: ASL A\n #_01CA47: TAX\n\n #_01CA48: LDA.w $0403\n #_01CA4B: ORA.w DoorFlagMasks-1,X\n #_01CA4E: STA.w $0403\n\n #_01CA51: LDA.b #$07 ; SFX1.07\n #_01CA53: STA.w $012D\n\n #_01CA56: LDA.b #$01\n #_01CA58: STA.w $02E4\n #_01CA5B: STA.w $0FC1\n\n #_01CA5E: REP #$20\n\n.fail\n #_01CA60: LDA.w #$0000\n\n #_01CA63: SEP #$10\n\n #_01CA65: RTS", + "file": "bank_01.asm" + }, + { + "name": "MovingWall_MoveALittle", + "code": "MovingWall_MoveALittle:\n #_01CA66: LDA.w #$2200\n #_01CA69: CLC\n #_01CA6A: ADC.w $041C\n #_01CA6D: STA.w $041C\n\n #_01CA70: ROL A\n #_01CA71: AND.w #$0001\n\n #_01CA74: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_AdvanceGiganticWall", + "code": "RoomTag_AdvanceGiganticWall:\n #_01CA75: LDX.b $0E\n\n #_01CA77: LDY.b $AE,X\n #_01CA79: CPY.b #$20\n #_01CA7B: BCS .bomb_wall\n\n #_01CA7D: LDX.b #$00\n #_01CA7F: STX.w $046C\n\n #_01CA82: LDX.b #$16\n #_01CA84: STX.b $1C\n\n.bomb_wall\n #_01CA86: LDX.w $041E\n\n #_01CA89: CPY.b #$20\n #_01CA8B: BCS EXIT_01CA93\n\n #_01CA8D: TXA\n #_01CA8E: CLC\n #_01CA8F: ADC.w #$0008\n #_01CA92: TAX\n\n; ---------------------------------------------------------\n\n#EXIT_01CA93:\n #_01CA93: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_WaterOff", + "code": "RoomTag_WaterOff:\n #_01CA94: LDA.w $0642\n #_01CA97: BEQ EXIT_01CA93\n\n #_01CA99: LDA.b #$03\n #_01CA9B: STA.b $96\n\n #_01CA9D: STZ.b $97\n #_01CA9F: STZ.b $98\n\n #_01CAA1: LDA.b #$16\n #_01CAA3: STA.b $1E\n\n #_01CAA5: LDA.b #$01\n #_01CAA7: STA.b $1F\n\n #_01CAA9: LDA.b #$01\n #_01CAAB: STA.w $0424\n\n #_01CAAE: JSL AdjustWaterHDMAWindow\n\n #_01CAB2: LDA.b #$0B\n #_01CAB4: STA.b $11\n\n #_01CAB6: LDA.b #$00\n #_01CAB8: STA.l $7EC007\n #_01CABC: STA.l $7EC009\n\n #_01CAC0: LDA.b #$1F\n #_01CAC2: STA.l $7EC00B\n\n #_01CAC6: INC.b $15\n\n; ---------------------------------------------------------\n\n #_01CAC8: LDA.b #$00\n #_01CACA: STA.b $AF\n\n #_01CACC: LDA.w $0403\n #_01CACF: ORA.l DoorFlagMasks+1\n #_01CAD3: STA.w $0403\n\n #_01CAD6: STZ.w $0642\n\n #_01CAD9: REP #$30\n\n #_01CADB: LDA.w $0682\n #_01CADE: AND.w #$01FF\n #_01CAE1: SEC\n #_01CAE2: SBC.w #$0010\n\n #_01CAE5: ASL A\n #_01CAE6: ASL A\n #_01CAE7: ASL A\n #_01CAE8: ASL A\n\n #_01CAE9: STA.b $08\n\n #_01CAEB: LDA.w $0680\n #_01CAEE: AND.w #$01FF\n #_01CAF1: SEC\n #_01CAF2: SBC.w #$0010\n\n #_01CAF5: LSR A\n #_01CAF6: LSR A\n #_01CAF7: TSB.b $08\n\n #_01CAF9: LDX.b $08\n\n #_01CAFB: JSR RoomTag_WaterOff_AdjustWater\n #_01CAFE: JSR RoomTag_WaterOff_AdjustOverlay\n\n #_01CB01: LDY.b $0C\n\n #_01CB03: LDA.w #$FFFF\n #_01CB06: STA.w $1100,Y\n\n #_01CB09: SEP #$30\n\n #_01CB0B: LDA.b #$1B ; SFX3.1B\n #_01CB0D: STA.w $012F\n\n #_01CB10: LDA.b #$2E ; SFX2.2E\n #_01CB12: STA.w $012E\n\n #_01CB15: LDA.b #$01\n #_01CB17: STA.b $18\n\n; ---------------------------------------------------------\n\n#EXIT_01CB19:\n #_01CB19: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_WaterOn", + "code": "RoomTag_WaterOn:\n #_01CB1A: LDA.w $0642\n #_01CB1D: BEQ EXIT_01CB19\n\n #_01CB1F: LDA.b #$1B ; SFX3.1B\n #_01CB21: STA.w $012F\n\n #_01CB24: LDA.b #$2F ; SFX2.2F\n #_01CB26: STA.w $012E\n\n #_01CB29: LDA.b #$0C\n #_01CB2B: STA.b $11\n\n #_01CB2D: STZ.b $B0\n\n #_01CB2F: LDA.b #$01\n #_01CB31: STA.w $0424\n\n #_01CB34: LDA.b #$00\n #_01CB36: STA.b $AF\n\n #_01CB38: LDA.w $0403\n #_01CB3B: ORA.l DoorFlagMasks+1\n #_01CB3F: STA.w $0403\n\n #_01CB42: STZ.w $0642\n #_01CB45: STZ.w $045C\n\n; ---------------------------------------------------------\n\n#EXIT_01CB48:\n #_01CB48: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_WaterGate", + "code": "RoomTag_WaterGate:\n #_01CB49: LDA.w $0403\n #_01CB4C: AND.l DoorFlagMasks+1\n #_01CB50: BNE EXIT_01CB48\n\n #_01CB52: LDA.w $0642\n #_01CB55: BEQ EXIT_01CB48\n\n; ---------------------------------------------------------\n\n #_01CB57: LDA.b #$0D\n #_01CB59: STA.b $11\n\n #_01CB5B: STZ.b $B0\n\n #_01CB5D: LDA.b #$00\n #_01CB5F: STA.b $AF\n\n #_01CB61: LDA.w $0403\n #_01CB64: ORA.l DoorFlagMasks+1\n #_01CB68: STA.w $0403\n\n #_01CB6B: STZ.w $0642\n #_01CB6E: STZ.w $0684\n #_01CB71: STZ.w $067A\n\n; ---------------------------------------------------------\n\n #_01CB74: LDA.b #$03\n #_01CB76: STA.b $96\n\n #_01CB78: STZ.b $97\n #_01CB7A: STZ.b $98\n\n #_01CB7C: LDA.b #$16\n #_01CB7E: STA.b $1E\n\n #_01CB80: LDA.b #$01\n #_01CB82: STA.b $1F\n\n #_01CB84: LDA.b #$02\n #_01CB86: STA.b $99\n\n #_01CB88: LDA.b #$62\n #_01CB8A: STA.b $9A\n\n; ---------------------------------------------------------\n\n #_01CB8C: LDA.l $7EF2BB\n #_01CB90: ORA.b #$20\n #_01CB92: STA.l $7EF2BB\n\n #_01CB96: LDA.l $7EF2FB\n #_01CB9A: ORA.b #$20\n #_01CB9C: STA.l $7EF2FB\n\n #_01CBA0: LDA.l $7EF051\n #_01CBA4: ORA.b #$01\n #_01CBA6: STA.l $7EF051\n\n; ---------------------------------------------------------\n\n #_01CBAA: REP #$30\n\n #_01CBAC: LDA.w #WaterOverlayData>>16\n #_01CBAF: STA.b $B9\n\n #_01CBB1: LDA.w #WaterOverlayData>>0\n #_01CBB4: JSR RoomTag_OperateWaterFlooring\n\n #_01CBB7: REP #$30\n\n #_01CBB9: LDA.w $0472\n #_01CBBC: AND.w #$007E\n #_01CBBF: ASL A\n #_01CBC0: ASL A\n #_01CBC1: STA.w $0680\n\n; ---------------------------------------------------------\n\n #_01CBC4: LDA.b $B2\n\n #_01CBC6: ASL A\n #_01CBC7: ASL A\n #_01CBC8: ASL A\n #_01CBC9: ASL A\n\n #_01CBCA: CLC\n #_01CBCB: ADC.w $062C\n\n #_01CBCE: CLC\n #_01CBCF: ADC.w $0680\n\n #_01CBD2: CLC\n #_01CBD3: ADC.w #$0028\n #_01CBD6: STA.w $0680\n\n #_01CBD9: LDA.w $0472\n #_01CBDC: AND.w #$1F80\n #_01CBDF: LSR A\n #_01CBE0: LSR A\n #_01CBE1: LSR A\n #_01CBE2: LSR A\n #_01CBE3: STA.w $0676\n #_01CBE6: STA.w $0678\n\n #_01CBE9: CLC\n #_01CBEA: ADC.w $062E\n #_01CBED: STA.w $0682\n\n #_01CBF0: STZ.w $0686\n\n #_01CBF3: SEP #$30\n\n #_01CBF5: LDA.b #$1B ; SFX3.1B\n #_01CBF7: STA.w $012F\n\n #_01CBFA: LDA.b #$2F ; SFX2.2F\n #_01CBFC: STA.w $012E\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_DamGate", + "code": "RoomTag_DamGate:\n #_01CBFF: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes0", + "code": "RoomTag_Holes0:\n #_01CC00: LDA.b #$01\n #_01CC02: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes1", + "code": "RoomTag_Holes1:\n #_01CC04: LDA.b #$03\n #_01CC06: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes3", + "code": "RoomTag_Holes3:\n #_01CC08: LDA.b #$06\n #_01CC0A: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes4", + "code": "RoomTag_Holes4:\n #_01CC0C: LDA.b #$08\n #_01CC0E: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes5", + "code": "RoomTag_Holes5:\n #_01CC10: LDA.b #$0A\n #_01CC12: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes6", + "code": "RoomTag_Holes6:\n #_01CC14: LDA.b #$0C\n #_01CC16: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes7", + "code": "RoomTag_Holes7:\n #_01CC18: LDA.b #$0E\n #_01CC1A: BRA RoomTag_TriggerHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes8", + "code": "RoomTag_Holes8:\n #_01CC1C: LDA.b #$10\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_TriggerHoles", + "code": "RoomTag_TriggerHoles:\n #_01CC1E: STA.b $0A\n\n #_01CC20: LDY.w $04BA\n #_01CC23: BNE .dont_copy\n\n #_01CC25: STA.w $04BA\n\n.dont_copy\n #_01CC28: REP #$30\n\n #_01CC2A: JSR RoomTag_CheckForPressedSwitch\n #_01CC2D: BCC .exit\n\n #_01CC2F: SEP #$30\n\n #_01CC31: TYA\n #_01CC32: CLC\n #_01CC33: ADC.b $0A\n #_01CC35: CMP.w $04BA\n #_01CC38: BEQ .exit\n\n #_01CC3A: STA.w $04BA\n\n #_01CC3D: STZ.b $BA\n #_01CC3F: STZ.b $BB\n #_01CC41: STZ.b $B0\n\n #_01CC43: LDA.b #$1B ; SFX3.1B\n #_01CC45: STA.w $012F\n\n #_01CC48: LDA.b #$03\n #_01CC4A: STA.b $11\n\n #_01CC4C: LDA.w $04BC\n #_01CC4F: EOR.b #$01\n #_01CC51: STA.w $04BC\n\n #_01CC54: JSL ToggleStarTileGraphics\n\n.exit\n #_01CC58: SEP #$30\n\n #_01CC5A: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_ChestHoles0", + "code": "RoomTag_ChestHoles0:\n #_01CC5B: REP #$10\n\n #_01CC5D: LDY.w #$0000\n #_01CC60: BRA RoomTag_OperateChestHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_ChestHoles8", + "code": "RoomTag_ChestHoles8:\n #_01CC62: REP #$10\n\n #_01CC64: LDY.w #$0012\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateChestHoles", + "code": "RoomTag_OperateChestHoles:\n #_01CC67: LDA.w $0403\n #_01CC6A: AND.b #$01\n #_01CC6C: BEQ EXIT_01CC86\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_TriggerChestHoles", + "code": "RoomTag_TriggerChestHoles:\n #_01CC6E: STY.w $04BA\n\n #_01CC71: SEP #$30\n\n #_01CC73: STZ.b $BA\n #_01CC75: STZ.b $BB\n #_01CC77: STZ.b $B0\n\n #_01CC79: LDA.b #$1B ; SFX3.1B\n #_01CC7B: STA.w $012F\n\n #_01CC7E: LDA.b #$03\n #_01CC80: STA.b $11\n\n #_01CC82: LDX.b $0E\n #_01CC84: STZ.b $AE,X\n\n; ---------------------------------------------------------\n\n#EXIT_01CC86:\n #_01CC86: SEP #$30\n\n #_01CC88: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_Holes2", + "code": "RoomTag_Holes2:\n #_01CC89: REP #$30\n\n #_01CC8B: JSR RoomTag_CheckForPressedSwitch\n #_01CC8E: BCC EXIT_01CC86\n\n #_01CC90: LDY.w #$0005\n #_01CC93: BRA RoomTag_TriggerChestHoles\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_OperateWaterFlooring", + "code": "RoomTag_OperateWaterFlooring:\n #_01CC95: STA.b $B7\n\n #_01CC97: STZ.b $BA\n\n.next_object\n #_01CC99: STZ.b $B2\n #_01CC9B: STZ.b $B4\n\n #_01CC9D: LDY.b $BA\n #_01CC9F: LDA.b [$B7],Y\n\n #_01CCA1: CMP.w #$FFFF\n #_01CCA4: BNE .continue\n\n #_01CCA6: SEP #$30\n\n #_01CCA8: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_MaybeCheckShutters", + "code": "RoomTag_MaybeCheckShutters:\n #_01CD39: LDA.w $02E4\n #_01CD3C: AND.w #$00FF\n #_01CD3F: BNE RoomTagFail\n\n #_01CD41: LDA.b $4D\n #_01CD43: AND.w #$00FF\n #_01CD46: BNE RoomTagFail\n\n #_01CD48: JSR RoomTag_GetTilemapCoords\n\n #_01CD4B: LDA.l $7F2000,X\n #_01CD4F: CMP.w #$2323 ; TILETYPE 23\n #_01CD52: BEQ .check_tile\n\n #_01CD54: CMP.w #$2424 ; TILETYPE 24\n #_01CD57: BEQ .check_tile\n\n #_01CD59: TXA\n #_01CD5A: CLC\n #_01CD5B: ADC.w #$0040\n #_01CD5E: TAX\n\n #_01CD5F: LDA.l $7F2000,X\n #_01CD63: CMP.w #$2323 ; TILETYPE 23\n #_01CD66: BEQ .check_tile\n\n #_01CD68: CMP.w #$2424 ; TILETYPE 24\n #_01CD6B: BEQ .check_tile\n\n #_01CD6D: INC.b $00\n\n #_01CD6F: LDX.b $00\n\n #_01CD71: LDA.l $7F2000,X\n #_01CD75: CMP.w #$2323 ; TILETYPE 23\n #_01CD78: BEQ .check_tile\n\n #_01CD7A: CMP.w #$2424 ; TILETYPE 24\n #_01CD7D: BEQ .check_tile\n\n #_01CD7F: TXA\n #_01CD80: CLC\n #_01CD81: ADC.w #$0040\n #_01CD84: TAX\n\n #_01CD85: LDA.l $7F2000,X\n #_01CD89: CMP.w #$2323 ; TILETYPE 23\n #_01CD8C: BEQ .check_tile\n\n #_01CD8E: CMP.w #$2424 ; TILETYPE 24\n #_01CD91: BNE RoomTagFail\n\n.check_tile\n #_01CD93: CMP.l $7F2040,X\n #_01CD97: BNE RoomTagFail\n\n #_01CD99: STA.b $0C\n\n #_01CD9B: STX.w $04B6\n\n.succeed\n #_01CD9E: SEC\n\n #_01CD9F: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTagFail", + "code": "RoomTagFail:\n #_01CDA0: STZ.w $04B6\n\n #_01CDA3: CLC\n\n #_01CDA4: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_GetTilemapCoords", + "code": "RoomTag_GetTilemapCoords:\n #_01CDA5: LDA.b $22\n #_01CDA7: CLC\n #_01CDA8: ADC.w #$FFFF\n #_01CDAB: AND.w #$01F8\n\n #_01CDAE: LSR A\n #_01CDAF: LSR A\n #_01CDB0: LSR A\n\n #_01CDB1: STA.b $00\n\n #_01CDB3: LDA.b $20\n #_01CDB5: CLC\n #_01CDB6: ADC.w #$000E\n #_01CDB9: AND.w #$01F8\n\n #_01CDBC: ASL A\n #_01CDBD: ASL A\n #_01CDBE: ASL A\n\n #_01CDBF: ORA.b $00\n\n #_01CDC1: LDX.b $EE\n #_01CDC3: BEQ .upper_layer\n\n #_01CDC5: ORA.w #$1000\n\n.upper_layer\n #_01CDC8: STA.b $00\n\n #_01CDCA: TAX\n\n #_01CDCB: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_CheckForPressedSwitch", + "code": "RoomTag_CheckForPressedSwitch:\n #_01CDCC: LDA.w $02E4\n #_01CDCF: AND.w #$00FF\n #_01CDD2: BNE RoomTagFail\n\n #_01CDD4: LDA.b $4D\n #_01CDD6: AND.w #$00FF\n #_01CDD9: BNE RoomTagFail\n\n #_01CDDB: JSR RoomTag_GetTilemapCoords\n\n #_01CDDE: LDY.w #$0000\n\n #_01CDE1: LDA.l $7F2000,X\n #_01CDE5: CMP.w #$2323 ; TILETYPE 23\n #_01CDE8: BEQ .check_tile\n\n #_01CDEA: CMP.w #$3A3A ; TILETYPE 3A\n #_01CDED: BEQ .check_tile\n\n #_01CDEF: INY\n\n #_01CDF0: CMP.w #$3B3B ; TILETYPE 3B\n #_01CDF3: BEQ .check_tile\n\n; ---------------------------------------------------------\n\n #_01CDF5: TXA\n #_01CDF6: CLC\n #_01CDF7: ADC.w #$0040\n #_01CDFA: TAX\n\n #_01CDFB: LDY.w #$0000\n\n #_01CDFE: LDA.l $7F2000,X\n #_01CE02: CMP.w #$2323 ; TILETYPE 23\n #_01CE05: BEQ .check_tile\n\n #_01CE07: CMP.w #$3A3A ; TILETYPE 3A\n #_01CE0A: BEQ .check_tile\n\n #_01CE0C: INY\n #_01CE0D: CMP.w #$3B3B ; TILETYPE 3B\n #_01CE10: BEQ .check_tile\n\n; ---------------------------------------------------------\n\n #_01CE12: INC.b $00\n\n #_01CE14: LDX.b $00\n\n #_01CE16: LDY.w #$0000\n\n #_01CE19: LDA.l $7F2000,X\n #_01CE1D: CMP.w #$2323 ; TILETYPE 23\n #_01CE20: BEQ .check_tile\n\n #_01CE22: CMP.w #$3A3A ; TILETYPE 3A\n #_01CE25: BEQ .check_tile\n\n #_01CE27: INY\n\n #_01CE28: CMP.w #$3B3B ; TILETYPE 3B\n #_01CE2B: BEQ .check_tile\n\n; ---------------------------------------------------------\n\n #_01CE2D: TXA\n #_01CE2E: CLC\n #_01CE2F: ADC.w #$0040\n #_01CE32: TAX\n\n #_01CE33: LDY.w #$0000\n\n #_01CE36: LDA.l $7F2000,X\n #_01CE3A: CMP.w #$2323 ; TILETYPE 23\n #_01CE3D: BEQ .check_tile\n\n #_01CE3F: CMP.w #$3A3A ; TILETYPE 3A\n #_01CE42: BEQ .check_tile\n\n #_01CE44: CMP.w #$3B3B ; TILETYPE 3B\n #_01CE47: BNE .fail\n\n #_01CE49: INY\n\n; ---------------------------------------------------------\n\n.check_tile\n #_01CE4A: CMP.l $7F2040,X\n #_01CE4E: BNE .fail\n\n #_01CE50: STA.b $0C\n\n #_01CE52: STX.w $04B6\n\n #_01CE55: SEC\n\n #_01CE56: RTS", + "file": "bank_01.asm" + }, + { + "name": "CorrespondingDoorOpeningDirection", + "code": "CorrespondingDoorOpeningDirection:\n #_01CE5C: dw $0002\n #_01CE5E: dw $0000\n #_01CE60: dw $0006\n #_01CE62: dw $0004\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "VineDoorGFXOffset", + "code": "VineDoorGFXOffset:\n #_01CE64: dw $07EA\n #_01CE66: dw $080A\n #_01CE68: dw $080A\n #_01CE6A: dw $082A\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorOpenSFXPan", + "code": "DoorOpenSFXPan:\n #_01CE6C: db $00\n #_01CE6D: db $00\n #_01CE6E: db $80\n #_01CE6F: db $40\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_ProcessTorchesAndDoors", + "code": "Underworld_ProcessTorchesAndDoors:\n #_01CE70: LDA.b $1A\n #_01CE72: AND.b #$03\n #_01CE74: BNE .ignore_checks\n\n #_01CE76: LDA.w $0112\n #_01CE79: BNE .ignore_checks\n\n #_01CE7B: LDX.b #$00\n\n.next\n #_01CE7D: LDA.w $04F0,X\n #_01CE80: BEQ .skip\n\n #_01CE82: DEC.w $04F0,X\n #_01CE85: BNE .skip\n\n #_01CE87: PHX\n\n #_01CE88: TXA\n #_01CE89: ORA.b #$C0\n #_01CE8B: STA.w $0333\n\n #_01CE8E: JSL Underworld_ExtinguishTorch\n\n #_01CE92: PLX\n\n.skip\n #_01CE93: INX\n #_01CE94: CPX.b #$10\n #_01CE96: BNE .next\n\n; ---------------------------------------------------------\n\n.ignore_checks\n #_01CE98: LDA.w $02E4\n #_01CE9B: BEQ .not_cutscene\n\n #_01CE9D: JMP.w DontOpenDoor\n\n; ---------------------------------------------------------\n\n.not_cutscene\n #_01CEA0: REP #$21\n\n #_01CEA2: LDA.b $2F\n #_01CEA4: AND.w #$00FF\n #_01CEA7: STA.b $08\n\n #_01CEA9: TAY\n\n #_01CEAA: LDA.b $20\n #_01CEAC: ADC.w DetectStaircase_offset_y,Y\n #_01CEAF: AND.w #$01F8\n #_01CEB2: ASL A\n #_01CEB3: ASL A\n #_01CEB4: ASL A\n #_01CEB5: STA.b $00\n\n #_01CEB7: LDA.b $22\n #_01CEB9: CLC\n #_01CEBA: ADC.w DetectStaircase_offset_x,Y\n #_01CEBD: AND.w #$01F8\n #_01CEC0: LSR A\n #_01CEC1: LSR A\n #_01CEC2: LSR A\n #_01CEC3: ORA.b $00\n\n #_01CEC5: LDX.b $EE\n #_01CEC7: BEQ .upper_layer\n\n #_01CEC9: ORA.w #$1000\n\n; ---------------------------------------------------------\n\n.upper_layer\n #_01CECC: REP #$10\n\n #_01CECE: TAX\n\n #_01CECF: LDA.l $7F2000,X\n #_01CED3: AND.w #$00F0\n #_01CED6: CMP.w #$00F0\n #_01CED9: BEQ .some_sorta_door\n\n #_01CEDB: TXA\n #_01CEDC: CLC\n #_01CEDD: ADC.w DetectStaircase_index_offset,Y\n #_01CEE0: TAX\n\n #_01CEE1: LDA.l $7F2000,X\n #_01CEE5: AND.w #$00F0\n #_01CEE8: CMP.w #$00F0\n #_01CEEB: BNE .reset_missing_key_message_flag\n\n; ---------------------------------------------------------\n\n.some_sorta_door\n #_01CEED: LDA.l $7F2000,X\n #_01CEF1: AND.w #$000F\n #_01CEF4: ASL A\n #_01CEF5: TAY\n #_01CEF6: STY.w $0694\n\n #_01CEF9: LDA.w $19C0,Y\n #_01CEFC: AND.w #$0003\n #_01CEFF: ASL A\n #_01CF00: CMP.b $08\n #_01CF02: BNE .reset_missing_key_message_flag\n\n #_01CF04: LDA.w $1980,Y\n #_01CF07: AND.w #$00FE\n #_01CF0A: CMP.w #$0028\n #_01CF0D: BEQ OperateDashBashWall\n\n #_01CF0F: CMP.w #$001C\n #_01CF12: BEQ .is_key_door\n\n #_01CF14: CMP.w #$001E\n #_01CF17: BNE .not_big_key_door\n\n; ---------------------------------------------------------\n\n #_01CF19: STZ.w $0690\n\n #_01CF1C: STX.w $068E\n\n #_01CF1F: LDY.w $040C\n\n #_01CF22: LDA.l $7EF366\n #_01CF26: AND.w DungeonMask,Y\n #_01CF29: BNE .have_big_key\n\n #_01CF2B: LDA.w $04B8\n #_01CF2E: BNE .proceed_to_not_open_door\n\n #_01CF30: INC.w $04B8\n\n #_01CF33: LDA.w #$007A ; MESSAGE 007A\n #_01CF36: STA.w $1CF0\n\n #_01CF39: SEP #$30\n\n #_01CF3B: JSL Interface_PrepAndDisplayMessage\n\n #_01CF3F: REP #$30\n\n; ---------------------------------------------------------\n\n.proceed_to_not_open_door\n #_01CF41: JMP.w DontOpenDoor\n\n; ---------------------------------------------------------\n\n.reset_missing_key_message_flag\n #_01CF44: STZ.w $04B8\n\n #_01CF47: JMP.w DontOpenDoor\n\n; ---------------------------------------------------------\n\n.not_big_key_door\n #_01CF4A: CMP.w #$001C\n #_01CF4D: BCC .proceed_to_not_open_door\n\n #_01CF4F: CMP.w #$002C\n #_01CF52: BCS .proceed_to_not_open_door\n\n #_01CF54: CMP.w #$002A\n #_01CF57: BEQ .proceed_to_not_open_door\n\n; ---------------------------------------------------------\n\n.is_key_door\n #_01CF59: LDA.l $7EF36F\n #_01CF5D: AND.w #$00FF\n #_01CF60: BEQ .proceed_to_not_open_door\n\n #_01CF62: LDA.l $7EF36F\n #_01CF66: DEC A\n #_01CF67: STA.l $7EF36F\n\n; ---------------------------------------------------------\n\n.have_big_key\n #_01CF6B: STZ.w $0690\n\n #_01CF6E: STX.w $068E\n\n #_01CF71: SEP #$30\n\n #_01CF73: LDA.b #$04\n #_01CF75: STA.b $11\n\n #_01CF77: LDA.b #$14 ; SFX3.14\n #_01CF79: STA.b $00\n\n #_01CF7B: LDX.w $0694\n\n #_01CF7E: LDA.w $19C0,X\n #_01CF81: AND.b #$03\n #_01CF83: TAX\n\n #_01CF84: LDA.l DoorOpenSFXPan,X\n #_01CF88: ORA.b $00\n #_01CF8A: STA.w $012F\n\n #_01CF8D: RTL", + "file": "bank_01.asm" + }, + { + "name": "OperateDashBashWall", + "code": "OperateDashBashWall:\n #_01CF8E: LDA.w $0372\n #_01CF91: AND.w #$00FF\n #_01CF94: BEQ DontOpenDoor\n\n #_01CF96: LDA.w $02F1\n #_01CF99: CMP.w #$003F\n #_01CF9C: BCS DontOpenDoor\n\n; ---------------------------------------------------------\n\n #_01CF9E: STX.w $068E\n\n #_01CFA1: SEP #$30\n\n #_01CFA3: STY.b $00\n\n #_01CFA5: JSL AncillaAdd_DoorDebris\n #_01CFA9: BCS .skip_ancilla\n\n #_01CFAB: LDY.b $00\n\n #_01CFAD: LDA.w $19C0,Y\n #_01CFB0: AND.b #$03\n #_01CFB2: STA.w $03BE,X\n\n #_01CFB5: TXA\n #_01CFB6: ASL A\n #_01CFB7: TAX\n\n; ---------------------------------------------------------\n\n #_01CFB8: REP #$20\n\n #_01CFBA: LDA.w $19A0,Y\n #_01CFBD: AND.w #$007E\n\n #_01CFC0: ASL A\n #_01CFC1: ASL A\n\n #_01CFC2: CLC\n #_01CFC3: ADC.w $062C\n #_01CFC6: STA.w $03B6,X\n\n #_01CFC9: LDA.w $19A0,Y\n #_01CFCC: AND.w #$1F80\n #_01CFCF: LSR A\n #_01CFD0: LSR A\n #_01CFD1: LSR A\n #_01CFD2: LSR A\n #_01CFD3: CLC\n #_01CFD4: ADC.w $062E\n #_01CFD7: STA.w $03BA,X\n\n.skip_ancilla\n #_01CFDA: SEP #$30\n\n #_01CFDC: LDA.b #$1B ; SFX3.1B\n #_01CFDE: STA.w $012F\n\n #_01CFE1: LDA.b #$09\n #_01CFE3: STA.b $11\n\n #_01CFE5: JSL Sprite_RepelDash_long\n\n; ---------------------------------------------------------\n\n#EXIT_01CFE9:\n #_01CFE9: RTL", + "file": "bank_01.asm" + }, + { + "name": "DontOpenDoor", + "code": "DontOpenDoor:\n #_01CFEA: SEP #$30\n\n #_01CFEC: LDA.w $0436\n #_01CFEF: BMI .no_door_draw\n\n #_01CFF1: LDA.b $6C\n #_01CFF3: BNE .no_door_draw\n\n #_01CFF5: LDA.b $23\n #_01CFF7: CMP.b #$0C\n #_01CFF9: BNE .no_door_draw\n\n #_01CFFB: LDY.w $0437\n\n #_01CFFE: LDX.w $0436\n #_01D001: CPX.b $2F\n #_01D003: BEQ .direction_mismatch\n\n #_01D005: LDA.b $2F\n #_01D007: CMP.l CorrespondingDoorOpeningDirection,X\n #_01D00B: BNE .direction_mismatch\n\n #_01D00D: REP #$20\n\n #_01D00F: LDA.w $068C\n #_01D012: ORA.w DungeonMask,Y\n #_01D015: BRA .continue\n\n.direction_mismatch\n #_01D017: REP #$20\n\n #_01D019: LDA.w $068C\n #_01D01C: AND.w DungeonMaskInverted,Y\n\n.continue\n #_01D01F: CMP.w $068C\n #_01D022: BEQ .no_door_draw\n\n #_01D024: STA.w $068C\n\n #_01D027: STZ.b $0C\n\n #_01D029: REP #$10\n\n #_01D02B: LDA.w $0437\n #_01D02E: AND.w #$00FF\n #_01D031: TAY\n\n #_01D032: JSR DrawEyeWatchDoor\n #_01D035: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01D038: LDY.w $0460\n #_01D03B: JSR Underworld_LoadSingleDoorTileType_from_parameter\n\n #_01D03E: LDY.b $0C\n\n #_01D040: LDA.w #$FFFF\n #_01D043: STA.w $1100,Y\n\n #_01D046: SEP #$30\n\n #_01D048: LDA.b #$01\n #_01D04A: STA.b $18\n\n #_01D04C: LDA.b #$15 ; SFX3.15\n #_01D04E: STA.w $012F\n\n #_01D051: RTL", + "file": "bank_01.asm" + }, + { + "name": "SlashSwordAgainstVinesAndDoors", + "code": "SlashSwordAgainstVinesAndDoors:\n #_01D0F5: STZ.b $0C\n\n #_01D0F7: CMP.w #$006C\n #_01D0FA: BEQ .is_vines\n\n #_01D0FC: JMP.w .not_vines\n\n.is_vines\n #_01D0FF: STY.b $0E\n\n #_01D101: CPY.w #$0040\n #_01D104: BCC .vertical_fine\n\n #_01D106: TYA\n #_01D107: AND.w #$000F\n #_01D10A: STA.b $0E\n #_01D10C: TXA\n\n #_01D10D: SEC\n #_01D10E: SBC.w #$0040\n #_01D111: TAX\n\n #_01D112: LDA.l $7F2000,X\n #_01D116: AND.w #$00FC\n #_01D119: CMP.w #$006C\n #_01D11C: BEQ .vertical_fine\n\n #_01D11E: TXA\n #_01D11F: CLC\n #_01D120: ADC.w #$0040\n #_01D123: TAX\n\n.vertical_fine\n #_01D124: LDY.b $0E\n #_01D126: BEQ .horizontal_fine\n\n #_01D128: DEX\n\n #_01D129: LDA.l $7F2000,X\n #_01D12D: AND.w #$00FC\n #_01D130: CMP.w #$006C\n #_01D133: BEQ .horizontal_fine\n\n #_01D135: INX\n\n.horizontal_fine\n #_01D136: TXA\n #_01D137: SEC\n #_01D138: SBC.w #$0041\n #_01D13B: ASL A\n #_01D13C: STA.b $08\n\n #_01D13E: LDA.l $7F2000,X\n #_01D142: PHA\n\n #_01D143: LDA.w #$0202 ; TILETYPE 02\n #_01D146: STA.l $7F2000,X\n #_01D14A: STA.l $7F2040,X\n\n #_01D14E: PLA\n #_01D14F: AND.w #$0003\n #_01D152: ASL A\n #_01D153: TAX\n\n #_01D154: LDA.l VineDoorGFXOffset,X\n #_01D158: TAY\n\n #_01D159: LDX.b $08\n\n #_01D15B: LDA.w #$0004\n #_01D15E: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next\n #_01D160: LDA.w RoomDrawObjectData+0,Y\n #_01D163: STA.l $7E2000,X\n\n #_01D167: LDA.w RoomDrawObjectData+2,Y\n #_01D16A: STA.l $7E2080,X\n\n #_01D16E: LDA.w RoomDrawObjectData+4,Y\n #_01D171: STA.l $7E2100,X\n\n #_01D175: LDA.w RoomDrawObjectData+6,Y\n #_01D178: STA.l $7E2180,X\n\n #_01D17C: TYA\n #_01D17D: CLC\n #_01D17E: ADC.w #$0008\n #_01D181: TAY\n\n #_01D182: INX\n #_01D183: INX\n\n #_01D184: DEC.b $0E\n #_01D186: BNE .next\n\n #_01D188: BRA .run_dma_and_sfx\n\n; ---------------------------------------------------------\n\n.not_vines\n #_01D18A: LDA.l $7F2000,X\n #_01D18E: AND.w #$000F\n #_01D191: ASL A\n #_01D192: TAY\n\n #_01D193: STX.w $068E\n\n #_01D196: LDA.w $1980,Y\n #_01D199: AND.w #$00FE\n #_01D19C: CMP.w #$0032\n #_01D19F: BNE .complete_exit\n\n #_01D1A1: SEP #$20\n\n #_01D1A3: LDA.b #$1B ; SFX3.1B\n #_01D1A5: STA.w $012F\n\n #_01D1A8: REP #$20\n\n #_01D1AA: LDA.w $19A0,Y\n #_01D1AD: STA.b $08\n\n #_01D1AF: TYX\n\n #_01D1B0: LDA.w $068C\n #_01D1B3: ORA.w DungeonMask,X\n #_01D1B6: STA.w $068C\n\n #_01D1B9: LDA.w $0400\n #_01D1BC: ORA.w DungeonMask,X\n #_01D1BF: STA.w $0400\n\n #_01D1C2: STZ.w $0692\n\n #_01D1C5: JSR IndexAndClearCurtainDoor\n\n #_01D1C8: LDY.w $0460\n #_01D1CB: JSR Underworld_LoadSingleDoorTileType_from_parameter\n\n; ---------------------------------------------------------\n\n.run_dma_and_sfx\n #_01D1CE: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01D1D1: SEP #$30\n\n #_01D1D3: LDA.b $08\n #_01D1D5: AND.b #$7F\n #_01D1D7: ASL A\n #_01D1D8: JSL CalculateSFXPan_Arbitrary\n\n #_01D1DC: ORA.b #$1E ; SFX2.1E\n #_01D1DE: STA.w $012E\n\n #_01D1E1: REP #$30\n\n; =========================================================\n\n#RoomDraw_CloseStripes:\n #_01D1E3: LDY.b $0C\n\n #_01D1E5: LDA.w #$FFFF\n #_01D1E8: STA.w $1100,Y\n\n #_01D1EB: SEP #$30\n\n #_01D1ED: LDA.b #$01\n #_01D1EF: STA.b $18\n\n.complete_exit\n #_01D1F1: SEP #$30\n\n #_01D1F3: RTL", + "file": "bank_01.asm" + }, + { + "name": "Bomb_CheckForDestructibles", + "code": "Bomb_CheckForDestructibles:\n #_01D1F4: LDA.b $10\n #_01D1F6: CMP.b #$07\n #_01D1F8: BEQ Bomb_CheckForUWDestructibles\n\n #_01D1FA: JML Overworld_BombTiles32x32\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "Bomb_CheckForUWDestructibles", + "code": "Bomb_CheckForUWDestructibles:\n #_01D1FE: STZ.b $0F\n\n #_01D200: REP #$30\n\n #_01D202: LDA.b $00\n #_01D204: AND.w #$01F8\n #_01D207: ASL A\n #_01D208: ASL A\n #_01D209: ASL A\n #_01D20A: STA.b $04\n\n #_01D20C: LDA.b $02\n #_01D20E: AND.w #$01F8\n #_01D211: LSR A\n #_01D212: LSR A\n #_01D213: LSR A\n #_01D214: ORA.b $04\n #_01D216: SEC\n #_01D217: SBC.w #$0082\n #_01D21A: TAX\n\n #_01D21B: LDY.w #$0002\n\n; ---------------------------------------------------------\n\n.next_check\n #_01D21E: LDA.l $7F2000,X\n #_01D222: AND.w #$00FF\n #_01D225: CMP.w #$0062 ; TILETYPE 62\n #_01D228: BEQ .bombable_floor\n\n #_01D22A: AND.w #$00F0\n #_01D22D: CMP.w #$00F0\n #_01D230: BEQ .is_door\n\n #_01D232: INX\n #_01D233: INX\n\n #_01D234: LDA.l $7F2000,X\n #_01D238: AND.w #$00FF\n #_01D23B: CMP.w #$0062 ; TILETYPE 62\n #_01D23E: BEQ .bombable_floor\n\n #_01D240: AND.w #$00F0\n #_01D243: CMP.w #$00F0\n #_01D246: BEQ .is_door\n\n #_01D248: INX\n #_01D249: INX\n\n #_01D24A: LDA.l $7F2000,X\n #_01D24E: AND.w #$00FF\n #_01D251: CMP.w #$0062 ; TILETYPE 62\n #_01D254: BEQ .bombable_floor\n\n #_01D256: AND.w #$00F0\n #_01D259: CMP.w #$00F0\n #_01D25C: BEQ .is_door\n\n #_01D25E: TXA\n #_01D25F: CLC\n #_01D260: ADC.w #$007C\n #_01D263: TAX\n\n #_01D264: DEY\n #_01D265: BPL .next_check\n\n #_01D267: BMI .exit\n\n.bombable_floor\n #_01D269: JMP.w BlowOpenBombableFloor\n\n; ---------------------------------------------------------\n\n.is_door\n #_01D26C: LDA.l $7F2000,X\n #_01D270: AND.w #$000F\n #_01D273: ASL A\n #_01D274: TAY\n\n #_01D275: LDA.w $1980,Y\n #_01D278: AND.w #$00FE\n #_01D27B: CMP.w #$0028\n #_01D27E: BEQ .bombable_door\n\n #_01D280: CMP.w #$002A\n #_01D283: BEQ .bombable_door\n\n #_01D285: CMP.w #$002E\n #_01D288: BNE .exit\n\n; ---------------------------------------------------------\n\n.bombable_door\n #_01D28A: STX.w $068E\n\n #_01D28D: LDA.b $0E\n #_01D28F: ASL A\n #_01D290: TAX\n\n #_01D291: LDA.w $19A0,Y\n #_01D294: AND.w #$007E\n #_01D297: ASL A\n #_01D298: ASL A\n #_01D299: CLC\n #_01D29A: ADC.w $062C\n #_01D29D: STA.w $03B6,X\n\n #_01D2A0: LDA.w $19A0,Y\n #_01D2A3: AND.w #$1F80\n #_01D2A6: LSR A\n #_01D2A7: LSR A\n #_01D2A8: LSR A\n #_01D2A9: LSR A\n #_01D2AA: CLC\n #_01D2AB: ADC.w $062E\n #_01D2AE: STA.w $03BA,X\n\n #_01D2B1: SEP #$20\n\n #_01D2B3: LDX.b $0E\n\n #_01D2B5: LDA.w $19C0,Y\n #_01D2B8: AND.b #$03\n #_01D2BA: STA.w $03BE,X\n\n #_01D2BD: LDA.b #$1B ; SFX3.1B\n #_01D2BF: STA.w $012F\n\n #_01D2C2: LDA.b #$09\n #_01D2C4: STA.b $11\n\n.exit\n #_01D2C6: SEP #$30\n\n #_01D2C8: RTL", + "file": "bank_01.asm" + }, + { + "name": "BlowOpenBombableFloor", + "code": "BlowOpenBombableFloor:\n #_01D2C9: LDA.b $A0\n #_01D2CB: CMP.w #$0065 ; ROOM 0065\n #_01D2CE: BNE .not_tt_attic\n\n #_01D2D0: LDA.w $0402\n #_01D2D3: ORA.w #$1000\n #_01D2D6: STA.w $0402\n\n.not_tt_attic\n #_01D2D9: LDA.w #$0000\n #_01D2DC: JSL ThievesAttic_DrawLightenedHole\n\n #_01D2E0: SEP #$30\n\n #_01D2E2: LDA.b #$1B ; SFX3.1B\n #_01D2E4: STA.w $012F\n\n #_01D2E7: RTL", + "file": "bank_01.asm" + }, + { + "name": "DrawDoorOpening_Step1", + "code": "DrawDoorOpening_Step1:\n #_01D2E8: LDX.w $19A0,Y\n #_01D2EB: STX.b $08\n\n #_01D2ED: STY.w $0460\n #_01D2F0: STY.w $0694\n\n #_01D2F3: LDA.w $19C0,Y\n #_01D2F6: AND.w #$0003\n #_01D2F9: BNE .not_north_door\n\n #_01D2FB: JMP.w DoorDoorStep1_North\n\n.not_north_door\n #_01D2FE: CMP.w #$0001\n #_01D301: BNE .not_south_door\n\n #_01D303: JMP.w DoorDoorStep1_South\n\n.not_south_door\n #_01D306: CMP.w #$0002\n #_01D309: BNE .not_west_door\n\n #_01D30B: JMP.w DoorDoorStep1_West\n\n.not_west_door\n #_01D30E: JMP.w DoorDoorStep1_East\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DrawShutterDoorSteps", + "code": "DrawShutterDoorSteps:\n #_01D311: LDX.w $19A0,Y\n #_01D314: STX.b $08\n\n #_01D316: STY.w $0460\n #_01D319: STY.w $0694\n\n #_01D31C: LDA.w $19C0,Y\n #_01D31F: AND.w #$0003\n #_01D322: BNE .not_north_door\n\n #_01D324: JMP.w GetDoorDrawDataIndex_North_clean_door_index\n\n.not_north_door\n #_01D327: CMP.w #$0001\n #_01D32A: BNE .not_south_door\n\n #_01D32C: JMP.w GetDoorDrawDataIndex_South_clean_door_index\n\n.not_south_door\n #_01D32F: CMP.w #$0002\n #_01D332: BNE .not_west_door\n\n #_01D334: JMP.w GetDoorDrawDataIndex_West_clean_door_index\n\n.not_west_door\n #_01D337: JMP.w GetDoorDrawDataIndex_East_clean_door_index\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DrawEyeWatchDoor", + "code": "DrawEyeWatchDoor:\n #_01D33A: LDX.w $19A0,Y\n #_01D33D: STX.b $08\n\n #_01D33F: STY.w $0460\n #_01D342: STY.b $04\n #_01D344: STY.w $0694\n\n #_01D347: LDA.w $19C0,Y\n #_01D34A: AND.w #$0003\n #_01D34D: BNE .not_north_door\n\n #_01D34F: JMP.w DrawDoorToTilemap_North\n\n.not_north_door\n #_01D352: CMP.w #$0001\n #_01D355: BNE .not_south_door\n\n #_01D357: JMP.w DrawDoorToTilemap_South\n\n.not_south_door\n #_01D35A: CMP.w #$0002\n #_01D35D: BNE .not_west_door\n\n #_01D35F: JMP.w DrawDoorToTilemap_West\n\n.not_west_door\n #_01D362: JMP.w DrawDoorToTilemap_East\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "IndexAndClearCurtainDoor", + "code": "IndexAndClearCurtainDoor:\n #_01D365: LDX.w $19A0,Y\n #_01D368: STX.b $08\n\n #_01D36A: STY.w $0460\n #_01D36D: STY.w $0694\n\n #_01D370: JMP.w ClearDoorCurtainsFromTilemap\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "IndexAndClearExplodingWall", + "code": "IndexAndClearExplodingWall:\n #_01D373: STZ.w $045E\n #_01D376: STZ.b $0C\n #_01D378: STZ.w $0690\n\n #_01D37B: LDY.w $0456\n #_01D37E: STY.w $0460\n\n #_01D381: LDX.w $19A0,Y\n #_01D384: DEX\n #_01D385: DEX\n #_01D386: STX.b $08\n\n #_01D388: TXA\n #_01D389: STA.w $19A0,Y\n\n #_01D38C: JMP.w ClearExplodingWallFromTilemap\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "OperateShutterDoors", + "code": "OperateShutterDoors:\n #_01D38F: REP #$30\n\n #_01D391: STZ.b $0C\n\n #_01D393: INC.w $0690\n\n #_01D396: LDA.w $0690\n\n #_01D399: LDY.w $0468\n #_01D39C: BNE .shutters_down\n\n #_01D39E: INY\n #_01D39F: INY\n\n #_01D3A0: CMP.w #$0004\n #_01D3A3: BEQ .advance_animation\n\n #_01D3A5: INY\n #_01D3A6: INY\n\n #_01D3A7: CMP.w #$0008\n #_01D3AA: BEQ .advance_animation\n\n.dont_advance_animation\n #_01D3AC: JMP.w .finalize_timer\n\n.shutters_down\n #_01D3AF: LDY.w #$0002\n\n #_01D3B2: CMP.w #$0004\n #_01D3B5: BEQ .advance_animation\n\n #_01D3B7: DEY\n #_01D3B8: DEY\n\n #_01D3B9: CMP.w #$0008\n #_01D3BC: BNE .dont_advance_animation\n\n.advance_animation\n #_01D3BE: STY.w $0692\n\n #_01D3C1: LDY.w #$0000\n\n; ---------------------------------------------------------\n\n.next_door\n #_01D3C4: STY.w $068E\n\n #_01D3C7: LDA.w $1980,Y\n #_01D3CA: AND.w #$00FE\n #_01D3CD: CMP.w #$0044\n #_01D3D0: BEQ .is_shutter\n\n #_01D3D2: CMP.w #$0018\n #_01D3D5: BNE .skip_this_door\n\n.is_shutter\n #_01D3D7: LDA.w $0468\n #_01D3DA: BNE .closing\n\n #_01D3DC: LDA.w $068C\n #_01D3DF: AND.w DungeonMask,Y\n #_01D3E2: BNE .skip_this_door\n\n #_01D3E4: LDA.w $0690\n #_01D3E7: CMP.w #$0008\n #_01D3EA: BNE .skip_sfx\n\n #_01D3EC: PHY\n\n #_01D3ED: SEP #$30\n\n #_01D3EF: LDA.b #$15 ; SFX3.15\n #_01D3F1: STA.w $012F\n\n #_01D3F4: REP #$30\n\n #_01D3F6: PLY\n\n #_01D3F7: LDA.w $068C\n #_01D3FA: ORA.w DungeonMask,Y\n #_01D3FD: BRA .flag_door\n\n; ---------------------------------------------------------\n\n.closing\n #_01D3FF: LDA.w $068C\n #_01D402: AND.w DungeonMask,Y\n #_01D405: BEQ .skip_this_door\n\n #_01D407: LDA.w $0690\n #_01D40A: CMP.w #$0008\n #_01D40D: BNE .skip_sfx\n\n #_01D40F: PHY\n\n #_01D410: SEP #$30\n\n #_01D412: LDA.b #$16 ; SFX3.16\n #_01D414: STA.w $012F\n\n #_01D417: REP #$30\n\n #_01D419: PLY\n\n #_01D41A: LDA.w $068C\n #_01D41D: AND.w DungeonMaskInverted,Y\n\n; ---------------------------------------------------------\n\n.flag_door\n #_01D420: STA.w $068C\n\n.skip_sfx\n #_01D423: JSR DrawShutterDoorSteps\n #_01D426: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01D429: LDA.w $0690\n #_01D42C: CMP.w #$0008\n #_01D42F: BNE .skip_this_door\n\n #_01D431: LDY.w $068E\n #_01D434: JSR Underworld_LoadSingleDoorTileType_from_parameter\n\n.skip_this_door\n #_01D437: LDY.w $068E\n #_01D43A: INY\n #_01D43B: INY\n #_01D43C: CPY.w #$0018\n #_01D43F: BEQ .done\n\n #_01D441: JMP.w .next_door\n\n; ---------------------------------------------------------\n\n.done\n #_01D444: LDY.b $0C\n #_01D446: BEQ .no_stripes\n\n #_01D448: LDA.w #$FFFF\n #_01D44B: STA.w $1100,Y\n\n #_01D44E: SEP #$30\n\n #_01D450: LDA.b #$01\n #_01D452: STA.b $18\n #_01D454: STA.w $0710\n\n.finalize_timer\n #_01D457: SEP #$20\n\n #_01D459: LDA.w $0690\n #_01D45C: CMP.b #$10\n #_01D45E: BNE .exit\n\n.no_stripes\n #_01D460: SEP #$20\n\n #_01D462: STZ.b $11\n #_01D464: STZ.b $18\n\n.exit\n #_01D466: SEP #$30\n\n #_01D468: RTL", + "file": "bank_01.asm" + }, + { + "name": "OpenCrackedDoor", + "code": "OpenCrackedDoor:\n #_01D469: REP #$30\n\n #_01D46B: LDA.w #$0010\n #_01D46E: STA.w $0690\n\n #_01D471: LDY.w #$0004\n #_01D474: BRA .continue\n\n; =========================================================\n\n#UnlockKeyDoor_Main:\n #_01D476: REP #$30\n\n #_01D478: LDY.w #$0002\n\n #_01D47B: INC.w $0690\n\n #_01D47E: LDA.w $0690\n #_01D481: CMP.w #$0004\n #_01D484: BEQ .draw_part_1\n\n #_01D486: INY\n #_01D487: INY\n\n #_01D488: CMP.w #$000C\n #_01D48B: BNE .no_drawing\n\n; ---------------------------------------------------------\n\n.continue\n #_01D48D: LDX.w $068E\n\n #_01D490: LDA.l $7F2000,X\n #_01D494: AND.w #$0007\n #_01D497: ASL A\n #_01D498: TAX\n\n #_01D499: LDA.w $068C\n #_01D49C: ORA.w DungeonMask,X\n #_01D49F: STA.w $068C\n\n #_01D4A2: LDA.w $0400\n #_01D4A5: ORA.w DungeonMask,X\n #_01D4A8: STA.w $0400\n\n; ---------------------------------------------------------\n\n.draw_part_1\n #_01D4AB: STY.w $0692\n\n #_01D4AE: STZ.b $0C\n\n #_01D4B0: LDX.w $068E\n\n #_01D4B3: LDA.l $7F2000,X\n #_01D4B7: AND.w #$000F\n #_01D4BA: ASL A\n #_01D4BB: TAY\n\n #_01D4BC: JSR DrawDoorOpening_Step1\n #_01D4BF: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01D4C2: LDY.b $0C\n\n #_01D4C4: LDA.w #$FFFF\n #_01D4C7: STA.w $1100,Y\n\n #_01D4CA: SEP #$30\n\n #_01D4CC: LDA.b #$15 ; SFX3.15\n #_01D4CE: STA.w $012F\n\n #_01D4D1: LDA.b #$01\n #_01D4D3: STA.b $18\n\n #_01D4D5: REP #$30\n\n; ---------------------------------------------------------\n\n.no_drawing\n #_01D4D7: LDA.w $0690\n #_01D4DA: CMP.w #$0010\n #_01D4DD: BNE .exit\n\n #_01D4DF: JSR Underworld_LoadSingleDoorTileType_from_wram_index\n\n #_01D4E2: LDX.w $068E\n\n #_01D4E5: LDA.l $7F2000,X\n #_01D4E9: AND.w #$00FF\n #_01D4EC: CMP.w #$00F0 ; TILETYPE F0\n #_01D4EF: BCC .reset_submodule\n\n #_01D4F1: AND.w #$000F\n #_01D4F4: ASL A\n #_01D4F5: TAY\n\n #_01D4F6: LDA.w $1980,Y\n #_01D4F9: AND.w #$00FF\n #_01D4FC: CMP.w #$0020\n #_01D4FF: BCC .reset_submodule\n\n #_01D501: CMP.w #$0028\n #_01D504: BCS .reset_submodule\n\n #_01D506: JSR DrawCompletelyOpenDoor\n\n.reset_submodule\n #_01D509: SEP #$20\n\n #_01D50B: STZ.b $11\n\n.exit\n #_01D50D: SEP #$30\n\n #_01D50F: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadSingleDoorTileType_from_wram_index", + "code": "Underworld_LoadSingleDoorTileType_from_wram_index:\n #_01D510: LDX.w $068E\n\n #_01D513: LDA.l $7F2000,X\n #_01D517: AND.w #$000F\n #_01D51A: ASL A\n #_01D51B: TAY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadSingleDoorTileType_from_parameter", + "code": "Underworld_LoadSingleDoorTileType_from_parameter:\n #_01D51C: JSR Underworld_LoadSingleDoorAttribute\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LoadSingleDoorTileType", + "code": "Underworld_LoadSingleDoorTileType:\n #_01D51F: LDX.w $044E\n #_01D522: BEQ .next_loop\n\n; ---------------------------------------------------------\n\n #_01D524: LDY.w #$0000\n\n.next_a\n #_01D527: LDX.w $06C0,Y\n\n #_01D52A: LDA.l $7F2000,X\n #_01D52E: AND.w #$00F0\n #_01D531: CMP.w #$0080\n #_01D534: BNE .skip_a\n\n #_01D536: LDA.l $7F2000,X\n #_01D53A: ORA.w #$1010\n #_01D53D: STA.l $7F2000,X\n #_01D541: STA.l $7F2040,X\n\n #_01D545: INY\n #_01D546: INY\n #_01D547: CPY.w $044E\n #_01D54A: BNE .next_a\n\n #_01D54C: BRA .next_loop\n\n.skip_a\n #_01D54E: LDA.l $7F3000,X\n #_01D552: ORA.w #$1010\n #_01D555: STA.l $7F3000,X\n #_01D559: STA.l $7F3040,X\n\n #_01D55D: INY\n #_01D55E: INY\n #_01D55F: CPY.w $044E\n #_01D562: BNE .next_a\n\n; ---------------------------------------------------------\n\n.next_loop\n #_01D564: LDX.w $0450\n #_01D567: BEQ .exit\n\n #_01D569: LDY.w #$0000\n\n.next_b\n #_01D56C: LDX.w $06D0,Y\n\n #_01D56F: LDA.l $7F2000,X\n #_01D573: AND.w #$00F0\n #_01D576: CMP.w #$0080\n #_01D579: BNE .skip_b\n\n #_01D57B: LDA.l $7F2000,X\n #_01D57F: ORA.w #$2020\n #_01D582: STA.l $7F2000,X\n #_01D586: STA.l $7F2040,X\n\n #_01D58A: INY\n #_01D58B: INY\n #_01D58C: CPY.w $0450\n #_01D58F: BNE .next_b\n\n #_01D591: BRA .exit\n\n.skip_b\n #_01D593: LDA.l $7F3000,X\n #_01D597: ORA.w #$2020\n #_01D59A: STA.l $7F3000,X\n #_01D59E: STA.l $7F3040,X\n\n #_01D5A2: INY\n #_01D5A3: INY\n #_01D5A4: CPY.w $0450\n #_01D5A7: BNE .next_b\n\n.exit\n #_01D5A9: RTS", + "file": "bank_01.asm" + }, + { + "name": "DrawCompletelyOpenDoor", + "code": "DrawCompletelyOpenDoor:\n #_01D5AA: LDA.w #$3030 ; TILETYPE 30\n #_01D5AD: STA.b $00\n\n #_01D5AF: LDY.w #$0000\n\n #_01D5B2: LDX.w $0438\n #_01D5B5: BEQ .skip_a\n\n.next_a\n #_01D5B7: LDA.b $00\n #_01D5B9: CLC\n #_01D5BA: ADC.w #$0101\n #_01D5BD: STA.b $00\n\n #_01D5BF: INY\n #_01D5C0: INY\n #_01D5C1: CPY.w $0438\n #_01D5C4: BNE .next_a\n\n; ---------------------------------------------------------\n\n.skip_a\n #_01D5C6: CPY.w $047E\n #_01D5C9: BEQ .skip_b\n\n.next_b\n #_01D5CB: LDX.w $06B0,Y\n\n #_01D5CE: LDA.w #$5E5E ; TILETYPE 5E\n #_01D5D1: STA.l $7F2001,X\n\n #_01D5D5: LDA.b $00\n #_01D5D7: STA.l $7F2041,X\n\n #_01D5DB: CLC\n #_01D5DC: ADC.w #$0101\n #_01D5DF: STA.b $00\n\n #_01D5E1: LDA.w #$0000 ; TILETYPE 00\n #_01D5E4: STA.l $7F2081,X\n #_01D5E8: STA.l $7F20C1,X\n\n #_01D5EC: INY\n #_01D5ED: INY\n #_01D5EE: CPY.w $047E\n #_01D5F1: BNE .next_b\n\n; ---------------------------------------------------------\n\n.skip_b\n #_01D5F3: CPY.w $0482\n #_01D5F6: BEQ .skip_c\n\n.next_c\n #_01D5F8: LDX.w $06B0,Y\n\n #_01D5FB: LDA.w #$5F5F ; TILETYPE 5F\n #_01D5FE: STA.l $7F2001,X\n\n #_01D602: LDA.b $00\n #_01D604: STA.l $7F2041,X\n\n #_01D608: CLC\n #_01D609: ADC.w #$0101\n #_01D60C: STA.b $00\n\n #_01D60E: LDA.w #$0000 ; TILETYPE 00\n #_01D611: STA.l $7F2081,X\n #_01D615: STA.l $7F20C1,X\n\n #_01D619: INY\n #_01D61A: INY\n #_01D61B: CPY.w $0482\n #_01D61E: BNE .next_c\n\n; ---------------------------------------------------------\n\n.skip_c\n #_01D620: CPY.w $04A2\n #_01D623: BEQ .skip_d\n\n.next_d\n #_01D625: LDA.b $00\n #_01D627: CLC\n #_01D628: ADC.w #$0101\n #_01D62B: STA.b $00\n\n #_01D62D: INY\n #_01D62E: INY\n #_01D62F: CPY.w $04A2\n #_01D632: BNE .next_d\n\n; ---------------------------------------------------------\n\n.skip_d\n #_01D634: CPY.w $04A4\n #_01D637: BEQ .skip_e\n\n.next_e\n #_01D639: LDA.b $00\n #_01D63B: CLC\n #_01D63C: ADC.w #$0101\n #_01D63F: STA.b $00\n\n #_01D641: INY\n #_01D642: INY\n #_01D643: CPY.w $04A4\n #_01D646: BNE .next_e\n\n; ---------------------------------------------------------\n\n.skip_e\n #_01D648: LDA.b $00\n #_01D64A: AND.w #$0707\n #_01D64D: ORA.w #$3434\n #_01D650: STA.b $00\n\n #_01D652: CPY.w $043A\n #_01D655: BEQ .skip_f\n\n.next_f\n #_01D657: LDA.b $00\n #_01D659: CLC\n #_01D65A: ADC.w #$0101\n #_01D65D: STA.b $00\n\n #_01D65F: INY\n #_01D660: INY\n #_01D661: CPY.w $043A\n #_01D664: BNE .next_f\n\n; ---------------------------------------------------------\n\n.skip_f\n #_01D666: CPY.w $0480\n #_01D669: BEQ .skip_g\n\n.next_g\n #_01D66B: LDX.w $06B0,Y\n\n #_01D66E: LDA.w #$5E5E ; TILETYPE 5E\n #_01D671: STA.l $7F2001,X\n\n #_01D675: LDA.b $00\n #_01D677: STA.l $7F2041,X\n\n #_01D67B: CLC\n #_01D67C: ADC.w #$0101\n #_01D67F: STA.b $00\n\n #_01D681: LDA.w #$0000 ; TILETYPE 00\n #_01D684: STA.l $7F2081,X\n #_01D688: STA.l $7F20C1,X\n\n #_01D68C: INY\n #_01D68D: INY\n #_01D68E: CPY.w $0480\n #_01D691: BNE .next_g\n\n; ---------------------------------------------------------\n\n.skip_g\n #_01D693: CPY.w $0484\n #_01D696: BEQ .exit\n\n.next_h\n #_01D698: LDX.w $06B0,Y\n\n #_01D69B: LDA.w #$5F5F ; TILETYPE 5F\n #_01D69E: STA.l $7F2001,X\n\n #_01D6A2: LDA.b $00\n #_01D6A4: STA.l $7F2041,X\n\n #_01D6A8: CLC\n #_01D6A9: ADC.w #$0101\n #_01D6AC: STA.b $00\n\n #_01D6AE: LDA.w #$0000 ; TILETYPE 00\n #_01D6B1: STA.l $7F2081,X\n #_01D6B5: STA.l $7F20C1,X\n\n #_01D6B9: INY\n #_01D6BA: INY\n #_01D6BB: CPY.w $0484\n #_01D6BE: BNE .next_h\n\n.exit\n #_01D6C0: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_ClearAwayExplodingWall", + "code": "Underworld_ClearAwayExplodingWall:\n #_01D6C1: LDA.b #$06\n #_01D6C3: STA.w $02E4\n #_01D6C6: STA.w $0FC1\n\n #_01D6C9: CMP.l $7F0000\n #_01D6CD: BNE .exit\n\n #_01D6CF: REP #$30\n\n #_01D6D1: JSR IndexAndClearExplodingWall\n #_01D6D4: JSR ClearAndStripeExplodingWall\n\n #_01D6D7: LDA.w #$FFFF\n #_01D6DA: STA.w $1100,Y\n #_01D6DD: STA.w $0710\n\n #_01D6E0: INC.w $0454\n #_01D6E3: INC.w $0454\n\n #_01D6E6: LDA.w $0454\n #_01D6E9: CMP.w #$0015\n #_01D6EC: BNE .trigger_transfer\n\n #_01D6EE: LDY.w $0456\n\n #_01D6F1: LDA.w $068C\n #_01D6F4: ORA.w DungeonMask,Y\n #_01D6F7: STA.w $068C\n\n #_01D6FA: LDA.w $0400\n #_01D6FD: ORA.w DungeonMask,Y\n #_01D700: STA.w $0400\n\n; ---------------------------------------------------------\n\n #_01D703: LDX.w #$0001\n\n #_01D706: LDA.w $19C0,Y\n\n #_01D709: LDY.w #$0100\n #_01D70C: AND.w #$0002\n #_01D70F: BEQ .not_horizontal_door\n\n #_01D711: LDY.w #$0001\n #_01D714: DEX\n\n.not_horizontal_door\n #_01D715: TYA\n #_01D716: ORA.w $0452\n #_01D719: STA.w $0452\n\n #_01D71C: LDA.b $A6,X\n #_01D71E: ORA.w #$0002\n #_01D721: STA.b $A6,X\n\n #_01D723: LDA.b $A6\n #_01D725: STA.l $7EC19C\n\n #_01D729: LDY.w $0456\n #_01D72C: JSR Underworld_DoorLoadBlastWallAttribute\n\n #_01D72F: STZ.w $0454\n #_01D732: STZ.w $0456\n\n #_01D735: SEP #$30\n\n #_01D737: JSL Underworld_FlagRoomData_Quadrants\n\n #_01D73B: STZ.w $02E4\n #_01D73E: STZ.w $0FC1\n\n; ---------------------------------------------------------\n\n.trigger_transfer\n #_01D741: SEP #$30\n\n #_01D743: LDA.b #$03\n #_01D745: STA.b $18\n\n.exit\n #_01D747: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_CheckForAndIDLiftableTile", + "code": "Underworld_CheckForAndIDLiftableTile:\n #_01D748: REP #$30\n\n #_01D74A: LDA.b $2F\n #_01D74C: AND.w #$00FF\n #_01D74F: TAX\n\n #_01D750: LDA.b $20\n #_01D752: CLC\n #_01D753: ADC.l .offset_y,X\n #_01D757: AND.w #$01F8\n #_01D75A: ASL A\n #_01D75B: ASL A\n #_01D75C: ASL A\n #_01D75D: STA.b $06\n\n #_01D75F: LDA.b $22\n #_01D761: CLC\n #_01D762: ADC.l .offset_x,X\n #_01D766: AND.w #$01F8\n #_01D769: LSR A\n #_01D76A: LSR A\n #_01D76B: LSR A\n #_01D76C: ORA.b $06\n #_01D76E: STA.b $06\n\n; ---------------------------------------------------------\n\n #_01D770: LDA.b $EE\n #_01D772: AND.w #$00FF\n #_01D775: BEQ .upper_layer\n\n #_01D777: LDA.b $06\n #_01D779: ORA.w #$1000\n #_01D77C: STA.b $06\n\n.upper_layer\n #_01D77E: LDX.b $06\n\n #_01D780: LDA.l $7F2000,X\n #_01D784: AND.w #$00F0\n #_01D787: CMP.w #$0070\n #_01D78A: BNE .use_tile_here\n\n #_01D78C: LDA.l $7F2000,X\n #_01D790: AND.w #$000F\n #_01D793: ASL A\n #_01D794: TAX\n\n #_01D795: LDA.w $0500,X\n #_01D798: BEQ .use_tile_here\n\n #_01D79A: LDY.w #$0055\n\n #_01D79D: AND.w #$F0F0\n #_01D7A0: CMP.w #$2020\n #_01D7A3: BEQ .is_pot\n\n #_01D7A5: LDA.w $0500,X\n #_01D7A8: AND.w #$000F\n #_01D7AB: ASL A\n #_01D7AC: TAX\n\n #_01D7AD: LDA.l .tile_01d9e0,X\n #_01D7B1: TAY\n\n.is_pot\n #_01D7B2: TYA\n\n #_01D7B3: SEP #$31\n\n #_01D7B5: RTL", + "file": "bank_01.asm" + }, + { + "name": "PushBlock_Main", + "code": "PushBlock_Main:\n #_01D7C8: LDA.w $0500,Y\n #_01D7CB: BEQ .to_next\n\n #_01D7CD: CMP.w #$0001\n #_01D7D0: BNE .no_hole\n\n #_01D7D2: JSR RoomDraw_16x16Single\n\n #_01D7D5: LDX.w $0474\n\n #_01D7D8: LDA.w $0540,Y\n #_01D7DB: CLC\n #_01D7DC: ADC.l .offset,X\n #_01D7E0: STA.w $0540,Y\n\n #_01D7E3: BRA .advance_block_ai\n\n; ---------------------------------------------------------\n\n.no_hole\n #_01D7E5: CMP.w #$0002\n #_01D7E8: BNE .skip_interaction\n\n #_01D7EA: SEP #$30\n\n #_01D7EC: JSL PushBlock_Slide\n\n #_01D7F0: REP #$30\n\n #_01D7F2: LDY.w $042C\n\n #_01D7F5: LDA.w $0500,Y\n #_01D7F8: CMP.w #$0003\n #_01D7FB: BNE .to_next\n\n #_01D7FD: JSR PushBlock_CheckForPit\n\n #_01D800: BRA .advance_block_ai\n\n; ---------------------------------------------------------\n\n.skip_interaction\n #_01D802: CMP.w #$0004\n #_01D805: BNE .to_next\n\n #_01D807: SEP #$30\n\n #_01D809: JSL PushBlock_HandleFalling\n\n #_01D80D: BRA .to_next\n\n; ---------------------------------------------------------\n\n.advance_block_ai\n #_01D80F: LDX.w $042C\n\n #_01D812: INC.w $0500,X\n\n.to_next\n #_01D815: INC.w $042C\n #_01D818: INC.w $042C\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "PushBlock_Handler", + "code": "PushBlock_Handler:\n #_01D81B: REP #$30\n\n #_01D81D: LDY.w $042C\n #_01D820: CPY.w $0478\n #_01D823: BNE PushBlock_Main\n\n #_01D825: SEP #$30\n\n #_01D827: RTL", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_16x16Single", + "code": "RoomDraw_16x16Single:\n #_01D828: LDX.w $1000\n\n #_01D82B: LDA.w $0560,Y\n #_01D82E: STA.w $1006,X\n\n #_01D831: LDA.w $0580,Y\n #_01D834: STA.w $100C,X\n\n #_01D837: LDA.w $05A0,Y\n #_01D83A: STA.w $1012,X\n\n #_01D83D: LDA.w $05C0,Y\n #_01D840: STA.w $1018,X\n\n #_01D843: LDA.w $0540,Y\n #_01D846: AND.w #$3FFF\n #_01D849: TAX\n\n #_01D84A: LDA.w $0560,Y\n #_01D84D: STA.l $7E2000,X\n\n #_01D851: LDA.w $0580,Y\n #_01D854: STA.l $7E2080,X\n\n #_01D858: LDA.w $05A0,Y\n #_01D85B: STA.l $7E2002,X\n\n #_01D85F: LDA.w $05C0,Y\n #_01D862: STA.l $7E2082,X\n\n #_01D866: AND.w #$03FF\n #_01D869: TAX\n\n #_01D86A: LDA.l $7EFE00,X\n #_01D86E: AND.w #$00FF\n #_01D871: STA.b $00\n #_01D873: STA.b $01\n\n #_01D875: LDA.w $0540,Y\n #_01D878: AND.w #$3FFF\n #_01D87B: LSR A\n #_01D87C: TAX\n\n #_01D87D: LDA.b $00\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_16x16Single_stripe_inited", + "code": "RoomDraw_16x16Single_stripe_inited:\n #_01D87F: STA.l $7F2000,X\n #_01D883: STA.l $7F2040,X\n\n; ---------------------------------------------------------\n\n #_01D887: LDX.w $1000\n\n #_01D88A: LDA.w #$0000\n #_01D88D: JSR RoomDraw_16x16SingleSingleTileStripe\n #_01D890: STA.w $1002,X\n\n #_01D893: LDA.w #$0080\n #_01D896: JSR RoomDraw_16x16SingleSingleTileStripe\n #_01D899: STA.w $1008,X\n\n #_01D89C: LDA.w #$0002\n #_01D89F: JSR RoomDraw_16x16SingleSingleTileStripe\n #_01D8A2: STA.w $100E,X\n\n #_01D8A5: LDA.w #$0082\n #_01D8A8: JSR RoomDraw_16x16SingleSingleTileStripe\n #_01D8AB: STA.w $1014,X\n\n; ---------------------------------------------------------\n\n #_01D8AE: LDA.w #$0100\n #_01D8B1: STA.w $1004,X\n #_01D8B4: STA.w $100A,X\n #_01D8B7: STA.w $1010,X\n #_01D8BA: STA.w $1016,X\n\n #_01D8BD: LDA.w #$FFFF\n #_01D8C0: STA.w $101A,X\n\n #_01D8C3: TXA\n #_01D8C4: CLC\n #_01D8C5: ADC.w #$0018\n #_01D8C8: STA.w $1000\n\n #_01D8CB: SEP #$20\n\n #_01D8CD: LDA.b #$01\n #_01D8CF: STA.b $14\n\n #_01D8D1: REP #$30\n\n #_01D8D3: RTS", + "file": "bank_01.asm" + }, + { + "name": "PushBlock_CheckForPit", + "code": "PushBlock_CheckForPit:\n #_01D8D4: LDA.w $0540,Y\n #_01D8D7: AND.w #$4000\n #_01D8DA: BNE .lower_layer\n\n #_01D8DC: LDA.w $0641\n #_01D8DF: EOR.w #$0001\n #_01D8E2: STA.w $0641\n\n.lower_layer\n #_01D8E5: LDA.w $0540,Y\n #_01D8E8: AND.w #$3FFF\n #_01D8EB: LSR A\n #_01D8EC: TAX\n\n #_01D8ED: LDA.l $7F2000,X\n #_01D8F1: AND.w #$00FF\n #_01D8F4: CMP.w #$0020 ; TILETYPE 20\n #_01D8F7: BEQ .play_sfx_and_done\n\n; ---------------------------------------------------------\n\n #_01D8F9: PHA\n #_01D8FA: PHY\n #_01D8FB: PHX\n\n #_01D8FC: LDX.w $1000\n\n #_01D8FF: LDA.w #$0922\n #_01D902: STA.w $1006,X\n\n #_01D905: INC A\n #_01D906: STA.w $1012,X\n\n #_01D909: LDA.w #$0932\n #_01D90C: STA.w $100C,X\n\n #_01D90F: INC A\n #_01D910: STA.w $1018,X\n\n #_01D913: LDA.w $0540,Y\n #_01D916: AND.w #$3FFF\n #_01D919: TAX\n\n #_01D91A: LDA.w #$0922\n #_01D91D: STA.l $7E2000,X\n\n #_01D921: INC A\n #_01D922: STA.l $7E2002,X\n\n #_01D926: LDA.w #$0932\n #_01D929: STA.l $7E2080,X\n\n #_01D92D: INC A\n #_01D92E: STA.l $7E2082,X\n\n; ---------------------------------------------------------\n\n #_01D932: SEP #$20\n\n #_01D934: STY.b $72\n\n #_01D936: LDX.w #$0001\n\n #_01D939: LDA.w $05FC,X\n #_01D93C: DEC A\n #_01D93D: ASL A\n #_01D93E: CMP.b $72\n #_01D940: BEQ .this_block\n\n #_01D942: LDX.w #$0000\n\n.this_block\n #_01D945: STZ.w $05FC,X\n\n; ---------------------------------------------------------\n\n #_01D948: REP #$20\n\n #_01D94A: PLX\n #_01D94B: PLY\n #_01D94C: PLA\n\n #_01D94D: CMP.w #$0023\n #_01D950: BNE .go_negative\n\n #_01D952: LDA.w $0468\n #_01D955: EOR.w #$0001\n #_01D958: STA.w $0466\n\n #_01D95B: LDA.w #$0004\n #_01D95E: BRA .proceed\n\n; ---------------------------------------------------------\n\n.go_negative\n #_01D960: LDA.w #$FFFF\n\n.proceed\n #_01D963: STA.w $0500,Y\n\n #_01D966: LDA.w #$2727\n #_01D969: JMP.w RoomDraw_16x16Single_stripe_inited\n\n; ---------------------------------------------------------\n\n.play_sfx_and_done\n #_01D96C: SEP #$20\n\n #_01D96E: LDA.b #$20 ; SFX2.20\n #_01D970: STA.w $012E\n\n #_01D973: REP #$20\n\n #_01D975: LDY.w $042C\n #_01D978: LDX.w $0520,Y\n\n #_01D97B: LDA.l $7EC000\n #_01D97F: AND.w #$00FF\n #_01D982: STA.l $7EF940,X\n\n #_01D986: LDA.w $0540,Y\n #_01D989: STA.l $7EF942,X\n\n #_01D98D: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_16x16SingleSingleTileStripe", + "code": "RoomDraw_16x16SingleSingleTileStripe:\n #_01D98E: STA.b $0E\n\n #_01D990: LDA.w $0540,Y\n #_01D993: AND.w #$3FFF\n #_01D996: CLC\n #_01D997: ADC.b $0E\n #_01D999: STA.b $0E\n\n #_01D99B: AND.w #$0040\n #_01D99E: LSR A\n #_01D99F: LSR A\n #_01D9A0: LSR A\n #_01D9A1: LSR A\n #_01D9A2: XBA\n #_01D9A3: STA.b $00\n\n #_01D9A5: LDA.b $0E\n #_01D9A7: AND.w #$303F\n #_01D9AA: LSR A\n #_01D9AB: ORA.b $00\n #_01D9AD: STA.b $00\n\n #_01D9AF: LDA.b $0E\n #_01D9B1: AND.w #$0F80\n #_01D9B4: LSR A\n #_01D9B5: LSR A\n #_01D9B6: ORA.b $00\n #_01D9B8: XBA\n\n #_01D9B9: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LiftAndReplaceLiftable", + "code": "Underworld_LiftAndReplaceLiftable:\n #_01D9EC: REP #$30\n\n #_01D9EE: LDA.b $2F\n #_01D9F0: AND.w #$00FF\n #_01D9F3: TAX\n\n #_01D9F4: LDA.b $20\n #_01D9F6: CLC\n #_01D9F7: ADC.l .offset_y,X\n #_01D9FB: STA.b $00\n #_01D9FD: STA.b $C8\n\n #_01D9FF: AND.w #$01F8\n #_01DA02: ASL A\n #_01DA03: ASL A\n #_01DA04: ASL A\n #_01DA05: STA.b $06\n\n #_01DA07: LDA.b $22\n #_01DA09: CLC\n #_01DA0A: ADC.l .offset_x,X\n #_01DA0E: STA.b $02\n #_01DA10: STA.b $CA\n\n #_01DA12: AND.w #$01F8\n #_01DA15: LSR A\n #_01DA16: LSR A\n #_01DA17: LSR A\n #_01DA18: TSB.b $06\n\n #_01DA1A: LDA.b $EE\n #_01DA1C: AND.w #$00FF\n #_01DA1F: BEQ .upper_layer\n\n #_01DA21: LDA.b $06\n #_01DA23: ORA.w #$1000\n #_01DA26: STA.b $06\n\n; ---------------------------------------------------------\n\n.upper_layer\n #_01DA28: LDX.b $06\n\n #_01DA2A: LDA.l $7F2000,X\n #_01DA2E: AND.w #$000F\n #_01DA31: ASL A\n #_01DA32: TAY\n\n #_01DA33: LDA.w $0500,Y\n #_01DA36: AND.w #$F0F0\n #_01DA39: CMP.w #$1010\n #_01DA3C: BNE .check_if_hole\n\n #_01DA3E: LDA.w $0500,Y\n #_01DA41: PHA\n\n #_01DA42: STY.w $042C\n\n #_01DA45: LDA.w $0540,Y\n #_01DA48: JSR RevealPotItem\n\n #_01DA4B: LDY.w $042C\n #_01DA4E: JSR RoomDraw_16x16Single\n\n #_01DA51: PLA\n #_01DA52: AND.w #$000F\n #_01DA55: ASL A\n #_01DA56: TAX\n\n #_01DA57: LDA.l .tile_01d9e0,X\n #_01DA5B: STA.b $06\n\n #_01DA5D: BRA .finish_up\n\n; ---------------------------------------------------------\n\n.check_if_hole\n #_01DA5F: CMP.w #$2020\n #_01DA62: BNE FAIL_01DAB6\n\n #_01DA64: LDA.w $0500,Y\n #_01DA67: AND.w #$000F\n #_01DA6A: ASL A\n #_01DA6B: STA.b $00\n\n #_01DA6D: TYA\n #_01DA6E: SEC\n #_01DA6F: SBC.b $00\n\n; =========================================================\n\n#ThievesAttic_DrawLightenedHole:\n #_01DA71: STA.w $042C\n\n #_01DA74: PHA\n\n #_01DA75: TAY\n #_01DA76: PHY\n\n #_01DA77: LDA.w $0540,Y\n #_01DA7A: JSR RevealPotItem\n\n #_01DA7D: PLY\n #_01DA7E: JSR RoomDraw_16x16Single\n\n #_01DA81: INC.w $042C\n #_01DA84: INC.w $042C\n\n #_01DA87: LDY.w $042C\n #_01DA8A: JSR RoomDraw_16x16Single\n\n #_01DA8D: INC.w $042C\n #_01DA90: INC.w $042C\n\n #_01DA93: LDY.w $042C\n #_01DA96: JSR RoomDraw_16x16Single\n\n #_01DA99: INC.w $042C\n #_01DA9C: INC.w $042C\n\n #_01DA9F: LDY.w $042C\n #_01DAA2: JSR RoomDraw_16x16Single\n\n #_01DAA5: LDA.w #$5555\n #_01DAA8: STA.b $06\n\n #_01DAAA: PLA\n #_01DAAB: STA.w $042C\n\n; ---------------------------------------------------------\n\n.finish_up\n #_01DAAE: JSR ManipBlock_Something\n\n #_01DAB1: LDA.b $06\n\n #_01DAB3: SEP #$30\n\n #_01DAB5: RTL", + "file": "bank_01.asm" + }, + { + "name": "FAIL_01DAB6", + "code": "FAIL_01DAB6:\n #_01DAB6: SEP #$30\n\n #_01DAB8: LDA.b #$00\n\n #_01DABA: RTL", + "file": "bank_01.asm" + }, + { + "name": "HandleItemTileAction_Underworld", + "code": "HandleItemTileAction_Underworld:\n #_01DABB: REP #$30\n\n #_01DABD: LDA.w $0301\n #_01DAC0: AND.w #$0002\n #_01DAC3: BEQ FAIL_01DAB6\n\n #_01DAC5: LDA.b $00\n #_01DAC7: AND.w #$01F8\n #_01DACA: ASL A\n #_01DACB: ASL A\n #_01DACC: ASL A\n #_01DACD: ADC.b $02\n #_01DACF: STA.b $06\n\n #_01DAD1: LDA.b $EE\n #_01DAD3: AND.w #$00FF\n #_01DAD6: BEQ .upper_layer\n\n #_01DAD8: LDA.b $06\n #_01DADA: ORA.w #$1000\n #_01DADD: STA.b $06\n\n.upper_layer\n #_01DADF: LDX.b $06\n\n #_01DAE1: LDA.l $7F2000,X\n #_01DAE5: AND.w #$00F0\n #_01DAE8: CMP.w #$0070\n #_01DAEB: BNE FAIL_01DAB6\n\n #_01DAED: LDA.l $7F2000,X\n #_01DAF1: AND.w #$000F\n #_01DAF4: ASL A\n #_01DAF5: TAY\n\n #_01DAF6: LDA.w $0500,Y\n #_01DAF9: AND.w #$F0F0\n #_01DAFC: CMP.w #$4040\n #_01DAFF: BNE .not_hammer_pegs\n\n #_01DB01: LDA.w $0500,Y\n #_01DB04: PHA\n\n #_01DB05: STY.w $042C\n\n #_01DB08: JSR RoomDraw_16x16Single\n\n #_01DB0B: PLA\n\n #_01DB0C: SEP #$30\n\n #_01DB0E: LDA.b #$11 ; SFX2.11\n #_01DB10: STA.w $012E\n\n #_01DB13: LDA.b #$00\n\n #_01DB15: RTL", + "file": "bank_01.asm" + }, + { + "name": "ManipBlock_Something", + "code": "ManipBlock_Something:\n #_01DB41: LDY.w $042C\n\n #_01DB44: LDA.w $0540,Y\n #_01DB47: PHA\n\n #_01DB48: AND.w #$007E\n #_01DB4B: ASL A\n #_01DB4C: ASL A\n #_01DB4D: STA.b $00\n\n #_01DB4F: LDA.b $22\n #_01DB51: AND.w #$FE00\n #_01DB54: TSB.b $00\n\n #_01DB56: PLA\n #_01DB57: AND.w #$1F80\n #_01DB5A: ASL A\n #_01DB5B: XBA\n #_01DB5C: ASL A\n #_01DB5D: ASL A\n #_01DB5E: ASL A\n #_01DB5F: STA.b $02\n\n #_01DB61: LDA.b $20\n #_01DB63: AND.w #$FE00\n #_01DB66: TSB.b $02\n\n #_01DB68: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Pointers", + "code": "RoomData_PotItems_Pointers:\n #_01DB69: dw RoomData_PotItems_Room0000\n #_01DB6B: dw RoomData_PotItems_Room0001\n #_01DB6D: dw RoomData_PotItems_Room0002\n #_01DB6F: dw RoomData_PotItems_Room0003\n #_01DB71: dw RoomData_PotItems_Room0004\n #_01DB73: dw RoomData_PotItems_Room0005\n #_01DB75: dw RoomData_PotItems_Room0006\n #_01DB77: dw RoomData_PotItems_Room0007\n #_01DB79: dw RoomData_PotItems_Room0008\n #_01DB7B: dw RoomData_PotItems_Room0009\n #_01DB7D: dw RoomData_PotItems_Room000A\n #_01DB7F: dw RoomData_PotItems_Room000B\n #_01DB81: dw RoomData_PotItems_Room000C\n #_01DB83: dw RoomData_PotItems_Room000D\n #_01DB85: dw RoomData_PotItems_Room000E\n #_01DB87: dw RoomData_PotItems_Room000F\n #_01DB89: dw RoomData_PotItems_Room0010\n #_01DB8B: dw RoomData_PotItems_Room0011\n #_01DB8D: dw RoomData_PotItems_Room0012\n #_01DB8F: dw RoomData_PotItems_Room0013\n #_01DB91: dw RoomData_PotItems_Room0014\n #_01DB93: dw RoomData_PotItems_Room0015\n #_01DB95: dw RoomData_PotItems_Room0016\n #_01DB97: dw RoomData_PotItems_Room0017\n #_01DB99: dw RoomData_PotItems_Room0018\n #_01DB9B: dw RoomData_PotItems_Room0019\n #_01DB9D: dw RoomData_PotItems_Room001A\n #_01DB9F: dw RoomData_PotItems_Room001B\n #_01DBA1: dw RoomData_PotItems_Room001C\n #_01DBA3: dw RoomData_PotItems_Room001D\n #_01DBA5: dw RoomData_PotItems_Room001E\n #_01DBA7: dw RoomData_PotItems_Room001F\n #_01DBA9: dw RoomData_PotItems_Room0020\n #_01DBAB: dw RoomData_PotItems_Room0021\n #_01DBAD: dw RoomData_PotItems_Room0022\n #_01DBAF: dw RoomData_PotItems_Room0023\n #_01DBB1: dw RoomData_PotItems_Room0024\n #_01DBB3: dw RoomData_PotItems_Room0025\n #_01DBB5: dw RoomData_PotItems_Room0026\n #_01DBB7: dw RoomData_PotItems_Room0027\n #_01DBB9: dw RoomData_PotItems_Room0028\n #_01DBBB: dw RoomData_PotItems_Room0029\n #_01DBBD: dw RoomData_PotItems_Room002A\n #_01DBBF: dw RoomData_PotItems_Room002B\n #_01DBC1: dw RoomData_PotItems_Room002C\n #_01DBC3: dw RoomData_PotItems_Room002D\n #_01DBC5: dw RoomData_PotItems_Room002E\n #_01DBC7: dw RoomData_PotItems_Room002F\n #_01DBC9: dw RoomData_PotItems_Room0030\n #_01DBCB: dw RoomData_PotItems_Room0031\n #_01DBCD: dw RoomData_PotItems_Room0032\n #_01DBCF: dw RoomData_PotItems_Room0033\n #_01DBD1: dw RoomData_PotItems_Room0034\n #_01DBD3: dw RoomData_PotItems_Room0035\n #_01DBD5: dw RoomData_PotItems_Room0036\n #_01DBD7: dw RoomData_PotItems_Room0037\n #_01DBD9: dw RoomData_PotItems_Room0038\n #_01DBDB: dw RoomData_PotItems_Room0039\n #_01DBDD: dw RoomData_PotItems_Room003A\n #_01DBDF: dw RoomData_PotItems_Room003B\n #_01DBE1: dw RoomData_PotItems_Room003C\n #_01DBE3: dw RoomData_PotItems_Room003D\n #_01DBE5: dw RoomData_PotItems_Room003E\n #_01DBE7: dw RoomData_PotItems_Room003F\n #_01DBE9: dw RoomData_PotItems_Room0040\n #_01DBEB: dw RoomData_PotItems_Room0041\n #_01DBED: dw RoomData_PotItems_Room0042\n #_01DBEF: dw RoomData_PotItems_Room0043\n #_01DBF1: dw RoomData_PotItems_Room0044\n #_01DBF3: dw RoomData_PotItems_Room0045\n #_01DBF5: dw RoomData_PotItems_Room0046\n #_01DBF7: dw RoomData_PotItems_Room0047\n #_01DBF9: dw RoomData_PotItems_Room0048\n #_01DBFB: dw RoomData_PotItems_Room0049\n #_01DBFD: dw RoomData_PotItems_Room004A\n #_01DBFF: dw RoomData_PotItems_Room004B\n #_01DC01: dw RoomData_PotItems_Room004C\n #_01DC03: dw RoomData_PotItems_Room004D\n #_01DC05: dw RoomData_PotItems_Room004E\n #_01DC07: dw RoomData_PotItems_Room004F\n #_01DC09: dw RoomData_PotItems_Room0050\n #_01DC0B: dw RoomData_PotItems_Room0051\n #_01DC0D: dw RoomData_PotItems_Room0052\n #_01DC0F: dw RoomData_PotItems_Room0053\n #_01DC11: dw RoomData_PotItems_Room0054\n #_01DC13: dw RoomData_PotItems_Room0055\n #_01DC15: dw RoomData_PotItems_Room0056\n #_01DC17: dw RoomData_PotItems_Room0057\n #_01DC19: dw RoomData_PotItems_Room0058\n #_01DC1B: dw RoomData_PotItems_Room0059\n #_01DC1D: dw RoomData_PotItems_Room005A\n #_01DC1F: dw RoomData_PotItems_Room005B\n #_01DC21: dw RoomData_PotItems_Room005C\n #_01DC23: dw RoomData_PotItems_Room005D\n #_01DC25: dw RoomData_PotItems_Room005E\n #_01DC27: dw RoomData_PotItems_Room005F\n #_01DC29: dw RoomData_PotItems_Room0060\n #_01DC2B: dw RoomData_PotItems_Room0061\n #_01DC2D: dw RoomData_PotItems_Room0062\n #_01DC2F: dw RoomData_PotItems_Room0063\n #_01DC31: dw RoomData_PotItems_Room0064\n #_01DC33: dw RoomData_PotItems_Room0065\n #_01DC35: dw RoomData_PotItems_Room0066\n #_01DC37: dw RoomData_PotItems_Room0067\n #_01DC39: dw RoomData_PotItems_Room0068\n #_01DC3B: dw RoomData_PotItems_Room0069\n #_01DC3D: dw RoomData_PotItems_Room006A\n #_01DC3F: dw RoomData_PotItems_Room006B\n #_01DC41: dw RoomData_PotItems_Room006C\n #_01DC43: dw RoomData_PotItems_Room006D\n #_01DC45: dw RoomData_PotItems_Room006E\n #_01DC47: dw RoomData_PotItems_Room006F\n #_01DC49: dw RoomData_PotItems_Room0070\n #_01DC4B: dw RoomData_PotItems_Room0071\n #_01DC4D: dw RoomData_PotItems_Room0072\n #_01DC4F: dw RoomData_PotItems_Room0073\n #_01DC51: dw RoomData_PotItems_Room0074\n #_01DC53: dw RoomData_PotItems_Room0075\n #_01DC55: dw RoomData_PotItems_Room0076\n #_01DC57: dw RoomData_PotItems_Room0077\n #_01DC59: dw RoomData_PotItems_Room0078\n #_01DC5B: dw RoomData_PotItems_Room0079\n #_01DC5D: dw RoomData_PotItems_Room007A\n #_01DC5F: dw RoomData_PotItems_Room007B\n #_01DC61: dw RoomData_PotItems_Room007C\n #_01DC63: dw RoomData_PotItems_Room007D\n #_01DC65: dw RoomData_PotItems_Room007E\n #_01DC67: dw RoomData_PotItems_Room007F\n #_01DC69: dw RoomData_PotItems_Room0080\n #_01DC6B: dw RoomData_PotItems_Room0081\n #_01DC6D: dw RoomData_PotItems_Room0082\n #_01DC6F: dw RoomData_PotItems_Room0083\n #_01DC71: dw RoomData_PotItems_Room0084\n #_01DC73: dw RoomData_PotItems_Room0085\n #_01DC75: dw RoomData_PotItems_Room0086\n #_01DC77: dw RoomData_PotItems_Room0087\n #_01DC79: dw RoomData_PotItems_Room0088\n #_01DC7B: dw RoomData_PotItems_Room0089\n #_01DC7D: dw RoomData_PotItems_Room008A\n #_01DC7F: dw RoomData_PotItems_Room008B\n #_01DC81: dw RoomData_PotItems_Room008C\n #_01DC83: dw RoomData_PotItems_Room008D\n #_01DC85: dw RoomData_PotItems_Room008E\n #_01DC87: dw RoomData_PotItems_Room008F\n #_01DC89: dw RoomData_PotItems_Room0090\n #_01DC8B: dw RoomData_PotItems_Room0091\n #_01DC8D: dw RoomData_PotItems_Room0092\n #_01DC8F: dw RoomData_PotItems_Room0093\n #_01DC91: dw RoomData_PotItems_Room0094\n #_01DC93: dw RoomData_PotItems_Room0095\n #_01DC95: dw RoomData_PotItems_Room0096\n #_01DC97: dw RoomData_PotItems_Room0097\n #_01DC99: dw RoomData_PotItems_Room0098\n #_01DC9B: dw RoomData_PotItems_Room0099\n #_01DC9D: dw RoomData_PotItems_Room009A\n #_01DC9F: dw RoomData_PotItems_Room009B\n #_01DCA1: dw RoomData_PotItems_Room009C\n #_01DCA3: dw RoomData_PotItems_Room009D\n #_01DCA5: dw RoomData_PotItems_Room009E\n #_01DCA7: dw RoomData_PotItems_Room009F\n #_01DCA9: dw RoomData_PotItems_Room00A0\n #_01DCAB: dw RoomData_PotItems_Room00A1\n #_01DCAD: dw RoomData_PotItems_Room00A2\n #_01DCAF: dw RoomData_PotItems_Room00A3\n #_01DCB1: dw RoomData_PotItems_Room00A4\n #_01DCB3: dw RoomData_PotItems_Room00A5\n #_01DCB5: dw RoomData_PotItems_Room00A6\n #_01DCB7: dw RoomData_PotItems_Room00A7\n #_01DCB9: dw RoomData_PotItems_Room00A8\n #_01DCBB: dw RoomData_PotItems_Room00A9\n #_01DCBD: dw RoomData_PotItems_Room00AA\n #_01DCBF: dw RoomData_PotItems_Room00AB\n #_01DCC1: dw RoomData_PotItems_Room00AC\n #_01DCC3: dw RoomData_PotItems_Room00AD\n #_01DCC5: dw RoomData_PotItems_Room00AE\n #_01DCC7: dw RoomData_PotItems_Room00AF\n #_01DCC9: dw RoomData_PotItems_Room00B0\n #_01DCCB: dw RoomData_PotItems_Room00B1\n #_01DCCD: dw RoomData_PotItems_Room00B2\n #_01DCCF: dw RoomData_PotItems_Room00B3\n #_01DCD1: dw RoomData_PotItems_Room00B4\n #_01DCD3: dw RoomData_PotItems_Room00B5\n #_01DCD5: dw RoomData_PotItems_Room00B6\n #_01DCD7: dw RoomData_PotItems_Room00B7\n #_01DCD9: dw RoomData_PotItems_Room00B8\n #_01DCDB: dw RoomData_PotItems_Room00B9\n #_01DCDD: dw RoomData_PotItems_Room00BA\n #_01DCDF: dw RoomData_PotItems_Room00BB\n #_01DCE1: dw RoomData_PotItems_Room00BC\n #_01DCE3: dw RoomData_PotItems_Room00BD\n #_01DCE5: dw RoomData_PotItems_Room00BE\n #_01DCE7: dw RoomData_PotItems_Room00BF\n #_01DCE9: dw RoomData_PotItems_Room00C0\n #_01DCEB: dw RoomData_PotItems_Room00C1\n #_01DCED: dw RoomData_PotItems_Room00C2\n #_01DCEF: dw RoomData_PotItems_Room00C3\n #_01DCF1: dw RoomData_PotItems_Room00C4\n #_01DCF3: dw RoomData_PotItems_Room00C5\n #_01DCF5: dw RoomData_PotItems_Room00C6\n #_01DCF7: dw RoomData_PotItems_Room00C7\n #_01DCF9: dw RoomData_PotItems_Room00C8\n #_01DCFB: dw RoomData_PotItems_Room00C9\n #_01DCFD: dw RoomData_PotItems_Room00CA\n #_01DCFF: dw RoomData_PotItems_Room00CB\n #_01DD01: dw RoomData_PotItems_Room00CC\n #_01DD03: dw RoomData_PotItems_Room00CD\n #_01DD05: dw RoomData_PotItems_Room00CE\n #_01DD07: dw RoomData_PotItems_Room00CF\n #_01DD09: dw RoomData_PotItems_Room00D0\n #_01DD0B: dw RoomData_PotItems_Room00D1\n #_01DD0D: dw RoomData_PotItems_Room00D2\n #_01DD0F: dw RoomData_PotItems_Room00D3\n #_01DD11: dw RoomData_PotItems_Room00D4\n #_01DD13: dw RoomData_PotItems_Room00D5\n #_01DD15: dw RoomData_PotItems_Room00D6\n #_01DD17: dw RoomData_PotItems_Room00D7\n #_01DD19: dw RoomData_PotItems_Room00D8\n #_01DD1B: dw RoomData_PotItems_Room00D9\n #_01DD1D: dw RoomData_PotItems_Room00DA\n #_01DD1F: dw RoomData_PotItems_Room00DB\n #_01DD21: dw RoomData_PotItems_Room00DC\n #_01DD23: dw RoomData_PotItems_Room00DD\n #_01DD25: dw RoomData_PotItems_Room00DE\n #_01DD27: dw RoomData_PotItems_Room00DF\n #_01DD29: dw RoomData_PotItems_Room00E0\n #_01DD2B: dw RoomData_PotItems_Room00E1\n #_01DD2D: dw RoomData_PotItems_Room00E2\n #_01DD2F: dw RoomData_PotItems_Room00E3\n #_01DD31: dw RoomData_PotItems_Room00E4\n #_01DD33: dw RoomData_PotItems_Room00E5\n #_01DD35: dw RoomData_PotItems_Room00E6\n #_01DD37: dw RoomData_PotItems_Room00E7\n #_01DD39: dw RoomData_PotItems_Room00E8\n #_01DD3B: dw RoomData_PotItems_Room00E9\n #_01DD3D: dw RoomData_PotItems_Room00EA\n #_01DD3F: dw RoomData_PotItems_Room00EB\n #_01DD41: dw RoomData_PotItems_Room00EC\n #_01DD43: dw RoomData_PotItems_Room00ED\n #_01DD45: dw RoomData_PotItems_Room00EE\n #_01DD47: dw RoomData_PotItems_Room00EF\n #_01DD49: dw RoomData_PotItems_Room00F0\n #_01DD4B: dw RoomData_PotItems_Room00F1\n #_01DD4D: dw RoomData_PotItems_Room00F2\n #_01DD4F: dw RoomData_PotItems_Room00F3\n #_01DD51: dw RoomData_PotItems_Room00F4\n #_01DD53: dw RoomData_PotItems_Room00F5\n #_01DD55: dw RoomData_PotItems_Room00F6\n #_01DD57: dw RoomData_PotItems_Room00F7\n #_01DD59: dw RoomData_PotItems_Room00F8\n #_01DD5B: dw RoomData_PotItems_Room00F9\n #_01DD5D: dw RoomData_PotItems_Room00FA\n #_01DD5F: dw RoomData_PotItems_Room00FB\n #_01DD61: dw RoomData_PotItems_Room00FC\n #_01DD63: dw RoomData_PotItems_Room00FD\n #_01DD65: dw RoomData_PotItems_Room00FE\n #_01DD67: dw RoomData_PotItems_Room00FF\n #_01DD69: dw RoomData_PotItems_Room0100\n #_01DD6B: dw RoomData_PotItems_Room0101\n #_01DD6D: dw RoomData_PotItems_Room0102\n #_01DD6F: dw RoomData_PotItems_Room0103\n #_01DD71: dw RoomData_PotItems_Room0104\n #_01DD73: dw RoomData_PotItems_Room0105\n #_01DD75: dw RoomData_PotItems_Room0106\n #_01DD77: dw RoomData_PotItems_Room0107\n #_01DD79: dw RoomData_PotItems_Room0108\n #_01DD7B: dw RoomData_PotItems_Room0109\n #_01DD7D: dw RoomData_PotItems_Room010A\n #_01DD7F: dw RoomData_PotItems_Room010B\n #_01DD81: dw RoomData_PotItems_Room010C\n #_01DD83: dw RoomData_PotItems_Room010D\n #_01DD85: dw RoomData_PotItems_Room010E\n #_01DD87: dw RoomData_PotItems_Room010F\n #_01DD89: dw RoomData_PotItems_Room0110\n #_01DD8B: dw RoomData_PotItems_Room0111\n #_01DD8D: dw RoomData_PotItems_Room0112\n #_01DD8F: dw RoomData_PotItems_Room0113\n #_01DD91: dw RoomData_PotItems_Room0114\n #_01DD93: dw RoomData_PotItems_Room0115\n #_01DD95: dw RoomData_PotItems_Room0116\n #_01DD97: dw RoomData_PotItems_Room0117\n #_01DD99: dw RoomData_PotItems_Room0118\n #_01DD9B: dw RoomData_PotItems_Room0119\n #_01DD9D: dw RoomData_PotItems_Room011A\n #_01DD9F: dw RoomData_PotItems_Room011B\n #_01DDA1: dw RoomData_PotItems_Room011C\n #_01DDA3: dw RoomData_PotItems_Room011D\n #_01DDA5: dw RoomData_PotItems_Room011E\n #_01DDA7: dw RoomData_PotItems_Room011F\n #_01DDA9: dw RoomData_PotItems_Room0120\n #_01DDAB: dw RoomData_PotItems_Room0121\n #_01DDAD: dw RoomData_PotItems_Room0122\n #_01DDAF: dw RoomData_PotItems_Room0123\n #_01DDB1: dw RoomData_PotItems_Room0124\n #_01DDB3: dw RoomData_PotItems_Room0125\n #_01DDB5: dw RoomData_PotItems_Room0126\n #_01DDB7: dw RoomData_PotItems_Room0127\n #_01DDB9: dw RoomData_PotItems_Room0128\n #_01DDBB: dw RoomData_PotItems_Room0129\n #_01DDBD: dw RoomData_PotItems_Room012A\n #_01DDBF: dw RoomData_PotItems_Room012B\n #_01DDC1: dw RoomData_PotItems_Room012C\n #_01DDC3: dw RoomData_PotItems_Room012D\n #_01DDC5: dw RoomData_PotItems_Room012E\n #_01DDC7: dw RoomData_PotItems_Room012F\n #_01DDC9: dw RoomData_PotItems_Room0130\n #_01DDCB: dw RoomData_PotItems_Room0131\n #_01DDCD: dw RoomData_PotItems_Room0132\n #_01DDCF: dw RoomData_PotItems_Room0133\n #_01DDD1: dw RoomData_PotItems_Room0134\n #_01DDD3: dw RoomData_PotItems_Room0135\n #_01DDD5: dw RoomData_PotItems_Room0136\n #_01DDD7: dw RoomData_PotItems_Room0137\n #_01DDD9: dw RoomData_PotItems_Room0138\n #_01DDDB: dw RoomData_PotItems_Room0139\n #_01DDDD: dw RoomData_PotItems_Room013A\n #_01DDDF: dw RoomData_PotItems_Room013B\n #_01DDE1: dw RoomData_PotItems_Room013C\n #_01DDE3: dw RoomData_PotItems_Room013D\n #_01DDE5: dw RoomData_PotItems_Room013E\n #_01DDE7: dw RoomData_PotItems_Room013F\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0000", + "code": "RoomData_PotItems_Room0000:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0001", + "code": "RoomData_PotItems_Room0001:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0002", + "code": "RoomData_PotItems_Room0002:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0003", + "code": "RoomData_PotItems_Room0003:\n #_01DDE9: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0004", + "code": "RoomData_PotItems_Room0004:\n #_01DDEB: dw $13CC : db $0A ; Bomb xyz:{ 0x130, 0x130, U }\n #_01DDEE: dw $13F0 : db $0A ; Bomb xyz:{ 0x1C0, 0x130, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0005", + "code": "RoomData_PotItems_Room0005:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0006", + "code": "RoomData_PotItems_Room0006:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0007", + "code": "RoomData_PotItems_Room0007:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0008", + "code": "RoomData_PotItems_Room0008:\n #_01DDF1: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0009", + "code": "RoomData_PotItems_Room0009:\n #_01DDF3: dw $040C : db $01 ; Green rupee xyz:{ 0x030, 0x040, U }\n #_01DDF6: dw $0430 : db $0B ; Heart xyz:{ 0x0C0, 0x040, U }\n #_01DDF9: dw $0C0C : db $88 ; Switch xyz:{ 0x030, 0x0C0, U }\n #_01DDFC: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000A", + "code": "RoomData_PotItems_Room000A:\n #_01DDFE: dw $0860 : db $0B ; Heart xyz:{ 0x180, 0x080, U }\n #_01DE01: dw $0868 : db $0B ; Heart xyz:{ 0x1A0, 0x080, U }\n #_01DE04: dw $0BCC : db $88 ; Switch xyz:{ 0x130, 0x0B0, U }\n #_01DE07: dw $119C : db $0A ; Bomb xyz:{ 0x070, 0x110, U }\n #_01DE0A: dw $11A0 : db $09 ; 5 arrows xyz:{ 0x080, 0x110, U }\n #_01DE0D: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000B", + "code": "RoomData_PotItems_Room000B:\n #_01DE0F: dw $03CA : db $0A ; Bomb xyz:{ 0x128, 0x030, U }\n #_01DE12: dw $0CCA : db $0A ; Bomb xyz:{ 0x128, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000C", + "code": "RoomData_PotItems_Room000C:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000D", + "code": "RoomData_PotItems_Room000D:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000E", + "code": "RoomData_PotItems_Room000E:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room000F", + "code": "RoomData_PotItems_Room000F:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0010", + "code": "RoomData_PotItems_Room0010:\n #_01DE15: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0011", + "code": "RoomData_PotItems_Room0011:\n #_01DE17: dw $0F90 : db $0B ; Heart xyz:{ 0x040, 0x0F0, U }\n #_01DE1A: dw $0FA0 : db $0B ; Heart xyz:{ 0x080, 0x0F0, U }\n #_01DE1D: dw $1390 : db $0B ; Heart xyz:{ 0x040, 0x130, U }\n #_01DE20: dw $13A0 : db $0B ; Heart xyz:{ 0x080, 0x130, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0012", + "code": "RoomData_PotItems_Room0012:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0013", + "code": "RoomData_PotItems_Room0013:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0014", + "code": "RoomData_PotItems_Room0014:\n #_01DE23: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0015", + "code": "RoomData_PotItems_Room0015:\n #_01DE25: dw $0460 : db $0A ; Bomb xyz:{ 0x180, 0x040, U }\n #_01DE28: dw $0464 : db $0C ; Small magic xyz:{ 0x190, 0x040, U }\n #_01DE2B: dw $0468 : db $0B ; Heart xyz:{ 0x1A0, 0x040, U }\n #_01DE2E: dw $046C : db $0C ; Small magic xyz:{ 0x1B0, 0x040, U }\n #_01DE31: dw $0470 : db $09 ; 5 arrows xyz:{ 0x1C0, 0x040, U }\n #_01DE34: dw $060C : db $01 ; Green rupee xyz:{ 0x030, 0x060, U }\n #_01DE37: dw $0610 : db $09 ; 5 arrows xyz:{ 0x040, 0x060, U }\n #_01DE3A: dw $0614 : db $07 ; Blue rupee xyz:{ 0x050, 0x060, U }\n #_01DE3D: dw $0B46 : db $0D ; Full magic xyz:{ 0x118, 0x0B0, U }\n #_01DE40: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0016", + "code": "RoomData_PotItems_Room0016:\n #_01DE42: dw $03BC : db $0B ; Heart xyz:{ 0x0F0, 0x030, U }\n #_01DE45: dw $03C0 : db $0B ; Heart xyz:{ 0x100, 0x030, U }\n #_01DE48: dw $04BC : db $0C ; Small magic xyz:{ 0x0F0, 0x040, U }\n #_01DE4B: dw $04C0 : db $0C ; Small magic xyz:{ 0x100, 0x040, U }\n #_01DE4E: dw $05BC : db $09 ; 5 arrows xyz:{ 0x0F0, 0x050, U }\n #_01DE51: dw $05C0 : db $09 ; 5 arrows xyz:{ 0x100, 0x050, U }\n #_01DE54: dw $06BC : db $0A ; Bomb xyz:{ 0x0F0, 0x060, U }\n #_01DE57: dw $06C0 : db $0A ; Bomb xyz:{ 0x100, 0x060, U }\n #_01DE5A: dw $13F0 : db $08 ; Small key xyz:{ 0x1C0, 0x130, U }\n #_01DE5D: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0017", + "code": "RoomData_PotItems_Room0017:\n #_01DE5F: dw $0D64 : db $0B ; Heart xyz:{ 0x190, 0x0D0, U }\n #_01DE62: dw $0E64 : db $0B ; Heart xyz:{ 0x190, 0x0E0, U }\n #_01DE65: dw $0F64 : db $0B ; Heart xyz:{ 0x190, 0x0F0, U }\n #_01DE68: dw $1064 : db $0B ; Heart xyz:{ 0x190, 0x100, U }\n #_01DE6B: dw $1164 : db $0B ; Heart xyz:{ 0x190, 0x110, U }\n #_01DE6E: dw $1264 : db $0B ; Heart xyz:{ 0x190, 0x120, U }\n #_01DE71: dw $0D68 : db $0B ; Heart xyz:{ 0x1A0, 0x0D0, U }\n #_01DE74: dw $0E68 : db $0B ; Heart xyz:{ 0x1A0, 0x0E0, U }\n #_01DE77: dw $0F68 : db $0B ; Heart xyz:{ 0x1A0, 0x0F0, U }\n #_01DE7A: dw $1068 : db $0B ; Heart xyz:{ 0x1A0, 0x100, U }\n #_01DE7D: dw $1168 : db $0B ; Heart xyz:{ 0x1A0, 0x110, U }\n #_01DE80: dw $1268 : db $0B ; Heart xyz:{ 0x1A0, 0x120, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0018", + "code": "RoomData_PotItems_Room0018:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0019", + "code": "RoomData_PotItems_Room0019:\n #_01DE83: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001A", + "code": "RoomData_PotItems_Room001A:\n #_01DE85: dw $051C : db $0A ; Bomb xyz:{ 0x070, 0x050, U }\n #_01DE88: dw $0520 : db $0A ; Bomb xyz:{ 0x080, 0x050, U }\n #_01DE8B: dw $1B1C : db $0A ; Bomb xyz:{ 0x070, 0x1B0, U }\n #_01DE8E: dw $1B20 : db $0A ; Bomb xyz:{ 0x080, 0x1B0, U }\n #_01DE91: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001B", + "code": "RoomData_PotItems_Room001B:\n #_01DE93: dw $1714 : db $09 ; 5 arrows xyz:{ 0x050, 0x170, U }\n #_01DE96: dw $1728 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x170, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001C", + "code": "RoomData_PotItems_Room001C:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001D", + "code": "RoomData_PotItems_Room001D:\n #_01DE99: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001E", + "code": "RoomData_PotItems_Room001E:\n #_01DE9B: dw $0954 : db $0A ; Bomb xyz:{ 0x150, 0x090, U }\n #_01DE9E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room001F", + "code": "RoomData_PotItems_Room001F:\n #_01DEA0: dw $191C : db $88 ; Switch xyz:{ 0x070, 0x190, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0020", + "code": "RoomData_PotItems_Room0020:\n #_01DEA3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0021", + "code": "RoomData_PotItems_Room0021:\n #_01DEA5: dw $18A8 : db $0C ; Small magic xyz:{ 0x0A0, 0x180, U }\n #_01DEA8: dw $1C30 : db $0B ; Heart xyz:{ 0x0C0, 0x1C0, U }\n #_01DEAB: dw $1C52 : db $0C ; Small magic xyz:{ 0x148, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0022", + "code": "RoomData_PotItems_Room0022:\n #_01DEAE: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0023", + "code": "RoomData_PotItems_Room0023:\n #_01DEB0: dw $1A56 : db $01 ; Green rupee xyz:{ 0x158, 0x1A0, U }\n #_01DEB3: dw $1A5A : db $0B ; Heart xyz:{ 0x168, 0x1A0, U }\n #_01DEB6: dw $1A5E : db $01 ; Green rupee xyz:{ 0x178, 0x1A0, U }\n #_01DEB9: dw $1A62 : db $0A ; Bomb xyz:{ 0x188, 0x1A0, U }\n #_01DEBC: dw $1A66 : db $01 ; Green rupee xyz:{ 0x198, 0x1A0, U }\n #_01DEBF: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0024", + "code": "RoomData_PotItems_Room0024:\n #_01DEC1: dw $040C : db $07 ; Blue rupee xyz:{ 0x030, 0x040, U }\n #_01DEC4: dw $0430 : db $0B ; Heart xyz:{ 0x0C0, 0x040, U }\n #_01DEC7: dw $0C0C : db $0C ; Small magic xyz:{ 0x030, 0x0C0, U }\n #_01DECA: dw $0C30 : db $01 ; Green rupee xyz:{ 0x0C0, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0025", + "code": "RoomData_PotItems_Room0025:\n #_01DECD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0026", + "code": "RoomData_PotItems_Room0026:\n #_01DECF: dw $041C : db $0A ; Bomb xyz:{ 0x070, 0x040, U }\n #_01DED2: dw $080C : db $0C ; Small magic xyz:{ 0x030, 0x080, U }\n #_01DED5: dw $1396 : db $88 ; Switch xyz:{ 0x058, 0x130, U }\n #_01DED8: dw $1A16 : db $07 ; Blue rupee xyz:{ 0x058, 0x1A0, U }\n #_01DEDB: dw $1ADC : db $09 ; 5 arrows xyz:{ 0x170, 0x1A0, U }\n #_01DEDE: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0027", + "code": "RoomData_PotItems_Room0027:\n #_01DEE0: dw $14A6 : db $0A ; Bomb xyz:{ 0x098, 0x140, U }\n #_01DEE3: dw $15D6 : db $0B ; Heart xyz:{ 0x158, 0x150, U }\n #_01DEE6: dw $1C28 : db $01 ; Green rupee xyz:{ 0x0A0, 0x1C0, U }\n #_01DEE9: dw $1C2C : db $01 ; Green rupee xyz:{ 0x0B0, 0x1C0, U }\n #_01DEEC: dw $1C50 : db $07 ; Blue rupee xyz:{ 0x140, 0x1C0, U }\n #_01DEEF: dw $1C54 : db $07 ; Blue rupee xyz:{ 0x150, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0028", + "code": "RoomData_PotItems_Room0028:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0029", + "code": "RoomData_PotItems_Room0029:\n #_01DEF2: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002A", + "code": "RoomData_PotItems_Room002A:\n #_01DEF4: dw $0C50 : db $01 ; Green rupee xyz:{ 0x140, 0x0C0, U }\n #_01DEF7: dw $1350 : db $0B ; Heart xyz:{ 0x140, 0x130, U }\n #_01DEFA: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002B", + "code": "RoomData_PotItems_Room002B:\n #_01DEFC: dw $0510 : db $0B ; Heart xyz:{ 0x040, 0x050, U }\n #_01DEFF: dw $052C : db $88 ; Switch xyz:{ 0x0B0, 0x050, U }\n #_01DF02: dw $0610 : db $0B ; Heart xyz:{ 0x040, 0x060, U }\n #_01DF05: dw $062C : db $0A ; Bomb xyz:{ 0x0B0, 0x060, U }\n #_01DF08: dw $0710 : db $0B ; Heart xyz:{ 0x040, 0x070, U }\n #_01DF0B: dw $072C : db $0A ; Bomb xyz:{ 0x0B0, 0x070, U }\n #_01DF0E: dw $1592 : db $0A ; Bomb xyz:{ 0x048, 0x150, U }\n #_01DF11: dw $15AA : db $09 ; 5 arrows xyz:{ 0x0A8, 0x150, U }\n #_01DF14: dw $1692 : db $0A ; Bomb xyz:{ 0x048, 0x160, U }\n #_01DF17: dw $16AA : db $09 ; 5 arrows xyz:{ 0x0A8, 0x160, U }\n #_01DF1A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002C", + "code": "RoomData_PotItems_Room002C:\n #_01DF1C: dw $186C : db $0B ; Heart xyz:{ 0x1B0, 0x180, U }\n #_01DF1F: dw $1870 : db $0B ; Heart xyz:{ 0x1C0, 0x180, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002D", + "code": "RoomData_PotItems_Room002D:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002E", + "code": "RoomData_PotItems_Room002E:\n #_01DF22: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room002F", + "code": "RoomData_PotItems_Room002F:\n #_01DF24: dw $071C : db $0B ; Heart xyz:{ 0x070, 0x070, U }\n #_01DF27: dw $0720 : db $0B ; Heart xyz:{ 0x080, 0x070, U }\n #_01DF2A: dw $091C : db $07 ; Blue rupee xyz:{ 0x070, 0x090, U }\n #_01DF2D: dw $0920 : db $07 ; Blue rupee xyz:{ 0x080, 0x090, U }\n #_01DF30: dw $13AC : db $07 ; Blue rupee xyz:{ 0x0B0, 0x130, U }\n #_01DF33: dw $13B4 : db $07 ; Blue rupee xyz:{ 0x0D0, 0x130, U }\n #_01DF36: dw $1B68 : db $0B ; Heart xyz:{ 0x1A0, 0x1B0, U }\n #_01DF39: dw $1C68 : db $0B ; Heart xyz:{ 0x1A0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0030", + "code": "RoomData_PotItems_Room0030:\n #_01DF3C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0031", + "code": "RoomData_PotItems_Room0031:\n #_01DF3E: dw $1C5C : db $0A ; Bomb xyz:{ 0x170, 0x1C0, U }\n #_01DF41: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0032", + "code": "RoomData_PotItems_Room0032:\n #_01DF43: dw $0D1C : db $0C ; Small magic xyz:{ 0x070, 0x0D0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0033", + "code": "RoomData_PotItems_Room0033:\n #_01DF46: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0034", + "code": "RoomData_PotItems_Room0034:\n #_01DF48: dw $084E : db $07 ; Blue rupee xyz:{ 0x138, 0x080, U }\n #_01DF4B: dw $085C : db $07 ; Blue rupee xyz:{ 0x170, 0x080, U }\n #_01DF4E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0035", + "code": "RoomData_PotItems_Room0035:\n #_01DF50: dw $063C : db $08 ; Small key xyz:{ 0x0F0, 0x060, U }\n #_01DF53: dw $0814 : db $07 ; Blue rupee xyz:{ 0x050, 0x080, U }\n #_01DF56: dw $0818 : db $07 ; Blue rupee xyz:{ 0x060, 0x080, U }\n #_01DF59: dw $081C : db $07 ; Blue rupee xyz:{ 0x070, 0x080, U }\n #_01DF5C: dw $0820 : db $07 ; Blue rupee xyz:{ 0x080, 0x080, U }\n #_01DF5F: dw $0824 : db $07 ; Blue rupee xyz:{ 0x090, 0x080, U }\n #_01DF62: dw $1430 : db $0B ; Heart xyz:{ 0x0C0, 0x140, U }\n #_01DF65: dw $1770 : db $0B ; Heart xyz:{ 0x1C0, 0x170, U }\n #_01DF68: dw $1C4C : db $0B ; Heart xyz:{ 0x130, 0x1C0, U }\n #_01DF6B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0036", + "code": "RoomData_PotItems_Room0036:\n #_01DF6D: dw $046C : db $0A ; Bomb xyz:{ 0x1B0, 0x040, U }\n #_01DF70: dw $0470 : db $07 ; Blue rupee xyz:{ 0x1C0, 0x040, U }\n #_01DF73: dw $100A : db $0B ; Heart xyz:{ 0x028, 0x100, U }\n #_01DF76: dw $1072 : db $08 ; Small key xyz:{ 0x1C8, 0x100, U }\n #_01DF79: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0037", + "code": "RoomData_PotItems_Room0037:\n #_01DF7B: dw $063C : db $08 ; Small key xyz:{ 0x0F0, 0x060, U }\n #_01DF7E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0038", + "code": "RoomData_PotItems_Room0038:\n #_01DF80: dw $0CA4 : db $0A ; Bomb xyz:{ 0x090, 0x0C0, U }\n #_01DF83: dw $0DA4 : db $07 ; Blue rupee xyz:{ 0x090, 0x0D0, U }\n #_01DF86: dw $12A4 : db $0A ; Bomb xyz:{ 0x090, 0x120, U }\n #_01DF89: dw $13A4 : db $08 ; Small key xyz:{ 0x090, 0x130, U }\n #_01DF8C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0039", + "code": "RoomData_PotItems_Room0039:\n #_01DF8E: dw $140C : db $0B ; Heart xyz:{ 0x030, 0x140, U }\n #_01DF91: dw $1664 : db $0C ; Small magic xyz:{ 0x190, 0x160, U }\n #_01DF94: dw $1A64 : db $09 ; 5 arrows xyz:{ 0x190, 0x1A0, U }\n #_01DF97: dw $1C30 : db $09 ; 5 arrows xyz:{ 0x0C0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003A", + "code": "RoomData_PotItems_Room003A:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003B", + "code": "RoomData_PotItems_Room003B:\n #_01DF9A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003C", + "code": "RoomData_PotItems_Room003C:\n #_01DF9C: dw $0818 : db $0C ; Small magic xyz:{ 0x060, 0x080, U }\n #_01DF9F: dw $0C40 : db $07 ; Blue rupee xyz:{ 0x100, 0x0C0, U }\n #_01DFA2: dw $0E14 : db $01 ; Green rupee xyz:{ 0x050, 0x0E0, U }\n #_01DFA5: dw $1244 : db $07 ; Blue rupee xyz:{ 0x110, 0x120, U }\n #_01DFA8: dw $1360 : db $0B ; Heart xyz:{ 0x180, 0x130, U }\n #_01DFAB: dw $1440 : db $07 ; Blue rupee xyz:{ 0x100, 0x140, U }\n #_01DFAE: dw $1A40 : db $07 ; Blue rupee xyz:{ 0x100, 0x1A0, U }\n #_01DFB1: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003D", + "code": "RoomData_PotItems_Room003D:\n #_01DFB3: dw $0C4C : db $0A ; Bomb xyz:{ 0x130, 0x0C0, U }\n #_01DFB6: dw $0C70 : db $0A ; Bomb xyz:{ 0x1C0, 0x0C0, U }\n #_01DFB9: dw $1618 : db $0B ; Heart xyz:{ 0x060, 0x160, U }\n #_01DFBC: dw $1628 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x160, U }\n #_01DFBF: dw $1820 : db $0B ; Heart xyz:{ 0x080, 0x180, U }\n #_01DFC2: dw $1A14 : db $07 ; Blue rupee xyz:{ 0x050, 0x1A0, U }\n #_01DFC5: dw $1A24 : db $0D ; Full magic xyz:{ 0x090, 0x1A0, U }\n #_01DFC8: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003E", + "code": "RoomData_PotItems_Room003E:\n #_01DFCA: dw $0660 : db $0A ; Bomb xyz:{ 0x180, 0x060, U }\n #_01DFCD: dw $0664 : db $0C ; Small magic xyz:{ 0x190, 0x060, U }\n #_01DFD0: dw $0A58 : db $0B ; Heart xyz:{ 0x160, 0x0A0, U }\n #_01DFD3: dw $0A5C : db $0C ; Small magic xyz:{ 0x170, 0x0A0, U }\n #_01DFD6: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room003F", + "code": "RoomData_PotItems_Room003F:\n #_01DFD8: dw $190C : db $01 ; Green rupee xyz:{ 0x030, 0x190, U }\n #_01DFDB: dw $1914 : db $01 ; Green rupee xyz:{ 0x050, 0x190, U }\n #_01DFDE: dw $1A0C : db $0A ; Bomb xyz:{ 0x030, 0x1A0, U }\n #_01DFE1: dw $1A14 : db $0A ; Bomb xyz:{ 0x050, 0x1A0, U }\n #_01DFE4: dw $1B0C : db $88 ; Switch xyz:{ 0x030, 0x1B0, U }\n #_01DFE7: dw $1B14 : db $0B ; Heart xyz:{ 0x050, 0x1B0, U }\n #_01DFEA: dw $171C : db $08 ; Small key xyz:{ 0x070, 0x170, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0040", + "code": "RoomData_PotItems_Room0040:\n #_01DFED: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0041", + "code": "RoomData_PotItems_Room0041:\n #_01DFEF: dw $0A64 : db $0B ; Heart xyz:{ 0x190, 0x0A0, U }\n #_01DFF2: dw $0F34 : db $01 ; Green rupee xyz:{ 0x0D0, 0x0F0, U }\n #_01DFF5: dw $1034 : db $0C ; Small magic xyz:{ 0x0D0, 0x100, U }\n #_01DFF8: dw $1694 : db $0C ; Small magic xyz:{ 0x050, 0x160, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0042", + "code": "RoomData_PotItems_Room0042:\n #_01DFFB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0043", + "code": "RoomData_PotItems_Room0043:\n #_01DFFD: dw $0442 : db $09 ; 5 arrows xyz:{ 0x108, 0x040, U }\n #_01E000: dw $044E : db $0C ; Small magic xyz:{ 0x138, 0x040, U }\n #_01E003: dw $0942 : db $0B ; Heart xyz:{ 0x108, 0x090, U }\n #_01E006: dw $094E : db $0B ; Heart xyz:{ 0x138, 0x090, U }\n #_01E009: dw $1470 : db $08 ; Small key xyz:{ 0x1C0, 0x140, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0044", + "code": "RoomData_PotItems_Room0044:\n #_01E00C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0045", + "code": "RoomData_PotItems_Room0045:\n #_01E00E: dw $040C : db $09 ; 5 arrows xyz:{ 0x030, 0x040, U }\n #_01E011: dw $0B6C : db $0B ; Heart xyz:{ 0x1B0, 0x0B0, U }\n #_01E014: dw $0C30 : db $09 ; 5 arrows xyz:{ 0x0C0, 0x0C0, U }\n #_01E017: dw $10DC : db $0C ; Small magic xyz:{ 0x170, 0x100, U }\n #_01E01A: dw $10EC : db $0B ; Heart xyz:{ 0x1B0, 0x100, U }\n #_01E01D: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0046", + "code": "RoomData_PotItems_Room0046:\n #_01E01F: dw $0560 : db $0B ; Heart xyz:{ 0x180, 0x050, U }\n #_01E022: dw $1B1C : db $0B ; Heart xyz:{ 0x070, 0x1B0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0047", + "code": "RoomData_PotItems_Room0047:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0048", + "code": "RoomData_PotItems_Room0048:\n #_01E025: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0049", + "code": "RoomData_PotItems_Room0049:\n #_01E027: dw $0F68 : db $0C ; Small magic xyz:{ 0x1A0, 0x0F0, U }\n #_01E02A: dw $1068 : db $0C ; Small magic xyz:{ 0x1A0, 0x100, U }\n #_01E02D: dw $1390 : db $0C ; Small magic xyz:{ 0x040, 0x130, U }\n #_01E030: dw $14AC : db $0B ; Heart xyz:{ 0x0B0, 0x140, U }\n #_01E033: dw $1B90 : db $0B ; Heart xyz:{ 0x040, 0x1B0, U }\n #_01E036: dw $1CAC : db $0C ; Small magic xyz:{ 0x0B0, 0x1C0, U }\n #_01E039: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004A", + "code": "RoomData_PotItems_Room004A:\n #_01E03B: dw $050E : db $88 ; Switch xyz:{ 0x038, 0x050, U }\n #_01E03E: dw $0520 : db $0A ; Bomb xyz:{ 0x080, 0x050, U }\n #_01E041: dw $055C : db $0A ; Bomb xyz:{ 0x170, 0x050, U }\n #_01E044: dw $056E : db $88 ; Switch xyz:{ 0x1B8, 0x050, U }\n #_01E047: dw $0838 : db $0A ; Bomb xyz:{ 0x0E0, 0x080, U }\n #_01E04A: dw $0844 : db $0A ; Bomb xyz:{ 0x110, 0x080, U }\n #_01E04D: dw $0B0E : db $0B ; Heart xyz:{ 0x038, 0x0B0, U }\n #_01E050: dw $0B20 : db $01 ; Green rupee xyz:{ 0x080, 0x0B0, U }\n #_01E053: dw $0B5C : db $01 ; Green rupee xyz:{ 0x170, 0x0B0, U }\n #_01E056: dw $0B6E : db $0B ; Heart xyz:{ 0x1B8, 0x0B0, U }\n #_01E059: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004B", + "code": "RoomData_PotItems_Room004B:\n #_01E05B: dw $0614 : db $09 ; 5 arrows xyz:{ 0x050, 0x060, U }\n #_01E05E: dw $0628 : db $0B ; Heart xyz:{ 0x0A0, 0x060, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004C", + "code": "RoomData_PotItems_Room004C:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004D", + "code": "RoomData_PotItems_Room004D:\n #_01E061: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004E", + "code": "RoomData_PotItems_Room004E:\n #_01E063: dw $0B8C : db $88 ; Switch xyz:{ 0x030, 0x0B0, U }\n #_01E066: dw $0C1C : db $0B ; Heart xyz:{ 0x070, 0x0C0, U }\n #_01E069: dw $0C70 : db $0C ; Small magic xyz:{ 0x1C0, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room004F", + "code": "RoomData_PotItems_Room004F:\n #_01E06C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0050", + "code": "RoomData_PotItems_Room0050:\n #_01E06E: dw $2660 : db $0B ; Heart xyz:{ 0x180, 0x060, L }\n #_01E071: dw $2664 : db $0B ; Heart xyz:{ 0x190, 0x060, L }\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0051", + "code": "RoomData_PotItems_Room0051:\n #_01E074: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0052", + "code": "RoomData_PotItems_Room0052:\n #_01E076: dw $038A : db $0B ; Heart xyz:{ 0x028, 0x030, U }\n #_01E079: dw $1AC2 : db $0B ; Heart xyz:{ 0x108, 0x1A0, U }\n #_01E07C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0053", + "code": "RoomData_PotItems_Room0053:\n #_01E07E: dw $0B5C : db $0B ; Heart xyz:{ 0x170, 0x0B0, U }\n #_01E081: dw $0B60 : db $0C ; Small magic xyz:{ 0x180, 0x0B0, U }\n #_01E084: dw $0B64 : db $08 ; Small key xyz:{ 0x190, 0x0B0, U }\n #_01E087: dw $0B68 : db $0B ; Heart xyz:{ 0x1A0, 0x0B0, U }\n #_01E08A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0054", + "code": "RoomData_PotItems_Room0054:\n #_01E08C: dw $19BA : db $07 ; Blue rupee xyz:{ 0x0E8, 0x190, U }\n #_01E08F: dw $1ABA : db $0B ; Heart xyz:{ 0x0E8, 0x1A0, U }\n #_01E092: dw $1BBA : db $0B ; Heart xyz:{ 0x0E8, 0x1B0, U }\n #_01E095: dw $1CBA : db $0B ; Heart xyz:{ 0x0E8, 0x1C0, U }\n #_01E098: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0055", + "code": "RoomData_PotItems_Room0055:\n #_01E09A: dw $18E6 : db $0C ; Small magic xyz:{ 0x198, 0x180, U }\n #_01E09D: dw $19E6 : db $0C ; Small magic xyz:{ 0x198, 0x190, U }\n #_01E0A0: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0056", + "code": "RoomData_PotItems_Room0056:\n #_01E0A2: dw $0614 : db $0C ; Small magic xyz:{ 0x050, 0x060, U }\n #_01E0A5: dw $0628 : db $0C ; Small magic xyz:{ 0x0A0, 0x060, U }\n #_01E0A8: dw $0718 : db $0C ; Small magic xyz:{ 0x060, 0x070, U }\n #_01E0AB: dw $0724 : db $0C ; Small magic xyz:{ 0x090, 0x070, U }\n #_01E0AE: dw $080C : db $0B ; Heart xyz:{ 0x030, 0x080, U }\n #_01E0B1: dw $0830 : db $0B ; Heart xyz:{ 0x0C0, 0x080, U }\n #_01E0B4: dw $0918 : db $0C ; Small magic xyz:{ 0x060, 0x090, U }\n #_01E0B7: dw $0924 : db $0C ; Small magic xyz:{ 0x090, 0x090, U }\n #_01E0BA: dw $0A14 : db $07 ; Blue rupee xyz:{ 0x050, 0x0A0, U }\n #_01E0BD: dw $0A28 : db $07 ; Blue rupee xyz:{ 0x0A0, 0x0A0, U }\n #_01E0C0: dw $140C : db $08 ; Small key xyz:{ 0x030, 0x140, U }\n #_01E0C3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0057", + "code": "RoomData_PotItems_Room0057:\n #_01E0C5: dw $075C : db $0D ; Full magic xyz:{ 0x170, 0x070, U }\n #_01E0C8: dw $140C : db $0C ; Small magic xyz:{ 0x030, 0x140, U }\n #_01E0CB: dw $175C : db $0A ; Bomb xyz:{ 0x170, 0x170, U }\n #_01E0CE: dw $1764 : db $0C ; Small magic xyz:{ 0x190, 0x170, U }\n #_01E0D1: dw $1954 : db $07 ; Blue rupee xyz:{ 0x150, 0x190, U }\n #_01E0D4: dw $1B4C : db $0B ; Heart xyz:{ 0x130, 0x1B0, U }\n #_01E0D7: dw $1430 : db $0C ; Small magic xyz:{ 0x0C0, 0x140, U }\n #_01E0DA: dw $161E : db $88 ; Switch xyz:{ 0x078, 0x160, U }\n #_01E0DD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0058", + "code": "RoomData_PotItems_Room0058:\n #_01E0DF: dw $0560 : db $0A ; Bomb xyz:{ 0x180, 0x050, U }\n #_01E0E2: dw $0564 : db $0C ; Small magic xyz:{ 0x190, 0x050, U }\n #_01E0E5: dw $070C : db $0C ; Small magic xyz:{ 0x030, 0x070, U }\n #_01E0E8: dw $075C : db $0B ; Heart xyz:{ 0x170, 0x070, U }\n #_01E0EB: dw $076C : db $0B ; Heart xyz:{ 0x1B0, 0x070, U }\n #_01E0EE: dw $0810 : db $0C ; Small magic xyz:{ 0x040, 0x080, U }\n #_01E0F1: dw $0964 : db $0C ; Small magic xyz:{ 0x190, 0x090, U }\n #_01E0F4: dw $0968 : db $0A ; Bomb xyz:{ 0x1A0, 0x090, U }\n #_01E0F7: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0059", + "code": "RoomData_PotItems_Room0059:\n #_01E0F9: dw $2B1A : db $0B ; Heart xyz:{ 0x068, 0x0B0, L }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005A", + "code": "RoomData_PotItems_Room005A:\n #_01E0FC: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005B", + "code": "RoomData_PotItems_Room005B:\n #_01E0FE: dw $25DE : db $88 ; Switch xyz:{ 0x178, 0x050, L }\n #_01E101: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005C", + "code": "RoomData_PotItems_Room005C:\n #_01E103: dw $165E : db $0A ; Bomb xyz:{ 0x178, 0x160, U }\n #_01E106: dw $1A5E : db $0D ; Full magic xyz:{ 0x178, 0x1A0, U }\n #_01E109: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005D", + "code": "RoomData_PotItems_Room005D:\n #_01E10B: dw $0510 : db $0A ; Bomb xyz:{ 0x040, 0x050, U }\n #_01E10E: dw $052C : db $07 ; Blue rupee xyz:{ 0x0B0, 0x050, U }\n #_01E111: dw $0B10 : db $01 ; Green rupee xyz:{ 0x040, 0x0B0, U }\n #_01E114: dw $0B2C : db $09 ; 5 arrows xyz:{ 0x0B0, 0x0B0, U }\n #_01E117: dw $140C : db $09 ; 5 arrows xyz:{ 0x030, 0x140, U }\n #_01E11A: dw $1430 : db $0A ; Bomb xyz:{ 0x0C0, 0x140, U }\n #_01E11D: dw $1C0C : db $0C ; Small magic xyz:{ 0x030, 0x1C0, U }\n #_01E120: dw $1C30 : db $0A ; Bomb xyz:{ 0x0C0, 0x1C0, U }\n #_01E123: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005E", + "code": "RoomData_PotItems_Room005E:\n #_01E125: dw $045C : db $0C ; Small magic xyz:{ 0x170, 0x040, U }\n #_01E128: dw $0460 : db $0C ; Small magic xyz:{ 0x180, 0x040, U }\n #_01E12B: dw $084C : db $0B ; Heart xyz:{ 0x130, 0x080, U }\n #_01E12E: dw $0870 : db $0B ; Heart xyz:{ 0x1C0, 0x080, U }\n #_01E131: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room005F", + "code": "RoomData_PotItems_Room005F:\n #_01E133: dw $1B2C : db $88 ; Switch xyz:{ 0x0B0, 0x1B0, U }\n #_01E136: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0060", + "code": "RoomData_PotItems_Room0060:\n #_01E138: dw $044C : db $0B ; Heart xyz:{ 0x130, 0x040, U }\n #_01E13B: dw $0470 : db $0B ; Heart xyz:{ 0x1C0, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0061", + "code": "RoomData_PotItems_Room0061:\n #_01E13E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0062", + "code": "RoomData_PotItems_Room0062:\n #_01E140: dw $15D0 : db $0B ; Heart xyz:{ 0x140, 0x150, U }\n #_01E143: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0063", + "code": "RoomData_PotItems_Room0063:\n #_01E145: dw $0830 : db $0B ; Heart xyz:{ 0x0C0, 0x080, U }\n #_01E148: dw $0C0C : db $08 ; Small key xyz:{ 0x030, 0x0C0, U }\n #_01E14B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0064", + "code": "RoomData_PotItems_Room0064:\n #_01E14D: dw $160C : db $0A ; Bomb xyz:{ 0x030, 0x160, U }\n #_01E150: dw $1610 : db $0A ; Bomb xyz:{ 0x040, 0x160, U }\n #_01E153: dw $1614 : db $0A ; Bomb xyz:{ 0x050, 0x160, U }\n #_01E156: dw $1C24 : db $0A ; Bomb xyz:{ 0x090, 0x1C0, U }\n #_01E159: dw $1C28 : db $0C ; Small magic xyz:{ 0x0A0, 0x1C0, U }\n #_01E15C: dw $1C2C : db $0C ; Small magic xyz:{ 0x0B0, 0x1C0, U }\n #_01E15F: dw $1C30 : db $88 ; Switch xyz:{ 0x0C0, 0x1C0, U }\n #_01E162: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0065", + "code": "RoomData_PotItems_Room0065:\n #_01E164: dw $1C64 : db $0A ; Bomb xyz:{ 0x190, 0x1C0, U }\n #_01E167: dw $1C68 : db $0A ; Bomb xyz:{ 0x1A0, 0x1C0, U }\n #_01E16A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0066", + "code": "RoomData_PotItems_Room0066:\n #_01E16C: dw $2530 : db $09 ; 5 arrows xyz:{ 0x0C0, 0x050, L }\n #_01E16F: dw $2534 : db $0A ; Bomb xyz:{ 0x0D0, 0x050, L }\n #_01E172: dw $2538 : db $07 ; Blue rupee xyz:{ 0x0E0, 0x050, L }\n #_01E175: dw $0554 : db $0B ; Heart xyz:{ 0x150, 0x050, U }\n #_01E178: dw $0568 : db $09 ; 5 arrows xyz:{ 0x1A0, 0x050, U }\n #_01E17B: dw $2630 : db $09 ; 5 arrows xyz:{ 0x0C0, 0x060, L }\n #_01E17E: dw $2634 : db $0A ; Bomb xyz:{ 0x0D0, 0x060, L }\n #_01E181: dw $2638 : db $07 ; Blue rupee xyz:{ 0x0E0, 0x060, L }\n #_01E184: dw $0654 : db $0B ; Heart xyz:{ 0x150, 0x060, U }\n #_01E187: dw $0668 : db $0A ; Bomb xyz:{ 0x1A0, 0x060, U }\n #_01E18A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0067", + "code": "RoomData_PotItems_Room0067:\n #_01E18C: dw $070C : db $09 ; 5 arrows xyz:{ 0x030, 0x070, U }\n #_01E18F: dw $0730 : db $0C ; Small magic xyz:{ 0x0C0, 0x070, U }\n #_01E192: dw $1360 : db $0B ; Heart xyz:{ 0x180, 0x130, U }\n #_01E195: dw $144A : db $0C ; Small magic xyz:{ 0x128, 0x140, U }\n #_01E198: dw $1712 : db $0C ; Small magic xyz:{ 0x048, 0x170, U }\n #_01E19B: dw $1A12 : db $0B ; Heart xyz:{ 0x048, 0x1A0, U }\n #_01E19E: dw $1C68 : db $0B ; Heart xyz:{ 0x1A0, 0x1C0, U }\n #_01E1A1: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0068", + "code": "RoomData_PotItems_Room0068:\n #_01E1A3: dw $0740 : db $0B ; Heart xyz:{ 0x100, 0x070, U }\n #_01E1A6: dw $0758 : db $0C ; Small magic xyz:{ 0x160, 0x070, U }\n #_01E1A9: dw $1040 : db $0B ; Heart xyz:{ 0x100, 0x100, U }\n #_01E1AC: dw $1840 : db $0C ; Small magic xyz:{ 0x100, 0x180, U }\n #_01E1AF: dw $1940 : db $0B ; Heart xyz:{ 0x100, 0x190, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0069", + "code": "RoomData_PotItems_Room0069:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006A", + "code": "RoomData_PotItems_Room006A:\n #_01E1B2: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006B", + "code": "RoomData_PotItems_Room006B:\n #_01E1B4: dw $051C : db $0B ; Heart xyz:{ 0x070, 0x050, U }\n #_01E1B7: dw $082C : db $0C ; Small magic xyz:{ 0x0B0, 0x080, U }\n #_01E1BA: dw $0B1C : db $0C ; Small magic xyz:{ 0x070, 0x0B0, U }\n #_01E1BD: dw $1962 : db $09 ; 5 arrows xyz:{ 0x188, 0x190, U }\n #_01E1C0: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006C", + "code": "RoomData_PotItems_Room006C:\n #_01E1C2: dw $0614 : db $0B ; Heart xyz:{ 0x050, 0x060, U }\n #_01E1C5: dw $0628 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x060, U }\n #_01E1C8: dw $0A14 : db $0A ; Bomb xyz:{ 0x050, 0x0A0, U }\n #_01E1CB: dw $0A28 : db $0C ; Small magic xyz:{ 0x0A0, 0x0A0, U }\n #_01E1CE: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006D", + "code": "RoomData_PotItems_Room006D:\n #_01E1D0: dw $1A1C : db $0B ; Heart xyz:{ 0x070, 0x1A0, U }\n #_01E1D3: dw $1A20 : db $0B ; Heart xyz:{ 0x080, 0x1A0, U }\n #_01E1D6: dw $1B1C : db $0C ; Small magic xyz:{ 0x070, 0x1B0, U }\n #_01E1D9: dw $1B20 : db $0C ; Small magic xyz:{ 0x080, 0x1B0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006E", + "code": "RoomData_PotItems_Room006E:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room006F", + "code": "RoomData_PotItems_Room006F:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0070", + "code": "RoomData_PotItems_Room0070:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0071", + "code": "RoomData_PotItems_Room0071:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0072", + "code": "RoomData_PotItems_Room0072:\n #_01E1DC: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0073", + "code": "RoomData_PotItems_Room0073:\n #_01E1DE: dw $159A : db $09 ; 5 arrows xyz:{ 0x068, 0x150, U }\n #_01E1E1: dw $159E : db $01 ; Green rupee xyz:{ 0x078, 0x150, U }\n #_01E1E4: dw $1714 : db $88 ; Switch xyz:{ 0x050, 0x170, U }\n #_01E1E7: dw $1724 : db $07 ; Blue rupee xyz:{ 0x090, 0x170, U }\n #_01E1EA: dw $1890 : db $0B ; Heart xyz:{ 0x040, 0x180, U }\n #_01E1ED: dw $18A8 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x180, U }\n #_01E1F0: dw $1A14 : db $0C ; Small magic xyz:{ 0x050, 0x1A0, U }\n #_01E1F3: dw $1A24 : db $0B ; Heart xyz:{ 0x090, 0x1A0, U }\n #_01E1F6: dw $1B9A : db $01 ; Green rupee xyz:{ 0x068, 0x1B0, U }\n #_01E1F9: dw $1B9E : db $07 ; Blue rupee xyz:{ 0x078, 0x1B0, U }\n #_01E1FC: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0074", + "code": "RoomData_PotItems_Room0074:\n #_01E1FE: dw $051E : db $0C ; Small magic xyz:{ 0x078, 0x050, U }\n #_01E201: dw $053E : db $88 ; Switch xyz:{ 0x0F8, 0x050, U }\n #_01E204: dw $055E : db $0C ; Small magic xyz:{ 0x178, 0x050, U }\n #_01E207: dw $0B0E : db $0B ; Heart xyz:{ 0x038, 0x0B0, U }\n #_01E20A: dw $0B2E : db $09 ; 5 arrows xyz:{ 0x0B8, 0x0B0, U }\n #_01E20D: dw $0B4E : db $09 ; 5 arrows xyz:{ 0x138, 0x0B0, U }\n #_01E210: dw $0B6E : db $0B ; Heart xyz:{ 0x1B8, 0x0B0, U }\n #_01E213: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0075", + "code": "RoomData_PotItems_Room0075:\n #_01E215: dw $1694 : db $0C ; Small magic xyz:{ 0x050, 0x160, U }\n #_01E218: dw $16A0 : db $09 ; 5 arrows xyz:{ 0x080, 0x160, U }\n #_01E21B: dw $16AC : db $0B ; Heart xyz:{ 0x0B0, 0x160, U }\n #_01E21E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0076", + "code": "RoomData_PotItems_Room0076:\n #_01E220: dw $0C70 : db $0B ; Heart xyz:{ 0x1C0, 0x0C0, U }\n #_01E223: dw $1754 : db $0B ; Heart xyz:{ 0x150, 0x170, U }\n #_01E226: dw $1760 : db $0B ; Heart xyz:{ 0x180, 0x170, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0077", + "code": "RoomData_PotItems_Room0077:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0078", + "code": "RoomData_PotItems_Room0078:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0079", + "code": "RoomData_PotItems_Room0079:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007A", + "code": "RoomData_PotItems_Room007A:\n #_01E229: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007B", + "code": "RoomData_PotItems_Room007B:\n #_01E22B: dw $043C : db $0B ; Heart xyz:{ 0x0F0, 0x040, U }\n #_01E22E: dw $0440 : db $08 ; Small key xyz:{ 0x100, 0x040, U }\n #_01E231: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007C", + "code": "RoomData_PotItems_Room007C:\n #_01E233: dw $041C : db $0B ; Heart xyz:{ 0x070, 0x040, U }\n #_01E236: dw $0420 : db $0B ; Heart xyz:{ 0x080, 0x040, U }\n #_01E239: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007D", + "code": "RoomData_PotItems_Room007D:\n #_01E23B: dw $0670 : db $0B ; Heart xyz:{ 0x1C0, 0x060, U }\n #_01E23E: dw $146C : db $09 ; 5 arrows xyz:{ 0x1B0, 0x140, U }\n #_01E241: dw $1472 : db $0A ; Bomb xyz:{ 0x1C8, 0x140, U }\n #_01E244: dw $1C4C : db $0A ; Bomb xyz:{ 0x130, 0x1C0, U }\n #_01E247: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007E", + "code": "RoomData_PotItems_Room007E:\n #_01E249: dw $0F56 : db $0B ; Heart xyz:{ 0x158, 0x0F0, U }\n #_01E24C: dw $1A52 : db $0C ; Small magic xyz:{ 0x148, 0x1A0, U }\n #_01E24F: dw $1A64 : db $88 ; Switch xyz:{ 0x190, 0x1A0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room007F", + "code": "RoomData_PotItems_Room007F:\n #_01E252: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0080", + "code": "RoomData_PotItems_Room0080:\n #_01E254: dw $0430 : db $0B ; Heart xyz:{ 0x0C0, 0x040, U }\n #_01E257: dw $0434 : db $0B ; Heart xyz:{ 0x0D0, 0x040, U }\n #_01E25A: dw $0438 : db $0B ; Heart xyz:{ 0x0E0, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0081", + "code": "RoomData_PotItems_Room0081:\n #_01E25D: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0082", + "code": "RoomData_PotItems_Room0082:\n #_01E25F: dw $324C : db $0B ; Heart xyz:{ 0x130, 0x120, L }\n #_01E262: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0083", + "code": "RoomData_PotItems_Room0083:\n #_01E264: dw $044C : db $09 ; 5 arrows xyz:{ 0x130, 0x040, U }\n #_01E267: dw $0450 : db $01 ; Green rupee xyz:{ 0x140, 0x040, U }\n #_01E26A: dw $1C4C : db $07 ; Blue rupee xyz:{ 0x130, 0x1C0, U }\n #_01E26D: dw $1C50 : db $09 ; 5 arrows xyz:{ 0x140, 0x1C0, U }\n #_01E270: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0084", + "code": "RoomData_PotItems_Room0084:\n #_01E272: dw $0718 : db $09 ; 5 arrows xyz:{ 0x060, 0x070, U }\n #_01E275: dw $0764 : db $09 ; 5 arrows xyz:{ 0x190, 0x070, U }\n #_01E278: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0085", + "code": "RoomData_PotItems_Room0085:\n #_01E27A: dw $1C2C : db $0B ; Heart xyz:{ 0x0B0, 0x1C0, U }\n #_01E27D: dw $1C30 : db $09 ; 5 arrows xyz:{ 0x0C0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0086", + "code": "RoomData_PotItems_Room0086:\n #_01E280: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0087", + "code": "RoomData_PotItems_Room0087:\n #_01E282: dw $144C : db $0C ; Small magic xyz:{ 0x130, 0x140, U }\n #_01E285: dw $1470 : db $0D ; Full magic xyz:{ 0x1C0, 0x140, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0088", + "code": "RoomData_PotItems_Room0088:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0089", + "code": "RoomData_PotItems_Room0089:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008A", + "code": "RoomData_PotItems_Room008A:\n #_01E288: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008B", + "code": "RoomData_PotItems_Room008B:\n #_01E28A: dw $0C70 : db $08 ; Small key xyz:{ 0x1C0, 0x0C0, U }\n #_01E28D: dw $0920 : db $0C ; Small magic xyz:{ 0x080, 0x090, U }\n #_01E290: dw $1C4C : db $0B ; Heart xyz:{ 0x130, 0x1C0, U }\n #_01E293: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008C", + "code": "RoomData_PotItems_Room008C:\n #_01E295: dw $0C4C : db $88 ; Switch xyz:{ 0x130, 0x0C0, U }\n #_01E298: dw $0C70 : db $0C ; Small magic xyz:{ 0x1C0, 0x0C0, U }\n #_01E29B: dw $144C : db $0A ; Bomb xyz:{ 0x130, 0x140, U }\n #_01E29E: dw $145C : db $0A ; Bomb xyz:{ 0x170, 0x140, U }\n #_01E2A1: dw $1564 : db $09 ; 5 arrows xyz:{ 0x190, 0x150, U }\n #_01E2A4: dw $1A68 : db $0A ; Bomb xyz:{ 0x1A0, 0x1A0, U }\n #_01E2A7: dw $1B58 : db $0A ; Bomb xyz:{ 0x160, 0x1B0, U }\n #_01E2AA: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008D", + "code": "RoomData_PotItems_Room008D:\n #_01E2AC: dw $0ECC : db $0D ; Full magic xyz:{ 0x130, 0x0E0, U }\n #_01E2AF: dw $171C : db $0B ; Heart xyz:{ 0x070, 0x170, U }\n #_01E2B2: dw $1724 : db $0B ; Heart xyz:{ 0x090, 0x170, U }\n #_01E2B5: dw $1820 : db $0D ; Full magic xyz:{ 0x080, 0x180, U }\n #_01E2B8: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008E", + "code": "RoomData_PotItems_Room008E:\n #_01E2BA: dw $0550 : db $09 ; 5 arrows xyz:{ 0x140, 0x050, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room008F", + "code": "RoomData_PotItems_Room008F:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0090", + "code": "RoomData_PotItems_Room0090:\n #_01E2BD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0091", + "code": "RoomData_PotItems_Room0091:\n #_01E2BF: dw $0454 : db $0B ; Heart xyz:{ 0x150, 0x040, U }\n #_01E2C2: dw $0468 : db $0C ; Small magic xyz:{ 0x1A0, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0092", + "code": "RoomData_PotItems_Room0092:\n #_01E2C5: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0093", + "code": "RoomData_PotItems_Room0093:\n #_01E2C7: dw $071C : db $88 ; Switch xyz:{ 0x070, 0x070, U }\n #_01E2CA: dw $0760 : db $0B ; Heart xyz:{ 0x180, 0x070, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0094", + "code": "RoomData_PotItems_Room0094:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0095", + "code": "RoomData_PotItems_Room0095:\n #_01E2CD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0096", + "code": "RoomData_PotItems_Room0096:\n #_01E2CF: dw $1120 : db $0C ; Small magic xyz:{ 0x080, 0x110, U }\n #_01E2D2: dw $1820 : db $0C ; Small magic xyz:{ 0x080, 0x180, U }\n #_01E2D5: dw $154C : db $0B ; Heart xyz:{ 0x130, 0x150, U }\n #_01E2D8: dw $1570 : db $0D ; Full magic xyz:{ 0x1C0, 0x150, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0097", + "code": "RoomData_PotItems_Room0097:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0098", + "code": "RoomData_PotItems_Room0098:\n #_01E2DB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0099", + "code": "RoomData_PotItems_Room0099:\n #_01E2DD: dw $1428 : db $0C ; Small magic xyz:{ 0x0A0, 0x140, U }\n #_01E2E0: dw $1454 : db $0B ; Heart xyz:{ 0x150, 0x140, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009A", + "code": "RoomData_PotItems_Room009A:\n #_01E2E3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009B", + "code": "RoomData_PotItems_Room009B:\n #_01E2E5: dw $0430 : db $0C ; Small magic xyz:{ 0x0C0, 0x040, U }\n #_01E2E8: dw $0C30 : db $08 ; Small key xyz:{ 0x0C0, 0x0C0, U }\n #_01E2EB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009C", + "code": "RoomData_PotItems_Room009C:\n #_01E2ED: dw $0838 : db $0C ; Small magic xyz:{ 0x0E0, 0x080, U }\n #_01E2F0: dw $0938 : db $09 ; 5 arrows xyz:{ 0x0E0, 0x090, U }\n #_01E2F3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009D", + "code": "RoomData_PotItems_Room009D:\n #_01E2F5: dw $044C : db $0A ; Bomb xyz:{ 0x130, 0x040, U }\n #_01E2F8: dw $0454 : db $0C ; Small magic xyz:{ 0x150, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009E", + "code": "RoomData_PotItems_Room009E:\n #_01E2FB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room009F", + "code": "RoomData_PotItems_Room009F:\n #_01E2FD: dw $138A : db $0B ; Heart xyz:{ 0x028, 0x130, U }\n #_01E300: dw $13B2 : db $0B ; Heart xyz:{ 0x0C8, 0x130, U }\n #_01E303: dw $1528 : db $88 ; Switch xyz:{ 0x0A0, 0x150, U }\n #_01E306: dw $158A : db $08 ; Small key xyz:{ 0x028, 0x150, U }\n #_01E309: dw $1B14 : db $0B ; Heart xyz:{ 0x050, 0x1B0, U }\n #_01E30C: dw $1B8A : db $0B ; Heart xyz:{ 0x028, 0x1B0, U }\n #_01E30F: dw $1CB2 : db $0B ; Heart xyz:{ 0x0C8, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A0", + "code": "RoomData_PotItems_Room00A0:\n #_01E312: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A1", + "code": "RoomData_PotItems_Room00A1:\n #_01E314: dw $0696 : db $08 ; Small key xyz:{ 0x058, 0x060, U }\n #_01E317: dw $0B64 : db $0C ; Small magic xyz:{ 0x190, 0x0B0, U }\n #_01E31A: dw $0C68 : db $0B ; Heart xyz:{ 0x1A0, 0x0C0, U }\n #_01E31D: dw $0D6C : db $0C ; Small magic xyz:{ 0x1B0, 0x0D0, U }\n #_01E320: dw $0E70 : db $0B ; Heart xyz:{ 0x1C0, 0x0E0, U }\n #_01E323: dw $1760 : db $0B ; Heart xyz:{ 0x180, 0x170, U }\n #_01E326: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A2", + "code": "RoomData_PotItems_Room00A2:\n #_01E328: dw $1C0C : db $0D ; Full magic xyz:{ 0x030, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A3", + "code": "RoomData_PotItems_Room00A3:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A4", + "code": "RoomData_PotItems_Room00A4:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A5", + "code": "RoomData_PotItems_Room00A5:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A6", + "code": "RoomData_PotItems_Room00A6:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A7", + "code": "RoomData_PotItems_Room00A7:\n #_01E32B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A8", + "code": "RoomData_PotItems_Room00A8:\n #_01E32D: dw $138A : db $0B ; Heart xyz:{ 0x028, 0x130, U }\n #_01E330: dw $181E : db $01 ; Green rupee xyz:{ 0x078, 0x180, U }\n #_01E333: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00A9", + "code": "RoomData_PotItems_Room00A9:\n #_01E335: dw $2B90 : db $09 ; 5 arrows xyz:{ 0x040, 0x0B0, L }\n #_01E338: dw $2BEC : db $09 ; 5 arrows xyz:{ 0x1B0, 0x0B0, L }\n #_01E33B: dw $2C90 : db $09 ; 5 arrows xyz:{ 0x040, 0x0C0, L }\n #_01E33E: dw $2CEC : db $0B ; Heart xyz:{ 0x1B0, 0x0C0, L }\n #_01E341: dw $1410 : db $0B ; Heart xyz:{ 0x040, 0x140, U }\n #_01E344: dw $146C : db $0B ; Heart xyz:{ 0x1B0, 0x140, U }\n #_01E347: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AA", + "code": "RoomData_PotItems_Room00AA:\n #_01E349: dw $05D4 : db $0B ; Heart xyz:{ 0x150, 0x050, U }\n #_01E34C: dw $085E : db $88 ; Switch xyz:{ 0x178, 0x080, U }\n #_01E34F: dw $376C : db $0B ; Heart xyz:{ 0x1B0, 0x170, L }\n #_01E352: dw $386C : db $0B ; Heart xyz:{ 0x1B0, 0x180, L }\n #_01E355: dw $396C : db $0B ; Heart xyz:{ 0x1B0, 0x190, L }\n #_01E358: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AB", + "code": "RoomData_PotItems_Room00AB:\n #_01E35A: dw $1814 : db $08 ; Small key xyz:{ 0x050, 0x180, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AC", + "code": "RoomData_PotItems_Room00AC:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AD", + "code": "RoomData_PotItems_Room00AD:\n #_01E35D: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AE", + "code": "RoomData_PotItems_Room00AE:\n #_01E35F: dw $0C4C : db $88 ; Switch xyz:{ 0x130, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00AF", + "code": "RoomData_PotItems_Room00AF:\n #_01E362: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B0", + "code": "RoomData_PotItems_Room00B0:\n #_01E364: dw $1514 : db $0A ; Bomb xyz:{ 0x050, 0x150, U }\n #_01E367: dw $151C : db $01 ; Green rupee xyz:{ 0x070, 0x150, U }\n #_01E36A: dw $1520 : db $07 ; Blue rupee xyz:{ 0x080, 0x150, U }\n #_01E36D: dw $1528 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x150, U }\n #_01E370: dw $1710 : db $07 ; Blue rupee xyz:{ 0x040, 0x170, U }\n #_01E373: dw $172C : db $01 ; Green rupee xyz:{ 0x0B0, 0x170, U }\n #_01E376: dw $1824 : db $0B ; Heart xyz:{ 0x090, 0x180, U }\n #_01E379: dw $1910 : db $0B ; Heart xyz:{ 0x040, 0x190, U }\n #_01E37C: dw $1B1C : db $09 ; 5 arrows xyz:{ 0x070, 0x1B0, U }\n #_01E37F: dw $1B28 : db $0A ; Bomb xyz:{ 0x0A0, 0x1B0, U }\n #_01E382: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B1", + "code": "RoomData_PotItems_Room00B1:\n #_01E384: dw $044C : db $0B ; Heart xyz:{ 0x130, 0x040, U }\n #_01E387: dw $0470 : db $01 ; Green rupee xyz:{ 0x1C0, 0x040, U }\n #_01E38A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B2", + "code": "RoomData_PotItems_Room00B2:\n #_01E38C: dw $2830 : db $01 ; Green rupee xyz:{ 0x0C0, 0x080, L }\n #_01E38F: dw $284C : db $01 ; Green rupee xyz:{ 0x130, 0x080, L }\n #_01E392: dw $294C : db $0B ; Heart xyz:{ 0x130, 0x090, L }\n #_01E395: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B3", + "code": "RoomData_PotItems_Room00B3:\n #_01E397: dw $140C : db $08 ; Small key xyz:{ 0x030, 0x140, U }\n #_01E39A: dw $1430 : db $0C ; Small magic xyz:{ 0x0C0, 0x140, U }\n #_01E39D: dw $1C30 : db $88 ; Switch xyz:{ 0x0C0, 0x1C0, U }\n #_01E3A0: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B4", + "code": "RoomData_PotItems_Room00B4:\n #_01E3A2: dw $1C2C : db $0D ; Full magic xyz:{ 0x0B0, 0x1C0, U }\n #_01E3A5: dw $1C30 : db $0B ; Heart xyz:{ 0x0C0, 0x1C0, U }\n #_01E3A8: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B5", + "code": "RoomData_PotItems_Room00B5:\n #_01E3AA: dw $0470 : db $07 ; Blue rupee xyz:{ 0x1C0, 0x040, U }\n #_01E3AD: dw $0F70 : db $0B ; Heart xyz:{ 0x1C0, 0x0F0, U }\n #_01E3B0: dw $104C : db $88 ; Switch xyz:{ 0x130, 0x100, U }\n #_01E3B3: dw $1070 : db $0D ; Full magic xyz:{ 0x1C0, 0x100, U }\n #_01E3B6: dw $1170 : db $0B ; Heart xyz:{ 0x1C0, 0x110, U }\n #_01E3B9: dw $1C70 : db $0A ; Bomb xyz:{ 0x1C0, 0x1C0, U }\n #_01E3BC: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B6", + "code": "RoomData_PotItems_Room00B6:\n #_01E3BE: dw $095E : db $0D ; Full magic xyz:{ 0x178, 0x090, U }\n #_01E3C1: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B7", + "code": "RoomData_PotItems_Room00B7:\n #_01E3C3: dw $051E : db $0C ; Small magic xyz:{ 0x078, 0x050, U }\n #_01E3C6: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B8", + "code": "RoomData_PotItems_Room00B8:\n #_01E3C8: dw $0D60 : db $88 ; Switch xyz:{ 0x180, 0x0D0, U }\n #_01E3CB: dw $1058 : db $0B ; Heart xyz:{ 0x160, 0x100, U }\n #_01E3CE: dw $1068 : db $0B ; Heart xyz:{ 0x1A0, 0x100, U }\n #_01E3D1: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00B9", + "code": "RoomData_PotItems_Room00B9:\n #_01E3D3: dw $125C : db $01 ; Green rupee xyz:{ 0x170, 0x120, U }\n #_01E3D6: dw $1260 : db $07 ; Blue rupee xyz:{ 0x180, 0x120, U }\n #_01E3D9: dw $1268 : db $07 ; Blue rupee xyz:{ 0x1A0, 0x120, U }\n #_01E3DC: dw $126C : db $01 ; Green rupee xyz:{ 0x1B0, 0x120, U }\n #_01E3DF: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BA", + "code": "RoomData_PotItems_Room00BA:\n #_01E3E1: dw $045E : db $01 ; Green rupee xyz:{ 0x178, 0x040, U }\n #_01E3E4: dw $064C : db $0B ; Heart xyz:{ 0x130, 0x060, U }\n #_01E3E7: dw $0670 : db $08 ; Small key xyz:{ 0x1C0, 0x060, U }\n #_01E3EA: dw $0A4C : db $0B ; Heart xyz:{ 0x130, 0x0A0, U }\n #_01E3ED: dw $0A70 : db $0C ; Small magic xyz:{ 0x1C0, 0x0A0, U }\n #_01E3F0: dw $0C5E : db $01 ; Green rupee xyz:{ 0x178, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BB", + "code": "RoomData_PotItems_Room00BB:\n #_01E3F3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BC", + "code": "RoomData_PotItems_Room00BC:\n #_01E3F5: dw $038A : db $0A ; Bomb xyz:{ 0x028, 0x030, U }\n #_01E3F8: dw $03B2 : db $88 ; Switch xyz:{ 0x0C8, 0x030, U }\n #_01E3FB: dw $0456 : db $0B ; Heart xyz:{ 0x158, 0x040, U }\n #_01E3FE: dw $0466 : db $08 ; Small key xyz:{ 0x198, 0x040, U }\n #_01E401: dw $0C8A : db $0B ; Heart xyz:{ 0x028, 0x0C0, U }\n #_01E404: dw $0CB2 : db $0A ; Bomb xyz:{ 0x0C8, 0x0C0, U }\n #_01E407: dw $1430 : db $0A ; Bomb xyz:{ 0x0C0, 0x140, U }\n #_01E40A: dw $151C : db $07 ; Blue rupee xyz:{ 0x070, 0x150, U }\n #_01E40D: dw $1520 : db $07 ; Blue rupee xyz:{ 0x080, 0x150, U }\n #_01E410: dw $1B1C : db $07 ; Blue rupee xyz:{ 0x070, 0x1B0, U }\n #_01E413: dw $1B20 : db $07 ; Blue rupee xyz:{ 0x080, 0x1B0, U }\n #_01E416: dw $1C0C : db $0A ; Bomb xyz:{ 0x030, 0x1C0, U }\n #_01E419: dw $1C30 : db $0A ; Bomb xyz:{ 0x0C0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BD", + "code": "RoomData_PotItems_Room00BD:\n #_01E41C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BE", + "code": "RoomData_PotItems_Room00BE:\n #_01E41E: dw $195C : db $88 ; Switch xyz:{ 0x170, 0x190, U }\n #_01E421: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00BF", + "code": "RoomData_PotItems_Room00BF:\n #_01E423: dw $1428 : db $09 ; 5 arrows xyz:{ 0x0A0, 0x140, U }\n #_01E426: dw $142C : db $0B ; Heart xyz:{ 0x0B0, 0x140, U }\n #_01E429: dw $1430 : db $0A ; Bomb xyz:{ 0x0C0, 0x140, U }\n #_01E42C: dw $1C28 : db $0C ; Small magic xyz:{ 0x0A0, 0x1C0, U }\n #_01E42F: dw $1C2C : db $0C ; Small magic xyz:{ 0x0B0, 0x1C0, U }\n #_01E432: dw $1C30 : db $0C ; Small magic xyz:{ 0x0C0, 0x1C0, U }\n #_01E435: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C0", + "code": "RoomData_PotItems_Room00C0:\n #_01E437: dw $0A30 : db $0A ; Bomb xyz:{ 0x0C0, 0x0A0, U }\n #_01E43A: dw $0E0C : db $07 ; Blue rupee xyz:{ 0x030, 0x0E0, U }\n #_01E43D: dw $1A0C : db $0B ; Heart xyz:{ 0x030, 0x1A0, U }\n #_01E440: dw $1B1C : db $01 ; Green rupee xyz:{ 0x070, 0x1B0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C1", + "code": "RoomData_PotItems_Room00C1:\n #_01E443: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C2", + "code": "RoomData_PotItems_Room00C2:\n #_01E445: dw $07B4 : db $88 ; Switch xyz:{ 0x0D0, 0x070, U }\n #_01E448: dw $2E64 : db $0C ; Small magic xyz:{ 0x190, 0x0E0, L }\n #_01E44B: dw $3044 : db $01 ; Green rupee xyz:{ 0x110, 0x100, L }\n #_01E44E: dw $3440 : db $09 ; 5 arrows xyz:{ 0x100, 0x140, L }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C3", + "code": "RoomData_PotItems_Room00C3:\n #_01E451: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C4", + "code": "RoomData_PotItems_Room00C4:\n #_01E453: dw $0954 : db $0A ; Bomb xyz:{ 0x150, 0x090, U }\n #_01E456: dw $0E18 : db $0B ; Heart xyz:{ 0x060, 0x0E0, U }\n #_01E459: dw $1138 : db $07 ; Blue rupee xyz:{ 0x0E0, 0x110, U }\n #_01E45C: dw $1154 : db $0A ; Bomb xyz:{ 0x150, 0x110, U }\n #_01E45F: dw $150C : db $09 ; 5 arrows xyz:{ 0x030, 0x150, U }\n #_01E462: dw $174C : db $01 ; Green rupee xyz:{ 0x130, 0x170, U }\n #_01E465: dw $1930 : db $0C ; Small magic xyz:{ 0x0C0, 0x190, U }\n #_01E468: dw $1A0C : db $0B ; Heart xyz:{ 0x030, 0x1A0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C5", + "code": "RoomData_PotItems_Room00C5:\n #_01E46B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C6", + "code": "RoomData_PotItems_Room00C6:\n #_01E46D: dw $070C : db $0D ; Full magic xyz:{ 0x030, 0x070, U }\n #_01E470: dw $190C : db $0B ; Heart xyz:{ 0x030, 0x190, U }\n #_01E473: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C7", + "code": "RoomData_PotItems_Room00C7:\n #_01E475: dw $0A0C : db $0B ; Heart xyz:{ 0x030, 0x0A0, U }\n #_01E478: dw $0B0C : db $0D ; Full magic xyz:{ 0x030, 0x0B0, U }\n #_01E47B: dw $160C : db $0C ; Small magic xyz:{ 0x030, 0x160, U }\n #_01E47E: dw $1C0C : db $09 ; 5 arrows xyz:{ 0x030, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C8", + "code": "RoomData_PotItems_Room00C8:\n #_01E481: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00C9", + "code": "RoomData_PotItems_Room00C9:\n #_01E483: dw $161E : db $01 ; Green rupee xyz:{ 0x078, 0x160, U }\n #_01E486: dw $165E : db $01 ; Green rupee xyz:{ 0x178, 0x160, U }\n #_01E489: dw $163C : db $88 ; Switch xyz:{ 0x0F0, 0x160, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CA", + "code": "RoomData_PotItems_Room00CA:\n #_01E48C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CB", + "code": "RoomData_PotItems_Room00CB:\n #_01E48E: dw $1058 : db $0B ; Heart xyz:{ 0x160, 0x100, U }\n #_01E491: dw $1C58 : db $07 ; Blue rupee xyz:{ 0x160, 0x1C0, U }\n #_01E494: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CC", + "code": "RoomData_PotItems_Room00CC:\n #_01E496: dw $0424 : db $07 ; Blue rupee xyz:{ 0x090, 0x040, U }\n #_01E499: dw $0470 : db $0B ; Heart xyz:{ 0x1C0, 0x040, U }\n #_01E49C: dw $1C24 : db $07 ; Blue rupee xyz:{ 0x090, 0x1C0, U }\n #_01E49F: dw $1C70 : db $0A ; Bomb xyz:{ 0x1C0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CD", + "code": "RoomData_PotItems_Room00CD:\n #_01E4A2: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CE", + "code": "RoomData_PotItems_Room00CE:\n #_01E4A4: dw $084C : db $0C ; Small magic xyz:{ 0x130, 0x080, U }\n #_01E4A7: dw $0850 : db $0C ; Small magic xyz:{ 0x140, 0x080, U }\n #_01E4AA: dw $0C6C : db $0A ; Bomb xyz:{ 0x1B0, 0x0C0, U }\n #_01E4AD: dw $0C70 : db $09 ; 5 arrows xyz:{ 0x1C0, 0x0C0, U }\n #_01E4B0: dw $0BCC : db $80 ; Hole xyz:{ 0x130, 0x0B0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00CF", + "code": "RoomData_PotItems_Room00CF:\n #_01E4B3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D0", + "code": "RoomData_PotItems_Room00D0:\n #_01E4B5: dw $059E : db $0C ; Small magic xyz:{ 0x078, 0x050, U }\n #_01E4B8: dw $0B8C : db $01 ; Green rupee xyz:{ 0x030, 0x0B0, U }\n #_01E4BB: dw $0D2A : db $0C ; Small magic xyz:{ 0x0A8, 0x0D0, U }\n #_01E4BE: dw $1030 : db $0B ; Heart xyz:{ 0x0C0, 0x100, U }\n #_01E4C1: dw $14B0 : db $01 ; Green rupee xyz:{ 0x0C0, 0x140, U }\n #_01E4C4: dw $1792 : db $07 ; Blue rupee xyz:{ 0x048, 0x170, U }\n #_01E4C7: dw $1C0C : db $0B ; Heart xyz:{ 0x030, 0x1C0, U }\n #_01E4CA: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D1", + "code": "RoomData_PotItems_Room00D1:\n #_01E4CC: dw $0430 : db $0D ; Full magic xyz:{ 0x0C0, 0x040, U }\n #_01E4CF: dw $044C : db $01 ; Green rupee xyz:{ 0x130, 0x040, U }\n #_01E4D2: dw $0470 : db $09 ; 5 arrows xyz:{ 0x1C0, 0x040, U }\n #_01E4D5: dw $07A8 : db $01 ; Green rupee xyz:{ 0x0A0, 0x070, U }\n #_01E4D8: dw $0C70 : db $01 ; Green rupee xyz:{ 0x1C0, 0x0C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D2", + "code": "RoomData_PotItems_Room00D2:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D3", + "code": "RoomData_PotItems_Room00D3:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D4", + "code": "RoomData_PotItems_Room00D4:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D5", + "code": "RoomData_PotItems_Room00D5:\n #_01E4DB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D6", + "code": "RoomData_PotItems_Room00D6:\n #_01E4DD: dw $165C : db $0D ; Full magic xyz:{ 0x170, 0x160, U }\n #_01E4E0: dw $1660 : db $0A ; Bomb xyz:{ 0x180, 0x160, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D7", + "code": "RoomData_PotItems_Room00D7:\n #_01E4E3: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D8", + "code": "RoomData_PotItems_Room00D8:\n #_01E4E5: dw $08CA : db $0B ; Heart xyz:{ 0x128, 0x080, U }\n #_01E4E8: dw $08F2 : db $09 ; 5 arrows xyz:{ 0x1C8, 0x080, U }\n #_01E4EB: dw $0ACA : db $09 ; 5 arrows xyz:{ 0x128, 0x0A0, U }\n #_01E4EE: dw $0AF2 : db $09 ; 5 arrows xyz:{ 0x1C8, 0x0A0, U }\n #_01E4F1: dw $0CCA : db $09 ; 5 arrows xyz:{ 0x128, 0x0C0, U }\n #_01E4F4: dw $0CF2 : db $0B ; Heart xyz:{ 0x1C8, 0x0C0, U }\n #_01E4F7: dw $185C : db $0B ; Heart xyz:{ 0x170, 0x180, U }\n #_01E4FA: dw $1860 : db $09 ; 5 arrows xyz:{ 0x180, 0x180, U }\n #_01E4FD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00D9", + "code": "RoomData_PotItems_Room00D9:\n #_01E4FF: dw $145C : db $09 ; 5 arrows xyz:{ 0x170, 0x140, U }\n #_01E502: dw $1C5C : db $0B ; Heart xyz:{ 0x170, 0x1C0, U }\n #_01E505: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DA", + "code": "RoomData_PotItems_Room00DA:\n #_01E507: dw $1718 : db $09 ; 5 arrows xyz:{ 0x060, 0x170, U }\n #_01E50A: dw $1724 : db $09 ; 5 arrows xyz:{ 0x090, 0x170, U }\n #_01E50D: dw $1918 : db $88 ; Switch xyz:{ 0x060, 0x190, U }\n #_01E510: dw $1924 : db $0B ; Heart xyz:{ 0x090, 0x190, U }\n #_01E513: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DB", + "code": "RoomData_PotItems_Room00DB:\n #_01E515: dw $0470 : db $07 ; Blue rupee xyz:{ 0x1C0, 0x040, U }\n #_01E518: dw $1058 : db $0B ; Heart xyz:{ 0x160, 0x100, U }\n #_01E51B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DC", + "code": "RoomData_PotItems_Room00DC:\n #_01E51D: dw $0438 : db $07 ; Blue rupee xyz:{ 0x0E0, 0x040, U }\n #_01E520: dw $0470 : db $0A ; Bomb xyz:{ 0x1C0, 0x040, U }\n #_01E523: dw $1044 : db $0B ; Heart xyz:{ 0x110, 0x100, U }\n #_01E526: dw $1C0C : db $09 ; 5 arrows xyz:{ 0x030, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DD", + "code": "RoomData_PotItems_Room00DD:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DE", + "code": "RoomData_PotItems_Room00DE:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00DF", + "code": "RoomData_PotItems_Room00DF:\n #_01E529: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E0", + "code": "RoomData_PotItems_Room00E0:\n #_01E52B: dw $0818 : db $0B ; Heart xyz:{ 0x060, 0x080, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E1", + "code": "RoomData_PotItems_Room00E1:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E2", + "code": "RoomData_PotItems_Room00E2:\n #_01E52E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E3", + "code": "RoomData_PotItems_Room00E3:\n #_01E530: dw $3964 : db $01 ; Green rupee xyz:{ 0x190, 0x190, L }\n #_01E533: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E4", + "code": "RoomData_PotItems_Room00E4:\n #_01E535: dw $0920 : db $07 ; Blue rupee xyz:{ 0x080, 0x090, U }\n #_01E538: dw $0A70 : db $01 ; Green rupee xyz:{ 0x1C0, 0x0A0, U }\n #_01E53B: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E5", + "code": "RoomData_PotItems_Room00E5:\n #_01E53D: dw $0430 : db $01 ; Green rupee xyz:{ 0x0C0, 0x040, U }\n #_01E540: dw $044C : db $01 ; Green rupee xyz:{ 0x130, 0x040, U }\n #_01E543: dw $1070 : db $01 ; Green rupee xyz:{ 0x1C0, 0x100, U }\n #_01E546: dw $1240 : db $07 ; Blue rupee xyz:{ 0x100, 0x120, U }\n #_01E549: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E6", + "code": "RoomData_PotItems_Room00E6:\n #_01E54B: dw $0C6C : db $09 ; 5 arrows xyz:{ 0x1B0, 0x0C0, U }\n #_01E54E: dw $1058 : db $0B ; Heart xyz:{ 0x160, 0x100, U }\n #_01E551: dw $1838 : db $01 ; Green rupee xyz:{ 0x0E0, 0x180, U }\n #_01E554: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E7", + "code": "RoomData_PotItems_Room00E7:\n #_01E556: dw $0544 : db $01 ; Green rupee xyz:{ 0x110, 0x050, U }\n #_01E559: dw $0548 : db $01 ; Green rupee xyz:{ 0x120, 0x050, U }\n #_01E55C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E8", + "code": "RoomData_PotItems_Room00E8:\n #_01E55E: dw $0460 : db $0B ; Heart xyz:{ 0x180, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00E9", + "code": "RoomData_PotItems_Room00E9:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00EA", + "code": "RoomData_PotItems_Room00EA:\n #_01E561: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00EB", + "code": "RoomData_PotItems_Room00EB:\n #_01E563: dw $08CE : db $07 ; Blue rupee xyz:{ 0x138, 0x080, U }\n #_01E566: dw $08D2 : db $07 ; Blue rupee xyz:{ 0x148, 0x080, U }\n #_01E569: dw $0E58 : db $0C ; Small magic xyz:{ 0x160, 0x0E0, U }\n #_01E56C: dw $0E5C : db $0B ; Heart xyz:{ 0x170, 0x0E0, U }\n #_01E56F: dw $0E60 : db $0C ; Small magic xyz:{ 0x180, 0x0E0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00EC", + "code": "RoomData_PotItems_Room00EC:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00ED", + "code": "RoomData_PotItems_Room00ED:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00EE", + "code": "RoomData_PotItems_Room00EE:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00EF", + "code": "RoomData_PotItems_Room00EF:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F0", + "code": "RoomData_PotItems_Room00F0:\n #_01E572: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F1", + "code": "RoomData_PotItems_Room00F1:\n #_01E574: dw $0540 : db $0B ; Heart xyz:{ 0x100, 0x050, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F2", + "code": "RoomData_PotItems_Room00F2:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F3", + "code": "RoomData_PotItems_Room00F3:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F4", + "code": "RoomData_PotItems_Room00F4:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F5", + "code": "RoomData_PotItems_Room00F5:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F6", + "code": "RoomData_PotItems_Room00F6:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F7", + "code": "RoomData_PotItems_Room00F7:\n #_01E577: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F8", + "code": "RoomData_PotItems_Room00F8:\n #_01E579: dw $0DF2 : db $0D ; Full magic xyz:{ 0x1C8, 0x0D0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00F9", + "code": "RoomData_PotItems_Room00F9:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FA", + "code": "RoomData_PotItems_Room00FA:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FB", + "code": "RoomData_PotItems_Room00FB:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FC", + "code": "RoomData_PotItems_Room00FC:\n #_01E57C: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FD", + "code": "RoomData_PotItems_Room00FD:\n #_01E57E: dw $0658 : db $07 ; Blue rupee xyz:{ 0x160, 0x060, U }\n #_01E581: dw $0664 : db $07 ; Blue rupee xyz:{ 0x190, 0x060, U }\n #_01E584: dw $1754 : db $07 ; Blue rupee xyz:{ 0x150, 0x170, U }\n #_01E587: dw $1854 : db $07 ; Blue rupee xyz:{ 0x150, 0x180, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FE", + "code": "RoomData_PotItems_Room00FE:\n #_01E58A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room00FF", + "code": "RoomData_PotItems_Room00FF:\n #_01E58C: dw $085C : db $0B ; Heart xyz:{ 0x170, 0x080, U }\n #_01E58F: dw $0860 : db $0B ; Heart xyz:{ 0x180, 0x080, U }\n #_01E592: dw $1C70 : db $01 ; Green rupee xyz:{ 0x1C0, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0100", + "code": "RoomData_PotItems_Room0100:\n #_01E595: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0101", + "code": "RoomData_PotItems_Room0101:\n #_01E597: dw $140C : db $0B ; Heart xyz:{ 0x030, 0x140, U }\n #_01E59A: dw $13E0 : db $0E ; Cucco xyz:{ 0x180, 0x130, U }\n #_01E59D: dw $13E4 : db $0B ; Heart xyz:{ 0x190, 0x130, U }\n #_01E5A0: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0102", + "code": "RoomData_PotItems_Room0102:\n #_01E5A2: dw $1392 : db $0B ; Heart xyz:{ 0x048, 0x130, U }\n #_01E5A5: dw $1396 : db $0B ; Heart xyz:{ 0x058, 0x130, U }\n #_01E5A8: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0103", + "code": "RoomData_PotItems_Room0103:\n #_01E5AA: dw $078C : db $0E ; Cucco xyz:{ 0x030, 0x070, U }\n #_01E5AD: dw $0C0C : db $0B ; Heart xyz:{ 0x030, 0x0C0, U }\n #_01E5B0: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0104", + "code": "RoomData_PotItems_Room0104:\n #_01E5B2: dw $15CA : db $0B ; Heart xyz:{ 0x128, 0x150, U }\n #_01E5B5: dw $16CA : db $0B ; Heart xyz:{ 0x128, 0x160, U }\n #_01E5B8: dw $17CA : db $0B ; Heart xyz:{ 0x128, 0x170, U }\n #_01E5BB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0105", + "code": "RoomData_PotItems_Room0105:\n #_01E5BD: dw $141E : db $0B ; Heart xyz:{ 0x078, 0x140, U }\n #_01E5C0: dw $151C : db $0B ; Heart xyz:{ 0x070, 0x150, U }\n #_01E5C3: dw $1520 : db $0B ; Heart xyz:{ 0x080, 0x150, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0106", + "code": "RoomData_PotItems_Room0106:\n #_01E5C6: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0107", + "code": "RoomData_PotItems_Room0107:\n #_01E5C8: dw $17D6 : db $0A ; Bomb xyz:{ 0x158, 0x170, U }\n #_01E5CB: dw $17DE : db $09 ; 5 arrows xyz:{ 0x178, 0x170, U }\n #_01E5CE: dw $17E6 : db $0A ; Bomb xyz:{ 0x198, 0x170, U }\n #_01E5D1: dw $19D6 : db $01 ; Green rupee xyz:{ 0x158, 0x190, U }\n #_01E5D4: dw $19E6 : db $01 ; Green rupee xyz:{ 0x198, 0x190, U }\n #_01E5D7: dw $1BD6 : db $0A ; Bomb xyz:{ 0x158, 0x1B0, U }\n #_01E5DA: dw $1BE6 : db $0A ; Bomb xyz:{ 0x198, 0x1B0, U }\n #_01E5DD: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0108", + "code": "RoomData_PotItems_Room0108:\n #_01E5DF: dw $13A6 : db $0E ; Cucco xyz:{ 0x098, 0x130, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0109", + "code": "RoomData_PotItems_Room0109:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010A", + "code": "RoomData_PotItems_Room010A:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010B", + "code": "RoomData_PotItems_Room010B:\n #_01E5E2: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010C", + "code": "RoomData_PotItems_Room010C:\n #_01E5E4: dw $0E58 : db $0B ; Heart xyz:{ 0x160, 0x0E0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010D", + "code": "RoomData_PotItems_Room010D:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010E", + "code": "RoomData_PotItems_Room010E:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room010F", + "code": "RoomData_PotItems_Room010F:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0110", + "code": "RoomData_PotItems_Room0110:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0111", + "code": "RoomData_PotItems_Room0111:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0112", + "code": "RoomData_PotItems_Room0112:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0113", + "code": "RoomData_PotItems_Room0113:\n #_01E5E7: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0114", + "code": "RoomData_PotItems_Room0114:\n #_01E5E9: dw $045C : db $0B ; Heart xyz:{ 0x170, 0x040, U }\n #_01E5EC: dw $0460 : db $0B ; Heart xyz:{ 0x180, 0x040, U }\n #_01E5EF: dw $055C : db $0A ; Bomb xyz:{ 0x170, 0x050, U }\n #_01E5F2: dw $0560 : db $0A ; Bomb xyz:{ 0x180, 0x050, U }\n #_01E5F5: dw $0A5C : db $09 ; 5 arrows xyz:{ 0x170, 0x0A0, U }\n #_01E5F8: dw $0A60 : db $0B ; Heart xyz:{ 0x180, 0x0A0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0115", + "code": "RoomData_PotItems_Room0115:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0116", + "code": "RoomData_PotItems_Room0116:\n #_01E5FB: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0117", + "code": "RoomData_PotItems_Room0117:\n #_01E5FD: dw $038A : db $0B ; Heart xyz:{ 0x028, 0x030, U }\n #_01E600: dw $038E : db $0B ; Heart xyz:{ 0x038, 0x030, U }\n #_01E603: dw $03A6 : db $0B ; Heart xyz:{ 0x098, 0x030, U }\n #_01E606: dw $03AA : db $0B ; Heart xyz:{ 0x0A8, 0x030, U }\n #_01E609: dw $048A : db $0B ; Heart xyz:{ 0x028, 0x040, U }\n #_01E60C: dw $048E : db $0B ; Heart xyz:{ 0x038, 0x040, U }\n #_01E60F: dw $04A6 : db $0B ; Heart xyz:{ 0x098, 0x040, U }\n #_01E612: dw $04AA : db $0B ; Heart xyz:{ 0x0A8, 0x040, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0118", + "code": "RoomData_PotItems_Room0118:\n #_01E615: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0119", + "code": "RoomData_PotItems_Room0119:\n #_01E617: dw $1C2C : db $0B ; Heart xyz:{ 0x0B0, 0x1C0, U }\n #_01E61A: dw $1C30 : db $01 ; Green rupee xyz:{ 0x0C0, 0x1C0, U }\n #_01E61D: dw $1C4C : db $0B ; Heart xyz:{ 0x130, 0x1C0, U }\n #_01E620: dw $1C50 : db $0B ; Heart xyz:{ 0x140, 0x1C0, U }\n #_01E623: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011A", + "code": "RoomData_PotItems_Room011A:\n #_01E625: dw $0AD6 : db $0B ; Heart xyz:{ 0x158, 0x0A0, U }\n #_01E628: dw $0ADA : db $0B ; Heart xyz:{ 0x168, 0x0A0, U }\n #_01E62B: dw $0AE2 : db $0B ; Heart xyz:{ 0x188, 0x0A0, U }\n #_01E62E: dw $0AE6 : db $0B ; Heart xyz:{ 0x198, 0x0A0, U }\n #_01E631: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011B", + "code": "RoomData_PotItems_Room011B:\n #_01E633: dw $3618 : db $0B ; Heart xyz:{ 0x060, 0x160, L }\n #_01E636: dw $3620 : db $0B ; Heart xyz:{ 0x080, 0x160, L }\n #_01E639: dw $3628 : db $0B ; Heart xyz:{ 0x0A0, 0x160, L }\n #_01E63C: dw $165C : db $0A ; Bomb xyz:{ 0x170, 0x160, U }\n #_01E63F: dw $1660 : db $0B ; Heart xyz:{ 0x180, 0x160, U }\n #_01E642: dw $3718 : db $0B ; Heart xyz:{ 0x060, 0x170, L }\n #_01E645: dw $175C : db $0A ; Bomb xyz:{ 0x170, 0x170, U }\n #_01E648: dw $1760 : db $0B ; Heart xyz:{ 0x180, 0x170, U }\n #_01E64B: dw $381C : db $0B ; Heart xyz:{ 0x070, 0x180, L }\n #_01E64E: dw $185C : db $0A ; Bomb xyz:{ 0x170, 0x180, U }\n #_01E651: dw $1860 : db $0B ; Heart xyz:{ 0x180, 0x180, U }\n #_01E654: dw $195C : db $0A ; Bomb xyz:{ 0x170, 0x190, U }\n #_01E657: dw $1960 : db $0B ; Heart xyz:{ 0x180, 0x190, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011C", + "code": "RoomData_PotItems_Room011C:\n #_01E65A: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011D", + "code": "RoomData_PotItems_Room011D:\n #_01E65C: dw $063C : db $07 ; Blue rupee xyz:{ 0x0F0, 0x060, U }\n #_01E65F: dw $0640 : db $07 ; Blue rupee xyz:{ 0x100, 0x060, U }\n #_01E662: dw $073C : db $07 ; Blue rupee xyz:{ 0x0F0, 0x070, U }\n #_01E665: dw $0740 : db $07 ; Blue rupee xyz:{ 0x100, 0x070, U }\n #_01E668: dw $083C : db $07 ; Blue rupee xyz:{ 0x0F0, 0x080, U }\n #_01E66B: dw $0840 : db $07 ; Blue rupee xyz:{ 0x100, 0x080, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011E", + "code": "RoomData_PotItems_Room011E:\n #_01E66E: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room011F", + "code": "RoomData_PotItems_Room011F:\n #_01E670: dw $1CAE : db $0B ; Heart xyz:{ 0x0B8, 0x1C0, U }\n #_01E673: dw $1CB2 : db $0B ; Heart xyz:{ 0x0C8, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0120", + "code": "RoomData_PotItems_Room0120:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0121", + "code": "RoomData_PotItems_Room0121:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0122", + "code": "RoomData_PotItems_Room0122:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0123", + "code": "RoomData_PotItems_Room0123:\n #_01E676: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0124", + "code": "RoomData_PotItems_Room0124:\n #_01E678: dw $1414 : db $07 ; Blue rupee xyz:{ 0x050, 0x140, U }\n #_01E67B: dw $1428 : db $07 ; Blue rupee xyz:{ 0x0A0, 0x140, U }\n #_01E67E: dw $1514 : db $07 ; Blue rupee xyz:{ 0x050, 0x150, U }\n #_01E681: dw $1528 : db $07 ; Blue rupee xyz:{ 0x0A0, 0x150, U }\n #_01E684: dw $1614 : db $07 ; Blue rupee xyz:{ 0x050, 0x160, U }\n #_01E687: dw $1628 : db $07 ; Blue rupee xyz:{ 0x0A0, 0x160, U }\n #_01E68A: dw $1818 : db $07 ; Blue rupee xyz:{ 0x060, 0x180, U }\n #_01E68D: dw $181C : db $07 ; Blue rupee xyz:{ 0x070, 0x180, U }\n #_01E690: dw $1820 : db $07 ; Blue rupee xyz:{ 0x080, 0x180, U }\n #_01E693: dw $1824 : db $07 ; Blue rupee xyz:{ 0x090, 0x180, U }\n #_01E696: dw $FFFF\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0125", + "code": "RoomData_PotItems_Room0125:\n #_01E698: dw $1918 : db $07 ; Blue rupee xyz:{ 0x060, 0x190, U }\n #_01E69B: dw $191C : db $07 ; Blue rupee xyz:{ 0x070, 0x190, U }\n #_01E69E: dw $1920 : db $07 ; Blue rupee xyz:{ 0x080, 0x190, U }\n #_01E6A1: dw $1924 : db $07 ; Blue rupee xyz:{ 0x090, 0x190, U }\n #_01E6A4: dw $1658 : db $0B ; Heart xyz:{ 0x160, 0x160, U }\n #_01E6A7: dw $1664 : db $0B ; Heart xyz:{ 0x190, 0x160, U }\n #_01E6AA: dw $1C58 : db $0B ; Heart xyz:{ 0x160, 0x1C0, U }\n #_01E6AD: dw $1C64 : db $0B ; Heart xyz:{ 0x190, 0x1C0, U }\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0126", + "code": "RoomData_PotItems_Room0126:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0127", + "code": "RoomData_PotItems_Room0127:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0128", + "code": "RoomData_PotItems_Room0128:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0129", + "code": "RoomData_PotItems_Room0129:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012A", + "code": "RoomData_PotItems_Room012A:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012B", + "code": "RoomData_PotItems_Room012B:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012C", + "code": "RoomData_PotItems_Room012C:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012D", + "code": "RoomData_PotItems_Room012D:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012E", + "code": "RoomData_PotItems_Room012E:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room012F", + "code": "RoomData_PotItems_Room012F:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0130", + "code": "RoomData_PotItems_Room0130:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0131", + "code": "RoomData_PotItems_Room0131:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0132", + "code": "RoomData_PotItems_Room0132:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0133", + "code": "RoomData_PotItems_Room0133:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0134", + "code": "RoomData_PotItems_Room0134:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0135", + "code": "RoomData_PotItems_Room0135:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0136", + "code": "RoomData_PotItems_Room0136:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0137", + "code": "RoomData_PotItems_Room0137:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0138", + "code": "RoomData_PotItems_Room0138:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room0139", + "code": "RoomData_PotItems_Room0139:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013A", + "code": "RoomData_PotItems_Room013A:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013B", + "code": "RoomData_PotItems_Room013B:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013C", + "code": "RoomData_PotItems_Room013C:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013D", + "code": "RoomData_PotItems_Room013D:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013E", + "code": "RoomData_PotItems_Room013E:", + "file": "bank_01.asm" + }, + { + "name": "RoomData_PotItems_Room013F", + "code": "RoomData_PotItems_Room013F:\n #_01E6B0: dw $FFFF\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RevealPotItem", + "code": "RevealPotItem:\n #_01E6B2: STA.b $04\n\n #_01E6B4: LDA.w $0B9C\n #_01E6B7: AND.w #$FF00\n #_01E6BA: STA.w $0B9C\n\n #_01E6BD: LDA.b $A0\n #_01E6BF: ASL A\n #_01E6C0: TAX\n\n #_01E6C1: LDA.l RoomData_PotItems_Pointers,X\n #_01E6C5: STA.b $00\n\n #_01E6C7: LDA.w #RoomData_PotItems_Pointers>>16\n #_01E6CA: STA.b $02\n\n #_01E6CC: LDY.w #$FFFD\n #_01E6CF: LDX.w #$FFFF\n\n.check_next\n #_01E6D2: INY\n #_01E6D3: INY\n #_01E6D4: INY\n\n #_01E6D5: LDA.b [$00],Y\n #_01E6D7: CMP.w #$FFFF\n #_01E6DA: BEQ .exit\n\n #_01E6DC: INX\n\n #_01E6DD: AND.w #$7FFF\n #_01E6E0: CMP.b $04\n #_01E6E2: BNE .check_next\n\n #_01E6E4: INY\n #_01E6E5: INY\n\n #_01E6E6: LDA.b [$00],Y\n #_01E6E8: AND.w #$00FF\n #_01E6EB: BEQ .exit\n\n #_01E6ED: CMP.w #$0080\n #_01E6F0: BCS .reveal_tile\n\n; ---------------------------------------------------------\n\n #_01E6F2: STA.b $0E\n\n #_01E6F4: CMP.w #$0008\n #_01E6F7: BEQ .is_key\n\n #_01E6F9: TXY\n\n #_01E6FA: LDA.b $A0\n #_01E6FC: ASL A\n #_01E6FD: TAX\n\n #_01E6FE: STZ.b $00\n\n #_01E700: SEC\n\n.shift_it\n #_01E701: ROL.b $00\n\n #_01E703: DEY\n #_01E704: BPL .shift_it\n\n; ---------------------------------------------------------\n\n #_01E706: LDA.l $7EF580,X\n #_01E70A: AND.b $00\n #_01E70C: BNE .exit\n\n #_01E70E: LDA.l $7EF580,X\n #_01E712: ORA.b $00\n #_01E714: STA.l $7EF580,X\n\n #_01E718: LDA.b $0E\n\n.is_key\n #_01E71A: TSB.w $0B9C\n\n.exit\n #_01E71D: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_UpdateTilemapWithCommonTile", + "code": "Underworld_UpdateTilemapWithCommonTile:\n #_01E7A9: PHX\n\n #_01E7AA: STY.b $0E\n #_01E7AC: STZ.b $0F\n\n #_01E7AE: PHB\n\n #_01E7AF: LDA.b #RoomDrawObjectData>>16\n #_01E7B1: PHA\n #_01E7B2: PLB\n\n #_01E7B3: REP #$30\n\n #_01E7B5: LDA.b $0E\n #_01E7B7: CMP.w #$0008\n #_01E7BA: BNE .not_freezor_hole\n\n #_01E7BC: PHA\n\n #_01E7BD: INC A\n #_01E7BE: INC A\n #_01E7BF: STA.b $0E\n\n #_01E7C1: LDA.b $00\n #_01E7C3: PHA\n\n #_01E7C4: CLC\n #_01E7C5: ADC.w #$0010\n #_01E7C8: STA.b $00\n\n #_01E7CA: JSR .replace_tile\n\n #_01E7CD: PLA\n #_01E7CE: STA.b $00\n\n #_01E7D0: PLA\n #_01E7D1: STA.b $0E\n\n.not_freezor_hole\n #_01E7D3: JSR .replace_tile\n\n #_01E7D6: SEP #$30\n\n #_01E7D8: LDA.b #$01\n #_01E7DA: STA.b $14\n\n #_01E7DC: PLB\n #_01E7DD: PLX\n\n #_01E7DE: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_DeleteRupeeTile", + "code": "Underworld_DeleteRupeeTile:\n #_01E8BD: PHB\n\n #_01E8BE: LDA.b #RoomDrawObjectData>>16\n #_01E8C0: PHA\n #_01E8C1: PLB\n\n #_01E8C2: REP #$30\n\n #_01E8C4: LDA.b $00\n #_01E8C6: AND.w #$01F8\n #_01E8C9: ASL A\n #_01E8CA: ASL A\n #_01E8CB: ASL A\n #_01E8CC: STA.b $06\n\n #_01E8CE: LDA.b $02\n #_01E8D0: AND.w #$01F8\n\n #_01E8D3: LSR A\n #_01E8D4: LSR A\n #_01E8D5: LSR A\n\n #_01E8D6: ORA.b $06\n #_01E8D8: ASL A\n #_01E8D9: STA.b $06\n\n; ---------------------------------------------------------\n\n #_01E8DB: LDX.w $1000\n\n #_01E8DE: LDA.w #$190F\n #_01E8E1: STA.w $1006,X\n #_01E8E4: STA.w $100C,X\n\n #_01E8E7: LDX.b $06\n\n #_01E8E9: STA.l $7E2000,X\n #_01E8ED: STA.l $7E2080,X\n\n #_01E8F1: AND.w #$03FF\n #_01E8F4: TAX\n\n #_01E8F5: LDA.l $7EFE00,X\n #_01E8F9: AND.w #$00FF\n #_01E8FC: STA.b $08\n #_01E8FE: STA.b $09\n\n #_01E900: LDA.b $06\n #_01E902: LSR A\n #_01E903: TAX\n\n #_01E904: LDA.b $08\n #_01E906: STA.l $7F2000,X\n #_01E90A: STA.l $7F2040,X\n\n; ---------------------------------------------------------\n\n #_01E90E: LDX.w $1000\n\n #_01E911: LDA.w #$0000\n #_01E914: JSR .draw_half\n #_01E917: STA.w $1002,X\n\n #_01E91A: LDA.w #$0080\n #_01E91D: JSR .draw_half\n #_01E920: STA.w $1008,X\n\n #_01E923: LDA.w #$0100\n #_01E926: STA.w $1004,X\n #_01E929: STA.w $100A,X\n\n; ---------------------------------------------------------\n\n #_01E92C: LDA.w #$FFFF\n #_01E92F: STA.w $100E,X\n\n #_01E932: TXA\n #_01E933: CLC\n #_01E934: ADC.w #$0018\n #_01E937: STA.w $1000\n\n #_01E93A: SEP #$30\n\n #_01E93C: LDA.w $0403\n #_01E93F: ORA.b #$10\n #_01E941: STA.w $0403\n\n #_01E944: LDA.b #$01\n #_01E946: STA.b $14\n\n #_01E948: PLB\n\n #_01E949: RTL", + "file": "bank_01.asm" + }, + { + "name": "RoomData_ChestItems", + "code": "RoomData_ChestItems:\n #_01E96E: dw $0032 : db $24 ; ROOM 0032 - ITEMGET 24\n #_01E971: dw $0055 : db $12 ; ROOM 0055 - ITEMGET 12\n #_01E974: dw $0071 : db $0C ; ROOM 0071 - ITEMGET 0C\n #_01E977: dw $00A8 : db $25 ; ROOM 00A8 - ITEMGET 25\n #_01E97A: dw $0113 : db $19 ; ROOM 0113 - ITEMGET 19\n #_01E97D: dw $80A9 : db $0B ; ROOM 00A9 - ITEMGET 0B - big chest\n #_01E980: dw $0016 : db $28 ; ROOM 0016 - ITEMGET 28 - !UNUSED chests in swamp TIC room\n #_01E983: dw $0016 : db $25 ; ROOM 0016 - ITEMGET 25 - !UNUSED chests in swamp TIC room\n #_01E986: dw $0037 : db $33 ; ROOM 0037 - ITEMGET 33\n #_01E989: dw $8036 : db $0A ; ROOM 0036 - ITEMGET 0A - big chest\n #_01E98C: dw $010B : db $28 ; ROOM 010B - ITEMGET 28\n #_01E98F: dw $8073 : db $1B ; ROOM 0073 - ITEMGET 1B - big chest\n #_01E992: dw $0067 : db $25 ; ROOM 0067 - ITEMGET 25\n #_01E995: dw $007E : db $28 ; ROOM 007E - ITEMGET 28\n #_01E998: dw $8058 : db $07 ; ROOM 0058 - ITEMGET 07 - big chest\n #_01E99B: dw $0058 : db $33 ; ROOM 0058 - ITEMGET 33\n #_01E99E: dw $0057 : db $32 ; ROOM 0057 - ITEMGET 32\n #_01E9A1: dw $0057 : db $24 ; ROOM 0057 - ITEMGET 24\n #_01E9A4: dw $001F : db $32 ; ROOM 001F - ITEMGET 32\n #_01E9A7: dw $007E : db $24 ; ROOM 007E - ITEMGET 24\n #_01E9AA: dw $809E : db $22 ; ROOM 009E - ITEMGET 22 - big chest\n #_01E9AD: dw $0077 : db $33 ; ROOM 0077 - ITEMGET 33\n #_01E9B0: dw $0005 : db $28 ; ROOM 0005 - ITEMGET 28 - !UNUSED chest in unused room\n #_01E9B3: dw $00B9 : db $40 ; ROOM 00B9 - ITEMGET 40\n #_01E9B6: dw $0074 : db $33 ; ROOM 0074 - ITEMGET 33\n #_01E9B9: dw $00B8 : db $32 ; ROOM 00B8 - ITEMGET 32\n #_01E9BC: dw $0104 : db $12 ; ROOM 0104 - ITEMGET 12\n #_01E9BF: dw $00FE : db $41 ; ROOM 00FE - ITEMGET 41\n #_01E9C2: dw $0075 : db $32 ; ROOM 0075 - ITEMGET 32\n #_01E9C5: dw $010C : db $17 ; ROOM 010C - ITEMGET 17\n #_01E9C8: dw $0068 : db $24 ; ROOM 0068 - ITEMGET 24\n #_01E9CB: dw $0085 : db $25 ; ROOM 0085 - ITEMGET 25\n #_01E9CE: dw $0103 : db $16 ; ROOM 0103 - ITEMGET 16\n #_01E9D1: dw $013D : db $36 ; ROOM 013D - ITEMGET 36 - !UNUSED chest in room that doesn't exist\n #_01E9D4: dw $002E : db $25 ; ROOM 002E - ITEMGET 25\n #_01E9D7: dw $012D : db $36 ; ROOM 012D - ITEMGET 36\n #_01E9DA: dw $00B3 : db $24 ; ROOM 00B3 - ITEMGET 24\n #_01E9DD: dw $003F : db $33 ; ROOM 003F - ITEMGET 33\n #_01E9E0: dw $005F : db $24 ; ROOM 005F - ITEMGET 24\n #_01E9E3: dw $00AE : db $24 ; ROOM 00AE - ITEMGET 24\n #_01E9E6: dw $0087 : db $32 ; ROOM 0087 - ITEMGET 32\n #_01E9E9: dw $0108 : db $0C ; ROOM 0108 - ITEMGET 0C\n #_01E9EC: dw $0106 : db $2A ; ROOM 0106 - ITEMGET 2A\n #_01E9EF: dw $011C : db $46 ; ROOM 011C - ITEMGET 46\n #_01E9F2: dw $010A : db $17 ; ROOM 010A - ITEMGET 17\n #_01E9F5: dw $00AA : db $33 ; ROOM 00AA - ITEMGET 33\n #_01E9F8: dw $8027 : db $1F ; ROOM 0027 - ITEMGET 1F - big chest\n #_01E9FB: dw $0027 : db $25 ; ROOM 0027 - ITEMGET 25\n #_01E9FE: dw $0059 : db $24 ; ROOM 0059 - ITEMGET 24\n #_01EA01: dw $00DB : db $33 ; ROOM 00DB - ITEMGET 33\n #_01EA04: dw $00DB : db $32 ; ROOM 00DB - ITEMGET 32\n #_01EA07: dw $00DC : db $25 ; ROOM 00DC - ITEMGET 25\n #_01EA0A: dw $00CB : db $36 ; ROOM 00CB - ITEMGET 36\n #_01EA0D: dw $0065 : db $28 ; ROOM 0065 - ITEMGET 28\n #_01EA10: dw $8044 : db $1C ; ROOM 0044 - ITEMGET 1C - big chest\n #_01EA13: dw $0045 : db $24 ; ROOM 0045 - ITEMGET 24\n #_01EA16: dw $00B6 : db $24 ; ROOM 00B6 - ITEMGET 24\n #_01EA19: dw $8024 : db $06 ; ROOM 0024 - ITEMGET 06 - big chest\n #_01EA1C: dw $00B7 : db $33 ; ROOM 00B7 - ITEMGET 33\n #_01EA1F: dw $00B7 : db $24 ; ROOM 00B7 - ITEMGET 24\n #_01EA22: dw $00D6 : db $25 ; ROOM 00D6 - ITEMGET 25\n #_01EA25: dw $0014 : db $32 ; ROOM 0014 - ITEMGET 32\n #_01EA28: dw $00D5 : db $34 ; ROOM 00D5 - ITEMGET 34\n #_01EA2B: dw $00D5 : db $35 ; ROOM 00D5 - ITEMGET 35\n #_01EA2E: dw $00D5 : db $36 ; ROOM 00D5 - ITEMGET 36\n #_01EA31: dw $00D5 : db $24 ; ROOM 00D5 - ITEMGET 24\n #_01EA34: dw $0004 : db $24 ; ROOM 0004 - ITEMGET 24\n #_01EA37: dw $003A : db $32 ; ROOM 003A - ITEMGET 32\n #_01EA3A: dw $002A : db $24 ; ROOM 002A - ITEMGET 24\n #_01EA3D: dw $002A : db $24 ; ROOM 002A - ITEMGET 24\n #_01EA40: dw $801A : db $09 ; ROOM 001A - ITEMGET 09 - big chest\n #_01EA43: dw $001A : db $25 ; ROOM 001A - ITEMGET 25\n #_01EA46: dw $001A : db $35 ; ROOM 001A - ITEMGET 35\n #_01EA49: dw $000A : db $24 ; ROOM 000A - ITEMGET 24\n #_01EA4C: dw $006A : db $43 ; ROOM 006A - ITEMGET 43\n #_01EA4F: dw $006A : db $24 ; ROOM 006A - ITEMGET 24\n #_01EA52: dw $002B : db $33 ; ROOM 002B - ITEMGET 33\n #_01EA55: dw $0019 : db $28 ; ROOM 0019 - ITEMGET 28\n #_01EA58: dw $0019 : db $24 ; ROOM 0019 - ITEMGET 24\n #_01EA5B: dw $0009 : db $24 ; ROOM 0009 - ITEMGET 24\n #_01EA5E: dw $00C2 : db $24 ; ROOM 00C2 - ITEMGET 24\n #_01EA61: dw $00A2 : db $24 ; ROOM 00A2 - ITEMGET 24\n #_01EA64: dw $00C1 : db $25 ; ROOM 00C1 - ITEMGET 25\n #_01EA67: dw $80C3 : db $15 ; ROOM 00C3 - ITEMGET 15 - big chest\n #_01EA6A: dw $00C3 : db $33 ; ROOM 00C3 - ITEMGET 33\n #_01EA6D: dw $00D1 : db $32 ; ROOM 00D1 - ITEMGET 32\n #_01EA70: dw $00B3 : db $24 ; ROOM 00B3 - ITEMGET 24\n #_01EA73: dw $010D : db $17 ; ROOM 010D - ITEMGET 17\n #_01EA76: dw $010D : db $36 ; ROOM 010D - ITEMGET 36\n #_01EA79: dw $0012 : db $3F ; ROOM 0012 - ITEMGET 3F\n #_01EA7C: dw $00F8 : db $28 ; ROOM 00F8 - ITEMGET 28\n #_01EA7F: dw $00F8 : db $36 ; ROOM 00F8 - ITEMGET 36\n #_01EA82: dw $0105 : db $41 ; ROOM 0105 - ITEMGET 41\n #_01EA85: dw $0105 : db $28 ; ROOM 0105 - ITEMGET 28\n #_01EA88: dw $0105 : db $41 ; ROOM 0105 - ITEMGET 41\n #_01EA8B: dw $0117 : db $18 ; ROOM 0117 - ITEMGET 18\n #_01EA8E: dw $002F : db $17 ; ROOM 002F - ITEMGET 17\n #_01EA91: dw $002F : db $36 ; ROOM 002F - ITEMGET 36\n #_01EA94: dw $002F : db $36 ; ROOM 002F - ITEMGET 36\n #_01EA97: dw $002F : db $36 ; ROOM 002F - ITEMGET 36\n #_01EA9A: dw $002F : db $28 ; ROOM 002F - ITEMGET 28\n #_01EA9D: dw $0028 : db $24 ; ROOM 0028 - ITEMGET 24\n #_01EAA0: dw $0046 : db $25 ; ROOM 0046 - ITEMGET 25\n #_01EAA3: dw $0034 : db $36 ; ROOM 0034 - ITEMGET 36\n #_01EAA6: dw $0035 : db $32 ; ROOM 0035 - ITEMGET 32\n #_01EAA9: dw $0076 : db $36 ; ROOM 0076 - ITEMGET 36\n #_01EAAC: dw $0076 : db $36 ; ROOM 0076 - ITEMGET 36\n #_01EAAF: dw $0066 : db $36 ; ROOM 0066 - ITEMGET 36\n #_01EAB2: dw $00D0 : db $24 ; ROOM 00D0 - ITEMGET 24\n #_01EAB5: dw $00E0 : db $24 ; ROOM 00E0 - ITEMGET 24\n #_01EAB8: dw $007B : db $28 ; ROOM 007B - ITEMGET 28\n #_01EABB: dw $007B : db $44 ; ROOM 007B - ITEMGET 44\n #_01EABE: dw $007B : db $36 ; ROOM 007B - ITEMGET 36\n #_01EAC1: dw $007B : db $36 ; ROOM 007B - ITEMGET 36\n #_01EAC4: dw $007C : db $44 ; ROOM 007C - ITEMGET 44\n #_01EAC7: dw $007C : db $44 ; ROOM 007C - ITEMGET 44\n #_01EACA: dw $007C : db $28 ; ROOM 007C - ITEMGET 28\n #_01EACD: dw $007C : db $28 ; ROOM 007C - ITEMGET 28\n #_01EAD0: dw $007D : db $24 ; ROOM 007D - ITEMGET 24\n #_01EAD3: dw $008B : db $33 ; ROOM 008B - ITEMGET 33\n #_01EAD6: dw $808C : db $23 ; ROOM 008C - ITEMGET 23 - big chest\n #_01EAD9: dw $008C : db $44 ; ROOM 008C - ITEMGET 44\n #_01EADC: dw $008C : db $28 ; ROOM 008C - ITEMGET 28\n #_01EADF: dw $008C : db $44 ; ROOM 008C - ITEMGET 44\n #_01EAE2: dw $008D : db $24 ; ROOM 008D - ITEMGET 24\n #_01EAE5: dw $009D : db $25 ; ROOM 009D - ITEMGET 25\n #_01EAE8: dw $009D : db $34 ; ROOM 009D - ITEMGET 34\n #_01EAEB: dw $009D : db $36 ; ROOM 009D - ITEMGET 36\n #_01EAEE: dw $009D : db $44 ; ROOM 009D - ITEMGET 44\n #_01EAF1: dw $001C : db $32 ; ROOM 001C - ITEMGET 32\n #_01EAF4: dw $001C : db $44 ; ROOM 001C - ITEMGET 44\n #_01EAF7: dw $001C : db $28 ; ROOM 001C - ITEMGET 28\n #_01EAFA: dw $005B : db $24 ; ROOM 005B - ITEMGET 24\n #_01EAFD: dw $003D : db $28 ; ROOM 003D - ITEMGET 28\n #_01EB00: dw $003D : db $28 ; ROOM 003D - ITEMGET 28\n #_01EB03: dw $003D : db $24 ; ROOM 003D - ITEMGET 24\n #_01EB06: dw $004D : db $36 ; ROOM 004D - ITEMGET 36\n #_01EB09: dw $0080 : db $12 ; ROOM 0080 - ITEMGET 12\n #_01EB0C: dw $0072 : db $33 ; ROOM 0072 - ITEMGET 33\n #_01EB0F: dw $011D : db $17 ; ROOM 011D - ITEMGET 17\n #_01EB12: dw $011D : db $36 ; ROOM 011D - ITEMGET 36\n #_01EB15: dw $011D : db $36 ; ROOM 011D - ITEMGET 36\n #_01EB18: dw $011D : db $36 ; ROOM 011D - ITEMGET 36\n #_01EB1B: dw $011D : db $36 ; ROOM 011D - ITEMGET 36\n #_01EB1E: dw $011E : db $36 ; ROOM 011E - ITEMGET 36\n #_01EB21: dw $011E : db $36 ; ROOM 011E - ITEMGET 36\n #_01EB24: dw $011E : db $36 ; ROOM 011E - ITEMGET 36\n #_01EB27: dw $011E : db $36 ; ROOM 011E - ITEMGET 36\n #_01EB2A: dw $00EF : db $36 ; ROOM 00EF - ITEMGET 36\n #_01EB2D: dw $00EF : db $36 ; ROOM 00EF - ITEMGET 36\n #_01EB30: dw $00EF : db $36 ; ROOM 00EF - ITEMGET 36\n #_01EB33: dw $00EF : db $36 ; ROOM 00EF - ITEMGET 36\n #_01EB36: dw $00EF : db $36 ; ROOM 00EF - ITEMGET 36\n #_01EB39: dw $00FF : db $28 ; ROOM 00FF - ITEMGET 28\n #_01EB3C: dw $00FF : db $44 ; ROOM 00FF - ITEMGET 44\n #_01EB3F: dw $0124 : db $17 ; ROOM 0124 - ITEMGET 17\n #_01EB42: dw $0123 : db $28 ; ROOM 0123 - ITEMGET 28\n #_01EB45: dw $0123 : db $36 ; ROOM 0123 - ITEMGET 36\n #_01EB48: dw $0123 : db $36 ; ROOM 0123 - ITEMGET 36\n #_01EB4B: dw $0123 : db $44 ; ROOM 0123 - ITEMGET 44\n #_01EB4E: dw $0120 : db $08 ; ROOM 0120 - ITEMGET 08\n #_01EB51: dw $003C : db $41 ; ROOM 003C - ITEMGET 41\n #_01EB54: dw $003C : db $41 ; ROOM 003C - ITEMGET 41\n #_01EB57: dw $003C : db $41 ; ROOM 003C - ITEMGET 41\n #_01EB5A: dw $003C : db $41 ; ROOM 003C - ITEMGET 41\n #_01EB5D: dw $0011 : db $28 ; ROOM 0011 - ITEMGET 28\n #_01EB60: dw $0011 : db $46 ; ROOM 0011 - ITEMGET 46\n #_01EB63: dw $0011 : db $44 ; ROOM 0011 - ITEMGET 44\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "OpenChestForItem", + "code": "OpenChestForItem:\n #_01EB66: PHB\n\n #_01EB67: LDX.b #RoomDrawObjectData>>16\n #_01EB69: PHX\n #_01EB6A: PLB\n\n #_01EB6B: CMP.b #$63 ; TILETYPE 63\n #_01EB6D: BNE OpenItemChest\n\n #_01EB6F: JMP.w OpenMiniGameChest\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "OpenItemChest", + "code": "OpenItemChest:\n #_01EB72: REP #$30\n\n #_01EB74: AND.w #$00FF\n #_01EB77: SEC\n #_01EB78: SBC.w #$0058\n #_01EB7B: STA.b $0E\n\n #_01EB7D: ASL A\n #_01EB7E: PHA\n\n #_01EB7F: TAY\n #_01EB80: PHY\n\n #_01EB81: LDA.w $06E0,Y\n #_01EB84: CMP.w #$8000\n #_01EB87: BCC .not_big_key_lock\n\n #_01EB89: LDX.w $040C\n\n #_01EB8C: LDA.l $7EF366\n #_01EB90: AND.l DungeonMask,X\n #_01EB94: BNE .open_big_key_lock\n\n #_01EB96: LDA.w #$007A ; MESSAGE 007A\n #_01EB99: STA.w $1CF0\n\n #_01EB9C: SEP #$30\n\n #_01EB9E: JSL Interface_PrepAndDisplayMessage\n\n #_01EBA2: REP #$30\n\n #_01EBA4: BRA .cannot_open_big_key_lock\n\n; ---------------------------------------------------------\n\n.open_big_key_lock\n #_01EBA6: LDA.w $0402\n #_01EBA9: ORA.w RoomFlagMask,Y\n #_01EBAC: STA.w $0402\n\n #_01EBAF: LDA.w #$1529 ; queues SFX3.15 and SFX2.29\n #_01EBB2: STA.w $012E\n\n #_01EBB5: LDA.w $06E0,Y\n #_01EBB8: AND.w #$7FFF\n #_01EBBB: TAX\n\n #_01EBBC: LDY.w $046A\n\n #_01EBBF: LDA.w RoomDrawObjectData+0,Y\n #_01EBC2: STA.l $7E2000,X\n #_01EBC6: STA.b $02\n\n #_01EBC8: LDA.w RoomDrawObjectData+2,Y\n #_01EBCB: STA.l $7E2080,X\n #_01EBCF: STA.b $04\n\n #_01EBD1: LDA.w RoomDrawObjectData+4,Y\n #_01EBD4: STA.l $7E2002,X\n #_01EBD8: STA.b $06\n\n #_01EBDA: LDA.w RoomDrawObjectData+6,Y\n #_01EBDD: JMP.w .save_tile_map\n\n; ---------------------------------------------------------\n\n.no_chest_found\n #_01EBE0: PLX\n\n.cannot_open_big_key_lock\n #_01EBE1: PLY\n #_01EBE2: PLA\n\n #_01EBE3: SEP #$30\n\n #_01EBE5: PLB\n\n #_01EBE6: CLC\n\n #_01EBE7: RTL", + "file": "bank_01.asm" + }, + { + "name": "OpenBigChest", + "code": "OpenBigChest:\n #_01ED05: LDA.w $0402\n #_01ED08: ORA.w RoomFlagMask,Y\n #_01ED0B: STA.w $0402\n\n #_01ED0E: STX.b $08\n\n #_01ED10: LDA.w #$0004\n #_01ED13: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_01ED15: LDY.w #obj14C4-RoomDrawObjectData\n\n.next_column\n #_01ED18: LDA.w RoomDrawObjectData+0,Y\n #_01ED1B: STA.l $7E2000,X\n\n #_01ED1F: LDA.w RoomDrawObjectData+2,Y\n #_01ED22: STA.l $7E2080,X\n\n #_01ED26: LDA.w RoomDrawObjectData+4,Y\n #_01ED29: STA.l $7E2100,X\n\n #_01ED2D: INY\n #_01ED2E: INY\n #_01ED2F: INY\n #_01ED30: INY\n #_01ED31: INY\n #_01ED32: INY\n\n #_01ED33: INX\n #_01ED34: INX\n\n #_01ED35: DEC.b $0E\n #_01ED37: BNE .next_column\n\n; ---------------------------------------------------------\n\n #_01ED39: LDA.b $0C\n #_01ED3B: PHA\n\n #_01ED3C: JSR RoomTag_WaterOff_AdjustOverlay\n\n #_01ED3F: LDY.b $0C\n\n #_01ED41: LDA.w #$FFFF\n #_01ED44: STA.w $1100,Y\n\n #_01ED47: PLA\n #_01ED48: STA.b $0C\n\n #_01ED4A: PLY\n\n #_01ED4B: LDA.w $06E0,Y\n #_01ED4E: AND.w #$7FFF\n #_01ED51: PHA\n\n #_01ED52: INC A\n #_01ED53: INC A\n #_01ED54: STA.b $72\n\n; ---------------------------------------------------------\n\n #_01ED56: PLA\n #_01ED57: LSR A\n #_01ED58: TAX\n\n #_01ED59: LDA.w #$2727 ; TILETYPE 27\n #_01ED5C: STA.l $7F2000,X\n #_01ED60: STA.l $7F2002,X\n #_01ED64: STA.l $7F2040,X\n #_01ED68: STA.l $7F2042,X\n #_01ED6C: STA.l $7F2080,X\n #_01ED70: STA.l $7F2082,X\n\n; ---------------------------------------------------------\n\n #_01ED74: SEP #$31\n\n #_01ED76: PLB\n\n #_01ED77: JSL Underworld_FlagRoomData_Quadrants\n\n #_01ED7B: LDA.b #$0E ; SFX3.0E\n #_01ED7D: STA.w $012F\n\n #_01ED80: LDA.b #$01\n #_01ED82: STA.b $18\n #_01ED84: STA.w $0B9E\n\n #_01ED87: SEC\n\n #_01ED88: RTL", + "file": "bank_01.asm" + }, + { + "name": "OpenMiniGameChestFail", + "code": "OpenMiniGameChestFail:\n #_01ED89: STA.b $C8\n\n #_01ED8B: REP #$20\n\n #_01ED8D: LDA.w #$0162 ; MESSAGE 0162\n #_01ED90: BRA .show_message\n\n; ---------------------------------------------------------\n\n#NoMinigameCredits:\n #_01ED92: REP #$20\n\n #_01ED94: LDA.w #$0163 ; MESSAGE 0163\n\n; ---------------------------------------------------------\n\n.show_message\n #_01ED97: STA.w $1CF0\n\n #_01ED9A: SEP #$20\n\n #_01ED9C: JSL Interface_PrepAndDisplayMessage\n\n #_01EDA0: PLB\n\n #_01EDA1: CLC\n\n #_01EDA2: RTL", + "file": "bank_01.asm" + }, + { + "name": "VoOChestGamePrizes", + "code": "VoOChestGamePrizes:\n #_01EDA3: db $40 ; ITEMGET 40 - 100 RUPEES\n #_01EDA4: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EDA5: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EDA6: db $42 ; ITEMGET 42 - HEART\n #_01EDA7: db $43 ; ITEMGET 43 - ARROW\n #_01EDA8: db $44 ; ITEMGET 44 - 10 ARROWS\n #_01EDA9: db $27 ; ITEMGET 27 - BOMB\n #_01EDAA: db $17 ; ITEMGET 17 - HEART PIECE\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "OpenMiniGameChest", + "code": "OpenMiniGameChest:\n #_01EDAB: LDA.w $04C4\n #_01EDAE: BEQ NoMinigameCredits\n\n #_01EDB0: CMP.b #$FF\n #_01EDB2: BEQ OpenMiniGameChestFail\n\n #_01EDB4: DEC.w $04C4\n\n; ---------------------------------------------------------\n\n #_01EDB7: REP #$30\n\n #_01EDB9: LDA.b $20\n #_01EDBB: SEC\n #_01EDBC: SBC.w #$0004\n #_01EDBF: STA.b $00\n\n #_01EDC1: AND.w #$01F8\n\n #_01EDC4: ASL A\n #_01EDC5: ASL A\n #_01EDC6: ASL A\n\n #_01EDC7: STA.b $06\n\n #_01EDC9: LDA.b $22\n #_01EDCB: CLC\n #_01EDCC: ADC.w #$0007\n #_01EDCF: STA.b $02\n\n #_01EDD1: AND.w #$01F8\n\n #_01EDD4: LSR A\n #_01EDD5: LSR A\n #_01EDD6: LSR A\n\n #_01EDD7: ORA.b $06\n #_01EDD9: TAX\n\n; ---------------------------------------------------------\n\n #_01EDDA: LDA.l $7F2000,X\n #_01EDDE: CMP.w #$6363 ; TILETYPE 63\n #_01EDE1: BEQ .indeed_minigame_chest\n\n #_01EDE3: DEX\n\n #_01EDE4: LDA.l $7F2000,X\n #_01EDE8: CMP.w #$6363 ; TILETYPE 63\n #_01EDEB: BEQ .indeed_minigame_chest\n\n #_01EDED: INX\n #_01EDEE: INX\n\n; ---------------------------------------------------------\n\n.indeed_minigame_chest\n #_01EDEF: LDA.w #$0202 ; TILETYPE 02\n #_01EDF2: STA.l $7F2000,X\n #_01EDF6: STA.l $7F2040,X\n\n #_01EDFA: TXA\n #_01EDFB: ASL A\n #_01EDFC: STA.b $72\n\n #_01EDFE: CLC\n #_01EDFF: ADC.w #$0100\n #_01EE02: TAX\n\n #_01EE03: STA.b $0C\n\n #_01EE05: LDY.w #obj14A4-RoomDrawObjectData\n\n #_01EE08: LDA.w RoomDrawObjectData+0,Y\n #_01EE0B: STA.l $7E2000,X\n #_01EE0F: STA.b $02\n\n #_01EE11: LDA.w RoomDrawObjectData+2,Y\n #_01EE14: STA.l $7E2080,X\n #_01EE18: STA.b $04\n\n #_01EE1A: LDA.w RoomDrawObjectData+4,Y\n #_01EE1D: STA.l $7E2002,X\n #_01EE21: STA.b $06\n\n #_01EE23: LDA.w RoomDrawObjectData+6,Y\n #_01EE26: STA.l $7E2082,X\n #_01EE2A: STA.b $08\n\n; ---------------------------------------------------------\n\n #_01EE2C: LDX.w $1000\n\n #_01EE2F: LDA.b $0C\n #_01EE31: JSR RoomTag_BuildChestStripes\n #_01EE34: STA.w $1002,X\n\n #_01EE37: LDA.b $0C\n #_01EE39: CLC\n #_01EE3A: ADC.w #$0080\n #_01EE3D: JSR RoomTag_BuildChestStripes\n #_01EE40: STA.w $1008,X\n\n #_01EE43: LDA.b $0C\n #_01EE45: CLC\n #_01EE46: ADC.w #$0002\n #_01EE49: JSR RoomTag_BuildChestStripes\n #_01EE4C: STA.w $100E,X\n\n #_01EE4F: LDA.b $0C\n #_01EE51: CLC\n #_01EE52: ADC.w #$0082\n #_01EE55: JSR RoomTag_BuildChestStripes\n #_01EE58: STA.w $1014,X\n\n; ---------------------------------------------------------\n\n #_01EE5B: LDA.b $02\n #_01EE5D: STA.w $1006,X\n\n #_01EE60: LDA.b $04\n #_01EE62: STA.w $100C,X\n\n #_01EE65: LDA.b $06\n #_01EE67: STA.w $1012,X\n\n #_01EE6A: LDA.b $08\n #_01EE6C: STA.w $1018,X\n\n #_01EE6F: LDA.w #$0100\n #_01EE72: STA.w $1004,X\n #_01EE75: STA.w $100A,X\n #_01EE78: STA.w $1010,X\n #_01EE7B: STA.w $1016,X\n\n #_01EE7E: LDA.w #$FFFF\n #_01EE81: STA.w $101A,X\n\n #_01EE84: TXA\n #_01EE85: CLC\n #_01EE86: ADC.w #$0018\n #_01EE89: STA.w $1000\n\n; ---------------------------------------------------------\n\n #_01EE8C: SEP #$31\n\n #_01EE8E: LDA.b $A0 ; ROOM 0100\n #_01EE90: BEQ OpenMiniGameChest_HighStake\n\n #_01EE92: CMP.b #$18 ; ROOM 0118\n #_01EE94: BEQ OpenMiniGameChest_LowStake\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "OpenMiniGameChest_VoO", + "code": "OpenMiniGameChest_VoO:\n #_01EE96: JSL GetRandomNumber\n #_01EE9A: AND.b #$07\n #_01EE9C: TAX\n\n #_01EE9D: CPX.b #$02\n #_01EE9F: BCC .dont_nudge\n\n #_01EEA1: CPX.b $C8\n #_01EEA3: BNE .dont_nudge\n\n #_01EEA5: TXA\n #_01EEA6: INC A\n #_01EEA7: AND.b #$07\n #_01EEA9: TAX\n\n.dont_nudge\n #_01EEAA: CPX.b #$07\n #_01EEAC: BNE .dont_flag_heart_piece\n\n #_01EEAE: LDA.w $0403\n #_01EEB1: AND.b #$40\n #_01EEB3: BNE .heart_obtained_already\n\n #_01EEB5: LDA.w $0403\n #_01EEB8: ORA.b #$40\n #_01EEBA: STA.w $0403\n\n #_01EEBD: BRA .dont_flag_heart_piece\n\n.heart_obtained_already\n #_01EEBF: LDX.b #$00\n\n.dont_flag_heart_piece\n #_01EEC1: LDA.l VoOChestGamePrizes,X\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "FinalizeChestGamePrize", + "code": "FinalizeChestGamePrize:\n #_01EEC5: STX.b $C8\n\n #_01EEC7: STA.b $0C\n #_01EEC9: STZ.b $0D\n\n #_01EECB: LDA.b #$01\n #_01EECD: STA.b $14\n\n #_01EECF: LDA.b #$0E ; SFX3.0E\n #_01EED1: STA.w $012F\n\n #_01EED4: PLB\n\n #_01EED5: SEC\n\n #_01EED6: RTL", + "file": "bank_01.asm" + }, + { + "name": "OtherChestGamePrizes", + "code": "OtherChestGamePrizes:\n.high_stakes\n #_01EED7: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EED8: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EED9: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEDA: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEDB: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEDC: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEDD: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEDE: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEDF: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEE0: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEE1: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEE2: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEE3: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEE4: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEE5: db $46 ; ITEMGET 46 - 300 RUPEES\n #_01EEE6: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n\n; ---------------------------------------------------------\n\n.low_stakes\n #_01EEE7: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEE8: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEE9: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEEA: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEEB: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEEC: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEED: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEEE: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEEF: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEF0: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEF1: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEF2: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEF3: db $34 ; ITEMGET 34 - 1 RUPEE\n #_01EEF4: db $47 ; ITEMGET 47 - 20 RUPEES GREEN\n #_01EEF5: db $41 ; ITEMGET 41 - 50 RUPEES\n #_01EEF6: db $34 ; ITEMGET 34 - 1 RUPEE\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "OpenMiniGameChest_HighStake", + "code": "OpenMiniGameChest_HighStake:\n #_01EEF7: JSL GetRandomNumber\n #_01EEFB: AND.b #$0F\n\n #_01EEFD: BRA .set_prize\n\n; =========================================================\n\n#OpenMiniGameChest_LowStake:\n #_01EEFF: JSL GetRandomNumber\n #_01EF03: AND.b #$0F\n #_01EF05: CLC\n #_01EF06: ADC.b #$10\n\n; ---------------------------------------------------------\n\n.set_prize\n #_01EF08: TAX\n\n #_01EF09: LDA.l OtherChestGamePrizes,X\n\n #_01EF0D: BRA FinalizeChestGamePrize\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_BuildChestStripes", + "code": "RoomTag_BuildChestStripes:\n #_01EF0F: CLC\n #_01EF10: ADC.w $06E0,Y\n #_01EF13: STA.b $0E\n\n #_01EF15: AND.w #$0040\n\n #_01EF18: LSR A\n #_01EF19: LSR A\n #_01EF1A: LSR A\n #_01EF1B: LSR A\n\n #_01EF1C: XBA\n #_01EF1D: STA.b $0A\n\n #_01EF1F: LDA.b $0E\n #_01EF21: AND.w #$303F\n #_01EF24: LSR A\n #_01EF25: ORA.b $0A\n #_01EF27: STA.b $0A\n\n #_01EF29: LDA.b $0E\n #_01EF2B: AND.w #$0F80\n #_01EF2E: LSR A\n #_01EF2F: LSR A\n #_01EF30: ORA.b $0A\n #_01EF32: XBA\n\n #_01EF33: RTS", + "file": "bank_01.asm" + }, + { + "name": "IncrementallyDrainSwampPool", + "code": "IncrementallyDrainSwampPool:\n #_01EF54: LDA.w $0424\n #_01EF57: AND.b #$07\n #_01EF59: BNE .dont_step_drainage\n\n #_01EF5B: LDA.w $0424\n #_01EF5E: AND.b #$0C\n #_01EF60: LSR A\n #_01EF61: TAX\n\n #_01EF62: REP #$20\n\n #_01EF64: LDA.w $0684\n #_01EF67: CMP.w $0688\n #_01EF6A: BEQ .done_draining\n\n #_01EF6C: CLC\n #_01EF6D: ADC.l .window_direction,X\n #_01EF71: STA.w $0684\n\n #_01EF74: LDA.w $0686\n #_01EF77: CLC\n #_01EF78: ADC.l .window_direction,X\n #_01EF7C: STA.w $0686\n\n #_01EF7F: SEP #$30\n\n #_01EF81: INC.w $0424\n\n #_01EF84: JSL AdjustWaterHDMAWindow\n\n #_01EF88: RTL", + "file": "bank_01.asm" + }, + { + "name": "DeleteSwampPoolWaterOverlay", + "code": "DeleteSwampPoolWaterOverlay:\n #_01EFEC: REP #$30\n\n #_01EFEE: LDX.w #$0000\n #_01EFF1: LDY.w #obj01E0-RoomDrawObjectData\n\n #_01EFF4: LDA.w RoomDrawObjectData+0,Y\n\n.next\n #_01EFF7: STA.l $7E4000,X\n #_01EFFB: STA.l $7E4200,X\n #_01EFFF: STA.l $7E4400,X\n #_01F003: STA.l $7E4600,X\n\n #_01F007: STA.l $7E4800,X\n #_01F00B: STA.l $7E4A00,X\n #_01F00F: STA.l $7E4C00,X\n #_01F013: STA.l $7E4E00,X\n\n #_01F017: STA.l $7E5000,X\n #_01F01B: STA.l $7E5200,X\n #_01F01F: STA.l $7E5400,X\n #_01F023: STA.l $7E5600,X\n\n #_01F027: STA.l $7E5800,X\n #_01F02B: STA.l $7E5A00,X\n #_01F02F: STA.l $7E5C00,X\n #_01F033: STA.l $7E5E00,X\n\n #_01F037: INX\n #_01F038: INX\n #_01F039: CPX.w #$0200\n #_01F03C: BNE .next\n\n #_01F03E: SEP #$30\n\n #_01F040: STZ.w $045C\n\n #_01F043: INC.b $B0\n\n #_01F045: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater_PrepTilemap", + "code": "Underworld_FloodSwampWater_PrepTilemap:\n #_01F046: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_01F04A: LDA.w $045C\n #_01F04D: CLC\n #_01F04E: ADC.b #$04\n #_01F050: STA.w $045C\n\n #_01F053: INC.b $B0\n\n #_01F055: LDA.b $B0\n #_01F057: CMP.b #$06\n #_01F059: BNE .exit\n\n #_01F05B: STZ.w $045C\n\n #_01F05E: STZ.b $B0\n #_01F060: STZ.b $11\n\n.exit\n #_01F062: RTL", + "file": "bank_01.asm" + }, + { + "name": "WaterDrainSpeed", + "code": "WaterDrainSpeed:\n\n.tub_fill\n #_01F063: dw $0001\n #_01F065: dw $0001\n #_01F067: dw $0001\n #_01F069: dw $FFFF\n\n.floor_flood\n #_01F06B: dw $0001\n #_01F06D: dw $0002\n #_01F06F: dw $0001\n #_01F071: dw $FFFF\n\n.flood_width\n #_01F073: dw $0001\n #_01F075: dw $FFFF\n #_01F077: dw $0001\n #_01F079: dw $FFFF\n\n; =========================================================\n\npool Underworld_FloodSwampWater\n\n.vectors\n #_01F07B: dw Underworld_FloodSwampWater_PrepTilemap ; 0x00\n #_01F07D: dw Underworld_FloodSwampWater_PrepTilemap ; 0x01\n #_01F07F: dw Underworld_FloodSwampWater_PrepTilemap ; 0x02\n #_01F081: dw Underworld_FloodSwampWater_PrepTilemap ; 0x03\n #_01F083: dw Underworld_FloodSwampWater_VomitWater ; 0x04\n #_01F085: dw Underworld_FloodSwampWater_VomitWater ; 0x05\n #_01F087: dw Underworld_FloodSwampWater_VomitWater ; 0x06\n #_01F089: dw Underworld_FloodSwampWater_VomitWater ; 0x07\n #_01F08B: dw Underworld_FloodSwampWater_VomitWater ; 0x08\n #_01F08D: dw Underworld_FloodSwampWater_SpillToFloor ; 0x09\n #_01F08F: dw Underworld_FloodSwampWater_CoverFloor ; 0x0A\n #_01F091: dw Underworld_FloodSwampWater_RiseInLevel ; 0x0B\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater", + "code": "Underworld_FloodSwampWater:\n #_01F093: LDA.b $B0\n #_01F095: ASL A\n #_01F096: TAX\n\n #_01F097: JMP.w (.vectors,X)\n\n; =========================================================\n\n#EXIT_01F09A:\n #_01F09A: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater_VomitWater", + "code": "Underworld_FloodSwampWater_VomitWater:\n #_01F09B: DEC.w $0424\n #_01F09E: BNE EXIT_01F09A\n\n #_01F0A0: LDA.b #$04\n #_01F0A2: STA.w $0424\n\n #_01F0A5: INC.b $B0\n\n #_01F0A7: LDA.b $B0\n #_01F0A9: SEC\n #_01F0AA: SBC.b #$04\n #_01F0AC: STA.b $0E\n #_01F0AE: STZ.b $0F\n\n #_01F0B0: REP #$30\n\n #_01F0B2: LDA.w #$0008\n #_01F0B5: STA.w $0686\n\n #_01F0B8: STZ.w $068A\n\n #_01F0BB: LDA.w #$0030\n #_01F0BE: STA.w $0684\n\n #_01F0C1: LDA.w #obj1654-RoomDrawObjectData\n #_01F0C4: CLC\n #_01F0C5: ADC.w #$0010\n #_01F0C8: TAY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_AdjustWaterVomit", + "code": "Underworld_AdjustWaterVomit:\n #_01F0C9: LDA.w $047C\n #_01F0CC: CLC\n #_01F0CD: ADC.w #$0100\n #_01F0D0: STA.b $08\n\n #_01F0D2: TAX\n\n.next_draw\n #_01F0D3: LDA.w RoomDrawObjectData+0,Y\n #_01F0D6: STA.l $7E2000,X\n\n #_01F0DA: LDA.w RoomDrawObjectData+2,Y\n #_01F0DD: STA.l $7E2002,X\n\n #_01F0E1: LDA.w RoomDrawObjectData+4,Y\n #_01F0E4: STA.l $7E2004,X\n\n #_01F0E8: LDA.w RoomDrawObjectData+6,Y\n #_01F0EB: STA.l $7E2006,X\n\n #_01F0EF: TYA\n #_01F0F0: CLC\n #_01F0F1: ADC.w #$0008\n #_01F0F4: TAY\n\n #_01F0F5: TXA\n #_01F0F6: CLC\n #_01F0F7: ADC.w #$0080\n #_01F0FA: TAX\n\n #_01F0FB: DEC.b $0E\n #_01F0FD: BNE .next_draw\n\n; ---------------------------------------------------------\n\n #_01F0FF: LDA.w #$0004\n #_01F102: STA.b $0A\n\n #_01F104: LDY.w #$0000\n\n.next_tilemap_update\n #_01F107: LDX.b $08\n #_01F109: TXA\n\n #_01F10A: AND.w #$0040\n #_01F10D: LSR A\n #_01F10E: LSR A\n #_01F10F: LSR A\n #_01F110: LSR A\n #_01F111: XBA\n #_01F112: STA.b $00\n\n #_01F114: TXA\n #_01F115: AND.w #$303F\n #_01F118: LSR A\n #_01F119: ORA.b $00\n #_01F11B: STA.b $00\n\n #_01F11D: TXA\n #_01F11E: AND.w #$0F80\n #_01F121: LSR A\n #_01F122: LSR A\n #_01F123: ORA.b $00\n #_01F125: XBA\n #_01F126: STA.w $1002,Y\n\n #_01F129: LDA.w #$0980\n #_01F12C: STA.w $1004,Y\n\n #_01F12F: LDA.l $7E2000,X\n #_01F133: STA.w $1006,Y\n\n #_01F136: LDA.l $7E2080,X\n #_01F13A: STA.w $1008,Y\n\n #_01F13D: LDA.l $7E2100,X\n #_01F141: STA.w $100A,Y\n\n #_01F144: LDA.l $7E2180,X\n #_01F148: STA.w $100C,Y\n\n #_01F14B: LDA.l $7E2200,X\n #_01F14F: STA.w $100E,Y\n\n #_01F152: INC.b $08\n #_01F154: INC.b $08\n\n #_01F156: TYA\n #_01F157: CLC\n #_01F158: ADC.w #$000E\n #_01F15B: TAY\n\n #_01F15C: DEC.b $0A\n #_01F15E: BNE .next_tilemap_update\n\n; ---------------------------------------------------------\n\n #_01F160: LDA.w #$FFFF\n #_01F163: STA.w $1002,Y\n\n #_01F166: SEP #$30\n\n #_01F168: LDA.b #$01\n #_01F16A: STA.b $14\n\n #_01F16C: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater_SpillToFloor", + "code": "Underworld_FloodSwampWater_SpillToFloor:\n #_01F16D: LDA.b #$03\n #_01F16F: STA.b $96\n\n #_01F171: STZ.b $97\n #_01F173: STZ.b $98\n\n #_01F175: LDA.b #$16\n #_01F177: STA.b $1E\n\n #_01F179: LDA.b #$01\n #_01F17B: STA.b $1F\n #_01F17D: STA.b $1D\n\n #_01F17F: LDA.b #$02\n #_01F181: STA.b $99\n\n #_01F183: LDA.b #$62\n #_01F185: STA.b $9A\n\n #_01F187: STZ.w $0424\n\n #_01F18A: INC.b $B0\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater_CoverFloor", + "code": "Underworld_FloodSwampWater_CoverFloor:\n #_01F18C: LDA.w $0424\n #_01F18F: AND.b #$03\n #_01F191: ASL A\n #_01F192: TAX\n\n #_01F193: REP #$20\n\n #_01F195: LDA.w #$0688\n #_01F198: SEC\n #_01F199: SBC.b $E8\n #_01F19B: SEC\n #_01F19C: SBC.w #$0024\n #_01F19F: STA.b $00\n\n #_01F1A1: LDA.w $0686\n #_01F1A4: CLC\n #_01F1A5: ADC.l WaterDrainSpeed_flood_width,X\n #_01F1A9: STA.w $0686\n\n #_01F1AC: LDA.w $068A\n #_01F1AF: CLC\n #_01F1B0: ADC.l WaterDrainSpeed_floor_flood,X\n #_01F1B4: STA.w $068A\n\n #_01F1B7: CMP.b $00\n #_01F1B9: BCC .still_filling\n\n #_01F1BB: SEP #$20\n\n #_01F1BD: LDA.b #$07\n #_01F1BF: STA.w $0414\n\n #_01F1C2: INC.b $B0\n\n; ---------------------------------------------------------\n\n.still_filling\n #_01F1C4: REP #$30\n\n #_01F1C6: INC.w $0424\n\n #_01F1C9: LDA.w #$0688\n #_01F1CC: SEC\n #_01F1CD: SBC.b $E8\n #_01F1CF: SEC\n #_01F1D0: SBC.w $0684\n #_01F1D3: STA.w $0674\n\n #_01F1D6: CLC\n #_01F1D7: ADC.w $068A\n #_01F1DA: STA.b $0A\n\n #_01F1DC: JSL AdjustWaterHDMAWindow_Horizontal\n\n #_01F1E0: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodSwampWater_RiseInLevel", + "code": "Underworld_FloodSwampWater_RiseInLevel:\n #_01F1E1: LDA.w $0424\n #_01F1E4: AND.b #$07\n #_01F1E6: BNE .dont_step\n\n #_01F1E8: LDA.w $0424\n #_01F1EB: AND.b #$0C\n #_01F1ED: LSR\n #_01F1EE: TAX\n\n #_01F1EF: REP #$20\n\n #_01F1F1: LDA.w $0684\n #_01F1F4: CMP.w $0688\n #_01F1F7: BEQ .not_done\n\n; ---------------------------------------------------------\n\n #_01F1F9: CLC\n #_01F1FA: ADC.l WaterDrainSpeed_tub_fill,X\n #_01F1FE: STA.w $0684\n\n #_01F201: LDA.w $0686\n #_01F204: CLC\n #_01F205: ADC.l WaterDrainSpeed_tub_fill,X\n #_01F209: STA.w $0686\n\n; ---------------------------------------------------------\n\n #_01F20C: REP #$10\n\n #_01F20E: LDY.w #obj16B4-RoomDrawObjectData\n\n #_01F211: LDA.w $0688\n #_01F214: SEC\n #_01F215: SBC.w $0684\n #_01F218: BEQ .adjust_mouth_spill\n\n #_01F21A: CMP.w #$0008\n #_01F21D: BNE .dont_adjust_mouth_spill\n\n #_01F21F: LDY.w #obj168C-RoomDrawObjectData\n\n.adjust_mouth_spill\n #_01F222: LDA.w #$0005\n #_01F225: STA.b $0E\n\n #_01F227: JSL Underworld_AdjustWaterVomit\n\n; ---------------------------------------------------------\n\n.dont_adjust_mouth_spill\n #_01F22B: SEP #$30\n\n.dont_step\n #_01F22D: SEP #$30\n\n #_01F22F: INC.w $0424\n\n #_01F232: JSL AdjustWaterHDMAWindow\n\n #_01F236: RTL", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01F2DA", + "code": "UNREACHABLE_01F2DA:\n #_01F2DA: dw $0008, $0010, $0018, $0020\n #_01F2E2: dw $0000, $FFF8, $FFF8\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "FloodGateTileOffsets", + "code": "FloodGateTileOffsets:\n #_01F2E8: dw $FFF8\n #_01F2EA: dw $12F8\n #_01F2EC: dw $1348\n #_01F2EE: dw $1398\n #_01F2F0: dw $13E8\n\n; =========================================================\n\npool Underworld_FloodDam\n\n.vectors\n #_01F2F2: dw FloodDam_PrepTiles_init ; 0x00\n #_01F2F4: dw FloodDam_PrepTiles ; 0x01\n #_01F2F6: dw FloodDam_PrepTiles ; 0x02\n #_01F2F8: dw FloodDam_PrepTiles ; 0x03\n #_01F2FA: dw FloodDam_Expand ; 0x04\n #_01F2FC: dw FloodDam_Fill ; 0x05\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_FloodDam", + "code": "Underworld_FloodDam:\n #_01F2FE: JSL FloodDam_PrepFloodHDMA\n\n #_01F302: LDA.b $B0\n #_01F304: ASL A\n #_01F305: TAX\n\n #_01F306: JMP.w (.vectors,X)\n\n; =========================================================\n\n#EXIT_01F309:\n #_01F309: SEP #$30\n\n #_01F30B: RTL", + "file": "bank_01.asm" + }, + { + "name": "FloodDam_Expand", + "code": "FloodDam_Expand:\n #_01F30C: INC.w $0470\n\n #_01F30F: LDA.w $0470\n #_01F312: LSR A\n #_01F313: STA.w $0686\n\n #_01F316: SEC\n #_01F317: SBC.b #$08\n #_01F319: STA.b $00\n\n #_01F31B: LDA.w $0678\n #_01F31E: STA.w $0676\n\n #_01F321: LDA.w $067A\n #_01F324: CLC\n #_01F325: ADC.b #$01\n #_01F327: STA.w $067A\n\n #_01F32A: CLC\n #_01F32B: ADC.b $00\n #_01F32D: STA.w $0684\n\n; ---------------------------------------------------------\n\n #_01F330: LDA.w $0470\n #_01F333: AND.b #$0F\n #_01F335: BNE EXIT_01F309\n\n #_01F337: LDA.w $0470\n #_01F33A: CMP.b #$40\n #_01F33C: BNE .dont_advance\n\n #_01F33E: INC.b $B0\n\n.dont_advance\n #_01F340: REP #$30\n\n #_01F342: LDA.w $0470\n #_01F345: LSR A\n #_01F346: LSR A\n #_01F347: LSR A\n #_01F348: TAX\n\n #_01F349: LDA.l FloodGateTileOffsets,X\n #_01F34D: TAY\n\n #_01F34E: LDX.w $0472\n #_01F351: STX.b $08\n\n; ---------------------------------------------------------\n\n #_01F353: LDA.w #$000A\n #_01F356: STA.b $0E\n\n.next\n #_01F358: LDA.w RoomDrawObjectData+0,Y\n #_01F35B: STA.l $7E2000,X\n\n #_01F35F: LDA.w RoomDrawObjectData+2,Y\n #_01F362: STA.l $7E2080,X\n\n #_01F366: LDA.w RoomDrawObjectData+4,Y\n #_01F369: STA.l $7E2100,X\n\n #_01F36D: LDA.w RoomDrawObjectData+6,Y\n #_01F370: STA.l $7E2180,X\n\n #_01F374: TYA\n #_01F375: CLC\n #_01F376: ADC.w #$0008\n #_01F379: TAY\n\n #_01F37A: INX\n #_01F37B: INX\n\n #_01F37C: DEC.b $0E\n #_01F37E: BNE .next\n\n; ---------------------------------------------------------\n\n #_01F380: STZ.b $0C\n\n #_01F382: LDA.w #$0003\n #_01F385: STA.b $0E\n\n.add_next_stripe\n #_01F387: LDA.b $08\n #_01F389: PHA\n\n #_01F38A: LDA.w #$0004\n #_01F38D: STA.b $0A\n\n #_01F38F: LDY.b $0C\n\n #_01F391: LDA.w #$0881\n #_01F394: STA.b $06\n\n #_01F396: JSR TranslucentOverlay_FinalizeStripes\n\n #_01F399: PLA\n #_01F39A: CLC\n #_01F39B: ADC.w #$0006\n #_01F39E: STA.b $08\n\n #_01F3A0: DEC.b $0E\n #_01F3A2: BNE .add_next_stripe\n\n #_01F3A4: JMP.w RoomDraw_CloseStripes\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "FloodDam_PrepTiles_init", + "code": "FloodDam_PrepTiles_init:\n #_01F3A7: STZ.w $045C\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "FloodDam_PrepTiles", + "code": "FloodDam_PrepTiles:\n #_01F3AA: STZ.w $0418\n\n #_01F3AD: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_01F3B1: LDA.w $045C\n #_01F3B4: CLC\n #_01F3B5: ADC.b #$04\n #_01F3B7: STA.w $045C\n\n #_01F3BA: INC.b $B0\n\n #_01F3BC: RTL", + "file": "bank_01.asm" + }, + { + "name": "FloodDam_Fill", + "code": "FloodDam_Fill:\n #_01F3BD: INC.w $0684\n\n #_01F3C0: LDA.w $0684\n #_01F3C3: CLC\n #_01F3C4: ADC.w $0676\n #_01F3C7: CMP.b #$E1\n #_01F3C9: BCC .exit\n\n #_01F3CB: STZ.w $045C\n\n #_01F3CE: STZ.b $11\n #_01F3D0: STZ.b $B0\n\n #_01F3D2: STZ.b $1E\n #_01F3D4: STZ.b $1F\n\n #_01F3D6: JSL IrisSpotlight_ResetTable\n\n.exit\n #_01F3DA: RTL", + "file": "bank_01.asm" + }, + { + "name": "FAIL_01F3DB", + "code": "FAIL_01F3DB:\n #_01F3DB: STZ.w $0333\n\n #_01F3DE: RTL", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01F3DF", + "code": "UNREACHABLE_01F3DF:\n #_01F3DF: LDA.w $0333\n #_01F3E2: AND.b #$F0\n #_01F3E4: CMP.b #$C0\n #_01F3E6: BNE FAIL_01F3DB\n\n #_01F3E8: LDA.b #$00\n #_01F3EA: BRA Underworld_LightTorch_continue\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_LightTorch", + "code": "Underworld_LightTorch:\n #_01F3EC: LDA.w $0333\n #_01F3EF: AND.b #$F0\n #_01F3F1: CMP.b #$C0\n #_01F3F3: BNE FAIL_01F3DB\n\n #_01F3F5: LDA.b #$C0\n\n #_01F3F7: LDY.b $A0 ; ROOM 0000\n #_01F3F9: BNE .continue\n\n #_01F3FB: LDA.b #$80\n\n.continue\n #_01F3FD: STA.b $08\n #_01F3FF: STZ.b $09\n\n; ---------------------------------------------------------\n\n #_01F401: PHA\n #_01F402: PHB\n\n #_01F403: LDA.b #RoomDrawObjectData>>16\n #_01F405: PHA\n #_01F406: PLB\n\n #_01F407: REP #$30\n\n #_01F409: LDA.w $0333\n #_01F40C: AND.w #$000F\n #_01F40F: ASL A\n\n #_01F410: CLC\n #_01F411: ADC.w $0478\n #_01F414: TAY\n\n #_01F415: LDA.w $0520,Y\n #_01F418: AND.w #$00FF\n #_01F41B: TAX\n\n #_01F41C: LDA.w $0540,Y\n #_01F41F: ASL A\n #_01F420: BCS .exit\n\n #_01F422: LSR A\n #_01F423: ORA.w #$8000\n #_01F426: STA.w $0540,Y\n\n; ---------------------------------------------------------\n\n #_01F429: LDA.b $08\n #_01F42B: BNE .start_adjustment\n\n #_01F42D: LDA.w $0540,Y\n #_01F430: STA.l $7EFB40,X\n\n.start_adjustment\n #_01F434: LDA.w $0540,Y\n #_01F437: AND.w #$3FFF\n #_01F43A: TAX\n\n #_01F43B: STX.b $08\n\n #_01F43D: PHX\n\n #_01F43E: LDY.w #obj0ECA-RoomDrawObjectData\n #_01F441: JSR RoomDraw_AdjustTorchLightingChange\n\n #_01F444: LDY.b $0C\n\n #_01F446: LDA.w #$FFFF\n #_01F449: STA.w $1100,Y\n\n #_01F44C: PLA\n\n #_01F44D: SEP #$30\n\n #_01F44F: AND.b #$7F\n #_01F451: ASL A\n #_01F452: JSL CalculateSFXPan_Arbitrary\n\n #_01F456: ORA.b #$2A ; SFX2.2A\n #_01F458: STA.w $012E\n\n #_01F45B: PLB\n\n #_01F45C: LDA.b #$01\n #_01F45E: STA.b $18\n\n; ---------------------------------------------------------\n\n #_01F460: LDA.l $7EC005\n #_01F464: BEQ .no_fixed_coloring\n\n #_01F466: LDA.w $045A\n\n #_01F469: INC.w $045A\n\n #_01F46C: CMP.b #$03\n #_01F46E: BCS .no_fixed_coloring\n\n #_01F470: STZ.b $1D\n\n #_01F472: LDX.w $045A\n\n #_01F475: LDA.l RoomEffectFixedColors,X\n #_01F479: STA.l $7EC017\n\n #_01F47D: LDA.b #$0A\n #_01F47F: STA.b $11\n\n #_01F481: STZ.b $B0\n\n; ---------------------------------------------------------\n\n.no_fixed_coloring\n #_01F483: LDA.w $0333\n #_01F486: AND.b #$0F\n #_01F488: TAX\n\n #_01F489: PLA\n #_01F48A: STA.w $04F0,X\n\n #_01F48D: STZ.w $0333\n\n #_01F490: RTL", + "file": "bank_01.asm" + }, + { + "name": "Ganon_ExtinguishTorch_adjust_translucency", + "code": "Ganon_ExtinguishTorch_adjust_translucency:\n #_01F496: JSL Palette_AssertTranslucencySwap\n\n #_01F49A: LDA.b #$C0\n #_01F49C: STA.w $0333\n\n #_01F49F: BRA Underworld_ExtinguishTorch\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Ganon_ExtinguishTorch", + "code": "Ganon_ExtinguishTorch:\n #_01F4A1: LDA.b #$C1\n #_01F4A3: STA.w $0333\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_ExtinguishTorch", + "code": "Underworld_ExtinguishTorch:\n #_01F4A6: LDA.b #$C0\n #_01F4A8: STA.b $08\n #_01F4AA: STZ.b $09\n\n #_01F4AC: PHA\n #_01F4AD: PHB\n\n #_01F4AE: LDA.b #RoomDrawObjectData>>16\n #_01F4B0: PHA\n #_01F4B1: PLB\n\n #_01F4B2: REP #$30\n\n #_01F4B4: LDA.w $0333\n #_01F4B7: AND.w #$000F\n #_01F4BA: ASL A\n\n #_01F4BB: CLC\n #_01F4BC: ADC.w $0478\n #_01F4BF: TAY\n\n #_01F4C0: LDA.w $0520,Y\n #_01F4C3: AND.w #$00FF\n #_01F4C6: TAX\n\n #_01F4C7: LDA.w $0540,Y\n #_01F4CA: ASL A\n #_01F4CB: LSR A\n #_01F4CC: STA.w $0540,Y\n #_01F4CF: STA.l $7EFB40,X\n\n #_01F4D3: AND.w #$3FFF\n #_01F4D6: TAX\n\n #_01F4D7: STX.b $08\n\n #_01F4D9: LDY.w #obj0EC2-RoomDrawObjectData\n #_01F4DC: JSR RoomDraw_AdjustTorchLightingChange\n\n #_01F4DF: LDY.b $0C\n\n #_01F4E1: LDA.w #$FFFF\n #_01F4E4: STA.w $1100,Y\n\n; ---------------------------------------------------------\n\n #_01F4E7: SEP #$30\n\n #_01F4E9: PLB\n\n #_01F4EA: LDA.b #$01\n #_01F4EC: STA.b $18\n\n #_01F4EE: LDA.l $7EC005\n #_01F4F2: BEQ .no_subscreen_changes\n\n #_01F4F4: LDA.w $045A\n #_01F4F7: BEQ .no_subscreen_changes\n\n #_01F4F9: DEC A\n #_01F4FA: STA.w $045A\n\n #_01F4FD: CMP.b #$03\n #_01F4FF: BCS .no_subscreen_changes\n\n #_01F501: CMP.b #$00\n #_01F503: BNE .only_fixed_color\n\n #_01F505: LDA.b #$01\n #_01F507: STA.b $1D\n\n; ---------------------------------------------------------\n\n.only_fixed_color\n #_01F509: LDX.w $045A\n\n #_01F50C: LDA.l RoomEffectFixedColors,X\n #_01F510: STA.l $7EC017\n\n #_01F514: LDA.b #$0A\n #_01F516: STA.b $11\n\n #_01F518: STZ.b $B0\n\n; ---------------------------------------------------------\n\n.no_subscreen_changes\n #_01F51A: LDA.w $0333\n #_01F51D: AND.b #$0F\n #_01F51F: TAX\n\n #_01F520: PLA\n\n #_01F521: STZ.w $04F0,X\n #_01F524: STZ.w $0333\n\n #_01F527: RTL", + "file": "bank_01.asm" + }, + { + "name": "SpiralStairs_MakeNearbyWallsHighPriority_Entering", + "code": "SpiralStairs_MakeNearbyWallsHighPriority_Entering:\n #_01F528: REP #$30\n\n #_01F52A: LDA.w $0462\n #_01F52D: AND.w #$0003\n #_01F530: ASL A\n #_01F531: TAY\n\n #_01F532: LDA.w $06B0,Y\n #_01F535: ASL A\n #_01F536: SEC\n #_01F537: SBC.w #$0008\n #_01F53A: TAX\n\n #_01F53B: STX.w $048C\n #_01F53E: STX.b $08\n\n #_01F540: PHX\n\n; ---------------------------------------------------------\n\n #_01F541: LDY.w #$0004\n\n.next\n #_01F544: LDA.l $7E2000,X\n #_01F548: ORA.w #$2000\n #_01F54B: STA.l $7E2000,X\n\n #_01F54F: LDA.l $7E2080,X\n #_01F553: ORA.w #$2000\n #_01F556: STA.l $7E2080,X\n\n #_01F55A: LDA.l $7E2100,X\n #_01F55E: ORA.w #$2000\n #_01F561: STA.l $7E2100,X\n\n #_01F565: LDA.l $7E2180,X\n #_01F569: ORA.w #$2000\n #_01F56C: STA.l $7E2180,X\n\n #_01F570: INX\n #_01F571: INX\n\n #_01F572: DEY\n #_01F573: BPL .next\n\n; ---------------------------------------------------------\n\n #_01F575: JSR RoomTag_WaterOff_AdjustOverlay\n\n #_01F578: PLA\n #_01F579: CLC\n #_01F57A: ADC.w #$0008\n #_01F57D: STA.b $08\n\n #_01F57F: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01F582: JMP.w RoomDraw_CloseStripes\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "SpiralStairs_MakeNearbyWallsLowPriority", + "code": "SpiralStairs_MakeNearbyWallsLowPriority:\n #_01F585: REP #$30\n\n #_01F587: LDX.w $048C\n #_01F58A: STX.b $08\n\n #_01F58C: PHX\n\n; ---------------------------------------------------------\n\n #_01F58D: LDY.w #$0004\n\n.next\n #_01F590: LDA.l $7E2000,X\n #_01F594: AND.w #$DFFF\n #_01F597: STA.l $7E2000,X\n\n #_01F59B: LDA.l $7E2080,X\n #_01F59F: AND.w #$DFFF\n #_01F5A2: STA.l $7E2080,X\n\n #_01F5A6: LDA.l $7E2100,X\n #_01F5AA: AND.w #$DFFF\n #_01F5AD: STA.l $7E2100,X\n\n #_01F5B1: LDA.l $7E2180,X\n #_01F5B5: AND.w #$DFFF\n #_01F5B8: STA.l $7E2180,X\n\n #_01F5BC: INX\n #_01F5BD: INX\n\n #_01F5BE: DEY\n #_01F5BF: BPL .next\n\n; ---------------------------------------------------------\n\n #_01F5C1: JSR RoomTag_WaterOff_AdjustOverlay\n\n #_01F5C4: PLA\n #_01F5C5: CLC\n #_01F5C6: ADC.w #$0008\n #_01F5C9: STA.b $08\n\n #_01F5CB: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01F5CE: JMP.w RoomDraw_CloseStripes\n\n; =========================================================\n\npool RoomDraw_OpenTriforceDoor\n\n.tile_offset\n #_01F5D1: dw obj2556-RoomDrawObjectData\n #_01F5D3: dw obj2596-RoomDrawObjectData\n #_01F5D5: dw obj25D6-RoomDrawObjectData\n #_01F5D7: dw obj2616-RoomDrawObjectData\n\npool off\n\n; ---------------------------------------------------------\n\n#EXIT_01F5D9:\n #_01F5D9: RTL", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_OpenTriforceDoor", + "code": "RoomDraw_OpenTriforceDoor:\n #_01F5DA: LDA.b #$01\n #_01F5DC: STA.w $02E4\n\n #_01F5DF: LDA.b $C8\n #_01F5E1: ORA.b $C9\n #_01F5E3: BEQ .delay_sfx\n\n #_01F5E5: DEC.b $C8\n #_01F5E7: BNE EXIT_01F5D9\n\n #_01F5E9: DEC.b $C9\n #_01F5EB: BNE EXIT_01F5D9\n\n #_01F5ED: LDA.b #$15 ; SFX1.15\n #_01F5EF: STA.w $012D\n\n #_01F5F2: STZ.w $03EF\n #_01F5F5: STZ.b $50\n\n; ---------------------------------------------------------\n\n.delay_sfx\n #_01F5F7: STZ.w $02E4\n\n #_01F5FA: INC.b $B0\n\n #_01F5FC: LDA.b $B0\n #_01F5FE: AND.b #$03\n #_01F600: BNE EXIT_01F5D9\n\n #_01F602: REP #$30\n\n #_01F604: LDA.b $B0\n #_01F606: SEC\n #_01F607: SBC.w #$0004\n #_01F60A: LSR A\n #_01F60B: TAX\n\n #_01F60C: LDA.l .tile_offset,X\n #_01F610: TAY\n\n; ---------------------------------------------------------\n\n #_01F611: LDX.w #$0000\n\n.next_draw\n #_01F614: LDA.w RoomDrawObjectData+0,Y\n #_01F617: STA.l $7E21D8,X\n\n #_01F61B: LDA.w RoomDrawObjectData+2,Y\n #_01F61E: STA.l $7E2258,X\n\n #_01F622: LDA.w RoomDrawObjectData+4,Y\n #_01F625: STA.l $7E22D8,X\n\n #_01F629: LDA.w RoomDrawObjectData+6,Y\n #_01F62C: STA.l $7E2358,X\n\n #_01F630: TYA\n #_01F631: CLC\n #_01F632: ADC.w #$0008\n #_01F635: TAY\n\n #_01F636: INX\n #_01F637: INX\n\n #_01F638: CPX.w #$0010\n #_01F63B: BNE .next_draw\n\n; ---------------------------------------------------------\n\n #_01F63D: LDA.w #$0008\n #_01F640: STA.b $0A\n\n #_01F642: LDA.w #$0881\n #_01F645: STA.b $06\n\n #_01F647: LDX.w #$01D8\n #_01F64A: STX.b $08\n\n #_01F64C: STZ.b $0C\n\n #_01F64E: LDY.b $0C\n #_01F650: JSR TranslucentOverlay_FinalizeStripes\n\n #_01F653: LDY.b $0C\n\n #_01F655: LDA.w #$FFFF\n #_01F658: STA.w $1100,Y\n\n #_01F65B: LDA.b $B0\n #_01F65D: CMP.w #$0010\n #_01F660: BNE .finished\n\n #_01F662: LDA.w #$0202 ; TILETYPE 02\n #_01F665: STA.l $7F216C\n #_01F669: STA.l $7F21AC\n\n #_01F66D: LDA.w #$0200 ; TILETYPE 00, TILETYPE 02\n #_01F670: STA.l $7F2172\n #_01F674: STA.l $7F21B2\n\n; ---------------------------------------------------------\n\n #_01F678: LDX.w #$0000\n #_01F67B: LDA.w #$0000 ; TILETYPE 00\n\n.next_tilemap_update\n #_01F67E: STA.l $7F202D,X\n #_01F682: STA.l $7F206D,X\n #_01F686: STA.l $7F20AD,X\n #_01F68A: STA.l $7F20ED,X\n\n #_01F68E: STA.l $7F212D,X\n #_01F692: STA.l $7F216D,X\n #_01F696: STA.l $7F21AD,X\n\n #_01F69A: INX\n #_01F69B: INX\n #_01F69C: CPX.w #$0006\n #_01F69F: BNE .next_tilemap_update\n\n; ---------------------------------------------------------\n\n #_01F6A1: LDA.w #$FFC0\n #_01F6A4: STA.w $0600\n\n #_01F6A7: SEP #$20\n\n #_01F6A9: STZ.b $11\n #_01F6AB: STZ.b $B0\n\n.finished\n #_01F6AD: SEP #$30\n\n #_01F6AF: LDA.b #$01\n #_01F6B1: STA.b $18\n\n #_01F6B3: RTL", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01F6B4", + "code": "UNREACHABLE_01F6B4:\n #_01F6B4: LDA.w #$0004\n #_01F6B7: STA.b $0A\n\n #_01F6B9: LDY.b $0C\n\n #_01F6BB: LDA.w #$0080\n #_01F6BE: STA.b $06\n\n #_01F6C0: LDA.b $08\n #_01F6C2: AND.w #$003F\n #_01F6C5: CMP.w #$003A\n #_01F6C8: BCC .next\n\n #_01F6CA: INC.b $06\n\n; ---------------------------------------------------------\n\n.next\n #_01F6CC: LDX.b $08\n #_01F6CE: TXA\n #_01F6CF: AND.w #$0040\n\n #_01F6D2: LSR A\n #_01F6D3: LSR A\n #_01F6D4: LSR A\n #_01F6D5: LSR A\n\n #_01F6D6: XBA\n #_01F6D7: STA.b $00\n\n #_01F6D9: TXA\n #_01F6DA: AND.w #$303F\n #_01F6DD: LSR A\n #_01F6DE: STA.b $02\n\n #_01F6E0: TXA\n #_01F6E1: AND.w #$0F80\n #_01F6E4: LSR A\n #_01F6E5: LSR A\n #_01F6E6: ORA.b $00\n #_01F6E8: ORA.b $02\n #_01F6EA: STA.w $1100,Y\n\n #_01F6ED: LDX.w $045E\n\n #_01F6F0: LDA.w $1600,X\n #_01F6F3: STA.w $1104,Y\n\n #_01F6F6: LDA.b $06\n #_01F6F8: STA.w $1102,Y\n\n #_01F6FB: LSR A\n #_01F6FC: BCS .skip\n\n; ---------------------------------------------------------\n\n #_01F6FE: LDA.w $1602,X\n #_01F701: STA.w $1106,Y\n\n #_01F704: LDA.w $1604,X\n #_01F707: STA.w $1108,Y\n\n #_01F70A: LDA.w $1606,X\n #_01F70D: STA.w $110A,Y\n\n #_01F710: LDA.b $08\n #_01F712: CLC\n #_01F713: ADC.w #$0080\n #_01F716: STA.b $08\n\n #_01F718: TXA\n #_01F719: CLC\n #_01F71A: ADC.w #$0008\n #_01F71D: TAX\n\n #_01F71E: BRA .continue\n\n; ---------------------------------------------------------\n\n.skip\n #_01F720: LDA.w $1608,X\n #_01F723: STA.w $1106,Y\n\n #_01F726: LDA.w $1610,X\n #_01F729: STA.w $1108,Y\n\n #_01F72C: LDA.w $1618,X\n #_01F72F: STA.w $110A,Y\n\n #_01F732: INC.b $08\n #_01F734: INC.b $08\n\n #_01F736: INX\n #_01F737: INX\n\n; ---------------------------------------------------------\n\n.continue\n #_01F738: STX.w $045E\n\n #_01F73B: TYA\n #_01F73C: CLC\n #_01F73D: ADC.w #$000C\n #_01F740: TAY\n\n #_01F741: DEC.b $0A\n #_01F743: BNE .next\n\n #_01F745: RTS", + "file": "bank_01.asm" + }, + { + "name": "RoomDraw_AdjustTorchLightingChange", + "code": "RoomDraw_AdjustTorchLightingChange:\n #_01F746: LDA.w RoomDrawObjectData+0,Y\n #_01F749: STA.l $7E2000,X\n\n #_01F74D: LDA.w RoomDrawObjectData+2,Y\n #_01F750: STA.l $7E2080,X\n\n #_01F754: LDA.w RoomDrawObjectData+4,Y\n #_01F757: STA.l $7E2002,X\n\n #_01F75B: LDA.w RoomDrawObjectData+6,Y\n #_01F75E: STA.l $7E2082,X\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "RoomTag_WaterOff_AdjustOverlay", + "code": "RoomTag_WaterOff_AdjustOverlay:\n #_01F762: STZ.b $0C\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "Underworld_PrepNextTilemapUpdateDMA", + "code": "Underworld_PrepNextTilemapUpdateDMA:\n #_01F764: LDA.w #$0004\n #_01F767: STA.b $0A\n\n #_01F769: LDY.b $0C\n\n #_01F76B: LDA.w #$0880\n #_01F76E: STA.b $06\n\n #_01F770: LDA.b $08\n #_01F772: AND.w #$003F\n #_01F775: CMP.w #$003A\n #_01F778: BCC TranslucentOverlay_FinalizeStripes\n\n #_01F77A: INC.b $06\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "TranslucentOverlay_FinalizeStripes", + "code": "TranslucentOverlay_FinalizeStripes:\n.next\n #_01F77C: LDX.b $08\n\n #_01F77E: TXA\n #_01F77F: AND.w #$0040\n\n #_01F782: LSR A\n #_01F783: LSR A\n #_01F784: LSR A\n #_01F785: LSR A\n\n #_01F786: XBA\n #_01F787: STA.b $00\n\n #_01F789: TXA\n #_01F78A: AND.w #$303F\n #_01F78D: LSR A\n #_01F78E: ORA.b $00\n #_01F790: STA.b $00\n\n #_01F792: TXA\n #_01F793: AND.w #$0F80\n #_01F796: LSR A\n #_01F797: LSR A\n #_01F798: ORA.b $00\n #_01F79A: STA.w $1100,Y\n\n #_01F79D: LDA.l $7E2000,X\n #_01F7A1: STA.w $1104,Y\n\n #_01F7A4: LDA.b $06\n #_01F7A6: STA.w $1102,Y\n\n #_01F7A9: LSR A\n #_01F7AA: BCS .high\n\n; ---------------------------------------------------------\n\n #_01F7AC: LDA.l $7E2002,X\n #_01F7B0: STA.w $1106,Y\n\n #_01F7B3: LDA.l $7E2004,X\n #_01F7B7: STA.w $1108,Y\n\n #_01F7BA: LDA.l $7E2006,X\n #_01F7BE: STA.w $110A,Y\n\n #_01F7C1: LDA.b $08\n #_01F7C3: CLC\n #_01F7C4: ADC.w #$0080\n #_01F7C7: STA.b $08\n\n #_01F7C9: BRA .continue\n\n; ---------------------------------------------------------\n\n.high\n #_01F7CB: LDA.l $7E2080,X\n #_01F7CF: STA.w $1106,Y\n\n #_01F7D2: LDA.l $7E2100,X\n #_01F7D6: STA.w $1108,Y\n\n #_01F7D9: LDA.l $7E2180,X\n #_01F7DD: STA.w $110A,Y\n\n #_01F7E0: INC.b $08\n #_01F7E2: INC.b $08\n\n; ---------------------------------------------------------\n\n.continue\n #_01F7E4: TYA\n #_01F7E5: CLC\n #_01F7E6: ADC.w #$000C\n #_01F7E9: TAY\n\n #_01F7EA: DEC.b $0A\n #_01F7EC: BNE .next\n\n #_01F7EE: STY.b $0C\n\n #_01F7F0: RTS", + "file": "bank_01.asm" + }, + { + "name": "ClearAndStripeExplodingWall", + "code": "ClearAndStripeExplodingWall:\n #_01F811: LDA.w #$0080\n #_01F814: STA.b $06\n\n #_01F816: STZ.b $0E\n\n #_01F818: LDA.w $0454\n #_01F81B: CLC\n #_01F81C: ADC.w #$0003\n #_01F81F: STA.b $0A\n\n #_01F821: SEC\n #_01F822: SBC.w #$0006\n #_01F825: CMP.w #$0002\n #_01F828: BMI .no_adjust\n\n #_01F82A: STA.b $02\n\n #_01F82C: INC.b $0E\n\n #_01F82E: LDA.w #$0003\n #_01F831: STA.b $0A\n\n.no_adjust\n #_01F833: LDY.b $0C\n\n #_01F835: LDX.w $0460\n\n #_01F838: LDA.w $19C0,X\n #_01F83B: AND.w #$0002\n #_01F83E: BNE .next\n\n #_01F840: INC.b $06\n\n; ---------------------------------------------------------\n\n.next\n #_01F842: LDX.b $08\n #_01F844: TXA\n #_01F845: AND.w #$0040\n\n #_01F848: LSR A\n #_01F849: LSR A\n #_01F84A: LSR A\n #_01F84B: LSR A\n\n #_01F84C: XBA\n #_01F84D: STA.b $00\n\n #_01F84F: TXA\n #_01F850: AND.w #$303F\n #_01F853: LSR A\n #_01F854: ORA.b $00\n #_01F856: STA.b $00\n\n #_01F858: TXA\n #_01F859: AND.w #$0F80\n #_01F85C: LSR A\n #_01F85D: LSR A\n #_01F85E: ORA.b $00\n #_01F860: STA.w $1100,Y\n\n #_01F863: PHA\n\n #_01F864: LDA.l $7E2000,X\n #_01F868: STA.w $1104,Y\n\n #_01F86B: LDA.b $06\n #_01F86D: ORA.w #$0A00\n #_01F870: STA.w $1102,Y\n\n #_01F873: LDA.b $06\n #_01F875: ORA.w #$0E00\n #_01F878: STA.w $1110,Y\n\n #_01F87B: PLA\n\n #_01F87C: CLC\n #_01F87D: ADC.w #$04A0\n #_01F880: STA.w $110E,Y\n\n #_01F883: LDA.l $7E2080,X\n #_01F887: STA.w $1106,Y\n\n #_01F88A: LDA.l $7E2100,X\n #_01F88E: STA.w $1108,Y\n\n #_01F891: LDA.l $7E2180,X\n #_01F895: STA.w $110A,Y\n\n #_01F898: LDA.l $7E2200,X\n #_01F89C: STA.w $110C,Y\n\n #_01F89F: LDA.l $7E2280,X\n #_01F8A3: STA.w $1112,Y\n\n #_01F8A6: LDA.l $7E2300,X\n #_01F8AA: STA.w $1114,Y\n\n #_01F8AD: LDA.l $7E2380,X\n #_01F8B1: STA.w $1116,Y\n\n #_01F8B4: LDA.l $7E2400,X\n #_01F8B8: STA.w $1118,Y\n\n #_01F8BB: LDA.l $7E2480,X\n #_01F8BF: STA.w $111A,Y\n\n #_01F8C2: LDA.l $7E2500,X\n #_01F8C6: STA.w $111C,Y\n\n #_01F8C9: LDA.l $7E2580,X\n #_01F8CD: STA.w $111E,Y\n\n #_01F8D0: INC.b $08\n #_01F8D2: INC.b $08\n\n #_01F8D4: TYA\n #_01F8D5: CLC\n #_01F8D6: ADC.w #$0020\n #_01F8D9: TAY\n\n #_01F8DA: DEC.b $0A\n #_01F8DC: BEQ .do_more\n\n #_01F8DE: JMP.w .next\n\n; ---------------------------------------------------------\n\n.do_more\n #_01F8E1: LDA.b $0E\n #_01F8E3: BEQ .finished\n\n #_01F8E5: DEC.b $0E\n\n #_01F8E7: LDX.b $02\n\n #_01F8E9: LDA.b $06\n #_01F8EB: LSR A\n #_01F8EC: BCS .dont_move_down\n\n #_01F8EE: TXA\n #_01F8EF: CLC\n #_01F8F0: ADC.w #$0010\n #_01F8F3: TAX\n\n.dont_move_down\n #_01F8F4: LDA.l .offset-2,X\n #_01F8F8: CLC\n #_01F8F9: ADC.b $08\n #_01F8FB: STA.b $08\n\n #_01F8FD: LDA.w #$0003\n #_01F900: STA.b $0A\n\n #_01F902: JMP.w .next\n\n; ---------------------------------------------------------\n\n.finished\n #_01F905: STY.b $0C\n\n #_01F907: RTS", + "file": "bank_01.asm" + }, + { + "name": "UNREACHABLE_01F908", + "code": "UNREACHABLE_01F908:\n #_01F908: STA.b $0C\n\n #_01F90A: STY.b $0E\n #_01F90C: STY.b $0A\n\n #_01F90E: LDY.w #$0000\n\n.next\n #_01F911: TXA\n #_01F912: AND.w #$0040\n #_01F915: LSR A\n #_01F916: LSR A\n #_01F917: LSR A\n #_01F918: LSR A\n #_01F919: XBA\n #_01F91A: STA.b $00\n\n #_01F91C: TXA\n #_01F91D: AND.w #$303F\n #_01F920: LSR A\n #_01F921: STA.b $02\n\n #_01F923: TXA\n #_01F924: AND.w #$0F80\n #_01F927: LSR A\n #_01F928: LSR A\n #_01F929: ORA.b $00\n #_01F92B: ORA.b $02\n #_01F92D: XBA\n #_01F92E: STA.w $1002,Y\n\n #_01F931: LDA.w #$0100\n #_01F934: STA.w $1004,Y\n\n #_01F937: LDA.l $7E4000,X\n #_01F93B: STA.w $1006,Y\n\n #_01F93E: INY\n #_01F93F: INY\n #_01F940: INY\n #_01F941: INY\n #_01F942: INY\n #_01F943: INY\n\n #_01F944: INX\n #_01F945: INX\n\n #_01F946: DEC.b $0E\n #_01F948: BNE .next\n\n #_01F94A: LDA.b $0A\n #_01F94C: STA.b $0E\n\n #_01F94E: TXA\n #_01F94F: CLC\n #_01F950: ADC.w #$0070\n #_01F953: TAX\n\n #_01F954: DEC.b $0C\n #_01F956: BNE .next\n\n; ---------------------------------------------------------\n\n #_01F958: LDA.w #$FFFF\n #_01F95B: STA.w $1002,Y\n\n #_01F95E: SEP #$20\n\n #_01F960: LDA.b #$01\n #_01F962: STA.b $14\n\n #_01F964: REP #$20\n\n #_01F966: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_DrawRoomOverlay", + "code": "Underworld_DrawRoomOverlay:\n.next\n #_01F967: REP #$30\n\n #_01F969: STZ.b $B2\n #_01F96B: STZ.b $B4\n\n #_01F96D: LDY.b $BA\n\n #_01F96F: LDA.b [$B7],Y\n #_01F971: CMP.w #$FFFF\n #_01F974: BEQ .done\n\n #_01F976: STA.b $00\n\n #_01F978: JSR .draw_chunk\n\n #_01F97B: BRA .next\n\n.done\n #_01F97D: SEP #$30\n\n #_01F97F: RTS", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_North_clean_door_index", + "code": "GetDoorDrawDataIndex_North_clean_door_index:\n #_01FA4A: LDA.w $0460\n #_01FA4D: AND.w #$00FF\n #_01FA50: STA.b $04\n\n #_01FA52: BRA GetDoorDrawDataIndex_North\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorDoorStep1_North", + "code": "DoorDoorStep1_North:\n #_01FA54: LDA.w $0460\n #_01FA57: PHA\n\n #_01FA58: AND.w #$000F\n #_01FA5B: STA.b $04\n\n #_01FA5D: TXA\n #_01FA5E: AND.w #$1FFF\n #_01FA61: CMP.w DoorTilemapPositions_NorthMiddle\n #_01FA64: BCC .one_sided_door\n\n #_01FA66: TXA\n #_01FA67: SEC\n #_01FA68: SBC.w #$0500\n #_01FA6B: STA.b $08\n\n #_01FA6D: PHX\n\n #_01FA6E: LDX.w $0460\n\n #_01FA71: LDA.w $1980,X\n #_01FA74: AND.w #$00FE\n #_01FA77: CMP.w #$0042\n #_01FA7A: BCC .upper_layer_door\n\n #_01FA7C: LDA.b $08\n #_01FA7E: SEC\n #_01FA7F: SBC.w #$0300\n #_01FA82: STA.b $08\n\n.upper_layer_door\n #_01FA84: LDA.w $0460\n #_01FA87: EOR.w #$0010\n #_01FA8A: STA.w $0460\n\n #_01FA8D: JSR GetDoorDrawDataIndex_South\n #_01FA90: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01FA93: LDY.w $0460\n #_01FA96: JSR Underworld_LoadSingleDoorAttribute\n\n #_01FA99: PLX\n #_01FA9A: STX.b $08\n\n.one_sided_door\n #_01FA9C: PLA\n #_01FA9D: STA.w $0460\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_North", + "code": "GetDoorDrawDataIndex_North:\n #_01FAA0: LDX.w $0460\n\n #_01FAA3: LDA.w $1980,X\n #_01FAA6: AND.w #$00FE\n\n #_01FAA9: LDX.w $0692\n #_01FAAC: BEQ DrawDoorToTilemap_North\n\n #_01FAAE: CPX.w #$0004\n #_01FAB1: BEQ DrawDoorToTilemap_North\n\n #_01FAB3: CMP.w #$0024\n #_01FAB6: BEQ .advance_data_index\n\n #_01FAB8: CMP.w #$0026\n #_01FABB: BEQ .advance_data_index\n\n #_01FABD: CMP.w #$0042\n #_01FAC0: BCC .dont_advance_data_index\n\n.advance_data_index\n #_01FAC2: INX\n #_01FAC3: INX\n #_01FAC4: INX\n #_01FAC5: INX\n\n.dont_advance_data_index\n #_01FAC6: CMP.w #$0018\n #_01FAC9: BEQ .shutter_door\n\n #_01FACB: CMP.w #$0044\n #_01FACE: BNE .not_shutter_door\n\n.shutter_door\n #_01FAD0: INX\n #_01FAD1: INX\n\n.not_shutter_door\n #_01FAD2: LDY.w DoorAnimGFXDataOffset_North,X\n\n #_01FAD5: BRA .continue\n\n; =========================================================\n\n#DrawDoorToTilemap_North:\n #_01FAD7: JSR GetDoorGraphicsIndex\n\n #_01FADA: LDY.w DoorGFXDataOffset_North,X\n\n.continue\n #_01FADD: LDX.w $0460\n\n #_01FAE0: LDA.w $19A0,X\n #_01FAE3: TAX\n\n #_01FAE4: LDA.w #$0004\n #_01FAE7: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_draw\n #_01FAE9: LDA.w RoomDrawObjectData+0,Y\n #_01FAEC: STA.l $7E2000,X\n\n #_01FAF0: LDA.w RoomDrawObjectData+2,Y\n #_01FAF3: STA.l $7E2080,X\n\n #_01FAF7: LDA.w RoomDrawObjectData+4,Y\n #_01FAFA: STA.l $7E2100,X\n\n #_01FAFE: TYA\n #_01FAFF: CLC\n #_01FB00: ADC.w #$0006\n #_01FB03: TAY\n\n #_01FB04: INX\n #_01FB05: INX\n\n #_01FB06: DEC.b $0E\n #_01FB08: BNE .next_draw\n\n #_01FB0A: RTS", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_South_clean_door_index", + "code": "GetDoorDrawDataIndex_South_clean_door_index:\n #_01FB0B: LDA.w $0460\n #_01FB0E: AND.w #$00FF\n #_01FB11: STA.b $04\n\n #_01FB13: BRA GetDoorDrawDataIndex_South\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorDoorStep1_South", + "code": "DoorDoorStep1_South:\n #_01FB15: LDA.w $0460\n #_01FB18: PHA\n\n #_01FB19: AND.w #$000F\n #_01FB1C: STA.b $04\n\n #_01FB1E: TXA\n #_01FB1F: AND.w #$1FFF\n #_01FB22: CMP.w DoorTilemapPositions_LowerLayerEntrance\n #_01FB25: BCS .one_sided_door\n\n #_01FB27: TXA\n #_01FB28: CLC\n #_01FB29: ADC.w #$0500\n #_01FB2C: STA.b $08\n\n #_01FB2E: PHX\n\n #_01FB2F: LDX.w $0460\n\n #_01FB32: LDA.w $1980,X\n #_01FB35: AND.w #$00FE\n #_01FB38: CMP.w #$0042\n #_01FB3B: BCC .upper_layer_door\n\n #_01FB3D: LDA.b $08\n #_01FB3F: CLC\n #_01FB40: ADC.w #$0300\n #_01FB43: STA.b $08\n\n.upper_layer_door\n #_01FB45: LDA.w $0460\n #_01FB48: EOR.w #$0010\n #_01FB4B: STA.w $0460\n\n #_01FB4E: JSR GetDoorDrawDataIndex_North\n #_01FB51: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01FB54: LDY.w $0460\n #_01FB57: JSR Underworld_LoadSingleDoorAttribute\n\n #_01FB5A: PLX\n #_01FB5B: STX.b $08\n\n.one_sided_door\n #_01FB5D: PLA\n #_01FB5E: STA.w $0460\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_South", + "code": "GetDoorDrawDataIndex_South:\n #_01FB61: LDX.w $0460\n\n #_01FB64: LDA.w $1980,X\n #_01FB67: AND.w #$00FE\n\n #_01FB6A: LDX.w $0692\n #_01FB6D: BEQ DrawDoorToTilemap_South\n\n #_01FB6F: CPX.w #$0004\n #_01FB72: BEQ DrawDoorToTilemap_South\n\n #_01FB74: CMP.w #$0042\n #_01FB77: BCC .dont_advance_data_index\n\n #_01FB79: INX\n #_01FB7A: INX\n #_01FB7B: INX\n #_01FB7C: INX\n\n.dont_advance_data_index\n #_01FB7D: CMP.w #$0018\n #_01FB80: BEQ .shutter_door\n\n #_01FB82: CMP.w #$0044\n #_01FB85: BNE .not_shutter_door\n\n.shutter_door\n #_01FB87: INX\n #_01FB88: INX\n\n.not_shutter_door\n #_01FB89: LDY.w DoorAnimGFXDataOffset_South,X\n\n #_01FB8C: BRA .continue\n\n; =========================================================\n\n#DrawDoorToTilemap_South:\n #_01FB8E: JSR GetDoorGraphicsIndex\n\n #_01FB91: LDY.w DoorGFXDataOffset_South,X\n\n.continue\n #_01FB94: LDX.w $0460\n\n #_01FB97: LDA.w $19A0,X\n #_01FB9A: TAX\n\n #_01FB9B: LDA.w #$0004\n #_01FB9E: STA.b $0E\n\n.next_draw\n #_01FBA0: LDA.w RoomDrawObjectData+0,Y\n #_01FBA3: STA.l $7E2080,X\n\n #_01FBA7: LDA.w RoomDrawObjectData+2,Y\n #_01FBAA: STA.l $7E2100,X\n\n #_01FBAE: LDA.w RoomDrawObjectData+4,Y\n #_01FBB1: STA.l $7E2180,X\n\n #_01FBB5: TYA\n #_01FBB6: CLC\n #_01FBB7: ADC.w #$0006\n #_01FBBA: TAY\n\n #_01FBBB: INX\n #_01FBBC: INX\n\n #_01FBBD: DEC.b $0E\n #_01FBBF: BNE .next_draw\n\n #_01FBC1: RTS", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_West_clean_door_index", + "code": "GetDoorDrawDataIndex_West_clean_door_index:\n #_01FBC2: LDA.w $0460\n #_01FBC5: AND.w #$00FF\n #_01FBC8: STA.b $04\n\n #_01FBCA: BRA GetDoorDrawDataIndex_West\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorDoorStep1_West", + "code": "DoorDoorStep1_West:\n #_01FBCC: LDA.w $0460\n #_01FBCF: PHA\n\n #_01FBD0: AND.w #$000F\n #_01FBD3: STA.b $04\n\n #_01FBD5: TXA\n #_01FBD6: AND.w #$07FF\n #_01FBD9: CMP.w DoorTilemapPositions_WestMiddle\n #_01FBDC: BCC .one_sided_door\n\n #_01FBDE: TXA\n #_01FBDF: SEC\n #_01FBE0: SBC.w #$0010\n #_01FBE3: STA.b $08\n\n #_01FBE5: PHX\n\n #_01FBE6: LDX.w $0460\n\n #_01FBE9: LDA.w $1980,X\n #_01FBEC: AND.w #$00FE\n #_01FBEF: CMP.w #$0042\n #_01FBF2: BCC .upper_layer_door\n\n #_01FBF4: LDA.b $08\n #_01FBF6: SEC\n #_01FBF7: SBC.w #$000C\n #_01FBFA: STA.b $08\n\n.upper_layer_door\n #_01FBFC: LDA.w $0460\n #_01FBFF: EOR.w #$0010\n #_01FC02: STA.w $0460\n\n #_01FC05: JSR GetDoorDrawDataIndex_East\n #_01FC08: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01FC0B: LDY.w $0460\n #_01FC0E: JSR Underworld_LoadSingleDoorAttribute\n\n #_01FC11: PLX\n #_01FC12: STX.b $08\n\n.one_sided_door\n #_01FC14: PLA\n #_01FC15: STA.w $0460\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_West", + "code": "GetDoorDrawDataIndex_West:\n #_01FC18: LDX.w $0460\n\n #_01FC1B: LDA.w $1980,X\n #_01FC1E: AND.w #$00FE\n\n #_01FC21: LDX.w $0692\n #_01FC24: BEQ DrawDoorToTilemap_West\n\n #_01FC26: CPX.w #$0004\n #_01FC29: BEQ DrawDoorToTilemap_West\n\n #_01FC2B: CMP.w #$0042\n #_01FC2E: BCC .dont_advance_data_index\n\n #_01FC30: INX\n #_01FC31: INX\n #_01FC32: INX\n #_01FC33: INX\n\n.dont_advance_data_index\n #_01FC34: CMP.w #$0018\n #_01FC37: BEQ .shutter_door\n\n #_01FC39: CMP.w #$0044\n #_01FC3C: BNE .not_shutter_door\n\n.shutter_door\n #_01FC3E: INX\n #_01FC3F: INX\n\n.not_shutter_door\n #_01FC40: LDY.w DoorAnimGFXDataOffset_West,X\n\n #_01FC43: BRA .continue\n\n; =========================================================\n\n#DrawDoorToTilemap_West:\n #_01FC45: JSR GetDoorGraphicsIndex\n\n #_01FC48: LDY.w DoorGFXDataOffset_West,X\n\n.continue\n #_01FC4B: LDX.w $0460\n\n #_01FC4E: LDA.w $19A0,X\n #_01FC51: TAX\n\n #_01FC52: LDA.w #$0003\n #_01FC55: STA.b $0E\n\n.next_draw\n #_01FC57: LDA.w RoomDrawObjectData+0,Y\n #_01FC5A: STA.l $7E2000,X\n\n #_01FC5E: LDA.w RoomDrawObjectData+2,Y\n #_01FC61: STA.l $7E2080,X\n\n #_01FC65: LDA.w RoomDrawObjectData+4,Y\n #_01FC68: STA.l $7E2100,X\n\n #_01FC6C: LDA.w RoomDrawObjectData+6,Y\n #_01FC6F: STA.l $7E2180,X\n\n #_01FC73: TYA\n #_01FC74: CLC\n #_01FC75: ADC.w #$0008\n #_01FC78: TAY\n\n #_01FC79: INX\n #_01FC7A: INX\n\n #_01FC7B: DEC.b $0E\n #_01FC7D: BNE .next_draw\n\n #_01FC7F: RTS", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_East_clean_door_index", + "code": "GetDoorDrawDataIndex_East_clean_door_index:\n #_01FC80: LDA.w $0460\n #_01FC83: AND.w #$00FF\n #_01FC86: STA.b $04\n\n #_01FC88: BRA GetDoorDrawDataIndex_East\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "DoorDoorStep1_East", + "code": "DoorDoorStep1_East:\n #_01FC8A: LDA.w $0460\n #_01FC8D: PHA\n\n #_01FC8E: AND.w #$000F\n #_01FC91: STA.b $04\n\n #_01FC93: TXA\n\n #_01FC94: AND.w #$07FF\n #_01FC97: CMP.w DoorTilemapPositions_EastWall\n #_01FC9A: BCS .one_sided_door\n\n #_01FC9C: TXA\n #_01FC9D: CLC\n #_01FC9E: ADC.w #$0010\n #_01FCA1: STA.b $08\n\n #_01FCA3: PHX\n\n #_01FCA4: LDX.w $0460\n\n #_01FCA7: LDA.w $1980,X\n #_01FCAA: AND.w #$00FE\n #_01FCAD: CMP.w #$0042\n #_01FCB0: BCC .upper_layer_door\n\n #_01FCB2: LDA.b $08\n #_01FCB4: CLC\n #_01FCB5: ADC.w #$000C\n #_01FCB8: STA.b $08\n\n.upper_layer_door\n #_01FCBA: LDA.w $0460\n #_01FCBD: EOR.w #$0010\n #_01FCC0: STA.w $0460\n\n #_01FCC3: JSR GetDoorDrawDataIndex_West\n #_01FCC6: JSR Underworld_PrepNextTilemapUpdateDMA\n\n #_01FCC9: LDY.w $0460\n #_01FCCC: JSR Underworld_LoadSingleDoorAttribute\n\n #_01FCCF: PLX\n #_01FCD0: STX.b $08\n\n.one_sided_door\n #_01FCD2: PLA\n #_01FCD3: STA.w $0460\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "GetDoorDrawDataIndex_East", + "code": "GetDoorDrawDataIndex_East:\n #_01FCD6: LDX.w $0460\n\n #_01FCD9: LDA.w $1980,X\n #_01FCDC: AND.w #$00FE\n\n #_01FCDF: LDX.w $0692\n #_01FCE2: BEQ DrawDoorToTilemap_East\n\n #_01FCE4: CPX.w #$0004\n #_01FCE7: BEQ DrawDoorToTilemap_East\n\n #_01FCE9: CMP.w #$0042\n #_01FCEC: BCC .dont_advance_data_index\n\n #_01FCEE: INX\n #_01FCEF: INX\n #_01FCF0: INX\n #_01FCF1: INX\n\n.dont_advance_data_index\n #_01FCF2: CMP.w #$0018\n #_01FCF5: BEQ .shutter_door\n\n #_01FCF7: CMP.w #$0044\n #_01FCFA: BNE .not_shutter_door\n\n.shutter_door\n #_01FCFC: INX\n #_01FCFD: INX\n\n.not_shutter_door\n #_01FCFE: LDY.w DoorAnimGFXDataOffset_East,X\n\n #_01FD01: BRA .continue\n\n; =========================================================\n\n#DrawDoorToTilemap_East:\n #_01FD03: JSR GetDoorGraphicsIndex\n\n #_01FD06: LDY.w DoorGFXDataOffset_East,X\n\n.continue\n #_01FD09: LDX.w $0460\n\n #_01FD0C: LDA.w $19A0,X\n #_01FD0F: TAX\n\n #_01FD10: LDA.w #$0003\n #_01FD13: STA.b $0E\n\n.next_draw\n #_01FD15: LDA.w RoomDrawObjectData+0,Y\n #_01FD18: STA.l $7E2002,X\n\n #_01FD1C: LDA.w RoomDrawObjectData+2,Y\n #_01FD1F: STA.l $7E2082,X\n\n #_01FD23: LDA.w RoomDrawObjectData+4,Y\n #_01FD26: STA.l $7E2102,X\n\n #_01FD2A: LDA.w RoomDrawObjectData+6,Y\n #_01FD2D: STA.l $7E2182,X\n\n #_01FD31: TYA\n #_01FD32: CLC\n #_01FD33: ADC.w #$0008\n #_01FD36: TAY\n\n #_01FD37: INX\n #_01FD38: INX\n\n #_01FD39: DEC.b $0E\n #_01FD3B: BNE .next_draw\n\n #_01FD3D: RTS", + "file": "bank_01.asm" + }, + { + "name": "ClearDoorCurtainsFromTilemap", + "code": "ClearDoorCurtainsFromTilemap:\n #_01FD3E: LDX.w #$0056\n\n #_01FD41: LDY.w DoorGFXDataOffset_North,X\n\n #_01FD44: LDX.w $0460\n\n #_01FD47: LDA.w $19A0,X\n #_01FD4A: TAX\n\n #_01FD4B: LDA.w #$0004\n #_01FD4E: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next\n #_01FD50: LDA.w RoomDrawObjectData+0,Y\n #_01FD53: STA.l $7E2000,X\n\n #_01FD57: LDA.w RoomDrawObjectData+2,Y\n #_01FD5A: STA.l $7E2080,X\n\n #_01FD5E: LDA.w RoomDrawObjectData+4,Y\n #_01FD61: STA.l $7E2100,X\n\n #_01FD65: LDA.w RoomDrawObjectData+6,Y\n #_01FD68: STA.l $7E2180,X\n\n #_01FD6C: TYA\n #_01FD6D: CLC\n #_01FD6E: ADC.w #$0008\n #_01FD71: TAY\n\n #_01FD72: INX\n #_01FD73: INX\n\n #_01FD74: DEC.b $0E\n #_01FD76: BNE .next\n\n #_01FD78: RTS", + "file": "bank_01.asm" + }, + { + "name": "GetDoorGraphicsIndex", + "code": "GetDoorGraphicsIndex:\n #_01FD79: LDY.w $0460\n\n #_01FD7C: LDA.w $1980,Y\n #_01FD7F: AND.w #$00FE\n #_01FD82: TAX\n\n #_01FD83: LDY.b $04\n\n #_01FD85: LDA.w $068C\n #_01FD88: AND.w DungeonMask,Y\n #_01FD8B: BEQ .exit\n\n #_01FD8D: LDA.w DoorwayReplacementDoorGFX,X\n #_01FD90: TAX\n\n.exit\n #_01FD91: RTS", + "file": "bank_01.asm" + }, + { + "name": "ClearExplodingWallFromTilemap", + "code": "ClearExplodingWallFromTilemap:\n #_01FD92: LDY.w #obj31EA-RoomDrawObjectData\n #_01FD95: JSR ClearExplodingWallFromTilemap_ClearOnePair\n\n #_01FD98: LDA.w $0454\n #_01FD9B: DEC A\n #_01FD9C: STA.b $0E\n #_01FD9E: BEQ .skip\n\n #_01FDA0: LDA.w RoomDrawObjectData+0,Y\n\n; ---------------------------------------------------------\n\n.next\n #_01FDA3: STA.l $7E2000,X\n #_01FDA7: STA.l $7E2080,X\n #_01FDAB: STA.l $7E2100,X\n #_01FDAF: STA.l $7E2180,X\n\n #_01FDB3: STA.l $7E2200,X\n #_01FDB7: STA.l $7E2280,X\n #_01FDBB: STA.l $7E2300,X\n #_01FDBF: STA.l $7E2380,X\n\n #_01FDC3: STA.l $7E2400,X\n #_01FDC7: STA.l $7E2480,X\n #_01FDCB: STA.l $7E2500,X\n #_01FDCF: STA.l $7E2580,X\n\n #_01FDD3: INX\n #_01FDD4: INX\n\n #_01FDD5: DEC.b $0E\n #_01FDD7: BNE .next\n\n; ---------------------------------------------------------\n\n.skip\n #_01FDD9: INY\n #_01FDDA: INY\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "ClearExplodingWallFromTilemap_ClearOnePair", + "code": "ClearExplodingWallFromTilemap_ClearOnePair:\n #_01FDDB: LDA.w #$0002\n #_01FDDE: STA.b $0E\n\n.next\n #_01FDE0: LDA.w RoomDrawObjectData+0,Y\n #_01FDE3: STA.l $7E2000,X\n\n #_01FDE7: LDA.w RoomDrawObjectData+2,Y\n #_01FDEA: STA.l $7E2080,X\n\n #_01FDEE: LDA.w RoomDrawObjectData+4,Y\n #_01FDF1: STA.l $7E2100,X\n\n #_01FDF5: LDA.w RoomDrawObjectData+6,Y\n #_01FDF8: STA.l $7E2180,X\n\n #_01FDFC: LDA.w RoomDrawObjectData+8,Y\n #_01FDFF: STA.l $7E2200,X\n\n #_01FE03: LDA.w RoomDrawObjectData+10,Y\n #_01FE06: STA.l $7E2280,X\n\n #_01FE0A: LDA.w RoomDrawObjectData+12,Y\n #_01FE0D: STA.l $7E2300,X\n\n #_01FE11: LDA.w RoomDrawObjectData+14,Y\n #_01FE14: STA.l $7E2380,X\n\n #_01FE18: LDA.w RoomDrawObjectData+16,Y\n #_01FE1B: STA.l $7E2400,X\n\n #_01FE1F: LDA.w RoomDrawObjectData+18,Y\n #_01FE22: STA.l $7E2480,X\n\n #_01FE26: LDA.w RoomDrawObjectData+20,Y\n #_01FE29: STA.l $7E2500,X\n\n #_01FE2D: LDA.w RoomDrawObjectData+22,Y\n #_01FE30: STA.l $7E2580,X\n\n #_01FE34: INX\n #_01FE35: INX\n\n #_01FE36: TYA\n #_01FE37: CLC\n #_01FE38: ADC.w #$0018\n #_01FE3B: TAY\n\n #_01FE3C: DEC.b $0E\n #_01FE3E: BNE .next\n\n #_01FE40: RTS", + "file": "bank_01.asm" + }, + { + "name": "Underworld_DrawRoomOverlay_Apply", + "code": "Underworld_DrawRoomOverlay_Apply:\n #_01FE41: STA.b $08\n\n #_01FE43: LDA.w #$0004\n #_01FE46: STA.b $0A\n\n.next_super\n #_01FE48: LDX.b $08\n\n #_01FE4A: LDA.l $7E2000,X\n #_01FE4E: STA.b $00\n\n #_01FE50: LDA.l $7E2002,X\n #_01FE54: STA.b $02\n\n #_01FE56: LDA.l $7E2004,X\n #_01FE5A: STA.b $04\n\n #_01FE5C: LDA.l $7E2006,X\n #_01FE60: STA.b $06\n\n #_01FE62: LDX.w #$0006\n\n.next\n #_01FE65: LDA.b $00,X\n #_01FE67: STZ.b $00,X\n #_01FE69: AND.w #$03FE\n #_01FE6C: CMP.w #$00EE\n #_01FE6F: BEQ .skip\n\n #_01FE71: CMP.w #$00FE\n #_01FE74: BEQ .skip\n\n #_01FE76: LDA.w #$0020 ; TILETYPE 20\n #_01FE79: STA.b $00,X\n\n.skip\n #_01FE7B: DEX\n #_01FE7C: DEX\n #_01FE7D: BPL .next\n\n; ---------------------------------------------------------\n\n #_01FE7F: LDA.b $08\n #_01FE81: LSR A\n #_01FE82: TAX\n\n #_01FE83: SEP #$20\n\n #_01FE85: LDA.b $00\n #_01FE87: STA.l $7F2000,X\n\n #_01FE8B: LDA.b $02\n #_01FE8D: STA.l $7F2001,X\n\n #_01FE91: LDA.b $04\n #_01FE93: STA.l $7F2002,X\n\n #_01FE97: LDA.b $06\n #_01FE99: STA.l $7F2003,X\n\n #_01FE9D: REP #$20\n\n #_01FE9F: LDA.b $08\n #_01FEA1: CLC\n #_01FEA2: ADC.w #$0080\n #_01FEA5: STA.b $08\n\n #_01FEA7: DEC.b $0A\n #_01FEA9: BNE .next_super\n\n #_01FEAB: RTS", + "file": "bank_01.asm" + }, + { + "name": "NULL_01FEAC", + "code": "NULL_01FEAC:\n #_01FEAC: db $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "ApplyGrayscaleFixed_Incremental", + "code": "ApplyGrayscaleFixed_Incremental:\n #_01FEB0: LDA.b $9C\n #_01FEB2: AND.b #$1F\n #_01FEB4: CMP.l $7EC017\n #_01FEB8: BEQ EXIT_01FED1\n\n #_01FEBA: DEC A\n #_01FEBB: BCS .darkening\n\n #_01FEBD: INC A\n #_01FEBE: INC A\n\n.darkening\n #_01FEBF: STA.b $00\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "ApplyGrayscaleFixed_Parameterized", + "code": "ApplyGrayscaleFixed_Parameterized:\n #_01FEC1: ORA.b #$20\n #_01FEC3: STA.b $9C\n\n #_01FEC5: AND.b #$1F\n #_01FEC7: ORA.b #$40\n #_01FEC9: STA.b $9D\n\n #_01FECB: AND.b #$1F\n #_01FECD: ORA.b #$80\n #_01FECF: STA.b $9E\n\n; ---------------------------------------------------------\n\n#EXIT_01FED1:\n #_01FED1: RTL", + "file": "bank_01.asm" + }, + { + "name": "LinkZap_HandleMosaic", + "code": "LinkZap_HandleMosaic:\n #_01FED2: LDA.w $0647\n #_01FED5: BNE .negative\n\n #_01FED7: LDA.l $7EC011\n #_01FEDB: CLC\n #_01FEDC: ADC.b #$10\n #_01FEDE: CMP.b #$C0\n #_01FEE0: BNE .set\n\n #_01FEE2: INC.w $0647\n #_01FEE5: BRA .set\n\n.negative\n #_01FEE7: LDA.l $7EC011\n #_01FEEB: SEC\n #_01FEEC: SBC.b #$10\n #_01FEEE: BNE .set\n\n; =========================================================\n\n#LinkZap_ResetMosaic:\n #_01FEF0: STZ.w $0647\n\n.set\n #_01FEF3: STA.l $7EC011\n\n #_01FEF7: LDA.b #$09\n #_01FEF9: STA.b $94\n\n #_01FEFB: LDA.l $7EC011\n #_01FEFF: LSR A\n #_01FF00: ORA.b #$03\n #_01FF02: STA.b $95\n\n #_01FF04: RTL", + "file": "bank_01.asm" + }, + { + "name": "Underworld_HandleLayerChange", + "code": "Underworld_HandleLayerChange:\n #_01FF05: LDA.b #$01\n #_01FF07: STA.w $0476\n\n #_01FF0A: LDA.w $044A\n #_01FF0D: BNE .dont_change_rooms\n\n #_01FF0F: LDA.b $A0\n #_01FF11: CLC\n #_01FF12: ADC.b #$10\n #_01FF14: STA.b $A0\n\n.dont_change_rooms\n #_01FF16: LDA.w $044A\n #_01FF19: CMP.b #$02\n #_01FF1B: BEQ .dont_swap_layer\n\n #_01FF1D: LDA.b #$01\n #_01FF1F: STA.b $EE\n\n.dont_swap_layer\n #_01FF21: STZ.w $047A\n\n #_01FF24: JML SetAndSaveVisitedQuadrantFlags\n\n; =========================================================\n", + "file": "bank_01.asm" + }, + { + "name": "CacheCameraProperties", + "code": "CacheCameraProperties:\n #_01FF28: REP #$20\n\n #_01FF2A: LDA.b $E2\n #_01FF2C: STA.l $7EC180\n\n #_01FF30: LDA.b $E8\n #_01FF32: STA.l $7EC182\n\n #_01FF36: LDA.b $20\n #_01FF38: STA.l $7EC184\n\n #_01FF3C: LDA.b $22\n #_01FF3E: STA.l $7EC186\n\n; ---------------------------------------------------------\n\n #_01FF42: LDA.w $0600\n #_01FF45: STA.l $7EC188\n\n #_01FF49: LDA.w $0604\n #_01FF4C: STA.l $7EC18A\n\n #_01FF50: LDA.w $0608\n #_01FF53: STA.l $7EC18C\n\n #_01FF57: LDA.w $060C\n #_01FF5A: STA.l $7EC18E\n\n #_01FF5E: LDA.w $0610\n #_01FF61: STA.l $7EC190\n\n #_01FF65: LDA.w $0612\n #_01FF68: STA.l $7EC192\n\n #_01FF6C: LDA.w $0614\n #_01FF6F: STA.l $7EC194\n\n #_01FF73: LDA.w $0616\n #_01FF76: STA.l $7EC196\n\n #_01FF7A: LDA.w $0618\n #_01FF7D: STA.l $7EC198\n\n #_01FF81: LDA.w $061C\n #_01FF84: STA.l $7EC19A\n\n #_01FF88: LDA.b $A6\n #_01FF8A: STA.l $7EC19C\n\n #_01FF8E: LDA.b $A9\n #_01FF90: STA.l $7EC19E\n\n; ---------------------------------------------------------\n\n #_01FF94: SEP #$20\n\n #_01FF96: LDA.b $2F\n #_01FF98: STA.l $7EC1A6\n\n #_01FF9C: LDA.b $EE\n #_01FF9E: STA.l $7EC1A7\n\n #_01FFA2: LDA.w $0476\n #_01FFA5: STA.l $7EC1A8\n\n #_01FFA9: LDA.b $6C\n #_01FFAB: STA.l $7EC1A9\n\n #_01FFAF: LDA.b $A4\n #_01FFB1: STA.l $7EC1AA\n\n #_01FFB5: RTL", + "file": "bank_01.asm" + }, + { + "name": "CheckAbilityToSwim", + "code": "CheckAbilityToSwim:\n #_01FFB6: LDA.w $02E0\n #_01FFB9: BNE .bunny\n\n #_01FFBB: LDA.l $7EF356\n #_01FFBF: BNE .exit\n\n.bunny\n #_01FFC1: LDA.l $7EF357\n #_01FFC5: BEQ .no_pearl\n\n #_01FFC7: STZ.w $02E0\n\n.no_pearl\n #_01FFCA: LDA.b #$0C\n #_01FFCC: STA.b $4B\n\n #_01FFCE: LDA.b #$2A\n\n #_01FFD0: LDX.b $1B\n #_01FFD2: BEQ .outdoors\n\n #_01FFD4: LDA.b #$14\n\n.outdoors\n #_01FFD6: STA.b $11\n\n.exit\n #_01FFD8: RTL", + "file": "bank_01.asm" + }, + { + "name": "TakeDamageFromPit", + "code": "TakeDamageFromPit:\n #_01FFD9: LDA.b #$0C\n #_01FFDB: STA.b $4B\n\n #_01FFDD: LDA.b #$2A\n\n #_01FFDF: LDX.b $1B\n #_01FFE1: BEQ .outside\n\n #_01FFE3: LDA.b #$14\n\n.outside\n #_01FFE5: STA.b $11\n\n #_01FFE7: LDA.l $7EF36D\n #_01FFEB: SEC\n #_01FFEC: SBC.b #$08\n #_01FFEE: STA.l $7EF36D\n\n #_01FFF2: CMP.b #$A8\n #_01FFF4: BCC .exit\n\n #_01FFF6: LDA.b #$00\n #_01FFF8: STA.l $7EF36D\n\n.exit\n #_01FFFC: RTL", + "file": "bank_01.asm" + }, + { + "name": "TheFont", + "code": "TheFont:\n #_0E8000: incbin \"bin/gfx/font.2bpp\"\n\n.end\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CustomTileTypesOffset", + "code": "CustomTileTypesOffset:\n #_0E9000: dw $0000, $0000, $0000, $0080, $0080, $0100, $0100, $0100\n #_0E9010: dw $0180, $0000, $0100, $0200, $0280, $0300, $0380, $0100\n #_0E9020: dw $0100, $0080, $0100, $0380, $0100\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CustomUnderworldTileTypes", + "code": "CustomUnderworldTileTypes:\n #_0E902A: db $02, $02, $02, $02, $02, $02, $6E, $6F\n #_0E9032: db $01, $6C, $02, $01, $01, $01, $01, $01\n #_0E903A: db $02, $02, $02, $02, $02, $02, $00, $00\n #_0E9042: db $00, $00, $02, $01, $01, $01, $01, $01\n #_0E904A: db $01, $01, $01, $01, $01, $01, $6E, $6F\n #_0E9052: db $01, $6C, $02, $02, $02, $02, $01, $02\n #_0E905A: db $00, $00, $22, $00, $00, $00, $02, $02\n #_0E9062: db $02, $02, $02, $02, $00, $00, $01, $00\n #_0E906A: db $01, $01, $01, $01, $01, $01, $01, $02\n #_0E9072: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E907A: db $01, $01, $01, $01, $01, $01, $01, $02\n #_0E9082: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E908A: db $02, $02, $02, $02, $18, $00, $00, $00\n #_0E9092: db $00, $00, $02, $02, $01, $01, $01, $01\n #_0E909A: db $02, $02, $02, $01, $02, $02, $08, $08\n #_0E90A2: db $08, $08, $09, $09, $09, $09, $09, $09\n\n; set 01\n #_0E90AA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E90B2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E90BA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E90C2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E90CA: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E90D2: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E90DA: db $00, $00, $22, $00, $00, $00, $02, $02\n #_0E90E2: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E90EA: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E90F2: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E90FA: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E9102: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E910A: db $02, $02, $02, $02, $18, $00, $00, $00\n #_0E9112: db $00, $00, $02, $02, $02, $02, $02, $02\n #_0E911A: db $02, $02, $02, $01, $02, $02, $08, $08\n #_0E9122: db $08, $08, $09, $09, $09, $09, $09, $09\n\n; set 02\n #_0E912A: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9132: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E913A: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9142: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E914A: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E9152: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E915A: db $00, $00, $22, $00, $00, $00, $00, $00\n #_0E9162: db $00, $00, $02, $02, $00, $00, $02, $00\n #_0E916A: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E9172: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E917A: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E9182: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E918A: db $02, $02, $02, $02, $00, $00, $00, $00\n #_0E9192: db $00, $00, $02, $02, $02, $02, $02, $02\n #_0E919A: db $6B, $6A, $02, $01, $02, $02, $08, $08\n #_0E91A2: db $08, $08, $09, $09, $09, $09, $68, $69\n\n; set 03\n #_0E91AA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E91B2: db $09, $09, $02, $01, $01, $01, $01, $01\n #_0E91BA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E91C2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E91CA: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E91D2: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E91DA: db $00, $00, $22, $00, $00, $00, $02, $02\n #_0E91E2: db $02, $02, $02, $02, $00, $00, $00, $00\n #_0E91EA: db $01, $01, $01, $00, $02, $02, $02, $02\n #_0E91F2: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E91FA: db $01, $01, $01, $08, $02, $02, $02, $02\n #_0E9202: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E920A: db $02, $02, $02, $02, $18, $00, $00, $00\n #_0E9212: db $00, $00, $02, $02, $02, $02, $02, $02\n #_0E921A: db $08, $08, $02, $01, $01, $09, $08, $08\n #_0E9222: db $08, $08, $09, $09, $09, $09, $09, $09\n\n; set 04\n #_0E922A: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9232: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E923A: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9242: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E924A: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E9252: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E925A: db $00, $00, $22, $00, $00, $00, $02, $02\n #_0E9262: db $02, $02, $02, $02, $00, $00, $00, $00\n #_0E926A: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E9272: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E927A: db $01, $01, $01, $01, $02, $02, $02, $02\n #_0E9282: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E928A: db $02, $02, $02, $02, $02, $00, $0F, $00\n #_0E9292: db $00, $00, $02, $02, $02, $02, $02, $02\n #_0E929A: db $02, $02, $02, $01, $02, $02, $08, $08\n #_0E92A2: db $08, $08, $0E, $0E, $0E, $0E, $00, $00\n\n; set 05\n #_0E92AA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E92B2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E92BA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E92C2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E92CA: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E92D2: db $01, $02, $02, $02, $02, $02, $02, $02\n #_0E92DA: db $00, $00, $22, $00, $00, $00, $00, $00\n #_0E92E2: db $00, $00, $02, $02, $00, $00, $00, $00\n #_0E92EA: db $01, $01, $01, $01, $02, $02, $02, $0D\n #_0E92F2: db $0D, $02, $02, $02, $02, $02, $02, $02\n #_0E92FA: db $01, $01, $01, $01, $02, $02, $02, $0D\n #_0E9302: db $0D, $02, $02, $02, $02, $02, $02, $02\n #_0E930A: db $02, $02, $02, $02, $02, $00, $00, $00\n #_0E9312: db $00, $00, $02, $02, $02, $02, $02, $02\n #_0E931A: db $6B, $6A, $02, $01, $02, $02, $08, $08\n #_0E9322: db $08, $08, $09, $09, $09, $09, $68, $69\n\n; set 06\n #_0E932A: db $B2, $B4, $B1, $BB, $02, $02, $02, $02\n #_0E9332: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E933A: db $B3, $B5, $B0, $B6, $02, $02, $02, $02\n #_0E9342: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E934A: db $02, $01, $01, $01, $01, $01, $01, $01\n #_0E9352: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E935A: db $00, $00, $22, $00, $00, $00, $02, $02\n #_0E9362: db $02, $02, $02, $02, $00, $00, $00, $00\n #_0E936A: db $B1, $B2, $B3, $B4, $B5, $B1, $B0, $02\n #_0E9372: db $BE, $02, $02, $02, $02, $02, $B7, $B8\n #_0E937A: db $B0, $B2, $B3, $B4, $B5, $02, $B0, $02\n #_0E9382: db $00, $02, $B1, $BE, $00, $BD, $B9, $BA\n #_0E938A: db $02, $02, $B1, $B0, $02, $00, $00, $00\n #_0E9392: db $BD, $BC, $02, $02, $02, $02, $02, $02\n #_0E939A: db $00, $00, $00, $00, $00, $0E, $00, $00\n #_0E93A2: db $00, $00, $00, $00, $00, $00, $00, $00\n\n; set 07\n #_0E93AA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E93B2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E93BA: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E93C2: db $02, $02, $02, $01, $01, $01, $01, $01\n #_0E93CA: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E93D2: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E93DA: db $00, $00, $22, $00, $00, $00, $00, $00\n #_0E93E2: db $00, $00, $02, $02, $00, $00, $00, $00\n #_0E93EA: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E93F2: db $00, $00, $00, $00, $00, $00, $02, $02\n #_0E93FA: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E9402: db $00, $00, $00, $00, $00, $00, $02, $02\n #_0E940A: db $02, $02, $02, $02, $18, $00, $00, $00\n #_0E9412: db $00, $00, $00, $00, $01, $01, $01, $01\n #_0E941A: db $6B, $6A, $02, $01, $02, $02, $08, $08\n #_0E9422: db $08, $08, $0E, $0E, $0E, $0E, $68, $69\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Underworld_LoadCustomTileTypes", + "code": "Underworld_LoadCustomTileTypes:\n #_0E942A: PHB\n #_0E942B: PHK\n #_0E942C: PLB\n\n #_0E942D: REP #$30\n\n #_0E942F: LDA.w $0AA2\n #_0E9432: AND.w #$00FF\n #_0E9435: ASL A\n #_0E9436: TAX\n\n #_0E9437: LDA.w CustomTileTypesOffset,X\n #_0E943A: TAY\n\n #_0E943B: LDX.w #$0000\n\n.copy_next\n #_0E943E: LDA.w CustomUnderworldTileTypes+$00,Y\n #_0E9441: STA.l $7EFF40,X\n\n #_0E9445: LDA.w CustomUnderworldTileTypes+$40,Y\n #_0E9448: STA.l $7EFF80,X\n\n #_0E944C: INY\n #_0E944D: INY\n\n #_0E944E: INX\n #_0E944F: INX\n\n #_0E9450: CPX.w #$0040\n #_0E9453: BNE .copy_next\n\n #_0E9455: SEP #$30\n\n #_0E9457: PLB\n\n #_0E9458: RTL", + "file": "bank_0E.asm" + }, + { + "name": "OverworldTileTypes", + "code": "OverworldTileTypes:\n #_0E9459: db $27, $27, $27, $27, $27, $27, $02, $02\n #_0E9461: db $01, $01, $01, $00, $00, $00, $00, $00\n #_0E9469: db $27, $01, $01, $01, $01, $01, $02, $02\n #_0E9471: db $27, $27, $27, $00, $00, $00, $00, $00\n #_0E9479: db $27, $01, $01, $01, $20, $01, $02, $02\n #_0E9481: db $27, $27, $27, $00, $00, $00, $00, $00\n #_0E9489: db $27, $01, $01, $01, $01, $20, $02, $02\n #_0E9491: db $02, $02, $02, $00, $00, $00, $00, $00\n #_0E9499: db $01, $01, $01, $01, $1A, $01, $12, $01\n #_0E94A1: db $01, $02, $01, $01, $28, $2E, $2A, $2B\n #_0E94A9: db $01, $01, $18, $18, $1A, $01, $12, $01\n #_0E94B1: db $01, $2C, $02, $2D, $29, $2F, $02, $02\n #_0E94B9: db $01, $01, $01, $01, $01, $01, $02, $01\n #_0E94C1: db $02, $2E, $00, $00, $2C, $00, $4E, $4F\n #_0E94C9: db $01, $01, $01, $01, $01, $01, $02, $01\n #_0E94D1: db $02, $00, $2E, $00, $00, $00, $02, $22\n #_0E94D9: db $01, $01, $02, $00, $00, $00, $18, $12\n #_0E94E1: db $02, $02, $00, $48, $00, $00, $00, $00\n #_0E94E9: db $01, $01, $02, $00, $01, $01, $10, $1A\n #_0E94F1: db $02, $00, $00, $48, $00, $00, $00, $00\n #_0E94F9: db $10, $10, $02, $00, $01, $01, $01, $01\n #_0E9501: db $00, $00, $48, $00, $00, $09, $00, $00\n #_0E9509: db $02, $02, $02, $00, $01, $01, $2B, $00\n #_0E9511: db $00, $09, $00, $00, $00, $00, $00, $00\n #_0E9519: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E9521: db $02, $02, $02, $02, $02, $00, $00, $00\n #_0E9529: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E9531: db $02, $02, $02, $02, $02, $00, $00, $00\n #_0E9539: db $01, $01, $01, $46, $01, $01, $02, $02\n #_0E9541: db $02, $02, $02, $02, $02, $00, $00, $00\n #_0E9549: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E9551: db $02, $02, $02, $02, $02, $00, $00, $00\n #_0E9559: db $02, $02, $42, $02, $02, $02, $02, $02\n #_0E9561: db $02, $02, $29, $22, $00, $00, $00, $00\n #_0E9569: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9571: db $02, $02, $29, $22, $00, $00, $00, $00\n #_0E9579: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9581: db $02, $02, $00, $00, $00, $00, $00, $00\n #_0E9589: db $02, $02, $02, $02, $02, $02, $02, $02\n #_0E9591: db $02, $02, $00, $00, $00, $00, $00, $00\n #_0E9599: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E95A1: db $01, $01, $01, $00, $00, $00, $02, $44\n #_0E95A9: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E95B1: db $02, $02, $02, $00, $00, $00, $02, $44\n #_0E95B9: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E95C1: db $02, $02, $02, $00, $00, $00, $00, $00\n #_0E95C9: db $01, $01, $43, $01, $01, $01, $01, $01\n #_0E95D1: db $02, $02, $02, $00, $00, $00, $00, $00\n #_0E95D9: db $50, $02, $54, $51, $57, $57, $56, $56\n #_0E95E1: db $27, $27, $27, $00, $40, $40, $48, $48\n #_0E95E9: db $50, $02, $54, $51, $57, $2A, $56, $56\n #_0E95F1: db $27, $27, $27, $00, $40, $40, $57, $48\n #_0E95F9: db $27, $02, $52, $53, $02, $01, $12, $18\n #_0E9601: db $55, $55, $00, $00, $48, $02, $02, $00\n #_0E9609: db $27, $02, $52, $53, $09, $01, $1A, $10\n #_0E9611: db $55, $55, $00, $00, $48, $02, $02, $00\n #_0E9619: db $02, $02, $18, $08, $08, $08, $09, $09\n #_0E9621: db $08, $08, $29, $02, $02, $02, $1A, $02\n #_0E9629: db $08, $08, $10, $08, $12, $00, $09, $09\n #_0E9631: db $09, $09, $09, $48, $09, $29, $00, $4B\n #_0E9639: db $02, $02, $02, $00, $08, $02, $02, $00\n #_0E9641: db $00, $00, $00, $01, $00, $00, $20, $00\n #_0E9649: db $02, $02, $02, $02, $02, $02, $02, $00\n #_0E9651: db $00, $01, $01, $01, $02, $00, $08, $00\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "UnderworldTileTypes", + "code": "UnderworldTileTypes:\n #_0E9659: db $01, $01, $01, $00, $02, $01, $02, $00\n #_0E9661: db $01, $01, $02, $02, $02, $02, $02, $02\n #_0E9669: db $02, $02, $02, $00, $00, $01, $00, $00\n #_0E9671: db $02, $00, $00, $02, $02, $02, $02, $02\n #_0E9679: db $02, $02, $02, $02, $01, $01, $01, $02\n #_0E9681: db $02, $02, $02, $02, $01, $01, $00, $00\n #_0E9689: db $02, $02, $02, $02, $02, $02, $01, $02\n #_0E9691: db $02, $02, $02, $02, $01, $01, $00, $00\n #_0E9699: db $00, $00, $00, $2A, $01, $20, $01, $01\n #_0E96A1: db $04, $01, $01, $18, $01, $02, $1C, $01\n #_0E96A9: db $28, $28, $2A, $2A, $01, $02, $01, $01\n #_0E96B1: db $04, $00, $00, $00, $28, $01, $0A, $00\n #_0E96B9: db $01, $01, $0C, $0C, $02, $02, $02, $02\n #_0E96C1: db $28, $2A, $20, $20, $20, $02, $08, $00\n #_0E96C9: db $04, $04, $01, $01, $01, $02, $02, $02\n #_0E96D1: db $00, $00, $20, $20, $00, $02, $00, $00\n #_0E96D9: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E96E1: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E96E9: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E96F1: db $01, $01, $18, $10, $10, $01, $01, $01\n #_0E96F9: db $01, $01, $04, $04, $04, $04, $04, $04\n #_0E9701: db $01, $02, $02, $00, $00, $00, $00, $00\n #_0E9709: db $01, $01, $01, $01, $01, $01, $01, $01\n #_0E9711: db $01, $01, $01, $01, $01, $01, $02, $02\n #_0E9719: db $00, $00, $00, $00, $00, $00, $00, $00\n #_0E9721: db $00, $00, $00, $00, $00, $00, $62, $62\n #_0E9729: db $00, $00, $24, $24, $00, $00, $00, $00\n #_0E9731: db $00, $00, $00, $00, $00, $00, $62, $62\n #_0E9739: db $27, $02, $02, $02, $27, $27, $01, $00\n #_0E9741: db $00, $00, $00, $24, $00, $00, $00, $00\n #_0E9749: db $27, $27, $27, $27, $27, $10, $02, $01\n #_0E9751: db $00, $00, $00, $24, $00, $00, $00, $00\n #_0E9759: db $27, $02, $02, $02, $27, $27, $27, $27\n #_0E9761: db $02, $02, $02, $24, $00, $00, $00, $00\n #_0E9769: db $27, $27, $27, $27, $27, $20, $02, $02\n #_0E9771: db $01, $02, $02, $23, $02, $00, $00, $00\n #_0E9779: db $27, $27, $27, $27, $27, $20, $02, $27\n #_0E9781: db $02, $54, $00, $00, $27, $02, $02, $02\n #_0E9789: db $27, $27, $27, $27, $27, $27, $02, $27\n #_0E9791: db $02, $54, $00, $00, $27, $02, $02, $02\n #_0E9799: db $27, $27, $00, $27, $60, $60, $01, $01\n #_0E97A1: db $01, $01, $02, $02, $0D, $00, $00, $4B\n #_0E97A9: db $67, $67, $67, $67, $66, $66, $66, $66\n #_0E97B1: db $00, $00, $20, $20, $20, $20, $20, $20\n #_0E97B9: db $27, $63, $27, $55, $55, $01, $44, $00\n #_0E97C1: db $01, $20, $02, $02, $1C, $3A, $3B, $00\n #_0E97C9: db $27, $63, $27, $53, $53, $01, $44, $01\n #_0E97D1: db $0D, $00, $00, $00, $09, $09, $09, $09\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "LoadDefaultTileTypes", + "code": "LoadDefaultTileTypes:\n #_0E97D9: REP #$20\n\n #_0E97DB: LDX.b #$3E\n\n.copy_next\n #_0E97DD: LDA.l UnderworldTileTypes+$000,X\n #_0E97E1: STA.l $7EFE00,X\n\n #_0E97E5: LDA.l UnderworldTileTypes+$040,X\n #_0E97E9: STA.l $7EFE40,X\n\n #_0E97ED: LDA.l UnderworldTileTypes+$080,X\n #_0E97F1: STA.l $7EFE80,X\n\n #_0E97F5: LDA.l UnderworldTileTypes+$0C0,X\n #_0E97F9: STA.l $7EFEC0,X\n\n #_0E97FD: LDA.l UnderworldTileTypes+$100,X\n #_0E9801: STA.l $7EFF00,X\n\n #_0E9805: LDA.l UnderworldTileTypes+$140,X\n #_0E9809: STA.l $7EFFC0,X\n\n #_0E980D: DEX\n #_0E980E: DEX\n #_0E980F: BPL .copy_next\n\n #_0E9811: SEP #$20\n\n #_0E9813: RTL", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0E9814", + "code": "NULL_0E9814:\n #_0E9814: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0E981C: db $FF, $FF, $FF, $FF\n\n; =========================================================\n\npool Module1A_Credits\n\n.vectors\n #_0E9820: dw Credits_LoadNextScene_Overworld ; 0x00\n #_0E9822: dw Credits_ScrollScene_Overworld ; 0x01\n #_0E9824: dw Credits_LoadNextScene_Underworld ; 0x02\n #_0E9826: dw Credits_ScrollScene_Underworld ; 0x03\n #_0E9828: dw Credits_LoadNextScene_Overworld ; 0x04\n #_0E982A: dw Credits_ScrollScene_Overworld ; 0x05\n #_0E982C: dw Credits_LoadNextScene_Overworld ; 0x06\n #_0E982E: dw Credits_ScrollScene_Overworld ; 0x07\n #_0E9830: dw Credits_LoadNextScene_Overworld ; 0x08\n #_0E9832: dw Credits_ScrollScene_Overworld ; 0x09\n #_0E9834: dw Credits_LoadNextScene_Overworld ; 0x0A\n #_0E9836: dw Credits_ScrollScene_Overworld ; 0x0B\n #_0E9838: dw Credits_LoadNextScene_Overworld ; 0x0C\n #_0E983A: dw Credits_ScrollScene_Overworld ; 0x0D\n #_0E983C: dw Credits_LoadNextScene_Overworld ; 0x0E\n #_0E983E: dw Credits_ScrollScene_Overworld ; 0x0F\n #_0E9840: dw Credits_LoadNextScene_Overworld ; 0x10\n #_0E9842: dw Credits_ScrollScene_Overworld ; 0x11\n #_0E9844: dw Credits_LoadNextScene_Overworld ; 0x12\n #_0E9846: dw Credits_ScrollScene_Overworld ; 0x13\n #_0E9848: dw Credits_LoadNextScene_Underworld ; 0x14\n #_0E984A: dw Credits_ScrollScene_Underworld ; 0x15\n #_0E984C: dw Credits_LoadNextScene_Underworld ; 0x16\n #_0E984E: dw Credits_ScrollScene_Underworld ; 0x17\n #_0E9850: dw Credits_LoadNextScene_Overworld ; 0x18\n #_0E9852: dw Credits_ScrollScene_Overworld ; 0x19\n #_0E9854: dw Credits_LoadNextScene_Overworld ; 0x1A\n #_0E9856: dw Credits_ScrollScene_Overworld ; 0x1B\n #_0E9858: dw Credits_LoadNextScene_Overworld ; 0x1C\n #_0E985A: dw Credits_ScrollScene_Overworld ; 0x1D\n #_0E985C: dw Credits_LoadNextScene_Overworld ; 0x1E\n #_0E985E: dw Credits_ScrollScene_Overworld ; 0x1F\n #_0E9860: dw Credits_InitializeTheActualCredits ; 0x20\n #_0E9862: dw Credits_BrightenTriangles ; 0x21\n #_0E9864: dw Credits_FadeColorAndBeginAnimating ; 0x22\n #_0E9866: dw Credits_StopCreditsScroll ; 0x23\n #_0E9868: dw Credits_FadeAndDisperseTriangles ; 0x24\n #_0E986A: dw Credits_FadeInTheEnd ; 0x25\n #_0E986C: dw Credits_HangForever\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Module1A_Credits", + "code": "Module1A_Credits:\n #_0E986E: REP #$20\n\n #_0E9870: LDA.w #$0030\n #_0E9873: STA.w $0FE0\n\n #_0E9876: LDA.w #$01D0\n #_0E9879: STA.w $0FE2\n\n #_0E987C: STZ.w $0FE4\n\n #_0E987F: SEP #$20\n\n #_0E9881: LDA.b $11\n #_0E9883: ASL A\n #_0E9884: TAX\n\n #_0E9885: JSR (.vectors,X)\n\n #_0E9888: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadNextScene_Overworld", + "code": "Credits_LoadNextScene_Overworld:\n #_0E9889: JSL Credits_LoadScene_Overworld\n #_0E988D: JSR Credits_AddEndingSequenceText\n\n #_0E9890: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadNextScene_Underworld", + "code": "Credits_LoadNextScene_Underworld:\n #_0E9891: JSL Credits_LoadScene_Underworld\n\n #_0E9895: JSR Credits_AddEndingSequenceText\n\n #_0E9898: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_PrepAndLoadSprites", + "code": "Credits_PrepAndLoadSprites:\n #_0E98B9: PHB\n #_0E98BA: PHK\n #_0E98BB: PLB\n\n #_0E98BC: LDX.b #$0F\n\n.reset_next_sprite\n #_0E98BE: JSL SpritePrep_ResetProperties\n\n #_0E98C2: STZ.w $0DD0,X\n #_0E98C5: STZ.w $0BE0,X\n #_0E98C8: STZ.w $0CAA,X\n\n #_0E98CB: DEX\n #_0E98CC: BPL .reset_next_sprite\n\n; ---------------------------------------------------------\n\n #_0E98CE: LDA.b $11\n #_0E98D0: AND.b #$FE\n #_0E98D2: TAX\n\n #_0E98D3: JSR (.vectors,X)\n\n #_0E98D6: PLB\n\n #_0E98D7: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Credits_ScrollScene_Overworld", + "code": "Credits_ScrollScene_Overworld:\n #_0E9958: PHB\n #_0E9959: PHK\n #_0E995A: PLB\n\n #_0E995B: LDX.b #$0F\n\n.next_timer\n #_0E995D: LDA.w $0DF0,X\n #_0E9960: BEQ .timer_done\n\n #_0E9962: DEC.w $0DF0,X\n\n.timer_done\n #_0E9965: DEX\n #_0E9966: BPL .next_timer\n\n; ---------------------------------------------------------\n\n #_0E9968: LDA.b $11\n #_0E996A: AND.b #$FE\n #_0E996C: TAX\n\n #_0E996D: STZ.b $30\n #_0E996F: STZ.b $31\n\n #_0E9971: REP #$20\n\n #_0E9973: LDA.b $C8\n #_0E9975: CMP.w #$0040\n #_0E9978: BCC .no_scroll\n\n #_0E997A: AND.w #$0001\n #_0E997D: BNE .no_scroll\n\n #_0E997F: LDA.b $E8\n #_0E9981: CMP.w Credits_ScrollScene_target_y,X\n #_0E9984: BEQ .at_vertical_target\n\n #_0E9986: LDY.w Credits_ScrollScene_movement_y,X\n #_0E9989: STY.b $30\n\n.at_vertical_target\n #_0E998B: LDA.b $E2\n #_0E998D: CMP.w Credits_ScrollScene_target_x,X\n #_0E9990: BEQ .no_scroll\n\n #_0E9992: LDY.w Credits_ScrollScene_movement_x,X\n #_0E9995: STY.b $31\n\n; ---------------------------------------------------------\n\n.no_scroll\n #_0E9997: SEP #$20\n\n #_0E9999: PHX\n #_0E999A: JSL Credits_OperateScrollingAndTilemap\n #_0E999E: PLX\n\n #_0E999F: JSR (Credits_SpriteDraw_vectors,X)\n\n #_0E99A2: JMP.w Credits_HandleSceneFade\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_vectors", + "code": "Credits_SpriteDraw_vectors:\n #_0E99A5: dw Credits_SpriteDraw_Castle\n #_0E99A7: dw Credits_SpriteDraw_Sanctuary\n #_0E99A9: dw Credits_SpriteDraw_Kakariko1\n #_0E99AB: dw Credits_SpriteDraw_Desert\n #_0E99AD: dw Credits_SpriteDraw_Hera\n #_0E99AF: dw Credits_SpriteDraw_House\n #_0E99B1: dw Credits_SpriteDraw_Zora\n #_0E99B3: dw Credits_SpriteDraw_Witch\n #_0E99B5: dw Credits_SpriteDraw_Lumberjacks\n #_0E99B7: dw Credits_SpriteDraw_Grove\n #_0E99B9: dw Credits_SpriteDraw_Venus\n #_0E99BB: dw Credits_SpriteDraw_Smithy\n #_0E99BD: dw Credits_SpriteDraw_Kakariko2\n #_0E99BF: dw Credits_SpriteDraw_DeathMountain\n #_0E99C1: dw Credits_SpriteDraw_LostWoods\n #_0E99C3: dw Credits_SpriteDraw_Pedestal\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_ScrollScene_Underworld", + "code": "Credits_ScrollScene_Underworld:\n #_0E99C5: PHB\n #_0E99C6: PHK\n #_0E99C7: PLB\n\n #_0E99C8: LDX.b #$0F\n\n.next_timer\n #_0E99CA: LDA.w $0DF0,X\n #_0E99CD: BEQ .timer_done\n\n #_0E99CF: DEC.w $0DF0,X\n\n.timer_done\n #_0E99D2: DEX\n #_0E99D3: BPL .next_timer\n\n; ---------------------------------------------------------\n\n #_0E99D5: LDA.b $11\n #_0E99D7: AND.b #$FE\n #_0E99D9: TAX\n\n #_0E99DA: REP #$20\n\n #_0E99DC: LDA.b $C8\n #_0E99DE: CMP.w #$0040\n #_0E99E1: BCC .no_scroll\n\n #_0E99E3: AND.w #$0001\n #_0E99E6: BNE .no_scroll\n\n #_0E99E8: LDA.b $E8\n #_0E99EA: CMP.w Credits_ScrollScene_target_y,X\n #_0E99ED: BEQ .at_vertical_target\n\n #_0E99EF: CLC\n #_0E99F0: ADC.w Credits_ScrollScene_movement_y,X\n #_0E99F3: STA.b $E8\n\n.at_vertical_target\n #_0E99F5: LDA.b $E2\n #_0E99F7: CMP.w Credits_ScrollScene_target_x,X\n #_0E99FA: BEQ .no_scroll\n\n #_0E99FC: CLC\n #_0E99FD: ADC.w Credits_ScrollScene_movement_x,X\n #_0E9A00: STA.b $E2\n\n.no_scroll\n #_0E9A02: SEP #$20\n\n #_0E9A04: JSR (Credits_SpriteDraw_vectors,X)\n\n #_0E9A07: JMP.w Credits_HandleSceneFade\n\n; =========================================================\n\npool Credits_HandleSceneFade\n\n.timer\n #_0E9A0A: dw $0300 ; 768 - Hyrule Castle\n #_0E9A0C: dw $0280 ; 640 - Sanctuary\n #_0E9A0E: dw $0250 ; 592 - Kakariko\n #_0E9A10: dw $02E0 ; 736 - Desert\n #_0E9A12: dw $0280 ; 640 - Tower of Hera\n #_0E9A14: dw $0250 ; 592 - Link's house\n #_0E9A16: dw $02C0 ; 704 - Zora's Domain\n #_0E9A18: dw $02C0 ; 704 - Potion shop\n #_0E9A1A: dw $0250 ; 592 - Lumberjacks\n #_0E9A1C: dw $0250 ; 592 - Haunted Grove\n #_0E9A1E: dw $0280 ; 640 - Wishing Well\n #_0E9A20: dw $0250 ; 592 - Smithery\n #_0E9A22: dw $0480 ; 1152 - Kakariko (bug net)\n #_0E9A24: dw $0400 ; 1024 - Death Mountain\n #_0E9A26: dw $0250 ; 592 - Lost Woods\n #_0E9A28: dw $0500 ; 1280 - Master Sword\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_HandleSceneFade", + "code": "Credits_HandleSceneFade:\n #_0E9A2A: LDA.b $11\n #_0E9A2C: AND.b #$FE\n #_0E9A2E: TAX\n\n #_0E9A2F: REP #$20\n\n #_0E9A31: LDA.b $C8\n #_0E9A33: CMP.w .timer,X\n\n #_0E9A36: SEP #$20\n #_0E9A38: BCC .dont_fade\n\n #_0E9A3A: LDA.b $C8\n #_0E9A3C: AND.b #$01\n #_0E9A3E: BNE .delay\n\n #_0E9A40: DEC.b $13\n #_0E9A42: BNE .delay\n\n #_0E9A44: INC.b $11\n #_0E9A46: BRA .continue\n\n.dont_fade\n #_0E9A48: LDA.b $C8\n #_0E9A4A: AND.b #$01\n #_0E9A4C: BNE .delay\n\n #_0E9A4E: LDA.b $13\n #_0E9A50: CMP.b #$0F\n #_0E9A52: BEQ .delay\n\n #_0E9A54: INC.b $13\n\n.delay\n #_0E9A56: REP #$20\n\n #_0E9A58: INC.b $C8\n\n #_0E9A5A: SEP #$20\n\n; ---------------------------------------------------------\n\n.continue\n #_0E9A5C: REP #$20\n\n #_0E9A5E: LDA.b $E2\n #_0E9A60: STA.w $011E\n\n #_0E9A63: LDA.b $E8\n #_0E9A65: STA.w $0122\n\n #_0E9A68: LDA.b $E0\n #_0E9A6A: STA.w $0120\n\n #_0E9A6D: LDA.b $E6\n #_0E9A6F: STA.w $0124\n\n #_0E9A72: SEP #$20\n\n #_0E9A74: PLB\n\n #_0E9A75: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Zora", + "code": "Credits_LoadSprites_Zora:\n #_0E9C1A: LDA.b #$FF\n #_0E9C1C: STA.w $0DF0\n #_0E9C1F: STA.w $0DF1\n #_0E9C22: STA.w $0DF2\n\n #_0E9C25: BRA ProceedToCreditsSpriteLoad\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Kakariko1", + "code": "Credits_LoadSprites_Kakariko1:\n #_0E9C27: LDA.w CreditsSpriteSpeeds_neg16\n\n #_0E9C2A: STA.w $0D46\n\n #_0E9C2D: BRA ProceedToCreditsSpriteLoad\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Desert", + "code": "Credits_LoadSprites_Desert:\n #_0E9C2F: LDA.b #$16\n #_0E9C31: STA.w $0D95\n\n #_0E9C34: LDA.w CreditsSpriteSpeeds_neg16\n #_0E9C37: STA.w $0D40\n\n #_0E9C3A: LDA.w CreditsSpriteSpeeds_pos16\n #_0E9C3D: STA.w $0D41\n\n #_0E9C40: LDA.b #$01\n #_0E9C42: STA.w $0EB1\n\n; ---------------------------------------------------------\n\n #_0E9C45: LDY.b #$02\n\n.next_sprite\n #_0E9C47: LDA.b #$57 ; SPRITE 57\n #_0E9C49: STA.w $0E22,Y\n\n #_0E9C4C: LDA.b #$31\n #_0E9C4E: STA.w $0F52,Y\n\n #_0E9C51: DEY\n #_0E9C52: BPL .next_sprite\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "ProceedToCreditsSpriteLoad", + "code": "ProceedToCreditsSpriteLoad:\n #_0E9C54: BRA ProceedTo_Credits_LoadSprites_GenericOW\n\n; =========================================================\n\npool Credits_LoadSprites_Grove\n\n.sprite_timers\n #_0E9C56: db $00, $13, $26, $39, $4C\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Grove", + "code": "Credits_LoadSprites_Grove:\n #_0E9C5B: LDY.b #$04\n\n.init_next_sprite\n #_0E9C5D: LDA.w .sprite_timers,Y\n #_0E9C60: STA.w $0DF0,Y\n\n #_0E9C63: LDA.b #$00\n #_0E9C65: STA.w $0DD0,Y\n\n #_0E9C68: DEY\n #_0E9C69: BPL .init_next_sprite\n\n; ---------------------------------------------------------\n\n #_0E9C6B: LDA.b #$2E ; SPRITE 2E\n #_0E9C6D: STA.w $0E25\n\n; ---------------------------------------------------------\n\n #_0E9C70: LDY.b #$01\n\n.set_next_sprite\n #_0E9C72: LDA.b #$9F ; SPRITE 9F\n #_0E9C74: STA.w $0E27,Y\n\n #_0E9C77: LDA.b #$A0 ; SPRITE A0\n #_0E9C79: STA.w $0E29,Y\n\n #_0E9C7C: LDA.b #$01\n #_0E9C7E: STA.w $0E47,Y\n\n #_0E9C81: INC A\n #_0E9C82: STA.w $0E49,Y\n\n #_0E9C85: LDA.b #$10\n #_0E9C87: STA.w $0E67,Y\n #_0E9C8A: STA.w $0E69,Y\n\n #_0E9C8D: DEY\n #_0E9C8E: BPL .set_next_sprite\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "ProceedTo_Credits_LoadSprites_GenericOW", + "code": "ProceedTo_Credits_LoadSprites_GenericOW:\n #_0E9C90: BRA Credits_LoadSprites_GenericOW\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_LostWoods", + "code": "Credits_LoadSprites_LostWoods:\n #_0E9C92: LDA.w CreditsSpriteSpeeds_neg16\n #_0E9C95: STA.w $0D45\n\n #_0E9C98: LDA.w CreditsSpriteSpeeds_pos16\n #_0E9C9B: STA.w $0D46\n\n #_0E9C9E: LDA.b #$01\n #_0E9CA0: STA.w $0EB6\n\n #_0E9CA3: LDA.b #$08\n #_0E9CA5: STA.w $0D90\n\n; ---------------------------------------------------------\n\n #_0E9CA8: LDY.b #$03\n\n.next_sprite_y\n #_0E9CAA: LDA.b #$04\n #_0E9CAC: STA.w $0D41,Y\n\n #_0E9CAF: DEY\n #_0E9CB0: BPL .next_sprite_y\n\n; ---------------------------------------------------------\n\n #_0E9CB2: BRA Credits_LoadSprites_GenericOW\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Pedestal", + "code": "Credits_LoadSprites_Pedestal:\n #_0E9CB4: LDA.b #$02\n #_0E9CB6: STA.w $0DB4\n\n #_0E9CB9: LDA.b #$08\n #_0E9CBB: STA.w $0D45\n\n #_0E9CBE: LDA.b #$13\n #_0E9CC0: STA.w $0DF1\n\n #_0E9CC3: LDA.b #$40\n #_0E9CC5: STA.w $0DF4\n\n #_0E9CC8: BRA Credits_LoadSprites_GenericOW\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Witch", + "code": "Credits_LoadSprites_Witch:\n #_0E9CCA: LDA.b #$FF\n #_0E9CCC: STA.w $0DF1\n\n #_0E9CCF: BRA Credits_LoadSprites_GenericOW\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Kakariko2", + "code": "Credits_LoadSprites_Kakariko2:\n #_0E9CD1: LDY.b #$01\n\n.next_sprite\n #_0E9CD3: LDA.b #$39\n #_0E9CD5: STA.w $0F53,Y\n\n #_0E9CD8: LDA.b #$0B ; SPRITE 0B\n #_0E9CDA: STA.w $0E23,Y\n\n #_0E9CDD: LDA.b #$10\n #_0E9CDF: STA.w $0E63,Y\n\n #_0E9CE2: LDA.b #$01\n #_0E9CE4: STA.w $0E43,Y\n\n #_0E9CE7: DEY\n #_0E9CE8: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_0E9CEA: LDA.b #$2A ; SPRITE 2A\n #_0E9CEC: STA.w $0E25\n\n #_0E9CEF: LDA.b #$79 ; SPRITE 79\n #_0E9CF1: STA.w $0E26\n\n #_0E9CF4: LDA.b #$01\n #_0E9CF6: STA.w $0D86\n\n #_0E9CF9: LDA.b #$05\n #_0E9CFB: STA.w $0F76\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_GenericOW", + "code": "Credits_LoadSprites_GenericOW:\n #_0E9CFE: LDA.w Credits_SpriteData_position_x_pointers+0,X\n #_0E9D01: STA.b $04\n\n #_0E9D03: LDA.w Credits_SpriteData_position_x_pointers+1,X\n #_0E9D06: STA.b $05\n\n #_0E9D08: LDA.w Credits_SpriteData_position_y_pointers+0,X\n #_0E9D0B: STA.b $06\n\n #_0E9D0D: LDA.w Credits_SpriteData_position_y_pointers+1,X\n #_0E9D10: STA.b $07\n\n #_0E9D12: TXA\n #_0E9D13: LSR A\n #_0E9D14: TAX\n\n #_0E9D15: LDA.w Credits_SpriteData_sprite_count,X\n #_0E9D18: TAX\n\n; ---------------------------------------------------------\n\n.next_sprite\n #_0E9D19: TXA\n #_0E9D1A: ASL A\n #_0E9D1B: TAY\n\n #_0E9D1C: REP #$20\n\n #_0E9D1E: LDA.w #$FFFF\n #_0E9D21: STA.w $0FBA\n #_0E9D24: STA.w $0FB8\n\n #_0E9D27: LDA.w $040A\n #_0E9D2A: ASL A\n #_0E9D2B: XBA\n #_0E9D2C: AND.w #$0F00\n\n #_0E9D2F: CLC\n #_0E9D30: ADC.b ($04),Y\n #_0E9D32: STA.b $00\n\n #_0E9D34: LDA.w $040A\n #_0E9D37: LSR A\n #_0E9D38: LSR A\n #_0E9D39: XBA\n #_0E9D3A: AND.w #$0E00\n\n #_0E9D3D: CLC\n #_0E9D3E: ADC.b ($06),Y\n #_0E9D40: STA.b $02\n\n #_0E9D42: SEP #$20\n\n #_0E9D44: LDA.b $00\n #_0E9D46: STA.w $0D10,X\n\n #_0E9D49: LDA.b $01\n #_0E9D4B: STA.w $0D30,X\n\n #_0E9D4E: LDA.b $02\n #_0E9D50: STA.w $0D00,X\n\n #_0E9D53: LDA.b $03\n #_0E9D55: STA.w $0D20,X\n\n #_0E9D58: DEX\n #_0E9D59: BPL .next_sprite\n\n #_0E9D5B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Venus", + "code": "Credits_LoadSprites_Venus:\n #_0E9D5C: LDA.b #$10\n #_0E9D5E: STA.w $0DF1\n\n #_0E9D61: LDA.b #$20\n #_0E9D63: STA.w $0DF2\n\n #_0E9D66: LDA.b #$08\n #_0E9D68: STA.w $0F53\n #_0E9D6B: STA.w $0F54\n\n #_0E9D6E: BRA Credits_LoadSprites_GenericUW\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_Smithy", + "code": "Credits_LoadSprites_Smithy:\n #_0E9D70: LDA.b #$79\n #_0E9D72: STA.w $0F54\n\n #_0E9D75: LDA.b #$39\n #_0E9D77: STA.w $0F55\n\n #_0E9D7A: LDA.b #$01\n #_0E9D7C: STA.w $0DE1\n\n #_0E9D7F: LDA.b #$04\n #_0E9D81: STA.w $0D91\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_LoadSprites_GenericUW", + "code": "Credits_LoadSprites_GenericUW:\n #_0E9D84: REP #$20\n\n #_0E9D86: LDA.w $048E\n #_0E9D89: LSR A\n #_0E9D8A: LSR A\n #_0E9D8B: LSR A\n\n #_0E9D8C: SEP #$20\n\n #_0E9D8E: AND.b #$FE\n #_0E9D90: STA.w $0FB1\n\n #_0E9D93: LDA.w $048E\n #_0E9D96: AND.b #$0F\n #_0E9D98: ASL A\n #_0E9D99: STA.w $0FB0\n\n; ---------------------------------------------------------\n\n #_0E9D9C: LDA.w Credits_SpriteData_position_x_pointers+0,X\n #_0E9D9F: STA.b $04\n\n #_0E9DA1: LDA.w Credits_SpriteData_position_x_pointers+1,X\n #_0E9DA4: STA.b $05\n\n #_0E9DA6: LDA.w Credits_SpriteData_position_y_pointers+0,X\n #_0E9DA9: STA.b $06\n\n #_0E9DAB: LDA.w Credits_SpriteData_position_y_pointers+1,X\n #_0E9DAE: STA.b $07\n\n #_0E9DB0: TXA\n #_0E9DB1: LSR A\n #_0E9DB2: TAX\n\n #_0E9DB3: LDA.w Credits_SpriteData_sprite_count,X\n #_0E9DB6: TAX\n\n; ---------------------------------------------------------\n\n.next_sprite\n #_0E9DB7: TXA\n #_0E9DB8: ASL A\n #_0E9DB9: TAY\n\n #_0E9DBA: LDA.w $0FB1\n #_0E9DBD: XBA\n #_0E9DBE: LDA.b #$00\n\n #_0E9DC0: REP #$20\n\n #_0E9DC2: CLC\n #_0E9DC3: ADC.b ($06),Y\n #_0E9DC5: STA.b $02\n\n #_0E9DC7: SEP #$20\n\n #_0E9DC9: LDA.w $0FB0\n #_0E9DCC: XBA\n #_0E9DCD: LDA.b #$00\n\n #_0E9DCF: REP #$20\n\n #_0E9DD1: CLC\n #_0E9DD2: ADC.b ($04),Y\n #_0E9DD4: STA.b $00\n\n #_0E9DD6: SEP #$20\n\n #_0E9DD8: LDA.b $00\n #_0E9DDA: STA.w $0D10,X\n\n #_0E9DDD: LDA.b $01\n #_0E9DDF: STA.w $0D30,X\n\n #_0E9DE2: LDA.b $02\n #_0E9DE4: STA.w $0D00,X\n\n #_0E9DE7: LDA.b $03\n #_0E9DE9: STA.w $0D20,X\n\n #_0E9DEC: DEX\n #_0E9DED: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_0E9DEF: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_King", + "code": "CreditsOAMGroup_King:\n #_0E9DF0: dw -3, 17 : db $2B, $00, $00, $00\n #_0E9DF8: dw -3, 25 : db $3B, $00, $00, $00\n #_0E9E00: dw 0, 0 : db $0E, $00, $00, $02\n #_0E9E08: dw 16, 0 : db $0E, $40, $00, $02\n #_0E9E10: dw 0, 16 : db $2E, $00, $00, $02\n #_0E9E18: dw 16, 16 : db $2E, $40, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Zelda", + "code": "CreditsOAMGroup_Zelda:\n #_0E9E20: dw 8, 5 : db $04, $0A, $00, $02\n #_0E9E28: dw 0, 16 : db $06, $08, $00, $02\n #_0E9E30: dw 16, 16 : db $06, $48, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Maiden", + "code": "CreditsOAMGroup_Maiden:\n #_0E9E38: dw 0, 0 : db $00, $00, $00, $02\n #_0E9E40: dw 0, 11 : db $02, $00, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Guard", + "code": "CreditsOAMGroup_Guard:\n #_0E9E48: dw 1, 4 : db $2A, $00, $00, $00\n #_0E9E50: dw 1, 12 : db $3A, $00, $00, $00\n #_0E9E58: dw 4, 0 : db $26, $00, $00, $02\n #_0E9E60: dw 0, 9 : db $24, $00, $00, $02\n #_0E9E68: dw 8, 9 : db $24, $40, $00, $02\n #_0E9E70: dw 4, 20 : db $6C, $01, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Castle\n\n.pointer_offset\n #_0E9E78: db $1E ; King\n #_0E9E79: db $20 ; Zelda\n #_0E9E7A: db $22 ; Maiden 3\n #_0E9E7B: db $22 ; Maiden 4\n #_0E9E7C: db $22 ; Maiden 2\n #_0E9E7D: db $22 ; Maiden 5\n #_0E9E7E: db $22 ; Maiden 1\n #_0E9E7F: db $22 ; Maiden 6\n #_0E9E80: db $16 ; Guard 1\n #_0E9E81: db $16 ; Guard 2\n #_0E9E82: db $16 ; Guard 3\n #_0E9E83: db $16 ; Guard 4\n\n.group_size\n #_0E9E84: db $06 ; King\n #_0E9E85: db $03 ; Zelda\n #_0E9E86: db $02 ; Maiden 3\n #_0E9E87: db $02 ; Maiden 4\n #_0E9E88: db $02 ; Maiden 2\n #_0E9E89: db $02 ; Maiden 5\n #_0E9E8A: db $02 ; Maiden 1\n #_0E9E8B: db $02 ; Maiden 6\n #_0E9E8C: db $06 ; Guard 1\n #_0E9E8D: db $06 ; Guard 2\n #_0E9E8E: db $06 ; Guard 3\n #_0E9E8F: db $06 ; Guard 4\n\n; ---------------------------------------------------------\n\n.props\n #_0E9E90: db $3B ; King\n #_0E9E91: db $31 ; Zelda\n #_0E9E92: db $3D ; Maiden 3\n #_0E9E93: db $3F ; Maiden 4\n #_0E9E94: db $39 ; Maiden 2\n #_0E9E95: db $3B ; Maiden 5\n #_0E9E96: db $37 ; Maiden 1\n #_0E9E97: db $3D ; Maiden 6\n #_0E9E98: db $39 ; Guard 1\n #_0E9E99: db $37 ; Guard 2\n #_0E9E9A: db $37 ; Guard 3\n #_0E9E9B: db $39 ; Guard 4\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Castle", + "code": "Credits_SpriteDraw_Castle:\n #_0E9E9C: PHX\n\n #_0E9E9D: LDX.b #$0B\n\n.next_royalty\n #_0E9E9F: LDA.w .props,X\n #_0E9EA2: STA.w $0F50,X\n\n #_0E9EA5: LDA.w .group_size,X\n #_0E9EA8: LDY.w .pointer_offset,X\n #_0E9EAB: JSR Credits_SpriteDraw_Single\n\n #_0E9EAE: DEX\n #_0E9EAF: CPX.b #$07\n #_0E9EB1: BNE .next_royalty\n\n; ---------------------------------------------------------\n\n.next_maiden\n #_0E9EB3: LDA.b $1A\n #_0E9EB5: ASL A\n #_0E9EB6: ASL A\n #_0E9EB7: AND.b #$40\n #_0E9EB9: ORA.w .props,X\n #_0E9EBC: STA.w $0F50,X\n\n #_0E9EBF: LDA.w .group_size,X\n #_0E9EC2: LDY.w .pointer_offset,X\n #_0E9EC5: JSR Credits_SpriteDraw_Single\n\n #_0E9EC8: DEX\n #_0E9EC9: CPX.b #$01\n #_0E9ECB: BNE .next_maiden\n\n; ---------------------------------------------------------\n\n.next_guard\n #_0E9ECD: LDA.w .props,X\n #_0E9ED0: STA.w $0F50,X\n\n #_0E9ED3: LDA.w .group_size,X\n #_0E9ED6: LDY.w .pointer_offset,X\n #_0E9ED9: JSR Credits_SpriteDraw_Single\n\n #_0E9EDC: DEX\n #_0E9EDD: BPL .next_guard\n\n; ---------------------------------------------------------\n\n #_0E9EDF: PLX\n\n #_0E9EE0: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Bully", + "code": "CreditsOAMGroup_Bully:\n #_0E9EE1: dw 0, -10 : db $4C, $08, $00, $02\n #_0E9EE9: dw 0, 0 : db $6C, $0A, $00, $02\n #_0E9EF1: dw 0, -9 : db $4C, $08, $00, $02\n #_0E9EF9: dw 0, 0 : db $A8, $0A, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Victim", + "code": "CreditsOAMGroup_Victim:\n #_0E9F01: dw 0, -7 : db $4A, $08, $00, $02\n #_0E9F09: dw 0, 0 : db $6A, $0C, $00, $02\n #_0E9F11: dw 0, -7 : db $4A, $08, $00, $02\n #_0E9F19: dw 0, 0 : db $A6, $0C, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_HeraPortal", + "code": "CreditsOAMGroup_HeraPortal:\n #_0E9F21: dw 0, 0 : db $86, $00, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Hera\n\n.group_data_index\n #_0E9F29: db $30 ; bully\n #_0E9F2A: db $32 ; victim\n\n.object_count\n #_0E9F2B: db $02 ; bully\n #_0E9F2C: db $02 ; victim\n\n; ---------------------------------------------------------\n\n.movement_control\n #_0E9F2D: db $20, $00, $00, $00\n\n; ---------------------------------------------------------\n\n.speed_x\n #_0E9F31: db 0, -12\n\n.speed_y\n #_0E9F33: db -16, -12, 0, 12\n #_0E9F37: db 16, 12, 0, -12\n\n; ---------------------------------------------------------\n\n.timer\n #_0E9F3B: db 59, 20, 30, 29\n #_0E9F3F: db 44, 43, 66, 32\n #_0E9F43: db 39, 40\n\n #_0E9F45: db 46, 56, 58, 76, 50, 68 ; This seems to be the only part of the data that's used.\n\n #_0E9F4B: db 46, 47, 30, 40, 71, 53, 50, 48\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Hera", + "code": "Credits_SpriteDraw_Hera:\n #_0E9F53: PHX\n\n #_0E9F54: LDX.b #$02\n\n #_0E9F56: LDA.b #$35\n #_0E9F58: STA.w $0F50,X\n\n #_0E9F5B: LDA.b #$01\n #_0E9F5D: LDY.b #$3C\n #_0E9F5F: JSR Credits_SpriteDraw_Single\n\n #_0E9F62: DEX\n\n; ---------------------------------------------------------\n\n.next_friend\n #_0E9F63: LDA.w $0D50,X\n #_0E9F66: DEC A\n #_0E9F67: LSR A\n\n #_0E9F68: AND.b #$40\n #_0E9F6A: EOR.b #$71\n #_0E9F6C: STA.w $0F50,X\n\n #_0E9F6F: LDA.b $1A\n #_0E9F71: LSR A\n #_0E9F72: LSR A\n #_0E9F73: LSR A\n #_0E9F74: AND.b #$01\n #_0E9F76: STA.w $0DC0,X\n\n #_0E9F79: TXA\n #_0E9F7A: ASL A\n #_0E9F7B: TAY\n\n; ---------------------------------------------------------\n\n #_0E9F7C: REP #$20\n\n #_0E9F7E: LDA.b $C8\n #_0E9F80: CMP.w .movement_control,Y\n\n #_0E9F83: SEP #$20\n #_0E9F85: BCC .dont_turn\n\n #_0E9F87: LDA.w $0DF0,X\n #_0E9F8A: BNE .dont_turn\n\n #_0E9F8C: LDY.w $0D90,X\n\n #_0E9F8F: LDA.w .timer,Y\n #_0E9F92: PHA\n\n #_0E9F93: AND.b #$F8\n #_0E9F95: STA.w $0DF0,X\n\n #_0E9F98: PLA\n #_0E9F99: AND.b #$07\n #_0E9F9B: TAY\n\n #_0E9F9C: LDA.w .speed_y,Y\n #_0E9F9F: STA.w $0D40,X\n\n #_0E9FA2: LDA.w .speed_x,Y\n #_0E9FA5: STA.w $0D50,X\n\n #_0E9FA8: INC.w $0D90,X\n\n.dont_turn\n #_0E9FAB: LDA.w .object_count,X\n #_0E9FAE: LDY.w .group_data_index,X\n #_0E9FB1: JSR Credits_SpriteDraw_Single\n #_0E9FB4: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n #_0E9FB7: JSL Sprite_Move_XY_Bank1D_long\n\n #_0E9FBB: DEX\n #_0E9FBC: BPL .next_friend\n\n; ---------------------------------------------------------\n\n #_0E9FBE: PLX\n\n #_0E9FBF: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Sahasrahla", + "code": "CreditsOAMGroup_Sahasrahla:\n #_0E9FC0: dw -4, 1 : db $68, $0C, $00, $00\n #_0E9FC8: dw 0, -8 : db $40, $0C, $00, $02\n #_0E9FD0: dw 0, 1 : db $42, $0C, $00, $02\n #_0E9FD8: dw -4, 1 : db $78, $0C, $00, $00\n #_0E9FE0: dw 0, -8 : db $40, $0C, $00, $02\n #_0E9FE8: dw 0, 1 : db $42, $0C, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_MrsSahasrahla", + "code": "CreditsOAMGroup_MrsSahasrahla:\n #_0E9FF0: dw 8, 5 : db $79, $06, $00, $00\n #_0E9FF8: dw 0, -10 : db $8E, $08, $00, $02\n #_0EA000: dw 0, 0 : db $6E, $06, $00, $02\n #_0EA008: dw 0, -10 : db $8E, $08, $00, $02\n #_0EA010: dw 0, -10 : db $8E, $08, $00, $02\n #_0EA018: dw 0, 0 : db $6E, $06, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_LittleKakBoy", + "code": "CreditsOAMGroup_LittleKakBoy:\n #_0EA020: dw 0, 0 : db $82, $08, $00, $02\n #_0EA028: dw 0, 7 : db $4E, $0A, $00, $02\n #_0EA030: dw 0, 0 : db $80, $48, $00, $02\n #_0EA038: dw 0, 7 : db $4E, $0A, $00, $02\n #_0EA040: dw 0, 0 : db $82, $08, $00, $02\n #_0EA048: dw 0, 7 : db $4E, $0A, $00, $02\n #_0EA050: dw 0, 0 : db $80, $08, $00, $02\n #_0EA058: dw 0, 7 : db $4E, $0A, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_FightingBros", + "code": "CreditsOAMGroup_FightingBros:\n #_0EA060: dw 11, -3 : db $69, $08, $00, $00\n #_0EA068: dw 0, -12 : db $04, $08, $00, $02\n #_0EA070: dw 0, 0 : db $60, $08, $00, $02\n #_0EA078: dw 10, -3 : db $67, $08, $00, $00\n #_0EA080: dw 0, -12 : db $04, $08, $00, $02\n #_0EA088: dw 0, 0 : db $60, $08, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_YoungSnitch", + "code": "CreditsOAMGroup_YoungSnitch:\n #_0EA090: dw -2, 1 : db $68, $08, $00, $00\n #_0EA098: dw 0, -8 : db $C0, $08, $00, $02\n #_0EA0A0: dw 0, 0 : db $C2, $08, $00, $02\n #_0EA0A8: dw -3, 1 : db $78, $08, $00, $00\n #_0EA0B0: dw 0, -8 : db $C0, $08, $00, $02\n #_0EA0B8: dw 0, 0 : db $C2, $08, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SwagDuck", + "code": "CreditsOAMGroup_SwagDuck:\n #_0EA0C0: dw 0, 0 : db $0E, $00, $00, $02\n #_0EA0C8: dw 0, 64 : db $6C, $00, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Kakariko1\n\n.kid_head_shake_timer\n #_0EA0D0: db 48, 16\n\n; ---------------------------------------------------------\n\n.group_pointer_index\n #_0EA0D2: db $28 ; Sahasrahla\n #_0EA0D3: db $2A ; Mrs. Sahasrahla\n #_0EA0D4: db $2C ; Angry Bro left\n #_0EA0D5: db $2E ; Young Snitch\n #_0EA0D6: db $2C ; Angry Bro right\n\n.object_count\n #_0EA0D7: db $03 ; Sahasrahla\n #_0EA0D8: db $03 ; Mrs. Sahasrahla\n #_0EA0D9: db $03 ; Angry Bro left\n #_0EA0DA: db $03 ; Young Snitch\n #_0EA0DB: db $03 ; Angry Bro right\n #_0EA0DC: db $02 ; unused\n #_0EA0DD: db $02 ; unused\n\n; ---------------------------------------------------------\n\n.duck_flap\n #_0EA0DE: db $20, $40\n\n.duck_flip\n #_0EA0E0: db $10, $F0\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Kakariko1", + "code": "Credits_SpriteDraw_Kakariko1:\n #_0EA0E2: PHX\n\n #_0EA0E3: LDX.b #$06\n\n #_0EA0E5: LDA.l $00001A\n #_0EA0E9: LSR A\n #_0EA0EA: LSR A\n #_0EA0EB: AND.b #$01\n #_0EA0ED: TAY\n\n #_0EA0EE: LDA.w .duck_flap,Y\n #_0EA0F1: STA.w $0AF4\n\n; ---------------------------------------------------------\n\n #_0EA0F4: LDA.w $0D50,X\n #_0EA0F7: ROL A\n #_0EA0F8: ROL A\n #_0EA0F9: AND.b #$01\n #_0EA0FB: TAY\n\n #_0EA0FC: LDA.w $0D50,X\n #_0EA0FF: CLC\n #_0EA100: ADC.w .duck_flip,Y\n\n #_0EA103: LSR A\n #_0EA104: AND.b #$40\n #_0EA106: ORA.b #$32\n #_0EA108: STA.w $0F50,X\n\n #_0EA10B: LDA.b #$02\n #_0EA10D: LDY.b #$24\n #_0EA10F: JSR Credits_SpriteDraw_Single\n #_0EA112: JSR Credits_SpriteDraw_CirclingBirds\n\n #_0EA115: DEX\n\n; ---------------------------------------------------------\n\n #_0EA116: LDA.b #$31\n #_0EA118: STA.w $0F50,X\n\n #_0EA11B: LDA.w $0DF0,X\n #_0EA11E: BNE .delay_head_shake\n\n #_0EA120: LDA.w $0D90,X\n #_0EA123: TAY\n #_0EA124: EOR.b #$01\n #_0EA126: STA.w $0D90,X\n\n #_0EA129: LDA.w .kid_head_shake_timer,Y\n #_0EA12C: STA.w $0DF0,X\n\n #_0EA12F: LDA.w $0DC0,X\n #_0EA132: INC A\n #_0EA133: AND.b #$03\n #_0EA135: STA.w $0DC0,X\n\n.delay_head_shake\n #_0EA138: LDY.b #$26\n #_0EA13A: LDA.b #$02\n #_0EA13C: JSR Credits_SpriteDraw_Single\n\n #_0EA13F: DEX\n\n; ---------------------------------------------------------\n\n.next_waving_sprite\n #_0EA140: LDA.b $1A\n #_0EA142: AND.b #$0F\n #_0EA144: BNE .dont_flip_wave\n\n #_0EA146: LDA.w $0DC0,X\n #_0EA149: EOR.b #$01\n #_0EA14B: STA.w $0DC0,X\n\n.dont_flip_wave\n #_0EA14E: LDA.b #$31\n #_0EA150: STA.w $0F50,X\n\n #_0EA153: LDY.w .group_pointer_index,X\n #_0EA156: LDA.w .object_count,X\n #_0EA159: JSR Credits_SpriteDraw_Single\n #_0EA15C: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n #_0EA15F: DEX\n #_0EA160: BPL .next_waving_sprite\n\n; ---------------------------------------------------------\n\n #_0EA162: PLX\n\n #_0EA163: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Uncle", + "code": "CreditsOAMGroup_Uncle:\n #_0EA164: dw 10, 8 : db $32, $8A, $00, $00\n #_0EA16C: dw 10, 16 : db $22, $8A, $00, $00\n #_0EA174: dw 0, -10 : db $00, $08, $00, $02\n #_0EA17C: dw 0, 0 : db $2C, $08, $00, $02\n #_0EA184: dw 10, -14 : db $22, $0A, $00, $00\n #_0EA18C: dw 10, -6 : db $32, $0A, $00, $00\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_LinkBrandishing", + "code": "CreditsOAMGroup_LinkBrandishing:\n #_0EA194: dw 0, -10 : db $2A, $08, $00, $02\n #_0EA19C: dw 0, 0 : db $28, $08, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_LinkAtHouse", + "code": "CreditsOAMGroup_LinkAtHouse:\n #_0EA1A4: dw 10, 16 : db $05, $8A, $00, $00\n #_0EA1AC: dw 10, 8 : db $15, $8A, $00, $00\n #_0EA1B4: dw -4, 2 : db $07, $0A, $00, $02\n #_0EA1BC: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA1C4: dw 0, 1 : db $02, $0E, $00, $02\n #_0EA1CC: dw 10, -20 : db $05, $0A, $00, $00\n #_0EA1D4: dw 10, -12 : db $15, $0A, $00, $00\n #_0EA1DC: dw -7, 1 : db $07, $4A, $00, $02\n #_0EA1E4: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA1EC: dw 0, 1 : db $02, $0E, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_PedestalLink", + "code": "CreditsOAMGroup_PedestalLink:\n #_0EA1F4: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA1FC: dw 0, 1 : db $02, $4E, $00, $02\n #_0EA204: dw 0, -8 : db $00, $0E, $00, $02\n #_0EA20C: dw 0, 1 : db $02, $0E, $00, $02\n #_0EA214: dw 0, -9 : db $00, $0E, $00, $02\n #_0EA21C: dw 0, 1 : db $02, $0E, $00, $02\n #_0EA224: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA22C: dw 0, 1 : db $02, $0E, $00, $02\n #_0EA234: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA23C: dw 0, 1 : db $02, $4E, $00, $02\n #_0EA244: dw 0, -8 : db $00, $0E, $00, $02\n #_0EA24C: dw 0, 1 : db $02, $4E, $00, $02\n #_0EA254: dw 0, -9 : db $00, $0E, $00, $02\n #_0EA25C: dw 0, 1 : db $02, $4E, $00, $02\n #_0EA264: dw 0, -7 : db $00, $0E, $00, $02\n #_0EA26C: dw 0, 1 : db $02, $4E, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_House\n\n.link_gfx\n #_0EA274: db $00 ; Link standing\n #_0EA275: db $04 ; Link brandishing\n\n.link_pose\n #_0EA276: dw $000A ; Link standing\n #_0EA278: dw $0224 ; Link brandishing\n\n.group_data_index\n #_0EA27A: db $0A ; Link standing\n #_0EA27B: db $0E ; Link brandishing\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_House", + "code": "Credits_SpriteDraw_House:\n #_0EA27C: PHX\n\n #_0EA27D: REP #$20\n\n #_0EA27F: LDA.b $C8\n #_0EA281: CMP.w #$0200\n #_0EA284: BNE .not_slash_sfx\n\n #_0EA286: LDY.b #$01 ; SFX2.01\n #_0EA288: BRA .set_sfx\n\n.not_slash_sfx\n #_0EA28A: CMP.w #$0208\n #_0EA28D: BNE .no_sfx_at_all\n\n #_0EA28F: LDY.b #$2C ; SFX2.2C\n\n.set_sfx\n #_0EA291: STY.w $012E\n\n; ---------------------------------------------------------\n\n.no_sfx_at_all\n #_0EA294: SEC\n #_0EA295: SBC.w #$0208\n #_0EA298: CMP.w #$0030\n\n #_0EA29B: SEP #$20\n #_0EA29D: BCS .delay_sparkle\n\n #_0EA29F: LDY.b #$02\n #_0EA2A1: JSR Credits_SpriteDraw_AddSparkle\n\n.delay_sparkle\n #_0EA2A4: LDX.b #$03\n\n #_0EA2A6: REP #$20\n\n #_0EA2A8: LDA.b $C8\n #_0EA2AA: CMP.w #$0200\n\n #_0EA2AD: SEP #$20\n #_0EA2AF: BCC .delay_brandish\n\n #_0EA2B1: LDA.b #$01\n #_0EA2B3: STA.w $0DC0,X\n\n.delay_brandish\n #_0EA2B6: LDA.b #$31\n #_0EA2B8: STA.w $0F50,X\n\n #_0EA2BB: LDA.b #$04\n #_0EA2BD: LDY.b #$08\n #_0EA2BF: JSR Credits_SpriteDraw_Single\n #_0EA2C2: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n; ---------------------------------------------------------\n\n #_0EA2C5: LDA.w $0DC0,X\n #_0EA2C8: DEX\n #_0EA2C9: STA.w $0DC0,X\n\n #_0EA2CC: TAY\n\n #_0EA2CD: STZ.w $0107\n\n #_0EA2D0: LDA.w .link_gfx,Y\n #_0EA2D3: STA.w $0108\n\n #_0EA2D6: LDA.b #$30\n #_0EA2D8: STA.w $0F50,X\n\n; ---------------------------------------------------------\n\n #_0EA2DB: PHY\n\n #_0EA2DC: TYA\n #_0EA2DD: ASL A\n #_0EA2DE: TAY\n\n #_0EA2DF: REP #$20\n\n #_0EA2E1: LDA.w .link_pose,Y\n #_0EA2E4: STA.w $0100\n\n #_0EA2E7: SEP #$20\n\n #_0EA2E9: PLY\n\n #_0EA2EA: LDA.w .group_data_index,Y\n #_0EA2ED: TAY\n\n #_0EA2EE: LDA.b #$05\n #_0EA2F0: JSR Credits_SpriteDraw_Single\n #_0EA2F3: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n #_0EA2F6: PLX\n\n #_0EA2F7: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_OldMan", + "code": "CreditsOAMGroup_OldMan:\n #_0EA2F8: dw -18, -24 : db $A4, $39, $00, $02\n #_0EA300: dw -16, -16 : db $A8, $39, $00, $02\n #_0EA308: dw -18, -24 : db $A4, $39, $00, $02\n #_0EA310: dw -18, -24 : db $A4, $39, $00, $02\n #_0EA318: dw -16, -16 : db $A6, $39, $00, $02\n #_0EA320: dw -18, -24 : db $A4, $39, $00, $02\n #_0EA328: dw -6, -17 : db $2D, $39, $00, $00\n #_0EA330: dw -16, -24 : db $A0, $39, $00, $02\n #_0EA338: dw -16, -16 : db $AA, $39, $00, $02\n #_0EA340: dw -5, -17 : db $2C, $39, $00, $00\n #_0EA348: dw -16, -24 : db $A0, $39, $00, $02\n #_0EA350: dw -16, -16 : db $AA, $39, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_DeathMountain", + "code": "Credits_SpriteDraw_DeathMountain:\n #_0EA358: PHX\n\n #_0EA359: LDX.b #$00\n\n #_0EA35B: REP #$20\n\n #_0EA35D: LDA.b $C8\n #_0EA35F: CMP.w #$0200\n\n #_0EA362: SEP #$20\n #_0EA364: BNE .dont_move_yet\n\n #_0EA366: LDA.b #$FC\n #_0EA368: STA.w $0D50,X\n\n.dont_move_yet\n #_0EA36B: LDA.b $1A\n #_0EA36D: AND.b #$10\n #_0EA36F: LSR A\n #_0EA370: LSR A\n #_0EA371: LSR A\n #_0EA372: LSR A\n #_0EA373: STA.w $0DC0,X\n\n #_0EA376: LDA.w $0D10,X\n #_0EA379: CMP.b #$38\n #_0EA37B: BNE .not_at_max\n\n #_0EA37D: STZ.w $0D50,X\n\n #_0EA380: INC.w $0DC0,X\n #_0EA383: INC.w $0DC0,X\n\n.not_at_max\n #_0EA386: LDA.b #$03\n #_0EA388: LDY.b #$34\n #_0EA38A: JSR Credits_SpriteDraw_Single\n\n #_0EA38D: JSL Sprite_Move_XY_Bank1D_long\n\n #_0EA391: PLX\n #_0EA392: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Lumberjacks", + "code": "Credits_SpriteDraw_Lumberjacks:\n #_0EA393: PHX\n\n #_0EA394: LDX.b #$00\n\n #_0EA396: LDA.b #$2C ; SPRITE 2C\n #_0EA398: STA.w $0E20,X\n\n #_0EA39B: LDA.b #$2C\n #_0EA39D: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_0EA3A1: LDA.b #$3B\n #_0EA3A3: STA.w $0F50,X\n\n #_0EA3A6: JSL Sprite_Get16BitCoords_long\n\n #_0EA3AA: LDA.b #$02\n\n; ---------------------------------------------------------\n\n #_0EA3AC: REP #$10\n\n #_0EA3AE: LDY.b $C8\n #_0EA3B0: CPY.w #$01C0\n\n #_0EA3B3: SEP #$10\n #_0EA3B5: BCS .not_facing_camera\n\n #_0EA3B7: TYA\n #_0EA3B8: AND.b #$20\n #_0EA3BA: ASL A\n #_0EA3BB: ASL A\n #_0EA3BC: ASL A\n #_0EA3BD: ROL A\n\n.not_facing_camera\n #_0EA3BE: STA.w $0DC0,X\n\n #_0EA3C1: JSL SpriteModule_Active_long\n\n #_0EA3C5: PLX\n\n #_0EA3C6: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Venus", + "code": "Credits_SpriteDraw_Venus:\n #_0EA3C7: PHX\n\n #_0EA3C8: LDX.b #$05\n #_0EA3CA: JSL Sprite_Get16BitCoords_long\n\n #_0EA3CE: LDA.w $0F00,X\n #_0EA3D1: BNE .skip_sparkles\n\n; ---------------------------------------------------------\n\n #_0EA3D3: JSL GetRandomNumber\n #_0EA3D7: AND.b #$07\n #_0EA3D9: TAX\n\n #_0EA3DA: LDA.l FairyPond_offset_x,X\n #_0EA3DE: CLC\n #_0EA3DF: ADC.w $0FD8\n #_0EA3E2: PHA\n\n #_0EA3E3: JSL GetRandomNumber\n #_0EA3E7: AND.b #$07\n #_0EA3E9: TAX\n\n #_0EA3EA: LDA.l FairyPond_offset_y,X\n #_0EA3EE: CLC\n #_0EA3EF: ADC.w $0FDA\n\n #_0EA3F2: PLX\n\n #_0EA3F3: LDY.b #$03\n #_0EA3F5: JSR Credits_SpriteDraw_AddSparkle\n\n; ---------------------------------------------------------\n\n.skip_sparkles\n #_0EA3F8: LDX.b #$03\n\n.next_fairy\n #_0EA3FA: LDA.w $0E00,X\n #_0EA3FD: BEQ .fairy_delay\n\n #_0EA3FF: DEC.w $0E00,X\n\n.fairy_delay\n #_0EA402: LDA.b #$E3 ; SPRITE E3\n #_0EA404: STA.w $0E20,X\n\n #_0EA407: LDA.b #$01\n #_0EA409: JSR Credits_SpriteDraw_SetShadowProp\n #_0EA40C: JSR Credits_SpriteDraw_ActivateAndRunSprite_allocate8\n\n #_0EA40F: INX\n #_0EA410: CPX.b #$05\n #_0EA412: BNE .next_fairy\n\n; ---------------------------------------------------------\n\n #_0EA414: LDA.b #$72 ; SPRITE 72\n #_0EA416: STA.w $0E20,X\n\n #_0EA419: LDA.b #$3B\n #_0EA41B: STA.w $0F50,X\n\n #_0EA41E: LDA.b #$09\n #_0EA420: STA.w $0DD0,X\n #_0EA423: STA.w $0DA0,X\n\n #_0EA426: LDA.b #$30\n #_0EA428: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n #_0EA42B: PLX\n\n #_0EA42C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_RunningKid", + "code": "CreditsOAMGroup_RunningKid:\n #_0EA42D: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA435: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA43D: dw 0, 0 : db $CA, $4F, $00, $02\n #_0EA445: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA44D: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA455: dw 0, 0 : db $CA, $0F, $00, $02\n #_0EA45D: dw -2, 0 : db $77, $0F, $00, $00\n #_0EA465: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA46D: dw 0, 0 : db $CA, $4F, $00, $02\n #_0EA475: dw -3, 0 : db $66, $0F, $00, $00\n #_0EA47D: dw 0, -8 : db $2A, $07, $00, $02\n #_0EA485: dw 0, 0 : db $CA, $4F, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SickKid", + "code": "CreditsOAMGroup_SickKid:\n #_0EA48D: dw 14, -7 : db $48, $0D, $00, $02\n #_0EA495: dw 0, -6 : db $44, $09, $00, $02\n #_0EA49D: dw 0, 0 : db $4E, $09, $00, $02\n #_0EA4A5: dw 13, -14 : db $48, $0D, $00, $02\n #_0EA4AD: dw 0, -8 : db $44, $09, $00, $02\n #_0EA4B5: dw 0, 0 : db $46, $09, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SickParents", + "code": "CreditsOAMGroup_SickParents:\n #_0EA4BD: dw -2, -16 : db $78, $3D, $00, $00\n #_0EA4C5: dw 0, -24 : db $24, $3D, $00, $02\n #_0EA4CD: dw 0, -16 : db $C2, $3D, $00, $02\n #_0EA4D5: dw 61, -16 : db $77, $37, $00, $00\n #_0EA4DD: dw 64, -24 : db $C4, $37, $00, $02\n #_0EA4E5: dw 64, -16 : db $CA, $77, $00, $02\n #_0EA4ED: dw 0, -6 : db $6C, $32, $00, $02\n #_0EA4F5: dw 64, -6 : db $6C, $32, $00, $02\n #_0EA4FD: dw -2, -16 : db $68, $3D, $00, $00\n #_0EA505: dw 0, -24 : db $24, $3D, $00, $02\n #_0EA50D: dw 0, -16 : db $C2, $3D, $00, $02\n #_0EA515: dw 61, -16 : db $66, $37, $00, $00\n #_0EA51D: dw 64, -24 : db $C4, $37, $00, $02\n #_0EA525: dw 64, -16 : db $CA, $77, $00, $02\n #_0EA52D: dw 0, -6 : db $6C, $32, $00, $02\n #_0EA535: dw 64, -6 : db $6C, $32, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Kakariko2\n\n.object_count\n #_0EA53D: db $03\n #_0EA53E: db $03\n #_0EA53F: db $08\n\n.sick_kid_height\n #_0EA540: db $02, $04, $05, $06, $06, $07, $07, $07\n #_0EA548: db $07, $06, $06, $05, $04, $02, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Kakariko2", + "code": "Credits_SpriteDraw_Kakariko2:\n #_0EA54F: PHX\n\n #_0EA550: LDX.b #$06\n\n #_0EA552: LDA.b $1A\n #_0EA554: AND.b #$01\n #_0EA556: STA.w $0DC0,X\n #_0EA559: BNE .dont_move_bee\n\n #_0EA55B: LDA.b #$01\n\n #_0EA55D: LDY.w $0D10,X\n #_0EA560: CPY.b #$80\n #_0EA562: BMI .move_right\n\n #_0EA564: LDA.b #$FF\n\n.move_right\n #_0EA566: CLC\n #_0EA567: ADC.w $0D50,X\n #_0EA56A: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n #_0EA56D: LDA.b #$01\n\n #_0EA56F: LDY.w $0D00,X\n #_0EA572: CPY.b #$B0\n #_0EA574: BMI .move_down\n\n #_0EA576: LDA.b #$FF\n\n.move_down\n #_0EA578: CLC\n #_0EA579: ADC.w $0D40,X\n #_0EA57C: STA.w $0D40,X\n\n #_0EA57F: JSL Sprite_Move_XY_Bank1D_long\n\n; ---------------------------------------------------------\n\n.dont_move_bee\n #_0EA583: LDA.w $0D50,X\n #_0EA586: LSR A\n #_0EA587: AND.b #$40\n #_0EA589: EOR.b #$7E\n #_0EA58B: STA.w $0F50,X\n\n #_0EA58E: LDA.b #$01\n #_0EA590: STA.w $0E40,X\n\n #_0EA593: LDA.b #$30\n #_0EA595: STA.w $0E60,X\n\n #_0EA598: LDA.b #$10\n #_0EA59A: STA.w $0F70,X\n\n #_0EA59D: JSR Credits_SpriteDraw_PreexistingSpriteDraw_eight\n\n #_0EA5A0: DEX\n\n #_0EA5A1: LDA.b #$37\n #_0EA5A3: STA.w $0F50,X\n\n #_0EA5A6: LDA.b #$02\n #_0EA5A8: JSR Credits_SpriteDraw_SetShadowProp\n\n; ---------------------------------------------------------\n\n #_0EA5AB: LDA.b #$0C\n #_0EA5AD: JSR Credits_SpriteDraw_ActivateAndRunSprite\n\n #_0EA5B0: DEX\n\n #_0EA5B1: JSR Credits_SpriteDraw_ActivateAndRunSprite_allocate8\n\n #_0EA5B4: DEX\n\n #_0EA5B5: JSR Credits_SpriteDraw_ActivateAndRunSprite_allocate8\n\n #_0EA5B8: DEX\n\n; ---------------------------------------------------------\n\n.next\n #_0EA5B9: TXA\n #_0EA5BA: ASL A\n #_0EA5BB: TAY\n\n #_0EA5BC: LDA.w .object_count,X\n #_0EA5BF: JSR Credits_SpriteDraw_Single\n\n #_0EA5C2: TXA\n #_0EA5C3: BNE .not_running_kid_wave\n\n #_0EA5C5: JSR Credits_SpriteDraw_AnimateRunningKidAndLocksmith\n\n #_0EA5C8: BRA .to_next\n\n; ---------------------------------------------------------\n\n.not_running_kid_wave\n #_0EA5CA: LSR A\n #_0EA5CB: BEQ .skip_parents_waving\n\n #_0EA5CD: LDA.b $1A\n #_0EA5CF: LSR A\n #_0EA5D0: LSR A\n #_0EA5D1: LSR A\n #_0EA5D2: AND.b #$01\n #_0EA5D4: STA.w $0DC0,X\n\n #_0EA5D7: BRA .to_next\n\n; ---------------------------------------------------------\n\n.skip_parents_waving\n #_0EA5D9: LDY.b #$00\n\n #_0EA5DB: LDA.b $1A\n #_0EA5DD: AND.b #$1F\n #_0EA5DF: CMP.b #$0F\n #_0EA5E1: BCS .dont_adjust_jump\n\n #_0EA5E3: TAY\n\n #_0EA5E4: LDA.w .sick_kid_height,Y\n #_0EA5E7: STA.w $0F70,X\n\n #_0EA5EA: LDY.b #$01\n\n.dont_adjust_jump\n #_0EA5EC: TYA\n #_0EA5ED: STA.w $0DC0,X\n\n #_0EA5F0: JSR Credits_SpriteDraw_DrawShadow_high_prioritize\n\n; ---------------------------------------------------------\n\n.to_next\n #_0EA5F3: DEX\n #_0EA5F4: BPL .next\n\n; ---------------------------------------------------------\n\n #_0EA5F6: PLX\n\n #_0EA5F7: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_DrawShadow", + "code": "Credits_SpriteDraw_DrawShadow:\n.high_prioritize\n #_0EA5F8: LDA.b #$30\n\n; =========================================================\n\n.parameterized_priority\n #_0EA5FA: STA.w $0F50,X\n\n; =========================================================\n\n.priority_set\n #_0EA5FD: LDA.b #$00\n #_0EA5FF: JSR Credits_SpriteDraw_SetShadowProp\n\n #_0EA602: LDA.b #$04\n #_0EA604: JSL SpriteDraw_AllocateOAMFromRegionA\n #_0EA608: JSL SpriteDraw_Shadow_long\n\n #_0EA60C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_AnimateRunningKidAndLocksmith", + "code": "Credits_SpriteDraw_AnimateRunningKidAndLocksmith:\n #_0EA643: LDA.b #$30\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_AnimateLostWoodsThief", + "code": "Credits_SpriteDraw_AnimateLostWoodsThief:\n #_0EA645: JSR Credits_SpriteDraw_DrawShadow_parameterized_priority\n\n #_0EA648: LDY.w $0D90,X\n\n #_0EA64B: LDA.w $0DF0,X\n #_0EA64E: BNE .delay\n\n #_0EA650: INY\n #_0EA651: CPY.b #$08\n #_0EA653: BNE .dont_step_back_to_06\n\n #_0EA655: LDY.b #$06\n\n.dont_step_back_to_06\n #_0EA657: CPY.b #$16\n #_0EA659: BNE .dont_step_back_to_15\n\n #_0EA65B: LDY.b #$15\n\n.dont_step_back_to_15\n #_0EA65D: CPY.b #$1C\n #_0EA65F: BNE .dont_step_back_to_1B\n\n #_0EA661: LDY.b #$1B\n\n.dont_step_back_to_1B\n #_0EA663: TYA\n #_0EA664: STA.w $0D90,X\n\n #_0EA667: LDA.w .timer-1,Y\n #_0EA66A: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.delay\n #_0EA66D: LDA.w .pose-1,Y\n #_0EA670: BPL .not_frame_based\n\n #_0EA672: LDA.b $1A\n #_0EA674: AND.b #$08\n #_0EA676: LSR A\n #_0EA677: LSR A\n #_0EA678: LSR A\n\n.not_frame_based\n #_0EA679: STA.w $0DC0,X\n\n #_0EA67C: CPY.b #$05\n #_0EA67E: BCC .frame_rule_y_coord\n\n #_0EA680: CPY.b #$0A\n #_0EA682: BCC .exit\n\n #_0EA684: CPY.b #$0F\n #_0EA686: BCS .exit\n\n.frame_rule_y_coord\n #_0EA688: LDA.b $1A\n #_0EA68A: AND.b #$01\n #_0EA68C: BNE .exit\n\n #_0EA68E: INC.w $0D00,X\n\n.exit\n #_0EA691: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_ActivateAndRunSprite_allocate8", + "code": "Credits_SpriteDraw_ActivateAndRunSprite_allocate8:\n #_0EA692: LDA.b #$08\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_ActivateAndRunSprite", + "code": "Credits_SpriteDraw_ActivateAndRunSprite:\n #_0EA694: STX.w $0FA0\n\n #_0EA697: JSL SpriteDraw_AllocateOAMFromRegionA\n #_0EA69B: JSL Sprite_Get16BitCoords_long\n\n #_0EA69F: LDA.b $11\n #_0EA6A1: PHA\n\n #_0EA6A2: STZ.b $11\n\n #_0EA6A4: LDA.b #$09\n #_0EA6A6: STA.w $0DD0,X\n\n #_0EA6A9: JSL SpriteModule_Active_long\n\n #_0EA6AD: PLA\n #_0EA6AE: STA.b $11\n\n #_0EA6B0: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_PreexistingSpriteDraw_eight", + "code": "Credits_SpriteDraw_PreexistingSpriteDraw_eight:\n #_0EA6B1: LDA.b #$08\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_PreexistingSpriteDraw", + "code": "Credits_SpriteDraw_PreexistingSpriteDraw:\n #_0EA6B3: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_0EA6B7: STX.w $0FA0\n\n #_0EA6BA: JSL Sprite_Get16BitCoords_long\n #_0EA6BE: JSL SpriteModule_Active_long\n\n #_0EA6C2: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Single", + "code": "Credits_SpriteDraw_Single:\n #_0EA703: PHA\n #_0EA704: PHY\n #_0EA705: PHA\n\n #_0EA706: ASL A\n #_0EA707: ASL A\n\n #_0EA708: JSL SpriteDraw_AllocateOAMFromRegionA\n #_0EA70C: JSL Sprite_Get16BitCoords_long\n\n #_0EA710: PLA\n #_0EA711: STA.w WRMPYA\n\n #_0EA714: LDA.b #$08\n #_0EA716: STA.w WRMPYB\n\n #_0EA719: NOP\n #_0EA71A: NOP\n #_0EA71B: NOP\n #_0EA71C: NOP\n\n #_0EA71D: LDA.w RDMPY\n #_0EA720: STA.w WRMPYA\n\n #_0EA723: LDA.w $0DC0,X\n #_0EA726: STA.w WRMPYB\n\n #_0EA729: REP #$20\n\n #_0EA72B: PLY\n #_0EA72C: LDA.w .group_pointers,Y\n\n #_0EA72F: CLC\n #_0EA730: ADC.w RDMPY\n #_0EA733: STA.b $08\n\n #_0EA735: SEP #$20\n\n #_0EA737: PLA\n #_0EA738: JSL SpriteDraw_Tabulated\n\n #_0EA73C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Zora", + "code": "Credits_SpriteDraw_Zora:\n #_0EA74C: PHX\n\n #_0EA74D: TXA\n #_0EA74E: LSR A\n #_0EA74F: TAX\n\n #_0EA750: LDA.w Credits_SpriteData_sprite_count,X\n #_0EA753: TAX\n\n; ---------------------------------------------------------\n\n.next_sprite\n #_0EA754: STX.w $0FA0\n\n #_0EA757: LDA.w .sprite_id,X\n #_0EA75A: STA.w $0E20,X\n\n #_0EA75D: LDA.w .object_allocation,X\n #_0EA760: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_0EA764: LDA.w .sprite_ai,X\n #_0EA767: STA.w $0D80,X\n\n #_0EA76A: TXY\n\n #_0EA76B: REP #$20\n\n #_0EA76D: LDA.b $C8\n #_0EA76F: CMP.w #$026F\n #_0EA772: BNE .skip_sfx\n\n #_0EA774: PHY\n\n #_0EA775: LDY.b #$21 ; SFX3.21\n #_0EA777: STY.w $012F\n\n #_0EA77A: PLY\n\n.skip_sfx\n #_0EA77B: SEP #$20\n #_0EA77D: BCC .closed_mouth\n\n #_0EA77F: INY\n #_0EA780: INY\n #_0EA781: INY\n\n.closed_mouth\n #_0EA782: LDA.w .pose,Y\n #_0EA785: STA.w $0DC0,X\n\n #_0EA788: LDA.b #$33\n #_0EA78A: STA.w $0F50,X\n\n #_0EA78D: JSL Sprite_Get16BitCoords_long\n #_0EA791: JSL SpriteModule_Active_long\n\n #_0EA795: DEX\n #_0EA796: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_0EA798: PLX\n\n #_0EA799: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SmithyBowing", + "code": "CreditsOAMGroup_SmithyBowing:\n #_0EA79A: dw 0, 0 : db $22, $00, $00, $02\n #_0EA7A2: dw 48, 0 : db $64, $00, $00, $02\n #_0EA7AA: dw 0, 10 : db $6C, $01, $00, $02\n #_0EA7B2: dw 48, 10 : db $6C, $01, $00, $02\n #_0EA7BA: dw 0, 0 : db $64, $00, $00, $02\n #_0EA7C2: dw 48, 0 : db $22, $00, $00, $02\n #_0EA7CA: dw 0, 10 : db $6C, $01, $00, $02\n #_0EA7D2: dw 48, 10 : db $6C, $01, $00, $02\n #_0EA7DA: dw 0, 0 : db $64, $00, $00, $02\n #_0EA7E2: dw 48, 0 : db $64, $00, $00, $02\n #_0EA7EA: dw 0, 10 : db $6C, $01, $00, $02\n #_0EA7F2: dw 48, 10 : db $6C, $01, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SmithHammer", + "code": "CreditsOAMGroup_SmithHammer:\n #_0EA7FA: dw 0, 0 : db $60, $80, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Smithy", + "code": "Credits_SpriteDraw_Smithy:\n #_0EA802: PHX\n\n #_0EA803: LDX.b #$00\n\n #_0EA805: REP #$20\n\n #_0EA807: LDA.b $C8\n #_0EA809: CMP.w #$0170\n\n #_0EA80C: SEP #$20\n #_0EA80E: BCC .animate_smiths_hammering\n\n; ---------------------------------------------------------\n\n #_0EA810: LDX.b #$04\n\n.draw_next\n #_0EA812: LDA.b #$01\n #_0EA814: LDY.b #$3E\n #_0EA816: JSR Credits_SpriteDraw_Single\n\n #_0EA819: INX\n #_0EA81A: CPX.b #$06\n #_0EA81C: BNE .draw_next\n\n; ---------------------------------------------------------\n\n #_0EA81E: LDX.b #$00\n\n #_0EA820: LDA.b #$39\n #_0EA822: STA.w $0F50,X\n\n; ---------------------------------------------------------\n\n #_0EA825: REP #$20\n\n #_0EA827: LDA.b $C8\n #_0EA829: CMP.w #$01C0\n\n #_0EA82C: SEP #$20\n #_0EA82E: BCS .check_bow_timer\n\n #_0EA830: LDA.b #$02\n #_0EA832: BRA .set_bow_pose\n\n.check_bow_timer\n #_0EA834: LDA.w $0DF0,X\n #_0EA837: BNE .delay_bow\n\n #_0EA839: LDA.b #$20\n #_0EA83B: STA.w $0DF0,X\n\n #_0EA83E: LDA.w $0DC0,X\n #_0EA841: EOR.b #$01\n #_0EA843: AND.b #$01\n\n.set_bow_pose\n #_0EA845: STA.w $0DC0,X\n\n; ---------------------------------------------------------\n\n.delay_bow\n #_0EA848: LDA.b #$04\n #_0EA84A: LDY.b #$06\n #_0EA84C: JSR Credits_SpriteDraw_Single\n\n #_0EA84F: PLX\n\n #_0EA850: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SmithSpark", + "code": "CreditsOAMGroup_SmithSpark:\n #_0EA888: dw 0, -4 : db $AA, $30, $00, $02\n #_0EA890: dw 0, -4 : db $AA, $30, $00, $02\n #_0EA898: dw -4, -8 : db $90, $30, $00, $00\n #_0EA8A0: dw 12, -8 : db $90, $70, $00, $00\n #_0EA8A8: dw -6, -10 : db $91, $30, $00, $00\n #_0EA8B0: dw 14, -10 : db $91, $70, $00, $00\n\n; =========================================================\n\npool Credits_SpriteDraw_DrawSmithSpark\n\n.anim_step\n #_0EA8B8: db $01, $01, $02, $02\n #_0EA8BC: db $01, $01, $01, $01\n #_0EA8C0: db $02, $02, $02, $02\n #_0EA8C4: db $00, $00, $00, $00\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_DrawSmithSpark", + "code": "Credits_SpriteDraw_DrawSmithSpark:\n #_0EA8C8: PHX\n\n #_0EA8C9: INX\n #_0EA8CA: INX\n\n #_0EA8CB: LDA.w $0DF0,X\n #_0EA8CE: BEQ .no_draw\n\n #_0EA8D0: TAY\n\n #_0EA8D1: LDA.b #$02\n #_0EA8D3: STA.w $0F50,X\n\n #_0EA8D6: LDA.w .anim_step,Y\n #_0EA8D9: STA.w $0DC0,X\n\n #_0EA8DC: LDA.b #$02\n #_0EA8DE: LDY.b #$36\n #_0EA8E0: JSR Credits_SpriteDraw_Single\n\n.no_draw\n #_0EA8E3: PLX\n\n #_0EA8E4: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_DesertThief", + "code": "CreditsOAMGroup_DesertThief:\n #_0EA8E5: dw 0, 0 : db $22, $07, $00, $02\n #_0EA8ED: dw 0, -8 : db $C2, $09, $00, $02\n #_0EA8F5: dw 0, 0 : db $22, $47, $00, $02\n #_0EA8FD: dw 0, -8 : db $C2, $09, $00, $02\n #_0EA905: dw 0, -9 : db $C4, $09, $00, $02\n #_0EA90D: dw 0, 0 : db $22, $07, $00, $02\n #_0EA915: dw 0, -9 : db $24, $09, $00, $02\n #_0EA91D: dw 0, 0 : db $22, $07, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_DesertChests", + "code": "CreditsOAMGroup_DesertChests:\n #_0EA925: dw -16, -12 : db $08, $3F, $00, $02\n #_0EA92D: dw 0, -12 : db $20, $3F, $00, $02\n #_0EA935: dw 16, -12 : db $20, $3F, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Desert\n\n.vulture_pose\n #_0EA93D: db $01, $02, $03, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Desert", + "code": "Credits_SpriteDraw_Desert:\n #_0EA941: PHX\n\n #_0EA942: LDX.b #$00\n\n.next_sprite\n #_0EA944: CPX.b #$02\n #_0EA946: BCS .is_chest\n\n; ---------------------------------------------------------\n\n.is_vulture\n #_0EA948: LDA.b #$01 ; SPRITE 01\n #_0EA94A: STA.w $0E20,X\n\n #_0EA94D: LDA.b #$0B\n #_0EA94F: STA.w $0F50,X\n\n #_0EA952: LDA.b #$02\n #_0EA954: JSR Credits_SpriteDraw_SetShadowProp\n\n #_0EA957: LDA.b #$30\n #_0EA959: STA.w $0F70,X\n\n #_0EA95C: LDA.b $1A\n #_0EA95E: CLC\n\n.this\n #_0EA95F: ADC.w .this,X ; this is correct and dumb\n #_0EA962: LSR A\n #_0EA963: LSR A\n #_0EA964: AND.b #$03\n #_0EA966: TAY\n\n #_0EA967: LDA.w .vulture_pose,Y\n #_0EA96A: STA.w $0DC0,X\n\n #_0EA96D: JSR Credits_SpriteDraw_CirclingBirds\n\n #_0EA970: LDA.b #$0C\n #_0EA972: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n #_0EA975: BRA .continue\n\n; ---------------------------------------------------------\n\n.is_chest\n #_0EA977: LDA.b #$10\n #_0EA979: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n; ---------------------------------------------------------\n\n.continue\n #_0EA97C: INX\n #_0EA97D: CPX.b #$05\n #_0EA97F: BCC .next_sprite\n\n; ---------------------------------------------------------\n\n #_0EA981: LDA.b #$02\n #_0EA983: LDY.b #$38\n #_0EA985: JSR Credits_SpriteDraw_Single\n\n #_0EA988: JSR Credits_SpriteDraw_AnimateRunningKidAndLocksmith\n\n #_0EA98B: INX\n\n #_0EA98C: LDA.b #$03\n #_0EA98E: LDY.b #$3A\n #_0EA990: JSR Credits_SpriteDraw_Single\n\n #_0EA993: PLX\n\n #_0EA994: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Priest", + "code": "CreditsOAMGroup_Priest:\n #_0EA995: dw -6, -2 : db $06, $07, $00, $02 ; book\n #_0EA99D: dw 0, -9 : db $0E, $09, $00, $02 ; head\n #_0EA9A5: dw 0, -1 : db $08, $09, $00, $02 ; body\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Sanctuary", + "code": "Credits_SpriteDraw_Sanctuary:\n #_0EA9AD: PHX\n\n #_0EA9AE: LDX.b #$00\n\n #_0EA9B0: LDY.b #$0C\n #_0EA9B2: LDA.b #$03\n #_0EA9B4: JSR Credits_SpriteDraw_Single\n #_0EA9B7: JSR Credits_SpriteDraw_DrawShadow_high_prioritize\n\n; ---------------------------------------------------------\n\n #_0EA9BA: INX\n\n #_0EA9BB: LDA.b #$73 ; SPRITE 73\n\n #_0EA9BD: STA.w $0E20,X\n\n #_0EA9C0: LDA.b #$27\n #_0EA9C2: STA.w $0F50,X\n\n #_0EA9C5: LDA.b #$02\n #_0EA9C7: STA.w $0E90,X\n\n #_0EA9CA: LDA.b #$10\n #_0EA9CC: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n #_0EA9CF: PLX\n\n #_0EA9D0: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Witch", + "code": "Credits_SpriteDraw_Witch:\n #_0EA9D3: PHX\n\n #_0EA9D4: LDX.b #$01\n #_0EA9D6: LDA.b #$02\n #_0EA9D8: JSR Credits_SpriteDraw_SetShadowProp\n\n #_0EA9DB: LDA.b #$E9 ; SPRITE E9\n #_0EA9DD: STA.w $0E20,X\n\n #_0EA9E0: LDA.b #$0C\n #_0EA9E2: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_0EA9E6: LDA.b #$37\n #_0EA9E8: STA.w $0F50,X\n\n #_0EA9EB: JSL Sprite_Get16BitCoords_long\n\n #_0EA9EF: LDA.b $1A\n #_0EA9F1: AND.b #$0F\n #_0EA9F3: BNE .delay_jiggle\n\n #_0EA9F5: LDA.w $0DC0,X\n #_0EA9F8: EOR.b #$01\n #_0EA9FA: STA.w $0DC0,X\n\n.delay_jiggle\n #_0EA9FD: JSL SpriteModule_Active_long\n\n; ---------------------------------------------------------\n\n #_0EAA01: REP #$20\n\n #_0EAA03: LDA.b $C8\n #_0EAA05: CMP.w #$0180\n\n #_0EAA08: SEP #$20\n #_0EAA0A: BCC .dont_move\n\n #_0EAA0C: LDA.b #$04\n #_0EAA0E: STA.w $0D40,X\n\n #_0EAA11: LDA.w $0D00,X\n #_0EAA14: CMP.b #$7C\n #_0EAA16: BEQ .dont_move\n\n #_0EAA18: JSL Sprite_Move_XY_Bank1D_long\n\n; ---------------------------------------------------------\n\n.dont_move\n #_0EAA1C: DEX\n\n #_0EAA1D: LDA.b #$36 ; SPRITE 36\n #_0EAA1F: STA.w $0E20,X\n\n #_0EAA22: LDA.b #$18\n #_0EAA24: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_0EAA28: LDA.b #$39\n #_0EAA2A: STA.w $0F50,X\n\n #_0EAA2D: JSL Sprite_Get16BitCoords_long\n\n #_0EAA31: LDA.w $0DF0,X\n #_0EAA34: BNE .delay_stir\n\n #_0EAA36: LDA.b #$04\n #_0EAA38: STA.w $0DF0,X\n\n #_0EAA3B: LDA.b $C9\n #_0EAA3D: LSR A\n #_0EAA3E: AND.b #$01\n #_0EAA40: TAY\n\n #_0EAA41: LDA.w $0DC0,X\n #_0EAA44: CLC\n #_0EAA45: ADC.w .pose_mask,Y\n #_0EAA48: AND.b #$07\n #_0EAA4A: STA.w $0DC0,X\n\n.delay_stir\n #_0EAA4D: JSL SpriteModule_Active_long\n\n; ---------------------------------------------------------\n\n #_0EAA51: PLX\n\n #_0EAA52: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_FluteDad", + "code": "CreditsOAMGroup_FluteDad:\n #_0EAA53: dw -16, -24 : db $04, $37, $00, $02\n #_0EAA5B: dw -16, -16 : db $64, $37, $00, $02\n #_0EAA63: dw -16, -24 : db $62, $37, $00, $02\n #_0EAA6B: dw -16, -16 : db $64, $37, $00, $02\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_Quaver", + "code": "CreditsOAMGroup_Quaver:\n #_0EAA73: dw 0, -19 : db $AF, $39, $00, $00\n\n; =========================================================\n\npool Credits_SpriteDraw_Grove\n\n.quaver_speed_x\n #_0EAA7B: db 1, -1\n\n.flute_kid_foot_tempo\n #_0EAA7D: db 16, 14, 16, 18\n\n.flute_dad_headbang_timer\n #_0EAA81: db 20, 48, 20, 20\n\n; ---------------------------------------------------------\n\n.animal_object_allocation\n #_0EAA85: db $08 ; left rabbit\n #_0EAA86: db $08 ; right rabbit\n #_0EAA87: db $0C ; left bird\n #_0EAA88: db $0C ; right bird\n\n.animal_props\n #_0EAA89: db $37 ; left rabbit\n #_0EAA8A: db $37 ; right rabbit\n #_0EAA8B: db $3B ; left bird\n #_0EAA8C: db $3D ; right bird\n\n.animal_direction\n #_0EAA8D: db $00 ; left rabbit\n #_0EAA8E: db $01 ; right rabbit\n #_0EAA8F: db $00 ; left bird\n #_0EAA90: db $01 ; right bird\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Grove", + "code": "Credits_SpriteDraw_Grove:\n #_0EAA91: PHX\n\n #_0EAA92: LDX.b #$00\n\n.next_quaver\n #_0EAA94: LDA.w $0DF0,X\n #_0EAA97: BNE .delay_quaver\n\n #_0EAA99: LDA.b #$60\n #_0EAA9B: STA.w $0DF0,X\n #_0EAA9E: STA.w $0DD0,X\n\n #_0EAAA1: STZ.w $0D50,X\n\n #_0EAAA4: LDA.b #$EE\n #_0EAAA6: STA.w $0D10,X\n\n #_0EAAA9: LDA.b #$04\n #_0EAAAB: STA.w $0D30,X\n\n #_0EAAAE: LDA.b #$18\n #_0EAAB0: STA.w $0D00,X\n\n #_0EAAB3: LDA.b #$0B\n #_0EAAB5: STA.w $0D20,X\n\n; ---------------------------------------------------------\n\n.delay_quaver\n #_0EAAB8: LDA.w $0DD0,X\n #_0EAABB: BEQ .eigth_rest\n\n #_0EAABD: LDA.b #$F8\n #_0EAABF: STA.w $0D40,X\n\n #_0EAAC2: JSL Sprite_Move_XY_Bank1D_long\n\n #_0EAAC6: LDA.b $1A\n #_0EAAC8: LSR A\n #_0EAAC9: BCS .no_crescendo\n\n #_0EAACB: STX.b $00\n\n #_0EAACD: LDA.b $1A\n\n #_0EAACF: LSR A\n #_0EAAD0: LSR A\n #_0EAAD1: LSR A\n #_0EAAD2: LSR A\n #_0EAAD3: LSR A\n\n #_0EAAD4: EOR.b $00\n #_0EAAD6: AND.b #$01\n #_0EAAD8: TAY\n\n #_0EAAD9: LDA.w $0D50,X\n #_0EAADC: CLC\n #_0EAADD: ADC.w .quaver_speed_x,Y\n #_0EAAE0: STA.w $0D50,X\n\n.no_crescendo\n #_0EAAE3: LDY.b #$10\n #_0EAAE5: LDA.b #$01\n #_0EAAE7: JSR Credits_SpriteDraw_Single\n\n; ---------------------------------------------------------\n\n.eigth_rest\n #_0EAAEA: INX\n #_0EAAEB: CPX.b #$05\n #_0EAAED: BCC .next_quaver\n\n; ---------------------------------------------------------\n\n.next_human\n #_0EAAEF: LDY.w $0D90,X\n\n #_0EAAF2: LDA.w $0DF0,X\n #_0EAAF5: BNE .delay_jamming\n\n #_0EAAF7: LDA.w .flute_kid_foot_tempo,Y\n\n #_0EAAFA: CPX.b #$05\n #_0EAAFC: BEQ .flute_kid\n\n #_0EAAFE: LDA.w .flute_dad_headbang_timer,Y\n\n.flute_kid\n #_0EAB01: STA.w $0DF0,X\n\n #_0EAB04: TYA\n #_0EAB05: INC A\n #_0EAB06: AND.b #$03\n #_0EAB08: STA.w $0D90,X\n\n #_0EAB0B: LDA.w $0DC0,X\n #_0EAB0E: EOR.b #$01\n #_0EAB10: STA.w $0DC0,X\n\n.delay_jamming\n #_0EAB13: CPX.b #$05\n #_0EAB15: BNE .not_flute_kid\n\n #_0EAB17: LDA.b #$31\n #_0EAB19: STA.w $0F50,X\n\n #_0EAB1C: LDA.b #$10\n #_0EAB1E: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n #_0EAB21: INX\n\n #_0EAB22: BRA .next_human\n\n; ---------------------------------------------------------\n\n.not_flute_kid\n #_0EAB24: LDY.b #$12\n #_0EAB26: LDA.b #$02\n #_0EAB28: JSR Credits_SpriteDraw_Single\n\n #_0EAB2B: INX\n\n; ---------------------------------------------------------\n\n.next_animal\n #_0EAB2C: LDA.w .animal_props-7,X\n #_0EAB2F: STA.w $0F50,X\n\n #_0EAB32: LDA.w .animal_direction-7,X\n #_0EAB35: STA.w $0DE0,X\n\n #_0EAB38: LDA.w .animal_object_allocation-7,X\n #_0EAB3B: JSR Credits_SpriteDraw_ActivateAndRunSprite\n\n #_0EAB3E: INX\n #_0EAB3F: CPX.b #$0B\n #_0EAB41: BCC .next_animal\n\n; ---------------------------------------------------------\n\n #_0EAB43: PLX\n\n #_0EAB44: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_WoodsThief", + "code": "CreditsOAMGroup_WoodsThief:\n #_0EAB45: dw 0, -7 : db $00, $0D, $00, $02\n #_0EAB4D: dw 0, -7 : db $00, $0D, $00, $02\n #_0EAB55: dw 0, 0 : db $06, $0D, $00, $02\n #_0EAB5D: dw 0, -7 : db $00, $0D, $00, $02\n #_0EAB65: dw 0, -7 : db $00, $0D, $00, $02\n #_0EAB6D: dw 0, 0 : db $06, $4D, $00, $02\n #_0EAB75: dw 0, -8 : db $00, $0D, $00, $02\n #_0EAB7D: dw 0, -8 : db $00, $0D, $00, $02\n #_0EAB85: dw 0, 0 : db $20, $0D, $00, $02\n #_0EAB8D: dw 0, -8 : db $02, $0D, $00, $02\n #_0EAB95: dw 0, -8 : db $02, $0D, $00, $02\n #_0EAB9D: dw 0, 0 : db $2C, $0D, $00, $02\n #_0EABA5: dw -3, 0 : db $2F, $0D, $00, $00\n #_0EABAD: dw 0, -7 : db $02, $0D, $00, $02\n #_0EABB5: dw 0, 0 : db $2C, $0D, $00, $02\n #_0EABBD: dw -5, 2 : db $2F, $0D, $00, $00\n #_0EABC5: dw 0, -8 : db $02, $0D, $00, $02\n #_0EABCD: dw 0, 0 : db $2C, $0D, $00, $02\n #_0EABD5: dw -5, 2 : db $3F, $0D, $00, $00\n #_0EABDD: dw 0, -8 : db $02, $0D, $00, $02\n #_0EABE5: dw 0, 0 : db $2C, $0D, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_LostWoods\n\n.pickle_pose\n #_0EABED: db $00, $01, $00\n\n.target_y\n #_0EABF0: db $02, $08, $20, $20, $08\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_LostWoods", + "code": "Credits_SpriteDraw_LostWoods:\n #_0EABF5: PHX\n\n #_0EABF6: LDX.b #$06\n\n.next_sprite\n #_0EABF8: CPX.b #$05\n #_0EABFA: BCC .pickle\n\n; ---------------------------------------------------------\n\n.raven\n #_0EABFC: LDA.b #$00 ; SPRITE 00\n #_0EABFE: STA.w $0E20,X\n\n #_0EAC01: LDA.b #$01\n #_0EAC03: JSR Credits_SpriteDraw_SetShadowProp\n\n #_0EAC06: LDA.b $1A\n #_0EAC08: CLC\n\n.this\n #_0EAC09: ADC.w .this,X\n #_0EAC0C: AND.b #$08\n #_0EAC0E: LSR A\n #_0EAC0F: LSR A\n #_0EAC10: LSR A\n #_0EAC11: STA.w $0DC0,X\n\n #_0EAC14: LDA.b #$20\n #_0EAC16: STA.w $0F70,X\n\n #_0EAC19: JSR Credits_SpriteDraw_CirclingBirds\n\n #_0EAC1C: LDA.w $0D50,X\n #_0EAC1F: LSR A\n #_0EAC20: AND.b #$40\n #_0EAC22: EOR.b #$0F\n #_0EAC24: STA.w $0F50,X\n\n #_0EAC27: LDA.b #$08\n #_0EAC29: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n #_0EAC2C: BRA .to_next\n\n; ---------------------------------------------------------\n\n.pickle\n #_0EAC2E: LDA.b #$0D ; SPRITE 0D\n #_0EAC30: STA.w $0E20,X\n\n #_0EAC33: CPX.b #$01\n #_0EAC35: BNE .normal_pickle\n\n #_0EAC37: STA.w $0EB0,X\n\n.normal_pickle\n #_0EAC3A: LDA.b #$03\n #_0EAC3C: JSR Credits_SpriteDraw_SetShadowProp\n\n #_0EAC3F: LDA.b #$2B\n #_0EAC41: STA.w $0F50,X\n\n #_0EAC44: LDA.w $0DF0,X\n #_0EAC47: BNE .pickle_DILLay\n\n #_0EAC49: LDA.b #$C0\n #_0EAC4B: STA.w $0DF0,X\n\n.pickle_DILLay\n #_0EAC4E: LSR A\n #_0EAC4F: BNE .no_movement\n\n #_0EAC51: STA.w $0D40,X\n #_0EAC54: BRA .set_x_speed\n\n.no_movement\n #_0EAC56: CMP.w .target_y,X\n #_0EAC59: BCS .move_pickle\n\n #_0EAC5B: LDA.b $1A\n #_0EAC5D: AND.b #$03\n #_0EAC5F: BNE .move_pickle\n\n #_0EAC61: LDA.w $0D40,X\n #_0EAC64: BEQ .move_pickle\n\n #_0EAC66: DEC A\n #_0EAC67: STA.w $0D40,X\n\n #_0EAC6A: CLC\n #_0EAC6B: ADC.b #$FC\n\n #_0EAC6D: CPX.b #$03\n #_0EAC6F: BCS .set_x_speed\n\n #_0EAC71: EOR.b #$FF\n #_0EAC73: INC A\n\n.set_x_speed\n #_0EAC74: STA.w $0D50,X\n\n; ---------------------------------------------------------\n\n.move_pickle\n #_0EAC77: JSL Sprite_Move_XY_Bank1D_long\n\n #_0EAC7B: LDA.b $1A\n #_0EAC7D: LSR A\n #_0EAC7E: LSR A\n #_0EAC7F: LSR A\n #_0EAC80: AND.b #$03\n #_0EAC82: TAY\n\n #_0EAC83: LDA.w .pickle_pose,Y\n #_0EAC86: STA.w $0DC0,X\n\n #_0EAC89: LDA.b #$10\n #_0EAC8B: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n; ---------------------------------------------------------\n\n.to_next\n #_0EAC8E: DEX\n #_0EAC8F: BEQ .done\n\n #_0EAC91: JMP.w .next_sprite\n\n; ---------------------------------------------------------\n\n.done\n #_0EAC94: LDY.b #$18\n #_0EAC96: LDA.b #$03\n #_0EAC98: JSR Credits_SpriteDraw_Single\n\n #_0EAC9B: LDA.b #$20\n #_0EAC9D: JSR Credits_SpriteDraw_AnimateLostWoodsThief\n\n #_0EACA0: PLX\n\n #_0EACA1: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_SetShadowProp", + "code": "Credits_SpriteDraw_SetShadowProp:\n #_0EACA2: STA.w $0E40,X\n\n #_0EACA5: LDA.b #$10\n #_0EACA7: STA.w $0E60,X\n\n #_0EACAA: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_PedestalSquirrel", + "code": "CreditsOAMGroup_PedestalSquirrel:\n #_0EACAB: dw 0, 0 : db $0C, $0C, $00, $02\n #_0EACB3: dw 0, 0 : db $0A, $0C, $00, $02\n #_0EACBB: dw 0, 0 : db $C5, $0C, $00, $02\n #_0EACC3: dw 0, 0 : db $E1, $0C, $00, $02\n\n; =========================================================\n\npool Credits_SpriteDraw_Pedestal\n\n.props\n #_0EACCB: db $61, $61, $3B, $39\n\n.squirrel_timer\n #_0EACCF: db 6, 6, 6, 6, 6, 6, 10, 8\n\n; ---------------------------------------------------------\n\n#Credits_SpriteDraw_AddSparkle_timer:\n #_0EACD7: db 32, 4, 4, 4, 5, 6\n\n; ---------------------------------------------------------\n\n.sparkle_position_x\n #_0EACDD: db $76, $73, $71, $78\n\n.sparkle_position_y\n #_0EACE1: db $8B, $83, $8D, $85\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_AddSparkle", + "code": "Credits_SpriteDraw_AddSparkle:\n #_0EACE5: STX.b $00\n\n #_0EACE7: STA.b $02\n\n #_0EACE9: STY.w $0DB0\n\n; ---------------------------------------------------------\n\n #_0EACEC: LDX.b #$00\n\n.next\n #_0EACEE: LDY.w $0DC0,X\n\n #_0EACF1: LDA.w $0DF0,X\n #_0EACF4: BNE .delay\n\n #_0EACF6: INY\n #_0EACF7: CPY.b #$06\n #_0EACF9: BCC .dont_set\n\n #_0EACFB: LDA.b $00\n #_0EACFD: STA.w $0D10,X\n\n #_0EAD00: LDA.b $02\n #_0EAD02: STA.w $0D00,X\n\n #_0EAD05: LDY.b #$00\n\n.dont_set\n #_0EAD07: TYA\n #_0EAD08: STA.w $0DC0,X\n\n #_0EAD0B: LDA.w .timer,Y\n #_0EAD0E: STA.w $0DF0,X\n\n.delay\n #_0EAD11: TYA\n #_0EAD12: BEQ .no_draw\n\n #_0EAD14: LDY.b #$1C\n #_0EAD16: LDA.b #$01\n #_0EAD18: JSR Credits_SpriteDraw_Single\n\n.no_draw\n #_0EAD1B: INX\n #_0EAD1C: CPX.w $0DB0\n #_0EAD1F: BCC .next\n\n; ---------------------------------------------------------\n\n #_0EAD21: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_Pedestal", + "code": "Credits_SpriteDraw_Pedestal:\n #_0EAD22: PHX\n\n #_0EAD23: LDY.b $1A\n\n.this\n #_0EAD25: LDA.w .this,Y\n #_0EAD28: AND.b #$03\n #_0EAD2A: TAY\n\n #_0EAD2B: LDX.w .sparkle_position_x,Y\n #_0EAD2E: LDA.w .sparkle_position_y,Y\n\n #_0EAD31: LDY.b #$02\n #_0EAD33: JSR Credits_SpriteDraw_AddSparkle\n\n; ---------------------------------------------------------\n\n #_0EAD36: LDA.b #$62 ; SPRITE 62\n #_0EAD38: STA.w $0E20,X\n\n #_0EAD3B: LDA.b #$39\n #_0EAD3D: STA.w $0F50,X\n\n #_0EAD40: LDA.b #$18\n #_0EAD42: JSR Credits_SpriteDraw_PreexistingSpriteDraw\n\n; ---------------------------------------------------------\n\n #_0EAD45: LDY.b #$01\n\n.next_sprite\n #_0EAD47: INX\n\n #_0EAD48: LDA.w $0E00,X\n #_0EAD4B: BEQ .timer_ended\n\n #_0EAD4D: DEC.w $0E00,X\n\n.timer_ended\n #_0EAD50: LDA.w $0D50,X\n #_0EAD53: LSR A\n #_0EAD54: AND.b #$40\n #_0EAD56: EOR.w .props,Y\n #_0EAD59: STA.w $0F50,X\n\n #_0EAD5C: LDA.w $0DF0,X\n #_0EAD5F: BNE .delay\n\n #_0EAD61: LDA.b #$80\n #_0EAD63: STA.w $0DF0,X\n\n #_0EAD66: STZ.w $0D90,X\n\n.delay\n #_0EAD69: LDA.w $0D90,X\n #_0EAD6C: BNE .dont_move\n\n #_0EAD6E: LDA.b $1A\n #_0EAD70: LSR A\n #_0EAD71: LSR A\n #_0EAD72: AND.b #$01\n #_0EAD74: INC A\n #_0EAD75: INC A\n #_0EAD76: STA.w $0DC0,X\n\n #_0EAD79: PHY\n\n #_0EAD7A: JSR Credits_SpriteDraw_MoveSquirrel\n\n #_0EAD7D: PLY\n\n #_0EAD7E: BRA .do_draw\n\n; ---------------------------------------------------------\n\n.dont_move\n #_0EAD80: LDA.w $0E00,X\n #_0EAD83: BNE .do_draw\n\n #_0EAD85: LDA.w $0DA0,X\n #_0EAD88: CMP.b #$08\n #_0EAD8A: BNE .dont_reset\n\n #_0EAD8C: STZ.w $0DA0,X\n\n.dont_reset\n #_0EAD8F: PHY\n\n #_0EAD90: LDA.w $0DA0,X\n #_0EAD93: AND.b #$07\n #_0EAD95: TAY\n\n #_0EAD96: LDA.w .squirrel_timer,Y\n #_0EAD99: STA.w $0E00,X\n\n #_0EAD9C: PLY\n\n #_0EAD9D: LDA.w $0DC0,X\n #_0EADA0: AND.b #$01\n #_0EADA2: EOR.b #$01\n #_0EADA4: STA.w $0DC0,X\n\n #_0EADA7: INC.w $0DA0,X\n\n; ---------------------------------------------------------\n\n.do_draw\n #_0EADAA: PHY\n\n #_0EADAB: LDA.b #$01\n #_0EADAD: LDY.b #$14\n #_0EADAF: JSR Credits_SpriteDraw_Single\n #_0EADB2: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n #_0EADB5: PLY\n #_0EADB6: DEY\n #_0EADB7: BPL .next_sprite\n\n; ---------------------------------------------------------\n\n #_0EADB9: INX\n\n #_0EADBA: JSR Credits_SpriteDraw_WalkLinkAwayFromPedestal\n\n #_0EADBD: PLX\n\n #_0EADBE: RTS", + "file": "bank_0E.asm" + }, + { + "name": "CreditsOAMGroup_SwordSparkle", + "code": "CreditsOAMGroup_SwordSparkle:\n #_0EADBF: dw 0, 0 : db $C7, $34, $00, $00\n #_0EADC7: dw 0, 0 : db $80, $34, $00, $00\n #_0EADCF: dw 0, 0 : db $B6, $34, $00, $00\n #_0EADD7: dw 0, 0 : db $B7, $34, $00, $00\n #_0EADDF: dw 0, 0 : db $A6, $34, $00, $00\n\n; =========================================================\n\npool Credits_SpriteDraw_WalkLinkAwayFromPedestal\n\n.pose\n #_0EADE7: dw $016C\n #_0EADE9: dw $016E\n #_0EADEB: dw $0170\n #_0EADED: dw $0172\n #_0EADEF: dw $016C\n #_0EADF1: dw $0174\n #_0EADF3: dw $0176\n #_0EADF5: dw $0178\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_WalkLinkAwayFromPedestal", + "code": "Credits_SpriteDraw_WalkLinkAwayFromPedestal:\n #_0EADF7: LDA.w $0DF0,X\n #_0EADFA: BNE .delay_step\n\n #_0EADFC: LDA.w $0DC0,X\n #_0EADFF: INC A\n #_0EAE00: AND.b #$07\n #_0EAE02: STA.w $0DC0,X\n\n #_0EAE05: LDA.b #$04\n #_0EAE07: STA.w $0DF0,X\n\n; ---------------------------------------------------------\n\n.delay_step\n #_0EAE0A: LDA.w $0DC0,X\n #_0EAE0D: ASL A\n #_0EAE0E: TAY\n\n #_0EAE0F: REP #$20\n\n #_0EAE11: LDA.w .pose,Y\n #_0EAE14: STA.w $0100\n\n #_0EAE17: SEP #$20\n\n #_0EAE19: LDA.b #$20\n #_0EAE1B: STA.w $0F50,X\n\n #_0EAE1E: LDA.b #$02\n #_0EAE20: LDY.b #$1A\n #_0EAE22: JSR Credits_SpriteDraw_Single\n #_0EAE25: JSR Credits_SpriteDraw_DrawShadow_priority_set\n\n #_0EAE28: JSL Sprite_Move_XY_Bank1D_long\n\n #_0EAE2C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_MoveSquirrel", + "code": "Credits_SpriteDraw_MoveSquirrel:\n #_0EAE35: LDA.w $0DF0,X\n #_0EAE38: CMP.b #$40\n #_0EAE3A: BCS .move\n\n #_0EAE3C: LDA.w $0DB0,X\n #_0EAE3F: INC A\n #_0EAE40: AND.b #$03\n #_0EAE42: STA.w $0DB0,X\n\n #_0EAE45: INC.w $0D90,X\n\n #_0EAE48: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SpriteDraw_CirclingBirds", + "code": "Credits_SpriteDraw_CirclingBirds:\n #_0EAE63: LDA.w $0DE0,X\n #_0EAE66: AND.b #$01\n #_0EAE68: TAY\n\n #_0EAE69: LDA.w $0D50,X\n #_0EAE6C: CLC\n #_0EAE6D: ADC.w CreditsSpriteSpeeds_x1,Y\n #_0EAE70: STA.w $0D50,X\n\n #_0EAE73: CMP.w CreditsSpriteSpeeds_x32,Y\n #_0EAE76: BNE .not_at_boundary_x\n\n #_0EAE78: INC.w $0DE0,X\n\n; ---------------------------------------------------------\n\n.not_at_boundary_x\n #_0EAE7B: LDA.b $1A\n #_0EAE7D: AND.b #$01\n #_0EAE7F: BNE .dont_change_y_speed\n\n #_0EAE81: LDA.w $0EB0,X\n #_0EAE84: AND.b #$01\n #_0EAE86: TAY\n\n #_0EAE87: LDA.w $0D40,X\n #_0EAE8A: CLC\n #_0EAE8B: ADC.w CreditsSpriteSpeeds_x1,Y\n #_0EAE8E: STA.w $0D40,X\n\n #_0EAE91: CMP.w CreditsSpriteSpeeds_pos16,Y\n #_0EAE94: BNE .dont_change_y_speed\n\n #_0EAE96: INC.w $0EB0,X\n\n; ---------------------------------------------------------\n\n.dont_change_y_speed\n #_0EAE99: JSL Sprite_Move_XY_Bank1D_long\n\n #_0EAE9D: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_HandleCameraScrollControl", + "code": "Credits_HandleCameraScrollControl:\n #_0EAEA6: PHB\n #_0EAEA7: PHK\n #_0EAEA8: PLB\n\n #_0EAEA9: REP #$20\n\n #_0EAEAB: LDA.w #$0001\n #_0EAEAE: STA.b $00\n\n #_0EAEB0: LDA.b $30\n #_0EAEB2: AND.w #$00FF\n #_0EAEB5: BNE .vertical_movement\n\n #_0EAEB7: JMP.w .handle_horizontal\n\n; ---------------------------------------------------------\n\n.vertical_movement\n #_0EAEBA: CMP.w #$0080\n #_0EAEBD: BCC .positive_vertical\n\n #_0EAEBF: EOR.w #$00FF\n #_0EAEC2: INC A\n\n #_0EAEC3: DEC.b $00\n #_0EAEC5: DEC.b $00\n\n #_0EAEC7: STA.b $02\n\n #_0EAEC9: LDY.b #$00\n #_0EAECB: BRA .continue_vertical\n\n; ---------------------------------------------------------\n\n.positive_vertical\n #_0EAECD: STA.b $02\n\n #_0EAECF: LDY.b #$02\n\n; ---------------------------------------------------------\n\n.continue_vertical\n #_0EAED1: LDX.b #$06\n #_0EAED3: JSR Credits_SingleCameraScrollControl\n\n #_0EAED6: LDA.b $04\n #_0EAED8: STA.w $069E\n\n #_0EAEDB: LDX.b $8C\n #_0EAEDD: CPX.b #$97 ; OW 97\n #_0EAEDF: BEQ .handle_horizontal\n\n #_0EAEE1: CPX.b #$9D ; OW 9D\n #_0EAEE3: BEQ .handle_horizontal\n\n #_0EAEE5: LDA.b $04\n #_0EAEE7: BEQ .handle_horizontal\n\n; ---------------------------------------------------------\n\n #_0EAEE9: STZ.b $00\n #_0EAEEB: LSR A\n #_0EAEEC: ROR.b $00\n\n #_0EAEEE: LDX.b $8C\n #_0EAEF0: CPX.b #$B5 ; OW B5\n #_0EAEF2: BEQ .unused_overlay\n\n #_0EAEF4: CPX.b #$BE ; OW BE\n #_0EAEF6: BNE .not_unused_overlay\n\n.unused_overlay\n #_0EAEF8: LSR A\n #_0EAEF9: ROR.b $00\n #_0EAEFB: CMP.w #$3000\n #_0EAEFE: BCC .set_vertical_scroll\n\n #_0EAF00: ORA.w #$F000\n #_0EAF03: BRA .set_vertical_scroll\n\n.not_unused_overlay\n #_0EAF05: CMP.w #$7000\n #_0EAF08: BCC .set_vertical_scroll\n\n #_0EAF0A: ORA.w #$F000\n\n; ---------------------------------------------------------\n\n.set_vertical_scroll\n #_0EAF0D: STA.b $06\n\n #_0EAF0F: LDA.w $0622\n #_0EAF12: CLC\n #_0EAF13: ADC.b $00\n #_0EAF15: STA.w $0622\n\n #_0EAF18: LDA.b $E6\n #_0EAF1A: ADC.b $06\n #_0EAF1C: STA.b $E6\n\n; ---------------------------------------------------------\n\n.handle_horizontal\n #_0EAF1E: LDA.w #$0001\n #_0EAF21: STA.b $00\n\n #_0EAF23: LDA.b $31\n #_0EAF25: AND.w #$00FF\n #_0EAF28: BNE .horizontal_movement\n\n #_0EAF2A: JMP.w .horizontal_control_done\n\n; ---------------------------------------------------------\n\n.horizontal_movement\n #_0EAF2D: CMP.w #$0080\n #_0EAF30: BCC .positive_horizontal\n\n #_0EAF32: EOR.w #$00FF\n #_0EAF35: INC A\n\n #_0EAF36: DEC.b $00\n #_0EAF38: DEC.b $00\n\n #_0EAF3A: STA.b $02\n\n #_0EAF3C: LDY.b #$04\n #_0EAF3E: BRA .continue_horizontal\n\n; ---------------------------------------------------------\n\n.positive_horizontal\n #_0EAF40: STA.b $02\n\n #_0EAF42: LDY.b #$06\n\n; ---------------------------------------------------------\n\n.continue_horizontal\n #_0EAF44: LDX.b #$00\n #_0EAF46: JSR Credits_SingleCameraScrollControl\n\n #_0EAF49: LDA.b $04\n #_0EAF4B: STA.w $069F\n\n #_0EAF4E: LDX.b $8C\n #_0EAF50: CPX.b #$97 ; OW 97\n #_0EAF52: BEQ .horizontal_control_done\n\n #_0EAF54: CPX.b #$9D ; OW 9D\n #_0EAF56: BEQ .horizontal_control_done\n\n #_0EAF58: LDA.b $04\n #_0EAF5A: BEQ .horizontal_control_done\n\n #_0EAF5C: STZ.b $00\n #_0EAF5E: LSR A\n #_0EAF5F: ROR.b $00\n\n; ---------------------------------------------------------\n\n #_0EAF61: LDX.b $8C\n #_0EAF63: CPX.b #$95 ; OW 95\n #_0EAF65: BEQ .dm_overlay\n\n #_0EAF67: CPX.b #$9E ; OW 9E\n #_0EAF69: BNE .not_dm_overlay\n\n.dm_overlay\n #_0EAF6B: LSR A\n #_0EAF6C: ROR.b $00\n #_0EAF6E: CMP.w #$3000\n #_0EAF71: BCC .set_horizontal_scroll\n\n #_0EAF73: ORA.w #$F000\n #_0EAF76: BRA .set_horizontal_scroll\n\n.not_dm_overlay\n #_0EAF78: CMP.w #$7000\n #_0EAF7B: BCC .set_horizontal_scroll\n\n #_0EAF7D: ORA.w #$F000\n\n; ---------------------------------------------------------\n\n.set_horizontal_scroll\n #_0EAF80: STA.b $06\n\n #_0EAF82: LDA.w $0620\n #_0EAF85: CLC\n #_0EAF86: ADC.b $00\n #_0EAF88: STA.w $0620\n\n #_0EAF8B: LDA.b $E0\n #_0EAF8D: ADC.b $06\n #_0EAF8F: STA.b $E0\n\n; ---------------------------------------------------------\n\n.horizontal_control_done\n #_0EAF91: LDX.b $8C\n #_0EAF93: CPX.b #$9C ; OW 9C\n #_0EAF95: BEQ .extra_adjust_bg2\n\n #_0EAF97: CPX.b #$97 ; OW 97\n #_0EAF99: BEQ .extra_adjust_bg1\n\n #_0EAF9B: CPX.b #$9D ; OW 9D\n #_0EAF9D: BNE .continue\n\n; ---------------------------------------------------------\n\n.extra_adjust_bg1\n #_0EAF9F: LDA.w $0622\n #_0EAFA2: CLC\n #_0EAFA3: ADC.w #$2000\n #_0EAFA6: STA.w $0622\n\n #_0EAFA9: LDA.b $E6\n #_0EAFAB: ADC.w #$0000\n #_0EAFAE: STA.b $E6\n\n #_0EAFB0: LDA.w $0620\n #_0EAFB3: CLC\n #_0EAFB4: ADC.w #$2000\n #_0EAFB7: STA.w $0620\n\n #_0EAFBA: LDA.b $E0\n #_0EAFBC: ADC.w #$0000\n #_0EAFBF: STA.b $E0\n\n #_0EAFC1: BRA .continue\n\n; ---------------------------------------------------------\n\n.extra_adjust_bg2\n #_0EAFC3: LDA.w $0622\n #_0EAFC6: SEC\n #_0EAFC7: SBC.w #$2000\n #_0EAFCA: STA.w $0622\n\n #_0EAFCD: LDA.b $E6\n #_0EAFCF: SBC.w #$0000\n #_0EAFD2: CLC\n #_0EAFD3: ADC.w $069E\n #_0EAFD6: STA.b $E6\n\n #_0EAFD8: LDA.b $E2\n #_0EAFDA: STA.b $E0\n\n; ---------------------------------------------------------\n\n.continue\n #_0EAFDC: LDA.b $A0\n #_0EAFDE: CMP.w #$0181 ; OW 81\n #_0EAFE1: BNE .exit\n\n #_0EAFE3: LDA.b $E8\n #_0EAFE5: ORA.w #$0100\n #_0EAFE8: STA.b $E6\n\n #_0EAFEA: LDA.b $E2\n #_0EAFEC: STA.b $E0\n\n.exit\n #_0EAFEE: SEP #$20\n\n #_0EAFF0: PLB\n\n #_0EAFF1: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SingleCameraScrollControl", + "code": "Credits_SingleCameraScrollControl:\n #_0EAFF2: STZ.b $04\n #_0EAFF4: STZ.b $06\n\n.next_scroll\n #_0EAFF6: LDA.b $E2,X\n #_0EAFF8: CLC\n #_0EAFF9: ADC.b $00\n #_0EAFFB: STA.b $E2,X\n\n #_0EAFFD: INC.b $06\n\n #_0EAFFF: LDA.b $04\n #_0EB001: CLC\n #_0EB002: ADC.b $00\n #_0EB004: STA.b $04\n\n #_0EB006: DEC.b $02\n #_0EB008: BNE .next_scroll\n\n; ---------------------------------------------------------\n\n #_0EB00A: TYA\n #_0EB00B: EOR.w #$0002\n #_0EB00E: TAX\n\n #_0EB00F: LDA.w $0624,Y\n #_0EB012: CLC\n #_0EB013: ADC.b $06\n #_0EB015: STA.w $0624,Y\n\n #_0EB018: CMP.w #$0010\n #_0EB01B: BMI .dont_remask_for_tilemap\n\n #_0EB01D: SEC\n #_0EB01E: SBC.w #$0010\n #_0EB021: STA.w $0624,Y\n\n #_0EB024: LDA.w .screen_masks,Y\n #_0EB027: ORA.w $0416\n #_0EB02A: STA.w $0416\n\n.dont_remask_for_tilemap\n #_0EB02D: LDA.w #$0000\n #_0EB030: SEC\n #_0EB031: SBC.w $0624,Y\n #_0EB034: STA.w $0624,X\n\n #_0EB037: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_CharacterToTile", + "code": "Credits_CharacterToTile:\n #_0EB038: dw $38C7\n #_0EB03A: dw $38C8\n #_0EB03C: dw $38C9\n #_0EB03E: dw $38CA\n #_0EB040: dw $38CB\n #_0EB042: dw $38CC\n #_0EB044: dw $38CD\n #_0EB046: dw $38CE\n #_0EB048: dw $38CF\n #_0EB04A: dw $38D7\n #_0EB04C: dw $38D8\n #_0EB04E: dw $38D9\n #_0EB050: dw $38DA\n #_0EB052: dw $38DB\n #_0EB054: dw $38DC\n #_0EB056: dw $38DD\n #_0EB058: dw $38DE\n #_0EB05A: dw $38DF\n #_0EB05C: dw $38E0\n #_0EB05E: dw $38E1\n #_0EB060: dw $38E2\n #_0EB062: dw $38E3\n #_0EB064: dw $38E4\n #_0EB066: dw $38F0\n #_0EB068: dw $38F1\n #_0EB06A: dw $38F2\n #_0EB06C: dw $2CC7\n #_0EB06E: dw $2CC8\n #_0EB070: dw $2CC9\n #_0EB072: dw $2CCA\n #_0EB074: dw $2CCB\n #_0EB076: dw $2CCC\n #_0EB078: dw $2CCD\n #_0EB07A: dw $2CCE\n #_0EB07C: dw $2CCF\n #_0EB07E: dw $2CD7\n #_0EB080: dw $2CD8\n #_0EB082: dw $2CD9\n #_0EB084: dw $2CDA\n #_0EB086: dw $2CDB\n #_0EB088: dw $2CDC\n #_0EB08A: dw $2CDD\n #_0EB08C: dw $2CDE\n #_0EB08E: dw $2CDF\n #_0EB090: dw $2CE0\n #_0EB092: dw $2CE1\n #_0EB094: dw $2CE2\n #_0EB096: dw $2CE3\n #_0EB098: dw $2CE4\n #_0EB09A: dw $2CF0\n #_0EB09C: dw $2CF1\n #_0EB09E: dw $2CF2\n #_0EB0A0: dw $2CE5\n #_0EB0A2: dw $2CF5\n #_0EB0A4: dw $2CF3\n #_0EB0A6: dw $2CF4\n #_0EB0A8: dw $28C7\n #_0EB0AA: dw $28C8\n #_0EB0AC: dw $28C9\n #_0EB0AE: dw $28CA\n #_0EB0B0: dw $28CB\n #_0EB0B2: dw $28CC\n #_0EB0B4: dw $28CD\n #_0EB0B6: dw $28CE\n #_0EB0B8: dw $28CF\n #_0EB0BA: dw $28D7\n #_0EB0BC: dw $28D8\n #_0EB0BE: dw $28D9\n #_0EB0C0: dw $28DA\n #_0EB0C2: dw $28DB\n #_0EB0C4: dw $28DC\n #_0EB0C6: dw $28DD\n #_0EB0C8: dw $28DE\n #_0EB0CA: dw $28DF\n #_0EB0CC: dw $28E0\n #_0EB0CE: dw $28E1\n #_0EB0D0: dw $28E2\n #_0EB0D2: dw $28E3\n #_0EB0D4: dw $28E4\n #_0EB0D6: dw $28F0\n #_0EB0D8: dw $28F1\n #_0EB0DA: dw $28F2\n #_0EB0DC: dw $28D6\n #_0EB0DE: dw $3CE6\n #_0EB0E0: dw $3CE7\n #_0EB0E2: dw $3CE8\n #_0EB0E4: dw $3CE9\n #_0EB0E6: dw $3CEA\n #_0EB0E8: dw $3CEB\n #_0EB0EA: dw $3CEC\n #_0EB0EC: dw $3CED\n #_0EB0EE: dw $3CEE\n #_0EB0F0: dw $3CEF\n #_0EB0F2: dw $3C00\n #_0EB0F4: dw $3C01\n #_0EB0F6: dw $3C02\n #_0EB0F8: dw $3C03\n #_0EB0FA: dw $3C04\n #_0EB0FC: dw $3C05\n #_0EB0FE: dw $3C06\n #_0EB100: dw $3C07\n #_0EB102: dw $3CAF\n #_0EB104: dw $3C09\n #_0EB106: dw $3C0A\n #_0EB108: dw $3C0B\n #_0EB10A: dw $3C0C\n #_0EB10C: dw $3C0D\n #_0EB10E: dw $3C0E\n #_0EB110: dw $3C0F\n #_0EB112: dw $3C20\n #_0EB114: dw $3C21\n #_0EB116: dw $3C22\n #_0EB118: dw $3C23\n #_0EB11A: dw $3C24\n #_0EB11C: dw $3C25\n #_0EB11E: dw $3C26\n #_0EB120: dw $3C27\n #_0EB122: dw $3C28\n #_0EB124: dw $3C29\n #_0EB126: dw $3CA1\n #_0EB128: dw $3C6E\n #_0EB12A: dw $3CF6\n #_0EB12C: dw $3CF7\n #_0EB12E: dw $3CF8\n #_0EB130: dw $3CF9\n #_0EB132: dw $3CFA\n #_0EB134: dw $3CFB\n #_0EB136: dw $3CFC\n #_0EB138: dw $3CFD\n #_0EB13A: dw $3CFE\n #_0EB13C: dw $3CFF\n #_0EB13E: dw $3C10\n #_0EB140: dw $3C11\n #_0EB142: dw $3C12\n #_0EB144: dw $3C13\n #_0EB146: dw $3C14\n #_0EB148: dw $3C15\n #_0EB14A: dw $3C16\n #_0EB14C: dw $3C17\n #_0EB14E: dw $3CBF\n #_0EB150: dw $3C19\n #_0EB152: dw $3C1A\n #_0EB154: dw $3C1B\n #_0EB156: dw $3C1C\n #_0EB158: dw $3C1D\n #_0EB15A: dw $3C1E\n #_0EB15C: dw $3C1F\n #_0EB15E: dw $3C30\n #_0EB160: dw $3C31\n #_0EB162: dw $3C32\n #_0EB164: dw $3C33\n #_0EB166: dw $3C34\n #_0EB168: dw $3C35\n #_0EB16A: dw $3C36\n #_0EB16C: dw $3C37\n #_0EB16E: dw $3C38\n #_0EB170: dw $3C39\n #_0EB172: dw $3CB1\n #_0EB174: dw $3C7E\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "CreditsBlankFillTile", + "code": "CreditsBlankFillTile:\n #_0EB176: dw $3CA9 ; 0x9F - blank\n\n; =========================================================\n\npool CreditsTextLine\n\n.data\n\n; ---------------------------------------------------------\n\n; EXECUTIVE PRODUCER\n.line00\n #_0EB178: db $07, $23 ; spacing, 0x24 bytes\n #_0EB17A: db $3C, $4F, $3C, $3A, $4C, $4B, $40, $4D\n #_0EB182: db $3C, $9F, $47, $49, $46, $3B, $4C, $3A\n #_0EB18A: db $3C, $49\n\n; ---------------------------------------------------------\n\n; Blank line\n.line01\n #_0EB18C: db $FF ; short circuit\n\n; ---------------------------------------------------------\n\n; HIROSHI YAMAUCHI\n.line02\n #_0EB18D: db $08, $1F ; spacing, 0x20 bytes\n #_0EB18F: db $64, $65, $6E, $6B, $6F, $64, $65, $9F\n #_0EB197: db $75, $5D, $69, $5D, $71, $5F, $64, $65\n\n; ---------------------------------------------------------\n\n; HIROSHI YAMAUCHI\n.line03\n #_0EB19F: db $08, $1F ; spacing, 0x20 bytes\n #_0EB1A1: db $8A, $8B, $94, $91, $95, $8A, $8B, $9F\n #_0EB1A9: db $9B, $83, $8F, $83, $97, $85, $8A, $8B\n\n; ---------------------------------------------------------\n\n; PRODUCER\n.line04\n #_0EB1B1: db $0C, $0F ; spacing, 0x10 bytes\n #_0EB1B3: db $29, $2B, $28, $1D, $2E, $1C, $1E, $2B\n\n; ---------------------------------------------------------\n\n; SHIGERU MIYAMOTO\n.line05\n #_0EB1BB: db $08, $1F ; spacing, 0x20 bytes\n #_0EB1BD: db $6F, $64, $65, $63, $61, $6E, $71, $9F\n #_0EB1C5: db $69, $65, $75, $5D, $69, $6B, $70, $6B\n\n; ---------------------------------------------------------\n\n; SHIGERU MIYAMOTO\n.line06\n #_0EB1CD: db $08, $1F ; spacing, 0x20 bytes\n #_0EB1CF: db $95, $8A, $8B, $89, $87, $94, $97, $9F\n #_0EB1D7: db $8F, $8B, $9B, $83, $8F, $91, $96, $91\n\n; ---------------------------------------------------------\n\n; DIRECTOR\n.line07\n #_0EB1DF: db $0C, $0F ; spacing, 0x10 bytes\n #_0EB1E1: db $03, $08, $11, $04, $02, $13, $0E, $11\n\n; ---------------------------------------------------------\n\n; TAKASHI TEZUKA\n.line08\n #_0EB1E9: db $09, $1B ; spacing, 0x1C bytes\n #_0EB1EB: db $70, $5D, $67, $5D, $6F, $64, $65, $9F\n #_0EB1F3: db $70, $61, $76, $71, $67, $5D\n\n; ---------------------------------------------------------\n\n; TAKASHI TEZUKA\n.line09\n #_0EB1F9: db $09, $1B ; spacing, 0x1C bytes\n #_0EB1FB: db $96, $83, $8D, $83, $95, $8A, $8B, $9F\n #_0EB203: db $96, $87, $9C, $97, $8D, $83\n\n; ---------------------------------------------------------\n\n; SCRIPT WRITER\n.line0A\n #_0EB209: db $09, $19 ; spacing, 0x1A bytes\n #_0EB20B: db $4A, $3A, $49, $40, $47, $4B, $9F, $4E\n #_0EB213: db $49, $40, $4B, $3C, $49\n\n; ---------------------------------------------------------\n\n; KENSUKE TANABE\n.line0B\n #_0EB218: db $09, $1B ; spacing, 0x1C bytes\n #_0EB21A: db $67, $61, $6A, $6F, $71, $67, $61, $9F\n #_0EB222: db $70, $5D, $6A, $5D, $5E, $61\n\n; ---------------------------------------------------------\n\n; KENSUKE TANABE\n.line0C\n #_0EB228: db $09, $1B ; spacing, 0x1C bytes\n #_0EB22A: db $8D, $87, $90, $95, $97, $8D, $87, $9F\n #_0EB232: db $96, $83, $90, $83, $84, $87\n\n; ---------------------------------------------------------\n\n; ASSISTANT DIRECTORS\n.line0D\n #_0EB238: db $06, $25 ; spacing, 0x26 bytes\n #_0EB23A: db $1A, $2C, $2C, $22, $2C, $2D, $1A, $27\n #_0EB242: db $2D, $9F, $1D, $22, $2B, $1E, $1C, $2D\n #_0EB24A: db $28, $2B, $2C\n\n; ---------------------------------------------------------\n\n; YASUHISA YAMAMURA\n.line0E\n #_0EB24D: db $07, $21 ; spacing, 0x22 bytes\n #_0EB24F: db $75, $5D, $6F, $71, $64, $65, $6F, $5D\n #_0EB257: db $9F, $75, $5D, $69, $5D, $69, $71, $6E\n #_0EB25F: db $5D\n\n; ---------------------------------------------------------\n\n; YASUHISA YAMAMURA\n.line0F\n #_0EB260: db $07, $21 ; spacing, 0x22 bytes\n #_0EB262: db $9B, $83, $95, $97, $8A, $8B, $95, $83\n #_0EB26A: db $9F, $9B, $83, $8F, $83, $8F, $97, $94\n #_0EB272: db $83\n\n; ---------------------------------------------------------\n\n; YOICHI YAMADA\n.line10\n #_0EB273: db $09, $19 ; spacing, 0x1A bytes\n #_0EB275: db $75, $6B, $65, $5F, $64, $65, $9F, $75\n #_0EB27D: db $5D, $69, $5D, $60, $5D\n\n; ---------------------------------------------------------\n\n; YOICHI YAMADA\n.line11\n #_0EB282: db $09, $19 ; spacing, 0x1A bytes\n #_0EB284: db $9B, $91, $8B, $85, $8A, $8B, $9F, $9B\n #_0EB28C: db $83, $8F, $83, $86, $83\n\n; ---------------------------------------------------------\n\n; SCREEN GRAPHICS DESIGNERS\n.line12\n #_0EB291: db $03, $31 ; spacing, 0x32 bytes\n #_0EB293: db $4A, $3A, $49, $3C, $3C, $45, $9F, $3E\n #_0EB29B: db $49, $38, $47, $3F, $40, $3A, $4A, $9F\n #_0EB2A3: db $3B, $3C, $4A, $40, $3E, $45, $3C, $49\n #_0EB2AB: db $4A\n\n; ---------------------------------------------------------\n\n; OBJECT DESIGNERS\n.line13\n #_0EB2AC: db $08, $1F ; spacing, 0x20 bytes\n #_0EB2AE: db $28, $1B, $23, $1E, $1C, $2D, $9F, $1D\n #_0EB2B6: db $1E, $2C, $22, $20, $27, $1E, $2B, $2C\n\n; ---------------------------------------------------------\n\n; SOICHIRO TOMITA\n.line14\n #_0EB2BE: db $08, $1D ; spacing, 0x1E bytes\n #_0EB2C0: db $6F, $6B, $65, $5F, $64, $65, $6E, $6B\n #_0EB2C8: db $9F, $70, $6B, $69, $65, $70, $5D\n\n; ---------------------------------------------------------\n\n; SOICHIRO TOMITA\n.line15\n #_0EB2CF: db $08, $1D ; spacing, 0x1E bytes\n #_0EB2D1: db $95, $91, $8B, $85, $8A, $8B, $94, $91\n #_0EB2D9: db $9F, $96, $91, $8F, $8B, $96, $83\n\n; ---------------------------------------------------------\n\n; TAKAYA IMAMURA\n.line16\n #_0EB2E0: db $09, $1B ; spacing, 0x1C bytes\n #_0EB2E2: db $70, $5D, $67, $5D, $75, $5D, $9F, $65\n #_0EB2EA: db $69, $5D, $69, $71, $6E, $5D\n\n; ---------------------------------------------------------\n\n; TAKAYA IMAMURA\n.line17\n #_0EB2F0: db $09, $1B ; spacing, 0x1C bytes\n #_0EB2F2: db $96, $83, $8D, $83, $9B, $83, $9F, $8B\n #_0EB2FA: db $8F, $83, $8F, $97, $94, $83\n\n; ---------------------------------------------------------\n\n; BACK GROUND DESIGNERS\n.line18\n #_0EB300: db $05, $29 ; spacing, 0x2A bytes\n #_0EB302: db $1B, $1A, $1C, $24, $9F, $20, $2B, $28\n #_0EB30A: db $2E, $27, $1D, $9F, $1D, $1E, $2C, $22\n #_0EB312: db $20, $27, $1E, $2B, $2C\n\n; ---------------------------------------------------------\n\n; MASANAO ARIMOTO\n.line19\n #_0EB317: db $08, $1D ; spacing, 0x1E bytes\n #_0EB319: db $69, $5D, $6F, $5D, $6A, $5D, $6B, $9F\n #_0EB321: db $5D, $6E, $65, $69, $6B, $70, $6B\n\n; ---------------------------------------------------------\n\n; MASANAO ARIMOTO\n.line1A\n #_0EB328: db $08, $1D ; spacing, 0x1E bytes\n #_0EB32A: db $8F, $83, $95, $83, $90, $83, $91, $9F\n #_0EB332: db $83, $94, $8B, $8F, $91, $96, $91\n\n; ---------------------------------------------------------\n\n; TSUYOSHI WATANABE\n.line1B\n #_0EB339: db $07, $21 ; spacing, 0x22 bytes\n #_0EB33B: db $70, $6F, $71, $75, $6B, $6F, $64, $65\n #_0EB343: db $9F, $73, $5D, $70, $5D, $6A, $5D, $5E\n #_0EB34B: db $61\n\n; ---------------------------------------------------------\n\n; TSUYOSHI WATANABE\n.line1C\n #_0EB34C: db $07, $21 ; spacing, 0x22 bytes\n #_0EB34E: db $96, $95, $97, $9B, $91, $95, $8A, $8B\n #_0EB356: db $9F, $99, $83, $96, $83, $90, $83, $84\n #_0EB35E: db $87\n\n; ---------------------------------------------------------\n\n; PROGRAM DIRECTOR\n.line1D\n #_0EB35F: db $08, $1F ; spacing, 0x20 bytes\n #_0EB361: db $0F, $11, $0E, $06, $11, $00, $0C, $9F\n #_0EB369: db $03, $08, $11, $04, $02, $13, $0E, $11\n\n; ---------------------------------------------------------\n\n; TOSHIHIKO NAKAGO\n.line1E\n #_0EB371: db $08, $1F ; spacing, 0x20 bytes\n #_0EB373: db $70, $6B, $6F, $64, $65, $64, $65, $67\n #_0EB37B: db $6B, $9F, $6A, $5D, $67, $5D, $63, $6B\n\n; ---------------------------------------------------------\n\n; TOSHIHIKO NAKAGO\n.line1F\n #_0EB383: db $08, $1F ; spacing, 0x20 bytes\n #_0EB385: db $96, $91, $95, $8A, $8B, $8A, $8B, $8D\n #_0EB38D: db $91, $9F, $90, $83, $8D, $83, $89, $91\n\n; ---------------------------------------------------------\n\n; MAIN PROGRAMMER\n.line20\n #_0EB395: db $08, $1D ; spacing, 0x1E bytes\n #_0EB397: db $44, $38, $40, $45, $9F, $47, $49, $46\n #_0EB39F: db $3E, $49, $38, $44, $44, $3C, $49\n\n; ---------------------------------------------------------\n\n; YASUNARI SOEJIMA\n.line21\n #_0EB3A6: db $08, $1F ; spacing, 0x20 bytes\n #_0EB3A8: db $75, $5D, $6F, $71, $6A, $5D, $6E, $65\n #_0EB3B0: db $9F, $6F, $6B, $61, $66, $65, $69, $5D\n\n; ---------------------------------------------------------\n\n; YASUNARI SOEJIMA\n.line22\n #_0EB3B8: db $08, $1F ; spacing, 0x20 bytes\n #_0EB3BA: db $9B, $83, $95, $97, $90, $83, $94, $8B\n #_0EB3C2: db $9F, $95, $91, $87, $8C, $8B, $8F, $83\n\n; ---------------------------------------------------------\n\n; KAZUAKI MORITA\n.line24\n #_0EB3CA: db $09, $1B ; spacing, 0x1C bytes\n #_0EB3CC: db $67, $5D, $76, $71, $5D, $67, $65, $9F\n #_0EB3D4: db $69, $6B, $6E, $65, $70, $5D\n\n; ---------------------------------------------------------\n\n; KAZUAKI MORITA\n.line25\n #_0EB3DA: db $09, $1B ; spacing, 0x1C bytes\n #_0EB3DC: db $8D, $83, $9C, $97, $83, $8D, $8B, $9F\n #_0EB3E4: db $8F, $91, $94, $8B, $96, $83\n\n; ---------------------------------------------------------\n\n; PROGRAMMERS\n.line26\n #_0EB3EA: db $0A, $15 ; spacing, 0x16 bytes\n #_0EB3EC: db $29, $2B, $28, $20, $2B, $1A, $26, $26\n #_0EB3F4: db $1E, $2B, $2C\n\n; ---------------------------------------------------------\n\n; TATSUO NISHIYAMA\n.line27\n #_0EB3F7: db $08, $1F ; spacing, 0x20 bytes\n #_0EB3F9: db $70, $5D, $70, $6F, $71, $6B, $9F, $6A\n #_0EB401: db $65, $6F, $64, $65, $75, $5D, $69, $5D\n\n; ---------------------------------------------------------\n\n; TATSUO NISHIYAMA\n.line28\n #_0EB409: db $08, $1F ; spacing, 0x20 bytes\n #_0EB40B: db $96, $83, $96, $95, $97, $91, $9F, $90\n #_0EB413: db $8B, $95, $8A, $8B, $9B, $83, $8F, $83\n\n; ---------------------------------------------------------\n\n; YUICHI YAMAMOTO\n.line29\n #_0EB41B: db $08, $1D ; spacing, 0x1E bytes\n #_0EB41D: db $75, $71, $65, $5F, $64, $65, $9F, $75\n #_0EB425: db $5D, $69, $5D, $69, $6B, $70, $6B\n\n; ---------------------------------------------------------\n\n; YUICHI YAMAMOTO\n.line2A\n #_0EB42C: db $08, $1D ; spacing, 0x1E bytes\n #_0EB42E: db $9B, $97, $8B, $85, $8A, $8B, $9F, $9B\n #_0EB436: db $83, $8F, $83, $8F, $91, $96, $91\n\n; ---------------------------------------------------------\n\n; YOSHIHIRO NOMOTO\n.line2B\n #_0EB43D: db $08, $1F ; spacing, 0x20 bytes\n #_0EB43F: db $75, $6B, $6F, $64, $65, $64, $65, $6E\n #_0EB447: db $6B, $9F, $6A, $6B, $69, $6B, $70, $6B\n\n; ---------------------------------------------------------\n\n; YOSHIHIRO NOMOTO\n.line2C\n #_0EB44F: db $08, $1F ; spacing, 0x20 bytes\n #_0EB451: db $9B, $91, $95, $8A, $8B, $8A, $8B, $94\n #_0EB459: db $91, $9F, $90, $91, $8F, $91, $96, $91\n\n; ---------------------------------------------------------\n\n; EIJI NOTO\n.line2D\n #_0EB461: db $0B, $11 ; spacing, 0x12 bytes\n #_0EB463: db $61, $65, $66, $65, $9F, $6A, $6B, $70\n #_0EB46B: db $6B\n\n; ---------------------------------------------------------\n\n; EIJI NOTO\n.line2E\n #_0EB46C: db $0B, $11 ; spacing, 0x12 bytes\n #_0EB46E: db $87, $8B, $8C, $8B, $9F, $90, $91, $96\n #_0EB476: db $91\n\n; ---------------------------------------------------------\n\n; SATORU TAKAHATA\n.line2F\n #_0EB477: db $08, $1D ; spacing, 0x1E bytes\n #_0EB479: db $6F, $5D, $70, $6B, $6E, $71, $9F, $70\n #_0EB481: db $5D, $67, $5D, $64, $5D, $70, $5D\n\n; ---------------------------------------------------------\n\n; SATORU TAKAHATA\n.line30\n #_0EB488: db $08, $1D ; spacing, 0x1E bytes\n #_0EB48A: db $95, $83, $96, $91, $94, $97, $9F, $96\n #_0EB492: db $83, $8D, $83, $8A, $83, $96, $83\n\n; ---------------------------------------------------------\n\n; SOUND COMPOSER\n.line37\n #_0EB499: db $09, $1B ; spacing, 0x1C bytes\n #_0EB49B: db $12, $0E, $14, $0D, $03, $9F, $02, $0E\n #_0EB4A3: db $0C, $0F, $0E, $12, $04, $11\n\n; ---------------------------------------------------------\n\n; KOJI KONDO\n.line38\n #_0EB4A9: db $0B, $13 ; spacing, 0x14 bytes\n #_0EB4AB: db $67, $6B, $66, $65, $9F, $67, $6B, $6A\n #_0EB4B3: db $60, $6B\n\n; ---------------------------------------------------------\n\n; KOJI KONDO\n.line39\n #_0EB4B5: db $0B, $13 ; spacing, 0x14 bytes\n #_0EB4B7: db $8D, $91, $8C, $8B, $9F, $8D, $91, $90\n #_0EB4BF: db $86, $91\n\n; ---------------------------------------------------------\n\n; COORDINATORS\n.line3A\n #_0EB4C1: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB4C3: db $3A, $46, $46, $49, $3B, $40, $45, $38\n #_0EB4CB: db $4B, $46, $49, $4A\n\n; ---------------------------------------------------------\n\n; KEIZO KATO\n.line3B\n #_0EB4CF: db $0B, $13 ; spacing, 0x14 bytes\n #_0EB4D1: db $67, $61, $65, $76, $6B, $9F, $67, $5D\n #_0EB4D9: db $70, $6B\n\n; ---------------------------------------------------------\n\n; KEIZO KATO\n.line3C\n #_0EB4DB: db $0B, $13 ; spacing, 0x14 bytes\n #_0EB4DD: db $8D, $87, $8B, $9C, $91, $9F, $8D, $83\n #_0EB4E5: db $96, $91\n\n; ---------------------------------------------------------\n\n; TAKAO SHIMIZU\n.line3D\n #_0EB4E7: db $0A, $19 ; spacing, 0x1A bytes\n #_0EB4E9: db $70, $5D, $67, $5D, $6B, $9F, $6F, $64\n #_0EB4F1: db $65, $69, $65, $76, $71\n\n; ---------------------------------------------------------\n\n; TAKAO SHIMIZU\n.line3E\n #_0EB4F6: db $0A, $19 ; spacing, 0x1A bytes\n #_0EB4F8: db $96, $83, $8D, $83, $91, $9F, $95, $8A\n #_0EB500: db $8B, $8F, $8B, $9C, $97\n\n; ---------------------------------------------------------\n\n; PRINTED ART WORK\n.line3F\n #_0EB505: db $08, $1F ; spacing, 0x20 bytes\n #_0EB507: db $29, $2B, $22, $27, $2D, $1E, $1D, $9F\n #_0EB50F: db $1A, $2B, $2D, $9F, $30, $28, $2B, $24\n\n; ---------------------------------------------------------\n\n; YOICHI KOTABE\n.line40\n #_0EB517: db $09, $19 ; spacing, 0x1A bytes\n #_0EB519: db $75, $6B, $65, $5F, $64, $65, $9F, $67\n #_0EB521: db $6B, $70, $5D, $5E, $61\n\n; ---------------------------------------------------------\n\n; YOICHI KOTABE\n.line41\n #_0EB526: db $09, $19 ; spacing, 0x1A bytes\n #_0EB528: db $9B, $91, $8B, $85, $8A, $8B, $9F, $8D\n #_0EB530: db $91, $96, $83, $84, $87\n\n; ---------------------------------------------------------\n\n; HIDEKI FUJII\n.line42\n #_0EB535: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB537: db $64, $65, $60, $61, $67, $65, $9F, $62\n #_0EB53F: db $71, $66, $65, $65\n\n; ---------------------------------------------------------\n\n; HIDEKI FUJII\n.line43\n #_0EB543: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB545: db $8A, $8B, $86, $87, $8D, $8B, $9F, $88\n #_0EB54D: db $97, $8C, $8B, $8B\n\n; ---------------------------------------------------------\n\n; YOSHIAKI KOIZUMI\n.line44\n #_0EB551: db $08, $1F ; spacing, 0x20 bytes\n #_0EB553: db $75, $6B, $6F, $64, $65, $5D, $67, $65\n #_0EB55B: db $9F, $67, $6B, $65, $76, $71, $69, $65\n\n; ---------------------------------------------------------\n\n; YOSHIAKI KOIZUMI\n.line45\n #_0EB563: db $08, $1F ; spacing, 0x20 bytes\n #_0EB565: db $9B, $91, $95, $8A, $8B, $83, $8D, $8B\n #_0EB56D: db $9F, $8D, $91, $8B, $9C, $97, $8F, $8B\n\n; ---------------------------------------------------------\n\n; YASUHIRO SAKAI\n.line46\n #_0EB575: db $09, $1B ; spacing, 0x1C bytes\n #_0EB577: db $75, $5D, $6F, $71, $64, $65, $6E, $6B\n #_0EB57F: db $9F, $6F, $5D, $67, $5D, $65\n\n; ---------------------------------------------------------\n\n; YASUHIRO SAKAI\n.line47\n #_0EB585: db $09, $1B ; spacing, 0x1C bytes\n #_0EB587: db $9B, $83, $95, $97, $8A, $8B, $94, $91\n #_0EB58F: db $9F, $95, $83, $8D, $83, $8B\n\n; ---------------------------------------------------------\n\n; TOMOAKI KUROUME\n.line48\n #_0EB595: db $08, $1D ; spacing, 0x1E bytes\n #_0EB597: db $70, $6B, $69, $6B, $5D, $67, $65, $9F\n #_0EB59F: db $67, $71, $6E, $6B, $71, $69, $61\n\n; ---------------------------------------------------------\n\n; TOMOAKI KUROUME\n.line49\n #_0EB5A6: db $08, $1D ; spacing, 0x1E bytes\n #_0EB5A8: db $96, $91, $8F, $91, $83, $8D, $8B, $9F\n #_0EB5B0: db $8D, $97, $94, $91, $97, $8F, $87\n\n; ---------------------------------------------------------\n\n; SPECIAL THANKS TO\n.line4F\n #_0EB5B7: db $07, $21 ; spacing, 0x22 bytes\n #_0EB5B9: db $12, $0F, $04, $02, $08, $00, $0B, $9F\n #_0EB5C1: db $13, $07, $00, $0D, $0A, $12, $9F, $13\n #_0EB5C9: db $0E\n\n; ---------------------------------------------------------\n\n; NOBUO OKAJIMA\n.line50\n #_0EB5CA: db $09, $19 ; spacing, 0x1A bytes\n #_0EB5CC: db $6A, $6B, $5E, $71, $6B, $9F, $6B, $67\n #_0EB5D4: db $5D, $66, $65, $69, $5D\n\n; ---------------------------------------------------------\n\n; NOBUO OKAJIMA\n.line51\n #_0EB5D9: db $09, $19 ; spacing, 0x1A bytes\n #_0EB5DB: db $90, $91, $84, $97, $91, $9F, $91, $8D\n #_0EB5E3: db $83, $8C, $8B, $8F, $83\n\n; ---------------------------------------------------------\n\n; YASUNORI TAKETANI\n.line52\n #_0EB5E8: db $07, $21 ; spacing, 0x22 bytes\n #_0EB5EA: db $75, $5D, $6F, $71, $6A, $6B, $6E, $65\n #_0EB5F2: db $9F, $70, $5D, $67, $61, $70, $5D, $6A\n #_0EB5FA: db $65\n\n; ---------------------------------------------------------\n\n; YASUNORI TAKETANI\n.line53\n #_0EB5FB: db $07, $21 ; spacing, 0x22 bytes\n #_0EB5FD: db $9B, $83, $95, $97, $90, $91, $94, $8B\n #_0EB605: db $9F, $96, $83, $8D, $87, $96, $83, $90\n #_0EB60D: db $8B\n\n; ---------------------------------------------------------\n\n; KIYOSHI KODA\n.line54\n #_0EB60E: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB610: db $67, $65, $75, $6B, $6F, $64, $65, $9F\n #_0EB618: db $67, $6B, $60, $5D\n\n; ---------------------------------------------------------\n\n; KIYOSHI KODA\n.line55\n #_0EB61C: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB61E: db $8D, $8B, $9B, $91, $95, $8A, $8B, $9F\n #_0EB626: db $8D, $91, $86, $83\n\n; ---------------------------------------------------------\n\n; TAKAMITSU KUZUHARA\n.line56\n #_0EB62A: db $07, $23 ; spacing, 0x24 bytes\n #_0EB62C: db $70, $5D, $67, $5D, $69, $65, $70, $6F\n #_0EB634: db $71, $9F, $67, $71, $76, $71, $64, $5D\n #_0EB63C: db $6E, $5D\n\n; ---------------------------------------------------------\n\n; TAKAMITSU KUZUHARA\n.line57\n #_0EB63E: db $07, $23 ; spacing, 0x24 bytes\n #_0EB640: db $96, $83, $8D, $83, $8F, $8B, $96, $95\n #_0EB648: db $97, $9F, $8D, $97, $9C, $97, $8A, $83\n #_0EB650: db $94, $83\n\n; ---------------------------------------------------------\n\n; HIRONOBU KAKUI\n.line58\n #_0EB652: db $09, $1B ; spacing, 0x1C bytes\n #_0EB654: db $64, $65, $6E, $6B, $6A, $6B, $5E, $71\n #_0EB65C: db $9F, $67, $5D, $67, $71, $65\n\n; ---------------------------------------------------------\n\n; HIRONOBU KAKUI\n.line59\n #_0EB662: db $09, $1B ; spacing, 0x1C bytes\n #_0EB664: db $8A, $8B, $94, $91, $90, $91, $84, $97\n #_0EB66C: db $9F, $8D, $83, $8D, $97, $8B\n\n; ---------------------------------------------------------\n\n; SHIGEKI YAMASHIRO\n.line5A\n #_0EB672: db $07, $21 ; spacing, 0x22 bytes\n #_0EB674: db $6F, $64, $65, $63, $61, $67, $65, $9F\n #_0EB67C: db $75, $5D, $69, $5D, $6F, $64, $65, $6E\n #_0EB684: db $6B\n\n; ---------------------------------------------------------\n\n; SHIGEKI YAMASHIRO\n.line5B\n #_0EB685: db $07, $21 ; spacing, 0x22 bytes\n #_0EB687: db $95, $8A, $8B, $89, $87, $8D, $8B, $9F\n #_0EB68F: db $9B, $83, $8F, $83, $95, $8A, $8B, $94\n #_0EB697: db $91\n\n; ---------------------------------------------------------\n\n; OBJECT PROGRAMMER\n.line23\n #_0EB698: db $07, $21 ; spacing, 0x22 bytes\n #_0EB69A: db $46, $39, $41, $3C, $3A, $4B, $9F, $47\n #_0EB6A2: db $49, $46, $3E, $49, $38, $44, $44, $3C\n #_0EB6AA: db $49\n\n; ---------------------------------------------------------\n\n; TOSHIO IWAWAKI\n.line31\n #_0EB6AB: db $09, $1B ; spacing, 0x1C bytes\n #_0EB6AD: db $70, $6B, $6F, $64, $65, $6B, $9F, $65\n #_0EB6B5: db $73, $5D, $73, $5D, $67, $65\n\n; ---------------------------------------------------------\n\n; TOSHIO IWAWAKI\n.line32\n #_0EB6BB: db $09, $1B ; spacing, 0x1C bytes\n #_0EB6BD: db $96, $91, $95, $8A, $8B, $91, $9F, $8B\n #_0EB6C5: db $99, $83, $99, $83, $8D, $8B\n\n; ---------------------------------------------------------\n\n; SHIGEHIRO KASAMATSU\n.line33\n #_0EB6CB: db $06, $25 ; spacing, 0x26 bytes\n #_0EB6CD: db $6F, $64, $65, $63, $61, $64, $65, $6E\n #_0EB6D5: db $6B, $9F, $67, $5D, $6F, $5D, $69, $5D\n #_0EB6DD: db $70, $6F, $71\n\n; ---------------------------------------------------------\n\n; SHIGEHIRO KASAMATSU\n.line34\n #_0EB6E0: db $06, $25 ; spacing, 0x26 bytes\n #_0EB6E2: db $95, $8A, $8B, $89, $87, $8A, $8B, $94\n #_0EB6EA: db $91, $9F, $8D, $83, $95, $83, $8F, $83\n #_0EB6F2: db $96, $95, $97\n\n; ---------------------------------------------------------\n\n; QUEST HISTORY\n.line5C\n #_0EB6F5: db $0A, $19 ; spacing, 0x1A bytes\n #_0EB6F7: db $6D, $71, $61, $6F, $70, $9F, $64, $65\n #_0EB6FF: db $6F, $70, $6B, $6E, $75\n\n; ---------------------------------------------------------\n\n; QUEST HISTORY\n.line5D\n #_0EB704: db $0A, $19 ; spacing, 0x1A bytes\n #_0EB706: db $93, $97, $87, $95, $96, $9F, $8A, $8B\n #_0EB70E: db $95, $96, $91, $94, $9B\n\n; ---------------------------------------------------------\n\n; LOCATION GAMES\n.line5E\n #_0EB713: db $03, $33 ; spacing, 0x34 bytes\n #_0EB715: db $0B, $0E, $02, $00, $13, $08, $0E, $0D\n #_0EB71D: db $9F, $9F, $9F, $9F, $9F, $9F, $9F, $9F\n #_0EB725: db $9F, $9F, $9F, $9F, $9F, $06, $00, $0C\n #_0EB72D: db $04, $12\n\n; ---------------------------------------------------------\n\n; CASTLE OF HYRULE\n.line5F\n #_0EB72F: db $04, $1F ; spacing, 0x20 bytes\n #_0EB731: db $1C, $1A, $2C, $2D, $25, $1E, $9F, $28\n #_0EB739: db $1F, $9F, $21, $32, $2B, $2E, $25, $1E\n\n; ---------------------------------------------------------\n\n; CASTLE DUNGEON\n.line60\n #_0EB741: db $04, $1B ; spacing, 0x1C bytes\n #_0EB743: db $3A, $38, $4A, $4B, $43, $3C, $9F, $3B\n #_0EB74B: db $4C, $45, $3E, $3C, $46, $45\n\n; ---------------------------------------------------------\n\n; EAST PALACE\n.line61\n #_0EB751: db $04, $15 ; spacing, 0x16 bytes\n #_0EB753: db $1E, $1A, $2C, $2D, $9F, $29, $1A, $25\n #_0EB75B: db $1A, $1C, $1E\n\n; ---------------------------------------------------------\n\n; DESERT PALACE\n.line62\n #_0EB75E: db $04, $19 ; spacing, 0x1A bytes\n #_0EB760: db $3B, $3C, $4A, $3C, $49, $4B, $9F, $47\n #_0EB768: db $38, $43, $38, $3A, $3C\n\n; ---------------------------------------------------------\n\n; MOUNTAIN TOWER\n.line63\n #_0EB76D: db $04, $1B ; spacing, 0x1C bytes\n #_0EB76F: db $26, $28, $2E, $27, $2D, $1A, $22, $27\n #_0EB777: db $9F, $2D, $28, $30, $1E, $2B\n\n; ---------------------------------------------------------\n\n; 1 DARK PALACE\n.line64\n #_0EB77D: db $08, $19 ; spacing, 0x1A bytes\n #_0EB77F: db $54, $9F, $60, $5D, $6E, $67, $9F, $6C\n #_0EB787: db $5D, $68, $5D, $5F, $61\n\n; ---------------------------------------------------------\n\n; LEVEL1 DARK PALACE\n.line65\n #_0EB78C: db $03, $23 ; spacing, 0x24 bytes\n #_0EB78E: db $0B, $04, $15, $04, $0B, $7A, $9F, $86\n #_0EB796: db $83, $94, $8D, $9F, $92, $83, $8E, $83\n #_0EB79E: db $85, $87\n\n; ---------------------------------------------------------\n\n; 2 SWAMP PALACE\n.line66\n #_0EB7A0: db $08, $1B ; spacing, 0x1C bytes\n #_0EB7A2: db $55, $9F, $6F, $73, $5D, $69, $6C, $9F\n #_0EB7AA: db $6C, $5D, $68, $5D, $5F, $61\n\n; ---------------------------------------------------------\n\n; LEVEL2 SWAMP PALACE\n.line67\n #_0EB7B0: db $03, $25 ; spacing, 0x26 bytes\n #_0EB7B2: db $0B, $04, $15, $04, $0B, $7B, $9F, $95\n #_0EB7BA: db $99, $83, $8F, $92, $9F, $92, $83, $8E\n #_0EB7C2: db $83, $85, $87\n\n; ---------------------------------------------------------\n\n; 3 SKULL WOODS\n.line68\n #_0EB7C5: db $08, $19 ; spacing, 0x1A bytes\n #_0EB7C7: db $56, $9F, $6F, $67, $71, $68, $68, $9F\n #_0EB7CF: db $73, $6B, $6B, $60, $6F\n\n; ---------------------------------------------------------\n\n; LEVEL3 SKULL WOODS\n.line69\n #_0EB7D4: db $03, $23 ; spacing, 0x24 bytes\n #_0EB7D6: db $0B, $04, $15, $04, $0B, $7C, $9F, $95\n #_0EB7DE: db $8D, $97, $8E, $8E, $9F, $99, $91, $91\n #_0EB7E6: db $86, $95\n\n; ---------------------------------------------------------\n\n; 4 THIEVES'TOWN\n.line6A\n #_0EB7E8: db $08, $1B ; spacing, 0x1C bytes\n #_0EB7EA: db $57, $9F, $70, $64, $65, $61, $72, $61\n #_0EB7F2: db $6F, $77, $70, $6B, $73, $6A\n\n; ---------------------------------------------------------\n\n; LEVEL4 THIEVES'TOWN\n.line6B\n #_0EB7F8: db $03, $25 ; spacing, 0x26 bytes\n #_0EB7FA: db $0B, $04, $15, $04, $0B, $7D, $9F, $96\n #_0EB802: db $8A, $8B, $87, $98, $87, $95, $9D, $96\n #_0EB80A: db $91, $99, $90\n\n; ---------------------------------------------------------\n\n; 5 ICE PALACE\n.line6C\n #_0EB80D: db $08, $17 ; spacing, 0x18 bytes\n #_0EB80F: db $58, $9F, $65, $5F, $61, $9F, $6C, $5D\n #_0EB817: db $68, $5D, $5F, $61\n\n; ---------------------------------------------------------\n\n; LEVEL5 ICE PALACE\n.line6D\n #_0EB81B: db $03, $21 ; spacing, 0x22 bytes\n #_0EB81D: db $0B, $04, $15, $04, $0B, $7E, $9F, $8B\n #_0EB825: db $85, $87, $9F, $92, $83, $8E, $83, $85\n #_0EB82D: db $87\n\n; ---------------------------------------------------------\n\n; 6 MISERY MIRE\n.line6E\n #_0EB82E: db $08, $19 ; spacing, 0x1A bytes\n #_0EB830: db $59, $9F, $69, $65, $6F, $61, $6E, $75\n #_0EB838: db $9F, $69, $65, $6E, $61\n\n; ---------------------------------------------------------\n\n; LEVEL6 MISERY MIRE\n.line6F\n #_0EB83D: db $03, $23 ; spacing, 0x24 bytes\n #_0EB83F: db $0B, $04, $15, $04, $0B, $7F, $9F, $8F\n #_0EB847: db $8B, $95, $87, $94, $9B, $9F, $8F, $8B\n #_0EB84F: db $94, $87\n\n; ---------------------------------------------------------\n\n; 7 TURTLE ROCK\n.line70\n #_0EB851: db $08, $19 ; spacing, 0x1A bytes\n #_0EB853: db $5A, $9F, $70, $71, $6E, $70, $68, $61\n #_0EB85B: db $9F, $6E, $6B, $5F, $67\n\n; ---------------------------------------------------------\n\n; LEVEL7 TURTLE ROCK\n.line71\n #_0EB860: db $03, $23 ; spacing, 0x24 bytes\n #_0EB862: db $0B, $04, $15, $04, $0B, $80, $9F, $96\n #_0EB86A: db $97, $94, $96, $8E, $87, $9F, $94, $91\n #_0EB872: db $85, $8D\n\n; ---------------------------------------------------------\n\n; 8 GANON'S TOWER\n.line72\n #_0EB874: db $08, $1D ; spacing, 0x1E bytes\n #_0EB876: db $5B, $9F, $63, $5D, $6A, $6B, $6A, $77\n #_0EB87E: db $6F, $9F, $70, $6B, $73, $61, $6E\n\n; ---------------------------------------------------------\n\n; LEVEL8 GANON'S TOWER\n.line73\n #_0EB885: db $03, $27 ; spacing, 0x28 bytes\n #_0EB887: db $0B, $04, $15, $04, $0B, $81, $9F, $89\n #_0EB88F: db $83, $90, $91, $90, $9D, $95, $9F, $96\n #_0EB897: db $91, $99, $87, $94\n\n; ---------------------------------------------------------\n\n; TOTAL GAMES PLAYED\n.line74\n #_0EB89B: db $04, $23 ; spacing, 0x24 bytes\n #_0EB89D: db $70, $6B, $70, $5D, $68, $9F, $63, $5D\n #_0EB8A5: db $69, $61, $6F, $9F, $6C, $68, $5D, $75\n #_0EB8AD: db $61, $60\n\n; ---------------------------------------------------------\n\n; TOTAL GAMES PLAYED\n.line75\n #_0EB8AF: db $04, $23 ; spacing, 0x24 bytes\n #_0EB8B1: db $96, $91, $96, $83, $8E, $9F, $89, $83\n #_0EB8B9: db $8F, $87, $95, $9F, $92, $8E, $83, $9B\n #_0EB8C1: db $87, $86\n\n; ---------------------------------------------------------\n\n; YASUNARI NISHIDA\n.line35\n #_0EB8C3: db $08, $1F ; spacing, 0x20 bytes\n #_0EB8C5: db $75, $5D, $6F, $71, $6A, $5D, $6E, $65\n #_0EB8CD: db $9F, $6A, $65, $6F, $64, $65, $60, $5D\n\n; ---------------------------------------------------------\n\n; YASUNARI NISHIDA\n.line36\n #_0EB8D5: db $08, $1F ; spacing, 0x20 bytes\n #_0EB8D7: db $9B, $83, $95, $97, $90, $83, $94, $8B\n #_0EB8DF: db $9F, $90, $8B, $95, $8A, $8B, $86, $83\n\n; ---------------------------------------------------------\n\n; ENGLISH SCRIPT WRITERS\n.line4A\n #_0EB8E7: db $05, $2B ; spacing, 0x2C bytes\n #_0EB8E9: db $1E, $27, $20, $25, $22, $2C, $21, $9F\n #_0EB8F1: db $2C, $1C, $2B, $22, $29, $2D, $9F, $30\n #_0EB8F9: db $2B, $22, $2D, $1E, $2B, $2C\n\n; ---------------------------------------------------------\n\n; DANIEL OWSEN\n.line4B\n #_0EB8FF: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB901: db $60, $5D, $6A, $65, $61, $68, $9F, $6B\n #_0EB909: db $73, $6F, $61, $6A\n\n; ---------------------------------------------------------\n\n; DANIEL OWSEN\n.line4C\n #_0EB90D: db $0A, $17 ; spacing, 0x18 bytes\n #_0EB90F: db $86, $83, $90, $8B, $87, $8E, $9F, $91\n #_0EB917: db $99, $95, $87, $90\n\n; ---------------------------------------------------------\n\n; HIROYUKI YAMADA\n.line4D\n #_0EB91B: db $08, $1D ; spacing, 0x1E bytes\n #_0EB91D: db $64, $65, $6E, $6B, $75, $71, $67, $65\n #_0EB925: db $9F, $75, $5D, $69, $5D, $60, $5D\n\n; ---------------------------------------------------------\n\n; HIROYUKI YAMADA\n.line4E\n #_0EB92C: db $08, $1D ; spacing, 0x1E bytes\n #_0EB92E: db $8A, $8B, $94, $91, $9B, $97, $8D, $8B\n #_0EB936: db $9F, $9B, $83, $8F, $83, $86, $83\n\n; ---------------------------------------------------------\n\n.pointers\n #_0EB93D: dw .line00-.data ; $0000\n #_0EB93F: dw .line01-.data ; $0014\n #_0EB941: dw .line01-.data ; $0014\n #_0EB943: dw .line01-.data ; $0014\n #_0EB945: dw .line02-.data ; $0015\n #_0EB947: dw .line03-.data ; $0027\n #_0EB949: dw .line01-.data ; $0014\n #_0EB94B: dw .line01-.data ; $0014\n #_0EB94D: dw .line01-.data ; $0014\n #_0EB94F: dw .line01-.data ; $0014\n #_0EB951: dw .line01-.data ; $0014\n #_0EB953: dw .line01-.data ; $0014\n #_0EB955: dw .line01-.data ; $0014\n #_0EB957: dw .line01-.data ; $0014\n #_0EB959: dw .line04-.data ; $0039\n #_0EB95B: dw .line01-.data ; $0014\n #_0EB95D: dw .line01-.data ; $0014\n #_0EB95F: dw .line01-.data ; $0014\n #_0EB961: dw .line05-.data ; $0043\n #_0EB963: dw .line06-.data ; $0055\n #_0EB965: dw .line01-.data ; $0014\n #_0EB967: dw .line01-.data ; $0014\n #_0EB969: dw .line01-.data ; $0014\n #_0EB96B: dw .line01-.data ; $0014\n #_0EB96D: dw .line01-.data ; $0014\n #_0EB96F: dw .line01-.data ; $0014\n #_0EB971: dw .line01-.data ; $0014\n #_0EB973: dw .line01-.data ; $0014\n #_0EB975: dw .line07-.data ; $0067\n #_0EB977: dw .line01-.data ; $0014\n #_0EB979: dw .line01-.data ; $0014\n #_0EB97B: dw .line01-.data ; $0014\n #_0EB97D: dw .line08-.data ; $0071\n #_0EB97F: dw .line09-.data ; $0081\n #_0EB981: dw .line01-.data ; $0014\n #_0EB983: dw .line01-.data ; $0014\n #_0EB985: dw .line01-.data ; $0014\n #_0EB987: dw .line01-.data ; $0014\n #_0EB989: dw .line01-.data ; $0014\n #_0EB98B: dw .line01-.data ; $0014\n #_0EB98D: dw .line01-.data ; $0014\n #_0EB98F: dw .line01-.data ; $0014\n #_0EB991: dw .line0A-.data ; $0091\n #_0EB993: dw .line01-.data ; $0014\n #_0EB995: dw .line01-.data ; $0014\n #_0EB997: dw .line01-.data ; $0014\n #_0EB999: dw .line0B-.data ; $00A0\n #_0EB99B: dw .line0C-.data ; $00B0\n #_0EB99D: dw .line01-.data ; $0014\n #_0EB99F: dw .line01-.data ; $0014\n #_0EB9A1: dw .line01-.data ; $0014\n #_0EB9A3: dw .line01-.data ; $0014\n #_0EB9A5: dw .line01-.data ; $0014\n #_0EB9A7: dw .line01-.data ; $0014\n #_0EB9A9: dw .line01-.data ; $0014\n #_0EB9AB: dw .line01-.data ; $0014\n #_0EB9AD: dw .line0D-.data ; $00C0\n #_0EB9AF: dw .line01-.data ; $0014\n #_0EB9B1: dw .line01-.data ; $0014\n #_0EB9B3: dw .line01-.data ; $0014\n #_0EB9B5: dw .line0E-.data ; $00D5\n #_0EB9B7: dw .line0F-.data ; $00E8\n #_0EB9B9: dw .line01-.data ; $0014\n #_0EB9BB: dw .line01-.data ; $0014\n #_0EB9BD: dw .line10-.data ; $00FB\n #_0EB9BF: dw .line11-.data ; $010A\n #_0EB9C1: dw .line01-.data ; $0014\n #_0EB9C3: dw .line01-.data ; $0014\n #_0EB9C5: dw .line01-.data ; $0014\n #_0EB9C7: dw .line01-.data ; $0014\n #_0EB9C9: dw .line01-.data ; $0014\n #_0EB9CB: dw .line01-.data ; $0014\n #_0EB9CD: dw .line01-.data ; $0014\n #_0EB9CF: dw .line01-.data ; $0014\n #_0EB9D1: dw .line12-.data ; $0119\n #_0EB9D3: dw .line01-.data ; $0014\n #_0EB9D5: dw .line13-.data ; $0134\n #_0EB9D7: dw .line01-.data ; $0014\n #_0EB9D9: dw .line01-.data ; $0014\n #_0EB9DB: dw .line01-.data ; $0014\n #_0EB9DD: dw .line14-.data ; $0146\n #_0EB9DF: dw .line15-.data ; $0157\n #_0EB9E1: dw .line01-.data ; $0014\n #_0EB9E3: dw .line01-.data ; $0014\n #_0EB9E5: dw .line16-.data ; $0168\n #_0EB9E7: dw .line17-.data ; $0178\n #_0EB9E9: dw .line01-.data ; $0014\n #_0EB9EB: dw .line01-.data ; $0014\n #_0EB9ED: dw .line01-.data ; $0014\n #_0EB9EF: dw .line01-.data ; $0014\n #_0EB9F1: dw .line01-.data ; $0014\n #_0EB9F3: dw .line01-.data ; $0014\n #_0EB9F5: dw .line01-.data ; $0014\n #_0EB9F7: dw .line01-.data ; $0014\n #_0EB9F9: dw .line18-.data ; $0188\n #_0EB9FB: dw .line01-.data ; $0014\n #_0EB9FD: dw .line01-.data ; $0014\n #_0EB9FF: dw .line01-.data ; $0014\n #_0EBA01: dw .line19-.data ; $019F\n #_0EBA03: dw .line1A-.data ; $01B0\n #_0EBA05: dw .line01-.data ; $0014\n #_0EBA07: dw .line01-.data ; $0014\n #_0EBA09: dw .line1B-.data ; $01C1\n #_0EBA0B: dw .line1C-.data ; $01D4\n #_0EBA0D: dw .line01-.data ; $0014\n #_0EBA0F: dw .line01-.data ; $0014\n #_0EBA11: dw .line01-.data ; $0014\n #_0EBA13: dw .line01-.data ; $0014\n #_0EBA15: dw .line01-.data ; $0014\n #_0EBA17: dw .line01-.data ; $0014\n #_0EBA19: dw .line01-.data ; $0014\n #_0EBA1B: dw .line01-.data ; $0014\n #_0EBA1D: dw .line01-.data ; $0014\n #_0EBA1F: dw .line01-.data ; $0014\n #_0EBA21: dw .line1D-.data ; $01E7\n #_0EBA23: dw .line01-.data ; $0014\n #_0EBA25: dw .line01-.data ; $0014\n #_0EBA27: dw .line01-.data ; $0014\n #_0EBA29: dw .line1E-.data ; $01F9\n #_0EBA2B: dw .line1F-.data ; $020B\n #_0EBA2D: dw .line01-.data ; $0014\n #_0EBA2F: dw .line01-.data ; $0014\n #_0EBA31: dw .line01-.data ; $0014\n #_0EBA33: dw .line01-.data ; $0014\n #_0EBA35: dw .line01-.data ; $0014\n #_0EBA37: dw .line01-.data ; $0014\n #_0EBA39: dw .line01-.data ; $0014\n #_0EBA3B: dw .line01-.data ; $0014\n #_0EBA3D: dw .line20-.data ; $021D\n #_0EBA3F: dw .line01-.data ; $0014\n #_0EBA41: dw .line01-.data ; $0014\n #_0EBA43: dw .line01-.data ; $0014\n #_0EBA45: dw .line21-.data ; $022E\n #_0EBA47: dw .line22-.data ; $0240\n #_0EBA49: dw .line01-.data ; $0014\n #_0EBA4B: dw .line01-.data ; $0014\n #_0EBA4D: dw .line01-.data ; $0014\n #_0EBA4F: dw .line01-.data ; $0014\n #_0EBA51: dw .line01-.data ; $0014\n #_0EBA53: dw .line01-.data ; $0014\n #_0EBA55: dw .line01-.data ; $0014\n #_0EBA57: dw .line01-.data ; $0014\n #_0EBA59: dw .line23-.data ; $0520\n #_0EBA5B: dw .line01-.data ; $0014\n #_0EBA5D: dw .line01-.data ; $0014\n #_0EBA5F: dw .line01-.data ; $0014\n #_0EBA61: dw .line24-.data ; $0252\n #_0EBA63: dw .line25-.data ; $0262\n #_0EBA65: dw .line01-.data ; $0014\n #_0EBA67: dw .line01-.data ; $0014\n #_0EBA69: dw .line01-.data ; $0014\n #_0EBA6B: dw .line01-.data ; $0014\n #_0EBA6D: dw .line01-.data ; $0014\n #_0EBA6F: dw .line01-.data ; $0014\n #_0EBA71: dw .line01-.data ; $0014\n #_0EBA73: dw .line01-.data ; $0014\n #_0EBA75: dw .line26-.data ; $0272\n #_0EBA77: dw .line01-.data ; $0014\n #_0EBA79: dw .line01-.data ; $0014\n #_0EBA7B: dw .line01-.data ; $0014\n #_0EBA7D: dw .line27-.data ; $027F\n #_0EBA7F: dw .line28-.data ; $0291\n #_0EBA81: dw .line01-.data ; $0014\n #_0EBA83: dw .line01-.data ; $0014\n #_0EBA85: dw .line29-.data ; $02A3\n #_0EBA87: dw .line2A-.data ; $02B4\n #_0EBA89: dw .line01-.data ; $0014\n #_0EBA8B: dw .line01-.data ; $0014\n #_0EBA8D: dw .line2B-.data ; $02C5\n #_0EBA8F: dw .line2C-.data ; $02D7\n #_0EBA91: dw .line01-.data ; $0014\n #_0EBA93: dw .line01-.data ; $0014\n #_0EBA95: dw .line2D-.data ; $02E9\n #_0EBA97: dw .line2E-.data ; $02F4\n #_0EBA99: dw .line01-.data ; $0014\n #_0EBA9B: dw .line01-.data ; $0014\n #_0EBA9D: dw .line2F-.data ; $02FF\n #_0EBA9F: dw .line30-.data ; $0310\n #_0EBAA1: dw .line01-.data ; $0014\n #_0EBAA3: dw .line01-.data ; $0014\n #_0EBAA5: dw .line31-.data ; $0533\n #_0EBAA7: dw .line32-.data ; $0543\n #_0EBAA9: dw .line01-.data ; $0014\n #_0EBAAB: dw .line01-.data ; $0014\n #_0EBAAD: dw .line33-.data ; $0553\n #_0EBAAF: dw .line34-.data ; $0568\n #_0EBAB1: dw .line01-.data ; $0014\n #_0EBAB3: dw .line01-.data ; $0014\n #_0EBAB5: dw .line35-.data ; $074B\n #_0EBAB7: dw .line36-.data ; $075D\n #_0EBAB9: dw .line01-.data ; $0014\n #_0EBABB: dw .line01-.data ; $0014\n #_0EBABD: dw .line01-.data ; $0014\n #_0EBABF: dw .line01-.data ; $0014\n #_0EBAC1: dw .line01-.data ; $0014\n #_0EBAC3: dw .line01-.data ; $0014\n #_0EBAC5: dw .line01-.data ; $0014\n #_0EBAC7: dw .line01-.data ; $0014\n #_0EBAC9: dw .line01-.data ; $0014\n #_0EBACB: dw .line01-.data ; $0014\n #_0EBACD: dw .line37-.data ; $0321\n #_0EBACF: dw .line01-.data ; $0014\n #_0EBAD1: dw .line01-.data ; $0014\n #_0EBAD3: dw .line01-.data ; $0014\n #_0EBAD5: dw .line38-.data ; $0331\n #_0EBAD7: dw .line39-.data ; $033D\n #_0EBAD9: dw .line01-.data ; $0014\n #_0EBADB: dw .line01-.data ; $0014\n #_0EBADD: dw .line01-.data ; $0014\n #_0EBADF: dw .line01-.data ; $0014\n #_0EBAE1: dw .line01-.data ; $0014\n #_0EBAE3: dw .line01-.data ; $0014\n #_0EBAE5: dw .line01-.data ; $0014\n #_0EBAE7: dw .line01-.data ; $0014\n #_0EBAE9: dw .line3A-.data ; $0349\n #_0EBAEB: dw .line01-.data ; $0014\n #_0EBAED: dw .line01-.data ; $0014\n #_0EBAEF: dw .line01-.data ; $0014\n #_0EBAF1: dw .line3B-.data ; $0357\n #_0EBAF3: dw .line3C-.data ; $0363\n #_0EBAF5: dw .line01-.data ; $0014\n #_0EBAF7: dw .line01-.data ; $0014\n #_0EBAF9: dw .line3D-.data ; $036F\n #_0EBAFB: dw .line3E-.data ; $037E\n #_0EBAFD: dw .line01-.data ; $0014\n #_0EBAFF: dw .line01-.data ; $0014\n #_0EBB01: dw .line01-.data ; $0014\n #_0EBB03: dw .line01-.data ; $0014\n #_0EBB05: dw .line01-.data ; $0014\n #_0EBB07: dw .line01-.data ; $0014\n #_0EBB09: dw .line01-.data ; $0014\n #_0EBB0B: dw .line01-.data ; $0014\n #_0EBB0D: dw .line3F-.data ; $038D\n #_0EBB0F: dw .line01-.data ; $0014\n #_0EBB11: dw .line01-.data ; $0014\n #_0EBB13: dw .line01-.data ; $0014\n #_0EBB15: dw .line40-.data ; $039F\n #_0EBB17: dw .line41-.data ; $03AE\n #_0EBB19: dw .line01-.data ; $0014\n #_0EBB1B: dw .line01-.data ; $0014\n #_0EBB1D: dw .line42-.data ; $03BD\n #_0EBB1F: dw .line43-.data ; $03CB\n #_0EBB21: dw .line01-.data ; $0014\n #_0EBB23: dw .line01-.data ; $0014\n #_0EBB25: dw .line44-.data ; $03D9\n #_0EBB27: dw .line45-.data ; $03EB\n #_0EBB29: dw .line01-.data ; $0014\n #_0EBB2B: dw .line01-.data ; $0014\n #_0EBB2D: dw .line46-.data ; $03FD\n #_0EBB2F: dw .line47-.data ; $040D\n #_0EBB31: dw .line01-.data ; $0014\n #_0EBB33: dw .line01-.data ; $0014\n #_0EBB35: dw .line48-.data ; $041D\n #_0EBB37: dw .line49-.data ; $042E\n #_0EBB39: dw .line01-.data ; $0014\n #_0EBB3B: dw .line01-.data ; $0014\n #_0EBB3D: dw .line01-.data ; $0014\n #_0EBB3F: dw .line01-.data ; $0014\n #_0EBB41: dw .line01-.data ; $0014\n #_0EBB43: dw .line01-.data ; $0014\n #_0EBB45: dw .line01-.data ; $0014\n #_0EBB47: dw .line01-.data ; $0014\n #_0EBB49: dw .line01-.data ; $0014\n #_0EBB4B: dw .line01-.data ; $0014\n #_0EBB4D: dw .line4A-.data ; $076F\n #_0EBB4F: dw .line01-.data ; $0014\n #_0EBB51: dw .line01-.data ; $0014\n #_0EBB53: dw .line01-.data ; $0014\n #_0EBB55: dw .line4B-.data ; $0787\n #_0EBB57: dw .line4C-.data ; $0795\n #_0EBB59: dw .line01-.data ; $0014\n #_0EBB5B: dw .line01-.data ; $0014\n #_0EBB5D: dw .line4D-.data ; $07A3\n #_0EBB5F: dw .line4E-.data ; $07B4\n #_0EBB61: dw .line01-.data ; $0014\n #_0EBB63: dw .line01-.data ; $0014\n #_0EBB65: dw .line01-.data ; $0014\n #_0EBB67: dw .line01-.data ; $0014\n #_0EBB69: dw .line01-.data ; $0014\n #_0EBB6B: dw .line01-.data ; $0014\n #_0EBB6D: dw .line01-.data ; $0014\n #_0EBB6F: dw .line01-.data ; $0014\n #_0EBB71: dw .line4F-.data ; $043F\n #_0EBB73: dw .line01-.data ; $0014\n #_0EBB75: dw .line01-.data ; $0014\n #_0EBB77: dw .line01-.data ; $0014\n #_0EBB79: dw .line50-.data ; $0452\n #_0EBB7B: dw .line51-.data ; $0461\n #_0EBB7D: dw .line01-.data ; $0014\n #_0EBB7F: dw .line01-.data ; $0014\n #_0EBB81: dw .line52-.data ; $0470\n #_0EBB83: dw .line53-.data ; $0483\n #_0EBB85: dw .line01-.data ; $0014\n #_0EBB87: dw .line01-.data ; $0014\n #_0EBB89: dw .line54-.data ; $0496\n #_0EBB8B: dw .line55-.data ; $04A4\n #_0EBB8D: dw .line01-.data ; $0014\n #_0EBB8F: dw .line01-.data ; $0014\n #_0EBB91: dw .line56-.data ; $04B2\n #_0EBB93: dw .line57-.data ; $04C6\n #_0EBB95: dw .line01-.data ; $0014\n #_0EBB97: dw .line01-.data ; $0014\n #_0EBB99: dw .line58-.data ; $04DA\n #_0EBB9B: dw .line59-.data ; $04EA\n #_0EBB9D: dw .line01-.data ; $0014\n #_0EBB9F: dw .line01-.data ; $0014\n #_0EBBA1: dw .line5A-.data ; $04FA\n #_0EBBA3: dw .line5B-.data ; $050D\n #_0EBBA5: dw .line01-.data ; $0014\n #_0EBBA7: dw .line01-.data ; $0014\n #_0EBBA9: dw .line01-.data ; $0014\n #_0EBBAB: dw .line01-.data ; $0014\n #_0EBBAD: dw .line01-.data ; $0014\n #_0EBBAF: dw .line01-.data ; $0014\n #_0EBBB1: dw .line01-.data ; $0014\n #_0EBBB3: dw .line01-.data ; $0014\n #_0EBBB5: dw .line01-.data ; $0014\n #_0EBBB7: dw .line01-.data ; $0014\n #_0EBBB9: dw .line01-.data ; $0014\n #_0EBBBB: dw .line01-.data ; $0014\n #_0EBBBD: dw .line01-.data ; $0014\n #_0EBBBF: dw .line01-.data ; $0014\n #_0EBBC1: dw .line5C-.data ; $057D\n #_0EBBC3: dw .line5D-.data ; $058C\n #_0EBBC5: dw .line01-.data ; $0014\n #_0EBBC7: dw .line01-.data ; $0014\n #_0EBBC9: dw .line5E-.data ; $059B\n #_0EBBCB: dw .line01-.data ; $0014\n #_0EBBCD: dw .line01-.data ; $0014\n #_0EBBCF: dw .line5F-.data ; $05B7\n #_0EBBD1: dw .line01-.data ; $0014\n #_0EBBD3: dw .line01-.data ; $0014\n #_0EBBD5: dw .line01-.data ; $0014\n #_0EBBD7: dw .line60-.data ; $05C9\n #_0EBBD9: dw .line01-.data ; $0014\n #_0EBBDB: dw .line01-.data ; $0014\n #_0EBBDD: dw .line01-.data ; $0014\n #_0EBBDF: dw .line61-.data ; $05D9\n #_0EBBE1: dw .line01-.data ; $0014\n #_0EBBE3: dw .line01-.data ; $0014\n #_0EBBE5: dw .line01-.data ; $0014\n #_0EBBE7: dw .line62-.data ; $05E6\n #_0EBBE9: dw .line01-.data ; $0014\n #_0EBBEB: dw .line01-.data ; $0014\n #_0EBBED: dw .line01-.data ; $0014\n #_0EBBEF: dw .line63-.data ; $05F5\n #_0EBBF1: dw .line01-.data ; $0014\n #_0EBBF3: dw .line01-.data ; $0014\n #_0EBBF5: dw .line01-.data ; $0014\n #_0EBBF7: dw .line64-.data ; $0605\n #_0EBBF9: dw .line65-.data ; $0614\n #_0EBBFB: dw .line01-.data ; $0014\n #_0EBBFD: dw .line01-.data ; $0014\n #_0EBBFF: dw .line66-.data ; $0628\n #_0EBC01: dw .line67-.data ; $0638\n #_0EBC03: dw .line01-.data ; $0014\n #_0EBC05: dw .line01-.data ; $0014\n #_0EBC07: dw .line68-.data ; $064D\n #_0EBC09: dw .line69-.data ; $065C\n #_0EBC0B: dw .line01-.data ; $0014\n #_0EBC0D: dw .line01-.data ; $0014\n #_0EBC0F: dw .line6A-.data ; $0670\n #_0EBC11: dw .line6B-.data ; $0680\n #_0EBC13: dw .line01-.data ; $0014\n #_0EBC15: dw .line01-.data ; $0014\n #_0EBC17: dw .line6C-.data ; $0695\n #_0EBC19: dw .line6D-.data ; $06A3\n #_0EBC1B: dw .line01-.data ; $0014\n #_0EBC1D: dw .line01-.data ; $0014\n #_0EBC1F: dw .line6E-.data ; $06B6\n #_0EBC21: dw .line6F-.data ; $06C5\n #_0EBC23: dw .line01-.data ; $0014\n #_0EBC25: dw .line01-.data ; $0014\n #_0EBC27: dw .line70-.data ; $06D9\n #_0EBC29: dw .line71-.data ; $06E8\n #_0EBC2B: dw .line01-.data ; $0014\n #_0EBC2D: dw .line01-.data ; $0014\n #_0EBC2F: dw .line72-.data ; $06FC\n #_0EBC31: dw .line73-.data ; $070D\n #_0EBC33: dw .line01-.data ; $0014\n #_0EBC35: dw .line01-.data ; $0014\n #_0EBC37: dw .line01-.data ; $0014\n #_0EBC39: dw .line01-.data ; $0014\n #_0EBC3B: dw .line01-.data ; $0014\n #_0EBC3D: dw .line01-.data ; $0014\n #_0EBC3F: dw .line01-.data ; $0014\n #_0EBC41: dw .line01-.data ; $0014\n #_0EBC43: dw .line01-.data ; $0014\n #_0EBC45: dw .line01-.data ; $0014\n #_0EBC47: dw .line01-.data ; $0014\n #_0EBC49: dw .line01-.data ; $0014\n #_0EBC4B: dw .line01-.data ; $0014\n #_0EBC4D: dw .line74-.data ; $0723\n #_0EBC4F: dw .line75-.data ; $0737\n\n\n; ---------------------------------------------------------\n\n.stats_lines\n #_0EBC51: dw $0290\n #_0EBC53: dw $0298\n #_0EBC55: dw $02A0\n #_0EBC57: dw $02A8\n #_0EBC59: dw $02B0\n #_0EBC5B: dw $02BA\n #_0EBC5D: dw $02C2\n #_0EBC5F: dw $02CA\n #_0EBC61: dw $02D2\n #_0EBC63: dw $02DA\n #_0EBC65: dw $02E2\n #_0EBC67: dw $02EA\n #_0EBC69: dw $02F2\n #_0EBC6B: dw $0310\n\npool off\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_InitializeTheActualCredits", + "code": "Credits_InitializeTheActualCredits:\n #_0EBC6D: JSL EnableForceBlank\n\n #_0EBC71: JSL EraseTilemaps_triforce\n #_0EBC75: JSL TransferFontToVRAM\n\n #_0EBC79: JSL Credits_LoadCoolBackground\n #_0EBC7D: JSL Credits_InitializePolyhedral\n\n #_0EBC81: LDA.b #$80\n #_0EBC83: STA.b $13\n\n #_0EBC85: LDA.b #$02\n #_0EBC87: STA.w $0AA9\n\n #_0EBC8A: LDA.b #$01\n #_0EBC8C: STA.w $0AB2\n\n #_0EBC8F: JSL Palettes_Load_HUD\n\n #_0EBC93: INC.b $15\n\n; ---------------------------------------------------------\n\n #_0EBC95: REP #$20\n\n #_0EBC97: LDA.w #$0000\n #_0EBC9A: STA.l $7EF3EF\n\n #_0EBC9E: LDA.l $7EF403\n #_0EBCA2: CLC\n #_0EBCA3: ADC.l $7EF401\n #_0EBCA7: STA.l $7EF401\n\n #_0EBCAB: LDX.b #$18\n\n.next_death:\n #_0EBCAD: CLC\n #_0EBCAE: ADC.l $7EF3E7,X\n #_0EBCB2: STA.l $7EF405\n\n #_0EBCB6: DEX\n #_0EBCB7: DEX\n #_0EBCB8: BPL .next_death\n\n; ---------------------------------------------------------\n\n #_0EBCBA: LDA.w #$0000\n #_0EBCBD: STA.l $7EF403\n\n #_0EBCC1: SEP #$20\n\n #_0EBCC3: LDA.l $7EF36C\n #_0EBCC7: LSR A\n #_0EBCC8: LSR A\n #_0EBCC9: LSR A\n #_0EBCCA: TAX\n\n #_0EBCCB: LDA.l MaxHealthBasedSpawnHP,X\n #_0EBCCF: STA.l $7EF36D\n\n #_0EBCD3: LDA.b #$40\n #_0EBCD5: STA.l $7EF3CA\n\n; ---------------------------------------------------------\n\n #_0EBCD9: JSL SaveGameFile\n\n #_0EBCDD: REP #$20\n\n #_0EBCDF: LDA.w #$0000 ; RGB: #000000\n #_0EBCE2: STA.l $7EC34C\n #_0EBCE6: STA.l $7EC54C\n\n #_0EBCEA: LDA.w #$0000 ; RGB: #000000\n #_0EBCED: STA.l $7EC300\n #_0EBCF1: STA.l $7EC500\n\n #_0EBCF5: LDA.w #$0016\n #_0EBCF8: STA.b $1C\n\n #_0EBCFA: LDA.w #$6800\n #_0EBCFD: STA.b $C8\n\n #_0EBCFF: STZ.b $CA\n #_0EBD01: STZ.b $CC\n\n #_0EBD03: LDA.w #$FFB8\n #_0EBD06: STA.b $E8\n\n #_0EBD08: LDA.w #$0090\n #_0EBD0B: STA.b $E2\n\n #_0EBD0D: STZ.b $EA\n #_0EBD0F: STZ.b $E4\n\n; ---------------------------------------------------------\n\n #_0EBD11: JSR Credits_AddNextAttribution\n\n #_0EBD14: SEP #$20\n\n #_0EBD16: LDA.b #$22 ; SONG 22\n #_0EBD18: STA.w $012C\n\n #_0EBD1B: STZ.b $99\n\n #_0EBD1D: LDA.b #$A2\n #_0EBD1F: STA.b $9A\n\n #_0EBD21: LDA.b #$12\n #_0EBD23: STA.w BG2SC\n\n #_0EBD26: LDA.b #$3F ; Fixed color RGB: #F8F8F8\n #_0EBD28: STA.b $9C\n\n #_0EBD2A: LDA.b #$5F\n #_0EBD2C: STA.b $9D\n\n #_0EBD2E: LDA.b #$9F\n #_0EBD30: STA.b $9E\n\n #_0EBD32: LDA.b #$40\n #_0EBD34: STA.b $B0\n\n #_0EBD36: STZ.b $13\n\n; ---------------------------------------------------------\n\n #_0EBD38: LDX.b #$04\n\n.next_prop\n #_0EBD3A: LDA.l .hdma_data,X\n #_0EBD3E: STA.w DMA7MODE,X\n\n #_0EBD41: DEX\n #_0EBD42: BPL .next_prop\n\n #_0EBD44: STZ.w HDMA7INDIRECTB\n\n #_0EBD47: LDA.b #$80\n #_0EBD49: STA.b $9B\n\n #_0EBD4B: BRL Credits_SyncBGScrolls\n\n; ---------------------------------------------------------\n\n.hdma_data\n #_0EBD4E: db $42\n #_0EBD4F: db BG2HOFS\n #_0EBD50: dl .indirect_table\n\n.indirect_table\n #_0EBD53: db 82 : dw $000600\n #_0EBD56: db 8 : dw $0000E2\n #_0EBD59: db 8 : dw $000602\n #_0EBD5C: db 5 : dw $000604\n #_0EBD5F: db 16 : dw $000606\n #_0EBD62: db $81 : dw $0000E2\n #_0EBD65: db $00 ; end\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_FadeOutFixedCol", + "code": "Credits_FadeOutFixedCol:\n #_0EBD66: DEC.b $B0\n #_0EBD68: BNE .exit\n\n #_0EBD6A: LDA.b #$10\n #_0EBD6C: STA.b $B0\n\n #_0EBD6E: LDA.b $9C\n #_0EBD70: CMP.b #$20\n #_0EBD72: BEQ .zero_red\n\n #_0EBD74: DEC.b $9C\n\n #_0EBD76: BRA .exit\n\n; ---------------------------------------------------------\n\n.zero_red\n #_0EBD78: LDA.b $9D\n #_0EBD7A: CMP.b #$40\n #_0EBD7C: BEQ .zero_green\n\n #_0EBD7E: DEC.b $9D\n\n #_0EBD80: BRA .exit\n\n; ---------------------------------------------------------\n\n.zero_green\n #_0EBD82: LDA.b $9E\n #_0EBD84: CMP.b #$80\n #_0EBD86: BEQ .exit\n\n #_0EBD88: DEC.b $9E\n\n.exit\n #_0EBD8A: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_FadeColorAndBeginAnimating", + "code": "Credits_FadeColorAndBeginAnimating:\n #_0EBD8B: JSR Credits_FadeOutFixedCol\n\n #_0EBD8E: LDA.b #$01\n #_0EBD90: STA.w $0710\n\n #_0EBD93: SEP #$30\n\n #_0EBD95: JSL Credits_AnimateTheTriangles\n\n #_0EBD99: REP #$30\n\n #_0EBD9B: LDA.b $1A\n #_0EBD9D: AND.w #$0003\n #_0EBDA0: BNE Credits_SyncBGScrolls\n\n #_0EBDA2: INC.b $E2\n\n #_0EBDA4: LDA.b $E2\n #_0EBDA6: CMP.w #$0C00\n #_0EBDA9: BNE .dont_set_scroll\n\n #_0EBDAB: LDY.w #$1300\n #_0EBDAE: STY.w BG1SC\n\n.dont_set_scroll\n #_0EBDB1: LSR A\n #_0EBDB2: STA.w $0604\n\n #_0EBDB5: CLC\n #_0EBDB6: ADC.b $E2\n #_0EBDB8: STA.w $0600\n\n #_0EBDBB: LSR A\n #_0EBDBC: STA.w $0602\n\n #_0EBDBF: LDA.w $0604\n #_0EBDC2: LSR A\n #_0EBDC3: STA.w $0606\n\n #_0EBDC6: LDA.b $EA\n #_0EBDC8: CMP.w #$0CD8\n #_0EBDCB: BNE .delay_next_submodule\n\n #_0EBDCD: LDA.w #$0080\n #_0EBDD0: STA.b $C8\n\n #_0EBDD2: INC.b $11\n\n #_0EBDD4: BRA Credits_SyncBGScrolls\n\n; ---------------------------------------------------------\n\n.delay_next_submodule\n #_0EBDD6: CLC\n #_0EBDD7: ADC.w #$0001\n #_0EBDDA: STA.b $EA\n\n #_0EBDDC: TAY\n #_0EBDDD: AND.w #$0007\n #_0EBDE0: BNE Credits_SyncBGScrolls\n\n #_0EBDE2: TYA\n #_0EBDE3: LSR A\n #_0EBDE4: LSR A\n #_0EBDE5: LSR A\n #_0EBDE6: STA.b $CA\n\n #_0EBDE8: JSR Credits_AddNextAttribution\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_SyncBGScrolls", + "code": "Credits_SyncBGScrolls:\n #_0EBDEB: REP #$20\n\n #_0EBDED: LDA.b $E2\n #_0EBDEF: STA.w $011E\n\n #_0EBDF2: LDA.b $E8\n #_0EBDF4: STA.w $0122\n\n #_0EBDF7: LDA.b $E0\n #_0EBDF9: STA.w $0120\n\n #_0EBDFC: LDA.b $E6\n #_0EBDFE: STA.w $0124\n\n #_0EBE01: SEP #$30\n\n #_0EBE03: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_AddNextAttribution", + "code": "Credits_AddNextAttribution:\n #_0EBE24: PHB\n #_0EBE25: PHK\n #_0EBE26: PLB\n\n #_0EBE27: REP #$30\n\n #_0EBE29: LDX.w $1000\n\n #_0EBE2C: LDA.b $C8\n #_0EBE2E: XBA\n #_0EBE2F: STA.w $1002,X\n\n #_0EBE32: LDA.w #$3E40\n #_0EBE35: STA.w $1004,X\n\n #_0EBE38: LDA.w CreditsBlankFillTile\n #_0EBE3B: STA.w $1006,X\n\n #_0EBE3E: TXA\n #_0EBE3F: CLC\n #_0EBE40: ADC.w #$0006\n #_0EBE43: TAX\n\n #_0EBE44: LDA.b $CA\n #_0EBE46: ASL A\n #_0EBE47: TAY\n\n #_0EBE48: CPY.w #$0314\n #_0EBE4B: BCC .continue\n\n #_0EBE4D: BRL .close_stripe\n\n; ---------------------------------------------------------\n\n.continue\n #_0EBE50: LDA.w CreditsTextLine_pointers,Y\n #_0EBE53: TAY\n\n #_0EBE54: LDA.w CreditsTextLine_data,Y\n #_0EBE57: AND.w #$00FF\n #_0EBE5A: CMP.w #$00FF\n #_0EBE5D: BEQ .short_circuit_line\n\n #_0EBE5F: CLC\n #_0EBE60: ADC.b $C8\n #_0EBE62: XBA\n #_0EBE63: STA.w $1002,X\n\n #_0EBE66: INY\n\n #_0EBE67: LDA.w CreditsTextLine_data,Y\n #_0EBE6A: AND.w #$00FF\n #_0EBE6D: XBA\n #_0EBE6E: STA.w $1004,X\n\n #_0EBE71: XBA\n #_0EBE72: INC A\n #_0EBE73: LSR A\n #_0EBE74: STA.b $02\n\n #_0EBE76: INY\n #_0EBE77: STY.b $00\n\n; ---------------------------------------------------------\n\n.next_letter\n #_0EBE79: LDY.b $00\n\n #_0EBE7B: LDA.w CreditsTextLine_data,Y\n #_0EBE7E: AND.w #$00FF\n #_0EBE81: ASL A\n #_0EBE82: TAY\n\n #_0EBE83: LDA.w Credits_CharacterToTile,Y\n #_0EBE86: STA.w $1006,X\n\n #_0EBE89: INC.b $00\n\n #_0EBE8B: INX\n #_0EBE8C: INX\n\n #_0EBE8D: DEC.b $02\n #_0EBE8F: BNE .next_letter\n\n; ---------------------------------------------------------\n\n #_0EBE91: INX\n #_0EBE92: INX\n #_0EBE93: INX\n #_0EBE94: INX\n\n.short_circuit_line\n #_0EBE95: LDA.b $CC\n #_0EBE97: AND.w #$0001\n #_0EBE9A: TAY\n #_0EBE9B: BNE .no_stats\n\n #_0EBE9D: LDA.b $CC\n #_0EBE9F: AND.w #$00FE\n #_0EBEA2: TAY\n\n #_0EBEA3: LDA.b $CA\n #_0EBEA5: ASL A\n #_0EBEA6: CMP.w CreditsTextLine_stats_lines,Y\n #_0EBEA9: BNE .close_stripe\n\n; ---------------------------------------------------------\n\n.no_stats\n #_0EBEAB: TYA\n #_0EBEAC: AND.w #$0001\n #_0EBEAF: ASL A\n #_0EBEB0: TAY\n\n #_0EBEB1: LDA.w .digits,Y\n #_0EBEB4: STA.b $CE\n\n #_0EBEB6: LDA.b $C8\n #_0EBEB8: CLC\n #_0EBEB9: ADC.w #$0019\n #_0EBEBC: XBA\n #_0EBEBD: STA.w $1002,X\n\n #_0EBEC0: LDA.w #$0500\n #_0EBEC3: STA.w $1004,X\n\n #_0EBEC6: PHX\n\n #_0EBEC7: LDA.b $CC\n #_0EBEC9: LSR A\n #_0EBECA: ASL A\n #_0EBECB: TAX\n\n #_0EBECC: LDA.w .stats_data_offset,X\n #_0EBECF: TAX\n\n #_0EBED0: LDA.l $7EF3E7,X\n\n #_0EBED4: PLX\n\n #_0EBED5: CMP.w #1000\n #_0EBED8: BCC .sub1000\n\n; ---------------------------------------------------------\n\n #_0EBEDA: LDA.w #$0009\n #_0EBEDD: CLC\n #_0EBEDE: ADC.b $CE\n #_0EBEE0: STA.w $1006,X\n #_0EBEE3: STA.w $1008,X\n #_0EBEE6: STA.w $100A,X\n\n #_0EBEE9: BRA .number_done\n\n; ---------------------------------------------------------\n\n.sub1000\n #_0EBEEB: LDY.w #$0000\n\n.get_1e0\n #_0EBEEE: CMP.w #$000A\n #_0EBEF1: BMI .set_1e0\n\n #_0EBEF3: SEC\n #_0EBEF4: SBC.w #$000A\n\n #_0EBEF7: INY\n\n #_0EBEF8: BRA .get_1e0\n\n.set_1e0\n #_0EBEFA: CLC\n #_0EBEFB: ADC.b $CE\n #_0EBEFD: STA.w $100A,X\n\n; ---------------------------------------------------------\n\n #_0EBF00: TYA\n\n #_0EBF01: LDY.w #$0000\n\n.get_1e1\n #_0EBF04: CMP.w #$000A\n #_0EBF07: BMI .set_1e1\n\n #_0EBF09: SEC\n #_0EBF0A: SBC.w #$000A\n #_0EBF0D: INY\n\n #_0EBF0E: BRA .get_1e1\n\n; ---------------------------------------------------------\n\n.set_1e1\n #_0EBF10: CLC\n #_0EBF11: ADC.b $CE\n #_0EBF13: STA.w $1008,X\n\n #_0EBF16: TYA\n #_0EBF17: CLC\n #_0EBF18: ADC.b $CE\n #_0EBF1A: STA.w $1006,X\n\n; ---------------------------------------------------------\n\n.number_done\n #_0EBF1D: INC.b $CC\n\n #_0EBF1F: TXA\n #_0EBF20: CLC\n #_0EBF21: ADC.w #$000A\n #_0EBF24: TAX\n\n; ---------------------------------------------------------\n\n.close_stripe\n #_0EBF25: STX.w $1000\n\n #_0EBF28: LDA.b $C8\n #_0EBF2A: CLC\n #_0EBF2B: ADC.w #$0020\n #_0EBF2E: TAY\n\n #_0EBF2F: AND.w #$03FF\n #_0EBF32: BNE .dont_reset_vram_addr\n\n #_0EBF34: LDA.b $C8\n #_0EBF36: AND.w #$6800\n #_0EBF39: EOR.w #$0800\n #_0EBF3C: TAY\n\n.dont_reset_vram_addr\n #_0EBF3D: STY.b $C8\n\n #_0EBF3F: SEP #$30\n\n #_0EBF41: LDA.b #$FF\n #_0EBF43: STA.w $1002,X\n\n #_0EBF46: LDA.b #$01\n #_0EBF48: STA.b $14\n\n #_0EBF4A: PLB\n\n #_0EBF4B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_AddEndingSequenceText", + "code": "Credits_AddEndingSequenceText:\n #_0EC303: PHB\n #_0EC304: PHK\n #_0EC305: PLB\n\n #_0EC306: REP #$30\n\n #_0EC308: LDA.w #$0060 ; VRAM $C000\n #_0EC30B: STA.w $1002\n\n #_0EC30E: LDA.w #$FE47\n #_0EC311: STA.w $1004\n\n #_0EC314: LDA.w CreditsBlankFillTile\n #_0EC317: STA.w $1006\n\n #_0EC31A: LDA.b $11\n #_0EC31C: AND.w #$00FE\n #_0EC31F: TAY\n\n #_0EC320: LDA.w .offset+2,Y\n #_0EC323: STA.b $04\n\n #_0EC325: LDA.w .offset+0,Y\n #_0EC328: TAY\n\n; ---------------------------------------------------------\n\n #_0EC329: LDX.w #$0000\n\n.next_stripe\n #_0EC32C: LDA.w .chargfx,Y\n #_0EC32F: STA.w $1008,X\n\n #_0EC332: INY\n #_0EC333: INY\n\n #_0EC334: INX\n #_0EC335: INX\n\n #_0EC336: LDA.w .chargfx,Y\n #_0EC339: STA.w $1008,X\n\n #_0EC33C: XBA\n #_0EC33D: AND.w #$00FF\n #_0EC340: LSR A\n #_0EC341: STA.b $00\n\n #_0EC343: INY\n #_0EC344: INY\n\n #_0EC345: INX\n #_0EC346: INX\n\n #_0EC347: STY.b $02\n\n; ---------------------------------------------------------\n\n.next_character\n #_0EC349: LDY.b $02\n\n #_0EC34B: LDA.w .chargfx,Y\n #_0EC34E: AND.w #$00FF\n #_0EC351: ASL A\n #_0EC352: TAY\n\n #_0EC353: LDA.w Credits_CharacterToTile,Y\n #_0EC356: STA.w $1008,X\n\n #_0EC359: INC.b $02\n\n #_0EC35B: INX\n #_0EC35C: INX\n\n #_0EC35D: DEC.b $00\n #_0EC35F: BPL .next_character\n\n; ---------------------------------------------------------\n\n #_0EC361: LDY.b $02\n #_0EC363: CPY.b $04\n #_0EC365: BNE .next_stripe\n\n; ---------------------------------------------------------\n\n #_0EC367: TXA\n #_0EC368: CLC\n #_0EC369: ADC.w #$0006\n #_0EC36C: STA.w $1000\n\n #_0EC36F: SEP #$30\n\n #_0EC371: LDA.b #$FF\n #_0EC373: STA.w $1008,X\n\n #_0EC376: LDA.b #$01\n #_0EC378: STA.b $14\n\n #_0EC37A: PLB\n\n #_0EC37B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_BrightenTriangles", + "code": "Credits_BrightenTriangles:\n #_0EC37C: LDA.b $1A\n #_0EC37E: AND.b #$0F\n #_0EC380: BNE Credits_AnimateTheTriangles_bounce\n\n #_0EC382: INC.b $13\n\n #_0EC384: LDA.b $13\n #_0EC386: CMP.b #$0F\n #_0EC388: BNE Credits_AnimateTheTriangles_bounce\n\n #_0EC38A: INC.b $11\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_AnimateTheTriangles_bounce", + "code": "Credits_AnimateTheTriangles_bounce:\n #_0EC38C: JSL Credits_AnimateTheTriangles\n\n #_0EC390: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_StopCreditsScroll", + "code": "Credits_StopCreditsScroll:\n #_0EC391: DEC.b $C8\n #_0EC393: BNE .delay\n\n #_0EC395: REP #$20\n\n #_0EC397: STZ.w $0AA6\n\n #_0EC39A: LDA.w #$0000\n #_0EC39D: STA.l $7EC009\n #_0EC3A1: STA.l $7EC007\n\n #_0EC3A5: LDA.w #$001F\n #_0EC3A8: STA.l $7EC00B\n\n #_0EC3AC: SEP #$20\n\n #_0EC3AE: INC.b $11\n\n #_0EC3B0: LDA.b #$C0\n #_0EC3B2: STA.b $C8\n\n #_0EC3B4: STZ.b $CA\n\n.delay\n #_0EC3B6: BRA Credits_AnimateTheTriangles_bounce\n\n; =========================================================\n\n#Credits_FadeAndDisperseTriangles:\n #_0EC3B8: DEC.b $C8\n\n #_0EC3BA: LDA.b $CA\n #_0EC3BC: BNE .skip_filter\n\n #_0EC3BE: JSL ApplyPaletteFilter\n\n #_0EC3C2: LDA.l $7EC007\n #_0EC3C6: BNE .delay\n\n #_0EC3C8: INC.b $CA\n\n.skip_filter\n #_0EC3CA: LDA.b $C8\n #_0EC3CC: BNE .delay\n\n #_0EC3CE: INC.b $11\n\n #_0EC3D0: JSL PaletteFilter_TheEndSprite\n\n #_0EC3D4: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_FadeInTheEnd", + "code": "Credits_FadeInTheEnd:\n #_0EC3D5: LDA.b $1A\n #_0EC3D7: AND.b #$07\n #_0EC3D9: BNE .delay\n\n #_0EC3DB: JSL PaletteFilter_SP5F\n\n #_0EC3DF: LDA.l $7EC007\n #_0EC3E3: BNE .delay\n\n #_0EC3E5: INC.b $11\n\n.delay\n #_0EC3E7: JMP.w Credits_DrawTheEnd\n\n; =========================================================\n\npool Credits_DrawTheEnd\n\n.oam_data\n #_0EC3EA: db $A0, $B8, $00, $3B\n #_0EC3EE: db $B0, $B8, $02, $3B\n #_0EC3F2: db $C0, $B8, $04, $3B\n #_0EC3F6: db $D0, $B8, $06, $3B\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Credits_DrawTheEnd", + "code": "Credits_DrawTheEnd:\n #_0EC3FA: REP #$20\n\n #_0EC3FC: LDX.b #$0E\n\n.copy_next\n #_0EC3FE: LDA.l .oam_data,X\n #_0EC402: STA.w $0800,X\n\n #_0EC405: DEX\n #_0EC406: DEX\n #_0EC407: BPL .copy_next\n\n #_0EC409: SEP #$20\n\n #_0EC40B: LDA.b #$02\n #_0EC40D: STA.w $0A20\n #_0EC410: STA.w $0A21\n #_0EC413: STA.w $0A22\n #_0EC416: STA.w $0A23\n\n #_0EC419: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Credits_HangForever", + "code": "Credits_HangForever:\n #_0EC41A: BRA Credits_DrawTheEnd\n\n; =========================================================\n; FREE ROM: 0x24\n; =========================================================", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0EC41C", + "code": "NULL_0EC41C:\n #_0EC41C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EC424: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EC42C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EC434: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EC43C: db $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText", + "code": "RenderText:\n#Module0E_02_RenderText:\n #_0EC440: PHB\n #_0EC441: PHK\n #_0EC442: PLB\n\n #_0EC443: JSR .main\n\n #_0EC446: PLB\n #_0EC447: RTL", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_PostDeathSaveOptions", + "code": "RenderText_PostDeathSaveOptions:\n #_0EC455: LDA.b #$03 ; MESSAGE 0003\n #_0EC457: STA.w $1CF0\n\n #_0EC45A: LDA.b #$00\n #_0EC45C: STA.w $1CF1\n\n #_0EC45F: LDX.b #$00\n #_0EC461: JSR RenderText_Initialize_IgnoreAttract\n\n #_0EC464: LDA.b #$E8\n #_0EC466: STA.w $1CD2\n\n #_0EC469: LDA.b #$61\n #_0EC46B: STA.w $1CD3\n\n #_0EC46E: LDA.b #$02\n #_0EC470: STA.w $1CD4\n\n #_0EC473: JSR RenderText_Draw\n #_0EC476: JSR RenderText_Draw\n #_0EC479: JSR RenderText_Draw\n #_0EC47C: JSR RenderText_Draw\n #_0EC47F: JSR RenderText_Draw\n\n #_0EC482: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Initialize", + "code": "RenderText_Initialize:\n #_0EC483: LDA.b $10\n #_0EC485: CMP.b #$14\n #_0EC487: BNE .not_attract_mode\n\n #_0EC489: JSL ResetHUDPalettes4and5\n\n.not_attract_mode\n #_0EC48D: JSL Attract_DecompressStoryGFX\n\n #_0EC491: LDX.b #$00\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Initialize_IgnoreAttract", + "code": "RenderText_Initialize_IgnoreAttract:\n #_0EC493: LDA.w RenderText_InitialSettings,X\n #_0EC496: STA.w $1CD0,X\n\n #_0EC499: INX\n #_0EC49A: CPX.b #$20\n #_0EC49C: BCC RenderText_Initialize_IgnoreAttract\n\n; ---------------------------------------------------------\n\n #_0EC49E: JSR RenderText_InitializeVWF\n #_0EC4A1: JSR RenderText_SetDefaultWindowPosition\n\n #_0EC4A4: REP #$30\n\n #_0EC4A6: LDA.w #$387F\n #_0EC4A9: AND.w #$FF00\n #_0EC4AC: ORA.w #$0180\n #_0EC4AF: STA.w $1CE2\n\n #_0EC4B2: SEP #$30\n\n #_0EC4B4: JSR RenderText_ParseMessage\n #_0EC4B7: JSR RenderText_EmptyBuffer\n\n #_0EC4BA: REP #$30\n\n #_0EC4BC: STZ.w $1CD9\n\n #_0EC4BF: SEP #$30\n\n #_0EC4C1: LDA.b #$02\n #_0EC4C3: STA.b $17\n #_0EC4C5: STA.w $0710\n\n #_0EC4C8: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_InitializeVWF", + "code": "RenderText_InitializeVWF:\n #_0EC4C9: STZ.w $0722\n #_0EC4CC: STZ.w $0723\n #_0EC4CF: STZ.w $0720\n #_0EC4D2: STZ.w $0721\n\n #_0EC4D5: STZ.w $0724\n #_0EC4D8: STZ.w $0725\n #_0EC4DB: STZ.w $0726\n #_0EC4DE: STZ.w $0727\n\n #_0EC4E1: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ParseMessage", + "code": "RenderText_ParseMessage:\n #_0EC4E2: REP #$30\n\n #_0EC4E4: LDA.w $1CF0\n #_0EC4E7: ASL A\n #_0EC4E8: ADC.w $1CF0\n #_0EC4EB: TAX\n\n #_0EC4EC: LDA.l $7F71C0,X\n #_0EC4F0: STA.b $04\n\n #_0EC4F2: LDA.l $7F71C2,X\n #_0EC4F6: STA.b $06\n\n #_0EC4F8: LDA.w #$7F7F ; initialize with a terminater for failsafe\n #_0EC4FB: STA.l $7F1200\n\n #_0EC4FF: LDY.w #$0000\n #_0EC502: TYX\n\n #_0EC503: STY.w $1CD9\n #_0EC506: STY.w $1CDD\n\n #_0EC509: SEP #$20\n\n; ---------------------------------------------------------\n\n.next_byte\n #_0EC50B: LDA.b [$04],Y\n #_0EC50D: BMI .word_lookup\n\n #_0EC50F: CMP.b #$67\n #_0EC511: BCS .command\n\n #_0EC513: STA.l $7F1200,X\n\n #_0EC517: INY\n #_0EC518: STY.w $1CDD\n\n #_0EC51B: INX\n #_0EC51C: STX.w $1CD9\n\n #_0EC51F: BRA .next_byte\n\n; ---------------------------------------------------------\n\n.command\n #_0EC521: CMP.b #$7F\n #_0EC523: BEQ .end_of_message\n\n #_0EC525: JSR RenderText_ExecuteCommand\n\n #_0EC528: LDX.w $1CD9\n #_0EC52B: LDY.w $1CDD\n #_0EC52E: BRA .next_byte\n\n.word_lookup\n #_0EC530: SEC\n #_0EC531: SBC.b #$88\n #_0EC533: JSR RenderText_LookupWord\n\n #_0EC536: LDX.w $1CD9\n #_0EC539: LDY.w $1CDD\n #_0EC53C: BRA .next_byte\n\n.end_of_message\n #_0EC53E: LDA.b #$7F\n #_0EC540: STA.l $7F1200,X\n\n #_0EC544: SEP #$30\n\n #_0EC546: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ExecuteCommand", + "code": "RenderText_ExecuteCommand:\n #_0EC547: SEP #$31\n\n #_0EC549: SBC.b #$67\n #_0EC54B: JSL JumpTableLocal\n #_0EC54F: dw ParseText_IgnoreCommand ; 0x67\n #_0EC551: dw ParseText_IgnoreCommand ; 0x68\n #_0EC553: dw ParseText_IgnoreCommand ; 0x69\n #_0EC555: dw ParseText_WritePlayerName ; 0x6A\n #_0EC557: dw ParseText_SetWindowType ; 0x6B\n #_0EC559: dw ParseText_WriteBCD ; 0x6C\n #_0EC55B: dw ParseText_SetWindowPosition ; 0x6D\n #_0EC55D: dw ParseText_IgnoreParameter ; 0x6E\n #_0EC55F: dw ParseText_IgnoreCommand ; 0x6F\n #_0EC561: dw ParseText_IgnoreCommand ; 0x70\n #_0EC563: dw ParseText_IgnoreCommand ; 0x71\n #_0EC565: dw ParseText_IgnoreCommand ; 0x72\n #_0EC567: dw ParseText_IgnoreCommand ; 0x73\n #_0EC569: dw ParseText_IgnoreCommand ; 0x74\n #_0EC56B: dw ParseText_IgnoreCommand ; 0x75\n #_0EC56D: dw ParseText_IgnoreCommand ; 0x76\n #_0EC56F: dw ParseText_SetColor ; 0x77\n #_0EC571: dw ParseText_IgnoreParameter ; 0x78\n #_0EC573: dw ParseText_IgnoreParameter ; 0x79\n #_0EC575: dw ParseText_IgnoreParameter ; 0x7A\n #_0EC577: dw ParseText_IgnoreCommand ; 0x7B\n #_0EC579: dw ParseText_IgnoreCommand ; 0x7C\n #_0EC57B: dw ParseText_IgnoreCommand ; 0x7D\n #_0EC57D: dw ParseText_IgnoreCommand ; 0x7E\n #_0EC57F: dw ParseText_IgnoreCommand ; 0x7F\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_IgnoreCommand", + "code": "ParseText_IgnoreCommand:\n #_0EC581: REP #$10\n\n #_0EC583: LDX.w $1CD9\n #_0EC586: LDY.w $1CDD\n\n #_0EC589: LDA.b [$04],Y\n #_0EC58B: STA.l $7F1200,X\n\n #_0EC58F: INY\n\n #_0EC590: INX\n #_0EC591: STX.w $1CD9\n\n #_0EC594: STY.w $1CDD\n\n #_0EC597: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_IgnoreParameter", + "code": "ParseText_IgnoreParameter:\n #_0EC598: REP #$30\n\n #_0EC59A: LDX.w $1CD9\n #_0EC59D: LDY.w $1CDD\n\n #_0EC5A0: LDA.b [$04],Y\n #_0EC5A2: STA.l $7F1200,X\n\n #_0EC5A6: INY\n #_0EC5A7: INY\n\n #_0EC5A8: INX\n #_0EC5A9: INX\n #_0EC5AA: STX.w $1CD9\n\n #_0EC5AD: STY.w $1CDD\n\n #_0EC5B0: SEP #$20\n\n #_0EC5B2: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_WritePlayerName", + "code": "ParseText_WritePlayerName:\n #_0EC5B3: REP #$30\n\n #_0EC5B5: LDA.l $701FFE\n #_0EC5B9: TAX\n\n #_0EC5BA: LDA.l SaveFileOffsets,X\n #_0EC5BE: TAX\n\n #_0EC5BF: LDY.w #$0000\n\n; ---------------------------------------------------------\n\n.not_terminator_a\n #_0EC5C2: LDA.l $7003D9,X\n #_0EC5C6: PHA\n\n #_0EC5C7: AND.w #$000F\n #_0EC5CA: STA.w $0008,Y\n\n #_0EC5CD: PLA\n #_0EC5CE: LSR A\n #_0EC5CF: AND.w #$FFF0\n #_0EC5D2: ORA.w $0008,Y\n #_0EC5D5: STA.w $0008,Y\n\n #_0EC5D8: INX\n #_0EC5D9: INX\n\n #_0EC5DA: INY\n #_0EC5DB: CPY.w #$0006\n #_0EC5DE: BCC .not_terminator_a\n\n; ---------------------------------------------------------\n\n #_0EC5E0: SEP #$20\n\n #_0EC5E2: LDY.w #$0000\n\n.not_terminator_b\n #_0EC5E5: LDA.w $0008,Y\n #_0EC5E8: JSR RenderText_FilterName\n #_0EC5EB: STA.w $0008,Y\n\n #_0EC5EE: INY\n #_0EC5EF: CPY.w #$0006\n #_0EC5F2: BCC .not_terminator_b\n\n; ---------------------------------------------------------\n\n #_0EC5F4: REP #$30\n\n #_0EC5F6: LDA.w $1CD9\n #_0EC5F9: CLC\n #_0EC5FA: ADC.w #$0006\n #_0EC5FD: TAX\n\n #_0EC5FE: INC.w $1CDD\n\n #_0EC601: SEP #$20\n\n #_0EC603: LDA.b $08\n #_0EC605: STA.l $7F11FA,X\n\n #_0EC609: LDA.b $09\n #_0EC60B: STA.l $7F11FB,X\n\n #_0EC60F: LDA.b $0A\n #_0EC611: STA.l $7F11FC,X\n\n #_0EC615: LDA.b $0B\n #_0EC617: STA.l $7F11FD,X\n\n #_0EC61B: LDA.b $0C\n #_0EC61D: STA.l $7F11FE,X\n\n #_0EC621: LDA.b $0D\n #_0EC623: STA.l $7F11FF,X\n\n; ---------------------------------------------------------\n\n #_0EC627: LDY.w #$0005\n\n.next\n #_0EC62A: LDA.w $0008,Y\n #_0EC62D: CMP.b #$59\n #_0EC62F: BNE .done\n\n #_0EC631: DEX\n\n #_0EC632: DEY\n #_0EC633: BPL .next\n\n; ---------------------------------------------------------\n\n.done\n #_0EC635: STX.w $1CD9\n\n #_0EC638: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_FilterName", + "code": "RenderText_FilterName:\n #_0EC639: CMP.b #$5F ; legit characters\n #_0EC63B: BCC .exit\n\n #_0EC63D: CMP.b #$76\n #_0EC63F: BCS .encode_lower\n\n #_0EC641: CMP.b #$5F\n #_0EC643: BNE .not_this\n\n #_0EC645: LDA.b #$08 ; uppercase I\n\n.not_this\n #_0EC647: CMP.b #$60\n #_0EC649: BNE .nor_this\n\n #_0EC64B: LDA.b #$22 ; lowercase i\n\n.nor_this\n #_0EC64D: CMP.b #$61\n #_0EC64F: BNE .exit\n\n #_0EC651: LDA.b #$3E ; exclamation point !\n\n.exit\n #_0EC653: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_SetWindowType", + "code": "ParseText_SetWindowType:\n #_0EC657: REP #$10\n\n #_0EC659: LDY.w $1CDD\n #_0EC65C: INY\n\n #_0EC65D: LDA.b [$04],Y\n #_0EC65F: STA.w $1CD4\n\n #_0EC662: INY\n #_0EC663: STY.w $1CDD\n\n #_0EC666: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_WriteBCD", + "code": "ParseText_WriteBCD:\n #_0EC667: REP #$30\n\n #_0EC669: LDX.w $1CD9\n #_0EC66C: LDY.w $1CDD\n\n #_0EC66F: LDA.b [$04],Y\n\n #_0EC671: INY\n #_0EC672: INY\n #_0EC673: STY.w $1CDD\n\n #_0EC676: XBA\n #_0EC677: AND.w #$00FF\n #_0EC67A: LSR A\n #_0EC67B: PHP\n\n #_0EC67C: TAY\n #_0EC67D: LDA.w $1CF2,Y\n\n #_0EC680: PLP\n #_0EC681: BCC .low_nibble\n\n #_0EC683: LSR A\n #_0EC684: LSR A\n #_0EC685: LSR A\n #_0EC686: LSR A\n\n.low_nibble\n #_0EC687: AND.w #$000F\n #_0EC68A: CLC\n #_0EC68B: ADC.w #$0004\n #_0EC68E: ORA.w #$0030\n #_0EC691: STA.l $7F1200,X\n\n #_0EC695: INX\n #_0EC696: STX.w $1CD9\n\n #_0EC699: SEP #$20\n\n #_0EC69B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_SetWindowPosition", + "code": "ParseText_SetWindowPosition:\n #_0EC69C: REP #$30\n\n #_0EC69E: LDY.w $1CDD\n #_0EC6A1: INY\n\n #_0EC6A2: LDA.b [$04],Y\n #_0EC6A4: AND.w #$00FF\n #_0EC6A7: ASL A\n #_0EC6A8: TAX\n\n #_0EC6A9: LDA.w RenderText_TextPosition,X\n\n #_0EC6AC: STA.w $1CD2\n\n #_0EC6AF: INY\n #_0EC6B0: STY.w $1CDD\n\n #_0EC6B3: SEP #$20\n\n #_0EC6B5: RTS", + "file": "bank_0E.asm" + }, + { + "name": "ParseText_SetColor", + "code": "ParseText_SetColor:\n #_0EC6B6: REP #$30\n\n #_0EC6B8: LDY.w $1CDD\n\n #_0EC6BB: LDA.b [$04],Y\n #_0EC6BD: ASL A\n #_0EC6BE: ASL A\n #_0EC6BF: AND.w #$3C00\n #_0EC6C2: STA.b $00\n\n #_0EC6C4: LDA.w #$387F\n #_0EC6C7: AND.w #$E300\n #_0EC6CA: ORA.w #$0180\n #_0EC6CD: ORA.b $00\n #_0EC6CF: STA.w $1CE2\n\n #_0EC6D2: INY\n #_0EC6D3: INY\n #_0EC6D4: STY.w $1CDD\n\n #_0EC6D7: SEP #$20\n\n #_0EC6D9: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_LookupWord", + "code": "RenderText_LookupWord:\n #_0EC6DA: REP #$30\n\n #_0EC6DC: INC.w $1CDD\n\n #_0EC6DF: LDX.w $1CD9\n #_0EC6E2: ASL A\n #_0EC6E3: AND.w #$00FF\n #_0EC6E6: TAY\n\n #_0EC6E7: LDA.w WordDictionary+2,Y\n #_0EC6EA: STA.b $00\n\n #_0EC6EC: LDA.w WordDictionary+0,Y\n #_0EC6EF: TAY\n\n #_0EC6F0: SEP #$20\n\n; ---------------------------------------------------------\n\n.next\n #_0EC6F2: LDA.w $0000,Y\n #_0EC6F5: STA.l $7F1200,X\n\n #_0EC6F9: INX\n\n #_0EC6FA: INY\n #_0EC6FB: CPY.b $00\n #_0EC6FD: BCC .next\n\n; ---------------------------------------------------------\n\n #_0EC6FF: STX.w $1CD9\n\n #_0EC702: RTS", + "file": "bank_0E.asm" + }, + { + "name": "WordDictionary", + "code": "WordDictionary:\n #_0EC703: dw .entry_00\n #_0EC705: dw .entry_01\n #_0EC707: dw .entry_02\n #_0EC709: dw .entry_03\n #_0EC70B: dw .entry_04\n #_0EC70D: dw .entry_05\n #_0EC70F: dw .entry_06\n #_0EC711: dw .entry_07\n #_0EC713: dw .entry_08\n #_0EC715: dw .entry_09\n #_0EC717: dw .entry_0A\n #_0EC719: dw .entry_0B\n #_0EC71B: dw .entry_0C\n #_0EC71D: dw .entry_0D\n #_0EC71F: dw .entry_0E\n #_0EC721: dw .entry_0F\n #_0EC723: dw .entry_10\n #_0EC725: dw .entry_11\n #_0EC727: dw .entry_12\n #_0EC729: dw .entry_13\n #_0EC72B: dw .entry_14\n #_0EC72D: dw .entry_15\n #_0EC72F: dw .entry_16\n #_0EC731: dw .entry_17\n #_0EC733: dw .entry_18\n #_0EC735: dw .entry_19\n #_0EC737: dw .entry_1A\n #_0EC739: dw .entry_1B\n #_0EC73B: dw .entry_1C\n #_0EC73D: dw .entry_1D\n #_0EC73F: dw .entry_1E\n #_0EC741: dw .entry_1F\n #_0EC743: dw .entry_20\n #_0EC745: dw .entry_21\n #_0EC747: dw .entry_22\n #_0EC749: dw .entry_23\n #_0EC74B: dw .entry_24\n #_0EC74D: dw .entry_25\n #_0EC74F: dw .entry_26\n #_0EC751: dw .entry_27\n #_0EC753: dw .entry_28\n #_0EC755: dw .entry_29\n #_0EC757: dw .entry_2A\n #_0EC759: dw .entry_2B\n #_0EC75B: dw .entry_2C\n #_0EC75D: dw .entry_2D\n #_0EC75F: dw .entry_2E\n #_0EC761: dw .entry_2F\n #_0EC763: dw .entry_30\n #_0EC765: dw .entry_31\n #_0EC767: dw .entry_32\n #_0EC769: dw .entry_33\n #_0EC76B: dw .entry_34\n #_0EC76D: dw .entry_35\n #_0EC76F: dw .entry_36\n #_0EC771: dw .entry_37\n #_0EC773: dw .entry_38\n #_0EC775: dw .entry_39\n #_0EC777: dw .entry_3A\n #_0EC779: dw .entry_3B\n #_0EC77B: dw .entry_3C\n #_0EC77D: dw .entry_3D\n #_0EC77F: dw .entry_3E\n #_0EC781: dw .entry_3F\n #_0EC783: dw .entry_40\n #_0EC785: dw .entry_41\n #_0EC787: dw .entry_42\n #_0EC789: dw .entry_43\n #_0EC78B: dw .entry_44\n #_0EC78D: dw .entry_45\n #_0EC78F: dw .entry_46\n #_0EC791: dw .entry_47\n #_0EC793: dw .entry_48\n #_0EC795: dw .entry_49\n #_0EC797: dw .entry_4A\n #_0EC799: dw .entry_4B\n #_0EC79B: dw .entry_4C\n #_0EC79D: dw .entry_4D\n #_0EC79F: dw .entry_4E\n #_0EC7A1: dw .entry_4F\n #_0EC7A3: dw .entry_50\n #_0EC7A5: dw .entry_51\n #_0EC7A7: dw .entry_52\n #_0EC7A9: dw .entry_53\n #_0EC7AB: dw .entry_54\n #_0EC7AD: dw .entry_55\n #_0EC7AF: dw .entry_56\n #_0EC7B1: dw .entry_57\n #_0EC7B3: dw .entry_58\n #_0EC7B5: dw .entry_59\n #_0EC7B7: dw .entry_5A\n #_0EC7B9: dw .entry_5B\n #_0EC7BB: dw .entry_5C\n #_0EC7BD: dw .entry_5D\n #_0EC7BF: dw .entry_5E\n #_0EC7C1: dw .entry_5F\n #_0EC7C3: dw .entry_60\n #_0EC7C5: dw .end\n\n; ---------------------------------------------------------\n\n.entry_00\n #_0EC7C7: db $59, $59, $59, $59 ; \u23b5\u23b5\u23b5\u23b5\n\n.entry_01\n #_0EC7CB: db $59, $59, $59 ; \u23b5\u23b5\u23b5\n\n.entry_02\n #_0EC7CE: db $59, $59 ; \u23b5\u23b5\n\n.entry_03\n #_0EC7D0: db $51, $2C, $59 ; 's\u23b5\n\n.entry_04\n #_0EC7D3: db $1A, $27, $1D, $59 ; and\u23b5\n\n.entry_05\n #_0EC7D7: db $1A, $2B, $1E, $59 ; are\u23b5\n\n.entry_06\n #_0EC7DB: db $1A, $25, $25, $59 ; all\u23b5\n\n.entry_07\n #_0EC7DF: db $1A, $22, $27 ; ain\n\n.entry_08\n #_0EC7E2: db $1A, $27, $1D ; and\n\n.entry_09\n #_0EC7E5: db $1A, $2D, $59 ; at\u23b5\n\n.entry_0A\n #_0EC7E8: db $1A, $2C, $2D ; ast\n\n.entry_0B\n #_0EC7EB: db $1A, $27 ; an\n\n.entry_0C\n #_0EC7ED: db $1A, $2D ; at\n\n.entry_0D\n #_0EC7EF: db $1B, $25, $1E ; ble\n\n.entry_0E\n #_0EC7F2: db $1B, $1A ; ba\n\n.entry_0F\n #_0EC7F4: db $1B, $1E ; be\n\n.entry_10\n #_0EC7F6: db $1B, $28 ; bo\n\n.entry_11\n #_0EC7F8: db $1C, $1A, $27, $59 ; can\u23b5\n\n.entry_12\n #_0EC7FC: db $1C, $21, $1E ; che\n\n.entry_13\n #_0EC7FF: db $1C, $28, $26 ; com\n\n.entry_14\n #_0EC802: db $1C, $24 ; ck\n\n.entry_15\n #_0EC804: db $1D, $1E, $2C ; des\n\n.entry_16\n #_0EC807: db $1D, $22 ; di\n\n.entry_17\n #_0EC809: db $1D, $28 ; do\n\n.entry_18\n #_0EC80B: db $1E, $27, $59 ; en\u23b5\n\n.entry_19\n #_0EC80E: db $1E, $2B, $59 ; er\u23b5\n\n.entry_1A\n #_0EC811: db $1E, $1A, $2B ; ear\n\n.entry_1B\n #_0EC814: db $1E, $27, $2D ; ent\n\n.entry_1C\n #_0EC817: db $1E, $1D, $59 ; ed\u23b5\n\n.entry_1D\n #_0EC81A: db $1E, $27 ; en\n\n.entry_1E\n #_0EC81C: db $1E, $2B ; er\n\n.entry_1F\n #_0EC81E: db $1E, $2F ; ev\n\n.entry_20\n #_0EC820: db $1F, $28, $2B ; for\n\n.entry_21\n #_0EC823: db $1F, $2B, $28 ; fro\n\n.entry_22\n #_0EC826: db $20, $22, $2F, $1E, $59 ; give\u23b5\n\n.entry_23\n #_0EC82B: db $20, $1E, $2D ; get\n\n.entry_24\n #_0EC82E: db $20, $28 ; go\n\n.entry_25\n #_0EC830: db $21, $1A, $2F, $1E ; have\n\n.entry_26\n #_0EC834: db $21, $1A, $2C ; has\n\n.entry_27\n #_0EC837: db $21, $1E, $2B ; her\n\n.entry_28\n #_0EC83A: db $21, $22 ; hi\n\n.entry_29\n #_0EC83C: db $21, $1A ; ha\n\n.entry_2A\n #_0EC83E: db $22, $20, $21, $2D, $59 ; ight\u23b5\n\n.entry_2B\n #_0EC843: db $22, $27, $20, $59 ; ing\u23b5\n\n.entry_2C\n #_0EC847: db $22, $27 ; in\n\n.entry_2D\n #_0EC849: db $22, $2C ; is\n\n.entry_2E\n #_0EC84B: db $22, $2D ; it\n\n.entry_2F\n #_0EC84D: db $23, $2E, $2C, $2D ; just\n\n.entry_30\n #_0EC851: db $24, $27, $28, $30 ; know\n\n.entry_31\n #_0EC855: db $25, $32, $59 ; ly\u23b5\n\n.entry_32\n #_0EC858: db $25, $1A ; la\n\n.entry_33\n #_0EC85A: db $25, $28 ; lo\n\n.entry_34\n #_0EC85C: db $26, $1A, $27 ; man\n\n.entry_35\n #_0EC85F: db $26, $1A ; ma\n\n.entry_36\n #_0EC861: db $26, $1E ; me\n\n.entry_37\n #_0EC863: db $26, $2E ; mu\n\n.entry_38\n #_0EC865: db $27, $51, $2D, $59 ; n't\u23b5\n\n.entry_39\n #_0EC869: db $27, $28, $27 ; non\n\n.entry_3A\n #_0EC86C: db $27, $28, $2D ; not\n\n.entry_3B\n #_0EC86F: db $28, $29, $1E, $27 ; open\n\n.entry_3C\n #_0EC873: db $28, $2E, $27, $1D ; ound\n\n.entry_3D\n #_0EC877: db $28, $2E, $2D, $59 ; out\u23b5\n\n.entry_3E\n #_0EC87B: db $28, $1F ; of\n\n.entry_3F\n #_0EC87D: db $28, $27 ; on\n\n.entry_40\n #_0EC87F: db $28, $2B ; or\n\n.entry_41\n #_0EC881: db $29, $1E, $2B ; per\n\n.entry_42\n #_0EC884: db $29, $25, $1E ; ple\n\n.entry_43\n #_0EC887: db $29, $28, $30 ; pow\n\n.entry_44\n #_0EC88A: db $29, $2B, $28 ; pro\n\n.entry_45\n #_0EC88D: db $2B, $1E, $59 ; re\u23b5\n\n.entry_46\n #_0EC890: db $2B, $1E ; re\n\n.entry_47\n #_0EC892: db $2C, $28, $26, $1E ; some\n\n.entry_48\n #_0EC896: db $2C, $1E ; se\n\n.entry_49\n #_0EC898: db $2C, $21 ; sh\n\n.entry_4A\n #_0EC89A: db $2C, $28 ; so\n\n.entry_4B\n #_0EC89C: db $2C, $2D ; st\n\n.entry_4C\n #_0EC89E: db $2D, $1E, $2B, $59 ; ter\u23b5\n\n.entry_4D\n #_0EC8A2: db $2D, $21, $22, $27 ; thin\n\n.entry_4E\n #_0EC8A6: db $2D, $1E, $2B ; ter\n\n.entry_4F\n #_0EC8A9: db $2D, $21, $1A ; tha\n\n.entry_50\n #_0EC8AC: db $2D, $21, $1E ; the\n\n.entry_51\n #_0EC8AF: db $2D, $21, $22 ; thi\n\n.entry_52\n #_0EC8B2: db $2D, $28 ; to\n\n.entry_53\n #_0EC8B4: db $2D, $2B ; tr\n\n.entry_54\n #_0EC8B6: db $2E, $29 ; up\n\n.entry_55\n #_0EC8B8: db $2F, $1E, $2B ; ver\n\n.entry_56\n #_0EC8BB: db $30, $22, $2D, $21 ; with\n\n.entry_57\n #_0EC8BF: db $30, $1A ; wa\n\n.entry_58\n #_0EC8C1: db $30, $1E ; we\n\n.entry_59\n #_0EC8C3: db $30, $21 ; wh\n\n.entry_5A\n #_0EC8C5: db $30, $22 ; wi\n\n.entry_5B\n #_0EC8C7: db $32, $28, $2E ; you\n\n.entry_5C\n #_0EC8CA: db $07, $1E, $2B ; Her\n\n.entry_5D\n #_0EC8CD: db $13, $21, $1A ; Tha\n\n.entry_5E\n #_0EC8D0: db $13, $21, $1E ; The\n\n.entry_5F\n #_0EC8D3: db $13, $21, $22 ; Thi\n\n.entry_60\n #_0EC8D6: db $18, $28, $2E ; You\n\n.end\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Draw", + "code": "RenderText_Draw:\n #_0EC8D9: LDA.w $1CD4\n #_0EC8DC: JSL JumpTableLocal\n #_0EC8E0: dw RenderText_InitializeWindow\n #_0EC8E2: dw RenderText_DrawBorderEdges\n #_0EC8E4: dw RenderText_DrawCharacterTilemap\n #_0EC8E6: dw RenderText_DrawMessageCharacters\n #_0EC8E8: dw RenderText_FinalizeWindow\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_InitializeWindow", + "code": "RenderText_InitializeWindow:\n #_0EC8EA: JSR RenderText_SetDrawParameters\n #_0EC8ED: JSR RenderText_DrawBorderRow\n\n #_0EC8F0: REP #$30\n\n #_0EC8F2: LDA.w #$0006\n #_0EC8F5: STA.b $00\n\n.next_row\n #_0EC8F7: LDY.w #$0006\n #_0EC8FA: JSR RenderText_DrawBorderRow\n\n #_0EC8FD: DEC.b $00\n #_0EC8FF: BNE .next_row\n\n; ---------------------------------------------------------\n\n #_0EC901: LDY.w #$000C\n #_0EC904: JSR RenderText_DrawBorderRow\n\n #_0EC907: LDA.w #$FFFF\n #_0EC90A: STA.w $1002,X\n\n #_0EC90D: SEP #$30\n\n #_0EC90F: LDA.b #$01\n #_0EC911: STA.b $14\n\n #_0EC913: LDA.b #$02\n #_0EC915: STA.w $1CD4\n\n #_0EC918: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawBorderEdges", + "code": "RenderText_DrawBorderEdges:\n #_0EC919: LDA.b #$01\n #_0EC91B: STA.b $14\n\n #_0EC91D: LDA.w $1CD7\n #_0EC920: BEQ .continue\n\n #_0EC922: CMP.b #$07\n #_0EC924: BCC .option_1\n\n #_0EC926: LDA.b #$02\n #_0EC928: BRA .continue\n\n.option_1\n #_0EC92A: LDA.b #$01\n\n.continue\n #_0EC92C: JSL JumpTableLocal\n #_0EC930: dw RenderText_DrawBorderEdgeTop\n #_0EC932: dw RenderText_DrawBorderEdgeMiddle\n #_0EC934: dw RenderText_DrawBorderEdgeBottom\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawBorderEdgeTop", + "code": "RenderText_DrawBorderEdgeTop:\n #_0EC936: REP #$30\n\n #_0EC938: JSR RenderText_SetDrawParameters\n #_0EC93B: JSR RenderText_DrawBorderRow\n\n #_0EC93E: LDA.w #$FFFF\n #_0EC941: STA.w $1002,X\n\n #_0EC944: SEP #$30\n\n #_0EC946: INC.w $1CD7\n\n #_0EC949: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawBorderEdgeMiddle", + "code": "RenderText_DrawBorderEdgeMiddle:\n #_0EC94A: REP #$30\n\n #_0EC94C: LDX.w #$0000\n #_0EC94F: LDY.w #$0006\n #_0EC952: JSR RenderText_DrawBorderRow\n\n #_0EC955: LDA.w #$FFFF\n #_0EC958: STA.w $1002,X\n\n #_0EC95B: SEP #$30\n\n #_0EC95D: INC.w $1CD7\n\n #_0EC960: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawBorderEdgeBottom", + "code": "RenderText_DrawBorderEdgeBottom:\n #_0EC961: REP #$30\n\n #_0EC963: LDX.w #$0000\n #_0EC966: LDY.w #$000C\n #_0EC969: JSR RenderText_DrawBorderRow\n\n #_0EC96C: LDA.w #$FFFF\n #_0EC96F: STA.w $1002,X\n\n #_0EC972: SEP #$30\n\n #_0EC974: INC.w $1CD7\n\n #_0EC977: LDA.b #$02\n #_0EC979: STA.w $1CD4\n\n #_0EC97C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawCharacterTilemap", + "code": "RenderText_DrawCharacterTilemap:\n #_0EC97D: JSR RenderText_BuildCharacterTilemap\n\n #_0EC980: INC.w $1CD4\n\n #_0EC983: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawMessageCharacters", + "code": "RenderText_DrawMessageCharacters:\n #_0EC984: REP #$30\n\n #_0EC986: LDA.w $1CDD\n\n #_0EC989: LDY.w #$0000\n\n #_0EC98C: CMP.w #$0063\n #_0EC98F: BCC .under_99\n\n #_0EC991: LDA.w #$0000\n #_0EC994: STY.w $1CE6\n\n #_0EC997: BRA .continue\n\n; ---------------------------------------------------------\n\n.under_99\n #_0EC999: CMP.w #$003B\n #_0EC99C: BCC .under_59\n\n #_0EC99E: CMP.w #$0050\n #_0EC9A1: BCS .under_59\n\n #_0EC9A3: LDA.w #$0050\n #_0EC9A6: STY.w $1CE6\n #_0EC9A9: BRA .continue\n\n; ---------------------------------------------------------\n\n.under_59\n #_0EC9AB: CMP.w #$0013 ; 19\n #_0EC9AE: BCC .continue\n\n #_0EC9B0: CMP.w #$0028 ; 40\n #_0EC9B3: BCS .continue\n\n #_0EC9B5: LDA.w #$0028\n #_0EC9B8: STY.w $1CE6\n\n; ---------------------------------------------------------\n\n.continue\n #_0EC9BB: STA.w $1CDD\n\n #_0EC9BE: CMP.w #$0012\n #_0EC9C1: BEQ .is_18_or_58\n\n #_0EC9C3: CMP.w #$003A\n #_0EC9C6: BEQ .is_18_or_58\n\n #_0EC9C8: CMP.w #$0062\n #_0EC9CB: BNE .dont_add_to_line\n\n.is_18_or_58\n #_0EC9CD: LDA.w $1CE6\n #_0EC9D0: AND.w #$0007\n #_0EC9D3: CMP.w #$0006\n #_0EC9D6: BCC .dont_add_to_line\n\n #_0EC9D8: INC.w $1CDD\n\n #_0EC9DB: BRA RenderText_DrawMessageCharacters\n\n; ---------------------------------------------------------\n\n.dont_add_to_line\n #_0EC9DD: LDX.w $1CD9\n\n #_0EC9E0: LDA.l $7F1200,X\n #_0EC9E4: AND.w #$007F\n #_0EC9E7: SEC\n #_0EC9E8: SBC.w #$0066\n #_0EC9EB: BPL .didnt_overflow\n\n #_0EC9ED: LDA.w #$0000\n\n.didnt_overflow\n #_0EC9F0: SEP #$30\n\n #_0EC9F2: JSR RenderText_HandleNextDraw\n\n #_0EC9F5: LDA.b #$02\n #_0EC9F7: STA.b $17\n #_0EC9F9: STA.w $0710\n\n #_0EC9FC: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_HandleNextDraw", + "code": "RenderText_HandleNextDraw:\n #_0EC9FD: JSL JumpTableLocal\n #_0ECA01: dw RenderText_DrawCharacter ; 0x66\n #_0ECA03: dw RenderText_NextImage ; 0x67\n #_0ECA05: dw RenderText_Choose2LowOr3 ; 0x68\n #_0ECA07: dw RenderText_ChooseItem ; 0x69\n #_0ECA09: dw RenderText_IgnoreThis ; 0x6A\n #_0ECA0B: dw RenderText_IgnoreThis ; 0x6B\n #_0ECA0D: dw RenderText_IgnoreThis ; 0x6C\n #_0ECA0F: dw RenderText_IgnoreThis ; 0x6D\n #_0ECA11: dw RenderText_IgnoreThis ; 0x6E\n #_0ECA13: dw RenderText_Choose2HighOr3 ; 0x6F\n #_0ECA15: dw Choose3_ArrowMessageID ; 0x70 - bad pointer, but correct\n #_0ECA17: dw RenderText_Choose3 ; 0x71\n #_0ECA19: dw RenderText_Choose1or2 ; 0x72\n #_0ECA1B: dw RenderText_ScrollText ; 0x73\n #_0ECA1D: dw RenderText_SetLine ; 0x74\n #_0ECA1F: dw RenderText_SetLine ; 0x75\n #_0ECA21: dw RenderText_SetLine ; 0x76\n #_0ECA23: dw RenderText_SetColor ; 0x77\n #_0ECA25: dw RenderText_Wait ; 0x78\n #_0ECA27: dw RenderText_PlaySFX ; 0x79\n #_0ECA29: dw RenderText_SetSpeed ; 0x7A\n #_0ECA2B: dw RenderText_Command7B ; 0x7B\n #_0ECA2D: dw RenderText_Command7C ; 0x7C\n #_0ECA2F: dw RenderText_EmptyBuffer ; 0x7D\n #_0ECA31: dw RenderText_PauseForInput ; 0x7E\n #_0ECA33: dw RenderText_Terminate ; 0x7F\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_FinalizeWindow", + "code": "RenderText_FinalizeWindow:\n #_0ECA35: REP #$30\n\n #_0ECA37: JSR RenderText_SetDrawParameters\n\n #_0ECA3A: REP #$30\n\n #_0ECA3C: LDA.w $1CD0\n #_0ECA3F: XBA\n #_0ECA40: STA.w $1002,X\n\n #_0ECA43: INX\n #_0ECA44: INX\n\n #_0ECA45: LDA.w RenderText_ClearStripeDRILL\n #_0ECA48: STA.w $1002,X\n\n #_0ECA4B: INX\n #_0ECA4C: INX\n\n #_0ECA4D: LDA.w RenderText_ClearTileFill\n #_0ECA50: STA.w $1002,X\n\n #_0ECA53: INX\n #_0ECA54: INX\n\n #_0ECA55: LDA.w #$FFFF\n #_0ECA58: STA.w $1002,X\n\n #_0ECA5B: SEP #$30\n\n #_0ECA5D: LDA.b #$01\n #_0ECA5F: STA.b $14\n\n #_0ECA61: STZ.w $1CD8\n\n #_0ECA64: STZ.b $11\n\n #_0ECA66: LDA.w $010C\n #_0ECA69: STA.b $10\n\n #_0ECA6B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawCharacter", + "code": "RenderText_DrawCharacter:\n #_0ECA6C: LDA.w $1CD5\n #_0ECA6F: CMP.b #$02\n\n #_0ECA71: BCC .speed_is_fine\n\n #_0ECA73: LDA.b #$02\n\n.speed_is_fine\n #_0ECA75: JSL JumpTableLocal\n #_0ECA79: dw RenderText_DrawAllCharacters\n #_0ECA7B: dw RenderText_DrawSingleCharacter\n #_0ECA7D: dw RenderText_ReduceCharacterDrawSpeed\n #_0ECA7F: dw RenderText_NullCharacterDraw\n #_0ECA81: dw RenderText_NullCharacterDraw\n #_0ECA83: dw RenderText_NullCharacterDraw\n #_0ECA85: dw RenderText_NullCharacterDraw\n #_0ECA87: dw RenderText_NullCharacterDraw\n #_0ECA89: dw RenderText_NullCharacterDraw\n #_0ECA8B: dw RenderText_NullCharacterDraw\n #_0ECA8D: dw RenderText_NullCharacterDraw\n #_0ECA8F: dw RenderText_NullCharacterDraw\n #_0ECA91: dw RenderText_NullCharacterDraw\n #_0ECA93: dw RenderText_NullCharacterDraw\n #_0ECA95: dw RenderText_NullCharacterDraw\n #_0ECA97: dw RenderText_NullCharacterDraw\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawAllCharacters", + "code": "RenderText_DrawAllCharacters:\n #_0ECA99: JSR RenderText_DrawSingleCharacter\n #_0ECA9C: REP #$30\n\n #_0ECA9E: LDA.w $1CDD\n #_0ECAA1: CMP.w #$0013\n #_0ECAA4: BEQ .exit\n\n #_0ECAA6: CMP.w #$003B\n #_0ECAA9: BEQ .exit\n\n #_0ECAAB: CMP.w #$0063\n #_0ECAAE: BEQ .exit\n\n #_0ECAB0: SEP #$30\n\n #_0ECAB2: JMP.w RenderText_DrawMessageCharacters\n\n.exit\n #_0ECAB5: SEP #$30\n\n #_0ECAB7: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawSingleCharacter", + "code": "RenderText_DrawSingleCharacter:\n #_0ECAB8: REP #$10\n #_0ECABA: LDX.w $1CD9\n #_0ECABD: LDA.l $7F1200,X\n #_0ECAC1: CMP.b #$59\n #_0ECAC3: BEQ .space\n\n #_0ECAC5: SEP #$30\n\n #_0ECAC7: LDA.b #$0C ; SFX3.0C\n #_0ECAC9: STA.w $012F\n\n.space\n #_0ECACC: REP #$30\n\n #_0ECACE: LDA.w $1CDD\n #_0ECAD1: ASL A\n #_0ECAD2: TAX\n\n #_0ECAD3: SEP #$30\n\n #_0ECAD5: JSR RenderText_PerformVWFing\n\n #_0ECAD8: LDA.w $1CD6\n #_0ECADB: STA.w $1CD5\n\n #_0ECADE: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_PerformVWFing", + "code": "RenderText_PerformVWFing:\n #_0ECB5E: SEP #$30\n\n #_0ECB60: PHB\n #_0ECB61: PHK\n #_0ECB62: PLB\n\n #_0ECB63: REP #$20\n\n #_0ECB65: LDA.w $0720\n #_0ECB68: BEQ .same_row\n\n #_0ECB6A: LDY.w $0722\n\n #_0ECB6D: LDA.w .render_offsets,Y\n #_0ECB70: STA.w $0726\n\n #_0ECB73: LDA.w .line_offsets,Y\n #_0ECB76: STA.w $0724\n\n #_0ECB79: STZ.w $0720\n\n.same_row\n #_0ECB7C: SEP #$20\n #_0ECB7E: REP #$10\n\n #_0ECB80: STZ.b $03\n\n; ---------------------------------------------------------\n\n #_0ECB82: LDX.w $1CD9\n #_0ECB85: LDA.l $7F1200,X\n\n #_0ECB89: SEP #$10\n\n #_0ECB8B: TAY\n\n #_0ECB8C: LDA.w .width,Y\n #_0ECB8F: STA.b $02\n\n #_0ECB91: LDX.w $0724\n #_0ECB94: CLC\n #_0ECB95: ADC.l $7EC230,X\n #_0ECB99: STA.l $7EC231,X\n\n #_0ECB9D: INX\n #_0ECB9E: STX.w $0724\n\n #_0ECBA1: TYA\n #_0ECBA2: AND.b #$F0\n #_0ECBA4: ASL A\n #_0ECBA5: STA.b $00\n\n #_0ECBA7: TYA\n #_0ECBA8: AND.b #$0F\n #_0ECBAA: ORA.b $00\n #_0ECBAC: STA.b $0A\n\n #_0ECBAE: STZ.b $0B\n\n; ---------------------------------------------------------\n\n #_0ECBB0: REP #$20\n\n #_0ECBB2: LDA.w #$8000\n #_0ECBB5: STA.b $0D\n\n #_0ECBB7: LDY.b #$0E\n #_0ECBB9: STY.b $0F\n\n #_0ECBBB: REP #$10\n\n #_0ECBBD: LDA.l $7EC22F,X\n #_0ECBC1: AND.w #$00FF\n #_0ECBC4: ASL A\n #_0ECBC5: STA.b $00\n\n #_0ECBC7: LDX.w #$0000\n\n #_0ECBCA: LDA.b $0A\n #_0ECBCC: ASL A\n #_0ECBCD: ASL A\n #_0ECBCE: ASL A\n #_0ECBCF: ASL A\n #_0ECBD0: TAY\n\n; ---------------------------------------------------------\n\n.top_next_row\n #_0ECBD1: LDA.b [$0D],Y\n #_0ECBD3: STA.b $04\n\n #_0ECBD5: PHY\n\n #_0ECBD6: STX.b $06\n\n #_0ECBD8: LDA.b $00\n #_0ECBDA: CLC\n #_0ECBDB: ADC.w $0726\n #_0ECBDE: TAY\n\n #_0ECBDF: AND.w #$0FF0\n #_0ECBE2: CLC\n #_0ECBE3: ADC.b $06\n #_0ECBE5: TAX\n\n #_0ECBE6: TYA\n #_0ECBE7: LSR A\n #_0ECBE8: AND.w #$0007\n #_0ECBEB: TAY\n\n #_0ECBEC: SEP #$20\n\n #_0ECBEE: LDA.b $02\n #_0ECBF0: STA.b $03\n\n.top_not_boundary\n #_0ECBF2: ASL.b $04\n #_0ECBF4: BCC .top_unset_plane_0\n\n #_0ECBF6: LDA.l $7F0000,X\n #_0ECBFA: EOR.w .masks_on,Y\n #_0ECBFD: STA.l $7F0000,X\n\n #_0ECC01: BRA .top_plane_1\n\n.top_unset_plane_0\n #_0ECC03: LDA.l $7F0000,X\n #_0ECC07: AND.w .masks_off,Y\n #_0ECC0A: STA.l $7F0000,X\n\n.top_plane_1\n #_0ECC0E: ASL.b $05\n #_0ECC10: BCC .top_unset_plane_1\n\n #_0ECC12: LDA.l $7F0001,X\n #_0ECC16: EOR.w .masks_on,Y\n #_0ECC19: STA.l $7F0001,X\n\n #_0ECC1D: BRA .top_dec_width\n\n.top_unset_plane_1\n #_0ECC1F: LDA.l $7F0001,X\n #_0ECC23: AND.w .masks_off,Y\n #_0ECC26: STA.l $7F0001,X\n\n.top_dec_width\n #_0ECC2A: DEC.b $03\n #_0ECC2C: BEQ .top_width_zero\n\n #_0ECC2E: INY\n #_0ECC2F: CPY.w #$0008\n #_0ECC32: BNE .top_not_boundary\n\n.top_width_zero\n #_0ECC34: REP #$20\n\n #_0ECC36: TXA\n #_0ECC37: CLC\n #_0ECC38: ADC.w #$0010\n #_0ECC3B: TAX\n\n #_0ECC3C: LDA.b $04\n #_0ECC3E: BEQ .top_none_left\n\n #_0ECC40: STA.l $7F0000,X\n\n.top_none_left\n #_0ECC44: PLY\n #_0ECC45: INY\n #_0ECC46: INY\n\n #_0ECC47: LDX.b $06\n #_0ECC49: INX\n #_0ECC4A: INX\n #_0ECC4B: CPX.w #$0010\n #_0ECC4E: BNE .top_next_row\n\n; ---------------------------------------------------------\n\n #_0ECC50: LDA.w $0726\n #_0ECC53: CLC\n #_0ECC54: ADC.w #$0150\n #_0ECC57: STA.b $08\n\n #_0ECC59: LDX.w #$0000\n\n #_0ECC5C: LDA.b $0A\n #_0ECC5E: CLC\n #_0ECC5F: ADC.w #$0010\n #_0ECC62: ASL A\n #_0ECC63: ASL A\n #_0ECC64: ASL A\n #_0ECC65: ASL A\n #_0ECC66: TAY\n\n; ---------------------------------------------------------\n\n.bottom_next_row\n #_0ECC67: LDA.b [$0D],Y\n #_0ECC69: STA.b $04\n\n #_0ECC6B: PHY\n\n #_0ECC6C: STX.b $06\n\n #_0ECC6E: LDX.w $0724\n #_0ECC71: LDA.l $7EC22F,X\n #_0ECC75: AND.w #$00FF\n #_0ECC78: ASL A\n #_0ECC79: CLC\n #_0ECC7A: ADC.b $08\n #_0ECC7C: TAY\n\n #_0ECC7D: AND.w #$0FF0\n #_0ECC80: CLC\n #_0ECC81: ADC.b $06\n #_0ECC83: TAX\n\n #_0ECC84: TYA\n #_0ECC85: LSR A\n #_0ECC86: AND.w #$0007\n #_0ECC89: TAY\n\n #_0ECC8A: SEP #$20\n\n #_0ECC8C: LDA.b $02\n #_0ECC8E: STA.b $03\n\n.bottom_not_boundary\n #_0ECC90: ASL.b $04\n #_0ECC92: BCC .bottom_unset_plane_0\n\n #_0ECC94: LDA.l $7F0000,X\n #_0ECC98: EOR.w .masks_on,Y\n #_0ECC9B: STA.l $7F0000,X\n\n #_0ECC9F: BRA .bottom_plane_1\n\n.bottom_unset_plane_0\n #_0ECCA1: LDA.l $7F0000,X\n #_0ECCA5: AND.w .masks_off,Y\n #_0ECCA8: STA.l $7F0000,X\n\n.bottom_plane_1\n #_0ECCAC: ASL.b $05\n #_0ECCAE: BCC .bottom_unset_plane_1\n\n #_0ECCB0: LDA.l $7F0001,X\n #_0ECCB4: EOR.w .masks_on,Y\n #_0ECCB7: STA.l $7F0001,X\n\n #_0ECCBB: BRA .bottom_dec_width\n\n.bottom_unset_plane_1\n #_0ECCBD: LDA.l $7F0001,X\n #_0ECCC1: AND.w .masks_off,Y\n #_0ECCC4: STA.l $7F0001,X\n\n.bottom_dec_width\n #_0ECCC8: DEC.b $03\n #_0ECCCA: BEQ .bottom_width_zero\n\n #_0ECCCC: INY\n #_0ECCCD: CPY.w #$0008\n #_0ECCD0: BNE .bottom_not_boundary\n\n.bottom_width_zero\n #_0ECCD2: REP #$20\n\n #_0ECCD4: TXA\n #_0ECCD5: CLC\n #_0ECCD6: ADC.w #$0010\n #_0ECCD9: TAX\n\n #_0ECCDA: LDA.b $04\n #_0ECCDC: BEQ .bottom_none_left\n\n #_0ECCDE: STA.l $7F0000,X\n\n.bottom_none_left\n #_0ECCE2: PLY\n #_0ECCE3: INY\n #_0ECCE4: INY\n\n #_0ECCE5: LDX.b $06\n #_0ECCE7: INX\n #_0ECCE8: INX\n #_0ECCE9: CPX.w #$0010\n #_0ECCEC: BEQ .bottom_done\n\n #_0ECCEE: BRL .bottom_next_row\n\n; ---------------------------------------------------------\n\n.bottom_done\n #_0ECCF1: INC.w $1CD9\n #_0ECCF4: SEP #$30\n #_0ECCF6: PLB\n #_0ECCF7: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ReduceCharacterDrawSpeed", + "code": "RenderText_ReduceCharacterDrawSpeed:\n #_0ECCF9: DEC.w $1CD5\n #_0ECCFC: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_NullCharacterDraw", + "code": "RenderText_NullCharacterDraw:\n #_0ECCFD: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_NextImage", + "code": "RenderText_NextImage:\n #_0ECCFE: LDA.b $10\n #_0ECD00: CMP.b #$14\n #_0ECD02: BNE .not_attract\n\n #_0ECD04: JSL PaletteFilterHistory\n\n #_0ECD08: LDA.l $7EC007\n #_0ECD0C: BNE .exit\n\n.not_attract\n #_0ECD0E: REP #$30\n\n #_0ECD10: INC.w $1CD9\n\n #_0ECD13: SEP #$30\n\n.exit\n #_0ECD15: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Choose2LowOr3", + "code": "RenderText_Choose2LowOr3:\n #_0ECD1A: LDA.w $1CE9\n #_0ECD1D: BEQ .delay_over\n\n #_0ECD1F: DEC A\n #_0ECD20: STA.w $1CE9\n\n #_0ECD23: CMP.b #$01\n #_0ECD25: BNE .exit\n\n #_0ECD27: LDA.b #$24 ; SFX3.24\n #_0ECD29: STA.w $012F\n\n #_0ECD2C: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_over\n #_0ECD2E: LDA.b $F4\n #_0ECD30: TAY\n #_0ECD31: ORA.b $F6\n #_0ECD33: AND.b #$C0\n #_0ECD35: BNE .pressed_face\n\n #_0ECD37: TYA\n #_0ECD38: AND.b #$08\n #_0ECD3A: BNE .pressed_up\n\n #_0ECD3C: TYA\n #_0ECD3D: AND.b #$04\n #_0ECD3F: BNE .pressed_down\n\n.exit\n #_0ECD41: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ChooseItem", + "code": "RenderText_ChooseItem:\n #_0ECD88: LDA.w $1CE9\n #_0ECD8B: BEQ .delay_over\n\n #_0ECD8D: DEC A\n #_0ECD8E: STA.w $1CE9\n\n #_0ECD91: CMP.b #$01\n #_0ECD93: BEQ RenderText_FindNextItem\n\n #_0ECD95: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_over\n #_0ECD97: LDA.b $F4\n #_0ECD99: ORA.b $F6\n #_0ECD9B: AND.b #$C0\n #_0ECD9D: BNE .made_selection\n\n #_0ECD9F: LDA.b $F4\n #_0ECDA1: AND.b #$05\n #_0ECDA3: BEQ .pressed_down_or_right\n\n #_0ECDA5: INC.w $1CE8\n\n #_0ECDA8: BRA .adjust_selection\n\n.pressed_down_or_right\n #_0ECDAA: LDA.b $F4\n #_0ECDAC: AND.b #$0A\n #_0ECDAE: BEQ .adjust_selection\n\n #_0ECDB0: DEC.w $1CE8\n\n #_0ECDB3: JSR RenderText_FindPreviousItem\n #_0ECDB6: JSR RenderText_DrawACharacter\n\n #_0ECDB9: BRA .exit\n\n.adjust_selection\n #_0ECDBB: JSR RenderText_FindNextItem\n #_0ECDBE: JSR RenderText_DrawACharacter\n\n.exit\n #_0ECDC1: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_FindPreviousItem", + "code": "RenderText_FindPreviousItem:\n #_0ECDC8: LDX.w $1CE8\n #_0ECDCB: BPL .no_wrap\n\n #_0ECDCD: LDX.b #$1F\n #_0ECDCF: STX.w $1CE8\n\n.no_wrap\n #_0ECDD2: CPX.b #$0F\n #_0ECDD4: BEQ .check_next\n\n #_0ECDD6: LDA.l $7EF340,X\n #_0ECDDA: BMI .item_missing\n #_0ECDDC: BNE RenderText_DrawSelectedItem\n\n.item_missing\n #_0ECDDE: CPX.b #$20\n #_0ECDE0: BNE .check_next\n\n #_0ECDE2: LDA.l $7EF341,X\n #_0ECDE6: BNE RenderText_DrawSelectedItem\n\n.check_next\n #_0ECDE8: DEC.w $1CE8\n #_0ECDEB: BRA RenderText_FindPreviousItem\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_FindNextItem", + "code": "RenderText_FindNextItem:\n #_0ECDED: LDX.w $1CE8\n #_0ECDF0: CPX.b #$20\n #_0ECDF2: BCC .no_wrap\n\n #_0ECDF4: LDX.b #$00\n #_0ECDF6: STX.w $1CE8\n\n.no_wrap\n #_0ECDF9: CPX.b #$0F\n #_0ECDFB: BEQ .check_next\n\n #_0ECDFD: LDA.l $7EF340,X\n #_0ECE01: BMI .item_missing\n\n #_0ECE03: BNE RenderText_DrawSelectedItem\n\n.item_missing\n #_0ECE05: CPX.b #$20\n #_0ECE07: BNE .check_next\n\n #_0ECE09: LDA.l $7EF341,X\n #_0ECE0D: BNE RenderText_DrawSelectedItem\n\n.check_next\n #_0ECE0F: INC.w $1CE8\n #_0ECE12: BRA RenderText_FindNextItem\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawSelectedItem", + "code": "RenderText_DrawSelectedItem:\n #_0ECE14: TXY\n\n #_0ECE15: TXA\n #_0ECE16: ASL A\n #_0ECE17: TAX\n\n #_0ECE18: LDA.l ItemMenu_ItemGFXPointers+0,X\n #_0ECE1C: STA.b $00\n\n #_0ECE1E: LDA.l ItemMenu_ItemGFXPointers+1,X\n #_0ECE22: STA.b $01\n\n #_0ECE24: LDA.b #ItemMenu_ItemGFXPointers>>16\n #_0ECE26: STA.b $02\n\n #_0ECE28: TYX\n\n #_0ECE29: LDA.l $7EF340,X\n #_0ECE2D: CPX.b #$20\n #_0ECE2F: BEQ .draw_one\n\n #_0ECE31: CPX.b #$03\n #_0ECE33: BNE .not_bombs\n\n.draw_one\n #_0ECE35: LDA.b #$01\n\n.not_bombs\n #_0ECE37: ASL A\n #_0ECE38: ASL A\n #_0ECE39: ASL A\n #_0ECE3A: TAY\n\n #_0ECE3B: LDA.b [$00],Y\n #_0ECE3D: STA.w $13C2\n\n #_0ECE40: INY\n #_0ECE41: LDA.b [$00],Y\n #_0ECE43: STA.w $13C3\n\n #_0ECE46: INY\n #_0ECE47: LDA.b [$00],Y\n #_0ECE49: STA.w $13C4\n\n #_0ECE4C: INY\n #_0ECE4D: LDA.b [$00],Y\n #_0ECE4F: STA.w $13C5\n\n #_0ECE52: INY\n #_0ECE53: LDA.b [$00],Y\n #_0ECE55: STA.w $13EC\n\n #_0ECE58: INY\n #_0ECE59: LDA.b [$00],Y\n #_0ECE5B: STA.w $13ED\n\n #_0ECE5E: INY\n #_0ECE5F: LDA.b [$00],Y\n #_0ECE61: STA.w $13EE\n\n #_0ECE64: INY\n #_0ECE65: LDA.b [$00],Y\n #_0ECE67: STA.w $13EF\n\n #_0ECE6A: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_IgnoreThis", + "code": "RenderText_IgnoreThis:\n #_0ECE6B: REP #$10\n\n #_0ECE6D: LDX.w $1CD9\n #_0ECE70: INX\n\n #_0ECE71: LDA.l $7F1200,X\n #_0ECE75: STA.w $1CEA\n\n #_0ECE78: INX\n #_0ECE79: STX.w $1CD9\n\n #_0ECE7C: SEP #$30\n\n #_0ECE7E: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Choose2HighOr3", + "code": "RenderText_Choose2HighOr3:\n #_0ECE83: LDA.w $1CE9\n #_0ECE86: BEQ .delay_over\n\n #_0ECE88: DEC A\n #_0ECE89: STA.w $1CE9\n\n #_0ECE8C: CMP.b #$01\n #_0ECE8E: BNE .exit\n\n #_0ECE90: LDA.b #$24 ; SFX3.24\n #_0ECE92: STA.w $012F\n\n #_0ECE95: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_over\n #_0ECE97: LDA.b $F4\n #_0ECE99: TAY\n\n #_0ECE9A: ORA.b $F6\n #_0ECE9C: AND.b #$C0\n #_0ECE9E: BNE .made_selection\n\n #_0ECEA0: TYA\n #_0ECEA1: AND.b #$08\n #_0ECEA3: BNE .pressed_up\n\n #_0ECEA5: TYA\n #_0ECEA6: AND.b #$04\n #_0ECEA8: BNE .pressed_down\n\n.exit\n #_0ECEAA: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Choose3_ArrowMessageID", + "code": "Choose3_ArrowMessageID:\n #_0ECEF1: dw $0006 ; MESSAGE 0006\n #_0ECEF3: dw $0007 ; MESSAGE 0007\n #_0ECEF5: dw $0008 ; MESSAGE 0008\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Choose3", + "code": "RenderText_Choose3:\n #_0ECEF7: LDA.w $1CE9\n #_0ECEFA: BEQ .delay_over\n\n #_0ECEFC: DEC A\n #_0ECEFD: STA.w $1CE9\n\n #_0ECF00: CMP.b #$01\n #_0ECF02: BNE .exit\n\n #_0ECF04: LDA.b #$24 ; SFX3.24\n #_0ECF06: STA.w $012F\n\n #_0ECF09: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_over\n #_0ECF0B: LDA.b $F6\n #_0ECF0D: AND.b #$C0\n #_0ECF0F: ORA.b $F4\n #_0ECF11: TAY\n\n #_0ECF12: AND.b #$D0\n #_0ECF14: BNE .made_selection\n\n #_0ECF16: TYA\n #_0ECF17: AND.b #$08\n #_0ECF19: BNE .pressed_up\n\n #_0ECF1B: TYA\n #_0ECF1C: AND.b #$04\n #_0ECF1E: BNE .pressed_down\n\n.exit\n #_0ECF20: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Choose1or2", + "code": "RenderText_Choose1or2:\n #_0ECF72: LDA.w $1CE9\n #_0ECF75: BEQ .delay_over\n\n #_0ECF77: DEC A\n #_0ECF78: STA.w $1CE9\n\n #_0ECF7B: CMP.b #$01\n #_0ECF7D: BNE .exit\n\n #_0ECF7F: LDA.b #$24 ; SFX3.24\n #_0ECF81: STA.w $012F\n\n #_0ECF84: BRA .exit\n\n; ---------------------------------------------------------\n\n.delay_over\n #_0ECF86: LDA.b $F6\n #_0ECF88: AND.b #$C0\n #_0ECF8A: ORA.b $F4\n #_0ECF8C: TAY\n\n #_0ECF8D: AND.b #$D0\n #_0ECF8F: BNE .made_selection\n\n #_0ECF91: TYA\n #_0ECF92: AND.b #$08\n #_0ECF94: BNE .pressed_up\n\n #_0ECF96: TYA\n #_0ECF97: AND.b #$04\n #_0ECF99: BNE .pressed_down\n\n.exit\n #_0ECF9B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ScrollText", + "code": "RenderText_ScrollText:\n #_0ECFE2: PHB\n\n #_0ECFE3: LDA.b #$7F\n #_0ECFE5: PHA\n #_0ECFE6: PLB\n\n #_0ECFE7: LDA.b $F2\n #_0ECFE9: AND.b #$80\n #_0ECFEB: BEQ .no_a_press\n\n #_0ECFED: LDA.l $001CEA\n #_0ECFF1: BRA .useless\n\n.no_a_press\n #_0ECFF3: LDA.l $001CEA\n\n.useless\n #_0ECFF7: STA.b $02\n\n; ---------------------------------------------------------\n\n.next\n #_0ECFF9: REP #$30\n\n #_0ECFFB: STZ.b $00\n\n.copy_next\n #_0ECFFD: LDX.b $00\n\n #_0ECFFF: LDA.w $7F0002,X\n #_0ED002: STA.w $7F0000,X\n\n #_0ED005: LDA.w $7F0004,X\n #_0ED008: STA.w $7F0002,X\n\n #_0ED00B: LDA.w $7F0006,X\n #_0ED00E: STA.w $7F0004,X\n\n #_0ED011: LDA.w $7F0008,X\n #_0ED014: STA.w $7F0006,X\n\n #_0ED017: LDA.w $7F000A,X\n #_0ED01A: STA.w $7F0008,X\n\n #_0ED01D: LDA.w $7F000C,X\n #_0ED020: STA.w $7F000A,X\n\n #_0ED023: LDA.w $7F000E,X\n #_0ED026: STA.w $7F000C,X\n\n #_0ED029: LDA.w $7F0150,X\n #_0ED02C: STA.w $7F000E,X\n\n #_0ED02F: LDA.b $00\n #_0ED031: CLC\n #_0ED032: ADC.w #$0010\n #_0ED035: STA.b $00\n\n #_0ED037: CMP.w #$07E0\n #_0ED03A: BCC .copy_next\n\n; ---------------------------------------------------------\n\n #_0ED03C: STZ.w $7F07DE\n #_0ED03F: STZ.w $7F07CE\n #_0ED042: STZ.w $7F07BE\n #_0ED045: STZ.w $7F07AE\n\n #_0ED048: STZ.w $7F079E\n #_0ED04B: STZ.w $7F078E\n #_0ED04E: STZ.w $7F077E\n #_0ED051: STZ.w $7F076E\n\n #_0ED054: STZ.w $7F075E\n #_0ED057: STZ.w $7F074E\n #_0ED05A: STZ.w $7F073E\n #_0ED05D: STZ.w $7F072E\n\n #_0ED060: STZ.w $7F071E\n #_0ED063: STZ.w $7F070E\n #_0ED066: STZ.w $7F06FE\n #_0ED069: STZ.w $7F06EE\n\n #_0ED06C: STZ.w $7F06DE\n #_0ED06F: STZ.w $7F06CE\n #_0ED072: STZ.w $7F06BE\n #_0ED075: STZ.w $7F06AE\n #_0ED078: STZ.w $7F069E\n\n; ---------------------------------------------------------\n\n #_0ED07B: SEP #$30\n\n #_0ED07D: LDA.l $001CDF\n #_0ED081: CLC\n #_0ED082: ADC.b #$01\n #_0ED084: STA.l $001CDF\n\n #_0ED088: AND.b #$0F\n #_0ED08A: BNE .proceed_to_next\n\n #_0ED08C: REP #$30\n\n #_0ED08E: LDA.l $001CD9\n #_0ED092: CLC\n #_0ED093: ADC.w #$0001\n #_0ED096: STA.l $001CD9\n\n #_0ED09A: LDA.w #$0050\n #_0ED09D: STA.l $001CDD\n\n #_0ED0A1: LDA.l RenderText_VWFRows+4\n #_0ED0A5: STA.l $000722\n\n #_0ED0A9: LDA.w #$0001\n #_0ED0AC: STA.l $000720\n\n #_0ED0B0: SEP #$30\n\n #_0ED0B2: LDA.b #$00\n #_0ED0B4: STA.l $001CE6\n\n #_0ED0B8: STZ.b $02\n\n.proceed_to_next\n #_0ED0BA: DEC.b $02\n\n #_0ED0BC: BMI .exit\n\n #_0ED0BE: JMP.w .next\n\n; ---------------------------------------------------------\n\n.exit\n #_0ED0C1: PLB\n\n #_0ED0C2: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_VWFRows", + "code": "RenderText_VWFRows:\n #_0ED0C3: dw $0000, $0002, $0004\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_SetLine", + "code": "RenderText_SetLine:\n #_0ED0C9: REP #$30\n\n #_0ED0CB: LDX.w $1CD9\n\n #_0ED0CE: LDA.l $7F1200,X\n #_0ED0D2: AND.w #$0003\n #_0ED0D5: ASL A\n #_0ED0D6: TAX\n\n #_0ED0D7: LDA.w RenderText_LinePositions,X\n #_0ED0DA: STA.w $1CDD\n\n #_0ED0DD: LDA.w RenderText_VWFRows+0,X\n #_0ED0E0: STA.w $0722\n\n #_0ED0E3: LDA.w #$0001\n #_0ED0E6: STA.w $0720\n\n #_0ED0E9: INC.w $1CD9\n\n #_0ED0EC: SEP #$30\n\n #_0ED0EE: STZ.w $1CE6\n\n #_0ED0F1: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_SetColor", + "code": "RenderText_SetColor:\n #_0ED0F2: REP #$10\n\n #_0ED0F4: LDA.w $1CDC\n #_0ED0F7: AND.b #$E3\n #_0ED0F9: STA.w $1CDC\n\n #_0ED0FC: LDX.w $1CD9\n #_0ED0FF: INX\n\n #_0ED100: LDA.l $7F1200,X\n #_0ED104: AND.b #$07\n #_0ED106: ASL A\n #_0ED107: ASL A\n #_0ED108: ORA.w $1CDC\n #_0ED10B: STA.w $1CDC\n\n #_0ED10E: INX\n #_0ED10F: STX.w $1CD9\n\n #_0ED112: SEP #$30\n\n #_0ED114: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Wait", + "code": "RenderText_Wait:\n #_0ED115: LDA.b $F2\n #_0ED117: AND.b #$80\n #_0ED119: BEQ .no_a_press\n\n #_0ED11B: LDA.b #$01\n #_0ED11D: BRA .continue\n\n.no_a_press\n #_0ED11F: REP #$30\n\n #_0ED121: LDA.w $1CE0\n #_0ED124: CMP.w #$0002\n #_0ED127: BCC .continue\n\n #_0ED129: LDA.w #$0002\n\n.continue\n #_0ED12C: SEP #$30\n\n #_0ED12E: JSL JumpTableLocal\n #_0ED132: dw RenderText_InitializeWait\n #_0ED134: dw RenderText_TerminateWait\n #_0ED136: dw RenderText_TickWaitClock\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_InitializeWait", + "code": "RenderText_InitializeWait:\n #_0ED138: REP #$30\n\n #_0ED13A: LDX.w $1CD9\n\n #_0ED13D: LDA.l $7F1201,X\n #_0ED141: AND.w #$000F\n #_0ED144: ASL A\n #_0ED145: TAX\n\n #_0ED146: LDA.w RenderText_WaitTimers,X\n #_0ED149: STA.w $1CE0\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_TickWaitClock", + "code": "RenderText_TickWaitClock:\n #_0ED14C: REP #$30\n\n #_0ED14E: DEC.w $1CE0\n\n #_0ED151: SEP #$30\n\n #_0ED153: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_TerminateWait", + "code": "RenderText_TerminateWait:\n #_0ED154: REP #$30\n\n #_0ED156: INC.w $1CD9\n #_0ED159: INC.w $1CD9\n\n #_0ED15C: SEP #$30\n\n #_0ED15E: STZ.w $1CE0\n\n #_0ED161: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_PlaySFX", + "code": "RenderText_PlaySFX:\n #_0ED162: REP #$10\n\n #_0ED164: LDX.w $1CD9\n #_0ED167: INX\n\n #_0ED168: LDA.l $7F1200,X\n #_0ED16C: STA.w $012F\n\n #_0ED16F: INX\n #_0ED170: STX.w $1CD9\n\n #_0ED173: SEP #$30\n\n #_0ED175: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_SetSpeed", + "code": "RenderText_SetSpeed:\n #_0ED176: REP #$10\n\n #_0ED178: LDX.w $1CD9\n #_0ED17B: INX\n\n #_0ED17C: LDA.l $7F1200,X\n #_0ED180: STA.w $1CD6\n #_0ED183: STA.w $1CD5\n\n #_0ED186: INX\n #_0ED187: STX.w $1CD9\n\n #_0ED18A: SEP #$30\n\n #_0ED18C: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Command7B", + "code": "RenderText_Command7B:\n #_0ED18D: REP #$30\n\n #_0ED18F: INC.w $1CD9\n\n #_0ED192: LDX.w $1CD9\n\n #_0ED195: LDA.l $7F1200,X\n #_0ED199: AND.w #$007F\n #_0ED19C: ASL A\n #_0ED19D: ASL A\n #_0ED19E: TAX\n\n #_0ED19F: LDY.w $1CDD\n\n #_0ED1A2: LDA.w Command7BTiles,X\n #_0ED1A5: STA.w $12D8,Y\n\n #_0ED1A8: INX\n #_0ED1A9: INX\n\n #_0ED1AA: LDA.w Command7BTiles,X\n #_0ED1AD: STA.w $1300,Y\n\n #_0ED1B0: INY\n #_0ED1B1: INY\n #_0ED1B2: STY.w $1CDD\n\n #_0ED1B5: INC.w $1CD9\n\n #_0ED1B8: SEP #$30\n\n #_0ED1BA: JMP.w RenderText_DrawMessageCharacters\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Command7C", + "code": "RenderText_Command7C:\n #_0ED1BD: REP #$30\n\n #_0ED1BF: INC.w $1CD9\n\n #_0ED1C2: LDX.w $1CD9\n\n #_0ED1C5: LDA.l $7F1200,X\n #_0ED1C9: AND.w #$007F\n #_0ED1CC: ASL A\n #_0ED1CD: ASL A\n #_0ED1CE: ASL A\n #_0ED1CF: TAX\n\n #_0ED1D0: LDA.w #$0002\n #_0ED1D3: STA.b $00\n #_0ED1D5: LDY.w $1CDD\n\n.next\n #_0ED1D8: LDA.w Command7CTiles,X\n #_0ED1DB: STA.w $12D8,Y\n\n #_0ED1DE: INX\n #_0ED1DF: INX\n\n #_0ED1E0: LDA.w Command7CTiles,X\n #_0ED1E3: STA.w $1300,Y\n\n #_0ED1E6: INX\n #_0ED1E7: INX\n\n #_0ED1E8: INY\n #_0ED1E9: INY\n\n #_0ED1EA: DEC.b $00\n #_0ED1EC: BNE .next\n\n; ---------------------------------------------------------\n\n #_0ED1EE: STY.w $1CDD\n\n #_0ED1F1: INC.w $1CD9\n\n #_0ED1F4: SEP #$30\n\n #_0ED1F6: JMP.w RenderText_DrawMessageCharacters\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_EmptyBuffer", + "code": "RenderText_EmptyBuffer:\n #_0ED1F9: PHB\n\n #_0ED1FA: LDA.b #$7F\n #_0ED1FC: PHA\n #_0ED1FD: PLB\n\n #_0ED1FE: REP #$30\n\n #_0ED200: LDA.w #$07D0\n #_0ED203: TAX\n\n; ---------------------------------------------------------\n\n.next\n #_0ED204: STZ.w $7F0000,X\n #_0ED207: STZ.w $7F0002,X\n #_0ED20A: STZ.w $7F0004,X\n #_0ED20D: STZ.w $7F0006,X\n\n #_0ED210: STZ.w $7F0008,X\n #_0ED213: STZ.w $7F000A,X\n #_0ED216: STZ.w $7F000C,X\n #_0ED219: STZ.w $7F000E,X\n\n #_0ED21C: SEC\n #_0ED21D: SBC.w #$0010\n #_0ED220: TAX\n #_0ED221: BPL .next\n\n; ---------------------------------------------------------\n\n #_0ED223: PLB\n\n #_0ED224: STZ.w $1CDD\n\n #_0ED227: INC.w $1CD9\n\n #_0ED22A: SEP #$30\n\n #_0ED22C: STZ.w $1CE6\n\n #_0ED22F: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_PauseForInput", + "code": "RenderText_PauseForInput:\n #_0ED230: LDA.w $1CE9\n #_0ED233: BEQ .delay\n\n #_0ED235: DEC A\n #_0ED236: STA.w $1CE9\n\n #_0ED239: CMP.b #$01\n #_0ED23B: BNE .exit\n\n #_0ED23D: LDA.b #$24 ; SFX3.24\n #_0ED23F: STA.w $012F\n\n #_0ED242: BRA .exit\n\n.delay\n #_0ED244: LDA.w $00F4\n #_0ED247: ORA.w $00F6\n #_0ED24A: AND.b #$C0\n #_0ED24C: BEQ .exit\n\n #_0ED24E: REP #$30\n\n #_0ED250: INC.w $1CD9\n\n #_0ED253: SEP #$30\n\n #_0ED255: LDA.b #$1C\n #_0ED257: STA.w $1CE9\n\n.exit\n #_0ED25A: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_Terminate", + "code": "RenderText_Terminate:\n #_0ED25B: LDA.w $1CE9\n #_0ED25E: BEQ .delay\n\n #_0ED260: DEC A\n #_0ED261: STA.w $1CE9\n\n #_0ED264: CMP.b #$01\n #_0ED266: BNE .exit\n\n #_0ED268: LDA.b #$24 ; SFX3.24\n #_0ED26A: STA.w $012F\n\n #_0ED26D: BRA .exit\n\n.delay\n #_0ED26F: LDA.b $F4\n #_0ED271: ORA.b $F6\n #_0ED273: BEQ .exit\n\n #_0ED275: LDA.b #$04\n #_0ED277: STA.w $1CD4\n\n #_0ED27A: LDA.b #$1C\n #_0ED27C: STA.w $1CE9\n\n.exit\n #_0ED27F: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_SetDefaultWindowPosition", + "code": "RenderText_SetDefaultWindowPosition:\n #_0ED280: REP #$30\n\n #_0ED282: LDA.b $20\n #_0ED284: SEC\n #_0ED285: SBC.b $E8\n #_0ED287: CMP.w #$0078\n\n #_0ED28A: ROL A\n #_0ED28B: EOR.w #$0001\n #_0ED28E: AND.w #$0001\n\n #_0ED291: ASL A\n #_0ED292: TAX\n\n #_0ED293: LDA.w RenderText_TextPosition,X\n #_0ED296: STA.w $1CD2\n\n #_0ED299: SEP #$30\n\n #_0ED29B: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_SetDrawParameters", + "code": "RenderText_SetDrawParameters:\n #_0ED29C: REP #$30\n\n #_0ED29E: LDA.w $1CD2\n #_0ED2A1: STA.w $1CD0\n\n #_0ED2A4: LDX.w #$0000\n #_0ED2A7: TXY\n\n #_0ED2A8: SEP #$30\n\n #_0ED2AA: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawBorderRow", + "code": "RenderText_DrawBorderRow:\n #_0ED2AB: REP #$30\n\n #_0ED2AD: LDA.w $1CD0\n #_0ED2B0: XBA\n #_0ED2B1: STA.w $1002,X\n\n #_0ED2B4: INX\n #_0ED2B5: INX\n\n #_0ED2B6: XBA\n #_0ED2B7: CLC\n #_0ED2B8: ADC.w #$0020\n #_0ED2BB: STA.w $1CD0\n\n #_0ED2BE: LDA.w #$2F00\n #_0ED2C1: STA.w $1002,X\n\n #_0ED2C4: INX\n #_0ED2C5: INX\n\n #_0ED2C6: LDA.w RenderText_BorderTiles,Y\n #_0ED2C9: STA.w $1002,X\n\n #_0ED2CC: INX\n #_0ED2CD: INX\n\n #_0ED2CE: INY\n #_0ED2CF: INY\n\n #_0ED2D0: LDA.w #$0016\n #_0ED2D3: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_0ED2D5: LDA.w RenderText_BorderTiles,Y\n\n.next_row\n #_0ED2D8: STA.w $1002,X\n\n #_0ED2DB: INX\n #_0ED2DC: INX\n\n #_0ED2DD: DEC.b $0E\n #_0ED2DF: BNE .next_row\n\n; ---------------------------------------------------------\n\n #_0ED2E1: INY\n #_0ED2E2: INY\n\n #_0ED2E3: LDA.w RenderText_BorderTiles,Y\n #_0ED2E6: STA.w $1002,X\n\n #_0ED2E9: INX\n #_0ED2EA: INX\n\n #_0ED2EB: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_BuildCharacterTilemap", + "code": "RenderText_BuildCharacterTilemap:\n #_0ED2EC: REP #$30\n\n #_0ED2EE: LDX.w #$0000\n\n.next\n #_0ED2F1: LDA.w $1CE2\n #_0ED2F4: STA.w $1300,X\n\n #_0ED2F7: INC.w $1CE2\n\n #_0ED2FA: INX\n #_0ED2FB: INX\n #_0ED2FC: CPX.w #$00FC\n #_0ED2FF: BCC .next\n\n; ---------------------------------------------------------\n\n #_0ED301: JSR RenderText_DrawACharacter\n\n #_0ED304: SEP #$30\n\n #_0ED306: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_DrawACharacter", + "code": "RenderText_DrawACharacter:\n #_0ED307: REP #$30\n\n #_0ED309: LDA.w #$0006\n #_0ED30C: STA.b $0E\n\n #_0ED30E: JSR RenderText_SetDrawParameters\n\n #_0ED311: REP #$30\n\n #_0ED313: LDA.w $1CD0\n #_0ED316: CLC\n #_0ED317: ADC.w #$0021\n #_0ED31A: STA.w $1CD0\n\n; ---------------------------------------------------------\n\n.next\n #_0ED31D: LDA.w $1CD0\n #_0ED320: XBA\n #_0ED321: STA.w $1002,X\n\n #_0ED324: XBA\n #_0ED325: CLC\n #_0ED326: ADC.w #$0020\n #_0ED329: STA.w $1CD0\n\n #_0ED32C: INX\n #_0ED32D: INX\n\n #_0ED32E: LDA.w #$2900\n #_0ED331: STA.w $1002,X\n\n #_0ED334: INX\n #_0ED335: INX\n #_0ED336: LDA.w #$0015\n #_0ED339: STA.b $0C\n\n.copy\n #_0ED33B: LDA.w $1300,Y\n #_0ED33E: STA.w $1002,X\n\n #_0ED341: INX\n #_0ED342: INX\n\n #_0ED343: INY\n #_0ED344: INY\n\n #_0ED345: DEC.b $0C\n #_0ED347: BNE .copy\n\n #_0ED349: DEC.b $0E\n #_0ED34B: BNE .next\n\n; ---------------------------------------------------------\n\n #_0ED34D: LDA.w #$FFFF\n #_0ED350: STA.w $1002,X\n\n #_0ED353: SEP #$30\n\n #_0ED355: LDA.b #$01\n #_0ED357: STA.b $14\n\n #_0ED359: RTS", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_InitialSettings", + "code": "RenderText_InitialSettings:\n #_0ED35A: db $00, $00, $00, $00, $00, $00, $00, $00\n #_0ED362: db $01, $00, $00, $00, $39, $00, $00, $00\n #_0ED36A: db $00\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_MoreInitialSettings", + "code": "RenderText_MoreInitialSettings:\n #_0ED36B: db $00, $00, $00, $00, $00, $00, $00, $00\n #_0ED373: db $1C, $04, $00, $00, $00, $00, $00, $00\n #_0ED37B: db $00, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_BorderTiles", + "code": "RenderText_BorderTiles:\n #_0ED37F: dw $28F3, $28F4, $68F3, $28C8\n #_0ED387: dw $387F, $68C8, $A8F3, $A8F4\n #_0ED38F: dw $E8F3\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_TextPosition", + "code": "RenderText_TextPosition:\n #_0ED391: dw $6125, $6244\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ClearStripeDRILL", + "code": "RenderText_ClearStripeDRILL:\n #_0ED395: dw $2E42\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_ClearTileFill", + "code": "RenderText_ClearTileFill:\n #_0ED397: dw $387F\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_LinePositions", + "code": "RenderText_LinePositions:\n #_0ED399: dw $0000, $0028, $0050\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Command7CTiles", + "code": "Command7CTiles:\n #_0ED39F: dw $24B8, $24BA, $24BC, $24BE\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Command7BTiles", + "code": "Command7BTiles:\n #_0ED3A7: dw $24B8, $24BA, $24BC, $24BE\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RenderText_WaitTimers", + "code": "RenderText_WaitTimers:\n #_0ED3AF: dw $001F, $003F, $005E, $007D\n #_0ED3B7: dw $009C, $00BC, $00DB, $00FA\n #_0ED3BF: dw $0119, $0139, $0158, $0177\n #_0ED3C7: dw $0196, $01B6, $01D5, $01F4\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "UNREACH_0ED3CF", + "code": "UNREACH_0ED3CF:\n #_0ED3CF: db $08, $03\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "TextCommandLengths", + "code": "TextCommandLengths:\n #_0ED3D1: db $01, $01, $01, $01, $01, $02, $02, $02\n #_0ED3D9: db $02, $01, $01, $01, $01, $01, $01, $01\n #_0ED3E1: db $01, $02, $02, $02, $02, $01, $01, $01\n #_0ED3E9: db $01, $01\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "CreateMessagePointers", + "code": "CreateMessagePointers:\n #_0ED3EB: PHB\n #_0ED3EC: PHK\n #_0ED3ED: PLB\n\n #_0ED3EE: LDA.b #Message_Data>>16\n #_0ED3F0: STA.b $02\n\n #_0ED3F2: REP #$30\n\n #_0ED3F4: LDA.w #Message_Data\n #_0ED3F7: STA.b $00\n\n #_0ED3F9: LDX.w #$0000\n\n; ---------------------------------------------------------\n\n.next_message\n #_0ED3FC: LDA.b $00\n #_0ED3FE: STA.l $7F71C0,X\n\n #_0ED402: LDA.b $01\n #_0ED404: STA.l $7F71C1,X\n\n #_0ED408: INX\n #_0ED409: INX\n #_0ED40A: INX\n\n.next_byte\n #_0ED40B: LDA.b [$00]\n #_0ED40D: AND.w #$00FF\n #_0ED410: TAY\n\n #_0ED411: LDA.w RenderText_MoreInitialSettings,Y\n #_0ED414: AND.w #$00FF\n #_0ED417: CPY.w #$0067\n #_0ED41A: BCC .not_command\n\n #_0ED41C: CPY.w #$0080\n #_0ED41F: BCC .is_command\n\n.not_command\n #_0ED421: LDA.w #$0001\n\n.is_command\n #_0ED424: CLC\n #_0ED425: ADC.b $00\n #_0ED427: STA.b $00\n\n #_0ED429: CPY.w #$007F\n #_0ED42C: BEQ .next_message\n\n #_0ED42E: CPY.w #$0080\n #_0ED431: BNE .not_bank_change\n\n #_0ED433: DEX\n #_0ED434: DEX\n #_0ED435: DEX\n\n #_0ED436: LDA.w #Message_DataExtra\n #_0ED439: STA.b $00\n\n #_0ED43B: LDA.w #Message_DataExtra>>16\n #_0ED43E: STA.b $02\n\n #_0ED440: BRA .next_message\n\n.not_bank_change\n #_0ED442: CPY.w #$00FF\n #_0ED445: BNE .next_byte\n\n; ---------------------------------------------------------\n\n #_0ED447: SEP #$30\n\n #_0ED449: PLB\n\n #_0ED44A: RTL", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0ED44B", + "code": "NULL_0ED44B:\n #_0ED44B: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED453: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED45B: db $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "UnderworldPaletteSets", + "code": "UnderworldPaletteSets:\n #_0ED460: db $00, $00, $03, $01 ; 0x00\n #_0ED464: db $02, $00, $03, $01 ; 0x01\n #_0ED468: db $04, $00, $0A, $01 ; 0x02\n #_0ED46C: db $06, $00, $01, $07 ; 0x03\n #_0ED470: db $0A, $02, $02, $07 ; 0x04\n #_0ED474: db $04, $04, $03, $0A ; 0x05\n #_0ED478: db $0C, $05, $08, $14 ; 0x06\n #_0ED47C: db $0E, $00, $03, $0A ; 0x07\n #_0ED480: db $02, $00, $0F, $14 ; 0x08\n #_0ED484: db $0A, $02, $00, $07 ; 0x09\n #_0ED488: db $02, $00, $0F, $0C ; 0x0A\n #_0ED48C: db $06, $00, $06, $07 ; 0x0B\n #_0ED490: db $00, $00, $0E, $12 ; 0x0C\n #_0ED494: db $12, $05, $05, $0B ; 0x0D\n #_0ED498: db $12, $00, $02, $0C ; 0x0E\n #_0ED49C: db $10, $05, $0A, $07 ; 0x0F\n #_0ED4A0: db $10, $00, $10, $0C ; 0x10\n #_0ED4A4: db $16, $07, $02, $07 ; 0x11\n #_0ED4A8: db $16, $00, $07, $0F ; 0x12\n #_0ED4AC: db $08, $00, $04, $0C ; 0x13\n #_0ED4B0: db $08, $00, $04, $09 ; 0x14\n #_0ED4B4: db $04, $00, $03, $01 ; 0x15\n #_0ED4B8: db $14, $00, $04, $04 ; 0x16\n #_0ED4BC: db $14, $00, $14, $0C ; 0x17\n #_0ED4C0: db $18, $05, $07, $0B ; 0x18\n #_0ED4C4: db $18, $06, $10, $0C ; 0x19\n #_0ED4C8: db $1A, $05, $08, $14 ; 0x1A\n #_0ED4CC: db $1A, $02, $00, $07 ; 0x1B\n #_0ED4D0: db $06, $00, $03, $0A ; 0x1C\n #_0ED4D4: db $1C, $00, $03, $01 ; 0x1D\n #_0ED4D8: db $1E, $00, $0B, $11 ; 0x1E\n #_0ED4DC: db $04, $00, $0B, $11 ; 0x1F\n #_0ED4E0: db $0E, $00, $00, $02 ; 0x20\n #_0ED4E4: db $20, $08, $13, $0D ; 0x21\n #_0ED4E8: db $0A, $00, $03, $0A ; 0x22\n #_0ED4EC: db $14, $00, $04, $04 ; 0x23\n #_0ED4F0: db $1A, $02, $02, $07 ; 0x24\n #_0ED4F4: db $1A, $0A, $00, $00 ; 0x25\n #_0ED4F8: db $00, $00, $03, $02 ; 0x26\n #_0ED4FC: db $0E, $00, $03, $07 ; 0x27\n #_0ED500: db $1A, $05, $05, $0B ; 0x28\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldPaletteSet", + "code": "OverworldPaletteSet:\n #_0ED504: db $00, $FF, $07, $FF ; 0x00\n #_0ED508: db $00, $01, $07, $FF ; 0x01\n #_0ED50C: db $00, $02, $07, $FF ; 0x02\n #_0ED510: db $00, $03, $07, $FF ; 0x03\n #_0ED514: db $00, $04, $07, $FF ; 0x04\n #_0ED518: db $00, $05, $07, $FF ; 0x05\n #_0ED51C: db $00, $06, $07, $FF ; 0x06\n #_0ED520: db $07, $06, $05, $FF ; 0x07\n #_0ED524: db $00, $08, $07, $FF ; 0x08\n #_0ED528: db $00, $09, $07, $FF ; 0x09\n #_0ED52C: db $00, $0A, $07, $FF ; 0x0A\n #_0ED530: db $00, $0B, $07, $FF ; 0x0B\n #_0ED534: db $00, $FF, $07, $FF ; 0x0C\n #_0ED538: db $00, $FF, $07, $FF ; 0x0D\n #_0ED53C: db $03, $04, $07, $FF ; 0x0E\n #_0ED540: db $04, $04, $03, $FF ; 0x0F\n #_0ED544: db $10, $FF, $06, $FF ; 0x10\n #_0ED548: db $10, $01, $06, $FF ; 0x11\n #_0ED54C: db $10, $11, $06, $FF ; 0x12\n #_0ED550: db $10, $03, $06, $FF ; 0x13\n #_0ED554: db $10, $04, $06, $FF ; 0x14\n #_0ED558: db $10, $05, $06, $FF ; 0x15\n #_0ED55C: db $10, $06, $06, $FF ; 0x16\n #_0ED560: db $12, $13, $04, $FF ; 0x17\n #_0ED564: db $12, $05, $04, $FF ; 0x18\n #_0ED568: db $10, $09, $06, $FF ; 0x19\n #_0ED56C: db $10, $0B, $06, $FF ; 0x1A\n #_0ED570: db $10, $0C, $06, $FF ; 0x1B\n #_0ED574: db $10, $0D, $06, $FF ; 0x1C\n #_0ED578: db $10, $0E, $06, $FF ; 0x1D\n #_0ED57C: db $10, $0F, $06, $FF ; 0x1E\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldSpritesPaletteSet", + "code": "OverworldSpritesPaletteSet:\n #_0ED580: db $FF, $FF\n #_0ED582: db $03, $0A\n #_0ED584: db $03, $06\n #_0ED586: db $03, $01\n #_0ED588: db $00, $02\n #_0ED58A: db $03, $0E\n #_0ED58C: db $03, $02\n #_0ED58E: db $13, $01\n #_0ED590: db $0B, $0C\n #_0ED592: db $11, $01\n #_0ED594: db $07, $05\n #_0ED596: db $11, $00\n #_0ED598: db $09, $0B\n #_0ED59A: db $0F, $05\n #_0ED59C: db $03, $05\n #_0ED59E: db $03, $07\n #_0ED5A0: db $0F, $02\n #_0ED5A2: db $0A, $02\n #_0ED5A4: db $05, $01\n #_0ED5A6: db $0C, $0E\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldPalettesLoader", + "code": "OverworldPalettesLoader:\n #_0ED5A8: ASL A\n #_0ED5A9: ASL A\n #_0ED5AA: TAX\n\n #_0ED5AB: STZ.w $0AA9\n\n #_0ED5AE: LDA.l OverworldPaletteSet+0,X\n #_0ED5B2: BMI .dont_change_a\n\n #_0ED5B4: STA.w $0AB4\n\n.dont_change_a\n #_0ED5B7: LDA.l OverworldPaletteSet+1,X\n #_0ED5BB: BMI .dont_change_b\n\n #_0ED5BD: STA.w $0AB5\n\n.dont_change_b\n #_0ED5C0: LDA.l OverworldPaletteSet+2,X\n #_0ED5C4: BMI .dont_change_c\n\n #_0ED5C6: STA.w $0AB8\n\n.dont_change_c\n #_0ED5C9: LDA.b $00\n #_0ED5CB: ASL A\n #_0ED5CC: TAX\n\n #_0ED5CD: LDA.l OverworldSpritesPaletteSet+0,X\n #_0ED5D1: BMI .dont_change_d\n\n #_0ED5D3: STA.w $0AAD\n\n.dont_change_d\n #_0ED5D6: LDA.l OverworldSpritesPaletteSet+1,X\n #_0ED5DA: BMI .dont_change_e\n\n #_0ED5DC: STA.w $0AAE\n\n.dont_change_e\n #_0ED5DF: JSL Palettes_Load_OWBG1\n #_0ED5E3: JSL Palettes_Load_OWBG2\n #_0ED5E7: JSL Palettes_Load_OWBG3\n\n #_0ED5EB: JSL Palettes_Load_SpriteAux1\n #_0ED5EF: JSL Palettes_Load_SpriteAux2\n\n #_0ED5F3: RTL", + "file": "bank_0E.asm" + }, + { + "name": "SetBGandFixedColorBlack", + "code": "SetBGandFixedColorBlack:\n #_0ED5F4: REP #$20\n\n #_0ED5F6: LDA.w #$0000 ; RGB #000000\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "SetBGColorMainBuffer", + "code": "SetBGColorMainBuffer:\n #_0ED5F9: STA.l $7EC500\n #_0ED5FD: STA.l $7EC540\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "SetBGColorCacheOnly", + "code": "SetBGColorCacheOnly:\n #_0ED601: STA.l $7EC300\n #_0ED605: STA.l $7EC340\n\n #_0ED609: SEP #$30\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "FixedColorBlack", + "code": "FixedColorBlack:\n #_0ED60B: LDA.b #$20 ; Fixed color RGB: #000000\n #_0ED60D: STA.b $9C\n\n #_0ED60F: LDA.b #$40\n #_0ED611: STA.b $9D\n\n #_0ED613: LDA.b #$80\n #_0ED615: STA.b $9E\n\n #_0ED617: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Overworld_SetScreenBGColor", + "code": "Overworld_SetScreenBGColor:\n #_0ED618: JSR .do_ittttt\n\n #_0ED61B: BRA SetBGColorMainBuffer\n\n; ---------------------------------------------------------\n\n#Overworld_SetScreenBGColorCacheOnly:\n #_0ED61D: JSR .do_ittttt\n\n #_0ED620: BRA SetBGColorCacheOnly\n\n; ---------------------------------------------------------\n\n.do_ittttt\n #_0ED622: REP #$30\n\n #_0ED624: LDX.w #$2669 ; RGB: #489848\n\n #_0ED627: LDA.b $8A\n #_0ED629: CMP.w #$0080 ; SPOW\n #_0ED62C: BCC .normal_overworld\n\n #_0ED62E: LDA.b $A0\n #_0ED630: CMP.w #$0183 ; OW 83\n #_0ED633: BEQ .special_area\n\n #_0ED635: CMP.w #$0182 ; OW 82\n #_0ED638: BEQ .special_area\n\n #_0ED63A: CMP.w #$0180 ; OW 80\n #_0ED63D: BNE .set_color\n\n.special_area\n #_0ED63F: LDX.w #$19C6 ; RGB: #307030\n #_0ED642: BRA .set_color\n\n.normal_overworld\n #_0ED644: LDX.w #$2669 ; RGB: #489848\n\n #_0ED647: LDA.b $8A\n\n #_0ED649: AND.w #$0040\n #_0ED64C: BEQ .set_color\n\n #_0ED64E: LDX.w #$2A32 ; RGB: #908850\n\n.set_color\n #_0ED651: TXA\n\n #_0ED652: RTS", + "file": "bank_0E.asm" + }, + { + "name": "UNREACHABLE_0ED653", + "code": "UNREACHABLE_0ED653:\n #_0ED653: LDA.b #$01\n #_0ED655: STA.b $EE\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Palette_AssertTranslucencySwap", + "code": "Palette_AssertTranslucencySwap:\n #_0ED657: LDA.b #$01\n #_0ED659: STA.w $0ABD\n\n.apply\n #_0ED65C: REP #$21\n\n #_0ED65E: LDX.b #$00\n\n.copy_next\n #_0ED660: LDA.l $7EC400,X\n #_0ED664: PHA\n\n #_0ED665: LDA.l $7EC4E0,X\n #_0ED669: STA.l $7EC400,X\n #_0ED66D: STA.l $7EC600,X\n\n #_0ED671: PLA\n #_0ED672: STA.l $7EC4E0,X\n #_0ED676: STA.l $7EC6E0,X\n\n #_0ED67A: LDA.l $7EC410,X\n #_0ED67E: PHA\n\n #_0ED67F: LDA.l $7EC4F0,X\n #_0ED683: STA.l $7EC410,X\n #_0ED687: STA.l $7EC610,X\n\n #_0ED68B: PLA\n #_0ED68C: STA.l $7EC4F0,X\n #_0ED690: STA.l $7EC6F0,X\n\n #_0ED694: LDA.l $7EC4B0,X\n #_0ED698: PHA\n\n #_0ED699: LDA.l $7EC470,X\n #_0ED69D: STA.l $7EC4B0,X\n #_0ED6A1: STA.l $7EC6B0,X\n\n #_0ED6A5: PLA\n #_0ED6A6: STA.l $7EC470,X\n #_0ED6AA: STA.l $7EC670,X\n\n #_0ED6AE: INX\n #_0ED6AF: INX\n #_0ED6B0: CPX.b #$10\n #_0ED6B2: BNE .copy_next\n\n; ---------------------------------------------------------\n\n #_0ED6B4: SEP #$20\n\n #_0ED6B6: INC.b $15\n\n #_0ED6B8: RTL", + "file": "bank_0E.asm" + }, + { + "name": "RefreshLinkEquipmentPalettes_sword_and_mail", + "code": "RefreshLinkEquipmentPalettes_sword_and_mail:\n #_0ED6C0: REP #$20\n\n #_0ED6C2: LDA.l $7EF359\n #_0ED6C6: STA.b $0C\n\n #_0ED6C8: LDA.l $7EF35B\n #_0ED6CC: AND.w #$00FF\n #_0ED6CF: BRA RefreshLinkEquipmentPalettes\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RefreshLinkEquipmentPalettes_zap", + "code": "RefreshLinkEquipmentPalettes_zap:\n #_0ED6D1: REP #$20\n\n #_0ED6D3: LDA.w #$0202\n #_0ED6D6: STA.b $0C\n\n #_0ED6D8: LDA.w #$0404\n #_0ED6DB: BRA RefreshLinkEquipmentPalettes\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RefreshLinkEquipmentPalettes_bunny", + "code": "RefreshLinkEquipmentPalettes_bunny:\n #_0ED6DD: REP #$20\n\n #_0ED6DF: LDA.l $7EF359\n #_0ED6E3: STA.b $0C\n\n #_0ED6E5: LDA.w #$0303\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "RefreshLinkEquipmentPalettes", + "code": "RefreshLinkEquipmentPalettes:\n #_0ED6E8: STA.b $0E\n\n #_0ED6EA: LDA.w #PaletteData>>16\n #_0ED6ED: STA.b $02\n\n #_0ED6EF: LDX.b $0C\n\n #_0ED6F1: LDA.l SwordPaletteOffsets,X\n #_0ED6F5: AND.w #$00FF\n #_0ED6F8: CLC\n #_0ED6F9: ADC.w #PaletteData_sword_00\n\n #_0ED6FC: REP #$10\n\n #_0ED6FE: LDX.w #$01B2\n #_0ED701: LDY.w #$0002\n #_0ED704: JSR .copy_palette\n\n; ---------------------------------------------------------\n\n #_0ED707: SEP #$10\n\n #_0ED709: LDX.b $0D\n\n #_0ED70B: LDA.l ShieldPaletteOffsets,X\n #_0ED70F: AND.w #$00FF\n #_0ED712: CLC\n #_0ED713: ADC.w #PaletteData_shield_00\n\n #_0ED716: REP #$10\n\n #_0ED718: LDX.w #$01B8\n #_0ED71B: LDY.w #$0003\n #_0ED71E: JSR .copy_palette\n\n; ---------------------------------------------------------\n\n #_0ED721: SEP #$10\n\n #_0ED723: LDX.b $0E\n\n #_0ED725: LDA.l LinkMailPalettesOffsets,X\n #_0ED729: AND.w #$00FF\n #_0ED72C: ASL A\n #_0ED72D: CLC\n #_0ED72E: ADC.w #PaletteData_link_00\n\n #_0ED731: REP #$10\n\n #_0ED733: LDX.w #$01E2\n #_0ED736: LDY.w #$000E\n #_0ED739: JSR .copy_palette\n\n; ---------------------------------------------------------\n\n #_0ED73C: SEP #$30\n\n #_0ED73E: INC.b $15\n\n #_0ED740: RTL", + "file": "bank_0E.asm" + }, + { + "name": "PaletteFilter_Oversaturation", + "code": "PaletteFilter_Oversaturation:\n #_0ED757: REP #$20\n\n #_0ED759: LDX.b #$00\n\n; ---------------------------------------------------------\n\n.next_color\n #_0ED75B: LDA.l $7EC340,X\n #_0ED75F: JSR OversaturateColor\n #_0ED762: STA.l $7EC540,X\n\n #_0ED766: LDA.l $7EC350,X\n #_0ED76A: JSR OversaturateColor\n #_0ED76D: STA.l $7EC550,X\n\n #_0ED771: LDA.l $7EC360,X\n #_0ED775: JSR OversaturateColor\n #_0ED778: STA.l $7EC560,X\n\n #_0ED77C: LDA.l $7EC370,X\n #_0ED780: JSR OversaturateColor\n #_0ED783: STA.l $7EC570,X\n\n #_0ED787: LDA.l $7EC380,X\n #_0ED78B: JSR OversaturateColor\n #_0ED78E: STA.l $7EC580,X\n\n #_0ED792: LDA.l $7EC390,X\n #_0ED796: JSR OversaturateColor\n #_0ED799: STA.l $7EC590,X\n\n #_0ED79D: LDA.l $7EC3A0,X\n #_0ED7A1: JSR OversaturateColor\n #_0ED7A4: STA.l $7EC5A0,X\n\n #_0ED7A8: LDA.l $7EC3B0,X\n #_0ED7AC: JSR OversaturateColor\n #_0ED7AF: STA.l $7EC5B0,X\n\n #_0ED7B3: LDA.l $7EC3C0,X\n #_0ED7B7: JSR OversaturateColor\n #_0ED7BA: STA.l $7EC5C0,X\n\n #_0ED7BE: LDA.l $7EC3D0,X\n #_0ED7C2: JSR OversaturateColor\n #_0ED7C5: STA.l $7EC5D0,X\n\n #_0ED7C9: LDA.l $7EC3E0,X\n #_0ED7CD: JSR OversaturateColor\n #_0ED7D0: STA.l $7EC5E0,X\n\n #_0ED7D4: LDA.l $7EC3F0,X\n #_0ED7D8: JSR OversaturateColor\n #_0ED7DB: STA.l $7EC5F0,X\n\n #_0ED7DF: INX\n #_0ED7E0: INX\n #_0ED7E1: CPX.b #$10\n #_0ED7E3: BEQ .done\n\n #_0ED7E5: JMP.w .next_color\n\n; ---------------------------------------------------------\n\n.done\n #_0ED7E8: REP #$10\n\n #_0ED7EA: LDA.l $7EC540\n #_0ED7EE: TAY\n\n #_0ED7EF: LDA.l $7EC300\n #_0ED7F3: BNE .dont_copy_that\n\n #_0ED7F5: TAY\n\n.dont_copy_that\n #_0ED7F6: TYA\n #_0ED7F7: STA.l $7EC500\n\n #_0ED7FB: SEP #$30\n\n #_0ED7FD: RTL", + "file": "bank_0E.asm" + }, + { + "name": "OversaturateColor", + "code": "OversaturateColor:\n #_0ED7FE: STA.b $00\n\n #_0ED800: AND.w #$001F\n #_0ED803: CLC\n #_0ED804: ADC.w #$000E\n\n #_0ED807: CMP.w #$001F\n #_0ED80A: BCC .oversaturated_r\n\n #_0ED80C: LDA.w #$001F\n\n.oversaturated_r\n #_0ED80F: STA.b $02\n\n #_0ED811: LDA.b $00\n #_0ED813: AND.w #$03E0\n #_0ED816: CLC\n #_0ED817: ADC.w #$01C0\n\n #_0ED81A: CMP.w #$03E0\n #_0ED81D: BCC .oversaturated_g\n\n #_0ED81F: LDA.w #$03E0\n\n.oversaturated_g\n #_0ED822: STA.b $04\n\n #_0ED824: LDA.b $00\n #_0ED826: AND.w #$7C00\n #_0ED829: CLC\n #_0ED82A: ADC.w #$3800\n\n #_0ED82D: CMP.w #$7C00\n #_0ED830: BCC .oversaturated_b\n\n #_0ED832: LDA.w #$7C00\n\n.oversaturated_b\n #_0ED835: ORA.b $02\n #_0ED837: ORA.b $04\n\n #_0ED839: RTS", + "file": "bank_0E.asm" + }, + { + "name": "Palette_RestoreBGFromFlash", + "code": "Palette_RestoreBGFromFlash:\n #_0ED83A: REP #$20\n\n #_0ED83C: LDX.b #$00\n\n; ---------------------------------------------------------\n\n.next_color\n #_0ED83E: LDA.l $7EC340,X\n #_0ED842: STA.l $7EC540,X\n\n #_0ED846: LDA.l $7EC350,X\n #_0ED84A: STA.l $7EC550,X\n\n #_0ED84E: LDA.l $7EC360,X\n #_0ED852: STA.l $7EC560,X\n\n #_0ED856: LDA.l $7EC370,X\n #_0ED85A: STA.l $7EC570,X\n\n #_0ED85E: LDA.l $7EC380,X\n #_0ED862: STA.l $7EC580,X\n\n #_0ED866: LDA.l $7EC390,X\n #_0ED86A: STA.l $7EC590,X\n\n #_0ED86E: LDA.l $7EC3A0,X\n #_0ED872: STA.l $7EC5A0,X\n\n #_0ED876: LDA.l $7EC3B0,X\n #_0ED87A: STA.l $7EC5B0,X\n\n #_0ED87E: LDA.l $7EC3C0,X\n #_0ED882: STA.l $7EC5C0,X\n\n #_0ED886: LDA.l $7EC3D0,X\n #_0ED88A: STA.l $7EC5D0,X\n\n #_0ED88E: LDA.l $7EC3E0,X\n #_0ED892: STA.l $7EC5E0,X\n\n #_0ED896: LDA.l $7EC3F0,X\n #_0ED89A: STA.l $7EC5F0,X\n\n #_0ED89E: INX\n #_0ED89F: INX\n #_0ED8A0: CPX.b #$10\n #_0ED8A2: BNE .next_color\n\n #_0ED8A4: LDA.l $7EC540\n #_0ED8A8: STA.l $7EC500\n\n #_0ED8AC: SEP #$30\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Palette_RestoreFixedColor", + "code": "Palette_RestoreFixedColor:\n #_0ED8AE: LDA.b $1B\n #_0ED8B0: BNE .exit\n\n #_0ED8B2: REP #$10\n\n #_0ED8B4: LDX.w #$4020 ; Fixed color RGB: #000000\n #_0ED8B7: STX.b $9C\n\n #_0ED8B9: LDX.w #$8040\n #_0ED8BC: STX.b $9D\n\n #_0ED8BE: LDX.w #$4F33 ; Fixed color RGB: #987848\n #_0ED8C1: LDY.w #$894F\n\n #_0ED8C4: LDA.b $8A ; OW 00\n #_0ED8C6: BEQ .exit\n\n #_0ED8C8: CMP.b #$40 ; OW 40\n #_0ED8CA: BEQ .exit\n\n #_0ED8CC: CMP.b #$5B ; OW 5B\n #_0ED8CE: BEQ .set_fixedcol\n\n #_0ED8D0: LDX.w #$4C26 ; Fixed color RGB: #306060\n #_0ED8D3: LDY.w #$8C4C\n\n #_0ED8D6: CMP.b #$03 ; OW 03\n #_0ED8D8: BEQ .set_fixedcol\n\n #_0ED8DA: CMP.b #$05 ; OW 05\n #_0ED8DC: BEQ .set_fixedcol\n\n #_0ED8DE: CMP.b #$07 ; OW 07\n #_0ED8E0: BEQ .set_fixedcol\n\n #_0ED8E2: LDX.w #$4A26 ; Fixed color RGB: #305038\n #_0ED8E5: LDY.w #$874A\n\n #_0ED8E8: CMP.b #$43 ; OW 43\n #_0ED8EA: BEQ .set_fixedcol\n\n #_0ED8EC: CMP.b #$45 ; OW 45\n #_0ED8EE: BEQ .set_fixedcol\n\n #_0ED8F0: CMP.b #$47 ; OW 47\n #_0ED8F2: BNE .exit\n\n.set_fixedcol\n #_0ED8F4: STX.b $9C\n #_0ED8F6: STY.b $9D\n\n.exit\n #_0ED8F8: SEP #$10\n\n #_0ED8FA: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Palette_RestoreBGAndHUD", + "code": "Palette_RestoreBGAndHUD:\n #_0ED8FB: REP #$20\n\n #_0ED8FD: LDX.b #$7E\n\n.next_color\n #_0ED8FF: LDA.l $7EC300,X\n #_0ED903: STA.l $7EC500,X\n\n #_0ED907: LDA.l $7EC380,X\n #_0ED90B: STA.l $7EC580,X\n\n #_0ED90F: DEX\n #_0ED910: DEX\n #_0ED911: BPL .next_color\n\n #_0ED913: SEP #$20\n\n #_0ED915: INC.b $15\n\n #_0ED917: JMP.w Palette_RestoreFixedColor\n\n; =========================================================\n; FREE ROM: 0x26\n; =========================================================", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0ED91A", + "code": "NULL_0ED91A:\n #_0ED91A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED922: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED92A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED932: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0ED93A: db $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Module0E_03_02_BrightenMap", + "code": "Module0E_03_02_BrightenMap:\n #_0ED940: INC.b $13\n\n #_0ED942: LDA.b $13\n #_0ED944: CMP.b #$0F\n #_0ED946: BNE EXIT_0ED94B\n\n #_0ED948: INC.w $0200\n\n; ---------------------------------------------------------\n\n#EXIT_0ED94B:\n #_0ED94B: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Module0E_03_00_DarkenAndPrep", + "code": "Module0E_03_00_DarkenAndPrep:\n #_0ED94C: DEC.b $13\n #_0ED94E: BNE EXIT_0ED94B\n\n #_0ED950: LDA.b #$03\n #_0ED952: STA.b $95\n\n #_0ED954: LDA.b $9B\n #_0ED956: STA.l $7EC229\n\n #_0ED95A: JSL EnableForceBlank\n\n #_0ED95E: INC.w $0200\n #_0ED961: STZ.w $020D\n\n #_0ED964: LDA.b #$20 ; Fixed color RGB: #000000\n #_0ED966: STA.b $9C\n\n #_0ED968: LDA.b #$40\n #_0ED96A: STA.b $9D\n\n #_0ED96C: LDA.b #$80\n #_0ED96E: STA.b $9E\n\n #_0ED970: REP #$20\n\n #_0ED972: LDA.w #$0250\n #_0ED975: STA.w $0100\n\n; ---------------------------------------------------------\n\n #_0ED978: LDX.b #$7E\n\n.next_colors\n #_0ED97A: LDA.l $7EC500,X\n #_0ED97E: STA.l $7FDD80,X\n\n #_0ED982: LDA.l $7EC580,X\n #_0ED986: STA.l $7FDE00,X\n\n #_0ED98A: LDA.l $7EC600,X\n #_0ED98E: STA.l $7FDE80,X\n\n #_0ED992: LDA.l $7EC680,X\n #_0ED996: STA.l $7FDF00,X\n\n #_0ED99A: DEX\n #_0ED99B: DEX\n #_0ED99C: BPL .next_colors\n\n; ---------------------------------------------------------\n\n #_0ED99E: LDA.w $011A\n #_0ED9A1: STA.l $7EC221\n\n #_0ED9A5: LDA.w $011C\n #_0ED9A8: STA.l $7EC223\n\n #_0ED9AC: STZ.w $011A\n #_0ED9AF: STZ.w $011C\n\n #_0ED9B2: LDA.b $E0\n #_0ED9B4: STA.l $7EC200\n\n #_0ED9B8: LDA.b $E2\n #_0ED9BA: STA.l $7EC202\n\n #_0ED9BE: LDA.b $E6\n #_0ED9C0: STA.l $7EC204\n\n #_0ED9C4: LDA.b $E8\n #_0ED9C6: STA.l $7EC206\n\n #_0ED9CA: STZ.b $E0\n #_0ED9CC: STZ.b $E2\n #_0ED9CE: STZ.b $E4\n #_0ED9D0: STZ.b $E6\n #_0ED9D2: STZ.b $E8\n #_0ED9D4: STZ.b $EA\n\n #_0ED9D6: LDA.b $99\n #_0ED9D8: STA.l $7EC225\n\n #_0ED9DC: LDA.w #$2002\n #_0ED9DF: STA.b $99\n\n #_0ED9E1: LDX.b #$00\n #_0ED9E3: LDA.w #$0300\n\n.tilemap_fill\n #_0ED9E6: STA.l $7F0000,X\n #_0ED9EA: STA.l $7F0100,X\n #_0ED9EE: STA.l $7F0200,X\n #_0ED9F2: STA.l $7F0300,X\n\n #_0ED9F6: STA.l $7F0400,X\n #_0ED9FA: STA.l $7F0500,X\n #_0ED9FE: STA.l $7F0600,X\n #_0EDA02: STA.l $7F0700,X\n\n #_0EDA06: STA.l $7F0800,X\n #_0EDA0A: STA.l $7F0900,X\n #_0EDA0E: STA.l $7F0A00,X\n #_0EDA12: STA.l $7F0B00,X\n\n #_0EDA16: STA.l $7F0C00,X\n #_0EDA1A: STA.l $7F0D00,X\n #_0EDA1E: STA.l $7F0E00,X\n #_0EDA22: STA.l $7F0F00,X\n\n #_0EDA26: DEX\n #_0EDA27: DEX\n #_0EDA28: BNE .tilemap_fill\n\n; ---------------------------------------------------------\n\n #_0EDA2A: SEP #$20\n\n #_0EDA2C: LDA.b #$10 ; SFX3.10\n #_0EDA2E: STA.w $012F\n\n #_0EDA31: LDA.b #$F2 ; SONG F2 - half volume\n #_0EDA33: STA.w $012C\n\n #_0EDA36: RTL", + "file": "bank_0E.asm" + }, + { + "name": "UnderworldMap_RecoverRegisters", + "code": "UnderworldMap_RecoverRegisters:\n #_0EDA37: DEC.b $13\n #_0EDA39: BNE .exit\n\n #_0EDA3B: JSL EnableForceBlank\n\n #_0EDA3F: INC.w $0200\n\n #_0EDA42: REP #$30\n\n #_0EDA44: LDA.l $7EC225\n #_0EDA48: STA.b $99\n\n #_0EDA4A: LDA.l $7EC200\n #_0EDA4E: STA.b $E0\n\n #_0EDA50: LDA.l $7EC202\n #_0EDA54: STA.b $E2\n\n #_0EDA56: LDA.l $7EC204\n #_0EDA5A: STA.b $E6\n\n #_0EDA5C: LDA.l $7EC206\n #_0EDA60: STA.b $E8\n\n #_0EDA62: STZ.b $E4\n #_0EDA64: STZ.b $EA\n\n #_0EDA66: LDA.l $7EC221\n #_0EDA6A: STA.w $011A\n\n #_0EDA6D: LDA.l $7EC223\n #_0EDA71: STA.w $011C\n\n #_0EDA74: SEP #$30\n\n #_0EDA76: INC.b $15\n\n.exit\n #_0EDA78: RTL", + "file": "bank_0E.asm" + }, + { + "name": "UnderworldMap_RecoverLightCone", + "code": "UnderworldMap_RecoverLightCone:\n #_0EDA79: JSL OrientLampLightCone\n\n #_0EDA7D: INC.b $13\n\n #_0EDA7F: LDA.b $13\n #_0EDA81: CMP.b #$0F\n #_0EDA83: BNE .exit\n\n #_0EDA85: LDA.w $010C\n #_0EDA88: STA.b $10\n\n #_0EDA8A: STZ.b $11\n #_0EDA8C: STZ.w $0200\n #_0EDA8F: STZ.b $B0\n\n #_0EDA91: LDA.b #$0F\n #_0EDA93: STA.b $13\n\n #_0EDA95: LDA.l $7EC229\n #_0EDA99: STA.b $9B\n\n.exit\n #_0EDA9B: RTL", + "file": "bank_0E.asm" + }, + { + "name": "DungeonMap_BG3Tilemap", + "code": "DungeonMap_BG3Tilemap:\n #_0EDA9C: dw $4260, $0100 ; VRAM $C084 | 2 bytes | Horizontal\n #_0EDAA0: dw $2100\n\n #_0EDAA2: dw $4360, $0E40 ; VRAM $C086 | 16 bytes | Fixed horizontal\n #_0EDAA6: dw $2101\n\n #_0EDAA8: dw $4B60, $0100 ; VRAM $C096 | 2 bytes | Horizontal\n #_0EDAAC: dw $6100\n\n #_0EDAAE: dw $6260, $2EC0 ; VRAM $C0C4 | 48 bytes | Fixed vertical\n #_0EDAB2: dw $2110\n\n #_0EDAB4: dw $6B60, $2EC0 ; VRAM $C0D6 | 48 bytes | Fixed vertical\n #_0EDAB8: dw $6110\n\n #_0EDABA: dw $6263, $0100 ; VRAM $C6C4 | 2 bytes | Horizontal\n #_0EDABE: dw $A100\n\n #_0EDAC0: dw $6363, $0E40 ; VRAM $C6C6 | 16 bytes | Fixed horizontal\n #_0EDAC4: dw $A101\n\n #_0EDAC6: dw $6B63, $0100 ; VRAM $C6D6 | 2 bytes | Horizontal\n #_0EDACA: dw $E100\n\n #_0EDACC: dw $8460, $0B00 ; VRAM $C108 | 12 bytes | Horizontal\n #_0EDAD0: dw $2102, $2103, $2104, $2105, $2106, $2107\n\n #_0EDADC: dw $A460, $0B00 ; VRAM $C148 | 12 bytes | Horizontal\n #_0EDAE0: dw $2112, $2113, $2114, $2115, $2116, $2117\n\n #_0EDAEC: dw $4E60, $0100 ; VRAM $C09C | 2 bytes | Horizontal\n #_0EDAF0: dw $2100\n\n #_0EDAF2: dw $4F60, $1A40 ; VRAM $C09E | 28 bytes | Fixed horizontal\n #_0EDAF6: dw $2101\n\n #_0EDAF8: dw $5D60, $0100 ; VRAM $C0BA | 2 bytes | Horizontal\n #_0EDAFC: dw $6100\n\n #_0EDAFE: dw $6E60, $2EC0 ; VRAM $C0DC | 48 bytes | Fixed vertical\n #_0EDB02: dw $2110\n\n #_0EDB04: dw $7D60, $2EC0 ; VRAM $C0FA | 48 bytes | Fixed vertical\n #_0EDB08: dw $6110\n\n #_0EDB0A: dw $6E63, $0100 ; VRAM $C6DC | 2 bytes | Horizontal\n #_0EDB0E: dw $A100\n\n #_0EDB10: dw $6F63, $1A40 ; VRAM $C6DE | 28 bytes | Fixed horizontal\n #_0EDB14: dw $A101\n\n #_0EDB16: dw $7D63, $0100 ; VRAM $C6FA | 2 bytes | Horizontal\n #_0EDB1A: dw $E100\n\n #_0EDB1C: dw $0060, $7E40 ; VRAM $C000 | 128 bytes | Fixed horizontal\n #_0EDB20: dw $2111\n\n #_0EDB22: dw $8063, $3E41 ; VRAM $C700 | 320 bytes | Fixed horizontal\n #_0EDB26: dw $2111\n\n #_0EDB28: dw $0060, $3EC0 ; VRAM $C000 | 64 bytes | Fixed vertical\n #_0EDB2C: dw $2111\n\n #_0EDB2E: dw $0160, $3EC0 ; VRAM $C002 | 64 bytes | Fixed vertical\n #_0EDB32: dw $2111\n\n #_0EDB34: dw $0C60, $3EC0 ; VRAM $C018 | 64 bytes | Fixed vertical\n #_0EDB38: dw $2111\n\n #_0EDB3A: dw $0D60, $3EC0 ; VRAM $C01A | 64 bytes | Fixed vertical\n #_0EDB3E: dw $2111\n\n #_0EDB40: dw $1E60, $3EC0 ; VRAM $C03C | 64 bytes | Fixed vertical\n #_0EDB44: dw $2111\n\n #_0EDB46: dw $1F60, $3EC0 ; VRAM $C03E | 64 bytes | Fixed vertical\n #_0EDB4A: dw $2111\n\n #_0EDB4C: dw $9110, $12C0 ; VRAM $2122 | 20 bytes | Fixed vertical\n #_0EDB50: dw $0B12\n\n #_0EDB52: dw $9210, $1300 ; VRAM $2124 | 20 bytes | Horizontal\n #_0EDB56: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDB66: dw $0B06, $0B30\n\n #_0EDB6A: dw $B310, $1100 ; VRAM $2166 | 18 bytes | Horizontal\n #_0EDB6E: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDB7E: dw $0B12\n\n #_0EDB80: dw $D210, $1300 ; VRAM $21A4 | 20 bytes | Horizontal\n #_0EDB84: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDB94: dw $0B06, $0B30\n\n #_0EDB98: dw $F310, $1100 ; VRAM $21E6 | 18 bytes | Horizontal\n #_0EDB9C: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDBAC: dw $0B12\n\n #_0EDBAE: dw $1211, $1300 ; VRAM $2224 | 20 bytes | Horizontal\n #_0EDBB2: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDBC2: dw $0B06, $0B30\n\n #_0EDBC6: dw $3311, $1100 ; VRAM $2266 | 18 bytes | Horizontal\n #_0EDBCA: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDBDA: dw $0B12\n\n #_0EDBDC: dw $5211, $1300 ; VRAM $22A4 | 20 bytes | Horizontal\n #_0EDBE0: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDBF0: dw $0B06, $0B30\n\n #_0EDBF4: dw $7311, $1100 ; VRAM $22E6 | 18 bytes | Horizontal\n #_0EDBF8: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDC08: dw $0B12\n\n #_0EDC0A: dw $9211, $1300 ; VRAM $2324 | 20 bytes | Horizontal\n #_0EDC0E: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDC1E: dw $0B06, $0B30\n\n #_0EDC22: dw $B311, $1100 ; VRAM $2366 | 18 bytes | Horizontal\n #_0EDC26: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDC36: dw $0B12\n\n #_0EDC38: dw $D211, $1240 ; VRAM $23A4 | 20 bytes | Fixed horizontal\n #_0EDC3C: dw $0B06\n\n #_0EDC3E: dw $1112, $12C0 ; VRAM $2422 | 20 bytes | Fixed vertical\n #_0EDC42: dw $0B12\n\n #_0EDC44: dw $1212, $1300 ; VRAM $2424 | 20 bytes | Horizontal\n #_0EDC48: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDC58: dw $0B06, $0B30\n\n #_0EDC5C: dw $3312, $1100 ; VRAM $2466 | 18 bytes | Horizontal\n #_0EDC60: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDC70: dw $0B12\n\n #_0EDC72: dw $5212, $1300 ; VRAM $24A4 | 20 bytes | Horizontal\n #_0EDC76: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDC86: dw $0B06, $0B30\n\n #_0EDC8A: dw $7312, $1100 ; VRAM $24E6 | 18 bytes | Horizontal\n #_0EDC8E: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDC9E: dw $0B12\n\n #_0EDCA0: dw $9212, $1300 ; VRAM $2524 | 20 bytes | Horizontal\n #_0EDCA4: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDCB4: dw $0B06, $0B30\n\n #_0EDCB8: dw $B312, $1100 ; VRAM $2566 | 18 bytes | Horizontal\n #_0EDCBC: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDCCC: dw $0B12\n\n #_0EDCCE: dw $D212, $1300 ; VRAM $25A4 | 20 bytes | Horizontal\n #_0EDCD2: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDCE2: dw $0B06, $0B30\n\n #_0EDCE6: dw $F312, $1100 ; VRAM $25E6 | 18 bytes | Horizontal\n #_0EDCEA: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDCFA: dw $0B12\n\n #_0EDCFC: dw $1213, $1300 ; VRAM $2624 | 20 bytes | Horizontal\n #_0EDD00: dw $0B06, $0B30, $0B06, $0B30, $0B06, $0B30, $0B06, $0B30\n #_0EDD10: dw $0B06, $0B30\n\n #_0EDD14: dw $3313, $1100 ; VRAM $2666 | 18 bytes | Horizontal\n #_0EDD18: dw $0B12, $0B00, $0B12, $0B00, $0B12, $0B00, $0B12, $0B00\n #_0EDD28: dw $0B12\n\n #_0EDD2A: dw $5213, $1240 ; VRAM $26A4 | 20 bytes | Fixed horizontal\n #_0EDD2E: dw $0B06\n\n #_0EDD30: db $FF ; end of stripes data\n\n; =========================================================\n; FREE ROM: 0x0F\n; =========================================================", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0EDD31", + "code": "NULL_0EDD31:\n #_0EDD31: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EDD39: db $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "Overworld_MemorizeMap16Change", + "code": "Overworld_MemorizeMap16Change:\n #_0EDD40: CMP.w #$0DC5 ; cut grass\n #_0EDD43: BEQ .exit\n\n #_0EDD45: CMP.w #$0DC9 ; dirt patch\n #_0EDD48: BEQ .exit\n\n #_0EDD4A: PHA\n #_0EDD4B: PHX\n\n #_0EDD4C: TXY\n\n #_0EDD4D: LDX.w $04AC\n #_0EDD50: STA.l $7EFA00,X\n\n #_0EDD54: TYA\n #_0EDD55: STA.l $7EF800,X\n\n #_0EDD59: INX\n #_0EDD5A: INX\n #_0EDD5B: STX.w $04AC\n\n #_0EDD5E: PLX\n #_0EDD5F: PLA\n\n.exit\n #_0EDD60: RTL", + "file": "bank_0E.asm" + }, + { + "name": "TRPegLocations", + "code": "TRPegLocations:\n #_0EDD61: dw $0826, $05A0, $081A\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "HandlePegPuzzles", + "code": "HandlePegPuzzles:\n #_0EDD67: LDA.b $8A\n #_0EDD69: CMP.w #$0007 ; OW 07\n #_0EDD6C: BNE HandleStakeField\n\n #_0EDD6E: LDA.l $7EF287\n #_0EDD72: AND.w #$0020\n #_0EDD75: BNE .exit\n\n #_0EDD77: STX.b $00\n\n #_0EDD79: LDX.w $04C8\n #_0EDD7C: CPX.w #$FFFF\n #_0EDD7F: BEQ .fail\n\n #_0EDD81: LDA.l TRPegLocations,X\n #_0EDD85: CMP.b $00\n #_0EDD87: BNE .fail\n\n #_0EDD89: LDA.w #$2D00 ; SFX3.2D; Writes #$2D00, which unqueues SFX2.\n #_0EDD8C: STA.w $012E\n\n #_0EDD8F: INX\n #_0EDD90: INX\n #_0EDD91: STX.w $04C8\n\n #_0EDD94: CPX.w #$0006\n #_0EDD97: BNE .unsolved\n\n #_0EDD99: LDA.w #$1B00 ; SFX3.1B; Writes #$1B00, which unqueues SFX2.\n #_0EDD9C: STA.w $012E\n\n #_0EDD9F: LDA.l $7EF287\n #_0EDDA3: ORA.w #$0020\n #_0EDDA6: STA.l $7EF287\n\n #_0EDDAA: SEP #$20\n\n #_0EDDAC: LDA.b #$2F\n #_0EDDAE: STA.b $11\n\n #_0EDDB0: REP #$20\n\n.unsolved\n #_0EDDB2: LDX.b $00\n\n #_0EDDB4: RTL", + "file": "bank_0E.asm" + }, + { + "name": "HandleStakeField", + "code": "HandleStakeField:\n #_0EDDC4: CMP.w #$0062\n #_0EDDC7: BNE .exit\n\n #_0EDDC9: INC.w $04C8\n\n #_0EDDCC: LDA.w $04C8\n #_0EDDCF: CMP.w #$0016\n #_0EDDD2: BNE .exit\n\n #_0EDDD4: PHX\n\n #_0EDDD5: SEP #$20\n\n #_0EDDD7: LDA.l $7EF2E2\n #_0EDDDB: ORA.b #$20\n #_0EDDDD: STA.l $7EF2E2\n\n #_0EDDE1: LDA.b #$1B ; SFX3.1B\n #_0EDDE3: STA.w $012F\n\n #_0EDDE6: REP #$20\n\n #_0EDDE8: LDA.w #$0050\n #_0EDDEB: STA.w $0692\n\n #_0EDDEE: LDA.w #$0D20\n #_0EDDF1: STA.w $0698\n\n #_0EDDF4: JSL Overworld_DoMapUpdate32x32_long\n\n #_0EDDF8: REP #$30\n\n #_0EDDFA: PLX\n\n.exit\n #_0EDDFB: RTL", + "file": "bank_0E.asm" + }, + { + "name": "GanonsTower_FlashAfterCrystals", + "code": "GanonsTower_FlashAfterCrystals:\n #_0EDDFC: LDA.b $B0\n #_0EDDFE: BNE .skip_sfx\n\n #_0EDE00: LDA.b #$2E ; SFX2.2E\n #_0EDE02: STA.w $012E\n\n #_0EDE05: JML PaletteBlackAndWhiteSomething\n\n; ---------------------------------------------------------\n\n.skip_sfx\n #_0EDE09: JSL PaletteFilter_BlindingWhite\n\n #_0EDE0D: REP #$30\n\n #_0EDE0F: LDA.l $7EC009\n #_0EDE13: CMP.w #$00FF\n #_0EDE16: BNE .dont_advance_step\n\n #_0EDE18: STA.l $7EC007\n #_0EDE1C: STA.l $7EC009\n\n #_0EDE20: SEP #$30\n\n #_0EDE22: INC.b $B0\n\n #_0EDE24: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Overworld_CheckForSpecialOverworldTrigger", + "code": "Overworld_CheckForSpecialOverworldTrigger:\n #_0EDE49: REP #$31\n\n #_0EDE4B: JSR GetMap16Tile\n\n #_0EDE4E: LDA.l Map16Definitions,X\n #_0EDE52: AND.w #$01FF\n #_0EDE55: STA.b $00\n\n #_0EDE57: LDX.w #$0008\n\n.check_next_screen\n #_0EDE5A: LDA.b $00\n\n.check_next_tile\n #_0EDE5C: DEX\n #_0EDE5D: DEX\n #_0EDE5E: BMI .exit\n\n #_0EDE60: CMP.l .tile_type,X\n #_0EDE64: BNE .check_next_tile\n\n #_0EDE66: LDA.b $8A\n #_0EDE68: CMP.l .screen_id,X\n #_0EDE6C: BNE .check_next_screen\n\n; ---------------------------------------------------------\n\n #_0EDE6E: LDA.l .special_id,X\n #_0EDE72: STA.b $A0\n\n #_0EDE74: SEP #$20\n\n #_0EDE76: LDA.l .direction,X\n #_0EDE7A: STA.b $67\n\n #_0EDE7C: STA.w $0410\n #_0EDE7F: STA.w $0416\n\n #_0EDE82: LDX.w #$0004\n\n.continue_shifting\n #_0EDE85: DEX\n\n #_0EDE86: LSR A\n #_0EDE87: BCC .continue_shifting\n\n #_0EDE89: STX.w $0418\n #_0EDE8C: STX.w $069C\n\n #_0EDE8F: LDA.b #$17\n #_0EDE91: STA.b $11\n\n #_0EDE93: LDA.b #$0B\n #_0EDE95: STA.b $10\n\n.exit\n #_0EDE97: SEP #$30\n\n #_0EDE99: RTL", + "file": "bank_0E.asm" + }, + { + "name": "GetMap16Tile", + "code": "GetMap16Tile:\n #_0EDE9A: LDA.b $20\n #_0EDE9C: CLC\n #_0EDE9D: ADC.w #$000C\n #_0EDEA0: STA.b $00\n\n #_0EDEA2: SEC\n #_0EDEA3: SBC.w $0708\n\n #_0EDEA6: AND.w $070A\n #_0EDEA9: ASL A\n #_0EDEAA: ASL A\n #_0EDEAB: ASL A\n #_0EDEAC: STA.b $06\n\n #_0EDEAE: LDA.b $22\n #_0EDEB0: CLC\n #_0EDEB1: ADC.w #$0008\n\n #_0EDEB4: LSR A\n #_0EDEB5: LSR A\n #_0EDEB6: LSR A\n #_0EDEB7: STA.b $02\n\n #_0EDEB9: SEC\n #_0EDEBA: SBC.w $070C\n\n #_0EDEBD: AND.w $070E\n #_0EDEC0: CLC\n #_0EDEC1: ADC.b $06\n\n #_0EDEC3: TAY\n #_0EDEC4: TAX\n\n #_0EDEC5: LDA.l $7E2000,X\n #_0EDEC9: ASL A\n #_0EDECA: ASL A\n #_0EDECB: ASL A\n #_0EDECC: TAX\n\n #_0EDECD: RTS", + "file": "bank_0E.asm" + }, + { + "name": "SpecialOverworld_CheckForReturnTrigger", + "code": "SpecialOverworld_CheckForReturnTrigger:\n #_0EDEE3: REP #$31\n\n #_0EDEE5: JSR GetMap16Tile\n\n #_0EDEE8: LDA.l Map16Definitions,X\n #_0EDEEC: AND.w #$01FF\n #_0EDEEF: STA.b $00\n\n #_0EDEF1: LDX.w #$0006\n\n.check_next_screen\n #_0EDEF4: LDA.b $00\n\n.check_next_tile\n #_0EDEF6: DEX\n #_0EDEF7: DEX\n #_0EDEF8: BMI EXIT_0EDEE0\n\n #_0EDEFA: CMP.l .tile_type,X\n #_0EDEFE: BNE .check_next_tile\n\n #_0EDF00: LDA.b $8A\n #_0EDF02: CMP.l .screen_id,X\n #_0EDF06: BNE .check_next_screen\n\n #_0EDF08: SEP #$30\n\n #_0EDF0A: LDA.l .direction,X\n #_0EDF0E: STA.b $67\n\n #_0EDF10: LDX.b #$04\n\n.keep_shifting\n #_0EDF12: DEX\n\n #_0EDF13: LSR A\n #_0EDF14: BCC .keep_shifting\n\n #_0EDF16: TXA\n #_0EDF17: STA.w $0418\n\n #_0EDF1A: LDA.b $67\n\n #_0EDF1C: LDX.b #$04\n\n.just_keep_shifting\n #_0EDF1E: DEX\n\n #_0EDF1F: LSR A\n #_0EDF20: BCC .just_keep_shifting\n\n #_0EDF22: TXA\n #_0EDF23: STA.w $069C\n\n #_0EDF26: LDA.b #$24\n #_0EDF28: STA.b $11\n\n #_0EDF2A: STZ.b $B0\n #_0EDF2C: STZ.b $A0\n\n #_0EDF2E: RTL", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0EDF2F", + "code": "NULL_0EDF2F:\n #_0EDF2F: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EDF37: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EDF3F: db $FF\n\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n; see \u00abtext.asm\u00bb\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n\norg $0EEE21\n\n; =========================================================\n; FREE ROM: 0x05DF\n; =========================================================", + "file": "bank_0E.asm" + }, + { + "name": "NULL_0EEE21", + "code": "NULL_0EEE21:\n #_0EEE21: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE29: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE31: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE39: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE41: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE49: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE51: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE59: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE61: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE69: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE71: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE79: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE81: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE89: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE91: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEE99: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEA1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEA9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEB1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEB9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEC1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEC9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEED1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEED9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEE1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEE9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEF1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEEF9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF01: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF09: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF11: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF19: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF21: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF29: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF31: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF39: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF41: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF49: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF51: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF59: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF61: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF69: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF71: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF79: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF81: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF89: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF91: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEF99: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFA1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFA9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFB1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFB9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFC1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFC9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFD1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFD9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFE1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFE9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFF1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EEFF9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF001: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF009: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF011: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF019: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF021: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF029: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF031: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF039: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF041: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF049: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF051: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF059: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF061: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF069: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF071: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF079: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF081: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF089: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF091: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF099: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0A1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0A9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0B1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0B9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0C1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0C9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0D1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0D9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0E1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0E9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0F1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF0F9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF101: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF109: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF111: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF119: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF121: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF129: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF131: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF139: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF141: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF149: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF151: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF159: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF161: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF169: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF171: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF179: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF181: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF189: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF191: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF199: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1A1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1A9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1B1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1B9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1C1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1C9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1D1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1D9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1E1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1E9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1F1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF1F9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF201: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF209: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF211: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF219: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF221: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF229: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF231: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF239: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF241: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF249: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF251: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF259: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF261: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF269: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF271: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF279: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF281: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF289: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF291: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF299: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2A1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2A9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2B1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2B9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2C1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2C9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2D1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2D9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2E1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2E9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2F1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF2F9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF301: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF309: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF311: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF319: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF321: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF329: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF331: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF339: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF341: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF349: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF351: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF359: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF361: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF369: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF371: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF379: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF381: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF389: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF391: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF399: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3A1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3A9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3B1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3B9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3C1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3C9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3D1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3D9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3E1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3E9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3F1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0EF3F9: db $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "PaletteBlackAndWhiteSomething_Conditional", + "code": "PaletteBlackAndWhiteSomething_Conditional:\n #_0EF400: LDA.b $B0\n #_0EF402: BNE PaletteBlackSomething\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "PaletteBlackAndWhiteSomething", + "code": "PaletteBlackAndWhiteSomething:\n #_0EF404: REP #$20\n\n #_0EF406: LDX.b #$00\n\n.next\n #_0EF408: LDA.l $7EC300,X\n #_0EF40C: STA.l $7FDD80,X\n\n #_0EF410: LDA.l $7EC380,X\n #_0EF414: STA.l $7FDE00,X\n\n #_0EF418: LDA.l $7EC400,X\n #_0EF41C: STA.l $7FDE80,X\n\n #_0EF420: LDA.l $7EC480,X\n #_0EF424: STA.l $7FDF00,X\n\n #_0EF428: LDA.w #$7FFF ; RGB: #F8F8F8\n #_0EF42B: STA.l $7EC300,X\n #_0EF42F: STA.l $7EC380,X\n #_0EF433: STA.l $7EC400,X\n #_0EF437: STA.l $7EC480,X\n\n #_0EF43B: INX\n #_0EF43C: INX\n #_0EF43D: CPX.b #$80\n #_0EF43F: BNE .next\n\n; ---------------------------------------------------------\n\n #_0EF441: LDA.l $7EC500\n #_0EF445: STA.l $7EC540\n\n #_0EF449: LDA.w #$0000\n #_0EF44C: STA.l $7EC007\n\n #_0EF450: LDA.w #$0002\n #_0EF453: STA.l $7EC009\n\n #_0EF457: SEP #$20\n\n #_0EF459: INC.b $B0\n\n #_0EF45B: RTL", + "file": "bank_0E.asm" + }, + { + "name": "PaletteBlackSomething", + "code": "PaletteBlackSomething:\n #_0EF45C: JSL PaletteFilter_BlindingWhite\n\n #_0EF460: REP #$30\n\n #_0EF462: LDA.l $7EC009\n #_0EF466: CMP.w #$00FF\n #_0EF469: BNE RestorePalette\n\n; ---------------------------------------------------------\n\n #_0EF46B: LDX.w #$000E\n #_0EF46E: LDA.w #$0000 ; RGB: #000000\n\n.next_color\n #_0EF471: STA.l $7EC3B0,X\n #_0EF475: STA.l $7EC5B0,X\n\n #_0EF479: DEX\n #_0EF47A: DEX\n #_0EF47B: BPL .next_color\n\n; ---------------------------------------------------------\n\n #_0EF47D: STA.l $7EC007\n #_0EF481: STA.l $7EC009\n\n #_0EF485: SEP #$20\n\n #_0EF487: STZ.b $11\n\n #_0EF489: SEP #$30\n\n #_0EF48B: RTL", + "file": "bank_0E.asm" + }, + { + "name": "RestorePalette", + "code": "RestorePalette:\n #_0EF48C: CMP.w #$0000\n #_0EF48F: BNE .exit\n\n #_0EF491: LDA.l $7EC007\n #_0EF495: CMP.w #$001F\n #_0EF498: BNE .exit\n\n; ---------------------------------------------------------\n\n #_0EF49A: LDX.w #$0000\n\n.next\n #_0EF49D: LDA.l $7FDD80,X\n #_0EF4A1: STA.l $7EC300,X\n\n #_0EF4A5: LDA.l $7FDDC0,X\n #_0EF4A9: STA.l $7EC340,X\n\n #_0EF4AD: LDA.l $7FDE00,X\n #_0EF4B1: STA.l $7EC380,X\n\n #_0EF4B5: LDA.l $7FDE40,X\n #_0EF4B9: STA.l $7EC3C0,X\n\n #_0EF4BD: LDA.l $7FDE80,X\n #_0EF4C1: STA.l $7EC400,X\n\n #_0EF4C5: LDA.l $7FDEC0,X\n #_0EF4C9: STA.l $7EC440,X\n\n #_0EF4CD: LDA.l $7FDF00,X\n #_0EF4D1: STA.l $7EC480,X\n\n #_0EF4D5: LDA.l $7FDF40,X\n #_0EF4D9: STA.l $7EC4C0,X\n\n #_0EF4DD: INX\n #_0EF4DE: INX\n #_0EF4DF: CPX.w #$0040\n #_0EF4E2: BNE .next\n\n; ---------------------------------------------------------\n\n #_0EF4E4: SEP #$20\n\n #_0EF4E6: STZ.b $1D\n\n.exit\n #_0EF4E8: SEP #$30\n\n #_0EF4EA: RTL", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_BlueThunder1", + "code": "Palettes_BlueThunder1:\n #_0EF4EB: dw $0884, $0CC7, $150A, $154D, $7FF6, $5944, $7AD1\n", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_BlueThunder2", + "code": "Palettes_BlueThunder2:\n #_0EF4F9: dw $0884, $0CC7, $150A, $154D, $5BFF, $7AD1, $21AF\n", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_BlueThunder3", + "code": "Palettes_BlueThunder3:\n #_0EF507: dw $1084, $48C0, $6186, $7E6D, $7FE0, $5944, $7E20\n", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_BlueThunder4", + "code": "Palettes_BlueThunder4:\n #_0EF515: dw $1084, $000E, $1059, $291F, $7FE0, $5944, $7E20\n", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_BlueThunder5", + "code": "Palettes_BlueThunder5:\n #_0EF523: dw $1084, $1508, $196C, $21AF, $7FF6, $1D4C, $7AD1\n\n; ---------------------------------------------------------\n", + "file": "bank_0E.asm" + }, + { + "name": "Palettes_GanonTowerFlash", + "code": "Palettes_GanonTowerFlash:\n #_0EF531: dw $7FFF, $0884, $1CC8, $1DCE, $3694, $4718, $1D4A, $18AC\n #_0EF541: dw $7FFF, $1908, $2D2F, $3614, $4EDA, $471F, $1D4A, $390F\n #_0EF551: dw $7FFF, $34CD, $5971, $5635, $7F1B, $7FFF, $1D4A, $3D54\n #_0EF561: dw $7FFF, $1908, $2D2F, $3614, $4EDA, $471F, $1D4A, $390F\n #_0EF571: dw $7FFF, $0884, $052A, $21EF, $3AB5, $4B39, $1D4C, $18AC\n\n; =========================================================\n\n#EXIT_0EF581:\n #_0EF581: RTL", + "file": "bank_0E.asm" + }, + { + "name": "FlashGanonTowerPalette", + "code": "FlashGanonTowerPalette:\n #_0EF582: LDA.w $04C6\n #_0EF585: BNE EXIT_0EF581\n\n #_0EF587: LDA.b $8A\n #_0EF589: CMP.b #$43 ; OW 43\n #_0EF58B: BEQ .on_dark_dm\n\n #_0EF58D: CMP.b #$45 ; OW 45\n #_0EF58F: BEQ .on_dark_dm\n\n #_0EF591: CMP.b #$47 ; OW 47\n #_0EF593: BNE EXIT_0EF581\n\n; ---------------------------------------------------------\n\n.on_dark_dm\n #_0EF595: PHB\n #_0EF596: PHK\n #_0EF597: PLB\n\n #_0EF598: LDA.b $1A\n #_0EF59A: CMP.b #$03\n #_0EF59C: BEQ .normal_color\n\n #_0EF59E: CMP.b #$05\n #_0EF5A0: BEQ .pink\n\n #_0EF5A2: CMP.b #$24\n #_0EF5A4: BEQ .thunder\n\n #_0EF5A6: CMP.b #$2C\n #_0EF5A8: BEQ .pink\n\n #_0EF5AA: CMP.b #$58\n #_0EF5AC: BEQ .normal_color\n\n #_0EF5AE: CMP.b #$5A\n #_0EF5B0: BNE .bright_white\n\n.pink\n #_0EF5B2: REP #$20\n\n; ---------------------------------------------------------\n\n #_0EF5B4: LDX.b #$02\n\n.restore_next\n #_0EF5B6: LDA.l $7EC360,X\n #_0EF5BA: STA.l $7EC560,X\n\n #_0EF5BE: LDA.l $7EC370,X\n #_0EF5C2: STA.l $7EC570,X\n\n #_0EF5C6: LDA.l $7EC390,X\n #_0EF5CA: STA.l $7EC590,X\n\n #_0EF5CE: LDA.l $7EC3E0,X\n #_0EF5D2: STA.l $7EC5E0,X\n\n #_0EF5D6: LDA.l $7EC3F0,X\n #_0EF5DA: STA.l $7EC5F0,X\n\n #_0EF5DE: INX\n #_0EF5DF: INX\n #_0EF5E0: CPX.b #$10\n #_0EF5E2: BNE .restore_next\n\n #_0EF5E4: BRA .bright_white\n\n; ---------------------------------------------------------\n\n.thunder\n #_0EF5E6: LDX.b #$36 ; SFX2.36\n #_0EF5E8: STX.w $012E\n\n; ---------------------------------------------------------\n\n.normal_color\n #_0EF5EB: REP #$20\n\n #_0EF5ED: LDX.b #$02\n #_0EF5EF: LDY.b #$00\n\n.next_thunder\n #_0EF5F1: LDA.w Palettes_BlueThunder1,Y\n #_0EF5F4: STA.l $7EC560,X\n\n #_0EF5F8: LDA.w Palettes_BlueThunder2,Y\n #_0EF5FB: STA.l $7EC570,X\n\n #_0EF5FF: LDA.w Palettes_BlueThunder3,Y\n #_0EF602: STA.l $7EC590,X\n\n #_0EF606: LDA.w Palettes_BlueThunder4,Y\n #_0EF609: STA.l $7EC5E0,X\n\n #_0EF60D: LDA.w Palettes_BlueThunder5,Y\n #_0EF610: STA.l $7EC5F0,X\n\n #_0EF614: INY\n #_0EF615: INY\n\n #_0EF616: INX\n #_0EF617: INX\n #_0EF618: CPX.b #$10\n #_0EF61A: BNE .next_thunder\n\n; ---------------------------------------------------------\n\n.bright_white\n #_0EF61C: SEP #$20\n\n #_0EF61E: LDX.b #$00\n #_0EF620: LDY.b #$40\n\n #_0EF622: LDA.b $8A\n #_0EF624: CMP.b #$43 ; OW 43\n #_0EF626: BEQ .main_mountain\n\n #_0EF628: CMP.b #$45 ; OW 45\n #_0EF62A: BNE .next_gt\n\n; ---------------------------------------------------------\n\n.main_mountain\n #_0EF62C: LDA.l $7EF2C3\n #_0EF630: AND.b #$20\n #_0EF632: BNE .gt_opened\n\n #_0EF634: LDA.b $1A\n #_0EF636: AND.b #$0C\n #_0EF638: ASL A\n #_0EF639: ASL A\n #_0EF63A: TAY\n\n; ---------------------------------------------------------\n\n.next_gt\n #_0EF63B: REP #$20\n\n #_0EF63D: LDA.w Palettes_GanonTowerFlash,Y\n #_0EF640: STA.l $7EC5D0,X\n\n #_0EF644: INY\n #_0EF645: INY\n\n #_0EF646: INX\n #_0EF647: INX\n #_0EF648: CPX.b #$10\n #_0EF64A: BNE .next_gt\n\n; ---------------------------------------------------------\n\n.gt_opened\n #_0EF64C: SEP #$20\n\n #_0EF64E: PLB\n\n #_0EF64F: INC.b $15\n\n #_0EF651: RTL", + "file": "bank_0E.asm" + }, + { + "name": "ApplyOverworldOverlay", + "code": "ApplyOverworldOverlay:\n #_0EF652: PHB\n\n #_0EF653: LDA.b #$7E\n #_0EF655: PHA\n #_0EF656: PLB\n\n #_0EF657: REP #$30\n\n #_0EF659: LDA.b $8A\n #_0EF65B: ASL A\n #_0EF65C: TAX\n\n #_0EF65D: JSR (.vectors,X)\n\n #_0EF660: SEP #$30\n\n #_0EF662: PLB\n\n #_0EF663: RTL", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_LumberjackTree", + "code": "OverworldOverlay_LumberjackTree:\n #_0EF764: LDA.w #$0E32\n #_0EF767: STA.w $7E2816\n #_0EF76A: STA.w $7E2818\n #_0EF76D: STA.w $7E281A\n #_0EF770: STA.w $7E281C\n #_0EF773: STA.w $7E2896\n #_0EF776: STA.w $7E289C\n\n #_0EF779: INC A\n #_0EF77A: STA.w $7E2898\n\n #_0EF77D: INC A\n #_0EF77E: STA.w $7E289A\n\n #_0EF781: INC A\n #_0EF782: STA.w $7E2916\n\n #_0EF785: INC A\n #_0EF786: STA.w $7E2918\n\n #_0EF789: INC A\n #_0EF78A: STA.w $7E291A\n\n #_0EF78D: INC A\n #_0EF78E: STA.w $7E291C\n\n #_0EF791: INC A\n #_0EF792: STA.w $7E2996\n\n #_0EF795: INC A\n #_0EF796: STA.w $7E2998\n\n #_0EF799: INC A\n #_0EF79A: STA.w $7E299A\n\n #_0EF79D: INC A\n #_0EF79E: STA.w $7E299C\n\n #_0EF7A1: INC A\n #_0EF7A2: STA.w $7E2A18\n\n #_0EF7A5: INC A\n #_0EF7A6: STA.w $7E2A1A\n\n #_0EF7A9: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_TurtleRockPortal", + "code": "OverworldOverlay_TurtleRockPortal:\n #_0EF7AA: LDA.w #$0212\n #_0EF7AD: STA.w $7E2720\n\n #_0EF7B0: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_BonkRocks", + "code": "OverworldOverlay_BonkRocks:\n #_0EF7B1: LDX.w #$0506\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_DrawRevealedStairs", + "code": "OverworldOverlay_DrawRevealedStairs:\n #_0EF7B4: LDA.w #$0918\n #_0EF7B7: STA.w $7E2000,X\n\n #_0EF7BA: INC A\n #_0EF7BB: STA.w $7E2002,X\n\n #_0EF7BE: INC A\n #_0EF7BF: STA.w $7E2080,X\n\n #_0EF7C2: INC A\n #_0EF7C3: STA.w $7E2082,X\n\n #_0EF7C6: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_KingsTomb", + "code": "OverworldOverlay_KingsTomb:\n #_0EF7C7: LDA.w #$0DD1\n #_0EF7CA: STA.w $7E2532\n\n #_0EF7CD: INC A\n #_0EF7CE: STA.w $7E2534\n\n #_0EF7D1: LDA.w #$0DD7\n #_0EF7D4: STA.w $7E25B2\n\n #_0EF7D7: INC A\n #_0EF7D8: STA.w $7E25B4\n\n #_0EF7DB: INC A\n #_0EF7DC: STA.w $7E2632\n\n #_0EF7DF: INC A\n #_0EF7E0: STA.w $7E2634\n\n #_0EF7E3: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_WeatherVane", + "code": "OverworldOverlay_WeatherVane:\n #_0EF7E4: LDA.w #$0E21\n #_0EF7E7: STA.w $7E2C3E\n\n #_0EF7EA: STA.w $7E2C42\n\n #_0EF7ED: INC A\n #_0EF7EE: STA.w $7E2C40\n\n #_0EF7F1: INC A\n #_0EF7F2: STA.w $7E2CBE\n\n #_0EF7F5: INC A\n #_0EF7F6: STA.w $7E2CC0\n\n #_0EF7F9: INC A\n #_0EF7FA: STA.w $7E2CC2\n\n #_0EF7FD: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_CastleGate", + "code": "OverworldOverlay_CastleGate:\n #_0EF7FE: LDA.w #$0DC1\n #_0EF801: STA.w $7E33BC\n\n #_0EF804: INC A\n #_0EF805: STA.w $7E33BE\n\n #_0EF808: LDA.w #$0DBE\n #_0EF80B: STA.w $7E343C\n\n #_0EF80E: INC A\n #_0EF80F: STA.w $7E343E\n\n #_0EF812: LDA.w #$0DC2\n #_0EF815: STA.w $7E33C0\n\n #_0EF818: INC A\n #_0EF819: STA.w $7E33C2\n\n #_0EF81C: LDA.w #$0DBF\n #_0EF81F: STA.w $7E3440\n\n #_0EF822: INC A\n #_0EF823: STA.w $7E3442\n\n #_0EF826: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_LinksHouseBonkRocks", + "code": "OverworldOverlay_LinksHouseBonkRocks:\n #_0EF827: LDX.w #$0330\n #_0EF82A: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_CheckerBoardCave", + "code": "OverworldOverlay_CheckerBoardCave:\n #_0EF82D: LDX.w #$0358\n #_0EF830: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_IceRodThief", + "code": "OverworldOverlay_IceRodThief:\n #_0EF833: LDX.w #$040C\n #_0EF836: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_DesertThief", + "code": "OverworldOverlay_DesertThief:\n #_0EF839: LDX.w #$0A1E\n #_0EF83C: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_DrainedDam", + "code": "OverworldOverlay_DrainedDam:\n #_0EF83F: LDA.w #$0DDF\n #_0EF842: STA.w $7E23AC\n #_0EF845: STA.w $7E2424\n #_0EF848: STA.w $7E24A0\n #_0EF84B: STA.w $7E251E\n #_0EF84E: STA.w $7E261C\n #_0EF851: STA.w $7E2734\n\n #_0EF854: INC A\n #_0EF855: STA.w $7E23AE\n #_0EF858: STA.w $7E24A2\n\n #_0EF85B: INC A\n #_0EF85C: STA.w $7E23B0\n #_0EF85F: STA.w $7E2438\n #_0EF862: STA.w $7E24BA\n #_0EF865: STA.w $7E25AA\n #_0EF868: STA.w $7E273A\n\n #_0EF86B: INC A\n #_0EF86C: STA.w $7E2426\n #_0EF86F: STA.w $7E2428\n #_0EF872: STA.w $7E242A\n #_0EF875: STA.w $7E2432\n #_0EF878: STA.w $7E2434\n #_0EF87B: STA.w $7E2436\n\n #_0EF87E: INC A\n #_0EF87F: STA.w $7E242C\n #_0EF882: STA.w $7E24A4\n #_0EF885: STA.w $7E2520\n #_0EF888: STA.w $7E261E\n\n #_0EF88B: INC A\n #_0EF88C: STA.w $7E242E\n #_0EF88F: STA.w $7E24A6\n #_0EF892: STA.w $7E24A8\n #_0EF895: STA.w $7E24B0\n #_0EF898: STA.w $7E24B6\n #_0EF89B: STA.w $7E2522\n #_0EF89E: STA.w $7E2524\n #_0EF8A1: STA.w $7E2526\n #_0EF8A4: STA.w $7E2538\n #_0EF8A7: STA.w $7E25A0\n #_0EF8AA: STA.w $7E25A2\n #_0EF8AD: STA.w $7E25A4\n #_0EF8B0: STA.w $7E25A6\n #_0EF8B3: STA.w $7E2620\n #_0EF8B6: STA.w $7E2622\n #_0EF8B9: STA.w $7E269E\n #_0EF8BC: STA.w $7E26A0\n #_0EF8BF: STA.w $7E271E\n #_0EF8C2: STA.w $7E2720\n #_0EF8C5: STA.w $7E2826\n #_0EF8C8: STA.w $7E28A6\n #_0EF8CB: STA.w $7E28A8\n #_0EF8CE: STA.w $7E2926\n\n #_0EF8D1: INC A\n #_0EF8D2: STA.w $7E2430\n #_0EF8D5: STA.w $7E24B8\n #_0EF8D8: STA.w $7E25A8\n #_0EF8DB: STA.w $7E262A\n\n #_0EF8DE: INC A\n #_0EF8DF: STA.w $7E24AA\n #_0EF8E2: STA.w $7E24B2\n #_0EF8E5: STA.w $7E2528\n #_0EF8E8: STA.w $7E25B8\n #_0EF8EB: STA.w $7E28AA\n #_0EF8EE: STA.w $7E2928\n\n #_0EF8F1: INC A\n #_0EF8F2: STA.w $7E24AC\n #_0EF8F5: STA.w $7E2530\n #_0EF8F8: STA.w $7E279E\n #_0EF8FB: STA.w $7E27A0\n #_0EF8FE: STA.w $7E29A6\n #_0EF901: STA.w $7E29B8\n\n #_0EF904: INC A\n #_0EF905: STA.w $7E24AE\n #_0EF908: STA.w $7E24B4\n #_0EF90B: STA.w $7E2536\n #_0EF90E: STA.w $7E27A2\n #_0EF911: STA.w $7E2824\n\n #_0EF914: INC A\n #_0EF915: STA.w $7E252E\n #_0EF918: STA.w $7E2534\n #_0EF91B: STA.w $7E279C\n #_0EF91E: STA.w $7E2822\n #_0EF921: STA.w $7E2934\n #_0EF924: STA.w $7E29B6\n\n #_0EF927: INC A\n #_0EF928: STA.w $7E253A\n #_0EF92B: STA.w $7E2638\n #_0EF92E: STA.w $7E26B8\n #_0EF931: STA.w $7E293A\n\n #_0EF934: INC A\n #_0EF935: STA.w $7E259E\n #_0EF938: STA.w $7E25B6\n #_0EF93B: STA.w $7E2636\n #_0EF93E: STA.w $7E269C\n #_0EF941: STA.w $7E26B6\n #_0EF944: STA.w $7E271C\n #_0EF947: STA.w $7E28A4\n #_0EF94A: STA.w $7E2924\n\n #_0EF94D: INC A\n #_0EF94E: STA.w $7E2624\n #_0EF951: STA.w $7E26A2\n\n #_0EF954: INC A\n #_0EF955: STA.w $7E2626\n\n #_0EF958: INC A\n #_0EF959: STA.w $7E2628\n\n #_0EF95C: INC A\n #_0EF95D: STA.w $7E26A4\n\n #_0EF960: STA.w $7E27B6\n\n #_0EF963: INC A\n #_0EF964: STA.w $7E26A6\n #_0EF967: STA.w $7E2726\n #_0EF96A: STA.w $7E2728\n #_0EF96D: STA.w $7E272A\n #_0EF970: STA.w $7E27AA\n #_0EF973: STA.w $7E2836\n #_0EF976: STA.w $7E2838\n\n #_0EF979: INC A\n #_0EF97A: STA.w $7E26A8\n #_0EF97D: STA.w $7E27B8\n\n #_0EF980: INC A\n #_0EF981: STA.w $7E26AA\n\n #_0EF984: INC A\n #_0EF985: STA.w $7E2722\n #_0EF988: STA.w $7E27A4\n #_0EF98B: STA.w $7E2828\n\n #_0EF98E: INC A\n #_0EF98F: STA.w $7E2724\n\n #_0EF992: INC A\n #_0EF993: STA.w $7E27A6\n\n #_0EF996: INC A\n #_0EF997: STA.w $7E27A8\n\n #_0EF99A: STA.w $7E28B6\n\n #_0EF99D: INC A\n #_0EF99E: STA.w $7E27B4\n\n #_0EF9A1: INC A\n #_0EF9A2: STA.w $7E27BA\n\n #_0EF9A5: INC A\n #_0EF9A6: STA.w $7E282A\n\n #_0EF9A9: INC A\n #_0EF9AA: STA.w $7E2834\n\n #_0EF9AD: INC A\n #_0EF9AE: STA.w $7E283A\n\n #_0EF9B1: INC A\n #_0EF9B2: STA.w $7E28B4\n\n #_0EF9B5: INC A\n #_0EF9B6: STA.w $7E28B8\n\n #_0EF9B9: INC A\n #_0EF9BA: STA.w $7E28BA\n\n #_0EF9BD: INC A\n #_0EF9BE: STA.w $7E2936\n\n #_0EF9C1: INC A\n #_0EF9C2: STA.w $7E2938\n\n #_0EF9C5: INC A\n #_0EF9C6: STA.w $7E252A\n #_0EF9C9: STA.w $7E2532\n #_0EF9CC: STA.w $7E292A\n\n #_0EF9CF: INC A\n #_0EF9D0: STA.w $7E25BA\n #_0EF9D3: STA.w $7E29A8\n #_0EF9D6: STA.w $7E29BA\n\n #_0EF9D9: INC A\n #_0EF9DA: STA.w $7E29A4\n\n #_0EF9DD: INC A\n #_0EF9DE: STA.w $7E2736\n\n #_0EF9E1: INC A\n #_0EF9E2: STA.w $7E2738\n\n #_0EF9E5: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_SkullWoods", + "code": "OverworldOverlay_SkullWoods:\n #_0EF9E6: LDA.w #$0E13\n #_0EF9E9: STA.w $7E2590\n\n #_0EF9EC: INC A\n #_0EF9ED: STA.w $7E2596\n\n #_0EF9F0: INC A\n #_0EF9F1: STA.w $7E2610\n\n #_0EF9F4: INC A\n #_0EF9F5: STA.w $7E2612\n\n #_0EF9F8: INC A\n #_0EF9F9: STA.w $7E2614\n\n #_0EF9FC: INC A\n #_0EF9FD: STA.w $7E2616\n\n #_0EFA00: INC A\n #_0EFA01: STA.w $7E2692\n\n #_0EFA04: INC A\n #_0EFA05: STA.w $7E2694\n\n #_0EFA08: LDA.w #$0E06\n #_0EFA0B: STA.w $7E2812\n #_0EFA0E: STA.w $7E2814\n\n #_0EFA11: INC A\n #_0EFA12: STA.w $7E2710\n #_0EFA15: STA.w $7E2790\n\n #_0EFA18: INC A\n #_0EFA19: STA.w $7E2712\n #_0EFA1C: STA.w $7E2792\n\n #_0EFA1F: INC A\n #_0EFA20: STA.w $7E2714\n #_0EFA23: STA.w $7E2794\n\n #_0EFA26: INC A\n #_0EFA27: STA.w $7E2716\n #_0EFA2A: STA.w $7E2796\n\n #_0EFA2D: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_GanonsTower", + "code": "OverworldOverlay_GanonsTower:\n #_0EFA2E: LDA.w #$0E96\n #_0EFA31: STA.l $7E245E\n\n #_0EFA35: INC A\n #_0EFA36: STA.l $7E2460\n\n #_0EFA3A: LDA.w #$0E9C\n #_0EFA3D: STA.l $7E24DE\n\n #_0EFA41: STA.l $7E255E\n\n #_0EFA45: INC A\n #_0EFA46: STA.l $7E24E0\n\n #_0EFA4A: STA.l $7E2560\n\n #_0EFA4E: LDA.w #$0E9A\n #_0EFA51: STA.l $7E25DE\n\n #_0EFA55: INC A\n #_0EFA56: STA.l $7E25E0\n\n #_0EFA5A: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_HookshotCave", + "code": "OverworldOverlay_HookshotCave:\n #_0EFA5B: LDX.w #$0868\n #_0EFA5E: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_TurtleRock", + "code": "OverworldOverlay_TurtleRock:\n #_0EFA61: LDA.w #$0E78\n #_0EFA64: STA.l $7E299E\n\n #_0EFA68: INC A\n #_0EFA69: STA.l $7E29A0\n\n #_0EFA6D: INC A\n #_0EFA6E: STA.l $7E29A2\n\n #_0EFA72: INC A\n #_0EFA73: STA.l $7E29A4\n\n #_0EFA77: INC A\n #_0EFA78: STA.l $7E2A1E\n\n #_0EFA7C: INC A\n #_0EFA7D: STA.l $7E2A20\n\n #_0EFA81: INC A\n #_0EFA82: STA.l $7E2A22\n\n #_0EFA86: INC A\n #_0EFA87: STA.l $7E2A24\n\n #_0EFA8B: INC A\n #_0EFA8C: STA.l $7E2A9E\n\n #_0EFA90: INC A\n #_0EFA91: STA.l $7E2AA0\n\n #_0EFA95: INC A\n #_0EFA96: STA.l $7E2AA2\n\n #_0EFA9A: INC A\n #_0EFA9B: STA.l $7E2AA4\n\n #_0EFA9F: INC A\n #_0EFAA0: STA.l $7E2B1E\n\n #_0EFAA4: INC A\n #_0EFAA5: STA.l $7E2B20\n\n #_0EFAA9: INC A\n #_0EFAAA: STA.l $7E2B22\n\n #_0EFAAE: INC A\n #_0EFAAF: STA.l $7E2B24\n\n #_0EFAB3: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_GargoylesDomain", + "code": "OverworldOverlay_GargoylesDomain:\n #_0EFAB4: LDA.w #$0E1B\n #_0EFAB7: STA.w $7E2D3E\n\n #_0EFABA: INC A\n #_0EFABB: STA.w $7E2D40\n\n #_0EFABE: INC A\n #_0EFABF: STA.w $7E2DBE\n\n #_0EFAC2: INC A\n #_0EFAC3: STA.w $7E2DC0\n\n #_0EFAC6: INC A\n #_0EFAC7: STA.w $7E2E3E\n\n #_0EFACA: INC A\n #_0EFACB: STA.w $7E2E40\n\n #_0EFACE: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_PyramidHole", + "code": "OverworldOverlay_PyramidHole:\n #_0EFACF: LDA.w #$0E3F\n #_0EFAD2: STA.w $7E23BC\n\n #_0EFAD5: INC A\n #_0EFAD6: STA.w $7E23BE\n\n #_0EFAD9: INC A\n #_0EFADA: STA.w $7E23C0\n\n #_0EFADD: INC A\n #_0EFADE: STA.w $7E243C\n\n #_0EFAE1: INC A\n #_0EFAE2: STA.w $7E243E\n\n #_0EFAE5: INC A\n #_0EFAE6: STA.w $7E2440\n\n #_0EFAE9: INC A\n #_0EFAEA: STA.w $7E24BC\n\n #_0EFAED: INC A\n #_0EFAEE: STA.w $7E24BE\n\n #_0EFAF1: INC A\n #_0EFAF2: STA.w $7E24C0\n\n #_0EFAF5: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_POD", + "code": "OverworldOverlay_POD:\n #_0EFAF6: LDA.w #$0E31\n #_0EFAF9: STA.w $7E21E6\n\n #_0EFAFC: LDA.w #$0E2D\n #_0EFAFF: STA.w $7E226A\n\n #_0EFB02: INC A\n #_0EFB03: STA.w $7E22EA\n\n #_0EFB06: INC A\n #_0EFB07: STA.w $7E236A\n\n #_0EFB0A: RTS", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_PegPuzzle", + "code": "OverworldOverlay_PegPuzzle:\n #_0EFB0B: LDX.w #$0D20\n #_0EFB0E: JMP.w OverworldOverlay_DrawRevealedStairs\n\n; =========================================================\n", + "file": "bank_0E.asm" + }, + { + "name": "OverworldOverlay_MiseryMire", + "code": "OverworldOverlay_MiseryMire:\n #_0EFB11: LDA.w #$0E64\n #_0EFB14: STA.w $7E2522\n\n #_0EFB17: INC A\n #_0EFB18: STA.w $7E2524\n\n #_0EFB1B: INC A\n #_0EFB1C: STA.w $7E2526\n\n #_0EFB1F: INC A\n #_0EFB20: STA.w $7E2528\n\n #_0EFB23: INC A\n #_0EFB24: STA.w $7E25A2\n\n #_0EFB27: INC A\n #_0EFB28: STA.w $7E25A4\n\n #_0EFB2B: INC A\n #_0EFB2C: STA.w $7E25A6\n\n #_0EFB2F: INC A\n #_0EFB30: STA.w $7E25A8\n\n #_0EFB33: INC A\n #_0EFB34: STA.w $7E2622\n\n #_0EFB37: INC A\n #_0EFB38: STA.w $7E2624\n\n #_0EFB3B: INC A\n #_0EFB3C: STA.w $7E2626\n\n #_0EFB3F: INC A\n #_0EFB40: STA.w $7E2628\n\n #_0EFB43: INC A\n #_0EFB44: STA.w $7E26A2\n\n #_0EFB47: INC A\n #_0EFB48: STA.w $7E26A4\n\n #_0EFB4B: INC A\n #_0EFB4C: STA.w $7E26A6\n\n #_0EFB4F: INC A\n #_0EFB50: STA.w $7E26A8\n\n #_0EFB53: INC A\n #_0EFB54: STA.w $7E2722\n\n #_0EFB57: INC A\n #_0EFB58: STA.w $7E2724\n\n #_0EFB5B: INC A\n #_0EFB5C: STA.w $7E2726\n\n #_0EFB5F: INC A\n #_0EFB60: STA.w $7E2728\n\n #_0EFB63: RTS", + "file": "bank_0E.asm" + }, + { + "name": "GARBAGE_1AF424", + "code": "GARBAGE_1AF424:\n #_1AF424: db $34, $00, $00, $00, $00, $01, $FF, $00, $00, $00, $00, $00\n", + "file": "bank_1A.asm" + }, + { + "name": "NULL_1AF430", + "code": "NULL_1AF430:\n #_1AF430: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF438: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF440: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF448: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF450: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF458: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF460: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF468: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF470: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF478: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF480: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF488: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF490: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF498: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4A0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4A8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4B0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4B8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_1AF4F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n\npool SpriteDraw_BatCrash\n\n.oam_groups\n\n.oam_group00\n #_1AF500: dw 0, 0 : db $4B, $04, $00, $00\n\n.oam_group01\n #_1AF508: dw 5, -4 : db $5B, $04, $00, $00\n\n.oam_group02\n #_1AF510: dw -2, -4 : db $64, $04, $00, $02\n\n.oam_group03\n #_1AF518: dw -2, -4 : db $49, $04, $00, $02\n\n.oam_group04\n #_1AF520: dw -8, -9 : db $6C, $04, $00, $02\n #_1AF528: dw 8, -9 : db $6C, $44, $00, $02\n\n.oam_group05\n #_1AF530: dw -8, -7 : db $4C, $04, $00, $02\n #_1AF538: dw 8, -7 : db $4C, $44, $00, $02\n\n.oam_group06\n #_1AF540: dw -8, -9 : db $44, $04, $00, $02\n #_1AF548: dw 8, -9 : db $44, $44, $00, $02\n\n.oam_group07\n #_1AF550: dw -8, -8 : db $62, $04, $00, $02\n #_1AF558: dw 8, -8 : db $62, $44, $00, $02\n\n.oam_group08\n #_1AF560: dw -8, -7 : db $60, $04, $00, $02\n #_1AF568: dw 8, -7 : db $60, $44, $00, $02\n\n.oam_group09\n #_1AF570: dw 0, 0 : db $4E, $04, $00, $02\n #_1AF578: dw 16, 0 : db $4E, $44, $00, $02\n #_1AF580: dw 0, 16 : db $6E, $04, $00, $02\n #_1AF588: dw 16, 16 : db $6E, $44, $00, $02\n\npool off\n\n; =========================================================\n\npool BatCrash BatCrash_Approach\n\n.position_x\n #_1AF590: dw $07DC, $07F0, $0820, $0818\n\n.position_y\n #_1AF598: dw $062E, $0636, $0630, $05E0\n\n.anim_timer\n #_1AF5A0: db 4, 3, 4, 6, 0\n\npool off\n\n; =========================================================\n", + "file": "bank_1A.asm" + }, + { + "name": "Sprite_37_Waterfall", + "code": "Sprite_37_Waterfall:\n #_1AF5A5: PHB\n #_1AF5A6: PHK\n #_1AF5A7: PLB\n\n #_1AF5A8: JSR .main\n\n #_1AF5AB: PLB\n\n #_1AF5AC: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Waterfall", + "code": "Waterfall:\n #_1AF5B8: JSR Sprite_CheckIfActive_Bank1A\n #_1AF5BB: JSL Sprite_CheckDamageToLink_same_layer_long\n #_1AF5BF: BCC .exit\n\n #_1AF5C1: LDA.b $8A\n #_1AF5C3: CMP.b #$43 ; OW 43\n #_1AF5C5: BEQ .on_gt_screen\n\n #_1AF5C7: PHX\n\n #_1AF5C8: JSL AncillaAdd_WaterfallSplash\n\n #_1AF5CC: PLX\n\n.exit\n #_1AF5CD: RTS", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash", + "code": "BatCrash:\n #_1AF5D9: JSR SpriteDraw_BatCrash\n #_1AF5DC: JSR Sprite_CheckIfActive_Bank1A\n #_1AF5DF: JSL Sprite_Move_XY_Bank1D_long\n #_1AF5E3: JSR BatCrash_DrawHardcodedGarbage\n\n #_1AF5E6: STZ.w $011C\n #_1AF5E9: STZ.w $011D\n\n #_1AF5EC: LDA.w $0EE0,X\n #_1AF5EF: BEQ .timer1_done\n\n #_1AF5F1: DEC A\n #_1AF5F2: BNE .still_nonzero\n\n #_1AF5F4: LDY.b #$05 ; SFX1.05\n #_1AF5F6: STY.w $012D\n\n.still_nonzero\n #_1AF5F9: AND.b #$01\n #_1AF5FB: TAY\n\n #_1AF5FC: LDA.w .shake_low,Y\n #_1AF5FF: STA.w $011C\n\n #_1AF602: LDA.w .shake_high,Y\n #_1AF605: STA.w $011D\n\n.timer1_done\n #_1AF608: LDA.w $0DF0,X\n #_1AF60B: BNE .timer_running\n\n #_1AF60D: LDA.w $0DC0,X\n #_1AF610: INC A\n #_1AF611: AND.b #$03\n #_1AF613: STA.w $0DC0,X\n #_1AF616: BNE .no_flap_sfx\n\n #_1AF618: LDA.w $0D80,X\n #_1AF61B: CMP.b #$02\n #_1AF61D: BCS .no_flap_sfx\n\n #_1AF61F: LDA.b #$03 ; SFX2.03\n #_1AF621: JSL SpriteSFX_QueueSFX2WithPan\n\n.no_flap_sfx\n #_1AF625: LDY.w $0DE0,X\n\n #_1AF628: LDA.w .anim_timer,Y\n #_1AF62B: STA.w $0DF0,X\n\n.timer_running\n #_1AF62E: LDA.w $0D80,X\n #_1AF631: JSL JumpTableLocal\n #_1AF635: dw BatCrash_Approach\n #_1AF637: dw BatCrash_Ascend\n #_1AF639: dw BatCrash_DiveBomb\n #_1AF63B: dw BatCrash_StallTheInevitable\n\n; =========================================================\n", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_Approach", + "code": "BatCrash_Approach:\n #_1AF63D: LDA.w $0D90,X\n #_1AF640: ASL A\n #_1AF641: TAY\n\n #_1AF642: REP #$20\n\n #_1AF644: LDA.w .position_x,Y\n #_1AF647: CMP.w $0FD8\n\n #_1AF64A: SEP #$30\n #_1AF64C: BCS BatCrash_HandleYMovement\n\n #_1AF64E: CPY.b #$04\n #_1AF650: BCC .still_approaching\n\n #_1AF652: INC.w $0D80,X\n\n #_1AF655: LDA.b #$D0\n #_1AF657: STA.w $0E00,X\n\n.still_approaching\n #_1AF65A: INC.w $0D90,X\n\n #_1AF65D: INC.w $0DE0,X\n\n; =========================================================\n\n#BatCrash_HandleYMovement:\n #_1AF660: LDA.b $1A\n #_1AF662: AND.b #$07\n #_1AF664: BNE .done_Y\n\n #_1AF666: REP #$20\n\n #_1AF668: LDA.w .position_y,Y\n #_1AF66B: CMP.w $0FDA\n\n #_1AF66E: SEP #$30\n #_1AF670: BCC .ypos_not_reached\n\n #_1AF672: INC.w $0D40,X\n #_1AF675: BRA .done_Y\n\n.ypos_not_reached\n #_1AF677: DEC.w $0D40,X\n\n.done_Y\n #_1AF67A: LDA.b $1A\n #_1AF67C: AND.b #$0F\n #_1AF67E: BNE .exit\n\n #_1AF680: INC.w $0D50,X\n\n.exit\n #_1AF683: RTS", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_Ascend", + "code": "BatCrash_Ascend:\n #_1AF684: LDA.w $0E00,X\n #_1AF687: BNE .ascending\n\n #_1AF689: INC.w $0D80,X\n\n #_1AF68C: LDA.b #$26 ; SFX3.26\n #_1AF68E: JSL SpriteSFX_QueueSFX3WithPan\n\n #_1AF692: INC.w $0DE0,X\n\n #_1AF695: LDA.b #$E8\n #_1AF697: STA.w $0D10,X\n\n #_1AF69A: LDA.b #$07\n #_1AF69C: STA.w $0D30,X\n\n #_1AF69F: LDA.b #$E0\n #_1AF6A1: STA.w $0D00,X\n\n #_1AF6A4: LDA.b #$05\n #_1AF6A6: STA.w $0D20,X\n #_1AF6A9: STZ.w $0D50,X\n\n #_1AF6AC: LDA.b #$40\n #_1AF6AE: STA.w $0D40,X\n\n #_1AF6B1: LDA.b #$2D\n #_1AF6B3: STA.w $0E00,X\n\n #_1AF6B6: RTS", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_DiveBomb", + "code": "BatCrash_DiveBomb:\n #_1AF6C8: LDA.w $0E00,X\n #_1AF6CB: BNE .descending\n\n #_1AF6CD: STZ.w $0D40,X\n\n #_1AF6D0: LDA.b #$60\n #_1AF6D2: STA.w $0E00,X\n\n #_1AF6D5: INC.w $0D80,X\n\n.descending\n #_1AF6D8: LDA.w $0E00,X\n #_1AF6DB: CMP.b #$09\n #_1AF6DD: BNE .exit\n\n #_1AF6DF: JSR BatCrash_SpawnDebris\n\n #_1AF6E2: PHX\n\n #_1AF6E3: JSL CreatePyramidHole\n\n #_1AF6E7: PLX\n\n.exit\n #_1AF6E8: RTS", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_StallTheInevitable", + "code": "BatCrash_StallTheInevitable:\n #_1AF6E9: LDA.w $0E00,X\n #_1AF6EC: BNE .stayin_alive\n\n #_1AF6EE: STZ.w $0DD0,X\n\n #_1AF6F1: INC.w $0200\n\n.stayin_alive\n #_1AF6F4: RTS", + "file": "bank_1A.asm" + }, + { + "name": "Sprite_SpawnBatCrashCutscene", + "code": "Sprite_SpawnBatCrashCutscene:\n #_1AF6F5: LDA.b #$37 ; SPRITE 37\n #_1AF6F7: JSL Sprite_SpawnDynamically\n\n #_1AF6FB: LDA.b #$00\n #_1AF6FD: STA.w $0D40,Y\n #_1AF700: STA.w $0DA0,Y\n #_1AF703: STA.w $0DE0,Y\n #_1AF706: STA.w $0F20,Y\n\n #_1AF709: INC A\n #_1AF70A: STA.w $0E80,Y\n #_1AF70D: STA.w $0E40,Y\n #_1AF710: STA.w $0E60,Y\n #_1AF713: STA.w $0F50,Y\n\n #_1AF716: LDA.b #$CC\n #_1AF718: STA.w $0D10,Y\n\n #_1AF71B: LDA.b #$07\n #_1AF71D: STA.w $0D30,Y\n\n #_1AF720: LDA.b #$32\n #_1AF722: STA.w $0D00,Y\n\n #_1AF725: LDA.b #$06\n #_1AF727: STA.w $0D20,Y\n\n #_1AF72A: LDA.b #$80\n #_1AF72C: STA.w $0CAA,Y\n\n #_1AF72F: RTL", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_DrawHardcodedGarbage", + "code": "BatCrash_DrawHardcodedGarbage:\n #_1AF750: REP #$20\n\n #_1AF752: LDY.b #$20\n\n.next_object\n #_1AF754: LDA.w .data-2,Y\n #_1AF757: STA.w $092E,Y\n\n #_1AF75A: DEY\n #_1AF75B: DEY\n #_1AF75C: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_1AF75E: LDY.b #$08\n\n #_1AF760: LDA.w #$0202\n\n.next_prop\n #_1AF763: STA.w $0A6C,Y\n\n #_1AF766: DEY\n #_1AF767: DEY\n #_1AF768: BPL .next_prop\n\n #_1AF76A: SEP #$30\n\n #_1AF76C: RTS", + "file": "bank_1A.asm" + }, + { + "name": "BatCrash_SpawnDebris", + "code": "BatCrash_SpawnDebris:\n #_1AF7E5: LDY.b #$1D\n\n.next_particle\n #_1AF7E7: LDA.w .offset_x,Y\n #_1AF7EA: STA.b $00\n\n #_1AF7EC: LDA.w .offset_y,Y\n #_1AF7EF: STA.b $01\n\n #_1AF7F1: LDA.w .speed_x,Y\n #_1AF7F4: STA.b $02\n\n #_1AF7F6: LDA.w .speed_y,Y\n #_1AF7F9: STA.b $03\n\n #_1AF7FB: PHY\n #_1AF7FC: JSL GarnishSpawn_PyramidDebris\n #_1AF800: PLY\n\n #_1AF801: DEY\n #_1AF802: BPL .next_particle\n\n #_1AF804: LDA.b #$20\n #_1AF806: STA.w $0EE0,X\n\n #_1AF809: RTS", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_BatCrash", + "code": "SpriteDraw_BatCrash:\n #_1AF833: REP #$20\n\n #_1AF835: LDA.w #$0960\n #_1AF838: STA.b $90\n\n #_1AF83A: LDA.w #$0A78\n #_1AF83D: STA.b $92\n\n #_1AF83F: SEP #$20\n\n #_1AF841: LDA.w $0DE0,X\n #_1AF844: ASL A\n #_1AF845: ASL A\n #_1AF846: ADC.w $0DC0,X\n #_1AF849: TAY\n\n #_1AF84A: LDA.w .pointer_low,Y\n #_1AF84D: STA.b $08\n\n #_1AF84F: LDA.w .pointer_high\n #_1AF852: STA.b $09\n\n #_1AF854: LDA.w .obj_count,Y\n #_1AF857: JSL SpriteDraw_Tabulated\n\n #_1AF85B: RTS", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_Drunkard", + "code": "SpriteDraw_Drunkard:\n #_1AF88C: PHB\n #_1AF88D: PHK\n #_1AF88E: PLB\n\n #_1AF88F: LDA.w $0DC0,X\n #_1AF892: ASL A\n #_1AF893: ADC.w $0DC0,X\n #_1AF896: ASL A\n #_1AF897: ASL A\n #_1AF898: ASL A\n #_1AF899: ADC.b #.oam_groups>>0\n #_1AF89B: STA.b $08\n\n #_1AF89D: LDA.b #.oam_groups>>8\n #_1AF89F: ADC.b #$00\n\n #_1AF8A1: STA.b $09\n\n #_1AF8A3: LDA.b #$03\n #_1AF8A5: STA.b $06\n #_1AF8A7: STZ.b $07\n\n #_1AF8A9: JMP.w SpriteDraw_Drunkard_continue\n\n; =========================================================\n\npool SpriteDraw_RaceGameLady\n\n.oam_groups\n #_1AF8AC: dw 0, -8 : db $E0, $00, $00, $02\n #_1AF8B4: dw 0, 0 : db $E8, $00, $00, $02\n #_1AF8BC: dw 0, -7 : db $E0, $00, $00, $02\n #_1AF8C4: dw 0, 1 : db $E8, $40, $00, $02\n\n #_1AF8CC: dw 0, -8 : db $C0, $00, $00, $02\n #_1AF8D4: dw 0, 0 : db $C2, $00, $00, $02\n #_1AF8DC: dw 0, -7 : db $C0, $00, $00, $02\n #_1AF8E4: dw 0, 1 : db $C2, $40, $00, $02\n\n #_1AF8EC: dw 0, -8 : db $E2, $00, $00, $02\n #_1AF8F4: dw 0, 0 : db $E4, $00, $00, $02\n #_1AF8FC: dw 0, -7 : db $E2, $00, $00, $02\n #_1AF904: dw 0, 1 : db $E6, $00, $00, $02\n\n #_1AF90C: dw 0, -8 : db $E2, $40, $00, $02\n #_1AF914: dw 0, 0 : db $E4, $40, $00, $02\n #_1AF91C: dw 0, -7 : db $E2, $40, $00, $02\n #_1AF924: dw 0, 1 : db $E6, $40, $00, $02\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_RaceGameLady", + "code": "SpriteDraw_RaceGameLady:\n #_1AF92C: PHB\n #_1AF92D: PHK\n #_1AF92E: PLB\n\n #_1AF92F: LDA.b #$02\n #_1AF931: STA.b $06\n #_1AF933: STZ.b $07\n\n #_1AF935: LDA.w $0DE0,X\n #_1AF938: ASL A\n #_1AF939: ADC.w $0DC0,X\n #_1AF93C: ASL A\n #_1AF93D: ASL A\n #_1AF93E: ASL A\n #_1AF93F: ASL A\n #_1AF940: ADC.b #.oam_groups>>0\n #_1AF942: STA.b $08\n\n #_1AF944: LDA.b #.oam_groups>>8\n #_1AF946: ADC.b #$00\n #_1AF948: STA.b $09\n\n; ---------------------------------------------------------\n\n#SpriteDraw_Drunkard_continue:\n #_1AF94A: JSL SpriteDraw_Tabulated_player_deferred\n #_1AF94E: JSL SpriteDraw_Shadow_long\n\n #_1AF952: PLB\n\n #_1AF953: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank1A", + "code": "Sprite_CheckIfActive_Bank1A:\n #_1AF954: LDA.w $0DD0,X\n #_1AF957: CMP.b #$09\n #_1AF959: BNE .inactive\n\n #_1AF95B: LDA.w $0FC1\n #_1AF95E: BNE .inactive\n\n #_1AF960: LDA.b $11\n #_1AF962: BNE .inactive\n\n #_1AF964: LDA.w $0CAA,X\n #_1AF967: BMI .active\n\n #_1AF969: LDA.w $0F00,X\n #_1AF96C: BEQ .active\n\n.inactive\n #_1AF96E: PLA\n #_1AF96F: PLA\n\n.active\n #_1AF970: RTS", + "file": "bank_1A.asm" + }, + { + "name": "Lanmola_SpawnShrapnel", + "code": "Lanmola_SpawnShrapnel:\n #_1AF981: LDY.b #$03\n\n #_1AF983: LDA.w $0DD0\n #_1AF986: CLC\n #_1AF987: ADC.w $0DD1\n #_1AF98A: ADC.w $0DD2\n #_1AF98D: CMP.b #$0A\n #_1AF98F: BCS .too_much_stuff\n\n #_1AF991: LDY.b #$07\n\n.too_much_stuff\n #_1AF993: STY.w $0FB5\n\n.next_spawn\n #_1AF996: LDA.b #$C2 ; SPRITE C2\n #_1AF998: JSL Sprite_SpawnDynamically\n #_1AF99C: BMI .no_space\n\n #_1AF99E: JSL Sprite_SetSpawnedCoordinates\n\n #_1AF9A2: LDA.b $00\n #_1AF9A4: ADC.b #$04\n #_1AF9A6: STA.w $0D10,Y\n\n #_1AF9A9: LDA.b $02\n #_1AF9AB: ADC.b #$04\n #_1AF9AD: STA.w $0D00,Y\n\n #_1AF9B0: LDA.b #$01\n #_1AF9B2: STA.w $0BA0,Y\n #_1AF9B5: STA.w $0CD2,Y\n #_1AF9B8: STA.w $0F60,Y\n\n #_1AF9BB: DEC A\n #_1AF9BC: STA.w $0F70,Y\n\n #_1AF9BF: LDA.b #$20\n #_1AF9C1: STA.w $0E40,Y\n\n #_1AF9C4: PHX\n #_1AF9C5: LDX.w $0FB5\n\n #_1AF9C8: LDA.l .speed_x,X\n #_1AF9CC: STA.w $0D50,Y\n\n #_1AF9CF: LDA.l .speed_y,X\n #_1AF9D3: STA.w $0D40,Y\n\n #_1AF9D6: JSL GetRandomNumber\n\n #_1AF9DA: AND.b #$01\n #_1AF9DC: STA.w $0DC0,Y\n\n #_1AF9DF: PLX\n\n.no_space\n #_1AF9E0: DEC.w $0FB5\n #_1AF9E3: BPL .next_spawn\n\n #_1AF9E5: RTL", + "file": "bank_1A.asm" + }, + { + "name": "UNREACHABLE_1AF9E6", + "code": "UNREACHABLE_1AF9E6:\n #_1AF9E6: LDY.b #$00\n #_1AF9E8: CMP.b #$00\n #_1AF9EA: BPL .positive\n\n #_1AF9EC: DEY\n\n.positive\n #_1AF9ED: CLC\n #_1AF9EE: ADC.w $0FDA\n #_1AF9F1: STA.w $0FDA\n\n #_1AF9F4: TYA\n #_1AF9F5: ADC.w $0FDB\n #_1AF9F8: STA.w $0FDB\n\n #_1AF9FB: LDA.w $0F50,X\n #_1AF9FE: PHA\n\n #_1AF9FF: JSL Sprite_Cukeman\n\n #_1AFA03: PLA\n #_1AFA04: STA.w $0F50,X\n\n #_1AFA07: JSL Sprite_Get16BitCoords_long\n\n #_1AFA0B: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Sprite_Cukeman", + "code": "Sprite_Cukeman:\n #_1AFA0C: LDA.w $0EB0,X\n #_1AFA0F: BEQ .exit\n\n #_1AFA11: LDA.w $0DD0,X\n #_1AFA14: CMP.b #$09\n #_1AFA16: BNE .dont_speak\n\n #_1AFA18: LDA.b $11\n #_1AFA1A: ORA.w $0FC1\n #_1AFA1D: BNE .dont_speak\n\n #_1AFA1F: REP #$20\n\n #_1AFA21: LDA.w $0FD8\n #_1AFA24: SEC\n #_1AFA25: SBC.b $22\n #_1AFA27: CLC\n #_1AFA28: ADC.w #$0018\n #_1AFA2B: CMP.w #$0030\n #_1AFA2E: BCS .dont_speak\n\n #_1AFA30: LDA.b $20\n #_1AFA32: SEC\n #_1AFA33: SBC.w $0FDA\n #_1AFA36: CLC\n #_1AFA37: ADC.w #$0020\n #_1AFA3A: CMP.w #$0030\n #_1AFA3D: BCS .dont_speak\n\n #_1AFA3F: SEP #$20\n\n #_1AFA41: LDA.b $F6\n #_1AFA43: BPL .dont_speak\n\n #_1AFA45: LDA.w $0E30,X\n #_1AFA48: INC.w $0E30,X\n #_1AFA4B: AND.b #$01\n\n #_1AFA4D: CLC\n #_1AFA4E: ADC.b #$7A ; MESSAGE 017A or MESSAGE 017B\n #_1AFA50: STA.w $1CF0\n\n #_1AFA53: LDA.b #$01\n #_1AFA55: STA.w $1CF1\n #_1AFA58: JSL Sprite_ShowMessageMinimal\n\n.dont_speak\n #_1AFA5C: SEP #$20\n\n; ---------------------------------------------------------\n\n #_1AFA5E: PHB\n #_1AFA5F: PHK\n #_1AFA60: PLB\n\n #_1AFA61: LDA.w $0F50,X\n #_1AFA64: AND.b #$F0\n #_1AFA66: PHA\n\n #_1AFA67: ORA.b #$08\n #_1AFA69: STA.w $0F50,X\n\n #_1AFA6C: JSR SpriteDraw_Cukeman\n\n #_1AFA6F: PLA\n #_1AFA70: ORA.b #$0D\n #_1AFA72: STA.w $0F50,X\n\n #_1AFA75: LDA.b #$10\n #_1AFA77: JSL SpriteDraw_AllocateOAMFromRegionA\n\n #_1AFA7B: PLB\n\n #_1AFA7C: RTL", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_Cukeman", + "code": "SpriteDraw_Cukeman:\n #_1AFB0E: LDA.b #$00\n #_1AFB10: XBA\n #_1AFB11: LDA.w $0DC0,X\n\n #_1AFB14: REP #$20\n\n #_1AFB16: ASL A\n #_1AFB17: ASL A\n #_1AFB18: ASL A\n #_1AFB19: STA.b $00\n\n #_1AFB1B: ASL A\n #_1AFB1C: ADC.b $00\n #_1AFB1E: ADC.w #.oam_groups\n #_1AFB21: STA.b $08\n\n #_1AFB23: SEP #$20\n\n #_1AFB25: LDA.b #$03\n #_1AFB27: JSL SpriteDraw_Tabulated\n\n #_1AFB2B: RTS", + "file": "bank_1A.asm" + }, + { + "name": "RunningBoy_SpawnDustGarnish", + "code": "RunningBoy_SpawnDustGarnish:\n #_1AFB2C: INC.w $0CBA,X\n\n #_1AFB2F: LDA.w $0CBA,X\n #_1AFB32: AND.b #$0F\n #_1AFB34: BNE .exit\n\n #_1AFB36: PHX\n #_1AFB37: TXY\n\n #_1AFB38: LDX.b #$1D\n\n.next_slot\n #_1AFB3A: LDA.l $7FF800,X\n #_1AFB3E: BEQ .free_slot\n\n #_1AFB40: DEX\n #_1AFB41: BPL .next_slot\n\n #_1AFB43: INX\n\n.free_slot\n #_1AFB44: LDA.b #$14 ; GARNISH 14\n #_1AFB46: STA.l $7FF800,X\n #_1AFB4A: STA.w $0FB4\n\n #_1AFB4D: LDA.w $0D10,Y\n #_1AFB50: CLC\n #_1AFB51: ADC.b #$04\n #_1AFB53: STA.l $7FF83C,X\n\n #_1AFB57: LDA.w $0D30,Y\n #_1AFB5A: ADC.b #$00\n #_1AFB5C: STA.l $7FF878,X\n\n #_1AFB60: LDA.w $0D00,Y\n #_1AFB63: CLC\n #_1AFB64: ADC.b #$1C\n #_1AFB66: STA.l $7FF81E,X\n\n #_1AFB6A: LDA.w $0D20,Y\n #_1AFB6D: ADC.b #$00\n #_1AFB6F: STA.l $7FF85A,X\n\n #_1AFB73: LDA.b #$0A\n #_1AFB75: STA.l $7FF90E,X\n\n #_1AFB79: PLX\n\n.exit\n #_1AFB7A: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Overworld_SubstituteAlternateSecret", + "code": "Overworld_SubstituteAlternateSecret:\n #_1AFBDB: PHB\n #_1AFBDC: PHK\n #_1AFBDD: PLB\n\n #_1AFBDE: JSL GetRandomNumber\n #_1AFBE2: AND.b #$01\n #_1AFBE4: BNE .exit\n\n #_1AFBE6: STZ.b $0D\n\n #_1AFBE8: LDY.b #$0F\n\n.next_slot\n #_1AFBEA: LDA.w $0DD0,Y\n #_1AFBED: BEQ .skip_slot\n\n #_1AFBEF: LDA.w $0E20,Y\n #_1AFBF2: CMP.b #$6C ; SPRITE 6C\n #_1AFBF4: BEQ .skip_slot\n\n #_1AFBF6: INC.b $0D\n\n.skip_slot\n #_1AFBF8: DEY\n #_1AFBF9: BPL .next_slot\n\n; ---------------------------------------------------------\n\n #_1AFBFB: LDA.b $0D\n #_1AFBFD: CMP.b #$04\n #_1AFBFF: BCS .exit\n\n #_1AFC01: LDA.l $7EF3C5\n #_1AFC05: CMP.b #$02\n #_1AFC07: BCC .exit\n\n #_1AFC09: LDA.w $0CF7\n\n #_1AFC0C: INC.w $0CF7\n #_1AFC0F: AND.b #$07\n\n #_1AFC11: LDY.w $0FFF\n #_1AFC14: BEQ .light_world\n\n #_1AFC16: ORA.b #$08\n\n.light_world\n #_1AFC18: TAY\n\n #_1AFC19: PHX\n\n #_1AFC1A: LDA.w $040A\n #_1AFC1D: AND.b #$3F\n #_1AFC1F: TAX\n\n #_1AFC20: LDA.w .screen_mask,X\n #_1AFC23: AND.w .prize_mask,Y\n #_1AFC26: BNE .no_sub\n\n #_1AFC28: LDA.w .secret_index,Y\n #_1AFC2B: STA.w $0B9C\n\n.no_sub\n #_1AFC2E: PLX\n\n.exit\n #_1AFC2F: PLB\n\n #_1AFC30: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Sprite_EE_CastleMantle", + "code": "Sprite_EE_CastleMantle:\n #_1AFC31: PHB\n #_1AFC32: PHK\n #_1AFC33: PLB\n\n #_1AFC34: JSR .main\n\n #_1AFC37: PLB\n\n #_1AFC38: RTL", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_CastleMantle", + "code": "SpriteDraw_CastleMantle:\n #_1AFCB3: LDA.b #$20\n #_1AFCB5: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_1AFCB9: JSL Sprite_PrepOAMCoord_long\n #_1AFCBD: BCS .exit\n\n #_1AFCBF: PHX\n\n #_1AFCC0: LDX.b #$05\n\n.next_object\n #_1AFCC2: LDA.b $00\n #_1AFCC4: CLC\n #_1AFCC5: ADC.w .offset_x,X\n #_1AFCC8: STA.b ($90),Y\n\n #_1AFCCA: LDA.b $02\n #_1AFCCC: CLC\n #_1AFCCD: ADC.w .offset_y,X\n #_1AFCD0: INY\n #_1AFCD1: STA.b ($90),Y\n\n #_1AFCD3: LDA.w .char,X\n #_1AFCD6: INY\n #_1AFCD7: STA.b ($90),Y\n\n #_1AFCD9: LDA.w .prop,X\n #_1AFCDC: INY\n #_1AFCDD: STA.b ($90),Y\n\n #_1AFCDF: INY\n\n #_1AFCE0: DEX\n #_1AFCE1: BPL .next_object\n\n; ---------------------------------------------------------\n\n #_1AFCE3: PLX\n\n #_1AFCE4: LDY.b #$02\n #_1AFCE6: LDA.b #$05\n #_1AFCE8: JSL Sprite_CorrectOAMEntries_long\n\n.exit\n #_1AFCEC: RTS", + "file": "bank_1A.asm" + }, + { + "name": "SpriteDraw_Mothula", + "code": "SpriteDraw_Mothula:\n #_1AFDAD: PHB\n #_1AFDAE: PHK\n #_1AFDAF: PLB\n\n #_1AFDB0: JSR .draw_her\n\n #_1AFDB3: PLB\n\n #_1AFDB4: RTL", + "file": "bank_1A.asm" + }, + { + "name": "BottleMerchant_BuyBee", + "code": "BottleMerchant_BuyBee:\n #_1AFE88: PHB\n #_1AFE89: PHK\n #_1AFE8A: PLB\n\n #_1AFE8B: LDA.b #$13 ; SFX3.13\n #_1AFE8D: JSL SpriteSFX_QueueSFX3WithPan\n\n #_1AFE91: LDA.b #$04\n #_1AFE93: STA.w $0FB5\n\n.next_spawn\n #_1AFE96: LDA.b #$DB ; SPRITE DB\n #_1AFE98: JSL Sprite_SpawnDynamically\n #_1AFE9C: BMI .no_space\n\n #_1AFE9E: JSL Sprite_SetSpawnedCoordinates\n\n #_1AFEA2: LDA.b $00\n #_1AFEA4: CLC\n #_1AFEA5: ADC.b #$04\n #_1AFEA7: STA.w $0D10,Y\n\n #_1AFEAA: LDA.b #$FF\n #_1AFEAC: STA.w $0B58,Y\n\n #_1AFEAF: PHX\n\n #_1AFEB0: LDX.w $0FB5\n\n #_1AFEB3: LDA.w .speed_x,X\n #_1AFEB6: STA.w $0D50,Y\n\n #_1AFEB9: LDA.w .speed_y,X\n #_1AFEBC: STA.w $0D40,Y\n\n #_1AFEBF: LDA.b #$20\n #_1AFEC1: STA.w $0F80,Y\n #_1AFEC4: STA.w $0F10,Y\n\n #_1AFEC7: PLX\n\n.no_space\n #_1AFEC8: DEC.w $0FB5\n #_1AFECB: BPL .next_spawn\n\n #_1AFECD: PLB\n\n #_1AFECE: RTL", + "file": "bank_1A.asm" + }, + { + "name": "ChickenLady", + "code": "ChickenLady:\n #_1AFECF: JSR .main\n\n #_1AFED2: RTL", + "file": "bank_1A.asm" + }, + { + "name": "SpritePrep_DiggingGameGuy", + "code": "SpritePrep_DiggingGameGuy:\n #_1AFF00: LDA.w $0D00,X\n #_1AFF03: STA.b $00\n\n #_1AFF05: LDA.w $0D20,X\n #_1AFF08: STA.b $01\n\n #_1AFF0A: REP #$20\n\n #_1AFF0C: LDA.b $20\n #_1AFF0E: CMP.b $00\n\n #_1AFF10: SEP #$30\n #_1AFF12: BCS .link_is_below\n\n #_1AFF14: LDA.b #$05\n #_1AFF16: STA.w $0D80,X\n\n #_1AFF19: LDA.w $0D10,X\n #_1AFF1C: SEC\n #_1AFF1D: SBC.b #$09\n #_1AFF1F: STA.w $0D10,X\n\n #_1AFF22: LDA.b #$01\n #_1AFF24: STA.w $0DC0,X\n\n.link_is_below\n #_1AFF27: INC.w $0BA0,X\n\n #_1AFF2A: RTL", + "file": "bank_1A.asm" + }, + { + "name": "SpawnHammerWaterSplash", + "code": "SpawnHammerWaterSplash:\n #_1AFF3C: LDA.b $11\n #_1AFF3E: ORA.w $02E4\n #_1AFF41: ORA.w $0FC1\n #_1AFF44: BNE EXIT_1AFF3B\n\n #_1AFF46: PHX\n #_1AFF47: PHY\n\n #_1AFF48: LDX.b $2F\n\n #_1AFF4A: REP #$20\n\n #_1AFF4C: LDA.b $22\n #_1AFF4E: CLC\n #_1AFF4F: ADC.l .offset_x,X\n #_1AFF53: STA.b $00\n\n #_1AFF55: LDA.b $20\n #_1AFF57: CLC\n #_1AFF58: ADC.l .offset_y,X\n #_1AFF5C: STA.b $02\n\n #_1AFF5E: SEP #$20\n\n #_1AFF60: LDA.b $EE\n #_1AFF62: CMP.b #$01\n\n #_1AFF64: REP #$30\n\n #_1AFF66: STZ.b $05\n #_1AFF68: BCC .lower_layer\n\n #_1AFF6A: LDA.w #$1000\n #_1AFF6D: STA.b $05\n\n.lower_layer\n #_1AFF6F: SEP #$20\n\n #_1AFF71: LDA.b $1B\n\n #_1AFF73: REP #$20\n #_1AFF75: BEQ .outdoors\n\n; ---------------------------------------------------------\n\n\n #_1AFF77: LDA.b $00\n #_1AFF79: AND.w #$01FF\n #_1AFF7C: LSR A\n #_1AFF7D: LSR A\n #_1AFF7E: LSR A\n #_1AFF7F: STA.b $04\n\n #_1AFF81: LDA.b $02\n #_1AFF83: AND.w #$01F8\n #_1AFF86: ASL A\n #_1AFF87: ASL A\n #_1AFF88: ASL A\n #_1AFF89: CLC\n #_1AFF8A: ADC.b $04\n\n #_1AFF8C: CLC\n #_1AFF8D: ADC.b $05\n\n #_1AFF8F: TAX\n\n #_1AFF90: LDA.l $7F2000,X\n #_1AFF94: BRA .verify_water\n\n; ---------------------------------------------------------\n\n.outdoors\n\n #_1AFF96: LDA.b $02\n #_1AFF98: PHA\n\n #_1AFF99: LDA.b $00\n #_1AFF9B: LSR A\n #_1AFF9C: LSR A\n #_1AFF9D: LSR A\n #_1AFF9E: STA.b $02\n\n #_1AFFA0: PLA\n #_1AFFA1: STA.b $00\n\n #_1AFFA3: SEP #$30\n\n #_1AFFA5: JSL Overworld_ReadTileType\n\n #_1AFFA9: REP #$10\n\n; ---------------------------------------------------------\n\n.verify_water\n #_1AFFAB: SEP #$30\n\n #_1AFFAD: CMP.b #$08 ; TILETYPE 08\n #_1AFFAF: BEQ .is_water\n\n #_1AFFB1: CMP.b #$09 ; TILETYPE 09\n #_1AFFB3: BNE .no_splash\n\n.is_water\n #_1AFFB5: JSL Sprite_SpawnSmallSplash\n #_1AFFB9: BMI .no_splash\n\n #_1AFFBB: LDX.b $2F\n\n #_1AFFBD: LDA.b $20\n #_1AFFBF: CLC\n #_1AFFC0: ADC.l .offset_y+0,X\n #_1AFFC4: PHP\n\n #_1AFFC5: SEC\n #_1AFFC6: SBC.b #$10\n #_1AFFC8: STA.w $0D00,Y\n\n #_1AFFCB: LDA.b $21\n #_1AFFCD: SBC.b #$00\n\n #_1AFFCF: PLP\n #_1AFFD0: ADC.l .offset_y+1,X\n #_1AFFD4: STA.w $0D20,Y\n\n #_1AFFD7: LDA.b $22\n #_1AFFD9: CLC\n #_1AFFDA: ADC.l .offset_x+0,X\n #_1AFFDE: PHP\n\n #_1AFFDF: SEC\n #_1AFFE0: SBC.b #$08\n #_1AFFE2: STA.w $0D10,Y\n\n #_1AFFE5: LDA.b $23\n #_1AFFE7: SBC.b #$00\n\n #_1AFFE9: PLP\n #_1AFFEA: ADC.l .offset_x+1,X\n #_1AFFEE: STA.w $0D30,Y\n\n #_1AFFF1: LDA.b $EE\n #_1AFFF3: STA.w $0F20,Y\n\n #_1AFFF6: LDA.b #$00\n #_1AFFF8: STA.w $0F70,Y\n\n.no_splash\n #_1AFFFB: PLX\n #_1AFFFC: PLY\n\n #_1AFFFD: RTL", + "file": "bank_1A.asm" + }, + { + "name": "Tile32_TopLeft", + "code": "Tile32_TopLeft:\n#_038000: db $00, $02, $01, $02 : db $00, $00 ; 0x0000\u20130x0003: 0x000, 0x002, 0x001, 0x002\n#_038006: db $03, $05, $07, $09 : db $00, $00 ; 0x0004\u20130x0007: 0x003, 0x005, 0x007, 0x009\n#_03800C: db $08, $14, $16, $15 : db $00, $00 ; 0x0008\u20130x000B: 0x008, 0x014, 0x016, 0x015\n#_038012: db $17, $19, $04, $01 : db $00, $00 ; 0x000C\u20130x000F: 0x017, 0x019, 0x004, 0x001\n#_038018: db $00, $02, $26, $28 : db $00, $00 ; 0x0010\u20130x0013: 0x000, 0x002, 0x026, 0x028\n#_03801E: db $29, $17, $2A, $18 : db $00, $00 ; 0x0014\u20130x0017: 0x029, 0x017, 0x02A, 0x018\n#_038024: db $2B, $03, $09, $32 : db $00, $00 ; 0x0018\u20130x001B: 0x02B, 0x003, 0x009, 0x032\n#_03802A: db $34, $34, $34, $36 : db $00, $00 ; 0x001C\u20130x001F: 0x034, 0x034, 0x034, 0x036\n#_038030: db $34, $17, $19, $04 : db $00, $00 ; 0x0020\u20130x0023: 0x034, 0x017, 0x019, 0x004\n#_038036: db $01, $00, $04, $3C : db $00, $00 ; 0x0024\u20130x0027: 0x001, 0x000, 0x004, 0x03C\n#_03803C: db $3E, $34, $3F, $40 : db $00, $00 ; 0x0028\u20130x002B: 0x03E, 0x034, 0x03F, 0x040\n#_038042: db $31, $4E, $32, $51 : db $00, $00 ; 0x002C\u20130x002F: 0x031, 0x04E, 0x032, 0x051\n#_038048: db $2A, $54, $55, $57 : db $00, $00 ; 0x0030\u20130x0033: 0x02A, 0x054, 0x055, 0x057\n#_03804E: db $58, $5A, $03, $30 : db $00, $00 ; 0x0034\u20130x0037: 0x058, 0x05A, 0x003, 0x030\n#_038054: db $30, $62, $64, $04 : db $00, $00 ; 0x0038\u20130x003B: 0x030, 0x062, 0x064, 0x004\n#_03805A: db $32, $5F, $65, $02 : db $00, $00 ; 0x003C\u20130x003F: 0x032, 0x05F, 0x065, 0x002\n#_038060: db $03, $5E, $04, $34 : db $00, $00 ; 0x0040\u20130x0043: 0x003, 0x05E, 0x004, 0x034\n#_038066: db $34, $69, $04, $30 : db $00, $00 ; 0x0044\u20130x0047: 0x034, 0x069, 0x004, 0x030\n#_03806C: db $5F, $1A, $53, $15 : db $00, $00 ; 0x0048\u20130x004B: 0x05F, 0x01A, 0x053, 0x015\n#_038072: db $2F, $6F, $34, $34 : db $00, $00 ; 0x004C\u20130x004F: 0x02F, 0x06F, 0x034, 0x034\n#_038078: db $61, $63, $26, $31 : db $00, $00 ; 0x0050\u20130x0053: 0x061, 0x063, 0x026, 0x031\n#_03807E: db $33, $34, $64, $1A : db $00, $00 ; 0x0054\u20130x0057: 0x033, 0x034, 0x064, 0x01A\n#_038084: db $3F, $65, $15, $33 : db $00, $00 ; 0x0058\u20130x005B: 0x03F, 0x065, 0x015, 0x033\n#_03808A: db $3D, $69, $1A, $3E : db $00, $00 ; 0x005C\u20130x005F: 0x03D, 0x069, 0x01A, 0x03E\n#_038090: db $40, $4B, $2F, $04 : db $00, $00 ; 0x0060\u20130x0063: 0x040, 0x04B, 0x02F, 0x004\n#_038096: db $56, $22, $45, $75 : db $00, $00 ; 0x0064\u20130x0067: 0x056, 0x022, 0x045, 0x075\n#_03809C: db $32, $41, $04, $56 : db $00, $00 ; 0x0068\u20130x006B: 0x032, 0x041, 0x004, 0x056\n#_0380A2: db $2D, $1D, $5F, $00 : db $00, $00 ; 0x006C\u20130x006F: 0x02D, 0x01D, 0x05F, 0x000\n#_0380A8: db $04, $30, $40, $0F : db $00, $00 ; 0x0070\u20130x0073: 0x004, 0x030, 0x040, 0x00F\n#_0380AE: db $5D, $54, $31, $2F : db $00, $00 ; 0x0074\u20130x0077: 0x05D, 0x054, 0x031, 0x02F\n#_0380B4: db $63, $04, $07, $08 : db $00, $00 ; 0x0078\u20130x007B: 0x063, 0x004, 0x007, 0x008\n#_0380BA: db $79, $3B, $34, $7C : db $00, $00 ; 0x007C\u20130x007F: 0x079, 0x03B, 0x034, 0x07C\n#_0380C0: db $50, $52, $06, $01 : db $00, $00 ; 0x0080\u20130x0083: 0x050, 0x052, 0x006, 0x001\n#_0380C6: db $00, $03, $5E, $5F : db $00, $00 ; 0x0084\u20130x0087: 0x000, 0x003, 0x05E, 0x05F\n#_0380CC: db $04, $65, $2A, $18 : db $00, $00 ; 0x0088\u20130x008B: 0x004, 0x065, 0x02A, 0x018\n#_0380D2: db $15, $86, $88, $66 : db $00, $00 ; 0x008C\u20130x008F: 0x015, 0x086, 0x088, 0x066\n#_0380D8: db $68, $34, $53, $77 : db $00, $00 ; 0x0090\u20130x0093: 0x068, 0x034, 0x053, 0x077\n#_0380DE: db $8A, $72, $8C, $34 : db $00, $00 ; 0x0094\u20130x0097: 0x08A, 0x072, 0x08C, 0x034\n#_0380E4: db $8F, $8E, $90, $92 : db $00, $00 ; 0x0098\u20130x009B: 0x08F, 0x08E, 0x090, 0x092\n#_0380EA: db $91, $93, $3E, $34 : db $00, $00 ; 0x009C\u20130x009F: 0x091, 0x093, 0x03E, 0x034\n#_0380F0: db $34, $34, $9E, $9F : db $00, $00 ; 0x00A0\u20130x00A3: 0x034, 0x034, 0x09E, 0x09F\n#_0380F6: db $A1, $34, $6A, $15 : db $00, $00 ; 0x00A4\u20130x00A7: 0x0A1, 0x034, 0x06A, 0x015\n#_0380FC: db $41, $35, $35, $34 : db $00, $00 ; 0x00A8\u20130x00AB: 0x041, 0x035, 0x035, 0x034\n#_038102: db $AA, $A4, $34, $71 : db $00, $00 ; 0x00AC\u20130x00AF: 0x0AA, 0x0A4, 0x034, 0x071\n#_038108: db $5F, $33, $34, $34 : db $00, $00 ; 0x00B0\u20130x00B3: 0x05F, 0x033, 0x034, 0x034\n#_03810E: db $71, $71, $34, $34 : db $00, $00 ; 0x00B4\u20130x00B7: 0x071, 0x071, 0x034, 0x034\n#_038114: db $3F, $40, $40, $5F : db $00, $00 ; 0x00B8\u20130x00BB: 0x03F, 0x040, 0x040, 0x05F\n#_03811A: db $1B, $3B, $71, $96 : db $00, $00 ; 0x00BC\u20130x00BF: 0x01B, 0x03B, 0x071, 0x096\n#_038120: db $34, $40, $54, $5F : db $00, $00 ; 0x00C0\u20130x00C3: 0x034, 0x040, 0x054, 0x05F\n#_038126: db $21, $04, $B3, $34 : db $00, $00 ; 0x00C4\u20130x00C7: 0x021, 0x004, 0x0B3, 0x034\n#_03812C: db $8D, $B5, $75, $4E : db $00, $00 ; 0x00C8\u20130x00CB: 0x08D, 0x0B5, 0x075, 0x04E\n#_038132: db $32, $59, $63, $30 : db $00, $00 ; 0x00CC\u20130x00CF: 0x032, 0x059, 0x063, 0x030\n#_038138: db $BC, $BE, $3B, $20 : db $00, $00 ; 0x00D0\u20130x00D3: 0x0BC, 0x0BE, 0x03B, 0x020\n#_03813E: db $81, $34, $96, $34 : db $00, $00 ; 0x00D4\u20130x00D7: 0x081, 0x034, 0x096, 0x034\n#_038144: db $C1, $3D, $3F, $2F : db $00, $00 ; 0x00D8\u20130x00DB: 0x0C1, 0x03D, 0x03F, 0x02F\n#_03814A: db $34, $71, $97, $5F : db $00, $00 ; 0x00DC\u20130x00DF: 0x034, 0x071, 0x097, 0x05F\n#_038150: db $6C, $40, $81, $1B : db $00, $00 ; 0x00E0\u20130x00E3: 0x06C, 0x040, 0x081, 0x01B\n#_038156: db $3B, $20, $34, $3F : db $00, $00 ; 0x00E4\u20130x00E7: 0x03B, 0x020, 0x034, 0x03F\n#_03815C: db $04, $34, $40, $56 : db $00, $00 ; 0x00E8\u20130x00EB: 0x004, 0x034, 0x040, 0x056\n#_038162: db $04, $40, $34, $54 : db $00, $00 ; 0x00EC\u20130x00EF: 0x004, 0x040, 0x034, 0x054\n#_038168: db $5F, $56, $04, $69 : db $00, $00 ; 0x00F0\u20130x00F3: 0x05F, 0x056, 0x004, 0x069\n#_03816E: db $59, $34, $8B, $68 : db $00, $00 ; 0x00F4\u20130x00F7: 0x059, 0x034, 0x08B, 0x068\n#_038174: db $67, $6D, $30, $34 : db $00, $00 ; 0x00F8\u20130x00FB: 0x067, 0x06D, 0x030, 0x034\n#_03817A: db $34, $4B, $26, $C3 : db $00, $00 ; 0x00FC\u20130x00FF: 0x034, 0x04B, 0x026, 0x0C3\n#_038180: db $C5, $C7, $C9, $CA : db $00, $00 ; 0x0100\u20130x0103: 0x0C5, 0x0C7, 0x0C9, 0x0CA\n#_038186: db $02, $CD, $C6, $17 : db $00, $00 ; 0x0104\u20130x0107: 0x002, 0x0CD, 0x0C6, 0x017\n#_03818C: db $CE, $D0, $D1, $D1 : db $00, $00 ; 0x0108\u20130x010B: 0x0CE, 0x0D0, 0x0D1, 0x0D1\n#_038192: db $C6, $C7, $4E, $D6 : db $00, $00 ; 0x010C\u20130x010F: 0x0C6, 0x0C7, 0x04E, 0x0D6\n#_038198: db $09, $D9, $DB, $CA : db $00, $00 ; 0x0110\u20130x0113: 0x009, 0x0D9, 0x0DB, 0x0CA\n#_03819E: db $DD, $DC, $DC, $D0 : db $00, $00 ; 0x0114\u20130x0117: 0x0DD, 0x0DC, 0x0DC, 0x0D0\n#_0381A4: db $C6, $34, $01, $01 : db $00, $00 ; 0x0118\u20130x011B: 0x0C6, 0x034, 0x001, 0x001\n#_0381AA: db $00, $DA, $E1, $DB : db $00, $00 ; 0x011C\u20130x011F: 0x000, 0x0DA, 0x0E1, 0x0DB\n#_0381B0: db $E4, $E3, $E3, $E3 : db $00, $00 ; 0x0120\u20130x0123: 0x0E4, 0x0E3, 0x0E3, 0x0E3\n#_0381B6: db $CA, $C5, $34, $87 : db $00, $00 ; 0x0124\u20130x0127: 0x0CA, 0x0C5, 0x034, 0x087\n#_0381BC: db $87, $86, $36, $EA : db $00, $00 ; 0x0128\u20130x012B: 0x087, 0x086, 0x036, 0x0EA\n#_0381C2: db $EB, $34, $CE, $A8 : db $00, $00 ; 0x012C\u20130x012F: 0x0EB, 0x034, 0x0CE, 0x0A8\n#_0381C8: db $34, $D7, $5A, $DA : db $00, $00 ; 0x0130\u20130x0133: 0x034, 0x0D7, 0x05A, 0x0DA\n#_0381CE: db $36, $EE, $EF, $36 : db $00, $00 ; 0x0134\u20130x0137: 0x036, 0x0EE, 0x0EF, 0x036\n#_0381D4: db $79, $BE, $02, $7C : db $00, $00 ; 0x0138\u20130x013B: 0x079, 0x0BE, 0x002, 0x07C\n#_0381DA: db $DA, $36, $F4, $F6 : db $00, $00 ; 0x013C\u20130x013F: 0x0DA, 0x036, 0x0F4, 0x0F6\n#_0381E0: db $F7, $34, $34, $AF : db $00, $00 ; 0x0140\u20130x0143: 0x0F7, 0x034, 0x034, 0x0AF\n#_0381E6: db $7F, $DA, $01, $03 : db $00, $11 ; 0x0144\u20130x0147: 0x07F, 0x0DA, 0x101, 0x103\n#_0381EC: db $00, $05, $07, $34 : db $11, $10 ; 0x0148\u20130x014B: 0x100, 0x105, 0x007, 0x134\n#_0381F2: db $36, $34, $1C, $76 : db $00, $00 ; 0x014C\u20130x014F: 0x036, 0x034, 0x01C, 0x076\n#_0381F8: db $34, $0B, $34, $05 : db $01, $01 ; 0x0150\u20130x0153: 0x134, 0x00B, 0x134, 0x005\n#_0381FE: db $07, $0C, $79, $34 : db $11, $00 ; 0x0154\u20130x0157: 0x107, 0x10C, 0x079, 0x034\n#_038204: db $9B, $95, $DA, $00 : db $00, $01 ; 0x0158\u20130x015B: 0x09B, 0x095, 0x1DA, 0x000\n#_03820A: db $C4, $0C, $06, $7C : db $01, $10 ; 0x015C\u20130x015F: 0x1C4, 0x00C, 0x006, 0x17C\n#_038210: db $34, $AE, $7E, $07 : db $00, $01 ; 0x0160\u20130x0163: 0x034, 0x0AE, 0x17E, 0x007\n#_038216: db $D5, $95, $DA, $89 : db $00, $00 ; 0x0164\u20130x0167: 0x0D5, 0x095, 0x0DA, 0x089\n#_03821C: db $1D, $09, $07, $79 : db $01, $10 ; 0x0168\u20130x016B: 0x11D, 0x009, 0x007, 0x179\n#_038222: db $E1, $34, $9A, $9C : db $00, $00 ; 0x016C\u20130x016F: 0x0E1, 0x034, 0x09A, 0x09C\n#_038228: db $34, $C4, $DA, $D5 : db $00, $00 ; 0x0170\u20130x0173: 0x034, 0x0C4, 0x0DA, 0x0D5\n#_03822E: db $15, $F8, $34, $34 : db $00, $00 ; 0x0174\u20130x0177: 0x015, 0x0F8, 0x034, 0x034\n#_038234: db $10, $10, $11, $13 : db $11, $11 ; 0x0178\u20130x017B: 0x110, 0x110, 0x111, 0x113\n#_03823A: db $10, $13, $12, $12 : db $11, $11 ; 0x017C\u20130x017F: 0x110, 0x113, 0x112, 0x112\n#_038240: db $11, $13, $14, $15 : db $11, $11 ; 0x0180\u20130x0183: 0x111, 0x113, 0x114, 0x115\n#_038246: db $12, $14, $10, $13 : db $11, $11 ; 0x0184\u20130x0187: 0x112, 0x114, 0x110, 0x113\n#_03824C: db $1C, $1D, $17, $1D : db $11, $11 ; 0x0188\u20130x018B: 0x11C, 0x11D, 0x117, 0x11D\n#_038252: db $18, $12, $1B, $10 : db $11, $11 ; 0x018C\u20130x018F: 0x118, 0x112, 0x11B, 0x110\n#_038258: db $1A, $20, $1A, $2D : db $11, $11 ; 0x0190\u20130x0193: 0x11A, 0x120, 0x11A, 0x12D\n#_03825E: db $34, $34, $2E, $34 : db $00, $10 ; 0x0194\u20130x0197: 0x034, 0x034, 0x02E, 0x134\n#_038264: db $34, $34, $27, $32 : db $00, $11 ; 0x0198\u20130x019B: 0x034, 0x034, 0x127, 0x132\n#_03826A: db $14, $10, $12, $2D : db $11, $11 ; 0x019C\u20130x019F: 0x114, 0x110, 0x112, 0x12D\n#_038270: db $39, $34, $3A, $3C : db $11, $11 ; 0x01A0\u20130x01A3: 0x139, 0x134, 0x13A, 0x13C\n#_038276: db $3D, $3D, $3E, $1A : db $11, $11 ; 0x01A4\u20130x01A7: 0x13D, 0x13D, 0x13E, 0x11A\n#_03827C: db $4A, $40, $39, $34 : db $11, $10 ; 0x01A8\u20130x01AB: 0x14A, 0x140, 0x039, 0x134\n#_038282: db $34, $27, $32, $2B : db $01, $11 ; 0x01AC\u20130x01AF: 0x134, 0x027, 0x132, 0x12B\n#_038288: db $4D, $12, $40, $52 : db $11, $11 ; 0x01B0\u20130x01B3: 0x14D, 0x112, 0x140, 0x152\n#_03828E: db $52, $53, $55, $10 : db $11, $11 ; 0x01B4\u20130x01B7: 0x152, 0x153, 0x155, 0x110\n#_038294: db $10, $29, $2A, $1A : db $11, $11 ; 0x01B8\u20130x01BB: 0x110, 0x129, 0x12A, 0x11A\n#_03829A: db $4A, $56, $56, $55 : db $11, $11 ; 0x01BC\u20130x01BF: 0x14A, 0x156, 0x156, 0x155\n#_0382A0: db $20, $11, $16, $17 : db $11, $11 ; 0x01C0\u20130x01C3: 0x120, 0x111, 0x116, 0x117\n#_0382A6: db $58, $29, $10, $59 : db $11, $11 ; 0x01C4\u20130x01C7: 0x158, 0x129, 0x110, 0x159\n#_0382AC: db $20, $2A, $1A, $12 : db $11, $11 ; 0x01C8\u20130x01CB: 0x120, 0x12A, 0x11A, 0x112\n#_0382B2: db $25, $58, $58, $29 : db $11, $11 ; 0x01CC\u20130x01CF: 0x125, 0x158, 0x158, 0x129\n#_0382B8: db $22, $24, $34, $34 : db $11, $00 ; 0x01D0\u20130x01D3: 0x122, 0x124, 0x034, 0x034\n#_0382BE: db $34, $34, $5B, $5B : db $00, $11 ; 0x01D4\u20130x01D7: 0x034, 0x034, 0x15B, 0x15B\n#_0382C4: db $17, $61, $39, $34 : db $11, $10 ; 0x01D8\u20130x01DB: 0x117, 0x161, 0x039, 0x134\n#_0382CA: db $5C, $63, $65, $67 : db $11, $11 ; 0x01DC\u20130x01DF: 0x15C, 0x163, 0x165, 0x167\n#_0382D0: db $34, $69, $75, $5B : db $01, $11 ; 0x01E0\u20130x01E3: 0x134, 0x069, 0x175, 0x15B\n#_0382D6: db $DB, $C9, $76, $CE : db $00, $10 ; 0x01E4\u20130x01E7: 0x0DB, 0x0C9, 0x076, 0x1CE\n#_0382DC: db $6F, $AD, $71, $65 : db $10, $11 ; 0x01E8\u20130x01EB: 0x06F, 0x1AD, 0x171, 0x165\n#_0382E2: db $65, $53, $75, $4E : db $11, $11 ; 0x01EC\u20130x01EF: 0x165, 0x153, 0x175, 0x14E\n#_0382E8: db $34, $4B, $34, $DB : db $01, $00 ; 0x01F0\u20130x01F3: 0x134, 0x04B, 0x034, 0x0DB\n#_0382EE: db $C4, $7B, $9E, $7E : db $01, $01 ; 0x01F4\u20130x01F7: 0x1C4, 0x07B, 0x19E, 0x07E\n#_0382F4: db $C9, $84, $C9, $41 : db $01, $01 ; 0x01F8\u20130x01FB: 0x1C9, 0x084, 0x1C9, 0x041\n#_0382FA: db $34, $D1, $53, $C9 : db $00, $10 ; 0x01FC\u20130x01FF: 0x034, 0x0D1, 0x053, 0x1C9\n#_038300: db $C8, $DC, $53, $C8 : db $00, $10 ; 0x0200\u20130x0203: 0x0C8, 0x0DC, 0x053, 0x1C8\n#_038306: db $E3, $41, $39, $4E : db $01, $11 ; 0x0204\u20130x0207: 0x1E3, 0x041, 0x139, 0x14E\n#_03830C: db $34, $4B, $12, $87 : db $01, $11 ; 0x0208\u20130x020B: 0x134, 0x04B, 0x112, 0x187\n#_038312: db $89, $8B, $8D, $8D : db $11, $11 ; 0x020C\u20130x020F: 0x189, 0x18B, 0x18D, 0x18D\n#_038318: db $8B, $90, $92, $12 : db $11, $11 ; 0x0210\u20130x0213: 0x18B, 0x190, 0x192, 0x112\n#_03831E: db $59, $1A, $10, $11 : db $11, $11 ; 0x0214\u20130x0217: 0x159, 0x11A, 0x110, 0x111\n#_038324: db $16, $1D, $9B, $9D : db $11, $11 ; 0x0218\u20130x021B: 0x116, 0x11D, 0x19B, 0x19D\n#_03832A: db $9C, $9C, $9E, $9F : db $11, $11 ; 0x021C\u20130x021F: 0x19C, 0x19C, 0x19E, 0x19F\n#_038330: db $92, $1E, $14, $59 : db $11, $11 ; 0x0220\u20130x0223: 0x192, 0x11E, 0x114, 0x159\n#_038336: db $10, $2C, $24, $A9 : db $11, $10 ; 0x0224\u20130x0227: 0x110, 0x12C, 0x024, 0x1A9\n#_03833C: db $87, $A7, $A9, $AB : db $11, $11 ; 0x0228\u20130x022B: 0x187, 0x1A7, 0x1A9, 0x1AB\n#_038342: db $AB, $AD, $AE, $92 : db $11, $11 ; 0x022C\u20130x022F: 0x1AB, 0x1AD, 0x1AE, 0x192\n#_038348: db $34, $1E, $18, $13 : db $01, $11 ; 0x0230\u20130x0233: 0x134, 0x01E, 0x118, 0x113\n#_03834E: db $3E, $3D, $3C, $87 : db $11, $11 ; 0x0234\u20130x0237: 0x13E, 0x13D, 0x13C, 0x187\n#_038354: db $94, $96, $97, $97 : db $11, $11 ; 0x0238\u20130x023B: 0x194, 0x196, 0x197, 0x197\n#_03835A: db $98, $99, $26, $15 : db $11, $11 ; 0x023C\u20130x023F: 0x198, 0x199, 0x126, 0x115\n#_038360: db $2C, $24, $A9, $87 : db $11, $01 ; 0x0240\u20130x0243: 0x12C, 0x124, 0x1A9, 0x087\n#_038366: db $BC, $BE, $BF, $C1 : db $11, $11 ; 0x0244\u20130x0247: 0x1BC, 0x1BE, 0x1BF, 0x1C1\n#_03836C: db $BC, $BE, $92, $00 : db $11, $11 ; 0x0248\u20130x024B: 0x1BC, 0x1BE, 0x192, 0x100\n#_038372: db $C2, $12, $16, $34 : db $11, $10 ; 0x024C\u20130x024F: 0x1C2, 0x112, 0x016, 0x134\n#_038378: db $D6, $D8, $D7, $D9 : db $11, $11 ; 0x0250\u20130x0253: 0x1D6, 0x1D8, 0x1D7, 0x1D9\n#_03837E: db $DA, $D8, $DC, $9E : db $11, $10 ; 0x0254\u20130x0257: 0x1DA, 0x1D8, 0x0DC, 0x19E\n#_038384: db $C6, $C6, $C6, $A5 : db $00, $00 ; 0x0258\u20130x025B: 0x0C6, 0x0C6, 0x0C6, 0x0A5\n#_03838A: db $A5, $C6, $34, $AC : db $00, $00 ; 0x025C\u20130x025F: 0x0A5, 0x0C6, 0x034, 0x0AC\n#_038390: db $E7, $6C, $82, $C4 : db $11, $10 ; 0x0260\u20130x0263: 0x1E7, 0x16C, 0x082, 0x1C4\n#_038396: db $EA, $E7, $E3, $E3 : db $11, $00 ; 0x0264\u20130x0267: 0x1EA, 0x1E7, 0x0E3, 0x0E3\n#_03839C: db $E3, $D5, $06, $F1 : db $00, $11 ; 0x0268\u20130x026B: 0x0E3, 0x0D5, 0x106, 0x1F1\n#_0383A2: db $67, $35, $ED, $34 : db $10, $10 ; 0x026C\u20130x026F: 0x067, 0x135, 0x0ED, 0x134\n#_0383A8: db $EF, $F4, $A5, $F5 : db $11, $01 ; 0x0270\u20130x0273: 0x1EF, 0x1F4, 0x1A5, 0x0F5\n#_0383AE: db $A1, $CA, $F7, $AD : db $00, $10 ; 0x0274\u20130x0277: 0x0A1, 0x0CA, 0x0F7, 0x1AD\n#_0383B4: db $01, $E7, $53, $34 : db $21, $10 ; 0x0278\u20130x027B: 0x101, 0x2E7, 0x053, 0x134\n#_0383BA: db $A4, $34, $04, $C4 : db $00, $21 ; 0x027C\u20130x027F: 0x0A4, 0x034, 0x104, 0x2C4\n#_0383C0: db $34, $DB, $C4, $F5 : db $00, $01 ; 0x0280\u20130x0283: 0x034, 0x0DB, 0x1C4, 0x0F5\n#_0383C6: db $9E, $0C, $EE, $0D : db $02, $12 ; 0x0284\u20130x0287: 0x29E, 0x00C, 0x2EE, 0x10D\n#_0383CC: db $0E, $34, $34, $10 : db $20, $02 ; 0x0288\u20130x028B: 0x00E, 0x234, 0x234, 0x010\n#_0383D2: db $11, $34, $04, $05 : db $20, $11 ; 0x028C\u20130x028F: 0x011, 0x234, 0x104, 0x105\n#_0383D8: db $05, $FA, $13, $00 : db $11, $22 ; 0x0290\u20130x0293: 0x105, 0x1FA, 0x213, 0x200\n#_0383DE: db $3B, $FB, $14, $04 : db $11, $21 ; 0x0294\u20130x0297: 0x13B, 0x1FB, 0x114, 0x204\n#_0383E4: db $05, $34, $FF, $34 : db $10, $10 ; 0x0298\u20130x029B: 0x005, 0x134, 0x0FF, 0x134\n#_0383EA: db $0F, $34, $A3, $C4 : db $20, $00 ; 0x029C\u20130x029F: 0x00F, 0x234, 0x0A3, 0x0C4\n#_0383F0: db $D2, $34, $4E, $FD : db $00, $11 ; 0x02A0\u20130x02A3: 0x0D2, 0x034, 0x14E, 0x1FD\n#_0383F6: db $16, $9F, $F7, $A7 : db $20, $10 ; 0x02A4\u20130x02A7: 0x016, 0x29F, 0x0F7, 0x1A7\n#_0383FC: db $C4, $34, $4F, $41 : db $00, $11 ; 0x02A8\u20130x02AB: 0x0C4, 0x034, 0x14F, 0x141\n#_038402: db $CE, $14, $10, $1F : db $01, $11 ; 0x02AC\u20130x02AF: 0x1CE, 0x014, 0x110, 0x11F\n#_038408: db $12, $21, $10, $13 : db $11, $11 ; 0x02B0\u20130x02B3: 0x112, 0x121, 0x110, 0x113\n#_03840E: db $12, $10, $11, $12 : db $11, $11 ; 0x02B4\u20130x02B7: 0x112, 0x110, 0x111, 0x112\n#_038414: db $20, $19, $12, $12 : db $11, $11 ; 0x02B8\u20130x02BB: 0x120, 0x119, 0x112, 0x112\n#_03841A: db $12, $12, $4C, $10 : db $11, $11 ; 0x02BC\u20130x02BF: 0x112, 0x112, 0x14C, 0x110\n#_038420: db $1F, $2B, $2A, $17 : db $11, $11 ; 0x02C0\u20130x02C3: 0x11F, 0x12B, 0x12A, 0x117\n#_038426: db $12, $12, $10, $2A : db $11, $11 ; 0x02C4\u20130x02C7: 0x112, 0x112, 0x110, 0x12A\n#_03842C: db $12, $12, $10, $10 : db $11, $11 ; 0x02C8\u20130x02CB: 0x112, 0x112, 0x110, 0x110\n#_038432: db $C2, $18, $18, $1B : db $12, $11 ; 0x02CC\u20130x02CF: 0x2C2, 0x118, 0x118, 0x11B\n#_038438: db $2B, $65, $58, $18 : db $11, $12 ; 0x02D0\u20130x02D3: 0x12B, 0x165, 0x258, 0x118\n#_03843E: db $34, $26, $28, $12 : db $01, $11 ; 0x02D4\u20130x02D7: 0x134, 0x026, 0x128, 0x112\n#_038444: db $10, $24, $34, $C6 : db $11, $00 ; 0x02D8\u20130x02DB: 0x110, 0x124, 0x034, 0x0C6\n#_03844A: db $1C, $6A, $34, $35 : db $21, $01 ; 0x02DC\u20130x02DF: 0x11C, 0x26A, 0x134, 0x035\n#_038450: db $36, $37, $38, $38 : db $11, $11 ; 0x02E0\u20130x02E3: 0x136, 0x137, 0x138, 0x138\n#_038456: db $37, $36, $34, $66 : db $11, $01 ; 0x02E4\u20130x02E7: 0x137, 0x136, 0x134, 0x066\n#_03845C: db $6A, $1B, $35, $45 : db $12, $11 ; 0x02E8\u20130x02EB: 0x26A, 0x11B, 0x135, 0x145\n#_038462: db $47, $48, $48, $B2 : db $11, $11 ; 0x02EC\u20130x02EF: 0x147, 0x148, 0x148, 0x1B2\n#_038468: db $B4, $1B, $1C, $6A : db $12, $21 ; 0x02F0\u20130x02F3: 0x2B4, 0x11B, 0x11C, 0x26A\n#_03846E: db $4B, $51, $2C, $24 : db $11, $11 ; 0x02F4\u20130x02F7: 0x14B, 0x151, 0x12C, 0x124\n#_038474: db $5C, $5B, $50, $C9 : db $11, $10 ; 0x02F8\u20130x02FB: 0x15C, 0x15B, 0x050, 0x1C9\n#_03847A: db $12, $12, $19, $49 : db $11, $11 ; 0x02FC\u20130x02FF: 0x112, 0x112, 0x119, 0x149\n#_038480: db $C8, $41, $CE, $5B : db $01, $01 ; 0x0300\u20130x0303: 0x1C8, 0x041, 0x1CE, 0x05B\n#_038486: db $54, $57, $12, $2B : db $11, $11 ; 0x0304\u20130x0307: 0x154, 0x157, 0x112, 0x12B\n#_03848C: db $4D, $C8, $5B, $32 : db $10, $11 ; 0x0308\u20130x030B: 0x04D, 0x1C8, 0x15B, 0x132\n#_038492: db $12, $2A, $4D, $49 : db $11, $11 ; 0x030C\u20130x030F: 0x112, 0x12A, 0x14D, 0x149\n#_038498: db $20, $2B, $11, $1C : db $11, $12 ; 0x0310\u20130x0313: 0x120, 0x12B, 0x211, 0x11C\n#_03849E: db $71, $58, $28, $12 : db $11, $11 ; 0x0314\u20130x0317: 0x171, 0x158, 0x128, 0x112\n#_0384A4: db $12, $10, $10, $2B : db $11, $11 ; 0x0318\u20130x031B: 0x112, 0x110, 0x110, 0x12B\n#_0384AA: db $10, $1A, $12, $D5 : db $11, $10 ; 0x031C\u20130x031F: 0x110, 0x11A, 0x012, 0x1D5\n#_0384B0: db $C6, $C6, $12, $13 : db $00, $11 ; 0x0320\u20130x0323: 0x0C6, 0x0C6, 0x112, 0x113\n#_0384B6: db $13, $13, $11, $20 : db $11, $11 ; 0x0324\u20130x0327: 0x113, 0x113, 0x111, 0x120\n#_0384BC: db $2B, $10, $12, $1D : db $11, $11 ; 0x0328\u20130x032B: 0x12B, 0x110, 0x112, 0x11D\n#_0384C2: db $12, $13, $12, $1A : db $11, $11 ; 0x032C\u20130x032F: 0x112, 0x113, 0x112, 0x11A\n#_0384C8: db $12, $42, $27, $32 : db $11, $11 ; 0x0330\u20130x0333: 0x112, 0x142, 0x127, 0x132\n#_0384CE: db $23, $12, $1F, $59 : db $11, $11 ; 0x0334\u20130x0337: 0x123, 0x112, 0x11F, 0x159\n#_0384D4: db $5A, $33, $3F, $41 : db $11, $11 ; 0x0338\u20130x033B: 0x15A, 0x133, 0x13F, 0x141\n#_0384DA: db $32, $2D, $14, $4D : db $11, $11 ; 0x033C\u20130x033F: 0x132, 0x12D, 0x114, 0x14D\n#_0384E0: db $C8, $55, $1C, $C2 : db $01, $11 ; 0x0340\u20130x0343: 0x1C8, 0x055, 0x11C, 0x1C2\n#_0384E6: db $34, $18, $4C, $49 : db $01, $11 ; 0x0344\u20130x0347: 0x134, 0x018, 0x14C, 0x149\n#_0384EC: db $57, $1C, $66, $D5 : db $11, $11 ; 0x0348\u20130x034B: 0x157, 0x11C, 0x166, 0x1D5\n#_0384F2: db $2E, $26, $4C, $24 : db $11, $11 ; 0x034C\u20130x034F: 0x12E, 0x126, 0x14C, 0x124\n#_0384F8: db $34, $CF, $D2, $14 : db $00, $01 ; 0x0350\u20130x0353: 0x034, 0x0CF, 0x1D2, 0x014\n#_0384FE: db $2C, $1C, $34, $C8 : db $11, $00 ; 0x0354\u20130x0357: 0x12C, 0x11C, 0x034, 0x0C8\n#_038504: db $DC, $DD, $C8, $5E : db $00, $01 ; 0x0358\u20130x035B: 0x0DC, 0x0DD, 0x1C8, 0x05E\n#_03850A: db $5E, $60, $1D, $26 : db $11, $12 ; 0x035C\u20130x035F: 0x15E, 0x160, 0x21D, 0x126\n#_038510: db $E3, $E5, $C8, $C6 : db $00, $00 ; 0x0360\u20130x0363: 0x0E3, 0x0E5, 0x0C8, 0x0C6\n#_038516: db $4E, $C6, $20, $50 : db $10, $21 ; 0x0364\u20130x0367: 0x04E, 0x1C6, 0x120, 0x250\n#_03851C: db $C9, $C9, $C6, $83 : db $00, $01 ; 0x0368\u20130x036B: 0x0C9, 0x0C9, 0x1C6, 0x083\n#_038522: db $78, $78, $C9, $E0 : db $11, $00 ; 0x036C\u20130x036F: 0x178, 0x178, 0x0C9, 0x0E0\n#_038528: db $C9, $24, $2A, $C9 : db $01, $20 ; 0x0370\u20130x0373: 0x1C9, 0x024, 0x02A, 0x2C9\n#_03852E: db $1C, $2D, $2E, $2F : db $22, $22 ; 0x0374\u20130x0377: 0x21C, 0x22D, 0x22E, 0x22F\n#_038534: db $C9, $E0, $EC, $C9 : db $00, $10 ; 0x0378\u20130x037B: 0x0C9, 0x0E0, 0x0EC, 0x1C9\n#_03853A: db $12, $59, $2B, $1F : db $11, $11 ; 0x037C\u20130x037F: 0x112, 0x159, 0x12B, 0x11F\n#_038540: db $1A, $12, $1B, $25 : db $11, $11 ; 0x0380\u20130x0383: 0x11A, 0x112, 0x11B, 0x125\n#_038546: db $34, $13, $34, $34 : db $01, $00 ; 0x0384\u20130x0387: 0x134, 0x013, 0x034, 0x034\n#_03854C: db $34, $34, $27, $29 : db $00, $11 ; 0x0388\u20130x038B: 0x034, 0x034, 0x127, 0x129\n#_038552: db $D5, $1A, $5C, $32 : db $12, $12 ; 0x038C\u20130x038F: 0x2D5, 0x11A, 0x25C, 0x132\n#_038558: db $33, $33, $67, $34 : db $22, $10 ; 0x0390\u20130x0393: 0x233, 0x233, 0x067, 0x134\n#_03855E: db $C6, $5B, $34, $32 : db $01, $02 ; 0x0394\u20130x0397: 0x1C6, 0x05B, 0x234, 0x032\n#_038564: db $36, $67, $4F, $55 : db $21, $11 ; 0x0398\u20130x039B: 0x136, 0x267, 0x14F, 0x155\n#_03856A: db $C9, $78, $34, $2F : db $01, $01 ; 0x039C\u20130x039F: 0x1C9, 0x078, 0x134, 0x02F\n#_038570: db $37, $34, $6A, $34 : db $20, $10 ; 0x03A0\u20130x03A3: 0x037, 0x234, 0x06A, 0x134\n#_038576: db $27, $32, $4D, $C9 : db $11, $10 ; 0x03A4\u20130x03A7: 0x127, 0x132, 0x04D, 0x1C9\n#_03857C: db $86, $37, $34, $34 : db $12, $00 ; 0x03A8\u20130x03AB: 0x286, 0x137, 0x034, 0x034\n#_038582: db $6A, $13, $C9, $31 : db $11, $02 ; 0x03AC\u20130x03AF: 0x16A, 0x113, 0x2C9, 0x031\n#_038588: db $34, $C8, $6D, $34 : db $10, $10 ; 0x03B0\u20130x03B3: 0x034, 0x1C8, 0x06D, 0x134\n#_03858E: db $EB, $34, $39, $26 : db $10, $21 ; 0x03B4\u20130x03B7: 0x0EB, 0x134, 0x139, 0x226\n#_038594: db $57, $41, $C8, $C9 : db $11, $00 ; 0x03B8\u20130x03BB: 0x157, 0x141, 0x0C8, 0x0C9\n#_03859A: db $3A, $2F, $3B, $34 : db $21, $20 ; 0x03BC\u20130x03BF: 0x13A, 0x22F, 0x03B, 0x234\n#_0385A0: db $1A, $12, $4E, $2E : db $11, $11 ; 0x03C0\u20130x03C3: 0x11A, 0x112, 0x14E, 0x12E\n#_0385A6: db $EE, $10, $33, $49 : db $11, $11 ; 0x03C4\u20130x03C7: 0x1EE, 0x110, 0x133, 0x149\n#_0385AC: db $C8, $3F, $3F, $4B : db $02, $21 ; 0x03C8\u20130x03CB: 0x2C8, 0x03F, 0x13F, 0x24B\n#_0385B2: db $31, $4C, $10, $57 : db $11, $11 ; 0x03CC\u20130x03CF: 0x131, 0x14C, 0x110, 0x157\n#_0385B8: db $40, $50, $54, $59 : db $11, $11 ; 0x03D0\u20130x03D3: 0x140, 0x150, 0x154, 0x159\n#_0385BE: db $59, $20, $54, $17 : db $11, $10 ; 0x03D4\u20130x03D7: 0x159, 0x120, 0x054, 0x117\n#_0385C4: db $2F, $71, $3F, $28 : db $00, $00 ; 0x03D8\u20130x03DB: 0x02F, 0x071, 0x03F, 0x028\n#_0385CA: db $89, $03, $33, $9A : db $00, $00 ; 0x03DC\u20130x03DF: 0x089, 0x003, 0x033, 0x09A\n#_0385D0: db $6E, $34, $64, $2B : db $00, $00 ; 0x03E0\u20130x03E3: 0x06E, 0x034, 0x064, 0x02B\n#_0385D6: db $17, $34, $34, $64 : db $00, $00 ; 0x03E4\u20130x03E7: 0x017, 0x034, 0x034, 0x064\n#_0385DC: db $28, $03, $81, $3E : db $00, $00 ; 0x03E8\u20130x03EB: 0x028, 0x003, 0x081, 0x03E\n#_0385E2: db $69, $03, $17, $4C : db $00, $00 ; 0x03EC\u20130x03EF: 0x069, 0x003, 0x017, 0x04C\n#_0385E8: db $07, $32, $1A, $04 : db $00, $00 ; 0x03F0\u20130x03F3: 0x007, 0x032, 0x01A, 0x004\n#_0385EE: db $32, $30, $00, $81 : db $00, $00 ; 0x03F4\u20130x03F7: 0x032, 0x030, 0x000, 0x081\n#_0385F4: db $66, $68, $67, $69 : db $00, $00 ; 0x03F8\u20130x03FB: 0x066, 0x068, 0x067, 0x069\n#_0385FA: db $04, $04, $4C, $34 : db $00, $00 ; 0x03FC\u20130x03FF: 0x004, 0x004, 0x04C, 0x034\n#_038600: db $6C, $15, $18, $36 : db $00, $00 ; 0x0400\u20130x0403: 0x06C, 0x015, 0x018, 0x036\n#_038606: db $34, $7F, $4B, $04 : db $00, $00 ; 0x0404\u20130x0407: 0x034, 0x07F, 0x04B, 0x004\n#_03860C: db $4B, $2E, $4D, $07 : db $00, $00 ; 0x0408\u20130x040B: 0x04B, 0x02E, 0x04D, 0x007\n#_038612: db $78, $3B, $70, $04 : db $00, $00 ; 0x040C\u20130x040F: 0x078, 0x03B, 0x070, 0x004\n#_038618: db $5C, $39, $64, $20 : db $00, $00 ; 0x0410\u20130x0413: 0x05C, 0x039, 0x064, 0x020\n#_03861E: db $04, $15, $35, $04 : db $00, $00 ; 0x0414\u20130x0417: 0x004, 0x015, 0x035, 0x004\n#_038624: db $3F, $27, $7C, $34 : db $00, $00 ; 0x0418\u20130x041B: 0x03F, 0x027, 0x07C, 0x034\n#_03862A: db $4B, $65, $47, $36 : db $00, $00 ; 0x041C\u20130x041F: 0x04B, 0x065, 0x047, 0x036\n#_038630: db $6C, $4B, $B0, $54 : db $00, $00 ; 0x0420\u20130x0423: 0x06C, 0x04B, 0x0B0, 0x054\n#_038636: db $34, $34, $1D, $34 : db $00, $00 ; 0x0424\u20130x0427: 0x034, 0x034, 0x01D, 0x034\n#_03863C: db $36, $9C, $42, $3F : db $00, $20 ; 0x0428\u20130x042B: 0x036, 0x09C, 0x042, 0x23F\n#_038642: db $8D, $92, $46, $04 : db $00, $20 ; 0x042C\u20130x042F: 0x08D, 0x092, 0x046, 0x204\n#_038648: db $9E, $34, $34, $34 : db $00, $00 ; 0x0430\u20130x0433: 0x09E, 0x034, 0x034, 0x034\n#_03864E: db $04, $05, $4F, $2D : db $00, $00 ; 0x0434\u20130x0437: 0x004, 0x005, 0x04F, 0x02D\n#_038654: db $1D, $47, $40, $A9 : db $00, $00 ; 0x0438\u20130x043B: 0x01D, 0x047, 0x040, 0x0A9\n#_03865A: db $34, $11, $13, $34 : db $00, $00 ; 0x043C\u20130x043F: 0x034, 0x011, 0x013, 0x034\n#_038660: db $7C, $0F, $13, $33 : db $10, $00 ; 0x0440\u20130x0443: 0x07C, 0x10F, 0x013, 0x033\n#_038666: db $7C, $AE, $0B, $0A : db $10, $00 ; 0x0444\u20130x0447: 0x07C, 0x1AE, 0x00B, 0x00A\n#_03866C: db $B1, $7E, $64, $64 : db $00, $00 ; 0x0448\u20130x044B: 0x0B1, 0x07E, 0x064, 0x064\n#_038672: db $24, $0E, $1D, $1C : db $00, $00 ; 0x044C\u20130x044F: 0x024, 0x00E, 0x01D, 0x01C\n#_038678: db $1E, $1D, $2E, $4B : db $00, $02 ; 0x0450\u20130x0453: 0x01E, 0x01D, 0x22E, 0x04B\n#_03867E: db $4D, $47, $13, $5B : db $20, $00 ; 0x0454\u20130x0457: 0x04D, 0x247, 0x013, 0x05B\n#_038684: db $5D, $7A, $34, $34 : db $00, $00 ; 0x0458\u20130x045B: 0x05D, 0x07A, 0x034, 0x034\n#_03868A: db $04, $3A, $64, $24 : db $00, $00 ; 0x045C\u20130x045F: 0x004, 0x03A, 0x064, 0x024\n#_038690: db $0E, $34, $34, $30 : db $00, $00 ; 0x0460\u20130x0463: 0x00E, 0x034, 0x034, 0x030\n#_038696: db $78, $4F, $3A, $96 : db $02, $00 ; 0x0464\u20130x0467: 0x278, 0x04F, 0x03A, 0x096\n#_03869C: db $3F, $40, $86, $28 : db $00, $00 ; 0x0468\u20130x046B: 0x03F, 0x040, 0x086, 0x028\n#_0386A2: db $27, $03, $47, $40 : db $00, $00 ; 0x046C\u20130x046F: 0x027, 0x003, 0x047, 0x040\n#_0386A8: db $40, $00, $34, $A8 : db $00, $00 ; 0x0470\u20130x0473: 0x040, 0x000, 0x034, 0x0A8\n#_0386AE: db $C9, $22, $52, $C9 : db $02, $20 ; 0x0474\u20130x0477: 0x2C9, 0x022, 0x052, 0x2C9\n#_0386B4: db $DF, $34, $C8, $C9 : db $00, $00 ; 0x0478\u20130x047B: 0x0DF, 0x034, 0x0C8, 0x0C9\n#_0386BA: db $C8, $75, $75, $6B : db $01, $11 ; 0x047C\u20130x047F: 0x1C8, 0x075, 0x175, 0x16B\n#_0386C0: db $6C, $34, $DC, $51 : db $10, $02 ; 0x0480\u20130x0483: 0x06C, 0x134, 0x2DC, 0x051\n#_0386C6: db $76, $34, $EB, $78 : db $10, $11 ; 0x0484\u20130x0487: 0x076, 0x134, 0x1EB, 0x178\n#_0386CC: db $78, $E3, $C4, $54 : db $10, $02 ; 0x0488\u20130x048B: 0x078, 0x1E3, 0x2C4, 0x054\n#_0386D2: db $5B, $34, $34, $27 : db $10, $01 ; 0x048C\u20130x048F: 0x05B, 0x134, 0x134, 0x027\n#_0386D8: db $4E, $CE, $CF, $42 : db $10, $01 ; 0x0490\u20130x0493: 0x04E, 0x1CE, 0x1CF, 0x042\n#_0386DE: db $4B, $50, $83, $D4 : db $11, $10 ; 0x0494\u20130x0497: 0x14B, 0x150, 0x083, 0x1D4\n#_0386E4: db $78, $34, $86, $34 : db $10, $10 ; 0x0498\u20130x049B: 0x078, 0x134, 0x086, 0x134\n#_0386EA: db $78, $21, $52, $C8 : db $12, $10 ; 0x049C\u20130x049F: 0x278, 0x121, 0x052, 0x1C8\n#_0386F0: db $55, $C9, $86, $A3 : db $20, $10 ; 0x04A0\u20130x04A3: 0x055, 0x2C9, 0x086, 0x1A3\n#_0386F6: db $C4, $7C, $57, $5C : db $11, $22 ; 0x04A4\u20130x04A7: 0x1C4, 0x17C, 0x257, 0x25C\n#_0386FC: db $5D, $5D, $61, $34 : db $22, $10 ; 0x04A8\u20130x04AB: 0x25D, 0x25D, 0x061, 0x134\n#_038702: db $60, $62, $4B, $5C : db $22, $12 ; 0x04AC\u20130x04AF: 0x260, 0x262, 0x24B, 0x15C\n#_038708: db $68, $6A, $6C, $69 : db $22, $22 ; 0x04B0\u20130x04B3: 0x268, 0x26A, 0x26C, 0x269\n#_03870E: db $65, $C9, $4F, $50 : db $20, $11 ; 0x04B4\u20130x04B7: 0x065, 0x2C9, 0x14F, 0x150\n#_038714: db $71, $34, $34, $E7 : db $20, $01 ; 0x04B8\u20130x04BB: 0x071, 0x234, 0x134, 0x0E7\n#_03871A: db $75, $53, $E7, $34 : db $21, $10 ; 0x04BC\u20130x04BF: 0x175, 0x253, 0x0E7, 0x134\n#_038720: db $76, $34, $34, $4B : db $20, $01 ; 0x04C0\u20130x04C3: 0x076, 0x234, 0x134, 0x04B\n#_038726: db $0F, $0F, $34, $C9 : db $22, $00 ; 0x04C4\u20130x04C7: 0x20F, 0x20F, 0x034, 0x0C9\n#_03872C: db $6D, $6C, $6C, $E3 : db $11, $10 ; 0x04C8\u20130x04CB: 0x16D, 0x16C, 0x06C, 0x1E3\n#_038732: db $DC, $4F, $C9, $5D : db $01, $02 ; 0x04CC\u20130x04CF: 0x1DC, 0x04F, 0x2C9, 0x05D\n#_038738: db $6D, $78, $5E, $64 : db $22, $22 ; 0x04D0\u20130x04D3: 0x26D, 0x278, 0x25E, 0x264\n#_03873E: db $5E, $78, $7C, $7E : db $22, $22 ; 0x04D4\u20130x04D7: 0x25E, 0x278, 0x27C, 0x27E\n#_038744: db $23, $78, $79, $7B : db $22, $22 ; 0x04D8\u20130x04DB: 0x223, 0x278, 0x279, 0x27B\n#_03874A: db $82, $C4, $84, $23 : db $20, $22 ; 0x04DC\u20130x04DF: 0x082, 0x2C4, 0x284, 0x223\n#_038750: db $7F, $80, $82, $1C : db $22, $22 ; 0x04E0\u20130x04E3: 0x27F, 0x280, 0x282, 0x21C\n#_038756: db $78, $78, $6E, $5E : db $22, $22 ; 0x04E4\u20130x04E7: 0x278, 0x278, 0x26E, 0x25E\n#_03875C: db $7F, $78, $06, $66 : db $12, $11 ; 0x04E8\u20130x04EB: 0x27F, 0x178, 0x106, 0x166\n#_038762: db $6E, $23, $8E, $78 : db $22, $22 ; 0x04EC\u20130x04EF: 0x26E, 0x223, 0x28E, 0x278\n#_038768: db $8C, $D0, $83, $81 : db $20, $12 ; 0x04F0\u20130x04F3: 0x08C, 0x2D0, 0x283, 0x181\n#_03876E: db $6E, $5E, $7F, $1E : db $22, $11 ; 0x04F4\u20130x04F7: 0x26E, 0x25E, 0x17F, 0x11E\n#_038774: db $91, $78, $65, $63 : db $22, $22 ; 0x04F8\u20130x04FB: 0x291, 0x278, 0x265, 0x263\n#_03877A: db $78, $78, $63, $DB : db $22, $10 ; 0x04FC\u20130x04FF: 0x278, 0x278, 0x063, 0x1DB\n#_038780: db $30, $23, $6A, $78 : db $12, $22 ; 0x0500\u20130x0503: 0x230, 0x123, 0x26A, 0x278\n#_038786: db $78, $78, $78, $24 : db $22, $21 ; 0x0504\u20130x0507: 0x278, 0x278, 0x178, 0x224\n#_03878C: db $34, $34, $97, $98 : db $00, $22 ; 0x0508\u20130x050B: 0x034, 0x034, 0x297, 0x298\n#_038792: db $99, $9A, $9B, $98 : db $22, $22 ; 0x050C\u20130x050F: 0x299, 0x29A, 0x29B, 0x298\n#_038798: db $08, $34, $30, $3C : db $10, $11 ; 0x0510\u20130x0513: 0x008, 0x134, 0x130, 0x13C\n#_03879E: db $3C, $3C, $9F, $A0 : db $11, $22 ; 0x0514\u20130x0517: 0x13C, 0x13C, 0x29F, 0x2A0\n#_0387A4: db $A1, $2F, $34, $78 : db $21, $02 ; 0x0518\u20130x051B: 0x1A1, 0x22F, 0x234, 0x078\n#_0387AA: db $78, $7A, $78, $24 : db $22, $21 ; 0x051C\u20130x051F: 0x278, 0x27A, 0x178, 0x224\n#_0387B0: db $8F, $78, $64, $78 : db $22, $22 ; 0x0520\u20130x0523: 0x28F, 0x278, 0x264, 0x278\n#_0387B6: db $50, $5C, $A4, $78 : db $12, $22 ; 0x0524\u20130x0527: 0x250, 0x15C, 0x2A4, 0x278\n#_0387BC: db $78, $6C, $89, $63 : db $22, $22 ; 0x0528\u20130x052B: 0x278, 0x26C, 0x289, 0x263\n#_0387C2: db $64, $80, $78, $8A : db $22, $22 ; 0x052C\u20130x052F: 0x264, 0x280, 0x278, 0x28A\n#_0387C8: db $66, $A6, $78, $78 : db $12, $22 ; 0x0530\u20130x0533: 0x266, 0x1A6, 0x278, 0x278\n#_0387CE: db $78, $78, $78, $34 : db $22, $22 ; 0x0534\u20130x0537: 0x278, 0x278, 0x278, 0x234\n#_0387D4: db $78, $84, $78, $7D : db $22, $22 ; 0x0538\u20130x053B: 0x278, 0x284, 0x278, 0x27D\n#_0387DA: db $78, $78, $78, $78 : db $22, $22 ; 0x053C\u20130x053F: 0x278, 0x278, 0x278, 0x278\n#_0387E0: db $83, $EB, $6B, $89 : db $21, $22 ; 0x0540\u20130x0543: 0x183, 0x2EB, 0x26B, 0x289\n#_0387E6: db $63, $78, $65, $C9 : db $22, $20 ; 0x0544\u20130x0547: 0x263, 0x278, 0x065, 0x2C9\n#_0387EC: db $2E, $2E, $34, $A8 : db $22, $02 ; 0x0548\u20130x054B: 0x22E, 0x22E, 0x234, 0x0A8\n#_0387F2: db $C9, $E0, $DF, $C9 : db $00, $00 ; 0x054C\u20130x054F: 0x0C9, 0x0E0, 0x0DF, 0x0C9\n#_0387F8: db $E3, $34, $02, $AC : db $00, $20 ; 0x0550\u20130x0553: 0x0E3, 0x034, 0x002, 0x2AC\n#_0387FE: db $DB, $AB, $34, $6D : db $02, $01 ; 0x0554\u20130x0557: 0x2DB, 0x0AB, 0x134, 0x06D\n#_038804: db $34, $AC, $AF, $C2 : db $02, $21 ; 0x0558\u20130x055B: 0x234, 0x0AC, 0x1AF, 0x2C2\n#_03880A: db $C2, $34, $76, $34 : db $10, $10 ; 0x055C\u20130x055F: 0x0C2, 0x134, 0x076, 0x134\n#_038810: db $34, $AD, $61, $34 : db $02, $10 ; 0x0560\u20130x0563: 0x234, 0x0AD, 0x061, 0x134\n#_038816: db $C4, $C5, $86, $CF : db $00, $10 ; 0x0564\u20130x0567: 0x0C4, 0x0C5, 0x086, 0x1CF\n#_03881C: db $5E, $41, $34, $78 : db $21, $02 ; 0x0568\u20130x056B: 0x15E, 0x241, 0x234, 0x078\n#_038822: db $78, $82, $C9, $64 : db $22, $02 ; 0x056C\u20130x056F: 0x278, 0x282, 0x2C9, 0x064\n#_038828: db $92, $90, $90, $34 : db $22, $20 ; 0x0570\u20130x0573: 0x292, 0x290, 0x090, 0x234\n#_03882E: db $B5, $64, $64, $34 : db $22, $20 ; 0x0574\u20130x0577: 0x2B5, 0x264, 0x064, 0x234\n#_038834: db $34, $4B, $34, $23 : db $01, $02 ; 0x0578\u20130x057B: 0x134, 0x04B, 0x234, 0x023\n#_03883A: db $78, $78, $82, $4E : db $22, $21 ; 0x057C\u20130x057F: 0x278, 0x278, 0x182, 0x24E\n#_038840: db $63, $8B, $63, $63 : db $22, $22 ; 0x0580\u20130x0583: 0x263, 0x28B, 0x263, 0x263\n#_038846: db $83, $1C, $81, $5B : db $22, $21 ; 0x0584\u20130x0587: 0x283, 0x21C, 0x181, 0x25B\n#_03884C: db $5B, $B7, $B8, $B7 : db $12, $22 ; 0x0588\u20130x058B: 0x25B, 0x1B7, 0x2B8, 0x2B7\n#_038852: db $C7, $1C, $5B, $BA : db $02, $12 ; 0x058C\u20130x058F: 0x2C7, 0x01C, 0x25B, 0x1BA\n#_038858: db $BC, $BC, $78, $B6 : db $22, $12 ; 0x0590\u20130x0593: 0x2BC, 0x2BC, 0x278, 0x1B6\n#_03885E: db $C4, $B9, $75, $C5 : db $22, $12 ; 0x0594\u20130x0597: 0x2C4, 0x2B9, 0x275, 0x1C5\n#_038864: db $C7, $C9, $31, $CD : db $22, $12 ; 0x0598\u20130x059B: 0x2C7, 0x2C9, 0x231, 0x1CD\n#_03886A: db $CF, $53, $D1, $D3 : db $21, $22 ; 0x059C\u20130x059F: 0x1CF, 0x253, 0x2D1, 0x2D3\n#_038870: db $05, $06, $78, $D0 : db $11, $12 ; 0x05A0\u20130x05A3: 0x105, 0x106, 0x278, 0x1D0\n#_038876: db $D6, $D4, $C8, $D1 : db $22, $02 ; 0x05A4\u20130x05A7: 0x2D6, 0x2D4, 0x2C8, 0x0D1\n#_03887C: db $C7, $D3, $D2, $5B : db $22, $01 ; 0x05A8\u20130x05AB: 0x2C7, 0x2D3, 0x1D2, 0x05B\n#_038882: db $D0, $D9, $D7, $D4 : db $22, $22 ; 0x05AC\u20130x05AF: 0x2D0, 0x2D9, 0x2D7, 0x2D4\n#_038888: db $56, $D1, $DA, $DB : db $12, $22 ; 0x05B0\u20130x05B3: 0x256, 0x1D1, 0x2DA, 0x2DB\n#_03888E: db $C9, $C8, $C5, $C7 : db $20, $22 ; 0x05B4\u20130x05B7: 0x0C9, 0x2C8, 0x2C5, 0x2C7\n#_038894: db $D7, $D9, $C8, $5C : db $22, $21 ; 0x05B8\u20130x05BB: 0x2D7, 0x2D9, 0x1C8, 0x25C\n#_03889A: db $5E, $74, $C4, $C5 : db $11, $02 ; 0x05BC\u20130x05BF: 0x15E, 0x174, 0x2C4, 0x0C5\n#_0388A0: db $D2, $C7, $C8, $0F : db $22, $22 ; 0x05C0\u20130x05C3: 0x2D2, 0x2C7, 0x2C8, 0x20F\n#_0388A6: db $CE, $E6, $E7, $E9 : db $02, $21 ; 0x05C4\u20130x05C7: 0x2CE, 0x0E6, 0x1E7, 0x2E9\n#_0388AC: db $C8, $C5, $DF, $EF : db $02, $22 ; 0x05C8\u20130x05CB: 0x2C8, 0x0C5, 0x2DF, 0x2EF\n#_0388B2: db $C7, $C7, $E9, $34 : db $22, $20 ; 0x05CC\u20130x05CF: 0x2C7, 0x2C7, 0x0E9, 0x234\n#_0388B8: db $D4, $F2, $F4, $E6 : db $02, $22 ; 0x05D0\u20130x05D3: 0x2D4, 0x0F2, 0x2F4, 0x2E6\n#_0388BE: db $C8, $3A, $58, $F7 : db $02, $12 ; 0x05D4\u20130x05D7: 0x2C8, 0x03A, 0x258, 0x1F7\n#_0388C4: db $E4, $CD, $F9, $D6 : db $22, $22 ; 0x05D8\u20130x05DB: 0x2E4, 0x2CD, 0x2F9, 0x2D6\n#_0388CA: db $CD, $E9, $84, $F1 : db $22, $12 ; 0x05DC\u20130x05DF: 0x2CD, 0x2E9, 0x284, 0x1F1\n#_0388D0: db $E6, $C8, $C4, $F7 : db $20, $02 ; 0x05E0\u20130x05E3: 0x0E6, 0x2C8, 0x2C4, 0x0F7\n#_0388D6: db $CD, $CD, $CD, $C6 : db $22, $22 ; 0x05E4\u20130x05E7: 0x2CD, 0x2CD, 0x2CD, 0x2C6\n#_0388DC: db $DB, $34, $34, $CE : db $20, $00 ; 0x05E8\u20130x05EB: 0x0DB, 0x234, 0x034, 0x0CE\n#_0388E2: db $E6, $E6, $C4, $31 : db $22, $01 ; 0x05EC\u20130x05EF: 0x2E6, 0x2E6, 0x1C4, 0x031\n#_0388E8: db $E4, $CD, $FF, $63 : db $22, $21 ; 0x05F0\u20130x05F3: 0x2E4, 0x2CD, 0x1FF, 0x263\n#_0388EE: db $E1, $06, $73, $74 : db $23, $11 ; 0x05F4\u20130x05F7: 0x3E1, 0x206, 0x173, 0x174\n#_0388F4: db $02, $EC, $31, $0E : db $32, $13 ; 0x05F8\u20130x05FB: 0x202, 0x3EC, 0x331, 0x10E\n#_0388FA: db $10, $2D, $07, $E6 : db $31, $32 ; 0x05FC\u20130x05FF: 0x110, 0x32D, 0x207, 0x3E6\n#_038900: db $E7, $E6, $B7, $B7 : db $22, $22 ; 0x0600\u20130x0603: 0x2E7, 0x2E6, 0x2B7, 0x2B7\n#_038906: db $C4, $16, $E6, $18 : db $03, $23 ; 0x0604\u20130x0607: 0x3C4, 0x016, 0x3E6, 0x218\n#_03890C: db $1A, $EC, $1B, $F5 : db $32, $32 ; 0x0608\u20130x060B: 0x21A, 0x3EC, 0x21B, 0x3F5\n#_038912: db $5B, $C5, $CE, $61 : db $12, $21 ; 0x060C\u20130x060F: 0x25B, 0x1C5, 0x1CE, 0x261\n#_038918: db $22, $C5, $66, $E6 : db $30, $12 ; 0x0610\u20130x0613: 0x022, 0x3C5, 0x266, 0x1E6\n#_03891E: db $C8, $F5, $C4, $78 : db $02, $01 ; 0x0614\u20130x0617: 0x2C8, 0x0F5, 0x1C4, 0x078\n#_038924: db $C5, $CD, $D5, $EC : db $22, $21 ; 0x0618\u20130x061B: 0x2C5, 0x2CD, 0x1D5, 0x2EC\n#_03892A: db $C6, $1A, $3A, $D0 : db $03, $20 ; 0x061C\u20130x061F: 0x3C6, 0x01A, 0x03A, 0x2D0\n#_038930: db $D0, $FF, $27, $F8 : db $22, $32 ; 0x0620\u20130x0623: 0x2D0, 0x2FF, 0x227, 0x3F8\n#_038936: db $29, $FE, $02, $2C : db $32, $03 ; 0x0624\u20130x0627: 0x229, 0x3FE, 0x302, 0x02C\n#_03893C: db $17, $32, $D9, $79 : db $03, $01 ; 0x0628\u20130x062B: 0x317, 0x032, 0x1D9, 0x079\n#_038942: db $34, $AC, $36, $D9 : db $00, $00 ; 0x062C\u20130x062F: 0x034, 0x0AC, 0x036, 0x0D9\n#_038948: db $F1, $35, $34, $F1 : db $00, $00 ; 0x0630\u20130x0633: 0x0F1, 0x035, 0x034, 0x0F1\n#_03894E: db $4F, $34, $34, $87 : db $00, $00 ; 0x0634\u20130x0637: 0x04F, 0x034, 0x034, 0x087\n#_038954: db $86, $36, $37, $1B : db $03, $32 ; 0x0638\u20130x063B: 0x386, 0x036, 0x237, 0x31B\n#_03895A: db $D8, $36, $34, $34 : db $00, $00 ; 0x063C\u20130x063F: 0x0D8, 0x036, 0x034, 0x034\n#_038960: db $17, $34, $01, $34 : db $00, $10 ; 0x0640\u20130x0643: 0x017, 0x034, 0x001, 0x134\n#_038966: db $87, $34, $3C, $79 : db $03, $20 ; 0x0644\u20130x0647: 0x387, 0x034, 0x03C, 0x279\n#_03896C: db $9D, $B6, $7C, $0A : db $20, $01 ; 0x0648\u20130x064B: 0x09D, 0x2B6, 0x17C, 0x00A\n#_038972: db $CF, $5B, $3A, $3C : db $01, $33 ; 0x064C\u20130x064F: 0x1CF, 0x05B, 0x33A, 0x33C\n#_038978: db $3D, $3E, $75, $3A : db $33, $13 ; 0x0650\u20130x0653: 0x33D, 0x33E, 0x375, 0x13A\n#_03897E: db $47, $49, $4B, $55 : db $33, $33 ; 0x0654\u20130x0657: 0x347, 0x349, 0x34B, 0x355\n#_038984: db $56, $58, $5A, $5C : db $33, $33 ; 0x0658\u20130x065B: 0x356, 0x358, 0x35A, 0x35C\n#_03898A: db $ED, $D9, $34, $34 : db $10, $00 ; 0x065C\u20130x065F: 0x0ED, 0x1D9, 0x034, 0x034\n#_038990: db $79, $34, $D6, $34 : db $10, $00 ; 0x0660\u20130x0663: 0x079, 0x134, 0x0D6, 0x034\n#_038996: db $34, $6A, $6C, $79 : db $03, $31 ; 0x0664\u20130x0667: 0x334, 0x06A, 0x16C, 0x379\n#_03899C: db $6C, $36, $35, $34 : db $30, $00 ; 0x0668\u20130x066B: 0x06C, 0x336, 0x035, 0x034\n#_0389A2: db $27, $74, $34, $77 : db $23, $03 ; 0x066C\u20130x066F: 0x327, 0x274, 0x334, 0x077\n#_0389A8: db $79, $79, $79, $34 : db $31, $30 ; 0x0670\u20130x0673: 0x179, 0x379, 0x079, 0x334\n#_0389AE: db $DA, $36, $34, $AC : db $00, $00 ; 0x0674\u20130x0677: 0x0DA, 0x036, 0x034, 0x0AC\n#_0389B4: db $34, $7F, $73, $73 : db $03, $33 ; 0x0678\u20130x067B: 0x334, 0x07F, 0x373, 0x373\n#_0389BA: db $7F, $81, $73, $7F : db $33, $33 ; 0x067C\u20130x067F: 0x37F, 0x381, 0x373, 0x37F\n#_0389C0: db $7E, $0F, $36, $79 : db $32, $01 ; 0x0680\u20130x0683: 0x27E, 0x30F, 0x136, 0x079\n#_0389C6: db $0F, $34, $0F, $7E : db $20, $23 ; 0x0684\u20130x0687: 0x00F, 0x234, 0x30F, 0x27E\n#_0389CC: db $73, $34, $7A, $79 : db $30, $31 ; 0x0688\u20130x068B: 0x073, 0x334, 0x17A, 0x379\n#_0389D2: db $73, $83, $34, $34 : db $33, $00 ; 0x068C\u20130x068F: 0x373, 0x383, 0x034, 0x034\n#_0389D8: db $7C, $34, $79, $7C : db $10, $11 ; 0x0690\u20130x0693: 0x07C, 0x134, 0x179, 0x17C\n#_0389DE: db $84, $82, $9F, $FF : db $33, $01 ; 0x0694\u20130x0697: 0x384, 0x382, 0x19F, 0x0FF\n#_0389E4: db $9F, $9F, $9F, $9F : db $00, $00 ; 0x0698\u20130x069B: 0x09F, 0x09F, 0x09F, 0x09F\n#_0389EA: db $A3, $A5, $A3, $A5 : db $01, $01 ; 0x069C\u20130x069F: 0x1A3, 0x0A5, 0x1A3, 0x0A5\n#_0389F0: db $9F, $AD, $A5, $A5 : db $00, $00 ; 0x06A0\u20130x06A3: 0x09F, 0x0AD, 0x0A5, 0x0A5\n#_0389F6: db $56, $09, $C6, $C6 : db $10, $00 ; 0x06A4\u20130x06A7: 0x056, 0x109, 0x0C6, 0x0C6\n#_0389FC: db $39, $00, $45, $86 : db $30, $30 ; 0x06A8\u20130x06AB: 0x039, 0x300, 0x045, 0x386\n#_038A02: db $D1, $86, $83, $6A : db $03, $11 ; 0x06AC\u20130x06AF: 0x3D1, 0x086, 0x183, 0x16A\n#_038A08: db $4F, $87, $87, $89 : db $03, $33 ; 0x06B0\u20130x06B3: 0x34F, 0x087, 0x387, 0x389\n#_038A0E: db $4C, $34, $34, $34 : db $30, $00 ; 0x06B4\u20130x06B7: 0x04C, 0x334, 0x034, 0x034\n#_038A14: db $C8, $F4, $8B, $34 : db $02, $30 ; 0x06B8\u20130x06BB: 0x2C8, 0x0F4, 0x08B, 0x334\n#_038A1A: db $39, $36, $34, $8C : db $20, $03 ; 0x06BC\u20130x06BF: 0x039, 0x236, 0x334, 0x08C\n#_038A20: db $36, $34, $E1, $E1 : db $00, $00 ; 0x06C0\u20130x06C3: 0x036, 0x034, 0x0E1, 0x0E1\n#_038A26: db $39, $34, $34, $0F : db $20, $02 ; 0x06C4\u20130x06C7: 0x039, 0x234, 0x234, 0x00F\n#_038A2C: db $73, $DA, $36, $73 : db $30, $03 ; 0x06C8\u20130x06CB: 0x073, 0x3DA, 0x336, 0x073\n#_038A32: db $36, $73, $0F, $E1 : db $03, $20 ; 0x06CC\u20130x06CF: 0x336, 0x073, 0x00F, 0x2E1\n#_038A38: db $8F, $7E, $34, $7E : db $33, $03 ; 0x06D0\u20130x06D3: 0x38F, 0x37E, 0x334, 0x07E\n#_038A3E: db $0D, $8E, $E1, $DA : db $13, $00 ; 0x06D4\u20130x06D7: 0x30D, 0x18E, 0x0E1, 0x0DA\n#_038A44: db $36, $0E, $90, $DA : db $01, $30 ; 0x06D8\u20130x06DB: 0x136, 0x00E, 0x090, 0x3DA\n#_038A4A: db $73, $39, $73, $7E : db $32, $33 ; 0x06DC\u20130x06DF: 0x273, 0x339, 0x373, 0x37E\n#_038A50: db $DA, $DA, $7E, $8F : db $00, $33 ; 0x06E0\u20130x06E3: 0x0DA, 0x0DA, 0x37E, 0x38F\n#_038A56: db $73, $8F, $90, $8F : db $33, $33 ; 0x06E4\u20130x06E7: 0x373, 0x38F, 0x390, 0x38F\n#_038A5C: db $35, $90, $73, $0D : db $03, $31 ; 0x06E8\u20130x06EB: 0x335, 0x090, 0x173, 0x30D\n#_038A62: db $8F, $36, $90, $DA : db $30, $30 ; 0x06EC\u20130x06EF: 0x08F, 0x336, 0x090, 0x3DA\n#_038A68: db $8D, $83, $36, $39 : db $33, $02 ; 0x06F0\u20130x06F3: 0x38D, 0x383, 0x236, 0x039\n#_038A6E: db $7A, $36, $73, $90 : db $30, $33 ; 0x06F4\u20130x06F7: 0x07A, 0x336, 0x373, 0x390\n#_038A74: db $90, $34, $A0, $73 : db $30, $03 ; 0x06F8\u20130x06FB: 0x090, 0x334, 0x3A0, 0x073\n#_038A7A: db $90, $73, $71, $71 : db $33, $00 ; 0x06FC\u20130x06FF: 0x390, 0x373, 0x071, 0x071\n#_038A80: db $91, $7C, $7A, $73 : db $33, $33 ; 0x0700\u20130x0703: 0x391, 0x37C, 0x37A, 0x373\n#_038A86: db $A5, $AB, $A5, $A5 : db $10, $11 ; 0x0704\u20130x0707: 0x0A5, 0x1AB, 0x1A5, 0x1A5\n#_038A8C: db $9F, $9F, $34, $AC : db $00, $00 ; 0x0708\u20130x070B: 0x09F, 0x09F, 0x034, 0x0AC\n#_038A92: db $34, $34, $5B, $12 : db $00, $13 ; 0x070C\u20130x070F: 0x034, 0x034, 0x35B, 0x112\n#_038A98: db $13, $14, $C6, $CD : db $33, $00 ; 0x0710\u20130x0713: 0x313, 0x314, 0x0C6, 0x0CD\n#_038A9E: db $BD, $1D, $C0, $51 : db $23, $21 ; 0x0714\u20130x0717: 0x3BD, 0x21D, 0x1C0, 0x251\n#_038AA4: db $CD, $D9, $E3, $DC : db $20, $00 ; 0x0718\u20130x071B: 0x0CD, 0x2D9, 0x0E3, 0x0DC\n#_038AAA: db $D1, $D6, $CD, $C9 : db $22, $20 ; 0x071C\u20130x071F: 0x2D1, 0x2D6, 0x0CD, 0x2C9\n#_038AB0: db $56, $E2, $EE, $D1 : db $10, $12 ; 0x0720\u20130x0723: 0x056, 0x1E2, 0x2EE, 0x1D1\n#_038AB6: db $CD, $D6, $CD, $CD : db $22, $22 ; 0x0724\u20130x0727: 0x2CD, 0x2D6, 0x2CD, 0x2CD\n#_038ABC: db $DC, $DC, $4B, $34 : db $22, $10 ; 0x0728\u20130x072B: 0x2DC, 0x2DC, 0x04B, 0x134\n#_038AC2: db $27, $84, $FF, $32 : db $31, $22 ; 0x072C\u20130x072F: 0x127, 0x384, 0x2FF, 0x232\n#_038AC8: db $34, $34, $7E, $AB : db $00, $32 ; 0x0730\u20130x0733: 0x034, 0x034, 0x27E, 0x3AB\n#_038ACE: db $D0, $96, $DC, $FF : db $23, $22 ; 0x0734\u20130x0737: 0x3D0, 0x296, 0x2DC, 0x2FF\n#_038AD4: db $34, $34, $CD, $CD : db $00, $22 ; 0x0738\u20130x073B: 0x034, 0x034, 0x2CD, 0x2CD\n#_038ADA: db $CE, $37, $4B, $7D : db $22, $13 ; 0x073C\u20130x073F: 0x2CE, 0x237, 0x34B, 0x17D\n#_038AE0: db $1E, $F7, $CD, $CD : db $12, $22 ; 0x0740\u20130x0743: 0x21E, 0x1F7, 0x2CD, 0x2CD\n#_038AE6: db $CD, $C8, $C9, $A9 : db $20, $00 ; 0x0744\u20130x0747: 0x0CD, 0x2C8, 0x0C9, 0x0A9\n#_038AEC: db $9A, $F8, $D4, $DC : db $32, $22 ; 0x0748\u20130x074B: 0x29A, 0x3F8, 0x2D4, 0x2DC\n#_038AF2: db $3A, $A3, $7C, $34 : db $20, $10 ; 0x074C\u20130x074F: 0x03A, 0x2A3, 0x07C, 0x134\n#_038AF8: db $34, $CD, $CD, $2D : db $22, $21 ; 0x0750\u20130x0753: 0x234, 0x2CD, 0x1CD, 0x22D\n#_038AFE: db $9A, $79, $7F, $79 : db $01, $01 ; 0x0754\u20130x0757: 0x19A, 0x079, 0x17F, 0x079\n#_038B04: db $34, $34, $F8, $9E : db $02, $23 ; 0x0758\u20130x075B: 0x234, 0x034, 0x3F8, 0x29E\n#_038B0A: db $E4, $2D, $34, $76 : db $21, $00 ; 0x075C\u20130x075F: 0x1E4, 0x22D, 0x034, 0x076\n#_038B10: db $79, $ED, $C5, $CD : db $11, $22 ; 0x0760\u20130x0763: 0x179, 0x1ED, 0x2C5, 0x2CD\n#_038B16: db $2D, $34, $D4, $3F : db $10, $12 ; 0x0764\u20130x0767: 0x02D, 0x134, 0x2D4, 0x13F\n#_038B1C: db $39, $9B, $95, $79 : db $10, $01 ; 0x0768\u20130x076B: 0x039, 0x19B, 0x195, 0x079\n#_038B22: db $7E, $ED, $CD, $04 : db $31, $23 ; 0x076C\u20130x076F: 0x17E, 0x3ED, 0x3CD, 0x204\n#_038B28: db $35, $05, $35, $61 : db $01, $21 ; 0x0770\u20130x0773: 0x135, 0x005, 0x135, 0x261\n#_038B2E: db $F2, $CE, $7E, $B7 : db $02, $12 ; 0x0774\u20130x0777: 0x2F2, 0x0CE, 0x27E, 0x1B7\n#_038B34: db $C6, $CD, $D1, $CD : db $02, $02 ; 0x0778\u20130x077B: 0x2C6, 0x0CD, 0x2D1, 0x0CD\n#_038B3A: db $C9, $13, $DC, $B7 : db $03, $02 ; 0x077C\u20130x077F: 0x3C9, 0x013, 0x2DC, 0x0B7\n#_038B40: db $DC, $1D, $C9, $B7 : db $23, $02 ; 0x0780\u20130x0783: 0x3DC, 0x21D, 0x2C9, 0x0B7\n#_038B46: db $56, $B7, $D1, $DC : db $12, $22 ; 0x0784\u20130x0787: 0x256, 0x1B7, 0x2D1, 0x2DC\n#_038B4C: db $1D, $D6, $24, $25 : db $32, $33 ; 0x0788\u20130x078B: 0x21D, 0x3D6, 0x324, 0x325\n#_038B52: db $D1, $27, $27, $27 : db $23, $33 ; 0x078C\u20130x078F: 0x3D1, 0x227, 0x327, 0x327\n#_038B58: db $CD, $33, $27, $A8 : db $22, $30 ; 0x0790\u20130x0793: 0x2CD, 0x233, 0x027, 0x3A8\n#_038B5E: db $9D, $31, $34, $34 : db $21, $00 ; 0x0794\u20130x0797: 0x19D, 0x231, 0x034, 0x034\n#_038B64: db $71, $79, $9D, $34 : db $00, $22 ; 0x0798\u20130x079B: 0x071, 0x079, 0x29D, 0x234\n#_038B6A: db $99, $A0, $04, $D5 : db $33, $11 ; 0x079C\u20130x079F: 0x399, 0x3A0, 0x104, 0x1D5\n#_038B70: db $36, $A7, $33, $33 : db $03, $22 ; 0x07A0\u20130x07A3: 0x336, 0x0A7, 0x233, 0x233\n#_038B76: db $33, $34, $35, $88 : db $20, $00 ; 0x07A4\u20130x07A7: 0x033, 0x234, 0x035, 0x088\n#_038B7C: db $34, $88, $34, $36 : db $00, $00 ; 0x07A8\u20130x07AB: 0x034, 0x088, 0x034, 0x036\n#_038B82: db $66, $68, $37, $34 : db $33, $30 ; 0x07AC\u20130x07AF: 0x366, 0x368, 0x037, 0x334\n#_038B88: db $A8, $AF, $B1, $70 : db $03, $33 ; 0x07B0\u20130x07B3: 0x3A8, 0x0AF, 0x3B1, 0x370\n#_038B8E: db $72, $36, $6D, $34 : db $30, $30 ; 0x07B4\u20130x07B7: 0x072, 0x336, 0x06D, 0x334\n#_038B94: db $D9, $B7, $B9, $95 : db $03, $30 ; 0x07B8\u20130x07BB: 0x3D9, 0x0B7, 0x0B9, 0x395\n#_038B9A: db $36, $36, $34, $34 : db $00, $00 ; 0x07BC\u20130x07BF: 0x036, 0x036, 0x034, 0x034\n#_038BA0: db $BD, $BF, $34, $37 : db $33, $02 ; 0x07C0\u20130x07C3: 0x3BD, 0x3BF, 0x234, 0x037\n#_038BA6: db $34, $19, $18, $34 : db $02, $20 ; 0x07C4\u20130x07C7: 0x234, 0x019, 0x018, 0x234\n#_038BAC: db $CE, $37, $D5, $34 : db $02, $10 ; 0x07C8\u20130x07CB: 0x2CE, 0x037, 0x0D5, 0x134\n#_038BB2: db $36, $04, $32, $35 : db $01, $20 ; 0x07CC\u20130x07CF: 0x136, 0x004, 0x032, 0x235\n#_038BB8: db $36, $25, $D5, $32 : db $22, $12 ; 0x07D0\u20130x07D3: 0x236, 0x225, 0x2D5, 0x132\n#_038BBE: db $5C, $34, $1A, $04 : db $12, $21 ; 0x07D4\u20130x07D7: 0x25C, 0x134, 0x11A, 0x204\n#_038BC4: db $D4, $34, $5C, $E0 : db $10, $12 ; 0x07D8\u20130x07DB: 0x0D4, 0x134, 0x25C, 0x1E0\n#_038BCA: db $35, $33, $33, $33 : db $02, $22 ; 0x07DC\u20130x07DF: 0x235, 0x033, 0x233, 0x233\n#_038BD0: db $05, $C2, $06, $E0 : db $13, $32 ; 0x07E0\u20130x07E3: 0x305, 0x1C2, 0x206, 0x3E0\n#_038BD6: db $34, $C3, $C5, $C6 : db $03, $33 ; 0x07E4\u20130x07E7: 0x334, 0x0C3, 0x3C5, 0x3C6\n#_038BDC: db $C6, $C6, $C6, $17 : db $33, $30 ; 0x07E8\u20130x07EB: 0x3C6, 0x3C6, 0x0C6, 0x317\n#_038BE2: db $A9, $9F, $C9, $CF : db $00, $33 ; 0x07EC\u20130x07EF: 0x0A9, 0x09F, 0x3C9, 0x3CF\n#_038BE8: db $D0, $D1, $D2, $4F : db $33, $30 ; 0x07F0\u20130x07F3: 0x3D0, 0x3D1, 0x0D2, 0x34F\n#_038BEE: db $4E, $8B, $4B, $34 : db $00, $10 ; 0x07F4\u20130x07F7: 0x04E, 0x08B, 0x04B, 0x134\n#_038BF4: db $D3, $C9, $C9, $C9 : db $30, $00 ; 0x07F8\u20130x07FB: 0x0D3, 0x3C9, 0x0C9, 0x0C9\n#_038BFA: db $4E, $4E, $DB, $A8 : db $11, $30 ; 0x07FC\u20130x07FF: 0x14E, 0x14E, 0x0DB, 0x3A8\n#_038C00: db $E4, $34, $34, $36 : db $30, $00 ; 0x0800\u20130x0803: 0x0E4, 0x334, 0x034, 0x036\n#_038C06: db $E7, $EB, $ED, $EE : db $33, $33 ; 0x0804\u20130x0807: 0x3E7, 0x3EB, 0x3ED, 0x3EE\n#_038C0C: db $EE, $6C, $F1, $EB : db $31, $33 ; 0x0808\u20130x080B: 0x1EE, 0x36C, 0x3F1, 0x3EB\n#_038C12: db $F6, $34, $34, $34 : db $30, $00 ; 0x080C\u20130x080F: 0x0F6, 0x334, 0x034, 0x034\n#_038C18: db $34, $C9, $34, $DB : db $03, $00 ; 0x0810\u20130x0813: 0x334, 0x0C9, 0x034, 0x0DB\n#_038C1E: db $E3, $E3, $F1, $FC : db $00, $33 ; 0x0814\u20130x0817: 0x0E3, 0x0E3, 0x3F1, 0x3FC\n#_038C24: db $FE, $FF, $01, $C9 : db $33, $43 ; 0x0818\u20130x081B: 0x3FE, 0x3FF, 0x301, 0x4C9\n#_038C2A: db $D2, $D2, $D2, $D2 : db $33, $33 ; 0x081C\u20130x081F: 0x3D2, 0x3D2, 0x3D2, 0x3D2\n#_038C30: db $D2, $D2, $E7, $0A : db $33, $34 ; 0x0820\u20130x0823: 0x3D2, 0x3D2, 0x4E7, 0x30A\n#_038C36: db $0C, $0B, $F0, $0F : db $44, $04 ; 0x0824\u20130x0827: 0x40C, 0x40B, 0x4F0, 0x00F\n#_038C3C: db $10, $11, $CA, $F4 : db $44, $33 ; 0x0828\u20130x082B: 0x410, 0x411, 0x3CA, 0x3F4\n#_038C42: db $D0, $F6, $13, $14 : db $33, $44 ; 0x082C\u20130x082F: 0x3D0, 0x3F6, 0x413, 0x414\n#_038C48: db $16, $17, $17, $19 : db $44, $44 ; 0x0830\u20130x0833: 0x416, 0x417, 0x417, 0x419\n#_038C4E: db $1E, $E1, $34, $CA : db $40, $03 ; 0x0834\u20130x0837: 0x01E, 0x4E1, 0x334, 0x0CA\n#_038C54: db $CA, $CA, $1C, $20 : db $33, $44 ; 0x0838\u20130x083B: 0x3CA, 0x3CA, 0x41C, 0x420\n#_038C5A: db $C6, $C6, $C6, $C6 : db $33, $33 ; 0x083C\u20130x083F: 0x3C6, 0x3C6, 0x3C6, 0x3C6\n#_038C60: db $CA, $25, $D1, $34 : db $34, $33 ; 0x0840\u20130x0843: 0x4CA, 0x325, 0x3D1, 0x334\n#_038C66: db $D0, $1E, $27, $34 : db $34, $40 ; 0x0844\u20130x0847: 0x4D0, 0x31E, 0x027, 0x434\n#_038C6C: db $79, $1E, $1D, $1C : db $10, $00 ; 0x0848\u20130x084B: 0x079, 0x11E, 0x01D, 0x01C\n#_038C72: db $1E, $E1, $79, $9B : db $00, $10 ; 0x084C\u20130x084F: 0x01E, 0x0E1, 0x079, 0x19B\n#_038C78: db $9D, $9C, $DE, $12 : db $00, $00 ; 0x0850\u20130x0853: 0x09D, 0x09C, 0x0DE, 0x012\n#_038C7E: db $C6, $E7, $44, $D0 : db $30, $03 ; 0x0854\u20130x0857: 0x0C6, 0x3E7, 0x344, 0x0D0\n#_038C84: db $D0, $D0, $D0, $29 : db $33, $34 ; 0x0858\u20130x085B: 0x3D0, 0x3D0, 0x4D0, 0x329\n#_038C8A: db $D4, $D4, $F0, $E1 : db $33, $00 ; 0x085C\u20130x085F: 0x3D4, 0x3D4, 0x0F0, 0x0E1\n#_038C90: db $C9, $4F, $2E, $DC : db $31, $43 ; 0x0860\u20130x0863: 0x1C9, 0x34F, 0x32E, 0x4DC\n#_038C96: db $DC, $0A, $0B, $F0 : db $34, $40 ; 0x0864\u20130x0867: 0x4DC, 0x30A, 0x00B, 0x4F0\n#_038C9C: db $31, $26, $CA, $53 : db $44, $31 ; 0x0868\u20130x086B: 0x431, 0x426, 0x1CA, 0x353\n#_038CA2: db $1C, $22, $34, $34 : db $44, $00 ; 0x086C\u20130x086F: 0x41C, 0x422, 0x034, 0x034\n#_038CA8: db $34, $27, $C5, $F2 : db $01, $21 ; 0x0870\u20130x0873: 0x134, 0x027, 0x1C5, 0x2F2\n#_038CAE: db $E3, $C9, $34, $F2 : db $03, $01 ; 0x0874\u20130x0877: 0x3E3, 0x0C9, 0x134, 0x0F2\n#_038CB4: db $D2, $D2, $D2, $D2 : db $33, $33 ; 0x0878\u20130x087B: 0x3D2, 0x3D2, 0x3D2, 0x3D2\n#_038CBA: db $D2, $D2, $D2, $CB : db $33, $33 ; 0x087C\u20130x087F: 0x3D2, 0x3D2, 0x3D2, 0x3CB\n#_038CC0: db $CC, $CD, $CE, $34 : db $33, $33 ; 0x0880\u20130x0883: 0x3CC, 0x3CD, 0x3CE, 0x334\n#_038CC6: db $1C, $F5, $34, $C4 : db $43, $03 ; 0x0884\u20130x0887: 0x31C, 0x4F5, 0x334, 0x0C4\n#_038CCC: db $34, $CE, $34, $36 : db $03, $34 ; 0x0888\u20130x088B: 0x334, 0x0CE, 0x434, 0x336\n#_038CD2: db $38, $F6, $F0, $CE : db $43, $03 ; 0x088C\u20130x088F: 0x338, 0x4F6, 0x3F0, 0x0CE\n#_038CD8: db $50, $3B, $3D, $1C : db $14, $44 ; 0x0890\u20130x0893: 0x450, 0x13B, 0x43D, 0x41C\n#_038CDE: db $F0, $CE, $27, $D0 : db $03, $12 ; 0x0894\u20130x0897: 0x3F0, 0x0CE, 0x227, 0x1D0\n#_038CE4: db $40, $41, $F6, $CE : db $44, $33 ; 0x0898\u20130x089B: 0x440, 0x441, 0x3F6, 0x3CE\n#_038CEA: db $1C, $27, $43, $34 : db $44, $40 ; 0x089C\u20130x089F: 0x41C, 0x427, 0x043, 0x434\n#_038CF0: db $34, $1C, $1D, $34 : db $00, $00 ; 0x08A0\u20130x08A3: 0x034, 0x01C, 0x01D, 0x034\n#_038CF6: db $83, $82, $76, $13 : db $00, $00 ; 0x08A4\u20130x08A7: 0x083, 0x082, 0x076, 0x013\n#_038CFC: db $94, $36, $9A, $95 : db $00, $00 ; 0x08A8\u20130x08AB: 0x094, 0x036, 0x09A, 0x095\n#_038D02: db $0B, $82, $25, $E8 : db $00, $00 ; 0x08AC\u20130x08AF: 0x00B, 0x082, 0x025, 0x0E8\n#_038D08: db $34, $79, $CD, $1D : db $00, $20 ; 0x08B0\u20130x08B3: 0x034, 0x079, 0x0CD, 0x21D\n#_038D0E: db $A8, $1D, $7C, $D5 : db $00, $03 ; 0x08B4\u20130x08B7: 0x0A8, 0x01D, 0x37C, 0x0D5\n#_038D14: db $34, $9A, $36, $39 : db $00, $01 ; 0x08B8\u20130x08BB: 0x034, 0x09A, 0x136, 0x039\n#_038D1A: db $7F, $CD, $D5, $24 : db $02, $21 ; 0x08BC\u20130x08BF: 0x27F, 0x0CD, 0x1D5, 0x224\n#_038D20: db $34, $34, $34, $1C : db $00, $00 ; 0x08C0\u20130x08C3: 0x034, 0x034, 0x034, 0x01C\n#_038D26: db $76, $B9, $13, $95 : db $00, $00 ; 0x08C4\u20130x08C7: 0x076, 0x0B9, 0x013, 0x095\n#_038D2C: db $31, $CD, $04, $9A : db $12, $33 ; 0x08C8\u20130x08CB: 0x231, 0x1CD, 0x304, 0x39A\n#_038D32: db $2D, $36, $76, $4F : db $10, $00 ; 0x08CC\u20130x08CF: 0x02D, 0x136, 0x076, 0x04F\n#_038D38: db $95, $34, $9A, $9C : db $00, $00 ; 0x08D0\u20130x08D3: 0x095, 0x034, 0x09A, 0x09C\n#_038D3E: db $34, $2D, $7B, $8F : db $01, $00 ; 0x08D4\u20130x08D7: 0x134, 0x02D, 0x07B, 0x08F\n#_038D44: db $D6, $2D, $0A, $0C : db $21, $00 ; 0x08D8\u20130x08DB: 0x1D6, 0x22D, 0x00A, 0x00C\n#_038D4A: db $7E, $2D, $1D, $CD : db $01, $02 ; 0x08DC\u20130x08DF: 0x17E, 0x02D, 0x21D, 0x0CD\n#_038D50: db $CD, $CD, $4F, $51 : db $22, $44 ; 0x08E0\u20130x08E3: 0x2CD, 0x2CD, 0x44F, 0x451\n#_038D56: db $52, $51, $50, $54 : db $44, $44 ; 0x08E4\u20130x08E7: 0x452, 0x451, 0x450, 0x454\n#_038D5C: db $00, $A5, $5A, $5C : db $33, $44 ; 0x08E8\u20130x08EB: 0x300, 0x3A5, 0x45A, 0x45C\n#_038D62: db $5C, $5E, $60, $5C : db $44, $44 ; 0x08EC\u20130x08EF: 0x45C, 0x45E, 0x460, 0x45C\n#_038D68: db $62, $5B, $63, $37 : db $44, $42 ; 0x08F0\u20130x08F3: 0x462, 0x45B, 0x263, 0x437\n#_038D6E: db $38, $A8, $6E, $70 : db $30, $44 ; 0x08F4\u20130x08F7: 0x038, 0x3A8, 0x46E, 0x470\n#_038D74: db $71, $73, $75, $77 : db $44, $44 ; 0x08F8\u20130x08FB: 0x471, 0x473, 0x475, 0x477\n#_038D7A: db $58, $24, $D9, $7D : db $41, $04 ; 0x08FC\u20130x08FF: 0x158, 0x424, 0x4D9, 0x07D\n#_038D80: db $7E, $80, $66, $7E : db $44, $43 ; 0x0900\u20130x0903: 0x47E, 0x480, 0x366, 0x47E\n#_038D86: db $84, $86, $88, $89 : db $44, $44 ; 0x0904\u20130x0907: 0x484, 0x486, 0x488, 0x489\n#_038D8C: db $88, $8C, $70, $7E : db $44, $43 ; 0x0908\u20130x090B: 0x488, 0x48C, 0x370, 0x47E\n#_038D92: db $62, $6F, $95, $97 : db $44, $44 ; 0x090C\u20130x090F: 0x462, 0x46F, 0x495, 0x497\n#_038D98: db $96, $70, $70, $CD : db $44, $42 ; 0x0910\u20130x0913: 0x496, 0x470, 0x270, 0x4CD\n#_038D9E: db $24, $4E, $9D, $7E : db $14, $43 ; 0x0914\u20130x0917: 0x424, 0x14E, 0x39D, 0x47E\n#_038DA4: db $6E, $70, $8F, $51 : db $44, $44 ; 0x0918\u20130x091B: 0x46E, 0x470, 0x48F, 0x451\n#_038DAA: db $CD, $CE, $35, $36 : db $22, $00 ; 0x091C\u20130x091F: 0x2CD, 0x2CE, 0x035, 0x036\n#_038DB0: db $75, $A0, $27, $63 : db $44, $31 ; 0x0920\u20130x0923: 0x475, 0x4A0, 0x127, 0x363\n#_038DB6: db $34, $34, $7E, $80 : db $00, $44 ; 0x0924\u20130x0927: 0x034, 0x034, 0x47E, 0x480\n#_038DBC: db $80, $66, $34, $A7 : db $44, $04 ; 0x0928\u20130x092B: 0x480, 0x466, 0x434, 0x0A7\n#_038DC2: db $A9, $7E, $B0, $A7 : db $43, $44 ; 0x092C\u20130x092F: 0x3A9, 0x47E, 0x4B0, 0x4A7\n#_038DC8: db $AE, $7E, $B4, $6F : db $43, $44 ; 0x0930\u20130x0933: 0x3AE, 0x47E, 0x4B4, 0x46F\n#_038DCE: db $B5, $01, $B0, $DC : db $44, $42 ; 0x0934\u20130x0937: 0x4B5, 0x401, 0x2B0, 0x4DC\n#_038DD4: db $24, $34, $8F, $F0 : db $10, $40 ; 0x0938\u20130x093B: 0x024, 0x134, 0x08F, 0x4F0\n#_038DDA: db $34, $34, $E4, $37 : db $00, $22 ; 0x093C\u20130x093F: 0x034, 0x034, 0x2E4, 0x237\n#_038DE0: db $6E, $70, $8F, $34 : db $44, $40 ; 0x0940\u20130x0943: 0x46E, 0x470, 0x08F, 0x434\n#_038DE6: db $BE, $8E, $C0, $6B : db $44, $44 ; 0x0944\u20130x0947: 0x4BE, 0x48E, 0x4C0, 0x46B\n#_038DEC: db $9B, $C5, $C6, $C8 : db $44, $44 ; 0x0948\u20130x094B: 0x49B, 0x4C5, 0x4C6, 0x4C8\n#_038DF2: db $C7, $9D, $C5, $E4 : db $44, $22 ; 0x094C\u20130x094F: 0x4C7, 0x49D, 0x2C5, 0x2E4\n#_038DF8: db $D6, $CD, $D8, $5C : db $22, $24 ; 0x0950\u20130x0953: 0x2D6, 0x2CD, 0x4D8, 0x25C\n#_038DFE: db $CC, $CD, $CB, $9D : db $44, $44 ; 0x0954\u20130x0957: 0x4CC, 0x4CD, 0x4CB, 0x49D\n#_038E04: db $34, $28, $CD, $58 : db $23, $24 ; 0x0958\u20130x095B: 0x334, 0x228, 0x4CD, 0x258\n#_038E0A: db $D1, $76, $57, $70 : db $44, $44 ; 0x095C\u20130x095F: 0x4D1, 0x476, 0x457, 0x470\n#_038E10: db $9D, $A8, $68, $6A : db $40, $44 ; 0x0960\u20130x0963: 0x09D, 0x4A8, 0x468, 0x46A\n#_038E16: db $7F, $54, $D9, $D3 : db $44, $04 ; 0x0964\u20130x0967: 0x47F, 0x454, 0x4D9, 0x0D3\n#_038E1C: db $70, $88, $BF, $9D : db $44, $44 ; 0x0968\u20130x096B: 0x470, 0x488, 0x4BF, 0x49D\n#_038E22: db $F8, $34, $35, $D9 : db $00, $04 ; 0x096C\u20130x096F: 0x0F8, 0x034, 0x435, 0x0D9\n#_038E28: db $70, $95, $DA, $8F : db $44, $44 ; 0x0970\u20130x0973: 0x470, 0x495, 0x4DA, 0x48F\n#_038E2E: db $C3, $36, $36, $34 : db $40, $00 ; 0x0974\u20130x0977: 0x0C3, 0x436, 0x036, 0x034\n#_038E34: db $52, $51, $70, $E0 : db $44, $44 ; 0x0978\u20130x097B: 0x452, 0x451, 0x470, 0x4E0\n#_038E3A: db $36, $34, $E2, $36 : db $00, $40 ; 0x097C\u20130x097F: 0x036, 0x034, 0x0E2, 0x436\n#_038E40: db $C5, $58, $E6, $57 : db $24, $44 ; 0x0980\u20130x0983: 0x4C5, 0x258, 0x4E6, 0x457\n#_038E46: db $76, $C1, $E7, $34 : db $44, $40 ; 0x0984\u20130x0987: 0x476, 0x4C1, 0x0E7, 0x434\n#_038E4C: db $0A, $0B, $EB, $C5 : db $11, $12 ; 0x0988\u20130x098B: 0x10A, 0x10B, 0x2EB, 0x1C5\n#_038E52: db $68, $6A, $7F, $54 : db $44, $44 ; 0x098C\u20130x098F: 0x468, 0x46A, 0x47F, 0x454\n#_038E58: db $C4, $34, $7E, $ED : db $40, $31 ; 0x0990\u20130x0993: 0x0C4, 0x434, 0x17E, 0x3ED\n#_038E5E: db $AA, $EE, $F0, $34 : db $44, $40 ; 0x0994\u20130x0997: 0x4AA, 0x4EE, 0x0F0, 0x434\n#_038E64: db $CD, $B2, $AD, $F4 : db $24, $44 ; 0x0998\u20130x099B: 0x4CD, 0x2B2, 0x4AD, 0x4F4\n#_038E6A: db $34, $0A, $B3, $6E : db $01, $44 ; 0x099C\u20130x099F: 0x134, 0x00A, 0x4B3, 0x46E\n#_038E70: db $8F, $B6, $F6, $34 : db $44, $40 ; 0x09A0\u20130x09A3: 0x48F, 0x4B6, 0x0F6, 0x434\n#_038E76: db $6F, $CD, $F0, $A7 : db $42, $44 ; 0x09A4\u20130x09A7: 0x26F, 0x4CD, 0x4F0, 0x4A7\n#_038E7C: db $AB, $4E, $6F, $70 : db $44, $44 ; 0x09A8\u20130x09AB: 0x4AB, 0x44E, 0x46F, 0x470\n#_038E82: db $36, $F4, $FE, $00 : db $04, $45 ; 0x09AC\u20130x09AF: 0x436, 0x0F4, 0x5FE, 0x400\n#_038E88: db $73, $8F, $F6, $FE : db $44, $44 ; 0x09B0\u20130x09B3: 0x473, 0x48F, 0x4F6, 0x4FE\n#_038E8E: db $03, $9A, $8F, $C4 : db $54, $44 ; 0x09B4\u20130x09B7: 0x403, 0x59A, 0x48F, 0x4C4\n#_038E94: db $34, $24, $F2, $FB : db $01, $01 ; 0x09B8\u20130x09BB: 0x134, 0x024, 0x1F2, 0x0FB\n#_038E9A: db $34, $0F, $AB, $9C : db $01, $23 ; 0x09BC\u20130x09BF: 0x134, 0x00F, 0x3AB, 0x29C\n#_038EA0: db $34, $7D, $0E, $37 : db $01, $12 ; 0x09C0\u20130x09C3: 0x134, 0x07D, 0x20E, 0x137\n#_038EA6: db $36, $0F, $AB, $D1 : db $02, $02 ; 0x09C4\u20130x09C7: 0x236, 0x00F, 0x2AB, 0x0D1\n#_038EAC: db $46, $34, $C6, $34 : db $40, $00 ; 0x09C8\u20130x09CB: 0x046, 0x434, 0x0C6, 0x034\n#_038EB2: db $C5, $CD, $CE, $4A : db $22, $24 ; 0x09CC\u20130x09CF: 0x2C5, 0x2CD, 0x4CE, 0x24A\n#_038EB8: db $34, $0B, $C6, $27 : db $02, $01 ; 0x09D0\u20130x09D3: 0x234, 0x00B, 0x1C6, 0x027\n#_038EBE: db $C5, $08, $09, $0A : db $25, $55 ; 0x09D4\u20130x09D7: 0x5C5, 0x208, 0x509, 0x50A\n#_038EC4: db $9C, $34, $C8, $3A : db $00, $02 ; 0x09D8\u20130x09DB: 0x09C, 0x034, 0x2C8, 0x03A\n#_038ECA: db $AD, $C6, $C6, $10 : db $00, $05 ; 0x09DC\u20130x09DF: 0x0AD, 0x0C6, 0x5C6, 0x010\n#_038ED0: db $11, $12, $34, $CD : db $55, $02 ; 0x09E0\u20130x09E3: 0x511, 0x512, 0x234, 0x0CD\n#_038ED6: db $C6, $A4, $13, $15 : db $00, $55 ; 0x09E4\u20130x09E7: 0x0C6, 0x0A4, 0x513, 0x515\n#_038EDC: db $14, $16, $17, $FF : db $55, $51 ; 0x09E8\u20130x09EB: 0x514, 0x516, 0x117, 0x5FF\n#_038EE2: db $AD, $27, $C5, $1F : db $01, $25 ; 0x09EC\u20130x09EF: 0x1AD, 0x027, 0x5C5, 0x21F\n#_038EE8: db $9E, $7C, $C5, $34 : db $01, $20 ; 0x09F0\u20130x09F3: 0x19E, 0x07C, 0x0C5, 0x234\n#_038EEE: db $39, $34, $EB, $D8 : db $10, $12 ; 0x09F4\u20130x09F7: 0x039, 0x134, 0x2EB, 0x1D8\n#_038EF4: db $61, $93, $81, $6C : db $13, $11 ; 0x09F8\u20130x09FB: 0x361, 0x193, 0x181, 0x16C\n#_038EFA: db $34, $07, $F9, $D5 : db $05, $22 ; 0x09FC\u20130x09FF: 0x534, 0x007, 0x2F9, 0x2D5\n#_038F00: db $56, $95, $23, $F9 : db $13, $52 ; 0x0A00\u20130x0A03: 0x356, 0x195, 0x223, 0x5F9\n#_038F06: db $25, $1C, $E5, $63 : db $31, $21 ; 0x0A04\u20130x0A07: 0x125, 0x31C, 0x1E5, 0x263\n#_038F0C: db $9B, $33, $25, $E5 : db $32, $52 ; 0x0A08\u20130x0A0B: 0x29B, 0x333, 0x225, 0x5E5\n#_038F12: db $2D, $9E, $9F, $5B : db $10, $01 ; 0x0A0C\u20130x0A0F: 0x02D, 0x19E, 0x19F, 0x05B\n#_038F18: db $C9, $5B, $28, $E6 : db $01, $52 ; 0x0A10\u20130x0A13: 0x1C9, 0x05B, 0x228, 0x5E6\n#_038F1E: db $E6, $ED, $E6, $26 : db $22, $25 ; 0x0A14\u20130x0A17: 0x2E6, 0x2ED, 0x5E6, 0x226\n#_038F24: db $28, $E6, $2C, $2D : db $52, $55 ; 0x0A18\u20130x0A1B: 0x228, 0x5E6, 0x52C, 0x52D\n#_038F2A: db $F4, $2C, $2C, $30 : db $25, $55 ; 0x0A1C\u20130x0A1F: 0x5F4, 0x22C, 0x52C, 0x530\n#_038F30: db $2E, $E6, $29, $27 : db $52, $35 ; 0x0A20\u20130x0A23: 0x22E, 0x5E6, 0x529, 0x327\n#_038F36: db $87, $87, $87, $30 : db $33, $35 ; 0x0A24\u20130x0A27: 0x387, 0x387, 0x587, 0x330\n#_038F3C: db $87, $36, $E6, $E6 : db $35, $22 ; 0x0A28\u20130x0A2B: 0x587, 0x336, 0x2E6, 0x2E6\n#_038F42: db $3A, $3B, $3B, $3A : db $55, $55 ; 0x0A2C\u20130x0A2F: 0x53A, 0x53B, 0x53B, 0x53A\n#_038F48: db $3A, $3A, $FE, $E6 : db $55, $22 ; 0x0A30\u20130x0A33: 0x53A, 0x53A, 0x2FE, 0x2E6\n#_038F4E: db $E6, $2E, $2C, $3A : db $25, $55 ; 0x0A34\u20130x0A37: 0x5E6, 0x22E, 0x52C, 0x53A\n#_038F54: db $3F, $40, $3A, $87 : db $55, $53 ; 0x0A38\u20130x0A3B: 0x53F, 0x540, 0x33A, 0x587\n#_038F5A: db $87, $87, $3A, $43 : db $33, $55 ; 0x0A3C\u20130x0A3F: 0x387, 0x387, 0x53A, 0x543\n#_038F60: db $28, $E6, $29, $49 : db $52, $35 ; 0x0A40\u20130x0A43: 0x228, 0x5E6, 0x529, 0x349\n#_038F66: db $4B, $3A, $3A, $4C : db $55, $55 ; 0x0A44\u20130x0A47: 0x54B, 0x53A, 0x53A, 0x54C\n#_038F6C: db $FE, $3A, $4E, $4F : db $25, $55 ; 0x0A48\u20130x0A4B: 0x5FE, 0x23A, 0x54E, 0x54F\n#_038F72: db $50, $3A, $29, $3A : db $55, $35 ; 0x0A4C\u20130x0A4F: 0x550, 0x53A, 0x529, 0x33A\n#_038F78: db $5B, $5B, $51, $53 : db $55, $55 ; 0x0A50\u20130x0A53: 0x55B, 0x55B, 0x551, 0x553\n#_038F7E: db $FE, $FE, $E6, $3A : db $22, $25 ; 0x0A54\u20130x0A57: 0x2FE, 0x2FE, 0x5E6, 0x23A\n#_038F84: db $64, $65, $28, $4A : db $55, $55 ; 0x0A58\u20130x0A5B: 0x564, 0x565, 0x528, 0x54A\n#_038F8A: db $FE, $29, $29, $55 : db $23, $35 ; 0x0A5C\u20130x0A5F: 0x3FE, 0x229, 0x529, 0x355\n#_038F90: db $67, $67, $E6, $53 : db $55, $25 ; 0x0A60\u20130x0A63: 0x567, 0x567, 0x5E6, 0x253\n#_038F96: db $FE, $E6, $58, $EC : db $22, $52 ; 0x0A64\u20130x0A67: 0x2FE, 0x2E6, 0x258, 0x5EC\n#_038F9C: db $EC, $54, $71, $E6 : db $25, $52 ; 0x0A68\u20130x0A6B: 0x5EC, 0x254, 0x271, 0x5E6\n#_038FA2: db $EC, $FE, $E6, $3A : db $22, $25 ; 0x0A6C\u20130x0A6F: 0x2EC, 0x2FE, 0x5E6, 0x23A\n#_038FA8: db $58, $E1, $E1, $75 : db $52, $25 ; 0x0A70\u20130x0A73: 0x258, 0x5E1, 0x5E1, 0x275\n#_038FAE: db $E6, $3A, $3A, $3A : db $25, $55 ; 0x0A74\u20130x0A77: 0x5E6, 0x23A, 0x53A, 0x53A\n#_038FB4: db $E6, $3A, $3A, $58 : db $25, $55 ; 0x0A78\u20130x0A7B: 0x5E6, 0x23A, 0x53A, 0x558\n#_038FBA: db $78, $58, $59, $28 : db $55, $55 ; 0x0A7C\u20130x0A7F: 0x578, 0x558, 0x559, 0x528\n#_038FC0: db $17, $65, $66, $5B : db $31, $11 ; 0x0A80\u20130x0A83: 0x117, 0x365, 0x166, 0x15B\n#_038FC6: db $2E, $2E, $3D, $28 : db $55, $55 ; 0x0A84\u20130x0A87: 0x52E, 0x52E, 0x53D, 0x528\n#_038FCC: db $3E, $C6, $83, $DC : db $50, $10 ; 0x0A88\u20130x0A8B: 0x03E, 0x5C6, 0x083, 0x1DC\n#_038FD2: db $79, $C9, $7A, $7B : db $50, $55 ; 0x0A8C\u20130x0A8F: 0x079, 0x5C9, 0x57A, 0x57B\n#_038FD8: db $7B, $7B, $7B, $7C : db $55, $55 ; 0x0A90\u20130x0A93: 0x57B, 0x57B, 0x57B, 0x57C\n#_038FDE: db $53, $87, $36, $29 : db $13, $55 ; 0x0A94\u20130x0A97: 0x353, 0x187, 0x536, 0x529\n#_038FE4: db $84, $85, $87, $86 : db $55, $55 ; 0x0A98\u20130x0A9B: 0x584, 0x585, 0x587, 0x586\n#_038FEA: db $88, $89, $85, $E6 : db $55, $52 ; 0x0A9C\u20130x0A9F: 0x588, 0x589, 0x285, 0x5E6\n#_038FF0: db $E6, $39, $90, $91 : db $25, $55 ; 0x0AA0\u20130x0AA3: 0x5E6, 0x239, 0x590, 0x591\n#_038FF6: db $93, $92, $91, $91 : db $55, $55 ; 0x0AA4\u20130x0AA7: 0x593, 0x592, 0x591, 0x591\n#_038FFC: db $E6, $97, $FE, $39 : db $25, $25 ; 0x0AA8\u20130x0AAB: 0x5E6, 0x297, 0x5FE, 0x239\n#_039002: db $29, $99, $6D, $9A : db $55, $55 ; 0x0AAC\u20130x0AAF: 0x529, 0x599, 0x56D, 0x59A\n#_039008: db $91, $91, $9A, $6D : db $55, $55 ; 0x0AB0\u20130x0AB3: 0x591, 0x591, 0x59A, 0x56D\n#_03900E: db $99, $C4, $C4, $58 : db $50, $05 ; 0x0AB4\u20130x0AB7: 0x099, 0x5C4, 0x5C4, 0x058\n#_039014: db $A2, $A2, $76, $99 : db $55, $55 ; 0x0AB8\u20130x0ABB: 0x5A2, 0x5A2, 0x576, 0x599\n#_03901A: db $99, $C4, $C4, $6D : db $50, $05 ; 0x0ABC\u20130x0ABF: 0x099, 0x5C4, 0x5C4, 0x06D\n#_039020: db $6D, $6D, $6D, $90 : db $55, $55 ; 0x0AC0\u20130x0AC3: 0x56D, 0x56D, 0x56D, 0x590\n#_039026: db $6D, $6D, $84, $7D : db $55, $55 ; 0x0AC4\u20130x0AC7: 0x56D, 0x56D, 0x584, 0x57D\n#_03902C: db $2A, $84, $A8, $A5 : db $55, $55 ; 0x0AC8\u20130x0ACB: 0x52A, 0x584, 0x5A8, 0x5A5\n#_039032: db $2F, $2F, $A3, $A9 : db $55, $55 ; 0x0ACC\u20130x0ACF: 0x52F, 0x52F, 0x5A3, 0x5A9\n#_039038: db $29, $6D, $87, $33 : db $55, $35 ; 0x0AD0\u20130x0AD3: 0x529, 0x56D, 0x587, 0x333\n#_03903E: db $33, $87, $36, $E5 : db $53, $52 ; 0x0AD4\u20130x0AD7: 0x333, 0x587, 0x236, 0x5E5\n#_039044: db $3A, $6D, $FE, $37 : db $55, $25 ; 0x0AD8\u20130x0ADB: 0x53A, 0x56D, 0x5FE, 0x237\n#_03904A: db $39, $3C, $2C, $58 : db $55, $55 ; 0x0ADC\u20130x0ADF: 0x539, 0x53C, 0x52C, 0x558\n#_039050: db $76, $33, $DC, $33 : db $55, $05 ; 0x0AE0\u20130x0AE3: 0x576, 0x533, 0x5DC, 0x033\n#_039056: db $87, $47, $47, $47 : db $35, $55 ; 0x0AE4\u20130x0AE7: 0x587, 0x347, 0x547, 0x547\n#_03905C: db $3A, $EC, $E6, $E6 : db $52, $22 ; 0x0AE8\u20130x0AEB: 0x23A, 0x5EC, 0x2E6, 0x2E6\n#_039062: db $29, $87, $C4, $2A : db $53, $05 ; 0x0AEC\u20130x0AEF: 0x329, 0x587, 0x5C4, 0x02A\n#_039068: db $E6, $35, $E5, $39 : db $25, $25 ; 0x0AF0\u20130x0AF3: 0x5E6, 0x235, 0x5E5, 0x239\n#_03906E: db $7D, $28, $2F, $36 : db $55, $55 ; 0x0AF4\u20130x0AF7: 0x57D, 0x528, 0x52F, 0x536\n#_039074: db $51, $87, $DC, $30 : db $53, $05 ; 0x0AF8\u20130x0AFB: 0x351, 0x587, 0x5DC, 0x030\n#_03907A: db $87, $87, $33, $41 : db $33, $55 ; 0x0AFC\u20130x0AFF: 0x387, 0x387, 0x533, 0x541\n#_039080: db $2A, $87, $2A, $F6 : db $53, $53 ; 0x0B00\u20130x0B03: 0x32A, 0x587, 0x32A, 0x5F6\n#_039086: db $36, $CA, $C6, $C9 : db $03, $33 ; 0x0B04\u20130x0B07: 0x336, 0x0CA, 0x3C6, 0x3C9\n#_03908C: db $CC, $CB, $CC, $34 : db $33, $30 ; 0x0B08\u20130x0B0B: 0x3CC, 0x3CB, 0x0CC, 0x334\n#_039092: db $34, $34, $34, $B1 : db $00, $05 ; 0x0B0C\u20130x0B0F: 0x034, 0x034, 0x534, 0x0B1\n#_039098: db $B3, $B4, $E9, $EC : db $55, $00 ; 0x0B10\u20130x0B13: 0x5B3, 0x5B4, 0x0E9, 0x0EC\n#_03909E: db $F6, $34, $34, $34 : db $30, $00 ; 0x0B14\u20130x0B17: 0x0F6, 0x334, 0x034, 0x034\n#_0390A4: db $B8, $BA, $BB, $F3 : db $55, $50 ; 0x0B18\u20130x0B1B: 0x5B8, 0x5BA, 0x0BB, 0x5F3\n#_0390AA: db $F0, $CF, $D1, $34 : db $03, $33 ; 0x0B1C\u20130x0B1F: 0x3F0, 0x0CF, 0x3D1, 0x334\n#_0390B0: db $D0, $F9, $FB, $FD : db $30, $00 ; 0x0B20\u20130x0B23: 0x0D0, 0x3F9, 0x0FB, 0x0FD\n#_0390B6: db $FF, $1F, $36, $27 : db $04, $04 ; 0x0B24\u20130x0B27: 0x4FF, 0x01F, 0x436, 0x027\n#_0390BC: db $CA, $CA, $EB, $CF : db $33, $33 ; 0x0B28\u20130x0B2B: 0x3CA, 0x3CA, 0x3EB, 0x3CF\n#_0390C2: db $D0, $D0, $D0, $C7 : db $33, $35 ; 0x0B2C\u20130x0B2F: 0x3D0, 0x3D0, 0x5D0, 0x3C7\n#_0390C8: db $C8, $EC, $C9, $C9 : db $53, $55 ; 0x0B30\u20130x0B33: 0x3C8, 0x5EC, 0x5C9, 0x5C9\n#_0390CE: db $E9, $EA, $EC, $34 : db $00, $00 ; 0x0B34\u20130x0B37: 0x0E9, 0x0EA, 0x0EC, 0x034\n#_0390D4: db $36, $36, $A9, $C6 : db $00, $00 ; 0x0B38\u20130x0B3B: 0x036, 0x036, 0x0A9, 0x0C6\n#_0390DA: db $F3, $F6, $A8, $EE : db $00, $00 ; 0x0B3C\u20130x0B3F: 0x0F3, 0x0F6, 0x0A8, 0x0EE\n#_0390E0: db $EF, $36, $36, $36 : db $00, $00 ; 0x0B40\u20130x0B43: 0x0EF, 0x036, 0x036, 0x036\n#_0390E6: db $AD, $A5, $34, $15 : db $00, $04 ; 0x0B44\u20130x0B47: 0x0AD, 0x0A5, 0x434, 0x015\n#_0390EC: db $D9, $35, $C3, $7B : db $04, $50 ; 0x0B48\u20130x0B4B: 0x4D9, 0x035, 0x0C3, 0x57B\n#_0390F2: db $F2, $19, $18, $AF : db $02, $20 ; 0x0B4C\u20130x0B4F: 0x2F2, 0x019, 0x018, 0x2AF\n#_0390F8: db $38, $34, $34, $AB : db $33, $00 ; 0x0B50\u20130x0B53: 0x338, 0x334, 0x034, 0x0AB\n#_0390FE: db $C6, $71, $58, $34 : db $01, $10 ; 0x0B54\u20130x0B57: 0x1C6, 0x071, 0x058, 0x134\n#_039104: db $1E, $1D, $C7, $C8 : db $00, $55 ; 0x0B58\u20130x0B5B: 0x01E, 0x01D, 0x5C7, 0x5C8\n#_03910A: db $C8, $C8, $C6, $AA : db $55, $00 ; 0x0B5C\u20130x0B5F: 0x5C8, 0x5C8, 0x0C6, 0x0AA\n#_039110: db $5B, $C6, $D2, $D2 : db $13, $33 ; 0x0B60\u20130x0B63: 0x35B, 0x1C6, 0x3D2, 0x3D2\n#_039116: db $C6, $CA, $CA, $CD : db $33, $33 ; 0x0B64\u20130x0B67: 0x3C6, 0x3CA, 0x3CA, 0x3CD\n#_03911C: db $CA, $26, $26, $26 : db $34, $44 ; 0x0B68\u20130x0B6B: 0x4CA, 0x326, 0x426, 0x426\n#_039122: db $CE, $34, $34, $34 : db $30, $00 ; 0x0B6C\u20130x0B6F: 0x0CE, 0x334, 0x034, 0x034\n#_039128: db $34, $F6, $CB, $CD : db $03, $55 ; 0x0B70\u20130x0B73: 0x334, 0x0F6, 0x5CB, 0x5CD\n#_03912E: db $B0, $9D, $CE, $36 : db $52, $30 ; 0x0B74\u20130x0B77: 0x2B0, 0x59D, 0x0CE, 0x336\n#_039134: db $B6, $B3, $B5, $F6 : db $55, $53 ; 0x0B78\u20130x0B7B: 0x5B6, 0x5B3, 0x3B5, 0x5F6\n#_03913A: db $B9, $BA, $BC, $36 : db $55, $50 ; 0x0B7C\u20130x0B7F: 0x5B9, 0x5BA, 0x0BC, 0x536\n#_039140: db $BE, $C0, $C1, $F6 : db $55, $53 ; 0x0B80\u20130x0B83: 0x5BE, 0x5C0, 0x3C1, 0x5F6\n#_039146: db $35, $FC, $C3, $CE : db $40, $53 ; 0x0B84\u20130x0B87: 0x035, 0x4FC, 0x3C3, 0x5CE\n#_03914C: db $54, $CE, $34, $34 : db $23, $00 ; 0x0B88\u20130x0B8B: 0x354, 0x2CE, 0x034, 0x034\n#_039152: db $F6, $9D, $CE, $34 : db $32, $33 ; 0x0B8C\u20130x0B8F: 0x2F6, 0x39D, 0x3CE, 0x334\n#_039158: db $34, $D1, $CA, $EA : db $03, $33 ; 0x0B90\u20130x0B93: 0x334, 0x0D1, 0x3CA, 0x3EA\n#_03915E: db $34, $34, $CA, $CA : db $33, $33 ; 0x0B94\u20130x0B97: 0x334, 0x334, 0x3CA, 0x3CA\n#_039164: db $CA, $CA, $CA, $CA : db $33, $33 ; 0x0B98\u20130x0B9B: 0x3CA, 0x3CA, 0x3CA, 0x3CA\n#_03916A: db $F7, $CE, $D0, $D0 : db $23, $33 ; 0x0B9C\u20130x0B9F: 0x3F7, 0x2CE, 0x3D0, 0x3D0\n#_039170: db $34, $CF, $D0, $D1 : db $03, $33 ; 0x0BA0\u20130x0BA3: 0x334, 0x0CF, 0x3D0, 0x3D1\n#_039176: db $CE, $34, $CE, $1E : db $30, $31 ; 0x0BA4\u20130x0BA7: 0x0CE, 0x334, 0x1CE, 0x31E\n#_03917C: db $CE, $B1, $D5, $B4 : db $35, $55 ; 0x0BA8\u20130x0BAB: 0x5CE, 0x3B1, 0x5D5, 0x5B4\n#_039182: db $36, $36, $CE, $A8 : db $00, $30 ; 0x0BAC\u20130x0BAF: 0x036, 0x036, 0x0CE, 0x3A8\n#_039188: db $CE, $CE, $04, $CE : db $33, $23 ; 0x0BB0\u20130x0BB3: 0x3CE, 0x3CE, 0x304, 0x2CE\n#_03918E: db $D9, $CA, $D8, $34 : db $03, $50 ; 0x0BB4\u20130x0BB7: 0x3D9, 0x0CA, 0x0D8, 0x534\n#_039194: db $38, $38, $DA, $C9 : db $33, $53 ; 0x0BB8\u20130x0BBB: 0x338, 0x338, 0x3DA, 0x5C9\n#_03919A: db $CE, $34, $34, $CE : db $33, $33 ; 0x0BBC\u20130x0BBF: 0x3CE, 0x334, 0x334, 0x3CE\n#_0391A0: db $DC, $DE, $E0, $E7 : db $55, $55 ; 0x0BC0\u20130x0BC3: 0x5DC, 0x5DE, 0x5E0, 0x5E7\n#_0391A6: db $E9, $EA, $EC, $79 : db $55, $51 ; 0x0BC4\u20130x0BC7: 0x5E9, 0x5EA, 0x1EC, 0x579\n#_0391AC: db $C4, $A8, $D8, $D9 : db $00, $00 ; 0x0BC8\u20130x0BCB: 0x0C4, 0x0A8, 0x0D8, 0x0D9\n#_0391B2: db $7C, $ED, $C4, $34 : db $05, $00 ; 0x0BCC\u20130x0BCF: 0x57C, 0x0ED, 0x0C4, 0x034\n#_0391B8: db $EE, $EE, $34, $D9 : db $00, $00 ; 0x0BD0\u20130x0BD3: 0x0EE, 0x0EE, 0x034, 0x0D9\n#_0391BE: db $34, $F2, $FC, $F4 : db $35, $05 ; 0x0BD4\u20130x0BD7: 0x534, 0x3F2, 0x5FC, 0x0F4\n#_0391C4: db $C8, $C9, $C9, $C9 : db $00, $00 ; 0x0BD8\u20130x0BDB: 0x0C8, 0x0C9, 0x0C9, 0x0C9\n#_0391CA: db $F5, $34, $F6, $1B : db $50, $52 ; 0x0BDC\u20130x0BDF: 0x0F5, 0x534, 0x2F6, 0x51B\n#_0391D0: db $C9, $D4, $D3, $34 : db $02, $03 ; 0x0BE0\u20130x0BE3: 0x2C9, 0x0D4, 0x3D3, 0x034\n#_0391D6: db $A8, $F2, $F8, $6C : db $03, $51 ; 0x0BE4\u20130x0BE7: 0x3A8, 0x0F2, 0x1F8, 0x56C\n#_0391DC: db $E4, $A0, $8B, $71 : db $23, $00 ; 0x0BE8\u20130x0BEB: 0x3E4, 0x2A0, 0x08B, 0x071\n#_0391E2: db $E3, $F2, $E3, $34 : db $03, $00 ; 0x0BEC\u20130x0BEF: 0x3E3, 0x0F2, 0x0E3, 0x034\n#_0391E8: db $34, $34, $EF, $A3 : db $33, $10 ; 0x0BF0\u20130x0BF3: 0x334, 0x334, 0x0EF, 0x1A3\n#_0391EE: db $A5, $E5, $34, $A3 : db $13, $00 ; 0x0BF4\u20130x0BF7: 0x3A5, 0x1E5, 0x034, 0x0A3\n#_0391F4: db $A5, $A5, $A5, $A7 : db $11, $00 ; 0x0BF8\u20130x0BFB: 0x1A5, 0x1A5, 0x0A5, 0x0A7\n#_0391FA: db $35, $26, $A7, $C5 : db $04, $05 ; 0x0BFC\u20130x0BFF: 0x435, 0x026, 0x5A7, 0x0C5\n#_039200: db $34, $34, $71, $38 : db $00, $03 ; 0x0C00\u20130x0C03: 0x034, 0x034, 0x371, 0x038\n#_039206: db $38, $34, $9D, $34 : db $30, $20 ; 0x0C04\u20130x0C07: 0x038, 0x334, 0x09D, 0x234\n#_03920C: db $35, $1E, $9D, $1D : db $01, $20 ; 0x0C08\u20130x0C0B: 0x135, 0x01E, 0x09D, 0x21D\n#_039212: db $36, $89, $DA, $DA : db $00, $00 ; 0x0C0C\u20130x0C0F: 0x036, 0x089, 0x0DA, 0x0DA\n#_039218: db $DA, $34, $BE, $34 : db $00, $40 ; 0x0C10\u20130x0C13: 0x0DA, 0x034, 0x0BE, 0x434\n#_03921E: db $4E, $9D, $34, $A7 : db $44, $04 ; 0x0C14\u20130x0C17: 0x44E, 0x49D, 0x434, 0x0A7\n#_039224: db $B7, $6F, $FE, $FE : db $44, $55 ; 0x0C18\u20130x0C1B: 0x4B7, 0x46F, 0x5FE, 0x5FE\n#_03922A: db $9D, $AE, $34, $84 : db $44, $04 ; 0x0C1C\u20130x0C1F: 0x49D, 0x4AE, 0x434, 0x084\n#_039230: db $8B, $8B, $86, $02 : db $44, $46 ; 0x0C20\u20130x0C23: 0x48B, 0x48B, 0x686, 0x402\n#_039236: db $04, $34, $79, $62 : db $60, $44 ; 0x0C24\u20130x0C27: 0x004, 0x634, 0x479, 0x462\n#_03923C: db $6F, $9B, $0A, $CD : db $44, $62 ; 0x0C28\u20130x0C2B: 0x46F, 0x49B, 0x20A, 0x6CD\n#_039242: db $34, $57, $C1, $37 : db $04, $42 ; 0x0C2C\u20130x0C2F: 0x434, 0x057, 0x2C1, 0x437\n#_039248: db $E1, $36, $36, $9A : db $00, $04 ; 0x0C30\u20130x0C33: 0x0E1, 0x036, 0x436, 0x09A\n#_03924E: db $54, $C4, $0D, $C8 : db $44, $60 ; 0x0C34\u20130x0C37: 0x454, 0x4C4, 0x00D, 0x6C8\n#_039254: db $F5, $38, $0E, $10 : db $53, $66 ; 0x0C38\u20130x0C3B: 0x3F5, 0x538, 0x60E, 0x610\n#_03925A: db $DC, $CD, $27, $10 : db $22, $36 ; 0x0C3C\u20130x0C3F: 0x2DC, 0x2CD, 0x627, 0x310\n#_039260: db $6D, $38, $38, $38 : db $43, $33 ; 0x0C40\u20130x0C43: 0x36D, 0x438, 0x338, 0x338\n#_039266: db $08, $7E, $7E, $7E : db $13, $33 ; 0x0C44\u20130x0C47: 0x308, 0x17E, 0x37E, 0x37E\n#_03926C: db $7E, $7E, $34, $1E : db $33, $00 ; 0x0C48\u20130x0C4B: 0x37E, 0x37E, 0x034, 0x01E\n#_039272: db $F0, $34, $34, $B2 : db $40, $04 ; 0x0C4C\u20130x0C4F: 0x0F0, 0x434, 0x434, 0x0B2\n#_039278: db $AD, $36, $8F, $F0 : db $40, $40 ; 0x0C50\u20130x0C53: 0x0AD, 0x436, 0x08F, 0x4F0\n#_03927E: db $CD, $B2, $AD, $B7 : db $24, $44 ; 0x0C54\u20130x0C57: 0x4CD, 0x2B2, 0x4AD, 0x4B7\n#_039284: db $B8, $B9, $54, $19 : db $44, $26 ; 0x0C58\u20130x0C5B: 0x4B8, 0x4B9, 0x654, 0x219\n#_03928A: db $87, $8B, $26, $F2 : db $44, $11 ; 0x0C5C\u20130x0C5F: 0x487, 0x48B, 0x126, 0x1F2\n#_039290: db $27, $0A, $1D, $8F : db $36, $64 ; 0x0C60\u20130x0C63: 0x627, 0x30A, 0x41D, 0x68F\n#_039296: db $97, $37, $0B, $B2 : db $43, $14 ; 0x0C64\u20130x0C67: 0x397, 0x437, 0x40B, 0x1B2\n#_03929C: db $AD, $74, $0B, $F0 : db $44, $60 ; 0x0C68\u20130x0C6B: 0x4AD, 0x474, 0x00B, 0x6F0\n#_0392A2: db $34, $74, $34, $AD : db $03, $04 ; 0x0C6C\u20130x0C6F: 0x334, 0x074, 0x434, 0x0AD\n#_0392A8: db $54, $54, $C5, $34 : db $44, $40 ; 0x0C70\u20130x0C73: 0x454, 0x454, 0x0C5, 0x434\n#_0392AE: db $36, $34, $E2, $34 : db $00, $40 ; 0x0C74\u20130x0C77: 0x036, 0x034, 0x0E2, 0x434\n#_0392B4: db $1F, $AD, $0B, $1F : db $64, $16 ; 0x0C78\u20130x0C7B: 0x41F, 0x6AD, 0x60B, 0x11F\n#_0392BA: db $50, $AD, $DC, $AD : db $14, $24 ; 0x0C7C\u20130x0C7F: 0x450, 0x1AD, 0x4DC, 0x2AD\n#_0392C0: db $27, $27, $7C, $38 : db $33, $13 ; 0x0C80\u20130x0C83: 0x327, 0x327, 0x37C, 0x138\n#_0392C6: db $38, $38, $0B, $34 : db $33, $12 ; 0x0C84\u20130x0C87: 0x338, 0x338, 0x20B, 0x134\n#_0392CC: db $A5, $A5, $A5, $A5 : db $00, $00 ; 0x0C88\u20130x0C8B: 0x0A5, 0x0A5, 0x0A5, 0x0A5\n#_0392D2: db $A5, $C4, $0F, $37 : db $01, $23 ; 0x0C8C\u20130x0C8F: 0x1A5, 0x0C4, 0x30F, 0x237\n#_0392D8: db $34, $36, $A9, $A0 : db $20, $00 ; 0x0C90\u20130x0C93: 0x034, 0x236, 0x0A9, 0x0A0\n#_0392DE: db $C4, $E6, $EE, $C9 : db $12, $20 ; 0x0C94\u20130x0C97: 0x2C4, 0x1E6, 0x0EE, 0x2C9\n#_0392E4: db $C9, $42, $E6, $E6 : db $05, $22 ; 0x0C98\u20130x0C9B: 0x5C9, 0x042, 0x2E6, 0x2E6\n#_0392EA: db $29, $29, $EC, $A8 : db $55, $25 ; 0x0C9C\u20130x0C9F: 0x529, 0x529, 0x5EC, 0x2A8\n#_0392F0: db $3A, $3B, $37, $28 : db $55, $55 ; 0x0CA0\u20130x0CA3: 0x53A, 0x53B, 0x537, 0x528\n#_0392F6: db $2A, $3A, $A6, $32 : db $55, $55 ; 0x0CA4\u20130x0CA7: 0x52A, 0x53A, 0x5A6, 0x532\n#_0392FC: db $2A, $3A, $35, $37 : db $55, $55 ; 0x0CA8\u20130x0CAB: 0x52A, 0x53A, 0x535, 0x537\n#_039302: db $A8, $37, $29, $E6 : db $55, $32 ; 0x0CAC\u20130x0CAF: 0x5A8, 0x537, 0x229, 0x3E6\n#_039308: db $E6, $EC, $E6, $E6 : db $22, $22 ; 0x0CB0\u20130x0CB3: 0x2E6, 0x2EC, 0x2E6, 0x2E6\n#_03930E: db $E6, $E6, $E6, $E6 : db $22, $22 ; 0x0CB4\u20130x0CB7: 0x2E6, 0x2E6, 0x2E6, 0x2E6\n#_039314: db $37, $33, $33, $C9 : db $55, $50 ; 0x0CB8\u20130x0CBB: 0x537, 0x533, 0x033, 0x5C9\n#_03931A: db $33, $C9, $41, $2A : db $50, $55 ; 0x0CBC\u20130x0CBF: 0x033, 0x5C9, 0x541, 0x52A\n#_039320: db $26, $33, $34, $38 : db $55, $55 ; 0x0CC0\u20130x0CC3: 0x526, 0x533, 0x534, 0x538\n#_039326: db $38, $3A, $22, $34 : db $55, $60 ; 0x0CC4\u20130x0CC7: 0x538, 0x53A, 0x022, 0x634\n#_03932C: db $38, $38, $35, $CE : db $55, $00 ; 0x0CC8\u20130x0CCB: 0x538, 0x538, 0x035, 0x0CE\n#_039332: db $E6, $29, $C9, $2B : db $25, $06 ; 0x0CCC\u20130x0CCF: 0x5E6, 0x229, 0x6C9, 0x02B\n#_039338: db $2D, $2F, $30, $2A : db $66, $65 ; 0x0CD0\u20130x0CD3: 0x62D, 0x62F, 0x530, 0x62A\n#_03933E: db $37, $38, $3A, $3C : db $66, $66 ; 0x0CD4\u20130x0CD7: 0x637, 0x638, 0x63A, 0x63C\n#_039344: db $3D, $CE, $E6, $3A : db $60, $25 ; 0x0CD8\u20130x0CDB: 0x03D, 0x6CE, 0x5E6, 0x23A\n#_03934A: db $E6, $E6, $2A, $55 : db $22, $53 ; 0x0CDC\u20130x0CDF: 0x2E6, 0x2E6, 0x32A, 0x555\n#_039350: db $30, $D4, $C9, $85 : db $60, $01 ; 0x0CE0\u20130x0CE3: 0x030, 0x6D4, 0x1C9, 0x085\n#_039356: db $C9, $ED, $6A, $38 : db $01, $16 ; 0x0CE4\u20130x0CE7: 0x1C9, 0x0ED, 0x66A, 0x138\n#_03935C: db $3A, $3C, $3D, $34 : db $66, $60 ; 0x0CE8\u20130x0CEB: 0x63A, 0x63C, 0x03D, 0x634\n#_039362: db $35, $71, $36, $58 : db $00, $21 ; 0x0CEC\u20130x0CEF: 0x035, 0x071, 0x136, 0x258\n#_039368: db $D4, $19, $04, $6A : db $12, $11 ; 0x0CF0\u20130x0CF3: 0x2D4, 0x119, 0x104, 0x16A\n#_03936E: db $07, $85, $85, $2A : db $13, $35 ; 0x0CF4\u20130x0CF7: 0x307, 0x185, 0x585, 0x32A\n#_039374: db $39, $3B, $3C, $2E : db $55, $55 ; 0x0CF8\u20130x0CFB: 0x539, 0x53B, 0x53C, 0x52E\n#_03937A: db $2F, $87, $DC, $DC : db $53, $00 ; 0x0CFC\u20130x0CFF: 0x32F, 0x587, 0x0DC, 0x0DC\n#_039380: db $33, $E6, $2D, $28 : db $52, $55 ; 0x0D00\u20130x0D03: 0x233, 0x5E6, 0x52D, 0x528\n#_039386: db $27, $E3, $36, $E6 : db $50, $52 ; 0x0D04\u20130x0D07: 0x027, 0x5E3, 0x236, 0x5E6\n#_03938C: db $3B, $FE, $E6, $27 : db $52, $25 ; 0x0D08\u20130x0D0B: 0x23B, 0x5FE, 0x5E6, 0x227\n#_039392: db $E6, $EC, $6A, $34 : db $22, $10 ; 0x0D0C\u20130x0D0F: 0x2E6, 0x2EC, 0x06A, 0x134\n#_039398: db $CE, $EC, $2A, $FA : db $02, $51 ; 0x0D10\u20130x0D13: 0x2CE, 0x0EC, 0x12A, 0x5FA\n#_03939E: db $CE, $29, $3D, $41 : db $03, $56 ; 0x0D14\u20130x0D17: 0x3CE, 0x029, 0x63D, 0x541\n#_0393A4: db $34, $34, $5B, $E3 : db $00, $10 ; 0x0D18\u20130x0D1B: 0x034, 0x034, 0x05B, 0x1E3\n#_0393AA: db $34, $68, $6C, $CE : db $03, $30 ; 0x0D1C\u20130x0D1F: 0x334, 0x068, 0x06C, 0x3CE\n#_0393B0: db $22, $41, $34, $44 : db $66, $06 ; 0x0D20\u20130x0D23: 0x622, 0x641, 0x634, 0x044\n#_0393B6: db $46, $45, $47, $72 : db $66, $63 ; 0x0D24\u20130x0D27: 0x646, 0x645, 0x347, 0x672\n#_0393BC: db $79, $42, $34, $4E : db $36, $06 ; 0x0D28\u20130x0D2B: 0x679, 0x342, 0x634, 0x04E\n#_0393C2: db $50, $4F, $51, $CE : db $66, $60 ; 0x0D2C\u20130x0D2F: 0x650, 0x64F, 0x051, 0x6CE\n#_0393C8: db $41, $34, $69, $6B : db $60, $33 ; 0x0D30\u20130x0D33: 0x041, 0x634, 0x369, 0x36B\n#_0393CE: db $58, $34, $59, $73 : db $60, $61 ; 0x0D34\u20130x0D37: 0x058, 0x634, 0x159, 0x673\n#_0393D4: db $73, $5B, $41, $76 : db $16, $63 ; 0x0D38\u20130x0D3B: 0x673, 0x15B, 0x341, 0x676\n#_0393DA: db $5E, $60, $62, $62 : db $66, $66 ; 0x0D3C\u20130x0D3F: 0x65E, 0x660, 0x662, 0x662\n#_0393E0: db $62, $62, $62, $62 : db $66, $66 ; 0x0D40\u20130x0D43: 0x662, 0x662, 0x662, 0x662\n#_0393E6: db $42, $34, $4E, $50 : db $60, $66 ; 0x0D44\u20130x0D47: 0x042, 0x634, 0x64E, 0x650\n#_0393EC: db $35, $C9, $C9, $87 : db $00, $00 ; 0x0D48\u20130x0D4B: 0x035, 0x0C9, 0x0C9, 0x087\n#_0393F2: db $86, $34, $30, $34 : db $00, $50 ; 0x0D4C\u20130x0D4F: 0x086, 0x034, 0x030, 0x534\n#_0393F8: db $04, $D5, $67, $C6 : db $11, $60 ; 0x0D50\u20130x0D53: 0x104, 0x1D5, 0x067, 0x6C6\n#_0393FE: db $40, $6A, $7C, $68 : db $61, $16 ; 0x0D54\u20130x0D57: 0x140, 0x66A, 0x67C, 0x168\n#_039404: db $E6, $83, $58, $E6 : db $20, $12 ; 0x0D58\u20130x0D5B: 0x0E6, 0x283, 0x258, 0x1E6\n#_03940A: db $5B, $34, $58, $34 : db $10, $10 ; 0x0D5C\u20130x0D5F: 0x05B, 0x134, 0x058, 0x134\n#_039410: db $34, $34, $36, $36 : db $00, $00 ; 0x0D60\u20130x0D63: 0x034, 0x034, 0x036, 0x036\n#_039416: db $85, $5B, $34, $9D : db $31, $02 ; 0x0D64\u20130x0D67: 0x185, 0x35B, 0x234, 0x09D\n#_03941C: db $36, $36, $34, $36 : db $00, $00 ; 0x0D68\u20130x0D6B: 0x036, 0x036, 0x034, 0x036\n#_039422: db $78, $E6, $36, $34 : db $12, $00 ; 0x0D6C\u20130x0D6F: 0x278, 0x1E6, 0x036, 0x034\n#_039428: db $01, $34, $34, $34 : db $10, $00 ; 0x0D70\u20130x0D73: 0x001, 0x134, 0x034, 0x034\n#_03942E: db $34, $34, $42, $8B : db $00, $53 ; 0x0D74\u20130x0D77: 0x034, 0x034, 0x342, 0x58B\n#_039434: db $34, $34, $6B, $36 : db $00, $60 ; 0x0D78\u20130x0D7B: 0x034, 0x034, 0x06B, 0x636\n#_03943A: db $9D, $36, $6C, $36 : db $20, $60 ; 0x0D7C\u20130x0D7F: 0x09D, 0x236, 0x06C, 0x636\n#_039440: db $E6, $86, $F2, $34 : db $21, $00 ; 0x0D80\u20130x0D83: 0x1E6, 0x286, 0x0F2, 0x034\n#_039446: db $34, $36, $34, $9D : db $00, $02 ; 0x0D84\u20130x0D87: 0x034, 0x036, 0x234, 0x09D\n#_03944C: db $0B, $36, $86, $8F : db $10, $10 ; 0x0D88\u20130x0D8B: 0x00B, 0x136, 0x086, 0x18F\n#_039452: db $F6, $F6, $34, $0A : db $55, $01 ; 0x0D8C\u20130x0D8F: 0x5F6, 0x5F6, 0x134, 0x00A\n#_039458: db $34, $34, $F8, $F9 : db $00, $33 ; 0x0D90\u20130x0D93: 0x034, 0x034, 0x3F8, 0x3F9\n#_03945E: db $6D, $37, $36, $FD : db $63, $03 ; 0x0D94\u20130x0D97: 0x36D, 0x637, 0x336, 0x0FD\n#_039464: db $6F, $60, $EB, $34 : db $61, $10 ; 0x0D98\u20130x0D9B: 0x16F, 0x660, 0x0EB, 0x134\n#_03946A: db $36, $0B, $0D, $C6 : db $04, $40 ; 0x0D9C\u20130x0D9F: 0x436, 0x00B, 0x00D, 0x4C6\n#_039470: db $66, $F5, $35, $34 : db $15, $00 ; 0x0DA0\u20130x0DA3: 0x566, 0x1F5, 0x035, 0x034\n#_039476: db $15, $34, $71, $F8 : db $43, $10 ; 0x0DA4\u20130x0DA7: 0x315, 0x434, 0x071, 0x1F8\n#_03947C: db $E2, $25, $C6, $C6 : db $02, $00 ; 0x0DA8\u20130x0DAB: 0x2E2, 0x025, 0x0C6, 0x0C6\n#_039482: db $34, $79, $71, $A3 : db $01, $00 ; 0x0DAC\u20130x0DAF: 0x134, 0x079, 0x071, 0x0A3\n#_039488: db $79, $34, $1C, $9D : db $10, $00 ; 0x0DB0\u20130x0DB3: 0x079, 0x134, 0x01C, 0x09D\n#_03948E: db $9C, $9B, $9D, $9D : db $00, $00 ; 0x0DB4\u20130x0DB7: 0x09C, 0x09B, 0x09D, 0x09D\n#_039494: db $34, $73, $AE, $D7 : db $02, $23 ; 0x0DB8\u20130x0DBB: 0x234, 0x073, 0x3AE, 0x2D7\n#_03949A: db $D6, $36, $03, $72 : db $30, $46 ; 0x0DBC\u20130x0DBF: 0x0D6, 0x336, 0x603, 0x472\n#_0394A0: db $06, $EB, $9E, $B0 : db $41, $02 ; 0x0DC0\u20130x0DC3: 0x106, 0x4EB, 0x29E, 0x0B0\n#_0394A6: db $DE, $DD, $36, $35 : db $33, $04 ; 0x0DC4\u20130x0DC7: 0x3DE, 0x3DD, 0x436, 0x035\n#_0394AC: db $FC, $C3, $A9, $AC : db $05, $00 ; 0x0DC8\u20130x0DCB: 0x5FC, 0x0C3, 0x0A9, 0x0AC\n#_0394B2: db $D5, $80, $6C, $A3 : db $31, $13 ; 0x0DCC\u20130x0DCF: 0x1D5, 0x380, 0x36C, 0x1A3\n#_0394B8: db $84, $E3, $E3, $E3 : db $10, $00 ; 0x0DD0\u20130x0DD3: 0x084, 0x1E3, 0x0E3, 0x0E3\n#_0394BE: db $6D, $36, $7E, $7E : db $10, $33 ; 0x0DD4\u20130x0DD7: 0x06D, 0x136, 0x37E, 0x37E\n#_0394C4: db $82, $7E, $F0, $F9 : db $33, $03 ; 0x0DD8\u20130x0DDB: 0x382, 0x37E, 0x3F0, 0x0F9\n#_0394CA: db $F9, $FB, $34, $36 : db $33, $03 ; 0x0DDC\u20130x0DDF: 0x3F9, 0x3FB, 0x334, 0x036\n#_0394D0: db $F0, $FE, $FE, $00 : db $03, $34 ; 0x0DE0\u20130x0DE3: 0x3F0, 0x0FE, 0x4FE, 0x300\n#_0394D6: db $34, $36, $34, $7E : db $03, $03 ; 0x0DE4\u20130x0DE7: 0x334, 0x036, 0x334, 0x07E\n#_0394DC: db $14, $34, $0B, $0D : db $40, $44 ; 0x0DE8\u20130x0DEB: 0x014, 0x434, 0x40B, 0x40D\n#_0394E2: db $0E, $34, $74, $77 : db $40, $22 ; 0x0DEC\u20130x0DEF: 0x00E, 0x434, 0x274, 0x277\n#_0394E8: db $34, $B1, $07, $A5 : db $02, $11 ; 0x0DF0\u20130x0DF3: 0x234, 0x0B1, 0x107, 0x1A5\n#_0394EE: db $A9, $C6, $C6, $C4 : db $00, $00 ; 0x0DF4\u20130x0DF7: 0x0A9, 0x0C6, 0x0C6, 0x0C4\n#_0394F4: db $10, $AC, $6C, $34 : db $20, $10 ; 0x0DF8\u20130x0DFB: 0x010, 0x2AC, 0x06C, 0x134\n#_0394FA: db $79, $7A, $C4, $C6 : db $66, $10 ; 0x0DFC\u20130x0DFF: 0x679, 0x67A, 0x0C4, 0x1C6\n#_039500: db $7B, $34, $7C, $DC : db $60, $60 ; 0x0E00\u20130x0E03: 0x07B, 0x634, 0x07C, 0x6DC\n#_039506: db $82, $BC, $84, $C4 : db $62, $61 ; 0x0E04\u20130x0E07: 0x282, 0x6BC, 0x184, 0x6C4\n#_03950C: db $C6, $79, $86, $34 : db $01, $60 ; 0x0E08\u20130x0E0B: 0x1C6, 0x079, 0x086, 0x634\n#_039512: db $87, $34, $E3, $2D : db $60, $01 ; 0x0E0C\u20130x0E0F: 0x087, 0x634, 0x1E3, 0x02D\n#_039518: db $39, $89, $8C, $35 : db $16, $60 ; 0x0E10\u20130x0E13: 0x639, 0x189, 0x08C, 0x635\n#_03951E: db $FD, $A5, $A5, $A5 : db $10, $00 ; 0x0E14\u20130x0E17: 0x0FD, 0x1A5, 0x0A5, 0x0A5\n#_039524: db $34, $81, $80, $8F : db $06, $66 ; 0x0E18\u20130x0E1B: 0x634, 0x081, 0x680, 0x68F\n#_03952A: db $91, $93, $8F, $20 : db $66, $65 ; 0x0E1C\u20130x0E1F: 0x691, 0x693, 0x58F, 0x620\n#_039530: db $95, $9C, $9E, $95 : db $66, $66 ; 0x0E20\u20130x0E23: 0x695, 0x69C, 0x69E, 0x695\n#_039536: db $CD, $DC, $95, $95 : db $22, $66 ; 0x0E24\u20130x0E27: 0x2CD, 0x2DC, 0x695, 0x695\n#_03953C: db $1F, $DC, $95, $CD : db $52, $62 ; 0x0E28\u20130x0E2B: 0x21F, 0x5DC, 0x295, 0x6CD\n#_039542: db $D2, $95, $95, $25 : db $26, $63 ; 0x0E2C\u20130x0E2F: 0x6D2, 0x295, 0x395, 0x625\n#_039548: db $C6, $DA, $A2, $A4 : db $22, $66 ; 0x0E30\u20130x0E33: 0x2C6, 0x2DA, 0x6A2, 0x6A4\n#_03954E: db $A6, $A8, $A4, $90 : db $66, $62 ; 0x0E34\u20130x0E37: 0x6A6, 0x6A8, 0x2A4, 0x690\n#_039554: db $9F, $9F, $C6, $C2 : db $00, $01 ; 0x0E38\u20130x0E3B: 0x09F, 0x09F, 0x1C6, 0x0C2\n#_03955A: db $AD, $C6, $A4, $34 : db $00, $00 ; 0x0E3C\u20130x0E3F: 0x0AD, 0x0C6, 0x0A4, 0x034\n#_039560: db $A9, $65, $65, $65 : db $61, $11 ; 0x0E40\u20130x0E43: 0x1A9, 0x665, 0x165, 0x165\n#_039566: db $66, $C6, $AA, $85 : db $10, $63 ; 0x0E44\u20130x0E47: 0x066, 0x1C6, 0x3AA, 0x685\n#_03956C: db $C6, $53, $AA, $AE : db $01, $06 ; 0x0E48\u20130x0E4B: 0x1C6, 0x053, 0x6AA, 0x0AE\n#_039572: db $AE, $AE, $D1, $83 : db $66, $01 ; 0x0E4C\u20130x0E4F: 0x6AE, 0x6AE, 0x1D1, 0x083\n#_039578: db $57, $AE, $AE, $DC : db $26, $60 ; 0x0E50\u20130x0E53: 0x657, 0x2AE, 0x0AE, 0x6DC\n#_03957E: db $B1, $B3, $B4, $78 : db $66, $61 ; 0x0E54\u20130x0E57: 0x6B1, 0x6B3, 0x1B4, 0x678\n#_039584: db $C9, $E3, $E3, $E3 : db $00, $00 ; 0x0E58\u20130x0E5B: 0x0C9, 0x0E3, 0x0E3, 0x0E3\n#_03958A: db $CC, $83, $78, $AE : db $01, $16 ; 0x0E5C\u20130x0E5F: 0x1CC, 0x083, 0x678, 0x1AE\n#_039590: db $AE, $AE, $34, $0F : db $66, $02 ; 0x0E60\u20130x0E63: 0x6AE, 0x6AE, 0x234, 0x00F\n#_039596: db $34, $A3, $1C, $AE : db $00, $26 ; 0x0E64\u20130x0E67: 0x034, 0x0A3, 0x61C, 0x2AE\n#_03959C: db $EA, $B9, $66, $FF : db $16, $11 ; 0x0E68\u20130x0E6B: 0x6EA, 0x1B9, 0x166, 0x1FF\n#_0395A2: db $34, $62, $B9, $66 : db $01, $61 ; 0x0E6C\u20130x0E6F: 0x134, 0x062, 0x1B9, 0x666\n#_0395A8: db $60, $D5, $C4, $C6 : db $10, $66 ; 0x0E70\u20130x0E73: 0x060, 0x1D5, 0x6C4, 0x6C6\n#_0395AE: db $FF, $C5, $C8, $CA : db $10, $66 ; 0x0E74\u20130x0E77: 0x0FF, 0x1C5, 0x6C8, 0x6CA\n#_0395B4: db $6A, $C4, $E9, $D6 : db $16, $16 ; 0x0E78\u20130x0E7B: 0x66A, 0x1C4, 0x6E9, 0x1D6\n#_0395BA: db $83, $AE, $AE, $D0 : db $16, $60 ; 0x0E7C\u20130x0E7F: 0x683, 0x1AE, 0x0AE, 0x6D0\n#_0395C0: db $D9, $DB, $7F, $E9 : db $66, $11 ; 0x0E80\u20130x0E83: 0x6D9, 0x6DB, 0x17F, 0x1E9\n#_0395C6: db $DC, $83, $AE, $AE : db $61, $66 ; 0x0E84\u20130x0E87: 0x1DC, 0x683, 0x6AE, 0x6AE\n#_0395CC: db $E1, $57, $DE, $C9 : db $62, $60 ; 0x0E88\u20130x0E8B: 0x2E1, 0x657, 0x0DE, 0x6C9\n#_0395D2: db $78, $E6, $E8, $53 : db $16, $61 ; 0x0E8C\u20130x0E8F: 0x678, 0x1E6, 0x1E8, 0x653\n#_0395D8: db $E7, $EA, $DE, $87 : db $66, $63 ; 0x0E90\u20130x0E93: 0x6E7, 0x6EA, 0x3DE, 0x687\n#_0395DE: db $E7, $87, $E9, $AE : db $63, $66 ; 0x0E94\u20130x0E97: 0x3E7, 0x687, 0x6E9, 0x6AE\n#_0395E4: db $E8, $E7, $F2, $F2 : db $66, $66 ; 0x0E98\u20130x0E9B: 0x6E8, 0x6E7, 0x6F2, 0x6F2\n#_0395EA: db $F4, $F6, $F7, $E7 : db $66, $66 ; 0x0E9C\u20130x0E9F: 0x6F4, 0x6F6, 0x6F7, 0x6E7\n#_0395F0: db $F8, $FA, $E8, $EE : db $66, $61 ; 0x0EA0\u20130x0EA3: 0x6F8, 0x6FA, 0x1E8, 0x6EE\n#_0395F6: db $E7, $03, $04, $F8 : db $67, $76 ; 0x0EA4\u20130x0EA7: 0x7E7, 0x603, 0x604, 0x7F8\n#_0395FC: db $1C, $1E, $E6, $29 : db $22, $63 ; 0x0EA8\u20130x0EAB: 0x21C, 0x21E, 0x3E6, 0x629\n#_039602: db $06, $04, $7E, $AE : db $77, $16 ; 0x0EAC\u20130x0EAF: 0x706, 0x704, 0x67E, 0x1AE\n#_039608: db $66, $1E, $0A, $04 : db $12, $77 ; 0x0EB0\u20130x0EB3: 0x266, 0x11E, 0x70A, 0x704\n#_03960E: db $85, $AE, $20, $AE : db $36, $26 ; 0x0EB4\u20130x0EB7: 0x685, 0x3AE, 0x620, 0x2AE\n#_039614: db $AE, $AE, $AE, $20 : db $66, $62 ; 0x0EB8\u20130x0EBB: 0x6AE, 0x6AE, 0x2AE, 0x620\n#_03961A: db $E8, $E7, $0F, $0F : db $66, $77 ; 0x0EBC\u20130x0EBF: 0x6E8, 0x6E7, 0x70F, 0x70F\n#_039620: db $11, $12, $13, $AB : db $77, $70 ; 0x0EC0\u20130x0EC3: 0x711, 0x712, 0x013, 0x7AB\n#_039626: db $D2, $CC, $CC, $CC : db $00, $00 ; 0x0EC4\u20130x0EC7: 0x0D2, 0x0CC, 0x0CC, 0x0CC\n#_03962C: db $C8, $AA, $83, $C8 : db $00, $10 ; 0x0EC8\u20130x0ECB: 0x0C8, 0x0AA, 0x083, 0x1C8\n#_039632: db $AE, $34, $E6, $C8 : db $60, $00 ; 0x0ECC\u20130x0ECF: 0x0AE, 0x634, 0x0E6, 0x0C8\n#_039638: db $D2, $9F, $9F, $E7 : db $00, $06 ; 0x0ED0\u20130x0ED3: 0x0D2, 0x09F, 0x69F, 0x0E7\n#_03963E: db $C5, $E5, $B7, $B7 : db $01, $66 ; 0x0ED4\u20130x0ED7: 0x1C5, 0x0E5, 0x6B7, 0x6B7\n#_039644: db $06, $AE, $29, $1C : db $16, $37 ; 0x0ED8\u20130x0EDB: 0x606, 0x1AE, 0x729, 0x31C\n#_03964A: db $C5, $C9, $E9, $E7 : db $00, $66 ; 0x0EDC\u20130x0EDF: 0x0C5, 0x0C9, 0x6E9, 0x6E7\n#_039650: db $1F, $E9, $AE, $40 : db $71, $66 ; 0x0EE0\u20130x0EE3: 0x11F, 0x7E9, 0x6AE, 0x640\n#_039656: db $85, $AE, $AE, $EF : db $36, $66 ; 0x0EE4\u20130x0EE7: 0x685, 0x3AE, 0x6AE, 0x6EF\n#_03965C: db $22, $C8, $D2, $C8 : db $70, $00 ; 0x0EE8\u20130x0EEB: 0x022, 0x7C8, 0x0D2, 0x0C8\n#_039662: db $24, $C9, $28, $E7 : db $70, $76 ; 0x0EEC\u20130x0EEF: 0x024, 0x7C9, 0x628, 0x7E7\n#_039668: db $C8, $DF, $2A, $E7 : db $00, $76 ; 0x0EF0\u20130x0EF3: 0x0C8, 0x0DF, 0x62A, 0x7E7\n#_03966E: db $2B, $C8, $E6, $E7 : db $70, $06 ; 0x0EF4\u20130x0EF7: 0x02B, 0x7C8, 0x6E6, 0x0E7\n#_039674: db $AE, $E7, $EA, $CA : db $66, $60 ; 0x0EF8\u20130x0EFB: 0x6AE, 0x6E7, 0x0EA, 0x6CA\n#_03967A: db $E7, $FE, $1D, $89 : db $62, $70 ; 0x0EFC\u20130x0EFF: 0x2E7, 0x6FE, 0x01D, 0x789\n#_039680: db $9A, $87, $86, $34 : db $00, $00 ; 0x0F00\u20130x0F03: 0x09A, 0x087, 0x086, 0x034\n#_039686: db $C4, $F8, $18, $C6 : db $10, $20 ; 0x0F04\u20130x0F07: 0x0C4, 0x1F8, 0x018, 0x2C6\n#_03968C: db $7C, $34, $0B, $FF : db $10, $21 ; 0x0F08\u20130x0F0B: 0x07C, 0x134, 0x10B, 0x2FF\n#_039692: db $7C, $36, $34, $7C : db $10, $01 ; 0x0F0C\u20130x0F0F: 0x07C, 0x136, 0x134, 0x07C\n#_039698: db $34, $34, $1C, $6A : db $00, $21 ; 0x0F10\u20130x0F13: 0x034, 0x034, 0x11C, 0x26A\n#_03969E: db $34, $17, $C4, $AB : db $02, $10 ; 0x0F14\u20130x0F17: 0x234, 0x017, 0x0C4, 0x1AB\n#_0396A4: db $A3, $C6, $AA, $C6 : db $00, $00 ; 0x0F18\u20130x0F1B: 0x0A3, 0x0C6, 0x0AA, 0x0C6\n#_0396AA: db $2F, $20, $72, $5E : db $72, $11 ; 0x0F1C\u20130x0F1F: 0x22F, 0x720, 0x172, 0x15E\n#_0396B0: db $60, $71, $C6, $83 : db $10, $01 ; 0x0F20\u20130x0F23: 0x060, 0x171, 0x1C6, 0x083\n#_0396B6: db $E0, $2A, $E6, $06 : db $07, $23 ; 0x0F24\u20130x0F27: 0x7E0, 0x02A, 0x3E6, 0x206\n#_0396BC: db $60, $1C, $E6, $06 : db $12, $23 ; 0x0F28\u20130x0F2B: 0x260, 0x11C, 0x3E6, 0x206\n#_0396C2: db $1C, $17, $AB, $E6 : db $23, $02 ; 0x0F2C\u20130x0F2F: 0x31C, 0x217, 0x2AB, 0x0E6\n#_0396C8: db $E6, $71, $20, $06 : db $21, $31 ; 0x0F30\u20130x0F33: 0x1E6, 0x271, 0x120, 0x306\n#_0396CE: db $C6, $C6, $C6, $5B : db $00, $01 ; 0x0F34\u20130x0F37: 0x0C6, 0x0C6, 0x1C6, 0x05B\n#_0396D4: db $AC, $31, $4F, $4F : db $67, $55 ; 0x0F38\u20130x0F3B: 0x7AC, 0x631, 0x54F, 0x54F\n#_0396DA: db $33, $AB, $30, $71 : db $76, $71 ; 0x0F3C\u20130x0F3F: 0x633, 0x7AB, 0x130, 0x771\n#_0396E0: db $58, $85, $C6, $05 : db $13, $01 ; 0x0F40\u20130x0F43: 0x358, 0x185, 0x1C6, 0x005\n#_0396E6: db $58, $71, $65, $D1 : db $11, $10 ; 0x0F44\u20130x0F47: 0x158, 0x171, 0x065, 0x1D1\n#_0396EC: db $DC, $DD, $C8, $20 : db $00, $05 ; 0x0F48\u20130x0F4B: 0x0DC, 0x0DD, 0x5C8, 0x020\n#_0396F2: db $20, $20, $A9, $AC : db $55, $00 ; 0x0F4C\u20130x0F4F: 0x520, 0x520, 0x0A9, 0x0AC\n#_0396F8: db $C4, $35, $E5, $C8 : db $17, $00 ; 0x0F50\u20130x0F53: 0x7C4, 0x135, 0x0E5, 0x0C8\n#_0396FE: db $C6, $34, $E1, $36 : db $00, $00 ; 0x0F54\u20130x0F57: 0x0C6, 0x034, 0x0E1, 0x036\n#_039704: db $38, $4B, $D1, $34 : db $31, $00 ; 0x0F58\u20130x0F5B: 0x138, 0x34B, 0x0D1, 0x034\n#_03970A: db $34, $34, $4B, $30 : db $00, $17 ; 0x0F5C\u20130x0F5F: 0x034, 0x034, 0x74B, 0x130\n#_039710: db $6A, $37, $39, $3B : db $17, $77 ; 0x0F60\u20130x0F63: 0x76A, 0x137, 0x739, 0x73B\n#_039716: db $34, $34, $EB, $C9 : db $00, $10 ; 0x0F64\u20130x0F67: 0x034, 0x034, 0x0EB, 0x1C9\n#_03971C: db $85, $CD, $20, $6A : db $12, $21 ; 0x0F68\u20130x0F6B: 0x285, 0x1CD, 0x120, 0x26A\n#_039722: db $43, $45, $47, $33 : db $77, $73 ; 0x0F6C\u20130x0F6F: 0x743, 0x745, 0x347, 0x733\n#_039728: db $20, $D0, $DC, $97 : db $52, $23 ; 0x0F70\u20130x0F73: 0x220, 0x5D0, 0x3DC, 0x297\n#_03972E: db $DC, $CD, $6A, $4C : db $22, $17 ; 0x0F74\u20130x0F77: 0x2DC, 0x2CD, 0x76A, 0x14C\n#_039734: db $15, $CD, $CD, $DF : db $42, $22 ; 0x0F78\u20130x0F7B: 0x215, 0x4CD, 0x2CD, 0x2DF\n#_03973A: db $20, $6A, $34, $F2 : db $21, $00 ; 0x0F7C\u20130x0F7F: 0x120, 0x26A, 0x034, 0x0F2\n#_039740: db $D2, $C7, $20, $67 : db $22, $21 ; 0x0F80\u20130x0F83: 0x2D2, 0x2C7, 0x120, 0x267\n#_039746: db $F2, $C7, $FF, $E0 : db $02, $22 ; 0x0F84\u20130x0F87: 0x2F2, 0x0C7, 0x2FF, 0x2E0\n#_03974C: db $E1, $E1, $F7, $5B : db $22, $21 ; 0x0F88\u20130x0F8B: 0x2E1, 0x2E1, 0x1F7, 0x25B\n#_039752: db $1C, $34, $C6, $C7 : db $23, $22 ; 0x0F8C\u20130x0F8F: 0x31C, 0x234, 0x2C6, 0x2C7\n#_039758: db $2D, $2A, $35, $78 : db $17, $51 ; 0x0F90\u20130x0F93: 0x72D, 0x12A, 0x135, 0x578\n#_03975E: db $1C, $34, $F6, $CF : db $20, $22 ; 0x0F94\u20130x0F97: 0x01C, 0x234, 0x2F6, 0x2CF\n#_039764: db $F5, $8B, $20, $73 : db $23, $22 ; 0x0F98\u20130x0F9B: 0x3F5, 0x28B, 0x220, 0x273\n#_03976A: db $6A, $4F, $93, $D9 : db $11, $32 ; 0x0F9C\u20130x0F9F: 0x16A, 0x14F, 0x293, 0x3D9\n#_039770: db $CD, $5B, $34, $D2 : db $21, $02 ; 0x0FA0\u20130x0FA3: 0x1CD, 0x25B, 0x234, 0x0D2\n#_039776: db $C7, $D7, $D9, $C7 : db $22, $22 ; 0x0FA4\u20130x0FA7: 0x2C7, 0x2D7, 0x2D9, 0x2C7\n#_03977C: db $CD, $34, $20, $20 : db $20, $52 ; 0x0FA8\u20130x0FAB: 0x0CD, 0x234, 0x220, 0x520\n#_039782: db $C9, $57, $D1, $C8 : db $02, $00 ; 0x0FAC\u20130x0FAF: 0x2C9, 0x057, 0x0D1, 0x0C8\n#_039788: db $53, $C7, $C9, $D1 : db $10, $02 ; 0x0FB0\u20130x0FB3: 0x053, 0x1C7, 0x2C9, 0x0D1\n#_03978E: db $25, $83, $C8, $D9 : db $11, $02 ; 0x0FB4\u20130x0FB7: 0x125, 0x183, 0x2C8, 0x0D9\n#_039794: db $C4, $C7, $D7, $CD : db $02, $22 ; 0x0FB8\u20130x0FBB: 0x2C4, 0x0C7, 0x2D7, 0x2CD\n#_03979A: db $E9, $C7, $C9, $4D : db $12, $07 ; 0x0FBC\u20130x0FBF: 0x2E9, 0x1C7, 0x7C9, 0x04D\n#_0397A0: db $C8, $D4, $DC, $C8 : db $02, $20 ; 0x0FC0\u20130x0FC3: 0x2C8, 0x0D4, 0x0DC, 0x2C8\n#_0397A6: db $D3, $CD, $CD, $D3 : db $02, $20 ; 0x0FC4\u20130x0FC7: 0x2D3, 0x0CD, 0x0CD, 0x2D3\n#_0397AC: db $FF, $50, $51, $52 : db $27, $77 ; 0x0FC8\u20130x0FCB: 0x7FF, 0x250, 0x751, 0x752\n#_0397B2: db $2D, $07, $85, $58 : db $11, $31 ; 0x0FCC\u20130x0FCF: 0x12D, 0x107, 0x185, 0x358\n#_0397B8: db $D5, $07, $86, $71 : db $01, $31 ; 0x0FD0\u20130x0FD3: 0x1D5, 0x007, 0x186, 0x371\n#_0397BE: db $58, $03, $CF, $75 : db $13, $01 ; 0x0FD4\u20130x0FD7: 0x358, 0x103, 0x1CF, 0x075\n#_0397C4: db $07, $E4, $2A, $55 : db $12, $33 ; 0x0FD8\u20130x0FDB: 0x207, 0x1E4, 0x32A, 0x355\n#_0397CA: db $CF, $D2, $E4, $40 : db $00, $26 ; 0x0FDC\u20130x0FDF: 0x0CF, 0x0D2, 0x6E4, 0x240\n#_0397D0: db $20, $E7, $54, $56 : db $26, $77 ; 0x0FE0\u20130x0FE3: 0x620, 0x2E7, 0x754, 0x756\n#_0397D6: db $E7, $35, $AE, $20 : db $65, $62 ; 0x0FE4\u20130x0FE7: 0x5E7, 0x635, 0x2AE, 0x620\n#_0397DC: db $85, $21, $D2, $E7 : db $33, $06 ; 0x0FE8\u20130x0FEB: 0x385, 0x321, 0x6D2, 0x0E7\n#_0397E2: db $6A, $AE, $E9, $FA : db $66, $66 ; 0x0FEC\u20130x0FEF: 0x66A, 0x6AE, 0x6E9, 0x6FA\n#_0397E8: db $E7, $29, $1D, $29 : db $63, $73 ; 0x0FF0\u20130x0FF3: 0x3E7, 0x629, 0x31D, 0x729\n#_0397EE: db $60, $29, $83, $20 : db $73, $12 ; 0x0FF4\u20130x0FF7: 0x360, 0x729, 0x283, 0x120\n#_0397F4: db $1C, $78, $1C, $29 : db $21, $23 ; 0x0FF8\u20130x0FFB: 0x11C, 0x278, 0x31C, 0x229\n#_0397FA: db $E7, $E7, $21, $31 : db $66, $77 ; 0x0FFC\u20130x0FFF: 0x6E7, 0x6E7, 0x721, 0x731\n#_039800: db $4F, $19, $21, $E1 : db $53, $70 ; 0x1000\u20130x1003: 0x34F, 0x519, 0x021, 0x7E1\n#_039806: db $20, $E7, $97, $97 : db $36, $55 ; 0x1004\u20130x1007: 0x620, 0x3E7, 0x597, 0x597\n#_03980C: db $71, $67, $34, $20 : db $11, $03 ; 0x1008\u20130x100B: 0x171, 0x167, 0x334, 0x020\n#_039812: db $E7, $E7, $9C, $06 : db $66, $51 ; 0x100C\u20130x100F: 0x6E7, 0x6E7, 0x19C, 0x506\n#_039818: db $65, $72, $73, $67 : db $11, $17 ; 0x1010\u20130x1013: 0x165, 0x172, 0x773, 0x167\n#_03981E: db $9E, $9E, $AE, $E7 : db $55, $66 ; 0x1014\u20130x1017: 0x59E, 0x59E, 0x6AE, 0x6E7\n#_039824: db $E7, $FE, $E7, $9C : db $62, $65 ; 0x1018\u20130x101B: 0x2E7, 0x6FE, 0x5E7, 0x69C\n#_03982A: db $9E, $9E, $07, $9C : db $55, $15 ; 0x101C\u20130x101F: 0x59E, 0x59E, 0x507, 0x19C\n#_039830: db $06, $AE, $F9, $90 : db $16, $12 ; 0x1020\u20130x1023: 0x606, 0x1AE, 0x2F9, 0x190\n#_039836: db $FE, $C5, $3F, $E7 : db $20, $56 ; 0x1024\u20130x1027: 0x0FE, 0x2C5, 0x63F, 0x5E7\n#_03983C: db $E7, $C8, $AE, $E7 : db $60, $66 ; 0x1028\u20130x102B: 0x0E7, 0x6C8, 0x6AE, 0x6E7\n#_039842: db $E7, $EF, $25, $6D : db $66, $77 ; 0x102C\u20130x102F: 0x6E7, 0x6EF, 0x725, 0x76D\n#_039848: db $08, $E7, $E7, $D2 : db $76, $60 ; 0x1030\u20130x1033: 0x608, 0x7E7, 0x0E7, 0x6D2\n#_03984E: db $AE, $E7, $6F, $EF : db $66, $76 ; 0x1034\u20130x1037: 0x6AE, 0x6E7, 0x66F, 0x7EF\n#_039854: db $25, $E6, $E7, $E6 : db $76, $66 ; 0x1038\u20130x103B: 0x625, 0x7E6, 0x6E7, 0x6E6\n#_03985A: db $56, $E7, $1D, $5A : db $76, $77 ; 0x103C\u20130x103F: 0x656, 0x7E7, 0x71D, 0x75A\n#_039860: db $55, $25, $AE, $E4 : db $77, $66 ; 0x1040\u20130x1043: 0x755, 0x725, 0x6AE, 0x6E4\n#_039866: db $73, $6C, $76, $1C : db $77, $77 ; 0x1044\u20130x1047: 0x773, 0x76C, 0x776, 0x71C\n#_03986C: db $55, $77, $AE, $E5 : db $77, $66 ; 0x1048\u20130x104B: 0x755, 0x777, 0x6AE, 0x6E5\n#_039872: db $E4, $07, $F9, $56 : db $67, $67 ; 0x104C\u20130x104F: 0x7E4, 0x607, 0x7F9, 0x656\n#_039878: db $97, $7A, $21, $FA : db $57, $76 ; 0x1050\u20130x1053: 0x797, 0x57A, 0x621, 0x7FA\n#_03987E: db $73, $77, $72, $F9 : db $77, $76 ; 0x1054\u20130x1057: 0x773, 0x777, 0x672, 0x7F9\n#_039884: db $E7, $65, $7A, $E7 : db $61, $76 ; 0x1058\u20130x105B: 0x1E7, 0x665, 0x67A, 0x7E7\n#_03988A: db $7C, $5C, $96, $9D : db $77, $55 ; 0x105C\u20130x105F: 0x77C, 0x75C, 0x596, 0x59D\n#_039890: db $1D, $25, $05, $07 : db $22, $11 ; 0x1060\u20130x1063: 0x21D, 0x225, 0x105, 0x107\n#_039896: db $E6, $AE, $C7, $40 : db $16, $06 ; 0x1064\u20130x1067: 0x6E6, 0x1AE, 0x6C7, 0x040\n#_03989C: db $C7, $CC, $DC, $CC : db $00, $00 ; 0x1068\u20130x106B: 0x0C7, 0x0CC, 0x0DC, 0x0CC\n#_0398A2: db $CC, $CC, $7E, $53 : db $00, $11 ; 0x106C\u20130x106F: 0x0CC, 0x0CC, 0x17E, 0x153\n#_0398A8: db $A9, $CC, $D0, $AE : db $20, $06 ; 0x1070\u20130x1073: 0x0A9, 0x2CC, 0x6D0, 0x0AE\n#_0398AE: db $E3, $E3, $C8, $1E : db $00, $02 ; 0x1074\u20130x1077: 0x0E3, 0x0E3, 0x2C8, 0x01E\n#_0398B4: db $A4, $CE, $AE, $20 : db $00, $62 ; 0x1078\u20130x107B: 0x0A4, 0x0CE, 0x2AE, 0x620\n#_0398BA: db $AE, $FF, $34, $DA : db $61, $00 ; 0x107C\u20130x107F: 0x1AE, 0x6FF, 0x034, 0x0DA\n#_0398C0: db $F2, $7E, $D4, $83 : db $17, $01 ; 0x1080\u20130x1083: 0x7F2, 0x17E, 0x1D4, 0x083\n#_0398C6: db $34, $07, $6A, $5B : db $01, $71 ; 0x1084\u20130x1087: 0x134, 0x007, 0x16A, 0x75B\n#_0398CC: db $86, $5F, $AE, $34 : db $11, $60 ; 0x1088\u20130x108B: 0x186, 0x15F, 0x0AE, 0x634\n#_0398D2: db $AE, $AE, $34, $6E : db $66, $03 ; 0x108C\u20130x108F: 0x6AE, 0x6AE, 0x334, 0x06E\n#_0398D8: db $7E, $75, $AE, $34 : db $11, $60 ; 0x1090\u20130x1093: 0x17E, 0x175, 0x0AE, 0x634\n#_0398DE: db $34, $53, $53, $5C : db $01, $17 ; 0x1094\u20130x1097: 0x134, 0x053, 0x753, 0x15C\n#_0398E4: db $04, $65, $E6, $FE : db $11, $22 ; 0x1098\u20130x109B: 0x104, 0x165, 0x2E6, 0x2FE\n#_0398EA: db $1C, $34, $34, $06 : db $20, $01 ; 0x109C\u20130x109F: 0x01C, 0x234, 0x134, 0x006\n#_0398F0: db $05, $AA, $34, $EC : db $16, $02 ; 0x10A0\u20130x10A3: 0x605, 0x1AA, 0x234, 0x0EC\n#_0398F6: db $E6, $71, $DB, $AE : db $21, $06 ; 0x10A4\u20130x10A7: 0x1E6, 0x271, 0x6DB, 0x0AE\n#_0398FC: db $AE, $DB, $E3, $AE : db $60, $06 ; 0x10A8\u20130x10AB: 0x0AE, 0x6DB, 0x6E3, 0x0AE\n#_039902: db $AE, $85, $AE, $34 : db $63, $60 ; 0x10AC\u20130x10AF: 0x3AE, 0x685, 0x0AE, 0x634\n#_039908: db $C6, $C7, $20, $71 : db $22, $21 ; 0x10B0\u20130x10B3: 0x2C6, 0x2C7, 0x120, 0x271\n#_03990E: db $34, $31, $DF, $C7 : db $01, $22 ; 0x10B4\u20130x10B7: 0x134, 0x031, 0x2DF, 0x2C7\n#_039914: db $C7, $C7, $7F, $D5 : db $22, $71 ; 0x10B8\u20130x10BB: 0x2C7, 0x2C7, 0x17F, 0x7D5\n#_03991A: db $AB, $D6, $DA, $E5 : db $62, $21 ; 0x10BC\u20130x10BF: 0x2AB, 0x6D6, 0x1DA, 0x2E5\n#_039920: db $B7, $1E, $A2, $AA : db $62, $60 ; 0x10C0\u20130x10C3: 0x2B7, 0x61E, 0x0A2, 0x6AA\n#_039926: db $7F, $DA, $C7, $83 : db $12, $21 ; 0x10C4\u20130x10C7: 0x27F, 0x1DA, 0x1C7, 0x283\n#_03992C: db $57, $C6, $C6, $CC : db $20, $00 ; 0x10C8\u20130x10CB: 0x057, 0x2C6, 0x0C6, 0x0CC\n#_039932: db $CC, $DA, $20, $83 : db $02, $21 ; 0x10CC\u20130x10CF: 0x2CC, 0x0DA, 0x120, 0x283\n#_039938: db $20, $20, $53, $7F : db $55, $11 ; 0x10D0\u20130x10D3: 0x520, 0x520, 0x153, 0x17F\n#_03993E: db $83, $82, $F5, $EF : db $17, $22 ; 0x10D4\u20130x10D7: 0x783, 0x182, 0x2F5, 0x2EF\n#_039944: db $29, $8B, $85, $F4 : db $33, $72 ; 0x10D8\u20130x10DB: 0x329, 0x38B, 0x285, 0x7F4\n#_03994A: db $F4, $20, $42, $6A : db $25, $51 ; 0x10DC\u20130x10DF: 0x5F4, 0x220, 0x142, 0x56A\n#_039950: db $E3, $87, $87, $C6 : db $03, $32 ; 0x10E0\u20130x10E3: 0x3E3, 0x087, 0x287, 0x3C6\n#_039956: db $7F, $87, $87, $7C : db $17, $77 ; 0x10E4\u20130x10E7: 0x77F, 0x187, 0x787, 0x77C\n#_03995C: db $E6, $A2, $E6, $F6 : db $26, $22 ; 0x10E8\u20130x10EB: 0x6E6, 0x2A2, 0x2E6, 0x2F6\n#_039962: db $26, $EC, $E6, $8A : db $32, $27 ; 0x10EC\u20130x10EF: 0x226, 0x3EC, 0x7E6, 0x28A\n#_039968: db $27, $27, $E0, $06 : db $33, $23 ; 0x10F0\u20130x10F3: 0x327, 0x327, 0x3E0, 0x206\n#_03996E: db $99, $00, $E6, $E6 : db $33, $22 ; 0x10F4\u20130x10F7: 0x399, 0x300, 0x2E6, 0x2E6\n#_039974: db $E6, $E8, $C2, $9C : db $22, $35 ; 0x10F8\u20130x10FB: 0x2E6, 0x2E8, 0x5C2, 0x39C\n#_03997A: db $9E, $69, $96, $97 : db $56, $55 ; 0x10FC\u20130x10FF: 0x69E, 0x569, 0x596, 0x597\n#_039980: db $68, $06, $6C, $81 : db $61, $11 ; 0x1100\u20130x1103: 0x168, 0x606, 0x16C, 0x181\n#_039986: db $D8, $07, $D1, $81 : db $21, $27 ; 0x1104\u20130x1107: 0x1D8, 0x207, 0x7D1, 0x281\n#_03998C: db $C7, $CD, $CD, $C6 : db $22, $22 ; 0x1108\u20130x110B: 0x2C7, 0x2CD, 0x2CD, 0x2C6\n#_039992: db $C7, $C7, $D7, $2D : db $22, $21 ; 0x110C\u20130x110F: 0x2C7, 0x2C7, 0x1D7, 0x22D\n#_039998: db $C5, $CD, $C7, $A2 : db $02, $26 ; 0x1110\u20130x1113: 0x2C5, 0x0CD, 0x6C7, 0x2A2\n#_03999E: db $CD, $C7, $CD, $DD : db $22, $22 ; 0x1114\u20130x1117: 0x2CD, 0x2C7, 0x2CD, 0x2DD\n#_0399A4: db $F6, $04, $51, $51 : db $23, $77 ; 0x1118\u20130x111B: 0x3F6, 0x204, 0x751, 0x751\n#_0399AA: db $51, $04, $63, $E8 : db $73, $12 ; 0x111C\u20130x111F: 0x351, 0x704, 0x263, 0x1E8\n#_0399B0: db $C4, $E6, $6A, $8C : db $02, $67 ; 0x1120\u20130x1123: 0x2C4, 0x0E6, 0x76A, 0x68C\n#_0399B6: db $E6, $06, $27, $27 : db $23, $33 ; 0x1124\u20130x1127: 0x3E6, 0x206, 0x327, 0x327\n#_0399BC: db $A5, $16, $28, $E6 : db $33, $72 ; 0x1128\u20130x112B: 0x3A5, 0x316, 0x228, 0x7E6\n#_0399C2: db $8D, $E6, $EC, $65 : db $72, $21 ; 0x112C\u20130x112F: 0x28D, 0x7E6, 0x1EC, 0x265\n#_0399C8: db $65, $06, $93, $95 : db $11, $77 ; 0x1130\u20130x1133: 0x165, 0x106, 0x793, 0x795\n#_0399CE: db $94, $95, $96, $98 : db $77, $77 ; 0x1134\u20130x1137: 0x794, 0x795, 0x796, 0x798\n#_0399D4: db $9A, $9C, $9B, $A8 : db $77, $77 ; 0x1138\u20130x113B: 0x79A, 0x79C, 0x79B, 0x7A8\n#_0399DA: db $AA, $A9, $AB, $AD : db $77, $77 ; 0x113C\u20130x113F: 0x7AA, 0x7A9, 0x7AB, 0x7AD\n#_0399E0: db $97, $94, $93, $95 : db $77, $77 ; 0x1140\u20130x1143: 0x797, 0x794, 0x793, 0x795\n#_0399E6: db $9C, $B8, $B9, $AB : db $77, $77 ; 0x1144\u20130x1147: 0x79C, 0x7B8, 0x7B9, 0x7AB\n#_0399EC: db $BA, $BC, $BB, $BE : db $77, $77 ; 0x1148\u20130x114B: 0x7BA, 0x7BC, 0x7BB, 0x7BE\n#_0399F2: db $BB, $94, $93, $97 : db $77, $77 ; 0x114C\u20130x114F: 0x7BB, 0x794, 0x793, 0x797\n#_0399F8: db $B8, $C6, $C6, $C8 : db $77, $77 ; 0x1150\u20130x1153: 0x7B8, 0x7C6, 0x7C6, 0x7C8\n#_0399FE: db $C3, $C6, $A9, $AC : db $77, $77 ; 0x1154\u20130x1157: 0x7C3, 0x7C6, 0x7A9, 0x7AC\n#_039A04: db $AD, $94, $93, $97 : db $77, $77 ; 0x1158\u20130x115B: 0x7AD, 0x794, 0x793, 0x797\n#_039A0A: db $CC, $CE, $C6, $CF : db $77, $77 ; 0x115C\u20130x115F: 0x7CC, 0x7CE, 0x7C6, 0x7CF\n#_039A10: db $D0, $DC, $B7, $C2 : db $77, $77 ; 0x1160\u20130x1163: 0x7D0, 0x7DC, 0x7B7, 0x7C2\n#_039A16: db $DD, $DF, $C3, $BA : db $77, $77 ; 0x1164\u20130x1167: 0x7DD, 0x7DF, 0x7C3, 0x7BA\n#_039A1C: db $E2, $D7, $D9, $E3 : db $77, $77 ; 0x1168\u20130x116B: 0x7E2, 0x7D7, 0x7D9, 0x7E3\n#_039A22: db $E5, $E7, $96, $F3 : db $77, $77 ; 0x116C\u20130x116F: 0x7E5, 0x7E7, 0x796, 0x7F3\n#_039A28: db $F4, $F6, $C6, $F8 : db $77, $77 ; 0x1170\u20130x1173: 0x7F4, 0x7F6, 0x7C6, 0x7F8\n#_039A2E: db $F9, $B8, $FB, $95 : db $77, $77 ; 0x1174\u20130x1177: 0x7F9, 0x7B8, 0x7FB, 0x795\n#_039A34: db $96, $AB, $AD, $0F : db $77, $72 ; 0x1178\u20130x117B: 0x796, 0x7AB, 0x2AD, 0x70F\n#_039A3A: db $04, $06, $C6, $F8 : db $88, $77 ; 0x117C\u20130x117F: 0x804, 0x806, 0x7C6, 0x7F8\n#_039A40: db $C2, $C3, $D9, $AD : db $77, $77 ; 0x1180\u20130x1183: 0x7C2, 0x7C3, 0x7D9, 0x7AD\n#_039A46: db $E1, $A9, $E7, $C6 : db $77, $77 ; 0x1184\u20130x1187: 0x7E1, 0x7A9, 0x7E7, 0x7C6\n#_039A4C: db $0C, $C6, $F8, $C6 : db $87, $77 ; 0x1188\u20130x118B: 0x70C, 0x8C6, 0x7F8, 0x7C6\n#_039A52: db $D7, $D9, $96, $13 : db $77, $78 ; 0x118C\u20130x118F: 0x7D7, 0x7D9, 0x896, 0x713\n#_039A58: db $DA, $DA, $0D, $F3 : db $00, $87 ; 0x1190\u20130x1193: 0x0DA, 0x0DA, 0x70D, 0x8F3\n#_039A5E: db $CF, $FB, $A9, $C5 : db $77, $77 ; 0x1194\u20130x1197: 0x7CF, 0x7FB, 0x7A9, 0x7C5\n#_039A64: db $CD, $F8, $AD, $D0 : db $77, $77 ; 0x1198\u20130x119B: 0x7CD, 0x7F8, 0x7AD, 0x7D0\n#_039A6A: db $DA, $C2, $AD, $D8 : db $77, $77 ; 0x119C\u20130x119F: 0x7DA, 0x7C2, 0x7AD, 0x7D8\n#_039A70: db $B3, $03, $E4, $B8 : db $78, $77 ; 0x11A0\u20130x11A3: 0x8B3, 0x703, 0x7E4, 0x7B8\n#_039A76: db $D1, $15, $EF, $B0 : db $78, $77 ; 0x11A4\u20130x11A7: 0x8D1, 0x715, 0x7EF, 0x7B0\n#_039A7C: db $93, $97, $C3, $D0 : db $77, $77 ; 0x11A8\u20130x11AB: 0x793, 0x797, 0x7C3, 0x7D0\n#_039A82: db $A3, $BE, $E1, $E2 : db $77, $77 ; 0x11AC\u20130x11AF: 0x7A3, 0x7BE, 0x7E1, 0x7E2\n#_039A88: db $B7, $C2, $D8, $C3 : db $77, $77 ; 0x11B0\u20130x11B3: 0x7B7, 0x7C2, 0x7D8, 0x7C3\n#_039A8E: db $D9, $AD, $9A, $9B : db $77, $77 ; 0x11B4\u20130x11B7: 0x7D9, 0x7AD, 0x79A, 0x79B\n#_039A94: db $1D, $CB, $C6, $C6 : db $87, $77 ; 0x11B8\u20130x11BB: 0x71D, 0x8CB, 0x7C6, 0x7C6\n#_039A9A: db $20, $93, $95, $94 : db $87, $77 ; 0x11BC\u20130x11BF: 0x720, 0x893, 0x795, 0x794\n#_039AA0: db $BA, $BC, $A9, $28 : db $77, $78 ; 0x11C0\u20130x11C3: 0x7BA, 0x7BC, 0x8A9, 0x728\n#_039AA6: db $2A, $29, $E1, $1B : db $88, $78 ; 0x11C4\u20130x11C7: 0x82A, 0x829, 0x8E1, 0x71B\n#_039AAC: db $B7, $2D, $C6, $2E : db $78, $78 ; 0x11C8\u20130x11CB: 0x8B7, 0x72D, 0x8C6, 0x72E\n#_039AB2: db $2F, $FA, $F9, $30 : db $87, $78 ; 0x11CC\u20130x11CF: 0x72F, 0x8FA, 0x8F9, 0x730\n#_039AB8: db $CE, $C6, $C6, $C6 : db $77, $77 ; 0x11D0\u20130x11D3: 0x7CE, 0x7C6, 0x7C6, 0x7C6\n#_039ABE: db $39, $3A, $D9, $A9 : db $88, $77 ; 0x11D4\u20130x11D7: 0x839, 0x83A, 0x7D9, 0x7A9\n#_039AC4: db $D1, $C7, $C6, $0F : db $77, $72 ; 0x11D8\u20130x11DB: 0x7D1, 0x7C7, 0x2C6, 0x70F\n#_039ACA: db $C7, $C6, $A4, $C6 : db $77, $07 ; 0x11DC\u20130x11DF: 0x7C7, 0x7C6, 0x7A4, 0x0C6\n#_039AD0: db $C6, $D9, $99, $C5 : db $77, $77 ; 0x11E0\u20130x11E3: 0x7C6, 0x7D9, 0x799, 0x7C5\n#_039AD6: db $C6, $33, $42, $42 : db $78, $88 ; 0x11E4\u20130x11E7: 0x8C6, 0x733, 0x842, 0x842\n#_039ADC: db $C6, $C6, $CF, $D0 : db $77, $77 ; 0x11E8\u20130x11EB: 0x7C6, 0x7C6, 0x7CF, 0x7D0\n#_039AE2: db $D0, $D9, $AE, $CB : db $77, $77 ; 0x11EC\u20130x11EF: 0x7D0, 0x7D9, 0x7AE, 0x7CB\n#_039AE8: db $42, $CA, $C6, $C6 : db $87, $77 ; 0x11F0\u20130x11F3: 0x742, 0x8CA, 0x7C6, 0x7C6\n#_039AEE: db $D0, $E2, $AD, $BB : db $77, $77 ; 0x11F4\u20130x11F7: 0x7D0, 0x7E2, 0x7AD, 0x7BB\n#_039AF4: db $F3, $C6, $DC, $E4 : db $77, $77 ; 0x11F8\u20130x11FB: 0x7F3, 0x7C6, 0x7DC, 0x7E4\n#_039AFA: db $B7, $B8, $D9, $46 : db $77, $78 ; 0x11FC\u20130x11FF: 0x7B7, 0x7B8, 0x8D9, 0x746\n#_039B00: db $F3, $C6, $D0, $DA : db $77, $77 ; 0x1200\u20130x1203: 0x7F3, 0x7C6, 0x7D0, 0x7DA\n#_039B06: db $CB, $DB, $46, $C5 : db $77, $87 ; 0x1204\u20130x1207: 0x7CB, 0x7DB, 0x746, 0x8C5\n#_039B0C: db $1E, $C6, $C4, $AB : db $87, $77 ; 0x1208\u20130x120B: 0x71E, 0x8C6, 0x7C4, 0x7AB\n#_039B12: db $C2, $42, $F8, $CE : db $78, $77 ; 0x120C\u20130x120F: 0x8C2, 0x742, 0x7F8, 0x7CE\n#_039B18: db $F8, $DA, $F3, $F8 : db $77, $77 ; 0x1210\u20130x1213: 0x7F8, 0x7DA, 0x7F3, 0x7F8\n#_039B1E: db $D9, $46, $AE, $CB : db $78, $77 ; 0x1214\u20130x1217: 0x8D9, 0x746, 0x7AE, 0x7CB\n#_039B24: db $46, $C3, $C6, $CF : db $87, $77 ; 0x1218\u20130x121B: 0x746, 0x8C3, 0x7C6, 0x7CF\n#_039B2A: db $AD, $C6, $DA, $AD : db $77, $77 ; 0x121C\u20130x121F: 0x7AD, 0x7C6, 0x7DA, 0x7AD\n#_039B30: db $C6, $D0, $C6, $E2 : db $77, $77 ; 0x1220\u20130x1223: 0x7C6, 0x7D0, 0x7C6, 0x7E2\n#_039B36: db $AD, $F8, $B8, $D9 : db $77, $77 ; 0x1224\u20130x1227: 0x7AD, 0x7F8, 0x7B8, 0x7D9\n#_039B3C: db $C3, $C6, $C6, $DA : db $77, $77 ; 0x1228\u20130x122B: 0x7C3, 0x7C6, 0x7C6, 0x7DA\n#_039B42: db $4F, $4F, $34, $1B : db $88, $02 ; 0x122C\u20130x122F: 0x84F, 0x84F, 0x234, 0x01B\n#_039B48: db $EF, $34, $1B, $FA : db $00, $20 ; 0x1230\u20130x1233: 0x0EF, 0x034, 0x01B, 0x2FA\n#_039B4E: db $4A, $FE, $36, $34 : db $70, $00 ; 0x1234\u20130x1237: 0x04A, 0x7FE, 0x036, 0x034\n#_039B54: db $50, $50, $51, $53 : db $88, $88 ; 0x1238\u20130x123B: 0x850, 0x850, 0x851, 0x853\n#_039B5A: db $50, $55, $56, $57 : db $88, $88 ; 0x123C\u20130x123F: 0x850, 0x855, 0x856, 0x857\n#_039B60: db $58, $58, $52, $53 : db $88, $88 ; 0x1240\u20130x1243: 0x858, 0x858, 0x852, 0x853\n#_039B66: db $59, $5B, $5C, $5D : db $88, $88 ; 0x1244\u20130x1247: 0x859, 0x85B, 0x85C, 0x85D\n#_039B6C: db $50, $52, $1E, $65 : db $88, $18 ; 0x1248\u20130x124B: 0x850, 0x852, 0x81E, 0x165\n#_039B72: db $50, $5E, $5F, $58 : db $88, $88 ; 0x124C\u20130x124F: 0x850, 0x85E, 0x85F, 0x858\n#_039B78: db $66, $50, $63, $68 : db $88, $88 ; 0x1250\u20130x1253: 0x866, 0x850, 0x863, 0x868\n#_039B7E: db $6E, $70, $27, $71 : db $88, $18 ; 0x1254\u20130x1257: 0x86E, 0x870, 0x827, 0x171\n#_039B84: db $53, $50, $58, $75 : db $88, $88 ; 0x1258\u20130x125B: 0x853, 0x850, 0x858, 0x875\n#_039B8A: db $77, $77, $78, $6E : db $88, $88 ; 0x125C\u20130x125F: 0x877, 0x877, 0x878, 0x86E\n#_039B90: db $4A, $71, $80, $81 : db $18, $88 ; 0x1260\u20130x1263: 0x84A, 0x171, 0x880, 0x881\n#_039B96: db $82, $82, $84, $58 : db $88, $88 ; 0x1264\u20130x1267: 0x882, 0x882, 0x884, 0x858\n#_039B9C: db $40, $85, $85, $53 : db $18, $81 ; 0x1268\u20130x126B: 0x840, 0x185, 0x185, 0x853\n#_039BA2: db $86, $58, $88, $65 : db $88, $88 ; 0x126C\u20130x126F: 0x886, 0x858, 0x888, 0x865\n#_039BA8: db $50, $6B, $8A, $6E : db $88, $88 ; 0x1270\u20130x1273: 0x850, 0x86B, 0x88A, 0x86E\n#_039BAE: db $4A, $56, $56, $86 : db $11, $18 ; 0x1274\u20130x1277: 0x14A, 0x156, 0x856, 0x186\n#_039BB4: db $87, $80, $51, $5E : db $88, $88 ; 0x1278\u20130x127B: 0x887, 0x880, 0x851, 0x85E\n#_039BBA: db $6B, $50, $89, $87 : db $88, $88 ; 0x127C\u20130x127F: 0x86B, 0x850, 0x889, 0x887\n#_039BC0: db $8A, $6E, $58, $8D : db $88, $88 ; 0x1280\u20130x1283: 0x88A, 0x86E, 0x858, 0x88D\n#_039BC6: db $6B, $57, $57, $6A : db $88, $88 ; 0x1284\u20130x1287: 0x86B, 0x857, 0x857, 0x86A\n#_039BCC: db $39, $EB, $C9, $EB : db $11, $01 ; 0x1288\u20130x128B: 0x139, 0x1EB, 0x1C9, 0x0EB\n#_039BD2: db $57, $C4, $A5, $CC : db $21, $10 ; 0x128C\u20130x128F: 0x157, 0x2C4, 0x0A5, 0x1CC\n#_039BD8: db $57, $4E, $4B, $DB : db $21, $10 ; 0x1290\u20130x1293: 0x157, 0x24E, 0x04B, 0x1DB\n#_039BDE: db $FF, $9E, $A5, $A4 : db $10, $10 ; 0x1294\u20130x1297: 0x0FF, 0x19E, 0x0A5, 0x1A4\n#_039BE4: db $A5, $41, $4E, $50 : db $01, $18 ; 0x1298\u20130x129B: 0x1A5, 0x041, 0x84E, 0x150\n#_039BEA: db $6A, $96, $98, $9A : db $88, $88 ; 0x129C\u20130x129F: 0x86A, 0x896, 0x898, 0x89A\n#_039BF0: db $9B, $9D, $9D, $9F : db $88, $88 ; 0x12A0\u20130x12A3: 0x89B, 0x89D, 0x89D, 0x89F\n#_039BF6: db $9B, $9B, $A3, $5F : db $88, $88 ; 0x12A4\u20130x12A7: 0x89B, 0x89B, 0x8A3, 0x85F\n#_039BFC: db $58, $58, $50, $51 : db $88, $88 ; 0x12A8\u20130x12AB: 0x858, 0x858, 0x850, 0x851\n#_039C02: db $6F, $AB, $AD, $9A : db $88, $88 ; 0x12AC\u20130x12AF: 0x86F, 0x8AB, 0x8AD, 0x89A\n#_039C08: db $AE, $B0, $B2, $B4 : db $88, $88 ; 0x12B0\u20130x12B3: 0x8AE, 0x8B0, 0x8B2, 0x8B4\n#_039C0E: db $9B, $9B, $B6, $27 : db $88, $81 ; 0x12B4\u20130x12B7: 0x89B, 0x89B, 0x1B6, 0x827\n#_039C14: db $66, $84, $50, $6A : db $88, $88 ; 0x12B8\u20130x12BB: 0x866, 0x884, 0x850, 0x86A\n#_039C1A: db $24, $34, $C0, $B1 : db $10, $88 ; 0x12BC\u20130x12BF: 0x024, 0x134, 0x8C0, 0x8B1\n#_039C20: db $9B, $C3, $C5, $C3 : db $88, $88 ; 0x12C0\u20130x12C3: 0x89B, 0x8C3, 0x8C5, 0x8C3\n#_039C26: db $AE, $C6, $C8, $5F : db $88, $88 ; 0x12C4\u20130x12C7: 0x8AE, 0x8C6, 0x8C8, 0x85F\n#_039C2C: db $52, $76, $77, $D6 : db $88, $88 ; 0x12C8\u20130x12CB: 0x852, 0x876, 0x877, 0x8D6\n#_039C32: db $34, $D7, $CD, $D9 : db $08, $88 ; 0x12CC\u20130x12CF: 0x834, 0x0D7, 0x8CD, 0x8D9\n#_039C38: db $DA, $DC, $DE, $C6 : db $88, $88 ; 0x12D0\u20130x12D3: 0x8DA, 0x8DC, 0x8DE, 0x8C6\n#_039C3E: db $E0, $D5, $50, $6F : db $88, $88 ; 0x12D4\u20130x12D7: 0x8E0, 0x8D5, 0x850, 0x86F\n#_039C44: db $34, $EF, $D8, $F2 : db $08, $88 ; 0x12D8\u20130x12DB: 0x834, 0x0EF, 0x8D8, 0x8F2\n#_039C4A: db $F3, $F2, $F3, $F5 : db $88, $88 ; 0x12DC\u20130x12DF: 0x8F3, 0x8F2, 0x8F3, 0x8F5\n#_039C50: db $F7, $F9, $58, $34 : db $88, $80 ; 0x12E0\u20130x12E3: 0x8F7, 0x8F9, 0x058, 0x834\n#_039C56: db $00, $02, $D0, $F7 : db $99, $88 ; 0x12E4\u20130x12E7: 0x900, 0x902, 0x8D0, 0x8F7\n#_039C5C: db $D0, $04, $FF, $94 : db $89, $88 ; 0x12E8\u20130x12EB: 0x9D0, 0x804, 0x8FF, 0x894\n#_039C62: db $81, $EF, $A5, $70 : db $71, $11 ; 0x12EC\u20130x12EF: 0x181, 0x7EF, 0x1A5, 0x170\n#_039C68: db $C8, $34, $C6, $CC : db $00, $00 ; 0x12F0\u20130x12F3: 0x0C8, 0x034, 0x0C6, 0x0CC\n#_039C6E: db $0E, $9F, $79, $00 : db $20, $12 ; 0x12F4\u20130x12F7: 0x00E, 0x29F, 0x279, 0x100\n#_039C74: db $FB, $36, $34, $93 : db $10, $08 ; 0x12F8\u20130x12FB: 0x0FB, 0x136, 0x834, 0x093\n#_039C7A: db $4E, $9F, $4B, $53 : db $10, $18 ; 0x12FC\u20130x12FF: 0x04E, 0x19F, 0x84B, 0x153\n#_039C80: db $50, $67, $5C, $69 : db $88, $88 ; 0x1300\u20130x1303: 0x850, 0x867, 0x85C, 0x869\n#_039C86: db $50, $0B, $57, $5C : db $89, $88 ; 0x1304\u20130x1307: 0x950, 0x80B, 0x857, 0x85C\n#_039C8C: db $50, $50, $50, $51 : db $88, $88 ; 0x1308\u20130x130B: 0x850, 0x850, 0x850, 0x851\n#_039C92: db $58, $87, $0C, $82 : db $88, $98 ; 0x130C\u20130x130F: 0x858, 0x887, 0x80C, 0x982\n#_039C98: db $82, $62, $5C, $5C : db $88, $88 ; 0x1310\u20130x1313: 0x882, 0x862, 0x85C, 0x85C\n#_039C9E: db $5C, $5C, $81, $0D : db $88, $89 ; 0x1314\u20130x1317: 0x85C, 0x85C, 0x981, 0x80D\n#_039CA4: db $7F, $51, $57, $0F : db $88, $89 ; 0x1318\u20130x131B: 0x87F, 0x851, 0x957, 0x80F\n#_039CAA: db $65, $67, $6D, $63 : db $88, $88 ; 0x131C\u20130x131F: 0x865, 0x867, 0x86D, 0x863\n#_039CB0: db $81, $8B, $8A, $17 : db $88, $81 ; 0x1320\u20130x1323: 0x881, 0x88B, 0x18A, 0x817\n#_039CB6: db $58, $81, $53, $81 : db $88, $88 ; 0x1324\u20130x1327: 0x858, 0x881, 0x853, 0x881\n#_039CBC: db $81, $6C, $5C, $5C : db $88, $88 ; 0x1328\u20130x132B: 0x881, 0x86C, 0x85C, 0x85C\n#_039CC2: db $81, $81, $81, $5F : db $88, $88 ; 0x132C\u20130x132F: 0x881, 0x881, 0x881, 0x85F\n#_039CC8: db $0D, $66, $81, $60 : db $98, $88 ; 0x1330\u20130x1333: 0x80D, 0x966, 0x881, 0x860\n#_039CCE: db $61, $81, $6D, $51 : db $88, $88 ; 0x1334\u20130x1337: 0x861, 0x881, 0x86D, 0x851\n#_039CD4: db $26, $28, $65, $95 : db $11, $88 ; 0x1338\u20130x133B: 0x126, 0x128, 0x865, 0x895\n#_039CDA: db $24, $73, $C9, $38 : db $18, $81 ; 0x133C\u20130x133F: 0x824, 0x173, 0x1C9, 0x838\n#_039CE0: db $38, $CA, $66, $73 : db $18, $18 ; 0x1340\u20130x1343: 0x838, 0x1CA, 0x866, 0x173\n#_039CE6: db $14, $16, $16, $16 : db $99, $99 ; 0x1344\u20130x1347: 0x914, 0x916, 0x916, 0x916\n#_039CEC: db $16, $16, $E2, $E4 : db $99, $88 ; 0x1348\u20130x134B: 0x916, 0x916, 0x8E2, 0x8E4\n#_039CF2: db $4B, $51, $64, $52 : db $11, $88 ; 0x134C\u20130x134F: 0x14B, 0x151, 0x864, 0x852\n#_039CF8: db $6F, $66, $5C, $8B : db $88, $88 ; 0x1350\u20130x1353: 0x86F, 0x866, 0x85C, 0x88B\n#_039CFE: db $7E, $54, $8C, $7F : db $81, $88 ; 0x1354\u20130x1357: 0x17E, 0x854, 0x88C, 0x87F\n#_039D04: db $0C, $8B, $71, $58 : db $98, $88 ; 0x1358\u20130x135B: 0x80C, 0x98B, 0x871, 0x858\n#_039D0A: db $80, $0C, $0C, $0C : db $89, $99 ; 0x135C\u20130x135F: 0x980, 0x80C, 0x90C, 0x90C\n#_039D10: db $5D, $0C, $7E, $87 : db $89, $88 ; 0x1360\u20130x1363: 0x95D, 0x80C, 0x87E, 0x887\n#_039D16: db $95, $58, $62, $68 : db $88, $88 ; 0x1364\u20130x1367: 0x895, 0x858, 0x862, 0x868\n#_039D1C: db $51, $28, $58, $58 : db $81, $88 ; 0x1368\u20130x136B: 0x151, 0x828, 0x858, 0x858\n#_039D22: db $0C, $57, $80, $0C : db $98, $89 ; 0x136C\u20130x136F: 0x80C, 0x957, 0x980, 0x80C\n#_039D28: db $6E, $58, $58, $58 : db $88, $88 ; 0x1370\u20130x1373: 0x86E, 0x858, 0x858, 0x858\n#_039D2E: db $87, $68, $51, $51 : db $88, $88 ; 0x1374\u20130x1377: 0x887, 0x868, 0x851, 0x851\n#_039D34: db $52, $65, $56, $63 : db $88, $88 ; 0x1378\u20130x137B: 0x852, 0x865, 0x856, 0x863\n#_039D3A: db $6C, $65, $50, $8B : db $88, $88 ; 0x137C\u20130x137F: 0x86C, 0x865, 0x850, 0x88B\n#_039D40: db $58, $80, $50, $1D : db $88, $81 ; 0x1380\u20130x1383: 0x858, 0x880, 0x150, 0x81D\n#_039D46: db $5F, $53, $50, $6E : db $88, $88 ; 0x1384\u20130x1387: 0x85F, 0x853, 0x850, 0x86E\n#_039D4C: db $95, $1A, $71, $58 : db $89, $88 ; 0x1388\u20130x138B: 0x995, 0x81A, 0x871, 0x858\n#_039D52: db $8B, $89, $80, $58 : db $88, $88 ; 0x138C\u20130x138F: 0x88B, 0x889, 0x880, 0x858\n#_039D58: db $41, $71, $53, $95 : db $18, $88 ; 0x1390\u20130x1393: 0x841, 0x171, 0x853, 0x895\n#_039D5E: db $40, $94, $86, $5F : db $18, $88 ; 0x1394\u20130x1397: 0x840, 0x194, 0x886, 0x85F\n#_039D64: db $52, $1C, $7E, $8C : db $89, $88 ; 0x1398\u20130x139B: 0x952, 0x81C, 0x87E, 0x88C\n#_039D6A: db $4A, $56, $7F, $50 : db $11, $88 ; 0x139C\u20130x139F: 0x14A, 0x156, 0x87F, 0x850\n#_039D70: db $6E, $52, $52, $6F : db $88, $88 ; 0x13A0\u20130x13A3: 0x86E, 0x852, 0x852, 0x86F\n#_039D76: db $34, $4E, $78, $78 : db $01, $11 ; 0x13A4\u20130x13A7: 0x134, 0x04E, 0x178, 0x178\n#_039D7C: db $2E, $24, $7F, $50 : db $21, $88 ; 0x13A8\u20130x13AB: 0x12E, 0x224, 0x87F, 0x850\n#_039D82: db $69, $55, $54, $56 : db $88, $88 ; 0x13AC\u20130x13AF: 0x869, 0x855, 0x854, 0x856\n#_039D88: db $67, $6D, $8A, $0C : db $88, $89 ; 0x13B0\u20130x13B3: 0x867, 0x86D, 0x98A, 0x80C\n#_039D8E: db $1E, $8B, $6E, $53 : db $98, $88 ; 0x13B4\u20130x13B7: 0x81E, 0x98B, 0x86E, 0x853\n#_039D94: db $50, $51, $66, $5F : db $88, $88 ; 0x13B8\u20130x13BB: 0x850, 0x851, 0x866, 0x85F\n#_039D9A: db $50, $50, $6C, $25 : db $88, $81 ; 0x13BC\u20130x13BF: 0x850, 0x850, 0x16C, 0x825\n#_039DA0: db $34, $39, $52, $50 : db $02, $88 ; 0x13C0\u20130x13C3: 0x234, 0x039, 0x852, 0x850\n#_039DA6: db $21, $6B, $35, $D4 : db $98, $01 ; 0x13C4\u20130x13C7: 0x821, 0x96B, 0x135, 0x0D4\n#_039DAC: db $25, $D5, $35, $05 : db $91, $01 ; 0x13C8\u20130x13CB: 0x125, 0x9D5, 0x135, 0x005\n#_039DB2: db $F2, $1A, $86, $C4 : db $12, $80 ; 0x13CC\u20130x13CF: 0x2F2, 0x11A, 0x086, 0x8C4\n#_039DB8: db $34, $AB, $71, $84 : db $02, $88 ; 0x13D0\u20130x13D3: 0x234, 0x0AB, 0x871, 0x884\n#_039DBE: db $39, $29, $EB, $52 : db $29, $18 ; 0x13D4\u20130x13D7: 0x939, 0x229, 0x8EB, 0x152\n#_039DC4: db $34, $2D, $C8, $24 : db $09, $07 ; 0x13D8\u20130x13DB: 0x934, 0x02D, 0x7C8, 0x024\n#_039DCA: db $24, $2F, $86, $28 : db $79, $11 ; 0x13DC\u20130x13DF: 0x924, 0x72F, 0x186, 0x128\n#_039DD0: db $8C, $34, $3B, $C8 : db $80, $90 ; 0x13E0\u20130x13E3: 0x08C, 0x834, 0x03B, 0x9C8\n#_039DD6: db $3E, $40, $41, $42 : db $99, $99 ; 0x13E4\u20130x13E7: 0x93E, 0x940, 0x941, 0x942\n#_039DDC: db $34, $48, $4A, $6E : db $09, $98 ; 0x13E8\u20130x13EB: 0x934, 0x048, 0x84A, 0x96E\n#_039DE2: db $EE, $50, $72, $7E : db $18, $88 ; 0x13EC\u20130x13EF: 0x8EE, 0x150, 0x872, 0x87E\n#_039DE8: db $31, $7F, $81, $50 : db $18, $88 ; 0x13F0\u20130x13F3: 0x831, 0x17F, 0x881, 0x850\n#_039DEE: db $6E, $58, $8C, $54 : db $88, $81 ; 0x13F4\u20130x13F7: 0x86E, 0x858, 0x18C, 0x854\n#_039DF4: db $60, $81, $83, $89 : db $88, $88 ; 0x13F8\u20130x13FB: 0x860, 0x881, 0x883, 0x889\n#_039DFA: db $8A, $89, $87, $80 : db $88, $88 ; 0x13FC\u20130x13FF: 0x88A, 0x889, 0x887, 0x880\n#_039E00: db $0C, $54, $80, $AB : db $91, $87 ; 0x1400\u20130x1403: 0x10C, 0x954, 0x780, 0x8AB\n#_039E06: db $AD, $4A, $C6, $4B : db $78, $79 ; 0x1404\u20130x1407: 0x8AD, 0x74A, 0x9C6, 0x74B\n#_039E0C: db $4C, $0D, $A9, $40 : db $98, $78 ; 0x1408\u20130x140B: 0x84C, 0x90D, 0x8A9, 0x740\n#_039E12: db $E7, $D6, $D0, $13 : db $77, $78 ; 0x140C\u20130x140F: 0x7E7, 0x7D6, 0x8D0, 0x713\n#_039E18: db $C6, $B7, $F9, $FA : db $77, $77 ; 0x1410\u20130x1413: 0x7C6, 0x7B7, 0x7F9, 0x7FA\n#_039E1E: db $51, $C3, $C3, $46 : db $97, $78 ; 0x1414\u20130x1417: 0x751, 0x9C3, 0x8C3, 0x746\n#_039E24: db $4E, $D6, $D0, $20 : db $87, $78 ; 0x1418\u20130x141B: 0x74E, 0x8D6, 0x8D0, 0x720\n#_039E2A: db $35, $AB, $C2, $EE : db $87, $77 ; 0x141C\u20130x141F: 0x735, 0x8AB, 0x7C2, 0x7EE\n#_039E30: db $4E, $BB, $C5, $C6 : db $87, $77 ; 0x1420\u20130x1423: 0x74E, 0x8BB, 0x7C5, 0x7C6\n#_039E36: db $C6, $C6, $C6, $C6 : db $77, $77 ; 0x1424\u20130x1427: 0x7C6, 0x7C6, 0x7C6, 0x7C6\n#_039E3C: db $C6, $C6, $DB, $54 : db $77, $79 ; 0x1428\u20130x142B: 0x7C6, 0x7C6, 0x9DB, 0x754\n#_039E42: db $E7, $96, $D0, $D0 : db $77, $77 ; 0x142C\u20130x142F: 0x7E7, 0x796, 0x7D0, 0x7D0\n#_039E48: db $46, $58, $C6, $59 : db $89, $79 ; 0x1430\u20130x1433: 0x946, 0x858, 0x9C6, 0x759\n#_039E4E: db $96, $E2, $DB, $AD : db $77, $77 ; 0x1434\u20130x1437: 0x796, 0x7E2, 0x7DB, 0x7AD\n#_039E54: db $AB, $97, $9A, $B8 : db $77, $77 ; 0x1438\u20130x143B: 0x7AB, 0x797, 0x79A, 0x7B8\n#_039E5A: db $4E, $AD, $B8, $C3 : db $87, $77 ; 0x143C\u20130x143F: 0x74E, 0x8AD, 0x7B8, 0x7C3\n#_039E60: db $93, $46, $97, $0F : db $78, $78 ; 0x1440\u20130x1443: 0x893, 0x746, 0x897, 0x70F\n#_039E66: db $11, $10, $F8, $AD : db $88, $77 ; 0x1444\u20130x1447: 0x811, 0x810, 0x7F8, 0x7AD\n#_039E6C: db $AD, $DB, $C6, $AC : db $77, $77 ; 0x1448\u20130x144B: 0x7AD, 0x7DB, 0x7C6, 0x7AC\n#_039E72: db $C9, $36, $C6, $41 : db $70, $78 ; 0x144C\u20130x144F: 0x0C9, 0x736, 0x8C6, 0x741\n#_039E78: db $25, $DA, $97, $5A : db $87, $79 ; 0x1450\u20130x1453: 0x725, 0x8DA, 0x997, 0x75A\n#_039E7E: db $C6, $DA, $AF, $B2 : db $77, $77 ; 0x1454\u20130x1457: 0x7C6, 0x7DA, 0x7AF, 0x7B2\n#_039E84: db $49, $9A, $1C, $CB : db $87, $87 ; 0x1458\u20130x145B: 0x749, 0x89A, 0x71C, 0x8CB\n#_039E8A: db $C8, $AD, $BD, $C0 : db $77, $77 ; 0x145C\u20130x145F: 0x7C8, 0x7AD, 0x7BD, 0x7C0\n#_039E90: db $C4, $DB, $97, $A9 : db $77, $77 ; 0x1460\u20130x1463: 0x7C4, 0x7DB, 0x797, 0x7A9\n#_039E96: db $C7, $C6, $F8, $EE : db $77, $77 ; 0x1464\u20130x1467: 0x7C7, 0x7C6, 0x7F8, 0x7EE\n#_039E9C: db $CF, $E6, $D6, $F3 : db $77, $77 ; 0x1468\u20130x146B: 0x7CF, 0x7E6, 0x7D6, 0x7F3\n#_039EA2: db $C7, $C6, $36, $4B : db $77, $09 ; 0x146C\u20130x146F: 0x7C7, 0x7C6, 0x936, 0x04B\n#_039EA8: db $20, $C6, $CF, $DA : db $87, $77 ; 0x1470\u20130x1473: 0x720, 0x8C6, 0x7CF, 0x7DA\n#_039EAE: db $FB, $93, $D6, $36 : db $77, $70 ; 0x1474\u20130x1477: 0x7FB, 0x793, 0x0D6, 0x736\n#_039EB4: db $5A, $0D, $D0, $43 : db $98, $78 ; 0x1478\u20130x147B: 0x85A, 0x90D, 0x8D0, 0x743\n#_039EBA: db $E2, $4E, $D4, $4E : db $78, $78 ; 0x147C\u20130x147F: 0x8E2, 0x74E, 0x8D4, 0x74E\n#_039EC0: db $C6, $C6, $B0, $12 : db $77, $78 ; 0x1480\u20130x1483: 0x7C6, 0x7C6, 0x8B0, 0x712\n#_039EC6: db $24, $C6, $36, $37 : db $87, $08 ; 0x1484\u20130x1487: 0x724, 0x8C6, 0x836, 0x037\n#_039ECC: db $F8, $C6, $22, $0D : db $77, $88 ; 0x1488\u20130x148B: 0x7F8, 0x7C6, 0x822, 0x80D\n#_039ED2: db $A3, $BE, $C6, $4F : db $77, $79 ; 0x148C\u20130x148F: 0x7A3, 0x7BE, 0x9C6, 0x74F\n#_039ED8: db $4E, $12, $F3, $C6 : db $88, $77 ; 0x1490\u20130x1493: 0x84E, 0x812, 0x7F3, 0x7C6\n#_039EDE: db $C7, $C6, $4E, $98 : db $77, $87 ; 0x1494\u20130x1497: 0x7C7, 0x7C6, 0x74E, 0x898\n#_039EE4: db $FA, $C1, $B0, $D0 : db $77, $77 ; 0x1498\u20130x149B: 0x7FA, 0x7C1, 0x7B0, 0x7D0\n#_039EEA: db $AD, $A9, $79, $A5 : db $70, $17 ; 0x149C\u20130x149F: 0x0AD, 0x7A9, 0x779, 0x1A5\n#_039EF0: db $A7, $C6, $16, $A3 : db $77, $87 ; 0x14A0\u20130x14A3: 0x7A7, 0x7C6, 0x716, 0x8A3\n#_039EF6: db $A7, $5B, $16, $9E : db $79, $87 ; 0x14A4\u20130x14A7: 0x9A7, 0x75B, 0x716, 0x89E\n#_039EFC: db $9D, $44, $24, $25 : db $78, $88 ; 0x14A8\u20130x14AB: 0x89D, 0x744, 0x824, 0x825\n#_039F02: db $C4, $C4, $B5, $A1 : db $77, $77 ; 0x14AC\u20130x14AF: 0x7C4, 0x7C4, 0x7B5, 0x7A1\n#_039F08: db $D6, $B0, $AF, $B1 : db $77, $77 ; 0x14B0\u20130x14B3: 0x7D6, 0x7B0, 0x7AF, 0x7B1\n#_039F0E: db $B0, $B2, $4E, $4E : db $77, $88 ; 0x14B4\u20130x14B7: 0x7B0, 0x7B2, 0x84E, 0x84E\n#_039F14: db $A3, $A7, $4B, $BE : db $77, $87 ; 0x14B8\u20130x14BB: 0x7A3, 0x7A7, 0x74B, 0x8BE\n#_039F1A: db $1E, $C6, $C6, $46 : db $87, $78 ; 0x14BC\u20130x14BF: 0x71E, 0x8C6, 0x8C6, 0x746\n#_039F20: db $CF, $DB, $AD, $C3 : db $77, $77 ; 0x14C0\u20130x14C3: 0x7CF, 0x7DB, 0x7AD, 0x7C3\n#_039F26: db $F8, $B5, $A1, $C6 : db $77, $77 ; 0x14C4\u20130x14C7: 0x7F8, 0x7B5, 0x7A1, 0x7C6\n#_039F2C: db $C6, $C6, $EE, $0D : db $77, $78 ; 0x14C8\u20130x14CB: 0x7C6, 0x7C6, 0x8EE, 0x70D\n#_039F32: db $1C, $C6, $99, $96 : db $87, $77 ; 0x14CC\u20130x14CF: 0x71C, 0x8C6, 0x799, 0x796\n#_039F38: db $CA, $33, $36, $93 : db $78, $07 ; 0x14D0\u20130x14D3: 0x8CA, 0x733, 0x736, 0x093\n#_039F3E: db $C7, $2E, $CF, $D0 : db $78, $77 ; 0x14D4\u20130x14D7: 0x8C7, 0x72E, 0x7CF, 0x7D0\n#_039F44: db $28, $E6, $D0, $46 : db $87, $78 ; 0x14D8\u20130x14DB: 0x728, 0x8E6, 0x8D0, 0x746\n#_039F4A: db $D6, $D0, $D0, $93 : db $77, $77 ; 0x14DC\u20130x14DF: 0x7D6, 0x7D0, 0x7D0, 0x793\n#_039F50: db $C6, $3D, $5A, $DA : db $78, $00 ; 0x14E0\u20130x14E3: 0x8C6, 0x73D, 0x05A, 0x0DA\n#_039F56: db $C4, $65, $64, $66 : db $09, $99 ; 0x14E4\u20130x14E7: 0x9C4, 0x065, 0x964, 0x966\n#_039F5C: db $C4, $65, $64, $66 : db $09, $99 ; 0x14E8\u20130x14EB: 0x9C4, 0x065, 0x964, 0x966\n#_039F62: db $34, $05, $6E, $6B : db $01, $19 ; 0x14EC\u20130x14EF: 0x134, 0x005, 0x96E, 0x16B\n#_039F68: db $C8, $C9, $6A, $6E : db $00, $99 ; 0x14F0\u20130x14F3: 0x0C8, 0x0C9, 0x96A, 0x96E\n#_039F6E: db $66, $C8, $E0, $C8 : db $90, $00 ; 0x14F4\u20130x14F7: 0x066, 0x9C8, 0x0E0, 0x0C8\n#_039F74: db $61, $6F, $72, $6F : db $19, $99 ; 0x14F8\u20130x14FB: 0x961, 0x16F, 0x972, 0x96F\n#_039F7A: db $D3, $65, $D6, $4F : db $09, $00 ; 0x14FC\u20130x14FF: 0x9D3, 0x065, 0x0D6, 0x04F\n#_039F80: db $34, $CA, $C9, $C9 : db $00, $00 ; 0x1500\u20130x1503: 0x034, 0x0CA, 0x0C9, 0x0C9\n#_039F86: db $34, $AE, $B0, $34 : db $02, $20 ; 0x1504\u20130x1507: 0x234, 0x0AE, 0x0B0, 0x234\n#_039F8C: db $3A, $0E, $CE, $E8 : db $21, $00 ; 0x1508\u20130x150B: 0x13A, 0x20E, 0x0CE, 0x0E8\n#_039F92: db $69, $32, $92, $DC : db $12, $80 ; 0x150C\u20130x150F: 0x269, 0x132, 0x092, 0x8DC\n#_039F98: db $DC, $34, $36, $4E : db $00, $01 ; 0x1510\u20130x1513: 0x0DC, 0x034, 0x136, 0x04E\n#_039F9E: db $90, $4B, $41, $21 : db $81, $12 ; 0x1514\u20130x1517: 0x190, 0x84B, 0x241, 0x121\n#_039FA4: db $85, $93, $80, $77 : db $88, $29 ; 0x1518\u20130x151B: 0x885, 0x893, 0x980, 0x277\n#_039FAA: db $78, $79, $4F, $24 : db $29, $11 ; 0x151C\u20130x151F: 0x978, 0x279, 0x14F, 0x124\n#_039FB0: db $34, $4B, $6C, $5D : db $01, $12 ; 0x1520\u20130x1523: 0x134, 0x04B, 0x26C, 0x15D\n#_039FB6: db $7B, $76, $20, $7E : db $99, $29 ; 0x1524\u20130x1527: 0x97B, 0x976, 0x920, 0x27E\n#_039FBC: db $7B, $8C, $78, $82 : db $22, $29 ; 0x1528\u20130x152B: 0x27B, 0x28C, 0x978, 0x282\n#_039FC2: db $7F, $80, $8C, $1C : db $22, $22 ; 0x152C\u20130x152F: 0x27F, 0x280, 0x28C, 0x21C\n#_039FC8: db $7B, $88, $78, $89 : db $29, $22 ; 0x1530\u20130x1533: 0x97B, 0x288, 0x278, 0x289\n#_039FCE: db $7F, $7F, $80, $8D : db $12, $29 ; 0x1534\u20130x1537: 0x27F, 0x17F, 0x980, 0x28D\n#_039FD4: db $66, $89, $88, $8F : db $12, $29 ; 0x1538\u20130x153B: 0x266, 0x189, 0x988, 0x28F\n#_039FDA: db $81, $89, $91, $77 : db $22, $29 ; 0x153C\u20130x153F: 0x281, 0x289, 0x991, 0x277\n#_039FE0: db $78, $8B, $70, $7D : db $29, $89 ; 0x1540\u20130x1543: 0x978, 0x28B, 0x970, 0x87D\n#_039FE6: db $78, $78, $8C, $24 : db $22, $91 ; 0x1544\u20130x1547: 0x278, 0x278, 0x18C, 0x924\n#_039FEC: db $78, $7F, $78, $76 : db $29, $29 ; 0x1548\u20130x154B: 0x978, 0x27F, 0x978, 0x276\n#_039FF2: db $4E, $8F, $64, $96 : db $12, $29 ; 0x154C\u20130x154F: 0x24E, 0x18F, 0x964, 0x296\n#_039FF8: db $78, $64, $78, $78 : db $22, $22 ; 0x1550\u20130x1553: 0x278, 0x264, 0x278, 0x278\n#_039FFE: db $83, $64, $78, $78 : db $92, $22 ; 0x1554\u20130x1557: 0x283, 0x964, 0x278, 0x278\n#_03A004: db $96, $98, $34, $78 : db $99, $22 ; 0x1558\u20130x155B: 0x996, 0x998, 0x234, 0x278\n#_03A00A: db $98, $81, $7C, $89 : db $92, $92 ; 0x155C\u20130x155F: 0x298, 0x981, 0x27C, 0x989\n#_03A010: db $7A, $7E, $76, $82 : db $92, $99 ; 0x1560\u20130x1563: 0x27A, 0x97E, 0x976, 0x982\n#_03A016: db $7B, $86, $94, $78 : db $99, $92 ; 0x1564\u20130x1567: 0x97B, 0x986, 0x294, 0x978\n#_03A01C: db $2E, $E3, $6D, $34 : db $20, $10 ; 0x1568\u20130x156B: 0x02E, 0x2E3, 0x06D, 0x134\n#_03A022: db $98, $7E, $8C, $64 : db $99, $22 ; 0x156C\u20130x156F: 0x998, 0x97E, 0x28C, 0x264\n#_03A028: db $23, $93, $7C, $8C : db $29, $92 ; 0x1570\u20130x1573: 0x923, 0x293, 0x27C, 0x98C\n#_03A02E: db $63, $8D, $89, $63 : db $22, $22 ; 0x1574\u20130x1577: 0x263, 0x28D, 0x289, 0x263\n#_03A034: db $A2, $91, $81, $86 : db $99, $29 ; 0x1578\u20130x157B: 0x9A2, 0x991, 0x981, 0x286\n#_03A03A: db $7D, $C5, $CD, $CD : db $92, $22 ; 0x157C\u20130x157F: 0x27D, 0x9C5, 0x2CD, 0x2CD\n#_03A040: db $B7, $E4, $D6, $FA : db $22, $22 ; 0x1580\u20130x1583: 0x2B7, 0x2E4, 0x2D6, 0x2FA\n#_03A046: db $E4, $D8, $CD, $CD : db $22, $22 ; 0x1584\u20130x1587: 0x2E4, 0x2D8, 0x2CD, 0x2CD\n#_03A04C: db $FB, $CD, $D2, $A2 : db $22, $26 ; 0x1588\u20130x158B: 0x2FB, 0x2CD, 0x6D2, 0x2A2\n#_03A052: db $CA, $CD, $CD, $F6 : db $02, $22 ; 0x158C\u20130x158F: 0x2CA, 0x0CD, 0x2CD, 0x2F6\n#_03A058: db $F6, $EF, $CD, $C5 : db $22, $22 ; 0x1590\u20130x1593: 0x2F6, 0x2EF, 0x2CD, 0x2C5\n#_03A05E: db $9E, $F9, $A5, $C4 : db $32, $30 ; 0x1594\u20130x1597: 0x29E, 0x3F9, 0x0A5, 0x3C4\n#_03A064: db $BA, $CD, $FA, $C7 : db $22, $22 ; 0x1598\u20130x159B: 0x2BA, 0x2CD, 0x2FA, 0x2C7\n#_03A06A: db $2D, $34, $34, $39 : db $10, $02 ; 0x159C\u20130x159F: 0x02D, 0x134, 0x234, 0x039\n#_03A070: db $D5, $9E, $CD, $C7 : db $03, $22 ; 0x15A0\u20130x15A3: 0x3D5, 0x09E, 0x2CD, 0x2C7\n#_03A076: db $C9, $39, $DF, $EB : db $22, $22 ; 0x15A4\u20130x15A7: 0x2C9, 0x239, 0x2DF, 0x2EB\n#_03A07C: db $76, $DF, $CE, $07 : db $12, $01 ; 0x15A8\u20130x15AB: 0x276, 0x1DF, 0x1CE, 0x007\n#_03A082: db $63, $34, $73, $74 : db $12, $11 ; 0x15AC\u20130x15AF: 0x263, 0x134, 0x173, 0x174\n#_03A088: db $2D, $26, $C4, $34 : db $11, $00 ; 0x15B0\u20130x15B3: 0x12D, 0x126, 0x0C4, 0x034\n#_03A08E: db $5D, $60, $4E, $66 : db $11, $11 ; 0x15B4\u20130x15B7: 0x15D, 0x160, 0x14E, 0x166\n#_03A094: db $6D, $60, $9E, $3A : db $11, $02 ; 0x15B8\u20130x15BB: 0x16D, 0x160, 0x29E, 0x03A\n#_03A09A: db $20, $77, $D5, $A8 : db $27, $00 ; 0x15BC\u20130x15BF: 0x720, 0x277, 0x0D5, 0x0A8\n#_03A0A0: db $9C, $87, $86, $88 : db $00, $00 ; 0x15C0\u20130x15C3: 0x09C, 0x087, 0x086, 0x088\n#_03A0A6: db $77, $B6, $35, $35 : db $00, $00 ; 0x15C4\u20130x15C7: 0x077, 0x0B6, 0x035, 0x035\n#_03A0AC: db $87, $86, $35, $36 : db $00, $00 ; 0x15C8\u20130x15CB: 0x087, 0x086, 0x035, 0x036\n#_03A0B2: db $7C, $34, $01, $2B : db $00, $03 ; 0x15CC\u20130x15CF: 0x07C, 0x034, 0x301, 0x02B\n#_03A0B8: db $02, $31, $9E, $87 : db $03, $00 ; 0x15D0\u20130x15D3: 0x302, 0x031, 0x09E, 0x087\n#_03A0BE: db $86, $88, $87, $34 : db $00, $00 ; 0x15D4\u20130x15D7: 0x086, 0x088, 0x087, 0x034\n#_03A0C4: db $D9, $76, $C9, $C9 : db $01, $00 ; 0x15D8\u20130x15DB: 0x1D9, 0x076, 0x0C9, 0x0C9\n#_03A0CA: db $34, $34, $34, $34 : db $00, $00 ; 0x15DC\u20130x15DF: 0x034, 0x034, 0x034, 0x034\n#_03A0D0: db $F7, $34, $6E, $FE : db $50, $63 ; 0x15E0\u20130x15E3: 0x0F7, 0x534, 0x36E, 0x6FE\n#_03A0D6: db $00, $34, $03, $A8 : db $40, $49 ; 0x15E4\u20130x15E7: 0x000, 0x434, 0x903, 0x4A8\n#_03A0DC: db $34, $48, $4A, $4B : db $07, $77 ; 0x15E8\u20130x15EB: 0x734, 0x048, 0x74A, 0x74B\n#_03A0E2: db $9F, $A9, $0F, $38 : db $00, $23 ; 0x15EC\u20130x15EF: 0x09F, 0x0A9, 0x30F, 0x238\n#_03A0E8: db $AD, $C4, $A3, $0A : db $01, $01 ; 0x15F0\u20130x15F3: 0x1AD, 0x0C4, 0x1A3, 0x00A\n#_03A0EE: db $34, $86, $36, $34 : db $00, $00 ; 0x15F4\u20130x15F7: 0x034, 0x086, 0x036, 0x034\n#_03A0F4: db $AC, $34, $F2, $E2 : db $00, $05 ; 0x15F8\u20130x15FB: 0x0AC, 0x034, 0x5F2, 0x0E2\n#_03A0FA: db $E4, $E6, $08, $34 : db $55, $10 ; 0x15FC\u20130x15FF: 0x5E4, 0x5E6, 0x008, 0x134\n#_03A100: db $34, $34, $32, $39 : db $00, $21 ; 0x1600\u20130x1603: 0x034, 0x034, 0x132, 0x239\n#_03A106: db $34, $CE, $A5, $A5 : db $00, $00 ; 0x1604\u20130x1607: 0x034, 0x0CE, 0x0A5, 0x0A5\n#_03A10C: db $DC, $0D, $E8, $3F : db $20, $02 ; 0x1608\u20130x160B: 0x0DC, 0x20D, 0x2E8, 0x03F\n#_03A112: db $76, $35, $95, $34 : db $00, $00 ; 0x160C\u20130x160F: 0x076, 0x035, 0x095, 0x034\n#_03A118: db $34, $AE, $35, $B0 : db $02, $02 ; 0x1610\u20130x1613: 0x234, 0x0AE, 0x235, 0x0B0\n#_03A11E: db $7F, $34, $34, $34 : db $00, $00 ; 0x1614\u20130x1617: 0x07F, 0x034, 0x034, 0x034\n#_03A124: db $EF, $34, $34, $F3 : db $10, $01 ; 0x1618\u20130x161B: 0x0EF, 0x134, 0x134, 0x0F3\n#_03A12A: db $A1, $9F, $A1, $A5 : db $00, $01 ; 0x161C\u20130x161F: 0x0A1, 0x09F, 0x1A1, 0x0A5\n#_03A130: db $9F, $AD, $A5, $AD : db $00, $00 ; 0x1620\u20130x1623: 0x09F, 0x0AD, 0x0A5, 0x0AD\n#_03A136: db $A5, $36, $7F, $50 : db $00, $01 ; 0x1624\u20130x1627: 0x0A5, 0x036, 0x17F, 0x050\n#_03A13C: db $53, $5B, $75, $53 : db $11, $11 ; 0x1628\u20130x162B: 0x153, 0x15B, 0x175, 0x153\n#_03A142: db $75, $CA, $DD, $DB : db $10, $00 ; 0x162C\u20130x162F: 0x075, 0x1CA, 0x0DD, 0x0DB\n#_03A148: db $AA, $E3, $68, $79 : db $20, $31 ; 0x1630\u20130x1633: 0x0AA, 0x2E3, 0x168, 0x379\n#_03A14E: db $68, $34, $72, $79 : db $30, $31 ; 0x1634\u20130x1637: 0x068, 0x334, 0x172, 0x379\n#_03A154: db $72, $35, $9B, $95 : db $30, $00 ; 0x1638\u20130x163B: 0x072, 0x335, 0x09B, 0x095\n#_03A15A: db $AC, $9B, $34, $0F : db $00, $02 ; 0x163C\u20130x163F: 0x0AC, 0x09B, 0x234, 0x00F\n#_03A160: db $6D, $AC, $AD, $AE : db $19, $99 ; 0x1640\u20130x1643: 0x96D, 0x1AC, 0x9AD, 0x9AE\n#_03A166: db $B0, $34, $B0, $AE : db $90, $99 ; 0x1644\u20130x1647: 0x0B0, 0x934, 0x9B0, 0x9AE\n#_03A16C: db $AF, $36, $B3, $34 : db $20, $90 ; 0x1648\u20130x164B: 0x0AF, 0x236, 0x0B3, 0x934\n#_03A172: db $36, $B3, $36, $0F : db $09, $02 ; 0x164C\u20130x164F: 0x936, 0x0B3, 0x236, 0x00F\n#_03A178: db $0F, $34, $34, $B0 : db $20, $09 ; 0x1650\u20130x1653: 0x00F, 0x234, 0x934, 0x0B0\n#_03A17E: db $B3, $B0, $0F, $87 : db $99, $23 ; 0x1654\u20130x1657: 0x9B3, 0x9B0, 0x30F, 0x287\n#_03A184: db $87, $A9, $34, $F4 : db $39, $02 ; 0x1658\u20130x165B: 0x987, 0x3A9, 0x234, 0x0F4\n#_03A18A: db $F3, $34, $36, $34 : db $23, $00 ; 0x165C\u20130x165F: 0x3F3, 0x234, 0x036, 0x034\n#_03A190: db $E3, $85, $34, $E1 : db $01, $00 ; 0x1660\u20130x1663: 0x1E3, 0x085, 0x034, 0x0E1\n#_03A196: db $E1, $34, $0F, $AA : db $00, $29 ; 0x1664\u20130x1667: 0x0E1, 0x034, 0x90F, 0x2AA\n#_03A19C: db $39, $AD, $AE, $AD : db $29, $99 ; 0x1668\u20130x166B: 0x939, 0x2AD, 0x9AE, 0x9AD\n#_03A1A2: db $AD, $AE, $29, $E1 : db $99, $20 ; 0x166C\u20130x166F: 0x9AD, 0x9AE, 0x029, 0x2E1\n#_03A1A8: db $B1, $E1, $7C, $36 : db $90, $60 ; 0x1670\u20130x1673: 0x0B1, 0x9E1, 0x07C, 0x636\n#_03A1AE: db $27, $B0, $AE, $39 : db $29, $92 ; 0x1674\u20130x1677: 0x927, 0x2B0, 0x2AE, 0x939\n#_03A1B4: db $08, $7E, $AE, $AB : db $13, $99 ; 0x1678\u20130x167B: 0x308, 0x17E, 0x9AE, 0x9AB\n#_03A1BA: db $AB, $AE, $87, $AE : db $99, $69 ; 0x167C\u20130x167F: 0x9AB, 0x9AE, 0x987, 0x6AE\n#_03A1C0: db $34, $86, $B3, $AC : db $06, $99 ; 0x1680\u20130x1683: 0x634, 0x086, 0x9B3, 0x9AC\n#_03A1C6: db $35, $B3, $9D, $DA : db $09, $20 ; 0x1684\u20130x1687: 0x935, 0x0B3, 0x09D, 0x2DA\n#_03A1CC: db $B2, $B2, $AC, $AD : db $99, $99 ; 0x1688\u20130x168B: 0x9B2, 0x9B2, 0x9AC, 0x9AD\n#_03A1D2: db $AE, $DA, $DA, $AE : db $90, $09 ; 0x168C\u20130x168F: 0x0AE, 0x9DA, 0x9DA, 0x0AE\n#_03A1D8: db $DA, $81, $9D, $34 : db $06, $20 ; 0x1690\u20130x1693: 0x6DA, 0x081, 0x09D, 0x234\n#_03A1DE: db $36, $36, $36, $36 : db $00, $00 ; 0x1694\u20130x1697: 0x036, 0x036, 0x036, 0x036\n#_03A1E4: db $34, $29, $29, $B3 : db $02, $29 ; 0x1698\u20130x169B: 0x234, 0x029, 0x929, 0x2B3\n#_03A1EA: db $B3, $7E, $A0, $B3 : db $93, $09 ; 0x169C\u20130x169F: 0x3B3, 0x97E, 0x9A0, 0x0B3\n#_03A1F0: db $B3, $08, $34, $AF : db $91, $09 ; 0x16A0\u20130x16A3: 0x1B3, 0x908, 0x934, 0x0AF\n#_03A1F6: db $9D, $88, $36, $34 : db $20, $00 ; 0x16A4\u20130x16A7: 0x09D, 0x288, 0x036, 0x034\n#_03A1FC: db $A8, $6E, $FE, $D9 : db $06, $30 ; 0x16A8\u20130x16AB: 0x6A8, 0x06E, 0x0FE, 0x3D9\n#_03A202: db $03, $04, $34, $FE : db $44, $00 ; 0x16AC\u20130x16AF: 0x403, 0x404, 0x034, 0x0FE\n#_03A208: db $36, $D1, $CD, $B6 : db $00, $22 ; 0x16B0\u20130x16B3: 0x036, 0x0D1, 0x2CD, 0x2B6\n#_03A20E: db $B8, $29, $E6, $FE : db $23, $22 ; 0x16B4\u20130x16B7: 0x3B8, 0x229, 0x2E6, 0x2FE\n#_03A214: db $DC, $B8, $D0, $D0 : db $02, $20 ; 0x16B8\u20130x16BB: 0x2DC, 0x0B8, 0x0D0, 0x2D0\n#_03A21A: db $83, $E6, $CF, $56 : db $12, $01 ; 0x16BC\u20130x16BF: 0x283, 0x1E6, 0x1CF, 0x056\n#_03A220: db $B8, $03, $CA, $FE : db $23, $02 ; 0x16C0\u20130x16C3: 0x3B8, 0x203, 0x2CA, 0x0FE\n#_03A226: db $34, $E3, $D5, $33 : db $02, $02 ; 0x16C4\u20130x16C7: 0x234, 0x0E3, 0x2D5, 0x033\n#_03A22C: db $CE, $EE, $37, $34 : db $02, $20 ; 0x16C8\u20130x16CB: 0x2CE, 0x0EE, 0x037, 0x234\n#_03A232: db $ED, $EC, $B1, $62 : db $22, $21 ; 0x16CC\u20130x16CF: 0x2ED, 0x2EC, 0x1B1, 0x262\n#_03A238: db $02, $E6, $34, $ED : db $32, $01 ; 0x16D0\u20130x16D3: 0x202, 0x3E6, 0x134, 0x0ED\n#_03A23E: db $D4, $1E, $1F, $35 : db $03, $32 ; 0x16D4\u20130x16D7: 0x3D4, 0x01E, 0x21F, 0x335\n#_03A244: db $06, $EB, $34, $FD : db $11, $02 ; 0x16D8\u20130x16DB: 0x106, 0x1EB, 0x234, 0x0FD\n#_03A24A: db $E6, $E6, $F5, $22 : db $22, $23 ; 0x16DC\u20130x16DF: 0x2E6, 0x2E6, 0x3F5, 0x222\n#_03A250: db $37, $C5, $6A, $EB : db $20, $11 ; 0x16E0\u20130x16E3: 0x037, 0x2C5, 0x16A, 0x1EB\n#_03A256: db $78, $20, $C8, $91 : db $15, $07 ; 0x16E4\u20130x16E7: 0x578, 0x120, 0x7C8, 0x091\n#_03A25C: db $8F, $21, $EC, $6A : db $73, $11 ; 0x16E8\u20130x16EB: 0x38F, 0x721, 0x1EC, 0x16A\n#_03A262: db $34, $CC, $E6, $F0 : db $00, $26 ; 0x16EC\u20130x16EF: 0x034, 0x0CC, 0x6E6, 0x2F0\n#_03A268: db $FE, $37, $CA, $6C : db $22, $01 ; 0x16F0\u20130x16F3: 0x2FE, 0x237, 0x1CA, 0x06C\n#_03A26E: db $AD, $84, $87, $76 : db $01, $31 ; 0x16F4\u20130x16F7: 0x1AD, 0x084, 0x187, 0x376\n#_03A274: db $54, $FE, $05, $6A : db $22, $11 ; 0x16F8\u20130x16FB: 0x254, 0x2FE, 0x105, 0x16A\n#_03A27A: db $1E, $20, $2A, $17 : db $13, $73 ; 0x16FC\u20130x16FF: 0x31E, 0x120, 0x32A, 0x717\n#_03A280: db $63, $C5, $60, $34 : db $10, $12 ; 0x1700\u20130x1703: 0x063, 0x1C5, 0x260, 0x134\n#_03A286: db $D5, $51, $51, $06 : db $17, $71 ; 0x1704\u20130x1707: 0x7D5, 0x151, 0x151, 0x706\n#_03A28C: db $09, $8B, $34, $BF : db $10, $39 ; 0x1708\u20130x170B: 0x009, 0x18B, 0x934, 0x3BF\n#_03A292: db $65, $67, $4E, $6F : db $33, $13 ; 0x170C\u20130x170F: 0x365, 0x367, 0x34E, 0x16F\n#_03A298: db $71, $A8, $BF, $E7 : db $30, $93 ; 0x1710\u20130x1713: 0x071, 0x3A8, 0x3BF, 0x9E7\n#_03A29E: db $C1, $FC, $FE, $76 : db $93, $36 ; 0x1714\u20130x1717: 0x3C1, 0x9FC, 0x6FE, 0x376\n#_03A2A4: db $D2, $D2, $D2, $0B : db $33, $34 ; 0x1718\u20130x171B: 0x3D2, 0x3D2, 0x4D2, 0x30B\n#_03A2AA: db $C7, $C8, $C8, $CA : db $99, $93 ; 0x171C\u20130x171F: 0x9C7, 0x9C8, 0x3C8, 0x9CA\n#_03A2B0: db $E1, $CB, $CC, $CC : db $09, $99 ; 0x1720\u20130x1723: 0x9E1, 0x0CB, 0x9CC, 0x9CC\n#_03A2B6: db $34, $CA, $CA, $1C : db $09, $94 ; 0x1724\u20130x1727: 0x934, 0x0CA, 0x4CA, 0x91C\n#_03A2BC: db $D1, $D7, $1F, $D9 : db $99, $49 ; 0x1728\u20130x172B: 0x9D1, 0x9D7, 0x91F, 0x4D9\n#_03A2C2: db $DA, $01, $34, $34 : db $94, $00 ; 0x172C\u20130x172F: 0x4DA, 0x901, 0x034, 0x034\n#_03A2C8: db $01, $DC, $DD, $DC : db $49, $99 ; 0x1730\u20130x1733: 0x901, 0x4DC, 0x9DD, 0x9DC\n#_03A2CE: db $DD, $DD, $F0, $DF : db $99, $09 ; 0x1734\u20130x1737: 0x9DD, 0x9DD, 0x9F0, 0x0DF\n#_03A2D4: db $E1, $D2, $34, $2A : db $93, $04 ; 0x1738\u20130x173B: 0x3E1, 0x9D2, 0x434, 0x02A\n#_03A2DA: db $34, $CE, $E6, $1C : db $03, $94 ; 0x173C\u20130x173F: 0x334, 0x0CE, 0x4E6, 0x91C\n#_03A2E0: db $EA, $34, $34, $34 : db $90, $00 ; 0x1740\u20130x1743: 0x0EA, 0x934, 0x034, 0x034\n#_03A2E6: db $88, $34, $9D, $F7 : db $00, $23 ; 0x1744\u20130x1747: 0x088, 0x034, 0x39D, 0x2F7\n#_03A2EC: db $FA, $36, $9D, $34 : db $30, $20 ; 0x1748\u20130x174B: 0x0FA, 0x336, 0x09D, 0x234\n#_03A2F2: db $34, $34, $36, $14 : db $30, $04 ; 0x174C\u20130x174F: 0x034, 0x334, 0x436, 0x014\n#_03A2F8: db $9D, $36, $25, $0A : db $20, $11 ; 0x1750\u20130x1753: 0x09D, 0x236, 0x125, 0x10A\n#_03A2FE: db $34, $0B, $34, $36 : db $31, $00 ; 0x1754\u20130x1757: 0x134, 0x30B, 0x034, 0x036\n#_03A304: db $EC, $EC, $EC, $EC : db $99, $99 ; 0x1758\u20130x175B: 0x9EC, 0x9EC, 0x9EC, 0x9EC\n#_03A30A: db $EC, $EC, $EC, $ED : db $99, $99 ; 0x175C\u20130x175F: 0x9EC, 0x9EC, 0x9EC, 0x9ED\n#_03A310: db $EF, $F1, $F3, $F5 : db $99, $99 ; 0x1760\u20130x1763: 0x9EF, 0x9F1, 0x9F3, 0x9F5\n#_03A316: db $F7, $EC, $EE, $F0 : db $99, $99 ; 0x1764\u20130x1767: 0x9F7, 0x9EC, 0x9EE, 0x9F0\n#_03A31C: db $F2, $F4, $C5, $F4 : db $99, $59 ; 0x1768\u20130x176B: 0x9F2, 0x9F4, 0x9C5, 0x5F4\n#_03A322: db $F5, $F8, $F5, $FA : db $99, $99 ; 0x176C\u20130x176F: 0x9F5, 0x9F8, 0x9F5, 0x9FA\n#_03A328: db $24, $F4, $F8, $FD : db $19, $99 ; 0x1770\u20130x1773: 0x924, 0x1F4, 0x9F8, 0x9FD\n#_03A32E: db $F8, $F3, $F6, $F4 : db $99, $99 ; 0x1774\u20130x1777: 0x9F8, 0x9F3, 0x9F6, 0x9F4\n#_03A334: db $FF, $01, $24, $F3 : db $9A, $19 ; 0x1778\u20130x177B: 0xAFF, 0x901, 0x924, 0x1F3\n#_03A33A: db $F6, $F5, $F8, $02 : db $99, $9A ; 0x177C\u20130x177F: 0x9F6, 0x9F5, 0xAF8, 0x902\n#_03A340: db $04, $09, $24, $FC : db $AA, $19 ; 0x1780\u20130x1783: 0xA04, 0xA09, 0x924, 0x1FC\n#_03A346: db $F5, $02, $04, $0D : db $9A, $AA ; 0x1784\u20130x1787: 0xAF5, 0x902, 0xA04, 0xA0D\n#_03A34C: db $09, $12, $F5, $07 : db $AA, $9A ; 0x1788\u20130x178B: 0xA09, 0xA12, 0xAF5, 0x907\n#_03A352: db $F9, $F6, $FA, $F9 : db $99, $99 ; 0x178C\u20130x178F: 0x9F9, 0x9F6, 0x9FA, 0x9F9\n#_03A358: db $F8, $0C, $05, $16 : db $9A, $AA ; 0x1790\u20130x1793: 0xAF8, 0x90C, 0xA05, 0xA16\n#_03A35E: db $18, $18, $12, $F3 : db $AA, $A9 ; 0x1794\u20130x1797: 0xA18, 0xA18, 0x912, 0xAF3\n#_03A364: db $03, $09, $16, $04 : db $AA, $AA ; 0x1798\u20130x179B: 0xA03, 0xA09, 0xA16, 0xA04\n#_03A36A: db $04, $FD, $FE, $FE : db $A9, $99 ; 0x179C\u20130x179F: 0x904, 0xAFD, 0x9FE, 0x9FE\n#_03A370: db $12, $11, $FE, $FE : db $AA, $99 ; 0x17A0\u20130x17A3: 0xA12, 0xA11, 0x9FE, 0x9FE\n#_03A376: db $FE, $07, $F8, $F0 : db $9A, $99 ; 0x17A4\u20130x17A7: 0xAFE, 0x907, 0x9F8, 0x9F0\n#_03A37C: db $FE, $FE, $F0, $F0 : db $99, $99 ; 0x17A8\u20130x17AB: 0x9FE, 0x9FE, 0x9F0, 0x9F0\n#_03A382: db $F6, $07, $1C, $03 : db $9A, $AA ; 0x17AC\u20130x17AF: 0xAF6, 0x907, 0xA1C, 0xA03\n#_03A388: db $19, $1E, $1F, $16 : db $AA, $AA ; 0x17B0\u20130x17B3: 0xA19, 0xA1E, 0xA1F, 0xA16\n#_03A38E: db $07, $0A, $25, $09 : db $AA, $AA ; 0x17B4\u20130x17B7: 0xA07, 0xA0A, 0xA25, 0xA09\n#_03A394: db $19, $27, $29, $16 : db $AA, $AA ; 0x17B8\u20130x17BB: 0xA19, 0xA27, 0xA29, 0xA16\n#_03A39A: db $04, $04, $F8, $FC : db $AA, $99 ; 0x17BC\u20130x17BF: 0xA04, 0xA04, 0x9F8, 0x9FC\n#_03A3A0: db $0F, $FC, $0F, $12 : db $A9, $AA ; 0x17C0\u20130x17C3: 0x90F, 0xAFC, 0xA0F, 0xA12\n#_03A3A6: db $FC, $07, $F9, $07 : db $9A, $9A ; 0x17C4\u20130x17C7: 0xAFC, 0x907, 0xAF9, 0x907\n#_03A3AC: db $07, $EC, $EC, $F7 : db $A9, $99 ; 0x17C8\u20130x17CB: 0x907, 0xAEC, 0x9EC, 0x9F7\n#_03A3B2: db $2E, $30, $32, $2B : db $AA, $AA ; 0x17CC\u20130x17CF: 0xA2E, 0xA30, 0xA32, 0xA2B\n#_03A3B8: db $2D, $EC, $EC, $EC : db $A9, $99 ; 0x17D0\u20130x17D3: 0x92D, 0xAEC, 0x9EC, 0x9EC\n#_03A3BE: db $FA, $2E, $33, $2F : db $9A, $AA ; 0x17D4\u20130x17D7: 0xAFA, 0x92E, 0xA33, 0xA2F\n#_03A3C4: db $2E, $2F, $30, $C5 : db $AA, $A5 ; 0x17D8\u20130x17DB: 0xA2E, 0xA2F, 0x530, 0xAC5\n#_03A3CA: db $2F, $31, $F0, $2C : db $AA, $9A ; 0x17DC\u20130x17DF: 0xA2F, 0xA31, 0xAF0, 0x92C\n#_03A3D0: db $01, $35, $30, $30 : db $AA, $AA ; 0x17E0\u20130x17E3: 0xA01, 0xA35, 0xA30, 0xA30\n#_03A3D6: db $33, $FE, $30, $33 : db $A9, $AA ; 0x17E4\u20130x17E7: 0x933, 0xAFE, 0xA30, 0xA33\n#_03A3DC: db $FC, $19, $0C, $36 : db $9A, $AA ; 0x17E8\u20130x17EB: 0xAFC, 0x919, 0xA0C, 0xA36\n#_03A3E2: db $33, $2F, $19, $0E : db $AA, $AA ; 0x17EC\u20130x17EF: 0xA33, 0xA2F, 0xA19, 0xA0E\n#_03A3E8: db $0C, $36, $30, $01 : db $AA, $AA ; 0x17F0\u20130x17F3: 0xA0C, 0xA36, 0xA30, 0xA01\n#_03A3EE: db $F9, $07, $FE, $2E : db $9A, $9A ; 0x17F4\u20130x17F7: 0xAF9, 0x907, 0xAFE, 0x92E\n#_03A3F4: db $FC, $18, $15, $04 : db $9A, $AA ; 0x17F8\u20130x17FB: 0xAFC, 0x918, 0xA15, 0xA04\n#_03A3FA: db $33, $2F, $04, $19 : db $AA, $AA ; 0x17FC\u20130x17FF: 0xA33, 0xA2F, 0xA04, 0xA19\n#_03A400: db $04, $14, $30, $F6 : db $AA, $A9 ; 0x1800\u20130x1803: 0xA04, 0xA14, 0x930, 0xAF6\n#_03A406: db $FE, $1A, $1B, $F0 : db $9A, $A9 ; 0x1804\u20130x1807: 0xAFE, 0x91A, 0x91B, 0xAF0\n#_03A40C: db $F0, $F0, $33, $30 : db $99, $AA ; 0x1808\u20130x180B: 0x9F0, 0x9F0, 0xA33, 0xA30\n#_03A412: db $04, $04, $04, $04 : db $AA, $AA ; 0x180C\u20130x180F: 0xA04, 0xA04, 0xA04, 0xA04\n#_03A418: db $14, $04, $FE, $12 : db $AA, $9A ; 0x1810\u20130x1813: 0xA14, 0xA04, 0xAFE, 0x912\n#_03A41E: db $FD, $12, $12, $0F : db $9A, $AA ; 0x1814\u20130x1817: 0xAFD, 0x912, 0xA12, 0xA0F\n#_03A424: db $FC, $FC, $FC, $FC : db $99, $99 ; 0x1818\u20130x181B: 0x9FC, 0x9FC, 0x9FC, 0x9FC\n#_03A42A: db $FB, $12, $2F, $9C : db $9A, $A3 ; 0x181C\u20130x181F: 0xAFB, 0x912, 0x32F, 0xA9C\n#_03A430: db $0D, $34, $7D, $F8 : db $10, $10 ; 0x1820\u20130x1823: 0x00D, 0x134, 0x07D, 0x1F8\n#_03A436: db $AB, $24, $A5, $95 : db $01, $10 ; 0x1824\u20130x1827: 0x1AB, 0x024, 0x0A5, 0x195\n#_03A43C: db $24, $36, $0B, $A5 : db $10, $21 ; 0x1828\u20130x182B: 0x024, 0x136, 0x10B, 0x2A5\n#_03A442: db $27, $08, $CE, $A5 : db $13, $21 ; 0x182C\u20130x182F: 0x327, 0x108, 0x1CE, 0x2A5\n#_03A448: db $A5, $00, $34, $A5 : db $12, $01 ; 0x1830\u20130x1833: 0x2A5, 0x100, 0x134, 0x0A5\n#_03A44E: db $CE, $71, $11, $61 : db $20, $31 ; 0x1834\u20130x1837: 0x0CE, 0x271, 0x111, 0x361\n#_03A454: db $9E, $C9, $C9, $C9 : db $00, $00 ; 0x1838\u20130x183B: 0x09E, 0x0C9, 0x0C9, 0x0C9\n#_03A45A: db $C9, $3F, $40, $40 : db $0A, $AA ; 0x183C\u20130x183F: 0xAC9, 0x03F, 0xA40, 0xA40\n#_03A460: db $ED, $43, $EC, $45 : db $2A, $2A ; 0x1840\u20130x1843: 0xAED, 0x243, 0xAEC, 0x245\n#_03A466: db $E6, $E6, $E6, $E6 : db $22, $22 ; 0x1844\u20130x1847: 0x2E6, 0x2E6, 0x2E6, 0x2E6\n#_03A46C: db $4E, $4F, $E6, $E6 : db $AA, $22 ; 0x1848\u20130x184B: 0xA4E, 0xA4F, 0x2E6, 0x2E6\n#_03A472: db $EC, $51, $E6, $45 : db $2A, $2A ; 0x184C\u20130x184F: 0xAEC, 0x251, 0xAE6, 0x245\n#_03A478: db $40, $5D, $40, $45 : db $AA, $AA ; 0x1850\u20130x1853: 0xA40, 0xA5D, 0xA40, 0xA45\n#_03A47E: db $E6, $61, $5B, $4E : db $2A, $1A ; 0x1854\u20130x1857: 0xAE6, 0x261, 0xA5B, 0x14E\n#_03A484: db $E6, $51, $E6, $E6 : db $2A, $22 ; 0x1858\u20130x185B: 0xAE6, 0x251, 0x2E6, 0x2E6\n#_03A48A: db $E6, $6A, $E6, $45 : db $2A, $2A ; 0x185C\u20130x185F: 0xAE6, 0x26A, 0xAE6, 0x245\n#_03A490: db $5B, $61, $EC, $4E : db $1A, $2A ; 0x1860\u20130x1863: 0xA5B, 0x161, 0xAEC, 0x24E\n#_03A496: db $56, $53, $5B, $45 : db $AA, $1A ; 0x1864\u20130x1867: 0xA56, 0xA53, 0xA5B, 0x145\n#_03A49C: db $6A, $45, $45, $6A : db $AA, $AA ; 0x1868\u20130x186B: 0xA6A, 0xA45, 0xA45, 0xA6A\n#_03A4A2: db $59, $45, $5B, $48 : db $AA, $1A ; 0x186C\u20130x186F: 0xA59, 0xA45, 0xA5B, 0x148\n#_03A4A8: db $45, $E6, $6A, $45 : db $A2, $AA ; 0x1870\u20130x1873: 0x245, 0xAE6, 0xA6A, 0xA45\n#_03A4AE: db $45, $72, $45, $73 : db $AA, $AA ; 0x1874\u20130x1877: 0xA45, 0xA72, 0xA45, 0xA73\n#_03A4B4: db $E6, $4E, $4E, $4E : db $2A, $AA ; 0x1878\u20130x187B: 0xAE6, 0x24E, 0xA4E, 0xA4E\n#_03A4BA: db $5B, $41, $E6, $45 : db $15, $2A ; 0x187C\u20130x187F: 0x55B, 0x141, 0xAE6, 0x245\n#_03A4C0: db $6E, $6A, $45, $45 : db $AA, $AA ; 0x1880\u20130x1883: 0xA6E, 0xA6A, 0xA45, 0xA45\n#_03A4C6: db $48, $74, $46, $6A : db $AA, $AA ; 0x1884\u20130x1887: 0xA48, 0xA74, 0xA46, 0xA6A\n#_03A4CC: db $6A, $76, $6A, $E6 : db $AA, $A2 ; 0x1888\u20130x188B: 0xA6A, 0xA76, 0x26A, 0xAE6\n#_03A4D2: db $45, $E6, $E6, $6A : db $A2, $2A ; 0x188C\u20130x188F: 0x245, 0xAE6, 0xAE6, 0x26A\n#_03A4D8: db $6A, $6A, $45, $45 : db $AA, $AA ; 0x1890\u20130x1893: 0xA6A, 0xA6A, 0xA45, 0xA45\n#_03A4DE: db $45, $6D, $E6, $48 : db $AA, $2A ; 0x1894\u20130x1897: 0xA45, 0xA6D, 0xAE6, 0x248\n#_03A4E4: db $5B, $E6, $45, $E6 : db $12, $A2 ; 0x1898\u20130x189B: 0x25B, 0x1E6, 0x245, 0xAE6\n#_03A4EA: db $45, $6A, $45, $6A : db $AA, $AA ; 0x189C\u20130x189F: 0xA45, 0xA6A, 0xA45, 0xA6A\n#_03A4F0: db $71, $45, $45, $51 : db $AA, $A5 ; 0x18A0\u20130x18A3: 0xA71, 0xA45, 0x545, 0xA51\n#_03A4F6: db $E6, $6A, $E6, $64 : db $2A, $2A ; 0x18A4\u20130x18A7: 0xAE6, 0x26A, 0xAE6, 0x264\n#_03A4FC: db $66, $48, $E6, $4E : db $AA, $2A ; 0x18A8\u20130x18AB: 0xA66, 0xA48, 0xAE6, 0x24E\n#_03A502: db $4E, $4F, $E6, $E6 : db $AA, $22 ; 0x18AC\u20130x18AF: 0xA4E, 0xA4F, 0x2E6, 0x2E6\n#_03A508: db $E6, $E6, $48, $48 : db $22, $AA ; 0x18B0\u20130x18B3: 0x2E6, 0x2E6, 0xA48, 0xA48\n#_03A50E: db $67, $54, $4F, $7C : db $AA, $AA ; 0x18B4\u20130x18B7: 0xA67, 0xA54, 0xA4F, 0xA7C\n#_03A514: db $7C, $4E, $4E, $4E : db $AA, $AA ; 0x18B8\u20130x18BB: 0xA7C, 0xA4E, 0xA4E, 0xA4E\n#_03A51A: db $53, $5B, $41, $7C : db $AA, $AA ; 0x18BC\u20130x18BF: 0xA53, 0xA5B, 0xA41, 0xA7C\n#_03A520: db $7C, $7C, $7C, $C9 : db $AA, $A0 ; 0x18C0\u20130x18C3: 0xA7C, 0xA7C, 0x07C, 0xAC9\n#_03A526: db $C9, $7B, $7D, $44 : db $0A, $AA ; 0x18C4\u20130x18C7: 0xAC9, 0x07B, 0xA7D, 0xA44\n#_03A52C: db $46, $44, $80, $81 : db $AA, $AA ; 0x18C8\u20130x18CB: 0xA46, 0xA44, 0xA80, 0xA81\n#_03A532: db $7C, $7C, $7C, $7C : db $AA, $AA ; 0x18CC\u20130x18CF: 0xA7C, 0xA7C, 0xA7C, 0xA7C\n#_03A538: db $81, $84, $E6, $6A : db $AA, $2A ; 0x18D0\u20130x18D3: 0xA81, 0xA84, 0xAE6, 0x26A\n#_03A53E: db $8D, $8F, $86, $90 : db $AA, $AA ; 0x18D4\u20130x18D7: 0xA8D, 0xA8F, 0xA86, 0xA90\n#_03A544: db $90, $87, $8E, $8D : db $AA, $AA ; 0x18D8\u20130x18DB: 0xA90, 0xA87, 0xA8E, 0xA8D\n#_03A54A: db $4E, $53, $46, $98 : db $AA, $AA ; 0x18DC\u20130x18DF: 0xA4E, 0xA53, 0xA46, 0xA98\n#_03A550: db $99, $93, $9A, $9C : db $AA, $AA ; 0x18E0\u20130x18E3: 0xA99, 0xA93, 0xA9A, 0xA9C\n#_03A556: db $94, $99, $9D, $6D : db $AA, $AA ; 0x18E4\u20130x18E7: 0xA94, 0xA99, 0xA9D, 0xA6D\n#_03A55C: db $49, $A3, $A3, $A0 : db $AA, $AA ; 0x18E8\u20130x18EB: 0xA49, 0xAA3, 0xAA3, 0xAA0\n#_03A562: db $9A, $9C, $A0, $9B : db $AA, $AA ; 0x18EC\u20130x18EF: 0xA9A, 0xA9C, 0xAA0, 0xA9B\n#_03A568: db $A3, $E6, $E6, $A3 : db $A2, $2A ; 0x18F0\u20130x18F3: 0x2A3, 0xAE6, 0xAE6, 0x2A3\n#_03A56E: db $A9, $AA, $A8, $A9 : db $AA, $AA ; 0x18F4\u20130x18F7: 0xAA9, 0xAAA, 0xAA8, 0xAA9\n#_03A574: db $9B, $45, $5B, $5F : db $AA, $AA ; 0x18F8\u20130x18FB: 0xA9B, 0xA45, 0xA5B, 0xA5F\n#_03A57A: db $44, $55, $57, $4E : db $AA, $AA ; 0x18FC\u20130x18FF: 0xA44, 0xA55, 0xA57, 0xA4E\n#_03A580: db $67, $46, $46, $47 : db $AA, $AA ; 0x1900\u20130x1903: 0xA67, 0xA46, 0xA46, 0xA47\n#_03A586: db $48, $64, $66, $67 : db $AA, $AA ; 0x1904\u20130x1907: 0xA48, 0xA64, 0xA66, 0xA67\n#_03A58C: db $58, $5A, $44, $46 : db $AA, $AA ; 0x1908\u20130x190B: 0xA58, 0xA5A, 0xA44, 0xA46\n#_03A592: db $A3, $77, $44, $44 : db $AA, $AA ; 0x190C\u20130x190F: 0xAA3, 0xA77, 0xA44, 0xA44\n#_03A598: db $54, $4E, $4E, $4E : db $AA, $AA ; 0x1910\u20130x1913: 0xA54, 0xA4E, 0xA4E, 0xA4E\n#_03A59E: db $56, $53, $47, $48 : db $AA, $AA ; 0x1914\u20130x1917: 0xA56, 0xA53, 0xA47, 0xA48\n#_03A5A4: db $45, $74, $45, $63 : db $AA, $AA ; 0x1918\u20130x191B: 0xA45, 0xA74, 0xA45, 0xA63\n#_03A5AA: db $65, $48, $E6, $E6 : db $AA, $22 ; 0x191C\u20130x191F: 0xA65, 0xA48, 0x2E6, 0x2E6\n#_03A5B0: db $A3, $A3, $E6, $45 : db $AA, $2A ; 0x1920\u20130x1923: 0xAA3, 0xAA3, 0xAE6, 0x245\n#_03A5B6: db $48, $48, $46, $E6 : db $AA, $A2 ; 0x1924\u20130x1927: 0xA48, 0xA48, 0x246, 0xAE6\n#_03A5BC: db $5F, $E6, $A3, $A3 : db $A2, $AA ; 0x1928\u20130x192B: 0x25F, 0xAE6, 0xAA3, 0xAA3\n#_03A5C2: db $4C, $AD, $AD, $46 : db $AA, $AA ; 0x192C\u20130x192F: 0xA4C, 0xAAD, 0xAAD, 0xA46\n#_03A5C8: db $A3, $4E, $4E, $4E : db $AA, $AA ; 0x1930\u20130x1933: 0xAA3, 0xA4E, 0xA4E, 0xA4E\n#_03A5CE: db $4E, $67, $63, $48 : db $AA, $AA ; 0x1934\u20130x1937: 0xA4E, 0xA67, 0xA63, 0xA48\n#_03A5D4: db $48, $AD, $39, $34 : db $AA, $50 ; 0x1938\u20130x193B: 0xA48, 0xAAD, 0x039, 0x534\n#_03A5DA: db $34, $34, $C0, $B5 : db $00, $9A ; 0x193C\u20130x193F: 0x034, 0x034, 0xAC0, 0x9B5\n#_03A5E0: db $B7, $B7, $B9, $EC : db $AA, $A0 ; 0x1940\u20130x1943: 0xAB7, 0xAB7, 0x0B9, 0xAEC\n#_03A5E6: db $02, $BE, $C0, $B7 : db $4A, $AA ; 0x1944\u20130x1947: 0xA02, 0x4BE, 0xAC0, 0xAB7\n#_03A5EC: db $34, $C8, $35, $34 : db $4A, $40 ; 0x1948\u20130x194B: 0xA34, 0x4C8, 0x035, 0x434\n#_03A5F2: db $36, $F3, $F4, $A8 : db $00, $00 ; 0x194C\u20130x194F: 0x036, 0x0F3, 0x0F4, 0x0A8\n#_03A5F8: db $CE, $D9, $C6, $C7 : db $A0, $AA ; 0x1950\u20130x1953: 0x0CE, 0xAD9, 0xAC6, 0xAC7\n#_03A5FE: db $26, $26, $34, $34 : db $44, $00 ; 0x1954\u20130x1957: 0x426, 0x426, 0x034, 0x034\n#_03A604: db $34, $34, $F6, $F8 : db $00, $33 ; 0x1958\u20130x195B: 0x034, 0x034, 0x3F6, 0x3F8\n#_03A60A: db $F9, $E3, $B7, $B8 : db $39, $AA ; 0x195C\u20130x195F: 0x9F9, 0x3E3, 0xAB7, 0xAB8\n#_03A610: db $F6, $E3, $B7, $B7 : db $39, $AA ; 0x1960\u20130x1963: 0x9F6, 0x3E3, 0xAB7, 0xAB7\n#_03A616: db $D0, $F6, $4A, $FE : db $A3, $70 ; 0x1964\u20130x1967: 0x3D0, 0xAF6, 0x04A, 0x7FE\n#_03A61C: db $34, $D6, $34, $D6 : db $0A, $3A ; 0x1968\u20130x196B: 0xA34, 0x0D6, 0xA34, 0x3D6\n#_03A622: db $34, $1B, $38, $CE : db $32, $33 ; 0x196C\u20130x196F: 0x234, 0x31B, 0x338, 0x3CE\n#_03A628: db $D0, $D0, $34, $CF : db $33, $03 ; 0x1970\u20130x1973: 0x3D0, 0x3D0, 0x334, 0x0CF\n#_03A62E: db $CE, $34, $CE, $34 : db $30, $30 ; 0x1974\u20130x1977: 0x0CE, 0x334, 0x0CE, 0x334\n#_03A634: db $B7, $F0, $CA, $2A : db $A0, $94 ; 0x1978\u20130x197B: 0x0B7, 0xAF0, 0x4CA, 0x92A\n#_03A63A: db $CE, $6C, $C0, $B5 : db $33, $9A ; 0x197C\u20130x197F: 0x3CE, 0x36C, 0xAC0, 0x9B5\n#_03A640: db $BC, $34, $34, $CE : db $A0, $03 ; 0x1980\u20130x1983: 0x0BC, 0xA34, 0x334, 0x0CE\n#_03A646: db $79, $F0, $D0, $C4 : db $30, $93 ; 0x1984\u20130x1987: 0x079, 0x3F0, 0x3D0, 0x9C4\n#_03A64C: db $35, $FF, $34, $34 : db $40, $00 ; 0x1988\u20130x198B: 0x035, 0x4FF, 0x034, 0x034\n#_03A652: db $34, $7C, $DB, $DC : db $00, $AA ; 0x198C\u20130x198F: 0x034, 0x07C, 0xADB, 0xADC\n#_03A658: db $DE, $E2, $E4, $34 : db $AA, $A3 ; 0x1990\u20130x1993: 0xADE, 0xAE2, 0x3E4, 0xA34\n#_03A65E: db $35, $C9, $F6, $98 : db $4A, $53 ; 0x1994\u20130x1997: 0xA35, 0x4C9, 0x3F6, 0x598\n#_03A664: db $E3, $85, $34, $34 : db $01, $30 ; 0x1998\u20130x199B: 0x1E3, 0x085, 0x034, 0x334\n#_03A66A: db $79, $3E, $34, $3E : db $12, $02 ; 0x199C\u20130x199F: 0x279, 0x13E, 0x234, 0x03E\n#_03A670: db $F8, $04, $18, $14 : db $9A, $AA ; 0x19A0\u20130x19A3: 0xAF8, 0x904, 0xA18, 0xA14\n#_03A676: db $14, $04, $05, $06 : db $AA, $AA ; 0x19A4\u20130x19A7: 0xA14, 0xA04, 0xA05, 0xA06\n#_03A67C: db $24, $02, $84, $0F : db $1A, $3A ; 0x19A8\u20130x19AB: 0xA24, 0x102, 0xA84, 0x30F\n#_03A682: db $11, $F6, $DA, $84 : db $A9, $03 ; 0x19AC\u20130x19AF: 0x911, 0xAF6, 0x3DA, 0x084\n#_03A688: db $24, $E1, $34, $0F : db $10, $0A ; 0x19B0\u20130x19B3: 0x024, 0x1E1, 0xA34, 0x00F\n#_03A68E: db $38, $9C, $C8, $41 : db $30, $01 ; 0x19B4\u20130x19B7: 0x038, 0x39C, 0x1C8, 0x041\n#_03A694: db $27, $38, $34, $10 : db $33, $02 ; 0x19B8\u20130x19BB: 0x327, 0x338, 0x234, 0x010\n#_03A69A: db $06, $03, $03, $03 : db $AA, $AA ; 0x19BC\u20130x19BF: 0xA06, 0xA03, 0xA03, 0xA03\n#_03A6A0: db $17, $0C, $36, $06 : db $AA, $AA ; 0x19C0\u20130x19C3: 0xA17, 0xA0C, 0xA36, 0xA06\n#_03A6A6: db $03, $F6, $0F, $0F : db $A9, $AA ; 0x19C4\u20130x19C7: 0x903, 0xAF6, 0xA0F, 0xA0F\n#_03A6AC: db $34, $7E, $7E, $34 : db $03, $30 ; 0x19C8\u20130x19CB: 0x334, 0x07E, 0x07E, 0x334\n#_03A6B2: db $7E, $71, $37, $84 : db $30, $33 ; 0x19CC\u20130x19CF: 0x07E, 0x371, 0x337, 0x384\n#_03A6B8: db $34, $34, $EB, $EB : db $00, $AA ; 0x19D0\u20130x19D3: 0x034, 0x034, 0xAEB, 0xAEB\n#_03A6BE: db $27, $38, $AD, $9D : db $33, $32 ; 0x19D4\u20130x19D7: 0x327, 0x338, 0x2AD, 0x39D\n#_03A6C4: db $26, $C6, $C6, $C6 : db $10, $00 ; 0x19D8\u20130x19DB: 0x026, 0x1C6, 0x0C6, 0x0C6\n#_03A6CA: db $C6, $C6, $C6, $E9 : db $00, $01 ; 0x19DC\u20130x19DF: 0x0C6, 0x0C6, 0x1C6, 0x0E9\n#_03A6D0: db $20, $E5, $CD, $9E : db $52, $20 ; 0x19E0\u20130x19E3: 0x220, 0x5E5, 0x0CD, 0x29E\n#_03A6D6: db $81, $7F, $C6, $ED : db $77, $0A ; 0x19E4\u20130x19E7: 0x781, 0x77F, 0xAC6, 0x0ED\n#_03A6DC: db $C6, $C8, $6D, $E5 : db $00, $12 ; 0x19E8\u20130x19EB: 0x0C6, 0x0C8, 0x26D, 0x1E5\n#_03A6E2: db $A5, $34, $C7, $57 : db $30, $02 ; 0x19EC\u20130x19EF: 0x0A5, 0x334, 0x2C7, 0x057\n#_03A6E8: db $C8, $E6, $F1, $34 : db $00, $20 ; 0x19F0\u20130x19F3: 0x0C8, 0x0E6, 0x0F1, 0x234\n#_03A6EE: db $E5, $C6, $EC, $C6 : db $10, $A0 ; 0x19F4\u20130x19F7: 0x0E5, 0x1C6, 0x0EC, 0xAC6\n#_03A6F4: db $C7, $57, $E9, $C6 : db $02, $10 ; 0x19F8\u20130x19FB: 0x2C7, 0x057, 0x0E9, 0x1C6\n#_03A6FA: db $C6, $EE, $C4, $3F : db $0A, $02 ; 0x19FC\u20130x19FF: 0xAC6, 0x0EE, 0x2C4, 0x03F\n#_03A700: db $35, $34, $C7, $57 : db $00, $02 ; 0x1A00\u20130x1A03: 0x035, 0x034, 0x2C7, 0x057\n#_03A706: db $C6, $CD, $85, $C6 : db $02, $30 ; 0x1A04\u20130x1A07: 0x2C6, 0x0CD, 0x085, 0x3C6\n#_03A70C: db $0C, $C7, $34, $C6 : db $10, $00 ; 0x1A08\u20130x1A0B: 0x00C, 0x1C7, 0x034, 0x0C6\n#_03A712: db $41, $E6, $EF, $F0 : db $A2, $AA ; 0x1A0C\u20130x1A0F: 0x241, 0xAE6, 0xAEF, 0xAF0\n#_03A718: db $F0, $87, $EC, $E6 : db $AA, $22 ; 0x1A10\u20130x1A13: 0xAF0, 0xA87, 0x2EC, 0x2E6\n#_03A71E: db $E6, $E6, $EC, $E6 : db $22, $22 ; 0x1A14\u20130x1A17: 0x2E6, 0x2E6, 0x2EC, 0x2E6\n#_03A724: db $93, $F4, $F4, $F4 : db $AA, $AA ; 0x1A18\u20130x1A1B: 0xA93, 0xAF4, 0xAF4, 0xAF4\n#_03A72A: db $94, $46, $E6, $4B : db $AA, $2A ; 0x1A1C\u20130x1A1F: 0xA94, 0xA46, 0xAE6, 0x24B\n#_03A730: db $A3, $A3, $4B, $A3 : db $AA, $AA ; 0x1A20\u20130x1A23: 0xAA3, 0xAA3, 0xA4B, 0xAA3\n#_03A736: db $A3, $4B, $4B, $57 : db $AA, $AA ; 0x1A24\u20130x1A27: 0xAA3, 0xA4B, 0xA4B, 0xA57\n#_03A73C: db $4A, $46, $E6, $A3 : db $AA, $2A ; 0x1A28\u20130x1A2B: 0xA4A, 0xA46, 0xAE6, 0x2A3\n#_03A742: db $E6, $E6, $AD, $77 : db $22, $AA ; 0x1A2C\u20130x1A2F: 0x2E6, 0x2E6, 0xAAD, 0xA77\n#_03A748: db $EC, $A3, $64, $66 : db $2A, $AA ; 0x1A30\u20130x1A33: 0xAEC, 0x2A3, 0xA64, 0xA66\n#_03A74E: db $E6, $54, $EC, $A3 : db $2A, $2A ; 0x1A34\u20130x1A37: 0xAE6, 0x254, 0xAEC, 0x2A3\n#_03A754: db $EC, $E6, $AD, $77 : db $22, $AA ; 0x1A38\u20130x1A3B: 0x2EC, 0x2E6, 0xAAD, 0xA77\n#_03A75A: db $E6, $A3, $77, $77 : db $2A, $AA ; 0x1A3C\u20130x1A3F: 0xAE6, 0x2A3, 0xA77, 0xA77\n#_03A760: db $E6, $4B, $A3, $A3 : db $2A, $AA ; 0x1A40\u20130x1A43: 0xAE6, 0x24B, 0xAA3, 0xAA3\n#_03A766: db $4B, $6D, $4C, $EC : db $AA, $A2 ; 0x1A44\u20130x1A47: 0xA4B, 0xA6D, 0x24C, 0xAEC\n#_03A76C: db $5B, $48, $64, $65 : db $1A, $AA ; 0x1A48\u20130x1A4B: 0xA5B, 0x148, 0xA64, 0xA65\n#_03A772: db $48, $5B, $C4, $A5 : db $A1, $11 ; 0x1A4C\u20130x1A4F: 0x148, 0xA5B, 0x1C4, 0x1A5\n#_03A778: db $87, $E6, $4E, $E6 : db $76, $A2 ; 0x1A50\u20130x1A53: 0x687, 0x7E6, 0x24E, 0xAE6\n#_03A77E: db $E6, $A3, $A3, $E6 : db $2A, $A2 ; 0x1A54\u20130x1A57: 0xAE6, 0x2A3, 0x2A3, 0xAE6\n#_03A784: db $F8, $5B, $34, $77 : db $61, $0A ; 0x1A58\u20130x1A5B: 0x1F8, 0x65B, 0xA34, 0x077\n#_03A78A: db $71, $E6, $E6, $4B : db $06, $2A ; 0x1A5C\u20130x1A5F: 0x671, 0x0E6, 0xAE6, 0x24B\n#_03A790: db $A3, $4B, $E8, $25 : db $AA, $62 ; 0x1A60\u20130x1A63: 0xAA3, 0xA4B, 0x2E8, 0x625\n#_03A796: db $18, $A3, $A3, $A3 : db $2A, $AA ; 0x1A64\u20130x1A67: 0xA18, 0x2A3, 0xAA3, 0xAA3\n#_03A79C: db $E6, $4B, $E8, $55 : db $6A, $63 ; 0x1A68\u20130x1A6B: 0xAE6, 0x64B, 0x3E8, 0x655\n#_03A7A2: db $6A, $A3, $AD, $E6 : db $1A, $A6 ; 0x1A6C\u20130x1A6F: 0xA6A, 0x1A3, 0x6AD, 0xAE6\n#_03A7A8: db $48, $EC, $4B, $A3 : db $A2, $AA ; 0x1A70\u20130x1A73: 0x248, 0xAEC, 0xA4B, 0xAA3\n#_03A7AE: db $4B, $E6, $E6, $E8 : db $A2, $26 ; 0x1A74\u20130x1A77: 0x24B, 0xAE6, 0x6E6, 0x2E8\n#_03A7B4: db $6A, $AD, $AD, $A9 : db $1A, $A0 ; 0x1A78\u20130x1A7B: 0xA6A, 0x1AD, 0x0AD, 0xAA9\n#_03A7BA: db $A5, $A3, $A3, $34 : db $1A, $A0 ; 0x1A7C\u20130x1A7F: 0xAA5, 0x1A3, 0x0A3, 0xA34\n#_03A7C0: db $58, $D5, $D5, $04 : db $11, $11 ; 0x1A80\u20130x1A83: 0x158, 0x1D5, 0x1D5, 0x104\n#_03A7C6: db $E6, $E6, $4E, $4D : db $22, $AA ; 0x1A84\u20130x1A87: 0x2E6, 0x2E6, 0xA4E, 0xA4D\n#_03A7CC: db $4E, $44, $4F, $40 : db $AA, $AA ; 0x1A88\u20130x1A8B: 0xA4E, 0xA44, 0xA4F, 0xA40\n#_03A7D2: db $D5, $47, $F9, $EF : db $0A, $66 ; 0x1A8C\u20130x1A8F: 0xAD5, 0x047, 0x6F9, 0x6EF\n#_03A7D8: db $F9, $F9, $4E, $4E : db $66, $AA ; 0x1A90\u20130x1A93: 0x6F9, 0x6F9, 0xA4E, 0xA4E\n#_03A7DE: db $53, $4F, $E6, $E6 : db $AA, $22 ; 0x1A94\u20130x1A97: 0xA53, 0xA4F, 0x2E6, 0x2E6\n#_03A7E4: db $E8, $A4, $A5, $A5 : db $60, $11 ; 0x1A98\u20130x1A9B: 0x0E8, 0x6A4, 0x1A5, 0x1A5\n#_03A7EA: db $77, $45, $59, $6A : db $7A, $AA ; 0x1A9C\u20130x1A9F: 0xA77, 0x745, 0xA59, 0xA6A\n#_03A7F0: db $6A, $6A, $46, $E6 : db $AA, $A2 ; 0x1AA0\u20130x1AA3: 0xA6A, 0xA6A, 0x246, 0xAE6\n#_03A7F6: db $AD, $41, $35, $A3 : db $0A, $00 ; 0x1AA4\u20130x1AA7: 0xAAD, 0x041, 0x035, 0x0A3\n#_03A7FC: db $71, $6D, $45, $F8 : db $7A, $A6 ; 0x1AA8\u20130x1AAB: 0xA71, 0x76D, 0x645, 0xAF8\n#_03A802: db $A3, $F9, $A5, $34 : db $A6, $10 ; 0x1AAC\u20130x1AAF: 0x6A3, 0xAF9, 0x0A5, 0x134\n#_03A808: db $A5, $E6, $5F, $A3 : db $12, $AA ; 0x1AB0\u20130x1AB3: 0x2A5, 0x1E6, 0xA5F, 0xAA3\n#_03A80E: db $A3, $A3, $A5, $07 : db $AA, $07 ; 0x1AB4\u20130x1AB7: 0xAA3, 0xAA3, 0x7A5, 0x007\n#_03A814: db $FA, $79, $79, $9E : db $61, $30 ; 0x1AB8\u20130x1ABB: 0x1FA, 0x679, 0x079, 0x39E\n#_03A81A: db $53, $A5, $AC, $35 : db $A1, $00 ; 0x1ABC\u20130x1ABF: 0x153, 0xAA5, 0x0AC, 0x035\n#_03A820: db $34, $70, $45, $9E : db $01, $A0 ; 0x1AC0\u20130x1AC3: 0x134, 0x070, 0x045, 0xA9E\n#_03A826: db $A0, $F4, $F6, $A3 : db $01, $10 ; 0x1AC4\u20130x1AC7: 0x1A0, 0x0F4, 0x0F6, 0x1A3\n#_03A82C: db $7C, $45, $6C, $76 : db $7A, $77 ; 0x1AC8\u20130x1ACB: 0xA7C, 0x745, 0x76C, 0x776\n#_03A832: db $48, $35, $A5, $07 : db $A0, $17 ; 0x1ACC\u20130x1ACF: 0x048, 0xA35, 0x7A5, 0x107\n#_03A838: db $AD, $C2, $C4, $C6 : db $01, $00 ; 0x1AD0\u20130x1AD3: 0x1AD, 0x0C2, 0x0C4, 0x0C6\n#_03A83E: db $65, $65, $65, $66 : db $11, $11 ; 0x1AD4\u20130x1AD7: 0x165, 0x165, 0x165, 0x166\n#_03A844: db $7C, $C4, $65, $6D : db $10, $14 ; 0x1AD8\u20130x1ADB: 0x07C, 0x1C4, 0x465, 0x16D\n#_03A84A: db $38, $38, $36, $36 : db $33, $00 ; 0x1ADC\u20130x1ADF: 0x338, 0x338, 0x036, 0x036\n#_03A850: db $34, $71, $71, $34 : db $00, $00 ; 0x1AE0\u20130x1AE3: 0x034, 0x071, 0x071, 0x034\n#_03A856: db $42, $EC, $34, $34 : db $52, $00 ; 0x1AE4\u20130x1AE7: 0x242, 0x5EC, 0x034, 0x034\n#_03A85C: db $E6, $71, $6B, $36 : db $20, $60 ; 0x1AE8\u20130x1AEB: 0x0E6, 0x271, 0x06B, 0x636\n#_03A862: db $86, $34, $9D, $0A : db $10, $21 ; 0x1AEC\u20130x1AEF: 0x086, 0x134, 0x19D, 0x20A\n#_03A868: db $0B, $1D, $94, $E8 : db $10, $00 ; 0x1AF0\u20130x1AF3: 0x00B, 0x11D, 0x094, 0x0E8\n#_03A86E: db $E3, $39, $36, $86 : db $02, $01 ; 0x1AF4\u20130x1AF7: 0x2E3, 0x039, 0x136, 0x086\n#_03A874: db $34, $34, $81, $93 : db $00, $13 ; 0x1AF8\u20130x1AFB: 0x034, 0x034, 0x381, 0x193\n#_03A87A: db $E3, $85, $E3, $34 : db $01, $00 ; 0x1AFC\u20130x1AFF: 0x1E3, 0x085, 0x0E3, 0x034\n#_03A880: db $6A, $82, $3D, $86 : db $13, $21 ; 0x1B00\u20130x1B03: 0x36A, 0x182, 0x13D, 0x286\n#_03A886: db $7E, $FE, $EC, $00 : db $33, $0B ; 0x1B04\u20130x1B07: 0x37E, 0x3FE, 0xBEC, 0x000\n#_03A88C: db $76, $F2, $7E, $34 : db $00, $33 ; 0x1B08\u20130x1B0B: 0x076, 0x0F2, 0x37E, 0x334\n#_03A892: db $1E, $9D, $E8, $7F : db $00, $00 ; 0x1B0C\u20130x1B0F: 0x01E, 0x09D, 0x0E8, 0x07F\n#_03A898: db $94, $9B, $34, $34 : db $00, $00 ; 0x1B10\u20130x1B13: 0x094, 0x09B, 0x034, 0x034\n#_03A89E: db $E8, $0D, $DA, $DA : db $01, $00 ; 0x1B14\u20130x1B17: 0x1E8, 0x00D, 0x0DA, 0x0DA\n#_03A8A4: db $DA, $76, $35, $7B : db $00, $00 ; 0x1B18\u20130x1B1B: 0x0DA, 0x076, 0x035, 0x07B\n#_03A8AA: db $76, $9C, $34, $34 : db $00, $00 ; 0x1B1C\u20130x1B1F: 0x076, 0x09C, 0x034, 0x034\n#_03A8B0: db $E1, $34, $36, $34 : db $00, $00 ; 0x1B20\u20130x1B23: 0x0E1, 0x034, 0x036, 0x034\n#_03A8B6: db $9C, $9A, $71, $7F : db $00, $00 ; 0x1B24\u20130x1B27: 0x09C, 0x09A, 0x071, 0x07F\n#_03A8BC: db $34, $34, $34, $76 : db $00, $00 ; 0x1B28\u20130x1B2B: 0x034, 0x034, 0x034, 0x076\n#_03A8C2: db $35, $35, $95, $D9 : db $00, $00 ; 0x1B2C\u20130x1B2F: 0x035, 0x035, 0x095, 0x0D9\n#_03A8C8: db $71, $5D, $5E, $34 : db $01, $10 ; 0x1B30\u20130x1B33: 0x171, 0x05D, 0x05E, 0x134\n#_03A8CE: db $62, $35, $32, $35 : db $12, $22 ; 0x1B34\u20130x1B37: 0x262, 0x135, 0x232, 0x235\n#_03A8D4: db $7B, $D4, $71, $E8 : db $00, $00 ; 0x1B38\u20130x1B3B: 0x07B, 0x0D4, 0x071, 0x0E8\n#_03A8DA: db $76, $9F, $A4, $A5 : db $20, $00 ; 0x1B3C\u20130x1B3F: 0x076, 0x29F, 0x0A4, 0x0A5\n#_03A8E0: db $06, $71, $FF, $7C : db $20, $11 ; 0x1B40\u20130x1B43: 0x006, 0x271, 0x1FF, 0x17C\n#_03A8E6: db $34, $A5, $5C, $68 : db $00, $11 ; 0x1B44\u20130x1B47: 0x034, 0x0A5, 0x15C, 0x168\n#_03A8EC: db $17, $A5, $A7, $A4 : db $20, $00 ; 0x1B48\u20130x1B4B: 0x017, 0x2A5, 0x0A7, 0x0A4\n#_03A8F2: db $5C, $65, $C6, $34 : db $11, $00 ; 0x1B4C\u20130x1B4F: 0x15C, 0x165, 0x0C6, 0x034\n#_03A8F8: db $79, $E8, $36, $E1 : db $10, $00 ; 0x1B50\u20130x1B53: 0x079, 0x1E8, 0x036, 0x0E1\n#_03A8FE: db $C4, $34, $9E, $34 : db $10, $00 ; 0x1B54\u20130x1B57: 0x0C4, 0x134, 0x09E, 0x034\n#_03A904: db $FE, $C6, $A3, $27 : db $10, $01 ; 0x1B58\u20130x1B5B: 0x0FE, 0x1C6, 0x1A3, 0x027\n#_03A90A: db $34, $AD, $37, $0D : db $00, $21 ; 0x1B5C\u20130x1B5F: 0x034, 0x0AD, 0x137, 0x20D\n#_03A910: db $E1, $34, $5C, $37 : db $00, $12 ; 0x1B60\u20130x1B63: 0x0E1, 0x034, 0x25C, 0x137\n#_03A916: db $5E, $32, $34, $34 : db $12, $00 ; 0x1B64\u20130x1B67: 0x25E, 0x132, 0x034, 0x034\n#_03A91C: db $6A, $A3, $7C, $34 : db $10, $10 ; 0x1B68\u20130x1B6B: 0x06A, 0x1A3, 0x07C, 0x134\n#_03A922: db $34, $34, $FA, $FC : db $00, $00 ; 0x1B6C\u20130x1B6F: 0x034, 0x034, 0x0FA, 0x0FC\n#_03A928: db $6A, $C6, $9E, $CD : db $10, $02 ; 0x1B70\u20130x1B73: 0x06A, 0x1C6, 0x29E, 0x0CD\n#_03A92E: db $34, $0F, $AD, $20 : db $02, $02 ; 0x1B74\u20130x1B77: 0x234, 0x00F, 0x2AD, 0x020\n#_03A934: db $85, $34, $20, $20 : db $30, $55 ; 0x1B78\u20130x1B7B: 0x085, 0x334, 0x520, 0x520\n#_03A93A: db $9E, $7C, $20, $FF : db $01, $51 ; 0x1B7C\u20130x1B7F: 0x19E, 0x07C, 0x120, 0x5FF\n#_03A940: db $36, $A3, $C6, $69 : db $00, $01 ; 0x1B80\u20130x1B83: 0x036, 0x0A3, 0x1C6, 0x069\n#_03A946: db $68, $34, $C4, $FC : db $10, $11 ; 0x1B84\u20130x1B87: 0x068, 0x134, 0x1C4, 0x1FC\n#_03A94C: db $65, $A9, $A5, $A5 : db $10, $11 ; 0x1B88\u20130x1B8B: 0x065, 0x1A9, 0x1A5, 0x1A5\n#_03A952: db $AB, $A5, $85, $A5 : db $01, $31 ; 0x1B8C\u20130x1B8F: 0x1AB, 0x0A5, 0x185, 0x3A5\n#_03A958: db $C6, $34, $EA, $F0 : db $00, $22 ; 0x1B90\u20130x1B93: 0x0C6, 0x034, 0x2EA, 0x2F0\n#_03A95E: db $A5, $05, $D3, $C4 : db $1B, $21 ; 0x1B94\u20130x1B97: 0xBA5, 0x105, 0x1D3, 0x2C4\n#_03A964: db $A5, $2D, $39, $07 : db $11, $1B ; 0x1B98\u20130x1B9B: 0x1A5, 0x12D, 0xB39, 0x107\n#_03A96A: db $D3, $4E, $0B, $34 : db $21, $10 ; 0x1B9C\u20130x1B9F: 0x1D3, 0x24E, 0x00B, 0x134\n#_03A970: db $38, $C9, $41, $08 : db $30, $1B ; 0x1BA0\u20130x1BA3: 0x038, 0x3C9, 0xB41, 0x108\n#_03A976: db $24, $34, $09, $97 : db $10, $B3 ; 0x1BA4\u20130x1BA7: 0x024, 0x134, 0x309, 0xB97\n#_03A97C: db $1B, $1B, $CD, $CD : db $22, $22 ; 0x1BA8\u20130x1BAB: 0x21B, 0x21B, 0x2CD, 0x2CD\n#_03A982: db $CE, $24, $C5, $CD : db $21, $22 ; 0x1BAC\u20130x1BAF: 0x1CE, 0x224, 0x2C5, 0x2CD\n#_03A988: db $CD, $90, $25, $26 : db $22, $11 ; 0x1BB0\u20130x1BB3: 0x2CD, 0x290, 0x125, 0x126\n#_03A98E: db $A0, $01, $34, $F3 : db $01, $01 ; 0x1BB4\u20130x1BB7: 0x1A0, 0x001, 0x134, 0x0F3\n#_03A994: db $9F, $34, $FF, $A5 : db $00, $11 ; 0x1BB8\u20130x1BBB: 0x09F, 0x034, 0x1FF, 0x1A5\n#_03A99A: db $A8, $65, $34, $C7 : db $21, $00 ; 0x1BBC\u20130x1BBF: 0x1A8, 0x265, 0x034, 0x0C7\n#_03A9A0: db $20, $DC, $53, $34 : db $50, $10 ; 0x1BC0\u20130x1BC3: 0x020, 0x5DC, 0x053, 0x134\n#_03A9A6: db $E1, $C8, $E3, $9E : db $00, $00 ; 0x1BC4\u20130x1BC7: 0x0E1, 0x0C8, 0x0E3, 0x09E\n#_03A9AC: db $79, $7F, $E1, $E1 : db $10, $00 ; 0x1BC8\u20130x1BCB: 0x079, 0x17F, 0x0E1, 0x0E1\n#_03A9B2: db $C4, $A8, $34, $D9 : db $10, $00 ; 0x1BCC\u20130x1BCF: 0x0C4, 0x1A8, 0x034, 0x0D9\n#_03A9B8: db $A8, $B6, $78, $34 : db $00, $00 ; 0x1BD0\u20130x1BD3: 0x0A8, 0x0B6, 0x078, 0x034\n#_03A9BE: db $83, $9B, $D9, $20 : db $30, $05 ; 0x1BD4\u20130x1BD7: 0x083, 0x39B, 0x5D9, 0x020\n#_03A9C4: db $84, $7E, $7E, $86 : db $33, $30 ; 0x1BD8\u20130x1BDB: 0x384, 0x37E, 0x07E, 0x386\n#_03A9CA: db $3F, $CD, $E6, $D5 : db $22, $02 ; 0x1BDC\u20130x1BDF: 0x23F, 0x2CD, 0x2E6, 0x0D5\n#_03A9D0: db $24, $00, $27, $28 : db $13, $33 ; 0x1BE0\u20130x1BE3: 0x324, 0x100, 0x327, 0x328\n#_03A9D6: db $CE, $24, $7E, $C4 : db $21, $30 ; 0x1BE4\u20130x1BE7: 0x1CE, 0x224, 0x07E, 0x3C4\n#_03A9DC: db $04, $AD, $AD, $7E : db $36, $63 ; 0x1BE8\u20130x1BEB: 0x604, 0x3AD, 0x3AD, 0x67E\n#_03A9E2: db $07, $58, $24, $AA : db $11, $16 ; 0x1BEC\u20130x1BEF: 0x107, 0x158, 0x624, 0x1AA\n#_03A9E8: db $C6, $6A, $A5, $40 : db $01, $16 ; 0x1BF0\u20130x1BF3: 0x1C6, 0x06A, 0x6A5, 0x140\n#_03A9EE: db $40, $A5, $09, $78 : db $51, $11 ; 0x1BF4\u20130x1BF7: 0x140, 0x5A5, 0x109, 0x178\n#_03A9F4: db $C8, $F5, $5C, $5B : db $02, $71 ; 0x1BF8\u20130x1BFB: 0x2C8, 0x0F5, 0x15C, 0x75B\n#_03A9FA: db $78, $EE, $6A, $E6 : db $12, $12 ; 0x1BFC\u20130x1BFF: 0x278, 0x1EE, 0x26A, 0x1E6\n#_03AA00: db $96, $6A, $83, $FC : db $51, $32 ; 0x1C00\u20130x1C03: 0x196, 0x56A, 0x283, 0x3FC\n#_03AA06: db $97, $6A, $34, $FD : db $51, $02 ; 0x1C04\u20130x1C07: 0x197, 0x56A, 0x234, 0x0FD\n#_03AA0C: db $E6, $9C, $06, $65 : db $25, $11 ; 0x1C08\u20130x1C0B: 0x5E6, 0x29C, 0x106, 0x165\n#_03AA12: db $07, $34, $F3, $B6 : db $10, $19 ; 0x1C0C\u20130x1C0F: 0x007, 0x134, 0x9F3, 0x1B6\n#_03AA18: db $E6, $B9, $3F, $C6 : db $29, $50 ; 0x1C10\u20130x1C13: 0x9E6, 0x2B9, 0x03F, 0x5C6\n#_03AA1E: db $C8, $F4, $E6, $CC : db $02, $20 ; 0x1C14\u20130x1C17: 0x2C8, 0x0F4, 0x0E6, 0x2CC\n#_03AA24: db $C8, $58, $18, $C6 : db $01, $20 ; 0x1C18\u20130x1C1B: 0x1C8, 0x058, 0x018, 0x2C6\n#_03AA2A: db $C6, $CC, $E6, $72 : db $00, $27 ; 0x1C1C\u20130x1C1F: 0x0C6, 0x0CC, 0x7E6, 0x272\n#_03AA30: db $0B, $A5, $AB, $F9 : db $B1, $06 ; 0x1C20\u20130x1C23: 0x10B, 0xBA5, 0x6AB, 0x0F9\n#_03AA36: db $F0, $A5, $A5, $6A : db $61, $11 ; 0x1C24\u20130x1C27: 0x1F0, 0x6A5, 0x1A5, 0x16A\n#_03AA3C: db $A6, $FC, $34, $E1 : db $01, $00 ; 0x1C28\u20130x1C2B: 0x1A6, 0x0FC, 0x034, 0x0E1\n#_03AA42: db $E1, $CE, $04, $20 : db $00, $12 ; 0x1C2C\u20130x1C2F: 0x0E1, 0x0CE, 0x204, 0x120\n#_03AA48: db $C6, $7D, $5B, $71 : db $07, $11 ; 0x1C30\u20130x1C33: 0x7C6, 0x07D, 0x15B, 0x171\n#_03AA4E: db $0C, $66, $7D, $C6 : db $11, $70 ; 0x1C34\u20130x1C37: 0x10C, 0x166, 0x07D, 0x7C6\n#_03AA54: db $C6, $0C, $53, $0D : db $01, $1B ; 0x1C38\u20130x1C3B: 0x1C6, 0x00C, 0xB53, 0x10D\n#_03AA5A: db $83, $83, $1C, $C6 : db $11, $20 ; 0x1C3C\u20130x1C3F: 0x183, 0x183, 0x01C, 0x2C6\n#_03AA60: db $42, $10, $11, $E6 : db $5B, $B2 ; 0x1C40\u20130x1C43: 0xB42, 0x510, 0x211, 0xBE6\n#_03AA66: db $29, $12, $C7, $14 : db $3B, $2B ; 0x1C44\u20130x1C47: 0xB29, 0x312, 0xBC7, 0x214\n#_03AA6C: db $C7, $12, $C7, $C7 : db $2B, $22 ; 0x1C48\u20130x1C4B: 0xBC7, 0x212, 0x2C7, 0x2C7\n#_03AA72: db $29, $1A, $1C, $C7 : db $3B, $B2 ; 0x1C4C\u20130x1C4F: 0xB29, 0x31A, 0x21C, 0xBC7\n#_03AA78: db $1E, $1F, $C7, $20 : db $BB, $2B ; 0x1C50\u20130x1C53: 0xB1E, 0xB1F, 0xBC7, 0x220\n#_03AA7E: db $25, $27, $29, $C7 : db $BB, $B2 ; 0x1C54\u20130x1C57: 0xB25, 0xB27, 0x229, 0xBC7\n#_03AA84: db $2C, $2B, $40, $CD : db $BB, $52 ; 0x1C58\u20130x1C5B: 0xB2C, 0xB2B, 0x240, 0x5CD\n#_03AA8A: db $C7, $AB, $2B, $D9 : db $28, $B2 ; 0x1C5C\u20130x1C5F: 0x8C7, 0x2AB, 0x22B, 0xBD9\n#_03AA90: db $36, $38, $D7, $0F : db $BB, $2B ; 0x1C60\u20130x1C63: 0xB36, 0xB38, 0xBD7, 0x20F\n#_03AA96: db $C6, $C7, $43, $45 : db $22, $BB ; 0x1C64\u20130x1C67: 0x2C6, 0x2C7, 0xB43, 0xB45\n#_03AA9C: db $C7, $1E, $1C, $1A : db $2B, $23 ; 0x1C68\u20130x1C6B: 0xBC7, 0x21E, 0x31C, 0x21A\n#_03AAA2: db $47, $CD, $CD, $D2 : db $B2, $22 ; 0x1C6C\u20130x1C6F: 0x247, 0xBCD, 0x2CD, 0x2D2\n#_03AAA8: db $4B, $53, $52, $55 : db $BB, $BB ; 0x1C70\u20130x1C73: 0xB4B, 0xB53, 0xB52, 0xB55\n#_03AAAE: db $1A, $47, $C7, $56 : db $3B, $2B ; 0x1C74\u20130x1C77: 0xB1A, 0x347, 0xBC7, 0x256\n#_03AAB4: db $5C, $5E, $1E, $C6 : db $BB, $20 ; 0x1C78\u20130x1C7B: 0xB5C, 0xB5E, 0x01E, 0x2C6\n#_03AABA: db $5A, $56, $62, $63 : db $7B, $BB ; 0x1C7C\u20130x1C7F: 0xB5A, 0x756, 0xB62, 0xB63\n#_03AAC0: db $D2, $66, $1E, $29 : db $21, $23 ; 0x1C80\u20130x1C83: 0x1D2, 0x266, 0x31E, 0x229\n#_03AAC6: db $C7, $C7, $6A, $6C : db $22, $BB ; 0x1C84\u20130x1C87: 0x2C7, 0x2C7, 0xB6A, 0xB6C\n#_03AACC: db $6E, $70, $C6, $71 : db $BB, $2B ; 0x1C88\u20130x1C8B: 0xB6E, 0xB70, 0xBC6, 0x271\n#_03AAD2: db $5B, $15, $AB, $A2 : db $1B, $86 ; 0x1C8C\u20130x1C8F: 0xB5B, 0x115, 0x6AB, 0x8A2\n#_03AAD8: db $72, $C6, $1F, $29 : db $B2, $33 ; 0x1C90\u20130x1C93: 0x272, 0xBC6, 0x31F, 0x329\n#_03AADE: db $15, $75, $D2, $3F : db $BB, $25 ; 0x1C94\u20130x1C97: 0xB15, 0xB75, 0x5D2, 0x23F\n#_03AAE4: db $20, $E8, $3E, $44 : db $26, $B9 ; 0x1C98\u20130x1C9B: 0x620, 0x2E8, 0x93E, 0xB44\n#_03AAEA: db $C7, $39, $E6, $C8 : db $2B, $20 ; 0x1C9C\u20130x1C9F: 0xBC7, 0x239, 0x0E6, 0x2C8\n#_03AAF0: db $DF, $11, $96, $EF : db $2B, $52 ; 0x1CA0\u20130x1CA3: 0xBDF, 0x211, 0x296, 0x5EF\n#_03AAF6: db $CD, $74, $74, $F6 : db $2B, $B2 ; 0x1CA4\u20130x1CA7: 0xBCD, 0x274, 0x274, 0xBF6\n#_03AAFC: db $3E, $74, $EF, $74 : db $BB, $2B ; 0x1CA8\u20130x1CAB: 0xB3E, 0xB74, 0xBEF, 0x274\n#_03AB02: db $EF, $74, $C8, $9E : db $2B, $03 ; 0x1CAC\u20130x1CAF: 0xBEF, 0x274, 0x3C8, 0x09E\n#_03AB08: db $10, $C7, $DD, $C7 : db $B2, $22 ; 0x1CB0\u20130x1CB3: 0x210, 0xBC7, 0x2DD, 0x2C7\n#_03AB0E: db $36, $46, $68, $39 : db $BB, $BB ; 0x1CB4\u20130x1CB7: 0xB36, 0xB46, 0xB68, 0xB39\n#_03AB14: db $7A, $C7, $E6, $E6 : db $B2, $22 ; 0x1CB8\u20130x1CBB: 0x27A, 0xBC7, 0x2E6, 0x2E6\n#_03AB1A: db $E1, $20, $7E, $7F : db $23, $BB ; 0x1CBC\u20130x1CBF: 0x3E1, 0x220, 0xB7E, 0xB7F\n#_03AB20: db $13, $F4, $A2, $E4 : db $B2, $62 ; 0x1CC0\u20130x1CC3: 0x213, 0xBF4, 0x2A2, 0x6E4\n#_03AB26: db $83, $87, $0F, $C7 : db $B3, $B2 ; 0x1CC4\u20130x1CC7: 0x383, 0xB87, 0x20F, 0xBC7\n#_03AB2C: db $C7, $74, $C5, $34 : db $2B, $00 ; 0x1CC8\u20130x1CCB: 0xBC7, 0x274, 0x0C5, 0x034\n#_03AB32: db $17, $A5, $A5, $CE : db $20, $00 ; 0x1CCC\u20130x1CCF: 0x017, 0x2A5, 0x0A5, 0x0CE\n#_03AB38: db $20, $86, $36, $D5 : db $51, $01 ; 0x1CD0\u20130x1CD3: 0x120, 0x586, 0x136, 0x0D5\n#_03AB3E: db $C6, $85, $83, $83 : db $03, $11 ; 0x1CD4\u20130x1CD7: 0x3C6, 0x085, 0x183, 0x183\n#_03AB44: db $86, $7E, $DB, $7E : db $13, $03 ; 0x1CD8\u20130x1CDB: 0x386, 0x17E, 0x3DB, 0x07E\n#_03AB4A: db $83, $A3, $C6, $7C : db $30, $06 ; 0x1CDC\u20130x1CDF: 0x083, 0x3A3, 0x6C6, 0x07C\n#_03AB50: db $87, $83, $34, $A3 : db $63, $00 ; 0x1CE0\u20130x1CE3: 0x387, 0x683, 0x034, 0x0A3\n#_03AB56: db $C6, $6A, $87, $7E : db $01, $63 ; 0x1CE4\u20130x1CE7: 0x1C6, 0x06A, 0x387, 0x67E\n#_03AB5C: db $7C, $34, $84, $34 : db $60, $30 ; 0x1CE8\u20130x1CEB: 0x07C, 0x634, 0x084, 0x334\n#_03AB62: db $A4, $6A, $87, $7E : db $01, $63 ; 0x1CEC\u20130x1CEF: 0x1A4, 0x06A, 0x387, 0x67E\n#_03AB68: db $7E, $87, $04, $DA : db $36, $B2 ; 0x1CF0\u20130x1CF3: 0x67E, 0x387, 0x204, 0xBDA\n#_03AB6E: db $1C, $86, $04, $F6 : db $21, $B2 ; 0x1CF4\u20130x1CF7: 0x11C, 0x286, 0x204, 0xBF6\n#_03AB74: db $F6, $F6, $FD, $A6 : db $22, $10 ; 0x1CF8\u20130x1CFB: 0x2F6, 0x2F6, 0x0FD, 0x1A6\n#_03AB7A: db $7E, $A2, $CD, $F9 : db $36, $22 ; 0x1CFC\u20130x1CFF: 0x67E, 0x3A2, 0x2CD, 0x2F9\n#_03AB80: db $F9, $CD, $C2, $67 : db $22, $11 ; 0x1D00\u20130x1D03: 0x2F9, 0x2CD, 0x1C2, 0x167\n#_03AB86: db $F9, $D6, $58, $6A : db $22, $11 ; 0x1D04\u20130x1D07: 0x2F9, 0x2D6, 0x158, 0x16A\n#_03AB8C: db $D7, $CD, $D9, $D9 : db $22, $22 ; 0x1D08\u20130x1D0B: 0x2D7, 0x2CD, 0x2D9, 0x2D9\n#_03AB92: db $06, $D7, $D9, $D2 : db $B2, $22 ; 0x1D0C\u20130x1D0F: 0x206, 0xBD7, 0x2D9, 0x2D2\n#_03AB98: db $C7, $C7, $6A, $85 : db $22, $1B ; 0x1D10\u20130x1D13: 0x2C7, 0x2C7, 0xB6A, 0x185\n#_03AB9E: db $87, $7E, $EA, $EA : db $B3, $22 ; 0x1D14\u20130x1D17: 0x387, 0xB7E, 0x2EA, 0x2EA\n#_03ABA4: db $34, $79, $8D, $8A : db $06, $BB ; 0x1D18\u20130x1D1B: 0x634, 0x079, 0xB8D, 0xB8A\n#_03ABAA: db $05, $C8, $C9, $82 : db $B2, $26 ; 0x1D1C\u20130x1D1F: 0x205, 0xBC8, 0x6C9, 0x282\n#_03ABB0: db $8F, $07, $34, $06 : db $B1, $0B ; 0x1D20\u20130x1D23: 0x18F, 0xB07, 0xB34, 0x006\n#_03ABB6: db $DB, $7E, $7E, $34 : db $23, $30 ; 0x1D24\u20130x1D27: 0x3DB, 0x27E, 0x07E, 0x334\n#_03ABBC: db $85, $92, $C6, $6A : db $BB, $01 ; 0x1D28\u20130x1D2B: 0xB85, 0xB92, 0x1C6, 0x06A\n#_03ABC2: db $40, $C6, $7E, $83 : db $60, $11 ; 0x1D2C\u20130x1D2F: 0x040, 0x6C6, 0x17E, 0x183\n#_03ABC8: db $D1, $83, $C7, $86 : db $07, $0B ; 0x1D30\u20130x1D33: 0x7D1, 0x083, 0xBC7, 0x086\n#_03ABCE: db $E3, $7D, $DB, $C7 : db $03, $00 ; 0x1D34\u20130x1D37: 0x3E3, 0x07D, 0x0DB, 0x0C7\n#_03ABD4: db $7E, $E2, $36, $8D : db $30, $0B ; 0x1D38\u20130x1D3B: 0x07E, 0x3E2, 0xB36, 0x08D\n#_03ABDA: db $89, $C7, $DA, $36 : db $B2, $20 ; 0x1D3C\u20130x1D3F: 0x289, 0xBC7, 0x0DA, 0x236\n#_03ABE0: db $7E, $DA, $86, $7E : db $32, $63 ; 0x1D40\u20130x1D43: 0x27E, 0x3DA, 0x386, 0x67E\n#_03ABE6: db $7E, $C6, $34, $EB : db $32, $02 ; 0x1D44\u20130x1D47: 0x27E, 0x3C6, 0x234, 0x0EB\n#_03ABEC: db $87, $7E, $7E, $5C : db $63, $31 ; 0x1D48\u20130x1D4B: 0x387, 0x67E, 0x17E, 0x35C\n#_03ABF2: db $C5, $D6, $7E, $7E : db $02, $33 ; 0x1D4C\u20130x1D4F: 0x2C5, 0x0D6, 0x37E, 0x37E\n#_03ABF8: db $7E, $C8, $DB, $D3 : db $32, $22 ; 0x1D50\u20130x1D53: 0x27E, 0x3C8, 0x2DB, 0x2D3\n#_03ABFE: db $7E, $06, $E5, $D9 : db $31, $12 ; 0x1D54\u20130x1D57: 0x17E, 0x306, 0x2E5, 0x1D9\n#_03AC04: db $D2, $7E, $34, $D3 : db $23, $02 ; 0x1D58\u20130x1D5B: 0x3D2, 0x27E, 0x234, 0x0D3\n#_03AC0A: db $81, $D3, $C6, $06 : db $62, $01 ; 0x1D5C\u20130x1D5F: 0x281, 0x6D3, 0x1C6, 0x006\n#_03AC10: db $C7, $DA, $DA, $7E : db $22, $23 ; 0x1D60\u20130x1D63: 0x2C7, 0x2DA, 0x3DA, 0x27E\n#_03AC16: db $E9, $EA, $D3, $83 : db $22, $23 ; 0x1D64\u20130x1D67: 0x2E9, 0x2EA, 0x3D3, 0x283\n#_03AC1C: db $7E, $98, $34, $86 : db $3B, $06 ; 0x1D68\u20130x1D6B: 0xB7E, 0x398, 0x634, 0x086\n#_03AC22: db $87, $83, $3A, $D5 : db $63, $20 ; 0x1D6C\u20130x1D6F: 0x387, 0x683, 0x03A, 0x2D5\n#_03AC28: db $7E, $89, $8A, $E3 : db $3B, $B0 ; 0x1D70\u20130x1D73: 0xB7E, 0x389, 0x08A, 0xBE3\n#_03AC2E: db $4B, $56, $7D, $6A : db $11, $71 ; 0x1D74\u20130x1D77: 0x14B, 0x156, 0x17D, 0x76A\n#_03AC34: db $CD, $6A, $F4, $F6 : db $21, $00 ; 0x1D78\u20130x1D7B: 0x1CD, 0x26A, 0x0F4, 0x0F6\n#_03AC3A: db $9C, $CD, $FB, $9D : db $B2, $23 ; 0x1D7C\u20130x1D7F: 0x29C, 0xBCD, 0x3FB, 0x29D\n#_03AC40: db $CD, $9D, $CD, $CD : db $23, $22 ; 0x1D80\u20130x1D83: 0x3CD, 0x29D, 0x2CD, 0x2CD\n#_03AC46: db $CD, $C7, $DA, $71 : db $22, $20 ; 0x1D84\u20130x1D87: 0x2CD, 0x2C7, 0x0DA, 0x271\n#_03AC4C: db $D6, $6A, $D2, $DA : db $21, $22 ; 0x1D88\u20130x1D8B: 0x1D6, 0x26A, 0x2D2, 0x2DA\n#_03AC52: db $E3, $C7, $D1, $CD : db $02, $02 ; 0x1D8C\u20130x1D8F: 0x2E3, 0x0C7, 0x2D1, 0x0CD\n#_03AC58: db $D9, $CD, $D6, $6D : db $22, $21 ; 0x1D90\u20130x1D93: 0x2D9, 0x2CD, 0x1D6, 0x26D\n#_03AC5E: db $DF, $A2, $EF, $D2 : db $2B, $22 ; 0x1D94\u20130x1D97: 0xBDF, 0x2A2, 0x2EF, 0x2D2\n#_03AC64: db $D2, $C7, $DA, $D4 : db $22, $22 ; 0x1D98\u20130x1D9B: 0x2D2, 0x2C7, 0x2DA, 0x2D4\n#_03AC6A: db $F6, $D2, $A0, $A5 : db $22, $BB ; 0x1D9C\u20130x1D9F: 0x2F6, 0x2D2, 0xBA0, 0xBA5\n#_03AC70: db $A7, $A0, $C7, $DD : db $BB, $22 ; 0x1DA0\u20130x1DA3: 0xBA7, 0xBA0, 0x2C7, 0x2DD\n#_03AC76: db $A0, $CD, $9E, $AC : db $B2, $BB ; 0x1DA4\u20130x1DA7: 0x2A0, 0xBCD, 0xB9E, 0xBAC\n#_03AC7C: db $A9, $A9, $A9, $A5 : db $BB, $BB ; 0x1DA8\u20130x1DAB: 0xBA9, 0xBA9, 0xBA9, 0xBA5\n#_03AC82: db $AA, $AE, $C7, $C7 : db $BB, $22 ; 0x1DAC\u20130x1DAF: 0xBAA, 0xBAE, 0x2C7, 0x2C7\n#_03AC88: db $DF, $B5, $B6, $B8 : db $2B, $BB ; 0x1DB0\u20130x1DB3: 0xBDF, 0x2B5, 0xBB6, 0xBB8\n#_03AC8E: db $B7, $B7, $BA, $B7 : db $BB, $BB ; 0x1DB4\u20130x1DB7: 0xBB7, 0xBB7, 0xBBA, 0xBB7\n#_03AC94: db $B3, $BC, $EF, $D2 : db $BB, $22 ; 0x1DB8\u20130x1DBB: 0xBB3, 0xBBC, 0x2EF, 0x2D2\n#_03AC9A: db $BD, $B8, $B7, $C1 : db $BB, $BB ; 0x1DBC\u20130x1DBF: 0xBBD, 0xBB8, 0xBB7, 0xBC1\n#_03ACA0: db $B7, $B3, $C3, $A5 : db $BB, $B9 ; 0x1DC0\u20130x1DC3: 0xBB7, 0xBB3, 0x9C3, 0xBA5\n#_03ACA6: db $C6, $B6, $B7, $C1 : db $2B, $BB ; 0x1DC4\u20130x1DC7: 0xBC6, 0x2B6, 0xBB7, 0xBC1\n#_03ACAC: db $C7, $C8, $C1, $B7 : db $BB, $BB ; 0x1DC8\u20130x1DCB: 0xBC7, 0xBC8, 0xBC1, 0xBB7\n#_03ACB2: db $B3, $C7, $D2, $AC : db $B2, $2B ; 0x1DCC\u20130x1DCF: 0x2B3, 0xBC7, 0xBD2, 0x2AC\n#_03ACB8: db $B6, $C8, $C8, $D0 : db $BB, $BB ; 0x1DD0\u20130x1DD3: 0xBB6, 0xBC8, 0xBC8, 0xBD0\n#_03ACBE: db $D2, $C8, $C8, $C9 : db $BB, $BB ; 0x1DD4\u20130x1DD7: 0xBD2, 0xBC8, 0xBC8, 0xBC9\n#_03ACC4: db $B3, $A0, $C6, $B5 : db $BB, $2B ; 0x1DD8\u20130x1DDB: 0xBB3, 0xBA0, 0xBC6, 0x2B5\n#_03ACCA: db $B3, $A9, $A9, $AA : db $BB, $BB ; 0x1DDC\u20130x1DDF: 0xBB3, 0xBA9, 0xBA9, 0xBAA\n#_03ACD0: db $A9, $C2, $EF, $53 : db $BB, $21 ; 0x1DE0\u20130x1DE3: 0xBA9, 0xBC2, 0x1EF, 0x253\n#_03ACD6: db $20, $20, $CF, $EE : db $55, $01 ; 0x1DE4\u20130x1DE7: 0x520, 0x520, 0x1CF, 0x0EE\n#_03ACDC: db $20, $E0, $83, $6A : db $50, $31 ; 0x1DE8\u20130x1DEB: 0x020, 0x5E0, 0x183, 0x36A\n#_03ACE2: db $34, $34, $34, $D4 : db $00, $00 ; 0x1DEC\u20130x1DEF: 0x034, 0x034, 0x034, 0x0D4\n#_03ACE8: db $0F, $34, $89, $8A : db $20, $BB ; 0x1DF0\u20130x1DF3: 0x00F, 0x234, 0xB89, 0xB8A\n#_03ACEE: db $71, $C6, $6A, $34 : db $00, $10 ; 0x1DF4\u20130x1DF7: 0x071, 0x0C6, 0x06A, 0x134\n#_03ACF4: db $89, $96, $A3, $5B : db $BB, $01 ; 0x1DF8\u20130x1DFB: 0xB89, 0xB96, 0x1A3, 0x05B\n#_03ACFA: db $76, $9E, $9F, $20 : db $10, $02 ; 0x1DFC\u20130x1DFF: 0x076, 0x19E, 0x29F, 0x020\n#_03AD00: db $2D, $87, $20, $78 : db $17, $21 ; 0x1E00\u20130x1E03: 0x72D, 0x187, 0x120, 0x278\n#_03AD06: db $CD, $5C, $C6, $04 : db $27, $03 ; 0x1E04\u20130x1E07: 0x7CD, 0x25C, 0x3C6, 0x004\n#_03AD0C: db $C8, $E6, $5A, $E5 : db $02, $72 ; 0x1E08\u20130x1E0B: 0x2C8, 0x0E6, 0x25A, 0x7E5\n#_03AD12: db $88, $D5, $3A, $FE : db $70, $22 ; 0x1E0C\u20130x1E0F: 0x088, 0x7D5, 0x23A, 0x2FE\n#_03AD18: db $7F, $16, $2D, $61 : db $13, $11 ; 0x1E10\u20130x1E13: 0x37F, 0x116, 0x12D, 0x161\n#_03AD1E: db $9A, $A5, $E6, $8D : db $33, $27 ; 0x1E14\u20130x1E17: 0x39A, 0x3A5, 0x7E6, 0x28D\n#_03AD24: db $C5, $CD, $FA, $E1 : db $22, $2B ; 0x1E18\u20130x1E1B: 0x2C5, 0x2CD, 0xBFA, 0x2E1\n#_03AD2A: db $8D, $EF, $F6, $C7 : db $72, $22 ; 0x1E1C\u20130x1E1F: 0x28D, 0x7EF, 0x2F6, 0x2C7\n#_03AD30: db $CD, $C6, $42, $FA : db $20, $56 ; 0x1E20\u20130x1E23: 0x0CD, 0x2C6, 0x642, 0x5FA\n#_03AD36: db $C7, $DA, $E6, $C6 : db $22, $20 ; 0x1E24\u20130x1E27: 0x2C7, 0x2DA, 0x0E6, 0x2C6\n#_03AD3C: db $C7, $C7, $CD, $E6 : db $22, $22 ; 0x1E28\u20130x1E2B: 0x2C7, 0x2C7, 0x2CD, 0x2E6\n#_03AD42: db $C7, $45, $C7, $DA : db $29, $22 ; 0x1E2C\u20130x1E2F: 0x9C7, 0x245, 0x2C7, 0x2DA\n#_03AD48: db $29, $60, $15, $C7 : db $37, $B2 ; 0x1E30\u20130x1E33: 0x729, 0x360, 0x215, 0xBC7\n#_03AD4E: db $40, $42, $15, $14 : db $65, $BB ; 0x1E34\u20130x1E37: 0x540, 0x642, 0xB15, 0xB14\n#_03AD54: db $C7, $C7, $37, $5B : db $22, $B1 ; 0x1E38\u20130x1E3B: 0x2C7, 0x2C7, 0x137, 0xB5B\n#_03AD5A: db $DA, $78, $0F, $DF : db $21, $B2 ; 0x1E3C\u20130x1E3F: 0x1DA, 0x278, 0x20F, 0xBDF\n#_03AD60: db $C7, $C7, $E6, $12 : db $22, $2B ; 0x1E40\u20130x1E43: 0x2C7, 0x2C7, 0xBE6, 0x212\n#_03AD66: db $C7, $E9, $1C, $29 : db $2B, $23 ; 0x1E44\u20130x1E47: 0xBC7, 0x2E9, 0x31C, 0x229\n#_03AD6C: db $46, $C7, $EB, $19 : db $B2, $B3 ; 0x1E48\u20130x1E4B: 0x246, 0xBC7, 0x3EB, 0xB19\n#_03AD72: db $C7, $68, $C7, $C7 : db $2B, $22 ; 0x1E4C\u20130x1E4F: 0xBC7, 0x268, 0x2C7, 0x2C7\n#_03AD78: db $20, $46, $68, $71 : db $3B, $BB ; 0x1E50\u20130x1E53: 0xB20, 0x346, 0xB68, 0xB71\n#_03AD7E: db $20, $AA, $71, $67 : db $30, $17 ; 0x1E54\u20130x1E57: 0x020, 0x3AA, 0x771, 0x167\n#_03AD84: db $C7, $C7, $C7, $68 : db $22, $2B ; 0x1E58\u20130x1E5B: 0x2C7, 0x2C7, 0xBC7, 0x268\n#_03AD8A: db $68, $96, $07, $C7 : db $B5, $12 ; 0x1E5C\u20130x1E5F: 0x568, 0xB96, 0x207, 0x1C7\n#_03AD90: db $C7, $C7, $C7, $71 : db $22, $2B ; 0x1E60\u20130x1E63: 0x2C7, 0x2C7, 0xBC7, 0x271\n#_03AD96: db $06, $67, $71, $12 : db $1B, $BB ; 0x1E64\u20130x1E67: 0xB06, 0x167, 0xB71, 0xB12\n#_03AD9C: db $7E, $C7, $C6, $C6 : db $B2, $00 ; 0x1E68\u20130x1E6B: 0x27E, 0xBC7, 0x0C6, 0x0C6\n#_03ADA2: db $74, $15, $3F, $F6 : db $BB, $B2 ; 0x1E6C\u20130x1E6F: 0xB74, 0xB15, 0x23F, 0xBF6\n#_03ADA8: db $E7, $65, $7F, $C7 : db $B1, $72 ; 0x1E70\u20130x1E73: 0x1E7, 0xB65, 0x27F, 0x7C7\n#_03ADAE: db $C6, $D0, $3F, $EE : db $00, $5B ; 0x1E74\u20130x1E77: 0x0C6, 0x0D0, 0xB3F, 0x5EE\n#_03ADB4: db $11, $E6, $14, $DA : db $B2, $B2 ; 0x1E78\u20130x1E7B: 0x211, 0xBE6, 0x214, 0xBDA\n#_03ADBA: db $C7, $11, $20, $3E : db $2B, $BB ; 0x1E7C\u20130x1E7F: 0xBC7, 0x211, 0xB20, 0xB3E\n#_03ADC0: db $44, $40, $C7, $11 : db $9B, $2B ; 0x1E80\u20130x1E83: 0xB44, 0x940, 0xBC7, 0x211\n#_03ADC6: db $C8, $D2, $C7, $36 : db $00, $2B ; 0x1E84\u20130x1E87: 0x0C8, 0x0D2, 0xBC7, 0x236\n#_03ADCC: db $3F, $C7, $74, $D3 : db $B2, $B0 ; 0x1E88\u20130x1E8B: 0x23F, 0xBC7, 0x074, 0xBD3\n#_03ADD2: db $C7, $39, $7E, $D7 : db $2B, $B2 ; 0x1E8C\u20130x1E8F: 0xBC7, 0x239, 0x27E, 0xBD7\n#_03ADD8: db $74, $68, $47, $C7 : db $B6, $B2 ; 0x1E90\u20130x1E93: 0x674, 0xB68, 0x247, 0xBC7\n#_03ADDE: db $67, $E6, $FE, $C5 : db $B2, $20 ; 0x1E94\u20130x1E97: 0x267, 0xBE6, 0x0FE, 0x2C5\n#_03ADE4: db $E6, $68, $C6, $40 : db $2B, $06 ; 0x1E98\u20130x1E9B: 0xBE6, 0x268, 0x6C6, 0x040\n#_03ADEA: db $CC, $CC, $78, $CC : db $00, $10 ; 0x1E9C\u20130x1E9F: 0x0CC, 0x0CC, 0x078, 0x1CC\n#_03ADF0: db $CC, $20, $FF, $AD : db $02, $10 ; 0x1EA0\u20130x1EA3: 0x2CC, 0x020, 0x0FF, 0x1AD\n#_03ADF6: db $EE, $34, $34, $34 : db $10, $00 ; 0x1EA4\u20130x1EA7: 0x0EE, 0x134, 0x034, 0x034\n#_03ADFC: db $34, $D5, $C6, $C6 : db $00, $00 ; 0x1EA8\u20130x1EAB: 0x034, 0x0D5, 0x0C6, 0x0C6\n#_03AE02: db $85, $93, $75, $8D : db $3B, $1B ; 0x1EAC\u20130x1EAF: 0xB85, 0x393, 0xB75, 0x18D\n#_03AE08: db $95, $A9, $7C, $22 : db $B0, $12 ; 0x1EB0\u20130x1EB3: 0x095, 0xBA9, 0x27C, 0x122\n#_03AE0E: db $13, $82, $35, $0F : db $23, $02 ; 0x1EB4\u20130x1EB7: 0x313, 0x282, 0x235, 0x00F\n#_03AE14: db $03, $EA, $04, $E9 : db $B2, $B2 ; 0x1EB8\u20130x1EBB: 0x203, 0xBEA, 0x204, 0xBE9\n#_03AE1A: db $EA, $F0, $85, $34 : db $22, $30 ; 0x1EBC\u20130x1EBF: 0x2EA, 0x2F0, 0x085, 0x334\n#_03AE20: db $04, $C8, $34, $DB : db $B2, $02 ; 0x1EC0\u20130x1EC3: 0x204, 0xBC8, 0x234, 0x0DB\n#_03AE26: db $99, $03, $C7, $DA : db $BB, $22 ; 0x1EC4\u20130x1EC7: 0xB99, 0xB03, 0x2C7, 0x2DA\n#_03AE2C: db $F3, $F5, $7E, $34 : db $BB, $30 ; 0x1EC8\u20130x1ECB: 0xBF3, 0xBF5, 0x07E, 0x334\n#_03AE32: db $05, $DA, $F9, $FB : db $B2, $BB ; 0x1ECC\u20130x1ECF: 0x205, 0xBDA, 0xBF9, 0xBFB\n#_03AE38: db $03, $E9, $34, $07 : db $B2, $0B ; 0x1ED0\u20130x1ED3: 0x203, 0xBE9, 0xB34, 0x007\n#_03AE3E: db $D7, $01, $03, $05 : db $2C, $CB ; 0x1ED4\u20130x1ED7: 0xCD7, 0x201, 0xB03, 0xC05\n#_03AE44: db $C6, $05, $C8, $06 : db $2B, $2C ; 0x1ED8\u20130x1EDB: 0xBC6, 0x205, 0xCC8, 0x206\n#_03AE4A: db $05, $06, $34, $85 : db $CB, $03 ; 0x1EDC\u20130x1EDF: 0xB05, 0xC06, 0x334, 0x085\n#_03AE50: db $7E, $7E, $82, $86 : db $33, $31 ; 0x1EE0\u20130x1EE3: 0x37E, 0x37E, 0x182, 0x386\n#_03AE56: db $30, $AD, $AD, $90 : db $76, $6B ; 0x1EE4\u20130x1EE7: 0x630, 0x7AD, 0xBAD, 0x690\n#_03AE5C: db $03, $69, $7E, $84 : db $B1, $33 ; 0x1EE8\u20130x1EEB: 0x103, 0xB69, 0x37E, 0x384\n#_03AE62: db $7E, $34, $34, $86 : db $30, $06 ; 0x1EEC\u20130x1EEF: 0x07E, 0x334, 0x634, 0x086\n#_03AE68: db $E8, $7E, $34, $EB : db $13, $01 ; 0x1EF0\u20130x1EF3: 0x3E8, 0x17E, 0x134, 0x0EB\n#_03AE6E: db $C8, $83, $7E, $96 : db $03, $3B ; 0x1EF4\u20130x1EF7: 0x3C8, 0x083, 0xB7E, 0x396\n#_03AE74: db $EB, $E6, $82, $82 : db $12, $33 ; 0x1EF8\u20130x1EFB: 0x2EB, 0x1E6, 0x382, 0x382\n#_03AE7A: db $93, $89, $36, $ED : db $BB, $02 ; 0x1EFC\u20130x1EFF: 0xB93, 0xB89, 0x236, 0x0ED\n#_03AE80: db $34, $40, $8D, $7E : db $05, $73 ; 0x1F00\u20130x1F03: 0x534, 0x040, 0x38D, 0x77E\n#_03AE86: db $34, $B0, $CC, $03 : db $02, $03 ; 0x1F04\u20130x1F07: 0x234, 0x0B0, 0x3CC, 0x003\n#_03AE8C: db $53, $34, $34, $87 : db $10, $07 ; 0x1F08\u20130x1F0B: 0x053, 0x134, 0x734, 0x087\n#_03AE92: db $6F, $E5, $ED, $87 : db $72, $17 ; 0x1F0C\u20130x1F0F: 0x26F, 0x7E5, 0x7ED, 0x187\n#_03AE98: db $F5, $87, $AB, $7C : db $17, $07 ; 0x1F10\u20130x1F13: 0x7F5, 0x187, 0x7AB, 0x07C\n#_03AE9E: db $C8, $27, $5C, $ED : db $01, $72 ; 0x1F14\u20130x1F17: 0x1C8, 0x027, 0x25C, 0x7ED\n#_03AEA4: db $E6, $ED, $20, $E6 : db $22, $32 ; 0x1F18\u20130x1F1B: 0x2E6, 0x2ED, 0x220, 0x3E6\n#_03AEAA: db $18, $A9, $20, $7B : db $26, $37 ; 0x1F1C\u20130x1F1F: 0x618, 0x2A9, 0x720, 0x37B\n#_03AEB0: db $58, $65, $5B, $34 : db $11, $10 ; 0x1F20\u20130x1F23: 0x158, 0x165, 0x05B, 0x134\n#_03AEB6: db $31, $D8, $F6, $CD : db $12, $22 ; 0x1F24\u20130x1F27: 0x231, 0x1D8, 0x2F6, 0x2CD\n#_03AEBC: db $47, $DD, $46, $C7 : db $B2, $B2 ; 0x1F28\u20130x1F2B: 0x247, 0xBDD, 0x246, 0xBC7\n#_03AEC2: db $67, $D7, $C9, $53 : db $B2, $01 ; 0x1F2C\u20130x1F2F: 0x267, 0xBD7, 0x1C9, 0x053\n#_03AEC8: db $46, $12, $E6, $EC : db $BB, $22 ; 0x1F30\u20130x1F33: 0xB46, 0xB12, 0x2E6, 0x2EC\n#_03AECE: db $15, $8B, $75, $12 : db $B3, $1B ; 0x1F34\u20130x1F37: 0x315, 0xB8B, 0xB75, 0x112\n#_03AED4: db $12, $87, $E6, $96 : db $B3, $25 ; 0x1F38\u20130x1F3B: 0x312, 0xB87, 0x5E6, 0x296\n#_03AEDA: db $E6, $89, $CD, $4F : db $27, $27 ; 0x1F3C\u20130x1F3F: 0x7E6, 0x289, 0x7CD, 0x24F\n#_03AEE0: db $4F, $66, $51, $C6 : db $71, $72 ; 0x1F40\u20130x1F43: 0x14F, 0x766, 0x251, 0x7C6\n#_03AEE6: db $B6, $B3, $0F, $10 : db $BB, $CC ; 0x1F44\u20130x1F47: 0xBB6, 0xBB3, 0xC0F, 0xC10\n#_03AEEC: db $A9, $B6, $12, $E4 : db $BB, $C2 ; 0x1F48\u20130x1F4B: 0xBA9, 0xBB6, 0x212, 0xCE4\n#_03AEF2: db $CE, $C5, $17, $BF : db $BB, $CB ; 0x1F4C\u20130x1F4F: 0xBCE, 0xBC5, 0xB17, 0xCBF\n#_03AEF8: db $C5, $B3, $D7, $CD : db $BB, $22 ; 0x1F50\u20130x1F53: 0xBC5, 0xBB3, 0x2D7, 0x2CD\n#_03AEFE: db $D7, $B5, $A9, $A9 : db $BB, $BB ; 0x1F54\u20130x1F57: 0xBD7, 0xBB5, 0xBA9, 0xBA9\n#_03AF04: db $1E, $C8, $D8, $A9 : db $CB, $BB ; 0x1F58\u20130x1F5B: 0xB1E, 0xCC8, 0xBD8, 0xBA9\n#_03AF0A: db $20, $B5, $12, $C7 : db $CB, $C2 ; 0x1F5C\u20130x1F5F: 0xB20, 0xCB5, 0x212, 0xCC7\n#_03AF10: db $1D, $B5, $C2, $B5 : db $CB, $BB ; 0x1F60\u20130x1F63: 0xB1D, 0xCB5, 0xBC2, 0xBB5\n#_03AF16: db $C3, $B4, $BD, $C7 : db $BB, $B2 ; 0x1F64\u20130x1F67: 0xBC3, 0xBB4, 0x2BD, 0xBC7\n#_03AF1C: db $C7, $C7, $9E, $C7 : db $22, $B2 ; 0x1F68\u20130x1F6B: 0x2C7, 0x2C7, 0x29E, 0xBC7\n#_03AF22: db $9E, $9E, $DA, $A2 : db $BB, $26 ; 0x1F6C\u20130x1F6F: 0xB9E, 0xB9E, 0x6DA, 0x2A2\n#_03AF28: db $A1, $A8, $D7, $20 : db $BB, $BC ; 0x1F70\u20130x1F73: 0xBA1, 0xBA8, 0xCD7, 0xB20\n#_03AF2E: db $C7, $1D, $D8, $D9 : db $2C, $BB ; 0x1F74\u20130x1F77: 0xCC7, 0x21D, 0xBD8, 0xBD9\n#_03AF34: db $CD, $D7, $CD, $C7 : db $2B, $22 ; 0x1F78\u20130x1F7B: 0xBCD, 0x2D7, 0x2CD, 0x2C7\n#_03AF3A: db $AE, $E4, $CD, $E4 : db $B2, $22 ; 0x1F7C\u20130x1F7F: 0x2AE, 0xBE4, 0x2CD, 0x2E4\n#_03AF40: db $DA, $C7, $D4, $D2 : db $22, $22 ; 0x1F80\u20130x1F83: 0x2DA, 0x2C7, 0x2D4, 0x2D2\n#_03AF46: db $A0, $D9, $D7, $C7 : db $B2, $B2 ; 0x1F84\u20130x1F87: 0x2A0, 0xBD9, 0x2D7, 0xBC7\n#_03AF4C: db $CD, $D7, $A3, $9D : db $2B, $B3 ; 0x1F88\u20130x1F8B: 0xBCD, 0x2D7, 0x3A3, 0xB9D\n#_03AF52: db $DF, $E4, $E6, $E6 : db $22, $22 ; 0x1F8C\u20130x1F8F: 0x2DF, 0x2E4, 0x2E6, 0x2E6\n#_03AF58: db $CD, $04, $63, $07 : db $23, $13 ; 0x1F90\u20130x1F93: 0x3CD, 0x204, 0x363, 0x107\n#_03AF5E: db $8D, $22, $4F, $F8 : db $7C, $72 ; 0x1F94\u20130x1F97: 0xC8D, 0x722, 0x24F, 0x7F8\n#_03AF64: db $25, $51, $BA, $0A : db $27, $23 ; 0x1F98\u20130x1F9B: 0x725, 0x251, 0x3BA, 0x20A\n#_03AF6A: db $13, $8D, $31, $CC : db $37, $12 ; 0x1F9C\u20130x1F9F: 0x713, 0x38D, 0x231, 0x1CC\n#_03AF70: db $53, $E6, $E6, $61 : db $12, $21 ; 0x1FA0\u20130x1FA3: 0x253, 0x1E6, 0x1E6, 0x261\n#_03AF76: db $B9, $85, $16, $85 : db $93, $33 ; 0x1FA4\u20130x1FA7: 0x3B9, 0x985, 0x316, 0x385\n#_03AF7C: db $94, $CD, $CD, $2D : db $32, $21 ; 0x1FA8\u20130x1FAB: 0x294, 0x3CD, 0x1CD, 0x22D\n#_03AF82: db $FD, $51, $51, $04 : db $27, $73 ; 0x1FAC\u20130x1FAF: 0x7FD, 0x251, 0x351, 0x704\n#_03AF88: db $63, $E6, $F8, $F9 : db $12, $66 ; 0x1FB0\u20130x1FB3: 0x263, 0x1E6, 0x6F8, 0x6F9\n#_03AF8E: db $F9, $51, $E6, $77 : db $67, $27 ; 0x1FB4\u20130x1FB7: 0x7F9, 0x651, 0x7E6, 0x277\n#_03AF94: db $85, $5A, $07, $2A : db $37, $77 ; 0x1FB8\u20130x1FBB: 0x785, 0x35A, 0x707, 0x72A\n#_03AF9A: db $8D, $58, $07, $26 : db $71, $1C ; 0x1FBC\u20130x1FBF: 0x18D, 0x758, 0xC07, 0x126\n#_03AFA0: db $28, $26, $29, $2A : db $CC, $CC ; 0x1FC0\u20130x1FC3: 0xC28, 0xC26, 0xC29, 0xC2A\n#_03AFA6: db $2B, $26, $26, $26 : db $CC, $CC ; 0x1FC4\u20130x1FC7: 0xC2B, 0xC26, 0xC26, 0xC26\n#_03AFAC: db $36, $2A, $38, $3A : db $CC, $CC ; 0x1FC8\u20130x1FCB: 0xC36, 0xC2A, 0xC38, 0xC3A\n#_03AFB2: db $3C, $26, $34, $41 : db $CC, $CC ; 0x1FCC\u20130x1FCF: 0xC3C, 0xC26, 0xC34, 0xC41\n#_03AFB8: db $43, $44, $46, $33 : db $CC, $CC ; 0x1FD0\u20130x1FD3: 0xC43, 0xC44, 0xC46, 0xC33\n#_03AFBE: db $26, $4D, $4F, $51 : db $CC, $CC ; 0x1FD4\u20130x1FD7: 0xC26, 0xC4D, 0xC4F, 0xC51\n#_03AFC4: db $56, $57, $59, $5E : db $CC, $CC ; 0x1FD8\u20130x1FDB: 0xC56, 0xC57, 0xC59, 0xC5E\n#_03AFCA: db $60, $5B, $5D, $66 : db $CC, $CC ; 0x1FDC\u20130x1FDF: 0xC60, 0xC5B, 0xC5D, 0xC66\n#_03AFD0: db $67, $68, $70, $69 : db $CC, $2C ; 0x1FE0\u20130x1FE3: 0xC67, 0xC68, 0xC70, 0x269\n#_03AFD6: db $70, $70, $70, $70 : db $22, $22 ; 0x1FE4\u20130x1FE7: 0x270, 0x270, 0x270, 0x270\n#_03AFDC: db $70, $70, $6A, $69 : db $22, $CC ; 0x1FE8\u20130x1FEB: 0x270, 0x270, 0xC6A, 0xC69\n#_03AFE2: db $68, $70, $70, $69 : db $C2, $2C ; 0x1FEC\u20130x1FEF: 0x268, 0xC70, 0xC70, 0x269\n#_03AFE8: db $70, $70, $69, $70 : db $22, $C2 ; 0x1FF0\u20130x1FF3: 0x270, 0x270, 0x269, 0xC70\n#_03AFEE: db $6A, $70, $70, $6A : db $C2, $2C ; 0x1FF4\u20130x1FF7: 0x26A, 0xC70, 0xC70, 0x26A\n#_03AFF4: db $70, $70, $70, $6B : db $22, $2C ; 0x1FF8\u20130x1FFB: 0x270, 0x270, 0xC70, 0x26B\n#_03AFFA: db $6A, $68, $6B, $69 : db $CC, $CC ; 0x1FFC\u20130x1FFF: 0xC6A, 0xC68, 0xC6B, 0xC69\n#_03B000: db $6C, $6C, $70, $69 : db $CC, $2C ; 0x2000\u20130x2003: 0xC6C, 0xC6C, 0xC70, 0x269\n#_03B006: db $68, $70, $6C, $6B : db $C2, $CC ; 0x2004\u20130x2007: 0x268, 0xC70, 0xC6C, 0xC6B\n#_03B00C: db $68, $70, $68, $68 : db $C2, $CC ; 0x2008\u20130x200B: 0x268, 0xC70, 0xC68, 0xC68\n#_03B012: db $6C, $70, $70, $6A : db $C2, $2C ; 0x200C\u20130x200F: 0x26C, 0xC70, 0xC70, 0x26A\n#_03B018: db $70, $68, $70, $68 : db $2C, $2C ; 0x2010\u20130x2013: 0xC70, 0x268, 0xC70, 0x268\n#_03B01E: db $70, $70, $68, $69 : db $22, $CC ; 0x2014\u20130x2017: 0x270, 0x270, 0xC68, 0xC69\n#_03B024: db $70, $70, $68, $68 : db $22, $CC ; 0x2018\u20130x201B: 0x270, 0x270, 0xC68, 0xC68\n#_03B02A: db $70, $70, $68, $69 : db $22, $CC ; 0x201C\u20130x201F: 0x270, 0x270, 0xC68, 0xC69\n#_03B030: db $70, $70, $69, $68 : db $22, $CC ; 0x2020\u20130x2023: 0x270, 0x270, 0xC69, 0xC68\n#_03B036: db $6D, $6D, $6D, $69 : db $CC, $CC ; 0x2024\u20130x2027: 0xC6D, 0xC6D, 0xC6D, 0xC69\n#_03B03C: db $70, $6B, $6D, $70 : db $2C, $C2 ; 0x2028\u20130x202B: 0xC70, 0x26B, 0x26D, 0xC70\n#_03B042: db $69, $70, $6D, $68 : db $C2, $CC ; 0x202C\u20130x202F: 0x269, 0xC70, 0xC6D, 0xC68\n#_03B048: db $68, $70, $69, $70 : db $C2, $C2 ; 0x2030\u20130x2033: 0x268, 0xC70, 0x269, 0xC70\n#_03B04E: db $70, $70, $6F, $6F : db $22, $CC ; 0x2034\u20130x2037: 0x270, 0x270, 0xC6F, 0xC6F\n#_03B054: db $71, $73, $78, $75 : db $CC, $1C ; 0x2038\u20130x203B: 0xC71, 0xC73, 0xC78, 0x175\n#_03B05A: db $C9, $75, $71, $78 : db $0C, $CC ; 0x203C\u20130x203F: 0xCC9, 0x075, 0xC71, 0xC78\n#_03B060: db $77, $DC, $86, $75 : db $C0, $1C ; 0x2040\u20130x2043: 0x077, 0xCDC, 0xC86, 0x175\n#_03B066: db $7A, $34, $75, $E3 : db $C0, $C0 ; 0x2044\u20130x2047: 0x07A, 0xC34, 0x075, 0xCE3\n#_03B06C: db $71, $78, $71, $7D : db $CC, $0C ; 0x2048\u20130x204B: 0xC71, 0xC78, 0xC71, 0x07D\n#_03B072: db $56, $34, $85, $87 : db $10, $CC ; 0x204C\u20130x204F: 0x056, 0x134, 0xC85, 0xC87\n#_03B078: db $88, $89, $8A, $8B : db $CC, $CC ; 0x2050\u20130x2053: 0xC88, 0xC89, 0xC8A, 0xC8B\n#_03B07E: db $8C, $D1, $93, $87 : db $C2, $CC ; 0x2054\u20130x2057: 0x28C, 0xCD1, 0xC93, 0xC87\n#_03B084: db $90, $97, $99, $91 : db $CC, $CC ; 0x2058\u20130x205B: 0xC90, 0xC97, 0xC99, 0xC91\n#_03B08A: db $34, $9C, $F9, $CD : db $0C, $22 ; 0x205C\u20130x205F: 0xC34, 0x09C, 0x2F9, 0x2CD\n#_03B090: db $A5, $90, $A6, $A8 : db $CC, $CC ; 0x2060\u20130x2063: 0xCA5, 0xC90, 0xCA6, 0xCA8\n#_03B096: db $91, $A1, $AA, $0A : db $CC, $C3 ; 0x2064\u20130x2067: 0xC91, 0xCA1, 0x3AA, 0xC0A\n#_03B09C: db $87, $B1, $B3, $B4 : db $CC, $CC ; 0x2068\u20130x206B: 0xC87, 0xCB1, 0xCB3, 0xCB4\n#_03B0A2: db $B6, $A1, $A3, $24 : db $CC, $C5 ; 0x206C\u20130x206F: 0xCB6, 0xCA1, 0x5A3, 0xC24\n#_03B0A8: db $27, $CD, $C0, $C2 : db $32, $CC ; 0x2070\u20130x2073: 0x227, 0x3CD, 0xCC0, 0xCC2\n#_03B0AE: db $71, $A1, $77, $51 : db $0C, $C7 ; 0x2074\u20130x2077: 0xC71, 0x0A1, 0x777, 0xC51\n#_03B0B4: db $06, $65, $07, $C6 : db $11, $10 ; 0x2078\u20130x207B: 0x106, 0x165, 0x007, 0x1C6\n#_03B0BA: db $C6, $66, $C3, $C8 : db $01, $CC ; 0x207C\u20130x207F: 0x1C6, 0x066, 0xCC3, 0xCC8\n#_03B0C0: db $A5, $C9, $C9, $CB : db $CC, $CC ; 0x2080\u20130x2083: 0xCA5, 0xCC9, 0xCC9, 0xCCB\n#_03B0C6: db $CB, $C8, $7C, $A3 : db $CC, $C0 ; 0x2084\u20130x2087: 0xCCB, 0xCC8, 0x07C, 0xCA3\n#_03B0CC: db $A1, $AA, $D0, $C2 : db $CC, $CC ; 0x2088\u20130x208B: 0xCA1, 0xCAA, 0xCD0, 0xCC2\n#_03B0D2: db $A5, $A1, $C9, $D2 : db $1C, $CC ; 0x208C\u20130x208F: 0xCA5, 0x1A1, 0xCC9, 0xCD2\n#_03B0D8: db $C0, $D5, $C9, $CB : db $CC, $CC ; 0x2090\u20130x2093: 0xCC0, 0xCD5, 0xCC9, 0xCCB\n#_03B0DE: db $CB, $DA, $C1, $87 : db $CC, $CC ; 0x2094\u20130x2097: 0xCCB, 0xCDA, 0xCC1, 0xC87\n#_03B0E4: db $A9, $D1, $C3, $8D : db $0C, $CC ; 0x2098\u20130x209B: 0xCA9, 0x0D1, 0xCC3, 0xC8D\n#_03B0EA: db $7C, $A1, $D4, $C0 : db $CC, $CC ; 0x209C\u20130x209F: 0xC7C, 0xCA1, 0xCD4, 0xCC0\n#_03B0F0: db $DC, $DE, $34, $34 : db $CC, $00 ; 0x20A0\u20130x20A3: 0xCDC, 0xCDE, 0x034, 0x034\n#_03B0F6: db $DB, $AF, $C9, $DF : db $CC, $CC ; 0x20A4\u20130x20A7: 0xCDB, 0xCAF, 0xCC9, 0xCDF\n#_03B0FC: db $CB, $DA, $C0, $E1 : db $CC, $CC ; 0x20A8\u20130x20AB: 0xCCB, 0xCDA, 0xCC0, 0xCE1\n#_03B102: db $DC, $E7, $E9, $E2 : db $CC, $CC ; 0x20AC\u20130x20AF: 0xCDC, 0xCE7, 0xCE9, 0xCE2\n#_03B108: db $AA, $C9, $CB, $EB : db $CC, $CC ; 0x20B0\u20130x20B3: 0xCAA, 0xCC9, 0xCCB, 0xCEB\n#_03B10E: db $71, $76, $F3, $F8 : db $CC, $CC ; 0x20B4\u20130x20B7: 0xC71, 0xC76, 0xCF3, 0xCF8\n#_03B114: db $7C, $FA, $78, $78 : db $CC, $C6 ; 0x20B8\u20130x20BB: 0xC7C, 0xCFA, 0x678, 0xC78\n#_03B11A: db $FC, $7A, $34, $FC : db $C6, $0C ; 0x20BC\u20130x20BF: 0x6FC, 0xC7A, 0xC34, 0x0FC\n#_03B120: db $78, $7A, $34, $C1 : db $66, $0C ; 0x20C0\u20130x20C3: 0x678, 0x67A, 0xC34, 0x0C1\n#_03B126: db $B9, $00, $01, $00 : db $CD, $DD ; 0x20C4\u20130x20C7: 0xDB9, 0xC00, 0xD01, 0xD00\n#_03B12C: db $C7, $04, $04, $04 : db $2D, $DD ; 0x20C8\u20130x20CB: 0xDC7, 0x204, 0xD04, 0xD04\n#_03B132: db $C7, $C7, $7A, $78 : db $22, $66 ; 0x20CC\u20130x20CF: 0x2C7, 0x2C7, 0x67A, 0x678\n#_03B138: db $04, $71, $86, $06 : db $DC, $CD ; 0x20D0\u20130x20D3: 0xC04, 0xD71, 0xD86, 0xC06\n#_03B13E: db $FE, $34, $08, $CD : db $C0, $D2 ; 0x20D4\u20130x20D7: 0x0FE, 0xC34, 0x208, 0xDCD\n#_03B144: db $04, $01, $CD, $71 : db $DD, $2C ; 0x20D8\u20130x20DB: 0xD04, 0xD01, 0xCCD, 0x271\n#_03B14A: db $C2, $34, $2D, $DA : db $C0, $10 ; 0x20DC\u20130x20DF: 0x0C2, 0xC34, 0x02D, 0x1DA\n#_03B150: db $CD, $03, $CD, $C7 : db $2D, $22 ; 0x20E0\u20130x20E3: 0xDCD, 0x203, 0x2CD, 0x2C7\n#_03B156: db $83, $FA, $E2, $FD : db $CC, $0C ; 0x20E4\u20130x20E7: 0xC83, 0xCFA, 0xCE2, 0x0FD\n#_03B15C: db $08, $0C, $0A, $03 : db $DD, $DD ; 0x20E8\u20130x20EB: 0xD08, 0xD0C, 0xD0A, 0xD03\n#_03B162: db $06, $36, $C7, $C7 : db $D2, $22 ; 0x20EC\u20130x20EF: 0x206, 0xD36, 0x2C7, 0x2C7\n#_03B168: db $D7, $DA, $C6, $CD : db $20, $22 ; 0x20F0\u20130x20F3: 0x0D7, 0x2DA, 0x2C6, 0x2CD\n#_03B16E: db $05, $05, $CD, $34 : db $DD, $20 ; 0x20F4\u20130x20F7: 0xD05, 0xD05, 0x0CD, 0x234\n#_03B174: db $31, $05, $04, $04 : db $1D, $DD ; 0x20F8\u20130x20FB: 0xD31, 0x105, 0xD04, 0xD04\n#_03B17A: db $08, $34, $FD, $9A : db $D0, $C3 ; 0x20FC\u20130x20FF: 0x008, 0xD34, 0x3FD, 0xC9A\n#_03B180: db $04, $76, $7C, $FD : db $DC, $CC ; 0x2100\u20130x2103: 0xC04, 0xD76, 0xC7C, 0xCFD\n#_03B186: db $9B, $B9, $DE, $36 : db $CC, $C2 ; 0x2104\u20130x2107: 0xC9B, 0xCB9, 0x2DE, 0xC36\n#_03B18C: db $F7, $04, $ED, $FD : db $2D, $1C ; 0x2108\u20130x210B: 0xDF7, 0x204, 0xCED, 0x1FD\n#_03B192: db $2D, $34, $9C, $C1 : db $10, $CC ; 0x210C\u20130x210F: 0x02D, 0x134, 0xC9C, 0xCC1\n#_03B198: db $C1, $10, $C2, $F7 : db $CD, $C2 ; 0x2110\u20130x2113: 0xDC1, 0xC10, 0x2C2, 0xCF7\n#_03B19E: db $F8, $C7, $CD, $7D : db $22, $2C ; 0x2114\u20130x2117: 0x2F8, 0x2C7, 0xCCD, 0x27D\n#_03B1A4: db $11, $6F, $C0, $36 : db $DC, $C2 ; 0x2118\u20130x211B: 0xC11, 0xD6F, 0x2C0, 0xC36\n#_03B1AA: db $ED, $D7, $C2, $71 : db $12, $CC ; 0x211C\u20130x211F: 0x2ED, 0x1D7, 0xCC2, 0xC71\n#_03B1B0: db $76, $ED, $F8, $7C : db $C1, $CC ; 0x2120\u20130x2123: 0x176, 0xCED, 0xCF8, 0xC7C\n#_03B1B6: db $ED, $CA, $0D, $36 : db $12, $10 ; 0x2124\u20130x2127: 0x2ED, 0x1CA, 0x00D, 0x136\n#_03B1BC: db $FD, $05, $FC, $FD : db $CD, $CC ; 0x2128\u20130x212B: 0xDFD, 0xC05, 0xCFC, 0xCFD\n#_03B1C2: db $CD, $C5, $D7, $D2 : db $22, $22 ; 0x212C\u20130x212F: 0x2CD, 0x2C5, 0x2D7, 0x2D2\n#_03B1C8: db $0A, $CD, $C7, $03 : db $D2, $2D ; 0x2130\u20130x2133: 0x20A, 0xDCD, 0xDC7, 0x203\n#_03B1CE: db $C7, $0A, $C7, $CD : db $2D, $22 ; 0x2134\u20130x2137: 0xDC7, 0x20A, 0x2C7, 0x2CD\n#_03B1D4: db $D7, $C7, $FE, $C7 : db $22, $C2 ; 0x2138\u20130x213B: 0x2D7, 0x2C7, 0x2FE, 0xCC7\n#_03B1DA: db $03, $FE, $0B, $1F : db $DC, $DB ; 0x213C\u20130x213F: 0xC03, 0xDFE, 0xB0B, 0xD1F\n#_03B1E0: db $05, $13, $0A, $1F : db $DD, $DB ; 0x2140\u20130x2143: 0xD05, 0xD13, 0xB0A, 0xD1F\n#_03B1E6: db $C7, $CD, $C7, $08 : db $22, $2D ; 0x2144\u20130x2147: 0x2C7, 0x2CD, 0xDC7, 0x208\n#_03B1EC: db $0A, $04, $CD, $C7 : db $DD, $22 ; 0x2148\u20130x214B: 0xD0A, 0xD04, 0x2CD, 0x2C7\n#_03B1F2: db $C7, $C7, $CD, $C7 : db $22, $22 ; 0x214C\u20130x214F: 0x2C7, 0x2C7, 0x2CD, 0x2C7\n#_03B1F8: db $CD, $04, $26, $05 : db $2D, $3D ; 0x2150\u20130x2153: 0xDCD, 0x204, 0xD26, 0x305\n#_03B1FE: db $03, $D7, $1F, $04 : db $D2, $B3 ; 0x2154\u20130x2157: 0x203, 0xDD7, 0x31F, 0xB04\n#_03B204: db $33, $33, $14, $15 : db $22, $DD ; 0x2158\u20130x215B: 0x233, 0x233, 0xD14, 0xD15\n#_03B20A: db $11, $C7, $35, $9C : db $32, $2C ; 0x215C\u20130x215F: 0x211, 0x3C7, 0xC35, 0x29C\n#_03B210: db $B9, $36, $0D, $B7 : db $C2, $12 ; 0x2160\u20130x2163: 0x2B9, 0xC36, 0x20D, 0x1B7\n#_03B216: db $B9, $9C, $A4, $EB : db $2C, $C1 ; 0x2164\u20130x2167: 0xCB9, 0x29C, 0x1A4, 0xCEB\n#_03B21C: db $CD, $2D, $33, $35 : db $21, $22 ; 0x2168\u20130x216B: 0x1CD, 0x22D, 0x233, 0x235\n#_03B222: db $A4, $11, $71, $78 : db $CD, $CC ; 0x216C\u20130x216F: 0xDA4, 0xC11, 0xC71, 0xC78\n#_03B228: db $34, $86, $C6, $08 : db $01, $2D ; 0x2170\u20130x2173: 0x134, 0x086, 0xDC6, 0x208\n#_03B22E: db $C2, $E9, $11, $C1 : db $CC, $DC ; 0x2174\u20130x2177: 0xCC2, 0xCE9, 0xC11, 0xDC1\n#_03B234: db $0E, $9B, $34, $34 : db $DC, $00 ; 0x2178\u20130x217B: 0xC0E, 0xD9B, 0x034, 0x034\n#_03B23A: db $CD, $03, $04, $C7 : db $2D, $D2 ; 0x217C\u20130x217F: 0xDCD, 0x203, 0x204, 0xDC7\n#_03B240: db $CD, $11, $28, $05 : db $2D, $3D ; 0x2180\u20130x2183: 0xDCD, 0x211, 0xD28, 0x305\n#_03B246: db $73, $70, $C2, $DE : db $CC, $CC ; 0x2184\u20130x2187: 0xC73, 0xC70, 0xCC2, 0xCDE\n#_03B24C: db $DE, $33, $33, $7D : db $C2, $2C ; 0x2188\u20130x218B: 0x2DE, 0xC33, 0xC33, 0x27D\n#_03B252: db $77, $F4, $C0, $10 : db $CC, $CD ; 0x218C\u20130x218F: 0xC77, 0xCF4, 0xDC0, 0xC10\n#_03B258: db $18, $E9, $0E, $36 : db $DC, $D2 ; 0x2190\u20130x2193: 0xC18, 0xDE9, 0x20E, 0xD36\n#_03B25E: db $CD, $7D, $1A, $6F : db $2C, $DC ; 0x2194\u20130x2197: 0xCCD, 0x27D, 0xC1A, 0xD6F\n#_03B264: db $70, $11, $72, $D3 : db $CD, $CC ; 0x2198\u20130x219B: 0xD70, 0xC11, 0xC72, 0xCD3\n#_03B26A: db $C0, $76, $7C, $08 : db $CC, $CD ; 0x219C\u20130x219F: 0xCC0, 0xC76, 0xD7C, 0xC08\n#_03B270: db $38, $B9, $B9, $70 : db $3C, $CC ; 0x21A0\u20130x21A3: 0xC38, 0x3B9, 0xCB9, 0xC70\n#_03B276: db $11, $D3, $F8, $79 : db $DC, $CC ; 0x21A4\u20130x21A7: 0xC11, 0xDD3, 0xCF8, 0xC79\n#_03B27C: db $7C, $EB, $05, $03 : db $C1, $DD ; 0x21A8\u20130x21AB: 0x17C, 0xCEB, 0xD05, 0xD03\n#_03B282: db $04, $9C, $10, $10 : db $3C, $DD ; 0x21AC\u20130x21AF: 0xC04, 0x39C, 0xD10, 0xD10\n#_03B288: db $11, $78, $6D, $7C : db $DC, $1C ; 0x21B0\u20130x21B3: 0xC11, 0xD78, 0xC6D, 0x17C\n#_03B28E: db $0D, $77, $78, $CD : db $DC, $C2 ; 0x21B4\u20130x21B7: 0xC0D, 0xD77, 0x278, 0xCCD\n#_03B294: db $08, $CF, $1A, $1A : db $D2, $DD ; 0x21B8\u20130x21BB: 0x208, 0xDCF, 0xD1A, 0xD1A\n#_03B29A: db $C1, $B9, $ED, $DC : db $CC, $12 ; 0x21BC\u20130x21BF: 0xCC1, 0xCB9, 0x2ED, 0x1DC\n#_03B2A0: db $B9, $D1, $0A, $0A : db $C2, $DD ; 0x21C0\u20130x21C3: 0x2B9, 0xCD1, 0xD0A, 0xD0A\n#_03B2A6: db $D4, $DC, $C7, $C7 : db $22, $22 ; 0x21C4\u20130x21C7: 0x2D4, 0x2DC, 0x2C7, 0x2C7\n#_03B2AC: db $83, $B9, $C7, $DF : db $CC, $22 ; 0x21C8\u20130x21CB: 0xC83, 0xCB9, 0x2C7, 0x2DF\n#_03B2B2: db $04, $DF, $D3, $78 : db $D2, $CC ; 0x21CC\u20130x21CF: 0x204, 0xDDF, 0xCD3, 0xC78\n#_03B2B8: db $C7, $33, $32, $DF : db $22, $22 ; 0x21D0\u20130x21D3: 0x2C7, 0x233, 0x232, 0x2DF\n#_03B2BE: db $C0, $C2, $C6, $C7 : db $CC, $22 ; 0x21D4\u20130x21D7: 0xCC0, 0xCC2, 0x2C6, 0x2C7\n#_03B2C4: db $CF, $6D, $E2, $9B : db $21, $0C ; 0x21D8\u20130x21DB: 0x1CF, 0x26D, 0xCE2, 0x09B\n#_03B2CA: db $C0, $8E, $0E, $3A : db $CC, $12 ; 0x21DC\u20130x21DF: 0xCC0, 0xC8E, 0x20E, 0x13A\n#_03B2D0: db $9B, $0F, $0F, $C0 : db $CD, $DC ; 0x21E0\u20130x21E3: 0xD9B, 0xC0F, 0xC0F, 0xDC0\n#_03B2D6: db $31, $1D, $C7, $7A : db $1D, $26 ; 0x21E4\u20130x21E7: 0xD31, 0x11D, 0x6C7, 0x27A\n#_03B2DC: db $32, $0F, $11, $12 : db $2D, $DD ; 0x21E8\u20130x21EB: 0xD32, 0x20F, 0xD11, 0xD12\n#_03B2E2: db $A4, $D3, $11, $11 : db $CC, $DD ; 0x21EC\u20130x21EF: 0xCA4, 0xCD3, 0xD11, 0xD11\n#_03B2E8: db $C0, $C1, $7C, $73 : db $CC, $CC ; 0x21F0\u20130x21F3: 0xCC0, 0xCC1, 0xC7C, 0xC73\n#_03B2EE: db $73, $11, $71, $11 : db $CD, $CD ; 0x21F4\u20130x21F7: 0xD73, 0xC11, 0xD71, 0xC11\n#_03B2F4: db $72, $D3, $F3, $72 : db $CC, $CC ; 0x21F8\u20130x21FB: 0xC72, 0xCD3, 0xCF3, 0xC72\n#_03B2FA: db $C1, $CF, $F3, $78 : db $C0, $CC ; 0x21FC\u20130x21FF: 0x0C1, 0xCCF, 0xCF3, 0xC78\n#_03B300: db $F7, $22, $F9, $7D : db $CD, $CC ; 0x2200\u20130x2203: 0xDF7, 0xC22, 0xCF9, 0xC7D\n#_03B306: db $79, $79, $C6, $1A : db $CC, $2D ; 0x2204\u20130x2207: 0xC79, 0xC79, 0xDC6, 0x21A\n#_03B30C: db $34, $6D, $D0, $0C : db $01, $2D ; 0x2208\u20130x220B: 0x134, 0x06D, 0xDD0, 0x20C\n#_03B312: db $DE, $34, $9D, $E3 : db $C0, $20 ; 0x220C\u20130x220F: 0x0DE, 0xC34, 0x09D, 0x2E3\n#_03B318: db $E3, $D0, $0C, $0F : db $02, $DD ; 0x2210\u20130x2213: 0x2E3, 0x0D0, 0xD0C, 0xD0F\n#_03B31E: db $C2, $9D, $53, $34 : db $C2, $10 ; 0x2214\u20130x2217: 0x2C2, 0xC9D, 0x053, 0x134\n#_03B324: db $78, $FC, $1F, $C7 : db $6C, $B2 ; 0x2218\u20130x221B: 0xC78, 0x6FC, 0x21F, 0xBC7\n#_03B32A: db $C7, $C7, $83, $26 : db $22, $CD ; 0x221C\u20130x221F: 0x2C7, 0x2C7, 0xD83, 0xC26\n#_03B330: db $22, $D1, $03, $78 : db $22, $DC ; 0x2220\u20130x2223: 0x222, 0x2D1, 0xC03, 0xD78\n#_03B336: db $34, $31, $05, $F9 : db $01, $52 ; 0x2224\u20130x2227: 0x134, 0x031, 0x205, 0x5F9\n#_03B33C: db $33, $F7, $F9, $FA : db $22, $22 ; 0x2228\u20130x222B: 0x233, 0x2F7, 0x2F9, 0x2FA\n#_03B342: db $78, $AE, $51, $5B : db $C2, $11 ; 0x222C\u20130x222F: 0x278, 0xCAE, 0x151, 0x15B\n#_03B348: db $B9, $B0, $55, $53 : db $22, $31 ; 0x2230\u20130x2233: 0x2B9, 0x2B0, 0x155, 0x353\n#_03B34E: db $D1, $C7, $DC, $D1 : db $22, $22 ; 0x2234\u20130x2237: 0x2D1, 0x2C7, 0x2DC, 0x2D1\n#_03B354: db $C7, $00, $CD, $C7 : db $2D, $22 ; 0x2238\u20130x223B: 0xDC7, 0x200, 0x2CD, 0x2C7\n#_03B35A: db $32, $32, $34, $33 : db $22, $02 ; 0x223C\u20130x223F: 0x232, 0x232, 0x234, 0x033\n#_03B360: db $9B, $DC, $28, $2A : db $CC, $DD ; 0x2240\u20130x2243: 0xC9B, 0xCDC, 0xD28, 0xD2A\n#_03B366: db $2B, $30, $30, $30 : db $DD, $DD ; 0x2244\u20130x2247: 0xD2B, 0xD30, 0xD30, 0xD30\n#_03B36C: db $30, $30, $30, $30 : db $DD, $DD ; 0x2248\u20130x224B: 0xD30, 0xD30, 0xD30, 0xD30\n#_03B372: db $32, $30, $30, $30 : db $DD, $DD ; 0x224C\u20130x224F: 0xD32, 0xD30, 0xD30, 0xD30\n#_03B378: db $30, $EC, $3F, $3F : db $D3, $DD ; 0x2250\u20130x2253: 0x330, 0xDEC, 0xD3F, 0xD3F\n#_03B37E: db $40, $40, $41, $43 : db $DD, $DD ; 0x2254\u20130x2257: 0xD40, 0xD40, 0xD41, 0xD43\n#_03B384: db $40, $40, $45, $57 : db $DD, $D8 ; 0x2258\u20130x225B: 0xD40, 0xD40, 0x845, 0xD57\n#_03B38A: db $40, $41, $45, $57 : db $DD, $D8 ; 0x225C\u20130x225F: 0xD40, 0xD41, 0x845, 0xD57\n#_03B390: db $4E, $40, $51, $83 : db $DD, $D8 ; 0x2260\u20130x2263: 0xD4E, 0xD40, 0x851, 0xD83\n#_03B396: db $41, $45, $57, $55 : db $DD, $88 ; 0x2264\u20130x2267: 0xD41, 0xD45, 0x857, 0x855\n#_03B39C: db $61, $54, $56, $57 : db $8D, $DD ; 0x2268\u20130x226B: 0xD61, 0x854, 0xD56, 0xD57\n#_03B3A2: db $0C, $55, $10, $4E : db $98, $9D ; 0x226C\u20130x226F: 0x80C, 0x955, 0xD10, 0x94E\n#_03B3A8: db $57, $12, $57, $5A : db $89, $8D ; 0x2270\u20130x2273: 0x957, 0x812, 0xD57, 0x85A\n#_03B3AE: db $5B, $5D, $5D, $5F : db $DD, $DD ; 0x2274\u20130x2277: 0xD5B, 0xD5D, 0xD5D, 0xD5F\n#_03B3B4: db $5E, $60, $60, $63 : db $DD, $DD ; 0x2278\u20130x227B: 0xD5E, 0xD60, 0xD60, 0xD63\n#_03B3BA: db $5F, $5F, $65, $61 : db $DD, $DD ; 0x227C\u20130x227F: 0xD5F, 0xD5F, 0xD65, 0xD61\n#_03B3C0: db $5D, $6E, $6F, $71 : db $DD, $DD ; 0x2280\u20130x2283: 0xD5D, 0xD6E, 0xD6F, 0xD71\n#_03B3C6: db $5B, $67, $5F, $60 : db $DD, $DD ; 0x2284\u20130x2287: 0xD5B, 0xD67, 0xD5F, 0xD60\n#_03B3CC: db $62, $64, $61, $77 : db $DD, $DD ; 0x2288\u20130x228B: 0xD62, 0xD64, 0xD61, 0xD77\n#_03B3D2: db $7B, $7D, $7E, $80 : db $DD, $DD ; 0x228C\u20130x228F: 0xD7B, 0xD7D, 0xD7E, 0xD80\n#_03B3D8: db $82, $83, $85, $87 : db $DD, $DD ; 0x2290\u20130x2293: 0xD82, 0xD83, 0xD85, 0xD87\n#_03B3DE: db $93, $94, $96, $98 : db $DD, $DD ; 0x2294\u20130x2297: 0xD93, 0xD94, 0xD96, 0xD98\n#_03B3E4: db $99, $9B, $93, $A1 : db $DD, $DD ; 0x2298\u20130x229B: 0xD99, 0xD9B, 0xD93, 0xDA1\n#_03B3EA: db $99, $A3, $00, $00 : db $DD, $00 ; 0x229C\u20130x229F: 0xD99, 0xDA3, 0x000, 0x000\n\n; =========================================================\n; FREE ROM: 0x16\n; =========================================================", + "file": "bank_03.asm" + }, + { + "name": "NULL_03B3F0", + "code": "NULL_03B3F0:\n#_03B3F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_03B3F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_03.asm" + }, + { + "name": "Tile32_TopRight", + "code": "Tile32_TopRight:\n#_03B400: db $01, $00, $02, $00 : db $00, $00 ; 0x0000\u20130x0003: 0x001, 0x000, 0x002, 0x000\n#_03B406: db $04, $06, $08, $07 : db $00, $00 ; 0x0004\u20130x0007: 0x004, 0x006, 0x008, 0x007\n#_03B40C: db $09, $15, $14, $16 : db $00, $00 ; 0x0008\u20130x000B: 0x009, 0x015, 0x014, 0x016\n#_03B412: db $18, $1A, $1B, $02 : db $00, $00 ; 0x000C\u20130x000F: 0x018, 0x01A, 0x01B, 0x002\n#_03B418: db $01, $00, $27, $04 : db $00, $00 ; 0x0010\u20130x0013: 0x001, 0x000, 0x027, 0x004\n#_03B41E: db $14, $18, $2B, $2A : db $00, $00 ; 0x0014\u20130x0017: 0x014, 0x018, 0x02B, 0x02A\n#_03B424: db $18, $04, $31, $33 : db $00, $00 ; 0x0018\u20130x001B: 0x018, 0x004, 0x031, 0x033\n#_03B42A: db $35, $34, $34, $36 : db $00, $00 ; 0x001C\u20130x001F: 0x035, 0x034, 0x034, 0x036\n#_03B430: db $35, $18, $1A, $1B : db $00, $00 ; 0x0020\u20130x0023: 0x035, 0x018, 0x01A, 0x01B\n#_03B436: db $02, $3B, $33, $3D : db $00, $00 ; 0x0024\u20130x0027: 0x002, 0x03B, 0x033, 0x03D\n#_03B43C: db $34, $34, $40, $41 : db $00, $00 ; 0x0028\u20130x002B: 0x034, 0x034, 0x040, 0x041\n#_03B442: db $4D, $4F, $50, $52 : db $00, $00 ; 0x002C\u20130x002F: 0x04D, 0x04F, 0x050, 0x052\n#_03B448: db $53, $04, $56, $04 : db $00, $00 ; 0x0030\u20130x0033: 0x053, 0x004, 0x056, 0x004\n#_03B44E: db $59, $27, $2F, $30 : db $00, $00 ; 0x0034\u20130x0037: 0x059, 0x027, 0x02F, 0x030\n#_03B454: db $61, $63, $04, $05 : db $00, $00 ; 0x0038\u20130x003B: 0x061, 0x063, 0x004, 0x005\n#_03B45A: db $04, $04, $01, $00 : db $00, $00 ; 0x003C\u20130x003F: 0x004, 0x004, 0x001, 0x000\n#_03B460: db $04, $56, $33, $34 : db $00, $00 ; 0x0040\u20130x0043: 0x004, 0x056, 0x033, 0x034\n#_03B466: db $35, $04, $2F, $64 : db $00, $00 ; 0x0044\u20130x0047: 0x035, 0x004, 0x02F, 0x064\n#_03B46C: db $19, $2A, $14, $54 : db $00, $00 ; 0x0048\u20130x004B: 0x019, 0x02A, 0x014, 0x054\n#_03B472: db $30, $41, $34, $70 : db $00, $00 ; 0x004C\u20130x004F: 0x030, 0x041, 0x034, 0x070\n#_03B478: db $62, $64, $09, $32 : db $00, $00 ; 0x0050\u20130x0053: 0x062, 0x064, 0x009, 0x032\n#_03B47E: db $72, $6D, $19, $33 : db $00, $00 ; 0x0054\u20130x0057: 0x072, 0x06D, 0x019, 0x033\n#_03B484: db $4B, $01, $54, $3C : db $00, $00 ; 0x0058\u20130x005B: 0x04B, 0x001, 0x054, 0x03C\n#_03B48A: db $3E, $19, $33, $34 : db $00, $00 ; 0x005C\u20130x005F: 0x03E, 0x019, 0x033, 0x034\n#_03B490: db $40, $29, $6E, $5E : db $00, $00 ; 0x0060\u20130x0063: 0x040, 0x029, 0x06E, 0x05E\n#_03B496: db $57, $23, $46, $26 : db $00, $00 ; 0x0064\u20130x0067: 0x057, 0x023, 0x046, 0x026\n#_03B49C: db $47, $34, $55, $5F : db $00, $00 ; 0x0068\u20130x006B: 0x047, 0x034, 0x055, 0x05F\n#_03B4A2: db $1C, $1F, $04, $03 : db $00, $00 ; 0x006C\u20130x006F: 0x01C, 0x01F, 0x004, 0x003\n#_03B4A8: db $2F, $6F, $40, $5C : db $00, $00 ; 0x0070\u20130x0073: 0x02F, 0x06F, 0x040, 0x05C\n#_03B4AE: db $39, $6E, $32, $61 : db $00, $00 ; 0x0074\u20130x0077: 0x039, 0x06E, 0x032, 0x061\n#_03B4B4: db $64, $04, $77, $78 : db $00, $00 ; 0x0078\u20130x007B: 0x064, 0x004, 0x077, 0x078\n#_03B4BA: db $34, $33, $69, $34 : db $00, $00 ; 0x007C\u20130x007F: 0x034, 0x033, 0x069, 0x034\n#_03B4C0: db $51, $04, $07, $02 : db $00, $00 ; 0x0080\u20130x0083: 0x051, 0x004, 0x007, 0x002\n#_03B4C6: db $01, $04, $56, $04 : db $00, $00 ; 0x0084\u20130x0087: 0x001, 0x004, 0x056, 0x004\n#_03B4CC: db $04, $01, $2B, $2A : db $00, $00 ; 0x0088\u20130x008B: 0x004, 0x001, 0x02B, 0x02A\n#_03B4D2: db $17, $87, $86, $67 : db $00, $00 ; 0x008C\u20130x008F: 0x017, 0x087, 0x086, 0x067\n#_03B4D8: db $34, $87, $14, $09 : db $00, $00 ; 0x0090\u20130x0093: 0x034, 0x087, 0x014, 0x009\n#_03B4DE: db $8B, $34, $8D, $8E : db $00, $00 ; 0x0094\u20130x0097: 0x08B, 0x034, 0x08D, 0x08E\n#_03B4E4: db $34, $8F, $91, $93 : db $00, $00 ; 0x0098\u20130x009B: 0x034, 0x08F, 0x091, 0x093\n#_03B4EA: db $92, $91, $69, $34 : db $00, $00 ; 0x009C\u20130x009F: 0x092, 0x091, 0x069, 0x034\n#_03B4F0: db $34, $34, $9F, $A0 : db $00, $00 ; 0x00A0\u20130x00A3: 0x034, 0x034, 0x09F, 0x0A0\n#_03B4F6: db $34, $34, $29, $A8 : db $00, $00 ; 0x00A4\u20130x00A7: 0x034, 0x034, 0x029, 0x0A8\n#_03B4FC: db $34, $34, $34, $A9 : db $00, $00 ; 0x00A8\u20130x00AB: 0x034, 0x034, 0x034, 0x0A9\n#_03B502: db $AB, $AC, $34, $35 : db $00, $00 ; 0x00AC\u20130x00AF: 0x0AB, 0x0AC, 0x034, 0x035\n#_03B508: db $05, $34, $34, $34 : db $00, $00 ; 0x00B0\u20130x00B3: 0x005, 0x034, 0x034, 0x034\n#_03B50E: db $35, $34, $34, $34 : db $00, $00 ; 0x00B4\u20130x00B7: 0x035, 0x034, 0x034, 0x034\n#_03B514: db $40, $40, $B0, $04 : db $00, $00 ; 0x00B8\u20130x00BB: 0x040, 0x040, 0x0B0, 0x004\n#_03B51A: db $01, $33, $34, $97 : db $00, $00 ; 0x00BC\u20130x00BF: 0x001, 0x033, 0x034, 0x097\n#_03B520: db $3F, $B0, $05, $20 : db $00, $00 ; 0x00C0\u20130x00C3: 0x03F, 0x0B0, 0x005, 0x020\n#_03B526: db $2A, $33, $B4, $8C : db $00, $00 ; 0x00C4\u20130x00C7: 0x02A, 0x033, 0x0B4, 0x08C\n#_03B52C: db $34, $B6, $77, $4F : db $00, $00 ; 0x00C8\u20130x00CB: 0x034, 0x0B6, 0x077, 0x04F\n#_03B532: db $58, $26, $30, $6E : db $00, $00 ; 0x00CC\u20130x00CF: 0x058, 0x026, 0x030, 0x06E\n#_03B538: db $BD, $01, $81, $21 : db $00, $00 ; 0x00D0\u20130x00D3: 0x0BD, 0x001, 0x081, 0x021\n#_03B53E: db $1B, $34, $97, $34 : db $00, $00 ; 0x00D4\u20130x00D7: 0x01B, 0x034, 0x097, 0x034\n#_03B544: db $C2, $3E, $B0, $6E : db $00, $00 ; 0x00D8\u20130x00DB: 0x0C2, 0x03E, 0x0B0, 0x06E\n#_03B54A: db $69, $96, $34, $5E : db $00, $00 ; 0x00DC\u20130x00DF: 0x069, 0x096, 0x034, 0x05E\n#_03B550: db $73, $41, $81, $01 : db $00, $00 ; 0x00E0\u20130x00E3: 0x073, 0x041, 0x081, 0x001\n#_03B556: db $04, $21, $35, $4B : db $00, $00 ; 0x00E4\u20130x00E7: 0x004, 0x021, 0x035, 0x04B\n#_03B55C: db $1B, $3F, $4B, $5F : db $00, $00 ; 0x00E8\u20130x00EB: 0x01B, 0x03F, 0x04B, 0x05F\n#_03B562: db $29, $B0, $B0, $64 : db $00, $00 ; 0x00EC\u20130x00EF: 0x029, 0x0B0, 0x0B0, 0x064\n#_03B568: db $5E, $5F, $05, $58 : db $00, $00 ; 0x00F0\u20130x00F3: 0x05E, 0x05F, 0x005, 0x058\n#_03B56E: db $77, $90, $34, $66 : db $00, $00 ; 0x00F4\u20130x00F7: 0x077, 0x090, 0x034, 0x066\n#_03B574: db $68, $30, $6E, $35 : db $00, $00 ; 0x00F8\u20130x00FB: 0x068, 0x030, 0x06E, 0x035\n#_03B57A: db $3F, $65, $78, $C4 : db $00, $00 ; 0x00FC\u20130x00FF: 0x03F, 0x065, 0x078, 0x0C4\n#_03B580: db $C6, $C8, $C9, $C8 : db $00, $00 ; 0x0100\u20130x0103: 0x0C6, 0x0C8, 0x0C9, 0x0C8\n#_03B586: db $00, $C4, $C6, $86 : db $00, $00 ; 0x0104\u20130x0107: 0x000, 0x0C4, 0x0C6, 0x086\n#_03B58C: db $CF, $D1, $D1, $D2 : db $00, $00 ; 0x0108\u20130x010B: 0x0CF, 0x0D1, 0x0D1, 0x0D2\n#_03B592: db $C6, $D3, $4F, $D7 : db $00, $00 ; 0x010C\u20130x010F: 0x0C6, 0x0D3, 0x04F, 0x0D7\n#_03B598: db $D8, $DA, $C8, $DC : db $00, $00 ; 0x0110\u20130x0113: 0x0D8, 0x0DA, 0x0C8, 0x0DC\n#_03B59E: db $DD, $DC, $C8, $D2 : db $00, $00 ; 0x0114\u20130x0117: 0x0DD, 0x0DC, 0x0C8, 0x0D2\n#_03B5A4: db $D5, $BE, $02, $02 : db $00, $00 ; 0x0118\u20130x011B: 0x0D5, 0x0BE, 0x002, 0x002\n#_03B5AA: db $7C, $DA, $E2, $E3 : db $00, $00 ; 0x011C\u20130x011F: 0x07C, 0x0DA, 0x0E2, 0x0E3\n#_03B5B0: db $E5, $E3, $E3, $C8 : db $00, $00 ; 0x0120\u20130x0123: 0x0E5, 0x0E3, 0x0E3, 0x0C8\n#_03B5B6: db $E6, $D5, $34, $53 : db $00, $00 ; 0x0124\u20130x0127: 0x0E6, 0x0D5, 0x034, 0x053\n#_03B5BC: db $88, $34, $E9, $EA : db $00, $00 ; 0x0128\u20130x012B: 0x088, 0x034, 0x0E9, 0x0EA\n#_03B5C2: db $EC, $34, $C4, $34 : db $00, $00 ; 0x012C\u20130x012F: 0x0EC, 0x034, 0x0C4, 0x034\n#_03B5C8: db $F1, $07, $78, $F2 : db $00, $00 ; 0x0130\u20130x0133: 0x0F1, 0x007, 0x078, 0x0F2\n#_03B5CE: db $ED, $EE, $F0, $34 : db $00, $00 ; 0x0134\u20130x0137: 0x0ED, 0x0EE, 0x0F0, 0x034\n#_03B5D4: db $34, $01, $00, $34 : db $00, $00 ; 0x0138\u20130x013B: 0x034, 0x001, 0x000, 0x034\n#_03B5DA: db $DA, $F3, $F5, $F4 : db $00, $00 ; 0x013C\u20130x013F: 0x0DA, 0x0F3, 0x0F5, 0x0F4\n#_03B5E0: db $F0, $34, $AE, $7E : db $00, $00 ; 0x0140\u20130x0143: 0x0F0, 0x034, 0x0AE, 0x07E\n#_03B5E6: db $34, $F2, $02, $34 : db $00, $10 ; 0x0144\u20130x0147: 0x034, 0x0F2, 0x002, 0x134\n#_03B5EC: db $04, $06, $D5, $36 : db $11, $00 ; 0x0148\u20130x014B: 0x104, 0x106, 0x0D5, 0x036\n#_03B5F2: db $36, $89, $1D, $34 : db $00, $00 ; 0x014C\u20130x014F: 0x036, 0x089, 0x01D, 0x034\n#_03B5F8: db $0A, $0B, $04, $06 : db $11, $11 ; 0x0150\u20130x0153: 0x10A, 0x10B, 0x104, 0x106\n#_03B5FE: db $09, $05, $AE, $9A : db $11, $00 ; 0x0154\u20130x0157: 0x109, 0x105, 0x0AE, 0x09A\n#_03B604: db $9C, $34, $DA, $CE : db $00, $00 ; 0x0158\u20130x015B: 0x09C, 0x034, 0x0DA, 0x0CE\n#_03B60A: db $C5, $05, $07, $89 : db $01, $10 ; 0x015C\u20130x015F: 0x1C5, 0x005, 0x007, 0x189\n#_03B610: db $0D, $AF, $7F, $C6 : db $10, $00 ; 0x0160\u20130x0163: 0x00D, 0x1AF, 0x07F, 0x0C6\n#_03B616: db $D5, $34, $34, $1C : db $00, $00 ; 0x0164\u20130x0167: 0x0D5, 0x034, 0x034, 0x01C\n#_03B61C: db $76, $0C, $C6, $E1 : db $01, $00 ; 0x0168\u20130x016B: 0x176, 0x00C, 0x0C6, 0x0E1\n#_03B622: db $8E, $36, $9B, $95 : db $00, $00 ; 0x016C\u20130x016F: 0x08E, 0x036, 0x09B, 0x095\n#_03B628: db $CE, $C5, $0F, $C4 : db $00, $10 ; 0x0170\u20130x0173: 0x0CE, 0x0C5, 0x00F, 0x1C4\n#_03B62E: db $A8, $0E, $0D, $CE : db $01, $10 ; 0x0174\u20130x0177: 0x1A8, 0x00E, 0x00D, 0x1CE\n#_03B634: db $10, $10, $12, $14 : db $11, $11 ; 0x0178\u20130x017B: 0x110, 0x110, 0x112, 0x114\n#_03B63A: db $11, $13, $12, $14 : db $11, $11 ; 0x017C\u20130x017F: 0x111, 0x113, 0x112, 0x114\n#_03B640: db $12, $13, $10, $12 : db $11, $11 ; 0x0180\u20130x0183: 0x112, 0x113, 0x110, 0x112\n#_03B646: db $12, $10, $11, $16 : db $11, $11 ; 0x0184\u20130x0187: 0x112, 0x110, 0x111, 0x116\n#_03B64C: db $1D, $1E, $1C, $1D : db $11, $11 ; 0x0188\u20130x018B: 0x11D, 0x11E, 0x11C, 0x11D\n#_03B652: db $12, $12, $10, $1F : db $11, $11 ; 0x018C\u20130x018F: 0x112, 0x112, 0x110, 0x11F\n#_03B658: db $12, $21, $2C, $24 : db $11, $11 ; 0x0190\u20130x0193: 0x112, 0x121, 0x12C, 0x124\n#_03B65E: db $34, $2E, $2F, $34 : db $01, $10 ; 0x0194\u20130x0197: 0x134, 0x02E, 0x02F, 0x134\n#_03B664: db $2E, $30, $31, $12 : db $11, $11 ; 0x0198\u20130x019B: 0x12E, 0x130, 0x131, 0x112\n#_03B66A: db $10, $10, $2C, $24 : db $11, $11 ; 0x019C\u20130x019F: 0x110, 0x110, 0x12C, 0x124\n#_03B670: db $34, $34, $3B, $3C : db $00, $11 ; 0x01A0\u20130x01A3: 0x034, 0x034, 0x13B, 0x13C\n#_03B676: db $3D, $3E, $3E, $49 : db $11, $11 ; 0x01A4\u20130x01A7: 0x13D, 0x13E, 0x13E, 0x149\n#_03B67C: db $C8, $41, $34, $34 : db $01, $00 ; 0x01A8\u20130x01AB: 0x1C8, 0x041, 0x034, 0x034\n#_03B682: db $4B, $31, $4C, $10 : db $11, $11 ; 0x01AC\u20130x01AF: 0x14B, 0x131, 0x14C, 0x110\n#_03B688: db $33, $49, $52, $52 : db $11, $11 ; 0x01B0\u20130x01B3: 0x133, 0x149, 0x152, 0x152\n#_03B68E: db $50, $54, $12, $10 : db $11, $11 ; 0x01B4\u20130x01B7: 0x150, 0x154, 0x112, 0x110\n#_03B694: db $11, $4C, $2A, $49 : db $11, $11 ; 0x01B8\u20130x01BB: 0x111, 0x14C, 0x12A, 0x149\n#_03B69A: db $56, $56, $54, $12 : db $11, $11 ; 0x01BC\u20130x01BF: 0x156, 0x156, 0x154, 0x112\n#_03B6A0: db $2B, $12, $17, $17 : db $11, $11 ; 0x01C0\u20130x01C3: 0x12B, 0x112, 0x117, 0x117\n#_03B6A6: db $28, $14, $1F, $1A : db $11, $11 ; 0x01C4\u20130x01C7: 0x128, 0x114, 0x11F, 0x11A\n#_03B6AC: db $2A, $2A, $12, $16 : db $11, $11 ; 0x01C8\u20130x01CB: 0x12A, 0x12A, 0x112, 0x116\n#_03B6B2: db $34, $58, $28, $14 : db $01, $11 ; 0x01CC\u20130x01CF: 0x134, 0x058, 0x128, 0x114\n#_03B6B8: db $23, $25, $34, $34 : db $11, $00 ; 0x01D0\u20130x01D3: 0x123, 0x125, 0x034, 0x034\n#_03B6BE: db $34, $34, $5B, $5B : db $00, $11 ; 0x01D4\u20130x01D7: 0x034, 0x034, 0x15B, 0x15B\n#_03B6C4: db $CF, $41, $34, $34 : db $01, $00 ; 0x01D8\u20130x01DB: 0x1CF, 0x041, 0x034, 0x034\n#_03B6CA: db $62, $64, $66, $68 : db $11, $11 ; 0x01DC\u20130x01DF: 0x162, 0x164, 0x166, 0x168\n#_03B6D0: db $34, $62, $5B, $6A : db $01, $11 ; 0x01E0\u20130x01E3: 0x134, 0x062, 0x15B, 0x16A\n#_03B6D6: db $C8, $C9, $6D, $77 : db $00, $11 ; 0x01E4\u20130x01E7: 0x0C8, 0x0C9, 0x16D, 0x177\n#_03B6DC: db $AC, $70, $65, $65 : db $01, $11 ; 0x01E8\u20130x01EB: 0x1AC, 0x070, 0x165, 0x165\n#_03B6E2: db $07, $78, $6A, $39 : db $11, $11 ; 0x01EC\u20130x01EF: 0x107, 0x178, 0x16A, 0x139\n#_03B6E8: db $34, $39, $34, $D3 : db $01, $00 ; 0x01F0\u20130x01F3: 0x134, 0x039, 0x034, 0x0D3\n#_03B6EE: db $7A, $7C, $7D, $D1 : db $11, $10 ; 0x01F4\u20130x01F7: 0x17A, 0x17C, 0x07D, 0x1D1\n#_03B6F4: db $C9, $85, $61, $39 : db $01, $11 ; 0x01F8\u20130x01FB: 0x1C9, 0x085, 0x161, 0x139\n#_03B6FA: db $D4, $83, $DC, $CA : db $01, $00 ; 0x01FC\u20130x01FF: 0x1D4, 0x083, 0x0DC, 0x0CA\n#_03B700: db $61, $78, $E3, $CA : db $11, $00 ; 0x0200\u20130x0203: 0x161, 0x178, 0x0E3, 0x0CA\n#_03B706: db $86, $4E, $4B, $4E : db $11, $11 ; 0x0204\u20130x0207: 0x186, 0x14E, 0x14B, 0x14E\n#_03B70C: db $34, $4E, $12, $88 : db $01, $11 ; 0x0208\u20130x020B: 0x134, 0x04E, 0x112, 0x188\n#_03B712: db $8A, $8C, $8D, $8E : db $11, $11 ; 0x020C\u20130x020F: 0x18A, 0x18C, 0x18D, 0x18E\n#_03B718: db $8F, $91, $12, $20 : db $11, $11 ; 0x0210\u20130x0213: 0x18F, 0x191, 0x112, 0x120\n#_03B71E: db $2A, $12, $10, $12 : db $11, $11 ; 0x0214\u20130x0217: 0x12A, 0x112, 0x110, 0x112\n#_03B724: db $1C, $1D, $9C, $9E : db $11, $11 ; 0x0218\u20130x021B: 0x11C, 0x11D, 0x19C, 0x19E\n#_03B72A: db $9C, $9D, $9C, $91 : db $11, $11 ; 0x021C\u20130x021F: 0x19C, 0x19D, 0x19C, 0x191\n#_03B730: db $1D, $18, $10, $1A : db $11, $11 ; 0x0220\u20130x0223: 0x11D, 0x118, 0x110, 0x11A\n#_03B736: db $11, $2D, $30, $A5 : db $11, $11 ; 0x0224\u20130x0227: 0x111, 0x12D, 0x130, 0x1A5\n#_03B73C: db $A6, $A8, $AA, $AB : db $11, $11 ; 0x0228\u20130x022B: 0x1A6, 0x1A8, 0x1AA, 0x1AB\n#_03B742: db $AC, $A8, $AF, $79 : db $11, $11 ; 0x022C\u20130x022F: 0x1AC, 0x1A8, 0x1AF, 0x179\n#_03B748: db $26, $17, $13, $12 : db $11, $11 ; 0x0230\u20130x0233: 0x126, 0x117, 0x113, 0x112\n#_03B74E: db $3D, $3C, $30, $93 : db $11, $11 ; 0x0234\u20130x0237: 0x13D, 0x13C, 0x130, 0x193\n#_03B754: db $95, $97, $B0, $97 : db $11, $11 ; 0x0238\u20130x023B: 0x195, 0x197, 0x1B0, 0x197\n#_03B75A: db $95, $9A, $1E, $12 : db $11, $11 ; 0x023C\u20130x023F: 0x195, 0x19A, 0x11E, 0x112\n#_03B760: db $2D, $34, $A5, $A0 : db $10, $11 ; 0x0240\u20130x0243: 0x02D, 0x134, 0x1A5, 0x1A0\n#_03B766: db $BD, $A1, $C0, $A1 : db $11, $11 ; 0x0244\u20130x0247: 0x1BD, 0x1A1, 0x1C0, 0x1A1\n#_03B76C: db $BD, $A4, $79, $C2 : db $11, $11 ; 0x0248\u20130x024B: 0x1BD, 0x1A4, 0x179, 0x1C2\n#_03B772: db $C2, $12, $1C, $A9 : db $11, $10 ; 0x024C\u20130x024F: 0x1C2, 0x112, 0x01C, 0x1A9\n#_03B778: db $D7, $8D, $D8, $CC : db $11, $11 ; 0x0250\u20130x0253: 0x1D7, 0x18D, 0x1D8, 0x1CC\n#_03B77E: db $D7, $DB, $79, $A3 : db $11, $10 ; 0x0254\u20130x0257: 0x1D7, 0x1DB, 0x079, 0x1A3\n#_03B784: db $C6, $C6, $A4, $A5 : db $00, $00 ; 0x0258\u20130x025B: 0x0C6, 0x0C6, 0x0A4, 0x0A5\n#_03B78A: db $AC, $C6, $AD, $34 : db $00, $00 ; 0x025C\u20130x025F: 0x0AC, 0x0C6, 0x0AD, 0x034\n#_03B790: db $6C, $6C, $E8, $E9 : db $11, $11 ; 0x0260\u20130x0263: 0x16C, 0x16C, 0x1E8, 0x1E9\n#_03B796: db $06, $EB, $E3, $E3 : db $11, $00 ; 0x0264\u20130x0267: 0x106, 0x1EB, 0x0E3, 0x0E3\n#_03B79C: db $E3, $C5, $65, $F2 : db $00, $11 ; 0x0268\u20130x026B: 0x0E3, 0x0C5, 0x165, 0x1F2\n#_03B7A2: db $60, $34, $6A, $34 : db $10, $10 ; 0x026C\u20130x026F: 0x060, 0x134, 0x06A, 0x134\n#_03B7A8: db $F3, $A4, $C4, $F6 : db $10, $11 ; 0x0270\u20130x0273: 0x0F3, 0x1A4, 0x1C4, 0x1F6\n#_03B7AE: db $34, $D3, $AC, $F8 : db $00, $01 ; 0x0274\u20130x0277: 0x034, 0x0D3, 0x1AC, 0x0F8\n#_03B7B4: db $6A, $EB, $86, $02 : db $11, $12 ; 0x0278\u20130x027B: 0x16A, 0x1EB, 0x286, 0x102\n#_03B7BA: db $AC, $03, $05, $06 : db $02, $22 ; 0x027C\u20130x027F: 0x2AC, 0x003, 0x205, 0x206\n#_03B7C0: db $34, $D3, $C4, $7C : db $00, $01 ; 0x0280\u20130x0283: 0x034, 0x0D3, 0x1C4, 0x07C\n#_03B7C6: db $F4, $5B, $86, $A4 : db $11, $10 ; 0x0284\u20130x0287: 0x1F4, 0x15B, 0x086, 0x1A4\n#_03B7CC: db $0F, $34, $0F, $C4 : db $20, $21 ; 0x0288\u20130x028B: 0x00F, 0x234, 0x10F, 0x2C4\n#_03B7D2: db $34, $00, $05, $05 : db $01, $11 ; 0x028C\u20130x028F: 0x134, 0x000, 0x105, 0x105\n#_03B7D8: db $C5, $34, $FF, $3A : db $00, $11 ; 0x0290\u20130x0293: 0x0C5, 0x034, 0x1FF, 0x13A\n#_03B7DE: db $34, $A3, $34, $05 : db $00, $01 ; 0x0294\u20130x0297: 0x034, 0x0A3, 0x134, 0x005\n#_03B7E4: db $05, $0B, $7C, $34 : db $12, $10 ; 0x0298\u20130x029B: 0x205, 0x10B, 0x07C, 0x134\n#_03B7EA: db $34, $9E, $07, $C5 : db $00, $20 ; 0x029C\u20130x029F: 0x034, 0x09E, 0x007, 0x2C5\n#_03B7F0: db $C6, $4B, $39, $FE : db $01, $11 ; 0x02A0\u20130x02A3: 0x1C6, 0x04B, 0x139, 0x1FE\n#_03B7F6: db $FF, $A3, $FC, $34 : db $10, $10 ; 0x02A4\u20130x02A7: 0x0FF, 0x1A3, 0x0FC, 0x134\n#_03B7FC: db $E9, $4B, $50, $39 : db $11, $11 ; 0x02A8\u20130x02AB: 0x1E9, 0x14B, 0x150, 0x139\n#_03B802: db $E9, $10, $10, $1A : db $11, $11 ; 0x02AC\u20130x02AF: 0x1E9, 0x110, 0x110, 0x11A\n#_03B808: db $20, $10, $11, $14 : db $11, $11 ; 0x02B0\u20130x02B3: 0x120, 0x110, 0x111, 0x114\n#_03B80E: db $14, $10, $12, $12 : db $11, $11 ; 0x02B4\u20130x02B7: 0x114, 0x110, 0x112, 0x112\n#_03B814: db $10, $1A, $12, $12 : db $11, $11 ; 0x02B8\u20130x02BB: 0x110, 0x11A, 0x112, 0x112\n#_03B81A: db $12, $1B, $2B, $10 : db $11, $11 ; 0x02BC\u20130x02BF: 0x112, 0x11B, 0x12B, 0x110\n#_03B820: db $2A, $1F, $59, $18 : db $11, $11 ; 0x02C0\u20130x02C3: 0x12A, 0x11F, 0x159, 0x118\n#_03B826: db $12, $13, $10, $1A : db $11, $11 ; 0x02C4\u20130x02C7: 0x112, 0x113, 0x110, 0x11A\n#_03B82C: db $12, $1B, $10, $10 : db $11, $11 ; 0x02C8\u20130x02CB: 0x112, 0x11B, 0x110, 0x110\n#_03B832: db $C2, $26, $12, $10 : db $11, $11 ; 0x02CC\u20130x02CF: 0x1C2, 0x126, 0x112, 0x110\n#_03B838: db $11, $66, $1A, $34 : db $11, $20 ; 0x02D0\u20130x02D3: 0x111, 0x166, 0x01A, 0x234\n#_03B83E: db $34, $27, $29, $1B : db $01, $11 ; 0x02D4\u20130x02D7: 0x134, 0x027, 0x129, 0x11B\n#_03B844: db $15, $25, $34, $C6 : db $11, $00 ; 0x02D8\u20130x02DB: 0x115, 0x125, 0x034, 0x0C6\n#_03B84A: db $5B, $34, $34, $36 : db $10, $01 ; 0x02DC\u20130x02DF: 0x05B, 0x134, 0x134, 0x036\n#_03B850: db $37, $37, $38, $37 : db $11, $11 ; 0x02E0\u20130x02E3: 0x137, 0x137, 0x138, 0x137\n#_03B856: db $36, $35, $1B, $1F : db $11, $22 ; 0x02E4\u20130x02E7: 0x136, 0x135, 0x21B, 0x21F\n#_03B85C: db $34, $34, $44, $46 : db $00, $11 ; 0x02E8\u20130x02EB: 0x034, 0x034, 0x144, 0x146\n#_03B862: db $47, $48, $B1, $B3 : db $11, $11 ; 0x02EC\u20130x02EF: 0x147, 0x148, 0x1B1, 0x1B3\n#_03B868: db $35, $1B, $20, $34 : db $12, $20 ; 0x02F0\u20130x02F3: 0x235, 0x11B, 0x020, 0x234\n#_03B86E: db $4E, $32, $2D, $39 : db $11, $11 ; 0x02F4\u20130x02F7: 0x14E, 0x132, 0x12D, 0x139\n#_03B874: db $5D, $21, $C9, $C9 : db $12, $00 ; 0x02F8\u20130x02FB: 0x25D, 0x121, 0x0C9, 0x0C9\n#_03B87A: db $12, $1B, $1A, $4A : db $11, $11 ; 0x02FC\u20130x02FF: 0x112, 0x11B, 0x11A, 0x14A\n#_03B880: db $40, $4E, $C5, $22 : db $11, $02 ; 0x0300\u20130x0303: 0x140, 0x14E, 0x2C5, 0x022\n#_03B886: db $57, $57, $4C, $10 : db $11, $11 ; 0x0304\u20130x0307: 0x157, 0x157, 0x14C, 0x110\n#_03B88C: db $1A, $EC, $23, $12 : db $11, $21 ; 0x0308\u20130x030B: 0x11A, 0x1EC, 0x123, 0x212\n#_03B892: db $20, $2B, $1A, $4A : db $11, $11 ; 0x030C\u20130x030F: 0x120, 0x12B, 0x11A, 0x14A\n#_03B898: db $59, $10, $13, $20 : db $11, $12 ; 0x0310\u20130x0313: 0x159, 0x110, 0x213, 0x120\n#_03B89E: db $66, $58, $29, $12 : db $11, $11 ; 0x0314\u20130x0317: 0x166, 0x158, 0x129, 0x112\n#_03B8A4: db $14, $10, $1F, $10 : db $11, $11 ; 0x0318\u20130x031B: 0x114, 0x110, 0x11F, 0x110\n#_03B8AA: db $19, $12, $2C, $C5 : db $11, $10 ; 0x031C\u20130x031F: 0x119, 0x112, 0x02C, 0x1C5\n#_03B8B0: db $C6, $C6, $12, $12 : db $00, $11 ; 0x0320\u20130x0323: 0x0C6, 0x0C6, 0x112, 0x112\n#_03B8B6: db $12, $12, $14, $4D : db $11, $11 ; 0x0324\u20130x0327: 0x112, 0x112, 0x114, 0x14D\n#_03B8BC: db $10, $11, $16, $1D : db $11, $11 ; 0x0328\u20130x032B: 0x110, 0x111, 0x116, 0x11D\n#_03B8C2: db $13, $12, $14, $12 : db $11, $11 ; 0x032C\u20130x032F: 0x113, 0x112, 0x114, 0x112\n#_03B8C8: db $2C, $43, $31, $22 : db $11, $11 ; 0x0330\u20130x0333: 0x12C, 0x143, 0x131, 0x122\n#_03B8CE: db $24, $13, $24, $59 : db $11, $21 ; 0x0334\u20130x0337: 0x124, 0x113, 0x124, 0x259\n#_03B8D4: db $4D, $2C, $40, $4E : db $11, $11 ; 0x0338\u20130x033B: 0x14D, 0x12C, 0x140, 0x14E\n#_03B8DA: db $2C, $24, $19, $1A : db $11, $11 ; 0x033C\u20130x033F: 0x12C, 0x124, 0x119, 0x11A\n#_03B8E0: db $C9, $16, $25, $18 : db $01, $12 ; 0x0340\u20130x0343: 0x1C9, 0x016, 0x225, 0x118\n#_03B8E6: db $34, $13, $1A, $57 : db $01, $11 ; 0x0344\u20130x0347: 0x134, 0x013, 0x11A, 0x157\n#_03B8EC: db $57, $25, $25, $D5 : db $11, $21 ; 0x0348\u20130x034B: 0x157, 0x125, 0x125, 0x2D5\n#_03B8F2: db $34, $1D, $2B, $25 : db $01, $11 ; 0x034C\u20130x034F: 0x134, 0x01D, 0x12B, 0x125\n#_03B8F8: db $CE, $D0, $C6, $11 : db $00, $01 ; 0x0350\u20130x0353: 0x0CE, 0x0D0, 0x1C6, 0x011\n#_03B8FE: db $C3, $34, $DB, $CA : db $10, $00 ; 0x0354\u20130x0357: 0x0C3, 0x134, 0x0DB, 0x0CA\n#_03B904: db $DD, $DC, $C9, $5E : db $00, $01 ; 0x0358\u20130x035B: 0x0DD, 0x0DC, 0x1C9, 0x05E\n#_03B90A: db $5F, $34, $25, $27 : db $10, $12 ; 0x035C\u20130x035F: 0x05F, 0x134, 0x225, 0x127\n#_03B910: db $E4, $E3, $C9, $1C : db $00, $02 ; 0x0360\u20130x0363: 0x0E4, 0x0E3, 0x2C9, 0x01C\n#_03B916: db $2A, $1C, $21, $C9 : db $22, $20 ; 0x0364\u20130x0367: 0x22A, 0x21C, 0x021, 0x2C9\n#_03B91C: db $C9, $C9, $7E, $53 : db $00, $11 ; 0x0368\u20130x036B: 0x0C9, 0x0C9, 0x17E, 0x153\n#_03B922: db $53, $C9, $DF, $C9 : db $10, $00 ; 0x036C\u20130x036F: 0x053, 0x1C9, 0x0DF, 0x0C9\n#_03B928: db $DF, $39, $C9, $24 : db $01, $01 ; 0x0370\u20130x0373: 0x1DF, 0x039, 0x1C9, 0x024\n#_03B92E: db $53, $2E, $2E, $C9 : db $12, $20 ; 0x0374\u20130x0377: 0x253, 0x12E, 0x02E, 0x2C9\n#_03B934: db $2D, $C9, $31, $C9 : db $20, $20 ; 0x0378\u20130x037B: 0x02D, 0x2C9, 0x031, 0x2C9\n#_03B93A: db $20, $5A, $10, $59 : db $11, $11 ; 0x037C\u20130x037F: 0x120, 0x15A, 0x110, 0x159\n#_03B940: db $12, $14, $10, $34 : db $11, $10 ; 0x0380\u20130x0383: 0x112, 0x114, 0x010, 0x134\n#_03B946: db $34, $14, $34, $34 : db $01, $00 ; 0x0384\u20130x0387: 0x134, 0x014, 0x034, 0x034\n#_03B94C: db $34, $34, $28, $1B : db $01, $11 ; 0x0388\u20130x038B: 0x134, 0x034, 0x128, 0x11B\n#_03B952: db $19, $18, $62, $33 : db $22, $12 ; 0x038C\u20130x038F: 0x219, 0x218, 0x262, 0x133\n#_03B958: db $33, $34, $60, $34 : db $22, $10 ; 0x0390\u20130x0393: 0x233, 0x234, 0x060, 0x134\n#_03B95E: db $1C, $6A, $62, $35 : db $21, $12 ; 0x0394\u20130x0397: 0x11C, 0x26A, 0x262, 0x135\n#_03B964: db $34, $34, $50, $12 : db $20, $11 ; 0x0398\u20130x039B: 0x034, 0x234, 0x150, 0x112\n#_03B96A: db $53, $FA, $34, $CE : db $11, $00 ; 0x039C\u20130x039F: 0x153, 0x1FA, 0x034, 0x0CE\n#_03B970: db $34, $ED, $34, $34 : db $01, $00 ; 0x03A0\u20130x03A3: 0x134, 0x0ED, 0x034, 0x034\n#_03B976: db $31, $20, $2B, $53 : db $11, $11 ; 0x03A4\u20130x03A7: 0x131, 0x120, 0x12B, 0x153\n#_03B97C: db $34, $1B, $1B, $ED : db $02, $21 ; 0x03A8\u20130x03AB: 0x234, 0x01B, 0x11B, 0x2ED\n#_03B982: db $34, $14, $EC, $39 : db $01, $11 ; 0x03AC\u20130x03AF: 0x134, 0x014, 0x1EC, 0x139\n#_03B988: db $DB, $76, $34, $E7 : db $01, $01 ; 0x03B0\u20130x03B3: 0x1DB, 0x076, 0x134, 0x0E7\n#_03B98E: db $53, $34, $34, $27 : db $10, $01 ; 0x03B4\u20130x03B7: 0x053, 0x134, 0x134, 0x027\n#_03B994: db $4A, $39, $C9, $53 : db $11, $01 ; 0x03B8\u20130x03BB: 0x14A, 0x139, 0x1C9, 0x053\n#_03B99A: db $24, $34, $3C, $4B : db $10, $21 ; 0x03BC\u20130x03BF: 0x024, 0x134, 0x13C, 0x24B\n#_03B9A0: db $12, $2C, $4E, $27 : db $11, $11 ; 0x03C0\u20130x03C3: 0x112, 0x12C, 0x14E, 0x127\n#_03B9A6: db $54, $1F, $12, $4A : db $11, $11 ; 0x03C4\u20130x03C7: 0x154, 0x11F, 0x112, 0x14A\n#_03B9AC: db $61, $3F, $50, $27 : db $12, $11 ; 0x03C8\u20130x03CB: 0x261, 0x13F, 0x150, 0x127\n#_03B9B2: db $32, $2B, $19, $57 : db $11, $11 ; 0x03CC\u20130x03CF: 0x132, 0x12B, 0x119, 0x157\n#_03B9B8: db $3F, $53, $55, $59 : db $21, $11 ; 0x03D0\u20130x03D3: 0x13F, 0x253, 0x155, 0x159\n#_03B9BE: db $1A, $59, $55, $18 : db $11, $10 ; 0x03D4\u20130x03D7: 0x11A, 0x159, 0x055, 0x118\n#_03B9C4: db $6E, $34, $4B, $33 : db $00, $00 ; 0x03D8\u20130x03DB: 0x06E, 0x034, 0x04B, 0x033\n#_03B9CA: db $1C, $33, $34, $9B : db $00, $00 ; 0x03DC\u20130x03DF: 0x01C, 0x033, 0x034, 0x09B\n#_03B9D0: db $34, $70, $2A, $18 : db $00, $00 ; 0x03E0\u20130x03E3: 0x034, 0x070, 0x02A, 0x018\n#_03B9D6: db $86, $3C, $71, $05 : db $00, $00 ; 0x03E4\u20130x03E7: 0x086, 0x03C, 0x071, 0x005\n#_03B9DC: db $5E, $47, $33, $3C : db $00, $00 ; 0x03E8\u20130x03EB: 0x05E, 0x047, 0x033, 0x03C\n#_03B9E2: db $4C, $5E, $04, $5E : db $00, $00 ; 0x03EC\u20130x03EF: 0x04C, 0x05E, 0x004, 0x05E\n#_03B9E8: db $26, $19, $81, $55 : db $00, $00 ; 0x03F0\u20130x03F3: 0x026, 0x019, 0x081, 0x055\n#_03B9EE: db $2F, $61, $3B, $04 : db $00, $00 ; 0x03F4\u20130x03F7: 0x02F, 0x061, 0x03B, 0x004\n#_03B9F4: db $67, $66, $68, $5E : db $00, $00 ; 0x03F8\u20130x03FB: 0x067, 0x066, 0x068, 0x05E\n#_03B9FA: db $4C, $04, $33, $34 : db $00, $00 ; 0x03FC\u20130x03FF: 0x04C, 0x004, 0x033, 0x034\n#_03BA00: db $40, $17, $2F, $34 : db $20, $00 ; 0x0400\u20130x0403: 0x040, 0x217, 0x02F, 0x034\n#_03BA06: db $AE, $3F, $5E, $33 : db $00, $00 ; 0x0404\u20130x0407: 0x0AE, 0x03F, 0x05E, 0x033\n#_03BA0C: db $2D, $04, $06, $5A : db $00, $00 ; 0x0408\u20130x040B: 0x02D, 0x004, 0x006, 0x05A\n#_03BA12: db $B6, $04, $64, $0F : db $00, $00 ; 0x040C\u20130x040F: 0x0B6, 0x004, 0x064, 0x00F\n#_03BA18: db $5D, $2F, $4C, $21 : db $00, $00 ; 0x0410\u20130x0413: 0x05D, 0x02F, 0x04C, 0x021\n#_03BA1E: db $65, $54, $36, $04 : db $00, $00 ; 0x0414\u20130x0417: 0x065, 0x054, 0x036, 0x004\n#_03BA24: db $4B, $28, $71, $3A : db $00, $00 ; 0x0418\u20130x041B: 0x04B, 0x028, 0x071, 0x03A\n#_03BA2A: db $4C, $01, $41, $6C : db $00, $00 ; 0x041C\u20130x041F: 0x04C, 0x001, 0x041, 0x06C\n#_03BA30: db $3F, $65, $14, $2A : db $00, $00 ; 0x0420\u20130x0423: 0x03F, 0x065, 0x014, 0x02A\n#_03BA36: db $36, $69, $76, $34 : db $00, $00 ; 0x0424\u20130x0427: 0x036, 0x069, 0x076, 0x034\n#_03BA3C: db $36, $95, $43, $40 : db $00, $20 ; 0x0428\u20130x042B: 0x036, 0x095, 0x043, 0x240\n#_03BA42: db $34, $8B, $47, $2A : db $00, $20 ; 0x042C\u20130x042F: 0x034, 0x08B, 0x047, 0x22A\n#_03BA48: db $7C, $34, $34, $34 : db $10, $00 ; 0x0430\u20130x0433: 0x07C, 0x134, 0x034, 0x034\n#_03BA4E: db $04, $4E, $4D, $1C : db $00, $00 ; 0x0434\u20130x0437: 0x004, 0x04E, 0x04D, 0x01C\n#_03BA54: db $1F, $40, $41, $79 : db $00, $01 ; 0x0438\u20130x043B: 0x01F, 0x040, 0x141, 0x079\n#_03BA5A: db $B9, $12, $7B, $9E : db $00, $00 ; 0x043C\u20130x043F: 0x0B9, 0x012, 0x07B, 0x09E\n#_03BA60: db $6D, $10, $2C, $9E : db $00, $00 ; 0x0440\u20130x0443: 0x06D, 0x010, 0x02C, 0x09E\n#_03BA66: db $34, $AF, $0C, $7E : db $00, $00 ; 0x0444\u20130x0447: 0x034, 0x0AF, 0x00C, 0x07E\n#_03BA6C: db $AF, $B1, $2A, $43 : db $00, $00 ; 0x0448\u20130x044B: 0x0AF, 0x0B1, 0x02A, 0x043\n#_03BA72: db $25, $7D, $1E, $1D : db $00, $00 ; 0x044C\u20130x044F: 0x025, 0x07D, 0x01E, 0x01D\n#_03BA78: db $1C, $1E, $41, $4C : db $00, $02 ; 0x0450\u20130x0453: 0x01C, 0x01E, 0x241, 0x04C\n#_03BA7E: db $04, $41, $38, $5C : db $00, $00 ; 0x0454\u20130x0457: 0x004, 0x041, 0x038, 0x05C\n#_03BA84: db $5B, $6E, $34, $69 : db $00, $00 ; 0x0458\u20130x045B: 0x05B, 0x06E, 0x034, 0x069\n#_03BA8A: db $04, $70, $43, $25 : db $00, $00 ; 0x045C\u20130x045F: 0x004, 0x070, 0x043, 0x025\n#_03BA90: db $7D, $34, $34, $6E : db $00, $00 ; 0x0460\u20130x0463: 0x07D, 0x034, 0x034, 0x06E\n#_03BA96: db $79, $07, $73, $97 : db $00, $00 ; 0x0464\u20130x0467: 0x079, 0x007, 0x073, 0x097\n#_03BA9C: db $40, $4B, $34, $33 : db $00, $00 ; 0x0468\u20130x046B: 0x040, 0x04B, 0x034, 0x033\n#_03BAA2: db $75, $81, $40, $40 : db $00, $00 ; 0x046C\u20130x046F: 0x075, 0x081, 0x040, 0x040\n#_03BAA8: db $4B, $7C, $34, $B0 : db $00, $00 ; 0x0470\u20130x0473: 0x04B, 0x07C, 0x034, 0x0B0\n#_03BAAE: db $C9, $78, $53, $CA : db $01, $20 ; 0x0474\u20130x0477: 0x1C9, 0x078, 0x053, 0x2CA\n#_03BAB4: db $E0, $34, $24, $C9 : db $00, $10 ; 0x0478\u20130x047B: 0x0E0, 0x034, 0x024, 0x1C9\n#_03BABA: db $2D, $5B, $21, $6C : db $21, $21 ; 0x047C\u20130x047F: 0x12D, 0x25B, 0x121, 0x26C\n#_03BAC0: db $6D, $34, $50, $DC : db $10, $20 ; 0x0480\u20130x0483: 0x06D, 0x134, 0x050, 0x2DC\n#_03BAC6: db $6D, $E7, $C9, $53 : db $11, $01 ; 0x0484\u20130x0487: 0x16D, 0x1E7, 0x1C9, 0x053\n#_03BACC: db $53, $E3, $37, $EE : db $10, $21 ; 0x0488\u20130x048B: 0x053, 0x1E3, 0x137, 0x2EE\n#_03BAD2: db $EE, $34, $34, $6A : db $10, $01 ; 0x048C\u20130x048F: 0x0EE, 0x134, 0x134, 0x06A\n#_03BAD8: db $4E, $C4, $76, $43 : db $10, $11 ; 0x0490\u20130x0493: 0x04E, 0x1C4, 0x176, 0x143\n#_03BADE: db $4F, $7F, $C9, $CA : db $11, $00 ; 0x0494\u20130x0497: 0x14F, 0x17F, 0x0C9, 0x0CA\n#_03BAE4: db $C9, $34, $34, $DB : db $00, $00 ; 0x0498\u20130x049B: 0x0C9, 0x034, 0x034, 0x0DB\n#_03BAEA: db $7F, $52, $41, $C9 : db $11, $10 ; 0x049C\u20130x049F: 0x17F, 0x152, 0x041, 0x1C9\n#_03BAF0: db $56, $53, $9E, $A4 : db $21, $00 ; 0x04A0\u20130x04A3: 0x156, 0x253, 0x09E, 0x0A4\n#_03BAF6: db $FF, $34, $83, $5D : db $10, $12 ; 0x04A4\u20130x04A7: 0x0FF, 0x134, 0x283, 0x15D\n#_03BAFC: db $5D, $5E, $41, $5F : db $22, $12 ; 0x04A8\u20130x04AB: 0x25D, 0x25E, 0x241, 0x15F\n#_03BB02: db $61, $34, $4F, $63 : db $20, $12 ; 0x04AC\u20130x04AF: 0x061, 0x234, 0x24F, 0x163\n#_03BB08: db $69, $6B, $6D, $6E : db $22, $22 ; 0x04B0\u20130x04B3: 0x269, 0x26B, 0x26D, 0x26E\n#_03BB0E: db $5E, $C9, $52, $5C : db $20, $12 ; 0x04B4\u20130x04B7: 0x05E, 0x2C9, 0x252, 0x15C\n#_03BB14: db $72, $34, $34, $74 : db $20, $02 ; 0x04B8\u20130x04BB: 0x072, 0x234, 0x234, 0x074\n#_03BB1A: db $34, $77, $73, $34 : db $02, $20 ; 0x04BC\u20130x04BF: 0x234, 0x077, 0x073, 0x234\n#_03BB20: db $34, $0F, $34, $39 : db $02, $01 ; 0x04C0\u20130x04C3: 0x234, 0x00F, 0x134, 0x039\n#_03BB26: db $39, $34, $34, $76 : db $20, $01 ; 0x04C4\u20130x04C7: 0x039, 0x234, 0x134, 0x076\n#_03BB2C: db $34, $EB, $82, $DC : db $01, $10 ; 0x04C8\u20130x04CB: 0x134, 0x0EB, 0x082, 0x1DC\n#_03BB32: db $DC, $50, $61, $64 : db $01, $12 ; 0x04CC\u20130x04CF: 0x1DC, 0x050, 0x261, 0x164\n#_03BB38: db $78, $6C, $61, $65 : db $22, $12 ; 0x04D0\u20130x04D3: 0x278, 0x26C, 0x261, 0x165\n#_03BB3E: db $C9, $78, $7D, $78 : db $02, $22 ; 0x04D4\u20130x04D7: 0x2C9, 0x078, 0x27D, 0x278\n#_03BB44: db $81, $78, $7A, $78 : db $22, $22 ; 0x04D8\u20130x04DB: 0x281, 0x278, 0x27A, 0x278\n#_03BB4A: db $83, $C4, $CA, $85 : db $20, $02 ; 0x04DC\u20130x04DF: 0x083, 0x2C4, 0x2CA, 0x085\n#_03BB50: db $64, $78, $83, $5B : db $22, $21 ; 0x04E0\u20130x04E3: 0x264, 0x278, 0x183, 0x25B\n#_03BB56: db $78, $78, $65, $CA : db $22, $20 ; 0x04E4\u20130x04E7: 0x278, 0x278, 0x065, 0x2CA\n#_03BB5C: db $5B, $8A, $65, $8B : db $12, $12 ; 0x04E8\u20130x04EB: 0x25B, 0x18A, 0x265, 0x18B\n#_03BB62: db $65, $8D, $78, $6F : db $22, $22 ; 0x04EC\u20130x04EF: 0x265, 0x28D, 0x278, 0x26F\n#_03BB68: db $84, $D1, $8F, $78 : db $20, $22 ; 0x04F0\u20130x04F3: 0x084, 0x2D1, 0x28F, 0x278\n#_03BB6E: db $65, $C9, $1D, $F2 : db $20, $11 ; 0x04F4\u20130x04F7: 0x065, 0x2C9, 0x11D, 0x1F2\n#_03BB74: db $78, $89, $5D, $80 : db $22, $22 ; 0x04F8\u20130x04FB: 0x278, 0x289, 0x25D, 0x280\n#_03BB7A: db $78, $92, $1C, $E3 : db $22, $10 ; 0x04FC\u20130x04FF: 0x278, 0x292, 0x01C, 0x1E3\n#_03BB80: db $27, $85, $78, $78 : db $12, $22 ; 0x0500\u20130x0503: 0x227, 0x185, 0x278, 0x278\n#_03BB86: db $78, $78, $83, $30 : db $22, $21 ; 0x0504\u20130x0507: 0x278, 0x278, 0x183, 0x230\n#_03BB8C: db $34, $97, $98, $97 : db $02, $22 ; 0x0508\u20130x050B: 0x234, 0x097, 0x298, 0x297\n#_03BB92: db $9A, $9A, $97, $34 : db $22, $20 ; 0x050C\u20130x050F: 0x29A, 0x29A, 0x097, 0x234\n#_03BB98: db $34, $9D, $3C, $3C : db $02, $11 ; 0x0510\u20130x0513: 0x234, 0x09D, 0x13C, 0x13C\n#_03BB9E: db $3C, $9E, $A0, $A0 : db $12, $22 ; 0x0514\u20130x0517: 0x23C, 0x19E, 0x2A0, 0x2A0\n#_03BBA4: db $9E, $34, $27, $6B : db $20, $12 ; 0x0518\u20130x051B: 0x09E, 0x234, 0x227, 0x16B\n#_03BBAA: db $79, $7B, $83, $39 : db $22, $21 ; 0x051C\u20130x051F: 0x279, 0x27B, 0x183, 0x239\n#_03BBB0: db $85, $7F, $80, $65 : db $22, $22 ; 0x0520\u20130x0523: 0x285, 0x27F, 0x280, 0x265\n#_03BBB6: db $C9, $63, $78, $78 : db $02, $22 ; 0x0524\u20130x0527: 0x2C9, 0x063, 0x278, 0x278\n#_03BBBC: db $78, $78, $65, $64 : db $22, $22 ; 0x0528\u20130x052B: 0x278, 0x278, 0x265, 0x264\n#_03BBC2: db $64, $78, $6B, $06 : db $22, $21 ; 0x052C\u20130x052F: 0x264, 0x278, 0x16B, 0x206\n#_03BBC8: db $A5, $06, $78, $78 : db $21, $22 ; 0x0530\u20130x0533: 0x1A5, 0x206, 0x278, 0x278\n#_03BBCE: db $7F, $6A, $8A, $8B : db $22, $22 ; 0x0534\u20130x0537: 0x27F, 0x26A, 0x28A, 0x28B\n#_03BBD4: db $78, $D0, $7C, $7E : db $20, $22 ; 0x0538\u20130x053B: 0x078, 0x2D0, 0x27C, 0x27E\n#_03BBDA: db $78, $78, $78, $8C : db $22, $22 ; 0x053C\u20130x053F: 0x278, 0x278, 0x278, 0x28C\n#_03BBE0: db $37, $8F, $78, $65 : db $22, $22 ; 0x0540\u20130x0543: 0x237, 0x28F, 0x278, 0x265\n#_03BBE6: db $78, $78, $5E, $5C : db $22, $22 ; 0x0544\u20130x0547: 0x278, 0x278, 0x25E, 0x25C\n#_03BBEC: db $2E, $2F, $34, $83 : db $22, $01 ; 0x0548\u20130x054B: 0x22E, 0x22F, 0x134, 0x083\n#_03BBF2: db $DF, $C9, $E0, $C9 : db $00, $00 ; 0x054C\u20130x054F: 0x0DF, 0x0C9, 0x0E0, 0x0C9\n#_03BBF8: db $86, $4B, $C6, $34 : db $11, $00 ; 0x0550\u20130x0553: 0x186, 0x14B, 0x0C6, 0x034\n#_03BBFE: db $3A, $6A, $AC, $39 : db $21, $22 ; 0x0554\u20130x0557: 0x13A, 0x26A, 0x2AC, 0x239\n#_03BC04: db $27, $6D, $76, $C2 : db $11, $11 ; 0x0558\u20130x055B: 0x127, 0x16D, 0x176, 0x1C2\n#_03BC0A: db $04, $AF, $6C, $34 : db $12, $10 ; 0x055C\u20130x055F: 0x204, 0x1AF, 0x06C, 0x134\n#_03BC10: db $4B, $AE, $E8, $B0 : db $12, $12 ; 0x0560\u20130x0563: 0x24B, 0x1AE, 0x2E8, 0x1B0\n#_03BC16: db $C4, $C6, $34, $CA : db $00, $00 ; 0x0564\u20130x0567: 0x0C4, 0x0C6, 0x034, 0x0CA\n#_03BC1C: db $61, $34, $34, $78 : db $10, $02 ; 0x0568\u20130x056B: 0x061, 0x134, 0x234, 0x078\n#_03BC22: db $6D, $83, $C9, $80 : db $22, $02 ; 0x056C\u20130x056F: 0x26D, 0x283, 0x2C9, 0x080\n#_03BC28: db $63, $90, $1C, $27 : db $12, $11 ; 0x0570\u20130x0573: 0x263, 0x190, 0x11C, 0x127\n#_03BC2E: db $63, $64, $65, $35 : db $22, $20 ; 0x0574\u20130x0577: 0x263, 0x264, 0x065, 0x235\n#_03BC34: db $34, $A8, $39, $85 : db $02, $22 ; 0x0578\u20130x057B: 0x234, 0x0A8, 0x239, 0x285\n#_03BC3A: db $6D, $78, $83, $4F : db $22, $21 ; 0x057C\u20130x057F: 0x26D, 0x278, 0x183, 0x24F\n#_03BC40: db $A4, $78, $68, $68 : db $22, $22 ; 0x0580\u20130x0583: 0x2A4, 0x278, 0x268, 0x268\n#_03BC46: db $C5, $23, $78, $5B : db $02, $21 ; 0x0584\u20130x0587: 0x2C5, 0x023, 0x178, 0x25B\n#_03BC4C: db $B6, $B8, $B8, $B9 : db $22, $22 ; 0x0588\u20130x058B: 0x2B6, 0x2B8, 0x2B8, 0x2B9\n#_03BC52: db $57, $5B, $31, $BB : db $21, $12 ; 0x058C\u20130x058F: 0x157, 0x25B, 0x231, 0x1BB\n#_03BC58: db $BC, $2D, $75, $B7 : db $21, $12 ; 0x0590\u20130x0593: 0x1BC, 0x22D, 0x275, 0x1B7\n#_03BC5E: db $B7, $C4, $31, $C6 : db $20, $12 ; 0x0594\u20130x0597: 0x0B7, 0x2C4, 0x231, 0x1C6\n#_03BC64: db $C8, $CE, $C5, $CE : db $20, $22 ; 0x0598\u20130x059B: 0x0C8, 0x2CE, 0x2C5, 0x2CE\n#_03BC6A: db $CA, $D0, $D2, $00 : db $02, $21 ; 0x059C\u20130x059F: 0x2CA, 0x0D0, 0x1D2, 0x200\n#_03BC70: db $05, $07, $53, $D1 : db $11, $12 ; 0x05A0\u20130x05A3: 0x105, 0x107, 0x253, 0x1D1\n#_03BC76: db $CD, $D5, $CA, $C6 : db $22, $02 ; 0x05A4\u20130x05A7: 0x2CD, 0x2D5, 0x2CA, 0x0C6\n#_03BC7C: db $C7, $CE, $C6, $22 : db $20, $02 ; 0x05A8\u20130x05AB: 0x0C7, 0x2CE, 0x2C6, 0x022\n#_03BC82: db $D1, $D2, $CD, $D5 : db $22, $22 ; 0x05AC\u20130x05AF: 0x2D1, 0x2D2, 0x2CD, 0x2D5\n#_03BC88: db $D0, $D2, $C8, $DB : db $22, $22 ; 0x05B0\u20130x05B3: 0x2D0, 0x2D2, 0x2C8, 0x2DB\n#_03BC8E: db $CE, $D0, $C6, $DD : db $00, $22 ; 0x05B4\u20130x05B7: 0x0CE, 0x0D0, 0x2C6, 0x2DD\n#_03BC94: db $D9, $D2, $C9, $5D : db $22, $21 ; 0x05B8\u20130x05BB: 0x2D9, 0x2D2, 0x1C9, 0x25D\n#_03BC9A: db $5E, $DE, $C4, $E4 : db $12, $02 ; 0x05BC\u20130x05BF: 0x25E, 0x1DE, 0x2C4, 0x0E4\n#_03BCA0: db $C7, $C7, $C9, $34 : db $22, $20 ; 0x05C0\u20130x05C3: 0x2C7, 0x2C7, 0x0C9, 0x234\n#_03BCA6: db $E5, $E6, $E8, $CA : db $22, $20 ; 0x05C4\u20130x05C7: 0x2E5, 0x2E6, 0x0E8, 0x2CA\n#_03BCAC: db $CA, $CD, $DA, $DF : db $02, $22 ; 0x05C8\u20130x05CB: 0x2CA, 0x0CD, 0x2DA, 0x2DF\n#_03BCB2: db $DD, $C7, $F0, $34 : db $22, $20 ; 0x05CC\u20130x05CF: 0x2DD, 0x2C7, 0x0F0, 0x234\n#_03BCB8: db $F1, $F3, $F5, $EE : db $22, $22 ; 0x05D0\u20130x05D3: 0x2F1, 0x2F3, 0x2F5, 0x2EE\n#_03BCBE: db $CA, $C4, $58, $F8 : db $00, $12 ; 0x05D4\u20130x05D7: 0x0CA, 0x0C4, 0x258, 0x1F8\n#_03BCC4: db $CD, $F9, $F9, $CD : db $22, $22 ; 0x05D8\u20130x05DB: 0x2CD, 0x2F9, 0x2F9, 0x2CD\n#_03BCCA: db $DF, $F0, $85, $F5 : db $22, $12 ; 0x05DC\u20130x05DF: 0x2DF, 0x2F0, 0x285, 0x1F5\n#_03BCD0: db $EE, $CA, $CF, $F8 : db $20, $02 ; 0x05E0\u20130x05E3: 0x0EE, 0x2CA, 0x2CF, 0x0F8\n#_03BCD6: db $D6, $CD, $CD, $C8 : db $22, $22 ; 0x05E4\u20130x05E7: 0x2D6, 0x2CD, 0x2CD, 0x2C8\n#_03BCDC: db $C9, $34, $5C, $FD : db $20, $12 ; 0x05E8\u20130x05EB: 0x0C9, 0x234, 0x25C, 0x1FD\n#_03BCE2: db $E6, $FE, $CF, $C5 : db $22, $02 ; 0x05EC\u20130x05EF: 0x2E6, 0x2FE, 0x2CF, 0x0C5\n#_03BCE8: db $CD, $CD, $04, $05 : db $22, $33 ; 0x05F0\u20130x05F3: 0x2CD, 0x2CD, 0x304, 0x305\n#_03BCEE: db $E1, $72, $73, $63 : db $21, $11 ; 0x05F4\u20130x05F7: 0x1E1, 0x272, 0x173, 0x163\n#_03BCF4: db $07, $E6, $0D, $0F : db $32, $33 ; 0x05F8\u20130x05FB: 0x207, 0x3E6, 0x30D, 0x30F\n#_03BCFA: db $11, $FD, $E6, $E6 : db $32, $22 ; 0x05FC\u20130x05FF: 0x211, 0x3FD, 0x2E6, 0x2E6\n#_03BD00: db $07, $E6, $B7, $B9 : db $32, $22 ; 0x0600\u20130x0603: 0x207, 0x3E6, 0x2B7, 0x2B9\n#_03BD06: db $FD, $E6, $17, $19 : db $22, $33 ; 0x0604\u20130x0607: 0x2FD, 0x2E6, 0x317, 0x319\n#_03BD0C: db $E6, $E6, $1C, $E6 : db $22, $32 ; 0x0608\u20130x060B: 0x2E6, 0x2E6, 0x21C, 0x3E6\n#_03BD12: db $31, $CD, $CF, $1E : db $12, $23 ; 0x060C\u20130x060F: 0x231, 0x1CD, 0x3CF, 0x21E\n#_03BD18: db $FE, $71, $20, $23 : db $21, $33 ; 0x0610\u20130x0613: 0x1FE, 0x271, 0x320, 0x323\n#_03BD1E: db $F1, $FE, $C5, $51 : db $22, $01 ; 0x0614\u20130x0617: 0x2F1, 0x2FE, 0x1C5, 0x051\n#_03BD24: db $CD, $D4, $C8, $E9 : db $22, $01 ; 0x0618\u20130x061B: 0x2CD, 0x2D4, 0x1C8, 0x0E9\n#_03BD2A: db $71, $E6, $E9, $D2 : db $12, $10 ; 0x061C\u20130x061F: 0x271, 0x1E6, 0x0E9, 0x1D2\n#_03BD30: db $D1, $00, $28, $D4 : db $23, $32 ; 0x0620\u20130x0623: 0x3D1, 0x200, 0x228, 0x3D4\n#_03BD36: db $E6, $2A, $2B, $02 : db $23, $30 ; 0x0624\u20130x0627: 0x3E6, 0x22A, 0x02B, 0x302\n#_03BD3C: db $31, $53, $A9, $F1 : db $30, $00 ; 0x0628\u20130x062B: 0x031, 0x353, 0x0A9, 0x0F1\n#_03BD42: db $AD, $34, $34, $34 : db $00, $00 ; 0x062C\u20130x062F: 0x0AD, 0x034, 0x034, 0x034\n#_03BD48: db $D7, $F1, $BE, $4E : db $00, $00 ; 0x0630\u20130x0633: 0x0D7, 0x0F1, 0x0BE, 0x04E\n#_03BD4E: db $D9, $34, $34, $88 : db $00, $00 ; 0x0634\u20130x0637: 0x0D9, 0x034, 0x034, 0x088\n#_03BD54: db $34, $36, $1B, $87 : db $30, $20 ; 0x0638\u20130x063B: 0x034, 0x336, 0x01B, 0x287\n#_03BD5A: db $D9, $34, $34, $34 : db $00, $00 ; 0x063C\u20130x063F: 0x0D9, 0x034, 0x034, 0x034\n#_03BD60: db $86, $34, $34, $34 : db $00, $00 ; 0x0640\u20130x0643: 0x086, 0x034, 0x034, 0x034\n#_03BD66: db $53, $3B, $34, $F2 : db $02, $30 ; 0x0644\u20130x0647: 0x253, 0x03B, 0x034, 0x3F2\n#_03BD6C: db $B5, $77, $08, $BE : db $00, $10 ; 0x0648\u20130x064B: 0x0B5, 0x077, 0x008, 0x1BE\n#_03BD72: db $C9, $39, $3B, $3C : db $03, $33 ; 0x064C\u20130x064F: 0x3C9, 0x039, 0x33B, 0x33C\n#_03BD78: db $3D, $3F, $45, $46 : db $33, $33 ; 0x0650\u20130x0653: 0x33D, 0x33F, 0x345, 0x346\n#_03BD7E: db $48, $4A, $3F, $6A : db $33, $31 ; 0x0654\u20130x0657: 0x348, 0x34A, 0x13F, 0x36A\n#_03BD84: db $57, $59, $5B, $5D : db $33, $33 ; 0x0658\u20130x065B: 0x357, 0x359, 0x35B, 0x35D\n#_03BD8A: db $6A, $34, $34, $A9 : db $10, $00 ; 0x065C\u20130x065F: 0x06A, 0x134, 0x034, 0x0A9\n#_03BD90: db $34, $F1, $4E, $34 : db $00, $00 ; 0x0660\u20130x0663: 0x034, 0x0F1, 0x04E, 0x034\n#_03BD96: db $69, $6B, $A9, $69 : db $33, $03 ; 0x0664\u20130x0667: 0x369, 0x36B, 0x3A9, 0x069\n#_03BD9C: db $34, $34, $34, $26 : db $00, $02 ; 0x0668\u20130x066B: 0x034, 0x034, 0x234, 0x026\n#_03BDA2: db $34, $75, $76, $78 : db $03, $33 ; 0x066C\u20130x066F: 0x334, 0x075, 0x376, 0x378\n#_03BDA8: db $A9, $76, $34, $34 : db $03, $00 ; 0x0670\u20130x0673: 0x3A9, 0x076, 0x034, 0x034\n#_03BDAE: db $E1, $34, $AD, $34 : db $00, $00 ; 0x0674\u20130x0677: 0x0E1, 0x034, 0x0AD, 0x034\n#_03BDB4: db $34, $73, $73, $73 : db $03, $33 ; 0x0678\u20130x067B: 0x334, 0x073, 0x373, 0x373\n#_03BDBA: db $80, $7F, $73, $7D : db $33, $33 ; 0x067C\u20130x067F: 0x380, 0x37F, 0x373, 0x37D\n#_03BDC0: db $7E, $34, $A9, $36 : db $30, $00 ; 0x0680\u20130x0683: 0x07E, 0x334, 0x0A9, 0x036\n#_03BDC6: db $7E, $36, $7E, $82 : db $30, $33 ; 0x0684\u20130x0687: 0x07E, 0x336, 0x37E, 0x382\n#_03BDCC: db $34, $34, $A9, $7A : db $00, $03 ; 0x0688\u20130x068B: 0x034, 0x034, 0x3A9, 0x07A\n#_03BDD2: db $7E, $34, $34, $9E : db $30, $00 ; 0x068C\u20130x068F: 0x07E, 0x334, 0x034, 0x09E\n#_03BDD8: db $34, $34, $34, $34 : db $00, $00 ; 0x0690\u20130x0693: 0x034, 0x034, 0x034, 0x034\n#_03BDDE: db $7E, $34, $A3, $9F : db $30, $00 ; 0x0694\u20130x0697: 0x07E, 0x334, 0x0A3, 0x09F\n#_03BDE4: db $9F, $9F, $9F, $9F : db $00, $00 ; 0x0698\u20130x069B: 0x09F, 0x09F, 0x09F, 0x09F\n#_03BDEA: db $A5, $A5, $A5, $FF : db $11, $11 ; 0x069C\u20130x069F: 0x1A5, 0x1A5, 0x1A5, 0x1FF\n#_03BDF0: db $9F, $A5, $A5, $AC : db $00, $00 ; 0x06A0\u20130x06A3: 0x09F, 0x0A5, 0x0A5, 0x0AC\n#_03BDF6: db $56, $C3, $C6, $C6 : db $10, $00 ; 0x06A4\u20130x06A7: 0x056, 0x1C3, 0x0C6, 0x0C6\n#_03BDFC: db $07, $CD, $01, $D4 : db $00, $00 ; 0x06A8\u20130x06AB: 0x007, 0x0CD, 0x001, 0x0D4\n#_03BE02: db $86, $D1, $75, $87 : db $30, $10 ; 0x06AC\u20130x06AF: 0x086, 0x3D1, 0x075, 0x187\n#_03BE08: db $D6, $87, $88, $87 : db $03, $33 ; 0x06B0\u20130x06B3: 0x3D6, 0x087, 0x388, 0x387\n#_03BE0E: db $EE, $0F, $71, $34 : db $12, $00 ; 0x06B4\u20130x06B7: 0x2EE, 0x10F, 0x071, 0x034\n#_03BE14: db $F1, $F4, $FA, $34 : db $22, $10 ; 0x06B8\u20130x06BB: 0x2F1, 0x2F4, 0x0FA, 0x134\n#_03BE1A: db $36, $39, $34, $8D : db $02, $03 ; 0x06BC\u20130x06BF: 0x236, 0x039, 0x334, 0x08D\n#_03BE20: db $36, $39, $E1, $E1 : db $02, $00 ; 0x06C0\u20130x06C3: 0x236, 0x039, 0x0E1, 0x0E1\n#_03BE26: db $34, $34, $73, $0F : db $00, $32 ; 0x06C4\u20130x06C7: 0x034, 0x034, 0x273, 0x30F\n#_03BE2C: db $73, $DA, $73, $73 : db $30, $33 ; 0x06C8\u20130x06CB: 0x073, 0x3DA, 0x373, 0x373\n#_03BE32: db $73, $73, $73, $8E : db $33, $33 ; 0x06CC\u20130x06CF: 0x373, 0x373, 0x373, 0x38E\n#_03BE38: db $E1, $83, $73, $34 : db $03, $30 ; 0x06D0\u20130x06D3: 0x3E1, 0x083, 0x073, 0x334\n#_03BE3E: db $DA, $8F, $DA, $7E : db $03, $03 ; 0x06D4\u20130x06D7: 0x3DA, 0x08F, 0x3DA, 0x07E\n#_03BE44: db $F8, $90, $DA, $73 : db $03, $03 ; 0x06D8\u20130x06DB: 0x3F8, 0x090, 0x3DA, 0x073\n#_03BE4A: db $39, $73, $7E, $73 : db $23, $33 ; 0x06DC\u20130x06DF: 0x339, 0x273, 0x37E, 0x373\n#_03BE50: db $DA, $7E, $8E, $90 : db $03, $33 ; 0x06E0\u20130x06E3: 0x3DA, 0x07E, 0x38E, 0x390\n#_03BE56: db $8E, $90, $8E, $34 : db $33, $30 ; 0x06E4\u20130x06E7: 0x38E, 0x390, 0x08E, 0x334\n#_03BE5C: db $90, $7E, $82, $8E : db $33, $33 ; 0x06E8\u20130x06EB: 0x390, 0x37E, 0x382, 0x38E\n#_03BE62: db $8E, $DA, $0D, $8C : db $30, $13 ; 0x06EC\u20130x06EF: 0x08E, 0x3DA, 0x30D, 0x18C\n#_03BE68: db $90, $34, $7A, $36 : db $30, $30 ; 0x06F0\u20130x06F3: 0x090, 0x334, 0x07A, 0x336\n#_03BE6E: db $36, $8C, $8E, $8E : db $03, $33 ; 0x06F4\u20130x06F7: 0x336, 0x08C, 0x38E, 0x38E\n#_03BE74: db $90, $9E, $A1, $90 : db $30, $03 ; 0x06F8\u20130x06FB: 0x090, 0x39E, 0x3A1, 0x090\n#_03BE7A: db $90, $34, $71, $7A : db $30, $03 ; 0x06FC\u20130x06FF: 0x090, 0x334, 0x371, 0x07A\n#_03BE80: db $7B, $91, $90, $7E : db $33, $33 ; 0x0700\u20130x0703: 0x37B, 0x391, 0x390, 0x37E\n#_03BE86: db $A5, $A5, $A5, $FF : db $11, $11 ; 0x0704\u20130x0707: 0x1A5, 0x1A5, 0x1A5, 0x1FF\n#_03BE8C: db $9F, $9F, $AD, $34 : db $00, $00 ; 0x0708\u20130x070B: 0x09F, 0x09F, 0x0AD, 0x034\n#_03BE92: db $34, $34, $31, $13 : db $00, $13 ; 0x070C\u20130x070F: 0x034, 0x034, 0x331, 0x113\n#_03BE98: db $13, $2D, $7E, $CF : db $31, $10 ; 0x0710\u20130x0713: 0x113, 0x32D, 0x07E, 0x1CF\n#_03BE9E: db $CA, $CC, $CF, $C5 : db $22, $02 ; 0x0714\u20130x0717: 0x2CA, 0x2CC, 0x2CF, 0x0C5\n#_03BEA4: db $D4, $34, $DC, $78 : db $20, $01 ; 0x0718\u20130x071B: 0x0D4, 0x234, 0x1DC, 0x078\n#_03BEAA: db $CD, $CD, $D4, $53 : db $22, $21 ; 0x071C\u20130x071F: 0x2CD, 0x2CD, 0x1D4, 0x253\n#_03BEB0: db $C8, $27, $D0, $CD : db $01, $22 ; 0x0720\u20130x0723: 0x1C8, 0x027, 0x2D0, 0x2CD\n#_03BEB6: db $CD, $CD, $CD, $D4 : db $22, $22 ; 0x0724\u20130x0727: 0x2CD, 0x2CD, 0x2CD, 0x2D4\n#_03BEBC: db $D1, $DC, $39, $ED : db $22, $11 ; 0x0728\u20130x072B: 0x2D1, 0x2DC, 0x139, 0x1ED\n#_03BEC2: db $27, $85, $04, $35 : db $31, $32 ; 0x072C\u20130x072F: 0x127, 0x385, 0x204, 0x335\n#_03BEC8: db $35, $7D, $83, $EE : db $03, $31 ; 0x0730\u20130x0733: 0x335, 0x07D, 0x183, 0x3EE\n#_03BECE: db $DC, $97, $D1, $04 : db $23, $23 ; 0x0734\u20130x0737: 0x3DC, 0x297, 0x3D1, 0x204\n#_03BED4: db $71, $84, $D6, $E4 : db $03, $22 ; 0x0738\u20130x073B: 0x371, 0x084, 0x2D6, 0x2E4\n#_03BEDA: db $2D, $34, $39, $7E : db $10, $13 ; 0x073C\u20130x073F: 0x02D, 0x134, 0x339, 0x17E\n#_03BEE0: db $F2, $F8, $CD, $CD : db $12, $22 ; 0x0740\u20130x0743: 0x2F2, 0x1F8, 0x2CD, 0x2CD\n#_03BEE6: db $D8, $C9, $61, $79 : db $20, $11 ; 0x0744\u20130x0747: 0x0D8, 0x2C9, 0x161, 0x179\n#_03BEEC: db $27, $CD, $DC, $D5 : db $32, $22 ; 0x0748\u20130x074B: 0x227, 0x3CD, 0x2DC, 0x2D5\n#_03BEF2: db $24, $FF, $26, $36 : db $11, $12 ; 0x074C\u20130x074F: 0x124, 0x1FF, 0x226, 0x136\n#_03BEF8: db $F7, $CD, $CE, $37 : db $22, $22 ; 0x0750\u20130x0753: 0x2F7, 0x2CD, 0x2CE, 0x237\n#_03BEFE: db $9B, $AE, $A9, $AE : db $00, $00 ; 0x0754\u20130x0757: 0x09B, 0x0AE, 0x0A9, 0x0AE\n#_03BF04: db $36, $F7, $CD, $CD : db $22, $22 ; 0x0758\u20130x075B: 0x236, 0x2F7, 0x2CD, 0x2CD\n#_03BF0A: db $CE, $9F, $89, $A9 : db $23, $00 ; 0x075C\u20130x075F: 0x3CE, 0x29F, 0x089, 0x0A9\n#_03BF10: db $89, $31, $CD, $CE : db $01, $22 ; 0x0760\u20130x0763: 0x189, 0x031, 0x2CD, 0x2CE\n#_03BF16: db $24, $34, $D5, $41 : db $10, $11 ; 0x0764\u20130x0767: 0x024, 0x134, 0x1D5, 0x141\n#_03BF1C: db $9A, $9C, $A9, $9A : db $00, $00 ; 0x0768\u20130x076B: 0x09A, 0x09C, 0x0A9, 0x09A\n#_03BF22: db $7E, $31, $FF, $63 : db $31, $21 ; 0x076C\u20130x076F: 0x17E, 0x331, 0x1FF, 0x263\n#_03BF28: db $04, $32, $34, $41 : db $12, $01 ; 0x0770\u20130x0773: 0x204, 0x132, 0x134, 0x041\n#_03BF2E: db $34, $2D, $83, $B7 : db $01, $12 ; 0x0774\u20130x0777: 0x134, 0x02D, 0x283, 0x1B7\n#_03BF34: db $CD, $C6, $CD, $D1 : db $20, $20 ; 0x0778\u20130x077B: 0x0CD, 0x2C6, 0x0CD, 0x2D1\n#_03BF3A: db $13, $C9, $B7, $DC : db $30, $20 ; 0x077C\u20130x077F: 0x013, 0x3C9, 0x0B7, 0x2DC\n#_03BF40: db $DC, $1D, $B7, $C9 : db $23, $20 ; 0x0780\u20130x0783: 0x3DC, 0x21D, 0x0B7, 0x2C9\n#_03BF46: db $B7, $56, $CD, $1D : db $21, $23 ; 0x0784\u20130x0787: 0x1B7, 0x256, 0x3CD, 0x21D\n#_03BF4C: db $DC, $CD, $25, $25 : db $22, $33 ; 0x0788\u20130x078B: 0x2DC, 0x2CD, 0x325, 0x325\n#_03BF52: db $CD, $27, $27, $27 : db $23, $33 ; 0x078C\u20130x078F: 0x3CD, 0x227, 0x327, 0x327\n#_03BF58: db $CD, $33, $A5, $35 : db $22, $30 ; 0x0790\u20130x0793: 0x2CD, 0x233, 0x0A5, 0x335\n#_03BF5E: db $ED, $C5, $34, $35 : db $12, $00 ; 0x0794\u20130x0797: 0x2ED, 0x1C5, 0x034, 0x035\n#_03BF64: db $71, $F1, $A6, $F7 : db $00, $32 ; 0x0798\u20130x079B: 0x071, 0x0F1, 0x2A6, 0x3F7\n#_03BF6A: db $25, $04, $D4, $D5 : db $33, $11 ; 0x079C\u20130x079F: 0x325, 0x304, 0x1D4, 0x1D5\n#_03BF70: db $A8, $A6, $33, $33 : db $33, $22 ; 0x07A0\u20130x07A3: 0x3A8, 0x3A6, 0x233, 0x233\n#_03BF76: db $35, $71, $34, $86 : db $20, $00 ; 0x07A4\u20130x07A7: 0x035, 0x271, 0x034, 0x086\n#_03BF7C: db $87, $86, $34, $65 : db $00, $03 ; 0x07A8\u20130x07AB: 0x087, 0x086, 0x334, 0x065\n#_03BF82: db $67, $36, $35, $34 : db $30, $30 ; 0x07AC\u20130x07AF: 0x067, 0x336, 0x035, 0x334\n#_03BF88: db $AE, $B0, $6F, $71 : db $33, $33 ; 0x07B0\u20130x07B3: 0x3AE, 0x3B0, 0x36F, 0x371\n#_03BF8E: db $36, $9D, $6E, $CE : db $02, $30 ; 0x07B4\u20130x07B7: 0x236, 0x09D, 0x06E, 0x3CE\n#_03BF94: db $B6, $B8, $9A, $01 : db $33, $01 ; 0x07B8\u20130x07BB: 0x3B6, 0x3B8, 0x19A, 0x001\n#_03BF9A: db $36, $9D, $CE, $BC : db $02, $03 ; 0x07BC\u20130x07BF: 0x236, 0x09D, 0x3CE, 0x0BC\n#_03BFA0: db $BE, $34, $34, $CE : db $30, $00 ; 0x07C0\u20130x07C3: 0x0BE, 0x334, 0x034, 0x0CE\n#_03BFA6: db $35, $1A, $34, $00 : db $02, $01 ; 0x07C4\u20130x07C7: 0x235, 0x01A, 0x134, 0x000\n#_03BFAC: db $C4, $CE, $19, $F1 : db $00, $20 ; 0x07C8\u20130x07CB: 0x0C4, 0x0CE, 0x019, 0x2F1\n#_03BFB2: db $36, $05, $35, $71 : db $01, $20 ; 0x07CC\u20130x07CF: 0x136, 0x005, 0x035, 0x271\n#_03BFB8: db $34, $D5, $B1, $35 : db $21, $22 ; 0x07D0\u20130x07D3: 0x134, 0x2D5, 0x2B1, 0x235\n#_03BFBE: db $CE, $58, $C2, $05 : db $01, $11 ; 0x07D4\u20130x07D7: 0x1CE, 0x058, 0x1C2, 0x105\n#_03BFC4: db $19, $34, $62, $C2 : db $20, $13 ; 0x07D8\u20130x07DB: 0x019, 0x234, 0x362, 0x1C2\n#_03BFCA: db $35, $33, $33, $35 : db $02, $22 ; 0x07DC\u20130x07DF: 0x235, 0x033, 0x233, 0x235\n#_03BFD0: db $E0, $0C, $58, $C2 : db $23, $13 ; 0x07E0\u20130x07E3: 0x3E0, 0x20C, 0x358, 0x1C2\n#_03BFD6: db $34, $C4, $C6, $C6 : db $03, $33 ; 0x07E4\u20130x07E7: 0x334, 0x0C4, 0x3C6, 0x3C6\n#_03BFDC: db $C6, $C6, $C6, $86 : db $33, $30 ; 0x07E8\u20130x07EB: 0x3C6, 0x3C6, 0x0C6, 0x386\n#_03BFE2: db $FF, $7C, $CE, $D0 : db $11, $33 ; 0x07EC\u20130x07EF: 0x1FF, 0x17C, 0x3CE, 0x3D0\n#_03BFE8: db $D0, $C9, $CE, $D6 : db $33, $30 ; 0x07F0\u20130x07F3: 0x3D0, 0x3C9, 0x0CE, 0x3D6\n#_03BFEE: db $4F, $08, $4E, $C9 : db $01, $13 ; 0x07F4\u20130x07F7: 0x14F, 0x008, 0x34E, 0x1C9\n#_03BFF4: db $D4, $C9, $C9, $C9 : db $30, $00 ; 0x07F8\u20130x07FB: 0x0D4, 0x3C9, 0x0C9, 0x0C9\n#_03BFFA: db $4E, $39, $DC, $E3 : db $11, $33 ; 0x07FC\u20130x07FF: 0x14E, 0x139, 0x3DC, 0x3E3\n#_03C000: db $34, $34, $34, $C9 : db $00, $03 ; 0x0800\u20130x0803: 0x034, 0x034, 0x334, 0x0C9\n#_03C006: db $34, $EC, $EE, $EE : db $03, $33 ; 0x0804\u20130x0807: 0x334, 0x0EC, 0x3EE, 0x3EE\n#_03C00C: db $EF, $F0, $F2, $F3 : db $33, $33 ; 0x0808\u20130x080B: 0x3EF, 0x3F0, 0x3F2, 0x3F3\n#_03C012: db $34, $34, $34, $34 : db $00, $00 ; 0x080C\u20130x080F: 0x034, 0x034, 0x034, 0x034\n#_03C018: db $F6, $CE, $34, $E3 : db $33, $00 ; 0x0810\u20130x0813: 0x3F6, 0x3CE, 0x034, 0x0E3\n#_03C01E: db $E3, $F0, $F2, $FD : db $03, $33 ; 0x0814\u20130x0817: 0x3E3, 0x0F0, 0x3F2, 0x3FD\n#_03C024: db $FE, $00, $EA, $D2 : db $34, $33 ; 0x0818\u20130x081B: 0x4FE, 0x300, 0x3EA, 0x3D2\n#_03C02A: db $D2, $D2, $D2, $D2 : db $33, $33 ; 0x081C\u20130x081F: 0x3D2, 0x3D2, 0x3D2, 0x3D2\n#_03C030: db $D2, $D2, $34, $0B : db $33, $04 ; 0x0820\u20130x0823: 0x3D2, 0x3D2, 0x434, 0x00B\n#_03C036: db $0D, $0E, $36, $10 : db $44, $04 ; 0x0824\u20130x0827: 0x40D, 0x40E, 0x436, 0x010\n#_03C03C: db $11, $12, $CE, $D0 : db $44, $33 ; 0x0828\u20130x082B: 0x411, 0x412, 0x3CE, 0x3D0\n#_03C042: db $D1, $34, $34, $15 : db $30, $04 ; 0x082C\u20130x082F: 0x0D1, 0x334, 0x434, 0x015\n#_03C048: db $17, $17, $18, $1A : db $44, $44 ; 0x0830\u20130x0833: 0x417, 0x417, 0x418, 0x41A\n#_03C04E: db $1F, $E1, $F6, $CA : db $40, $33 ; 0x0834\u20130x0837: 0x01F, 0x4E1, 0x3F6, 0x3CA\n#_03C054: db $CA, $CA, $1C, $21 : db $33, $44 ; 0x0838\u20130x083B: 0x3CA, 0x3CA, 0x41C, 0x421\n#_03C05A: db $C6, $C6, $C6, $C6 : db $33, $33 ; 0x083C\u20130x083F: 0x3C6, 0x3C6, 0x3C6, 0x3C6\n#_03C060: db $D2, $1C, $34, $CF : db $34, $33 ; 0x0840\u20130x0843: 0x4D2, 0x31C, 0x334, 0x3CF\n#_03C066: db $F5, $27, $1F, $A9 : db $34, $40 ; 0x0844\u20130x0847: 0x4F5, 0x327, 0x01F, 0x4A9\n#_03C06C: db $35, $1C, $1E, $1D : db $00, $00 ; 0x0848\u20130x084B: 0x035, 0x01C, 0x01E, 0x01D\n#_03C072: db $1C, $A9, $E1, $9C : db $00, $00 ; 0x084C\u20130x084F: 0x01C, 0x0A9, 0x0E1, 0x09C\n#_03C078: db $9B, $9D, $11, $13 : db $00, $00 ; 0x0850\u20130x0853: 0x09B, 0x09D, 0x011, 0x013\n#_03C07E: db $28, $83, $0A, $D0 : db $40, $03 ; 0x0854\u20130x0857: 0x028, 0x483, 0x30A, 0x0D0\n#_03C084: db $D0, $D0, $F5, $2A : db $33, $34 ; 0x0858\u20130x085B: 0x3D0, 0x3D0, 0x4F5, 0x32A\n#_03C08A: db $D4, $2D, $F6, $E1 : db $34, $30 ; 0x085C\u20130x085F: 0x4D4, 0x32D, 0x0F6, 0x3E1\n#_03C090: db $CE, $93, $D7, $DC : db $33, $33 ; 0x0860\u20130x0863: 0x3CE, 0x393, 0x3D7, 0x3DC\n#_03C096: db $30, $0B, $0B, $F6 : db $44, $43 ; 0x0864\u20130x0867: 0x430, 0x40B, 0x30B, 0x4F6\n#_03C09C: db $26, $26, $CE, $56 : db $44, $31 ; 0x0868\u20130x086B: 0x426, 0x426, 0x1CE, 0x356\n#_03C0A2: db $1C, $23, $34, $35 : db $44, $00 ; 0x086C\u20130x086F: 0x41C, 0x423, 0x034, 0x035\n#_03C0A8: db $34, $31, $CD, $F7 : db $01, $22 ; 0x0870\u20130x0873: 0x134, 0x031, 0x2CD, 0x2F7\n#_03C0AE: db $86, $CE, $34, $F7 : db $13, $02 ; 0x0874\u20130x0877: 0x386, 0x1CE, 0x234, 0x0F7\n#_03C0B4: db $D2, $D2, $D2, $D2 : db $33, $33 ; 0x0878\u20130x087B: 0x3D2, 0x3D2, 0x3D2, 0x3D2\n#_03C0BA: db $D2, $D2, $CA, $CC : db $33, $33 ; 0x087C\u20130x087F: 0x3D2, 0x3D2, 0x3CA, 0x3CC\n#_03C0C0: db $CC, $CA, $0A, $34 : db $33, $13 ; 0x0880\u20130x0883: 0x3CC, 0x3CA, 0x30A, 0x134\n#_03C0C6: db $CF, $C9, $C3, $C9 : db $33, $33 ; 0x0884\u20130x0887: 0x3CF, 0x3C9, 0x3C3, 0x3C9\n#_03C0CC: db $C9, $0A, $34, $37 : db $31, $34 ; 0x0888\u20130x088B: 0x1C9, 0x30A, 0x434, 0x337\n#_03C0D2: db $34, $C9, $C9, $34 : db $03, $30 ; 0x088C\u20130x088F: 0x334, 0x0C9, 0x0C9, 0x334\n#_03C0D8: db $51, $3C, $1C, $C9 : db $14, $43 ; 0x0890\u20130x0893: 0x451, 0x13C, 0x31C, 0x4C9\n#_03C0DE: db $C9, $34, $EE, $D1 : db $30, $12 ; 0x0894\u20130x0897: 0x0C9, 0x334, 0x2EE, 0x1D1\n#_03C0E4: db $1C, $34, $C9, $9D : db $40, $32 ; 0x0898\u20130x089B: 0x01C, 0x434, 0x2C9, 0x39D\n#_03C0EA: db $42, $27, $C9, $34 : db $44, $30 ; 0x089C\u20130x089F: 0x442, 0x427, 0x0C9, 0x334\n#_03C0F0: db $C9, $1D, $76, $E7 : db $30, $00 ; 0x08A0\u20130x08A3: 0x0C9, 0x31D, 0x076, 0x0E7\n#_03C0F6: db $25, $E8, $27, $11 : db $00, $10 ; 0x08A4\u20130x08A7: 0x025, 0x0E8, 0x027, 0x111\n#_03C0FC: db $95, $34, $9B, $27 : db $00, $01 ; 0x08A8\u20130x08AB: 0x095, 0x034, 0x19B, 0x027\n#_03C102: db $0D, $83, $82, $34 : db $00, $00 ; 0x08AC\u20130x08AF: 0x00D, 0x083, 0x082, 0x034\n#_03C108: db $B0, $27, $CD, $76 : db $01, $20 ; 0x08B0\u20130x08B3: 0x1B0, 0x027, 0x0CD, 0x276\n#_03C10E: db $F1, $76, $27, $45 : db $00, $14 ; 0x08B4\u20130x08B7: 0x0F1, 0x076, 0x427, 0x145\n#_03C114: db $36, $9B, $27, $34 : db $00, $10 ; 0x08B8\u20130x08BB: 0x036, 0x09B, 0x027, 0x134\n#_03C11A: db $27, $D4, $3A, $34 : db $12, $20 ; 0x08BC\u20130x08BF: 0x227, 0x1D4, 0x03A, 0x234\n#_03C120: db $34, $34, $89, $1D : db $00, $00 ; 0x08C0\u20130x08C3: 0x034, 0x034, 0x089, 0x01D\n#_03C126: db $27, $11, $94, $27 : db $10, $01 ; 0x08C4\u20130x08C7: 0x027, 0x111, 0x194, 0x027\n#_03C12C: db $C5, $FF, $63, $27 : db $22, $13 ; 0x08C8\u20130x08CB: 0x2C5, 0x2FF, 0x363, 0x127\n#_03C132: db $24, $89, $36, $8B : db $10, $00 ; 0x08CC\u20130x08CF: 0x024, 0x189, 0x036, 0x08B\n#_03C138: db $34, $34, $9B, $95 : db $00, $00 ; 0x08D0\u20130x08D3: 0x034, 0x034, 0x09B, 0x095\n#_03C13E: db $34, $24, $34, $27 : db $01, $01 ; 0x08D4\u20130x08D7: 0x134, 0x024, 0x134, 0x027\n#_03C144: db $CE, $46, $0B, $0A : db $24, $00 ; 0x08D8\u20130x08DB: 0x4CE, 0x246, 0x00B, 0x00A\n#_03C14A: db $47, $4A, $4B, $CD : db $44, $42 ; 0x08DC\u20130x08DF: 0x447, 0x44A, 0x24B, 0x4CD\n#_03C150: db $E4, $4E, $50, $51 : db $24, $44 ; 0x08E0\u20130x08E3: 0x4E4, 0x24E, 0x450, 0x451\n#_03C156: db $52, $4F, $53, $54 : db $44, $44 ; 0x08E4\u20130x08E7: 0x452, 0x44F, 0x453, 0x454\n#_03C15C: db $27, $4E, $5B, $5C : db $34, $44 ; 0x08E8\u20130x08EB: 0x427, 0x34E, 0x45B, 0x45C\n#_03C162: db $5D, $5F, $5C, $61 : db $44, $44 ; 0x08EC\u20130x08EF: 0x45D, 0x45F, 0x45C, 0x461\n#_03C168: db $5A, $5C, $63, $6D : db $44, $44 ; 0x08F0\u20130x08F3: 0x45A, 0x45C, 0x463, 0x46D\n#_03C16E: db $B0, $4E, $6F, $70 : db $04, $44 ; 0x08F4\u20130x08F7: 0x4B0, 0x04E, 0x46F, 0x470\n#_03C174: db $72, $74, $76, $57 : db $44, $44 ; 0x08F8\u20130x08FB: 0x472, 0x474, 0x476, 0x457\n#_03C17A: db $58, $F2, $4E, $54 : db $40, $44 ; 0x08FC\u20130x08FF: 0x058, 0x4F2, 0x44E, 0x454\n#_03C180: db $7F, $65, $67, $4E : db $44, $44 ; 0x0900\u20130x0903: 0x47F, 0x465, 0x467, 0x44E\n#_03C186: db $85, $87, $88, $8A : db $44, $44 ; 0x0904\u20130x0907: 0x485, 0x487, 0x488, 0x48A\n#_03C18C: db $8B, $86, $8D, $78 : db $44, $44 ; 0x0908\u20130x090B: 0x48B, 0x486, 0x48D, 0x478\n#_03C192: db $6E, $8F, $96, $98 : db $44, $44 ; 0x090C\u20130x090F: 0x46E, 0x48F, 0x496, 0x498\n#_03C198: db $62, $70, $99, $D6 : db $44, $42 ; 0x0910\u20130x0913: 0x462, 0x470, 0x299, 0x4D6\n#_03C19E: db $F2, $6E, $F0, $4E : db $04, $04 ; 0x0914\u20130x0917: 0x4F2, 0x06E, 0x4F0, 0x04E\n#_03C1A4: db $6F, $70, $51, $52 : db $44, $44 ; 0x0918\u20130x091B: 0x46F, 0x470, 0x451, 0x452\n#_03C1AA: db $CD, $2D, $34, $73 : db $21, $04 ; 0x091C\u20130x091F: 0x1CD, 0x22D, 0x434, 0x073\n#_03C1B0: db $76, $58, $A5, $1C : db $44, $31 ; 0x0920\u20130x0923: 0x476, 0x458, 0x1A5, 0x31C\n#_03C1B6: db $7E, $9A, $7F, $54 : db $34, $44 ; 0x0924\u20130x0927: 0x47E, 0x39A, 0x47F, 0x454\n#_03C1BC: db $65, $67, $34, $A8 : db $44, $04 ; 0x0928\u20130x092B: 0x465, 0x467, 0x434, 0x0A8\n#_03C1C2: db $AA, $7E, $B1, $AD : db $43, $44 ; 0x092C\u20130x092F: 0x3AA, 0x47E, 0x4B1, 0x4AD\n#_03C1C8: db $B2, $B3, $6E, $8F : db $44, $44 ; 0x0930\u20130x0933: 0x4B2, 0x4B3, 0x46E, 0x48F\n#_03C1CE: db $B6, $34, $B1, $DC : db $40, $42 ; 0x0934\u20130x0937: 0x0B6, 0x434, 0x2B1, 0x4DC\n#_03C1D4: db $F2, $4E, $9D, $34 : db $04, $40 ; 0x0938\u20130x093B: 0x4F2, 0x04E, 0x09D, 0x434\n#_03C1DA: db $34, $34, $CD, $F2 : db $00, $20 ; 0x093C\u20130x093F: 0x034, 0x034, 0x0CD, 0x2F2\n#_03C1E0: db $6F, $70, $9D, $BE : db $44, $44 ; 0x0940\u20130x0943: 0x46F, 0x470, 0x49D, 0x4BE\n#_03C1E6: db $34, $6E, $C1, $6E : db $04, $44 ; 0x0944\u20130x0947: 0x434, 0x06E, 0x4C1, 0x46E\n#_03C1EC: db $C4, $34, $C7, $51 : db $40, $44 ; 0x0948\u20130x094B: 0x0C4, 0x434, 0x4C7, 0x451\n#_03C1F2: db $C8, $31, $CD, $CD : db $41, $22 ; 0x094C\u20130x094F: 0x1C8, 0x431, 0x2CD, 0x2CD\n#_03C1F8: db $CD, $CD, $CD, $CB : db $22, $24 ; 0x0950\u20130x0953: 0x2CD, 0x2CD, 0x4CD, 0x2CB\n#_03C1FE: db $C2, $5C, $CC, $CE : db $44, $44 ; 0x0954\u20130x0957: 0x4C2, 0x45C, 0x4CC, 0x4CE\n#_03C204: db $9A, $F8, $CD, $D0 : db $32, $24 ; 0x0958\u20130x095B: 0x29A, 0x3F8, 0x4CD, 0x2D0\n#_03C20A: db $75, $77, $C1, $8F : db $44, $44 ; 0x095C\u20130x095F: 0x475, 0x477, 0x4C1, 0x48F\n#_03C210: db $34, $AD, $69, $7E : db $33, $44 ; 0x0960\u20130x0963: 0x334, 0x3AD, 0x469, 0x47E\n#_03C216: db $80, $D2, $9D, $70 : db $44, $24 ; 0x0964\u20130x0967: 0x480, 0x4D2, 0x49D, 0x270\n#_03C21C: db $87, $88, $9F, $F0 : db $44, $40 ; 0x0968\u20130x096B: 0x487, 0x488, 0x09F, 0x4F0\n#_03C222: db $0E, $34, $9D, $70 : db $10, $24 ; 0x096C\u20130x096F: 0x00E, 0x134, 0x49D, 0x270\n#_03C228: db $70, $79, $62, $C2 : db $44, $44 ; 0x0970\u20130x0973: 0x470, 0x479, 0x462, 0x4C2\n#_03C22E: db $F0, $DB, $DC, $9D : db $04, $42 ; 0x0974\u20130x0977: 0x4F0, 0x0DB, 0x2DC, 0x49D\n#_03C234: db $51, $6E, $8F, $E1 : db $44, $44 ; 0x0978\u20130x097B: 0x451, 0x46E, 0x48F, 0x4E1\n#_03C23A: db $4E, $36, $34, $9D : db $40, $02 ; 0x097C\u20130x097F: 0x04E, 0x436, 0x234, 0x09D\n#_03C240: db $D6, $E5, $75, $75 : db $24, $44 ; 0x0980\u20130x0983: 0x4D6, 0x2E5, 0x475, 0x475\n#_03C246: db $77, $F0, $E8, $E2 : db $40, $44 ; 0x0984\u20130x0987: 0x077, 0x4F0, 0x4E8, 0x4E2\n#_03C24C: db $AD, $E7, $51, $CD : db $31, $12 ; 0x0988\u20130x098B: 0x1AD, 0x3E7, 0x251, 0x1CD\n#_03C252: db $69, $7E, $80, $7E : db $44, $44 ; 0x098C\u20130x098F: 0x469, 0x47E, 0x480, 0x47E\n#_03C258: db $C5, $7E, $4E, $EE : db $43, $41 ; 0x0990\u20130x0993: 0x3C5, 0x47E, 0x14E, 0x4EE\n#_03C25E: db $ED, $EF, $F1, $9D : db $44, $42 ; 0x0994\u20130x0997: 0x4ED, 0x4EF, 0x2F1, 0x49D\n#_03C264: db $CD, $F3, $EF, $F5 : db $24, $44 ; 0x0998\u20130x099B: 0x4CD, 0x2F3, 0x4EF, 0x4F5\n#_03C26A: db $E2, $AD, $B4, $6F : db $43, $44 ; 0x099C\u20130x099F: 0x3E2, 0x4AD, 0x4B4, 0x46F\n#_03C270: db $B5, $01, $F7, $34 : db $44, $40 ; 0x09A0\u20130x09A3: 0x4B5, 0x401, 0x0F7, 0x434\n#_03C276: db $70, $CD, $F1, $F8 : db $42, $44 ; 0x09A4\u20130x09A7: 0x270, 0x4CD, 0x4F1, 0x4F8\n#_03C27C: db $AC, $6E, $70, $8F : db $44, $44 ; 0x09A8\u20130x09AB: 0x4AC, 0x46E, 0x470, 0x48F\n#_03C282: db $9D, $FD, $FF, $01 : db $24, $45 ; 0x09AC\u20130x09AF: 0x49D, 0x2FD, 0x5FF, 0x401\n#_03C288: db $8E, $C0, $02, $FF : db $44, $54 ; 0x09B0\u20130x09B3: 0x48E, 0x4C0, 0x402, 0x5FF\n#_03C28E: db $04, $6B, $9B, $C5 : db $54, $44 ; 0x09B4\u20130x09B7: 0x404, 0x56B, 0x49B, 0x4C5\n#_03C294: db $13, $34, $34, $A3 : db $20, $00 ; 0x09B8\u20130x09BB: 0x013, 0x234, 0x034, 0x0A3\n#_03C29A: db $34, $34, $31, $34 : db $00, $10 ; 0x09BC\u20130x09BF: 0x034, 0x034, 0x031, 0x134\n#_03C2A0: db $FB, $79, $4B, $34 : db $11, $10 ; 0x09C0\u20130x09C3: 0x1FB, 0x179, 0x04B, 0x134\n#_03C2A6: db $0F, $CE, $79, $CD : db $20, $12 ; 0x09C4\u20130x09C7: 0x00F, 0x2CE, 0x279, 0x1CD\n#_03C2AC: db $AF, $13, $79, $9A : db $02, $10 ; 0x09C8\u20130x09CB: 0x2AF, 0x013, 0x079, 0x19A\n#_03C2B2: db $CD, $CD, $2D, $1C : db $22, $10 ; 0x09CC\u20130x09CF: 0x2CD, 0x2CD, 0x02D, 0x11C\n#_03C2B8: db $CE, $C6, $FF, $31 : db $00, $11 ; 0x09D0\u20130x09D3: 0x0CE, 0x0C6, 0x1FF, 0x131\n#_03C2BE: db $07, $0F, $2D, $9B : db $53, $10 ; 0x09D4\u20130x09D7: 0x307, 0x50F, 0x02D, 0x19B\n#_03C2C4: db $95, $DB, $CA, $37 : db $00, $02 ; 0x09D8\u20130x09DB: 0x095, 0x0DB, 0x2CA, 0x037\n#_03C2CA: db $C4, $C6, $FF, $11 : db $10, $15 ; 0x09DC\u20130x09DF: 0x0C4, 0x1C6, 0x5FF, 0x111\n#_03C2D0: db $11, $7C, $34, $CE : db $51, $02 ; 0x09E0\u20130x09E3: 0x111, 0x57C, 0x234, 0x0CE\n#_03C2D6: db $C6, $AC, $14, $14 : db $00, $55 ; 0x09E4\u20130x09E7: 0x0C6, 0x0AC, 0x514, 0x514\n#_03C2DC: db $15, $14, $C4, $7C : db $55, $11 ; 0x09E8\u20130x09EB: 0x515, 0x514, 0x1C4, 0x17C\n#_03C2E2: db $AC, $31, $1F, $1F : db $01, $55 ; 0x09EC\u20130x09EF: 0x1AC, 0x031, 0x51F, 0x51F\n#_03C2E8: db $9F, $34, $E4, $CE : db $00, $20 ; 0x09F0\u20130x09F3: 0x09F, 0x034, 0x0E4, 0x2CE\n#_03C2EE: db $71, $E7, $53, $D4 : db $01, $12 ; 0x09F4\u20130x09F7: 0x171, 0x0E7, 0x253, 0x1D4\n#_03C2F4: db $3F, $80, $6C, $EB : db $21, $11 ; 0x09F8\u20130x09FB: 0x13F, 0x280, 0x16C, 0x1EB\n#_03C2FA: db $00, $08, $D4, $56 : db $15, $21 ; 0x09FC\u20130x09FF: 0x500, 0x108, 0x1D4, 0x256\n#_03C300: db $94, $56, $24, $F9 : db $31, $52 ; 0x0A00\u20130x0A03: 0x194, 0x356, 0x224, 0x5F9\n#_03C306: db $A0, $34, $17, $90 : db $30, $32 ; 0x0A04\u20130x0A07: 0x0A0, 0x334, 0x217, 0x390\n#_03C30C: db $33, $33, $90, $FE : db $22, $22 ; 0x0A08\u20130x0A0B: 0x233, 0x233, 0x290, 0x2FE\n#_03C312: db $FD, $9F, $9F, $26 : db $20, $05 ; 0x0A0C\u20130x0A0F: 0x0FD, 0x29F, 0x59F, 0x026\n#_03C318: db $C9, $29, $E6, $ED : db $03, $22 ; 0x0A10\u20130x0A13: 0x3C9, 0x029, 0x2E6, 0x2ED\n#_03C31E: db $E6, $E6, $29, $C9 : db $22, $50 ; 0x0A14\u20130x0A17: 0x2E6, 0x2E6, 0x029, 0x5C9\n#_03C324: db $E6, $2B, $2C, $F4 : db $25, $52 ; 0x0A18\u20130x0A1B: 0x5E6, 0x22B, 0x22C, 0x5F4\n#_03C32A: db $2E, $2C, $2F, $2F : db $55, $55 ; 0x0A1C\u20130x0A1F: 0x52E, 0x52C, 0x52F, 0x52F\n#_03C330: db $31, $32, $28, $87 : db $55, $53 ; 0x0A20\u20130x0A23: 0x531, 0x532, 0x328, 0x587\n#_03C336: db $87, $87, $33, $33 : db $33, $55 ; 0x0A24\u20130x0A27: 0x387, 0x387, 0x533, 0x533\n#_03C33C: db $87, $32, $37, $35 : db $35, $55 ; 0x0A28\u20130x0A2B: 0x587, 0x332, 0x537, 0x535\n#_03C342: db $3A, $3A, $E6, $3A : db $55, $25 ; 0x0A2C\u20130x0A2F: 0x53A, 0x53A, 0x5E6, 0x23A\n#_03C348: db $3B, $39, $37, $2A : db $55, $55 ; 0x0A30\u20130x0A33: 0x53B, 0x539, 0x537, 0x52A\n#_03C34E: db $32, $2F, $2D, $3E : db $55, $55 ; 0x0A34\u20130x0A37: 0x532, 0x52F, 0x52D, 0x53E\n#_03C354: db $C9, $41, $2A, $87 : db $05, $53 ; 0x0A38\u20130x0A3B: 0x5C9, 0x041, 0x32A, 0x587\n#_03C35A: db $87, $87, $43, $43 : db $33, $55 ; 0x0A3C\u20130x0A3F: 0x387, 0x387, 0x543, 0x543\n#_03C360: db $EC, $35, $48, $4A : db $25, $55 ; 0x0A40\u20130x0A43: 0x5EC, 0x235, 0x548, 0x54A\n#_03C366: db $49, $3A, $4A, $39 : db $55, $55 ; 0x0A44\u20130x0A47: 0x549, 0x53A, 0x54A, 0x539\n#_03C36C: db $37, $4D, $4F, $4F : db $55, $55 ; 0x0A48\u20130x0A4B: 0x537, 0x54D, 0x54F, 0x54F\n#_03C372: db $51, $37, $52, $5A : db $55, $55 ; 0x0A4C\u20130x0A4F: 0x551, 0x537, 0x552, 0x55A\n#_03C378: db $5B, $5C, $5D, $5E : db $55, $55 ; 0x0A50\u20130x0A53: 0x55B, 0x55C, 0x55D, 0x55E\n#_03C37E: db $E5, $32, $37, $63 : db $25, $55 ; 0x0A54\u20130x0A57: 0x5E5, 0x232, 0x537, 0x563\n#_03C384: db $60, $66, $5D, $56 : db $55, $55 ; 0x0A58\u20130x0A5B: 0x560, 0x566, 0x55D, 0x556\n#_03C38A: db $E5, $28, $6C, $6D : db $25, $55 ; 0x0A5C\u20130x0A5F: 0x5E5, 0x228, 0x56C, 0x56D\n#_03C390: db $6E, $62, $5D, $5E : db $55, $55 ; 0x0A60\u20130x0A63: 0x56E, 0x562, 0x55D, 0x55E\n#_03C396: db $32, $6F, $58, $37 : db $55, $55 ; 0x0A64\u20130x0A67: 0x532, 0x56F, 0x558, 0x537\n#_03C39C: db $70, $54, $EC, $E6 : db $55, $22 ; 0x0A68\u20130x0A6B: 0x570, 0x554, 0x2EC, 0x2E6\n#_03C3A2: db $39, $2A, $EC, $6F : db $55, $25 ; 0x0A6C\u20130x0A6F: 0x539, 0x52A, 0x5EC, 0x26F\n#_03C3A8: db $74, $E1, $E1, $76 : db $52, $25 ; 0x0A70\u20130x0A73: 0x274, 0x5E1, 0x5E1, 0x276\n#_03C3AE: db $2A, $3A, $E6, $3A : db $55, $25 ; 0x0A74\u20130x0A77: 0x52A, 0x53A, 0x5E6, 0x23A\n#_03C3B4: db $3A, $3A, $3A, $77 : db $55, $55 ; 0x0A78\u20130x0A7B: 0x53A, 0x53A, 0x53A, 0x577\n#_03C3BA: db $58, $58, $29, $3A : db $55, $35 ; 0x0A7C\u20130x0A7F: 0x558, 0x558, 0x529, 0x33A\n#_03C3C0: db $1F, $65, $20, $29 : db $31, $33 ; 0x0A80\u20130x0A83: 0x11F, 0x365, 0x320, 0x329\n#_03C3C6: db $2C, $2D, $29, $3A : db $55, $35 ; 0x0A84\u20130x0A87: 0x52C, 0x52D, 0x529, 0x33A\n#_03C3CC: db $3F, $AB, $40, $36 : db $50, $55 ; 0x0A88\u20130x0A8B: 0x03F, 0x5AB, 0x540, 0x536\n#_03C3D2: db $C9, $34, $7B, $7B : db $05, $55 ; 0x0A8C\u20130x0A8F: 0x5C9, 0x034, 0x57B, 0x57B\n#_03C3D8: db $7B, $7B, $7B, $FE : db $55, $52 ; 0x0A90\u20130x0A93: 0x57B, 0x57B, 0x27B, 0x5FE\n#_03C3DE: db $87, $87, $79, $6D : db $33, $55 ; 0x0A94\u20130x0A97: 0x387, 0x387, 0x579, 0x56D\n#_03C3E4: db $FE, $86, $85, $87 : db $25, $55 ; 0x0A98\u20130x0A9B: 0x5FE, 0x286, 0x585, 0x587\n#_03C3EA: db $7F, $86, $FE, $EC : db $55, $22 ; 0x0A9C\u20130x0A9F: 0x57F, 0x586, 0x2FE, 0x2EC\n#_03C3F0: db $39, $FE, $6D, $92 : db $52, $55 ; 0x0AA0\u20130x0AA3: 0x239, 0x5FE, 0x56D, 0x592\n#_03C3F6: db $94, $93, $95, $FE : db $55, $52 ; 0x0AA4\u20130x0AA7: 0x594, 0x593, 0x295, 0x5FE\n#_03C3FC: db $96, $98, $2A, $FE : db $55, $52 ; 0x0AA8\u20130x0AAB: 0x596, 0x598, 0x22A, 0x5FE\n#_03C402: db $6D, $6D, $9A, $9A : db $55, $55 ; 0x0AAC\u20130x0AAF: 0x56D, 0x56D, 0x59A, 0x59A\n#_03C408: db $95, $9A, $9A, $6D : db $55, $55 ; 0x0AB0\u20130x0AB3: 0x595, 0x59A, 0x59A, 0x56D\n#_03C40E: db $FE, $C4, $57, $74 : db $20, $55 ; 0x0AB4\u20130x0AB7: 0x0FE, 0x2C4, 0x557, 0x574\n#_03C414: db $A2, $75, $6D, $30 : db $55, $55 ; 0x0AB8\u20130x0ABB: 0x5A2, 0x575, 0x56D, 0x530\n#_03C41A: db $6D, $7D, $2A, $6D : db $55, $55 ; 0x0ABC\u20130x0ABF: 0x56D, 0x57D, 0x52A, 0x56D\n#_03C420: db $6D, $6D, $6D, $6D : db $55, $55 ; 0x0AC0\u20130x0AC3: 0x56D, 0x56D, 0x56D, 0x56D\n#_03C426: db $9A, $6D, $FE, $DC : db $55, $20 ; 0x0AC4\u20130x0AC7: 0x59A, 0x56D, 0x0FE, 0x2DC\n#_03C42C: db $6D, $FE, $A9, $2C : db $52, $55 ; 0x0AC8\u20130x0ACB: 0x26D, 0x5FE, 0x5A9, 0x52C\n#_03C432: db $30, $2C, $A8, $7D : db $55, $55 ; 0x0ACC\u20130x0ACF: 0x530, 0x52C, 0x5A8, 0x57D\n#_03C438: db $E6, $EE, $87, $30 : db $22, $35 ; 0x0AD0\u20130x0AD3: 0x2E6, 0x2EE, 0x587, 0x330\n#_03C43E: db $87, $87, $C4, $E6 : db $33, $02 ; 0x0AD4\u20130x0AD7: 0x387, 0x387, 0x2C4, 0x0E6\n#_03C444: db $E6, $84, $C4, $E6 : db $25, $02 ; 0x0AD8\u20130x0ADB: 0x5E6, 0x284, 0x2C4, 0x0E6\n#_03C44A: db $FE, $2C, $A3, $58 : db $25, $55 ; 0x0ADC\u20130x0ADF: 0x5FE, 0x22C, 0x5A3, 0x558\n#_03C450: db $E6, $DC, $DC, $87 : db $20, $03 ; 0x0AE0\u20130x0AE3: 0x0E6, 0x2DC, 0x3DC, 0x087\n#_03C456: db $36, $47, $47, $47 : db $55, $55 ; 0x0AE4\u20130x0AE7: 0x536, 0x547, 0x547, 0x547\n#_03C45C: db $E6, $E6, $E6, $E6 : db $22, $22 ; 0x0AE8\u20130x0AEB: 0x2E6, 0x2E6, 0x2E6, 0x2E6\n#_03C462: db $27, $87, $7D, $EC : db $53, $52 ; 0x0AEC\u20130x0AEF: 0x327, 0x587, 0x27D, 0x5EC\n#_03C468: db $EC, $29, $E6, $FE : db $23, $22 ; 0x0AF0\u20130x0AF3: 0x3EC, 0x229, 0x2E6, 0x2FE\n#_03C46E: db $36, $EC, $7D, $C4 : db $52, $50 ; 0x0AF4\u20130x0AF7: 0x236, 0x5EC, 0x07D, 0x5C4\n#_03C474: db $3A, $DC, $33, $33 : db $50, $55 ; 0x0AF8\u20130x0AFB: 0x03A, 0x5DC, 0x533, 0x533\n#_03C47A: db $87, $42, $36, $E6 : db $35, $52 ; 0x0AFC\u20130x0AFF: 0x587, 0x342, 0x236, 0x5E6\n#_03C480: db $27, $33, $E6, $36 : db $55, $20 ; 0x0B00\u20130x0B03: 0x527, 0x533, 0x0E6, 0x236\n#_03C486: db $F6, $CA, $C6, $CA : db $33, $33 ; 0x0B04\u20130x0B07: 0x3F6, 0x3CA, 0x3C6, 0x3CA\n#_03C48C: db $CD, $CC, $CD, $34 : db $33, $30 ; 0x0B08\u20130x0B0B: 0x3CD, 0x3CC, 0x0CD, 0x334\n#_03C492: db $34, $34, $34, $B2 : db $00, $05 ; 0x0B0C\u20130x0B0F: 0x034, 0x034, 0x534, 0x0B2\n#_03C498: db $B3, $B5, $EB, $F6 : db $55, $03 ; 0x0B10\u20130x0B13: 0x5B3, 0x5B5, 0x3EB, 0x0F6\n#_03C49E: db $34, $34, $34, $F6 : db $00, $03 ; 0x0B14\u20130x0B17: 0x034, 0x034, 0x334, 0x0F6\n#_03C4A4: db $B9, $BA, $BC, $F7 : db $55, $50 ; 0x0B18\u20130x0B1B: 0x5B9, 0x5BA, 0x0BC, 0x5F7\n#_03C4AA: db $F6, $D0, $34, $CF : db $33, $33 ; 0x0B1C\u20130x0B1F: 0x3F6, 0x3D0, 0x334, 0x3CF\n#_03C4B0: db $D1, $FA, $FC, $FE : db $30, $00 ; 0x0B20\u20130x0B23: 0x0D1, 0x3FA, 0x0FC, 0x0FE\n#_03C4B6: db $34, $34, $42, $43 : db $00, $44 ; 0x0B24\u20130x0B27: 0x034, 0x034, 0x442, 0x443\n#_03C4BC: db $CA, $CA, $F3, $D0 : db $33, $33 ; 0x0B28\u20130x0B2B: 0x3CA, 0x3CA, 0x3F3, 0x3D0\n#_03C4C2: db $D0, $D0, $D0, $C8 : db $33, $35 ; 0x0B2C\u20130x0B2F: 0x3D0, 0x3D0, 0x5D0, 0x3C8\n#_03C4C8: db $C8, $F3, $CA, $CA : db $53, $55 ; 0x0B30\u20130x0B33: 0x3C8, 0x5F3, 0x5CA, 0x5CA\n#_03C4CE: db $EA, $EB, $34, $34 : db $00, $00 ; 0x0B34\u20130x0B37: 0x0EA, 0x0EB, 0x034, 0x034\n#_03C4D4: db $36, $36, $C6, $79 : db $00, $01 ; 0x0B38\u20130x0B3B: 0x036, 0x036, 0x1C6, 0x079\n#_03C4DA: db $F5, $F7, $ED, $EE : db $00, $00 ; 0x0B3C\u20130x0B3F: 0x0F5, 0x0F7, 0x0ED, 0x0EE\n#_03C4E0: db $F0, $36, $36, $36 : db $00, $00 ; 0x0B40\u20130x0B43: 0x0F0, 0x036, 0x036, 0x036\n#_03C4E6: db $A5, $AC, $14, $34 : db $00, $40 ; 0x0B44\u20130x0B47: 0x0A5, 0x0AC, 0x014, 0x434\n#_03C4EC: db $34, $35, $FF, $34 : db $44, $00 ; 0x0B48\u20130x0B4B: 0x434, 0x435, 0x0FF, 0x034\n#_03C4F2: db $36, $1A, $34, $0B : db $02, $00 ; 0x0B4C\u20130x0B4F: 0x236, 0x01A, 0x034, 0x00B\n#_03C4F8: db $38, $34, $EA, $C6 : db $30, $30 ; 0x0B50\u20130x0B53: 0x038, 0x334, 0x0EA, 0x3C6\n#_03C4FE: db $AB, $66, $1A, $89 : db $01, $20 ; 0x0B54\u20130x0B57: 0x1AB, 0x066, 0x01A, 0x289\n#_03C504: db $1C, $76, $C8, $C8 : db $00, $55 ; 0x0B58\u20130x0B5B: 0x01C, 0x076, 0x5C8, 0x5C8\n#_03C50A: db $C8, $C8, $85, $1C : db $55, $32 ; 0x0B5C\u20130x0B5F: 0x5C8, 0x5C8, 0x285, 0x31C\n#_03C510: db $40, $CA, $CA, $CA : db $33, $33 ; 0x0B60\u20130x0B63: 0x340, 0x3CA, 0x3CA, 0x3CA\n#_03C516: db $CA, $D2, $CB, $CA : db $33, $33 ; 0x0B64\u20130x0B67: 0x3CA, 0x3D2, 0x3CB, 0x3CA\n#_03C51C: db $CA, $26, $26, $CA : db $34, $43 ; 0x0B68\u20130x0B6B: 0x4CA, 0x326, 0x326, 0x4CA\n#_03C522: db $34, $34, $34, $34 : db $00, $00 ; 0x0B6C\u20130x0B6F: 0x034, 0x034, 0x034, 0x034\n#_03C528: db $34, $AC, $CC, $CE : db $05, $55 ; 0x0B70\u20130x0B73: 0x534, 0x0AC, 0x5CC, 0x5CE\n#_03C52E: db $EC, $C9, $36, $B1 : db $03, $05 ; 0x0B74\u20130x0B77: 0x3EC, 0x0C9, 0x536, 0x0B1\n#_03C534: db $B3, $B7, $F0, $B8 : db $55, $05 ; 0x0B78\u20130x0B7B: 0x5B3, 0x5B7, 0x5F0, 0x0B8\n#_03C53A: db $BA, $BB, $F0, $BD : db $55, $05 ; 0x0B7C\u20130x0B7F: 0x5BA, 0x5BB, 0x5F0, 0x0BD\n#_03C540: db $BF, $BE, $F0, $34 : db $55, $04 ; 0x0B80\u20130x0B83: 0x5BF, 0x5BE, 0x4F0, 0x034\n#_03C546: db $FB, $35, $FF, $9D : db $04, $02 ; 0x0B84\u20130x0B87: 0x4FB, 0x035, 0x2FF, 0x09D\n#_03C54C: db $31, $34, $34, $34 : db $10, $00 ; 0x0B88\u20130x0B8B: 0x031, 0x134, 0x034, 0x034\n#_03C552: db $C9, $C9, $CF, $34 : db $33, $30 ; 0x0B8C\u20130x0B8F: 0x3C9, 0x3C9, 0x0CF, 0x334\n#_03C558: db $34, $C9, $CE, $34 : db $33, $33 ; 0x0B90\u20130x0B93: 0x334, 0x3C9, 0x3CE, 0x334\n#_03C55E: db $34, $C9, $CA, $CA : db $33, $33 ; 0x0B94\u20130x0B97: 0x334, 0x3C9, 0x3CA, 0x3CA\n#_03C564: db $CA, $CA, $CA, $CA : db $33, $33 ; 0x0B98\u20130x0B9B: 0x3CA, 0x3CA, 0x3CA, 0x3CA\n#_03C56A: db $99, $CF, $D0, $D1 : db $33, $33 ; 0x0B9C\u20130x0B9F: 0x399, 0x3CF, 0x3D0, 0x3D1\n#_03C570: db $34, $D0, $D0, $C9 : db $03, $33 ; 0x0BA0\u20130x0BA3: 0x334, 0x0D0, 0x3D0, 0x3C9\n#_03C576: db $34, $C9, $34, $90 : db $03, $02 ; 0x0BA4\u20130x0BA7: 0x334, 0x0C9, 0x234, 0x090\n#_03C57C: db $36, $B2, $D6, $B5 : db $05, $55 ; 0x0BA8\u20130x0BAB: 0x536, 0x0B2, 0x5D6, 0x5B5\n#_03C582: db $36, $C9, $B0, $C9 : db $03, $03 ; 0x0BAC\u20130x0BAF: 0x336, 0x0C9, 0x3B0, 0x0C9\n#_03C588: db $34, $F6, $04, $F1 : db $03, $20 ; 0x0BB0\u20130x0BB3: 0x334, 0x0F6, 0x004, 0x2F1\n#_03C58E: db $C9, $26, $D9, $C9 : db $34, $53 ; 0x0BB4\u20130x0BB7: 0x4C9, 0x326, 0x3D9, 0x5C9\n#_03C594: db $38, $38, $34, $D2 : db $33, $03 ; 0x0BB8\u20130x0BBB: 0x338, 0x338, 0x334, 0x0D2\n#_03C59A: db $EA, $34, $C9, $DB : db $33, $35 ; 0x0BBC\u20130x0BBF: 0x3EA, 0x334, 0x5C9, 0x3DB\n#_03C5A0: db $DD, $DF, $AE, $E8 : db $55, $05 ; 0x0BC0\u20130x0BC3: 0x5DD, 0x5DF, 0x5AE, 0x0E8\n#_03C5A6: db $EA, $EB, $89, $B9 : db $55, $00 ; 0x0BC4\u20130x0BC7: 0x5EA, 0x5EB, 0x089, 0x0B9\n#_03C5AC: db $24, $27, $D6, $27 : db $11, $01 ; 0x0BC8\u20130x0BCB: 0x124, 0x127, 0x1D6, 0x027\n#_03C5B2: db $E9, $EE, $24, $ED : db $05, $10 ; 0x0BCC\u20130x0BCF: 0x5E9, 0x0EE, 0x024, 0x1ED\n#_03C5B8: db $EE, $EE, $F1, $A7 : db $00, $03 ; 0x0BD0\u20130x0BD3: 0x0EE, 0x0EE, 0x3F1, 0x0A7\n#_03C5BE: db $F1, $FB, $F3, $FF : db $50, $50 ; 0x0BD4\u20130x0BD7: 0x0F1, 0x5FB, 0x0F3, 0x5FF\n#_03C5C4: db $C9, $C9, $C9, $76 : db $00, $01 ; 0x0BD8\u20130x0BDB: 0x0C9, 0x0C9, 0x1C9, 0x076\n#_03C5CA: db $A7, $F6, $34, $34 : db $35, $00 ; 0x0BDC\u20130x0BDF: 0x5A7, 0x3F6, 0x034, 0x034\n#_03C5D0: db $C9, $D5, $24, $B0 : db $02, $10 ; 0x0BE0\u20130x0BE3: 0x2C9, 0x0D5, 0x024, 0x1B0\n#_03C5D6: db $DB, $6C, $F8, $98 : db $01, $53 ; 0x0BE4\u20130x0BE7: 0x1DB, 0x06C, 0x3F8, 0x598\n#_03C5DC: db $D6, $04, $35, $DB : db $23, $00 ; 0x0BE8\u20130x0BEB: 0x3D6, 0x204, 0x035, 0x0DB\n#_03C5E2: db $F0, $E3, $E3, $1E : db $30, $01 ; 0x0BEC\u20130x0BEF: 0x0F0, 0x3E3, 0x1E3, 0x01E\n#_03C5E8: db $34, $34, $F0, $A5 : db $33, $11 ; 0x0BF0\u20130x0BF3: 0x334, 0x334, 0x1F0, 0x1A5\n#_03C5EE: db $79, $E6, $9E, $A5 : db $13, $01 ; 0x0BF4\u20130x0BF7: 0x379, 0x1E6, 0x19E, 0x0A5\n#_03C5F4: db $A5, $A4, $A6, $35 : db $10, $00 ; 0x0BF8\u20130x0BFB: 0x0A5, 0x1A4, 0x0A6, 0x035\n#_03C5FA: db $71, $A6, $34, $C6 : db $00, $05 ; 0x0BFC\u20130x0BFF: 0x071, 0x0A6, 0x534, 0x0C6\n#_03C600: db $34, $34, $34, $38 : db $00, $03 ; 0x0C00\u20130x0C03: 0x034, 0x034, 0x334, 0x038\n#_03C606: db $08, $36, $34, $34 : db $10, $00 ; 0x0C04\u20130x0C07: 0x008, 0x136, 0x034, 0x034\n#_03C60C: db $26, $90, $34, $76 : db $12, $00 ; 0x0C08\u20130x0C0B: 0x226, 0x190, 0x034, 0x076\n#_03C612: db $36, $1C, $DA, $DA : db $00, $00 ; 0x0C0C\u20130x0C0F: 0x036, 0x01C, 0x0DA, 0x0DA\n#_03C618: db $DA, $BE, $34, $34 : db $04, $00 ; 0x0C10\u20130x0C13: 0x4DA, 0x0BE, 0x034, 0x034\n#_03C61E: db $6E, $F0, $34, $AD : db $40, $04 ; 0x0C14\u20130x0C17: 0x06E, 0x4F0, 0x434, 0x0AD\n#_03C624: db $B8, $B9, $FE, $BA : db $44, $54 ; 0x0C18\u20130x0C1B: 0x4B8, 0x4B9, 0x4FE, 0x5BA\n#_03C62A: db $FD, $B2, $4E, $9E : db $54, $44 ; 0x0C1C\u20130x0C1F: 0x4FD, 0x5B2, 0x44E, 0x49E\n#_03C630: db $8B, $8C, $8F, $03 : db $44, $46 ; 0x0C20\u20130x0C23: 0x48B, 0x48C, 0x68F, 0x403\n#_03C636: db $04, $78, $5C, $6E : db $64, $44 ; 0x0C24\u20130x0C27: 0x404, 0x678, 0x45C, 0x46E\n#_03C63C: db $8F, $09, $0A, $CD : db $46, $62 ; 0x0C28\u20130x0C2B: 0x68F, 0x409, 0x20A, 0x6CD\n#_03C642: db $84, $0B, $FD, $A7 : db $36, $53 ; 0x0C2C\u20130x0C2F: 0x684, 0x30B, 0x3FD, 0x5A7\n#_03C648: db $E1, $36, $34, $54 : db $00, $04 ; 0x0C30\u20130x0C33: 0x0E1, 0x036, 0x434, 0x054\n#_03C64E: db $54, $0C, $B2, $76 : db $46, $41 ; 0x0C34\u20130x0C37: 0x654, 0x40C, 0x1B2, 0x476\n#_03C654: db $38, $38, $0F, $0F : db $33, $66 ; 0x0C38\u20130x0C3B: 0x338, 0x338, 0x60F, 0x60F\n#_03C65A: db $DC, $D6, $27, $0F : db $22, $36 ; 0x0C3C\u20130x0C3F: 0x2DC, 0x2D6, 0x627, 0x30F\n#_03C660: db $38, $38, $38, $38 : db $33, $33 ; 0x0C40\u20130x0C43: 0x338, 0x338, 0x338, 0x338\n#_03C666: db $7E, $7E, $7E, $7E : db $33, $33 ; 0x0C44\u20130x0C47: 0x37E, 0x37E, 0x37E, 0x37E\n#_03C66C: db $7E, $82, $AD, $1C : db $33, $00 ; 0x0C48\u20130x0C4B: 0x37E, 0x382, 0x0AD, 0x01C\n#_03C672: db $F1, $E2, $9D, $F3 : db $44, $24 ; 0x0C4C\u20130x0C4F: 0x4F1, 0x4E2, 0x49D, 0x2F3\n#_03C678: db $EF, $4E, $9D, $34 : db $44, $40 ; 0x0C50\u20130x0C53: 0x4EF, 0x44E, 0x09D, 0x434\n#_03C67E: db $CD, $15, $4E, $FE : db $26, $45 ; 0x0C54\u20130x0C57: 0x6CD, 0x215, 0x54E, 0x4FE\n#_03C684: db $6F, $BA, $31, $1A : db $44, $16 ; 0x0C58\u20130x0C5B: 0x46F, 0x4BA, 0x631, 0x11A\n#_03C68A: db $8B, $9F, $1E, $9A : db $44, $13 ; 0x0C5C\u20130x0C5F: 0x48B, 0x49F, 0x31E, 0x19A\n#_03C690: db $27, $0A, $6B, $95 : db $36, $44 ; 0x0C60\u20130x0C63: 0x627, 0x30A, 0x46B, 0x495\n#_03C696: db $98, $0B, $1D, $15 : db $41, $16 ; 0x0C64\u20130x0C67: 0x198, 0x40B, 0x61D, 0x115\n#_03C69C: db $73, $57, $C1, $36 : db $44, $40 ; 0x0C68\u20130x0C6B: 0x473, 0x457, 0x0C1, 0x436\n#_03C6A2: db $E2, $75, $34, $9A : db $43, $04 ; 0x0C6C\u20130x0C6F: 0x3E2, 0x475, 0x434, 0x09A\n#_03C6A8: db $54, $C4, $36, $34 : db $44, $00 ; 0x0C70\u20130x0C73: 0x454, 0x4C4, 0x036, 0x034\n#_03C6AE: db $36, $36, $E2, $1E : db $00, $46 ; 0x0C74\u20130x0C77: 0x036, 0x036, 0x6E2, 0x41E\n#_03C6B4: db $4F, $0E, $0B, $4F : db $16, $11 ; 0x0C78\u20130x0C7B: 0x64F, 0x10E, 0x10B, 0x14F\n#_03C6BA: db $53, $10, $DC, $10 : db $16, $26 ; 0x0C7C\u20130x0C7F: 0x653, 0x110, 0x6DC, 0x210\n#_03C6C0: db $27, $27, $38, $38 : db $33, $33 ; 0x0C80\u20130x0C83: 0x327, 0x327, 0x338, 0x338\n#_03C6C6: db $38, $38, $21, $F7 : db $33, $62 ; 0x0C84\u20130x0C87: 0x338, 0x338, 0x221, 0x6F7\n#_03C6CC: db $A5, $A5, $A5, $A5 : db $00, $00 ; 0x0C88\u20130x0C8B: 0x0A5, 0x0A5, 0x0A5, 0x0A5\n#_03C6D2: db $A5, $79, $36, $21 : db $01, $06 ; 0x0C8C\u20130x0C8F: 0x1A5, 0x079, 0x636, 0x021\n#_03C6D8: db $F7, $36, $FF, $A1 : db $20, $10 ; 0x0C90\u20130x0C93: 0x0F7, 0x236, 0x0FF, 0x1A1\n#_03C6DE: db $A4, $3A, $C8, $C9 : db $05, $00 ; 0x0C94\u20130x0C97: 0x5A4, 0x03A, 0x0C8, 0x0C9\n#_03C6E4: db $53, $E6, $E6, $E6 : db $12, $22 ; 0x0C98\u20130x0C9B: 0x253, 0x1E6, 0x2E6, 0x2E6\n#_03C6EA: db $26, $E6, $E6, $A9 : db $52, $25 ; 0x0C9C\u20130x0C9F: 0x226, 0x5E6, 0x5E6, 0x2A9\n#_03C6F0: db $3A, $3A, $29, $E6 : db $55, $32 ; 0x0CA0\u20130x0CA3: 0x53A, 0x53A, 0x229, 0x3E6\n#_03C6F6: db $E6, $3A, $A7, $29 : db $25, $53 ; 0x0CA4\u20130x0CA7: 0x5E6, 0x23A, 0x3A7, 0x529\n#_03C6FC: db $E6, $3B, $29, $E6 : db $25, $32 ; 0x0CA8\u20130x0CAB: 0x5E6, 0x23B, 0x229, 0x3E6\n#_03C702: db $A9, $29, $28, $E6 : db $53, $52 ; 0x0CAC\u20130x0CAF: 0x3A9, 0x529, 0x228, 0x5E6\n#_03C708: db $E6, $E6, $EC, $E6 : db $22, $22 ; 0x0CB0\u20130x0CB3: 0x2E6, 0x2E6, 0x2EC, 0x2E6\n#_03C70E: db $E6, $E6, $E6, $E6 : db $22, $22 ; 0x0CB4\u20130x0CB7: 0x2E6, 0x2E6, 0x2E6, 0x2E6\n#_03C714: db $29, $30, $C9, $C9 : db $35, $00 ; 0x0CB8\u20130x0CBB: 0x529, 0x330, 0x0C9, 0x0C9\n#_03C71A: db $C9, $40, $3A, $E6 : db $05, $52 ; 0x0CBC\u20130x0CBF: 0x5C9, 0x040, 0x23A, 0x5E6\n#_03C720: db $C9, $C9, $29, $30 : db $00, $55 ; 0x0CC0\u20130x0CC3: 0x0C9, 0x0C9, 0x529, 0x530\n#_03C726: db $E6, $3A, $5B, $35 : db $25, $10 ; 0x0CC4\u20130x0CC7: 0x5E6, 0x23A, 0x05B, 0x135\n#_03C72C: db $30, $34, $23, $2A : db $50, $65 ; 0x0CC8\u20130x0CCB: 0x030, 0x534, 0x523, 0x62A\n#_03C732: db $3A, $26, $22, $2C : db $55, $66 ; 0x0CCC\u20130x0CCF: 0x53A, 0x526, 0x622, 0x62C\n#_03C738: db $2E, $2C, $23, $6A : db $66, $61 ; 0x0CD0\u20130x0CD3: 0x62E, 0x62C, 0x123, 0x66A\n#_03C73E: db $5B, $39, $3B, $39 : db $16, $66 ; 0x0CD4\u20130x0CD7: 0x65B, 0x139, 0x63B, 0x639\n#_03C744: db $23, $2A, $3A, $E6 : db $65, $52 ; 0x0CD8\u20130x0CDB: 0x523, 0x62A, 0x23A, 0x5E6\n#_03C74A: db $E6, $EC, $6A, $5B : db $22, $11 ; 0x0CDC\u20130x0CDF: 0x2E6, 0x2EC, 0x16A, 0x15B\n#_03C750: db $3F, $C9, $84, $C9 : db $60, $10 ; 0x0CE0\u20130x0CE3: 0x03F, 0x6C9, 0x084, 0x1C9\n#_03C756: db $FA, $5B, $34, $39 : db $11, $06 ; 0x0CE4\u20130x0CE7: 0x1FA, 0x15B, 0x634, 0x039\n#_03C75C: db $3B, $39, $34, $35 : db $66, $00 ; 0x0CE8\u20130x0CEB: 0x63B, 0x639, 0x034, 0x035\n#_03C762: db $34, $34, $34, $1A : db $00, $22 ; 0x0CEC\u20130x0CEF: 0x034, 0x034, 0x234, 0x21A\n#_03C768: db $D5, $1A, $D4, $35 : db $12, $10 ; 0x0CF0\u20130x0CF3: 0x2D5, 0x11A, 0x0D4, 0x135\n#_03C76E: db $C6, $C6, $AA, $29 : db $00, $03 ; 0x0CF4\u20130x0CF7: 0x0C6, 0x0C6, 0x3AA, 0x029\n#_03C774: db $FE, $E6, $2D, $2C : db $22, $55 ; 0x0CF8\u20130x0CFB: 0x2FE, 0x2E6, 0x52D, 0x52C\n#_03C77A: db $7D, $87, $DC, $87 : db $53, $03 ; 0x0CFC\u20130x0CFF: 0x37D, 0x587, 0x3DC, 0x087\n#_03C780: db $87, $2B, $2F, $E6 : db $35, $52 ; 0x0D00\u20130x0D03: 0x587, 0x32B, 0x22F, 0x5E6\n#_03C786: db $E3, $E3, $32, $3B : db $00, $55 ; 0x0D04\u20130x0D07: 0x0E3, 0x0E3, 0x532, 0x53B\n#_03C78C: db $39, $C4, $2A, $33 : db $50, $55 ; 0x0D08\u20130x0D0B: 0x039, 0x5C4, 0x52A, 0x533\n#_03C792: db $E6, $37, $41, $23 : db $25, $66 ; 0x0D0C\u20130x0D0F: 0x5E6, 0x237, 0x641, 0x623\n#_03C798: db $32, $3A, $26, $42 : db $55, $56 ; 0x0D10\u20130x0D13: 0x532, 0x53A, 0x626, 0x542\n#_03C79E: db $E5, $2E, $6A, $34 : db $25, $10 ; 0x0D14\u20130x0D17: 0x5E5, 0x22E, 0x06A, 0x134\n#_03C7A4: db $34, $23, $27, $E3 : db $06, $50 ; 0x0D18\u20130x0D1B: 0x634, 0x023, 0x027, 0x5E3\n#_03C7AA: db $65, $69, $23, $2A : db $33, $65 ; 0x0D1C\u20130x0D1F: 0x365, 0x369, 0x523, 0x62A\n#_03C7B0: db $6A, $34, $43, $45 : db $10, $66 ; 0x0D20\u20130x0D23: 0x06A, 0x134, 0x643, 0x645\n#_03C7B6: db $44, $46, $6F, $76 : db $66, $33 ; 0x0D24\u20130x0D27: 0x644, 0x646, 0x36F, 0x376\n#_03C7BC: db $23, $34, $4D, $4F : db $60, $66 ; 0x0D28\u20130x0D2B: 0x023, 0x634, 0x64D, 0x64F\n#_03C7C2: db $4E, $50, $9A, $37 : db $66, $05 ; 0x0D2C\u20130x0D2F: 0x64E, 0x650, 0x59A, 0x037\n#_03C7C8: db $34, $34, $6A, $57 : db $00, $36 ; 0x0D30\u20130x0D33: 0x034, 0x034, 0x66A, 0x357\n#_03C7CE: db $86, $5C, $73, $73 : db $01, $11 ; 0x0D34\u20130x0D37: 0x186, 0x05C, 0x173, 0x173\n#_03C7D4: db $5A, $2A, $69, $5D : db $65, $36 ; 0x0D38\u20130x0D3B: 0x55A, 0x62A, 0x669, 0x35D\n#_03C7DA: db $5F, $61, $62, $62 : db $66, $66 ; 0x0D3C\u20130x0D3F: 0x65F, 0x661, 0x662, 0x662\n#_03C7E0: db $EC, $62, $62, $39 : db $26, $65 ; 0x0D40\u20130x0D43: 0x6EC, 0x262, 0x562, 0x639\n#_03C7E6: db $76, $4D, $4F, $51 : db $36, $66 ; 0x0D44\u20130x0D47: 0x676, 0x34D, 0x64F, 0x651\n#_03C7EC: db $3F, $33, $34, $88 : db $65, $50 ; 0x0D48\u20130x0D4B: 0x53F, 0x633, 0x034, 0x588\n#_03C7F2: db $34, $38, $38, $CE : db $05, $50 ; 0x0D4C\u20130x0D4F: 0x534, 0x038, 0x038, 0x5CE\n#_03C7F8: db $D4, $9F, $C4, $AA : db $15, $00 ; 0x0D50\u20130x0D53: 0x5D4, 0x19F, 0x0C4, 0x0AA\n#_03C7FE: db $C6, $FB, $FE, $E6 : db $01, $22 ; 0x0D54\u20130x0D57: 0x1C6, 0x0FB, 0x2FE, 0x2E6\n#_03C804: db $EC, $44, $69, $35 : db $20, $65 ; 0x0D58\u20130x0D5B: 0x0EC, 0x244, 0x569, 0x635\n#_03C80A: db $6A, $89, $69, $34 : db $10, $60 ; 0x0D5C\u20130x0D5F: 0x06A, 0x189, 0x069, 0x634\n#_03C810: db $34, $36, $36, $36 : db $00, $00 ; 0x0D60\u20130x0D63: 0x034, 0x036, 0x036, 0x036\n#_03C816: db $1C, $29, $34, $34 : db $23, $00 ; 0x0D64\u20130x0D67: 0x31C, 0x229, 0x034, 0x034\n#_03C81C: db $36, $36, $9D, $B9 : db $00, $20 ; 0x0D68\u20130x0D6B: 0x036, 0x036, 0x09D, 0x2B9\n#_03C822: db $40, $35, $F2, $34 : db $55, $00 ; 0x0D6C\u20130x0D6F: 0x540, 0x535, 0x0F2, 0x034\n#_03C828: db $0A, $34, $F2, $0F : db $10, $02 ; 0x0D70\u20130x0D73: 0x00A, 0x134, 0x2F2, 0x00F\n#_03C82E: db $34, $E7, $6A, $53 : db $00, $61 ; 0x0D74\u20130x0D77: 0x034, 0x0E7, 0x16A, 0x653\n#_03C834: db $9D, $F2, $F2, $F2 : db $20, $00 ; 0x0D78\u20130x0D7B: 0x09D, 0x2F2, 0x0F2, 0x0F2\n#_03C83A: db $36, $34, $34, $89 : db $00, $00 ; 0x0D7C\u20130x0D7F: 0x036, 0x034, 0x034, 0x089\n#_03C840: db $6A, $34, $34, $34 : db $60, $00 ; 0x0D80\u20130x0D83: 0x06A, 0x634, 0x034, 0x034\n#_03C846: db $9D, $34, $34, $0B : db $20, $01 ; 0x0D84\u20130x0D87: 0x09D, 0x234, 0x134, 0x00B\n#_03C84C: db $0B, $9A, $8E, $F6 : db $10, $05 ; 0x0D88\u20130x0D8B: 0x00B, 0x19A, 0x58E, 0x0F6\n#_03C852: db $F6, $9D, $34, $35 : db $52, $03 ; 0x0D8C\u20130x0D8F: 0x2F6, 0x59D, 0x334, 0x035\n#_03C858: db $37, $F7, $F9, $F9 : db $33, $33 ; 0x0D90\u20130x0D93: 0x337, 0x3F7, 0x3F9, 0x3F9\n#_03C85E: db $F9, $34, $FC, $FE : db $33, $33 ; 0x0D94\u20130x0D97: 0x3F9, 0x334, 0x3FC, 0x3FE\n#_03C864: db $FE, $E7, $53, $36 : db $31, $10 ; 0x0D98\u20130x0D9B: 0x1FE, 0x3E7, 0x053, 0x136\n#_03C86A: db $0A, $0C, $0B, $71 : db $44, $41 ; 0x0D9C\u20130x0D9F: 0x40A, 0x40C, 0x10B, 0x471\n#_03C870: db $70, $34, $34, $14 : db $63, $04 ; 0x0DA0\u20130x0DA3: 0x370, 0x634, 0x434, 0x014\n#_03C876: db $34, $34, $66, $DA : db $03, $10 ; 0x0DA4\u20130x0DA7: 0x334, 0x034, 0x066, 0x1DA\n#_03C87C: db $34, $D5, $AB, $85 : db $01, $03 ; 0x0DA8\u20130x0DAB: 0x134, 0x0D5, 0x3AB, 0x085\n#_03C882: db $A9, $E7, $9E, $A5 : db $00, $01 ; 0x0DAC\u20130x0DAF: 0x0A9, 0x0E7, 0x19E, 0x0A5\n#_03C888: db $34, $89, $1D, $9B : db $00, $00 ; 0x0DB0\u20130x0DB3: 0x034, 0x089, 0x01D, 0x09B\n#_03C88E: db $9D, $9C, $9B, $9B : db $00, $00 ; 0x0DB4\u20130x0DB7: 0x09D, 0x09C, 0x09B, 0x09B\n#_03C894: db $E7, $AD, $2E, $D5 : db $12, $43 ; 0x0DB8\u20130x0DBB: 0x2E7, 0x1AD, 0x32E, 0x4D5\n#_03C89A: db $D7, $02, $71, $05 : db $34, $64 ; 0x0DBC\u20130x0DBF: 0x4D7, 0x302, 0x471, 0x605\n#_03C8A0: db $F0, $76, $7C, $F7 : db $02, $15 ; 0x0DC0\u20130x0DC3: 0x2F0, 0x076, 0x57C, 0x1F7\n#_03C8A6: db $A3, $A2, $34, $FB : db $33, $40 ; 0x0DC4\u20130x0DC7: 0x3A3, 0x3A2, 0x034, 0x4FB\n#_03C8AC: db $35, $FF, $A4, $89 : db $40, $00 ; 0x0DC8\u20130x0DCB: 0x035, 0x4FF, 0x0A4, 0x089\n#_03C8B2: db $D8, $81, $2E, $DF : db $31, $43 ; 0x0DCC\u20130x0DCF: 0x1D8, 0x381, 0x32E, 0x4DF\n#_03C8B8: db $85, $E3, $E3, $F7 : db $10, $05 ; 0x0DD0\u20130x0DD3: 0x085, 0x1E3, 0x5E3, 0x0F7\n#_03C8BE: db $34, $7E, $7E, $7E : db $03, $33 ; 0x0DD4\u20130x0DD7: 0x334, 0x07E, 0x37E, 0x37E\n#_03C8C4: db $89, $36, $9A, $75 : db $00, $06 ; 0x0DD8\u20130x0DDB: 0x089, 0x036, 0x69A, 0x075\n#_03C8CA: db $FA, $EC, $33, $36 : db $30, $30 ; 0x0DDC\u20130x0DDF: 0x0FA, 0x3EC, 0x033, 0x336\n#_03C8D0: db $34, $77, $FF, $F0 : db $06, $30 ; 0x0DE0\u20130x0DE3: 0x634, 0x077, 0x0FF, 0x3F0\n#_03C8D6: db $34, $34, $84, $34 : db $30, $30 ; 0x0DE4\u20130x0DE7: 0x034, 0x334, 0x084, 0x334\n#_03C8DC: db $15, $0F, $0C, $0B : db $42, $44 ; 0x0DE8\u20130x0DEB: 0x215, 0x40F, 0x40C, 0x40B\n#_03C8E2: db $F0, $34, $75, $34 : db $00, $20 ; 0x0DEC\u20130x0DEF: 0x0F0, 0x034, 0x075, 0x234\n#_03C8E8: db $35, $06, $A5, $1C : db $01, $12 ; 0x0DF0\u20130x0DF3: 0x135, 0x006, 0x2A5, 0x11C\n#_03C8EE: db $C6, $C6, $D5, $37 : db $00, $02 ; 0x0DF4\u20130x0DF7: 0x0C6, 0x0C6, 0x2D5, 0x037\n#_03C8F4: db $70, $CE, $6C, $78 : db $10, $16 ; 0x0DF8\u20130x0DFB: 0x070, 0x1CE, 0x66C, 0x178\n#_03C8FA: db $79, $10, $C6, $C6 : db $62, $00 ; 0x0DFC\u20130x0DFF: 0x279, 0x610, 0x0C6, 0x0C6\n#_03C900: db $7C, $7B, $34, $DC : db $66, $00 ; 0x0E00\u20130x0E03: 0x67C, 0x67B, 0x034, 0x0DC\n#_03C906: db $83, $BC, $85, $C6 : db $62, $60 ; 0x0E04\u20130x0E07: 0x283, 0x6BC, 0x085, 0x6C6\n#_03C90C: db $C6, $34, $87, $86 : db $00, $66 ; 0x0E08\u20130x0E0B: 0x0C6, 0x034, 0x687, 0x686\n#_03C912: db $34, $DB, $E3, $24 : db $00, $01 ; 0x0E0C\u20130x0E0F: 0x034, 0x0DB, 0x1E3, 0x024\n#_03C918: db $88, $8B, $8D, $34 : db $66, $60 ; 0x0E10\u20130x0E13: 0x688, 0x68B, 0x08D, 0x634\n#_03C91E: db $17, $A5, $A5, $A5 : db $20, $00 ; 0x0E14\u20130x0E17: 0x017, 0x2A5, 0x0A5, 0x0A5\n#_03C924: db $80, $34, $81, $90 : db $60, $66 ; 0x0E18\u20130x0E1B: 0x080, 0x634, 0x681, 0x690\n#_03C92A: db $92, $94, $4E, $20 : db $66, $15 ; 0x0E1C\u20130x0E1F: 0x692, 0x694, 0x54E, 0x120\n#_03C930: db $9B, $9D, $9F, $20 : db $66, $65 ; 0x0E20\u20130x0E23: 0x69B, 0x69D, 0x59F, 0x620\n#_03C936: db $CD, $DC, $96, $DC : db $22, $62 ; 0x0E24\u20130x0E27: 0x2CD, 0x2DC, 0x296, 0x6DC\n#_03C93C: db $DC, $DC, $A0, $CD : db $22, $62 ; 0x0E28\u20130x0E2B: 0x2DC, 0x2DC, 0x2A0, 0x6CD\n#_03C942: db $C7, $96, $A1, $26 : db $26, $63 ; 0x0E2C\u20130x0E2F: 0x6C7, 0x296, 0x3A1, 0x626\n#_03C948: db $C7, $C7, $CD, $A5 : db $22, $26 ; 0x0E30\u20130x0E33: 0x2C7, 0x2C7, 0x6CD, 0x2A5\n#_03C94E: db $A7, $A8, $90, $F2 : db $66, $21 ; 0x0E34\u20130x0E37: 0x6A7, 0x6A8, 0x190, 0x2F2\n#_03C954: db $9F, $9F, $79, $18 : db $00, $12 ; 0x0E38\u20130x0E3B: 0x09F, 0x09F, 0x279, 0x118\n#_03C95A: db $C4, $C6, $AC, $26 : db $10, $01 ; 0x0E3C\u20130x0E3F: 0x0C4, 0x1C6, 0x1AC, 0x026\n#_03C960: db $65, $65, $65, $65 : db $11, $11 ; 0x0E40\u20130x0E43: 0x165, 0x165, 0x165, 0x165\n#_03C966: db $58, $79, $AA, $AB : db $11, $60 ; 0x0E44\u20130x0E47: 0x158, 0x179, 0x0AA, 0x6AB\n#_03C96C: db $C6, $57, $AE, $AE : db $02, $66 ; 0x0E48\u20130x0E4B: 0x2C6, 0x057, 0x6AE, 0x6AE\n#_03C972: db $AE, $7E, $D1, $53 : db $61, $01 ; 0x0E4C\u20130x0E4F: 0x1AE, 0x67E, 0x1D1, 0x053\n#_03C978: db $AE, $AE, $7E, $B0 : db $66, $16 ; 0x0E50\u20130x0E53: 0x6AE, 0x6AE, 0x67E, 0x1B0\n#_03C97E: db $B2, $DC, $D1, $C9 : db $60, $00 ; 0x0E54\u20130x0E57: 0x0B2, 0x6DC, 0x0D1, 0x0C9\n#_03C984: db $53, $E3, $E3, $CC : db $10, $00 ; 0x0E58\u20130x0E5B: 0x053, 0x1E3, 0x0E3, 0x0CC\n#_03C98A: db $CC, $53, $53, $AE : db $01, $16 ; 0x0E5C\u20130x0E5F: 0x1CC, 0x053, 0x653, 0x1AE\n#_03C990: db $AE, $AE, $34, $0F : db $66, $02 ; 0x0E60\u20130x0E63: 0x6AE, 0x6AE, 0x234, 0x00F\n#_03C996: db $34, $AE, $EE, $AE : db $06, $16 ; 0x0E64\u20130x0E67: 0x634, 0x0AE, 0x6EE, 0x1AE\n#_03C99C: db $B8, $BA, $1F, $7C : db $66, $21 ; 0x0E68\u20130x0E6B: 0x6B8, 0x6BA, 0x11F, 0x27C\n#_03C9A2: db $5C, $B8, $BA, $67 : db $16, $61 ; 0x0E6C\u20130x0E6F: 0x65C, 0x1B8, 0x1BA, 0x667\n#_03C9A8: db $A9, $C3, $C5, $20 : db $06, $62 ; 0x0E70\u20130x0E73: 0x6A9, 0x0C3, 0x2C5, 0x620\n#_03C9AE: db $CE, $C7, $C9, $1C : db $06, $62 ; 0x0E74\u20130x0E77: 0x6CE, 0x0C7, 0x2C9, 0x61C\n#_03C9B4: db $A3, $C5, $D5, $D7 : db $06, $66 ; 0x0E78\u20130x0E7B: 0x6A3, 0x0C5, 0x6D5, 0x6D7\n#_03C9BA: db $7F, $AE, $E9, $D8 : db $16, $16 ; 0x0E7C\u20130x0E7F: 0x67F, 0x1AE, 0x6E9, 0x1D8\n#_03C9C0: db $DA, $83, $AE, $D5 : db $61, $66 ; 0x0E80\u20130x0E83: 0x1DA, 0x683, 0x6AE, 0x6D5\n#_03C9C6: db $DD, $7F, $AE, $C7 : db $61, $60 ; 0x0E84\u20130x0E87: 0x1DD, 0x67F, 0x0AE, 0x6C7\n#_03C9CC: db $E2, $AE, $DF, $CA : db $66, $60 ; 0x0E88\u20130x0E8B: 0x6E2, 0x6AE, 0x0DF, 0x6CA\n#_03C9D2: db $C9, $E7, $AE, $E9 : db $06, $66 ; 0x0E8C\u20130x0E8F: 0x6C9, 0x0E7, 0x6AE, 0x6E9\n#_03C9D8: db $E7, $87, $DF, $E9 : db $63, $66 ; 0x0E90\u20130x0E93: 0x3E7, 0x687, 0x6DF, 0x6E9\n#_03C9DE: db $EA, $87, $E7, $AE : db $63, $66 ; 0x0E94\u20130x0E97: 0x3EA, 0x687, 0x6E7, 0x6AE\n#_03C9E4: db $AE, $F1, $F2, $F3 : db $66, $66 ; 0x0E98\u20130x0E9B: 0x6AE, 0x6F1, 0x6F2, 0x6F3\n#_03C9EA: db $F5, $F2, $E7, $E7 : db $66, $66 ; 0x0E9C\u20130x0E9F: 0x6F5, 0x6F2, 0x6E7, 0x6E7\n#_03C9F0: db $F9, $AE, $1C, $E9 : db $66, $26 ; 0x0EA0\u20130x0EA3: 0x6F9, 0x6AE, 0x61C, 0x2E9\n#_03C9F6: db $02, $03, $E7, $FA : db $77, $66 ; 0x0EA4\u20130x0EA7: 0x702, 0x703, 0x6E7, 0x6FA\n#_03C9FC: db $20, $AE, $E7, $E7 : db $26, $66 ; 0x0EA8\u20130x0EAB: 0x620, 0x2AE, 0x6E7, 0x6E7\n#_03CA02: db $06, $E8, $83, $71 : db $76, $11 ; 0x0EAC\u20130x0EAF: 0x606, 0x7E8, 0x183, 0x171\n#_03CA08: db $1F, $E6, $0B, $E7 : db $26, $76 ; 0x0EB0\u20130x0EB3: 0x61F, 0x2E6, 0x60B, 0x7E7\n#_03CA0E: db $AE, $1C, $E6, $85 : db $62, $63 ; 0x0EB4\u20130x0EB7: 0x2AE, 0x61C, 0x3E6, 0x685\n#_03CA14: db $1C, $85, $1C, $E6 : db $23, $26 ; 0x0EB8\u20130x0EBB: 0x31C, 0x285, 0x61C, 0x2E6\n#_03CA1A: db $1C, $0E, $0F, $10 : db $27, $77 ; 0x0EBC\u20130x0EBF: 0x71C, 0x20E, 0x70F, 0x710\n#_03CA20: db $11, $0F, $E7, $AE : db $77, $66 ; 0x0EC0\u20130x0EC3: 0x711, 0x70F, 0x6E7, 0x6AE\n#_03CA26: db $AE, $CC, $CC, $E3 : db $60, $00 ; 0x0EC4\u20130x0EC7: 0x0AE, 0x6CC, 0x0CC, 0x0E3\n#_03CA2C: db $D0, $7E, $53, $D0 : db $01, $10 ; 0x0EC8\u20130x0ECB: 0x1D0, 0x07E, 0x053, 0x1D0\n#_03CA32: db $79, $DB, $C5, $D0 : db $10, $00 ; 0x0ECC\u20130x0ECF: 0x079, 0x1DB, 0x0C5, 0x0D0\n#_03CA38: db $FF, $9F, $A3, $FE : db $10, $02 ; 0x0ED0\u20130x0ED3: 0x0FF, 0x19F, 0x2A3, 0x0FE\n#_03CA3E: db $AE, $E6, $B7, $1B : db $61, $67 ; 0x0ED4\u20130x0ED7: 0x1AE, 0x6E6, 0x7B7, 0x61B\n#_03CA44: db $07, $1C, $E7, $E7 : db $12, $66 ; 0x0ED8\u20130x0EDB: 0x207, 0x11C, 0x6E7, 0x6E7\n#_03CA4A: db $AE, $53, $E7, $FE : db $61, $62 ; 0x0EDC\u20130x0EDF: 0x1AE, 0x653, 0x2E7, 0x6FE\n#_03CA50: db $20, $D0, $AE, $AE : db $70, $66 ; 0x0EE0\u20130x0EE3: 0x020, 0x7D0, 0x6AE, 0x6AE\n#_03CA56: db $AE, $AE, $AE, $21 : db $66, $67 ; 0x0EE4\u20130x0EE7: 0x6AE, 0x6AE, 0x7AE, 0x621\n#_03CA5C: db $23, $EC, $C7, $C9 : db $71, $00 ; 0x0EE8\u20130x0EEB: 0x123, 0x7EC, 0x0C7, 0x0C9\n#_03CA62: db $24, $D0, $E7, $1C : db $70, $67 ; 0x0EEC\u20130x0EEF: 0x024, 0x7D0, 0x7E7, 0x61C\n#_03CA68: db $C9, $E0, $E7, $E7 : db $00, $66 ; 0x0EF0\u20130x0EF3: 0x0C9, 0x0E0, 0x6E7, 0x6E7\n#_03CA6E: db $2C, $CA, $C5, $1D : db $70, $07 ; 0x0EF4\u20130x0EF7: 0x02C, 0x7CA, 0x7C5, 0x01D\n#_03CA74: db $AE, $3F, $C8, $C8 : db $65, $00 ; 0x0EF8\u20130x0EFB: 0x5AE, 0x63F, 0x0C8, 0x0C8\n#_03CA7A: db $E7, $C5, $E7, $1C : db $60, $60 ; 0x0EFC\u20130x0EFF: 0x0E7, 0x6C5, 0x0E7, 0x61C\n#_03CA80: db $DE, $88, $34, $AD : db $00, $00 ; 0x0F00\u20130x0F03: 0x0DE, 0x088, 0x034, 0x0AD\n#_03CA86: db $FF, $DA, $0B, $FF : db $10, $21 ; 0x0F04\u20130x0F07: 0x0FF, 0x1DA, 0x10B, 0x2FF\n#_03CA8C: db $34, $36, $C6, $9F : db $00, $00 ; 0x0F08\u20130x0F0B: 0x034, 0x036, 0x0C6, 0x09F\n#_03CA92: db $34, $36, $9E, $36 : db $00, $00 ; 0x0F0C\u20130x0F0F: 0x034, 0x036, 0x09E, 0x036\n#_03CA98: db $34, $34, $5B, $60 : db $00, $11 ; 0x0F10\u20130x0F13: 0x034, 0x034, 0x15B, 0x160\n#_03CA9E: db $FD, $A5, $AB, $FF : db $10, $01 ; 0x0F14\u20130x0F17: 0x0FD, 0x1A5, 0x1AB, 0x0FF\n#_03CAA4: db $C6, $AB, $C6, $2F : db $00, $07 ; 0x0F18\u20130x0F1B: 0x0C6, 0x0AB, 0x7C6, 0x02F\n#_03CAAA: db $1C, $06, $5E, $5F : db $23, $11 ; 0x0F1C\u20130x0F1F: 0x31C, 0x206, 0x15E, 0x15F\n#_03CAB0: db $34, $34, $C6, $DF : db $00, $00 ; 0x0F20\u20130x0F23: 0x034, 0x034, 0x0C6, 0x0DF\n#_03CAB6: db $53, $2A, $0C, $67 : db $17, $31 ; 0x0F24\u20130x0F27: 0x753, 0x12A, 0x10C, 0x367\n#_03CABC: db $34, $EE, $0C, $D5 : db $01, $31 ; 0x0F28\u20130x0F2B: 0x134, 0x0EE, 0x10C, 0x3D5\n#_03CAC2: db $29, $1F, $71, $E6 : db $33, $12 ; 0x0F2C\u20130x0F2F: 0x329, 0x31F, 0x271, 0x1E6\n#_03CAC8: db $E6, $66, $1A, $07 : db $21, $31 ; 0x0F30\u20130x0F33: 0x1E6, 0x266, 0x11A, 0x307\n#_03CACE: db $C6, $C6, $1C, $6A : db $00, $21 ; 0x0F34\u20130x0F37: 0x0C6, 0x0C6, 0x11C, 0x26A\n#_03CAD4: db $30, $4F, $4F, $32 : db $75, $57 ; 0x0F38\u20130x0F3B: 0x530, 0x74F, 0x74F, 0x532\n#_03CADA: db $AA, $AC, $C6, $66 : db $66, $01 ; 0x0F3C\u20130x0F3F: 0x6AA, 0x6AC, 0x1C6, 0x066\n#_03CAE0: db $1A, $C6, $0C, $06 : db $20, $11 ; 0x0F40\u20130x0F43: 0x01A, 0x2C6, 0x10C, 0x106\n#_03CAE6: db $AC, $65, $65, $D1 : db $61, $10 ; 0x0F44\u20130x0F47: 0x1AC, 0x665, 0x065, 0x1D1\n#_03CAEC: db $DD, $DC, $20, $20 : db $00, $55 ; 0x0F48\u20130x0F4B: 0x0DD, 0x0DC, 0x520, 0x520\n#_03CAF2: db $20, $53, $A4, $34 : db $51, $00 ; 0x0F4C\u20130x0F4F: 0x120, 0x553, 0x0A4, 0x034\n#_03CAF8: db $79, $E4, $35, $C9 : db $10, $70 ; 0x0F50\u20130x0F53: 0x079, 0x1E4, 0x035, 0x7C9\n#_03CAFE: db $C6, $E1, $34, $34 : db $00, $00 ; 0x0F54\u20130x0F57: 0x0C6, 0x0E1, 0x034, 0x034\n#_03CB04: db $38, $A9, $D1, $71 : db $36, $00 ; 0x0F58\u20130x0F5B: 0x638, 0x3A9, 0x0D1, 0x071\n#_03CB0A: db $34, $34, $4F, $1C : db $00, $12 ; 0x0F5C\u20130x0F5F: 0x034, 0x034, 0x24F, 0x11C\n#_03CB10: db $36, $38, $3A, $EC : db $77, $70 ; 0x0F60\u20130x0F63: 0x736, 0x738, 0x03A, 0x7EC\n#_03CB16: db $34, $71, $C9, $84 : db $00, $01 ; 0x0F64\u20130x0F67: 0x034, 0x071, 0x1C9, 0x084\n#_03CB1C: db $C9, $D9, $1C, $42 : db $02, $27 ; 0x0F68\u20130x0F6B: 0x2C9, 0x0D9, 0x71C, 0x242\n#_03CB22: db $44, $46, $F0, $36 : db $77, $03 ; 0x0F6C\u20130x0F6F: 0x744, 0x746, 0x3F0, 0x036\n#_03CB28: db $53, $DC, $96, $DC : db $12, $32 ; 0x0F70\u20130x0F73: 0x253, 0x1DC, 0x296, 0x3DC\n#_03CB2E: db $D1, $D2, $36, $14 : db $22, $04 ; 0x0F74\u20130x0F77: 0x2D1, 0x2D2, 0x436, 0x014\n#_03CB34: db $4C, $CD, $E4, $C7 : db $72, $22 ; 0x0F78\u20130x0F7B: 0x24C, 0x7CD, 0x2E4, 0x2C7\n#_03CB3A: db $1C, $60, $34, $ED : db $21, $01 ; 0x0F7C\u20130x0F7F: 0x11C, 0x260, 0x134, 0x0ED\n#_03CB40: db $C7, $A2, $30, $60 : db $26, $71 ; 0x0F80\u20130x0F83: 0x6C7, 0x2A2, 0x130, 0x760\n#_03CB46: db $ED, $EF, $04, $E1 : db $12, $32 ; 0x0F84\u20130x0F87: 0x2ED, 0x1EF, 0x204, 0x3E1\n#_03CB4C: db $E1, $06, $F8, $20 : db $23, $22 ; 0x0F88\u20130x0F8B: 0x3E1, 0x206, 0x2F8, 0x220\n#_03CB52: db $6A, $27, $C7, $C7 : db $11, $22 ; 0x0F8C\u20130x0F8F: 0x16A, 0x127, 0x2C7, 0x2C7\n#_03CB58: db $E5, $E6, $31, $7F : db $22, $11 ; 0x0F90\u20130x0F93: 0x2E5, 0x2E6, 0x131, 0x17F\n#_03CB5E: db $6A, $27, $CD, $F1 : db $11, $22 ; 0x0F94\u20130x0F97: 0x16A, 0x127, 0x2CD, 0x2F1\n#_03CB64: db $ED, $51, $C6, $34 : db $21, $00 ; 0x0F98\u20130x0F9B: 0x1ED, 0x251, 0x0C6, 0x034\n#_03CB6A: db $4B, $3F, $6C, $CD : db $12, $12 ; 0x0F9C\u20130x0F9F: 0x24B, 0x13F, 0x26C, 0x1CD\n#_03CB70: db $CD, $83, $AB, $C7 : db $21, $22 ; 0x0FA0\u20130x0FA3: 0x1CD, 0x283, 0x2AB, 0x2C7\n#_03CB76: db $DD, $D9, $D2, $D7 : db $22, $22 ; 0x0FA4\u20130x0FA7: 0x2DD, 0x2D9, 0x2D2, 0x2D7\n#_03CB7C: db $CD, $CE, $D0, $1C : db $20, $02 ; 0x0FA8\u20130x0FAB: 0x0CD, 0x2CE, 0x2D0, 0x01C\n#_03CB82: db $CA, $83, $C7, $C9 : db $01, $00 ; 0x0FAC\u20130x0FAF: 0x1CA, 0x083, 0x0C7, 0x0C9\n#_03CB88: db $57, $C8, $53, $CD : db $20, $12 ; 0x0FB0\u20130x0FB3: 0x057, 0x2C8, 0x253, 0x1CD\n#_03CB8E: db $34, $53, $D0, $D4 : db $01, $02 ; 0x0FB4\u20130x0FB7: 0x134, 0x053, 0x2D0, 0x0D4\n#_03CB94: db $C4, $C7, $CD, $CD : db $02, $22 ; 0x0FB8\u20130x0FBB: 0x2C4, 0x0C7, 0x2CD, 0x2CD\n#_03CB9A: db $CA, $EF, $76, $CE : db $02, $10 ; 0x0FBC\u20130x0FBF: 0x2CA, 0x0EF, 0x076, 0x1CE\n#_03CBA0: db $CA, $DC, $D5, $CA : db $02, $20 ; 0x0FC0\u20130x0FC3: 0x2CA, 0x0DC, 0x0D5, 0x2CA\n#_03CBA6: db $C4, $CD, $CD, $C4 : db $02, $20 ; 0x0FC4\u20130x0FC7: 0x2C4, 0x0CD, 0x0CD, 0x2C4\n#_03CBAC: db $04, $51, $51, $F7 : db $37, $72 ; 0x0FC8\u20130x0FCB: 0x704, 0x351, 0x251, 0x7F7\n#_03CBB2: db $C4, $C6, $C6, $F7 : db $00, $02 ; 0x0FCC\u20130x0FCF: 0x0C4, 0x0C6, 0x2C6, 0x0F7\n#_03CBB8: db $CF, $40, $86, $66 : db $06, $31 ; 0x0FD0\u20130x0FD3: 0x6CF, 0x040, 0x186, 0x366\n#_03CBBE: db $F7, $D3, $D0, $31 : db $20, $01 ; 0x0FD4\u20130x0FD7: 0x0F7, 0x2D3, 0x1D0, 0x031\n#_03CBC4: db $D5, $CD, $DB, $31 : db $02, $01 ; 0x0FD8\u20130x0FDB: 0x2D5, 0x0CD, 0x1DB, 0x031\n#_03CBCA: db $D0, $D5, $E4, $AE : db $00, $26 ; 0x0FDC\u20130x0FDF: 0x0D0, 0x0D5, 0x6E4, 0x2AE\n#_03CBD0: db $AE, $53, $55, $E7 : db $67, $76 ; 0x0FE0\u20130x0FE3: 0x7AE, 0x653, 0x655, 0x7E7\n#_03CBD6: db $E7, $29, $1C, $5A : db $63, $27 ; 0x0FE4\u20130x0FE7: 0x3E7, 0x629, 0x71C, 0x25A\n#_03CBDC: db $1C, $D0, $5B, $E7 : db $20, $76 ; 0x0FE8\u20130x0FEB: 0x01C, 0x2D0, 0x65B, 0x7E7\n#_03CBE2: db $8B, $7E, $5F, $1C : db $31, $72 ; 0x0FEC\u20130x0FEF: 0x18B, 0x37E, 0x25F, 0x71C\n#_03CBE8: db $E8, $2A, $60, $E7 : db $67, $76 ; 0x0FF0\u20130x0FF3: 0x7E8, 0x62A, 0x660, 0x7E7\n#_03CBEE: db $85, $62, $53, $7E : db $37, $11 ; 0x0FF4\u20130x0FF7: 0x785, 0x362, 0x153, 0x17E\n#_03CBF4: db $22, $53, $5B, $63 : db $21, $17 ; 0x0FF8\u20130x0FFB: 0x122, 0x253, 0x75B, 0x163\n#_03CBFA: db $E7, $EF, $55, $4F : db $66, $75 ; 0x0FFC\u20130x0FFF: 0x6E7, 0x6EF, 0x555, 0x74F\n#_03CC00: db $4F, $63, $FA, $34 : db $57, $60 ; 0x1000\u20130x1003: 0x74F, 0x563, 0x0FA, 0x634\n#_03CC06: db $63, $66, $97, $97 : db $77, $55 ; 0x1004\u20130x1007: 0x763, 0x766, 0x597, 0x597\n#_03CC0C: db $66, $68, $E1, $63 : db $11, $07 ; 0x1008\u20130x100B: 0x166, 0x168, 0x7E1, 0x063\n#_03CC12: db $E7, $66, $05, $65 : db $67, $11 ; 0x100C\u20130x100F: 0x7E7, 0x666, 0x105, 0x165\n#_03CC18: db $65, $73, $73, $25 : db $11, $12 ; 0x1010\u20130x1013: 0x165, 0x173, 0x273, 0x125\n#_03CC1E: db $9E, $B1, $85, $E7 : db $52, $36 ; 0x1014\u20130x1017: 0x29E, 0x5B1, 0x685, 0x3E7\n#_03CC24: db $17, $C5, $96, $9D : db $30, $55 ; 0x1018\u20130x101B: 0x017, 0x3C5, 0x596, 0x59D\n#_03CC2A: db $9E, $06, $AE, $05 : db $51, $61 ; 0x101C\u20130x101F: 0x19E, 0x506, 0x1AE, 0x605\n#_03CC30: db $07, $6A, $90, $90 : db $17, $22 ; 0x1020\u20130x1023: 0x707, 0x16A, 0x290, 0x290\n#_03CC36: db $C4, $AE, $CA, $E7 : db $06, $06 ; 0x1024\u20130x1027: 0x6C4, 0x0AE, 0x6CA, 0x0E7\n#_03CC3C: db $E7, $CA, $AE, $E7 : db $60, $66 ; 0x1028\u20130x102B: 0x0E7, 0x6CA, 0x6AE, 0x6E7\n#_03CC42: db $E7, $21, $6C, $07 : db $67, $77 ; 0x102C\u20130x102F: 0x7E7, 0x621, 0x76C, 0x707\n#_03CC48: db $E7, $1D, $E7, $AE : db $67, $66 ; 0x1030\u20130x1033: 0x7E7, 0x61D, 0x6E7, 0x6AE\n#_03CC4E: db $85, $60, $E7, $F0 : db $37, $66 ; 0x1034\u20130x1037: 0x785, 0x360, 0x6E7, 0x6F0\n#_03CC54: db $AE, $E7, $E8, $E7 : db $66, $66 ; 0x1038\u20130x103B: 0x6AE, 0x6E7, 0x6E8, 0x6E7\n#_03CC5A: db $E7, $E7, $72, $07 : db $66, $77 ; 0x103C\u20130x103F: 0x6E7, 0x6E7, 0x772, 0x707\n#_03CC60: db $F0, $AE, $6C, $E4 : db $66, $76 ; 0x1040\u20130x1043: 0x6F0, 0x6AE, 0x66C, 0x7E4\n#_03CC66: db $E7, $75, $1D, $F8 : db $67, $76 ; 0x1044\u20130x1047: 0x7E7, 0x675, 0x61D, 0x7F8\n#_03CC6C: db $F0, $5A, $E3, $6C : db $67, $67 ; 0x1048\u20130x104B: 0x7F0, 0x65A, 0x7E3, 0x66C\n#_03CC72: db $5A, $F9, $55, $E7 : db $76, $76 ; 0x104C\u20130x104F: 0x65A, 0x7F9, 0x655, 0x7E7\n#_03CC78: db $97, $E7, $F9, $77 : db $56, $67 ; 0x1050\u20130x1053: 0x697, 0x5E7, 0x7F9, 0x677\n#_03CC7E: db $60, $73, $5A, $08 : db $77, $77 ; 0x1054\u20130x1057: 0x760, 0x773, 0x75A, 0x708\n#_03CC84: db $E7, $66, $E7, $5C : db $61, $67 ; 0x1058\u20130x105B: 0x1E7, 0x666, 0x7E7, 0x65C\n#_03CC8A: db $E7, $73, $9C, $9E : db $67, $55 ; 0x105C\u20130x105F: 0x7E7, 0x673, 0x59C, 0x59E\n#_03CC90: db $1E, $9E, $06, $E5 : db $25, $11 ; 0x1060\u20130x1063: 0x51E, 0x29E, 0x106, 0x1E5\n#_03CC96: db $B7, $AE, $C8, $AE : db $66, $06 ; 0x1064\u20130x1067: 0x6B7, 0x6AE, 0x6C8, 0x0AE\n#_03CC9C: db $CC, $DC, $CC, $CC : db $00, $00 ; 0x1068\u20130x106B: 0x0CC, 0x0DC, 0x0CC, 0x0CC\n#_03CCA2: db $CC, $CC, $83, $CC : db $00, $10 ; 0x106C\u20130x106F: 0x0CC, 0x0CC, 0x083, 0x1CC\n#_03CCA8: db $AA, $CC, $D2, $85 : db $20, $03 ; 0x1070\u20130x1073: 0x0AA, 0x2CC, 0x3D2, 0x085\n#_03CCAE: db $E3, $E3, $CA, $AE : db $00, $06 ; 0x1074\u20130x1077: 0x0E3, 0x0E3, 0x6CA, 0x0AE\n#_03CCB4: db $0E, $C5, $1C, $7D : db $20, $27 ; 0x1078\u20130x107B: 0x00E, 0x2C5, 0x71C, 0x27D\n#_03CCBA: db $AE, $7C, $34, $0E : db $61, $01 ; 0x107C\u20130x107F: 0x1AE, 0x67C, 0x134, 0x00E\n#_03CCC0: db $58, $7D, $D0, $FA : db $17, $01 ; 0x1080\u20130x1083: 0x758, 0x17D, 0x1D0, 0x0FA\n#_03CCC6: db $0F, $AE, $01, $20 : db $26, $22 ; 0x1084\u20130x1087: 0x60F, 0x2AE, 0x201, 0x220\n#_03CCCC: db $34, $60, $01, $34 : db $01, $20 ; 0x1088\u20130x108B: 0x134, 0x060, 0x001, 0x234\n#_03CCD2: db $01, $FF, $6D, $34 : db $21, $30 ; 0x108C\u20130x108F: 0x101, 0x2FF, 0x06D, 0x334\n#_03CCD8: db $83, $20, $AE, $34 : db $12, $60 ; 0x1090\u20130x1093: 0x283, 0x120, 0x0AE, 0x634\n#_03CCDE: db $DA, $53, $42, $5A : db $01, $57 ; 0x1094\u20130x1097: 0x1DA, 0x053, 0x742, 0x55A\n#_03CCE4: db $05, $65, $96, $C5 : db $11, $50 ; 0x1098\u20130x109B: 0x105, 0x165, 0x096, 0x5C5\n#_03CCEA: db $6A, $39, $CE, $65 : db $12, $01 ; 0x109C\u20130x109F: 0x26A, 0x139, 0x1CE, 0x065\n#_03CCF0: db $AA, $58, $D4, $ED : db $61, $02 ; 0x10A0\u20130x10A3: 0x1AA, 0x658, 0x2D4, 0x0ED\n#_03CCF6: db $96, $65, $C8, $AE : db $51, $06 ; 0x10A4\u20130x10A7: 0x196, 0x565, 0x6C8, 0x0AE\n#_03CCFC: db $AB, $E3, $E3, $40 : db $00, $06 ; 0x10A8\u20130x10AB: 0x0AB, 0x0E3, 0x6E3, 0x040\n#_03CD02: db $AE, $AB, $71, $54 : db $60, $12 ; 0x10AC\u20130x10AF: 0x0AE, 0x6AB, 0x271, 0x154\n#_03CD08: db $C7, $A2, $1E, $66 : db $26, $21 ; 0x10B0\u20130x10B3: 0x6C7, 0x2A2, 0x11E, 0x266\n#_03CD0E: db $27, $C5, $C7, $DA : db $12, $22 ; 0x10B4\u20130x10B7: 0x227, 0x1C5, 0x2C7, 0x2DA\n#_03CD14: db $C7, $EF, $1E, $AA : db $22, $26 ; 0x10B8\u20130x10BB: 0x2C7, 0x2EF, 0x61E, 0x2AA\n#_03CD1A: db $58, $C6, $C7, $E6 : db $12, $21 ; 0x10BC\u20130x10BF: 0x258, 0x1C6, 0x1C7, 0x2E6\n#_03CD20: db $1D, $C6, $CD, $7E : db $20, $21 ; 0x10C0\u20130x10C3: 0x01D, 0x2C6, 0x1CD, 0x27E\n#_03CD26: db $C6, $C7, $EF, $53 : db $02, $21 ; 0x10C4\u20130x10C7: 0x2C6, 0x0C7, 0x1EF, 0x253\n#_03CD2C: db $C6, $C6, $C7, $CC : db $00, $00 ; 0x10C8\u20130x10CB: 0x0C6, 0x0C6, 0x0C7, 0x0CC\n#_03CD32: db $57, $A2, $C6, $20 : db $26, $05 ; 0x10CC\u20130x10CF: 0x657, 0x2A2, 0x5C6, 0x020\n#_03CD38: db $20, $D0, $4C, $7E : db $50, $31 ; 0x10D0\u20130x10D3: 0x020, 0x5D0, 0x14C, 0x37E\n#_03CD3E: db $53, $82, $EE, $CD : db $17, $22 ; 0x10D4\u20130x10D7: 0x753, 0x182, 0x2EE, 0x2CD\n#_03CD44: db $6A, $53, $86, $F4 : db $61, $72 ; 0x10D8\u20130x10DB: 0x16A, 0x653, 0x286, 0x7F4\n#_03CD4A: db $8B, $53, $35, $9E : db $31, $50 ; 0x10DC\u20130x10DF: 0x18B, 0x353, 0x035, 0x59E\n#_03CD50: db $87, $87, $4C, $C7 : db $33, $32 ; 0x10E0\u20130x10E3: 0x387, 0x387, 0x24C, 0x3C7\n#_03CD56: db $5A, $87, $77, $E6 : db $77, $72 ; 0x10E4\u20130x10E7: 0x75A, 0x787, 0x277, 0x7E6\n#_03CD5C: db $88, $CD, $89, $CD : db $72, $72 ; 0x10E8\u20130x10EB: 0x288, 0x7CD, 0x289, 0x7CD\n#_03CD62: db $CD, $E6, $E7, $F2 : db $22, $21 ; 0x10EC\u20130x10EF: 0x2CD, 0x2E6, 0x1E7, 0x2F2\n#_03CD68: db $27, $A5, $E1, $F7 : db $33, $22 ; 0x10F0\u20130x10F3: 0x327, 0x3A5, 0x2E1, 0x2F7\n#_03CD6E: db $A0, $27, $E6, $E6 : db $33, $22 ; 0x10F4\u20130x10F7: 0x3A0, 0x327, 0x2E6, 0x2E6\n#_03CD74: db $E6, $E8, $E6, $9D : db $22, $25 ; 0x10F8\u20130x10FB: 0x2E6, 0x2E8, 0x5E6, 0x29D\n#_03CD7A: db $7B, $68, $97, $68 : db $76, $56 ; 0x10FC\u20130x10FF: 0x67B, 0x768, 0x697, 0x568\n#_03CD80: db $E6, $65, $80, $6C : db $21, $11 ; 0x1100\u20130x1103: 0x1E6, 0x265, 0x180, 0x16C\n#_03CD86: db $CD, $D5, $CD, $06 : db $20, $21 ; 0x1104\u20130x1107: 0x0CD, 0x2D5, 0x1CD, 0x206\n#_03CD8C: db $DD, $D8, $E4, $C7 : db $22, $22 ; 0x1108\u20130x110B: 0x2DD, 0x2D8, 0x2E4, 0x2C7\n#_03CD92: db $C7, $C7, $CD, $C4 : db $22, $20 ; 0x110C\u20130x110F: 0x2C7, 0x2C7, 0x0CD, 0x2C4\n#_03CD98: db $C6, $C6, $C7, $E4 : db $02, $22 ; 0x1110\u20130x1113: 0x2C6, 0x0C6, 0x2C7, 0x2E4\n#_03CD9E: db $C6, $A2, $C6, $C7 : db $26, $22 ; 0x1114\u20130x1117: 0x6C6, 0x2A2, 0x2C6, 0x2C7\n#_03CDA4: db $F6, $50, $51, $51 : db $27, $77 ; 0x1118\u20130x111B: 0x7F6, 0x250, 0x751, 0x751\n#_03CDAA: db $52, $05, $02, $07 : db $71, $33 ; 0x111C\u20130x111F: 0x152, 0x705, 0x302, 0x307\n#_03CDB0: db $FD, $E6, $8B, $8D : db $22, $77 ; 0x1120\u20130x1123: 0x2FD, 0x2E6, 0x78B, 0x78D\n#_03CDB6: db $E6, $25, $27, $27 : db $22, $33 ; 0x1124\u20130x1127: 0x2E6, 0x225, 0x327, 0x327\n#_03CDBC: db $05, $E6, $E6, $E6 : db $12, $22 ; 0x1128\u20130x112B: 0x205, 0x1E6, 0x2E6, 0x2E6\n#_03CDC2: db $8D, $2A, $8D, $65 : db $77, $71 ; 0x112C\u20130x112F: 0x78D, 0x72A, 0x18D, 0x765\n#_03CDC8: db $66, $07, $94, $93 : db $11, $77 ; 0x1130\u20130x1133: 0x166, 0x107, 0x794, 0x793\n#_03CDCE: db $95, $93, $97, $99 : db $77, $77 ; 0x1134\u20130x1137: 0x795, 0x793, 0x797, 0x799\n#_03CDD4: db $9B, $9A, $9C, $A9 : db $77, $77 ; 0x1138\u20130x113B: 0x79B, 0x79A, 0x79C, 0x7A9\n#_03CDDA: db $A8, $AA, $AC, $AD : db $77, $77 ; 0x113C\u20130x113F: 0x7A8, 0x7AA, 0x7AC, 0x7AD\n#_03CDE0: db $AE, $95, $94, $93 : db $77, $77 ; 0x1140\u20130x1143: 0x7AE, 0x795, 0x794, 0x793\n#_03CDE6: db $B7, $AD, $A8, $AC : db $77, $77 ; 0x1144\u20130x1147: 0x7B7, 0x7AD, 0x7A8, 0x7AC\n#_03CDEC: db $BB, $BA, $BD, $BB : db $77, $77 ; 0x1148\u20130x114B: 0x7BB, 0x7BA, 0x7BD, 0x7BB\n#_03CDF2: db $BC, $95, $96, $AD : db $77, $77 ; 0x114C\u20130x114F: 0x7BC, 0x795, 0x796, 0x7AD\n#_03CDF8: db $C5, $C7, $C6, $C3 : db $77, $77 ; 0x1150\u20130x1153: 0x7C5, 0x7C7, 0x7C6, 0x7C3\n#_03CDFE: db $C9, $C7, $AB, $AD : db $77, $77 ; 0x1154\u20130x1157: 0x7C9, 0x7C7, 0x7AB, 0x7AD\n#_03CE04: db $AE, $95, $CB, $C5 : db $77, $77 ; 0x1158\u20130x115B: 0x7AE, 0x795, 0x7CB, 0x7C5\n#_03CE0A: db $CD, $C6, $C6, $D0 : db $77, $77 ; 0x115C\u20130x115F: 0x7CD, 0x7C6, 0x7C6, 0x7D0\n#_03CE10: db $D1, $9C, $B8, $C3 : db $77, $77 ; 0x1160\u20130x1163: 0x7D1, 0x79C, 0x7B8, 0x7C3\n#_03CE16: db $DE, $E0, $C4, $E1 : db $77, $77 ; 0x1164\u20130x1167: 0x7DE, 0x7E0, 0x7C4, 0x7E1\n#_03CE1C: db $97, $D8, $97, $E4 : db $77, $77 ; 0x1168\u20130x116B: 0x797, 0x7D8, 0x797, 0x7E4\n#_03CE22: db $E6, $97, $C2, $C6 : db $77, $77 ; 0x116C\u20130x116F: 0x7E6, 0x797, 0x7C2, 0x7C6\n#_03CE28: db $F5, $F7, $C6, $98 : db $77, $77 ; 0x1170\u20130x1173: 0x7F5, 0x7F7, 0x7C6, 0x798\n#_03CE2E: db $FA, $97, $94, $93 : db $77, $77 ; 0x1174\u20130x1177: 0x7FA, 0x797, 0x794, 0x793\n#_03CE34: db $97, $AC, $C5, $C6 : db $77, $77 ; 0x1178\u20130x117B: 0x797, 0x7AC, 0x7C5, 0x7C6\n#_03CE3A: db $05, $07, $0F, $DB : db $88, $27 ; 0x117C\u20130x117F: 0x805, 0x807, 0x70F, 0x2DB\n#_03CE40: db $C3, $C4, $AD, $08 : db $77, $78 ; 0x1180\u20130x1183: 0x7C3, 0x7C4, 0x8AD, 0x708\n#_03CE46: db $A8, $E2, $C5, $0B : db $77, $78 ; 0x1184\u20130x1187: 0x7A8, 0x7E2, 0x8C5, 0x70B\n#_03CE4C: db $C6, $C6, $C5, $C8 : db $77, $77 ; 0x1188\u20130x118B: 0x7C6, 0x7C6, 0x7C5, 0x7C8\n#_03CE52: db $D8, $C4, $D6, $C6 : db $77, $77 ; 0x118C\u20130x118F: 0x7D8, 0x7C4, 0x7D6, 0x7C6\n#_03CE58: db $DA, $C6, $0E, $C7 : db $07, $87 ; 0x1190\u20130x1193: 0x7DA, 0x0C6, 0x70E, 0x8C7\n#_03CE5E: db $DA, $94, $E2, $CC : db $77, $77 ; 0x1194\u20130x1197: 0x7DA, 0x794, 0x7E2, 0x7CC\n#_03CE64: db $CE, $AD, $C5, $D0 : db $77, $77 ; 0x1198\u20130x119B: 0x7CE, 0x7AD, 0x7C5, 0x7D0\n#_03CE6A: db $B9, $C9, $D7, $D9 : db $77, $77 ; 0x119C\u20130x119F: 0x7B9, 0x7C9, 0x7D7, 0x7D9\n#_03CE70: db $B4, $D5, $DC, $D6 : db $77, $77 ; 0x11A0\u20130x11A3: 0x7B4, 0x7D5, 0x7DC, 0x7D6\n#_03CE76: db $C6, $16, $AF, $F0 : db $78, $77 ; 0x11A4\u20130x11A7: 0x8C6, 0x716, 0x7AF, 0x7F0\n#_03CE7C: db $96, $C2, $19, $D0 : db $77, $87 ; 0x11A8\u20130x11AB: 0x796, 0x7C2, 0x719, 0x8D0\n#_03CE82: db $BD, $C0, $A8, $C9 : db $77, $77 ; 0x11AC\u20130x11AF: 0x7BD, 0x7C0, 0x7A8, 0x7C9\n#_03CE88: db $B8, $D7, $D9, $C3 : db $77, $77 ; 0x11B0\u20130x11B3: 0x7B8, 0x7D7, 0x7D9, 0x7C3\n#_03CE8E: db $C4, $AD, $1B, $1C : db $77, $88 ; 0x11B4\u20130x11B7: 0x7C4, 0x7AD, 0x81B, 0x81C\n#_03CE94: db $C6, $C5, $C6, $F8 : db $77, $77 ; 0x11B8\u20130x11BB: 0x7C6, 0x7C5, 0x7C6, 0x7F8\n#_03CE9A: db $C6, $94, $93, $95 : db $77, $77 ; 0x11BC\u20130x11BF: 0x7C6, 0x794, 0x793, 0x795\n#_03CEA0: db $BB, $08, $AB, $29 : db $78, $78 ; 0x11C0\u20130x11C3: 0x8BB, 0x708, 0x8AB, 0x729\n#_03CEA6: db $28, $2A, $A8, $9C : db $88, $77 ; 0x11C4\u20130x11C7: 0x828, 0x82A, 0x7A8, 0x79C\n#_03CEAC: db $2C, $2E, $2D, $C6 : db $88, $87 ; 0x11C8\u20130x11CB: 0x82C, 0x82E, 0x72D, 0x8C6\n#_03CEB2: db $F9, $30, $FA, $F9 : db $78, $77 ; 0x11CC\u20130x11CF: 0x8F9, 0x730, 0x7FA, 0x7F9\n#_03CEB8: db $F8, $C6, $C6, $C6 : db $77, $77 ; 0x11D0\u20130x11D3: 0x7F8, 0x7C6, 0x7C6, 0x7C6\n#_03CEBE: db $9F, $C6, $B9, $3D : db $07, $78 ; 0x11D4\u20130x11D7: 0x79F, 0x0C6, 0x8B9, 0x73D\n#_03CEC4: db $C6, $0F, $C6, $C6 : db $72, $77 ; 0x11D8\u20130x11DB: 0x2C6, 0x70F, 0x7C6, 0x7C6\n#_03CECA: db $C6, $A9, $3E, $C6 : db $70, $87 ; 0x11DC\u20130x11DF: 0x0C6, 0x7A9, 0x73E, 0x8C6\n#_03CED0: db $C7, $98, $9A, $C6 : db $77, $77 ; 0x11E0\u20130x11E3: 0x7C7, 0x798, 0x79A, 0x7C6\n#_03CED6: db $C6, $34, $C7, $C6 : db $78, $77 ; 0x11E4\u20130x11E7: 0x8C6, 0x734, 0x7C7, 0x7C6\n#_03CEDC: db $C6, $C6, $D0, $D0 : db $77, $77 ; 0x11E8\u20130x11EB: 0x7C6, 0x7C6, 0x7D0, 0x7D0\n#_03CEE2: db $43, $AD, $94, $C5 : db $87, $77 ; 0x11EC\u20130x11EF: 0x743, 0x8AD, 0x794, 0x7C5\n#_03CEE8: db $C6, $C6, $C7, $CF : db $77, $77 ; 0x11F0\u20130x11F3: 0x7C6, 0x7C6, 0x7C7, 0x7CF\n#_03CEEE: db $43, $98, $BA, $48 : db $87, $78 ; 0x11F4\u20130x11F7: 0x743, 0x898, 0x8BA, 0x748\n#_03CEF4: db $C6, $F8, $E6, $1B : db $77, $78 ; 0x11F8\u20130x11FB: 0x7C6, 0x7F8, 0x8E6, 0x71B\n#_03CEFA: db $49, $E3, $C4, $C2 : db $87, $77 ; 0x11FC\u20130x11FF: 0x749, 0x8E3, 0x7C4, 0x7C2\n#_03CF00: db $C6, $0D, $D0, $AD : db $78, $77 ; 0x1200\u20130x1203: 0x8C6, 0x70D, 0x7D0, 0x7AD\n#_03CF06: db $97, $4C, $AE, $C6 : db $78, $77 ; 0x1204\u20130x1207: 0x897, 0x74C, 0x7AE, 0x7C6\n#_03CF0C: db $F3, $EE, $B9, $BC : db $77, $77 ; 0x1208\u20130x120B: 0x7F3, 0x7EE, 0x7B9, 0x7BC\n#_03CF12: db $F3, $F8, $C5, $CC : db $77, $77 ; 0x120C\u20130x120F: 0x7F3, 0x7F8, 0x7C5, 0x7CC\n#_03CF18: db $98, $C2, $4D, $97 : db $77, $87 ; 0x1210\u20130x1213: 0x798, 0x7C2, 0x74D, 0x897\n#_03CF1E: db $D7, $46, $94, $AD : db $78, $77 ; 0x1214\u20130x1217: 0x8D7, 0x746, 0x794, 0x7AD\n#_03CF24: db $C2, $F3, $C7, $DA : db $77, $77 ; 0x1218\u20130x121B: 0x7C2, 0x7F3, 0x7C7, 0x7DA\n#_03CF2A: db $AE, $0D, $97, $B9 : db $78, $77 ; 0x121C\u20130x121F: 0x8AE, 0x70D, 0x797, 0x7B9\n#_03CF30: db $0D, $43, $43, $46 : db $88, $88 ; 0x1220\u20130x1223: 0x80D, 0x843, 0x843, 0x846\n#_03CF36: db $98, $E3, $4E, $D7 : db $77, $87 ; 0x1224\u20130x1227: 0x798, 0x7E3, 0x74E, 0x8D7\n#_03CF3C: db $C9, $C7, $CF, $FB : db $77, $77 ; 0x1228\u20130x122B: 0x7C9, 0x7C7, 0x7CF, 0x7FB\n#_03CF42: db $C8, $D3, $F2, $ED : db $00, $00 ; 0x122C\u20130x122F: 0x0C8, 0x0D3, 0x0F2, 0x0ED\n#_03CF48: db $F2, $34, $F9, $49 : db $00, $07 ; 0x1230\u20130x1233: 0x0F2, 0x034, 0x7F9, 0x049\n#_03CF4E: db $FD, $F2, $34, $DA : db $00, $00 ; 0x1234\u20130x1237: 0x0FD, 0x0F2, 0x034, 0x0DA\n#_03CF54: db $50, $50, $52, $50 : db $88, $88 ; 0x1238\u20130x123B: 0x850, 0x850, 0x852, 0x850\n#_03CF5A: db $54, $55, $50, $51 : db $88, $88 ; 0x123C\u20130x123F: 0x854, 0x855, 0x850, 0x851\n#_03CF60: db $58, $58, $52, $50 : db $88, $88 ; 0x1240\u20130x1243: 0x858, 0x858, 0x852, 0x850\n#_03CF66: db $5A, $5C, $5C, $50 : db $88, $88 ; 0x1244\u20130x1247: 0x85A, 0x85C, 0x85C, 0x850\n#_03CF6C: db $51, $5E, $5F, $65 : db $88, $88 ; 0x1248\u20130x124B: 0x851, 0x85E, 0x85F, 0x865\n#_03CF72: db $51, $1C, $58, $58 : db $81, $88 ; 0x124C\u20130x124F: 0x151, 0x81C, 0x858, 0x858\n#_03CF78: db $50, $67, $5C, $69 : db $88, $88 ; 0x1250\u20130x1253: 0x850, 0x867, 0x85C, 0x869\n#_03CF7E: db $6F, $70, $31, $58 : db $88, $18 ; 0x1254\u20130x1257: 0x86F, 0x870, 0x831, 0x158\n#_03CF84: db $50, $50, $6F, $76 : db $88, $88 ; 0x1258\u20130x125B: 0x850, 0x850, 0x86F, 0x876\n#_03CF8A: db $77, $78, $78, $7E : db $88, $88 ; 0x125C\u20130x125F: 0x877, 0x878, 0x878, 0x87E\n#_03CF90: db $C8, $7F, $81, $81 : db $08, $88 ; 0x1260\u20130x1263: 0x8C8, 0x07F, 0x881, 0x881\n#_03CF96: db $82, $83, $72, $7E : db $88, $88 ; 0x1264\u20130x1267: 0x882, 0x883, 0x872, 0x87E\n#_03CF9C: db $85, $85, $50, $54 : db $88, $11 ; 0x1268\u20130x126B: 0x885, 0x885, 0x150, 0x154\n#_03CFA2: db $58, $87, $50, $65 : db $88, $88 ; 0x126C\u20130x126F: 0x858, 0x887, 0x850, 0x865\n#_03CFA8: db $51, $7F, $8A, $7E : db $88, $88 ; 0x1270\u20130x1273: 0x851, 0x87F, 0x88A, 0x87E\n#_03CFAE: db $56, $56, $54, $58 : db $11, $18 ; 0x1274\u20130x1277: 0x156, 0x156, 0x854, 0x158\n#_03CFB4: db $84, $50, $58, $17 : db $88, $81 ; 0x1278\u20130x127B: 0x884, 0x850, 0x158, 0x817\n#_03CFBA: db $53, $8B, $6E, $8A : db $88, $88 ; 0x127C\u20130x127F: 0x853, 0x88B, 0x86E, 0x88A\n#_03CFC0: db $8A, $58, $5E, $8E : db $88, $88 ; 0x1280\u20130x1283: 0x88A, 0x858, 0x85E, 0x88E\n#_03CFC6: db $53, $57, $51, $23 : db $88, $81 ; 0x1284\u20130x1287: 0x853, 0x857, 0x151, 0x823\n#_03CFCC: db $34, $C9, $76, $53 : db $00, $11 ; 0x1288\u20130x128B: 0x034, 0x0C9, 0x176, 0x153\n#_03CFD2: db $A4, $A5, $C7, $CC : db $01, $00 ; 0x128C\u20130x128F: 0x1A4, 0x0A5, 0x0C7, 0x0CC\n#_03CFD8: db $A5, $39, $39, $CC : db $11, $10 ; 0x1290\u20130x1293: 0x1A5, 0x139, 0x039, 0x1CC\n#_03CFDE: db $7C, $93, $A5, $A5 : db $18, $10 ; 0x1294\u20130x1297: 0x87C, 0x193, 0x0A5, 0x1A5\n#_03CFE4: db $C4, $4E, $4E, $95 : db $11, $18 ; 0x1298\u20130x129B: 0x1C4, 0x14E, 0x84E, 0x195\n#_03CFEA: db $5E, $97, $99, $99 : db $88, $88 ; 0x129C\u20130x129F: 0x85E, 0x897, 0x899, 0x899\n#_03CFF0: db $9C, $9E, $9E, $A0 : db $88, $88 ; 0x12A0\u20130x12A3: 0x89C, 0x89E, 0x89E, 0x8A0\n#_03CFF6: db $A1, $A2, $A4, $6B : db $88, $88 ; 0x12A4\u20130x12A7: 0x8A1, 0x8A2, 0x8A4, 0x86B\n#_03CFFC: db $58, $58, $50, $58 : db $88, $88 ; 0x12A8\u20130x12AB: 0x858, 0x858, 0x850, 0x858\n#_03D002: db $24, $AC, $A0, $A0 : db $18, $88 ; 0x12AC\u20130x12AF: 0x824, 0x1AC, 0x8A0, 0x8A0\n#_03D008: db $AF, $B1, $B3, $99 : db $88, $88 ; 0x12B0\u20130x12B3: 0x8AF, 0x8B1, 0x8B3, 0x899\n#_03D00E: db $A1, $B5, $B7, $71 : db $88, $88 ; 0x12B4\u20130x12B7: 0x8A1, 0x8B5, 0x8B7, 0x871\n#_03D014: db $8B, $6E, $51, $23 : db $88, $81 ; 0x12B8\u20130x12BB: 0x88B, 0x86E, 0x151, 0x823\n#_03D01A: db $70, $BF, $C1, $A0 : db $88, $88 ; 0x12BC\u20130x12BF: 0x870, 0x8BF, 0x8C1, 0x8A0\n#_03D020: db $C2, $C4, $C2, $A0 : db $88, $88 ; 0x12C0\u20130x12C3: 0x8C2, 0x8C4, 0x8C2, 0x8A0\n#_03D026: db $B2, $C7, $34, $52 : db $88, $08 ; 0x12C4\u20130x12C7: 0x8B2, 0x8C7, 0x834, 0x052\n#_03D02C: db $58, $77, $76, $70 : db $88, $88 ; 0x12C8\u20130x12CB: 0x858, 0x877, 0x876, 0x870\n#_03D032: db $CB, $D8, $C1, $D9 : db $88, $88 ; 0x12CC\u20130x12CF: 0x8CB, 0x8D8, 0x8C1, 0x8D9\n#_03D038: db $DB, $DD, $DE, $DF : db $88, $88 ; 0x12D0\u20130x12D3: 0x8DB, 0x8DD, 0x8DE, 0x8DF\n#_03D03E: db $E1, $34, $51, $2D : db $80, $81 ; 0x12D4\u20130x12D7: 0x0E1, 0x834, 0x151, 0x82D\n#_03D044: db $EE, $F0, $F1, $F3 : db $88, $88 ; 0x12D8\u20130x12DB: 0x8EE, 0x8F0, 0x8F1, 0x8F3\n#_03D04A: db $F4, $F3, $F4, $F6 : db $88, $88 ; 0x12DC\u20130x12DF: 0x8F4, 0x8F3, 0x8F4, 0x8F6\n#_03D050: db $F8, $34, $58, $FA : db $80, $88 ; 0x12E0\u20130x12E3: 0x0F8, 0x834, 0x858, 0x8FA\n#_03D056: db $01, $CF, $F0, $CF : db $98, $88 ; 0x12E4\u20130x12E7: 0x801, 0x9CF, 0x8F0, 0x8CF\n#_03D05C: db $03, $05, $34, $E8 : db $99, $01 ; 0x12E8\u20130x12EB: 0x903, 0x905, 0x134, 0x0E8\n#_03D062: db $06, $F3, $15, $C7 : db $11, $20 ; 0x12EC\u20130x12EF: 0x106, 0x1F3, 0x015, 0x2C7\n#_03D068: db $76, $AD, $C7, $86 : db $10, $01 ; 0x12F0\u20130x12F3: 0x076, 0x1AD, 0x1C7, 0x086\n#_03D06E: db $34, $7C, $34, $34 : db $01, $00 ; 0x12F4\u20130x12F7: 0x134, 0x07C, 0x034, 0x034\n#_03D074: db $93, $34, $9E, $07 : db $80, $02 ; 0x12F8\u20130x12FB: 0x093, 0x834, 0x29E, 0x007\n#_03D07A: db $39, $93, $4E, $50 : db $18, $18 ; 0x12FC\u20130x12FF: 0x839, 0x193, 0x84E, 0x150\n#_03D080: db $50, $63, $68, $50 : db $88, $88 ; 0x1300\u20130x1303: 0x850, 0x863, 0x868, 0x850\n#_03D086: db $0A, $5D, $0A, $5D : db $98, $98 ; 0x1304\u20130x1307: 0x80A, 0x95D, 0x80A, 0x95D\n#_03D08C: db $50, $50, $50, $58 : db $88, $88 ; 0x1308\u20130x130B: 0x850, 0x850, 0x850, 0x858\n#_03D092: db $58, $50, $82, $82 : db $88, $88 ; 0x130C\u20130x130F: 0x858, 0x850, 0x882, 0x882\n#_03D098: db $5A, $63, $5C, $5C : db $88, $88 ; 0x1310\u20130x1313: 0x85A, 0x863, 0x85C, 0x85C\n#_03D09E: db $5C, $64, $81, $6E : db $88, $88 ; 0x1314\u20130x1317: 0x85C, 0x864, 0x881, 0x86E\n#_03D0A4: db $80, $53, $54, $56 : db $88, $88 ; 0x1318\u20130x131B: 0x880, 0x853, 0x854, 0x856\n#_03D0AA: db $81, $6C, $67, $5C : db $88, $88 ; 0x131C\u20130x131F: 0x881, 0x86C, 0x867, 0x85C\n#_03D0B0: db $81, $8A, $89, $5F : db $88, $88 ; 0x1320\u20130x1323: 0x881, 0x88A, 0x889, 0x85F\n#_03D0B6: db $53, $51, $81, $81 : db $88, $88 ; 0x1324\u20130x1327: 0x853, 0x851, 0x881, 0x881\n#_03D0BC: db $67, $63, $5C, $64 : db $88, $88 ; 0x1328\u20130x132B: 0x867, 0x863, 0x85C, 0x864\n#_03D0C2: db $81, $81, $50, $53 : db $88, $88 ; 0x132C\u20130x132F: 0x881, 0x881, 0x850, 0x853\n#_03D0C8: db $6E, $81, $81, $55 : db $88, $88 ; 0x1330\u20130x1333: 0x86E, 0x881, 0x881, 0x855\n#_03D0CE: db $81, $67, $81, $5E : db $88, $88 ; 0x1334\u20130x1337: 0x881, 0x867, 0x881, 0x85E\n#_03D0D4: db $27, $66, $81, $23 : db $18, $81 ; 0x1338\u20130x133B: 0x827, 0x166, 0x181, 0x823\n#_03D0DA: db $25, $13, $38, $38 : db $19, $11 ; 0x133C\u20130x133F: 0x925, 0x113, 0x138, 0x138\n#_03D0E0: db $C9, $73, $7F, $27 : db $88, $71 ; 0x1340\u20130x1343: 0x8C9, 0x873, 0x17F, 0x727\n#_03D0E6: db $15, $16, $17, $16 : db $99, $99 ; 0x1344\u20130x1347: 0x915, 0x916, 0x917, 0x916\n#_03D0EC: db $16, $16, $E3, $73 : db $99, $88 ; 0x1348\u20130x134B: 0x916, 0x916, 0x8E3, 0x873\n#_03D0F2: db $4E, $71, $95, $58 : db $18, $88 ; 0x134C\u20130x134F: 0x84E, 0x171, 0x895, 0x858\n#_03D0F8: db $2D, $67, $64, $6E : db $18, $88 ; 0x1350\u20130x1353: 0x82D, 0x167, 0x864, 0x86E\n#_03D0FE: db $4A, $8C, $8C, $80 : db $18, $88 ; 0x1354\u20130x1357: 0x84A, 0x18C, 0x88C, 0x880\n#_03D104: db $0C, $6E, $58, $87 : db $98, $88 ; 0x1358\u20130x135B: 0x80C, 0x96E, 0x858, 0x887\n#_03D10A: db $0C, $0C, $0C, $0A : db $99, $99 ; 0x135C\u20130x135F: 0x90C, 0x90C, 0x90C, 0x90A\n#_03D110: db $0C, $8B, $4A, $89 : db $98, $18 ; 0x1360\u20130x1363: 0x80C, 0x98B, 0x84A, 0x189\n#_03D116: db $58, $66, $63, $69 : db $88, $88 ; 0x1364\u20130x1367: 0x858, 0x866, 0x863, 0x869\n#_03D11C: db $52, $6B, $58, $53 : db $88, $88 ; 0x1368\u20130x136B: 0x852, 0x86B, 0x858, 0x853\n#_03D122: db $0C, $8B, $57, $0D : db $98, $89 ; 0x136C\u20130x136F: 0x80C, 0x98B, 0x957, 0x80D\n#_03D128: db $58, $6F, $58, $58 : db $88, $88 ; 0x1370\u20130x1373: 0x858, 0x86F, 0x858, 0x858\n#_03D12E: db $80, $69, $53, $52 : db $88, $88 ; 0x1374\u20130x1377: 0x880, 0x869, 0x853, 0x852\n#_03D134: db $53, $54, $62, $68 : db $88, $88 ; 0x1378\u20130x137B: 0x853, 0x854, 0x862, 0x868\n#_03D13A: db $6D, $65, $50, $6E : db $88, $88 ; 0x137C\u20130x137F: 0x86D, 0x865, 0x850, 0x86E\n#_03D140: db $7F, $50, $51, $1D : db $88, $81 ; 0x1380\u20130x1383: 0x87F, 0x850, 0x151, 0x81D\n#_03D146: db $52, $50, $51, $58 : db $88, $88 ; 0x1384\u20130x1387: 0x852, 0x850, 0x851, 0x858\n#_03D14C: db $6F, $1B, $6A, $52 : db $89, $88 ; 0x1388\u20130x138B: 0x96F, 0x81B, 0x86A, 0x852\n#_03D152: db $8F, $89, $95, $6F : db $88, $88 ; 0x138C\u20130x138F: 0x88F, 0x889, 0x895, 0x86F\n#_03D158: db $4E, $6F, $50, $58 : db $18, $88 ; 0x1390\u20130x1393: 0x84E, 0x16F, 0x850, 0x858\n#_03D15E: db $92, $50, $5E, $52 : db $81, $88 ; 0x1394\u20130x1397: 0x192, 0x850, 0x85E, 0x852\n#_03D164: db $7F, $6E, $8C, $8C : db $88, $88 ; 0x1398\u20130x139B: 0x87F, 0x86E, 0x88C, 0x88C\n#_03D16A: db $56, $54, $80, $8B : db $11, $88 ; 0x139C\u20130x139F: 0x156, 0x154, 0x880, 0x88B\n#_03D170: db $58, $52, $58, $C3 : db $88, $81 ; 0x13A0\u20130x13A3: 0x858, 0x852, 0x158, 0x8C3\n#_03D176: db $26, $2A, $24, $2D : db $12, $12 ; 0x13A4\u20130x13A7: 0x226, 0x12A, 0x224, 0x12D\n#_03D17C: db $2E, $4E, $80, $62 : db $21, $88 ; 0x13A8\u20130x13AB: 0x12E, 0x24E, 0x880, 0x862\n#_03D182: db $54, $56, $0F, $50 : db $88, $98 ; 0x13AC\u20130x13AF: 0x854, 0x856, 0x80F, 0x950\n#_03D188: db $6C, $8B, $80, $67 : db $88, $88 ; 0x13B0\u20130x13B3: 0x86C, 0x88B, 0x880, 0x867\n#_03D18E: db $63, $89, $58, $51 : db $88, $88 ; 0x13B4\u20130x13B7: 0x863, 0x889, 0x858, 0x851\n#_03D194: db $50, $52, $50, $58 : db $88, $88 ; 0x13B8\u20130x13BB: 0x850, 0x852, 0x850, 0x858\n#_03D19A: db $50, $67, $6C, $35 : db $88, $80 ; 0x13BC\u20130x13BF: 0x850, 0x867, 0x06C, 0x835\n#_03D1A0: db $0F, $34, $53, $0D : db $20, $89 ; 0x13C0\u20130x13C3: 0x00F, 0x234, 0x953, 0x80D\n#_03D1A6: db $22, $66, $34, $D5 : db $98, $01 ; 0x13C4\u20130x13C7: 0x822, 0x966, 0x134, 0x0D5\n#_03D1AC: db $26, $19, $34, $63 : db $92, $01 ; 0x13C8\u20130x13CB: 0x226, 0x919, 0x134, 0x063\n#_03D1B2: db $58, $34, $58, $9C : db $10, $83 ; 0x13CC\u20130x13CF: 0x058, 0x134, 0x358, 0x89C\n#_03D1B8: db $34, $5B, $87, $80 : db $01, $88 ; 0x13D0\u20130x13D3: 0x134, 0x05B, 0x887, 0x880\n#_03D1BE: db $34, $2A, $75, $53 : db $09, $18 ; 0x13D4\u20130x13D7: 0x934, 0x02A, 0x875, 0x153\n#_03D1C4: db $DB, $2E, $24, $24 : db $09, $77 ; 0x13D8\u20130x13DB: 0x9DB, 0x02E, 0x724, 0x724\n#_03D1CA: db $53, $30, $34, $6B : db $19, $08 ; 0x13DC\u20130x13DF: 0x953, 0x130, 0x834, 0x06B\n#_03D1D0: db $4A, $3A, $3C, $3D : db $19, $99 ; 0x13E0\u20130x13E3: 0x94A, 0x13A, 0x93C, 0x93D\n#_03D1D6: db $3F, $53, $3B, $34 : db $91, $90 ; 0x13E4\u20130x13E7: 0x13F, 0x953, 0x03B, 0x934\n#_03D1DC: db $47, $49, $34, $58 : db $99, $08 ; 0x13E8\u20130x13EB: 0x947, 0x949, 0x834, 0x058\n#_03D1E2: db $54, $8B, $58, $4A : db $18, $81 ; 0x13EC\u20130x13EF: 0x854, 0x18B, 0x158, 0x84A\n#_03D1E8: db $71, $80, $82, $0D : db $88, $89 ; 0x13F0\u20130x13F3: 0x871, 0x880, 0x982, 0x80D\n#_03D1EE: db $58, $58, $8C, $86 : db $88, $88 ; 0x13F4\u20130x13F7: 0x858, 0x858, 0x88C, 0x886\n#_03D1F4: db $11, $82, $8B, $89 : db $98, $88 ; 0x13F8\u20130x13FB: 0x811, 0x982, 0x88B, 0x889\n#_03D1FA: db $89, $6E, $89, $0C : db $88, $89 ; 0x13FC\u20130x13FF: 0x889, 0x86E, 0x989, 0x80C\n#_03D200: db $8B, $86, $50, $AC : db $88, $87 ; 0x1400\u20130x1403: 0x88B, 0x886, 0x750, 0x8AC\n#_03D206: db $C5, $C6, $C6, $C6 : db $77, $77 ; 0x1404\u20130x1407: 0x7C5, 0x7C6, 0x7C6, 0x7C6\n#_03D20C: db $4D, $DA, $3D, $41 : db $97, $88 ; 0x1408\u20130x140B: 0x74D, 0x9DA, 0x83D, 0x841\n#_03D212: db $46, $D0, $D0, $C6 : db $87, $77 ; 0x140C\u20130x140F: 0x746, 0x8D0, 0x7D0, 0x7C6\n#_03D218: db $C6, $30, $FA, $2C : db $78, $78 ; 0x1410\u20130x1413: 0x8C6, 0x730, 0x8FA, 0x72C\n#_03D21E: db $AF, $C3, $C4, $46 : db $77, $78 ; 0x1414\u20130x1417: 0x7AF, 0x7C3, 0x8C4, 0x746\n#_03D224: db $4E, $D0, $DA, $C6 : db $87, $77 ; 0x1418\u20130x141B: 0x74E, 0x8D0, 0x7DA, 0x7C6\n#_03D22A: db $36, $AC, $C9, $C3 : db $87, $77 ; 0x141C\u20130x141F: 0x736, 0x8AC, 0x7C9, 0x7C3\n#_03D230: db $08, $AC, $C6, $C6 : db $87, $77 ; 0x1420\u20130x1423: 0x708, 0x8AC, 0x7C6, 0x7C6\n#_03D236: db $CC, $4A, $C6, $C6 : db $78, $77 ; 0x1424\u20130x1427: 0x8CC, 0x74A, 0x7C6, 0x7C6\n#_03D23C: db $C6, $F8, $C5, $55 : db $77, $79 ; 0x1428\u20130x142B: 0x7C6, 0x7F8, 0x9C5, 0x755\n#_03D242: db $D7, $D6, $D0, $DA : db $77, $77 ; 0x142C\u20130x142F: 0x7D7, 0x7D6, 0x7D0, 0x7DA\n#_03D248: db $C5, $CC, $C6, $94 : db $77, $77 ; 0x1430\u20130x1433: 0x7C5, 0x7CC, 0x7C6, 0x794\n#_03D24E: db $D7, $97, $D7, $43 : db $77, $78 ; 0x1434\u20130x1437: 0x7D7, 0x797, 0x8D7, 0x743\n#_03D254: db $AC, $D7, $DC, $4E : db $77, $78 ; 0x1438\u20130x143B: 0x7AC, 0x7D7, 0x8DC, 0x74E\n#_03D25A: db $46, $D7, $C2, $D7 : db $87, $77 ; 0x143C\u20130x143F: 0x746, 0x8D7, 0x7C2, 0x7D7\n#_03D260: db $CB, $97, $C5, $10 : db $77, $78 ; 0x1440\u20130x1443: 0x7CB, 0x797, 0x8C5, 0x710\n#_03D266: db $0F, $11, $D7, $DB : db $88, $77 ; 0x1444\u20130x1447: 0x80F, 0x811, 0x7D7, 0x7DB\n#_03D26C: db $AD, $C5, $C6, $C2 : db $77, $77 ; 0x1448\u20130x144B: 0x7AD, 0x7C5, 0x7C6, 0x7C2\n#_03D272: db $C6, $C6, $40, $24 : db $77, $88 ; 0x144C\u20130x144F: 0x7C6, 0x7C6, 0x840, 0x824\n#_03D278: db $CF, $D7, $C5, $4E : db $77, $79 ; 0x1450\u20130x1453: 0x7CF, 0x7D7, 0x9C5, 0x74E\n#_03D27E: db $CF, $EF, $B0, $AD : db $77, $77 ; 0x1454\u20130x1457: 0x7CF, 0x7EF, 0x7B0, 0x7AD\n#_03D284: db $99, $E5, $55, $97 : db $77, $97 ; 0x1458\u20130x145B: 0x799, 0x7E5, 0x755, 0x997\n#_03D28A: db $C4, $A3, $BE, $C2 : db $77, $77 ; 0x145C\u20130x145F: 0x7C4, 0x7A3, 0x7BE, 0x7C2\n#_03D290: db $DB, $4C, $FB, $E2 : db $78, $77 ; 0x1460\u20130x1463: 0x8DB, 0x74C, 0x7FB, 0x7E2\n#_03D296: db $36, $C7, $C5, $C4 : db $07, $77 ; 0x1464\u20130x1467: 0x736, 0x0C7, 0x7C5, 0x7C4\n#_03D29C: db $DA, $E7, $1E, $C7 : db $77, $87 ; 0x1468\u20130x146B: 0x7DA, 0x7E7, 0x71E, 0x8C7\n#_03D2A2: db $C6, $C6, $0F, $C6 : db $77, $27 ; 0x146C\u20130x146F: 0x7C6, 0x7C6, 0x70F, 0x2C6\n#_03D2A8: db $4A, $CA, $D0, $DB : db $87, $77 ; 0x1470\u20130x1473: 0x74A, 0x8CA, 0x7D0, 0x7DB\n#_03D2AE: db $94, $96, $D1, $5A : db $77, $79 ; 0x1474\u20130x1477: 0x794, 0x796, 0x9D1, 0x75A\n#_03D2B4: db $C6, $D0, $D0, $A8 : db $77, $77 ; 0x1478\u20130x147B: 0x7C6, 0x7D0, 0x7D0, 0x7A8\n#_03D2BA: db $08, $B9, $D5, $4E : db $87, $78 ; 0x147C\u20130x147F: 0x708, 0x8B9, 0x8D5, 0x74E\n#_03D2C0: db $36, $F8, $1A, $5B : db $07, $89 ; 0x1480\u20130x1483: 0x736, 0x0F8, 0x91A, 0x85B\n#_03D2C6: db $25, $36, $36, $32 : db $80, $08 ; 0x1484\u20130x1487: 0x025, 0x836, 0x836, 0x032\n#_03D2CC: db $5B, $0D, $23, $DA : db $98, $87 ; 0x1488\u20130x148B: 0x85B, 0x90D, 0x723, 0x8DA\n#_03D2D2: db $BD, $5C, $C6, $50 : db $79, $79 ; 0x148C\u20130x148F: 0x9BD, 0x75C, 0x9C6, 0x750\n#_03D2D8: db $08, $C2, $C6, $C6 : db $87, $77 ; 0x1490\u20130x1493: 0x708, 0x8C2, 0x7C6, 0x7C6\n#_03D2DE: db $C6, $C6, $4E, $F9 : db $77, $87 ; 0x1494\u20130x1497: 0x7C6, 0x7C6, 0x74E, 0x8F9\n#_03D2E4: db $49, $AF, $F0, $DA : db $87, $77 ; 0x1498\u20130x149B: 0x749, 0x8AF, 0x7F0, 0x7DA\n#_03D2EA: db $5B, $AB, $57, $A6 : db $90, $97 ; 0x149C\u20130x149F: 0x05B, 0x9AB, 0x757, 0x9A6\n#_03D2F0: db $1F, $15, $C8, $A4 : db $88, $77 ; 0x14A0\u20130x14A3: 0x81F, 0x815, 0x7C8, 0x7A4\n#_03D2F6: db $F2, $15, $C6, $9F : db $78, $77 ; 0x14A4\u20130x14A7: 0x8F2, 0x715, 0x7C6, 0x79F\n#_03D2FC: db $24, $41, $44, $C6 : db $88, $87 ; 0x14A8\u20130x14AB: 0x824, 0x841, 0x744, 0x8C6\n#_03D302: db $08, $D2, $B6, $21 : db $87, $78 ; 0x14AC\u20130x14AF: 0x708, 0x8D2, 0x8B6, 0x721\n#_03D308: db $D1, $B1, $B0, $AF : db $77, $77 ; 0x14B0\u20130x14B3: 0x7D1, 0x7B1, 0x7B0, 0x7AF\n#_03D30E: db $B1, $D1, $4E, $5B : db $77, $89 ; 0x14B4\u20130x14B7: 0x7B1, 0x7D1, 0x94E, 0x85B\n#_03D314: db $A4, $BF, $BD, $4B : db $77, $78 ; 0x14B8\u20130x14BB: 0x7A4, 0x7BF, 0x8BD, 0x74B\n#_03D31A: db $F3, $C6, $F8, $AE : db $77, $77 ; 0x14BC\u20130x14BF: 0x7F3, 0x7C6, 0x7F8, 0x7AE\n#_03D320: db $DA, $4C, $C2, $F3 : db $78, $77 ; 0x14C0\u20130x14C3: 0x8DA, 0x74C, 0x7C2, 0x7F3\n#_03D326: db $D2, $B6, $21, $C6 : db $77, $87 ; 0x14C4\u20130x14C7: 0x7D2, 0x7B6, 0x721, 0x8C6\n#_03D32C: db $43, $C6, $C3, $61 : db $87, $79 ; 0x14C8\u20130x14CB: 0x743, 0x8C6, 0x9C3, 0x761\n#_03D332: db $1D, $2F, $9A, $C5 : db $88, $77 ; 0x14CC\u20130x14CF: 0x81D, 0x82F, 0x79A, 0x7C5\n#_03D338: db $C6, $34, $2D, $20 : db $78, $88 ; 0x14D0\u20130x14D3: 0x8C6, 0x734, 0x82D, 0x820\n#_03D33E: db $C6, $36, $D0, $DA : db $70, $77 ; 0x14D4\u20130x14D7: 0x0C6, 0x736, 0x7D0, 0x7DA\n#_03D344: db $C6, $E4, $DA, $46 : db $77, $78 ; 0x14D8\u20130x14DB: 0x7C6, 0x7E4, 0x8DA, 0x746\n#_03D34A: db $D0, $D0, $DA, $20 : db $77, $78 ; 0x14DC\u20130x14DF: 0x7D0, 0x7D0, 0x8DA, 0x720\n#_03D350: db $C6, $43, $09, $DA : db $78, $00 ; 0x14E0\u20130x14E3: 0x8C6, 0x743, 0x009, 0x0DA\n#_03D356: db $64, $C4, $66, $66 : db $90, $99 ; 0x14E4\u20130x14E7: 0x064, 0x9C4, 0x966, 0x966\n#_03D35C: db $64, $C4, $66, $66 : db $90, $99 ; 0x14E8\u20130x14EB: 0x064, 0x9C4, 0x966, 0x966\n#_03D362: db $DA, $63, $6B, $CA : db $01, $70 ; 0x14EC\u20130x14EF: 0x1DA, 0x063, 0x06B, 0x7CA\n#_03D368: db $C9, $68, $66, $6C : db $09, $99 ; 0x14F0\u20130x14F3: 0x9C9, 0x068, 0x966, 0x96C\n#_03D36E: db $6D, $DF, $CA, $68 : db $90, $09 ; 0x14F4\u20130x14F7: 0x06D, 0x9DF, 0x9CA, 0x068\n#_03D374: db $70, $71, $72, $6D : db $99, $99 ; 0x14F8\u20130x14FB: 0x970, 0x971, 0x972, 0x96D\n#_03D37A: db $C4, $CF, $4E, $8B : db $00, $00 ; 0x14FC\u20130x14FF: 0x0C4, 0x0CF, 0x04E, 0x08B\n#_03D380: db $34, $E6, $C9, $C9 : db $00, $00 ; 0x1500\u20130x1503: 0x034, 0x0E6, 0x0C9, 0x0C9\n#_03D386: db $AD, $6D, $C8, $CE : db $21, $00 ; 0x1504\u20130x1507: 0x1AD, 0x26D, 0x0C8, 0x0CE\n#_03D38C: db $03, $34, $37, $34 : db $30, $20 ; 0x1508\u20130x150B: 0x003, 0x334, 0x037, 0x234\n#_03D392: db $62, $75, $6C, $DC : db $19, $10 ; 0x150C\u20130x150F: 0x962, 0x175, 0x06C, 0x1DC\n#_03D398: db $DC, $34, $34, $4E : db $00, $01 ; 0x1510\u20130x1513: 0x0DC, 0x034, 0x134, 0x04E\n#_03D39E: db $91, $4F, $39, $85 : db $81, $18 ; 0x1514\u20130x1517: 0x191, 0x84F, 0x839, 0x185\n#_03D3A4: db $41, $A4, $76, $78 : db $10, $92 ; 0x1518\u20130x151B: 0x041, 0x1A4, 0x276, 0x978\n#_03D3AA: db $78, $89, $85, $39 : db $92, $81 ; 0x151C\u20130x151F: 0x278, 0x989, 0x185, 0x839\n#_03D3B0: db $4B, $39, $94, $64 : db $11, $82 ; 0x1520\u20130x1523: 0x14B, 0x139, 0x294, 0x864\n#_03D3B6: db $7C, $77, $20, $7F : db $99, $29 ; 0x1524\u20130x1527: 0x97C, 0x977, 0x920, 0x27F\n#_03D3BC: db $80, $83, $84, $78 : db $92, $92 ; 0x1528\u20130x152B: 0x280, 0x983, 0x284, 0x978\n#_03D3C2: db $64, $85, $83, $20 : db $29, $22 ; 0x152C\u20130x152F: 0x964, 0x285, 0x283, 0x220\n#_03D3C8: db $87, $89, $8A, $65 : db $99, $92 ; 0x1530\u20130x1533: 0x987, 0x989, 0x28A, 0x965\n#_03D3CE: db $20, $64, $8C, $8A : db $22, $92 ; 0x1534\u20130x1537: 0x220, 0x264, 0x28C, 0x98A\n#_03D3D4: db $8D, $65, $86, $7C : db $22, $99 ; 0x1538\u20130x153B: 0x28D, 0x265, 0x986, 0x97C\n#_03D3DA: db $90, $65, $76, $89 : db $92, $92 ; 0x153C\u20130x153F: 0x290, 0x965, 0x276, 0x989\n#_03D3E0: db $94, $92, $27, $78 : db $92, $12 ; 0x1540\u20130x1543: 0x294, 0x992, 0x227, 0x178\n#_03D3E6: db $82, $78, $8D, $70 : db $92, $98 ; 0x1544\u20130x1547: 0x282, 0x978, 0x88D, 0x970\n#_03D3EC: db $7E, $78, $78, $77 : db $92, $29 ; 0x1548\u20130x154B: 0x27E, 0x978, 0x978, 0x277\n#_03D3F2: db $4F, $81, $80, $89 : db $12, $22 ; 0x154C\u20130x154F: 0x24F, 0x181, 0x280, 0x289\n#_03D3F8: db $7F, $80, $88, $97 : db $22, $29 ; 0x1550\u20130x1553: 0x27F, 0x280, 0x988, 0x297\n#_03D3FE: db $89, $80, $9B, $78 : db $22, $92 ; 0x1554\u20130x1557: 0x289, 0x280, 0x29B, 0x978\n#_03D404: db $78, $99, $8D, $78 : db $29, $22 ; 0x1558\u20130x155B: 0x978, 0x299, 0x28D, 0x278\n#_03D40A: db $99, $7D, $78, $65 : db $99, $22 ; 0x155C\u20130x155F: 0x999, 0x97D, 0x278, 0x265\n#_03D410: db $78, $78, $81, $89 : db $22, $92 ; 0x1560\u20130x1563: 0x278, 0x278, 0x281, 0x989\n#_03D416: db $9E, $78, $80, $91 : db $92, $99 ; 0x1564\u20130x1567: 0x29E, 0x978, 0x980, 0x991\n#_03D41C: db $2F, $86, $36, $4B : db $21, $01 ; 0x1568\u20130x156B: 0x12F, 0x286, 0x136, 0x04B\n#_03D422: db $99, $7F, $83, $64 : db $99, $22 ; 0x156C\u20130x156F: 0x999, 0x97F, 0x283, 0x264\n#_03D428: db $81, $A1, $78, $83 : db $29, $22 ; 0x1570\u20130x1573: 0x981, 0x2A1, 0x278, 0x283\n#_03D42E: db $80, $78, $65, $80 : db $22, $22 ; 0x1574\u20130x1577: 0x280, 0x278, 0x265, 0x280\n#_03D434: db $89, $8C, $83, $78 : db $22, $92 ; 0x1578\u20130x157B: 0x289, 0x28C, 0x283, 0x978\n#_03D43A: db $7C, $CD, $CD, $CE : db $22, $22 ; 0x157C\u20130x157F: 0x27C, 0x2CD, 0x2CD, 0x2CE\n#_03D440: db $B7, $CD, $E4, $FB : db $22, $22 ; 0x1580\u20130x1583: 0x2B7, 0x2CD, 0x2E4, 0x2FB\n#_03D446: db $CD, $CD, $CD, $FA : db $22, $22 ; 0x1584\u20130x1587: 0x2CD, 0x2CD, 0x2CD, 0x2FA\n#_03D44C: db $CD, $CD, $C7, $D4 : db $22, $22 ; 0x1588\u20130x158B: 0x2CD, 0x2CD, 0x2C7, 0x2D4\n#_03D452: db $3A, $CD, $CD, $F6 : db $22, $22 ; 0x158C\u20130x158F: 0x23A, 0x2CD, 0x2CD, 0x2F6\n#_03D458: db $DF, $CD, $D8, $F9 : db $22, $22 ; 0x1590\u20130x1593: 0x2DF, 0x2CD, 0x2D8, 0x2F9\n#_03D45E: db $9E, $CD, $DE, $C4 : db $32, $20 ; 0x1594\u20130x1597: 0x29E, 0x3CD, 0x0DE, 0x2C4\n#_03D464: db $FB, $D6, $FB, $A4 : db $22, $29 ; 0x1598\u20130x159B: 0x2FB, 0x2D6, 0x9FB, 0x2A4\n#_03D46A: db $37, $01, $36, $34 : db $21, $00 ; 0x159C\u20130x159F: 0x137, 0x201, 0x036, 0x034\n#_03D470: db $C4, $9E, $C6, $C8 : db $03, $22 ; 0x15A0\u20130x15A3: 0x3C4, 0x09E, 0x2C6, 0x2C8\n#_03D476: db $34, $36, $E9, $36 : db $00, $20 ; 0x15A4\u20130x15A7: 0x034, 0x036, 0x0E9, 0x236\n#_03D47C: db $6D, $D3, $24, $AB : db $12, $10 ; 0x15A8\u20130x15AB: 0x26D, 0x1D3, 0x024, 0x1AB\n#_03D482: db $9B, $72, $73, $63 : db $31, $11 ; 0x15AC\u20130x15AF: 0x19B, 0x372, 0x173, 0x163\n#_03D488: db $24, $25, $24, $69 : db $11, $11 ; 0x15B0\u20130x15B3: 0x124, 0x125, 0x124, 0x169\n#_03D48E: db $5F, $AD, $CE, $67 : db $10, $01 ; 0x15B4\u20130x15B7: 0x05F, 0x1AD, 0x1CE, 0x067\n#_03D494: db $CE, $34, $4F, $E9 : db $00, $81 ; 0x15B8\u20130x15BB: 0x0CE, 0x034, 0x14F, 0x8E9\n#_03D49A: db $A3, $5A, $2A, $34 : db $07, $30 ; 0x15BC\u20130x15BF: 0x7A3, 0x05A, 0x02A, 0x334\n#_03D4A0: db $95, $88, $87, $86 : db $00, $00 ; 0x15C0\u20130x15C3: 0x095, 0x088, 0x087, 0x086\n#_03D4A6: db $78, $5A, $34, $34 : db $00, $00 ; 0x15C4\u20130x15C7: 0x078, 0x05A, 0x034, 0x034\n#_03D4AC: db $88, $36, $36, $87 : db $00, $00 ; 0x15C8\u20130x15CB: 0x088, 0x036, 0x036, 0x087\n#_03D4B2: db $71, $71, $02, $2C : db $00, $03 ; 0x15CC\u20130x15CF: 0x071, 0x071, 0x302, 0x02C\n#_03D4B8: db $00, $32, $7C, $88 : db $03, $10 ; 0x15D0\u20130x15D3: 0x300, 0x032, 0x07C, 0x188\n#_03D4BE: db $87, $86, $88, $AD : db $00, $00 ; 0x15D4\u20130x15D7: 0x087, 0x086, 0x088, 0x0AD\n#_03D4C4: db $E7, $98, $C9, $C9 : db $13, $00 ; 0x15D8\u20130x15DB: 0x3E7, 0x198, 0x0C9, 0x0C9\n#_03D4CA: db $34, $34, $34, $36 : db $00, $00 ; 0x15DC\u20130x15DF: 0x034, 0x034, 0x034, 0x036\n#_03D4D0: db $A2, $FC, $FE, $76 : db $33, $36 ; 0x15E0\u20130x15E3: 0x3A2, 0x3FC, 0x6FE, 0x376\n#_03D4D6: db $F0, $02, $A7, $05 : db $04, $94 ; 0x15E4\u20130x15E7: 0x4F0, 0x002, 0x4A7, 0x905\n#_03D4DC: db $F1, $49, $48, $FF : db $57, $70 ; 0x15E8\u20130x15EB: 0x7F1, 0x549, 0x048, 0x7FF\n#_03D4E2: db $7C, $79, $34, $08 : db $11, $01 ; 0x15EC\u20130x15EF: 0x17C, 0x179, 0x134, 0x008\n#_03D4E8: db $A5, $FF, $A5, $AD : db $01, $13 ; 0x15F0\u20130x15F3: 0x1A5, 0x0FF, 0x3A5, 0x1AD\n#_03D4EE: db $01, $34, $34, $AD : db $10, $00 ; 0x15F4\u20130x15F7: 0x001, 0x134, 0x034, 0x0AD\n#_03D4F4: db $34, $34, $E1, $E3 : db $00, $55 ; 0x15F8\u20130x15FB: 0x034, 0x034, 0x5E1, 0x5E3\n#_03D4FA: db $E5, $34, $34, $35 : db $50, $00 ; 0x15FC\u20130x15FF: 0x0E5, 0x534, 0x034, 0x035\n#_03D500: db $34, $35, $75, $34 : db $00, $90 ; 0x1600\u20130x1603: 0x034, 0x035, 0x075, 0x934\n#_03D506: db $4B, $37, $A5, $AC : db $12, $00 ; 0x1604\u20130x1607: 0x24B, 0x137, 0x0A5, 0x0AC\n#_03D50C: db $96, $82, $35, $93 : db $30, $03 ; 0x1608\u20130x160B: 0x096, 0x382, 0x335, 0x093\n#_03D512: db $36, $34, $34, $35 : db $00, $00 ; 0x160C\u20130x160F: 0x036, 0x034, 0x034, 0x035\n#_03D518: db $71, $6C, $34, $E3 : db $01, $00 ; 0x1610\u20130x1613: 0x171, 0x06C, 0x034, 0x0E3\n#_03D51E: db $36, $34, $34, $34 : db $00, $00 ; 0x1614\u20130x1617: 0x036, 0x034, 0x034, 0x034\n#_03D524: db $A1, $34, $EF, $F6 : db $00, $11 ; 0x1618\u20130x161B: 0x0A1, 0x034, 0x1EF, 0x1F6\n#_03D52A: db $34, $A0, $9E, $F5 : db $00, $01 ; 0x161C\u20130x161F: 0x034, 0x0A0, 0x19E, 0x0F5\n#_03D530: db $A3, $A5, $A6, $A5 : db $00, $00 ; 0x1620\u20130x1623: 0x0A3, 0x0A5, 0x0A6, 0x0A5\n#_03D536: db $A5, $34, $4F, $53 : db $00, $11 ; 0x1624\u20130x1627: 0x0A5, 0x034, 0x14F, 0x153\n#_03D53C: db $A9, $45, $45, $86 : db $93, $31 ; 0x1628\u20130x162B: 0x3A9, 0x945, 0x145, 0x386\n#_03D542: db $6A, $DD, $78, $A9 : db $10, $12 ; 0x162C\u20130x162F: 0x06A, 0x1DD, 0x278, 0x1A9\n#_03D548: db $86, $86, $A9, $65 : db $11, $03 ; 0x1630\u20130x1633: 0x186, 0x186, 0x3A9, 0x065\n#_03D54E: db $34, $6F, $A9, $6F : db $03, $03 ; 0x1634\u20130x1637: 0x334, 0x06F, 0x3A9, 0x06F\n#_03D554: db $34, $34, $9C, $AD : db $00, $00 ; 0x1638\u20130x163B: 0x034, 0x034, 0x09C, 0x0AD\n#_03D55A: db $9A, $9C, $0F, $AC : db $00, $22 ; 0x163C\u20130x163F: 0x09A, 0x09C, 0x20F, 0x2AC\n#_03D560: db $34, $AD, $AD, $AF : db $09, $99 ; 0x1640\u20130x1643: 0x934, 0x0AD, 0x9AD, 0x9AF\n#_03D566: db $34, $AF, $AC, $34 : db $09, $90 ; 0x1644\u20130x1647: 0x934, 0x0AF, 0x0AC, 0x934\n#_03D56C: db $C9, $B3, $36, $36 : db $09, $00 ; 0x1648\u20130x164B: 0x9C9, 0x0B3, 0x036, 0x036\n#_03D572: db $B3, $36, $34, $7E : db $90, $03 ; 0x164C\u20130x164F: 0x0B3, 0x936, 0x334, 0x07E\n#_03D578: db $34, $34, $AF, $B3 : db $00, $99 ; 0x1650\u20130x1653: 0x034, 0x034, 0x9AF, 0x9B3\n#_03D57E: db $AF, $34, $34, $87 : db $90, $03 ; 0x1654\u20130x1657: 0x0AF, 0x934, 0x334, 0x087\n#_03D584: db $87, $EE, $39, $F2 : db $31, $22 ; 0x1658\u20130x165B: 0x187, 0x3EE, 0x239, 0x2F2\n#_03D58A: db $F4, $34, $7D, $DB : db $23, $30 ; 0x165C\u20130x165F: 0x3F4, 0x234, 0x07D, 0x3DB\n#_03D590: db $84, $E3, $0A, $E1 : db $10, $10 ; 0x1660\u20130x1663: 0x084, 0x1E3, 0x00A, 0x1E1\n#_03D596: db $E1, $34, $0F, $AB : db $03, $29 ; 0x1664\u20130x1667: 0x3E1, 0x034, 0x90F, 0x2AB\n#_03D59C: db $AC, $AD, $AC, $AD : db $99, $99 ; 0x1668\u20130x166B: 0x9AC, 0x9AD, 0x9AC, 0x9AD\n#_03D5A2: db $AD, $28, $E1, $E1 : db $92, $00 ; 0x166C\u20130x166F: 0x2AD, 0x928, 0x0E1, 0x0E1\n#_03D5A8: db $B2, $7B, $7E, $26 : db $96, $32 ; 0x1670\u20130x1673: 0x6B2, 0x97B, 0x27E, 0x326\n#_03D5AE: db $B3, $AC, $39, $34 : db $99, $23 ; 0x1674\u20130x1677: 0x9B3, 0x9AC, 0x339, 0x234\n#_03D5B4: db $34, $AC, $AA, $AA : db $09, $99 ; 0x1678\u20130x167B: 0x934, 0x0AC, 0x9AA, 0x9AA\n#_03D5BA: db $AC, $86, $AC, $34 : db $96, $90 ; 0x167C\u20130x167F: 0x6AC, 0x986, 0x0AC, 0x934\n#_03D5C0: db $B3, $87, $B3, $AE : db $96, $99 ; 0x1680\u20130x1683: 0x6B3, 0x987, 0x9B3, 0x9AE\n#_03D5C6: db $B3, $34, $34, $B1 : db $90, $09 ; 0x1684\u20130x1687: 0x0B3, 0x934, 0x934, 0x0B1\n#_03D5CC: db $B1, $B3, $AD, $AD : db $99, $99 ; 0x1688\u20130x168B: 0x9B1, 0x9B3, 0x9AD, 0x9AD\n#_03D5D2: db $DA, $DA, $AC, $DA : db $00, $90 ; 0x168C\u20130x168F: 0x0DA, 0x0DA, 0x0AC, 0x9DA\n#_03D5D8: db $80, $B3, $7E, $A7 : db $69, $33 ; 0x1690\u20130x1693: 0x980, 0x6B3, 0x37E, 0x3A7\n#_03D5DE: db $36, $36, $36, $80 : db $00, $06 ; 0x1694\u20130x1697: 0x036, 0x036, 0x636, 0x080\n#_03D5E4: db $28, $28, $B3, $28 : db $22, $92 ; 0x1698\u20130x169B: 0x228, 0x228, 0x2B3, 0x928\n#_03D5EA: db $B3, $7E, $A1, $B3 : db $93, $09 ; 0x169C\u20130x169F: 0x3B3, 0x97E, 0x9A1, 0x0B3\n#_03D5F0: db $B3, $34, $34, $B0 : db $90, $09 ; 0x16A0\u20130x16A3: 0x0B3, 0x934, 0x934, 0x0B0\n#_03D5F6: db $7E, $86, $34, $34 : db $30, $00 ; 0x16A4\u20130x16A7: 0x07E, 0x386, 0x034, 0x034\n#_03D5FC: db $FC, $FE, $76, $02 : db $33, $64 ; 0x16A8\u20130x16AB: 0x3FC, 0x3FE, 0x476, 0x602\n#_03D602: db $04, $05, $F9, $FF : db $44, $00 ; 0x16AC\u20130x16AF: 0x404, 0x405, 0x0F9, 0x0FF\n#_03D608: db $34, $CD, $D1, $B8 : db $02, $02 ; 0x16B0\u20130x16B3: 0x234, 0x0CD, 0x2D1, 0x0B8\n#_03D60E: db $B8, $E6, $E6, $37 : db $22, $22 ; 0x16B4\u20130x16B7: 0x2B8, 0x2E6, 0x2E6, 0x237\n#_03D614: db $B8, $DC, $D1, $D1 : db $20, $20 ; 0x16B8\u20130x16BB: 0x0B8, 0x2DC, 0x0D1, 0x2D1\n#_03D61A: db $53, $E6, $D0, $B8 : db $12, $02 ; 0x16BC\u20130x16BF: 0x253, 0x1E6, 0x2D0, 0x0B8\n#_03D620: db $56, $C8, $DC, $37 : db $10, $02 ; 0x16C0\u20130x16C3: 0x056, 0x1C8, 0x2DC, 0x037\n#_03D626: db $DB, $B5, $FD, $25 : db $09, $25 ; 0x16C4\u20130x16C7: 0x9DB, 0x0B5, 0x5FD, 0x225\n#_03D62C: db $FC, $3A, $34, $5C : db $22, $01 ; 0x16C8\u20130x16CB: 0x2FC, 0x23A, 0x134, 0x05C\n#_03D632: db $E6, $EC, $32, $63 : db $22, $21 ; 0x16CC\u20130x16CF: 0x2E6, 0x2EC, 0x132, 0x263\n#_03D638: db $07, $FE, $34, $5B : db $32, $01 ; 0x16D0\u20130x16D3: 0x207, 0x3FE, 0x134, 0x05B\n#_03D63E: db $61, $E6, $32, $00 : db $12, $21 ; 0x16D4\u20130x16D7: 0x261, 0x1E6, 0x132, 0x200\n#_03D644: db $66, $20, $CE, $16 : db $15, $03 ; 0x16D8\u20130x16DB: 0x566, 0x120, 0x3CE, 0x016\n#_03D64A: db $E6, $15, $B8, $FE : db $23, $92 ; 0x16DC\u20130x16DF: 0x3E6, 0x215, 0x2B8, 0x9FE\n#_03D650: db $00, $1C, $E7, $53 : db $12, $11 ; 0x16E0\u20130x16E3: 0x200, 0x11C, 0x1E7, 0x153\n#_03D656: db $20, $C9, $61, $8E : db $50, $17 ; 0x16E4\u20130x16E7: 0x020, 0x5C9, 0x761, 0x18E\n#_03D65C: db $E6, $20, $C4, $ED : db $25, $01 ; 0x16E8\u20130x16EB: 0x5E6, 0x220, 0x1C4, 0x0ED\n#_03D662: db $DB, $92, $EF, $08 : db $07, $67 ; 0x16EC\u20130x16EF: 0x7DB, 0x092, 0x7EF, 0x608\n#_03D668: db $C4, $D4, $CA, $6D : db $00, $01 ; 0x16F0\u20130x16F3: 0x0C4, 0x0D4, 0x1CA, 0x06D\n#_03D66E: db $C4, $85, $C8, $6D : db $11, $01 ; 0x16F4\u20130x16F7: 0x1C4, 0x185, 0x1C8, 0x06D\n#_03D674: db $29, $9F, $32, $36 : db $33, $22 ; 0x16F8\u20130x16FB: 0x329, 0x39F, 0x232, 0x236\n#_03D67A: db $F2, $1A, $E6, $1F : db $13, $23 ; 0x16FC\u20130x16FF: 0x3F2, 0x11A, 0x3E6, 0x21F\n#_03D680: db $1C, $71, $36, $25 : db $11, $22 ; 0x1700\u20130x1703: 0x11C, 0x171, 0x236, 0x225\n#_03D686: db $51, $51, $D5, $07 : db $77, $11 ; 0x1704\u20130x1707: 0x751, 0x751, 0x1D5, 0x107\n#_03D68C: db $AD, $34, $4B, $C0 : db $63, $19 ; 0x1708\u20130x170B: 0x3AD, 0x634, 0x94B, 0x1C0\n#_03D692: db $66, $68, $39, $70 : db $33, $13 ; 0x170C\u20130x170F: 0x366, 0x368, 0x339, 0x170\n#_03D698: db $72, $8E, $34, $34 : db $30, $00 ; 0x1710\u20130x1713: 0x072, 0x38E, 0x034, 0x034\n#_03D69E: db $F6, $6E, $FE, $00 : db $36, $34 ; 0x1714\u20130x1717: 0x6F6, 0x36E, 0x4FE, 0x300\n#_03D6A4: db $D2, $D2, $D2, $0E : db $33, $34 ; 0x1718\u20130x171B: 0x3D2, 0x3D2, 0x4D2, 0x30E\n#_03D6AA: db $C8, $C8, $C9, $CA : db $99, $93 ; 0x171C\u20130x171F: 0x9C8, 0x9C8, 0x3C9, 0x9CA\n#_03D6B0: db $CA, $CC, $CC, $CD : db $99, $99 ; 0x1720\u20130x1723: 0x9CA, 0x9CC, 0x9CC, 0x9CD\n#_03D6B6: db $34, $D0, $34, $1C : db $09, $04 ; 0x1724\u20130x1727: 0x934, 0x0D0, 0x434, 0x01C\n#_03D6BC: db $D2, $D8, $1C, $DA : db $99, $49 ; 0x1728\u20130x172B: 0x9D2, 0x9D8, 0x91C, 0x4DA\n#_03D6C2: db $DB, $34, $34, $34 : db $90, $00 ; 0x172C\u20130x172F: 0x0DB, 0x934, 0x034, 0x034\n#_03D6C8: db $F6, $DD, $DE, $DD : db $39, $99 ; 0x1730\u20130x1733: 0x9F6, 0x3DD, 0x9DE, 0x9DD\n#_03D6CE: db $DD, $DE, $F6, $E0 : db $99, $39 ; 0x1734\u20130x1737: 0x9DD, 0x9DE, 0x9F6, 0x3E0\n#_03D6D4: db $E2, $D2, $29, $C9 : db $93, $43 ; 0x1738\u20130x173B: 0x3E2, 0x9D2, 0x329, 0x4C9\n#_03D6DA: db $34, $E3, $E7, $1C : db $09, $94 ; 0x173C\u20130x173F: 0x934, 0x0E3, 0x4E7, 0x91C\n#_03D6E0: db $EB, $34, $34, $87 : db $90, $00 ; 0x1740\u20130x1743: 0x0EB, 0x934, 0x034, 0x087\n#_03D6E6: db $86, $27, $34, $F8 : db $01, $33 ; 0x1744\u20130x1747: 0x186, 0x027, 0x334, 0x3F8\n#_03D6EC: db $FB, $27, $6B, $34 : db $31, $63 ; 0x1748\u20130x174B: 0x1FB, 0x327, 0x36B, 0x634\n#_03D6F2: db $27, $36, $27, $15 : db $10, $14 ; 0x174C\u20130x174F: 0x027, 0x136, 0x427, 0x115\n#_03D6F8: db $34, $34, $34, $34 : db $03, $03 ; 0x1750\u20130x1753: 0x334, 0x034, 0x334, 0x034\n#_03D6FE: db $0B, $34, $36, $27 : db $13, $01 ; 0x1754\u20130x1757: 0x30B, 0x134, 0x136, 0x027\n#_03D704: db $EC, $EC, $EC, $EC : db $99, $99 ; 0x1758\u20130x175B: 0x9EC, 0x9EC, 0x9EC, 0x9EC\n#_03D70A: db $EC, $EC, $EC, $EE : db $99, $99 ; 0x175C\u20130x175F: 0x9EC, 0x9EC, 0x9EC, 0x9EE\n#_03D710: db $F0, $F2, $F4, $F6 : db $99, $99 ; 0x1760\u20130x1763: 0x9F0, 0x9F2, 0x9F4, 0x9F6\n#_03D716: db $F7, $ED, $EF, $F1 : db $99, $99 ; 0x1764\u20130x1767: 0x9F7, 0x9ED, 0x9EF, 0x9F1\n#_03D71C: db $F3, $F5, $C5, $F8 : db $99, $59 ; 0x1768\u20130x176B: 0x9F3, 0x9F5, 0x9C5, 0x5F8\n#_03D722: db $F9, $F3, $F9, $FA : db $99, $99 ; 0x176C\u20130x176F: 0x9F9, 0x9F3, 0x9F9, 0x9FA\n#_03D728: db $F3, $F4, $F5, $F4 : db $99, $99 ; 0x1770\u20130x1773: 0x9F3, 0x9F4, 0x9F5, 0x9F4\n#_03D72E: db $F8, $F5, $FE, $F8 : db $99, $99 ; 0x1774\u20130x1777: 0x9F8, 0x9F5, 0x9FE, 0x9F8\n#_03D734: db $00, $01, $F8, $F3 : db $AA, $99 ; 0x1778\u20130x177B: 0xA00, 0xA01, 0x9F8, 0x9F3\n#_03D73A: db $F3, $07, $F3, $03 : db $9A, $9A ; 0x177C\u20130x177F: 0xAF3, 0x907, 0xAF3, 0x903\n#_03D740: db $08, $06, $F4, $F8 : db $AA, $99 ; 0x1780\u20130x1783: 0xA08, 0xA06, 0x9F4, 0x9F8\n#_03D746: db $F9, $03, $0C, $0E : db $9A, $AA ; 0x1784\u20130x1787: 0xAF9, 0x903, 0xA0C, 0xA0E\n#_03D74C: db $06, $F4, $FE, $12 : db $A9, $9A ; 0x1788\u20130x178B: 0x906, 0xAF4, 0xAFE, 0x912\n#_03D752: db $FA, $FE, $FC, $F3 : db $99, $99 ; 0x178C\u20130x178F: 0x9FA, 0x9FE, 0x9FC, 0x9F3\n#_03D758: db $02, $14, $15, $17 : db $AA, $AA ; 0x1790\u20130x1793: 0xA02, 0xA14, 0xA15, 0xA17\n#_03D75E: db $17, $17, $F8, $02 : db $AA, $9A ; 0x1794\u20130x1797: 0xA17, 0xA17, 0xAF8, 0x902\n#_03D764: db $04, $19, $03, $03 : db $AA, $AA ; 0x1798\u20130x179B: 0xA04, 0xA19, 0xA03, 0xA03\n#_03D76A: db $03, $F4, $F6, $07 : db $A9, $9A ; 0x179C\u20130x179F: 0x903, 0xAF4, 0xAF6, 0x907\n#_03D770: db $07, $1A, $F6, $F9 : db $AA, $99 ; 0x17A0\u20130x17A3: 0xA07, 0xA1A, 0x9F6, 0x9F9\n#_03D776: db $FA, $F3, $FF, $00 : db $99, $9A ; 0x17A4\u20130x17A7: 0x9FA, 0x9F3, 0xAFF, 0x900\n#_03D77C: db $F6, $1B, $F0, $00 : db $9A, $9A ; 0x17A8\u20130x17AB: 0xAF6, 0x91B, 0xAF0, 0x900\n#_03D782: db $FE, $F8, $1D, $04 : db $99, $AA ; 0x17AC\u20130x17AF: 0x9FE, 0x9F8, 0xA1D, 0xA04\n#_03D788: db $08, $1F, $20, $03 : db $AA, $AA ; 0x17B0\u20130x17B3: 0xA08, 0xA1F, 0xA20, 0xA03\n#_03D78E: db $02, $0B, $26, $06 : db $AA, $AA ; 0x17B4\u20130x17B7: 0xA02, 0xA0B, 0xA26, 0xA06\n#_03D794: db $08, $28, $2A, $03 : db $AA, $AA ; 0x17B8\u20130x17BB: 0xA08, 0xA28, 0xA2A, 0xA03\n#_03D79A: db $03, $03, $F5, $07 : db $AA, $9A ; 0x17BC\u20130x17BF: 0xA03, 0xA03, 0xAF5, 0x907\n#_03D7A0: db $10, $F9, $10, $F9 : db $A9, $A9 ; 0x17C0\u20130x17C3: 0x910, 0xAF9, 0x910, 0xAF9\n#_03D7A6: db $FC, $12, $F9, $12 : db $9A, $9A ; 0x17C4\u20130x17C7: 0xAFC, 0x912, 0xAF9, 0x912\n#_03D7AC: db $12, $EC, $EC, $FE : db $A9, $99 ; 0x17C8\u20130x17CB: 0x912, 0xAEC, 0x9EC, 0x9FE\n#_03D7B2: db $2F, $31, $F0, $2C : db $AA, $9A ; 0x17CC\u20130x17CF: 0xA2F, 0xA31, 0xAF0, 0x92C\n#_03D7B8: db $EC, $EC, $EC, $EC : db $99, $99 ; 0x17D0\u20130x17D3: 0x9EC, 0x9EC, 0x9EC, 0x9EC\n#_03D7BE: db $FC, $30, $33, $FE : db $9A, $A9 ; 0x17D4\u20130x17D7: 0xAFC, 0x930, 0x933, 0xAFE\n#_03D7C4: db $33, $2F, $C5, $2E : db $AA, $5A ; 0x17D8\u20130x17DB: 0xA33, 0xA2F, 0xAC5, 0x52E\n#_03D7CA: db $30, $32, $2B, $2D : db $AA, $AA ; 0x17DC\u20130x17DF: 0xA30, 0xA32, 0xA2B, 0xA2D\n#_03D7D0: db $34, $33, $FE, $30 : db $AA, $9A ; 0x17E0\u20130x17E3: 0xA34, 0xA33, 0xAFE, 0x930\n#_03D7D6: db $F6, $2E, $33, $2F : db $9A, $AA ; 0x17E4\u20130x17E7: 0xAF6, 0x92E, 0xA33, 0xA2F\n#_03D7DC: db $2E, $16, $14, $30 : db $AA, $AA ; 0x17E8\u20130x17EB: 0xA2E, 0xA16, 0xA14, 0xA30\n#_03D7E2: db $FE, $F6, $0D, $14 : db $99, $AA ; 0x17EC\u20130x17EF: 0x9FE, 0x9F6, 0xA0D, 0xA14\n#_03D7E8: db $14, $FC, $FC, $12 : db $A9, $9A ; 0x17F0\u20130x17F3: 0x914, 0xAFC, 0xAFC, 0x912\n#_03D7EE: db $F6, $12, $07, $2F : db $9A, $AA ; 0x17F4\u20130x17F7: 0xAF6, 0x912, 0xA07, 0xA2F\n#_03D7F4: db $2E, $05, $03, $36 : db $AA, $AA ; 0x17F8\u20130x17FB: 0xA2E, 0xA05, 0xA03, 0xA36\n#_03D7FA: db $33, $F6, $09, $03 : db $A9, $AA ; 0x17FC\u20130x17FF: 0x933, 0xAF6, 0xA09, 0xA03\n#_03D800: db $0C, $36, $F6, $F6 : db $AA, $99 ; 0x1800\u20130x1803: 0xA0C, 0xA36, 0x9F6, 0x9F6\n#_03D806: db $11, $FE, $F0, $F0 : db $A9, $99 ; 0x1804\u20130x1807: 0x911, 0xAFE, 0x9F0, 0x9F0\n#_03D80C: db $00, $35, $2F, $33 : db $AA, $AA ; 0x1808\u20130x180B: 0xA00, 0xA35, 0xA2F, 0xA33\n#_03D812: db $03, $03, $03, $0C : db $AA, $AA ; 0x180C\u20130x180F: 0xA03, 0xA03, 0xA03, 0xA0C\n#_03D818: db $03, $36, $2E, $07 : db $AA, $AA ; 0x1810\u20130x1813: 0xA03, 0xA36, 0xA2E, 0xA07\n#_03D81E: db $FB, $07, $07, $10 : db $9A, $AA ; 0x1814\u20130x1817: 0xAFB, 0x907, 0xA07, 0xA10\n#_03D824: db $F9, $F9, $F9, $07 : db $99, $9A ; 0x1818\u20130x181B: 0x9F9, 0x9F9, 0xAF9, 0x907\n#_03D82A: db $07, $2E, $30, $34 : db $AA, $A0 ; 0x181C\u20130x181F: 0xA07, 0xA2E, 0x030, 0xA34\n#_03D830: db $34, $CE, $79, $34 : db $00, $10 ; 0x1820\u20130x1823: 0x034, 0x0CE, 0x079, 0x134\n#_03D836: db $79, $1B, $79, $34 : db $12, $10 ; 0x1824\u20130x1827: 0x279, 0x11B, 0x079, 0x134\n#_03D83C: db $36, $CE, $A5, $FF : db $00, $11 ; 0x1828\u20130x182B: 0x036, 0x0CE, 0x1A5, 0x1FF\n#_03D842: db $37, $0B, $37, $A5 : db $A3, $A1 ; 0x182C\u20130x182F: 0x337, 0xA0B, 0x137, 0xAA5\n#_03D848: db $FF, $34, $34, $A5 : db $10, $01 ; 0x1830\u20130x1833: 0x0FF, 0x134, 0x134, 0x0A5\n#_03D84E: db $3A, $34, $2D, $3F : db $A0, $12 ; 0x1834\u20130x1837: 0x03A, 0xA34, 0x22D, 0x13F\n#_03D854: db $9F, $C9, $C9, $C9 : db $00, $00 ; 0x1838\u20130x183B: 0x09F, 0x0C9, 0x0C9, 0x0C9\n#_03D85A: db $C9, $40, $40, $41 : db $0A, $AA ; 0x183C\u20130x183F: 0xAC9, 0x040, 0xA40, 0xA41\n#_03D860: db $42, $E6, $44, $46 : db $A2, $AA ; 0x1840\u20130x1843: 0x242, 0xAE6, 0xA44, 0xA46\n#_03D866: db $E6, $E6, $EC, $4D : db $22, $2A ; 0x1844\u20130x1847: 0x2E6, 0x2E6, 0xAEC, 0x24D\n#_03D86C: db $4E, $E6, $E6, $E6 : db $A2, $22 ; 0x1848\u20130x184B: 0x24E, 0xAE6, 0x2E6, 0x2E6\n#_03D872: db $50, $52, $44, $5B : db $AA, $AA ; 0x184C\u20130x184F: 0xA50, 0xA52, 0xA44, 0xA5B\n#_03D878: db $5C, $5E, $5F, $46 : db $AA, $AA ; 0x1850\u20130x1853: 0xA5C, 0xA5E, 0xA5F, 0xA46\n#_03D87E: db $60, $62, $68, $4F : db $AA, $AA ; 0x1854\u20130x1857: 0xA60, 0xA62, 0xA68, 0xA4F\n#_03D884: db $50, $52, $E6, $E6 : db $AA, $22 ; 0x1858\u20130x185B: 0xA50, 0xA52, 0x2E6, 0x2E6\n#_03D88A: db $69, $6B, $44, $5B : db $AA, $AA ; 0x185C\u20130x185F: 0xA69, 0xA6B, 0xA44, 0xA5B\n#_03D890: db $6C, $62, $4D, $55 : db $AA, $AA ; 0x1860\u20130x1863: 0xA6C, 0xA62, 0xA4D, 0xA55\n#_03D896: db $57, $5B, $6C, $46 : db $AA, $AA ; 0x1864\u20130x1867: 0xA57, 0xA5B, 0xA6C, 0xA46\n#_03D89C: db $45, $45, $6A, $6A : db $AA, $AA ; 0x1868\u20130x186B: 0xA45, 0xA45, 0xA6A, 0xA6A\n#_03D8A2: db $45, $45, $70, $49 : db $AA, $AA ; 0x186C\u20130x186F: 0xA45, 0xA45, 0xA70, 0xA49\n#_03D8A8: db $46, $60, $71, $45 : db $AA, $AA ; 0x1870\u20130x1873: 0xA46, 0xA60, 0xA71, 0xA45\n#_03D8AE: db $45, $6E, $6A, $46 : db $AA, $AA ; 0x1874\u20130x1877: 0xA45, 0xA6E, 0xA6A, 0xA46\n#_03D8B4: db $4D, $4E, $4E, $4F : db $AA, $AA ; 0x1878\u20130x187B: 0xA4D, 0xA4E, 0xA4E, 0xA4F\n#_03D8BA: db $29, $E6, $44, $6A : db $32, $AA ; 0x187C\u20130x187F: 0x229, 0x3E6, 0xA44, 0xA6A\n#_03D8C0: db $45, $45, $45, $63 : db $AA, $AA ; 0x1880\u20130x1883: 0xA45, 0xA45, 0xA45, 0xA63\n#_03D8C6: db $67, $46, $E6, $6A : db $AA, $2A ; 0x1884\u20130x1887: 0xA67, 0xA46, 0xAE6, 0x26A\n#_03D8CC: db $59, $6A, $6E, $44 : db $AA, $AA ; 0x1888\u20130x188B: 0xA59, 0xA6A, 0xA6E, 0xA44\n#_03D8D2: db $54, $44, $60, $45 : db $AA, $AA ; 0x188C\u20130x188F: 0xA54, 0xA44, 0xA60, 0xA45\n#_03D8D8: db $6E, $6E, $45, $75 : db $AA, $AA ; 0x1890\u20130x1893: 0xA6E, 0xA6E, 0xA45, 0xA75\n#_03D8DE: db $74, $4C, $47, $48 : db $AA, $AA ; 0x1894\u20130x1897: 0xA74, 0xA4C, 0xA47, 0xA48\n#_03D8E4: db $6F, $44, $46, $44 : db $AA, $AA ; 0x1898\u20130x189B: 0xA6F, 0xA44, 0xA46, 0xA44\n#_03D8EA: db $6A, $6A, $59, $6A : db $AA, $AA ; 0x189C\u20130x189F: 0xA6A, 0xA6A, 0xA59, 0xA6A\n#_03D8F0: db $6A, $63, $46, $E6 : db $AA, $A2 ; 0x18A0\u20130x18A3: 0xA6A, 0xA63, 0x246, 0xAE6\n#_03D8F6: db $58, $5A, $47, $65 : db $AA, $AA ; 0x18A4\u20130x18A7: 0xA58, 0xA5A, 0xA47, 0xA65\n#_03D8FC: db $48, $49, $3F, $4E : db $AA, $AA ; 0x18A8\u20130x18AB: 0xA48, 0xA49, 0xA3F, 0xA4E\n#_03D902: db $4E, $E6, $77, $77 : db $A2, $AA ; 0x18AC\u20130x18AF: 0x24E, 0xAE6, 0xA77, 0xA77\n#_03D908: db $E6, $E6, $48, $48 : db $22, $AA ; 0x18B0\u20130x18B3: 0x2E6, 0x2E6, 0xA48, 0xA48\n#_03D90E: db $73, $4E, $7B, $7C : db $AA, $AA ; 0x18B4\u20130x18B7: 0xA73, 0xA4E, 0xA7B, 0xA7C\n#_03D914: db $7D, $4E, $4E, $4E : db $AA, $AA ; 0x18B8\u20130x18BB: 0xA7D, 0xA4E, 0xA4E, 0xA4E\n#_03D91A: db $45, $40, $7B, $7C : db $AA, $AA ; 0x18BC\u20130x18BF: 0xA45, 0xA40, 0xA7B, 0xA7C\n#_03D920: db $7C, $7C, $7D, $C9 : db $AA, $A0 ; 0x18C0\u20130x18C3: 0xA7C, 0xA7C, 0x07D, 0xAC9\n#_03D926: db $C9, $7C, $FE, $45 : db $0A, $2A ; 0x18C4\u20130x18C7: 0xAC9, 0x07C, 0xAFE, 0x245\n#_03D92C: db $E6, $46, $81, $82 : db $2A, $AA ; 0x18C8\u20130x18CB: 0xAE6, 0x246, 0xA81, 0xA82\n#_03D932: db $7C, $7C, $7C, $83 : db $AA, $AA ; 0x18CC\u20130x18CF: 0xA7C, 0xA7C, 0xA7C, 0xA83\n#_03D938: db $81, $FE, $69, $6B : db $A2, $AA ; 0x18D0\u20130x18D3: 0x281, 0xAFE, 0xA69, 0xA6B\n#_03D93E: db $8E, $85, $87, $91 : db $AA, $AA ; 0x18D4\u20130x18D7: 0xA8E, 0xA85, 0xA87, 0xA91\n#_03D944: db $86, $85, $8F, $FE : db $AA, $A2 ; 0x18D8\u20130x18DB: 0xA86, 0xA85, 0x28F, 0xAFE\n#_03D94A: db $53, $45, $E6, $99 : db $AA, $2A ; 0x18DC\u20130x18DF: 0xA53, 0xA45, 0xAE6, 0x299\n#_03D950: db $97, $94, $9B, $93 : db $AA, $AA ; 0x18E0\u20130x18E3: 0xA97, 0xA94, 0xA9B, 0xA93\n#_03D956: db $95, $99, $FE, $63 : db $AA, $2A ; 0x18E4\u20130x18E7: 0xA95, 0xA99, 0xAFE, 0x263\n#_03D95C: db $E6, $A3, $9C, $A0 : db $2A, $AA ; 0x18E8\u20130x18EB: 0xAE6, 0x2A3, 0xA9C, 0xAA0\n#_03D962: db $A4, $A0, $9A, $A3 : db $AA, $AA ; 0x18EC\u20130x18EF: 0xAA4, 0xAA0, 0xA9A, 0xAA3\n#_03D968: db $FE, $E6, $E6, $A8 : db $22, $2A ; 0x18F0\u20130x18F3: 0x2FE, 0x2E6, 0xAE6, 0x2A8\n#_03D96E: db $A9, $9B, $A9, $AA : db $AA, $AA ; 0x18F4\u20130x18F7: 0xAA9, 0xA9B, 0xAA9, 0xAAA\n#_03D974: db $A3, $45, $5C, $45 : db $AA, $AA ; 0x18F8\u20130x18FB: 0xAA3, 0xA45, 0xA5C, 0xA45\n#_03D97A: db $54, $56, $4E, $AB : db $AA, $AA ; 0x18FC\u20130x18FF: 0xA54, 0xA56, 0xA4E, 0xAAB\n#_03D980: db $45, $E6, $E6, $48 : db $A2, $2A ; 0x1900\u20130x1903: 0x245, 0xAE6, 0xAE6, 0x248\n#_03D986: db $48, $65, $48, $AC : db $AA, $AA ; 0x1904\u20130x1907: 0xA48, 0xA65, 0xA48, 0xAAC\n#_03D98C: db $6A, $E6, $45, $AD : db $A2, $AA ; 0x1908\u20130x190B: 0x26A, 0xAE6, 0xA45, 0xAAD\n#_03D992: db $AD, $AD, $AC, $45 : db $AA, $AA ; 0x190C\u20130x190F: 0xAAD, 0xAAD, 0xAAC, 0xA45\n#_03D998: db $4E, $4E, $4E, $55 : db $AA, $AA ; 0x1910\u20130x1913: 0xA4E, 0xA4E, 0xA4E, 0xA55\n#_03D99E: db $57, $AC, $48, $48 : db $AA, $AA ; 0x1914\u20130x1917: 0xA57, 0xAAC, 0xA48, 0xA48\n#_03D9A4: db $45, $45, $73, $64 : db $AA, $AA ; 0x1918\u20130x191B: 0xA45, 0xA45, 0xA73, 0xA64\n#_03D9AA: db $66, $AF, $E6, $A3 : db $AA, $2A ; 0x191C\u20130x191F: 0xA66, 0xAAF, 0xAE6, 0x2A3\n#_03D9B0: db $AD, $A3, $E6, $63 : db $AA, $2A ; 0x1920\u20130x1923: 0xAAD, 0xAA3, 0xAE6, 0x263\n#_03D9B6: db $48, $67, $A3, $E6 : db $AA, $A2 ; 0x1924\u20130x1927: 0xA48, 0xA67, 0x2A3, 0xAE6\n#_03D9BC: db $4C, $A3, $AD, $A3 : db $AA, $AA ; 0x1928\u20130x192B: 0xA4C, 0xAA3, 0xAAD, 0xAA3\n#_03D9C2: db $46, $77, $44, $A3 : db $AA, $AA ; 0x192C\u20130x192F: 0xA46, 0xA77, 0xA44, 0xAA3\n#_03D9C8: db $FE, $4E, $4E, $53 : db $2A, $AA ; 0x1930\u20130x1933: 0xAFE, 0x24E, 0xA4E, 0xA53\n#_03D9CE: db $AB, $45, $48, $48 : db $AA, $AA ; 0x1934\u20130x1937: 0xAAB, 0xA45, 0xA48, 0xA48\n#_03D9D4: db $AF, $A3, $FE, $34 : db $AA, $20 ; 0x1938\u20130x193B: 0xAAF, 0xAA3, 0x0FE, 0x234\n#_03D9DA: db $34, $34, $C0, $B6 : db $00, $9A ; 0x193C\u20130x193F: 0x034, 0x034, 0xAC0, 0x9B6\n#_03D9E0: db $B7, $B8, $BA, $F6 : db $AA, $A3 ; 0x1940\u20130x1943: 0xAB7, 0xAB8, 0x3BA, 0xAF6\n#_03D9E6: db $BE, $BF, $06, $BD : db $AA, $4A ; 0x1944\u20130x1947: 0xABE, 0xABF, 0xA06, 0x4BD\n#_03D9EC: db $35, $C9, $C3, $34 : db $4A, $50 ; 0x1948\u20130x194B: 0xA35, 0x4C9, 0x0C3, 0x534\n#_03D9F2: db $36, $F4, $F7, $CD : db $00, $0A ; 0x194C\u20130x194F: 0x036, 0x0F4, 0xAF7, 0x0CD\n#_03D9F8: db $EC, $D1, $C6, $FF : db $0A, $A0 ; 0x1950\u20130x1953: 0xAEC, 0x0D1, 0x0C6, 0xAFF\n#_03D9FE: db $26, $26, $34, $34 : db $44, $00 ; 0x1954\u20130x1957: 0x426, 0x426, 0x034, 0x034\n#_03DA04: db $34, $34, $F7, $F9 : db $00, $33 ; 0x1958\u20130x195B: 0x034, 0x034, 0x3F7, 0x3F9\n#_03DA0A: db $FA, $D2, $B7, $FF : db $3A, $A0 ; 0x195C\u20130x195F: 0xAFA, 0x3D2, 0x0B7, 0xAFF\n#_03DA10: db $02, $CF, $B7, $B7 : db $4A, $AA ; 0x1960\u20130x1963: 0xA02, 0x4CF, 0xAB7, 0xAB7\n#_03DA16: db $EC, $F9, $FD, $FF : db $00, $00 ; 0x1964\u20130x1967: 0x0EC, 0x0F9, 0x0FD, 0x0FF\n#_03DA1C: db $D5, $34, $D5, $34 : db $A0, $A3 ; 0x1968\u20130x196B: 0x0D5, 0xA34, 0x3D5, 0xA34\n#_03DA22: db $1B, $38, $38, $CF : db $23, $33 ; 0x196C\u20130x196F: 0x31B, 0x238, 0x338, 0x3CF\n#_03DA28: db $D0, $D1, $34, $D0 : db $33, $03 ; 0x1970\u20130x1973: 0x3D0, 0x3D1, 0x334, 0x0D0\n#_03DA2E: db $34, $C9, $E3, $35 : db $03, $90 ; 0x1974\u20130x1977: 0x334, 0x0C9, 0x0E3, 0x935\n#_03DA34: db $D0, $E1, $29, $34 : db $A0, $40 ; 0x1978\u20130x197B: 0x0D0, 0xAE1, 0x029, 0x434\n#_03DA3A: db $69, $C9, $36, $D7 : db $33, $0A ; 0x197C\u20130x197F: 0x369, 0x3C9, 0xA36, 0x0D7\n#_03DA40: db $BD, $BF, $8E, $76 : db $A9, $03 ; 0x1980\u20130x1983: 0x9BD, 0xABF, 0x38E, 0x076\n#_03DA46: db $C9, $CA, $C3, $34 : db $39, $30 ; 0x1984\u20130x1987: 0x9C9, 0x3CA, 0x0C3, 0x334\n#_03DA4C: db $C3, $01, $BF, $34 : db $51, $90 ; 0x1988\u20130x198B: 0x1C3, 0x501, 0x0BF, 0x934\n#_03DA52: db $BF, $B0, $DC, $DD : db $9A, $AA ; 0x198C\u20130x198F: 0xABF, 0x9B0, 0xADC, 0xADD\n#_03DA58: db $EC, $E3, $E5, $34 : db $0A, $A4 ; 0x1990\u20130x1993: 0xAEC, 0x0E3, 0x4E5, 0xA34\n#_03DA5E: db $C8, $35, $34, $3F : db $A4, $02 ; 0x1994\u20130x1997: 0x4C8, 0xA35, 0x234, 0x03F\n#_03DA64: db $84, $E3, $34, $9E : db $10, $30 ; 0x1998\u20130x199B: 0x084, 0x1E3, 0x034, 0x39E\n#_03DA6A: db $3D, $AD, $3D, $34 : db $20, $20 ; 0x199C\u20130x199F: 0x03D, 0x2AD, 0x03D, 0x234\n#_03DA70: db $F8, $17, $0C, $03 : db $9A, $AA ; 0x19A0\u20130x19A3: 0xAF8, 0x917, 0xA0C, 0xA03\n#_03DA76: db $0C, $16, $06, $06 : db $AA, $AA ; 0x19A4\u20130x19A7: 0xA0C, 0xA16, 0xA06, 0xA06\n#_03DA7C: db $F3, $0C, $7E, $10 : db $9A, $3A ; 0x19A8\u20130x19AB: 0xAF3, 0x90C, 0xA7E, 0x310\n#_03DA82: db $FE, $FE, $34, $7E : db $99, $03 ; 0x19AC\u20130x19AF: 0x9FE, 0x9FE, 0x334, 0x07E\n#_03DA88: db $F2, $E1, $7E, $10 : db $00, $3A ; 0x19B0\u20130x19B3: 0x0F2, 0x0E1, 0xA7E, 0x310\n#_03DA8E: db $F2, $95, $61, $38 : db $00, $13 ; 0x19B4\u20130x19B7: 0x0F2, 0x095, 0x361, 0x138\n#_03DA94: db $27, $38, $34, $A5 : db $33, $00 ; 0x19B8\u20130x19BB: 0x327, 0x338, 0x034, 0x0A5\n#_03DA9A: db $15, $04, $04, $04 : db $AA, $AA ; 0x19BC\u20130x19BF: 0xA15, 0xA04, 0xA04, 0xA04\n#_03DAA0: db $18, $14, $33, $19 : db $AA, $AA ; 0x19C0\u20130x19C3: 0xA18, 0xA14, 0xA33, 0xA19\n#_03DAA6: db $04, $1A, $10, $10 : db $AA, $AA ; 0x19C4\u20130x19C7: 0xA04, 0xA1A, 0xA10, 0xA10\n#_03DAAC: db $34, $82, $7E, $7D : db $03, $33 ; 0x19C8\u20130x19CB: 0x334, 0x082, 0x37E, 0x37D\n#_03DAB2: db $82, $9D, $0B, $7E : db $32, $13 ; 0x19CC\u20130x19CF: 0x282, 0x39D, 0x30B, 0x17E\n#_03DAB8: db $34, $1E, $4F, $4F : db $06, $11 ; 0x19D0\u20130x19D3: 0x634, 0x01E, 0x14F, 0x14F\n#_03DABE: db $28, $38, $1E, $E1 : db $33, $10 ; 0x19D4\u20130x19D7: 0x328, 0x338, 0x01E, 0x1E1\n#_03DAC4: db $1E, $C6, $FF, $C6 : db $10, $10 ; 0x19D8\u20130x19DB: 0x01E, 0x1C6, 0x0FF, 0x1C6\n#_03DACA: db $C6, $C6, $C6, $CA : db $00, $00 ; 0x19DC\u20130x19DF: 0x0C6, 0x0C6, 0x0C6, 0x0CA\n#_03DAD0: db $76, $FE, $CE, $A3 : db $12, $20 ; 0x19E0\u20130x19E3: 0x276, 0x1FE, 0x0CE, 0x2A3\n#_03DAD6: db $ED, $C6, $81, $7F : db $A0, $77 ; 0x19E4\u20130x19E7: 0x0ED, 0xAC6, 0x781, 0x77F\n#_03DADC: db $C7, $76, $71, $EE : db $01, $02 ; 0x19E8\u20130x19EB: 0x1C7, 0x076, 0x271, 0x0EE\n#_03DAE2: db $63, $0D, $CC, $C6 : db $12, $00 ; 0x19EC\u20130x19EF: 0x263, 0x10D, 0x0CC, 0x0C6\n#_03DAE8: db $CA, $37, $F5, $34 : db $02, $20 ; 0x19F0\u20130x19F3: 0x2CA, 0x037, 0x0F5, 0x234\n#_03DAEE: db $EC, $E5, $1E, $D5 : db $A1, $20 ; 0x19F4\u20130x19F7: 0x1EC, 0xAE5, 0x01E, 0x2D5\n#_03DAF4: db $CC, $C6, $EE, $C6 : db $00, $A0 ; 0x19F8\u20130x19FB: 0x0CC, 0x0C6, 0x0EE, 0xAC6\n#_03DAFA: db $E9, $7F, $37, $41 : db $11, $21 ; 0x19FC\u20130x19FF: 0x1E9, 0x17F, 0x137, 0x241\n#_03DB00: db $A9, $A9, $CC, $C6 : db $00, $00 ; 0x1A00\u20130x1A03: 0x0A9, 0x0A9, 0x0CC, 0x0C6\n#_03DB06: db $D5, $CE, $C6, $09 : db $02, $01 ; 0x1A04\u20130x1A07: 0x2D5, 0x0CE, 0x1C6, 0x009\n#_03DB0C: db $05, $CC, $34, $85 : db $10, $03 ; 0x1A08\u20130x1A0B: 0x005, 0x1CC, 0x334, 0x085\n#_03DB12: db $E6, $85, $81, $F1 : db $2A, $AA ; 0x1A0C\u20130x1A0F: 0xAE6, 0x285, 0xA81, 0xAF1\n#_03DB18: db $86, $85, $E6, $E6 : db $AA, $22 ; 0x1A10\u20130x1A13: 0xA86, 0xA85, 0x2E6, 0x2E6\n#_03DB1E: db $EC, $E6, $E6, $92 : db $22, $2A ; 0x1A14\u20130x1A17: 0x2EC, 0x2E6, 0xAE6, 0x292\n#_03DB24: db $94, $F5, $F6, $93 : db $AA, $AA ; 0x1A18\u20130x1A1B: 0xA94, 0xAF5, 0xAF6, 0xA93\n#_03DB2A: db $92, $EC, $4A, $A3 : db $A2, $AA ; 0x1A1C\u20130x1A1F: 0x292, 0xAEC, 0xA4A, 0xAA3\n#_03DB30: db $A3, $4A, $A3, $A3 : db $AA, $AA ; 0x1A20\u20130x1A23: 0xAA3, 0xA4A, 0xAA3, 0xAA3\n#_03DB36: db $4A, $4A, $4D, $4E : db $AA, $AA ; 0x1A24\u20130x1A27: 0xA4A, 0xA4A, 0xA4D, 0xA4E\n#_03DB3C: db $4B, $E6, $A3, $E6 : db $A2, $A2 ; 0x1A28\u20130x1A2B: 0x24B, 0xAE6, 0x2A3, 0xAE6\n#_03DB42: db $77, $AD, $E6, $E6 : db $AA, $22 ; 0x1A2C\u20130x1A2F: 0xA77, 0xAAD, 0x2E6, 0x2E6\n#_03DB48: db $A3, $EC, $65, $67 : db $A2, $AA ; 0x1A30\u20130x1A33: 0x2A3, 0xAEC, 0xA65, 0xA67\n#_03DB4E: db $E6, $4F, $A3, $E6 : db $2A, $A2 ; 0x1A34\u20130x1A37: 0xAE6, 0x24F, 0x2A3, 0xAE6\n#_03DB54: db $77, $AD, $E6, $E6 : db $AA, $22 ; 0x1A38\u20130x1A3B: 0xA77, 0xAAD, 0x2E6, 0x2E6\n#_03DB5A: db $A3, $E6, $A3, $44 : db $A2, $AA ; 0x1A3C\u20130x1A3F: 0x2A3, 0xAE6, 0xAA3, 0xA44\n#_03DB60: db $4A, $A3, $4A, $A3 : db $AA, $AA ; 0x1A40\u20130x1A43: 0xA4A, 0xAA3, 0xA4A, 0xAA3\n#_03DB66: db $E6, $46, $46, $44 : db $2A, $AA ; 0x1A44\u20130x1A47: 0xAE6, 0x246, 0xA46, 0xA44\n#_03DB6C: db $F9, $48, $65, $66 : db $AA, $AA ; 0x1A48\u20130x1A4B: 0xAF9, 0xA48, 0xA65, 0xA66\n#_03DB72: db $48, $20, $A5, $87 : db $A2, $17 ; 0x1A4C\u20130x1A4F: 0x248, 0xA20, 0x7A5, 0x187\n#_03DB78: db $A5, $4D, $4F, $E6 : db $1A, $A2 ; 0x1A50\u20130x1A53: 0xAA5, 0x14D, 0x24F, 0xAE6\n#_03DB7E: db $A3, $A3, $A3, $44 : db $AA, $AA ; 0x1A54\u20130x1A57: 0xAA3, 0xAA3, 0xAA3, 0xA44\n#_03DB84: db $F9, $6A, $34, $77 : db $61, $0A ; 0x1A58\u20130x1A5B: 0x1F9, 0x66A, 0xA34, 0x077\n#_03DB8A: db $35, $44, $4A, $A3 : db $0A, $AA ; 0x1A5C\u20130x1A5F: 0xA35, 0x044, 0xA4A, 0xAA3\n#_03DB90: db $4A, $EC, $A5, $1A : db $A2, $12 ; 0x1A60\u20130x1A63: 0x24A, 0xAEC, 0x2A5, 0x11A\n#_03DB96: db $A3, $AD, $A3, $34 : db $AA, $A0 ; 0x1A64\u20130x1A67: 0xAA3, 0xAAD, 0x0A3, 0xA34\n#_03DB9C: db $44, $E6, $79, $5B : db $A2, $11 ; 0x1A68\u20130x1A6B: 0x244, 0xAE6, 0x179, 0x15B\n#_03DBA2: db $A3, $AD, $34, $47 : db $AA, $0A ; 0x1A6C\u20130x1A6F: 0xAA3, 0xAAD, 0xA34, 0x047\n#_03DBA8: db $49, $4A, $A3, $4A : db $AA, $AA ; 0x1A70\u20130x1A73: 0xA49, 0xA4A, 0xAA3, 0xA4A\n#_03DBAE: db $E6, $E6, $EC, $79 : db $22, $21 ; 0x1A74\u20130x1A77: 0x2E6, 0x2E6, 0x1EC, 0x279\n#_03DBB4: db $A3, $A3, $AD, $A5 : db $AA, $A1 ; 0x1A78\u20130x1A7B: 0xAA3, 0xAA3, 0x1AD, 0xAA5\n#_03DBBA: db $79, $A3, $A3, $35 : db $1A, $A0 ; 0x1A7C\u20130x1A7F: 0xA79, 0x1A3, 0x0A3, 0xA35\n#_03DBC0: db $1A, $D5, $1A, $D5 : db $21, $21 ; 0x1A80\u20130x1A83: 0x11A, 0x2D5, 0x11A, 0x2D5\n#_03DBC6: db $E6, $4D, $4F, $4E : db $2A, $AA ; 0x1A84\u20130x1A87: 0xAE6, 0x24D, 0xA4F, 0xA4E\n#_03DBCC: db $AB, $6D, $E6, $AE : db $AA, $2A ; 0x1A88\u20130x1A8B: 0xAAB, 0xA6D, 0xAE6, 0x2AE\n#_03DBD2: db $C5, $48, $08, $21 : db $0A, $77 ; 0x1A8C\u20130x1A8F: 0xAC5, 0x048, 0x708, 0x721\n#_03DBD8: db $F9, $D5, $FB, $4E : db $60, $AA ; 0x1A90\u20130x1A93: 0x0F9, 0x6D5, 0xAFB, 0xA4E\n#_03DBDE: db $74, $E6, $4D, $E6 : db $A2, $A2 ; 0x1A94\u20130x1A97: 0x274, 0xAE6, 0x24D, 0xAE6\n#_03DBE4: db $A5, $C4, $A5, $A5 : db $11, $11 ; 0x1A98\u20130x1A9B: 0x1A5, 0x1C4, 0x1A5, 0x1A5\n#_03DBEA: db $D5, $45, $6A, $76 : db $0A, $AA ; 0x1A9C\u20130x1A9F: 0xAD5, 0x045, 0xA6A, 0xA76\n#_03DBF0: db $6A, $45, $E6, $47 : db $AA, $2A ; 0x1AA0\u20130x1AA3: 0xA6A, 0xA45, 0xAE6, 0x247\n#_03DBF6: db $C4, $E8, $FB, $A5 : db $16, $11 ; 0x1AA4\u20130x1AA7: 0x6C4, 0x1E8, 0x1FB, 0x1A5\n#_03DBFC: db $44, $AC, $46, $F9 : db $AA, $A6 ; 0x1AA8\u20130x1AAB: 0xA44, 0xAAC, 0x646, 0xAF9\n#_03DC02: db $F9, $FA, $79, $0B : db $66, $12 ; 0x1AAC\u20130x1AAF: 0x6F9, 0x6FA, 0x279, 0x10B\n#_03DC08: db $E6, $3F, $AC, $A5 : db $6A, $A1 ; 0x1AB0\u20130x1AB3: 0xAE6, 0x63F, 0x1AC, 0xAA5\n#_03DC0E: db $A5, $A4, $A5, $08 : db $10, $07 ; 0x1AB4\u20130x1AB7: 0x0A5, 0x1A4, 0x7A5, 0x008\n#_03DC14: db $A5, $43, $34, $A3 : db $16, $00 ; 0x1AB8\u20130x1ABB: 0x6A5, 0x143, 0x034, 0x0A3\n#_03DC1A: db $AC, $A4, $4D, $34 : db $A0, $60 ; 0x1ABC\u20130x1ABF: 0x0AC, 0xAA4, 0x04D, 0x634\n#_03DC20: db $10, $A5, $AC, $9F : db $21, $A0 ; 0x1AC0\u20130x1AC3: 0x110, 0x2A5, 0x0AC, 0xA9F\n#_03DC26: db $F3, $F5, $F0, $77 : db $11, $17 ; 0x1AC4\u20130x1AC7: 0x1F3, 0x1F5, 0x7F0, 0x177\n#_03DC2C: db $44, $AC, $75, $E6 : db $AA, $72 ; 0x1AC8\u20130x1ACB: 0xA44, 0xAAC, 0x275, 0x7E6\n#_03DC32: db $FA, $AD, $F7, $D5 : db $A0, $10 ; 0x1ACC\u20130x1ACF: 0x0FA, 0xAAD, 0x0F7, 0x1D5\n#_03DC38: db $CE, $CE, $C5, $AA : db $00, $00 ; 0x1AD0\u20130x1AD3: 0x0CE, 0x0CE, 0x0C5, 0x0AA\n#_03DC3E: db $65, $65, $65, $5B : db $11, $11 ; 0x1AD4\u20130x1AD7: 0x165, 0x165, 0x165, 0x15B\n#_03DC44: db $CE, $06, $07, $38 : db $01, $13 ; 0x1AD8\u20130x1ADB: 0x1CE, 0x006, 0x307, 0x138\n#_03DC4A: db $38, $34, $36, $89 : db $33, $00 ; 0x1ADC\u20130x1ADF: 0x338, 0x334, 0x036, 0x089\n#_03DC50: db $34, $0F, $34, $E7 : db $02, $00 ; 0x1AE0\u20130x1AE3: 0x234, 0x00F, 0x034, 0x0E7\n#_03DC56: db $E6, $35, $F2, $89 : db $25, $00 ; 0x1AE4\u20130x1AE7: 0x5E6, 0x235, 0x0F2, 0x089\n#_03DC5C: db $EC, $34, $F2, $34 : db $20, $00 ; 0x1AE8\u20130x1AEB: 0x0EC, 0x234, 0x0F2, 0x034\n#_03DC62: db $E7, $71, $89, $0B : db $10, $01 ; 0x1AEC\u20130x1AEF: 0x0E7, 0x171, 0x189, 0x00B\n#_03DC68: db $9A, $1E, $9D, $34 : db $00, $00 ; 0x1AF0\u20130x1AF3: 0x09A, 0x01E, 0x09D, 0x034\n#_03DC6E: db $F7, $36, $39, $34 : db $50, $20 ; 0x1AF4\u20130x1AF7: 0x0F7, 0x536, 0x039, 0x234\n#_03DC74: db $89, $39, $98, $2E : db $02, $34 ; 0x1AF8\u20130x1AFB: 0x289, 0x039, 0x498, 0x32E\n#_03DC7A: db $84, $E3, $E3, $9E : db $10, $00 ; 0x1AFC\u20130x1AFF: 0x084, 0x1E3, 0x0E3, 0x09E\n#_03DC80: db $7D, $34, $3E, $84 : db $30, $23 ; 0x1B00\u20130x1B03: 0x07D, 0x334, 0x33E, 0x284\n#_03DC86: db $36, $FE, $9A, $01 : db $03, $0B ; 0x1B04\u20130x1B07: 0x336, 0x0FE, 0xB9A, 0x001\n#_03DC8C: db $38, $34, $7E, $34 : db $30, $30 ; 0x1B08\u20130x1B0B: 0x038, 0x334, 0x07E, 0x334\n#_03DC92: db $1C, $DE, $AE, $E7 : db $00, $00 ; 0x1B0C\u20130x1B0F: 0x01C, 0x0DE, 0x0AE, 0x0E7\n#_03DC98: db $95, $9C, $71, $9A : db $00, $00 ; 0x1B10\u20130x1B13: 0x095, 0x09C, 0x071, 0x09A\n#_03DC9E: db $B0, $DA, $DA, $34 : db $00, $00 ; 0x1B14\u20130x1B17: 0x0B0, 0x0DA, 0x0DA, 0x034\n#_03DCA4: db $E1, $34, $89, $9A : db $00, $00 ; 0x1B18\u20130x1B1B: 0x0E1, 0x034, 0x089, 0x09A\n#_03DCAA: db $71, $95, $71, $0D : db $00, $01 ; 0x1B1C\u20130x1B1F: 0x071, 0x095, 0x171, 0x00D\n#_03DCB0: db $E2, $9A, $36, $71 : db $00, $00 ; 0x1B20\u20130x1B23: 0x0E2, 0x09A, 0x036, 0x071\n#_03DCB6: db $95, $DE, $E7, $34 : db $00, $00 ; 0x1B24\u20130x1B27: 0x095, 0x0DE, 0x0E7, 0x034\n#_03DCBC: db $35, $E7, $34, $B0 : db $00, $00 ; 0x1B28\u20130x1B2B: 0x035, 0x0E7, 0x034, 0x0B0\n#_03DCC2: db $34, $B9, $F1, $35 : db $00, $00 ; 0x1B2C\u20130x1B2F: 0x034, 0x0B9, 0x0F1, 0x035\n#_03DCC8: db $5C, $5E, $5E, $69 : db $11, $11 ; 0x1B30\u20130x1B33: 0x15C, 0x15E, 0x15E, 0x169\n#_03DCCE: db $32, $34, $33, $34 : db $20, $20 ; 0x1B34\u20130x1B37: 0x032, 0x234, 0x033, 0x234\n#_03DCD4: db $8E, $76, $34, $34 : db $01, $00 ; 0x1B38\u20130x1B3B: 0x18E, 0x076, 0x034, 0x034\n#_03DCDA: db $34, $A3, $A5, $AC : db $00, $00 ; 0x1B3C\u20130x1B3F: 0x034, 0x0A3, 0x0A5, 0x0AC\n#_03DCE0: db $35, $02, $9F, $34 : db $02, $00 ; 0x1B40\u20130x1B43: 0x235, 0x002, 0x09F, 0x034\n#_03DCE6: db $AD, $AC, $62, $FD : db $00, $11 ; 0x1B44\u20130x1B47: 0x0AD, 0x0AC, 0x162, 0x1FD\n#_03DCEC: db $A5, $A6, $34, $AC : db $00, $00 ; 0x1B48\u20130x1B4B: 0x0A5, 0x0A6, 0x034, 0x0AC\n#_03DCF2: db $62, $07, $40, $34 : db $11, $60 ; 0x1B4C\u20130x1B4F: 0x162, 0x107, 0x040, 0x634\n#_03DCF8: db $34, $35, $DA, $AD : db $00, $00 ; 0x1B50\u20130x1B53: 0x034, 0x035, 0x0DA, 0x0AD\n#_03DCFE: db $FF, $36, $A3, $FD : db $10, $01 ; 0x1B54\u20130x1B57: 0x0FF, 0x136, 0x1A3, 0x0FD\n#_03DD04: db $16, $FF, $A4, $EE : db $21, $01 ; 0x1B58\u20130x1B5B: 0x116, 0x2FF, 0x1A4, 0x0EE\n#_03DD0A: db $5C, $C4, $34, $DA : db $11, $00 ; 0x1B5C\u20130x1B5F: 0x15C, 0x1C4, 0x034, 0x0DA\n#_03DD10: db $E2, $34, $CE, $F2 : db $00, $00 ; 0x1B60\u20130x1B63: 0x0E2, 0x034, 0x0CE, 0x0F2\n#_03DD16: db $74, $02, $02, $ED : db $1B, $41 ; 0x1B64\u20130x1B67: 0xB74, 0x102, 0x102, 0x4ED\n#_03DD1C: db $FB, $FF, $34, $38 : db $11, $03 ; 0x1B68\u20130x1B6B: 0x1FB, 0x1FF, 0x334, 0x038\n#_03DD22: db $71, $F9, $FB, $FD : db $00, $00 ; 0x1B6C\u20130x1B6F: 0x071, 0x0F9, 0x0FB, 0x0FD\n#_03DD28: db $A3, $11, $9F, $E4 : db $02, $02 ; 0x1B70\u20130x1B73: 0x2A3, 0x011, 0x29F, 0x0E4\n#_03DD2E: db $E7, $0F, $AC, $C6 : db $12, $00 ; 0x1B74\u20130x1B77: 0x2E7, 0x10F, 0x0AC, 0x0C6\n#_03DD34: db $79, $26, $20, $76 : db $11, $52 ; 0x1B78\u20130x1B7B: 0x179, 0x126, 0x220, 0x576\n#_03DD3A: db $9F, $AF, $53, $7C : db $02, $11 ; 0x1B7C\u20130x1B7F: 0x29F, 0x0AF, 0x153, 0x17C\n#_03DD40: db $36, $C6, $C6, $5D : db $00, $01 ; 0x1B80\u20130x1B83: 0x036, 0x0C6, 0x1C6, 0x05D\n#_03DD46: db $34, $AD, $A4, $A7 : db $00, $00 ; 0x1B84\u20130x1B87: 0x034, 0x0AD, 0x0A4, 0x0A7\n#_03DD4C: db $07, $A5, $A5, $A5 : db $11, $11 ; 0x1B88\u20130x1B8B: 0x107, 0x1A5, 0x1A5, 0x1A5\n#_03DD52: db $A5, $D5, $A5, $A5 : db $10, $11 ; 0x1B8C\u20130x1B8F: 0x0A5, 0x1D5, 0x1A5, 0x1A5\n#_03DD58: db $A5, $03, $EA, $10 : db $1B, $22 ; 0x1B90\u20130x1B93: 0xBA5, 0x103, 0x2EA, 0x210\n#_03DD5E: db $A5, $C7, $34, $A5 : db $12, $01 ; 0x1B94\u20130x1B97: 0x2A5, 0x1C7, 0x134, 0x0A5\n#_03DD64: db $A5, $24, $06, $C7 : db $11, $B2 ; 0x1B98\u20130x1B9B: 0x1A5, 0x124, 0x206, 0xBC7\n#_03DD6A: db $E1, $34, $AD, $6D : db $03, $34 ; 0x1B9C\u20130x1B9F: 0x3E1, 0x034, 0x4AD, 0x36D\n#_03DD70: db $34, $61, $9D, $2D : db $31, $21 ; 0x1BA0\u20130x1BA3: 0x134, 0x361, 0x19D, 0x22D\n#_03DD76: db $9D, $F2, $DC, $DC : db $20, $22 ; 0x1BA4\u20130x1BA7: 0x09D, 0x2F2, 0x2DC, 0x2DC\n#_03DD7C: db $1B, $F2, $D9, $CD : db $20, $22 ; 0x1BA8\u20130x1BAB: 0x01B, 0x2F2, 0x2D9, 0x2CD\n#_03DD82: db $2D, $9D, $26, $F9 : db $12, $32 ; 0x1BAC\u20130x1BAF: 0x22D, 0x19D, 0x226, 0x3F9\n#_03DD88: db $F6, $1C, $9D, $1E : db $21, $21 ; 0x1BB0\u20130x1BB3: 0x1F6, 0x21C, 0x19D, 0x21E\n#_03DD8E: db $A1, $34, $EF, $9F : db $00, $10 ; 0x1BB4\u20130x1BB7: 0x0A1, 0x034, 0x0EF, 0x19F\n#_03DD94: db $7C, $AD, $A3, $A4 : db $10, $00 ; 0x1BB8\u20130x1BBB: 0x07C, 0x1AD, 0x0A3, 0x0A4\n#_03DD9A: db $65, $65, $34, $C8 : db $11, $00 ; 0x1BBC\u20130x1BBF: 0x165, 0x165, 0x034, 0x0C8\n#_03DDA0: db $20, $78, $86, $71 : db $51, $10 ; 0x1BC0\u20130x1BC3: 0x120, 0x578, 0x086, 0x171\n#_03DDA6: db $DB, $20, $86, $A3 : db $05, $10 ; 0x1BC4\u20130x1BC7: 0x5DB, 0x020, 0x086, 0x1A3\n#_03DDAC: db $AE, $E1, $E1, $E1 : db $00, $00 ; 0x1BC8\u20130x1BCB: 0x0AE, 0x0E1, 0x0E1, 0x0E1\n#_03DDB2: db $C6, $AE, $71, $89 : db $00, $00 ; 0x1BCC\u20130x1BCF: 0x0C6, 0x0AE, 0x071, 0x089\n#_03DDB8: db $B5, $26, $C3, $7E : db $00, $03 ; 0x1BD0\u20130x1BD3: 0x0B5, 0x026, 0x3C3, 0x07E\n#_03DDBE: db $9A, $9C, $BE, $C9 : db $00, $00 ; 0x1BD4\u20130x1BD7: 0x09A, 0x09C, 0x0BE, 0x0C9\n#_03DDC4: db $7E, $7E, $82, $CE : db $33, $30 ; 0x1BD8\u20130x1BDB: 0x37E, 0x37E, 0x082, 0x3CE\n#_03DDCA: db $3F, $CD, $C4, $E6 : db $22, $00 ; 0x1BDC\u20130x1BDF: 0x23F, 0x2CD, 0x0C4, 0x0E6\n#_03DDD0: db $83, $27, $27, $F8 : db $33, $32 ; 0x1BE0\u20130x1BE3: 0x383, 0x327, 0x227, 0x3F8\n#_03DDD6: db $C4, $7E, $35, $C4 : db $03, $00 ; 0x1BE4\u20130x1BE7: 0x3C4, 0x07E, 0x035, 0x0C4\n#_03DDDC: db $06, $AD, $AD, $04 : db $16, $61 ; 0x1BE8\u20130x1BEB: 0x606, 0x1AD, 0x1AD, 0x604\n#_03DDE2: db $09, $AC, $7E, $B1 : db $16, $32 ; 0x1BEC\u20130x1BEF: 0x609, 0x1AC, 0x27E, 0x3B1\n#_03DDE8: db $C6, $7D, $D5, $C6 : db $01, $00 ; 0x1BF0\u20130x1BF3: 0x1C6, 0x07D, 0x0D5, 0x0C6\n#_03DDEE: db $78, $D5, $0C, $53 : db $70, $11 ; 0x1BF4\u20130x1BF7: 0x078, 0x7D5, 0x10C, 0x153\n#_03DDF4: db $F1, $E6, $E9, $EE : db $22, $11 ; 0x1BF8\u20130x1BFB: 0x2F1, 0x2E6, 0x1E9, 0x1EE\n#_03DDFA: db $53, $D3, $34, $E6 : db $10, $02 ; 0x1BFC\u20130x1BFF: 0x053, 0x1D3, 0x234, 0x0E6\n#_03DE00: db $FE, $7E, $34, $E6 : db $23, $02 ; 0x1C00\u20130x1C03: 0x3FE, 0x27E, 0x234, 0x0E6\n#_03DE06: db $9C, $82, $35, $E6 : db $53, $02 ; 0x1C04\u20130x1C07: 0x39C, 0x582, 0x235, 0x0E6\n#_03DE0C: db $E6, $05, $65, $65 : db $21, $11 ; 0x1C08\u20130x1C0B: 0x1E6, 0x205, 0x165, 0x165\n#_03DE12: db $C6, $EF, $CE, $E6 : db $01, $02 ; 0x1C0C\u20130x1C0F: 0x1C6, 0x0EF, 0x2CE, 0x0E6\n#_03DE18: db $E6, $3F, $CA, $85 : db $22, $03 ; 0x1C10\u20130x1C13: 0x2E6, 0x23F, 0x3CA, 0x085\n#_03DE1E: db $F1, $8E, $23, $CC : db $27, $30 ; 0x1C14\u20130x1C17: 0x7F1, 0x28E, 0x023, 0x3CC\n#_03DE24: db $CA, $1A, $AD, $A5 : db $02, $01 ; 0x1C18\u20130x1C1B: 0x2CA, 0x01A, 0x1AD, 0x0A5\n#_03DE2A: db $C7, $92, $E6, $E5 : db $07, $26 ; 0x1C1C\u20130x1C1F: 0x7C7, 0x092, 0x6E6, 0x2E5\n#_03DE30: db $0C, $A5, $14, $55 : db $B1, $77 ; 0x1C20\u20130x1C23: 0x10C, 0xBA5, 0x714, 0x755\n#_03DE36: db $25, $AB, $07, $34 : db $70, $20 ; 0x1C24\u20130x1C27: 0x025, 0x7AB, 0x007, 0x234\n#_03DE3C: db $FE, $A7, $1B, $34 : db $10, $20 ; 0x1C28\u20130x1C2B: 0x0FE, 0x1A7, 0x01B, 0x234\n#_03DE42: db $1B, $C4, $05, $66 : db $20, $11 ; 0x1C2C\u20130x1C2F: 0x01B, 0x2C4, 0x105, 0x166\n#_03DE48: db $09, $71, $5B, $66 : db $11, $11 ; 0x1C30\u20130x1C33: 0x109, 0x171, 0x15B, 0x166\n#_03DE4E: db $06, $7E, $C6, $C6 : db $17, $00 ; 0x1C34\u20130x1C37: 0x706, 0x17E, 0x0C6, 0x0C6\n#_03DE54: db $C6, $06, $57, $D1 : db $01, $20 ; 0x1C38\u20130x1C3B: 0x1C6, 0x006, 0x057, 0x2D1\n#_03DE5A: db $53, $C9, $EE, $7E : db $10, $11 ; 0x1C3C\u20130x1C3F: 0x053, 0x1C9, 0x1EE, 0x17E\n#_03DE60: db $0F, $10, $E6, $0F : db $BB, $2B ; 0x1C40\u20130x1C43: 0xB0F, 0xB10, 0xBE6, 0x20F\n#_03DE66: db $0F, $C7, $C7, $C7 : db $B2, $22 ; 0x1C44\u20130x1C47: 0x20F, 0xBC7, 0x2C7, 0x2C7\n#_03DE6C: db $13, $C7, $C7, $14 : db $B2, $2B ; 0x1C48\u20130x1C4B: 0x213, 0xBC7, 0xBC7, 0x214\n#_03DE72: db $15, $1B, $1D, $C7 : db $BB, $B2 ; 0x1C4C\u20130x1C4F: 0xB15, 0xB1B, 0x21D, 0xBC7\n#_03DE78: db $C7, $C7, $1E, $21 : db $22, $BB ; 0x1C50\u20130x1C53: 0x2C7, 0x2C7, 0xB1E, 0xB21\n#_03DE7E: db $26, $28, $2A, $2B : db $BB, $BB ; 0x1C54\u20130x1C57: 0xB26, 0xB28, 0xB2A, 0xB2B\n#_03DE84: db $2D, $C7, $15, $C6 : db $B2, $B2 ; 0x1C58\u20130x1C5B: 0x22D, 0xBC7, 0x215, 0xBC6\n#_03DE8A: db $2B, $B7, $C7, $D2 : db $B8, $22 ; 0x1C5C\u20130x1C5F: 0x82B, 0xBB7, 0x2C7, 0x2D2\n#_03DE90: db $37, $39, $F6, $12 : db $BB, $2B ; 0x1C60\u20130x1C63: 0xB37, 0xB39, 0xBF6, 0x212\n#_03DE96: db $C7, $42, $44, $C7 : db $2B, $B2 ; 0x1C64\u20130x1C67: 0xBC7, 0x242, 0x244, 0xBC7\n#_03DE9C: db $14, $C7, $29, $46 : db $B2, $3B ; 0x1C68\u20130x1C6B: 0x214, 0xBC7, 0xB29, 0x346\n#_03DEA2: db $D7, $CD, $CD, $51 : db $22, $2B ; 0x1C6C\u20130x1C6F: 0x2D7, 0x2CD, 0xBCD, 0x251\n#_03DEA8: db $52, $54, $4C, $C7 : db $BB, $B2 ; 0x1C70\u20130x1C73: 0xB52, 0xB54, 0x24C, 0xBC7\n#_03DEAE: db $46, $C7, $51, $5B : db $B2, $BB ; 0x1C74\u20130x1C77: 0x246, 0xBC7, 0xB51, 0xB5B\n#_03DEB4: db $5D, $5A, $C6, $77 : db $BB, $07 ; 0x1C78\u20130x1C7B: 0xB5D, 0xB5A, 0x7C6, 0x077\n#_03DEBA: db $1C, $61, $62, $5A : db $2B, $BB ; 0x1C7C\u20130x1C7F: 0xB1C, 0x261, 0xB62, 0xB5A\n#_03DEC0: db $C7, $7F, $E6, $15 : db $27, $6B ; 0x1C80\u20130x1C83: 0x7C7, 0x27F, 0xBE6, 0x615\n#_03DEC6: db $C7, $69, $6B, $6D : db $2B, $BB ; 0x1C84\u20130x1C87: 0xBC7, 0x269, 0xB6B, 0xB6D\n#_03DECC: db $6F, $C7, $67, $E6 : db $B2, $B2 ; 0x1C88\u20130x1C8B: 0x26F, 0xBC7, 0x267, 0xBE6\n#_03DED2: db $E6, $C7, $B7, $CD : db $62, $82 ; 0x1C8C\u20130x1C8F: 0x2E6, 0x6C7, 0x2B7, 0x8CD\n#_03DED8: db $73, $74, $E0, $E6 : db $BB, $22 ; 0x1C90\u20130x1C93: 0xB73, 0xB74, 0x2E0, 0x2E6\n#_03DEDE: db $C7, $76, $74, $F1 : db $2B, $B2 ; 0x1C94\u20130x1C97: 0xBC7, 0x276, 0x274, 0xBF1\n#_03DEE4: db $E6, $1C, $45, $41 : db $62, $9B ; 0x1C98\u20130x1C9B: 0x2E6, 0x61C, 0xB45, 0x941\n#_03DEEA: db $38, $36, $EE, $CA : db $BB, $20 ; 0x1C9C\u20130x1C9F: 0xB38, 0xB36, 0x0EE, 0x2CA\n#_03DEF0: db $13, $E6, $9C, $F6 : db $B2, $52 ; 0x1CA0\u20130x1CA3: 0x213, 0xBE6, 0x29C, 0x5F6\n#_03DEF6: db $D2, $79, $FE, $DF : db $2B, $22 ; 0x1CA4\u20130x1CA7: 0xBD2, 0x279, 0x2FE, 0x2DF\n#_03DEFC: db $3F, $FE, $DF, $EE : db $B2, $22 ; 0x1CA8\u20130x1CAB: 0x23F, 0xBFE, 0x2DF, 0x2EE\n#_03DF02: db $CD, $E6, $C9, $C6 : db $22, $02 ; 0x1CAC\u20130x1CAF: 0x2CD, 0x2E6, 0x2C9, 0x0C6\n#_03DF08: db $11, $7A, $13, $C7 : db $BB, $B2 ; 0x1CB0\u20130x1CB3: 0xB11, 0xB7A, 0x213, 0xBC7\n#_03DF0E: db $74, $68, $47, $C7 : db $BB, $B2 ; 0x1CB4\u20130x1CB7: 0xB74, 0xB68, 0x247, 0xBC7\n#_03DF14: db $7B, $74, $E6, $3F : db $BB, $25 ; 0x1CB8\u20130x1CBB: 0xB7B, 0xB74, 0x5E6, 0x23F\n#_03DF1A: db $06, $15, $C7, $80 : db $3B, $2B ; 0x1CBC\u20130x1CBF: 0xB06, 0x315, 0xBC7, 0x280\n#_03DF20: db $11, $8B, $CD, $9D : db $B3, $23 ; 0x1CC0\u20130x1CC3: 0x311, 0xB8B, 0x3CD, 0x29D\n#_03DF26: db $84, $42, $12, $DD : db $B5, $B2 ; 0x1CC4\u20130x1CC7: 0x584, 0xB42, 0x212, 0xBDD\n#_03DF2C: db $C7, $E6, $AA, $FD : db $22, $01 ; 0x1CC8\u20130x1CCB: 0x2C7, 0x2E6, 0x1AA, 0x0FD\n#_03DF32: db $A5, $A5, $A5, $C5 : db $00, $00 ; 0x1CCC\u20130x1CCF: 0x0A5, 0x0A5, 0x0A5, 0x0C5\n#_03DF38: db $53, $00, $34, $B1 : db $11, $02 ; 0x1CD0\u20130x1CD3: 0x153, 0x100, 0x234, 0x0B1\n#_03DF3E: db $AA, $7E, $C9, $53 : db $01, $01 ; 0x1CD4\u20130x1CD7: 0x1AA, 0x07E, 0x1C9, 0x053\n#_03DF44: db $7D, $7E, $D3, $7B : db $33, $06 ; 0x1CD8\u20130x1CDB: 0x37D, 0x37E, 0x6D3, 0x07B\n#_03DF4A: db $DB, $FF, $A4, $86 : db $01, $06 ; 0x1CDC\u20130x1CDF: 0x1DB, 0x0FF, 0x6A4, 0x086\n#_03DF50: db $7B, $1B, $FB, $C6 : db $62, $10 ; 0x1CE0\u20130x1CE3: 0x27B, 0x61B, 0x0FB, 0x1C6\n#_03DF56: db $79, $7B, $7E, $86 : db $16, $36 ; 0x1CE4\u20130x1CE7: 0x679, 0x17B, 0x67E, 0x386\n#_03DF5C: db $1B, $34, $7E, $E2 : db $20, $30 ; 0x1CE8\u20130x1CEB: 0x01B, 0x234, 0x07E, 0x3E2\n#_03DF62: db $0E, $86, $7E, $7E : db $26, $33 ; 0x1CEC\u20130x1CEF: 0x60E, 0x286, 0x37E, 0x37E\n#_03DF68: db $86, $03, $C7, $C7 : db $6B, $22 ; 0x1CF0\u20130x1CF3: 0xB86, 0x603, 0x2C7, 0x2C7\n#_03DF6E: db $EE, $03, $EF, $F6 : db $1B, $22 ; 0x1CF4\u20130x1CF7: 0xBEE, 0x103, 0x2EF, 0x2F6\n#_03DF74: db $F6, $DF, $17, $A7 : db $22, $20 ; 0x1CF8\u20130x1CFB: 0x2F6, 0x2DF, 0x017, 0x2A7\n#_03DF7A: db $05, $D6, $F9, $F9 : db $B2, $22 ; 0x1CFC\u20130x1CFF: 0x205, 0xBD6, 0x2F9, 0x2F9\n#_03DF80: db $CD, $CD, $C2, $05 : db $22, $1B ; 0x1D00\u20130x1D03: 0x2CD, 0x2CD, 0xBC2, 0x105\n#_03DF86: db $CD, $CD, $1A, $05 : db $22, $2B ; 0x1D04\u20130x1D07: 0x2CD, 0x2CD, 0xB1A, 0x205\n#_03DF8C: db $CD, $CD, $D9, $D9 : db $22, $22 ; 0x1D08\u20130x1D0B: 0x2CD, 0x2CD, 0x2D9, 0x2D9\n#_03DF92: db $07, $D9, $D9, $C7 : db $B2, $22 ; 0x1D0C\u20130x1D0F: 0x207, 0xBD9, 0x2D9, 0x2C7\n#_03DF98: db $DD, $DA, $7E, $86 : db $22, $3B ; 0x1D10\u20130x1D13: 0x2DD, 0x2DA, 0xB7E, 0x386\n#_03DF9E: db $7E, $03, $EA, $EB : db $3B, $22 ; 0x1D14\u20130x1D17: 0xB7E, 0x303, 0x2EA, 0x2EB\n#_03DFA4: db $78, $7A, $8E, $34 : db $66, $B0 ; 0x1D18\u20130x1D1B: 0x678, 0x67A, 0x08E, 0xB34\n#_03DFAA: db $DA, $DB, $34, $8C : db $22, $0B ; 0x1D1C\u20130x1D1F: 0x2DA, 0x2DB, 0xB34, 0x08C\n#_03DFB0: db $8D, $1C, $34, $DB : db $62, $02 ; 0x1D20\u20130x1D23: 0x28D, 0x61C, 0x234, 0x0DB\n#_03DFB6: db $C9, $7E, $7E, $34 : db $23, $30 ; 0x1D24\u20130x1D27: 0x3C9, 0x27E, 0x07E, 0x334\n#_03DFBC: db $91, $89, $40, $34 : db $BB, $60 ; 0x1D28\u20130x1D2B: 0xB91, 0xB89, 0x040, 0x634\n#_03DFC2: db $C6, $85, $7E, $53 : db $03, $11 ; 0x1D2C\u20130x1D2F: 0x3C6, 0x085, 0x17E, 0x153\n#_03DFC8: db $83, $84, $C8, $87 : db $17, $0B ; 0x1D30\u20130x1D33: 0x783, 0x184, 0xBC8, 0x087\n#_03DFCE: db $86, $83, $C8, $D3 : db $13, $00 ; 0x1D34\u20130x1D37: 0x386, 0x183, 0x0C8, 0x0D3\n#_03DFD4: db $82, $36, $7E, $8E : db $30, $3B ; 0x1D38\u20130x1D3B: 0x082, 0x336, 0xB7E, 0x38E\n#_03DFDA: db $94, $C7, $D3, $7E : db $B2, $23 ; 0x1D3C\u20130x1D3F: 0x294, 0xBC7, 0x3D3, 0x27E\n#_03DFE0: db $CE, $D3, $87, $82 : db $02, $63 ; 0x1D40\u20130x1D43: 0x2CE, 0x0D3, 0x387, 0x682\n#_03DFE6: db $7E, $D3, $03, $86 : db $32, $B6 ; 0x1D44\u20130x1D47: 0x27E, 0x3D3, 0x603, 0xB86\n#_03DFEC: db $7E, $7E, $82, $CE : db $33, $30 ; 0x1D48\u20130x1D4B: 0x37E, 0x37E, 0x082, 0x3CE\n#_03DFF2: db $D5, $CD, $36, $7E : db $02, $03 ; 0x1D4C\u20130x1D4F: 0x2D5, 0x0CD, 0x336, 0x07E\n#_03DFF8: db $05, $DB, $07, $7E : db $B2, $B3 ; 0x1D50\u20130x1D53: 0x205, 0xBDB, 0x307, 0xB7E\n#_03DFFE: db $34, $07, $D5, $D9 : db $01, $02 ; 0x1D54\u20130x1D57: 0x134, 0x007, 0x2D5, 0x0D9\n#_03E004: db $D3, $82, $84, $80 : db $23, $36 ; 0x1D58\u20130x1D5B: 0x3D3, 0x282, 0x684, 0x380\n#_03E00A: db $05, $34, $81, $C6 : db $B0, $70 ; 0x1D5C\u20130x1D5F: 0x005, 0xB34, 0x081, 0x7C6\n#_03E010: db $C7, $D3, $D3, $05 : db $22, $2B ; 0x1D60\u20130x1D63: 0x2C7, 0x2D3, 0xBD3, 0x205\n#_03E016: db $EA, $04, $7E, $CE : db $2B, $30 ; 0x1D64\u20130x1D67: 0xBEA, 0x204, 0x07E, 0x3CE\n#_03E01C: db $9A, $7E, $7D, $87 : db $B3, $36 ; 0x1D68\u20130x1D6B: 0x39A, 0xB7E, 0x67D, 0x387\n#_03E022: db $7E, $34, $C5, $C5 : db $30, $00 ; 0x1D6C\u20130x1D6F: 0x07E, 0x334, 0x0C5, 0x0C5\n#_03E028: db $7E, $89, $7E, $E3 : db $3B, $30 ; 0x1D70\u20130x1D73: 0xB7E, 0x389, 0x07E, 0x3E3\n#_03E02E: db $9B, $56, $1C, $E9 : db $B1, $20 ; 0x1D74\u20130x1D77: 0x19B, 0xB56, 0x01C, 0x2E9\n#_03E034: db $9E, $F3, $F5, $F4 : db $30, $00 ; 0x1D78\u20130x1D7B: 0x09E, 0x3F3, 0x0F5, 0x0F4\n#_03E03A: db $0B, $CD, $E4, $CD : db $32, $22 ; 0x1D7C\u20130x1D7F: 0x20B, 0x3CD, 0x2E4, 0x2CD\n#_03E040: db $9D, $D6, $D9, $CD : db $32, $22 ; 0x1D80\u20130x1D83: 0x29D, 0x3D6, 0x2D9, 0x2CD\n#_03E046: db $D2, $C7, $EF, $E7 : db $22, $21 ; 0x1D84\u20130x1D87: 0x2D2, 0x2C7, 0x1EF, 0x2E7\n#_03E04C: db $9D, $4B, $DA, $DA : db $31, $22 ; 0x1D88\u20130x1D8B: 0x19D, 0x34B, 0x2DA, 0x2DA\n#_03E052: db $E3, $DA, $C7, $D9 : db $02, $02 ; 0x1D8C\u20130x1D8F: 0x2E3, 0x0DA, 0x2C7, 0x0D9\n#_03E058: db $D9, $CD, $D2, $CE : db $22, $20 ; 0x1D90\u20130x1D93: 0x2D9, 0x2CD, 0x0D2, 0x2CE\n#_03E05E: db $A1, $A3, $CD, $D7 : db $BB, $22 ; 0x1D94\u20130x1D97: 0xBA1, 0xBA3, 0x2CD, 0x2D7\n#_03E064: db $C7, $C7, $D7, $DC : db $22, $22 ; 0x1D98\u20130x1D9B: 0x2C7, 0x2C7, 0x2D7, 0x2DC\n#_03E06A: db $D9, $9E, $9E, $A6 : db $2B, $BB ; 0x1D9C\u20130x1D9F: 0xBD9, 0x29E, 0xB9E, 0xBA6\n#_03E070: db $A4, $C7, $C7, $9E : db $B2, $2B ; 0x1DA0\u20130x1DA3: 0x2A4, 0xBC7, 0xBC7, 0x29E\n#_03E076: db $C7, $D2, $A4, $A9 : db $22, $BB ; 0x1DA4\u20130x1DA7: 0x2C7, 0x2D2, 0xBA4, 0xBA9\n#_03E07C: db $A9, $AB, $A8, $A9 : db $BB, $BB ; 0x1DA8\u20130x1DAB: 0xBA9, 0xBAB, 0xBA8, 0xBA9\n#_03E082: db $A8, $A0, $C7, $D7 : db $BB, $22 ; 0x1DAC\u20130x1DAF: 0xBA8, 0xBA0, 0x2C7, 0x2D7\n#_03E088: db $B4, $AF, $B7, $B7 : db $BB, $BB ; 0x1DB0\u20130x1DB3: 0xBB4, 0xBAF, 0xBB7, 0xBB7\n#_03E08E: db $B7, $B9, $B7, $BB : db $BB, $BB ; 0x1DB4\u20130x1DB7: 0xBB7, 0xBB9, 0xBB7, 0xBBB\n#_03E094: db $A9, $C7, $CD, $DA : db $B2, $22 ; 0x1DB8\u20130x1DBB: 0x2A9, 0xBC7, 0x2CD, 0x2DA\n#_03E09A: db $AF, $B9, $C0, $B7 : db $BB, $BB ; 0x1DBC\u20130x1DBF: 0xBAF, 0xBB9, 0xBC0, 0xBB7\n#_03E0A0: db $B9, $C2, $EF, $D3 : db $BB, $20 ; 0x1DC0\u20130x1DC3: 0xBB9, 0xBC2, 0x0EF, 0x2D3\n#_03E0A6: db $A1, $B8, $C0, $B8 : db $BB, $BB ; 0x1DC4\u20130x1DC7: 0xBA1, 0xBB8, 0xBC0, 0xBB8\n#_03E0AC: db $C8, $C9, $B7, $BB : db $BB, $BB ; 0x1DC8\u20130x1DCB: 0xBC8, 0xBC9, 0xBB7, 0xBBB\n#_03E0B2: db $CA, $A2, $9E, $AF : db $B6, $BB ; 0x1DCC\u20130x1DCF: 0x6CA, 0xBA2, 0xB9E, 0xBAF\n#_03E0B8: db $BB, $C8, $C8, $D1 : db $BB, $BB ; 0x1DD0\u20130x1DD3: 0xBBB, 0xBC8, 0xBC8, 0xBD1\n#_03E0BE: db $D3, $C8, $C8, $BB : db $BB, $BB ; 0x1DD4\u20130x1DD7: 0xBD3, 0xBC8, 0xBC8, 0xBBB\n#_03E0C4: db $A7, $C7, $D7, $AF : db $B2, $BB ; 0x1DD8\u20130x1DDB: 0x2A7, 0xBC7, 0xBD7, 0xBAF\n#_03E0CA: db $A9, $D8, $A9, $A9 : db $BB, $BB ; 0x1DDC\u20130x1DDF: 0xBA9, 0xBD8, 0xBA9, 0xBA9\n#_03E0D0: db $AF, $C3, $D8, $DC : db $BB, $20 ; 0x1DE0\u20130x1DE3: 0xBAF, 0xBC3, 0x0D8, 0x2DC\n#_03E0D6: db $20, $20, $CA, $78 : db $55, $01 ; 0x1DE4\u20130x1DE7: 0x520, 0x520, 0x1CA, 0x078\n#_03E0DC: db $DF, $20, $34, $34 : db $05, $00 ; 0x1DE8\u20130x1DEB: 0x5DF, 0x020, 0x034, 0x034\n#_03E0E2: db $34, $34, $34, $CA : db $00, $00 ; 0x1DEC\u20130x1DEF: 0x034, 0x034, 0x034, 0x0CA\n#_03E0E8: db $34, $93, $89, $34 : db $0B, $B0 ; 0x1DF0\u20130x1DF3: 0xB34, 0x093, 0x089, 0xB34\n#_03E0EE: db $CE, $1C, $35, $88 : db $02, $0B ; 0x1DF4\u20130x1DF7: 0x2CE, 0x01C, 0xB35, 0x088\n#_03E0F4: db $DB, $9E, $D5, $DD : db $B0, $0B ; 0x1DF8\u20130x1DFB: 0x0DB, 0xB9E, 0xBD5, 0x0DD\n#_03E0FA: db $6D, $9F, $9F, $7E : db $10, $01 ; 0x1DFC\u20130x1DFF: 0x06D, 0x19F, 0x19F, 0x07E\n#_03E100: db $C5, $C6, $EE, $53 : db $00, $11 ; 0x1E00\u20130x1E03: 0x0C5, 0x0C6, 0x1EE, 0x153\n#_03E106: db $24, $5A, $C6, $E0 : db $37, $02 ; 0x1E04\u20130x1E07: 0x724, 0x35A, 0x2C6, 0x0E0\n#_03E10C: db $F1, $5C, $C6, $E6 : db $27, $02 ; 0x1E08\u20130x1E0B: 0x7F1, 0x25C, 0x2C6, 0x0E6\n#_03E112: db $31, $C4, $E5, $CF : db $10, $20 ; 0x1E0C\u20130x1E0F: 0x031, 0x1C4, 0x0E5, 0x2CF\n#_03E118: db $66, $E7, $FD, $1E : db $12, $23 ; 0x1E10\u20130x1E13: 0x266, 0x1E7, 0x3FD, 0x21E\n#_03E11E: db $27, $63, $8D, $E6 : db $31, $72 ; 0x1E14\u20130x1E17: 0x127, 0x363, 0x28D, 0x7E6\n#_03E124: db $CD, $CD, $11, $8D : db $22, $37 ; 0x1E18\u20130x1E1B: 0x2CD, 0x2CD, 0x711, 0x38D\n#_03E12A: db $8D, $F6, $DF, $DA : db $72, $22 ; 0x1E1C\u20130x1E1F: 0x28D, 0x7F6, 0x2DF, 0x2DA\n#_03E130: db $DF, $7E, $5F, $1C : db $21, $72 ; 0x1E20\u20130x1E23: 0x1DF, 0x27E, 0x25F, 0x71C\n#_03E136: db $C7, $D7, $E8, $1C : db $22, $62 ; 0x1E24\u20130x1E27: 0x2C7, 0x2D7, 0x2E8, 0x61C\n#_03E13C: db $C7, $C7, $CD, $60 : db $22, $27 ; 0x1E28\u20130x1E2B: 0x2C7, 0x2C7, 0x7CD, 0x260\n#_03E142: db $40, $39, $C7, $C7 : db $BB, $22 ; 0x1E2C\u20130x1E2F: 0xB40, 0xB39, 0x2C7, 0x2C7\n#_03E148: db $E6, $85, $EF, $E3 : db $23, $2B ; 0x1E30\u20130x1E33: 0x3E6, 0x285, 0xBEF, 0x2E3\n#_03E14E: db $1C, $E6, $D7, $C7 : db $22, $22 ; 0x1E34\u20130x1E37: 0x21C, 0x2E6, 0x2D7, 0x2C7\n#_03E154: db $C7, $36, $C7, $7E : db $2B, $21 ; 0x1E38\u20130x1E3B: 0xBC7, 0x236, 0x1C7, 0x27E\n#_03E15A: db $A2, $53, $12, $EF : db $61, $B2 ; 0x1E3C\u20130x1E3F: 0x1A2, 0x653, 0x212, 0xBEF\n#_03E160: db $DA, $E6, $0F, $DA : db $2B, $B2 ; 0x1E40\u20130x1E43: 0xBDA, 0x2E6, 0x20F, 0xBDA\n#_03E166: db $50, $C7, $5B, $1A : db $B2, $13 ; 0x1E44\u20130x1E47: 0x250, 0xBC7, 0x35B, 0x11A\n#_03E16C: db $47, $C7, $C7, $1A : db $B2, $23 ; 0x1E48\u20130x1E4B: 0x247, 0xBC7, 0x3C7, 0x21A\n#_03E172: db $67, $47, $50, $DA : db $BB, $B2 ; 0x1E4C\u20130x1E4F: 0xB67, 0xB47, 0x250, 0xBDA\n#_03E178: db $1A, $68, $68, $96 : db $3B, $B5 ; 0x1E50\u20130x1E53: 0xB1A, 0x368, 0x568, 0xB96\n#_03E17E: db $1A, $AB, $66, $ED : db $30, $1B ; 0x1E54\u20130x1E57: 0x01A, 0x3AB, 0xB66, 0x1ED\n#_03E184: db $36, $C7, $67, $68 : db $B2, $BB ; 0x1E58\u20130x1E5B: 0x236, 0xBC7, 0xB67, 0xB68\n#_03E18A: db $71, $79, $C6, $74 : db $BB, $0B ; 0x1E5C\u20130x1E5F: 0xB71, 0xB79, 0xBC6, 0x074\n#_03E190: db $7A, $C7, $C7, $E6 : db $B2, $22 ; 0x1E60\u20130x1E63: 0x27A, 0xBC7, 0x2C7, 0x2E6\n#_03E196: db $07, $68, $0F, $C7 : db $1B, $B2 ; 0x1E64\u20130x1E67: 0xB07, 0x168, 0x20F, 0xBC7\n#_03E19C: db $C7, $C7, $C6, $C6 : db $22, $00 ; 0x1E68\u20130x1E6B: 0x2C7, 0x2C7, 0x0C6, 0x0C6\n#_03E1A2: db $E6, $3E, $C7, $DF : db $2B, $22 ; 0x1E6C\u20130x1E6F: 0xBE6, 0x23E, 0x2C7, 0x2DF\n#_03E1A8: db $C7, $66, $C6, $74 : db $21, $0B ; 0x1E70\u20130x1E73: 0x1C7, 0x266, 0xBC6, 0x074\n#_03E1AE: db $D5, $D1, $CA, $10 : db $00, $0B ; 0x1E74\u20130x1E77: 0x0D5, 0x0D1, 0xBCA, 0x010\n#_03E1B4: db $E6, $EE, $C7, $C7 : db $22, $22 ; 0x1E78\u20130x1E7B: 0x2E6, 0x2EE, 0x2C7, 0x2C7\n#_03E1BA: db $EE, $EE, $21, $45 : db $B2, $B9 ; 0x1E7C\u20130x1E7F: 0x2EE, 0xBEE, 0x921, 0xB45\n#_03E1C0: db $3F, $45, $EE, $EE : db $B9, $B2 ; 0x1E80\u20130x1E83: 0x93F, 0xB45, 0x2EE, 0xBEE\n#_03E1C6: db $D0, $C6, $EA, $44 : db $00, $B9 ; 0x1E84\u20130x1E87: 0x0D0, 0x0C6, 0x9EA, 0xB44\n#_03E1CC: db $C7, $A2, $E6, $C4 : db $26, $20 ; 0x1E88\u20130x1E8B: 0x6C7, 0x2A2, 0x0E6, 0x2C4\n#_03E1D2: db $C7, $C7, $38, $D2 : db $22, $B2 ; 0x1E8C\u20130x1E8F: 0x2C7, 0x2C7, 0x238, 0xBD2\n#_03E1D8: db $E6, $46, $C7, $67 : db $2B, $2B ; 0x1E90\u20130x1E93: 0xBE6, 0x246, 0xBC7, 0x267\n#_03E1DE: db $68, $96, $C4, $C6 : db $B5, $00 ; 0x1E94\u20130x1E97: 0x568, 0xB96, 0x0C4, 0x0C6\n#_03E1E4: db $46, $68, $85, $C6 : db $BB, $30 ; 0x1E98\u20130x1E9B: 0xB46, 0xB68, 0x085, 0x3C6\n#_03E1EA: db $CC, $CC, $53, $CC : db $00, $10 ; 0x1E9C\u20130x1E9F: 0x0CC, 0x0CC, 0x053, 0x1CC\n#_03E1F0: db $CC, $C4, $7C, $C4 : db $01, $11 ; 0x1EA0\u20130x1EA3: 0x1CC, 0x0C4, 0x17C, 0x1C4\n#_03E1F6: db $78, $A9, $34, $34 : db $10, $00 ; 0x1EA4\u20130x1EA7: 0x078, 0x1A9, 0x034, 0x034\n#_03E1FC: db $34, $C5, $09, $71 : db $00, $11 ; 0x1EA8\u20130x1EAB: 0x034, 0x0C5, 0x109, 0x171\n#_03E202: db $C6, $89, $6A, $95 : db $0B, $1B ; 0x1EAC\u20130x1EAF: 0xBC6, 0x089, 0xB6A, 0x195\n#_03E208: db $95, $FF, $84, $78 : db $B1, $31 ; 0x1EB0\u20130x1EB3: 0x195, 0xBFF, 0x184, 0x378\n#_03E20E: db $C6, $34, $34, $34 : db $00, $00 ; 0x1EB4\u20130x1EB7: 0x0C6, 0x034, 0x034, 0x034\n#_03E214: db $EA, $EA, $DA, $EA : db $22, $22 ; 0x1EB8\u20130x1EBB: 0x2EA, 0x2EA, 0x2DA, 0x2EA\n#_03E21A: db $EA, $34, $1C, $03 : db $20, $2B ; 0x1EBC\u20130x1EBF: 0x0EA, 0x234, 0xB1C, 0x203\n#_03E220: db $DA, $C9, $99, $C9 : db $22, $B2 ; 0x1EC0\u20130x1EC3: 0x2DA, 0x2C9, 0x299, 0xBC9\n#_03E226: db $07, $04, $C7, $E9 : db $BB, $22 ; 0x1EC4\u20130x1EC7: 0xB07, 0xB04, 0x2C7, 0x2E9\n#_03E22C: db $F4, $F6, $05, $34 : db $BB, $B0 ; 0x1EC8\u20130x1ECB: 0xBF4, 0xBF6, 0x005, 0xB34\n#_03E232: db $C7, $C7, $FA, $FC : db $22, $BB ; 0x1ECC\u20130x1ECF: 0x2C7, 0x2C7, 0xBFA, 0xBFC\n#_03E238: db $04, $F0, $99, $DA : db $B2, $B2 ; 0x1ED0\u20130x1ED3: 0x204, 0xBF0, 0x299, 0xBDA\n#_03E23E: db $D9, $02, $01, $A2 : db $2C, $C6 ; 0x1ED4\u20130x1ED7: 0xCD9, 0x202, 0x601, 0xCA2\n#_03E244: db $D3, $C7, $C9, $04 : db $22, $2C ; 0x1ED8\u20130x1EDB: 0x2D3, 0x2C7, 0xCC9, 0x204\n#_03E24A: db $06, $07, $7D, $1C : db $CB, $32 ; 0x1EDC\u20130x1EDF: 0xB06, 0xC07, 0x27D, 0x31C\n#_03E250: db $7E, $7E, $34, $34 : db $33, $00 ; 0x1EE0\u20130x1EE3: 0x37E, 0x37E, 0x034, 0x034\n#_03E256: db $71, $AD, $0C, $84 : db $16, $13 ; 0x1EE4\u20130x1EE7: 0x671, 0x1AD, 0x30C, 0x184\n#_03E25C: db $F0, $62, $05, $7E : db $21, $B3 ; 0x1EE8\u20130x1EEB: 0x1F0, 0x262, 0x305, 0xB7E\n#_03E262: db $82, $0F, $34, $87 : db $32, $06 ; 0x1EEC\u20130x1EEF: 0x282, 0x30F, 0x634, 0x087\n#_03E268: db $0A, $93, $E2, $53 : db $CB, $01 ; 0x1EF0\u20130x1EF3: 0xB0A, 0xC93, 0x1E2, 0x053\n#_03E26E: db $EC, $7D, $93, $34 : db $13, $B0 ; 0x1EF4\u20130x1EF7: 0x3EC, 0x17D, 0x093, 0xB34\n#_03E274: db $53, $FE, $84, $84 : db $12, $33 ; 0x1EF8\u20130x1EFB: 0x253, 0x1FE, 0x384, 0x384\n#_03E27A: db $92, $8A, $34, $E6 : db $BB, $02 ; 0x1EFC\u20130x1EFF: 0xB92, 0xB8A, 0x234, 0x0E6\n#_03E280: db $AD, $E6, $E0, $82 : db $22, $B3 ; 0x1F00\u20130x1F03: 0x2AD, 0x2E6, 0x3E0, 0xB82\n#_03E286: db $E2, $CC, $42, $C8 : db $00, $50 ; 0x1F04\u20130x1F07: 0x0E2, 0x0CC, 0x042, 0x5C8\n#_03E28C: db $77, $34, $0D, $87 : db $20, $27 ; 0x1F08\u20130x1F0B: 0x077, 0x234, 0x70D, 0x287\n#_03E292: db $E6, $E6, $20, $AB : db $22, $20 ; 0x1F0C\u20130x1F0F: 0x2E6, 0x2E6, 0x020, 0x2AB\n#_03E298: db $F4, $87, $77, $E6 : db $17, $72 ; 0x1F10\u20130x1F13: 0x7F4, 0x187, 0x277, 0x7E6\n#_03E29E: db $20, $29, $7C, $EC : db $53, $72 ; 0x1F14\u20130x1F17: 0x320, 0x529, 0x27C, 0x7EC\n#_03E2A4: db $EC, $E6, $1A, $E6 : db $22, $32 ; 0x1F18\u20130x1F1B: 0x2EC, 0x2E6, 0x21A, 0x3E6\n#_03E2AA: db $26, $80, $1A, $69 : db $17, $36 ; 0x1F1C\u20130x1F1F: 0x726, 0x180, 0x61A, 0x369\n#_03E2B0: db $25, $65, $C5, $27 : db $21, $21 ; 0x1F20\u20130x1F23: 0x125, 0x265, 0x1C5, 0x227\n#_03E2B6: db $C5, $CD, $F6, $E4 : db $22, $22 ; 0x1F24\u20130x1F27: 0x2C5, 0x2CD, 0x2F6, 0x2E4\n#_03E2BC: db $C7, $C7, $47, $DD : db $22, $B2 ; 0x1F28\u20130x1F2B: 0x2C7, 0x2C7, 0x247, 0xBDD\n#_03E2C2: db $47, $CD, $D0, $0E : db $B2, $0B ; 0x1F2C\u20130x1F2F: 0x247, 0xBCD, 0xBD0, 0x00E\n#_03E2C8: db $68, $EF, $E6, $E6 : db $B2, $22 ; 0x1F30\u20130x1F33: 0x268, 0xBEF, 0x2E6, 0x2E6\n#_03E2CE: db $C7, $53, $29, $EF : db $21, $32 ; 0x1F34\u20130x1F37: 0x1C7, 0x253, 0x229, 0x3EF\n#_03E2D4: db $C7, $0E, $35, $97 : db $2B, $55 ; 0x1F38\u20130x1F3B: 0xBC7, 0x20E, 0x535, 0x597\n#_03E2DA: db $E7, $58, $FF, $4F : db $21, $27 ; 0x1F3C\u20130x1F3F: 0x1E7, 0x258, 0x7FF, 0x24F\n#_03E2E0: db $4F, $25, $B1, $A1 : db $72, $2B ; 0x1F40\u20130x1F43: 0x24F, 0x725, 0xBB1, 0x2A1\n#_03E2E6: db $BB, $A9, $10, $11 : db $BB, $CC ; 0x1F44\u20130x1F47: 0xBBB, 0xBA9, 0xC10, 0xC11\n#_03E2EC: db $AF, $BB, $A2, $CD : db $BB, $62 ; 0x1F48\u20130x1F4B: 0xBAF, 0xBBB, 0x2A2, 0x6CD\n#_03E2F2: db $C5, $C5, $BE, $18 : db $BB, $BC ; 0x1F4C\u20130x1F4F: 0xBC5, 0xBC5, 0xCBE, 0xB18\n#_03E2F8: db $CB, $BC, $CD, $E4 : db $BB, $22 ; 0x1F50\u20130x1F53: 0xBCB, 0xBBC, 0x2CD, 0x2E4\n#_03E2FE: db $1D, $A9, $A9, $A9 : db $CB, $BB ; 0x1F54\u20130x1F57: 0xB1D, 0xCA9, 0xBA9, 0xBA9\n#_03E304: db $C8, $1F, $A9, $C2 : db $BC, $BB ; 0x1F58\u20130x1F5B: 0xCC8, 0xB1F, 0xBA9, 0xBC2\n#_03E30A: db $A2, $C2, $EF, $D7 : db $BB, $2B ; 0x1F5C\u20130x1F5F: 0xBA2, 0xBC2, 0xBEF, 0x2D7\n#_03E310: db $20, $DA, $1D, $C2 : db $CB, $CB ; 0x1F60\u20130x1F63: 0xB20, 0xCDA, 0xB1D, 0xCC2\n#_03E316: db $C7, $A3, $BC, $EF : db $2B, $B2 ; 0x1F64\u20130x1F67: 0xBC7, 0x2A3, 0x2BC, 0xBEF\n#_03E31C: db $DA, $C7, $A0, $C7 : db $22, $B2 ; 0x1F68\u20130x1F6B: 0x2DA, 0x2C7, 0x2A0, 0xBC7\n#_03E322: db $A0, $9F, $C7, $CE : db $BB, $22 ; 0x1F6C\u20130x1F6F: 0xBA0, 0xB9F, 0x2C7, 0x2CE\n#_03E328: db $B5, $A0, $1D, $12 : db $BB, $CC ; 0x1F70\u20130x1F73: 0xBB5, 0xBA0, 0xC1D, 0xC12\n#_03E32E: db $A1, $B5, $A9, $CA : db $BB, $BB ; 0x1F74\u20130x1F77: 0xBA1, 0xBB5, 0xBA9, 0xBCA\n#_03E334: db $CE, $A3, $CD, $9E : db $2B, $2B ; 0x1F78\u20130x1F7B: 0xBCE, 0x2A3, 0xBCD, 0x29E\n#_03E33A: db $A0, $CD, $D8, $C6 : db $B2, $22 ; 0x1F7C\u20130x1F7F: 0x2A0, 0xBCD, 0x2D8, 0x2C6\n#_03E340: db $C7, $D7, $D5, $9E : db $22, $2B ; 0x1F80\u20130x1F83: 0x2C7, 0x2D7, 0xBD5, 0x29E\n#_03E346: db $D7, $CD, $12, $DD : db $22, $C2 ; 0x1F84\u20130x1F87: 0x2D7, 0x2CD, 0x212, 0xCDD\n#_03E34C: db $DF, $A2, $EF, $CD : db $2B, $22 ; 0x1F88\u20130x1F8B: 0xBDF, 0x2A2, 0x2EF, 0x2CD\n#_03E352: db $EF, $FF, $E6, $E6 : db $22, $22 ; 0x1F8C\u20130x1F8F: 0x2EF, 0x2FF, 0x2E6, 0x2E6\n#_03E358: db $CD, $05, $21, $E6 : db $21, $C2 ; 0x1F90\u20130x1F93: 0x1CD, 0x205, 0x221, 0xCE6\n#_03E35E: db $8D, $23, $4F, $CD : db $7C, $72 ; 0x1F94\u20130x1F97: 0xC8D, 0x723, 0x24F, 0x7CD\n#_03E364: db $51, $B1, $FB, $06 : db $72, $25 ; 0x1F98\u20130x1F9B: 0x251, 0x7B1, 0x5FB, 0x206\n#_03E36A: db $14, $8D, $CA, $C0 : db $37, $22 ; 0x1F9C\u20130x1F9F: 0x714, 0x38D, 0x2CA, 0x2C0\n#_03E370: db $78, $E6, $9C, $91 : db $12, $57 ; 0x1FA0\u20130x1FA3: 0x278, 0x1E6, 0x79C, 0x591\n#_03E376: db $1E, $AA, $E6, $7E : db $30, $21 ; 0x1FA4\u20130x1FA7: 0x01E, 0x3AA, 0x1E6, 0x27E\n#_03E37C: db $95, $CD, $CE, $C4 : db $32, $20 ; 0x1FA8\u20130x1FAB: 0x295, 0x3CD, 0x0CE, 0x2C4\n#_03E382: db $E6, $51, $B1, $05 : db $27, $21 ; 0x1FAC\u20130x1FAF: 0x7E6, 0x251, 0x1B1, 0x205\n#_03E388: db $02, $E6, $F9, $F9 : db $32, $66 ; 0x1FB0\u20130x1FB3: 0x202, 0x3E6, 0x6F9, 0x6F9\n#_03E38E: db $08, $B1, $E8, $7C : db $72, $67 ; 0x1FB4\u20130x1FB7: 0x208, 0x7B1, 0x7E8, 0x67C\n#_03E394: db $D5, $87, $08, $E6 : db $07, $72 ; 0x1FB8\u20130x1FBB: 0x7D5, 0x087, 0x208, 0x7E6\n#_03E39A: db $E2, $69, $AB, $27 : db $B6, $0C ; 0x1FBC\u20130x1FBF: 0x6E2, 0xB69, 0xCAB, 0x027\n#_03E3A0: db $26, $26, $2A, $2A : db $CC, $CC ; 0x1FC0\u20130x1FC3: 0xC26, 0xC26, 0xC2A, 0xC2A\n#_03E3A6: db $26, $26, $26, $26 : db $CC, $CC ; 0x1FC4\u20130x1FC7: 0xC26, 0xC26, 0xC26, 0xC26\n#_03E3AC: db $2A, $37, $39, $3B : db $CC, $CC ; 0x1FC8\u20130x1FCB: 0xC2A, 0xC37, 0xC39, 0xC3B\n#_03E3B2: db $3D, $26, $40, $42 : db $CC, $CC ; 0x1FCC\u20130x1FCF: 0xC3D, 0xC26, 0xC40, 0xC42\n#_03E3B8: db $3D, $45, $28, $34 : db $CC, $CC ; 0x1FD0\u20130x1FD3: 0xC3D, 0xC45, 0xC28, 0xC34\n#_03E3BE: db $33, $4E, $50, $46 : db $CC, $CC ; 0x1FD4\u20130x1FD7: 0xC33, 0xC4E, 0xC50, 0xC46\n#_03E3C4: db $56, $58, $5A, $5F : db $CC, $CC ; 0x1FD8\u20130x1FDB: 0xC56, 0xC58, 0xC5A, 0xC5F\n#_03E3CA: db $61, $5C, $56, $64 : db $CC, $CC ; 0x1FDC\u20130x1FDF: 0xC61, 0xC5C, 0xC56, 0xC64\n#_03E3D0: db $61, $69, $68, $70 : db $CC, $C2 ; 0x1FE0\u20130x1FE3: 0xC61, 0xC69, 0x268, 0xC70\n#_03E3D6: db $70, $69, $70, $70 : db $2C, $22 ; 0x1FE4\u20130x1FE7: 0xC70, 0x269, 0x270, 0x270\n#_03E3DC: db $70, $69, $70, $68 : db $2C, $2C ; 0x1FE8\u20130x1FEB: 0xC70, 0x269, 0xC70, 0x268\n#_03E3E2: db $70, $69, $70, $69 : db $2C, $2C ; 0x1FEC\u20130x1FEF: 0xC70, 0x269, 0xC70, 0x269\n#_03E3E8: db $6A, $70, $70, $68 : db $C2, $2C ; 0x1FF0\u20130x1FF3: 0x26A, 0xC70, 0xC70, 0x268\n#_03E3EE: db $69, $6B, $70, $6C : db $CC, $2C ; 0x1FF4\u20130x1FF7: 0xC69, 0xC6B, 0xC70, 0x26C\n#_03E3F4: db $68, $70, $6C, $69 : db $C2, $CC ; 0x1FF8\u20130x1FFB: 0x268, 0xC70, 0xC6C, 0xC69\n#_03E3FA: db $68, $69, $70, $70 : db $CC, $22 ; 0x1FFC\u20130x1FFF: 0xC68, 0xC69, 0x270, 0x270\n#_03E400: db $70, $69, $69, $70 : db $2C, $C2 ; 0x2000\u20130x2003: 0xC70, 0x269, 0x269, 0xC70\n#_03E406: db $69, $70, $70, $70 : db $C2, $22 ; 0x2004\u20130x2007: 0x269, 0xC70, 0x270, 0x270\n#_03E40C: db $70, $70, $68, $70 : db $22, $C2 ; 0x2008\u20130x200B: 0x270, 0x270, 0x268, 0xC70\n#_03E412: db $70, $69, $68, $70 : db $2C, $C2 ; 0x200C\u20130x200F: 0xC70, 0x269, 0x268, 0xC70\n#_03E418: db $70, $69, $70, $6A : db $2C, $2C ; 0x2010\u20130x2013: 0xC70, 0x269, 0xC70, 0x26A\n#_03E41E: db $70, $6C, $70, $70 : db $2C, $22 ; 0x2014\u20130x2017: 0xC70, 0x26C, 0x270, 0x270\n#_03E424: db $68, $6E, $6C, $69 : db $CC, $CC ; 0x2018\u20130x201B: 0xC68, 0xC6E, 0xC6C, 0xC69\n#_03E42A: db $70, $6A, $68, $70 : db $2C, $C2 ; 0x201C\u20130x201F: 0xC70, 0x26A, 0x268, 0xC70\n#_03E430: db $70, $6D, $70, $6D : db $2C, $2C ; 0x2020\u20130x2023: 0xC70, 0x26D, 0xC70, 0x26D\n#_03E436: db $6B, $70, $70, $6A : db $C2, $2C ; 0x2024\u20130x2027: 0x26B, 0xC70, 0xC70, 0x26A\n#_03E43C: db $6A, $68, $70, $6D : db $CC, $2C ; 0x2028\u20130x202B: 0xC6A, 0xC68, 0xC70, 0x26D\n#_03E442: db $70, $69, $70, $6D : db $2C, $2C ; 0x202C\u20130x202F: 0xC70, 0x269, 0xC70, 0x26D\n#_03E448: db $70, $68, $6B, $70 : db $2C, $C2 ; 0x2030\u20130x2033: 0xC70, 0x268, 0x26B, 0xC70\n#_03E44E: db $70, $6D, $6F, $70 : db $2C, $CC ; 0x2034\u20130x2037: 0xC70, 0x26D, 0xC6F, 0xC70\n#_03E454: db $72, $6F, $74, $C9 : db $CC, $C0 ; 0x2038\u20130x203B: 0xC72, 0xC6F, 0x074, 0xCC9\n#_03E45A: db $74, $CA, $76, $79 : db $C0, $CC ; 0x203C\u20130x203F: 0x074, 0xCCA, 0xC76, 0xC79\n#_03E460: db $72, $E3, $74, $34 : db $C0, $C0 ; 0x2040\u20130x2043: 0x072, 0xCE3, 0x074, 0xC34\n#_03E466: db $7B, $74, $DB, $DC : db $CC, $00 ; 0x2044\u20130x2047: 0xC7B, 0xC74, 0x0DB, 0x0DC\n#_03E46C: db $76, $7C, $34, $79 : db $CC, $0C ; 0x2048\u20130x204B: 0xC76, 0xC7C, 0xC34, 0x079\n#_03E472: db $C8, $82, $86, $34 : db $0C, $C0 ; 0x204C\u20130x204F: 0xCC8, 0x082, 0x086, 0xC34\n#_03E478: db $89, $8A, $8A, $34 : db $CC, $C0 ; 0x2050\u20130x2053: 0xC89, 0xC8A, 0x08A, 0xC34\n#_03E47E: db $D4, $A0, $94, $95 : db $26, $CC ; 0x2054\u20130x2057: 0x6D4, 0x2A0, 0xC94, 0xC95\n#_03E484: db $96, $98, $96, $9A : db $CC, $CC ; 0x2058\u20130x205B: 0xC96, 0xC98, 0xC96, 0xC9A\n#_03E48A: db $9B, $9D, $CD, $A0 : db $CC, $26 ; 0x205C\u20130x205F: 0xC9B, 0xC9D, 0x6CD, 0x2A0\n#_03E490: db $95, $96, $A7, $96 : db $CC, $CC ; 0x2060\u20130x2063: 0xC95, 0xC96, 0xCA7, 0xC96\n#_03E496: db $9A, $A9, $72, $08 : db $CC, $C5 ; 0x2064\u20130x2067: 0xC9A, 0xCA9, 0x572, 0xC08\n#_03E49C: db $B0, $B2, $B4, $B5 : db $CC, $CC ; 0x2068\u20130x206B: 0xCB0, 0xCB2, 0xCB4, 0xCB5\n#_03E4A2: db $B7, $A2, $72, $B8 : db $CC, $CC ; 0x206C\u20130x206F: 0xCB7, 0xCA2, 0xC72, 0xCB8\n#_03E4A8: db $28, $A0, $C1, $B9 : db $36, $CC ; 0x2070\u20130x2073: 0x628, 0x3A0, 0xCC1, 0xCB9\n#_03E4AE: db $34, $79, $72, $51 : db $0C, $C7 ; 0x2074\u20130x2077: 0xC34, 0x079, 0x772, 0xC51\n#_03E4B4: db $65, $65, $C6, $C6 : db $11, $00 ; 0x2078\u20130x207B: 0x165, 0x165, 0x0C6, 0x0C6\n#_03E4BA: db $71, $51, $71, $78 : db $17, $CC ; 0x207C\u20130x207F: 0x771, 0x151, 0xC71, 0xC78\n#_03E4C0: db $34, $C9, $CA, $CB : db $0C, $CC ; 0x2080\u20130x2083: 0xC34, 0x0C9, 0xCCA, 0xCCB\n#_03E4C6: db $CC, $78, $34, $79 : db $CC, $01 ; 0x2084\u20130x2087: 0xCCC, 0xC78, 0x134, 0x079\n#_03E4CC: db $A9, $72, $C1, $A5 : db $CC, $CC ; 0x2088\u20130x208B: 0xCA9, 0xC72, 0xCC1, 0xCA5\n#_03E4D2: db $FF, $79, $D1, $C9 : db $1C, $CC ; 0x208C\u20130x208F: 0xCFF, 0x179, 0xCD1, 0xCC9\n#_03E4D8: db $8D, $7C, $D6, $CB : db $CC, $CC ; 0x2090\u20130x2093: 0xC8D, 0xC7C, 0xCD6, 0xCCB\n#_03E4DE: db $C9, $C0, $C2, $34 : db $CC, $C0 ; 0x2094\u20130x2097: 0xCC9, 0xCC0, 0x0C2, 0xC34\n#_03E4E4: db $A5, $CB, $D0, $D5 : db $1C, $CC ; 0x2098\u20130x209B: 0xCA5, 0x1CB, 0xCD0, 0xCD5\n#_03E4EA: db $34, $A9, $CB, $93 : db $0C, $CC ; 0x209C\u20130x209F: 0xC34, 0x0A9, 0xCCB, 0xC93\n#_03E4F0: db $DD, $B9, $34, $9B : db $CC, $0C ; 0x20A0\u20130x20A3: 0xCDD, 0xCB9, 0xC34, 0x09B\n#_03E4F6: db $79, $72, $C9, $CB : db $CC, $CC ; 0x20A4\u20130x20A7: 0xC79, 0xC72, 0xCC9, 0xCCB\n#_03E4FC: db $C9, $C3, $D0, $E2 : db $CC, $CC ; 0x20A8\u20130x20AB: 0xCC9, 0xCC3, 0xCD0, 0xCE2\n#_03E502: db $E6, $E8, $EA, $9D : db $CC, $CC ; 0x20AC\u20130x20AF: 0xCE6, 0xCE8, 0xCEA, 0xC9D\n#_03E508: db $A4, $D4, $CB, $C9 : db $CC, $CC ; 0x20B0\u20130x20B3: 0xCA4, 0xCD4, 0xCCB, 0xCC9\n#_03E50E: db $D3, $F3, $72, $F9 : db $CC, $CC ; 0x20B4\u20130x20B7: 0xCD3, 0xCF3, 0xC72, 0xCF9\n#_03E514: db $7D, $79, $7C, $FC : db $CC, $CC ; 0x20B8\u20130x20BB: 0xC7D, 0xC79, 0xC7C, 0xCFC\n#_03E51A: db $FC, $34, $78, $7A : db $C0, $66 ; 0x20BC\u20130x20BF: 0x0FC, 0xC34, 0x678, 0x67A\n#_03E520: db $FC, $34, $34, $C2 : db $C0, $0C ; 0x20C0\u20130x20C3: 0x0FC, 0xC34, 0xC34, 0x0C2\n#_03E526: db $FF, $C7, $02, $C7 : db $C2, $D2 ; 0x20C4\u20130x20C7: 0x2FF, 0xCC7, 0x202, 0xDC7\n#_03E52C: db $03, $04, $04, $05 : db $DD, $DD ; 0x20C8\u20130x20CB: 0xD03, 0xD04, 0xD04, 0xD05\n#_03E532: db $C7, $FE, $35, $FD : db $2C, $0C ; 0x20CC\u20130x20CF: 0xCC7, 0x2FE, 0xC35, 0x0FD\n#_03E538: db $04, $85, $7C, $C7 : db $DC, $C2 ; 0x20D0\u20130x20D3: 0xC04, 0xD85, 0x27C, 0xCC7\n#_03E53E: db $7A, $06, $CD, $04 : db $6D, $2D ; 0x20D4\u20130x20D7: 0xD7A, 0x606, 0xDCD, 0x204\n#_03E544: db $09, $00, $0A, $C1 : db $DD, $DC ; 0x20D8\u20130x20DB: 0xD09, 0xD00, 0xC0A, 0xDC1\n#_03E54A: db $7C, $FF, $37, $ED : db $CC, $21 ; 0x20DC\u20130x20DF: 0xC7C, 0xCFF, 0x137, 0x2ED\n#_03E550: db $C6, $04, $0C, $C7 : db $2D, $D2 ; 0x20E0\u20130x20E3: 0xDC6, 0x204, 0x20C, 0xDC7\n#_03E556: db $84, $87, $78, $C7 : db $CC, $62 ; 0x20E4\u20130x20E7: 0xC84, 0xC87, 0x278, 0x6C7\n#_03E55C: db $CD, $C7, $0C, $04 : db $22, $DD ; 0x20E8\u20130x20EB: 0x2CD, 0x2C7, 0xD0C, 0xD04\n#_03E562: db $C7, $34, $C7, $C7 : db $22, $22 ; 0x20EC\u20130x20EF: 0x2C7, 0x234, 0x2C7, 0x2C7\n#_03E568: db $0A, $ED, $C7, $CD : db $D1, $22 ; 0x20F0\u20130x20F3: 0x10A, 0xDED, 0x2C7, 0x2CD\n#_03E56E: db $C7, $C7, $05, $ED : db $22, $D1 ; 0x20F4\u20130x20F7: 0x2C7, 0x2C7, 0x105, 0xDED\n#_03E574: db $C5, $03, $04, $05 : db $2D, $DD ; 0x20F8\u20130x20FB: 0xDC5, 0x203, 0xD04, 0xD05\n#_03E57A: db $CD, $78, $C7, $27 : db $26, $23 ; 0x20FC\u20130x20FF: 0x6CD, 0x278, 0x3C7, 0x227\n#_03E580: db $05, $78, $78, $1F : db $DC, $6B ; 0x2100\u20130x2103: 0xC05, 0xD78, 0xB78, 0x61F\n#_03E586: db $DE, $9B, $B9, $34 : db $CC, $C2 ; 0x2104\u20130x2107: 0xCDE, 0xC9B, 0x2B9, 0xC34\n#_03E58C: db $F8, $05, $6A, $C7 : db $2D, $12 ; 0x2108\u20130x210B: 0xDF8, 0x205, 0x26A, 0x1C7\n#_03E592: db $37, $9B, $0F, $0F : db $2C, $DD ; 0x210C\u20130x210F: 0xC37, 0x29B, 0xD0F, 0xD0F\n#_03E598: db $0F, $C1, $B9, $99 : db $DC, $C3 ; 0x2110\u20130x2113: 0xC0F, 0xDC1, 0x3B9, 0xC99\n#_03E59E: db $DF, $1F, $D4, $79 : db $2B, $2C ; 0x2114\u20130x2117: 0xBDF, 0x21F, 0xCD4, 0x279\n#_03E5A4: db $12, $DA, $C1, $33 : db $DC, $C2 ; 0x2118\u20130x211B: 0xC12, 0xDDA, 0x2C1, 0xC33\n#_03E5AA: db $31, $D4, $9C, $72 : db $12, $CC ; 0x211C\u20130x211F: 0x231, 0x1D4, 0xC9C, 0xC72\n#_03E5B0: db $CE, $12, $79, $CE : db $03, $C0 ; 0x2120\u20130x2123: 0x3CE, 0x012, 0x079, 0xCCE\n#_03E5B6: db $BD, $1D, $0F, $78 : db $23, $16 ; 0x2124\u20130x2127: 0x3BD, 0x21D, 0x60F, 0x178\n#_03E5BC: db $2D, $FE, $FC, $03 : db $1C, $CD ; 0x2128\u20130x212B: 0xC2D, 0x1FE, 0xDFC, 0xC03\n#_03E5C2: db $CF, $D2, $0A, $D7 : db $22, $D2 ; 0x212C\u20130x212F: 0x2CF, 0x2D2, 0x20A, 0xDD7\n#_03E5C8: db $0A, $CD, $C7, $CD : db $D2, $22 ; 0x2130\u20130x2133: 0x20A, 0xDCD, 0x2C7, 0x2CD\n#_03E5CE: db $1F, $0A, $1F, $CD : db $BD, $B2 ; 0x2134\u20130x2137: 0xD1F, 0xB0A, 0x21F, 0xBCD\n#_03E5D4: db $CD, $0B, $FD, $C7 : db $2D, $C2 ; 0x2138\u20130x213B: 0xDCD, 0x20B, 0x2FD, 0xCC7\n#_03E5DA: db $04, $7A, $C7, $C7 : db $D6, $22 ; 0x213C\u20130x213F: 0x604, 0xD7A, 0x2C7, 0x2C7\n#_03E5E0: db $C7, $08, $CD, $1F : db $2D, $2B ; 0x2140\u20130x2143: 0xDC7, 0x208, 0xBCD, 0x21F\n#_03E5E6: db $D7, $05, $C7, $CD : db $2D, $22 ; 0x2144\u20130x2147: 0xDD7, 0x205, 0x2C7, 0x2CD\n#_03E5EC: db $0A, $CD, $CD, $08 : db $D2, $2D ; 0x2148\u20130x214B: 0x20A, 0xDCD, 0xDCD, 0x208\n#_03E5F2: db $08, $1F, $04, $0B : db $DB, $DD ; 0x214C\u20130x214F: 0xB08, 0xD1F, 0xD04, 0xD0B\n#_03E5F8: db $04, $04, $04, $1F : db $DD, $DB ; 0x2150\u20130x2153: 0xD04, 0xD04, 0xB04, 0xD1F\n#_03E5FE: db $CD, $D2, $03, $32 : db $22, $D2 ; 0x2154\u20130x2157: 0x2CD, 0x2D2, 0x203, 0xD32\n#_03E604: db $33, $34, $F9, $05 : db $22, $25 ; 0x2158\u20130x215B: 0x233, 0x234, 0x5F9, 0x205\n#_03E60A: db $2D, $03, $9B, $C2 : db $1D, $CC ; 0x215C\u20130x215F: 0xD2D, 0x103, 0xC9B, 0xCC2\n#_03E610: db $34, $33, $0F, $B7 : db $02, $12 ; 0x2160\u20130x2163: 0x234, 0x033, 0x20F, 0x1B7\n#_03E616: db $2D, $0F, $C0, $75 : db $1D, $C1 ; 0x2164\u20130x2167: 0xD2D, 0x10F, 0x1C0, 0xC75\n#_03E61C: db $CD, $A5, $33, $9B : db $29, $2C ; 0x2168\u20130x216B: 0x9CD, 0x2A5, 0xC33, 0x29B\n#_03E622: db $11, $11, $76, $7C : db $DD, $CC ; 0x216C\u20130x216F: 0xD11, 0xD11, 0xC76, 0xC7C\n#_03E628: db $AF, $55, $DA, $CE : db $23, $22 ; 0x2170\u20130x2173: 0x3AF, 0x255, 0x2DA, 0x2CE\n#_03E62E: db $17, $0F, $C0, $DC : db $DD, $CC ; 0x2174\u20130x2177: 0xD17, 0xD0F, 0xCC0, 0xCDC\n#_03E634: db $B9, $B9, $ED, $ED : db $CC, $11 ; 0x2178\u20130x217B: 0xCB9, 0xCB9, 0x1ED, 0x1ED\n#_03E63A: db $05, $04, $05, $C7 : db $DD, $D2 ; 0x217C\u20130x217F: 0xD05, 0xD04, 0x205, 0xDC7\n#_03E640: db $D4, $C0, $99, $C7 : db $2C, $32 ; 0x2180\u20130x2183: 0xCD4, 0x2C0, 0x299, 0x3C7\n#_03E646: db $6F, $11, $DE, $DE : db $CD, $CC ; 0x2184\u20130x2187: 0xD6F, 0xC11, 0xCDE, 0xCDE\n#_03E64C: db $B9, $33, $34, $79 : db $C2, $2C ; 0x2188\u20130x218B: 0x2B9, 0xC33, 0xC34, 0x279\n#_03E652: db $F4, $77, $10, $18 : db $CC, $DD ; 0x218C\u20130x218F: 0xCF4, 0xC77, 0xD10, 0xD18\n#_03E658: db $C1, $DC, $B9, $34 : db $CC, $C2 ; 0x2190\u20130x2193: 0xCC1, 0xCDC, 0x2B9, 0xC34\n#_03E65E: db $CE, $1A, $1A, $6F : db $2D, $DC ; 0x2194\u20130x2197: 0xDCE, 0x21A, 0xC1A, 0xD6F\n#_03E664: db $11, $71, $71, $A4 : db $DC, $CC ; 0x2198\u20130x219B: 0xC11, 0xD71, 0xC71, 0xCA4\n#_03E66A: db $D3, $78, $ED, $CE : db $CC, $12 ; 0x219C\u20130x219F: 0xCD3, 0xC78, 0x2ED, 0x1CE\n#_03E670: db $34, $9B, $9B, $11 : db $3C, $CD ; 0x21A0\u20130x21A3: 0xC34, 0x39B, 0xD9B, 0xC11\n#_03E676: db $71, $76, $F9, $77 : db $CC, $CC ; 0x21A4\u20130x21A7: 0xC71, 0xC76, 0xCF9, 0xC77\n#_03E67C: db $E7, $53, $1F, $FF : db $11, $B2 ; 0x21A8\u20130x21AB: 0x1E7, 0x153, 0x21F, 0xBFF\n#_03E682: db $32, $0F, $18, $C1 : db $2D, $DC ; 0x21AC\u20130x21AF: 0xD32, 0x20F, 0xC18, 0xDC1\n#_03E688: db $11, $7C, $7D, $E7 : db $DC, $C1 ; 0x21B0\u20130x21B3: 0xC11, 0xD7C, 0x17D, 0xCE7\n#_03E68E: db $79, $F3, $7C, $0A : db $CC, $CD ; 0x21B4\u20130x21B7: 0xC79, 0xCF3, 0xD7C, 0xC0A\n#_03E694: db $CE, $76, $1A, $79 : db $21, $DC ; 0x21B8\u20130x21BB: 0x1CE, 0x276, 0xC1A, 0xD79\n#_03E69A: db $C2, $E2, $31, $D1 : db $C0, $12 ; 0x21BC\u20130x21BF: 0x0C2, 0xCE2, 0x231, 0x1D1\n#_03E6A0: db $ED, $0A, $D2, $CD : db $1D, $22 ; 0x21C0\u20130x21C3: 0xDED, 0x10A, 0x2D2, 0x2CD\n#_03E6A6: db $DC, $DC, $C7, $DD : db $22, $22 ; 0x21C4\u20130x21C7: 0x2DC, 0x2DC, 0x2C7, 0x2DD\n#_03E6AC: db $C2, $36, $03, $03 : db $C2, $DD ; 0x21C8\u20130x21CB: 0x2C2, 0xC36, 0xD03, 0xD03\n#_03E6B2: db $04, $C7, $76, $87 : db $D2, $CC ; 0x21CC\u20130x21CF: 0x204, 0xDC7, 0xC76, 0xC87\n#_03E6B8: db $D7, $34, $33, $C7 : db $22, $22 ; 0x21D0\u20130x21D3: 0x2D7, 0x234, 0x233, 0x2C7\n#_03E6BE: db $C1, $B9, $1F, $07 : db $CC, $BD ; 0x21D4\u20130x21D7: 0xCC1, 0xCB9, 0xD1F, 0xB07\n#_03E6C4: db $76, $E1, $34, $9C : db $10, $0C ; 0x21D8\u20130x21DB: 0x076, 0x1E1, 0xC34, 0x09C\n#_03E6CA: db $8D, $B9, $DB, $37 : db $CC, $02 ; 0x21DC\u20130x21DF: 0xC8D, 0xCB9, 0x2DB, 0x037\n#_03E6D0: db $9C, $C1, $A4, $A4 : db $CC, $CC ; 0x21E0\u20130x21E3: 0xC9C, 0xCC1, 0xCA4, 0xCA4\n#_03E6D6: db $BA, $1E, $FE, $62 : db $2D, $C1 ; 0x21E4\u20130x21E7: 0xDBA, 0x21E, 0x1FE, 0xC62\n#_03E6DC: db $35, $A4, $11, $6F : db $2C, $DC ; 0x21E8\u20130x21EB: 0xC35, 0x2A4, 0xC11, 0xD6F\n#_03E6E2: db $C0, $A4, $11, $11 : db $CC, $DD ; 0x21EC\u20130x21EF: 0xCC0, 0xCA4, 0xD11, 0xD11\n#_03E6E8: db $C1, $78, $ED, $70 : db $CC, $1C ; 0x21F0\u20130x21F3: 0xCC1, 0xC78, 0xCED, 0x170\n#_03E6EE: db $70, $11, $72, $71 : db $CD, $CC ; 0x21F4\u20130x21F7: 0xD70, 0xC11, 0xC72, 0xC71\n#_03E6F4: db $71, $76, $F3, $71 : db $CC, $CC ; 0x21F8\u20130x21FB: 0xC71, 0xC76, 0xCF3, 0xC71\n#_03E6FA: db $78, $76, $76, $F6 : db $C1, $CC ; 0x21FC\u20130x21FF: 0x178, 0xC76, 0xC76, 0xCF6\n#_03E700: db $78, $F7, $7C, $FA : db $CC, $CC ; 0x2200\u20130x2203: 0xC78, 0xCF7, 0xC7C, 0xCFA\n#_03E706: db $F8, $78, $1F, $7C : db $CC, $BC ; 0x2204\u20130x2207: 0xCF8, 0xC78, 0xC1F, 0xB7C\n#_03E70C: db $AC, $0A, $D1, $1F : db $21, $2B ; 0x2208\u20130x220B: 0x1AC, 0x20A, 0xBD1, 0x21F\n#_03E712: db $B9, $34, $0B, $E3 : db $C0, $10 ; 0x220C\u20130x220F: 0x0B9, 0xC34, 0x00B, 0x1E3\n#_03E718: db $56, $D1, $C7, $C1 : db $12, $2C ; 0x2210\u20130x2213: 0x256, 0x1D1, 0xCC7, 0x2C1\n#_03E71E: db $B9, $0B, $77, $34 : db $C1, $20 ; 0x2214\u20130x2217: 0x1B9, 0xC0B, 0x077, 0x234\n#_03E724: db $7A, $FD, $C7, $C7 : db $6C, $22 ; 0x2218\u20130x221B: 0xC7A, 0x6FD, 0x2C7, 0x2C7\n#_03E72A: db $1F, $1F, $84, $ED : db $BB, $C1 ; 0x221C\u20130x221F: 0xB1F, 0xB1F, 0x184, 0xCED\n#_03E730: db $D0, $D2, $24, $7C : db $22, $3C ; 0x2220\u20130x2223: 0x2D0, 0x2D2, 0xC24, 0x37C\n#_03E736: db $ED, $BA, $FB, $27 : db $12, $2D ; 0x2224\u20130x2227: 0x2ED, 0x1BA, 0xDFB, 0x227\n#_03E73C: db $34, $14, $CD, $05 : db $2D, $25 ; 0x2228\u20130x222B: 0xD34, 0x214, 0x5CD, 0x205\n#_03E742: db $7C, $EB, $B6, $B6 : db $C1, $22 ; 0x222C\u20130x222F: 0x17C, 0xCEB, 0x2B6, 0x2B6\n#_03E748: db $C4, $86, $31, $51 : db $01, $11 ; 0x2230\u20130x2233: 0x1C4, 0x086, 0x131, 0x151\n#_03E74E: db $CD, $D7, $DC, $CD : db $22, $22 ; 0x2234\u20130x2237: 0x2CD, 0x2D7, 0x2DC, 0x2CD\n#_03E754: db $01, $C7, $D4, $03 : db $D2, $2D ; 0x2238\u20130x223B: 0x201, 0xDC7, 0xDD4, 0x203\n#_03E75A: db $D4, $35, $34, $35 : db $02, $02 ; 0x223C\u20130x223F: 0x2D4, 0x035, 0x234, 0x035\n#_03E760: db $FA, $0E, $29, $28 : db $CD, $DD ; 0x2240\u20130x2243: 0xDFA, 0xC0E, 0xD29, 0xD28\n#_03E766: db $29, $31, $31, $31 : db $DD, $DD ; 0x2244\u20130x2247: 0xD29, 0xD31, 0xD31, 0xD31\n#_03E76C: db $31, $31, $31, $31 : db $DD, $DD ; 0x2248\u20130x224B: 0xD31, 0xD31, 0xD31, 0xD31\n#_03E772: db $33, $31, $31, $31 : db $DD, $DD ; 0x224C\u20130x224F: 0xD33, 0xD31, 0xD31, 0xD31\n#_03E778: db $31, $EC, $3F, $3F : db $D3, $DD ; 0x2250\u20130x2253: 0x331, 0xDEC, 0xD3F, 0xD3F\n#_03E77E: db $40, $40, $42, $40 : db $DD, $DD ; 0x2254\u20130x2257: 0xD40, 0xD40, 0xD42, 0xD40\n#_03E784: db $40, $44, $57, $46 : db $DD, $8D ; 0x2258\u20130x225B: 0xD40, 0xD44, 0xD57, 0x846\n#_03E78A: db $40, $4D, $57, $57 : db $DD, $88 ; 0x225C\u20130x225F: 0xD40, 0xD4D, 0x857, 0x857\n#_03E790: db $4F, $50, $43, $57 : db $DD, $D8 ; 0x2260\u20130x2263: 0xD4F, 0xD50, 0x843, 0xD57\n#_03E796: db $42, $57, $57, $55 : db $D8, $88 ; 0x2264\u20130x2267: 0x842, 0xD57, 0x857, 0x855\n#_03E79C: db $57, $55, $57, $55 : db $8D, $88 ; 0x2268\u20130x226B: 0xD57, 0x855, 0x857, 0x855\n#_03E7A2: db $58, $55, $12, $4A : db $D8, $9D ; 0x226C\u20130x226F: 0x858, 0xD55, 0xD12, 0x94A\n#_03E7A8: db $10, $46, $46, $5A : db $9D, $DD ; 0x2270\u20130x2273: 0xD10, 0x946, 0xD46, 0xD5A\n#_03E7AE: db $5C, $5E, $5F, $5D : db $DD, $DD ; 0x2274\u20130x2277: 0xD5C, 0xD5E, 0xD5F, 0xD5D\n#_03E7B4: db $5D, $61, $62, $5F : db $DD, $DD ; 0x2278\u20130x227B: 0xD5D, 0xD61, 0xD62, 0xD5F\n#_03E7BA: db $5F, $64, $66, $66 : db $DD, $DD ; 0x227C\u20130x227F: 0xD5F, 0xD64, 0xD66, 0xD66\n#_03E7C0: db $6E, $5D, $70, $72 : db $DD, $DD ; 0x2280\u20130x2283: 0xD6E, 0xD5D, 0xD70, 0xD72\n#_03E7C6: db $5C, $5F, $67, $61 : db $DD, $DD ; 0x2284\u20130x2287: 0xD5C, 0xD5F, 0xD67, 0xD61\n#_03E7CC: db $63, $65, $66, $78 : db $DD, $DD ; 0x2288\u20130x228B: 0xD63, 0xD65, 0xD66, 0xD78\n#_03E7D2: db $7C, $7D, $7F, $81 : db $DD, $DD ; 0x228C\u20130x228F: 0xD7C, 0xD7D, 0xD7F, 0xD81\n#_03E7D8: db $83, $84, $86, $88 : db $DD, $DD ; 0x2290\u20130x2293: 0xD83, 0xD84, 0xD86, 0xD88\n#_03E7DE: db $93, $95, $97, $99 : db $DD, $DD ; 0x2294\u20130x2297: 0xD93, 0xD95, 0xD97, 0xD99\n#_03E7E4: db $9A, $96, $A0, $99 : db $DD, $DD ; 0x2298\u20130x229B: 0xD9A, 0xD96, 0xDA0, 0xD99\n#_03E7EA: db $A2, $93, $00, $00 : db $DD, $00 ; 0x229C\u20130x229F: 0xDA2, 0xD93, 0x000, 0x000\n\n; =========================================================\n; FREE ROM: 0x16\n; =========================================================", + "file": "bank_03.asm" + }, + { + "name": "NULL_03E7F0", + "code": "NULL_03E7F0:\n#_03E7F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_03E7F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_03.asm" + }, + { + "name": "EnemyDamageCompressed", + "code": "EnemyDamageCompressed:\n#_03E800: db $22, $11, $03, $12, $11, $03, $33, $23\n#_03E808: db $11, $83, $00, $03, $23, $11, $E4, $2C\n#_03E810: db $00, $00, $31, $23, $11, $0B, $23, $33\n#_03E818: db $17, $01, $33, $33, $11, $11, $01, $10\n#_03E820: db $00, $31, $23, $11, $02, $23, $33, $17\n#_03E828: db $22, $11, $00, $12, $83, $00, $4C, $22\n#_03E830: db $11, $05, $12, $11, $01, $11, $31, $31\n#_03E838: db $23, $11, $03, $13, $33, $13, $31, $23\n#_03E840: db $11, $02, $23, $33, $17, $22, $11, $04\n#_03E848: db $12, $11, $03, $13, $32, $24, $11, $0B\n#_03E850: db $01, $11, $31, $41, $11, $12, $10, $21\n#_03E858: db $01, $33, $17, $31, $22, $11, $00, $21\n#_03E860: db $83, $00, $45, $06, $11, $11, $13, $23\n#_03E868: db $20, $03, $17, $2C, $00, $00, $10, $29\n#_03E870: db $00, $24, $11, $03, $22, $22, $27, $01\n#_03E878: db $83, $00, $01, $02, $23, $13, $37, $44\n#_03E880: db $11, $12, $02, $03, $13, $23, $27, $00\n#_03E888: db $24, $22, $02, $02, $22, $32, $3F, $00\n#_03E890: db $00, $31, $22, $11, $03, $01, $23, $33\n#_03E898: db $17, $27, $00, $00, $31, $23, $11, $85\n#_03E8A0: db $00, $95, $04, $12, $11, $03, $23, $23\n#_03E8A8: db $87, $01, $18, $27, $00, $07, $01, $11\n#_03E8B0: db $11, $03, $31, $00, $03, $13, $24, $00\n#_03E8B8: db $02, $20, $00, $07, $34, $00, $00, $10\n#_03E8C0: db $E4, $99, $00, $24, $11, $04, $21, $22\n#_03E8C8: db $27, $00, $21, $22, $11, $05, $01, $11\n#_03E8D0: db $11, $00, $11, $11, $24, $00, $00, $31\n#_03E8D8: db $23, $11, $03, $03, $13, $17, $31, $23\n#_03E8E0: db $11, $04, $23, $33, $17, $31, $43, $22\n#_03E8E8: db $11, $03, $03, $03, $17, $31, $23, $11\n#_03E8F0: db $83, $02, $1D, $00, $43, $22, $11, $83\n#_03E8F8: db $02, $1D, $23, $11, $03, $03, $33, $17\n#_03E900: db $31, $23, $11, $04, $03, $13, $27, $31\n#_03E908: db $43, $22, $11, $84, $02, $25, $22, $11\n#_03E910: db $04, $03, $03, $27, $31, $43, $22, $11\n#_03E918: db $83, $02, $35, $23, $11, $02, $23, $33\n#_03E920: db $17, $22, $11, $04, $21, $11, $02, $12\n#_03E928: db $33, $24, $11, $03, $03, $23, $23, $31\n#_03E930: db $84, $00, $C1, $84, $00, $8E, $84, $02\n#_03E938: db $73, $27, $00, $00, $31, $83, $02, $61\n#_03E940: db $02, $01, $33, $33, $27, $00, $03, $13\n#_03E948: db $33, $33, $30, $83, $00, $4C, $03, $01\n#_03E950: db $33, $33, $10, $83, $00, $4C, $24, $11\n#_03E958: db $03, $03, $13, $21, $31, $23, $11, $02\n#_03E960: db $03, $13, $21, $27, $00, $07, $31, $11\n#_03E968: db $11, $13, $11, $21, $33, $17, $35, $00\n#_03E970: db $01, $03, $03, $25, $00, $01, $03, $03\n#_03E978: db $E4, $37, $00, $22, $11, $04, $12, $11\n#_03E980: db $02, $12, $32, $E4, $27, $00, $01, $51\n#_03E988: db $31, $22, $11, $83, $02, $1D, $23, $11\n#_03E990: db $02, $01, $11, $11, $27, $00, $8F, $02\n#_03E998: db $70, $22, $11, $83, $00, $03, $00, $13\n#_03E9A0: db $27, $00, $84, $02, $C0, $02, $03, $33\n#_03E9A8: db $12, $E4, $37, $00, $22, $11, $00, $12\n#_03E9B0: db $22, $11, $00, $31, $2F, $00, $07, $01\n#_03E9B8: db $11, $11, $10, $21, $03, $33, $33, $3F\n#_03E9C0: db $00, $85, $01, $18, $01, $33, $32, $27\n#_03E9C8: db $00, $04, $01, $12, $21, $20, $12, $25\n#_03E9D0: db $00, $01, $10, $01, $22, $00, $24, $11\n#_03E9D8: db $01, $23, $23, $83, $00, $BF, $04, $10\n#_03E9E0: db $01, $03, $33, $17, $27, $00, $01, $01\n#_03E9E8: db $11, $22, $00, $00, $04, $31, $00, $00\n#_03E9F0: db $31, $83, $01, $FE, $83, $03, $7D, $83\n#_03E9F8: db $04, $31, $01, $01, $10, $83, $00, $B6\n#_03EA00: db $00, $00, $83, $00, $4C, $23, $11, $02\n#_03EA08: db $21, $01, $32, $83, $00, $6F, $04, $12\n#_03EA10: db $21, $03, $33, $12, $22, $11, $00, $10\n#_03EA18: db $83, $00, $7C, $22, $11, $25, $00, $83\n#_03EA20: db $04, $81, $2A, $00, $22, $11, $84, $00\n#_03EA28: db $CB, $3F, $00, $22, $11, $04, $12, $21\n#_03EA30: db $01, $03, $12, $22, $11, $03, $12, $11\n#_03EA38: db $02, $32, $83, $01, $FC, $04, $10, $01\n#_03EA40: db $01, $12, $32, $86, $01, $18, $00, $22\n#_03EA48: db $87, $04, $E0, $39, $00, $00, $11, $85\n#_03EA50: db $02, $DC, $83, $00, $11, $00, $05, $26\n#_03EA58: db $00, $01, $01, $02, $84, $03, $DF, $04\n#_03EA60: db $11, $03, $01, $31, $31, $22, $11, $04\n#_03EA68: db $21, $03, $33, $13, $31, $22, $11, $83\n#_03EA70: db $05, $2C, $24, $11, $85, $04, $2D, $84\n#_03EA78: db $00, $03, $86, $04, $08, $25, $11, $02\n#_03EA80: db $03, $13, $13, $24, $11, $01, $01, $10\n#_03EA88: db $E4, $30, $00, $22, $11, $84, $00, $63\n#_03EA90: db $E4, $50, $00, $03, $11, $11, $30, $11\n#_03EA98: db $23, $00, $83, $05, $E9, $E4, $22, $00\n#_03EAA0: db $00, $01, $83, $05, $E9, $30, $00, $01\n#_03EAA8: db $01, $31, $25, $00, $01, $01, $31, $83\n#_03EAB0: db $03, $E0, $03, $12, $03, $13, $13, $27\n#_03EAB8: db $00, $08, $51, $11, $11, $30, $21, $03\n#_03EAC0: db $33, $17, $50, $27, $00, $01, $11, $11\n#_03EAC8: db $25, $00, $01, $11, $11, $22, $00, $00\n#_03EAD0: db $40, $85, $05, $0F, $00, $04, $84, $01\n#_03EAD8: db $2E, $24, $00, $22, $11, $83, $00, $63\n#_03EAE0: db $00, $21, $83, $04, $3F, $00, $02, $27\n#_03EAE8: db $00, $02, $10, $02, $22, $24, $00, $02\n#_03EAF0: db $20, $00, $07, $24, $11, $02, $21, $11\n#_03EAF8: db $27, $30, $00, $01, $03, $33, $28, $00\n#_03EB00: db $00, $02, $22, $00, $FF\n\n; =========================================================\n; FREE ROM: 0x19B\n; =========================================================", + "file": "bank_03.asm" + }, + { + "name": "Intro_SetupScreen", + "code": "Intro_SetupScreen:\n{\n #_028000: LDA.b #$80\n #_028002: STA.w $0710\n\n #_028005: JSL EnableForceBlank\n\n #_028009: LDA.b #$10\n #_02800B: STA.b $1C\n #_02800D: STZ.b $1D\n\n #_02800F: JSR Intro_InitializeBackgroundSettings\n\n #_028012: LDA.b #$20\n #_028014: STA.b $99\n\n #_028016: LDA.b #$02\n #_028018: STA.w OBSEL\n\n #_02801B: LDA.b #$14\n #_02801D: STA.w $0AAA\n\n #_028020: JSL Graphics_LoadChrHalfSlot\n\n #_028024: STZ.w $0AAA\n\n #_028027: JSR LoadOWMusicIfNeeded\n\n #_02802A: REP #$20\n\n #_02802C: LDX.b #$80\n #_02802E: STX.w VMAIN\n\n #_028031: LDA.w #$27F0 ; VRAM $4FE0\n #_028034: STA.w VMADDR\n\n #_028037: LDX.b #$20\n\n #_028039: LDA.w #$7FFF ; RGB: #F8F8F8\n\n.clear_next\n #_02803C: STZ.w VMDATA\n\n #_02803F: STA.l $7EC620,X\n\n #_028043: DEX\n #_028044: DEX\n #_028045: BPL .clear_next\n\n #_028047: LDA.w #$1FFE\n #_02804A: STA.b $C8\n\n #_02804C: LDA.w #$1BFE\n #_02804F: STA.b $CA\n\n #_028051: SEP #$20\n\n #_028053: RTL", + "file": "bank_02.asm" + }, + { + "name": "Intro_InitializeSRAMWRAM", + "code": "Intro_InitializeSRAMWRAM:\n{\n #_028054: REP #$30\n\n #_028056: STZ.b $00\n\n.next_file_check\n #_028058: LDX.b $00\n\n #_02805A: LDA.l SaveFileCopyOffsets,X\n #_02805E: TAX\n\n #_02805F: PHX\n\n #_028060: LDY.w #$0000\n #_028063: TYA\n\n.calc_checksum_main\n #_028064: CLC\n #_028065: ADC.l $700000,X\n\n #_028069: INX\n #_02806A: INX\n\n #_02806B: INY\n #_02806C: CPY.w #$0280\n #_02806F: BNE .calc_checksum_main\n\n #_028071: PLX\n\n #_028072: CMP.w #$5A5A\n #_028075: BEQ .checksum_good\n\n; ---------------------------------------------------------\n\n #_028077: PHX\n\n #_028078: LDY.w #$0000\n #_02807B: TYA\n\n.calc_checksum_backup\n #_02807C: CLC\n #_02807D: ADC.l $700F00,X\n\n #_028081: INX\n #_028082: INX\n\n #_028083: INY\n #_028084: CPY.w #$0280\n #_028087: BNE .calc_checksum_backup\n\n #_028089: PLX\n\n #_02808A: CMP.w #$5A5A\n #_02808D: BNE ClearAnSRAMFile\n\n; ---------------------------------------------------------\n\n #_02808F: LDY.w #$0000\n\n.copy_from_backup\n #_028092: LDA.l $700F00,X\n #_028096: STA.l $700000,X\n\n #_02809A: LDA.l $701000,X\n #_02809E: STA.l $700100,X\n\n #_0280A2: LDA.l $701100,X\n #_0280A6: STA.l $700200,X\n\n #_0280AA: LDA.l $701200,X\n #_0280AE: STA.l $700300,X\n\n #_0280B2: LDA.l $701300,X\n #_0280B6: STA.l $700400,X\n\n #_0280BA: INX\n #_0280BB: INX\n\n #_0280BC: INY\n #_0280BD: CPY.w #$0080\n #_0280C0: BNE .copy_from_backup\n\n; ---------------------------------------------------------\n\n.checksum_good\n #_0280C2: INC.b $00\n #_0280C4: INC.b $00\n\n #_0280C6: LDX.b $00\n #_0280C8: CPX.w #$0006\n #_0280CB: BNE .next_file_check\n\n; ---------------------------------------------------------\n\n #_0280CD: LDX.w #$00FE\n\n.clear_next_sprite_prop\n #_0280D0: STZ.w $0D00,X\n #_0280D3: STZ.w $0E00,X\n #_0280D6: STZ.w $0F00,X\n\n #_0280D9: DEX\n #_0280DA: DEX\n #_0280DB: BPL .clear_next_sprite_prop\n\n #_0280DD: SEP #$30\n\n #_0280DF: RTL", + "file": "bank_02.asm" + }, + { + "name": "Intro_LoadTextAndPalettes", + "code": "Intro_LoadTextAndPalettes:\n #_028116: JSL CreateMessagePointers\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadAllPalettes_long", + "code": "Overworld_LoadAllPalettes_long:\n #_02811A: JSR Overworld_LoadAllPalettes\n\n #_02811D: RTL", + "file": "bank_02.asm" + }, + { + "name": "AnimatedTileSheets", + "code": "AnimatedTileSheets:\n #_02811E: db $5D, $5D, $5D, $5D, $5D, $5D, $5D, $5F\n #_028126: db $5D, $5F, $5F, $5E, $5F, $5E, $5E, $5D\n #_02812E: db $5D, $5E, $5D, $5D, $5D, $5D, $5D, $5D\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module05_LoadFile", + "code": "Module05_LoadFile:\n{\n #_028136: JSL EnableForceBlank\n\n #_02813A: STZ.w $0200\n\n #_02813D: STZ.w $03F4\n\n #_028140: STZ.w $02D4\n #_028143: STZ.w $02D7\n\n #_028146: STZ.w $02F9\n\n #_028149: STZ.w $0379\n\n #_02814C: STZ.w $03FD\n\n #_02814F: JSL EraseTilemaps_normal\n\n #_028153: LDA.b #$02\n #_028155: STA.w OBSEL\n\n #_028158: JSL LoadDefaultGraphics\n #_02815C: JSL Sprite_LoadGraphicsProperties\n #_028160: JSL LoadDefaultTileTypes\n\n #_028164: JSL DecompressSwordGraphics\n #_028168: JSL DecompressShieldGraphics\n\n #_02816C: JSL Link_Initialize\n\n #_028170: JSL LoadFollowerGraphics\n\n #_028174: LDA.b #$46\n #_028176: STA.l $7EC2FC\n #_02817A: STA.l $7EC2FD\n #_02817E: STA.l $7EC2FE\n #_028182: STA.l $7EC2FF\n\n #_028186: STZ.w $02CD\n\n #_028189: LDA.b #$02\n #_02818B: STA.w $02CE\n\n #_02818E: LDA.b #$30\n #_028190: STA.b $FF\n\n #_028192: LDA.l $7EF3CA\n #_028196: BEQ .light_world\n\n #_028198: LDA.b $1B\n #_02819A: BNE LoadUnderworldRoomRebuildHUD\n\n #_02819C: JSL SearchForEquippedItem_long\n #_0281A0: JSL RebuildHUD_long2\n #_0281A4: JSL UpdateEquippedItem_long\n\n #_0281A8: STZ.w $010A\n\n #_0281AB: LDA.b #$20 ; ROOM 0020\n #_0281AD: STA.b $A0\n #_0281AF: STZ.b $A1\n\n #_0281B1: LDA.b #$08\n #_0281B3: STA.b $10\n #_0281B5: STZ.b $11\n #_0281B7: STZ.b $B0\n\n #_0281B9: STZ.w $04AA\n\n #_0281BC: RTL", + "file": "bank_02.asm" + }, + { + "name": "LoadUnderworldRoomRebuildHUD", + "code": "LoadUnderworldRoomRebuildHUD:\n{\n #_028208: LDA.b #$00\n #_02820A: STA.l $7EC011\n\n #_02820E: ORA.b #$07\n #_028210: STA.b $95\n\n #_028212: JSL SearchForEquippedItem_long\n #_028216: JSL RebuildHUD_long2\n #_02821A: JSL UpdateEquippedItem_long\n}\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module06_UnderworldLoad", + "code": "Module06_UnderworldLoad:\n #_02821E: REP #$20\n\n #_028220: LDA.w #$0005\n #_028223: STA.w $012D\n\n #_028226: STZ.b $A0\n #_028228: STZ.b $A2\n\n #_02822A: STZ.w $0402\n\n #_02822D: LDA.w #$0000\n #_028230: STA.l $7EC019\n #_028234: STA.l $7EC01B\n #_028238: STA.l $7EC01D\n #_02823C: STA.l $7EC01F\n #_028240: STA.l $7EC021\n #_028244: STA.l $7EC023\n\n #_028248: SEP #$20\n\n #_02824A: JSR Underworld_LoadEntrance\n\n #_02824D: LDA.w $040C\n #_028250: CMP.b #$FF ; DUNGEON FF\n #_028252: BEQ .cave\n\n #_028254: CMP.b #$02 ; DUNGEON 02\n #_028256: BNE .not_castle\n\n #_028258: LDA.b #$00 ; DUNGEON 00\n\n.not_castle\n #_02825A: LSR A\n #_02825B: TAX\n\n #_02825C: LDA.l $7EF37C,X\n\n.cave\n #_028260: JSL RebuildHUD_Keys\n\n #_028264: STZ.w $045A\n #_028267: STZ.w $0458\n\n #_02826A: JSR Underworld_LoadAndDrawRoom\n #_02826D: JSL Underworld_LoadCustomTileTypes\n\n; ---------------------------------------------------------\n\n #_028271: LDX.w $0AA1\n\n #_028274: LDA.l AnimatedTileSheets,X\n #_028278: TAY\n\n #_028279: JSL DecompressAnimatedUnderworldTiles\n #_02827D: JSL Underworld_LoadAttributeTable\n\n #_028281: LDA.b #$0A\n #_028283: STA.w $0AA4\n\n #_028286: JSL InitializeTilesets\n\n #_02828A: LDA.b #$0A\n #_02828C: STA.w $0AB1\n\n #_02828F: JSR Underworld_LoadPalettes\n\n #_028292: LDA.w $02E0\n #_028295: ORA.b $56\n #_028297: BEQ .not_bunny\n\n #_028299: JSL RefreshLinkEquipmentPalettes_bunny\n\n.not_bunny\n #_02829D: REP #$30\n\n #_02829F: LDA.b $A0\n #_0282A1: AND.w #$000F\n #_0282A4: ASL A\n #_0282A5: XBA\n #_0282A6: STA.w $062C\n\n #_0282A9: LDA.b $A0\n #_0282AB: AND.w #$0FF0\n #_0282AE: LSR A\n #_0282AF: LSR A\n #_0282B0: LSR A\n #_0282B1: XBA\n #_0282B2: STA.w $062E\n\n #_0282B5: LDA.b $A0\n #_0282B7: CMP.w #$0104 ; ROOM 0104\n #_0282BA: BNE .use_current_entrance\n\n #_0282BC: LDA.l $7EF3C6\n #_0282C0: AND.w #$0010\n #_0282C3: BEQ .use_current_entrance\n\n #_0282C5: LDA.w #$0000\n #_0282C8: STA.l $7EC005\n\n; ---------------------------------------------------------\n\n.use_current_entrance\n #_0282CC: SEP #$30\n\n #_0282CE: JSL SetAndSaveVisitedQuadrantFlags\n\n #_0282D2: LDA.b #$02\n #_0282D4: STA.b $99\n\n #_0282D6: LDA.b #$B3\n #_0282D8: STA.b $9A\n\n #_0282DA: LDX.w $045A\n\n #_0282DD: LDA.l $7EC005\n #_0282E1: BNE .do_fade\n\n #_0282E3: LDX.b #$03\n #_0282E5: LDY.w $0414\n #_0282E8: BEQ .no_room_effect\n\n\n #_0282EA: LDA.b #$32\n #_0282EC: CPY.b #$07\n #_0282EE: BEQ .set_room_effect\n\n #_0282F0: LDA.b #$62\n #_0282F2: CPY.b #$04\n #_0282F4: BEQ .set_room_effect\n\n.no_room_effect\n #_0282F6: LDA.b #$20\n\n.set_room_effect\n #_0282F8: STA.b $9A\n\n.do_fade\n #_0282FA: LDA.l RoomEffectFixedColors,X\n #_0282FE: STA.l $7EC017\n\n #_028302: JSL ApplyGrayscaleFixed_Parameterized\n\n #_028306: LDA.b #$1F\n #_028308: STA.l $7EC007\n\n #_02830C: LDA.b #$00\n #_02830E: STA.l $7EC00B\n\n #_028312: LDA.b #$02\n #_028314: STA.l $7EC009\n\n #_028318: STZ.w $0AA9\n\n #_02831B: STZ.b $57\n\n #_02831D: STZ.b $3A\n #_02831F: STZ.b $3C\n\n; ---------------------------------------------------------\n\n #_028321: JSR Underworld_ResetTorchBackgroundAndPlayer\n #_028324: JSL Link_CheckIfBunny\n #_028328: JSR ResetThenCacheRoomEntryProperties\n\n #_02832B: LDA.l $7EF3CC\n #_02832F: CMP.b #$0D ; FOLLOWER 0D\n #_028331: BNE .not_superbomb\n\n #_028333: LDA.b #$00\n #_028335: STA.l $7EF3CC\n\n #_028339: STZ.w $04B4\n\n #_02833C: JSL HUD_HideBigNumbers\n\n.not_superbomb\n #_028340: LDA.b #$09\n #_028342: STA.b $94\n\n #_028344: JSL Follower_Initialize\n #_028348: JSL Sprite_ResetAll\n #_02834C: JSL Underworld_ResetSprites\n\n #_028350: STZ.w $02F0\n\n #_028353: INC.w $04C7\n\n #_028356: LDA.l $7EF3C5\n #_02835A: BNE .not_bed_cutscene\n\n #_02835C: LDA.l $7EF3C6\n #_028360: AND.b #$10\n #_028362: BNE .not_bed_cutscene\n\n #_028364: LDA.b #$30 ; Fixed color RGB: #808000\n #_028366: STA.b $9C\n\n #_028368: LDA.b #$50\n #_02836A: STA.b $9D\n\n #_02836C: LDA.b #$80\n #_02836E: STA.b $9E\n\n #_028370: LDA.b #$00\n #_028372: STA.l $7EC005\n #_028376: STA.l $7EC006\n\n #_02837A: JSL Link_TuckIntoBed\n\n; ---------------------------------------------------------\n\n.not_bed_cutscene\n #_02837E: LDA.b #$07\n #_028380: STA.w $010C\n #_028383: STA.b $10\n\n #_028385: LDA.b #$0F\n #_028387: STA.b $11\n\n #_028389: JSR Underworld_LoadSongBankIfNeeded\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldAdjustRainSFX", + "code": "UnderworldAdjustRainSFX:\n{\n #_02838C: LDA.l $7EF3C5\n #_028390: CMP.b #$02\n #_028392: BCS .exit\n\n #_028394: LDA.b #$05 ; SFX1.05\n #_028396: STA.w $012D\n\n #_028399: LDA.b $A4\n #_02839B: BMI .exit\n\n #_02839D: REP #$20\n\n #_02839F: LDA.b $A0 ; ROOM 0002\n #_0283A1: CMP.w #$0002\n #_0283A4: BEQ .exit\n\n #_0283A6: CMP.w #$0012 ; ROOM 0012\n #_0283A9: BEQ .exit\n\n #_0283AB: SEP #$20\n\n #_0283AD: LDA.b #$03 ; SFX1.03\n #_0283AF: STA.w $012D\n\n.exit\n #_0283B2: SEP #$20\n\n #_0283B4: RTL", + "file": "bank_02.asm" + }, + { + "name": "CacheRoomEntryProperties_long", + "code": "CacheRoomEntryProperties_long:\n #_0283B5: JSR CacheRoomEntryProperties\n\n #_0283B8: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module08_OverworldLoad", + "code": "Module08_OverworldLoad:", + "file": "bank_02.asm" + }, + { + "name": "Module0A_OverworldSpecialLoad", + "code": "Module0A_OverworldSpecialLoad:\n #_0283BF: LDA.b $11\n #_0283C1: ASL A\n #_0283C2: TAX\n\n #_0283C3: JSR (OverworldLoad_submodules,X)\n\n #_0283C6: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module08_00_LoadProperties", + "code": "Module08_00_LoadProperties:\n #_0283C7: LDA.b #$82\n #_0283C9: STA.b $99\n\n #_0283CB: STZ.w $03F4\n\n #_0283CE: JSL AdjustLinkBunnyStatus\n\n #_0283D2: LDA.b $10\n #_0283D4: CMP.b #$08\n #_0283D6: BNE .special_overworld_a\n\n #_0283D8: JSR LoadOverworldFromUnderworld\n #_0283DB: BRA .continue_a\n\n.special_overworld_a\n #_0283DD: JSR LoadOverworldFromSpecialOverworld\n\n.continue_a\n #_0283E0: JSL AdjustOverworldAmbiance\n\n #_0283E4: LDA.b #$FF\n #_0283E6: STA.l $7EF36F\n\n #_0283EA: JSL RefillLogic_long\n\n #_0283EE: LDY.b #$58\n #_0283F0: LDX.b #$02 ; SONG 02\n\n #_0283F2: LDA.b $8A\n #_0283F4: CMP.b #$03 ; OW 03\n #_0283F6: BEQ .death_mountain\n\n #_0283F8: CMP.b #$05 ; OW 05\n #_0283FA: BEQ .death_mountain\n\n #_0283FC: CMP.b #$07 ; OW 07\n #_0283FE: BEQ .death_mountain\n\n #_028400: LDX.b #$09 ; SONG 09\n\n #_028402: LDA.b $8A\n #_028404: CMP.b #$43 ; OW 43\n #_028406: BEQ .death_mountain\n\n #_028408: CMP.b #$45 ; OW 45\n #_02840A: BEQ .death_mountain\n\n #_02840C: CMP.b #$47 ; OW 47\n #_02840E: BEQ .death_mountain\n\n #_028410: LDY.b #$5A ; OW 5A\n\n #_028412: LDA.b $8A\n #_028414: CMP.b #$40\n #_028416: BCS .dark_world\n\n; ---------------------------------------------------------\n\n #_028418: LDX.b #$07 ; SONG 07\n\n #_02841A: LDA.l $7EF3C5\n #_02841E: CMP.b #$03\n #_028420: BCC .aga_alive\n\n #_028422: LDX.b #$02 ; SONG 02\n\n.aga_alive\n #_028424: LDA.b $A0\n #_028426: CMP.b #$E3 ; ROOM 00E3\n #_028428: BEQ .death_mountain\n\n #_02842A: CMP.b #$18 ; ROOM 0018\n #_02842C: BEQ .death_mountain\n\n #_02842E: CMP.b #$2F ; ROOM 002F\n #_028430: BEQ .death_mountain\n\n #_028432: LDA.b $A0\n #_028434: CMP.b #$1F ; ROOM 011F\n #_028436: BNE .not_kakariko_shop\n\n #_028438: LDA.b $8A\n #_02843A: CMP.b #$18 ; OW 18\n #_02843C: BEQ .death_mountain\n\n.not_kakariko_shop\n #_02843E: LDX.b #$05 ; SONG 05\n\n #_028440: LDA.l $7EF300\n #_028444: AND.b #$40\n #_028446: BEQ .no_ms\n\n #_028448: LDX.b #$02 ; SONG 02\n\n.no_ms\n #_02844A: LDA.b $A0 ; ROOM 0100\n #_02844C: BEQ .death_mountain\n\n #_02844E: CMP.b #$E1 ; ROOM 00E1\n #_028450: BEQ .death_mountain\n\n; ---------------------------------------------------------\n\n.dark_world\n #_028452: LDX.b #$F3 ; SONG F3 - max volume\n\n #_028454: LDA.w $0132\n #_028457: CMP.b #$F2 ; SONG F2 - half volume\n #_028459: BEQ .continue_with_music\n\n #_02845B: LDX.b #$02 ; SONG 02\n\n #_02845D: LDA.l $7EF3C5\n #_028461: CMP.b #$02\n #_028463: BCS .death_mountain\n\n #_028465: LDX.b #$03 ; SONG 03\n\n.death_mountain\n #_028467: LDA.l $7EF3CA\n #_02846B: BEQ .continue_with_music\n\n #_02846D: LDX.b #$0D ; SONG 0D\n\n #_02846F: LDA.b $8A\n #_028471: CMP.b #$40 ; OW 40\n #_028473: BEQ .use_sw_theme\n\n #_028475: CMP.b #$43 ; OW 43\n #_028477: BEQ .use_sw_theme\n\n #_028479: CMP.b #$45 ; OW 45\n #_02847B: BEQ .use_sw_theme\n\n #_02847D: CMP.b #$47 ; OW 47\n #_02847F: BEQ .use_sw_theme\n\n #_028481: LDX.b #$09 ; SONG 09\n\n.use_sw_theme\n #_028483: LDA.l $7EF357\n #_028487: BNE .continue_with_music\n\n #_028489: LDX.b #$04 ; SONG 04\n\n.continue_with_music\n #_02848B: STX.w $0132\n\n #_02848E: JSL DecompressAnimatedOverworldTiles\n #_028492: JSL InitializeTilesets\n #_028496: JSR OverworldLoadScreensPaletteSet\n\n #_028499: LDX.b $8A\n\n #_02849B: LDA.l $7EFD40,X\n #_02849F: STA.b $00\n\n #_0284A1: LDA.l OverworldPalettesScreenToSet,X\n #_0284A5: JSL OverworldPalettesLoader\n #_0284A9: JSL Overworld_SetScreenBGColor\n\n #_0284AD: LDA.b $10\n #_0284AF: CMP.b #$08\n #_0284B1: BNE .special_overworld_b\n\n #_0284B3: JSR Overworld_CopyPalettesToCache_WithPrep\n #_0284B6: BRA .continue_b\n\n.special_overworld_b\n #_0284B8: JSR SpecialOverworld_CopyPalettesToCache\n\n.continue_b\n #_0284BB: JSL Overworld_SetFixedColAndScroll\n\n #_0284BF: LDA.b #$00\n #_0284C1: STA.l $7EC017\n\n #_0284C5: JSL Follower_Initialize\n\n #_0284C9: LDA.b $8A\n #_0284CB: AND.b #$3F ; OW 00, OW 40\n #_0284CD: BNE .not_woods\n\n #_0284CF: LDA.b #$1E\n #_0284D1: JSL WriteTo4BPPBuffer_item_gfx\n\n.not_woods\n #_0284D5: LDA.b #$09\n #_0284D7: STA.w $010C\n\n #_0284DA: JSL Sprite_ReloadAll_Overworld\n\n #_0284DE: LDA.b $8A\n #_0284E0: AND.b #$40\n #_0284E2: BNE .no_mirror_portal\n\n #_0284E4: JSL InitializeMirrorPortal\n\n.no_mirror_portal\n #_0284E8: LDX.b #$05 ; SFX1.05\n\n #_0284EA: LDA.l $7EF3C5\n #_0284EE: CMP.b #$02\n #_0284F0: BCS .no_rain_sfx\n\n #_0284F2: LDX.b #$01 ; SFX1.01\n\n.no_rain_sfx\n #_0284F4: STX.w $012D\n\n #_0284F7: LDA.l $7EF3CC\n #_0284FB: CMP.b #$06 ; FOLLOWER 06\n #_0284FD: BNE .not_blind_follower\n\n #_0284FF: LDA.b #$00\n #_028501: STA.l $7EF3CC\n\n.not_blind_follower\n #_028505: STZ.b $6C\n\n #_028507: STZ.b $3A\n #_028509: STZ.b $3C\n\n #_02850B: STZ.b $50\n #_02850D: STZ.b $5E\n\n #_02850F: STZ.w $0351\n\n #_028512: JSR DeleteCertainAncillaeStopDashing\n\n #_028515: LDA.l $7EF357\n #_028519: BNE .dont_become_bunny\n\n #_02851B: LDA.l $7EF3CA\n #_02851F: BEQ .dont_become_bunny\n\n #_028521: LDA.b #$01\n #_028523: STA.w $02E0\n #_028526: STA.b $56\n\n #_028528: LDA.b #$17 ; LINKSTATE 17\n #_02852A: STA.b $5D\n\n #_02852C: JSL RefreshLinkEquipmentPalettes_bunny\n\n.dont_become_bunny\n #_028530: LDA.b #$09\n #_028532: STA.b $94\n\n #_028534: LDA.b #$00\n #_028536: STA.l $7EC005\n\n #_02853A: STZ.w $046C\n #_02853D: STZ.b $EE\n #_02853F: STZ.w $0476\n\n #_028542: INC.b $11\n #_028544: INC.b $16\n\n #_028546: STZ.w $0402\n #_028549: STZ.w $0403\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "LoadOWMusicIfNeeded", + "code": "LoadOWMusicIfNeeded:\n #_02854C: LDA.w $0136\n #_02854F: BEQ .exit\n\n #_028551: SEI\n\n #_028552: STZ.w NMITIMEN\n #_028555: STZ.w HDMAEN\n #_028558: STZ.w $0136\n\n #_02855B: LDA.b #$FF ; SONG FF - transfer\n #_02855D: STA.w APUIO0\n\n #_028560: JSL LoadOverworldSongs\n\n #_028564: LDA.b #$81\n #_028566: STA.w NMITIMEN\n\n.exit\n #_028569: RTS", + "file": "bank_02.asm" + }, + { + "name": "AdjustLinkBunnyStatus", + "code": "AdjustLinkBunnyStatus:\n #_02856A: LDA.l $7EF357\n #_02856E: BEQ .exit\n\n; =========================================================\n\n#ForceNonbunnyStatus:\n #_028570: LDA.b #$00 ; LINKSTATE 00\n #_028572: STA.b $5D\n\n #_028574: STZ.w $03F5\n #_028577: STZ.w $03F6\n #_02857A: STZ.w $03F7\n\n #_02857D: STZ.b $56\n #_02857F: STZ.w $02E0\n\n.exit\n #_028582: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module1B_SpawnSelect", + "code": "Module1B_SpawnSelect:\n #_028586: JSL RenderText\n\n #_02858A: LDA.b $11\n #_02858C: BNE .exit\n\n #_02858E: STZ.b $14\n\n #_028590: JSL EnableForceBlank\n #_028594: JSL EraseTilemaps_normal\n\n #_028598: LDA.l $7EF3C8\n #_02859C: PHA\n\n #_02859D: LDX.w $1CE8\n\n #_0285A0: LDA.l .spawns,X\n #_0285A4: STA.l $7EF3C8\n\n #_0285A8: STZ.b $B0\n\n #_0285AA: JSL LoadUnderworldRoomRebuildHUD\n\n #_0285AE: PLA\n #_0285AF: STA.l $7EF3C8\n\n.exit\n #_0285B3: RTL", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadScene_Overworld", + "code": "Credits_LoadScene_Overworld:\n #_0285BA: LDA.b $B0\n #_0285BC: ASL A\n #_0285BD: TAX\n\n #_0285BE: JSR (.vectors,X)\n\n #_0285C1: RTL", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadScene_Overworld_PrepGFX", + "code": "Credits_LoadScene_Overworld_PrepGFX:\n #_028604: JSL EnableForceBlank\n #_028608: JSL EraseTilemaps_normal\n\n #_02860C: LDA.b #$82\n #_02860E: STA.b $99\n\n #_028610: REP #$20\n\n #_028612: LDX.b $11\n\n #_028614: LDA.l .screen,X\n #_028618: STA.b $A0\n\n #_02861A: SEP #$20\n\n #_02861C: CPX.b #$0C\n #_02861E: BEQ .special_overworld\n\n #_028620: CPX.b #$1E\n #_028622: BEQ .special_overworld\n\n #_028624: JSR LoadOverworldFromUnderworld\n\n #_028627: BRA .continue\n\n.special_overworld\n #_028629: JSR LoadSpecialOverworld\n\n; ---------------------------------------------------------\n\n.continue\n #_02862C: STZ.w $012C\n #_02862F: STZ.w $012D\n\n #_028632: LDY.b #$58\n\n #_028634: LDA.b $8A\n #_028636: AND.b #$BF\n #_028638: CMP.b #$03 ; OW 03, OW 43\n #_02863A: BEQ .death_mountain_screen\n\n #_02863C: CMP.b #$05 ; OW 05, OW 45\n #_02863E: BEQ .death_mountain_screen\n\n #_028640: CMP.b #$07 ; OW 07, OW 47\n #_028642: BEQ .death_mountain_screen\n\n #_028644: LDY.b #$5A\n\n.death_mountain_screen\n #_028646: JSL DecompressAnimatedOverworldTiles\n\n; ---------------------------------------------------------\n\n #_02864A: LDA.b $11\n #_02864C: LSR A\n #_02864D: TAX\n\n #_02864E: LDA.l .sprite_gfx,X\n #_028652: STA.w $0AA3\n\n #_028655: LDA.l .sprite_palette,X\n #_028659: PHA\n\n #_02865A: JSL InitializeTilesets\n #_02865E: JSR OverworldLoadScreensPaletteSet\n\n #_028661: PLA\n #_028662: STA.b $00\n\n #_028664: LDX.b $8A\n #_028666: LDA.l OverworldPalettesScreenToSet,X\n\n #_02866A: JSL OverworldPalettesLoader\n\n #_02866E: LDA.b #$01\n #_028670: STA.w $0AB2\n\n #_028673: JSL Palettes_Load_HUD\n\n; ---------------------------------------------------------\n\n #_028677: LDA.b $11\n #_028679: BNE .font_already_transferred\n\n #_02867B: JSL TransferFontToVRAM\n\n.font_already_transferred\n #_02867F: JSR Overworld_CopyPalettesToCache_WithPrep\n #_028682: JSL Overworld_SetFixedColAndScroll\n\n #_028686: LDA.b $8A\n #_028688: CMP.b #$80 ; SPOW\n #_02868A: BCC .no_special_bg_color\n\n #_02868C: JSL Overworld_SetScreenBGColor\n\n.no_special_bg_color\n #_028690: LDA.b #$09\n #_028692: STA.b $94\n\n #_028694: INC.b $B0\n\n #_028696: RTS", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadScene_Overworld_Overlay", + "code": "Credits_LoadScene_Overworld_Overlay:\n #_028697: JSR Overworld_ReloadSubscreenOverlay\n\n #_02869A: STZ.w $012C\n #_02869D: STZ.w $012D\n\n #_0286A0: DEC.b $11\n\n #_0286A2: INC.b $B0\n\n #_0286A4: RTS", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadScene_Overworld_LoadMap", + "code": "Credits_LoadScene_Overworld_LoadMap:\n #_0286A5: JSR Overworld_LoadAndBuildScreen\n #_0286A8: JSL Credits_PrepAndLoadSprites\n\n #_0286AC: STZ.b $C8\n #_0286AE: STZ.b $C9\n #_0286B0: STZ.b $B0\n\n #_0286B2: RTS", + "file": "bank_02.asm" + }, + { + "name": "Credits_OperateScrollingAndTilemap", + "code": "Credits_OperateScrollingAndTilemap:\n #_0286B3: JSL Credits_HandleCameraScrollControl\n\n #_0286B7: LDA.w $0416\n #_0286BA: BEQ .exit\n\n #_0286BC: JSR OverworldHandleMapScroll\n\n.exit\n #_0286BF: RTL", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadCoolBackground", + "code": "Credits_LoadCoolBackground:\n #_0286C0: LDA.b #$21\n #_0286C2: STA.w $0AA1\n\n #_0286C5: LDA.b #$3B\n #_0286C7: STA.w $0AA2\n\n #_0286CA: LDA.b #$2D\n #_0286CC: STA.w $0AA3\n\n #_0286CF: JSL InitializeTilesets\n\n #_0286D3: LDX.b #$5B ; OW 5B\n #_0286D5: STX.b $8A\n\n #_0286D7: LDA.b #$13\n #_0286D9: STA.b $00\n\n #_0286DB: LDA.l OverworldPalettesScreenToSet,X\n #_0286DF: JSL OverworldPalettesLoader\n\n #_0286E3: LDA.b #$03\n #_0286E5: STA.w $0AB5\n\n #_0286E8: JSL Palettes_Load_OWBG2\n #_0286EC: JSR Overworld_CopyPalettesToCache\n #_0286EF: JSR Overworld_ReloadSubscreenOverlay\n\n #_0286F2: STZ.b $E6\n #_0286F4: STZ.b $E7\n #_0286F6: STZ.b $E0\n #_0286F8: STZ.b $E1\n\n #_0286FA: DEC.b $11\n\n #_0286FC: RTL", + "file": "bank_02.asm" + }, + { + "name": "Credits_LoadScene_Underworld", + "code": "Credits_LoadScene_Underworld:\n #_0286FD: JSL EnableForceBlank\n #_028701: JSL EraseTilemaps_normal\n\n #_028705: REP #$20\n\n #_028707: LDX.b $11\n\n #_028709: LDA.l .screen,X\n #_02870D: STA.w $010E\n\n #_028710: SEP #$20\n\n #_028712: JSR Underworld_LoadEntrance\n\n #_028715: STZ.w $045A\n #_028718: STZ.w $0458\n\n #_02871B: JSR Underworld_LoadAndDrawRoom\n\n #_02871E: LDX.w $0AA1\n\n #_028721: LDA.l AnimatedTileSheets,X\n #_028725: TAY\n\n #_028726: JSL DecompressAnimatedUnderworldTiles\n\n #_02872A: LDA.b $11\n #_02872C: LSR A\n #_02872D: TAX\n\n #_02872E: LDA.l .sprite_gfx,X\n #_028732: STA.w $0AA3\n\n #_028735: LDA.l .sprite_palette,X\n #_028739: ASL A\n #_02873A: ASL A\n #_02873B: TAX\n\n #_02873C: LDA.l UnderworldPaletteSets+2,X\n #_028740: STA.w $0AAD\n\n #_028743: LDA.l UnderworldPaletteSets+3,X\n #_028747: STA.w $0AAE\n\n #_02874A: LDA.b #$0A\n #_02874C: STA.w $0AA4\n\n #_02874F: JSL InitializeTilesets\n\n #_028753: LDA.b #$0A\n #_028755: STA.w $0AB1\n\n #_028758: JSR Underworld_LoadPalettes\n\n #_02875B: LDA.b #$09\n #_02875D: STA.b $94\n\n #_02875F: STZ.b $C8\n #_028761: STZ.b $C9\n\n #_028763: STZ.b $13\n\n #_028765: INC.b $11\n\n #_028767: JSL Credits_PrepAndLoadSprites\n\n #_02876B: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module07_Underworld", + "code": "Module07_Underworld:\n #_0287A2: SEP #$30\n\n #_0287A4: JSL Underworld_HandleLayerEffect\n\n #_0287A8: LDA.b $11\n #_0287AA: ASL A\n #_0287AB: TAX\n\n #_0287AC: JSR (.submodules,X)\n\n #_0287AF: STZ.w $042C\n\n #_0287B2: JSL PushBlock_Handler\n\n #_0287B6: LDA.b $11\n #_0287B8: BNE .continue\n\n; ---------------------------------------------------------\n\n #_0287BA: JSL Graphics_LoadChrHalfSlot\n #_0287BE: JSR Underworld_HandleCamera\n\n #_0287C1: LDA.b $11\n #_0287C3: BNE .continue\n\n #_0287C5: JSL Underworld_HandleRoomTags\n\n #_0287C9: LDA.b $11\n #_0287CB: BNE .continue\n\n #_0287CD: JSL Underworld_ProcessTorchesAndDoors\n\n #_0287D1: LDA.w $0454\n #_0287D4: BEQ .no_blast_wall\n\n #_0287D6: JSL Underworld_ClearAwayExplodingWall\n\n.no_blast_wall\n #_0287DA: LDA.b $6C\n #_0287DC: BNE .continue\n\n #_0287DE: JSR Underworld_TryScreenEdgeTransition\n\n; ---------------------------------------------------------\n\n.continue\n #_0287E1: JSL OrientLampLightCone\n\n #_0287E5: REP #$21\n\n #_0287E7: LDA.b $E2\n #_0287E9: PHA\n\n #_0287EA: ADC.w $011A\n #_0287ED: STA.b $E2\n #_0287EF: STA.w $011E\n\n #_0287F2: LDA.b $E8\n #_0287F4: PHA\n\n #_0287F5: CLC\n #_0287F6: ADC.w $011C\n #_0287F9: STA.b $E8\n #_0287FB: STA.w $0122\n\n #_0287FE: LDA.b $E0\n #_028800: PHA\n\n #_028801: CLC\n #_028802: ADC.w $011A\n #_028805: STA.b $E0\n #_028807: STA.w $0120\n\n #_02880A: LDA.b $E6\n #_02880C: PHA\n\n #_02880D: CLC\n #_02880E: ADC.w $011C\n #_028811: STA.b $E6\n #_028813: STA.w $0124\n\n #_028816: LDA.w $0428\n #_028819: AND.w #$00FF\n #_02881C: BEQ .keep_camera_coords\n\n; ---------------------------------------------------------\n\n #_02881E: PLA\n #_02881F: PLA\n\n #_028820: LDA.w $0422\n #_028823: CLC\n #_028824: ADC.b $E2\n #_028826: STA.w $0120\n #_028829: STA.b $E0\n\n #_02882B: PHA\n\n #_02882C: LDA.w $0424\n #_02882F: CLC\n #_028830: ADC.b $E8\n #_028832: STA.w $0124\n #_028835: STA.b $E6\n\n #_028837: PHA\n\n; ---------------------------------------------------------\n\n.keep_camera_coords\n #_028838: SEP #$20\n\n #_02883A: JSL Underworld_DrawAllPushBlocks\n #_02883E: JSL Sprite_Main\n\n #_028842: REP #$20\n\n #_028844: PLA\n #_028845: STA.b $E6\n\n #_028847: PLA\n #_028848: STA.b $E0\n\n #_02884A: PLA\n #_02884B: STA.b $E8\n\n #_02884D: PLA\n #_02884E: STA.b $E2\n\n #_028850: SEP #$20\n\n #_028852: JSL LinkOAM_Main\n\n #_028856: JSL RefillLogic_long\n #_02885A: JML HUD_HandleFloorIndicator\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_TryScreenEdgeTransition", + "code": "Underworld_TryScreenEdgeTransition:\n #_02885E: REP #$20\n\n #_028860: LDA.b $30\n #_028862: AND.w #$00FF\n #_028865: BEQ .no_vertical_movement\n\n #_028867: LDA.b $67\n #_028869: AND.w #$000C\n #_02886C: STA.b $00\n\n #_02886E: LDA.b $20\n #_028870: AND.w #$01FF\n\n #_028873: LDX.b #$03\n #_028875: CMP.w #$0004\n #_028878: BCC .check_for_transition\n\n #_02887A: LDX.b #$02\n #_02887C: CMP.w #$01DC\n #_02887F: BCS .check_for_transition\n\n; ---------------------------------------------------------\n\n.no_vertical_movement\n #_028881: LDA.b $31\n #_028883: AND.w #$00FF\n #_028886: BEQ .exit\n\n #_028888: LDA.b $67\n #_02888A: AND.w #$0003\n #_02888D: STA.b $00\n\n #_02888F: LDA.b $22\n #_028891: AND.w #$01FF\n\n #_028894: LDX.b #$01\n\n #_028896: CMP.w #$0008\n #_028899: BCC .check_for_transition\n\n #_02889B: LDX.b #$00\n #_02889D: CMP.w #$01E9\n #_0288A0: BCC .exit\n\n; ---------------------------------------------------------\n\n.check_for_transition\n #_0288A2: SEP #$20\n\n #_0288A4: JSL Link_CheckForEdgeScreenTransition\n #_0288A8: BCS .exit\n\n #_0288AA: LDA.b $10\n #_0288AC: CMP.b #$07\n #_0288AE: BNE .exit\n\n #_0288B0: JSL Underworld_HandleEdgeTransitionMovement\n\n #_0288B4: LDA.b $10\n #_0288B6: CMP.b #$07\n #_0288B8: BNE .exit\n\n #_0288BA: LDA.b #$02\n #_0288BC: STA.b $11\n\n.exit\n #_0288BE: SEP #$20\n\n #_0288C0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_HandleEdgeTransitionMovement", + "code": "Underworld_HandleEdgeTransitionMovement:\n #_0288C5: LDA.b $67\n #_0288C7: AND.l .masks,X\n #_0288CB: STA.b $67\n\n #_0288CD: TXA\n #_0288CE: JSL JumpTableLong\n #_0288D2: dl HandleEdgeTransitionMovementEast\n #_0288D5: dl HandleEdgeTransitionMovementWest\n #_0288D8: dl HandleEdgeTransitionMovementSouth\n #_0288DB: dl HandleEdgeTransitionMovementNorth\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_00_PlayerControl", + "code": "Module07_00_PlayerControl:\n #_0288DE: LDA.w $0112\n #_0288E1: ORA.w $02E4\n #_0288E4: ORA.w $0FFC\n #_0288E7: BEQ .in_control\n\n #_0288E9: JMP.w .no_SELECTing\n\n; ---------------------------------------------------------\n\n.in_control\n #_0288EC: LDA.b $F4\n #_0288EE: AND.b #$10\n #_0288F0: BEQ .no_START_press\n\n #_0288F2: STZ.w $0200\n\n #_0288F5: LDA.b #$01\n\n #_0288F7: BRA .open_interface\n\n; ---------------------------------------------------------\n\n.no_START_press\n #_0288F9: LDA.b $F6\n #_0288FB: AND.b #$40\n #_0288FD: BEQ .no_mapping\n\n #_0288FF: LDA.w $040C\n #_028902: CMP.b #$FF ; DUNGEON FF\n #_028904: BEQ .no_mapping\n\n #_028906: LDA.b $A0 ; ROOM 0000\n #_028908: BEQ .no_mapping\n\n #_02890A: STZ.w $0200\n\n #_02890D: LDA.b #$03\n\n; ---------------------------------------------------------\n\n.open_interface\n #_02890F: STA.b $11\n\n #_028911: LDA.b $10\n #_028913: STA.w $010C\n\n #_028916: LDA.b #$0E\n #_028918: STA.b $10\n\n #_02891A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SubscreenEnable", + "code": "Underworld_SubscreenEnable:\n #_02894C: db $00, $01, $01, $FF, $01, $01, $01, $01\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "PendantBossRooms", + "code": "PendantBossRooms:\n #_028954: dw $00C8 ; ROOM 00C8 - Armos\n #_028956: dw $0033 ; ROOM 0033 - Lanmolas\n #_028958: dw $0007 ; ROOM 0007 - Moldorm\n #_02895A: dw $0020 ; ROOM 0020 - Agahnim 1\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "CrystalBossRooms", + "code": "CrystalBossRooms:\n #_02895C: dw $0006 ; ROOM 0006 - Arrghus\n #_02895E: dw $005A ; ROOM 005A - Helmasaur\n #_028960: dw $0029 ; ROOM 0029 - Mothula\n #_028962: dw $0090 ; ROOM 0090 - Vitreous\n #_028964: dw $00DE ; ROOM 00DE - Kholdstare\n #_028966: dw $00A4 ; ROOM 00A4 - Trinexx\n #_028968: dw $00AC ; ROOM 00AC - Blind\n #_02896A: dw $000D ; ROOM 000D - Agahnim 2\n\n; =========================================================\n\npool Module07_01_IntraroomTransition\n\n.subsubmodules\n #_02896C: dw UnderworldTransition_Intraroom_PrepTransition ; 0x00\n #_02896E: dw UnderworldTransition_Intraroom_ApplyFilter ; 0x01\n #_028970: dw UnderworldTransition_Intraroom_ResetShutters ; 0x02\n #_028972: dw UnderworldTransition_ScrollRoom ; 0x03\n #_028974: dw UnderworldTransition_FindTransitionLanding ; 0x04\n #_028976: dw UnderworldTransition_HandleFinalMovements ; 0x05\n #_028978: dw UnderworldTransition_Intraroom_ApplyFilter ; 0x06\n #_02897A: dw UnderworldTransition_Intraroom_TriggerShutters ; 0x07\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_01_IntraroomTransition", + "code": "Module07_01_IntraroomTransition:\n #_02897C: REP #$20\n\n #_02897E: LDA.b $22\n #_028980: STA.w $0FC2\n\n #_028983: LDA.b $20\n #_028985: STA.w $0FC4\n\n #_028988: SEP #$20\n\n #_02898A: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02898E: LDA.b $B0\n #_028990: ASL A\n #_028991: TAX\n\n #_028992: JMP.w (.subsubmodules,X)\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_Intraroom_ResetShutters", + "code": "UnderworldTransition_Intraroom_ResetShutters:\n #_028995: STZ.w $0468\n\n #_028998: LDA.b #$07\n #_02899A: STA.w $0690\n\n #_02899D: LDA.b $11\n #_02899F: PHA\n\n #_0289A0: JSL OperateShutterDoors\n\n #_0289A4: PLA\n #_0289A5: STA.b $11\n\n #_0289A7: LDA.b #$1F\n #_0289A9: STA.l $7EC007\n\n #_0289AD: LDA.b #$00\n #_0289AF: STA.l $7EC00B\n\n #_0289B3: INC.b $B0\n\n #_0289B5: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_Intraroom_PrepTransition", + "code": "UnderworldTransition_Intraroom_PrepTransition:\n #_0289B6: REP #$20\n\n #_0289B8: LDA.w #$0000\n #_0289BB: STA.l $7EC009\n #_0289BF: STA.l $7EC007\n\n #_0289C3: LDA.w #$001F\n #_0289C6: STA.l $7EC00B\n\n #_0289CA: STZ.w $0AA6\n\n #_0289CD: SEP #$20\n\n #_0289CF: STZ.w $0646\n #_0289D2: STZ.w $0642\n\n #_0289D5: INC.b $B0\n\n #_0289D7: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_Intraroom_ApplyFilter", + "code": "UnderworldTransition_Intraroom_ApplyFilter:\n #_0289D8: LDA.l $7EC005\n #_0289DC: BEQ .advance\n\n #_0289DE: JSL ApplyPaletteFilter\n\n #_0289E2: LDA.l $7EC007\n #_0289E6: BEQ .exit\n\n #_0289E8: JSL ApplyPaletteFilter\n\n.exit\n #_0289EC: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_Intraroom_TriggerShutters", + "code": "UnderworldTransition_Intraroom_TriggerShutters:\n #_0289F0: JSR ResetThenCacheRoomEntryProperties\n\n #_0289F3: LDA.w $0468\n #_0289F6: BNE .exit\n\n #_0289F8: INC.w $0468\n\n #_0289FB: STZ.w $068E\n #_0289FE: STZ.w $0690\n\n #_028A01: LDA.b #$05\n #_028A03: STA.b $11\n\n.exit\n #_028A05: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_InterroomTransition", + "code": "Module07_02_InterroomTransition:\n #_028A26: REP #$20\n\n #_028A28: LDA.b $22\n #_028A2A: STA.w $0FC2\n\n #_028A2D: LDA.b $20\n #_028A2F: STA.w $0FC4\n\n #_028A32: SEP #$20\n\n #_028A34: LDA.b $B0\n #_028A36: BEQ .run_subsubsub\n\n #_028A38: CMP.b #$07\n #_028A3A: BCC .skip_upload\n\n #_028A3C: JSL Graphics_IncrementalVRAMUpload\n\n.skip_upload\n #_028A40: JSL Underworld_LoadAttribute_Selectable\n\n.run_subsubsub\n #_028A44: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_028A48: LDA.b $B0\n #_028A4A: ASL A\n #_028A4B: TAX\n\n #_028A4C: JMP.w (.subsubmodules,X)\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_00_InitializeTransition", + "code": "Module07_02_00_InitializeTransition:\n #_028A4F: LDA.w $0458\n #_028A52: PHA\n\n #_028A53: JSR ResetTransitionPropsAndAdvanceSubmodule\n\n #_028A56: PLA\n #_028A57: STA.w $0458\n\n #_028A5A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_01_LoadNextRoom", + "code": "Module07_02_01_LoadNextRoom:\n #_028A5B: JSL Underworld_LoadRoom\n #_028A5F: JSL ResetStarTileGraphics\n #_028A63: JSL LoadTransAuxGFX_sprite\n\n #_028A67: INC.b $B0\n\n #_028A69: STZ.w $0200\n\n #_028A6C: LDA.b $A2\n #_028A6E: PHA\n\n #_028A6F: LDA.b $A0\n #_028A71: STA.w $048E\n\n #_028A74: PLA\n #_028A75: STA.b $A2\n\n #_028A77: JSL Underworld_ResetSprites\n\n #_028A7B: LDA.w $0458\n #_028A7E: BNE .no_scroll_sync\n\n #_028A80: JSR UnderworldSyncBG1and2Scroll\n\n.no_scroll_sync\n #_028A83: STZ.w $0458\n\n #_028A86: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_03", + "code": "Module07_02_03:\n #_028A87: LDA.l $7EC005\n #_028A8B: ORA.l $7EC006\n #_028A8F: BEQ .keep_subscreen_enable\n\n #_028A91: STZ.b $1D\n\n.keep_subscreen_enable\n #_028A93: JSL Underworld_AdjustForRoomLayout\n #_028A97: JSL LoadNewSpriteGFXSet\n\n #_028A9B: JSR UnderworldSyncBG1and2Scroll\n #_028A9E: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_028AA2: INC.b $B0\n\n #_028AA4: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_0A", + "code": "Module07_02_0A:\n #_028AA5: LDA.l $7EC005\n #_028AA9: ORA.l $7EC006\n #_028AAD: BEQ Underworld_PrepTilemapAndAdvance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_FilterPrepTilemapAndAdvance", + "code": "Underworld_FilterPrepTilemapAndAdvance:\n #_028AAF: JSL ApplyPaletteFilter\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_PrepTilemapAndAdvance", + "code": "Underworld_PrepTilemapAndAdvance:\n #_028AB3: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_028AB7: INC.b $B0\n\n #_028AB9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_09", + "code": "Module07_02_09:\n #_028ABA: LDA.l $7EC005\n #_028ABE: ORA.l $7EC006\n #_028AC2: BEQ Underworld_PrepNextQuadrantUploadAndAdvance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_FilterUploadAndAdvance", + "code": "Underworld_FilterUploadAndAdvance:\n #_028AC4: JSL ApplyPaletteFilter\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_PrepNextQuadrantUploadAndAdvance", + "code": "Underworld_PrepNextQuadrantUploadAndAdvance:\n #_028AC8: JSL Underworld_PrepareNextRoomQuadrantUpload\n\n #_028ACC: INC.b $B0\n\n #_028ACE: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_0C", + "code": "Module07_02_0C:\n #_028ACF: LDA.b $11\n #_028AD1: CMP.b #$02\n #_028AD3: BNE Underworld_AdvanceAndReset\n\n #_028AD5: LDA.w $0200\n #_028AD8: CMP.b #$05\n #_028ADA: BNE EXIT_028B2D\n\n #_028ADC: JSR IntraroomTransitionCalculateLanding\n\n #_028ADF: LDA.l $7EC005\n #_028AE3: ORA.l $7EC006\n #_028AE7: BEQ Underworld_AdvanceAndReset\n\n #_028AE9: JSL ApplyPaletteFilter\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdvanceAndReset", + "code": "Underworld_AdvanceAndReset:\n #_028AED: INC.b $B0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_ResetTorchBackgroundAndPlayer", + "code": "Underworld_ResetTorchBackgroundAndPlayer:\n #_028AEF: LDY.b #$16\n #_028AF1: LDX.w $0414\n\n #_028AF4: LDA.l Underworld_SubscreenEnable,X\n #_028AF8: BPL .disable\n\n #_028AFA: LDY.b #$17\n #_028AFC: LDA.b #$00\n\n.disable\n #_028AFE: CPX.b #$02\n #_028B00: BNE .wait_dont_disable\n\n #_028B02: LDA.b #$03\n\n.wait_dont_disable\n #_028B04: STY.b $1C\n #_028B06: STA.b $1D\n\n #_028B08: JSL RestoreTorchBackground\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "DeleteCertainAncillaeStopDashing", + "code": "DeleteCertainAncillaeStopDashing:\n #_028B0C: JSL Ancilla_TerminateSelectInteractives\n\n #_028B10: LDA.w $0372\n #_028B13: BEQ EXIT_028B2D\n\n #_028B15: STZ.b $4D\n #_028B17: STZ.b $46\n\n #_028B19: LDA.b #$FF\n #_028B1B: STA.b $29\n #_028B1D: STA.b $C7\n\n #_028B1F: STZ.b $3D\n #_028B21: STZ.b $5E\n\n #_028B23: STZ.w $032B\n #_028B26: STZ.w $0372\n\n #_028B29: LDA.b #$00 ; LINKSTATE 00\n #_028B2B: STA.b $5D\n\n; ---------------------------------------------------------\n\n#EXIT_028B2D:\n #_028B2D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_07", + "code": "Module07_02_07:\n #_028B2E: REP #$10\n\n #_028B30: LDX.b $E2\n #_028B32: STX.b $E0\n\n #_028B34: LDX.b $E8\n #_028B36: STX.b $E6\n\n #_028B38: LDX.b $A0\n\n #_028B3A: CPX.w #$0036 ; ROOM 0036\n #_028B3D: BEQ .dont_change_mainandsubscreen\n\n #_028B3F: CPX.w #$0038 ; ROOM 0038\n #_028B42: BEQ .dont_change_mainandsubscreen\n\n #_028B44: LDX.w $0414\n #_028B47: LDY.w #$0016\n\n #_028B4A: LDA.l Underworld_SubscreenEnable,X\n #_028B4E: BEQ .am_zero\n\n #_028B50: LDY.w #$0116\n\n.am_zero\n #_028B53: CPY.b $1C\n #_028B55: BEQ .dont_change_mainandsubscreen\n\n #_028B57: LDA.b $1C\n #_028B59: CMP.b #$17\n #_028B5B: BEQ .set_mainandsubscreen\n\n #_028B5D: ORA.b $1D\n #_028B5F: CMP.b #$17\n #_028B61: BEQ .dont_change_mainandsubscreen\n\n.set_mainandsubscreen\n #_028B63: STY.b $1C\n\n.dont_change_mainandsubscreen\n #_028B65: SEP #$10\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_RunFiltering", + "code": "UnderworldTransition_RunFiltering:\n #_028B67: LDA.l $7EC005\n #_028B6B: ORA.l $7EC006\n #_028B6F: BEQ .no_filter\n\n #_028B71: LDX.b #$03\n\n #_028B73: LDA.l $7EC005\n #_028B77: BEQ .use_fixed_color_3\n\n #_028B79: LDX.w $045A\n\n.use_fixed_color_3\n #_028B7C: LDA.l RoomEffectFixedColors,X\n #_028B80: STA.l $7EC017\n\n #_028B84: JSL ApplyGrayscaleFixed_Parameterized\n\n #_028B88: LDA.b #$00\n #_028B8A: STA.l $7EC00B\n\n.no_filter\n #_028B8E: JSR Underworld_HandleTranslucencyAndPalettes\n\n #_028B91: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_FadedFilter", + "code": "Module07_02_FadedFilter:\n #_028B92: LDA.l $7EC005\n #_028B96: ORA.l $7EC006\n #_028B9A: BEQ .next_subsub\n\n #_028B9C: JSL ApplyPaletteFilter\n #_028BA0: LDA.l $7EC007\n #_028BA4: BEQ .exit\n\n #_028BA6: JSL ApplyPaletteFilter\n\n.exit\n #_028BAA: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_0F", + "code": "Module07_02_0F:\n #_028BAE: JSR ResetThenCacheRoomEntryProperties\n\n #_028BB1: LDA.w $0468\n #_028BB4: BNE Underworld_SetBossOrSancMusicUponEntry\n\n #_028BB6: LDA.b $A0\n\n #_028BB8: CMP.b #$AC ; ROOM 00AC\n #_028BBA: BNE .not_workable_blinds_room\n\n #_028BBC: LDA.w $0403\n #_028BBF: AND.b #$20\n #_028BC1: BNE .not_workable_blinds_room\n\n #_028BC3: LDA.w $0403\n #_028BC6: AND.b #$10\n #_028BC8: BEQ Underworld_SetBossOrSancMusicUponEntry\n\n.not_workable_blinds_room\n #_028BCA: INC.w $0468\n\n #_028BCD: STZ.w $068E\n #_028BD0: STZ.w $0690\n\n #_028BD3: LDA.b #$05\n #_028BD5: STA.b $11\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SetBossOrSancMusicUponEntry", + "code": "Underworld_SetBossOrSancMusicUponEntry:\n #_028BD7: REP #$20\n\n #_028BD9: LDX.b #$14 ; SONG 14\n\n #_028BDB: LDA.b $A0\n\n #_028BDD: CMP.w #$0012 ; ROOM 0012\n #_028BE0: BEQ .set_song\n\n #_028BE2: LDX.b #$10 ; SONG 10\n\n #_028BE4: CMP.w #$0002 ; ROOM 0002\n #_028BE7: BEQ .set_song\n\n; ---------------------------------------------------------\n\n #_028BE9: LDX.b #$18\n\n.check_next_room\n #_028BEB: DEX\n #_028BEC: DEX\n #_028BED: BMI .exit\n\n #_028BEF: CMP.l PendantBossRooms,X\n #_028BF3: BNE .check_next_room\n\n; ---------------------------------------------------------\n\n #_028BF5: SEP #$20\n\n #_028BF7: JSL CheckIfScreenIsClear\n #_028BFB: BCS .exit\n\n #_028BFD: LDX.b #$15 ; SONG 15\n\n.set_song\n #_028BFF: STX.w $012C\n\n.exit\n #_028C02: SEP #$20\n\n #_028C04: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_03_OverlayChange", + "code": "Module07_03_OverlayChange:\n #_028C05: JSL Underworld_ApplyRoomOverlay\n\n #_028C09: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_04_UnlockDoor", + "code": "Module07_04_UnlockDoor:\n #_028C0A: JSL UnlockKeyDoor_Main\n\n #_028C0E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_05_ControlShutters", + "code": "Module07_05_ControlShutters:\n #_028C0F: JSL OperateShutterDoors\n\n #_028C13: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_06_FatInterRoomStairs", + "code": "Module07_06_FatInterRoomStairs:\n #_028C14: LDA.b $B0\n #_028C16: CMP.b #$03\n #_028C18: BCC .dont_reload_tile_types\n\n #_028C1A: JSL Underworld_LoadAttribute_Selectable\n\n.dont_reload_tile_types\n #_028C1E: LDA.b $B0\n #_028C20: CMP.b #$0D\n #_028C22: BCC .skip_gfx_updates\n\n #_028C24: JSL Graphics_IncrementalVRAMUpload\n\n #_028C28: LDA.w $0464\n #_028C2B: BEQ .run_subsubsub\n\n #_028C2D: DEC.w $0464\n\n #_028C30: CMP.b #$10\n #_028C32: BNE .dont_add_stair_drag\n\n #_028C34: LDA.b #$02\n #_028C36: STA.b $57\n\n.dont_add_stair_drag\n #_028C38: LDX.b #$08\n\n #_028C3A: LDA.w $0462\n #_028C3D: AND.b #$04\n #_028C3F: BEQ .going_up\n\n #_028C41: LDX.b #$04\n\n.going_up\n #_028C43: STX.b $67\n\n #_028C45: JSL Link_HandleVelocity\n #_028C49: JSR Underworld_HandleCamera\n\n; ---------------------------------------------------------\n\n.skip_gfx_updates\n #_028C4C: JSL Link_HandleMovingAnimation_FullLongEntry\n\n.run_subsubsub\n #_028C50: LDA.b $B0\n #_028C52: JSL JumpTableLocal\n #_028C56: dw ResetTransitionPropsAndAdvance_ResetInterface ; 0x00\n #_028C58: dw UnderworldTransition_FatStairs_RunFade ; 0x01\n #_028C5A: dw Underworld_InitializeRoomFromSpecial ; 0x02\n #_028C5C: dw UnderworldTransition_TriggerBGC34UpdateAndAdvance ; 0x03\n #_028C5E: dw UnderworldTransition_TriggerBGC56UpdateAndAdvance ; 0x04\n #_028C60: dw UnderworldTransition_LoadSpriteGFX ; 0x05\n #_028C62: dw UnderworldTransition_AdjustForFatStairScroll ; 0x06\n #_028C64: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x07\n #_028C66: dw Underworld_PrepTilemapAndAdvance ; 0x08\n #_028C68: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x09\n #_028C6A: dw Underworld_FilterPrepTilemapAndAdvance ; 0x0A\n #_028C6C: dw Underworld_FilterUploadAndAdvance ; 0x0B\n #_028C6E: dw Underworld_FilterPrepTilemapAndAdvance ; 0x0C\n #_028C70: dw Underworld_FilterUploadAndAdvance ; 0x0D\n #_028C72: dw Underworld_DoubleApplyAndIncrementGrayscale ; 0x0E\n #_028C74: dw Underworld_AdvanceAndReset ; 0x0F\n #_028C76: dw UnderworldTransition_FatStairsEntryCache ; 0x10\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_01_HandleMusicAndResetProps", + "code": "Module07_0E_01_HandleMusicAndResetProps:\n #_028C78: REP #$20\n\n #_028C7A: LDA.b $A0\n #_028C7C: CMP.w #$0007 ; ROOM 0007\n #_028C7F: BEQ .not_moldorm_room\n\n #_028C81: CMP.w #$0017 ; ROOM 0017\n #_028C84: BNE .dont_fade_music\n\n #_028C86: LDX.w $0130\n #_028C89: CPX.b #$11 ; SONG 11\n #_028C8B: BEQ .dont_fade_music\n\n.not_moldorm_room\n #_028C8D: LDA.l $7EF374\n #_028C91: LSR A\n #_028C92: BCS .dont_fade_music\n\n #_028C94: LDX.b #$F1 ; SONG F1\n #_028C96: STX.w $012C\n\n; ---------------------------------------------------------\n\n.dont_fade_music\n #_028C99: SEP #$20\n\n #_028C9B: LDX.b #$58\n\n #_028C9D: LDA.w $0462\n #_028CA0: AND.b #$04\n #_028CA2: BEQ .going_up\n\n #_028CA4: LDX.b #$6A\n\n.going_up\n #_028CA6: STX.w $0464\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "ResetTransitionPropsAndAdvance_ResetInterface", + "code": "ResetTransitionPropsAndAdvance_ResetInterface:\n #_028CA9: STZ.w $0200\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "ResetTransitionPropsAndAdvanceSubmodule", + "code": "ResetTransitionPropsAndAdvanceSubmodule:\n #_028CAC: REP #$30\n\n #_028CAE: LDA.w #$0000\n #_028CB1: STA.l $7EC011\n #_028CB5: STA.l $7EC009\n #_028CB9: STA.l $7EC007\n\n #_028CBD: LDA.w #$001F\n #_028CC0: STA.l $7EC00B\n\n #_028CC4: STZ.w $0AA6\n #_028CC7: STZ.w $045A\n\n #_028CCA: LDA.w $0458\n #_028CCD: BEQ .dark_room\n\n #_028CCF: LDA.w #$B302\n #_028CD2: STA.b $99\n\n.dark_room\n #_028CD4: SEP #$30\n\n #_028CD6: STZ.w $0458\n\n #_028CD9: JSR DeleteCertainAncillaeStopDashing\n #_028CDC: JSR Overworld_CopyPalettesToCache\n\n #_028CDF: INC.b $B0\n\n #_028CE1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_InitializeRoomFromSpecial", + "code": "Underworld_InitializeRoomFromSpecial:\n #_028CE2: JSR Underworld_AdjustCameraArbitrary\n\n #_028CE5: JSL Underworld_LoadRoom\n #_028CE9: JSL ResetStarTileGraphics\n\n #_028CED: JSL LoadTransAuxGFX\n #_028CF1: JSL Underworld_LoadCustomTileTypes\n\n #_028CF5: LDA.b $A0\n #_028CF7: STA.w $048E\n\n #_028CFA: JSL Follower_Initialize\n\n #_028CFE: INC.b $B0\n\n #_028D00: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_FatStairs_RunFade", + "code": "UnderworldTransition_FatStairs_RunFade:\n #_028D01: JSL ApplyPaletteFilter\n\n #_028D05: LDA.l $7EC007\n #_028D09: BEQ .exit\n\n #_028D0B: JSL ApplyPaletteFilter\n\n.exit\n #_028D0F: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_LoadSpriteGFX", + "code": "UnderworldTransition_LoadSpriteGFX:\n #_028D10: JSL LoadNewSpriteGFXSet\n #_028D14: JSL Underworld_ResetSprites\n\n #_028D18: JMP.w UnderworldTransition_RunFiltering\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_AdjustForFatStairScroll", + "code": "UnderworldTransition_AdjustForFatStairScroll:\n #_028D1B: JSR UnderworldSyncBG1and2Scroll\n #_028D1E: JSL Underworld_AdjustForRoomLayout\n\n #_028D22: LDY.b #$16\n #_028D24: LDX.w $0414\n\n #_028D27: LDA.l Underworld_SubscreenEnable,X\n #_028D2B: BPL .valid_subscreens\n\n #_028D2D: LDY.b #$17\n #_028D2F: LDA.b #$00\n\n.valid_subscreens\n #_028D31: STY.b $1C\n #_028D33: STA.b $1D\n\n #_028D35: INC.b $A4\n\n #_028D37: LDA.b #$01\n #_028D39: STA.b $57\n\n #_028D3B: LDY.b #$17 ; SFX2.17\n #_028D3D: LDX.b #$30\n\n #_028D3F: LDA.w $0462\n #_028D42: AND.b #$04\n #_028D44: BEQ .going_upstairs\n\n #_028D46: LDY.b #$19 ; SFX2.19\n\n #_028D48: DEC.b $A4\n #_028D4A: DEC.b $A4\n\n #_028D4C: LDX.b #$20\n\n.going_upstairs\n #_028D4E: STX.w $0464\n #_028D51: STY.w $012E\n\n; ---------------------------------------------------------\n\n #_028D54: LDA.b #$24 ; SFX3.24\n #_028D56: STA.w $012F\n\n #_028D59: JSR Underworld_PlayBlipAndCacheQuadrantVisits\n\n #_028D5C: JMP.w Underworld_PrepTilemapAndAdvance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_FatStairsEntryCache", + "code": "UnderworldTransition_FatStairsEntryCache:\n #_028D5F: LDA.l $7EC009\n #_028D63: ORA.l $7EC007\n #_028D67: BEQ .continue\n\n.exit\n #_028D69: RTS", + "file": "bank_02.asm" + }, + { + "name": "ResetThenCacheRoomEntryProperties", + "code": "ResetThenCacheRoomEntryProperties:\n #_028D71: STZ.w $0200\n #_028D74: STZ.b $B0\n\n #_028D76: STZ.w $0418\n #_028D79: STZ.b $11\n\n #_028D7B: STZ.w $0642\n #_028D7E: STZ.w $0641\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "CacheRoomEntryProperties", + "code": "CacheRoomEntryProperties:\n #_028D81: REP #$20\n\n #_028D83: LDA.b $E2\n #_028D85: STA.l $7EC180\n\n #_028D89: LDA.b $E8\n #_028D8B: STA.l $7EC182\n\n #_028D8F: LDA.b $20\n #_028D91: STA.l $7EC184\n\n #_028D95: LDA.b $22\n #_028D97: STA.l $7EC186\n\n #_028D9B: LDA.w $0600\n #_028D9E: STA.l $7EC188\n\n #_028DA2: LDA.w $0604\n #_028DA5: STA.l $7EC18A\n\n #_028DA9: LDA.w $0608\n #_028DAC: STA.l $7EC18C\n\n #_028DB0: LDA.w $060C\n #_028DB3: STA.l $7EC18E\n\n #_028DB7: LDA.w $0610\n #_028DBA: STA.l $7EC190\n\n #_028DBE: LDA.w $0612\n #_028DC1: STA.l $7EC192\n\n #_028DC5: LDA.w $0614\n #_028DC8: STA.l $7EC194\n\n #_028DCC: LDA.w $0616\n #_028DCF: STA.l $7EC196\n\n #_028DD3: LDA.w $0618\n #_028DD6: STA.l $7EC198\n\n #_028DDA: LDA.w $061C\n #_028DDD: STA.l $7EC19A\n\n #_028DE1: LDA.b $A6\n #_028DE3: STA.l $7EC19C\n\n #_028DE7: LDA.b $A9\n #_028DE9: STA.l $7EC19E\n\n #_028DED: SEP #$20\n\n #_028DEF: LDA.b $2F\n #_028DF1: STA.l $7EC1A6\n\n #_028DF5: LDA.b $EE\n #_028DF7: STA.l $7EC1A7\n\n #_028DFB: LDA.w $0476\n #_028DFE: STA.l $7EC1A8\n\n #_028E02: LDA.b $6C\n #_028E04: STA.l $7EC1A9\n\n #_028E08: LDA.b $A4\n #_028E0A: STA.l $7EC1AA\n\n #_028E0E: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_TriggerBGC34UpdateAndAdvance", + "code": "UnderworldTransition_TriggerBGC34UpdateAndAdvance:\n #_028E0F: JSL PrepTransAuxGfx\n\n #_028E13: LDA.b #$09\n #_028E15: STA.b $17\n #_028E17: STA.w $0710\n\n #_028E1A: INC.b $B0\n\n #_028E1C: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_TriggerBGC56UpdateAndAdvance", + "code": "UnderworldTransition_TriggerBGC56UpdateAndAdvance:\n #_028E1D: LDA.b #$0A\n #_028E1F: STA.b $17\n #_028E21: STA.w $0710\n\n #_028E24: INC.b $B0\n\n #_028E26: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_FallingTransition", + "code": "Module07_07_FallingTransition:\n #_028E27: LDA.b $B0\n #_028E29: CMP.b #$06\n #_028E2B: BCC .run_subsubsub\n\n #_028E2D: JSL Graphics_IncrementalVRAMUpload\n #_028E31: JSL Underworld_LoadAttribute_Selectable\n #_028E35: JSL ApplyGrayscaleFixed_Incremental\n\n.run_subsubsub\n #_028E39: LDA.b $B0\n #_028E3B: JSL JumpTableLocal\n #_028E3F: dw Module07_07_00_HandleMusicAndResetRoom ; 0x00\n #_028E41: dw ApplyPaletteFilter_bounce ; 0x01\n #_028E43: dw Underworld_InitializeRoomFromSpecial ; 0x02\n #_028E45: dw UnderworldTransition_TriggerBGC34UpdateAndAdvance ; 0x03\n #_028E47: dw UnderworldTransition_TriggerBGC56UpdateAndAdvance ; 0x04\n #_028E49: dw UnderworldTransition_LoadSpriteGFX ; 0x05\n #_028E4B: dw Module07_07_06_SyncBG1and2 ; 0x06\n #_028E4D: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x07\n #_028E4F: dw Underworld_PrepTilemapAndAdvance ; 0x08\n #_028E51: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x09\n #_028E53: dw Underworld_PrepTilemapAndAdvance ; 0x0A\n #_028E55: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0B\n #_028E57: dw Underworld_PrepTilemapAndAdvance ; 0x0C\n #_028E59: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0D\n #_028E5B: dw Underworld_AdvanceAndReset ; 0x0E\n #_028E5D: dw Module07_07_0F_FallingFadeIn ; 0x0F\n #_028E5F: dw Module07_07_10_LandLinkFromFalling ; 0x10\n #_028E61: dw Module07_07_11_CacheRoomAndSetMusic ; 0x11\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_00_HandleMusicAndResetRoom", + "code": "Module07_07_00_HandleMusicAndResetRoom:\n #_028E63: REP #$20\n\n #_028E65: LDA.b $A0\n\n #_028E67: CMP.w #$0010 ; ROOM 0010\n #_028E6A: BEQ .fade_music\n\n #_028E6C: CMP.w #$0007 ; ROOM 0007\n #_028E6F: BEQ .fade_music\n\n #_028E71: CMP.w #$0017 ; ROOM 0017\n #_028E74: BNE .no_fade\n\n.fade_music\n #_028E76: LDX.b #$F1 ; SONG F1\n #_028E78: STX.w $012C\n\n.no_fade\n #_028E7B: SEP #$20\n\n #_028E7D: JMP.w ResetTransitionPropsAndAdvance_ResetInterface\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_06_SyncBG1and2", + "code": "Module07_07_06_SyncBG1and2:\n #_028E80: JSR UnderworldSyncBG1and2Scroll\n #_028E83: JSL Underworld_AdjustForRoomLayout\n\n #_028E87: LDY.b #$16\n #_028E89: LDX.w $0414\n\n #_028E8C: LDA.l Underworld_SubscreenEnable,X\n #_028E90: BPL .valid_subscreen\n\n #_028E92: LDY.b #$17\n #_028E94: LDA.b #$00\n\n.valid_subscreen\n #_028E96: STY.b $1C\n #_028E98: STA.b $1D\n\n #_028E9A: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_028E9E: INC.b $B0\n\n #_028EA0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_0F_FallingFadeIn", + "code": "Module07_07_0F_FallingFadeIn:\n #_028EA1: JSL ApplyPaletteFilter\n\n #_028EA5: LDA.l $7EC009\n #_028EA9: BNE .exit\n\n #_028EAB: LDA.b $21\n\n #_028EAD: LDY.b $20\n #_028EAF: CPY.b $51\n #_028EB1: BCC .at_target\n\n #_028EB3: INC A\n\n.at_target\n #_028EB4: STA.b $52\n\n #_028EB6: JSR Underworld_SetBossMusicUnorthodox\n\n #_028EB9: LDA.b $A0\n\n #_028EBB: CMP.b #$89 ; ROOM 0089\n #_028EBD: BEQ .exit\n\n #_028EBF: CMP.b #$4F ; ROOM 004F\n #_028EC1: BEQ .exit\n\n #_028EC3: CMP.b #$A7 ; ROOM 00A7\n #_028EC5: BEQ .is_hera_fairies\n\n #_028EC7: DEC.b $A4\n\n; =========================================================\n\n#Underworld_PlayBlipAndCacheQuadrantVisits:\n #_028EC9: LDA.b #$01\n #_028ECB: STA.w $04A0\n\n #_028ECE: LDA.b #$24 ; SFX3.24\n #_028ED0: STA.w $012F\n\n #_028ED3: JSL SetAndSaveVisitedQuadrantFlags\n\n.exit\n #_028ED7: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_10_LandLinkFromFalling", + "code": "Module07_07_10_LandLinkFromFalling:\n #_028EE0: JSL HandleUnderworldLandingFromPit\n\n #_028EE4: LDA.b $11\n #_028EE6: BNE .exit\n\n #_028EE8: LDA.b #$07\n #_028EEA: STA.b $11\n\n #_028EEC: LDA.b #$11\n #_028EEE: STA.b $B0\n\n #_028EF0: LDA.b #$01\n #_028EF2: STA.w $0AAA\n\n #_028EF5: JSL Graphics_LoadChrHalfSlot\n\n.exit\n #_028EF9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_07_11_CacheRoomAndSetMusic", + "code": "Module07_07_11_CacheRoomAndSetMusic:\n #_028EFA: LDA.w $0200\n #_028EFD: CMP.b #$05\n #_028EFF: BNE .exit\n\n #_028F01: JSR ResetThenCacheRoomEntryProperties\n #_028F04: JSR Underworld_SetBossOrSancMusicUponEntry\n #_028F07: JSL Graphics_LoadChrHalfSlot\n\n.exit\n #_028F0B: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_08_NorthIntraRoomStairs", + "code": "Module07_08_NorthIntraRoomStairs:\n #_028F0C: LDA.w $0464\n #_028F0F: BEQ .run_subsubsub\n\n #_028F11: DEC.w $0464\n\n #_028F14: CMP.b #$14\n #_028F16: BNE .skip_stair_drag\n\n #_028F18: LDA.b #$02\n #_028F1A: STA.b $57\n\n.skip_stair_drag\n #_028F1C: JSL Link_HandleVelocity\n\n #_028F20: JSL ApplyLinksMovementToCamera\n #_028F24: JSR Underworld_HandleCamera\n\n #_028F27: JSL Link_HandleMovingAnimation_FullLongEntry\n\n.run_subsubsub\n #_028F2B: LDA.b $B0\n #_028F2D: JSL JumpTableLocal\n #_028F31: dw Module07_08_00_InitStairs\n #_028F33: dw Module07_08_01_ClimbStairs\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_08_00_InitStairs", + "code": "Module07_08_00_InitStairs:\n #_028F35: STZ.w $0351\n\n #_028F38: LDY.b #$19 ; SFX2.19\n #_028F3A: LDX.b #$3C\n\n #_028F3C: LDA.b $67\n #_028F3E: AND.b #$08\n #_028F40: BEQ .finish_up\n\n #_028F42: LDY.b #$17 ; SFX2.17\n #_028F44: LDX.b #$38\n\n #_028F46: STZ.w $0476\n\n #_028F49: LDA.w $044A\n #_028F4C: CMP.b #$02\n #_028F4E: BEQ .finish_up\n\n #_028F50: STZ.b $EE\n\n.finish_up\n #_028F52: STX.w $0464\n #_028F55: STY.w $012E\n\n #_028F58: LDA.b #$01\n #_028F5A: STA.b $57\n\n #_028F5C: INC.b $B0\n\n; ---------------------------------------------------------\n\n#EXIT_028F5E:\n #_028F5E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_08_01_ClimbStairs", + "code": "Module07_08_01_ClimbStairs:\n #_028F5F: LDA.w $0464\n #_028F62: BNE EXIT_028F5E\n\n #_028F64: LDA.b $67\n #_028F66: AND.b #$04\n #_028F68: BEQ .finish_up\n\n #_028F6A: LDA.b #$01\n #_028F6C: STA.w $0476\n\n #_028F6F: LDA.w $044A\n #_028F72: CMP.b #$02\n #_028F74: BEQ .finish_up\n\n #_028F76: LDA.b #$01\n #_028F78: STA.b $EE\n\n #_028F7A: BRA .finish_up\n\n.finish_up\n #_028F7C: STZ.b $B0\n #_028F7E: STZ.w $0418\n #_028F81: STZ.b $11\n\n #_028F83: JSL SetAndSaveVisitedQuadrantFlags\n\n #_028F87: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_10_SouthIntraRoomStairs", + "code": "Module07_10_SouthIntraRoomStairs:\n #_028F88: LDA.w $0464\n #_028F8B: BEQ .run_subsubsub\n\n #_028F8D: DEC.w $0464\n\n #_028F90: CMP.b #$14\n #_028F92: BNE .skip_stair_drag\n\n #_028F94: LDA.b #$02\n #_028F96: STA.b $57\n\n.skip_stair_drag\n #_028F98: JSL Link_HandleVelocity\n #_028F9C: JSL ApplyLinksMovementToCamera\n #_028FA0: JSR Underworld_HandleCamera\n #_028FA3: JSL Link_HandleMovingAnimation_FullLongEntry\n\n.run_subsubsub\n #_028FA7: LDA.b $B0\n #_028FA9: JSL JumpTableLocal\n #_028FAD: dw Module07_10_00_InitStairs\n #_028FAF: dw Module07_10_01_ClimbStairs\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_10_00_InitStairs", + "code": "Module07_10_00_InitStairs:\n #_028FB1: LDY.b #$19 ; SFX2.19\n\n #_028FB3: LDX.b #$3C\n\n #_028FB5: LDA.b $67\n #_028FB7: AND.b #$04\n #_028FB9: BEQ .finish_up\n\n #_028FBB: LDY.b #$17 ; SFX2.17\n\n #_028FBD: LDX.b #$38\n\n #_028FBF: LDA.w $0476\n #_028FC2: EOR.b #$01\n #_028FC4: STA.w $0476\n\n #_028FC7: LDA.w $044A\n #_028FCA: CMP.b #$02\n #_028FCC: BEQ .finish_up\n\n #_028FCE: LDA.b $EE\n #_028FD0: EOR.b #$01\n #_028FD2: STA.b $EE\n\n.finish_up\n #_028FD4: STX.w $0464\n\n #_028FD7: STY.w $012E\n\n #_028FDA: LDA.b #$01\n #_028FDC: STA.b $57\n\n #_028FDE: INC.b $B0\n\n; ---------------------------------------------------------\n\n#EXIT_028FE0:\n #_028FE0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_10_01_ClimbStairs", + "code": "Module07_10_01_ClimbStairs:\n #_028FE1: LDA.w $0464\n #_028FE4: BNE EXIT_028FE0\n\n #_028FE6: LDA.b $67\n #_028FE8: AND.b #$08\n #_028FEA: BEQ .finish_up\n\n #_028FEC: LDA.w $0476\n #_028FEF: EOR.b #$01\n #_028FF1: STA.w $0476\n\n #_028FF4: LDA.w $044A\n #_028FF7: CMP.b #$02\n #_028FF9: BEQ .finish_up\n\n #_028FFB: LDA.b $EE\n #_028FFD: EOR.b #$01\n #_028FFF: STA.b $EE\n\n #_029001: BRA .finish_up\n\n.finish_up\n #_029003: STZ.b $B0\n #_029005: STZ.w $0418\n #_029008: STZ.b $11\n\n #_02900A: JSL SetAndSaveVisitedQuadrantFlags\n\n #_02900E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_09_OpenCrackedDoor", + "code": "Module07_09_OpenCrackedDoor:\n #_02900F: JSL OpenCrackedDoor\n\n #_029013: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0A_ChangeBrightness", + "code": "Module07_0A_ChangeBrightness:\n #_029014: JSL OrientLampLightCone\n #_029018: JSL ApplyGrayscaleFixed_Incremental\n\n #_02901C: LDA.l $00009C\n #_029020: AND.b #$1F\n #_029022: CMP.l $7EC017\n #_029026: BNE .exit\n\n #_029028: STZ.b $11\n #_02902A: STZ.b $B0\n\n.exit\n #_02902C: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0B_DrainSwampPool", + "code": "Module07_0B_DrainSwampPool:\n #_02902D: JSL .do_it\n\n #_029031: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0C_FloodSwampWater", + "code": "Module07_0C_FloodSwampWater:\n #_02904A: JSL Underworld_FloodSwampWater\n\n #_02904E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0D_FloodDam", + "code": "Module07_0D_FloodDam:\n #_02904F: JSL Underworld_FloodDam\n\n #_029053: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_SpiralStairs", + "code": "Module07_0E_SpiralStairs:\n #_029054: LDA.b $B0\n #_029056: CMP.b #$07\n #_029058: BCC .skip_upload\n\n #_02905A: JSL Graphics_IncrementalVRAMUpload\n #_02905E: JSL Underworld_LoadAttribute_Selectable\n\n.skip_upload\n #_029062: JSL HandleLinkOnSpiralStairs\n\n #_029066: LDA.b $B0\n #_029068: JSL JumpTableLocal\n #_02906C: dw Module07_0E_00_InitPriorityAndScreens ; 0x00\n #_02906E: dw Module07_0E_01_HandleMusicAndResetProps ; 0x01\n #_029070: dw Module07_0E_02_ApplyFilterIf ; 0x02\n #_029072: dw Underworld_InitializeRoomFromSpecial ; 0x03\n #_029074: dw UnderworldTransition_TriggerBGC34UpdateAndAdvance ; 0x04\n #_029076: dw UnderworldTransition_TriggerBGC56UpdateAndAdvance ; 0x05\n #_029078: dw UnderworldTransition_LoadSpriteGFX ; 0x06\n #_02907A: dw Underworld_SyncBackgroundsFromSpiralStairs ; 0x07\n #_02907C: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x08\n #_02907E: dw Underworld_PrepTilemapAndAdvance ; 0x09\n #_029080: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0A\n #_029082: dw Underworld_FilterPrepTilemapAndAdvance ; 0x0B\n #_029084: dw Underworld_FilterUploadAndAdvance ; 0x0C\n #_029086: dw Underworld_FilterPrepTilemapAndAdvance ; 0x0D\n #_029088: dw Underworld_FilterUploadAndAdvance ; 0x0E\n #_02908A: dw Underworld_DoubleApplyAndIncrementGrayscale ; 0x0F\n #_02908C: dw Underworld_AdvanceThenSetBossMusicUnorthodox ; 0x10\n #_02908E: dw Module07_0E_11 ; 0x11\n #_029090: dw Module07_0E_12 ; 0x12\n #_029092: dw Module07_0E_13_SetRoomAndLayerAndCache ; 0x13\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_DoubleApplyAndIncrementGrayscale", + "code": "Underworld_DoubleApplyAndIncrementGrayscale:\n #_029094: JSL ApplyPaletteFilter\n #_029098: JSL ApplyPaletteFilter\n\n #_02909C: JSL ApplyGrayscaleFixed_Incremental\n\n #_0290A0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_02_ApplyFilterIf", + "code": "Module07_0E_02_ApplyFilterIf:\n #_0290A1: LDA.w $0464\n #_0290A4: CMP.b #$09\n #_0290A6: BCS .skip_filtering\n\n #_0290A8: JSL ApplyPaletteFilter\n #_0290AC: LDA.l $7EC007\n #_0290B0: BEQ .skip_filtering\n\n #_0290B2: JSL ApplyPaletteFilter\n\n.skip_filtering\n #_0290B6: LDA.w $0464\n #_0290B9: BNE .dec_to_zero\n\n #_0290BB: LDA.b #$0C\n #_0290BD: STA.b $4B\n #_0290BF: STA.w $02F9\n\n #_0290C2: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SyncBackgroundsFromSpiralStairs", + "code": "Underworld_SyncBackgroundsFromSpiralStairs:\n #_0290C7: LDA.l $7EF3CC\n #_0290CB: CMP.b #$06 ; FOLLOWER 06\n #_0290CD: BNE .not_blind_in_attic\n\n #_0290CF: LDA.b $A0\n #_0290D1: CMP.b #$64 ; ROOM 0064\n #_0290D3: BNE .not_blind_in_attic\n\n #_0290D5: LDA.b #$00\n #_0290D7: STA.l $7EF3CC\n\n; ---------------------------------------------------------\n\n.not_blind_in_attic\n #_0290DB: LDA.b $EE\n #_0290DD: PHA\n\n #_0290DE: REP #$10\n\n #_0290E0: LDX.w #$0030\n\n #_0290E3: LDA.w $0462\n #_0290E6: AND.b #$04\n #_0290E8: BNE .positive_y_a\n\n #_0290EA: LDX.w #$FFD0\n\n.positive_y_a\n #_0290ED: REP #$20\n\n #_0290EF: TXA\n #_0290F0: CLC\n #_0290F1: ADC.b $20\n #_0290F3: STA.b $20\n\n #_0290F5: SEP #$30\n\n #_0290F7: LDX.w $048A\n\n #_0290FA: LDA.l LayerOfDestination_for_EE,X\n #_0290FE: STA.b $EE\n\n #_029100: JSR SpiralStairs_MakeNearbyWallsHighPriority_Exiting\n\n #_029103: PLA\n #_029104: STA.b $EE\n\n; ---------------------------------------------------------\n\n #_029106: REP #$10\n\n #_029108: LDX.w #$FFD0\n\n #_02910B: LDA.w $0462\n #_02910E: AND.b #$04\n #_029110: BNE .positive_y_b\n\n #_029112: LDX.w #$0030\n\n.positive_y_b\n #_029115: REP #$20\n\n #_029117: TXA\n #_029118: CLC\n #_029119: ADC.b $20\n #_02911B: STA.b $20\n\n #_02911D: JSR UnderworldSyncBG1and2Scroll\n\n #_029120: SEP #$30\n\n #_029122: JSL Underworld_AdjustForRoomLayout\n\n; ---------------------------------------------------------\n\n #_029126: LDY.b #$16\n\n #_029128: LDX.w $0414\n #_02912B: LDA.l Underworld_SubscreenEnable,X\n #_02912F: BPL .valid_subscreen\n\n #_029131: LDY.b #$17\n #_029133: LDA.b #$00\n\n.valid_subscreen\n #_029135: CPX.b #$02\n #_029137: BNE .dont_override_as_bg12\n\n #_029139: LDA.b #$03\n\n.dont_override_as_bg12\n #_02913B: STY.b $1C\n #_02913D: STA.b $1D\n\n #_02913F: INC.b $A4\n\n #_029141: LDA.w $0462\n #_029144: AND.b #$04\n #_029146: BEQ .going_up\n\n #_029148: DEC.b $A4\n #_02914A: DEC.b $A4\n\n.going_up\n #_02914C: LDX.b #$18\n #_02914E: STX.w $0464\n\n #_029151: JSR Underworld_PlayBlipAndCacheQuadrantVisits\n #_029154: JSL RestoreTorchBackground\n\n #_029158: JMP.w Underworld_PrepTilemapAndAdvance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdvanceThenSetBossMusicUnorthodox", + "code": "Underworld_AdvanceThenSetBossMusicUnorthodox:\n #_02915B: JSR DeleteCertainAncillaeStopDashing\n\n #_02915E: LDA.b #$38\n #_029160: STA.w $0464\n\n #_029163: INC.b $B0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SetBossMusicUnorthodox", + "code": "Underworld_SetBossMusicUnorthodox:\n #_029165: REP #$20\n\n #_029167: LDX.b #$1C ; SONG 1C\n\n #_029169: LDA.b $A0\n\n #_02916B: CMP.w #$0010 ; ROOM 0010\n #_02916E: BEQ .set_song\n\n #_029170: LDX.b #$15 ; SONG 15\n\n #_029172: CMP.w #$0007 ; ROOM 0007\n #_029175: BEQ .check_last_command\n\n #_029177: LDX.b #$11 ; SONG 11\n\n #_029179: CMP.w #$0017 ; ROOM 0017\n #_02917C: BNE .exit\n\n #_02917E: CPX.w $0130\n #_029181: BEQ .exit\n\n.check_last_command\n #_029183: LDA.w $0130\n #_029186: AND.w #$00FF\n #_029189: CMP.w #$00F1 ; SONG F1 - fade\n #_02918C: BEQ .set_song\n\n #_02918E: LDA.l $7EF374\n #_029192: LSR A\n #_029193: BCS .exit\n\n.set_song\n #_029195: STX.w $012C\n\n.exit\n #_029198: SEP #$20\n\n #_02919A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_11", + "code": "Module07_0E_11:\n #_02919B: JSL SpiralStairs_FindLandingSpot\n\n #_02919F: DEC.w $0464\n #_0291A2: BNE .exit\n\n #_0291A4: LDX.b #$0A\n\n #_0291A6: LDA.w $0462\n #_0291A9: AND.b #$04\n #_0291AB: BNE .going_down\n\n #_0291AD: LDX.b #$18\n\n.going_down\n #_0291AF: STX.w $0464\n\n #_0291B2: INC.b $B0\n\n.exit\n #_0291B4: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_12", + "code": "Module07_0E_12:\n #_0291B5: JSL SpiralStairs_FindLandingSpot\n\n #_0291B9: DEC.w $0464\n #_0291BC: BNE .exit\n\n #_0291BE: INC.b $B0\n\n #_0291C0: STZ.w $0200\n\n.exit\n #_0291C3: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_00_InitPriorityAndScreens", + "code": "Module07_0E_00_InitPriorityAndScreens:\n #_0291C4: JSL SpiralStairs_MakeNearbyWallsHighPriority_Entering\n\n #_0291C8: LDA.b $EE\n #_0291CA: BEQ .dont_set_screendes_and_priority\n\n #_0291CC: LDA.b $1C\n #_0291CE: AND.b #$0F\n #_0291D0: STA.b $1C\n\n #_0291D2: LDA.b #$10\n #_0291D4: TSB.b $1D\n\n #_0291D6: LDA.b #$03\n #_0291D8: STA.b $EE\n\n.dont_set_screendes_and_priority\n #_0291DA: INC.b $B0\n\n #_0291DC: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0E_13_SetRoomAndLayerAndCache", + "code": "Module07_0E_13_SetRoomAndLayerAndCache:\n #_0291DD: LDX.w $048A\n\n #_0291E0: LDA.l LayerOfDestination_for_0476,X\n #_0291E4: STA.w $0476\n\n #_0291E7: LDA.l LayerOfDestination_for_EE,X\n #_0291EB: STA.b $EE\n\n #_0291ED: LDA.b #$10\n #_0291EF: TSB.b $1C\n\n #_0291F1: LDA.b $1D\n #_0291F3: AND.b #$0F\n #_0291F5: STA.b $1D\n\n #_0291F7: LDA.w $0462\n #_0291FA: AND.b #$04\n #_0291FC: BNE .going_down\n\n #_0291FE: JSL SpiralStairs_MakeNearbyWallsLowPriority\n\n.going_down\n #_029202: LDA.b $A0\n #_029204: STA.w $048E\n\n #_029207: JMP.w ResetThenCacheRoomEntryProperties\n\n; =========================================================\n\npool RepositionLinkAfterSpiralStairs\n\n.offset_x\n #_02920A: dw -28\n #_02920C: dw -28\n #_02920E: dw 24\n #_029210: dw 24\n\n.offset_y\n #_029212: dw 16\n #_029214: dw -10\n #_029216: dw -10\n #_029218: dw -32\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "RepositionLinkAfterSpiralStairs", + "code": "RepositionLinkAfterSpiralStairs:\n #_02921A: SEP #$20\n\n #_02921C: STZ.b $4B\n #_02921E: STZ.w $02F9\n\n #_029221: LDX.b #$00\n\n #_029223: LDA.w $048A\n #_029226: BNE .use_offset_set_a\n\n #_029228: CMP.w $0492\n #_02922B: BEQ .use_offset_set_a\n\n #_02922D: LDX.b #$02\n\n.use_offset_set_a\n #_02922F: LDA.w $0462\n #_029232: AND.b #$04\n #_029234: BEQ .going_up\n\n #_029236: TXA\n #_029237: CLC\n #_029238: ADC.b #$04\n #_02923A: TAX\n\n.going_up\n #_02923B: REP #$20\n\n #_02923D: LDA.b $22\n #_02923F: CLC\n #_029240: ADC.l .offset_x,X\n #_029244: STA.b $22\n\n #_029246: LDA.b $20\n #_029248: CLC\n #_029249: ADC.l .offset_y,X\n #_02924D: STA.b $20\n\n #_02924F: SEP #$20\n\n #_029251: LDA.b $1C\n #_029253: AND.b #$10\n #_029255: BEQ .sprites_not_on_mainscreen\n\n; ---------------------------------------------------------\n\n #_029257: LDA.w $048A\n #_02925A: CMP.b #$02\n #_02925C: BNE .reset_follower_a\n\n #_02925E: LDA.b #$03\n #_029260: STA.b $EE\n\n #_029262: LDA.b $1C\n #_029264: AND.b #$0F\n #_029266: STA.b $1C\n\n #_029268: LDA.b #$10\n #_02926A: TSB.b $1D\n\n #_02926C: LDA.w $0492\n #_02926F: CMP.b #$02\n #_029271: BEQ .reset_follower_a\n\n #_029273: REP #$20\n\n #_029275: LDA.b $20\n #_029277: CLC\n #_029278: ADC.w #$0018\n #_02927B: STA.b $20\n\n.reset_follower_a\n #_02927D: SEP #$20\n\n #_02927F: JSL Follower_Initialize\n\n #_029283: REP #$20\n\n #_029285: RTL", + "file": "bank_02.asm" + }, + { + "name": "SpiralStairs_MakeNearbyWallsHighPriority_Exiting", + "code": "SpiralStairs_MakeNearbyWallsHighPriority_Exiting:\n #_0292B1: LDA.w $0462\n #_0292B4: AND.b #$04\n #_0292B6: BNE .exit\n\n #_0292B8: REP #$30\n\n #_0292BA: LDA.w $048C\n #_0292BD: CLC\n #_0292BE: ADC.w #$0008\n #_0292C1: AND.w #$007F\n #_0292C4: STA.b $00\n\n; ---------------------------------------------------------\n\n #_0292C6: LDX.w #$FFFE\n\n.check_next\n #_0292C9: INX\n #_0292CA: INX\n\n #_0292CB: LDA.w $06B0,X\n #_0292CE: ASL A\n #_0292CF: AND.w #$007F\n #_0292D2: CMP.b $00\n #_0292D4: BNE .check_next\n\n; ---------------------------------------------------------\n\n #_0292D6: LDA.w $06B0,X\n #_0292D9: ASL A\n #_0292DA: SEC\n #_0292DB: SBC.w #$0008\n #_0292DE: STA.w $048C\n\n #_0292E1: TAX\n\n #_0292E2: LDY.w #$0004\n\n.flag_next\n #_0292E5: LDA.l $7E2000,X\n #_0292E9: ORA.w #$2000\n #_0292EC: STA.l $7E2000,X\n\n #_0292F0: LDA.l $7E2080,X\n #_0292F4: ORA.w #$2000\n #_0292F7: STA.l $7E2080,X\n\n #_0292FB: LDA.l $7E2100,X\n #_0292FF: ORA.w #$2000\n #_029302: STA.l $7E2100,X\n\n #_029306: LDA.l $7E2180,X\n #_02930A: ORA.w #$2000\n #_02930D: STA.l $7E2180,X\n\n #_029311: INX\n #_029312: INX\n\n #_029313: DEY\n #_029314: BPL .flag_next\n\n; ---------------------------------------------------------\n\n #_029316: SEP #$30\n\n.exit\n #_029318: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0F_LandingWipe", + "code": "Module07_0F_LandingWipe:\n #_02931D: LDA.b $B0\n #_02931F: ASL A\n #_029320: TAX\n\n #_029321: JSR (.vectors,X)\n\n #_029324: JSL Link_HandleMovingAnimation_FullLongEntry\n #_029328: JSL LinkOAM_Main\n\n #_02932C: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0F_00_InitSpotlight", + "code": "Module07_0F_00_InitSpotlight:\n #_02932D: JSL IrisSpotlight_open\n\n #_029331: INC.b $B0\n\n #_029333: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_0F_01_OperateSpotlight", + "code": "Module07_0F_01_OperateSpotlight:\n #_029334: JSL Sprite_Main\n #_029338: JSL IrisSpotlight_ConfigureTable\n\n #_02933C: LDA.b $11\n #_02933E: BNE .exit\n\n #_029340: STZ.b $96\n #_029342: STZ.b $97\n #_029344: STZ.b $98\n\n #_029346: STZ.b $1E\n #_029348: STZ.b $1F\n\n #_02934A: STZ.b $B0\n\n #_02934C: LDA.w $0132\n #_02934F: CMP.b #$FF ; SONG FF - transfer\n #_029351: BEQ .exit\n\n #_029353: STA.w $012C\n\n.exit\n #_029356: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_StraightInterroomStairs", + "code": "Module07_11_StraightInterroomStairs:\n #_029357: LDA.b $B0\n #_029359: CMP.b #$03\n #_02935B: BCC .skip_attributes\n\n #_02935D: JSL Underworld_LoadAttribute_Selectable\n\n.skip_attributes\n #_029361: LDA.b $B0\n #_029363: CMP.b #$0D\n #_029365: BCC .skip_gfx_upload\n\n #_029367: JSL Graphics_IncrementalVRAMUpload\n\n.skip_gfx_upload\n #_02936B: LDA.w $0464\n #_02936E: BEQ .run_subsubsub\n\n #_029370: DEC.w $0464\n\n #_029373: CMP.b #$10\n #_029375: BNE .no_stair_drag\n\n #_029377: LDA.b #$02\n #_029379: STA.b $57\n\n.no_stair_drag\n #_02937B: LDX.b #$08\n\n #_02937D: LDA.b $11\n #_02937F: CMP.b #$12\n #_029381: BEQ .move_up\n\n #_029383: LDX.b #$04\n\n.move_up\n #_029385: STX.b $67\n\n #_029387: JSL Link_HandleVelocity\n\n; ---------------------------------------------------------\n\n.run_subsubsub\n #_02938B: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02938F: LDA.b $B0\n #_029391: JSL JumpTableLocal\n #_029395: dw Module07_11_00_PrepAndReset ; 0x00\n #_029397: dw Module07_11_01_FadeOut ; 0x01\n #_029399: dw Module07_11_02_LoadAndPrepRoom ; 0x02\n #_02939B: dw Module07_11_03_FilterAndLoadBGChars ; 0x03\n #_02939D: dw Module07_11_04_FilterDoBGAndResetSprites ; 0x04\n #_02939F: dw Underworld_FilterPrepTilemapAndAdvance ; 0x05\n #_0293A1: dw Underworld_FilterUploadAndAdvance ; 0x06\n #_0293A3: dw Underworld_FilterPrepTilemapAndAdvance ; 0x07\n #_0293A5: dw Underworld_FilterUploadAndAdvance ; 0x08\n #_0293A7: dw Module07_11_09_LoadSpriteGraphics ; 0x09\n #_0293A9: dw Module07_11_0A_ScrollCamera ; 0x0A\n #_0293AB: dw Module07_11_0B_PrepDestination ; 0x0B\n #_0293AD: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0C\n #_0293AF: dw Underworld_PrepTilemapAndAdvance ; 0x0D\n #_0293B1: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0E\n #_0293B3: dw Underworld_DoubleApplyAndIncrementGrayscale ; 0x0F\n #_0293B5: dw Module07_11_19_SetSongAndFilter ; 0x10\n #_0293B7: dw Module07_11_11_KeepSliding ; 0x11\n #_0293B9: dw ResetThenCacheRoomEntryProperties ; 0x12\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_00_PrepAndReset", + "code": "Module07_11_00_PrepAndReset:\n #_0293BB: LDA.w $0372\n #_0293BE: BEQ .not_dashing\n\n #_0293C0: STZ.w $0372\n\n #_0293C3: LDA.b #$02\n #_0293C5: STA.b $5E\n\n.not_dashing\n #_0293C7: LDX.b #$16 ; SFX2.16\n\n #_0293C9: LDA.w $0462\n #_0293CC: AND.b #$04\n #_0293CE: BEQ .going_up\n\n #_0293D0: LDX.b #$18 ; SFX2.18\n\n.going_up\n #_0293D2: STX.w $012E\n\n; ---------------------------------------------------------\n\n #_0293D5: REP #$20\n\n #_0293D7: LDA.b $A0\n\n #_0293D9: CMP.w #$0030 ; ROOM 0030\n #_0293DC: BEQ .do_song_fade\n\n #_0293DE: CMP.w #$0040 ; ROOM 0040\n #_0293E1: BNE .no_song_fade\n\n.do_song_fade\n #_0293E3: LDX.b #$F1 ; SONG F1 - fade\n #_0293E5: STX.w $012C\n\n.no_song_fade\n #_0293E8: SEP #$20\n\n #_0293EA: JMP.w ResetTransitionPropsAndAdvance_ResetInterface\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_01_FadeOut", + "code": "Module07_11_01_FadeOut:\n #_0293ED: LDA.w $0464\n #_0293F0: CMP.b #$09\n #_0293F2: BCS .exit\n\n #_0293F4: JSL ApplyPaletteFilter\n\n #_0293F8: LDA.l $7EC007\n #_0293FC: CMP.b #$17\n #_0293FE: BNE .exit\n\n #_029400: INC.b $B0\n\n.exit\n #_029402: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_02_LoadAndPrepRoom", + "code": "Module07_11_02_LoadAndPrepRoom:\n #_029403: JSL ApplyPaletteFilter\n\n #_029407: JSL Underworld_LoadRoom\n\n #_02940B: JSL ToggleStarTileGraphics\n #_02940F: JSL LoadTransAuxGFX\n #_029413: JSL Underworld_LoadCustomTileTypes\n\n #_029417: JSL Underworld_AdjustForRoomLayout\n #_02941B: JSL Follower_Initialize\n\n #_02941F: INC.b $B0\n\n #_029421: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_03_FilterAndLoadBGChars", + "code": "Module07_11_03_FilterAndLoadBGChars:\n #_029422: JSL ApplyPaletteFilter\n\n #_029426: JSR UnderworldTransition_TriggerBGC34UpdateAndAdvance\n\n #_029429: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_04_FilterDoBGAndResetSprites", + "code": "Module07_11_04_FilterDoBGAndResetSprites:\n #_02942A: JSL ApplyPaletteFilter\n #_02942E: JSR UnderworldTransition_TriggerBGC56UpdateAndAdvance\n\n #_029431: LDA.b $A0\n #_029433: STA.w $048E\n\n #_029436: JSL Underworld_ResetSprites\n\n #_02943A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_0B_PrepDestination", + "code": "Module07_11_0B_PrepDestination:\n #_02943B: LDY.b #$16\n #_02943D: LDX.w $0414\n\n #_029440: LDA.l Underworld_SubscreenEnable,X\n #_029444: BPL .valid_screendes\n\n #_029446: LDY.b #$17\n #_029448: LDA.b #$00\n\n.valid_screendes\n #_02944A: STY.b $1C\n #_02944C: STA.b $1D\n\n #_02944E: LDY.b #$17 ; SFX2.17\n\n #_029450: INC.b $A4\n\n #_029452: LDA.b #$01\n #_029454: STA.b $57\n\n #_029456: LDX.b #$3C\n\n #_029458: LDA.w $0462\n #_02945B: AND.b #$04\n #_02945D: BEQ .going_up\n\n #_02945F: LDY.b #$19 ; SFX2.19\n\n #_029461: DEC.b $A4\n #_029463: DEC.b $A4\n\n #_029465: LDX.b #$32\n\n; ---------------------------------------------------------\n\n.going_up\n #_029467: STX.w $0464\n\n #_02946A: STY.w $012E\n\n #_02946D: STZ.b $00\n\n #_02946F: LDY.b $11\n\n #_029471: LDA.b $EE\n #_029473: BEQ .on_upper_layer\n\n; ---------------------------------------------------------\n\n #_029475: REP #$20\n\n #_029477: LDA.w #$0020\n #_02947A: CPY.b #$12\n #_02947C: BNE .move_y_down_a\n\n #_02947E: LDA.w #$FFE0\n\n.move_y_down_a\n #_029481: CLC\n #_029482: ADC.b $20\n #_029484: STA.b $20\n\n #_029486: INC.b $00\n\n #_029488: SEP #$20\n\n; ---------------------------------------------------------\n\n.on_upper_layer\n #_02948A: LDX.w $048A\n\n #_02948D: LDA.l LayerOfDestination_for_0476,X\n #_029491: STA.w $0476\n\n #_029494: LDA.l LayerOfDestination_for_EE,X\n #_029498: STA.b $EE\n\n #_02949A: BEQ .staying_on_upper_layer\n\n #_02949C: REP #$20\n\n #_02949E: LDA.w #$0020\n\n #_0294A1: CPY.b #$12\n #_0294A3: BNE .move_y_down_b\n\n #_0294A5: LDA.w #$FFE0\n\n.move_y_down_b\n #_0294A8: CLC\n #_0294A9: ADC.b $20\n #_0294AB: STA.b $20\n\n #_0294AD: INC.b $00\n\n #_0294AF: SEP #$20\n\n; ---------------------------------------------------------\n\n.staying_on_upper_layer\n #_0294B1: LDA.b $00\n #_0294B3: BNE .skip_extra_y_adjust\n\n #_0294B5: REP #$20\n\n #_0294B7: LDA.w #$000C\n\n #_0294BA: CPY.b #$12\n #_0294BC: BNE .move_y_down_c\n\n #_0294BE: REP #$10\n\n #_0294C0: LDX.w #$FFE8\n\n #_0294C3: LDA.w $0462\n #_0294C6: AND.w #$0004\n #_0294C9: BNE .going_down\n\n #_0294CB: LDX.w #$FFF8\n\n.going_down\n #_0294CE: TXA\n\n.move_y_down_c\n #_0294CF: CLC\n #_0294D0: ADC.b $20\n #_0294D2: STA.b $20\n\n #_0294D4: SEP #$30\n\n.skip_extra_y_adjust\n #_0294D6: JSR Underworld_PlayBlipAndCacheQuadrantVisits\n #_0294D9: JSL RestoreTorchBackground\n\n #_0294DD: JMP.w Underworld_PrepTilemapAndAdvance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_09_LoadSpriteGraphics", + "code": "Module07_11_09_LoadSpriteGraphics:\n #_0294E0: JSL ApplyPaletteFilter\n\n #_0294E4: DEC.b $B0\n\n #_0294E6: JSL LoadNewSpriteGFXSet\n\n #_0294EA: JMP.w Underworld_HandleTranslucencyAndPalettes\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_19_SetSongAndFilter", + "code": "Module07_11_19_SetSongAndFilter:\n #_0294ED: LDA.w $0200\n #_0294F0: CMP.b #$05\n #_0294F2: BNE ApplyGrayscaleFixed_Incremental_bounce\n\n #_0294F4: LDA.l $7EC009\n #_0294F8: BNE ApplyGrayscaleFixed_Incremental_bounce\n\n #_0294FA: INC.b $B0\n\n #_0294FC: REP #$20\n\n #_0294FE: LDX.b #$1C ; SONG 1C\n\n #_029500: LDA.b $A0\n\n #_029502: CMP.w #$0030 ; ROOM 0030\n #_029505: BEQ .set_song\n\n #_029507: CMP.w #$0040 ; ROOM 0040\n #_02950A: BNE .skip_song\n\n #_02950C: LDX.b #$10 ; SONG 10\n\n.set_song\n #_02950E: STX.w $012C\n\n.skip_song\n #_029511: SEP #$20\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "ApplyGrayscaleFixed_Incremental_bounce", + "code": "ApplyGrayscaleFixed_Incremental_bounce:\n #_029513: JSL ApplyGrayscaleFixed_Incremental\n\n #_029517: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_11_KeepSliding", + "code": "Module07_11_11_KeepSliding:\n #_029518: LDA.w $0464\n #_02951B: BNE ApplyGrayscaleFixed_Incremental_bounce\n\n #_02951D: INC.b $B0\n\n #_02951F: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_14_RecoverFromFall", + "code": "Module07_14_RecoverFromFall:\n #_029520: LDA.b $B0\n #_029522: JSL JumpTableLocal\n #_029526: dw Module07_14_00_ScrollCamera\n #_029528: dw RecoverPositionAfterDrowning\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_14_00_ScrollCamera", + "code": "Module07_14_00_ScrollCamera:\n #_02952A: REP #$20\n\n #_02952C: LDA.b $E2\n #_02952E: CMP.l $7EC180\n #_029532: BEQ .set_h_scroll\n #_029534: BCC .scroll_right\n\n #_029536: DEC A\n #_029537: CMP.l $7EC180\n #_02953B: BEQ .set_h_scroll\n\n #_02953D: DEC A\n #_02953E: BRA .set_h_scroll\n\n.scroll_right\n #_029540: INC A\n #_029541: CMP.l $7EC180\n #_029545: BEQ .set_h_scroll\n\n #_029547: INC A\n\n.set_h_scroll\n #_029548: STA.b $E2\n\n #_02954A: LDA.b $E8\n #_02954C: CMP.l $7EC182\n #_029550: BEQ .set_v_scroll\n #_029552: BCC .scroll_up\n\n #_029554: DEC A\n #_029555: CMP.l $7EC182\n #_029559: BEQ .set_v_scroll\n\n #_02955B: DEC A\n #_02955C: BRA .set_v_scroll\n\n.scroll_up\n #_02955E: INC A\n #_02955F: CMP.l $7EC182\n #_029563: BEQ .set_v_scroll\n\n #_029565: INC A\n\n; ---------------------------------------------------------\n\n.set_v_scroll\n #_029566: STA.b $E8\n\n #_029568: CMP.l $7EC182\n #_02956C: BNE .not_at_target_camera\n\n #_02956E: LDA.b $E2\n #_029570: CMP.l $7EC180\n #_029574: BNE .not_at_target_camera\n\n #_029576: INC.b $B0\n\n.not_at_target_camera\n #_029578: LDA.w $0458\n #_02957B: BNE .exit\n\n #_02957D: JSR UnderworldSyncBG1and2Scroll\n\n.exit\n #_029580: SEP #$20\n\n #_029582: RTS", + "file": "bank_02.asm" + }, + { + "name": "RecoverPositionAfterDrowning", + "code": "RecoverPositionAfterDrowning:\n #_029583: REP #$20\n\n #_029585: LDA.l $7EC184\n #_029589: STA.b $20\n\n #_02958B: LDA.l $7EC186\n #_02958F: STA.b $22\n\n #_029591: LDA.l $7EC188\n #_029595: STA.w $0600\n\n #_029598: LDA.l $7EC18A\n #_02959C: STA.w $0604\n\n #_02959F: LDA.l $7EC18C\n #_0295A3: STA.w $0608\n\n #_0295A6: LDA.l $7EC18E\n #_0295AA: STA.w $060C\n\n #_0295AD: LDA.l $7EC190\n #_0295B1: STA.w $0610\n\n #_0295B4: LDA.l $7EC192\n #_0295B8: STA.w $0612\n\n #_0295BB: LDA.l $7EC194\n #_0295BF: STA.w $0614\n\n #_0295C2: LDA.l $7EC196\n #_0295C6: STA.w $0616\n\n; ---------------------------------------------------------\n\n #_0295C9: LDA.b $1B\n #_0295CB: AND.w #$00FF\n #_0295CE: BEQ .outdoors\n\n #_0295D0: LDA.l $7EC198\n #_0295D4: STA.w $0618\n\n #_0295D7: INC A\n #_0295D8: INC A\n #_0295D9: STA.w $061A\n\n #_0295DC: LDA.l $7EC19A\n #_0295E0: STA.w $061C\n\n #_0295E3: INC A\n #_0295E4: INC A\n #_0295E5: STA.w $061E\n\n; ---------------------------------------------------------\n\n.outdoors\n #_0295E8: LDA.l $7EC19C\n #_0295EC: STA.b $A6\n\n #_0295EE: LDA.l $7EC19E\n #_0295F2: STA.b $A9\n\n #_0295F4: LDA.b $1B\n #_0295F6: AND.w #$00FF\n #_0295F9: BNE .indoors\n\n #_0295FB: LDA.w $0618\n #_0295FE: DEC A\n #_0295FF: DEC A\n #_029600: STA.w $061A\n\n #_029603: LDA.w $061C\n #_029606: DEC A\n #_029607: DEC A\n #_029608: STA.w $061E\n\n; ---------------------------------------------------------\n\n.indoors\n #_02960B: SEP #$20\n\n #_02960D: LDA.l $7EC1A6\n #_029611: STA.b $2F\n\n #_029613: LDA.l $7EC1A7\n #_029617: STA.b $EE\n\n #_029619: LDA.l $7EC1A8\n #_02961D: STA.w $0476\n\n #_029620: LDA.l $7EC1A9\n #_029624: STA.b $6C\n\n #_029626: LDA.l $7EC1AA\n #_02962A: STA.b $A4\n\n #_02962C: STZ.b $4B\n\n; ---------------------------------------------------------\n\n #_02962E: LDA.b #$90\n #_029630: STA.w $031F\n\n #_029633: JSR Underworld_PlayBlipAndCacheQuadrantVisits\n\n #_029636: STZ.w $037B\n\n #_029639: JSL Link_ResetStateAfterDamagingPit\n\n #_02963D: STZ.w $02F9\n\n #_029640: JSL Follower_Initialize\n\n #_029644: STZ.w $0642\n\n #_029647: STZ.w $0200\n #_02964A: STZ.b $B0\n\n #_02964C: STZ.w $0418\n #_02964F: STZ.b $11\n\n #_029651: LDA.l $7EF36D\n #_029655: BNE .exit\n\n #_029657: LDA.b #$00\n #_029659: STA.l $7EF36D\n\n #_02965D: LDA.b $1C\n #_02965F: STA.l $7EC211\n\n #_029663: LDA.b $1D\n #_029665: STA.l $7EC212\n\n #_029669: LDA.b $10\n #_02966B: STA.w $010C\n\n #_02966E: LDA.b #$12\n #_029670: STA.b $10\n\n #_029672: LDA.b #$01\n #_029674: STA.b $11\n\n #_029676: STZ.w $031F\n\n.exit\n #_029679: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_15_WarpPad", + "code": "Module07_15_WarpPad:\n #_02967A: LDA.b $B0\n #_02967C: CMP.b #$03\n #_02967E: BCC .skip_upload\n\n #_029680: JSL Graphics_IncrementalVRAMUpload\n #_029684: JSL Underworld_LoadAttribute_Selectable\n\n.skip_upload\n #_029688: LDA.b $B0\n #_02968A: JSL JumpTableLocal\n #_02968E: dw ResetTransitionPropsAndAdvance_ResetInterface ; 0x00\n #_029690: dw Module07_15_01_ApplyMosaicAndFilter ; 0x01\n #_029692: dw Underworld_InitializeRoomFromSpecial ; 0x02\n #_029694: dw UnderworldTransition_LoadSpriteGFX ; 0x03\n #_029696: dw Module07_15_04_SyncRoomPropsAndBuildOverlay ; 0x04\n #_029698: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x05\n #_02969A: dw Underworld_PrepTilemapAndAdvance ; 0x06\n #_02969C: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x07\n #_02969E: dw Underworld_PrepTilemapAndAdvance ; 0x08\n #_0296A0: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x09\n #_0296A2: dw Underworld_PrepTilemapAndAdvance ; 0x0A\n #_0296A4: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x0B\n #_0296A6: dw Underworld_AdvanceAndReset ; 0x0C\n #_0296A8: dw Module07_15_0E_FadeInFromWarp ; 0x0D\n #_0296AA: dw Module07_15_0F_FinalizeAndCacheEntry ; 0x0E\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_15_01_ApplyMosaicAndFilter", + "code": "Module07_15_01_ApplyMosaicAndFilter:\n #_0296AC: JSR ConditionalMosaicControl\n\n #_0296AF: LDA.l $7EC011\n #_0296B3: ORA.b #$03\n #_0296B5: STA.b $95\n\n #_0296B7: JMP.w ApplyPaletteFilter_bounce\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_15_04_SyncRoomPropsAndBuildOverlay", + "code": "Module07_15_04_SyncRoomPropsAndBuildOverlay:\n #_0296BA: JSL ApplyGrayscaleFixed_Incremental\n\n #_0296BE: REP #$20\n\n #_0296C0: LDA.b $A0\n #_0296C2: CMP.w #$0017 ; ROOM 0017\n #_0296C5: BNE .not_hera_5F\n\n #_0296C7: LDX.b #$04\n #_0296C9: STX.b $A4\n\n.not_hera_5F\n #_0296CB: JSR UnderworldSyncBG1and2Scroll\n #_0296CE: JSL Underworld_AdjustForRoomLayout\n\n #_0296D2: LDY.b #$16\n\n #_0296D4: LDX.w $0414\n #_0296D7: LDA.l Underworld_SubscreenEnable,X\n #_0296DB: BPL .valid_screendes\n\n #_0296DD: LDY.b #$17\n #_0296DF: LDA.b #$00\n\n.valid_screendes\n #_0296E1: STY.b $1C\n #_0296E3: STA.b $1D\n\n #_0296E5: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_0296E9: INC.b $B0\n\n #_0296EB: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_15_0E_FadeInFromWarp", + "code": "Module07_15_0E_FadeInFromWarp:\n #_0296EC: LDA.l $7EC007\n #_0296F0: LSR A\n #_0296F1: BCC .dont_decrease_mosaic\n\n #_0296F3: LDA.l $7EC011\n #_0296F7: BEQ .dont_decrease_mosaic\n\n #_0296F9: SEC\n #_0296FA: SBC.b #$10\n #_0296FC: STA.l $7EC011\n\n.dont_decrease_mosaic\n #_029700: LDA.b #$09\n #_029702: STA.b $94\n\n #_029704: LDA.l $7EC011\n #_029708: ORA.b #$03\n #_02970A: STA.b $95\n\n #_02970C: JMP.w ApplyPaletteFilter_bounce\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_15_0F_FinalizeAndCacheEntry", + "code": "Module07_15_0F_FinalizeAndCacheEntry:\n #_02970F: LDA.w $0200\n #_029712: CMP.b #$05\n #_029714: BNE EXIT_02971F\n\n #_029716: JSL SetAndSaveVisitedQuadrantFlags\n\n #_02971A: STZ.b $11\n\n #_02971C: JSR ResetThenCacheRoomEntryProperties\n\n; ---------------------------------------------------------\n\n#EXIT_02971F:\n #_02971F: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_16_UpdatePegs", + "code": "Module07_16_UpdatePegs:\n #_02972A: INC.b $B0\n\n #_02972C: LDA.b $B0\n #_02972E: AND.b #$03\n #_029730: BNE EXIT_02971F\n\n #_029732: LDA.b $B0\n #_029734: LSR A\n #_029735: TAX\n\n #_029736: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_16_UpdatePegs_Step1", + "code": "Module07_16_UpdatePegs_Step1:\n #_029739: REP #$10\n\n #_02973B: LDX.w #$0100\n #_02973E: LDY.w #$0080\n\n #_029741: LDA.l $7EC172\n #_029745: BEQ .blue_pegs_up\n\n #_029747: TYX\n\n #_029748: LDY.w #$0100\n\n.blue_pegs_up\n #_02974B: BRA Underworld_UpdatePegGFXBuffer\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_16_UpdatePegs_Step2", + "code": "Module07_16_UpdatePegs_Step2:\n #_02974D: REP #$10\n\n #_02974F: LDX.w #$0080\n #_029752: LDY.w #$0100\n\n #_029755: LDA.l $7EC172\n #_029759: BEQ .blue_pegs_up\n\n #_02975B: TYX\n\n #_02975C: LDY.w #$0080\n\n.blue_pegs_up\n #_02975F: BRA Underworld_UpdatePegGFXBuffer\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_16_UpdatePegs_Step3", + "code": "Module07_16_UpdatePegs_Step3:\n #_029761: REP #$10\n\n #_029763: LDX.w #$0000\n #_029766: LDY.w #$0180\n\n #_029769: LDA.l $7EC172\n #_02976D: BEQ Underworld_UpdatePegGFXBuffer\n\n #_02976F: TYX\n\n #_029770: LDY.w #$0000\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_UpdatePegGFXBuffer", + "code": "Underworld_UpdatePegGFXBuffer:\n #_029773: STY.b $0E\n\n #_029775: PHB\n\n #_029776: LDA.b #$7F\n #_029778: PHA\n #_029779: PLB\n\n #_02977A: REP #$20\n\n; ---------------------------------------------------------\n\n #_02977C: LDY.w #$0000\n\n.next_blue\n #_02977F: LDA.l $7EB340,X\n #_029783: STA.w $7F0000,Y\n\n #_029786: INX\n #_029787: INX\n\n #_029788: INY\n #_029789: INY\n #_02978A: CPY.w #$0080\n #_02978D: BNE .next_blue\n\n; ---------------------------------------------------------\n\n #_02978F: LDX.b $0E\n\n.next_orange\n #_029791: LDA.l $7EB340,X\n #_029795: STA.w $7F0000,Y\n\n #_029798: INX\n #_029799: INX\n\n #_02979A: INY\n #_02979B: INY\n #_02979C: CPY.w #$0100\n #_02979F: BNE .next_orange\n\n; ---------------------------------------------------------\n\n #_0297A1: SEP #$30\n\n #_0297A3: PLB\n\n #_0297A4: LDA.b #$17\n #_0297A6: STA.b $17\n\n #_0297A8: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_16_UpdatePegs_FinishUp", + "code": "Module07_16_UpdatePegs_FinishUp:\n #_0297A9: JSL Underworld_FlipCrystalPegAttribute\n\n #_0297AD: STZ.b $B0\n #_0297AF: STZ.b $11\n\n #_0297B1: RTS", + "file": "bank_02.asm" + }, + { + "name": "RecoverPegGFXFromMapping", + "code": "RecoverPegGFXFromMapping:\n #_0297B2: REP #$10\n\n #_0297B4: LDX.w #$0000\n #_0297B7: LDY.w #$0180\n\n #_0297BA: LDA.l $7EC172\n #_0297BE: BEQ .blue_pegs_up\n\n #_0297C0: TYX\n\n #_0297C1: LDY.w #$0000\n\n.blue_pegs_up\n #_0297C4: JSR Underworld_UpdatePegGFXBuffer\n\n #_0297C7: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module07_17_PressurePlate", + "code": "Module07_17_PressurePlate:\n #_0297C8: DEC.b $B0\n #_0297CA: BNE .exit\n\n #_0297CC: REP #$30\n\n #_0297CE: LDA.b $20\n #_0297D0: SEC\n #_0297D1: SBC.w #$0002\n #_0297D4: STA.b $20\n\n #_0297D6: LDA.w $04B6\n #_0297D9: LSR A\n #_0297DA: LSR A\n #_0297DB: LSR A\n #_0297DC: AND.w #$01F8\n #_0297DF: STA.b $02\n\n #_0297E1: LDA.w $04B6\n #_0297E4: AND.w #$003F\n #_0297E7: ASL A\n #_0297E8: ASL A\n #_0297E9: ASL A\n #_0297EA: STA.b $00\n\n #_0297EC: SEP #$30\n\n #_0297EE: LDY.b #$0E\n #_0297F0: JSL Underworld_UpdateTilemapWithCommonTile\n\n #_0297F4: LDA.w $010C\n #_0297F7: STA.b $11\n\n.exit\n #_0297F9: RTS", + "file": "bank_02.asm" + }, + { + "name": "CrystalGraphicsTilemapLocation", + "code": "CrystalGraphicsTilemapLocation:\n #_0297FA: dw $1618, $1658, $1658, $1618\n #_029802: dw $0658, $1618, $1658, $0000\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module07_18_RescuedMaiden", + "code": "Module07_18_RescuedMaiden:\n #_02980A: LDA.b $B0\n #_02980C: JSL JumpTableLocal\n #_029810: dw PrepareForCrystalCutscene ; 0x00\n #_029812: dw BuildCrystalCutsceneTilemap ; 0x01\n #_029814: dw Underworld_PrepTilemapAndAdvance ; 0x02\n #_029816: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x03\n #_029818: dw Underworld_PrepTilemapAndAdvance ; 0x04\n #_02981A: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x05\n #_02981C: dw Underworld_PrepTilemapAndAdvance ; 0x06\n #_02981E: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x07\n #_029820: dw Underworld_PrepTilemapAndAdvance ; 0x08\n #_029822: dw Underworld_PrepNextQuadrantUploadAndAdvance ; 0x09\n #_029824: dw StartCrystalCutscene ; 0x0A\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "PrepareForCrystalCutscene", + "code": "PrepareForCrystalCutscene:\n #_029826: JSL PaletteFilter_RestoreBGSubstractiveStrict\n\n #_02982A: LDA.l $7EC540\n #_02982E: STA.l $7EC500\n\n #_029832: LDA.l $7EC541\n #_029836: STA.l $7EC501\n\n #_02983A: LDA.l $7EC009\n #_02983E: CMP.b #$FF\n #_029840: BNE .exit\n\n; ---------------------------------------------------------\n\n #_029842: REP #$30\n\n #_029844: LDX.w #$0000\n #_029847: LDA.w #$01EC\n\n.next\n #_02984A: STA.l $7E2000,X\n #_02984E: STA.l $7E2800,X\n #_029852: STA.l $7E3000,X\n #_029856: STA.l $7E3800,X\n\n #_02985A: STA.l $7E4000,X\n #_02985E: STA.l $7E4800,X\n #_029862: STA.l $7E5000,X\n #_029866: STA.l $7E5800,X\n\n #_02986A: INX\n #_02986B: INX\n #_02986C: CPX.w #$0800\n #_02986F: BNE .next\n\n; ---------------------------------------------------------\n\n #_029871: STZ.w $011C\n #_029874: STZ.w $011A\n\n #_029877: STZ.w $0422\n #_02987A: STZ.w $0424\n\n #_02987D: SEP #$30\n\n #_02987F: STZ.w $0418\n #_029882: STZ.w $045C\n\n #_029885: INC.b $B0\n\n.exit\n #_029887: RTS", + "file": "bank_02.asm" + }, + { + "name": "BuildCrystalCutsceneTilemap", + "code": "BuildCrystalCutsceneTilemap:\n #_029888: JSL PaletteFilter_Crystal\n\n #_02988C: LDA.b #$01\n #_02988E: STA.b $1D\n\n #_029890: LDA.b #$02\n #_029892: STA.w $02E4\n\n; ---------------------------------------------------------\n\n #_029895: REP #$20\n\n #_029897: LDX.b #$0E\n\n #_029899: LDA.b $A0\n\n.next_crystal_check\n #_02989B: DEX\n #_02989C: DEX\n\n #_02989D: CMP.l CrystalBossRooms,X\n #_0298A1: BNE .next_crystal_check\n\n #_0298A3: LDA.l CrystalGraphicsTilemapLocation,X\n #_0298A7: STA.b $08\n\n; ---------------------------------------------------------\n\n #_0298A9: REP #$10\n\n #_0298AB: LDA.w #$0004\n #_0298AE: STA.b $0C\n\n #_0298B0: STZ.b $0E\n\n.next_super\n #_0298B2: LDY.w #$0007\n #_0298B5: LDX.b $08\n\n.next_tile\n #_0298B7: LDA.b $0E\n #_0298B9: ORA.w #$1F80\n #_0298BC: STA.l $7E4000,X\n\n #_0298C0: ORA.w #$1F88\n #_0298C3: STA.l $7E4200,X\n\n #_0298C7: INC.b $0E\n\n #_0298C9: INX\n #_0298CA: INX\n\n #_0298CB: DEY\n #_0298CC: BPL .next_tile\n\n #_0298CE: LDA.b $0E\n #_0298D0: CLC\n #_0298D1: ADC.w #$0008\n #_0298D4: STA.b $0E\n\n #_0298D6: LDA.b $08\n #_0298D8: CLC\n #_0298D9: ADC.w #$0080\n #_0298DC: STA.b $08\n\n #_0298DE: DEC.b $0C\n #_0298E0: BNE .next_super\n\n; ---------------------------------------------------------\n\n #_0298E2: SEP #$30\n\n #_0298E4: INC.b $B0\n\n #_0298E6: RTS", + "file": "bank_02.asm" + }, + { + "name": "StartCrystalCutscene", + "code": "StartCrystalCutscene:\n #_0298E7: INC.w $012A\n\n #_0298EA: JSL Polyhedral_InitializeThread\n\n #_0298EE: JSL CrystalCutscene_Initialize\n\n #_0298F2: STZ.b $11\n #_0298F4: STZ.b $B0\n\n #_0298F6: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_19_MirrorFade", + "code": "Module07_19_MirrorFade:\n #_0298F7: JSR MosaicControlIncrease\n\n #_0298FA: DEC.b $13\n #_0298FC: BNE .exit\n\n #_0298FE: LDA.b #$05\n #_029900: STA.b $10\n\n #_029902: STZ.b $11\n #_029904: STZ.b $14\n\n #_029906: LDA.w $0130\n #_029909: STA.w $0133\n\n #_02990C: LDA.w $0ABD\n #_02990F: BEQ .exit\n\n #_029911: JSL Palette_RevertTranslucencySwap\n\n.exit\n #_029915: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_1A_RoomDraw_OpenTriforceDoor_bounce", + "code": "Module07_1A_RoomDraw_OpenTriforceDoor_bounce:\n #_029916: JSL RoomDraw_OpenTriforceDoor\n\n #_02991A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module0C_Unused", + "code": "Module0C_Unused:\n #_02991B: JSR ConditionalMosaicControl\n #_02991E: JSR Module0C_RunSubmodule\n\n #_029921: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module0C_RunSubmodule", + "code": "Module0C_RunSubmodule:\n #_029922: LDA.b $B0\n #_029924: JSL JumpTableLocal\n #_029928: dw ResetTransitionPropsAndAdvance_ResetInterface\n #_02992A: dw ApplyPaletteFilter_bounce\n #_02992C: dw Module0C_RestoreModule\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module0C_RestoreModule", + "code": "Module0C_RestoreModule:\n #_02992E: LDA.w $010C\n #_029931: STA.b $10\n\n #_029933: STZ.b $11\n #_029935: STZ.b $B0\n\n #_029937: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module0D_Unused", + "code": "Module0D_Unused:\n #_029938: LDA.l $7EC007\n #_02993C: LSR A\n #_02993D: BCC .dont_adjust_mosaic\n\n #_02993F: LDA.l $7EC011\n #_029943: SEC\n #_029944: SBC.b #$10\n #_029946: STA.l $7EC011\n\n.dont_adjust_mosaic\n #_02994A: JSR CopyMosaicControl\n\n #_02994D: JSR Module0D_RunSubmodule\n\n #_029950: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module0D_RunSubmodule", + "code": "Module0D_RunSubmodule:\n #_029951: LDA.b $B0\n #_029953: JSL JumpTableLocal\n #_029957: dw ApplyPaletteFilter_bounce\n #_029959: dw Module0D_RestoreModule\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module0D_RestoreModule", + "code": "Module0D_RestoreModule:\n #_02995B: STZ.b $11\n #_02995D: STZ.b $B0\n\n #_02995F: LDA.w $010C\n #_029962: STA.b $10\n\n #_029964: CMP.b #$09\n #_029966: BNE .exit\n\n #_029968: LDA.w $0696\n #_02996B: ORA.w $0698\n #_02996E: BEQ .exit\n\n #_029970: LDA.b #$0A\n #_029972: STA.b $11\n\n #_029974: LDA.b #$10\n #_029976: STA.w $069A\n\n.exit\n #_029979: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module0F_SpotlightClose", + "code": "Module0F_SpotlightClose:\n #_029982: JSL Sprite_Main\n\n #_029986: LDA.b $11\n #_029988: ASL A\n #_029989: TAX\n\n #_02998A: JSR (.submodules,X)\n\n; ---------------------------------------------------------\n\n #_02998D: LDA.b $1B\n #_02998F: BNE .indoors\n\n #_029991: LDA.b $8A\n #_029993: CMP.b #$0F ; ROOM 010F\n #_029995: BNE .not_waterfall_of_wishing\n\n #_029997: LDA.b #$01\n #_029999: STA.w $0351\n\n.not_waterfall_of_wishing\n #_02999C: LDA.b #$06\n #_02999E: STA.b $5E\n\n #_0299A0: JSL Link_HandleVelocity\n\n #_0299A4: STZ.b $31\n #_0299A6: STZ.b $30\n\n.indoors\n #_0299A8: LDA.b $2F\n #_0299AA: LSR A\n #_0299AB: TAX\n\n #_0299AC: LDA.b $1B\n #_0299AE: BNE .still_indoors\n\n #_0299B0: LDX.b #$00\n\n #_0299B2: LDA.w $010E\n #_0299B5: CMP.b #$43 ; ENTRANCE 43\n #_0299B7: BNE .still_indoors\n\n #_0299B9: INX\n\n.still_indoors\n #_0299BA: LDA.l .direction,X\n #_0299BE: STA.b $26\n #_0299C0: STA.b $67\n\n #_0299C2: JSL Link_HandleMovingAnimation_FullLongEntry\n #_0299C6: JML LinkOAM_Main\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_PrepExitWithSpotlight", + "code": "Underworld_PrepExitWithSpotlight:\n #_0299CA: STZ.w $012A\n #_0299CD: STZ.w $1F0C\n\n #_0299D0: LDA.b $1B\n #_0299D2: BNE .indoors\n\n #_0299D4: JSL Ancilla_DeleteWaterfallSplashes\n\n #_0299D8: REP #$20\n\n #_0299DA: LDA.b $20\n #_0299DC: STA.l $7EC148\n\n #_0299E0: SEP #$20\n\n; ---------------------------------------------------------\n\n.indoors\n #_0299E2: LDX.w $010E\n\n #_0299E5: LDA.l EntranceData_song,X\n #_0299E9: CMP.b #$03 ; SONG 03\n #_0299EB: BNE .check_if_half_vol\n\n #_0299ED: LDA.l $7EF3C5\n #_0299F1: CMP.b #$02\n #_0299F3: BCC .rain_state\n\n.check_if_half_vol\n #_0299F5: CMP.b #$F2 ; SONG F2 - half volume\n #_0299F7: BNE .fade_song\n\n #_0299F9: LDX.w $0130\n #_0299FC: CPX.b #$0C ; SONG 0C\n #_0299FE: BNE .set_song\n\n #_029A00: LDA.b #$07 ; SONG 07\n #_029A02: BRA .set_song\n\n.fade_song\n #_029A04: LDA.b #$F1 ; SONG F1\n\n; ---------------------------------------------------------\n\n.set_song\n #_029A06: STA.w $012C\n\n.rain_state\n #_029A09: STZ.w $04A0\n\n #_029A0C: JSL HUD_HandleFloorIndicator\n\n #_029A10: INC.b $16\n\n #_029A12: JSL IrisSpotlight_close\n\n #_029A16: INC.b $11\n\n; ---------------------------------------------------------\n\n#EXIT_029A18:\n #_029A18: RTS", + "file": "bank_02.asm" + }, + { + "name": "Spotlight_ConfigureTableAndControl", + "code": "Spotlight_ConfigureTableAndControl:\n #_029A19: JSL IrisSpotlight_ConfigureTable\n\n #_029A1D: STZ.w $012A\n #_029A20: STZ.w $1F0C\n\n #_029A23: LDA.b $11\n #_029A25: BNE EXIT_029A18\n\n #_029A27: LDA.b $10\n #_029A29: CMP.b #$06\n #_029A2B: BNE .dont_restore_y_coord\n\n #_029A2D: REP #$20\n\n #_029A2F: LDA.l $7EC148\n #_029A33: STA.b $20\n\n #_029A35: SEP #$20\n\n; ---------------------------------------------------------\n\n#Spotlight_ConfigureTableAndControl_dont_restore_y_coord:\n #_029A37: LDA.b $10\n #_029A39: CMP.b #$09\n #_029A3B: BEQ .dont_reset\n\n #_029A3D: JSL EnableForceBlank\n #_029A41: JSL Link_ItemReset_FromOverworldThings\n\n.dont_reset\n #_029A45: LDA.b $10\n #_029A47: CMP.b #$09\n #_029A49: BNE .delay_advance\n\n #_029A4B: LDA.b $A1\n #_029A4D: BNE .underworld_2\n\n #_029A4F: LDA.b $A0\n #_029A51: CMP.b #$20 ; ROOM 0020\n #_029A53: BEQ .from_agahnim\n\n.underworld_2\n #_029A55: LDA.b #$0A\n\n #_029A57: LDX.b $2F\n #_029A59: BNE .not_facing_up\n\n #_029A5B: LDA.b #$0B\n\n.not_facing_up\n #_029A5D: STA.b $11\n\n.from_agahnim\n #_029A5F: LDA.b #$10\n #_029A61: STA.w $069A\n\n #_029A64: LDA.w $0696\n #_029A67: ORA.w $0698\n #_029A6A: BEQ .delay_advance\n\n #_029A6C: LDA.w $0699\n #_029A6F: BEQ .delay_advance\n\n #_029A71: LDX.b #$00\n #_029A73: ASL A\n #_029A74: BCC .not_long_walk\n\n #_029A76: LDX.b #$18\n\n.not_long_walk\n #_029A78: LDA.w $0699\n #_029A7B: AND.b #$7F\n #_029A7D: STA.w $0699\n\n #_029A80: STX.w $0692\n #_029A83: STZ.w $0690\n\n #_029A86: LDA.b #$09\n #_029A88: STA.b $11\n\n #_029A8A: STZ.b $B0\n\n #_029A8C: LDA.b #$15 ; SFX3.15\n #_029A8E: STA.w $012F\n\n; ---------------------------------------------------------\n\n.delay_advance\n #_029A91: STZ.b $96\n #_029A93: STZ.b $97\n #_029A95: STZ.b $98\n\n #_029A97: STZ.b $1E\n #_029A99: STZ.b $1F\n\n #_029A9B: STZ.w $03EF\n\n; ---------------------------------------------------------\n\n #_029A9E: REP #$30\n\n #_029AA0: LDX.w #$4C26\n #_029AA3: LDY.w #$8C4C\n\n #_029AA6: LDA.b $8A\n #_029AA8: CMP.w #$0003 ; OW 03\n #_029AAB: BEQ .on_dm_screens\n\n #_029AAD: CMP.w #$0005 ; OW 05\n #_029AB0: BEQ .on_dm_screens\n\n #_029AB2: CMP.w #$0007 ; OW 07\n #_029AB5: BEQ .on_dm_screens\n\n #_029AB7: LDX.w #$4A26\n #_029ABA: LDY.w #$874A\n\n #_029ABD: CMP.w #$0043 ; OW 43\n #_029AC0: BEQ .on_dm_screens\n\n #_029AC2: CMP.w #$0045 ; OW 45\n #_029AC5: BEQ .on_dm_screens\n\n #_029AC7: CMP.w #$0047 ; OW 47\n #_029ACA: BNE .not_dm_screen\n\n.on_dm_screens\n #_029ACC: STX.b $9C\n #_029ACE: STY.b $9D\n\n.not_dm_screen\n #_029AD0: SEP #$30\n\n #_029AD2: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module10_SpotlightOpen", + "code": "Module10_SpotlightOpen:\n #_029AD7: JSL Sprite_Main\n\n #_029ADB: LDA.b $11\n #_029ADD: ASL A\n #_029ADE: TAX\n\n #_029ADF: JSR (.submodules,X)\n\n #_029AE2: JML LinkOAM_Main\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module10_00_OpenIris", + "code": "Module10_00_OpenIris:\n #_029AE6: JSL IrisSpotlight_open\n\n #_029AEA: INC.b $11\n\n #_029AEC: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module11_UnderworldFallingEntrance", + "code": "Module11_UnderworldFallingEntrance:\n #_029AF9: LDA.b $B0\n #_029AFB: ASL A\n #_029AFC: TAX\n\n #_029AFD: JSR (.vectors,X)\n\n #_029B00: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module_11_00_SetSongAndInit", + "code": "Module_11_00_SetSongAndInit:\n #_029B01: LDX.w $010E\n\n #_029B04: LDA.l EntranceData_song,X\n #_029B08: CMP.b #$03 ; SONG 03\n #_029B0A: BNE .fade\n\n #_029B0C: LDA.l $7EF3C5\n #_029B10: CMP.b #$02\n #_029B12: BCC .rain_state\n\n.fade\n #_029B14: LDA.b #$F1 ; SONG F1 - fade\n #_029B16: STA.w $012C\n\n.rain_state\n #_029B19: JMP.w ResetTransitionPropsAndAdvance_ResetInterface\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module11_02_LoadEntrance", + "code": "Module11_02_LoadEntrance:\n #_029B1C: JSL EnableForceBlank\n\n #_029B20: LDA.b #$02\n #_029B22: STA.b $99\n\n #_029B24: JSR Underworld_LoadEntrance\n\n #_029B27: LDA.w $040C\n #_029B2A: CMP.b #$FF ; DUNGEON FF\n #_029B2C: BEQ .caves\n\n #_029B2E: CMP.b #$02 ; DUNGEON 02\n #_029B30: BNE .not_castle\n\n #_029B32: LDA.b #$00 ; DUNGEON 00\n\n.not_castle\n #_029B34: LSR A\n #_029B35: TAX\n\n #_029B36: LDA.l $7EF37C,X\n\n; ---------------------------------------------------------\n\n.caves\n #_029B3A: JSL RebuildHUD_Keys\n\n #_029B3E: LDA.b #$04\n #_029B40: STA.b $5A\n\n #_029B42: LDA.b #$03\n #_029B44: STA.b $5B\n\n #_029B46: LDA.b #$0C\n #_029B48: STA.b $4B\n\n #_029B4A: LDA.b #$10\n #_029B4C: STA.b $57\n\n #_029B4E: LDA.b $20\n #_029B50: SEC\n #_029B51: SBC.b $E8\n #_029B53: STA.b $00\n #_029B55: STZ.b $01\n\n #_029B57: STZ.w $0308\n #_029B5A: STZ.w $0309\n #_029B5D: STZ.w $030B\n\n; ---------------------------------------------------------\n\n #_029B60: REP #$30\n\n #_029B62: LDA.b $A0\n #_029B64: STA.b $A2\n\n #_029B66: LDA.w #$0010\n #_029B69: CLC\n #_029B6A: ADC.b $00\n #_029B6C: STA.b $00\n\n #_029B6E: LDA.b $20\n #_029B70: STA.b $51\n\n #_029B72: SEC\n #_029B73: SBC.b $00\n #_029B75: STA.b $20\n\n; ---------------------------------------------------------\n\n #_029B77: SEP #$30\n\n #_029B79: LDA.b $B0\n #_029B7B: PHA\n\n #_029B7C: STZ.w $045A\n #_029B7F: STZ.w $0458\n\n #_029B82: JSR Underworld_LoadAndDrawRoom\n #_029B85: JSL Underworld_LoadCustomTileTypes\n\n #_029B89: LDX.w $0AA1\n\n #_029B8C: LDA.l AnimatedTileSheets,X\n #_029B90: TAY\n\n #_029B91: JSL DecompressAnimatedUnderworldTiles\n #_029B95: JSL Underworld_LoadAttributeTable\n\n; ---------------------------------------------------------\n\n #_029B99: PLA\n #_029B9A: INC A\n #_029B9B: STA.b $B0\n\n #_029B9D: LDA.b #$0A\n #_029B9F: STA.w $0AA4\n\n #_029BA2: LDA.b #$02\n #_029BA4: STA.w OBSEL\n\n #_029BA7: JSL InitializeTilesets\n\n #_029BAB: LDA.b #$0A\n #_029BAD: STA.w $0AB1\n\n #_029BB0: JSR Underworld_LoadPalettes\n #_029BB3: JSL RestoreTorchBackground\n\n #_029BB7: STZ.b $3A\n #_029BB9: STZ.b $3C\n\n; ---------------------------------------------------------\n\n #_029BBB: JSR Underworld_ResetTorchBackgroundAndPlayer\n\n #_029BBE: LDA.w $02E0\n #_029BC1: BEQ .not_bunny\n\n #_029BC3: JSL RefreshLinkEquipmentPalettes_bunny\n\n.not_bunny\n #_029BC7: LDA.b #$80\n #_029BC9: STA.b $9B\n\n #_029BCB: JSL RefillLogic_long\n #_029BCF: JSL UnderworldAdjustRainSFX\n\n #_029BD3: LDA.b #$07\n #_029BD5: STA.b $11\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadSongBankIfNeeded", + "code": "Underworld_LoadSongBankIfNeeded:\n #_029BD7: LDA.w $0132\n #_029BDA: CMP.b #$FF ; SONG FF - transfer\n #_029BDC: BEQ .exit\n\n #_029BDE: CMP.b #$F2 ; SONG F2 - half volume\n #_029BE0: BEQ .exit\n\n #_029BE2: CMP.b #$03 ; SONG 03\n #_029BE4: BEQ .overworld_song\n\n #_029BE6: CMP.b #$07 ; SONG 07\n #_029BE8: BEQ .overworld_song\n\n #_029BEA: CMP.b #$0E ; SONG 0E\n #_029BEC: BEQ .overworld_song\n\n #_029BEE: LDA.w $0136\n #_029BF1: BNE .exit\n\n #_029BF3: SEI\n #_029BF4: STZ.w NMITIMEN\n #_029BF7: STZ.w HDMAEN\n\n #_029BFA: INC.w $0136\n\n #_029BFD: LDA.b #$FF ; SONG FF - transfer\n #_029BFF: STA.w APUIO0\n\n #_029C02: JSL LoadUnderworldSongs\n\n #_029C06: LDA.b #$81\n #_029C08: STA.w NMITIMEN\n\n.exit\n #_029C0B: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module11_04_FadeAndLoadQuadrants", + "code": "Module11_04_FadeAndLoadQuadrants:\n #_029C0F: LDA.b $13\n #_029C11: INC A\n #_029C12: AND.b #$0F\n #_029C14: STA.b $13\n\n #_029C16: CMP.b #$0F\n #_029C18: BNE Module11_05_LoadQuadrants\n\n #_029C1A: INC.b $B0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module11_05_LoadQuadrants", + "code": "Module11_05_LoadQuadrants:\n #_029C1C: JSL HandleUnderworldLandingFromPit\n\n #_029C20: LDA.b $11\n #_029C22: BNE .exit\n\n #_029C24: LDA.b #$07\n #_029C26: STA.b $10\n\n #_029C28: INC.w $04C7\n\n #_029C2B: JSR Underworld_PlayBlipAndCacheQuadrantVisits\n #_029C2E: JSR ResetThenCacheRoomEntryProperties\n\n #_029C31: LDA.w $0132\n #_029C34: STA.w $012C\n\n #_029C37: LDA.w $0130\n #_029C3A: STA.w $0133\n\n.exit\n #_029C3D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module13_BossVictory_Pendant", + "code": "Module13_BossVictory_Pendant:\n #_029C4A: LDA.b $11\n #_029C4C: ASL A\n #_029C4D: TAX\n\n #_029C4E: JSR (.submodules,X)\n\n #_029C51: JSL Sprite_Main\n #_029C55: JML LinkOAM_Main\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "BossVictory_Heal", + "code": "BossVictory_Heal:\n #_029C59: JSL AnimatedRefill_Magic\n #_029C5D: BCS .still_restoring_magic\n\n #_029C5F: INC.w $0200\n\n.still_restoring_magic\n #_029C62: JSL AnimatedRefill_Health\n #_029C66: BCS .still_healing_hp\n\n #_029C68: INC.w $0200\n\n.still_healing_hp\n #_029C6B: LDA.w $0200\n #_029C6E: BNE .reset_subsub\n\n; ---------------------------------------------------------\n\n #_029C70: LDA.b $3A\n #_029C72: AND.b #$BF\n #_029C74: STA.b $3A\n\n #_029C76: JSR DeleteCertainAncillaeStopDashing\n\n #_029C79: LDA.b #$02\n #_029C7B: STA.b $2F\n\n #_029C7D: ASL A\n #_029C7E: STA.b $26\n\n #_029C80: INC.b $16\n #_029C82: INC.b $11\n\n #_029C84: LDA.b #$10\n #_029C86: STA.b $B0\n\n #_029C88: INC.w $02E4\n\n; ---------------------------------------------------------\n\n.reset_subsub\n #_029C8B: STZ.w $0200\n\n #_029C8E: JSL RefillLogic_long\n\n #_029C92: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_StartVictorySpin", + "code": "Underworld_StartVictorySpin:\n #_029C93: DEC.b $B0\n #_029C95: BNE .exit\n\n #_029C97: STZ.w $02E4\n\n #_029C9A: LDA.b #$02\n #_029C9C: STA.b $2F\n\n #_029C9E: JSL Link_AnimateVictorySpin_long\n #_029CA2: JSL Ancilla_TerminateSelectInteractives\n #_029CA6: JSL AncillaAdd_VictorySpin\n\n #_029CAA: INC.b $11\n\n.exit\n #_029CAC: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_RunVictorySpin", + "code": "Underworld_RunVictorySpin:\n #_029CAD: JSL Link_Main\n\n #_029CB1: LDA.b $5D\n #_029CB3: CMP.b #$00 ; LINKSTATE 00\n #_029CB5: BNE .exit\n\n #_029CB7: LDA.l $7EF359\n #_029CBB: INC A\n #_029CBC: AND.b #$FE\n #_029CBE: BEQ .skip_sfx\n\n #_029CC0: LDA.b #$2C ; SFX2.2C\n #_029CC2: STA.w $012E\n\n.skip_sfx\n #_029CC5: LDA.b #$01\n #_029CC7: STA.w $03EF\n\n #_029CCA: LDA.b #$20\n #_029CCC: STA.b $B0\n\n #_029CCE: INC.b $11\n\n.exit\n #_029CD0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_CloseVictorySpin", + "code": "Underworld_CloseVictorySpin:\n #_029CD1: DEC.b $B0\n #_029CD3: BNE .exit\n\n #_029CD5: INC.b $11\n\n #_029CD7: STZ.b $30\n #_029CD9: STZ.b $31\n\n #_029CDB: LDA.b #$00\n #_029CDD: STA.l $7EC017\n\n.exit\n #_029CE1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_MirrorWarpFromAga", + "code": "Module15_MirrorWarpFromAga:\n #_029CFC: LDA.b $11\n #_029CFE: ASL A\n #_029CFF: TAX\n\n #_029D00: JSR (.submodules,X)\n\n #_029D03: LDA.b $11\n #_029D05: CMP.b #$02\n #_029D07: BCC .draw_link\n\n #_029D09: CMP.b #$05\n #_029D0B: BCC .exit\n\n.draw_link\n #_029D0D: JSL Sprite_Main\n #_029D11: JSL LinkOAM_Main\n\n.exit\n #_029D15: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module15_00_Initialize", + "code": "Module15_00_Initialize:\n #_029D16: STZ.w $0710\n\n #_029D19: INC.w $0200\n #_029D1C: INC.b $11\n\n #_029D1E: JSR LoadOWMusicIfNeeded\n\n #_029D21: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_01_SetTheScene", + "code": "Module15_01_SetTheScene:\n #_029D22: LDA.b #$08 ; SONG 08\n #_029D24: STA.w $012C\n #_029D27: STA.w $0410\n\n #_029D2A: JSL InitializeMirrorHDMA\n\n #_029D2E: STZ.w $0200\n\n #_029D31: JSL PaletteFilter_InitializeWhiteFilter\n\n #_029D35: JSR Overworld_LoadGFXAndScreenSize\n\n #_029D38: INC.b $11\n\n #_029D3A: LDA.b #$14 ; LINKSTATE 14\n #_029D3C: STA.b $5D\n\n #_029D3E: REP #$20\n\n #_029D40: STZ.w $011A\n #_029D43: STZ.w $011C\n\n #_029D46: STZ.w $0402\n #_029D49: STZ.b $30\n\n #_029D4B: LDA.w #$7FFF ; RGB: #F8F8F8\n #_029D4E: STA.l $7EC500\n #_029D52: STA.l $7EC540\n\n #_029D56: SEP #$20\n\n #_029D58: JSL ResetAncillaAndLink\n\n #_029D5C: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_05", + "code": "Module15_05:\n #_029D5D: REP #$30\n\n #_029D5F: LDA.w #$2641\n #_029D62: STA.w DMA7MODE\n\n #_029D65: LDX.w #$003E\n\n #_029D68: LDA.w #$FF00\n\n; ---------------------------------------------------------\n\n.next\n #_029D6B: STA.w $1B00,X\n #_029D6E: STA.w $1B40,X\n #_029D71: STA.w $1B80,X\n #_029D74: STA.w $1BC0,X\n\n #_029D77: STA.w $1C00,X\n #_029D7A: STA.w $1C40,X\n #_029D7D: STA.w $1C80,X\n\n #_029D80: DEX\n #_029D81: DEX\n #_029D82: BPL .next\n\n; ---------------------------------------------------------\n\n #_029D84: LDA.w #$0000\n #_029D87: STA.l $7EC007\n #_029D8B: STA.l $7EC009\n\n #_029D8F: SEP #$20\n\n #_029D91: LDX.w #$0035 ; MESSAGE 0035\n #_029D94: STX.w $1CF0\n\n #_029D97: SEP #$10\n\n #_029D99: JSL Interface_PrepAndDisplayMessage\n\n #_029D9D: JSL ReloadPreviouslyLoadedSheets\n #_029DA1: JSL RebuildHUD_ZeroKeys\n\n #_029DA5: LDA.b #$80\n #_029DA7: STA.b $9B\n\n #_029DA9: LDA.b #$15\n #_029DAB: STA.b $10\n\n #_029DAD: LDA.b #$06\n #_029DAF: STA.b $11\n\n #_029DB1: LDA.b #$18\n #_029DB3: STA.b $B0\n\n #_029DB5: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_06", + "code": "Module15_06:\n #_029DB6: DEC.b $B0\n #_029DB8: BNE .exit\n\n #_029DBA: INC.b $11\n\n #_029DBC: LDA.b #$09 ; SFX1.09\n #_029DBE: STA.w $012D\n\n.exit\n #_029DC1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_07", + "code": "Module15_07:\n #_029DC2: JSL RenderText\n\n #_029DC6: LDA.b $11\n #_029DC8: BNE .exit\n\n #_029DCA: STZ.w $0200\n\n #_029DCD: LDA.b #$05 ; SFX1.05\n #_029DCF: STA.w $012D\n\n #_029DD2: LDX.b #$09\n\n #_029DD4: LDA.l $7EF357\n #_029DD8: BNE .set_submodule\n\n; ---------------------------------------------------------\n\n #_029DDA: REP #$20\n\n #_029DDC: LDA.w #$0036 ; MESSAGE 0036\n #_029DDF: STA.w $1CF0\n\n #_029DE2: SEP #$20\n\n #_029DE4: JSL Interface_PrepAndDisplayMessage\n\n #_029DE8: STZ.w $012D\n\n #_029DEB: LDA.b #$15\n #_029DED: STA.b $10\n\n #_029DEF: LDX.b #$09\n #_029DF1: DEX\n\n; ---------------------------------------------------------\n\n.set_submodule\n #_029DF2: STX.b $11\n\n.exit\n #_029DF4: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_08", + "code": "Module15_08:\n #_029DF5: JSL RenderText\n\n #_029DF9: LDA.b $11\n #_029DFB: BNE .exit\n\n #_029DFD: LDA.b #$20\n #_029DFF: STA.b $B0\n\n #_029E01: LDX.b #$0C\n #_029E03: STX.b $11\n\n.exit\n #_029E05: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_02_RunMirrorWarp_Part1", + "code": "Module15_02_RunMirrorWarp_Part1:\n #_029E06: JSL MirrorWarp_BuildAndEnableHDMATable\n\n #_029E0A: INC.b $11\n #_029E0C: STZ.b $B0\n\n #_029E0E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_03_RunMirrorWarp_Part2", + "code": "Module15_03_RunMirrorWarp_Part2:\n #_029E0F: JSL MirrorWarp_BuildWavingHDMATable\n\n #_029E13: BRA .check_subsub\n\n; =========================================================\n\n#Module15_04_RunMirrorWarp_Part3:\n #_029E15: JSL MirrorWarp_BuildDewavingHDMATable\n\n; ---------------------------------------------------------\n\n.check_subsub\n #_029E19: LDA.b $B0\n #_029E1B: BEQ .exit\n\n #_029E1D: STZ.b $B0\n\n #_029E1F: INC.b $11\n\n.exit\n #_029E21: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module15_0C", + "code": "Module15_0C:\n #_029E22: DEC.b $B0\n #_029E24: BNE .exit\n\n #_029E26: JSL ResetAncillaAndCutscene\n #_029E2A: JSL AdjustOverworldAmbiance\n\n #_029E2E: LDA.l $7EF29B\n #_029E32: ORA.b #$20\n #_029E34: STA.l $7EF29B\n\n #_029E38: LDA.b #$FF\n #_029E3A: STA.w $040C\n\n #_029E3D: STZ.b $11\n #_029E3F: STZ.w $0200\n\n #_029E42: STZ.w $0710\n\n #_029E45: LDA.b #$09\n #_029E47: STA.b $10\n\n #_029E49: STZ.b $E6\n\n #_029E4B: LDX.b #$09 ; SONG 09\n\n #_029E4D: LDA.l $7EF357\n #_029E51: BNE .have_pearl\n\n #_029E53: LDX.b #$04 ; SONG 04\n\n.have_pearl\n #_029E55: STX.w $012C\n\n #_029E58: LDA.b #$06\n #_029E5A: STA.l $7EF3C7\n\n.exit\n #_029E5E: RTS", + "file": "bank_02.asm" + }, + { + "name": "SetTargetOverworldWarpToPyramid", + "code": "SetTargetOverworldWarpToPyramid:\n #_029E5F: LDA.b $10\n #_029E61: CMP.b #$15\n #_029E63: BNE .exit\n\n #_029E65: JSR LoadOverworldFromUnderworld\n\n #_029E68: LDY.b #$5A\n #_029E6A: JSL DecompressAnimatedOverworldTiles\n\n; =========================================================\n\n#ResetAncillaAndCutscene:\n #_029E6E: JSL Ancilla_TerminateSelectInteractives\n\n #_029E72: STZ.w $037B\n\n #_029E75: STZ.b $3C\n #_029E77: STZ.b $3A\n\n #_029E79: STZ.w $03EF\n #_029E7C: STZ.w $02E4\n\n.exit\n #_029E7F: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module16_BossVictory_Crystal", + "code": "Module16_BossVictory_Crystal:\n #_029E8A: LDA.b $11\n #_029E8C: ASL A\n #_029E8D: TAX\n\n #_029E8E: JSR (.submodules,X)\n\n #_029E91: JSL Sprite_Main\n #_029E95: JML LinkOAM_Main\n\n; =========================================================\n\n#EXIT_029E99:\n #_029E99: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module16_04_FadeAndEnd", + "code": "Module16_04_FadeAndEnd:\n #_029E9A: DEC.b $13\n #_029E9C: BNE EXIT_029E99\n\n #_029E9E: REP #$20\n\n #_029EA0: STZ.w $011A\n #_029EA3: STZ.w $011C\n\n #_029EA6: STZ.b $30\n\n #_029EA8: SEP #$20\n\n #_029EAA: STZ.w $02E4\n\n #_029EAD: JSL Palette_RevertTranslucencySwap\n\n #_029EB1: LDA.b #$00 ; LINKSTATE 00\n #_029EB3: STA.b $5D\n\n #_029EB5: STZ.w $02D8\n #_029EB8: STZ.w $02DA\n #_029EBB: STZ.w $037B\n\n #_029EBE: LDA.w $010C\n #_029EC1: STA.b $10\n\n #_029EC3: STZ.b $11\n #_029EC5: STZ.b $B0\n\n #_029EC7: JMP.w Spotlight_ConfigureTableAndControl_dont_restore_y_coord\n\n; =========================================================\n\npool Module18_GanonEmerges\n\n.submodules\n #_029ECA: dw Module18_00 ; 0x00\n #_029ECC: dw Module18_01 ; 0x01\n #_029ECE: dw Module18_02 ; 0x02\n #_029ED0: dw Module18_03 ; 0x03\n #_029ED2: dw Module18_04 ; 0x04\n #_029ED4: dw Module18_05 ; 0x05\n #_029ED6: dw EXIT_029FC0 ; 0x06\n #_029ED8: dw Module18_07 ; 0x07\n #_029EDA: dw Module18_08 ; 0x08\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "Module18_GanonEmerges", + "code": "Module18_GanonEmerges:\n #_029EDC: REP #$21\n\n #_029EDE: LDA.b $E2\n #_029EE0: PHA\n\n #_029EE1: ADC.w $011A\n #_029EE4: STA.b $E2\n #_029EE6: STA.w $011E\n\n #_029EE9: LDA.b $E8\n #_029EEB: PHA\n\n #_029EEC: CLC\n #_029EED: ADC.w $011C\n #_029EF0: STA.b $E8\n #_029EF2: STA.w $0122\n\n #_029EF5: LDA.b $E0\n #_029EF7: PHA\n\n #_029EF8: CLC\n #_029EF9: ADC.w $011A\n #_029EFC: STA.b $E0\n #_029EFE: STA.w $0120\n\n #_029F01: LDA.b $E6\n #_029F03: PHA\n\n #_029F04: CLC\n #_029F05: ADC.w $011C\n #_029F08: STA.b $E6\n #_029F0A: STA.w $0124\n\n; ---------------------------------------------------------\n\n #_029F0D: SEP #$20\n\n #_029F0F: JSL Sprite_Main\n\n #_029F13: REP #$20\n\n; ---------------------------------------------------------\n\n #_029F15: PLA\n #_029F16: STA.b $E6\n\n #_029F18: PLA\n #_029F19: STA.b $E0\n\n #_029F1B: PLA\n #_029F1C: STA.b $E8\n\n #_029F1E: PLA\n #_029F1F: STA.b $E2\n\n; ---------------------------------------------------------\n\n #_029F21: SEP #$20\n\n #_029F23: LDA.w $0200\n #_029F26: ASL A\n #_029F27: TAX\n\n #_029F28: JSR (.submodules,X)\n #_029F2B: JML LinkOAM_Main\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module18_00", + "code": "Module18_00:\n #_029F2F: JSL Underworld_HandleLayerEffect\n #_029F33: JSL CallForDuckIndoors\n #_029F37: JSL SaveDungeonKeys\n\n #_029F3B: INC.w $0200\n #_029F3E: INC.w $02E4\n\n #_029F41: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_01", + "code": "Module18_01:\n #_029F42: JSL Underworld_HandleLayerEffect\n\n #_029F46: LDA.b $11\n #_029F48: CMP.b #$0A\n #_029F4A: BNE .exit\n\n #_029F4C: LDA.b #$5B\n #_029F4E: STA.b $8A\n\n #_029F50: STZ.b $1B\n\n #_029F52: LDA.b #$18\n #_029F54: STA.b $10\n #_029F56: STZ.b $11\n\n #_029F58: LDA.b #$02\n #_029F5A: STA.w $0200\n\n.exit\n #_029F5D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_02", + "code": "Module18_02:\n #_029F5E: JSL Underworld_HandleLayerEffect\n\n #_029F62: DEC.b $13\n #_029F64: BNE .exit\n\n #_029F66: JSL EnableForceBlank\n\n #_029F6A: INC.w $0200\n\n #_029F6D: JSL RebuildHUD_ZeroKeys\n\n #_029F71: STZ.b $30\n #_029F73: STZ.b $31\n\n.exit\n #_029F75: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_03", + "code": "Module18_03:\n #_029F76: LDA.b #$08\n #_029F78: STA.w $1AF0\n #_029F7B: STZ.w $1AF1\n\n #_029F7E: JSL FluteMenu_LoadSelectedScreen\n\n #_029F82: JSR LoadOWMusicIfNeeded\n\n #_029F85: LDA.b #$09 ; SONG 09\n #_029F87: STA.w $012C\n\n #_029F8A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_04", + "code": "Module18_04:\n #_029F8B: JSL Overworld_LoadOverlayAndMap\n\n #_029F8F: LDA.b #$00\n #_029F91: STA.b $B0\n\n #_029F93: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_05", + "code": "Module18_05:\n #_029F94: INC.b $13\n\n #_029F96: LDA.b $13\n #_029F98: CMP.b #$0F\n #_029F9A: BNE EXIT_029FC0\n\n #_029F9C: STZ.w $0402\n #_029F9F: STZ.w $0403\n\n #_029FA2: STZ.w $0FC1\n\n #_029FA5: JSL Sprite_SpawnBatCrashCutscene\n\n #_029FA9: LDA.b #$02\n #_029FAB: STA.b $2F\n\n #_029FAD: LDA.b #$09\n #_029FAF: STA.w $010C\n\n #_029FB2: STZ.b $1B\n\n #_029FB4: INC.w $0200\n\n #_029FB7: LDA.b #$80\n #_029FB9: STA.b $B0\n\n #_029FBB: LDA.b #$FF\n #_029FBD: STA.w $040C\n\n; ---------------------------------------------------------\n\n#EXIT_029FC0:\n #_029FC0: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_07", + "code": "Module18_07:\n #_029FC1: DEC.b $B0\n #_029FC3: BNE EXIT_029FC0\n\n #_029FC5: INC.w $0200\n\n #_029FC8: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module18_08", + "code": "Module18_08:\n #_029FC9: JSL SpawnLandingDuck\n\n #_029FCD: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_TriforceRoom", + "code": "Module19_TriforceRoom:\n #_029FEC: LDA.b $B0\n #_029FEE: ASL A\n #_029FEF: TAX\n\n #_029FF0: JSR (.submodules,X)\n\n; ---------------------------------------------------------\n\n #_029FF3: REP #$20\n\n #_029FF5: LDA.b $E0\n #_029FF7: STA.w $0120\n\n #_029FFA: LDA.b $E6\n #_029FFC: STA.w $0124\n\n #_029FFF: LDA.b $E2\n #_02A001: STA.w $011E\n\n #_02A004: LDA.b $E8\n #_02A006: STA.w $0122\n\n; ---------------------------------------------------------\n\n #_02A009: SEP #$20\n\n #_02A00B: LDA.b $B0\n #_02A00D: CMP.b #$07\n #_02A00F: BCC .move_link\n\n #_02A011: CMP.b #$0B\n #_02A013: BCC .dont_move_link\n\n.move_link\n #_02A015: JSL Link_HandleVelocity\n #_02A019: JSL Link_HandleMovingAnimation_FullLongEntry\n\n.dont_move_link\n #_02A01D: JML LinkOAM_Main\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module19_00_ResetAndInit", + "code": "Module19_00_ResetAndInit:\n #_02A021: JSL Link_ResetProperties_A\n\n #_02A025: STZ.b $66\n\n #_02A027: LDA.b #$F1 ; SONG F1 - fade\n #_02A029: STA.w $012C\n\n #_02A02C: JMP.w ResetTransitionPropsAndAdvance_ResetInterface\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module19_01_MosaicAndPalette", + "code": "Module19_01_MosaicAndPalette:\n #_02A02F: JSR ConditionalMosaicControl\n\n #_02A032: JMP.w ApplyPaletteFilter_bounce\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module19_02_LoadMusicAndScreen", + "code": "Module19_02_LoadMusicAndScreen:\n #_02A035: JSL EnableForceBlank\n\n #_02A039: SEI\n\n #_02A03A: STZ.w NMITIMEN\n\n #_02A03D: LDA.b #$FF ; SONG FF - transfer\n #_02A03F: STA.w APUIO0\n\n #_02A042: JSL LoadCreditsSongs\n\n #_02A046: LDA.b #$81\n #_02A048: STA.w NMITIMEN\n\n #_02A04B: LDA.b #$89\n #_02A04D: STA.b $A0\n\n #_02A04F: LDA.b #$01\n #_02A051: STA.b $A1\n\n #_02A053: JSL EraseTilemaps_normal\n #_02A057: JSL Palette_RevertTranslucencySwap\n #_02A05B: JSR LoadSpecialOverworld\n\n #_02A05E: JSR Overworld_ReloadSubscreenOverlay\n\n #_02A061: INC.b $B0\n\n #_02A063: BRA RefreshTriforceModule\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module19_03_PrepTileSetsPalette", + "code": "Module19_03_PrepTileSetsPalette:\n #_02A065: LDA.b #$24\n #_02A067: STA.w $0AA1\n\n #_02A06A: LDA.b #$7D\n #_02A06C: STA.w $0AA3\n\n #_02A06F: LDA.b #$51\n #_02A071: STA.w $0AA2\n\n #_02A074: JSL InitializeTilesets\n\n #_02A078: LDX.b #$04\n #_02A07A: JSR OverworldLoadScreensPaletteSet_Preloaded\n\n #_02A07D: LDA.b #$0E\n #_02A07F: JSL OverworldPalettesLoader\n #_02A083: JSR SpecialOverworld_CopyPalettesToCache\n\n #_02A086: INC.b $B0\n\n #_02A088: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_04_LoadAndSongAndAdvance", + "code": "Module19_04_LoadAndSongAndAdvance:\n #_02A089: LDA.b $B0\n #_02A08B: PHA\n\n #_02A08C: JSR Module08_02_LoadAndAdvance\n\n #_02A08F: PLA\n #_02A090: INC A\n #_02A091: STA.b $B0\n\n; ---------------------------------------------------------\n\n #_02A093: LDA.b #$0F\n #_02A095: STA.b $13\n\n #_02A097: LDA.b #$1F\n #_02A099: STA.l $7EC007\n\n #_02A09D: LDA.b #$00\n #_02A09F: STA.l $7EC00B\n\n #_02A0A3: LDA.b #$01\n #_02A0A5: STA.b $E1\n\n #_02A0A7: LDA.b #$02\n #_02A0A9: STA.b $99\n\n #_02A0AB: LDA.b #$32\n #_02A0AD: STA.b $9A\n\n #_02A0AF: LDA.b #$F0\n #_02A0B1: STA.l $7EC011\n\n #_02A0B5: LDA.b #$EC\n #_02A0B7: STA.b $20\n\n #_02A0B9: LDA.b #$78\n #_02A0BB: STA.b $22\n\n #_02A0BD: LDA.b #$02\n #_02A0BF: STA.b $EE\n\n #_02A0C1: LDA.b #$20 ; SONG 20\n #_02A0C3: STA.w $012C\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "RefreshTriforceModule", + "code": "RefreshTriforceModule:\n #_02A0C6: LDA.b #$19\n #_02A0C8: STA.b $10\n\n #_02A0CA: STZ.b $11\n\n #_02A0CC: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_05_WalkLinkIn", + "code": "Module19_05_WalkLinkIn:\n #_02A0CD: LDA.b #$08\n #_02A0CF: STA.b $67\n #_02A0D1: STA.b $26\n\n #_02A0D3: STZ.b $2F\n\n #_02A0D5: LDA.b $20\n #_02A0D7: CMP.b #$C0\n #_02A0D9: BCS .exit\n\n #_02A0DB: STZ.b $67\n #_02A0DD: STZ.b $26\n #_02A0DF: STZ.b $2E\n\n #_02A0E1: INC.b $B0\n\n.exit\n #_02A0E3: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_06_MosaicFadeIn", + "code": "Module19_06_MosaicFadeIn:\n #_02A0E4: LDA.l $7EC007\n #_02A0E8: LSR A\n #_02A0E9: BCS .continue\n\n #_02A0EB: LDA.l $7EC011\n #_02A0EF: BEQ .continue\n\n #_02A0F1: SEC\n #_02A0F2: SBC.b #$10\n #_02A0F4: STA.l $7EC011\n\n.continue\n #_02A0F8: JSR CopyMosaicControl\n #_02A0FB: JSL ApplyPaletteFilter\n\n #_02A0FF: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_07_PrepMessage", + "code": "Module19_07_PrepMessage:\n #_02A100: JSL TriforceRoom_PrepGFXSlotForPoly\n\n #_02A104: REP #$20\n\n #_02A106: LDA.w #$0173 ; MESSAGE 0173\n #_02A109: STA.w $1CF0\n\n #_02A10C: SEP #$20\n\n #_02A10E: JSL Interface_PrepAndDisplayMessage\n\n #_02A112: JSL RenderText\n\n #_02A116: LDA.b #$80\n #_02A118: STA.b $C8\n\n #_02A11A: LDA.b #$19\n #_02A11C: STA.b $10\n\n #_02A11E: INC.b $B0\n\n #_02A120: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_09_TriforceSpeak", + "code": "Module19_09_TriforceSpeak:\n #_02A121: JSL AdvancePolyhedral\n #_02A125: JSL RenderText\n\n #_02A129: LDA.b $11\n #_02A12B: BNE .exit\n\n #_02A12D: STZ.w $0200\n\n #_02A130: LDA.b #$19\n #_02A132: STA.b $10\n\n #_02A134: INC.b $B0\n\n.exit\n #_02A136: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_TriforceExpansionControl", + "code": "Module19_TriforceExpansionControl:\n #_02A137: JSL AdvancePolyhedral\n\n #_02A13B: LDA.b $B0\n #_02A13D: CMP.b #$0B\n #_02A13F: BNE .exit\n\n #_02A141: LDA.b #$21 ; SONG 21\n #_02A143: STA.w $012C\n\n #_02A146: LDA.b #$19\n #_02A148: STA.b $10\n\n #_02A14A: STZ.b $67\n #_02A14C: STZ.b $26\n\n #_02A14E: INC.b $11\n\n.exit\n #_02A150: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_0B_ApproachTriforce", + "code": "Module19_0B_ApproachTriforce:\n #_02A151: JSL AdvancePolyhedral\n #_02A155: JSL TriforceRoom_LinkApproachTriforce\n\n #_02A159: LDA.b $B0\n #_02A15B: CMP.b #$0C\n #_02A15D: BNE .exit\n\n #_02A15F: STZ.b $67\n #_02A161: STZ.b $26\n\n.exit\n #_02A163: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_0C_HoldTriforce", + "code": "Module19_0C_HoldTriforce:\n #_02A164: JSL AdvancePolyhedral\n\n #_02A168: DEC.b $C8\n #_02A16A: BNE .exit\n\n #_02A16C: JSL PaletteBlackAndWhiteSomething\n\n #_02A170: INC.b $11\n\n.exit\n #_02A172: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_0D_FadeToWhite", + "code": "Module19_0D_FadeToWhite:\n #_02A173: JSL AdvancePolyhedral\n #_02A177: JSL PaletteFilter_BlindingWhiteTriforce\n\n #_02A17B: LDA.l $7EC009\n #_02A17F: CMP.b #$FF\n #_02A181: BNE .exit\n\n #_02A183: INC.b $B0\n\n.exit\n #_02A185: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module19_0E_AdvanceToCredits", + "code": "Module19_0E_AdvanceToCredits:\n #_02A186: DEC.b $13\n #_02A188: BNE .exit\n\n #_02A18A: LDA.b #$1A\n #_02A18C: STA.b $10\n\n #_02A18E: STZ.b $11\n #_02A190: STZ.b $B0\n\n #_02A192: LDA.b #$FF\n #_02A194: STA.w $0128\n\n #_02A197: STZ.w $012A\n #_02A19A: STZ.w $1F0C\n\n #_02A19D: LDA.b #$00\n #_02A19F: STA.l $7EF3CA\n\n.exit\n #_02A1A3: RTS", + "file": "bank_02.asm" + }, + { + "name": "RoomTagPrizeChecks", + "code": "RoomTagPrizeChecks:\n #_02A1A4: db $00 ; Sewers\n #_02A1A5: db $00 ; Hyrule Castle\n #_02A1A6: db $04 ; Eastern Palace\n #_02A1A7: db $02 ; Desert Palace\n #_02A1A8: db $00 ; Agahnim's Tower\n #_02A1A9: db $10 ; Swamp Palace\n #_02A1AA: db $02 ; Palace of Darkness\n #_02A1AB: db $01 ; Misery Mire\n #_02A1AC: db $40 ; Skull Woods\n #_02A1AD: db $04 ; Ice Palace\n #_02A1AE: db $01 ; Tower of Hera\n #_02A1AF: db $20 ; Thieves' Town\n #_02A1B0: db $08 ; Turtle Rock\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Mirror_SaveRoomData", + "code": "Mirror_SaveRoomData:\n #_02A1B1: LDA.w $040C\n #_02A1B4: CMP.b #$FF ; DUNGEON FF\n #_02A1B6: BEQ .play_beep\n\n #_02A1B8: LDA.b #$19\n #_02A1BA: STA.b $11\n #_02A1BC: STZ.b $B0\n\n #_02A1BE: LDA.b #$33 ; SFX2.33\n #_02A1C0: STA.w $012E\n\n #_02A1C3: JSL Underworld_FlagRoomData_Quadrants\n\n; =========================================================\n\n#SaveDungeonKeys:\n #_02A1C7: LDA.w $040C\n #_02A1CA: CMP.b #$FF ; DUNGEON FF\n #_02A1CC: BEQ .exit\n\n #_02A1CE: CMP.b #$02 ; DUNGEON 02\n #_02A1D0: BNE .not_castle\n\n #_02A1D2: LDA.b #$00 ; DUNGEON 00\n\n.not_castle\n #_02A1D4: LSR A\n #_02A1D5: TAX\n\n #_02A1D6: LDA.l $7EF36F\n #_02A1DA: STA.l $7EF37C,X\n\n.exit\n #_02A1DE: RTL", + "file": "bank_02.asm" + }, + { + "name": "RoomEffectFixedColors", + "code": "RoomEffectFixedColors:\n #_02A1E5: db $1F, $08, $04, $00\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_HandleTranslucencyAndPalettes", + "code": "Underworld_HandleTranslucencyAndPalettes:\n #_02A1E9: LDA.w $0ABD\n #_02A1EC: BEQ .dont_undo_translucency\n\n #_02A1EE: JSL Palette_RevertTranslucencySwap\n\n.dont_undo_translucency\n #_02A1F2: LDA.b #$02\n #_02A1F4: STA.b $99\n\n #_02A1F6: LDA.b #$B3\n #_02A1F8: STA.b $9A\n\n #_02A1FA: LDX.w $045A\n\n #_02A1FD: LDA.l $7EC005\n #_02A201: BNE .lights_out\n\n; ---------------------------------------------------------\n\n #_02A203: LDA.b #$20\n #_02A205: LDX.b #$03\n #_02A207: LDY.w $0414\n #_02A20A: BEQ .no_translucency\n\n #_02A20C: LDA.b #$32\n #_02A20E: CPY.b #$07\n #_02A210: BEQ .no_translucency\n\n #_02A212: LDA.b #$62\n #_02A214: CPY.b #$04\n #_02A216: BEQ .no_translucency\n\n #_02A218: LDA.b #$20\n #_02A21A: CPY.b #$02\n #_02A21C: BNE .no_translucency\n\n; ---------------------------------------------------------\n\n #_02A21E: PHX\n\n #_02A21F: JSL Palette_AssertTranslucencySwap\n\n #_02A223: PLX\n\n #_02A224: LDA.b $A0\n #_02A226: CMP.b #$0D ; ROOM 000D\n #_02A228: BNE .not_aga_2\n\n #_02A22A: REP #$20\n\n #_02A22C: LDA.w #$0000\n #_02A22F: STA.l $7EC019\n #_02A233: STA.l $7EC01B\n #_02A237: STA.l $7EC01D\n #_02A23B: STA.l $7EC01F\n #_02A23F: STA.l $7EC021\n #_02A243: STA.l $7EC023\n\n #_02A247: SEP #$20\n\n #_02A249: JSL Palettes_LoadAgahnim\n\n.not_aga_2\n #_02A24D: LDA.b #$70\n\n; ---------------------------------------------------------\n\n.no_translucency\n #_02A24F: STA.b $9A\n\n.lights_out\n #_02A251: LDA.l RoomEffectFixedColors,X\n #_02A255: STA.l $7EC017\n\n #_02A259: LDA.b #$1F\n #_02A25B: STA.l $7EC007\n\n #_02A25F: LDA.b #$00\n #_02A261: STA.l $7EC00B\n\n #_02A265: LDA.b #$02\n #_02A267: STA.l $7EC009\n\n #_02A26B: STZ.w $0AA9\n\n #_02A26E: JSL Palettes_Load_UnderworldSet\n #_02A272: JSL Palettes_Load_SpritePal0Left\n #_02A276: JSL Palettes_Load_SpriteAux1\n #_02A27A: JSL Palettes_Load_SpriteAux2\n\n #_02A27E: INC.b $B0\n\n #_02A280: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnusedInterfacePaletteRecovery", + "code": "UnusedInterfacePaletteRecovery:\n #_02A281: JSL ApplyPaletteFilter\n\n #_02A285: LDA.l $7EC007\n #_02A289: BNE .exit\n\n #_02A28B: LDA.b #$00\n #_02A28D: STA.l $7EC005\n\n #_02A291: LDA.w $010C\n #_02A294: STA.b $10\n\n #_02A296: STZ.b $B0\n #_02A298: STZ.b $11\n\n.exit\n #_02A29A: RTS", + "file": "bank_02.asm" + }, + { + "name": "PaletteFilter_bounce", + "code": "PaletteFilter_bounce:\n #_02A29B: JSL PaletteFilter\n\n #_02A29F: RTS", + "file": "bank_02.asm" + }, + { + "name": "ApplyPaletteFilter_bounce", + "code": "ApplyPaletteFilter_bounce:\n #_02A2A0: JSL ApplyPaletteFilter\n\n #_02A2A4: RTS", + "file": "bank_02.asm" + }, + { + "name": "ResetTransitionPropsAndAdvance_ResetInterface_long", + "code": "ResetTransitionPropsAndAdvance_ResetInterface_long:\n #_02A2A5: JSR ResetTransitionPropsAndAdvance_ResetInterface\n\n #_02A2A8: RTL", + "file": "bank_02.asm" + }, + { + "name": "Underworld_HandleTranslucencyAndPalettes_long", + "code": "Underworld_HandleTranslucencyAndPalettes_long:\n #_02A2A9: JSR Underworld_HandleTranslucencyAndPalettes\n\n #_02A2AC: RTL", + "file": "bank_02.asm" + }, + { + "name": "UnusedInterfacePaletteRecovery_long", + "code": "UnusedInterfacePaletteRecovery_long:\n #_02A2AD: JSR UnusedInterfacePaletteRecovery\n\n #_02A2B0: RTL", + "file": "bank_02.asm" + }, + { + "name": "UNREACHABLE_02A2B1", + "code": "UNREACHABLE_02A2B1:\n #_02A2B1: LDA.b $A0\n #_02A2B3: AND.b #$F0\n #_02A2B5: STA.b $00\n\n #_02A2B7: LDA.b $21\n #_02A2B9: AND.b #$0F\n #_02A2BB: ORA.b $00\n #_02A2BD: STA.b $21\n\n #_02A2BF: LDA.b $E9\n #_02A2C1: AND.b #$0F\n #_02A2C3: ORA.b $00\n #_02A2C5: STA.b $E9\n\n #_02A2C7: LDA.w $0605\n #_02A2CA: AND.b #$0F\n #_02A2CC: ORA.b $00\n #_02A2CE: STA.w $0605\n\n #_02A2D1: LDA.w $0607\n #_02A2D4: AND.b #$0F\n #_02A2D6: ORA.b $00\n #_02A2D8: STA.w $0607\n\n #_02A2DB: LDA.w $0601\n #_02A2DE: AND.b #$0F\n #_02A2E0: ORA.b $00\n #_02A2E2: STA.w $0601\n\n #_02A2E5: LDA.w $0603\n #_02A2E8: AND.b #$0F\n #_02A2EA: ORA.b $00\n #_02A2EC: STA.w $0603\n\n #_02A2EF: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdjustCameraArbitrary", + "code": "Underworld_AdjustCameraArbitrary:\n #_02A2F0: LDA.b $A2\n #_02A2F2: AND.b #$0F\n #_02A2F4: STA.b $00\n\n #_02A2F6: LDA.b $A0\n #_02A2F8: AND.b #$0F\n #_02A2FA: SEC\n #_02A2FB: SBC.b $00\n\n #_02A2FD: ASL A\n #_02A2FE: STA.b $00\n\n #_02A300: LDA.b $23\n #_02A302: CLC\n #_02A303: ADC.b $00\n #_02A305: STA.b $23\n\n #_02A307: LDA.b $E3\n #_02A309: CLC\n #_02A30A: ADC.b $00\n #_02A30C: STA.b $E3\n\n; ---------------------------------------------------------\n\n #_02A30E: LDA.w $060D\n #_02A311: CLC\n #_02A312: ADC.b $00\n #_02A314: STA.w $060D\n\n #_02A317: LDA.w $060F\n #_02A31A: CLC\n #_02A31B: ADC.b $00\n #_02A31D: STA.w $060F\n\n #_02A320: LDA.w $0609\n #_02A323: CLC\n #_02A324: ADC.b $00\n #_02A326: STA.w $0609\n\n #_02A329: LDA.w $060B\n #_02A32C: CLC\n #_02A32D: ADC.b $00\n #_02A32F: STA.w $060B\n\n; ---------------------------------------------------------\n\n #_02A332: LDA.b $A2\n #_02A334: AND.b #$F0\n #_02A336: LSR A\n #_02A337: LSR A\n #_02A338: LSR A\n #_02A339: STA.b $00\n\n #_02A33B: LDA.b $A0\n #_02A33D: AND.b #$F0\n #_02A33F: LSR A\n #_02A340: LSR A\n #_02A341: LSR A\n #_02A342: STA.b $01\n\n #_02A344: SEC\n #_02A345: SBC.b $00\n #_02A347: STA.b $00\n\n; ---------------------------------------------------------\n\n #_02A349: LDA.b $21\n #_02A34B: CLC\n #_02A34C: ADC.b $00\n #_02A34E: STA.b $21\n\n #_02A350: LDA.b $E9\n #_02A352: CLC\n #_02A353: ADC.b $00\n #_02A355: STA.b $E9\n\n #_02A357: LDA.w $0605\n #_02A35A: CLC\n #_02A35B: ADC.b $00\n #_02A35D: STA.w $0605\n\n #_02A360: LDA.w $0607\n #_02A363: CLC\n #_02A364: ADC.b $00\n #_02A366: STA.w $0607\n\n #_02A369: LDA.w $0601\n #_02A36C: CLC\n #_02A36D: ADC.b $00\n #_02A36F: STA.w $0601\n\n #_02A372: LDA.w $0603\n #_02A375: CLC\n #_02A376: ADC.b $00\n #_02A378: STA.w $0603\n\n #_02A37B: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdjustForTeleportDoors", + "code": "Underworld_AdjustForTeleportDoors:\n #_02A37C: STY.b $00\n\n #_02A37E: STA.w $048E\n #_02A381: STA.b $A2\n\n #_02A383: LDA.b $A2\n #_02A385: AND.b #$0F\n #_02A387: ASL A\n\n #_02A388: SEC\n #_02A389: SBC.b $23\n\n #_02A38B: CLC\n #_02A38C: ADC.b $00\n #_02A38E: STA.b $00\n\n; ---------------------------------------------------------\n\n #_02A390: LDA.b $23\n #_02A392: CLC\n #_02A393: ADC.b $00\n #_02A395: STA.b $23\n\n #_02A397: LDA.b $E3\n #_02A399: CLC\n #_02A39A: ADC.b $00\n #_02A39C: STA.b $E3\n\n #_02A39E: LDA.w $060D\n #_02A3A1: CLC\n #_02A3A2: ADC.b $00\n #_02A3A4: STA.w $060D\n\n #_02A3A7: LDA.w $060F\n #_02A3AA: CLC\n #_02A3AB: ADC.b $00\n #_02A3AD: STA.w $060F\n\n #_02A3B0: LDA.w $0609\n #_02A3B3: CLC\n #_02A3B4: ADC.b $00\n #_02A3B6: STA.w $0609\n\n #_02A3B9: LDA.w $060B\n #_02A3BC: CLC\n #_02A3BD: ADC.b $00\n #_02A3BF: STA.w $060B\n\n; ---------------------------------------------------------\n\n #_02A3C2: LDA.b $A2\n #_02A3C4: AND.b #$F0\n\n #_02A3C6: LSR A\n #_02A3C7: LSR A\n #_02A3C8: LSR A\n\n #_02A3C9: SEC\n #_02A3CA: SBC.b $21\n #_02A3CC: STA.b $00\n\n; ---------------------------------------------------------\n\n #_02A3CE: LDA.b $21\n #_02A3D0: CLC\n #_02A3D1: ADC.b $00\n #_02A3D3: STA.b $21\n\n #_02A3D5: LDA.b $E9\n #_02A3D7: CLC\n #_02A3D8: ADC.b $00\n #_02A3DA: STA.b $E9\n\n #_02A3DC: LDA.w $0605\n #_02A3DF: CLC\n #_02A3E0: ADC.b $00\n #_02A3E2: STA.w $0605\n\n #_02A3E5: LDA.w $0607\n #_02A3E8: CLC\n #_02A3E9: ADC.b $00\n #_02A3EB: STA.w $0607\n\n #_02A3EE: LDA.w $0601\n #_02A3F1: CLC\n #_02A3F2: ADC.b $00\n #_02A3F4: STA.w $0601\n\n #_02A3F7: LDA.w $0603\n #_02A3FA: CLC\n #_02A3FB: ADC.b $00\n #_02A3FD: STA.w $0603\n\n; ---------------------------------------------------------\n\n #_02A400: LDY.b #$00\n\n.next\n #_02A402: LDA.b $21\n #_02A404: STA.w $1A14,Y\n\n #_02A407: INY\n #_02A408: CPY.b #$14\n #_02A40A: BNE .next\n\n #_02A40C: RTS", + "file": "bank_02.asm" + }, + { + "name": "OWOverlayHShift", + "code": "OWOverlayHShift:\n #_02A46D: db 1, 0, 1, 0\n", + "file": "bank_02.asm" + }, + { + "name": "OWOverlayVShift", + "code": "OWOverlayVShift:\n #_02A471: db 0, 17, 0, 17\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_Overworld", + "code": "Module09_Overworld:\n#Module0B_OverworldSpecial:\n #_02A475: SEP #$30\n\n #_02A477: LDA.b $11\n #_02A479: ASL A\n #_02A47A: TAX\n\n #_02A47B: JSR (.submodules,X)\n\n; ---------------------------------------------------------\n\n #_02A47E: REP #$21\n\n #_02A480: LDA.b $E2\n #_02A482: PHA\n #_02A483: ADC.w $011A\n #_02A486: STA.b $E2\n #_02A488: STA.w $011E\n\n #_02A48B: LDA.b $E8\n #_02A48D: PHA\n #_02A48E: CLC\n #_02A48F: ADC.w $011C\n #_02A492: STA.b $E8\n #_02A494: STA.w $0122\n\n #_02A497: LDA.b $E0\n #_02A499: PHA\n #_02A49A: CLC\n #_02A49B: ADC.w $011A\n #_02A49E: STA.b $E0\n #_02A4A0: STA.w $0120\n\n #_02A4A3: LDA.b $E6\n #_02A4A5: PHA\n #_02A4A6: CLC\n #_02A4A7: ADC.w $011C\n #_02A4AA: STA.b $E6\n #_02A4AC: STA.w $0124\n\n; ---------------------------------------------------------\n\n #_02A4AF: SEP #$20\n\n #_02A4B1: JSL Sprite_Main\n\n; ---------------------------------------------------------\n\n #_02A4B5: REP #$20\n\n #_02A4B7: PLA\n #_02A4B8: STA.b $E6\n\n #_02A4BA: PLA\n #_02A4BB: STA.b $E0\n\n #_02A4BD: PLA\n #_02A4BE: STA.b $E8\n\n #_02A4C0: PLA\n #_02A4C1: STA.b $E2\n\n; ---------------------------------------------------------\n\n #_02A4C3: SEP #$20\n\n #_02A4C5: JSL LinkOAM_Main\n #_02A4C9: JSL RefillLogic_long\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldOverlay_HandleRain", + "code": "OverworldOverlay_HandleRain:\n #_02A4CD: LDA.b $8A\n #_02A4CF: CMP.b #$70 ; OW 70\n #_02A4D1: BEQ .mire_screen\n\n #_02A4D3: LDA.l $7EF3C5\n #_02A4D7: CMP.b #$02\n #_02A4D9: BCS .exit\n\n; ---------------------------------------------------------\n\n.mire_screen\n #_02A4DB: LDA.l $7EF2F0\n #_02A4DF: AND.b #$20\n #_02A4E1: BNE .exit\n\n #_02A4E3: LDA.b $1A\n #_02A4E5: CMP.b #$03\n #_02A4E7: BEQ .flash\n\n #_02A4E9: CMP.b #$05\n #_02A4EB: BEQ .unflash\n\n #_02A4ED: CMP.b #$24\n #_02A4EF: BEQ .thunder\n\n #_02A4F1: CMP.b #$2C\n #_02A4F3: BEQ .unflash\n\n #_02A4F5: CMP.b #$58\n #_02A4F7: BEQ .flash\n\n #_02A4F9: CMP.b #$5A\n #_02A4FB: BNE .no_effect\n\n.unflash\n #_02A4FD: LDA.b #$72\n #_02A4FF: BRA .set_color_math\n\n.thunder\n #_02A501: LDX.b #$36 ; SFX2.36\n #_02A503: STX.w $012E\n\n.flash\n #_02A506: LDA.b #$32\n\n.set_color_math\n #_02A508: STA.b $9A\n\n; ---------------------------------------------------------\n\n.no_effect\n #_02A50A: LDA.b $1A\n #_02A50C: AND.b #$03\n #_02A50E: BNE .exit\n\n #_02A510: LDA.w $0494\n #_02A513: INC A\n #_02A514: AND.b #$03\n #_02A516: STA.w $0494\n\n #_02A519: TAX\n\n #_02A51A: LDA.b $E1\n #_02A51C: CLC\n #_02A51D: ADC.l OWOverlayHShift,X\n #_02A521: STA.b $E1\n\n #_02A523: LDA.b $E7\n #_02A525: CLC\n #_02A526: ADC.l OWOverlayVShift,X\n #_02A52A: STA.b $E7\n\n.exit\n #_02A52C: RTL", + "file": "bank_02.asm" + }, + { + "name": "UNREACHABLE_02A52D", + "code": "UNREACHABLE_02A52D:\n #_02A52D: db $08, $09, $02, $04, $02, $02, $02, $02\n #_02A535: db $02, $02, $02, $02, $02, $02, $02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_00_PlayerControl", + "code": "Module09_00_PlayerControl:\n #_02A53C: LDA.w $0112\n #_02A53F: ORA.w $02E4\n #_02A542: ORA.w $0FFC\n #_02A545: ORA.w $04C6\n #_02A548: BEQ .check_for_start\n\n #_02A54A: JMP.w .continue\n\n; ---------------------------------------------------------\n\n.check_for_start\n #_02A54D: LDA.b $F4\n #_02A54F: AND.b #$10\n #_02A551: BEQ .check_for_X\n\n #_02A553: STZ.w $0200\n\n #_02A556: LDA.b #$01\n #_02A558: BRA .set_new_module\n\n; ---------------------------------------------------------\n\n.check_for_X\n #_02A55A: LDA.b $F6\n #_02A55C: AND.b #$40\n #_02A55E: BEQ .check_for_select\n\n #_02A560: STZ.w $0200\n\n #_02A563: LDA.b #$07\n\n; ---------------------------------------------------------\n\n.set_new_module\n #_02A565: STA.b $11\n\n #_02A567: LDA.b $10\n #_02A569: STA.w $010C\n\n #_02A56C: LDA.b #$0E\n #_02A56E: STA.b $10\n\n #_02A570: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_ActualScreenID", + "code": "Overworld_ActualScreenID:\n #_02A5EC: db $00, $00, $02, $03, $03, $05, $05, $07\n #_02A5F4: db $00, $00, $0A, $03, $03, $05, $05, $0F\n #_02A5FC: db $10, $11, $12, $13, $14, $15, $16, $17\n #_02A604: db $18, $18, $1A, $1B, $1B, $1D, $1E, $1E\n #_02A60C: db $18, $18, $22, $1B, $1B, $25, $1E, $1E\n #_02A614: db $28, $29, $2A, $2B, $2C, $2D, $2E, $2F\n #_02A61C: db $30, $30, $32, $33, $34, $35, $35, $37\n #_02A624: db $30, $30, $3A, $3B, $3C, $35, $35, $3F\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenTilemapChange", + "code": "OverworldScreenTilemapChange:\n #_02A62C: dw $0F80\n #_02A62E: dw $0F80\n #_02A630: dw $003F\n #_02A632: dw $003F\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenTilemapChangeByScreen", + "code": "OverworldScreenTilemapChangeByScreen:\n #_02A634: dw $0060, $0060, $0060, $0060\n #_02A63C: dw $0060, $0060, $0060, $0060\n #_02A644: dw $0060, $0060, $0060, $1060\n #_02A64C: dw $1060, $1060, $1060, $0060\n #_02A654: dw $0060, $0060, $0060, $0060\n #_02A65C: dw $0060, $0060, $0060, $0060\n #_02A664: dw $0060, $0060, $0060, $0060\n #_02A66C: dw $0060, $0060, $0060, $0060\n #_02A674: dw $0060, $0060, $0060, $1060\n #_02A67C: dw $1060, $0060, $1060, $1060\n #_02A684: dw $0060, $0060, $0060, $0060\n #_02A68C: dw $0060, $0060, $0060, $0060\n #_02A694: dw $0060, $0060, $0060, $0060\n #_02A69C: dw $0060, $0060, $0060, $0060\n #_02A6A4: dw $0060, $0060, $0060, $0060\n #_02A6AC: dw $0060, $1060, $1060, $0060\n #_02A6B4: dw $0080, $0080, $0040, $0080\n #_02A6BC: dw $0080, $0080, $0080, $0040\n #_02A6C4: dw $1080, $1080, $0040, $1080\n #_02A6CC: dw $1080, $1080, $1080, $0040\n #_02A6D4: dw $0040, $0040, $0040, $0040\n #_02A6DC: dw $0040, $0040, $0040, $0040\n #_02A6E4: dw $0080, $0080, $0040, $0080\n #_02A6EC: dw $0080, $0040, $0080, $0080\n #_02A6F4: dw $1080, $1080, $0040, $1080\n #_02A6FC: dw $1080, $0040, $1080, $1080\n #_02A704: dw $0040, $0040, $0040, $0040\n #_02A70C: dw $0040, $0040, $0040, $0040\n #_02A714: dw $0080, $0080, $0040, $0040\n #_02A71C: dw $0040, $0080, $0080, $0040\n #_02A724: dw $1080, $1080, $0040, $0040\n #_02A72C: dw $0040, $1080, $1080, $0040\n #_02A734: dw $1800, $1840, $1800, $1800\n #_02A73C: dw $1840, $1800, $1840, $1800\n #_02A744: dw $1800, $1840, $1800, $1800\n #_02A74C: dw $1840, $1800, $1840, $1800\n #_02A754: dw $1800, $1800, $1800, $1800\n #_02A75C: dw $1800, $1800, $1800, $1800\n #_02A764: dw $1800, $1840, $1800, $1800\n #_02A76C: dw $1840, $1800, $1800, $1840\n #_02A774: dw $1800, $1840, $1800, $1800\n #_02A77C: dw $1840, $1800, $1800, $1840\n #_02A784: dw $1800, $1800, $1800, $1800\n #_02A78C: dw $1800, $1800, $1800, $1800\n #_02A794: dw $1800, $1840, $1800, $1800\n #_02A79C: dw $1800, $1800, $1840, $1800\n #_02A7A4: dw $1800, $1840, $1800, $1800\n #_02A7AC: dw $1800, $1800, $1840, $1800\n #_02A7B4: dw $2000, $2040, $1000, $2000\n #_02A7BC: dw $2040, $2000, $2040, $1000\n #_02A7C4: dw $2000, $2040, $1000, $2000\n #_02A7CC: dw $2040, $2000, $2040, $1000\n #_02A7D4: dw $1000, $1000, $1000, $1000\n #_02A7DC: dw $1000, $1000, $1000, $1000\n #_02A7E4: dw $2000, $2040, $1000, $2000\n #_02A7EC: dw $2040, $1000, $2000, $2040\n #_02A7F4: dw $2000, $2040, $1000, $2000\n #_02A7FC: dw $2040, $1000, $2000, $2040\n #_02A804: dw $1000, $1000, $1000, $1000\n #_02A80C: dw $1000, $1000, $1000, $1000\n #_02A814: dw $2000, $2040, $1000, $1000\n #_02A81C: dw $1000, $2000, $2040, $1000\n #_02A824: dw $2000, $2040, $1000, $1000\n #_02A82C: dw $1000, $2000, $2040, $1000\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenIDChange", + "code": "OverworldScreenIDChange:\n #_02A834: dw $0002 ; east\n #_02A836: dw $FFFE ; west\n #_02A838: dw $0010 ; south\n #_02A83A: dw $FFF0 ; north\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMixedCoordsChange", + "code": "OverworldMixedCoordsChange:\n #_02A83C: dw $FFF0\n #_02A83E: dw $0010\n #_02A840: dw $FFFE\n #_02A842: dw $0002\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenSizeFlag", + "code": "OverworldScreenSizeFlag:\n #_02A844: db $20, $20, $00, $20, $20, $20, $20, $00\n #_02A84C: db $20, $20, $00, $20, $20, $20, $20, $00\n #_02A854: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02A85C: db $20, $20, $00, $20, $20, $00, $20, $20\n #_02A864: db $20, $20, $00, $20, $20, $00, $20, $20\n #_02A86C: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02A874: db $20, $20, $00, $00, $00, $20, $20, $00\n #_02A87C: db $20, $20, $00, $00, $00, $20, $20, $00\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenSizeHighByte", + "code": "OverworldScreenSizeHighByte:\n #_02A884: db $03, $03, $01, $03, $03, $03, $03, $01\n #_02A88C: db $03, $03, $01, $03, $03, $03, $03, $01\n #_02A894: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02A89C: db $03, $03, $01, $03, $03, $01, $03, $03\n #_02A8A4: db $03, $03, $01, $03, $03, $01, $03, $03\n #_02A8AC: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02A8B4: db $03, $03, $01, $01, $01, $03, $03, $01\n #_02A8BC: db $03, $03, $01, $01, $01, $03, $03, $01\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldTransitionPositionY", + "code": "OverworldTransitionPositionY:\n #_02A8C4: dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n #_02A8D4: dw $0000, $0000, $0200, $0000, $0000, $0000, $0000, $0200\n #_02A8E4: dw $0400, $0400, $0400, $0400, $0400, $0400, $0400, $0400\n #_02A8F4: dw $0600, $0600, $0600, $0600, $0600, $0600, $0600, $0600\n #_02A904: dw $0600, $0600, $0800, $0600, $0600, $0800, $0600, $0600\n #_02A914: dw $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00\n #_02A924: dw $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00\n #_02A934: dw $0C00, $0C00, $0E00, $0E00, $0E00, $0C00, $0C00, $0E00\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldTransitionPositionX", + "code": "OverworldTransitionPositionX:\n #_02A944: dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n #_02A954: dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n #_02A964: dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n #_02A974: dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n #_02A984: dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n #_02A994: dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n #_02A9A4: dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n #_02A9B4: dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldHandleTransitions", + "code": "OverworldHandleTransitions:\n #_02A9C4: LDA.w $0416\n #_02A9C7: BEQ .not_scrolling\n\n #_02A9C9: JSR OverworldHandleMapScroll\n\n.not_scrolling\n #_02A9CC: REP #$20\n\n #_02A9CE: LDA.b $30\n #_02A9D0: AND.w #$00FF\n #_02A9D3: BEQ .not_moving_vertically\n\n #_02A9D5: LDA.b $67\n #_02A9D7: AND.w #$000C\n #_02A9DA: STA.b $00\n\n #_02A9DC: LDX.w $0700\n\n #_02A9DF: LDA.b $20\n #_02A9E1: SEC\n #_02A9E2: SBC.l OverworldTransitionPositionY,X\n\n #_02A9E6: LDY.b #$06\n #_02A9E8: LDX.b #$08\n #_02A9EA: CMP.w #$0004\n #_02A9ED: BCC .continue_check\n\n #_02A9EF: LDY.b #$04\n #_02A9F1: LDX.b #$04\n #_02A9F3: CMP.w $0716\n #_02A9F6: BCS .continue_check\n\n; ---------------------------------------------------------\n\n.not_moving_vertically\n #_02A9F8: LDA.b $31\n #_02A9FA: AND.w #$00FF\n #_02A9FD: BEQ .check_special_triggers\n\n #_02A9FF: LDA.w $0716\n #_02AA02: CLC\n #_02AA03: ADC.w #$0004\n #_02AA06: STA.b $02\n\n #_02AA08: LDA.b $67\n #_02AA0A: AND.w #$0003\n #_02AA0D: STA.b $00\n\n #_02AA0F: LDX.w $0700\n\n #_02AA12: LDA.b $22\n #_02AA14: SEC\n #_02AA15: SBC.l OverworldTransitionPositionX,X\n\n #_02AA19: LDY.b #$02\n #_02AA1B: LDX.b #$02\n #_02AA1D: CMP.w #$0006\n #_02AA20: BCC .continue_check\n\n #_02AA22: LDY.b #$00\n #_02AA24: LDX.b #$01\n\n #_02AA26: CMP.b $02\n #_02AA28: BCC .check_special_triggers\n\n; ---------------------------------------------------------\n\n.continue_check\n #_02AA2A: CPX.b $00\n #_02AA2C: BEQ .some_transition_was_hit\n\n.check_special_triggers\n #_02AA2E: JSL Overworld_CheckForSpecialOverworldTrigger\n\n #_02AA32: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadGFXAndScreenSize", + "code": "Overworld_LoadGFXAndScreenSize:\n #_02AB08: LDX.b $8A\n\n #_02AB0A: STZ.w $0412\n\n #_02AB0D: LDA.l $7EFCC0,X\n #_02AB11: STA.w $0AA3\n\n #_02AB14: LDA.l GFXAA2ValsOW,X\n #_02AB18: STA.w $0AA2\n\n #_02AB1B: TXA\n #_02AB1C: AND.b #$3F\n #_02AB1E: TAX\n\n #_02AB1F: LDA.w $0712\n #_02AB22: STA.w $0714\n\n #_02AB25: LDA.l OverworldScreenSizeFlag,X\n #_02AB29: STA.w $0712\n\n #_02AB2C: LDA.l OverworldScreenSizeHighByte,X\n #_02AB30: STA.w $0717\n\n; ---------------------------------------------------------\n\n #_02AB33: LDY.b #$20\n #_02AB35: LDX.b #$00\n\n #_02AB37: LDA.b $8A\n #_02AB39: AND.b #$40\n #_02AB3B: BEQ .light_world\n\n #_02AB3D: INY\n #_02AB3E: LDX.b #$08\n\n.light_world\n #_02AB40: STY.w $0AA1\n\n #_02AB43: LDA.l SheetsTable_AA4,X\n #_02AB47: STA.w $0AA4\n\n #_02AB4A: REP #$30\n\n #_02AB4C: LDA.b $8A\n #_02AB4E: AND.w #$00BF\n #_02AB51: ASL A\n #_02AB52: TAX\n\n #_02AB53: LDA.l OverworldTransitionPositionY,X\n #_02AB57: STA.w $0708\n\n #_02AB5A: LDA.l OverworldTransitionPositionX,X\n #_02AB5E: LSR A\n #_02AB5F: LSR A\n #_02AB60: LSR A\n #_02AB61: STA.w $070C\n\n #_02AB64: LDA.w #$03F0\n\n #_02AB67: LDX.w $0712\n #_02AB6A: BNE .bigger_screen\n\n #_02AB6C: LDA.w #$01F0\n\n.bigger_screen\n #_02AB6F: STA.w $070A\n\n #_02AB72: LSR A\n #_02AB73: LSR A\n #_02AB74: LSR A\n #_02AB75: STA.w $070E\n\n #_02AB78: SEP #$30\n\n #_02AB7A: RTS", + "file": "bank_02.asm" + }, + { + "name": "ScrollAndCheckForSOWExit", + "code": "ScrollAndCheckForSOWExit:\n #_02AB7B: LDA.w $0416\n #_02AB7E: BEQ .no_scroll\n\n #_02AB80: JSR OverworldHandleMapScroll\n\n.no_scroll\n #_02AB83: JSL SpecialOverworld_CheckForReturnTrigger\n\n #_02AB87: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_LoadAuxGFX", + "code": "Module09_LoadAuxGFX:\n #_02AB88: LDA.l $7EF2BB\n #_02AB8C: AND.b #$DF\n #_02AB8E: STA.l $7EF2BB\n\n #_02AB92: LDA.l $7EF2FB\n #_02AB96: AND.b #$DF\n #_02AB98: STA.l $7EF2FB\n\n #_02AB9C: LDA.l $7EF216\n #_02ABA0: AND.b #$7F\n #_02ABA2: STA.l $7EF216\n\n #_02ABA6: LDA.l $7EF051\n #_02ABAA: AND.b #$FE\n #_02ABAC: STA.l $7EF051\n\n #_02ABB0: JSL LoadTransAuxGFX\n #_02ABB4: JSL PrepTransAuxGfx\n\n #_02ABB8: LDA.b #$09\n #_02ABBA: BRA .go\n\n; =========================================================\n\n#Module09_TriggerTilemapUpdate:\n #_02ABBC: LDA.b #$0A\n\n; ---------------------------------------------------------\n\n.go\n #_02ABBE: STA.b $17\n #_02ABC0: STA.w $0710\n\n #_02ABC3: INC.b $11\n\n #_02ABC5: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_LoadNewMapAndGFX", + "code": "Module09_LoadNewMapAndGFX:\n #_02ABC6: STZ.w $04C8\n #_02ABC9: STZ.w $04C9\n\n #_02ABCC: JSR SomeTilemapChange\n\n #_02ABCF: INC.w $0710\n\n #_02ABD2: JSR CreateInitialNewScreenMapToScroll\n #_02ABD5: JSL LoadNewSpriteGFXSet\n\n #_02ABD9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_RunScrollTransition", + "code": "Overworld_RunScrollTransition:\n #_02ABDA: JSL Link_HandleMovingAnimation_FullLongEntry\n #_02ABDE: JSL Graphics_IncrementalVRAMUpload\n\n #_02ABE2: JSR OverworldScrollTransition\n #_02ABE5: AND.b #$0F\n #_02ABE7: BEQ .continue\n\n #_02ABE9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_LoadNewSprites", + "code": "Module09_LoadNewSprites:\n #_02ABED: LDA.w $0418\n #_02ABF0: CMP.b #$01\n #_02ABF2: BNE .dont_adjust_y\n\n; ---------------------------------------------------------\n\n #_02ABF4: REP #$20\n\n #_02ABF6: LDA.b $E8\n #_02ABF8: CLC\n #_02ABF9: ADC.w #$0002\n #_02ABFC: STA.b $E8\n\n #_02ABFE: LDA.b $20\n #_02AC00: CLC\n #_02AC01: ADC.w #$0002\n #_02AC04: STA.b $20\n\n #_02AC06: SEP #$20\n\n; ---------------------------------------------------------\n\n.dont_adjust_y\n #_02AC08: JSL Sprite_LoadAll_Overworld\n\n #_02AC0C: STZ.w $04AC\n #_02AC0F: STZ.w $04AD\n\n #_02AC12: LDA.l $7EF3C5\n #_02AC16: CMP.b #$02\n #_02AC18: BCS .not_raining\n\n.dont_set_fixed_color\n #_02AC1A: JMP.w Overworld_StartScrollTransition\n\n.not_raining\n #_02AC1D: LDA.b $11\n #_02AC1F: CMP.b #$12\n #_02AC21: BEQ .dont_set_fixed_color\n\n #_02AC23: JSL Overworld_SetFixedColAndScroll\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_StartScrollTransition", + "code": "Overworld_StartScrollTransition:\n #_02AC27: INC.b $11\n\n #_02AC29: LDX.w $0410\n #_02AC2C: CPX.b #$04\n #_02AC2E: BCC .exit\n\n; =========================================================\n\n#OverworldTranScrollSet:\n #_02AC30: STX.w $0416\n\n #_02AC33: JSR OverworldTransitionScrollAndLoadMap\n\n #_02AC36: STZ.w $0416\n\n.exit\n #_02AC39: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_EaseOffScrollTransition", + "code": "Overworld_EaseOffScrollTransition:\n #_02AC3A: LDX.b $8A\n\n #_02AC3C: LDA.l OverworldScreenSize,X\n #_02AC40: BEQ .dont_scroll_map\n\n #_02AC42: LDX.w $0410\n #_02AC45: STX.w $0416\n\n #_02AC48: JSR OverworldTransitionScrollAndLoadMap\n\n #_02AC4B: STZ.w $0416\n\n.dont_scroll_map\n #_02AC4E: INC.b $B0\n\n #_02AC50: LDA.b $B0\n #_02AC52: CMP.b #$08\n #_02AC54: BCC .exit\n\n #_02AC56: LDX.w $0410\n #_02AC59: CPX.b #$08\n #_02AC5B: BEQ .scrolling_north\n\n #_02AC5D: CPX.b #$02\n #_02AC5F: BNE .not_scrolling_vertically\n\n.scrolling_north\n #_02AC61: CMP.b #$09\n #_02AC63: BCC .exit\n\n.not_scrolling_vertically\n #_02AC65: STZ.b $B0\n #_02AC67: STZ.w $0410\n\n; ---------------------------------------------------------\n\n #_02AC6A: LDX.b $8A\n\n #_02AC6C: LDA.l OverworldScreenSize,X\n #_02AC70: BEQ .dont_recover_map16\n\n #_02AC72: REP #$20\n\n #_02AC74: LDA.l $7EC172\n #_02AC78: STA.b $84\n\n #_02AC7A: LDA.l $7EC174\n #_02AC7E: STA.b $86\n\n #_02AC80: LDA.l $7EC176\n #_02AC84: STA.b $88\n\n #_02AC86: SEP #$20\n\n.dont_recover_map16\n #_02AC88: INC.b $11\n\n #_02AC8A: JSL Follower_Disable\n\n.exit\n #_02AC8E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_0A_WalkFromExiting_FacingDown", + "code": "Module09_0A_WalkFromExiting_FacingDown:\n #_02AC8F: JSL Link_HandleMovingAnimation_SetFacingDown\n\n #_02AC93: REP #$20\n\n #_02AC95: LDA.b $20\n #_02AC97: CLC\n #_02AC98: ADC.w #$0001\n #_02AC9B: STA.b $20\n\n #_02AC9D: SEP #$20\n\n #_02AC9F: DEC.w $069A\n #_02ACA2: BNE .exit\n\n; ---------------------------------------------------------\n\n #_02ACA4: STZ.b $11\n\n #_02ACA6: REP #$20\n\n #_02ACA8: LDA.b $20\n #_02ACAA: CLC\n #_02ACAB: ADC.w #$0003\n #_02ACAE: STA.b $20\n\n #_02ACB0: SEP #$20\n\n #_02ACB2: LDA.b #$03\n #_02ACB4: STA.b $30\n\n; ---------------------------------------------------------\n\n #_02ACB6: JSR Overworld_OperateCameraScroll\n\n #_02ACB9: LDA.w $0416\n #_02ACBC: BEQ .exit\n\n #_02ACBE: JSR OverworldHandleMapScroll\n\n.exit\n #_02ACC1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_0B_WalkFromExiting_FacingUp", + "code": "Module09_0B_WalkFromExiting_FacingUp:\n #_02ACC2: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02ACC6: REP #$20\n\n #_02ACC8: LDA.b $20\n #_02ACCA: SEC\n #_02ACCB: SBC.w #$0001\n #_02ACCE: STA.b $20\n\n #_02ACD0: SEP #$20\n\n #_02ACD2: DEC.w $069A\n #_02ACD5: BNE .exit\n\n #_02ACD7: STZ.b $11\n\n.exit\n #_02ACD9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Map32UpdateTiles", + "code": "Map32UpdateTiles:\n #_02ACDA: dw $0DA8, $0DA9, $0DAA, $0DAB ; sanc doors half open\n #_02ACE2: dw $0DAC, $0DAD, $0DAE, $0DAF ; sanc doors 2/3 open\n #_02ACEA: dw $0DB0, $0DB1, $0DB2, $0DB3 ; sanc doors fully open\n #_02ACF2: dw $0DB6, $0DB7, $0DB8, $0DB9 ; castle doors 2/3 open\n #_02ACFA: dw $0DBA, $0DBB, $0DBC, $0DBD ; castle doors fully open\n #_02AD02: dw $0DCD, $0DCE, $0DCF, $0DD0 ; big rock imprint\n #_02AD0A: dw $0DD3, $0DD4, $0DD5, $0DD6 ; open grave with corpse bottom half\n #_02AD12: dw $0DD7, $0DD8, $0DD9, $0DDA ; open grave with stairs bottom half\n #_02AD1A: dw $0DD1, $0DD2, $0DD3, $0DD4 ; open grave with corpse top half\n #_02AD22: dw $0DD1, $0DD2, $0DD7, $0DD8 ; open grave with stairs top half\n #_02AD2A: dw $0918, $0919, $091A, $091B ; stairs to cave\n #_02AD32: dw $0DDB, $0DDC, $0DDD, $0DDE ; open grave with pit bottom half\n #_02AD3A: dw $0DD1, $0DD2, $0DDB, $0DDC ; open grave with pit top half\n #_02AD42: dw $0E21, $0E22, $0E23, $0E24 ; broken weather vane\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_09_OpenBigDoorFromExiting", + "code": "Module09_09_OpenBigDoorFromExiting:\n #_02AD4A: LDA.w $0690\n #_02AD4D: CMP.b #$03\n #_02AD4F: BNE Overworld_DoMapUpdate32x32_conditional\n\n #_02AD51: LDA.b #$24\n\n #_02AD53: STA.w $069A\n\n #_02AD56: STZ.w $0416\n\n #_02AD59: INC.b $11\n\n #_02AD5B: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DoMapUpdate32x32_long", + "code": "Overworld_DoMapUpdate32x32_long:\n #_02AD5C: JSR Overworld_DoMapUpdate32x32\n\n #_02AD5F: STZ.w $0692\n\n #_02AD62: RTL", + "file": "bank_02.asm" + }, + { + "name": "UNREACHABLE_02AD63", + "code": "UNREACHABLE_02AD63:\n #_02AD63: REP #$30\n\n #_02AD65: JSR Overworld_DoMapUpdate32x32_16bit_already\n\n #_02AD68: STZ.w $0692\n\n #_02AD6B: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module09_0C_OpenBigDoor", + "code": "Module09_0C_OpenBigDoor:\n #_02AD6C: LDA.w $0690\n #_02AD6F: CMP.b #$03\n #_02AD71: BNE Overworld_DoMapUpdate32x32_conditional\n\n #_02AD73: STZ.b $B0\n #_02AD75: STZ.b $11\n #_02AD77: STZ.w $0416\n\n #_02AD7A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DoMapUpdate32x32_conditional", + "code": "Overworld_DoMapUpdate32x32_conditional:\n #_02AD7B: LDA.w $0692\n #_02AD7E: AND.b #$07\n #_02AD80: BEQ Overworld_DoMapUpdate32x32\n\n #_02AD82: JMP.w NoMap32Update\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DoMapUpdate32x32", + "code": "Overworld_DoMapUpdate32x32:\n #_02AD85: REP #$30\n\n; ---------------------------------------------------------\n\n#Overworld_DoMapUpdate32x32_16bit_already:\n #_02AD87: PHB\n #_02AD88: PHK\n #_02AD89: PLB\n\n #_02AD8A: LDA.w $0698\n\n #_02AD8D: LDX.w $04AC\n\n #_02AD90: STA.l $7EF800,X\n\n #_02AD94: TAX\n\n #_02AD95: LDY.w $0692\n\n #_02AD98: LDA.w Map32UpdateTiles,Y\n #_02AD9B: STA.l $7E2000,X\n\n #_02AD9F: LDX.w $04AC\n\n #_02ADA2: STA.l $7EFA00,X\n\n #_02ADA6: LDY.w #$0000\n #_02ADA9: LDX.w $0698\n #_02ADAC: JSL Overworld_DrawMap16_Anywhere\n\n; ---------------------------------------------------------\n\n #_02ADB0: LDA.w $0698\n #_02ADB3: LDX.w $04AC\n\n #_02ADB6: INC A\n #_02ADB7: INC A\n #_02ADB8: STA.l $7EF802,X\n\n #_02ADBC: LDX.w $0698\n #_02ADBF: LDY.w $0692\n\n #_02ADC2: LDA.w Map32UpdateTiles+2,Y\n #_02ADC5: STA.l $7E2002,X\n\n #_02ADC9: LDX.w $04AC\n #_02ADCC: STA.l $7EFA02,X\n\n #_02ADD0: LDY.w #$0002\n #_02ADD3: LDX.w $0698\n #_02ADD6: JSL Overworld_DrawMap16_Anywhere\n\n; ---------------------------------------------------------\n\n #_02ADDA: LDA.w $0698\n\n #_02ADDD: LDX.w $04AC\n\n #_02ADE0: CLC\n #_02ADE1: ADC.w #$0080\n #_02ADE4: STA.l $7EF804,X\n\n #_02ADE8: LDX.w $0698\n #_02ADEB: LDY.w $0692\n\n #_02ADEE: LDA.w Map32UpdateTiles+4,Y\n #_02ADF1: STA.l $7E2080,X\n\n #_02ADF5: LDX.w $04AC\n #_02ADF8: STA.l $7EFA04,X\n\n #_02ADFC: LDY.w #$0080\n #_02ADFF: LDX.w $0698\n #_02AE02: JSL Overworld_DrawMap16_Anywhere\n\n; ---------------------------------------------------------\n\n #_02AE06: LDA.w $0698\n\n #_02AE09: LDX.w $04AC\n\n #_02AE0C: CLC\n #_02AE0D: ADC.w #$0082\n #_02AE10: STA.l $7EF806,X\n\n #_02AE14: LDX.w $0698\n #_02AE17: LDY.w $0692\n\n #_02AE1A: LDA.w Map32UpdateTiles+6,Y\n #_02AE1D: STA.l $7E2082,X\n\n #_02AE21: LDX.w $04AC\n #_02AE24: STA.l $7EFA06,X\n\n #_02AE28: LDY.w #$0082\n #_02AE2B: LDX.w $0698\n #_02AE2E: JSL Overworld_DrawMap16_Anywhere\n\n; ---------------------------------------------------------\n\n #_02AE32: LDY.w $1000\n\n #_02AE35: LDA.w #$FFFF\n #_02AE38: STA.w $1002,Y\n\n #_02AE3B: LDA.w $04AC\n #_02AE3E: CLC\n #_02AE3F: ADC.w #$0008\n #_02AE42: STA.w $04AC\n\n #_02AE45: INC.w $0690\n\n #_02AE48: LDA.w $0692\n #_02AE4B: CMP.w #$0020\n #_02AE4E: BNE .dont_advance_count\n\n #_02AE50: INC.w $0690\n\n.dont_advance_count\n #_02AE53: PLB\n\n #_02AE54: SEP #$30\n\n #_02AE56: LDA.b #$01\n #_02AE58: STA.b $14\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "NoMap32Update", + "code": "NoMap32Update:\n #_02AE5A: INC.w $0692\n\n #_02AE5D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_StartMosaicTransition", + "code": "Overworld_StartMosaicTransition:\n #_02AE5E: JSR ConditionalMosaicControl\n\n #_02AE61: LDA.b $B0\n #_02AE63: JSL JumpTableLocal\n #_02AE67: dw OverworldMosaicTransition_HandleSong ; 0x00\n #_02AE69: dw ApplyPaletteFilter_bounce ; 0x01\n #_02AE6B: dw OverworldMosaicTransition_HandleScreensAndLoadShroom ; 0x02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_HandleSong", + "code": "OverworldMosaicTransition_HandleSong:\n #_02AE6D: LDX.b $8A\n #_02AE6F: CPX.b #$80\n #_02AE71: BEQ .skip\n\n #_02AE73: LDA.l $7F5B00,X\n #_02AE77: AND.b #$0F\n #_02AE79: CMP.w $0130\n #_02AE7C: BEQ .skip\n\n #_02AE7E: LDA.b #$F1 ; SONG F1 - fade\n #_02AE80: STA.w $012C\n\n.skip\n #_02AE83: JMP.w ResetTransitionPropsAndAdvance_ResetInterface\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_HandleScreensAndLoadShroom", + "code": "OverworldMosaicTransition_HandleScreensAndLoadShroom:\n #_02AE86: LDA.b #$80\n #_02AE88: STA.b $13\n\n #_02AE8A: STZ.b $B0\n\n #_02AE8C: LDA.b $8A\n #_02AE8E: AND.b #$3F ; OW 00, OW 40\n #_02AE90: BNE .not_woods_screen\n\n #_02AE92: LDA.b #$1E\n #_02AE94: JSL WriteTo4BPPBuffer_item_gfx\n\n.not_woods_screen\n #_02AE98: LDA.w $040A\n #_02AE9B: BEQ .check_to_load\n\n #_02AE9D: LDA.b $10\n #_02AE9F: CMP.b #$0B\n #_02AEA1: BEQ .check_to_load\n\n #_02AEA3: LDY.b #$16\n\n #_02AEA5: LDA.b #$01\n #_02AEA7: STY.b $1C\n #_02AEA9: STA.b $1D\n\n #_02AEAB: LDA.b #$82\n #_02AEAD: STA.b $99\n\n #_02AEAF: LDA.b #$20\n #_02AEB1: STA.b $9A\n\n #_02AEB3: INC.b $11\n\n #_02AEB5: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_1D", + "code": "Module09_1D:\n #_02AECE: JSR ConditionalMosaicControl\n\n #_02AED1: LDA.b $B0\n #_02AED3: JSL JumpTableLocal\n #_02AED7: dw ResetTransitionPropsAndAdvance_ResetInterface ; 0x00\n #_02AED9: dw ApplyPaletteFilter_bounce ; 0x01\n #_02AEDB: dw Module09_1D_02_FBlankAndEnterModule0A ; 0x02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_1D_02_FBlankAndEnterModule0A", + "code": "Module09_1D_02_FBlankAndEnterModule0A:\n #_02AEDD: LDA.b #$80\n #_02AEDF: STA.b $13\n\n #_02AEE1: STZ.b $B0\n\n #_02AEE3: LDA.b #$0A\n #_02AEE5: STA.b $10\n #_02AEE7: STZ.b $11\n\n #_02AEE9: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_1E", + "code": "Module09_1E:\n #_02AEEA: JSR ConditionalMosaicControl\n\n #_02AEED: LDA.b $B0\n #_02AEEF: JSL JumpTableLocal\n #_02AEF3: dw ResetTransitionPropsAndAdvance_ResetInterface ; 0x00\n #_02AEF5: dw ApplyPaletteFilter_bounce ; 0x01\n #_02AEF7: dw Module09_1E_02_FBlankAndLoadSPOW ; 0x02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_1E_02_FBlankAndLoadSPOW", + "code": "Module09_1E_02_FBlankAndLoadSPOW:\n #_02AEF9: LDA.b #$80\n #_02AEFB: STA.b $13\n\n #_02AEFD: JSR LoadOverworldFromSpecialOverworld\n\n #_02AF00: LDA.b #$09\n #_02AF02: STA.b $10\n\n #_02AF04: LDA.b #$0F\n #_02AF06: STA.b $11\n\n #_02AF08: STZ.b $B0\n\n #_02AF0A: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_25", + "code": "Module09_25:\n #_02AF0B: JSL Sprite_InitializeSlots\n #_02AF0F: JSL Sprite_ReloadAll_Overworld\n\n #_02AF13: STZ.w $0308\n #_02AF16: STZ.w $0309\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadSubscreenAndSilenceSFX1", + "code": "Overworld_LoadSubscreenAndSilenceSFX1:\n #_02AF19: LDA.b #$05 ; SFX1.05\n #_02AF1B: STA.w $012D\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_ReloadSubscreenOverlay", + "code": "Overworld_ReloadSubscreenOverlay:\n #_02AF1E: REP #$30\n\n #_02AF20: LDA.b $8A\n #_02AF22: STA.l $7EC213\n\n #_02AF26: LDA.b $84\n #_02AF28: STA.l $7EC215\n\n #_02AF2C: LDA.b $88\n #_02AF2E: STA.l $7EC217\n\n #_02AF32: LDA.b $86\n #_02AF34: STA.l $7EC219\n\n #_02AF38: LDA.w $0418\n #_02AF3B: STA.l $7EC21B\n\n #_02AF3F: LDA.w $0410\n #_02AF42: STA.l $7EC21D\n\n #_02AF46: LDA.w $0416\n #_02AF49: STA.l $7EC21F\n\n #_02AF4D: STZ.b $8C\n\n #_02AF4F: STZ.w $0622\n #_02AF52: STZ.w $0620\n\n; ---------------------------------------------------------\n\n #_02AF55: LDY.w #$0390\n\n #_02AF58: LDA.b $8A\n #_02AF5A: CMP.w #$0080 ; SPOW\n #_02AF5D: BCC .normal_overworld\n\n #_02AF5F: LDX.w #$0097 ; OW 97\n\n #_02AF62: LDA.b $A0\n #_02AF64: CMP.w #$0180 ; OW 80\n #_02AF67: BNE .not_mastersword\n\n #_02AF69: LDX.w #$0080 ; OW 80\n #_02AF6C: LDA.l $7EF280,X\n\n #_02AF70: LDX.w #$0097 ; OW 97\n\n #_02AF73: AND.w #$0040\n #_02AF76: BNE .disable_overlay\n\n; ---------------------------------------------------------\n\n.do_load_special\n #_02AF78: JMP.w .load_overlay\n\n; ---------------------------------------------------------\n\n.not_mastersword\n #_02AF7B: LDX.w #$0094 ; OW 94\n #_02AF7E: CMP.w #$0181 ; OW 81\n #_02AF81: BEQ .do_load_special\n\n #_02AF83: LDX.w #$0093 ; OW 93\n #_02AF86: CMP.w #$0189 ; OW 89\n #_02AF89: BEQ .do_load_special\n\n #_02AF8B: CMP.w #$0182 ; OW 82\n #_02AF8E: BEQ .disable_with_sfx\n\n #_02AF90: CMP.w #$0183 ; OW 83\n #_02AF93: BNE .disable_overlay\n\n; ---------------------------------------------------------\n\n.disable_with_sfx\n #_02AF95: SEP #$30\n\n #_02AF97: LDA.b #$01 ; SFX1.01\n #_02AF99: STA.w $012D\n\n; ---------------------------------------------------------\n\n.disable_overlay\n #_02AF9C: SEP #$30\n\n #_02AF9E: STZ.b $1D\n\n #_02AFA0: INC.b $11\n\n #_02AFA2: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_FadeBackInFromMosaic", + "code": "Module09_FadeBackInFromMosaic:\n #_02B0D2: LDA.l $7EC007\n #_02B0D6: LSR A\n #_02B0D7: BCC .delay\n\n #_02B0D9: LDA.l $7EC011\n #_02B0DD: SEC\n #_02B0DE: SBC.b #$10\n #_02B0E0: STA.l $7EC011\n\n.delay\n #_02B0E4: JSR CopyMosaicControl\n\n #_02B0E7: LDA.b $B0\n #_02B0E9: JSL JumpTableLocal\n #_02B0ED: dw OverworldMosaicTransition_RecoverDestinationPalettes ; 0x00\n #_02B0EF: dw OverworldMosaicTransition_FilterAndLoadGraphics ; 0x01\n #_02B0F1: dw OverworldMosaicTransition_RecoverSongAndSetMoving ; 0x02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_RecoverDestinationPalettes", + "code": "OverworldMosaicTransition_RecoverDestinationPalettes:\n #_02B0F3: LDX.b $8A\n\n #_02B0F5: LDA.l $7EFD40,X\n #_02B0F9: STA.b $00\n\n #_02B0FB: LDA.l OverworldPalettesScreenToSet,X\n #_02B0FF: JSL OverworldPalettesLoader\n\n #_02B103: BRA OverworldMosaicTransition_LoadSpriteGraphicsAndSetMosaic\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_RecoverSongAndSetMoving", + "code": "OverworldMosaicTransition_RecoverSongAndSetMoving:\n #_02B105: LDA.w $0130\n #_02B108: STA.w $0133\n\n #_02B10B: LDA.b $8A\n #_02B10D: CMP.b #$80 ; OW 80\n #_02B10F: BEQ .dont_set_song\n\n #_02B111: CMP.b #$2A ; OW 2A\n #_02B113: BEQ .dont_set_song\n\n #_02B115: LDX.b $8A\n\n #_02B117: LDA.l $7F5B00,X\n #_02B11B: LSR A\n #_02B11C: LSR A\n #_02B11D: LSR A\n #_02B11E: LSR A\n #_02B11F: BNE .has_sfx\n\n #_02B121: LDA.b #$05 ; SFX1.05\n\n.has_sfx\n #_02B123: STA.w $012D\n\n #_02B126: LDA.l $7F5B00,X\n #_02B12A: AND.b #$0F\n #_02B12C: CMP.w $0130\n #_02B12F: BEQ .dont_set_song\n\n #_02B131: STA.w $012C\n\n.dont_set_song\n #_02B134: STZ.b $11\n\n #_02B136: LDA.b #$08\n #_02B138: STA.b $11\n\n #_02B13A: STZ.b $B0\n\n #_02B13C: LDA.b $10\n #_02B13E: CMP.b #$0B\n #_02B140: BNE .exit\n\n #_02B142: LDA.b #$09\n #_02B144: STA.b $10\n\n #_02B146: LDA.b #$1F\n #_02B148: STA.b $11\n\n #_02B14A: LDA.b #$0C\n #_02B14C: STA.w $069A\n\n.exit\n #_02B14F: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_1C", + "code": "Module09_1C:\n #_02B150: LDA.l $7EC007\n #_02B154: LSR A\n #_02B155: BCC .delay\n\n #_02B157: LDA.l $7EC011\n #_02B15B: SEC\n #_02B15C: SBC.b #$10\n #_02B15E: STA.l $7EC011\n\n.delay\n #_02B162: JSR CopyMosaicControl\n\n #_02B165: LDA.b $B0\n #_02B167: JSL JumpTableLocal\n #_02B16B: dw OverworldMosaicTransition_LoadSpriteGraphicsAndSetMosaic ; 0x00\n #_02B16D: dw OverworldMosaicTransition_FilterAndLoadGraphics ; 0x01\n #_02B16F: dw Module09_1C_02_HandleMusic ; 0x02\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_LoadSpriteGraphicsAndSetMosaic", + "code": "OverworldMosaicTransition_LoadSpriteGraphicsAndSetMosaic:\n #_02B171: JSL LoadNewSpriteGFXSet\n\n #_02B175: LDA.b #$0F\n #_02B177: STA.b $13\n\n #_02B179: LDA.b #$80\n #_02B17B: STA.b $9B\n\n #_02B17D: LDA.l $7EC00B\n #_02B181: DEC A\n #_02B182: STA.l $7EC007\n\n #_02B186: LDA.b #$00\n #_02B188: STA.l $7EC00B\n\n #_02B18C: LDA.b #$02\n #_02B18E: STA.l $7EC009\n\n #_02B192: INC.b $B0\n\n #_02B194: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldMosaicTransition_FilterAndLoadGraphics", + "code": "OverworldMosaicTransition_FilterAndLoadGraphics:\n #_02B195: JSL Graphics_IncrementalVRAMUpload\n #_02B199: JSL ApplyPaletteFilter\n\n #_02B19D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_1C_02_HandleMusic", + "code": "Module09_1C_02_HandleMusic:\n #_02B19E: LDA.b $8A\n #_02B1A0: CMP.b #$80 ; OW 80\n #_02B1A2: BCS .no_song_change\n\n #_02B1A4: LDA.b #$02 ; SONG 02\n #_02B1A6: STA.w $012C\n\n #_02B1A9: LDA.b $8A\n #_02B1AB: AND.b #$3F ; OW 00, OW 40\n #_02B1AD: BNE .no_song_change\n\n #_02B1AF: LDA.b #$05 ; SONG 05\n #_02B1B1: STA.w $012C\n\n.no_song_change\n #_02B1B4: LDA.b #$08\n #_02B1B6: STA.b $11\n\n #_02B1B8: STZ.b $B0\n\n #_02B1BA: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_22", + "code": "Module09_22:\n #_02B1BB: INC.b $13\n\n #_02B1BD: LDA.b $13\n #_02B1BF: CMP.b #$0F\n #_02B1C1: BNE .exit\n\n #_02B1C3: STZ.b $11\n #_02B1C5: STZ.b $B0\n\n.exit\n #_02B1C7: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_18", + "code": "Module09_18:\n #_02B1C8: STZ.w $032A\n\n #_02B1CB: LDA.b $10\n #_02B1CD: PHA\n\n #_02B1CE: LDA.b $11\n #_02B1D0: PHA\n\n #_02B1D1: JSR LoadSpecialOverworld\n #_02B1D4: JSR Module09_25\n\n #_02B1D7: PLA\n #_02B1D8: INC A\n #_02B1D9: STA.b $11\n\n #_02B1DB: PLA\n #_02B1DC: STA.b $10\n\n #_02B1DE: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_19", + "code": "Module09_19:\n #_02B1DF: LDA.b $10\n #_02B1E1: PHA\n\n #_02B1E2: LDA.b $11\n #_02B1E4: PHA\n\n #_02B1E5: JSR Module08_02_LoadAndAdvance\n\n #_02B1E8: PLA\n #_02B1E9: INC A\n #_02B1EA: STA.b $11\n\n #_02B1EC: PLA\n #_02B1ED: STA.b $10\n\n #_02B1EF: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadAndBuildScreen_long", + "code": "Overworld_LoadAndBuildScreen_long:\n #_02B1F0: JSR Overworld_LoadAndBuildScreen\n\n #_02B1F3: RTL", + "file": "bank_02.asm" + }, + { + "name": "Overworld_ReloadSubscreenOverlayAndAdvance_long", + "code": "Overworld_ReloadSubscreenOverlayAndAdvance_long:\n #_02B1F4: JSR Overworld_ReloadSubscreenOverlay\n\n #_02B1F7: DEC.b $11\n\n #_02B1F9: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module09_MirrorWarp", + "code": "Module09_MirrorWarp:\n #_02B1FA: JSL MirrorWarp_Main\n\n #_02B1FE: RTS", + "file": "bank_02.asm" + }, + { + "name": "MirrorWarp_Main", + "code": "MirrorWarp_Main:\n #_02B1FF: INC.w $0710\n\n #_02B202: LDA.b $B0\n #_02B204: JSL JumpTableLong\n #_02B208: dl MirrorWarp_Initialize ; 0x00\n #_02B20B: dl MirrorWarp_BuildAndEnableHDMATable ; 0x01\n #_02B20E: dl MirrorWarp_BuildWavingHDMATable ; 0x02\n #_02B211: dl MirrorWarp_BuildDewavingHDMATable ; 0x03\n #_02B214: dl MirrorWarp_FinalizeAndLoadDestination ; 0x04\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "MirrorWarp_Initialize", + "code": "MirrorWarp_Initialize:\n #_02B217: LDA.b $8A\n #_02B219: CMP.b #$80 ; SPOW\n #_02B21B: BCC .not_special\n\n #_02B21D: STZ.b $11\n #_02B21F: STZ.b $B0\n #_02B221: STZ.w $0200\n\n #_02B224: RTL", + "file": "bank_02.asm" + }, + { + "name": "MirrorWarp_FinalizeAndLoadDestination", + "code": "MirrorWarp_FinalizeAndLoadDestination:\n #_02B260: REP #$20\n\n #_02B262: LDA.w #$2641\n #_02B265: STA.w DMA7MODE\n\n #_02B268: LDX.b #$3E\n\n #_02B26A: LDA.w #$FF00\n\n.next\n #_02B26D: STA.w $1B00,X\n #_02B270: STA.w $1B40,X\n #_02B273: STA.w $1B80,X\n #_02B276: STA.w $1BC0,X\n #_02B279: STA.w $1C00,X\n #_02B27C: STA.w $1C40,X\n #_02B27F: STA.w $1C80,X\n\n #_02B282: DEX\n #_02B283: DEX\n #_02B284: BPL .next\n\n; ---------------------------------------------------------\n\n #_02B286: LDA.w #$0000\n #_02B289: STA.l $7EC007\n #_02B28D: STA.l $7EC009\n\n #_02B291: SEP #$20\n\n #_02B293: JSL ReloadPreviouslyLoadedSheets\n #_02B297: JSL AdjustOverworldAmbiance\n\n #_02B29B: LDA.b #$80\n #_02B29D: STA.b $9B\n\n #_02B29F: LDX.b $8A\n\n #_02B2A1: LDA.l $7F5B00,X\n #_02B2A5: AND.b #$0F\n #_02B2A7: STA.w $012C\n\n #_02B2AA: LDA.l $7F5B00,X\n #_02B2AE: LSR A\n #_02B2AF: LSR A\n #_02B2B0: LSR A\n #_02B2B1: LSR A\n #_02B2B2: STA.w $012D\n\n #_02B2B5: CPX.b #$40 ; DW\n #_02B2B7: BCC .not_bunny_song\n\n #_02B2B9: LDA.l $7EF357\n #_02B2BD: BNE .not_bunny_song\n\n #_02B2BF: LDA.b #$04 ; SONG 04\n #_02B2C1: STA.w $012C\n\n.not_bunny_song\n #_02B2C4: LDA.b $11\n #_02B2C6: STA.w $010C\n\n #_02B2C9: STZ.b $11\n #_02B2CB: STZ.b $B0\n\n #_02B2CD: STZ.w $0200\n #_02B2D0: STZ.w $0710\n\n #_02B2D3: RTL", + "file": "bank_02.asm" + }, + { + "name": "MirrorWarp_HandleCastlePyramidSubscreen", + "code": "MirrorWarp_HandleCastlePyramidSubscreen:\n #_02B2D4: JSR Overworld_LoadSubscreenAndSilenceSFX1\n\n #_02B2D7: LDA.b $8A\n #_02B2D9: CMP.b #$1B ; OW 1B\n #_02B2DB: BEQ .is_castle\n\n #_02B2DD: CMP.b #$5B ; OW 5B\n #_02B2DF: BNE .not_pyramid\n\n.is_castle\n #_02B2E1: LDA.b #$01\n #_02B2E3: STA.b $1D\n\n.not_pyramid\n #_02B2E5: RTL", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DrawScreenAtCurrentMirrorPosition", + "code": "Overworld_DrawScreenAtCurrentMirrorPosition:\n #_02B2E6: REP #$20\n\n #_02B2E8: LDA.b $84\n #_02B2EA: PHA\n\n #_02B2EB: LDA.b $86\n #_02B2ED: PHA\n\n #_02B2EE: LDA.b $88\n #_02B2F0: PHA\n\n #_02B2F1: LDX.b $8A\n\n #_02B2F3: LDA.l OverworldScreenSize,X\n #_02B2F7: AND.w #$00FF\n #_02B2FA: BEQ .no_adjustment\n\n #_02B2FC: LDA.w #$0390\n #_02B2FF: STA.b $84\n\n #_02B301: SEC\n #_02B302: SBC.w #$0400\n #_02B305: AND.w #$0F80\n #_02B308: ASL A\n #_02B309: XBA\n #_02B30A: STA.b $88\n\n #_02B30C: LDA.b $84\n #_02B30E: SEC\n #_02B30F: SBC.w #$0010\n #_02B312: AND.w #$003E\n #_02B315: LSR A\n #_02B316: STA.b $86\n\n; ---------------------------------------------------------\n\n.no_adjustment\n #_02B318: SEP #$20\n\n #_02B31A: JSR Overworld_DrawQuadrantsAndOverlays\n\n #_02B31D: LDA.b $11\n #_02B31F: CMP.b #$2C\n #_02B321: BNE .not_mirror_bonk\n\n #_02B323: JSR MirrorBonk_RecoverChangedTiles\n\n.not_mirror_bonk\n #_02B326: REP #$20\n\n #_02B328: PLA\n #_02B329: STA.b $88\n\n #_02B32B: PLA\n #_02B32C: STA.b $86\n\n #_02B32E: PLA\n #_02B32F: STA.b $84\n\n #_02B331: SEP #$20\n\n #_02B333: RTL", + "file": "bank_02.asm" + }, + { + "name": "MirrorWarp_LoadSpritesAndColors", + "code": "MirrorWarp_LoadSpritesAndColors:\n #_02B334: LDA.b #$90\n #_02B336: STA.w $031F\n\n #_02B339: REP #$20\n\n #_02B33B: LDA.b $84\n #_02B33D: PHA\n\n #_02B33E: LDA.b $86\n #_02B340: PHA\n\n #_02B341: LDA.b $88\n #_02B343: PHA\n\n #_02B344: LDA.w #$FFFF\n #_02B347: STA.b $C8\n\n #_02B349: STZ.b $CA\n #_02B34B: STZ.b $CC\n\n; ---------------------------------------------------------\n\n #_02B34D: LDX.b $8A\n\n #_02B34F: LDA.l OverworldScreenSize,X\n #_02B353: AND.w #$00FF\n #_02B356: BEQ .no_adjustment\n\n #_02B358: LDA.w #$0390\n #_02B35B: STA.b $84\n\n #_02B35D: SEC\n #_02B35E: SBC.w #$0400\n #_02B361: AND.w #$0F80\n #_02B364: ASL A\n #_02B365: XBA\n #_02B366: STA.b $88\n\n #_02B368: LDA.b $84\n #_02B36A: SEC\n #_02B36B: SBC.w #$0010\n #_02B36E: AND.w #$003E\n #_02B371: LSR A\n #_02B372: STA.b $86\n\n; ---------------------------------------------------------\n\n.no_adjustment\n #_02B374: SEP #$20\n\n #_02B376: JSR BuildOverworldMapFromMap16\n\n #_02B379: REP #$20\n\n #_02B37B: PLA\n #_02B37C: STA.b $88\n\n #_02B37E: PLA\n #_02B37F: STA.b $86\n\n #_02B381: PLA\n #_02B382: STA.b $84\n\n; ---------------------------------------------------------\n\n #_02B384: SEP #$20\n\n #_02B386: JSR OverworldLoadScreensPaletteSet\n\n #_02B389: LDX.b $8A\n\n #_02B38B: LDA.l $7EFD40,X\n #_02B38F: STA.b $00\n\n #_02B391: LDA.l OverworldPalettesScreenToSet,X\n #_02B395: JSL OverworldPalettesLoader\n\n #_02B399: JSL Overworld_SetScreenBGColorCacheOnly\n #_02B39D: JSL Overworld_SetFixedColAndScroll\n\n #_02B3A1: LDA.b $8A\n #_02B3A3: CMP.b #$1B ; OW 1B\n #_02B3A5: BEQ .is_castle\n\n #_02B3A7: CMP.b #$5B ; OW 5B\n #_02B3A9: BNE .not_pyramid_a\n\n.is_castle\n #_02B3AB: LDA.b #$01\n #_02B3AD: STA.b $1D\n\n; ---------------------------------------------------------\n\n.not_pyramid_a\n #_02B3AF: REP #$20\n\n #_02B3B1: LDX.b #$00\n\n #_02B3B3: LDA.w #$7FFF ; RGB: #F8F8F8\n\n.next_color\n #_02B3B6: STA.l $7EC540,X\n #_02B3BA: STA.l $7EC560,X\n #_02B3BE: STA.l $7EC580,X\n #_02B3C2: STA.l $7EC5A0,X\n #_02B3C6: STA.l $7EC5C0,X\n #_02B3CA: STA.l $7EC5E0,X\n\n #_02B3CE: INX\n #_02B3CF: INX\n #_02B3D0: CPX.b #$20\n #_02B3D2: BNE .next_color\n\n #_02B3D4: STA.l $7EC500\n\n; ---------------------------------------------------------\n\n #_02B3D8: LDA.b $8A\n #_02B3DA: CMP.w #$005B ; OW 5B\n #_02B3DD: BNE .not_pyramid_b\n\n #_02B3DF: LDA.w #$0000 ; RGB: #000000\n #_02B3E2: STA.l $7EC500\n #_02B3E6: STA.l $7EC540\n\n; ---------------------------------------------------------\n\n.not_pyramid_b\n #_02B3EA: SEP #$20\n\n #_02B3EC: JSL Sprite_ResetAll\n #_02B3F0: JSL Sprite_ReloadAll_Overworld\n\n #_02B3F4: JSL Link_ItemReset_FromOverworldThings\n\n #_02B3F8: JSR DeleteCertainAncillaeStopDashing\n\n #_02B3FB: LDA.b #$14 ; LINKSTATE 14\n #_02B3FD: STA.b $5D\n\n #_02B3FF: LDA.b $8A\n #_02B401: AND.b #$40\n #_02B403: BNE .exit\n\n #_02B405: JSL InitializeMirrorPortal\n\n.exit\n #_02B409: RTL", + "file": "bank_02.asm" + }, + { + "name": "Module09_2B", + "code": "Module09_2B:\n #_02B40A: JSL PaletteBlackAndWhiteSomething_Conditional\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2D_WaitForBird", + "code": "Module09_2D_WaitForBird:\n #_02B40E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_Whirlpool", + "code": "Module09_2E_Whirlpool:\n #_02B40F: INC.w $0710\n\n #_02B412: LDA.b $B0\n #_02B414: JSL JumpTableLocal\n #_02B418: dw Module09_2E_00_InitWhirlpool ; 0x00\n #_02B41A: dw Module09_2E_01_FilterBlue ; 0x01\n #_02B41C: dw Module09_2E_01_MoreBlue ; 0x02\n #_02B41E: dw Module09_2E_03_FindDestination ; 0x03\n #_02B420: dw Module09_2E_04 ; 0x04\n #_02B422: dw Module09_2E_05_LoadDestinationMap ; 0x05\n #_02B424: dw Module09_2E_04 ; 0x06\n #_02B426: dw Module09_2E_07_LoadAuxGraphics ; 0x07\n #_02B428: dw Module09_2E_08_TriggerTilemapUpdate ; 0x08\n #_02B42A: dw Module09_2E_09_LoadPalettes ; 0x09\n #_02B42C: dw Module09_2E_0A ; 0x0A\n #_02B42E: dw Module09_2E_0B ; 0x0B\n #_02B430: dw Module09_2E_0C_FinalizeWarp ; 0x0C\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_00_InitWhirlpool", + "code": "Module09_2E_00_InitWhirlpool:\n #_02B432: LDA.b #$34 ; SFX2.34\n #_02B434: STA.w $012E\n\n #_02B437: LDA.b #$05 ; SFX1.05\n #_02B439: STA.w $012D\n\n #_02B43C: STZ.w $0200\n\n #_02B43F: LDA.b #$00\n #_02B441: STA.l $7EC007\n #_02B445: STA.l $7EC008\n\n #_02B449: INC.b $B0\n\n #_02B44B: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_01_FilterBlue", + "code": "Module09_2E_01_FilterBlue:\n #_02B44C: JSL PaletteFilter_WhirlpoolBlue\n\n #_02B450: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_01_MoreBlue", + "code": "Module09_2E_01_MoreBlue:\n #_02B451: JSL PaletteFilter_IsolateWhirlpoolBlue\n\n #_02B455: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_0B", + "code": "Module09_2E_0B:\n #_02B456: JSL Graphics_IncrementalVRAMUpload\n #_02B45A: JSL PaletteFilter_WhirlpoolRestoreBlue\n\n #_02B45E: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_0A", + "code": "Module09_2E_0A:\n #_02B45F: JSL PaletteFilter_WhirlpoolRestoreRedGreen\n\n #_02B463: LDA.l $7EC007\n #_02B467: BEQ .exit\n\n #_02B469: JSL PaletteFilter_WhirlpoolRestoreRedGreen\n\n.exit\n #_02B46D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_03_FindDestination", + "code": "Module09_2E_03_FindDestination:\n #_02B46E: LDA.b #$9F ; Max green\n #_02B470: STA.b $9E\n\n #_02B472: STZ.w $0AA9\n #_02B475: STZ.w $0AB2\n\n #_02B478: JSL FindPartnerWhirlpoolExit\n\n #_02B47C: STZ.b $B2\n\n #_02B47E: JSL Overworld_ReloadSubscreenOverlayAndAdvance_long\n\n #_02B482: LDA.b #$0C\n #_02B484: STA.b $17\n\n #_02B486: STZ.b $15\n\n #_02B488: BRA Whirlpool_SetFixedColor\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_04", + "code": "Module09_2E_04:\n #_02B48A: LDA.b #$0D\n #_02B48C: STA.b $17\n\n #_02B48E: BRA Whirlpool_Advance\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_05_LoadDestinationMap", + "code": "Module09_2E_05_LoadDestinationMap:\n #_02B490: JSL Overworld_LoadOverlayAndMap\n\n #_02B494: LDA.b #$0C\n #_02B496: STA.b $17\n\n #_02B498: BRA Whirlpool_SetBrightness\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_07_LoadAuxGraphics", + "code": "Module09_2E_07_LoadAuxGraphics:\n #_02B49A: JSR Module09_LoadAuxGFX\n\n #_02B49D: BRA Whirlpool_ToSubmod2D\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_08_TriggerTilemapUpdate", + "code": "Module09_2E_08_TriggerTilemapUpdate:\n #_02B49F: JSR Module09_TriggerTilemapUpdate\n\n #_02B4A2: LDA.b #$0F\n #_02B4A4: STA.b $13\n\n #_02B4A6: INC.w $0710\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Whirlpool_ToSubmod2D", + "code": "Whirlpool_ToSubmod2D:\n #_02B4A9: DEC.b $11\n\n #_02B4AB: INC.b $B0\n\n #_02B4AD: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_09_LoadPalettes", + "code": "Module09_2E_09_LoadPalettes:\n #_02B4AE: STZ.w $0AA9\n\n #_02B4B1: JSL Palettes_Load_SpriteMain\n #_02B4B5: JSL Palettes_Load_SpriteEnvironment\n #_02B4B9: JSL Palettes_Load_SpritePal0Left\n #_02B4BD: JSL Palettes_Load_HUD\n #_02B4C1: JSL Palettes_Load_OWBGMain\n\n #_02B4C5: LDX.b $8A\n\n #_02B4C7: LDA.l $7EFD40,X\n #_02B4CB: STA.b $00\n\n #_02B4CD: LDA.l OverworldPalettesScreenToSet,X\n #_02B4D1: JSL OverworldPalettesLoader\n #_02B4D5: JSL Overworld_SetScreenBGColor\n #_02B4D9: JSL Overworld_SetFixedColAndScroll\n #_02B4DD: JSL LoadNewSpriteGFXSet\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Whirlpool_SetFixedColor", + "code": "Whirlpool_SetFixedColor:\n #_02B4E1: LDA.b #$80 ; No green\n #_02B4E3: STA.b $9E\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Whirlpool_SetBrightness", + "code": "Whirlpool_SetBrightness:\n #_02B4E5: LDA.b #$0F\n #_02B4E7: STA.b $13\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Whirlpool_Advance", + "code": "Whirlpool_Advance:\n #_02B4E9: INC.w $0710\n #_02B4EC: INC.b $B0\n\n #_02B4EE: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2E_0C_FinalizeWarp", + "code": "Module09_2E_0C_FinalizeWarp:\n #_02B4EF: LDA.b #$90\n #_02B4F1: STA.w $031F\n\n #_02B4F4: JSL ReloadPreviouslyLoadedSheets\n\n #_02B4F8: LDA.b #$80\n #_02B4FA: STA.b $9B\n\n #_02B4FC: LDX.b $8A\n\n #_02B4FE: LDA.l $7F5B00,X\n #_02B502: LSR A\n #_02B503: LSR A\n #_02B504: LSR A\n #_02B505: LSR A\n #_02B506: STA.w $012D\n\n #_02B509: LDX.b #$02 ; SONG 02\n\n #_02B50B: LDA.l $7EF3CA\n #_02B50F: BEQ .not_dark_world\n\n #_02B511: LDX.b #$09 ; SONG 09\n\n.not_dark_world\n #_02B513: STX.w $012C\n\n #_02B516: STZ.b $11\n #_02B518: STZ.b $B0\n\n #_02B51A: STZ.w $0200\n #_02B51D: STZ.w $0710\n\n #_02B520: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2F", + "code": "Module09_2F:\n #_02B521: JSL Overworld_CreateTRPortal\n\n #_02B525: STZ.b $11\n\n #_02B527: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_2A_RecoverFromDrowning", + "code": "Module09_2A_RecoverFromDrowning:\n #_02B528: LDA.b $B0\n #_02B52A: JSL JumpTableLocal\n #_02B52E: dw Module09_2A_00_ScrollToLand\n #_02B530: dw RecoverPositionAfterDrowning\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_2A_00_ScrollToLand", + "code": "Module09_2A_00_ScrollToLand:\n #_02B532: REP #$20\n\n #_02B534: STZ.b $00\n #_02B536: STZ.b $02\n\n #_02B538: LDA.b $22\n #_02B53A: CMP.l $7EC186\n #_02B53E: BEQ .set_x\n #_02B540: BCC .x_low\n\n #_02B542: DEC.b $02\n\n #_02B544: DEC A\n #_02B545: CMP.l $7EC186\n #_02B549: BEQ .set_x\n\n #_02B54B: DEC.b $02\n\n #_02B54D: DEC A\n\n #_02B54E: BRA .set_x\n\n; ---------------------------------------------------------\n\n.x_low\n #_02B550: INC.b $02\n\n #_02B552: INC A\n #_02B553: CMP.l $7EC186\n #_02B557: BEQ .set_x\n\n #_02B559: INC.b $02\n #_02B55B: INC A\n\n.set_x\n #_02B55C: STA.b $22\n\n; ---------------------------------------------------------\n\n #_02B55E: LDA.b $20\n #_02B560: CMP.l $7EC184\n #_02B564: BEQ .set_y\n #_02B566: BCC .y_low\n\n #_02B568: DEC.b $00\n\n #_02B56A: DEC A\n #_02B56B: CMP.l $7EC184\n #_02B56F: BEQ .set_y\n\n #_02B571: DEC.b $00\n\n #_02B573: DEC A\n\n #_02B574: BRA .set_y\n\n; ---------------------------------------------------------\n\n.y_low\n #_02B576: INC.b $00\n\n #_02B578: INC A\n #_02B579: CMP.l $7EC184\n #_02B57D: BEQ .set_y\n\n #_02B57F: INC.b $00\n #_02B581: INC A\n\n.set_y\n #_02B582: STA.b $20\n\n; ---------------------------------------------------------\n\n #_02B584: CMP.l $7EC184\n #_02B588: BNE .delay_advance\n\n #_02B58A: LDA.b $22\n #_02B58C: CMP.l $7EC186\n #_02B590: BNE .delay_advance\n\n #_02B592: INC.b $B0\n\n #_02B594: STZ.b $46\n\n.delay_advance\n #_02B596: SEP #$20\n\n #_02B598: LDA.b $00\n #_02B59A: STA.b $30\n\n #_02B59C: LDA.b $02\n #_02B59E: STA.b $31\n\n #_02B5A0: JSR Overworld_OperateCameraScroll\n\n #_02B5A3: LDA.w $0416\n #_02B5A6: BEQ .exit\n\n #_02B5A8: JSR OverworldHandleMapScroll\n\n.exit\n #_02B5AB: RTS", + "file": "bank_02.asm" + }, + { + "name": "RoomQuadrantLayoutValues", + "code": "RoomQuadrantLayoutValues:\n #_02B5AC: db $0F ; xxxx - 0 NW\n #_02B5AD: db $0F ; xxxx - 0 NE\n #_02B5AE: db $0F ; xxxx - 0 SW\n #_02B5AF: db $0F ; xxxx - 0 SE\n #_02B5B0: db $0B ; x.xx - 1 NW\n #_02B5B1: db $0B ; x.xx - 1 NE\n #_02B5B2: db $07 ; .xxx - 1 SW\n #_02B5B3: db $07 ; .xxx - 1 SE\n #_02B5B4: db $0F ; xxxx - 2 NW\n #_02B5B5: db $0B ; x.xx - 2 NE\n #_02B5B6: db $0F ; xxxx - 2 SW\n #_02B5B7: db $07 ; .xxx - 2 SE\n #_02B5B8: db $0B ; x.xx - 3 NW\n #_02B5B9: db $0F ; xxxx - 3 NE\n #_02B5BA: db $07 ; .xxx - 3 SW\n #_02B5BB: db $0F ; xxxx - 3 SE\n #_02B5BC: db $0E ; xxx. - 4 NW\n #_02B5BD: db $0D ; xx.x - 4 NE\n #_02B5BE: db $0E ; xxx. - 4 SW\n #_02B5BF: db $0D ; xx.x - 4 SE\n #_02B5C0: db $0F ; xxxx - 5 NW\n #_02B5C1: db $0F ; xxxx - 5 NE\n #_02B5C2: db $0E ; xxx. - 5 SW\n #_02B5C3: db $0D ; xx.x - 5 SE\n #_02B5C4: db $0E ; xxx. - 6 NW\n #_02B5C5: db $0D ; xx.x - 6 NE\n #_02B5C6: db $0F ; xxxx - 6 SW\n #_02B5C7: db $0F ; xxxx - 6 SE\n #_02B5C8: db $0A ; x.x. - 7 NW\n #_02B5C9: db $09 ; x..x - 7 NE\n #_02B5CA: db $06 ; .xx. - 7 SW\n #_02B5CB: db $05 ; .x.x - 7 SE\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "QuadrantLayoutFlagBitfield", + "code": "QuadrantLayoutFlagBitfield:\n #_02B5CC: db $08, $04, $02, $01, $0C, $0C, $03, $03\n #_02B5D4: db $0A, $05, $0A, $05, $0F, $0F, $0F, $0F\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdjustForRoomLayout", + "code": "Underworld_AdjustForRoomLayout:\n #_02B5DC: PHB\n #_02B5DD: PHK\n #_02B5DE: PLB\n\n #_02B5DF: SEP #$30\n\n #_02B5E1: JSR Underworld_AdjustQuadrant\n\n #_02B5E4: STZ.b $A6\n\n #_02B5E6: LDY.b #$02\n\n #_02B5E8: LDA.b $A9\n #_02B5EA: BNE .right_side\n\n #_02B5EC: LDY.b #$01\n\n.right_side\n #_02B5EE: STY.b $00\n\n #_02B5F0: LDA.w $0452\n #_02B5F3: BNE .from_wall\n\n #_02B5F5: LDX.b $A8\n\n #_02B5F7: LDA.w RoomQuadrantLayoutValues,X\n #_02B5FA: AND.b $00\n #_02B5FC: BNE .small_horizontally\n\n.from_wall\n #_02B5FE: LDA.b #$02\n #_02B600: STA.b $A6\n\n.small_horizontally\n #_02B602: STZ.b $A7\n\n #_02B604: LDY.b #$08\n #_02B606: LDA.b $AA\n #_02B608: BNE .bottom_side\n\n #_02B60A: LDY.b #$04\n\n.bottom_side\n #_02B60C: STY.b $00\n\n #_02B60E: LDA.w $0453\n #_02B611: BNE .blast_wall_makes_tall\n\n #_02B613: LDX.b $A8\n #_02B615: LDA.w RoomQuadrantLayoutValues,X\n #_02B618: AND.b $00\n #_02B61A: BNE .small_vertically\n\n.blast_wall_makes_tall\n #_02B61C: LDA.b #$02\n #_02B61E: STA.b $A7\n\n.small_vertically\n #_02B620: LDA.b $FC\n #_02B622: BEQ .blast_wall_not_wide\n\n #_02B624: STA.b $A6\n\n.blast_wall_not_wide\n #_02B626: LDA.b $FD\n #_02B628: BEQ .exit\n\n #_02B62A: STA.b $A7\n\n.exit\n #_02B62C: PLB\n\n #_02B62D: RTL", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementEast_RightBy8", + "code": "HandleEdgeTransitionMovementEast_RightBy8:\n #_02B62E: REP #$20\n\n #_02B630: LDA.b $22\n #_02B632: CLC\n #_02B633: ADC.w #$0008\n #_02B636: STA.b $22\n\n #_02B638: SEP #$20\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementEast", + "code": "HandleEdgeTransitionMovementEast:\n #_02B63A: PHB\n #_02B63B: PHK\n #_02B63C: PLB\n\n #_02B63D: LDA.b $A9\n #_02B63F: EOR.b #$01\n #_02B641: STA.b $A9\n\n #_02B643: JSR Underworld_AdjustQuadrant\n\n #_02B646: LDX.b #$08\n\n #_02B648: JSR AdjustCameraBoundaries_DownOrRightQuadrant\n #_02B64B: JSR Underworld_SaveRoomData\n\n #_02B64E: LDA.b $A9\n #_02B650: JSR UnderworldTransition_AdjustCamera_Horizontal\n\n #_02B653: LDY.b #$02\n #_02B655: JSR HandleEdgeTransition_AdjustCameraBoundaries\n\n #_02B658: INC.b $11\n\n #_02B65A: LDA.b $A9\n #_02B65C: BNE .continue\n\n #_02B65E: LDX.b #$08\n #_02B660: JSR AdjustCameraBoundaries_DownOrRightWholeRoom\n\n #_02B663: LDA.b $A0\n #_02B665: STA.b $A2\n\n #_02B667: LDA.w $0114\n #_02B66A: AND.b #$CF\n #_02B66C: CMP.b #$89 ; TILETYPE 89\n #_02B66E: BNE .not_teleport_door\n\n #_02B670: LDA.l $7EC004\n #_02B674: STA.b $A0\n\n #_02B676: DEC A\n\n #_02B677: LDY.b #$01\n #_02B679: JSR Underworld_AdjustForTeleportDoors\n\n #_02B67C: BRA .continue_from_tele\n\n; ---------------------------------------------------------\n\n.not_teleport_door\n #_02B67E: LDA.w $048E\n #_02B681: CMP.b $A0\n #_02B683: BEQ .room_id_matches\n\n #_02B685: STA.b $A2\n\n #_02B687: JSR Underworld_AdjustCameraArbitrary\n\n.room_id_matches\n #_02B68A: INC.b $A0\n\n; ---------------------------------------------------------\n\n.continue_from_tele\n #_02B68C: INC.b $11\n\n #_02B68E: LDA.b $EF\n #_02B690: AND.b #$01\n #_02B692: BEQ .no_layer_swap\n\n #_02B694: LDA.b $EE\n #_02B696: EOR.b #$01\n #_02B698: STA.b $EE\n #_02B69A: STA.w $0476\n\n.no_layer_swap\n #_02B69D: LDA.b $EF\n #_02B69F: AND.b #$02\n #_02B6A1: BEQ .continue\n\n #_02B6A3: LDA.w $040C\n #_02B6A6: EOR.b #$02\n #_02B6A8: STA.w $040C\n\n; ---------------------------------------------------------\n\n.continue\n #_02B6AB: STZ.b $EF\n\n #_02B6AD: STZ.b $A7\n\n #_02B6AF: LDY.b #$08\n\n #_02B6B1: LDA.b $AA\n #_02B6B3: BNE .on_lower_half\n\n #_02B6B5: LDY.b #$04\n\n.on_lower_half\n #_02B6B7: STY.b $00\n\n #_02B6B9: LDA.w $0453\n #_02B6BC: BNE .set_layout\n\n #_02B6BE: LDX.b $A8\n\n #_02B6C0: LDA.w RoomQuadrantLayoutValues,X\n #_02B6C3: AND.b $00\n #_02B6C5: BNE .exit\n\n.set_layout\n #_02B6C7: LDA.b #$02\n #_02B6C9: STA.b $A7\n\n.exit\n #_02B6CB: PLB\n\n #_02B6CC: RTL", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementWest_LeftBy8", + "code": "HandleEdgeTransitionMovementWest_LeftBy8:\n #_02B6CD: REP #$20\n\n #_02B6CF: LDA.b $22\n #_02B6D1: SEC\n #_02B6D2: SBC.w #$0008\n #_02B6D5: STA.b $22\n\n #_02B6D7: SEP #$20\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementWest", + "code": "HandleEdgeTransitionMovementWest:\n #_02B6D9: PHB\n #_02B6DA: PHK\n #_02B6DB: PLB\n\n #_02B6DC: LDA.b $A9\n #_02B6DE: EOR.b #$01\n #_02B6E0: STA.b $A9\n\n #_02B6E2: JSR Underworld_AdjustQuadrant\n\n #_02B6E5: LDX.b #$08\n #_02B6E7: JSR AdjustCameraBoundaries_UpOrLeftQuadrant\n\n #_02B6EA: JSR Underworld_SaveRoomData\n\n #_02B6ED: LDA.b $A9\n #_02B6EF: EOR.b #$01\n #_02B6F1: JSR UnderworldTransition_AdjustCamera_Horizontal\n\n #_02B6F4: LDY.b #$03\n #_02B6F6: JSR HandleEdgeTransition_AdjustCameraBoundaries\n\n #_02B6F9: INC.b $11\n\n #_02B6FB: LDA.b $A9\n #_02B6FD: BEQ .continue\n\n #_02B6FF: LDX.b #$08\n #_02B701: JSR AdjustCameraBoundaries_UpOrLeftWholeRoom\n\n #_02B704: LDA.b $A0\n #_02B706: STA.b $A2\n\n #_02B708: LDA.w $0114\n #_02B70B: AND.b #$CF\n #_02B70D: CMP.b #$89 ; TILETYPE 89\n #_02B70F: BNE .not_teleport_door\n\n #_02B711: LDA.l $7EC003\n #_02B715: STA.b $A0\n\n #_02B717: INC A\n\n #_02B718: LDY.b #$FF\n #_02B71A: JSR Underworld_AdjustForTeleportDoors\n\n #_02B71D: BRA .continue_from_tele\n\n; ---------------------------------------------------------\n\n.not_teleport_door\n #_02B71F: LDA.w $048E\n #_02B722: CMP.b $A0\n #_02B724: BEQ .room_id_matches\n\n #_02B726: STA.b $A2\n\n #_02B728: JSR Underworld_AdjustCameraArbitrary\n\n.room_id_matches\n #_02B72B: DEC.b $A0\n\n; ---------------------------------------------------------\n\n.continue_from_tele\n #_02B72D: INC.b $11\n\n #_02B72F: LDA.b $EF\n #_02B731: AND.b #$01\n #_02B733: BEQ .no_layer_swap\n\n #_02B735: LDA.b $EE\n #_02B737: EOR.b #$01\n #_02B739: STA.b $EE\n #_02B73B: STA.w $0476\n\n.no_layer_swap\n #_02B73E: LDA.b $EF\n #_02B740: AND.b #$02\n #_02B742: BEQ .continue\n\n #_02B744: LDA.w $040C\n #_02B747: EOR.b #$02\n #_02B749: STA.w $040C\n\n; ---------------------------------------------------------\n\n.continue\n #_02B74C: STZ.b $EF\n #_02B74E: STZ.b $A7\n\n #_02B750: LDY.b #$08\n\n #_02B752: LDA.b $AA\n #_02B754: BNE .on_lower_half\n\n #_02B756: LDY.b #$04\n\n.on_lower_half\n #_02B758: STY.b $00\n\n #_02B75A: LDA.w $0453\n #_02B75D: BNE .set_layout\n\n #_02B75F: LDX.b $A8\n\n #_02B761: LDA.w RoomQuadrantLayoutValues,X\n #_02B764: AND.b $00\n #_02B766: BNE .exit\n\n.set_layout\n #_02B768: LDA.b #$02\n #_02B76A: STA.b $A7\n\n.exit\n #_02B76C: PLB\n\n #_02B76D: RTL", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementSouth_DownBy16", + "code": "HandleEdgeTransitionMovementSouth_DownBy16:\n #_02B76E: REP #$20\n\n #_02B770: LDA.b $20\n #_02B772: CLC\n #_02B773: ADC.w #$0010\n #_02B776: STA.b $20\n\n #_02B778: SEP #$20\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementSouth", + "code": "HandleEdgeTransitionMovementSouth:\n #_02B77A: PHB\n #_02B77B: PHK\n #_02B77C: PLB\n\n #_02B77D: LDA.b $AA\n #_02B77F: EOR.b #$02\n #_02B781: STA.b $AA\n\n #_02B783: JSR Underworld_AdjustQuadrant\n\n #_02B786: LDX.b #$00\n #_02B788: JSR AdjustCameraBoundaries_DownOrRightQuadrant\n\n #_02B78B: JSR Underworld_SaveRoomData\n\n #_02B78E: LDA.b $AA\n #_02B790: JSR UnderworldTransition_AdjustCamera_Vertical\n\n #_02B793: LDY.b #$00\n #_02B795: JSR HandleEdgeTransition_AdjustCameraBoundaries\n\n #_02B798: INC.b $11\n\n #_02B79A: LDA.b $AA\n #_02B79C: BNE .continue\n\n #_02B79E: LDX.b #$00\n #_02B7A0: JSR AdjustCameraBoundaries_DownOrRightWholeRoom\n\n #_02B7A3: LDA.b $A0\n #_02B7A5: STA.b $A2\n\n #_02B7A7: LDA.w $0114\n #_02B7AA: CMP.b #$8E ; TILETYPE 8E\n #_02B7AC: BNE .not_entrance\n\n; =========================================================\n\n#PrepForOverworldExit:\n #_02B7AE: JSL SaveDungeonKeys\n #_02B7B2: JSL SaveVisitedQuadrantFlags\n\n #_02B7B6: LDA.b #$08\n #_02B7B8: STA.w $010C\n\n #_02B7BB: LDA.b #$0F\n #_02B7BD: STA.b $10\n #_02B7BF: STZ.b $11\n\n #_02B7C1: STZ.b $B0\n\n #_02B7C3: JSR DeleteCertainAncillaeStopDashing\n\n #_02B7C6: PLB\n\n #_02B7C7: RTL", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransitionMovementNorth", + "code": "HandleEdgeTransitionMovementNorth:\n #_02B81C: PHB\n #_02B81D: PHK\n #_02B81E: PLB\n\n #_02B81F: LDA.b $AA\n #_02B821: EOR.b #$02\n #_02B823: STA.b $AA\n\n #_02B825: JSR Underworld_AdjustQuadrant\n\n #_02B828: LDX.b #$00\n #_02B82A: JSR AdjustCameraBoundaries_UpOrLeftQuadrant\n\n #_02B82D: JSR Underworld_SaveRoomData\n\n #_02B830: LDA.b $AA\n #_02B832: EOR.b #$02\n #_02B834: JSR UnderworldTransition_AdjustCamera_Vertical\n\n #_02B837: LDY.b #$01\n #_02B839: JSR HandleEdgeTransition_AdjustCameraBoundaries\n\n #_02B83C: INC.b $11\n\n #_02B83E: LDA.b $AA\n #_02B840: BEQ .continue\n\n #_02B842: LDX.b #$00\n #_02B844: JSR AdjustCameraBoundaries_UpOrLeftWholeRoom\n\n #_02B847: LDA.b $A0\n #_02B849: STA.b $A2\n\n #_02B84B: LDA.w $0114\n #_02B84E: CMP.b #$8E ; TILETYPE 8E\n #_02B850: BNE .not_entrance\n\n #_02B852: JMP.w PrepForOverworldExit\n\n.not_entrance\n #_02B855: LDA.b $A0 ; ROOM 0000\n #_02B857: ORA.b $A1\n #_02B859: BNE .not_ganon_room\n\n #_02B85B: JSL SaveDungeonKeys\n\n #_02B85F: LDA.b #$19\n #_02B861: STA.b $10\n #_02B863: STZ.b $11\n\n #_02B865: STZ.b $B0\n\n #_02B867: PLB\n\n #_02B868: RTL", + "file": "bank_02.asm" + }, + { + "name": "AdjustQuadrantAndCamera_right", + "code": "AdjustQuadrantAndCamera_right:\n #_02B8BD: LDA.b $A9\n #_02B8BF: EOR.b #$01\n #_02B8C1: STA.b $A9\n\n #_02B8C3: JSR Underworld_AdjustQuadrant\n\n #_02B8C6: LDX.b #$08\n #_02B8C8: JSR AdjustCameraBoundaries_DownOrRightQuadrant\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "SetAndSaveVisitedQuadrantFlags", + "code": "SetAndSaveVisitedQuadrantFlags:\n #_02B8CB: LDA.b $A7\n #_02B8CD: ASL A\n #_02B8CE: ASL A\n #_02B8CF: STA.b $00\n\n #_02B8D1: LDA.b $A6\n #_02B8D3: ASL A\n #_02B8D4: ORA.b $00\n #_02B8D6: ORA.b $AA\n #_02B8D8: ORA.b $A9\n #_02B8DA: TAX\n\n #_02B8DB: LDA.l QuadrantLayoutFlagBitfield,X\n #_02B8DF: ORA.w $0408\n #_02B8E2: STA.w $0408\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "SaveVisitedQuadrantFlags", + "code": "SaveVisitedQuadrantFlags:\n #_02B8E5: REP #$30\n\n #_02B8E7: LDA.b $A0\n #_02B8E9: ASL A\n #_02B8EA: TAX\n\n #_02B8EB: LDA.l $7EF000,X\n #_02B8EF: ORA.w $0408\n #_02B8F2: STA.l $7EF000,X\n\n #_02B8F6: SEP #$30\n\n #_02B8F8: RTL", + "file": "bank_02.asm" + }, + { + "name": "AdjustQuadrantAndCamera_left", + "code": "AdjustQuadrantAndCamera_left:\n #_02B8F9: LDA.b $A9\n #_02B8FB: EOR.b #$01\n #_02B8FD: STA.b $A9\n\n #_02B8FF: JSR Underworld_AdjustQuadrant\n\n #_02B902: LDX.b #$08\n #_02B904: JSR AdjustCameraBoundaries_UpOrLeftQuadrant\n\n #_02B907: BRA SetAndSaveVisitedQuadrantFlags\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "AdjustQuadrantAndCamera_down", + "code": "AdjustQuadrantAndCamera_down:\n #_02B909: LDA.b $AA\n #_02B90B: EOR.b #$02\n #_02B90D: STA.b $AA\n\n #_02B90F: JSR Underworld_AdjustQuadrant\n\n #_02B912: LDX.b #$00\n #_02B914: JSR AdjustCameraBoundaries_DownOrRightQuadrant\n\n #_02B917: BRA SetAndSaveVisitedQuadrantFlags\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "AdjustQuadrantAndCamera_up", + "code": "AdjustQuadrantAndCamera_up:\n #_02B919: LDA.b $AA\n #_02B91B: EOR.b #$02\n #_02B91D: STA.b $AA\n\n #_02B91F: JSR Underworld_AdjustQuadrant\n\n #_02B922: LDX.b #$00\n #_02B924: JSR AdjustCameraBoundaries_UpOrLeftQuadrant\n\n #_02B927: BRA SetAndSaveVisitedQuadrantFlags\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_FlagRoomData_Quadrants", + "code": "Underworld_FlagRoomData_Quadrants:\n #_02B929: LDA.b $A7\n #_02B92B: ASL A\n #_02B92C: ASL A\n #_02B92D: STA.b $00\n\n #_02B92F: LDA.b $A6\n #_02B931: ASL A\n #_02B932: ORA.b $00\n #_02B934: ORA.b $AA\n #_02B936: ORA.b $A9\n #_02B938: TAX\n\n #_02B939: LDA.l QuadrantLayoutFlagBitfield,X\n #_02B93D: ORA.w $0408\n #_02B940: STA.w $0408\n\n #_02B943: JSR Underworld_SaveRoomData\n\n #_02B946: RTL", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SaveRoomData", + "code": "Underworld_SaveRoomData:\n #_02B947: REP #$30\n\n #_02B949: LDA.b $A0\n #_02B94B: ASL A\n #_02B94C: TAX\n\n #_02B94D: LDA.w $0402\n #_02B950: LSR A\n #_02B951: LSR A\n #_02B952: LSR A\n #_02B953: LSR A\n #_02B954: STA.b $06\n\n #_02B956: LDA.w $0400\n #_02B959: AND.w #$F000\n\n #_02B95C: ORA.w $0408\n #_02B95F: ORA.b $06\n\n #_02B961: STA.l $7EF000,X\n\n #_02B965: SEP #$30\n\n #_02B967: RTS", + "file": "bank_02.asm" + }, + { + "name": "AdjustCameraBoundaries_DownOrRightQuadrant", + "code": "AdjustCameraBoundaries_DownOrRightQuadrant:\n #_02B968: REP #$20\n\n #_02B96A: LDA.w $0600,X\n #_02B96D: CLC\n #_02B96E: ADC.w #$0100\n #_02B971: STA.w $0600,X\n\n #_02B974: LDA.w $0604,X\n #_02B977: CLC\n #_02B978: ADC.w #$0100\n #_02B97B: STA.w $0604,X\n\n #_02B97E: SEP #$20\n\n #_02B980: RTS", + "file": "bank_02.asm" + }, + { + "name": "AdjustCameraBoundaries_DownOrRightWholeRoom", + "code": "AdjustCameraBoundaries_DownOrRightWholeRoom:\n #_02B981: REP #$20\n\n #_02B983: LDA.w $0602,X\n #_02B986: CLC\n #_02B987: ADC.w #$0200\n #_02B98A: STA.w $0602,X\n\n #_02B98D: LDA.w $0606,X\n #_02B990: CLC\n #_02B991: ADC.w #$0200\n #_02B994: STA.w $0606,X\n\n #_02B997: SEP #$20\n\n #_02B999: RTS", + "file": "bank_02.asm" + }, + { + "name": "AdjustCameraBoundaries_UpOrLeftQuadrant", + "code": "AdjustCameraBoundaries_UpOrLeftQuadrant:\n #_02B99A: REP #$20\n\n #_02B99C: LDA.w $0600,X\n #_02B99F: SEC\n #_02B9A0: SBC.w #$0100\n #_02B9A3: STA.w $0600,X\n\n #_02B9A6: LDA.w $0604,X\n #_02B9A9: SEC\n #_02B9AA: SBC.w #$0100\n #_02B9AD: STA.w $0604,X\n\n #_02B9B0: SEP #$20\n\n #_02B9B2: RTS", + "file": "bank_02.asm" + }, + { + "name": "AdjustCameraBoundaries_UpOrLeftWholeRoom", + "code": "AdjustCameraBoundaries_UpOrLeftWholeRoom:\n #_02B9B3: REP #$20\n\n #_02B9B5: LDA.w $0602,X\n #_02B9B8: SEC\n #_02B9B9: SBC.w #$0200\n #_02B9BC: STA.w $0602,X\n\n #_02B9BF: LDA.w $0606,X\n #_02B9C2: SEC\n #_02B9C3: SBC.w #$0200\n #_02B9C6: STA.w $0606,X\n\n #_02B9C9: SEP #$20\n\n #_02B9CB: RTS", + "file": "bank_02.asm" + }, + { + "name": "HandleEdgeTransition_AdjustCameraBoundaries", + "code": "HandleEdgeTransition_AdjustCameraBoundaries:\n #_02B9DC: STY.w $0418\n\n #_02B9DF: LDA.b $67\n #_02B9E1: AND.b #$03\n #_02B9E3: BEQ .nothorizontal\n\n #_02B9E5: REP #$20\n\n #_02B9E7: LDX.b #$04\n\n #_02B9E9: LDA.b $67\n #_02B9EB: AND.w #$0001\n #_02B9EE: BEQ .not_right\n\n #_02B9F0: LDX.b #$00\n\n.not_right\n #_02B9F2: LDY.b $A9\n #_02B9F4: BEQ .west_side\n\n #_02B9F6: INX\n #_02B9F7: INX\n\n.west_side\n #_02B9F8: LDA.w .horizontal_boundaries,X\n #_02B9FB: STA.w $061C\n\n #_02B9FE: INC A\n #_02B9FF: INC A\n #_02BA00: STA.w $061E\n\n #_02BA03: SEP #$20\n\n #_02BA05: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_AdjustQuadrant", + "code": "Underworld_AdjustQuadrant:\n #_02BA27: LDA.w $040E\n #_02BA2A: ORA.b $AA\n #_02BA2C: ORA.b $A9\n #_02BA2E: STA.b $A8\n\n #_02BA30: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_HandleCamera", + "code": "Underworld_HandleCamera:\n #_02BA31: REP #$20\n\n #_02BA33: LDA.w #$0001\n #_02BA36: STA.b $00\n\n #_02BA38: LDA.b $78\n #_02BA3A: AND.w #$00FF\n #_02BA3D: BEQ .dont_zero\n\n #_02BA3F: LDA.b $24\n #_02BA41: CMP.w #$FFFF\n #_02BA44: BNE .dont_zero\n\n #_02BA46: LDA.w #$0000\n\n.dont_zero\n #_02BA49: STA.b $0E\n\n #_02BA4B: LDA.b $20\n #_02BA4D: SEC\n #_02BA4E: SBC.b $0E\n #_02BA50: AND.w #$01FF\n\n #_02BA53: CLC\n #_02BA54: ADC.w #$000C\n #_02BA57: STA.b $0E\n\n; ---------------------------------------------------------\n\n #_02BA59: LDA.b $30\n #_02BA5B: AND.w #$00FF\n #_02BA5E: BEQ .no_vertical_movement\n\n #_02BA60: LDX.b $A7\n #_02BA62: CMP.w #$0080\n #_02BA65: BCC .moving_down_a\n\n #_02BA67: EOR.w #$00FF\n #_02BA6A: INC A\n\n #_02BA6B: DEC.b $00\n #_02BA6D: DEC.b $00\n\n.moving_down_a\n #_02BA6F: TAY\n\n; ---------------------------------------------------------\n\n.next_vertical\n #_02BA70: LDX.b $A7\n\n #_02BA72: LDA.b $30\n #_02BA74: AND.w #$00FF\n #_02BA77: CMP.w #$0080\n #_02BA7A: BCC .moving_down_b\n\n #_02BA7C: LDA.w $0618\n #_02BA7F: CMP.b $0E\n #_02BA81: BCS .continue_vertically\n #_02BA83: BCC .dont_scroll_vertically\n\n.moving_down_b\n #_02BA85: LDA.b $0E\n #_02BA87: CMP.w $061A\n #_02BA8A: BCC .dont_scroll_vertically\n\n #_02BA8C: INX\n #_02BA8D: INX\n #_02BA8E: INX\n #_02BA8F: INX\n\n.continue_vertically\n #_02BA90: LDA.b $E8\n #_02BA92: CMP.w $0600,X\n #_02BA95: BEQ .dont_scroll_vertically\n\n #_02BA97: CLC\n #_02BA98: ADC.b $00\n #_02BA9A: STA.b $E8\n\n #_02BA9C: LDA.b $A0\n #_02BA9E: CMP.w #$FFFF\n #_02BAA1: BEQ .dont_scroll_vertically\n\n #_02BAA3: LDA.b $00\n #_02BAA5: STZ.b $04\n #_02BAA7: LSR A\n #_02BAA8: ROR.b $04\n\n #_02BAAA: CMP.w #$7000\n #_02BAAD: BCC .dont_invert_vertically\n\n #_02BAAF: ORA.w #$F000\n\n.dont_invert_vertically\n #_02BAB2: STA.b $06\n\n #_02BAB4: LDA.w $0622\n #_02BAB7: CLC\n #_02BAB8: ADC.b $04\n #_02BABA: STA.w $0622\n\n #_02BABD: LDA.b $E6\n #_02BABF: ADC.b $06\n #_02BAC1: STA.b $E6\n\n #_02BAC3: LDA.w $0618\n #_02BAC6: CLC\n #_02BAC7: ADC.b $00\n #_02BAC9: STA.w $0618\n\n #_02BACC: INC A\n #_02BACD: INC A\n #_02BACE: STA.w $061A\n\n.dont_scroll_vertically\n #_02BAD1: DEY\n #_02BAD2: BNE .next_vertical\n\n; ---------------------------------------------------------\n\n.no_vertical_movement\n #_02BAD4: LDA.w #$0001\n #_02BAD7: STA.b $00\n\n #_02BAD9: LDA.b $22\n #_02BADB: AND.w #$01FF\n #_02BADE: CLC\n #_02BADF: ADC.w #$0008\n #_02BAE2: STA.b $0E\n\n #_02BAE4: LDA.b $31\n #_02BAE6: AND.w #$00FF\n #_02BAE9: BEQ .no_horizontal_scroll\n\n #_02BAEB: LDX.b $A6\n #_02BAED: CMP.w #$0080\n #_02BAF0: BCC .moving_right_a\n\n #_02BAF2: EOR.w #$00FF\n #_02BAF5: INC A\n #_02BAF6: DEC.b $00\n #_02BAF8: DEC.b $00\n\n.moving_right_a\n #_02BAFA: TAY\n\n; ---------------------------------------------------------\n\n.next_horizontal\n #_02BAFB: LDX.b $A6\n\n #_02BAFD: LDA.b $31\n #_02BAFF: AND.w #$00FF\n #_02BB02: CMP.w #$0080\n #_02BB05: BCC .moving_right_b\n\n #_02BB07: LDA.w $061C\n #_02BB0A: CMP.b $0E\n #_02BB0C: BCS .continue_horizontally\n #_02BB0E: BCC .dont_scroll_horizontally\n\n.moving_right_b\n #_02BB10: LDA.b $0E\n #_02BB12: CMP.w $061E\n #_02BB15: BCC .dont_scroll_horizontally\n\n #_02BB17: INX\n #_02BB18: INX\n #_02BB19: INX\n #_02BB1A: INX\n\n.continue_horizontally\n #_02BB1B: LDA.b $E2\n #_02BB1D: CMP.w $0608,X\n #_02BB20: BEQ .dont_scroll_horizontally\n\n #_02BB22: CLC\n #_02BB23: ADC.b $00\n #_02BB25: STA.b $E2\n\n #_02BB27: LDA.b $A0\n #_02BB29: CMP.w #$FFFF\n #_02BB2C: BEQ .dont_scroll_horizontally\n\n #_02BB2E: LDA.b $00\n #_02BB30: STZ.b $04\n\n #_02BB32: LSR A\n #_02BB33: ROR.b $04\n #_02BB35: CMP.w #$7000\n #_02BB38: BCC .dont_invert_horizontally\n\n #_02BB3A: ORA.w #$F000\n\n; ---------------------------------------------------------\n\n.dont_invert_horizontally\n #_02BB3D: STA.b $06\n\n #_02BB3F: LDA.w $0620\n #_02BB42: CLC\n #_02BB43: ADC.b $04\n #_02BB45: STA.w $0620\n\n #_02BB48: LDA.b $E0\n #_02BB4A: ADC.b $06\n #_02BB4C: STA.b $E0\n\n #_02BB4E: LDA.w $061C\n #_02BB51: CLC\n #_02BB52: ADC.b $00\n #_02BB54: STA.w $061C\n\n #_02BB57: INC A\n #_02BB58: INC A\n #_02BB59: STA.w $061E\n\n.dont_scroll_horizontally\n #_02BB5C: DEY\n #_02BB5D: BNE .next_horizontal\n\n; ---------------------------------------------------------\n\n.no_horizontal_scroll\n #_02BB5F: LDA.b $A0\n #_02BB61: CMP.w #$FFFF\n #_02BB64: BEQ .exit\n\n #_02BB66: LDX.w $0414\n #_02BB69: BEQ UnderworldSyncBG1and2Scroll\n\n #_02BB6B: CPX.b #$06\n #_02BB6D: BCS UnderworldSyncBG1and2Scroll\n\n #_02BB6F: CPX.b #$04\n #_02BB71: BEQ UnderworldSyncBG1and2Scroll\n\n #_02BB73: CPX.b #$03\n #_02BB75: BEQ UnderworldSyncBG1and2Scroll\n\n #_02BB77: CPX.b #$02\n #_02BB79: BNE .exit\n\n; =========================================================\n\n#UnderworldSyncBG1and2Scroll:\n #_02BB7B: REP #$20\n\n #_02BB7D: LDA.b $E2\n #_02BB7F: STA.b $E0\n\n #_02BB81: LDA.b $E8\n #_02BB83: STA.b $E6\n\n.exit\n #_02BB85: SEP #$20\n\n #_02BB87: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldTransitionDirections", + "code": "OverworldTransitionDirections:\n #_02BB88: dw $0008 ; up\n #_02BB8A: dw $0004 ; down\n #_02BB8C: dw $0002 ; left\n #_02BB8E: dw $0001 ; right\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_OperateCameraScroll", + "code": "Overworld_OperateCameraScroll:\n #_02BB90: PHB\n #_02BB91: PHK\n #_02BB92: PLB\n\n #_02BB93: REP #$20\n\n #_02BB95: LDA.b $78\n #_02BB97: AND.w #$00FF\n #_02BB9A: BEQ .not_grounded\n\n #_02BB9C: LDA.b $24\n #_02BB9E: CMP.w #$FFFF\n #_02BBA1: BNE .not_grounded\n\n #_02BBA3: LDA.w #$0000\n\n.not_grounded\n #_02BBA6: STA.b $0E\n\n #_02BBA8: LDA.b $20\n #_02BBAA: SEC\n #_02BBAB: SBC.b $0E\n #_02BBAD: CLC\n #_02BBAE: ADC.w #$000C\n #_02BBB1: STA.b $0E\n\n #_02BBB3: LDA.w #$0001\n #_02BBB6: STA.b $00\n\n #_02BBB8: LDA.b $30\n #_02BBBA: AND.w #$00FF\n #_02BBBD: BNE .moving_vertically\n\n #_02BBBF: JMP.w .handle_x_camera\n\n.moving_vertically\n #_02BBC2: STZ.b $04\n\n #_02BBC4: CMP.w #$0080\n #_02BBC7: BCC .positive_vy\n\n #_02BBC9: EOR.w #$00FF\n #_02BBCC: INC A\n\n #_02BBCD: DEC.b $00\n #_02BBCF: DEC.b $00\n\n.positive_vy\n #_02BBD1: STA.b $02\n\n #_02BBD3: STZ.b $08\n\n; ---------------------------------------------------------\n\n.next_camera_shift_y\n #_02BBD5: LDA.b $30\n #_02BBD7: AND.w #$00FF\n #_02BBDA: CMP.w #$0080\n #_02BBDD: BCC .positive_vy_2\n\n #_02BBDF: LDA.w $0618\n #_02BBE2: CMP.b $0E\n #_02BBE4: BCC .skip_camera_check_y\n\n #_02BBE6: LDY.b #$00\n #_02BBE8: BRA .check_camera_y\n\n.positive_vy_2\n #_02BBEA: LDA.b $0E\n #_02BBEC: CMP.w $061A\n #_02BBEF: BCC .skip_camera_check_y\n\n #_02BBF1: LDY.b #$02\n\n.check_camera_y\n #_02BBF3: LDX.b #$06\n #_02BBF5: JSR OverworldCameraBoundaryCheck\n\n.skip_camera_check_y\n #_02BBF8: DEC.b $02\n #_02BBFA: BNE .next_camera_shift_y\n\n; ---------------------------------------------------------\n\n #_02BBFC: LDA.b $04\n #_02BBFE: STA.w $069E\n\n #_02BC01: LDX.b $8C\n #_02BC03: CPX.b #$97 ; OW 97\n #_02BC05: BEQ .handle_x_camera\n\n #_02BC07: CPX.b #$9D ; OW 9D\n #_02BC09: BEQ .handle_x_camera\n\n #_02BC0B: LDA.b $04\n #_02BC0D: BEQ .handle_x_camera\n\n #_02BC0F: STZ.b $00\n #_02BC11: LSR A\n #_02BC12: ROR.b $00\n\n #_02BC14: LDX.b $8C\n #_02BC16: CPX.b #$B5 ; OW B5\n #_02BC18: BEQ .garbage_overlay\n\n #_02BC1A: CPX.b #$BE ; OW BE\n #_02BC1C: BNE .not_garbage_overlay\n\n.garbage_overlay\n #_02BC1E: LSR A\n #_02BC1F: ROR.b $00\n #_02BC21: CMP.w #$3000\n #_02BC24: BCC .set_scroll_add_y\n\n #_02BC26: ORA.w #$F000\n #_02BC29: BRA .set_scroll_add_y\n\n.not_garbage_overlay\n #_02BC2B: CMP.w #$7000\n #_02BC2E: BCC .set_scroll_add_y\n\n #_02BC30: ORA.w #$F000\n\n.set_scroll_add_y\n #_02BC33: STA.b $06\n\n #_02BC35: LDA.w $0622\n #_02BC38: CLC\n #_02BC39: ADC.b $00\n #_02BC3B: STA.w $0622\n\n #_02BC3E: LDA.b $E6\n #_02BC40: ADC.b $06\n #_02BC42: STA.b $E6\n\n #_02BC44: LDA.b $8A\n #_02BC46: AND.w #$003F\n #_02BC49: CMP.w #$001B ; OW 1B, OW 5B\n #_02BC4C: BNE .handle_x_camera\n\n #_02BC4E: LDA.w #$0600\n #_02BC51: CMP.b $E6\n #_02BC53: BCC .camera_too_low_y\n\n #_02BC55: STA.b $E6\n\n.camera_too_low_y\n #_02BC57: LDA.w #$06C0\n #_02BC5A: CMP.b $E6\n #_02BC5C: BCS .handle_x_camera\n\n #_02BC5E: STA.b $E6\n\n; ---------------------------------------------------------\n\n.handle_x_camera\n #_02BC60: LDA.b $22\n #_02BC62: CLC\n #_02BC63: ADC.w #$0008\n #_02BC66: STA.b $0E\n\n #_02BC68: LDA.w #$0001\n #_02BC6B: STA.b $00\n\n #_02BC6D: LDA.b $31\n #_02BC6F: AND.w #$00FF\n #_02BC72: BNE .moving_horizontally\n\n #_02BC74: JMP.w OverworldHandleBGOverlayScroll\n\n.moving_horizontally\n #_02BC77: STZ.b $04\n\n #_02BC79: CMP.w #$0080\n #_02BC7C: BCC .positive_vx\n\n #_02BC7E: EOR.w #$00FF\n #_02BC81: INC A\n\n #_02BC82: DEC.b $00\n #_02BC84: DEC.b $00\n\n.positive_vx\n #_02BC86: STA.b $02\n\n #_02BC88: LDX.b #$04\n #_02BC8A: STX.b $08\n\n; ---------------------------------------------------------\n\n.next_camera_shift_x\n #_02BC8C: LDA.b $31\n #_02BC8E: AND.w #$00FF\n #_02BC91: CMP.w #$0080\n #_02BC94: BCC .positive_vx_2\n\n #_02BC96: LDA.w $061C\n #_02BC99: CMP.b $0E\n #_02BC9B: BCC .skip_camera_check_x\n\n #_02BC9D: LDY.b #$04\n #_02BC9F: BRA .check_camera_x\n\n.positive_vx_2\n #_02BCA1: LDA.b $0E\n #_02BCA3: CMP.w $061E\n #_02BCA6: BCC .skip_camera_check_x\n\n #_02BCA8: LDY.b #$06\n\n.check_camera_x\n #_02BCAA: LDX.b #$00\n #_02BCAC: JSR OverworldCameraBoundaryCheck\n\n.skip_camera_check_x\n #_02BCAF: DEC.b $02\n #_02BCB1: BNE .next_camera_shift_x\n\n; ---------------------------------------------------------\n\n #_02BCB3: LDA.b $04\n #_02BCB5: STA.w $069F\n\n #_02BCB8: LDX.b $8C\n #_02BCBA: CPX.b #$97 ; OW 97\n #_02BCBC: BEQ OverworldHandleBGOverlayScroll\n\n #_02BCBE: CPX.b #$9D ; OW 9D\n #_02BCC0: BEQ OverworldHandleBGOverlayScroll\n\n #_02BCC2: LDA.b $04\n #_02BCC4: BEQ OverworldHandleBGOverlayScroll\n\n #_02BCC6: STZ.b $00\n #_02BCC8: LSR A\n #_02BCC9: ROR.b $00\n\n #_02BCCB: LDX.b $8C\n #_02BCCD: CPX.b #$95 ; OW 95\n #_02BCCF: BEQ .dm_overlay\n\n #_02BCD1: CPX.b #$9E ; OW 9E\n #_02BCD3: BNE .not_clear_lw_overlay\n\n.dm_overlay\n #_02BCD5: LSR A\n #_02BCD6: ROR.b $00\n #_02BCD8: CMP.w #$3000\n #_02BCDB: BCC .set_scroll_add_x\n\n #_02BCDD: ORA.w #$F000\n #_02BCE0: BRA .set_scroll_add_x\n\n.not_clear_lw_overlay\n #_02BCE2: CMP.w #$7000\n #_02BCE5: BCC .set_scroll_add_x\n\n #_02BCE7: ORA.w #$F000\n\n.set_scroll_add_x\n #_02BCEA: STA.b $06\n\n #_02BCEC: LDA.w $0620\n #_02BCEF: CLC\n #_02BCF0: ADC.b $00\n #_02BCF2: STA.w $0620\n\n #_02BCF5: LDA.b $E0\n #_02BCF7: ADC.b $06\n #_02BCF9: STA.b $E0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldHandleBGOverlayScroll", + "code": "OverworldHandleBGOverlayScroll:\n #_02BCFB: LDX.b $8A\n #_02BCFD: CPX.b #$47 ; OW 47\n #_02BCFF: BEQ .no_overlay_scroll\n\n #_02BD01: LDX.b $8C\n #_02BD03: CPX.b #$9C ; OW 9C\n #_02BD05: BEQ .dark_dm_overlay_scroll\n\n #_02BD07: CPX.b #$97 ; OW 97\n #_02BD09: BEQ .grove_fog_scroll\n\n #_02BD0B: CPX.b #$9D ; OW 9D\n #_02BD0D: BNE .no_overlay_scroll\n\n.grove_fog_scroll\n #_02BD0F: LDA.w $0622\n #_02BD12: CLC\n #_02BD13: ADC.w #$2000\n #_02BD16: STA.w $0622\n\n #_02BD19: LDA.b $E6\n #_02BD1B: ADC.w #$0000\n #_02BD1E: STA.b $E6\n\n #_02BD20: LDA.w $0620\n #_02BD23: CLC\n #_02BD24: ADC.w #$2000\n #_02BD27: STA.w $0620\n\n #_02BD2A: LDA.b $E0\n #_02BD2C: ADC.w #$0000\n #_02BD2F: STA.b $E0\n\n #_02BD31: BRA .no_overlay_scroll\n\n.dark_dm_overlay_scroll\n #_02BD33: LDA.w $0622\n #_02BD36: SEC\n #_02BD37: SBC.w #$2000\n #_02BD3A: STA.w $0622\n\n #_02BD3D: LDA.b $E6\n #_02BD3F: SBC.w #$0000\n #_02BD42: CLC\n #_02BD43: ADC.w $069E\n #_02BD46: STA.b $E6\n\n #_02BD48: LDA.b $E2\n #_02BD4A: STA.b $E0\n\n.no_overlay_scroll\n #_02BD4C: LDA.b $A0\n #_02BD4E: CMP.w #$0181 ; OW 81\n #_02BD51: BNE .exit\n\n #_02BD53: LDA.b $E8\n #_02BD55: ORA.w #$0100\n #_02BD58: STA.b $E6\n\n #_02BD5A: LDA.b $E2\n #_02BD5C: STA.b $E0\n\n.exit\n #_02BD5E: SEP #$20\n\n #_02BD60: PLB\n\n #_02BD61: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldCameraBoundaryCheck", + "code": "OverworldCameraBoundaryCheck:\n #_02BD62: LDA.b $E2,X\n #_02BD64: CMP.w $0600,Y\n #_02BD67: BNE .not_at_boundary\n\n #_02BD69: TYA\n #_02BD6A: EOR.w #$0002\n #_02BD6D: TAX\n\n #_02BD6E: LDA.w #$0000\n #_02BD71: STA.w $0624,Y\n #_02BD74: STA.w $0624,X\n\n #_02BD77: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_AdjustCamera_Horizontal", + "code": "UnderworldTransition_AdjustCamera_Horizontal:\n #_02BDC8: ASL A\n #_02BDC9: ASL A\n #_02BDCA: TAY\n\n #_02BDCB: LDX.b #$00\n\n.next\n #_02BDCD: LDA.w .boundary,Y\n #_02BDD0: STA.w $0614,X\n\n #_02BDD3: INY\n\n #_02BDD4: INX\n #_02BDD5: CPX.b #$04\n #_02BDD7: BNE .next\n\n #_02BDD9: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_AdjustCamera_Vertical", + "code": "UnderworldTransition_AdjustCamera_Vertical:\n #_02BDE2: ASL A\n #_02BDE3: TAY\n\n #_02BDE4: LDX.b #$00\n\n.next\n #_02BDE6: LDA.w .boundary,Y\n #_02BDE9: STA.w $0610,X\n\n #_02BDEC: INY\n\n #_02BDED: INX\n #_02BDEE: CPX.b #$04\n #_02BDF0: BNE .next\n\n #_02BDF2: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_ScrollRoom", + "code": "UnderworldTransition_ScrollRoom:\n #_02BE03: PHB\n #_02BE04: PHK\n #_02BE05: PLB\n\n #_02BE06: INC.w $0126\n\n #_02BE09: LDA.w $0418\n #_02BE0C: ASL A\n #_02BE0D: TAY\n\n #_02BE0E: REP #$20\n\n #_02BE10: STZ.w $011A\n #_02BE13: STZ.w $011C\n\n #_02BE16: LDX.b #$00\n #_02BE18: CPY.b #$04\n #_02BE1A: BCS .scrolling_horizontally\n\n #_02BE1C: LDX.b #$06\n\n.scrolling_horizontally\n #_02BE1E: LDA.b $E2,X\n #_02BE20: CLC\n #_02BE21: ADC.w .camera_scroll,Y\n #_02BE24: AND.w #$FFFE\n #_02BE27: STA.b $E2,X\n #_02BE29: STA.b $E0,X\n #_02BE2B: STA.b $00\n\n; ---------------------------------------------------------\n\n #_02BE2D: LDX.b #$00\n #_02BE2F: CPY.b #$04\n #_02BE31: BCC .scrolling_vertically\n\n #_02BE33: LDX.b #$02\n\n.scrolling_vertically\n #_02BE35: LDA.w $0126\n #_02BE38: AND.w #$00FF\n #_02BE3B: CMP.w .boundaries,Y\n #_02BE3E: BCC .keep_walking\n\n #_02BE40: LDA.b $20,X\n #_02BE42: CLC\n #_02BE43: ADC.w .camera_scroll,Y\n #_02BE46: STA.b $20,X\n\n.keep_walking\n #_02BE48: LDA.b $00\n #_02BE4A: AND.w #$01FC\n #_02BE4D: CMP.w $0610,Y\n #_02BE50: BNE .dirty_exit\n\n #_02BE52: SEP #$20\n\n #_02BE54: JSL SetAndSaveVisitedQuadrantFlags\n\n #_02BE58: PLB\n\n #_02BE59: INC.b $B0\n\n #_02BE5B: STZ.w $0126\n\n #_02BE5E: LDA.b $11\n #_02BE60: CMP.b #$02\n #_02BE62: BNE .clean_exit\n\n #_02BE64: JSL WaterFlood_BuildOneQuadrantForVRAM\n\n #_02BE68: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_11_0A_ScrollCamera", + "code": "Module07_11_0A_ScrollCamera:\n #_02BE75: PHB\n #_02BE76: PHK\n #_02BE77: PLB\n\n #_02BE78: LDA.b #$0C\n #_02BE7A: STA.b $4B\n #_02BE7C: STA.w $02F9\n\n #_02BE7F: LDA.w $0418\n #_02BE82: ASL A\n #_02BE83: TAX\n\n #_02BE84: REP #$20\n\n #_02BE86: LDA.b $E8\n #_02BE88: CLC\n #_02BE89: ADC.w UnderworldTransition_ScrollRoom_camera_scroll,X\n #_02BE8C: AND.w #$FFFC\n #_02BE8F: STA.b $E8\n #_02BE91: STA.b $E6\n\n #_02BE93: AND.w #$01FC\n #_02BE96: CMP.w $0610,X\n #_02BE99: BNE .exit\n\n; ---------------------------------------------------------\n\n #_02BE9B: LDY.b $11\n\n #_02BE9D: CPY.b #$12\n #_02BE9F: BCC .set_a\n\n #_02BEA1: INX\n #_02BEA2: INX\n #_02BEA3: INX\n #_02BEA4: INX\n\n.set_a\n #_02BEA5: LDA.b $20\n #_02BEA7: CLC\n #_02BEA8: ADC.w .offset,X\n #_02BEAB: STA.b $20\n\n #_02BEAD: SEP #$20\n\n; ---------------------------------------------------------\n\n #_02BEAF: STZ.b $4B\n #_02BEB1: STZ.w $02F9\n\n #_02BEB4: INC.b $B0\n\n.exit\n #_02BEB6: SEP #$20\n\n #_02BEB8: PLB\n\n #_02BEB9: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldScrollTransition_dirty_exit", + "code": "OverworldScrollTransition_dirty_exit:\n #_02BFFA: SEP #$20\n\n #_02BFFC: PLB\n\n #_02BFFD: LDX.w $0410\n\n #_02C000: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldScrollTransition", + "code": "OverworldScrollTransition:\n #_02C001: PHB\n #_02C002: PHK\n #_02C003: PLB\n\n #_02C004: INC.w $0126\n\n #_02C007: LDA.w $0418\n #_02C00A: ASL A\n #_02C00B: TAY\n\n #_02C00C: LDX.b #$01\n\n #_02C00E: CPY.b #$04\n #_02C010: BCS .going_horizontal\n\n #_02C012: LDX.b #$00\n\n.going_horizontal\n #_02C014: LDA.w .coordinate_camera_adjust,Y\n #_02C017: STA.w $069E,X\n\n; ---------------------------------------------------------\n\n #_02C01A: REP #$20\n\n #_02C01C: PHY\n\n #_02C01D: LDX.b #$00\n\n #_02C01F: CPY.b #$04\n #_02C021: BCS .adjust_horizontal_camera\n\n #_02C023: LDX.b #$06\n\n.adjust_horizontal_camera\n #_02C025: LDA.b $E2,X\n #_02C027: CLC\n #_02C028: ADC.w .coordinate_camera_adjust,Y\n #_02C02B: STA.b $E2,X\n\n #_02C02D: LDY.b $8A\n #_02C02F: CPY.b #$1B ; OW 1B\n #_02C031: BEQ .castle_or_pyramid\n\n #_02C033: CPY.b #$5B ; OW 5B\n #_02C035: BEQ .castle_or_pyramid\n\n #_02C037: STA.b $E0,X\n\n.castle_or_pyramid\n #_02C039: STA.b $00\n\n; ---------------------------------------------------------\n\n #_02C03B: PLY\n\n #_02C03C: LDX.b #$00\n\n #_02C03E: CPY.b #$04\n #_02C040: BCC .adjust_y_position\n\n #_02C042: LDX.b #$02\n\n.adjust_y_position\n #_02C044: LDA.w $0126\n #_02C047: AND.w #$00FF\n #_02C04A: CMP.w .camera_matters_when,Y\n #_02C04D: BCC .dont_add_in_camera\n\n #_02C04F: LDA.b $20,X\n #_02C051: CLC\n #_02C052: ADC.w .coordinate_camera_adjust,Y\n #_02C055: STA.b $20,X\n\n.dont_add_in_camera\n #_02C057: LDA.b $00\n #_02C059: CMP.w $0610,Y\n #_02C05C: BNE OverworldScrollTransition_dirty_exit\n\n; ---------------------------------------------------------\n\n #_02C05E: LDA.w $0418\n #_02C061: AND.w #$00FF\n #_02C064: BNE .dont_shift_v_scroll\n\n #_02C066: LDA.b $E8\n #_02C068: SEC\n #_02C069: SBC.w #$0002\n #_02C06C: STA.b $E8\n\n.dont_shift_v_scroll\n #_02C06E: LDA.b $20,X\n #_02C070: AND.w #$FFF8\n #_02C073: STA.b $20,X\n\n #_02C075: CLC\n #_02C076: ADC.w .boundary_delta,Y\n #_02C079: PHA\n\n #_02C07A: TXA\n #_02C07B: ASL A\n #_02C07C: TAX\n\n #_02C07D: PLA\n #_02C07E: CLC\n #_02C07F: ADC.w #$000B\n #_02C082: STA.w $061A,X\n\n #_02C085: INC A\n #_02C086: INC A\n #_02C087: STA.w $0618,X\n\n #_02C08A: PHX\n\n; ---------------------------------------------------------\n\n #_02C08B: LDX.b #$00\n\n #_02C08D: LDA.w $0712\n #_02C090: BEQ .smaller_screen\n\n #_02C092: INX\n #_02C093: INX\n\n.smaller_screen\n #_02C094: LDA.w $0700\n #_02C097: CLC\n #_02C098: ADC.w OverworldMixedCoordsChange,Y\n #_02C09B: TAY\n\n #_02C09C: JSR Overworld_SetCameraBoundaries\n\n #_02C09F: PLX\n\n #_02C0A0: STZ.w $0624,X\n #_02C0A3: STZ.w $0626,X\n\n #_02C0A6: SEP #$20\n\n #_02C0A8: LDA.b #$01\n #_02C0AA: STA.w $0ABF\n\n #_02C0AD: LDX.w $0410\n\n #_02C0B0: INC.b $11\n\n #_02C0B2: STZ.b $B0\n #_02C0B4: STZ.w $0126\n\n; ---------------------------------------------------------\n\n #_02C0B7: PLB\n\n #_02C0B8: LDA.b $00\n\n #_02C0BA: PHA\n #_02C0BB: PHX\n\n #_02C0BC: JSL Sprite_InitializeSlots\n\n #_02C0C0: PLX\n #_02C0C1: PLA\n\n #_02C0C2: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_SetCameraBoundaries", + "code": "Overworld_SetCameraBoundaries:\n #_02C0C3: LDA.w OverworldTransitionPositionY,Y\n #_02C0C6: STA.w $0600\n\n #_02C0C9: CLC\n #_02C0CA: ADC.w .boundary_y_size,X\n #_02C0CD: STA.w $0602\n\n #_02C0D0: LDA.w OverworldTransitionPositionX,Y\n #_02C0D3: STA.w $0604\n\n #_02C0D6: CLC\n #_02C0D7: ADC.w .boundary_x_size,X\n #_02C0DA: STA.w $0606\n\n #_02C0DD: LDA.w .transition_target_north,Y\n #_02C0E0: STA.w $0610\n\n #_02C0E3: CLC\n #_02C0E4: ADC.w .transition_target_south_offset,X\n #_02C0E7: STA.w $0612\n\n #_02C0EA: LDA.w .transition_target_west,Y\n #_02C0ED: STA.w $0614\n\n #_02C0F0: CLC\n #_02C0F1: ADC.w .transition_target_east_offset,X\n #_02C0F4: STA.w $0616\n\n #_02C0F7: RTS", + "file": "bank_02.asm" + }, + { + "name": "LinkLandingIndexOffset", + "code": "LinkLandingIndexOffset:\n #_02C0F8: db $00\n #_02C0F9: db $05\n #_02C0FA: db $0A\n #_02C0FB: db $0F\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransitionLandingCoordinate", + "code": "UnderworldTransitionLandingCoordinate:\n #_02C0FC: db $0C, $20, $30, $38, $48\n #_02C101: db $D4, $D8, $C0, $C0, $A8\n #_02C106: db $0C, $18, $28, $30, $40\n #_02C10B: db $E4, $D8, $C8, $C0, $B0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_FindTransitionLanding", + "code": "UnderworldTransition_FindTransitionLanding:\n #_02C110: JSR DeleteCertainAncillaeStopDashing\n #_02C113: JSR IntraroomTransitionCalculateLanding\n\n #_02C116: INC.b $B0\n\n #_02C118: REP #$30\n\n #_02C11A: LDA.b $A0\n #_02C11C: ASL A\n #_02C11D: TAX\n\n #_02C11E: LDA.l $7EF000,X\n #_02C122: ORA.w $0408\n #_02C125: STA.l $7EF000,X\n\n #_02C129: SEP #$30\n\n #_02C12B: RTS", + "file": "bank_02.asm" + }, + { + "name": "IntraroomTransitionCalculateLanding", + "code": "IntraroomTransitionCalculateLanding:\n #_02C12C: LDA.w $0418\n #_02C12F: AND.b #$02\n #_02C131: PHA\n\n #_02C132: JSR CalculateTransitionLanding\n\n #_02C135: LDX.w $0418\n\n #_02C138: CMP.b #$02\n #_02C13A: BNE .not_layers\n\n #_02C13C: LDA.b #$01\n\n.not_layers\n #_02C13E: CMP.b #$04\n #_02C140: BNE .not_lower_layer_shutter\n\n #_02C142: LDA.b #$02\n\n.not_lower_layer_shutter\n #_02C144: CLC\n #_02C145: ADC.l LinkLandingIndexOffset,X\n #_02C149: TAX\n\n #_02C14A: LDY.b #$08\n #_02C14C: LDA.l UnderworldTransitionLandingCoordinate,X\n #_02C150: BPL .positive\n\n #_02C152: LDY.b #$F8\n\n.positive\n #_02C154: STY.b $00\n\n #_02C156: SEC\n #_02C157: SBC.b $00\n\n #_02C159: PLY\n\n #_02C15A: STA.w $0020,Y\n\n #_02C15D: LDX.b #$00\n #_02C15F: STX.b $4B\n\n #_02C161: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module07_02_0D", + "code": "Module07_02_0D:\n #_02C162: LDA.l $7EC005\n #_02C166: ORA.l $7EC006\n #_02C16A: BEQ UnderworldTransition_HandleFinalMovements\n\n #_02C16C: JSL ApplyPaletteFilter\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_HandleFinalMovements", + "code": "UnderworldTransition_HandleFinalMovements:\n #_02C170: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02C174: JSR UnderworldTransition_MoveLinkOutDoor\n #_02C177: BCC .exit\n\n #_02C179: LDX.b $4E\n #_02C17B: CPX.b #$02\n #_02C17D: BEQ .clear_door_flag\n\n #_02C17F: CPX.b #$04\n #_02C181: BNE .ignore_door_flag\n\n.clear_door_flag\n #_02C183: STZ.b $6C\n\n.ignore_door_flag\n #_02C185: STZ.b $6F\n #_02C187: STZ.b $49\n #_02C189: STZ.b $4E\n\n #_02C18B: STZ.w $0418\n\n #_02C18E: INC.b $B0\n\n.exit\n #_02C190: RTS", + "file": "bank_02.asm" + }, + { + "name": "UnderworldTransition_MoveLinkOutDoor", + "code": "UnderworldTransition_MoveLinkOutDoor:\n #_02C191: LDX.w $0418\n\n #_02C194: LDA.b $4E\n #_02C196: CLC\n #_02C197: ADC.l LinkLandingIndexOffset,X\n #_02C19B: TAX\n\n #_02C19C: LDY.b #$02\n\n #_02C19E: LDA.w $0418\n #_02C1A1: LSR A\n #_02C1A2: BCC .positive_speed\n\n #_02C1A4: LDY.b #$FE\n\n.positive_speed\n #_02C1A6: STY.b $00\n\n #_02C1A8: LSR A\n #_02C1A9: BCS .handle_x\n\n #_02C1AB: LDY.b #$FF\n\n #_02C1AD: LDA.b $00\n #_02C1AF: BMI .negative_y\n\n #_02C1B1: INY\n\n.negative_y\n #_02C1B2: CLC\n #_02C1B3: ADC.b $20\n #_02C1B5: STA.b $20\n\n #_02C1B7: TYA\n #_02C1B8: ADC.b $21\n #_02C1BA: STA.b $21\n\n #_02C1BC: LDA.b $20\n #_02C1BE: AND.b #$FE\n #_02C1C0: CMP.l UnderworldTransitionLandingCoordinate,X\n #_02C1C4: BEQ .success\n\n.fail\n #_02C1C6: CLC\n\n #_02C1C7: RTS", + "file": "bank_02.asm" + }, + { + "name": "CalculateTransitionLanding", + "code": "CalculateTransitionLanding:\n #_02C1E5: REP #$20\n\n #_02C1E7: LDA.b $20\n #_02C1E9: CLC\n #_02C1EA: ADC.w #$000C\n #_02C1ED: AND.w #$01F8\n #_02C1F0: ASL A\n #_02C1F1: ASL A\n #_02C1F2: ASL A\n #_02C1F3: STA.b $00\n\n #_02C1F5: LDA.b $22\n #_02C1F7: CLC\n #_02C1F8: ADC.w #$0008\n #_02C1FB: AND.w #$01F8\n #_02C1FE: LSR A\n #_02C1FF: LSR A\n #_02C200: LSR A\n #_02C201: ORA.b $00\n\n; ---------------------------------------------------------\n\n #_02C203: LDX.b $EE\n #_02C205: BEQ .upper_layer\n\n #_02C207: CLC\n #_02C208: ADC.w #$1000\n\n.upper_layer\n #_02C20B: REP #$10\n\n #_02C20D: TAX\n #_02C20E: LDA.l $7F2000,X\n\n #_02C212: SEP #$30\n\n #_02C214: LDY.b #$00\n\n #_02C216: CMP.b #$00 ; TILETYPE 00\n #_02C218: BEQ .save\n\n #_02C21A: CMP.b #$09 ; TILETYPE 09\n #_02C21C: BEQ .save\n\n #_02C21E: INY\n\n #_02C21F: AND.b #$8E\n #_02C221: CMP.b #$80 ; TILETYPE 80, TILETYPE 81\n #_02C223: BEQ .save\n\n #_02C225: INY\n\n #_02C226: CMP.b #$82 ; TILETYPE 82\n #_02C228: BEQ .save\n\n #_02C22A: INY\n #_02C22B: CMP.b #$84 ; TILETYPE 84\n #_02C22D: BEQ .save\n\n #_02C22F: CMP.b #$88 ; TILETYPE 88\n #_02C231: BEQ .save\n\n #_02C233: INY\n #_02C234: CMP.b #$86 ; TILETYPE 86\n #_02C236: BEQ .save\n\n #_02C238: DEY\n #_02C239: DEY\n\n.save\n #_02C23A: STY.b $4E\n\n #_02C23C: TYA\n\n #_02C23D: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_FinalizeEntryOntoScreen", + "code": "Overworld_FinalizeEntryOntoScreen:\n #_02C242: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02C246: LDY.b #$02\n\n #_02C248: LDA.w $069C\n #_02C24B: LSR A\n #_02C24C: BCS .positive\n\n #_02C24E: LDY.b #$FE\n\n.positive\n #_02C250: STY.b $00\n\n #_02C252: LDX.b #$02\n\n #_02C254: LSR A\n #_02C255: BCS .handle_x_coords\n\n #_02C257: LDX.b #$00\n\n.handle_x_coords\n #_02C259: LDY.b #$FF\n\n #_02C25B: LDA.b $00\n #_02C25D: BMI .negative\n\n #_02C25F: INY\n\n.negative\n #_02C260: CLC\n #_02C261: ADC.b $20,X\n #_02C263: STA.b $20,X\n\n #_02C265: TYA\n #_02C266: ADC.b $21,X\n #_02C268: STA.b $21,X\n\n #_02C26A: LDA.b $20,X\n\n #_02C26C: LDX.w $069C\n\n #_02C26F: AND.b #$FE\n #_02C271: CMP.l .song_change_directions,X\n\n #_02C275: BNE .not_fade\n\n; ---------------------------------------------------------\n\n #_02C277: STZ.b $11\n #_02C279: STZ.b $B0\n\n #_02C27B: LDX.b $8A\n\n #_02C27D: LDA.l $7F5B00,X\n #_02C281: LSR A\n #_02C282: LSR A\n #_02C283: LSR A\n #_02C284: LSR A\n #_02C285: STA.w $012D\n\n #_02C288: LDA.w $0130\n #_02C28B: CMP.b #$F1 ; SONG F1 - fade\n #_02C28D: BNE .not_fade\n\n #_02C28F: LDA.l $7F5B00,X\n #_02C293: AND.b #$0F\n #_02C295: STA.w $012C\n\n.not_fade\n #_02C298: JSR Overworld_OperateCameraScroll\n\n #_02C29B: LDA.w $0416\n #_02C29E: BEQ .exit\n\n #_02C2A0: JSR OverworldHandleMapScroll\n\n.exit\n #_02C2A3: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module09_1F", + "code": "Module09_1F:\n #_02C2A4: JSL Link_HandleMovingAnimation_FullLongEntry\n\n #_02C2A8: LDY.b #$01\n\n #_02C2AA: LDA.w $069C\n #_02C2AD: LSR A\n #_02C2AE: BCS .positive_velocity\n\n #_02C2B0: LDY.b #$FF\n\n.positive_velocity\n #_02C2B2: STY.b $00\n\n #_02C2B4: LDX.b #$02\n\n #_02C2B6: LSR A\n #_02C2B7: BCS .handle_x_coords\n\n #_02C2B9: LDX.b #$00\n\n.handle_x_coords\n #_02C2BB: LDY.b #$FF\n\n #_02C2BD: LDA.b $00\n #_02C2BF: BMI .negative\n\n #_02C2C1: INY\n\n.negative\n #_02C2C2: CLC\n #_02C2C3: ADC.b $20,X\n #_02C2C5: STA.b $20,X\n\n #_02C2C7: TYA\n #_02C2C8: ADC.b $21,X\n #_02C2CA: STA.b $21,X\n\n #_02C2CC: TXA\n #_02C2CD: LSR A\n #_02C2CE: TAX\n\n #_02C2CF: LDA.b $00\n #_02C2D1: STA.b $30,X\n\n #_02C2D3: DEC.w $069A\n #_02C2D6: BNE .delay_mode\n\n #_02C2D8: LDA.b #$09\n #_02C2DA: STA.b $10\n #_02C2DC: STZ.b $11\n #_02C2DE: STZ.b $B0\n\n.delay_mode\n #_02C2E0: JSR Overworld_OperateCameraScroll\n\n #_02C2E3: RTS", + "file": "bank_02.asm" + }, + { + "name": "ConditionalMosaicControl", + "code": "ConditionalMosaicControl:\n #_02C2E4: LDA.l $7EC007\n #_02C2E8: LSR A\n #_02C2E9: BCC CopyMosaicControl\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "MosaicControlIncrease", + "code": "MosaicControlIncrease:\n #_02C2EB: LDA.l $7EC011\n #_02C2EF: CLC\n #_02C2F0: ADC.b #$10\n #_02C2F2: STA.l $7EC011\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "CopyMosaicControl", + "code": "CopyMosaicControl:\n #_02C2F6: LDA.b #$09\n #_02C2F8: STA.b $94\n\n #_02C2FA: LDA.l $7EC011\n #_02C2FE: ORA.b #$07\n #_02C300: STA.b $95\n\n #_02C302: RTS", + "file": "bank_02.asm" + }, + { + "name": "LightWorldAmbiance", + "code": "LightWorldAmbiance:\n #_02C303: db $05, $05, $03, $03, $03, $03, $03, $03\n #_02C30B: db $05, $05, $03, $03, $03, $03, $03, $03\n #_02C313: db $03, $03, $13, $13, $13, $03, $03, $03\n #_02C31B: db $03, $03, $13, $13, $13, $03, $03, $03\n #_02C323: db $03, $03, $13, $13, $13, $03, $03, $03\n #_02C32B: db $03, $03, $13, $13, $13, $03, $03, $03\n #_02C333: db $03, $03, $03, $03, $03, $03, $03, $03\n #_02C33B: db $03, $03, $03, $03, $03, $03, $03, $03\n\n #_02C343: db $55, $55, $02, $52, $52, $52, $52, $52\n #_02C34B: db $55, $55, $02, $52, $52, $52, $52, $02\n #_02C353: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C35B: db $07, $07, $02, $02, $02, $02, $02, $02\n #_02C363: db $07, $07, $07, $02, $02, $02, $02, $02\n #_02C36B: db $07, $07, $02, $02, $02, $02, $02, $02\n #_02C373: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C37B: db $02, $02, $02, $02, $02, $02, $02, $02\n\n #_02C383: db $52, $52, $02, $52, $52, $52, $52, $52\n #_02C38B: db $52, $52, $02, $52, $52, $52, $52, $02\n #_02C393: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C39B: db $07, $07, $02, $02, $02, $02, $02, $02\n #_02C3A3: db $07, $07, $07, $02, $02, $02, $02, $02\n #_02C3AB: db $07, $07, $02, $02, $02, $02, $02, $02\n #_02C3B3: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C3BB: db $02, $02, $02, $02, $02, $02, $02, $02\n\n #_02C3C3: db $52, $52, $02, $52, $52, $52, $52, $52\n #_02C3CB: db $52, $52, $02, $52, $52, $52, $52, $02\n #_02C3D3: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C3DB: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C3E3: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C3EB: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C3F3: db $52, $52, $02, $02, $02, $02, $02, $02\n #_02C3FB: db $52, $52, $02, $02, $02, $02, $02, $02\n", + "file": "bank_02.asm" + }, + { + "name": "DarkWorldAmbiance", + "code": "DarkWorldAmbiance:\n #_02C403: db $9D, $9D, $09, $9D, $9D, $9D, $9D, $9D\n #_02C40B: db $9D, $9D, $09, $9D, $9D, $9D, $9D, $09\n #_02C413: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C41B: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C423: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C42B: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C433: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C43B: db $09, $09, $09, $09, $09, $09, $09, $09\n #_02C443: db $05, $02, $02, $02, $02, $02, $02, $02\n #_02C44B: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C453: db $02, $02, $02, $02, $02, $02, $02, $02\n #_02C45B: db $02, $02, $02, $02, $02, $02, $02, $12\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "AdjustOverworldAmbiance", + "code": "AdjustOverworldAmbiance:\n #_02C463: PHB\n #_02C464: PHK\n #_02C465: PLB\n\n #_02C466: REP #$10\n\n #_02C468: LDA.b #$02\n #_02C46A: STA.b $00\n\n #_02C46C: LDX.w #$0000\n #_02C46F: LDY.w #$00C0\n\n #_02C472: LDA.l $7EF3C5\n #_02C476: CMP.b #$03\n #_02C478: BCS .copy_next\n\n #_02C47A: LDY.w #$0080\n\n #_02C47D: LDA.l $7EF359\n #_02C481: CMP.b #$02\n #_02C483: BCS .copy_next\n\n #_02C485: LDA.b #$05\n #_02C487: STA.b $00\n\n #_02C489: LDY.w #$0040\n\n #_02C48C: LDA.l $7EF3C5\n #_02C490: CMP.b #$02\n #_02C492: BCS .copy_next\n\n #_02C494: LDY.w #$0000\n\n; ---------------------------------------------------------\n\n.copy_next\n #_02C497: LDA.w LightWorldAmbiance,Y\n #_02C49A: STA.l $7F5B00,X\n\n #_02C49E: INY\n\n #_02C49F: INX\n #_02C4A0: CPX.w #$0040\n #_02C4A3: BNE .copy_next\n\n; ---------------------------------------------------------\n\n #_02C4A5: LDY.w #$0000\n\n.copy_more\n #_02C4A8: LDA.w DarkWorldAmbiance,Y\n #_02C4AB: STA.l $7F5B00,X\n\n #_02C4AF: INX\n\n #_02C4B0: INY\n #_02C4B1: CPY.w #$0060\n #_02C4B4: BNE .copy_more\n\n; ---------------------------------------------------------\n\n #_02C4B6: LDA.b $00\n #_02C4B8: STA.l $7F5B80\n\n #_02C4BC: SEP #$10\n\n #_02C4BE: PLB\n #_02C4BF: RTL", + "file": "bank_02.asm" + }, + { + "name": "NULL_02C4C0", + "code": "NULL_02C4C0:\n #_02C4C0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4C8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4D0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4D8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4E0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4E8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4F0: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_02C4F8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Intro_InitializeBackgroundSettings", + "code": "Intro_InitializeBackgroundSettings:\n #_02C500: STZ.w SETINI\n\n #_02C503: LDA.b #$09\n #_02C505: STA.b $94\n #_02C507: STZ.b $95\n\n #_02C509: LDA.b #$13\n #_02C50B: STA.w BG1SC\n\n #_02C50E: LDA.b #$03\n #_02C510: STA.w BG2SC\n\n #_02C513: LDA.b #$63\n #_02C515: STA.w BG3SC\n\n #_02C518: LDA.b #$22\n #_02C51A: STA.w BG12NBA\n\n #_02C51D: LDA.b #$07\n #_02C51F: STA.w BG34NBA\n\n #_02C522: LDA.b #$20\n #_02C524: STA.b $9A\n\n #_02C526: LDA.b #$20 ; Fixed color RGB: #000000\n #_02C528: STA.b $9C\n\n #_02C52A: LDA.b #$40\n #_02C52C: STA.b $9D\n\n #_02C52E: LDA.b #$80\n #_02C530: STA.b $9E\n\n #_02C532: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadAndDrawEntranceRoom", + "code": "Underworld_LoadAndDrawEntranceRoom:\n #_02C533: STA.w $010E\n\n #_02C536: JSR Underworld_LoadEntrance\n\n #_02C539: STZ.w $045A\n #_02C53C: STZ.w $0458\n\n #_02C53F: JSR Underworld_LoadAndDrawRoom\n #_02C542: JSR Underworld_ResetTorchBackgroundAndPlayer\n\n #_02C545: RTL", + "file": "bank_02.asm" + }, + { + "name": "Underworld_SaveAndLoadLoadAllPalettes", + "code": "Underworld_SaveAndLoadLoadAllPalettes:\n #_02C546: STX.w $0AA3\n\n #_02C549: STA.w $0AA1\n #_02C54C: STA.w $0AA2\n\n #_02C54F: JSL InitializeTilesets\n\n #_02C553: LDA.b #$02\n #_02C555: STA.w $0AA9\n\n #_02C558: INC.b $15\n\n #_02C55A: JSL SetBGandFixedColorBlack\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadAllPalettes", + "code": "Underworld_LoadAllPalettes:\n #_02C55E: JSL Palettes_Load_SpritePal0Left\n #_02C562: JSL Palettes_Load_SpriteMain\n #_02C566: JSL Palettes_Load_SpriteAux1\n #_02C56A: JSL Palettes_Load_SpriteAux2\n #_02C56E: JSL Palettes_Load_SpriteEnvironment_Underworld\n #_02C572: JSL Palettes_Load_HUD\n #_02C576: JSL Palettes_Load_UnderworldSet\n\n #_02C57A: RTL", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadAndDrawRoom", + "code": "Underworld_LoadAndDrawRoom:\n #_02C57B: LDA.b $9B\n #_02C57D: PHA\n\n #_02C57E: STZ.w HDMAEN\n #_02C581: STZ.b $9B\n\n #_02C583: JSL Underworld_LoadRoom\n\n #_02C587: STZ.w $0418\n #_02C58A: STZ.w $045C\n #_02C58D: STZ.w $0200\n\n; ---------------------------------------------------------\n\n.next_quadrant\n #_02C590: JSL TilemapPrep_NotWaterOnTag\n #_02C594: JSL NMI_UploadTilemap_long\n\n #_02C598: JSL Underworld_PrepareNextRoomQuadrantUpload\n #_02C59C: JSL NMI_UploadTilemap_long\n\n #_02C5A0: LDA.w $045C\n #_02C5A3: CMP.b #$10\n #_02C5A5: BNE .next_quadrant\n\n; ---------------------------------------------------------\n\n #_02C5A7: PLA\n #_02C5A8: STA.b $9B\n\n #_02C5AA: STZ.b $17\n #_02C5AC: STZ.w $0200\n #_02C5AF: STZ.b $B0\n\n #_02C5B1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadAllPalettes", + "code": "Overworld_LoadAllPalettes:\n #_02C5B2: REP #$20\n\n #_02C5B4: LDX.b #$00\n\n #_02C5B6: LDA.w #$0000 ; RGB: #000000\n\n.next_color\n #_02C5B9: STA.l $7EC480,X\n #_02C5BD: STA.l $7EC500,X\n #_02C5C1: STA.l $7EC580,X\n #_02C5C5: STA.l $7EC600,X\n #_02C5C9: STA.l $7EC680,X\n\n #_02C5CD: INX\n #_02C5CE: INX\n #_02C5CF: CPX.b #$80\n #_02C5D1: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_02C5D3: SEP #$20\n\n #_02C5D5: LDA.b #$05\n #_02C5D7: STA.w $0AB3\n\n #_02C5DA: LDA.b #$03\n #_02C5DC: STA.w $0AB4\n #_02C5DF: STA.w $0AB5\n\n #_02C5E2: LDA.b #$00\n #_02C5E4: STA.w $0AB8\n\n #_02C5E7: LDA.b #$05\n #_02C5E9: STA.w $0AB1\n\n #_02C5EC: LDA.b #$0B\n #_02C5EE: STA.w $0AAC\n\n #_02C5F1: STZ.w $0ABD\n #_02C5F4: STZ.w $0AA9\n\n #_02C5F7: JSL SetBGandFixedColorBlack\n\n #_02C5FB: JSL Palettes_Load_SpritePal0Left\n #_02C5FF: JSL Palettes_Load_SpriteMain\n #_02C603: JSL Palettes_Load_OWBGMain\n\n #_02C607: JSL Palettes_Load_OWBG1\n #_02C60B: JSL Palettes_Load_OWBG2\n #_02C60F: JSL Palettes_Load_OWBG3\n\n #_02C613: JSL Palettes_Load_SpriteEnvironment_Underworld\n\n #_02C617: JSL Palettes_Load_HUD\n\n; ---------------------------------------------------------\n\n #_02C61B: REP #$20\n\n #_02C61D: LDX.b #$00\n\n.copy_next\n #_02C61F: LDA.l $7EC4D0,X\n #_02C623: STA.l $7EC6B0,X\n\n #_02C627: INX\n #_02C628: INX\n #_02C629: CPX.b #$10\n #_02C62B: BNE .copy_next\n\n #_02C62D: SEP #$20\n\n #_02C62F: RTS", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadPalettes", + "code": "Underworld_LoadPalettes:\n #_02C630: STZ.w $0AA9\n\n #_02C633: JSL SetBGandFixedColorBlack\n\n #_02C637: JSL Palettes_Load_SpritePal0Left\n #_02C63B: JSL Palettes_Load_SpriteMain\n #_02C63F: JSL Palettes_Load_SpriteAux1\n #_02C643: JSL Palettes_Load_SpriteAux2\n\n #_02C647: JSL Palettes_Load_Sword\n #_02C64B: JSL Palettes_Load_Shield\n\n #_02C64F: JSL Palettes_Load_SpriteEnvironment\n #_02C653: JSL Palettes_Load_LinkArmorAndGloves\n\n #_02C657: JSL Palettes_Load_HUD\n #_02C65B: JSL Palettes_Load_UnderworldSet\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_CopyPalettesToCache_WithPrep", + "code": "Overworld_CopyPalettesToCache_WithPrep:\n #_02C65F: LDA.w $0AB6\n #_02C662: STA.l $7EC20A\n\n #_02C666: LDA.w $0AB8\n #_02C669: STA.l $7EC20B\n\n #_02C66D: LDA.w $0AB7\n #_02C670: STA.l $7EC20C\n\n #_02C674: REP #$20\n\n #_02C676: LDA.w #$0002\n #_02C679: STA.l $7EC009\n\n #_02C67D: LDA.w #$0000\n #_02C680: STA.l $7EC007\n\n #_02C684: LDA.w #$0000\n #_02C687: STA.l $7EC00B\n\n #_02C68B: JMP.w Overworld_CopyPalettesToCache\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoadScreensPaletteSet_long", + "code": "OverworldLoadScreensPaletteSet_long:\n #_02C68E: JSR OverworldLoadScreensPaletteSet\n\n #_02C691: RTL", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoadScreensPaletteSet", + "code": "OverworldLoadScreensPaletteSet:\n #_02C692: LDX.b #$02\n\n #_02C694: LDA.b $8A\n #_02C696: AND.b #$3F\n #_02C698: CMP.b #$03 ; OW 03, OW 43\n #_02C69A: BEQ .not_death_mountain\n\n #_02C69C: CMP.b #$05 ; OW 05, OW 45\n #_02C69E: BEQ .not_death_mountain\n\n #_02C6A0: CMP.b #$07 ; OW 07, OW 47\n #_02C6A2: BEQ .not_death_mountain\n\n #_02C6A4: LDX.b #$00\n\n.not_death_mountain\n #_02C6A6: LDA.b $8A\n #_02C6A8: AND.b #$40\n #_02C6AA: BEQ OverworldLoadScreensPaletteSet_Preloaded\n\n #_02C6AC: INX\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoadScreensPaletteSet_Preloaded", + "code": "OverworldLoadScreensPaletteSet_Preloaded:\n #_02C6AD: STX.w $0AB3\n #_02C6B0: STZ.w $0AA9\n\n #_02C6B3: JSL Palettes_Load_SpriteMain\n #_02C6B7: JSL Palettes_Load_SpriteEnvironment\n\n #_02C6BB: JSL Palettes_Load_SpriteAux1\n #_02C6BF: JSL Palettes_Load_SpriteAux2\n\n #_02C6C3: JSL Palettes_Load_Sword\n #_02C6C7: JSL Palettes_Load_Shield\n #_02C6CB: JSL Palettes_Load_LinkArmorAndGloves\n\n #_02C6CF: LDX.b #$01\n\n #_02C6D1: LDA.l $7EF3CA\n #_02C6D5: AND.b #$40\n #_02C6D7: BEQ .light_world\n\n #_02C6D9: LDX.b #$03\n\n.light_world\n #_02C6DB: STX.w $0AAC\n\n #_02C6DE: JSL Palettes_Load_SpritePal0Left\n #_02C6E2: JSL Palettes_Load_HUD\n #_02C6E6: JSL Palettes_Load_OWBGMain\n\n #_02C6EA: RTS", + "file": "bank_02.asm" + }, + { + "name": "SpecialOverworld_CopyPalettesToCache", + "code": "SpecialOverworld_CopyPalettesToCache:\n #_02C6EB: REP #$20\n\n #_02C6ED: LDX.b #$00\n\n #_02C6EF: LDA.w #$0000 ; RGB: #000000\n\n.next_black\n #_02C6F2: STA.l $7EC540,X\n #_02C6F6: STA.l $7EC580,X\n #_02C6FA: STA.l $7EC5C0,X\n #_02C6FE: STA.l $7EC600,X\n #_02C702: STA.l $7EC640,X\n #_02C706: STA.l $7EC680,X\n #_02C70A: STA.l $7EC6C0,X\n\n #_02C70E: INX\n #_02C70F: INX\n #_02C710: CPX.b #$40\n #_02C712: BNE .next_black\n\n; ---------------------------------------------------------\n\n #_02C714: LDX.b #$00\n\n.next_color\n #_02C716: LDA.l $7EC300,X\n #_02C71A: STA.l $7EC500,X\n\n #_02C71E: LDA.l $7EC310,X\n #_02C722: STA.l $7EC510,X\n\n #_02C726: LDA.l $7EC320,X\n #_02C72A: STA.l $7EC520,X\n\n #_02C72E: LDA.l $7EC330,X\n #_02C732: STA.l $7EC530,X\n\n #_02C736: LDA.l $7EC4B0,X\n #_02C73A: STA.l $7EC6B0,X\n\n #_02C73E: LDA.l $7EC4D0,X\n #_02C742: STA.l $7EC6D0,X\n\n #_02C746: LDA.l $7EC4E0,X\n #_02C74A: STA.l $7EC6E0,X\n\n #_02C74E: LDA.l $7EC4F0,X\n #_02C752: STA.l $7EC6F0,X\n\n #_02C756: INX\n #_02C757: INX\n #_02C758: CPX.b #$10\n #_02C75A: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_02C75C: SEP #$20\n\n #_02C75E: LDA.b #$F7\n #_02C760: STA.b $95\n #_02C762: STA.l $7EC011\n\n #_02C766: INC.b $15\n\n #_02C768: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_CopyPalettesToCache", + "code": "Overworld_CopyPalettesToCache:\n #_02C769: REP #$20\n\n #_02C76B: LDX.b #$00\n\n.next_color\n #_02C76D: LDA.l $7EC300,X\n #_02C771: STA.l $7EC500,X\n\n #_02C775: LDA.l $7EC340,X\n #_02C779: STA.l $7EC540,X\n\n #_02C77D: LDA.l $7EC380,X\n #_02C781: STA.l $7EC580,X\n\n #_02C785: LDA.l $7EC3C0,X\n #_02C789: STA.l $7EC5C0,X\n\n #_02C78D: LDA.l $7EC400,X\n #_02C791: STA.l $7EC600,X\n\n #_02C795: LDA.l $7EC440,X\n #_02C799: STA.l $7EC640,X\n\n #_02C79D: LDA.l $7EC480,X\n #_02C7A1: STA.l $7EC680,X\n\n #_02C7A5: LDA.l $7EC4C0,X\n #_02C7A9: STA.l $7EC6C0,X\n\n #_02C7AD: INX\n #_02C7AE: INX\n #_02C7AF: CPX.b #$40\n #_02C7B1: BNE .next_color\n\n; ---------------------------------------------------------\n\n #_02C7B3: SEP #$20\n\n #_02C7B5: INC.b $15\n\n #_02C7B7: RTS", + "file": "bank_02.asm" + }, + { + "name": "CleanUpAndPrepDesertPrayerHDMA", + "code": "CleanUpAndPrepDesertPrayerHDMA:\n #_02C7B8: PHB\n #_02C7B9: PHK\n #_02C7BA: PLB\n\n #_02C7BB: LDX.b #$04\n\n.next_prop\n #_02C7BD: LDA.w .hdma_props,X\n #_02C7C0: STA.w DMA7MODE,X\n\n #_02C7C3: DEX\n #_02C7C4: BPL .next_prop\n\n; ---------------------------------------------------------\n\n #_02C7C6: LDA.b #$00\n #_02C7C8: STA.w HDMA7INDIRECTB\n\n #_02C7CB: LDA.b #$33\n #_02C7CD: STA.b $96\n\n #_02C7CF: LDA.b #$03\n #_02C7D1: STA.b $97\n\n #_02C7D3: LDA.b #$33\n #_02C7D5: STA.b $98\n\n #_02C7D7: LDA.b $1C\n #_02C7D9: STA.b $1E\n\n #_02C7DB: LDA.b $1D\n #_02C7DD: STA.b $1F\n\n #_02C7DF: LDA.b #$80\n #_02C7E1: STA.b $9B\n\n #_02C7E3: REP #$10\n\n #_02C7E5: LDX.w #$01DF\n\n; ---------------------------------------------------------\n\n.clear_next\n #_02C7E8: STZ.w $1B00,X\n\n #_02C7EB: DEX\n #_02C7EC: BPL .clear_next\n\n #_02C7EE: SEP #$10\n\n #_02C7F0: PLB\n\n #_02C7F1: RTL", + "file": "bank_02.asm" + }, + { + "name": "EntranceData", + "code": "EntranceData:\n\n.room_id\n #_02C813: dw $0104 ; 0x00\n #_02C815: dw $0104 ; 0x01\n #_02C817: dw $0012 ; 0x02\n #_02C819: dw $0060 ; 0x03\n #_02C81B: dw $0061 ; 0x04\n #_02C81D: dw $0062 ; 0x05\n #_02C81F: dw $00F0 ; 0x06\n #_02C821: dw $00F1 ; 0x07\n #_02C823: dw $00C9 ; 0x08\n #_02C825: dw $0084 ; 0x09\n #_02C827: dw $0085 ; 0x0A\n #_02C829: dw $0083 ; 0x0B\n #_02C82B: dw $0063 ; 0x0C\n #_02C82D: dw $00F2 ; 0x0D\n #_02C82F: dw $00F3 ; 0x0E\n #_02C831: dw $00F4 ; 0x0F\n #_02C833: dw $00F5 ; 0x10\n #_02C835: dw $00E3 ; 0x11\n #_02C837: dw $00E2 ; 0x12\n #_02C839: dw $00F8 ; 0x13\n #_02C83B: dw $00E8 ; 0x14\n #_02C83D: dw $0023 ; 0x15\n #_02C83F: dw $00FB ; 0x16\n #_02C841: dw $00EB ; 0x17\n #_02C843: dw $00D5 ; 0x18\n #_02C845: dw $0024 ; 0x19\n #_02C847: dw $00FD ; 0x1A\n #_02C849: dw $00ED ; 0x1B\n #_02C84B: dw $00FE ; 0x1C\n #_02C84D: dw $00EE ; 0x1D\n #_02C84F: dw $00FF ; 0x1E\n #_02C851: dw $00EF ; 0x1F\n #_02C853: dw $00DF ; 0x20\n #_02C855: dw $00F9 ; 0x21\n #_02C857: dw $00FA ; 0x22\n #_02C859: dw $00EA ; 0x23\n #_02C85B: dw $00E0 ; 0x24\n #_02C85D: dw $0028 ; 0x25\n #_02C85F: dw $004A ; 0x26\n #_02C861: dw $0098 ; 0x27\n #_02C863: dw $0056 ; 0x28\n #_02C865: dw $0057 ; 0x29\n #_02C867: dw $0058 ; 0x2A\n #_02C869: dw $0059 ; 0x2B\n #_02C86B: dw $00E1 ; 0x2C\n #_02C86D: dw $000E ; 0x2D\n #_02C86F: dw $00E6 ; 0x2E\n #_02C871: dw $00E7 ; 0x2F\n #_02C873: dw $00E4 ; 0x30\n #_02C875: dw $00E5 ; 0x31\n #_02C877: dw $0055 ; 0x32\n #_02C879: dw $0077 ; 0x33\n #_02C87B: dw $00DB ; 0x34\n #_02C87D: dw $00D6 ; 0x35\n #_02C87F: dw $0010 ; 0x36\n #_02C881: dw $000C ; 0x37\n #_02C883: dw $0008 ; 0x38\n #_02C885: dw $002F ; 0x39\n #_02C887: dw $003C ; 0x3A\n #_02C889: dw $002C ; 0x3B\n #_02C88B: dw $0100 ; 0x3C\n #_02C88D: dw $011E ; 0x3D\n #_02C88F: dw $0101 ; 0x3E\n #_02C891: dw $0101 ; 0x3F\n #_02C893: dw $0102 ; 0x40\n #_02C895: dw $0117 ; 0x41\n #_02C897: dw $0103 ; 0x42\n #_02C899: dw $0103 ; 0x43\n #_02C89B: dw $0103 ; 0x44\n #_02C89D: dw $0105 ; 0x45\n #_02C89F: dw $011F ; 0x46\n #_02C8A1: dw $0106 ; 0x47\n #_02C8A3: dw $0106 ; 0x48\n #_02C8A5: dw $0107 ; 0x49\n #_02C8A7: dw $0107 ; 0x4A\n #_02C8A9: dw $0108 ; 0x4B\n #_02C8AB: dw $0109 ; 0x4C\n #_02C8AD: dw $010A ; 0x4D\n #_02C8AF: dw $010B ; 0x4E\n #_02C8B1: dw $010C ; 0x4F\n #_02C8B3: dw $010C ; 0x50\n #_02C8B5: dw $011B ; 0x51\n #_02C8B7: dw $011B ; 0x52\n #_02C8B9: dw $011C ; 0x53\n #_02C8BB: dw $011C ; 0x54\n #_02C8BD: dw $011E ; 0x55\n #_02C8BF: dw $0120 ; 0x56\n #_02C8C1: dw $0110 ; 0x57\n #_02C8C3: dw $0112 ; 0x58\n #_02C8C5: dw $0111 ; 0x59\n #_02C8C7: dw $0112 ; 0x5A\n #_02C8C9: dw $0113 ; 0x5B\n #_02C8CB: dw $0114 ; 0x5C\n #_02C8CD: dw $0115 ; 0x5D\n #_02C8CF: dw $0115 ; 0x5E\n #_02C8D1: dw $010D ; 0x5F\n #_02C8D3: dw $010F ; 0x60\n #_02C8D5: dw $0119 ; 0x61\n #_02C8D7: dw $0114 ; 0x62\n #_02C8D9: dw $0116 ; 0x63\n #_02C8DB: dw $0121 ; 0x64\n #_02C8DD: dw $0122 ; 0x65\n #_02C8DF: dw $0122 ; 0x66\n #_02C8E1: dw $0118 ; 0x67\n #_02C8E3: dw $011A ; 0x68\n #_02C8E5: dw $010E ; 0x69\n #_02C8E7: dw $010E ; 0x6A\n #_02C8E9: dw $011F ; 0x6B\n #_02C8EB: dw $0123 ; 0x6C\n #_02C8ED: dw $0124 ; 0x6D\n #_02C8EF: dw $0124 ; 0x6E\n #_02C8F1: dw $0125 ; 0x6F\n #_02C8F3: dw $0125 ; 0x70\n #_02C8F5: dw $0126 ; 0x71\n #_02C8F7: dw $0126 ; 0x72\n #_02C8F9: dw $0080 ; 0x73\n #_02C8FB: dw $0051 ; 0x74\n #_02C8FD: dw $0030 ; 0x75\n #_02C8FF: dw $0058 ; 0x76\n #_02C901: dw $0067 ; 0x77\n #_02C903: dw $0068 ; 0x78\n #_02C905: dw $0056 ; 0x79\n #_02C907: dw $00E1 ; 0x7A\n #_02C909: dw $0000 ; 0x7B\n #_02C90B: dw $0018 ; 0x7C\n #_02C90D: dw $0055 ; 0x7D\n #_02C90F: dw $00E3 ; 0x7E\n #_02C911: dw $00E2 ; 0x7F\n #_02C913: dw $002F ; 0x80\n #_02C915: dw $0011 ; 0x81\n #_02C917: dw $0003 ; 0x82\n #_02C919: dw $0127 ; 0x83\n #_02C91B: dw $0120 ; 0x84\n\n; ---------------------------------------------------------\n\n.camera_scroll_boundaries\n #_02C91D: db $21, $20, $21, $21, $09, $09, $09, $0A ; 0x00\n #_02C925: db $21, $20, $21, $21, $09, $09, $09, $0A ; 0x01\n #_02C92D: db $03, $02, $03, $03, $04, $04, $04, $05 ; 0x02\n #_02C935: db $0D, $0C, $0D, $0D, $01, $00, $01, $01 ; 0x03\n #_02C93D: db $0D, $0C, $0D, $0D, $02, $02, $02, $03 ; 0x04\n #_02C945: db $0D, $0C, $0D, $0D, $04, $04, $04, $05 ; 0x05\n #_02C94D: db $1F, $1E, $1F, $1F, $00, $00, $00, $01 ; 0x06\n #_02C955: db $1F, $1E, $1F, $1F, $03, $02, $03, $03 ; 0x07\n #_02C95D: db $19, $18, $19, $19, $12, $12, $12, $13 ; 0x08\n #_02C965: db $11, $10, $11, $11, $08, $08, $08, $09 ; 0x09\n #_02C96D: db $11, $10, $11, $11, $0B, $0A, $0B, $0B ; 0x0A\n #_02C975: db $11, $10, $11, $11, $06, $06, $06, $07 ; 0x0B\n #_02C97D: db $0D, $0C, $0D, $0D, $06, $06, $06, $07 ; 0x0C\n #_02C985: db $1F, $1E, $1F, $1F, $05, $05, $05, $06 ; 0x0D\n #_02C98D: db $1F, $1E, $1F, $1F, $06, $06, $06, $07 ; 0x0E\n #_02C995: db $1F, $1E, $1F, $1F, $09, $09, $09, $0A ; 0x0F\n #_02C99D: db $1F, $1E, $1F, $1F, $0A, $0A, $0A, $0B ; 0x10\n #_02C9A5: db $1D, $1C, $1D, $1D, $06, $06, $06, $07 ; 0x11\n #_02C9AD: db $1D, $1C, $1D, $1D, $05, $04, $05, $05 ; 0x12\n #_02C9B5: db $1F, $1E, $1F, $1F, $10, $10, $10, $11 ; 0x13\n #_02C9BD: db $1D, $1C, $1D, $1D, $11, $10, $11, $11 ; 0x14\n #_02C9C5: db $05, $04, $05, $05, $07, $06, $07, $07 ; 0x15\n #_02C9CD: db $1F, $1E, $1F, $1F, $16, $16, $16, $17 ; 0x16\n #_02C9D5: db $1D, $1C, $1D, $1D, $17, $16, $17, $17 ; 0x17\n #_02C9DD: db $1B, $1A, $1B, $1B, $0A, $0A, $0A, $0B ; 0x18\n #_02C9E5: db $05, $04, $05, $05, $09, $08, $09, $09 ; 0x19\n #_02C9ED: db $1F, $1E, $1F, $1F, $1A, $1A, $1A, $1B ; 0x1A\n #_02C9F5: db $1D, $1C, $1D, $1D, $1A, $1A, $1A, $1B ; 0x1B\n #_02C9FD: db $1F, $1E, $1F, $1F, $1D, $1D, $1D, $1E ; 0x1C\n #_02CA05: db $1D, $1C, $1D, $1D, $1D, $1C, $1D, $1D ; 0x1D\n #_02CA0D: db $1F, $1E, $1F, $1F, $1F, $1E, $1F, $1F ; 0x1E\n #_02CA15: db $1D, $1C, $1D, $1D, $1E, $1E, $1E, $1F ; 0x1F\n #_02CA1D: db $1B, $1A, $1B, $1B, $1E, $1E, $1E, $1F ; 0x20\n #_02CA25: db $1F, $1E, $1F, $1F, $12, $12, $12, $13 ; 0x21\n #_02CA2D: db $1F, $1E, $1F, $1F, $14, $14, $14, $15 ; 0x22\n #_02CA35: db $1D, $1C, $1D, $1D, $14, $14, $14, $15 ; 0x23\n #_02CA3D: db $1D, $1C, $1D, $1D, $00, $00, $00, $01 ; 0x24\n #_02CA45: db $05, $04, $05, $05, $10, $10, $10, $11 ; 0x25\n #_02CA4D: db $09, $08, $09, $09, $14, $14, $14, $15 ; 0x26\n #_02CA55: db $13, $12, $13, $13, $10, $10, $10, $11 ; 0x27\n #_02CA5D: db $0B, $0A, $0B, $0B, $0C, $0C, $0C, $0D ; 0x28\n #_02CA65: db $0B, $0A, $0B, $0B, $0E, $0E, $0E, $0F ; 0x29\n #_02CA6D: db $0B, $0A, $0B, $0B, $10, $10, $10, $11 ; 0x2A\n #_02CA75: db $0B, $0A, $0B, $0B, $12, $12, $12, $13 ; 0x2B\n #_02CA7D: db $1D, $1C, $1D, $1D, $02, $02, $02, $03 ; 0x2C\n #_02CA85: db $01, $00, $01, $01, $1D, $1C, $1D, $1D ; 0x2D\n #_02CA8D: db $1D, $1C, $1D, $1D, $0C, $0C, $0C, $0D ; 0x2E\n #_02CA95: db $1D, $1C, $1D, $1D, $0F, $0E, $0F, $0F ; 0x2F\n #_02CA9D: db $1D, $1C, $1D, $1D, $08, $08, $08, $09 ; 0x30\n #_02CAA5: db $1D, $1C, $1D, $1D, $0A, $0A, $0A, $0B ; 0x31\n #_02CAAD: db $0B, $0A, $0B, $0B, $0A, $0A, $0A, $0B ; 0x32\n #_02CAB5: db $0F, $0E, $0F, $0F, $0E, $0E, $0E, $0F ; 0x33\n #_02CABD: db $1B, $1A, $1B, $1B, $16, $16, $16, $17 ; 0x34\n #_02CAC5: db $1B, $1A, $1B, $1B, $0D, $0C, $0D, $0D ; 0x35\n #_02CACD: db $03, $02, $03, $03, $00, $00, $00, $01 ; 0x36\n #_02CAD5: db $01, $00, $01, $01, $18, $18, $18, $19 ; 0x37\n #_02CADD: db $01, $00, $01, $01, $11, $10, $11, $11 ; 0x38\n #_02CAE5: db $05, $04, $05, $05, $1F, $1E, $1F, $1F ; 0x39\n #_02CAED: db $07, $06, $07, $07, $19, $18, $19, $19 ; 0x3A\n #_02CAF5: db $05, $04, $05, $05, $18, $18, $18, $19 ; 0x3B\n #_02CAFD: db $21, $20, $21, $21, $00, $00, $00, $01 ; 0x3C\n #_02CB05: db $23, $22, $23, $23, $1D, $1D, $1D, $1E ; 0x3D\n #_02CB0D: db $21, $20, $21, $21, $02, $02, $02, $03 ; 0x3E\n #_02CB15: db $21, $20, $21, $21, $03, $03, $03, $04 ; 0x3F\n #_02CB1D: db $21, $20, $21, $21, $04, $04, $04, $05 ; 0x40\n #_02CB25: db $23, $22, $23, $23, $0F, $0E, $0F, $0F ; 0x41\n #_02CB2D: db $21, $20, $21, $21, $06, $06, $06, $07 ; 0x42\n #_02CB35: db $21, $20, $21, $21, $06, $06, $06, $07 ; 0x43\n #_02CB3D: db $21, $20, $21, $21, $07, $07, $07, $08 ; 0x44\n #_02CB45: db $21, $20, $21, $21, $0A, $0A, $0A, $0B ; 0x45\n #_02CB4D: db $23, $22, $23, $23, $1F, $1F, $1F, $20 ; 0x46\n #_02CB55: db $21, $20, $21, $21, $0C, $0C, $0C, $0D ; 0x47\n #_02CB5D: db $21, $20, $21, $21, $0D, $0D, $0D, $0E ; 0x48\n #_02CB65: db $21, $20, $21, $21, $0E, $0E, $0E, $0F ; 0x49\n #_02CB6D: db $21, $20, $21, $21, $0F, $0F, $0F, $10 ; 0x4A\n #_02CB75: db $21, $20, $21, $21, $10, $10, $10, $11 ; 0x4B\n #_02CB7D: db $21, $20, $21, $21, $12, $12, $12, $13 ; 0x4C\n #_02CB85: db $21, $20, $21, $21, $14, $14, $14, $15 ; 0x4D\n #_02CB8D: db $21, $20, $21, $21, $16, $16, $16, $17 ; 0x4E\n #_02CB95: db $21, $20, $21, $21, $18, $18, $18, $19 ; 0x4F\n #_02CB9D: db $21, $20, $21, $21, $19, $19, $19, $1A ; 0x50\n #_02CBA5: db $23, $22, $23, $23, $16, $16, $16, $17 ; 0x51\n #_02CBAD: db $23, $22, $23, $23, $17, $17, $17, $18 ; 0x52\n #_02CBB5: db $23, $22, $23, $23, $18, $18, $18, $19 ; 0x53\n #_02CBBD: db $23, $22, $23, $23, $19, $19, $19, $19 ; 0x54\n #_02CBC5: db $23, $22, $23, $23, $1C, $1C, $1C, $1D ; 0x55\n #_02CBCD: db $25, $24, $25, $25, $01, $00, $01, $01 ; 0x56\n #_02CBD5: db $23, $22, $23, $23, $00, $00, $00, $01 ; 0x57\n #_02CBDD: db $23, $22, $23, $23, $05, $05, $05, $06 ; 0x58\n #_02CBE5: db $23, $22, $23, $23, $02, $02, $02, $03 ; 0x59\n #_02CBED: db $23, $22, $23, $23, $04, $04, $04, $05 ; 0x5A\n #_02CBF5: db $23, $22, $23, $23, $06, $06, $06, $07 ; 0x5B\n #_02CBFD: db $23, $22, $23, $23, $08, $08, $08, $09 ; 0x5C\n #_02CC05: db $23, $22, $23, $23, $0A, $0A, $0A, $0B ; 0x5D\n #_02CC0D: db $23, $22, $23, $23, $0B, $0B, $0B, $0C ; 0x5E\n #_02CC15: db $21, $20, $21, $21, $1A, $1A, $1A, $1B ; 0x5F\n #_02CC1D: db $21, $20, $21, $21, $1E, $1E, $1E, $1F ; 0x60\n #_02CC25: db $23, $22, $23, $23, $12, $12, $12, $13 ; 0x61\n #_02CC2D: db $23, $22, $23, $23, $09, $09, $09, $0A ; 0x62\n #_02CC35: db $23, $22, $23, $23, $0D, $0D, $0D, $0E ; 0x63\n #_02CC3D: db $25, $24, $25, $25, $02, $02, $02, $03 ; 0x64\n #_02CC45: db $25, $24, $25, $25, $04, $04, $04, $05 ; 0x65\n #_02CC4D: db $25, $24, $25, $25, $05, $05, $05, $06 ; 0x66\n #_02CC55: db $23, $22, $23, $23, $11, $11, $11, $12 ; 0x67\n #_02CC5D: db $23, $22, $23, $23, $15, $15, $15, $16 ; 0x68\n #_02CC65: db $21, $20, $21, $21, $1C, $1C, $1C, $1D ; 0x69\n #_02CC6D: db $21, $20, $21, $21, $1D, $1D, $1D, $1E ; 0x6A\n #_02CC75: db $23, $22, $23, $23, $1E, $1E, $1E, $1F ; 0x6B\n #_02CC7D: db $25, $24, $25, $25, $06, $06, $06, $07 ; 0x6C\n #_02CC85: db $25, $24, $25, $25, $08, $08, $08, $09 ; 0x6D\n #_02CC8D: db $25, $24, $25, $25, $09, $09, $09, $0A ; 0x6E\n #_02CC95: db $25, $24, $25, $25, $0A, $0A, $0A, $0B ; 0x6F\n #_02CC9D: db $25, $24, $25, $25, $0B, $0B, $0B, $0C ; 0x70\n #_02CCA5: db $25, $24, $25, $25, $0C, $0C, $0C, $0D ; 0x71\n #_02CCAD: db $25, $24, $25, $25, $0D, $0D, $0D, $0E ; 0x72\n #_02CCB5: db $10, $10, $10, $11, $01, $00, $01, $01 ; 0x73\n #_02CCBD: db $0B, $0A, $0B, $0B, $02, $02, $02, $03 ; 0x74\n #_02CCC5: db $06, $06, $06, $07, $00, $00, $00, $01 ; 0x75\n #_02CCCD: db $0A, $0A, $0A, $0B, $11, $10, $11, $11 ; 0x76\n #_02CCD5: db $0C, $0C, $0C, $0D, $0E, $0E, $0E, $0F ; 0x77\n #_02CCDD: db $0C, $0C, $0C, $0D, $11, $10, $11, $11 ; 0x78\n #_02CCE5: db $0A, $0A, $0A, $0B, $0D, $0C, $0D, $0D ; 0x79\n #_02CCED: db $1C, $1C, $1C, $1D, $03, $02, $03, $03 ; 0x7A\n #_02CCF5: db $00, $00, $00, $01, $01, $00, $01, $01 ; 0x7B\n #_02CCFD: db $03, $02, $03, $03, $10, $10, $10, $11 ; 0x7C\n #_02CD05: db $0A, $0A, $0A, $0B, $0B, $0A, $0B, $0B ; 0x7D\n #_02CD0D: db $1D, $1C, $1D, $1D, $07, $06, $07, $07 ; 0x7E\n #_02CD15: db $1D, $1C, $1D, $1D, $04, $04, $04, $05 ; 0x7F\n #_02CD1D: db $05, $04, $05, $05, $1E, $1E, $1E, $1F ; 0x80\n #_02CD25: db $03, $02, $03, $03, $03, $02, $03, $03 ; 0x81\n #_02CD2D: db $01, $00, $01, $01, $06, $06, $06, $07 ; 0x82\n #_02CD35: db $25, $24, $25, $25, $0E, $0E, $0E, $0F ; 0x83\n #_02CD3D: db $25, $24, $25, $25, $00, $00, $00, $01 ; 0x84\n\n; ---------------------------------------------------------\n\n.horizontal_scroll\n #_02CD45: dw $0900 ; 0x00\n #_02CD47: dw $0900 ; 0x01\n #_02CD49: dw $0480 ; 0x02\n #_02CD4B: dw $0100 ; 0x03\n #_02CD4D: dw $0280 ; 0x04\n #_02CD4F: dw $0400 ; 0x05\n #_02CD51: dw $0000 ; 0x06\n #_02CD53: dw $0300 ; 0x07\n #_02CD55: dw $1280 ; 0x08\n #_02CD57: dw $0880 ; 0x09\n #_02CD59: dw $0B00 ; 0x0A\n #_02CD5B: dw $0600 ; 0x0B\n #_02CD5D: dw $0600 ; 0x0C\n #_02CD5F: dw $0500 ; 0x0D\n #_02CD61: dw $0600 ; 0x0E\n #_02CD63: dw $0900 ; 0x0F\n #_02CD65: dw $0A00 ; 0x10\n #_02CD67: dw $0600 ; 0x11\n #_02CD69: dw $0500 ; 0x12\n #_02CD6B: dw $1080 ; 0x13\n #_02CD6D: dw $1100 ; 0x14\n #_02CD6F: dw $0700 ; 0x15\n #_02CD71: dw $1680 ; 0x16\n #_02CD73: dw $1700 ; 0x17\n #_02CD75: dw $0A00 ; 0x18\n #_02CD77: dw $0900 ; 0x19\n #_02CD79: dw $1A80 ; 0x1A\n #_02CD7B: dw $1B00 ; 0x1B\n #_02CD7D: dw $1D00 ; 0x1C\n #_02CD7F: dw $1D00 ; 0x1D\n #_02CD81: dw $1F00 ; 0x1E\n #_02CD83: dw $1E80 ; 0x1F\n #_02CD85: dw $1E80 ; 0x20\n #_02CD87: dw $1200 ; 0x21\n #_02CD89: dw $1400 ; 0x22\n #_02CD8B: dw $1400 ; 0x23\n #_02CD8D: dw $0000 ; 0x24\n #_02CD8F: dw $1080 ; 0x25\n #_02CD91: dw $1480 ; 0x26\n #_02CD93: dw $1000 ; 0x27\n #_02CD95: dw $0C00 ; 0x28\n #_02CD97: dw $0E00 ; 0x29\n #_02CD99: dw $1000 ; 0x2A\n #_02CD9B: dw $1200 ; 0x2B\n #_02CD9D: dw $0200 ; 0x2C\n #_02CD9F: dw $1D00 ; 0x2D\n #_02CDA1: dw $0C00 ; 0x2E\n #_02CDA3: dw $0F00 ; 0x2F\n #_02CDA5: dw $0800 ; 0x30\n #_02CDA7: dw $0A80 ; 0x31\n #_02CDA9: dw $0A00 ; 0x32\n #_02CDAB: dw $0E80 ; 0x33\n #_02CDAD: dw $1680 ; 0x34\n #_02CDAF: dw $0D00 ; 0x35\n #_02CDB1: dw $0000 ; 0x36\n #_02CDB3: dw $1880 ; 0x37\n #_02CDB5: dw $1100 ; 0x38\n #_02CDB7: dw $1F00 ; 0x39\n #_02CDB9: dw $1900 ; 0x3A\n #_02CDBB: dw $1800 ; 0x3B\n #_02CDBD: dw $0000 ; 0x3C\n #_02CDBF: dw $1D00 ; 0x3D\n #_02CDC1: dw $0200 ; 0x3E\n #_02CDC3: dw $0300 ; 0x3F\n #_02CDC5: dw $0400 ; 0x40\n #_02CDC7: dw $0F00 ; 0x41\n #_02CDC9: dw $0600 ; 0x42\n #_02CDCB: dw $0600 ; 0x43\n #_02CDCD: dw $0700 ; 0x44\n #_02CDCF: dw $0A00 ; 0x45\n #_02CDD1: dw $1F00 ; 0x46\n #_02CDD3: dw $0C00 ; 0x47\n #_02CDD5: dw $0D00 ; 0x48\n #_02CDD7: dw $0E00 ; 0x49\n #_02CDD9: dw $0F00 ; 0x4A\n #_02CDDB: dw $1000 ; 0x4B\n #_02CDDD: dw $1200 ; 0x4C\n #_02CDDF: dw $1400 ; 0x4D\n #_02CDE1: dw $1680 ; 0x4E\n #_02CDE3: dw $1800 ; 0x4F\n #_02CDE5: dw $1900 ; 0x50\n #_02CDE7: dw $1600 ; 0x51\n #_02CDE9: dw $1700 ; 0x52\n #_02CDEB: dw $1800 ; 0x53\n #_02CDED: dw $1900 ; 0x54\n #_02CDEF: dw $1C00 ; 0x55\n #_02CDF1: dw $0100 ; 0x56\n #_02CDF3: dw $0000 ; 0x57\n #_02CDF5: dw $0500 ; 0x58\n #_02CDF7: dw $0200 ; 0x59\n #_02CDF9: dw $0400 ; 0x5A\n #_02CDFB: dw $0600 ; 0x5B\n #_02CDFD: dw $0800 ; 0x5C\n #_02CDFF: dw $0A00 ; 0x5D\n #_02CE01: dw $0B00 ; 0x5E\n #_02CE03: dw $1A00 ; 0x5F\n #_02CE05: dw $1E00 ; 0x60\n #_02CE07: dw $1280 ; 0x61\n #_02CE09: dw $0900 ; 0x62\n #_02CE0B: dw $0D00 ; 0x63\n #_02CE0D: dw $0200 ; 0x64\n #_02CE0F: dw $0400 ; 0x65\n #_02CE11: dw $0500 ; 0x66\n #_02CE13: dw $1100 ; 0x67\n #_02CE15: dw $1500 ; 0x68\n #_02CE17: dw $1C00 ; 0x69\n #_02CE19: dw $1D00 ; 0x6A\n #_02CE1B: dw $1E00 ; 0x6B\n #_02CE1D: dw $0600 ; 0x6C\n #_02CE1F: dw $0800 ; 0x6D\n #_02CE21: dw $0900 ; 0x6E\n #_02CE23: dw $0A00 ; 0x6F\n #_02CE25: dw $0B00 ; 0x70\n #_02CE27: dw $0C00 ; 0x71\n #_02CE29: dw $0D00 ; 0x72\n #_02CE2B: dw $0100 ; 0x73\n #_02CE2D: dw $0280 ; 0x74\n #_02CE2F: dw $0000 ; 0x75\n #_02CE31: dw $1100 ; 0x76\n #_02CE33: dw $0E00 ; 0x77\n #_02CE35: dw $1088 ; 0x78\n #_02CE37: dw $0D00 ; 0x79\n #_02CE39: dw $0300 ; 0x7A\n #_02CE3B: dw $0100 ; 0x7B\n #_02CE3D: dw $1000 ; 0x7C\n #_02CE3F: dw $0B00 ; 0x7D\n #_02CE41: dw $0700 ; 0x7E\n #_02CE43: dw $0400 ; 0x7F\n #_02CE45: dw $1E00 ; 0x80\n #_02CE47: dw $0300 ; 0x81\n #_02CE49: dw $0600 ; 0x82\n #_02CE4B: dw $0E00 ; 0x83\n #_02CE4D: dw $0000 ; 0x84\n\n; ---------------------------------------------------------\n\n.vertical_scroll\n #_02CE4F: dw $2110 ; 0x00\n #_02CE51: dw $2110 ; 0x01\n #_02CE53: dw $0310 ; 0x02\n #_02CE55: dw $0D10 ; 0x03\n #_02CE57: dw $0D10 ; 0x04\n #_02CE59: dw $0D10 ; 0x05\n #_02CE5B: dw $1F10 ; 0x06\n #_02CE5D: dw $1F10 ; 0x07\n #_02CE5F: dw $1910 ; 0x08\n #_02CE61: dw $1110 ; 0x09\n #_02CE63: dw $1110 ; 0x0A\n #_02CE65: dw $1110 ; 0x0B\n #_02CE67: dw $0D10 ; 0x0C\n #_02CE69: dw $1F10 ; 0x0D\n #_02CE6B: dw $1F10 ; 0x0E\n #_02CE6D: dw $1F10 ; 0x0F\n #_02CE6F: dw $1F10 ; 0x10\n #_02CE71: dw $1D10 ; 0x11\n #_02CE73: dw $1D10 ; 0x12\n #_02CE75: dw $1F10 ; 0x13\n #_02CE77: dw $1D10 ; 0x14\n #_02CE79: dw $0510 ; 0x15\n #_02CE7B: dw $1F10 ; 0x16\n #_02CE7D: dw $1D10 ; 0x17\n #_02CE7F: dw $1B10 ; 0x18\n #_02CE81: dw $0510 ; 0x19\n #_02CE83: dw $1F10 ; 0x1A\n #_02CE85: dw $1D10 ; 0x1B\n #_02CE87: dw $1F10 ; 0x1C\n #_02CE89: dw $1D10 ; 0x1D\n #_02CE8B: dw $1F10 ; 0x1E\n #_02CE8D: dw $1D10 ; 0x1F\n #_02CE8F: dw $1B10 ; 0x20\n #_02CE91: dw $1F10 ; 0x21\n #_02CE93: dw $1F10 ; 0x22\n #_02CE95: dw $1D10 ; 0x23\n #_02CE97: dw $1D10 ; 0x24\n #_02CE99: dw $0510 ; 0x25\n #_02CE9B: dw $0910 ; 0x26\n #_02CE9D: dw $1310 ; 0x27\n #_02CE9F: dw $0B10 ; 0x28\n #_02CEA1: dw $0B10 ; 0x29\n #_02CEA3: dw $0B10 ; 0x2A\n #_02CEA5: dw $0B10 ; 0x2B\n #_02CEA7: dw $1D10 ; 0x2C\n #_02CEA9: dw $0110 ; 0x2D\n #_02CEAB: dw $1D10 ; 0x2E\n #_02CEAD: dw $1D10 ; 0x2F\n #_02CEAF: dw $1D10 ; 0x30\n #_02CEB1: dw $1D10 ; 0x31\n #_02CEB3: dw $0B10 ; 0x32\n #_02CEB5: dw $0F10 ; 0x33\n #_02CEB7: dw $1B10 ; 0x34\n #_02CEB9: dw $1B10 ; 0x35\n #_02CEBB: dw $0310 ; 0x36\n #_02CEBD: dw $0110 ; 0x37\n #_02CEBF: dw $0110 ; 0x38\n #_02CEC1: dw $0510 ; 0x39\n #_02CEC3: dw $0710 ; 0x3A\n #_02CEC5: dw $0510 ; 0x3B\n #_02CEC7: dw $2110 ; 0x3C\n #_02CEC9: dw $2310 ; 0x3D\n #_02CECB: dw $2110 ; 0x3E\n #_02CECD: dw $2110 ; 0x3F\n #_02CECF: dw $2110 ; 0x40\n #_02CED1: dw $2310 ; 0x41\n #_02CED3: dw $2110 ; 0x42\n #_02CED5: dw $2000 ; 0x43\n #_02CED7: dw $2110 ; 0x44\n #_02CED9: dw $2110 ; 0x45\n #_02CEDB: dw $2310 ; 0x46\n #_02CEDD: dw $2110 ; 0x47\n #_02CEDF: dw $2110 ; 0x48\n #_02CEE1: dw $2110 ; 0x49\n #_02CEE3: dw $2110 ; 0x4A\n #_02CEE5: dw $2110 ; 0x4B\n #_02CEE7: dw $2110 ; 0x4C\n #_02CEE9: dw $2110 ; 0x4D\n #_02CEEB: dw $2110 ; 0x4E\n #_02CEED: dw $2110 ; 0x4F\n #_02CEEF: dw $2110 ; 0x50\n #_02CEF1: dw $2310 ; 0x51\n #_02CEF3: dw $2310 ; 0x52\n #_02CEF5: dw $2310 ; 0x53\n #_02CEF7: dw $2310 ; 0x54\n #_02CEF9: dw $2310 ; 0x55\n #_02CEFB: dw $2510 ; 0x56\n #_02CEFD: dw $2310 ; 0x57\n #_02CEFF: dw $2310 ; 0x58\n #_02CF01: dw $2310 ; 0x59\n #_02CF03: dw $2310 ; 0x5A\n #_02CF05: dw $2310 ; 0x5B\n #_02CF07: dw $2310 ; 0x5C\n #_02CF09: dw $2310 ; 0x5D\n #_02CF0B: dw $2310 ; 0x5E\n #_02CF0D: dw $2110 ; 0x5F\n #_02CF0F: dw $2110 ; 0x60\n #_02CF11: dw $2310 ; 0x61\n #_02CF13: dw $2310 ; 0x62\n #_02CF15: dw $2310 ; 0x63\n #_02CF17: dw $2510 ; 0x64\n #_02CF19: dw $2510 ; 0x65\n #_02CF1B: dw $2510 ; 0x66\n #_02CF1D: dw $2310 ; 0x67\n #_02CF1F: dw $2310 ; 0x68\n #_02CF21: dw $2110 ; 0x69\n #_02CF23: dw $2110 ; 0x6A\n #_02CF25: dw $2310 ; 0x6B\n #_02CF27: dw $2510 ; 0x6C\n #_02CF29: dw $2510 ; 0x6D\n #_02CF2B: dw $2510 ; 0x6E\n #_02CF2D: dw $2510 ; 0x6F\n #_02CF2F: dw $2510 ; 0x70\n #_02CF31: dw $2510 ; 0x71\n #_02CF33: dw $2510 ; 0x72\n #_02CF35: dw $1010 ; 0x73\n #_02CF37: dw $0B10 ; 0x74\n #_02CF39: dw $0610 ; 0x75\n #_02CF3B: dw $0A00 ; 0x76\n #_02CF3D: dw $0C00 ; 0x77\n #_02CF3F: dw $0C29 ; 0x78\n #_02CF41: dw $0A00 ; 0x79\n #_02CF43: dw $1C3D ; 0x7A\n #_02CF45: dw $0010 ; 0x7B\n #_02CF47: dw $02CE ; 0x7C\n #_02CF49: dw $0A10 ; 0x7D\n #_02CF4B: dw $1D10 ; 0x7E\n #_02CF4D: dw $1D10 ; 0x7F\n #_02CF4F: dw $0510 ; 0x80\n #_02CF51: dw $02AD ; 0x81\n #_02CF53: dw $0110 ; 0x82\n #_02CF55: dw $2510 ; 0x83\n #_02CF57: dw $2510 ; 0x84\n\n; ---------------------------------------------------------\n\n.y_coordinate\n #_02CF59: dw $2178 ; 0x00\n #_02CF5B: dw $21D8 ; 0x01\n #_02CF5D: dw $03C0 ; 0x02\n #_02CF5F: dw $0DD8 ; 0x03\n #_02CF61: dw $0DC0 ; 0x04\n #_02CF63: dw $0DD8 ; 0x05\n #_02CF65: dw $1FD8 ; 0x06\n #_02CF67: dw $1FC0 ; 0x07\n #_02CF69: dw $19D8 ; 0x08\n #_02CF6B: dw $11D8 ; 0x09\n #_02CF6D: dw $11D8 ; 0x0A\n #_02CF6F: dw $11D8 ; 0x0B\n #_02CF71: dw $0DD8 ; 0x0C\n #_02CF73: dw $1FD8 ; 0x0D\n #_02CF75: dw $1FD8 ; 0x0E\n #_02CF77: dw $1FD8 ; 0x0F\n #_02CF79: dw $1FD8 ; 0x10\n #_02CF7B: dw $1DD8 ; 0x11\n #_02CF7D: dw $1DD8 ; 0x12\n #_02CF7F: dw $1FD8 ; 0x13\n #_02CF81: dw $1DD8 ; 0x14\n #_02CF83: dw $05D8 ; 0x15\n #_02CF85: dw $1FD8 ; 0x16\n #_02CF87: dw $1DD8 ; 0x17\n #_02CF89: dw $1BD8 ; 0x18\n #_02CF8B: dw $05D8 ; 0x19\n #_02CF8D: dw $1FC0 ; 0x1A\n #_02CF8F: dw $1DD8 ; 0x1B\n #_02CF91: dw $1FC0 ; 0x1C\n #_02CF93: dw $1DD8 ; 0x1D\n #_02CF95: dw $1FD8 ; 0x1E\n #_02CF97: dw $1DD8 ; 0x1F\n #_02CF99: dw $1BD8 ; 0x20\n #_02CF9B: dw $1FD8 ; 0x21\n #_02CF9D: dw $1FC0 ; 0x22\n #_02CF9F: dw $1DD8 ; 0x23\n #_02CFA1: dw $1DD8 ; 0x24\n #_02CFA3: dw $05D8 ; 0x25\n #_02CFA5: dw $09D8 ; 0x26\n #_02CFA7: dw $13D8 ; 0x27\n #_02CFA9: dw $0BD8 ; 0x28\n #_02CFAB: dw $0BD8 ; 0x29\n #_02CFAD: dw $0BD8 ; 0x2A\n #_02CFAF: dw $0BD8 ; 0x2B\n #_02CFB1: dw $1DD8 ; 0x2C\n #_02CFB3: dw $01D8 ; 0x2D\n #_02CFB5: dw $1DC0 ; 0x2E\n #_02CFB7: dw $1DC0 ; 0x2F\n #_02CFB9: dw $1DC0 ; 0x30\n #_02CFBB: dw $1DD8 ; 0x31\n #_02CFBD: dw $0BD8 ; 0x32\n #_02CFBF: dw $0FC0 ; 0x33\n #_02CFC1: dw $1BD8 ; 0x34\n #_02CFC3: dw $1BD8 ; 0x35\n #_02CFC5: dw $03D8 ; 0x36\n #_02CFC7: dw $01D8 ; 0x37\n #_02CFC9: dw $01D8 ; 0x38\n #_02CFCB: dw $05D8 ; 0x39\n #_02CFCD: dw $07D8 ; 0x3A\n #_02CFCF: dw $05D8 ; 0x3B\n #_02CFD1: dw $21D8 ; 0x3C\n #_02CFD3: dw $23D8 ; 0x3D\n #_02CFD5: dw $21D8 ; 0x3E\n #_02CFD7: dw $21D8 ; 0x3F\n #_02CFD9: dw $21D8 ; 0x40\n #_02CFDB: dw $23D8 ; 0x41\n #_02CFDD: dw $21D8 ; 0x42\n #_02CFDF: dw $2020 ; 0x43\n #_02CFE1: dw $21D8 ; 0x44\n #_02CFE3: dw $21D8 ; 0x45\n #_02CFE5: dw $23D8 ; 0x46\n #_02CFE7: dw $21D8 ; 0x47\n #_02CFE9: dw $21D8 ; 0x48\n #_02CFEB: dw $21D8 ; 0x49\n #_02CFED: dw $21D8 ; 0x4A\n #_02CFEF: dw $21D8 ; 0x4B\n #_02CFF1: dw $21D8 ; 0x4C\n #_02CFF3: dw $21C0 ; 0x4D\n #_02CFF5: dw $21D8 ; 0x4E\n #_02CFF7: dw $21D8 ; 0x4F\n #_02CFF9: dw $21D8 ; 0x50\n #_02CFFB: dw $23C0 ; 0x51\n #_02CFFD: dw $23D8 ; 0x52\n #_02CFFF: dw $23D8 ; 0x53\n #_02D001: dw $23D8 ; 0x54\n #_02D003: dw $23D8 ; 0x55\n #_02D005: dw $25D8 ; 0x56\n #_02D007: dw $23D8 ; 0x57\n #_02D009: dw $23D8 ; 0x58\n #_02D00B: dw $23D8 ; 0x59\n #_02D00D: dw $23D8 ; 0x5A\n #_02D00F: dw $23D8 ; 0x5B\n #_02D011: dw $23D8 ; 0x5C\n #_02D013: dw $23D8 ; 0x5D\n #_02D015: dw $23D8 ; 0x5E\n #_02D017: dw $21D8 ; 0x5F\n #_02D019: dw $21D8 ; 0x60\n #_02D01B: dw $23D8 ; 0x61\n #_02D01D: dw $23D8 ; 0x62\n #_02D01F: dw $23D8 ; 0x63\n #_02D021: dw $25D8 ; 0x64\n #_02D023: dw $25D8 ; 0x65\n #_02D025: dw $25D8 ; 0x66\n #_02D027: dw $23D8 ; 0x67\n #_02D029: dw $23D8 ; 0x68\n #_02D02B: dw $21C0 ; 0x69\n #_02D02D: dw $21C0 ; 0x6A\n #_02D02F: dw $23D8 ; 0x6B\n #_02D031: dw $25D8 ; 0x6C\n #_02D033: dw $25D8 ; 0x6D\n #_02D035: dw $25D8 ; 0x6E\n #_02D037: dw $25D8 ; 0x6F\n #_02D039: dw $25D8 ; 0x70\n #_02D03B: dw $25D8 ; 0x71\n #_02D03D: dw $25D8 ; 0x72\n #_02D03F: dw $1080 ; 0x73\n #_02D041: dw $0BA8 ; 0x74\n #_02D043: dw $0698 ; 0x75\n #_02D045: dw $0A69 ; 0x76\n #_02D047: dw $0C68 ; 0x77\n #_02D049: dw $0C96 ; 0x78\n #_02D04B: dw $0A68 ; 0x79\n #_02D04D: dw $1CA9 ; 0x7A\n #_02D04F: dw $0089 ; 0x7B\n #_02D051: dw $033B ; 0x7C\n #_02D053: dw $0A96 ; 0x7D\n #_02D055: dw $1D7D ; 0x7E\n #_02D057: dw $1D89 ; 0x7F\n #_02D059: dw $0589 ; 0x80\n #_02D05B: dw $031A ; 0x81\n #_02D05D: dw $0197 ; 0x82\n #_02D05F: dw $25D8 ; 0x83\n #_02D061: dw $25D8 ; 0x84\n\n; ---------------------------------------------------------\n\n.x_coordinate\n #_02D063: dw $0978 ; 0x00\n #_02D065: dw $0978 ; 0x01\n #_02D067: dw $04F8 ; 0x02\n #_02D069: dw $0178 ; 0x03\n #_02D06B: dw $02F8 ; 0x04\n #_02D06D: dw $0478 ; 0x05\n #_02D06F: dw $0078 ; 0x06\n #_02D071: dw $0378 ; 0x07\n #_02D073: dw $12F8 ; 0x08\n #_02D075: dw $08F8 ; 0x09\n #_02D077: dw $0B78 ; 0x0A\n #_02D079: dw $0678 ; 0x0B\n #_02D07B: dw $0678 ; 0x0C\n #_02D07D: dw $0578 ; 0x0D\n #_02D07F: dw $0678 ; 0x0E\n #_02D081: dw $0978 ; 0x0F\n #_02D083: dw $0A78 ; 0x10\n #_02D085: dw $0678 ; 0x11\n #_02D087: dw $0578 ; 0x12\n #_02D089: dw $10F8 ; 0x13\n #_02D08B: dw $1178 ; 0x14\n #_02D08D: dw $0778 ; 0x15\n #_02D08F: dw $16F8 ; 0x16\n #_02D091: dw $1778 ; 0x17\n #_02D093: dw $0A78 ; 0x18\n #_02D095: dw $0978 ; 0x19\n #_02D097: dw $1AF8 ; 0x1A\n #_02D099: dw $1B78 ; 0x1B\n #_02D09B: dw $1D78 ; 0x1C\n #_02D09D: dw $1D78 ; 0x1D\n #_02D09F: dw $1F78 ; 0x1E\n #_02D0A1: dw $1EF8 ; 0x1F\n #_02D0A3: dw $1EF8 ; 0x20\n #_02D0A5: dw $1278 ; 0x21\n #_02D0A7: dw $1478 ; 0x22\n #_02D0A9: dw $1478 ; 0x23\n #_02D0AB: dw $0078 ; 0x24\n #_02D0AD: dw $10F8 ; 0x25\n #_02D0AF: dw $14F8 ; 0x26\n #_02D0B1: dw $1078 ; 0x27\n #_02D0B3: dw $0C78 ; 0x28\n #_02D0B5: dw $0E78 ; 0x29\n #_02D0B7: dw $1078 ; 0x2A\n #_02D0B9: dw $1278 ; 0x2B\n #_02D0BB: dw $0278 ; 0x2C\n #_02D0BD: dw $1D78 ; 0x2D\n #_02D0BF: dw $0C78 ; 0x2E\n #_02D0C1: dw $0F78 ; 0x2F\n #_02D0C3: dw $0878 ; 0x30\n #_02D0C5: dw $0AF8 ; 0x31\n #_02D0C7: dw $0A78 ; 0x32\n #_02D0C9: dw $0EF8 ; 0x33\n #_02D0CB: dw $16F8 ; 0x34\n #_02D0CD: dw $0D78 ; 0x35\n #_02D0CF: dw $0078 ; 0x36\n #_02D0D1: dw $18F8 ; 0x37\n #_02D0D3: dw $1178 ; 0x38\n #_02D0D5: dw $1F78 ; 0x39\n #_02D0D7: dw $1978 ; 0x3A\n #_02D0D9: dw $1878 ; 0x3B\n #_02D0DB: dw $0078 ; 0x3C\n #_02D0DD: dw $1D78 ; 0x3D\n #_02D0DF: dw $0278 ; 0x3E\n #_02D0E1: dw $0378 ; 0x3F\n #_02D0E3: dw $0478 ; 0x40\n #_02D0E5: dw $0F78 ; 0x41\n #_02D0E7: dw $0678 ; 0x42\n #_02D0E9: dw $0678 ; 0x43\n #_02D0EB: dw $0778 ; 0x44\n #_02D0ED: dw $0A78 ; 0x45\n #_02D0EF: dw $1F78 ; 0x46\n #_02D0F1: dw $0C78 ; 0x47\n #_02D0F3: dw $0D78 ; 0x48\n #_02D0F5: dw $0E78 ; 0x49\n #_02D0F7: dw $0F78 ; 0x4A\n #_02D0F9: dw $1078 ; 0x4B\n #_02D0FB: dw $1278 ; 0x4C\n #_02D0FD: dw $1478 ; 0x4D\n #_02D0FF: dw $16F8 ; 0x4E\n #_02D101: dw $1878 ; 0x4F\n #_02D103: dw $1978 ; 0x50\n #_02D105: dw $1678 ; 0x51\n #_02D107: dw $1778 ; 0x52\n #_02D109: dw $1878 ; 0x53\n #_02D10B: dw $1978 ; 0x54\n #_02D10D: dw $1C78 ; 0x55\n #_02D10F: dw $0178 ; 0x56\n #_02D111: dw $0078 ; 0x57\n #_02D113: dw $0578 ; 0x58\n #_02D115: dw $0278 ; 0x59\n #_02D117: dw $0478 ; 0x5A\n #_02D119: dw $0678 ; 0x5B\n #_02D11B: dw $0878 ; 0x5C\n #_02D11D: dw $0A78 ; 0x5D\n #_02D11F: dw $0B78 ; 0x5E\n #_02D121: dw $1A78 ; 0x5F\n #_02D123: dw $1E78 ; 0x60\n #_02D125: dw $12F8 ; 0x61\n #_02D127: dw $0978 ; 0x62\n #_02D129: dw $0D78 ; 0x63\n #_02D12B: dw $0278 ; 0x64\n #_02D12D: dw $0478 ; 0x65\n #_02D12F: dw $0578 ; 0x66\n #_02D131: dw $1178 ; 0x67\n #_02D133: dw $1578 ; 0x68\n #_02D135: dw $1C78 ; 0x69\n #_02D137: dw $1D78 ; 0x6A\n #_02D139: dw $1E78 ; 0x6B\n #_02D13B: dw $0678 ; 0x6C\n #_02D13D: dw $0878 ; 0x6D\n #_02D13F: dw $0978 ; 0x6E\n #_02D141: dw $0A78 ; 0x6F\n #_02D143: dw $0B78 ; 0x70\n #_02D145: dw $0C78 ; 0x71\n #_02D147: dw $0D78 ; 0x72\n #_02D149: dw $01A8 ; 0x73\n #_02D14B: dw $02F8 ; 0x74\n #_02D14D: dw $0078 ; 0x75\n #_02D14F: dw $1190 ; 0x76\n #_02D151: dw $0E80 ; 0x77\n #_02D153: dw $1100 ; 0x78\n #_02D155: dw $0D40 ; 0x79\n #_02D157: dw $0370 ; 0x7A\n #_02D159: dw $017F ; 0x7B\n #_02D15B: dw $1073 ; 0x7C\n #_02D15D: dw $0B9F ; 0x7D\n #_02D15F: dw $0778 ; 0x7E\n #_02D161: dw $047F ; 0x7F\n #_02D163: dw $1E61 ; 0x80\n #_02D165: dw $0393 ; 0x81\n #_02D167: dw $0677 ; 0x82\n #_02D169: dw $0E78 ; 0x83\n #_02D16B: dw $0078 ; 0x84\n\n; ---------------------------------------------------------\n\n.camera_trigger_y\n #_02D16D: dw $0187 ; 0x00\n #_02D16F: dw $0187 ; 0x01\n #_02D171: dw $0187 ; 0x02\n #_02D173: dw $0187 ; 0x03\n #_02D175: dw $0187 ; 0x04\n #_02D177: dw $0187 ; 0x05\n #_02D179: dw $0187 ; 0x06\n #_02D17B: dw $0187 ; 0x07\n #_02D17D: dw $0187 ; 0x08\n #_02D17F: dw $0187 ; 0x09\n #_02D181: dw $0187 ; 0x0A\n #_02D183: dw $0187 ; 0x0B\n #_02D185: dw $0187 ; 0x0C\n #_02D187: dw $0187 ; 0x0D\n #_02D189: dw $0187 ; 0x0E\n #_02D18B: dw $0187 ; 0x0F\n #_02D18D: dw $0187 ; 0x10\n #_02D18F: dw $0187 ; 0x11\n #_02D191: dw $0187 ; 0x12\n #_02D193: dw $0187 ; 0x13\n #_02D195: dw $0187 ; 0x14\n #_02D197: dw $0187 ; 0x15\n #_02D199: dw $0187 ; 0x16\n #_02D19B: dw $0187 ; 0x17\n #_02D19D: dw $0187 ; 0x18\n #_02D19F: dw $0187 ; 0x19\n #_02D1A1: dw $0187 ; 0x1A\n #_02D1A3: dw $0187 ; 0x1B\n #_02D1A5: dw $0187 ; 0x1C\n #_02D1A7: dw $0187 ; 0x1D\n #_02D1A9: dw $0187 ; 0x1E\n #_02D1AB: dw $0187 ; 0x1F\n #_02D1AD: dw $0187 ; 0x20\n #_02D1AF: dw $0187 ; 0x21\n #_02D1B1: dw $0187 ; 0x22\n #_02D1B3: dw $0187 ; 0x23\n #_02D1B5: dw $0187 ; 0x24\n #_02D1B7: dw $0187 ; 0x25\n #_02D1B9: dw $0187 ; 0x26\n #_02D1BB: dw $0187 ; 0x27\n #_02D1BD: dw $0187 ; 0x28\n #_02D1BF: dw $0187 ; 0x29\n #_02D1C1: dw $0187 ; 0x2A\n #_02D1C3: dw $0187 ; 0x2B\n #_02D1C5: dw $0187 ; 0x2C\n #_02D1C7: dw $0187 ; 0x2D\n #_02D1C9: dw $0187 ; 0x2E\n #_02D1CB: dw $0187 ; 0x2F\n #_02D1CD: dw $0187 ; 0x30\n #_02D1CF: dw $0187 ; 0x31\n #_02D1D1: dw $0187 ; 0x32\n #_02D1D3: dw $0187 ; 0x33\n #_02D1D5: dw $0187 ; 0x34\n #_02D1D7: dw $0187 ; 0x35\n #_02D1D9: dw $0187 ; 0x36\n #_02D1DB: dw $0187 ; 0x37\n #_02D1DD: dw $0187 ; 0x38\n #_02D1DF: dw $0187 ; 0x39\n #_02D1E1: dw $0187 ; 0x3A\n #_02D1E3: dw $0187 ; 0x3B\n #_02D1E5: dw $0187 ; 0x3C\n #_02D1E7: dw $0187 ; 0x3D\n #_02D1E9: dw $0187 ; 0x3E\n #_02D1EB: dw $0187 ; 0x3F\n #_02D1ED: dw $0187 ; 0x40\n #_02D1EF: dw $0187 ; 0x41\n #_02D1F1: dw $0187 ; 0x42\n #_02D1F3: dw $0074 ; 0x43\n #_02D1F5: dw $0187 ; 0x44\n #_02D1F7: dw $0187 ; 0x45\n #_02D1F9: dw $0187 ; 0x46\n #_02D1FB: dw $0187 ; 0x47\n #_02D1FD: dw $0187 ; 0x48\n #_02D1FF: dw $0187 ; 0x49\n #_02D201: dw $0187 ; 0x4A\n #_02D203: dw $0187 ; 0x4B\n #_02D205: dw $0187 ; 0x4C\n #_02D207: dw $0187 ; 0x4D\n #_02D209: dw $0187 ; 0x4E\n #_02D20B: dw $0187 ; 0x4F\n #_02D20D: dw $0187 ; 0x50\n #_02D20F: dw $0187 ; 0x51\n #_02D211: dw $0187 ; 0x52\n #_02D213: dw $0187 ; 0x53\n #_02D215: dw $0187 ; 0x54\n #_02D217: dw $0187 ; 0x55\n #_02D219: dw $0187 ; 0x56\n #_02D21B: dw $0187 ; 0x57\n #_02D21D: dw $0187 ; 0x58\n #_02D21F: dw $0187 ; 0x59\n #_02D221: dw $0187 ; 0x5A\n #_02D223: dw $0187 ; 0x5B\n #_02D225: dw $0187 ; 0x5C\n #_02D227: dw $0187 ; 0x5D\n #_02D229: dw $0187 ; 0x5E\n #_02D22B: dw $0187 ; 0x5F\n #_02D22D: dw $0187 ; 0x60\n #_02D22F: dw $0187 ; 0x61\n #_02D231: dw $0187 ; 0x62\n #_02D233: dw $0187 ; 0x63\n #_02D235: dw $0187 ; 0x64\n #_02D237: dw $0187 ; 0x65\n #_02D239: dw $0187 ; 0x66\n #_02D23B: dw $0187 ; 0x67\n #_02D23D: dw $0187 ; 0x68\n #_02D23F: dw $0187 ; 0x69\n #_02D241: dw $0187 ; 0x6A\n #_02D243: dw $0187 ; 0x6B\n #_02D245: dw $0187 ; 0x6C\n #_02D247: dw $0187 ; 0x6D\n #_02D249: dw $0187 ; 0x6E\n #_02D24B: dw $0187 ; 0x6F\n #_02D24D: dw $0187 ; 0x70\n #_02D24F: dw $0187 ; 0x71\n #_02D251: dw $0187 ; 0x72\n #_02D253: dw $0088 ; 0x73\n #_02D255: dw $0188 ; 0x74\n #_02D257: dw $0088 ; 0x75\n #_02D259: dw $0077 ; 0x76\n #_02D25B: dw $0078 ; 0x77\n #_02D25D: dw $00A1 ; 0x78\n #_02D25F: dw $0077 ; 0x79\n #_02D261: dw $00B4 ; 0x7A\n #_02D263: dw $0088 ; 0x7B\n #_02D265: dw $0146 ; 0x7C\n #_02D267: dw $0088 ; 0x7D\n #_02D269: dw $0188 ; 0x7E\n #_02D26B: dw $0187 ; 0x7F\n #_02D26D: dw $0187 ; 0x80\n #_02D26F: dw $0125 ; 0x81\n #_02D271: dw $0188 ; 0x82\n #_02D273: dw $0187 ; 0x83\n #_02D275: dw $0187 ; 0x84\n\n; ---------------------------------------------------------\n\n.camera_trigger_x\n #_02D277: dw $017F ; 0x00\n #_02D279: dw $017F ; 0x01\n #_02D27B: dw $00FF ; 0x02\n #_02D27D: dw $017F ; 0x03\n #_02D27F: dw $00FF ; 0x04\n #_02D281: dw $007F ; 0x05\n #_02D283: dw $007F ; 0x06\n #_02D285: dw $017F ; 0x07\n #_02D287: dw $00FF ; 0x08\n #_02D289: dw $00FF ; 0x09\n #_02D28B: dw $017F ; 0x0A\n #_02D28D: dw $007F ; 0x0B\n #_02D28F: dw $007F ; 0x0C\n #_02D291: dw $017F ; 0x0D\n #_02D293: dw $007F ; 0x0E\n #_02D295: dw $017F ; 0x0F\n #_02D297: dw $007F ; 0x10\n #_02D299: dw $007F ; 0x11\n #_02D29B: dw $017F ; 0x12\n #_02D29D: dw $00FF ; 0x13\n #_02D29F: dw $017F ; 0x14\n #_02D2A1: dw $017F ; 0x15\n #_02D2A3: dw $00FF ; 0x16\n #_02D2A5: dw $017F ; 0x17\n #_02D2A7: dw $007F ; 0x18\n #_02D2A9: dw $017F ; 0x19\n #_02D2AB: dw $00FF ; 0x1A\n #_02D2AD: dw $017F ; 0x1B\n #_02D2AF: dw $017F ; 0x1C\n #_02D2B1: dw $017F ; 0x1D\n #_02D2B3: dw $017F ; 0x1E\n #_02D2B5: dw $00FF ; 0x1F\n #_02D2B7: dw $00FF ; 0x20\n #_02D2B9: dw $007F ; 0x21\n #_02D2BB: dw $007F ; 0x22\n #_02D2BD: dw $007F ; 0x23\n #_02D2BF: dw $007F ; 0x24\n #_02D2C1: dw $00FF ; 0x25\n #_02D2C3: dw $00FF ; 0x26\n #_02D2C5: dw $007F ; 0x27\n #_02D2C7: dw $007F ; 0x28\n #_02D2C9: dw $007F ; 0x29\n #_02D2CB: dw $007F ; 0x2A\n #_02D2CD: dw $007F ; 0x2B\n #_02D2CF: dw $007F ; 0x2C\n #_02D2D1: dw $017F ; 0x2D\n #_02D2D3: dw $007F ; 0x2E\n #_02D2D5: dw $017F ; 0x2F\n #_02D2D7: dw $007F ; 0x30\n #_02D2D9: dw $00FF ; 0x31\n #_02D2DB: dw $007F ; 0x32\n #_02D2DD: dw $00FF ; 0x33\n #_02D2DF: dw $00FF ; 0x34\n #_02D2E1: dw $017F ; 0x35\n #_02D2E3: dw $007F ; 0x36\n #_02D2E5: dw $00FF ; 0x37\n #_02D2E7: dw $017F ; 0x38\n #_02D2E9: dw $017F ; 0x39\n #_02D2EB: dw $017F ; 0x3A\n #_02D2ED: dw $007F ; 0x3B\n #_02D2EF: dw $007F ; 0x3C\n #_02D2F1: dw $017F ; 0x3D\n #_02D2F3: dw $007F ; 0x3E\n #_02D2F5: dw $017F ; 0x3F\n #_02D2F7: dw $007F ; 0x40\n #_02D2F9: dw $017F ; 0x41\n #_02D2FB: dw $007F ; 0x42\n #_02D2FD: dw $007F ; 0x43\n #_02D2FF: dw $017F ; 0x44\n #_02D301: dw $007F ; 0x45\n #_02D303: dw $017F ; 0x46\n #_02D305: dw $007F ; 0x47\n #_02D307: dw $017F ; 0x48\n #_02D309: dw $007F ; 0x49\n #_02D30B: dw $017F ; 0x4A\n #_02D30D: dw $007F ; 0x4B\n #_02D30F: dw $007F ; 0x4C\n #_02D311: dw $007F ; 0x4D\n #_02D313: dw $00FF ; 0x4E\n #_02D315: dw $007F ; 0x4F\n #_02D317: dw $017F ; 0x50\n #_02D319: dw $007F ; 0x51\n #_02D31B: dw $017F ; 0x52\n #_02D31D: dw $007F ; 0x53\n #_02D31F: dw $017F ; 0x54\n #_02D321: dw $007F ; 0x55\n #_02D323: dw $017F ; 0x56\n #_02D325: dw $007F ; 0x57\n #_02D327: dw $017F ; 0x58\n #_02D329: dw $007F ; 0x59\n #_02D32B: dw $007F ; 0x5A\n #_02D32D: dw $007F ; 0x5B\n #_02D32F: dw $007F ; 0x5C\n #_02D331: dw $007F ; 0x5D\n #_02D333: dw $017F ; 0x5E\n #_02D335: dw $007F ; 0x5F\n #_02D337: dw $007F ; 0x60\n #_02D339: dw $00FF ; 0x61\n #_02D33B: dw $017F ; 0x62\n #_02D33D: dw $017F ; 0x63\n #_02D33F: dw $007F ; 0x64\n #_02D341: dw $007F ; 0x65\n #_02D343: dw $017F ; 0x66\n #_02D345: dw $017F ; 0x67\n #_02D347: dw $017F ; 0x68\n #_02D349: dw $007F ; 0x69\n #_02D34B: dw $017F ; 0x6A\n #_02D34D: dw $007F ; 0x6B\n #_02D34F: dw $007F ; 0x6C\n #_02D351: dw $007F ; 0x6D\n #_02D353: dw $017F ; 0x6E\n #_02D355: dw $007F ; 0x6F\n #_02D357: dw $017F ; 0x70\n #_02D359: dw $007F ; 0x71\n #_02D35B: dw $017F ; 0x72\n #_02D35D: dw $017F ; 0x73\n #_02D35F: dw $00FF ; 0x74\n #_02D361: dw $007F ; 0x75\n #_02D363: dw $017F ; 0x76\n #_02D365: dw $007F ; 0x77\n #_02D367: dw $0107 ; 0x78\n #_02D369: dw $017F ; 0x79\n #_02D36B: dw $017F ; 0x7A\n #_02D36D: dw $017F ; 0x7B\n #_02D36F: dw $007F ; 0x7C\n #_02D371: dw $017F ; 0x7D\n #_02D373: dw $017F ; 0x7E\n #_02D375: dw $007F ; 0x7F\n #_02D377: dw $007F ; 0x80\n #_02D379: dw $017F ; 0x81\n #_02D37B: dw $007F ; 0x82\n #_02D37D: dw $007F ; 0x83\n #_02D37F: dw $007F ; 0x84\n\n; ---------------------------------------------------------\n\n.main_GFX\n #_02D381: db $03 ; 0x00\n #_02D382: db $03 ; 0x01\n #_02D383: db $04 ; 0x02\n #_02D384: db $04 ; 0x03\n #_02D385: db $04 ; 0x04\n #_02D386: db $04 ; 0x05\n #_02D387: db $06 ; 0x06\n #_02D388: db $06 ; 0x07\n #_02D389: db $05 ; 0x08\n #_02D38A: db $12 ; 0x09\n #_02D38B: db $12 ; 0x0A\n #_02D38C: db $12 ; 0x0B\n #_02D38D: db $12 ; 0x0C\n #_02D38E: db $03 ; 0x0D\n #_02D38F: db $03 ; 0x0E\n #_02D390: db $03 ; 0x0F\n #_02D391: db $03 ; 0x10\n #_02D392: db $06 ; 0x11\n #_02D393: db $06 ; 0x12\n #_02D394: db $06 ; 0x13\n #_02D395: db $06 ; 0x14\n #_02D396: db $0D ; 0x15\n #_02D397: db $06 ; 0x16\n #_02D398: db $06 ; 0x17\n #_02D399: db $0D ; 0x18\n #_02D39A: db $0D ; 0x19\n #_02D39B: db $06 ; 0x1A\n #_02D39C: db $06 ; 0x1B\n #_02D39D: db $06 ; 0x1C\n #_02D39E: db $06 ; 0x1D\n #_02D39F: db $06 ; 0x1E\n #_02D3A0: db $06 ; 0x1F\n #_02D3A1: db $06 ; 0x20\n #_02D3A2: db $06 ; 0x21\n #_02D3A3: db $06 ; 0x22\n #_02D3A4: db $06 ; 0x23\n #_02D3A5: db $04 ; 0x24\n #_02D3A6: db $08 ; 0x25\n #_02D3A7: db $07 ; 0x26\n #_02D3A8: db $0C ; 0x27\n #_02D3A9: db $09 ; 0x28\n #_02D3AA: db $09 ; 0x29\n #_02D3AB: db $09 ; 0x2A\n #_02D3AC: db $09 ; 0x2B\n #_02D3AD: db $06 ; 0x2C\n #_02D3AE: db $0B ; 0x2D\n #_02D3AF: db $06 ; 0x2E\n #_02D3B0: db $06 ; 0x2F\n #_02D3B1: db $14 ; 0x30\n #_02D3B2: db $14 ; 0x31\n #_02D3B3: db $01 ; 0x32\n #_02D3B4: db $05 ; 0x33\n #_02D3B5: db $0A ; 0x34\n #_02D3B6: db $0D ; 0x35\n #_02D3B7: db $13 ; 0x36\n #_02D3B8: db $0E ; 0x37\n #_02D3B9: db $06 ; 0x38\n #_02D3BA: db $06 ; 0x39\n #_02D3BB: db $06 ; 0x3A\n #_02D3BC: db $06 ; 0x3B\n #_02D3BD: db $03 ; 0x3C\n #_02D3BE: db $06 ; 0x3D\n #_02D3BF: db $03 ; 0x3E\n #_02D3C0: db $03 ; 0x3F\n #_02D3C1: db $03 ; 0x40\n #_02D3C2: db $14 ; 0x41\n #_02D3C3: db $03 ; 0x42\n #_02D3C4: db $03 ; 0x43\n #_02D3C5: db $03 ; 0x44\n #_02D3C6: db $0F ; 0x45\n #_02D3C7: db $03 ; 0x46\n #_02D3C8: db $03 ; 0x47\n #_02D3C9: db $03 ; 0x48\n #_02D3CA: db $03 ; 0x49\n #_02D3CB: db $03 ; 0x4A\n #_02D3CC: db $03 ; 0x4B\n #_02D3CD: db $03 ; 0x4C\n #_02D3CE: db $06 ; 0x4D\n #_02D3CF: db $08 ; 0x4E\n #_02D3D0: db $06 ; 0x4F\n #_02D3D1: db $06 ; 0x50\n #_02D3D2: db $06 ; 0x51\n #_02D3D3: db $06 ; 0x52\n #_02D3D4: db $03 ; 0x53\n #_02D3D5: db $03 ; 0x54\n #_02D3D6: db $06 ; 0x55\n #_02D3D7: db $06 ; 0x56\n #_02D3D8: db $03 ; 0x57\n #_02D3D9: db $14 ; 0x58\n #_02D3DA: db $11 ; 0x59\n #_02D3DB: db $14 ; 0x5A\n #_02D3DC: db $01 ; 0x5B\n #_02D3DD: db $06 ; 0x5C\n #_02D3DE: db $06 ; 0x5D\n #_02D3DF: db $06 ; 0x5E\n #_02D3E0: db $08 ; 0x5F\n #_02D3E1: db $03 ; 0x60\n #_02D3E2: db $0A ; 0x61\n #_02D3E3: db $06 ; 0x62\n #_02D3E4: db $12 ; 0x63\n #_02D3E5: db $11 ; 0x64\n #_02D3E6: db $11 ; 0x65\n #_02D3E7: db $11 ; 0x66\n #_02D3E8: db $03 ; 0x67\n #_02D3E9: db $0F ; 0x68\n #_02D3EA: db $14 ; 0x69\n #_02D3EB: db $14 ; 0x6A\n #_02D3EC: db $03 ; 0x6B\n #_02D3ED: db $06 ; 0x6C\n #_02D3EE: db $06 ; 0x6D\n #_02D3EF: db $06 ; 0x6E\n #_02D3F0: db $06 ; 0x6F\n #_02D3F1: db $06 ; 0x70\n #_02D3F2: db $06 ; 0x71\n #_02D3F3: db $06 ; 0x72\n #_02D3F4: db $01 ; 0x73\n #_02D3F5: db $04 ; 0x74\n #_02D3F6: db $02 ; 0x75\n #_02D3F7: db $09 ; 0x76\n #_02D3F8: db $09 ; 0x77\n #_02D3F9: db $09 ; 0x78\n #_02D3FA: db $09 ; 0x79\n #_02D3FB: db $06 ; 0x7A\n #_02D3FC: db $13 ; 0x7B\n #_02D3FD: db $06 ; 0x7C\n #_02D3FE: db $01 ; 0x7D\n #_02D3FF: db $06 ; 0x7E\n #_02D400: db $06 ; 0x7F\n #_02D401: db $06 ; 0x80\n #_02D402: db $01 ; 0x81\n #_02D403: db $06 ; 0x82\n #_02D404: db $06 ; 0x83\n #_02D405: db $06 ; 0x84\n\n; ---------------------------------------------------------\n\n.floor\n #_02D406: db $00 ; 0x00\n #_02D407: db $00 ; 0x01\n #_02D408: db $00 ; 0x02\n #_02D409: db $00 ; 0x03\n #_02D40A: db $00 ; 0x04\n #_02D40B: db $00 ; 0x05\n #_02D40C: db $00 ; 0x06\n #_02D40D: db $00 ; 0x07\n #_02D40E: db $00 ; 0x08\n #_02D40F: db $FF ; 0x09\n #_02D410: db $FF ; 0x0A\n #_02D411: db $FF ; 0x0B\n #_02D412: db $00 ; 0x0C\n #_02D413: db $00 ; 0x0D\n #_02D414: db $00 ; 0x0E\n #_02D415: db $00 ; 0x0F\n #_02D416: db $00 ; 0x10\n #_02D417: db $FF ; 0x11\n #_02D418: db $FF ; 0x12\n #_02D419: db $00 ; 0x13\n #_02D41A: db $01 ; 0x14\n #_02D41B: db $FF ; 0x15\n #_02D41C: db $00 ; 0x16\n #_02D41D: db $01 ; 0x17\n #_02D41E: db $FE ; 0x18\n #_02D41F: db $FF ; 0x19\n #_02D420: db $00 ; 0x1A\n #_02D421: db $01 ; 0x1B\n #_02D422: db $00 ; 0x1C\n #_02D423: db $01 ; 0x1D\n #_02D424: db $FF ; 0x1E\n #_02D425: db $00 ; 0x1F\n #_02D426: db $01 ; 0x20\n #_02D427: db $00 ; 0x21\n #_02D428: db $00 ; 0x22\n #_02D429: db $01 ; 0x23\n #_02D42A: db $01 ; 0x24\n #_02D42B: db $00 ; 0x25\n #_02D42C: db $00 ; 0x26\n #_02D42D: db $00 ; 0x27\n #_02D42E: db $FF ; 0x28\n #_02D42F: db $FF ; 0x29\n #_02D430: db $FF ; 0x2A\n #_02D431: db $FF ; 0x2B\n #_02D432: db $FF ; 0x2C\n #_02D433: db $00 ; 0x2D\n #_02D434: db $00 ; 0x2E\n #_02D435: db $00 ; 0x2F\n #_02D436: db $00 ; 0x30\n #_02D437: db $00 ; 0x31\n #_02D438: db $FF ; 0x32\n #_02D439: db $01 ; 0x33\n #_02D43A: db $FF ; 0x34\n #_02D43B: db $00 ; 0x35\n #_02D43C: db $00 ; 0x36\n #_02D43D: db $01 ; 0x37\n #_02D43E: db $FF ; 0x38\n #_02D43F: db $FF ; 0x39\n #_02D440: db $FF ; 0x3A\n #_02D441: db $FF ; 0x3B\n #_02D442: db $00 ; 0x3C\n #_02D443: db $00 ; 0x3D\n #_02D444: db $00 ; 0x3E\n #_02D445: db $00 ; 0x3F\n #_02D446: db $00 ; 0x40\n #_02D447: db $00 ; 0x41\n #_02D448: db $00 ; 0x42\n #_02D449: db $00 ; 0x43\n #_02D44A: db $00 ; 0x44\n #_02D44B: db $00 ; 0x45\n #_02D44C: db $00 ; 0x46\n #_02D44D: db $00 ; 0x47\n #_02D44E: db $00 ; 0x48\n #_02D44F: db $00 ; 0x49\n #_02D450: db $00 ; 0x4A\n #_02D451: db $00 ; 0x4B\n #_02D452: db $00 ; 0x4C\n #_02D453: db $00 ; 0x4D\n #_02D454: db $00 ; 0x4E\n #_02D455: db $00 ; 0x4F\n #_02D456: db $00 ; 0x50\n #_02D457: db $00 ; 0x51\n #_02D458: db $00 ; 0x52\n #_02D459: db $00 ; 0x53\n #_02D45A: db $00 ; 0x54\n #_02D45B: db $00 ; 0x55\n #_02D45C: db $00 ; 0x56\n #_02D45D: db $00 ; 0x57\n #_02D45E: db $00 ; 0x58\n #_02D45F: db $00 ; 0x59\n #_02D460: db $00 ; 0x5A\n #_02D461: db $00 ; 0x5B\n #_02D462: db $00 ; 0x5C\n #_02D463: db $00 ; 0x5D\n #_02D464: db $00 ; 0x5E\n #_02D465: db $00 ; 0x5F\n #_02D466: db $00 ; 0x60\n #_02D467: db $00 ; 0x61\n #_02D468: db $00 ; 0x62\n #_02D469: db $00 ; 0x63\n #_02D46A: db $00 ; 0x64\n #_02D46B: db $00 ; 0x65\n #_02D46C: db $00 ; 0x66\n #_02D46D: db $00 ; 0x67\n #_02D46E: db $00 ; 0x68\n #_02D46F: db $00 ; 0x69\n #_02D470: db $00 ; 0x6A\n #_02D471: db $00 ; 0x6B\n #_02D472: db $00 ; 0x6C\n #_02D473: db $00 ; 0x6D\n #_02D474: db $00 ; 0x6E\n #_02D475: db $00 ; 0x6F\n #_02D476: db $00 ; 0x70\n #_02D477: db $00 ; 0x71\n #_02D478: db $00 ; 0x72\n #_02D479: db $FF ; 0x73\n #_02D47A: db $FF ; 0x74\n #_02D47B: db $FF ; 0x75\n #_02D47C: db $FF ; 0x76\n #_02D47D: db $FF ; 0x77\n #_02D47E: db $FF ; 0x78\n #_02D47F: db $FF ; 0x79\n #_02D480: db $FF ; 0x7A\n #_02D481: db $01 ; 0x7B\n #_02D482: db $FF ; 0x7C\n #_02D483: db $FF ; 0x7D\n #_02D484: db $FF ; 0x7E\n #_02D485: db $FF ; 0x7F\n #_02D486: db $FF ; 0x80\n #_02D487: db $FF ; 0x81\n #_02D488: db $FF ; 0x82\n #_02D489: db $00 ; 0x83\n #_02D48A: db $00 ; 0x84\n\n; ---------------------------------------------------------\n\n.dungeon_id\n #_02D48B: db $FF ; 0x00\n #_02D48C: db $FF ; 0x01\n #_02D48D: db $00 ; 0x02\n #_02D48E: db $02 ; 0x03\n #_02D48F: db $02 ; 0x04\n #_02D490: db $02 ; 0x05\n #_02D491: db $FF ; 0x06\n #_02D492: db $FF ; 0x07\n #_02D493: db $04 ; 0x08\n #_02D494: db $06 ; 0x09\n #_02D495: db $06 ; 0x0A\n #_02D496: db $06 ; 0x0B\n #_02D497: db $06 ; 0x0C\n #_02D498: db $FF ; 0x0D\n #_02D499: db $FF ; 0x0E\n #_02D49A: db $FF ; 0x0F\n #_02D49B: db $FF ; 0x10\n #_02D49C: db $FF ; 0x11\n #_02D49D: db $FF ; 0x12\n #_02D49E: db $FF ; 0x13\n #_02D49F: db $FF ; 0x14\n #_02D4A0: db $18 ; 0x15\n #_02D4A1: db $FF ; 0x16\n #_02D4A2: db $FF ; 0x17\n #_02D4A3: db $18 ; 0x18\n #_02D4A4: db $18 ; 0x19\n #_02D4A5: db $FF ; 0x1A\n #_02D4A6: db $FF ; 0x1B\n #_02D4A7: db $FF ; 0x1C\n #_02D4A8: db $FF ; 0x1D\n #_02D4A9: db $FF ; 0x1E\n #_02D4AA: db $FF ; 0x1F\n #_02D4AB: db $FF ; 0x20\n #_02D4AC: db $FF ; 0x21\n #_02D4AD: db $FF ; 0x22\n #_02D4AE: db $FF ; 0x23\n #_02D4AF: db $08 ; 0x24\n #_02D4B0: db $0A ; 0x25\n #_02D4B1: db $0C ; 0x26\n #_02D4B2: db $0E ; 0x27\n #_02D4B3: db $10 ; 0x28\n #_02D4B4: db $10 ; 0x29\n #_02D4B5: db $10 ; 0x2A\n #_02D4B6: db $10 ; 0x2B\n #_02D4B7: db $FF ; 0x2C\n #_02D4B8: db $12 ; 0x2D\n #_02D4B9: db $FF ; 0x2E\n #_02D4BA: db $FF ; 0x2F\n #_02D4BB: db $FF ; 0x30\n #_02D4BC: db $FF ; 0x31\n #_02D4BD: db $FF ; 0x32\n #_02D4BE: db $14 ; 0x33\n #_02D4BF: db $16 ; 0x34\n #_02D4C0: db $18 ; 0x35\n #_02D4C1: db $FF ; 0x36\n #_02D4C2: db $1A ; 0x37\n #_02D4C3: db $FF ; 0x38\n #_02D4C4: db $FF ; 0x39\n #_02D4C5: db $FF ; 0x3A\n #_02D4C6: db $FF ; 0x3B\n #_02D4C7: db $FF ; 0x3C\n #_02D4C8: db $FF ; 0x3D\n #_02D4C9: db $FF ; 0x3E\n #_02D4CA: db $FF ; 0x3F\n #_02D4CB: db $FF ; 0x40\n #_02D4CC: db $FF ; 0x41\n #_02D4CD: db $FF ; 0x42\n #_02D4CE: db $FF ; 0x43\n #_02D4CF: db $FF ; 0x44\n #_02D4D0: db $FF ; 0x45\n #_02D4D1: db $FF ; 0x46\n #_02D4D2: db $FF ; 0x47\n #_02D4D3: db $FF ; 0x48\n #_02D4D4: db $FF ; 0x49\n #_02D4D5: db $FF ; 0x4A\n #_02D4D6: db $FF ; 0x4B\n #_02D4D7: db $FF ; 0x4C\n #_02D4D8: db $FF ; 0x4D\n #_02D4D9: db $FF ; 0x4E\n #_02D4DA: db $FF ; 0x4F\n #_02D4DB: db $FF ; 0x50\n #_02D4DC: db $FF ; 0x51\n #_02D4DD: db $FF ; 0x52\n #_02D4DE: db $FF ; 0x53\n #_02D4DF: db $FF ; 0x54\n #_02D4E0: db $FF ; 0x55\n #_02D4E1: db $FF ; 0x56\n #_02D4E2: db $FF ; 0x57\n #_02D4E3: db $FF ; 0x58\n #_02D4E4: db $FF ; 0x59\n #_02D4E5: db $FF ; 0x5A\n #_02D4E6: db $FF ; 0x5B\n #_02D4E7: db $FF ; 0x5C\n #_02D4E8: db $FF ; 0x5D\n #_02D4E9: db $FF ; 0x5E\n #_02D4EA: db $FF ; 0x5F\n #_02D4EB: db $FF ; 0x60\n #_02D4EC: db $FF ; 0x61\n #_02D4ED: db $FF ; 0x62\n #_02D4EE: db $FF ; 0x63\n #_02D4EF: db $FF ; 0x64\n #_02D4F0: db $FF ; 0x65\n #_02D4F1: db $FF ; 0x66\n #_02D4F2: db $FF ; 0x67\n #_02D4F3: db $FF ; 0x68\n #_02D4F4: db $FF ; 0x69\n #_02D4F5: db $FF ; 0x6A\n #_02D4F6: db $FF ; 0x6B\n #_02D4F7: db $FF ; 0x6C\n #_02D4F8: db $FF ; 0x6D\n #_02D4F9: db $FF ; 0x6E\n #_02D4FA: db $FF ; 0x6F\n #_02D4FB: db $FF ; 0x70\n #_02D4FC: db $FF ; 0x71\n #_02D4FD: db $FF ; 0x72\n #_02D4FE: db $FF ; 0x73\n #_02D4FF: db $FF ; 0x74\n #_02D500: db $FF ; 0x75\n #_02D501: db $10 ; 0x76\n #_02D502: db $10 ; 0x77\n #_02D503: db $10 ; 0x78\n #_02D504: db $10 ; 0x79\n #_02D505: db $FF ; 0x7A\n #_02D506: db $FF ; 0x7B\n #_02D507: db $FF ; 0x7C\n #_02D508: db $FF ; 0x7D\n #_02D509: db $FF ; 0x7E\n #_02D50A: db $FF ; 0x7F\n #_02D50B: db $FF ; 0x80\n #_02D50C: db $00 ; 0x81\n #_02D50D: db $FF ; 0x82\n #_02D50E: db $FF ; 0x83\n #_02D50F: db $FF ; 0x84\n\n; ---------------------------------------------------------\n\n.in_door\n #_02D510: db $00 ; 0x00\n #_02D511: db $01 ; 0x01\n #_02D512: db $01 ; 0x02\n #_02D513: db $01 ; 0x03\n #_02D514: db $01 ; 0x04\n #_02D515: db $01 ; 0x05\n #_02D516: db $01 ; 0x06\n #_02D517: db $01 ; 0x07\n #_02D518: db $01 ; 0x08\n #_02D519: db $01 ; 0x09\n #_02D51A: db $01 ; 0x0A\n #_02D51B: db $01 ; 0x0B\n #_02D51C: db $01 ; 0x0C\n #_02D51D: db $01 ; 0x0D\n #_02D51E: db $01 ; 0x0E\n #_02D51F: db $01 ; 0x0F\n #_02D520: db $01 ; 0x10\n #_02D521: db $01 ; 0x11\n #_02D522: db $01 ; 0x12\n #_02D523: db $01 ; 0x13\n #_02D524: db $01 ; 0x14\n #_02D525: db $01 ; 0x15\n #_02D526: db $01 ; 0x16\n #_02D527: db $01 ; 0x17\n #_02D528: db $01 ; 0x18\n #_02D529: db $01 ; 0x19\n #_02D52A: db $01 ; 0x1A\n #_02D52B: db $01 ; 0x1B\n #_02D52C: db $01 ; 0x1C\n #_02D52D: db $01 ; 0x1D\n #_02D52E: db $01 ; 0x1E\n #_02D52F: db $01 ; 0x1F\n #_02D530: db $01 ; 0x20\n #_02D531: db $01 ; 0x21\n #_02D532: db $01 ; 0x22\n #_02D533: db $01 ; 0x23\n #_02D534: db $01 ; 0x24\n #_02D535: db $01 ; 0x25\n #_02D536: db $01 ; 0x26\n #_02D537: db $01 ; 0x27\n #_02D538: db $01 ; 0x28\n #_02D539: db $01 ; 0x29\n #_02D53A: db $01 ; 0x2A\n #_02D53B: db $01 ; 0x2B\n #_02D53C: db $01 ; 0x2C\n #_02D53D: db $01 ; 0x2D\n #_02D53E: db $01 ; 0x2E\n #_02D53F: db $01 ; 0x2F\n #_02D540: db $01 ; 0x30\n #_02D541: db $01 ; 0x31\n #_02D542: db $01 ; 0x32\n #_02D543: db $01 ; 0x33\n #_02D544: db $01 ; 0x34\n #_02D545: db $01 ; 0x35\n #_02D546: db $01 ; 0x36\n #_02D547: db $01 ; 0x37\n #_02D548: db $01 ; 0x38\n #_02D549: db $01 ; 0x39\n #_02D54A: db $01 ; 0x3A\n #_02D54B: db $01 ; 0x3B\n #_02D54C: db $01 ; 0x3C\n #_02D54D: db $01 ; 0x3D\n #_02D54E: db $01 ; 0x3E\n #_02D54F: db $01 ; 0x3F\n #_02D550: db $01 ; 0x40\n #_02D551: db $01 ; 0x41\n #_02D552: db $01 ; 0x42\n #_02D553: db $01 ; 0x43\n #_02D554: db $01 ; 0x44\n #_02D555: db $01 ; 0x45\n #_02D556: db $01 ; 0x46\n #_02D557: db $01 ; 0x47\n #_02D558: db $01 ; 0x48\n #_02D559: db $01 ; 0x49\n #_02D55A: db $01 ; 0x4A\n #_02D55B: db $01 ; 0x4B\n #_02D55C: db $01 ; 0x4C\n #_02D55D: db $01 ; 0x4D\n #_02D55E: db $01 ; 0x4E\n #_02D55F: db $01 ; 0x4F\n #_02D560: db $01 ; 0x50\n #_02D561: db $01 ; 0x51\n #_02D562: db $01 ; 0x52\n #_02D563: db $01 ; 0x53\n #_02D564: db $01 ; 0x54\n #_02D565: db $01 ; 0x55\n #_02D566: db $01 ; 0x56\n #_02D567: db $01 ; 0x57\n #_02D568: db $01 ; 0x58\n #_02D569: db $01 ; 0x59\n #_02D56A: db $01 ; 0x5A\n #_02D56B: db $01 ; 0x5B\n #_02D56C: db $01 ; 0x5C\n #_02D56D: db $01 ; 0x5D\n #_02D56E: db $01 ; 0x5E\n #_02D56F: db $01 ; 0x5F\n #_02D570: db $01 ; 0x60\n #_02D571: db $01 ; 0x61\n #_02D572: db $01 ; 0x62\n #_02D573: db $01 ; 0x63\n #_02D574: db $01 ; 0x64\n #_02D575: db $01 ; 0x65\n #_02D576: db $01 ; 0x66\n #_02D577: db $01 ; 0x67\n #_02D578: db $01 ; 0x68\n #_02D579: db $01 ; 0x69\n #_02D57A: db $01 ; 0x6A\n #_02D57B: db $01 ; 0x6B\n #_02D57C: db $01 ; 0x6C\n #_02D57D: db $01 ; 0x6D\n #_02D57E: db $01 ; 0x6E\n #_02D57F: db $01 ; 0x6F\n #_02D580: db $01 ; 0x70\n #_02D581: db $01 ; 0x71\n #_02D582: db $01 ; 0x72\n #_02D583: db $00 ; 0x73\n #_02D584: db $00 ; 0x74\n #_02D585: db $00 ; 0x75\n #_02D586: db $00 ; 0x76\n #_02D587: db $00 ; 0x77\n #_02D588: db $00 ; 0x78\n #_02D589: db $00 ; 0x79\n #_02D58A: db $00 ; 0x7A\n #_02D58B: db $00 ; 0x7B\n #_02D58C: db $00 ; 0x7C\n #_02D58D: db $00 ; 0x7D\n #_02D58E: db $00 ; 0x7E\n #_02D58F: db $00 ; 0x7F\n #_02D590: db $00 ; 0x80\n #_02D591: db $00 ; 0x81\n #_02D592: db $00 ; 0x82\n #_02D593: db $01 ; 0x83\n #_02D594: db $01 ; 0x84\n\n; ---------------------------------------------------------\n\n.layer\n #_02D595: db $00 ; 0x00\n #_02D596: db $00 ; 0x01\n #_02D597: db $01 ; 0x02\n #_02D598: db $00 ; 0x03\n #_02D599: db $01 ; 0x04\n #_02D59A: db $00 ; 0x05\n #_02D59B: db $00 ; 0x06\n #_02D59C: db $01 ; 0x07\n #_02D59D: db $00 ; 0x08\n #_02D59E: db $00 ; 0x09\n #_02D59F: db $00 ; 0x0A\n #_02D5A0: db $00 ; 0x0B\n #_02D5A1: db $00 ; 0x0C\n #_02D5A2: db $00 ; 0x0D\n #_02D5A3: db $00 ; 0x0E\n #_02D5A4: db $00 ; 0x0F\n #_02D5A5: db $00 ; 0x10\n #_02D5A6: db $00 ; 0x11\n #_02D5A7: db $00 ; 0x12\n #_02D5A8: db $00 ; 0x13\n #_02D5A9: db $00 ; 0x14\n #_02D5AA: db $00 ; 0x15\n #_02D5AB: db $00 ; 0x16\n #_02D5AC: db $00 ; 0x17\n #_02D5AD: db $00 ; 0x18\n #_02D5AE: db $00 ; 0x19\n #_02D5AF: db $01 ; 0x1A\n #_02D5B0: db $00 ; 0x1B\n #_02D5B1: db $01 ; 0x1C\n #_02D5B2: db $00 ; 0x1D\n #_02D5B3: db $00 ; 0x1E\n #_02D5B4: db $00 ; 0x1F\n #_02D5B5: db $00 ; 0x20\n #_02D5B6: db $00 ; 0x21\n #_02D5B7: db $11 ; 0x22\n #_02D5B8: db $00 ; 0x23\n #_02D5B9: db $00 ; 0x24\n #_02D5BA: db $00 ; 0x25\n #_02D5BB: db $00 ; 0x26\n #_02D5BC: db $00 ; 0x27\n #_02D5BD: db $00 ; 0x28\n #_02D5BE: db $00 ; 0x29\n #_02D5BF: db $00 ; 0x2A\n #_02D5C0: db $00 ; 0x2B\n #_02D5C1: db $00 ; 0x2C\n #_02D5C2: db $00 ; 0x2D\n #_02D5C3: db $01 ; 0x2E\n #_02D5C4: db $01 ; 0x2F\n #_02D5C5: db $01 ; 0x30\n #_02D5C6: db $00 ; 0x31\n #_02D5C7: db $00 ; 0x32\n #_02D5C8: db $11 ; 0x33\n #_02D5C9: db $00 ; 0x34\n #_02D5CA: db $00 ; 0x35\n #_02D5CB: db $00 ; 0x36\n #_02D5CC: db $00 ; 0x37\n #_02D5CD: db $00 ; 0x38\n #_02D5CE: db $00 ; 0x39\n #_02D5CF: db $00 ; 0x3A\n #_02D5D0: db $00 ; 0x3B\n #_02D5D1: db $00 ; 0x3C\n #_02D5D2: db $00 ; 0x3D\n #_02D5D3: db $00 ; 0x3E\n #_02D5D4: db $00 ; 0x3F\n #_02D5D5: db $00 ; 0x40\n #_02D5D6: db $00 ; 0x41\n #_02D5D7: db $00 ; 0x42\n #_02D5D8: db $00 ; 0x43\n #_02D5D9: db $00 ; 0x44\n #_02D5DA: db $00 ; 0x45\n #_02D5DB: db $00 ; 0x46\n #_02D5DC: db $00 ; 0x47\n #_02D5DD: db $00 ; 0x48\n #_02D5DE: db $00 ; 0x49\n #_02D5DF: db $00 ; 0x4A\n #_02D5E0: db $00 ; 0x4B\n #_02D5E1: db $00 ; 0x4C\n #_02D5E2: db $01 ; 0x4D\n #_02D5E3: db $00 ; 0x4E\n #_02D5E4: db $00 ; 0x4F\n #_02D5E5: db $00 ; 0x50\n #_02D5E6: db $11 ; 0x51\n #_02D5E7: db $00 ; 0x52\n #_02D5E8: db $00 ; 0x53\n #_02D5E9: db $00 ; 0x54\n #_02D5EA: db $00 ; 0x55\n #_02D5EB: db $00 ; 0x56\n #_02D5EC: db $00 ; 0x57\n #_02D5ED: db $00 ; 0x58\n #_02D5EE: db $00 ; 0x59\n #_02D5EF: db $00 ; 0x5A\n #_02D5F0: db $00 ; 0x5B\n #_02D5F1: db $00 ; 0x5C\n #_02D5F2: db $00 ; 0x5D\n #_02D5F3: db $00 ; 0x5E\n #_02D5F4: db $00 ; 0x5F\n #_02D5F5: db $00 ; 0x60\n #_02D5F6: db $00 ; 0x61\n #_02D5F7: db $00 ; 0x62\n #_02D5F8: db $00 ; 0x63\n #_02D5F9: db $00 ; 0x64\n #_02D5FA: db $00 ; 0x65\n #_02D5FB: db $00 ; 0x66\n #_02D5FC: db $00 ; 0x67\n #_02D5FD: db $00 ; 0x68\n #_02D5FE: db $01 ; 0x69\n #_02D5FF: db $01 ; 0x6A\n #_02D600: db $00 ; 0x6B\n #_02D601: db $00 ; 0x6C\n #_02D602: db $00 ; 0x6D\n #_02D603: db $00 ; 0x6E\n #_02D604: db $00 ; 0x6F\n #_02D605: db $00 ; 0x70\n #_02D606: db $00 ; 0x71\n #_02D607: db $00 ; 0x72\n #_02D608: db $00 ; 0x73\n #_02D609: db $11 ; 0x74\n #_02D60A: db $00 ; 0x75\n #_02D60B: db $00 ; 0x76\n #_02D60C: db $00 ; 0x77\n #_02D60D: db $00 ; 0x78\n #_02D60E: db $00 ; 0x79\n #_02D60F: db $00 ; 0x7A\n #_02D610: db $00 ; 0x7B\n #_02D611: db $01 ; 0x7C\n #_02D612: db $01 ; 0x7D\n #_02D613: db $11 ; 0x7E\n #_02D614: db $01 ; 0x7F\n #_02D615: db $00 ; 0x80\n #_02D616: db $00 ; 0x81\n #_02D617: db $00 ; 0x82\n #_02D618: db $00 ; 0x83\n #_02D619: db $00 ; 0x84\n\n; ---------------------------------------------------------\n\n.camera_scroll_controller\n #_02D61A: db $00 ; 0x00\n #_02D61B: db $00 ; 0x01\n #_02D61C: db $22 ; 0x02\n #_02D61D: db $02 ; 0x03\n #_02D61E: db $22 ; 0x04\n #_02D61F: db $22 ; 0x05\n #_02D620: db $22 ; 0x06\n #_02D621: db $22 ; 0x07\n #_02D622: db $20 ; 0x08\n #_02D623: db $22 ; 0x09\n #_02D624: db $00 ; 0x0A\n #_02D625: db $00 ; 0x0B\n #_02D626: db $00 ; 0x0C\n #_02D627: db $00 ; 0x0D\n #_02D628: db $00 ; 0x0E\n #_02D629: db $00 ; 0x0F\n #_02D62A: db $00 ; 0x10\n #_02D62B: db $00 ; 0x11\n #_02D62C: db $02 ; 0x12\n #_02D62D: db $22 ; 0x13\n #_02D62E: db $22 ; 0x14\n #_02D62F: db $00 ; 0x15\n #_02D630: db $22 ; 0x16\n #_02D631: db $02 ; 0x17\n #_02D632: db $02 ; 0x18\n #_02D633: db $00 ; 0x19\n #_02D634: db $22 ; 0x1A\n #_02D635: db $22 ; 0x1B\n #_02D636: db $02 ; 0x1C\n #_02D637: db $22 ; 0x1D\n #_02D638: db $20 ; 0x1E\n #_02D639: db $20 ; 0x1F\n #_02D63A: db $20 ; 0x20\n #_02D63B: db $22 ; 0x21\n #_02D63C: db $22 ; 0x22\n #_02D63D: db $22 ; 0x23\n #_02D63E: db $00 ; 0x24\n #_02D63F: db $22 ; 0x25\n #_02D640: db $20 ; 0x26\n #_02D641: db $20 ; 0x27\n #_02D642: db $00 ; 0x28\n #_02D643: db $00 ; 0x29\n #_02D644: db $00 ; 0x2A\n #_02D645: db $02 ; 0x2B\n #_02D646: db $02 ; 0x2C\n #_02D647: db $00 ; 0x2D\n #_02D648: db $22 ; 0x2E\n #_02D649: db $22 ; 0x2F\n #_02D64A: db $02 ; 0x30\n #_02D64B: db $22 ; 0x31\n #_02D64C: db $20 ; 0x32\n #_02D64D: db $22 ; 0x33\n #_02D64E: db $22 ; 0x34\n #_02D64F: db $02 ; 0x35\n #_02D650: db $02 ; 0x36\n #_02D651: db $22 ; 0x37\n #_02D652: db $00 ; 0x38\n #_02D653: db $20 ; 0x39\n #_02D654: db $22 ; 0x3A\n #_02D655: db $00 ; 0x3B\n #_02D656: db $00 ; 0x3C\n #_02D657: db $00 ; 0x3D\n #_02D658: db $00 ; 0x3E\n #_02D659: db $00 ; 0x3F\n #_02D65A: db $00 ; 0x40\n #_02D65B: db $22 ; 0x41\n #_02D65C: db $02 ; 0x42\n #_02D65D: db $02 ; 0x43\n #_02D65E: db $00 ; 0x44\n #_02D65F: db $00 ; 0x45\n #_02D660: db $00 ; 0x46\n #_02D661: db $00 ; 0x47\n #_02D662: db $00 ; 0x48\n #_02D663: db $00 ; 0x49\n #_02D664: db $00 ; 0x4A\n #_02D665: db $00 ; 0x4B\n #_02D666: db $00 ; 0x4C\n #_02D667: db $02 ; 0x4D\n #_02D668: db $20 ; 0x4E\n #_02D669: db $00 ; 0x4F\n #_02D66A: db $02 ; 0x50\n #_02D66B: db $00 ; 0x51\n #_02D66C: db $00 ; 0x52\n #_02D66D: db $00 ; 0x53\n #_02D66E: db $00 ; 0x54\n #_02D66F: db $02 ; 0x55\n #_02D670: db $00 ; 0x56\n #_02D671: db $00 ; 0x57\n #_02D672: db $00 ; 0x58\n #_02D673: db $00 ; 0x59\n #_02D674: db $02 ; 0x5A\n #_02D675: db $02 ; 0x5B\n #_02D676: db $00 ; 0x5C\n #_02D677: db $02 ; 0x5D\n #_02D678: db $00 ; 0x5E\n #_02D679: db $02 ; 0x5F\n #_02D67A: db $00 ; 0x60\n #_02D67B: db $20 ; 0x61\n #_02D67C: db $00 ; 0x62\n #_02D67D: db $00 ; 0x63\n #_02D67E: db $00 ; 0x64\n #_02D67F: db $00 ; 0x65\n #_02D680: db $00 ; 0x66\n #_02D681: db $00 ; 0x67\n #_02D682: db $00 ; 0x68\n #_02D683: db $02 ; 0x69\n #_02D684: db $02 ; 0x6A\n #_02D685: db $00 ; 0x6B\n #_02D686: db $00 ; 0x6C\n #_02D687: db $00 ; 0x6D\n #_02D688: db $00 ; 0x6E\n #_02D689: db $00 ; 0x6F\n #_02D68A: db $00 ; 0x70\n #_02D68B: db $00 ; 0x71\n #_02D68C: db $00 ; 0x72\n #_02D68D: db $20 ; 0x73\n #_02D68E: db $22 ; 0x74\n #_02D68F: db $00 ; 0x75\n #_02D690: db $02 ; 0x76\n #_02D691: db $02 ; 0x77\n #_02D692: db $22 ; 0x78\n #_02D693: db $02 ; 0x79\n #_02D694: db $02 ; 0x7A\n #_02D695: db $00 ; 0x7B\n #_02D696: db $02 ; 0x7C\n #_02D697: db $20 ; 0x7D\n #_02D698: db $00 ; 0x7E\n #_02D699: db $02 ; 0x7F\n #_02D69A: db $20 ; 0x80\n #_02D69B: db $02 ; 0x81\n #_02D69C: db $00 ; 0x82\n #_02D69D: db $00 ; 0x83\n #_02D69E: db $00 ; 0x84\n\n; ---------------------------------------------------------\n\n.quadrant\n #_02D69F: db $02 ; 0x00\n #_02D6A0: db $02 ; 0x01\n #_02D6A1: db $02 ; 0x02\n #_02D6A2: db $12 ; 0x03\n #_02D6A3: db $02 ; 0x04\n #_02D6A4: db $02 ; 0x05\n #_02D6A5: db $02 ; 0x06\n #_02D6A6: db $12 ; 0x07\n #_02D6A7: db $02 ; 0x08\n #_02D6A8: db $02 ; 0x09\n #_02D6A9: db $12 ; 0x0A\n #_02D6AA: db $02 ; 0x0B\n #_02D6AB: db $02 ; 0x0C\n #_02D6AC: db $12 ; 0x0D\n #_02D6AD: db $02 ; 0x0E\n #_02D6AE: db $12 ; 0x0F\n #_02D6AF: db $02 ; 0x10\n #_02D6B0: db $02 ; 0x11\n #_02D6B1: db $12 ; 0x12\n #_02D6B2: db $02 ; 0x13\n #_02D6B3: db $12 ; 0x14\n #_02D6B4: db $12 ; 0x15\n #_02D6B5: db $02 ; 0x16\n #_02D6B6: db $12 ; 0x17\n #_02D6B7: db $02 ; 0x18\n #_02D6B8: db $12 ; 0x19\n #_02D6B9: db $02 ; 0x1A\n #_02D6BA: db $12 ; 0x1B\n #_02D6BB: db $02 ; 0x1C\n #_02D6BC: db $12 ; 0x1D\n #_02D6BD: db $12 ; 0x1E\n #_02D6BE: db $02 ; 0x1F\n #_02D6BF: db $02 ; 0x20\n #_02D6C0: db $02 ; 0x21\n #_02D6C1: db $02 ; 0x22\n #_02D6C2: db $02 ; 0x23\n #_02D6C3: db $02 ; 0x24\n #_02D6C4: db $02 ; 0x25\n #_02D6C5: db $02 ; 0x26\n #_02D6C6: db $02 ; 0x27\n #_02D6C7: db $02 ; 0x28\n #_02D6C8: db $02 ; 0x29\n #_02D6C9: db $02 ; 0x2A\n #_02D6CA: db $02 ; 0x2B\n #_02D6CB: db $02 ; 0x2C\n #_02D6CC: db $12 ; 0x2D\n #_02D6CD: db $02 ; 0x2E\n #_02D6CE: db $12 ; 0x2F\n #_02D6CF: db $02 ; 0x30\n #_02D6D0: db $02 ; 0x31\n #_02D6D1: db $02 ; 0x32\n #_02D6D2: db $02 ; 0x33\n #_02D6D3: db $02 ; 0x34\n #_02D6D4: db $12 ; 0x35\n #_02D6D5: db $02 ; 0x36\n #_02D6D6: db $02 ; 0x37\n #_02D6D7: db $12 ; 0x38\n #_02D6D8: db $12 ; 0x39\n #_02D6D9: db $12 ; 0x3A\n #_02D6DA: db $02 ; 0x3B\n #_02D6DB: db $02 ; 0x3C\n #_02D6DC: db $12 ; 0x3D\n #_02D6DD: db $02 ; 0x3E\n #_02D6DE: db $02 ; 0x3F\n #_02D6DF: db $02 ; 0x40\n #_02D6E0: db $12 ; 0x41\n #_02D6E1: db $02 ; 0x42\n #_02D6E2: db $00 ; 0x43\n #_02D6E3: db $02 ; 0x44\n #_02D6E4: db $02 ; 0x45\n #_02D6E5: db $12 ; 0x46\n #_02D6E6: db $02 ; 0x47\n #_02D6E7: db $02 ; 0x48\n #_02D6E8: db $02 ; 0x49\n #_02D6E9: db $02 ; 0x4A\n #_02D6EA: db $02 ; 0x4B\n #_02D6EB: db $02 ; 0x4C\n #_02D6EC: db $02 ; 0x4D\n #_02D6ED: db $02 ; 0x4E\n #_02D6EE: db $02 ; 0x4F\n #_02D6EF: db $02 ; 0x50\n #_02D6F0: db $02 ; 0x51\n #_02D6F1: db $02 ; 0x52\n #_02D6F2: db $02 ; 0x53\n #_02D6F3: db $12 ; 0x54\n #_02D6F4: db $02 ; 0x55\n #_02D6F5: db $12 ; 0x56\n #_02D6F6: db $02 ; 0x57\n #_02D6F7: db $12 ; 0x58\n #_02D6F8: db $02 ; 0x59\n #_02D6F9: db $02 ; 0x5A\n #_02D6FA: db $02 ; 0x5B\n #_02D6FB: db $02 ; 0x5C\n #_02D6FC: db $02 ; 0x5D\n #_02D6FD: db $12 ; 0x5E\n #_02D6FE: db $02 ; 0x5F\n #_02D6FF: db $02 ; 0x60\n #_02D700: db $02 ; 0x61\n #_02D701: db $12 ; 0x62\n #_02D702: db $12 ; 0x63\n #_02D703: db $02 ; 0x64\n #_02D704: db $02 ; 0x65\n #_02D705: db $12 ; 0x66\n #_02D706: db $12 ; 0x67\n #_02D707: db $12 ; 0x68\n #_02D708: db $02 ; 0x69\n #_02D709: db $12 ; 0x6A\n #_02D70A: db $02 ; 0x6B\n #_02D70B: db $02 ; 0x6C\n #_02D70C: db $02 ; 0x6D\n #_02D70D: db $12 ; 0x6E\n #_02D70E: db $02 ; 0x6F\n #_02D70F: db $12 ; 0x70\n #_02D710: db $02 ; 0x71\n #_02D711: db $12 ; 0x72\n #_02D712: db $10 ; 0x73\n #_02D713: db $02 ; 0x74\n #_02D714: db $00 ; 0x75\n #_02D715: db $10 ; 0x76\n #_02D716: db $00 ; 0x77\n #_02D717: db $10 ; 0x78\n #_02D718: db $10 ; 0x79\n #_02D719: db $10 ; 0x7A\n #_02D71A: db $10 ; 0x7B\n #_02D71B: db $02 ; 0x7C\n #_02D71C: db $10 ; 0x7D\n #_02D71D: db $12 ; 0x7E\n #_02D71E: db $02 ; 0x7F\n #_02D71F: db $02 ; 0x80\n #_02D720: db $12 ; 0x81\n #_02D721: db $02 ; 0x82\n #_02D722: db $02 ; 0x83\n #_02D723: db $02 ; 0x84\n\n; ---------------------------------------------------------\n\n.overworld_door_tilemap\n #_02D724: dw $0816 ; 0x00\n #_02D726: dw $0816 ; 0x01\n #_02D728: dw $0000 ; 0x02\n #_02D72A: dw $0000 ; 0x03\n #_02D72C: dw $0000 ; 0x04\n #_02D72E: dw $0000 ; 0x05\n #_02D730: dw $0000 ; 0x06\n #_02D732: dw $0000 ; 0x07\n #_02D734: dw $0000 ; 0x08\n #_02D736: dw $0000 ; 0x09\n #_02D738: dw $0000 ; 0x0A\n #_02D73A: dw $0000 ; 0x0B\n #_02D73C: dw $0000 ; 0x0C\n #_02D73E: dw $05CC ; 0x0D\n #_02D740: dw $05D4 ; 0x0E\n #_02D742: dw $0BB6 ; 0x0F\n #_02D744: dw $0B86 ; 0x10\n #_02D746: dw $0000 ; 0x11\n #_02D748: dw $0000 ; 0x12\n #_02D74A: dw $0000 ; 0x13\n #_02D74C: dw $0000 ; 0x14\n #_02D74E: dw $0000 ; 0x15\n #_02D750: dw $0000 ; 0x16\n #_02D752: dw $0000 ; 0x17\n #_02D754: dw $0000 ; 0x18\n #_02D756: dw $0000 ; 0x19\n #_02D758: dw $0000 ; 0x1A\n #_02D75A: dw $0000 ; 0x1B\n #_02D75C: dw $0000 ; 0x1C\n #_02D75E: dw $0000 ; 0x1D\n #_02D760: dw $0000 ; 0x1E\n #_02D762: dw $0000 ; 0x1F\n #_02D764: dw $0000 ; 0x20\n #_02D766: dw $0000 ; 0x21\n #_02D768: dw $0000 ; 0x22\n #_02D76A: dw $0000 ; 0x23\n #_02D76C: dw $0000 ; 0x24\n #_02D76E: dw $0000 ; 0x25\n #_02D770: dw $0000 ; 0x26\n #_02D772: dw $0000 ; 0x27\n #_02D774: dw $0000 ; 0x28\n #_02D776: dw $0000 ; 0x29\n #_02D778: dw $0000 ; 0x2A\n #_02D77A: dw $0000 ; 0x2B\n #_02D77C: dw $0000 ; 0x2C\n #_02D77E: dw $0000 ; 0x2D\n #_02D780: dw $0000 ; 0x2E\n #_02D782: dw $0000 ; 0x2F\n #_02D784: dw $0000 ; 0x30\n #_02D786: dw $0000 ; 0x31\n #_02D788: dw $0000 ; 0x32\n #_02D78A: dw $0000 ; 0x33\n #_02D78C: dw $0000 ; 0x34\n #_02D78E: dw $0000 ; 0x35\n #_02D790: dw $0000 ; 0x36\n #_02D792: dw $0000 ; 0x37\n #_02D794: dw $0000 ; 0x38\n #_02D796: dw $0000 ; 0x39\n #_02D798: dw $0000 ; 0x3A\n #_02D79A: dw $0000 ; 0x3B\n #_02D79C: dw $0000 ; 0x3C\n #_02D79E: dw $0000 ; 0x3D\n #_02D7A0: dw $0DE8 ; 0x3E\n #_02D7A2: dw $0B98 ; 0x3F\n #_02D7A4: dw $14CE ; 0x40\n #_02D7A6: dw $0000 ; 0x41\n #_02D7A8: dw $1C50 ; 0x42\n #_02D7AA: dw $FFFF ; 0x43\n #_02D7AC: dw $1466 ; 0x44\n #_02D7AE: dw $0000 ; 0x45\n #_02D7B0: dw $1AB6 ; 0x46\n #_02D7B2: dw $0B98 ; 0x47\n #_02D7B4: dw $1AB6 ; 0x48\n #_02D7B6: dw $040E ; 0x49\n #_02D7B8: dw $9C0C ; 0x4A\n #_02D7BA: dw $1530 ; 0x4B\n #_02D7BC: dw $0A98 ; 0x4C\n #_02D7BE: dw $0000 ; 0x4D\n #_02D7C0: dw $0000 ; 0x4E\n #_02D7C2: dw $0000 ; 0x4F\n #_02D7C4: dw $0000 ; 0x50\n #_02D7C6: dw $0000 ; 0x51\n #_02D7C8: dw $0000 ; 0x52\n #_02D7CA: dw $0816 ; 0x53\n #_02D7CC: dw $0DE8 ; 0x54\n #_02D7CE: dw $0000 ; 0x55\n #_02D7D0: dw $0000 ; 0x56\n #_02D7D2: dw $0AA8 ; 0x57\n #_02D7D4: dw $0000 ; 0x58\n #_02D7D6: dw $09AC ; 0x59\n #_02D7D8: dw $0000 ; 0x5A\n #_02D7DA: dw $0000 ; 0x5B\n #_02D7DC: dw $0000 ; 0x5C\n #_02D7DE: dw $0000 ; 0x5D\n #_02D7E0: dw $0000 ; 0x5E\n #_02D7E2: dw $0000 ; 0x5F\n #_02D7E4: dw $0000 ; 0x60\n #_02D7E6: dw $0000 ; 0x61\n #_02D7E8: dw $0000 ; 0x62\n #_02D7EA: dw $0000 ; 0x63\n #_02D7EC: dw $041A ; 0x64\n #_02D7EE: dw $0000 ; 0x65\n #_02D7F0: dw $091E ; 0x66\n #_02D7F2: dw $09AC ; 0x67\n #_02D7F4: dw $0000 ; 0x68\n #_02D7F6: dw $0000 ; 0x69\n #_02D7F8: dw $0000 ; 0x6A\n #_02D7FA: dw $07AA ; 0x6B\n #_02D7FC: dw $0000 ; 0x6C\n #_02D7FE: dw $0000 ; 0x6D\n #_02D800: dw $0000 ; 0x6E\n #_02D802: dw $0000 ; 0x6F\n #_02D804: dw $0000 ; 0x70\n #_02D806: dw $0000 ; 0x71\n #_02D808: dw $0000 ; 0x72\n #_02D80A: dw $0000 ; 0x73\n #_02D80C: dw $0000 ; 0x74\n #_02D80E: dw $0000 ; 0x75\n #_02D810: dw $0000 ; 0x76\n #_02D812: dw $0000 ; 0x77\n #_02D814: dw $0000 ; 0x78\n #_02D816: dw $0000 ; 0x79\n #_02D818: dw $0000 ; 0x7A\n #_02D81A: dw $0000 ; 0x7B\n #_02D81C: dw $0000 ; 0x7C\n #_02D81E: dw $0000 ; 0x7D\n #_02D820: dw $0000 ; 0x7E\n #_02D822: dw $0000 ; 0x7F\n #_02D824: dw $0000 ; 0x80\n #_02D826: dw $0000 ; 0x81\n #_02D828: dw $0000 ; 0x82\n #_02D82A: dw $0000 ; 0x83\n #_02D82C: dw $0000 ; 0x84\n\n; ---------------------------------------------------------\n\n.song\n #_02D82E: db $FF ; 0x00 - SONG FF\n #_02D82F: db $07 ; 0x01 - SONG 07\n #_02D830: db $14 ; 0x02 - SONG 14\n #_02D831: db $10 ; 0x03 - SONG 10\n #_02D832: db $10 ; 0x04 - SONG 10\n #_02D833: db $10 ; 0x05 - SONG 10\n #_02D834: db $12 ; 0x06 - SONG 12\n #_02D835: db $12 ; 0x07 - SONG 12\n #_02D836: db $11 ; 0x08 - SONG 11\n #_02D837: db $11 ; 0x09 - SONG 11\n #_02D838: db $11 ; 0x0A - SONG 11\n #_02D839: db $11 ; 0x0B - SONG 11\n #_02D83A: db $11 ; 0x0C - SONG 11\n #_02D83B: db $F2 ; 0x0D - SONG F2\n #_02D83C: db $F2 ; 0x0E - SONG F2\n #_02D83D: db $F2 ; 0x0F - SONG F2\n #_02D83E: db $F2 ; 0x10 - SONG F2\n #_02D83F: db $18 ; 0x11 - SONG 18\n #_02D840: db $1B ; 0x12 - SONG 1B\n #_02D841: db $12 ; 0x13 - SONG 12\n #_02D842: db $12 ; 0x14 - SONG 12\n #_02D843: db $16 ; 0x15 - SONG 16\n #_02D844: db $12 ; 0x16 - SONG 12\n #_02D845: db $12 ; 0x17 - SONG 12\n #_02D846: db $16 ; 0x18 - SONG 16\n #_02D847: db $16 ; 0x19 - SONG 16\n #_02D848: db $12 ; 0x1A - SONG 12\n #_02D849: db $12 ; 0x1B - SONG 12\n #_02D84A: db $12 ; 0x1C - SONG 12\n #_02D84B: db $12 ; 0x1D - SONG 12\n #_02D84C: db $12 ; 0x1E - SONG 12\n #_02D84D: db $12 ; 0x1F - SONG 12\n #_02D84E: db $12 ; 0x20 - SONG 12\n #_02D84F: db $12 ; 0x21 - SONG 12\n #_02D850: db $12 ; 0x22 - SONG 12\n #_02D851: db $12 ; 0x23 - SONG 12\n #_02D852: db $10 ; 0x24 - SONG 10\n #_02D853: db $16 ; 0x25 - SONG 16\n #_02D854: db $16 ; 0x26 - SONG 16\n #_02D855: db $16 ; 0x27 - SONG 16\n #_02D856: db $16 ; 0x28 - SONG 16\n #_02D857: db $16 ; 0x29 - SONG 16\n #_02D858: db $16 ; 0x2A - SONG 16\n #_02D859: db $16 ; 0x2B - SONG 16\n #_02D85A: db $18 ; 0x2C - SONG 18\n #_02D85B: db $16 ; 0x2D - SONG 16\n #_02D85C: db $12 ; 0x2E - SONG 12\n #_02D85D: db $12 ; 0x2F - SONG 12\n #_02D85E: db $12 ; 0x30 - SONG 12\n #_02D85F: db $12 ; 0x31 - SONG 12\n #_02D860: db $03 ; 0x32 - SONG 03\n #_02D861: db $11 ; 0x33 - SONG 11\n #_02D862: db $16 ; 0x34 - SONG 16\n #_02D863: db $16 ; 0x35 - SONG 16\n #_02D864: db $1C ; 0x36 - SONG 1C\n #_02D865: db $16 ; 0x37 - SONG 16\n #_02D866: db $1B ; 0x38 - SONG 1B\n #_02D867: db $12 ; 0x39 - SONG 12\n #_02D868: db $12 ; 0x3A - SONG 12\n #_02D869: db $12 ; 0x3B - SONG 12\n #_02D86A: db $0E ; 0x3C - SONG 0E\n #_02D86B: db $12 ; 0x3D - SONG 12\n #_02D86C: db $F2 ; 0x3E - SONG F2\n #_02D86D: db $F2 ; 0x3F - SONG F2\n #_02D86E: db $F2 ; 0x40 - SONG F2\n #_02D86F: db $12 ; 0x41 - SONG 12\n #_02D870: db $F2 ; 0x42 - SONG F2\n #_02D871: db $F2 ; 0x43 - SONG F2\n #_02D872: db $F2 ; 0x44 - SONG F2\n #_02D873: db $18 ; 0x45 - SONG 18\n #_02D874: db $17 ; 0x46 - SONG 17\n #_02D875: db $0E ; 0x47 - SONG 0E\n #_02D876: db $F2 ; 0x48 - SONG F2\n #_02D877: db $F2 ; 0x49 - SONG F2\n #_02D878: db $F2 ; 0x4A - SONG F2\n #_02D879: db $F2 ; 0x4B - SONG F2\n #_02D87A: db $F2 ; 0x4C - SONG F2\n #_02D87B: db $18 ; 0x4D - SONG 18\n #_02D87C: db $18 ; 0x4E - SONG 18\n #_02D87D: db $12 ; 0x4F - SONG 12\n #_02D87E: db $12 ; 0x50 - SONG 12\n #_02D87F: db $18 ; 0x51 - SONG 18\n #_02D880: db $18 ; 0x52 - SONG 18\n #_02D881: db $F2 ; 0x53 - SONG F2\n #_02D882: db $F2 ; 0x54 - SONG F2\n #_02D883: db $1B ; 0x55 - SONG 1B\n #_02D884: db $1B ; 0x56 - SONG 1B\n #_02D885: db $17 ; 0x57 - SONG 17\n #_02D886: db $12 ; 0x58 - SONG 12\n #_02D887: db $0E ; 0x59 - SONG 0E\n #_02D888: db $12 ; 0x5A - SONG 12\n #_02D889: db $18 ; 0x5B - SONG 18\n #_02D88A: db $18 ; 0x5C - SONG 18\n #_02D88B: db $18 ; 0x5D - SONG 18\n #_02D88C: db $1B ; 0x5E - SONG 1B\n #_02D88D: db $12 ; 0x5F - SONG 12\n #_02D88E: db $17 ; 0x60 - SONG 17\n #_02D88F: db $F2 ; 0x61 - SONG F2\n #_02D890: db $12 ; 0x62 - SONG 12\n #_02D891: db $18 ; 0x63 - SONG 18\n #_02D892: db $F2 ; 0x64 - SONG F2\n #_02D893: db $17 ; 0x65 - SONG 17\n #_02D894: db $17 ; 0x66 - SONG 17\n #_02D895: db $0E ; 0x67 - SONG 0E\n #_02D896: db $18 ; 0x68 - SONG 18\n #_02D897: db $12 ; 0x69 - SONG 12\n #_02D898: db $12 ; 0x6A - SONG 12\n #_02D899: db $F2 ; 0x6B - SONG F2\n #_02D89A: db $12 ; 0x6C - SONG 12\n #_02D89B: db $12 ; 0x6D - SONG 12\n #_02D89C: db $12 ; 0x6E - SONG 12\n #_02D89D: db $12 ; 0x6F - SONG 12\n #_02D89E: db $12 ; 0x70 - SONG 12\n #_02D89F: db $1B ; 0x71 - SONG 1B\n #_02D8A0: db $12 ; 0x72 - SONG 12\n #_02D8A1: db $FF ; 0x73 - SONG FF\n #_02D8A2: db $FF ; 0x74 - SONG FF\n #_02D8A3: db $FF ; 0x75 - SONG FF\n #_02D8A4: db $16 ; 0x76 - SONG 16\n #_02D8A5: db $16 ; 0x77 - SONG 16\n #_02D8A6: db $16 ; 0x78 - SONG 16\n #_02D8A7: db $16 ; 0x79 - SONG 16\n #_02D8A8: db $18 ; 0x7A - SONG 18\n #_02D8A9: db $15 ; 0x7B - SONG 15\n #_02D8AA: db $1B ; 0x7C - SONG 1B\n #_02D8AB: db $03 ; 0x7D - SONG 03\n #_02D8AC: db $18 ; 0x7E - SONG 18\n #_02D8AD: db $1B ; 0x7F - SONG 1B\n #_02D8AE: db $12 ; 0x80 - SONG 12\n #_02D8AF: db $10 ; 0x81 - SONG 10\n #_02D8B0: db $12 ; 0x82 - SONG 12\n #_02D8B1: db $12 ; 0x83 - SONG 12\n #_02D8B2: db $1B ; 0x84 - SONG 1B\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadEntrance", + "code": "Underworld_LoadEntrance:\n #_02D8B3: PHB\n #_02D8B4: PHK\n #_02D8B5: PLB\n\n #_02D8B6: LDA.b #$01\n #_02D8B8: STA.b $1B\n\n #_02D8BA: LDA.w $010A\n #_02D8BD: BEQ .recache\n\n #_02D8BF: STZ.w $010A\n\n #_02D8C2: JMP.w .continue\n\n; ---------------------------------------------------------\n\n.recache\n #_02D8C5: REP #$20\n\n #_02D8C7: LDA.w $040A\n #_02D8CA: STA.l $7EC140\n\n #_02D8CE: LDA.b $1C\n #_02D8D0: STA.l $7EC142\n\n #_02D8D4: LDA.b $E8\n #_02D8D6: STA.l $7EC144\n\n #_02D8DA: LDA.b $E2\n #_02D8DC: STA.l $7EC146\n\n #_02D8E0: LDA.b $20\n #_02D8E2: STA.l $7EC148\n\n #_02D8E6: LDA.b $22\n #_02D8E8: STA.l $7EC14A\n\n #_02D8EC: LDA.w $0618\n #_02D8EF: STA.l $7EC150\n\n #_02D8F3: LDA.w $061C\n #_02D8F6: STA.l $7EC152\n\n #_02D8FA: LDA.b $8A\n #_02D8FC: STA.l $7EC14C\n\n #_02D900: LDA.b $84\n #_02D902: STA.l $7EC14E\n\n #_02D906: STZ.b $8A\n #_02D908: STZ.b $8C\n\n #_02D90A: LDA.w $0600\n #_02D90D: STA.l $7EC154\n\n #_02D911: LDA.w $0602\n #_02D914: STA.l $7EC156\n\n #_02D918: LDA.w $0604\n #_02D91B: STA.l $7EC158\n\n #_02D91F: LDA.w $0606\n #_02D922: STA.l $7EC15A\n\n #_02D926: LDA.w $0610\n #_02D929: STA.l $7EC15C\n\n #_02D92D: LDA.w $0612\n #_02D930: STA.l $7EC15E\n\n #_02D934: LDA.w $0614\n #_02D937: STA.l $7EC160\n\n #_02D93B: LDA.w $0616\n #_02D93E: STA.l $7EC162\n\n #_02D942: LDA.w $0624\n #_02D945: STA.l $7EC16A\n\n #_02D949: LDA.w $0626\n #_02D94C: STA.l $7EC16C\n\n #_02D950: LDA.w $0628\n #_02D953: STA.l $7EC16E\n\n #_02D957: LDA.w $062A\n #_02D95A: STA.l $7EC170\n\n #_02D95E: SEP #$20\n\n #_02D960: LDA.w $0AA0\n #_02D963: STA.l $7EC164\n\n #_02D967: LDA.w $0AA1\n #_02D96A: STA.l $7EC165\n\n #_02D96E: LDA.w $0AA2\n #_02D971: STA.l $7EC166\n\n #_02D975: LDA.w $0AA3\n #_02D978: STA.l $7EC167\n\n; ---------------------------------------------------------\n\n.continue\n #_02D97C: REP #$30\n\n #_02D97E: STZ.w $011A\n #_02D981: STZ.w $011C\n #_02D984: STZ.w $010A\n\n #_02D987: LDA.l $7EF3CC\n #_02D98B: CMP.w #$04 ; FOLLOWER 04\n #_02D98E: BEQ .have_old_man\n\n #_02D990: LDA.w $04AA\n #_02D993: BEQ .not_a_respawn\n\n.have_old_man\n #_02D995: JMP.w Underworld_LoadSpawnEntrance\n\n; ---------------------------------------------------------\n\n.not_a_respawn\n #_02D998: LDA.w $010E\n #_02D99B: AND.w #$00FF\n\n #_02D99E: ASL A\n #_02D99F: TAX\n\n #_02D9A0: ASL A\n #_02D9A1: ASL A\n #_02D9A2: TAY\n\n #_02D9A3: LDA.w EntranceData_room_id,X\n #_02D9A6: STA.b $A0\n #_02D9A8: STA.w $048E\n\n #_02D9AB: LDA.w EntranceData_vertical_scroll,X\n #_02D9AE: STA.b $E8\n #_02D9B0: STA.b $E6\n #_02D9B2: STA.w $0122\n #_02D9B5: STA.w $0124\n\n #_02D9B8: LDA.w EntranceData_horizontal_scroll,X\n #_02D9BB: STA.b $E2\n #_02D9BD: STA.b $E0\n #_02D9BF: STA.w $011E\n #_02D9C2: STA.w $0120\n\n #_02D9C5: LDA.l $7EF3C5\n #_02D9C9: BEQ .skip_coordinates\n\n #_02D9CB: LDA.w EntranceData_y_coordinate,X\n #_02D9CE: STA.b $20\n\n #_02D9D0: LDA.w EntranceData_x_coordinate,X\n #_02D9D3: STA.b $22\n\n; ---------------------------------------------------------\n\n.skip_coordinates\n #_02D9D5: LDA.w EntranceData_camera_trigger_y,X\n #_02D9D8: STA.w $0618\n\n #_02D9DB: INC A\n #_02D9DC: INC A\n #_02D9DD: STA.w $061A\n\n #_02D9E0: LDA.w EntranceData_camera_trigger_x,X\n #_02D9E3: STA.w $061C\n\n #_02D9E6: INC A\n #_02D9E7: INC A\n #_02D9E8: STA.w $061E\n\n #_02D9EB: LDA.w #$01F8\n #_02D9EE: STA.b $EC\n\n #_02D9F0: LDA.w EntranceData_overworld_door_tilemap,X\n #_02D9F3: STA.w $0696\n #_02D9F6: STZ.w $0698\n\n #_02D9F9: LDA.w #$0000\n #_02D9FC: STA.w $0610\n\n #_02D9FF: LDA.w #$0110\n #_02DA02: STA.w $0612\n\n #_02DA05: LDA.w #$0000\n #_02DA08: STA.w $0614\n\n #_02DA0B: LDA.w #$0100\n #_02DA0E: STA.w $0616\n\n #_02DA11: LDA.w $010E\n #_02DA14: AND.w #$00FF\n #_02DA17: TAX\n\n; ---------------------------------------------------------\n\n #_02DA18: SEP #$20\n\n #_02DA1A: LDA.w EntranceData_camera_scroll_boundaries+0,Y\n #_02DA1D: STA.w $0601\n\n #_02DA20: LDA.w EntranceData_camera_scroll_boundaries+1,Y\n #_02DA23: STA.w $0603\n\n #_02DA26: LDA.w EntranceData_camera_scroll_boundaries+2,Y\n #_02DA29: STA.w $0605\n\n #_02DA2C: LDA.w EntranceData_camera_scroll_boundaries+3,Y\n #_02DA2F: STA.w $0607\n\n #_02DA32: LDA.w EntranceData_camera_scroll_boundaries+4,Y\n #_02DA35: STA.w $0609\n\n #_02DA38: LDA.w EntranceData_camera_scroll_boundaries+5,Y\n #_02DA3B: STA.w $060B\n\n #_02DA3E: LDA.w EntranceData_camera_scroll_boundaries+6,Y\n #_02DA41: STA.w $060D\n\n #_02DA44: LDA.w EntranceData_camera_scroll_boundaries+7,Y\n #_02DA47: STA.w $060F\n\n #_02DA4A: STZ.w $0600\n #_02DA4D: STZ.w $0602\n\n #_02DA50: LDA.b #$10\n #_02DA52: STA.w $0604\n #_02DA55: STA.w $0606\n\n #_02DA58: STZ.w $0608\n #_02DA5B: STZ.w $060A\n #_02DA5E: STZ.w $060C\n #_02DA61: STZ.w $060E\n\n; ---------------------------------------------------------\n\n #_02DA64: LDA.b #$02\n\n #_02DA66: CPX.w #$0000\n #_02DA69: BEQ .face_up\n\n #_02DA6B: CPX.w #$0043\n #_02DA6E: BEQ .face_up\n\n #_02DA70: LDA.b #$00\n\n.face_up\n #_02DA72: STA.b $2F\n\n #_02DA74: LDA.w EntranceData_main_GFX,X\n #_02DA77: STA.w $0AA1\n\n #_02DA7A: LDA.w EntranceData_song,X\n #_02DA7D: STA.w $0132\n\n #_02DA80: CMP.b #$03 ; SONG 03\n #_02DA82: BNE .no_song_override\n\n #_02DA84: LDA.l $7EF3C5\n #_02DA88: CMP.b #$02\n #_02DA8A: BCC .no_song_override\n\n #_02DA8C: LDA.b #$12 ; SONG 12\n #_02DA8E: STA.w $0132\n\n.no_song_override\n #_02DA91: LDA.w EntranceData_floor,X\n #_02DA94: STA.b $A4\n\n #_02DA96: LDA.w EntranceData_dungeon_id,X\n #_02DA99: STA.w $040C\n\n #_02DA9C: LDA.w EntranceData_in_door,X\n #_02DA9F: STA.b $6C\n\n #_02DAA1: LDA.w EntranceData_layer,X\n #_02DAA4: LSR A\n #_02DAA5: LSR A\n #_02DAA6: LSR A\n #_02DAA7: LSR A\n #_02DAA8: STA.b $EE\n\n #_02DAAA: LDA.w EntranceData_layer,X\n #_02DAAD: AND.b #$0F\n #_02DAAF: STA.w $0476\n\n #_02DAB2: LDA.w EntranceData_camera_scroll_controller,X\n #_02DAB5: LSR A\n #_02DAB6: LSR A\n #_02DAB7: LSR A\n #_02DAB8: LSR A\n #_02DAB9: STA.b $A6\n\n #_02DABB: LDA.w EntranceData_camera_scroll_controller,X\n #_02DABE: AND.b #$0F\n #_02DAC0: STA.b $A7\n\n #_02DAC2: LDA.w EntranceData_quadrant,X\n #_02DAC5: LSR A\n #_02DAC6: LSR A\n #_02DAC7: LSR A\n #_02DAC8: LSR A\n #_02DAC9: STA.b $A9\n\n #_02DACB: LDA.w EntranceData_quadrant,X\n #_02DACE: AND.b #$0F\n #_02DAD0: STA.b $AA\n\n #_02DAD2: LDX.b $A0\n #_02DAD4: CPX.w #$0100\n #_02DAD7: BCC Underworld_LoadEntrance_DoPotsBlocksTorches\n\n #_02DAD9: STZ.b $A4\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadEntrance_DoPotsBlocksTorches", + "code": "Underworld_LoadEntrance_DoPotsBlocksTorches:\n #_02DADB: LDA.b #$80\n #_02DADD: STA.b $45\n #_02DADF: STA.b $44\n\n #_02DAE1: LDA.b #$0F\n #_02DAE3: STA.b $42\n #_02DAE5: STA.b $43\n\n #_02DAE7: LDA.b #$FF\n #_02DAE9: STA.b $24\n #_02DAEB: STA.b $29\n\n #_02DAED: SEP #$30\n\n #_02DAEF: PLB\n #_02DAF0: PHB\n\n #_02DAF1: LDA.b #$7E\n #_02DAF3: PHA\n #_02DAF4: PLB\n\n; ---------------------------------------------------------\n\n #_02DAF5: REP #$20\n\n #_02DAF7: LDX.b #$00\n\n.next_block_torch\n #_02DAF9: LDA.l SpecialUnderworldObjects_pushable_block+0*128,X\n #_02DAFD: STA.w $7EF940,X\n\n #_02DB00: LDA.l SpecialUnderworldObjects_pushable_block+1*128,X\n #_02DB04: STA.w $7EF9C0,X\n\n #_02DB07: LDA.l SpecialUnderworldObjects_pushable_block+2*128,X\n #_02DB0B: STA.w $7EFA40,X\n\n #_02DB0E: LDA.l SpecialUnderworldObjects_pushable_block+3*128,X\n #_02DB12: STA.w $7EFAC0,X\n\n #_02DB15: LDA.l SpecialUnderworldObjects_torch+0*128,X\n #_02DB19: STA.w $7EFB40,X\n\n #_02DB1C: LDA.l SpecialUnderworldObjects_torch+1*128,X\n #_02DB20: STA.w $7EFBC0,X\n\n #_02DB23: LDA.l SpecialUnderworldObjects_torch+2*128,X\n #_02DB27: STA.w $7EFC40,X\n\n #_02DB2A: INX\n #_02DB2B: INX\n #_02DB2C: CPX.b #$80\n #_02DB2E: BNE .next_block_torch\n\n; ---------------------------------------------------------\n\n #_02DB30: LDX.b #$3E\n #_02DB32: LDA.w #$0000\n\n.next_pot\n #_02DB35: STA.w $7EF800,X\n #_02DB38: STA.w $7EF840,X\n #_02DB3B: STA.w $7EF880,X\n #_02DB3E: STA.w $7EF8C0,X\n\n #_02DB41: STA.w $7EF580,X\n #_02DB44: STA.w $7EF5C0,X\n #_02DB47: STA.w $7EF600,X\n #_02DB4A: STA.w $7EF640,X\n #_02DB4D: STA.w $7EF680,X\n\n #_02DB50: STA.w $7EF6C0,X\n #_02DB53: STA.w $7EF700,X\n #_02DB56: STA.w $7EF740,X\n #_02DB59: STA.w $7EF780,X\n #_02DB5C: STA.w $7EF7C0,X\n\n #_02DB5F: DEX\n #_02DB60: DEX\n #_02DB61: BPL .next_pot\n\n; ---------------------------------------------------------\n\n #_02DB63: STA.l $7EC172\n\n #_02DB67: STZ.w $04BC\n\n #_02DB6A: SEP #$30\n\n #_02DB6C: PLB\n\n #_02DB6D: RTS", + "file": "bank_02.asm" + }, + { + "name": "SpawnPointData", + "code": "SpawnPointData:\n\n.room_id\n #_02DB6E: dw $0104 ; 0x00 - Link's house - ROOM 0104\n #_02DB70: dw $0012 ; 0x01 - Sanctuary - ROOM 0012\n #_02DB72: dw $0080 ; 0x02 - Prison - ROOM 0080\n #_02DB74: dw $0055 ; 0x03 - Uncle - ROOM 0055\n #_02DB76: dw $0051 ; 0x04 - Throne - ROOM 0051\n #_02DB78: dw $00F0 ; 0x05 - Old man cave - ROOM 00F0\n #_02DB7A: dw $00E4 ; 0x06 - Old man home - ROOM 00E4\n\n; ---------------------------------------------------------\n\n.camera_scroll_boundaries\n #_02DB7C: db $21, $20, $21, $21, $09, $09, $09, $0A ; 0x00 - Link's house\n #_02DB84: db $02, $02, $02, $03, $04, $04, $04, $05 ; 0x01 - Sanctuary\n #_02DB8C: db $10, $10, $10, $11, $01, $00, $01, $01 ; 0x02 - Prison\n #_02DB94: db $0A, $0A, $0A, $0B, $0B, $0A, $0B, $0B ; 0x03 - Uncle\n #_02DB9C: db $0A, $0A, $0A, $0B, $02, $02, $02, $03 ; 0x04 - Throne\n #_02DBA4: db $1E, $1E, $1E, $1F, $01, $00, $01, $01 ; 0x05 - Old man cave\n #_02DBAC: db $1D, $1C, $1D, $1D, $08, $08, $08, $09 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.horizontal_scroll\n #_02DBB4: dw $0900 ; 0x00 - Link's house\n #_02DBB6: dw $0480 ; 0x01 - Sanctuary\n #_02DBB8: dw $00DB ; 0x02 - Prison\n #_02DBBA: dw $0A8E ; 0x03 - Uncle\n #_02DBBC: dw $0280 ; 0x04 - Throne\n #_02DBBE: dw $0100 ; 0x05 - Old man cave\n #_02DBC0: dw $0800 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.vertical_scroll\n #_02DBC2: dw $2110 ; 0x00 - Link's house\n #_02DBC4: dw $0231 ; 0x01 - Sanctuary\n #_02DBC6: dw $1000 ; 0x02 - Prison\n #_02DBC8: dw $0A03 ; 0x03 - Uncle\n #_02DBCA: dw $0A22 ; 0x04 - Throne\n #_02DBCC: dw $1E8C ; 0x05 - Old man cave\n #_02DBCE: dw $1D10 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.y_coordinate\n #_02DBD0: dw $2178 ; 0x00 - Link's house\n #_02DBD2: dw $029C ; 0x01 - Sanctuary\n #_02DBD4: dw $1041 ; 0x02 - Prison\n #_02DBD6: dw $0A70 ; 0x03 - Uncle\n #_02DBD8: dw $0A8F ; 0x04 - Throne\n #_02DBDA: dw $1EF8 ; 0x05 - Old man cave\n #_02DBDC: dw $1D98 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.x_coordinate\n #_02DBDE: dw $0978 ; 0x00 - Link's house\n #_02DBE0: dw $04F8 ; 0x01 - Sanctuary\n #_02DBE2: dw $0160 ; 0x02 - Prison\n #_02DBE4: dw $0B06 ; 0x03 - Uncle\n #_02DBE6: dw $02F8 ; 0x04 - Throne\n #_02DBE8: dw $01A8 ; 0x05 - Old man cave\n #_02DBEA: dw $0878 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.camera_trigger_y\n #_02DBEC: dw $017F ; 0x00 - Link's house\n #_02DBEE: dw $00A7 ; 0x01 - Sanctuary\n #_02DBF0: dw $0083 ; 0x02 - Prison\n #_02DBF2: dw $007B ; 0x03 - Uncle\n #_02DBF4: dw $009A ; 0x04 - Throne\n #_02DBF6: dw $0103 ; 0x05 - Old man cave\n #_02DBF8: dw $0187 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.camera_trigger_x\n #_02DBFA: dw $017F ; 0x00 - Link's house\n #_02DBFC: dw $00FF ; 0x01 - Sanctuary\n #_02DBFE: dw $0167 ; 0x02 - Prison\n #_02DC00: dw $010D ; 0x03 - Uncle\n #_02DC02: dw $00FF ; 0x04 - Throne\n #_02DC04: dw $017F ; 0x05 - Old man cave\n #_02DC06: dw $007F ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.main_GFX\n #_02DC08: db $03 ; 0x00 - Link's house\n #_02DC09: db $04 ; 0x01 - Sanctuary\n #_02DC0A: db $04 ; 0x02 - Prison\n #_02DC0B: db $01 ; 0x03 - Uncle\n #_02DC0C: db $04 ; 0x04 - Throne\n #_02DC0D: db $06 ; 0x05 - Old man cave\n #_02DC0E: db $14 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.floor\n #_02DC0F: db $00 ; 0x00 - Link's house\n #_02DC10: db $00 ; 0x01 - Sanctuary\n #_02DC11: db $FD ; 0x02 - Prison\n #_02DC12: db $FF ; 0x03 - Uncle\n #_02DC13: db $01 ; 0x04 - Throne\n #_02DC14: db $00 ; 0x05 - Old man cave\n #_02DC15: db $00 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.dungeon_id\n #_02DC16: db $FF ; 0x00 - Link's house\n #_02DC17: db $00 ; 0x01 - Sanctuary\n #_02DC18: db $02 ; 0x02 - Prison\n #_02DC19: db $FF ; 0x03 - Uncle\n #_02DC1A: db $02 ; 0x04 - Throne\n #_02DC1B: db $FF ; 0x05 - Old man cave\n #_02DC1C: db $FF ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.layer\n #_02DC1D: db $00 ; 0x00 - Link's house\n #_02DC1E: db $00 ; 0x01 - Sanctuary\n #_02DC1F: db $00 ; 0x02 - Prison\n #_02DC20: db $01 ; 0x03 - Uncle\n #_02DC21: db $00 ; 0x04 - Throne\n #_02DC22: db $00 ; 0x05 - Old man cave\n #_02DC23: db $01 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.camera_scroll_controller\n #_02DC24: db $00 ; 0x00 - Link's house\n #_02DC25: db $22 ; 0x01 - Sanctuary\n #_02DC26: db $20 ; 0x02 - Prison\n #_02DC27: db $20 ; 0x03 - Uncle\n #_02DC28: db $22 ; 0x04 - Throne\n #_02DC29: db $22 ; 0x05 - Old man cave\n #_02DC2A: db $02 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.quadrant\n #_02DC2B: db $02 ; 0x00 - Link's house\n #_02DC2C: db $00 ; 0x01 - Sanctuary\n #_02DC2D: db $10 ; 0x02 - Prison\n #_02DC2E: db $10 ; 0x03 - Uncle\n #_02DC2F: db $00 ; 0x04 - Throne\n #_02DC30: db $10 ; 0x05 - Old man cave\n #_02DC31: db $02 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.overworld_door_tilemap\n #_02DC32: dw $0816 ; 0x00 - Link's house\n #_02DC34: dw $0000 ; 0x01 - Sanctuary\n #_02DC36: dw $0000 ; 0x02 - Prison\n #_02DC38: dw $0000 ; 0x03 - Uncle\n #_02DC3A: dw $0000 ; 0x04 - Throne\n #_02DC3C: dw $0000 ; 0x05 - Old man cave\n #_02DC3E: dw $0000 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.entrance_id\n #_02DC40: dw $0000 ; 0x00 - Link's house\n #_02DC42: dw $0002 ; 0x01 - Sanctuary\n #_02DC44: dw $0002 ; 0x02 - Prison\n #_02DC46: dw $0032 ; 0x03 - Uncle\n #_02DC48: dw $0004 ; 0x04 - Throne\n #_02DC4A: dw $0006 ; 0x05 - Old man cave\n #_02DC4C: dw $0030 ; 0x06 - Old man home\n\n; ---------------------------------------------------------\n\n.song\n #_02DC4E: db $07 ; 0x00 - Link's house - SONG 07\n #_02DC4F: db $14 ; 0x01 - Sanctuary - SONG 14\n #_02DC50: db $10 ; 0x02 - Prison - SONG 10\n #_02DC51: db $03 ; 0x03 - Uncle - SONG 03\n #_02DC52: db $10 ; 0x04 - Throne - SONG 10\n #_02DC53: db $12 ; 0x05 - Old man cave - SONG 12\n #_02DC54: db $12 ; 0x06 - Old man home - SONG 12\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Underworld_LoadSpawnEntrance", + "code": "Underworld_LoadSpawnEntrance:\n #_02DC55: LDA.l $7EF3C8\n #_02DC59: AND.w #$00FF\n #_02DC5C: ASL A\n #_02DC5D: TAX\n\n #_02DC5E: ASL A\n #_02DC5F: ASL A\n #_02DC60: TAY\n\n #_02DC61: LDA.w SpawnPointData_entrance_id,X\n #_02DC64: STA.w $010E\n\n #_02DC67: LDA.w SpawnPointData_room_id,X\n #_02DC6A: STA.b $A0\n #_02DC6C: STA.w $048E\n\n #_02DC6F: LDA.w SpawnPointData_vertical_scroll,X\n #_02DC72: STA.b $E8\n #_02DC74: STA.b $E6\n #_02DC76: STA.w $0122\n #_02DC79: STA.w $0124\n\n #_02DC7C: LDA.w SpawnPointData_horizontal_scroll,X\n #_02DC7F: STA.b $E2\n #_02DC81: STA.b $E0\n #_02DC83: STA.w $011E\n #_02DC86: STA.w $0120\n\n #_02DC89: LDA.l $7EF3C5\n #_02DC8D: BEQ .skip_coordinates\n\n #_02DC8F: LDA.w SpawnPointData_y_coordinate,X\n #_02DC92: STA.b $20\n\n #_02DC94: LDA.w SpawnPointData_x_coordinate,X\n #_02DC97: STA.b $22\n\n; ---------------------------------------------------------\n\n.skip_coordinates\n #_02DC99: LDA.w SpawnPointData_camera_trigger_y,X\n #_02DC9C: STA.w $0618\n\n #_02DC9F: INC A\n #_02DCA0: INC A\n #_02DCA1: STA.w $061A\n\n #_02DCA4: LDA.w SpawnPointData_camera_trigger_x,X\n #_02DCA7: STA.w $061C\n\n #_02DCAA: INC A\n #_02DCAB: INC A\n #_02DCAC: STA.w $061E\n\n #_02DCAF: LDA.w #$01F8\n #_02DCB2: STA.b $EC\n\n #_02DCB4: LDA.w SpawnPointData_overworld_door_tilemap,X\n #_02DCB7: STA.w $0696\n\n #_02DCBA: LDA.w #$0000\n #_02DCBD: STA.w $0610\n\n #_02DCC0: LDA.w #$0110\n #_02DCC3: STA.w $0612\n\n #_02DCC6: LDA.w #$0000\n #_02DCC9: STA.w $0614\n\n #_02DCCC: LDA.w #$0100\n #_02DCCF: STA.w $0616\n\n; ---------------------------------------------------------\n\n #_02DCD2: LDA.l $7EF3C8\n #_02DCD6: AND.w #$00FF\n #_02DCD9: TAX\n\n #_02DCDA: SEP #$20\n\n #_02DCDC: LDA.w SpawnPointData_camera_scroll_boundaries+0,Y\n #_02DCDF: STA.w $0601\n\n #_02DCE2: LDA.w SpawnPointData_camera_scroll_boundaries+1,Y\n #_02DCE5: STA.w $0603\n\n #_02DCE8: LDA.w SpawnPointData_camera_scroll_boundaries+2,Y\n #_02DCEB: STA.w $0605\n\n #_02DCEE: LDA.w SpawnPointData_camera_scroll_boundaries+3,Y\n #_02DCF1: STA.w $0607\n\n #_02DCF4: LDA.w SpawnPointData_camera_scroll_boundaries+4,Y\n #_02DCF7: STA.w $0609\n\n #_02DCFA: LDA.w SpawnPointData_camera_scroll_boundaries+5,Y\n #_02DCFD: STA.w $060B\n\n #_02DD00: LDA.w SpawnPointData_camera_scroll_boundaries+6,Y\n #_02DD03: STA.w $060D\n\n #_02DD06: LDA.w SpawnPointData_camera_scroll_boundaries+7,Y\n #_02DD09: STA.w $060F\n\n #_02DD0C: STZ.w $0600\n #_02DD0F: STZ.w $0602\n\n #_02DD12: LDA.b #$10\n #_02DD14: STA.w $0604\n #_02DD17: STA.w $0606\n\n #_02DD1A: STZ.w $0608\n #_02DD1D: STZ.w $060A\n #_02DD20: STZ.w $060C\n #_02DD23: STZ.w $060E\n\n; ---------------------------------------------------------\n\n #_02DD26: LDA.b #$02\n #_02DD28: STA.b $2F\n\n #_02DD2A: LDA.w SpawnPointData_main_GFX,X\n #_02DD2D: STA.w $0AA1\n\n #_02DD30: LDA.w SpawnPointData_floor,X\n #_02DD33: STA.b $A4\n\n #_02DD35: LDA.w SpawnPointData_dungeon_id,X\n #_02DD38: STA.w $040C\n\n #_02DD3B: STZ.b $6C\n\n #_02DD3D: LDA.w SpawnPointData_layer,X\n #_02DD40: LSR A\n #_02DD41: LSR A\n #_02DD42: LSR A\n #_02DD43: LSR A\n #_02DD44: STA.b $EE\n\n #_02DD46: LDA.w SpawnPointData_layer,X\n #_02DD49: AND.b #$0F\n #_02DD4B: STA.w $0476\n\n #_02DD4E: LDA.w SpawnPointData_camera_scroll_controller,X\n #_02DD51: LSR A\n #_02DD52: LSR A\n #_02DD53: LSR A\n #_02DD54: LSR A\n #_02DD55: STA.b $A6\n\n #_02DD57: LDA.w SpawnPointData_camera_scroll_controller,X\n #_02DD5A: AND.b #$0F\n #_02DD5C: STA.b $A7\n\n #_02DD5E: LDA.w SpawnPointData_quadrant,X\n #_02DD61: LSR A\n #_02DD62: LSR A\n #_02DD63: LSR A\n #_02DD64: LSR A\n #_02DD65: STA.b $A9\n\n #_02DD67: LDA.w SpawnPointData_quadrant,X\n #_02DD6A: AND.b #$0F\n #_02DD6C: STA.b $AA\n\n; ---------------------------------------------------------\n\n #_02DD6E: LDA.w SpawnPointData_song,X\n #_02DD71: STA.w $0132\n\n #_02DD74: CPX.w #$0000\n #_02DD77: BNE .dont_lower_song_volume\n\n #_02DD79: LDA.l $7EF3C5\n #_02DD7D: BNE .dont_lower_song_volume\n\n #_02DD7F: LDA.b #$FF ; SONG FF - transfer\n #_02DD81: STA.w $0132\n\n.dont_lower_song_volume\n #_02DD84: STZ.w $04AA\n\n #_02DD87: JMP.w Underworld_LoadEntrance_DoPotsBlocksTorches\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UnderworldExitData", + "code": "UnderworldExitData:\n\n.room_id\n #_02DD8A: dw $0104 ; 0x00\n #_02DD8C: dw $0012 ; 0x01\n #_02DD8E: dw $0060 ; 0x02\n #_02DD90: dw $0061 ; 0x03\n #_02DD92: dw $0062 ; 0x04\n #_02DD94: dw $FFFF ; 0x05\n #_02DD96: dw $0020 ; 0x06\n #_02DD98: dw $00F0 ; 0x07\n #_02DD9A: dw $00F1 ; 0x08\n #_02DD9C: dw $00C9 ; 0x09\n #_02DD9E: dw $0084 ; 0x0A\n #_02DDA0: dw $0085 ; 0x0B\n #_02DDA2: dw $0083 ; 0x0C\n #_02DDA4: dw $0063 ; 0x0D\n #_02DDA6: dw $00F2 ; 0x0E\n #_02DDA8: dw $00F3 ; 0x0F\n #_02DDAA: dw $00F4 ; 0x10\n #_02DDAC: dw $00F5 ; 0x11\n #_02DDAE: dw $00E3 ; 0x12\n #_02DDB0: dw $00E2 ; 0x13\n #_02DDB2: dw $00F8 ; 0x14\n #_02DDB4: dw $00E8 ; 0x15\n #_02DDB6: dw $0023 ; 0x16\n #_02DDB8: dw $00FB ; 0x17\n #_02DDBA: dw $00EB ; 0x18\n #_02DDBC: dw $00D5 ; 0x19\n #_02DDBE: dw $0024 ; 0x1A\n #_02DDC0: dw $00FD ; 0x1B\n #_02DDC2: dw $00ED ; 0x1C\n #_02DDC4: dw $00FE ; 0x1D\n #_02DDC6: dw $00EE ; 0x1E\n #_02DDC8: dw $00FF ; 0x1F\n #_02DDCA: dw $00EF ; 0x20\n #_02DDCC: dw $00DF ; 0x21\n #_02DDCE: dw $00F9 ; 0x22\n #_02DDD0: dw $00FA ; 0x23\n #_02DDD2: dw $00EA ; 0x24\n #_02DDD4: dw $00E0 ; 0x25\n #_02DDD6: dw $0028 ; 0x26\n #_02DDD8: dw $004A ; 0x27\n #_02DDDA: dw $0098 ; 0x28\n #_02DDDC: dw $0056 ; 0x29\n #_02DDDE: dw $0057 ; 0x2A\n #_02DDE0: dw $0058 ; 0x2B\n #_02DDE2: dw $0059 ; 0x2C\n #_02DDE4: dw $0077 ; 0x2D\n #_02DDE6: dw $000E ; 0x2E\n #_02DDE8: dw $00E6 ; 0x2F\n #_02DDEA: dw $00E7 ; 0x30\n #_02DDEC: dw $00E4 ; 0x31\n #_02DDEE: dw $00E5 ; 0x32\n #_02DDF0: dw $0055 ; 0x33\n #_02DDF2: dw $00D6 ; 0x34\n #_02DDF4: dw $00DB ; 0x35\n #_02DDF6: dw $00E1 ; 0x36\n #_02DDF8: dw $0010 ; 0x37\n #_02DDFA: dw $000C ; 0x38\n #_02DDFC: dw $0008 ; 0x39\n #_02DDFE: dw $002F ; 0x3A\n #_02DE00: dw $003C ; 0x3B\n #_02DE02: dw $002C ; 0x3C\n #_02DE04: dw $0003 ; 0x3D\n #_02DE06: dw $1000 ; 0x3E\n #_02DE08: dw $1002 ; 0x3F\n #_02DE0A: dw $1004 ; 0x40\n #_02DE0C: dw $1006 ; 0x41\n #_02DE0E: dw $1008 ; 0x42\n #_02DE10: dw $100A ; 0x43\n #_02DE12: dw $100C ; 0x44\n #_02DE14: dw $100E ; 0x45\n #_02DE16: dw $1010 ; 0x46\n #_02DE18: dw $1012 ; 0x47\n #_02DE1A: dw $1014 ; 0x48\n #_02DE1C: dw $1016 ; 0x49\n #_02DE1E: dw $1018 ; 0x4A\n #_02DE20: dw $0180 ; 0x4B\n #_02DE22: dw $0181 ; 0x4C\n #_02DE24: dw $0182 ; 0x4D\n #_02DE26: dw $0189 ; 0x4E\n\n; ---------------------------------------------------------\n\n.overworld_id\n #_02DE28: db $2C ; 0x00\n #_02DE29: db $13 ; 0x01\n #_02DE2A: db $1B ; 0x02\n #_02DE2B: db $1B ; 0x03\n #_02DE2C: db $1B ; 0x04\n #_02DE2D: db $0F ; 0x05\n #_02DE2E: db $5B ; 0x06\n #_02DE2F: db $0A ; 0x07\n #_02DE30: db $03 ; 0x08\n #_02DE31: db $1E ; 0x09\n #_02DE32: db $30 ; 0x0A\n #_02DE33: db $30 ; 0x0B\n #_02DE34: db $30 ; 0x0C\n #_02DE35: db $30 ; 0x0D\n #_02DE36: db $18 ; 0x0E\n #_02DE37: db $18 ; 0x0F\n #_02DE38: db $28 ; 0x10\n #_02DE39: db $29 ; 0x11\n #_02DE3A: db $22 ; 0x12\n #_02DE3B: db $02 ; 0x13\n #_02DE3C: db $45 ; 0x14\n #_02DE3D: db $45 ; 0x15\n #_02DE3E: db $45 ; 0x16\n #_02DE3F: db $4A ; 0x17\n #_02DE40: db $4A ; 0x18\n #_02DE41: db $45 ; 0x19\n #_02DE42: db $45 ; 0x1A\n #_02DE43: db $05 ; 0x1B\n #_02DE44: db $05 ; 0x1C\n #_02DE45: db $05 ; 0x1D\n #_02DE46: db $05 ; 0x1E\n #_02DE47: db $05 ; 0x1F\n #_02DE48: db $05 ; 0x20\n #_02DE49: db $05 ; 0x21\n #_02DE4A: db $03 ; 0x22\n #_02DE4B: db $03 ; 0x23\n #_02DE4C: db $03 ; 0x24\n #_02DE4D: db $1B ; 0x25\n #_02DE4E: db $7B ; 0x26\n #_02DE4F: db $5E ; 0x27\n #_02DE50: db $70 ; 0x28\n #_02DE51: db $40 ; 0x29\n #_02DE52: db $40 ; 0x2A\n #_02DE53: db $40 ; 0x2B\n #_02DE54: db $40 ; 0x2C\n #_02DE55: db $03 ; 0x2D\n #_02DE56: db $75 ; 0x2E\n #_02DE57: db $0A ; 0x2F\n #_02DE58: db $03 ; 0x30\n #_02DE59: db $03 ; 0x31\n #_02DE5A: db $03 ; 0x32\n #_02DE5B: db $1B ; 0x33\n #_02DE5C: db $47 ; 0x34\n #_02DE5D: db $58 ; 0x35\n #_02DE5E: db $00 ; 0x36\n #_02DE5F: db $5B ; 0x37\n #_02DE60: db $43 ; 0x38\n #_02DE61: db $15 ; 0x39\n #_02DE62: db $18 ; 0x3A\n #_02DE63: db $45 ; 0x3B\n #_02DE64: db $45 ; 0x3C\n #_02DE65: db $2C ; 0x3D\n #_02DE66: db $1B ; 0x3E\n #_02DE67: db $18 ; 0x3F\n #_02DE68: db $03 ; 0x40\n #_02DE69: db $2C ; 0x41\n #_02DE6A: db $05 ; 0x42\n #_02DE6B: db $02 ; 0x43\n #_02DE6C: db $1E ; 0x44\n #_02DE6D: db $18 ; 0x45\n #_02DE6E: db $81 ; 0x46\n #_02DE6F: db $30 ; 0x47\n #_02DE70: db $16 ; 0x48\n #_02DE71: db $2A ; 0x49\n #_02DE72: db $00 ; 0x4A\n #_02DE73: db $80 ; 0x4B\n #_02DE74: db $80 ; 0x4C\n #_02DE75: db $81 ; 0x4D\n #_02DE76: db $88 ; 0x4E\n\n; ---------------------------------------------------------\n\n.exit_vram_addr\n #_02DE77: dw $0506 ; 0x00\n #_02DE79: dw $001C ; 0x01\n #_02DE7B: dw $0016 ; 0x02\n #_02DE7D: dw $0530 ; 0x03\n #_02DE7F: dw $004A ; 0x04\n #_02DE81: dw $001C ; 0x05\n #_02DE83: dw $002E ; 0x06\n #_02DE85: dw $03A0 ; 0x07\n #_02DE87: dw $1402 ; 0x08\n #_02DE89: dw $005A ; 0x09\n #_02DE8B: dw $0314 ; 0x0A\n #_02DE8D: dw $02A8 ; 0x0B\n #_02DE8F: dw $0280 ; 0x0C\n #_02DE91: dw $0016 ; 0x0D\n #_02DE93: dw $02BC ; 0x0E\n #_02DE95: dw $02C4 ; 0x0F\n #_02DE97: dw $08A0 ; 0x10\n #_02DE99: dw $0880 ; 0x11\n #_02DE9B: dw $0412 ; 0x12\n #_02DE9D: dw $0118 ; 0x13\n #_02DE9F: dw $0EE0 ; 0x14\n #_02DEA1: dw $0460 ; 0x15\n #_02DEA3: dw $07CA ; 0x16\n #_02DEA5: dw $03A0 ; 0x17\n #_02DEA7: dw $00A0 ; 0x18\n #_02DEA9: dw $0AD4 ; 0x19\n #_02DEAB: dw $07E0 ; 0x1A\n #_02DEAD: dw $0DD4 ; 0x1B\n #_02DEAF: dw $0AD4 ; 0x1C\n #_02DEB1: dw $0CCA ; 0x1D\n #_02DEB3: dw $07C8 ; 0x1E\n #_02DEB5: dw $0EE0 ; 0x1F\n #_02DEB7: dw $17E0 ; 0x20\n #_02DEB9: dw $0460 ; 0x21\n #_02DEBB: dw $0D9C ; 0x22\n #_02DEBD: dw $0EAC ; 0x23\n #_02DEBF: dw $092C ; 0x24\n #_02DEC1: dw $0032 ; 0x25\n #_02DEC3: dw $049E ; 0x26\n #_02DEC5: dw $005A ; 0x27\n #_02DEC7: dw $0414 ; 0x28\n #_02DEC9: dw $0C8E ; 0x29\n #_02DECB: dw $0EB8 ; 0x2A\n #_02DECD: dw $0F4C ; 0x2B\n #_02DECF: dw $0282 ; 0x2C\n #_02DED1: dw $0050 ; 0x2D\n #_02DED3: dw $0BC6 ; 0x2E\n #_02DED5: dw $00A0 ; 0x2F\n #_02DED7: dw $0D82 ; 0x30\n #_02DED9: dw $181A ; 0x31\n #_02DEDB: dw $10C6 ; 0x32\n #_02DEDD: dw $044A ; 0x33\n #_02DEDF: dw $0712 ; 0x34\n #_02DEE1: dw $0B2E ; 0x35\n #_02DEE3: dw $0F4E ; 0x36\n #_02DEE5: dw $0B0E ; 0x37\n #_02DEE7: dw $0052 ; 0x38\n #_02DEE9: dw $0088 ; 0x39\n #_02DEEB: dw $0386 ; 0x3A\n #_02DEED: dw $04DA ; 0x3B\n #_02DEEF: dw $004C ; 0x3C\n #_02DEF1: dw $0506 ; 0x3D\n #_02DEF3: dw $1230 ; 0x3E\n #_02DEF5: dw $0448 ; 0x3F\n #_02DEF7: dw $0050 ; 0x40\n #_02DEF9: dw $009A ; 0x41\n #_02DEFB: dw $034E ; 0x42\n #_02DEFD: dw $049A ; 0x43\n #_02DEFF: dw $07C0 ; 0x44\n #_02DF01: dw $1100 ; 0x45\n #_02DF03: dw $0040 ; 0x46\n #_02DF05: dw $0916 ; 0x47\n #_02DF07: dw $000A ; 0x48\n #_02DF09: dw $0910 ; 0x49\n #_02DF0B: dw $0A3A ; 0x4A\n #_02DF0D: dw $0000 ; 0x4B\n #_02DF0F: dw $0020 ; 0x4C\n #_02DF11: dw $1782 ; 0x4D\n #_02DF13: dw $0000 ; 0x4E\n\n; ---------------------------------------------------------\n\n.vertical_scroll\n #_02DF15: dw $0A9A ; 0x00\n #_02DF17: dw $0400 ; 0x01\n #_02DF19: dw $0600 ; 0x02\n #_02DF1B: dw $0692 ; 0x03\n #_02DF1D: dw $0600 ; 0x04\n #_02DF1F: dw $0200 ; 0x05\n #_02DF21: dw $0600 ; 0x06\n #_02DF23: dw $0264 ; 0x07\n #_02DF25: dw $0294 ; 0x08\n #_02DF27: dw $0600 ; 0x09\n #_02DF29: dw $0C56 ; 0x0A\n #_02DF2B: dw $0C4A ; 0x0B\n #_02DF2D: dw $0C46 ; 0x0C\n #_02DF2F: dw $0C00 ; 0x0D\n #_02DF31: dw $064C ; 0x0E\n #_02DF33: dw $064A ; 0x0F\n #_02DF35: dw $0B06 ; 0x10\n #_02DF37: dw $0B07 ; 0x11\n #_02DF39: dw $087A ; 0x12\n #_02DF3B: dw $0015 ; 0x13\n #_02DF3D: dw $01E4 ; 0x14\n #_02DF3F: dw $0093 ; 0x15\n #_02DF41: dw $0103 ; 0x16\n #_02DF43: dw $0263 ; 0x17\n #_02DF45: dw $020A ; 0x18\n #_02DF47: dw $0164 ; 0x19\n #_02DF49: dw $0103 ; 0x1A\n #_02DF4B: dw $01C4 ; 0x1B\n #_02DF4D: dw $0163 ; 0x1C\n #_02DF4F: dw $01A3 ; 0x1D\n #_02DF51: dw $0108 ; 0x1E\n #_02DF53: dw $01E3 ; 0x1F\n #_02DF55: dw $0304 ; 0x20\n #_02DF57: dw $0093 ; 0x21\n #_02DF59: dw $01C3 ; 0x22\n #_02DF5B: dw $01E3 ; 0x23\n #_02DF5D: dw $0133 ; 0x24\n #_02DF5F: dw $0600 ; 0x25\n #_02DF61: dw $0E8C ; 0x26\n #_02DF63: dw $0600 ; 0x27\n #_02DF65: dw $0C79 ; 0x28\n #_02DF67: dw $01A6 ; 0x29\n #_02DF69: dw $01E6 ; 0x2A\n #_02DF6B: dw $01F6 ; 0x2B\n #_02DF6D: dw $0066 ; 0x2C\n #_02DF6F: dw $0014 ; 0x2D\n #_02DF71: dw $0D6A ; 0x2E\n #_02DF73: dw $0205 ; 0x2F\n #_02DF75: dw $01C4 ; 0x30\n #_02DF77: dw $031E ; 0x31\n #_02DF79: dw $0224 ; 0x32\n #_02DF7B: dw $067A ; 0x33\n #_02DF7D: dw $00DA ; 0x34\n #_02DF7F: dw $075A ; 0x35\n #_02DF81: dw $01F6 ; 0x36\n #_02DF83: dw $075A ; 0x37\n #_02DF85: dw $0000 ; 0x38\n #_02DF87: dw $0400 ; 0x39\n #_02DF89: dw $0665 ; 0x3A\n #_02DF8B: dw $00A3 ; 0x3B\n #_02DF8D: dw $0000 ; 0x3C\n #_02DF8F: dw $0A9A ; 0x3D\n #_02DF91: dw $0842 ; 0x3E\n #_02DF93: dw $0674 ; 0x3F\n #_02DF95: dw $0000 ; 0x40\n #_02DF97: dw $0A0B ; 0x41\n #_02DF99: dw $005C ; 0x42\n #_02DF9B: dw $0089 ; 0x43\n #_02DF9D: dw $06E4 ; 0x44\n #_02DF9F: dw $0826 ; 0x45\n #_02DFA1: dw $0010 ; 0x46\n #_02DFA3: dw $0D20 ; 0x47\n #_02DFA5: dw $0400 ; 0x48\n #_02DFA7: dw $0B1E ; 0x49\n #_02DFA9: dw $016A ; 0x4A\n #_02DFAB: dw $0120 ; 0x4B\n #_02DFAD: dw $0000 ; 0x4C\n #_02DFAF: dw $0320 ; 0x4D\n #_02DFB1: dw $0000 ; 0x4E\n\n; ---------------------------------------------------------\n\n.horizontal_scroll\n #_02DFB3: dw $0832 ; 0x00\n #_02DFB5: dw $06DE ; 0x01\n #_02DFB7: dw $06AE ; 0x02\n #_02DFB9: dw $0784 ; 0x03\n #_02DFBB: dw $0856 ; 0x04\n #_02DFBD: dw $0EE2 ; 0x05\n #_02DFBF: dw $0778 ; 0x06\n #_02DFC1: dw $0500 ; 0x07\n #_02DFC3: dw $0604 ; 0x08\n #_02DFC5: dw $0ED6 ; 0x09\n #_02DFC7: dw $00A6 ; 0x0A\n #_02DFC9: dw $0142 ; 0x0B\n #_02DFCB: dw $0003 ; 0x0C\n #_02DFCD: dw $00A2 ; 0x0D\n #_02DFCF: dw $01E2 ; 0x0E\n #_02DFD1: dw $0222 ; 0x0F\n #_02DFD3: dw $0100 ; 0x10\n #_02DFD5: dw $0200 ; 0x11\n #_02DFD7: dw $048E ; 0x12\n #_02DFD9: dw $04C6 ; 0x13\n #_02DFDB: dw $0D00 ; 0x14\n #_02DFDD: dw $0D00 ; 0x15\n #_02DFDF: dw $0C46 ; 0x16\n #_02DFE1: dw $0500 ; 0x17\n #_02DFE3: dw $0500 ; 0x18\n #_02DFE5: dw $0CA6 ; 0x19\n #_02DFE7: dw $0D00 ; 0x1A\n #_02DFE9: dw $0CA6 ; 0x1B\n #_02DFEB: dw $0CA6 ; 0x1C\n #_02DFED: dw $0C56 ; 0x1D\n #_02DFEF: dw $0C46 ; 0x1E\n #_02DFF1: dw $0D00 ; 0x1F\n #_02DFF3: dw $0D00 ; 0x20\n #_02DFF5: dw $0D00 ; 0x21\n #_02DFF7: dw $06D4 ; 0x22\n #_02DFF9: dw $0754 ; 0x23\n #_02DFFB: dw $0754 ; 0x24\n #_02DFFD: dw $0784 ; 0x25\n #_02DFFF: dw $06F2 ; 0x26\n #_02E001: dw $0ED6 ; 0x27\n #_02E003: dw $00A6 ; 0x28\n #_02E005: dw $0062 ; 0x29\n #_02E007: dw $01C2 ; 0x2A\n #_02E009: dw $0262 ; 0x2B\n #_02E00B: dw $0016 ; 0x2C\n #_02E00D: dw $087C ; 0x2D\n #_02E00F: dw $0C3E ; 0x2E\n #_02E011: dw $0500 ; 0x2F\n #_02E013: dw $0600 ; 0x30\n #_02E015: dw $06B4 ; 0x31\n #_02E017: dw $0814 ; 0x32\n #_02E019: dw $0854 ; 0x33\n #_02E01B: dw $0E96 ; 0x34\n #_02E01D: dw $0176 ; 0x35\n #_02E01F: dw $0262 ; 0x36\n #_02E021: dw $0674 ; 0x37\n #_02E023: dw $0884 ; 0x38\n #_02E025: dw $0A36 ; 0x39\n #_02E027: dw $0032 ; 0x3A\n #_02E029: dw $0CD6 ; 0x3B\n #_02E02B: dw $0C56 ; 0x3C\n #_02E02D: dw $0832 ; 0x3D\n #_02E02F: dw $077F ; 0x3E\n #_02E031: dw $024B ; 0x3F\n #_02E033: dw $0878 ; 0x40\n #_02E035: dw $08D7 ; 0x41\n #_02E037: dw $0C6D ; 0x42\n #_02E039: dw $04CF ; 0x43\n #_02E03B: dw $0DFE ; 0x44\n #_02E03D: dw $0001 ; 0x45\n #_02E03F: dw $0401 ; 0x46\n #_02E041: dw $00AA ; 0x47\n #_02E043: dw $0C57 ; 0x48\n #_02E045: dw $0478 ; 0x49\n #_02E047: dw $01CF ; 0x4A\n #_02E049: dw $0000 ; 0x4B\n #_02E04B: dw $0100 ; 0x4C\n #_02E04D: dw $021E ; 0x4D\n #_02E04F: dw $0000 ; 0x4E\n\n; ---------------------------------------------------------\n\n.y_coordinate\n #_02E051: dw $0AE8 ; 0x00\n #_02E053: dw $0414 ; 0x01\n #_02E055: dw $0604 ; 0x02\n #_02E057: dw $06CC ; 0x03\n #_02E059: dw $0604 ; 0x04\n #_02E05B: dw $0203 ; 0x05\n #_02E05D: dw $065C ; 0x06\n #_02E05F: dw $02B8 ; 0x07\n #_02E061: dw $02E8 ; 0x08\n #_02E063: dw $0618 ; 0x09\n #_02E065: dw $0CA8 ; 0x0A\n #_02E067: dw $0C98 ; 0x0B\n #_02E069: dw $0C98 ; 0x0C\n #_02E06B: dw $0C28 ; 0x0D\n #_02E06D: dw $0698 ; 0x0E\n #_02E06F: dw $0698 ; 0x0F\n #_02E071: dw $0B58 ; 0x10\n #_02E073: dw $0B58 ; 0x11\n #_02E075: dw $08C8 ; 0x12\n #_02E077: dw $0067 ; 0x13\n #_02E079: dw $0238 ; 0x14\n #_02E07B: dw $00E7 ; 0x15\n #_02E07D: dw $0157 ; 0x16\n #_02E07F: dw $02B7 ; 0x17\n #_02E081: dw $0258 ; 0x18\n #_02E083: dw $01B8 ; 0x19\n #_02E085: dw $0157 ; 0x1A\n #_02E087: dw $0218 ; 0x1B\n #_02E089: dw $01B7 ; 0x1C\n #_02E08B: dw $01F7 ; 0x1D\n #_02E08D: dw $0158 ; 0x1E\n #_02E08F: dw $0237 ; 0x1F\n #_02E091: dw $0358 ; 0x20\n #_02E093: dw $00E7 ; 0x21\n #_02E095: dw $0217 ; 0x22\n #_02E097: dw $0237 ; 0x23\n #_02E099: dw $0187 ; 0x24\n #_02E09B: dw $0634 ; 0x25\n #_02E09D: dw $0ED8 ; 0x26\n #_02E09F: dw $0628 ; 0x27\n #_02E0A1: dw $0CC7 ; 0x28\n #_02E0A3: dw $01F8 ; 0x29\n #_02E0A5: dw $0238 ; 0x2A\n #_02E0A7: dw $0248 ; 0x2B\n #_02E0A9: dw $00B8 ; 0x2C\n #_02E0AB: dw $0068 ; 0x2D\n #_02E0AD: dw $0DB8 ; 0x2E\n #_02E0AF: dw $0257 ; 0x2F\n #_02E0B1: dw $0218 ; 0x30\n #_02E0B3: dw $03A7 ; 0x31\n #_02E0B5: dw $0278 ; 0x32\n #_02E0B7: dw $06C8 ; 0x33\n #_02E0B9: dw $0128 ; 0x34\n #_02E0BB: dw $07A8 ; 0x35\n #_02E0BD: dw $0248 ; 0x36\n #_02E0BF: dw $07A8 ; 0x37\n #_02E0C1: dw $0028 ; 0x38\n #_02E0C3: dw $0448 ; 0x39\n #_02E0C5: dw $06B7 ; 0x3A\n #_02E0C7: dw $0107 ; 0x3B\n #_02E0C9: dw $0038 ; 0x3C\n #_02E0CB: dw $0AE8 ; 0x3D\n #_02E0CD: dw $0890 ; 0x3E\n #_02E0CF: dw $06C2 ; 0x3F\n #_02E0D1: dw $004D ; 0x40\n #_02E0D3: dw $0A59 ; 0x41\n #_02E0D5: dw $00AA ; 0x42\n #_02E0D7: dw $00DB ; 0x43\n #_02E0D9: dw $0732 ; 0x44\n #_02E0DB: dw $0874 ; 0x45\n #_02E0DD: dw $006E ; 0x46\n #_02E0DF: dw $0D72 ; 0x47\n #_02E0E1: dw $044D ; 0x48\n #_02E0E3: dw $0B72 ; 0x49\n #_02E0E5: dw $01BE ; 0x4A\n #_02E0E7: dw $01E8 ; 0x4B\n #_02E0E9: dw $0080 ; 0x4C\n #_02E0EB: dw $03E8 ; 0x4D\n #_02E0ED: dw $0100 ; 0x4E\n\n; ---------------------------------------------------------\n\n.x_coordinate\n #_02E0EF: dw $08B8 ; 0x00\n #_02E0F1: dw $0758 ; 0x01\n #_02E0F3: dw $0728 ; 0x02\n #_02E0F5: dw $07F8 ; 0x03\n #_02E0F7: dw $08C8 ; 0x04\n #_02E0F9: dw $0F50 ; 0x05\n #_02E0FB: dw $07F0 ; 0x06\n #_02E0FD: dw $05A8 ; 0x07\n #_02E0FF: dw $0678 ; 0x08\n #_02E101: dw $0F50 ; 0x09\n #_02E103: dw $0128 ; 0x0A\n #_02E105: dw $01C8 ; 0x0B\n #_02E107: dw $0088 ; 0x0C\n #_02E109: dw $0128 ; 0x0D\n #_02E10B: dw $0268 ; 0x0E\n #_02E10D: dw $02A8 ; 0x0F\n #_02E10F: dw $01B8 ; 0x10\n #_02E111: dw $0238 ; 0x11\n #_02E113: dw $0508 ; 0x12\n #_02E115: dw $0548 ; 0x13\n #_02E117: dw $0D78 ; 0x14\n #_02E119: dw $0DB8 ; 0x15\n #_02E11B: dw $0CB8 ; 0x16\n #_02E11D: dw $05A8 ; 0x17\n #_02E11F: dw $05B8 ; 0x18\n #_02E121: dw $0D18 ; 0x19\n #_02E123: dw $0D78 ; 0x1A\n #_02E125: dw $0D18 ; 0x1B\n #_02E127: dw $0D18 ; 0x1C\n #_02E129: dw $0CC8 ; 0x1D\n #_02E12B: dw $0CB8 ; 0x1E\n #_02E12D: dw $0DA8 ; 0x1F\n #_02E12F: dw $0DC8 ; 0x20\n #_02E131: dw $0DB8 ; 0x21\n #_02E133: dw $0748 ; 0x22\n #_02E135: dw $07C8 ; 0x23\n #_02E137: dw $07C8 ; 0x24\n #_02E139: dw $07F8 ; 0x25\n #_02E13B: dw $0778 ; 0x26\n #_02E13D: dw $0F50 ; 0x27\n #_02E13F: dw $0128 ; 0x28\n #_02E141: dw $00E8 ; 0x29\n #_02E143: dw $0248 ; 0x2A\n #_02E145: dw $02E8 ; 0x2B\n #_02E147: dw $0098 ; 0x2C\n #_02E149: dw $08F0 ; 0x2D\n #_02E14B: dw $0CB8 ; 0x2E\n #_02E14D: dw $05B8 ; 0x2F\n #_02E14F: dw $0648 ; 0x30\n #_02E151: dw $0728 ; 0x31\n #_02E153: dw $0888 ; 0x32\n #_02E155: dw $08C8 ; 0x33\n #_02E157: dw $0F08 ; 0x34\n #_02E159: dw $01F8 ; 0x35\n #_02E15B: dw $02E8 ; 0x36\n #_02E15D: dw $06E8 ; 0x37\n #_02E15F: dw $08F8 ; 0x38\n #_02E161: dw $0AA8 ; 0x39\n #_02E163: dw $00B8 ; 0x3A\n #_02E165: dw $0D48 ; 0x3B\n #_02E167: dw $0CC8 ; 0x3C\n #_02E169: dw $08B8 ; 0x3D\n #_02E16B: dw $07F3 ; 0x3E\n #_02E16D: dw $02CD ; 0x3F\n #_02E16F: dw $08E6 ; 0x40\n #_02E171: dw $094F ; 0x41\n #_02E173: dw $0CDF ; 0x42\n #_02E175: dw $0551 ; 0x43\n #_02E177: dw $0E7C ; 0x44\n #_02E179: dw $0083 ; 0x45\n #_02E17B: dw $047D ; 0x46\n #_02E17D: dw $0130 ; 0x47\n #_02E17F: dw $0CD1 ; 0x48\n #_02E181: dw $04FE ; 0x49\n #_02E183: dw $0255 ; 0x4A\n #_02E185: dw $0080 ; 0x4B\n #_02E187: dw $01F0 ; 0x4C\n #_02E189: dw $029E ; 0x4D\n #_02E18B: dw $0080 ; 0x4E\n\n; ---------------------------------------------------------\n\n.camera_trigger_y\n #_02E18D: dw $0B07 ; 0x00\n #_02E18F: dw $046D ; 0x01\n #_02E191: dw $066D ; 0x02\n #_02E193: dw $06FF ; 0x03\n #_02E195: dw $066D ; 0x04\n #_02E197: dw $026D ; 0x05\n #_02E199: dw $066D ; 0x06\n #_02E19B: dw $02D3 ; 0x07\n #_02E19D: dw $0303 ; 0x08\n #_02E19F: dw $066D ; 0x09\n #_02E1A1: dw $0CC3 ; 0x0A\n #_02E1A3: dw $0CB7 ; 0x0B\n #_02E1A5: dw $0CB3 ; 0x0C\n #_02E1A7: dw $0C6D ; 0x0D\n #_02E1A9: dw $06B9 ; 0x0E\n #_02E1AB: dw $06B7 ; 0x0F\n #_02E1AD: dw $0B73 ; 0x10\n #_02E1AF: dw $0B74 ; 0x11\n #_02E1B1: dw $08E7 ; 0x12\n #_02E1B3: dw $0082 ; 0x13\n #_02E1B5: dw $0253 ; 0x14\n #_02E1B7: dw $0102 ; 0x15\n #_02E1B9: dw $0172 ; 0x16\n #_02E1BB: dw $02D2 ; 0x17\n #_02E1BD: dw $0277 ; 0x18\n #_02E1BF: dw $01D3 ; 0x19\n #_02E1C1: dw $0172 ; 0x1A\n #_02E1C3: dw $0233 ; 0x1B\n #_02E1C5: dw $01D2 ; 0x1C\n #_02E1C7: dw $0212 ; 0x1D\n #_02E1C9: dw $0177 ; 0x1E\n #_02E1CB: dw $0252 ; 0x1F\n #_02E1CD: dw $0373 ; 0x20\n #_02E1CF: dw $0102 ; 0x21\n #_02E1D1: dw $0232 ; 0x22\n #_02E1D3: dw $0252 ; 0x23\n #_02E1D5: dw $01A2 ; 0x24\n #_02E1D7: dw $066D ; 0x25\n #_02E1D9: dw $0EF9 ; 0x26\n #_02E1DB: dw $066D ; 0x27\n #_02E1DD: dw $0CE6 ; 0x28\n #_02E1DF: dw $0213 ; 0x29\n #_02E1E1: dw $0253 ; 0x2A\n #_02E1E3: dw $0263 ; 0x2B\n #_02E1E5: dw $00D3 ; 0x2C\n #_02E1E7: dw $0083 ; 0x2D\n #_02E1E9: dw $0DD7 ; 0x2E\n #_02E1EB: dw $0272 ; 0x2F\n #_02E1ED: dw $0233 ; 0x30\n #_02E1EF: dw $038D ; 0x31\n #_02E1F1: dw $0293 ; 0x32\n #_02E1F3: dw $06E7 ; 0x33\n #_02E1F5: dw $0147 ; 0x34\n #_02E1F7: dw $07C7 ; 0x35\n #_02E1F9: dw $0263 ; 0x36\n #_02E1FB: dw $07C7 ; 0x37\n #_02E1FD: dw $006F ; 0x38\n #_02E1FF: dw $046F ; 0x39\n #_02E201: dw $06D2 ; 0x3A\n #_02E203: dw $0112 ; 0x3B\n #_02E205: dw $006F ; 0x3C\n #_02E207: dw $0B07 ; 0x3D\n #_02E209: dw $08AF ; 0x3E\n #_02E20B: dw $06E1 ; 0x3F\n #_02E20D: dw $006D ; 0x40\n #_02E20F: dw $0A78 ; 0x41\n #_02E211: dw $00C9 ; 0x42\n #_02E213: dw $00F6 ; 0x43\n #_02E215: dw $0751 ; 0x44\n #_02E217: dw $0893 ; 0x45\n #_02E219: dw $008D ; 0x46\n #_02E21B: dw $0D8D ; 0x47\n #_02E21D: dw $046D ; 0x48\n #_02E21F: dw $0B8D ; 0x49\n #_02E221: dw $01D9 ; 0x4A\n #_02E223: dw $019D ; 0x4B\n #_02E225: dw $008F ; 0x4C\n #_02E227: dw $039D ; 0x4D\n #_02E229: dw $009D ; 0x4E\n\n; ---------------------------------------------------------\n\n.camera_trigger_x\n #_02E22B: dw $08BF ; 0x00\n #_02E22D: dw $0763 ; 0x01\n #_02E22F: dw $0733 ; 0x02\n #_02E231: dw $0803 ; 0x03\n #_02E233: dw $08D3 ; 0x04\n #_02E235: dw $0F57 ; 0x05\n #_02E237: dw $07F7 ; 0x06\n #_02E239: dw $058D ; 0x07\n #_02E23B: dw $0683 ; 0x08\n #_02E23D: dw $0F5B ; 0x09\n #_02E23F: dw $0133 ; 0x0A\n #_02E241: dw $01CF ; 0x0B\n #_02E243: dw $0090 ; 0x0C\n #_02E245: dw $012F ; 0x0D\n #_02E247: dw $026F ; 0x0E\n #_02E249: dw $02AF ; 0x0F\n #_02E24B: dw $018D ; 0x10\n #_02E24D: dw $028D ; 0x11\n #_02E24F: dw $0513 ; 0x12\n #_02E251: dw $0553 ; 0x13\n #_02E253: dw $0D7D ; 0x14\n #_02E255: dw $0D7D ; 0x15\n #_02E257: dw $0CC3 ; 0x16\n #_02E259: dw $058D ; 0x17\n #_02E25B: dw $058D ; 0x18\n #_02E25D: dw $0D23 ; 0x19\n #_02E25F: dw $0D7D ; 0x1A\n #_02E261: dw $0D23 ; 0x1B\n #_02E263: dw $0D23 ; 0x1C\n #_02E265: dw $0CD3 ; 0x1D\n #_02E267: dw $0CC3 ; 0x1E\n #_02E269: dw $0D7D ; 0x1F\n #_02E26B: dw $0D7D ; 0x20\n #_02E26D: dw $0D7D ; 0x21\n #_02E26F: dw $0753 ; 0x22\n #_02E271: dw $07D3 ; 0x23\n #_02E273: dw $07D3 ; 0x24\n #_02E275: dw $0803 ; 0x25\n #_02E277: dw $077F ; 0x26\n #_02E279: dw $0F5B ; 0x27\n #_02E27B: dw $0133 ; 0x28\n #_02E27D: dw $00EF ; 0x29\n #_02E27F: dw $024F ; 0x2A\n #_02E281: dw $02EF ; 0x2B\n #_02E283: dw $00A3 ; 0x2C\n #_02E285: dw $08FB ; 0x2D\n #_02E287: dw $0CC3 ; 0x2E\n #_02E289: dw $058D ; 0x2F\n #_02E28B: dw $067F ; 0x30\n #_02E28D: dw $0733 ; 0x31\n #_02E28F: dw $0893 ; 0x32\n #_02E291: dw $08D3 ; 0x33\n #_02E293: dw $0F13 ; 0x34\n #_02E295: dw $0203 ; 0x35\n #_02E297: dw $02EF ; 0x36\n #_02E299: dw $06F3 ; 0x37\n #_02E29B: dw $0903 ; 0x38\n #_02E29D: dw $0AB3 ; 0x39\n #_02E29F: dw $00BF ; 0x3A\n #_02E2A1: dw $0D53 ; 0x3B\n #_02E2A3: dw $0CD3 ; 0x3C\n #_02E2A5: dw $08BF ; 0x3D\n #_02E2A7: dw $07FE ; 0x3E\n #_02E2A9: dw $02D8 ; 0x3F\n #_02E2AB: dw $08ED ; 0x40\n #_02E2AD: dw $0956 ; 0x41\n #_02E2AF: dw $0CEA ; 0x42\n #_02E2B1: dw $055C ; 0x43\n #_02E2B3: dw $0E83 ; 0x44\n #_02E2B5: dw $008E ; 0x45\n #_02E2B7: dw $0484 ; 0x46\n #_02E2B9: dw $0137 ; 0x47\n #_02E2BB: dw $0CDC ; 0x48\n #_02E2BD: dw $0505 ; 0x49\n #_02E2BF: dw $025C ; 0x4A\n #_02E2C1: dw $0083 ; 0x4B\n #_02E2C3: dw $018D ; 0x4C\n #_02E2C5: dw $02A1 ; 0x4D\n #_02E2C7: dw $0083 ; 0x4E\n\n; ---------------------------------------------------------\n\n.scroll_mod_y\n #_02E2C9: db $06 ; 0x00\n #_02E2CA: db $00 ; 0x01\n #_02E2CB: db $00 ; 0x02\n #_02E2CC: db $0E ; 0x03\n #_02E2CD: db $00 ; 0x04\n #_02E2CE: db $00 ; 0x05\n #_02E2CF: db $00 ; 0x06\n #_02E2D0: db $0A ; 0x07\n #_02E2D1: db $0A ; 0x08\n #_02E2D2: db $00 ; 0x09\n #_02E2D3: db $0A ; 0x0A\n #_02E2D4: db $06 ; 0x0B\n #_02E2D5: db $0A ; 0x0C\n #_02E2D6: db $00 ; 0x0D\n #_02E2D7: db $04 ; 0x0E\n #_02E2D8: db $06 ; 0x0F\n #_02E2D9: db $0A ; 0x10\n #_02E2DA: db $09 ; 0x11\n #_02E2DB: db $06 ; 0x12\n #_02E2DC: db $0B ; 0x13\n #_02E2DD: db $0A ; 0x14\n #_02E2DE: db $0B ; 0x15\n #_02E2DF: db $0B ; 0x16\n #_02E2E0: db $0B ; 0x17\n #_02E2E1: db $06 ; 0x18\n #_02E2E2: db $0A ; 0x19\n #_02E2E3: db $0B ; 0x1A\n #_02E2E4: db $0A ; 0x1B\n #_02E2E5: db $0B ; 0x1C\n #_02E2E6: db $0B ; 0x1D\n #_02E2E7: db $06 ; 0x1E\n #_02E2E8: db $0B ; 0x1F\n #_02E2E9: db $0A ; 0x20\n #_02E2EA: db $0B ; 0x21\n #_02E2EB: db $0B ; 0x22\n #_02E2EC: db $0B ; 0x23\n #_02E2ED: db $0B ; 0x24\n #_02E2EE: db $00 ; 0x25\n #_02E2EF: db $04 ; 0x26\n #_02E2F0: db $00 ; 0x27\n #_02E2F1: db $07 ; 0x28\n #_02E2F2: db $0A ; 0x29\n #_02E2F3: db $0A ; 0x2A\n #_02E2F4: db $0A ; 0x2B\n #_02E2F5: db $0A ; 0x2C\n #_02E2F6: db $0A ; 0x2D\n #_02E2F7: db $06 ; 0x2E\n #_02E2F8: db $0B ; 0x2F\n #_02E2F9: db $0A ; 0x30\n #_02E2FA: db $00 ; 0x31\n #_02E2FB: db $0A ; 0x32\n #_02E2FC: db $06 ; 0x33\n #_02E2FD: db $06 ; 0x34\n #_02E2FE: db $06 ; 0x35\n #_02E2FF: db $0A ; 0x36\n #_02E300: db $06 ; 0x37\n #_02E301: db $00 ; 0x38\n #_02E302: db $00 ; 0x39\n #_02E303: db $0B ; 0x3A\n #_02E304: db $0B ; 0x3B\n #_02E305: db $00 ; 0x3C\n #_02E306: db $06 ; 0x3D\n #_02E307: db $FE ; 0x3E\n #_02E308: db $0C ; 0x3F\n #_02E309: db $00 ; 0x40\n #_02E30A: db $05 ; 0x41\n #_02E30B: db $04 ; 0x42\n #_02E30C: db $01 ; 0x43\n #_02E30D: db $07 ; 0x44\n #_02E30E: db $FA ; 0x45\n #_02E30F: db $00 ; 0x46\n #_02E310: db $00 ; 0x47\n #_02E311: db $00 ; 0x48\n #_02E312: db $00 ; 0x49\n #_02E313: db $F4 ; 0x4A\n #_02E314: db $00 ; 0x4B\n #_02E315: db $00 ; 0x4C\n #_02E316: db $00 ; 0x4D\n #_02E317: db $00 ; 0x4E\n\n; ---------------------------------------------------------\n\n.scroll_mod_x\n #_02E318: db $FE ; 0x00\n #_02E319: db $02 ; 0x01\n #_02E31A: db $02 ; 0x02\n #_02E31B: db $FA ; 0x03\n #_02E31C: db $FA ; 0x04\n #_02E31D: db $FE ; 0x05\n #_02E31E: db $F8 ; 0x06\n #_02E31F: db $00 ; 0x07\n #_02E320: db $FC ; 0x08\n #_02E321: db $FA ; 0x09\n #_02E322: db $FA ; 0x0A\n #_02E323: db $FE ; 0x0B\n #_02E324: db $FD ; 0x0C\n #_02E325: db $0E ; 0x0D\n #_02E326: db $FE ; 0x0E\n #_02E327: db $FE ; 0x0F\n #_02E328: db $00 ; 0x10\n #_02E329: db $00 ; 0x11\n #_02E32A: db $02 ; 0x12\n #_02E32B: db $FA ; 0x13\n #_02E32C: db $00 ; 0x14\n #_02E32D: db $00 ; 0x15\n #_02E32E: db $0A ; 0x16\n #_02E32F: db $00 ; 0x17\n #_02E330: db $00 ; 0x18\n #_02E331: db $FA ; 0x19\n #_02E332: db $00 ; 0x1A\n #_02E333: db $FA ; 0x1B\n #_02E334: db $FA ; 0x1C\n #_02E335: db $FA ; 0x1D\n #_02E336: db $FA ; 0x1E\n #_02E337: db $00 ; 0x1F\n #_02E338: db $00 ; 0x20\n #_02E339: db $00 ; 0x21\n #_02E33A: db $FC ; 0x22\n #_02E33B: db $FC ; 0x23\n #_02E33C: db $FC ; 0x24\n #_02E33D: db $0A ; 0x25\n #_02E33E: db $FE ; 0x26\n #_02E33F: db $FA ; 0x27\n #_02E340: db $FA ; 0x28\n #_02E341: db $0E ; 0x29\n #_02E342: db $FE ; 0x2A\n #_02E343: db $FE ; 0x2B\n #_02E344: db $FA ; 0x2C\n #_02E345: db $F4 ; 0x2D\n #_02E346: db $F2 ; 0x2E\n #_02E347: db $00 ; 0x2F\n #_02E348: db $00 ; 0x30\n #_02E349: db $0C ; 0x31\n #_02E34A: db $0C ; 0x32\n #_02E34B: db $FA ; 0x33\n #_02E34C: db $FA ; 0x34\n #_02E34D: db $FA ; 0x35\n #_02E34E: db $0E ; 0x36\n #_02E34F: db $FA ; 0x37\n #_02E350: db $FC ; 0x38\n #_02E351: db $0A ; 0x39\n #_02E352: db $FE ; 0x3A\n #_02E353: db $FA ; 0x3B\n #_02E354: db $0A ; 0x3C\n #_02E355: db $FE ; 0x3D\n #_02E356: db $FF ; 0x3E\n #_02E357: db $F5 ; 0x3F\n #_02E358: db $08 ; 0x40\n #_02E359: db $F9 ; 0x41\n #_02E35A: db $03 ; 0x42\n #_02E35B: db $01 ; 0x43\n #_02E35C: db $02 ; 0x44\n #_02E35D: db $FF ; 0x45\n #_02E35E: db $FF ; 0x46\n #_02E35F: db $06 ; 0x47\n #_02E360: db $F9 ; 0x48\n #_02E361: db $08 ; 0x49\n #_02E362: db $01 ; 0x4A\n #_02E363: db $00 ; 0x4B\n #_02E364: db $00 ; 0x4C\n #_02E365: db $F2 ; 0x4D\n #_02E366: db $00 ; 0x4E\n\n; ---------------------------------------------------------\n\n.door_graphic\n #_02E367: dw $0816 ; 0x00\n #_02E369: dw $0000 ; 0x01\n #_02E36B: dw $0000 ; 0x02\n #_02E36D: dw $0000 ; 0x03\n #_02E36F: dw $0000 ; 0x04\n #_02E371: dw $0000 ; 0x05\n #_02E373: dw $0000 ; 0x06\n #_02E375: dw $0000 ; 0x07\n #_02E377: dw $0000 ; 0x08\n #_02E379: dw $0000 ; 0x09\n #_02E37B: dw $0000 ; 0x0A\n #_02E37D: dw $0000 ; 0x0B\n #_02E37F: dw $0000 ; 0x0C\n #_02E381: dw $0000 ; 0x0D\n #_02E383: dw $05CC ; 0x0E\n #_02E385: dw $05D4 ; 0x0F\n #_02E387: dw $0BB6 ; 0x10\n #_02E389: dw $0B86 ; 0x11\n #_02E38B: dw $0000 ; 0x12\n #_02E38D: dw $0000 ; 0x13\n #_02E38F: dw $0000 ; 0x14\n #_02E391: dw $0000 ; 0x15\n #_02E393: dw $0000 ; 0x16\n #_02E395: dw $0000 ; 0x17\n #_02E397: dw $0000 ; 0x18\n #_02E399: dw $0000 ; 0x19\n #_02E39B: dw $0000 ; 0x1A\n #_02E39D: dw $0000 ; 0x1B\n #_02E39F: dw $0000 ; 0x1C\n #_02E3A1: dw $0000 ; 0x1D\n #_02E3A3: dw $0000 ; 0x1E\n #_02E3A5: dw $0000 ; 0x1F\n #_02E3A7: dw $0000 ; 0x20\n #_02E3A9: dw $0000 ; 0x21\n #_02E3AB: dw $0000 ; 0x22\n #_02E3AD: dw $0000 ; 0x23\n #_02E3AF: dw $0000 ; 0x24\n #_02E3B1: dw $0000 ; 0x25\n #_02E3B3: dw $0000 ; 0x26\n #_02E3B5: dw $0000 ; 0x27\n #_02E3B7: dw $0000 ; 0x28\n #_02E3B9: dw $0000 ; 0x29\n #_02E3BB: dw $0000 ; 0x2A\n #_02E3BD: dw $0000 ; 0x2B\n #_02E3BF: dw $0000 ; 0x2C\n #_02E3C1: dw $0000 ; 0x2D\n #_02E3C3: dw $0000 ; 0x2E\n #_02E3C5: dw $0000 ; 0x2F\n #_02E3C7: dw $0000 ; 0x30\n #_02E3C9: dw $0000 ; 0x31\n #_02E3CB: dw $0000 ; 0x32\n #_02E3CD: dw $0000 ; 0x33\n #_02E3CF: dw $0000 ; 0x34\n #_02E3D1: dw $0000 ; 0x35\n #_02E3D3: dw $0000 ; 0x36\n #_02E3D5: dw $0000 ; 0x37\n #_02E3D7: dw $0000 ; 0x38\n #_02E3D9: dw $0000 ; 0x39\n #_02E3DB: dw $0000 ; 0x3A\n #_02E3DD: dw $0000 ; 0x3B\n #_02E3DF: dw $0000 ; 0x3C\n #_02E3E1: dw $0816 ; 0x3D\n #_02E3E3: dw $0000 ; 0x3E\n #_02E3E5: dw $0000 ; 0x3F\n #_02E3E7: dw $0000 ; 0x40\n #_02E3E9: dw $0000 ; 0x41\n #_02E3EB: dw $0000 ; 0x42\n #_02E3ED: dw $0000 ; 0x43\n #_02E3EF: dw $0000 ; 0x44\n #_02E3F1: dw $0000 ; 0x45\n #_02E3F3: dw $0000 ; 0x46\n #_02E3F5: dw $0000 ; 0x47\n #_02E3F7: dw $0000 ; 0x48\n #_02E3F9: dw $0000 ; 0x49\n #_02E3FB: dw $0000 ; 0x4A\n #_02E3FD: dw $0000 ; 0x4B\n #_02E3FF: dw $0000 ; 0x4C\n #_02E401: dw $0000 ; 0x4D\n #_02E403: dw $0000 ; 0x4E\n\n; ---------------------------------------------------------\n\n.door_graphic_location\n #_02E405: dw $0000 ; 0x00\n #_02E407: dw $01AA ; 0x01\n #_02E409: dw $8124 ; 0x02\n #_02E40B: dw $87BE ; 0x03\n #_02E40D: dw $8158 ; 0x04\n #_02E40F: dw $0000 ; 0x05\n #_02E411: dw $0000 ; 0x06\n #_02E413: dw $0000 ; 0x07\n #_02E415: dw $0000 ; 0x08\n #_02E417: dw $0000 ; 0x09\n #_02E419: dw $0000 ; 0x0A\n #_02E41B: dw $0000 ; 0x0B\n #_02E41D: dw $0000 ; 0x0C\n #_02E41F: dw $0000 ; 0x0D\n #_02E421: dw $0000 ; 0x0E\n #_02E423: dw $0000 ; 0x0F\n #_02E425: dw $0000 ; 0x10\n #_02E427: dw $0000 ; 0x11\n #_02E429: dw $0000 ; 0x12\n #_02E42B: dw $0000 ; 0x13\n #_02E42D: dw $0000 ; 0x14\n #_02E42F: dw $0000 ; 0x15\n #_02E431: dw $0000 ; 0x16\n #_02E433: dw $0000 ; 0x17\n #_02E435: dw $0000 ; 0x18\n #_02E437: dw $0000 ; 0x19\n #_02E439: dw $0000 ; 0x1A\n #_02E43B: dw $0000 ; 0x1B\n #_02E43D: dw $0000 ; 0x1C\n #_02E43F: dw $0000 ; 0x1D\n #_02E441: dw $0000 ; 0x1E\n #_02E443: dw $0000 ; 0x1F\n #_02E445: dw $0000 ; 0x20\n #_02E447: dw $0000 ; 0x21\n #_02E449: dw $0000 ; 0x22\n #_02E44B: dw $0000 ; 0x23\n #_02E44D: dw $0000 ; 0x24\n #_02E44F: dw $82BE ; 0x25\n #_02E451: dw $0000 ; 0x26\n #_02E453: dw $0000 ; 0x27\n #_02E455: dw $0000 ; 0x28\n #_02E457: dw $0000 ; 0x29\n #_02E459: dw $0000 ; 0x2A\n #_02E45B: dw $0000 ; 0x2B\n #_02E45D: dw $0000 ; 0x2C\n #_02E45F: dw $0000 ; 0x2D\n #_02E461: dw $0000 ; 0x2E\n #_02E463: dw $0000 ; 0x2F\n #_02E465: dw $0000 ; 0x30\n #_02E467: dw $0000 ; 0x31\n #_02E469: dw $0000 ; 0x32\n #_02E46B: dw $0000 ; 0x33\n #_02E46D: dw $0000 ; 0x34\n #_02E46F: dw $0000 ; 0x35\n #_02E471: dw $0000 ; 0x36\n #_02E473: dw $0000 ; 0x37\n #_02E475: dw $0000 ; 0x38\n #_02E477: dw $0000 ; 0x39\n #_02E479: dw $0000 ; 0x3A\n #_02E47B: dw $0000 ; 0x3B\n #_02E47D: dw $0000 ; 0x3C\n #_02E47F: dw $0000 ; 0x3D\n #_02E481: dw $0000 ; 0x3E\n #_02E483: dw $0000 ; 0x3F\n #_02E485: dw $0000 ; 0x40\n #_02E487: dw $0000 ; 0x41\n #_02E489: dw $0000 ; 0x42\n #_02E48B: dw $0000 ; 0x43\n #_02E48D: dw $0000 ; 0x44\n #_02E48F: dw $0000 ; 0x45\n #_02E491: dw $0000 ; 0x46\n #_02E493: dw $0000 ; 0x47\n #_02E495: dw $0000 ; 0x48\n #_02E497: dw $0000 ; 0x49\n #_02E499: dw $0000 ; 0x4A\n #_02E49B: dw $0000 ; 0x4B\n #_02E49D: dw $0000 ; 0x4C\n #_02E49F: dw $0000 ; 0x4D\n #_02E4A1: dw $0000 ; 0x4E\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "LoadOverworldFromUnderworld", + "code": "LoadOverworldFromUnderworld:\n #_02E4A3: PHB\n #_02E4A4: PHK\n #_02E4A5: PLB\n\n #_02E4A6: STZ.b $1B\n #_02E4A8: STZ.w $0458\n\n #_02E4AB: REP #$20\n\n #_02E4AD: LDA.w #$0000\n #_02E4B0: STA.l $7EC017\n\n #_02E4B4: LDA.w #$00FF\n #_02E4B7: STA.w $040C\n\n #_02E4BA: STZ.w $04AC\n\n #_02E4BD: LDA.b $A0\n\n #_02E4BF: CMP.w #$0104 ; ROOM 0104\n #_02E4C2: BEQ .custom_exit\n\n #_02E4C4: CMP.w #$0180 ; SPOW\n #_02E4C7: BCS .custom_exit\n\n #_02E4C9: CMP.w #$0100\n #_02E4CC: BCC .custom_exit\n\n #_02E4CE: JSR LoadCachedEntranceProperties\n #_02E4D1: JMP.w Overworld_LoadNewScreenProperties_pre\n\n.custom_exit\n #_02E4D4: LDX.b #$9E\n\n.next_room_check\n #_02E4D6: DEX\n #_02E4D7: DEX\n\n #_02E4D8: CMP.w UnderworldExitData_room_id,X\n #_02E4DB: BNE .next_room_check\n\n; ---------------------------------------------------------\n\n #_02E4DD: LDA.w UnderworldExitData_vertical_scroll,X\n #_02E4E0: STA.b $E6\n #_02E4E2: STA.b $E8\n #_02E4E4: STA.w $0122\n #_02E4E7: STA.w $0124\n\n #_02E4EA: LDA.w UnderworldExitData_horizontal_scroll,X\n #_02E4ED: STA.b $E0\n #_02E4EF: STA.b $E2\n #_02E4F1: STA.w $011E\n #_02E4F4: STA.w $0120\n\n #_02E4F7: LDA.w UnderworldExitData_y_coordinate,X\n #_02E4FA: STA.b $20\n\n #_02E4FC: LDA.w UnderworldExitData_x_coordinate,X\n #_02E4FF: STA.b $22\n\n; ---------------------------------------------------------\n\n #_02E501: LDA.w UnderworldExitData_exit_vram_addr,X\n #_02E504: STA.b $84\n\n #_02E506: SEC\n #_02E507: SBC.w #$0400\n #_02E50A: AND.w #$0F80\n #_02E50D: ASL A\n #_02E50E: XBA\n #_02E50F: STA.b $88\n\n #_02E511: LDA.b $84\n #_02E513: SEC\n #_02E514: SBC.w #$0010\n #_02E517: AND.w #$003E\n #_02E51A: LSR A\n #_02E51B: STA.b $86\n\n #_02E51D: LDA.w UnderworldExitData_camera_trigger_y,X\n #_02E520: STA.w $0618\n\n #_02E523: DEC A\n #_02E524: DEC A\n #_02E525: STA.w $061A\n\n #_02E528: LDA.w UnderworldExitData_camera_trigger_x,X\n #_02E52B: STA.w $061C\n\n #_02E52E: DEC A\n #_02E52F: DEC A\n #_02E530: STA.w $061E\n\n; ---------------------------------------------------------\n\n #_02E533: LDA.w #$0002\n #_02E536: STA.b $2F\n\n #_02E538: LDA.w UnderworldExitData_door_graphic,X\n #_02E53B: STA.w $0696\n\n #_02E53E: LDA.w UnderworldExitData_door_graphic_location,X\n #_02E541: STA.w $0698\n\n #_02E544: TXA\n #_02E545: LSR A\n #_02E546: TAX\n\n #_02E547: SEP #$20\n\n #_02E549: LDA.w UnderworldExitData_overworld_id,X\n #_02E54C: STA.b $8A\n #_02E54E: STA.w $040A\n\n #_02E551: STZ.b $8B\n #_02E553: STZ.w $040B\n\n #_02E556: LDA.w UnderworldExitData_scroll_mod_y,X\n #_02E559: STA.w $0624\n #_02E55C: STZ.w $0625\n\n #_02E55F: ASL A\n #_02E560: BCC .positive_camera_y\n\n #_02E562: DEC.w $0625\n\n.positive_camera_y\n #_02E565: LDA.w UnderworldExitData_scroll_mod_x,X\n #_02E568: STA.w $0628\n #_02E56B: STZ.w $0629\n\n #_02E56E: ASL A\n #_02E56F: BCC .positive_camera_x\n\n #_02E571: DEC.w $0629\n\n.positive_camera_x\n #_02E574: REP #$20\n\n #_02E576: LDA.w #$0000\n #_02E579: SEC\n #_02E57A: SBC.w $0624\n #_02E57D: STA.w $0626\n\n #_02E580: LDA.w #$0000\n #_02E583: SEC\n #_02E584: SBC.w $0628\n #_02E587: STA.w $062A\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadNewScreenProperties_pre", + "code": "Overworld_LoadNewScreenProperties_pre:\n #_02E58A: PLB\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadNewScreenProperties", + "code": "Overworld_LoadNewScreenProperties:\n #_02E58B: LDA.w #$FFF8\n #_02E58E: STA.b $EC\n\n #_02E590: SEP #$30\n\n #_02E592: PHB\n #_02E593: PHK\n #_02E594: PLB\n\n #_02E595: JSR Overworld_LoadGFXAndScreenSize\n\n #_02E598: LDA.b #$E4\n #_02E59A: STA.w $0716\n\n #_02E59D: STZ.w $0713\n\n #_02E5A0: LDA.b $8A\n #_02E5A2: AND.b #$3F\n #_02E5A4: ASL A\n #_02E5A5: TAY\n\n #_02E5A6: REP #$20\n\n #_02E5A8: LDX.b #$00\n\n #_02E5AA: LDA.w $0712\n #_02E5AD: BEQ .smaller_screen\n\n #_02E5AF: INX\n #_02E5B0: INX\n\n.smaller_screen\n #_02E5B1: JSR Overworld_SetCameraBoundaries\n\n #_02E5B4: SEP #$20\n\n #_02E5B6: PLB\n\n #_02E5B7: STZ.b $A9\n\n #_02E5B9: LDA.b #$02\n #_02E5BB: STA.b $AA\n #_02E5BD: STA.b $A6\n #_02E5BF: STA.b $A7\n\n #_02E5C1: LDA.b #$80\n #_02E5C3: STA.b $45\n #_02E5C5: STA.b $44\n\n #_02E5C7: LDA.b #$0F\n #_02E5C9: STA.b $42\n #_02E5CB: STA.b $43\n\n #_02E5CD: LDA.b #$FF\n #_02E5CF: STA.b $24\n #_02E5D1: STA.b $29\n\n #_02E5D3: RTS", + "file": "bank_02.asm" + }, + { + "name": "LoadCachedEntranceProperties", + "code": "LoadCachedEntranceProperties:\n #_02E5D4: REP #$20\n\n #_02E5D6: LDA.l $7EC140\n #_02E5DA: STA.w $040A\n\n #_02E5DD: LDA.l $7EC142\n #_02E5E1: STA.b $1C\n\n #_02E5E3: LDA.l $7EC144\n #_02E5E7: STA.b $E8\n #_02E5E9: STA.w $0122\n #_02E5EC: STA.b $E6\n #_02E5EE: STA.w $0124\n\n #_02E5F1: LDA.l $7EC146\n #_02E5F5: STA.b $E2\n #_02E5F7: STA.w $011E\n #_02E5FA: STA.b $E0\n #_02E5FC: STA.w $0120\n\n #_02E5FF: LDA.l $7EC14A\n #_02E603: STA.b $22\n\n #_02E605: LDA.l $7EC148\n #_02E609: STA.b $20\n\n #_02E60B: LDA.b $A0\n #_02E60D: CMP.w #$0124 ; ROOM 0124\n #_02E610: BCS .normal_exit\n\n #_02E612: LDA.b $20\n #_02E614: SEC\n #_02E615: SBC.w #$0010\n #_02E618: STA.b $20\n\n.normal_exit\n #_02E61A: LDA.w #$0002\n #_02E61D: STA.b $2F\n\n #_02E61F: LDA.w $0696\n #_02E622: CMP.w #$FFFF\n #_02E625: BNE .face_down\n\n #_02E627: LDA.b $20\n #_02E629: CLC\n #_02E62A: ADC.w #$0020\n #_02E62D: STA.b $20\n\n #_02E62F: STZ.b $2F\n\n; ---------------------------------------------------------\n\n.face_down\n #_02E631: LDA.l $7EC14C\n #_02E635: STA.b $8A\n\n #_02E637: LDA.l $7EC14E\n #_02E63B: STA.b $84\n\n #_02E63D: SEC\n #_02E63E: SBC.w #$0400\n #_02E641: AND.w #$0F80\n #_02E644: ASL A\n #_02E645: XBA\n #_02E646: STA.b $88\n\n #_02E648: LDA.b $84\n #_02E64A: SEC\n #_02E64B: SBC.w #$0010\n #_02E64E: AND.w #$003E\n #_02E651: LSR A\n #_02E652: STA.b $86\n\n #_02E654: LDA.l $7EC150\n #_02E658: STA.w $0618\n\n #_02E65B: DEC A\n #_02E65C: DEC A\n #_02E65D: STA.w $061A\n\n #_02E660: LDA.l $7EC152\n #_02E664: STA.w $061C\n\n #_02E667: DEC A\n #_02E668: DEC A\n #_02E669: STA.w $061E\n\n #_02E66C: LDA.l $7EC154\n #_02E670: STA.w $0600\n\n #_02E673: LDA.l $7EC156\n #_02E677: STA.w $0602\n\n #_02E67A: LDA.l $7EC158\n #_02E67E: STA.w $0604\n\n #_02E681: LDA.l $7EC15A\n #_02E685: STA.w $0606\n\n #_02E688: LDA.l $7EC15C\n #_02E68C: STA.w $0610\n\n #_02E68F: LDA.l $7EC15E\n #_02E693: STA.w $0612\n\n #_02E696: LDA.l $7EC160\n #_02E69A: STA.w $0614\n\n #_02E69D: LDA.l $7EC162\n #_02E6A1: STA.w $0616\n\n #_02E6A4: LDA.l $7EC16A\n #_02E6A8: STA.w $0624\n\n #_02E6AB: LDA.l $7EC16C\n #_02E6AF: STA.w $0626\n\n #_02E6B2: LDA.l $7EC16E\n #_02E6B6: STA.w $0628\n\n #_02E6B9: LDA.l $7EC170\n #_02E6BD: STA.w $062A\n\n #_02E6C0: SEP #$20\n\n #_02E6C2: LDA.l $7EC164\n #_02E6C6: STA.w $0AA0\n\n #_02E6C9: LDA.l $7EC165\n #_02E6CD: STA.w $0AA1\n\n #_02E6D0: LDA.l $7EC166\n #_02E6D4: STA.w $0AA2\n\n #_02E6D7: LDA.l $7EC167\n #_02E6DB: STA.w $0AA3\n\n #_02E6DE: REP #$20\n\n #_02E6E0: RTS", + "file": "bank_02.asm" + }, + { + "name": "LoadSpecialOverworld", + "code": "LoadSpecialOverworld:\n #_02E851: REP #$20\n\n #_02E853: STZ.w $04AC\n\n #_02E856: LDA.w $040A\n #_02E859: STA.l $7EC100\n\n #_02E85D: LDA.b $1C\n #_02E85F: STA.l $7EC102\n\n #_02E863: LDA.b $E8\n #_02E865: STA.l $7EC104\n\n #_02E869: LDA.b $E2\n #_02E86B: STA.l $7EC106\n\n #_02E86F: LDA.b $20\n #_02E871: STA.l $7EC108\n\n #_02E875: LDA.b $22\n #_02E877: STA.l $7EC10A\n\n #_02E87B: LDA.w $0618\n #_02E87E: STA.l $7EC110\n\n #_02E882: LDA.w $061C\n #_02E885: STA.l $7EC112\n\n #_02E889: LDA.b $8A\n #_02E88B: STA.l $7EC10C\n\n #_02E88F: LDA.b $84\n #_02E891: STA.l $7EC10E\n\n #_02E895: LDA.w $0600\n #_02E898: STA.l $7EC114\n\n #_02E89C: LDA.w $0602\n #_02E89F: STA.l $7EC116\n\n #_02E8A3: LDA.w $0604\n #_02E8A6: STA.l $7EC118\n\n #_02E8AA: LDA.w $0606\n #_02E8AD: STA.l $7EC11A\n\n #_02E8B1: LDA.w $0610\n #_02E8B4: STA.l $7EC11C\n\n #_02E8B8: LDA.w $0612\n #_02E8BB: STA.l $7EC11E\n\n #_02E8BF: LDA.w $0614\n #_02E8C2: STA.l $7EC120\n\n #_02E8C6: LDA.w $0616\n #_02E8C9: STA.l $7EC122\n\n #_02E8CD: LDA.w $0624\n #_02E8D0: STA.l $7EC12A\n\n #_02E8D4: LDA.w $0626\n #_02E8D7: STA.l $7EC12C\n\n #_02E8DB: LDA.w $0628\n #_02E8DE: STA.l $7EC12E\n\n #_02E8E2: LDA.w $062A\n #_02E8E5: STA.l $7EC130\n\n #_02E8E9: SEP #$20\n\n #_02E8EB: LDA.w $0AA0\n #_02E8EE: STA.l $7EC124\n\n #_02E8F2: LDA.w $0AA1\n #_02E8F5: STA.l $7EC125\n\n #_02E8F9: LDA.w $0AA2\n #_02E8FC: STA.l $7EC126\n\n #_02E900: LDA.w $0AA3\n #_02E903: STA.l $7EC127\n\n; ---------------------------------------------------------\n\n #_02E907: SEP #$20\n\n #_02E909: JSR LoadOverworldFromUnderworld\n\n #_02E90C: REP #$20\n\n #_02E90E: LDA.b $A0\n #_02E910: CMP.w #$1010\n #_02E913: BNE .not_zora\n\n #_02E915: LDA.w #$0182 ; OW 82\n #_02E918: STA.b $A0\n\n.not_zora\n #_02E91A: SEP #$20\n\n #_02E91C: PHB\n #_02E91D: PHK\n #_02E91E: PLB\n\n #_02E91F: LDA.b $A0\n #_02E921: PHA\n\n #_02E922: SEC\n #_02E923: SBC.b #$80\n #_02E925: STA.b $A0\n\n #_02E927: TAX\n\n #_02E928: LDA.l .direction,X\n #_02E92C: STA.b $2F\n\n #_02E92E: STZ.w $0412\n\n #_02E931: LDA.l .gfx_AA3,X\n #_02E935: STA.w $0AA3\n\n #_02E938: LDA.l .gfx_AA2,X\n #_02E93C: STA.w $0AA2\n\n #_02E93F: PHX\n\n #_02E940: LDA.l .palette_prop_b,X\n #_02E944: STA.b $00\n\n #_02E946: LDA.l .palette_prop_a,X\n #_02E94A: JSL OverworldPalettesLoader\n\n #_02E94E: PLX\n\n #_02E94F: REP #$30\n\n #_02E951: LDA.w #$03F0\n #_02E954: STA.b $00\n\n #_02E956: LDA.b $A0\n #_02E958: AND.w #$003F\n #_02E95B: ASL A\n #_02E95C: TAX\n\n #_02E95D: LDA.l .camera600,X\n #_02E961: STA.w $0708\n\n #_02E964: LDA.l .camera70C,X\n #_02E968: LSR A\n #_02E969: LSR A\n #_02E96A: LSR A\n #_02E96B: STA.w $070C\n\n #_02E96E: LDA.b $00\n #_02E970: STA.w $070A\n\n #_02E973: LDA.b $00\n #_02E975: LSR A\n #_02E976: LSR A\n #_02E977: LSR A\n #_02E978: STA.w $070E\n\n; ---------------------------------------------------------\n\n #_02E97B: LDA.b $A0\n #_02E97D: ASL A\n #_02E97E: TAY\n\n #_02E97F: SEP #$10\n\n #_02E981: LDA.w .camera600,Y\n #_02E984: STA.w $0600\n\n #_02E987: LDA.w .camera602,Y\n #_02E98A: STA.w $0602\n\n #_02E98D: LDA.w .camera604,Y\n #_02E990: STA.w $0604\n\n #_02E993: LDA.w .camera606,Y\n #_02E996: STA.w $0606\n\n #_02E999: LDA.w .camera610,Y\n #_02E99C: STA.w $0610\n\n #_02E99F: LDA.w .camera612,Y\n #_02E9A2: STA.w $0612\n\n #_02E9A5: LDA.w .camera614,Y\n #_02E9A8: STA.w $0614\n\n #_02E9AB: LDA.w .camera616,Y\n #_02E9AE: STA.w $0616\n\n; ---------------------------------------------------------\n\n #_02E9B1: SEP #$20\n\n #_02E9B3: PLA\n #_02E9B4: STA.b $A0\n\n #_02E9B6: PLB\n\n #_02E9B7: JSL Overworld_SetScreenBGColorCacheOnly\n\n #_02E9BB: RTS", + "file": "bank_02.asm" + }, + { + "name": "LoadOverworldFromSpecialOverworld", + "code": "LoadOverworldFromSpecialOverworld:\n #_02E9BC: REP #$20\n\n #_02E9BE: STZ.w $04AC\n\n #_02E9C1: LDA.l $7EC100\n #_02E9C5: STA.w $040A\n\n #_02E9C8: LDA.l $7EC102\n #_02E9CC: STA.b $1C\n\n #_02E9CE: LDA.l $7EC104\n #_02E9D2: STA.b $E8\n #_02E9D4: STA.w $0122\n #_02E9D7: STA.b $E6\n #_02E9D9: STA.w $0124\n\n #_02E9DC: LDA.l $7EC106\n #_02E9E0: STA.b $E2\n #_02E9E2: STA.w $011E\n #_02E9E5: STA.b $E0\n #_02E9E7: STA.w $0120\n\n #_02E9EA: LDA.l $7EC108\n #_02E9EE: STA.b $20\n\n #_02E9F0: LDA.l $7EC10A\n #_02E9F4: STA.b $22\n\n #_02E9F6: LDA.l $7EC10C\n #_02E9FA: STA.b $8A\n\n #_02E9FC: LDA.l $7EC10E\n #_02EA00: STA.b $84\n\n #_02EA02: SEC\n #_02EA03: SBC.w #$0400\n #_02EA06: AND.w #$0F80\n #_02EA09: ASL A\n #_02EA0A: XBA\n #_02EA0B: STA.b $88\n\n #_02EA0D: LDA.b $84\n #_02EA0F: SEC\n #_02EA10: SBC.w #$0010\n #_02EA13: AND.w #$003E\n #_02EA16: LSR A\n #_02EA17: STA.b $86\n\n; ---------------------------------------------------------\n\n #_02EA19: LDA.l $7EC110\n #_02EA1D: STA.w $0618\n\n #_02EA20: DEC A\n #_02EA21: DEC A\n #_02EA22: STA.w $061A\n\n #_02EA25: LDA.l $7EC112\n #_02EA29: STA.w $061C\n\n #_02EA2C: DEC A\n #_02EA2D: DEC A\n #_02EA2E: STA.w $061E\n\n #_02EA31: LDA.l $7EC114\n #_02EA35: STA.w $0600\n\n #_02EA38: LDA.l $7EC116\n #_02EA3C: STA.w $0602\n\n #_02EA3F: LDA.l $7EC118\n #_02EA43: STA.w $0604\n\n #_02EA46: LDA.l $7EC11A\n #_02EA4A: STA.w $0606\n\n #_02EA4D: LDA.l $7EC11C\n #_02EA51: STA.w $0610\n\n #_02EA54: LDA.l $7EC11E\n #_02EA58: STA.w $0612\n\n #_02EA5B: LDA.l $7EC120\n #_02EA5F: STA.w $0614\n\n #_02EA62: LDA.l $7EC122\n #_02EA66: STA.w $0616\n\n #_02EA69: LDA.l $7EC12A\n #_02EA6D: STA.w $0624\n\n #_02EA70: LDA.l $7EC12C\n #_02EA74: STA.w $0626\n\n #_02EA77: LDA.l $7EC12E\n #_02EA7B: STA.w $0628\n\n #_02EA7E: LDA.l $7EC130\n #_02EA82: STA.w $062A\n\n; ---------------------------------------------------------\n\n #_02EA85: SEP #$20\n\n #_02EA87: LDA.l $7EC124\n #_02EA8B: STA.w $0AA0\n\n #_02EA8E: LDA.l $7EC125\n #_02EA92: STA.w $0AA1\n\n #_02EA95: LDA.l $7EC126\n #_02EA99: STA.w $0AA2\n\n #_02EA9C: LDA.l $7EC127\n #_02EAA0: STA.w $0AA3\n\n #_02EAA3: LDX.b $8A\n\n #_02EAA5: LDA.l $7EFD40,X\n #_02EAA9: STA.b $00\n\n #_02EAAB: LDA.l OverworldPalettesScreenToSet,X\n #_02EAAF: JSL OverworldPalettesLoader\n #_02EAB3: JSL Overworld_SetScreenBGColorCacheOnly\n\n; ---------------------------------------------------------\n\n #_02EAB7: STZ.b $A9\n\n #_02EAB9: LDA.b #$02\n #_02EABB: STA.b $AA\n #_02EABD: STA.b $A6\n #_02EABF: STA.b $A7\n\n #_02EAC1: LDA.b #$80\n #_02EAC3: STA.b $45\n #_02EAC5: STA.b $44\n\n #_02EAC7: LDA.b #$0F\n #_02EAC9: STA.b $42\n #_02EACB: STA.b $43\n\n #_02EACD: LDA.b #$FF\n #_02EACF: STA.b $24\n #_02EAD1: STA.b $29\n\n #_02EAD3: SEP #$30\n\n #_02EAD5: JSL Link_ResetSwimmingState\n #_02EAD9: JSR Overworld_LoadGFXAndScreenSize\n\n #_02EADC: LDA.b #$E4\n #_02EADE: STA.w $0716\n\n #_02EAE1: STZ.w $0713\n\n #_02EAE4: RTS", + "file": "bank_02.asm" + }, + { + "name": "FluteMenu_LoadTransport", + "code": "FluteMenu_LoadTransport:\n #_02EC39: PHB\n #_02EC3A: PHK\n #_02EC3B: PLB\n\n #_02EC3C: REP #$20\n\n #_02EC3E: STZ.w $04AC\n\n #_02EC41: ASL.w $1AF0\n #_02EC44: LDX.w $1AF0\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "LoadTransport", + "code": "LoadTransport:\n #_02EC47: LDA.w .vertical_scroll,X\n #_02EC4A: STA.b $E6\n #_02EC4C: STA.b $E8\n #_02EC4E: STA.w $0122\n #_02EC51: STA.w $0124\n\n #_02EC54: LDA.w .horizontal_scroll,X\n #_02EC57: STA.b $E0\n #_02EC59: STA.b $E2\n #_02EC5B: STA.w $011E\n #_02EC5E: STA.w $0120\n\n #_02EC61: LDA.w .link_pos_y,X\n #_02EC64: STA.b $20\n\n #_02EC66: LDA.w .link_pos_x,X\n #_02EC69: STA.b $22\n\n #_02EC6B: LDA.w .scroll_mod_y,X\n #_02EC6E: STA.w $0624\n\n #_02EC71: LDA.w #$0000\n #_02EC74: SEC\n #_02EC75: SBC.w $0624\n #_02EC78: STA.w $0626\n\n #_02EC7B: LDA.w .scroll_mod_x,X\n #_02EC7E: STA.w $0628\n\n #_02EC81: LDA.w #$0000\n #_02EC84: SEC\n #_02EC85: SBC.w $0628\n #_02EC88: STA.w $062A\n\n #_02EC8B: LDA.w .screen_id,X\n #_02EC8E: STA.b $8A\n #_02EC90: STA.w $040A\n\n #_02EC93: LDA.w .map16_index,X\n #_02EC96: STA.b $84\n\n #_02EC98: SEC\n #_02EC99: SBC.w #$0400\n #_02EC9C: AND.w #$0F80\n #_02EC9F: ASL A\n #_02ECA0: XBA\n #_02ECA1: STA.b $88\n\n #_02ECA3: LDA.b $84\n #_02ECA5: SEC\n #_02ECA6: SBC.w #$0010\n #_02ECA9: AND.w #$003E\n #_02ECAC: LSR A\n #_02ECAD: STA.b $86\n\n #_02ECAF: LDA.w .camera_trigger_y,X\n #_02ECB2: STA.w $0618\n\n #_02ECB5: DEC A\n #_02ECB6: DEC A\n #_02ECB7: STA.w $061A\n\n #_02ECBA: LDA.w .camera_trigger_x,X\n #_02ECBD: STA.w $061C\n\n #_02ECC0: DEC A\n #_02ECC1: DEC A\n #_02ECC2: STA.w $061E\n\n; ---------------------------------------------------------\n\n #_02ECC5: STZ.w $0696\n #_02ECC8: STZ.w $0698\n\n #_02ECCB: PLB\n\n #_02ECCC: JSR Overworld_LoadNewScreenProperties\n\n #_02ECCF: JSL Sprite_ResetAll\n #_02ECD3: JSL Sprite_ReloadAll_Overworld\n\n #_02ECD7: STZ.b $6C\n\n #_02ECD9: JSR DeleteCertainAncillaeStopDashing\n\n #_02ECDC: RTL", + "file": "bank_02.asm" + }, + { + "name": "FluteMenu_LoadSelectedScreenPalettes", + "code": "FluteMenu_LoadSelectedScreenPalettes:\n #_02ECDD: JSR OverworldLoadScreensPaletteSet\n\n #_02ECE0: LDX.b $8A\n\n #_02ECE2: LDA.l $7EFD40,X\n #_02ECE6: STA.b $00\n\n #_02ECE8: LDA.l OverworldPalettesScreenToSet,X\n\n #_02ECEC: JSL OverworldPalettesLoader\n #_02ECF0: JSL Overworld_SetScreenBGColor\n #_02ECF4: JSR Overworld_CopyPalettesToCache_WithPrep\n\n #_02ECF7: RTL", + "file": "bank_02.asm" + }, + { + "name": "FindPartnerWhirlpoolExit", + "code": "FindPartnerWhirlpoolExit:\n #_02ED08: PHB\n #_02ED09: PHK\n #_02ED0A: PLB\n\n #_02ED0B: REP #$20\n\n #_02ED0D: LDX.b #$10\n\n #_02ED0F: LDA.b $8A\n\n.next_screen\n #_02ED11: DEX\n #_02ED12: DEX\n\n #_02ED13: CMP.l .my_screen_id,X\n #_02ED17: BNE .next_screen\n\n; ---------------------------------------------------------\n\n #_02ED19: TXA\n #_02ED1A: CLC\n #_02ED1B: ADC.w #$0012\n #_02ED1E: TAX\n\n #_02ED1F: STZ.w $04AC\n\n #_02ED22: JMP.w LoadTransport\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Module09_21", + "code": "Module09_21:\n #_02ED25: REP #$20\n\n #_02ED27: LDA.b $84\n #_02ED29: PHA\n\n #_02ED2A: LDA.b $86\n #_02ED2C: PHA\n\n #_02ED2D: LDA.b $88\n #_02ED2F: PHA\n\n #_02ED30: LDX.b $8A\n\n #_02ED32: LDA.l OverworldScreenSize,X\n #_02ED36: AND.w #$00FF\n #_02ED39: BEQ OverworldBuildMapAndTrigger\n\n #_02ED3B: LDA.w #$0390\n #_02ED3E: STA.b $84\n\n #_02ED40: SEC\n #_02ED41: SBC.w #$0400\n #_02ED44: AND.w #$0F80\n #_02ED47: ASL A\n #_02ED48: XBA\n #_02ED49: STA.b $88\n\n #_02ED4B: LDA.b $84\n #_02ED4D: SEC\n #_02ED4E: SBC.w #$0010\n #_02ED51: AND.w #$003E\n #_02ED54: LSR A\n #_02ED55: STA.b $86\n\n #_02ED57: BRA OverworldBuildMapAndTrigger\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_LoadAndBuildScreen", + "code": "Overworld_LoadAndBuildScreen:\n #_02ED59: REP #$20\n\n #_02ED5B: LDA.b $84\n #_02ED5D: PHA\n\n #_02ED5E: LDA.b $86\n #_02ED60: PHA\n\n #_02ED61: LDA.b $88\n #_02ED63: PHA\n\n #_02ED64: LDX.b $8A\n\n #_02ED66: LDA.l OverworldScreenSize,X\n #_02ED6A: AND.w #$00FF\n #_02ED6D: BEQ .big_screen\n\n #_02ED6F: LDA.w #$0390\n #_02ED72: STA.b $84\n\n #_02ED74: SEC\n #_02ED75: SBC.w #$0400\n #_02ED78: AND.w #$0F80\n #_02ED7B: ASL A\n #_02ED7C: XBA\n #_02ED7D: STA.b $88\n\n #_02ED7F: LDA.b $84\n #_02ED81: SEC\n #_02ED82: SBC.w #$0010\n #_02ED85: AND.w #$003E\n #_02ED88: LSR A\n #_02ED89: STA.b $86\n\n.big_screen\n #_02ED8B: SEP #$20\n\n #_02ED8D: JSR Overworld_DrawQuadrantsAndOverlays\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldBuildMapAndTrigger", + "code": "OverworldBuildMapAndTrigger:\n #_02ED90: REP #$20\n\n #_02ED92: LDA.w #$FFFF\n #_02ED95: STA.b $C8\n\n #_02ED97: STZ.b $CA\n #_02ED99: STZ.b $CC\n\n #_02ED9B: SEP #$20\n\n #_02ED9D: JSR BuildOverworldMapFromMap16\n\n #_02EDA0: REP #$20\n\n #_02EDA2: PLA\n #_02EDA3: STA.b $88\n\n #_02EDA5: PLA\n #_02EDA6: STA.b $86\n\n #_02EDA8: PLA\n #_02EDA9: STA.b $84\n\n #_02EDAB: SEP #$20\n\n #_02EDAD: LDA.b #$04\n #_02EDAF: STA.b $17\n #_02EDB1: STA.w $0710\n\n #_02EDB4: INC.b $11\n\n #_02EDB6: STZ.b $13\n\n #_02EDB8: RTS", + "file": "bank_02.asm" + }, + { + "name": "Module08_02_LoadAndAdvance", + "code": "Module08_02_LoadAndAdvance:\n #_02EDB9: JSR Overworld_LoadAndBuildScreen\n\n #_02EDBC: LDA.b #$10\n #_02EDBE: STA.b $10\n\n #_02EDC0: STZ.b $B0\n #_02EDC2: STZ.b $11\n\n #_02EDC4: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DrawQuadrantsAndOverlays", + "code": "Overworld_DrawQuadrantsAndOverlays:\n #_02EEC5: REP #$30\n\n #_02EEC7: JSR Overworld_DecompressAndDrawAllQuadrants\n\n; ---------------------------------------------------------\n\n #_02EECA: LDX.w #$001E\n #_02EECD: LDA.w #$0DC4\n\n.next\n #_02EED0: STA.l $7E4000,X\n #_02EED4: STA.l $7E4020,X\n #_02EED8: STA.l $7E4020,X\n #_02EEDC: STA.l $7E4040,X\n #_02EEE0: STA.l $7E4060,X\n\n #_02EEE4: DEX\n #_02EEE5: DEX\n #_02EEE6: BPL .next\n\n; ---------------------------------------------------------\n\n #_02EEE8: LDX.w $0696\n #_02EEEB: BEQ Overworld_HandleOverlaysAndBombDoors\n\n #_02EEED: CPX.w #$FFFF\n #_02EEF0: BEQ Overworld_HandleOverlaysAndBombDoors\n\n #_02EEF2: CPX.w #$8000\n #_02EEF5: BCS .do_two\n\n #_02EEF7: LDA.w #$0DA4\n #_02EEFA: STA.l $7E2000,X\n\n #_02EEFE: JSL Overworld_MemorizeMap16Change\n\n #_02EF02: LDA.w #$0DA6\n #_02EF05: BRA .just_one\n\n.do_two\n #_02EF07: TXA\n #_02EF08: AND.w #$1FFF\n #_02EF0B: TAX\n\n #_02EF0C: LDA.w #$0DB4\n #_02EF0F: JSL Overworld_MemorizeMap16Change\n #_02EF13: STA.l $7E2000,X\n\n #_02EF17: LDA.w #$0DB5\n\n.just_one\n #_02EF1A: STA.l $7E2002,X\n\n #_02EF1E: INX\n #_02EF1F: INX\n\n #_02EF20: JSL Overworld_MemorizeMap16Change\n\n #_02EF24: DEX\n #_02EF25: DEX\n\n #_02EF26: STZ.w $0696\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_HandleOverlaysAndBombDoors", + "code": "Overworld_HandleOverlaysAndBombDoors:\n #_02EF29: LDA.w #$020F\n\n #_02EF2C: LDX.b $8A\n #_02EF2E: CPX.w #$0033 ; OW 33\n #_02EF31: BNE .not_swamp_portal\n\n #_02EF33: STA.l $7E22A8\n\n.not_swamp_portal\n #_02EF37: CPX.w #$002F ; OW 2F\n #_02EF3A: BNE .not_pod_portal\n\n #_02EF3C: STA.l $7E2BB2\n\n; ---------------------------------------------------------\n\n.not_pod_portal\n #_02EF40: SEP #$30\n\n #_02EF42: LDX.b $8A\n #_02EF44: CPX.b #$80 ; SPOW\n #_02EF46: BCS .no_overlay\n\n #_02EF48: LDA.l $7EF280,X\n #_02EF4C: AND.b #$20\n #_02EF4E: BEQ .no_overlay\n\n #_02EF50: JSL ApplyOverworldOverlay\n\n.no_overlay\n #_02EF54: LDX.b $8A\n\n #_02EF56: LDA.l $7EF280,X\n #_02EF5A: AND.b #$02\n #_02EF5C: BEQ .exit\n\n #_02EF5E: REP #$30\n\n #_02EF60: LDA.b $8A\n #_02EF62: ASL A\n #_02EF63: TAX\n\n #_02EF64: LDA.l .bombable_door_location,X\n #_02EF68: TAX\n\n #_02EF69: LDA.w #$0DB4\n #_02EF6C: STA.l $7E2000,X\n\n #_02EF70: LDA.w #$0DB5\n #_02EF73: STA.l $7E2002,X\n\n #_02EF77: SEP #$30\n\n.exit\n #_02EF79: RTS", + "file": "bank_02.asm" + }, + { + "name": "TriggerAndFinishMapLoadStripe_Vertical", + "code": "TriggerAndFinishMapLoadStripe_Vertical:\n #_02EF7A: SEP #$30\n\n #_02EF7C: LDA.b #$08\n #_02EF7E: STA.w $0416\n\n #_02EF81: LDA.b #$03\n #_02EF83: STA.b $17\n\n #_02EF85: REP #$30\n\n #_02EF87: LDY.b $0E\n\n #_02EF89: LDA.w #$0080\n #_02EF8C: STA.w $1100,Y\n\n #_02EF8F: INY\n #_02EF90: INY\n #_02EF91: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next\n #_02EF93: JSR BufferAndBuildMap16Stripes_Vertical\n\n #_02EF96: LDA.b $84\n #_02EF98: SEC\n #_02EF99: SBC.w #$0080\n #_02EF9C: STA.b $84\n\n #_02EF9E: LDA.b $88\n #_02EFA0: DEC A\n #_02EFA1: AND.w #$001F\n #_02EFA4: STA.b $88\n\n #_02EFA6: DEC.b $08\n #_02EFA8: BNE .next\n\n; ---------------------------------------------------------\n\n #_02EFAA: LDA.w #$FFFF\n #_02EFAD: LDX.b $0E\n #_02EFAF: STA.w $1100,X\n\n #_02EFB2: RTS", + "file": "bank_02.asm" + }, + { + "name": "TriggerAndFinishMapLoadStripe_Horizontal", + "code": "TriggerAndFinishMapLoadStripe_Horizontal:\n #_02EFB3: SEP #$30\n\n #_02EFB5: LDA.b #$02\n #_02EFB7: STA.w $0416\n\n #_02EFBA: LDA.b #$03\n #_02EFBC: STA.b $17\n\n #_02EFBE: REP #$30\n\n #_02EFC0: LDY.b $0E\n\n #_02EFC2: LDA.w #$8040\n #_02EFC5: STA.w $1100,Y\n\n #_02EFC8: INY\n #_02EFC9: INY\n #_02EFCA: STY.b $0E\n\n; ---------------------------------------------------------\n\n.next\n #_02EFCC: JSR BufferAndBuildMap16Stripes_Horizontal\n\n #_02EFCF: DEC.b $84\n #_02EFD1: DEC.b $84\n\n #_02EFD3: LDA.b $86\n #_02EFD5: DEC A\n #_02EFD6: AND.w #$001F\n #_02EFD9: STA.b $86\n\n #_02EFDB: DEC.b $08\n #_02EFDD: BNE .next\n\n; ---------------------------------------------------------\n\n #_02EFDF: LDA.w #$FFFF\n #_02EFE2: LDX.b $0E\n #_02EFE4: STA.w $1100,X\n\n #_02EFE7: RTS", + "file": "bank_02.asm" + }, + { + "name": "SomeTilemapChange", + "code": "SomeTilemapChange:\n #_02EFE8: REP #$30\n\n #_02EFEA: JSR Overworld_DecompressAndDrawAllQuadrants\n\n #_02EFED: LDX.w #$001E\n #_02EFF0: LDA.w #$0DC4\n\n.next\n #_02EFF3: STA.l $7E4000,X\n #_02EFF7: STA.l $7E4020,X\n #_02EFFB: STA.l $7E4040,X\n #_02EFFF: STA.l $7E4060,X\n\n #_02F003: DEX\n #_02F004: DEX\n #_02F005: BPL .next\n\n #_02F007: JSR Overworld_HandleOverlaysAndBombDoors\n\n #_02F00A: INC.b $11\n\n #_02F00C: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialNewScreenMapToScroll", + "code": "CreateInitialNewScreenMapToScroll:\n #_02F031: SEP #$30\n\n #_02F033: LDX.b $8A\n\n #_02F035: LDA.l OverworldScreenSize,X\n #_02F039: BNE .small_screen\n\n #_02F03B: LDA.w $0416\n #_02F03E: ASL A\n #_02F03F: TAX\n\n #_02F040: JMP.w (.vectors_big_screen,X)\n\n; ---------------------------------------------------------\n\n.small_screen\n #_02F043: LDA.w $0416\n #_02F046: ASL A\n #_02F047: TAX\n\n #_02F048: JMP.w (.vectors_small_screen,X)\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "UNREACHABLE_02F04B", + "code": "UNREACHABLE_02F04B:\n #_02F04B: LDA.b $84\n #_02F04D: SEC\n #_02F04E: SBC.w #$0400\n #_02F051: AND.w #$0F80\n #_02F054: ASL A\n #_02F055: XBA\n #_02F056: AND.w #$001F\n #_02F059: STA.b $88\n\n #_02F05B: LDA.b $84\n #_02F05D: SEC\n #_02F05E: SBC.w #$0010\n #_02F061: AND.w #$003E\n #_02F064: LSR A\n #_02F065: AND.w #$001F\n #_02F068: STA.b $86\n\n #_02F06A: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Big_North", + "code": "CreateInitialOWScreenView_Big_North:\n #_02F06B: REP #$30\n\n #_02F06D: LDA.b $84\n #_02F06F: CLC\n #_02F070: ADC.w #$0380\n #_02F073: STA.b $84\n\n #_02F075: LDA.w #$001F\n #_02F078: STA.b $88\n\n #_02F07A: STZ.b $0E\n\n #_02F07C: LDA.w #$0007\n #_02F07F: STA.b $08\n\n #_02F081: JSR TriggerAndFinishMapLoadStripe_Vertical\n\n #_02F084: SEP #$30\n\n #_02F086: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Big_South", + "code": "CreateInitialOWScreenView_Big_South:\n #_02F087: REP #$30\n\n #_02F089: LDA.b $84\n\n.adjust_more\n #_02F08B: CMP.w #$0080\n #_02F08E: BCC .in_range\n\n #_02F090: SBC.w #$0080\n #_02F093: BRA .adjust_more\n\n; ---------------------------------------------------------\n\n.in_range\n #_02F095: CLC\n #_02F096: ADC.w #$0780\n #_02F099: STA.b $84\n\n #_02F09B: STZ.b $0E\n\n #_02F09D: LDA.w #$0007\n #_02F0A0: STA.b $88\n\n #_02F0A2: LDA.w #$0008\n #_02F0A5: STA.b $08\n\n #_02F0A7: JSR TriggerAndFinishMapLoadStripe_Vertical\n\n #_02F0AA: LDA.b $88\n #_02F0AC: CLC\n #_02F0AD: ADC.w #$0009\n #_02F0B0: AND.w #$001F\n #_02F0B3: STA.b $88\n\n #_02F0B5: LDA.b $84\n #_02F0B7: SEC\n #_02F0B8: SBC.w #$0B80\n #_02F0BB: STA.b $84\n\n #_02F0BD: SEP #$30\n\n #_02F0BF: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Big_West", + "code": "CreateInitialOWScreenView_Big_West:\n #_02F0C0: REP #$30\n\n #_02F0C2: LDA.b $84\n #_02F0C4: CLC\n #_02F0C5: ADC.w #$000E\n #_02F0C8: STA.b $84\n\n #_02F0CA: LDA.w #$001F\n #_02F0CD: STA.b $86\n\n #_02F0CF: STZ.b $0E\n\n #_02F0D1: LDA.w #$0007\n #_02F0D4: STA.b $08\n\n #_02F0D6: JSR TriggerAndFinishMapLoadStripe_Horizontal\n\n #_02F0D9: SEP #$30\n\n #_02F0DB: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Big_East", + "code": "CreateInitialOWScreenView_Big_East:\n #_02F0DC: REP #$30\n\n #_02F0DE: LDA.b $84\n #_02F0E0: SEC\n #_02F0E1: SBC.w #$0060\n #_02F0E4: CLC\n #_02F0E5: ADC.w #$001E\n #_02F0E8: STA.b $84\n\n #_02F0EA: STZ.b $0E\n\n #_02F0EC: LDA.w #$0007\n #_02F0EF: STA.b $86\n\n #_02F0F1: LDA.w #$0008\n #_02F0F4: STA.b $08\n\n #_02F0F6: JSR TriggerAndFinishMapLoadStripe_Horizontal\n\n #_02F0F9: LDA.b $86\n #_02F0FB: CLC\n #_02F0FC: ADC.w #$0009\n #_02F0FF: AND.w #$001F\n #_02F102: STA.b $86\n\n #_02F104: LDA.b $84\n #_02F106: SEC\n #_02F107: SBC.w #$002E\n #_02F10A: STA.b $84\n\n #_02F10C: SEP #$30\n\n #_02F10E: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Small_North", + "code": "CreateInitialOWScreenView_Small_North:\n #_02F10F: REP #$30\n\n #_02F111: LDA.b $84\n #_02F113: SEC\n #_02F114: SBC.w #$0700\n #_02F117: STA.l $7EC172\n\n #_02F11B: LDA.b $86\n #_02F11D: STA.l $7EC174\n\n #_02F121: LDA.w #$000A\n #_02F124: STA.l $7EC176\n\n #_02F128: LDA.w #$1390\n #_02F12B: STA.b $84\n\n #_02F12D: STZ.b $86\n\n #_02F12F: LDA.w #$001F\n #_02F132: STA.b $88\n\n #_02F134: STZ.b $0E\n\n #_02F136: LDA.w #$0007\n #_02F139: STA.b $08\n\n #_02F13B: JSR TriggerAndFinishMapLoadStripe_Vertical\n\n #_02F13E: SEP #$30\n\n #_02F140: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Small_South", + "code": "CreateInitialOWScreenView_Small_South:\n #_02F141: REP #$30\n\n #_02F143: LDA.b $84\n #_02F145: AND.w #$00FF\n #_02F148: STA.l $7EC172\n\n #_02F14C: LDA.b $86\n #_02F14E: STA.l $7EC174\n\n #_02F152: LDA.w #$0018\n #_02F155: STA.l $7EC176\n\n #_02F159: LDA.w #$0790\n #_02F15C: STA.b $84\n\n #_02F15E: STZ.b $86\n\n #_02F160: LDA.w #$0007\n #_02F163: STA.b $88\n\n #_02F165: STZ.b $0E\n\n #_02F167: LDA.w #$0008\n #_02F16A: STA.b $08\n\n #_02F16C: JSR TriggerAndFinishMapLoadStripe_Vertical\n\n #_02F16F: LDA.b $88\n #_02F171: CLC\n #_02F172: ADC.w #$0009\n #_02F175: AND.w #$001F\n #_02F178: STA.b $88\n\n #_02F17A: LDA.b $84\n #_02F17C: SEC\n #_02F17D: SBC.w #$0B80\n #_02F180: STA.b $84\n\n #_02F182: SEP #$30\n\n #_02F184: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Small_West", + "code": "CreateInitialOWScreenView_Small_West:\n #_02F185: REP #$30\n\n #_02F187: LDA.b $84\n #_02F189: SEC\n #_02F18A: SBC.w #$0020\n #_02F18D: STA.l $7EC172\n\n #_02F191: LDA.w #$0008\n #_02F194: STA.l $7EC174\n\n #_02F198: LDA.b $88\n #_02F19A: STA.l $7EC176\n\n #_02F19E: LDA.w #$044E\n #_02F1A1: STA.b $84\n\n #_02F1A3: STZ.b $88\n\n #_02F1A5: LDA.w #$001F\n #_02F1A8: STA.b $86\n\n #_02F1AA: STZ.b $0E\n\n #_02F1AC: LDA.w #$0007\n #_02F1AF: STA.b $08\n\n #_02F1B1: JSR TriggerAndFinishMapLoadStripe_Horizontal\n\n #_02F1B4: SEP #$30\n\n #_02F1B6: RTS", + "file": "bank_02.asm" + }, + { + "name": "CreateInitialOWScreenView_Small_East", + "code": "CreateInitialOWScreenView_Small_East:\n #_02F1B7: REP #$30\n\n #_02F1B9: LDA.b $84\n #_02F1BB: SEC\n #_02F1BC: SBC.w #$0060\n #_02F1BF: STA.l $7EC172\n\n #_02F1C3: LDA.w #$0018\n #_02F1C6: STA.l $7EC174\n\n #_02F1CA: LDA.b $88\n #_02F1CC: STA.l $7EC176\n\n #_02F1D0: LDA.w #$041E\n #_02F1D3: STA.b $84\n\n #_02F1D5: STZ.b $88\n\n #_02F1D7: LDA.w #$0007\n #_02F1DA: STA.b $86\n\n #_02F1DC: STZ.b $0E\n\n #_02F1DE: LDA.w #$0008\n #_02F1E1: STA.b $08\n\n #_02F1E3: JSR TriggerAndFinishMapLoadStripe_Horizontal\n\n #_02F1E6: LDA.b $86\n #_02F1E8: CLC\n #_02F1E9: ADC.w #$0009\n #_02F1EC: AND.w #$001F\n #_02F1EF: STA.b $86\n\n #_02F1F1: LDA.b $84\n #_02F1F3: SEC\n #_02F1F4: SBC.w #$002E\n #_02F1F7: STA.b $84\n\n #_02F1F9: SEP #$30\n\n #_02F1FB: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldTransitionScrollAndLoadMap", + "code": "OverworldTransitionScrollAndLoadMap:\n #_02F20E: SEP #$30\n\n #_02F210: LDA.w $0416\n #_02F213: ASL A\n #_02F214: TAX\n\n #_02F215: JMP.w (.vectors,X)\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "BuildFullStripeDuringTransition_North", + "code": "BuildFullStripeDuringTransition_North:\n #_02F218: REP #$30\n\n #_02F21A: STZ.b $0E\n\n #_02F21C: JSR CheckForNewlyLoadedMapAreas_North_NewStripe\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldTransitionScrollAndLoadMap_BuildStripe", + "code": "OverworldTransitionScrollAndLoadMap_BuildStripe:\n #_02F21F: LDY.b $0E\n\n #_02F221: LDA.w #$FFFF\n #_02F224: STA.w $1100,Y\n #_02F227: STA.w $1102,Y\n\n #_02F22A: CPY.w #$0000\n #_02F22D: BEQ .empty\n\n #_02F22F: SEP #$30\n\n #_02F231: LDA.b #$03\n #_02F233: STA.b $17\n\n.empty\n #_02F235: SEP #$30\n\n #_02F237: RTS", + "file": "bank_02.asm" + }, + { + "name": "BuildFullStripeDuringTransition_South", + "code": "BuildFullStripeDuringTransition_South:\n #_02F238: REP #$30\n\n #_02F23A: STZ.b $0E\n\n #_02F23C: JSR CheckForNewlyLoadedMapAreas_South_NewStripe\n\n #_02F23F: BRA OverworldTransitionScrollAndLoadMap_BuildStripe\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "BuildFullStripeDuringTransition_West", + "code": "BuildFullStripeDuringTransition_West:\n #_02F241: REP #$30\n\n #_02F243: STZ.b $0E\n\n #_02F245: JSR CheckForNewlyLoadedMapAreas_West_NewStripe\n\n #_02F248: BRA OverworldTransitionScrollAndLoadMap_BuildStripe\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "BuildFullStripeDuringTransition_East", + "code": "BuildFullStripeDuringTransition_East:\n #_02F24A: REP #$30\n\n #_02F24C: STZ.b $0E\n\n #_02F24E: JSR CheckForNewlyLoadedMapAreas_East_NewStripe\n\n #_02F251: BRA OverworldTransitionScrollAndLoadMap_BuildStripe\n\n; =========================================================\n\npool OverworldHandleMapScroll\n\n.vectors\n #_02F253: dw Overworld_ResetSubmodule\n #_02F255: dw MapScroll_East\n #_02F257: dw MapScroll_West\n #_02F259: dw Overworld_ResetSubmodule\n #_02F25B: dw MapScroll_South\n #_02F25D: dw MapScroll_SouthAndClear\n #_02F25F: dw MapScroll_SouthAndClear\n #_02F261: dw Overworld_ResetSubmodule\n #_02F263: dw MapScroll_North\n #_02F265: dw MapScroll_NorthAndClear\n #_02F267: dw MapScroll_NorthAndClear\n #_02F269: dw Overworld_ResetSubmodule\n #_02F26B: dw Overworld_ResetSubmodule\n #_02F26D: dw Overworld_ResetSubmodule\n #_02F26F: dw Overworld_ResetSubmodule\n #_02F271: dw Overworld_ResetSubmodule\n\npool off\n\n; ---------------------------------------------------------\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldHandleMapScroll", + "code": "OverworldHandleMapScroll:\n #_02F273: REP #$30\n\n #_02F275: STZ.b $0E\n\n #_02F277: SEP #$30\n\n #_02F279: LDA.w $0416\n #_02F27C: ASL A\n #_02F27D: TAX\n\n #_02F27E: JSR (.vectors,X)\n\n #_02F281: REP #$30\n\n #_02F283: LDY.b $0E\n\n #_02F285: LDA.w #$FFFF\n #_02F288: STA.w $1100,Y\n #_02F28B: STA.w $1102,Y\n\n #_02F28E: CPY.w #$0000\n #_02F291: BEQ .no_update\n\n #_02F293: SEP #$30\n\n #_02F295: LDA.b #$03\n #_02F297: STA.b $17\n\n.no_update\n #_02F299: SEP #$30\n\n #_02F29B: LDA.w $0416\n #_02F29E: STA.w $0418\n\n #_02F2A1: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_ResetSubmodule", + "code": "Overworld_ResetSubmodule:\n #_02F2A2: STZ.b $11\n\n #_02F2A4: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_East", + "code": "MapScroll_East:\n #_02F2A5: JSR CheckForNewlyLoadedMapAreas_East\n\n #_02F2A8: STZ.w $0416\n\n #_02F2AB: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_West", + "code": "MapScroll_West:\n #_02F2AC: JSR CheckForNewlyLoadedMapAreas_West\n\n #_02F2AF: STZ.w $0416\n\n #_02F2B2: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_South", + "code": "MapScroll_South:\n #_02F2B3: JSR CheckForNewlyLoadedMapAreas_South\n\n #_02F2B6: STZ.w $0416\n\n #_02F2B9: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_SouthAndClear", + "code": "MapScroll_SouthAndClear:\n #_02F2BA: JSR CheckForNewlyLoadedMapAreas_South\n\n #_02F2BD: SEP #$30\n\n #_02F2BF: LDA.w $0416\n #_02F2C2: AND.b #$03\n #_02F2C4: STA.w $0416\n\n #_02F2C7: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_North", + "code": "MapScroll_North:\n #_02F2C8: JSR CheckForNewlyLoadedMapAreas_North\n\n #_02F2CB: STZ.w $0416\n\n #_02F2CE: RTS", + "file": "bank_02.asm" + }, + { + "name": "MapScroll_NorthAndClear", + "code": "MapScroll_NorthAndClear:\n #_02F2CF: JSR CheckForNewlyLoadedMapAreas_North\n\n #_02F2D2: SEP #$30\n\n #_02F2D4: LDA.w $0416\n #_02F2D7: AND.b #$03\n #_02F2D9: STA.w $0416\n\n #_02F2DC: RTS", + "file": "bank_02.asm" + }, + { + "name": "CheckForNewlyLoadedMapAreas_North", + "code": "CheckForNewlyLoadedMapAreas_North:\n #_02F2DD: REP #$30\n\n #_02F2DF: LDA.b $84\n #_02F2E1: CMP.w #$0080\n #_02F2E4: BMI .exit\n\n #_02F2E6: LDX.b $8A\n\n #_02F2E8: LDA.l OverworldScreenSize,X\n #_02F2EC: AND.w #$00FF\n #_02F2EF: BNE .dont_start_stripe\n\n; =========================================================\n\n#CheckForNewlyLoadedMapAreas_North_NewStripe:\n #_02F2F1: LDY.b $0E\n\n #_02F2F3: LDA.w #$0080\n #_02F2F6: STA.w $1100,Y\n\n #_02F2F9: INY\n #_02F2FA: INY\n #_02F2FB: STY.b $0E\n\n #_02F2FD: JSR BufferAndBuildMap16Stripes_Vertical\n\n; ---------------------------------------------------------\n\n.dont_start_stripe\n #_02F300: LDA.b $84\n #_02F302: SEC\n #_02F303: SBC.w #$0080\n #_02F306: STA.b $84\n\n #_02F308: LDA.b $88\n #_02F30A: DEC A\n #_02F30B: AND.w #$001F\n #_02F30E: STA.b $88\n\n.exit\n #_02F310: RTS", + "file": "bank_02.asm" + }, + { + "name": "CheckForNewlyLoadedMapAreas_South", + "code": "CheckForNewlyLoadedMapAreas_South:\n #_02F311: REP #$30\n\n #_02F313: LDA.b $84\n #_02F315: CMP.w #$1800\n #_02F318: BCS .exit\n\n #_02F31A: LDX.b $8A\n\n #_02F31C: LDA.l OverworldScreenSize,X\n #_02F320: AND.w #$00FF\n #_02F323: BNE .dont_start_stripe\n\n; =========================================================\n\n#CheckForNewlyLoadedMapAreas_South_NewStripe:\n #_02F325: LDY.b $0E\n\n #_02F327: LDA.w #$0080\n #_02F32A: STA.w $1100,Y\n\n #_02F32D: INY\n #_02F32E: INY\n #_02F32F: STY.b $0E\n\n #_02F331: JSR BufferAndBuildMap16Stripes_Vertical\n\n; ---------------------------------------------------------\n\n.dont_start_stripe\n #_02F334: LDA.b $84\n #_02F336: CLC\n #_02F337: ADC.w #$0080\n #_02F33A: STA.b $84\n\n #_02F33C: LDA.b $88\n #_02F33E: INC A\n #_02F33F: AND.w #$001F\n #_02F342: STA.b $88\n\n.exit\n #_02F344: RTS", + "file": "bank_02.asm" + }, + { + "name": "CheckForNewlyLoadedMapAreas_West", + "code": "CheckForNewlyLoadedMapAreas_West:\n #_02F345: REP #$30\n\n #_02F347: LDA.b $84\n\n.cull_more\n #_02F349: CMP.w #$0080\n #_02F34C: BCC .in_range\n\n #_02F34E: SBC.w #$0080\n #_02F351: BRA .cull_more\n\n.in_range\n #_02F353: CMP.w #$0000\n #_02F356: BEQ .exit\n\n #_02F358: LDX.b $8A\n\n #_02F35A: LDA.l OverworldScreenSize,X\n #_02F35E: AND.w #$00FF\n #_02F361: BNE .dont_start_stripe\n\n; =========================================================\n\n#CheckForNewlyLoadedMapAreas_West_NewStripe:\n #_02F363: LDY.b $0E\n\n #_02F365: LDA.w #$8040\n #_02F368: STA.w $1100,Y\n\n #_02F36B: INY\n #_02F36C: INY\n #_02F36D: STY.b $0E\n\n #_02F36F: JSR BufferAndBuildMap16Stripes_Horizontal\n\n; ---------------------------------------------------------\n\n.dont_start_stripe\n #_02F372: DEC.b $84\n #_02F374: DEC.b $84\n\n #_02F376: LDA.b $86\n #_02F378: DEC A\n #_02F379: AND.w #$001F\n #_02F37C: STA.b $86\n\n.exit\n #_02F37E: RTS", + "file": "bank_02.asm" + }, + { + "name": "CheckForNewlyLoadedMapAreas_East", + "code": "CheckForNewlyLoadedMapAreas_East:\n #_02F37F: REP #$30\n\n #_02F381: LDA.b $84\n\n.cull_more\n #_02F383: CMP.w #$0080\n #_02F386: BCC .in_range\n\n #_02F388: SBC.w #$0080\n #_02F38B: BRA .cull_more\n\n.in_range\n #_02F38D: CMP.w #$0060\n #_02F390: BCS .exit\n\n #_02F392: LDX.b $8A\n\n #_02F394: LDA.l OverworldScreenSize,X\n #_02F398: AND.w #$00FF\n #_02F39B: BNE .dont_start_stripe\n\n; =========================================================\n\n#CheckForNewlyLoadedMapAreas_East_NewStripe:\n #_02F39D: LDY.b $0E\n\n #_02F39F: LDA.w #$8040\n #_02F3A2: STA.w $1100,Y\n\n #_02F3A5: INY\n #_02F3A6: INY\n #_02F3A7: STY.b $0E\n\n #_02F3A9: JSR BufferAndBuildMap16Stripes_Horizontal\n\n; ---------------------------------------------------------\n\n.dont_start_stripe\n #_02F3AC: INC.b $84\n #_02F3AE: INC.b $84\n\n #_02F3B0: LDA.b $86\n #_02F3B2: INC A\n #_02F3B3: AND.w #$001F\n #_02F3B6: STA.b $86\n\n.exit\n #_02F3B8: RTS", + "file": "bank_02.asm" + }, + { + "name": "BufferAndBuildMap16Stripes_Horizontal", + "code": "BufferAndBuildMap16Stripes_Horizontal:\n #_02F3B9: LDA.w $0416\n #_02F3BC: AND.w #$0002\n #_02F3BF: TAX\n\n #_02F3C0: LDA.b $84\n #_02F3C2: SEC\n #_02F3C3: SBC.l Map16ReadOffset_Horizontal,X\n #_02F3C7: TAY\n\n #_02F3C8: LDA.b $88\n #_02F3CA: ASL A\n #_02F3CB: TAX\n\n #_02F3CC: LDA.w #$2000\n #_02F3CF: STA.b $00\n\n #_02F3D1: LDA.w #$007E\n #_02F3D4: STA.b $02\n\n #_02F3D6: LDA.w #$0010\n #_02F3D9: STA.b $03\n\n; ---------------------------------------------------------\n\n.next\n #_02F3DB: LDA.b [$00],Y\n #_02F3DD: STA.w $0500,X\n\n #_02F3E0: INX\n #_02F3E1: INX\n\n #_02F3E2: TXA\n #_02F3E3: AND.w #$003F\n #_02F3E6: TAX\n\n #_02F3E7: TYA\n #_02F3E8: CLC\n #_02F3E9: ADC.w #$0080\n #_02F3EC: TAY\n\n #_02F3ED: LDA.b [$00],Y\n #_02F3EF: STA.w $0500,X\n\n #_02F3F2: INX\n #_02F3F3: INX\n\n #_02F3F4: TXA\n #_02F3F5: AND.w #$003F\n #_02F3F8: TAX\n\n #_02F3F9: TYA\n #_02F3FA: CLC\n #_02F3FB: ADC.w #$0080\n #_02F3FE: TAY\n\n #_02F3FF: DEC.b $03\n #_02F401: BNE .next\n\n; ---------------------------------------------------------\n\n #_02F403: STZ.b $00\n\n #_02F405: LDA.b $86\n #_02F407: STA.b $02\n\n #_02F409: CMP.w #$0010\n #_02F40C: BCC .start_low\n\n #_02F40E: AND.w #$000F\n #_02F411: STA.b $02\n\n #_02F413: LDA.w #$0400\n #_02F416: STA.b $00\n\n.start_low\n #_02F418: LDA.b $02\n #_02F41A: ASL A\n #_02F41B: CLC\n #_02F41C: ADC.b $00\n #_02F41E: STA.b $00\n\n #_02F420: CLC\n #_02F421: ADC.w #$0800\n #_02F424: STA.b $0C\n\n #_02F426: LDA.l Map16BufferOffsetLow\n #_02F42A: JSR CreateMap16Stripes_Horizontal\n\n #_02F42D: LDA.b $0C\n #_02F42F: STA.b $00\n\n #_02F431: LDA.l Map16BufferOffsetHigh\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "CreateMap16Stripes_Horizontal", + "code": "CreateMap16Stripes_Horizontal:\n #_02F435: STA.b $02\n\n #_02F437: LDY.b $0E\n\n #_02F439: LDA.b $00\n #_02F43B: STA.w $1100,Y\n\n #_02F43E: INC A\n #_02F43F: STA.w $1142,Y\n\n #_02F442: INY\n #_02F443: INY\n\n #_02F444: LDA.w #$0010\n #_02F447: STA.b $06\n\n; ---------------------------------------------------------\n\n.next\n #_02F449: LDX.b $02\n\n #_02F44B: LDA.w $0500,X\n\n #_02F44E: INX\n #_02F44F: INX\n #_02F450: STX.b $02\n\n #_02F452: ASL A\n #_02F453: ASL A\n #_02F454: ASL A\n #_02F455: TAX\n\n #_02F456: LDA.l Map16Definitions+0,X\n #_02F45A: STA.w $1100,Y\n\n #_02F45D: LDA.l Map16Definitions+2,X\n #_02F461: STA.w $1142,Y\n\n #_02F464: INY\n #_02F465: INY\n\n #_02F466: LDA.l Map16Definitions+4,X\n #_02F46A: STA.w $1100,Y\n\n #_02F46D: LDA.l Map16Definitions+6,X\n #_02F471: STA.w $1142,Y\n\n #_02F474: INY\n #_02F475: INY\n\n #_02F476: DEC.b $06\n #_02F478: BNE .next\n\n; ---------------------------------------------------------\n\n #_02F47A: TYA\n #_02F47B: CLC\n #_02F47C: ADC.w #$0042\n #_02F47F: STA.b $0E\n\n #_02F481: RTS", + "file": "bank_02.asm" + }, + { + "name": "BufferAndBuildMap16Stripes_Vertical", + "code": "BufferAndBuildMap16Stripes_Vertical:\n #_02F482: LDA.w $0416\n #_02F485: AND.w #$0004\n #_02F488: LSR A\n #_02F489: TAX\n\n #_02F48A: LDA.b $84\n #_02F48C: SEC\n #_02F48D: SBC.l Map16ReadOffset_Vertical,X\n #_02F491: TAY\n\n #_02F492: LDA.b $86\n #_02F494: ASL A\n #_02F495: TAX\n\n #_02F496: LDA.w #$2000\n #_02F499: STA.b $00\n\n #_02F49B: LDA.w #$007E\n #_02F49E: STA.b $02\n\n #_02F4A0: LDA.w #$0010\n #_02F4A3: STA.b $03\n\n; ---------------------------------------------------------\n\n.next\n #_02F4A5: LDA.b [$00],Y\n #_02F4A7: STA.w $0500,X\n\n #_02F4AA: INX\n #_02F4AB: INX\n\n #_02F4AC: TXA\n #_02F4AD: AND.w #$003F\n #_02F4B0: TAX\n\n #_02F4B1: INY\n #_02F4B2: INY\n\n #_02F4B3: LDA.b [$00],Y\n #_02F4B5: STA.w $0500,X\n\n #_02F4B8: INX\n #_02F4B9: INX\n\n #_02F4BA: TXA\n #_02F4BB: AND.w #$003F\n #_02F4BE: TAX\n\n #_02F4BF: INY\n #_02F4C0: INY\n\n #_02F4C1: DEC.b $03\n #_02F4C3: BNE .next\n\n; ---------------------------------------------------------\n\n #_02F4C5: STZ.b $00\n\n #_02F4C7: LDA.b $88\n #_02F4C9: STA.b $02\n\n #_02F4CB: CMP.w #$0010\n #_02F4CE: BCC .start_low\n\n #_02F4D0: AND.w #$000F\n #_02F4D3: STA.b $02\n\n #_02F4D5: LDA.w #$0800\n #_02F4D8: STA.b $00\n\n.start_low\n #_02F4DA: LDA.b $02\n\n #_02F4DC: ASL A\n #_02F4DD: ASL A\n #_02F4DE: ASL A\n #_02F4DF: ASL A\n #_02F4E0: ASL A\n #_02F4E1: ASL A\n\n #_02F4E2: CLC\n #_02F4E3: ADC.b $00\n #_02F4E5: STA.b $00\n\n #_02F4E7: CLC\n #_02F4E8: ADC.w #$0400\n #_02F4EB: STA.b $0C\n\n #_02F4ED: LDY.b $0E\n\n #_02F4EF: LDA.b $00\n #_02F4F1: STA.w $1100,Y\n\n #_02F4F4: INY\n #_02F4F5: INY\n\n #_02F4F6: LDA.l Map16BufferOffsetLow\n #_02F4FA: JSR CreateMap16Stripes_Vertical\n\n #_02F4FD: LDY.b $0E\n\n #_02F4FF: LDA.b $0C\n #_02F501: STA.w $1100,Y\n\n #_02F504: INY\n #_02F505: INY\n #_02F506: LDA.l Map16BufferOffsetHigh\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "CreateMap16Stripes_Vertical", + "code": "CreateMap16Stripes_Vertical:\n #_02F50A: STA.b $02\n\n #_02F50C: LDA.w #$0010\n #_02F50F: STA.b $06\n\n; ---------------------------------------------------------\n\n.next\n #_02F511: LDX.b $02\n\n #_02F513: LDA.w $0500,X\n\n #_02F516: INX\n #_02F517: INX\n #_02F518: STX.b $02\n\n #_02F51A: ASL A\n #_02F51B: ASL A\n #_02F51C: ASL A\n #_02F51D: TAX\n\n #_02F51E: LDA.l Map16Definitions+0,X\n #_02F522: STA.w $1100,Y\n\n #_02F525: LDA.l Map16Definitions+4,X\n #_02F529: STA.w $1140,Y\n\n #_02F52C: INY\n #_02F52D: INY\n\n #_02F52E: LDA.l Map16Definitions+2,X\n #_02F532: STA.w $1100,Y\n\n #_02F535: LDA.l Map16Definitions+6,X\n #_02F539: STA.w $1140,Y\n\n #_02F53C: INY\n #_02F53D: INY\n\n #_02F53E: DEC.b $06\n #_02F540: BNE .next\n\n; ---------------------------------------------------------\n\n #_02F542: TYA\n #_02F543: CLC\n #_02F544: ADC.w #$0040\n #_02F547: STA.b $0E\n\n #_02F549: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DecompressAndDrawAllQuadrants", + "code": "Overworld_DecompressAndDrawAllQuadrants:\n #_02F54A: LDA.b $8A\n #_02F54C: ASL A\n #_02F54D: ADC.b $8A\n #_02F54F: TAX\n\n #_02F550: LDA.w #$007E\n #_02F553: STA.b $02\n #_02F555: STA.b $05\n\n #_02F557: LDA.w #$2000\n #_02F55A: JSR Overworld_DecompressAndDrawOneQuadrant\n\n; ---------------------------------------------------------\n\n #_02F55D: LDA.b $8A\n #_02F55F: INC A\n #_02F560: STA.b $00\n\n #_02F562: ASL A\n #_02F563: ADC.b $00\n #_02F565: TAX\n\n #_02F566: LDA.w #$2000\n #_02F569: CLC\n #_02F56A: ADC.w #$0040\n #_02F56D: JSR Overworld_DecompressAndDrawOneQuadrant\n\n; ---------------------------------------------------------\n\n #_02F570: LDA.b $8A\n #_02F572: CLC\n #_02F573: ADC.w #$0008\n #_02F576: STA.b $00\n\n #_02F578: ASL A\n #_02F579: ADC.b $00\n #_02F57B: TAX\n\n #_02F57C: LDA.w #$3000\n #_02F57F: JSR Overworld_DecompressAndDrawOneQuadrant\n\n; ---------------------------------------------------------\n\n #_02F582: LDA.b $8A\n #_02F584: CLC\n #_02F585: ADC.w #$0009\n #_02F588: STA.b $00\n\n #_02F58A: ASL A\n #_02F58B: ADC.b $00\n #_02F58D: TAX\n\n #_02F58E: LDA.w #$3000\n #_02F591: CLC\n #_02F592: ADC.w #$0040\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Overworld_DecompressAndDrawOneQuadrant", + "code": "Overworld_DecompressAndDrawOneQuadrant:\n #_02F595: STA.b $00\n\n #_02F597: CLC\n #_02F598: ADC.w #$0080\n #_02F59B: STA.b $03\n\n #_02F59D: LDA.l OverworldLoad_Map32HPointers+0,X\n #_02F5A1: STA.b $C8\n\n #_02F5A3: LDA.l OverworldLoad_Map32HPointers+1,X\n #_02F5A7: STA.b $C9\n\n #_02F5A9: LDA.b $00\n #_02F5AB: PHA\n\n #_02F5AC: LDA.b $02\n #_02F5AE: PHA\n\n #_02F5AF: LDA.b $04\n #_02F5B1: PHA\n\n #_02F5B2: LDA.w #$7F4400\n #_02F5B5: STA.b $00\n\n #_02F5B7: LDA.w #$007F\n #_02F5BA: STA.b $02\n\n #_02F5BC: PHX\n\n #_02F5BD: SEP #$30\n\n #_02F5BF: JSR Decompress_bank02\n\n #_02F5C2: REP #$30\n\n #_02F5C4: JSR BlockMoveMap32Chunks_High\n\n #_02F5C7: PLX\n\n; ---------------------------------------------------------\n\n #_02F5C8: LDA.l OverworldLoad_Map32LPointers+0,X\n #_02F5CC: STA.b $C8\n\n #_02F5CE: LDA.l OverworldLoad_Map32LPointers+1,X\n #_02F5D2: STA.b $C9\n\n #_02F5D4: LDA.w #$7F4400\n #_02F5D7: STA.b $00\n\n #_02F5D9: LDA.w #$007F\n #_02F5DC: STA.b $02\n\n #_02F5DE: PHX\n\n #_02F5DF: SEP #$30\n\n #_02F5E1: JSR Decompress_bank02\n\n #_02F5E4: REP #$30\n\n #_02F5E6: JSR BlockMoveMap32Chunks_Low\n\n #_02F5E9: PLX\n\n; ---------------------------------------------------------\n\n #_02F5EA: PLA\n #_02F5EB: STA.b $04\n\n #_02F5ED: PLA\n #_02F5EE: STA.b $02\n\n #_02F5F0: PLA\n #_02F5F1: STA.b $00\n\n #_02F5F3: LDA.w #$7F4000\n #_02F5F6: STA.b $08\n\n #_02F5F8: LDA.w #$007F\n #_02F5FB: STA.b $0A\n\n #_02F5FD: SEP #$20\n\n #_02F5FF: PHB\n\n #_02F600: LDA.b #$7F\n #_02F602: PHA\n #_02F603: PLB\n\n #_02F604: REP #$30\n\n #_02F606: LDA.w #$FFFF\n #_02F609: STA.w $7F4440\n\n #_02F60C: STZ.b $06\n #_02F60E: STZ.b $0B\n\n; ---------------------------------------------------------\n\n.next_a\n #_02F610: LDA.w #$0010\n #_02F613: STA.b $0D\n\n.next_b\n #_02F615: LDY.b $0B\n\n #_02F617: LDA.b [$08],Y\n #_02F619: ASL A\n\n #_02F61A: LDY.b $06\n #_02F61C: JSR Overworld_ParseMap32Definition\n\n #_02F61F: STY.b $06\n\n #_02F621: INC.b $0B\n #_02F623: INC.b $0B\n\n #_02F625: DEC.b $0D\n #_02F627: BNE .next_b\n\n #_02F629: LDA.b $06\n #_02F62B: CLC\n #_02F62C: ADC.w #$00C0\n #_02F62F: STA.b $06\n\n #_02F631: CMP.w #$1000\n #_02F634: BCC .next_a\n\n #_02F636: PLB\n\n #_02F637: RTS", + "file": "bank_02.asm" + }, + { + "name": "BlockMoveMap32Chunks_High", + "code": "BlockMoveMap32Chunks_High:\n #_02F638: SEP #$20\n\n #_02F63A: PHB\n\n #_02F63B: LDA.b #$7F\n #_02F63D: PHA\n #_02F63E: PLB\n\n #_02F63F: STA.b $02\n\n #_02F641: REP #$30\n\n #_02F643: LDX.w #$0000\n #_02F646: LDY.w #$0001\n\n #_02F649: LDA.w #$7F4000\n #_02F64C: STA.b $00\n\n #_02F64E: SEP #$20\n\n; ---------------------------------------------------------\n\n.next\n #_02F650: LDA.w $7F4400,X\n #_02F653: STA.b [$00],Y\n\n #_02F655: INY\n #_02F656: INY\n\n #_02F657: INX\n\n #_02F658: LDA.w $7F4400,X\n #_02F65B: STA.b [$00],Y\n\n #_02F65D: INY\n #_02F65E: INY\n\n #_02F65F: INX\n\n #_02F660: LDA.w $7F4400,X\n #_02F663: STA.b [$00],Y\n\n #_02F665: INY\n #_02F666: INY\n\n #_02F667: INX\n\n #_02F668: LDA.w $7F4400,X\n #_02F66B: STA.b [$00],Y\n\n #_02F66D: INY\n #_02F66E: INY\n\n #_02F66F: INX\n #_02F670: CPX.w #$0100\n #_02F673: BCC .next\n\n #_02F675: REP #$30\n\n #_02F677: PLB\n\n #_02F678: RTS", + "file": "bank_02.asm" + }, + { + "name": "Overworld_ParseMap32Definition", + "code": "Overworld_ParseMap32Definition:\n #_02F691: PHA\n\n #_02F692: AND.w #$FFF8\n #_02F695: CMP.w $7F4440\n #_02F698: BNE .continue\n\n #_02F69A: JMP.w .skip\n\n; ---------------------------------------------------------\n\n.continue\n #_02F69D: STA.w $7F4440\n\n #_02F6A0: LSR A\n #_02F6A1: STA.w $7F4442\n\n #_02F6A4: LSR A\n #_02F6A5: ADC.w $7F4442\n #_02F6A8: TAX\n\n #_02F6A9: SEP #$20\n\n; ---------------------------------------------------------\n\n #_02F6AB: LDA.l Tile32_TopLeft+0,X\n #_02F6AF: STA.w $7F4400\n\n #_02F6B2: LDA.l Tile32_TopLeft+1,X\n #_02F6B6: STA.w $7F4402\n\n #_02F6B9: LDA.l Tile32_TopLeft+2,X\n #_02F6BD: STA.w $7F4404\n\n #_02F6C0: LDA.l Tile32_TopLeft+3,X\n #_02F6C4: STA.w $7F4406\n\n #_02F6C7: LDA.l Tile32_TopLeft+4,X\n #_02F6CB: PHA\n\n #_02F6CC: LSR A\n #_02F6CD: LSR A\n #_02F6CE: LSR A\n #_02F6CF: LSR A\n #_02F6D0: STA.w $7F4401\n\n #_02F6D3: PLA\n #_02F6D4: AND.b #$0F\n #_02F6D6: STA.w $7F4403\n\n #_02F6D9: LDA.l Tile32_TopLeft+5,X\n #_02F6DD: PHA\n\n #_02F6DE: LSR A\n #_02F6DF: LSR A\n #_02F6E0: LSR A\n #_02F6E1: LSR A\n #_02F6E2: STA.w $7F4405\n\n #_02F6E5: PLA\n #_02F6E6: AND.b #$0F\n #_02F6E8: STA.w $7F4407\n\n; ---------------------------------------------------------\n\n #_02F6EB: LDA.l Tile32_TopRight+0,X\n #_02F6EF: STA.w $7F4410\n\n #_02F6F2: LDA.l Tile32_TopRight+1,X\n #_02F6F6: STA.w $7F4412\n\n #_02F6F9: LDA.l Tile32_TopRight+2,X\n #_02F6FD: STA.w $7F4414\n\n #_02F700: LDA.l Tile32_TopRight+3,X\n #_02F704: STA.w $7F4416\n\n #_02F707: LDA.l Tile32_TopRight+4,X\n #_02F70B: PHA\n\n #_02F70C: LSR A\n #_02F70D: LSR A\n #_02F70E: LSR A\n #_02F70F: LSR A\n #_02F710: STA.w $7F4411\n\n #_02F713: PLA\n #_02F714: AND.b #$0F\n #_02F716: STA.w $7F4413\n\n #_02F719: LDA.l Tile32_TopRight+5,X\n #_02F71D: PHA\n\n #_02F71E: LSR A\n #_02F71F: LSR A\n #_02F720: LSR A\n #_02F721: LSR A\n #_02F722: STA.w $7F4415\n\n #_02F725: PLA\n #_02F726: AND.b #$0F\n #_02F728: STA.w $7F4417\n\n; ---------------------------------------------------------\n\n #_02F72B: LDA.l Tile32_BottomLeft+0,X\n #_02F72F: STA.w $7F4420\n\n #_02F732: LDA.l Tile32_BottomLeft+1,X\n #_02F736: STA.w $7F4422\n\n #_02F739: LDA.l Tile32_BottomLeft+2,X\n #_02F73D: STA.w $7F4424\n\n #_02F740: LDA.l Tile32_BottomLeft+3,X\n #_02F744: STA.w $7F4426\n\n #_02F747: LDA.l Tile32_BottomLeft+4,X\n #_02F74B: PHA\n\n #_02F74C: LSR A\n #_02F74D: LSR A\n #_02F74E: LSR A\n #_02F74F: LSR A\n #_02F750: STA.w $7F4421\n\n #_02F753: PLA\n #_02F754: AND.b #$0F\n #_02F756: STA.w $7F4423\n\n #_02F759: LDA.l Tile32_BottomLeft+5,X\n #_02F75D: PHA\n\n #_02F75E: LSR A\n #_02F75F: LSR A\n #_02F760: LSR A\n #_02F761: LSR A\n #_02F762: STA.w $7F4425\n\n #_02F765: PLA\n #_02F766: AND.b #$0F\n #_02F768: STA.w $7F4427\n\n; ---------------------------------------------------------\n\n #_02F76B: LDA.l Tile32_BottomRight+0,X\n #_02F76F: STA.w $7F4430\n\n #_02F772: LDA.l Tile32_BottomRight+1,X\n #_02F776: STA.w $7F4432\n\n #_02F779: LDA.l Tile32_BottomRight+2,X\n #_02F77D: STA.w $7F4434\n\n #_02F780: LDA.l Tile32_BottomRight+3,X\n #_02F784: STA.w $7F4436\n\n #_02F787: LDA.l Tile32_BottomRight+4,X\n #_02F78B: PHA\n\n #_02F78C: LSR A\n #_02F78D: LSR A\n #_02F78E: LSR A\n #_02F78F: LSR A\n #_02F790: STA.w $7F4431\n\n #_02F793: PLA\n #_02F794: AND.b #$0F\n #_02F796: STA.w $7F4433\n\n #_02F799: LDA.l Tile32_BottomRight+5,X\n #_02F79D: PHA\n\n #_02F79E: LSR A\n #_02F79F: LSR A\n #_02F7A0: LSR A\n #_02F7A1: LSR A\n #_02F7A2: STA.w $7F4435\n\n #_02F7A5: PLA\n #_02F7A6: AND.b #$0F\n #_02F7A8: STA.w $7F4437\n\n #_02F7AB: REP #$30\n\n; ---------------------------------------------------------\n\n.skip\n #_02F7AD: PLA\n #_02F7AE: AND.w #$0007\n #_02F7B1: TAX\n\n #_02F7B2: LDA.w $7F4400,X\n #_02F7B5: STA.b [$00],Y\n\n #_02F7B7: LDA.w $7F4420,X\n #_02F7BA: STA.b [$03],Y\n\n #_02F7BC: INY\n #_02F7BD: INY\n\n #_02F7BE: LDA.w $7F4410,X\n #_02F7C1: STA.b [$00],Y\n\n #_02F7C3: LDA.w $7F4430,X\n #_02F7C6: STA.b [$03],Y\n\n #_02F7C8: INY\n #_02F7C9: INY\n\n #_02F7CA: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoad_LoadSubOverlayMap32", + "code": "OverworldLoad_LoadSubOverlayMap32:\n #_02F7CB: LDA.b $8A\n #_02F7CD: ASL A\n #_02F7CE: ADC.b $8A\n #_02F7D0: TAX\n\n #_02F7D1: LDA.w #$007E\n #_02F7D4: STA.b $02\n #_02F7D6: STA.b $05\n\n #_02F7D8: LDA.w #$7E4000\n #_02F7DB: STA.b $00\n\n #_02F7DD: CLC\n #_02F7DE: ADC.w #$0080\n #_02F7E1: STA.b $03\n\n #_02F7E3: LDA.l OverworldLoad_Map32HPointers+0,X\n #_02F7E7: STA.b $C8\n\n #_02F7E9: LDA.l OverworldLoad_Map32HPointers+1,X\n #_02F7ED: STA.b $C9\n\n; ---------------------------------------------------------\n\n #_02F7EF: LDA.b $00\n #_02F7F1: PHA\n\n #_02F7F2: LDA.b $02\n #_02F7F4: PHA\n\n #_02F7F5: LDA.b $04\n #_02F7F7: PHA\n\n #_02F7F8: LDA.w #$7F4400\n #_02F7FB: STA.b $00\n\n #_02F7FD: LDA.w #$007F\n #_02F800: STA.b $02\n\n; ---------------------------------------------------------\n\n #_02F802: PHX\n\n #_02F803: SEP #$30\n\n #_02F805: JSR Decompress_bank02\n\n #_02F808: REP #$30\n\n #_02F80A: JSR BlockMoveMap32Chunks_High\n\n; ---------------------------------------------------------\n\n #_02F80D: PLX\n\n #_02F80E: LDA.l OverworldLoad_Map32LPointers+0,X\n #_02F812: STA.b $C8\n\n #_02F814: LDA.l OverworldLoad_Map32LPointers+1,X\n #_02F818: STA.b $C9\n\n #_02F81A: LDA.w #$7F4400\n #_02F81D: STA.b $00\n\n #_02F81F: LDA.w #$007F\n #_02F822: STA.b $02\n\n; ---------------------------------------------------------\n\n #_02F824: PHX\n\n #_02F825: SEP #$30\n\n #_02F827: JSR Decompress_bank02\n\n #_02F82A: REP #$30\n\n #_02F82C: JSR BlockMoveMap32Chunks_Low\n\n #_02F82F: PLX\n\n; ---------------------------------------------------------\n\n #_02F830: PLA\n #_02F831: STA.b $04\n\n #_02F833: PLA\n #_02F834: STA.b $02\n\n #_02F836: PLA\n #_02F837: STA.b $00\n\n #_02F839: LDA.w #$7F4000\n #_02F83C: STA.b $08\n\n #_02F83E: LDA.w #$007F\n #_02F841: STA.b $0A\n\n; ---------------------------------------------------------\n\n #_02F843: SEP #$20\n\n #_02F845: PHB\n\n #_02F846: LDA.b #$7F\n #_02F848: PHA\n #_02F849: PLB\n\n #_02F84A: REP #$30\n\n #_02F84C: LDA.w #$FFFF\n #_02F84F: STA.w $7F4440\n\n #_02F852: STZ.b $06\n #_02F854: STZ.b $0B\n\n.next_a\n #_02F856: LDA.w #$0010\n #_02F859: STA.b $0D\n\n.next_b\n #_02F85B: LDY.b $0B\n\n #_02F85D: LDA.b [$08],Y\n #_02F85F: ASL A\n #_02F860: TAX\n\n #_02F861: LDY.b $06\n #_02F863: JSR Overworld_ParseMap32Definition\n\n #_02F866: STY.b $06\n\n #_02F868: INC.b $0B\n #_02F86A: INC.b $0B\n\n #_02F86C: DEC.b $0D\n #_02F86E: BNE .next_b\n\n #_02F870: LDA.b $06\n #_02F872: CLC\n #_02F873: ADC.w #$00C0\n #_02F876: STA.b $06\n\n #_02F878: CMP.w #$1000\n #_02F87B: BCC .next_a\n\n #_02F87D: PLB\n\n #_02F87E: RTS", + "file": "bank_02.asm" + }, + { + "name": "UNREACHABLE_02F87F", + "code": "UNREACHABLE_02F87F:\n #_02F87F: dw $0002, $0004\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "Map16ReadOffset_Horizontal", + "code": "Map16ReadOffset_Horizontal:\n #_02F883: dw $03D0\n", + "file": "bank_02.asm" + }, + { + "name": "Map16ReadOffset_Vertical", + "code": "Map16ReadOffset_Vertical:\n #_02F885: dw $0410, $F410\n", + "file": "bank_02.asm" + }, + { + "name": "Map16BufferOffsetLow", + "code": "Map16BufferOffsetLow:\n #_02F889: dw $0000\n", + "file": "bank_02.asm" + }, + { + "name": "Map16BufferOffsetHigh", + "code": "Map16BufferOffsetHigh:\n #_02F88B: dw $0020\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldScreenSize", + "code": "OverworldScreenSize:\n #_02F88D: db $00, $00, $01, $00, $00, $00, $00, $01\n #_02F895: db $00, $00, $01, $00, $00, $00, $00, $01\n #_02F89D: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02F8A5: db $00, $00, $01, $00, $00, $01, $00, $00\n #_02F8AD: db $00, $00, $01, $00, $00, $01, $00, $00\n #_02F8B5: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02F8BD: db $00, $00, $01, $01, $01, $00, $00, $01\n #_02F8C5: db $00, $00, $01, $01, $01, $00, $00, $01\n\n #_02F8CD: db $00, $00, $01, $00, $00, $00, $00, $01\n #_02F8D5: db $00, $00, $01, $00, $00, $00, $00, $01\n #_02F8DD: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02F8E5: db $00, $00, $01, $00, $00, $01, $00, $00\n #_02F8ED: db $00, $00, $01, $00, $00, $01, $00, $00\n #_02F8F5: db $01, $01, $01, $01, $01, $01, $01, $01\n #_02F8FD: db $00, $00, $01, $01, $01, $00, $00, $01\n #_02F905: db $00, $00, $01, $01, $01, $00, $00, $01\n\n #_02F90D: db $01, $00, $00, $00, $00, $00, $00, $00\n #_02F915: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F91D: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F925: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F92D: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F935: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F93D: db $00, $00, $00, $00, $00, $00, $00, $00\n #_02F945: db $00, $00, $00, $00, $00, $00, $00, $00\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoad_Map32HPointers", + "code": "OverworldLoad_Map32HPointers:\n #_02F94D: dl OverworldMap32_Screen00_High\n #_02F950: dl OverworldMap32_Screen01_High\n #_02F953: dl OverworldMap32_Screen02_High\n #_02F956: dl OverworldMap32_Screen03_High\n\n #_02F959: dl OverworldMap32_Screen04_High\n #_02F95C: dl OverworldMap32_Screen05_High\n #_02F95F: dl OverworldMap32_Screen06_High\n #_02F962: dl OverworldMap32_Screen07_High\n\n #_02F965: dl OverworldMap32_Screen08_High\n #_02F968: dl OverworldMap32_Screen09_High\n #_02F96B: dl OverworldMap32_Screen0A_High\n #_02F96E: dl OverworldMap32_Screen0B_High\n\n #_02F971: dl OverworldMap32_Screen0C_High\n #_02F974: dl OverworldMap32_Screen0D_High\n #_02F977: dl OverworldMap32_Screen0E_High\n #_02F97A: dl OverworldMap32_Screen0F_High\n\n #_02F97D: dl OverworldMap32_Screen10_High\n #_02F980: dl OverworldMap32_Screen11_High\n #_02F983: dl OverworldMap32_Screen12_High\n #_02F986: dl OverworldMap32_Screen13_High\n\n #_02F989: dl OverworldMap32_Screen14_High\n #_02F98C: dl OverworldMap32_Screen15_High\n #_02F98F: dl OverworldMap32_Screen16_High\n #_02F992: dl OverworldMap32_Screen17_High\n\n #_02F995: dl OverworldMap32_Screen18_High\n #_02F998: dl OverworldMap32_Screen19_High\n #_02F99B: dl OverworldMap32_Screen1A_High\n #_02F99E: dl OverworldMap32_Screen1B_High\n\n #_02F9A1: dl OverworldMap32_Screen1C_High\n #_02F9A4: dl OverworldMap32_Screen1D_High\n #_02F9A7: dl OverworldMap32_Screen1E_High\n #_02F9AA: dl OverworldMap32_Screen1F_High\n\n #_02F9AD: dl OverworldMap32_Screen20_High\n #_02F9B0: dl OverworldMap32_Screen21_High\n #_02F9B3: dl OverworldMap32_Screen22_High\n #_02F9B6: dl OverworldMap32_Screen23_High\n\n #_02F9B9: dl OverworldMap32_Screen24_High\n #_02F9BC: dl OverworldMap32_Screen25_High\n #_02F9BF: dl OverworldMap32_Screen26_High\n #_02F9C2: dl OverworldMap32_Screen27_High\n\n #_02F9C5: dl OverworldMap32_Screen28_High\n #_02F9C8: dl OverworldMap32_Screen29_High\n #_02F9CB: dl OverworldMap32_Screen2A_High\n #_02F9CE: dl OverworldMap32_Screen2B_High\n\n #_02F9D1: dl OverworldMap32_Screen2C_High\n #_02F9D4: dl OverworldMap32_Screen2D_High\n #_02F9D7: dl OverworldMap32_Screen2E_High\n #_02F9DA: dl OverworldMap32_Screen2F_High\n\n #_02F9DD: dl OverworldMap32_Screen30_High\n #_02F9E0: dl OverworldMap32_Screen31_High\n #_02F9E3: dl OverworldMap32_Screen32_High\n #_02F9E6: dl OverworldMap32_Screen33_High\n\n #_02F9E9: dl OverworldMap32_Screen34_High\n #_02F9EC: dl OverworldMap32_Screen35_High\n #_02F9EF: dl OverworldMap32_Screen36_High\n #_02F9F2: dl OverworldMap32_Screen37_High\n\n #_02F9F5: dl OverworldMap32_Screen38_High\n #_02F9F8: dl OverworldMap32_Screen39_High\n #_02F9FB: dl OverworldMap32_Screen3A_High\n #_02F9FE: dl OverworldMap32_Screen3B_High\n\n #_02FA01: dl OverworldMap32_Screen3C_High\n #_02FA04: dl OverworldMap32_Screen3D_High\n #_02FA07: dl OverworldMap32_Screen3E_High\n #_02FA0A: dl OverworldMap32_Screen3F_High\n\n; =========================================================\n\n #_02FA0D: dl OverworldMap32_Screen40_High\n #_02FA10: dl OverworldMap32_Screen41_High\n #_02FA13: dl OverworldMap32_Screen42_High\n #_02FA16: dl OverworldMap32_Screen43_High\n\n #_02FA19: dl OverworldMap32_Screen44_High\n #_02FA1C: dl OverworldMap32_Screen45_High\n #_02FA1F: dl OverworldMap32_Screen46_High\n #_02FA22: dl OverworldMap32_Screen47_High\n\n #_02FA25: dl OverworldMap32_Screen48_High\n #_02FA28: dl OverworldMap32_Screen49_High\n #_02FA2B: dl OverworldMap32_Screen0A_High\n #_02FA2E: dl OverworldMap32_Screen4B_High\n\n #_02FA31: dl OverworldMap32_Screen4C_High\n #_02FA34: dl OverworldMap32_Screen4D_High\n #_02FA37: dl OverworldMap32_Screen4E_High\n #_02FA3A: dl OverworldMap32_Screen4F_High\n\n #_02FA3D: dl OverworldMap32_Screen50_High\n #_02FA40: dl OverworldMap32_Screen11_High\n #_02FA43: dl OverworldMap32_Screen12_High\n #_02FA46: dl OverworldMap32_Screen53_High\n\n #_02FA49: dl OverworldMap32_Screen54_High\n #_02FA4C: dl OverworldMap32_Screen55_High\n #_02FA4F: dl OverworldMap32_Screen56_High\n #_02FA52: dl OverworldMap32_Screen17_High\n\n #_02FA55: dl OverworldMap32_Screen58_High\n #_02FA58: dl OverworldMap32_Screen59_High\n #_02FA5B: dl OverworldMap32_Screen5A_High\n #_02FA5E: dl OverworldMap32_Screen5B_High\n\n #_02FA61: dl OverworldMap32_Screen5C_High\n #_02FA64: dl OverworldMap32_Screen5D_High\n #_02FA67: dl OverworldMap32_Screen5E_High\n #_02FA6A: dl OverworldMap32_Screen5F_High\n\n #_02FA6D: dl OverworldMap32_Screen60_High\n #_02FA70: dl OverworldMap32_Screen61_High\n #_02FA73: dl OverworldMap32_Screen62_High\n #_02FA76: dl OverworldMap32_Screen63_High\n\n #_02FA79: dl OverworldMap32_Screen64_High\n #_02FA7C: dl OverworldMap32_Screen25_High\n #_02FA7F: dl OverworldMap32_Screen66_High\n #_02FA82: dl OverworldMap32_Screen67_High\n\n #_02FA85: dl OverworldMap32_Screen68_High\n #_02FA88: dl OverworldMap32_Screen69_High\n #_02FA8B: dl OverworldMap32_Screen2A_High\n #_02FA8E: dl OverworldMap32_Screen2B_High\n\n #_02FA91: dl OverworldMap32_Screen2C_High\n #_02FA94: dl OverworldMap32_Screen6D_High\n #_02FA97: dl OverworldMap32_Screen2E_High\n #_02FA9A: dl OverworldMap32_Screen2F_High\n\n #_02FA9D: dl OverworldMap32_Screen70_High\n #_02FAA0: dl OverworldMap32_Screen71_High\n #_02FAA3: dl OverworldMap32_Screen72_High\n #_02FAA6: dl OverworldMap32_Screen33_High\n\n #_02FAA9: dl OverworldMap32_Screen34_High\n #_02FAAC: dl OverworldMap32_Screen75_High\n #_02FAAF: dl OverworldMap32_Screen76_High\n #_02FAB2: dl OverworldMap32_Screen37_High\n\n #_02FAB5: dl OverworldMap32_Screen78_High\n #_02FAB8: dl OverworldMap32_Screen79_High\n #_02FABB: dl OverworldMap32_Screen7A_High\n #_02FABE: dl OverworldMap32_Screen3B_High\n\n #_02FAC1: dl OverworldMap32_Screen3C_High\n #_02FAC4: dl OverworldMap32_Screen7D_High\n #_02FAC7: dl OverworldMap32_Screen7E_High\n #_02FACA: dl OverworldMap32_Screen3F_High\n\n; =========================================================\n\n #_02FACD: dl OverworldMap32_Screen80_High\n #_02FAD0: dl OverworldMap32_Screen81_High\n #_02FAD3: dl OverworldMap32_Screen82_High\n #_02FAD6: dl OverworldMap32_Screen00_High\n\n #_02FAD9: dl OverworldMap32_Screen00_High\n #_02FADC: dl OverworldMap32_Screen00_High\n #_02FADF: dl OverworldMap32_Screen00_High\n #_02FAE2: dl OverworldMap32_Screen00_High\n\n #_02FAE5: dl OverworldMap32_Screen88_High\n #_02FAE8: dl OverworldMap32_Screen89_High\n #_02FAEB: dl OverworldMap32_Screen8A_High\n #_02FAEE: dl OverworldMap32_Screen00_High\n\n #_02FAF1: dl OverworldMap32_Screen00_High\n #_02FAF4: dl OverworldMap32_Screen00_High\n #_02FAF7: dl OverworldMap32_Screen00_High\n #_02FAFA: dl OverworldMap32_Screen00_High\n\n #_02FAFD: dl OverworldMap32_Screen00_High\n #_02FB00: dl OverworldMap32_Screen00_High\n #_02FB03: dl OverworldMap32_Screen00_High\n #_02FB06: dl OverworldMap32_Screen88_High\n\n #_02FB09: dl OverworldMap32_Screen80_High\n #_02FB0C: dl OverworldMap32_Screen95_High\n #_02FB0F: dl OverworldMap32_Screen96_High\n #_02FB12: dl OverworldMap32_Screen97_High\n\n #_02FB15: dl OverworldMap32_Screen00_High\n #_02FB18: dl OverworldMap32_Screen00_High\n #_02FB1B: dl OverworldMap32_Screen00_High\n #_02FB1E: dl OverworldMap32_Screen00_High\n\n #_02FB21: dl OverworldMap32_Screen9C_High\n #_02FB24: dl OverworldMap32_Screen97_High\n #_02FB27: dl OverworldMap32_Screen9E_High\n #_02FB2A: dl OverworldMap32_Screen9F_High\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldLoad_Map32LPointers", + "code": "OverworldLoad_Map32LPointers:\n #_02FB2D: dl OverworldMap32_Screen00_Low\n #_02FB30: dl OverworldMap32_Screen01_Low\n #_02FB33: dl OverworldMap32_Screen02_Low\n #_02FB36: dl OverworldMap32_Screen03_Low\n\n #_02FB39: dl OverworldMap32_Screen04_Low\n #_02FB3C: dl OverworldMap32_Screen05_Low\n #_02FB3F: dl OverworldMap32_Screen06_Low\n #_02FB42: dl OverworldMap32_Screen07_Low\n\n #_02FB45: dl OverworldMap32_Screen08_Low\n #_02FB48: dl OverworldMap32_Screen09_Low\n #_02FB4B: dl OverworldMap32_Screen0A_Low\n #_02FB4E: dl OverworldMap32_Screen0B_Low\n\n #_02FB51: dl OverworldMap32_Screen0C_Low\n #_02FB54: dl OverworldMap32_Screen0D_Low\n #_02FB57: dl OverworldMap32_Screen0E_Low\n #_02FB5A: dl OverworldMap32_Screen0F_Low\n\n #_02FB5D: dl OverworldMap32_Screen10_Low\n #_02FB60: dl OverworldMap32_Screen11_Low\n #_02FB63: dl OverworldMap32_Screen12_Low\n #_02FB66: dl OverworldMap32_Screen13_Low\n\n #_02FB69: dl OverworldMap32_Screen14_Low\n #_02FB6C: dl OverworldMap32_Screen15_Low\n #_02FB6F: dl OverworldMap32_Screen16_Low\n #_02FB72: dl OverworldMap32_Screen17_Low\n\n #_02FB75: dl OverworldMap32_Screen18_Low\n #_02FB78: dl OverworldMap32_Screen19_Low\n #_02FB7B: dl OverworldMap32_Screen1A_Low\n #_02FB7E: dl OverworldMap32_Screen1B_Low\n\n #_02FB81: dl OverworldMap32_Screen1C_Low\n #_02FB84: dl OverworldMap32_Screen1D_Low\n #_02FB87: dl OverworldMap32_Screen1E_Low\n #_02FB8A: dl OverworldMap32_Screen1F_Low\n\n #_02FB8D: dl OverworldMap32_Screen20_Low\n #_02FB90: dl OverworldMap32_Screen21_Low\n #_02FB93: dl OverworldMap32_Screen22_Low\n #_02FB96: dl OverworldMap32_Screen23_Low\n\n #_02FB99: dl OverworldMap32_Screen24_Low\n #_02FB9C: dl OverworldMap32_Screen25_Low\n #_02FB9F: dl OverworldMap32_Screen26_Low\n #_02FBA2: dl OverworldMap32_Screen27_Low\n\n #_02FBA5: dl OverworldMap32_Screen28_Low\n #_02FBA8: dl OverworldMap32_Screen29_Low\n #_02FBAB: dl OverworldMap32_Screen2A_Low\n #_02FBAE: dl OverworldMap32_Screen2B_Low\n\n #_02FBB1: dl OverworldMap32_Screen2C_Low\n #_02FBB4: dl OverworldMap32_Screen2D_Low\n #_02FBB7: dl OverworldMap32_Screen2E_Low\n #_02FBBA: dl OverworldMap32_Screen2F_Low\n\n #_02FBBD: dl OverworldMap32_Screen30_Low\n #_02FBC0: dl OverworldMap32_Screen31_Low\n #_02FBC3: dl OverworldMap32_Screen32_Low\n #_02FBC6: dl OverworldMap32_Screen33_Low\n\n #_02FBC9: dl OverworldMap32_Screen34_Low\n #_02FBCC: dl OverworldMap32_Screen35_Low\n #_02FBCF: dl OverworldMap32_Screen36_Low\n #_02FBD2: dl OverworldMap32_Screen37_Low\n\n #_02FBD5: dl OverworldMap32_Screen38_Low\n #_02FBD8: dl OverworldMap32_Screen39_Low\n #_02FBDB: dl OverworldMap32_Screen3A_Low\n #_02FBDE: dl OverworldMap32_Screen3B_Low\n\n #_02FBE1: dl OverworldMap32_Screen3C_Low\n #_02FBE4: dl OverworldMap32_Screen3D_Low\n #_02FBE7: dl OverworldMap32_Screen3E_Low\n #_02FBEA: dl OverworldMap32_Screen3F_Low\n\n; =========================================================\n\n #_02FBED: dl OverworldMap32_Screen40_Low\n #_02FBF0: dl OverworldMap32_Screen41_Low\n #_02FBF3: dl OverworldMap32_Screen42_Low\n #_02FBF6: dl OverworldMap32_Screen43_Low\n\n #_02FBF9: dl OverworldMap32_Screen44_Low\n #_02FBFC: dl OverworldMap32_Screen45_Low\n #_02FBFF: dl OverworldMap32_Screen46_Low\n #_02FC02: dl OverworldMap32_Screen47_Low\n\n #_02FC05: dl OverworldMap32_Screen48_Low\n #_02FC08: dl OverworldMap32_Screen49_Low\n #_02FC0B: dl OverworldMap32_Screen0A_Low\n #_02FC0E: dl OverworldMap32_Screen4B_Low\n\n #_02FC11: dl OverworldMap32_Screen4C_Low\n #_02FC14: dl OverworldMap32_Screen4D_Low\n #_02FC17: dl OverworldMap32_Screen4E_Low\n #_02FC1A: dl OverworldMap32_Screen4F_Low\n\n #_02FC1D: dl OverworldMap32_Screen50_Low\n #_02FC20: dl OverworldMap32_Screen11_Low\n #_02FC23: dl OverworldMap32_Screen12_Low\n #_02FC26: dl OverworldMap32_Screen53_Low\n\n #_02FC29: dl OverworldMap32_Screen54_Low\n #_02FC2C: dl OverworldMap32_Screen55_Low\n #_02FC2F: dl OverworldMap32_Screen56_Low\n #_02FC32: dl OverworldMap32_Screen17_Low\n\n #_02FC35: dl OverworldMap32_Screen58_Low\n #_02FC38: dl OverworldMap32_Screen59_Low\n #_02FC3B: dl OverworldMap32_Screen5A_Low\n #_02FC3E: dl OverworldMap32_Screen5B_Low\n\n #_02FC41: dl OverworldMap32_Screen5C_Low\n #_02FC44: dl OverworldMap32_Screen5D_Low\n #_02FC47: dl OverworldMap32_Screen5E_Low\n #_02FC4A: dl OverworldMap32_Screen5F_Low\n\n #_02FC4D: dl OverworldMap32_Screen60_Low\n #_02FC50: dl OverworldMap32_Screen61_Low\n #_02FC53: dl OverworldMap32_Screen62_Low\n #_02FC56: dl OverworldMap32_Screen63_Low\n\n #_02FC59: dl OverworldMap32_Screen64_Low\n #_02FC5C: dl OverworldMap32_Screen25_Low\n #_02FC5F: dl OverworldMap32_Screen66_Low\n #_02FC62: dl OverworldMap32_Screen67_Low\n\n #_02FC65: dl OverworldMap32_Screen68_Low\n #_02FC68: dl OverworldMap32_Screen69_Low\n #_02FC6B: dl OverworldMap32_Screen2A_Low\n #_02FC6E: dl OverworldMap32_Screen2B_Low\n\n #_02FC71: dl OverworldMap32_Screen2C_Low\n #_02FC74: dl OverworldMap32_Screen6D_Low\n #_02FC77: dl OverworldMap32_Screen2E_Low\n #_02FC7A: dl OverworldMap32_Screen2F_Low\n\n #_02FC7D: dl OverworldMap32_Screen70_Low\n #_02FC80: dl OverworldMap32_Screen71_Low\n #_02FC83: dl OverworldMap32_Screen72_Low\n #_02FC86: dl OverworldMap32_Screen33_Low\n\n #_02FC89: dl OverworldMap32_Screen34_Low\n #_02FC8C: dl OverworldMap32_Screen75_Low\n #_02FC8F: dl OverworldMap32_Screen76_Low\n #_02FC92: dl OverworldMap32_Screen37_Low\n\n #_02FC95: dl OverworldMap32_Screen78_Low\n #_02FC98: dl OverworldMap32_Screen79_Low\n #_02FC9B: dl OverworldMap32_Screen7A_Low\n #_02FC9E: dl OverworldMap32_Screen3B_Low\n\n #_02FCA1: dl OverworldMap32_Screen3C_Low\n #_02FCA4: dl OverworldMap32_Screen7D_Low\n #_02FCA7: dl OverworldMap32_Screen7E_Low\n #_02FCAA: dl OverworldMap32_Screen3F_Low\n\n; =========================================================\n\n #_02FCAD: dl OverworldMap32_Screen80_Low\n #_02FCB0: dl OverworldMap32_Screen81_Low\n #_02FCB3: dl OverworldMap32_Screen82_Low\n #_02FCB6: dl OverworldMap32_Screen00_Low\n\n #_02FCB9: dl OverworldMap32_Screen00_Low\n #_02FCBC: dl OverworldMap32_Screen00_Low\n #_02FCBF: dl OverworldMap32_Screen00_Low\n #_02FCC2: dl OverworldMap32_Screen00_Low\n\n #_02FCC5: dl OverworldMap32_Screen88_Low\n #_02FCC8: dl OverworldMap32_Screen89_Low\n #_02FCCB: dl OverworldMap32_Screen8A_Low\n #_02FCCE: dl OverworldMap32_Screen00_Low\n\n #_02FCD1: dl OverworldMap32_Screen00_Low\n #_02FCD4: dl OverworldMap32_Screen00_Low\n #_02FCD7: dl OverworldMap32_Screen00_Low\n #_02FCDA: dl OverworldMap32_Screen00_Low\n\n #_02FCDD: dl OverworldMap32_Screen00_Low\n #_02FCE0: dl OverworldMap32_Screen00_Low\n #_02FCE3: dl OverworldMap32_Screen00_Low\n #_02FCE6: dl OverworldMap32_Screen88_Low\n\n #_02FCE9: dl OverworldMap32_Screen80_Low\n #_02FCEC: dl OverworldMap32_Screen95_Low\n #_02FCEF: dl OverworldMap32_Screen96_Low\n #_02FCF2: dl OverworldMap32_Screen97_Low\n\n #_02FCF5: dl OverworldMap32_Screen00_Low\n #_02FCF8: dl OverworldMap32_Screen00_Low\n #_02FCFB: dl OverworldMap32_Screen00_Low\n #_02FCFE: dl OverworldMap32_Screen00_Low\n\n #_02FD01: dl OverworldMap32_Screen9C_Low\n #_02FD04: dl OverworldMap32_Screen97_Low\n #_02FD07: dl OverworldMap32_Screen9E_Low\n #_02FD0A: dl OverworldMap32_Screen9F_Low\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "LoadOverworldOverlay", + "code": "LoadOverworldOverlay:\n #_02FD0D: REP #$30\n\n #_02FD0F: JSR OverworldLoad_LoadSubOverlayMap32\n\n #_02FD12: LDA.w #$1000\n #_02FD15: STA.b $CC\n\n #_02FD17: SEP #$30\n\n #_02FD19: JSR BuildBGOverlayFromMap16\n\n #_02FD1C: LDA.b #$04\n #_02FD1E: STA.b $17\n #_02FD20: STA.w $0710\n\n #_02FD23: INC.b $11\n\n #_02FD25: RTS", + "file": "bank_02.asm" + }, + { + "name": "BuildBGOverlayFromMap16", + "code": "BuildBGOverlayFromMap16:\n #_02FD26: PHB\n\n #_02FD27: LDA.b #Map16Definitions>>16\n #_02FD29: PHA\n #_02FD2A: PLB\n\n #_02FD2B: REP #$30\n\n #_02FD2D: LDA.w #$7E4000\n #_02FD30: STA.b $04\n\n #_02FD32: LDA.w #$007E\n\n #_02FD35: BRA .start\n\n; =========================================================\n\n#BuildOverworldMapFromMap16:\n #_02FD37: PHB\n\n #_02FD38: LDA.b #Map16Definitions>>16\n #_02FD3A: PHA\n #_02FD3B: PLB\n\n #_02FD3C: REP #$30\n\n #_02FD3E: LDA.w #$7E2000\n #_02FD41: STA.b $04\n\n #_02FD43: LDA.w #$007E\n\n; =========================================================\n\n.start\n #_02FD46: STA.b $06\n\n #_02FD48: LDA.b $84\n #_02FD4A: CLC\n #_02FD4B: ADC.w #$1000\n #_02FD4E: STA.b $84\n\n #_02FD50: STZ.b $0A\n #_02FD52: STZ.b $0E\n\n #_02FD54: LDA.w #$0010\n #_02FD57: STA.b $08\n\n; ---------------------------------------------------------\n\n.next\n #_02FD59: JSR OverworldCopyMap16ToBuffer\n\n #_02FD5C: LDA.b $84\n #_02FD5E: SEC\n #_02FD5F: SBC.w #$0080\n #_02FD62: STA.b $84\n\n #_02FD64: LDA.b $88\n #_02FD66: DEC A\n #_02FD67: AND.w #$001F\n #_02FD6A: STA.b $88\n\n #_02FD6C: JSR OverworldCopyMap16ToBuffer\n\n #_02FD6F: LDA.b $84\n #_02FD71: SEC\n #_02FD72: SBC.w #$0080\n #_02FD75: STA.b $84\n\n #_02FD77: LDA.b $88\n #_02FD79: DEC A\n #_02FD7A: AND.w #$001F\n #_02FD7D: STA.b $88\n\n #_02FD7F: DEC.b $08\n #_02FD81: BNE .next\n\n; ---------------------------------------------------------\n\n #_02FD83: SEP #$30\n\n #_02FD85: PLB\n\n #_02FD86: RTS", + "file": "bank_02.asm" + }, + { + "name": "OverworldCopyMap16ToBuffer", + "code": "OverworldCopyMap16ToBuffer:\n #_02FD87: LDA.b $84\n #_02FD89: SEC\n #_02FD8A: SBC.w #$0410\n #_02FD8D: AND.w #$1FFF\n #_02FD90: TAY\n\n #_02FD91: LDA.b $86\n #_02FD93: ASL A\n #_02FD94: TAX\n\n #_02FD95: LDA.w #$0010\n #_02FD98: STA.b $00\n\n; ---------------------------------------------------------\n\n.next\n #_02FD9A: LDA.b [$04],Y\n #_02FD9C: STA.w $0500,X\n\n #_02FD9F: INX\n #_02FDA0: INX\n\n #_02FDA1: TXA\n #_02FDA2: AND.w #$003F\n #_02FDA5: TAX\n\n #_02FDA6: INY\n #_02FDA7: INY\n\n #_02FDA8: TYA\n #_02FDA9: AND.w #$1FFF\n #_02FDAC: TAY\n\n; ---------------------------------------------------------\n\n #_02FDAD: LDA.b [$04],Y\n #_02FDAF: STA.w $0500,X\n\n #_02FDB2: INX\n #_02FDB3: INX\n\n #_02FDB4: TXA\n #_02FDB5: AND.w #$003F\n #_02FDB8: TAX\n\n #_02FDB9: INY\n #_02FDBA: INY\n\n #_02FDBB: TYA\n #_02FDBC: AND.w #$1FFF\n #_02FDBF: TAY\n\n #_02FDC0: DEC.b $00\n #_02FDC2: BNE .next\n\n; ---------------------------------------------------------\n\n #_02FDC4: LDA.b $88\n #_02FDC6: STA.b $02\n\n #_02FDC8: CMP.w #$0010\n #_02FDCB: BCC .not_lower_half_yet\n\n #_02FDCD: AND.w #$000F\n #_02FDD0: STA.b $02\n\n #_02FDD2: LDA.w #$0800\n #_02FDD5: STA.b $00\n\n.not_lower_half_yet\n #_02FDD7: LDA.b $02\n\n #_02FDD9: ASL A\n #_02FDDA: ASL A\n #_02FDDB: ASL A\n #_02FDDC: ASL A\n #_02FDDD: ASL A\n #_02FDDE: ASL A\n\n #_02FDDF: CLC\n #_02FDE0: ADC.b $00\n #_02FDE2: STA.b $00\n\n #_02FDE4: LDA.l Map16BufferOffsetLow\n #_02FDE8: JSR OverworldCopyOneMap16Segment\n\n #_02FDEB: LDA.b $00\n #_02FDED: CLC\n #_02FDEE: ADC.w #$0400\n #_02FDF1: STA.b $00\n\n #_02FDF3: LDA.l Map16BufferOffsetHigh\n\n; =========================================================\n", + "file": "bank_02.asm" + }, + { + "name": "OverworldCopyOneMap16Segment", + "code": "OverworldCopyOneMap16Segment:\n #_02FDF7: STA.b $02\n\n #_02FDF9: LDX.b $0A\n\n #_02FDFB: LDA.b $00\n #_02FDFD: ORA.b $CC\n #_02FDFF: STA.l $7F4000,X\n\n #_02FE03: INX\n #_02FE04: INX\n #_02FE05: STX.b $0A\n\n #_02FE07: LDX.b $0E\n\n #_02FE09: LDA.w #$0010\n #_02FE0C: STA.b $0C\n\n; ---------------------------------------------------------\n\n.next\n #_02FE0E: LDY.b $02\n\n #_02FE10: LDA.w $0500,Y\n\n #_02FE13: INY\n #_02FE14: INY\n #_02FE15: STY.b $02\n\n #_02FE17: ASL A\n #_02FE18: ASL A\n #_02FE19: ASL A\n #_02FE1A: TAY\n\n #_02FE1B: LDA.w Map16Definitions+0,Y\n #_02FE1E: STA.l $7F2000,X\n\n #_02FE22: LDA.w Map16Definitions+4,Y\n #_02FE25: STA.l $7F2040,X\n\n #_02FE29: INX\n #_02FE2A: INX\n\n #_02FE2B: LDA.w Map16Definitions+2,Y\n #_02FE2E: STA.l $7F2000,X\n\n #_02FE32: LDA.w Map16Definitions+6,Y\n #_02FE35: STA.l $7F2040,X\n\n #_02FE39: INX\n #_02FE3A: INX\n\n #_02FE3B: DEC.b $0C\n #_02FE3D: BNE .next\n\n; ---------------------------------------------------------\n\n #_02FE3F: TXA\n #_02FE40: CLC\n #_02FE41: ADC.w #$0040\n #_02FE44: STA.b $0E\n\n #_02FE46: RTS", + "file": "bank_02.asm" + }, + { + "name": "MirrorBonk_RecoverChangedTiles", + "code": "MirrorBonk_RecoverChangedTiles:\n #_02FE47: REP #$30\n\n #_02FE49: LDA.w $04AC\n #_02FE4C: BEQ .exit\n\n #_02FE4E: LDX.w #$0000\n #_02FE51: STX.b $00\n\n; ---------------------------------------------------------\n\n.next\n #_02FE53: LDX.b $00\n\n #_02FE55: LDA.l $7EF800,X\n #_02FE59: TAY\n\n #_02FE5A: LDA.l $7EFA00,X\n #_02FE5E: TYX\n\n #_02FE5F: STA.l $7E2000,X\n\n #_02FE63: INC.b $00\n #_02FE65: INC.b $00\n\n #_02FE67: LDA.b $00\n #_02FE69: CMP.w $04AC\n #_02FE6C: BNE .next\n\n; ---------------------------------------------------------\n\n.exit\n #_02FE6E: SEP #$30\n\n #_02FE70: RTS", + "file": "bank_02.asm" + }, + { + "name": "DecompressEnemyDamageSubclasses", + "code": "DecompressEnemyDamageSubclasses:\n #_02FE71: LDA.b #$7F4000>>0\n #_02FE73: STA.b $00\n\n #_02FE75: LDA.b #$7F4000>>8\n #_02FE77: STA.b $01\n\n #_02FE79: LDA.b #$7F4000>>16\n #_02FE7B: STA.b $02\n\n #_02FE7D: LDA.b #EnemyDamageCompressed>>0\n #_02FE7F: STA.b $C8\n\n #_02FE81: LDA.b #EnemyDamageCompressed>>8\n #_02FE83: STA.b $C9\n\n #_02FE85: LDA.b #EnemyDamageCompressed>>16\n #_02FE87: STA.b $CA\n\n; ---------------------------------------------------------\n\n #_02FE89: JSR Decompress_bank02\n\n #_02FE8C: LDA.b #$7F4000>>0\n #_02FE8E: STA.b $00\n\n #_02FE90: LDA.b #$7F4000>>8\n #_02FE92: STA.b $01\n\n #_02FE94: LDA.b #$7F4000>>16\n #_02FE96: STA.b $02\n\n #_02FE98: REP #$10\n\n #_02FE9A: LDX.w #$0000\n #_02FE9D: TXY\n\n; ---------------------------------------------------------\n\n.next\n #_02FE9E: LDA.b [$00],Y\n #_02FEA0: PHA\n\n #_02FEA1: LSR A\n #_02FEA2: LSR A\n #_02FEA3: LSR A\n #_02FEA4: LSR A\n #_02FEA5: STA.l $7F6000+0,X\n\n #_02FEA9: PLA\n #_02FEAA: AND.b #$0F\n #_02FEAC: STA.l $7F6000+1,X\n\n #_02FEB0: INY\n\n #_02FEB1: INX\n #_02FEB2: INX\n #_02FEB3: CPX.w #$1000\n #_02FEB6: BCC .next\n\n; ---------------------------------------------------------\n\n #_02FEB8: SEP #$30\n\n #_02FEBA: RTL", + "file": "bank_02.asm" + }, + { + "name": "Decompress_bank02", + "code": "Decompress_bank02:\n #_02FEBB: REP #$10\n\n #_02FEBD: LDY.w #$0000\n\n.next_byte\n #_02FEC0: JSR .read_next_byte\n\n #_02FEC3: CMP.b #$FF\n #_02FEC5: BNE .continue\n\n #_02FEC7: SEP #$10\n\n #_02FEC9: RTS", + "file": "bank_02.asm" + }, + { + "name": "LinkOAM_PoseData", + "code": "LinkOAM_PoseData:\n #_0D8000: db 0, 0, $00 ; 0x0000\n #_0D8003: db 1, 0, $00 ; 0x0001\n #_0D8006: db 2, 0, $00 ; 0x0002\n #_0D8009: db 1, 0, $04 ; 0x0003\n #_0D800C: db 2, 0, $04 ; 0x0004\n #_0D800F: db 0, 0, $00 ; 0x0005\n #_0D8012: db 1, 0, $00 ; 0x0006\n #_0D8015: db 2, 0, $00 ; 0x0007\n #_0D8018: db 1, 0, $04 ; 0x0008\n #_0D801B: db 2, 0, $04 ; 0x0009\n #_0D801E: db 0, 1, $44 ; 0x000A\n #_0D8021: db 1, 1, $44 ; 0x000B\n #_0D8024: db 2, 2, $44 ; 0x000C\n #_0D8027: db 0, -1, $00 ; 0x000D\n #_0D802A: db 1, -1, $00 ; 0x000E\n #_0D802D: db 2, -2, $00 ; 0x000F\n #_0D8030: db 0, 0, $00 ; 0x0010\n #_0D8033: db 0, 0, $00 ; 0x0011\n #_0D8036: db -1, 0, $00 ; 0x0012\n #_0D8039: db 0, 0, $00 ; 0x0013\n #_0D803C: db 0, 0, $00 ; 0x0014\n #_0D803F: db 1, 0, $00 ; 0x0015\n #_0D8042: db 1, 0, $00 ; 0x0016\n #_0D8045: db 1, 0, $00 ; 0x0017\n #_0D8048: db 1, 1, $44 ; 0x0018\n #_0D804B: db 1, 1, $44 ; 0x0019\n #_0D804E: db 1, 0, $44 ; 0x001A\n #_0D8051: db 1, 1, $44 ; 0x001B\n #_0D8054: db 1, -1, $00 ; 0x001C\n #_0D8057: db 1, -1, $00 ; 0x001D\n #_0D805A: db 1, 0, $00 ; 0x001E\n #_0D805D: db 1, -1, $00 ; 0x001F\n #_0D8060: db 0, 0, $00 ; 0x0020\n #_0D8063: db 1, 0, $00 ; 0x0021\n #_0D8066: db 2, 0, $00 ; 0x0022\n #_0D8069: db 1, 0, $04 ; 0x0023\n #_0D806C: db 2, 0, $04 ; 0x0024\n #_0D806F: db 0, 0, $00 ; 0x0025\n #_0D8072: db 1, 0, $00 ; 0x0026\n #_0D8075: db 2, 0, $00 ; 0x0027\n #_0D8078: db 1, 0, $00 ; 0x0028\n #_0D807B: db 2, 0, $00 ; 0x0029\n #_0D807E: db 0, 1, $44 ; 0x002A\n #_0D8081: db 1, 1, $44 ; 0x002B\n #_0D8084: db 2, 1, $44 ; 0x002C\n #_0D8087: db 0, -1, $00 ; 0x002D\n #_0D808A: db 1, -1, $00 ; 0x002E\n #_0D808D: db 2, -1, $00 ; 0x002F\n #_0D8090: db -1, 0, $00 ; 0x0030\n #_0D8093: db 0, 0, $00 ; 0x0031\n #_0D8096: db 0, 0, $00 ; 0x0032\n #_0D8099: db 2, 0, $00 ; 0x0033\n #_0D809C: db 1, 0, $00 ; 0x0034\n #_0D809F: db 2, -1, $44 ; 0x0035\n #_0D80A2: db 1, 1, $44 ; 0x0036\n #_0D80A5: db 1, 1, $44 ; 0x0037\n #_0D80A8: db 2, 1, $00 ; 0x0038\n #_0D80AB: db 1, -1, $00 ; 0x0039\n #_0D80AE: db 1, -1, $00 ; 0x003A\n #_0D80B1: db 0, -8, $00 ; 0x003B\n #_0D80B4: db 4, 0, $0F ; 0x003C\n #_0D80B7: db 4, 0, $0F ; 0x003D\n #_0D80BA: db 0, 0, $FF ; 0x003E\n #_0D80BD: db 0, 0, $00 ; 0x003F\n #_0D80C0: db 0, 0, $00 ; 0x0040\n #_0D80C3: db 0, 0, $44 ; 0x0041\n #_0D80C6: db 0, 0, $00 ; 0x0042\n #_0D80C9: db 0, 0, $00 ; 0x0043\n #_0D80CC: db -1, 0, $00 ; 0x0044\n #_0D80CF: db -1, 0, $00 ; 0x0045\n #_0D80D2: db 0, 0, $00 ; 0x0046\n #_0D80D5: db 1, 0, $00 ; 0x0047\n #_0D80D8: db 2, 0, $00 ; 0x0048\n #_0D80DB: db 0, 0, $44 ; 0x0049\n #_0D80DE: db 1, 0, $44 ; 0x004A\n #_0D80E1: db 1, 0, $44 ; 0x004B\n #_0D80E4: db 0, 0, $00 ; 0x004C\n #_0D80E7: db 1, 0, $00 ; 0x004D\n #_0D80EA: db 1, 0, $00 ; 0x004E\n #_0D80ED: db -1, 0, $00 ; 0x004F\n #_0D80F0: db -5, 0, $00 ; 0x0050\n #_0D80F3: db 2, 0, $00 ; 0x0051\n #_0D80F6: db 5, 0, $00 ; 0x0052\n #_0D80F9: db -1, 0, $44 ; 0x0053\n #_0D80FC: db 0, 0, $44 ; 0x0054\n #_0D80FF: db 0, 1, $44 ; 0x0055\n #_0D8102: db -1, 0, $00 ; 0x0056\n #_0D8105: db 0, 0, $00 ; 0x0057\n #_0D8108: db 0, -1, $00 ; 0x0058\n #_0D810B: db 0, 0, $00 ; 0x0059\n #_0D810E: db 1, 0, $00 ; 0x005A\n #_0D8111: db 2, 0, $00 ; 0x005B\n #_0D8114: db 1, 0, $04 ; 0x005C\n #_0D8117: db 2, 0, $04 ; 0x005D\n #_0D811A: db 0, 0, $00 ; 0x005E\n #_0D811D: db 1, 0, $00 ; 0x005F\n #_0D8120: db 2, 0, $00 ; 0x0060\n #_0D8123: db 1, 0, $04 ; 0x0061\n #_0D8126: db 2, 0, $04 ; 0x0062\n #_0D8129: db 0, 1, $44 ; 0x0063\n #_0D812C: db 1, 1, $44 ; 0x0064\n #_0D812F: db 2, 1, $44 ; 0x0065\n #_0D8132: db 0, -1, $00 ; 0x0066\n #_0D8135: db 1, -1, $00 ; 0x0067\n #_0D8138: db 2, -1, $00 ; 0x0068\n #_0D813B: db 1, 0, $04 ; 0x0069\n #_0D813E: db 0, 0, $44 ; 0x006A\n #_0D8141: db 0, 0, $00 ; 0x006B\n #_0D8144: db 0, 1, $44 ; 0x006C\n #_0D8147: db 0, 0, $00 ; 0x006D\n #_0D814A: db 0, 0, $04 ; 0x006E\n #_0D814D: db 0, 0, $44 ; 0x006F\n #_0D8150: db 0, 1, $40 ; 0x0070\n #_0D8153: db 0, 2, $40 ; 0x0071\n #_0D8156: db 0, -1, $00 ; 0x0072\n #_0D8159: db 0, -2, $00 ; 0x0073\n #_0D815C: db 0, 0, $00 ; 0x0074\n #_0D815F: db 1, 0, $00 ; 0x0075\n #_0D8162: db 0, 0, $00 ; 0x0076\n #_0D8165: db 0, 1, $44 ; 0x0077\n #_0D8168: db 0, -1, $00 ; 0x0078\n #_0D816B: db 1, 1, $00 ; 0x0079\n #_0D816E: db 2, 1, $00 ; 0x007A\n #_0D8171: db 2, 4, $00 ; 0x007B\n #_0D8174: db 2, 1, $00 ; 0x007C\n #_0D8177: db 0, 0, $00 ; 0x007D\n #_0D817A: db 1, 0, $00 ; 0x007E\n #_0D817D: db 1, 0, $00 ; 0x007F\n #_0D8180: db 0, 0, $00 ; 0x0080\n #_0D8183: db 1, 0, $00 ; 0x0081\n #_0D8186: db 1, -1, $44 ; 0x0082\n #_0D8189: db 2, -1, $44 ; 0x0083\n #_0D818C: db 2, -4, $44 ; 0x0084\n #_0D818F: db 2, -1, $44 ; 0x0085\n #_0D8192: db 1, 0, $44 ; 0x0086\n #_0D8195: db 0, 0, $00 ; 0x0087\n #_0D8198: db 0, 0, $40 ; 0x0088\n #_0D819B: db 0, 0, $04 ; 0x0089\n #_0D819E: db 0, 0, $04 ; 0x008A\n #_0D81A1: db 0, 0, $00 ; 0x008B\n #_0D81A4: db 0, 0, $00 ; 0x008C\n #_0D81A7: db 0, 0, $00 ; 0x008D\n #_0D81AA: db 1, 0, $00 ; 0x008E\n #_0D81AD: db 2, 0, $04 ; 0x008F\n #_0D81B0: db 1, 0, $00 ; 0x0090\n #_0D81B3: db 2, 0, $04 ; 0x0091\n #_0D81B6: db 5, 1, $40 ; 0x0092\n #_0D81B9: db 6, 1, $44 ; 0x0093\n #_0D81BC: db 5, -1, $04 ; 0x0094\n #_0D81BF: db 6, -1, $00 ; 0x0095\n #_0D81C2: db 0, 0, $00 ; 0x0096\n #_0D81C5: db 0, 0, $04 ; 0x0097\n #_0D81C8: db 0, 0, $00 ; 0x0098\n #_0D81CB: db 0, 0, $00 ; 0x0099\n #_0D81CE: db 0, 0, $44 ; 0x009A\n #_0D81D1: db 0, 0, $00 ; 0x009B\n #_0D81D4: db 13, 3, $44 ; 0x009C\n #_0D81D7: db 12, 5, $44 ; 0x009D\n #_0D81DA: db 12, 5, $44 ; 0x009E\n #_0D81DD: db 13, -3, $00 ; 0x009F\n #_0D81E0: db 12, -5, $00 ; 0x00A0\n #_0D81E3: db 12, -5, $00 ; 0x00A1\n #_0D81E6: db 1, 0, $00 ; 0x00A2\n #_0D81E9: db 0, 0, $00 ; 0x00A3\n #_0D81EC: db 0, 0, $00 ; 0x00A4\n #_0D81EF: db 1, 0, $00 ; 0x00A5\n #_0D81F2: db 2, 0, $00 ; 0x00A6\n #_0D81F5: db 0, 0, $44 ; 0x00A7\n #_0D81F8: db 0, 0, $00 ; 0x00A8\n #_0D81FB: db 0, 0, $00 ; 0x00A9\n #_0D81FE: db 0, 0, $00 ; 0x00AA\n #_0D8201: db 0, 0, $44 ; 0x00AB\n #_0D8204: db 0, 0, $44 ; 0x00AC\n #_0D8207: db -1, 0, $04 ; 0x00AD\n #_0D820A: db 0, 0, $00 ; 0x00AE\n #_0D820D: db -1, 0, $00 ; 0x00AF\n #_0D8210: db -2, 0, $00 ; 0x00B0\n #_0D8213: db 0, 0, $00 ; 0x00B1\n #_0D8216: db 0, 0, $00 ; 0x00B2\n #_0D8219: db -1, 0, $00 ; 0x00B3\n #_0D821C: db -2, 0, $00 ; 0x00B4\n #_0D821F: db 0, 0, $00 ; 0x00B5\n #_0D8222: db 0, 0, $04 ; 0x00B6\n #_0D8225: db -1, 0, $00 ; 0x00B7\n #_0D8228: db -2, 0, $00 ; 0x00B8\n #_0D822B: db 0, 0, $00 ; 0x00B9\n #_0D822E: db -1, 0, $04 ; 0x00BA\n #_0D8231: db -2, 0, $04 ; 0x00BB\n #_0D8234: db 0, 0, $04 ; 0x00BC\n #_0D8237: db -1, 1, $44 ; 0x00BD\n #_0D823A: db -1, 0, $44 ; 0x00BE\n #_0D823D: db 0, 1, $44 ; 0x00BF\n #_0D8240: db 0, 1, $44 ; 0x00C0\n #_0D8243: db -1, 1, $44 ; 0x00C1\n #_0D8246: db -1, 0, $44 ; 0x00C2\n #_0D8249: db 0, 0, $44 ; 0x00C3\n #_0D824C: db -1, -1, $00 ; 0x00C4\n #_0D824F: db -1, 0, $00 ; 0x00C5\n #_0D8252: db 0, -1, $00 ; 0x00C6\n #_0D8255: db 0, -1, $00 ; 0x00C7\n #_0D8258: db -1, -1, $00 ; 0x00C8\n #_0D825B: db -1, 0, $00 ; 0x00C9\n #_0D825E: db 0, 0, $00 ; 0x00CA\n #_0D8261: db 0, 0, $04 ; 0x00CB\n #_0D8264: db 1, 0, $00 ; 0x00CC\n #_0D8267: db 2, 0, $00 ; 0x00CD\n #_0D826A: db 1, 0, $00 ; 0x00CE\n #_0D826D: db 2, 0, $00 ; 0x00CF\n #_0D8270: db 1, 0, $00 ; 0x00D0\n #_0D8273: db 2, 0, $00 ; 0x00D1\n #_0D8276: db 1, 0, $04 ; 0x00D2\n #_0D8279: db 2, 0, $04 ; 0x00D3\n #_0D827C: db 1, 1, $44 ; 0x00D4\n #_0D827F: db 2, 1, $44 ; 0x00D5\n #_0D8282: db 1, -1, $00 ; 0x00D6\n #_0D8285: db 2, -1, $00 ; 0x00D7\n #_0D8288: db 2, 0, $00 ; 0x00D8\n #_0D828B: db 2, 0, $00 ; 0x00D9\n #_0D828E: db 3, 0, $00 ; 0x00DA\n #_0D8291: db 3, 0, $00 ; 0x00DB\n #_0D8294: db 2, -2, $44 ; 0x00DC\n #_0D8297: db 2, 1, $44 ; 0x00DD\n #_0D829A: db 2, 2, $00 ; 0x00DE\n #_0D829D: db 2, -1, $00 ; 0x00DF\n #_0D82A0: db 0, 0, $00 ; 0x00E0\n #_0D82A3: db 1, 0, $00 ; 0x00E1\n #_0D82A6: db 2, 0, $00 ; 0x00E2\n #_0D82A9: db 1, 0, $04 ; 0x00E3\n #_0D82AC: db 2, 0, $04 ; 0x00E4\n #_0D82AF: db 2, 0, $00 ; 0x00E5\n #_0D82B2: db 3, 0, $00 ; 0x00E6\n #_0D82B5: db 4, 0, $00 ; 0x00E7\n #_0D82B8: db 3, 0, $04 ; 0x00E8\n #_0D82BB: db 4, 0, $04 ; 0x00E9\n #_0D82BE: db 0, 0, $44 ; 0x00EA\n #_0D82C1: db 1, 0, $44 ; 0x00EB\n #_0D82C4: db 2, 0, $44 ; 0x00EC\n #_0D82C7: db 0, 0, $00 ; 0x00ED\n #_0D82CA: db 1, 0, $00 ; 0x00EE\n #_0D82CD: db 2, 0, $00 ; 0x00EF\n #_0D82D0: db 3, 0, $00 ; 0x00F0\n #_0D82D3: db 2, 0, $00 ; 0x00F1\n #_0D82D6: db -1, 0, $00 ; 0x00F2\n #_0D82D9: db 0, 0, $00 ; 0x00F3\n #_0D82DC: db 1, 0, $00 ; 0x00F4\n #_0D82DF: db -1, 0, $00 ; 0x00F5\n #_0D82E2: db 0, 0, $00 ; 0x00F6\n #_0D82E5: db 1, 0, $00 ; 0x00F7\n #_0D82E8: db -1, 0, $44 ; 0x00F8\n #_0D82EB: db 0, 0, $44 ; 0x00F9\n #_0D82EE: db 1, 0, $44 ; 0x00FA\n #_0D82F1: db -1, 0, $44 ; 0x00FB\n #_0D82F4: db 0, 0, $44 ; 0x00FC\n #_0D82F7: db 1, 0, $44 ; 0x00FD\n #_0D82FA: db 0, 0, $00 ; 0x00FE\n #_0D82FD: db 1, 0, $00 ; 0x00FF\n #_0D8300: db 2, 0, $00 ; 0x0100\n #_0D8303: db 1, 0, $00 ; 0x0101\n #_0D8306: db 2, 0, $00 ; 0x0102\n #_0D8309: db 0, 0, $00 ; 0x0103\n #_0D830C: db 3, 0, $00 ; 0x0104\n #_0D830F: db 4, 0, $00 ; 0x0105\n #_0D8312: db 2, 0, $00 ; 0x0106\n #_0D8315: db 0, -1, $44 ; 0x0107\n #_0D8318: db 1, 1, $44 ; 0x0108\n #_0D831B: db 0, 1, $44 ; 0x0109\n #_0D831E: db 0, 1, $00 ; 0x010A\n #_0D8321: db 1, 1, $00 ; 0x010B\n #_0D8324: db 0, -1, $00 ; 0x010C\n #_0D8327: db 3, 0, $00 ; 0x010D\n #_0D832A: db 2, 0, $04 ; 0x010E\n #_0D832D: db 3, 0, $04 ; 0x010F\n #_0D8330: db 0, 2, $00 ; 0x0110\n #_0D8333: db 8, 8, $00 ; 0x0111\n #_0D8336: db 0, 0, $00 ; 0x0112\n #_0D8339: db 0, 0, $00 ; 0x0113\n #_0D833C: db -1, 0, $0F ; 0x0114\n #_0D833F: db 1, 0, $00 ; 0x0115\n #_0D8342: db 0, 0, $04 ; 0x0116\n #_0D8345: db 0, 0, $00 ; 0x0117\n #_0D8348: db 2, 0, $00 ; 0x0118\n #_0D834B: db 1, 4, $44 ; 0x0119\n #_0D834E: db 1, -4, $00 ; 0x011A\n #_0D8351: db 0, 0, $00 ; 0x011B\n #_0D8354: db 1, 0, $00 ; 0x011C\n #_0D8357: db 1, 0, $04 ; 0x011D\n #_0D835A: db 0, 0, $00 ; 0x011E\n #_0D835D: db 1, 0, $00 ; 0x011F\n #_0D8360: db 1, 0, $04 ; 0x0120\n #_0D8363: db 0, 1, $44 ; 0x0121\n #_0D8366: db 1, 1, $44 ; 0x0122\n #_0D8369: db 0, -1, $00 ; 0x0123\n #_0D836C: db 1, -1, $00 ; 0x0124\n #_0D836F: db 0, 0, $44 ; 0x0125\n #_0D8372: db -2, 0, $00 ; 0x0126\n #_0D8375: db 0, -2, $04 ; 0x0127\n #_0D8378: db 0, 0, $00 ; 0x0128\n #_0D837B: db 0, 1, $00 ; 0x0129\n #_0D837E: db 0, 0, $04 ; 0x012A\n #_0D8381: db 12, 0, $08 ; 0x012B\n #_0D8384: db 14, 0, $80 ; 0x012C\n #_0D8387: db 12, 0, $00 ; 0x012D\n #_0D838A: db 11, 0, $00 ; 0x012E\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AuxFlip", + "code": "LinkOAM_AuxFlip:\n #_0D838D: db $00, $00, $00, $40, $40, $48, $C0\n #_0D8394: db $48, $C0, $48, $C0, $48, $C0, $40\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponTiles", + "code": "LinkOAM_WeaponTiles:\n #_0D839B: dw $2A05, $2A06, $FFFF\n #_0D83A1: dw $6A06, $6A05, $FFFF\n #_0D83A7: dw $AA05, $AA06, $FFFF\n #_0D83AD: dw $2A05, $2A06, $FFFF\n #_0D83B3: dw $EA06, $EA05, $FFFF\n #_0D83B9: dw $6A06, $6A05, $FFFF\n #_0D83BF: dw $2A05, $FFFF, $2A15\n #_0D83C5: dw $AA15, $FFFF, $AA05\n #_0D83CB: dw $2A05, $FFFF, $2A15\n #_0D83D1: dw $AA15, $FFFF, $AA05\n #_0D83D7: dw $6A05, $FFFF, $6A15\n #_0D83DD: dw $EA15, $FFFF, $EA05\n #_0D83E3: dw $2A05, $FFFF, $FFFF\n #_0D83E9: dw $AA05, $FFFF, $FFFF\n #_0D83EF: dw $6A05, $FFFF, $FFFF\n #_0D83F5: dw $EA05, $FFFF, $FFFF\n #_0D83FB: dw $2A05, $FFFF, $FFFF\n #_0D8401: dw $AA05, $FFFF, $FFFF\n #_0D8407: dw $6A05, $FFFF, $FFFF\n #_0D840D: dw $EA05, $FFFF, $FFFF\n #_0D8413: dw $2A05, $FFFF, $FFFF\n #_0D8419: dw $AA05, $FFFF, $FFFF\n #_0D841F: dw $6A05, $FFFF, $FFFF\n #_0D8425: dw $EA05, $FFFF, $FFFF\n #_0D842B: dw $2A05, $FFFF, $FFFF\n #_0D8431: dw $AA05, $FFFF, $FFFF\n #_0D8437: dw $6A05, $FFFF, $FFFF\n #_0D843D: dw $EA05, $FFFF, $FFFF\n #_0D8443: dw $AA15, $FFFF, $FFFF\n #_0D8449: dw $2209, $FFFF, $2219\n #_0D844F: dw $2209, $FFFF, $2219\n #_0D8455: dw $221A, $FFFF, $2219\n #_0D845B: dw $A219, $FFFF, $A209\n #_0D8461: dw $2209, $FFFF, $2219\n #_0D8467: dw $2209, $FFFF, $FFFF\n #_0D846D: dw $2209, $FFFF, $FFFF\n #_0D8473: dw $2219, $2209, $FFFF\n #_0D8479: dw $6209, $FFFF, $FFFF\n #_0D847F: dw $6209, $6219, $FFFF\n #_0D8485: dw $A209, $E209, $FFFF\n #_0D848B: dw $2209, $6209, $FFFF\n #_0D8491: dw $6209, $FFFF, $E209\n #_0D8497: dw $2209, $FFFF, $A209\n #_0D849D: dw $A209, $FFFF, $FFFF\n #_0D84A3: dw $6209, $FFFF, $FFFF\n #_0D84A9: dw $2209, $FFFF, $FFFF\n #_0D84AF: dw $E209, $FFFF, $FFFF\n #_0D84B5: dw $2209, $FFFF, $FFFF\n #_0D84BB: dw $2209, $FFFF, $FFFF\n #_0D84C1: dw $6209, $FFFF, $FFFF\n #_0D84C7: dw $6209, $FFFF, $FFFF\n #_0D84CD: dw $221A, $FFFF, $FFFF\n #_0D84D3: dw $221A, $FFFF, $FFFF\n #_0D84D9: dw $221A, $FFFF, $FFFF\n #_0D84DF: dw $221A, $FFFF, $FFFF\n #_0D84E5: dw $2209, $FFFF, $FFFF\n #_0D84EB: dw $2209, $FFFF, $FFFF\n #_0D84F1: dw $2209, $FFFF, $FFFF\n #_0D84F7: dw $E209, $FFFF, $FFFF\n #_0D84FD: dw $2209, $FFFF, $FFFF\n #_0D8503: dw $2209, $FFFF, $FFFF\n #_0D8509: dw $2209, $FFFF, $FFFF\n #_0D850F: dw $2209, $FFFF, $FFFF\n #_0D8515: dw $2209, $FFFF, $FFFF\n #_0D851B: dw $2209, $FFFF, $FFFF\n #_0D8521: dw $2209, $FFFF, $FFFF\n #_0D8527: dw $2209, $FFFF, $2219\n #_0D852D: dw $2209, $FFFF, $2219\n #_0D8533: dw $2209, $FFFF, $2219\n #_0D8539: dw $6209, $FFFF, $6219\n #_0D853F: dw $2209, $FFFF, $2219\n #_0D8545: dw $2209, $FFFF, $FFFF\n #_0D854B: dw $A219, $A209, $FFFF\n #_0D8551: dw $6209, $FFFF, $FFFF\n #_0D8557: dw $E209, $E219, $FFFF\n #_0D855D: dw $2809, $FFFF, $FFFF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldTiles", + "code": "LinkOAM_ShieldTiles:\n #_0D8563: dw $2A07, $FFFF, $FFFF ; down\n #_0D8569: dw $2A07, $FFFF, $FFFF ; up\n #_0D856F: dw $2A07, $FFFF, $FFFF ; right\n #_0D8575: dw $6A07, $FFFF, $FFFF ; left\n\n #_0D857B: dw $2A07, $FFFF, $FFFF ; The rest of these seem to be unused/garbage\n #_0D8581: dw $6A07, $FFFF, $FFFF\n #_0D8587: dw $2A07, $FFFF, $FFFF\n #_0D858D: dw $6A07, $FFFF, $FFFF\n\n #_0D8593: dw $2809, $FFFF, $2819\n #_0D8599: dw $2809, $FFFF, $2819\n #_0D859F: dw $281A, $FFFF, $2819\n #_0D85A5: dw $A819, $FFFF, $A809\n\n #_0D85AB: dw $2809, $FFFF, $2819\n #_0D85B1: dw $2809, $FFFF, $FFFF\n #_0D85B7: dw $2809, $FFFF, $FFFF\n #_0D85BD: dw $2819, $2809, $FFFF\n\n #_0D85C3: dw $6809, $FFFF, $FFFF\n #_0D85C9: dw $6809, $6819, $FFFF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowTiles", + "code": "LinkOAM_ShadowTiles:\n #_0D85CF: dw $286C, $686C ; normal shadow\n #_0D85D3: dw $2828, $6828 ; small shadow\n #_0D85D7: dw $2838, $FFFF ; used while falling\n #_0D85DB: dw $286E, $686E ; unused and buggy\n #_0D85DF: dw $287E, $687E ; unused and buggy\n #_0D85E3: dw $24D8, $64D8 ; shallow water step 1\n #_0D85E7: dw $24D9, $64D9 ; shallow water step 2\n #_0D85EB: dw $24DA, $64DA ; shallow water step 3\n #_0D85EF: dw $22C8, $62C8 ; grass step 1\n #_0D85F3: dw $22C9, $62C9 ; grass step 2\n #_0D85F7: dw $22CA, $62CA ; grass step 3\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AnimationSteps", + "code": "LinkOAM_AnimationSteps:\n #_0D85FB: dw $0000, $00AE, $00AF, $00B0, $00B1, $00B2, $00B3, $00B4, $00B5 ; up\n #_0D860D: dw $0005, $00B6, $00B7, $00B8, $00B9, $00B6, $00BA, $00BB, $00BC ; down\n #_0D861F: dw $000A, $000A, $00BD, $00BE, $00BF, $00C0, $00C1, $00C2, $00C3 ; left\n #_0D8631: dw $000D, $000D, $00C4, $00C5, $00C6, $00C7, $00C8, $00C9, $00CA ; right\n\n #_0D8643: dw $0010, $0010, $0011, $0011, $0012, $0012, $0013, $0013, $0013 ; up\n #_0D8655: dw $0014, $0014, $0015, $0015, $0016, $0016, $0017, $0017, $0017 ; down\n #_0D8667: dw $0018, $0018, $0019, $0019, $001A, $001A, $001B, $001B, $001B ; left\n #_0D8679: dw $001C, $001C, $001D, $001D, $001E, $001E, $001F, $001F, $001F ; right\n\n #_0D868B: dw $0020, $0021, $0022, $0020, $0023, $0024 ; up\n #_0D8697: dw $0025, $0026, $0027, $0025, $0028, $0029 ; down\n #_0D86A3: dw $002A, $002B, $002C, $002A, $002B, $002C ; left\n #_0D86AF: dw $002D, $002E, $002F, $002D, $002E, $002F ; right\n\n #_0D86BB: dw $0031, $0030, $0032 ; up\n #_0D86C1: dw $0034, $0033, $0034 ; down\n #_0D86C7: dw $0036, $0035, $0037 ; left\n #_0D86CD: dw $0039, $0038, $003A ; right\n\n #_0D86D3: dw $003B, $003C, $003D, $003E, $003E, $003E\n\n #_0D86DF: dw $0000, $000D, $0005, $000A\n\n #_0D86E7: dw $003F ; up\n #_0D86E9: dw $0040 ; down\n #_0D86EB: dw $0041 ; left\n #_0D86ED: dw $0042 ; right\n\n #_0D86EF: dw $0043, $0044, $0045 ; up\n #_0D86F5: dw $0046, $0047, $0048 ; down\n #_0D86FB: dw $0049, $004A, $004B ; left\n #_0D8701: dw $004C, $004D, $004E ; right\n\n #_0D8707: dw $0000, $0021, $0074 ; up\n #_0D870D: dw $0005, $0075, $0076 ; down\n #_0D8713: dw $002A, $001A, $0077 ; left\n #_0D8719: dw $002D, $001E, $0078 ; right\n\n #_0D871F: dw $00A3, $00A4 ; up\n #_0D8723: dw $00A5, $00A6 ; down\n #_0D8727: dw $00A7, $001A ; left\n #_0D872B: dw $00A8, $001E ; right\n\n #_0D872F: dw $0000, $00CE, $00CF, $0000, $00A2, $0024 ; up\n #_0D873B: dw $0005, $00D0, $00D1, $0005, $00D2, $00D3 ; down\n #_0D8747: dw $000A, $00D4, $00D5, $000A, $00D4, $00D5 ; left\n #_0D8753: dw $000D, $00D6, $00D7, $000D, $00D6, $00D7 ; right\n\n #_0D875F: dw $007D, $007E, $007F, $0080\n\n #_0D8767: dw $0053, $0054, $0055 ; left\n #_0D876D: dw $0056, $0057, $0058 ; right\n\n #_0D8773: dw $0059, $005A, $005B, $0059, $005C, $005D ; up\n #_0D877F: dw $005E, $005F, $0060, $005E, $0061, $0062 ; down\n #_0D878B: dw $0063, $0064, $0065, $0063, $0064, $0065 ; left\n #_0D8797: dw $0066, $0067, $0068, $0066, $0067, $0068 ; right\n\n #_0D87A3: dw $0020, $0021, $0022, $0020, $0023, $0024 ; up\n #_0D87AF: dw $0025, $0026, $0027, $0025, $0028, $0029 ; down\n #_0D87BB: dw $002A, $002B, $002C, $002A, $002B, $002C ; left\n #_0D87C7: dw $002D, $002E, $002F, $002D, $002E, $002F ; right\n\n #_0D87D3: dw $0069, $006A, $006B, $006B, $006C, $006C, $006D, $006D\n #_0D87E3: dw $000D, $000D, $006E, $006F, $0070, $0071, $0072, $0073\n\n #_0D87F3: dw $00D8, $00D9, $00D9 ; up\n #_0D87F9: dw $00DA, $00DB, $00DB ; down\n #_0D87FF: dw $00DC, $00DD, $00DD ; left\n #_0D8805: dw $00DE, $00DF, $00DF ; right\n\n #_0D880B: dw $008E, $008F ; up\n #_0D880F: dw $0090, $0091 ; down\n #_0D8813: dw $0092, $0093 ; left\n #_0D8817: dw $0094, $0095 ; right\n\n #_0D881B: dw $0098, $0096, $0097, $0096 ; up\n #_0D8823: dw $009B, $0099, $009A, $0099 ; down\n #_0D882B: dw $009E, $009C, $009D, $009C ; left\n #_0D8833: dw $00A1, $009F, $00A0, $009F ; right\n\n #_0D883B: dw $0096, $0097, $0098 ; up\n #_0D8841: dw $0099, $009A, $009B ; down\n #_0D8847: dw $009C, $009D, $009E ; left\n #_0D884D: dw $009F, $00A0, $00A1 ; right\n\n #_0D8853: dw $00AB, $00AB, $00AC, $00AC ; up\n #_0D885B: dw $00A9, $00A9, $00AA, $00AA ; down\n #_0D8863: dw $00AB, $00AB, $00AC, $00AC ; left\n #_0D886B: dw $00A9, $00A9, $00AA, $00AA ; right\n\n #_0D8873: dw $0025, $002A, $0020, $002D\n\n #_0D887B: dw $006B, $00AD, $00AD, $00AD\n\n #_0D8883: dw $006B, $00CB, $00CB, $00CB, $00CB\n #_0D888D: dw $00CC, $00CC, $00CC, $00A6, $00A6\n\n #_0D8897: dw $006B, $00CB, $005E, $00CD, $00CD\n\n #_0D88A1: dw $00E0, $00E1, $00E2, $00E0, $00E3, $00E4 ; up\n #_0D88AD: dw $00E5, $00E6, $00E7, $00E5, $00E8, $00E9 ; down\n #_0D88B9: dw $00EA, $00EB, $00EC, $00EA, $00EB, $00EC ; left\n #_0D88C5: dw $00ED, $00EE, $00EF, $00ED, $00EE, $00EF ; right\n\n #_0D88D1: dw $0101, $0117, $0117, $0117, $0117\n\n #_0D88DB: dw $00F0, $00F1, $00FF, $005E\n\n #_0D88E3: dw $00DB, $00FF\n\n #_0D88E7: dw $0101, $0117, $0117, $0117 ; up\n #_0D88EF: dw $0104, $0118, $0118, $0118 ; down\n #_0D88F7: dw $0107, $0119, $0119, $0119 ; left\n #_0D88FF: dw $010A, $011A, $011A, $011A ; right\n\n #_0D8907: dw $00F5, $00F6, $00F7 ; lower\n #_0D890D: dw $00F2, $00F3, $00F4 ; higher\n\n #_0D8913: dw $00FB, $00FC, $00FD ; higher\n #_0D8919: dw $00F8, $00F9, $00FA ; lower\n\n #_0D891F: dw $0005, $000A, $0000, $000D, $0110, $0111\n\n #_0D892B: dw $0000, $0021, $0074 ; up\n #_0D8931: dw $0005, $0075, $0076 ; down\n #_0D8937: dw $002A, $001A, $0077 ; left\n #_0D893D: dw $002D, $001E, $0078 ; right\n\n #_0D8943: dw $0112 ; normal\n #_0D8945: dw $0113 ; crystal/triforce\n\n #_0D8947: dw $0114, $0115\n\n #_0D894B: dw $0012 ; up\n #_0D894D: dw $0016 ; down\n #_0D894F: dw $001A ; left\n #_0D8951: dw $001E ; right\n\n #_0D8953: dw $011B, $011C, $011B, $011D ; up\n #_0D895B: dw $011E, $011F, $011E, $0120 ; down\n #_0D8963: dw $0121, $0122, $0121, $0122 ; left\n #_0D896B: dw $0123, $0124, $0123, $0124 ; right\n\n #_0D8973: dw $006F, $0125, $0126 ; up\n #_0D8979: dw $006A, $00CB, $0048 ; down\n #_0D897F: dw $0071, $0063, $001A ; left\n #_0D8985: dw $0127, $0066, $001E ; right\n\n #_0D898B: dw $0069 ; this first pose is unreachable\n #_0D898D: dw $00CB, $006B, $000A, $000A, $006D\n #_0D8997: dw $006D, $000D, $000D, $0070, $0072, $006E\n\n #_0D89A3: dw $00CB\n\n #_0D89A5: dw $0129\n\n #_0D89A7: dw $012B, $012C, $012D, $012E, $003F\n\n #_0D89B1: dw $0010, $0010, $004F, $004F, $0126, $0050, $0126, $0013, $0013 ; up\n #_0D89C3: dw $0014, $0014, $0015, $0015, $0051, $0052, $0051, $0017, $0017 ; down\n #_0D89D5: dw $0018, $0018, $0019, $0082, $0083, $0084, $0085, $0086, $0086 ; left\n #_0D89E7: dw $001C, $001C, $001D, $0079, $007A, $007B, $007C, $0081, $0081 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux1GFXIndex", + "code": "LinkOAM_Aux1GFXIndex:\n #_0D89F9: db $00, $FF, $FF, $02, $03, $04, $FF\n\n #_0D8A00: db $FF, $FF, $FF\n\n #_0D8A03: db $FF, $15, $17 ; up\n #_0D8A06: db $FF, $15, $17 ; down\n #_0D8A09: db $FF, $16, $18 ; left\n #_0D8A0C: db $FF, $15, $17 ; right\n\n #_0D8A0F: db $13, $0B, $0F, $FF ; up\n #_0D8A13: db $11, $09, $0D, $FF ; down\n #_0D8A17: db $09, $12, $0D, $FF ; left\n #_0D8A1B: db $0A, $11, $0F, $FF ; right\n\n #_0D8A1F: db $FF, $FF, $FF, $FF\n\n #_0D8A23: db $FF, $FF, $FF, $FF\n\n #_0D8A27: db $FF, $FF, $FF, $04, $03\n #_0D8A2C: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8A31: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8A36: db $FF, $17, $17, $FF, $FF\n\n #_0D8A3B: db $FF, $FF, $FF, $FF\n\n #_0D8A3F: db $FF, $FF\n\n #_0D8A41: db $FF, $17, $17, $FF ; up\n #_0D8A45: db $FF, $15, $15, $FF ; down\n #_0D8A49: db $FF, $18, $18, $FF ; left\n #_0D8A4D: db $FF, $17, $17, $FF ; right\n\n #_0D8A51: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8A5A: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8A63: db $FF, $FF, $FF, $FF, $1A, $1A, $1A, $FF, $FF ; left\n #_0D8A6C: db $FF, $FF, $FF, $FF, $19, $19, $19, $FF, $FF ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2GFXIndex", + "code": "LinkOAM_Aux2GFXIndex:\n #_0D8A75: db $01, $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8A7C: db $FF, $FF, $FF\n\n #_0D8A7F: db $FF, $16, $18 ; up\n #_0D8A82: db $FF, $16, $18 ; down\n #_0D8A85: db $FF, $FF, $FF ; left\n #_0D8A88: db $FF, $FF, $FF ; right\n\n #_0D8A8B: db $14, $0C, $10, $FF ; up\n #_0D8A8F: db $12, $0A, $0E, $FF ; down\n #_0D8A93: db $FF, $FF, $FF, $FF ; left\n #_0D8A97: db $FF, $FF, $FF, $FF ; right\n\n #_0D8A9B: db $FF, $FF, $FF, $FF\n\n #_0D8A9F: db $FF, $FF, $FF, $FF\n\n #_0D8AA3: db $FF, $FF, $FF, $FF, $FF\n #_0D8AA8: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8AAD: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8AB2: db $FF, $18, $18, $FF, $FF\n\n #_0D8AB7: db $FF, $FF, $FF, $FF\n\n #_0D8ABB: db $FF, $FF\n\n #_0D8ABD: db $FF, $18, $18, $FF ; up\n #_0D8AC1: db $FF, $16, $16, $FF ; down\n #_0D8AC5: db $FF, $FF, $FF, $FF ; left\n #_0D8AC9: db $FF, $FF, $FF, $FF ; right\n\n #_0D8ACD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8AD6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8ADF: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8AE8: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponGFXIndex", + "code": "LinkOAM_WeaponGFXIndex:\n #_0D8AF1: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8AFA: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8B03: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8B0C: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8B15: db $01, $05, $0E, $1A, $06, $08, $10, $14, $00 ; up\n #_0D8B1E: db $00, $02, $0D, $19, $07, $0B, $13, $17, $01 ; down\n #_0D8B27: db $06, $08, $10, $14, $00, $02, $0D, $19, $07 ; left\n #_0D8B30: db $06, $0A, $12, $16, $01, $04, $0F, $1B, $07 ; right\n\n #_0D8B39: db $0A, $0A, $0A, $0A, $0A, $0A ; up\n #_0D8B3F: db $09, $09, $09, $09, $09, $09 ; down\n #_0D8B45: db $00, $00, $00, $00, $00, $00 ; left\n #_0D8B4B: db $01, $01, $01, $01, $01, $01 ; right\n\n #_0D8B51: db $06, $0A, $06 ; up\n #_0D8B54: db $07, $09, $07 ; down\n #_0D8B57: db $00, $00, $00 ; left\n #_0D8B5A: db $01, $01, $01 ; right\n\n #_0D8B5D: db $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8B63: db $FF, $FF, $FF, $FF\n\n #_0D8B67: db $08 ; up\n #_0D8B68: db $0A ; down\n #_0D8B69: db $0A ; left\n #_0D8B6A: db $08 ; right\n\n #_0D8B6B: db $20, $1D, $21 ; up\n #_0D8B6E: db $1D, $22, $1E ; down\n #_0D8B71: db $1F, $25, $26 ; left\n #_0D8B74: db $1F, $23, $24 ; right\n\n #_0D8B77: db $2A, $27, $27 ; up\n #_0D8B7A: db $29, $28, $28 ; down\n #_0D8B7D: db $2C, $2A, $2A ; left\n #_0D8B80: db $2D, $29, $29 ; right\n\n #_0D8B83: db $FF, $FF ; up\n #_0D8B85: db $FF, $FF ; down\n #_0D8B87: db $FF, $FF ; left\n #_0D8B89: db $FF, $FF ; right\n\n #_0D8B8B: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8B91: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8B97: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8B9D: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8BA3: db $FF, $FF, $FF, $FF\n\n #_0D8BA7: db $31, $31, $32 ; left\n #_0D8BAA: db $2F, $2F, $30 ; right\n\n #_0D8BAD: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8BB3: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8BB9: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8BBF: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8BC5: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8BCB: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8BD1: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8BD7: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8BDD: db $0A, $08, $05, $04, $0B, $09, $02, $03\n #_0D8BE5: db $08, $0A, $09, $0B, $04, $05, $03, $02\n\n #_0D8BED: db $FF, $FF, $FF ; up\n #_0D8BF0: db $FF, $FF, $FF ; down\n #_0D8BF3: db $FF, $FF, $FF ; left\n #_0D8BF6: db $FF, $FF, $FF ; right\n\n #_0D8BF9: db $FF, $FF ; up\n #_0D8BFB: db $FF, $FF ; down\n #_0D8BFD: db $FF, $FF ; left\n #_0D8BFF: db $FF, $FF ; right\n\n #_0D8C01: db $FF, $FF, $FF, $FF ; up\n #_0D8C05: db $FF, $FF, $FF, $FF ; down\n #_0D8C09: db $FF, $FF, $FF, $FF ; left\n #_0D8C0D: db $FF, $FF, $FF, $FF ; right\n\n #_0D8C11: db $FF, $FF, $FF ; up\n #_0D8C14: db $FF, $FF, $FF ; down\n #_0D8C17: db $FF, $FF, $FF ; left\n #_0D8C1A: db $FF, $FF, $FF ; right\n\n #_0D8C1D: db $FF, $00, $03, $03 ; up\n #_0D8C21: db $FF, $01, $05, $05 ; down\n #_0D8C25: db $FF, $00, $03, $03 ; left\n #_0D8C29: db $FF, $01, $05, $05 ; right\n\n #_0D8C2D: db $09, $02, $06, $04\n\n #_0D8C31: db $04, $0A, $06, $06\n\n #_0D8C35: db $0A, $06, $08, $08, $08\n #_0D8C3A: db $01, $04, $0F, $0B, $07\n\n #_0D8C3F: db $04, $0A, $06, $07, $1C\n\n #_0D8C44: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8C4A: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8C50: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8C56: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8C5C: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8C61: db $FF, $FF, $FF, $FF\n\n #_0D8C65: db $FF, $FF\n\n #_0D8C67: db $FF, $FF, $FF, $FF ; up\n #_0D8C6B: db $FF, $FF, $FF, $FF ; down\n #_0D8C6F: db $FF, $FF, $FF, $FF ; left\n #_0D8C73: db $FF, $FF, $FF, $FF ; right\n\n #_0D8C77: db $FF, $FF, $FF ; lower\n #_0D8C7A: db $FF, $FF, $FF ; higher\n\n #_0D8C7D: db $FF, $FF, $FF ; higher\n #_0D8C80: db $FF, $FF, $FF ; lower\n\n #_0D8C83: db $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8C89: db $FF, $FF, $FF ; up\n #_0D8C8C: db $FF, $FF, $FF ; down\n #_0D8C8F: db $FF, $FF, $FF ; left\n #_0D8C92: db $FF, $FF, $FF ; right\n\n #_0D8C95: db $FF ; normal\n #_0D8C96: db $FF ; crystal/triforce\n\n #_0D8C97: db $FF, $FF\n\n #_0D8C99: db $33 ; up\n #_0D8C9A: db $34 ; down\n #_0D8C9B: db $35 ; left\n #_0D8C9C: db $36 ; right\n\n #_0D8C9D: db $FF, $FF, $FF, $FF ; up\n #_0D8CA1: db $FF, $FF, $FF, $FF ; down\n #_0D8CA5: db $FF, $FF, $FF, $FF ; left\n #_0D8CA9: db $FF, $FF, $FF, $FF ; right\n\n #_0D8CAD: db $44, $44, $46 ; up\n #_0D8CB0: db $44, $44, $43 ; down\n #_0D8CB3: db $47, $44, $4A ; left\n #_0D8CB6: db $49, $45, $48 ; right\n\n #_0D8CB9: db $37\n #_0D8CBA: db $37, $38, $39, $3A, $3B\n #_0D8CBF: db $3C, $3D, $3E, $3F, $40, $41\n\n #_0D8CC5: db $06\n\n #_0D8CC6: db $4B\n\n #_0D8CC7: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8CCC: db $01, $05, $0E, $1A, $0A, $06, $08, $10, $14 ; up\n #_0D8CD5: db $00, $02, $0D, $19, $09, $07, $0B, $13, $17 ; down\n #_0D8CDE: db $06, $08, $10, $14, $03, $00, $02, $0D, $19 ; left\n #_0D8CE7: db $06, $0A, $12, $16, $05, $01, $04, $0F, $1B ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldGFXIndex", + "code": "LinkOAM_ShieldGFXIndex:\n #_0D8CF0: db $01, $01, $01, $01, $01, $01, $01, $01, $01 ; up\n #_0D8CF9: db $00, $00, $00, $00, $00, $00, $00, $00, $00 ; down\n #_0D8D02: db $03, $03, $03, $03, $03, $03, $03, $03, $03 ; left\n #_0D8D0B: db $02, $02, $02, $02, $02, $02, $02, $02, $02 ; right\n\n #_0D8D14: db $00, $00, $00, $00, $02, $02, $02, $02, $02 ; up\n #_0D8D1D: db $01, $01, $01, $01, $03, $03, $03, $03, $03 ; down\n #_0D8D26: db $01, $01, $01, $01, $01, $01, $01, $01, $01 ; left\n #_0D8D2F: db $01, $01, $01, $01, $01, $01, $01, $01, $01 ; right\n\n #_0D8D38: db $02, $02, $02, $02, $02, $02 ; up\n #_0D8D3E: db $03, $03, $03, $03, $03, $03 ; down\n #_0D8D44: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8D4A: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8D50: db $02, $02, $02 ; up\n #_0D8D53: db $03, $03, $03 ; down\n #_0D8D56: db $01, $01, $01 ; left\n #_0D8D59: db $01, $01, $01 ; right\n\n #_0D8D5C: db $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8D62: db $FF, $FF, $FF, $FF\n\n #_0D8D66: db $01 ; up\n #_0D8D67: db $00 ; down\n #_0D8D68: db $01 ; left\n #_0D8D69: db $01 ; right\n\n #_0D8D6A: db $02, $02, $02 ; up\n #_0D8D6D: db $03, $03, $03 ; down\n #_0D8D70: db $01, $01, $01 ; left\n #_0D8D73: db $01, $01, $01 ; right\n\n #_0D8D76: db $FF, $FF, $FF ; up\n #_0D8D79: db $FF, $FF, $FF ; down\n #_0D8D7C: db $FF, $FF, $FF ; left\n #_0D8D7F: db $FF, $FF, $FF ; right\n\n #_0D8D82: db $01, $02 ; up\n #_0D8D84: db $00, $03 ; down\n #_0D8D86: db $03, $01 ; left\n #_0D8D88: db $02, $01 ; right\n\n #_0D8D8A: db $01, $01, $01, $01, $01, $01 ; up\n #_0D8D90: db $00, $00, $00, $00, $00, $00 ; down\n #_0D8D96: db $03, $03, $03, $03, $03, $03 ; left\n #_0D8D9C: db $02, $02, $02, $02, $02, $02 ; right\n\n #_0D8DA2: db $FF, $FF, $FF, $FF\n\n #_0D8DA6: db $FF, $FF, $FF ; left\n #_0D8DA9: db $FF, $FF, $FF ; right\n\n #_0D8DAC: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8DB2: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8DB8: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8DBE: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8DC4: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8DCA: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8DD0: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8DD6: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8DDC: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0D8DE4: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8DEC: db $FF, $FF, $FF ; up\n #_0D8DEF: db $FF, $FF, $FF ; down\n #_0D8DF2: db $FF, $FF, $FF ; left\n #_0D8DF5: db $FF, $FF, $FF ; right\n\n #_0D8DF8: db $FF, $FF ; up\n #_0D8DFA: db $FF, $FF ; down\n #_0D8DFC: db $FF, $FF ; left\n #_0D8DFE: db $FF, $FF ; right\n\n #_0D8E00: db $FF, $FF, $FF, $FF ; up\n #_0D8E04: db $FF, $FF, $FF, $FF ; down\n #_0D8E08: db $FF, $FF, $FF, $FF ; left\n #_0D8E0C: db $FF, $FF, $FF, $FF ; right\n\n #_0D8E10: db $FF, $FF, $FF ; up\n #_0D8E13: db $FF, $FF, $FF ; down\n #_0D8E16: db $FF, $FF, $FF ; left\n #_0D8E19: db $FF, $FF, $FF ; right\n\n #_0D8E1C: db $FF, $FF, $FF, $FF ; up\n #_0D8E20: db $FF, $FF, $FF, $FF ; down\n #_0D8E24: db $FF, $FF, $FF, $FF ; left\n #_0D8E28: db $FF, $FF, $FF, $FF ; right\n\n #_0D8E2C: db $00, $03, $01, $02\n\n #_0D8E30: db $00, $00, $00, $00\n\n #_0D8E34: db $00, $00, $00, $00, $00\n #_0D8E39: db $03, $03, $03, $03, $03\n\n #_0D8E3E: db $00, $00, $03, $00, $00\n\n #_0D8E43: db $FF, $FF, $FF, $FF, $FF, $FF ; up\n #_0D8E49: db $FF, $FF, $FF, $FF, $FF, $FF ; down\n #_0D8E4F: db $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8E55: db $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n #_0D8E5B: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8E60: db $FF, $FF, $FF, $FF\n\n #_0D8E64: db $FF, $FF\n\n #_0D8E66: db $FF, $FF, $FF, $FF ; up\n #_0D8E6A: db $FF, $FF, $FF, $FF ; down\n #_0D8E6E: db $FF, $FF, $FF, $FF ; left\n #_0D8E72: db $FF, $FF, $FF, $FF ; right\n\n #_0D8E76: db $FF, $FF, $FF ; lower\n #_0D8E79: db $FF, $FF, $FF ; higher\n\n #_0D8E7C: db $FF, $FF, $FF ; higher\n #_0D8E7F: db $FF, $FF, $FF ; lower\n\n #_0D8E82: db $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8E88: db $FF, $FF, $FF ; up\n #_0D8E8B: db $FF, $FF, $FF ; down\n #_0D8E8E: db $FF, $FF, $FF ; left\n #_0D8E91: db $FF, $FF, $FF ; right\n\n #_0D8E94: db $03 ; normal\n #_0D8E95: db $FF ; crystal/triforce\n\n #_0D8E96: db $FF, $FF\n\n #_0D8E98: db $02 ; up\n #_0D8E99: db $03 ; down\n #_0D8E9A: db $FF ; left\n #_0D8E9B: db $FF ; right\n\n #_0D8E9C: db $FF, $FF, $FF, $FF ; up\n #_0D8EA0: db $FF, $FF, $FF, $FF ; down\n #_0D8EA4: db $FF, $FF, $FF, $FF ; left\n #_0D8EA8: db $FF, $FF, $FF, $FF ; right\n\n #_0D8EAC: db $FF, $FF, $FF ; up\n #_0D8EAF: db $FF, $FF, $FF ; down\n #_0D8EB2: db $FF, $FF, $FF ; left\n #_0D8EB5: db $FF, $FF, $FF ; right\n\n #_0D8EB8: db $FF\n #_0D8EB9: db $FF, $FF, $FF, $FF, $FF\n #_0D8EBE: db $FF, $FF, $FF, $FF, $FF, $FF\n\n #_0D8EC4: db $FF\n\n #_0D8EC5: db $FF\n\n #_0D8EC6: db $FF, $FF, $FF, $FF, $FF\n\n #_0D8ECB: db $02, $02, $02, $02, $02, $02, $02, $02, $02 ; up\n #_0D8ED4: db $03, $03, $03, $03, $03, $03, $03, $03, $03 ; down\n #_0D8EDD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; left\n #_0D8EE6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SwordOffsetY", + "code": "LinkOAM_SwordOffsetY:\n #_0D8EEF: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D8EF8: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D8F01: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; left\n #_0D8F0A: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; right\n\n #_0D8F13: db 9, 5, -2, -6, -8, -5, -3, -1, 9 ; up\n #_0D8F1C: db 11, 15, 13, 17, 19, 17, 15, 13, 11 ; down\n #_0D8F25: db -2, 2, 3, 4, 12, 15, 14, 19, 19 ; left\n #_0D8F2E: db -2, 2, 3, 4, 12, 15, 14, 19, 19 ; right\n\n #_0D8F37: db -5, -4, -3, -5, -4, -3 ; up\n #_0D8F3D: db 16, 17, 18, 16, 17, 18 ; down\n #_0D8F43: db 13, 14, 15, 13, 14, 15 ; left\n #_0D8F49: db 13, 14, 15, 13, 14, 15 ; right\n\n #_0D8F4F: db -3, -7, 2 ; up\n #_0D8F52: db 12, 18, 16 ; down\n #_0D8F55: db 15, 13, 10 ; left\n #_0D8F58: db 15, 13, 10 ; right\n\n #_0D8F5B: db -1, -1, -1, -1, -1, -1\n\n #_0D8F61: db -1, -1, -1, -1\n\n #_0D8F65: db 2 ; up\n #_0D8F66: db 3 ; down\n #_0D8F67: db 6 ; left\n #_0D8F68: db 6 ; right\n\n #_0D8F69: db -8, -3, -3 ; up\n #_0D8F6C: db -3, 10, 18 ; down\n #_0D8F6F: db -2, 2, 14 ; left\n #_0D8F72: db -2, 2, 14 ; right\n\n #_0D8F75: db 5, 9, 9 ; up\n #_0D8F78: db 9, 13, 13 ; down\n #_0D8F7B: db 10, 7, 7 ; left\n #_0D8F7E: db 10, 7, 7 ; right\n\n #_0D8F81: db -1, -1 ; up\n #_0D8F83: db -1, -1 ; down\n #_0D8F85: db -1, -1 ; left\n #_0D8F87: db -1, -1 ; right\n\n #_0D8F89: db -1, -1, -1, -1, -1, -1 ; up\n #_0D8F8F: db -1, -1, -1, -1, -1, -1 ; down\n #_0D8F95: db -1, -1, -1, -1, -1, -1 ; left\n #_0D8F9B: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D8FA1: db -1, -1, -1, -1\n\n #_0D8FA5: db 10, 11, -4 ; left\n #_0D8FA8: db 10, 11, -4 ; right\n\n #_0D8FAB: db -1, -1, -1, -1, -1, -1 ; up\n #_0D8FB1: db -1, -1, -1, -1, -1, -1 ; down\n #_0D8FB7: db -1, -1, -1, -1, -1, -1 ; left\n #_0D8FBD: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D8FC3: db -1, -1, -1, -1, -1, -1 ; up\n #_0D8FC9: db -1, -1, -1, -1, -1, -1 ; down\n #_0D8FCF: db -1, -1, -1, -1, -1, -1 ; left\n #_0D8FD5: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D8FDB: db -4, -8, 6, 15, 18, 18, 14, 6\n #_0D8FE3: db -7, -7, 14, 17, 16, 8, 5, 12\n\n #_0D8FEB: db -1, -1, -1 ; up\n #_0D8FEE: db -1, -1, -1 ; down\n #_0D8FF1: db -1, -1, -1 ; left\n #_0D8FF4: db -1, -1, -1 ; right\n\n #_0D8FF7: db -1, -1 ; up\n #_0D8FF9: db -1, -1 ; down\n #_0D8FFB: db -1, -1 ; left\n #_0D8FFD: db -1, -1 ; right\n\n #_0D8FFF: db -1, -1, -1, -1 ; up\n #_0D9003: db -1, -1, -1, -1 ; down\n #_0D9007: db -1, -1, -1, -1 ; left\n #_0D900B: db -1, -1, -1, -1 ; right\n\n #_0D900F: db -1, -1, -1 ; up\n #_0D9012: db -1, -1, -1 ; down\n #_0D9015: db -1, -1, -1 ; left\n #_0D9018: db -1, -1, -1 ; right\n\n #_0D901B: db -1, 8, 6, 10 ; up\n #_0D901F: db -1, 8, 6, 10 ; down\n #_0D9023: db -1, 8, 6, 10 ; left\n #_0D9027: db -1, 8, 6, 10 ; right\n\n #_0D902B: db 16, 16, -5, 16\n\n #_0D902F: db 13, -4, -5, -5\n\n #_0D9033: db -1, -5, -5, -5, -5\n #_0D9038: db 11, 15, 13, 17, 19\n\n #_0D903D: db 13, -3, -7, 18, 18\n\n #_0D9042: db -1, -1, -1, -1, -1, -1 ; up\n #_0D9048: db -1, -1, -1, -1, -1, -1 ; down\n #_0D904E: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9054: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D905A: db -1, -1, -1, -1, -1\n\n #_0D905F: db -1, -1, -1, -1\n\n #_0D9063: db -1, -1\n\n #_0D9065: db -1, -1, -1, -1 ; up\n #_0D9069: db -1, -1, -1, -1 ; down\n #_0D906D: db -1, -1, -1, -1 ; left\n #_0D9071: db -1, -1, -1, -1 ; right\n\n #_0D9075: db -1, -1, -1 ; lower\n #_0D9078: db -1, -1, -1 ; higher\n\n #_0D907B: db -1, -1, -1 ; higher\n #_0D907E: db -1, -1, -1 ; lower\n\n #_0D9081: db -1, -1, -1, -1, -1, -1\n\n #_0D9087: db -1, -1, -1 ; up\n #_0D908A: db -1, -1, -1 ; down\n #_0D908D: db -1, -1, -1 ; left\n #_0D9090: db -1, -1, -1 ; right\n\n #_0D9093: db -1 ; normal\n #_0D9094: db -1 ; crystal/triforce\n\n #_0D9095: db -1, -1\n\n #_0D9097: db 2 ; up\n #_0D9098: db 17 ; down\n #_0D9099: db 12 ; left\n #_0D909A: db 12 ; right\n\n #_0D909B: db -1, -1, -1, -1 ; up\n #_0D909F: db -1, -1, -1, -1 ; down\n #_0D90A3: db -1, -1, -1, -1 ; left\n #_0D90A7: db -1, -1, -1, -1 ; right\n\n #_0D90AB: db 5, -2, -9 ; up\n #_0D90AE: db -7, -2, 16 ; down\n #_0D90B1: db 2, -2, 12 ; left\n #_0D90B4: db 2, -2, 12 ; right\n\n #_0D90B7: db -4\n #_0D90B8: db -5, 4, 14, 20, 15\n #_0D90BD: db 8, -3, -8, 14, -3, 15\n\n #_0D90C3: db -5\n\n #_0D90C4: db 0\n\n #_0D90C5: db -1, -1, -1, -1, -1\n\n #_0D90CA: db 9, 5, -3, -9, -11, -15, -9, -4, 0 ; up\n #_0D90D3: db 11, 14, 12, 17, 19, 23, 17, 15, 13 ; down\n #_0D90DC: db -2, -1, 0, 0, 9, 12, 16, 16, 19 ; left\n #_0D90E5: db -2, -1, 0, 0, 9, 12, 16, 16, 19 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SwordOffsetX", + "code": "LinkOAM_SwordOffsetX:\n #_0D90EE: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D90F7: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D9100: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; left\n #_0D9109: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; right\n\n #_0D9112: db 11, 10, 6, 2, 0, -4, -10, -13, -15 ; up\n #_0D911B: db -8, -6, -5, -3, 8, 12, 10, 14, 15 ; down\n #_0D9124: db 3, -2, -7, -11, -14, -11, -9, -7, 3 ; left\n #_0D912D: db 5, 10, 7, 11, 14, 11, 9, 7, 5 ; right\n\n #_0D9136: db 0, 0, 0, 0, 0, 0 ; up\n #_0D913C: db 7, 7, 7, 7, 7, 7 ; down\n #_0D9142: db -10, -10, -10, -10, -10, -10 ; left\n #_0D9148: db 10, 10, 10, 10, 10, 10 ; right\n\n #_0D914E: db -3, 2, -3 ; up\n #_0D9151: db 10, 7, 10 ; down\n #_0D9154: db -12, -16, -8 ; left\n #_0D9157: db 12, 16, 8 ; right\n\n #_0D915A: db -1, -1, -1, -1, -1, -1\n\n #_0D9160: db -1, -1, -1, -1\n\n #_0D9164: db -4 ; up\n #_0D9165: db 12 ; down\n #_0D9166: db 8 ; left\n #_0D9167: db 0 ; right\n\n #_0D9168: db -2, -2, -2 ; up\n #_0D916B: db 10, 10, 9 ; down\n #_0D916E: db 1, -10, -11 ; left\n #_0D9171: db 7, 10, 11 ; right\n\n #_0D9174: db -2, -5, -5 ; up\n #_0D9177: db 9, 2, 2 ; down\n #_0D917A: db -2, -3, -3 ; left\n #_0D917D: db 2, 11, 11 ; right\n\n #_0D9180: db -1, -1 ; up\n #_0D9182: db -1, -1 ; down\n #_0D9184: db -1, -1 ; left\n #_0D9186: db -1, -1 ; right\n\n #_0D9188: db -1, -1, -1, -1, -1, -1 ; up\n #_0D918E: db -1, -1, -1, -1, -1, -1 ; down\n #_0D9194: db -1, -1, -1, -1, -1, -1 ; left\n #_0D919A: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D91A0: db -1, -1, -1, -1\n\n #_0D91A4: db -3, -7, 8 ; left\n #_0D91A7: db 3, 7, 0 ; right\n\n #_0D91AA: db -1, -1, -1, -1, -1, -1 ; up\n #_0D91B0: db -1, -1, -1, -1, -1, -1 ; down\n #_0D91B6: db -1, -1, -1, -1, -1, -1 ; left\n #_0D91BC: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D91C2: db -1, -1, -1, -1, -1, -1 ; up\n #_0D91C8: db -1, -1, -1, -1, -1, -1 ; down\n #_0D91CE: db -1, -1, -1, -1, -1, -1 ; left\n #_0D91D4: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D91DA: db 13, 6, 14, 14, 8, -1, -14, -14\n #_0D91E2: db -1, 9, -5, 3, 10, 13, -11, -12\n\n #_0D91EA: db -1, -1, -1 ; up\n #_0D91ED: db -1, -1, -1 ; down\n #_0D91F0: db -1, -1, -1 ; left\n #_0D91F3: db -1, -1, -1 ; right\n\n #_0D91F6: db -1, -1 ; up\n #_0D91F8: db -1, -1 ; down\n #_0D91FA: db -1, -1 ; left\n #_0D91FC: db -1, -1 ; right\n\n #_0D91FE: db -1, -1, -1, -1 ; up\n #_0D9202: db -1, -1, -1, -1 ; down\n #_0D9206: db -1, -1, -1, -1 ; left\n #_0D920A: db -1, -1, -1, -1 ; right\n\n #_0D920E: db -1, -1, -1 ; up\n #_0D9211: db -1, -1, -1 ; down\n #_0D9214: db -1, -1, -1 ; left\n #_0D9217: db -1, -1, -1 ; right\n\n #_0D921A: db -1, -14, -13, -12 ; up\n #_0D921E: db -1, 14, 13, 12 ; down\n #_0D9222: db -1, -14, -13, -12 ; left\n #_0D9226: db -1, 14, 13, 12 ; right\n\n #_0D922A: db 7, -9, 0, 9\n\n #_0D922E: db 14, 14, 10, 10\n\n #_0D9232: db 14, 11, 8, 8, 8\n #_0D9237: db 15, 14, 12, 12, 8\n\n #_0D923C: db 15, 14, 10, 4, 4\n\n #_0D9241: db -1, -1, -1, -1, -1, -1 ; up\n #_0D9247: db -1, -1, -1, -1, -1, -1 ; down\n #_0D924D: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9253: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D9259: db -1, -1, -1, -1, -1\n\n #_0D925E: db -1, -1, -1, -1\n\n #_0D9262: db -1, -1\n\n #_0D9264: db -1, -1, -1, -1 ; up\n #_0D9268: db -1, -1, -1, -1 ; down\n #_0D926C: db -1, -1, -1, -1 ; left\n #_0D9270: db -1, -1, -1, -1 ; right\n\n #_0D9274: db -1, -1, -1 ; lower\n #_0D9277: db -1, -1, -1 ; higher\n\n #_0D927A: db -1, -1, -1 ; higher\n #_0D927D: db -1, -1, -1 ; lower\n\n #_0D9280: db -1, -1, -1, -1, -1, -1\n\n #_0D9286: db -1, -1, -1 ; up\n #_0D9289: db -1, -1, -1 ; down\n #_0D928C: db -1, -1, -1 ; left\n #_0D928F: db -1, -1, -1 ; right\n\n #_0D9292: db -1 ; normal\n #_0D9293: db -1 ; crystal/triforce\n\n #_0D9294: db -1, -1\n\n #_0D9296: db 4 ; up\n #_0D9297: db 4 ; down\n #_0D9298: db -7 ; left\n #_0D9299: db 15 ; right\n\n #_0D929A: db -1, -1, -1, -1 ; up\n #_0D929E: db -1, -1, -1, -1 ; down\n #_0D92A2: db -1, -1, -1, -1 ; left\n #_0D92A6: db -1, -1, -1, -1 ; right\n\n #_0D92AA: db -1, -3, -3 ; up\n #_0D92AD: db 9, 12, 8 ; down\n #_0D92B0: db 10, 3, -13 ; left\n #_0D92B3: db -10, 5, 13 ; right\n\n #_0D92B6: db 13\n #_0D92B7: db 13, 16, 11, 2, -11\n #_0D92BC: db -16, -9, 0, 8, -9, -11\n\n #_0D92C2: db 12\n\n #_0D92C3: db -7\n\n #_0D92C4: db -1, -1, -1, -1, -1\n\n #_0D92C9: db 11, 9, 7, 6, 3, -1, -5, -11, -14 ; up\n #_0D92D2: db -8, -7, -6, -5, 5, 8, 12, 10, 14 ; down\n #_0D92DB: db 3, -2, -8, -13, -16, -20, -15, -12, -7 ; left\n #_0D92E4: db 5, 10, 8, 13, 16, 20, 15, 12, 7 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux1Offset_Y", + "code": "LinkOAM_Aux1Offset_Y:\n #_0D92ED: db 0, -1, -1, 8, 8, 8, -1\n\n #_0D92F4: db -1, -1, -1\n\n #_0D92F7: db -1, 7, 10 ; up\n #_0D92FA: db -1, 5, 8 ; down\n #_0D92FD: db -1, 8, 12 ; left\n #_0D9300: db -1, 8, 12 ; right\n\n #_0D9303: db 2, 7, 13, -1 ; up\n #_0D9307: db 20, 14, 7, -1 ; down\n #_0D930B: db 20, 21, 20, -1 ; left\n #_0D930F: db 20, 21, 20, -1 ; right\n\n #_0D9313: db -1, -1, -1, -1\n\n #_0D9317: db -1, -1, -1, -1\n\n #_0D931B: db -1, -1, -1, -8, -8\n #_0D9320: db -1, -1, -1, -1, -1\n\n #_0D9325: db -1, -1, -1, -1, -1\n\n #_0D932A: db -1, 5, 11, -1, -1\n\n #_0D932F: db -1, -1, -1, -1\n\n #_0D9333: db -1, -1\n\n #_0D9335: db -1, 5, 11, -1 ; up\n #_0D9339: db -1, 6, 1, -1 ; down\n #_0D933D: db -1, 13, 15, -1 ; left\n #_0D9341: db -1, 13, 15, -1 ; right\n\n #_0D9345: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D934E: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D9357: db -1, -1, -1, -1, 12, 12, 12, -1, -1 ; left\n #_0D9360: db -1, -1, -1, -1, 12, 12, 12, -1, -1 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux1Offset_X", + "code": "LinkOAM_Aux1Offset_X:\n #_0D9369: db 8, -1, -1, 4, 4, 4, -1\n\n #_0D9370: db -1, -1, -1\n\n #_0D9373: db -1, -7, -9 ; up\n #_0D9376: db -1, -8, -10 ; down\n #_0D9379: db -1, 13, 16 ; left\n #_0D937C: db -1, -5, -8 ; right\n\n #_0D937F: db -2, -6, -5, -1 ; up\n #_0D9383: db -1, -5, -6, -1 ; down\n #_0D9387: db -3, 4, 9, -1 ; left\n #_0D938B: db 11, 4, -1, -1 ; right\n\n #_0D938F: db -1, -1, -1, -1\n\n #_0D9393: db -1, -1, -1, -1\n\n #_0D9397: db -1, -1, -1, 4, 4\n #_0D939C: db -1, -1, -1, -1, -1\n\n #_0D93A1: db -1, -1, -1, -1, -1\n\n #_0D93A6: db -1, -5, -8, -1, -1\n\n #_0D93AB: db -1, -1, -1, -1\n\n #_0D93AF: db -1, -1\n\n #_0D93B1: db -1, -5, -8, -1 ; up\n #_0D93B5: db -1, -5, -8, -1 ; down\n #_0D93B9: db -1, 15, 17, -1 ; left\n #_0D93BD: db -1, -7, -9, -1 ; right\n\n #_0D93C1: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D93CA: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D93D3: db -1, -1, -1, -1, -3, -7, -3, -1, -1 ; left\n #_0D93DC: db -1, -1, -1, -1, 11, 15, 11, -1, -1 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2Offset_Y", + "code": "LinkOAM_Aux2Offset_Y:\n #_0D93E5: db 16, -1, -1, -1, -1, -1, -1\n\n #_0D93EC: db -1, -1, -1\n\n #_0D93EF: db -1, 7, 10 ; up\n #_0D93F2: db -1, 5, 8 ; down\n #_0D93F5: db -1, -1, -1 ; left\n #_0D93F8: db -1, -1, -1 ; right\n\n #_0D93FB: db 2, 7, 13, -1 ; up\n #_0D93FF: db 20, 14, 7, -1 ; down\n #_0D9403: db -1, -1, -1, -1 ; left\n #_0D9407: db -1, -1, -1, -1 ; right\n\n #_0D940B: db -1, -1, -1, -1\n\n #_0D940F: db -1, -1, -1, -1\n\n #_0D9413: db -1, -1, -1, -1, -1\n #_0D9418: db -1, -1, -1, -1, -1\n\n #_0D941D: db -1, -1, -1, -1, -1\n\n #_0D9422: db -1, 5, 11, -1, -1\n\n #_0D9427: db -1, -1, -1, -1\n\n #_0D942B: db -1, -1\n\n #_0D942D: db -1, 5, 11, -1 ; up\n #_0D9431: db -1, 6, 1, -1 ; down\n #_0D9435: db -1, -1, -1, -1 ; left\n #_0D9439: db -1, -1, -1, -1 ; right\n\n #_0D943D: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D9446: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D944F: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; left\n #_0D9458: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2Offset_X", + "code": "LinkOAM_Aux2Offset_X:\n #_0D9461: db -8, -1, -1, -1, -1, -1, -1\n\n #_0D9468: db -1, -1, -1\n\n #_0D946B: db -1, 15, 17 ; up\n #_0D946E: db -1, 16, 18 ; down\n #_0D9471: db -1, -1, -1 ; left\n #_0D9474: db -1, -1, -1 ; right\n\n #_0D9477: db 10, 14, 13, -1 ; up\n #_0D947B: db 9, 14, 14, -1 ; down\n #_0D947F: db -1, -1, -1, -1 ; left\n #_0D9483: db -1, -1, -1, -1 ; right\n\n #_0D9487: db -1, -1, -1, -1\n\n #_0D948B: db -1, -1, -1, -1\n\n #_0D948F: db -1, -1, -1, -1, -1\n #_0D9494: db -1, -1, -1, -1, -1\n\n #_0D9499: db -1, -1, -1, -1, -1\n\n #_0D949E: db -1, 13, 16, -1, -1\n\n #_0D94A3: db -1, -1, -1, -1\n\n #_0D94A7: db -1, -1\n\n #_0D94A9: db -1, 13, 16, -1 ; up\n #_0D94AD: db -1, 13, 16, -1 ; down\n #_0D94B1: db -1, -1, -1, -1 ; left\n #_0D94B5: db -1, -1, -1, -1 ; right\n\n #_0D94B9: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; up\n #_0D94C2: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; down\n #_0D94CB: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; left\n #_0D94D4: db -1, -1, -1, -1, -1, -1, -1, -1, -1 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldOffsetY", + "code": "LinkOAM_ShieldOffsetY:\n #_0D94DD: db 5, 5, 4, 3, 5, 5, 4, 3, 5 ; up\n #_0D94E6: db 9, 10, 9, 7, 8, 10, 9, 7, 8 ; down\n #_0D94EF: db 5, 5, 4, 3, 4, 5, 4, 3, 4 ; left\n #_0D94F8: db 5, 5, 4, 3, 4, 5, 4, 3, 4 ; right\n\n #_0D9501: db 12, 12, 8, 8, 6, 6, 6, 6, 6 ; up\n #_0D950A: db 1, 1, 3, 3, 7, 7, 7, 7, 7 ; down\n #_0D9513: db 5, 5, 5, 5, 5, 5, 5, 5, 5 ; left\n #_0D951C: db 5, 5, 5, 5, 5, 5, 5, 5, 5 ; right\n\n #_0D9525: db 5, 6, 7, 5, 6, 7 ; up\n #_0D952B: db 6, 7, 8, 6, 7, 8 ; down\n #_0D9531: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9537: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D953D: db 7, 5, 7 ; up\n #_0D9540: db 7, 8, 7 ; down\n #_0D9543: db 5, 5, 5 ; left\n #_0D9546: db 5, 5, 5 ; right\n\n #_0D9549: db 16, -1, -1, -1, -1, -1\n\n #_0D954F: db -1, -1, -1, -1\n\n #_0D9553: db 5 ; up\n #_0D9554: db 8 ; down\n #_0D9555: db 7 ; left\n #_0D9556: db 7 ; right\n\n #_0D9557: db 6, 5, 5 ; up\n #_0D955A: db 7, 7, 7 ; down\n #_0D955D: db 5, 5, 5 ; left\n #_0D9560: db 5, 5, 5 ; right\n\n #_0D9563: db -1, -1, -1 ; up\n #_0D9566: db -1, -1, -1 ; down\n #_0D9569: db -1, -1, -1 ; left\n #_0D956C: db -1, -1, -1 ; right\n\n #_0D956F: db 6, 6 ; up\n #_0D9571: db 11, 7 ; down\n #_0D9573: db 4, 8 ; left\n #_0D9575: db 4, 8 ; right\n\n #_0D9577: db 4, 5, 6, 4, 5, 6 ; up\n #_0D957D: db 10, 11, 12, 10, 11, 12 ; down\n #_0D9583: db 5, 6, 7, 5, 6, 7 ; left\n #_0D9589: db 5, 6, 7, 5, 6, 7 ; right\n\n #_0D958F: db -1, -1, -1, -1\n\n #_0D9593: db -1, -1, -1 ; left\n #_0D9596: db -1, -1, -1 ; right\n\n #_0D9599: db -1, -1, -1, -1, -1, -1 ; up\n #_0D959F: db -1, -1, -1, -1, -1, -1 ; down\n #_0D95A5: db -1, -1, -1, -1, -1, -1 ; left\n #_0D95AB: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D95B1: db -1, -1, -1, -1, -1, -1 ; up\n #_0D95B7: db -1, -1, -1, -1, -1, -1 ; down\n #_0D95BD: db -1, -1, -1, -1, -1, -1 ; left\n #_0D95C3: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D95C9: db -1, -1, -1, -1, -1, -1, -1, -1\n #_0D95D1: db -1, -1, -1, -1, -1, -1, -1, -1\n\n #_0D95D9: db -1, -1, -1 ; up\n #_0D95DC: db -1, -1, -1 ; down\n #_0D95DF: db -1, -1, -1 ; left\n #_0D95E2: db -1, -1, -1 ; right\n\n #_0D95E5: db -1, -1 ; up\n #_0D95E7: db -1, -1 ; down\n #_0D95E9: db -1, -1 ; left\n #_0D95EB: db -1, -1 ; right\n\n #_0D95ED: db -1, -1, -1, -1 ; up\n #_0D95F1: db -1, -1, -1, -1 ; down\n #_0D95F5: db -1, -1, -1, -1 ; left\n #_0D95F9: db -1, -1, -1, -1 ; right\n\n #_0D95FD: db -1, -1, -1 ; up\n #_0D9600: db -1, -1, -1 ; down\n #_0D9603: db -1, -1, -1 ; left\n #_0D9606: db -1, -1, -1 ; right\n\n #_0D9609: db -1, -1, -1, -1 ; up\n #_0D960D: db -1, -1, -1, -1 ; down\n #_0D9611: db -1, -1, -1, -1 ; left\n #_0D9615: db -1, -1, -1, -1 ; right\n\n #_0D9619: db 10, 5, 4, 5\n\n #_0D961D: db 10, 10, 10, 10\n\n #_0D9621: db 10, 10, 10, 10, 10\n #_0D9626: db 7, 7, 7, 7, 7\n\n #_0D962B: db 10, 10, 1, 10, 10\n\n #_0D9630: db -1, -1, -1, -1, -1, -1 ; up\n #_0D9636: db -1, -1, -1, -1, -1, -1 ; down\n #_0D963C: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9642: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D9648: db -1, -1, -1, -1, -1\n\n #_0D964D: db -1, -1, -1, -1\n\n #_0D9651: db -1, -1\n\n #_0D9653: db -1, -1, -1, -1 ; up\n #_0D9657: db -1, -1, -1, -1 ; down\n #_0D965B: db -1, -1, -1, -1 ; left\n #_0D965F: db -1, -1, -1, -1 ; right\n\n #_0D9663: db -1, -1, -1 ; lower\n #_0D9666: db -1, -1, -1 ; higher\n\n #_0D9669: db -1, -1, -1 ; higher\n #_0D966C: db -1, -1, -1 ; lower\n\n #_0D966F: db -1, -1, -1, -1, -1, -1\n\n #_0D9675: db 5, 5, 5 ; up\n #_0D9678: db 7, 7, 7 ; down\n #_0D967B: db -1, -1, -1 ; left\n #_0D967E: db -1, -1, -1 ; right\n\n #_0D9681: db 9 ; normal\n #_0D9682: db -1 ; crystal/triforce\n\n #_0D9683: db -1, -1\n\n #_0D9685: db 5 ; up\n #_0D9686: db 7 ; down\n #_0D9687: db -1 ; left\n #_0D9688: db -1 ; right\n\n #_0D9689: db -1, -1, -1, -1 ; up\n #_0D968D: db -1, -1, -1, -1 ; down\n #_0D9691: db -1, -1, -1, -1 ; left\n #_0D9695: db -1, -1, -1, -1 ; right\n\n #_0D9699: db -1, -1, -1 ; up\n #_0D969C: db -1, -1, -1 ; down\n #_0D969F: db -1, -1, -1 ; left\n #_0D96A2: db -1, -1, -1 ; right\n\n #_0D96A5: db -1\n #_0D96A6: db -1, -1, -1, -1, -1\n #_0D96AB: db -1, -1, -1, -1, -1, -1\n\n #_0D96B1: db -1\n\n #_0D96B2: db -1\n\n #_0D96B3: db -1, -1, -1, -1, -1\n\n #_0D96B8: db 8, 8, 6, 6, 4, 2, 5, 6, 6 ; up\n #_0D96C1: db 1, 1, 4, 4, 6, 8, 6, 6, 6 ; down\n #_0D96CA: db 4, 4, 4, 4, 4, 4, 4, 4, 4 ; left\n #_0D96D3: db 4, 4, 4, 4, 4, 4, 4, 4, 4 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldOffsetX", + "code": "LinkOAM_ShieldOffsetX:\n #_0D96DC: db 5, 5, 5, 5, 5, 5, 5, 5, 5 ; up\n #_0D96E5: db -4, -4, -4, -4, -4, -4, -4, -4, -4 ; down\n #_0D96EE: db -8, -8, -8, -8, -8, -8, -8, -8, -8 ; left\n #_0D96F7: db 8, 8, 8, 8, 8, 8, 8, 8, 8 ; right\n\n #_0D9700: db 6, 6, 8, 8, 10, 10, 10, 10, 10 ; up\n #_0D9709: db -5, -5, -7, -7, -10, -10, -10, -10, -10 ; down\n #_0D9712: db 1, 1, 1, 1, 0, 0, 0, 0, 0 ; left\n #_0D971B: db -1, -1, -1, -1, 0, 0, 0, 0, 0 ; right\n\n #_0D9724: db 9, 9, 9, 9, 9, 9 ; up\n #_0D972A: db -9, -9, -9, -9, -9, -9 ; down\n #_0D9730: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9736: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D973C: db 10, 10, 10 ; up\n #_0D973F: db -10, -10, -10 ; down\n #_0D9742: db 0, -1, 0 ; left\n #_0D9745: db 0, 1, 0 ; right\n\n #_0D9748: db -4, -1, -1, -1, -1, -1\n\n #_0D974E: db -1, -1, -1, -1\n\n #_0D9752: db 8 ; up\n #_0D9753: db -4 ; down\n #_0D9754: db 2 ; left\n #_0D9755: db -3 ; right\n\n #_0D9756: db 9, 9, 9 ; up\n #_0D9759: db -10, -10, -10 ; down\n #_0D975C: db 0, 0, 0 ; left\n #_0D975F: db 0, 0, 0 ; right\n\n #_0D9762: db -1, -1, -1 ; up\n #_0D9765: db -1, -1, -1 ; down\n #_0D9768: db -1, -1, -1 ; left\n #_0D976B: db -1, -1, -1 ; right\n\n #_0D976E: db 5, 9 ; up\n #_0D9770: db -4, -10 ; down\n #_0D9772: db 0, 0 ; left\n #_0D9774: db 8, 0 ; right\n\n #_0D9776: db 5, 5, 5, 5, 5, 5 ; up\n #_0D977C: db -4, -4, -4, -4, -4, -4 ; down\n #_0D9782: db -8, -8, -8, -8, -8, -8 ; left\n #_0D9788: db 8, 8, 8, 8, 8, 8 ; right\n\n #_0D978E: db -1, -1, -1, -1\n\n #_0D9792: db -1, -1, -1 ; left\n #_0D9795: db -1, -1, -1 ; right\n\n #_0D9798: db -1, -1, -1, -1, -1, -1 ; up\n #_0D979E: db -1, -1, -1, -1, -1, -1 ; down\n #_0D97A4: db -1, -1, -1, -1, -1, -1 ; left\n #_0D97AA: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D97B0: db -1, -1, -1, -1, -1, -1 ; up\n #_0D97B6: db -1, -1, -1, -1, -1, -1 ; down\n #_0D97BC: db -1, -1, -1, -1, -1, -1 ; left\n #_0D97C2: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D97C8: db -1, -1, -1, -1, -1, -1, -1, -1\n #_0D97D0: db -1, -1, -1, -1, -1, -1, -1, -1\n\n #_0D97D8: db -1, -1, -1 ; up\n #_0D97DB: db -1, -1, -1 ; down\n #_0D97DE: db -1, -1, -1 ; left\n #_0D97E1: db -1, -1, -1 ; right\n\n #_0D97E4: db -1, -1 ; up\n #_0D97E6: db -1, -1 ; down\n #_0D97E8: db -1, -1 ; left\n #_0D97EA: db -1, -1 ; right\n\n #_0D97EC: db -1, -1, -1, -1 ; up\n #_0D97F0: db -1, -1, -1, -1 ; down\n #_0D97F4: db -1, -1, -1, -1 ; left\n #_0D97F8: db -1, -1, -1, -1 ; right\n\n #_0D97FC: db -1, -1, -1 ; up\n #_0D97FF: db -1, -1, -1 ; down\n #_0D9802: db -1, -1, -1 ; left\n #_0D9805: db -1, -1, -1 ; right\n\n #_0D9808: db -1, -1, -1, -1 ; up\n #_0D980C: db -1, -1, -1, -1 ; down\n #_0D9810: db -1, -1, -1, -1 ; left\n #_0D9814: db -1, -1, -1, -1 ; right\n\n #_0D9818: db -4, -8, 5, 8\n\n #_0D981C: db -4, -4, -4, -4\n\n #_0D9820: db -5, -5, -5, -5, -5\n #_0D9825: db -10, -10, -10, -10, -10\n\n #_0D982A: db -5, -5, -7, -4, -4\n\n #_0D982F: db -1, -1, -1, -1, -1, -1 ; up\n #_0D9835: db -1, -1, -1, -1, -1, -1 ; down\n #_0D983B: db -1, -1, -1, -1, -1, -1 ; left\n #_0D9841: db -1, -1, -1, -1, -1, -1 ; right\n\n #_0D9847: db -1, -1, -1, -1, -1\n\n #_0D984C: db -1, -1, -1, -1\n\n #_0D9850: db -1, -1\n\n #_0D9852: db -1, -1, -1, -1 ; up\n #_0D9856: db -1, -1, -1, -1 ; down\n #_0D985A: db -1, -1, -1, -1 ; left\n #_0D985E: db -1, -1, -1, -1 ; right\n\n #_0D9862: db -1, -1, -1 ; lower\n #_0D9865: db -1, -1, -1 ; higher\n\n #_0D9868: db -1, -1, -1 ; higher\n #_0D986B: db -1, -1, -1 ; lower\n\n #_0D986E: db -1, -1, -1, -1, -1, -1\n\n #_0D9874: db 9, 9, 9 ; up\n #_0D9877: db -10, -10, -10 ; down\n #_0D987A: db -1, -1, -1 ; left\n #_0D987D: db -1, -1, -1 ; right\n\n #_0D9880: db -6 ; normal\n #_0D9881: db -1 ; crystal/triforce\n\n #_0D9882: db -1, -1\n\n #_0D9884: db 10 ; up\n #_0D9885: db -10 ; down\n #_0D9886: db -1 ; left\n #_0D9887: db -1 ; right\n\n #_0D9888: db -1, -1, -1, -1 ; up\n #_0D988C: db -1, -1, -1, -1 ; down\n #_0D9890: db -1, -1, -1, -1 ; left\n #_0D9894: db -1, -1, -1, -1 ; right\n\n #_0D9898: db -1, -1, -1 ; up\n #_0D989B: db -1, -1, -1 ; down\n #_0D989E: db -1, -1, -1 ; left\n #_0D98A1: db -1, -1, -1 ; right\n\n #_0D98A4: db -1\n #_0D98A5: db -1, -1, -1, -1, -1\n #_0D98AA: db -1, -1, -1, -1, -1, -1\n\n #_0D98B0: db -1\n\n #_0D98B1: db -1\n\n #_0D98B2: db -1, -1, -1, -1, -1\n\n #_0D98B7: db 10, 10, 10, 10, 10, 10, 10, 10, 10 ; up\n #_0D98C0: db -9, -9, -9, -9, -10, -10, -10, -10, -10 ; down\n #_0D98C9: db 1, 1, 1, 2, 2, 2, 1, 2, 2 ; left\n #_0D98D2: db -1, -1, -1, -2, -2, -2, -1, -2, -2 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowOffset_Y", + "code": "LinkOAM_ShadowOffset_Y:\n #_0D98DB: db 16, 16, 17, 17\n #_0D98DF: db 16, 16, 16, 16\n #_0D98E3: db 18, 18, 18, 18\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowOffset_X", + "code": "LinkOAM_ShadowOffset_X:\n #_0D98E7: db 0, 0, -1, 1\n #_0D98EB: db 0, 0, 0, 0\n #_0D98EF: db 0, 0, 0, 0\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "AttackHitboxOffset_Y", + "code": "AttackHitboxOffset_Y:\n #_0D98F3: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; up\n #_0D98FC: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; down\n #_0D9905: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; left\n #_0D990E: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9917: db 9, 5, -2, -6, -8, -5, -3, 7, 9 ; up\n #_0D9920: db 11, 15, 21, 25, 27, 25, 23, 13, 11 ; down\n #_0D9929: db -2, 2, 3, 12, 12, 15, 22, 27, 27 ; left\n #_0D9932: db -2, 2, 3, 12, 12, 15, 22, 27, 27 ; right\n\n #_0D993B: db -5, -4, -3, -5, -4, -3 ; up\n #_0D9941: db 24, 25, 26, 24, 25, 26 ; down\n #_0D9947: db 13, 14, 15, 13, 14, 15 ; left\n #_0D994D: db 13, 14, 15, 13, 14, 15 ; right\n\n #_0D9953: db -3, -7, 2 ; up\n #_0D9956: db 20, 26, 24 ; down\n #_0D9959: db 10, 13, 15 ; left\n #_0D995C: db 10, 13, 15 ; right\n\n #_0D995F: db $80, $80, $80, $80, $80, $80\n\n #_0D9965: db $80, $80, $80, $80\n\n #_0D9969: db $80 ; up\n #_0D996A: db $80 ; down\n #_0D996B: db $80 ; left\n #_0D996C: db $80 ; right\n\n #_0D996D: db -7, -1, -2 ; up\n #_0D9970: db -3, 10, 26 ; down\n #_0D9973: db -2, 3, 14 ; left\n #_0D9976: db -2, 3, 14 ; right\n\n #_0D9979: db $80, $80, $80 ; up\n #_0D997C: db $80, $80, $80 ; down\n #_0D997F: db $80, $80, $80 ; left\n #_0D9982: db $80, $80, $80 ; right\n\n #_0D9985: db $80, $80 ; up\n #_0D9987: db $80, $80 ; down\n #_0D9989: db $80, $80 ; left\n #_0D998B: db $80, $80 ; right\n\n #_0D998D: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9993: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9999: db $80, $80, $80, $80, $80, $80 ; left\n #_0D999F: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D99A5: db $80, $80, $80, $80\n\n #_0D99A9: db $80, $80, $80 ; left\n #_0D99AC: db $80, $80, $80 ; right\n\n #_0D99AF: db $80, $80, $80, $80, $80, $80 ; up\n #_0D99B5: db $80, $80, $80, $80, $80, $80 ; down\n #_0D99BB: db $80, $80, $80, $80, $80, $80 ; left\n #_0D99C1: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D99C7: db $80, $80, $80, $80, $80, $80 ; up\n #_0D99CD: db $80, $80, $80, $80, $80, $80 ; down\n #_0D99D3: db $80, $80, $80, $80, $80, $80 ; left\n #_0D99D9: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D99DF: db -4, -8, 6, 15, 26, 26, 14, 6\n #_0D99E7: db -7, -7, 22, 26, 16, 8, 5, 12\n\n #_0D99EF: db $80, $80, $80 ; up\n #_0D99F2: db $80, $80, $80 ; down\n #_0D99F5: db $80, $80, $80 ; left\n #_0D99F8: db $80, $80, $80 ; right\n\n #_0D99FB: db $80, $80 ; up\n #_0D99FD: db $80, $80 ; down\n #_0D99FF: db $80, $80 ; left\n #_0D9A01: db $80, $80 ; right\n\n #_0D9A03: db $80, $80, $80, $80 ; up\n #_0D9A07: db $80, $80, $80, $80 ; down\n #_0D9A0B: db $80, $80, $80, $80 ; left\n #_0D9A0F: db $80, $80, $80, $80 ; right\n\n #_0D9A13: db $80, $80, $80 ; up\n #_0D9A16: db $80, $80, $80 ; down\n #_0D9A19: db $80, $80, $80 ; left\n #_0D9A1C: db $80, $80, $80 ; right\n\n #_0D9A1F: db $80, $80, $80, $80 ; up\n #_0D9A23: db $80, $80, $80, $80 ; down\n #_0D9A27: db $80, $80, $80, $80 ; left\n #_0D9A2B: db $80, $80, $80, $80 ; right\n\n #_0D9A2F: db 24, 16, -5, 16\n\n #_0D9A33: db 13, -4, -5, -5\n\n #_0D9A37: db -1, -5, -5, -5, -5\n #_0D9A3C: db 11, 15, 21, 25, 27\n\n #_0D9A41: db 13, -3, -7, 26, 18\n\n #_0D9A46: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9A4C: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9A52: db $80, $80, $80, $80, $80, $80 ; left\n #_0D9A58: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9A5E: db $80, $80, $80, $80, $80\n\n #_0D9A63: db $80, $80, $80, $80\n\n #_0D9A67: db $80, $80\n\n #_0D9A69: db $80, $80, $80, $80 ; up\n #_0D9A6D: db $80, $80, $80, $80 ; down\n #_0D9A71: db $80, $80, $80, $80 ; left\n #_0D9A75: db $80, $80, $80, $80 ; right\n\n #_0D9A79: db $80, $80, $80 ; lower\n #_0D9A7C: db $80, $80, $80 ; higher\n\n #_0D9A7F: db $80, $80, $80 ; higher\n #_0D9A82: db $80, $80, $80 ; lower\n\n #_0D9A85: db $80, $80, $80, $80, $80, $80\n\n #_0D9A8B: db $80, $80, $80 ; up\n #_0D9A8E: db $80, $80, $80 ; down\n #_0D9A91: db $80, $80, $80 ; left\n #_0D9A94: db $80, $80, $80 ; right\n\n #_0D9A97: db $80 ; normal\n #_0D9A98: db $80 ; crystal/triforce\n\n #_0D9A99: db $80, $80\n\n #_0D9A9B: db $80 ; up\n #_0D9A9C: db $80 ; down\n #_0D9A9D: db $80 ; left\n #_0D9A9E: db $80 ; right\n\n #_0D9A9F: db $80, $80, $80, $80 ; up\n #_0D9AA3: db $80, $80, $80, $80 ; down\n #_0D9AA7: db $80, $80, $80, $80 ; left\n #_0D9AAB: db $80, $80, $80, $80 ; right\n\n #_0D9AAF: db $80, $80, $80 ; up\n #_0D9AB2: db $80, $80, $80 ; down\n #_0D9AB5: db $80, $80, $80 ; left\n #_0D9AB8: db $80, $80, $80 ; right\n\n #_0D9ABB: db -4\n #_0D9ABC: db -5, 4, 14, 20, 15\n #_0D9AC1: db 8, -3, -8, 14, -3, 15\n\n #_0D9AC7: db $80\n\n #_0D9AC8: db $80\n\n #_0D9AC9: db $80, $80, $80, $80, $80\n\n #_0D9ACE: db 9, 5, -3, -9, -11, -15, -9, -4, 8 ; up\n #_0D9AD7: db 11, 14, 20, 25, 27, 31, 25, 23, 13 ; down\n #_0D9AE0: db -2, -1, 0, 8, 9, 12, 16, 24, 30 ; left\n #_0D9AE9: db -2, -1, 0, 8, 9, 12, 16, 24, 30 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "AttackHitboxOffset_X", + "code": "AttackHitboxOffset_X:\n #_0D9AF2: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; up\n #_0D9AFB: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; down\n #_0D9B04: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; left\n #_0D9B0D: db $80, $80, $80, $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9B16: db 19, 18, 14, 10, 0, -4, -10, -13, -15 ; up\n #_0D9B1F: db -8, -6, -5, 5, 8, 12, 18, 22, 23 ; down\n #_0D9B28: db 3, -2, -7, -11, -14, -11, -9, 1, 3 ; left\n #_0D9B31: db 5, 10, 15, 19, 22, 19, 17, 7, 5 ; right\n\n #_0D9B3A: db 0, 0, 0, 0, 0, 0 ; up\n #_0D9B40: db 7, 7, 7, 7, 7, 7 ; down\n #_0D9B46: db -10, -10, -10, -10, -10, -10 ; left\n #_0D9B4C: db 18, 18, 18, 18, 18, 18 ; right\n\n #_0D9B52: db -3, 2, -3 ; up\n #_0D9B55: db 10, 7, 10 ; down\n #_0D9B58: db -16, -24, -20 ; left\n #_0D9B5B: db 16, 24, 20 ; right\n\n #_0D9B5E: db $80, $80, $80, $80, $80, $80\n\n #_0D9B64: db $80, $80, $80, $80\n\n #_0D9B68: db $80 ; up\n #_0D9B69: db $80 ; down\n #_0D9B6A: db $80 ; left\n #_0D9B6B: db $80 ; right\n\n #_0D9B6C: db -2, -2, -2 ; up\n #_0D9B6F: db 10, 10, 10 ; down\n #_0D9B72: db 1, -10, -11 ; left\n #_0D9B75: db 7, 18, 19 ; right\n\n #_0D9B78: db $80, $80, $80 ; up\n #_0D9B7B: db $80, $80, $80 ; down\n #_0D9B7E: db $80, $80, $80 ; left\n #_0D9B81: db $80, $80, $80 ; right\n\n #_0D9B84: db $80, $80 ; up\n #_0D9B86: db $80, $80 ; down\n #_0D9B88: db $80, $80 ; left\n #_0D9B8A: db $80, $80 ; right\n\n #_0D9B8C: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9B92: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9B98: db $80, $80, $80, $80, $80, $80 ; left\n #_0D9B9E: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9BA4: db $80, $80, $80, $80\n\n #_0D9BA8: db $80, $80, $80 ; left\n #_0D9BAB: db $80, $80, $80 ; right\n\n #_0D9BAE: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9BB4: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9BBA: db $80, $80, $80, $80, $80, $80 ; left\n #_0D9BC0: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9BC6: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9BCC: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9BD2: db $80, $80, $80, $80, $80, $80 ; left\n #_0D9BD8: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9BDE: db 13, 6, 22, 22, 8, -1, -14, -14\n #_0D9BE6: db -1, 9, -5, 3, 18, 21, -11, -12\n\n #_0D9BEE: db $80, $80, $80 ; up\n #_0D9BF1: db $80, $80, $80 ; down\n #_0D9BF4: db $80, $80, $80 ; left\n #_0D9BF7: db $80, $80, $80 ; right\n\n #_0D9BFA: db $80, $80 ; up\n #_0D9BFC: db $80, $80 ; down\n #_0D9BFE: db $80, $80 ; left\n #_0D9C00: db $80, $80 ; right\n\n #_0D9C02: db $80, $80, $80, $80 ; up\n #_0D9C06: db $80, $80, $80, $80 ; down\n #_0D9C0A: db $80, $80, $80, $80 ; left\n #_0D9C0E: db $80, $80, $80, $80 ; right\n\n #_0D9C12: db $80, $80, $80 ; up\n #_0D9C15: db $80, $80, $80 ; down\n #_0D9C18: db $80, $80, $80 ; left\n #_0D9C1B: db $80, $80, $80 ; right\n\n #_0D9C1E: db $80, $80, $80, $80 ; up\n #_0D9C22: db $80, $80, $80, $80 ; down\n #_0D9C26: db $80, $80, $80, $80 ; left\n #_0D9C2A: db $80, $80, $80, $80 ; right\n\n #_0D9C2E: db 7, -9, 0, 17\n\n #_0D9C32: db 22, 14, 10, 10\n\n #_0D9C36: db 14, 11, 8, 8, 8\n #_0D9C3B: db 23, 22, 20, 12, 8\n\n #_0D9C40: db 23, 14, 10, 12, 12\n\n #_0D9C45: db $80, $80, $80, $80, $80, $80 ; up\n #_0D9C4B: db $80, $80, $80, $80, $80, $80 ; down\n #_0D9C51: db $80, $80, $80, $80, $80, $80 ; left\n #_0D9C57: db $80, $80, $80, $80, $80, $80 ; right\n\n #_0D9C5D: db $80, $80, $80, $80, $80\n\n #_0D9C62: db $80, $80, $80, $80\n\n #_0D9C66: db $80, $80\n\n #_0D9C68: db $80, $80, $80, $80 ; up\n #_0D9C6C: db $80, $80, $80, $80 ; down\n #_0D9C70: db $80, $80, $80, $80 ; left\n #_0D9C74: db $80, $80, $80, $80 ; right\n\n #_0D9C78: db $80, $80, $80 ; lower\n #_0D9C7B: db $80, $80, $80 ; higher\n\n #_0D9C7E: db $80, $80, $80 ; higher\n #_0D9C81: db $80, $80, $80 ; lower\n\n #_0D9C84: db $80, $80, $80, $80, $80, $80\n\n #_0D9C8A: db $80, $80, $80 ; up\n #_0D9C8D: db $80, $80, $80 ; down\n #_0D9C90: db $80, $80, $80 ; left\n #_0D9C93: db $80, $80, $80 ; right\n\n #_0D9C96: db $80 ; normal\n #_0D9C97: db $80 ; crystal/triforce\n\n #_0D9C98: db $80, $80\n\n #_0D9C9A: db $80 ; up\n #_0D9C9B: db $80 ; down\n #_0D9C9C: db $80 ; left\n #_0D9C9D: db $80 ; right\n\n #_0D9C9E: db $80, $80, $80, $80 ; up\n #_0D9CA2: db $80, $80, $80, $80 ; down\n #_0D9CA6: db $80, $80, $80, $80 ; left\n #_0D9CAA: db $80, $80, $80, $80 ; right\n\n #_0D9CAE: db $80, $80, $80 ; up\n #_0D9CB1: db $80, $80, $80 ; down\n #_0D9CB4: db $80, $80, $80 ; left\n #_0D9CB7: db $80, $80, $80 ; right\n\n #_0D9CBA: db 13\n #_0D9CBB: db 13, 16, 11, 2, -11\n #_0D9CC0: db -16, -9, 0, 11, -9, -11\n\n #_0D9CC6: db $80\n\n #_0D9CC7: db $80\n\n #_0D9CC8: db $80, $80, $80, $80, $80\n\n #_0D9CCD: db 19, 17, 15, 14, 3, -1, -5, -11, -14 ; up\n #_0D9CD6: db -8, -7, -6, 3, 5, 8, 12, 18, 22 ; down\n #_0D9CDF: db 3, -2, -8, -13, -16, -20, -15, -12, 1 ; left\n #_0D9CE8: db 5, 10, 16, 21, 24, 28, 23, 20, 7 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Priority", + "code": "LinkOAM_Priority:\n #_0D9CF1: db 2, 2, 2, 2, 2, 2, 2, 2, 2 ; up\n #_0D9CFA: db 10, 10, 10, 10, 10, 10, 10, 10, 10 ; down\n #_0D9D03: db 2, 2, 2, 2, 2, 2, 2, 2, 2 ; left\n #_0D9D0C: db 2, 2, 2, 2, 2, 2, 2, 2, 2 ; right\n\n #_0D9D15: db 3, 3, 3, 3, 3, 3, 3, 3, 1 ; up\n #_0D9D1E: db 0, 0, 0, 0, 11, 11, 11, 11, 11 ; down\n #_0D9D27: db 2, 2, 2, 2, 2, 2, 0, 0, 0 ; left\n #_0D9D30: db 2, 2, 2, 2, 2, 2, 0, 0, 0 ; right\n\n #_0D9D39: db 2, 2, 2, 2, 2, 2 ; up\n #_0D9D3F: db 1, 1, 1, 1, 1, 1 ; down\n #_0D9D45: db 0, 0, 0, 0, 0, 0 ; left\n #_0D9D4B: db 0, 0, 0, 0, 0, 0 ; right\n\n #_0D9D51: db 3, 3, 3 ; up\n #_0D9D54: db 6, 6, 6 ; down\n #_0D9D57: db 5, 5, 5 ; left\n #_0D9D5A: db 5, 5, 5 ; right\n\n #_0D9D5D: db 1, 1, 1, 1, 1, 1\n\n #_0D9D63: db 1, 1, 1, 1\n\n #_0D9D67: db 2 ; up\n #_0D9D68: db 3 ; down\n #_0D9D69: db 0 ; left\n #_0D9D6A: db 0 ; right\n\n #_0D9D6B: db 0, 3, 3 ; up\n #_0D9D6E: db 6, 6, 6 ; down\n #_0D9D71: db 0, 0, 0 ; left\n #_0D9D74: db 0, 0, 0 ; right\n\n #_0D9D77: db 2, 2, 2 ; up\n #_0D9D7A: db 0, 0, 0 ; down\n #_0D9D7D: db 0, 0, 0 ; left\n #_0D9D80: db 0, 0, 0 ; right\n\n #_0D9D83: db 0, 3 ; up\n #_0D9D85: db 3, 3 ; down\n #_0D9D87: db 2, 0 ; left\n #_0D9D89: db 2, 0 ; right\n\n #_0D9D8B: db 2, 2, 2, 2, 2, 2 ; up\n #_0D9D91: db 10, 10, 10, 10, 10, 10 ; down\n #_0D9D97: db 2, 2, 2, 2, 2, 2 ; left\n #_0D9D9D: db 2, 2, 2, 2, 2, 2 ; right\n\n #_0D9DA3: db 3, 3, 3, 3\n\n #_0D9DA7: db 1, 1, 2 ; left\n #_0D9DAA: db 1, 1, 2 ; right\n\n #_0D9DAD: db 4, 4, 4, 4, 4, 4 ; up\n #_0D9DB3: db 3, 3, 3, 3, 3, 3 ; down\n #_0D9DB9: db 2, 2, 2, 2, 2, 2 ; left\n #_0D9DBF: db 2, 2, 2, 2, 2, 2 ; right\n\n #_0D9DC5: db 4, 4, 4, 4, 4, 4 ; up\n #_0D9DCB: db 3, 3, 3, 3, 3, 3 ; down\n #_0D9DD1: db 2, 2, 2, 2, 2, 2 ; left\n #_0D9DD7: db 2, 2, 2, 2, 2, 2 ; right\n\n #_0D9DDD: db 2, 2, 5, 5, 5, 5, 5, 5\n #_0D9DE5: db 2, 2, 5, 5, 5, 5, 2, 5\n\n #_0D9DED: db 0, 0, 0 ; up\n #_0D9DF0: db 0, 0, 0 ; down\n #_0D9DF3: db 0, 0, 0 ; left\n #_0D9DF6: db 0, 0, 0 ; right\n\n #_0D9DF9: db 0, 0 ; up\n #_0D9DFB: db 0, 0 ; down\n #_0D9DFD: db 0, 0 ; left\n #_0D9DFF: db 0, 0 ; right\n\n #_0D9E01: db 7, 7, 7, 7 ; up\n #_0D9E05: db 8, 8, 8, 8 ; down\n #_0D9E09: db 9, 9, 9, 9 ; left\n #_0D9E0D: db 9, 9, 9, 9 ; right\n\n #_0D9E11: db 0, 0, 0 ; up\n #_0D9E14: db 7, 7, 7 ; down\n #_0D9E17: db 7, 7, 7 ; left\n #_0D9E1A: db 7, 7, 7 ; right\n\n #_0D9E1D: db 0, 0, 0, 0 ; up\n #_0D9E21: db 0, 0, 0, 0 ; down\n #_0D9E25: db 0, 0, 0, 0 ; left\n #_0D9E29: db 0, 0, 0, 0 ; right\n\n #_0D9E2D: db 1, 1, 2, 1\n\n #_0D9E31: db 1, 1, 1, 1\n\n #_0D9E35: db 1, 3, 3, 10, 10\n #_0D9E3A: db 1, 1, 1, 1, 1\n\n #_0D9E3F: db 1, 1, 1, 1, 1\n\n #_0D9E44: db 0, 0, 0, 0, 0, 0 ; up\n #_0D9E4A: db 0, 0, 0, 0, 0, 0 ; down\n #_0D9E50: db 0, 0, 0, 0, 0, 0 ; left\n #_0D9E56: db 0, 0, 0, 0, 0, 0 ; right\n\n #_0D9E5C: db 2, 2, 2, 2, 2\n\n #_0D9E61: db 2, 2, 2, 2\n\n #_0D9E65: db 2, 2\n\n #_0D9E67: db 2, 2, 2, 2 ; up\n #_0D9E6B: db 2, 2, 2, 2 ; down\n #_0D9E6F: db 2, 2, 2, 2 ; left\n #_0D9E73: db 2, 2, 2, 2 ; right\n\n #_0D9E77: db 2, 2, 2 ; lower\n #_0D9E7A: db 2, 2, 2 ; higher\n\n #_0D9E7D: db 2, 2, 2 ; higher\n #_0D9E80: db 2, 2, 2 ; lower\n\n #_0D9E83: db 2, 2, 2, 2, 2, 2\n\n #_0D9E89: db 2, 2, 2 ; up\n #_0D9E8C: db 2, 2, 2 ; down\n #_0D9E8F: db 2, 2, 2 ; left\n #_0D9E92: db 2, 2, 2 ; right\n\n #_0D9E95: db 1 ; normal\n #_0D9E96: db 1 ; crystal/triforce\n\n #_0D9E97: db 2, 2\n\n #_0D9E99: db 3 ; up\n #_0D9E9A: db 6 ; down\n #_0D9E9B: db 5 ; left\n #_0D9E9C: db 5 ; right\n\n #_0D9E9D: db 2, 2, 2, 2 ; up\n #_0D9EA1: db 2, 2, 2, 2 ; down\n #_0D9EA5: db 2, 2, 2, 2 ; left\n #_0D9EA9: db 2, 2, 2, 2 ; right\n\n #_0D9EAD: db 0, 0, 2 ; up\n #_0D9EB0: db 2, 0, 0 ; down\n #_0D9EB3: db 0, 0, 0 ; left\n #_0D9EB6: db 0, 0, 0 ; right\n\n #_0D9EB9: db 2\n #_0D9EBA: db 2, 0, 0, 0, 0\n #_0D9EBF: db 0, 2, 2, 0, 2, 0\n\n #_0D9EC5: db 5\n\n #_0D9EC6: db 2\n\n #_0D9EC7: db 0, 0, 0, 0, 0\n\n #_0D9ECC: db 3, 3, 3, 3, 3, 3, 3, 3, 3 ; up\n #_0D9ED5: db 0, 11, 11, 11, 11, 11, 11, 11, 11 ; down\n #_0D9EDE: db 2, 2, 2, 2, 2, 0, 0, 0, 0 ; left\n #_0D9EE7: db 2, 2, 2, 2, 2, 0, 0, 0, 0 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AnimationStepDataOffsets", + "code": "LinkOAM_AnimationStepDataOffsets:\n #_0D9EF0: dw $0000 ; 0x00 - Walking\n #_0D9EF2: dw $0024 ; 0x01 - Powder duplicate unused?\n #_0D9EF4: dw $0048 ; 0x02 - Sword out/Dashing\n #_0D9EF6: dw $0060 ; 0x03 - Sword poke\n #_0D9EF8: dw $006C ; 0x04 - Falling\n #_0D9EFA: dw $0076 ; 0x05 - Bonking/Recoil\n #_0D9EFC: dw $007A ; 0x06 - Rods/Hammer\n #_0D9EFE: dw $0086 ; 0x07 - Bow\n #_0D9F00: dw $0024 ; 0x08 - Powder\n #_0D9F02: dw $0092 ; 0x09 - Boom\n #_0D9F04: dw $009A ; 0x0A - Sloshing/Stairs\n #_0D9F06: dw $00B2 ; 0x0B - Prayer\n #_0D9F08: dw $00B9 ; 0x0C - Shovel\n #_0D9F0A: dw $00BC ; 0x0D - Carrying\n #_0D9F0C: dw $00D4 ; 0x0E - Throwing\n #_0D9F0E: dw $00EC ; 0x0F - Spin attack\n #_0D9F10: dw $00FC ; 0x10 - Lifting\n #_0D9F12: dw $0108 ; 0x11 - Treading water\n #_0D9F14: dw $0110 ; 0x12 - Stroked swimming\n #_0D9F16: dw $0120 ; 0x13 - Swimming\n #_0D9F18: dw $012C ; 0x14 - Zapped\n #_0D9F1A: dw $013C ; 0x15 - Medallions\n #_0D9F1C: dw $0153 ; 0x16 - Pushing\n #_0D9F1E: dw $016B ; 0x17 - Switch pull\n #_0D9F20: dw $0176 ; 0x18 - Grabbing/Pulling\n #_0D9F22: dw $0186 ; 0x19 - Diagonally up stairs\n #_0D9F24: dw $018C ; 0x1A - Diagonally down stairs\n #_0D9F26: dw $0192 ; 0x1B - Spin and die\n #_0D9F28: dw $0198 ; 0x1C - Arm swing (unused?)\n #_0D9F2A: dw $01A4 ; 0x1D - Item get\n #_0D9F2C: dw $01A5 ; 0x1E - 2 handed item get\n #_0D9F2E: dw $01A6 ; 0x1F - Sleeping\n #_0D9F30: dw $01A8 ; 0x20 - Hookshot\n #_0D9F32: dw $01AC ; 0x21 - Bunny\n #_0D9F34: dw $01BC ; 0x22 - Cane\n #_0D9F36: dw $01C8 ; 0x23 - Bug net\n #_0D9F38: dw $01D4 ; 0x24 - Sword up\n #_0D9F3A: dw $01D5 ; 0x25 - Book\n #_0D9F3C: dw $01D6 ; 0x26 - Tree pull\n #_0D9F3E: dw $01DB ; 0x27 - Sword slash\n\n; ---------------------------------------------------------\n\n #_0D9F40: dw $0009 ; 0x00 - Walking\n #_0D9F42: dw $002D ; 0x01 - Powder duplicate unused?\n #_0D9F44: dw $004E ; 0x02 - Sword out/Dashing\n #_0D9F46: dw $0063 ; 0x03 - Sword poke\n #_0D9F48: dw $006C ; 0x04 - Falling\n #_0D9F4A: dw $0077 ; 0x05 - Bonking/Recoil\n #_0D9F4C: dw $007D ; 0x06 - Rods/Hammer\n #_0D9F4E: dw $0089 ; 0x07 - Bow\n #_0D9F50: dw $002D ; 0x08 - Powder\n #_0D9F52: dw $0094 ; 0x09 - Boom\n #_0D9F54: dw $00A0 ; 0x0A - Sloshing/Stairs\n #_0D9F56: dw $00B2 ; 0x0B - Prayer\n #_0D9F58: dw $00B9 ; 0x0C - Shovel\n #_0D9F5A: dw $00C2 ; 0x0D - Carrying\n #_0D9F5C: dw $00DA ; 0x0E - Throwing\n #_0D9F5E: dw $00EC ; 0x0F - Spin attack\n #_0D9F60: dw $00FF ; 0x10 - Lifting\n #_0D9F62: dw $010A ; 0x11 - Treading water\n #_0D9F64: dw $0114 ; 0x12 - Stroked swimming\n #_0D9F66: dw $0123 ; 0x13 - Swimming\n #_0D9F68: dw $0130 ; 0x14 - Zapped\n #_0D9F6A: dw $013C ; 0x15 - Medallions\n #_0D9F6C: dw $0159 ; 0x16 - Pushing\n #_0D9F6E: dw $016B ; 0x17 - Switch pull\n #_0D9F70: dw $017A ; 0x18 - Grabbing/Pulling\n #_0D9F72: dw $0189 ; 0x19 - Diagonally up stairs\n #_0D9F74: dw $018F ; 0x1A - Diagonally down stairs\n #_0D9F76: dw $0192 ; 0x1B - Spin and die\n #_0D9F78: dw $019B ; 0x1C - Arm swing (unused?)\n #_0D9F7A: dw $01A4 ; 0x1D - Item get\n #_0D9F7C: dw $01A5 ; 0x1E - 2 handed item get\n #_0D9F7E: dw $01A6 ; 0x1F - Sleeping\n #_0D9F80: dw $01A9 ; 0x20 - Hookshot\n #_0D9F82: dw $01B0 ; 0x21 - Bunny\n #_0D9F84: dw $01BF ; 0x22 - Cane\n #_0D9F86: dw $01C8 ; 0x23 - Bug net\n #_0D9F88: dw $01D4 ; 0x24 - Sword up\n #_0D9F8A: dw $01D5 ; 0x25 - Book\n #_0D9F8C: dw $01D6 ; 0x26 - Tree pull\n #_0D9F8E: dw $01E4 ; 0x27 - Sword slash\n\n; ---------------------------------------------------------\n\n #_0D9F90: dw $0012 ; 0x00 - Walking\n #_0D9F92: dw $0036 ; 0x01 - Powder duplicate unused?\n #_0D9F94: dw $0054 ; 0x02 - Sword out/Dashing\n #_0D9F96: dw $0066 ; 0x03 - Sword poke\n #_0D9F98: dw $006C ; 0x04 - Falling\n #_0D9F9A: dw $0078 ; 0x05 - Bonking/Recoil\n #_0D9F9C: dw $0080 ; 0x06 - Rods/Hammer\n #_0D9F9E: dw $008C ; 0x07 - Bow\n #_0D9FA0: dw $0036 ; 0x08 - Powder\n #_0D9FA2: dw $0096 ; 0x09 - Boom\n #_0D9FA4: dw $00A6 ; 0x0A - Sloshing/Stairs\n #_0D9FA6: dw $00B2 ; 0x0B - Prayer\n #_0D9FA8: dw $00B6 ; 0x0C - Shovel\n #_0D9FAA: dw $00C8 ; 0x0D - Carrying\n #_0D9FAC: dw $00E0 ; 0x0E - Throwing\n #_0D9FAE: dw $00EC ; 0x0F - Spin attack\n #_0D9FB0: dw $0102 ; 0x10 - Lifting\n #_0D9FB2: dw $010C ; 0x11 - Treading water\n #_0D9FB4: dw $0118 ; 0x12 - Stroked swimming\n #_0D9FB6: dw $0126 ; 0x13 - Swimming\n #_0D9FB8: dw $0134 ; 0x14 - Zapped\n #_0D9FBA: dw $013C ; 0x15 - Medallions\n #_0D9FBC: dw $015F ; 0x16 - Pushing\n #_0D9FBE: dw $016B ; 0x17 - Switch pull\n #_0D9FC0: dw $017E ; 0x18 - Grabbing/Pulling\n #_0D9FC2: dw $0186 ; 0x19 - Diagonally up stairs\n #_0D9FC4: dw $018C ; 0x1A - Diagonally down stairs\n #_0D9FC6: dw $0192 ; 0x1B - Spin and die\n #_0D9FC8: dw $019E ; 0x1C - Arm swing (unused?)\n #_0D9FCA: dw $01A4 ; 0x1D - Item get\n #_0D9FCC: dw $01A5 ; 0x1E - 2 handed item get\n #_0D9FCE: dw $01A6 ; 0x1F - Sleeping\n #_0D9FD0: dw $01AA ; 0x20 - Hookshot\n #_0D9FD2: dw $01B4 ; 0x21 - Bunny\n #_0D9FD4: dw $01C2 ; 0x22 - Cane\n #_0D9FD6: dw $01C8 ; 0x23 - Bug net\n #_0D9FD8: dw $01D4 ; 0x24 - Sword up\n #_0D9FDA: dw $01D5 ; 0x25 - Book\n #_0D9FDC: dw $01D6 ; 0x26 - Tree pull\n #_0D9FDE: dw $01ED ; 0x27 - Sword slash\n\n; ---------------------------------------------------------\n\n #_0D9FE0: dw $001B ; 0x00 - Walking\n #_0D9FE2: dw $003F ; 0x01 - Powder duplicate unused?\n #_0D9FE4: dw $005A ; 0x02 - Sword out/Dashing\n #_0D9FE6: dw $0069 ; 0x03 - Sword poke\n #_0D9FE8: dw $006C ; 0x04 - Falling\n #_0D9FEA: dw $0079 ; 0x05 - Bonking/Recoil\n #_0D9FEC: dw $0083 ; 0x06 - Rods/Hammer\n #_0D9FEE: dw $008F ; 0x07 - Bow\n #_0D9FF0: dw $003F ; 0x08 - Powder\n #_0D9FF2: dw $0098 ; 0x09 - Boom\n #_0D9FF4: dw $00AC ; 0x0A - Sloshing/Stairs\n #_0D9FF6: dw $00B2 ; 0x0B - Prayer\n #_0D9FF8: dw $00B9 ; 0x0C - Shovel\n #_0D9FFA: dw $00CE ; 0x0D - Carrying\n #_0D9FFC: dw $00E6 ; 0x0E - Throwing\n #_0D9FFE: dw $00EC ; 0x0F - Spin attack\n #_0DA000: dw $0105 ; 0x10 - Lifting\n #_0DA002: dw $010E ; 0x11 - Treading water\n #_0DA004: dw $011C ; 0x12 - Stroked swimming\n #_0DA006: dw $0129 ; 0x13 - Swimming\n #_0DA008: dw $0138 ; 0x14 - Zapped\n #_0DA00A: dw $013C ; 0x15 - Medallions\n #_0DA00C: dw $0165 ; 0x16 - Pushing\n #_0DA00E: dw $016B ; 0x17 - Switch pull\n #_0DA010: dw $0182 ; 0x18 - Grabbing/Pulling\n #_0DA012: dw $0189 ; 0x19 - Diagonally up stairs\n #_0DA014: dw $018F ; 0x1A - Diagonally down stairs\n #_0DA016: dw $0192 ; 0x1B - Spin and die\n #_0DA018: dw $01A1 ; 0x1C - Arm swing (unused?)\n #_0DA01A: dw $01A4 ; 0x1D - Item get\n #_0DA01C: dw $01A5 ; 0x1E - 2 handed item get\n #_0DA01E: dw $01A6 ; 0x1F - Sleeping\n #_0DA020: dw $01AB ; 0x20 - Hookshot\n #_0DA022: dw $01B8 ; 0x21 - Bunny\n #_0DA024: dw $01C5 ; 0x22 - Cane\n #_0DA026: dw $01C8 ; 0x23 - Bug net\n #_0DA028: dw $01D4 ; 0x24 - Sword up\n #_0DA02A: dw $01D5 ; 0x25 - Book\n #_0DA02C: dw $01D6 ; 0x26 - Tree pull\n #_0DA02E: dw $01F6 ; 0x27 - Sword slash\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AnimationDirectionalStepIndexOffset", + "code": "LinkOAM_AnimationDirectionalStepIndexOffset:\n #_0DA030: dw $0000 ; up\n #_0DA032: dw $0050 ; down\n #_0DA034: dw $00A0 ; left\n #_0DA036: dw $00F0 ; right\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AuxAnimationStepDataOffset", + "code": "LinkOAM_AuxAnimationStepDataOffset:\n #_0DA038: dw $0000 ; falling\n #_0DA03A: dw $000A ; lifting item\n #_0DA03C: dw $0016 ; fast swim\n #_0DA03E: dw $0026 ; medallions\n #_0DA040: dw $003D ; pull switch\n #_0DA042: dw $0048 ; grabbing\n #_0DA044: dw $0058 ; sword slash\n\n #_0DA046: dw $0000 ; falling\n #_0DA048: dw $000D ; lifting item\n #_0DA04A: dw $001A ; fast swim\n #_0DA04C: dw $0026 ; medallions\n #_0DA04E: dw $003D ; pull switch\n #_0DA050: dw $004C ; grabbing\n #_0DA052: dw $0061 ; sword slash\n\n #_0DA054: dw $0000 ; falling\n #_0DA056: dw $0010 ; lifting item\n #_0DA058: dw $001E ; fast swim\n #_0DA05A: dw $0026 ; medallions\n #_0DA05C: dw $003D ; pull switch\n #_0DA05E: dw $0050 ; grabbing\n #_0DA060: dw $006A ; sword slash\n\n #_0DA062: dw $0000 ; falling\n #_0DA064: dw $0013 ; lifting item\n #_0DA066: dw $0022 ; fast swim\n #_0DA068: dw $0026 ; medallions\n #_0DA06A: dw $003D ; pull switch\n #_0DA06C: dw $0054 ; grabbing\n #_0DA06E: dw $0073 ; sword slash\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AuxAnimationDirectionalStepIndexOffset", + "code": "LinkOAM_AuxAnimationDirectionalStepIndexOffset:\n #_0DA070: dw $0000 ; up\n #_0DA072: dw $000E ; down\n #_0DA074: dw $001C ; left\n #_0DA076: dw $002A ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux1BufferOffsets_SetA", + "code": "LinkOAM_Aux1BufferOffsets_SetA:\n #_0DA078: db $00, $08, $00, $08\n #_0DA07C: db $08, $0C, $14, $08\n #_0DA080: db $08, $00, $00, $00\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2BufferOffsets_SetA", + "code": "LinkOAM_Aux2BufferOffsets_SetA:\n #_0DA084: db $04, $0C, $04, $0C\n #_0DA088: db $0C, $10, $18, $0C\n #_0DA08C: db $0C, $0C, $04, $04\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponBufferOffsets_SetA", + "code": "LinkOAM_WeaponBufferOffsets_SetA:\n #_0DA090: db $08, $10, $10, $18\n #_0DA094: db $10, $00, $00, $10\n #_0DA098: db $18, $10, $18, $10\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ElfBufferOffsets_SetA", + "code": "LinkOAM_ElfBufferOffsets_SetA:\n #_0DA09C: db $14, $1C, $08, $10\n #_0DA0A0: db $00, $14, $18, $00\n #_0DA0A4: db $10, $04, $10, $1C\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldBufferOffsets_SetA", + "code": "LinkOAM_ShieldBufferOffsets_SetA:\n #_0DA0A8: db $1C, $00, $1C, $00\n #_0DA0AC: db $18, $1C, $0C, $1C\n #_0DA0B0: db $24, $1C, $08, $08\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowBufferOffsets_SetA", + "code": "LinkOAM_ShadowBufferOffsets_SetA:\n #_0DA0B4: db $28, $28, $28, $28\n #_0DA0B8: db $28, $28, $28, $28\n #_0DA0BC: db $00, $28, $28, $28\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux1BufferOffsets_SetB", + "code": "LinkOAM_Aux1BufferOffsets_SetB:\n #_0DA0C0: db $14, $1C, $08, $10\n #_0DA0C4: db $10, $14, $1C, $10\n #_0DA0C8: db $08, $08, $08, $14\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2BufferOffsets_SetB", + "code": "LinkOAM_Aux2BufferOffsets_SetB:\n #_0DA0CC: db $18, $20, $0C, $14\n #_0DA0D0: db $14, $18, $20, $14\n #_0DA0D4: db $0C, $14, $0C, $18\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponBufferOffsets_SetB", + "code": "LinkOAM_WeaponBufferOffsets_SetB:\n #_0DA0D8: db $00, $00, $18, $20\n #_0DA0DC: db $18, $00, $00, $18\n #_0DA0E0: db $18, $18, $20, $00\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ElfBufferOffsets_SetB", + "code": "LinkOAM_ElfBufferOffsets_SetB:\n #_0DA0E4: db $1C, $24, $10, $18\n #_0DA0E8: db $08, $1C, $24, $08\n #_0DA0EC: db $10, $0C, $18, $24\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldBufferOffsets_SetB", + "code": "LinkOAM_ShieldBufferOffsets_SetB:\n #_0DA0F0: db $24, $14, $24, $08\n #_0DA0F4: db $20, $24, $14, $24\n #_0DA0F8: db $24, $24, $10, $1C\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowBufferOffsets_SetB", + "code": "LinkOAM_ShadowBufferOffsets_SetB:\n #_0DA0FC: db $0C, $0C, $00, $00\n #_0DA100: db $00, $0C, $0C, $00\n #_0DA104: db $00, $00, $00, $0C\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_LinkOAM_Aux1BufferOffsetPointers", + "code": "LinkOAM_LinkOAM_Aux1BufferOffsetPointers:\n #_0DA108: dw LinkOAM_Aux1BufferOffsets_SetA\n #_0DA10A: dw LinkOAM_Aux1BufferOffsets_SetB\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Aux2BufferOffsetPointers", + "code": "LinkOAM_Aux2BufferOffsetPointers:\n #_0DA10C: dw LinkOAM_Aux2BufferOffsets_SetA\n #_0DA10E: dw LinkOAM_Aux2BufferOffsets_SetB\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponBufferOffsetPointers", + "code": "LinkOAM_WeaponBufferOffsetPointers:\n #_0DA110: dw LinkOAM_WeaponBufferOffsets_SetA\n #_0DA112: dw LinkOAM_WeaponBufferOffsets_SetB\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ElfBufferOffsetPointers", + "code": "LinkOAM_ElfBufferOffsetPointers:\n #_0DA114: dw LinkOAM_ElfBufferOffsets_SetA\n #_0DA116: dw LinkOAM_ElfBufferOffsets_SetB\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShieldBufferOffsetPointers", + "code": "LinkOAM_ShieldBufferOffsetPointers:\n #_0DA118: dw LinkOAM_ShieldBufferOffsets_SetA\n #_0DA11A: dw LinkOAM_ShieldBufferOffsets_SetB\n\n; ---------------------------------------------------------\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ShadowBufferOffsetPointers", + "code": "LinkOAM_ShadowBufferOffsetPointers:\n #_0DA11C: dw LinkOAM_ShadowBufferOffsets_SetA\n #_0DA11E: dw LinkOAM_ShadowBufferOffsets_SetB\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_OAMBufferOffset", + "code": "LinkOAM_OAMBufferOffset:\n #_0DA120: dw $0190, $00E0, $0000\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ObjectPriority", + "code": "LinkOAM_ObjectPriority:\n #_0DA126: dw $2000, $1000, $3000, $2000\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_RodTypeID", + "code": "LinkOAM_RodTypeID:\n #_0DA12E: db $02 ; fire rod\n #_0DA12F: db $04 ; ice rod\n #_0DA130: db $04 ; ice rod\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_StairsSomething", + "code": "LinkOAM_StairsSomething:\n #_0DA131: db $00, $01, $02, $00, $01, $02, $00, $01\n #_0DA139: db $02\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ItemsAUseIndex", + "code": "LinkOAM_ItemsAUseIndex:\n #_0DA13A: db $06 ; rod\n #_0DA13B: db $06 ; hammer\n #_0DA13C: db $06 ; unused\n #_0DA13D: db $06 ; unused\n #_0DA13E: db $07 ; bow\n #_0DA13F: db $07 ; unused\n #_0DA140: db $08 ; powder\n #_0DA141: db $09 ; boomerang\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ItemsBUseIndex", + "code": "LinkOAM_ItemsBUseIndex:\n #_0DA142: db $0C ; shovel\n #_0DA143: db $0B ; unused prayer\n #_0DA144: db $20 ; hookshot\n #_0DA145: db $22 ; cane\n #_0DA146: db $23 ; net\n #_0DA147: db $25 ; book\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeirdGrabIndices", + "code": "LinkOAM_WeirdGrabIndices:\n #_0DA148: db $26 ; tree pull\n #_0DA149: db $0B ; prayer\n #_0DA14A: db $0B ; unused\n #_0DA14B: db $0C ;\n #_0DA14C: db $0B ; unused\n #_0DA14D: db $0B ; unused\n #_0DA14E: db $0B ; unused\n #_0DA14F: db $0D ; carry/toss\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_AnimationsWithAuxParts", + "code": "LinkOAM_AnimationsWithAuxParts:\n #_0DA150: dw $0004 ; falling\n #_0DA152: dw $0010 ; lifting item\n #_0DA154: dw $0012 ; fast swim\n #_0DA156: dw $0015 ; medallions\n #_0DA158: dw $0017 ; pull switch\n #_0DA15A: dw $0018 ; grabbing\n #_0DA15C: dw $0027 ; sword slash\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_StraightStairsYOffset", + "code": "LinkOAM_StraightStairsYOffset:\n #_0DA15E: dw 0, -2, -3, 0, -2, -3 ; up\n #_0DA16A: dw 0, 0, 0, 0, 0, 0 ; up\n #_0DA176: dw 0, -2, -3, 0, -2, -3 ; down\n #_0DA182: dw 0, 0, 0, 0, 0, 0 ; down\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_Main", + "code": "LinkOAM_Main:\n #_0DA18E: PHB\n #_0DA18F: PHK\n #_0DA190: PLB\n\n #_0DA191: LDY.b #$00\n\n #_0DA193: LDA.b $11\n #_0DA195: CMP.b #$12\n #_0DA197: BEQ .stairs\n\n #_0DA199: LDY.b #$18\n #_0DA19B: CMP.b #$13\n #_0DA19D: BNE .not_stairs\n\n.stairs\n #_0DA19F: STY.b $00\n\n #_0DA1A1: LDA.b $20\n #_0DA1A3: PHA\n\n #_0DA1A4: LDA.b $21\n #_0DA1A6: PHA\n\n #_0DA1A7: LDY.b #$00\n\n #_0DA1A9: LDA.w $0462\n #_0DA1AC: AND.b #$04\n #_0DA1AE: BEQ .upwards_stairs\n\n #_0DA1B0: LDY.b #$0C\n\n.upwards_stairs\n #_0DA1B2: TYA\n #_0DA1B3: CLC\n #_0DA1B4: ADC.b $00\n #_0DA1B6: STA.b $00\n\n #_0DA1B8: LDA.b $2E\n #_0DA1BA: CMP.b #$06\n #_0DA1BC: BCC .valid_stairs_animation_step\n\n #_0DA1BE: LDA.b #$00\n\n.valid_stairs_animation_step\n #_0DA1C0: ASL A\n #_0DA1C1: CLC\n #_0DA1C2: ADC.b $00\n #_0DA1C4: TAY\n\n #_0DA1C5: REP #$20\n\n #_0DA1C7: LDA.w LinkOAM_StraightStairsYOffset,Y\n #_0DA1CA: CLC\n #_0DA1CB: ADC.b $20\n #_0DA1CD: STA.b $20\n\n #_0DA1CF: SEP #$20\n\n; ---------------------------------------------------------\n\n.not_stairs\n #_0DA1D1: LDA.b $20\n #_0DA1D3: SEC\n #_0DA1D4: SBC.b $E8\n #_0DA1D6: STA.b $01\n\n #_0DA1D8: LDA.b $22\n #_0DA1DA: SEC\n #_0DA1DB: SBC.b $E2\n #_0DA1DD: STA.b $00\n\n #_0DA1DF: LDA.b #$80\n #_0DA1E1: STA.b $45\n #_0DA1E3: STA.b $44\n\n #_0DA1E5: LDX.b #$00\n\n #_0DA1E7: LDA.w $0351\n #_0DA1EA: BEQ .no_feet_stuff\n\n #_0DA1EC: LDX.b #$01\n\n.no_feet_stuff\n #_0DA1EE: TXA\n #_0DA1EF: ASL A\n #_0DA1F0: STA.b $72\n #_0DA1F2: STZ.b $73\n\n; ---------------------------------------------------------\n\n #_0DA1F4: REP #$20\n\n #_0DA1F6: LDA.b $EE\n #_0DA1F8: AND.w #$00FF\n #_0DA1FB: ASL A\n #_0DA1FC: TAX\n\n #_0DA1FD: LDA.w LinkOAM_ObjectPriority,X\n #_0DA200: STA.b $64\n\n #_0DA202: LDA.w $0FB3\n #_0DA205: ASL A\n #_0DA206: TAY\n\n #_0DA207: LDA.w LinkOAM_OAMBufferOffset,Y\n #_0DA20A: STA.w $0352\n\n #_0DA20D: SEP #$20\n\n #_0DA20F: LDA.b $5D\n #_0DA211: CMP.b #$16 ; LINKSTATE 16\n #_0DA213: BNE .not_in_bed\n\n #_0DA215: LDY.b #$1F\n\n #_0DA217: LDA.w $037D\n #_0DA21A: CMP.b #$02\n #_0DA21C: BEQ .not_in_bed\n\n #_0DA21E: STA.b $02\n\n #_0DA220: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_in_bed\n #_0DA223: LDA.w $03EF\n #_0DA226: BEQ .not_sword_up\n\n #_0DA228: LDY.b #$24\n #_0DA22A: STZ.b $02\n\n #_0DA22C: LDA.b $2F\n #_0DA22E: STA.w $0323\n\n #_0DA231: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_sword_up\n #_0DA234: LDA.w $02E0\n #_0DA237: BEQ .not_bunny\n\n #_0DA239: LDY.b #$21\n\n #_0DA23B: LDA.b $2E\n #_0DA23D: AND.b #$03\n #_0DA23F: STA.b $02\n\n #_0DA241: LDA.b $2F\n #_0DA243: STA.w $0323\n\n #_0DA246: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_bunny\n #_0DA249: LDY.b #$00\n\n #_0DA24B: LDA.w $0351\n #_0DA24E: BEQ .not_grass\n\n #_0DA250: LDY.b #$0A\n\n.not_grass\n #_0DA252: LDA.b $11\n #_0DA254: CMP.b #$0E\n #_0DA256: BNE .skip_stairs_direction_check\n\n #_0DA258: LDA.b $10\n #_0DA25A: CMP.b #$12\n #_0DA25C: BEQ .skip_stairs_direction_check\n\n #_0DA25E: LDY.b #$0A\n #_0DA260: LDA.b $28\n #_0DA262: BEQ .skip_stairs_direction_check\n\n; ---------------------------------------------------------\n\n #_0DA264: LDX.b $2F\n #_0DA266: CPX.b #$04\n #_0DA268: BEQ .not_auto_left_or_right\n\n #_0DA26A: CPX.b #$06\n #_0DA26C: BEQ .not_auto_left_or_right\n\n #_0DA26E: LDX.b $2E\n\n #_0DA270: LDA.w LinkOAM_StairsSomething,X\n #_0DA273: STA.b $02\n\n #_0DA275: LDY.b #$19\n\n #_0DA277: LDA.w $0462\n #_0DA27A: AND.b #$04\n #_0DA27C: BEQ .continue_a\n\n #_0DA27E: LDY.b #$1A\n #_0DA280: BRA .continue_a\n\n; ---------------------------------------------------------\n\n.skip_stairs_direction_check\n #_0DA282: LDA.w $0376\n #_0DA285: AND.b #$03\n #_0DA287: BEQ .not_grabbing\n\n #_0DA289: LDY.b #$18\n\n #_0DA28B: LDA.w $030A\n #_0DA28E: STA.b $02\n #_0DA290: BRA .continue_a\n\n; ---------------------------------------------------------\n\n.not_grabbing\n #_0DA292: LDA.b $48\n #_0DA294: AND.b #$0D\n #_0DA296: BEQ .not_auto_left_or_right\n\n #_0DA298: LDY.b #$16\n\n #_0DA29A: LDA.b $2E\n #_0DA29C: CMP.b #$05\n #_0DA29E: BCC .not_auto_left_or_right\n\n #_0DA2A0: STZ.b $2E\n\n.not_auto_left_or_right\n #_0DA2A2: LDA.b $2E\n #_0DA2A4: STA.b $02\n\n; ---------------------------------------------------------\n\n.continue_a\n #_0DA2A6: LDA.b $2F\n #_0DA2A8: STA.w $0323\n\n #_0DA2AB: LDA.w $0345\n #_0DA2AE: BEQ .not_in_deep_water\n\n #_0DA2B0: LDA.b #$20\n #_0DA2B2: STA.b $65\n #_0DA2B4: STZ.b $64\n\n.not_in_deep_water\n #_0DA2B6: LDA.b $5D\n #_0DA2B8: CMP.b #$04 ; LINKSTATE 04\n #_0DA2BA: BNE .not_swimming\n\n #_0DA2BC: LDY.b #$11\n\n #_0DA2BE: LDA.b $02\n #_0DA2C0: AND.b #$01\n #_0DA2C2: STA.b $02\n\n #_0DA2C4: LDA.b $11\n #_0DA2C6: BNE .skip_stroke_check\n\n #_0DA2C8: LDA.b $F0\n #_0DA2CA: AND.b #$0F\n #_0DA2CC: BNE .swim_strokes\n\n; ---------------------------------------------------------\n\n.skip_stroke_check\n #_0DA2CE: LDA.w $033C\n #_0DA2D1: ORA.w $033D\n #_0DA2D4: ORA.w $033E\n #_0DA2D7: ORA.w $033F\n #_0DA2DA: BEQ .no_swim_accel\n\n.swim_strokes\n #_0DA2DC: LDY.b #$13\n\n #_0DA2DE: LDA.w $02CC\n #_0DA2E1: STA.b $02\n\n.no_swim_accel\n #_0DA2E3: LDA.w $032A\n #_0DA2E6: BEQ .not_stroking_hard\n\n #_0DA2E8: DEC A\n #_0DA2E9: STA.b $02\n\n #_0DA2EB: LDY.b #$12\n\n.not_stroking_hard\n #_0DA2ED: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_swimming\n #_0DA2F0: LDA.w $02DA\n #_0DA2F3: BEQ .not_displaying_item\n\n #_0DA2F5: STZ.b $02\n\n #_0DA2F7: LDY.b #$1E\n\n #_0DA2F9: CMP.b #$02\n #_0DA2FB: BEQ .two_handed\n\n #_0DA2FD: LDY.b #$1D\n\n.two_handed\n #_0DA2FF: BRA .not_stroking_hard\n\n; ---------------------------------------------------------\n\n.not_displaying_item\n #_0DA301: LDA.w $036B\n #_0DA304: AND.b #$01\n #_0DA306: BEQ .nothing_with_desert_cutscene\n\n #_0DA308: LDA.w $030A\n #_0DA30B: STA.b $02\n\n #_0DA30D: LDY.b #$1B\n #_0DA30F: BRA .not_stroking_hard\n\n.nothing_with_desert_cutscene\n #_0DA311: LDA.b $4D\n #_0DA313: BEQ .nothing_with_swim\n\n #_0DA315: CMP.b #$01\n #_0DA317: BEQ .check_if_som_platform\n\n #_0DA319: CMP.b #$04\n #_0DA31B: BNE .nothing_with_swim\n\n #_0DA31D: LDY.b #$13\n\n #_0DA31F: LDA.b $1A\n #_0DA321: AND.b #$18\n\n #_0DA323: LSR A\n #_0DA324: LSR A\n #_0DA325: LSR A\n #_0DA326: TAX\n\n #_0DA327: LDA.l LinkSwimming_anim_offset,X\n #_0DA32B: STA.b $02\n\n #_0DA32D: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.check_if_som_platform\n #_0DA330: LDA.b $5D\n #_0DA332: CMP.b #$05 ; LINKSTATE 05\n #_0DA334: BNE .not_on_tr_platform\n\n #_0DA336: LDA.w $034E\n #_0DA339: BNE .dont_somaria_priority\n\n #_0DA33B: LDA.b #$30\n #_0DA33D: STA.b $65\n #_0DA33F: STZ.b $64\n\n.dont_somaria_priority\n #_0DA341: BRL .check_if_grabbing\n\n; ---------------------------------------------------------\n\n.not_on_tr_platform\n #_0DA344: LDA.b $5D\n #_0DA346: CMP.b #$13 ; LINKSTATE 13\n #_0DA348: BEQ .nothing_with_swim\n\n #_0DA34A: LDA.b $55\n #_0DA34C: BNE .nothing_with_swim\n\n #_0DA34E: LDY.b #$05\n\n #_0DA350: LDA.w $0360\n #_0DA353: BEQ .no_electroction_flag\n\n #_0DA355: LDY.b #$14\n\n #_0DA357: LDA.w $0300\n #_0DA35A: AND.b #$03\n\n.no_electroction_flag\n #_0DA35C: STA.b $02\n\n #_0DA35E: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.nothing_with_swim\n #_0DA361: LDA.b $5B\n #_0DA363: BEQ .no_slip_drawing\n\n #_0DA365: CMP.b #$01\n #_0DA367: BEQ .no_slip_drawing\n\n #_0DA369: CMP.b #$03\n #_0DA36B: BNE .not_fully_falling\n\n #_0DA36D: LDA.w LinkOAM_OAMBufferOffset+4\n #_0DA370: STA.w $0352\n\n #_0DA373: LDA.w LinkOAM_OAMBufferOffset+5\n #_0DA376: STA.w $0353\n\n.not_fully_falling\n #_0DA379: LDA.b $5A\n #_0DA37B: STA.b $02\n\n #_0DA37D: CMP.b #$06\n #_0DA37F: BCC .not_max_fall_priority\n\n #_0DA381: LDA.b $65\n #_0DA383: ORA.b #$30\n #_0DA385: STA.b $65\n\n.not_max_fall_priority\n #_0DA387: LDY.b #$04\n\n #_0DA389: BRL LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.no_slip_drawing\n #_0DA38C: LDA.w $0308\n #_0DA38F: BEQ .check_if_grabbing\n\n #_0DA391: JSR FindMostSignificantBit\n\n #_0DA394: CPX.b #$06\n #_0DA396: BCS .keep_lift_direction\n\n #_0DA398: LDA.b #$02\n #_0DA39A: STA.w $0323\n\n.keep_lift_direction\n #_0DA39D: LDY.w LinkOAM_WeirdGrabIndices,X\n #_0DA3A0: CPY.b #$0D\n #_0DA3A2: BCC .check_desert_step_counter\n\n #_0DA3A4: LDA.w $0309\n #_0DA3A7: AND.b #$02\n #_0DA3A9: BEQ .not_throwing_object\n\n #_0DA3AB: INY\n\n.not_throwing_object\n #_0DA3AC: LDA.w $0309\n #_0DA3AF: AND.b #$01\n #_0DA3B1: BEQ .not_lifting_object\n\n #_0DA3B3: LDY.b #$10\n #_0DA3B5: BRA .check_desert_step_counter\n\n.not_lifting_object\n #_0DA3B7: LDA.w $0308\n #_0DA3BA: AND.b #$80\n #_0DA3BC: BEQ .check_desert_step_counter\n\n #_0DA3BE: BRL LinkOAM_ContinueWithAnimation\n\n.check_desert_step_counter\n #_0DA3C1: LDA.w $030A\n #_0DA3C4: BRA .set_item_use_anim\n\n; ---------------------------------------------------------\n\n.check_if_grabbing\n #_0DA3C6: LDA.w $0377\n #_0DA3C9: BEQ .not_grabbing_at_all\n\n #_0DA3CB: DEC A\n\n #_0DA3CC: LDY.b #$17\n #_0DA3CE: BRA .set_item_use_anim\n\n; ---------------------------------------------------------\n\n.not_grabbing_at_all\n #_0DA3D0: LDA.w $0301\n #_0DA3D3: BEQ .not_using_items_a\n\n #_0DA3D5: JSR FindMostSignificantBit\n\n #_0DA3D8: LDY.w LinkOAM_ItemsAUseIndex,X\n #_0DA3DB: BRA .continue_with_items_a\n\n.not_using_items_a\n #_0DA3DD: LDA.w $037A\n #_0DA3E0: BEQ .not_using_items_b\n\n #_0DA3E2: JSR FindMostSignificantBit\n #_0DA3E5: LDY.w LinkOAM_ItemsBUseIndex,X\n\n; ---------------------------------------------------------\n\n.continue_with_items_a\n #_0DA3E8: LDA.w $0300\n\n.set_item_use_anim\n #_0DA3EB: STA.b $02\n\n #_0DA3ED: BRA LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_using_items_b\n #_0DA3EF: LDA.b $5D\n #_0DA3F1: CMP.b #$0A ; LINKSTATE 0A\n #_0DA3F3: BEQ .using_medallion\n\n #_0DA3F5: CMP.b #$08 ; LINKSTATE 08\n #_0DA3F7: BEQ .using_medallion\n\n #_0DA3F9: CMP.b #$09 ; LINKSTATE 09\n #_0DA3FB: BNE .not_using_medallion\n\n.using_medallion\n #_0DA3FD: LDY.b #$15\n #_0DA3FF: BRA .continue_with_medallion\n\n; ---------------------------------------------------------\n\n.not_using_medallion\n #_0DA401: CMP.b #$1E ; LINKSTATE 1E\n #_0DA403: BEQ .using_spin_attack\n\n #_0DA405: CMP.b #$03 ; LINKSTATE 03\n #_0DA407: BNE .not_spinning\n\n.using_spin_attack\n #_0DA409: LDY.b #$0F\n\n.continue_with_medallion\n #_0DA40B: LDA.w $031C\n #_0DA40E: STA.b $02\n\n #_0DA410: BRA LinkOAM_ContinueWithAnimation\n\n; ---------------------------------------------------------\n\n.not_spinning\n #_0DA412: LDA.b $3A\n #_0DA414: AND.b #$80\n #_0DA416: BEQ LinkOAM_ContinueWithAnimation\n\n #_0DA418: LDA.b $3C\n #_0DA41A: CMP.b #$09\n #_0DA41C: BNE .not_fully_primed_sword\n\n #_0DA41E: LDY.b #$02\n\n #_0DA420: BRA LinkOAM_ContinueWithAnimation\n\n.not_fully_primed_sword\n #_0DA422: LDY.b #$27\n\n #_0DA424: LDA.b $3C\n #_0DA426: STA.b $02\n\n #_0DA428: CMP.b #$09\n #_0DA42A: BCC LinkOAM_ContinueWithAnimation\n\n #_0DA42C: LDA.b $02\n #_0DA42E: SEC\n #_0DA42F: SBC.b #$0A\n #_0DA431: STA.b $02\n\n #_0DA433: LDY.b #$03\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_ContinueWithAnimation", + "code": "LinkOAM_ContinueWithAnimation:\n #_0DA435: STY.w $0354\n\n #_0DA438: CPY.b #$05\n #_0DA43A: BEQ .not_recoiling\n\n #_0DA43C: LDA.b $64\n #_0DA43E: STA.w $035D\n\n #_0DA441: LDA.b $65\n #_0DA443: STA.w $035E\n\n.not_recoiling\n #_0DA446: STZ.b $03\n\n #_0DA448: LDA.b $02\n #_0DA44A: STA.b $76\n\n #_0DA44C: REP #$30\n\n #_0DA44E: LDA.b $2F\n #_0DA450: AND.w #$00FF\n #_0DA453: TAX\n\n #_0DA454: LDA.w LinkOAM_AuxAnimationDirectionalStepIndexOffset,X\n #_0DA457: STA.b $74\n\n #_0DA459: LDA.w LinkOAM_AnimationDirectionalStepIndexOffset,X\n #_0DA45C: STA.b $04\n\n #_0DA45E: TYA\n #_0DA45F: AND.w #$00FF\n #_0DA462: ASL A\n #_0DA463: CLC\n #_0DA464: ADC.b $04\n #_0DA466: TAY\n\n #_0DA467: LDA.w LinkOAM_AnimationStepDataOffsets,Y\n #_0DA46A: CLC\n #_0DA46B: ADC.b $02\n #_0DA46D: STA.b $02\n\n #_0DA46F: TAY\n\n #_0DA470: LDA.w LinkOAM_Priority,Y\n #_0DA473: AND.w #$00FF\n #_0DA476: STA.b $04\n\n #_0DA478: LDA.w #$0E00\n #_0DA47B: STA.w $0346\n\n #_0DA47E: LDA.w $0ABD\n #_0DA481: BEQ .not_colormath_room\n\n #_0DA483: STZ.w $0346\n\n.not_colormath_room\n #_0DA486: STZ.w $0102\n #_0DA489: STZ.w $0104\n\n; ---------------------------------------------------------\n\n #_0DA48C: LDX.w #$000C\n\n.check_next\n #_0DA48F: LDA.w $0354\n #_0DA492: AND.w #$00FF\n #_0DA495: CMP.w LinkOAM_AnimationsWithAuxParts,X\n #_0DA498: BEQ .match\n\n #_0DA49A: DEX\n #_0DA49B: DEX\n #_0DA49C: BPL .check_next\n\n #_0DA49E: BRL LinkOAM_NoAux\n\n.match\n #_0DA4A1: TXA\n #_0DA4A2: AND.w #$00FF\n #_0DA4A5: CLC\n #_0DA4A6: ADC.b $74\n #_0DA4A8: TAX\n\n #_0DA4A9: LDA.b $76\n #_0DA4AB: AND.w #$00FF\n #_0DA4AE: CLC\n #_0DA4AF: ADC.w LinkOAM_AuxAnimationStepDataOffset,X\n #_0DA4B2: STA.b $74\n\n #_0DA4B4: LDY.b $74\n\n #_0DA4B6: LDA.w LinkOAM_Aux1GFXIndex,Y\n #_0DA4B9: AND.w #$00FF\n #_0DA4BC: CMP.w #$00FF\n #_0DA4BF: BNE .continue_aux1\n\n #_0DA4C1: BRL .no_aux1\n\n; ---------------------------------------------------------\n\n.continue_aux1\n #_0DA4C4: ASL A\n #_0DA4C5: STA.w $0102\n\n #_0DA4C8: LDX.b $72\n\n #_0DA4CA: LDA.w LinkOAM_LinkOAM_Aux1BufferOffsetPointers,X\n #_0DA4CD: STA.b $0A\n\n #_0DA4CF: LDY.b $04\n\n #_0DA4D1: LDA.b ($0A),Y\n #_0DA4D3: AND.w #$00FF\n #_0DA4D6: CLC\n #_0DA4D7: ADC.w $0352\n #_0DA4DA: TAX\n\n #_0DA4DB: LDY.b $74\n\n #_0DA4DD: SEP #$20\n\n #_0DA4DF: LDA.b $25\n #_0DA4E1: BMI .aux1_z_negative\n\n #_0DA4E3: LDA.b $24\n #_0DA4E5: BRA .aux1_z_continue\n\n.aux1_z_negative\n #_0DA4E7: LDA.b $24\n #_0DA4E9: CMP.b #$F0\n #_0DA4EB: BCC .aux1_z_continue\n\n #_0DA4ED: LDA.b #$00\n\n.aux1_z_continue\n #_0DA4EF: STA.b $0F\n #_0DA4F1: STZ.b $0E\n\n #_0DA4F3: LDA.w LinkOAM_Aux1Offset_Y,Y\n #_0DA4F6: CLC\n #_0DA4F7: ADC.b $01\n #_0DA4F9: SEC\n #_0DA4FA: SBC.b $0F\n #_0DA4FC: STA.w $0801,X\n\n #_0DA4FF: LDA.w LinkOAM_Aux1Offset_X,Y\n #_0DA502: CLC\n #_0DA503: ADC.b $00\n #_0DA505: STA.w $0800,X\n\n #_0DA508: REP #$20\n\n #_0DA50A: LDA.w LinkOAM_Aux1GFXIndex,Y\n #_0DA50D: AND.w #$00FF\n #_0DA510: STA.b $06\n\n #_0DA512: LSR A\n #_0DA513: TAY\n\n #_0DA514: LDA.w LinkOAM_AuxFlip-1,Y\n #_0DA517: TAY\n\n #_0DA518: LDA.b $06\n #_0DA51A: AND.w #$0001\n #_0DA51D: BEQ .dont_shift_aux1\n\n #_0DA51F: TYA\n #_0DA520: ASL A\n #_0DA521: ASL A\n #_0DA522: ASL A\n #_0DA523: ASL A\n #_0DA524: TAY\n\n.dont_shift_aux1\n #_0DA525: TYA\n #_0DA526: AND.w #$C000\n #_0DA529: ORA.b $64\n #_0DA52B: ORA.w $0346\n #_0DA52E: ORA.w #$0004\n #_0DA531: STA.w $0802,X\n\n #_0DA534: TXA\n #_0DA535: LSR A\n #_0DA536: LSR A\n #_0DA537: TAX\n\n #_0DA538: LDA.w $0A20,X\n #_0DA53B: AND.w #$FF00\n #_0DA53E: STA.w $0A20,X\n\n; ---------------------------------------------------------\n\n.no_aux1\n #_0DA541: LDY.b $74\n\n #_0DA543: LDA.w LinkOAM_Aux2GFXIndex,Y\n #_0DA546: AND.w #$00FF\n #_0DA549: CMP.w #$00FF\n #_0DA54C: BNE .continue_aux2\n\n #_0DA54E: BRL LinkOAM_NoAux\n\n.continue_aux2\n #_0DA551: ASL A\n #_0DA552: STA.w $0104\n\n #_0DA555: LDX.b $72\n\n #_0DA557: LDA.w LinkOAM_Aux2BufferOffsetPointers,X\n #_0DA55A: STA.b $0A\n\n #_0DA55C: LDY.b $04\n\n #_0DA55E: LDA.b ($0A),Y\n #_0DA560: AND.w #$00FF\n #_0DA563: CLC\n #_0DA564: ADC.w $0352\n #_0DA567: TAX\n\n #_0DA568: LDY.b $74\n\n #_0DA56A: SEP #$20\n\n #_0DA56C: LDA.b $25\n #_0DA56E: BMI .aux_2_z_negative\n\n #_0DA570: LDA.b $24\n #_0DA572: BRA .aux_2_z_continue\n\n.aux_2_z_negative\n #_0DA574: LDA.b $24\n #_0DA576: CMP.b #$F0\n #_0DA578: BCC .aux_2_z_continue\n\n #_0DA57A: LDA.b #$00\n\n.aux_2_z_continue\n #_0DA57C: STA.b $0F\n #_0DA57E: STZ.b $0E\n\n #_0DA580: LDA.w LinkOAM_Aux2Offset_Y,Y\n #_0DA583: CLC\n #_0DA584: ADC.b $01\n #_0DA586: SEC\n #_0DA587: SBC.b $0F\n #_0DA589: STA.w $0801,X\n\n #_0DA58C: LDA.w LinkOAM_Aux2Offset_X,Y\n #_0DA58F: CLC\n #_0DA590: ADC.b $00\n #_0DA592: STA.w $0800,X\n\n #_0DA595: REP #$20\n\n #_0DA597: LDA.w LinkOAM_Aux2GFXIndex,Y\n #_0DA59A: AND.w #$00FF\n #_0DA59D: STA.b $06\n\n #_0DA59F: LSR A\n #_0DA5A0: TAY\n\n #_0DA5A1: LDA.w LinkOAM_AuxFlip-1,Y\n #_0DA5A4: TAY\n\n #_0DA5A5: LDA.b $06\n #_0DA5A7: AND.w #$0001\n #_0DA5AA: BEQ .dont_shift_aux2\n\n #_0DA5AC: TYA\n #_0DA5AD: ASL A\n #_0DA5AE: ASL A\n #_0DA5AF: ASL A\n #_0DA5B0: ASL A\n #_0DA5B1: TAY\n\n.dont_shift_aux2\n #_0DA5B2: TYA\n #_0DA5B3: AND.w #$C000\n #_0DA5B6: ORA.b $64\n #_0DA5B8: ORA.w $0346\n #_0DA5BB: ORA.w #$0014\n #_0DA5BE: STA.w $0802,X\n\n #_0DA5C1: TXA\n #_0DA5C2: LSR A\n #_0DA5C3: LSR A\n #_0DA5C4: TAX\n\n #_0DA5C5: LDA.w $0A20,X\n #_0DA5C8: AND.w #$FF00\n #_0DA5CB: STA.w $0A20,X\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_NoAux", + "code": "LinkOAM_NoAux:\n #_0DA5CE: LDA.w $0309\n #_0DA5D1: AND.w #$0004\n #_0DA5D4: BEQ .always_taken\n\n #_0DA5D6: JSR LinkOAM_UnusedWeaponSettings\n #_0DA5D9: BRA .skip_sword_vram\n\n.always_taken\n #_0DA5DB: LDA.b $5D\n #_0DA5DD: AND.w #$00FF\n\n #_0DA5E0: CMP.w #$0008 ; LINKSTATE 08\n #_0DA5E3: BEQ .check_sword\n\n #_0DA5E5: CMP.w #$0009 ; LINKSTATE 09\n #_0DA5E8: BEQ .check_sword\n\n #_0DA5EA: CMP.w #$000A ; LINKSTATE 0A\n #_0DA5ED: BEQ .check_sword\n\n #_0DA5EF: CMP.w #$0003 ; LINKSTATE 03\n #_0DA5F2: BEQ .check_sword\n\n #_0DA5F4: CMP.w #$001E ; LINKSTATE 1E\n #_0DA5F7: BEQ .check_sword\n\n #_0DA5F9: LDA.w $0308\n #_0DA5FC: AND.w #$00FF\n #_0DA5FF: BNE .check_sword\n\n #_0DA601: LDA.w $03EF\n #_0DA604: ORA.w $0360\n #_0DA607: AND.w #$00FF\n #_0DA60A: BNE .check_sword\n\n #_0DA60C: LDA.w $0301\n #_0DA60F: AND.w #$0040\n #_0DA612: BNE .skip_sword_vram\n\n #_0DA614: LDA.w $037A\n #_0DA617: AND.w #$003D\n #_0DA61A: BNE .using_some_item\n\n #_0DA61C: LDA.w $0301\n #_0DA61F: AND.w #$0093\n #_0DA622: BNE .using_some_item\n\n #_0DA624: LDA.b $3A\n #_0DA626: AND.w #$0080\n #_0DA629: BEQ .skip_sword_vram\n\n; ---------------------------------------------------------\n\n.check_sword\n #_0DA62B: LDA.l $7EF359\n #_0DA62F: INC A\n #_0DA630: AND.w #$00FE\n #_0DA633: BEQ .skip_sword_vram\n\n.using_some_item\n #_0DA635: JSR LinkOAM_SetWeaponVRAMOffsets\n #_0DA638: BCC .continue_with_weapon\n\n.skip_sword_vram\n #_0DA63A: BRL LinkOAM_DrawShield\n\n; ---------------------------------------------------------\n\n.continue_with_weapon\n #_0DA63D: LDY.b $02\n\n #_0DA63F: SEP #$20\n\n #_0DA641: LDA.b $25\n #_0DA643: BMI .possibly_grounded\n\n #_0DA645: LDA.b $24\n #_0DA647: BRA .airborne\n\n.possibly_grounded\n #_0DA649: LDA.b $24\n #_0DA64B: CMP.b #$F0\n #_0DA64D: BCC .airborne\n\n #_0DA64F: LDA.b #$00\n\n.airborne\n #_0DA651: STA.b $0B\n\n; ---------------------------------------------------------\n\n #_0DA653: LDA.b $01\n #_0DA655: CLC\n #_0DA656: ADC.w LinkOAM_SwordOffsetY,Y\n #_0DA659: SEC\n #_0DA65A: SBC.b $0B\n #_0DA65C: STA.b $0B\n\n #_0DA65E: LDA.b $00\n #_0DA660: CLC\n #_0DA661: ADC.w LinkOAM_SwordOffsetX,Y\n #_0DA664: STA.b $0A\n #_0DA666: STA.b $08\n\n #_0DA668: LDA.w $0301\n #_0DA66B: AND.b #$02\n #_0DA66D: BEQ .not_hammer\n\n #_0DA66F: LDA.w $0300\n #_0DA672: CMP.b #$02\n #_0DA674: BNE .skip_hitbox\n\n #_0DA676: LDA.b $3D\n #_0DA678: CMP.b #$0F\n #_0DA67A: BNE .skip_hitbox\n\n #_0DA67C: BRA .set_hitbox_offset\n\n.not_hammer\n #_0DA67E: LDA.w $0301\n #_0DA681: AND.b #$05\n #_0DA683: BNE .skip_hitbox\n\n.set_hitbox_offset\n #_0DA685: LDA.w AttackHitboxOffset_Y,Y\n #_0DA688: STA.b $44\n\n #_0DA68A: LDA.w AttackHitboxOffset_X,Y\n #_0DA68D: STA.b $45\n\n; ---------------------------------------------------------\n\n.skip_hitbox\n #_0DA68F: STZ.b $0E\n #_0DA691: STZ.b $0F\n\n #_0DA693: LDA.w $0301\n #_0DA696: AND.b #$05\n #_0DA698: BEQ .rodding\n\n #_0DA69A: LDY.w $0307\n #_0DA69D: DEY\n\n #_0DA69E: LDA.w LinkOAM_RodTypeID,Y\n #_0DA6A1: STA.b $0F\n\n.rodding\n #_0DA6A3: LDA.w $037A\n #_0DA6A6: AND.b #$08\n #_0DA6A8: BEQ .not_caning\n\n #_0DA6AA: LDA.w $0303\n #_0DA6AD: CMP.b #$0D\n #_0DA6AF: BNE .not_caning\n\n #_0DA6B1: LDA.b #$04\n #_0DA6B3: STA.b $0F\n\n.not_caning\n #_0DA6B5: REP #$20\n\n #_0DA6B7: LDA.b $06\n #_0DA6B9: ASL A\n #_0DA6BA: CLC\n #_0DA6BB: ADC.b $06\n #_0DA6BD: ASL A\n #_0DA6BE: TAY\n\n #_0DA6BF: STZ.b $06\n\n #_0DA6C1: PHY\n\n #_0DA6C2: LDX.b $72\n\n #_0DA6C4: LDA.w LinkOAM_WeaponBufferOffsetPointers,X\n #_0DA6C7: STA.b $74\n\n #_0DA6C9: LDA.b $04\n #_0DA6CB: AND.w #$00FF\n #_0DA6CE: TAY\n\n #_0DA6CF: LDA.b ($74),Y\n #_0DA6D1: AND.w #$00FF\n #_0DA6D4: CLC\n #_0DA6D5: ADC.w $0352\n #_0DA6D8: TAX\n\n #_0DA6D9: PLY\n\n #_0DA6DA: LDA.b $0E\n\n #_0DA6DC: PHA\n\n #_0DA6DD: JSR LinkOAM_DrawSwordSwingTip\n\n #_0DA6E0: PLA\n\n #_0DA6E1: STA.b $0E\n\n; ---------------------------------------------------------\n\n.next_weapon_object\n #_0DA6E3: REP #$20\n\n #_0DA6E5: LDA.w LinkOAM_WeaponTiles,Y\n #_0DA6E8: CMP.w #$FFFF\n #_0DA6EB: BEQ .no_weapons\n\n #_0DA6ED: AND.w #$CFFF\n #_0DA6F0: ORA.b $64\n #_0DA6F2: STA.w $0802,X\n\n #_0DA6F5: AND.w #$0E00\n #_0DA6F8: CMP.w #$0200\n #_0DA6FB: BEQ .ignore_palette_adjustments\n\n #_0DA6FD: LDA.w $0346\n #_0DA700: BNE .ignore_palette_adjustments\n\n #_0DA702: LDA.w $0802,X\n #_0DA705: AND.w #$F1FF\n #_0DA708: ORA.w #$0600\n #_0DA70B: STA.w $0802,X\n\n.ignore_palette_adjustments\n #_0DA70E: LDA.b $0E\n #_0DA710: BEQ .ignore_palette_adjustments_2\n\n #_0DA712: LDA.w $0802,X\n #_0DA715: AND.w #$F1FF\n #_0DA718: ORA.b $0E\n #_0DA71A: STA.w $0802,X\n\n; ---------------------------------------------------------\n\n.ignore_palette_adjustments_2\n #_0DA71D: LDA.b $0A\n #_0DA71F: STA.w $0800,X\n\n #_0DA722: AND.w #$00FF\n #_0DA725: STA.b $74\n\n #_0DA727: LDA.b $00\n #_0DA729: AND.w #$00FF\n #_0DA72C: SEC\n #_0DA72D: SBC.b $74\n #_0DA72F: BPL .positive_a\n\n #_0DA731: EOR.w #$FFFF\n #_0DA734: INC A\n\n.positive_a\n #_0DA735: CMP.w #$0080\n #_0DA738: BCC .positive_b\n\n #_0DA73A: LDA.w #$0001\n #_0DA73D: TSB.b $0C\n\n.positive_b\n #_0DA73F: PHY\n #_0DA740: PHX\n\n #_0DA741: TXA\n #_0DA742: LSR A\n #_0DA743: LSR A\n #_0DA744: TAX\n\n #_0DA745: SEP #$20\n\n #_0DA747: LDA.b $0C\n #_0DA749: STA.w $0A20,X\n\n #_0DA74C: AND.b #$FE\n #_0DA74E: STA.b $0C\n\n #_0DA750: PLX\n #_0DA751: PLY\n\n #_0DA752: INX\n #_0DA753: INX\n #_0DA754: INX\n #_0DA755: INX\n\n; ---------------------------------------------------------\n\n.no_weapons\n #_0DA756: SEP #$20\n\n #_0DA758: LDA.b $0A\n #_0DA75A: CLC\n #_0DA75B: ADC.b #$08\n #_0DA75D: STA.b $0A\n\n #_0DA75F: INY\n #_0DA760: INY\n\n #_0DA761: LDA.b $06\n #_0DA763: INC A\n #_0DA764: STA.b $06\n\n #_0DA766: AND.b #$01\n #_0DA768: BNE .no_offset\n\n #_0DA76A: LDA.b $0B\n #_0DA76C: CLC\n #_0DA76D: ADC.b #$08\n #_0DA76F: STA.b $0B\n\n #_0DA771: LDA.b $08\n #_0DA773: STA.b $0A\n\n.no_offset\n #_0DA775: LDA.b $06\n #_0DA777: CMP.b #$03\n #_0DA779: BEQ .weapon_loop_done\n\n #_0DA77B: BRL .next_weapon_object\n\n.weapon_loop_done\n #_0DA77E: SEP #$10\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawShield", + "code": "LinkOAM_DrawShield:\n #_0DA780: REP #$30\n\n #_0DA782: LDA.l $7EF35A\n #_0DA786: AND.w #$00FF\n #_0DA789: BEQ .no_shield\n\n #_0DA78B: LDA.l $7EF3C5\n #_0DA78F: AND.w #$00FF\n #_0DA792: BEQ .no_shield\n\n #_0DA794: JSR LinkOAM_SetEquipmentVRAMOffsets\n #_0DA797: BCC .shield_continue\n\n.no_shield\n #_0DA799: BRL LinkOAM_DrawShadow\n\n; ---------------------------------------------------------\n\n.shield_continue\n #_0DA79C: LDY.b $02\n\n #_0DA79E: SEP #$20\n\n #_0DA7A0: LDA.b $25\n #_0DA7A2: BMI .not_necessarily_airborne\n\n #_0DA7A4: LDA.b $24\n #_0DA7A6: BRA .airborne\n\n.not_necessarily_airborne\n #_0DA7A8: LDA.b $24\n #_0DA7AA: CMP.b #$F0\n #_0DA7AC: BCC .airborne\n\n #_0DA7AE: LDA.b #$00\n\n.airborne\n #_0DA7B0: STA.b $0B\n\n #_0DA7B2: LDA.b $01\n #_0DA7B4: CLC\n #_0DA7B5: ADC.w LinkOAM_ShieldOffsetY,Y\n #_0DA7B8: DEC A\n\n #_0DA7B9: SEC\n #_0DA7BA: SBC.b $0B\n #_0DA7BC: STA.b $0B\n\n #_0DA7BE: LDA.b $00\n #_0DA7C0: CLC\n #_0DA7C1: ADC.w LinkOAM_ShieldOffsetX,Y\n #_0DA7C4: STA.b $0A\n #_0DA7C6: STA.b $08\n\n #_0DA7C8: LDA.w LinkOAM_ShieldOffsetX,Y\n #_0DA7CB: JSR LinkOAM_CalculateXOffsetRelativeLink\n\n #_0DA7CE: STZ.b $0E\n\n #_0DA7D0: LDA.b #$0A\n #_0DA7D2: STA.b $0F\n\n #_0DA7D4: LDA.w $0347\n #_0DA7D7: BNE .leave_shield_palette\n\n #_0DA7D9: LDA.b #$06\n #_0DA7DB: STA.b $0F\n\n.leave_shield_palette\n #_0DA7DD: REP #$30\n\n #_0DA7DF: LDA.b $06\n #_0DA7E1: ASL A\n #_0DA7E2: CLC\n #_0DA7E3: ADC.b $06\n #_0DA7E5: ASL A\n #_0DA7E6: TAY\n\n #_0DA7E7: STZ.b $06\n\n #_0DA7E9: PHY\n\n #_0DA7EA: LDX.b $72\n\n #_0DA7EC: LDA.w LinkOAM_ShieldBufferOffsetPointers,X\n #_0DA7EF: STA.b $74\n\n #_0DA7F1: LDA.b $04\n #_0DA7F3: AND.w #$00FF\n #_0DA7F6: TAY\n\n #_0DA7F7: LDA.b ($74),Y\n #_0DA7F9: AND.w #$00FF\n #_0DA7FC: CLC\n #_0DA7FD: ADC.w $0352\n #_0DA800: TAX\n\n #_0DA801: PLY\n\n; ---------------------------------------------------------\n\n.next_shield_object\n #_0DA802: REP #$20\n\n #_0DA804: STZ.b $74\n\n #_0DA806: LDA.w LinkOAM_ShieldTiles,Y\n\n #_0DA809: CMP.w #$FFFF\n #_0DA80C: BEQ .no_shield_to_draw\n\n #_0DA80E: AND.w #$C1FF\n #_0DA811: ORA.b $0E\n #_0DA813: ORA.b $64\n #_0DA815: STA.w $0802,X\n\n #_0DA818: LDA.b $0A\n #_0DA81A: STA.w $0800,X\n\n #_0DA81D: PHX\n\n #_0DA81E: TXA\n #_0DA81F: LSR A\n #_0DA820: LSR A\n #_0DA821: TAX\n\n #_0DA822: SEP #$20\n\n #_0DA824: LDA.b $0C\n #_0DA826: ORA.w $03FA\n #_0DA829: STA.w $0A20,X\n\n #_0DA82C: PLX\n #_0DA82D: INX\n #_0DA82E: INX\n #_0DA82F: INX\n #_0DA830: INX\n\n.no_shield_to_draw\n #_0DA831: SEP #$20\n\n #_0DA833: LDA.b $0A\n #_0DA835: CLC\n #_0DA836: ADC.b #$08\n #_0DA838: STA.b $0A\n\n #_0DA83A: INY\n #_0DA83B: INY\n\n #_0DA83C: INC.b $06\n\n #_0DA83E: LDA.b $06\n #_0DA840: AND.b #$01\n #_0DA842: BNE .no_offset\n\n #_0DA844: LDA.b $0B\n #_0DA846: CLC\n #_0DA847: ADC.b #$08\n #_0DA849: STA.b $0B\n\n #_0DA84B: LDA.b $08\n #_0DA84D: STA.b $0A\n\n.no_offset\n #_0DA84F: LDA.b $06\n #_0DA851: CMP.b #$03\n #_0DA853: BNE .next_shield_object\n\n #_0DA855: SEP #$10\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawShadow", + "code": "LinkOAM_DrawShadow:\n #_0DA857: SEP #$30\n\n #_0DA859: LDA.b $4B\n #_0DA85B: CMP.b #$0C\n #_0DA85D: BNE .continue_with_shadow\n\n #_0DA85F: BRL LinkOAM_DrawPose\n\n; ---------------------------------------------------------\n\n.continue_with_shadow\n #_0DA862: LDA.b $5D\n #_0DA864: CMP.b #$16 ; LINKSTATE 16\n #_0DA866: BEQ .proceed_to_pose\n\n #_0DA868: LDA.w $0354\n #_0DA86B: CMP.b #$05\n #_0DA86D: BEQ .recoil_check\n\n #_0DA86F: LDA.w $0351\n #_0DA872: BEQ .recoil_check\n\n #_0DA874: JSR LinkOAM_DrawFootObject\n\n #_0DA877: BRA .proceed_to_pose\n\n; ---------------------------------------------------------\n\n.recoil_check\n #_0DA879: LDA.b $4D\n #_0DA87B: CMP.b #$04\n #_0DA87D: BEQ .proceed_to_pose\n\n #_0DA87F: LDA.b $5D\n #_0DA881: CMP.b #$04 ; LINKSTATE 04\n #_0DA883: BEQ .proceed_to_pose\n\n #_0DA885: LDY.b #$00\n\n #_0DA887: LDA.b $5B\n #_0DA889: BEQ .weak_slip\n\n #_0DA88B: CMP.b #$01\n #_0DA88D: BEQ .weak_slip\n\n #_0DA88F: LDA.b $5A\n #_0DA891: CMP.b #$06\n #_0DA893: BCC .proceed_to_pose\n\n #_0DA895: JSR LinkOAM_DrawUnderworldFallShadow\n\n.proceed_to_pose\n #_0DA898: BRL LinkOAM_DrawPose\n\n; ---------------------------------------------------------\n\n.weak_slip\n #_0DA89B: LDA.b $4D\n #_0DA89D: BEQ .big_shadow\n\n #_0DA89F: CMP.b #$01\n #_0DA8A1: BNE .tiny_shadow\n\n #_0DA8A3: LDA.b $55\n #_0DA8A5: BNE .big_shadow\n\n.tiny_shadow\n #_0DA8A7: LDY.b #$01\n\n.big_shadow\n #_0DA8A9: STY.b $0A\n\n; ---------------------------------------------------------\n\n #_0DA8AB: STZ.b $0B\n\n #_0DA8AD: LDA.w $0323\n #_0DA8B0: LSR A\n #_0DA8B1: TAY\n\n #_0DA8B2: REP #$20\n\n #_0DA8B4: LDA.b $20\n #_0DA8B6: SEC\n #_0DA8B7: SBC.b $E8\n #_0DA8B9: STA.b $06\n\n #_0DA8BB: LDA.w LinkOAM_ShadowOffset_Y,Y\n\n #_0DA8BE: AND.w #$00FF\n #_0DA8C1: CMP.w #$0080\n #_0DA8C4: BCC .positive_y\n\n #_0DA8C6: ORA.w #$FF00\n\n.positive_y\n #_0DA8C9: CLC\n #_0DA8CA: ADC.b $06\n #_0DA8CC: STA.b $06\n\n #_0DA8CE: SEP #$20\n\n #_0DA8D0: LDA.b $07\n #_0DA8D2: BNE .proceed_to_pose\n\n #_0DA8D4: LDA.b $01\n #_0DA8D6: CLC\n #_0DA8D7: ADC.w LinkOAM_ShadowOffset_Y,Y\n #_0DA8DA: STA.b $07\n\n #_0DA8DC: LDA.b $00\n #_0DA8DE: CLC\n #_0DA8DF: ADC.w LinkOAM_ShadowOffset_X,Y\n #_0DA8E2: STA.b $06\n\n; ---------------------------------------------------------\n\n #_0DA8E4: REP #$30\n\n #_0DA8E6: LDX.b $72\n\n #_0DA8E8: LDA.w LinkOAM_ShadowBufferOffsetPointers,X\n #_0DA8EB: STA.b $74\n\n #_0DA8ED: LDA.b $04\n #_0DA8EF: AND.w #$00FF\n #_0DA8F2: TAY\n\n #_0DA8F3: LDA.b ($74),Y\n #_0DA8F5: AND.w #$00FF\n #_0DA8F8: CLC\n #_0DA8F9: ADC.w $0352\n #_0DA8FC: TAX\n\n #_0DA8FD: LDA.b $0A\n #_0DA8FF: ASL A\n #_0DA900: ASL A\n #_0DA901: TAY\n\n #_0DA902: LDA.w LinkOAM_ShadowTiles+0,Y\n #_0DA905: AND.w #$CFFF\n #_0DA908: ORA.w $035D\n #_0DA90B: STA.w $0802,X\n\n #_0DA90E: AND.w #$3FFF\n #_0DA911: ORA.w #$4000\n #_0DA914: STA.w $0806,X\n\n #_0DA917: LDA.b $06\n #_0DA919: STA.w $0800,X\n\n #_0DA91C: XBA\n #_0DA91D: CLC\n #_0DA91E: ADC.w #$0800\n\n #_0DA921: XBA\n #_0DA922: STA.w $0804,X\n\n; ---------------------------------------------------------\n\n #_0DA925: LDA.w $0346\n #_0DA928: BNE .no_palette_adjustment\n\n #_0DA92A: LDA.w $0802,X\n #_0DA92D: AND.w #$F1FF\n #_0DA930: ORA.w #$0600\n #_0DA933: STA.w $0802,X\n\n #_0DA936: LDA.w $0806,X\n #_0DA939: AND.w #$F1FF\n #_0DA93C: ORA.w #$0600\n #_0DA93F: STA.w $0806,X\n\n.no_palette_adjustment\n #_0DA942: TXA\n #_0DA943: LSR A\n #_0DA944: LSR A\n #_0DA945: TAX\n\n #_0DA946: STZ.w $0A20,X\n\n #_0DA949: SEP #$30\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawPose", + "code": "LinkOAM_DrawPose:\n #_0DA94B: REP #$30\n\n #_0DA94D: LDX.b $72\n\n #_0DA94F: LDA.w LinkOAM_ElfBufferOffsetPointers,X\n #_0DA952: STA.b $74\n\n #_0DA954: LDY.b $04\n\n #_0DA956: LDA.b ($74),Y\n #_0DA958: AND.w #$00FF\n #_0DA95B: CLC\n #_0DA95C: ADC.w $0352\n #_0DA95F: TAX\n\n #_0DA960: LDA.b $02\n #_0DA962: ASL A\n #_0DA963: TAY\n\n #_0DA964: LDA.w LinkOAM_AnimationSteps,Y\n #_0DA967: STA.b $0E\n\n #_0DA969: ASL A\n #_0DA96A: STA.w $0100\n\n #_0DA96D: CLC\n #_0DA96E: ADC.b $0E\n #_0DA970: TAY\n\n; ---------------------------------------------------------\n\n #_0DA971: SEP #$20\n\n #_0DA973: LDA.b $4B\n #_0DA975: CMP.b #$0C\n #_0DA977: BNE .not_invisible\n\n #_0DA979: BRL LinkOAM_RunFinalAdjustments\n\n.not_invisible\n #_0DA97C: LDA.b $25\n #_0DA97E: BMI .possibly_grounded\n\n #_0DA980: LDA.b $24\n #_0DA982: BRA .airborne\n\n.possibly_grounded\n #_0DA984: LDA.b $24\n #_0DA986: CMP.b #$F0\n #_0DA988: BCC .airborne\n\n #_0DA98A: LDA.b #$00\n\n.airborne\n #_0DA98C: STA.b $0F\n #_0DA98E: STZ.b $0E\n\n; ---------------------------------------------------------\n\n #_0DA990: LDA.b $01\n #_0DA992: CLC\n #_0DA993: ADC.w LinkOAM_PoseData+0,Y\n #_0DA996: SEC\n #_0DA997: SBC.b $0F\n #_0DA999: STA.b $0B\n\n #_0DA99B: LDA.b $00\n #_0DA99D: CLC\n #_0DA99E: ADC.w LinkOAM_PoseData+1,Y\n #_0DA9A1: STA.b $0A\n\n #_0DA9A3: REP #$20\n\n #_0DA9A5: LDA.w LinkOAM_PoseData+2,Y\n #_0DA9A8: XBA\n #_0DA9A9: STA.b $06\n\n #_0DA9AB: AND.w #$F000\n #_0DA9AE: CMP.w #$F000\n #_0DA9B1: BEQ .no_draw\n\n #_0DA9B3: ORA.b $64\n #_0DA9B5: ORA.w $0346\n #_0DA9B8: STA.w $0802,X\n\n #_0DA9BB: STZ.b $02\n\n #_0DA9BD: LDA.b $0A\n #_0DA9BF: STA.w $0800,X\n\n #_0DA9C2: AND.w #$00FF\n #_0DA9C5: CMP.w #$00F8\n #_0DA9C8: BCC .on_screen_x\n\n #_0DA9CA: LDA.w #$0001\n #_0DA9CD: STA.b $02\n\n.on_screen_x\n #_0DA9CF: PHX\n\n #_0DA9D0: TXA\n #_0DA9D1: LSR A\n #_0DA9D2: LSR A\n #_0DA9D3: TAX\n\n #_0DA9D4: LDA.w $0A20,X\n #_0DA9D7: AND.w #$FF00\n #_0DA9DA: ORA.b $02\n #_0DA9DC: ORA.w #$0002\n #_0DA9DF: STA.w $0A20,X\n\n #_0DA9E2: PLX\n\n; ---------------------------------------------------------\n\n.no_draw\n #_0DA9E3: LDA.b $06\n #_0DA9E5: AND.w #$0F00\n #_0DA9E8: CMP.w #$0F00\n #_0DA9EB: BEQ LinkOAM_RunFinalAdjustments\n\n #_0DA9ED: ASL A\n #_0DA9EE: ASL A\n #_0DA9EF: ASL A\n #_0DA9F0: ASL A\n\n #_0DA9F1: ORA.b $64\n #_0DA9F3: ORA.w $0346\n #_0DA9F6: ORA.w #$0002\n #_0DA9F9: STA.w $0806,X\n\n #_0DA9FC: LDA.b $00\n #_0DA9FE: SEC\n #_0DA9FF: SBC.b $0E\n #_0DAA01: CLC\n #_0DAA02: ADC.w #$0800\n #_0DAA05: STA.w $0804,X\n\n #_0DAA08: TXA\n #_0DAA09: LSR A\n #_0DAA0A: LSR A\n #_0DAA0B: TAX\n\n #_0DAA0C: LDA.w $0A21,X\n #_0DAA0F: AND.w #$FF00\n #_0DAA12: ORA.w #$0002\n #_0DAA15: STA.w $0A21,X\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_RunFinalAdjustments", + "code": "LinkOAM_RunFinalAdjustments:\n #_0DAA18: SEP #$30\n\n #_0DAA1A: LDA.b #$01\n #_0DAA1C: STA.b $0E\n\n #_0DAA1E: LDA.b $6C\n #_0DAA20: BEQ .not_in_door\n\n; ---------------------------------------------------------\n\n #_0DAA22: REP #$20\n\n #_0DAA24: LDA.b $22\n #_0DAA26: SEC\n #_0DAA27: SBC.b $E2\n #_0DAA29: CMP.w #$0004\n #_0DAA2C: BCC .looks_invisible\n\n #_0DAA2E: CMP.w #$00FC\n #_0DAA31: BCS .looks_invisible\n\n #_0DAA33: LDA.b $20\n #_0DAA35: SEC\n #_0DAA36: SBC.b $E8\n #_0DAA38: CMP.w #$0004\n #_0DAA3B: BCC .looks_invisible\n\n #_0DAA3D: CMP.w #$00E0\n #_0DAA40: BCS .looks_invisible\n\n #_0DAA42: SEP #$20\n\n; ---------------------------------------------------------\n\n.not_in_door\n #_0DAA44: STZ.b $0E\n\n #_0DAA46: LDA.b $11\n #_0DAA48: BNE .check_stair_visibility\n\n #_0DAA4A: LDA.w $031F\n #_0DAA4D: BEQ .check_stair_visibility\n\n #_0DAA4F: DEC A\n #_0DAA50: STA.w $031F\n\n #_0DAA53: CMP.b #$04\n #_0DAA55: BCC .check_stair_visibility\n\n #_0DAA57: AND.b #$01\n #_0DAA59: BEQ .looks_invisible\n\n.check_stair_visibility\n #_0DAA5B: LDA.b $4B\n #_0DAA5D: CMP.b #$0C\n #_0DAA5F: BEQ .looks_invisible\n\n #_0DAA61: LDA.b $55\n #_0DAA63: BEQ .not_caping\n\n.looks_invisible\n #_0DAA65: REP #$30\n\n #_0DAA67: LDA.w $0352\n #_0DAA6A: LSR A\n #_0DAA6B: LSR A\n #_0DAA6C: TAX\n\n #_0DAA6D: LDA.w #$0101\n #_0DAA70: STA.w $0A20,X\n #_0DAA73: STA.w $0A22,X\n #_0DAA76: STA.w $0A24,X\n #_0DAA79: STA.w $0A26,X\n #_0DAA7C: STA.w $0A28,X\n #_0DAA7F: STA.w $0A2A,X\n\n; ---------------------------------------------------------\n\n #_0DAA82: LDA.b $4B\n #_0DAA84: AND.w #$00FF\n #_0DAA87: CMP.w #$000C\n #_0DAA8A: BEQ .check_position_restoration\n\n #_0DAA8C: LDA.b $0E\n #_0DAA8E: AND.w #$00FF\n #_0DAA91: BNE .check_position_restoration\n\n #_0DAA93: LDX.b $72\n\n #_0DAA95: LDA.w LinkOAM_ShadowBufferOffsetPointers,X\n #_0DAA98: STA.b $74\n\n #_0DAA9A: LDA.b $04\n #_0DAA9C: AND.w #$00FF\n #_0DAA9F: TAY\n\n #_0DAAA0: LDA.b ($74),Y\n #_0DAAA2: AND.w #$00FF\n #_0DAAA5: CLC\n #_0DAAA6: ADC.w $0352\n\n #_0DAAA9: LSR A\n #_0DAAAA: LSR A\n #_0DAAAB: TAX\n\n #_0DAAAC: STZ.w $0A20,X\n\n; ---------------------------------------------------------\n\n.check_position_restoration\n #_0DAAAF: SEP #$30\n\n.not_caping\n #_0DAAB1: LDA.b $11\n #_0DAAB3: CMP.b #$12\n #_0DAAB5: BEQ .restore_position\n\n #_0DAAB7: CMP.b #$13\n #_0DAAB9: BNE .exit\n\n.restore_position\n #_0DAABB: PLA\n #_0DAABC: STA.b $21\n\n #_0DAABE: PLA\n #_0DAABF: STA.b $20\n\n.exit\n #_0DAAC1: PLB\n\n #_0DAAC2: RTL", + "file": "bank_0D.asm" + }, + { + "name": "FindMostSignificantBit", + "code": "FindMostSignificantBit:\n #_0DAAC3: LDX.b #$07\n\n.shift\n #_0DAAC5: ASL A\n #_0DAAC6: BCS .hit\n\n #_0DAAC8: DEX\n #_0DAAC9: BPL .shift\n\n.hit\n #_0DAACB: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponOffsetID", + "code": "LinkOAM_WeaponOffsetID:\n #_0DAACC: db $06\n #_0DAACD: db $06\n #_0DAACE: db $04\n #_0DAACF: db $04\n #_0DAAD0: db $04\n #_0DAAD1: db $04\n #_0DAAD2: db $00\n #_0DAAD3: db $00\n #_0DAAD4: db $08\n #_0DAAD5: db $08\n #_0DAAD6: db $08\n #_0DAAD7: db $08\n #_0DAAD8: db $02\n #_0DAAD9: db $02\n #_0DAADA: db $02\n #_0DAADB: db $02\n #_0DAADC: db $0A\n #_0DAADD: db $0A\n #_0DAADE: db $0A\n #_0DAADF: db $0A\n #_0DAAE0: db $0C\n #_0DAAE1: db $0C\n #_0DAAE2: db $0C\n #_0DAAE3: db $0C\n #_0DAAE4: db $0E\n #_0DAAE5: db $0E\n #_0DAAE6: db $0E\n #_0DAAE7: db $0E\n #_0DAAE8: db $00\n #_0DAAE9: db $09\n #_0DAAEA: db $0C\n #_0DAAEB: db $09\n #_0DAAEC: db $0C\n #_0DAAED: db $0E\n #_0DAAEE: db $0A\n #_0DAAEF: db $08\n #_0DAAF0: db $0D\n #_0DAAF1: db $08\n #_0DAAF2: db $0D\n #_0DAAF3: db $12\n #_0DAAF4: db $12\n #_0DAAF5: db $11\n #_0DAAF6: db $11\n #_0DAAF7: db $10\n #_0DAAF8: db $10\n #_0DAAF9: db $10\n #_0DAAFA: db $10\n #_0DAAFB: db $40\n #_0DAAFC: db $41\n #_0DAAFD: db $40\n #_0DAAFE: db $41\n #_0DAAFF: db $18\n #_0DAB00: db $18\n #_0DAB01: db $19\n #_0DAB02: db $19\n #_0DAB03: db $24\n #_0DAB04: db $21\n #_0DAB05: db $25\n #_0DAB06: db $23\n #_0DAB07: db $22\n #_0DAB08: db $20\n #_0DAB09: db $26\n #_0DAB0A: db $23\n #_0DAB0B: db $25\n #_0DAB0C: db $26\n #_0DAB0D: db $22\n #_0DAB0E: db $28\n #_0DAB0F: db $2A\n #_0DAB10: db $29\n #_0DAB11: db $29\n #_0DAB12: db $2C\n #_0DAB13: db $28\n #_0DAB14: db $2B\n #_0DAB15: db $28\n #_0DAB16: db $2B\n #_0DAB17: db $30\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_RodOffsetID", + "code": "LinkOAM_RodOffsetID:\n #_0DAB18: db $01, $04, $01, $04, $06, $02, $00, $05\n #_0DAB20: db $00, $05\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_WeaponSize", + "code": "LinkOAM_WeaponSize:\n #_0DAB22: db $00\n #_0DAB23: db $00\n #_0DAB24: db $00\n #_0DAB25: db $00\n #_0DAB26: db $00\n #_0DAB27: db $00\n #_0DAB28: db $00\n #_0DAB29: db $00\n #_0DAB2A: db $00\n #_0DAB2B: db $00\n #_0DAB2C: db $00\n #_0DAB2D: db $00\n #_0DAB2E: db $02\n #_0DAB2F: db $02\n #_0DAB30: db $02\n #_0DAB31: db $02\n #_0DAB32: db $02\n #_0DAB33: db $02\n #_0DAB34: db $02\n #_0DAB35: db $02\n #_0DAB36: db $02\n #_0DAB37: db $02\n #_0DAB38: db $02\n #_0DAB39: db $02\n #_0DAB3A: db $02\n #_0DAB3B: db $02\n #_0DAB3C: db $02\n #_0DAB3D: db $02\n #_0DAB3E: db $00\n #_0DAB3F: db $00\n #_0DAB40: db $00\n #_0DAB41: db $00\n #_0DAB42: db $00\n #_0DAB43: db $00\n #_0DAB44: db $00\n #_0DAB45: db $02\n #_0DAB46: db $00\n #_0DAB47: db $02\n #_0DAB48: db $00\n #_0DAB49: db $00\n #_0DAB4A: db $00\n #_0DAB4B: db $00\n #_0DAB4C: db $00\n #_0DAB4D: db $02\n #_0DAB4E: db $02\n #_0DAB4F: db $02\n #_0DAB50: db $02\n #_0DAB51: db $02\n #_0DAB52: db $00\n #_0DAB53: db $02\n #_0DAB54: db $00\n #_0DAB55: db $00\n #_0DAB56: db $00\n #_0DAB57: db $00\n #_0DAB58: db $00\n #_0DAB59: db $02\n #_0DAB5A: db $02\n #_0DAB5B: db $02\n #_0DAB5C: db $02\n #_0DAB5D: db $02\n #_0DAB5E: db $02\n #_0DAB5F: db $02\n #_0DAB60: db $02\n #_0DAB61: db $02\n #_0DAB62: db $02\n #_0DAB63: db $02\n #_0DAB64: db $02\n #_0DAB65: db $00\n #_0DAB66: db $00\n #_0DAB67: db $00\n #_0DAB68: db $00\n #_0DAB69: db $02\n #_0DAB6A: db $00\n #_0DAB6B: db $02\n #_0DAB6C: db $00\n #_0DAB6D: db $02\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SetWeaponVRAMOffsets", + "code": "LinkOAM_SetWeaponVRAMOffsets:\n #_0DAB6E: REP #$30\n\n #_0DAB70: LDY.b $02\n\n #_0DAB72: LDA.w LinkOAM_WeaponGFXIndex,Y\n #_0DAB75: AND.w #$00FF\n #_0DAB78: CMP.w #$00FF\n #_0DAB7B: BEQ .fail\n\n #_0DAB7D: STA.b $06\n\n #_0DAB7F: TAX\n\n #_0DAB80: LDA.w LinkOAM_WeaponSize,X\n #_0DAB83: AND.w #$00FF\n #_0DAB86: STA.b $0C\n\n #_0DAB88: TXA\n\n #_0DAB89: LDY.w LinkOAM_WeaponOffsetID,X\n #_0DAB8C: CMP.w #$001D\n #_0DAB8F: BCC .is_sword\n\n #_0DAB91: LDA.w $0301\n #_0DAB94: AND.w #$0005\n #_0DAB97: BEQ .not_rod\n\n #_0DAB99: TXA\n #_0DAB9A: SEC\n #_0DAB9B: SBC.w #$001D\n #_0DAB9E: TAX\n\n #_0DAB9F: LDY.w LinkOAM_RodOffsetID,X\n\n; ---------------------------------------------------------\n\n.not_rod\n #_0DABA2: TYA\n #_0DABA3: AND.w #$00FF\n #_0DABA6: STA.b $0A\n\n #_0DABA8: LDA.w $0109\n #_0DABAB: AND.w #$FF00\n #_0DABAE: ORA.b $0A\n #_0DABB0: STA.w $0109\n\n #_0DABB3: BRA .succeed\n\n; ---------------------------------------------------------\n\n.is_sword\n #_0DABB5: TYA\n #_0DABB6: AND.w #$00FF\n #_0DABB9: STA.b $0A\n\n #_0DABBB: LDA.w $0107\n #_0DABBE: AND.w #$FF00\n #_0DABC1: ORA.b $0A\n #_0DABC3: STA.w $0107\n\n; ---------------------------------------------------------\n\n.succeed\n #_0DABC6: CLC\n\n #_0DABC7: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SetEquipmentVRAMOffsets", + "code": "LinkOAM_SetEquipmentVRAMOffsets:\n #_0DABE6: REP #$30\n\n #_0DABE8: STZ.b $0C\n\n #_0DABEA: LDY.b $02\n\n #_0DABEC: LDA.w LinkOAM_ShieldGFXIndex,Y\n #_0DABEF: AND.w #$00FF\n #_0DABF2: CMP.w #$00FF\n #_0DABF5: BEQ .fail\n\n #_0DABF7: STA.b $06\n\n #_0DABF9: TAX\n\n #_0DABFA: LDY.w .shield_id,X\n\n #_0DABFD: AND.w #$00F8\n #_0DAC00: BEQ .is_shield\n\n #_0DAC02: LDA.w $0301\n #_0DAC05: AND.w #$0005\n #_0DAC08: BEQ .not_rod\n\n #_0DAC0A: TXA\n #_0DAC0B: SEC\n #_0DAC0C: SBC.w #$0008\n #_0DAC0F: TAX\n\n #_0DAC10: LDY.w .rod_id,X\n\n; ---------------------------------------------------------\n\n.not_rod\n #_0DAC13: TYA\n #_0DAC14: AND.w #$00FF\n #_0DAC17: STA.b $0A\n\n #_0DAC19: LDA.w $0109\n #_0DAC1C: AND.w #$FF00\n #_0DAC1F: ORA.b $0A\n #_0DAC21: STA.w $0109\n\n #_0DAC24: AND.w #$0007\n #_0DAC27: BEQ .dont_invert\n\n #_0DAC29: BRA .succeed\n\n.is_shield\n #_0DAC2B: TYA\n #_0DAC2C: AND.w #$00FF\n #_0DAC2F: STA.b $0A\n\n #_0DAC31: LDA.w $0108\n #_0DAC34: AND.w #$FF00\n #_0DAC37: ORA.b $0A\n #_0DAC39: STA.w $0108\n\n.dont_invert\n #_0DAC3C: LDA.w #$0002\n #_0DAC3F: STA.b $0C\n\n; ---------------------------------------------------------\n\n.succeed\n #_0DAC41: CLC\n\n #_0DAC42: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SwordSwingTipTile", + "code": "LinkOAM_SwordSwingTipTile:\n.up\n #_0DAC45: dw $FFFF\n #_0DAC47: dw $FFFF\n #_0DAC49: dw $6A3E\n #_0DAC4B: dw $6A2F\n #_0DAC4D: dw $6A2F\n #_0DAC4F: dw $2A05\n #_0DAC51: dw $2A2F\n #_0DAC53: dw $2A3E\n #_0DAC55: dw $FFFF\n\n.down\n #_0DAC57: dw $FFFF\n #_0DAC59: dw $FFFF\n #_0DAC5B: dw $AA3E\n #_0DAC5D: dw $AA2F\n #_0DAC5F: dw $AA2F\n #_0DAC61: dw $AA05\n #_0DAC63: dw $EA2F\n #_0DAC65: dw $EA3E\n #_0DAC67: dw $FFFF\n\n.left\n #_0DAC69: dw $FFFF\n #_0DAC6B: dw $FFFF\n #_0DAC6D: dw $2A3E\n #_0DAC6F: dw $2A3F\n #_0DAC71: dw $2A3F\n #_0DAC73: dw $2A05\n #_0DAC75: dw $AA3F\n #_0DAC77: dw $AA3E\n #_0DAC79: dw $FFFF\n\n.right\n #_0DAC7B: dw $FFFF\n #_0DAC7D: dw $FFFF\n #_0DAC7F: dw $6A3E\n #_0DAC81: dw $6A3F\n #_0DAC83: dw $6A3F\n #_0DAC85: dw $6A05\n #_0DAC87: dw $EA3F\n #_0DAC89: dw $EA3E\n #_0DAC8B: dw $FFFF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SwordSwingTipOffsetY", + "code": "LinkOAM_SwordSwingTipOffsetY:\n.up\n #_0DAC8D: db $FF\n #_0DAC8E: db $FF\n #_0DAC8F: db $FB\n #_0DAC90: db $F3\n #_0DAC91: db $F1\n #_0DAC92: db $EB\n #_0DAC93: db $F3\n #_0DAC94: db $FB\n #_0DAC95: db $FF\n\n.down\n #_0DAC96: db $FF\n #_0DAC97: db $FF\n #_0DAC98: db $16\n #_0DAC99: db $1B\n #_0DAC9A: db $1D\n #_0DAC9B: db $23\n #_0DAC9C: db $1B\n #_0DAC9D: db $18\n #_0DAC9E: db $FF\n\n.left\n #_0DAC9F: db $FF\n #_0DACA0: db $FF\n #_0DACA1: db $FF\n #_0DACA2: db $02\n #_0DACA3: db $05\n #_0DACA4: db $0C\n #_0DACA5: db $14\n #_0DACA6: db $1A\n #_0DACA7: db $FF\n\n.right\n #_0DACA8: db $FF\n #_0DACA9: db $FF\n #_0DACAA: db $FF\n #_0DACAB: db $02\n #_0DACAC: db $05\n #_0DACAD: db $0C\n #_0DACAE: db $14\n #_0DACAF: db $1A\n #_0DACB0: db $FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_SwordSwingTipOffsetX", + "code": "LinkOAM_SwordSwingTipOffsetX:\n.up\n #_0DACB1: db $FF\n #_0DACB2: db $FF\n #_0DACB3: db $0F\n #_0DACB4: db $0D\n #_0DACB5: db $08\n #_0DACB6: db $FF\n #_0DACB7: db $F6\n #_0DACB8: db $F2\n #_0DACB9: db $FF\n\n.down\n #_0DACBA: db $FF\n #_0DACBB: db $FF\n #_0DACBC: db $FA\n #_0DACBD: db $FD\n #_0DACBE: db $01\n #_0DACBF: db $08\n #_0DACC0: db $10\n #_0DACC1: db $15\n #_0DACC2: db $FF\n\n.left\n #_0DACC3: db $FF\n #_0DACC4: db $FF\n #_0DACC5: db $F5\n #_0DACC6: db $F1\n #_0DACC7: db $EE\n #_0DACC8: db $E8\n #_0DACC9: db $EF\n #_0DACCA: db $F4\n #_0DACCB: db $FF\n\n.right\n #_0DACCC: db $FF\n #_0DACCD: db $FF\n #_0DACCE: db $13\n #_0DACCF: db $17\n #_0DACD0: db $1A\n #_0DACD1: db $20\n #_0DACD2: db $19\n #_0DACD3: db $14\n #_0DACD4: db $FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawSwordSwingTip", + "code": "LinkOAM_DrawSwordSwingTip:\n #_0DACD5: LDA.b $0A\n #_0DACD7: PHA\n\n #_0DACD8: PHY\n\n #_0DACD9: LDA.b $5D\n #_0DACDB: BEQ .base_link_state\n\n.give_up\n #_0DACDD: BRL .reset_and_exit\n\n; ---------------------------------------------------------\n\n.base_link_state\n #_0DACE0: LDA.l $7EF359\n #_0DACE4: AND.w #$00FF\n #_0DACE7: BEQ .give_up\n\n #_0DACE9: CMP.w #$00FF\n #_0DACEC: BEQ .give_up\n\n #_0DACEE: CMP.w #$0001\n #_0DACF1: BEQ .give_up\n\n #_0DACF3: LDA.b $3A\n #_0DACF5: AND.w #$0080\n #_0DACF8: BEQ .give_up\n\n #_0DACFA: LDA.b $3C\n #_0DACFC: AND.w #$00FF\n #_0DACFF: CMP.w #$0009\n #_0DAD02: BCS .give_up\n\n #_0DAD04: ASL A\n #_0DAD05: STA.b $0A\n\n #_0DAD07: LDA.b $2F\n #_0DAD09: AND.w #$00FF\n #_0DAD0C: LSR A\n #_0DAD0D: STA.b $0E\n\n #_0DAD0F: ASL A\n #_0DAD10: ASL A\n #_0DAD11: ASL A\n\n #_0DAD12: CLC\n #_0DAD13: ADC.b $0E\n\n #_0DAD15: ASL A\n #_0DAD16: CLC\n #_0DAD17: ADC.b $0A\n #_0DAD19: TAY\n\n #_0DAD1A: LDA.w LinkOAM_SwordSwingTipTile,Y\n #_0DAD1D: CMP.w #$FFFF\n #_0DAD20: BEQ .reset_and_exit\n\n #_0DAD22: AND.w #$CFFF\n #_0DAD25: ORA.b $64\n #_0DAD27: STA.w $0802,X\n\n; ---------------------------------------------------------\n\n #_0DAD2A: LDA.w $0346\n #_0DAD2D: BNE .no_palette_adjust\n\n #_0DAD2F: LDA.w $0802,X\n #_0DAD32: AND.w #$F1FF\n #_0DAD35: ORA.w #$0600\n #_0DAD38: STA.w $0802,X\n\n.no_palette_adjust\n #_0DAD3B: TYA\n #_0DAD3C: LSR A\n #_0DAD3D: TAY\n\n #_0DAD3E: SEP #$20\n\n #_0DAD40: LDA.w LinkOAM_SwordSwingTipOffsetY,Y\n #_0DAD43: CLC\n #_0DAD44: ADC.b $01\n #_0DAD46: STA.b $0B\n\n #_0DAD48: LDA.w LinkOAM_SwordSwingTipOffsetX,Y\n #_0DAD4B: CLC\n #_0DAD4C: ADC.b $00\n #_0DAD4E: STA.b $0A\n\n #_0DAD50: LDA.w LinkOAM_SwordSwingTipOffsetY,Y\n #_0DAD53: STA.b $44\n\n #_0DAD55: LDA.w LinkOAM_SwordSwingTipOffsetX,Y\n #_0DAD58: STA.b $45\n\n #_0DAD5A: JSR LinkOAM_CalculateXOffsetRelativeLink\n\n #_0DAD5D: REP #$20\n\n #_0DAD5F: LDA.b $0A\n #_0DAD61: STA.w $0800,X\n\n #_0DAD64: INX\n #_0DAD65: INX\n #_0DAD66: INX\n #_0DAD67: INX\n\n #_0DAD68: PHX\n\n #_0DAD69: TXA\n #_0DAD6A: SEC\n #_0DAD6B: SBC.w #$0004\n #_0DAD6E: LSR A\n #_0DAD6F: LSR A\n #_0DAD70: TAX\n\n #_0DAD71: LDA.w #$0000\n #_0DAD74: ORA.w $03FA\n #_0DAD77: STA.w $0A20,X\n\n #_0DAD7A: PLX\n\n; ---------------------------------------------------------\n\n.reset_and_exit\n #_0DAD7B: STZ.b $0E\n\n #_0DAD7D: PLY\n\n #_0DAD7E: PLA\n #_0DAD7F: STA.b $0A\n\n #_0DAD81: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_UnusedWeaponSettings", + "code": "LinkOAM_UnusedWeaponSettings:\n #_0DADB6: SEP #$30\n\n #_0DADB8: LSR A\n #_0DADB9: LSR A\n #_0DADBA: JSR FindMostSignificantBit\n\n #_0DADBD: LDA.w .offset,X\n #_0DADC0: CLC\n #_0DADC1: ADC.w $030E\n #_0DADC4: ASL A\n #_0DADC5: ASL A\n #_0DADC6: STA.b $06\n #_0DADC8: STZ.b $07\n\n; ---------------------------------------------------------\n\n #_0DADCA: LDA.b #$42\n #_0DADCC: STA.w $0109\n\n #_0DADCF: REP #$30\n\n #_0DADD1: LDX.b $72\n\n #_0DADD3: LDA.w LinkOAM_WeaponBufferOffsetPointers,X\n #_0DADD6: STA.b $74\n\n #_0DADD8: LDA.b $04\n #_0DADDA: AND.w #$00FF\n #_0DADDD: TAY\n\n #_0DADDE: LDA.b ($74),Y\n #_0DADE0: AND.w #$00FF\n #_0DADE3: CLC\n #_0DADE4: ADC.w $0352\n #_0DADE7: TAX\n\n #_0DADE8: LDY.b $06\n #_0DADEA: STZ.b $06\n\n; ---------------------------------------------------------\n\n.next_object\n #_0DADEC: SEP #$20\n\n #_0DADEE: LDA.b $01\n #_0DADF0: CLC\n #_0DADF1: ADC.w .offset_x,Y\n #_0DADF4: STA.b $0B\n\n #_0DADF6: LDA.b $00\n #_0DADF8: CLC\n #_0DADF9: ADC.w .offset_y,Y\n #_0DADFC: STA.b $0A\n\n #_0DADFE: PHY\n\n #_0DADFF: LDA.w .index,Y\n #_0DAE02: CMP.b #$FF\n #_0DAE04: BEQ .skip\n\n #_0DAE06: REP #$20\n\n #_0DAE08: AND.w #$00FF\n #_0DAE0B: TAY\n\n #_0DAE0C: LDA.w .props,Y\n #_0DAE0F: AND.w #$CFFF\n #_0DAE12: ORA.b $64\n #_0DAE14: STA.w $0802,X\n\n #_0DAE17: LDA.b $0A\n #_0DAE19: STA.w $0800,X\n\n #_0DAE1C: PHX\n\n #_0DAE1D: TXA\n #_0DAE1E: LSR A\n #_0DAE1F: LSR A\n #_0DAE20: TAX\n\n #_0DAE21: SEP #$20\n\n #_0DAE23: STZ.w $0A20,X\n\n #_0DAE26: PLX\n #_0DAE27: INX\n #_0DAE28: INX\n #_0DAE29: INX\n #_0DAE2A: INX\n\n.skip\n #_0DAE2B: PLY\n #_0DAE2C: INY\n\n #_0DAE2D: INC.b $06\n\n #_0DAE2F: LDA.b $06\n #_0DAE31: CMP.b #$04\n #_0DAE33: BNE .next_object\n\n #_0DAE35: REP #$30\n\n #_0DAE37: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawUnderworldFallShadow", + "code": "LinkOAM_DrawUnderworldFallShadow:\n #_0DAE3B: LDY.b #$00\n\n #_0DAE3D: LDA.b $51\n #_0DAE3F: SEC\n #_0DAE40: SBC.b #$0C\n\n #_0DAE42: SEC\n #_0DAE43: SBC.b $20\n\n #_0DAE45: CMP.b #$F0\n #_0DAE47: BCS .shadow_size_chosen\n\n #_0DAE49: CMP.b #$30\n #_0DAE4B: BCC .not_medium_shadow\n\n #_0DAE4D: LDY.b #$04\n\n.not_medium_shadow\n #_0DAE4F: CMP.b #$60\n #_0DAE51: BCC .shadow_size_chosen\n\n #_0DAE53: LDY.b #$08\n\n; ---------------------------------------------------------\n\n.shadow_size_chosen\n #_0DAE55: TYA\n #_0DAE56: LSR A\n #_0DAE57: LSR A\n #_0DAE58: TAX\n\n #_0DAE59: LDA.w .offset_x,X\n #_0DAE5C: STA.b $06\n\n #_0DAE5E: LDA.b $51\n #_0DAE60: SEC\n #_0DAE61: SBC.b #$0C\n\n #_0DAE63: SEC\n #_0DAE64: SBC.b $E8\n\n #_0DAE66: CLC\n #_0DAE67: ADC.b #$1D\n #_0DAE69: STA.b $07\n\n; ---------------------------------------------------------\n\n #_0DAE6B: LDA.b $00\n #_0DAE6D: CLC\n #_0DAE6E: ADC.b $06\n #_0DAE70: STA.b $06\n\n #_0DAE72: STZ.b $04\n\n #_0DAE74: REP #$30\n\n #_0DAE76: PHY\n\n #_0DAE77: LDX.b $72\n\n #_0DAE79: LDA.w LinkOAM_ShadowBufferOffsetPointers,X\n #_0DAE7C: STA.b $74\n\n #_0DAE7E: LDA.b $03\n #_0DAE80: AND.w #$00FF\n #_0DAE83: TAY\n\n #_0DAE84: LDA.b ($74),Y\n #_0DAE86: AND.w #$00FF\n #_0DAE89: CLC\n #_0DAE8A: ADC.w $0352\n\n #_0DAE8D: TAX\n\n #_0DAE8E: PLY\n\n; ---------------------------------------------------------\n\n.next_object\n #_0DAE8F: REP #$20\n\n #_0DAE91: LDA.w LinkOAM_ShadowTiles+0,Y\n #_0DAE94: CMP.w #$FFFF\n #_0DAE97: BEQ .no_tile\n\n #_0DAE99: AND.w #$CFFF\n #_0DAE9C: ORA.w $035D\n #_0DAE9F: STA.w $0802,X\n\n #_0DAEA2: LDA.b $06\n #_0DAEA4: STA.w $0800,X\n\n.no_tile\n #_0DAEA7: PHX\n\n #_0DAEA8: TXA\n #_0DAEA9: LSR A\n #_0DAEAA: LSR A\n #_0DAEAB: TAX\n\n #_0DAEAC: SEP #$20\n\n #_0DAEAE: STZ.w $0A20,X\n\n #_0DAEB1: PLX\n\n #_0DAEB2: LDA.b $06\n #_0DAEB4: CLC\n #_0DAEB5: ADC.b #$08\n #_0DAEB7: STA.b $06\n\n #_0DAEB9: INY\n #_0DAEBA: INY\n\n #_0DAEBB: INX\n #_0DAEBC: INX\n #_0DAEBD: INX\n #_0DAEBE: INX\n\n #_0DAEBF: INC.b $04\n\n #_0DAEC1: LDA.b $04\n #_0DAEC3: CMP.b #$02\n #_0DAEC5: BNE .next_object\n\n; ---------------------------------------------------------\n\n #_0DAEC7: SEP #$10\n\n #_0DAEC9: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_DrawFootObject", + "code": "LinkOAM_DrawFootObject:\n #_0DAED1: LDA.w $0356\n #_0DAED4: INC A\n #_0DAED5: AND.b #$0F\n #_0DAED7: STA.w $0356\n\n #_0DAEDA: CMP.b #$09\n #_0DAEDC: BCC .dont_reset_foot_object\n\n #_0DAEDE: STZ.w $0356\n\n #_0DAEE1: LDA.w $0355\n #_0DAEE4: INC A\n #_0DAEE5: AND.b #$03\n #_0DAEE7: STA.w $0355\n\n #_0DAEEA: CMP.b #$03\n #_0DAEEC: BNE .dont_reset_foot_object\n\n #_0DAEEE: STZ.w $0355\n\n.dont_reset_foot_object\n #_0DAEF1: LDA.l $7EF35A\n #_0DAEF5: TAY\n\n #_0DAEF6: LDA.w $0323\n #_0DAEF9: LSR A\n #_0DAEFA: CLC\n #_0DAEFB: ADC.w .shield_direction,Y\n #_0DAEFE: TAY\n\n #_0DAEFF: LDA.b $01\n #_0DAF01: CLC\n #_0DAF02: ADC.w LinkOAM_ShadowOffset_Y,Y\n #_0DAF05: STA.b $07\n\n #_0DAF07: LDA.b $00\n #_0DAF09: CLC\n #_0DAF0A: ADC.w LinkOAM_ShadowOffset_X,Y\n #_0DAF0D: STA.b $06\n\n #_0DAF0F: LDA.w $0355\n #_0DAF12: ASL A\n #_0DAF13: ASL A\n #_0DAF14: STA.b $8D\n\n; ---------------------------------------------------------\n\n #_0DAF16: PHY\n\n #_0DAF17: LDX.b $72\n\n #_0DAF19: LDA.w LinkOAM_ShadowBufferOffsetPointers+0,X\n #_0DAF1C: STA.b $74\n\n #_0DAF1E: LDA.w LinkOAM_ShadowBufferOffsetPointers+1,X\n #_0DAF21: STA.b $75\n\n #_0DAF23: LDY.b $04\n\n #_0DAF25: LDA.b ($74),Y\n #_0DAF27: TAX\n\n #_0DAF28: PLY\n\n #_0DAF29: LDA.w $0351\n #_0DAF2C: CMP.b #$02\n #_0DAF2E: BNE .not_tall_grass\n\n; ---------------------------------------------------------\n\n #_0DAF30: LDY.b #$06\n\n.check_next\n #_0DAF32: LDA.w .aux_check,Y\n #_0DAF35: CMP.w $0354\n #_0DAF38: BNE .wrong\n\n #_0DAF3A: STZ.b $8D\n\n #_0DAF3C: BRA .check_step\n\n.wrong\n #_0DAF3E: DEY\n #_0DAF3F: BPL .check_next\n\n; ---------------------------------------------------------\n\n.check_step\n #_0DAF41: LDA.b $2E\n #_0DAF43: CMP.b #$03\n #_0DAF45: BCC .dont_reset_step\n\n #_0DAF47: SEC\n #_0DAF48: SBC.b #$03\n\n.dont_reset_step\n #_0DAF4A: ASL A\n #_0DAF4B: ASL A\n #_0DAF4C: STA.b $8D\n\n #_0DAF4E: LDA.b #$08\n #_0DAF50: ASL A\n #_0DAF51: ASL A\n #_0DAF52: CLC\n #_0DAF53: ADC.b $8D\n #_0DAF55: TAY\n\n #_0DAF56: BRA .continue\n\n; ---------------------------------------------------------\n\n.not_tall_grass\n #_0DAF58: LDA.b #$05\n #_0DAF5A: ASL A\n #_0DAF5B: ASL A\n #_0DAF5C: CLC\n #_0DAF5D: ADC.b $8D\n #_0DAF5F: TAY\n\n.continue\n #_0DAF60: REP #$30\n\n #_0DAF62: TYA\n #_0DAF63: AND.w #$00FF\n #_0DAF66: TAY\n\n #_0DAF67: TXA\n #_0DAF68: AND.w #$00FF\n #_0DAF6B: CLC\n #_0DAF6C: ADC.w $0352\n #_0DAF6F: TAX\n\n #_0DAF70: LDA.w LinkOAM_ShadowTiles+0,Y\n #_0DAF73: AND.w #$CFFF\n #_0DAF76: ORA.w $035D\n #_0DAF79: STA.w $0802,X\n\n #_0DAF7C: LDA.w LinkOAM_ShadowTiles+2,Y\n #_0DAF7F: ORA.w $035D\n #_0DAF82: STA.w $0806,X\n\n #_0DAF85: LDA.b $06\n #_0DAF87: STA.w $0800,X\n\n #_0DAF8A: XBA\n #_0DAF8B: CLC\n #_0DAF8C: ADC.w #$0800\n #_0DAF8F: XBA\n #_0DAF90: STA.w $0804,X\n\n #_0DAF93: TXA\n #_0DAF94: LSR A\n #_0DAF95: LSR A\n #_0DAF96: TAX\n\n #_0DAF97: STZ.w $0A20,X\n\n #_0DAF9A: SEP #$30\n\n #_0DAF9C: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UNREACHABLE_0DAFA6", + "code": "UNREACHABLE_0DAFA6:\n #_0DAFA6: SEP #$30\n\n #_0DAFA8: LDX.b $2E\n\n #_0DAFAA: LDA.w $0354\n #_0DAFAD: CMP.b #$19\n #_0DAFAF: BNE .no_thanks\n\n #_0DAFB1: LDA.w LinkOAM_StairsSomething,X\n #_0DAFB4: TAX\n\n.no_thanks\n #_0DAFB5: LDA.w .base,X\n #_0DAFB8: CLC\n #_0DAFB9: ADC.b $01\n #_0DAFBB: STA.b $01\n\n #_0DAFBD: REP #$30\n\n #_0DAFBF: RTS", + "file": "bank_0D.asm" + }, + { + "name": "LinkOAM_CalculateXOffsetRelativeLink", + "code": "LinkOAM_CalculateXOffsetRelativeLink:\n #_0DAFC0: REP #$20\n\n #_0DAFC2: AND.w #$00FF\n #_0DAFC5: CMP.w #$0080\n #_0DAFC8: BCC .positive\n\n #_0DAFCA: ORA.w #$FF00\n\n.positive\n #_0DAFCD: CLC\n #_0DAFCE: ADC.b $22\n\n #_0DAFD0: SEC\n #_0DAFD1: SBC.b $E2\n\n #_0DAFD3: XBA\n\n #_0DAFD4: AND.w #$0001\n #_0DAFD7: STA.w $03FA\n\n #_0DAFDA: SEP #$20\n\n #_0DAFDC: RTS", + "file": "bank_0D.asm" + }, + { + "name": "NULL_0DAFDD", + "code": "NULL_0DAFDD:\n #_0DAFDD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DAFE5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DAFED: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DAFF5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DAFFD: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB005: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB00D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB015: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB01D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB025: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB02D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB035: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB03D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB045: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB04D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB055: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB05D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB065: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB06D: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB075: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DB07D: db $FF, $FF, $FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_OAMHarm", + "code": "SpriteData_OAMHarm:\n #_0DB080: db $01 ; ... $01 | 0x00 - RAVEN\n #_0DB081: db $02 ; ... $02 | 0x01 - VULTURE\n #_0DB082: db $01 ; ... $01 | 0x02 - STALFOS HEAD\n #_0DB083: db $82 ; h.. $02 | 0x03 - NULL\n #_0DB084: db $81 ; h.. $01 | 0x04 - CORRECT PULL SWITCH\n #_0DB085: db $84 ; h.. $04 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB086: db $84 ; h.. $04 | 0x06 - WRONG PULL SWITCH\n #_0DB087: db $84 ; h.. $04 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB088: db $02 ; ... $02 | 0x08 - OCTOROK\n #_0DB089: db $0F ; ... $0F | 0x09 - MOLDORM\n #_0DB08A: db $02 ; ... $02 | 0x0A - OCTOROK 4WAY\n #_0DB08B: db $01 ; ... $01 | 0x0B - CUCCO\n #_0DB08C: db $20 ; ..w $00 | 0x0C - OCTOROK STONE\n #_0DB08D: db $03 ; ... $03 | 0x0D - BUZZBLOB\n #_0DB08E: db $04 ; ... $04 | 0x0E - SNAPDRAGON\n #_0DB08F: db $84 ; h.. $04 | 0x0F - OCTOBALLOON\n #_0DB090: db $01 ; ... $01 | 0x10 - OCTOBALLOON BABY\n #_0DB091: db $05 ; ... $05 | 0x11 - HINOX\n #_0DB092: db $04 ; ... $04 | 0x12 - MOBLIN\n #_0DB093: db $01 ; ... $01 | 0x13 - MINI HELMASAUR\n #_0DB094: db $80 ; h.. $00 | 0x14 - THIEVES TOWN GRATE\n #_0DB095: db $04 ; ... $04 | 0x15 - ANTIFAIRY\n #_0DB096: db $A2 ; h.w $02 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB097: db $83 ; h.. $03 | 0x17 - HOARDER\n #_0DB098: db $04 ; ... $04 | 0x18 - MINI MOLDORM\n #_0DB099: db $02 ; ... $02 | 0x19 - POE\n #_0DB09A: db $82 ; h.. $02 | 0x1A - SMITHY\n #_0DB09B: db $62 ; .mw $02 | 0x1B - ARROW\n #_0DB09C: db $82 ; h.. $02 | 0x1C - STATUE\n #_0DB09D: db $80 ; h.. $00 | 0x1D - FLUTEQUEST\n #_0DB09E: db $80 ; h.. $00 | 0x1E - CRYSTAL SWITCH\n #_0DB09F: db $85 ; h.. $05 | 0x1F - SICK KID\n #_0DB0A0: db $01 ; ... $01 | 0x20 - SLUGGULA\n #_0DB0A1: db $A5 ; h.w $05 | 0x21 - WATER SWITCH\n #_0DB0A2: db $03 ; ... $03 | 0x22 - ROPA\n #_0DB0A3: db $04 ; ... $04 | 0x23 - RED BARI\n #_0DB0A4: db $04 ; ... $04 | 0x24 - BLUE BARI\n #_0DB0A5: db $83 ; h.. $03 | 0x25 - TALKING TREE\n #_0DB0A6: db $02 ; ... $02 | 0x26 - HARDHAT BEETLE\n #_0DB0A7: db $01 ; ... $01 | 0x27 - DEADROCK\n #_0DB0A8: db $82 ; h.. $02 | 0x28 - DARK WORLD HINT NPC\n #_0DB0A9: db $A2 ; h.w $02 | 0x29 - ADULT\n #_0DB0AA: db $A2 ; h.w $02 | 0x2A - SWEEPING LADY\n #_0DB0AB: db $A3 ; h.w $03 | 0x2B - HOBO\n #_0DB0AC: db $AA ; h.w $0A | 0x2C - LUMBERJACKS\n #_0DB0AD: db $A3 ; h.w $03 | 0x2D - NECKLESS MAN\n #_0DB0AE: db $A4 ; h.w $04 | 0x2E - FLUTE KID\n #_0DB0AF: db $82 ; h.. $02 | 0x2F - RACE GAME LADY\n #_0DB0B0: db $82 ; h.. $02 | 0x30 - RACE GAME GUY\n #_0DB0B1: db $83 ; h.. $03 | 0x31 - FORTUNE TELLER\n #_0DB0B2: db $82 ; h.. $02 | 0x32 - ARGUE BROS\n #_0DB0B3: db $80 ; h.. $00 | 0x33 - RUPEE PULL\n #_0DB0B4: db $82 ; h.. $02 | 0x34 - YOUNG SNITCH\n #_0DB0B5: db $82 ; h.. $02 | 0x35 - INNKEEPER\n #_0DB0B6: db $A5 ; h.w $05 | 0x36 - WITCH\n #_0DB0B7: db $80 ; h.. $00 | 0x37 - WATERFALL\n #_0DB0B8: db $A4 ; h.w $04 | 0x38 - EYE STATUE\n #_0DB0B9: db $82 ; h.. $02 | 0x39 - LOCKSMITH\n #_0DB0BA: db $81 ; h.. $01 | 0x3A - MAGIC BAT\n #_0DB0BB: db $82 ; h.. $02 | 0x3B - BONK ITEM\n #_0DB0BC: db $82 ; h.. $02 | 0x3C - KID IN KAK\n #_0DB0BD: db $82 ; h.. $02 | 0x3D - OLD SNITCH\n #_0DB0BE: db $81 ; h.. $01 | 0x3E - HOARDER\n #_0DB0BF: db $06 ; ... $06 | 0x3F - TUTORIAL GUARD\n #_0DB0C0: db $08 ; ... $08 | 0x40 - LIGHTNING GATE\n #_0DB0C1: db $08 ; ... $08 | 0x41 - BLUE GUARD\n #_0DB0C2: db $08 ; ... $08 | 0x42 - GREEN GUARD\n #_0DB0C3: db $08 ; ... $08 | 0x43 - RED SPEAR GUARD\n #_0DB0C4: db $06 ; ... $06 | 0x44 - BLUESAIN BOLT\n #_0DB0C5: db $08 ; ... $08 | 0x45 - USAIN BOLT\n #_0DB0C6: db $08 ; ... $08 | 0x46 - BLUE ARCHER\n #_0DB0C7: db $08 ; ... $08 | 0x47 - GREEN BUSH GUARD\n #_0DB0C8: db $06 ; ... $06 | 0x48 - RED JAVELIN GUARD\n #_0DB0C9: db $07 ; ... $07 | 0x49 - RED BUSH GUARD\n #_0DB0CA: db $07 ; ... $07 | 0x4A - BOMB GUARD\n #_0DB0CB: db $02 ; ... $02 | 0x4B - GREEN KNIFE GUARD\n #_0DB0CC: db $02 ; ... $02 | 0x4C - GELDMAN\n #_0DB0CD: db $22 ; ..w $02 | 0x4D - TOPPO\n #_0DB0CE: db $01 ; ... $01 | 0x4E - POPO\n #_0DB0CF: db $01 ; ... $01 | 0x4F - POPO\n #_0DB0D0: db $20 ; ..w $00 | 0x50 - CANNONBALL\n #_0DB0D1: db $82 ; h.. $02 | 0x51 - ARMOS STATUE\n #_0DB0D2: db $07 ; ... $07 | 0x52 - KING ZORA\n #_0DB0D3: db $85 ; h.. $05 | 0x53 - ARMOS KNIGHT\n #_0DB0D4: db $0F ; ... $0F | 0x54 - LANMOLAS\n #_0DB0D5: db $21 ; ..w $01 | 0x55 - ZORA / FIREBALL\n #_0DB0D6: db $05 ; ... $05 | 0x56 - ZORA\n #_0DB0D7: db $83 ; h.. $03 | 0x57 - DESERT STATUE\n #_0DB0D8: db $02 ; ... $02 | 0x58 - CRAB\n #_0DB0D9: db $01 ; ... $01 | 0x59 - LOST WOODS BIRD\n #_0DB0DA: db $01 ; ... $01 | 0x5A - LOST WOODS SQUIRREL\n #_0DB0DB: db $01 ; ... $01 | 0x5B - SPARK\n #_0DB0DC: db $01 ; ... $01 | 0x5C - SPARK\n #_0DB0DD: db $07 ; ... $07 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB0DE: db $07 ; ... $07 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB0DF: db $07 ; ... $07 | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB0E0: db $07 ; ... $07 | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB0E1: db $00 ; ... $00 | 0x61 - BEAMOS\n #_0DB0E2: db $85 ; h.. $05 | 0x62 - MASTERSWORD\n #_0DB0E3: db $83 ; h.. $03 | 0x63 - DEBIRANDO PIT\n #_0DB0E4: db $03 ; ... $03 | 0x64 - DEBIRANDO\n #_0DB0E5: db $A4 ; h.w $04 | 0x65 - ARCHERY GUY\n #_0DB0E6: db $00 ; ... $00 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB0E7: db $00 ; ... $00 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB0E8: db $00 ; ... $00 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB0E9: db $00 ; ... $00 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB0EA: db $09 ; ... $09 | 0x6A - BALL N CHAIN\n #_0DB0EB: db $04 ; ... $04 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB0EC: db $A0 ; h.w $00 | 0x6C - MIRROR PORTAL\n #_0DB0ED: db $00 ; ... $00 | 0x6D - RAT / CRICKET\n #_0DB0EE: db $01 ; ... $01 | 0x6E - SNAKE\n #_0DB0EF: db $00 ; ... $00 | 0x6F - KEESE\n #_0DB0F0: db $00 ; ... $00 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB0F1: db $03 ; ... $03 | 0x71 - LEEVER\n #_0DB0F2: db $8B ; h.. $0B | 0x72 - FAIRY POND TRIGGER\n #_0DB0F3: db $86 ; h.. $06 | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB0F4: db $C2 ; hm. $02 | 0x74 - RUNNING MAN\n #_0DB0F5: db $82 ; h.. $02 | 0x75 - BOTTLE MERCHANT\n #_0DB0F6: db $81 ; h.. $01 | 0x76 - ZELDA\n #_0DB0F7: db $04 ; ... $04 | 0x77 - ANTIFAIRY\n #_0DB0F8: db $82 ; h.. $02 | 0x78 - SAHASRAHLAS WIFE\n #_0DB0F9: db $21 ; ..w $01 | 0x79 - BEE\n #_0DB0FA: db $06 ; ... $06 | 0x7A - AGAHNIM\n #_0DB0FB: db $03 ; ... $03 | 0x7B - AGAHNIMS BALLS\n #_0DB0FC: db $01 ; ... $01 | 0x7C - GREEN STALFOS\n #_0DB0FD: db $03 ; ... $03 | 0x7D - BIG SPIKE\n #_0DB0FE: db $03 ; ... $03 | 0x7E - FIREBAR CLOCKWISE\n #_0DB0FF: db $03 ; ... $03 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB100: db $00 ; ... $00 | 0x80 - FIRESNAKE\n #_0DB101: db $00 ; ... $00 | 0x81 - HOVER\n #_0DB102: db $04 ; ... $04 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB103: db $05 ; ... $05 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB104: db $05 ; ... $05 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB105: db $03 ; ... $03 | 0x85 - YELLOW STALFOS\n #_0DB106: db $01 ; ... $01 | 0x86 - KODONGO\n #_0DB107: db $02 ; ... $02 | 0x87 - KONDONGO FIRE\n #_0DB108: db $00 ; ... $00 | 0x88 - MOTHULA\n #_0DB109: db $00 ; ... $00 | 0x89 - MOTHULA BEAM\n #_0DB10A: db $00 ; ... $00 | 0x8A - SPIKE BLOCK\n #_0DB10B: db $02 ; ... $02 | 0x8B - GIBDO\n #_0DB10C: db $07 ; ... $07 | 0x8C - ARRGHUS\n #_0DB10D: db $00 ; ... $00 | 0x8D - ARRGHI\n #_0DB10E: db $01 ; ... $01 | 0x8E - TERRORPIN\n #_0DB10F: db $01 ; ... $01 | 0x8F - BLOB\n #_0DB110: db $87 ; h.. $07 | 0x90 - WALLMASTER\n #_0DB111: db $06 ; ... $06 | 0x91 - STALFOS KNIGHT\n #_0DB112: db $00 ; ... $00 | 0x92 - KING HELMASAUR\n #_0DB113: db $83 ; h.. $03 | 0x93 - BUMPER\n #_0DB114: db $02 ; ... $02 | 0x94 - PIROGUSU\n #_0DB115: db $22 ; ..w $02 | 0x95 - LASER EYE LEFT\n #_0DB116: db $22 ; ..w $02 | 0x96 - LASER EYE RIGHT\n #_0DB117: db $22 ; ..w $02 | 0x97 - LASER EYE TOP\n #_0DB118: db $22 ; ..w $02 | 0x98 - LASER EYE BOTTOM\n #_0DB119: db $04 ; ... $04 | 0x99 - PENGATOR\n #_0DB11A: db $03 ; ... $03 | 0x9A - KYAMERON\n #_0DB11B: db $05 ; ... $05 | 0x9B - WIZZROBE\n #_0DB11C: db $01 ; ... $01 | 0x9C - ZORO\n #_0DB11D: db $01 ; ... $01 | 0x9D - BABASU\n #_0DB11E: db $04 ; ... $04 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB11F: db $01 ; ... $01 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB120: db $02 ; ... $02 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB121: db $08 ; ... $08 | 0xA1 - FREEZOR\n #_0DB122: db $08 ; ... $08 | 0xA2 - KHOLDSTARE\n #_0DB123: db $80 ; h.. $00 | 0xA3 - KHOLDSTARE SHELL\n #_0DB124: db $21 ; ..w $01 | 0xA4 - FALLING ICE\n #_0DB125: db $03 ; ... $03 | 0xA5 - BLUE ZAZAK\n #_0DB126: db $03 ; ... $03 | 0xA6 - RED ZAZAK\n #_0DB127: db $03 ; ... $03 | 0xA7 - STALFOS\n #_0DB128: db $02 ; ... $02 | 0xA8 - GREEN ZIRRO\n #_0DB129: db $02 ; ... $02 | 0xA9 - BLUE ZIRRO\n #_0DB12A: db $08 ; ... $08 | 0xAA - PIKIT\n #_0DB12B: db $8F ; h.. $0F | 0xAB - CRYSTAL MAIDEN\n #_0DB12C: db $A1 ; h.w $01 | 0xAC - APPLE\n #_0DB12D: db $81 ; h.. $01 | 0xAD - OLD MAN\n #_0DB12E: db $80 ; h.. $00 | 0xAE - PIPE DOWN\n #_0DB12F: db $80 ; h.. $00 | 0xAF - PIPE UP\n #_0DB130: db $80 ; h.. $00 | 0xB0 - PIPE RIGHT\n #_0DB131: db $80 ; h.. $00 | 0xB1 - PIPE LEFT\n #_0DB132: db $A1 ; h.w $01 | 0xB2 - GOOD BEE\n #_0DB133: db $80 ; h.. $00 | 0xB3 - PEDESTAL PLAQUE\n #_0DB134: db $81 ; h.. $01 | 0xB4 - PURPLE CHEST\n #_0DB135: db $81 ; h.. $01 | 0xB5 - BOMB SHOP GUY\n #_0DB136: db $86 ; h.. $06 | 0xB6 - KIKI\n #_0DB137: db $81 ; h.. $01 | 0xB7 - BLIND MAIDEN\n #_0DB138: db $82 ; h.. $02 | 0xB8 - DIALOGUE TESTER\n #_0DB139: db $82 ; h.. $02 | 0xB9 - BULLY / PINK BALL\n #_0DB13A: db $80 ; h.. $00 | 0xBA - WHIRLPOOL\n #_0DB13B: db $80 ; h.. $00 | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB13C: db $83 ; h.. $03 | 0xBC - DRUNKARD\n #_0DB13D: db $06 ; ... $06 | 0xBD - VITREOUS\n #_0DB13E: db $00 ; ... $00 | 0xBE - VITREOUS SMALL EYE\n #_0DB13F: db $00 ; ... $00 | 0xBF - LIGHTNING\n #_0DB140: db $05 ; ... $05 | 0xC0 - CATFISH\n #_0DB141: db $04 ; ... $04 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB142: db $06 ; ... $06 | 0xC2 - BOULDER\n #_0DB143: db $05 ; ... $05 | 0xC3 - GIBO\n #_0DB144: db $02 ; ... $02 | 0xC4 - THIEF\n #_0DB145: db $00 ; ... $00 | 0xC5 - MEDUSA\n #_0DB146: db $00 ; ... $00 | 0xC6 - 4WAY SHOOTER\n #_0DB147: db $05 ; ... $05 | 0xC7 - POKEY\n #_0DB148: db $04 ; ... $04 | 0xC8 - BIG FAIRY\n #_0DB149: db $04 ; ... $04 | 0xC9 - TEKTITE / FIREBAT\n #_0DB14A: db $07 ; ... $07 | 0xCA - CHAIN CHOMP\n #_0DB14B: db $0B ; ... $0B | 0xCB - TRINEXX ROCK HEAD\n #_0DB14C: db $0C ; ... $0C | 0xCC - TRINEXX FIRE HEAD\n #_0DB14D: db $0C ; ... $0C | 0xCD - TRINEXX ICE HEAD\n #_0DB14E: db $06 ; ... $06 | 0xCE - BLIND\n #_0DB14F: db $06 ; ... $06 | 0xCF - SWAMOLA\n #_0DB150: db $03 ; ... $03 | 0xD0 - LYNEL\n #_0DB151: db $A4 ; h.w $04 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB152: db $04 ; ... $04 | 0xD2 - FLOPPING FISH\n #_0DB153: db $82 ; h.. $02 | 0xD3 - STAL\n #_0DB154: db $81 ; h.. $01 | 0xD4 - LANDMINE\n #_0DB155: db $83 ; h.. $03 | 0xD5 - DIG GAME GUY\n #_0DB156: db $10 ; ... $10 | 0xD6 - GANON\n #_0DB157: db $10 ; ... $10 | 0xD7 - GANON\n #_0DB158: db $81 ; h.. $01 | 0xD8 - HEART\n #_0DB159: db $82 ; h.. $02 | 0xD9 - GREEN RUPEE\n #_0DB15A: db $82 ; h.. $02 | 0xDA - BLUE RUPEE\n #_0DB15B: db $82 ; h.. $02 | 0xDB - RED RUPEE\n #_0DB15C: db $83 ; h.. $03 | 0xDC - BOMB REFILL 1\n #_0DB15D: db $83 ; h.. $03 | 0xDD - BOMB REFILL 4\n #_0DB15E: db $83 ; h.. $03 | 0xDE - BOMB REFILL 8\n #_0DB15F: db $81 ; h.. $01 | 0xDF - SMALL MAGIC DECANTER\n #_0DB160: db $82 ; h.. $02 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB161: db $83 ; h.. $03 | 0xE1 - ARROW REFILL 5\n #_0DB162: db $83 ; h.. $03 | 0xE2 - ARROW REFILL 10\n #_0DB163: db $81 ; h.. $01 | 0xE3 - FAIRY\n #_0DB164: db $82 ; h.. $02 | 0xE4 - SMALL KEY\n #_0DB165: db $81 ; h.. $01 | 0xE5 - BIG KEY\n #_0DB166: db $82 ; h.. $02 | 0xE6 - STOLEN SHIELD\n #_0DB167: db $A0 ; h.w $00 | 0xE7 - MUSHROOM\n #_0DB168: db $A1 ; h.w $01 | 0xE8 - FAKE MASTER SWORD\n #_0DB169: db $A3 ; h.w $03 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB16A: db $A1 ; h.w $01 | 0xEA - HEART CONTAINER\n #_0DB16B: db $A1 ; h.w $01 | 0xEB - HEART PIECE\n #_0DB16C: db $A1 ; h.w $01 | 0xEC - THROWN ITEM\n #_0DB16D: db $83 ; h.. $03 | 0xED - SOMARIA PLATFORM\n #_0DB16E: db $85 ; h.. $05 | 0xEE - CASTLE MANTLE\n #_0DB16F: db $83 ; h.. $03 | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB170: db $83 ; h.. $03 | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB171: db $83 ; h.. $03 | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB172: db $83 ; h.. $03 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_Health", + "code": "SpriteData_Health:\n #_0DB173: db 12 ; 0x00 - RAVEN\n #_0DB174: db 6 ; 0x01 - VULTURE\n #_0DB175: db 255 ; 0x02 - STALFOS HEAD\n #_0DB176: db 3 ; 0x03 - NULL\n #_0DB177: db 3 ; 0x04 - CORRECT PULL SWITCH\n #_0DB178: db 3 ; 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB179: db 3 ; 0x06 - WRONG PULL SWITCH\n #_0DB17A: db 3 ; 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB17B: db 2 ; 0x08 - OCTOROK\n #_0DB17C: db 12 ; 0x09 - MOLDORM\n #_0DB17D: db 4 ; 0x0A - OCTOROK 4WAY\n #_0DB17E: db 255 ; 0x0B - CUCCO\n #_0DB17F: db 0 ; 0x0C - OCTOROK STONE\n #_0DB180: db 3 ; 0x0D - BUZZBLOB\n #_0DB181: db 12 ; 0x0E - SNAPDRAGON\n #_0DB182: db 2 ; 0x0F - OCTOBALLOON\n #_0DB183: db 0 ; 0x10 - OCTOBALLOON BABY\n #_0DB184: db 20 ; 0x11 - HINOX\n #_0DB185: db 4 ; 0x12 - MOBLIN\n #_0DB186: db 4 ; 0x13 - MINI HELMASAUR\n #_0DB187: db 0 ; 0x14 - THIEVES TOWN GRATE\n #_0DB188: db 255 ; 0x15 - ANTIFAIRY\n #_0DB189: db 0 ; 0x16 - SAHASRAHLA / AGINAH\n #_0DB18A: db 2 ; 0x17 - HOARDER\n #_0DB18B: db 3 ; 0x18 - MINI MOLDORM\n #_0DB18C: db 8 ; 0x19 - POE\n #_0DB18D: db 0 ; 0x1A - SMITHY\n #_0DB18E: db 0 ; 0x1B - ARROW\n #_0DB18F: db 0 ; 0x1C - STATUE\n #_0DB190: db 0 ; 0x1D - FLUTEQUEST\n #_0DB191: db 0 ; 0x1E - CRYSTAL SWITCH\n #_0DB192: db 0 ; 0x1F - SICK KID\n #_0DB193: db 8 ; 0x20 - SLUGGULA\n #_0DB194: db 3 ; 0x21 - WATER SWITCH\n #_0DB195: db 8 ; 0x22 - ROPA\n #_0DB196: db 2 ; 0x23 - RED BARI\n #_0DB197: db 2 ; 0x24 - BLUE BARI\n #_0DB198: db 0 ; 0x25 - TALKING TREE\n #_0DB199: db 3 ; 0x26 - HARDHAT BEETLE\n #_0DB19A: db 255 ; 0x27 - DEADROCK\n #_0DB19B: db 0 ; 0x28 - DARK WORLD HINT NPC\n #_0DB19C: db 3 ; 0x29 - ADULT\n #_0DB19D: db 3 ; 0x2A - SWEEPING LADY\n #_0DB19E: db 3 ; 0x2B - HOBO\n #_0DB19F: db 3 ; 0x2C - LUMBERJACKS\n #_0DB1A0: db 3 ; 0x2D - NECKLESS MAN\n #_0DB1A1: db 3 ; 0x2E - FLUTE KID\n #_0DB1A2: db 3 ; 0x2F - RACE GAME LADY\n #_0DB1A3: db 3 ; 0x30 - RACE GAME GUY\n #_0DB1A4: db 0 ; 0x31 - FORTUNE TELLER\n #_0DB1A5: db 3 ; 0x32 - ARGUE BROS\n #_0DB1A6: db 0 ; 0x33 - RUPEE PULL\n #_0DB1A7: db 3 ; 0x34 - YOUNG SNITCH\n #_0DB1A8: db 3 ; 0x35 - INNKEEPER\n #_0DB1A9: db 3 ; 0x36 - WITCH\n #_0DB1AA: db 0 ; 0x37 - WATERFALL\n #_0DB1AB: db 3 ; 0x38 - EYE STATUE\n #_0DB1AC: db 0 ; 0x39 - LOCKSMITH\n #_0DB1AD: db 0 ; 0x3A - MAGIC BAT\n #_0DB1AE: db 0 ; 0x3B - BONK ITEM\n #_0DB1AF: db 0 ; 0x3C - KID IN KAK\n #_0DB1B0: db 3 ; 0x3D - OLD SNITCH\n #_0DB1B1: db 2 ; 0x3E - HOARDER\n #_0DB1B2: db 255 ; 0x3F - TUTORIAL GUARD\n #_0DB1B3: db 2 ; 0x40 - LIGHTNING GATE\n #_0DB1B4: db 6 ; 0x41 - BLUE GUARD\n #_0DB1B5: db 4 ; 0x42 - GREEN GUARD\n #_0DB1B6: db 8 ; 0x43 - RED SPEAR GUARD\n #_0DB1B7: db 6 ; 0x44 - BLUESAIN BOLT\n #_0DB1B8: db 8 ; 0x45 - USAIN BOLT\n #_0DB1B9: db 6 ; 0x46 - BLUE ARCHER\n #_0DB1BA: db 4 ; 0x47 - GREEN BUSH GUARD\n #_0DB1BB: db 8 ; 0x48 - RED JAVELIN GUARD\n #_0DB1BC: db 8 ; 0x49 - RED BUSH GUARD\n #_0DB1BD: db 8 ; 0x4A - BOMB GUARD\n #_0DB1BE: db 4 ; 0x4B - GREEN KNIFE GUARD\n #_0DB1BF: db 4 ; 0x4C - GELDMAN\n #_0DB1C0: db 2 ; 0x4D - TOPPO\n #_0DB1C1: db 2 ; 0x4E - POPO\n #_0DB1C2: db 2 ; 0x4F - POPO\n #_0DB1C3: db 255 ; 0x50 - CANNONBALL\n #_0DB1C4: db 8 ; 0x51 - ARMOS STATUE\n #_0DB1C5: db 255 ; 0x52 - KING ZORA\n #_0DB1C6: db 48 ; 0x53 - ARMOS KNIGHT\n #_0DB1C7: db 16 ; 0x54 - LANMOLAS\n #_0DB1C8: db 8 ; 0x55 - ZORA / FIREBALL\n #_0DB1C9: db 8 ; 0x56 - ZORA\n #_0DB1CA: db 255 ; 0x57 - DESERT STATUE\n #_0DB1CB: db 2 ; 0x58 - CRAB\n #_0DB1CC: db 0 ; 0x59 - LOST WOODS BIRD\n #_0DB1CD: db 0 ; 0x5A - LOST WOODS SQUIRREL\n #_0DB1CE: db 255 ; 0x5B - SPARK\n #_0DB1CF: db 255 ; 0x5C - SPARK\n #_0DB1D0: db 255 ; 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB1D1: db 255 ; 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB1D2: db 255 ; 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB1D3: db 255 ; 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB1D4: db 255 ; 0x61 - BEAMOS\n #_0DB1D5: db 255 ; 0x62 - MASTERSWORD\n #_0DB1D6: db 255 ; 0x63 - DEBIRANDO PIT\n #_0DB1D7: db 4 ; 0x64 - DEBIRANDO\n #_0DB1D8: db 4 ; 0x65 - ARCHERY GUY\n #_0DB1D9: db 255 ; 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB1DA: db 255 ; 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB1DB: db 255 ; 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB1DC: db 255 ; 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB1DD: db 16 ; 0x6A - BALL N CHAIN\n #_0DB1DE: db 3 ; 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB1DF: db 0 ; 0x6C - MIRROR PORTAL\n #_0DB1E0: db 2 ; 0x6D - RAT / CRICKET\n #_0DB1E1: db 4 ; 0x6E - SNAKE\n #_0DB1E2: db 1 ; 0x6F - KEESE\n #_0DB1E3: db 255 ; 0x70 - KING HELMASAUR FIREBALL\n #_0DB1E4: db 4 ; 0x71 - LEEVER\n #_0DB1E5: db 255 ; 0x72 - FAIRY POND TRIGGER\n #_0DB1E6: db 0 ; 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB1E7: db 0 ; 0x74 - RUNNING MAN\n #_0DB1E8: db 0 ; 0x75 - BOTTLE MERCHANT\n #_0DB1E9: db 0 ; 0x76 - ZELDA\n #_0DB1EA: db 255 ; 0x77 - ANTIFAIRY\n #_0DB1EB: db 0 ; 0x78 - SAHASRAHLAS WIFE\n #_0DB1EC: db 0 ; 0x79 - BEE\n #_0DB1ED: db 96 ; 0x7A - AGAHNIM\n #_0DB1EE: db 255 ; 0x7B - AGAHNIMS BALLS\n #_0DB1EF: db 24 ; 0x7C - GREEN STALFOS\n #_0DB1F0: db 255 ; 0x7D - BIG SPIKE\n #_0DB1F1: db 255 ; 0x7E - FIREBAR CLOCKWISE\n #_0DB1F2: db 255 ; 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB1F3: db 3 ; 0x80 - FIRESNAKE\n #_0DB1F4: db 4 ; 0x81 - HOVER\n #_0DB1F5: db 255 ; 0x82 - ANTIFAIRY CIRCLE\n #_0DB1F6: db 16 ; 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB1F7: db 8 ; 0x84 - RED EYEGORE / RED MIMIC\n #_0DB1F8: db 8 ; 0x85 - YELLOW STALFOS\n #_0DB1F9: db 0 ; 0x86 - KODONGO\n #_0DB1FA: db 255 ; 0x87 - KONDONGO FIRE\n #_0DB1FB: db 32 ; 0x88 - MOTHULA\n #_0DB1FC: db 32 ; 0x89 - MOTHULA BEAM\n #_0DB1FD: db 32 ; 0x8A - SPIKE BLOCK\n #_0DB1FE: db 32 ; 0x8B - GIBDO\n #_0DB1FF: db 32 ; 0x8C - ARRGHUS\n #_0DB200: db 8 ; 0x8D - ARRGHI\n #_0DB201: db 8 ; 0x8E - TERRORPIN\n #_0DB202: db 4 ; 0x8F - BLOB\n #_0DB203: db 8 ; 0x90 - WALLMASTER\n #_0DB204: db 64 ; 0x91 - STALFOS KNIGHT\n #_0DB205: db 48 ; 0x92 - KING HELMASAUR\n #_0DB206: db 255 ; 0x93 - BUMPER\n #_0DB207: db 2 ; 0x94 - PIROGUSU\n #_0DB208: db 255 ; 0x95 - LASER EYE LEFT\n #_0DB209: db 255 ; 0x96 - LASER EYE RIGHT\n #_0DB20A: db 255 ; 0x97 - LASER EYE TOP\n #_0DB20B: db 255 ; 0x98 - LASER EYE BOTTOM\n #_0DB20C: db 16 ; 0x99 - PENGATOR\n #_0DB20D: db 4 ; 0x9A - KYAMERON\n #_0DB20E: db 2 ; 0x9B - WIZZROBE\n #_0DB20F: db 4 ; 0x9C - ZORO\n #_0DB210: db 4 ; 0x9D - BABASU\n #_0DB211: db 8 ; 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB212: db 8 ; 0x9F - HAUNTED GROVE RABBIT\n #_0DB213: db 8 ; 0xA0 - HAUNTED GROVE BIRD\n #_0DB214: db 16 ; 0xA1 - FREEZOR\n #_0DB215: db 64 ; 0xA2 - KHOLDSTARE\n #_0DB216: db 64 ; 0xA3 - KHOLDSTARE SHELL\n #_0DB217: db 8 ; 0xA4 - FALLING ICE\n #_0DB218: db 4 ; 0xA5 - BLUE ZAZAK\n #_0DB219: db 8 ; 0xA6 - RED ZAZAK\n #_0DB21A: db 4 ; 0xA7 - STALFOS\n #_0DB21B: db 4 ; 0xA8 - GREEN ZIRRO\n #_0DB21C: db 8 ; 0xA9 - BLUE ZIRRO\n #_0DB21D: db 12 ; 0xAA - PIKIT\n #_0DB21E: db 16 ; 0xAB - CRYSTAL MAIDEN\n #_0DB21F: db 0 ; 0xAC - APPLE\n #_0DB220: db 0 ; 0xAD - OLD MAN\n #_0DB221: db 0 ; 0xAE - PIPE DOWN\n #_0DB222: db 0 ; 0xAF - PIPE UP\n #_0DB223: db 0 ; 0xB0 - PIPE RIGHT\n #_0DB224: db 0 ; 0xB1 - PIPE LEFT\n #_0DB225: db 0 ; 0xB2 - GOOD BEE\n #_0DB226: db 0 ; 0xB3 - PEDESTAL PLAQUE\n #_0DB227: db 0 ; 0xB4 - PURPLE CHEST\n #_0DB228: db 0 ; 0xB5 - BOMB SHOP GUY\n #_0DB229: db 0 ; 0xB6 - KIKI\n #_0DB22A: db 0 ; 0xB7 - BLIND MAIDEN\n #_0DB22B: db 0 ; 0xB8 - DIALOGUE TESTER\n #_0DB22C: db 0 ; 0xB9 - BULLY / PINK BALL\n #_0DB22D: db 0 ; 0xBA - WHIRLPOOL\n #_0DB22E: db 0 ; 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB22F: db 0 ; 0xBC - DRUNKARD\n #_0DB230: db 128 ; 0xBD - VITREOUS\n #_0DB231: db 48 ; 0xBE - VITREOUS SMALL EYE\n #_0DB232: db 255 ; 0xBF - LIGHTNING\n #_0DB233: db 255 ; 0xC0 - CATFISH\n #_0DB234: db 255 ; 0xC1 - CUTSCENE AGAHNIM\n #_0DB235: db 255 ; 0xC2 - BOULDER\n #_0DB236: db 8 ; 0xC3 - GIBO\n #_0DB237: db 0 ; 0xC4 - THIEF\n #_0DB238: db 0 ; 0xC5 - MEDUSA\n #_0DB239: db 0 ; 0xC6 - 4WAY SHOOTER\n #_0DB23A: db 32 ; 0xC7 - POKEY\n #_0DB23B: db 0 ; 0xC8 - BIG FAIRY\n #_0DB23C: db 8 ; 0xC9 - TEKTITE / FIREBAT\n #_0DB23D: db 5 ; 0xCA - CHAIN CHOMP\n #_0DB23E: db 40 ; 0xCB - TRINEXX ROCK HEAD\n #_0DB23F: db 40 ; 0xCC - TRINEXX FIRE HEAD\n #_0DB240: db 40 ; 0xCD - TRINEXX ICE HEAD\n #_0DB241: db 90 ; 0xCE - BLIND\n #_0DB242: db 16 ; 0xCF - SWAMOLA\n #_0DB243: db 24 ; 0xD0 - LYNEL\n #_0DB244: db 64 ; 0xD1 - BUNNYBEAM / SMOKE\n #_0DB245: db 0 ; 0xD2 - FLOPPING FISH\n #_0DB246: db 4 ; 0xD3 - STAL\n #_0DB247: db 0 ; 0xD4 - LANDMINE\n #_0DB248: db 0 ; 0xD5 - DIG GAME GUY\n #_0DB249: db 255 ; 0xD6 - GANON\n #_0DB24A: db 255 ; 0xD7 - GANON\n #_0DB24B: db 0 ; 0xD8 - HEART\n #_0DB24C: db 0 ; 0xD9 - GREEN RUPEE\n #_0DB24D: db 0 ; 0xDA - BLUE RUPEE\n #_0DB24E: db 0 ; 0xDB - RED RUPEE\n #_0DB24F: db 0 ; 0xDC - BOMB REFILL 1\n #_0DB250: db 0 ; 0xDD - BOMB REFILL 4\n #_0DB251: db 0 ; 0xDE - BOMB REFILL 8\n #_0DB252: db 0 ; 0xDF - SMALL MAGIC DECANTER\n #_0DB253: db 0 ; 0xE0 - LARGE MAGIC DECANTER\n #_0DB254: db 0 ; 0xE1 - ARROW REFILL 5\n #_0DB255: db 0 ; 0xE2 - ARROW REFILL 10\n #_0DB256: db 0 ; 0xE3 - FAIRY\n #_0DB257: db 0 ; 0xE4 - SMALL KEY\n #_0DB258: db 0 ; 0xE5 - BIG KEY\n #_0DB259: db 0 ; 0xE6 - STOLEN SHIELD\n #_0DB25A: db 0 ; 0xE7 - MUSHROOM\n #_0DB25B: db 0 ; 0xE8 - FAKE MASTER SWORD\n #_0DB25C: db 0 ; 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB25D: db 0 ; 0xEA - HEART CONTAINER\n #_0DB25E: db 0 ; 0xEB - HEART PIECE\n #_0DB25F: db 0 ; 0xEC - THROWN ITEM\n #_0DB260: db 0 ; 0xED - SOMARIA PLATFORM\n #_0DB261: db 0 ; 0xEE - CASTLE MANTLE\n #_0DB262: db 0 ; 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB263: db 0 ; 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB264: db 0 ; 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB265: db 0 ; 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_Bump", + "code": "SpriteData_Bump:\n #_0DB266: db $83 ; t... $3 | 0x00 - RAVEN\n #_0DB267: db $83 ; t... $3 | 0x01 - VULTURE\n #_0DB268: db $81 ; t... $1 | 0x02 - STALFOS HEAD\n #_0DB269: db $02 ; .... $2 | 0x03 - NULL\n #_0DB26A: db $02 ; .... $2 | 0x04 - CORRECT PULL SWITCH\n #_0DB26B: db $02 ; .... $2 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB26C: db $02 ; .... $2 | 0x06 - WRONG PULL SWITCH\n #_0DB26D: db $02 ; .... $2 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB26E: db $01 ; .... $1 | 0x08 - OCTOROK\n #_0DB26F: db $13 ; ...d $3 | 0x09 - MOLDORM\n #_0DB270: db $01 ; .... $1 | 0x0A - OCTOROK 4WAY\n #_0DB271: db $01 ; .... $1 | 0x0B - CUCCO\n #_0DB272: db $01 ; .... $1 | 0x0C - OCTOROK STONE\n #_0DB273: db $01 ; .... $1 | 0x0D - BUZZBLOB\n #_0DB274: db $08 ; .... $8 | 0x0E - SNAPDRAGON\n #_0DB275: db $01 ; .... $1 | 0x0F - OCTOBALLOON\n #_0DB276: db $01 ; .... $1 | 0x10 - OCTOBALLOON BABY\n #_0DB277: db $08 ; .... $8 | 0x11 - HINOX\n #_0DB278: db $05 ; .... $5 | 0x12 - MOBLIN\n #_0DB279: db $03 ; .... $3 | 0x13 - MINI HELMASAUR\n #_0DB27A: db $40 ; .z.. $0 | 0x14 - THIEVES TOWN GRATE\n #_0DB27B: db $04 ; .... $4 | 0x15 - ANTIFAIRY\n #_0DB27C: db $00 ; .... $0 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB27D: db $02 ; .... $2 | 0x17 - HOARDER\n #_0DB27E: db $03 ; .... $3 | 0x18 - MINI MOLDORM\n #_0DB27F: db $85 ; t... $5 | 0x19 - POE\n #_0DB280: db $00 ; .... $0 | 0x1A - SMITHY\n #_0DB281: db $01 ; .... $1 | 0x1B - ARROW\n #_0DB282: db $00 ; .... $0 | 0x1C - STATUE\n #_0DB283: db $40 ; .z.. $0 | 0x1D - FLUTEQUEST\n #_0DB284: db $00 ; .... $0 | 0x1E - CRYSTAL SWITCH\n #_0DB285: db $00 ; .... $0 | 0x1F - SICK KID\n #_0DB286: db $06 ; .... $6 | 0x20 - SLUGGULA\n #_0DB287: db $00 ; .... $0 | 0x21 - WATER SWITCH\n #_0DB288: db $05 ; .... $5 | 0x22 - ROPA\n #_0DB289: db $03 ; .... $3 | 0x23 - RED BARI\n #_0DB28A: db $01 ; .... $1 | 0x24 - BLUE BARI\n #_0DB28B: db $00 ; .... $0 | 0x25 - TALKING TREE\n #_0DB28C: db $00 ; .... $0 | 0x26 - HARDHAT BEETLE\n #_0DB28D: db $03 ; .... $3 | 0x27 - DEADROCK\n #_0DB28E: db $00 ; .... $0 | 0x28 - DARK WORLD HINT NPC\n #_0DB28F: db $00 ; .... $0 | 0x29 - ADULT\n #_0DB290: db $00 ; .... $0 | 0x2A - SWEEPING LADY\n #_0DB291: db $00 ; .... $0 | 0x2B - HOBO\n #_0DB292: db $00 ; .... $0 | 0x2C - LUMBERJACKS\n #_0DB293: db $00 ; .... $0 | 0x2D - NECKLESS MAN\n #_0DB294: db $00 ; .... $0 | 0x2E - FLUTE KID\n #_0DB295: db $00 ; .... $0 | 0x2F - RACE GAME LADY\n #_0DB296: db $00 ; .... $0 | 0x30 - RACE GAME GUY\n #_0DB297: db $00 ; .... $0 | 0x31 - FORTUNE TELLER\n #_0DB298: db $00 ; .... $0 | 0x32 - ARGUE BROS\n #_0DB299: db $00 ; .... $0 | 0x33 - RUPEE PULL\n #_0DB29A: db $00 ; .... $0 | 0x34 - YOUNG SNITCH\n #_0DB29B: db $00 ; .... $0 | 0x35 - INNKEEPER\n #_0DB29C: db $00 ; .... $0 | 0x36 - WITCH\n #_0DB29D: db $40 ; .z.. $0 | 0x37 - WATERFALL\n #_0DB29E: db $00 ; .... $0 | 0x38 - EYE STATUE\n #_0DB29F: db $00 ; .... $0 | 0x39 - LOCKSMITH\n #_0DB2A0: db $00 ; .... $0 | 0x3A - MAGIC BAT\n #_0DB2A1: db $00 ; .... $0 | 0x3B - BONK ITEM\n #_0DB2A2: db $00 ; .... $0 | 0x3C - KID IN KAK\n #_0DB2A3: db $00 ; .... $0 | 0x3D - OLD SNITCH\n #_0DB2A4: db $02 ; .... $2 | 0x3E - HOARDER\n #_0DB2A5: db $02 ; .... $2 | 0x3F - TUTORIAL GUARD\n #_0DB2A6: db $00 ; .... $0 | 0x40 - LIGHTNING GATE\n #_0DB2A7: db $01 ; .... $1 | 0x41 - BLUE GUARD\n #_0DB2A8: db $01 ; .... $1 | 0x42 - GREEN GUARD\n #_0DB2A9: db $03 ; .... $3 | 0x43 - RED SPEAR GUARD\n #_0DB2AA: db $01 ; .... $1 | 0x44 - BLUESAIN BOLT\n #_0DB2AB: db $03 ; .... $3 | 0x45 - USAIN BOLT\n #_0DB2AC: db $01 ; .... $1 | 0x46 - BLUE ARCHER\n #_0DB2AD: db $01 ; .... $1 | 0x47 - GREEN BUSH GUARD\n #_0DB2AE: db $03 ; .... $3 | 0x48 - RED JAVELIN GUARD\n #_0DB2AF: db $03 ; .... $3 | 0x49 - RED BUSH GUARD\n #_0DB2B0: db $03 ; .... $3 | 0x4A - BOMB GUARD\n #_0DB2B1: db $01 ; .... $1 | 0x4B - GREEN KNIFE GUARD\n #_0DB2B2: db $03 ; .... $3 | 0x4C - GELDMAN\n #_0DB2B3: db $01 ; .... $1 | 0x4D - TOPPO\n #_0DB2B4: db $01 ; .... $1 | 0x4E - POPO\n #_0DB2B5: db $01 ; .... $1 | 0x4F - POPO\n #_0DB2B6: db $01 ; .... $1 | 0x50 - CANNONBALL\n #_0DB2B7: db $01 ; .... $1 | 0x51 - ARMOS STATUE\n #_0DB2B8: db $01 ; .... $1 | 0x52 - KING ZORA\n #_0DB2B9: db $11 ; ...d $1 | 0x53 - ARMOS KNIGHT\n #_0DB2BA: db $14 ; ...d $4 | 0x54 - LANMOLAS\n #_0DB2BB: db $01 ; .... $1 | 0x55 - ZORA / FIREBALL\n #_0DB2BC: db $01 ; .... $1 | 0x56 - ZORA\n #_0DB2BD: db $02 ; .... $2 | 0x57 - DESERT STATUE\n #_0DB2BE: db $05 ; .... $5 | 0x58 - CRAB\n #_0DB2BF: db $00 ; .... $0 | 0x59 - LOST WOODS BIRD\n #_0DB2C0: db $00 ; .... $0 | 0x5A - LOST WOODS SQUIRREL\n #_0DB2C1: db $04 ; .... $4 | 0x5B - SPARK\n #_0DB2C2: db $04 ; .... $4 | 0x5C - SPARK\n #_0DB2C3: db $08 ; .... $8 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB2C4: db $08 ; .... $8 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB2C5: db $08 ; .... $8 | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB2C6: db $08 ; .... $8 | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB2C7: db $04 ; .... $4 | 0x61 - BEAMOS\n #_0DB2C8: db $00 ; .... $0 | 0x62 - MASTERSWORD\n #_0DB2C9: db $04 ; .... $4 | 0x63 - DEBIRANDO PIT\n #_0DB2CA: db $03 ; .... $3 | 0x64 - DEBIRANDO\n #_0DB2CB: db $02 ; .... $2 | 0x65 - ARCHERY GUY\n #_0DB2CC: db $02 ; .... $2 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB2CD: db $02 ; .... $2 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB2CE: db $02 ; .... $2 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB2CF: db $02 ; .... $2 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB2D0: db $03 ; .... $3 | 0x6A - BALL N CHAIN\n #_0DB2D1: db $01 ; .... $1 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB2D2: db $00 ; .... $0 | 0x6C - MIRROR PORTAL\n #_0DB2D3: db $00 ; .... $0 | 0x6D - RAT / CRICKET\n #_0DB2D4: db $01 ; .... $1 | 0x6E - SNAKE\n #_0DB2D5: db $80 ; t... $0 | 0x6F - KEESE\n #_0DB2D6: db $05 ; .... $5 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB2D7: db $01 ; .... $1 | 0x71 - LEEVER\n #_0DB2D8: db $00 ; .... $0 | 0x72 - FAIRY POND TRIGGER\n #_0DB2D9: db $00 ; .... $0 | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB2DA: db $00 ; .... $0 | 0x74 - RUNNING MAN\n #_0DB2DB: db $40 ; .z.. $0 | 0x75 - BOTTLE MERCHANT\n #_0DB2DC: db $00 ; .... $0 | 0x76 - ZELDA\n #_0DB2DD: db $04 ; .... $4 | 0x77 - ANTIFAIRY\n #_0DB2DE: db $00 ; .... $0 | 0x78 - SAHASRAHLAS WIFE\n #_0DB2DF: db $00 ; .... $0 | 0x79 - BEE\n #_0DB2E0: db $14 ; ...d $4 | 0x7A - AGAHNIM\n #_0DB2E1: db $04 ; .... $4 | 0x7B - AGAHNIMS BALLS\n #_0DB2E2: db $06 ; .... $6 | 0x7C - GREEN STALFOS\n #_0DB2E3: db $04 ; .... $4 | 0x7D - BIG SPIKE\n #_0DB2E4: db $04 ; .... $4 | 0x7E - FIREBAR CLOCKWISE\n #_0DB2E5: db $04 ; .... $4 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB2E6: db $04 ; .... $4 | 0x80 - FIRESNAKE\n #_0DB2E7: db $03 ; .... $3 | 0x81 - HOVER\n #_0DB2E8: db $04 ; .... $4 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB2E9: db $04 ; .... $4 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB2EA: db $04 ; .... $4 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB2EB: db $01 ; .... $1 | 0x85 - YELLOW STALFOS\n #_0DB2EC: db $04 ; .... $4 | 0x86 - KODONGO\n #_0DB2ED: db $04 ; .... $4 | 0x87 - KONDONGO FIRE\n #_0DB2EE: db $15 ; ...d $5 | 0x88 - MOTHULA\n #_0DB2EF: db $05 ; .... $5 | 0x89 - MOTHULA BEAM\n #_0DB2F0: db $04 ; .... $4 | 0x8A - SPIKE BLOCK\n #_0DB2F1: db $05 ; .... $5 | 0x8B - GIBDO\n #_0DB2F2: db $15 ; ...d $5 | 0x8C - ARRGHUS\n #_0DB2F3: db $15 ; ...d $5 | 0x8D - ARRGHI\n #_0DB2F4: db $03 ; .... $3 | 0x8E - TERRORPIN\n #_0DB2F5: db $05 ; .... $5 | 0x8F - BLOB\n #_0DB2F6: db $00 ; .... $0 | 0x90 - WALLMASTER\n #_0DB2F7: db $05 ; .... $5 | 0x91 - STALFOS KNIGHT\n #_0DB2F8: db $15 ; ...d $5 | 0x92 - KING HELMASAUR\n #_0DB2F9: db $05 ; .... $5 | 0x93 - BUMPER\n #_0DB2FA: db $05 ; .... $5 | 0x94 - PIROGUSU\n #_0DB2FB: db $06 ; .... $6 | 0x95 - LASER EYE LEFT\n #_0DB2FC: db $06 ; .... $6 | 0x96 - LASER EYE RIGHT\n #_0DB2FD: db $06 ; .... $6 | 0x97 - LASER EYE TOP\n #_0DB2FE: db $06 ; .... $6 | 0x98 - LASER EYE BOTTOM\n #_0DB2FF: db $05 ; .... $5 | 0x99 - PENGATOR\n #_0DB300: db $03 ; .... $3 | 0x9A - KYAMERON\n #_0DB301: db $06 ; .... $6 | 0x9B - WIZZROBE\n #_0DB302: db $05 ; .... $5 | 0x9C - ZORO\n #_0DB303: db $05 ; .... $5 | 0x9D - BABASU\n #_0DB304: db $03 ; .... $3 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB305: db $03 ; .... $3 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB306: db $03 ; .... $3 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB307: db $06 ; .... $6 | 0xA1 - FREEZOR\n #_0DB308: db $17 ; ...d $7 | 0xA2 - KHOLDSTARE\n #_0DB309: db $15 ; ...d $5 | 0xA3 - KHOLDSTARE SHELL\n #_0DB30A: db $15 ; ...d $5 | 0xA4 - FALLING ICE\n #_0DB30B: db $05 ; .... $5 | 0xA5 - BLUE ZAZAK\n #_0DB30C: db $05 ; .... $5 | 0xA6 - RED ZAZAK\n #_0DB30D: db $01 ; .... $1 | 0xA7 - STALFOS\n #_0DB30E: db $85 ; t... $5 | 0xA8 - GREEN ZIRRO\n #_0DB30F: db $83 ; t... $3 | 0xA9 - BLUE ZIRRO\n #_0DB310: db $05 ; .... $5 | 0xAA - PIKIT\n #_0DB311: db $04 ; .... $4 | 0xAB - CRYSTAL MAIDEN\n #_0DB312: db $00 ; .... $0 | 0xAC - APPLE\n #_0DB313: db $00 ; .... $0 | 0xAD - OLD MAN\n #_0DB314: db $00 ; .... $0 | 0xAE - PIPE DOWN\n #_0DB315: db $00 ; .... $0 | 0xAF - PIPE UP\n #_0DB316: db $00 ; .... $0 | 0xB0 - PIPE RIGHT\n #_0DB317: db $00 ; .... $0 | 0xB1 - PIPE LEFT\n #_0DB318: db $00 ; .... $0 | 0xB2 - GOOD BEE\n #_0DB319: db $00 ; .... $0 | 0xB3 - PEDESTAL PLAQUE\n #_0DB31A: db $00 ; .... $0 | 0xB4 - PURPLE CHEST\n #_0DB31B: db $00 ; .... $0 | 0xB5 - BOMB SHOP GUY\n #_0DB31C: db $00 ; .... $0 | 0xB6 - KIKI\n #_0DB31D: db $00 ; .... $0 | 0xB7 - BLIND MAIDEN\n #_0DB31E: db $00 ; .... $0 | 0xB8 - DIALOGUE TESTER\n #_0DB31F: db $00 ; .... $0 | 0xB9 - BULLY / PINK BALL\n #_0DB320: db $00 ; .... $0 | 0xBA - WHIRLPOOL\n #_0DB321: db $00 ; .... $0 | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB322: db $00 ; .... $0 | 0xBC - DRUNKARD\n #_0DB323: db $17 ; ...d $7 | 0xBD - VITREOUS\n #_0DB324: db $17 ; ...d $7 | 0xBE - VITREOUS SMALL EYE\n #_0DB325: db $05 ; .... $5 | 0xBF - LIGHTNING\n #_0DB326: db $05 ; .... $5 | 0xC0 - CATFISH\n #_0DB327: db $05 ; .... $5 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB328: db $04 ; .... $4 | 0xC2 - BOULDER\n #_0DB329: db $03 ; .... $3 | 0xC3 - GIBO\n #_0DB32A: db $02 ; .... $2 | 0xC4 - THIEF\n #_0DB32B: db $10 ; ...d $0 | 0xC5 - MEDUSA\n #_0DB32C: db $00 ; .... $0 | 0xC6 - 4WAY SHOOTER\n #_0DB32D: db $06 ; .... $6 | 0xC7 - POKEY\n #_0DB32E: db $00 ; .... $0 | 0xC8 - BIG FAIRY\n #_0DB32F: db $05 ; .... $5 | 0xC9 - TEKTITE / FIREBAT\n #_0DB330: db $07 ; .... $7 | 0xCA - CHAIN CHOMP\n #_0DB331: db $17 ; ...d $7 | 0xCB - TRINEXX ROCK HEAD\n #_0DB332: db $17 ; ...d $7 | 0xCC - TRINEXX FIRE HEAD\n #_0DB333: db $17 ; ...d $7 | 0xCD - TRINEXX ICE HEAD\n #_0DB334: db $15 ; ...d $5 | 0xCE - BLIND\n #_0DB335: db $07 ; .... $7 | 0xCF - SWAMOLA\n #_0DB336: db $06 ; .... $6 | 0xD0 - LYNEL\n #_0DB337: db $10 ; ...d $0 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB338: db $00 ; .... $0 | 0xD2 - FLOPPING FISH\n #_0DB339: db $03 ; .... $3 | 0xD3 - STAL\n #_0DB33A: db $03 ; .... $3 | 0xD4 - LANDMINE\n #_0DB33B: db $00 ; .... $0 | 0xD5 - DIG GAME GUY\n #_0DB33C: db $19 ; ...d $9 | 0xD6 - GANON\n #_0DB33D: db $19 ; ...d $9 | 0xD7 - GANON\n #_0DB33E: db $00 ; .... $0 | 0xD8 - HEART\n #_0DB33F: db $00 ; .... $0 | 0xD9 - GREEN RUPEE\n #_0DB340: db $00 ; .... $0 | 0xDA - BLUE RUPEE\n #_0DB341: db $00 ; .... $0 | 0xDB - RED RUPEE\n #_0DB342: db $00 ; .... $0 | 0xDC - BOMB REFILL 1\n #_0DB343: db $00 ; .... $0 | 0xDD - BOMB REFILL 4\n #_0DB344: db $00 ; .... $0 | 0xDE - BOMB REFILL 8\n #_0DB345: db $00 ; .... $0 | 0xDF - SMALL MAGIC DECANTER\n #_0DB346: db $00 ; .... $0 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB347: db $00 ; .... $0 | 0xE1 - ARROW REFILL 5\n #_0DB348: db $00 ; .... $0 | 0xE2 - ARROW REFILL 10\n #_0DB349: db $10 ; ...d $0 | 0xE3 - FAIRY\n #_0DB34A: db $00 ; .... $0 | 0xE4 - SMALL KEY\n #_0DB34B: db $00 ; .... $0 | 0xE5 - BIG KEY\n #_0DB34C: db $00 ; .... $0 | 0xE6 - STOLEN SHIELD\n #_0DB34D: db $00 ; .... $0 | 0xE7 - MUSHROOM\n #_0DB34E: db $00 ; .... $0 | 0xE8 - FAKE MASTER SWORD\n #_0DB34F: db $00 ; .... $0 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB350: db $00 ; .... $0 | 0xEA - HEART CONTAINER\n #_0DB351: db $00 ; .... $0 | 0xEB - HEART PIECE\n #_0DB352: db $00 ; .... $0 | 0xEC - THROWN ITEM\n #_0DB353: db $00 ; .... $0 | 0xED - SOMARIA PLATFORM\n #_0DB354: db $00 ; .... $0 | 0xEE - CASTLE MANTLE\n #_0DB355: db $00 ; .... $0 | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB356: db $00 ; .... $0 | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB357: db $00 ; .... $0 | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB358: db $00 ; .... $0 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_OAMProp", + "code": "SpriteData_OAMProp:\n #_0DB359: db $19 ; ...s $1, 1 | 0x00 - RAVEN\n #_0DB35A: db $0B ; .... $3, 1 | 0x01 - VULTURE\n #_0DB35B: db $1B ; ...s $3, 1 | 0x02 - STALFOS HEAD\n #_0DB35C: db $4B ; .i.. $3, 1 | 0x03 - NULL\n #_0DB35D: db $41 ; .i.. $1, 1 | 0x04 - CORRECT PULL SWITCH\n #_0DB35E: db $41 ; .i.. $1, 1 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB35F: db $41 ; .i.. $1, 1 | 0x06 - WRONG PULL SWITCH\n #_0DB360: db $4D ; .i.. $5, 1 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB361: db $1D ; ...s $5, 1 | 0x08 - OCTOROK\n #_0DB362: db $01 ; .... $1, 1 | 0x09 - MOLDORM\n #_0DB363: db $1D ; ...s $5, 1 | 0x0A - OCTOROK 4WAY\n #_0DB364: db $19 ; ...s $1, 1 | 0x0B - CUCCO\n #_0DB365: db $8D ; n... $5, 1 | 0x0C - OCTOROK STONE\n #_0DB366: db $1B ; ...s $3, 1 | 0x0D - BUZZBLOB\n #_0DB367: db $09 ; .... $1, 1 | 0x0E - SNAPDRAGON\n #_0DB368: db $9D ; n..s $5, 1 | 0x0F - OCTOBALLOON\n #_0DB369: db $3D ; ..os $5, 1 | 0x10 - OCTOBALLOON BABY\n #_0DB36A: db $01 ; .... $1, 1 | 0x11 - HINOX\n #_0DB36B: db $09 ; .... $1, 1 | 0x12 - MOBLIN\n #_0DB36C: db $11 ; ...s $1, 1 | 0x13 - MINI HELMASAUR\n #_0DB36D: db $40 ; .i.. $0, 0 | 0x14 - THIEVES TOWN GRATE\n #_0DB36E: db $01 ; .... $1, 1 | 0x15 - ANTIFAIRY\n #_0DB36F: db $4D ; .i.. $5, 1 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB370: db $19 ; ...s $1, 1 | 0x17 - HOARDER\n #_0DB371: db $07 ; .... $7, 1 | 0x18 - MINI MOLDORM\n #_0DB372: db $1D ; ...s $5, 1 | 0x19 - POE\n #_0DB373: db $59 ; .i.s $1, 1 | 0x1A - SMITHY\n #_0DB374: db $80 ; n... $0, 0 | 0x1B - ARROW\n #_0DB375: db $4D ; .i.. $5, 1 | 0x1C - STATUE\n #_0DB376: db $40 ; .i.. $0, 0 | 0x1D - FLUTEQUEST\n #_0DB377: db $01 ; .... $1, 1 | 0x1E - CRYSTAL SWITCH\n #_0DB378: db $49 ; .i.. $1, 1 | 0x1F - SICK KID\n #_0DB379: db $1B ; ...s $3, 1 | 0x20 - SLUGGULA\n #_0DB37A: db $41 ; .i.. $1, 1 | 0x21 - WATER SWITCH\n #_0DB37B: db $03 ; .... $3, 1 | 0x22 - ROPA\n #_0DB37C: db $13 ; ...s $3, 1 | 0x23 - RED BARI\n #_0DB37D: db $15 ; ...s $5, 1 | 0x24 - BLUE BARI\n #_0DB37E: db $41 ; .i.. $1, 1 | 0x25 - TALKING TREE\n #_0DB37F: db $18 ; ...s $0, 0 | 0x26 - HARDHAT BEETLE\n #_0DB380: db $1B ; ...s $3, 1 | 0x27 - DEADROCK\n #_0DB381: db $41 ; .i.. $1, 1 | 0x28 - DARK WORLD HINT NPC\n #_0DB382: db $47 ; .i.. $7, 1 | 0x29 - ADULT\n #_0DB383: db $0F ; .... $7, 1 | 0x2A - SWEEPING LADY\n #_0DB384: db $49 ; .i.. $1, 1 | 0x2B - HOBO\n #_0DB385: db $4B ; .i.. $3, 1 | 0x2C - LUMBERJACKS\n #_0DB386: db $4D ; .i.. $5, 1 | 0x2D - NECKLESS MAN\n #_0DB387: db $41 ; .i.. $1, 1 | 0x2E - FLUTE KID\n #_0DB388: db $47 ; .i.. $7, 1 | 0x2F - RACE GAME LADY\n #_0DB389: db $49 ; .i.. $1, 1 | 0x30 - RACE GAME GUY\n #_0DB38A: db $4D ; .i.. $5, 1 | 0x31 - FORTUNE TELLER\n #_0DB38B: db $49 ; .i.. $1, 1 | 0x32 - ARGUE BROS\n #_0DB38C: db $40 ; .i.. $0, 0 | 0x33 - RUPEE PULL\n #_0DB38D: db $4D ; .i.. $5, 1 | 0x34 - YOUNG SNITCH\n #_0DB38E: db $47 ; .i.. $7, 1 | 0x35 - INNKEEPER\n #_0DB38F: db $49 ; .i.. $1, 1 | 0x36 - WITCH\n #_0DB390: db $41 ; .i.. $1, 1 | 0x37 - WATERFALL\n #_0DB391: db $74 ; .ios $4, 0 | 0x38 - EYE STATUE\n #_0DB392: db $47 ; .i.. $7, 1 | 0x39 - LOCKSMITH\n #_0DB393: db $5B ; .i.s $3, 1 | 0x3A - MAGIC BAT\n #_0DB394: db $58 ; .i.s $0, 0 | 0x3B - BONK ITEM\n #_0DB395: db $51 ; .i.s $1, 1 | 0x3C - KID IN KAK\n #_0DB396: db $49 ; .i.. $1, 1 | 0x3D - OLD SNITCH\n #_0DB397: db $1D ; ...s $5, 1 | 0x3E - HOARDER\n #_0DB398: db $5D ; .i.s $5, 1 | 0x3F - TUTORIAL GUARD\n #_0DB399: db $03 ; .... $3, 1 | 0x40 - LIGHTNING GATE\n #_0DB39A: db $19 ; ...s $1, 1 | 0x41 - BLUE GUARD\n #_0DB39B: db $1B ; ...s $3, 1 | 0x42 - GREEN GUARD\n #_0DB39C: db $17 ; ...s $7, 1 | 0x43 - RED SPEAR GUARD\n #_0DB39D: db $19 ; ...s $1, 1 | 0x44 - BLUESAIN BOLT\n #_0DB39E: db $17 ; ...s $7, 1 | 0x45 - USAIN BOLT\n #_0DB39F: db $19 ; ...s $1, 1 | 0x46 - BLUE ARCHER\n #_0DB3A0: db $1B ; ...s $3, 1 | 0x47 - GREEN BUSH GUARD\n #_0DB3A1: db $17 ; ...s $7, 1 | 0x48 - RED JAVELIN GUARD\n #_0DB3A2: db $17 ; ...s $7, 1 | 0x49 - RED BUSH GUARD\n #_0DB3A3: db $17 ; ...s $7, 1 | 0x4A - BOMB GUARD\n #_0DB3A4: db $1B ; ...s $3, 1 | 0x4B - GREEN KNIFE GUARD\n #_0DB3A5: db $0D ; .... $5, 1 | 0x4C - GELDMAN\n #_0DB3A6: db $09 ; .... $1, 1 | 0x4D - TOPPO\n #_0DB3A7: db $19 ; ...s $1, 1 | 0x4E - POPO\n #_0DB3A8: db $19 ; ...s $1, 1 | 0x4F - POPO\n #_0DB3A9: db $49 ; .i.. $1, 1 | 0x50 - CANNONBALL\n #_0DB3AA: db $5D ; .i.s $5, 1 | 0x51 - ARMOS STATUE\n #_0DB3AB: db $5B ; .i.s $3, 1 | 0x52 - KING ZORA\n #_0DB3AC: db $49 ; .i.. $1, 1 | 0x53 - ARMOS KNIGHT\n #_0DB3AD: db $0D ; .... $5, 1 | 0x54 - LANMOLAS\n #_0DB3AE: db $03 ; .... $3, 1 | 0x55 - ZORA / FIREBALL\n #_0DB3AF: db $13 ; ...s $3, 1 | 0x56 - ZORA\n #_0DB3B0: db $41 ; .i.. $1, 1 | 0x57 - DESERT STATUE\n #_0DB3B1: db $1B ; ...s $3, 1 | 0x58 - CRAB\n #_0DB3B2: db $5B ; .i.s $3, 1 | 0x59 - LOST WOODS BIRD\n #_0DB3B3: db $5D ; .i.s $5, 1 | 0x5A - LOST WOODS SQUIRREL\n #_0DB3B4: db $43 ; .i.. $3, 1 | 0x5B - SPARK\n #_0DB3B5: db $43 ; .i.. $3, 1 | 0x5C - SPARK\n #_0DB3B6: db $4D ; .i.. $5, 1 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB3B7: db $4D ; .i.. $5, 1 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB3B8: db $4D ; .i.. $5, 1 | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB3B9: db $4D ; .i.. $5, 1 | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB3BA: db $4D ; .i.. $5, 1 | 0x61 - BEAMOS\n #_0DB3BB: db $49 ; .i.. $1, 1 | 0x62 - MASTERSWORD\n #_0DB3BC: db $01 ; .... $1, 1 | 0x63 - DEBIRANDO PIT\n #_0DB3BD: db $00 ; .... $0, 0 | 0x64 - DEBIRANDO\n #_0DB3BE: db $41 ; .i.. $1, 1 | 0x65 - ARCHERY GUY\n #_0DB3BF: db $4D ; .i.. $5, 1 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB3C0: db $4D ; .i.. $5, 1 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB3C1: db $4D ; .i.. $5, 1 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB3C2: db $4D ; .i.. $5, 1 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB3C3: db $1D ; ...s $5, 1 | 0x6A - BALL N CHAIN\n #_0DB3C4: db $09 ; .... $1, 1 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB3C5: db $C4 ; ni.. $4, 0 | 0x6C - MIRROR PORTAL\n #_0DB3C6: db $0D ; .... $5, 1 | 0x6D - RAT / CRICKET\n #_0DB3C7: db $0D ; .... $5, 1 | 0x6E - SNAKE\n #_0DB3C8: db $09 ; .... $1, 1 | 0x6F - KEESE\n #_0DB3C9: db $03 ; .... $3, 1 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB3CA: db $03 ; .... $3, 1 | 0x71 - LEEVER\n #_0DB3CB: db $4B ; .i.. $3, 1 | 0x72 - FAIRY POND TRIGGER\n #_0DB3CC: db $47 ; .i.. $7, 1 | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB3CD: db $47 ; .i.. $7, 1 | 0x74 - RUNNING MAN\n #_0DB3CE: db $49 ; .i.. $1, 1 | 0x75 - BOTTLE MERCHANT\n #_0DB3CF: db $49 ; .i.. $1, 1 | 0x76 - ZELDA\n #_0DB3D0: db $41 ; .i.. $1, 1 | 0x77 - ANTIFAIRY\n #_0DB3D1: db $47 ; .i.. $7, 1 | 0x78 - SAHASRAHLAS WIFE\n #_0DB3D2: db $36 ; ..os $6, 0 | 0x79 - BEE\n #_0DB3D3: db $8B ; n... $3, 1 | 0x7A - AGAHNIM\n #_0DB3D4: db $49 ; .i.. $1, 1 | 0x7B - AGAHNIMS BALLS\n #_0DB3D5: db $1D ; ...s $5, 1 | 0x7C - GREEN STALFOS\n #_0DB3D6: db $49 ; .i.. $1, 1 | 0x7D - BIG SPIKE\n #_0DB3D7: db $43 ; .i.. $3, 1 | 0x7E - FIREBAR CLOCKWISE\n #_0DB3D8: db $43 ; .i.. $3, 1 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB3D9: db $43 ; .i.. $3, 1 | 0x80 - FIRESNAKE\n #_0DB3DA: db $0B ; .... $3, 1 | 0x81 - HOVER\n #_0DB3DB: db $41 ; .i.. $1, 1 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB3DC: db $0D ; .... $5, 1 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB3DD: db $07 ; .... $7, 1 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB3DE: db $0B ; .... $3, 1 | 0x85 - YELLOW STALFOS\n #_0DB3DF: db $1D ; ...s $5, 1 | 0x86 - KODONGO\n #_0DB3E0: db $43 ; .i.. $3, 1 | 0x87 - KONDONGO FIRE\n #_0DB3E1: db $0D ; .... $5, 1 | 0x88 - MOTHULA\n #_0DB3E2: db $43 ; .i.. $3, 1 | 0x89 - MOTHULA BEAM\n #_0DB3E3: db $0D ; .... $5, 1 | 0x8A - SPIKE BLOCK\n #_0DB3E4: db $1D ; ...s $5, 1 | 0x8B - GIBDO\n #_0DB3E5: db $4D ; .i.. $5, 1 | 0x8C - ARRGHUS\n #_0DB3E6: db $4D ; .i.. $5, 1 | 0x8D - ARRGHI\n #_0DB3E7: db $1B ; ...s $3, 1 | 0x8E - TERRORPIN\n #_0DB3E8: db $1B ; ...s $3, 1 | 0x8F - BLOB\n #_0DB3E9: db $0A ; .... $2, 0 | 0x90 - WALLMASTER\n #_0DB3EA: db $0B ; .... $3, 1 | 0x91 - STALFOS KNIGHT\n #_0DB3EB: db $00 ; .... $0, 0 | 0x92 - KING HELMASAUR\n #_0DB3EC: db $05 ; .... $5, 1 | 0x93 - BUMPER\n #_0DB3ED: db $0D ; .... $5, 1 | 0x94 - PIROGUSU\n #_0DB3EE: db $01 ; .... $1, 1 | 0x95 - LASER EYE LEFT\n #_0DB3EF: db $01 ; .... $1, 1 | 0x96 - LASER EYE RIGHT\n #_0DB3F0: db $01 ; .... $1, 1 | 0x97 - LASER EYE TOP\n #_0DB3F1: db $01 ; .... $1, 1 | 0x98 - LASER EYE BOTTOM\n #_0DB3F2: db $0B ; .... $3, 1 | 0x99 - PENGATOR\n #_0DB3F3: db $05 ; .... $5, 1 | 0x9A - KYAMERON\n #_0DB3F4: db $01 ; .... $1, 1 | 0x9B - WIZZROBE\n #_0DB3F5: db $01 ; .... $1, 1 | 0x9C - ZORO\n #_0DB3F6: db $01 ; .... $1, 1 | 0x9D - BABASU\n #_0DB3F7: db $07 ; .... $7, 1 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB3F8: db $17 ; ...s $7, 1 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB3F9: db $19 ; ...s $1, 1 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB3FA: db $0D ; .... $5, 1 | 0xA1 - FREEZOR\n #_0DB3FB: db $0D ; .... $5, 1 | 0xA2 - KHOLDSTARE\n #_0DB3FC: db $80 ; n... $0, 0 | 0xA3 - KHOLDSTARE SHELL\n #_0DB3FD: db $4D ; .i.. $5, 1 | 0xA4 - FALLING ICE\n #_0DB3FE: db $19 ; ...s $1, 1 | 0xA5 - BLUE ZAZAK\n #_0DB3FF: db $17 ; ...s $7, 1 | 0xA6 - RED ZAZAK\n #_0DB400: db $19 ; ...s $1, 1 | 0xA7 - STALFOS\n #_0DB401: db $0B ; .... $3, 1 | 0xA8 - GREEN ZIRRO\n #_0DB402: db $09 ; .... $1, 1 | 0xA9 - BLUE ZIRRO\n #_0DB403: db $0D ; .... $5, 1 | 0xAA - PIKIT\n #_0DB404: db $4A ; .i.. $2, 0 | 0xAB - CRYSTAL MAIDEN\n #_0DB405: db $12 ; ...s $2, 0 | 0xAC - APPLE\n #_0DB406: db $49 ; .i.. $1, 1 | 0xAD - OLD MAN\n #_0DB407: db $C3 ; ni.. $3, 1 | 0xAE - PIPE DOWN\n #_0DB408: db $C3 ; ni.. $3, 1 | 0xAF - PIPE UP\n #_0DB409: db $C3 ; ni.. $3, 1 | 0xB0 - PIPE RIGHT\n #_0DB40A: db $C3 ; ni.. $3, 1 | 0xB1 - PIPE LEFT\n #_0DB40B: db $76 ; .ios $6, 0 | 0xB2 - GOOD BEE\n #_0DB40C: db $40 ; .i.. $0, 0 | 0xB3 - PEDESTAL PLAQUE\n #_0DB40D: db $59 ; .i.s $1, 1 | 0xB4 - PURPLE CHEST\n #_0DB40E: db $41 ; .i.. $1, 1 | 0xB5 - BOMB SHOP GUY\n #_0DB40F: db $58 ; .i.s $0, 0 | 0xB6 - KIKI\n #_0DB410: db $4F ; .i.. $7, 1 | 0xB7 - BLIND MAIDEN\n #_0DB411: db $73 ; .ios $3, 1 | 0xB8 - DIALOGUE TESTER\n #_0DB412: db $5B ; .i.s $3, 1 | 0xB9 - BULLY / PINK BALL\n #_0DB413: db $44 ; .i.. $4, 0 | 0xBA - WHIRLPOOL\n #_0DB414: db $41 ; .i.. $1, 1 | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB415: db $51 ; .i.s $1, 1 | 0xBC - DRUNKARD\n #_0DB416: db $0A ; .... $2, 0 | 0xBD - VITREOUS\n #_0DB417: db $0B ; .... $3, 1 | 0xBE - VITREOUS SMALL EYE\n #_0DB418: db $0B ; .... $3, 1 | 0xBF - LIGHTNING\n #_0DB419: db $4B ; .i.. $3, 1 | 0xC0 - CATFISH\n #_0DB41A: db $00 ; .... $0, 0 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB41B: db $40 ; .i.. $0, 0 | 0xC2 - BOULDER\n #_0DB41C: db $5B ; .i.s $3, 1 | 0xC3 - GIBO\n #_0DB41D: db $0D ; .... $5, 1 | 0xC4 - THIEF\n #_0DB41E: db $00 ; .... $0, 0 | 0xC5 - MEDUSA\n #_0DB41F: db $00 ; .... $0, 0 | 0xC6 - 4WAY SHOOTER\n #_0DB420: db $0D ; .... $5, 1 | 0xC7 - POKEY\n #_0DB421: db $4B ; .i.. $3, 1 | 0xC8 - BIG FAIRY\n #_0DB422: db $0B ; .... $3, 1 | 0xC9 - TEKTITE / FIREBAT\n #_0DB423: db $59 ; .i.s $1, 1 | 0xCA - CHAIN CHOMP\n #_0DB424: db $41 ; .i.. $1, 1 | 0xCB - TRINEXX ROCK HEAD\n #_0DB425: db $0B ; .... $3, 1 | 0xCC - TRINEXX FIRE HEAD\n #_0DB426: db $0D ; .... $5, 1 | 0xCD - TRINEXX ICE HEAD\n #_0DB427: db $01 ; .... $1, 1 | 0xCE - BLIND\n #_0DB428: db $0D ; .... $5, 1 | 0xCF - SWAMOLA\n #_0DB429: db $0D ; .... $5, 1 | 0xD0 - LYNEL\n #_0DB42A: db $00 ; .... $0, 0 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB42B: db $50 ; .i.s $0, 0 | 0xD2 - FLOPPING FISH\n #_0DB42C: db $4C ; .i.. $4, 0 | 0xD3 - STAL\n #_0DB42D: db $44 ; .i.. $4, 0 | 0xD4 - LANDMINE\n #_0DB42E: db $51 ; .i.s $1, 1 | 0xD5 - DIG GAME GUY\n #_0DB42F: db $01 ; .... $1, 1 | 0xD6 - GANON\n #_0DB430: db $01 ; .... $1, 1 | 0xD7 - GANON\n #_0DB431: db $F2 ; nios $2, 0 | 0xD8 - HEART\n #_0DB432: db $F8 ; nios $0, 0 | 0xD9 - GREEN RUPEE\n #_0DB433: db $F4 ; nios $4, 0 | 0xDA - BLUE RUPEE\n #_0DB434: db $F2 ; nios $2, 0 | 0xDB - RED RUPEE\n #_0DB435: db $D4 ; ni.s $4, 0 | 0xDC - BOMB REFILL 1\n #_0DB436: db $D4 ; ni.s $4, 0 | 0xDD - BOMB REFILL 4\n #_0DB437: db $D4 ; ni.s $4, 0 | 0xDE - BOMB REFILL 8\n #_0DB438: db $F8 ; nios $0, 0 | 0xDF - SMALL MAGIC DECANTER\n #_0DB439: db $F8 ; nios $0, 0 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB43A: db $F4 ; nios $4, 0 | 0xE1 - ARROW REFILL 5\n #_0DB43B: db $F4 ; nios $4, 0 | 0xE2 - ARROW REFILL 10\n #_0DB43C: db $D8 ; ni.s $0, 0 | 0xE3 - FAIRY\n #_0DB43D: db $F8 ; nios $0, 0 | 0xE4 - SMALL KEY\n #_0DB43E: db $D8 ; ni.s $0, 0 | 0xE5 - BIG KEY\n #_0DB43F: db $DF ; ni.s $7, 1 | 0xE6 - STOLEN SHIELD\n #_0DB440: db $C8 ; ni.. $0, 0 | 0xE7 - MUSHROOM\n #_0DB441: db $69 ; .io. $1, 1 | 0xE8 - FAKE MASTER SWORD\n #_0DB442: db $C1 ; ni.. $1, 1 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB443: db $D2 ; ni.s $2, 0 | 0xEA - HEART CONTAINER\n #_0DB444: db $D2 ; ni.s $2, 0 | 0xEB - HEART PIECE\n #_0DB445: db $DC ; ni.s $4, 0 | 0xEC - THROWN ITEM\n #_0DB446: db $C7 ; ni.. $7, 1 | 0xED - SOMARIA PLATFORM\n #_0DB447: db $C1 ; ni.. $1, 1 | 0xEE - CASTLE MANTLE\n #_0DB448: db $C7 ; ni.. $7, 1 | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB449: db $C7 ; ni.. $7, 1 | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB44A: db $C7 ; ni.. $7, 1 | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB44B: db $C1 ; ni.. $1, 1 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_HitBox", + "code": "SpriteData_HitBox:\n #_0DB44C: db $00 ; ... $00 | 0x00 - RAVEN\n #_0DB44D: db $00 ; ... $00 | 0x01 - VULTURE\n #_0DB44E: db $00 ; ... $00 | 0x02 - STALFOS HEAD\n #_0DB44F: db $43 ; .s. $03 | 0x03 - NULL\n #_0DB450: db $43 ; .s. $03 | 0x04 - CORRECT PULL SWITCH\n #_0DB451: db $43 ; .s. $03 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB452: db $43 ; .s. $03 | 0x06 - WRONG PULL SWITCH\n #_0DB453: db $43 ; .s. $03 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB454: db $00 ; ... $00 | 0x08 - OCTOROK\n #_0DB455: db $00 ; ... $00 | 0x09 - MOLDORM\n #_0DB456: db $00 ; ... $00 | 0x0A - OCTOROK 4WAY\n #_0DB457: db $00 ; ... $00 | 0x0B - CUCCO\n #_0DB458: db $1C ; ... $1C | 0x0C - OCTOROK STONE\n #_0DB459: db $00 ; ... $00 | 0x0D - BUZZBLOB\n #_0DB45A: db $00 ; ... $00 | 0x0E - SNAPDRAGON\n #_0DB45B: db $02 ; ... $02 | 0x0F - OCTOBALLOON\n #_0DB45C: db $01 ; ... $01 | 0x10 - OCTOBALLOON BABY\n #_0DB45D: db $03 ; ... $03 | 0x11 - HINOX\n #_0DB45E: db $00 ; ... $00 | 0x12 - MOBLIN\n #_0DB45F: db $00 ; ... $00 | 0x13 - MINI HELMASAUR\n #_0DB460: db $03 ; ... $03 | 0x14 - THIEVES TOWN GRATE\n #_0DB461: db $C0 ; is. $00 | 0x15 - ANTIFAIRY\n #_0DB462: db $07 ; ... $07 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB463: db $00 ; ... $00 | 0x17 - HOARDER\n #_0DB464: db $00 ; ... $00 | 0x18 - MINI MOLDORM\n #_0DB465: db $00 ; ... $00 | 0x19 - POE\n #_0DB466: db $07 ; ... $07 | 0x1A - SMITHY\n #_0DB467: db $45 ; .s. $05 | 0x1B - ARROW\n #_0DB468: db $43 ; .s. $03 | 0x1C - STATUE\n #_0DB469: db $00 ; ... $00 | 0x1D - FLUTEQUEST\n #_0DB46A: db $40 ; .s. $00 | 0x1E - CRYSTAL SWITCH\n #_0DB46B: db $0D ; ... $0D | 0x1F - SICK KID\n #_0DB46C: db $00 ; ... $00 | 0x20 - SLUGGULA\n #_0DB46D: db $00 ; ... $00 | 0x21 - WATER SWITCH\n #_0DB46E: db $00 ; ... $00 | 0x22 - ROPA\n #_0DB46F: db $00 ; ... $00 | 0x23 - RED BARI\n #_0DB470: db $00 ; ... $00 | 0x24 - BLUE BARI\n #_0DB471: db $00 ; ... $00 | 0x25 - TALKING TREE\n #_0DB472: db $00 ; ... $00 | 0x26 - HARDHAT BEETLE\n #_0DB473: db $00 ; ... $00 | 0x27 - DEADROCK\n #_0DB474: db $07 ; ... $07 | 0x28 - DARK WORLD HINT NPC\n #_0DB475: db $07 ; ... $07 | 0x29 - ADULT\n #_0DB476: db $07 ; ... $07 | 0x2A - SWEEPING LADY\n #_0DB477: db $07 ; ... $07 | 0x2B - HOBO\n #_0DB478: db $07 ; ... $07 | 0x2C - LUMBERJACKS\n #_0DB479: db $07 ; ... $07 | 0x2D - NECKLESS MAN\n #_0DB47A: db $0D ; ... $0D | 0x2E - FLUTE KID\n #_0DB47B: db $07 ; ... $07 | 0x2F - RACE GAME LADY\n #_0DB47C: db $07 ; ... $07 | 0x30 - RACE GAME GUY\n #_0DB47D: db $07 ; ... $07 | 0x31 - FORTUNE TELLER\n #_0DB47E: db $07 ; ... $07 | 0x32 - ARGUE BROS\n #_0DB47F: db $03 ; ... $03 | 0x33 - RUPEE PULL\n #_0DB480: db $07 ; ... $07 | 0x34 - YOUNG SNITCH\n #_0DB481: db $07 ; ... $07 | 0x35 - INNKEEPER\n #_0DB482: db $07 ; ... $07 | 0x36 - WITCH\n #_0DB483: db $40 ; .s. $00 | 0x37 - WATERFALL\n #_0DB484: db $03 ; ... $03 | 0x38 - EYE STATUE\n #_0DB485: db $07 ; ... $07 | 0x39 - LOCKSMITH\n #_0DB486: db $0D ; ... $0D | 0x3A - MAGIC BAT\n #_0DB487: db $00 ; ... $00 | 0x3B - BONK ITEM\n #_0DB488: db $07 ; ... $07 | 0x3C - KID IN KAK\n #_0DB489: db $07 ; ... $07 | 0x3D - OLD SNITCH\n #_0DB48A: db $00 ; ... $00 | 0x3E - HOARDER\n #_0DB48B: db $00 ; ... $00 | 0x3F - TUTORIAL GUARD\n #_0DB48C: db $09 ; ... $09 | 0x40 - LIGHTNING GATE\n #_0DB48D: db $12 ; ... $12 | 0x41 - BLUE GUARD\n #_0DB48E: db $12 ; ... $12 | 0x42 - GREEN GUARD\n #_0DB48F: db $12 ; ... $12 | 0x43 - RED SPEAR GUARD\n #_0DB490: db $12 ; ... $12 | 0x44 - BLUESAIN BOLT\n #_0DB491: db $12 ; ... $12 | 0x45 - USAIN BOLT\n #_0DB492: db $12 ; ... $12 | 0x46 - BLUE ARCHER\n #_0DB493: db $12 ; ... $12 | 0x47 - GREEN BUSH GUARD\n #_0DB494: db $12 ; ... $12 | 0x48 - RED JAVELIN GUARD\n #_0DB495: db $12 ; ... $12 | 0x49 - RED BUSH GUARD\n #_0DB496: db $12 ; ... $12 | 0x4A - BOMB GUARD\n #_0DB497: db $12 ; ... $12 | 0x4B - GREEN KNIFE GUARD\n #_0DB498: db $00 ; ... $00 | 0x4C - GELDMAN\n #_0DB499: db $00 ; ... $00 | 0x4D - TOPPO\n #_0DB49A: db $00 ; ... $00 | 0x4E - POPO\n #_0DB49B: db $00 ; ... $00 | 0x4F - POPO\n #_0DB49C: db $80 ; i.. $00 | 0x50 - CANNONBALL\n #_0DB49D: db $12 ; ... $12 | 0x51 - ARMOS STATUE\n #_0DB49E: db $09 ; ... $09 | 0x52 - KING ZORA\n #_0DB49F: db $09 ; ... $09 | 0x53 - ARMOS KNIGHT\n #_0DB4A0: db $00 ; ... $00 | 0x54 - LANMOLAS\n #_0DB4A1: db $40 ; .s. $00 | 0x55 - ZORA / FIREBALL\n #_0DB4A2: db $00 ; ... $00 | 0x56 - ZORA\n #_0DB4A3: db $0C ; ... $0C | 0x57 - DESERT STATUE\n #_0DB4A4: db $00 ; ... $00 | 0x58 - CRAB\n #_0DB4A5: db $00 ; ... $00 | 0x59 - LOST WOODS BIRD\n #_0DB4A6: db $00 ; ... $00 | 0x5A - LOST WOODS SQUIRREL\n #_0DB4A7: db $40 ; .s. $00 | 0x5B - SPARK\n #_0DB4A8: db $40 ; .s. $00 | 0x5C - SPARK\n #_0DB4A9: db $10 ; ... $10 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB4AA: db $10 ; ... $10 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB4AB: db $2E ; ..p $0E | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB4AC: db $2E ; ..p $0E | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB4AD: db $40 ; .s. $00 | 0x61 - BEAMOS\n #_0DB4AE: db $1E ; ... $1E | 0x62 - MASTERSWORD\n #_0DB4AF: db $53 ; .s. $13 | 0x63 - DEBIRANDO PIT\n #_0DB4B0: db $00 ; ... $00 | 0x64 - DEBIRANDO\n #_0DB4B1: db $0A ; ... $0A | 0x65 - ARCHERY GUY\n #_0DB4B2: db $00 ; ... $00 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB4B3: db $00 ; ... $00 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB4B4: db $00 ; ... $00 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB4B5: db $00 ; ... $00 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB4B6: db $12 ; ... $12 | 0x6A - BALL N CHAIN\n #_0DB4B7: db $12 ; ... $12 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB4B8: db $40 ; .s. $00 | 0x6C - MIRROR PORTAL\n #_0DB4B9: db $00 ; ... $00 | 0x6D - RAT / CRICKET\n #_0DB4BA: db $00 ; ... $00 | 0x6E - SNAKE\n #_0DB4BB: db $40 ; .s. $00 | 0x6F - KEESE\n #_0DB4BC: db $19 ; ... $19 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB4BD: db $00 ; ... $00 | 0x71 - LEEVER\n #_0DB4BE: db $00 ; ... $00 | 0x72 - FAIRY POND TRIGGER\n #_0DB4BF: db $0A ; ... $0A | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB4C0: db $0D ; ... $0D | 0x74 - RUNNING MAN\n #_0DB4C1: db $0A ; ... $0A | 0x75 - BOTTLE MERCHANT\n #_0DB4C2: db $0A ; ... $0A | 0x76 - ZELDA\n #_0DB4C3: db $80 ; i.. $00 | 0x77 - ANTIFAIRY\n #_0DB4C4: db $0A ; ... $0A | 0x78 - SAHASRAHLAS WIFE\n #_0DB4C5: db $41 ; .s. $01 | 0x79 - BEE\n #_0DB4C6: db $00 ; ... $00 | 0x7A - AGAHNIM\n #_0DB4C7: db $40 ; .s. $00 | 0x7B - AGAHNIMS BALLS\n #_0DB4C8: db $00 ; ... $00 | 0x7C - GREEN STALFOS\n #_0DB4C9: db $49 ; .s. $09 | 0x7D - BIG SPIKE\n #_0DB4CA: db $00 ; ... $00 | 0x7E - FIREBAR CLOCKWISE\n #_0DB4CB: db $00 ; ... $00 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB4CC: db $C0 ; is. $00 | 0x80 - FIRESNAKE\n #_0DB4CD: db $00 ; ... $00 | 0x81 - HOVER\n #_0DB4CE: db $40 ; .s. $00 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB4CF: db $00 ; ... $00 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB4D0: db $00 ; ... $00 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB4D1: db $40 ; .s. $00 | 0x85 - YELLOW STALFOS\n #_0DB4D2: db $00 ; ... $00 | 0x86 - KODONGO\n #_0DB4D3: db $00 ; ... $00 | 0x87 - KONDONGO FIRE\n #_0DB4D4: db $09 ; ... $09 | 0x88 - MOTHULA\n #_0DB4D5: db $80 ; i.. $00 | 0x89 - MOTHULA BEAM\n #_0DB4D6: db $C0 ; is. $00 | 0x8A - SPIKE BLOCK\n #_0DB4D7: db $00 ; ... $00 | 0x8B - GIBDO\n #_0DB4D8: db $40 ; .s. $00 | 0x8C - ARRGHUS\n #_0DB4D9: db $00 ; ... $00 | 0x8D - ARRGHI\n #_0DB4DA: db $00 ; ... $00 | 0x8E - TERRORPIN\n #_0DB4DB: db $80 ; i.. $00 | 0x8F - BLOB\n #_0DB4DC: db $00 ; ... $00 | 0x90 - WALLMASTER\n #_0DB4DD: db $00 ; ... $00 | 0x91 - STALFOS KNIGHT\n #_0DB4DE: db $18 ; ... $18 | 0x92 - KING HELMASAUR\n #_0DB4DF: db $5A ; .s. $1A | 0x93 - BUMPER\n #_0DB4E0: db $00 ; ... $00 | 0x94 - PIROGUSU\n #_0DB4E1: db $D4 ; is. $14 | 0x95 - LASER EYE LEFT\n #_0DB4E2: db $D4 ; is. $14 | 0x96 - LASER EYE RIGHT\n #_0DB4E3: db $D4 ; is. $14 | 0x97 - LASER EYE TOP\n #_0DB4E4: db $D4 ; is. $14 | 0x98 - LASER EYE BOTTOM\n #_0DB4E5: db $00 ; ... $00 | 0x99 - PENGATOR\n #_0DB4E6: db $40 ; .s. $00 | 0x9A - KYAMERON\n #_0DB4E7: db $00 ; ... $00 | 0x9B - WIZZROBE\n #_0DB4E8: db $80 ; i.. $00 | 0x9C - ZORO\n #_0DB4E9: db $80 ; i.. $00 | 0x9D - BABASU\n #_0DB4EA: db $40 ; .s. $00 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB4EB: db $40 ; .s. $00 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB4EC: db $40 ; .s. $00 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB4ED: db $00 ; ... $00 | 0xA1 - FREEZOR\n #_0DB4EE: db $09 ; ... $09 | 0xA2 - KHOLDSTARE\n #_0DB4EF: db $1D ; ... $1D | 0xA3 - KHOLDSTARE SHELL\n #_0DB4F0: db $00 ; ... $00 | 0xA4 - FALLING ICE\n #_0DB4F1: db $00 ; ... $00 | 0xA5 - BLUE ZAZAK\n #_0DB4F2: db $00 ; ... $00 | 0xA6 - RED ZAZAK\n #_0DB4F3: db $00 ; ... $00 | 0xA7 - STALFOS\n #_0DB4F4: db $00 ; ... $00 | 0xA8 - GREEN ZIRRO\n #_0DB4F5: db $00 ; ... $00 | 0xA9 - BLUE ZIRRO\n #_0DB4F6: db $00 ; ... $00 | 0xAA - PIKIT\n #_0DB4F7: db $00 ; ... $00 | 0xAB - CRYSTAL MAIDEN\n #_0DB4F8: db $00 ; ... $00 | 0xAC - APPLE\n #_0DB4F9: db $0A ; ... $0A | 0xAD - OLD MAN\n #_0DB4FA: db $1B ; ... $1B | 0xAE - PIPE DOWN\n #_0DB4FB: db $1B ; ... $1B | 0xAF - PIPE UP\n #_0DB4FC: db $1B ; ... $1B | 0xB0 - PIPE RIGHT\n #_0DB4FD: db $1B ; ... $1B | 0xB1 - PIPE LEFT\n #_0DB4FE: db $41 ; .s. $01 | 0xB2 - GOOD BEE\n #_0DB4FF: db $00 ; ... $00 | 0xB3 - PEDESTAL PLAQUE\n #_0DB500: db $03 ; ... $03 | 0xB4 - PURPLE CHEST\n #_0DB501: db $07 ; ... $07 | 0xB5 - BOMB SHOP GUY\n #_0DB502: db $07 ; ... $07 | 0xB6 - KIKI\n #_0DB503: db $03 ; ... $03 | 0xB7 - BLIND MAIDEN\n #_0DB504: db $0A ; ... $0A | 0xB8 - DIALOGUE TESTER\n #_0DB505: db $00 ; ... $00 | 0xB9 - BULLY / PINK BALL\n #_0DB506: db $01 ; ... $01 | 0xBA - WHIRLPOOL\n #_0DB507: db $0A ; ... $0A | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB508: db $0A ; ... $0A | 0xBC - DRUNKARD\n #_0DB509: db $09 ; ... $09 | 0xBD - VITREOUS\n #_0DB50A: db $00 ; ... $00 | 0xBE - VITREOUS SMALL EYE\n #_0DB50B: db $00 ; ... $00 | 0xBF - LIGHTNING\n #_0DB50C: db $00 ; ... $00 | 0xC0 - CATFISH\n #_0DB50D: db $00 ; ... $00 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB50E: db $09 ; ... $09 | 0xC2 - BOULDER\n #_0DB50F: db $00 ; ... $00 | 0xC3 - GIBO\n #_0DB510: db $00 ; ... $00 | 0xC4 - THIEF\n #_0DB511: db $40 ; .s. $00 | 0xC5 - MEDUSA\n #_0DB512: db $40 ; .s. $00 | 0xC6 - 4WAY SHOOTER\n #_0DB513: db $00 ; ... $00 | 0xC7 - POKEY\n #_0DB514: db $00 ; ... $00 | 0xC8 - BIG FAIRY\n #_0DB515: db $00 ; ... $00 | 0xC9 - TEKTITE / FIREBAT\n #_0DB516: db $00 ; ... $00 | 0xCA - CHAIN CHOMP\n #_0DB517: db $89 ; i.. $09 | 0xCB - TRINEXX ROCK HEAD\n #_0DB518: db $80 ; i.. $00 | 0xCC - TRINEXX FIRE HEAD\n #_0DB519: db $80 ; i.. $00 | 0xCD - TRINEXX ICE HEAD\n #_0DB51A: db $00 ; ... $00 | 0xCE - BLIND\n #_0DB51B: db $1C ; ... $1C | 0xCF - SWAMOLA\n #_0DB51C: db $00 ; ... $00 | 0xD0 - LYNEL\n #_0DB51D: db $40 ; .s. $00 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB51E: db $00 ; ... $00 | 0xD2 - FLOPPING FISH\n #_0DB51F: db $00 ; ... $00 | 0xD3 - STAL\n #_0DB520: db $1C ; ... $1C | 0xD4 - LANDMINE\n #_0DB521: db $07 ; ... $07 | 0xD5 - DIG GAME GUY\n #_0DB522: db $03 ; ... $03 | 0xD6 - GANON\n #_0DB523: db $03 ; ... $03 | 0xD7 - GANON\n #_0DB524: db $44 ; .s. $04 | 0xD8 - HEART\n #_0DB525: db $44 ; .s. $04 | 0xD9 - GREEN RUPEE\n #_0DB526: db $44 ; .s. $04 | 0xDA - BLUE RUPEE\n #_0DB527: db $44 ; .s. $04 | 0xDB - RED RUPEE\n #_0DB528: db $44 ; .s. $04 | 0xDC - BOMB REFILL 1\n #_0DB529: db $44 ; .s. $04 | 0xDD - BOMB REFILL 4\n #_0DB52A: db $44 ; .s. $04 | 0xDE - BOMB REFILL 8\n #_0DB52B: db $44 ; .s. $04 | 0xDF - SMALL MAGIC DECANTER\n #_0DB52C: db $44 ; .s. $04 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB52D: db $44 ; .s. $04 | 0xE1 - ARROW REFILL 5\n #_0DB52E: db $44 ; .s. $04 | 0xE2 - ARROW REFILL 10\n #_0DB52F: db $43 ; .s. $03 | 0xE3 - FAIRY\n #_0DB530: db $44 ; .s. $04 | 0xE4 - SMALL KEY\n #_0DB531: db $43 ; .s. $03 | 0xE5 - BIG KEY\n #_0DB532: db $40 ; .s. $00 | 0xE6 - STOLEN SHIELD\n #_0DB533: db $C0 ; is. $00 | 0xE7 - MUSHROOM\n #_0DB534: db $C0 ; is. $00 | 0xE8 - FAKE MASTER SWORD\n #_0DB535: db $C7 ; is. $07 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB536: db $C3 ; is. $03 | 0xEA - HEART CONTAINER\n #_0DB537: db $C3 ; is. $03 | 0xEB - HEART PIECE\n #_0DB538: db $C0 ; is. $00 | 0xEC - THROWN ITEM\n #_0DB539: db $1B ; ... $1B | 0xED - SOMARIA PLATFORM\n #_0DB53A: db $08 ; ... $08 | 0xEE - CASTLE MANTLE\n #_0DB53B: db $1B ; ... $1B | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB53C: db $1B ; ... $1B | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB53D: db $1B ; ... $1B | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB53E: db $03 ; ... $03 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_TileInteraction", + "code": "SpriteData_TileInteraction:\n #_0DB53F: db $00 ; .... $0 | 0x00 - RAVEN\n #_0DB540: db $00 ; .... $0 | 0x01 - VULTURE\n #_0DB541: db $00 ; .... $0 | 0x02 - STALFOS HEAD\n #_0DB542: db $00 ; .... $0 | 0x03 - NULL\n #_0DB543: db $00 ; .... $0 | 0x04 - CORRECT PULL SWITCH\n #_0DB544: db $00 ; .... $0 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB545: db $00 ; .... $0 | 0x06 - WRONG PULL SWITCH\n #_0DB546: db $00 ; .... $0 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB547: db $00 ; .... $0 | 0x08 - OCTOROK\n #_0DB548: db $0A ; a.b. $0 | 0x09 - MOLDORM\n #_0DB549: db $00 ; .... $0 | 0x0A - OCTOROK 4WAY\n #_0DB54A: db $01 ; ...p $0 | 0x0B - CUCCO\n #_0DB54B: db $30 ; .... $0 | 0x0C - OCTOROK STONE\n #_0DB54C: db $00 ; .... $0 | 0x0D - BUZZBLOB\n #_0DB54D: db $00 ; .... $0 | 0x0E - SNAPDRAGON\n #_0DB54E: db $20 ; .... $0 | 0x0F - OCTOBALLOON\n #_0DB54F: db $10 ; .... $0 | 0x10 - OCTOBALLOON BABY\n #_0DB550: db $00 ; .... $0 | 0x11 - HINOX\n #_0DB551: db $00 ; .... $0 | 0x12 - MOBLIN\n #_0DB552: db $01 ; ...p $0 | 0x13 - MINI HELMASAUR\n #_0DB553: db $00 ; .... $0 | 0x14 - THIEVES TOWN GRATE\n #_0DB554: db $00 ; .... $0 | 0x15 - ANTIFAIRY\n #_0DB555: db $00 ; .... $0 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB556: db $00 ; .... $0 | 0x17 - HOARDER\n #_0DB557: db $00 ; .... $0 | 0x18 - MINI MOLDORM\n #_0DB558: db $00 ; .... $0 | 0x19 - POE\n #_0DB559: db $00 ; .... $0 | 0x1A - SMITHY\n #_0DB55A: db $08 ; a... $0 | 0x1B - ARROW\n #_0DB55B: db $20 ; .... $0 | 0x1C - STATUE\n #_0DB55C: db $00 ; .... $0 | 0x1D - FLUTEQUEST\n #_0DB55D: db $04 ; .s.. $0 | 0x1E - CRYSTAL SWITCH\n #_0DB55E: db $00 ; .... $0 | 0x1F - SICK KID\n #_0DB55F: db $00 ; .... $0 | 0x20 - SLUGGULA\n #_0DB560: db $00 ; .... $0 | 0x21 - WATER SWITCH\n #_0DB561: db $00 ; .... $0 | 0x22 - ROPA\n #_0DB562: db $00 ; .... $0 | 0x23 - RED BARI\n #_0DB563: db $00 ; .... $0 | 0x24 - BLUE BARI\n #_0DB564: db $00 ; .... $0 | 0x25 - TALKING TREE\n #_0DB565: db $01 ; ...p $0 | 0x26 - HARDHAT BEETLE\n #_0DB566: db $04 ; .s.. $0 | 0x27 - DEADROCK\n #_0DB567: db $00 ; .... $0 | 0x28 - DARK WORLD HINT NPC\n #_0DB568: db $00 ; .... $0 | 0x29 - ADULT\n #_0DB569: db $00 ; .... $0 | 0x2A - SWEEPING LADY\n #_0DB56A: db $00 ; .... $0 | 0x2B - HOBO\n #_0DB56B: db $00 ; .... $0 | 0x2C - LUMBERJACKS\n #_0DB56C: db $00 ; .... $0 | 0x2D - NECKLESS MAN\n #_0DB56D: db $00 ; .... $0 | 0x2E - FLUTE KID\n #_0DB56E: db $00 ; .... $0 | 0x2F - RACE GAME LADY\n #_0DB56F: db $00 ; .... $0 | 0x30 - RACE GAME GUY\n #_0DB570: db $00 ; .... $0 | 0x31 - FORTUNE TELLER\n #_0DB571: db $00 ; .... $0 | 0x32 - ARGUE BROS\n #_0DB572: db $00 ; .... $0 | 0x33 - RUPEE PULL\n #_0DB573: db $00 ; .... $0 | 0x34 - YOUNG SNITCH\n #_0DB574: db $00 ; .... $0 | 0x35 - INNKEEPER\n #_0DB575: db $00 ; .... $0 | 0x36 - WITCH\n #_0DB576: db $00 ; .... $0 | 0x37 - WATERFALL\n #_0DB577: db $00 ; .... $0 | 0x38 - EYE STATUE\n #_0DB578: db $00 ; .... $0 | 0x39 - LOCKSMITH\n #_0DB579: db $00 ; .... $0 | 0x3A - MAGIC BAT\n #_0DB57A: db $00 ; .... $0 | 0x3B - BONK ITEM\n #_0DB57B: db $00 ; .... $0 | 0x3C - KID IN KAK\n #_0DB57C: db $00 ; .... $0 | 0x3D - OLD SNITCH\n #_0DB57D: db $00 ; .... $0 | 0x3E - HOARDER\n #_0DB57E: db $68 ; a... $0 | 0x3F - TUTORIAL GUARD\n #_0DB57F: db $60 ; .... $0 | 0x40 - LIGHTNING GATE\n #_0DB580: db $61 ; ...p $0 | 0x41 - BLUE GUARD\n #_0DB581: db $61 ; ...p $0 | 0x42 - GREEN GUARD\n #_0DB582: db $61 ; ...p $0 | 0x43 - RED SPEAR GUARD\n #_0DB583: db $61 ; ...p $0 | 0x44 - BLUESAIN BOLT\n #_0DB584: db $61 ; ...p $0 | 0x45 - USAIN BOLT\n #_0DB585: db $61 ; ...p $0 | 0x46 - BLUE ARCHER\n #_0DB586: db $61 ; ...p $0 | 0x47 - GREEN BUSH GUARD\n #_0DB587: db $61 ; ...p $0 | 0x48 - RED JAVELIN GUARD\n #_0DB588: db $61 ; ...p $0 | 0x49 - RED BUSH GUARD\n #_0DB589: db $61 ; ...p $0 | 0x4A - BOMB GUARD\n #_0DB58A: db $61 ; ...p $0 | 0x4B - GREEN KNIFE GUARD\n #_0DB58B: db $00 ; .... $0 | 0x4C - GELDMAN\n #_0DB58C: db $00 ; .... $0 | 0x4D - TOPPO\n #_0DB58D: db $00 ; .... $0 | 0x4E - POPO\n #_0DB58E: db $00 ; .... $0 | 0x4F - POPO\n #_0DB58F: db $00 ; .... $0 | 0x50 - CANNONBALL\n #_0DB590: db $00 ; .... $0 | 0x51 - ARMOS STATUE\n #_0DB591: db $02 ; ..b. $0 | 0x52 - KING ZORA\n #_0DB592: db $02 ; ..b. $0 | 0x53 - ARMOS KNIGHT\n #_0DB593: db $02 ; ..b. $0 | 0x54 - LANMOLAS\n #_0DB594: db $00 ; .... $0 | 0x55 - ZORA / FIREBALL\n #_0DB595: db $00 ; .... $0 | 0x56 - ZORA\n #_0DB596: db $70 ; .... $0 | 0x57 - DESERT STATUE\n #_0DB597: db $00 ; .... $0 | 0x58 - CRAB\n #_0DB598: db $00 ; .... $0 | 0x59 - LOST WOODS BIRD\n #_0DB599: db $00 ; .... $0 | 0x5A - LOST WOODS SQUIRREL\n #_0DB59A: db $90 ; .... $0 | 0x5B - SPARK\n #_0DB59B: db $90 ; .... $0 | 0x5C - SPARK\n #_0DB59C: db $00 ; .... $0 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB59D: db $00 ; .... $0 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB59E: db $00 ; .... $0 | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB59F: db $00 ; .... $0 | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB5A0: db $00 ; .... $0 | 0x61 - BEAMOS\n #_0DB5A1: db $00 ; .... $0 | 0x62 - MASTERSWORD\n #_0DB5A2: db $00 ; .... $0 | 0x63 - DEBIRANDO PIT\n #_0DB5A3: db $00 ; .... $0 | 0x64 - DEBIRANDO\n #_0DB5A4: db $00 ; .... $0 | 0x65 - ARCHERY GUY\n #_0DB5A5: db $00 ; .... $0 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB5A6: db $00 ; .... $0 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB5A7: db $00 ; .... $0 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB5A8: db $00 ; .... $0 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB5A9: db $60 ; .... $0 | 0x6A - BALL N CHAIN\n #_0DB5AA: db $60 ; .... $0 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB5AB: db $00 ; .... $0 | 0x6C - MIRROR PORTAL\n #_0DB5AC: db $00 ; .... $0 | 0x6D - RAT / CRICKET\n #_0DB5AD: db $00 ; .... $0 | 0x6E - SNAKE\n #_0DB5AE: db $00 ; .... $0 | 0x6F - KEESE\n #_0DB5AF: db $00 ; .... $0 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB5B0: db $00 ; .... $0 | 0x71 - LEEVER\n #_0DB5B1: db $00 ; .... $0 | 0x72 - FAIRY POND TRIGGER\n #_0DB5B2: db $00 ; .... $0 | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB5B3: db $00 ; .... $0 | 0x74 - RUNNING MAN\n #_0DB5B4: db $00 ; .... $0 | 0x75 - BOTTLE MERCHANT\n #_0DB5B5: db $00 ; .... $0 | 0x76 - ZELDA\n #_0DB5B6: db $80 ; .... $0 | 0x77 - ANTIFAIRY\n #_0DB5B7: db $00 ; .... $0 | 0x78 - SAHASRAHLAS WIFE\n #_0DB5B8: db $00 ; .... $0 | 0x79 - BEE\n #_0DB5B9: db $02 ; ..b. $0 | 0x7A - AGAHNIM\n #_0DB5BA: db $00 ; .... $0 | 0x7B - AGAHNIMS BALLS\n #_0DB5BB: db $00 ; .... $0 | 0x7C - GREEN STALFOS\n #_0DB5BC: db $70 ; .... $0 | 0x7D - BIG SPIKE\n #_0DB5BD: db $00 ; .... $0 | 0x7E - FIREBAR CLOCKWISE\n #_0DB5BE: db $00 ; .... $0 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB5BF: db $00 ; .... $0 | 0x80 - FIRESNAKE\n #_0DB5C0: db $00 ; .... $0 | 0x81 - HOVER\n #_0DB5C1: db $00 ; .... $0 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB5C2: db $00 ; .... $0 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB5C3: db $00 ; .... $0 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB5C4: db $00 ; .... $0 | 0x85 - YELLOW STALFOS\n #_0DB5C5: db $B0 ; .... $0 | 0x86 - KODONGO\n #_0DB5C6: db $00 ; .... $0 | 0x87 - KONDONGO FIRE\n #_0DB5C7: db $C2 ; ..b. $0 | 0x88 - MOTHULA\n #_0DB5C8: db $00 ; .... $0 | 0x89 - MOTHULA BEAM\n #_0DB5C9: db $20 ; .... $0 | 0x8A - SPIKE BLOCK\n #_0DB5CA: db $00 ; .... $0 | 0x8B - GIBDO\n #_0DB5CB: db $02 ; ..b. $0 | 0x8C - ARRGHUS\n #_0DB5CC: db $00 ; .... $0 | 0x8D - ARRGHI\n #_0DB5CD: db $00 ; .... $0 | 0x8E - TERRORPIN\n #_0DB5CE: db $00 ; .... $0 | 0x8F - BLOB\n #_0DB5CF: db $00 ; .... $0 | 0x90 - WALLMASTER\n #_0DB5D0: db $00 ; .... $0 | 0x91 - STALFOS KNIGHT\n #_0DB5D1: db $02 ; ..b. $0 | 0x92 - KING HELMASAUR\n #_0DB5D2: db $00 ; .... $0 | 0x93 - BUMPER\n #_0DB5D3: db $B0 ; .... $0 | 0x94 - PIROGUSU\n #_0DB5D4: db $00 ; .... $0 | 0x95 - LASER EYE LEFT\n #_0DB5D5: db $00 ; .... $0 | 0x96 - LASER EYE RIGHT\n #_0DB5D6: db $00 ; .... $0 | 0x97 - LASER EYE TOP\n #_0DB5D7: db $00 ; .... $0 | 0x98 - LASER EYE BOTTOM\n #_0DB5D8: db $00 ; .... $0 | 0x99 - PENGATOR\n #_0DB5D9: db $00 ; .... $0 | 0x9A - KYAMERON\n #_0DB5DA: db $00 ; .... $0 | 0x9B - WIZZROBE\n #_0DB5DB: db $A0 ; .... $0 | 0x9C - ZORO\n #_0DB5DC: db $A0 ; .... $0 | 0x9D - BABASU\n #_0DB5DD: db $00 ; .... $0 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB5DE: db $00 ; .... $0 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB5DF: db $00 ; .... $0 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB5E0: db $04 ; .s.. $0 | 0xA1 - FREEZOR\n #_0DB5E1: db $02 ; ..b. $0 | 0xA2 - KHOLDSTARE\n #_0DB5E2: db $00 ; .... $0 | 0xA3 - KHOLDSTARE SHELL\n #_0DB5E3: db $00 ; .... $0 | 0xA4 - FALLING ICE\n #_0DB5E4: db $00 ; .... $0 | 0xA5 - BLUE ZAZAK\n #_0DB5E5: db $00 ; .... $0 | 0xA6 - RED ZAZAK\n #_0DB5E6: db $00 ; .... $0 | 0xA7 - STALFOS\n #_0DB5E7: db $00 ; .... $0 | 0xA8 - GREEN ZIRRO\n #_0DB5E8: db $00 ; .... $0 | 0xA9 - BLUE ZIRRO\n #_0DB5E9: db $00 ; .... $0 | 0xAA - PIKIT\n #_0DB5EA: db $00 ; .... $0 | 0xAB - CRYSTAL MAIDEN\n #_0DB5EB: db $00 ; .... $0 | 0xAC - APPLE\n #_0DB5EC: db $00 ; .... $0 | 0xAD - OLD MAN\n #_0DB5ED: db $00 ; .... $0 | 0xAE - PIPE DOWN\n #_0DB5EE: db $00 ; .... $0 | 0xAF - PIPE UP\n #_0DB5EF: db $00 ; .... $0 | 0xB0 - PIPE RIGHT\n #_0DB5F0: db $00 ; .... $0 | 0xB1 - PIPE LEFT\n #_0DB5F1: db $00 ; .... $0 | 0xB2 - GOOD BEE\n #_0DB5F2: db $00 ; .... $0 | 0xB3 - PEDESTAL PLAQUE\n #_0DB5F3: db $00 ; .... $0 | 0xB4 - PURPLE CHEST\n #_0DB5F4: db $00 ; .... $0 | 0xB5 - BOMB SHOP GUY\n #_0DB5F5: db $00 ; .... $0 | 0xB6 - KIKI\n #_0DB5F6: db $00 ; .... $0 | 0xB7 - BLIND MAIDEN\n #_0DB5F7: db $00 ; .... $0 | 0xB8 - DIALOGUE TESTER\n #_0DB5F8: db $00 ; .... $0 | 0xB9 - BULLY / PINK BALL\n #_0DB5F9: db $00 ; .... $0 | 0xBA - WHIRLPOOL\n #_0DB5FA: db $00 ; .... $0 | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB5FB: db $00 ; .... $0 | 0xBC - DRUNKARD\n #_0DB5FC: db $C2 ; ..b. $0 | 0xBD - VITREOUS\n #_0DB5FD: db $00 ; .... $0 | 0xBE - VITREOUS SMALL EYE\n #_0DB5FE: db $00 ; .... $0 | 0xBF - LIGHTNING\n #_0DB5FF: db $00 ; .... $0 | 0xC0 - CATFISH\n #_0DB600: db $00 ; .... $0 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB601: db $00 ; .... $0 | 0xC2 - BOULDER\n #_0DB602: db $00 ; .... $0 | 0xC3 - GIBO\n #_0DB603: db $04 ; .s.. $0 | 0xC4 - THIEF\n #_0DB604: db $00 ; .... $0 | 0xC5 - MEDUSA\n #_0DB605: db $00 ; .... $0 | 0xC6 - 4WAY SHOOTER\n #_0DB606: db $00 ; .... $0 | 0xC7 - POKEY\n #_0DB607: db $00 ; .... $0 | 0xC8 - BIG FAIRY\n #_0DB608: db $00 ; .... $0 | 0xC9 - TEKTITE / FIREBAT\n #_0DB609: db $00 ; .... $0 | 0xCA - CHAIN CHOMP\n #_0DB60A: db $02 ; ..b. $0 | 0xCB - TRINEXX ROCK HEAD\n #_0DB60B: db $02 ; ..b. $0 | 0xCC - TRINEXX FIRE HEAD\n #_0DB60C: db $02 ; ..b. $0 | 0xCD - TRINEXX ICE HEAD\n #_0DB60D: db $02 ; ..b. $0 | 0xCE - BLIND\n #_0DB60E: db $00 ; .... $0 | 0xCF - SWAMOLA\n #_0DB60F: db $00 ; .... $0 | 0xD0 - LYNEL\n #_0DB610: db $00 ; .... $0 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB611: db $00 ; .... $0 | 0xD2 - FLOPPING FISH\n #_0DB612: db $00 ; .... $0 | 0xD3 - STAL\n #_0DB613: db $00 ; .... $0 | 0xD4 - LANDMINE\n #_0DB614: db $00 ; .... $0 | 0xD5 - DIG GAME GUY\n #_0DB615: db $0A ; a.b. $0 | 0xD6 - GANON\n #_0DB616: db $0A ; a.b. $0 | 0xD7 - GANON\n #_0DB617: db $10 ; .... $0 | 0xD8 - HEART\n #_0DB618: db $10 ; .... $0 | 0xD9 - GREEN RUPEE\n #_0DB619: db $10 ; .... $0 | 0xDA - BLUE RUPEE\n #_0DB61A: db $10 ; .... $0 | 0xDB - RED RUPEE\n #_0DB61B: db $00 ; .... $0 | 0xDC - BOMB REFILL 1\n #_0DB61C: db $00 ; .... $0 | 0xDD - BOMB REFILL 4\n #_0DB61D: db $00 ; .... $0 | 0xDE - BOMB REFILL 8\n #_0DB61E: db $10 ; .... $0 | 0xDF - SMALL MAGIC DECANTER\n #_0DB61F: db $10 ; .... $0 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB620: db $10 ; .... $0 | 0xE1 - ARROW REFILL 5\n #_0DB621: db $10 ; .... $0 | 0xE2 - ARROW REFILL 10\n #_0DB622: db $00 ; .... $0 | 0xE3 - FAIRY\n #_0DB623: db $10 ; .... $0 | 0xE4 - SMALL KEY\n #_0DB624: db $00 ; .... $0 | 0xE5 - BIG KEY\n #_0DB625: db $00 ; .... $0 | 0xE6 - STOLEN SHIELD\n #_0DB626: db $00 ; .... $0 | 0xE7 - MUSHROOM\n #_0DB627: db $00 ; .... $0 | 0xE8 - FAKE MASTER SWORD\n #_0DB628: db $00 ; .... $0 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB629: db $00 ; .... $0 | 0xEA - HEART CONTAINER\n #_0DB62A: db $00 ; .... $0 | 0xEB - HEART PIECE\n #_0DB62B: db $00 ; .... $0 | 0xEC - THROWN ITEM\n #_0DB62C: db $00 ; .... $0 | 0xED - SOMARIA PLATFORM\n #_0DB62D: db $00 ; .... $0 | 0xEE - CASTLE MANTLE\n #_0DB62E: db $00 ; .... $0 | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB62F: db $00 ; .... $0 | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB630: db $00 ; .... $0 | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB631: db $00 ; .... $0 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_PrizePack", + "code": "SpriteData_PrizePack:\n #_0DB632: db $83 ; i... $3 | 0x00 - RAVEN\n #_0DB633: db $96 ; i..s $6 | 0x01 - VULTURE\n #_0DB634: db $84 ; i... $4 | 0x02 - STALFOS HEAD\n #_0DB635: db $80 ; i... $0 | 0x03 - NULL\n #_0DB636: db $80 ; i... $0 | 0x04 - CORRECT PULL SWITCH\n #_0DB637: db $80 ; i... $0 | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB638: db $80 ; i... $0 | 0x06 - WRONG PULL SWITCH\n #_0DB639: db $80 ; i... $0 | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB63A: db $02 ; .... $2 | 0x08 - OCTOROK\n #_0DB63B: db $00 ; .... $0 | 0x09 - MOLDORM\n #_0DB63C: db $02 ; .... $2 | 0x0A - OCTOROK 4WAY\n #_0DB63D: db $80 ; i... $0 | 0x0B - CUCCO\n #_0DB63E: db $A0 ; i.b. $0 | 0x0C - OCTOROK STONE\n #_0DB63F: db $83 ; i... $3 | 0x0D - BUZZBLOB\n #_0DB640: db $97 ; i..s $7 | 0x0E - SNAPDRAGON\n #_0DB641: db $80 ; i... $0 | 0x0F - OCTOBALLOON\n #_0DB642: db $80 ; i... $0 | 0x10 - OCTOBALLOON BABY\n #_0DB643: db $94 ; i..s $4 | 0x11 - HINOX\n #_0DB644: db $91 ; i..s $1 | 0x12 - MOBLIN\n #_0DB645: db $07 ; .... $7 | 0x13 - MINI HELMASAUR\n #_0DB646: db $00 ; .... $0 | 0x14 - THIEVES TOWN GRATE\n #_0DB647: db $80 ; i... $0 | 0x15 - ANTIFAIRY\n #_0DB648: db $00 ; .... $0 | 0x16 - SAHASRAHLA / AGINAH\n #_0DB649: db $80 ; i... $0 | 0x17 - HOARDER\n #_0DB64A: db $92 ; i..s $2 | 0x18 - MINI MOLDORM\n #_0DB64B: db $96 ; i..s $6 | 0x19 - POE\n #_0DB64C: db $80 ; i... $0 | 0x1A - SMITHY\n #_0DB64D: db $A0 ; i.b. $0 | 0x1B - ARROW\n #_0DB64E: db $00 ; .... $0 | 0x1C - STATUE\n #_0DB64F: db $00 ; .... $0 | 0x1D - FLUTEQUEST\n #_0DB650: db $00 ; .... $0 | 0x1E - CRYSTAL SWITCH\n #_0DB651: db $80 ; i... $0 | 0x1F - SICK KID\n #_0DB652: db $04 ; .... $4 | 0x20 - SLUGGULA\n #_0DB653: db $80 ; i... $0 | 0x21 - WATER SWITCH\n #_0DB654: db $82 ; i... $2 | 0x22 - ROPA\n #_0DB655: db $06 ; .... $6 | 0x23 - RED BARI\n #_0DB656: db $06 ; .... $6 | 0x24 - BLUE BARI\n #_0DB657: db $00 ; .... $0 | 0x25 - TALKING TREE\n #_0DB658: db $00 ; .... $0 | 0x26 - HARDHAT BEETLE\n #_0DB659: db $80 ; i... $0 | 0x27 - DEADROCK\n #_0DB65A: db $80 ; i... $0 | 0x28 - DARK WORLD HINT NPC\n #_0DB65B: db $80 ; i... $0 | 0x29 - ADULT\n #_0DB65C: db $80 ; i... $0 | 0x2A - SWEEPING LADY\n #_0DB65D: db $80 ; i... $0 | 0x2B - HOBO\n #_0DB65E: db $80 ; i... $0 | 0x2C - LUMBERJACKS\n #_0DB65F: db $80 ; i... $0 | 0x2D - NECKLESS MAN\n #_0DB660: db $80 ; i... $0 | 0x2E - FLUTE KID\n #_0DB661: db $80 ; i... $0 | 0x2F - RACE GAME LADY\n #_0DB662: db $80 ; i... $0 | 0x30 - RACE GAME GUY\n #_0DB663: db $80 ; i... $0 | 0x31 - FORTUNE TELLER\n #_0DB664: db $80 ; i... $0 | 0x32 - ARGUE BROS\n #_0DB665: db $80 ; i... $0 | 0x33 - RUPEE PULL\n #_0DB666: db $80 ; i... $0 | 0x34 - YOUNG SNITCH\n #_0DB667: db $80 ; i... $0 | 0x35 - INNKEEPER\n #_0DB668: db $80 ; i... $0 | 0x36 - WITCH\n #_0DB669: db $80 ; i... $0 | 0x37 - WATERFALL\n #_0DB66A: db $80 ; i... $0 | 0x38 - EYE STATUE\n #_0DB66B: db $80 ; i... $0 | 0x39 - LOCKSMITH\n #_0DB66C: db $80 ; i... $0 | 0x3A - MAGIC BAT\n #_0DB66D: db $00 ; .... $0 | 0x3B - BONK ITEM\n #_0DB66E: db $00 ; .... $0 | 0x3C - KID IN KAK\n #_0DB66F: db $80 ; i... $0 | 0x3D - OLD SNITCH\n #_0DB670: db $80 ; i... $0 | 0x3E - HOARDER\n #_0DB671: db $90 ; i..s $0 | 0x3F - TUTORIAL GUARD\n #_0DB672: db $80 ; i... $0 | 0x40 - LIGHTNING GATE\n #_0DB673: db $91 ; i..s $1 | 0x41 - BLUE GUARD\n #_0DB674: db $91 ; i..s $1 | 0x42 - GREEN GUARD\n #_0DB675: db $91 ; i..s $1 | 0x43 - RED SPEAR GUARD\n #_0DB676: db $97 ; i..s $7 | 0x44 - BLUESAIN BOLT\n #_0DB677: db $91 ; i..s $1 | 0x45 - USAIN BOLT\n #_0DB678: db $95 ; i..s $5 | 0x46 - BLUE ARCHER\n #_0DB679: db $95 ; i..s $5 | 0x47 - GREEN BUSH GUARD\n #_0DB67A: db $93 ; i..s $3 | 0x48 - RED JAVELIN GUARD\n #_0DB67B: db $97 ; i..s $7 | 0x49 - RED BUSH GUARD\n #_0DB67C: db $14 ; ...s $4 | 0x4A - BOMB GUARD\n #_0DB67D: db $91 ; i..s $1 | 0x4B - GREEN KNIFE GUARD\n #_0DB67E: db $92 ; i..s $2 | 0x4C - GELDMAN\n #_0DB67F: db $81 ; i... $1 | 0x4D - TOPPO\n #_0DB680: db $82 ; i... $2 | 0x4E - POPO\n #_0DB681: db $82 ; i... $2 | 0x4F - POPO\n #_0DB682: db $80 ; i... $0 | 0x50 - CANNONBALL\n #_0DB683: db $85 ; i... $5 | 0x51 - ARMOS STATUE\n #_0DB684: db $80 ; i... $0 | 0x52 - KING ZORA\n #_0DB685: db $80 ; i... $0 | 0x53 - ARMOS KNIGHT\n #_0DB686: db $80 ; i... $0 | 0x54 - LANMOLAS\n #_0DB687: db $04 ; .... $4 | 0x55 - ZORA / FIREBALL\n #_0DB688: db $04 ; .... $4 | 0x56 - ZORA\n #_0DB689: db $80 ; i... $0 | 0x57 - DESERT STATUE\n #_0DB68A: db $91 ; i..s $1 | 0x58 - CRAB\n #_0DB68B: db $80 ; i... $0 | 0x59 - LOST WOODS BIRD\n #_0DB68C: db $80 ; i... $0 | 0x5A - LOST WOODS SQUIRREL\n #_0DB68D: db $80 ; i... $0 | 0x5B - SPARK\n #_0DB68E: db $80 ; i... $0 | 0x5C - SPARK\n #_0DB68F: db $80 ; i... $0 | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB690: db $80 ; i... $0 | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB691: db $80 ; i... $0 | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB692: db $80 ; i... $0 | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB693: db $00 ; .... $0 | 0x61 - BEAMOS\n #_0DB694: db $80 ; i... $0 | 0x62 - MASTERSWORD\n #_0DB695: db $80 ; i... $0 | 0x63 - DEBIRANDO PIT\n #_0DB696: db $82 ; i... $2 | 0x64 - DEBIRANDO\n #_0DB697: db $8A ; i... $A | 0x65 - ARCHERY GUY\n #_0DB698: db $80 ; i... $0 | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB699: db $80 ; i... $0 | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB69A: db $80 ; i... $0 | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB69B: db $80 ; i... $0 | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB69C: db $92 ; i..s $2 | 0x6A - BALL N CHAIN\n #_0DB69D: db $91 ; i..s $1 | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB69E: db $80 ; i... $0 | 0x6C - MIRROR PORTAL\n #_0DB69F: db $82 ; i... $2 | 0x6D - RAT / CRICKET\n #_0DB6A0: db $81 ; i... $1 | 0x6E - SNAKE\n #_0DB6A1: db $81 ; i... $1 | 0x6F - KEESE\n #_0DB6A2: db $80 ; i... $0 | 0x70 - KING HELMASAUR FIREBALL\n #_0DB6A3: db $81 ; i... $1 | 0x71 - LEEVER\n #_0DB6A4: db $80 ; i... $0 | 0x72 - FAIRY POND TRIGGER\n #_0DB6A5: db $80 ; i... $0 | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB6A6: db $80 ; i... $0 | 0x74 - RUNNING MAN\n #_0DB6A7: db $80 ; i... $0 | 0x75 - BOTTLE MERCHANT\n #_0DB6A8: db $80 ; i... $0 | 0x76 - ZELDA\n #_0DB6A9: db $80 ; i... $0 | 0x77 - ANTIFAIRY\n #_0DB6AA: db $80 ; i... $0 | 0x78 - SAHASRAHLAS WIFE\n #_0DB6AB: db $80 ; i... $0 | 0x79 - BEE\n #_0DB6AC: db $80 ; i... $0 | 0x7A - AGAHNIM\n #_0DB6AD: db $80 ; i... $0 | 0x7B - AGAHNIMS BALLS\n #_0DB6AE: db $97 ; i..s $7 | 0x7C - GREEN STALFOS\n #_0DB6AF: db $80 ; i... $0 | 0x7D - BIG SPIKE\n #_0DB6B0: db $80 ; i... $0 | 0x7E - FIREBAR CLOCKWISE\n #_0DB6B1: db $80 ; i... $0 | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB6B2: db $80 ; i... $0 | 0x80 - FIRESNAKE\n #_0DB6B3: db $C2 ; iw.. $2 | 0x81 - HOVER\n #_0DB6B4: db $80 ; i... $0 | 0x82 - ANTIFAIRY CIRCLE\n #_0DB6B5: db $15 ; ...s $5 | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB6B6: db $15 ; ...s $5 | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB6B7: db $17 ; ...s $7 | 0x85 - YELLOW STALFOS\n #_0DB6B8: db $06 ; .... $6 | 0x86 - KODONGO\n #_0DB6B9: db $00 ; .... $0 | 0x87 - KONDONGO FIRE\n #_0DB6BA: db $80 ; i... $0 | 0x88 - MOTHULA\n #_0DB6BB: db $00 ; .... $0 | 0x89 - MOTHULA BEAM\n #_0DB6BC: db $C0 ; iw.. $0 | 0x8A - SPIKE BLOCK\n #_0DB6BD: db $13 ; ...s $3 | 0x8B - GIBDO\n #_0DB6BE: db $40 ; .w.. $0 | 0x8C - ARRGHUS\n #_0DB6BF: db $00 ; .... $0 | 0x8D - ARRGHI\n #_0DB6C0: db $02 ; .... $2 | 0x8E - TERRORPIN\n #_0DB6C1: db $06 ; .... $6 | 0x8F - BLOB\n #_0DB6C2: db $10 ; ...s $0 | 0x90 - WALLMASTER\n #_0DB6C3: db $14 ; ...s $4 | 0x91 - STALFOS KNIGHT\n #_0DB6C4: db $00 ; .... $0 | 0x92 - KING HELMASAUR\n #_0DB6C5: db $00 ; .... $0 | 0x93 - BUMPER\n #_0DB6C6: db $40 ; .w.. $0 | 0x94 - PIROGUSU\n #_0DB6C7: db $00 ; .... $0 | 0x95 - LASER EYE LEFT\n #_0DB6C8: db $00 ; .... $0 | 0x96 - LASER EYE RIGHT\n #_0DB6C9: db $00 ; .... $0 | 0x97 - LASER EYE TOP\n #_0DB6CA: db $00 ; .... $0 | 0x98 - LASER EYE BOTTOM\n #_0DB6CB: db $13 ; ...s $3 | 0x99 - PENGATOR\n #_0DB6CC: db $46 ; .w.. $6 | 0x9A - KYAMERON\n #_0DB6CD: db $11 ; ...s $1 | 0x9B - WIZZROBE\n #_0DB6CE: db $80 ; i... $0 | 0x9C - ZORO\n #_0DB6CF: db $80 ; i... $0 | 0x9D - BABASU\n #_0DB6D0: db $00 ; .... $0 | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB6D1: db $00 ; .... $0 | 0x9F - HAUNTED GROVE RABBIT\n #_0DB6D2: db $00 ; .... $0 | 0xA0 - HAUNTED GROVE BIRD\n #_0DB6D3: db $10 ; ...s $0 | 0xA1 - FREEZOR\n #_0DB6D4: db $00 ; .... $0 | 0xA2 - KHOLDSTARE\n #_0DB6D5: db $00 ; .... $0 | 0xA3 - KHOLDSTARE SHELL\n #_0DB6D6: db $00 ; .... $0 | 0xA4 - FALLING ICE\n #_0DB6D7: db $16 ; ...s $6 | 0xA5 - BLUE ZAZAK\n #_0DB6D8: db $16 ; ...s $6 | 0xA6 - RED ZAZAK\n #_0DB6D9: db $16 ; ...s $6 | 0xA7 - STALFOS\n #_0DB6DA: db $81 ; i... $1 | 0xA8 - GREEN ZIRRO\n #_0DB6DB: db $87 ; i... $7 | 0xA9 - BLUE ZIRRO\n #_0DB6DC: db $82 ; i... $2 | 0xAA - PIKIT\n #_0DB6DD: db $00 ; .... $0 | 0xAB - CRYSTAL MAIDEN\n #_0DB6DE: db $80 ; i... $0 | 0xAC - APPLE\n #_0DB6DF: db $80 ; i... $0 | 0xAD - OLD MAN\n #_0DB6E0: db $00 ; .... $0 | 0xAE - PIPE DOWN\n #_0DB6E1: db $00 ; .... $0 | 0xAF - PIPE UP\n #_0DB6E2: db $00 ; .... $0 | 0xB0 - PIPE RIGHT\n #_0DB6E3: db $00 ; .... $0 | 0xB1 - PIPE LEFT\n #_0DB6E4: db $80 ; i... $0 | 0xB2 - GOOD BEE\n #_0DB6E5: db $80 ; i... $0 | 0xB3 - PEDESTAL PLAQUE\n #_0DB6E6: db $00 ; .... $0 | 0xB4 - PURPLE CHEST\n #_0DB6E7: db $00 ; .... $0 | 0xB5 - BOMB SHOP GUY\n #_0DB6E8: db $00 ; .... $0 | 0xB6 - KIKI\n #_0DB6E9: db $00 ; .... $0 | 0xB7 - BLIND MAIDEN\n #_0DB6EA: db $00 ; .... $0 | 0xB8 - DIALOGUE TESTER\n #_0DB6EB: db $00 ; .... $0 | 0xB9 - BULLY / PINK BALL\n #_0DB6EC: db $00 ; .... $0 | 0xBA - WHIRLPOOL\n #_0DB6ED: db $00 ; .... $0 | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB6EE: db $00 ; .... $0 | 0xBC - DRUNKARD\n #_0DB6EF: db $00 ; .... $0 | 0xBD - VITREOUS\n #_0DB6F0: db $00 ; .... $0 | 0xBE - VITREOUS SMALL EYE\n #_0DB6F1: db $00 ; .... $0 | 0xBF - LIGHTNING\n #_0DB6F2: db $00 ; .... $0 | 0xC0 - CATFISH\n #_0DB6F3: db $00 ; .... $0 | 0xC1 - CUTSCENE AGAHNIM\n #_0DB6F4: db $00 ; .... $0 | 0xC2 - BOULDER\n #_0DB6F5: db $80 ; i... $0 | 0xC3 - GIBO\n #_0DB6F6: db $00 ; .... $0 | 0xC4 - THIEF\n #_0DB6F7: db $00 ; .... $0 | 0xC5 - MEDUSA\n #_0DB6F8: db $00 ; .... $0 | 0xC6 - 4WAY SHOOTER\n #_0DB6F9: db $17 ; ...s $7 | 0xC7 - POKEY\n #_0DB6FA: db $00 ; .... $0 | 0xC8 - BIG FAIRY\n #_0DB6FB: db $12 ; ...s $2 | 0xC9 - TEKTITE / FIREBAT\n #_0DB6FC: db $00 ; .... $0 | 0xCA - CHAIN CHOMP\n #_0DB6FD: db $00 ; .... $0 | 0xCB - TRINEXX ROCK HEAD\n #_0DB6FE: db $00 ; .... $0 | 0xCC - TRINEXX FIRE HEAD\n #_0DB6FF: db $00 ; .... $0 | 0xCD - TRINEXX ICE HEAD\n #_0DB700: db $00 ; .... $0 | 0xCE - BLIND\n #_0DB701: db $10 ; ...s $0 | 0xCF - SWAMOLA\n #_0DB702: db $17 ; ...s $7 | 0xD0 - LYNEL\n #_0DB703: db $00 ; .... $0 | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB704: db $40 ; .w.. $0 | 0xD2 - FLOPPING FISH\n #_0DB705: db $01 ; .... $1 | 0xD3 - STAL\n #_0DB706: db $00 ; .... $0 | 0xD4 - LANDMINE\n #_0DB707: db $00 ; .... $0 | 0xD5 - DIG GAME GUY\n #_0DB708: db $00 ; .... $0 | 0xD6 - GANON\n #_0DB709: db $00 ; .... $0 | 0xD7 - GANON\n #_0DB70A: db $00 ; .... $0 | 0xD8 - HEART\n #_0DB70B: db $00 ; .... $0 | 0xD9 - GREEN RUPEE\n #_0DB70C: db $00 ; .... $0 | 0xDA - BLUE RUPEE\n #_0DB70D: db $00 ; .... $0 | 0xDB - RED RUPEE\n #_0DB70E: db $00 ; .... $0 | 0xDC - BOMB REFILL 1\n #_0DB70F: db $00 ; .... $0 | 0xDD - BOMB REFILL 4\n #_0DB710: db $00 ; .... $0 | 0xDE - BOMB REFILL 8\n #_0DB711: db $00 ; .... $0 | 0xDF - SMALL MAGIC DECANTER\n #_0DB712: db $00 ; .... $0 | 0xE0 - LARGE MAGIC DECANTER\n #_0DB713: db $00 ; .... $0 | 0xE1 - ARROW REFILL 5\n #_0DB714: db $00 ; .... $0 | 0xE2 - ARROW REFILL 10\n #_0DB715: db $40 ; .w.. $0 | 0xE3 - FAIRY\n #_0DB716: db $00 ; .... $0 | 0xE4 - SMALL KEY\n #_0DB717: db $00 ; .... $0 | 0xE5 - BIG KEY\n #_0DB718: db $00 ; .... $0 | 0xE6 - STOLEN SHIELD\n #_0DB719: db $00 ; .... $0 | 0xE7 - MUSHROOM\n #_0DB71A: db $00 ; .... $0 | 0xE8 - FAKE MASTER SWORD\n #_0DB71B: db $00 ; .... $0 | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB71C: db $00 ; .... $0 | 0xEA - HEART CONTAINER\n #_0DB71D: db $00 ; .... $0 | 0xEB - HEART PIECE\n #_0DB71E: db $80 ; i... $0 | 0xEC - THROWN ITEM\n #_0DB71F: db $00 ; .... $0 | 0xED - SOMARIA PLATFORM\n #_0DB720: db $00 ; .... $0 | 0xEE - CASTLE MANTLE\n #_0DB721: db $00 ; .... $0 | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB722: db $00 ; .... $0 | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB723: db $00 ; .... $0 | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB724: db $00 ; .... $0 | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteData_Deflection", + "code": "SpriteData_Deflection:\n #_0DB725: db $00 ; .... .... | 0x00 - RAVEN\n #_0DB726: db $00 ; .... .... | 0x01 - VULTURE\n #_0DB727: db $44 ; .i.. .h.. | 0x02 - STALFOS HEAD\n #_0DB728: db $20 ; ..s. .... | 0x03 - NULL\n #_0DB729: db $20 ; ..s. .... | 0x04 - CORRECT PULL SWITCH\n #_0DB72A: db $20 ; ..s. .... | 0x05 - UNUSED CORRECT PULL SWITCH\n #_0DB72B: db $20 ; ..s. .... | 0x06 - WRONG PULL SWITCH\n #_0DB72C: db $20 ; ..s. .... | 0x07 - UNUSED WRONG PULL SWITCH\n #_0DB72D: db $00 ; .... .... | 0x08 - OCTOROK\n #_0DB72E: db $81 ; a... ...x | 0x09 - MOLDORM\n #_0DB72F: db $00 ; .... .... | 0x0A - OCTOROK 4WAY\n #_0DB730: db $00 ; .... .... | 0x0B - CUCCO\n #_0DB731: db $48 ; .i.. c... | 0x0C - OCTOROK STONE\n #_0DB732: db $00 ; .... .... | 0x0D - BUZZBLOB\n #_0DB733: db $00 ; .... .... | 0x0E - SNAPDRAGON\n #_0DB734: db $00 ; .... .... | 0x0F - OCTOBALLOON\n #_0DB735: db $00 ; .... .... | 0x10 - OCTOBALLOON BABY\n #_0DB736: db $00 ; .... .... | 0x11 - HINOX\n #_0DB737: db $00 ; .... .... | 0x12 - MOBLIN\n #_0DB738: db $00 ; .... .... | 0x13 - MINI HELMASAUR\n #_0DB739: db $00 ; .... .... | 0x14 - THIEVES TOWN GRATE\n #_0DB73A: db $00 ; .... .... | 0x15 - ANTIFAIRY\n #_0DB73B: db $04 ; .... .h.. | 0x16 - SAHASRAHLA / AGINAH\n #_0DB73C: db $00 ; .... .... | 0x17 - HOARDER\n #_0DB73D: db $00 ; .... .... | 0x18 - MINI MOLDORM\n #_0DB73E: db $00 ; .... .... | 0x19 - POE\n #_0DB73F: db $00 ; .... .... | 0x1A - SMITHY\n #_0DB740: db $48 ; .i.. c... | 0x1B - ARROW\n #_0DB741: db $24 ; ..s. .h.. | 0x1C - STATUE\n #_0DB742: db $80 ; a... .... | 0x1D - FLUTEQUEST\n #_0DB743: db $00 ; .... .... | 0x1E - CRYSTAL SWITCH\n #_0DB744: db $00 ; .... .... | 0x1F - SICK KID\n #_0DB745: db $00 ; .... .... | 0x20 - SLUGGULA\n #_0DB746: db $20 ; ..s. .... | 0x21 - WATER SWITCH\n #_0DB747: db $00 ; .... .... | 0x22 - ROPA\n #_0DB748: db $00 ; .... .... | 0x23 - RED BARI\n #_0DB749: db $00 ; .... .... | 0x24 - BLUE BARI\n #_0DB74A: db $80 ; a... .... | 0x25 - TALKING TREE\n #_0DB74B: db $00 ; .... .... | 0x26 - HARDHAT BEETLE\n #_0DB74C: db $00 ; .... .... | 0x27 - DEADROCK\n #_0DB74D: db $00 ; .... .... | 0x28 - DARK WORLD HINT NPC\n #_0DB74E: db $00 ; .... .... | 0x29 - ADULT\n #_0DB74F: db $00 ; .... .... | 0x2A - SWEEPING LADY\n #_0DB750: db $00 ; .... .... | 0x2B - HOBO\n #_0DB751: db $00 ; .... .... | 0x2C - LUMBERJACKS\n #_0DB752: db $00 ; .... .... | 0x2D - NECKLESS MAN\n #_0DB753: db $00 ; .... .... | 0x2E - FLUTE KID\n #_0DB754: db $80 ; a... .... | 0x2F - RACE GAME LADY\n #_0DB755: db $80 ; a... .... | 0x30 - RACE GAME GUY\n #_0DB756: db $00 ; .... .... | 0x31 - FORTUNE TELLER\n #_0DB757: db $00 ; .... .... | 0x32 - ARGUE BROS\n #_0DB758: db $00 ; .... .... | 0x33 - RUPEE PULL\n #_0DB759: db $00 ; .... .... | 0x34 - YOUNG SNITCH\n #_0DB75A: db $00 ; .... .... | 0x35 - INNKEEPER\n #_0DB75B: db $00 ; .... .... | 0x36 - WITCH\n #_0DB75C: db $80 ; a... .... | 0x37 - WATERFALL\n #_0DB75D: db $00 ; .... .... | 0x38 - EYE STATUE\n #_0DB75E: db $80 ; a... .... | 0x39 - LOCKSMITH\n #_0DB75F: db $00 ; .... .... | 0x3A - MAGIC BAT\n #_0DB760: db $02 ; .... ..b. | 0x3B - BONK ITEM\n #_0DB761: db $00 ; .... .... | 0x3C - KID IN KAK\n #_0DB762: db $00 ; .... .... | 0x3D - OLD SNITCH\n #_0DB763: db $00 ; .... .... | 0x3E - HOARDER\n #_0DB764: db $04 ; .... .h.. | 0x3F - TUTORIAL GUARD\n #_0DB765: db $80 ; a... .... | 0x40 - LIGHTNING GATE\n #_0DB766: db $00 ; .... .... | 0x41 - BLUE GUARD\n #_0DB767: db $00 ; .... .... | 0x42 - GREEN GUARD\n #_0DB768: db $00 ; .... .... | 0x43 - RED SPEAR GUARD\n #_0DB769: db $00 ; .... .... | 0x44 - BLUESAIN BOLT\n #_0DB76A: db $00 ; .... .... | 0x45 - USAIN BOLT\n #_0DB76B: db $00 ; .... .... | 0x46 - BLUE ARCHER\n #_0DB76C: db $00 ; .... .... | 0x47 - GREEN BUSH GUARD\n #_0DB76D: db $00 ; .... .... | 0x48 - RED JAVELIN GUARD\n #_0DB76E: db $00 ; .... .... | 0x49 - RED BUSH GUARD\n #_0DB76F: db $00 ; .... .... | 0x4A - BOMB GUARD\n #_0DB770: db $00 ; .... .... | 0x4B - GREEN KNIFE GUARD\n #_0DB771: db $00 ; .... .... | 0x4C - GELDMAN\n #_0DB772: db $00 ; .... .... | 0x4D - TOPPO\n #_0DB773: db $00 ; .... .... | 0x4E - POPO\n #_0DB774: db $00 ; .... .... | 0x4F - POPO\n #_0DB775: db $84 ; a... .h.. | 0x50 - CANNONBALL\n #_0DB776: db $00 ; .... .... | 0x51 - ARMOS STATUE\n #_0DB777: db $81 ; a... ...x | 0x52 - KING ZORA\n #_0DB778: db $05 ; .... .h.x | 0x53 - ARMOS KNIGHT\n #_0DB779: db $01 ; .... ...x | 0x54 - LANMOLAS\n #_0DB77A: db $40 ; .i.. .... | 0x55 - ZORA / FIREBALL\n #_0DB77B: db $08 ; .... c... | 0x56 - ZORA\n #_0DB77C: db $A0 ; a.s. .... | 0x57 - DESERT STATUE\n #_0DB77D: db $00 ; .... .... | 0x58 - CRAB\n #_0DB77E: db $00 ; .... .... | 0x59 - LOST WOODS BIRD\n #_0DB77F: db $00 ; .... .... | 0x5A - LOST WOODS SQUIRREL\n #_0DB780: db $00 ; .... .... | 0x5B - SPARK\n #_0DB781: db $00 ; .... .... | 0x5C - SPARK\n #_0DB782: db $84 ; a... .h.. | 0x5D - ROLLER VERTICAL DOWN FIRST\n #_0DB783: db $84 ; a... .h.. | 0x5E - ROLLER VERTICAL UP FIRST\n #_0DB784: db $84 ; a... .h.. | 0x5F - ROLLER HORIZONTAL RIGHT FIRST\n #_0DB785: db $84 ; a... .h.. | 0x60 - ROLLER HORIZONTAL LEFT FIRST\n #_0DB786: db $08 ; .... c... | 0x61 - BEAMOS\n #_0DB787: db $80 ; a... .... | 0x62 - MASTERSWORD\n #_0DB788: db $80 ; a... .... | 0x63 - DEBIRANDO PIT\n #_0DB789: db $80 ; a... .... | 0x64 - DEBIRANDO\n #_0DB78A: db $00 ; .... .... | 0x65 - ARCHERY GUY\n #_0DB78B: db $80 ; a... .... | 0x66 - WALL CANNON VERTICAL LEFT\n #_0DB78C: db $80 ; a... .... | 0x67 - WALL CANNON VERTICAL RIGHT\n #_0DB78D: db $80 ; a... .... | 0x68 - WALL CANNON HORIZONTAL TOP\n #_0DB78E: db $80 ; a... .... | 0x69 - WALL CANNON HORIZONTAL BOTTOM\n #_0DB78F: db $00 ; .... .... | 0x6A - BALL N CHAIN\n #_0DB790: db $08 ; .... c... | 0x6B - CANNONBALL / CANNON TROOPER\n #_0DB791: db $80 ; a... .... | 0x6C - MIRROR PORTAL\n #_0DB792: db $00 ; .... .... | 0x6D - RAT / CRICKET\n #_0DB793: db $00 ; .... .... | 0x6E - SNAKE\n #_0DB794: db $00 ; .... .... | 0x6F - KEESE\n #_0DB795: db $40 ; .i.. .... | 0x70 - KING HELMASAUR FIREBALL\n #_0DB796: db $00 ; .... .... | 0x71 - LEEVER\n #_0DB797: db $00 ; .... .... | 0x72 - FAIRY POND TRIGGER\n #_0DB798: db $00 ; .... .... | 0x73 - UNCLE / PRIEST / MANTLE\n #_0DB799: db $00 ; .... .... | 0x74 - RUNNING MAN\n #_0DB79A: db $00 ; .... .... | 0x75 - BOTTLE MERCHANT\n #_0DB79B: db $00 ; .... .... | 0x76 - ZELDA\n #_0DB79C: db $00 ; .... .... | 0x77 - ANTIFAIRY\n #_0DB79D: db $00 ; .... .... | 0x78 - SAHASRAHLAS WIFE\n #_0DB79E: db $02 ; .... ..b. | 0x79 - BEE\n #_0DB79F: db $01 ; .... ...x | 0x7A - AGAHNIM\n #_0DB7A0: db $00 ; .... .... | 0x7B - AGAHNIMS BALLS\n #_0DB7A1: db $00 ; .... .... | 0x7C - GREEN STALFOS\n #_0DB7A2: db $04 ; .... .h.. | 0x7D - BIG SPIKE\n #_0DB7A3: db $00 ; .... .... | 0x7E - FIREBAR CLOCKWISE\n #_0DB7A4: db $00 ; .... .... | 0x7F - FIREBAR COUNTERCLOCKWISE\n #_0DB7A5: db $00 ; .... .... | 0x80 - FIRESNAKE\n #_0DB7A6: db $00 ; .... .... | 0x81 - HOVER\n #_0DB7A7: db $80 ; a... .... | 0x82 - ANTIFAIRY CIRCLE\n #_0DB7A8: db $04 ; .... .h.. | 0x83 - GREEN EYEGORE / GREEN MIMIC\n #_0DB7A9: db $04 ; .... .h.. | 0x84 - RED EYEGORE / RED MIMIC\n #_0DB7AA: db $00 ; .... .... | 0x85 - YELLOW STALFOS\n #_0DB7AB: db $00 ; .... .... | 0x86 - KODONGO\n #_0DB7AC: db $48 ; .i.. c... | 0x87 - KONDONGO FIRE\n #_0DB7AD: db $00 ; .... .... | 0x88 - MOTHULA\n #_0DB7AE: db $00 ; .... .... | 0x89 - MOTHULA BEAM\n #_0DB7AF: db $04 ; .... .h.. | 0x8A - SPIKE BLOCK\n #_0DB7B0: db $00 ; .... .... | 0x8B - GIBDO\n #_0DB7B1: db $01 ; .... ...x | 0x8C - ARRGHUS\n #_0DB7B2: db $01 ; .... ...x | 0x8D - ARRGHI\n #_0DB7B3: db $00 ; .... .... | 0x8E - TERRORPIN\n #_0DB7B4: db $00 ; .... .... | 0x8F - BLOB\n #_0DB7B5: db $80 ; a... .... | 0x90 - WALLMASTER\n #_0DB7B6: db $00 ; .... .... | 0x91 - STALFOS KNIGHT\n #_0DB7B7: db $00 ; .... .... | 0x92 - KING HELMASAUR\n #_0DB7B8: db $00 ; .... .... | 0x93 - BUMPER\n #_0DB7B9: db $40 ; .i.. .... | 0x94 - PIROGUSU\n #_0DB7BA: db $08 ; .... c... | 0x95 - LASER EYE LEFT\n #_0DB7BB: db $08 ; .... c... | 0x96 - LASER EYE RIGHT\n #_0DB7BC: db $08 ; .... c... | 0x97 - LASER EYE TOP\n #_0DB7BD: db $08 ; .... c... | 0x98 - LASER EYE BOTTOM\n #_0DB7BE: db $00 ; .... .... | 0x99 - PENGATOR\n #_0DB7BF: db $00 ; .... .... | 0x9A - KYAMERON\n #_0DB7C0: db $00 ; .... .... | 0x9B - WIZZROBE\n #_0DB7C1: db $80 ; a... .... | 0x9C - ZORO\n #_0DB7C2: db $80 ; a... .... | 0x9D - BABASU\n #_0DB7C3: db $00 ; .... .... | 0x9E - HAUNTED GROVE OSTRITCH\n #_0DB7C4: db $00 ; .... .... | 0x9F - HAUNTED GROVE RABBIT\n #_0DB7C5: db $00 ; .... .... | 0xA0 - HAUNTED GROVE BIRD\n #_0DB7C6: db $04 ; .... .h.. | 0xA1 - FREEZOR\n #_0DB7C7: db $01 ; .... ...x | 0xA2 - KHOLDSTARE\n #_0DB7C8: db $05 ; .... .h.x | 0xA3 - KHOLDSTARE SHELL\n #_0DB7C9: db $00 ; .... .... | 0xA4 - FALLING ICE\n #_0DB7CA: db $00 ; .... .... | 0xA5 - BLUE ZAZAK\n #_0DB7CB: db $00 ; .... .... | 0xA6 - RED ZAZAK\n #_0DB7CC: db $00 ; .... .... | 0xA7 - STALFOS\n #_0DB7CD: db $00 ; .... .... | 0xA8 - GREEN ZIRRO\n #_0DB7CE: db $00 ; .... .... | 0xA9 - BLUE ZIRRO\n #_0DB7CF: db $00 ; .... .... | 0xAA - PIKIT\n #_0DB7D0: db $04 ; .... .h.. | 0xAB - CRYSTAL MAIDEN\n #_0DB7D1: db $02 ; .... ..b. | 0xAC - APPLE\n #_0DB7D2: db $00 ; .... .... | 0xAD - OLD MAN\n #_0DB7D3: db $80 ; a... .... | 0xAE - PIPE DOWN\n #_0DB7D4: db $80 ; a... .... | 0xAF - PIPE UP\n #_0DB7D5: db $80 ; a... .... | 0xB0 - PIPE RIGHT\n #_0DB7D6: db $80 ; a... .... | 0xB1 - PIPE LEFT\n #_0DB7D7: db $82 ; a... ..b. | 0xB2 - GOOD BEE\n #_0DB7D8: db $80 ; a... .... | 0xB3 - PEDESTAL PLAQUE\n #_0DB7D9: db $00 ; .... .... | 0xB4 - PURPLE CHEST\n #_0DB7DA: db $00 ; .... .... | 0xB5 - BOMB SHOP GUY\n #_0DB7DB: db $80 ; a... .... | 0xB6 - KIKI\n #_0DB7DC: db $00 ; .... .... | 0xB7 - BLIND MAIDEN\n #_0DB7DD: db $00 ; .... .... | 0xB8 - DIALOGUE TESTER\n #_0DB7DE: db $80 ; a... .... | 0xB9 - BULLY / PINK BALL\n #_0DB7DF: db $80 ; a... .... | 0xBA - WHIRLPOOL\n #_0DB7E0: db $00 ; .... .... | 0xBB - SHOPKEEPER / CHEST GAME GUY\n #_0DB7E1: db $00 ; .... .... | 0xBC - DRUNKARD\n #_0DB7E2: db $01 ; .... ...x | 0xBD - VITREOUS\n #_0DB7E3: db $01 ; .... ...x | 0xBE - VITREOUS SMALL EYE\n #_0DB7E4: db $40 ; .i.. .... | 0xBF - LIGHTNING\n #_0DB7E5: db $00 ; .... .... | 0xC0 - CATFISH\n #_0DB7E6: db $00 ; .... .... | 0xC1 - CUTSCENE AGAHNIM\n #_0DB7E7: db $04 ; .... .h.. | 0xC2 - BOULDER\n #_0DB7E8: db $00 ; .... .... | 0xC3 - GIBO\n #_0DB7E9: db $00 ; .... .... | 0xC4 - THIEF\n #_0DB7EA: db $00 ; .... .... | 0xC5 - MEDUSA\n #_0DB7EB: db $00 ; .... .... | 0xC6 - 4WAY SHOOTER\n #_0DB7EC: db $00 ; .... .... | 0xC7 - POKEY\n #_0DB7ED: db $00 ; .... .... | 0xC8 - BIG FAIRY\n #_0DB7EE: db $00 ; .... .... | 0xC9 - TEKTITE / FIREBAT\n #_0DB7EF: db $04 ; .... .h.. | 0xCA - CHAIN CHOMP\n #_0DB7F0: db $05 ; .... .h.x | 0xCB - TRINEXX ROCK HEAD\n #_0DB7F1: db $05 ; .... .h.x | 0xCC - TRINEXX FIRE HEAD\n #_0DB7F2: db $05 ; .... .h.x | 0xCD - TRINEXX ICE HEAD\n #_0DB7F3: db $80 ; a... .... | 0xCE - BLIND\n #_0DB7F4: db $80 ; a... .... | 0xCF - SWAMOLA\n #_0DB7F5: db $00 ; .... .... | 0xD0 - LYNEL\n #_0DB7F6: db $00 ; .... .... | 0xD1 - BUNNYBEAM / SMOKE\n #_0DB7F7: db $00 ; .... .... | 0xD2 - FLOPPING FISH\n #_0DB7F8: db $00 ; .... .... | 0xD3 - STAL\n #_0DB7F9: db $00 ; .... .... | 0xD4 - LANDMINE\n #_0DB7FA: db $00 ; .... .... | 0xD5 - DIG GAME GUY\n #_0DB7FB: db $00 ; .... .... | 0xD6 - GANON\n #_0DB7FC: db $00 ; .... .... | 0xD7 - GANON\n #_0DB7FD: db $02 ; .... ..b. | 0xD8 - HEART\n #_0DB7FE: db $02 ; .... ..b. | 0xD9 - GREEN RUPEE\n #_0DB7FF: db $02 ; .... ..b. | 0xDA - BLUE RUPEE\n #_0DB800: db $02 ; .... ..b. | 0xDB - RED RUPEE\n #_0DB801: db $02 ; .... ..b. | 0xDC - BOMB REFILL 1\n #_0DB802: db $02 ; .... ..b. | 0xDD - BOMB REFILL 4\n #_0DB803: db $02 ; .... ..b. | 0xDE - BOMB REFILL 8\n #_0DB804: db $02 ; .... ..b. | 0xDF - SMALL MAGIC DECANTER\n #_0DB805: db $02 ; .... ..b. | 0xE0 - LARGE MAGIC DECANTER\n #_0DB806: db $02 ; .... ..b. | 0xE1 - ARROW REFILL 5\n #_0DB807: db $02 ; .... ..b. | 0xE2 - ARROW REFILL 10\n #_0DB808: db $02 ; .... ..b. | 0xE3 - FAIRY\n #_0DB809: db $02 ; .... ..b. | 0xE4 - SMALL KEY\n #_0DB80A: db $02 ; .... ..b. | 0xE5 - BIG KEY\n #_0DB80B: db $02 ; .... ..b. | 0xE6 - STOLEN SHIELD\n #_0DB80C: db $02 ; .... ..b. | 0xE7 - MUSHROOM\n #_0DB80D: db $02 ; .... ..b. | 0xE8 - FAKE MASTER SWORD\n #_0DB80E: db $00 ; .... .... | 0xE9 - MAGIC SHOP ASSISTANT\n #_0DB80F: db $82 ; a... ..b. | 0xEA - HEART CONTAINER\n #_0DB810: db $82 ; a... ..b. | 0xEB - HEART PIECE\n #_0DB811: db $08 ; .... c... | 0xEC - THROWN ITEM\n #_0DB812: db $80 ; a... .... | 0xED - SOMARIA PLATFORM\n #_0DB813: db $20 ; ..s. .... | 0xEE - CASTLE MANTLE\n #_0DB814: db $80 ; a... .... | 0xEF - UNUSED SOMARIA PLATFORM\n #_0DB815: db $80 ; a... .... | 0xF0 - UNUSED SOMARIA PLATFORM\n #_0DB816: db $80 ; a... .... | 0xF1 - UNUSED SOMARIA PLATFORM\n #_0DB817: db $20 ; ..s. .... | 0xF2 - MEDALLION TABLET\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpritePrep_LoadProperties", + "code": "SpritePrep_LoadProperties:\n #_0DB818: JSL SpritePrep_ResetProperties\n\n #_0DB81C: PHY\n\n #_0DB81D: PHB\n #_0DB81E: PHK\n #_0DB81F: PLB\n\n #_0DB820: LDY.w $0E20,X\n\n #_0DB823: LDA.w SpriteData_OAMHarm,Y\n #_0DB826: STA.w $0E40,X\n\n #_0DB829: LDA.w SpriteData_Health,Y\n #_0DB82C: STA.w $0E50,X\n\n #_0DB82F: LDA.w SpriteData_HitBox,Y\n #_0DB832: STA.w $0F60,X\n\n #_0DB835: LDA.w SpriteData_PrizePack,Y\n #_0DB838: STA.w $0BE0,X\n\n #_0DB83B: LDA.w SpriteData_Deflection,Y\n #_0DB83E: STA.w $0CAA,X\n\n #_0DB841: LDA.w SpriteData_Bump,Y\n #_0DB844: STA.w $0CD2,X\n\n #_0DB847: LDA.w SpriteData_TileInteraction,Y\n #_0DB84A: STA.w SprTileDie,X\n\n #_0DB84D: LDA.w $040A\n\n #_0DB850: LDY.b $1B\n #_0DB852: BEQ .outdoors\n\n #_0DB854: LDA.w $048E\n\n.outdoors\n #_0DB857: STA.w $0C9A,X\n\n #_0DB85A: PLB\n #_0DB85B: PLY\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpritePrep_LoadPalette", + "code": "SpritePrep_LoadPalette:\n #_0DB85C: PHY\n\n #_0DB85D: PHB\n #_0DB85E: PHK\n #_0DB85F: PLB\n\n #_0DB860: LDY.w $0E20,X\n\n #_0DB863: LDA.w SpriteData_OAMProp,Y\n #_0DB866: STA.w $0E60,X\n\n #_0DB869: AND.b #$0F\n #_0DB86B: STA.w $0F50,X\n\n #_0DB86E: PLB\n\n #_0DB86F: PLY\n\n #_0DB870: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpritePrep_ResetProperties", + "code": "SpritePrep_ResetProperties:\n #_0DB871: STZ.w $0F00,X\n #_0DB874: STZ.w $0E90,X\n #_0DB877: STZ.w $0D50,X\n #_0DB87A: STZ.w $0D40,X\n\n #_0DB87D: STZ.w $0F80,X\n #_0DB880: STZ.w $0D70,X\n #_0DB883: STZ.w $0D60,X\n #_0DB886: STZ.w $0F90,X\n\n #_0DB889: STZ.w $0D80,X\n #_0DB88C: STZ.w $0DC0,X\n #_0DB88F: STZ.w $0DE0,X\n #_0DB892: STZ.w $0DF0,X\n\n #_0DB895: STZ.w $0E00,X\n #_0DB898: STZ.w $0E10,X\n #_0DB89B: STZ.w $0F10,X\n #_0DB89E: STZ.w $0EB0,X\n\n #_0DB8A1: STZ.w $0EC0,X\n #_0DB8A4: STZ.w $0ED0,X\n #_0DB8A7: STZ.w $0EF0,X\n #_0DB8AA: STZ.w $0E70,X\n\n #_0DB8AD: STZ.w $0F70,X\n #_0DB8B0: STZ.w $0E50,X\n #_0DB8B3: STZ.w $0EA0,X\n #_0DB8B6: STZ.w $0F40,X\n\n #_0DB8B9: STZ.w $0F30,X\n #_0DB8BC: STZ.w $0D90,X\n #_0DB8BF: STZ.w $0DA0,X\n #_0DB8C2: STZ.w $0DB0,X\n\n #_0DB8C5: STZ.w $0BB0,X\n #_0DB8C8: STZ.w $0E80,X\n #_0DB8CB: STZ.w $0BA0,X\n #_0DB8CE: STZ.w $0B89,X\n\n #_0DB8D1: STZ.w $0F50,X\n #_0DB8D4: STZ.w $0B58,X\n #_0DB8D7: STZ.w $0CE2,X\n\n #_0DB8DA: LDA.b #$00\n #_0DB8DC: STA.l $7FFA1C,X\n #_0DB8E0: STA.l $7FFA2C,X\n #_0DB8E4: STA.l $7FFA3C,X\n #_0DB8E8: STA.l $7FFA4C,X\n #_0DB8EC: STA.l $7FF9C2,X\n\n #_0DB8F0: RTL", + "file": "bank_0D.asm" + }, + { + "name": "DamageSubclassValue", + "code": "DamageSubclassValue:\n #_0DB8F1: db $00, $01, $20, $FF, $FC, $FB, $00, $00 ; 0x00 - Boomerang\n #_0DB8F9: db $00, $02, $40, $04, $00, $00, $00, $00 ; 0x01 - Sword 1\n #_0DB901: db $00, $04, $40, $02, $03, $00, $00, $00 ; 0x02 - Sword 2\n #_0DB909: db $00, $08, $40, $04, $00, $00, $00, $00 ; 0x03 - Sword 3\n #_0DB911: db $00, $10, $40, $08, $00, $00, $00, $00 ; 0x04 - Sword 4\n #_0DB919: db $00, $10, $40, $08, $00, $00, $00, $00 ; 0x05 - Sword 5\n #_0DB921: db $00, $04, $40, $10, $00, $00, $00, $00 ; 0x06 - Arrow\n #_0DB929: db $00, $FF, $40, $FF, $FC, $FB, $00, $00 ; 0x07 - Hookshot\n #_0DB931: db $00, $04, $40, $FF, $FC, $FB, $20, $00 ; 0x08 - Bomb\n #_0DB939: db $00, $64, $18, $64, $00, $00, $00, $00 ; 0x09 - Silver arrow\n #_0DB941: db $00, $F9, $FA, $FF, $64, $00, $00, $00 ; 0x0A - Powder\n #_0DB949: db $00, $08, $40, $FD, $04, $10, $00, $00 ; 0x0B - Fire rod\n #_0DB951: db $00, $08, $40, $FE, $04, $00, $00, $00 ; 0x0C - Ice rod\n #_0DB959: db $00, $10, $40, $FD, $00, $00, $00, $00 ; 0x0D - Bombos\n #_0DB961: db $00, $FE, $40, $10, $00, $00, $00, $00 ; 0x0E - Ether\n #_0DB969: db $00, $20, $40, $FF, $00, $00, $00, $FA ; 0x0F - Quake\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "GeneralizedProjectileTileInteraction", + "code": "GeneralizedProjectileTileInteraction:\n #_0DB971: db $00 ; 00\n #_0DB972: db $01 ; 01\n #_0DB973: db $00 ; 02\n #_0DB974: db $00 ; 03\n #_0DB975: db $00 ; 04\n #_0DB976: db $00 ; 05\n #_0DB977: db $00 ; 06\n #_0DB978: db $00 ; 07\n #_0DB979: db $00 ; 08\n #_0DB97A: db $00 ; 09\n #_0DB97B: db $03 ; 0A\n #_0DB97C: db $00 ; 0B\n #_0DB97D: db $00 ; 0C\n #_0DB97E: db $00 ; 0D\n #_0DB97F: db $00 ; 0E\n #_0DB980: db $00 ; 0F\n #_0DB981: db $01 ; 10\n #_0DB982: db $01 ; 11\n #_0DB983: db $01 ; 12\n #_0DB984: db $01 ; 13\n #_0DB985: db $00 ; 14\n #_0DB986: db $00 ; 15\n #_0DB987: db $00 ; 16\n #_0DB988: db $00 ; 17\n #_0DB989: db $01 ; 18\n #_0DB98A: db $01 ; 19\n #_0DB98B: db $01 ; 1A\n #_0DB98C: db $01 ; 1B\n #_0DB98D: db $00 ; 1C\n #_0DB98E: db $03 ; 1D\n #_0DB98F: db $03 ; 1E\n #_0DB990: db $03 ; 1F\n #_0DB991: db $00 ; 20\n #_0DB992: db $00 ; 21\n #_0DB993: db $00 ; 22\n #_0DB994: db $00 ; 23\n #_0DB995: db $00 ; 24\n #_0DB996: db $00 ; 25\n #_0DB997: db $01 ; 26\n #_0DB998: db $01 ; 27\n #_0DB999: db $04 ; 28\n #_0DB99A: db $04 ; 29\n #_0DB99B: db $04 ; 2A\n #_0DB99C: db $04 ; 2B\n #_0DB99D: db $04 ; 2C\n #_0DB99E: db $04 ; 2D\n #_0DB99F: db $04 ; 2E\n #_0DB9A0: db $04 ; 2F\n #_0DB9A1: db $01 ; 30\n #_0DB9A2: db $01 ; 31\n #_0DB9A3: db $01 ; 32\n #_0DB9A4: db $01 ; 33\n #_0DB9A5: db $01 ; 34\n #_0DB9A6: db $01 ; 35\n #_0DB9A7: db $01 ; 36\n #_0DB9A8: db $01 ; 37\n #_0DB9A9: db $01 ; 38\n #_0DB9AA: db $01 ; 39\n #_0DB9AB: db $00 ; 3A\n #_0DB9AC: db $00 ; 3B\n #_0DB9AD: db $01 ; 3C\n #_0DB9AE: db $01 ; 3D\n #_0DB9AF: db $01 ; 3E\n #_0DB9B0: db $01 ; 3F\n #_0DB9B1: db $00 ; 40\n #_0DB9B2: db $00 ; 41\n #_0DB9B3: db $00 ; 42\n #_0DB9B4: db $00 ; 43\n #_0DB9B5: db $00 ; 44\n #_0DB9B6: db $00 ; 45\n #_0DB9B7: db $00 ; 46\n #_0DB9B8: db $00 ; 47\n #_0DB9B9: db $00 ; 48\n #_0DB9BA: db $00 ; 49\n #_0DB9BB: db $00 ; 4A\n #_0DB9BC: db $00 ; 4B\n #_0DB9BD: db $04 ; 4C\n #_0DB9BE: db $04 ; 4D\n #_0DB9BF: db $04 ; 4E\n #_0DB9C0: db $04 ; 4F\n #_0DB9C1: db $00 ; 50\n #_0DB9C2: db $00 ; 51\n #_0DB9C3: db $00 ; 52\n #_0DB9C4: db $00 ; 53\n #_0DB9C5: db $00 ; 54\n #_0DB9C6: db $00 ; 55\n #_0DB9C7: db $00 ; 56\n #_0DB9C8: db $00 ; 57\n #_0DB9C9: db $00 ; 58\n #_0DB9CA: db $00 ; 59\n #_0DB9CB: db $00 ; 5A\n #_0DB9CC: db $00 ; 5B\n #_0DB9CD: db $00 ; 5C\n #_0DB9CE: db $00 ; 5D\n #_0DB9CF: db $00 ; 5E\n #_0DB9D0: db $00 ; 5F\n #_0DB9D1: db $00 ; 60\n #_0DB9D2: db $00 ; 61\n #_0DB9D3: db $00 ; 62\n #_0DB9D4: db $00 ; 63\n #_0DB9D5: db $00 ; 64\n #_0DB9D6: db $00 ; 65\n #_0DB9D7: db $00 ; 66\n #_0DB9D8: db $00 ; 67\n #_0DB9D9: db $00 ; 68\n #_0DB9DA: db $00 ; 69\n #_0DB9DB: db $00 ; 6A\n #_0DB9DC: db $00 ; 6B\n #_0DB9DD: db $01 ; 6C\n #_0DB9DE: db $01 ; 6D\n #_0DB9DF: db $01 ; 6E\n #_0DB9E0: db $01 ; 6F\n #_0DB9E1: db $00 ; 70\n #_0DB9E2: db $00 ; 71\n #_0DB9E3: db $00 ; 72\n #_0DB9E4: db $00 ; 73\n #_0DB9E5: db $00 ; 74\n #_0DB9E6: db $00 ; 75\n #_0DB9E7: db $00 ; 76\n #_0DB9E8: db $00 ; 77\n #_0DB9E9: db $00 ; 78\n #_0DB9EA: db $00 ; 79\n #_0DB9EB: db $00 ; 7A\n #_0DB9EC: db $00 ; 7B\n #_0DB9ED: db $00 ; 7C\n #_0DB9EE: db $00 ; 7D\n #_0DB9EF: db $00 ; 7E\n #_0DB9F0: db $00 ; 7F\n #_0DB9F1: db $01 ; 80\n #_0DB9F2: db $01 ; 81\n #_0DB9F3: db $01 ; 82\n #_0DB9F4: db $01 ; 83\n #_0DB9F5: db $01 ; 84\n #_0DB9F6: db $01 ; 85\n #_0DB9F7: db $01 ; 86\n #_0DB9F8: db $01 ; 87\n #_0DB9F9: db $01 ; 88\n #_0DB9FA: db $01 ; 89\n #_0DB9FB: db $01 ; 8A\n #_0DB9FC: db $01 ; 8B\n #_0DB9FD: db $01 ; 8C\n #_0DB9FE: db $01 ; 8D\n #_0DB9FF: db $01 ; 8E\n #_0DBA00: db $01 ; 8F\n #_0DBA01: db $01 ; 90\n #_0DBA02: db $01 ; 91\n #_0DBA03: db $01 ; 92\n #_0DBA04: db $01 ; 93\n #_0DBA05: db $01 ; 94\n #_0DBA06: db $01 ; 95\n #_0DBA07: db $01 ; 96\n #_0DBA08: db $01 ; 97\n #_0DBA09: db $01 ; 98\n #_0DBA0A: db $01 ; 99\n #_0DBA0B: db $01 ; 9A\n #_0DBA0C: db $01 ; 9B\n #_0DBA0D: db $01 ; 9C\n #_0DBA0E: db $01 ; 9D\n #_0DBA0F: db $01 ; 9E\n #_0DBA10: db $01 ; 9F\n #_0DBA11: db $01 ; A0\n #_0DBA12: db $01 ; A1\n #_0DBA13: db $01 ; A2\n #_0DBA14: db $01 ; A3\n #_0DBA15: db $01 ; A4\n #_0DBA16: db $01 ; A5\n #_0DBA17: db $01 ; A6\n #_0DBA18: db $01 ; A7\n #_0DBA19: db $01 ; A8\n #_0DBA1A: db $01 ; A9\n #_0DBA1B: db $01 ; AA\n #_0DBA1C: db $01 ; AB\n #_0DBA1D: db $01 ; AC\n #_0DBA1E: db $01 ; AD\n #_0DBA1F: db $01 ; AE\n #_0DBA20: db $01 ; AF\n #_0DBA21: db $00 ; B0\n #_0DBA22: db $00 ; B1\n #_0DBA23: db $00 ; B2\n #_0DBA24: db $00 ; B3\n #_0DBA25: db $00 ; B4\n #_0DBA26: db $00 ; B5\n #_0DBA27: db $00 ; B6\n #_0DBA28: db $00 ; B7\n #_0DBA29: db $00 ; B8\n #_0DBA2A: db $00 ; B9\n #_0DBA2B: db $00 ; BA\n #_0DBA2C: db $00 ; BB\n #_0DBA2D: db $00 ; BC\n #_0DBA2E: db $00 ; BD\n #_0DBA2F: db $00 ; BE\n #_0DBA30: db $00 ; BF\n #_0DBA31: db $00 ; C0\n #_0DBA32: db $00 ; C1\n #_0DBA33: db $00 ; C2\n #_0DBA34: db $00 ; C3\n #_0DBA35: db $00 ; C4\n #_0DBA36: db $00 ; C5\n #_0DBA37: db $00 ; C6\n #_0DBA38: db $00 ; C7\n #_0DBA39: db $00 ; C8\n #_0DBA3A: db $00 ; C9\n #_0DBA3B: db $00 ; CA\n #_0DBA3C: db $00 ; CB\n #_0DBA3D: db $00 ; CC\n #_0DBA3E: db $00 ; CD\n #_0DBA3F: db $00 ; CE\n #_0DBA40: db $00 ; CF\n #_0DBA41: db $00 ; D0\n #_0DBA42: db $00 ; D1\n #_0DBA43: db $00 ; D2\n #_0DBA44: db $00 ; D3\n #_0DBA45: db $00 ; D4\n #_0DBA46: db $00 ; D5\n #_0DBA47: db $00 ; D6\n #_0DBA48: db $00 ; D7\n #_0DBA49: db $00 ; D8\n #_0DBA4A: db $00 ; D9\n #_0DBA4B: db $00 ; DA\n #_0DBA4C: db $00 ; DB\n #_0DBA4D: db $00 ; DC\n #_0DBA4E: db $00 ; DD\n #_0DBA4F: db $00 ; DE\n #_0DBA50: db $00 ; DF\n #_0DBA51: db $00 ; E0\n #_0DBA52: db $00 ; E1\n #_0DBA53: db $00 ; E2\n #_0DBA54: db $00 ; E3\n #_0DBA55: db $00 ; E4\n #_0DBA56: db $00 ; E5\n #_0DBA57: db $00 ; E6\n #_0DBA58: db $00 ; E7\n #_0DBA59: db $00 ; E8\n #_0DBA5A: db $00 ; E9\n #_0DBA5B: db $00 ; EA\n #_0DBA5C: db $00 ; EB\n #_0DBA5D: db $00 ; EC\n #_0DBA5E: db $00 ; ED\n #_0DBA5F: db $00 ; EE\n #_0DBA60: db $00 ; EF\n #_0DBA61: db $01 ; F0\n #_0DBA62: db $01 ; F1\n #_0DBA63: db $01 ; F2\n #_0DBA64: db $01 ; F3\n #_0DBA65: db $01 ; F4\n #_0DBA66: db $01 ; F5\n #_0DBA67: db $01 ; F6\n #_0DBA68: db $01 ; F7\n #_0DBA69: db $01 ; F8\n #_0DBA6A: db $01 ; F9\n #_0DBA6B: db $01 ; FA\n #_0DBA6C: db $01 ; FB\n #_0DBA6D: db $01 ; FC\n #_0DBA6E: db $01 ; FD\n #_0DBA6F: db $01 ; FE\n #_0DBA70: db $01 ; FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "GetRandomNumber", + "code": "GetRandomNumber:\n #_0DBA71: LDA.w SLVH\n #_0DBA74: LDA.w OPHCT\n\n #_0DBA77: ADC.b $1A\n #_0DBA79: ADC.w $0FA1\n #_0DBA7C: STA.w $0FA1\n\n #_0DBA7F: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionA", + "code": "SpriteDraw_AllocateOAMFromRegionA:\n #_0DBA80: LDY.b #$00\n #_0DBA82: BRA SpriteDraw_AllocateOAMFromRegion\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionB", + "code": "SpriteDraw_AllocateOAMFromRegionB:\n #_0DBA84: LDY.b #$02\n #_0DBA86: BRA SpriteDraw_AllocateOAMFromRegion\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionC", + "code": "SpriteDraw_AllocateOAMFromRegionC:\n #_0DBA88: LDY.b #$04\n #_0DBA8A: BRA SpriteDraw_AllocateOAMFromRegion\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionD", + "code": "SpriteDraw_AllocateOAMFromRegionD:\n #_0DBA8C: LDY.b #$06\n #_0DBA8E: BRA SpriteDraw_AllocateOAMFromRegion\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionE", + "code": "SpriteDraw_AllocateOAMFromRegionE:\n #_0DBA90: LDY.b #$08\n #_0DBA92: BRA SpriteDraw_AllocateOAMFromRegion\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegionF", + "code": "SpriteDraw_AllocateOAMFromRegionF:\n #_0DBA94: LDY.b #$0A\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_AllocateOAMFromRegion", + "code": "SpriteDraw_AllocateOAMFromRegion:\n #_0DBA96: PHB\n #_0DBA97: PHK\n #_0DBA98: PLB\n\n #_0DBA99: JSR .execute\n\n #_0DBA9C: PLB\n\n #_0DBA9D: RTL", + "file": "bank_0D.asm" + }, + { + "name": "CalculateSFXPan_flags", + "code": "CalculateSFXPan_flags:\n #_0DBB5B: db $00 ; none\n #_0DBB5C: db $80 ; left\n #_0DBB5D: db $40 ; right\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "Ancilla_CalculateSFXPan", + "code": "Ancilla_CalculateSFXPan:\n #_0DBB5E: LDA.w $0C18,X\n #_0DBB61: XBA\n #_0DBB62: LDA.w $0C04,X\n\n #_0DBB65: BRA CalculateSFXPan\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "Link_CalculateSFXPan", + "code": "Link_CalculateSFXPan:\n #_0DBB67: LDA.b $23\n #_0DBB69: XBA\n #_0DBB6A: LDA.b $22\n\n #_0DBB6C: BRA CalculateSFXPan\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "SpriteSFX_QueueSFX1WithPan", + "code": "SpriteSFX_QueueSFX1WithPan:\n #_0DBB6E: PHY\n\n #_0DBB6F: LDY.w $012D\n #_0DBB72: BNE .sfx_already_queued\n\n #_0DBB74: JSR SpriteSFX_ApplyPanning\n #_0DBB77: STA.w $012D\n\n.sfx_already_queued\n #_0DBB7A: PLY\n\n #_0DBB7B: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteSFX_QueueSFX2WithPan", + "code": "SpriteSFX_QueueSFX2WithPan:\n #_0DBB7C: PHY\n\n #_0DBB7D: LDY.w $012E\n #_0DBB80: BNE .sfx_already_queued\n\n #_0DBB82: JSR SpriteSFX_ApplyPanning\n #_0DBB85: STA.w $012E\n\n.sfx_already_queued\n #_0DBB88: PLY\n\n #_0DBB89: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteSFX_QueueSFX3WithPan", + "code": "SpriteSFX_QueueSFX3WithPan:\n #_0DBB8A: PHY\n\n #_0DBB8B: LDY.w $012F\n #_0DBB8E: BNE .sfx_already_queued\n\n #_0DBB90: JSR SpriteSFX_ApplyPanning\n #_0DBB93: STA.w $012F\n\n.sfx_already_queued\n #_0DBB96: PLY\n\n #_0DBB97: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteSFX_ApplyPanning", + "code": "SpriteSFX_ApplyPanning:\n #_0DBB98: STA.b $0D\n\n #_0DBB9A: JSL Sprite_CalculateSFXPan\n #_0DBB9E: ORA.b $0D\n\n #_0DBBA0: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_CalculateSFXPan", + "code": "Sprite_CalculateSFXPan:\n #_0DBBA1: LDA.w $0D30,X\n #_0DBBA4: XBA\n #_0DBBA5: LDA.w $0D10,X\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "CalculateSFXPan", + "code": "CalculateSFXPan:\n #_0DBBA8: REP #$20\n\n #_0DBBAA: PHX\n\n #_0DBBAB: LDX.b #$00\n\n #_0DBBAD: SEC\n #_0DBBAE: SBC.b $E2\n\n #_0DBBB0: SEC\n #_0DBBB1: SBC.w #$0050\n\n #_0DBBB4: CMP.w #$0050\n #_0DBBB7: BCC .grab_flag\n\n #_0DBBB9: INX\n\n #_0DBBBA: CMP.w #$0000\n #_0DBBBD: BMI .grab_flag\n\n #_0DBBBF: INX\n\n; ---------------------------------------------------------\n\n.grab_flag\n #_0DBBC0: SEP #$20\n\n #_0DBBC2: LDA.l CalculateSFXPan_flags,X\n\n #_0DBBC6: PLX\n\n #_0DBBC7: RTL", + "file": "bank_0D.asm" + }, + { + "name": "CalculateSFXPan_Arbitrary", + "code": "CalculateSFXPan_Arbitrary:\n #_0DBBD0: SEC\n #_0DBBD1: SBC.b $E2\n\n #_0DBBD3: LSR A\n #_0DBBD4: LSR A\n #_0DBBD5: LSR A\n #_0DBBD6: LSR A\n #_0DBBD7: LSR A\n\n #_0DBBD8: PHX\n\n #_0DBBD9: TAX\n\n #_0DBBDA: LDA.l .bits,X\n\n #_0DBBDE: PLX\n\n #_0DBBDF: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Babasu", + "code": "SpriteDraw_Babasu:\n #_0DBD20: PHB\n #_0DBD21: PHK\n #_0DBD22: PLB\n\n #_0DBD23: LDA.b #$00\n #_0DBD25: XBA\n #_0DBD26: LDA.w $0DC0,X\n #_0DBD29: BMI .not_visible\n\n #_0DBD2B: REP #$20\n\n #_0DBD2D: ASL A\n #_0DBD2E: ASL A\n #_0DBD2F: ASL A\n #_0DBD30: ASL A\n #_0DBD31: ADC.w #.oam_groups\n #_0DBD34: STA.b $08\n\n #_0DBD36: SEP #$20\n\n #_0DBD38: LDA.b #$02\n #_0DBD3A: JSL SpriteDraw_Tabulated\n\n #_0DBD3E: PLB\n\n #_0DBD3F: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Wizzrobe", + "code": "SpriteDraw_Wizzrobe:\n #_0DBE06: PHB\n #_0DBE07: PHK\n #_0DBE08: PLB\n\n #_0DBE09: LDA.b #$00\n #_0DBE0B: XBA\n #_0DBE0C: LDA.w $0DC0,X\n\n #_0DBE0F: REP #$20\n\n #_0DBE11: ASL A\n #_0DBE12: ASL A\n #_0DBE13: ASL A\n #_0DBE14: STA.b $00\n\n #_0DBE16: ASL A\n #_0DBE17: ADC.b $00\n #_0DBE19: ADC.w #.oam_groups\n #_0DBE1C: STA.b $08\n\n #_0DBE1E: SEP #$20\n\n #_0DBE20: LDA.b #$03\n #_0DBE22: JSL SpriteDraw_Tabulated\n\n #_0DBE26: PLB\n\n #_0DBE27: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_WizzrobeBeam", + "code": "SpriteDraw_WizzrobeBeam:\n #_0DBE68: PHB\n #_0DBE69: PHK\n #_0DBE6A: PLB\n\n #_0DBE6B: LDA.b #$00\n #_0DBE6D: XBA\n #_0DBE6E: LDA.w $0DE0,X\n\n #_0DBE71: REP #$20\n\n #_0DBE73: ASL A\n #_0DBE74: ASL A\n #_0DBE75: ASL A\n #_0DBE76: ASL A\n #_0DBE77: ADC.w #.oam_groups\n #_0DBE7A: STA.b $08\n\n #_0DBE7C: SEP #$20\n\n #_0DBE7E: LDA.b #$02\n #_0DBE80: JSL SpriteDraw_Tabulated\n\n #_0DBE84: PLB\n\n #_0DBE85: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Freezor", + "code": "SpriteDraw_Freezor:\n #_0DBFA6: PHB\n #_0DBFA7: PHK\n #_0DBFA8: PLB\n\n #_0DBFA9: LDA.b #$00\n #_0DBFAB: XBA\n #_0DBFAC: LDA.w $0DC0,X\n\n #_0DBFAF: CMP.b #$07\n #_0DBFB1: BEQ .is_melting\n\n #_0DBFB3: REP #$20\n\n #_0DBFB5: ASL A\n #_0DBFB6: ASL A\n #_0DBFB7: ASL A\n #_0DBFB8: ASL A\n #_0DBFB9: ASL A\n #_0DBFBA: ADC.w #.oam_groups_mobile\n #_0DBFBD: STA.b $08\n\n #_0DBFBF: SEP #$20\n\n #_0DBFC1: LDA.b #$04\n\n.do_draw\n #_0DBFC3: JSL SpriteDraw_Tabulated\n\n #_0DBFC7: PLB\n\n #_0DBFC8: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Zazak", + "code": "SpriteDraw_Zazak:\n #_0DC0A6: PHB\n #_0DC0A7: PHK\n #_0DC0A8: PLB\n\n #_0DC0A9: LDA.b #$00\n #_0DC0AB: XBA\n #_0DC0AC: LDA.w $0DC0,X\n\n #_0DC0AF: REP #$20\n\n #_0DC0B1: ASL A\n #_0DC0B2: ASL A\n #_0DC0B3: ASL A\n #_0DC0B4: STA.b $00\n\n #_0DC0B6: ASL A\n #_0DC0B7: ADC.b $00\n #_0DC0B9: ADC.w #.oam_groups\n #_0DC0BC: STA.b $08\n\n #_0DC0BE: SEP #$20\n\n #_0DC0C0: LDA.b #$03\n #_0DC0C2: JSL SpriteDraw_Tabulated\n\n #_0DC0C6: LDA.w $0F00,X\n #_0DC0C9: BNE .no_head_adjustment\n\n #_0DC0CB: LDA.w $0E00,X\n #_0DC0CE: CMP.b #$01\n\n #_0DC0D0: PHX\n\n #_0DC0D1: LDA.w $0EB0,X\n #_0DC0D4: TAX\n\n #_0DC0D5: BCC .not_facing_up\n\n #_0DC0D7: INX\n #_0DC0D8: INX\n #_0DC0D9: INX\n #_0DC0DA: INX\n\n.not_facing_up\n #_0DC0DB: LDA.w .head_char,X\n\n #_0DC0DE: LDY.b #$02\n #_0DC0E0: STA.b ($90),Y\n\n #_0DC0E2: INY\n\n #_0DC0E3: LDA.b ($90),Y\n #_0DC0E5: AND.b #$BF\n #_0DC0E7: ORA.w .head_flip,X\n #_0DC0EA: STA.b ($90),Y\n\n #_0DC0EC: PLX\n\n #_0DC0ED: JSL SpriteDraw_Shadow_long\n\n.no_head_adjustment\n #_0DC0F1: PLB\n\n #_0DC0F2: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDontDraw_Stalfos", + "code": "SpriteDontDraw_Stalfos:\n #_0DC217: JSL Sprite_PrepOAMCoord_long\n\n #_0DC21B: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Stalfos", + "code": "SpriteDraw_Stalfos:\n #_0DC21C: LDA.w $0E10,X\n #_0DC21F: BNE SpriteDontDraw_Stalfos\n\n #_0DC221: PHB\n #_0DC222: PHK\n #_0DC223: PLB\n\n #_0DC224: LDA.b #$00\n #_0DC226: XBA\n #_0DC227: LDA.w $0DC0,X\n\n #_0DC22A: REP #$20\n\n #_0DC22C: ASL A\n #_0DC22D: ASL A\n #_0DC22E: ASL A\n #_0DC22F: STA.b $00\n\n #_0DC231: ASL A\n #_0DC232: ADC.b $00\n #_0DC234: ADC.w #.oam_groups\n #_0DC237: STA.b $08\n\n #_0DC239: SEP #$20\n\n #_0DC23B: LDA.b #$03\n #_0DC23D: JSL SpriteDraw_Tabulated\n\n #_0DC241: LDA.w $0DC0,X\n #_0DC244: CMP.b #$08\n #_0DC246: BCS .skip_head\n\n #_0DC248: LDA.w $0F00,X\n #_0DC24B: BNE .skip_head\n\n #_0DC24D: PHX\n\n #_0DC24E: LDA.w $0EB0,X\n #_0DC251: TAX\n\n #_0DC252: LDA.w .head_char,X\n #_0DC255: LDY.b #$02\n #_0DC257: STA.b ($90),Y\n\n #_0DC259: INY\n\n #_0DC25A: LDA.b ($90),Y\n #_0DC25C: AND.b #$8F\n #_0DC25E: ORA.w .prop,X\n #_0DC261: STA.b ($90),Y\n\n #_0DC263: PLX\n\n.skip_head\n #_0DC264: JSL SpriteDraw_Shadow_long\n\n #_0DC268: PLB\n\n #_0DC269: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Probe_CheckTileSolidity", + "code": "Probe_CheckTileSolidity:\n #_0DC26E: LDA.w $0F20,X\n #_0DC271: CMP.b #$01\n\n #_0DC273: REP #$30\n\n #_0DC275: STZ.b $05\n\n #_0DC277: BCC .lower_layer\n\n #_0DC279: LDA.w #$1000\n #_0DC27C: STA.b $05\n\n.lower_layer\n #_0DC27E: SEP #$20\n\n #_0DC280: LDA.b $1B\n\n #_0DC282: REP #$20\n #_0DC284: BEQ .on_overworld\n\n; ---------------------------------------------------------\n\n.in_underworld\n #_0DC286: LDA.w $0FD8\n #_0DC289: AND.w #$01FF\n #_0DC28C: LSR A\n #_0DC28D: LSR A\n #_0DC28E: LSR A\n #_0DC28F: STA.b $04\n\n #_0DC291: LDA.w $0FDA\n #_0DC294: AND.w #$01F8\n #_0DC297: ASL A\n #_0DC298: ASL A\n #_0DC299: ASL A\n #_0DC29A: CLC\n #_0DC29B: ADC.b $04\n #_0DC29D: CLC\n #_0DC29E: ADC.b $05\n\n #_0DC2A0: PHX\n\n #_0DC2A1: TAX\n #_0DC2A2: LDA.l $7F2000,X\n\n #_0DC2A6: PLX\n #_0DC2A7: BRA .perform_check\n\n; ---------------------------------------------------------\n\n.on_overworld\n #_0DC2A9: PHX\n #_0DC2AA: PHY\n\n #_0DC2AB: LDA.w $0FD8\n #_0DC2AE: LSR A\n #_0DC2AF: LSR A\n #_0DC2B0: LSR A\n #_0DC2B1: STA.b $02\n\n #_0DC2B3: LDA.w $0FDA\n #_0DC2B6: STA.b $00\n\n #_0DC2B8: SEP #$30\n\n #_0DC2BA: JSL Overworld_ReadTileType\n\n #_0DC2BE: REP #$10\n\n #_0DC2C0: PLY\n #_0DC2C1: PLX\n\n; ---------------------------------------------------------\n\n.perform_check\n #_0DC2C2: SEP #$30\n\n #_0DC2C4: PHX\n\n #_0DC2C5: STA.w $0FA5\n\n #_0DC2C8: TAX\n\n #_0DC2C9: LDA.l GeneralizedProjectileTileInteraction,X\n\n #_0DC2CD: PLX\n\n #_0DC2CE: CMP.b #$01\n\n #_0DC2D0: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_29_Adult", + "code": "Sprite_29_Adult:\n #_0DC2D1: PHB\n #_0DC2D2: PHK\n #_0DC2D3: PLB\n\n #_0DC2D4: JSR .main\n\n #_0DC2D7: PLB\n\n #_0DC2D8: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_BlindsHutGuy", + "code": "Sprite_BlindsHutGuy:\n #_0DC2E6: JSR SpriteDraw_BlindsHutGuy\n\n #_0DC2E9: JSR Sprite_CheckIfActive_Bank0D\n #_0DC2EC: JSL Sprite_BehaveAsBarrier\n #_0DC2F0: JSL Sprite_TrackBodyToHead\n\n #_0DC2F4: STZ.w $0EB0,X\n\n #_0DC2F7: LDA.b #$72 ; MESSAGE 0172\n #_0DC2F9: LDY.b #$01\n #_0DC2FB: JSL Sprite_ShowSolicitedMessage\n #_0DC2FF: BCC .exit\n\n #_0DC301: STA.w $0DE0,X\n #_0DC304: STA.w $0EB0,X\n\n.exit\n #_0DC307: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_ThiefHideoutGuy", + "code": "Sprite_ThiefHideoutGuy:\n #_0DC308: LDA.b $1A\n #_0DC30A: AND.b #$03\n #_0DC30C: BNE .delay\n\n #_0DC30E: LDA.b #$02\n #_0DC310: STA.w $0DC0,X\n\n #_0DC313: JSL Sprite_DirectionToFaceLink_long\n\n #_0DC317: CPY.b #$03\n #_0DC319: BNE .not_upwards\n\n #_0DC31B: LDY.b #$02\n\n.not_upwards\n #_0DC31D: TYA\n #_0DC31E: STA.w $0EB0,X\n\n.delay\n #_0DC321: LDA.b #$0F\n #_0DC323: STA.w $0F50,X\n\n #_0DC326: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n #_0DC32A: JSL SpriteDraw_Thief\n #_0DC32E: JSR Sprite_CheckIfActive_Bank0D\n #_0DC331: JSL Sprite_BehaveAsBarrier\n\n #_0DC335: LDA.b #$71 ; MESSAGE 0171\n #_0DC337: LDY.b #$01\n #_0DC339: JSL Sprite_ShowSolicitedMessage\n\n #_0DC33D: LDA.b #$02\n #_0DC33F: STA.w $0DC0,X\n\n #_0DC342: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_FluteDad", + "code": "Sprite_FluteDad:\n #_0DC343: JSR SpriteDraw_FluteDad\n #_0DC346: JSR Sprite_CheckIfActive_Bank0D\n #_0DC349: JSL Sprite_BehaveAsBarrier\n\n #_0DC34D: LDA.b $1A\n #_0DC34F: CMP.b #$30\n #_0DC351: BCS .zzzzzz\n\n #_0DC353: LDA.b #$02\n #_0DC355: BRA .continue\n\n.zzzzzz\n #_0DC357: ASL A\n #_0DC358: ROL A\n #_0DC359: AND.b #$01\n\n.continue\n #_0DC35B: STA.w $0DC0,X\n\n #_0DC35E: LDA.w $0D80,X\n #_0DC361: BNE .aware_of_situation\n\n #_0DC363: LDA.l $7EF34C\n #_0DC367: CMP.b #$02\n #_0DC369: BCS .have_flute\n\n #_0DC36B: LDA.b #$A1 ; MESSAGE 00A1\n #_0DC36D: LDY.b #$00\n #_0DC36F: JSL Sprite_ShowSolicitedMessage\n #_0DC373: BCC .useless_branch\n\n.useless_branch\n #_0DC375: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_FluteDad", + "code": "SpriteDraw_FluteDad:\n #_0DC3E1: LDA.b #$02\n #_0DC3E3: STA.b $06\n #_0DC3E5: STZ.b $07\n\n #_0DC3E7: LDA.w $0DC0,X\n #_0DC3EA: ASL A\n #_0DC3EB: ASL A\n #_0DC3EC: ASL A\n #_0DC3ED: ASL A\n\n #_0DC3EE: ADC.b #.oam_groups>>0\n #_0DC3F0: STA.b $08\n\n #_0DC3F2: LDA.b #.oam_groups>>8\n #_0DC3F4: ADC.b #$00\n #_0DC3F6: STA.b $09\n\n #_0DC3F8: JSL SpriteDraw_Tabulated_player_deferred\n #_0DC3FC: JSL SpriteDraw_Shadow_long\n\n #_0DC400: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_BlindsHutGuy", + "code": "SpriteDraw_BlindsHutGuy:\n #_0DC481: LDA.b #$02\n #_0DC483: STA.b $06\n #_0DC485: STZ.b $07\n\n #_0DC487: LDA.w $0DE0,X\n #_0DC48A: ASL A\n\n #_0DC48B: ADC.w $0DC0,X\n\n #_0DC48E: ASL A\n #_0DC48F: ASL A\n #_0DC490: ASL A\n #_0DC491: ASL A\n\n #_0DC492: ADC.b #.oam_groups>>0\n #_0DC494: STA.b $08\n\n #_0DC496: LDA.b #.oam_groups>>8\n #_0DC498: ADC.b #$00\n #_0DC49A: STA.b $09\n\n #_0DC49C: JSL SpriteDraw_Tabulated_player_deferred\n #_0DC4A0: JSL SpriteDraw_Shadow_long\n\n #_0DC4A4: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_2A_SweepingLady", + "code": "Sprite_2A_SweepingLady:\n #_0DC4A5: PHB\n #_0DC4A6: PHK\n #_0DC4A7: PLB\n\n #_0DC4A8: JSR .main\n\n #_0DC4AB: PLB\n\n #_0DC4AC: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_SweepingLady", + "code": "SpriteDraw_SweepingLady:\n #_0DC4EB: LDA.b #$02\n #_0DC4ED: STA.b $06\n #_0DC4EF: STZ.b $07\n\n #_0DC4F1: LDA.w $0DC0,X\n #_0DC4F4: ASL A\n #_0DC4F5: ASL A\n #_0DC4F6: ASL A\n #_0DC4F7: ASL A\n #_0DC4F8: ADC.b #.oam_groups>>0\n #_0DC4FA: STA.b $08\n\n #_0DC4FC: LDA.b #.oam_groups>>8\n #_0DC4FE: ADC.b #$00\n #_0DC500: STA.b $09\n\n #_0DC502: JSL SpriteDraw_Tabulated_player_deferred\n #_0DC506: JSL SpriteDraw_Shadow_long\n\n #_0DC50A: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_2C_Lumberjacks", + "code": "Sprite_2C_Lumberjacks:\n #_0DC50B: PHB\n #_0DC50C: PHK\n #_0DC50D: PLB\n\n #_0DC50E: JSR .main\n\n #_0DC511: PLB\n\n #_0DC512: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Lumberjack_CheckProximity", + "code": "Lumberjack_CheckProximity:\n #_0DC58F: REP #$20\n\n #_0DC591: LDA.w $0FD8\n #_0DC594: SEC\n #_0DC595: SBC.b $22\n\n #_0DC597: CLC\n #_0DC598: ADC.w .boundary_x_lower,Y\n #_0DC59B: CMP.w .boundary_x_higher,Y\n #_0DC59E: BCS .not_close\n\n #_0DC5A0: LDA.w $0FDA\n #_0DC5A3: SEC\n #_0DC5A4: SBC.b $20\n\n #_0DC5A6: CLC\n #_0DC5A7: ADC.w .boundary_y_lower,Y\n #_0DC5AA: CMP.w .boundary_y_higher,Y\n #_0DC5AD: BCS .not_close\n\n.not_close\n #_0DC5AF: SEP #$30\n\n #_0DC5B1: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Lumberjack", + "code": "SpriteDraw_Lumberjack:\n #_0DC6BA: LDA.b #$0B\n #_0DC6BC: STA.b $06\n #_0DC6BE: STZ.b $07\n\n #_0DC6C0: LDA.w $0DC0,X\n #_0DC6C3: ASL A\n #_0DC6C4: ASL A\n\n #_0DC6C5: ADC.w $0DC0,X\n #_0DC6C8: ASL A\n #_0DC6C9: ADC.w $0DC0,X\n\n #_0DC6CC: ASL A\n #_0DC6CD: ASL A\n #_0DC6CE: ASL A\n\n #_0DC6CF: ADC.b #.oam_groups>>0\n #_0DC6D1: STA.b $08\n\n #_0DC6D3: LDA.b #.oam_groups>>8\n #_0DC6D5: ADC.b #$00\n #_0DC6D7: STA.b $09\n\n #_0DC6D9: JSL SpriteDraw_Tabulated_preset_quantity\n\n #_0DC6DD: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_2D_NecklessMan", + "code": "Sprite_2D_NecklessMan:\n #_0DC6DE: PHB\n #_0DC6DF: PHK\n #_0DC6E0: PLB\n\n #_0DC6E1: JSR .main\n\n #_0DC6E4: PLB\n\n #_0DC6E5: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_NecklessMan", + "code": "SpriteDraw_NecklessMan:\n #_0DC737: LDA.b #$03\n #_0DC739: STA.b $06\n #_0DC73B: STZ.b $07\n\n #_0DC73D: LDA.w $0DC0,X\n #_0DC740: ASL A\n #_0DC741: ADC.w $0DC0,X\n\n #_0DC744: ASL A\n #_0DC745: ASL A\n #_0DC746: ASL A\n\n #_0DC747: ADC.b #.oam_groups>>0\n #_0DC749: STA.b $08\n\n #_0DC74B: LDA.b #.oam_groups>>8\n #_0DC74D: ADC.b #$00\n #_0DC74F: STA.b $09\n\n #_0DC751: JSL SpriteDraw_Tabulated_player_deferred\n #_0DC755: JSL SpriteDraw_Shadow_long\n\n #_0DC759: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_31_FortuneTeller", + "code": "Sprite_31_FortuneTeller:\n #_0DC75A: PHB\n #_0DC75B: PHK\n #_0DC75C: PLB\n\n #_0DC75D: JSR .main\n\n #_0DC760: PLB\n\n #_0DC761: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SmithyBlockade", + "code": "SmithyBlockade:\n #_0DC76D: JSR Sprite_CheckIfActive_Bank0D\n\n #_0DC770: JSL Sprite_CheckDamageToLink_same_layer_long\n #_0DC774: BCC .exit\n\n #_0DC776: PHX\n\n #_0DC777: JSL Sprite_CancelHookshot\n\n #_0DC77B: STZ.b $5E\n\n #_0DC77D: JSL Link_CancelDash_long\n\n #_0DC781: PLX\n\n.exit\n #_0DC782: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller", + "code": "FortuneTeller:\n #_0DC783: JSR SpriteDraw_FortuneTeller\n #_0DC786: JSR Sprite_CheckIfActive_Bank0D\n\n #_0DC789: LDA.l $7EF3CA\n #_0DC78D: ASL A\n #_0DC78E: ROL A\n #_0DC78F: ROL A\n #_0DC790: AND.b #$01\n\n #_0DC792: JSL JumpTableLocal\n #_0DC796: dw FortuneTeller_LightWorld\n #_0DC798: dw FortuneTeller_DarkWorld\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld", + "code": "FortuneTeller_LightWorld:\n #_0DC79A: LDA.w $0D80,X\n #_0DC79D: JSL JumpTableLocal\n #_0DC7A1: dw FortuneTeller_LightWorld_PrecognizantResponse\n #_0DC7A3: dw FortuneTeller_LightWorld_Reject\n #_0DC7A5: dw FortuneTeller_LightWorld_OfferReading\n #_0DC7A7: dw FortuneTeller_LightWorld_HandleResponse\n #_0DC7A9: dw FortuneTeller_PerformPseudoScience\n #_0DC7AB: dw FortuneTeller_LightWorld_DemandPayment\n #_0DC7AD: dw FortuneTeller_LightWorld_TakeMoney\n #_0DC7AF: dw FortuneTeller_LightWorld_DoNothing\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_Prices", + "code": "FortuneTeller_Prices:\n #_0DC7B1: dw 10, 15, 20, 30\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_PrecognizantResponse", + "code": "FortuneTeller_LightWorld_PrecognizantResponse:\n #_0DC7B9: STZ.w $0DC0,X\n\n #_0DC7BC: JSL GetRandomNumber\n #_0DC7C0: AND.b #$03\n #_0DC7C2: ASL A\n #_0DC7C3: STA.w $0D90,X\n\n #_0DC7C6: TAY\n\n #_0DC7C7: REP #$20\n\n #_0DC7C9: LDA.l $7EF360\n #_0DC7CD: CMP.w FortuneTeller_Prices,Y\n\n #_0DC7D0: SEP #$30\n #_0DC7D2: BCS .enough_rupees\n\n #_0DC7D4: INC.w $0D80,X\n\n #_0DC7D7: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_Reject", + "code": "FortuneTeller_LightWorld_Reject:\n #_0DC7DE: LDA.b #$F2 ; MESSAGE 00F2\n #_0DC7E0: LDY.b #$00\n #_0DC7E2: JSL Sprite_ShowSolicitedMessage\n\n #_0DC7E6: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_OfferReading", + "code": "FortuneTeller_LightWorld_OfferReading:\n #_0DC7E7: LDA.b #$F3 ; MESSAGE 00F3\n #_0DC7E9: LDY.b #$00\n #_0DC7EB: JSL Sprite_ShowSolicitedMessage\n #_0DC7EF: BCC .exit\n\n #_0DC7F1: INC.w $0D80,X\n\n #_0DC7F4: LDA.b #$FF\n #_0DC7F6: STA.w $0DF0,X\n\n #_0DC7F9: LDA.b #$01\n #_0DC7FB: STA.w $02E4\n\n.exit\n #_0DC7FE: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_HandleResponse", + "code": "FortuneTeller_LightWorld_HandleResponse:\n #_0DC7FF: LDA.w $1CE8\n #_0DC802: BNE .rejected\n\n #_0DC804: LDA.w $0DF0,X\n #_0DC807: BNE .delay\n\n #_0DC809: INC.w $0D80,X\n\n.delay\n #_0DC80C: LDA.b $1A\n #_0DC80E: LSR A\n #_0DC80F: LSR A\n #_0DC810: LSR A\n #_0DC811: LSR A\n\n #_0DC812: AND.b #$01\n #_0DC814: STA.w $0DC0,X\n\n #_0DC817: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTellerMessage", + "code": "FortuneTellerMessage:\n.low\n #_0DC829: db $EA ; MESSAGE 00EA\n #_0DC82A: db $EB ; MESSAGE 00EB\n #_0DC82B: db $EC ; MESSAGE 00EC\n #_0DC82C: db $ED ; MESSAGE 00ED\n #_0DC82D: db $EE ; MESSAGE 00EE\n #_0DC82E: db $EF ; MESSAGE 00EF\n #_0DC82F: db $F0 ; MESSAGE 00F0\n #_0DC830: db $F1 ; MESSAGE 00F1\n #_0DC831: db $F6 ; MESSAGE 00F6\n #_0DC832: db $F7 ; MESSAGE 00F7\n #_0DC833: db $F8 ; MESSAGE 00F8\n #_0DC834: db $F9 ; MESSAGE 00F9\n #_0DC835: db $FA ; MESSAGE 00FA\n #_0DC836: db $FB ; MESSAGE 00FB\n #_0DC837: db $FC ; MESSAGE 00FC\n #_0DC838: db $FD ; MESSAGE 00FD\n\n.high\n #_0DC839: db $00\n #_0DC83A: db $00\n #_0DC83B: db $00\n #_0DC83C: db $00\n #_0DC83D: db $00\n #_0DC83E: db $00\n #_0DC83F: db $00\n #_0DC840: db $00\n #_0DC841: db $00\n #_0DC842: db $00\n #_0DC843: db $00\n #_0DC844: db $00\n #_0DC845: db $00\n #_0DC846: db $00\n #_0DC847: db $00\n #_0DC848: db $00\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_PerformPseudoScience", + "code": "FortuneTeller_PerformPseudoScience:\n #_0DC849: STZ.w $0DC0,X\n\n #_0DC84C: INC.w $0D80,X\n\n #_0DC84F: STZ.b $03\n\n #_0DC851: LDA.l $7EF3C7\n #_0DC855: CMP.b #$03\n #_0DC857: BCS .map_icon_past_pendants\n\n #_0DC859: STZ.b $00\n #_0DC85B: STZ.b $01\n\n #_0DC85D: JMP.w FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.map_icon_past_pendants\n #_0DC860: LDA.l $7EF34E\n #_0DC864: BNE .have_book\n\n #_0DC866: LDA.b #$02\n #_0DC868: JSR FortuneTeller_PrepareNextMessage\n #_0DC86B: BCC .have_book\n\n #_0DC86D: JMP.w FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_book\n #_0DC870: LDA.l $7EF374\n #_0DC874: AND.b #$02\n #_0DC876: BNE .have_wisdom\n\n #_0DC878: LDA.b #$01\n #_0DC87A: JSR FortuneTeller_PrepareNextMessage\n #_0DC87D: BCC .have_wisdom\n\n #_0DC87F: JMP.w FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_wisdom\n #_0DC882: LDA.l $7EF344\n #_0DC886: CMP.b #$02\n #_0DC888: BCS .have_powder\n\n #_0DC88A: LDA.b #$03\n #_0DC88C: JSR FortuneTeller_PrepareNextMessage\n #_0DC88F: BCC .have_powder\n\n #_0DC891: JMP.w FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_powder\n #_0DC894: LDA.l $7EF356\n #_0DC898: BNE .have_flippers\n\n #_0DC89A: LDA.b #$04\n #_0DC89C: JSR FortuneTeller_PrepareNextMessage\n #_0DC89F: BCC .have_flippers\n\n #_0DC8A1: JMP.w FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_flippers\n #_0DC8A4: LDA.l $7EF357\n #_0DC8A8: BNE .have_pearl\n\n #_0DC8AA: LDA.b #$05\n #_0DC8AC: JSR FortuneTeller_PrepareNextMessage\n #_0DC8AF: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_pearl\n #_0DC8B1: LDA.l $7EF3C5\n #_0DC8B5: CMP.b #$03\n #_0DC8B7: BCS .aga_defeated\n\n #_0DC8B9: LDA.b #$06\n #_0DC8BB: JSR FortuneTeller_PrepareNextMessage\n #_0DC8BE: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.aga_defeated\n #_0DC8C0: LDA.l $7EF37B\n #_0DC8C4: BNE .have_magic_upgrade\n\n #_0DC8C6: LDA.b #$07\n #_0DC8C8: JSR FortuneTeller_PrepareNextMessage\n #_0DC8CB: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_magic_upgrade\n #_0DC8CD: LDA.l $7EF347\n #_0DC8D1: BNE .have_bombos\n\n #_0DC8D3: LDA.b #$08\n #_0DC8D5: JSR FortuneTeller_PrepareNextMessage\n #_0DC8D8: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_bombos\n #_0DC8DA: LDA.l $7EF3C9\n #_0DC8DE: AND.b #$10\n #_0DC8E0: BNE .have_purple_chest_bottle\n\n #_0DC8E2: LDA.b #$09\n #_0DC8E4: JSR FortuneTeller_PrepareNextMessage\n #_0DC8E7: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_purple_chest_bottle\n #_0DC8E9: LDA.l $7EF3C9\n #_0DC8ED: AND.b #$20\n #_0DC8EF: BNE .rescued_smithy\n\n #_0DC8F1: LDA.b #$0A\n #_0DC8F3: JSR FortuneTeller_PrepareNextMessage\n #_0DC8F6: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.rescued_smithy\n #_0DC8F8: LDA.l $7EF352\n #_0DC8FC: BNE .have_cape\n\n #_0DC8FE: LDA.b #$0B\n #_0DC900: JSR FortuneTeller_PrepareNextMessage\n #_0DC903: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_cape\n #_0DC905: LDA.l $7EF2DB\n #_0DC909: AND.b #$02\n #_0DC90B: BNE .opened_fat_fairy\n\n #_0DC90D: LDA.b #$0C\n #_0DC90F: JSR FortuneTeller_PrepareNextMessage\n #_0DC912: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.opened_fat_fairy\n #_0DC914: LDA.l $7EF359\n #_0DC918: CMP.b #$04\n #_0DC91A: BCS .have_butter\n\n #_0DC91C: LDA.b #$0D\n #_0DC91E: JSR FortuneTeller_PrepareNextMessage\n #_0DC921: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n.have_butter\n #_0DC923: LDA.b #$0E\n #_0DC925: JSR FortuneTeller_PrepareNextMessage\n #_0DC928: BCS FortuneTeller_DisplayMessage\n\n; ---------------------------------------------------------\n\n #_0DC92A: LDA.b #$0F\n #_0DC92C: JSR FortuneTeller_PrepareNextMessage\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DisplayMessage", + "code": "FortuneTeller_DisplayMessage:\n #_0DC92F: LDA.l $7EF3C6\n #_0DC933: EOR.b #$40\n #_0DC935: STA.l $7EF3C6\n\n #_0DC939: AND.b #$40\n #_0DC93B: ROL A\n #_0DC93C: ROL A\n #_0DC93D: ROL A\n #_0DC93E: AND.b #$01\n #_0DC940: TAY\n\n #_0DC941: LDA.w $0000,Y\n #_0DC944: TAY\n\n #_0DC945: LDA.w FortuneTellerMessage_low,Y\n #_0DC948: XBA\n\n #_0DC949: LDA.w FortuneTellerMessage_high,Y\n #_0DC94C: TAY\n\n #_0DC94D: XBA\n #_0DC94E: JSL Sprite_ShowMessageUnconditional\n\n #_0DC952: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_PrepareNextMessage", + "code": "FortuneTeller_PrepareNextMessage:\n #_0DC953: LDY.b $03\n\n #_0DC955: STA.w $0000,Y\n\n #_0DC958: INY\n #_0DC959: CPY.b #$02\n #_0DC95B: BCS .exit\n\n #_0DC95D: STY.b $03\n\n.exit\n #_0DC95F: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_DemandPayment", + "code": "FortuneTeller_LightWorld_DemandPayment:\n #_0DC960: STZ.w $0DC0,X\n\n #_0DC963: REP #$20\n\n #_0DC965: STZ.b $00\n #_0DC967: STZ.b $02\n #_0DC969: STZ.b $04\n #_0DC96B: STZ.b $06\n\n #_0DC96D: LDY.w $0D90,X\n\n #_0DC970: LDA.w FortuneTeller_Prices,Y\n #_0DC973: JMP.w FortuneTeller_DemandPayment\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_TakeMoney", + "code": "FortuneTeller_LightWorld_TakeMoney:\n #_0DC976: LDY.w $0D90,X\n\n #_0DC979: REP #$20\n\n #_0DC97B: LDA.l $7EF360\n #_0DC97F: SEC\n #_0DC980: SBC.w FortuneTeller_Prices,Y\n #_0DC983: STA.l $7EF360\n\n #_0DC987: SEP #$30\n\n #_0DC989: INC.w $0D80,X\n\n #_0DC98C: LDA.b #$A0\n #_0DC98E: STA.l $7EF372\n\n #_0DC992: STZ.w $02E4\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_LightWorld_DoNothing", + "code": "FortuneTeller_LightWorld_DoNothing:\n #_0DC995: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld", + "code": "FortuneTeller_DarkWorld:\n #_0DC996: LDA.w $0D80,X\n #_0DC999: JSL JumpTableLocal\n #_0DC99D: dw FortuneTeller_DarkWorld_PrecognizantResponse\n #_0DC99F: dw FortuneTeller_DarkWorld_Reject\n #_0DC9A1: dw FortuneTeller_DarkWorld_OfferReading\n #_0DC9A3: dw FortuneTeller_DarkWorld_HandleResponse\n #_0DC9A5: dw FortuneTeller_PerformPseudoScience\n #_0DC9A7: dw FortuneTeller_DarkWorld_DemandPayment\n #_0DC9A9: dw FortuneTeller_DarkWorld_TakeMoney\n #_0DC9AB: dw FortuneTeller_DarkWorld_DoNothing\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_PrecognizantResponse", + "code": "FortuneTeller_DarkWorld_PrecognizantResponse:\n #_0DC9AD: STZ.w $0DC0,X\n\n #_0DC9B0: JSL GetRandomNumber\n #_0DC9B4: AND.b #$03\n #_0DC9B6: ASL A\n #_0DC9B7: STA.w $0D90,X\n\n #_0DC9BA: TAY\n\n #_0DC9BB: REP #$20\n\n #_0DC9BD: LDA.l $7EF360\n #_0DC9C1: CMP.w FortuneTeller_Prices,Y\n\n #_0DC9C4: SEP #$30\n #_0DC9C6: BCS .too_poor\n\n #_0DC9C8: INC.w $0D80,X\n\n #_0DC9CB: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_Reject", + "code": "FortuneTeller_DarkWorld_Reject:\n #_0DC9D2: LDA.b #$F2 ; MESSAGE 00F2\n #_0DC9D4: LDY.b #$00\n #_0DC9D6: JSL Sprite_ShowSolicitedMessage\n\n #_0DC9DA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_OfferReading", + "code": "FortuneTeller_DarkWorld_OfferReading:\n #_0DC9DB: LDA.b #$F3 ; MESSAGE 00F3\n #_0DC9DD: LDY.b #$00\n #_0DC9DF: JSL Sprite_ShowSolicitedMessage\n #_0DC9E3: BCC .exit\n\n #_0DC9E5: INC.w $0D80,X\n\n #_0DC9E8: LDA.b #$FF\n #_0DC9EA: STA.w $0DF0,X\n\n #_0DC9ED: LDA.b #$01\n #_0DC9EF: STA.w $02E4\n\n.exit\n #_0DC9F2: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_HandleResponse", + "code": "FortuneTeller_DarkWorld_HandleResponse:\n #_0DC9F3: LDA.w $1CE8\n #_0DC9F6: BNE .rejected\n\n #_0DC9F8: LDA.b $1A\n #_0DC9FA: LSR A\n #_0DC9FB: LSR A\n #_0DC9FC: LSR A\n #_0DC9FD: LSR A\n #_0DC9FE: AND.b #$01\n #_0DCA00: STA.w $0DC0,X\n\n #_0DCA03: LDA.w $0DF0,X\n #_0DCA06: BNE .exit\n\n #_0DCA08: INC.w $0D80,X\n\n.exit\n #_0DCA0B: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_DemandPayment", + "code": "FortuneTeller_DarkWorld_DemandPayment:\n #_0DCA1D: REP #$20\n\n #_0DCA1F: STZ.b $00\n #_0DCA21: STZ.b $02\n #_0DCA23: STZ.b $04\n #_0DCA25: STZ.b $06\n\n #_0DCA27: LDY.w $0D90,X\n\n #_0DCA2A: LDA.w FortuneTeller_Prices,Y\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DemandPayment", + "code": "FortuneTeller_DemandPayment:\n\n.count1E4\n #_0DCA2D: CMP.w #10000\n #_0DCA30: BCC .count1E3\n\n #_0DCA32: SBC.w #10000\n #_0DCA35: BRA .count1E4\n\n; ---------------------------------------------------------\n\n.count1E3\n #_0DCA37: CMP.w #1000\n #_0DCA3A: BCC .count1E2\n\n #_0DCA3C: SBC.w #100 ; Yes, this is 100. It should be 1000.\n\n #_0DCA3F: INC.b $06\n\n #_0DCA41: BRA .count1E3\n\n; ---------------------------------------------------------\n\n.count1E2\n #_0DCA43: CMP.w #100\n #_0DCA46: BCC .count1E1\n\n #_0DCA48: SBC.w #100\n\n #_0DCA4B: INC.b $04\n\n #_0DCA4D: BRA .count1E2\n\n; ---------------------------------------------------------\n\n.count1E1\n #_0DCA4F: CMP.w #10\n #_0DCA52: BCC .under10\n\n #_0DCA54: SBC.w #10\n\n #_0DCA57: INC.b $02\n\n #_0DCA59: BRA .count1E1\n\n; ---------------------------------------------------------\n\n.under10\n\n #_0DCA5B: STA.b $00\n\n #_0DCA5D: SEP #$30\n\n #_0DCA5F: LDA.b $00\n #_0DCA61: ASL A\n #_0DCA62: ASL A\n #_0DCA63: ASL A\n #_0DCA64: ASL A\n\n #_0DCA65: ORA.b $02\n #_0DCA67: STA.w $1CF2\n\n #_0DCA6A: LDA.b $06\n #_0DCA6C: ASL A\n #_0DCA6D: ASL A\n #_0DCA6E: ASL A\n #_0DCA6F: ASL A\n\n #_0DCA70: ORA.b $04\n #_0DCA72: STA.w $1CF3\n\n #_0DCA75: LDA.b #$F4 ; MESSAGE 00F4\n #_0DCA77: LDY.b #$00\n #_0DCA79: JSL Sprite_ShowMessageUnconditional\n\n #_0DCA7D: INC.w $0D80,X\n\n #_0DCA80: RTS", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_TakeMoney", + "code": "FortuneTeller_DarkWorld_TakeMoney:\n #_0DCA81: LDY.w $0D90,X\n\n #_0DCA84: REP #$20\n\n #_0DCA86: LDA.l $7EF360\n #_0DCA8A: SEC\n #_0DCA8B: SBC.w FortuneTeller_Prices,Y\n #_0DCA8E: STA.l $7EF360\n\n #_0DCA92: SEP #$30\n\n #_0DCA94: INC.w $0D80,X\n\n #_0DCA97: LDA.b #$A0\n #_0DCA99: STA.l $7EF372\n\n #_0DCA9D: STZ.w $02E4\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "FortuneTeller_DarkWorld_DoNothing", + "code": "FortuneTeller_DarkWorld_DoNothing:\n #_0DCAA0: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_FortuneTeller", + "code": "SpriteDraw_FortuneTeller:\n #_0DCB01: LDA.l $7EF3CA\n #_0DCB05: ASL A\n #_0DCB06: ROL A\n #_0DCB07: ROL A\n #_0DCB08: AND.b #$01\n #_0DCB0A: STA.b $00\n\n #_0DCB0C: ASL A\n #_0DCB0D: ADC.b $00\n #_0DCB0F: ADC.w $0DC0,X\n\n #_0DCB12: ASL A\n #_0DCB13: ADC.w $0DC0,X\n\n #_0DCB16: ASL A\n #_0DCB17: ASL A\n #_0DCB18: ASL A\n\n #_0DCB19: ADC.b #.oam_groups>>0\n #_0DCB1B: STA.b $08\n\n #_0DCB1D: LDA.b #.oam_groups>>8\n #_0DCB1F: ADC.b #$00\n #_0DCB21: STA.b $09\n\n #_0DCB23: LDA.b #$03\n #_0DCB25: JSL SpriteDraw_Tabulated\n\n #_0DCB29: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Smithy_SpawnDumbBarrierSprite", + "code": "Smithy_SpawnDumbBarrierSprite:\n #_0DCB2A: LDA.b #$31 ; SPRITE 31\n #_0DCB2C: JSL Sprite_SpawnDynamically\n\n #_0DCB30: LDA.b $00\n #_0DCB32: STA.w $0D10,Y\n\n #_0DCB35: LDA.b $01\n #_0DCB37: STA.w $0D30,Y\n\n #_0DCB3A: LDA.b $02\n #_0DCB3C: STA.w $0D00,Y\n\n #_0DCB3F: LDA.b $03\n #_0DCB41: STA.w $0D20,Y\n\n #_0DCB44: LDA.b #$01\n #_0DCB46: STA.w $0E80,Y\n\n #_0DCB49: LDA.b #$00\n #_0DCB4B: STA.w $0F60,Y\n\n #_0DCB4E: LDA.b #$01\n #_0DCB50: STA.w $0BA0,Y\n\n #_0DCB53: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_2F_RaceGameLady", + "code": "Sprite_2F_RaceGameLady:\n #_0DCB54: PHB\n #_0DCB55: PHK\n #_0DCB56: PLB\n\n #_0DCB57: JSR .main\n\n #_0DCB5A: PLB\n\n #_0DCB5B: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameLady_Idle", + "code": "RaceGameLady_Idle:\n #_0DCB7E: LDA.w $0D10,X\n #_0DCB81: CMP.b $22\n #_0DCB83: BCS .cheater\n\n #_0DCB85: LDA.b #$CC ; MESSAGE 00CC\n #_0DCB87: LDY.b #$00\n #_0DCB89: JSL Sprite_ShowMessageOnContact\n #_0DCB8D: BCC .exit\n\n #_0DCB8F: STA.w $0EB0,X\n #_0DCB92: STA.w $0DE0,X\n\n #_0DCB95: INC.w $0D80,X\n\n #_0DCB98: LDA.b #$00\n #_0DCB9A: STA.l $7FFE00\n #_0DCB9E: STA.l $7FFE01\n #_0DCBA2: STA.l $7FFE02\n #_0DCBA6: STA.l $7FFE03\n\n #_0DCBAA: STZ.w $0D90,X\n\n #_0DCBAD: STZ.w $0ABF\n\n.exit\n #_0DCBB0: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameLady_TimeRun", + "code": "RaceGameLady_TimeRun:\n #_0DCBBA: INC.w $0D90,X\n\n #_0DCBBD: LDA.w $0D90,X\n #_0DCBC0: CMP.b #$3F\n #_0DCBC2: BNE .exit\n\n #_0DCBC4: STZ.w $0D90,X\n\n #_0DCBC7: REP #$20\n\n #_0DCBC9: LDA.l $7FFE00\n #_0DCBCD: INC A\n #_0DCBCE: STA.l $7FFE00\n\n #_0DCBD2: BNE .dont_increment_higher\n\n #_0DCBD4: LDA.l $7FFE02\n #_0DCBD8: INC A\n #_0DCBD9: STA.l $7FFE02\n\n.dont_increment_higher\n #_0DCBDD: SEP #$30\n\n.exit\n #_0DCBDF: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameLady_FireStarterPistol", + "code": "RaceGameLady_FireStarterPistol:\n #_0DCBE0: LDA.b #$07 ; SFX3.07\n #_0DCBE2: JSL SpriteSFX_QueueSFX3WithPan\n\n #_0DCBE6: INC.w $0D80,X\n\n #_0DCBE9: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_30_RaceGameGuy", + "code": "Sprite_30_RaceGameGuy:\n #_0DCBEA: PHB\n #_0DCBEB: PHK\n #_0DCBEC: PLB\n\n #_0DCBED: JSR .main\n\n #_0DCBF0: PLB\n\n #_0DCBF1: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameGuy_VerifyRun", + "code": "RaceGameGuy_VerifyRun:\n #_0DCC2D: REP #$20\n\n #_0DCC2F: LDA.l $7FFE00\n #_0DCC33: STA.l $7FFE04\n\n #_0DCC37: LDA.l $7FFE02\n #_0DCC3B: STA.l $7FFE06\n\n #_0DCC3F: STZ.b $00\n #_0DCC41: STZ.b $02\n #_0DCC43: STZ.b $04\n #_0DCC45: STZ.b $06\n\n #_0DCC47: LDA.l $7FFE04\n\n; ---------------------------------------------------------\n\n.count6E3\n #_0DCC4B: CMP.w #6000\n #_0DCC4E: BCC .count6E2\n\n #_0DCC50: SBC.w #6000\n #_0DCC53: BRA .count6E3\n\n; ---------------------------------------------------------\n\n.count6E2\n #_0DCC55: CMP.w #600\n #_0DCC58: BCC .count6E1\n\n #_0DCC5A: SBC.w #600\n\n #_0DCC5D: INC.b $06\n\n #_0DCC5F: BRA .count6E2\n\n; ---------------------------------------------------------\n\n.count6E1\n #_0DCC61: CMP.w #60\n #_0DCC64: BCC .count1E1\n\n #_0DCC66: SBC.w #60\n\n #_0DCC69: INC.b $04\n\n #_0DCC6B: BRA .count6E1\n\n; ---------------------------------------------------------\n\n.count1E1\n #_0DCC6D: CMP.w #10\n #_0DCC70: BCC .under10\n\n #_0DCC72: SBC.w #10\n\n #_0DCC75: INC.b $02\n\n #_0DCC77: BRA .count1E1\n\n; ---------------------------------------------------------\n\n.under10\n #_0DCC79: STA.b $00\n\n #_0DCC7B: SEP #$30\n\n #_0DCC7D: LDA.b $02\n #_0DCC7F: ASL A\n #_0DCC80: ASL A\n #_0DCC81: ASL A\n #_0DCC82: ASL A\n\n #_0DCC83: ORA.b $00\n #_0DCC85: STA.w $1CF2\n\n #_0DCC88: LDA.b $06\n #_0DCC8A: ASL A\n #_0DCC8B: ASL A\n #_0DCC8C: ASL A\n #_0DCC8D: ASL A\n\n #_0DCC8E: ORA.b $04\n #_0DCC90: STA.w $1CF3\n\n #_0DCC93: LDA.b #$CB ; MESSAGE 00CB\n #_0DCC95: LDY.b #$00\n #_0DCC97: JSL Sprite_ShowMessageOnContact\n #_0DCC9B: BCC .exit\n\n #_0DCC9D: STA.w $0DE0,X\n #_0DCCA0: STA.w $0EB0,X\n\n #_0DCCA3: INC.w $0D80,X\n\n.exit\n #_0DCCA6: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameGuy_MakeModDecision", + "code": "RaceGameGuy_MakeModDecision:\n #_0DCCA7: INC.w $0D80,X\n\n #_0DCCAA: TXY\n\n #_0DCCAB: LDX.b $8A\n #_0DCCAD: LDA.l $7EF280,X\n\n #_0DCCB1: TYX\n\n #_0DCCB2: AND.b #$40\n #_0DCCB4: BEQ .prize_available\n\n.prize_obtained\n #_0DCCB6: INC.w $0D80,X\n #_0DCCB9: INC.w $0D80,X\n\n #_0DCCBC: LDA.b #$CF ; MESSAGE 00CF\n #_0DCCBE: LDY.b #$00\n #_0DCCC0: JSL Sprite_ShowMessageUnconditional\n\n #_0DCCC4: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameGuy_RejectRun", + "code": "RaceGameGuy_RejectRun:\n #_0DCCF4: LDA.b #$CE ; MESSAGE 00CE\n #_0DCCF6: LDY.b #$00\n #_0DCCF8: JSL Sprite_ShowMessageOnContact\n #_0DCCFC: BCC .exit\n\n #_0DCCFE: STA.w $0EB0,X\n #_0DCD01: STA.w $0DE0,X\n\n.exit\n #_0DCD04: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameGuy_AcceptRun", + "code": "RaceGameGuy_AcceptRun:\n #_0DCD05: LDA.b #$CD ; MESSAGE 00CD\n #_0DCD07: LDY.b #$00\n #_0DCD09: JSL Sprite_ShowSolicitedMessage\n #_0DCD0D: BCC .exit\n\n #_0DCD0F: STA.w $0EB0,X\n #_0DCD12: STA.w $0DE0,X\n\n.exit\n #_0DCD15: RTS", + "file": "bank_0D.asm" + }, + { + "name": "RaceGameGuy_IdleInDiscord", + "code": "RaceGameGuy_IdleInDiscord:\n #_0DCD16: LDA.b #$CF ; MESSAGE 00CF\n #_0DCD18: LDY.b #$00\n #_0DCD1A: JSL Sprite_ShowSolicitedMessage\n #_0DCD1E: BCC .exit\n\n #_0DCD20: STA.w $0EB0,X\n #_0DCD23: STA.w $0DE0,X\n\n.exit\n #_0DCD26: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_YoungGameGuy", + "code": "SpriteDraw_YoungGameGuy:\n #_0DCDA7: PHB\n #_0DCDA8: PHK\n #_0DCDA9: PLB\n\n #_0DCDAA: LDA.b #$02\n #_0DCDAC: STA.b $06\n #_0DCDAE: STZ.b $07\n\n #_0DCDB0: LDA.w $0DE0,X\n #_0DCDB3: ASL A\n #_0DCDB4: ADC.w $0DC0,X\n\n #_0DCDB7: ASL A\n #_0DCDB8: ASL A\n #_0DCDB9: ASL A\n #_0DCDBA: ASL A\n\n #_0DCDBB: ADC.b #.oam_groups>>0\n #_0DCDBD: STA.b $08\n\n #_0DCDBF: LDA.b #.oam_groups>>8\n #_0DCDC1: ADC.b #$00\n #_0DCDC3: STA.b $09\n\n #_0DCDC5: JSL SpriteDraw_Tabulated_player_deferred\n #_0DCDC9: JSL SpriteDraw_Shadow_long\n\n #_0DCDCD: PLB\n\n #_0DCDCE: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Maiden", + "code": "SpriteDraw_Maiden:\n #_0DCE5F: PHB\n #_0DCE60: PHK\n #_0DCE61: PLB\n\n #_0DCE62: LDA.b #$02\n #_0DCE64: STA.b $06\n #_0DCE66: STZ.b $07\n\n #_0DCE68: LDA.w $0DE0,X\n #_0DCE6B: ASL A\n #_0DCE6C: ADC.w $0DC0,X\n #_0DCE6F: ASL A\n #_0DCE70: TAY\n\n #_0DCE71: LDA.w .gfx_offset+0,Y\n #_0DCE74: STA.w $0AE8\n\n #_0DCE77: LDA.w .gfx_offset+1,Y\n #_0DCE7A: STA.w $0AEA\n\n #_0DCE7D: TYA\n #_0DCE7E: ASL A\n #_0DCE7F: ASL A\n #_0DCE80: ASL A\n\n #_0DCE81: ADC.b #.oam_groups>>0\n #_0DCE83: STA.b $08\n\n #_0DCE85: LDA.b #.oam_groups>>8\n #_0DCE87: ADC.b #$00\n #_0DCE89: STA.b $09\n\n #_0DCE8B: JSL SpriteDraw_Tabulated_player_deferred\n\n #_0DCE8F: PLB\n\n #_0DCE90: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Priest", + "code": "SpriteDraw_Priest:\n #_0DCF31: PHB\n #_0DCF32: PHK\n #_0DCF33: PLB\n\n #_0DCF34: LDA.w $0DE0,X\n #_0DCF37: ASL A\n #_0DCF38: ADC.w $0DC0,X\n\n #_0DCF3B: ASL A\n #_0DCF3C: ASL A\n #_0DCF3D: ASL A\n #_0DCF3E: ASL A\n\n #_0DCF3F: ADC.b #.oam_groups>>0\n #_0DCF41: STA.b $08\n\n #_0DCF43: LDA.b #$00\n #_0DCF45: ADC.b #.oam_groups>>8\n #_0DCF47: STA.b $09\n\n #_0DCF49: LDA.b #$02\n #_0DCF4B: STA.b $06\n #_0DCF4D: STZ.b $07\n\n #_0DCF4F: JSL SpriteDraw_Tabulated_player_deferred\n #_0DCF53: JSL SpriteDraw_Shadow_long\n\n #_0DCF57: PLB\n\n #_0DCF58: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_FluteKid", + "code": "SpriteDraw_FluteKid:\n #_0DCFD9: PHB\n #_0DCFDA: PHK\n #_0DCFDB: PLB\n\n #_0DCFDC: LDA.b #$10\n #_0DCFDE: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_0DCFE2: LDA.w $0DE0,X\n #_0DCFE5: ASL A\n #_0DCFE6: ADC.w $0DC0,X\n\n #_0DCFE9: ASL A\n #_0DCFEA: ASL A\n #_0DCFEB: ASL A\n #_0DCFEC: ASL A\n #_0DCFED: ASL A\n\n #_0DCFEE: ADC.b #.oam_groups>>0\n #_0DCFF0: STA.b $08\n\n #_0DCFF2: LDA.b #.oam_groups>>8\n #_0DCFF4: ADC.b #$00\n #_0DCFF6: STA.b $09\n\n #_0DCFF8: LDA.b #$04\n #_0DCFFA: JSL SpriteDraw_Tabulated\n\n #_0DCFFE: PLB\n\n #_0DCFFF: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Stumpy", + "code": "SpriteDraw_Stumpy:\n #_0DD040: PHB\n #_0DD041: PHK\n #_0DD042: PLB\n\n #_0DD043: LDA.b #$02\n #_0DD045: STA.b $06\n #_0DD047: STZ.b $07\n\n #_0DD049: LDA.w $0DC0,X\n #_0DD04C: ASL A\n #_0DD04D: ASL A\n #_0DD04E: ASL A\n #_0DD04F: ASL A\n\n #_0DD050: ADC.b #.oam_groups>>0\n #_0DD052: STA.b $08\n\n #_0DD054: LDA.b #.oam_groups>>8\n #_0DD056: ADC.b #$00\n #_0DD058: STA.b $09\n\n #_0DD05A: JSL SpriteDraw_Tabulated_player_deferred\n\n #_0DD05E: PLB\n\n #_0DD05F: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_MedallionTabletDebris", + "code": "SpriteDraw_MedallionTabletDebris:\n #_0DD120: PHB\n #_0DD121: PHK\n #_0DD122: PLB\n\n #_0DD123: LDA.b #$14\n #_0DD125: STA.w $0F50,X\n\n #_0DD128: LDA.w $0DC0,X\n #_0DD12B: ASL A\n #_0DD12C: ASL A\n #_0DD12D: ASL A\n #_0DD12E: ASL A\n #_0DD12F: ASL A\n\n #_0DD130: ADC.b #.oam_groups>>0\n #_0DD132: STA.b $08\n\n #_0DD134: LDA.b #.oam_groups>>8\n #_0DD136: ADC.b #$00\n #_0DD138: STA.b $09\n\n #_0DD13A: LDA.b #$04\n #_0DD13C: JSL SpriteDraw_Tabulated\n\n #_0DD140: PLB\n\n #_0DD141: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_MedallionTablet", + "code": "SpriteDraw_MedallionTablet:\n #_0DD1E2: PHB\n #_0DD1E3: PHK\n #_0DD1E4: PLB\n\n #_0DD1E5: LDA.w $0DC0,X\n #_0DD1E8: ASL A\n #_0DD1E9: ASL A\n #_0DD1EA: ASL A\n #_0DD1EB: ASL A\n #_0DD1EC: ASL A\n\n #_0DD1ED: ADC.b #.oam_groups>>0\n #_0DD1EF: STA.b $08\n\n #_0DD1F1: LDA.b #.oam_groups>>8\n #_0DD1F3: ADC.b #$00\n #_0DD1F5: STA.b $09\n\n #_0DD1F7: LDA.b #$04\n #_0DD1F9: STA.b $06\n #_0DD1FB: STZ.b $07\n\n #_0DD1FD: JSL SpriteDraw_Tabulated_player_deferred\n\n #_0DD201: PLB\n\n #_0DD202: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Uncle", + "code": "SpriteDraw_Uncle:\n #_0DD391: PHB\n #_0DD392: PHK\n #_0DD393: PLB\n\n #_0DD394: LDA.b #$18\n #_0DD396: JSL SpriteDraw_AllocateOAMFromRegionB\n\n #_0DD39A: REP #$20\n\n #_0DD39C: LDA.w $0DC0,X\n #_0DD39F: AND.w #$00FF\n #_0DD3A2: STA.b $00\n\n #_0DD3A4: LDA.w $0DE0,X\n #_0DD3A7: AND.w #$00FF\n #_0DD3AA: STA.b $02\n\n #_0DD3AC: ASL A\n #_0DD3AD: ADC.b $02\n #_0DD3AF: ADC.b $00\n\n #_0DD3B1: ASL A\n #_0DD3B2: ADC.b $00\n\n #_0DD3B4: ASL A\n #_0DD3B5: ASL A\n #_0DD3B6: ASL A\n #_0DD3B7: ASL A\n\n #_0DD3B8: ADC.w #.oam_groups\n #_0DD3BB: STA.b $08\n\n #_0DD3BD: LDA.w #$0006\n #_0DD3C0: STA.b $06\n\n #_0DD3C2: SEP #$30\n\n #_0DD3C4: LDA.w $0DE0,X\n #_0DD3C7: ASL A\n #_0DD3C8: ADC.w $0DC0,X\n #_0DD3CB: TAY\n\n #_0DD3CC: LDA.w .source_1,Y\n #_0DD3CF: STA.w $0107\n\n #_0DD3D2: LDA.w .source_2,Y\n #_0DD3D5: STA.w $0108\n\n #_0DD3D8: JSL SpriteDraw_Tabulated_preset_quantity\n\n #_0DD3DC: LDA.w $0DE0,X\n #_0DD3DF: BEQ .no_shadow\n\n #_0DD3E1: CMP.b #$03\n #_0DD3E3: BEQ .no_shadow\n\n #_0DD3E5: JSL SpriteDraw_Shadow_long\n\n.no_shadow\n #_0DD3E9: PLB\n\n #_0DD3EA: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_SickKid", + "code": "SpriteDraw_SickKid:\n #_0DD47B: PHB\n #_0DD47C: PHK\n #_0DD47D: PLB\n\n #_0DD47E: LDA.b #$06\n #_0DD480: STA.b $06\n #_0DD482: STZ.b $07\n\n #_0DD484: LDA.w $0DC0,X\n #_0DD487: ASL A\n #_0DD488: ADC.w $0DC0,X\n\n #_0DD48B: ASL A\n #_0DD48C: ASL A\n #_0DD48D: ASL A\n #_0DD48E: ASL A\n\n #_0DD48F: ADC.b #.oam_groups>>0\n #_0DD491: STA.b $08\n\n #_0DD493: LDA.b #.oam_groups>>8\n #_0DD495: ADC.b #$00\n #_0DD497: STA.b $09\n\n #_0DD499: JSL SpriteDraw_Tabulated_player_deferred\n\n #_0DD49D: PLB\n\n #_0DD49E: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_CheckIfActive_Bank0D", + "code": "Sprite_CheckIfActive_Bank0D:\n #_0DD49F: LDA.w $0DD0,X\n #_0DD4A2: CMP.b #$09\n #_0DD4A4: BNE .inactive\n\n #_0DD4A6: LDA.w $0FC1\n #_0DD4A9: BNE .inactive\n\n #_0DD4AB: LDA.b $11\n #_0DD4AD: BNE .inactive\n\n #_0DD4AF: LDA.w $0CAA,X\n #_0DD4B2: BMI .active\n\n #_0DD4B4: LDA.w $0F00,X\n #_0DD4B7: BEQ .active\n\n.inactive\n #_0DD4B9: PLA\n #_0DD4BA: PLA\n\n.active\n #_0DD4BB: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Zirro", + "code": "SpriteDraw_Zirro:\n #_0DD56C: PHB\n #_0DD56D: PHK\n #_0DD56E: PLB\n\n #_0DD56F: LDA.b #$00\n #_0DD571: XBA\n #_0DD572: LDA.w $0DC0,X\n\n #_0DD575: REP #$20\n\n #_0DD577: ASL A\n #_0DD578: ASL A\n #_0DD579: ASL A\n #_0DD57A: ASL A\n\n #_0DD57B: ADC.w #.oam_groups\n #_0DD57E: STA.b $08\n\n #_0DD580: SEP #$20\n\n #_0DD582: LDA.b #$02\n #_0DD584: JSL SpriteDraw_Tabulated\n\n #_0DD588: JSL SpriteDraw_Shadow_long\n\n #_0DD58C: PLB\n\n #_0DD58D: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_ZirroBomb", + "code": "SpriteDraw_ZirroBomb:\n #_0DD606: PHB\n #_0DD607: PHK\n #_0DD608: PLB\n\n #_0DD609: LDA.w $0DF0,X\n #_0DD60C: BNE .dont_delete_self\n\n #_0DD60E: STZ.w $0DD0,X\n\n.dont_delete_self\n #_0DD611: LSR A\n #_0DD612: LSR A\n #_0DD613: PHA\n\n #_0DD614: LDA.b #$00\n #_0DD616: XBA\n\n #_0DD617: PLA\n\n #_0DD618: REP #$20\n\n #_0DD61A: ASL A\n #_0DD61B: ASL A\n #_0DD61C: ASL A\n #_0DD61D: STA.b $00\n\n #_0DD61F: ASL A\n #_0DD620: ADC.b $00\n #_0DD622: ADC.w #.oam_groups\n #_0DD625: STA.b $08\n\n #_0DD627: SEP #$20\n\n #_0DD629: LDA.b #$03\n #_0DD62B: JSL SpriteDraw_Tabulated\n\n #_0DD62F: PLB\n\n #_0DD630: RTL", + "file": "bank_0D.asm" + }, + { + "name": "PlayerBee_HoneInOnTarget", + "code": "PlayerBee_HoneInOnTarget:\n #_0DD631: LDA.w $0E20,Y\n #_0DD634: CMP.b #$88 ; SPRITE 88\n #_0DD636: BEQ .attack_mothula\n\n #_0DD638: LDA.w SprTileDie,Y\n #_0DD63B: AND.b #$02\n #_0DD63D: BNE .exit\n\n.attack_mothula\n #_0DD63F: LDA.w $0D10,Y\n #_0DD642: STA.b $00\n\n #_0DD644: LDA.w $0D30,Y\n #_0DD647: STA.b $01\n\n #_0DD649: LDA.w $0D00,Y\n #_0DD64C: STA.b $02\n\n #_0DD64E: LDA.w $0D20,Y\n #_0DD651: STA.b $03\n\n #_0DD653: REP #$20\n\n #_0DD655: LDA.w $0FD8\n #_0DD658: SEC\n #_0DD659: SBC.b $00\n #_0DD65B: CLC\n #_0DD65C: ADC.w #$0010\n\n #_0DD65F: CMP.w #$0018\n #_0DD662: BCS .exit\n\n #_0DD664: LDA.w $0FDA\n #_0DD667: SEC\n #_0DD668: SBC.b $02\n #_0DD66A: CLC\n #_0DD66B: ADC.w #$FFF8\n\n #_0DD66E: CMP.w #$0018\n #_0DD671: BCS .exit\n\n #_0DD673: SEP #$20\n\n #_0DD675: LDA.w $0E20,Y\n\n #_0DD678: CMP.b #$75 ; SPRITE 75\n #_0DD67A: BNE .not_bottle_vendor\n\n #_0DD67C: TXA\n #_0DD67D: INC A\n #_0DD67E: STA.w $0E90,Y\n\n #_0DD681: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Pikit", + "code": "SpriteDraw_Pikit:\n #_0DD6E6: PHB\n #_0DD6E7: PHK\n #_0DD6E8: PLB\n\n #_0DD6E9: JSR SpriteDraw_Pikit_Tongue\n\n; ---------------------------------------------------------\n\n #_0DD6EC: LDY.b #$00\n\n #_0DD6EE: LDA.b ($90),Y\n #_0DD6F0: STA.w $0FB5\n\n #_0DD6F3: INY\n\n #_0DD6F4: LDA.b ($90),Y\n #_0DD6F6: STA.w $0FB6\n\n #_0DD6F9: LDA.b #$00\n #_0DD6FB: XBA\n #_0DD6FC: LDA.w $0DC0,X\n\n #_0DD6FF: REP #$20\n\n #_0DD701: ASL A\n #_0DD702: ASL A\n #_0DD703: ASL A\n #_0DD704: ASL A\n\n #_0DD705: ADC.w #.oam_groups\n #_0DD708: STA.b $08\n\n #_0DD70A: LDA.b $90\n #_0DD70C: CLC\n #_0DD70D: ADC.w #$0018\n #_0DD710: STA.b $90\n\n #_0DD712: LDA.b $92\n #_0DD714: CLC\n #_0DD715: ADC.w #$0006\n #_0DD718: STA.b $92\n\n #_0DD71A: SEP #$20\n\n #_0DD71C: LDA.b #$02\n #_0DD71E: JSL SpriteDraw_Tabulated\n\n; ---------------------------------------------------------\n\n #_0DD722: LDA.w $0E40,X\n #_0DD725: PHA\n\n #_0DD726: SEC\n #_0DD727: SBC.b #$06\n #_0DD729: STA.w $0E40,X\n\n #_0DD72C: JSL SpriteDraw_Shadow_long\n\n #_0DD730: PLA\n #_0DD731: STA.w $0E40,X\n\n #_0DD734: JSR SpriteDraw_Pikit_Loot\n\n #_0DD737: PLB\n\n #_0DD738: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Pikit_Tongue", + "code": "SpriteDraw_Pikit_Tongue:\n #_0DD74A: LDA.w $0D80,X\n #_0DD74D: CMP.b #$02\n #_0DD74F: BNE EXIT_0DD739\n\n #_0DD751: LDA.w $0F00,X\n #_0DD754: BNE EXIT_0DD739\n\n #_0DD756: LDA.b $00\n #_0DD758: CLC\n #_0DD759: ADC.b #$04\n #_0DD75B: STA.b $00\n\n #_0DD75D: LDY.b #$14\n #_0DD75F: STA.b ($90),Y\n\n #_0DD761: CLC\n #_0DD762: ADC.w $0D90,X\n\n #_0DD765: LDY.b #$00\n #_0DD767: STA.b ($90),Y\n\n #_0DD769: LDA.b $02\n #_0DD76B: CLC\n #_0DD76C: ADC.b #$03\n #_0DD76E: STA.b $02\n\n #_0DD770: LDY.b #$15\n #_0DD772: STA.b ($90),Y\n\n #_0DD774: CLC\n #_0DD775: ADC.w $0DA0,X\n\n #_0DD778: LDY.b #$01\n #_0DD77A: STA.b ($90),Y\n\n #_0DD77C: LDA.b #$FE\n #_0DD77E: LDY.b #$16\n #_0DD780: STA.b ($90),Y\n\n #_0DD782: LDY.b #$02\n #_0DD784: STA.b ($90),Y\n\n #_0DD786: LDA.b $05\n #_0DD788: LDY.b #$17\n #_0DD78A: STA.b ($90),Y\n\n #_0DD78C: LDY.b #$03\n #_0DD78E: STA.b ($90),Y\n\n #_0DD790: LDA.w $0DE0,X\n #_0DD793: STA.b $0B\n\n #_0DD795: LDA.w $0D90,X\n #_0DD798: STA.b $0E\n\n #_0DD79A: BPL .positive_x\n\n #_0DD79C: EOR.b #$FF\n #_0DD79E: INC A\n\n.positive_x\n #_0DD79F: STA.b $0C\n\n #_0DD7A1: LDA.w $0DA0,X\n #_0DD7A4: STA.b $0F\n\n #_0DD7A6: BPL .positive_y\n\n #_0DD7A8: EOR.b #$FF\n #_0DD7AA: INC A\n\n.positive_y\n #_0DD7AB: STA.b $0D\n\n #_0DD7AD: LDY.b #$04\n\n #_0DD7AF: PHX\n\n #_0DD7B0: LDX.b #$03\n\n; ---------------------------------------------------------\n\n.next_tongue_object\n #_0DD7B2: LDA.b $0C\n #_0DD7B4: STA.w WRMPYA\n\n #_0DD7B7: LDA.w .multipliers,X\n #_0DD7BA: STA.w WRMPYB\n\n #_0DD7BD: JSR Three_NOP\n\n #_0DD7C0: LDA.b $0E\n #_0DD7C2: ASL A\n\n #_0DD7C3: LDA.w RDMPYH\n #_0DD7C6: BCC .positive_x_2\n\n #_0DD7C8: EOR.b #$FF\n #_0DD7CA: INC A\n\n.positive_x_2\n #_0DD7CB: CLC\n #_0DD7CC: ADC.b $00\n #_0DD7CE: STA.b ($90),Y\n\n #_0DD7D0: LDA.b $0D\n #_0DD7D2: STA.w WRMPYA\n\n #_0DD7D5: LDA.w .multipliers,X\n #_0DD7D8: STA.w WRMPYB\n\n #_0DD7DB: JSR Three_NOP\n\n #_0DD7DE: LDA.b $0F\n #_0DD7E0: ASL A\n\n #_0DD7E1: LDA.w RDMPYH\n #_0DD7E4: BCC .positive_y_2\n\n #_0DD7E6: EOR.b #$FF\n #_0DD7E8: INC A\n\n.positive_y_2\n #_0DD7E9: CLC\n #_0DD7EA: ADC.b $02\n #_0DD7EC: INY\n #_0DD7ED: STA.b ($90),Y\n\n #_0DD7EF: PHX\n\n #_0DD7F0: LDX.b $0B\n\n #_0DD7F2: LDA.w .tongue_char,X\n #_0DD7F5: INY\n #_0DD7F6: STA.b ($90),Y\n\n #_0DD7F8: INY\n #_0DD7F9: LDA.w .tongue_flip,X\n #_0DD7FC: ORA.b $05\n #_0DD7FE: STA.b ($90),Y\n\n #_0DD800: PLX\n\n #_0DD801: INY\n\n #_0DD802: DEX\n #_0DD803: BPL .next_tongue_object\n\n; ---------------------------------------------------------\n\n #_0DD805: PLX\n\n #_0DD806: LDY.b #$00\n #_0DD808: LDA.b #$05\n #_0DD80A: JSL Sprite_CorrectOAMEntries_long\n\n #_0DD80E: RTS", + "file": "bank_0D.asm" + }, + { + "name": "Three_NOP", + "code": "Three_NOP:\n #_0DD813: NOP\n #_0DD814: NOP\n #_0DD815: NOP\n\n #_0DD816: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Pikit_Loot", + "code": "SpriteDraw_Pikit_Loot:\n #_0DD858: LDA.w $0ED0,X\n #_0DD85B: BEQ .exit\n\n #_0DD85D: DEC A\n #_0DD85E: CMP.b #$03\n #_0DD860: BNE .not_shield\n\n #_0DD862: LDA.w $0E30,X\n #_0DD865: CLC\n #_0DD866: ADC.b #$02\n\n.not_shield\n #_0DD868: STA.b $02\n\n #_0DD86A: LDA.b #$10\n #_0DD86C: JSL SpriteDraw_AllocateOAMFromRegionC\n\n #_0DD870: LDY.b #$00\n\n #_0DD872: PHX\n\n #_0DD873: LDX.b #$03\n\n.next_loot_object\n #_0DD875: STX.b $03\n\n #_0DD877: LDA.b $02\n #_0DD879: ASL A\n #_0DD87A: ASL A\n #_0DD87B: ORA.b $03\n #_0DD87D: TAX\n\n #_0DD87E: LDA.w $0FB5\n #_0DD881: CLC\n #_0DD882: ADC.w .loot_offset_x,X\n #_0DD885: STA.b ($90),Y\n\n #_0DD887: LDA.w $0FB6\n #_0DD88A: CLC\n #_0DD88B: ADC.w .loot_offset_y,X\n\n #_0DD88E: INY\n #_0DD88F: STA.b ($90),Y\n\n #_0DD891: LDA.w .loot_char,X\n #_0DD894: INY\n #_0DD895: STA.b ($90),Y\n\n #_0DD897: LDX.b $02\n\n #_0DD899: LDA.w .loot_prop,X\n #_0DD89C: INY\n #_0DD89D: STA.b ($90),Y\n\n #_0DD89F: INY\n\n #_0DD8A0: LDX.b $03\n #_0DD8A2: DEX\n #_0DD8A3: BPL .next_loot_object\n\n; ---------------------------------------------------------\n\n #_0DD8A5: PLX\n\n #_0DD8A6: LDY.b #$00\n #_0DD8A8: LDA.b #$03\n #_0DD8AA: JSL Sprite_CorrectOAMEntries_long\n\n.exit\n #_0DD8AE: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_Kholdstare", + "code": "SpriteDraw_Kholdstare:\n #_0DD98F: PHB\n #_0DD990: PHK\n #_0DD991: PLB\n\n #_0DD992: JSL Sprite_PrepOAMCoord_long\n #_0DD996: BCS .exit\n\n; ---------------------------------------------------------\n\n #_0DD998: PHX\n\n #_0DD999: LDA.w $0D90,X\n #_0DD99C: PHA\n\n #_0DD99D: ASL A\n #_0DD99E: TAX\n\n #_0DD99F: REP #$20\n\n #_0DD9A1: LDA.b $00\n #_0DD9A3: CLC\n #_0DD9A4: ADC.w .offset_x,X\n #_0DD9A7: STA.b ($90),Y\n\n #_0DD9A9: AND.w #$0100\n #_0DD9AC: STA.b $0E\n\n #_0DD9AE: LDA.b $02\n #_0DD9B0: CLC\n #_0DD9B1: ADC.w .offset_y,X\n\n #_0DD9B4: INY\n #_0DD9B5: STA.b ($90),Y\n\n #_0DD9B7: CLC\n #_0DD9B8: ADC.w #$0010\n #_0DD9BB: CMP.w #$0100\n\n #_0DD9BE: SEP #$20\n #_0DD9C0: BCC .on_screen\n\n #_0DD9C2: LDA.b #$F0\n #_0DD9C4: STA.b ($90),Y\n\n.on_screen\n #_0DD9C6: PLX\n\n #_0DD9C7: LDA.w .char,X\n #_0DD9CA: INY\n #_0DD9CB: STA.b ($90),Y\n\n #_0DD9CD: LDA.w .flip,X\n #_0DD9D0: ORA.b $05\n #_0DD9D2: INY\n #_0DD9D3: STA.b ($90),Y\n\n #_0DD9D5: TYA\n #_0DD9D6: LSR A\n #_0DD9D7: LSR A\n #_0DD9D8: TAY\n\n #_0DD9D9: LDA.b #$02\n #_0DD9DB: ORA.b $0F\n #_0DD9DD: STA.b ($92),Y\n\n; ---------------------------------------------------------\n\n #_0DD9DF: PLX\n\n #_0DD9E0: LDA.b #$00\n #_0DD9E2: XBA\n #_0DD9E3: LDA.w $0DC0,X\n\n #_0DD9E6: REP #$20\n\n #_0DD9E8: ASL A\n #_0DD9E9: ASL A\n #_0DD9EA: ASL A\n #_0DD9EB: ASL A\n #_0DD9EC: ASL A\n\n #_0DD9ED: ADC.w #.oam_groups\n #_0DD9F0: STA.b $08\n\n #_0DD9F2: LDA.b $90\n #_0DD9F4: CLC\n #_0DD9F5: ADC.w #$0004\n #_0DD9F8: STA.b $90\n\n #_0DD9FA: INC.b $92\n\n #_0DD9FC: SEP #$20\n\n #_0DD9FE: LDA.b #$04\n #_0DDA00: JSL SpriteDraw_Tabulated\n\n.exit\n #_0DDA04: PLB\n\n #_0DDA05: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Sprite_SpawnFireball", + "code": "Sprite_SpawnFireball:\n #_0DDA06: PHB\n #_0DDA07: PHK\n #_0DDA08: PLB\n\n #_0DDA09: LDA.b #$19 ; SFX3.19\n #_0DDA0B: JSL SpriteSFX_QueueSFX3WithPan\n\n #_0DDA0F: LDY.b #$0D\n #_0DDA11: LDA.b #$55 ; SPRITE 55\n #_0DDA13: JSL Sprite_SpawnDynamically_slot_limited\n #_0DDA17: BMI .no_space\n\n #_0DDA19: LDA.b $00\n #_0DDA1B: CLC\n #_0DDA1C: ADC.b #$04\n #_0DDA1E: STA.w $0D10,Y ; SprX\n\n #_0DDA21: LDA.b $01\n #_0DDA23: ADC.b #$00\n #_0DDA25: STA.w $0D30,Y\n\n #_0DDA28: LDA.b $02\n #_0DDA2A: CLC\n #_0DDA2B: ADC.b #$04\n #_0DDA2D: PHP\n\n #_0DDA2E: SEC\n #_0DDA2F: SBC.b $04\n #_0DDA31: STA.w $0D00,Y ; SprY\n\n #_0DDA34: LDA.b $03\n #_0DDA36: SBC.b #$00\n\n #_0DDA38: PLP\n #_0DDA39: ADC.b #$00\n #_0DDA3B: STA.w $0D20,Y\n\n #_0DDA3E: LDA.w $0E60,Y\n #_0DDA41: AND.b #$FE\n #_0DDA43: ORA.b #$40\n #_0DDA45: STA.w $0E60,Y\n\n #_0DDA48: LDA.b #$06\n #_0DDA4A: STA.w $0F50,Y\n\n #_0DDA4D: LDA.b #$54\n #_0DDA4F: STA.w $0F60,Y\n #_0DDA52: STA.w $0E90,Y\n\n #_0DDA55: LDA.b #$20\n #_0DDA57: STA.w $0E40,Y\n\n #_0DDA5A: PHX\n\n #_0DDA5B: TYX\n\n #_0DDA5C: LDA.b #$20\n #_0DDA5E: JSL Sprite_ApplySpeedTowardsLink_long\n\n #_0DDA62: LDA.b #$14\n #_0DDA64: STA.w $0DF0,X\n\n #_0DDA67: LDA.b #$10\n #_0DDA69: STA.w $0E00,X\n\n #_0DDA6C: STZ.w $0BE0,X\n\n #_0DDA6F: LDA.b #$48\n #_0DDA71: STA.w $0CAA,X\n\n #_0DDA74: TXY\n\n #_0DDA75: PLX\n\n.no_space\n #_0DDA76: PLB\n\n #_0DDA77: TYA\n\n #_0DDA78: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SpriteDraw_ArcheryGame_Host", + "code": "SpriteDraw_ArcheryGame_Host:\n #_0DDAC4: PHB\n #_0DDAC5: PHK\n #_0DDAC6: PLB\n\n #_0DDAC7: JSL SpriteDraw_AllocateOAMDeferToPlayer_long\n #_0DDACB: JSL Sprite_PrepOAMCoord_long\n\n #_0DDACF: LDA.w $0DC0,X\n #_0DDAD2: ASL A\n #_0DDAD3: ADC.w $0DC0,X\n #_0DDAD6: STA.b $06\n\n #_0DDAD8: PHX\n\n #_0DDAD9: LDX.b #$02\n\n.next_object\n #_0DDADB: PHX\n\n #_0DDADC: TXA\n #_0DDADD: CLC\n #_0DDADE: ADC.b $06\n #_0DDAE0: TAX\n\n #_0DDAE1: LDA.b $00\n #_0DDAE3: CLC\n #_0DDAE4: ADC.w .offset_x,X\n #_0DDAE7: STA.b ($90),Y\n\n #_0DDAE9: LDA.b $02\n #_0DDAEB: CLC\n #_0DDAEC: ADC.w .offset_y,X\n\n #_0DDAEF: INY\n #_0DDAF0: STA.b ($90),Y\n\n #_0DDAF2: LDA.w .char,X\n #_0DDAF5: INY\n #_0DDAF6: STA.b ($90),Y\n\n #_0DDAF8: LDA.b $05\n #_0DDAFA: ORA.w .prop,X\n #_0DDAFD: INY\n #_0DDAFE: STA.b ($90),Y\n\n #_0DDB00: PHY\n\n #_0DDB01: TYA\n #_0DDB02: LSR A\n #_0DDB03: LSR A\n #_0DDB04: TAY\n\n #_0DDB05: LDA.w .size,X\n #_0DDB08: STA.b ($92),Y\n\n #_0DDB0A: PLY\n #_0DDB0B: INY\n\n #_0DDB0C: PLX\n #_0DDB0D: DEX\n #_0DDB0E: BPL .next_object\n\n #_0DDB10: PLX\n\n #_0DDB11: JSL SpriteDraw_Shadow_long\n\n #_0DDB15: PLB\n\n #_0DDB16: RTL", + "file": "bank_0D.asm" + }, + { + "name": "NULL_0DDB17", + "code": "NULL_0DDB17:\n #_0DDB17: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DDB1F: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DDB27: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DDB2F: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DDB37: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n #_0DDB3F: db $FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "CapacityUpgrades", + "code": "CapacityUpgrades:\n.bombs_bcd\n #_0DDB40: db $10, $15, $20, $25, $30, $35, $40, $50\n\n.bombs_hex\n #_0DDB48: db 10, 15, 20, 25, 30, 35, 40, 50\n\n.arrows_bcd\n #_0DDB50: db $30, $35, $40, $45, $50, $55, $60, $70\n\n.arrows_hex\n #_0DDB58: db 30, 35, 40, 45, 50, 55, 60, 70\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HeartBeepThresholds", + "code": "HeartBeepThresholds:\n #_0DDB60: db $09, $09, $09, $09, $09, $09, $09, $09\n #_0DDB68: db $11, $11, $11, $11, $11, $11, $11, $19\n #_0DDB70: db $19, $19, $19, $19, $19\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "RefillLogic_long", + "code": "RefillLogic_long:\n #_0DDB75: PHB\n #_0DDB76: PHK\n #_0DDB77: PLB\n\n #_0DDB78: LDA.w $0200\n #_0DDB7B: BEQ RefillLogic\n\n #_0DDB7D: PLB\n\n #_0DDB7E: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RefreshIcon_long", + "code": "RefreshIcon_long:\n #_0DDB7F: PHB\n #_0DDB80: PHK\n #_0DDB81: PLB\n\n #_0DDB82: JSR SearchForEquippedItem\n\n #_0DDB85: JSR UpdateHUD\n #_0DDB88: JSR RebuildHUD\n\n #_0DDB8B: SEP #$30\n\n #_0DDB8D: STZ.w $0200\n\n #_0DDB90: PLB\n\n #_0DDB91: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RefillLogic", + "code": "RefillLogic:\n #_0DDB92: LDA.l $7EF373\n #_0DDB96: BEQ .magic_refill_done\n\n #_0DDB98: LDA.l $7EF36E\n #_0DDB9C: CMP.b #$80\n #_0DDB9E: BCC .need_more_magic\n\n #_0DDBA0: LDA.b #$80\n #_0DDBA2: STA.l $7EF36E\n\n #_0DDBA6: LDA.b #$00\n #_0DDBA8: STA.l $7EF373\n #_0DDBAC: BRA .magic_refill_done\n\n.need_more_magic\n #_0DDBAE: LDA.l $7EF373\n #_0DDBB2: DEC A\n #_0DDBB3: STA.l $7EF373\n\n #_0DDBB7: LDA.l $7EF36E\n #_0DDBBB: INC A\n #_0DDBBC: STA.l $7EF36E\n\n #_0DDBC0: LDA.b $1A\n #_0DDBC2: AND.b #$03\n #_0DDBC4: BNE .magic_refill_done\n\n #_0DDBC6: LDA.w $012E\n #_0DDBC9: BNE .magic_refill_done\n\n #_0DDBCB: LDA.b #$2D ; SFX2.2D\n #_0DDBCD: STA.w $012E\n\n; ---------------------------------------------------------\n\n.magic_refill_done\n #_0DDBD0: REP #$30\n\n #_0DDBD2: LDA.l $7EF362\n #_0DDBD6: CMP.l $7EF360\n #_0DDBDA: BEQ .rupee_refill_done\n #_0DDBDC: BMI .gaining_rupees\n\n #_0DDBDE: DEC A\n #_0DDBDF: BPL .losing_rupees\n\n #_0DDBE1: LDA.w #$0000\n #_0DDBE4: STA.l $7EF360\n\n #_0DDBE8: BRA .losing_rupees\n\n.gaining_rupees\n #_0DDBEA: INC A\n #_0DDBEB: CMP.w #1000\n #_0DDBEE: BCC .losing_rupees\n\n #_0DDBF0: LDA.w #999\n #_0DDBF3: STA.l $7EF360\n\n.losing_rupees\n #_0DDBF7: STA.l $7EF362\n\n #_0DDBFB: SEP #$30\n\n #_0DDBFD: LDA.w $012E\n #_0DDC00: BNE .rupee_refill_done\n\n #_0DDC02: LDA.w $0CFD\n #_0DDC05: INC.w $0CFD\n #_0DDC08: AND.b #$07\n #_0DDC0A: BNE .rupee_sound_done\n\n #_0DDC0C: LDA.b #$29 ; SFX2.29\n #_0DDC0E: STA.w $012E\n\n #_0DDC11: BRA .rupee_sound_done\n\n.rupee_refill_done\n #_0DDC13: SEP #$30\n\n #_0DDC15: STZ.w $0CFD\n\n; ---------------------------------------------------------\n\n.rupee_sound_done\n #_0DDC18: LDA.l $7EF375 ; bombs\n #_0DDC1C: BEQ .bomb_refill_done\n\n #_0DDC1E: LDA.l $7EF375\n #_0DDC22: DEC A\n #_0DDC23: STA.l $7EF375\n\n #_0DDC27: LDA.l $7EF370\n #_0DDC2B: TAY\n\n #_0DDC2C: LDA.l $7EF343\n #_0DDC30: CMP.w CapacityUpgrades_bombs_hex,Y\n #_0DDC33: BEQ .bomb_refill_done\n\n #_0DDC35: INC A\n #_0DDC36: STA.l $7EF343\n\n; ---------------------------------------------------------\n\n.bomb_refill_done\n #_0DDC3A: LDA.l $7EF376 ; arrows\n #_0DDC3E: BEQ .arrow_refill_done\n\n #_0DDC40: LDA.l $7EF376\n #_0DDC44: DEC A\n #_0DDC45: STA.l $7EF376\n\n #_0DDC49: LDA.l $7EF371\n #_0DDC4D: TAY\n\n #_0DDC4E: LDA.l $7EF377\n #_0DDC52: CMP.w CapacityUpgrades_arrows_hex,Y\n #_0DDC55: BEQ .too_many_arrows\n\n #_0DDC57: INC A\n #_0DDC58: STA.l $7EF377\n\n.too_many_arrows\n #_0DDC5C: LDA.l $7EF340\n #_0DDC60: BEQ .arrow_refill_done\n\n #_0DDC62: AND.b #$01\n #_0DDC64: CMP.b #$01\n #_0DDC66: BNE .arrow_refill_done\n\n #_0DDC68: LDA.l $7EF340 ; change bow icon to have arrows\n #_0DDC6C: INC A\n #_0DDC6D: STA.l $7EF340\n\n #_0DDC71: JSL RefreshIcon_long\n\n; ---------------------------------------------------------\n\n.arrow_refill_done\n #_0DDC75: LDA.w $02E4\n #_0DDC78: BNE .done_beeping\n\n #_0DDC7A: LDA.l $7EF372\n #_0DDC7E: BNE .done_beeping\n\n #_0DDC80: LDA.l $7EF36C\n #_0DDC84: LSR A\n #_0DDC85: LSR A\n #_0DDC86: LSR A\n #_0DDC87: TAX\n\n #_0DDC88: LDA.l $7EF36D\n #_0DDC8C: CMP.w HeartBeepThresholds,X\n #_0DDC8F: BCS .done_beeping\n\n #_0DDC91: LDA.w $04CA\n #_0DDC94: BNE .tick_beep_timer\n\n #_0DDC96: LDA.w $012E\n #_0DDC99: BNE .done_beeping\n\n #_0DDC9B: LDA.b #$20\n #_0DDC9D: STA.w $04CA\n\n #_0DDCA0: LDA.b #$2B ; SFX2.2B\n #_0DDCA2: STA.w $012E\n\n.tick_beep_timer\n #_0DDCA5: DEC.w $04CA\n\n; ---------------------------------------------------------\n\n.done_beeping\n #_0DDCA8: LDA.w $020A\n #_0DDCAB: BNE .no_heart_refill_yet\n\n #_0DDCAD: LDA.l $7EF372\n #_0DDCB1: BEQ .heart_refill_done\n\n #_0DDCB3: LDA.l $7EF36D\n #_0DDCB7: CMP.l $7EF36C\n #_0DDCBB: BCC .keep_healing\n\n #_0DDCBD: LDA.l $7EF36C\n #_0DDCC1: STA.l $7EF36D\n\n #_0DDCC5: LDA.b #$00\n #_0DDCC7: STA.l $7EF372\n\n #_0DDCCB: BRA .heart_refill_done\n\n.keep_healing\n #_0DDCCD: LDA.l $7EF36D\n #_0DDCD1: CLC\n #_0DDCD2: ADC.b #$08\n #_0DDCD4: STA.l $7EF36D\n\n #_0DDCD8: LDA.w $012F\n #_0DDCDB: BNE .skip_heal_sfx\n\n #_0DDCDD: LDA.b #$0D ; SFX3.0D\n #_0DDCDF: STA.w $012F\n\n.skip_heal_sfx\n #_0DDCE2: LDA.l $7EF36D\n #_0DDCE6: CMP.l $7EF36C\n #_0DDCEA: BCC .health_is_in_range\n\n #_0DDCEC: LDA.l $7EF36C\n #_0DDCF0: STA.l $7EF36D\n\n.health_is_in_range\n #_0DDCF4: LDA.l $7EF372\n #_0DDCF8: SEC\n #_0DDCF9: SBC.b #$08\n #_0DDCFB: STA.l $7EF372\n\n #_0DDCFF: INC.w $020A\n\n #_0DDD02: LDA.b #$07\n #_0DDD04: STA.w $0208\n\n; ---------------------------------------------------------\n\n.no_heart_refill_yet\n #_0DDD07: REP #$30\n\n #_0DDD09: LDA.w #$FFFF\n #_0DDD0C: STA.b $0E\n\n #_0DDD0E: JSR UpdateHUDBuffer_skip_hearts\n #_0DDD11: JSR AnimateHeartRefill\n\n #_0DDD14: SEP #$30\n\n #_0DDD16: INC.b $16\n\n #_0DDD18: PLB\n\n #_0DDD19: RTL", + "file": "bank_0D.asm" + }, + { + "name": "Module0E_01_ItemMenu", + "code": "Module0E_01_ItemMenu:\n #_0DDD2A: PHB\n #_0DDD2B: PHK\n #_0DDD2C: PLB\n\n #_0DDD2D: JSR HandleItemMenu\n\n #_0DDD30: PLB\n\n #_0DDD31: RTL", + "file": "bank_0D.asm" + }, + { + "name": "UpdateEquippedItem_long", + "code": "UpdateEquippedItem_long:\n #_0DDD32: JSR UpdateEquippedItem\n\n #_0DDD35: RTL", + "file": "bank_0D.asm" + }, + { + "name": "HandleItemMenu", + "code": "HandleItemMenu:\n #_0DDD36: INC.w $0206\n\n #_0DDD39: LDA.w $0200\n #_0DDD3C: JSL JumpTableLocal\n #_0DDD40: dw ItemMenu_ClearTilemap ; 0x00\n #_0DDD42: dw ItemMenu_Initialize ; 0x01\n #_0DDD44: dw ItemMenu_Open ; 0x02\n #_0DDD46: dw ItemMenu_NextMode ; 0x03\n #_0DDD48: dw ItemMenu_YItemSelection ; 0x04\n #_0DDD4A: dw UpdateHUD ; 0x05\n #_0DDD4C: dw ItemMenu_Close ; 0x06\n #_0DDD4E: dw BottleMenu_Go ; 0x07\n #_0DDD50: dw BottleMenu_Initialize ; 0x08\n #_0DDD52: dw BottleMenu_Open ; 0x09\n #_0DDD54: dw BottleMenu ; 0x0A\n #_0DDD56: dw BottleMenu_Close ; 0x0B\n #_0DDD58: dw BottleMenu_RestoreMenu ; 0x0C\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_ClearTilemap", + "code": "ItemMenu_ClearTilemap:\n #_0DDD5A: REP #$20\n\n #_0DDD5C: LDX.b #$00\n #_0DDD5E: LDA.w #$207F\n\n.clear_buffer_loop\n #_0DDD61: STA.w $1000,X\n #_0DDD64: STA.w $1080,X\n #_0DDD67: STA.w $1100,X\n #_0DDD6A: STA.w $1180,X\n\n #_0DDD6D: STA.w $1200,X\n #_0DDD70: STA.w $1280,X\n #_0DDD73: STA.w $1300,X\n #_0DDD76: STA.w $1380,X\n\n #_0DDD79: STA.w $1400,X\n #_0DDD7C: STA.w $1480,X\n #_0DDD7F: STA.w $1500,X\n #_0DDD82: STA.w $1580,X\n\n #_0DDD85: STA.w $1600,X\n #_0DDD88: STA.w $1680,X\n #_0DDD8B: STA.w $1700,X\n #_0DDD8E: STA.w $1780,X\n\n #_0DDD91: INX\n #_0DDD92: INX\n #_0DDD93: CPX.b #$80\n #_0DDD95: BNE .clear_buffer_loop\n\n; ---------------------------------------------------------\n\n #_0DDD97: SEP #$20\n\n #_0DDD99: LDA.b #$11 ; SFX3.11\n #_0DDD9B: STA.w $012F\n\n #_0DDD9E: LDA.b #$01\n #_0DDDA0: STA.b $17\n\n #_0DDDA2: LDA.b #$22\n #_0DDDA4: STA.w $0116\n\n #_0DDDA7: INC.w $0200\n\n #_0DDDAA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_Initialize", + "code": "ItemMenu_Initialize:\n #_0DDDAB: JSR SearchForEquippedItem\n\n #_0DDDAE: LDA.b #$01\n #_0DDDB0: JSR ItemMenu_GetPaletteMask\n #_0DDDB3: JSR ItemMenu_DrawYItems\n\n #_0DDDB6: LDA.b #$01\n #_0DDDB8: JSR ItemMenu_GetPaletteMask\n #_0DDDBB: JSR ItemMenu_DrawEquippedItemBox\n\n #_0DDDBE: LDA.b #$01\n #_0DDDC0: JSR ItemMenu_GetPaletteMask\n\n #_0DDDC3: JSR ItemMenu_DrawAbilityText\n #_0DDDC6: JSR ItemMenu_DrawAbilityIcons\n\n #_0DDDC9: JSR ItemMenu_DrawProgressIcons\n #_0DDDCC: JSR ItemMenu_DrawMoonPearl\n\n #_0DDDCF: JSR NotAsGoodAsSMT029032\n\n #_0DDDD2: LDA.b #$01\n #_0DDDD4: JSR ItemMenu_GetPaletteMask\n\n #_0DDDD7: JSR ItemMenu_DrawEquipment\n #_0DDDDA: JSR ItemMenu_DrawShield\n #_0DDDDD: JSR ItemMenu_DrawMail\n\n #_0DDDE0: JSR ItemMenu_DrawMapAndBigKey\n #_0DDDE3: JSR ItemMenu_DrawCompass\n\n; ---------------------------------------------------------\n\n #_0DDDE6: LDX.b #$12\n\n #_0DDDE8: LDA.l $7EF340\n\n.next_item_check\n #_0DDDEC: ORA.l $7EF341,X\n\n #_0DDDF0: DEX\n #_0DDDF1: BPL .next_item_check\n\n; ---------------------------------------------------------\n\n #_0DDDF3: CMP.b #$00\n #_0DDDF5: BEQ .no_items\n\n #_0DDDF7: LDA.l $7EF35C\n #_0DDDFB: ORA.l $7EF35D\n #_0DDDFF: ORA.l $7EF35E\n #_0DDE03: ORA.l $7EF35F\n\n #_0DDE07: BNE .bottles_yes\n #_0DDE09: BRA .no_bottles\n\n; ---------------------------------------------------------\n\n.bottles_yes\n #_0DDE0B: LDA.l $7EF34F\n #_0DDE0F: BNE .bottle_selected\n\n #_0DDE11: TAY\n\n #_0DDE12: INY\n #_0DDE13: LDA.l $7EF35C\n #_0DDE17: BNE .choose_this_bottle\n\n #_0DDE19: INY\n #_0DDE1A: LDA.l $7EF35D\n #_0DDE1E: BNE .choose_this_bottle\n\n #_0DDE20: INY\n #_0DDE21: LDA.l $7EF35E\n #_0DDE25: BNE .choose_this_bottle\n\n #_0DDE27: INY\n\n.choose_this_bottle\n #_0DDE28: TYA\n\n.no_bottles\n #_0DDE29: STA.l $7EF34F\n\n; ---------------------------------------------------------\n\n.bottle_selected\n #_0DDE2D: JSR ItemMenu_CheckForOwnership\n #_0DDE30: BCS .we_have_it\n\n #_0DDE32: JSR ItemMenu_LookForItem_Right\n\n.we_have_it\n #_0DDE35: JSR ItemMenu_DrawEquippedYItem\n\n #_0DDE38: LDA.w $0202\n #_0DDE3B: CMP.b #$10\n #_0DDE3D: BNE .no_items\n\n #_0DDE3F: LDA.b #$01\n #_0DDE41: JSR ItemMenu_GetPaletteMask\n #_0DDE44: JSR ItemMenu_DrawBottleSubmenu\n\n.no_items\n #_0DDE47: LDA.b #$10\n #_0DDE49: STA.w $0207\n\n #_0DDE4C: LDA.b #$01\n #_0DDE4E: STA.b $17\n\n #_0DDE50: LDA.b #$22\n #_0DDE52: STA.w $0116\n\n #_0DDE55: INC.w $0200\n\n #_0DDE58: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_Open", + "code": "ItemMenu_Open:\n #_0DDE59: REP #$20\n\n #_0DDE5B: LDA.b $EA\n #_0DDE5D: SEC\n #_0DDE5E: SBC.w #$0008\n #_0DDE61: STA.b $EA\n\n #_0DDE63: CMP.w #$FF18\n\n #_0DDE66: SEP #$20\n #_0DDE68: BNE .still_going\n\n #_0DDE6A: INC.w $0200\n\n.still_going\n #_0DDE6D: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_NextMode", + "code": "ItemMenu_NextMode:\n #_0DDE6E: LDX.b #$12\n\n #_0DDE70: LDA.l $7EF340\n\n.check_next_item\n #_0DDE74: ORA.l $7EF341,X\n #_0DDE78: DEX\n #_0DDE79: BPL .check_next_item\n\n; ---------------------------------------------------------\n\n #_0DDE7B: CMP.b #$00\n #_0DDE7D: BEQ .no_items_at_all\n\n #_0DDE7F: LDA.b #$01\n #_0DDE81: STA.b $17\n\n #_0DDE83: LDA.b #$22\n #_0DDE85: STA.w $0116\n\n #_0DDE88: JSR ItemMenu_CheckForOwnership\n #_0DDE8B: BCS .item_is_owned\n\n #_0DDE8D: JSR ItemMenu_LookForItem_Right\n\n.item_is_owned\n #_0DDE90: JSR ItemMenu_DrawEquippedYItem\n\n #_0DDE93: LDA.b #$04\n #_0DDE95: STA.w $0200\n\n #_0DDE98: LDA.w $0202\n #_0DDE9B: CMP.b #$10\n #_0DDE9D: BNE .not_bottle\n\n #_0DDE9F: LDA.b #$0A\n #_0DDEA1: STA.w $0200\n\n.not_bottle\n #_0DDEA4: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForOwnership", + "code": "ItemMenu_CheckForOwnership:\n #_0DDEB0: LDX.w $0202\n\n #_0DDEB3: LDA.l $7EF33F,X\n #_0DDEB7: BNE .owned\n\n #_0DDEB9: CLC\n\n #_0DDEBA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_PreviousItem", + "code": "ItemMenu_PreviousItem:\n #_0DDEBD: LDA.w $0202\n #_0DDEC0: DEC A\n\n #_0DDEC1: CMP.b #$01\n #_0DDEC3: BCS .nowrap\n\n #_0DDEC5: LDA.b #$14\n\n.nowrap\n #_0DDEC7: STA.w $0202\n\n #_0DDECA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_NextItem", + "code": "ItemMenu_NextItem:\n #_0DDECB: LDA.w $0202\n #_0DDECE: INC A\n #_0DDECF: CMP.b #$15\n #_0DDED1: BCC .nowrap\n\n #_0DDED3: LDA.b #$01\n\n.nowrap\n #_0DDED5: STA.w $0202\n\n #_0DDED8: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_LookForItem_Left", + "code": "ItemMenu_LookForItem_Left:\n.retry\n #_0DDED9: JSR ItemMenu_PreviousItem\n\n #_0DDEDC: JSR ItemMenu_CheckForOwnership\n #_0DDEDF: BCC .retry\n\n #_0DDEE1: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_LookForItem_Right", + "code": "ItemMenu_LookForItem_Right:\n.retry\n #_0DDEE2: JSR ItemMenu_NextItem\n\n #_0DDEE5: JSR ItemMenu_CheckForOwnership\n #_0DDEE8: BCC .retry\n\n #_0DDEEA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_LookForItem_Up", + "code": "ItemMenu_LookForItem_Up:\n.retry\n #_0DDEEB: JSR ItemMenu_PreviousItem\n #_0DDEEE: JSR ItemMenu_PreviousItem\n #_0DDEF1: JSR ItemMenu_PreviousItem\n #_0DDEF4: JSR ItemMenu_PreviousItem\n #_0DDEF7: JSR ItemMenu_PreviousItem\n\n #_0DDEFA: JSR ItemMenu_CheckForOwnership\n #_0DDEFD: BCC .retry\n\n #_0DDEFF: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_LookForItem_Down", + "code": "ItemMenu_LookForItem_Down:\n.retry\n #_0DDF00: JSR ItemMenu_NextItem\n #_0DDF03: JSR ItemMenu_NextItem\n #_0DDF06: JSR ItemMenu_NextItem\n #_0DDF09: JSR ItemMenu_NextItem\n #_0DDF0C: JSR ItemMenu_NextItem\n\n #_0DDF0F: JSR ItemMenu_CheckForOwnership\n #_0DDF12: BCC .retry\n\n #_0DDF14: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_YItemSelection", + "code": "ItemMenu_YItemSelection:\n #_0DDF15: INC.w $0207\n\n #_0DDF18: LDA.b $F0\n #_0DDF1A: BNE .input\n\n #_0DDF1C: STZ.b $BD\n\n.input\n #_0DDF1E: LDA.b $F4\n #_0DDF20: AND.b #$10\n #_0DDF22: BEQ .keepmenuing\n\n #_0DDF24: LDA.b #$05\n #_0DDF26: STA.w $0200\n\n #_0DDF29: LDA.b #$12 ; SFX3.12\n #_0DDF2B: STA.w $012F\n\n #_0DDF2E: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUD", + "code": "UpdateHUD:\n #_0DDFA9: INC.w $0200\n\n #_0DDFAC: JSR RebuildHUD_update\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "UpdateEquippedItem", + "code": "UpdateEquippedItem:\n #_0DDFAF: LDX.w $0202\n\n #_0DDFB2: LDA.l MenuID_to_EquipID,X\n #_0DDFB6: STA.w $0303\n\n #_0DDFB9: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_Close", + "code": "ItemMenu_Close:\n #_0DDFBA: REP #$20\n\n #_0DDFBC: LDA.b $EA\n #_0DDFBE: CLC\n #_0DDFBF: ADC.w #$0008\n #_0DDFC2: STA.b $EA\n\n #_0DDFC4: SEP #$20\n #_0DDFC6: BNE .exit\n\n #_0DDFC8: JSR RebuildHUD\n\n #_0DDFCB: STZ.w $0200\n #_0DDFCE: STZ.b $11\n\n #_0DDFD0: LDA.w $010C\n #_0DDFD3: STA.b $10\n\n #_0DDFD5: LDA.b $11\n #_0DDFD7: BEQ .road_always_taken\n\n #_0DDFD9: JSL RestoreTorchBackground\n\n.road_always_taken\n #_0DDFDD: LDA.w $0303\n #_0DDFE0: CMP.b #$05\n #_0DDFE2: BEQ .rods\n\n #_0DDFE4: CMP.b #$06\n #_0DDFE6: BEQ .rods\n\n #_0DDFE8: LDA.b #$02\n #_0DDFEA: STA.w $034B\n\n #_0DDFED: STZ.w $020B\n\n #_0DDFF0: BRA .exit\n\n.rods\n #_0DDFF2: LDA.w $020B\n #_0DDFF5: BNE ItemMenu_Close\n\n #_0DDFF7: STZ.w $034B\n\n.exit\n #_0DDFFA: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_Go", + "code": "BottleMenu_Go:\n #_0DDFFB: STZ.w $0205\n\n #_0DDFFE: INC.w $0200\n\n #_0DE001: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_Initialize", + "code": "BottleMenu_Initialize:\n #_0DE002: REP #$30\n\n #_0DE004: LDA.w $0205\n #_0DE007: AND.w #$00FF\n #_0DE00A: ASL A\n #_0DE00B: ASL A\n #_0DE00C: ASL A\n #_0DE00D: ASL A\n #_0DE00E: ASL A\n #_0DE00F: ASL A\n #_0DE010: TAX\n\n #_0DE011: LDA.w #$207F\n #_0DE014: STA.w $12EA,X\n #_0DE017: STA.w $12EC,X\n #_0DE01A: STA.w $12EE,X\n #_0DE01D: STA.w $12F0,X\n #_0DE020: STA.w $12F2,X\n #_0DE023: STA.w $12F4,X\n #_0DE026: STA.w $12F6,X\n #_0DE029: STA.w $12F8,X\n #_0DE02C: STA.w $12FA,X\n #_0DE02F: STA.w $12FC,X\n\n; ---------------------------------------------------------\n\n #_0DE032: SEP #$30\n\n #_0DE034: INC.w $0205\n\n #_0DE037: LDA.w $0205\n\n #_0DE03A: CMP.b #$13\n #_0DE03C: BNE .still_erasing\n\n #_0DE03E: INC.w $0200\n\n #_0DE041: LDA.b #$11\n #_0DE043: STA.w $0205\n\n.still_erasing\n #_0DE046: LDA.b #$01\n #_0DE048: STA.b $17\n\n #_0DE04A: LDA.b #$22\n #_0DE04C: STA.w $0116\n\n #_0DE04F: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_Open", + "code": "BottleMenu_Open:\n #_0DE08C: REP #$30\n\n #_0DE08E: LDA.w $0205\n #_0DE091: AND.w #$00FF\n\n #_0DE094: ASL A\n #_0DE095: ASL A\n #_0DE096: ASL A\n #_0DE097: ASL A\n #_0DE098: ASL A\n #_0DE099: ASL A\n\n #_0DE09A: TAX\n #_0DE09B: PHX\n\n; ---------------------------------------------------------\n\n #_0DE09C: LDY.w #$0012\n\n.next_top_tile\n #_0DE09F: LDA.w .border_tile_top,Y\n #_0DE0A2: STA.w $12FC,X\n\n #_0DE0A5: DEX\n #_0DE0A6: DEX\n\n #_0DE0A7: DEY\n #_0DE0A8: DEY\n #_0DE0A9: BPL .next_top_tile\n\n; ---------------------------------------------------------\n\n #_0DE0AB: PLX\n\n #_0DE0AC: LDY.w #$0012\n\n.next_row_tile\n #_0DE0AF: LDA.w .border_tile_row,Y\n #_0DE0B2: STA.w $133C,X\n\n #_0DE0B5: DEX\n #_0DE0B6: DEX\n\n #_0DE0B7: DEY\n #_0DE0B8: DEY\n #_0DE0B9: BPL .next_row_tile\n\n; ---------------------------------------------------------\n\n #_0DE0BB: LDX.w #$0012\n\n.next_bottom_tile\n #_0DE0BE: LDA.w .border_tile_bottom,X\n #_0DE0C1: STA.w $176A,X\n\n #_0DE0C4: DEX\n #_0DE0C5: DEX\n #_0DE0C6: BPL .next_bottom_tile\n\n; ---------------------------------------------------------\n\n #_0DE0C8: SEP #$30\n\n #_0DE0CA: DEC.w $0205\n\n #_0DE0CD: LDA.w $0205\n #_0DE0D0: BPL .not_fully_extended\n\n #_0DE0D2: INC.w $0200\n\n.not_fully_extended\n #_0DE0D5: LDA.b #$01\n #_0DE0D7: STA.b $17\n\n #_0DE0D9: LDA.b #$22\n #_0DE0DB: STA.w $0116\n\n #_0DE0DE: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu", + "code": "BottleMenu:\n #_0DE0DF: INC.w $0207\n\n #_0DE0E2: LDA.b $F4\n #_0DE0E4: AND.b #$10\n #_0DE0E6: BEQ .dont_close_menu\n\n #_0DE0E8: LDA.b #$12 ; SFX3.12\n #_0DE0EA: STA.w $012F\n\n #_0DE0ED: LDA.b #$05\n #_0DE0EF: STA.w $0200\n\n #_0DE0F2: BRA .continue\n\n; ---------------------------------------------------------\n\n.dont_close_menu\n #_0DE0F4: LDA.b $F4\n #_0DE0F6: AND.b #$03\n #_0DE0F8: BEQ .continue\n\n #_0DE0FA: LDA.b $F4\n #_0DE0FC: AND.b #$02\n #_0DE0FE: BEQ .not_left\n\n #_0DE100: JSR ItemMenu_LookForItem_Left\n\n #_0DE103: BRA .handle_lr\n\n.not_left\n #_0DE105: LDA.b $F4\n #_0DE107: AND.b #$01\n #_0DE109: BEQ .handle_lr\n\n #_0DE10B: JSR ItemMenu_LookForItem_Right\n\n.handle_lr\n #_0DE10E: LDA.b #$10\n #_0DE110: STA.w $0207\n\n #_0DE113: LDA.b #$20 ; SFX3.20\n #_0DE115: STA.w $012F\n\n #_0DE118: LDA.b #$01\n #_0DE11A: JSR ItemMenu_GetPaletteMask\n\n #_0DE11D: JSR ItemMenu_DrawYItems\n #_0DE120: JSR ItemMenu_DrawEquippedYItem\n\n #_0DE123: INC.w $0200\n #_0DE126: STZ.w $0205\n\n #_0DE129: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenuCursorPosition", + "code": "BottleMenuCursorPosition:\n #_0DE177: dw $0088\n #_0DE179: dw $0188\n #_0DE17B: dw $0288\n #_0DE17D: dw $0388\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_Update", + "code": "BottleMenu_Update:\n #_0DE17F: REP #$30\n\n #_0DE181: LDX.w #$0000\n #_0DE184: LDY.w #$0007\n #_0DE187: LDA.w #$24F5\n\n.empty_next\n #_0DE18A: STA.w $132C,X\n #_0DE18D: STA.w $136C,X\n #_0DE190: STA.w $13AC,X\n #_0DE193: STA.w $13EC,X\n #_0DE196: STA.w $142C,X\n #_0DE199: STA.w $146C,X\n #_0DE19C: STA.w $14AC,X\n #_0DE19F: STA.w $14EC,X\n #_0DE1A2: STA.w $152C,X\n #_0DE1A5: STA.w $156C,X\n #_0DE1A8: STA.w $15AC,X\n #_0DE1AB: STA.w $15EC,X\n #_0DE1AE: STA.w $162C,X\n #_0DE1B1: STA.w $166C,X\n #_0DE1B4: STA.w $16AC,X\n #_0DE1B7: STA.w $16EC,X\n #_0DE1BA: STA.w $172C,X\n\n #_0DE1BD: INX\n #_0DE1BE: INX\n\n #_0DE1BF: DEY\n #_0DE1C0: BPL .empty_next\n\n; ---------------------------------------------------------\n\n #_0DE1C2: LDA.w #$1372\n #_0DE1C5: STA.b $00\n\n #_0DE1C7: LDA.l $7EF35C\n #_0DE1CB: AND.w #$00FF\n #_0DE1CE: STA.b $02\n\n #_0DE1D0: LDA.w #ItemMenuIcons_bottles\n #_0DE1D3: STA.b $04\n\n #_0DE1D5: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE1D8: LDA.w #$1472\n #_0DE1DB: STA.b $00\n\n #_0DE1DD: LDA.l $7EF35D\n #_0DE1E1: AND.w #$00FF\n #_0DE1E4: STA.b $02\n\n #_0DE1E6: LDA.w #ItemMenuIcons_bottles\n #_0DE1E9: STA.b $04\n\n #_0DE1EB: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE1EE: LDA.w #$1572\n #_0DE1F1: STA.b $00\n\n #_0DE1F3: LDA.l $7EF35E\n #_0DE1F7: AND.w #$00FF\n #_0DE1FA: STA.b $02\n\n #_0DE1FC: LDA.w #ItemMenuIcons_bottles\n #_0DE1FF: STA.b $04\n\n #_0DE201: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE204: LDA.w #$1672\n #_0DE207: STA.b $00\n\n #_0DE209: LDA.l $7EF35F\n #_0DE20D: AND.w #$00FF\n #_0DE210: STA.b $02\n\n #_0DE212: LDA.w #ItemMenuIcons_bottles\n #_0DE215: STA.b $04\n\n #_0DE217: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE21A: LDA.w #$1408\n #_0DE21D: STA.b $00\n\n #_0DE21F: LDA.l $7EF34F\n #_0DE223: AND.w #$00FF\n #_0DE226: TAX\n #_0DE227: BNE .some_bottle_selected\n\n #_0DE229: LDA.w #$0000\n #_0DE22C: BRA .continue\n\n.some_bottle_selected\n #_0DE22E: LDA.l $7EF35B,X\n #_0DE232: AND.w #$00FF\n\n.continue\n #_0DE235: STA.b $02\n\n #_0DE237: LDA.w #ItemMenuIcons_bottles\n #_0DE23A: STA.b $04\n\n #_0DE23C: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE23F: LDA.w $0202\n #_0DE242: AND.w #$00FF\n #_0DE245: DEC A\n #_0DE246: ASL A\n #_0DE247: TAX\n\n #_0DE248: LDY.w ItemMenu_CursorPositions,X\n\n #_0DE24B: LDA.w $0000,Y\n #_0DE24E: STA.w $11B2\n\n #_0DE251: LDA.w $0002,Y\n #_0DE254: STA.w $11B4\n\n #_0DE257: LDA.w $0040,Y\n #_0DE25A: STA.w $11F2\n\n #_0DE25D: LDA.w $0042,Y\n #_0DE260: STA.w $11F4\n\n #_0DE263: LDA.l $7EF34F\n #_0DE267: DEC A\n #_0DE268: AND.w #$00FF\n #_0DE26B: ASL A\n #_0DE26C: TAY\n\n #_0DE26D: LDA.w BottleMenuCursorPosition,Y\n #_0DE270: TAY\n\n #_0DE271: LDA.w $0207\n #_0DE274: AND.w #$0010\n #_0DE277: BEQ .exit\n\n #_0DE279: LDA.w #$3C61\n #_0DE27C: STA.w $12AA,Y\n\n #_0DE27F: ORA.w #$4000\n #_0DE282: STA.w $12AC,Y\n\n #_0DE285: LDA.w #$3C70\n #_0DE288: STA.w $12E8,Y\n\n #_0DE28B: ORA.w #$4000\n #_0DE28E: STA.w $12EE,Y\n\n #_0DE291: LDA.w #$BC70\n #_0DE294: STA.w $1328,Y\n\n #_0DE297: ORA.w #$4000\n #_0DE29A: STA.w $132E,Y\n\n #_0DE29D: LDA.w #$BC61\n #_0DE2A0: STA.w $136A,Y\n\n #_0DE2A3: ORA.w #$4000\n #_0DE2A6: STA.w $136C,Y\n\n #_0DE2A9: LDA.w #$3C60\n #_0DE2AC: STA.w $12A8,Y\n\n #_0DE2AF: ORA.w #$4000\n #_0DE2B2: STA.w $12AE,Y\n\n #_0DE2B5: ORA.w #$8000\n #_0DE2B8: STA.w $136E,Y\n\n #_0DE2BB: EOR.w #$4000\n #_0DE2BE: STA.w $1368,Y\n\n; ---------------------------------------------------------\n\n #_0DE2C1: LDA.l $7EF34F\n #_0DE2C5: AND.w #$00FF\n #_0DE2C8: BEQ .exit\n\n #_0DE2CA: TAX\n\n #_0DE2CB: LDA.l $7EF35B,X\n #_0DE2CF: AND.w #$00FF\n #_0DE2D2: DEC A\n #_0DE2D3: ASL A\n #_0DE2D4: ASL A\n #_0DE2D5: ASL A\n #_0DE2D6: ASL A\n #_0DE2D7: ASL A\n #_0DE2D8: TAX\n\n #_0DE2D9: LDY.w #$0000\n\n.next_tile\n #_0DE2DC: LDA.w ItemMenuNameText_Bottles+$00,X\n #_0DE2DF: STA.w $122C,Y\n\n #_0DE2E2: LDA.w ItemMenuNameText_Bottles+$10,X\n #_0DE2E5: STA.w $126C,Y\n\n #_0DE2E8: INX\n #_0DE2E9: INX\n\n #_0DE2EA: INY\n #_0DE2EB: INY\n #_0DE2EC: CPY.w #$0010\n #_0DE2EF: BCC .next_tile\n\n.exit\n #_0DE2F1: SEP #$30\n\n #_0DE2F3: LDA.b #$01\n #_0DE2F5: STA.b $17\n\n #_0DE2F7: LDA.b #$22\n #_0DE2F9: STA.w $0116\n\n #_0DE2FC: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_Close", + "code": "BottleMenu_Close:\n #_0DE2FD: REP #$30\n\n #_0DE2FF: LDA.w $0205\n #_0DE302: AND.w #$00FF\n\n #_0DE305: ASL A\n #_0DE306: ASL A\n #_0DE307: ASL A\n #_0DE308: ASL A\n #_0DE309: ASL A\n #_0DE30A: ASL A\n\n #_0DE30B: TAX\n\n #_0DE30C: LDA.w #$207F\n #_0DE30F: STA.w $12EA,X\n #_0DE312: STA.w $12EC,X\n #_0DE315: STA.w $12EE,X\n #_0DE318: STA.w $12F0,X\n #_0DE31B: STA.w $12F2,X\n #_0DE31E: STA.w $12F4,X\n #_0DE321: STA.w $12F6,X\n #_0DE324: STA.w $12F8,X\n #_0DE327: STA.w $12FA,X\n #_0DE32A: STA.w $12FC,X\n\n #_0DE32D: SEP #$30\n\n #_0DE32F: INC.w $0205\n\n #_0DE332: LDA.w $0205\n #_0DE335: CMP.b #$13\n #_0DE337: BNE .still_closing\n\n #_0DE339: INC.w $0200\n\n.still_closing\n #_0DE33C: LDA.b #$01\n #_0DE33E: STA.b $17\n\n #_0DE340: LDA.b #$22\n #_0DE342: STA.w $0116\n\n #_0DE345: RTS", + "file": "bank_0D.asm" + }, + { + "name": "BottleMenu_RestoreMenu", + "code": "BottleMenu_RestoreMenu:\n #_0DE346: JSR ItemMenu_DrawProgressIcons\n #_0DE349: JSR ItemMenu_DrawMoonPearl\n\n #_0DE34C: JSR NotAsGoodAsSMT029032\n\n #_0DE34F: LDA.b #$01\n #_0DE351: JSR ItemMenu_GetPaletteMask\n\n #_0DE354: JSR ItemMenu_DrawEquipment\n #_0DE357: JSR ItemMenu_DrawShield\n #_0DE35A: JSR ItemMenu_DrawMail\n\n #_0DE35D: JSR ItemMenu_DrawMapAndBigKey\n #_0DE360: JSR ItemMenu_DrawCompass\n\n #_0DE363: LDA.b #$04\n #_0DE365: STA.w $0200\n\n #_0DE368: LDA.b #$01\n #_0DE36A: STA.b $17\n\n #_0DE36C: LDA.b #$22\n #_0DE36E: STA.w $0116\n\n #_0DE371: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawItem", + "code": "ItemMenu_DrawItem:\n #_0DE372: LDA.b $02\n #_0DE374: ASL A\n #_0DE375: ASL A\n #_0DE376: ASL A\n #_0DE377: TAY\n\n #_0DE378: LDX.b $00\n\n #_0DE37A: LDA.b ($04),Y\n #_0DE37C: STA.w $0000,X\n\n #_0DE37F: INY\n #_0DE380: INY\n\n #_0DE381: LDA.b ($04),Y\n #_0DE383: STA.w $0002,X\n\n #_0DE386: INY\n #_0DE387: INY\n\n #_0DE388: LDA.b ($04),Y\n #_0DE38A: STA.w $0040,X\n\n #_0DE38D: INY\n #_0DE38E: INY\n\n #_0DE38F: LDA.b ($04),Y\n #_0DE391: STA.w $0042,X\n\n #_0DE394: RTS", + "file": "bank_0D.asm" + }, + { + "name": "SearchForEquippedItem_long", + "code": "SearchForEquippedItem_long:\n #_0DE395: JSR SearchForEquippedItem\n\n #_0DE398: RTL", + "file": "bank_0D.asm" + }, + { + "name": "SearchForEquippedItem", + "code": "SearchForEquippedItem:\n #_0DE399: SEP #$30\n\n #_0DE39B: LDX.b #$12\n\n #_0DE39D: LDA.l $7EF340\n\n.next_check\n #_0DE3A1: ORA.l $7EF341,X\n\n #_0DE3A5: DEX\n #_0DE3A6: BPL .next_check\n\n #_0DE3A8: CMP.b #$00\n #_0DE3AA: BNE .item_found\n\n #_0DE3AC: STZ.w $0202\n #_0DE3AF: STZ.w $0203\n #_0DE3B2: STZ.w $0204\n\n.exit\n #_0DE3B5: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_GetPaletteMask", + "code": "ItemMenu_GetPaletteMask:\n #_0DE3C8: SEP #$30\n\n #_0DE3CA: LDX.b #$E3\n\n #_0DE3CC: CMP.b #$00\n #_0DE3CE: BEQ .pal0\n\n #_0DE3D0: LDX.b #$FF\n\n.pal0\n #_0DE3D2: STX.b $01\n\n #_0DE3D4: LDA.b #$FF\n #_0DE3D6: STA.b $00\n\n #_0DE3D8: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawYItems", + "code": "ItemMenu_DrawYItems:\n #_0DE3D9: REP #$30\n\n #_0DE3DB: LDA.w #$3CFB\n #_0DE3DE: AND.b $00\n #_0DE3E0: STA.w $1142\n\n #_0DE3E3: ORA.w #$8000\n #_0DE3E6: STA.w $14C2\n\n #_0DE3E9: ORA.w #$4000\n #_0DE3EC: STA.w $14E6\n\n #_0DE3EF: EOR.w #$8000\n #_0DE3F2: STA.w $1166\n\n; ---------------------------------------------------------\n\n #_0DE3F5: LDX.w #$0000\n #_0DE3F8: LDY.w #$000C\n\n.next_vertical_edge\n #_0DE3FB: LDA.w #$3CFC\n #_0DE3FE: AND.b $00\n #_0DE400: STA.w $1182,X\n\n #_0DE403: ORA.w #$4000\n #_0DE406: STA.w $11A6,X\n\n #_0DE409: TXA\n #_0DE40A: CLC\n #_0DE40B: ADC.w #$0040\n #_0DE40E: TAX\n\n #_0DE40F: DEY\n #_0DE410: BPL .next_vertical_edge\n\n; ---------------------------------------------------------\n\n #_0DE412: LDX.w #$0000\n #_0DE415: LDY.w #$0010\n\n.next_horizontal_edge\n #_0DE418: LDA.w #$3CF9\n #_0DE41B: AND.b $00\n #_0DE41D: STA.w $1144,X\n\n #_0DE420: ORA.w #$8000\n #_0DE423: STA.w $14C4,X\n\n #_0DE426: INX\n #_0DE427: INX\n\n #_0DE428: DEY\n #_0DE429: BPL .next_horizontal_edge\n\n; ---------------------------------------------------------\n\n #_0DE42B: LDX.w #$0000\n #_0DE42E: LDY.w #$0010\n\n #_0DE431: LDA.w #$24F5\n\n.paint_it_black\n #_0DE434: STA.w $1184,X\n #_0DE437: STA.w $11C4,X\n #_0DE43A: STA.w $1204,X\n #_0DE43D: STA.w $1244,X\n #_0DE440: STA.w $1284,X\n #_0DE443: STA.w $12C4,X\n #_0DE446: STA.w $1304,X\n #_0DE449: STA.w $1344,X\n #_0DE44C: STA.w $1384,X\n #_0DE44F: STA.w $13C4,X\n #_0DE452: STA.w $1404,X\n #_0DE455: STA.w $1444,X\n #_0DE458: STA.w $1484,X\n\n #_0DE45B: INX\n #_0DE45C: INX\n\n #_0DE45D: DEY\n #_0DE45E: BPL .paint_it_black\n\n; ---------------------------------------------------------\n\n #_0DE460: LDA.w #$3CF0\n #_0DE463: STA.w $1184\n\n #_0DE466: LDA.w #$3CF1\n #_0DE469: STA.w $11C4\n\n #_0DE46C: LDA.w #$246E\n #_0DE46F: STA.w $1146\n\n #_0DE472: LDA.w #$246F\n #_0DE475: STA.w $1148\n\n; ---------------------------------------------------------\n\n #_0DE478: LDA.w #$11C8\n #_0DE47B: STA.b $00\n\n #_0DE47D: LDA.l $7EF340\n #_0DE481: AND.w #$00FF\n #_0DE484: STA.b $02\n\n #_0DE486: LDA.w #ItemMenuIcons_bows\n #_0DE489: STA.b $04\n\n #_0DE48B: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE48E: LDA.w #$11CE\n #_0DE491: STA.b $00\n\n #_0DE493: LDA.l $7EF341\n #_0DE497: AND.w #$00FF\n #_0DE49A: STA.b $02\n\n #_0DE49C: LDA.w #ItemMenuIcons_booms\n #_0DE49F: STA.b $04\n\n #_0DE4A1: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE4A4: LDA.w #$11D4\n #_0DE4A7: STA.b $00\n\n #_0DE4A9: LDA.l $7EF342\n #_0DE4AD: AND.w #$00FF\n #_0DE4B0: STA.b $02\n\n #_0DE4B2: LDA.w #ItemMenuIcons_hook\n #_0DE4B5: STA.b $04\n\n #_0DE4B7: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE4BA: LDA.w #$11DA\n #_0DE4BD: STA.b $00\n\n #_0DE4BF: LDA.l $7EF343\n #_0DE4C3: AND.w #$00FF\n #_0DE4C6: BEQ .no_bombs\n\n #_0DE4C8: LDA.w #$0001\n\n.no_bombs\n #_0DE4CB: STA.b $02\n\n #_0DE4CD: LDA.w #ItemMenuIcons_bombs\n #_0DE4D0: STA.b $04\n\n #_0DE4D2: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE4D5: LDA.w #$11E0\n #_0DE4D8: STA.b $00\n\n #_0DE4DA: LDA.l $7EF344\n #_0DE4DE: AND.w #$00FF\n #_0DE4E1: STA.b $02\n\n #_0DE4E3: LDA.w #ItemMenuIcons_powder\n #_0DE4E6: STA.b $04\n\n #_0DE4E8: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE4EB: LDA.w #$1288\n #_0DE4EE: STA.b $00\n\n #_0DE4F0: LDA.l $7EF345\n #_0DE4F4: AND.w #$00FF\n #_0DE4F7: STA.b $02\n\n #_0DE4F9: LDA.w #ItemMenuIcons_fire_rod\n #_0DE4FC: STA.b $04\n\n #_0DE4FE: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE501: LDA.w #$128E\n #_0DE504: STA.b $00\n\n #_0DE506: LDA.l $7EF346\n #_0DE50A: AND.w #$00FF\n #_0DE50D: STA.b $02\n\n #_0DE50F: LDA.w #ItemMenuIcons_ice_rod\n #_0DE512: STA.b $04\n\n #_0DE514: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE517: LDA.w #$1294\n #_0DE51A: STA.b $00\n\n #_0DE51C: LDA.l $7EF347\n #_0DE520: AND.w #$00FF\n #_0DE523: STA.b $02\n\n #_0DE525: LDA.w #ItemMenuIcons_bombos\n #_0DE528: STA.b $04\n\n #_0DE52A: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE52D: LDA.w #$129A\n #_0DE530: STA.b $00\n\n #_0DE532: LDA.l $7EF348\n #_0DE536: AND.w #$00FF\n #_0DE539: STA.b $02\n\n #_0DE53B: LDA.w #ItemMenuIcons_ether\n #_0DE53E: STA.b $04\n\n #_0DE540: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE543: LDA.w #$12A0\n #_0DE546: STA.b $00\n\n #_0DE548: LDA.l $7EF349\n #_0DE54C: AND.w #$00FF\n #_0DE54F: STA.b $02\n\n #_0DE551: LDA.w #ItemMenuIcons_quake\n #_0DE554: STA.b $04\n\n #_0DE556: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE559: LDA.w #$1348\n #_0DE55C: STA.b $00\n\n #_0DE55E: LDA.l $7EF34A\n #_0DE562: AND.w #$00FF\n #_0DE565: STA.b $02\n\n #_0DE567: LDA.w #ItemMenuIcons_lamp\n #_0DE56A: STA.b $04\n\n #_0DE56C: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE56F: LDA.w #$134E\n #_0DE572: STA.b $00\n\n #_0DE574: LDA.l $7EF34B\n #_0DE578: AND.w #$00FF\n #_0DE57B: STA.b $02\n\n #_0DE57D: LDA.w #ItemMenuIcons_hammer\n #_0DE580: STA.b $04\n\n #_0DE582: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE585: LDA.w #$1354\n #_0DE588: STA.b $00\n\n #_0DE58A: LDA.l $7EF34C\n #_0DE58E: AND.w #$00FF\n #_0DE591: STA.b $02\n\n #_0DE593: LDA.w #ItemMenuIcons_flute\n #_0DE596: STA.b $04\n\n #_0DE598: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE59B: LDA.w #$135A\n #_0DE59E: STA.b $00\n\n #_0DE5A0: LDA.l $7EF34D\n #_0DE5A4: AND.w #$00FF\n #_0DE5A7: STA.b $02\n\n #_0DE5A9: LDA.w #ItemMenuIcons_net\n #_0DE5AC: STA.b $04\n\n #_0DE5AE: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE5B1: LDA.w #$1360\n #_0DE5B4: STA.b $00\n\n #_0DE5B6: LDA.l $7EF34E\n #_0DE5BA: AND.w #$00FF\n #_0DE5BD: STA.b $02\n\n #_0DE5BF: LDA.w #ItemMenuIcons_book\n #_0DE5C2: STA.b $04\n\n #_0DE5C4: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE5C7: LDA.w #$1408\n #_0DE5CA: STA.b $00\n\n #_0DE5CC: LDA.l $7EF34F\n #_0DE5D0: AND.w #$00FF\n #_0DE5D3: TAX\n\n #_0DE5D4: BNE .bottle_selected\n\n #_0DE5D6: LDA.w #$0000\n\n #_0DE5D9: BRA .bottle_draw\n\n.bottle_selected\n #_0DE5DB: LDA.l $7EF35B,X\n #_0DE5DF: AND.w #$00FF\n\n.bottle_draw\n #_0DE5E2: STA.b $02\n\n #_0DE5E4: LDA.w #ItemMenuIcons_bottles\n #_0DE5E7: STA.b $04\n\n #_0DE5E9: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE5EC: LDA.w #$140E\n #_0DE5EF: STA.b $00\n\n #_0DE5F1: LDA.l $7EF350\n #_0DE5F5: AND.w #$00FF\n #_0DE5F8: STA.b $02\n\n #_0DE5FA: LDA.w #ItemMenuIcons_somaria\n #_0DE5FD: STA.b $04\n\n #_0DE5FF: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE602: LDA.w #$1414\n #_0DE605: STA.b $00\n\n #_0DE607: LDA.l $7EF351\n #_0DE60B: AND.w #$00FF\n #_0DE60E: STA.b $02\n\n #_0DE610: LDA.w #ItemMenuIcons_byrna\n #_0DE613: STA.b $04\n\n #_0DE615: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE618: LDA.w #$141A\n #_0DE61B: STA.b $00\n\n #_0DE61D: LDA.l $7EF352\n #_0DE621: AND.w #$00FF\n #_0DE624: STA.b $02\n\n #_0DE626: LDA.w #ItemMenuIcons_cape\n #_0DE629: STA.b $04\n\n #_0DE62B: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE62E: LDA.w #$1420\n #_0DE631: STA.b $00\n\n #_0DE633: LDA.l $7EF353\n #_0DE637: AND.w #$00FF\n #_0DE63A: STA.b $02\n\n #_0DE63C: LDA.w #ItemMenuIcons_mirror\n #_0DE63F: STA.b $04\n\n #_0DE641: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE644: SEP #$30\n\n #_0DE646: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawEquippedItemBox", + "code": "ItemMenu_DrawEquippedItemBox:\n #_0DE647: REP #$30\n\n #_0DE649: LDA.w #$3CFB\n #_0DE64C: AND.b $00\n #_0DE64E: STA.w $116A\n\n #_0DE651: ORA.w #$8000\n #_0DE654: STA.w $12AA\n\n #_0DE657: ORA.w #$4000\n #_0DE65A: STA.w $12BC\n\n #_0DE65D: EOR.w #$8000\n #_0DE660: STA.w $117C\n\n; ---------------------------------------------------------\n\n #_0DE663: LDX.w #$0000\n #_0DE666: LDY.w #$0003\n\n.next_vertical\n #_0DE669: LDA.w #$3CFC\n #_0DE66C: AND.b $00\n #_0DE66E: STA.w $11AA,X\n\n #_0DE671: ORA.w #$4000\n #_0DE674: STA.w $11BC,X\n\n #_0DE677: TXA\n #_0DE678: CLC\n #_0DE679: ADC.w #$0040\n #_0DE67C: TAX\n\n #_0DE67D: DEY\n #_0DE67E: BPL .next_vertical\n\n; ---------------------------------------------------------\n\n #_0DE680: LDX.w #$0000\n #_0DE683: LDY.w #$0007\n\n.next_horizontal\n #_0DE686: LDA.w #$3CF9\n #_0DE689: AND.b $00\n #_0DE68B: STA.w $116C,X\n\n #_0DE68E: ORA.w #$8000\n #_0DE691: STA.w $12AC,X\n\n #_0DE694: INX\n #_0DE695: INX\n\n #_0DE696: DEY\n #_0DE697: BPL .next_horizontal\n\n; ---------------------------------------------------------\n\n #_0DE699: LDX.w #$0000\n #_0DE69C: LDY.w #$0007\n #_0DE69F: LDA.w #$24F5\n\n.paint_it_black\n #_0DE6A2: STA.w $11AC,X\n #_0DE6A5: STA.w $11EC,X\n #_0DE6A8: STA.w $122C,X\n #_0DE6AB: STA.w $126C,X\n\n #_0DE6AE: INX\n #_0DE6AF: INX\n\n #_0DE6B0: DEY\n #_0DE6B1: BPL .paint_it_black\n\n #_0DE6B3: SEP #$30\n\n #_0DE6B5: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawAbilityText", + "code": "ItemMenu_DrawAbilityText:\n #_0DE6B6: REP #$30\n\n #_0DE6B8: LDX.w #$0000\n #_0DE6BB: LDY.w #$0010\n #_0DE6BE: LDA.w #$24F5\n\n.paint_it_black\n #_0DE6C1: STA.w $1584,X\n #_0DE6C4: STA.w $15C4,X\n #_0DE6C7: STA.w $1604,X\n #_0DE6CA: STA.w $1644,X\n #_0DE6CD: STA.w $1684,X\n #_0DE6D0: STA.w $16C4,X\n #_0DE6D3: STA.w $1704,X\n\n #_0DE6D6: INX\n #_0DE6D7: INX\n\n #_0DE6D8: DEY\n #_0DE6D9: BPL .paint_it_black\n\n; ---------------------------------------------------------\n\n #_0DE6DB: LDA.l $7EF378\n #_0DE6DF: AND.w #$FF00\n #_0DE6E2: STA.b $02\n\n #_0DE6E4: LDA.w #$0003\n #_0DE6E7: STA.b $04\n\n #_0DE6E9: LDY.w #$0000\n #_0DE6EC: TYX\n\n; ---------------------------------------------------------\n\n.next_line\n #_0DE6ED: LDA.w #$0004\n #_0DE6F0: STA.b $06\n\n; ---------------------------------------------------------\n\n.next_ability\n #_0DE6F2: ASL.b $02\n #_0DE6F4: BCC .lacking_ability\n\n #_0DE6F6: LDA.w ItemMenu_AbilityText_main_jumble+0,X\n #_0DE6F9: STA.w $1588,Y\n\n #_0DE6FC: LDA.w ItemMenu_AbilityText_main_jumble+2,X\n #_0DE6FF: STA.w $158A,Y\n\n #_0DE702: LDA.w ItemMenu_AbilityText_main_jumble+4,X\n #_0DE705: STA.w $158C,Y\n\n #_0DE708: LDA.w ItemMenu_AbilityText_main_jumble+6,X\n #_0DE70B: STA.w $158E,Y\n\n #_0DE70E: LDA.w ItemMenu_AbilityText_main_jumble+8,X\n #_0DE711: STA.w $1590,Y\n\n #_0DE714: LDA.w ItemMenu_AbilityText_main_jumble+10,X\n #_0DE717: STA.w $15C8,Y\n\n #_0DE71A: LDA.w ItemMenu_AbilityText_main_jumble+12,X\n #_0DE71D: STA.w $15CA,Y\n\n #_0DE720: LDA.w ItemMenu_AbilityText_main_jumble+14,X\n #_0DE723: STA.w $15CC,Y\n\n #_0DE726: LDA.w ItemMenu_AbilityText_main_jumble+16,X\n #_0DE729: STA.w $15CE,Y\n\n #_0DE72C: LDA.w ItemMenu_AbilityText_main_jumble+18,X\n #_0DE72F: STA.w $15D0,Y\n\n; ---------------------------------------------------------\n\n.lacking_ability\n #_0DE732: TXA\n #_0DE733: CLC\n #_0DE734: ADC.w #$0014\n #_0DE737: TAX\n\n #_0DE738: TYA\n #_0DE739: CLC\n #_0DE73A: ADC.w #$000A\n #_0DE73D: TAY\n\n #_0DE73E: DEC.b $06\n #_0DE740: BNE .next_ability\n\n; ---------------------------------------------------------\n\n #_0DE742: TYA\n #_0DE743: CLC\n #_0DE744: ADC.w #$0058\n #_0DE747: TAY\n\n #_0DE748: DEC.b $04\n #_0DE74A: BNE .next_line\n\n; ---------------------------------------------------------\n\n #_0DE74C: LDA.w #$24FB\n #_0DE74F: AND.b $00\n #_0DE751: STA.w $1542\n\n #_0DE754: ORA.w #$8000\n #_0DE757: STA.w $1742\n\n #_0DE75A: ORA.w #$4000\n #_0DE75D: STA.w $1766\n\n #_0DE760: EOR.w #$8000\n #_0DE763: STA.w $1566\n\n; ---------------------------------------------------------\n\n #_0DE766: LDX.w #$0000\n #_0DE769: LDY.w #$0006\n\n.next_vertical\n #_0DE76C: LDA.w #$24FC\n #_0DE76F: AND.b $00\n #_0DE771: STA.w $1582,X\n\n #_0DE774: ORA.w #$4000\n #_0DE777: STA.w $15A6,X\n\n #_0DE77A: TXA\n #_0DE77B: CLC\n #_0DE77C: ADC.w #$0040\n #_0DE77F: TAX\n\n #_0DE780: DEY\n #_0DE781: BPL .next_vertical\n\n; =========================================================\n\n #_0DE783: LDX.w #$0000\n #_0DE786: LDY.w #$0010\n\n.next_horizontal\n #_0DE789: LDA.w #$24F9\n #_0DE78C: AND.b $00\n #_0DE78E: STA.w $1544,X\n\n #_0DE791: ORA.w #$8000\n #_0DE794: STA.w $1744,X\n\n #_0DE797: INX\n #_0DE798: INX\n\n #_0DE799: DEY\n #_0DE79A: BPL .next_horizontal\n\n; ---------------------------------------------------------\n\n #_0DE79C: LDA.w #$A4F0\n #_0DE79F: STA.w $1584\n\n #_0DE7A2: LDA.w #$24F2\n #_0DE7A5: STA.w $15C4\n\n #_0DE7A8: LDA.w #$2482\n #_0DE7AB: STA.w $1546\n\n #_0DE7AE: LDA.w #$2483\n #_0DE7B1: STA.w $1548\n\n #_0DE7B4: SEP #$30\n\n #_0DE7B6: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawAbilityIcons", + "code": "ItemMenu_DrawAbilityIcons:\n #_0DE7B7: REP #$30\n\n; ---------------------------------------------------------\n\n #_0DE7B9: LDA.w #$16D0\n #_0DE7BC: STA.b $00\n\n #_0DE7BE: LDA.l $7EF354\n #_0DE7C2: AND.w #$00FF\n #_0DE7C5: STA.b $02\n\n #_0DE7C7: LDA.w #ItemMenuIcons_gloves\n #_0DE7CA: STA.b $04\n\n #_0DE7CC: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE7CF: LDA.w #$16C8\n #_0DE7D2: STA.b $00\n\n #_0DE7D4: LDA.l $7EF355\n #_0DE7D8: AND.w #$00FF\n #_0DE7DB: STA.b $02\n\n #_0DE7DD: LDA.w #ItemMenuIcons_boots\n #_0DE7E0: STA.b $04\n\n #_0DE7E2: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE7E5: LDA.w #$16D8\n #_0DE7E8: STA.b $00\n\n #_0DE7EA: LDA.l $7EF356\n #_0DE7EE: AND.w #$00FF\n #_0DE7F1: STA.b $02\n\n #_0DE7F3: LDA.w #ItemMenuIcons_flippers\n #_0DE7F6: STA.b $04\n\n #_0DE7F8: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DE7FB: LDA.l $7EF354\n #_0DE7FF: AND.w #$00FF\n #_0DE802: BEQ .exit\n\n #_0DE804: CMP.w #$0001\n #_0DE807: BNE .titans_mitts\n\n.power_glove\n #_0DE809: LDA.w #$0000\n #_0DE80C: JSR ItemMenu_AbilityText_ChangeLift\n\n #_0DE80F: BRA .exit\n\n.titans_mitts\n #_0DE811: LDA.w #$0001\n #_0DE814: JSR ItemMenu_AbilityText_ChangeLift\n\n.exit\n #_0DE817: SEP #$30\n\n #_0DE819: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_AbilityText_ChangeLift", + "code": "ItemMenu_AbilityText_ChangeLift:\n #_0DE81A: STA.b $00 ; X = (4*A+1)*4 = 20*A\n\n #_0DE81C: ASL A\n #_0DE81D: ASL A\n #_0DE81E: ADC.b $00\n #_0DE820: ASL A\n #_0DE821: ASL A\n #_0DE822: TAX\n\n; ---------------------------------------------------------\n\n #_0DE823: LDA.w ItemMenu_AbilityText_lifts+0,X\n #_0DE826: STA.w $1588\n\n #_0DE829: LDA.w ItemMenu_AbilityText_lifts+2,X\n #_0DE82C: STA.w $158A\n\n #_0DE82F: LDA.w ItemMenu_AbilityText_lifts+4,X\n #_0DE832: STA.w $158C\n\n #_0DE835: LDA.w ItemMenu_AbilityText_lifts+6,X\n #_0DE838: STA.w $158E\n\n #_0DE83B: LDA.w ItemMenu_AbilityText_lifts+8,X\n #_0DE83E: STA.w $1590\n\n #_0DE841: LDA.w ItemMenu_AbilityText_lifts+10,X\n #_0DE844: STA.w $15C8\n\n #_0DE847: LDA.w ItemMenu_AbilityText_lifts+12,X\n #_0DE84A: STA.w $15CA\n\n #_0DE84D: LDA.w ItemMenu_AbilityText_lifts+14,X\n #_0DE850: STA.w $15CC\n\n #_0DE853: LDA.w ItemMenu_AbilityText_lifts+16,X\n #_0DE856: STA.w $15CE\n\n #_0DE859: LDA.w ItemMenu_AbilityText_lifts+18,X\n #_0DE85C: STA.w $15D0\n\n #_0DE85F: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuIcons_PendantWindow", + "code": "ItemMenuIcons_PendantWindow:\n.row0\n #_0DE860: dw $28FB, $28F9, $28F9, $28F9, $28F9\n #_0DE86A: dw $28F9, $28F9, $28F9, $28F9, $68FB\n\n.row1\n #_0DE874: dw $28FC, $2521, $2522, $2523, $2524\n #_0DE87E: dw $253F, $24F5, $24F5, $24F5, $68FC\n\n.row2\n #_0DE888: dw $28FC, $24F5, $24F5, $24F5, $24F5\n #_0DE892: dw $24F5, $24F5, $24F5, $24F5, $68FC\n\n.row3\n #_0DE89C: dw $28FC, $24F5, $24F5, $24F5, $213B\n #_0DE8A6: dw $213C, $24F5, $24F5, $24F5, $68FC\n\n.row4\n #_0DE8B0: dw $28FC, $24F5, $24F5, $24F5, $213D\n #_0DE8BA: dw $213E, $24F5, $24F5, $24F5, $68FC\n\n.row5\n #_0DE8C4: dw $28FC, $24F5, $24F5, $24F5, $24F5\n #_0DE8CE: dw $24F5, $24F5, $24F5, $24F5, $68FC\n\n.row6\n #_0DE8D8: dw $28FC, $24F5, $213B, $213C, $24F5\n #_0DE8E2: dw $24F5, $213B, $213C, $24F5, $68FC\n\n.row7\n #_0DE8EC: dw $28FC, $24F5, $213D, $213E, $24F5\n #_0DE8F6: dw $24F5, $213D, $213E, $24F5, $68FC\n\n.row8\n #_0DE900: dw $A8FB, $A8F9, $A8F9, $A8F9, $A8F9\n #_0DE90A: dw $A8F9, $A8F9, $A8F9, $A8F9, $E8FB\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuIcons_CrystalWindow", + "code": "ItemMenuIcons_CrystalWindow:\n.row0\n #_0DE914: dw $28FB, $28F9, $28F9, $28F9, $28F9\n #_0DE91E: dw $28F9, $28F9, $28F9, $28F9, $68FB\n\n.row1\n #_0DE928: dw $28FC, $252F, $2534, $2535, $2536\n #_0DE932: dw $2537, $24F5, $24F5, $24F5, $68FC\n\n.row2\n #_0DE93C: dw $28FC, $24F5, $24F5, $24F5, $24F5\n #_0DE946: dw $24F5, $24F5, $24F5, $24F5, $68FC\n\n.row3\n #_0DE950: dw $28FC, $24F5, $24F5, $3146, $3147\n #_0DE95A: dw $3146, $3147, $24F5, $24F5, $68FC\n\n.row4\n #_0DE964: dw $28FC, $24F5, $24F5, $24F5, $24F5\n #_0DE96E: dw $24F5, $24F5, $24F5, $24F5, $68FC\n\n.row5\n #_0DE978: dw $28FC, $24F5, $3146, $3147, $3146\n #_0DE982: dw $3147, $3146, $3147, $24F5, $68FC\n\n.row6\n #_0DE98C: dw $28FC, $24F5, $24F5, $24F5, $24F5\n #_0DE996: dw $24F5, $24F5, $24F5, $24F5, $68FC\n\n.row7\n #_0DE9A0: dw $28FC, $24F5, $24F5, $3146, $3147\n #_0DE9AA: dw $3146, $3147, $24F5, $24F5, $68FC\n\n.row8\n #_0DE9B4: dw $A8FB, $A8F9, $A8F9, $A8F9, $A8F9\n #_0DE9BE: dw $A8F9, $A8F9, $A8F9, $A8F9, $E8FB\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawProgressIcons", + "code": "ItemMenu_DrawProgressIcons:\n #_0DE9C8: LDA.l $7EF3C5\n #_0DE9CC: CMP.b #$03\n #_0DE9CE: BCC ItemMenu_DrawPendants\n\n #_0DE9D0: JMP.w ItemMenu_DrawCrystals\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawPendants", + "code": "ItemMenu_DrawPendants:\n #_0DE9D3: REP #$30\n\n #_0DE9D5: LDX.w #$0000\n\n.next_row\n #_0DE9D8: LDA.w ItemMenuIcons_PendantWindow_row0,X\n #_0DE9DB: STA.w $12EA,X\n\n #_0DE9DE: LDA.w ItemMenuIcons_PendantWindow_row1,X\n #_0DE9E1: STA.w $132A,X\n\n #_0DE9E4: LDA.w ItemMenuIcons_PendantWindow_row2,X\n #_0DE9E7: STA.w $136A,X\n\n #_0DE9EA: LDA.w ItemMenuIcons_PendantWindow_row3,X\n #_0DE9ED: STA.w $13AA,X\n\n #_0DE9F0: LDA.w ItemMenuIcons_PendantWindow_row4,X\n #_0DE9F3: STA.w $13EA,X\n\n #_0DE9F6: LDA.w ItemMenuIcons_PendantWindow_row5,X\n #_0DE9F9: STA.w $142A,X\n\n #_0DE9FC: LDA.w ItemMenuIcons_PendantWindow_row6,X\n #_0DE9FF: STA.w $146A,X\n\n #_0DEA02: LDA.w ItemMenuIcons_PendantWindow_row7,X\n #_0DEA05: STA.w $14AA,X\n\n #_0DEA08: LDA.w ItemMenuIcons_PendantWindow_row8,X\n #_0DEA0B: STA.w $14EA,X\n\n #_0DEA0E: INX\n #_0DEA0F: INX\n #_0DEA10: CPX.w #$0014\n #_0DEA13: BCC .next_row\n\n; ---------------------------------------------------------\n\n #_0DEA15: LDA.w #$13B2\n #_0DEA18: STA.b $00\n\n #_0DEA1A: LDA.l $7EF374\n #_0DEA1E: AND.w #$0001\n #_0DEA21: STA.b $02\n\n #_0DEA23: LDA.w #ItemMenuIcons_pendant_red\n #_0DEA26: STA.b $04\n\n #_0DEA28: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DEA2B: LDA.w #$146E\n #_0DEA2E: STA.b $00\n #_0DEA30: STZ.b $02\n\n #_0DEA32: LDA.l $7EF374\n #_0DEA36: AND.w #$0002\n #_0DEA39: BEQ .missing_blue\n\n #_0DEA3B: INC.b $02\n\n.missing_blue\n #_0DEA3D: LDA.w #ItemMenuIcons_pendant_blue\n #_0DEA40: STA.b $04\n\n #_0DEA42: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DEA45: LDA.w #$1476\n #_0DEA48: STA.b $00\n #_0DEA4A: STZ.b $02\n\n #_0DEA4C: LDA.l $7EF374\n #_0DEA50: AND.w #$0004\n #_0DEA53: BEQ .missing_green\n\n #_0DEA55: INC.b $02\n\n.missing_green\n #_0DEA57: LDA.w #ItemMenuIcons_pendant_green\n #_0DEA5A: STA.b $04\n\n #_0DEA5C: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DEA5F: SEP #$30\n\n #_0DEA61: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawCrystals", + "code": "ItemMenu_DrawCrystals:\n #_0DEA62: REP #$30\n\n #_0DEA64: LDX.w #$0000\n\n.next_row\n #_0DEA67: LDA.w ItemMenuIcons_CrystalWindow_row0,X\n #_0DEA6A: STA.w $12EA,X\n\n #_0DEA6D: LDA.w ItemMenuIcons_CrystalWindow_row1,X\n #_0DEA70: STA.w $132A,X\n\n #_0DEA73: LDA.w ItemMenuIcons_CrystalWindow_row2,X\n #_0DEA76: STA.w $136A,X\n\n #_0DEA79: LDA.w ItemMenuIcons_CrystalWindow_row3,X\n #_0DEA7C: STA.w $13AA,X\n\n #_0DEA7F: LDA.w ItemMenuIcons_CrystalWindow_row4,X\n #_0DEA82: STA.w $13EA,X\n\n #_0DEA85: LDA.w ItemMenuIcons_CrystalWindow_row5,X\n #_0DEA88: STA.w $142A,X\n\n #_0DEA8B: LDA.w ItemMenuIcons_CrystalWindow_row6,X\n #_0DEA8E: STA.w $146A,X\n\n #_0DEA91: LDA.w ItemMenuIcons_CrystalWindow_row7,X\n #_0DEA94: STA.w $14AA,X\n\n #_0DEA97: LDA.w ItemMenuIcons_CrystalWindow_row8,X\n #_0DEA9A: STA.w $14EA,X\n\n #_0DEA9D: INX\n #_0DEA9E: INX\n #_0DEA9F: CPX.w #$0014\n #_0DEAA2: BCC .next_row\n\n; ---------------------------------------------------------\n\n #_0DEAA4: LDA.l $7EF37A\n #_0DEAA8: AND.w #$0001\n #_0DEAAB: BEQ .missing_crystal_6\n\n #_0DEAAD: LDA.w #$2D44\n #_0DEAB0: STA.w $13B0\n\n #_0DEAB3: LDA.w #$2D45\n #_0DEAB6: STA.w $13B2\n\n; ---------------------------------------------------------\n\n.missing_crystal_6\n #_0DEAB9: LDA.l $7EF37A\n #_0DEABD: AND.w #$0002\n #_0DEAC0: BEQ .missing_crystal_1\n\n #_0DEAC2: LDA.w #$2D44\n #_0DEAC5: STA.w $13B4\n\n #_0DEAC8: LDA.w #$2D45\n #_0DEACB: STA.w $13B6\n\n; ---------------------------------------------------------\n\n.missing_crystal_1\n #_0DEACE: LDA.l $7EF37A\n #_0DEAD2: AND.w #$0004\n #_0DEAD5: BEQ .missing_crystal_5\n\n #_0DEAD7: LDA.w #$2D44\n #_0DEADA: STA.w $142E\n\n #_0DEADD: LDA.w #$2D45\n #_0DEAE0: STA.w $1430\n\n; ---------------------------------------------------------\n\n.missing_crystal_5\n #_0DEAE3: LDA.l $7EF37A\n #_0DEAE7: AND.w #$0008\n #_0DEAEA: BEQ .missing_crystal_7\n\n #_0DEAEC: LDA.w #$2D44\n #_0DEAEF: STA.w $1432\n\n #_0DEAF2: LDA.w #$2D45\n #_0DEAF5: STA.w $1434\n\n; ---------------------------------------------------------\n\n.missing_crystal_7\n #_0DEAF8: LDA.l $7EF37A\n #_0DEAFC: AND.w #$0010\n #_0DEAFF: BEQ .missing_crystal_2\n\n #_0DEB01: LDA.w #$2D44\n #_0DEB04: STA.w $1436\n\n #_0DEB07: LDA.w #$2D45\n #_0DEB0A: STA.w $1438\n\n; ---------------------------------------------------------\n\n.missing_crystal_2\n #_0DEB0D: LDA.l $7EF37A\n #_0DEB11: AND.w #$0020\n #_0DEB14: BEQ .missing_crystal_4\n\n #_0DEB16: LDA.w #$2D44\n #_0DEB19: STA.w $14B0\n\n #_0DEB1C: LDA.w #$2D45\n #_0DEB1F: STA.w $14B2\n\n; ---------------------------------------------------------\n\n.missing_crystal_4\n #_0DEB22: LDA.l $7EF37A\n #_0DEB26: AND.w #$0040\n #_0DEB29: BEQ .missing_crystal_3\n\n #_0DEB2B: LDA.w #$2D44\n #_0DEB2E: STA.w $14B4\n\n #_0DEB31: LDA.w #$2D45\n #_0DEB34: STA.w $14B6\n\n; ---------------------------------------------------------\n\n.missing_crystal_3\n #_0DEB37: SEP #$30\n\n #_0DEB39: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawEquippedYItem", + "code": "ItemMenu_DrawEquippedYItem:\n #_0DEB3A: REP #$30\n\n #_0DEB3C: LDA.w $0202\n #_0DEB3F: AND.w #$00FF\n #_0DEB42: DEC A\n #_0DEB43: ASL A\n #_0DEB44: TAX\n\n #_0DEB45: LDY.w ItemMenu_CursorPositions,X\n\n #_0DEB48: LDA.w $0000,Y\n #_0DEB4B: STA.w $11B2\n\n #_0DEB4E: LDA.w $0002,Y\n #_0DEB51: STA.w $11B4\n\n #_0DEB54: LDA.w $0040,Y\n #_0DEB57: STA.w $11F2\n\n #_0DEB5A: LDA.w $0042,Y\n #_0DEB5D: STA.w $11F4\n\n #_0DEB60: LDA.w $0207\n #_0DEB63: AND.w #$0010\n #_0DEB66: BEQ .dont_flicker\n\n; ---------------------------------------------------------\n\n #_0DEB68: LDA.w #$3C61\n #_0DEB6B: STA.w $0DFFC0,Y\n\n #_0DEB6E: ORA.w #$4000\n #_0DEB71: STA.w $0DFFC2,Y\n\n #_0DEB74: LDA.w #$3C70\n #_0DEB77: STA.w $0DFFFE,Y\n\n #_0DEB7A: ORA.w #$4000\n #_0DEB7D: STA.w $0004,Y\n\n #_0DEB80: LDA.w #$BC70\n #_0DEB83: STA.w $003E,Y\n\n #_0DEB86: ORA.w #$4000\n #_0DEB89: STA.w $0044,Y\n\n #_0DEB8C: LDA.w #$BC61\n #_0DEB8F: STA.w $0080,Y\n\n #_0DEB92: ORA.w #$4000\n #_0DEB95: STA.w $0082,Y\n\n #_0DEB98: LDA.w #$3C60\n #_0DEB9B: STA.w $0DFFBE,Y\n\n #_0DEB9E: ORA.w #$4000\n #_0DEBA1: STA.w $0DFFC4,Y\n\n #_0DEBA4: ORA.w #$8000\n #_0DEBA7: STA.w $0084,Y\n\n #_0DEBAA: EOR.w #$4000\n #_0DEBAD: STA.w $007E,Y\n\n; ---------------------------------------------------------\n\n.dont_flicker\n #_0DEBB0: LDA.w $0202\n #_0DEBB3: AND.w #$00FF\n #_0DEBB6: CMP.w #$0010\n #_0DEBB9: BNE .not_bottle\n\n #_0DEBBB: LDA.l $7EF34F\n #_0DEBBF: AND.w #$00FF\n #_0DEBC2: BEQ .not_bottle\n\n #_0DEBC4: TAX\n\n #_0DEBC5: LDA.l $7EF35B,X\n #_0DEBC9: AND.w #$00FF\n #_0DEBCC: DEC A\n\n #_0DEBCD: ASL A\n #_0DEBCE: ASL A\n #_0DEBCF: ASL A\n #_0DEBD0: ASL A\n #_0DEBD1: ASL A\n\n #_0DEBD2: TAX\n\n #_0DEBD3: LDY.w #$0000\n\n.next_character_bottle\n #_0DEBD6: LDA.w ItemMenuNameText_Bottles+$00,X\n #_0DEBD9: STA.w $122C,Y\n\n #_0DEBDC: LDA.w ItemMenuNameText_Bottles+$10,X\n #_0DEBDF: STA.w $126C,Y\n\n #_0DEBE2: INX\n #_0DEBE3: INX\n\n #_0DEBE4: INY\n #_0DEBE5: INY\n #_0DEBE6: CPY.w #$0010\n #_0DEBE9: BCC .next_character_bottle\n\n #_0DEBEB: JMP.w .exit\n\n; ---------------------------------------------------------\n\n.not_bottle\n #_0DEBEE: LDA.w $0202\n #_0DEBF1: AND.w #$00FF\n #_0DEBF4: CMP.w #$0005\n #_0DEBF7: BNE .not_powder\n\n #_0DEBF9: LDA.l $7EF344\n #_0DEBFD: AND.w #$00FF\n #_0DEC00: DEC A\n #_0DEC01: BEQ .not_powder\n\n #_0DEC03: DEC A\n\n #_0DEC04: ASL A\n #_0DEC05: ASL A\n #_0DEC06: ASL A\n #_0DEC07: ASL A\n #_0DEC08: ASL A\n\n #_0DEC09: TAX\n\n #_0DEC0A: LDY.w #$0000\n\n.next_character_powder\n #_0DEC0D: LDA.w ItemMenuNameText_Powder+$00,X\n #_0DEC10: STA.w $122C,Y\n\n #_0DEC13: LDA.w ItemMenuNameText_Powder+$10,X\n #_0DEC16: STA.w $126C,Y\n\n #_0DEC19: INX\n #_0DEC1A: INX\n\n #_0DEC1B: INY\n #_0DEC1C: INY\n #_0DEC1D: CPY.w #$0010\n #_0DEC20: BCC .next_character_powder\n\n #_0DEC22: JMP.w .exit\n\n; ---------------------------------------------------------\n\n.not_powder\n #_0DEC25: LDA.w $0202\n #_0DEC28: AND.w #$00FF\n #_0DEC2B: CMP.w #$0014\n #_0DEC2E: BNE .not_mirror\n\n #_0DEC30: LDA.l $7EF353\n #_0DEC34: AND.w #$00FF\n #_0DEC37: DEC A\n #_0DEC38: BEQ .not_mirror\n\n #_0DEC3A: DEC A\n #_0DEC3B: ASL A\n #_0DEC3C: ASL A\n #_0DEC3D: ASL A\n #_0DEC3E: ASL A\n #_0DEC3F: ASL A\n #_0DEC40: TAX\n\n #_0DEC41: LDY.w #$0000\n\n.next_character_mirror\n #_0DEC44: LDA.w ItemMenuNameText_Mirror+$00,X\n #_0DEC47: STA.w $122C,Y\n\n #_0DEC4A: LDA.w ItemMenuNameText_Mirror+$10,X\n #_0DEC4D: STA.w $126C,Y\n\n #_0DEC50: INX\n #_0DEC51: INX\n\n #_0DEC52: INY\n #_0DEC53: INY\n #_0DEC54: CPY.w #$0010\n #_0DEC57: BCC .next_character_mirror\n\n #_0DEC59: JMP.w .exit\n\n; =========================================================\n\n.not_mirror\n #_0DEC5C: LDA.w $0202\n #_0DEC5F: AND.w #$00FF\n #_0DEC62: CMP.w #$000D\n #_0DEC65: BNE .not_flute\n\n #_0DEC67: LDA.l $7EF34C\n #_0DEC6B: AND.w #$00FF\n #_0DEC6E: DEC A\n #_0DEC6F: BEQ .not_flute\n\n #_0DEC71: DEC A\n #_0DEC72: ASL A\n #_0DEC73: ASL A\n #_0DEC74: ASL A\n #_0DEC75: ASL A\n #_0DEC76: ASL A\n #_0DEC77: TAX\n\n #_0DEC78: LDY.w #$0000\n\n.next_character_flute\n #_0DEC7B: LDA.w ItemMenuNameText_Flute+$00,X\n #_0DEC7E: STA.w $122C,Y\n\n #_0DEC81: LDA.w ItemMenuNameText_Flute+$10,X\n #_0DEC84: STA.w $126C,Y\n\n #_0DEC87: INX\n #_0DEC88: INX\n\n #_0DEC89: INY\n #_0DEC8A: INY\n #_0DEC8B: CPY.w #$0010\n #_0DEC8E: BCC .next_character_flute\n\n #_0DEC90: BRA .exit\n\n; ---------------------------------------------------------\n\n.not_flute\n #_0DEC92: LDA.w $0202\n #_0DEC95: AND.w #$00FF\n #_0DEC98: CMP.w #$0001\n #_0DEC9B: BNE .not_bow\n\n #_0DEC9D: LDA.l $7EF340\n #_0DECA1: AND.w #$00FF\n #_0DECA4: DEC A\n #_0DECA5: BEQ .not_bow\n\n #_0DECA7: DEC A\n #_0DECA8: ASL A\n #_0DECA9: ASL A\n #_0DECAA: ASL A\n #_0DECAB: ASL A\n #_0DECAC: ASL A\n #_0DECAD: TAX\n\n #_0DECAE: LDY.w #$0000\n\n.next_character_bow\n #_0DECB1: LDA.w ItemMenuNameText_Bow+$00,X\n #_0DECB4: STA.w $122C,Y\n\n #_0DECB7: LDA.w ItemMenuNameText_Bow+$10,X\n #_0DECBA: STA.w $126C,Y\n\n #_0DECBD: INX\n #_0DECBE: INX\n\n #_0DECBF: INY\n #_0DECC0: INY\n #_0DECC1: CPY.w #$0010\n #_0DECC4: BCC .next_character_bow\n\n #_0DECC6: BRA .exit\n\n; ---------------------------------------------------------\n\n.not_bow\n #_0DECC8: TXA\n #_0DECC9: ASL A\n #_0DECCA: ASL A\n #_0DECCB: ASL A\n #_0DECCC: ASL A\n #_0DECCD: TAX\n\n #_0DECCE: LDY.w #$0000\n\n.next_character_default\n #_0DECD1: LDA.w ItemMenuNameText_YItems+$00,X\n #_0DECD4: STA.w $122C,Y\n\n #_0DECD7: LDA.w ItemMenuNameText_YItems+$10,X\n #_0DECDA: STA.w $126C,Y\n\n #_0DECDD: INX\n #_0DECDE: INX\n\n #_0DECDF: INY\n #_0DECE0: INY\n #_0DECE1: CPY.w #$0010\n #_0DECE4: BCC .next_character_default\n\n; ---------------------------------------------------------\n\n.exit\n #_0DECE6: SEP #$30\n\n #_0DECE8: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawMoonPearl", + "code": "ItemMenu_DrawMoonPearl:\n #_0DECE9: REP #$30\n\n #_0DECEB: LDA.w #$16E0\n #_0DECEE: STA.b $00\n\n #_0DECF0: LDA.l $7EF357\n #_0DECF4: AND.w #$00FF\n #_0DECF7: STA.b $02\n\n #_0DECF9: LDA.w #ItemMenuIcons_pearl\n #_0DECFC: STA.b $04\n\n #_0DECFE: JSR ItemMenu_DrawItem\n\n #_0DED01: SEP #$30\n\n #_0DED03: RTS", + "file": "bank_0D.asm" + }, + { + "name": "NotAsGoodAsSMT029032", + "code": "NotAsGoodAsSMT029032:\n #_0DED04: REP #$30\n #_0DED06: SEP #$30\n\n #_0DED08: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_EQUIPMENT", + "code": "ItemMenu_EQUIPMENT:\n #_0DED09: dw $2479, $247A, $247B, $247C\n #_0DED11: dw $248C, $24F5, $24F5, $24F5\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DUNGEONITEM", + "code": "ItemMenu_DUNGEONITEM:\n #_0DED19: dw $2469, $246A, $246B, $246C\n #_0DED21: dw $246D, $246E, $246F, $24F5\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawEquipment", + "code": "ItemMenu_DrawEquipment:\n #_0DED29: REP #$30\n\n #_0DED2B: LDA.w #$28FB\n #_0DED2E: AND.b $00\n #_0DED30: STA.w $156A\n\n #_0DED33: ORA.w #$8000\n #_0DED36: STA.w $176A\n\n #_0DED39: ORA.w #$4000\n #_0DED3C: STA.w $177C\n\n #_0DED3F: EOR.w #$8000\n #_0DED42: STA.w $157C\n\n; ---------------------------------------------------------\n\n #_0DED45: LDX.w #$0000\n #_0DED48: LDY.w #$0006\n\n.next_vertical\n #_0DED4B: LDA.w #$28FC\n #_0DED4E: AND.b $00\n #_0DED50: STA.w $15AA,X\n\n #_0DED53: ORA.w #$4000\n #_0DED56: STA.w $15BC,X\n\n #_0DED59: TXA\n #_0DED5A: CLC\n #_0DED5B: ADC.w #$0040\n #_0DED5E: TAX\n\n #_0DED5F: DEY\n #_0DED60: BPL .next_vertical\n\n; ---------------------------------------------------------\n\n #_0DED62: LDX.w #$0000\n #_0DED65: LDY.w #$0007\n\n.next_horizontal\n #_0DED68: LDA.w #$28F9\n #_0DED6B: AND.b $00\n #_0DED6D: STA.w $156C,X\n\n #_0DED70: ORA.w #$8000\n #_0DED73: STA.w $176C,X\n\n #_0DED76: INX\n #_0DED77: INX\n\n #_0DED78: DEY\n #_0DED79: BPL .next_horizontal\n\n; ---------------------------------------------------------\n\n #_0DED7B: LDX.w #$0000\n #_0DED7E: LDY.w #$0007\n\n #_0DED81: LDA.w #$24F5\n\n.next_empty\n #_0DED84: STA.w $15AC,X\n #_0DED87: STA.w $15EC,X\n #_0DED8A: STA.w $162C,X\n #_0DED8D: STA.w $166C,X\n #_0DED90: STA.w $16AC,X\n #_0DED93: STA.w $16EC,X\n #_0DED96: STA.w $172C,X\n\n #_0DED99: INX\n #_0DED9A: INX\n\n #_0DED9B: DEY\n #_0DED9C: BPL .next_empty\n\n; ---------------------------------------------------------\n\n #_0DED9E: LDX.w #$0000\n #_0DEDA1: LDY.w #$0007\n\n #_0DEDA4: LDA.w #$28D7\n #_0DEDA7: AND.b $00\n\n.next_horizontal_rule\n #_0DEDA9: STA.w $166C,X\n\n #_0DEDAC: INX\n #_0DEDAD: INX\n\n #_0DEDAE: DEY\n #_0DEDAF: BPL .next_horizontal_rule\n\n; ---------------------------------------------------------\n\n #_0DEDB1: LDX.w #$0000\n #_0DEDB4: LDY.w #$0007\n\n.next_label_letter\n #_0DEDB7: LDA.w ItemMenu_EQUIPMENT,X\n #_0DEDBA: AND.b $00\n #_0DEDBC: STA.w $15AC,X\n\n #_0DEDBF: LDA.w ItemMenu_DUNGEONITEM,X\n #_0DEDC2: AND.b $00\n #_0DEDC4: STA.w $16AC,X\n\n #_0DEDC7: INX\n #_0DEDC8: INX\n\n #_0DEDC9: DEY\n #_0DEDCA: BPL .next_label_letter\n\n; ---------------------------------------------------------\n\n #_0DEDCC: LDA.w $040C\n #_0DEDCF: AND.w #$00FF\n #_0DEDD2: CMP.w #$00FF ; DUNGEON FF\n #_0DEDD5: BNE .in_a_dungeon\n\n; ---------------------------------------------------------\n\n #_0DEDD7: LDX.w #$0000\n #_0DEDDA: LDY.w #$0007\n\n #_0DEDDD: LDA.w #$24F5\n\n.delete_dungeon_item_letters\n #_0DEDE0: STA.w $16AC,X\n\n #_0DEDE3: INX\n #_0DEDE4: INX\n\n #_0DEDE5: DEY\n #_0DEDE6: BPL .delete_dungeon_item_letters\n\n; ---------------------------------------------------------\n\n #_0DEDE8: LDA.w #$16F2\n #_0DEDEB: STA.b $00\n\n #_0DEDED: LDA.l $7EF36B\n #_0DEDF1: AND.w #$00FF\n #_0DEDF4: STA.b $02\n\n #_0DEDF6: LDA.w #ItemMenuIcons_heart_pieces\n #_0DEDF9: STA.b $04\n\n #_0DEDFB: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n.in_a_dungeon\n #_0DEDFE: REP #$30\n\n #_0DEE00: LDA.w #$15EC\n #_0DEE03: STA.b $00\n\n #_0DEE05: LDA.l $7EF359\n #_0DEE09: AND.w #$00FF\n #_0DEE0C: CMP.w #$00FF\n #_0DEE0F: BNE .have_sword\n\n #_0DEE11: LDA.w #$0000\n\n.have_sword\n #_0DEE14: STA.b $02\n\n #_0DEE16: LDA.w #ItemMenuIcons_sword\n #_0DEE19: STA.b $04\n\n #_0DEE1B: JSR ItemMenu_DrawItem\n\n #_0DEE1E: SEP #$30\n\n #_0DEE20: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawShield", + "code": "ItemMenu_DrawShield:\n #_0DEE21: REP #$30\n\n #_0DEE23: LDA.w #$15F2\n #_0DEE26: STA.b $00\n\n #_0DEE28: LDA.l $7EF35A\n #_0DEE2C: AND.w #$00FF\n #_0DEE2F: STA.b $02\n\n #_0DEE31: LDA.w #ItemMenuIcons_shield\n #_0DEE34: STA.b $04\n\n #_0DEE36: JSR ItemMenu_DrawItem\n\n #_0DEE39: SEP #$30\n\n #_0DEE3B: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawMail", + "code": "ItemMenu_DrawMail:\n #_0DEE3C: REP #$30\n\n #_0DEE3E: LDA.w #$15F8\n #_0DEE41: STA.b $00\n\n #_0DEE43: LDA.l $7EF35B\n #_0DEE47: AND.w #$00FF\n #_0DEE4A: STA.b $02\n\n #_0DEE4C: LDA.w #ItemMenuIcons_mail\n #_0DEE4F: STA.b $04\n\n #_0DEE51: JSR ItemMenu_DrawItem\n\n #_0DEE54: SEP #$30\n\n #_0DEE56: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawMapAndBigKey", + "code": "ItemMenu_DrawMapAndBigKey:\n #_0DEE57: REP #$30\n\n #_0DEE59: LDA.w $040C\n #_0DEE5C: AND.w #$00FF\n #_0DEE5F: CMP.w #$00FF ; DUNGEON FF\n #_0DEE62: BEQ .no_big_key\n\n #_0DEE64: LSR A\n #_0DEE65: TAX\n\n #_0DEE66: LDA.l $7EF366\n\n.shift_for_key\n #_0DEE6A: ASL A\n\n #_0DEE6B: DEX\n #_0DEE6C: BPL .shift_for_key\n\n #_0DEE6E: BCC .no_big_key\n\n; ---------------------------------------------------------\n\n #_0DEE70: JSR ItemMenu_CheckForDungeonPrize\n\n #_0DEE73: REP #$30\n\n #_0DEE75: LDA.w #$16F8\n #_0DEE78: STA.b $00\n\n #_0DEE7A: LDA.w #$0001\n #_0DEE7D: CLC\n #_0DEE7E: ADC.b $02\n #_0DEE80: STA.b $02\n\n #_0DEE82: LDA.w #ItemMenuIcons_big_key\n\n #_0DEE85: STA.b $04\n\n #_0DEE87: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n.no_big_key\n #_0DEE8A: LDA.w $040C\n #_0DEE8D: AND.w #$00FF\n #_0DEE90: CMP.w #$00FF ; DUNGEON FF\n #_0DEE93: BEQ .no_map\n\n #_0DEE95: LSR A\n #_0DEE96: TAX\n\n #_0DEE97: LDA.l $7EF368\n\n.look_for_next_map\n #_0DEE9B: ASL A\n\n #_0DEE9C: DEX\n #_0DEE9D: BPL .look_for_next_map\n\n #_0DEE9F: BCC .no_map\n\n; ---------------------------------------------------------\n\n #_0DEEA1: LDA.w #$16EC\n #_0DEEA4: STA.b $00\n\n #_0DEEA6: LDA.w #$0001\n #_0DEEA9: STA.b $02\n\n #_0DEEAB: LDA.w #ItemMenuIcons_map\n #_0DEEAE: STA.b $04\n\n #_0DEEB0: JSR ItemMenu_DrawItem\n\n.no_map\n #_0DEEB3: SEP #$30\n\n #_0DEEB5: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForDungeonPrize", + "code": "ItemMenu_CheckForDungeonPrize:\n #_0DEEB6: SEP #$30\n\n #_0DEEB8: LDA.w $040C\n #_0DEEBB: LSR A\n #_0DEEBC: JSL JumpTableLocal\n #_0DEEC0: dw ItemMenu_NoPrizeHad ; Sewers\n #_0DEEC2: dw ItemMenu_NoPrizeHad ; Hyrule Castle\n #_0DEEC4: dw ItemMenu_CheckForBow ; Eastern Palace\n #_0DEEC6: dw ItemMenu_CheckForGloves ; Desert Palace\n #_0DEEC8: dw ItemMenu_NoPrizeHad ; Agahnim's Tower\n #_0DEECA: dw ItemMenu_CheckForHookshot ; Swamp Palace\n #_0DEECC: dw ItemMenu_CheckForHammer ; Palace of Darkness\n #_0DEECE: dw ItemMenu_CheckForSomaria ; Misery Mire\n #_0DEED0: dw ItemMenu_CheckForFireRod ; Skull Woods\n #_0DEED2: dw ItemMenu_CheckForBlueMail ; Ice Palace\n #_0DEED4: dw ItemMenu_CheckForMoonPearl ; Tower of Hera\n #_0DEED6: dw ItemMenu_CheckForTitansMitt ; Thieves' Town\n #_0DEED8: dw ItemMenu_CheckForMirrorShield ; Turtle Rock\n #_0DEEDA: dw ItemMenu_CheckForRedMail ; Ganon's Tower\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_NoPrizeHad", + "code": "ItemMenu_NoPrizeHad:\n #_0DEEDC: STZ.b $02\n #_0DEEDE: STZ.b $03\n\n #_0DEEE0: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForBow", + "code": "ItemMenu_CheckForBow:\n #_0DEEE1: LDA.l $7EF340\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckThePrize", + "code": "ItemMenu_CheckThePrize:\n #_0DEEE5: BEQ ItemMenu_NoPrizeHad\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_HaveThePrize", + "code": "ItemMenu_HaveThePrize:\n #_0DEEE7: LDA.b #$01\n #_0DEEE9: STA.b $02\n #_0DEEEB: STZ.b $03\n\n #_0DEEED: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForGloves", + "code": "ItemMenu_CheckForGloves:\n #_0DEEEE: LDA.l $7EF354\n #_0DEEF2: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForHookshot", + "code": "ItemMenu_CheckForHookshot:\n #_0DEEF4: LDA.l $7EF342\n #_0DEEF8: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForHammer", + "code": "ItemMenu_CheckForHammer:\n #_0DEEFA: LDA.l $7EF34B\n #_0DEEFE: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForSomaria", + "code": "ItemMenu_CheckForSomaria:\n #_0DEF00: LDA.l $7EF350\n #_0DEF04: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForFireRod", + "code": "ItemMenu_CheckForFireRod:\n #_0DEF06: LDA.l $7EF345\n #_0DEF0A: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForBlueMail", + "code": "ItemMenu_CheckForBlueMail:\n #_0DEF0C: LDA.l $7EF35B\n #_0DEF10: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForMoonPearl", + "code": "ItemMenu_CheckForMoonPearl:\n #_0DEF12: LDA.l $7EF357\n #_0DEF16: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForTitansMitt", + "code": "ItemMenu_CheckForTitansMitt:\n #_0DEF18: LDA.l $7EF354\n #_0DEF1C: DEC A\n #_0DEF1D: BRA ItemMenu_CheckThePrize\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForMirrorShield", + "code": "ItemMenu_CheckForMirrorShield:\n #_0DEF1F: LDA.l $7EF35A\n #_0DEF23: CMP.b #$03\n #_0DEF25: BEQ ItemMenu_HaveThePrize\n\n #_0DEF27: STZ.b $02\n #_0DEF29: STZ.b $03\n\n #_0DEF2B: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CheckForRedMail", + "code": "ItemMenu_CheckForRedMail:\n #_0DEF2C: LDA.l $7EF35B\n #_0DEF30: CMP.b #$02\n #_0DEF32: BEQ ItemMenu_HaveThePrize\n\n #_0DEF34: STZ.b $02\n #_0DEF36: STZ.b $03\n\n #_0DEF38: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawCompass", + "code": "ItemMenu_DrawCompass:\n #_0DEF39: REP #$30\n\n #_0DEF3B: LDA.w $040C\n #_0DEF3E: AND.w #$00FF\n #_0DEF41: CMP.w #$00FF ; DUNGEON FF\n #_0DEF44: BEQ .no_compass\n\n #_0DEF46: LSR A\n #_0DEF47: TAX\n\n #_0DEF48: LDA.l $7EF364\n\n.find_compass_bit\n #_0DEF4C: ASL A\n\n #_0DEF4D: DEX\n #_0DEF4E: BPL .find_compass_bit\n\n #_0DEF50: BCC .no_compass\n\n; ---------------------------------------------------------\n\n #_0DEF52: LDA.w #$16F2\n #_0DEF55: STA.b $00\n\n #_0DEF57: LDA.w #$0001\n #_0DEF5A: STA.b $02\n\n #_0DEF5C: LDA.w #ItemMenuIcons_compass\n #_0DEF5F: STA.b $04\n\n #_0DEF61: JSR ItemMenu_DrawItem\n\n.no_compass\n #_0DEF64: SEP #$30\n\n #_0DEF66: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_DrawBottleSubmenu", + "code": "ItemMenu_DrawBottleSubmenu:\n #_0DEF67: REP #$30\n\n #_0DEF69: LDA.w #$28FB\n #_0DEF6C: AND.b $00\n #_0DEF6E: STA.w $12EA\n\n #_0DEF71: ORA.w #$8000\n #_0DEF74: STA.w $176A\n\n #_0DEF77: ORA.w #$4000\n #_0DEF7A: STA.w $177C\n\n #_0DEF7D: EOR.w #$8000\n #_0DEF80: STA.w $12FC\n\n; ---------------------------------------------------------\n\n #_0DEF83: LDX.w #$0000\n #_0DEF86: LDY.w #$0010\n\n.next_vertical\n #_0DEF89: LDA.w #$28FC\n #_0DEF8C: AND.b $00\n #_0DEF8E: STA.w $132A,X\n\n #_0DEF91: ORA.w #$4000\n #_0DEF94: STA.w $133C,X\n\n #_0DEF97: TXA\n #_0DEF98: CLC\n #_0DEF99: ADC.w #$0040\n #_0DEF9C: TAX\n\n #_0DEF9D: DEY\n #_0DEF9E: BPL .next_vertical\n\n; ---------------------------------------------------------\n\n #_0DEFA0: LDX.w #$0000\n #_0DEFA3: LDY.w #$0007\n\n.next_horizontal\n #_0DEFA6: LDA.w #$28F9\n #_0DEFA9: AND.b $00\n #_0DEFAB: STA.w $12EC,X\n\n #_0DEFAE: ORA.w #$8000\n #_0DEFB1: STA.w $176C,X\n\n #_0DEFB4: INX\n #_0DEFB5: INX\n\n #_0DEFB6: DEY\n #_0DEFB7: BPL .next_horizontal\n\n; ---------------------------------------------------------\n\n #_0DEFB9: LDX.w #$0000\n #_0DEFBC: LDY.w #$0007\n\n #_0DEFBF: LDA.w #$24F5\n\n.next_empty\n #_0DEFC2: STA.w $132C,X\n #_0DEFC5: STA.w $136C,X\n #_0DEFC8: STA.w $13AC,X\n #_0DEFCB: STA.w $13EC,X\n\n #_0DEFCE: STA.w $142C,X\n #_0DEFD1: STA.w $146C,X\n #_0DEFD4: STA.w $14AC,X\n #_0DEFD7: STA.w $14EC,X\n\n #_0DEFDA: STA.w $152C,X\n #_0DEFDD: STA.w $156C,X\n #_0DEFE0: STA.w $15AC,X\n #_0DEFE3: STA.w $15EC,X\n\n #_0DEFE6: STA.w $162C,X\n #_0DEFE9: STA.w $166C,X\n #_0DEFEC: STA.w $16AC,X\n #_0DEFEF: STA.w $16EC,X\n\n #_0DEFF2: STA.w $172C,X\n\n #_0DEFF5: INX\n #_0DEFF6: INX\n\n #_0DEFF7: DEY\n #_0DEFF8: BPL .next_empty\n\n; ---------------------------------------------------------\n\n #_0DEFFA: REP #$30\n\n #_0DEFFC: LDA.w #$1372\n #_0DEFFF: STA.b $00\n\n #_0DF001: LDA.l $7EF35C\n #_0DF005: AND.w #$00FF\n #_0DF008: STA.b $02\n\n #_0DF00A: LDA.w #ItemMenuIcons_bottles\n #_0DF00D: STA.b $04\n\n #_0DF00F: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DF012: LDA.w #$1472\n #_0DF015: STA.b $00\n\n #_0DF017: LDA.l $7EF35D\n #_0DF01B: AND.w #$00FF\n #_0DF01E: STA.b $02\n\n #_0DF020: LDA.w #ItemMenuIcons_bottles\n #_0DF023: STA.b $04\n\n #_0DF025: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DF028: LDA.w #$1572\n #_0DF02B: STA.b $00\n\n #_0DF02D: LDA.l $7EF35E\n #_0DF031: AND.w #$00FF\n #_0DF034: STA.b $02\n\n #_0DF036: LDA.w #ItemMenuIcons_bottles\n #_0DF039: STA.b $04\n\n #_0DF03B: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DF03E: LDA.w #$1672\n #_0DF041: STA.b $00\n\n #_0DF043: LDA.l $7EF35F\n #_0DF047: AND.w #$00FF\n #_0DF04A: STA.b $02\n\n #_0DF04C: LDA.w #ItemMenuIcons_bottles\n #_0DF04F: STA.b $04\n\n #_0DF051: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DF054: LDA.w #$1408\n #_0DF057: STA.b $00\n\n #_0DF059: LDA.l $7EF34F\n #_0DF05D: AND.w #$00FF\n #_0DF060: TAX\n\n #_0DF061: LDA.l $7EF35B,X\n #_0DF065: AND.w #$00FF\n #_0DF068: STA.b $02\n\n #_0DF06A: LDA.w #ItemMenuIcons_bottles\n #_0DF06D: STA.b $04\n\n #_0DF06F: JSR ItemMenu_DrawItem\n\n; ---------------------------------------------------------\n\n #_0DF072: LDA.w $0202\n #_0DF075: AND.w #$00FF\n #_0DF078: DEC A\n #_0DF079: ASL A\n #_0DF07A: TAX\n\n #_0DF07B: LDY.w ItemMenu_CursorPositions,X\n\n #_0DF07E: LDA.w $0000,Y\n #_0DF081: STA.w $11B2\n\n #_0DF084: LDA.w $0002,Y\n #_0DF087: STA.w $11B4\n\n #_0DF08A: LDA.w $0040,Y\n #_0DF08D: STA.w $11F2\n\n #_0DF090: LDA.w $0042,Y\n #_0DF093: STA.w $11F4\n\n; ---------------------------------------------------------\n\n #_0DF096: LDA.l $7EF34F\n #_0DF09A: DEC A\n #_0DF09B: AND.w #$00FF\n #_0DF09E: ASL A\n #_0DF09F: TAY\n\n #_0DF0A0: LDA.w BottleMenuCursorPosition,Y\n #_0DF0A3: TAY\n\n #_0DF0A4: LDA.w $0207\n\n #_0DF0A7: LDA.w #$3C61\n #_0DF0AA: STA.w $12AA,Y\n\n #_0DF0AD: ORA.w #$4000\n #_0DF0B0: STA.w $12AC,Y\n\n #_0DF0B3: LDA.w #$3C70\n #_0DF0B6: STA.w $12E8,Y\n\n #_0DF0B9: ORA.w #$4000\n #_0DF0BC: STA.w $12EE,Y\n\n #_0DF0BF: LDA.w #$BC70\n #_0DF0C2: STA.w $1328,Y\n\n #_0DF0C5: ORA.w #$4000\n #_0DF0C8: STA.w $132E,Y\n\n #_0DF0CB: LDA.w #$BC61\n #_0DF0CE: STA.w $136A,Y\n\n #_0DF0D1: ORA.w #$4000\n #_0DF0D4: STA.w $136C,Y\n\n #_0DF0D7: LDA.w #$3C60\n #_0DF0DA: STA.w $12A8,Y\n\n #_0DF0DD: ORA.w #$4000\n #_0DF0E0: STA.w $12AE,Y\n\n #_0DF0E3: ORA.w #$8000\n #_0DF0E6: STA.w $136E,Y\n\n #_0DF0E9: EOR.w #$4000\n #_0DF0EC: STA.w $1368,Y\n\n #_0DF0EF: SEP #$30\n\n #_0DF0F1: LDA.b #$10\n #_0DF0F3: STA.w $0207\n\n #_0DF0F6: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUDBuffer_HEXtoDEC", + "code": "UpdateHUDBuffer_HEXtoDEC:\n #_0DF0F7: REP #$30\n\n #_0DF0F9: STZ.w $0003\n\n #_0DF0FC: LDX.w #$0000\n #_0DF0FF: LDY.w #$0002\n\n; ---------------------------------------------------------\n\n.next_power_check\n #_0DF102: CMP.w HUD_HEXtoDEC_PowersOf10,Y\n #_0DF105: BCC .under_power_of_10\n\n #_0DF107: SEC\n #_0DF108: SBC.w HUD_HEXtoDEC_PowersOf10,Y\n\n #_0DF10B: INC.b $03,X\n\n #_0DF10D: BRA .next_power_check\n\n.under_power_of_10\n #_0DF10F: INX\n\n #_0DF110: DEY\n #_0DF111: DEY\n #_0DF112: BPL .next_power_check\n\n #_0DF114: STA.b $05\n\n; ---------------------------------------------------------\n\n #_0DF116: SEP #$30\n\n #_0DF118: LDX.b #$02\n\n.next_digit\n #_0DF11A: LDA.b $03,X\n #_0DF11C: CMP.b #$7F\n #_0DF11E: BEQ .draw_blank\n\n #_0DF120: ORA.b #$90\n\n.draw_blank\n #_0DF122: STA.b $03,X\n\n #_0DF124: DEX\n #_0DF125: BPL .next_digit\n\n #_0DF127: RTS", + "file": "bank_0D.asm" + }, + { + "name": "AnimatedRefill_Health", + "code": "AnimatedRefill_Health:\n #_0DF128: LDA.l $7EF36D\n #_0DF12C: CMP.l $7EF36C\n #_0DF130: BCC .keep_healing\n\n #_0DF132: LDA.l $7EF36C\n #_0DF136: STA.l $7EF36D\n\n #_0DF13A: LDA.b #$00\n #_0DF13C: STA.l $7EF372\n\n #_0DF140: LDA.w $020A\n #_0DF143: BNE .flag_as_done\n\n #_0DF145: SEC\n\n #_0DF146: RTL", + "file": "bank_0D.asm" + }, + { + "name": "AnimateHeartRefill", + "code": "AnimateHeartRefill:\n #_0DF14F: SEP #$30\n\n #_0DF151: LDA.b #$7EC768>>0\n #_0DF153: STA.b $00\n\n #_0DF155: LDA.b #$7EC768>>8\n #_0DF157: STA.b $01\n\n #_0DF159: LDA.b #$7EC768>>16\n #_0DF15B: STA.b $02\n\n #_0DF15D: DEC.w $0208\n #_0DF160: BNE .exit\n\n; ---------------------------------------------------------\n\n #_0DF162: REP #$30\n\n #_0DF164: LDA.l $7EF36D\n #_0DF168: AND.w #$00F8\n\n #_0DF16B: DEC A\n\n #_0DF16C: LSR A\n #_0DF16D: LSR A\n #_0DF16E: LSR A\n #_0DF16F: ASL A\n #_0DF170: TAY\n\n #_0DF171: CMP.w #$0014\n #_0DF174: BCC .same_row\n\n #_0DF176: SBC.w #$0014\n #_0DF179: TAY\n\n #_0DF17A: LDA.b $00\n #_0DF17C: CLC\n #_0DF17D: ADC.w #$0040\n #_0DF180: STA.b $00\n\n; ---------------------------------------------------------\n\n.same_row\n #_0DF182: SEP #$30\n\n #_0DF184: LDX.w $0209\n\n #_0DF187: LDA.l HUD_AllOnes,X\n #_0DF18B: STA.w $0208\n\n #_0DF18E: TXA\n #_0DF18F: ASL A\n #_0DF190: TAX\n\n #_0DF191: LDA.l HUD_HeartDisplayFrames+0,X\n #_0DF195: STA.b [$00],Y\n\n #_0DF197: INY\n\n #_0DF198: LDA.l HUD_HeartDisplayFrames+1,X\n #_0DF19C: STA.b [$00],Y\n\n #_0DF19E: LDA.w $0209\n #_0DF1A1: INC A\n #_0DF1A2: AND.b #$03\n #_0DF1A4: STA.w $0209\n\n #_0DF1A7: BNE .exit\n\n #_0DF1A9: SEP #$30\n\n #_0DF1AB: JSR RebuildHUD\n\n #_0DF1AE: STZ.w $020A\n\n.exit\n #_0DF1B1: CLC\n\n #_0DF1B2: RTS", + "file": "bank_0D.asm" + }, + { + "name": "AnimatedRefill_Magic", + "code": "AnimatedRefill_Magic:\n #_0DF1B3: SEP #$30\n\n #_0DF1B5: LDA.l $7EF36E\n #_0DF1B9: CMP.b #$80\n #_0DF1BB: BCS .done\n\n #_0DF1BD: LDA.b #$80\n #_0DF1BF: STA.l $7EF373\n\n #_0DF1C3: SEP #$30\n\n #_0DF1C5: RTL", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_YItems", + "code": "ItemMenuNameText_YItems:\n #_0DF1C9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF1D9: dw $256B, $256C, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ; bow\n\n #_0DF1E9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF1F9: dw $2570, $2571, $2572, $2573, $2574, $2575, $2576, $2577 ; boomerang\n\n #_0DF209: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF219: dw $2557, $255E, $255E, $255A, $2562, $2557, $255E, $2563 ; hookshot\n\n #_0DF229: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF239: dw $2551, $255E, $255C, $2551, $24F5, $24F5, $24F5, $24F5 ; bombs\n\n #_0DF249: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF259: dw $255C, $2564, $2562, $2557, $2561, $255E, $255E, $255C ; mushroom\n\n #_0DF269: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF279: dw $2555, $2558, $2561, $2554, $2561, $255E, $2553, $24F5 ; fire rod\n\n #_0DF289: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF299: dw $2558, $2552, $2554, $2561, $255E, $2553, $24F5, $24F5 ; ice rod\n\n #_0DF2A9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF2B9: dw $2551, $255E, $255C, $2551, $255E, $2562, $24F5, $24F5 ; bombos\n\n #_0DF2C9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF2D9: dw $2554, $2563, $2557, $2554, $2561, $24F5, $24F5, $24F5 ; ether\n\n #_0DF2E9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF2F9: dw $2560, $2564, $2550, $255A, $2554, $24F5, $24F5, $24F5 ; quake\n\n #_0DF309: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF319: dw $255B, $2550, $255C, $255F, $24F5, $24F5, $24F5, $24F5 ; lamp\n\n #_0DF329: dw $255C, $2550, $2556, $2558, $2552, $24F5, $24F5, $24F5 ;\n #_0DF339: dw $24F5, $24F5, $2557, $2550, $255C, $255C, $2554, $2561 ; magic hammer\n\n #_0DF349: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF359: dw $2562, $2557, $255E, $2565, $2554, $255B, $24F5, $24F5 ; shovel\n\n #_0DF369: dw $2400, $2401, $2402, $2403, $2404, $2405, $2406, $2407 ;\n #_0DF379: dw $2408, $2409, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ; bug net\n\n #_0DF389: dw $2551, $255E, $255E, $255A, $24F5, $255E, $2555, $24F5 ;\n #_0DF399: dw $255C, $2564, $2553, $255E, $2561, $2550, $24F5, $24F5 ; book of mudora\n\n #_0DF3A9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF3B9: dw $255C, $2564, $2562, $2557, $2561, $255E, $255E, $255C ; mushroom\n\n #_0DF3C9: dw $2552, $2550, $255D, $2554, $24F5, $255E, $2555, $24F5 ;\n #_0DF3D9: dw $24F5, $2562, $255E, $255C, $2550, $2561, $2558, $2550 ; cane of somaria\n\n #_0DF3E9: dw $2552, $2550, $255D, $2554, $24F5, $255E, $2555, $24F5 ;\n #_0DF3F9: dw $24F5, $24F5, $24F5, $2551, $2568, $2561, $255D, $2550 ; cane of byrna\n\n #_0DF409: dw $255C, $2550, $2556, $2558, $2552, $24F5, $24F5, $24F5 ;\n #_0DF419: dw $24F5, $24F5, $24F5, $2552, $2550, $255F, $2554, $24F5 ; magic cape\n\n #_0DF429: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF439: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ; letter\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_Bottles", + "code": "ItemMenuNameText_Bottles:\n #_0DF449: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF459: dw $255C, $2564, $2562, $2557, $2561, $255E, $255E, $255C ; mushroom\n\n #_0DF469: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF479: dw $2551, $255E, $2563, $2563, $255B, $2554, $24F5, $24F5 ; bottle\n\n #_0DF489: dw $255B, $2558, $2555, $2554, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF499: dw $255C, $2554, $2553, $2558, $2552, $2558, $255D, $2554 ; life potion\n\n #_0DF4A9: dw $255C, $2550, $2556, $2558, $2552, $24F5, $24F5, $24F5 ;\n #_0DF4B9: dw $255C, $2554, $2553, $2558, $2552, $2558, $255D, $2554 ; magic potion\n\n #_0DF4C9: dw $2552, $2564, $2561, $2554, $256A, $2550, $255B, $255B ;\n #_0DF4D9: dw $255C, $2554, $2553, $2558, $2552, $2558, $255D, $2554 ; life and magic\n\n #_0DF4E9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF4F9: dw $2555, $2550, $2554, $2561, $2558, $2554, $24F5, $24F5 ; fairy\n\n #_0DF509: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF519: dw $2551, $2554, $2554, $24F5, $24F5, $24F5, $24F5, $24F5 ; bee\n\n #_0DF529: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF539: dw $2556, $255E, $255E, $2553, $24F5, $2551, $2554, $2554 ; golden bee\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_Powder", + "code": "ItemMenuNameText_Powder:\n #_0DF549: dw $255C, $2550, $2556, $2558, $2552, $24F5, $24F5, $24F5 ;\n #_0DF559: dw $24F5, $255F, $255E, $2566, $2553, $2554, $2561, $24F5 ; magic powder\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_Flute", + "code": "ItemMenuNameText_Flute:\n #_0DF569: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF579: dw $2555, $255B, $2564, $2563, $2554, $24F5, $24F5, $24F5 ; ocarina\n\n #_0DF589: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF599: dw $2555, $255B, $2564, $2563, $2554, $24F5, $24F5, $24F5 ; ocarina\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_Mirror", + "code": "ItemMenuNameText_Mirror:\n #_0DF5A9: dw $255C, $2550, $2556, $2558, $2552, $24F5, $24F5, $24F5 ;\n #_0DF5B9: dw $24F5, $24F5, $255C, $2558, $2561, $2561, $255E, $2561 ; magic mirror\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuNameText_Bow", + "code": "ItemMenuNameText_Bow:\n #_0DF5C9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF5D9: dw $256B, $256C, $256E, $256F, $257C, $257D, $257E, $257F ; bow and arrows\n\n #_0DF5E9: dw $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ;\n #_0DF5F9: dw $256B, $256C, $24F5, $24F5, $24F5, $24F5, $24F5, $24F5 ; bow\n\n #_0DF609: dw $256B, $256C, $24F5, $256E, $256F, $24F5, $24F5, $24F5 ;\n #_0DF619: dw $2578, $2579, $257A, $257B, $257C, $257D, $257E, $257F ; bow and silver arrows\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenuIcons", + "code": "ItemMenuIcons:\n\n.bows\n #_0DF629: dw $20F5, $20F5, $20F5, $20F5 ; No bow\n #_0DF631: dw $28BA, $28E9, $28E8, $28CB ; Empty bow\n #_0DF639: dw $28BA, $284A, $2849, $28CB ; Bow and arrows\n #_0DF641: dw $28BA, $28E9, $28E8, $28CB ; Empty silvers bow\n #_0DF649: dw $28BA, $28BB, $24CA, $28CB ; Silver bow and arrows\n\n.booms\n #_0DF651: dw $20F5, $20F5, $20F5, $20F5 ; No boomerang\n #_0DF659: dw $2CB8, $2CB9, $2CF5, $2CC9 ; Blue boomerang\n #_0DF661: dw $24B8, $24B9, $24F5, $24C9 ; Red boomerang\n\n.hook\n #_0DF669: dw $20F5, $20F5, $20F5, $20F5 ; No hookshot\n #_0DF671: dw $24F5, $24F6, $24C0, $24F5 ; Hookshot\n\n.bombs\n #_0DF679: dw $20F5, $20F5, $20F5, $20F5 ; No bombs\n #_0DF681: dw $2CB2, $2CB3, $2CC2, $6CC2 ; Bombs\n\n.powder\n #_0DF689: dw $20F5, $20F5, $20F5, $20F5 ; No powder\n #_0DF691: dw $2444, $2445, $2446, $2447 ; Mushroom\n #_0DF699: dw $203B, $203C, $203D, $203E ; Powder\n\n.fire_rod\n #_0DF6A1: dw $20F5, $20F5, $20F5, $20F5 ; No fire rod\n #_0DF6A9: dw $24B0, $24B1, $24C0, $24C1 ; Fire rod\n\n.ice_rod\n #_0DF6B1: dw $20F5, $20F5, $20F5, $20F5 ; No ice rod\n #_0DF6B9: dw $2CB0, $2CBE, $2CC0, $2CC1 ; Ice rod\n\n.bombos\n #_0DF6C1: dw $20F5, $20F5, $20F5, $20F5 ; No bombos\n #_0DF6C9: dw $287D, $287E, $E87E, $E87D ; Bombos\n\n.ether\n #_0DF6D1: dw $20F5, $20F5, $20F5, $20F5 ; No ether\n #_0DF6D9: dw $2876, $2877, $E877, $E876 ; Ether\n\n.quake\n #_0DF6E1: dw $20F5, $20F5, $20F5, $20F5 ; No quake\n #_0DF6E9: dw $2866, $2867, $E867, $E866 ; Quake\n\n.lamp\n #_0DF6F1: dw $20F5, $20F5, $20F5, $20F5 ; No lamp\n #_0DF6F9: dw $24BC, $24BD, $24CC, $24CD ; Lamp\n\n.hammer\n #_0DF701: dw $20F5, $20F5, $20F5, $20F5 ; No hammer\n #_0DF709: dw $20B6, $20B7, $20C6, $20C7 ; Hammer\n\n.flute\n #_0DF711: dw $20F5, $20F5, $20F5, $20F5 ; No flute\n #_0DF719: dw $20D0, $20D1, $20E0, $20E1 ; Shovel\n #_0DF721: dw $2CD4, $2CD5, $2CE4, $2CE5 ; Flute (inactive)\n #_0DF729: dw $2CD4, $2CD5, $2CE4, $2CE5 ; Flute (active)\n\n.net\n #_0DF731: dw $20F5, $20F5, $20F5, $20F5 ; No net\n #_0DF739: dw $3C40, $3C41, $2842, $3C43 ; Net\n\n.book\n #_0DF741: dw $20F5, $20F5, $20F5, $20F5 ; No book\n #_0DF749: dw $3CA5, $3CA6, $3CD8, $3CD9 ; Book of Mudora\n\n.bottles\n #_0DF751: dw $20F5, $20F5, $20F5, $20F5 ; No bottle\n #_0DF759: dw $2044, $2045, $2046, $2047 ; Mushroom\n #_0DF761: dw $2837, $2838, $2CC3, $2CD3 ; Empty bottle\n #_0DF769: dw $24D2, $64D2, $24E2, $24E3 ; Red potion\n #_0DF771: dw $3CD2, $7CD2, $3CE2, $3CE3 ; Green potion\n #_0DF779: dw $2CD2, $6CD2, $2CE2, $2CE3 ; Blue potion\n #_0DF781: dw $2855, $6855, $2C57, $2C5A ; Fairy\n #_0DF789: dw $2837, $2838, $2839, $283A ; Bee\n #_0DF791: dw $2837, $2838, $2839, $283A ; Good bee\n\n.somaria\n #_0DF799: dw $20F5, $20F5, $20F5, $20F5 ; No somaria\n #_0DF7A1: dw $24DC, $24DD, $24EC, $24ED ; Cane of Somaria\n\n.byrna\n #_0DF7A9: dw $20F5, $20F5, $20F5, $20F5 ; No byrna\n #_0DF7B1: dw $2CDC, $2CDD, $2CEC, $2CED ; Cane of Byrna\n\n.cape\n #_0DF7B9: dw $20F5, $20F5, $20F5, $20F5 ; No cape\n #_0DF7C1: dw $24B4, $24B5, $24C4, $24C5 ; Cape\n\n.mirror\n #_0DF7C9: dw $20F5, $20F5, $20F5, $20F5 ; No mirror\n #_0DF7D1: dw $28DE, $28DF, $28EE, $28EF ; Map\n #_0DF7D9: dw $2C62, $2C63, $2C72, $2C73 ; Mirror\n #_0DF7E1: dw $2886, $2887, $2888, $2889 ; Triforce (displays as arrows and bombs)\n\n.gloves\n #_0DF7E9: dw $20F5, $20F5, $20F5, $20F5 ; No glove\n #_0DF7F1: dw $2130, $2131, $2140, $2141 ; Power glove\n #_0DF7F9: dw $28DA, $28DB, $28EA, $28EB ; Titan's mitt\n\n.boots\n #_0DF801: dw $20F5, $20F5, $20F5, $20F5 ; No boots\n #_0DF809: dw $3429, $342A, $342B, $342C ; Pegasus boots\n\n.flippers\n #_0DF811: dw $20F5, $20F5, $20F5, $20F5 ; No flippers\n #_0DF819: dw $2C9A, $2C9B, $2C9D, $2C9E ; Flippers\n\n.pearl\n #_0DF821: dw $20F5, $20F5, $20F5, $20F5 ; No pearl\n #_0DF829: dw $2433, $2434, $2435, $2436 ; Moon pearl\n\n.unused_nothing\n #_0DF831: dw $20F5, $20F5, $20F5, $20F5 ; Nothing\n\n.sword\n #_0DF839: dw $20F5, $20F5, $20F5, $20F5 ; No sword\n #_0DF841: dw $2C64, $2CCE, $2C75, $3D25 ; Fighter sword\n #_0DF849: dw $2C8A, $2C65, $2474, $3D26 ; Master sword\n #_0DF851: dw $248A, $2465, $3C74, $2D48 ; Tempered sword\n #_0DF859: dw $288A, $2865, $2C74, $2D39 ; Gold sword\n\n.shield\n #_0DF861: dw $24F5, $24F5, $24F5, $24F5 ; No shield\n #_0DF869: dw $2CFD, $6CFD, $2CFE, $6CFE ; Fighter shield\n #_0DF871: dw $34FF, $74FF, $349F, $749F ; Fire shield\n #_0DF879: dw $2880, $2881, $288D, $288E ; Mirror shield\n\n.mail\n #_0DF881: dw $3C68, $7C68, $3C78, $7C78 ; Green mail\n #_0DF889: dw $2C68, $6C68, $2C78, $6C78 ; Blue mail\n #_0DF891: dw $2468, $6468, $2478, $6478 ; Red mail\n\n.compass\n #_0DF899: dw $20F5, $20F5, $20F5, $20F5 ; No compass\n #_0DF8A1: dw $24BF, $64BF, $2CCF, $6CCF ; Compass\n\n.big_key\n #_0DF8A9: dw $20F5, $20F5, $20F5, $20F5 ; No big key\n #_0DF8B1: dw $28D6, $68D6, $28E6, $28E7 ; Big key\n #_0DF8B9: dw $354B, $354C, $354D, $354E ; Big key and chest\n\n.map\n #_0DF8C1: dw $20F5, $20F5, $20F5, $20F5 ; No map\n #_0DF8C9: dw $28DE, $28DF, $28EE, $28EF ; Map\n\n.pendant_red\n #_0DF8D1: dw $313B, $313C, $313D, $313E ; No red pendant\n #_0DF8D9: dw $252B, $252C, $252D, $252E ; Red pendant\n\n.pendant_blue\n #_0DF8E1: dw $313B, $313C, $313D, $313E ; No blue pendant\n #_0DF8E9: dw $2D2B, $2D2C, $2D2D, $2D2E ; Blue pendant\n\n.pendant_green\n #_0DF8F1: dw $313B, $313C, $313D, $313E ; No green pendant\n #_0DF8F9: dw $3D2B, $3D2C, $3D2D, $3D2E ; Green pendant\n\n.white_glove\n #_0DF901: dw $20F5, $20F5, $20F5, $20F5 ; No white glove?\n #_0DF909: dw $3D30, $3D31, $3D40, $3D41 ; White glove?\n\n.heart_pieces\n #_0DF911: dw $2484, $6484, $2485, $6485 ; 0 heart pieces\n #_0DF919: dw $24AD, $6484, $2485, $6485 ; 1 heart piece\n #_0DF921: dw $24AD, $6484, $24AE, $6485 ; 2 heart pieces\n #_0DF929: dw $24AD, $64AD, $24AE, $6485 ; 3 heart pieces\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_AbilityText", + "code": "ItemMenu_AbilityText:\n\n.lifts\n.lift2\n #_0DF931: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF93B: dw $2D5B, $2D58, $2D55, $2D63, $2D28 ; lift 2\n\n.lift3\n #_0DF945: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF94F: dw $2D5B, $2D58, $2D55, $2D63, $2D29 ; lift 3\n\n; ---------------------------------------------------------\n\n.main_jumble\n #_0DF959: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF963: dw $2D5B, $2D58, $2D55, $2D63, $2D27 ; lift 1\n\n #_0DF96D: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF977: dw $2CF5, $2D61, $2D54, $2D50, $2D53 ; read\n\n #_0DF981: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF98B: dw $2CF5, $2D63, $2D50, $2D5B, $2D5A ; talk\n\n #_0DF995: dw $207F, $207F, $207F, $207F, $207F ; nothing\n #_0DF99F: dw $207F, $207F, $207F, $207F, $207F ; nothing\n\n #_0DF9A9: dw $2CF5, $2CF5, $2C2E, $2CF5, $2CF5 ;\n #_0DF9B3: dw $2D5F, $2D64, $2D5B, $2D5B, $2CF5 ; pull\n\n #_0DF9BD: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF9C7: dw $2CF5, $2D61, $2D64, $2D5D, $2CF5 ; run\n\n #_0DF9D1: dw $2CF5, $2CF5, $2CF5, $2CF5, $2CF5 ;\n #_0DF9DB: dw $2CF5, $2D62, $2D66, $2D58, $2D5C ; swim\n\n #_0DF9E5: dw $2CF5, $2CF5, $2CF5, $207F, $207F ;\n #_0DF9EF: dw $2C01, $2C18, $2C28, $207F, $207F ; pray\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_HEXtoDEC_PowersOf10", + "code": "HUD_HEXtoDEC_PowersOf10:\n #_0DF9F9: dw 10\n #_0DF9FB: dw 100\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_HeartGFXTiles", + "code": "HUD_HeartGFXTiles:\n #_0DF9FD: dw $24A2, $24A2, $24A2\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_HeartTiles", + "code": "HUD_HeartTiles:\n #_0DFA03: dw $24A2, $24A1, $24A0\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_HeartDisplayFrames", + "code": "HUD_HeartDisplayFrames:\n #_0DFA09: dw $24A3, $24A4, $24A3, $24A0\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_AllOnes", + "code": "HUD_AllOnes:\n #_0DFA11: db $01, $01, $01, $01\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "MenuID_to_EquipID", + "code": "MenuID_to_EquipID:\n #_0DFA15: db $00 ; 0x00 - Nothing\n\n #_0DFA16: db $03 ; 0x01 - Bow\n #_0DFA17: db $02 ; 0x02 - Boomerang\n #_0DFA18: db $0E ; 0x03 - Hookshot\n #_0DFA19: db $01 ; 0x04 - Bombs\n #_0DFA1A: db $0A ; 0x05 - Mushroom/Powder\n #_0DFA1B: db $05 ; 0x06 - Fire rod\n #_0DFA1C: db $06 ; 0x07 - Ice rod\n #_0DFA1D: db $0F ; 0x08 - Bombos\n #_0DFA1E: db $10 ; 0x09 - Ether\n #_0DFA1F: db $11 ; 0x0A - Quake\n #_0DFA20: db $09 ; 0x0B - Lamp\n #_0DFA21: db $04 ; 0x0C - Hammer\n #_0DFA22: db $08 ; 0x0D - Shovel/Flute\n #_0DFA23: db $07 ; 0x0E - Net\n #_0DFA24: db $0C ; 0x0F - Book\n #_0DFA25: db $0B ; 0x10 - Bottle\n #_0DFA26: db $12 ; 0x11 - Somaria\n #_0DFA27: db $0D ; 0x12 - Byrna\n #_0DFA28: db $13 ; 0x13 - Cape\n #_0DFA29: db $14 ; 0x14 - Mirror\n\n #_0DFA2A: db $00 ; 0x15 - Nothing\n #_0DFA2B: db $01 ; 0x16 - Bombs\n #_0DFA2C: db $06 ; 0x17 - Ice rod\n #_0DFA2D: db $02 ; 0x18 - Boomerang\n #_0DFA2E: db $07 ; 0x19 - Net\n #_0DFA2F: db $03 ; 0x1A - Bow\n #_0DFA30: db $05 ; 0x1B - Fire rod\n #_0DFA31: db $04 ; 0x1C - Hammer\n #_0DFA32: db $08 ; 0x1D - Shovel/Flute\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "RestoreTorchBackground", + "code": "RestoreTorchBackground:\n #_0DFA33: LDA.l $7EF34A\n #_0DFA37: BEQ .exit\n\n #_0DFA39: LDA.l $7EC005\n #_0DFA3D: BEQ .exit\n\n #_0DFA3F: LDA.w $0458\n #_0DFA42: BNE .exit\n\n #_0DFA44: LDA.w $045A\n #_0DFA47: BNE .exit\n\n #_0DFA49: INC.w $0458\n\n #_0DFA4C: LDA.w $0414\n #_0DFA4F: CMP.b #$02\n #_0DFA51: BEQ .exit\n\n #_0DFA53: LDA.b #$01\n #_0DFA55: STA.b $1D\n\n.exit\n #_0DFA57: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RebuildHUD_long", + "code": "RebuildHUD_long:\n #_0DFA58: PHB\n #_0DFA59: PHK\n #_0DFA5A: PLB\n\n #_0DFA5B: JSR RebuildHUD\n\n #_0DFA5E: PLB\n\n #_0DFA5F: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RebuildHUD_ZeroKeys", + "code": "RebuildHUD_ZeroKeys:\n #_0DFA60: LDA.b #$00\n #_0DFA62: STA.l $7EC017\n\n #_0DFA66: LDA.b #$FF\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "RebuildHUD_Keys", + "code": "RebuildHUD_Keys:\n #_0DFA68: STA.l $7EF36F\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "RebuildHUD_long2", + "code": "RebuildHUD_long2:\n #_0DFA6C: JSR RebuildHUD\n\n #_0DFA6F: RTL", + "file": "bank_0D.asm" + }, + { + "name": "RebuildHUD", + "code": "RebuildHUD:\n #_0DFA70: REP #$30\n\n #_0DFA72: PHB\n\n #_0DFA73: LDA.w #$0149\n #_0DFA76: LDX.w #HUD_TilemapTemplate\n #_0DFA79: LDY.w #$7EC700\n #_0DFA7C: %MVN(HUD_TilemapTemplate>>16, $7E) ; MVN $0D, $7E\n\n #_0DFA7F: PLB\n #_0DFA80: PHB\n\n #_0DFA81: PHK\n #_0DFA82: PLB\n\n #_0DFA83: BRA .handle_buffer\n\n; =========================================================\n\n#RebuildHUD_update:\n #_0DFA85: REP #$30\n\n #_0DFA87: PHB\n #_0DFA88: PHK\n #_0DFA89: PLB\n\n.handle_buffer\n #_0DFA8A: JSR UpdateHUDBuffer\n\n #_0DFA8D: PLB\n\n #_0DFA8E: SEP #$30\n\n #_0DFA90: INC.b $16\n\n #_0DFA92: RTS", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_ItemGFXPointers", + "code": "ItemMenu_ItemGFXPointers:\n #_0DFA93: dw ItemMenuIcons_bows\n #_0DFA95: dw ItemMenuIcons_booms\n #_0DFA97: dw ItemMenuIcons_hook\n #_0DFA99: dw ItemMenuIcons_bombs\n #_0DFA9B: dw ItemMenuIcons_powder\n\n #_0DFA9D: dw ItemMenuIcons_fire_rod\n #_0DFA9F: dw ItemMenuIcons_ice_rod\n #_0DFAA1: dw ItemMenuIcons_bombos\n #_0DFAA3: dw ItemMenuIcons_ether\n #_0DFAA5: dw ItemMenuIcons_quake\n\n #_0DFAA7: dw ItemMenuIcons_lamp\n #_0DFAA9: dw ItemMenuIcons_hammer\n #_0DFAAB: dw ItemMenuIcons_flute\n #_0DFAAD: dw ItemMenuIcons_net\n #_0DFAAF: dw ItemMenuIcons_book\n\n #_0DFAB1: dw ItemMenuIcons_bottles\n #_0DFAB3: dw ItemMenuIcons_somaria\n #_0DFAB5: dw ItemMenuIcons_byrna\n #_0DFAB7: dw ItemMenuIcons_cape\n #_0DFAB9: dw ItemMenuIcons_mirror\n\n #_0DFABB: dw ItemMenuIcons_gloves\n #_0DFABD: dw ItemMenuIcons_boots\n #_0DFABF: dw ItemMenuIcons_flippers\n #_0DFAC1: dw ItemMenuIcons_pearl\n\n #_0DFAC3: dw ItemMenuIcons_unused_nothing\n\n #_0DFAC5: dw ItemMenuIcons_sword\n #_0DFAC7: dw ItemMenuIcons_shield\n #_0DFAC9: dw ItemMenuIcons_mail\n\n #_0DFACB: dw ItemMenuIcons_bottles\n #_0DFACD: dw ItemMenuIcons_bottles\n #_0DFACF: dw ItemMenuIcons_bottles\n #_0DFAD1: dw ItemMenuIcons_bottles\n\n #_0DFAD3: dw ItemMenuIcons_white_glove\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "ItemMenu_CursorPositions", + "code": "ItemMenu_CursorPositions:\n #_0DFAD5: dw $11C8, $11CE, $11D4, $11DA, $11E0\n #_0DFADF: dw $1288, $128E, $1294, $129A, $12A0\n #_0DFAE9: dw $1348, $134E, $1354, $135A, $1360\n #_0DFAF3: dw $1408, $140E, $1414, $141A, $1420\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUDBuffer_update_item", + "code": "UpdateHUDBuffer_update_item:\n #_0DFAFD: SEP #$30\n\n #_0DFAFF: LDA.l $7EF340\n #_0DFB03: BEQ .no_bow\n\n #_0DFB05: CMP.b #$03\n #_0DFB07: BCC .wooden_arrows\n\n #_0DFB09: LDA.b #$86\n #_0DFB0B: STA.l $7EC71E\n\n #_0DFB0F: LDA.b #$24\n #_0DFB11: STA.l $7EC71F\n\n #_0DFB15: LDA.b #$87\n #_0DFB17: STA.l $7EC720\n\n #_0DFB1B: LDA.b #$24\n #_0DFB1D: STA.l $7EC721\n\n #_0DFB21: LDX.b #$04\n\n #_0DFB23: LDA.l $7EF377\n #_0DFB27: BNE .set_bow_level\n\n #_0DFB29: LDX.b #$03\n #_0DFB2B: BRA .set_bow_level\n\n; ---------------------------------------------------------\n\n.wooden_arrows\n #_0DFB2D: LDX.b #$02\n\n #_0DFB2F: LDA.l $7EF377\n #_0DFB33: BNE .set_bow_level\n\n #_0DFB35: LDX.b #$01\n\n; ---------------------------------------------------------\n\n.set_bow_level\n #_0DFB37: TXA\n #_0DFB38: STA.l $7EF340\n\n.no_bow\n #_0DFB3C: REP #$30\n\n #_0DFB3E: LDX.w $0202\n #_0DFB41: BEQ .exit\n\n; ---------------------------------------------------------\n\n #_0DFB43: LDA.l $7EF33F,X\n #_0DFB47: AND.w #$00FF\n\n #_0DFB4A: CPX.w #$0004\n #_0DFB4D: BNE .not_bombs\n\n #_0DFB4F: LDA.w #$0001\n\n.not_bombs\n #_0DFB52: CPX.w #$0010\n #_0DFB55: BNE .not_bottle\n\n #_0DFB57: TXY\n #_0DFB58: TAX\n\n #_0DFB59: LDA.l $7EF35B,X\n #_0DFB5D: AND.w #$00FF\n\n #_0DFB60: TYX\n\n.not_bottle\n #_0DFB61: STA.b $02\n\n; ---------------------------------------------------------\n\n #_0DFB63: TXA\n #_0DFB64: DEC A\n #_0DFB65: ASL A\n #_0DFB66: TAX\n\n #_0DFB67: LDA.w ItemMenu_ItemGFXPointers,X\n #_0DFB6A: STA.b $04\n\n #_0DFB6C: LDA.b $02\n #_0DFB6E: ASL A\n #_0DFB6F: ASL A\n #_0DFB70: ASL A\n #_0DFB71: TAY\n\n #_0DFB72: LDA.b ($04),Y\n #_0DFB74: STA.l $7EC74A\n\n #_0DFB78: INY\n #_0DFB79: INY\n\n #_0DFB7A: LDA.b ($04),Y\n #_0DFB7C: STA.l $7EC74C\n\n #_0DFB80: INY\n #_0DFB81: INY\n\n #_0DFB82: LDA.b ($04),Y\n #_0DFB84: STA.l $7EC78A\n\n #_0DFB88: INY\n #_0DFB89: INY\n\n #_0DFB8A: LDA.b ($04),Y\n #_0DFB8C: STA.l $7EC78C\n\n.exit\n #_0DFB90: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUDBuffer", + "code": "UpdateHUDBuffer:\n #_0DFB91: JSR UpdateHUDBuffer_update_item\n\n; =========================================================\n\n#UpdateHUDBuffer_skip_item:\n #_0DFB94: SEP #$30\n\n #_0DFB96: LDA.b #HUD_HeartGFXTiles>>0\n #_0DFB98: STA.b $0A\n\n #_0DFB9A: LDA.b #HUD_HeartGFXTiles>>8\n #_0DFB9C: STA.b $0B\n\n #_0DFB9E: LDA.b #HUD_HeartGFXTiles>>16\n #_0DFBA0: STA.b $0C\n\n #_0DFBA2: LDA.b #$7EC768>>0\n #_0DFBA4: STA.b $07\n\n #_0DFBA6: LDA.b #$7EC768>>8\n #_0DFBA8: STA.b $08\n\n #_0DFBAA: LDA.b #$7EC768>>16\n #_0DFBAC: STA.b $09\n\n #_0DFBAE: REP #$30\n\n #_0DFBB0: LDA.l $7EF36C\n #_0DFBB4: AND.w #$00FF\n #_0DFBB7: STA.b $00\n #_0DFBB9: STA.b $02\n #_0DFBBB: STA.b $04\n\n #_0DFBBD: JSR UpdateHUDBuffer_UpdateHearts\n\n; ---------------------------------------------------------\n\n #_0DFBC0: SEP #$30\n\n #_0DFBC2: LDA.b #HUD_HeartTiles>>0\n #_0DFBC4: STA.b $0A\n\n #_0DFBC6: LDA.b #HUD_HeartTiles>>8\n #_0DFBC8: STA.b $0B\n\n #_0DFBCA: LDA.b #HUD_HeartTiles>>16\n #_0DFBCC: STA.b $0C\n\n #_0DFBCE: LDA.b #$7EC768>>0\n #_0DFBD0: STA.b $07\n\n #_0DFBD2: LDA.b #$7EC768>>8\n #_0DFBD4: STA.b $08\n\n #_0DFBD6: LDA.b #$7EC768>>16\n #_0DFBD8: STA.b $09\n\n #_0DFBDA: LDA.l $7EF36C\n #_0DFBDE: CMP.l $7EF36D\n #_0DFBE2: BEQ .hps_match\n\n #_0DFBE4: SEC\n #_0DFBE5: SBC.b #$04\n #_0DFBE7: CMP.l $7EF36D\n #_0DFBEB: BCS .hps_match\n\n.hps_match\n #_0DFBED: LDA.l $7EF36D\n #_0DFBF1: CLC\n #_0DFBF2: ADC.b #$03\n\n #_0DFBF4: REP #$30\n\n #_0DFBF6: AND.w #$00FC\n #_0DFBF9: STA.b $00\n #_0DFBFB: STA.b $04\n\n #_0DFBFD: LDA.l $7EF36C\n #_0DFC01: AND.w #$00FF\n #_0DFC04: STA.b $02\n\n #_0DFC06: JSR UpdateHUDBuffer_UpdateHearts\n\n; =========================================================\n\n#UpdateHUDBuffer_skip_hearts:\n #_0DFC09: REP #$30\n\n #_0DFC0B: LDA.l $7EF37B\n #_0DFC0F: AND.w #$00FF\n #_0DFC12: CMP.w #$0001\n #_0DFC15: BCC .not_half_magic\n\n #_0DFC17: LDA.w #$28F7\n #_0DFC1A: STA.l $7EC704\n\n #_0DFC1E: LDA.w #$2851\n #_0DFC21: STA.l $7EC706\n\n #_0DFC25: LDA.w #$28FA\n #_0DFC28: STA.l $7EC708\n\n; ---------------------------------------------------------\n\n.not_half_magic\n #_0DFC2C: LDA.l $7EF36E\n #_0DFC30: AND.w #$00FF\n #_0DFC33: CLC\n #_0DFC34: ADC.w #$0007\n #_0DFC37: AND.w #$FFF8\n #_0DFC3A: TAX\n\n #_0DFC3B: LDA.w HUD_MagicGaugeTiles+0,X\n #_0DFC3E: STA.l $7EC746\n\n #_0DFC42: LDA.w HUD_MagicGaugeTiles+2,X\n #_0DFC45: STA.l $7EC786\n\n #_0DFC49: LDA.w HUD_MagicGaugeTiles+4,X\n #_0DFC4C: STA.l $7EC7C6\n\n #_0DFC50: LDA.w HUD_MagicGaugeTiles+6,X\n #_0DFC53: STA.l $7EC806\n\n; ---------------------------------------------------------\n\n #_0DFC57: LDA.l $7EF362\n #_0DFC5B: JSR UpdateHUDBuffer_HEXtoDEC\n\n #_0DFC5E: REP #$30\n\n #_0DFC60: LDA.b $03\n #_0DFC62: AND.w #$00FF\n #_0DFC65: ORA.w #$2400\n #_0DFC68: STA.l $7EC750\n\n #_0DFC6C: LDA.b $04\n #_0DFC6E: AND.w #$00FF\n #_0DFC71: ORA.w #$2400\n #_0DFC74: STA.l $7EC752\n\n #_0DFC78: LDA.b $05\n #_0DFC7A: AND.w #$00FF\n #_0DFC7D: ORA.w #$2400\n #_0DFC80: STA.l $7EC754\n\n; ---------------------------------------------------------\n\n #_0DFC84: LDA.l $7EF343\n #_0DFC88: AND.w #$00FF\n #_0DFC8B: JSR UpdateHUDBuffer_HEXtoDEC\n\n #_0DFC8E: REP #$30\n\n #_0DFC90: LDA.b $04\n #_0DFC92: AND.w #$00FF\n #_0DFC95: ORA.w #$2400\n #_0DFC98: STA.l $7EC758\n\n #_0DFC9C: LDA.b $05\n #_0DFC9E: AND.w #$00FF\n #_0DFCA1: ORA.w #$2400\n #_0DFCA4: STA.l $7EC75A\n\n; ---------------------------------------------------------\n\n #_0DFCA8: LDA.l $7EF377\n #_0DFCAC: AND.w #$00FF\n #_0DFCAF: JSR UpdateHUDBuffer_HEXtoDEC\n\n #_0DFCB2: REP #$30\n\n #_0DFCB4: LDA.b $04\n #_0DFCB6: AND.w #$00FF\n #_0DFCB9: ORA.w #$2400\n #_0DFCBC: STA.l $7EC75E\n\n #_0DFCC0: LDA.b $05\n #_0DFCC2: AND.w #$00FF\n #_0DFCC5: ORA.w #$2400\n #_0DFCC8: STA.l $7EC760\n\n #_0DFCCC: LDA.w #$007F\n #_0DFCCF: STA.b $05\n\n; ---------------------------------------------------------\n\n #_0DFCD1: LDA.l $7EF36F\n #_0DFCD5: AND.w #$00FF\n #_0DFCD8: CMP.w #$00FF\n #_0DFCDB: BEQ .no_keys\n\n #_0DFCDD: JSR UpdateHUDBuffer_HEXtoDEC\n\n.no_keys\n #_0DFCE0: REP #$30\n\n #_0DFCE2: LDA.b $05\n #_0DFCE4: AND.w #$00FF\n #_0DFCE7: ORA.w #$2400\n #_0DFCEA: STA.l $7EC764\n\n #_0DFCEE: CMP.w #$247F\n #_0DFCF1: BNE .show_keys\n\n #_0DFCF3: STA.l $7EC724\n\n.show_keys\n #_0DFCF7: SEP #$30\n\n #_0DFCF9: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UNREACHABLE_0DFCFA", + "code": "UNREACHABLE_0DFCFA:\n #_0DFCFA: REP #$30\n\n #_0DFCFC: LDA.l $7EF36E\n #_0DFD00: AND.w #$0020\n #_0DFD03: BNE .continue\n\n #_0DFD05: BRL .exit\n\n; ---------------------------------------------------------\n\n.continue\n #_0DFD08: LDA.w #$0C00\n #_0DFD0B: STA.b $0E\n\n #_0DFD0D: LDA.w $020B\n #_0DFD10: CMP.w #$0020\n #_0DFD13: BCC .dont_clear\n\n #_0DFD15: LDA.w $0010\n #_0DFD18: AND.w #$00FF\n #_0DFD1B: CMP.w #$000E\n #_0DFD1E: BEQ .dont_clear\n\n #_0DFD20: LDA.w $001A\n #_0DFD23: AND.w #$0004\n #_0DFD26: BNE .clear\n\n; ---------------------------------------------------------\n\n.dont_clear\n #_0DFD28: LDA.w $020B\n #_0DFD2B: BEQ .exit\n\n #_0DFD2D: LDX.w #$0000\n\n #_0DFD30: LDA.w $020B\n #_0DFD33: LSR A\n #_0DFD34: LSR A\n #_0DFD35: BEQ .exit\n\n #_0DFD37: TAY\n\n #_0DFD38: LDA.w #$2082\n #_0DFD3B: ORA.b $0E\n\n.next_tile\n #_0DFD3D: STA.l $7EC742,X\n\n #_0DFD41: INX\n #_0DFD42: INX\n\n #_0DFD43: DEY\n #_0DFD44: BNE .next_tile\n\n #_0DFD46: LDA.w $020B\n #_0DFD49: CMP.w #$0020\n #_0DFD4C: BRA .skip_ahead\n\n; ---------------------------------------------------------\n\n#UNREACHABLE_0DFD4E:\n #_0DFD4E: LDA.w #$20A5\n #_0DFD51: ORA.b $0E\n #_0DFD53: STA.l $7EC742,X\n\n #_0DFD57: LDA.w #$20A6\n #_0DFD5A: ORA.b $0E\n #_0DFD5C: STA.l $7EC744,X\n\n #_0DFD60: BRA .exit\n\n; ---------------------------------------------------------\n\n.skip_ahead\n #_0DFD62: LDA.w $020B\n #_0DFD65: LSR A\n #_0DFD66: LSR A\n #_0DFD67: BCS .draw_b\n\n; ---------------------------------------------------------\n\n.draw_a\n #_0DFD69: LDA.w #$2080\n #_0DFD6C: ORA.b $0E\n #_0DFD6E: STA.l $7EC742,X\n\n #_0DFD72: LDA.w #$2081\n #_0DFD75: ORA.b $0E\n #_0DFD77: STA.l $7EC744,X\n\n #_0DFD7B: BRA .exit\n\n; ---------------------------------------------------------\n\n.draw_b\n #_0DFD7D: LDA.w #$2083\n #_0DFD80: ORA.b $0E\n #_0DFD82: STA.l $7EC742,X\n\n #_0DFD86: LDA.w #$2084\n #_0DFD89: ORA.b $0E\n #_0DFD8B: STA.l $7EC744,X\n\n #_0DFD8F: LDA.w #$2085\n #_0DFD92: ORA.b $0E\n #_0DFD94: STA.l $7EC746,X\n\n; ---------------------------------------------------------\n\n.exit\n #_0DFD98: SEP #$30\n\n #_0DFD9A: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUDBuffer_UpdateHearts", + "code": "UpdateHUDBuffer_UpdateHearts:\n #_0DFDAB: LDX.w #$0000\n\n.next_heart\n #_0DFDAE: LDA.b $00\n #_0DFDB0: CMP.w #$0008\n #_0DFDB3: BCC .less_than_1_heart\n\n #_0DFDB5: SBC.w #$0008\n #_0DFDB8: STA.b $00\n\n #_0DFDBA: LDY.w #$0004\n #_0DFDBD: JSR UpdateHUDBuffer_DrawSingleHeart\n\n #_0DFDC0: INX\n #_0DFDC1: INX\n\n #_0DFDC2: BRA .next_heart\n\n; ---------------------------------------------------------\n\n.less_than_1_heart\n #_0DFDC4: CMP.w #$0005\n #_0DFDC7: BCC .less_than_half_a_heart\n\n #_0DFDC9: LDY.w #$0004\n #_0DFDCC: BRA UpdateHUDBuffer_DrawSingleHeart\n\n.less_than_half_a_heart\n #_0DFDCE: CMP.w #$0001\n #_0DFDD1: BCC .empty_heart\n\n #_0DFDD3: LDY.w #$0002\n #_0DFDD6: BRA UpdateHUDBuffer_DrawSingleHeart\n\n.empty_heart\n #_0DFDD8: RTS", + "file": "bank_0D.asm" + }, + { + "name": "UpdateHUDBuffer_DrawSingleHeart", + "code": "UpdateHUDBuffer_DrawSingleHeart:\n #_0DFDD9: CPX.w #$0014\n #_0DFDDC: BCC .dont_advance_row\n\n #_0DFDDE: LDX.w #$0000\n\n #_0DFDE1: LDA.b $07\n #_0DFDE3: CLC\n #_0DFDE4: ADC.w #$0040\n #_0DFDE7: STA.b $07\n\n.dont_advance_row\n #_0DFDE9: LDA.b [$0A],Y\n\n #_0DFDEB: TXY\n\n #_0DFDEC: STA.b [$07],Y\n\n #_0DFDEE: RTS", + "file": "bank_0D.asm" + }, + { + "name": "HUD_MagicGaugeTiles", + "code": "HUD_MagicGaugeTiles:\n #_0DFDEF: dw $3CF5, $3CF5, $3CF5, $3CF5\n #_0DFDF7: dw $3CF5, $3CF5, $3CF5, $3C5F\n #_0DFDFF: dw $3CF5, $3CF5, $3CF5, $3C4C\n #_0DFE07: dw $3CF5, $3CF5, $3CF5, $3C4D\n #_0DFE0F: dw $3CF5, $3CF5, $3CF5, $3C4E\n #_0DFE17: dw $3CF5, $3CF5, $3C5F, $3C5E\n #_0DFE1F: dw $3CF5, $3CF5, $3C4C, $3C5E\n #_0DFE27: dw $3CF5, $3CF5, $3C4D, $3C5E\n #_0DFE2F: dw $3CF5, $3CF5, $3C4E, $3C5E\n #_0DFE37: dw $3CF5, $3C5F, $3C5E, $3C5E\n #_0DFE3F: dw $3CF5, $3C4C, $3C5E, $3C5E\n #_0DFE47: dw $3CF5, $3C4D, $3C5E, $3C5E\n #_0DFE4F: dw $3CF5, $3C4E, $3C5E, $3C5E\n #_0DFE57: dw $3C5F, $3C5E, $3C5E, $3C5E\n #_0DFE5F: dw $3C4C, $3C5E, $3C5E, $3C5E\n #_0DFE67: dw $3C4D, $3C5E, $3C5E, $3C5E\n #_0DFE6F: dw $3C4E, $3C5E, $3C5E, $3C5E\n\n; =========================================================\n", + "file": "bank_0D.asm" + }, + { + "name": "HUD_TilemapTemplate", + "code": "HUD_TilemapTemplate:\n #_0DFE77: dw $207F, $207F, $2850, $A856\n #_0DFE7F: dw $2852, $285B, $285B, $285C\n #_0DFE87: dw $207F, $3CA8, $207F, $207F\n #_0DFE8F: dw $2C88, $2C89, $207F, $20A7\n #_0DFE97: dw $20A9, $207F, $2871, $207F\n #_0DFE9F: dw $207F, $207F, $288B, $288F\n #_0DFEA7: dw $24AB, $24AC, $688F, $688B\n #_0DFEAF: dw $207F, $207F, $207F, $207F\n\n #_0DFEB7: dw $207F, $207F, $2854, $2871\n #_0DFEBF: dw $2858, $207F, $207F, $285D\n #_0DFEC7: dw $207F, $207F, $207F, $207F\n #_0DFECF: dw $207F, $207F, $207F, $207F\n #_0DFED7: dw $207F, $207F, $207F, $207F\n #_0DFEDF: dw $207F, $207F, $207F, $207F\n #_0DFEE7: dw $207F, $207F, $207F, $207F\n #_0DFEEF: dw $207F, $207F, $207F, $207F\n\n #_0DFEF7: dw $207F, $207F, $2854, $304E\n #_0DFEFF: dw $2858, $207F, $207F, $285D\n #_0DFF07: dw $207F, $207F, $207F, $207F\n #_0DFF0F: dw $207F, $207F, $207F, $207F\n #_0DFF17: dw $207F, $207F, $207F, $207F\n #_0DFF1F: dw $207F, $207F, $207F, $207F\n #_0DFF27: dw $207F, $207F, $207F, $207F\n #_0DFF2F: dw $207F, $207F, $207F, $207F\n\n #_0DFF37: dw $207F, $207F, $2854, $305E\n #_0DFF3F: dw $2859, $A85B, $A85B, $A85C\n #_0DFF47: dw $207F, $207F, $207F, $207F\n #_0DFF4F: dw $207F, $207F, $207F, $207F\n #_0DFF57: dw $207F, $207F, $207F, $207F\n #_0DFF5F: dw $207F, $207F, $207F, $207F\n #_0DFF67: dw $207F, $207F, $207F, $207F\n #_0DFF6F: dw $207F, $207F, $207F, $207F\n\n #_0DFF77: dw $207F, $207F, $2854, $305E\n #_0DFF7F: dw $6854, $207F, $207F, $207F\n #_0DFF87: dw $207F, $207F, $207F, $207F\n #_0DFF8F: dw $207F, $207F, $207F, $207F\n #_0DFF97: dw $207F, $207F, $207F, $207F\n #_0DFF9F: dw $207F, $207F, $207F, $207F\n #_0DFFA7: dw $207F, $207F, $207F, $207F\n #_0DFFAF: dw $207F, $207F, $207F, $207F\n\n #_0DFFB7: dw $207F, $207F, $A850, $2856\n #_0DFFBF: dw $E850\n\n; =========================================================\n; FREE ROM: 0x3F\n; =========================================================", + "file": "bank_0D.asm" + }, + { + "name": "RoomData_ObjectDataPointers", + "code": "RoomData_ObjectDataPointers:\n#_1F8000: dl RoomDataTiles_0000\n#_1F8003: dl RoomDataTiles_0001\n#_1F8006: dl RoomDataTiles_0002\n#_1F8009: dl RoomDataTiles_0003\n#_1F800C: dl RoomDataTiles_0004\n#_1F800F: dl RoomDataTiles_Empty\n#_1F8012: dl RoomDataTiles_0006\n#_1F8015: dl RoomDataTiles_0007\n#_1F8018: dl RoomDataTiles_0008\n#_1F801B: dl RoomDataTiles_0009\n#_1F801E: dl RoomDataTiles_000A\n#_1F8021: dl RoomDataTiles_000B\n#_1F8024: dl RoomDataTiles_000C\n#_1F8027: dl RoomDataTiles_000D\n#_1F802A: dl RoomDataTiles_000E\n#_1F802D: dl RoomDataTiles_Empty\n#_1F8030: dl RoomDataTiles_0010\n#_1F8033: dl RoomDataTiles_0011\n#_1F8036: dl RoomDataTiles_0012\n#_1F8039: dl RoomDataTiles_0013\n#_1F803C: dl RoomDataTiles_0014\n#_1F803F: dl RoomDataTiles_0015\n#_1F8042: dl RoomDataTiles_0016\n#_1F8045: dl RoomDataTiles_0017\n#_1F8048: dl RoomDataTiles_0018\n#_1F804B: dl RoomDataTiles_0019\n#_1F804E: dl RoomDataTiles_001A\n#_1F8051: dl RoomDataTiles_001B\n#_1F8054: dl RoomDataTiles_001C\n#_1F8057: dl RoomDataTiles_001D\n#_1F805A: dl RoomDataTiles_001E\n#_1F805D: dl RoomDataTiles_001F\n#_1F8060: dl RoomDataTiles_000D\n#_1F8063: dl RoomDataTiles_0021\n#_1F8066: dl RoomDataTiles_0022\n#_1F8069: dl RoomDataTiles_0023\n#_1F806C: dl RoomDataTiles_0024\n#_1F806F: dl RoomDataTiles_Empty\n#_1F8072: dl RoomDataTiles_0026\n#_1F8075: dl RoomDataTiles_0027\n#_1F8078: dl RoomDataTiles_0028\n#_1F807B: dl RoomDataTiles_0029\n#_1F807E: dl RoomDataTiles_002A\n#_1F8081: dl RoomDataTiles_002B\n#_1F8084: dl RoomDataTiles_002C\n#_1F8087: dl RoomDataTiles_Empty\n#_1F808A: dl RoomDataTiles_002E\n#_1F808D: dl RoomDataTiles_002F\n#_1F8090: dl RoomDataTiles_0030\n#_1F8093: dl RoomDataTiles_0031\n#_1F8096: dl RoomDataTiles_0032\n#_1F8099: dl RoomDataTiles_0033\n#_1F809C: dl RoomDataTiles_0034\n#_1F809F: dl RoomDataTiles_0035\n#_1F80A2: dl RoomDataTiles_0036\n#_1F80A5: dl RoomDataTiles_0037\n#_1F80A8: dl RoomDataTiles_0038\n#_1F80AB: dl RoomDataTiles_0039\n#_1F80AE: dl RoomDataTiles_003A\n#_1F80B1: dl RoomDataTiles_003B\n#_1F80B4: dl RoomDataTiles_003C\n#_1F80B7: dl RoomDataTiles_003D\n#_1F80BA: dl RoomDataTiles_003E\n#_1F80BD: dl RoomDataTiles_003F\n#_1F80C0: dl RoomDataTiles_0040\n#_1F80C3: dl RoomDataTiles_0041\n#_1F80C6: dl RoomDataTiles_0042\n#_1F80C9: dl RoomDataTiles_0043\n#_1F80CC: dl RoomDataTiles_0044\n#_1F80CF: dl RoomDataTiles_0045\n#_1F80D2: dl RoomDataTiles_0046\n#_1F80D5: dl RoomDataTiles_Empty\n#_1F80D8: dl RoomDataTiles_Empty\n#_1F80DB: dl RoomDataTiles_0049\n#_1F80DE: dl RoomDataTiles_004A\n#_1F80E1: dl RoomDataTiles_004B\n#_1F80E4: dl RoomDataTiles_004C\n#_1F80E7: dl RoomDataTiles_004D\n#_1F80EA: dl RoomDataTiles_004E\n#_1F80ED: dl RoomDataTiles_004F\n#_1F80F0: dl RoomDataTiles_0050\n#_1F80F3: dl RoomDataTiles_0051\n#_1F80F6: dl RoomDataTiles_0052\n#_1F80F9: dl RoomDataTiles_0053\n#_1F80FC: dl RoomDataTiles_0054\n#_1F80FF: dl RoomDataTiles_0055\n#_1F8102: dl RoomDataTiles_0056\n#_1F8105: dl RoomDataTiles_0057\n#_1F8108: dl RoomDataTiles_0058\n#_1F810B: dl RoomDataTiles_0059\n#_1F810E: dl RoomDataTiles_005A\n#_1F8111: dl RoomDataTiles_005B\n#_1F8114: dl RoomDataTiles_005C\n#_1F8117: dl RoomDataTiles_005D\n#_1F811A: dl RoomDataTiles_005E\n#_1F811D: dl RoomDataTiles_005F\n#_1F8120: dl RoomDataTiles_0060\n#_1F8123: dl RoomDataTiles_0061\n#_1F8126: dl RoomDataTiles_0062\n#_1F8129: dl RoomDataTiles_0063\n#_1F812C: dl RoomDataTiles_0064\n#_1F812F: dl RoomDataTiles_0065\n#_1F8132: dl RoomDataTiles_0066\n#_1F8135: dl RoomDataTiles_0067\n#_1F8138: dl RoomDataTiles_0068\n#_1F813B: dl RoomDataTiles_Empty\n#_1F813E: dl RoomDataTiles_006A\n#_1F8141: dl RoomDataTiles_006B\n#_1F8144: dl RoomDataTiles_006C\n#_1F8147: dl RoomDataTiles_006D\n#_1F814A: dl RoomDataTiles_006E\n#_1F814D: dl RoomDataTiles_Empty\n#_1F8150: dl RoomDataTiles_0070\n#_1F8153: dl RoomDataTiles_0071\n#_1F8156: dl RoomDataTiles_0072\n#_1F8159: dl RoomDataTiles_0073\n#_1F815C: dl RoomDataTiles_0074\n#_1F815F: dl RoomDataTiles_0075\n#_1F8162: dl RoomDataTiles_0076\n#_1F8165: dl RoomDataTiles_0077\n#_1F8168: dl RoomDataTiles_Empty\n#_1F816B: dl RoomDataTiles_Empty\n#_1F816E: dl RoomDataTiles_Empty\n#_1F8171: dl RoomDataTiles_007B\n#_1F8174: dl RoomDataTiles_007C\n#_1F8177: dl RoomDataTiles_007D\n#_1F817A: dl RoomDataTiles_007E\n#_1F817D: dl RoomDataTiles_007F\n#_1F8180: dl RoomDataTiles_0080\n#_1F8183: dl RoomDataTiles_0081\n#_1F8186: dl RoomDataTiles_0082\n#_1F8189: dl RoomDataTiles_0083\n#_1F818C: dl RoomDataTiles_0084\n#_1F818F: dl RoomDataTiles_0085\n#_1F8192: dl RoomDataTiles_Empty\n#_1F8195: dl RoomDataTiles_0087\n#_1F8198: dl RoomDataTiles_Empty\n#_1F819B: dl RoomDataTiles_0089\n#_1F819E: dl RoomDataTiles_Empty\n#_1F81A1: dl RoomDataTiles_008B\n#_1F81A4: dl RoomDataTiles_008C\n#_1F81A7: dl RoomDataTiles_008D\n#_1F81AA: dl RoomDataTiles_008E\n#_1F81AD: dl RoomDataTiles_Empty\n#_1F81B0: dl RoomDataTiles_0090\n#_1F81B3: dl RoomDataTiles_0091\n#_1F81B6: dl RoomDataTiles_0092\n#_1F81B9: dl RoomDataTiles_0093\n#_1F81BC: dl RoomDataTiles_Empty\n#_1F81BF: dl RoomDataTiles_0095\n#_1F81C2: dl RoomDataTiles_0096\n#_1F81C5: dl RoomDataTiles_0097\n#_1F81C8: dl RoomDataTiles_0098\n#_1F81CB: dl RoomDataTiles_0099\n#_1F81CE: dl RoomDataTiles_Empty\n#_1F81D1: dl RoomDataTiles_009B\n#_1F81D4: dl RoomDataTiles_009C\n#_1F81D7: dl RoomDataTiles_009D\n#_1F81DA: dl RoomDataTiles_009E\n#_1F81DD: dl RoomDataTiles_009F\n#_1F81E0: dl RoomDataTiles_00A0\n#_1F81E3: dl RoomDataTiles_00A1\n#_1F81E6: dl RoomDataTiles_00A2\n#_1F81E9: dl RoomDataTiles_00A3\n#_1F81EC: dl RoomDataTiles_00A4\n#_1F81EF: dl RoomDataTiles_00A5\n#_1F81F2: dl RoomDataTiles_00A6\n#_1F81F5: dl RoomDataTiles_00A7\n#_1F81F8: dl RoomDataTiles_00A8\n#_1F81FB: dl RoomDataTiles_00A9\n#_1F81FE: dl RoomDataTiles_00AA\n#_1F8201: dl RoomDataTiles_00AB\n#_1F8204: dl RoomDataTiles_00AC\n#_1F8207: dl RoomDataTiles_Empty\n#_1F820A: dl RoomDataTiles_00AE\n#_1F820D: dl RoomDataTiles_00AF\n#_1F8210: dl RoomDataTiles_00B0\n#_1F8213: dl RoomDataTiles_00B1\n#_1F8216: dl RoomDataTiles_00B2\n#_1F8219: dl RoomDataTiles_00B3\n#_1F821C: dl RoomDataTiles_00B4\n#_1F821F: dl RoomDataTiles_00B5\n#_1F8222: dl RoomDataTiles_00B6\n#_1F8225: dl RoomDataTiles_00B7\n#_1F8228: dl RoomDataTiles_00B8\n#_1F822B: dl RoomDataTiles_00B9\n#_1F822E: dl RoomDataTiles_00BA\n#_1F8231: dl RoomDataTiles_00BB\n#_1F8234: dl RoomDataTiles_00BC\n#_1F8237: dl RoomDataTiles_Empty\n#_1F823A: dl RoomDataTiles_00BE\n#_1F823D: dl RoomDataTiles_004F\n#_1F8240: dl RoomDataTiles_00C0\n#_1F8243: dl RoomDataTiles_00C1\n#_1F8246: dl RoomDataTiles_00C2\n#_1F8249: dl RoomDataTiles_00C3\n#_1F824C: dl RoomDataTiles_00C4\n#_1F824F: dl RoomDataTiles_00C5\n#_1F8252: dl RoomDataTiles_00C6\n#_1F8255: dl RoomDataTiles_00C7\n#_1F8258: dl RoomDataTiles_00C8\n#_1F825B: dl RoomDataTiles_00C9\n#_1F825E: dl RoomDataTiles_Empty\n#_1F8261: dl RoomDataTiles_00CB\n#_1F8264: dl RoomDataTiles_00CC\n#_1F8267: dl RoomDataTiles_Empty\n#_1F826A: dl RoomDataTiles_00CE\n#_1F826D: dl RoomDataTiles_Empty\n#_1F8270: dl RoomDataTiles_00D0\n#_1F8273: dl RoomDataTiles_00D1\n#_1F8276: dl RoomDataTiles_00D2\n#_1F8279: dl RoomDataTiles_Empty\n#_1F827C: dl RoomDataTiles_Empty\n#_1F827F: dl RoomDataTiles_00D5\n#_1F8282: dl RoomDataTiles_00D6\n#_1F8285: dl RoomDataTiles_Empty\n#_1F8288: dl RoomDataTiles_00D8\n#_1F828B: dl RoomDataTiles_00D9\n#_1F828E: dl RoomDataTiles_00DA\n#_1F8291: dl RoomDataTiles_00DB\n#_1F8294: dl RoomDataTiles_00DC\n#_1F8297: dl RoomDataTiles_Empty\n#_1F829A: dl RoomDataTiles_00DE\n#_1F829D: dl RoomDataTiles_00DF\n#_1F82A0: dl RoomDataTiles_00E0\n#_1F82A3: dl RoomDataTiles_00E1\n#_1F82A6: dl RoomDataTiles_00E2\n#_1F82A9: dl RoomDataTiles_00E3\n#_1F82AC: dl RoomDataTiles_00E4\n#_1F82AF: dl RoomDataTiles_00E5\n#_1F82B2: dl RoomDataTiles_00E6\n#_1F82B5: dl RoomDataTiles_00E7\n#_1F82B8: dl RoomDataTiles_00E8\n#_1F82BB: dl RoomDataTiles_Empty\n#_1F82BE: dl RoomDataTiles_00EA\n#_1F82C1: dl RoomDataTiles_00EB\n#_1F82C4: dl RoomDataTiles_Empty\n#_1F82C7: dl RoomDataTiles_00ED\n#_1F82CA: dl RoomDataTiles_00EE\n#_1F82CD: dl RoomDataTiles_00EF\n#_1F82D0: dl RoomDataTiles_00F0\n#_1F82D3: dl RoomDataTiles_00F1\n#_1F82D6: dl RoomDataTiles_00F2\n#_1F82D9: dl RoomDataTiles_00F3\n#_1F82DC: dl RoomDataTiles_00F4\n#_1F82DF: dl RoomDataTiles_00F5\n#_1F82E2: dl RoomDataTiles_Empty\n#_1F82E5: dl RoomDataTiles_Empty\n#_1F82E8: dl RoomDataTiles_00F8\n#_1F82EB: dl RoomDataTiles_00F9\n#_1F82EE: dl RoomDataTiles_00FA\n#_1F82F1: dl RoomDataTiles_00FB\n#_1F82F4: dl RoomDataTiles_Empty\n#_1F82F7: dl RoomDataTiles_00FD\n#_1F82FA: dl RoomDataTiles_00FE\n#_1F82FD: dl RoomDataTiles_00FF\n#_1F8300: dl RoomDataTiles_0100\n#_1F8303: dl RoomDataTiles_0101\n#_1F8306: dl RoomDataTiles_0102\n#_1F8309: dl RoomDataTiles_0103\n#_1F830C: dl RoomDataTiles_0104\n#_1F830F: dl RoomDataTiles_0105\n#_1F8312: dl RoomDataTiles_0106\n#_1F8315: dl RoomDataTiles_0107\n#_1F8318: dl RoomDataTiles_0108\n#_1F831B: dl RoomDataTiles_0109\n#_1F831E: dl RoomDataTiles_010A\n#_1F8321: dl RoomDataTiles_010B\n#_1F8324: dl RoomDataTiles_010C\n#_1F8327: dl RoomDataTiles_010D\n#_1F832A: dl RoomDataTiles_010E\n#_1F832D: dl RoomDataTiles_010F\n#_1F8330: dl RoomDataTiles_0110\n#_1F8333: dl RoomDataTiles_0111\n#_1F8336: dl RoomDataTiles_0112\n#_1F8339: dl RoomDataTiles_0113\n#_1F833C: dl RoomDataTiles_0114\n#_1F833F: dl RoomDataTiles_0115\n#_1F8342: dl RoomDataTiles_0116\n#_1F8345: dl RoomDataTiles_0117\n#_1F8348: dl RoomDataTiles_0118\n#_1F834B: dl RoomDataTiles_0119\n#_1F834E: dl RoomDataTiles_011A\n#_1F8351: dl RoomDataTiles_011B\n#_1F8354: dl RoomDataTiles_011C\n#_1F8357: dl RoomDataTiles_011D\n#_1F835A: dl RoomDataTiles_011E\n#_1F835D: dl RoomDataTiles_011F\n#_1F8360: dl RoomDataTiles_0120\n#_1F8363: dl RoomDataTiles_0121\n#_1F8366: dl RoomDataTiles_0122\n#_1F8369: dl RoomDataTiles_0123\n#_1F836C: dl RoomDataTiles_0124\n#_1F836F: dl RoomDataTiles_0125\n#_1F8372: dl RoomDataTiles_0126\n#_1F8375: dl RoomDataTiles_0125\n#_1F8378: dl RoomDataTiles_0033\n#_1F837B: dl RoomDataTiles_0033\n#_1F837E: dl RoomDataTiles_0033\n#_1F8381: dl RoomDataTiles_0033\n#_1F8384: dl RoomDataTiles_Empty\n#_1F8387: dl RoomDataTiles_Empty\n#_1F838A: dl RoomDataTiles_Empty\n#_1F838D: dl RoomDataTiles_Empty\n#_1F8390: dl RoomDataTiles_0033\n#_1F8393: dl RoomDataTiles_0033\n#_1F8396: dl RoomDataTiles_0033\n#_1F8399: dl RoomDataTiles_0033\n#_1F839C: dl RoomDataTiles_0033\n#_1F839F: dl RoomDataTiles_0033\n#_1F83A2: dl RoomDataTiles_0033\n#_1F83A5: dl RoomDataTiles_0033\n#_1F83A8: dl RoomDataTiles_0033\n#_1F83AB: dl RoomDataTiles_0033\n#_1F83AE: dl RoomDataTiles_0033\n#_1F83B1: dl RoomDataTiles_0033\n#_1F83B4: dl RoomDataTiles_Empty\n#_1F83B7: dl RoomDataTiles_Empty\n#_1F83BA: dl RoomDataTiles_Empty\n#_1F83BD: dl RoomDataTiles_Empty\n\n; =========================================================\n", + "file": "rooms.asm" + }, + { + "name": "RoomData_DoorDataPointers", + "code": "RoomData_DoorDataPointers:\n#_1F83C0: dl RoomDataTiles_0000+$004D\n#_1F83C3: dl RoomDataTiles_0001+$0086\n#_1F83C6: dl RoomDataTiles_0002+$00F2\n#_1F83C9: dl RoomDataTiles_0003+$0026\n#_1F83CC: dl RoomDataTiles_0004+$0089\n#_1F83CF: dl RoomDataTiles_Empty+$0008\n#_1F83D2: dl RoomDataTiles_0006+$0038\n#_1F83D5: dl RoomDataTiles_0007+$0137\n#_1F83D8: dl RoomDataTiles_0008+$00B3\n#_1F83DB: dl RoomDataTiles_0009+$0059\n#_1F83DE: dl RoomDataTiles_000A+$00B6\n#_1F83E1: dl RoomDataTiles_000B+$00B9\n#_1F83E4: dl RoomDataTiles_000C+$010D\n#_1F83E7: dl RoomDataTiles_000D+$0038\n#_1F83EA: dl RoomDataTiles_000E+$0089\n#_1F83ED: dl RoomDataTiles_Empty+$0008\n#_1F83F0: dl RoomDataTiles_0010+$00DD\n#_1F83F3: dl RoomDataTiles_0011+$00B3\n#_1F83F6: dl RoomDataTiles_0012+$00C8\n#_1F83F9: dl RoomDataTiles_0013+$0035\n#_1F83FC: dl RoomDataTiles_0014+$01C1\n#_1F83FF: dl RoomDataTiles_0015+$01CA\n#_1F8402: dl RoomDataTiles_0016+$012B\n#_1F8405: dl RoomDataTiles_0017+$010A\n#_1F8408: dl RoomDataTiles_0018+$008C\n#_1F840B: dl RoomDataTiles_0019+$00CE\n#_1F840E: dl RoomDataTiles_001A+$00CE\n#_1F8411: dl RoomDataTiles_001B+$0080\n#_1F8414: dl RoomDataTiles_001C+$003B\n#_1F8417: dl RoomDataTiles_001D+$0047\n#_1F841A: dl RoomDataTiles_001E+$00DD\n#_1F841D: dl RoomDataTiles_001F+$0047\n#_1F8420: dl RoomDataTiles_000D+$0038\n#_1F8423: dl RoomDataTiles_0021+$00D4\n#_1F8426: dl RoomDataTiles_0022+$009B\n#_1F8429: dl RoomDataTiles_0023+$0047\n#_1F842C: dl RoomDataTiles_0024+$00AA\n#_1F842F: dl RoomDataTiles_Empty+$0008\n#_1F8432: dl RoomDataTiles_0026+$00F8\n#_1F8435: dl RoomDataTiles_0027+$013D\n#_1F8438: dl RoomDataTiles_0028+$0119\n#_1F843B: dl RoomDataTiles_0029+$0068\n#_1F843E: dl RoomDataTiles_002A+$0197\n#_1F8441: dl RoomDataTiles_002B+$00C5\n#_1F8444: dl RoomDataTiles_002C+$00F8\n#_1F8447: dl RoomDataTiles_Empty+$0008\n#_1F844A: dl RoomDataTiles_002E+$0023\n#_1F844D: dl RoomDataTiles_002F+$00E6\n#_1F8450: dl RoomDataTiles_0030+$005C\n#_1F8453: dl RoomDataTiles_0031+$00DD\n#_1F8456: dl RoomDataTiles_0032+$0074\n#_1F8459: dl RoomDataTiles_0033+$0008\n#_1F845C: dl RoomDataTiles_0034+$013D\n#_1F845F: dl RoomDataTiles_0035+$015E\n#_1F8462: dl RoomDataTiles_0036+$01E5\n#_1F8465: dl RoomDataTiles_0037+$0131\n#_1F8468: dl RoomDataTiles_0038+$00AD\n#_1F846B: dl RoomDataTiles_0039+$004A\n#_1F846E: dl RoomDataTiles_003A+$0182\n#_1F8471: dl RoomDataTiles_003B+$010D\n#_1F8474: dl RoomDataTiles_003C+$00C8\n#_1F8477: dl RoomDataTiles_003D+$00B9\n#_1F847A: dl RoomDataTiles_003E+$00AA\n#_1F847D: dl RoomDataTiles_003F+$008F\n#_1F8480: dl RoomDataTiles_0040+$0101\n#_1F8483: dl RoomDataTiles_0041+$0080\n#_1F8486: dl RoomDataTiles_0042+$0044\n#_1F8489: dl RoomDataTiles_0043+$0062\n#_1F848C: dl RoomDataTiles_0044+$0104\n#_1F848F: dl RoomDataTiles_0045+$00D7\n#_1F8492: dl RoomDataTiles_0046+$014C\n#_1F8495: dl RoomDataTiles_Empty+$0008\n#_1F8498: dl RoomDataTiles_Empty+$0008\n#_1F849B: dl RoomDataTiles_0049+$012B\n#_1F849E: dl RoomDataTiles_004A+$00C5\n#_1F84A1: dl RoomDataTiles_004B+$00E0\n#_1F84A4: dl RoomDataTiles_004C+$006E\n#_1F84A7: dl RoomDataTiles_004D+$0119\n#_1F84AA: dl RoomDataTiles_004E+$009B\n#_1F84AD: dl RoomDataTiles_004F+$0059\n#_1F84B0: dl RoomDataTiles_0050+$00AD\n#_1F84B3: dl RoomDataTiles_0051+$0110\n#_1F84B6: dl RoomDataTiles_0052+$00C2\n#_1F84B9: dl RoomDataTiles_0053+$00AD\n#_1F84BC: dl RoomDataTiles_0054+$012B\n#_1F84BF: dl RoomDataTiles_0055+$011F\n#_1F84C2: dl RoomDataTiles_0056+$0098\n#_1F84C5: dl RoomDataTiles_0057+$007A\n#_1F84C8: dl RoomDataTiles_0058+$0116\n#_1F84CB: dl RoomDataTiles_0059+$00EF\n#_1F84CE: dl RoomDataTiles_005A+$001A\n#_1F84D1: dl RoomDataTiles_005B+$00A1\n#_1F84D4: dl RoomDataTiles_005C+$00A4\n#_1F84D7: dl RoomDataTiles_005D+$0065\n#_1F84DA: dl RoomDataTiles_005E+$00F8\n#_1F84DD: dl RoomDataTiles_005F+$0038\n#_1F84E0: dl RoomDataTiles_0060+$00D1\n#_1F84E3: dl RoomDataTiles_0061+$013D\n#_1F84E6: dl RoomDataTiles_0062+$0113\n#_1F84E9: dl RoomDataTiles_0063+$0038\n#_1F84EC: dl RoomDataTiles_0064+$0077\n#_1F84EF: dl RoomDataTiles_0065+$006E\n#_1F84F2: dl RoomDataTiles_0066+$01DC\n#_1F84F5: dl RoomDataTiles_0067+$0113\n#_1F84F8: dl RoomDataTiles_0068+$00E3\n#_1F84FB: dl RoomDataTiles_Empty+$0008\n#_1F84FE: dl RoomDataTiles_006A+$008F\n#_1F8501: dl RoomDataTiles_006B+$0095\n#_1F8504: dl RoomDataTiles_006C+$004A\n#_1F8507: dl RoomDataTiles_006D+$0065\n#_1F850A: dl RoomDataTiles_006E+$004D\n#_1F850D: dl RoomDataTiles_Empty+$0008\n#_1F8510: dl RoomDataTiles_0070+$0032\n#_1F8513: dl RoomDataTiles_0071+$00F2\n#_1F8516: dl RoomDataTiles_0072+$010D\n#_1F8519: dl RoomDataTiles_0073+$007D\n#_1F851C: dl RoomDataTiles_0074+$00EC\n#_1F851F: dl RoomDataTiles_0075+$004D\n#_1F8522: dl RoomDataTiles_0076+$0170\n#_1F8525: dl RoomDataTiles_0077+$0191\n#_1F8528: dl RoomDataTiles_Empty+$0008\n#_1F852B: dl RoomDataTiles_Empty+$0008\n#_1F852E: dl RoomDataTiles_Empty+$0008\n#_1F8531: dl RoomDataTiles_007B+$00D4\n#_1F8534: dl RoomDataTiles_007C+$00BC\n#_1F8537: dl RoomDataTiles_007D+$0113\n#_1F853A: dl RoomDataTiles_007E+$0077\n#_1F853D: dl RoomDataTiles_007F+$0059\n#_1F8540: dl RoomDataTiles_0080+$009B\n#_1F8543: dl RoomDataTiles_0081+$012B\n#_1F8546: dl RoomDataTiles_0082+$0140\n#_1F8549: dl RoomDataTiles_0083+$00FB\n#_1F854C: dl RoomDataTiles_0084+$00F5\n#_1F854F: dl RoomDataTiles_0085+$00C2\n#_1F8552: dl RoomDataTiles_Empty+$0008\n#_1F8555: dl RoomDataTiles_0087+$00CB\n#_1F8558: dl RoomDataTiles_Empty+$0008\n#_1F855B: dl RoomDataTiles_0089+$0065\n#_1F855E: dl RoomDataTiles_Empty+$0008\n#_1F8561: dl RoomDataTiles_008B+$012B\n#_1F8564: dl RoomDataTiles_008C+$00A4\n#_1F8567: dl RoomDataTiles_008D+$00E3\n#_1F856A: dl RoomDataTiles_008E+$0020\n#_1F856D: dl RoomDataTiles_Empty+$0008\n#_1F8570: dl RoomDataTiles_0090+$0014\n#_1F8573: dl RoomDataTiles_0091+$005F\n#_1F8576: dl RoomDataTiles_0092+$0092\n#_1F8579: dl RoomDataTiles_0093+$009E\n#_1F857C: dl RoomDataTiles_Empty+$0008\n#_1F857F: dl RoomDataTiles_0095+$007D\n#_1F8582: dl RoomDataTiles_0096+$006E\n#_1F8585: dl RoomDataTiles_0097+$00A7\n#_1F8588: dl RoomDataTiles_0098+$0098\n#_1F858B: dl RoomDataTiles_0099+$0089\n#_1F858E: dl RoomDataTiles_Empty+$0008\n#_1F8591: dl RoomDataTiles_009B+$00B6\n#_1F8594: dl RoomDataTiles_009C+$011F\n#_1F8597: dl RoomDataTiles_009D+$006E\n#_1F859A: dl RoomDataTiles_009E+$0077\n#_1F859D: dl RoomDataTiles_009F+$0065\n#_1F85A0: dl RoomDataTiles_00A0+$00B0\n#_1F85A3: dl RoomDataTiles_00A1+$00DA\n#_1F85A6: dl RoomDataTiles_00A2+$00EC\n#_1F85A9: dl RoomDataTiles_00A3+$0077\n#_1F85AC: dl RoomDataTiles_00A4+$0041\n#_1F85AF: dl RoomDataTiles_00A5+$00D7\n#_1F85B2: dl RoomDataTiles_00A6+$002F\n#_1F85B5: dl RoomDataTiles_00A7+$003E\n#_1F85B8: dl RoomDataTiles_00A8+$0155\n#_1F85BB: dl RoomDataTiles_00A9+$0134\n#_1F85BE: dl RoomDataTiles_00AA+$0152\n#_1F85C1: dl RoomDataTiles_00AB+$0023\n#_1F85C4: dl RoomDataTiles_00AC+$0029\n#_1F85C7: dl RoomDataTiles_Empty+$0008\n#_1F85CA: dl RoomDataTiles_00AE+$0038\n#_1F85CD: dl RoomDataTiles_00AF+$0068\n#_1F85D0: dl RoomDataTiles_00B0+$007D\n#_1F85D3: dl RoomDataTiles_00B1+$00A7\n#_1F85D6: dl RoomDataTiles_00B2+$00EC\n#_1F85D9: dl RoomDataTiles_00B3+$0068\n#_1F85DC: dl RoomDataTiles_00B4+$00C2\n#_1F85DF: dl RoomDataTiles_00B5+$02FC\n#_1F85E2: dl RoomDataTiles_00B6+$0098\n#_1F85E5: dl RoomDataTiles_00B7+$0071\n#_1F85E8: dl RoomDataTiles_00B8+$003E\n#_1F85EB: dl RoomDataTiles_00B9+$018E\n#_1F85EE: dl RoomDataTiles_00BA+$0044\n#_1F85F1: dl RoomDataTiles_00BB+$00E0\n#_1F85F4: dl RoomDataTiles_00BC+$00FB\n#_1F85F7: dl RoomDataTiles_Empty+$0008\n#_1F85FA: dl RoomDataTiles_00BE+$0041\n#_1F85FD: dl RoomDataTiles_004F+$0059\n#_1F8600: dl RoomDataTiles_00C0+$00B3\n#_1F8603: dl RoomDataTiles_00C1+$007D\n#_1F8606: dl RoomDataTiles_00C2+$010D\n#_1F8609: dl RoomDataTiles_00C3+$00AD\n#_1F860C: dl RoomDataTiles_00C4+$0134\n#_1F860F: dl RoomDataTiles_00C5+$009E\n#_1F8612: dl RoomDataTiles_00C6+$018B\n#_1F8615: dl RoomDataTiles_00C7+$0137\n#_1F8618: dl RoomDataTiles_00C8+$0011\n#_1F861B: dl RoomDataTiles_00C9+$00FB\n#_1F861E: dl RoomDataTiles_Empty+$0008\n#_1F8621: dl RoomDataTiles_00CB+$015B\n#_1F8624: dl RoomDataTiles_00CC+$014F\n#_1F8627: dl RoomDataTiles_Empty+$0008\n#_1F862A: dl RoomDataTiles_00CE+$0050\n#_1F862D: dl RoomDataTiles_Empty+$0008\n#_1F8630: dl RoomDataTiles_00D0+$00B0\n#_1F8633: dl RoomDataTiles_00D1+$00D1\n#_1F8636: dl RoomDataTiles_00D2+$0077\n#_1F8639: dl RoomDataTiles_Empty+$0008\n#_1F863C: dl RoomDataTiles_Empty+$0008\n#_1F863F: dl RoomDataTiles_00D5+$010A\n#_1F8642: dl RoomDataTiles_00D6+$0122\n#_1F8645: dl RoomDataTiles_Empty+$0008\n#_1F8648: dl RoomDataTiles_00D8+$0053\n#_1F864B: dl RoomDataTiles_00D9+$007A\n#_1F864E: dl RoomDataTiles_00DA+$0026\n#_1F8651: dl RoomDataTiles_00DB+$0173\n#_1F8654: dl RoomDataTiles_00DC+$015B\n#_1F8657: dl RoomDataTiles_Empty+$0008\n#_1F865A: dl RoomDataTiles_00DE+$000B\n#_1F865D: dl RoomDataTiles_00DF+$0077\n#_1F8660: dl RoomDataTiles_00E0+$0065\n#_1F8663: dl RoomDataTiles_00E1+$00CE\n#_1F8666: dl RoomDataTiles_00E2+$0131\n#_1F8669: dl RoomDataTiles_00E3+$00E9\n#_1F866C: dl RoomDataTiles_00E4+$00DD\n#_1F866F: dl RoomDataTiles_00E5+$0101\n#_1F8672: dl RoomDataTiles_00E6+$00F5\n#_1F8675: dl RoomDataTiles_00E7+$00DA\n#_1F8678: dl RoomDataTiles_00E8+$00D1\n#_1F867B: dl RoomDataTiles_Empty+$0008\n#_1F867E: dl RoomDataTiles_00EA+$008C\n#_1F8681: dl RoomDataTiles_00EB+$0062\n#_1F8684: dl RoomDataTiles_Empty+$0008\n#_1F8687: dl RoomDataTiles_00ED+$0137\n#_1F868A: dl RoomDataTiles_00EE+$00CE\n#_1F868D: dl RoomDataTiles_00EF+$0095\n#_1F8690: dl RoomDataTiles_00F0+$0170\n#_1F8693: dl RoomDataTiles_00F1+$0173\n#_1F8696: dl RoomDataTiles_00F2+$0041\n#_1F8699: dl RoomDataTiles_00F3+$0047\n#_1F869C: dl RoomDataTiles_00F4+$0032\n#_1F869F: dl RoomDataTiles_00F5+$0038\n#_1F86A2: dl RoomDataTiles_Empty+$0008\n#_1F86A5: dl RoomDataTiles_Empty+$0008\n#_1F86A8: dl RoomDataTiles_00F8+$00E3\n#_1F86AB: dl RoomDataTiles_00F9+$0065\n#_1F86AE: dl RoomDataTiles_00FA+$0107\n#_1F86B1: dl RoomDataTiles_00FB+$0086\n#_1F86B4: dl RoomDataTiles_Empty+$0008\n#_1F86B7: dl RoomDataTiles_00FD+$00DA\n#_1F86BA: dl RoomDataTiles_00FE+$0077\n#_1F86BD: dl RoomDataTiles_00FF+$00AA\n#_1F86C0: dl RoomDataTiles_0100+$0047\n#_1F86C3: dl RoomDataTiles_0101+$007A\n#_1F86C6: dl RoomDataTiles_0102+$0059\n#_1F86C9: dl RoomDataTiles_0103+$00E6\n#_1F86CC: dl RoomDataTiles_0104+$0041\n#_1F86CF: dl RoomDataTiles_0105+$0068\n#_1F86D2: dl RoomDataTiles_0106+$00B3\n#_1F86D5: dl RoomDataTiles_0107+$0098\n#_1F86D8: dl RoomDataTiles_0108+$00B3\n#_1F86DB: dl RoomDataTiles_0109+$005C\n#_1F86DE: dl RoomDataTiles_010A+$00D4\n#_1F86E1: dl RoomDataTiles_010B+$00D7\n#_1F86E4: dl RoomDataTiles_010C+$00FE\n#_1F86E7: dl RoomDataTiles_010D+$0083\n#_1F86EA: dl RoomDataTiles_010E+$0125\n#_1F86ED: dl RoomDataTiles_010F+$004D\n#_1F86F0: dl RoomDataTiles_0110+$004A\n#_1F86F3: dl RoomDataTiles_0111+$003B\n#_1F86F6: dl RoomDataTiles_0112+$008F\n#_1F86F9: dl RoomDataTiles_0113+$006E\n#_1F86FC: dl RoomDataTiles_0114+$00C5\n#_1F86FF: dl RoomDataTiles_0115+$00F8\n#_1F8702: dl RoomDataTiles_0116+$003E\n#_1F8705: dl RoomDataTiles_0117+$0140\n#_1F8708: dl RoomDataTiles_0118+$0053\n#_1F870B: dl RoomDataTiles_0119+$0059\n#_1F870E: dl RoomDataTiles_011A+$0062\n#_1F8711: dl RoomDataTiles_011B+$00DD\n#_1F8714: dl RoomDataTiles_011C+$009B\n#_1F8717: dl RoomDataTiles_011D+$007A\n#_1F871A: dl RoomDataTiles_011E+$008C\n#_1F871D: dl RoomDataTiles_011F+$0098\n#_1F8720: dl RoomDataTiles_0120+$0083\n#_1F8723: dl RoomDataTiles_0121+$0023\n#_1F8726: dl RoomDataTiles_0122+$006E\n#_1F8729: dl RoomDataTiles_0123+$0053\n#_1F872C: dl RoomDataTiles_0124+$0038\n#_1F872F: dl RoomDataTiles_0125+$004D\n#_1F8732: dl RoomDataTiles_0126+$007A\n#_1F8735: dl RoomDataTiles_0125+$004D\n#_1F8738: dl RoomDataTiles_0033+$0008\n#_1F873B: dl RoomDataTiles_0033+$0008\n#_1F873E: dl RoomDataTiles_0033+$0008\n#_1F8741: dl RoomDataTiles_0033+$0008\n#_1F8744: dl RoomDataTiles_Empty+$0008\n#_1F8747: dl RoomDataTiles_Empty+$0008\n#_1F874A: dl RoomDataTiles_Empty+$0008\n#_1F874D: dl RoomDataTiles_Empty+$0008\n#_1F8750: dl RoomDataTiles_0033+$0008\n#_1F8753: dl RoomDataTiles_0033+$0008\n#_1F8756: dl RoomDataTiles_0033+$0008\n#_1F8759: dl RoomDataTiles_0033+$0008\n#_1F875C: dl RoomDataTiles_0033+$0008\n#_1F875F: dl RoomDataTiles_0033+$0008\n#_1F8762: dl RoomDataTiles_0033+$0008\n#_1F8765: dl RoomDataTiles_0033+$0008\n#_1F8768: dl RoomDataTiles_0033+$0008\n#_1F876B: dl RoomDataTiles_0033+$0008\n#_1F876E: dl RoomDataTiles_0033+$0008\n#_1F8771: dl RoomDataTiles_0033+$0008\n#_1F8774: dl RoomDataTiles_Empty+$0008\n#_1F8777: dl RoomDataTiles_Empty+$0008\n#_1F877A: dl RoomDataTiles_Empty+$0008\n#_1F877D: dl RoomDataTiles_Empty+$0008\n\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n; Bank0F rooms\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n\n; =========================================================\n; Empty room\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_Empty", + "code": "RoomDataTiles_Empty: #_1F8780: incbin \"bin/rooms/room0005.bin\" ; size: 0x000A\n\n; =========================================================\n; Desert Palace\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0033", + "code": "RoomDataTiles_0033: #_1F878A: incbin \"bin/rooms/room0033.bin\" ; size: 0x000C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0043", + "code": "RoomDataTiles_0043: #_1F8796: incbin \"bin/rooms/room0043.bin\" ; size: 0x006A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0053", + "code": "RoomDataTiles_0053: #_1F8800: incbin \"bin/rooms/room0053.bin\" ; size: 0x00B5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0063", + "code": "RoomDataTiles_0063: #_1F88B5: incbin \"bin/rooms/room0063.bin\" ; size: 0x0040", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0073", + "code": "RoomDataTiles_0073: #_1F88F5: incbin \"bin/rooms/room0073.bin\" ; size: 0x0085", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0074", + "code": "RoomDataTiles_0074: #_1F897A: incbin \"bin/rooms/room0074.bin\" ; size: 0x00F2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0075", + "code": "RoomDataTiles_0075: #_1F8A6C: incbin \"bin/rooms/room0075.bin\" ; size: 0x0053", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0083", + "code": "RoomDataTiles_0083: #_1F8ABF: incbin \"bin/rooms/room0083.bin\" ; size: 0x0103", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0084", + "code": "RoomDataTiles_0084: #_1F8BC2: incbin \"bin/rooms/room0084.bin\" ; size: 0x00F9", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0085", + "code": "RoomDataTiles_0085: #_1F8CBB: incbin \"bin/rooms/room0085.bin\" ; size: 0x00CC\n\n; =========================================================\n; Agahnim's Tower\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0030", + "code": "RoomDataTiles_0030: #_1F8D87: incbin \"bin/rooms/room0030.bin\" ; size: 0x0062", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0040", + "code": "RoomDataTiles_0040: #_1F8DE9: incbin \"bin/rooms/room0040.bin\" ; size: 0x0105", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B0", + "code": "RoomDataTiles_00B0: #_1F8EEE: incbin \"bin/rooms/room00B0.bin\" ; size: 0x0085", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C0", + "code": "RoomDataTiles_00C0: #_1F8F73: incbin \"bin/rooms/room00C0.bin\" ; size: 0x00BB", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D0", + "code": "RoomDataTiles_00D0: #_1F902E: incbin \"bin/rooms/room00D0.bin\" ; size: 0x00B6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E0", + "code": "RoomDataTiles_00E0: #_1F90E4: incbin \"bin/rooms/room00E0.bin\" ; size: 0x006F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_000D", + "code": "RoomDataTiles_000D: #_1F9153: incbin \"bin/rooms/room000D.bin\" ; size: 0x003C\n\n; =========================================================\n; Swamp Palace\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0028", + "code": "RoomDataTiles_0028: #_1F918F: incbin \"bin/rooms/room0028.bin\" ; size: 0x011F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0038", + "code": "RoomDataTiles_0038: #_1F92AE: incbin \"bin/rooms/room0038.bin\" ; size: 0x00B3", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0037", + "code": "RoomDataTiles_0037: #_1F9361: incbin \"bin/rooms/room0037.bin\" ; size: 0x013F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0036", + "code": "RoomDataTiles_0036: #_1F94A0: incbin \"bin/rooms/room0036.bin\" ; size: 0x01F3", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0035", + "code": "RoomDataTiles_0035: #_1F9693: incbin \"bin/rooms/room0035.bin\" ; size: 0x016C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0034", + "code": "RoomDataTiles_0034: #_1F97FF: incbin \"bin/rooms/room0034.bin\" ; size: 0x0143", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0054", + "code": "RoomDataTiles_0054: #_1F9942: incbin \"bin/rooms/room0054.bin\" ; size: 0x012D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0046", + "code": "RoomDataTiles_0046: #_1F9A6F: incbin \"bin/rooms/room0046.bin\" ; size: 0x0154", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0026", + "code": "RoomDataTiles_0026: #_1F9BC3: incbin \"bin/rooms/room0026.bin\" ; size: 0x0102", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0076", + "code": "RoomDataTiles_0076: #_1F9CC5: incbin \"bin/rooms/room0076.bin\" ; size: 0x017A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0066", + "code": "RoomDataTiles_0066: #_1F9E3F: incbin \"bin/rooms/room0066.bin\" ; size: 0x01E6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0016", + "code": "RoomDataTiles_0016: #_1FA025: incbin \"bin/rooms/room0016.bin\" ; size: 0x0135", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0006", + "code": "RoomDataTiles_0006: #_1FA15A: incbin \"bin/rooms/room0006.bin\" ; size: 0x003C\n\n; =========================================================\n; Unused room I found\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_Orphan", + "code": "RoomDataTiles_Orphan: #_1FA196: incbin \"bin/rooms/unused-1FA196.bin\" ; size: 0x000C\n\n; =========================================================\n; Palace of Darkness\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004A", + "code": "RoomDataTiles_004A: #_1FA1A2: incbin \"bin/rooms/room004A.bin\" ; size: 0x00D1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003A", + "code": "RoomDataTiles_003A: #_1FA273: incbin \"bin/rooms/room003A.bin\" ; size: 0x018A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_002A", + "code": "RoomDataTiles_002A: #_1FA3FD: incbin \"bin/rooms/room002A.bin\" ; size: 0x01A5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001A", + "code": "RoomDataTiles_001A: #_1FA5A2: incbin \"bin/rooms/room001A.bin\" ; size: 0x00DC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_000A", + "code": "RoomDataTiles_000A: #_1FA67E: incbin \"bin/rooms/room000A.bin\" ; size: 0x00BA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_006A", + "code": "RoomDataTiles_006A: #_1FA738: incbin \"bin/rooms/room006A.bin\" ; size: 0x0093", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005A", + "code": "RoomDataTiles_005A: #_1FA7CB: incbin \"bin/rooms/room005A.bin\" ; size: 0x001E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004B", + "code": "RoomDataTiles_004B: #_1FA7E9: incbin \"bin/rooms/room004B.bin\" ; size: 0x00E8", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003B", + "code": "RoomDataTiles_003B: #_1FA8D1: incbin \"bin/rooms/room003B.bin\" ; size: 0x0111", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_002B", + "code": "RoomDataTiles_002B: #_1FA9E2: incbin \"bin/rooms/room002B.bin\" ; size: 0x00CF", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001B", + "code": "RoomDataTiles_001B: #_1FAAB1: incbin \"bin/rooms/room001B.bin\" ; size: 0x0086", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_000B", + "code": "RoomDataTiles_000B: #_1FAB37: incbin \"bin/rooms/room000B.bin\" ; size: 0x00C1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0019", + "code": "RoomDataTiles_0019: #_1FABF8: incbin \"bin/rooms/room0019.bin\" ; size: 0x00D4", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0009", + "code": "RoomDataTiles_0009: #_1FACCC: incbin \"bin/rooms/room0009.bin\" ; size: 0x005B\n\n; =========================================================\n; Unused rooms Zarby found\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_Zarby89", + "code": "RoomDataTiles_Zarby89: #_1FAD27: incbin \"bin/rooms/unused-1FAD27.bin\" ; size: 0x00CA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_Zarby90", + "code": "RoomDataTiles_Zarby90: #_1FADF1: incbin \"bin/rooms/unused-1FADF1.bin\" ; size: 0x00D2\n\n; =========================================================\n; Misery Mire\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0098", + "code": "RoomDataTiles_0098: #_1FAEC3: incbin \"bin/rooms/room0098.bin\" ; size: 0x009C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D2", + "code": "RoomDataTiles_00D2: #_1FAF5F: incbin \"bin/rooms/room00D2.bin\" ; size: 0x007B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C2", + "code": "RoomDataTiles_00C2: #_1FAFDA: incbin \"bin/rooms/room00C2.bin\" ; size: 0x011F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C1", + "code": "RoomDataTiles_00C1: #_1FB0F9: incbin \"bin/rooms/room00C1.bin\" ; size: 0x008F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D1", + "code": "RoomDataTiles_00D1: #_1FB188: incbin \"bin/rooms/room00D1.bin\" ; size: 0x00DB", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0097", + "code": "RoomDataTiles_0097: #_1FB263: incbin \"bin/rooms/room0097.bin\" ; size: 0x00AD", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B1", + "code": "RoomDataTiles_00B1: #_1FB310: incbin \"bin/rooms/room00B1.bin\" ; size: 0x00B1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B2", + "code": "RoomDataTiles_00B2: #_1FB3C1: incbin \"bin/rooms/room00B2.bin\" ; size: 0x00FE", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C3", + "code": "RoomDataTiles_00C3: #_1FB4BF: incbin \"bin/rooms/room00C3.bin\" ; size: 0x00BD", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B3", + "code": "RoomDataTiles_00B3: #_1FB57C: incbin \"bin/rooms/room00B3.bin\" ; size: 0x0074", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A3", + "code": "RoomDataTiles_00A3: #_1FB5F0: incbin \"bin/rooms/room00A3.bin\" ; size: 0x007D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A2", + "code": "RoomDataTiles_00A2: #_1FB66D: incbin \"bin/rooms/room00A2.bin\" ; size: 0x00F6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A1", + "code": "RoomDataTiles_00A1: #_1FB763: incbin \"bin/rooms/room00A1.bin\" ; size: 0x00E0", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0093", + "code": "RoomDataTiles_0093: #_1FB843: incbin \"bin/rooms/room0093.bin\" ; size: 0x00A6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0092", + "code": "RoomDataTiles_0092: #_1FB8E9: incbin \"bin/rooms/room0092.bin\" ; size: 0x009E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0091", + "code": "RoomDataTiles_0091: #_1FB987: incbin \"bin/rooms/room0091.bin\" ; size: 0x0063", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A0", + "code": "RoomDataTiles_00A0: #_1FB9EA: incbin \"bin/rooms/room00A0.bin\" ; size: 0x00B4", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0090", + "code": "RoomDataTiles_0090: #_1FBA9E: incbin \"bin/rooms/room0090.bin\" ; size: 0x0018\n\n; =========================================================\n; Skull Woods\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0056", + "code": "RoomDataTiles_0056: #_1FBAB6: incbin \"bin/rooms/room0056.bin\" ; size: 0x00A2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0057", + "code": "RoomDataTiles_0057: #_1FBB58: incbin \"bin/rooms/room0057.bin\" ; size: 0x0088", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0058", + "code": "RoomDataTiles_0058: #_1FBBE0: incbin \"bin/rooms/room0058.bin\" ; size: 0x0124", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0067", + "code": "RoomDataTiles_0067: #_1FBD04: incbin \"bin/rooms/room0067.bin\" ; size: 0x011B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0068", + "code": "RoomDataTiles_0068: #_1FBE1F: incbin \"bin/rooms/room0068.bin\" ; size: 0x00E9", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0059", + "code": "RoomDataTiles_0059: #_1FBF08: incbin \"bin/rooms/room0059.bin\" ; size: 0x00F9", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0049", + "code": "RoomDataTiles_0049: #_1FC001: incbin \"bin/rooms/room0049.bin\" ; size: 0x0135", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0039", + "code": "RoomDataTiles_0039: #_1FC136: incbin \"bin/rooms/room0039.bin\" ; size: 0x0050", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0029", + "code": "RoomDataTiles_0029: #_1FC186: incbin \"bin/rooms/room0029.bin\" ; size: 0x006A\n\n; =========================================================\n; Ice Palace\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_000E", + "code": "RoomDataTiles_000E: #_1FC1F0: incbin \"bin/rooms/room000E.bin\" ; size: 0x0091", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001E", + "code": "RoomDataTiles_001E: #_1FC281: incbin \"bin/rooms/room001E.bin\" ; size: 0x00E7", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001F", + "code": "RoomDataTiles_001F: #_1FC368: incbin \"bin/rooms/room001F.bin\" ; size: 0x004D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_002E", + "code": "RoomDataTiles_002E: #_1FC3B5: incbin \"bin/rooms/room002E.bin\" ; size: 0x0027", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003E", + "code": "RoomDataTiles_003E: #_1FC3DC: incbin \"bin/rooms/room003E.bin\" ; size: 0x00B0", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003F", + "code": "RoomDataTiles_003F: #_1FC48C: incbin \"bin/rooms/room003F.bin\" ; size: 0x0093", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004E", + "code": "RoomDataTiles_004E: #_1FC51F: incbin \"bin/rooms/room004E.bin\" ; size: 0x00A1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005E", + "code": "RoomDataTiles_005E: #_1FC5C0: incbin \"bin/rooms/room005E.bin\" ; size: 0x0102", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005F", + "code": "RoomDataTiles_005F: #_1FC6C2: incbin \"bin/rooms/room005F.bin\" ; size: 0x003C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_006E", + "code": "RoomDataTiles_006E: #_1FC6FE: incbin \"bin/rooms/room006E.bin\" ; size: 0x0051", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_007E", + "code": "RoomDataTiles_007E: #_1FC74F: incbin \"bin/rooms/room007E.bin\" ; size: 0x007F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_007F", + "code": "RoomDataTiles_007F: #_1FC7CE: incbin \"bin/rooms/room007F.bin\" ; size: 0x005F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_008E", + "code": "RoomDataTiles_008E: #_1FC82D: incbin \"bin/rooms/room008E.bin\" ; size: 0x0024", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_009E", + "code": "RoomDataTiles_009E: #_1FC851: incbin \"bin/rooms/room009E.bin\" ; size: 0x0081", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_009F", + "code": "RoomDataTiles_009F: #_1FC8D2: incbin \"bin/rooms/room009F.bin\" ; size: 0x006B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00AE", + "code": "RoomDataTiles_00AE: #_1FC93D: incbin \"bin/rooms/room00AE.bin\" ; size: 0x003C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00AF", + "code": "RoomDataTiles_00AF: #_1FC979: incbin \"bin/rooms/room00AF.bin\" ; size: 0x006E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00BE", + "code": "RoomDataTiles_00BE: #_1FC9E7: incbin \"bin/rooms/room00BE.bin\" ; size: 0x0049", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004F", + "code": "RoomDataTiles_004F: #_1FCA30: incbin \"bin/rooms/room004F.bin\" ; size: 0x005D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00CE", + "code": "RoomDataTiles_00CE: #_1FCA8D: incbin \"bin/rooms/room00CE.bin\" ; size: 0x0054", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00DE", + "code": "RoomDataTiles_00DE: #_1FCAE1: incbin \"bin/rooms/room00DE.bin\" ; size: 0x000D\n\n; =========================================================\n; Tower of Hera\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0007", + "code": "RoomDataTiles_0007: #_1FCAEE: incbin \"bin/rooms/room0007.bin\" ; size: 0x0139", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0017", + "code": "RoomDataTiles_0017: #_1FCC27: incbin \"bin/rooms/room0017.bin\" ; size: 0x010C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0027", + "code": "RoomDataTiles_0027: #_1FCD33: incbin \"bin/rooms/room0027.bin\" ; size: 0x013F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0031", + "code": "RoomDataTiles_0031: #_1FCE72: incbin \"bin/rooms/room0031.bin\" ; size: 0x00E3", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0077", + "code": "RoomDataTiles_0077: #_1FCF55: incbin \"bin/rooms/room0077.bin\" ; size: 0x0197", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0087", + "code": "RoomDataTiles_0087: #_1FD0EC: incbin \"bin/rooms/room0087.bin\" ; size: 0x00D1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A7", + "code": "RoomDataTiles_00A7: #_1FD1BD: incbin \"bin/rooms/room00A7.bin\" ; size: 0x0040\n\n; =========================================================\n; Thieves' Town\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00DB", + "code": "RoomDataTiles_00DB: #_1FD1FD: incbin \"bin/rooms/room00DB.bin\" ; size: 0x0179", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00DC", + "code": "RoomDataTiles_00DC: #_1FD376: incbin \"bin/rooms/room00DC.bin\" ; size: 0x015F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00CB", + "code": "RoomDataTiles_00CB: #_1FD4D5: incbin \"bin/rooms/room00CB.bin\" ; size: 0x015F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00CC", + "code": "RoomDataTiles_00CC: #_1FD634: incbin \"bin/rooms/room00CC.bin\" ; size: 0x0157", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00BB", + "code": "RoomDataTiles_00BB: #_1FD78B: incbin \"bin/rooms/room00BB.bin\" ; size: 0x00EE", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00BC", + "code": "RoomDataTiles_00BC: #_1FD879: incbin \"bin/rooms/room00BC.bin\" ; size: 0x010D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00AB", + "code": "RoomDataTiles_00AB: #_1FD986: incbin \"bin/rooms/room00AB.bin\" ; size: 0x0029", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00AC", + "code": "RoomDataTiles_00AC: #_1FD9AF: incbin \"bin/rooms/room00AC.bin\" ; size: 0x002D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0064", + "code": "RoomDataTiles_0064: #_1FD9DC: incbin \"bin/rooms/room0064.bin\" ; size: 0x007B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0065", + "code": "RoomDataTiles_0065: #_1FDA57: incbin \"bin/rooms/room0065.bin\" ; size: 0x0072", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0044", + "code": "RoomDataTiles_0044: #_1FDAC9: incbin \"bin/rooms/room0044.bin\" ; size: 0x010E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0045", + "code": "RoomDataTiles_0045: #_1FDBD7: incbin \"bin/rooms/room0045.bin\" ; size: 0x00E1\n\n; =========================================================\n; Turtle Rock\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B6", + "code": "RoomDataTiles_00B6: #_1FDCB8: incbin \"bin/rooms/room00B6.bin\" ; size: 0x00A4", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B7", + "code": "RoomDataTiles_00B7: #_1FDD5C: incbin \"bin/rooms/room00B7.bin\" ; size: 0x0075", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C6", + "code": "RoomDataTiles_00C6: #_1FDDD1: incbin \"bin/rooms/room00C6.bin\" ; size: 0x0199", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C7", + "code": "RoomDataTiles_00C7: #_1FDF6A: incbin \"bin/rooms/room00C7.bin\" ; size: 0x013F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D6", + "code": "RoomDataTiles_00D6: #_1FE0A9: incbin \"bin/rooms/room00D6.bin\" ; size: 0x012A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0004", + "code": "RoomDataTiles_0004: #_1FE1D3: incbin \"bin/rooms/room0004.bin\" ; size: 0x0095", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0013", + "code": "RoomDataTiles_0013: #_1FE268: incbin \"bin/rooms/room0013.bin\" ; size: 0x003B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0014", + "code": "RoomDataTiles_0014: #_1FE2A3: incbin \"bin/rooms/room0014.bin\" ; size: 0x01D1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0015", + "code": "RoomDataTiles_0015: #_1FE474: incbin \"bin/rooms/room0015.bin\" ; size: 0x01D0", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0024", + "code": "RoomDataTiles_0024: #_1FE644: incbin \"bin/rooms/room0024.bin\" ; size: 0x00BC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A4", + "code": "RoomDataTiles_00A4: #_1FE700: incbin \"bin/rooms/room00A4.bin\" ; size: 0x0045", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B4", + "code": "RoomDataTiles_00B4: #_1FE745: incbin \"bin/rooms/room00B4.bin\" ; size: 0x00C6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B5", + "code": "RoomDataTiles_00B5: #_1FE80B: incbin \"bin/rooms/room00B5.bin\" ; size: 0x0300", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C4", + "code": "RoomDataTiles_00C4: #_1FEB0B: incbin \"bin/rooms/room00C4.bin\" ; size: 0x0138", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C5", + "code": "RoomDataTiles_00C5: #_1FEC43: incbin \"bin/rooms/room00C5.bin\" ; size: 0x00A6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0023", + "code": "RoomDataTiles_0023: #_1FECE9: incbin \"bin/rooms/room0023.bin\" ; size: 0x004D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D5", + "code": "RoomDataTiles_00D5: #_1FED36: incbin \"bin/rooms/room00D5.bin\" ; size: 0x0110\n\n; =========================================================\n; Ganon's Tower\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_000C", + "code": "RoomDataTiles_000C: #_1FEE46: incbin \"bin/rooms/room000C.bin\" ; size: 0x0111", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_007B", + "code": "RoomDataTiles_007B: #_1FEF57: incbin \"bin/rooms/room007B.bin\" ; size: 0x00DC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_007C", + "code": "RoomDataTiles_007C: #_1FF033: incbin \"bin/rooms/room007C.bin\" ; size: 0x00C6", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_007D", + "code": "RoomDataTiles_007D: #_1FF0F9: incbin \"bin/rooms/room007D.bin\" ; size: 0x011B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_008B", + "code": "RoomDataTiles_008B: #_1FF214: incbin \"bin/rooms/room008B.bin\" ; size: 0x0137", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_008C", + "code": "RoomDataTiles_008C: #_1FF34B: incbin \"bin/rooms/room008C.bin\" ; size: 0x00B2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_008D", + "code": "RoomDataTiles_008D: #_1FF3FD: incbin \"bin/rooms/room008D.bin\" ; size: 0x00EF", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_009B", + "code": "RoomDataTiles_009B: #_1FF4EC: incbin \"bin/rooms/room009B.bin\" ; size: 0x00BE", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_009C", + "code": "RoomDataTiles_009C: #_1FF5AA: incbin \"bin/rooms/room009C.bin\" ; size: 0x0129", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_009D", + "code": "RoomDataTiles_009D: #_1FF6D3: incbin \"bin/rooms/room009D.bin\" ; size: 0x0076", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001C", + "code": "RoomDataTiles_001C: #_1FF749: incbin \"bin/rooms/room001C.bin\" ; size: 0x0043", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_006B", + "code": "RoomDataTiles_006B: #_1FF78C: incbin \"bin/rooms/room006B.bin\" ; size: 0x009F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005B", + "code": "RoomDataTiles_005B: #_1FF82B: incbin \"bin/rooms/room005B.bin\" ; size: 0x00A7", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005C", + "code": "RoomDataTiles_005C: #_1FF8D2: incbin \"bin/rooms/room005C.bin\" ; size: 0x00AA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_005D", + "code": "RoomDataTiles_005D: #_1FF97C: incbin \"bin/rooms/room005D.bin\" ; size: 0x006D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_006D", + "code": "RoomDataTiles_006D: #_1FF9E9: incbin \"bin/rooms/room006D.bin\" ; size: 0x006D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_006C", + "code": "RoomDataTiles_006C: #_1FFA56: incbin \"bin/rooms/room006C.bin\" ; size: 0x0052", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A5", + "code": "RoomDataTiles_00A5: #_1FFAA8: incbin \"bin/rooms/room00A5.bin\" ; size: 0x00DF", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0095", + "code": "RoomDataTiles_0095: #_1FFB87: incbin \"bin/rooms/room0095.bin\" ; size: 0x0083", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0096", + "code": "RoomDataTiles_0096: #_1FFC0A: incbin \"bin/rooms/room0096.bin\" ; size: 0x0074", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003D", + "code": "RoomDataTiles_003D: #_1FFC7E: incbin \"bin/rooms/room003D.bin\" ; size: 0x00C3", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004D", + "code": "RoomDataTiles_004D: #_1FFD41: incbin \"bin/rooms/room004D.bin\" ; size: 0x011F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_004C", + "code": "RoomDataTiles_004C: #_1FFE60: incbin \"bin/rooms/room004C.bin\" ; size: 0x0072", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_001D", + "code": "RoomDataTiles_001D: #_1FFED2: incbin \"bin/rooms/room001D.bin\" ; size: 0x004B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A6", + "code": "RoomDataTiles_00A6: #_1FFF1D: incbin \"bin/rooms/room00A6.bin\" ; size: 0x0031\n\n; =========================================================\n; FREE ROM: 0xB2\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "NULL_1FFF4E", + "code": "NULL_1FFF4E:\n#_1FFF4E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF56: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF5E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF66: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF6E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF76: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF7E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF86: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF8E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF96: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFF9E: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFA6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFAE: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFB6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFBE: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFC6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFCE: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFD6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFDE: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFE6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFEE: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFF6: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_1FFFFE: db $FF, $FF\n\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n; Bank03 rooms\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n\norg $03EBA0\n\n; =========================================================\n; A bunch of caves and houses\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0100", + "code": "RoomDataTiles_0100: #_03EBA0: incbin \"bin/rooms/room0100.bin\" ; size: 0x004D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0101", + "code": "RoomDataTiles_0101: #_03EBED: incbin \"bin/rooms/room0101.bin\" ; size: 0x0084", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0102", + "code": "RoomDataTiles_0102: #_03EC71: incbin \"bin/rooms/room0102.bin\" ; size: 0x005F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0103", + "code": "RoomDataTiles_0103: #_03ECD0: incbin \"bin/rooms/room0103.bin\" ; size: 0x00F4", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0105", + "code": "RoomDataTiles_0105: #_03EDC4: incbin \"bin/rooms/room0105.bin\" ; size: 0x0070", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0106", + "code": "RoomDataTiles_0106: #_03EE34: incbin \"bin/rooms/room0106.bin\" ; size: 0x00BD", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0107", + "code": "RoomDataTiles_0107: #_03EEF1: incbin \"bin/rooms/room0107.bin\" ; size: 0x00A2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0108", + "code": "RoomDataTiles_0108: #_03EF93: incbin \"bin/rooms/room0108.bin\" ; size: 0x00BB", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0109", + "code": "RoomDataTiles_0109: #_03F04E: incbin \"bin/rooms/room0109.bin\" ; size: 0x0062", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010A", + "code": "RoomDataTiles_010A: #_03F0B0: incbin \"bin/rooms/room010A.bin\" ; size: 0x00DC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010B", + "code": "RoomDataTiles_010B: #_03F18C: incbin \"bin/rooms/room010B.bin\" ; size: 0x00DF", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010C", + "code": "RoomDataTiles_010C: #_03F26B: incbin \"bin/rooms/room010C.bin\" ; size: 0x0106", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011B", + "code": "RoomDataTiles_011B: #_03F371: incbin \"bin/rooms/room011B.bin\" ; size: 0x00E5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011C", + "code": "RoomDataTiles_011C: #_03F456: incbin \"bin/rooms/room011C.bin\" ; size: 0x00A5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0120", + "code": "RoomDataTiles_0120: #_03F4FB: incbin \"bin/rooms/room0120.bin\" ; size: 0x008F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0110", + "code": "RoomDataTiles_0110: #_03F58A: incbin \"bin/rooms/room0110.bin\" ; size: 0x0050", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0111", + "code": "RoomDataTiles_0111: #_03F5DA: incbin \"bin/rooms/room0111.bin\" ; size: 0x0041", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0112", + "code": "RoomDataTiles_0112: #_03F61B: incbin \"bin/rooms/room0112.bin\" ; size: 0x0095", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0113", + "code": "RoomDataTiles_0113: #_03F6B0: incbin \"bin/rooms/room0113.bin\" ; size: 0x0074", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0114", + "code": "RoomDataTiles_0114: #_03F724: incbin \"bin/rooms/room0114.bin\" ; size: 0x00CD", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0115", + "code": "RoomDataTiles_0115: #_03F7F1: incbin \"bin/rooms/room0115.bin\" ; size: 0x0100", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011A", + "code": "RoomDataTiles_011A: #_03F8F1: incbin \"bin/rooms/room011A.bin\" ; size: 0x006A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0121", + "code": "RoomDataTiles_0121: #_03F95B: incbin \"bin/rooms/room0121.bin\" ; size: 0x0029", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0122", + "code": "RoomDataTiles_0122: #_03F984: incbin \"bin/rooms/room0122.bin\" ; size: 0x0078", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010E", + "code": "RoomDataTiles_010E: #_03F9FC: incbin \"bin/rooms/room010E.bin\" ; size: 0x012B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010D", + "code": "RoomDataTiles_010D: #_03FB27: incbin \"bin/rooms/room010D.bin\" ; size: 0x0089", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_010F", + "code": "RoomDataTiles_010F: #_03FBB0: incbin \"bin/rooms/room010F.bin\" ; size: 0x0053", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0116", + "code": "RoomDataTiles_0116: #_03FC03: incbin \"bin/rooms/room0116.bin\" ; size: 0x0042", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0117", + "code": "RoomDataTiles_0117: #_03FC45: incbin \"bin/rooms/room0117.bin\" ; size: 0x0144", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0118", + "code": "RoomDataTiles_0118: #_03FD89: incbin \"bin/rooms/room0118.bin\" ; size: 0x0059", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0119", + "code": "RoomDataTiles_0119: #_03FDE2: incbin \"bin/rooms/room0119.bin\" ; size: 0x005F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011D", + "code": "RoomDataTiles_011D: #_03FE41: incbin \"bin/rooms/room011D.bin\" ; size: 0x007E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011E", + "code": "RoomDataTiles_011E: #_03FEBF: incbin \"bin/rooms/room011E.bin\" ; size: 0x0094", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_011F", + "code": "RoomDataTiles_011F: #_03FF53: incbin \"bin/rooms/room011F.bin\" ; size: 0x00A2\n\n; =========================================================\n; FREE ROM: 0x0B\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "NULL_03FFF5", + "code": "NULL_03FFF5:\n#_03FFF5: db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF\n#_03FFFD: db $FF, $FF, $FF\n\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n; Bank0A rooms\n; =========================================================\n; ---------------------------------------------------------\n; =========================================================\n\norg $0A8000\n\n; =========================================================\n; Link's house and uncle\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0104", + "code": "RoomDataTiles_0104: #_0A8000: incbin \"bin/rooms/room0104.bin\" ; size: 0x0047", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0055", + "code": "RoomDataTiles_0055: #_0A8047: incbin \"bin/rooms/room0055.bin\" ; size: 0x0127\n\n; =========================================================\n; Some caves\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E1", + "code": "RoomDataTiles_00E1: #_0A816E: incbin \"bin/rooms/room00E1.bin\" ; size: 0x00D4", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E3", + "code": "RoomDataTiles_00E3: #_0A8242: incbin \"bin/rooms/room00E3.bin\" ; size: 0x00F1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E2", + "code": "RoomDataTiles_00E2: #_0A8333: incbin \"bin/rooms/room00E2.bin\" ; size: 0x0137\n\n; =========================================================\n; Ganon\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0000", + "code": "RoomDataTiles_0000: #_0A846A: incbin \"bin/rooms/room0000.bin\" ; size: 0x004F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0010", + "code": "RoomDataTiles_0010: #_0A84B9: incbin \"bin/rooms/room0010.bin\" ; size: 0x00E3\n\n; =========================================================\n; More caves\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0008", + "code": "RoomDataTiles_0008: #_0A859C: incbin \"bin/rooms/room0008.bin\" ; size: 0x00BD", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0018", + "code": "RoomDataTiles_0018: #_0A8659: incbin \"bin/rooms/room0018.bin\" ; size: 0x0092", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_002F", + "code": "RoomDataTiles_002F: #_0A86EB: incbin \"bin/rooms/room002F.bin\" ; size: 0x00EC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_002C", + "code": "RoomDataTiles_002C: #_0A87D7: incbin \"bin/rooms/room002C.bin\" ; size: 0x0104", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_003C", + "code": "RoomDataTiles_003C: #_0A88DB: incbin \"bin/rooms/room003C.bin\" ; size: 0x00CE", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0003", + "code": "RoomDataTiles_0003: #_0A89A9: incbin \"bin/rooms/room0003.bin\" ; size: 0x002A\n\n; =========================================================\n; Sewers and Sanctuary\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0012", + "code": "RoomDataTiles_0012: #_0A89D3: incbin \"bin/rooms/room0012.bin\" ; size: 0x00D2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0002", + "code": "RoomDataTiles_0002: #_0A8AA5: incbin \"bin/rooms/room0002.bin\" ; size: 0x00FA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0011", + "code": "RoomDataTiles_0011: #_0A8B9F: incbin \"bin/rooms/room0011.bin\" ; size: 0x00BB", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0021", + "code": "RoomDataTiles_0021: #_0A8C5A: incbin \"bin/rooms/room0021.bin\" ; size: 0x00DC", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0022", + "code": "RoomDataTiles_0022: #_0A8D36: incbin \"bin/rooms/room0022.bin\" ; size: 0x00A1", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0032", + "code": "RoomDataTiles_0032: #_0A8DD7: incbin \"bin/rooms/room0032.bin\" ; size: 0x0078", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0042", + "code": "RoomDataTiles_0042: #_0A8E4F: incbin \"bin/rooms/room0042.bin\" ; size: 0x0046", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0041", + "code": "RoomDataTiles_0041: #_0A8E95: incbin \"bin/rooms/room0041.bin\" ; size: 0x0084\n\n; =========================================================\n; Hyrule Castle\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0051", + "code": "RoomDataTiles_0051: #_0A8F19: incbin \"bin/rooms/room0051.bin\" ; size: 0x0116", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0050", + "code": "RoomDataTiles_0050: #_0A902F: incbin \"bin/rooms/room0050.bin\" ; size: 0x00B3", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0001", + "code": "RoomDataTiles_0001: #_0A90E2: incbin \"bin/rooms/room0001.bin\" ; size: 0x008C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0052", + "code": "RoomDataTiles_0052: #_0A916E: incbin \"bin/rooms/room0052.bin\" ; size: 0x00CA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0060", + "code": "RoomDataTiles_0060: #_0A9238: incbin \"bin/rooms/room0060.bin\" ; size: 0x00DF", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0061", + "code": "RoomDataTiles_0061: #_0A9317: incbin \"bin/rooms/room0061.bin\" ; size: 0x014D", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0062", + "code": "RoomDataTiles_0062: #_0A9464: incbin \"bin/rooms/room0062.bin\" ; size: 0x0121\n\n; =========================================================\n; Eastern Palace\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C8", + "code": "RoomDataTiles_00C8: #_0A9585: incbin \"bin/rooms/room00C8.bin\" ; size: 0x0015", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D8", + "code": "RoomDataTiles_00D8: #_0A959A: incbin \"bin/rooms/room00D8.bin\" ; size: 0x005B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00D9", + "code": "RoomDataTiles_00D9: #_0A95F5: incbin \"bin/rooms/room00D9.bin\" ; size: 0x0082", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00DA", + "code": "RoomDataTiles_00DA: #_0A9677: incbin \"bin/rooms/room00DA.bin\" ; size: 0x002A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0099", + "code": "RoomDataTiles_0099: #_0A96A1: incbin \"bin/rooms/room0099.bin\" ; size: 0x0091", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A8", + "code": "RoomDataTiles_00A8: #_0A9732: incbin \"bin/rooms/room00A8.bin\" ; size: 0x0163", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00A9", + "code": "RoomDataTiles_00A9: #_0A9895: incbin \"bin/rooms/room00A9.bin\" ; size: 0x0142", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00AA", + "code": "RoomDataTiles_00AA: #_0A99D7: incbin \"bin/rooms/room00AA.bin\" ; size: 0x0160", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B8", + "code": "RoomDataTiles_00B8: #_0A9B37: incbin \"bin/rooms/room00B8.bin\" ; size: 0x0044", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00B9", + "code": "RoomDataTiles_00B9: #_0A9B7B: incbin \"bin/rooms/room00B9.bin\" ; size: 0x0198", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00BA", + "code": "RoomDataTiles_00BA: #_0A9D13: incbin \"bin/rooms/room00BA.bin\" ; size: 0x004C", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00C9", + "code": "RoomDataTiles_00C9: #_0A9D5F: incbin \"bin/rooms/room00C9.bin\" ; size: 0x0107", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0089", + "code": "RoomDataTiles_0089: #_0A9E66: incbin \"bin/rooms/room0089.bin\" ; size: 0x0067\n\n; =========================================================\n; Hyrule Castle Dungeon\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0072", + "code": "RoomDataTiles_0072: #_0A9ECD: incbin \"bin/rooms/room0072.bin\" ; size: 0x0111", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0082", + "code": "RoomDataTiles_0082: #_0A9FDE: incbin \"bin/rooms/room0082.bin\" ; size: 0x0142", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0081", + "code": "RoomDataTiles_0081: #_0AA120: incbin \"bin/rooms/room0081.bin\" ; size: 0x012F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0071", + "code": "RoomDataTiles_0071: #_0AA24F: incbin \"bin/rooms/room0071.bin\" ; size: 0x00FA", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0070", + "code": "RoomDataTiles_0070: #_0AA349: incbin \"bin/rooms/room0070.bin\" ; size: 0x0034", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0080", + "code": "RoomDataTiles_0080: #_0AA37D: incbin \"bin/rooms/room0080.bin\" ; size: 0x009D\n\n; =========================================================\n; Caves and houses\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F0", + "code": "RoomDataTiles_00F0: #_0AA41A: incbin \"bin/rooms/room00F0.bin\" ; size: 0x0176", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F1", + "code": "RoomDataTiles_00F1: #_0AA590: incbin \"bin/rooms/room00F1.bin\" ; size: 0x0179", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F2", + "code": "RoomDataTiles_00F2: #_0AA709: incbin \"bin/rooms/room00F2.bin\" ; size: 0x0049", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F3", + "code": "RoomDataTiles_00F3: #_0AA752: incbin \"bin/rooms/room00F3.bin\" ; size: 0x004F", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F4", + "code": "RoomDataTiles_00F4: #_0AA7A1: incbin \"bin/rooms/room00F4.bin\" ; size: 0x003A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F5", + "code": "RoomDataTiles_00F5: #_0AA7DB: incbin \"bin/rooms/room00F5.bin\" ; size: 0x0040", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F8", + "code": "RoomDataTiles_00F8: #_0AA81B: incbin \"bin/rooms/room00F8.bin\" ; size: 0x00E7", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E8", + "code": "RoomDataTiles_00E8: #_0AA902: incbin \"bin/rooms/room00E8.bin\" ; size: 0x00D5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00FD", + "code": "RoomDataTiles_00FD: #_0AA9D7: incbin \"bin/rooms/room00FD.bin\" ; size: 0x00DE", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00ED", + "code": "RoomDataTiles_00ED: #_0AAAB5: incbin \"bin/rooms/room00ED.bin\" ; size: 0x013B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00FF", + "code": "RoomDataTiles_00FF: #_0AABF0: incbin \"bin/rooms/room00FF.bin\" ; size: 0x00B2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00EF", + "code": "RoomDataTiles_00EF: #_0AACA2: incbin \"bin/rooms/room00EF.bin\" ; size: 0x009B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00DF", + "code": "RoomDataTiles_00DF: #_0AAD3D: incbin \"bin/rooms/room00DF.bin\" ; size: 0x007B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00EB", + "code": "RoomDataTiles_00EB: #_0AADB8: incbin \"bin/rooms/room00EB.bin\" ; size: 0x0066", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00FB", + "code": "RoomDataTiles_00FB: #_0AAE1E: incbin \"bin/rooms/room00FB.bin\" ; size: 0x008A", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00EE", + "code": "RoomDataTiles_00EE: #_0AAEA8: incbin \"bin/rooms/room00EE.bin\" ; size: 0x00D2", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00FE", + "code": "RoomDataTiles_00FE: #_0AAF7A: incbin \"bin/rooms/room00FE.bin\" ; size: 0x007B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00F9", + "code": "RoomDataTiles_00F9: #_0AAFF5: incbin \"bin/rooms/room00F9.bin\" ; size: 0x0069", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00FA", + "code": "RoomDataTiles_00FA: #_0AB05E: incbin \"bin/rooms/room00FA.bin\" ; size: 0x010B", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00EA", + "code": "RoomDataTiles_00EA: #_0AB169: incbin \"bin/rooms/room00EA.bin\" ; size: 0x0090", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E6", + "code": "RoomDataTiles_00E6: #_0AB1F9: incbin \"bin/rooms/room00E6.bin\" ; size: 0x00FB", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E7", + "code": "RoomDataTiles_00E7: #_0AB2F4: incbin \"bin/rooms/room00E7.bin\" ; size: 0x00E0", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E4", + "code": "RoomDataTiles_00E4: #_0AB3D4: incbin \"bin/rooms/room00E4.bin\" ; size: 0x00E5", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_00E5", + "code": "RoomDataTiles_00E5: #_0AB4B9: incbin \"bin/rooms/room00E5.bin\" ; size: 0x0107\n\n; =========================================================\n; Caves\n; =========================================================", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0124", + "code": "RoomDataTiles_0124: #_0AB5C0: incbin \"bin/rooms/room0124.bin\" ; size: 0x003E", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0125", + "code": "RoomDataTiles_0125: #_0AB5FE: incbin \"bin/rooms/room0125.bin\" ; size: 0x0053", + "file": "rooms.asm" + }, + { + "name": "RoomDataTiles_0126", + "code": "RoomDataTiles_0126: #_0AB651: incbin \"bin/rooms/room0126.bin\" ; size: 0x0080", + "file": "rooms.asm" + }, + { + "name": "Engine_Start", + "code": "Engine_Start:\n#_19FBCE: #_0800: clrp\n\n#_19FBCF: #_0801: mov.b X, #$CF\n#_19FBD1: #_0803: mov SP, X\n\n#_19FBD2: #_0804: mov.b A, #$00\n#_19FBD4: #_0806: mov X, A\n\n.zeroing_loop_1\n#_19FBD5: #_0807: mov (X+), A\n\n#_19FBD6: #_0808: cmp.b X, #$E0\n#_19FBD8: #_080A: bne .zeroing_loop_1\n\n#_19FBDA: #_080C: mov.b X, #$00\n\n.zeroing_loop_2\n#_19FBDC: #_080E: mov.w $0200+X, A\n\n#_19FBDF: #_0811: inc X\n#_19FBE0: #_0812: bne .zeroing_loop_2\n\n.zeroing_loop_3\n#_19FBE2: #_0814: mov.w $0300+X, A\n\n#_19FBE5: #_0817: inc X\n#_19FBE6: #_0818: bne .zeroing_loop_3\n\n#_19FBE8: #_081A: inc A\n#_19FBE9: #_081B: call ConfigureEcho\n\n#_19FBEC: #_081E: set5.b $48\n\n#_19FBEE: #_0820: mov.b A, #$60\n#_19FBF0: #_0822: mov.b Y, #MVOLL\n#_19FBF2: #_0824: call WriteToDSP\n\n#_19FBF5: #_0827: mov.b Y, #MVOLR\n#_19FBF7: #_0829: call WriteToDSP\n\n#_19FBFA: #_082C: mov.b A, #SAMPLE_POINTERS>>8\n#_19FBFC: #_082E: mov.b Y, #DIR\n#_19FBFE: #_0830: call WriteToDSP\n\n#_19FC01: #_0833: mov.b A, #$F0\n#_19FC03: #_0835: mov.w CONTROL, A\n\n#_19FC06: #_0838: mov.b A, #$10\n#_19FC08: #_083A: mov.w T0DIV, A\n#_19FC0B: #_083D: mov.b $53, A\n\n#_19FC0D: #_083F: mov.b A, #$01\n#_19FC0F: #_0841: mov.w CONTROL, A\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Engine_Main", + "code": "Engine_Main:\n#_19FC12: #_0844: mov.b Y, #$0A\n\n.next_register\n#_19FC14: #_0846: cmp.b Y, #$05\n#_19FC16: #_0848: beq .FLG_register\n#_19FC18: #_084A: bcs .not_echo_register\n\n#_19FC1A: #_084C: cmp.b $4C, $4D\n#_19FC1D: #_084F: bne .skip\n\n.FLG_register\n#_19FC1F: #_0851: bbs7.b $4C, .skip\n\n.not_echo_register\n#_19FC22: #_0854: mov.w A, RegisterList-1+Y\n#_19FC25: #_0857: mov.w DSPADDR, A\n\n#_19FC28: #_085A: mov.w A, LoadValueFrom-1+Y\n#_19FC2B: #_085D: mov X, A\n#_19FC2C: #_085E: mov A, (X)\n#_19FC2D: #_085F: mov.w DSPDATA, A\n\n.skip\n#_19FC30: #_0862: dbnz Y, .next_register\n\n; ---------------------------------------------------------\n\n#_19FC32: #_0864: mov.b $45, Y\n#_19FC34: #_0866: mov.b $46, Y\n\n#_19FC36: #_0868: mov.b A, $18\n#_19FC38: #_086A: eor.b A, $19\n#_19FC3A: #_086C: lsr A\n#_19FC3B: #_086D: lsr A\n\n#_19FC3C: #_086E: notc\n#_19FC3D: #_086F: ror.b $18\n#_19FC3F: #_0871: ror.b $19\n\n.timer_wait\n#_19FC41: #_0873: mov.w Y, T0OUT\n#_19FC44: #_0876: beq .timer_wait\n\n#_19FC46: #_0878: push Y\n\n#_19FC47: #_0879: mov.b A, #$38\n#_19FC49: #_087B: mul YA\n\n#_19FC4A: #_087C: clrc\n#_19FC4B: #_087D: adc.b A, $43\n#_19FC4D: #_087F: mov.b $43, A\n#_19FC4F: #_0881: bcc .wait_for_SFX\n\n#_19FC51: #_0883: call Handle_SFX1\n#_19FC54: #_0886: call HandleInput_SFX1\n\n#_19FC57: #_0889: mov.b X, #$01\n#_19FC59: #_088B: call Synchronize\n#_19FC5C: #_088E: call Handle_SFX2\n#_19FC5F: #_0891: call HandleInput_SFX2\n\n#_19FC62: #_0894: mov.b X, #$02\n#_19FC64: #_0896: call Synchronize\n#_19FC67: #_0899: call Handle_SFX3\n#_19FC6A: #_089C: call HandleInput_SFX3\n\n#_19FC6D: #_089F: mov.b X, #$03\n#_19FC6F: #_08A1: call Synchronize\n\n#_19FC72: #_08A4: cmp.b $4C, $4D\n#_19FC75: #_08A7: beq .wait_for_SFX\n\n#_19FC77: #_08A9: inc.w $03C7\n#_19FC7A: #_08AC: mov.w A, $03C7\n#_19FC7D: #_08AF: lsr A\n#_19FC7E: #_08B0: bcs .wait_for_SFX\n\n#_19FC80: #_08B2: inc.b $4C\n\n.wait_for_SFX\n#_19FC82: #_08B4: mov.b A, $53\n\n#_19FC84: #_08B6: pop Y\n#_19FC85: #_08B7: mul YA\n\n#_19FC86: #_08B8: clrc\n#_19FC87: #_08B9: adc.b A, $51\n#_19FC89: #_08BB: mov.b $51, A\n#_19FC8B: #_08BD: bcc .ignore_tracker\n\n#_19FC8D: #_08BF: call HandleInput_Song\n\n#_19FC90: #_08C2: mov.b X, #$00\n#_19FC92: #_08C4: call Synchronize\n\n#_19FC95: #_08C7: jmp Engine_Main\n\n; ---------------------------------------------------------\n\n.ignore_tracker\n#_19FC98: #_08CA: mov.b A, $04\n#_19FC9A: #_08CC: beq .no_song\n\n#_19FC9C: #_08CE: mov.b X, #$00\n#_19FC9E: #_08D0: mov.b $47, #$01\n\n.next_track\n#_19FCA1: #_08D3: mov.b A, $31+X\n#_19FCA3: #_08D5: beq .skip_voice\n\n#_19FCA5: #_08D7: call BackgroundTasks\n\n.skip_voice\n#_19FCA8: #_08DA: inc X\n#_19FCA9: #_08DB: inc X\n\n#_19FCAA: #_08DC: asl.b $47\n#_19FCAC: #_08DE: bne .next_track\n\n.no_song\n#_19FCAE: #_08E0: jmp Engine_Main\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Synchronize", + "code": "Synchronize:\n#_19FCB1: #_08E3: mov.b A, $04+X\n#_19FCB3: #_08E5: mov.w CPUIO0+X, A\n\n.wait\n#_19FCB6: #_08E8: mov.w A, CPUIO0+X\n#_19FCB9: #_08EB: cmp.w A, CPUIO0+X\n#_19FCBC: #_08EE: bne .wait\n\n#_19FCBE: #_08F0: mov Y, A\n#_19FCBF: #_08F1: bne .dumb\n\n.dumb\n#_19FCC1: #_08F3: mov.b A, $08+X\n#_19FCC3: #_08F5: mov.b $08+X, Y\n#_19FCC5: #_08F7: cbne.b $08+X, .change\n\n#_19FCC8: #_08FA: mov.b Y, #$00\n#_19FCCA: #_08FC: mov.b $00+X, Y\n\n#_19FCCC: #_08FE: ret\n\n.change\n#_19FCCD: #_08FF: mov.b $00+X, Y\n\n.return\n#_19FCCF: #_0901: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleNote", + "code": "HandleNote:\n#_19FCD0: #_0902: cmp.b Y, #$CA ; check if percussion hit\n#_19FCD2: #_0904: bcc .not_percussion\n\n#_19FCD4: #_0906: call TrackCommand_E0_ChangeInstrument\n\n#_19FCD7: #_0909: mov.b Y, #$A4 ; note C4\n\n.not_percussion\n#_19FCD9: #_090B: cmp.b Y, #$C8 ; check if tie\n#_19FCDB: #_090D: bcs Synchronize_return\n\n#_19FCDD: #_090F: mov.b A, $1A\n#_19FCDF: #_0911: and.b A, $47\n#_19FCE1: #_0913: bne Synchronize_return\n\n#_19FCE3: #_0915: mov A, Y\n#_19FCE4: #_0916: and.b A, #$7F\n\n#_19FCE6: #_0918: clrc\n#_19FCE7: #_0919: adc.b A, $50\n\n#_19FCE9: #_091B: clrc\n#_19FCEA: #_091C: adc.w A, $02F0+X\n#_19FCED: #_091F: mov.w $0361+X, A\n\n#_19FCF0: #_0922: mov.w A, $0381+X\n#_19FCF3: #_0925: mov.w $0360+X, A\n\n#_19FCF6: #_0928: mov.w A, $02B1+X\n#_19FCF9: #_092B: lsr A\n\n#_19FCFA: #_092C: mov.b A, #$00\n#_19FCFC: #_092E: ror A\n#_19FCFD: #_092F: mov.w $02A0+X, A\n\n#_19FD00: #_0932: mov.b A, #$00\n#_19FD02: #_0934: mov.b $B0+X, A\n#_19FD04: #_0936: mov.w $0100+X, A\n#_19FD07: #_0939: mov.w $02D0+X, A\n#_19FD0A: #_093C: mov.b $C0+X, A\n\n#_19FD0C: #_093E: or.b $5E, $47\n#_19FD0F: #_0941: or.b $45, $47\n\n#_19FD12: #_0944: mov.w A, $0280+X\n#_19FD15: #_0947: mov.b $A0+X, A\n#_19FD17: #_0949: beq .no_pitch_slide\n\n#_19FD19: #_094B: mov.w A, $0281+X\n#_19FD1C: #_094E: mov.b $A1+X, A\n\n#_19FD1E: #_0950: mov.w A, $0290+X\n#_19FD21: #_0953: bne .do_slide_to\n\n#_19FD23: #_0955: mov.w A, $0361+X\n#_19FD26: #_0958: setc\n#_19FD27: #_0959: sbc.w A, $0291+X\n#_19FD2A: #_095C: mov.w $0361+X, A\n\n.do_slide_to\n#_19FD2D: #_095F: mov.w A, $0291+X\n#_19FD30: #_0962: clrc\n#_19FD31: #_0963: adc.w A, $0361+X\n#_19FD34: #_0966: call PitchSlide_calc_frames\n\n.no_pitch_slide\n#_19FD37: #_0969: call GetTempPitch\n\n.external\n#_19FD3A: #_096C: mov.b Y, #$00\n#_19FD3C: #_096E: mov.b A, $11\n\n#_19FD3E: #_0970: setc\n#_19FD3F: #_0971: sbc.b A, #$34\n#_19FD41: #_0973: bcs .high_note\n\n#_19FD43: #_0975: mov.b A, $11\n#_19FD45: #_0977: setc\n#_19FD46: #_0978: sbc.b A, #$13\n#_19FD48: #_097A: bcs .middle_note\n\n#_19FD4A: #_097C: dec Y\n#_19FD4B: #_097D: asl A\n\n.high_note\n#_19FD4C: #_097E: addw.b YA, $10\n#_19FD4E: #_0980: movw.b $10, YA\n\n.middle_note\n#_19FD50: #_0982: push X\n\n#_19FD51: #_0983: mov.b A, $11\n#_19FD53: #_0985: asl A\n#_19FD54: #_0986: mov.b Y, #$00\n#_19FD56: #_0988: mov.b X, #$18\n\n#_19FD58: #_098A: div YA, X\n#_19FD59: #_098B: mov X, A\n#_19FD5A: #_098C: mov.w A, TuningValues+1+Y\n#_19FD5D: #_098F: mov.b $15, A\n\n#_19FD5F: #_0991: mov.w A, TuningValues+0+Y\n#_19FD62: #_0994: mov.b $14, A\n\n#_19FD64: #_0996: mov.w A, TuningValues+3+Y\n#_19FD67: #_0999: push A\n\n#_19FD68: #_099A: mov.w A, TuningValues+2+Y\n\n#_19FD6B: #_099D: pop Y\n#_19FD6C: #_099E: subw.b YA, $14\n\n#_19FD6E: #_09A0: mov.b Y, $10\n#_19FD70: #_09A2: mul YA\n#_19FD71: #_09A3: mov A, Y\n\n#_19FD72: #_09A4: mov.b Y, #$00\n#_19FD74: #_09A6: addw.b YA, $14\n\n#_19FD76: #_09A8: mov.b $15, Y\n#_19FD78: #_09AA: asl A\n#_19FD79: #_09AB: rol.b $15\n#_19FD7B: #_09AD: mov.b $14, A\n#_19FD7D: #_09AF: bra .proceed\n\n.pitch_loop\n#_19FD7F: #_09B1: lsr.b $15\n#_19FD81: #_09B3: ror A\n#_19FD82: #_09B4: inc X\n\n.proceed\n#_19FD83: #_09B5: cmp.b X, #$06\n#_19FD85: #_09B7: bne .pitch_loop\n\n#_19FD87: #_09B9: mov.b $14, A\n\n#_19FD89: #_09BB: pop X\n\n#_19FD8A: #_09BC: mov.w A, $0220+X\n#_19FD8D: #_09BF: mov.b Y, $15\n#_19FD8F: #_09C1: mul YA\n#_19FD90: #_09C2: movw.b $16, YA\n\n#_19FD92: #_09C4: mov.w A, $0220+X\n#_19FD95: #_09C7: mov.b Y, $14\n#_19FD97: #_09C9: mul YA\n\n#_19FD98: #_09CA: push Y\n\n#_19FD99: #_09CB: mov.w A, $0221+X\n#_19FD9C: #_09CE: mov.b Y, $14\n#_19FD9E: #_09D0: mul YA\n#_19FD9F: #_09D1: addw.b YA, $16\n\n#_19FDA1: #_09D3: movw.b $16, YA\n#_19FDA3: #_09D5: mov.w A, $0221+X\n#_19FDA6: #_09D8: mov.b Y, $15\n#_19FDA8: #_09DA: mul YA\n\n#_19FDA9: #_09DB: mov Y, A\n#_19FDAA: #_09DC: pop A\n#_19FDAB: #_09DD: addw.b YA, $16\n#_19FDAD: #_09DF: movw.b $16, YA\n\n#_19FDAF: #_09E1: mov A, X\n#_19FDB0: #_09E2: xcn A\n#_19FDB1: #_09E3: lsr A\n#_19FDB2: #_09E4: or.b A, #$02\n\n#_19FDB4: #_09E6: mov Y, A\n#_19FDB5: #_09E7: mov.b A, $16\n#_19FDB7: #_09E9: call WriteToDSP_Checked\n\n#_19FDBA: #_09EC: inc Y\n#_19FDBB: #_09ED: mov.b A, $17\n\n; =========================================================\n; Writes value A to DSP register Y\n; if the channel is enabled\n; =========================================================", + "file": "spc.asm" + }, + { + "name": "WriteToDSP_Checked", + "code": "WriteToDSP_Checked:\n#_19FDBD: #_09EF: push A\n#_19FDBE: #_09F0: mov.b A, $47\n#_19FDC0: #_09F2: and.b A, $1A\n\n#_19FDC2: #_09F4: pop A\n#_19FDC3: #_09F5: bne WriteToDSP_return\n\n; =========================================================\n; Writes value A to DSP register Y\n; =========================================================", + "file": "spc.asm" + }, + { + "name": "WriteToDSP", + "code": "WriteToDSP:\n#_19FDC5: #_09F7: mov.w DSPADDR, Y\n#_19FDC8: #_09FA: mov.w DSPDATA, A\n\n.return\n#_19FDCB: #_09FD: ret\n\n; =========================================================\n; Mutes everything then prepares for transfer\n; =========================================================", + "file": "spc.asm" + }, + { + "name": "SongCommand_FF_TransferData", + "code": "SongCommand_FF_TransferData:\n#_19FDCC: #_09FE: mov.b A, #$00\n#_19FDCE: #_0A00: mov.b Y, #EVOLL\n#_19FDD0: #_0A02: call WriteToDSP\n\n#_19FDD3: #_0A05: mov.b A, #$00\n#_19FDD5: #_0A07: mov.b Y, #EVOLR\n#_19FDD7: #_0A09: call WriteToDSP\n\n#_19FDDA: #_0A0C: mov.b A, #$FF\n#_19FDDC: #_0A0E: mov.b Y, #KOFF\n\n#_19FDDE: #_0A10: call WriteToDSP\n#_19FDE1: #_0A13: call Data_Loader\n\n#_19FDE4: #_0A16: mov.b A, #$00\n#_19FDE6: #_0A18: mov.w $03CA, A\n#_19FDE9: #_0A1B: mov.b $04, A\n#_19FDEB: #_0A1D: mov.w $03CF, A\n#_19FDEE: #_0A20: mov.w $03CB, A\n#_19FDF1: #_0A23: mov.w $03CD, A\n#_19FDF4: #_0A26: mov.b $1A, A\n\n#_19FDF6: #_0A28: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongCommand_F1_Fadeout", + "code": "SongCommand_F1_Fadeout:\n#_19FDF7: #_0A29: mov.b X, #$80\n#_19FDF9: #_0A2B: mov.b $5A, X\n#_19FDFB: #_0A2D: mov.w $03CA, X\n\n#_19FDFE: #_0A30: mov.b A, #$00\n#_19FE00: #_0A32: mov.b $5B, A\n\n#_19FE02: #_0A34: setc\n#_19FE03: #_0A35: sbc.b A, $59\n#_19FE05: #_0A37: call MakeFraction\n#_19FE08: #_0A3A: movw.b $5C, YA\n\n#_19FE0A: #_0A3C: jmp HandleInput_Song_no_new_song\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongCommand_F2_HalfVolume", + "code": "SongCommand_F2_HalfVolume:\n#_19FE0D: #_0A3F: mov.w A, $03E1\n#_19FE10: #_0A42: bne SongCommand_F3_MaxVolume_return\n\n\n#_19FE12: #_0A44: mov.b A, $59\n#_19FE14: #_0A46: mov.w $03E1, A\n\n#_19FE17: #_0A49: mov.b A, #$70\n#_19FE19: #_0A4B: mov.b $59, A\n\n#_19FE1B: #_0A4D: jmp HandleInput_Song_no_new_song\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongCommand_F3_MaxVolume", + "code": "SongCommand_F3_MaxVolume:\n#_19FE1E: #_0A50: mov.w A, $03E1\n#_19FE21: #_0A53: beq .return\n\n#_19FE23: #_0A55: mov.w A, $03E1\n#_19FE26: #_0A58: mov.b $59, A\n\n#_19FE28: #_0A5A: mov.b A, #$00\n#_19FE2A: #_0A5C: mov.w $03E1, A\n\n#_19FE2D: #_0A5F: jmp HandleInput_Song_no_new_song\n\n.return\n#_19FE30: #_0A62: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Song_Commands", + "code": "Song_Commands:\n#_19FE31: #_0A63: cmp.b A, #$FF ; SONG FF - transfer\n#_19FE33: #_0A65: beq SongCommand_FF_TransferData\n\n#_19FE35: #_0A67: cmp.b A, #$F1 ; SONG F1 - fade\n#_19FE37: #_0A69: beq SongCommand_F1_Fadeout\n\n#_19FE39: #_0A6B: cmp.b A, #$F2 ; SONG F2 - half volume\n#_19FE3B: #_0A6D: beq SongCommand_F2_HalfVolume\n\n#_19FE3D: #_0A6F: cmp.b A, #$F3 ; SONG F3 - max volume\n#_19FE3F: #_0A71: beq SongCommand_F3_MaxVolume\n\n#_19FE41: #_0A73: cmp.b A, #$F0 ; SONG F0 - mute\n#_19FE43: #_0A75: beq SongCommand_F0_Mute\n\n#_19FE45: #_0A77: bra Song_NewJam\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "PerformFadeout", + "code": "PerformFadeout:\n#_19FE47: #_0A79: dec.w $03CA\n#_19FE4A: #_0A7C: beq SongCommand_F0_Mute\n\n#_19FE4C: #_0A7E: jmp HandleInput_Song_dont_fade_out\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongCommand_F0_Mute", + "code": "SongCommand_F0_Mute:\n#_19FE4F: #_0A81: mov.b A, $1A\n#_19FE51: #_0A83: eor.b A, #$FF\n#_19FE53: #_0A85: tset.w $0046, A\n\n#_19FE56: #_0A88: mov.b $04, #$00\n#_19FE59: #_0A8B: mov.b $47, #$00\n\n#_19FE5C: #_0A8E: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "GetNextPart", + "code": "GetNextPart:\n#_19FE5D: #_0A8F: mov.b Y, #$00\n#_19FE5F: #_0A91: mov.b A, ($40)+Y\n#_19FE61: #_0A93: incw.b $40\n\n#_19FE63: #_0A95: push A\n#_19FE64: #_0A96: mov.b A, ($40)+Y\n#_19FE66: #_0A98: incw.b $40\n\n#_19FE68: #_0A9A: mov Y, A\n#_19FE69: #_0A9B: pop A\n\n#_19FE6A: #_0A9C: ret\n\n; =========================================================\n; Drops a new track\n; =========================================================", + "file": "spc.asm" + }, + { + "name": "Song_NewJam", + "code": "Song_NewJam:\n#_19FE6B: #_0A9D: clrc\n\n#_19FE6C: #_0A9E: mov.b X, #$00\n#_19FE6E: #_0AA0: mov.w $03CA, X\n#_19FE71: #_0AA3: mov.w $03E1, X\n\n#_19FE74: #_0AA6: mov.b $04, A\n\n#_19FE76: #_0AA8: asl A\n#_19FE77: #_0AA9: mov X, A\n#_19FE78: #_0AAA: mov.w A, SONG_POINTERS-1+X\n\n#_19FE7B: #_0AAD: mov Y, A\n#_19FE7C: #_0AAE: mov.w A, SONG_POINTERS-2+X\n\n#_19FE7F: #_0AB1: movw.b $40, YA\n#_19FE81: #_0AB3: mov.b $0C, #$02\n\n.key_off\n#_19FE84: #_0AB6: mov.b A, $1A\n#_19FE86: #_0AB8: eor.b A, #$FF\n#_19FE88: #_0ABA: tset.w $0046, A\n\n#_19FE8B: #_0ABD: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "EngineStartDelay", + "code": "EngineStartDelay:\n#_19FE8C: #_0ABE: mov.b X, #$0E\n#_19FE8E: #_0AC0: mov.b $47, #$80\n\n.next_channel\n#_19FE91: #_0AC3: mov.b A, #$FF\n#_19FE93: #_0AC5: mov.w $0301+X, A\n\n#_19FE96: #_0AC8: mov.b A, #$0A\n#_19FE98: #_0ACA: call TrackCommand_E1_ChangePan\n\n#_19FE9B: #_0ACD: mov.w $0211+X, A\n#_19FE9E: #_0AD0: mov.w $0381+X, A\n#_19FEA1: #_0AD3: mov.w $02F0+X, A\n#_19FEA4: #_0AD6: mov.w $0280+X, A\n#_19FEA7: #_0AD9: mov.w $03FF+X, A\n\n#_19FEAA: #_0ADC: mov.b $B1+X, A\n#_19FEAC: #_0ADE: mov.b $C1+X, A\n\n#_19FEAE: #_0AE0: dec X\n#_19FEAF: #_0AE1: dec X\n\n#_19FEB0: #_0AE2: lsr.b $47\n#_19FEB2: #_0AE4: bne .next_channel\n\n#_19FEB4: #_0AE6: mov.b $5A, A\n#_19FEB6: #_0AE8: mov.b $68, A\n#_19FEB8: #_0AEA: mov.b $54, A\n#_19FEBA: #_0AEC: mov.b $50, A\n#_19FEBC: #_0AEE: mov.b $42, A\n#_19FEBE: #_0AF0: mov.b $5F, A\n\n#_19FEC0: #_0AF2: mov.b $59, #$C0\n#_19FEC3: #_0AF5: mov.b $53, #$20\n\n.return\n#_19FEC6: #_0AF8: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleInput_Song", + "code": "HandleInput_Song:\n#_19FEC7: #_0AF9: mov.b A, $00\n#_19FEC9: #_0AFB: beq .no_new_song\n\n#_19FECB: #_0AFD: jmp Song_Commands\n\n.no_new_song\n#_19FECE: #_0B00: mov.b A, $04\n#_19FED0: #_0B02: beq EngineStartDelay_return\n\n#_19FED2: #_0B04: mov.w A, $03CA\n#_19FED5: #_0B07: beq .dont_fade_out\n\n#_19FED7: #_0B09: jmp PerformFadeout\n\n.dont_fade_out\n#_19FEDA: #_0B0C: mov.b A, $0C\n#_19FEDC: #_0B0E: beq .no_delay\n\n#_19FEDE: #_0B10: dbnz.b $0C, EngineStartDelay\n\n; ---------------------------------------------------------\n\n.loop\n#_19FEE1: #_0B13: call GetNextPart\n#_19FEE4: #_0B16: bne .valid_pointer\n\n#_19FEE6: #_0B18: mov Y, A\n#_19FEE7: #_0B19: bne .valid_command\n\n#_19FEE9: #_0B1B: jmp SongCommand_F0_Mute\n\n.valid_command\n#_19FEEC: #_0B1E: cmp.b A, #$80\n#_19FEEE: #_0B20: beq .disable_d_s_p\n\n#_19FEF0: #_0B22: cmp.b A, #$81\n#_19FEF2: #_0B24: bne .set_num_loops\n\n#_19FEF4: #_0B26: mov.b A, #$00\n\n.disable_d_s_p\n#_19FEF6: #_0B28: mov.b $1B, A\n#_19FEF8: #_0B2A: bra .loop\n\n.set_num_loops\n#_19FEFA: #_0B2C: dec.b $42\n#_19FEFC: #_0B2E: bpl .loop_in_progress\n\n#_19FEFE: #_0B30: mov.b $42, A\n\n.loop_in_progress\n#_19FF00: #_0B32: call GetNextPart\n\n#_19FF03: #_0B35: mov.b X, $42\n#_19FF05: #_0B37: beq .loop\n\n#_19FF07: #_0B39: movw.b $40, YA\n#_19FF09: #_0B3B: bra .loop\n\n.valid_pointer\n#_19FF0B: #_0B3D: movw.b $16, YA\n#_19FF0D: #_0B3F: mov.b Y, #$0F\n\n.load_pattern_table_loop\n#_19FF0F: #_0B41: mov.b A, ($16)+Y\n#_19FF11: #_0B43: mov.w $0030+Y, A\n\n#_19FF14: #_0B46: dec Y\n#_19FF15: #_0B47: bpl .load_pattern_table_loop\n\n#_19FF17: #_0B49: mov.b X, #$00\n#_19FF19: #_0B4B: mov.b $47, #$01\n\n.next_channel\n#_19FF1C: #_0B4E: mov.b A, $31+X\n#_19FF1E: #_0B50: beq .valid_track_pointer\n\n#_19FF20: #_0B52: mov.w A, $0211+X\n#_19FF23: #_0B55: bne .valid_track_pointer\n\n#_19FF25: #_0B57: mov.b A, #$00\n#_19FF27: #_0B59: call TrackCommand_E0_ChangeInstrument\n\n.valid_track_pointer\n#_19FF2A: #_0B5C: mov.b A, #$00\n#_19FF2C: #_0B5E: mov.b $80+X, A\n#_19FF2E: #_0B60: mov.b $90+X, A\n#_19FF30: #_0B62: mov.b $91+X, A\n\n#_19FF32: #_0B64: inc A\n#_19FF33: #_0B65: mov.b $70+X, A\n\n#_19FF35: #_0B67: inc X\n#_19FF36: #_0B68: inc X\n\n#_19FF37: #_0B69: asl.b $47\n#_19FF39: #_0B6B: bne .next_channel\n\n; ---------------------------------------------------------\n\n.no_delay\n#_19FF3B: #_0B6D: mov.b X, #$00\n#_19FF3D: #_0B6F: mov.b $5E, X\n#_19FF3F: #_0B71: mov.b $47, #$01\n\n.loop_2\n#_19FF42: #_0B74: mov.b $44, X\n#_19FF44: #_0B76: mov.b A, $31+X\n#_19FF46: #_0B78: beq .next_channel_2\n\n#_19FF48: #_0B7A: dec.b $70+X\n#_19FF4A: #_0B7C: bne .empty_track\n\n.try_again\n#_19FF4C: #_0B7E: call GetTrackByte\n#_19FF4F: #_0B81: bne .non_terminating\n\n#_19FF51: #_0B83: mov.b A, $80+X\n#_19FF53: #_0B85: beq .loop\n\n#_19FF55: #_0B87: call IteratePartLoop\n\n#_19FF58: #_0B8A: dec.b $80+X\n#_19FF5A: #_0B8C: bne .try_again\n\n#_19FF5C: #_0B8E: mov.w A, $0230+X\n#_19FF5F: #_0B91: mov.b $30+X, A\n\n#_19FF61: #_0B93: mov.w A, $0231+X\n#_19FF64: #_0B96: mov.b $31+X, A\n\n#_19FF66: #_0B98: bra .try_again\n\n; ---------------------------------------------------------\n\n.non_terminating\n#_19FF68: #_0B9A: bmi .note_or_command\n\n#_19FF6A: #_0B9C: mov.w $0200+X, A\n\n#_19FF6D: #_0B9F: call GetTrackByte\n#_19FF70: #_0BA2: bmi .note_or_command\n\n#_19FF72: #_0BA4: push A\n\n#_19FF73: #_0BA5: xcn A\n#_19FF74: #_0BA6: and.b A, #$07\n#_19FF76: #_0BA8: mov Y, A\n#_19FF77: #_0BA9: mov.w A, NoteStacc+Y\n#_19FF7A: #_0BAC: mov.w $0201+X, A\n\n#_19FF7D: #_0BAF: pop A\n#_19FF7E: #_0BB0: and.b A, #$0F\n#_19FF80: #_0BB2: mov Y, A\n#_19FF81: #_0BB3: mov.w A, NoteAttack+Y\n#_19FF84: #_0BB6: mov.w $0210+X, A\n\n#_19FF87: #_0BB9: call GetTrackByte\n\n.note_or_command\n#_19FF8A: #_0BBC: cmp.b A, #$E0 ; instrument change\n#_19FF8C: #_0BBE: bcc .note\n\n#_19FF8E: #_0BC0: call ExecuteCommand\n#_19FF91: #_0BC3: bra .try_again\n\n.note\n#_19FF93: #_0BC5: mov.w A, $03FF+X\n#_19FF96: #_0BC8: or.b A, $1B\n#_19FF98: #_0BCA: bne .disabled_channel\n#_19FF9A: #_0BCC: mov A, Y\n\n#_19FF9B: #_0BCD: push A\n\n#_19FF9C: #_0BCE: mov.b A, $47\n#_19FF9E: #_0BD0: and.b A, $1A\n\n#_19FFA0: #_0BD2: pop A\n\n#_19FFA1: #_0BD3: bne .disabled_channel\n\n#_19FFA3: #_0BD5: call HandleNote\n\n.disabled_channel\n#_19FFA6: #_0BD8: mov.w A, $0200+X\n#_19FFA9: #_0BDB: mov.b $70+X, A\n\n#_19FFAB: #_0BDD: mov Y, A\n#_19FFAC: #_0BDE: mov.w A, $0201+X\n#_19FFAF: #_0BE1: mul YA\n#_19FFB0: #_0BE2: mov A, Y\n#_19FFB1: #_0BE3: bne .non_zero\n\n#_19FFB3: #_0BE5: inc A\n\n.non_zero\n#_19FFB4: #_0BE6: mov.b $71+X, A\n#_19FFB6: #_0BE8: bra .continue\n\n.empty_track\n#_19FFB8: #_0BEA: mov.b A, $1B\n#_19FFBA: #_0BEC: bne .next_channel_2\n\n#_19FFBC: #_0BEE: call Tracker\n\n.continue\n#_19FFBF: #_0BF1: call PitchSlide\n\n.next_channel_2\n#_19FFC2: #_0BF4: inc X\n#_19FFC3: #_0BF5: inc X\n#_19FFC4: #_0BF6: asl.b $47\n#_19FFC6: #_0BF8: beq .done_with_channels\n\n#_19FFC8: #_0BFA: jmp .loop_2\n\n; ---------------------------------------------------------\n\n.done_with_channels\n#_19FFCB: #_0BFD: mov.b A, $54\n#_19FFCD: #_0BFF: beq .no_tempo_slide\n\n#_19FFCF: #_0C01: movw.b YA, $56\n#_19FFD1: #_0C03: addw.b YA, $52\n#_19FFD3: #_0C05: dbnz.b $54, .temp_slide_not_done\n\n#_19FFD6: #_0C08: movw.b YA, $54\n\n.temp_slide_not_done\n#_19FFD8: #_0C0A: movw.b $52, YA\n\n.no_tempo_slide\n#_19FFDA: #_0C0C: mov.b A, $68\n#_19FFDC: #_0C0E: beq .no_echo_pan_slide\n\n#_19FFDE: #_0C10: movw.b YA, $64\n#_19FFE0: #_0C12: addw.b YA, $60\n#_19FFE2: #_0C14: movw.b $60, YA\n\n#_19FFE4: #_0C16: movw.b YA, $66\n#_19FFE6: #_0C18: addw.b YA, $62\n#_19FFE8: #_0C1A: dbnz.b $68, .pan_slide_not_done\n\n#_19FFEB: #_0C1D: movw.b YA, $68\n#_19FFED: #_0C1F: movw.b $60, YA\n#_19FFEF: #_0C21: mov.b Y, $6A\n\n.pan_slide_not_done\n#_19FFF1: #_0C23: movw.b $62, YA\n\n.no_echo_pan_slide\n#_19FFF3: #_0C25: mov.b A, $5A\n#_19FFF5: #_0C27: beq .no_volume_slide\n\n#_19FFF7: #_0C29: movw.b YA, $5C\n#_19FFF9: #_0C2B: addw.b YA, $58\n#_19FFFB: #_0C2D: dbnz.b $5A, .volume_slide_not_done\n\n#_19FFFE: #_0C30: movw.b YA, $5A\n\n.volume_slide_not_done\n#_1A8000: #_0C32: movw.b $58, YA\n#_1A8002: #_0C34: mov.b $5E, #$FF\n\n.no_volume_slide\n#_1A8005: #_0C37: mov.b X, #$00\n#_1A8007: #_0C39: mov.b $47, #$01\n\n.volume_settings_loop\n#_1A800A: #_0C3C: mov.b A, $31+X\n#_1A800C: #_0C3E: beq .inactive_track\n\n#_1A800E: #_0C40: call WritePitch\n\n.inactive_track\n#_1A8011: #_0C43: inc X\n#_1A8012: #_0C44: inc X\n\n#_1A8013: #_0C45: asl.b $47\n#_1A8015: #_0C47: bne .volume_settings_loop\n\n#_1A8017: #_0C49: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "ExecuteCommand", + "code": "ExecuteCommand:\n#_1A8018: #_0C4A: asl A\n#_1A8019: #_0C4B: mov Y, A\n\n#_1A801A: #_0C4C: mov.w A, TrackCommand_Vectors+1-$C0+Y\n#_1A801D: #_0C4F: push A\n#_1A801E: #_0C50: mov.w A, TrackCommand_Vectors+0-$C0+Y\n#_1A8021: #_0C53: push A\n\n#_1A8022: #_0C54: mov A, Y\n#_1A8023: #_0C55: lsr A\n#_1A8024: #_0C56: mov Y, A\n\n#_1A8025: #_0C57: mov.w A, TrackCommandParamCount-$60+Y\n#_1A8028: #_0C5A: beq NoParameters\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "GetTrackByte", + "code": "GetTrackByte:\n#_1A802A: #_0C5C: mov.b A, ($30+X)\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SkipTrackByte", + "code": "SkipTrackByte:\n#_1A802C: #_0C5E: inc.b $30+X\n#_1A802E: #_0C60: bne NoParameters\n\n#_1A8030: #_0C62: inc.b $31+X\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "NoParameters", + "code": "NoParameters:\n#_1A8032: #_0C64: mov Y, A\n\n#_1A8033: #_0C65: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E0_ChangeInstrument", + "code": "TrackCommand_E0_ChangeInstrument:\n#_1A8034: #_0C66: mov.w $0211+X, A\n\n#_1A8037: #_0C69: mov Y, A\n#_1A8038: #_0C6A: bpl .no_percussion\n\n#_1A803A: #_0C6C: setc\n#_1A803B: #_0C6D: sbc.b A, #$CA ; Percussion base\n#_1A803D: #_0C6F: clrc\n#_1A803E: #_0C70: adc.b A, $5F\n\n.no_percussion\n#_1A8040: #_0C72: mov.b Y, #$06\n#_1A8042: #_0C74: mul YA\n#_1A8043: #_0C75: movw.b $14, YA\n\n#_1A8045: #_0C77: clrc\n#_1A8046: #_0C78: adc.b $14, #INSTRUMENT_DATA>>0\n#_1A8049: #_0C7B: adc.b $15, #INSTRUMENT_DATA>>8\n\n#_1A804C: #_0C7E: mov.b A, $1A\n#_1A804E: #_0C80: and.b A, $47\n#_1A8050: #_0C82: bne .return\n\n#_1A8052: #_0C84: push X\n\n#_1A8053: #_0C85: mov A, X\n#_1A8054: #_0C86: xcn A\n#_1A8055: #_0C87: lsr A\n#_1A8056: #_0C88: or.b A, #$04\n#_1A8058: #_0C8A: mov X, A\n\n#_1A8059: #_0C8B: mov.b Y, #$00\n#_1A805B: #_0C8D: mov.b A, ($14)+Y\n#_1A805D: #_0C8F: bpl .normal_sample\n\n#_1A805F: #_0C91: and.b A, #$1F\n#_1A8061: #_0C93: and.b $48, #$20\n#_1A8064: #_0C96: tset.w $0048, A\n#_1A8067: #_0C99: or.b ($49), ($47)\n\n#_1A806A: #_0C9C: mov A, Y\n#_1A806B: #_0C9D: bra .resume\n\n.normal_sample\n#_1A806D: #_0C9F: mov.b A, $47\n#_1A806F: #_0CA1: tclr.w $0049, A\n\n.dsp_write_loop\n#_1A8072: #_0CA4: mov.b A, ($14)+Y\n\n.resume\n#_1A8074: #_0CA6: mov.w DSPADDR, X\n#_1A8077: #_0CA9: mov.w DSPDATA, A\n\n#_1A807A: #_0CAC: inc X\n#_1A807B: #_0CAD: inc Y\n\n#_1A807C: #_0CAE: cmp.b Y, #$04\n#_1A807E: #_0CB0: bne .dsp_write_loop\n\n#_1A8080: #_0CB2: pop X\n\n#_1A8081: #_0CB3: mov.b A, ($14)+Y\n#_1A8083: #_0CB5: mov.w $0221+X, A\n\n#_1A8086: #_0CB8: inc Y\n#_1A8087: #_0CB9: mov.b A, ($14)+Y\n#_1A8089: #_0CBB: mov.w $0220+X, A\n\n.return\n#_1A808C: #_0CBE: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E1_ChangePan", + "code": "TrackCommand_E1_ChangePan:\n#_1A808D: #_0CBF: mov.w $0351+X, A\n\n#_1A8090: #_0CC2: and.b A, #$1F\n#_1A8092: #_0CC4: mov.w $0331+X, A\n\n#_1A8095: #_0CC7: mov.b A, #$00\n#_1A8097: #_0CC9: mov.w $0330+X, A\n\n#_1A809A: #_0CCC: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E2_PanSlide", + "code": "TrackCommand_E2_PanSlide:\n#_1A809B: #_0CCD: mov.b $91+X, A\n\n#_1A809D: #_0CCF: push A\n#_1A809E: #_0CD0: call GetTrackByte\n\n#_1A80A1: #_0CD3: mov.w $0350+X, A\n#_1A80A4: #_0CD6: setc\n#_1A80A5: #_0CD7: sbc.w A, $0331+X\n\n#_1A80A8: #_0CDA: pop X\n#_1A80A9: #_0CDB: call MakeFraction\n\n#_1A80AC: #_0CDE: mov.w $0340+X, A\n#_1A80AF: #_0CE1: mov A, Y\n#_1A80B0: #_0CE2: mov.w $0341+X, A\n\n#_1A80B3: #_0CE5: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E3_SetVibrato", + "code": "TrackCommand_E3_SetVibrato:\n#_1A80B4: #_0CE6: mov.w $02B0+X, A\n\n#_1A80B7: #_0CE9: call GetTrackByte\n#_1A80BA: #_0CEC: mov.w $02A1+X, A\n\n#_1A80BD: #_0CEF: call GetTrackByte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E4_VibratoOff", + "code": "TrackCommand_E4_VibratoOff:\n#_1A80C0: #_0CF2: mov.b $B1+X, A\n#_1A80C2: #_0CF4: mov.w $02C1+X, A\n\n#_1A80C5: #_0CF7: mov.b A, #$00\n#_1A80C7: #_0CF9: mov.w $02B1+X, A\n\n#_1A80CA: #_0CFC: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F0_VibratoGradient", + "code": "TrackCommand_F0_VibratoGradient:\n#_1A80CB: #_0CFD: mov.w $02B1+X, A\n#_1A80CE: #_0D00: push A\n\n#_1A80CF: #_0D01: mov.b Y, #$00\n#_1A80D1: #_0D03: mov.b A, $B1+X\n\n#_1A80D3: #_0D05: pop X\n\n#_1A80D4: #_0D06: div YA, X\n#_1A80D5: #_0D07: mov.b X, $44\n#_1A80D7: #_0D09: mov.w $02C0+X, A\n\n#_1A80DA: #_0D0C: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E5_GlobalVolume", + "code": "TrackCommand_E5_GlobalVolume:\n#_1A80DB: #_0D0D: mov.w A, $03CA\n#_1A80DE: #_0D10: bne .return\n\n#_1A80E0: #_0D12: mov.w A, $03E1\n#_1A80E3: #_0D15: bne .return\n\n#_1A80E5: #_0D17: mov.b A, #$00\n#_1A80E7: #_0D19: movw.b $58, YA\n\n.return\n#_1A80E9: #_0D1B: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E6_GlobalVolumeSlide", + "code": "TrackCommand_E6_GlobalVolumeSlide:\n#_1A80EA: #_0D1C: mov.b $5A, A\n\n#_1A80EC: #_0D1E: call GetTrackByte\n#_1A80EF: #_0D21: mov.b $5B, A\n\n#_1A80F1: #_0D23: setc\n#_1A80F2: #_0D24: sbc.b A, $59\n#_1A80F4: #_0D26: mov.b X, $5A\n#_1A80F6: #_0D28: call MakeFraction\n\n#_1A80F9: #_0D2B: movw.b $5C, YA\n\n#_1A80FB: #_0D2D: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E7_SetTempo", + "code": "TrackCommand_E7_SetTempo:\n#_1A80FC: #_0D2E: mov.b A, #$00\n#_1A80FE: #_0D30: movw.b $52, YA\n\n#_1A8100: #_0D32: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E8_TempoSlide", + "code": "TrackCommand_E8_TempoSlide:\n#_1A8101: #_0D33: mov.b $54, A\n\n#_1A8103: #_0D35: call GetTrackByte\n#_1A8106: #_0D38: mov.b $55, A\n\n#_1A8108: #_0D3A: setc\n#_1A8109: #_0D3B: sbc.b A, $53\n#_1A810B: #_0D3D: mov.b X, $54\n#_1A810D: #_0D3F: call MakeFraction\n\n#_1A8110: #_0D42: movw.b $56, YA\n\n#_1A8112: #_0D44: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_E9_GlobalTranspose", + "code": "TrackCommand_E9_GlobalTranspose:\n#_1A8113: #_0D45: mov.b $50, A\n\n#_1A8115: #_0D47: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_EA_ChannelTranspose", + "code": "TrackCommand_EA_ChannelTranspose:\n#_1A8116: #_0D48: mov.w $02F0+X, A\n\n#_1A8119: #_0D4B: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_EB_SetTremelo", + "code": "TrackCommand_EB_SetTremelo:\n#_1A811A: #_0D4C: mov.w $02E0+X, A\n\n#_1A811D: #_0D4F: call GetTrackByte\n#_1A8120: #_0D52: mov.w $02D1+X, A\n\n#_1A8123: #_0D55: call GetTrackByte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_EC_TremeloOff", + "code": "TrackCommand_EC_TremeloOff:\n#_1A8126: #_0D58: mov.b $C1+X, A\n\n#_1A8128: #_0D5A: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F1_PitchSlideTo", + "code": "TrackCommand_F1_PitchSlideTo:\n#_1A8129: #_0D5B: mov.b A, #$01\n\n#_1A812B: #_0D5D: bra TrackCommand_F2_PitchSlideFrom_start\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F2_PitchSlideFrom", + "code": "TrackCommand_F2_PitchSlideFrom:\n#_1A812D: #_0D5F: mov.b A, #$00\n\n.start\n#_1A812F: #_0D61: mov.w $0290+X, A\n\n#_1A8132: #_0D64: mov A, Y\n#_1A8133: #_0D65: mov.w $0281+X, A\n\n#_1A8136: #_0D68: call GetTrackByte\n#_1A8139: #_0D6B: mov.w $0280+X, A\n\n#_1A813C: #_0D6E: call GetTrackByte\n#_1A813F: #_0D71: mov.w $0291+X, A\n\n#_1A8142: #_0D74: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F3_PitchSlideStop", + "code": "TrackCommand_F3_PitchSlideStop:\n#_1A8143: #_0D75: mov.w $0280+X, A\n\n#_1A8146: #_0D78: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_ED_ChannelVolume", + "code": "TrackCommand_ED_ChannelVolume:\n#_1A8147: #_0D79: mov.w $0301+X, A\n\n#_1A814A: #_0D7C: mov.b A, #$00\n#_1A814C: #_0D7E: mov.w $0300+X, A\n\n#_1A814F: #_0D81: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_EE_ChannelVolumeSlide", + "code": "TrackCommand_EE_ChannelVolumeSlide:\n#_1A8150: #_0D82: mov.b $90+X, A\n#_1A8152: #_0D84: push A\n\n#_1A8153: #_0D85: call GetTrackByte\n#_1A8156: #_0D88: mov.w $0320+X, A\n\n#_1A8159: #_0D8B: setc\n#_1A815A: #_0D8C: sbc.w A, $0301+X\n\n#_1A815D: #_0D8F: pop X\n\n#_1A815E: #_0D90: call MakeFraction\n#_1A8161: #_0D93: mov.w $0310+X, A\n\n#_1A8164: #_0D96: mov A, Y\n#_1A8165: #_0D97: mov.w $0311+X, A\n\n#_1A8168: #_0D9A: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F4_FineTuning", + "code": "TrackCommand_F4_FineTuning:\n#_1A8169: #_0D9B: mov.w $0381+X, A\n\n#_1A816C: #_0D9E: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_EF_CallPart", + "code": "TrackCommand_EF_CallPart:\n#_1A816D: #_0D9F: mov.w $0240+X, A\n\n#_1A8170: #_0DA2: call GetTrackByte\n#_1A8173: #_0DA5: mov.w $0241+X, A\n\n#_1A8176: #_0DA8: call GetTrackByte\n#_1A8179: #_0DAB: mov.b $80+X, A\n\n#_1A817B: #_0DAD: mov.b A, $30+X\n#_1A817D: #_0DAF: mov.w $0230+X, A\n\n#_1A8180: #_0DB2: mov.b A, $31+X\n#_1A8182: #_0DB4: mov.w $0231+X, A\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "IteratePartLoop", + "code": "IteratePartLoop:\n#_1A8185: #_0DB7: mov.w A, $0240+X\n#_1A8188: #_0DBA: mov.b $30+X, A\n\n#_1A818A: #_0DBC: mov.w A, $0241+X\n#_1A818D: #_0DBF: mov.b $31+X, A\n\n#_1A818F: #_0DC1: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F5_EchoBasicControl", + "code": "TrackCommand_F5_EchoBasicControl:\n#_1A8190: #_0DC2: mov.w $03C3, A\n#_1A8193: #_0DC5: mov.b $4A, A\n\n#_1A8195: #_0DC7: call GetTrackByte\n#_1A8198: #_0DCA: mov.b A, #$00\n#_1A819A: #_0DCC: movw.b $60, YA\n\n#_1A819C: #_0DCE: call GetTrackByte\n#_1A819F: #_0DD1: mov.b A, #$00\n#_1A81A1: #_0DD3: movw.b $62, YA\n\n#_1A81A3: #_0DD5: clr5.b $48\n\n#_1A81A5: #_0DD7: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F8_EchoSlide", + "code": "TrackCommand_F8_EchoSlide:\n#_1A81A6: #_0DD8: mov.b $68, A\n\n#_1A81A8: #_0DDA: call GetTrackByte\n#_1A81AB: #_0DDD: mov.b $69, A\n\n#_1A81AD: #_0DDF: setc\n#_1A81AE: #_0DE0: sbc.b A, $61\n#_1A81B0: #_0DE2: mov.b X, $68\n\n#_1A81B2: #_0DE4: call MakeFraction\n#_1A81B5: #_0DE7: movw.b $64, YA\n\n#_1A81B7: #_0DE9: call GetTrackByte\n#_1A81BA: #_0DEC: mov.b $6A, A\n\n#_1A81BC: #_0DEE: setc\n#_1A81BD: #_0DEF: sbc.b A, $63\n#_1A81BF: #_0DF1: mov.b X, $68\n\n#_1A81C1: #_0DF3: call MakeFraction\n#_1A81C4: #_0DF6: movw.b $66, YA\n\n#_1A81C6: #_0DF8: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F6_EchoSilence", + "code": "TrackCommand_F6_EchoSilence:\n#_1A81C7: #_0DF9: movw.b $60, YA\n#_1A81C9: #_0DFB: movw.b $62, YA\n\n#_1A81CB: #_0DFD: set5.b $48\n\n#_1A81CD: #_0DFF: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_F7_EchoFilter", + "code": "TrackCommand_F7_EchoFilter:\n#_1A81CE: #_0E00: call ConfigureEcho\n\n#_1A81D1: #_0E03: call GetTrackByte\n#_1A81D4: #_0E06: mov.b $4E, A\n\n#_1A81D6: #_0E08: call GetTrackByte\n#_1A81D9: #_0E0B: mov.b Y, #$08\n#_1A81DB: #_0E0D: mul YA\n#_1A81DC: #_0E0E: mov X, A\n#_1A81DD: #_0E0F: mov.b Y, #FIR0\n\n.set_next_filter\n#_1A81DF: #_0E11: mov.w A, EchoFilterParameters+X\n#_1A81E2: #_0E14: call WriteToDSP\n\n#_1A81E5: #_0E17: inc X\n\n#_1A81E6: #_0E18: mov A, Y\n#_1A81E7: #_0E19: clrc\n#_1A81E8: #_0E1A: adc.b A, #$10\n#_1A81EA: #_0E1C: mov Y, A\n\n#_1A81EB: #_0E1D: bpl .set_next_filter\n\n#_1A81ED: #_0E1F: mov.b X, $44\n\n#_1A81EF: #_0E21: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "ConfigureEcho", + "code": "ConfigureEcho:\n#_1A81F0: #_0E22: mov.b $4D, A\n#_1A81F2: #_0E24: mov.b Y, #EDL\n\n#_1A81F4: #_0E26: mov.w DSPADDR, Y\n#_1A81F7: #_0E29: mov.w A, DSPDATA\n\n#_1A81FA: #_0E2C: cmp.b A, $4D\n#_1A81FC: #_0E2E: beq .edl_same\n\n#_1A81FE: #_0E30: and.b A, #$0F\n#_1A8200: #_0E32: eor.b A, #$FF\n#_1A8202: #_0E34: bbc7.b $4C, .buffer_ready\n\n#_1A8205: #_0E37: clrc\n#_1A8206: #_0E38: adc.b A, $4C\n\n.buffer_ready\n#_1A8208: #_0E3A: mov.b $4C, A\n#_1A820A: #_0E3C: mov.b Y, #$04\n\n.write_register\n#_1A820C: #_0E3E: mov.w A, RegisterList-1+Y\n#_1A820F: #_0E41: mov.w DSPADDR, A\n\n#_1A8212: #_0E44: mov.b A, #$00\n#_1A8214: #_0E46: mov.w DSPDATA, A\n\n#_1A8217: #_0E49: dbnz Y, .write_register\n\n#_1A8219: #_0E4B: mov.b A, $48\n#_1A821B: #_0E4D: or.b A, #$20\n#_1A821D: #_0E4F: mov.b Y, #FLG\n#_1A821F: #_0E51: call WriteToDSP\n\n#_1A8222: #_0E54: mov.b A, $4D\n#_1A8224: #_0E56: mov.b Y, #EDL\n#_1A8226: #_0E58: call WriteToDSP\n\n.edl_same\n#_1A8229: #_0E5B: asl A\n#_1A822A: #_0E5C: asl A\n#_1A822B: #_0E5D: asl A\n#_1A822C: #_0E5E: eor.b A, #$FF\n#_1A822E: #_0E60: setc\n#_1A822F: #_0E61: adc.b A, #SONG_POINTERS>>8\n#_1A8231: #_0E63: mov.b Y, #ESA\n\n#_1A8233: #_0E65: jmp WriteToDSP\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_FA_PercussionOffset", + "code": "TrackCommand_FA_PercussionOffset:\n#_1A8236: #_0E68: mov.b $5F, A\n\n#_1A8238: #_0E6A: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "DummyCommand", + "code": "DummyCommand:\n#_1A8239: #_0E6B: call SkipTrackByte\n\n#_1A823C: #_0E6E: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "ChannelStop", + "code": "ChannelStop:\n#_1A823D: #_0E6F: inc A\n#_1A823E: #_0E70: mov.w $03FF+X, A\n\n#_1A8241: #_0E73: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongStop", + "code": "SongStop:\n#_1A8242: #_0E74: inc A\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SongContinue", + "code": "SongContinue:\n#_1A8243: #_0E75: mov.b $1B, A\n\n#_1A8245: #_0E77: jmp Song_NewJam_key_off\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "PitchSlide", + "code": "PitchSlide:\n#_1A8248: #_0E7A: mov.b A, $A0+X\n#_1A824A: #_0E7C: bne .return\n\n#_1A824C: #_0E7E: mov.b A, ($30+X)\n#_1A824E: #_0E80: cmp.b A, #$F9\n#_1A8250: #_0E82: bne .return\n\n#_1A8252: #_0E84: mov.b A, $47\n#_1A8254: #_0E86: and.b A, $1A\n#_1A8256: #_0E88: beq .do_pitch_slide\n\n#_1A8258: #_0E8A: mov.b $10, #$04\n\n.skip_loop\n#_1A825B: #_0E8D: call SkipTrackByte\n\n#_1A825E: #_0E90: dbnz.b $10, .skip_loop\n#_1A8261: #_0E93: bra .return\n\n.do_pitch_slide\n#_1A8263: #_0E95: call SkipTrackByte\n#_1A8266: #_0E98: call GetTrackByte\n\n; ---------------------------------------------------------\n\n#TrackCommand_F9_SlideOnce:\n#_1A8269: #_0E9B: mov.b $A1+X, A\n\n#_1A826B: #_0E9D: call GetTrackByte\n#_1A826E: #_0EA0: mov.b $A0+X, A\n\n#_1A8270: #_0EA2: call GetTrackByte\n#_1A8273: #_0EA5: clrc\n#_1A8274: #_0EA6: adc.b A, $50\n#_1A8276: #_0EA8: adc.w A, $02F0+X\n\n.calc_frames\n#_1A8279: #_0EAB: and.b A, #$7F\n#_1A827B: #_0EAD: mov.w $0380+X, A\n\n#_1A827E: #_0EB0: setc\n#_1A827F: #_0EB1: sbc.w A, $0361+X\n#_1A8282: #_0EB4: mov.b Y, $A0+X\n\n#_1A8284: #_0EB6: push Y\n#_1A8285: #_0EB7: pop X\n#_1A8286: #_0EB8: call MakeFraction\n\n#_1A8289: #_0EBB: mov.w $0370+X, A\n\n#_1A828C: #_0EBE: mov A, Y\n#_1A828D: #_0EBF: mov.w $0371+X, A\n\n.return\n#_1A8290: #_0EC2: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "GetTempPitch", + "code": "GetTempPitch:\n#_1A8291: #_0EC3: mov.w A, $0361+X\n#_1A8294: #_0EC6: mov.b $11, A\n\n#_1A8296: #_0EC8: mov.w A, $0360+X\n#_1A8299: #_0ECB: mov.b $10, A\n\n#_1A829B: #_0ECD: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "MakeFraction", + "code": "MakeFraction:\n#_1A829C: #_0ECE: notc\n#_1A829D: #_0ECF: ror.b $12\n#_1A829F: #_0ED1: bpl .positive_input\n\n#_1A82A1: #_0ED3: eor.b A, #$FF\n#_1A82A3: #_0ED5: inc A\n\n.positive_input\n#_1A82A4: #_0ED6: mov.b Y, #$00\n#_1A82A6: #_0ED8: div YA, X\n\n#_1A82A7: #_0ED9: push A\n\n#_1A82A8: #_0EDA: mov.b A, #$00\n#_1A82AA: #_0EDC: div YA, X\n\n#_1A82AB: #_0EDD: pop Y\n\n#_1A82AC: #_0EDE: mov.b X, $44\n\n.abs\n#_1A82AE: #_0EE0: bbc7.b $12, .was_clear\n\n#_1A82B1: #_0EE3: movw.b $14, YA\n\n#_1A82B3: #_0EE5: movw.b YA, $0E\n#_1A82B5: #_0EE7: subw.b YA, $14\n\n.was_clear\n#_1A82B7: #_0EE9: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommand_Vectors", + "code": "TrackCommand_Vectors:\n#_1A82B8: #_0EEA: dw TrackCommand_E0_ChangeInstrument\n#_1A82BA: #_0EEC: dw TrackCommand_E1_ChangePan\n#_1A82BC: #_0EEE: dw TrackCommand_E2_PanSlide\n#_1A82BE: #_0EF0: dw TrackCommand_E3_SetVibrato\n\n#_1A82C0: #_0EF2: dw TrackCommand_E4_VibratoOff\n#_1A82C2: #_0EF4: dw TrackCommand_E5_GlobalVolume\n#_1A82C4: #_0EF6: dw TrackCommand_E6_GlobalVolumeSlide\n#_1A82C6: #_0EF8: dw TrackCommand_E7_SetTempo\n\n#_1A82C8: #_0EFA: dw TrackCommand_E8_TempoSlide\n#_1A82CA: #_0EFC: dw TrackCommand_E9_GlobalTranspose\n#_1A82CC: #_0EFE: dw TrackCommand_EA_ChannelTranspose\n#_1A82CE: #_0F00: dw TrackCommand_EB_SetTremelo\n\n#_1A82D0: #_0F02: dw TrackCommand_EC_TremeloOff\n#_1A82D2: #_0F04: dw TrackCommand_ED_ChannelVolume\n#_1A82D4: #_0F06: dw TrackCommand_EE_ChannelVolumeSlide\n#_1A82D6: #_0F08: dw TrackCommand_EF_CallPart\n\n#_1A82D8: #_0F0A: dw TrackCommand_F0_VibratoGradient\n#_1A82DA: #_0F0C: dw TrackCommand_F1_PitchSlideTo\n#_1A82DC: #_0F0E: dw TrackCommand_F2_PitchSlideFrom\n#_1A82DE: #_0F10: dw TrackCommand_F3_PitchSlideStop\n\n#_1A82E0: #_0F12: dw TrackCommand_F4_FineTuning\n#_1A82E2: #_0F14: dw TrackCommand_F5_EchoBasicControl\n#_1A82E4: #_0F16: dw TrackCommand_F6_EchoSilence\n#_1A82E6: #_0F18: dw TrackCommand_F7_EchoFilter\n\n#_1A82E8: #_0F1A: dw TrackCommand_F8_EchoSlide\n#_1A82EA: #_0F1C: dw TrackCommand_F9_SlideOnce\n#_1A82EC: #_0F1E: dw TrackCommand_FA_PercussionOffset\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TrackCommandParamCount", + "code": "TrackCommandParamCount:\n#_1A82EE: #_0F20: db 1 ; E0\n#_1A82EF: #_0F21: db 1 ; E1\n#_1A82F0: #_0F22: db 2 ; E2\n#_1A82F1: #_0F23: db 3 ; E3\n#_1A82F2: #_0F24: db 0 ; E4\n#_1A82F3: #_0F25: db 1 ; E5\n#_1A82F4: #_0F26: db 2 ; E6\n#_1A82F5: #_0F27: db 1 ; E7\n#_1A82F6: #_0F28: db 2 ; E8\n#_1A82F7: #_0F29: db 1 ; E9\n#_1A82F8: #_0F2A: db 1 ; EA\n#_1A82F9: #_0F2B: db 3 ; EB\n#_1A82FA: #_0F2C: db 0 ; EC\n#_1A82FB: #_0F2D: db 1 ; ED\n#_1A82FC: #_0F2E: db 2 ; EE\n#_1A82FD: #_0F2F: db 3 ; EF\n#_1A82FE: #_0F30: db 1 ; F0\n#_1A82FF: #_0F31: db 3 ; F1\n#_1A8300: #_0F32: db 3 ; F2\n#_1A8301: #_0F33: db 0 ; F3\n#_1A8302: #_0F34: db 1 ; F4\n#_1A8303: #_0F35: db 3 ; F5\n#_1A8304: #_0F36: db 0 ; F6\n#_1A8305: #_0F37: db 3 ; F7\n#_1A8306: #_0F38: db 3 ; F8\n#_1A8307: #_0F39: db 3 ; F9\n#_1A8308: #_0F3A: db 1 ; FA\n\n; extraneous\n#_1A8309: #_0F3B: db 2 ; FB\n#_1A830A: #_0F3C: db 0 ; FC\n#_1A830B: #_0F3D: db 0 ; FD\n#_1A830C: #_0F3E: db 0 ; FE\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "WritePitch", + "code": "WritePitch:\n#_1A830D: #_0F3F: mov.b A, $90+X\n#_1A830F: #_0F41: beq .no_volume_slide\n\n#_1A8311: #_0F43: mov.b A, #$0300>>0\n#_1A8313: #_0F45: mov.b Y, #$0300>>8\n#_1A8315: #_0F47: dec.b $90+X\n\n#_1A8317: #_0F49: call IncrementSlide\n\n.no_volume_slide\n#_1A831A: #_0F4C: mov.b Y, $C1+X\n#_1A831C: #_0F4E: beq .no_tremelo\n\n#_1A831E: #_0F50: mov.w A, $02E0+X\n#_1A8321: #_0F53: cbne.b $C0+X, .tremelo_not_ready\n\n#_1A8324: #_0F56: or.b $5E, $47\n\n#_1A8327: #_0F59: mov.w A, $02D0+X\n#_1A832A: #_0F5C: bpl .tremelo_accumulate\n\n#_1A832C: #_0F5E: inc Y\n#_1A832D: #_0F5F: bne .tremelo_accumulate\n\n#_1A832F: #_0F61: mov.b A, #$80\n#_1A8331: #_0F63: bra .skip_accumulate\n\n.tremelo_accumulate\n#_1A8333: #_0F65: clrc\n#_1A8334: #_0F66: adc.w A, $02D1+X\n\n.skip_accumulate\n#_1A8337: #_0F69: mov.w $02D0+X, A\n#_1A833A: #_0F6C: call VolumeModulation_external\n#_1A833D: #_0F6F: bra .handle_pan_slide\n\n.tremelo_not_ready\n#_1A833F: #_0F71: inc.b $C0+X\n\n.no_tremelo\n#_1A8341: #_0F73: mov.b A, #$FF\n#_1A8343: #_0F75: call VolumeModulation_final_volume\n\n.handle_pan_slide\n#_1A8346: #_0F78: mov.b A, $91+X\n#_1A8348: #_0F7A: beq .no_pan_slide\n\n#_1A834A: #_0F7C: mov.b A, #$0330>>0\n#_1A834C: #_0F7E: mov.b Y, #$0330>>8\n#_1A834E: #_0F80: dec.b $91+X\n\n#_1A8350: #_0F82: call IncrementSlide\n\n.no_pan_slide\n#_1A8353: #_0F85: mov.b A, $47\n#_1A8355: #_0F87: and.b A, $5E\n#_1A8357: #_0F89: beq .return\n\n#_1A8359: #_0F8B: mov.w A, $0331+X\n#_1A835C: #_0F8E: mov Y, A\n\n#_1A835D: #_0F8F: mov.w A, $0330+X\n#_1A8360: #_0F92: movw.b $10, YA\n\n.external\n#_1A8362: #_0F94: mov A, X\n#_1A8363: #_0F95: xcn A\n#_1A8364: #_0F96: lsr A\n#_1A8365: #_0F97: mov.b $12, A\n\n.vol_right\n#_1A8367: #_0F99: mov.b Y, $11\n#_1A8369: #_0F9B: mov.w A, LogisticFunc+1+Y\n#_1A836C: #_0F9E: setc\n#_1A836D: #_0F9F: sbc.w A, LogisticFunc+0+Y\n\n#_1A8370: #_0FA2: mov.b Y, $10\n#_1A8372: #_0FA4: mul YA\n\n#_1A8373: #_0FA5: mov A, Y\n#_1A8374: #_0FA6: mov.b Y, $11\n#_1A8376: #_0FA8: clrc\n#_1A8377: #_0FA9: adc.w A, LogisticFunc+0+Y\n\n#_1A837A: #_0FAC: mov Y, A\n\n#_1A837B: #_0FAD: mov.w A, $0321+X\n#_1A837E: #_0FB0: mul YA\n\n#_1A837F: #_0FB1: mov.w A, $0351+X\n\n#_1A8382: #_0FB4: asl A\n#_1A8383: #_0FB5: bbc0.b $12, .vol_left\n\n#_1A8386: #_0FB8: asl A\n\n.vol_left\n#_1A8387: #_0FB9: mov A, Y\n#_1A8388: #_0FBA: bcc .no_phase_inversion\n\n#_1A838A: #_0FBC: eor.b A, #$FF\n#_1A838C: #_0FBE: inc A\n\n.no_phase_inversion\n#_1A838D: #_0FBF: mov.b Y, $12\n#_1A838F: #_0FC1: call WriteToDSP_Checked\n\n#_1A8392: #_0FC4: mov.b Y, #$14\n#_1A8394: #_0FC6: mov.b A, #$00\n\n#_1A8396: #_0FC8: subw.b YA, $10\n#_1A8398: #_0FCA: movw.b $10, YA\n\n#_1A839A: #_0FCC: inc.b $12\n#_1A839C: #_0FCE: bbc1.b $12, .vol_right\n\n.return\n#_1A839F: #_0FD1: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "IncrementSlide", + "code": "IncrementSlide:\n#_1A83A0: #_0FD2: or.b $5E, $47\n\n.quiet\n#_1A83A3: #_0FD5: movw.b $14, YA\n#_1A83A5: #_0FD7: movw.b $16, YA\n\n#_1A83A7: #_0FD9: push X\n#_1A83A8: #_0FDA: pop Y\n\n#_1A83A9: #_0FDB: clrc\n#_1A83AA: #_0FDC: bne .still_sliding\n\n#_1A83AC: #_0FDE: adc.b $16, #$1F\n\n#_1A83AF: #_0FE1: mov.b A, #$00\n#_1A83B1: #_0FE3: mov.b ($14)+Y, A\n\n#_1A83B3: #_0FE5: inc Y\n#_1A83B4: #_0FE6: bra .add\n\n.still_sliding\n#_1A83B6: #_0FE8: adc.b $16, #$10\n#_1A83B9: #_0FEB: call .add_slide_amount\n\n#_1A83BC: #_0FEE: inc Y\n\n.add_slide_amount\n#_1A83BD: #_0FEF: mov.b A, ($14)+Y\n\n.add\n#_1A83BF: #_0FF1: adc.b A, ($16)+Y\n#_1A83C1: #_0FF3: mov.b ($14)+Y, A\n\n#_1A83C3: #_0FF5: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Tracker", + "code": "Tracker:\n#_1A83C4: #_0FF6: mov.b A, $71+X\n#_1A83C6: #_0FF8: beq .time_left\n\n#_1A83C8: #_0FFA: dec.b $71+X\n#_1A83CA: #_0FFC: beq .times_up\n\n#_1A83CC: #_0FFE: mov.b A, #$02\n#_1A83CE: #_1000: cbne.b $70+X, .time_left\n\n.times_up\n#_1A83D1: #_1003: mov.b A, $80+X\n#_1A83D3: #_1005: mov.b $17, A\n\n#_1A83D5: #_1007: mov.b A, $30+X\n#_1A83D7: #_1009: mov.b Y, $31+X\n\n.load_pointer\n#_1A83D9: #_100B: movw.b $14, YA\n#_1A83DB: #_100D: mov.b Y, #$00\n\n.next_byte\n#_1A83DD: #_100F: mov.b A, ($14)+Y\n#_1A83DF: #_1011: beq .terminate_track\n#_1A83E1: #_1013: bmi .command\n\n.read_track_data\n#_1A83E3: #_1015: inc Y\n#_1A83E4: #_1016: bmi .call_loop_over\n\n#_1A83E6: #_1018: mov.b A, ($14)+Y\n#_1A83E8: #_101A: bpl .read_track_data\n\n.command\n#_1A83EA: #_101C: cmp.b A, #$C8 ; tie\n#_1A83EC: #_101E: beq .time_left\n\n#_1A83EE: #_1020: cmp.b A, #$EF ; call part\n#_1A83F0: #_1022: beq .call_loop_command\n\n#_1A83F2: #_1024: cmp.b A, #$E0 ; instrument change\n#_1A83F4: #_1026: bcc .call_loop_over\n\n#_1A83F6: #_1028: push Y\n#_1A83F7: #_1029: mov Y, A\n\n#_1A83F8: #_102A: pop A\n#_1A83F9: #_102B: adc.w A, TrackCommandParamCount-$E0+Y\n#_1A83FC: #_102E: mov Y, A\n\n#_1A83FD: #_102F: bra .next_byte\n\n.terminate_track\n#_1A83FF: #_1031: mov.b A, $17\n#_1A8401: #_1033: beq .call_loop_over\n\n#_1A8403: #_1035: dec.b $17\n#_1A8405: #_1037: bne .call_loop_notdone\n\n#_1A8407: #_1039: mov.w A, $0231+X\n#_1A840A: #_103C: push A\n\n#_1A840B: #_103D: mov.w A, $0230+X\n#_1A840E: #_1040: pop Y\n\n#_1A840F: #_1041: bra .load_pointer\n\n.call_loop_notdone\n#_1A8411: #_1043: mov.w A, $0241+X\n#_1A8414: #_1046: push A\n\n#_1A8415: #_1047: mov.w A, $0240+X\n#_1A8418: #_104A: pop Y\n\n#_1A8419: #_104B: bra .load_pointer\n\n.call_loop_command\n#_1A841B: #_104D: inc Y\n#_1A841C: #_104E: mov.b A, ($14)+Y\n\n#_1A841E: #_1050: push A\n#_1A841F: #_1051: inc Y\n\n#_1A8420: #_1052: mov.b A, ($14)+Y\n\n#_1A8422: #_1054: mov Y, A\n#_1A8423: #_1055: pop A\n\n#_1A8424: #_1056: bra .load_pointer\n\n.call_loop_over\n#_1A8426: #_1058: mov.b A, $47\n#_1A8428: #_105A: mov.b Y, #KOFF\n#_1A842A: #_105C: call WriteToDSP_Checked\n\n.time_left\n#_1A842D: #_105F: clr7.b $13\n\n#_1A842F: #_1061: mov.b A, $A0+X\n#_1A8431: #_1063: beq .no_pitch_slide\n\n#_1A8433: #_1065: mov.b A, $A1+X\n#_1A8435: #_1067: beq .delay_finished\n\n#_1A8437: #_1069: dec.b $A1+X\n#_1A8439: #_106B: bra .no_pitch_slide\n\n.delay_finished\n#_1A843B: #_106D: mov.b A, $1A\n#_1A843D: #_106F: and.b A, $47\n#_1A843F: #_1071: bne .no_pitch_slide\n\n#_1A8441: #_1073: set7.b $13\n\n#_1A8443: #_1075: mov.b A, #$0360>>0\n#_1A8445: #_1077: mov.b Y, #$0360>>8\n#_1A8447: #_1079: dec.b $A0+X\n\n#_1A8449: #_107B: call IncrementSlide_quiet\n\n.no_pitch_slide\n#_1A844C: #_107E: call GetTempPitch\n\n#_1A844F: #_1081: mov.b A, $B1+X\n#_1A8451: #_1083: beq .no_vibrato\n\n#_1A8453: #_1085: mov.w A, $02B0+X\n#_1A8456: #_1088: cbne.b $B0+X, .set_point_wait\n\n#_1A8459: #_108B: mov.w A, $0100+X\n#_1A845C: #_108E: cmp.w A, $02B1+X\n#_1A845F: #_1091: bne .increment\n\n#_1A8461: #_1093: mov.w A, $02C1+X\n#_1A8464: #_1096: bra .set_intensity\n\n.increment\n#_1A8466: #_1098: setp\n#_1A8467: #_1099: inc.b $0100+X\n#_1A8469: #_109B: clrp\n\n#_1A846A: #_109C: mov Y, A\n#_1A846B: #_109D: beq .initializing\n\n#_1A846D: #_109F: mov.b A, $B1+X\n\n.initializing\n#_1A846F: #_10A1: clrc\n#_1A8470: #_10A2: adc.w A, $02C0+X\n\n.set_intensity\n#_1A8473: #_10A5: mov.b $B1+X, A\n#_1A8475: #_10A7: mov.w A, $02A0+X\n\n#_1A8478: #_10AA: clrc\n#_1A8479: #_10AB: adc.w A, $02A1+X\n#_1A847C: #_10AE: mov.w $02A0+X, A\n\n.handle_pitch\n#_1A847F: #_10B1: mov.b $12, A\n#_1A8481: #_10B3: asl A\n#_1A8482: #_10B4: asl A\n#_1A8483: #_10B5: bcc .low_enough\n\n#_1A8485: #_10B7: eor.b A, #$FF\n\n.low_enough\n#_1A8487: #_10B9: mov Y, A\n\n#_1A8488: #_10BA: mov.b A, $B1+X\n#_1A848A: #_10BC: cmp.b A, #$F1\n#_1A848C: #_10BE: bcc .too_small\n\n#_1A848E: #_10C0: and.b A, #$0F\n#_1A8490: #_10C2: mul YA\n\n#_1A8491: #_10C3: bra .continue\n\n.too_small\n#_1A8493: #_10C5: mul YA\n#_1A8494: #_10C6: mov A, Y\n#_1A8495: #_10C7: mov.b Y, #$00\n\n.continue\n#_1A8497: #_10C9: call AdjustPitch\n\n.change_pitch\n#_1A849A: #_10CC: jmp HandleNote_external\n\n.set_point_wait\n#_1A849D: #_10CF: inc.b $B0+X\n\n.no_vibrato\n#_1A849F: #_10D1: bbs7.b $13, .change_pitch\n\n#_1A84A2: #_10D4: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "BackgroundTasks", + "code": "BackgroundTasks:\n#_1A84A3: #_10D5: clr7.b $13\n\n#_1A84A5: #_10D7: mov.b A, $C1+X\n#_1A84A7: #_10D9: beq .no_tremelo\n\n#_1A84A9: #_10DB: mov.w A, $02E0+X\n#_1A84AC: #_10DE: cbne.b $C0+X, .no_tremelo\n\n#_1A84AF: #_10E1: call VolumeModulation\n\n.no_tremelo\n#_1A84B2: #_10E4: mov.w A, $0331+X\n#_1A84B5: #_10E7: mov Y, A\n\n#_1A84B6: #_10E8: mov.w A, $0330+X\n#_1A84B9: #_10EB: movw.b $10, YA\n\n#_1A84BB: #_10ED: mov.b A, $91+X\n#_1A84BD: #_10EF: beq .no_pan_slide\n\n#_1A84BF: #_10F1: mov.w A, $0341+X\n#_1A84C2: #_10F4: mov Y, A\n#_1A84C3: #_10F5: mov.w A, $0340+X\n\n#_1A84C6: #_10F8: call AdjustPitchByFrames\n\n.no_pan_slide\n#_1A84C9: #_10FB: bbc7.b $13, .pitch_unchanged\n\n#_1A84CC: #_10FE: call WritePitch_external\n\n.pitch_unchanged\n#_1A84CF: #_1101: clr7.b $13\n\n#_1A84D1: #_1103: call GetTempPitch\n\n#_1A84D4: #_1106: mov.b A, $A0+X\n#_1A84D6: #_1108: beq .no_pitch_slide\n\n#_1A84D8: #_110A: mov.b A, $A1+X\n#_1A84DA: #_110C: bne .no_pitch_slide\n\n#_1A84DC: #_110E: mov.w A, $0371+X\n#_1A84DF: #_1111: mov Y, A\n#_1A84E0: #_1112: mov.w A, $0370+X\n\n#_1A84E3: #_1115: call AdjustPitchByFrames\n\n.no_pitch_slide\n#_1A84E6: #_1118: mov.b A, $B1+X\n#_1A84E8: #_111A: beq Tracker_no_vibrato\n\n#_1A84EA: #_111C: mov.w A, $02B0+X\n#_1A84ED: #_111F: cbne.b $B0+X, Tracker_no_vibrato\n\n#_1A84F0: #_1122: mov.b Y, $51\n#_1A84F2: #_1124: mov.w A, $02A1+X\n\n#_1A84F5: #_1127: mul YA\n#_1A84F6: #_1128: mov A, Y\n#_1A84F7: #_1129: clrc\n#_1A84F8: #_112A: adc.w A, $02A0+X\n\n#_1A84FB: #_112D: jmp Tracker_handle_pitch\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "AdjustPitchByFrames", + "code": "AdjustPitchByFrames:\n#_1A84FE: #_1130: set7.b $13\n\n#_1A8500: #_1132: mov.b $12, Y\n#_1A8502: #_1134: call MakeFraction_abs\n\n#_1A8505: #_1137: push Y\n\n#_1A8506: #_1138: mov.b Y, $51\n#_1A8508: #_113A: mul YA\n#_1A8509: #_113B: mov.b $14, Y\n#_1A850B: #_113D: mov.b $15, #$00\n\n#_1A850E: #_1140: mov.b Y, $51\n\n#_1A8510: #_1142: pop A\n#_1A8511: #_1143: mul YA\n#_1A8512: #_1144: addw.b YA, $14\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "AdjustPitch", + "code": "AdjustPitch:\n#_1A8514: #_1146: call MakeFraction_abs\n\n#_1A8517: #_1149: addw.b YA, $10\n#_1A8519: #_114B: movw.b $10, YA\n\n#_1A851B: #_114D: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "VolumeModulation", + "code": "VolumeModulation:\n#_1A851C: #_114E: set7.b $13\n\n#_1A851E: #_1150: mov.b Y, $51\n#_1A8520: #_1152: mov.w A, $02D1+X\n\n#_1A8523: #_1155: mul YA\n#_1A8524: #_1156: mov A, Y\n#_1A8525: #_1157: clrc\n#_1A8526: #_1158: adc.w A, $02D0+X\n\n.external\n#_1A8529: #_115B: asl A\n#_1A852A: #_115C: bcc .no_phase_invert\n\n#_1A852C: #_115E: eor.b A, #$FF\n\n.no_phase_invert\n#_1A852E: #_1160: mov.b Y, $C1+X\n#_1A8530: #_1162: mul YA\n#_1A8531: #_1163: mov A, Y\n#_1A8532: #_1164: eor.b A, #$FF\n\n.final_volume\n#_1A8534: #_1166: mov.b Y, $59\n#_1A8536: #_1168: mul YA\n\n#_1A8537: #_1169: mov.w A, $0210+X\n#_1A853A: #_116C: mul YA\n\n#_1A853B: #_116D: mov.w A, $0301+X\n#_1A853E: #_1170: mul YA\n\n#_1A853F: #_1171: mov A, Y\n#_1A8540: #_1172: mul YA\n\n#_1A8541: #_1173: mov A, Y\n#_1A8542: #_1174: mov.w $0321+X, A\n\n#_1A8545: #_1177: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "LogisticFunc", + "code": "LogisticFunc:\n#_1A8546: #_1178: db $00, $01, $03, $07, $0D, $15, $1E, $29\n#_1A854E: #_1180: db $34, $42, $51, $5E, $67, $6E, $73, $77\n#_1A8556: #_1188: db $7A, $7C, $7D, $7E, $7F\n\n; =========================================================\n; Contains values for each of the 8 bytes of filter\n; =========================================================", + "file": "spc.asm" + }, + { + "name": "EchoFilterParameters", + "code": "EchoFilterParameters:\n#_1A855B: #_118D: db $7F, $00, $00, $00, $00, $00, $00, $00\n#_1A8563: #_1195: db $58, $BF, $DB, $F0, $FE, $07, $0C, $0C\n#_1A856B: #_119D: db $0C, $21, $2B, $2B, $13, $FE, $F3, $F9\n#_1A8573: #_11A5: db $34, $33, $00, $D9, $E5, $01, $FC, $EB\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "RegisterList", + "code": "RegisterList:\n#_1A857B: #_11AD: db EVOLL\n#_1A857C: #_11AE: db EVOLR\n#_1A857D: #_11AF: db EFB\n#_1A857E: #_11B0: db EON\n#_1A857F: #_11B1: db FLG\n#_1A8580: #_11B2: db KON\n#_1A8581: #_11B3: db KOFF\n#_1A8582: #_11B4: db NON\n#_1A8583: #_11B5: db PMON\n#_1A8584: #_11B6: db KOFF\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "LoadValueFrom", + "code": "LoadValueFrom:\n#_1A8585: #_11B7: db $61 ; EVOLL\n#_1A8586: #_11B8: db $63 ; EVOLR\n#_1A8587: #_11B9: db $4E ; EFB\n#_1A8588: #_11BA: db $4A ; EON\n#_1A8589: #_11BB: db $48 ; FLG\n#_1A858A: #_11BC: db $45 ; KON\n#_1A858B: #_11BD: db $0E ; KOFF\n#_1A858C: #_11BE: db $49 ; NON\n#_1A858D: #_11BF: db $4B ; PMON\n#_1A858E: #_11C0: db $46 ; KOFF\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "TuningValues", + "code": "TuningValues:\n#_1A858F: #_11C1: dw $085F\n#_1A8591: #_11C3: dw $08DE\n#_1A8593: #_11C5: dw $0965\n#_1A8595: #_11C7: dw $09F4\n#_1A8597: #_11C9: dw $0A8C\n#_1A8599: #_11CB: dw $0B2C\n#_1A859B: #_11CD: dw $0BD6\n#_1A859D: #_11CF: dw $0C8B\n#_1A859F: #_11D1: dw $0D4A\n#_1A85A1: #_11D3: dw $0E14\n#_1A85A3: #_11D5: dw $0EEA\n#_1A85A5: #_11D7: dw $0FCD\n#_1A85A7: #_11D9: dw $10BE\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "UNREACHABLE_11DB", + "code": "UNREACHABLE_11DB:\n#_1A85A9: #_11DB: db $2A\n#_1A85AA: #_11DC: db $56\n#_1A85AB: #_11DD: db $65\n#_1A85AC: #_11DE: db $72\n#_1A85AD: #_11DF: db $20\n#_1A85AE: #_11E0: db $53\n#_1A85AF: #_11E1: db $31\n#_1A85B0: #_11E2: db $2E\n#_1A85B1: #_11E3: db $32\n#_1A85B2: #_11E4: db $30\n#_1A85B3: #_11E5: db $2A\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Data_Loader", + "code": "Data_Loader:\n#_1A85B4: #_11E6: mov.b A, #$AA\n#_1A85B6: #_11E8: mov.w CPUIO0, A\n\n#_1A85B9: #_11EB: mov.b A, #$BB\n#_1A85BB: #_11ED: mov.w CPUIO1, A\n\n.wait_data_start\n#_1A85BE: #_11F0: mov.w A, CPUIO0\n#_1A85C1: #_11F3: cmp.b A, #$CC\n#_1A85C3: #_11F5: bne .wait_data_start\n#_1A85C5: #_11F7: bra .begin_transfer\n\n.loop\n#_1A85C7: #_11F9: mov.w Y, CPUIO0\n#_1A85CA: #_11FC: bne .loop\n\n.reread\n#_1A85CC: #_11FE: cmp.w Y, CPUIO0\n#_1A85CF: #_1201: bne .coherence_error\n\n#_1A85D1: #_1203: mov.w A, CPUIO1\n#_1A85D4: #_1206: mov.w CPUIO0, Y\n#_1A85D7: #_1209: mov.b ($14)+Y, A\n\n#_1A85D9: #_120B: inc Y\n#_1A85DA: #_120C: bne .reread\n\n#_1A85DC: #_120E: inc.b $15\n#_1A85DE: #_1210: bra .reread\n\n.coherence_error\n#_1A85E0: #_1212: bpl .reread\n\n#_1A85E2: #_1214: cmp.w Y, CPUIO0\n#_1A85E5: #_1217: bpl .reread\n\n.begin_transfer\n#_1A85E7: #_1219: mov.w A, CPUIO2\n#_1A85EA: #_121C: mov.w Y, CPUIO3\n#_1A85ED: #_121F: movw.b $14, YA\n\n#_1A85EF: #_1221: mov.w Y, CPUIO0\n#_1A85F2: #_1224: mov.w A, CPUIO1\n#_1A85F5: #_1227: mov.w CPUIO0, Y\n#_1A85F8: #_122A: bne .loop\n\n; clear ports 0123, start timer 0\n#_1A85FA: #_122C: mov.b X, #$31\n#_1A85FC: #_122E: mov.w CONTROL, X\n\n#_1A85FF: #_1231: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SFX2_HandleEcho", + "code": "SFX2_HandleEcho:\n#_1A8600: #_1232: mov.b A, $02\n#_1A8602: #_1234: and.b A, #$3F\n#_1A8604: #_1236: mov X, A\n\n#_1A8605: #_1237: mov.w A, SFX2_Echo-1+X\n#_1A8608: #_123A: mov.w $03E2, A\n\n#_1A860B: #_123D: mov.b Y, #$0E\n#_1A860D: #_123F: mov.b X, #$80\n#_1A860F: #_1241: mov.w $03C1, X\n\n.loop_back\n#_1A8612: #_1244: mov.w A, $03CB\n#_1A8615: #_1247: and.w A, $03C1\n#_1A8618: #_124A: beq .SFX2_next_slot\n\n#_1A861A: #_124C: clrc\n#_1A861B: #_124D: mov.w A, $03A0+Y\n#_1A861E: #_1250: adc.w A, $03D0+Y\n\n#_1A8621: #_1253: cmp.b A, $02\n#_1A8623: #_1255: beq SFX3_HandleEcho_match\n\n.SFX2_next_slot\n#_1A8625: #_1257: dec Y\n#_1A8626: #_1258: dec Y\n\n#_1A8627: #_1259: lsr.w $03C1\n#_1A862A: #_125C: bne .loop_back\n#_1A862C: #_125E: bra SFX3_HandleEcho_no_slot\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SFX3_HandleEcho", + "code": "SFX3_HandleEcho:\n#_1A862E: #_1260: mov.b A, $03\n#_1A8630: #_1262: and.b A, #$3F\n#_1A8632: #_1264: mov X, A\n\n#_1A8633: #_1265: mov.w A, SFX3_Echo-1+X\n#_1A8636: #_1268: mov.w $03E2, A\n\n#_1A8639: #_126B: mov.b Y, #$0E\n#_1A863B: #_126D: mov.b X, #$80\n#_1A863D: #_126F: mov.w $03C1, X\n\n.SFX3_loop_point\n#_1A8640: #_1272: mov.w A, $03CD\n#_1A8643: #_1275: and.w A, $03C1\n#_1A8646: #_1278: beq .SFX3_next_slot\n\n#_1A8648: #_127A: clrc\n#_1A8649: #_127B: mov.w A, $03A0+Y\n#_1A864C: #_127E: adc.w A, $03D0+Y\n\n#_1A864F: #_1281: cmp.b A, $03\n#_1A8651: #_1283: beq .match\n\n.SFX3_next_slot\n#_1A8653: #_1285: dec Y\n#_1A8654: #_1286: dec Y\n\n#_1A8655: #_1287: lsr.w $03C1\n#_1A8658: #_128A: bne .SFX3_loop_point\n#_1A865A: #_128C: bra .no_slot\n\n.match\n#_1A865C: #_128E: mov.w $03C0, Y\n#_1A865F: #_1291: bra .enabled\n\n.no_slot\n#_1A8661: #_1293: clrc\n#_1A8662: #_1294: mov.b X, #$1A\n\n#_1A8664: #_1296: mov.b A, #$80\n#_1A8666: #_1298: mov.w $03C1, A\n\n#_1A8669: #_129B: mov.b Y, #$0E\n\n.loop_back_2\n#_1A866B: #_129D: and A, (X)\n#_1A866C: #_129E: beq .enabled\n\n#_1A866E: #_12A0: dec Y\n#_1A866F: #_12A1: dec Y\n\n#_1A8670: #_12A2: lsr.w $03C1\n#_1A8673: #_12A5: lsr A\n#_1A8674: #_12A6: bcc .loop_back_2\n\n.enabled\n#_1A8676: #_12A8: mov.w $03C0, Y\n#_1A8679: #_12AB: mov.w $03C8, Y\n\n#_1A867C: #_12AE: mov.w A, $03C1\n#_1A867F: #_12B1: mov.w $03C9, A\n\n#_1A8682: #_12B4: or.b A, $1A\n#_1A8684: #_12B6: mov.b $1A, A\n\n#_1A8686: #_12B8: mov.w X, $03E2\n#_1A8689: #_12BB: beq .disabled\n\n#_1A868B: #_12BD: or.w A, $03E3\n#_1A868E: #_12C0: mov.w $03E3, A\n\n.disabled\n#_1A8691: #_12C3: mov.w A, $0004\n#_1A8694: #_12C6: and.b A, #$10\n#_1A8696: #_12C8: beq .lower_bank\n\n#_1A8698: #_12CA: mov.w A, $03C1\n#_1A869B: #_12CD: and.w A, $03E3\n#_1A869E: #_12D0: beq .echo_off\n\n.lower_bank\n#_1A86A0: #_12D2: mov.w A, $03C1\n#_1A86A3: #_12D5: and.b A, $4A\n#_1A86A5: #_12D7: beq .echo_off\n\n#_1A86A7: #_12D9: mov.b A, $4A\n#_1A86A9: #_12DB: setc\n#_1A86AA: #_12DC: sbc.w A, $03C1\n#_1A86AD: #_12DF: mov.b $4A, A\n\n#_1A86AF: #_12E1: mov.b Y, #EON\n#_1A86B1: #_12E3: call WriteToDSP\n\n.echo_off\n#_1A86B4: #_12E6: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Unused_Function", + "code": "Unused_Function:\n#_1A86B5: #_12E7: mov.w X, $03C4\n#_1A86B8: #_12EA: mov.w $03C0, X\n\n#_1A86BB: #_12ED: mov.w Y, $03C5\n#_1A86BE: #_12F0: mov.w $03C1, Y\n\n#_1A86C1: #_12F3: mov.w A, $03C1\n#_1A86C4: #_12F6: mov.b Y, #KOFF\n#_1A86C6: #_12F8: call WriteToDSP\n\n#_1A86C9: #_12FB: call ResumeMusic\n\n#_1A86CC: #_12FE: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "InitSFX1", + "code": "InitSFX1:\n#_1A86CD: #_12FF: mov.b $05, A\n#_1A86CF: #_1301: cmp.b A, #$05\n#_1A86D1: #_1303: bne .initialize\n\n#_1A86D3: #_1305: mov.w X, $03CF\n#_1A86D6: #_1308: bne .initialize\n\n#_1A86D8: #_130A: ret\n\n.initialize\n#_1A86D9: #_130B: mov.b X, #$00\n#_1A86DB: #_130D: mov.w $03E4, X\n\n#_1A86DE: #_1310: mov.b X, #$0E\n\n#_1A86E0: #_1312: mov.b A, $01\n#_1A86E2: #_1314: mov.w $03A0+X, A\n\n#_1A86E5: #_1317: mov.b A, #$03\n#_1A86E7: #_1319: mov.w $03A1+X, A\n\n#_1A86EA: #_131C: mov.b A, #$00\n#_1A86EC: #_131E: mov.w $0280+X, A\n\n#_1A86EF: #_1321: mov.b A, #$80\n#_1A86F1: #_1323: mov.w $03CF, A\n\n#_1A86F4: #_1326: mov.b Y, #KOFF\n#_1A86F6: #_1328: call WriteToDSP\n\n#_1A86F9: #_132B: set7.b $1A\n\n#_1A86FB: #_132D: mov.b X, $01\n#_1A86FD: #_132F: mov.w A, SFX1_Accomp-1+X\n\n#_1A8700: #_1332: mov.b $01, A\n#_1A8702: #_1334: bne .also_use_chan_6\n\n#_1A8704: #_1336: ret\n\n.also_use_chan_6\n#_1A8705: #_1337: mov.b X, #$0C\n\n#_1A8707: #_1339: mov.b A, $01\n#_1A8709: #_133B: mov.w $03A0+X, A\n\n#_1A870C: #_133E: mov.b A, #$03\n#_1A870E: #_1340: mov.w $03A1+X, A\n\n#_1A8711: #_1343: mov.b A, #$00\n#_1A8713: #_1345: mov.w $0280+X, A\n\n#_1A8716: #_1348: set6.b $1A\n\n#_1A8718: #_134A: mov.b A, #$40\n#_1A871A: #_134C: mov.b Y, #KOFF\n#_1A871C: #_134E: call WriteToDSP\n\n#_1A871F: #_1351: mov.b A, #$C0\n#_1A8721: #_1353: mov.w $03CF, A\n\n#_1A8724: #_1356: or.w A, $03E3\n#_1A8727: #_1359: mov.w $03E3, A\n\n#_1A872A: #_135C: mov.b A, #$3F\n#_1A872C: #_135E: and.w A, $03CB\n#_1A872F: #_1361: mov.w $03CB, A\n\n#_1A8732: #_1364: mov.b A, #$3F\n#_1A8734: #_1366: and.w A, $03CD\n#_1A8737: #_1369: mov.w $03CD, A\n\n#_1A873A: #_136C: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleInput_SFX1", + "code": "HandleInput_SFX1:\n#_1A873B: #_136D: mov.b A, $01\n#_1A873D: #_136F: bmi .SFX1_negative\n\n#_1A873F: #_1371: bne InitSFX1\n\n#_1A8741: #_1373: ret\n\n.SFX1_negative\n#_1A8742: #_1374: mov.b $05, A\n\n#_1A8744: #_1376: mov.w A, $03CF\n#_1A8747: #_1379: beq .channels_not_used\n\n#_1A8749: #_137B: mov.b A, #$78\n#_1A874B: #_137D: mov.w $03E4, A\n\n.channels_not_used\n#_1A874E: #_1380: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SFX1_FadeHandler", + "code": "SFX1_FadeHandler:\n#_1A874F: #_1381: dec.w $03E4\n\n#_1A8752: #_1384: mov.w A, $03E4\n#_1A8755: #_1387: bne .still_fading\n\n#_1A8757: #_1389: mov.b A, #$05\n#_1A8759: #_138B: mov.b $01, A\n#_1A875B: #_138D: call InitSFX1_initialize\n\n#_1A875E: #_1390: mov.b A, #$00\n#_1A8760: #_1392: mov.b $01, A\n\n#_1A8762: #_1394: ret\n\n.still_fading\n#_1A8763: #_1395: lsr A\n#_1A8764: #_1396: mov.w $03E5, A\n#_1A8767: #_1399: mov.b Y, #V7VOLL\n#_1A8769: #_139B: call WriteToDSP\n\n#_1A876C: #_139E: inc Y ; V7VOLR\n#_1A876D: #_139F: mov.w A, $03E5\n#_1A8770: #_13A2: call WriteToDSP\n\n#_1A8773: #_13A5: mov.b Y, #V6VOLL\n#_1A8775: #_13A7: mov.w A, $03E5\n#_1A8778: #_13AA: call WriteToDSP\n\n#_1A877B: #_13AD: inc Y ; V6VOLR\n#_1A877C: #_13AE: mov.w A, $03E5\n#_1A877F: #_13B1: call WriteToDSP\n\n#_1A8782: #_13B4: jmp Handle_SFX1_no_fadeout\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleInput_SFX2", + "code": "HandleInput_SFX2:\n#_1A8785: #_13B7: mov.b A, $02\n#_1A8787: #_13B9: bne HandleValidSFX2\n\n#_1A8789: #_13BB: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleInput_SFX3", + "code": "HandleInput_SFX3:\n#_1A878A: #_13BC: mov.b A, $03\n#_1A878C: #_13BE: bne .valid\n\n#_1A878E: #_13C0: ret\n\n.valid\n#_1A878F: #_13C1: mov.b A, #$FF\n#_1A8791: #_13C3: cbne.b $1A, .not_all_muted\n#_1A8794: #_13C6: bra .return\n\n.not_all_muted\n#_1A8796: #_13C8: call SFX3_HandleEcho\n\n#_1A8799: #_13CB: mov.w X, $03C0\n\n#_1A879C: #_13CE: mov.b A, $03\n#_1A879E: #_13D0: and.b A, #$C0\n#_1A87A0: #_13D2: mov.w $03D0+X, A\n\n#_1A87A3: #_13D5: mov.b A, $03\n#_1A87A5: #_13D7: and.b A, #$3F\n#_1A87A7: #_13D9: mov.w $03A0+X, A\n\n#_1A87AA: #_13DC: mov.b A, #$03\n#_1A87AC: #_13DE: mov.w $03A1+X, A\n\n#_1A87AF: #_13E1: mov.b A, #$00\n#_1A87B1: #_13E3: mov.w $0280+X, A\n\n#_1A87B4: #_13E6: mov.w A, $03C1\n#_1A87B7: #_13E9: or.w A, $03CD\n#_1A87BA: #_13EC: mov.w $03CD, A\n\n#_1A87BD: #_13EF: mov.w A, $03C1\n#_1A87C0: #_13F2: mov.b Y, #KOFF\n#_1A87C2: #_13F4: call WriteToDSP\n\n#_1A87C5: #_13F7: mov.w A, $03A0+X\n#_1A87C8: #_13FA: mov X, A\n\n#_1A87C9: #_13FB: mov.w A, SFX3_Accomp-1+X\n#_1A87CC: #_13FE: mov.b $03, A\n#_1A87CE: #_1400: bne .valid\n\n.return\n#_1A87D0: #_1402: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "HandleValidSFX2", + "code": "HandleValidSFX2:\n#_1A87D1: #_1403: mov.b A, #$FF\n#_1A87D3: #_1405: cbne.b $1A, .not_all_muted\n\n#_1A87D6: #_1408: bra .return\n\n.not_all_muted\n#_1A87D8: #_140A: call SFX2_HandleEcho\n\n#_1A87DB: #_140D: mov.w X, $03C0\n\n#_1A87DE: #_1410: mov.b A, $02\n#_1A87E0: #_1412: and.b A, #$3F\n#_1A87E2: #_1414: mov.w $03A0+X, A\n\n#_1A87E5: #_1417: mov.b A, $02\n#_1A87E7: #_1419: and.b A, #$C0\n#_1A87E9: #_141B: mov.w $03D0+X, A\n\n#_1A87EC: #_141E: mov.b A, #$03\n#_1A87EE: #_1420: mov.w $03A1+X, A\n\n#_1A87F1: #_1423: mov.b A, #$00\n#_1A87F3: #_1425: mov.w $0280+X, A\n\n#_1A87F6: #_1428: mov.w A, $03C1\n#_1A87F9: #_142B: or.w A, $03CB\n#_1A87FC: #_142E: mov.w $03CB, A\n\n#_1A87FF: #_1431: mov.w A, $03C1\n#_1A8802: #_1434: mov.b Y, #KOFF\n#_1A8804: #_1436: call WriteToDSP\n\n#_1A8807: #_1439: mov.w A, $03A0+X\n#_1A880A: #_143C: mov X, A\n\n#_1A880B: #_143D: mov.w A, SFX2_Accomp-1+X\n#_1A880E: #_1440: mov.b $02, A\n\n#_1A8810: #_1442: bne HandleValidSFX2\n\n.return\n#_1A8812: #_1444: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Handle_SFX1", + "code": "Handle_SFX1:\n#_1A8813: #_1445: mov.w A, $03E4\n#_1A8816: #_1448: beq .no_fadeout\n\n#_1A8818: #_144A: jmp SFX1_FadeHandler\n\n.no_fadeout\n#_1A881B: #_144D: mov.w A, $03CF\n\n#_1A881E: #_1450: mov.w $03E0, A\n#_1A8821: #_1453: beq .return\n\n#_1A8823: #_1455: mov.b X, #$0E\n#_1A8825: #_1457: mov.b A, #$80\n#_1A8827: #_1459: mov.w $03C1, A\n\n.next_channel\n#_1A882A: #_145C: asl.w $03E0\n#_1A882D: #_145F: bcc .unused_channel\n\n#_1A882F: #_1461: mov.w $03C0, X\n\n#_1A8832: #_1464: mov A, X\n#_1A8833: #_1465: xcn A\n#_1A8834: #_1466: lsr A\n#_1A8835: #_1467: mov.w $03C2, A\n\n#_1A8838: #_146A: mov.w A, $03D0+X\n#_1A883B: #_146D: mov.b $20, A\n\n#_1A883D: #_146F: mov.w A, $03A1+X\n#_1A8840: #_1472: bne .delayed\n\n#_1A8842: #_1474: mov.w A, $03A0+X\n#_1A8845: #_1477: beq .unused_channel\n\n#_1A8847: #_1479: jmp SFXControl\n\n.unused_channel\n#_1A884A: #_147C: lsr.w $03C1\n\n#_1A884D: #_147F: dec X\n#_1A884E: #_1480: dec X\n\n#_1A884F: #_1481: cmp.b X, #$0A\n#_1A8851: #_1483: bpl .next_channel\n\n; ---------------------------------------------------------\n\n.return\n#_1A8853: #_1485: ret\n\n.delayed\n#_1A8854: #_1486: mov.w $03C0, X\n\n#_1A8857: #_1489: mov.w A, $03A1+X\n#_1A885A: #_148C: dec A\n#_1A885B: #_148D: mov.w $03A1+X, A\n\n#_1A885E: #_1490: beq .initialize\n\n#_1A8860: #_1492: jmp .unused_channel\n\n.initialize\n#_1A8863: #_1495: mov.w A, $03A0+X\n#_1A8866: #_1498: asl A\n#_1A8867: #_1499: mov Y, A\n\n#_1A8868: #_149A: mov.w A, SFX1_Pointers-1+Y\n#_1A886B: #_149D: mov.w $0391+X, A\n#_1A886E: #_14A0: mov.b $2D, A\n\n#_1A8870: #_14A2: mov.w A, SFX1_Pointers-2+Y\n#_1A8873: #_14A5: mov.w $0390+X, A\n#_1A8876: #_14A8: mov.b $2C, A\n\n#_1A8878: #_14AA: jmp SFXControl_process_byte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Handle_SFX2", + "code": "Handle_SFX2:\n#_1A887B: #_14AD: mov.w A, $03CB\n#_1A887E: #_14B0: mov.w $03CC, A\n#_1A8881: #_14B3: beq .return\n\n#_1A8883: #_14B5: mov.b X, #$0E\n#_1A8885: #_14B7: mov.b A, #$80\n#_1A8887: #_14B9: mov.w $03C1, A\n\n.loop\n#_1A888A: #_14BC: asl.w $03CC\n#_1A888D: #_14BF: bcc .next_channel\n\n#_1A888F: #_14C1: mov.w $03C0, X\n#_1A8892: #_14C4: mov A, X\n#_1A8893: #_14C5: xcn A\n#_1A8894: #_14C6: lsr A\n#_1A8895: #_14C7: mov.w $03C2, A\n\n#_1A8898: #_14CA: mov.w A, $03D0+X\n#_1A889B: #_14CD: mov.b $20, A\n\n#_1A889D: #_14CF: mov.w A, $03A1+X\n#_1A88A0: #_14D2: bne .delayed\n\n#_1A88A2: #_14D4: mov.w A, $03A0+X\n#_1A88A5: #_14D7: beq .next_channel\n#_1A88A7: #_14D9: jmp SFXControl\n\n.next_channel\n#_1A88AA: #_14DC: lsr.w $03C1\n#_1A88AD: #_14DF: dec X\n#_1A88AE: #_14E0: dec X\n#_1A88AF: #_14E1: bpl .loop\n\n.return\n#_1A88B1: #_14E3: ret\n\n.delayed\n#_1A88B2: #_14E4: mov.w $03C0, X\n\n#_1A88B5: #_14E7: mov.w A, $03A1+X\n#_1A88B8: #_14EA: dec A\n#_1A88B9: #_14EB: mov.w $03A1+X, A\n#_1A88BC: #_14EE: beq .initialize\n\n#_1A88BE: #_14F0: jmp .next_channel\n\n.initialize\n#_1A88C1: #_14F3: mov.w A, $03A0+X\n#_1A88C4: #_14F6: asl A\n#_1A88C5: #_14F7: mov Y, A\n\n#_1A88C6: #_14F8: mov.w A, SFX2_Pointers-1+Y\n#_1A88C9: #_14FB: mov.w $0391+X, A\n#_1A88CC: #_14FE: mov.b $2D, A\n\n#_1A88CE: #_1500: mov.w A, SFX2_Pointers-2+Y\n#_1A88D1: #_1503: mov.w $0390+X, A\n#_1A88D4: #_1506: mov.b $2C, A\n\n#_1A88D6: #_1508: jmp SFXControl_process_byte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "Handle_SFX3", + "code": "Handle_SFX3:\n#_1A88D9: #_150B: mov.w A, $03CD\n#_1A88DC: #_150E: mov.w $03CE, A\n#_1A88DF: #_1511: beq .return\n\n#_1A88E1: #_1513: mov.b X, #$0E\n#_1A88E3: #_1515: mov.b A, #$80\n#_1A88E5: #_1517: mov.w $03C1, A\n\n.next_channel\n#_1A88E8: #_151A: asl.w $03CE\n#_1A88EB: #_151D: bcc .inactive_channel\n\n#_1A88ED: #_151F: mov.w $03C0, X\n#_1A88F0: #_1522: mov A, X\n#_1A88F1: #_1523: xcn A\n#_1A88F2: #_1524: lsr A\n#_1A88F3: #_1525: mov.w $03C2, A\n\n#_1A88F6: #_1528: mov.w A, $03D0+X\n#_1A88F9: #_152B: mov.b $20, A\n\n#_1A88FB: #_152D: mov.w A, $03A1+X\n#_1A88FE: #_1530: bne .delayed\n\n#_1A8900: #_1532: mov.w A, $03A0+X\n#_1A8903: #_1535: beq .inactive_channel\n\n#_1A8905: #_1537: jmp SFXControl\n\n.inactive_channel\n#_1A8908: #_153A: lsr.w $03C1\n#_1A890B: #_153D: dec X\n#_1A890C: #_153E: dec X\n#_1A890D: #_153F: bpl .next_channel\n\n.return\n#_1A890F: #_1541: ret\n\n.delayed\n#_1A8910: #_1542: mov.w $03C0, X\n\n#_1A8913: #_1545: mov.w A, $03A1+X\n#_1A8916: #_1548: dec A\n#_1A8917: #_1549: mov.w $03A1+X, A\n\n#_1A891A: #_154C: beq .initialize\n#_1A891C: #_154E: jmp .inactive_channel\n\n.initialize\n#_1A891F: #_1551: mov.w A, $03A0+X\n#_1A8922: #_1554: asl A\n#_1A8923: #_1555: mov Y, A\n\n#_1A8924: #_1556: mov.w A, SFX3_Pointers-1+Y\n#_1A8927: #_1559: mov.w $0391+X, A\n#_1A892A: #_155C: mov.b $2D, A\n\n#_1A892C: #_155E: mov.w A, SFX3_Pointers-2+Y\n#_1A892F: #_1561: mov.w $0390+X, A\n#_1A8932: #_1564: mov.b $2C, A\n\n#_1A8934: #_1566: jmp SFXControl_process_byte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "ResumeMusic", + "code": "ResumeMusic:\n#_1A8937: #_1569: mov.b A, #$00\n#_1A8939: #_156B: mov.w X, $03C0\n#_1A893C: #_156E: mov.w $03A0+X, A\n\n#_1A893F: #_1571: mov.b A, $1A\n#_1A8941: #_1573: setc\n#_1A8942: #_1574: sbc.w A, $03C1\n#_1A8945: #_1577: mov.b $1A, A\n\n#_1A8947: #_1579: mov.w A, $03C1\n#_1A894A: #_157C: and.w A, $03CB\n#_1A894D: #_157F: beq .not_on_SFX_2\n\n#_1A894F: #_1581: mov.w A, $03CB\n#_1A8952: #_1584: setc\n#_1A8953: #_1585: sbc.w A, $03C1\n#_1A8956: #_1588: mov.w $03CB, A\n\n#_1A8959: #_158B: bra .resume\n\n.not_on_SFX_2\n#_1A895B: #_158D: mov.w A, $03C1\n#_1A895E: #_1590: and.w A, $03CD\n#_1A8961: #_1593: beq .not_on_SFX_3\n\n#_1A8963: #_1595: mov.w A, $03CD\n#_1A8966: #_1598: setc\n#_1A8967: #_1599: sbc.w A, $03C1\n#_1A896A: #_159C: mov.w $03CD, A\n\n#_1A896D: #_159F: bra .resume\n\n.not_on_SFX_3\n#_1A896F: #_15A1: mov.w A, $03CF\n#_1A8972: #_15A4: setc\n#_1A8973: #_15A5: sbc.w A, $03C1\n#_1A8976: #_15A8: mov.w $03CF, A\n\n.resume\n#_1A8979: #_15AB: mov.b $44, X\n#_1A897B: #_15AD: mov.w A, $0211+X\n#_1A897E: #_15B0: call TrackCommand_E0_ChangeInstrument\n\n#_1A8981: #_15B3: mov.w A, $03C1\n#_1A8984: #_15B6: and.w A, $03C3\n#_1A8987: #_15B9: beq .return\n\n#_1A8989: #_15BB: and.b A, $4A\n#_1A898B: #_15BD: bne .return\n\n#_1A898D: #_15BF: mov.b A, $4A\n#_1A898F: #_15C1: clrc\n#_1A8990: #_15C2: adc.w A, $03C1\n#_1A8993: #_15C5: mov.b $4A, A\n\n#_1A8995: #_15C7: mov.b Y, #EON\n#_1A8997: #_15C9: call WriteToDSP\n\n#_1A899A: #_15CC: mov.w A, $03E3\n#_1A899D: #_15CF: setc\n#_1A899E: #_15D0: sbc.w A, $03C1\n#_1A89A1: #_15D3: mov.w $03E3, A\n\n.return\n#_1A89A4: #_15D6: mov.w X, $03C0\n\n#_1A89A7: #_15D9: ret\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "DisableSFX", + "code": "DisableSFX:\n#_1A89A8: #_15DA: mov.w A, $03C1\n#_1A89AB: #_15DD: and.w A, $03CF\n#_1A89AE: #_15E0: bne .used_by_SFX_1\n\n#_1A89B0: #_15E2: mov.w A, $03C1\n#_1A89B3: #_15E5: and.w A, $03CB\n#_1A89B6: #_15E8: bne .used_by_SFX_2\n\n#_1A89B8: #_15EA: call ResumeMusic\n#_1A89BB: #_15ED: jmp Handle_SFX3_inactive_channel\n\n.used_by_SFX_1\n#_1A89BE: #_15F0: call ResumeMusic\n#_1A89C1: #_15F3: jmp Handle_SFX1_unused_channel\n\n.used_by_SFX_2\n#_1A89C4: #_15F6: call ResumeMusic\n#_1A89C7: #_15F9: jmp Handle_SFX2_next_channel\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "SFXControl", + "code": "SFXControl:\n#_1A89CA: #_15FC: call SFX3_HandleEcho_disabled\n\n#_1A89CD: #_15FF: mov.w $03C0, X\n#_1A89D0: #_1602: mov.w A, $0391+X\n#_1A89D3: #_1605: mov Y, A\n\n#_1A89D4: #_1606: mov.w A, $0390+X\n#_1A89D7: #_1609: movw.b $2C, YA\n\n#_1A89D9: #_160B: mov.w A, $03B0+X\n#_1A89DC: #_160E: dec A\n#_1A89DD: #_160F: mov.w $03B0+X, A\n\n#_1A89E0: #_1612: beq .next_byte\n#_1A89E2: #_1614: jmp .do_pitch_slide\n\n.next_byte\n#_1A89E5: #_1617: incw.b $2C\n\n.process_byte\n#_1A89E7: #_1619: mov.w A, $03C0\n#_1A89EA: #_161C: xcn A\n#_1A89EB: #_161D: lsr A\n#_1A89EC: #_161E: mov.w $03C2, A\n\n#_1A89EF: #_1621: mov.b X, #$00\n#_1A89F1: #_1623: mov.b A, ($2C+X)\n\n#_1A89F3: #_1625: beq DisableSFX\n#_1A89F5: #_1627: bmi .note_or_command\n\n#_1A89F7: #_1629: mov.w Y, $03C0\n#_1A89FA: #_162C: mov.w $03B1+Y, A\n\n#_1A89FD: #_162F: incw.b $2C\n#_1A89FF: #_1631: mov.b A, ($2C+X)\n#_1A8A01: #_1633: mov.b $10, A\n#_1A8A03: #_1635: bmi .note_or_command\n\n#_1A8A05: #_1637: mov X, A\n#_1A8A06: #_1638: mov.w A, $03C1\n#_1A8A09: #_163B: and.w A, $03CF\n#_1A8A0C: #_163E: beq .not_SFX_1\n\n#_1A8A0E: #_1640: mov A, X\n#_1A8A0F: #_1641: beq .zero_byte\n\n#_1A8A11: #_1643: mov.w X, $03E5\n#_1A8A14: #_1646: bne .next_byte_2\n\n.zero_byte\n#_1A8A16: #_1648: mov.b $10, A\n#_1A8A18: #_164A: mov.w Y, $03C2\n#_1A8A1B: #_164D: call WriteToDSP\n\n#_1A8A1E: #_1650: mov.b X, #$00\n#_1A8A20: #_1652: incw.b $2C\n#_1A8A22: #_1654: mov.b A, ($2C+X)\n#_1A8A24: #_1656: bpl .volume_command\n\n#_1A8A26: #_1658: mov X, A\n#_1A8A27: #_1659: mov.b A, $10\n#_1A8A29: #_165B: mov.w Y, $03C2\n#_1A8A2C: #_165E: inc Y\n#_1A8A2D: #_165F: call WriteToDSP\n\n#_1A8A30: #_1662: mov A, X\n#_1A8A31: #_1663: bra .note_or_command\n\n.volume_command\n#_1A8A33: #_1665: mov.w Y, $03C2\n#_1A8A36: #_1668: inc Y\n#_1A8A37: #_1669: call WriteToDSP\n\n#_1A8A3A: #_166C: bra .next_byte_2\n\n.not_SFX_1\n#_1A8A3C: #_166E: mov A, X\n#_1A8A3D: #_166F: mov.w X, $03C0\n\n#_1A8A40: #_1672: asl A\n#_1A8A41: #_1673: mov.w $0321+X, A\n\n#_1A8A44: #_1676: mov.b A, #$0A\n#_1A8A46: #_1678: mov.w $0351+X, A\n\n#_1A8A49: #_167B: bbs7.b $20, .left_pan\n#_1A8A4C: #_167E: bbs6.b $20, .right_pan\n\n#_1A8A4F: #_1681: mov.b $11, #$0A\n#_1A8A52: #_1684: bne .set_pan\n\n.left_pan\n#_1A8A54: #_1686: mov.b $11, #$10\n#_1A8A57: #_1689: bne .set_pan\n\n.right_pan\n#_1A8A59: #_168B: mov.b $11, #$04\n\n.set_pan\n#_1A8A5C: #_168E: mov.b $10, #$00\n#_1A8A5F: #_1691: call WritePitch_external\n\n#_1A8A62: #_1694: mov.b X, #$00\n\n.next_byte_2\n#_1A8A64: #_1696: incw.b $2C\n#_1A8A66: #_1698: mov.b A, ($2C+X)\n\n.note_or_command\n#_1A8A68: #_169A: cmp.b A, #$E0 ; instrument change\n#_1A8A6A: #_169C: bne .not_instrument_change\n\n#_1A8A6C: #_169E: jmp .change_instrument\n\n.not_instrument_change\n#_1A8A6F: #_16A1: cmp.b A, #$F9 ; slide once\n#_1A8A71: #_16A3: beq .pitch_slide_command\n\n#_1A8A73: #_16A5: cmp.b A, #$F1 ; slide to\n#_1A8A75: #_16A7: beq .pitch_slide_to_command\n\n#_1A8A77: #_16A9: cmp.b A, #$FF ; SFX loop trigger\n#_1A8A79: #_16AB: bne .not_loop\n\n#_1A8A7B: #_16AD: mov.w X, $03C0\n#_1A8A7E: #_16B0: jmp Handle_SFX1_initialize\n\n.not_loop\n#_1A8A81: #_16B3: mov.w X, $03C0\n#_1A8A84: #_16B6: mov Y, A\n#_1A8A85: #_16B7: call HandleNote\n\n#_1A8A88: #_16BA: mov.w A, $03C1\n#_1A8A8B: #_16BD: call KeyOnChannels\n\n.setup_pitch_slide\n#_1A8A8E: #_16C0: mov.w X, $03C0\n\n#_1A8A91: #_16C3: mov.w A, $03B1+X\n#_1A8A94: #_16C6: mov.w $03B0+X, A\n\n.do_pitch_slide\n#_1A8A97: #_16C9: clr7.b $13\n\n#_1A8A99: #_16CB: mov.w X, $03C0\n#_1A8A9C: #_16CE: mov.b A, $A0+X\n#_1A8A9E: #_16D0: beq .no_pitch_slide\n\n#_1A8AA0: #_16D2: call PitchSlideSFX\n#_1A8AA3: #_16D5: bra .dont_key_off\n\n.no_pitch_slide\n#_1A8AA5: #_16D7: mov.b A, #$02\n#_1A8AA7: #_16D9: cmp.w A, $03B0+X\n#_1A8AAA: #_16DC: bne .dont_key_off\n\n#_1A8AAC: #_16DE: mov.w A, $03C1\n#_1A8AAF: #_16E1: mov.b Y, #KOFF\n#_1A8AB1: #_16E3: call WriteToDSP\n\n.dont_key_off\n#_1A8AB4: #_16E6: mov.w X, $03C0\n\n#_1A8AB7: #_16E9: mov.b A, $2D\n#_1A8AB9: #_16EB: mov.w $0391+X, A\n\n#_1A8ABC: #_16EE: mov.b A, $2C\n#_1A8ABE: #_16F0: mov.w $0390+X, A\n\n#_1A8AC1: #_16F3: mov.w A, $03C1\n#_1A8AC4: #_16F6: and.w A, $03CF\n#_1A8AC7: #_16F9: bne .on_SFX_1\n\n#_1A8AC9: #_16FB: mov.w A, $03C1\n#_1A8ACC: #_16FE: and.w A, $03CB\n#_1A8ACF: #_1701: bne .on_SFX_2\n#_1A8AD1: #_1703: jmp Handle_SFX3_inactive_channel\n\n.on_SFX_1\n#_1A8AD4: #_1706: jmp Handle_SFX1_unused_channel\n\n.on_SFX_2\n#_1A8AD7: #_1709: jmp Handle_SFX2_next_channel\n\n; ---------------------------------------------------------\n\n.pitch_slide_command\n#_1A8ADA: #_170C: mov.b X, #$00\n#_1A8ADC: #_170E: incw.b $2C\n#_1A8ADE: #_1710: mov.b A, ($2C+X)\n\n#_1A8AE0: #_1712: mov.w X, $03C0\n\n#_1A8AE3: #_1715: mov.b $44, X\n#_1A8AE5: #_1717: mov Y, A\n#_1A8AE6: #_1718: call HandleNote\n\n#_1A8AE9: #_171B: mov.w A, $03C1\n#_1A8AEC: #_171E: call KeyOnChannels\n\n; ---------------------------------------------------------\n\n.pitch_slide_to_command\n#_1A8AEF: #_1721: mov.b X, #$00\n#_1A8AF1: #_1723: incw.b $2C\n#_1A8AF3: #_1725: mov.b A, ($2C+X)\n\n#_1A8AF5: #_1727: mov.w X, $03C0\n\n#_1A8AF8: #_172A: mov.b $A1+X, A\n#_1A8AFA: #_172C: mov.b X, #$00\n\n#_1A8AFC: #_172E: incw.b $2C\n#_1A8AFE: #_1730: mov.b A, ($2C+X)\n#_1A8B00: #_1732: mov.w X, $03C0\n\n#_1A8B03: #_1735: mov.b $A0+X, A\n#_1A8B05: #_1737: push A\n\n#_1A8B06: #_1738: mov.b X, #$00\n#_1A8B08: #_173A: incw.b $2C\n#_1A8B0A: #_173C: mov.b A, ($2C+X)\n\n#_1A8B0C: #_173E: pop Y\n#_1A8B0D: #_173F: mov.w X, $03C0\n#_1A8B10: #_1742: mov.b $44, X\n\n#_1A8B12: #_1744: call PitchSlide_calc_frames\n\n#_1A8B15: #_1747: jmp .setup_pitch_slide\n\n; ---------------------------------------------------------\n\n.change_instrument\n#_1A8B18: #_174A: mov.b X, #$00\n#_1A8B1A: #_174C: incw.b $2C\n#_1A8B1C: #_174E: mov.b A, ($2C+X)\n\n#_1A8B1E: #_1750: mov.b Y, #$09\n#_1A8B20: #_1752: mul YA\n#_1A8B21: #_1753: mov X, A\n\n#_1A8B22: #_1754: mov.w Y, $03C2\n#_1A8B25: #_1757: mov.b $12, #$08\n\n.write_loop\n#_1A8B28: #_175A: mov.w A, INSTRUMENT_DATA_SFX+X\n#_1A8B2B: #_175D: call WriteToDSP\n\n#_1A8B2E: #_1760: inc X\n#_1A8B2F: #_1761: inc Y\n#_1A8B30: #_1762: dbnz.b $12, .write_loop\n\n#_1A8B33: #_1765: mov.w A, INSTRUMENT_DATA_SFX+X\n\n#_1A8B36: #_1768: mov.w Y, $03C0\n#_1A8B39: #_176B: mov.w $0221+Y, A\n\n#_1A8B3C: #_176E: mov.b A, #$00\n#_1A8B3E: #_1770: mov.w $0220+Y, A\n\n#_1A8B41: #_1773: jmp .next_byte\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "PitchSlideSFX", + "code": "PitchSlideSFX:\n#_1A8B44: #_1776: set7.b $13\n\n#_1A8B46: #_1778: mov.b A, #$0360>>0\n#_1A8B48: #_177A: mov.b Y, #$0360>>8\n\n#_1A8B4A: #_177C: dec.b $A0+X\n#_1A8B4C: #_177E: call IncrementSlide_quiet\n\n#_1A8B4F: #_1781: mov.w A, $0361+X\n#_1A8B52: #_1784: mov Y, A\n#_1A8B53: #_1785: mov.w A, $0360+X\n#_1A8B56: #_1788: movw.b $10, YA\n\n#_1A8B58: #_178A: mov.b $47, #$00\n#_1A8B5B: #_178D: jmp HandleNote_external\n\n; =========================================================\n", + "file": "spc.asm" + }, + { + "name": "LinkItem_JumpFeather", + "code": "LinkItem_JumpFeather:\n{\n JSL Link_ResetSwimmingState\n LDA $46 : BNE .cant_use_it\n LDA #$02 : STA $5D ; set link state recoil\n LDA #$02 : STA $4D ; set jumping state (ledge hop)\n LDA #$20 : STA $46 ; length of the jump\n LDA #$24 ; Height of the jump\n\n ; Set vertical resistance\n STA $29\n STA $02C7\n\n ; Set Links direction to right(?)\n LDA #$08 : STA $0340 : STA $67\n\n ; Reset Link movement offsets\n STZ $31 : STZ $30\n\n LDA $F4 : AND #$08 : BEQ .no_up\n LDA #-8\n STA $27 ; Vertical recoil\n .no_up\n LDA $F4 : AND #$04 : BEQ .no_down\n LDA #8\n STA $27\n .no_down\n LDA $F4 : AND #$02 : BEQ .no_left\n LDA #-8\n STA $28 ; Horizontal recoil\n .no_left\n LDA $F4 : AND #$01 : BEQ .no_right\n LDA #8\n STA $28\n .no_right\n .cant_use_it\n RTL", + "file": "jump_feather.asm" + }, + { + "name": "CheckIfJumpingForSpikeDamage", + "code": "CheckIfJumpingForSpikeDamage:\n{\n PHB : PHK : PLB\n ; Check Z pos of Link\n LDA $5D : CMP.b #$02 : BEQ .airborne\n LDA.w .spike_floor_damage, Y : STA.w $0373\n .airborne\n PLB\n RTL", + "file": "jump_feather.asm" + }, + { + "name": "LinkItem_NewBottle", + "code": "LinkItem_NewBottle:\n{\n ; Check if we have a bottle or not\n LDA.l BottleIndex : DEC A : TAX\n LDA.l Bottle1, X : BEQ .exit\n\n ; Check if the bottle is empty\n CMP.b #$03 : BCC .empty_bottle\n\n ; Confirm we aren't currently catching\n LDA $030D : BNE .empty_bottle\n\n ; If no, prepare and call the LinkItem_Bottles routine\n JSR LinkItem_Bottles\n BRA .exit\n\n .empty_bottle\n ; Otherwise, prepare and call the LinkItem_BugCatchingNet routine\n JSR LinkItem_CatchBottle\n\n .exit\n RTS", + "file": "bottle_net.asm" + }, + { + "name": "pose_id", + "code": "pose_id:\n db $0B, $06, $07, $08, $01, $02, $03, $04, $05, $06 ; up\n db $01, $02, $03, $04, $05, $06, $07, $08, $01, $02 ; down\n db $09, $04, $05, $06, $07, $08, $01, $02, $03, $04 ; left\n db $0A, $08, $01, $02, $03, $04, $05, $06, $07, $08 ; right\n", + "file": "bottle_net.asm" + }, + { + "name": "pose_offset", + "code": "pose_offset:\n db $00 ; up\n db $0A ; down\n db $14 ; left\n db $1E ; right\n\n; *$3AFF8-$3B072 LOCAL", + "file": "bottle_net.asm" + }, + { + "name": "LinkItem_CatchBottle", + "code": "LinkItem_CatchBottle:\n{\n BIT $3A : BVS .y_press\n LDA $6C : BNE .bottle_exit ; (RTS)", + "file": "bottle_net.asm" + }, + { + "name": "NetExit", + "code": " NetExit:\n RTS", + "file": "bottle_net.asm" + }, + { + "name": "LinkItem_Bottles", + "code": "LinkItem_Bottles:\n{\n JSR Link_CheckNewY_ButtonPress : BCC NetExit ; (RTS)", + "file": "bottle_net.asm" + }, + { + "name": "LinkGoBeep", + "code": "LinkGoBeep:\n{\n LDA.b #$3C : JSR Player_DoSfx2\n BRA LinkItem_Bottles_bottle_exit\n}\n", + "file": "bottle_net.asm" + }, + { + "name": "Bottle_DrinkMilk", + "code": "Bottle_DrinkMilk:\n{\n LDA.b #$28 : STA.l $7EF372 ; Heal 5 hearts\n LDA.b #$02 : STA.l $7EF35C, X : STZ.w $0301\n RTL", + "file": "bottle_net.asm" + }, + { + "name": "LinkItem_FishingRodAndPortalRod", + "code": "LinkItem_FishingRodAndPortalRod:\n{\n ; If the sram slot is 02, we can swap between the fishing rod and the portal rod\n LDA.l $7EF351 : CMP.b #$02 : BEQ +\n JSL LinkItem_FishingRod\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "FishingRodExit", + "code": "FishingRodExit:\n PLB\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "LinkItem_FishingRod", + "code": "LinkItem_FishingRod:\n{\n PHB : PHK : PLB\n\n BIT.b $3A : BVS .holding_y\n LDA.b $6C : BNE FishingRodExit\n JSR CheckYButtonPress : BCC FishingRodExit\n\n LDA.b $67 : AND.b #$F0 : STA.b $67\n\n JSL FishingSwapCaneBlockHammerGfx\n\n STZ.b $69\n STZ.b $68\n LDA.b #$08\n TSB.w $037A\n STZ.b $2E\n STZ.w $0300\n STZ.w $0301\n\n LDA.w RodAndCaneAnimationTimer : STA.b $3D\n\n .holding_y\n JSR HaltLinkWhenUsingItems\n LDA.b #$26 : STA.w $0107 ; Sword DMA to Floater Hammer\n\n LDA.w $0300 : CMP #$02 : BEQ +\n DEC.b $3D ; decrease timer\n BPL FishingRodExit\n +\n\n LDA.l $7F5BA2 : CMP #$02 : BNE +\n JMP EndFishing\n +\n CMP #$01 : BEQ .waitforend\n\n LDA.w $0300 ; animation state\n INC A\n STA.w $0300\n\n TAX\n\n ; load timer for current frame animation state\n LDA.w RodAndCaneAnimationTimer, X : STA.b $3D ; timer\n CPX.b #$01 : BNE +\n ; spawn floaters\n PHX\n LDA.b #$2D\n JSL Sprite_SpawnDynamically\n\n LDA.b $22 : STA.w SprX, Y\n LDA.b $23 : STA.w SprXH, Y\n LDA.b $20 : STA.w SprY, Y\n LDA.b $21 : STA.w SprYH, Y\n LDA.b #$01 : STA.w SprCollision, Y ; is floater\n TYA : STA.l $7F5BA3 ; keep the index of the sprite\n TYX\n JSL SpritePrep_Floater ; just call it there\n PLX\n +\n CPX.b #$02 : BCC .exit\n LDA #$01 : STA.l $7F5BA2 ; set fishing rod state to rod is out\n LDA.b #$FE : STA $3D ;set timer to 8 frames\n ; wait for Y press\n .waitforend\n\n LDA.b $F4 : AND #$40 : BEQ .exit\n LDA.b #$08 : STA $3D ;set timer to 8 frames\n STZ.w $0300 ; set animation frame to 0 (pull back)\n LDA.l $7F5BA3 : TAX\n\n LDY.b $66\n LDA.w DirSpeedsY, Y : STA.w SprYSpeed, X ; YSpeed\n LDA.w DirSpeedsX, Y : STA.w SprXSpeed, X ; YSpeed\n .BringBackFloater\n LDA.b #$10 : STA.w $0F80, X ; Gravity\n\n\n ; =======================================================\n ; We got something spawn it and pull it at us\n LDA.w SprMiscB, X : BEQ .noPrize\n JSL GetRandomInt : AND #$0F : TAY : LDA Prizes, Y : BEQ .noPrize\n JSL Sprite_SpawnDynamically\n JSL Sprite_SetSpawnedCoordinates\n\n LDA.w $0E20, Y : CMP.b #$D2 : BNE .notafish\n LDA #$04 : STA.w SprHeight, Y\n LDA #$01 : STA.w $0D80, Y\n .notafish\n\n PHX\n LDX.b $66\n LDA.w DirSpeedsY, X : STA.w SprYSpeed, Y ; YSpeed\n LDA.w DirSpeedsX, X : STA.w SprXSpeed, Y ; YSpeed\n\n PLX\n LDA.b #$FF : STA.w SprTimerD, Y\n LDA.b #$20 : STA.w $0F80, Y ; Gravity\n ;LDA.b #$06 : STA.w SprHeight, Y\n\n .noPrize\n LDA.b #$02 : STA.l $7F5BA2 ; set fishing rod state to pulling back\n\n\n .exit\n PLB\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "EndFishing", + "code": "EndFishing:\n{\n LDA #$00\n STA.l $7F5BA2\n LDA.l $7F5BA3 : TAX\n STZ.w SprState, X\n STZ.b $5E\n STZ.w $0300\n STZ.b $3D\n STZ.w $0350\n STZ.w $037A\n LDA.b $3A\n AND.b #$BF\n STA.b $3A\n JSL RestoreCaneBlockHammerGfx\n PLB\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "RodAndCaneAnimationTimer", + "code": "RodAndCaneAnimationTimer:\n db $0A, $05, $2A\n", + "file": "fishing_rod.asm" + }, + { + "name": "DirSpeedsX", + "code": "DirSpeedsX:\n db $00, $00, $20, $DF", + "file": "fishing_rod.asm" + }, + { + "name": "DirSpeedsY", + "code": "DirSpeedsY:\n db $20, $DF, $00, $00\n", + "file": "fishing_rod.asm" + }, + { + "name": "Prizes", + "code": "Prizes:\n db $D8, $D2, $D2, $D2, $D9, $DA, $DB, $DC, $DF, $E0, $E1, $D9, $D9, $DA, $D9, $DA\n\n\n;assert pc() <= $07A64A\n\n", + "file": "fishing_rod.asm" + }, + { + "name": "fishingrodgfx", + "code": "fishingrodgfx:\n incbin gfx/fishingrod.bin", + "file": "fishing_rod.asm" + }, + { + "name": "blockgfx", + "code": "blockgfx:\n incbin gfx/blockgfx.bin", + "file": "fishing_rod.asm" + }, + { + "name": "canegfx", + "code": "canegfx:\n incbin gfx/canegfx.bin", + "file": "fishing_rod.asm" + }, + { + "name": "floatergfx", + "code": "floatergfx:\n incbin gfx/floatergfx.bin", + "file": "fishing_rod.asm" + }, + { + "name": "hammergfx", + "code": "hammergfx:\n incbin gfx/hammergfx.bin\n\n", + "file": "fishing_rod.asm" + }, + { + "name": "CheckYButtonPress", + "code": "CheckYButtonPress:\n{\n BIT.b $3A : BVS .fail\n LDA.b $46 : BNE .fail\n LDA.b $F4 : AND.b #$40 : BEQ .fail\n TSB.b $3A\n SEC\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "HaltLinkWhenUsingItems", + "code": "HaltLinkWhenUsingItems:\n{\n LDA.b $AD : CMP.b #$02 : BNE .skip\n LDA.w $0322 : AND.b #$03 : CMP.b #$03 : BNE .skip\n STZ.b $30\n STZ.b $31\n STZ.b $67\n STZ.b $2A\n STZ.b $2B\n STZ.b $6B\n\n .skip\n LDA.w $02F5 : BEQ .return\n STZ.b $67\n .return\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "FishingSwapCaneBlockHammerGfx", + "code": "FishingSwapCaneBlockHammerGfx:\n{\n PHX ; keep X\n PHP ; keep processor byte\n\n REP #$30 ; 16bit is a bit faster\n\n LDX #$01BE\n --\n LDA.l fishingrodgfx, X : STA.l $7E9F40, X\n LDA.l floatergfx, X : STA.l $7EA480, X\n DEX : DEX\n BPL --\n\n PLP\n PLX\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "RestoreCaneBlockHammerGfx", + "code": "RestoreCaneBlockHammerGfx:\n{\n PHX ; keep X\n PHP ; keep processor byte\n\n REP #$30 ; 16bit is a bit faster\n\n LDX #$01BE\n --\n LDA.l canegfx, X : STA.l $7E9F40, X\n LDA.l blockgfx, X : STA.l $7EA480, X\n LDA.l hammergfx, X : STA.l $7E9640, X\n DEX : DEX\n BPL --\n\n PLP\n PLX\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "FloaterBoySpriteCheck", + "code": "FloaterBoySpriteCheck:\n{\n PHB : PHK : PLB\n JSR Sprite_Floater\n PLB\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "Sprite_CheckIfActive", + "code": "Sprite_CheckIfActive:\n{\n LDA.w SprFreeze ; Remove that if want to be able to pause all other sprites\n BNE .inactive\n\n LDA.b $11\n BNE .inactive\n\n LDA.w SprDefl, X\n BMI .active\n\n LDA.w $0F00, X\n BEQ .active\n\n .inactive\n PLA\n PLA\n\n .active\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "SpritePrep_Floater", + "code": "SpritePrep_Floater:\n{\n LDA.b $66 : CMP.b #$03 : BNE .notRight\n LDA.b #$12 : STA.w SprXSpeed, X ; XSpeed\n BRA .DoInitFloater\n .notRight\n CMP.b #$02 : BNE .notLeft\n LDA.b #$ED : STA.w SprXSpeed, X ; XSpeed\n BRA .DoInitFloater\n .notLeft\n CMP.b #$01 : BNE .notDown\n LDA.b #$12 : STA.w SprYSpeed, X ; YSpeed\n BRA .DoInitFloater\n .notDown\n CMP.b #$00 : BNE .notUp\n LDA.b #$ED : STA.w SprYSpeed, X ; YSpeed\n BRA .DoInitFloater\n .notUp\n\n .DoInitFloater\n\n LDA.b #$08 : STA.w SprHeight, X ; Height\n LDA.b #$10 : STA.w $0F80, X ; Gravity\n LDA.b #$00 : STA.w SprMiscG, X ; is it in water?\n LDA.b #$00 : STA.w SprMiscE, X ; Wiggling Velocity index\n LDA.b #$00 : STA.w SprMiscD, X ; just for a check\n LDA.b #$00 : STA.w SprMiscB, X ; if we have a fish on line\n\n ;SprTimerD Timer for when floater is in water waiting for a fish to catch\n\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "Sprite_Floater", + "code": "Sprite_Floater:\n{\n ; Floater Draw, allocate 4 tiles to use for the hud\n LDA.w SprMiscG, X : BEQ +\n JSL Sprite_DrawWaterRipple\n +\n JSR Sprite_Floater_Draw\n\n LDA.w SprMiscG, X : BNE +\n JSL Sprite_DrawShadow\n +\n\n JSR Sprite_CheckIfActive\n\n LDA.w SprMiscG, X : BEQ .noFishOnLine ; is the floater in water?\n\n LDA.w SprTimerD, X : BNE .noWigglingYet ; timerD wait until fish is on line\n\n LDA.w SprMiscB, X : BNE .fishOnlineWait\n ; start another random timer for the time it'll last\n JSL GetRandomInt : AND #$3F\n CLC : ADC.b #$0F : STA.w SprTimerA, X ; wiggling timer\n INC.w SprMiscB, X ; we have a fish on line\n\n .noWigglingYet\n\n LDA.w SprMiscB, X : BEQ .noFishOnLine ; do we already have a fish on line?\n .fishOnlineWait\n LDA.w SprTimerA, X : BNE .still_wiggling\n STZ.w SprMiscB, X ; no more fish on line took too much time\n JSL GetRandomInt : AND.b #$7F\n CLC : ADC.b #$7F : STA.w SprTimerD, X ; reset timer wait until fish is on line\n STZ.w SprXSpeed, X\n STZ.w SprYSpeed, X\n BRA .noFishOnLine\n .still_wiggling\n\n\n LDY.w SprTimerC, X\n LDA.w WigglingTable, Y : STA.w SprXSpeed, X\n LDA.w WigglingTable, Y : STA.w SprYSpeed, X\n LDY.w SprTimerC, X : BNE + ; use timer to do wiggling\n ; if = 0 then put it back to F\n LDA.b #$0F : STA.w SprTimerC, X ; wiggling timer\n +\n\n .noFishOnLine\n\n JSL Sprite_MoveLong\n JSL Sprite_MoveAltitude\n\n LDA.w $0F80, X : SEC : SBC.b #$01 : STA.w $0F80, X\n\n LDA.w SprHeight, X : BPL .aloft\n\n STZ.w SprHeight, X\n\n LDA.w SprXSpeed, X : ASL A : ROR.w SprXSpeed, X\n\n LDA.w SprYSpeed, X : ASL A : ROR.w SprYSpeed, X\n\n LDA.w $0F80, X : EOR.b #$FF : INC A\n\n LSR A\n CMP.b #$09\n BCS .no_bounce\n\n LDA.w SprMiscD, X : BNE .not_water_tile_last\n INC.w SprMiscD, X\n JSL Sprite_CheckTileCollision\n LDA.w $0FA5\n CMP.b #$08 : BEQ .water_tile_last\n CMP.b #$09 : BNE .not_water_tile_last\n .water_tile_last\n INC.w SprMiscG, X ; Set that so we know floater is in water!\n JSL Sprite_SpawnSmallSplash\n\n JSL GetRandomInt : AND #$3F\n CLC : ADC #$3F : STA.w SprTimerD, X\n\n .not_water_tile_last\n STZ.w $0F80, X\n STZ.w SprXSpeed, X\n STZ.w SprYSpeed, X\n\n BRA .aloft\n\n .no_bounce\n STA.w $0F80, X\n\n JSL Sprite_CheckTileCollision\n LDA.w $0FA5\n CMP.b #$08 : BEQ .water_tile\n CMP.b #$09 : BNE .not_water_tile\n\n .water_tile\n ;STZ.w $0F80, X\n\n JSL Sprite_SpawnSmallSplash\n\n .not_water_tile\n .aloft\n\n LDA.b #$01 : STA.w SprCollision, X ; restore floater sprite seems to be overwriten\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "Sprite_Floater_Draw", + "code": "Sprite_Floater_Draw:\n{\n LDA.b #$4 ; 1 oam slots\n JSL $0DBA88 ; SpriteDraw_AllocateOAMFromRegionC\n JSL $06E416 ; Sprite_PrepOamCoord\n REP #$20\n\n LDA.b $00 : STA.b ($90),Y\n CLC : AND.w #$0100 : STA.b $0E\n\n LDA.b $02 : INY\n STA.b ($90),Y\n CMP.w #$0100\n SEP #$20\n BCC .on_screen\n\n LDA.b #$F0 : STA.b ($90),Y\n\n .on_screen\n\n LDA.b #$0C : INY : STA.b ($90),Y\n\n LDA.b #$32 : INY : STA.b ($90),Y\n\n LDA.b #$02 : STA.b ($92)\n\n RTS", + "file": "fishing_rod.asm" + }, + { + "name": "WigglingTable", + "code": "WigglingTable:\n db 08, -10, 06, -8, 12, -14, 18, -20\n db 10, -12, 04, -6, 08,-10, 14,-16, 08\n db -10, 06, -8, 12, -14, 18, -20, 10\n db -12, 04, -6, 08,-10, 14,-16\n", + "file": "fishing_rod.asm" + }, + { + "name": "DismissRodFromMenu", + "code": "DismissRodFromMenu:\n{\n STZ.w $0300\n STZ.b $3D\n LDA #$00\n STA.l $7F5BA2\n LDA.l $7F5BA3 : TAX\n STZ.w SprState, X\n STZ.b $5E\n STZ.w $0300\n STZ.b $3D\n STZ.w $0350\n STZ.w $037A\n LDA.b $3A\n AND.b #$BF\n STA.b $3A\n RTL", + "file": "fishing_rod.asm" + }, + { + "name": "MagicRing_CheckForPower", + "code": "MagicRing_CheckForPower:\n{\n LDA.l RingSlot1 : AND.b #$20 : BEQ +\n LDA.l RingSlot2 : AND.b #$20 : BEQ +\n LDA.l RingSlot3 : AND.b #$20 : BEQ +\n LDA.w $0CF2 : CMP.b #$04 : BCS .not_sword\n CMP.b #$01 : BCC .not_sword\n LDA.l DamageSubclassValue, X\n CLC : ADC.b #$10\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "MagicRing_CheckForArmor", + "code": "MagicRing_CheckForArmor:\n{\n LDA.w Sprite_BumpDamageGroups, Y : STA.w $0373\n LDA.l RingSlot1 : AND.b #$10 : BEQ +\n LDA.l RingSlot2 : AND.b #$10 : BEQ +\n LDA.l RingSlot3 : AND.b #$10 : BEQ +\n ; Reduce the damage queue by half\n LDA $0373 : BEQ +\n LSR : STA $0373\n +\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "MagicRing_CheckForSteadfast", + "code": "MagicRing_CheckForSteadfast:\n{\n LDA.l RingSlot1 : AND.b #$07 : BEQ +\n LDA.l RingSlot2 : AND.b #$07 : BEQ +\n LDA.l RingSlot3 : AND.b #$07 : BEQ +\n STZ.b LinkRecoilX\n STZ.b LinkRecoilY\n +\n #_07E1BE: STZ.b $67\n\n #_07E1C0: LDY.b #$08\n\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "MagicRing_CheckForLight", + "code": "MagicRing_CheckForLight:\n{\n PHA\n LDA.l RingSlot1 : AND.b #$05 : BEQ +\n LDA.l RingSlot2 : AND.b #$05 : BEQ +\n LDA.l RingSlot3 : AND.b #$05 : BEQ +\n PLA\n SEC\n SBC.b #$10\n CMP.l $7EF36D\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "MagicRing_CheckForBlast", + "code": "MagicRing_CheckForBlast:\n{\n CPX #$07 : BNE +\n LDA.l RingSlot1 : AND.b #$06 : BEQ +\n LDA.l RingSlot2 : AND.b #$06 : BEQ +\n LDA.l RingSlot3 : AND.b #$06 : BEQ +\n LDA.b #$0D\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "MagicRings_CheckForHeart", + "code": "MagicRings_CheckForHeart:\n{\n LDA.l RingSlot1 : AND.b #$04 : BEQ ++\n LDA.l RingSlot2 : AND.b #$04 : BEQ ++\n LDA.l RingSlot3 : AND.b #$04 : BEQ ++\n LDA.l CURHP : CMP.l MAXHP : BCS ++\n LDA.l FrameCounter : LSR #2 : AND.b #$3F : BEQ +\n JMP ++\n +\n LDA.l CURHP : CLC : ADC.b #$01 : STA.l CURHP\n ++\n LDA.b $F5\n AND.b #$80\n RTL", + "file": "magic_rings.asm" + }, + { + "name": "Song_of_Healing", + "code": "Song_of_Healing:\n{\n %SetInstrument($0D) ; Ocarina\n db $2A ; length of quarter note\n db $46\n db B3, A3, F3\n db B3, A3, F3\n db B3, A3\n db $15 ; make this half of whatever you made quarter note\n db E3, D3\n db $7F ; make this triple whatever you made quarter note (max value 7F)\n db E3\n db End\n}\nassert pc() <= $1A9765\n\n; =========================================================\n; D F D - D F D - E F E - F E C\n; D F d D F d e f e f e c\n\norg $1A92F7 ; SFX2_2F", + "file": "ocarina.asm" + }, + { + "name": "Song_of_Storms", + "code": "Song_of_Storms:\n{\n !Storms_Duration = $0F\n !Storms_Params = $46\n\n !Storms_Duration2 = $1E\n !Storms_Params2 = $3C\n\n %SetInstrument($0D)\n\n db !Storms_Duration\n db !Storms_Params ; duration 1/4\n db D3, F3\n db !Storms_Duration2\n db !Storms_Params ; duration 1/2\n db D3\n\n db !Storms_Duration\n db !Storms_Params ; duration 1/4\n db D3, F3\n db !Storms_Duration2\n db !Storms_Params ; duration 1/2\n db D3\n\n db !Storms_Duration\n db !Storms_Params2 ; duration 1/4\n db E3, F3, E3\n\n db F3, E3\n db !Storms_Duration2\n db !Storms_Params2 ; duration 1/2\n db C3\n db End\n}\nassert pc() <= $1A931F\n\n; =========================================================\n\n; A, D, F, A, D, F\n; SFX3_27 Agahnim charge\n; 0x003B\n\norg $1A91F0", + "file": "ocarina.asm" + }, + { + "name": "Song_of_Time", + "code": "Song_of_Time:\n{\n !Time4th = $2A\n !TimeParams = $46\n\n %SetInstrument($0D)\n db !Time4th ; duration 1/4\n db !TimeParams ; params\n db A3\n\n db $54 ; duration 1/2\n db !TimeParams ; params\n db D3\n\n db !Time4th ; duration 1/4\n db !TimeParams ; params\n db F3\n db A3\n\n db $54 ; duration 1/2\n db !TimeParams ; params\n db D3\n\n db !Time4th ; duration 1/4\n db !TimeParams ; params\n db F3\n\n db End\n}\nassert pc() <= $1A922B\n\n; =========================================================\n\nAddTravelBird = $0994FE\nAddWeathervaneExplosion = $098D11\nPlayer_DoSfx1 = $078021\nOverworld_ReloadSubscreenOverlayAndAdvance_long = $02B1F4\n\norg $07A3DB", + "file": "ocarina.asm" + }, + { + "name": "LinkItem_FluteHook", + "code": "LinkItem_FluteHook:\n JSR LinkItem_NewFlute\n RTS", + "file": "ocarina.asm" + }, + { + "name": "ReturnFromFluteHook", + "code": "ReturnFromFluteHook:\n RTS", + "file": "ocarina.asm" + }, + { + "name": "LinkItem_NewFlute", + "code": "LinkItem_NewFlute:\n{\n ; Code for the flute item (with or without the bird activated)\n BIT.b $3A : BVC .y_button_not_held\n DEC.w $03F0 : LDA.w $03F0 : BNE ReturnFromFluteHook\n LDA.b $3A : AND.b #$BF : STA.b $3A\n .y_button_not_held\n\n ; Check for Switch Swong\n JSR UpdateFluteSong\n JSR Link_CheckNewY_ButtonPress : BCC ReturnFromFluteHook\n ; Success... play the flute.\n LDA.b #$80 : STA.w $03F0\n\n LDA.w $030F : CMP.b #$01 : BEQ .song_of_storms\n CMP.b #$02 : BEQ .song_of_healing\n CMP.b #$03 : BEQ .song_of_soaring\n CMP.b #$04 : BEQ .song_of_time\n JMP .song_of_storms\n .song_of_time\n LDA.b #$27 : JSR $802F ; Player_DoSfx3\n LDA.b #$02 : STA.b SongFlag\n RTS", + "file": "ocarina.asm" + }, + { + "name": "UpdateFluteSong", + "code": "UpdateFluteSong:\n JSL UpdateFluteSong_Long\n RTS", + "file": "ocarina.asm" + }, + { + "name": "Link_HandleCardinalCollision_Long", + "code": "Link_HandleCardinalCollision_Long:\n{\n PHB : PHK : PLB\n JSR $B7C7\n PLB\n RTL", + "file": "ocarina.asm" + }, + { + "name": "OcarinaEffect_SummonStorms", + "code": "OcarinaEffect_SummonStorms:\n{\n ; FIRST: Check if rain is already active - always allow dismissal\n ; This must come before area checks so you can dismiss from any area\n LDA.l $7EE00E : BNE .dismiss_storms\n\n ; Area checks only apply when trying to SUMMON rain\n LDA.w $8A : CMP.b #$00 : BNE +\n JMP .check_for_magic_bean\n +\n CMP.b #$2E : BEQ .jump_error_beep ; Zora areas already have rain\n CMP.b #$2F : BEQ .jump_error_beep\n ; Check for areas which should not be allowed to have rain\n CMP.b #$05 : BEQ .jump_error_beep\n CMP.b #$06 : BEQ .jump_error_beep\n CMP.b #$07 : BEQ .jump_error_beep\n CMP.b #$10 : BEQ .jump_error_beep\n CMP.b #$18 : BEQ .jump_error_beep\n CMP.b #$28 : BEQ .jump_error_beep\n CMP.b #$29 : BNE .no_error_beep\n\n .jump_error_beep\n JMP .error_beep\n\n .no_error_beep\n\n ; Fall through to summon rain\n JMP .summon_storms\n\n .dismiss_storms\n ; Check for Zora Temple Waterfall Trigger\n ; Map 1E, High Precision Zone (16x16 pixels)\n ; Target: Y=$06A8, X=$0CB7 (At the statue)\n ; Range: Y=$06A0-$06B0, X=$0CB0-$0CC0\n\n LDA.w $8A : CMP.b #$1E : BNE .normal_dismiss\n\n ; Y Coordinate Check\n LDA.b $21 : CMP.b #$06 : BNE .normal_dismiss ; High Byte\n LDA.b $20 : CMP.b #$A0 : BCC .normal_dismiss ; Low Byte < $A0 (Too North/Close)\n CMP.b #$B0 : BCS .normal_dismiss ; Low Byte >= $B0 (Too South)\n\n ; X Coordinate Check\n LDA.b $23 : CMP.b #$0C : BNE .normal_dismiss ; High Byte\n LDA.b $22 : CMP.b #$B0 : BCC .normal_dismiss ; Low Byte < $B0 (Too West)\n CMP.b #$C0 : BCS .normal_dismiss ; Low Byte >= $C0 (Too East)\n\n ; Trigger Found!\n JMP .trigger_zora_waterfall\n\n .normal_dismiss\n ; Clear the flag first so the reload routine loads default overlay\n LDA #$00 : STA $7EE00E\n ; Trigger overlay reload - will load area default (pyramid or other)\n JSL Overworld_ReloadSubscreenOverlayAndAdvance_long\n ; Hide the subscreen and disable color math\n STZ $1D\n STZ $9A\n LDA #$FF : STA $8C\n RTL", + "file": "ocarina.asm" + }, + { + "name": "PlayThunderAndRain", + "code": "PlayThunderAndRain:\n{\n LDA.b #$01 : STA $012D\n LDX.b #$36 : STX.w $012E\n RTL", + "file": "ocarina.asm" + }, + { + "name": "ResetOcarinaFlag", + "code": "ResetOcarinaFlag:\n{\n ; NOTE: Removed automatic clearing of $7EE00E on screen transitions.\n ; Rain flag is now only cleared when player plays Song of Storms again.\n ; The visibility is controlled in ZSCustomOverworld.asm.\n LDA.w $0416 : ASL A\n RTL", + "file": "ocarina.asm" + }, + { + "name": "UpdateFluteSong_Long", + "code": "UpdateFluteSong_Long:\n{\n LDA $7EF34C : CMP.b #$01 : BEQ .not_pressed\n LDA $030F : BNE .song_exists\n ; if this code is running, we have the flute song 1\n LDA #$01 : STA $030F\n .song_exists\n LDA.b $F6\n BIT.b #$20 : BNE .left ; pressed left\n BIT.b #$10 : BNE .right ; pressed right\n RTL", + "file": "ocarina.asm" + }, + { + "name": "LinkItem_IceRod", + "code": "LinkItem_IceRod:\n{\n ; load native value\n STA $03E4, X : TAY\n\n ; check if you're on overworld\n LDA $008C : BNE $01\n RTL", + "file": "ice_rod.asm" + }, + { + "name": "VramDmaTransfer", + "code": "VramDmaTransfer:\n{\n LDA #$007E ; load origin of bytes to transfer (7E/d000)\n STA $4304\n LDA #$D000 : STA $4302\n SEP #$30\n LDA #$18 ; bus\n STA $4301\n LDA #$04 ; transfer 4 bytes\n STA $4305\n LDA #$01 : STA $4300\n STA $420B ; make dma transfer\n RTS", + "file": "ice_rod.asm" + }, + { + "name": "collectSword", + "code": "collectSword:\n{\n ADC #$00 : STA $09\n LDA $79 : BEQ $01\n RTL", + "file": "sword_collect.asm" + }, + { + "name": "MagicBeanGfx", + "code": "MagicBeanGfx:\n incbin \"gfx/magic_bean.bin\"\n", + "file": "all_items.asm" + }, + { + "name": "MagicBeanSwapDynamicGfx", + "code": "MagicBeanSwapDynamicGfx:\n{\n PHX : PHP\n REP #$30\n LDX #$01BE\n --\n LDA.l MagicBeanGfx, X : STA.l $7EA480, X\n DEX : DEX : BPL --\n PLP : PLX\n RTL", + "file": "all_items.asm" + }, + { + "name": "Link_ConsumeMagicBagItem", + "code": "Link_ConsumeMagicBagItem:\n{\n LDA.w $020B\n JSL JumpTableLocal\n\n dw Link_Banana\n dw Link_Pineapple\n dw Link_RockMeat\n dw Link_Seashells\n dw Link_Honeycombs\n dw Link_DekuSticks\n", + "file": "all_items.asm" + }, + { + "name": "Link_Banana", + "code": " Link_Banana:\n {\n LDA.l CURHP : CMP.w MAXHP : BCS .full\n LDA.l CURHP : CLC : ADC.b #$10 : STA.l CURHP\n SEC : RTS", + "file": "all_items.asm" + }, + { + "name": "Link_Pineapple", + "code": " Link_Pineapple:\n {\n LDA.l !RAM_MAGIC : CMP.b #$80 : BCS .full\n LDA.b #$80 : STA.l !RAM_MAGIC\n SEC : RTS", + "file": "all_items.asm" + }, + { + "name": "Link_RockMeat", + "code": " Link_RockMeat:\n {\n CLC : RTS", + "file": "all_items.asm" + }, + { + "name": "Link_Seashells", + "code": " Link_Seashells:\n {\n CLC : RTS", + "file": "all_items.asm" + }, + { + "name": "Link_Honeycombs", + "code": " Link_Honeycombs:\n {\n LDA.l CURHP : CMP.w MAXHP : BCS .full\n LDA.l CURHP : CLC : ADC.b #$10 : STA.l CURHP\n SEC : RTS", + "file": "all_items.asm" + }, + { + "name": "Link_DekuSticks", + "code": " Link_DekuSticks:\n {\n CLC : RTS", + "file": "all_items.asm" + }, + { + "name": "return_pos", + "code": " return_pos:\n\n\npullpc", + "file": "book_of_secrets.asm" + }, + { + "name": "LinkItem_BookOfSecrets", + "code": "LinkItem_BookOfSecrets:\n{\n ; set link in praying mode\n ; LDA.b #$02 : STA.w $037A\n ; LDA #$FF : STA $8C\n ; LDA #$00 : STA $7EE00E\n ; STZ $1D : STZ $9A\n ; STZ.w $012D\n\n ; Are we on the castle map?\n LDA $8A : CMP.b #$1B : BNE +\n ; Is there an overlay playing?\n LDA $04C6 : BNE +\n ; If not, start the castle entrance animation\n LDA.b #$02 : STA.w $04C6 ; Set the overlay\n STZ.b $B0 : STZ.b $C8\n ; Cache the camera\n REP #$20\n LDA.w $0618 : STA.w CameraCache\n SEP #$20\n +\n JML $07A493 ; return do not !\n}\n\n", + "file": "book_of_secrets.asm" + }, + { + "name": "Dungeon_RevealSecrets", + "code": "Dungeon_RevealSecrets:\n{\n ; Check if we are in a building\n LDA $1B : AND #$01 : BEQ .end\n\n ; Check if we have the book of secrets\n LDA $7EF34D : CMP #$01 : BNE $0F ; if not, go to enable BG2\n\n ; load unfiltered joypad 1 register (AXLR|????)\n ; delete all bits except those for L\n LDA $F2\t: AND #$20\n\n ; L button pressed? (if yes, zero flag is set)\n SEC : SBC #$20\t: BNE $06\t; if not, go to enable BG2\n\n ; load layer flags and disable BG2 (0xFD = 11111101)\n LDA $1C\t: AND #$FD : BRA $04 ; go to store layer flags\n\n ; enable BG2 (0x02 = 00000010)\n LDA $1C\t: ORA #$02 : STA $1C\n\n .end\n ; @ $068365, JSL $099F91 old hook\n RTL", + "file": "book_of_secrets.asm" + }, + { + "name": "FistBump3", + "code": "FistBump3: ; Good ; $1BB380\nORA #$05\nSTA $012E ; play sound effect\n\nPHA\nAND #$05 : CMP #$05 : BEQ .branchA\nPLA\nRTL", + "file": "fist_damage.asm" + }, + { + "name": "FistBump", + "code": "FistBump: ; $1BB4D0\nJMP FistBump4\n", + "file": "fist_damage.asm" + }, + { + "name": "FistBump5", + "code": "FistBump5:\n\nCPX #$FE : BEQ .branchC\nCPX #$FF : BEQ .branchC\nLDA.l $06ED33, X\nBRA .branchD\n.branchC\nLDA.b #$00\n.branchD\nRTL", + "file": "fist_damage.asm" + }, + { + "name": "FistBump4", + "code": "FistBump4: ;$1BB4F0\nLDA $037A\nCMP #$10 : BNE .branchE\nJMP FistBump5_branchC\n.branchE\nJMP FistBump5\n\n", + "file": "fist_damage.asm" + }, + { + "name": "FistBump2", + "code": "FistBump2:; $1BB572\nBCC .branchF\nLDA $037A\nAND #$10 : BNE +\n.branchF\nLDA.b #$00\n+\nRTL", + "file": "fist_damage.asm" + }, + { + "name": "RodAnimationTimer", + "code": "RodAnimationTimer:\n db $03, $03, $05\n", + "file": "portal_rod.asm" + }, + { + "name": "LinkItem_PortalRod", + "code": "LinkItem_PortalRod:\n{\n BIT $3A : BVS .y_button_held\n LDA $6C : BNE .return\n JSR Link_CheckNewY_ButtonPress : BCC .return\n LDX.b #$00\n JSR LinkItem_EvaluateMagicCost : BCC .insufficient_mp\n LDA.b #$30 : JSR $802F ; Sfx3\n JSL LinkItem_FirePortal\n .y_button_held\n\n JSR $AE65 ; HaltLinkWhenUsingItems\n DEC $3D : BPL .return\n LDA $0300 : INC A : STA $0300 : TAX\n LDA RodAnimationTimer, X : STA $3D\n CPX.b #$03 : BNE .return\n STZ $0300\n STZ $5E\n STZ $3D\n LDA $0301 : AND.b #$FE : STA $0301\n\n .insufficient_mp\n LDA $3A : AND.b #$BF : STA $3A\n\n .return\n RTS", + "file": "portal_rod.asm" + }, + { + "name": "Ancilla_HandlePortalCollision", + "code": "Ancilla_HandlePortalCollision:\n{\n LDA.w $0E20, Y : CMP.b #$03 : BNE .not_portal_arrow\n ; Check if Y is the orange or blue portal\n LDA.w SprSubtype, Y : CMP.b #$02 : BEQ .blue_portal\n CMP.b #$01 : BEQ .orange_portal\n .orange_portal\n PHY\n LDY.w $0632 ; Blue Sprite ID\n LDA.w SprX, Y : CLC : ADC.b #$10 : STA.w ANC0XL, X\n LDA.w SprY, Y : STA.w ANC0YL, X\n LDA.w SprXH, Y : STA.w ANC0XH, X\n LDA.w SprYH, Y : STA.w ANC0YH, X\n PLY\n JMP .continue\n\n .blue_portal\n PHY\n LDY.w $0633 ; Orange Sprite ID\n LDA.w SprX, Y : STA.w ANC0XL, X\n LDA.w SprY, Y : CLC : ADC.b #$10 : STA.w ANC0YL, X\n LDA.w SprXH, Y : STA.w ANC0XH, X\n LDA.w SprYH, Y : STA.w ANC0YH, X\n PLY\n .continue\n LDA.b #$08\n RTL", + "file": "portal_rod.asm" + }, + { + "name": "LinkItem_FirePortal", + "code": "LinkItem_FirePortal:\n{\n LDA.b #$03\n JSL Sprite_SpawnDynamically : BPL .continue\n RTS", + "file": "portal_rod.asm" + }, + { + "name": "Overworld_OperateCameraScroll_Long", + "code": "Overworld_OperateCameraScroll_Long:\n{\n PHB : PHK : PLB\n\n JSR $BB90\n\n PLB\n\n RTL", + "file": "portal_rod.asm" + }, + { + "name": "Overworld_ScrollMap_Long", + "code": "Overworld_ScrollMap_Long:\n{\n PHB : PHK : PLB\n JSR $F273\n PLB\n\n RTL", + "file": "portal_rod.asm" + }, + { + "name": "ScrollToPortal", + "code": "ScrollToPortal:\n{\n REP #$20\n\n STZ $00\n STZ $02\n\n LDA $22 : CMP $7EC186 : BEQ .set_x : BCC .x_low\n DEC $02\n DEC A : CMP $7EC186 : BEQ .set_x\n DEC $02\n DEC A\n BRA .set_x\n .x_low\n\n INC $02\n INC A : CMP $7EC186 : BEQ .set_x\n INC $02\n INC A\n\n .set_x\n\n STA $22\n\n LDA $20 : CMP $7EC184 : BEQ .set_y : BCC .y_low\n DEC $00\n DEC A : CMP $7EC184 : BEQ .set_y\n DEC $00\n DEC A\n BRA .set_y\n .y_low\n\n INC $00\n INC A : CMP $7EC184 : BEQ .set_y\n INC $00\n INC A\n\n .set_y\n\n STA $20\n CMP $7EC184 : BNE .delay_advance\n LDA $22 : CMP $7EC186 : BNE .delay_advance\n INC $B0\n STZ $46\n .delay_advance\n\n SEP #$20\n\n LDA $00 : STA $30\n LDA $02 : STA $31\n\n JSL Overworld_OperateCameraScroll_Long ; $13B90 IN ROM\n\n LDA $0416 : BEQ .exit\n JSL Overworld_ScrollMap_Long ; $17273 IN ROM\n .exit\n\n RTL", + "file": "portal_rod.asm" + }, + { + "name": "TransferGFXinRAM", + "code": "TransferGFXinRAM:\n{\n PHX\n PHP\n REP #$20\n\n LDX #$80\n --\n LDA.l .morningstargfx, X : STA.l $7EA180, X\n DEX : DEX : BPL --\n\n PLP\n PLX\n RTL", + "file": "goldstar.asm" + }, + { + "name": "LinkOAM_SetWeaponVRAMOffsets_not_rod_hook", + "code": " LinkOAM_SetWeaponVRAMOffsets_not_rod_hook:\n\n; dw $A180, $A1A0, $A1C0, $A1E0\norg $008542\n dw $A180, $A1A0, $A180, $A1A0\n dw $A1C0, $A1C0, $A1E0, $A1E0\npullpc\n", + "file": "goldstar.asm" + }, + { + "name": "HookMaskCheck", + "code": "HookMaskCheck:\n{\n LDA.w GoldstarOrHookshot : AND.w #$00FF : CMP.w #$0002 : BNE .not_mask\n LDA $0202 : AND.w #$00FF : CMP.w #$0003 : BNE .not_mask\n ; morning star graphics oam tile pattern id\n LDA.w $0109 : AND #$FF00 : ORA.w #$004A\n RTL", + "file": "goldstar.asm" + }, + { + "name": "CheckForBallChain", + "code": "CheckForBallChain:\n{\n LDA #$13 : STA $5D ; Set hookshot state\n LDA #$FF : STA $7A ; Start the rotation Timer\n JMP LinkItem_BallChain_GfxTransfer ; $D520\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BallChain_DrawOrReturn", + "code": "BallChain_DrawOrReturn:\n{\n LDA.w GoldstarOrHookshot : CMP #$02 : BEQ +\n LDA #$00 : STA ($92),Y\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BallChain_ExtraCollisionLogic", + "code": "BallChain_ExtraCollisionLogic:\n{\n TAX\n LDA.w GoldstarOrHookshot : CMP #$02 : BNE + ; Check if using goldstar\n TXA : CMP #$0A : BNE ++\n LDA #$FF : BRA ++\n + ; $22D4F2\n TXA\n ++ ; $22D4F3\n CMP #$FF : BEQ +++\n ; AncillaDraw_Hookshot - JSR Ancilla_SetOAM_XY, skips hookshot char\n JML $08BF10\n\n +++ ; $22D4FB\n JML $08BF32 ; AncillaDraw_Hookshot_skip\n}\n\n; =========================================================\n;; 22D520", + "file": "goldstar.asm" + }, + { + "name": "LinkItem_BallChain_GfxTransfer", + "code": "LinkItem_BallChain_GfxTransfer:\n{\n PHB\n ; Check link direction\n LDA $2F : CMP #$04 : BEQ .transfer_gfx_sideways\n CMP #$06 : BEQ .transfer_gfx_sideways\n REP #$30\n LDA #$0040 : LDX #GFX_D600 : LDY #$9AC0\n MVN $2B, $7E\n LDA #$0040 : LDX #GFX_D640 : LDY #$9B40\n MVN $2B, $7E\n PLB : LDA #GFX_D6A0 : STA $4302\n JMP .transfer_handle_and_links ; D574\n\n .transfer_gfx_sideways ; $22D553\n REP #$30\n LDA #$0040 : LDX #GFX_D600 : LDY #$9B00\n MVN $2B, $7E\n LDA #$0040 : LDX #GFX_D640 : LDY #$9B80\n MVN $2B, $7E\n PLB : LDA #GFX_D6C0 : STA $4302\n\n .transfer_handle_and_links ; $22D574\n LDA #$41E0 : STA $2116\n LDA #$1801 : STA $4300\n SEP #$30\n\n LDA #$80 : STA $2115\n .transfer_loop\n LDA $4212 : AND #$80\n BEQ .transfer_loop\n LDA #$2B : STA $4304\n LDA #$20 : STA $4305\n LDA #$01 : STA $420B\n\n REP #$30\n LDA #$40E0 : STA $2116\n LDA #GFX_D680 : STA $4302\n SEP #$30\n\n LDA #$20 : STA $4305\n LDA #$2B : STA $4304\n LDA #$01 : STA $420B\n RTL", + "file": "goldstar.asm" + }, + { + "name": "GoldstarHandleGfx", + "code": "GoldstarHandleGfx:\n{\n ; 22D600", + "file": "goldstar.asm" + }, + { + "name": "GFX_D600", + "code": " GFX_D600:\n db $00, $00, $00, $00, $21, $00, $7B, $00\n db $37, $0B, $3F, $14, $1D, $0A, $1F, $0B\n db $00, $00, $00, $00, $21, $00, $5B, $00\n db $2F, $0B, $3F, $14, $1E, $0A, $1F, $0B", + "file": "goldstar.asm" + }, + { + "name": "GFX_D620", + "code": " GFX_D620:\n db $00, $00, $80, $00, $40, $80, $F8, $00\n db $EC, $D0, $BC, $E8, $FC, $50, $D8, $60\n db $00, $00, $80, $00, $C0, $80, $F8, $00\n db $F4, $D0, $FC, $E8, $DC, $50, $F8, $60\n ; 22D640", + "file": "goldstar.asm" + }, + { + "name": "GFX_D640", + "code": " GFX_D640:\n db $1F, $04, $1F, $07, $2F, $19, $2F, $18\n db $7B, $01, $21, $00, $00, $00, $00, $00\n db $1F, $04, $1F, $07, $3F, $19, $3F, $18\n db $5B, $01, $21, $00, $00, $00, $00, $00\n ; 22D660", + "file": "goldstar.asm" + }, + { + "name": "GFX_D660", + "code": " GFX_D660:\n db $AC, $D0, $72, $DC, $FC, $C0, $F8, $10\n db $E8, $30, $34, $08, $08, $00, $00, $00\n db $FC, $D0, $FE, $DC, $FC, $C0, $F8, $10\n db $F8, $30, $3C, $08, $08, $00, $00, $00\n ; 22D680", + "file": "goldstar.asm" + }, + { + "name": "GFX_D680", + "code": " GFX_D680:\n db $00, $00, $18, $00, $24, $18, $5A, $24\n db $7E, $24, $3C, $18, $18, $00, $00, $00\n db $00, $00, $18, $00, $3C, $18, $7E, $24\n db $7E, $24, $3C, $18, $18, $00, $00, $00\n ; 22D6A0", + "file": "goldstar.asm" + }, + { + "name": "GFX_D6A0", + "code": " GFX_D6A0:\n db $18, $00, $3C, $18, $2C, $08, $34, $10\n db $34, $10, $34, $00, $24, $00, $18, $00\n db $18, $18, $24, $3C, $34, $3C, $2C, $18\n db $2C, $18, $2C, $08, $3C, $18, $18, $00\n ; 22D6C0", + "file": "goldstar.asm" + }, + { + "name": "GFX_D6C0", + "code": " GFX_D6C0:\n db $00, $00, $00, $00, $7E, $00, $BB, $1A\n db $87, $06, $7E, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $7E, $00, $C5, $5E\n db $F9, $7E, $7E, $00, $00, $00, $00, $00\n}\n\n; =========================================================\n\npushpc\norg $07ABAF\n JSL BallChain_ResetTimer\npullpc\n\n; 7F5F02\n\n; 22D700\n; Hooked into LinkState_Hookshotting @ _07ABAF\n; Sets Link state to 0x00 and resets the hookshot timer", + "file": "goldstar.asm" + }, + { + "name": "BallChain_ResetTimer", + "code": "BallChain_ResetTimer:\n{\n LDA.w GoldstarOrHookshot : CMP #$02 : BNE .dont_clear_timer\n STZ $7A ; Clear the timer\n .dont_clear_timer\n STZ $5D ; Return to LinkState_Default\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BallChain_DrawChainOrHookshot", + "code": "BallChain_DrawChainOrHookshot:\n{\n LDA.w GoldstarOrHookshot : CMP #$02 : BEQ +\n LDA #$19 : STA ($90),Y\n JSR BallChainOrHookshot_Modifier ; $D820\n ORA.b #$02\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BallChainOrHookshot_Modifier", + "code": "BallChainOrHookshot_Modifier:\n{\n INY : LDA.b $1A : AND.b #$02\n ASL #6 ; six times\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Goldstar_SetChainProperties", + "code": "Goldstar_SetChainProperties:\n{\n LDA.w GoldstarOrHookshot : CMP #$02 : BEQ .ball_chain\n LDA HookshotSpriteData.prop, X\n ORA.b #$02 : ORA.b $65\n RTL", + "file": "goldstar.asm" + }, + { + "name": "LinkOAM_GoldstarWeaponTiles", + "code": "LinkOAM_GoldstarWeaponTiles:\n{\n REP #$20\n LDA.w $0202 : AND.w #$00FF : CMP.w #$0003 : BEQ +\n LDA.w LinkOAM_WeaponTiles, Y\n RTL", + "file": "goldstar.asm" + }, + { + "name": "Hookshot_box_size_y", + "code": " Hookshot_box_size_y:\npullpc\n\n; 22D900 - AncillaDraw_HookshotChain_next_object @ 08BFB0", + "file": "goldstar.asm" + }, + { + "name": "HookshotChain_AncillaDraw", + "code": "HookshotChain_AncillaDraw:\n{\n REP #$20\n ; Ball Chain Timer\n LDA $7A : AND #$00FF : CMP #$0001 : BNE + ; $22D914\n LDA Hookshot_box_size_y, X\n JML $08BFB5 ; AncillaDraw_HookshotChain\n + ; $22D914\n CMP #$0000 : BNE ++ ; $22D921\n LDA Hookshot_box_size_y, X\n JML $08BFB5 ; AncillaDraw_HookshotChain\n ++\n JSR CheckForSomariaBlock ; CheckAndClearAncillaId has set the timer in A\n\n SEP #$30\n ; Compare rotation progress\n CLC : CMP #$FB : BNE +++\n LDA #$06 : STA $2143\n\n +++ ; 22D930\n BCC ++++\n JMP StartChainRotation ; $D960\n\n ++++ ; 22D935\n ; Compare rotation progress\n CLC : CMP #$AB : BNE +++++\n LDA #$06 : STA $2143\n\n +++++ ;22D93F\n ; Compare rotation progress\n CLC : CMP #$5B : BNE ++++++\n LDA #$06 : STA $2143\n\n ++++++ ;22D949\n CLC : CMP #$E6 : BCC +++++++\n JMP Routine_22D9A0 ; $D9A0\n\n +++++++ ; 22D951\n CLC : CMP #$05 : BCC ++++++++\n LDA $F8 : CMP.b #$40 : BEQ +\n JMP Routine_22D9A0 ; $D9A0\n\n ++++++++ ; 22D959\n JMP Routine_22DBD0 ; $DBD0\n}\n\n; =========================================================\n\n!RotationState = $7F5803\n\n; 22D960", + "file": "goldstar.asm" + }, + { + "name": "StartChainRotation", + "code": "StartChainRotation:\n{\n REP #$20\n LDA #$0000 : EOR #$FFFF : INC : CLC\n JSR Goldstar_GetPlayerPosY : STA $7F5810 ; en center y-pos\n JSR Goldstar_GetPlayerPosX : STA $7F580E ; en center x-pos\n SEP #$30\n JSR Routine_22DAD0 : STA $7F5803 ; Set rotation state\n DEC $7A ; Ball Chain Timer\n SEP #$20\n JML $08BFD0 ; AncillaDraw_HookshotChain before Hookshot_CheckProximityToLink\n}\n\n; =========================================================\n\nstruct Ancilla_GetRadialProjection $0FFBC2\n .multiplier_x : skip 64\n .multiplier_y : skip 64\n .meta_sign_y : skip 64\n .meta_sign_x : skip 64\nendstruct\n\n; $22D9A0", + "file": "goldstar.asm" + }, + { + "name": "Routine_22D9A0", + "code": "Routine_22D9A0:\n{\n LDA $7F5803 : CLC : ADC #$02 : AND #$3F : CPY #$04 : BNE +\n STA $7F5803 : CLC : ADC #$02\n + ; 22D9B6\n AND #$3F : PHX : TAX\n\n LDA Ancilla_GetRadialProjection.multiplier_y, X\n STA $4202 : JSR Routine_22DAA0 : STA $4203\n\n ; Sign of the projected distance.\n LDA Ancilla_GetRadialProjection.meta_sign_y, X\n STA $02 : STZ $03\n\n ; Get Y of projected distance\n LDA $4216 : ASL\n LDA $4217 : ADC #$00 : STA $00 : STZ $01\n\n LDA Ancilla_GetRadialProjection.multiplier_x, X\n STA $4202 : JSR Routine_22DAA0 : STA $4203\n\n ; Sign of the projected distance.\n LDA Ancilla_GetRadialProjection.meta_sign_x, X\n STA $06 : STZ $07\n\n ; Get X of projected distance\n LDA $4216 : ASL\n LDA $4217 : ADC #$00 : STA $04 : STZ $05\n\n PHY\n JSL $08DA17 ; Sparkle_PrepOAMFromRadial\n PLY : PLX\n CPY #$04 : BNE ++ ; $22DA14\n JSR Routine_22DA70 ; $DA70\n NOP #7\n JSR BallChain_SpinAncilla ; $22DB90\n\n ++ ;22DA14\n NOP #3\n LDA #$F0 : CPY #$1C : BNE +++ ; $22DA1F\n STA $00\n +++ ; 22DA1F\n DEC $7A ; Ball Chain Timer\n SEP #$20\n JML $08BFD0 ; AncillaDraw_HookshotChain before Hookshot_CheckProximityToLink\n}\n\n; =========================================================\n; 22DA30\n", + "file": "goldstar.asm" + }, + { + "name": "Goldstar_GetPlayerPosY", + "code": "Goldstar_GetPlayerPosY:\n{\n ADC $20 : CLC : ADC #$000C\n CPX #$00 : BNE +\n SEC : SBC #$000C\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Goldstar_GetPlayerPosX", + "code": "Goldstar_GetPlayerPosX:\n{\n LDA $22 : CLC : ADC #$0008\n CPX #$04 : BNE + ; $22DA5F\n SEC : SBC #$000C\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DA70", + "code": "Routine_22DA70:\n{\n LDY #$00 : LDA $02 ; set sign of projected distance X\n STA ($90),Y\n\n LDY #$01 : LDA $00 ; set sign of projected distance y\n STA ($90),Y\n\n LDY #$04\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DA80", + "code": "Routine_22DA80:\n{\n LDA $7EF34A : CMP #$02 : BNE + ; $22DA89\n RTL", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DAA0", + "code": "Routine_22DAA0:\n{\n CPY #$04 : BNE .alpha\n JMP Routine_22DB50 ; $DB50\n .alpha ; 22DAA7\n CPY #$08 : BNE +\n LDA #$00\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DAD0", + "code": "Routine_22DAD0:\n{\n CPX #$00 : BNE + ; $22DAD7\n LDA #$2E\n RTS", + "file": "goldstar.asm" + }, + { + "name": "BallChain_TryAncillaDraw", + "code": "BallChain_TryAncillaDraw:\n{\n ; Ball Chain timer should be $FF here on first run\n LDA $7A : AND #$00FF : CMP #$0000 : BEQ +\n CMP #$0001 : BEQ +\n SEP #$20\n JML HookshotChain_AncillaDraw ; $22D900\n\n + ; $22DB15\n LDA Hookshot_box_size_y,X : BNE ++\n JML $08BF99 ; AncillaDraw_HookshotChain\n\n ++ ; $22DB1F\n JML $08BFA1 ; Resume AncillaDraw_HookshotChain\n}\n\n; =========================================================\n\npushpc\norg $08F7DC\n JML BallChain_CheckProximityToLink\npullpc\n\n; 22DB30\n; Hooks into Hookshot_CheckProximityToLink @ 08F7DC", + "file": "goldstar.asm" + }, + { + "name": "BallChain_CheckProximityToLink", + "code": "BallChain_CheckProximityToLink:\n{\n REP #$20\n ; Ball Chain Timer\n LDA $7A : AND #$00FF : CMP #$0000 : BNE + ; $22DB44\n LDA.b $00\n JML $08F7E0 ; Hookshot_CheckProximityToLink continue\n + ; 22DB44\n JML $08F820 ; Hookshot_CheckProximityToLink too_far\n}\n\n; =========================================================\n; 22DB50\n", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DB50", + "code": "Routine_22DB50:\n{\n ; Ball Chain Timer\n LDA $7A : CLC : CMP #$EA : BCC +\n LDA #$08\n RTS", + "file": "goldstar.asm" + }, + { + "name": "BallChain_SpinAncilla", + "code": "BallChain_SpinAncilla:\n{\n REP #$20\n LDA $00 : CLC : ADC $E8 : CPX #$02 : BNE .alpha\n CLC : ADC #$0010\n .alpha\n STA $04\n LDA $02 : CLC : ADC $E2 : STA $06\n SEP #$20\n LDA $04 : STA $0BFE : LDA $05 : STA $0C12 ; Ancilla4 Y\n LDA $06 : STA $0C08 : LDA $07 : STA $0C1C ; Ancilla4 X\n STZ $0C76 ; Ancilla4 direction\n SEP #$30\n RTS", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DBD0", + "code": "Routine_22DBD0:\n{\n STZ $7A ; Ball Chain Timer\n JSR ClearAncillaVariables ; $DC70\n ; Check Link direction\n LDA $2F : CMP #$00 : BNE .not_up\n LDA #$C0 : STA $0C26 ; Ancilla4 Y Axis Velocity\n .not_up\n CMP #$02 : BNE .not_down\n LDA #$40 : STA $0C26 ; Ancilla4 Y Axis Velocity\n .not_down\n CMP #$04 : BNE .not_left\n LDA #$C0 : STA $0C30 ; Ancilla4 X Axis Velocity\n .not_left\n CMP #$06 : BNE .not_right\n LDA #$40 : STA $0C30 ; Ancilla4 X Axis Velocity\n .not_right\n SEP #$20\n STZ $0C58 ; Ancilla4 Misc\n STZ $0C62 ; Ancilla4 hookshoot extension\n STZ $0C54 ; Ancilla0 Misc\n REP #$20\n\n LDA $2F : LSR : STA $0C76\n ASL : TAX\n\n LDA $20 : CLC : ADC AncillaAdd_HookshotData.offset_y, X\n STA $00 : STA $04\n\n LDA $22 : CLC : ADC AncillaAdd_HookshotData.offset_x, X\n STA $02 : STA $06\n\n SEP #$30\n LDA $00 : STA $0BFE : LDA $01 : STA $0C12 ; Ancilla4 Y\n LDA $02 : STA $0C08 : LDA $03 : STA $0C1C ; Ancilla4 X\n LDX #$06 : LDA Hookshot_box_size_y,X ; hookshot box size y table\n SEP #$20\n JML $08BFD0 ; AncillaDraw_HookshotChain before Hookshot_CheckProximityToLink\n}\n\n; =========================================================\n\npushpc\norg $08BDFD\n JML HookshotOrBallChain_Extending_ignore_collision\npullpc\n\n; 22DC50", + "file": "goldstar.asm" + }, + { + "name": "HookshotOrBallChain_Extending_ignore_collision", + "code": "HookshotOrBallChain_Extending_ignore_collision:\n{\n ; Ball Chain Timer\n LDA $7A : CMP #$00 : BNE +\n JSL Hookshot_CheckTileCollision ; $07D576\n JML $08BE01 ; Hookshot_Extending_ignore_collision continue\n + ; 22DC5E\n JML $08BEDC ; AncillaDraw_Hookshot\n}\n\n; =========================================================\n; 22DC70\n", + "file": "goldstar.asm" + }, + { + "name": "ClearAncillaVariables", + "code": "ClearAncillaVariables:\n{\n REP #$30\n LDA #$0000\n STA $7F580E ; en center x-pos\n STA $7F5810 ; en center y-pos\n STA $7F5803 ; rotation state\n SEP #$30\n RTS", + "file": "goldstar.asm" + }, + { + "name": "BallChain_SFX_Control", + "code": "BallChain_SFX_Control:\n{\n STA $0C68,X\n ; Ball Chain Timer\n LDA $7A : CMP #$00 : BNE + ; $22DC9C\n LDA.b #$0A ; SFX2.0A\n RTL", + "file": "goldstar.asm" + }, + { + "name": "Routine_22DCA0", + "code": "Routine_22DCA0:\n{\n LDA $7A : CMP #$00 : BNE + ;$A2DCAB\n LDA $0DBB5B, X\n RTL", + "file": "goldstar.asm" + }, + { + "name": "CheckAndClearAncillaId", + "code": "CheckAndClearAncillaId:\n{\n SEP #$30\n ; Check if hookshot ancillae in this slot\n LDA $0C4A : CMP #$1F : BEQ + ; $22DDC9\n LDA $0C4C : CMP #$1F : BEQ ++ ; $22DDB1\n LDA $0C4D : CMP #$1F : BEQ +++ ; $22DDB9\n LDA $0C4B : CMP #$1F : BEQ ++++ ; $22DDC1\n LDA $7A ; Ball Chain Timer\n RTS", + "file": "goldstar.asm" + }, + { + "name": "CheckForSomariaBlock", + "code": "CheckForSomariaBlock:\n{\n SEP #$30\n JMP CheckForSomariaBlast ; $EE80\n .22E5A5 ; 22E5A5\n LDA $0C4C : CMP #$2C : BNE + ; $22E5B2\n INC $0C4C\n ;JMP $E5DB\n\n + ; 22E5B2\n LDA $0C4D : CMP #$2C : BNE ++ ; $22E5BF\n INC $0C4D\n ;JMP $E5DB\n\n ++ ; 22E5BF\n LDA $0C4E : CMP #$2C : BNE +++ ; $22E5CC\n INC $0C4E\n ;JMP $E5DB\n\n +++ ; 22E5CC\n LDA $0C4F : CMP #$2C : BNE ++++ ; $22E5D9\n INC $0C4F\n ;JMP $E5DB\n\n ++++ ; 22E5D9\n BRA +++++ ; $22E5E0\n\n +++++ ; 22E5E0\n JSR CheckAndClearAncillaId ; $DD90\n RTS", + "file": "goldstar.asm" + }, + { + "name": "CheckForSomariaBlast", + "code": "CheckForSomariaBlast:\n{\n LDA $0300 : BEQ + ; $22EE88\n ;JMP $E5DB\n\n + ; 22EE88\n LDA $0C4A : CMP #$01 : BNE ++ ; $22EE92\n ;JMP $EEC0\n\n ++ ; 22EE92\n LDA $0C4B : CMP #$01 : BNE +++ ; $22EE9C\n ;JMP $EEC0\n\n +++ ; 22EE9C\n LDA $0C4C : CMP #$01 : BNE ++++ ; $22EEA6\n ;JMP $EEC0\n\n ++++ ; 22EEA6\n LDA $0C4D : CMP #$01 : BNE +++++ ; $22EEB0\n ;JMP $EEC0\n\n +++++ ; 22EEB0\n LDA $0C4E : CMP #$01 : BNE ++++++ ; $22EEBA\n ;JMP $EEC0\n\n ++++++ ; 22EEBA\n JMP CheckForSomariaBlock_22E5A5 ; $E5A5\n}\n\n; =========================================================\n; 22EF00\n; Hooked inside LinkItem_Hookshot @ 07AB5E\n", + "file": "goldstar.asm" + }, + { + "name": "BallChain_StartAnimationFlag", + "code": "BallChain_StartAnimationFlag:\n{\n ; Restore vanilla code\n LDA #$01 : STA $037B\n ; Check if we are rotating the goldstar\n LDA $037A : CMP #$04 : BNE +\n ; Animation flag, prevent menu from opening\n LDA #$01 : STA $0112\n +\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BallChain_Finish", + "code": "BallChain_Finish:\n{\n STZ.w $0300 : STZ.w $037B ; Restore vanilla\n LDA $037A : CMP #$04 : BNE .not_done ; We are hookshotting\n STZ $0112 ; Clear animation flag\n .not_done\n RTL", + "file": "goldstar.asm" + }, + { + "name": "Hookshot_Init", + "code": "Hookshot_Init:\n{\n ; ResetAllAcceleration:\n REP #$20\n STZ.w $032F : STZ.w $0331\n STZ.w $0326 : STZ.w $0328\n STZ.w $032B : STZ.w $032D\n STZ.w $033C : STZ.w $033E\n STZ.w $0334 : STZ.w $0336\n SEP #$20\n\n ; Initialize hookshot variables\n STZ.w $0300\n LDA.b #$01 : TSB.b $50\n LDA.b #$07 : STA.b $3D\n STZ.b $2E\n\n LDA.b $67 : AND.b #$F0 : STA.b $67\n LDA.w $037A : AND.b #$00 : ORA.b #$04\n STA.w $037A\n\n RTL", + "file": "goldstar.asm" + }, + { + "name": "BeginGoldstarOrHookshot", + "code": "BeginGoldstarOrHookshot:\n{\n LDA.w GoldstarOrHookshot : CMP #$02 : BEQ .begin_goldstar\n JMP .begin_hookshot\n\n .begin_goldstar:\n JSL CheckForBallChain\n JSL Hookshot_Init\n JSL BallChain_StartAnimationFlag\n LDY.b #$03 : LDA.b #$1F ; ANCILLA 1F\n JSL AncillaAdd_Hookshot\n JSL TransferGFXinRAM\n RTL", + "file": "goldstar.asm" + }, + { + "name": "MaybeUploadBirdGraphicsToOam", + "code": "MaybeUploadBirdGraphicsToOam:\n{\n LDY $037A : CPY #$0104 : BEQ .here\n LDY #$40E0 : STY $2116\n JML $008B30 ; NMI_DoUpdates\n .here\n JML $008B50 ; NMI_DoUpdates.no_update_swagduck\n}\n", + "file": "goldstar.asm" + }, + { + "name": "ApplyGoldstarDamageClass", + "code": "ApplyGoldstarDamageClass:\n{\n PHA\n ; If the hookshot is active\n LDA.w $0202 : CMP.b #$03 : BNE .return\n ; If the goldstar is active, swap in the damage class\n LDA.w GoldstarOrHookshot : CMP.b #$02 : BNE .return\n PLA\n LDA #$02\n JMP .apply\n .return\n PLA\n .apply\n JSL $06ED25 ; Ancilla_CheckDamageToSprite_preset.apply\n RTL", + "file": "goldstar.asm" + }, + { + "name": "CheckForSwitchToGoldstar", + "code": "CheckForSwitchToGoldstar:\n{\n JSL CheckNewRButtonPress : BEQ .continue\n LDA.l $7EF342 : CMP.b #$02 : BNE .continue\n LDA.w GoldstarOrHookshot : CMP.b #$01 : BEQ .set_hookshot\n LDA.b #$01 : STA.w GoldstarOrHookshot\n JMP .continue\n .set_hookshot:\n LDA.b #$02 : STA.w GoldstarOrHookshot\n .continue:\n LDA.b $3A : AND.b #$40 ; Restore vanilla code\n RTL", + "file": "goldstar.asm" + }, + { + "name": "Goldstar_GetDragged", + "code": "Goldstar_GetDragged:\n{\n LDA.w GoldstarOrHookshot : CMP.b #$02 : BNE +\n STZ.w $0112\n STZ.w $037E\n RTL", + "file": "goldstar.asm" + }, + { + "name": "NewMainSprFunction", + "code": "NewMainSprFunction:\n JSL SpriteActiveExp_MainLong\n RTS", + "file": "sprite_new_table.asm" + }, + { + "name": "NewSprPrepFunction", + "code": "NewSprPrepFunction:\n JSL Sprite_PrepExp_Long\n RTS", + "file": "sprite_new_table.asm" + }, + { + "name": "SpriteActiveExp_MainLong", + "code": "SpriteActiveExp_MainLong:\n{\n PHB : PHK : PLB\n JSL NewSprTable\n PLB\n RTL", + "file": "sprite_new_table.asm" + }, + { + "name": "NewSprTable", + "code": "NewSprTable:\n{\n LDA $0E20, X ; Load Sprite ID\n REP #$30\n AND.w #$00FF\n STA $06\n ASL A ; *2\n CLC : ADC $06 ; *3\n TAY\n\n LDA NewSprRoutinesLong, Y ; Load sprite Address\n STA $06\n SEP #$20\n LDA NewSprRoutinesLong+2, Y\n STA $08\n SEP #$30\n JMP [$0006]\n\n ;do a JML and sprite will RTL back to previous code", + "file": "sprite_new_table.asm" + }, + { + "name": "Sprite_PrepExp_Long", + "code": "Sprite_PrepExp_Long:\n{\n PHB : PHK : PLB\n JSL NewSprPrepTable\n PLB\n RTL", + "file": "sprite_new_table.asm" + }, + { + "name": "NewSprPrepTable", + "code": "NewSprPrepTable:\n{\n LDA $0E20, X ; Load Sprite ID\n REP #$30\n AND.w #$00FF\n STA $06\n ASL A ; *2\n CLC : ADC $06 ; *3\n TAY\n\n LDA NewSprPrepRoutinesLong, Y ; Load sprite Address\n STA $06\n SEP #$20 ; Previously SEP #$30 -_- (that's fine for sprites below ~0x40 over that it will crash)\n LDA NewSprPrepRoutinesLong+2, Y\n STA $08\n SEP #$30\n JMP [$0006]\n}\n", + "file": "sprite_new_table.asm" + }, + { + "name": "NewSprRoutinesLong", + "code": "NewSprRoutinesLong:\n{\n fillbyte $00\n fill $2FD\n}\n", + "file": "sprite_new_table.asm" + }, + { + "name": "MenuScrollLevelV", + "code": "MenuScrollLevelV: skip 1", + "file": "symbols.asm" + }, + { + "name": "MenuScrollLevelH", + "code": "MenuScrollLevelH: skip 1", + "file": "symbols.asm" + }, + { + "name": "MenuScrollHDirection", + "code": "MenuScrollHDirection: skip 2", + "file": "symbols.asm" + }, + { + "name": "MenuItemValueSpoof", + "code": "MenuItemValueSpoof: skip 2", + "file": "symbols.asm" + }, + { + "name": "ShortSpoof", + "code": "ShortSpoof: skip 1", + "file": "symbols.asm" + }, + { + "name": "MusicNoteValue", + "code": "MusicNoteValue: skip 2", + "file": "symbols.asm" + }, + { + "name": "GoldstarOrHookshot", + "code": "GoldstarOrHookshot: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck_Index", + "code": "Neck_Index: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck1_OffsetX", + "code": "Neck1_OffsetX: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck1_OffsetY", + "code": "Neck1_OffsetY: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck2_OffsetX", + "code": "Neck2_OffsetX: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck2_OffsetY", + "code": "Neck2_OffsetY: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck3_OffsetX", + "code": "Neck3_OffsetX: skip 1", + "file": "symbols.asm" + }, + { + "name": "Neck3_OffsetY", + "code": "Neck3_OffsetY: skip 1", + "file": "symbols.asm" + }, + { + "name": "Offspring1_Id", + "code": "Offspring1_Id: skip 1", + "file": "symbols.asm" + }, + { + "name": "Offspring2_Id", + "code": "Offspring2_Id: skip 1", + "file": "symbols.asm" + }, + { + "name": "Offspring3_Id", + "code": "Offspring3_Id: skip 1", + "file": "symbols.asm" + }, + { + "name": "Kydreeok_Id", + "code": "Kydreeok_Id: skip 1", + "file": "symbols.asm" + }, + { + "name": "ShopItem_Banana", + "code": "ShopItem_Banana:\n{\n JSR $F4CE ; SpriteDraw_ShopItem\n JSR $FE78 ; Sprite_CheckIfActive_Bank1E\n JSL $1EF4F3 ; Sprite_BehaveAsBarrier\n JSR $F391 ; ShopItem_CheckForAPress\n BCC .exit\n\n LDA.l Bananas : CMP.b #$0A : BCS .error\n LDA.b #$1E : LDY.b #$00\n JSR $F39E ; ShopItem_HandleCost\n BCC $F1A1 ; ShopItem_GiveFailureMessage\n\n STZ.w SprState,X\n INC.b Bananas\n\n LDY.b #$42 : JSR $F366 ; ShopItem_HandleReceipt\n\n .exit\n RTS", + "file": "patches.asm" + }, + { + "name": "MessageExpand", + "code": "MessageExpand:\n{\n ; are we already in expanded bank?\n LDA.b $02 : AND.w #$00FF : CMP.w #$000E : BNE +\n LDA.w #MessageExpandedData : STA.b $00\n LDA.w #MessageExpandedData>>16 : STA.b $02\n JML $0ED3FC ; go back to original read message code pointers\n +\n ; Restore vanilla code\n LDA.w #$DF40 : STA.b $00\n LDA.w #$000E : STA.b $02\n JML $0ED3FC ; go back to original read message code pointers\n}\n", + "file": "message.asm" + }, + { + "name": "MessageExpandedData", + "code": "MessageExpandedData:", + "file": "message.asm" + }, + { + "name": "Message_18D", + "code": " Message_18D:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $E3, $59, $2D, $21, $A6, $1E, $3E, $76, $03, $28, $59, $E3, $59, $D0, $1E, $24, $59, $BD, $29, $2C, $42, $59, $26, $32, $59, $1F, $2B, $22, $A5, $1D, $3F, $7E, $73, $13, $B4, $20, $25, $1E, $59, $AE, $59, $DB, $1A, $2F, $1E, $25, $A4, $1F, $1A, $2B, $59, $90, $73, $E2, $1D, $1E, $59, $1A, $1C, $2B, $28, $2C, $2C, $59, $0A, $1A, $25, $32, $31, $28, $59, $DA, $59, $1C, $B1, $2B, $2D, $73, $D8, $59, $2E, $27, $B8, $27, $3E, $59, $05, $C8, $59, $1A, $59, $2C, $26, $8E, $1F, $1E, $1E, $42, $7E, $73, $C6, $59, $1C, $28, $2E, $2B, $D0, $43, $73, $88, $44, $59, $16, $21, $91, $9F, $59, $E3, $59, $AD, $3F, $73, $88, $89, $08, $51, $26, $59, $28, $24, $1A, $32, $41, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_18E", + "code": "Message_18E:\n db $00, $21, $42, $59, $1A, $59, $30, $B5, $1E, $59, $1C, $21, $28, $22, $1C, $1E, $3E, $75, $16, $B6, $21, $59, $2D, $B0, $2C, $59, $BD, $29, $42, $59, $27, $28, $59, $D0, $1C, $CE, $2D, $76, $E2, $25, $25, $59, $97, $59, $B0, $1D, $1D, $A0, $A9, $26, $59, $E3, $3E, $7E, $73, $09, $2E, $D3, $59, $21, $8C, $28, $2F, $A1, $D8, $59, $2B, $DC, $1E, $1E, $2C, $73, $8C, $25, $1E, $2D, $59, $D8, $59, $1A, $1D, $2F, $A3, $2E, $CD, $97, $20, $B4, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_18F", + "code": "Message_18F:\n db $0E, $21, $59, $1D, $A2, $41, $41, $41, $75, $08, $2D, $59, $D0, $1E, $26, $2C, $59, $E3, $2B, $59, $29, $28, $9C, $1E, $2D, $2C, $59, $8D, $1A, $76, $1A, $59, $1B, $B6, $59, $25, $22, $20, $21, $2D, $41, $59, $02, $28, $BE, $59, $96, $9C, $59, $E1, $A5, $7E, $73, $E3, $2B, $59, $DF, $25, $25, $1E, $2D, $59, $B5, $59, $1A, $2C, $59, $1F, $2E, $25, $25, $59, $1A, $2C, $59, $26, $B4, $1E, $3E, $73, $13, $B4, $20, $25, $1E, $59, $E2, $25, $25, $59, $DF, $B6, $42, $59, $9F, $27, $51, $2D, $73, $E3, $59, $30, $C8, $2B, $32, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_190", + "code": "Message_190:\n db $00, $21, $42, $59, $26, $32, $59, $97, $D3, $59, $1C, $2E, $D3, $28, $26, $A6, $3E, $75, $E8, $59, $8D, $97, $9B, $B3, $2A, $2E, $B6, $1E, $76, $D8, $59, $1C, $28, $25, $25, $1E, $1C, $2D, $C8, $59, $C6, $59, $BD, $29, $2C, $3E, $7E, $73, $0C, $1A, $32, $97, $59, $C7, $1E, $59, $1D, $1A, $32, $59, $13, $B4, $20, $25, $1E, $73, $E2, $25, $25, $59, $27, $1A, $BE, $59, $1A, $59, $29, $BA, $1C, $1E, $59, $1A, $1F, $2D, $A1, $E3, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_191", + "code": "Message_191:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $D0, $1E, $24, $B3, $D8, $59, $D0, $1C, $CE, $2D, $2C, $59, $C6, $76, $D8, $59, $0C, $2E, $D1, $2B, $28, $28, $26, $59, $06, $2B, $28, $2D, $DA, $42, $59, $8D, $E3, $3F, $7E, $73, $E6, $59, $13, $28, $1A, $1D, $D3, $28, $28, $25, $59, $16, $28, $28, $1D, $2C, $59, $8D, $1A, $73, $DB, $22, $9C, $32, $59, $29, $BA, $1C, $1E, $43, $59, $29, $94, $21, $2C, $59, $D0, $1E, $26, $59, $DA, $73, $2D, $30, $B5, $2D, $59, $8C, $2D, $2E, $2B, $27, $59, $A8, $A7, $A6, $41, $7E, $73, $0C, $1A, $32, $97, $59, $D2, $BE, $C7, $1E, $59, $B4, $59, $DA, $30, $27, $59, $AE, $73, $1F, $22, $20, $2E, $2B, $A4, $C5, $21, $28, $30, $59, $DA, $59, $D2, $25, $2F, $1E, $59, $B6, $2C, $73, $26, $32, $D3, $A6, $22, $1E, $2C, $3E, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $39, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_192", + "code": "Message_192:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $D8, $59, $13, $1A, $22, $25, $59, $0F, $1A, $BA, $1C, $1E, $3E, $76, $7E, $73, $E6, $59, $29, $94, $21, $59, $2D, $21, $2B, $28, $2E, $20, $21, $59, $D8, $59, $2C, $DF, $26, $29, $2C, $73, $B5, $59, $D2, $BE, $2D, $B0, $27, $20, $59, $C7, $B9, $1A, $59, $03, $1E, $24, $2E, $59, $1C, $28, $2E, $25, $1D, $73, $27, $1A, $2F, $22, $20, $94, $1E, $59, $9B, $A8, $2D, $1A, $1B, $25, $32, $43, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $3B, $39, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_193", + "code": "Message_193:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $E6, $59, $20, $2B, $8C, $0A, $1A, $25, $32, $31, $28, $59, $02, $92, $25, $1E, $3E, $76, $7E, $73, $E6, $32, $59, $2C, $1A, $32, $59, $D8, $59, $0A, $B3, $C6, $59, $0A, $1A, $25, $32, $31, $28, $73, $B0, $1D, $59, $1A, $59, $CB, $A6, $1F, $2E, $25, $59, $E0, $1A, $29, $C7, $42, $59, $1D, $1E, $1E, $29, $73, $30, $B6, $B0, $27, $59, $D8, $59, $1C, $92, $25, $1E, $59, $DF, $25, $25, $2C, $41, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $35, $34, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_194", + "code": "Message_194:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $D8, $59, $19, $C8, $1A, $59, $13, $1E, $26, $CA, $3E, $76, $7E, $73, $E6, $59, $19, $C8, $1A, $59, $24, $B4, $20, $9F, $26, $59, $B5, $59, $B4, $73, $1C, $B1, $28, $2C, $41, $41, $41, $59, $D8, $59, $2B, $22, $2F, $A1, $8C, $D0, $1A, $73, $19, $C8, $1A, $2C, $59, $AD, $59, $97, $A0, $91, $28, $1D, $1D, $2C, $41, $7E, $73, $0F, $A6, $B1, $29, $2C, $59, $B6, $8B, $1C, $C7, $27, $1E, $1C, $2D, $A4, $DA, $73, $1A, $59, $1C, $A6, $2D, $8F, $41, $41, $41, $59, $2B, $28, $32, $1A, $25, $59, $2C, $1C, $90, $1A, $25, $3F, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $3C, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_195", + "code": "Message_195:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $E3, $59, $30, $B5, $21, $59, $DA, $59, $1E, $31, $29, $BB, $CE, $76, $06, $BA, $1C, $22, $1A, $59, $04, $D3, $94, $1E, $3F, $7E, $73, $00, $59, $29, $BA, $1C, $1E, $59, $C7, $1C, $1E, $59, $1F, $22, $25, $25, $A4, $30, $B6, $21, $59, $E0, $1A, $25, $2D, $21, $73, $8C, $CB, $A6, $41, $41, $41, $59, $1B, $2E, $2D, $59, $27, $28, $30, $3F, $59, $E6, $32, $73, $2C, $1A, $32, $59, $2C, $29, $22, $2B, $B6, $2C, $59, $DF, $25, $24, $59, $B6, $2C, $59, $B1, $25, $25, $2C, $43, $7E, $73, $00, $27, $1D, $59, $2D, $21, $91, $2D, $21, $A6, $1E, $8B, $D2, $BE, $C7, $1E, $73, $DF, $B6, $B3, $A8, $59, $E3, $41, $41, $41, $59, $1A, $59, $2F, $A6, $32, $73, $1C, $B0, $25, $25, $B3, $E0, $25, $9B, $1E, $41, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $3D, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_196", + "code": "Message_196:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $D8, $59, $06, $C8, $C7, $59, $0C, $B4, $1E, $2C, $3F, $76, $7E, $73, $08, $51, $2F, $1E, $59, $21, $A2, $1D, $59, $D8, $59, $06, $C8, $C7, $2C, $73, $8D, $CE, $D3, $25, $1E, $2C, $2C, $41, $41, $41, $59, $D2, $BE, $2D, $B0, $27, $20, $73, $1A, $98, $2E, $2D, $59, $26, $B5, $2C, $B3, $2B, $28, $9C, $59, $BE, $94, $3F, $7E, $73, $E8, $25, $25, $59, $27, $1E, $A4, $26, $C8, $1E, $59, $2D, $21, $93, $73, $B7, $59, $D3, $2B, $A5, $20, $2D, $21, $59, $DA, $59, $1C, $2B, $1A, $9C, $73, $2D, $21, $28, $D0, $59, $26, $B4, $1E, $2C, $59, $28, $29, $A5, $3E, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $3A, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_197", + "code": "Message_197:\n db $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $42, $59, $0A, $28, $28, $BB, $40, $0B, $22, $26, $29, $1A, $21, $3E, $75, $00, $21, $42, $59, $0A, $32, $1D, $2B, $28, $20, $8B, $2C, $B0, $29, $3E, $76, $7E, $73, $00, $59, $1F, $A2, $D2, $BE, $59, $2F, $1E, $2C, $D0, $25, $42, $59, $D8, $32, $59, $2C, $1A, $32, $73, $C7, $B9, $2D, $21, $28, $D0, $59, $E1, $28, $59, $1C, $93, $59, $D2, $1A, $2B, $73, $E2, $25, $25, $59, $CE, $1A, $1C, $21, $59, $B6, $3E, $7E, $73, $59, $07, $28, $30, $59, $9F, $1E, $2C, $59, $35, $36, $34, $59, $2B, $DC, $1E, $1E, $2C, $59, $2C, $C4, $3F, $73, $88, $44, $59, $12, $C4, $2C, $59, $AC, $28, $1D, $73, $88, $89, $08, $51, $25, $25, $59, $2D, $1A, $24, $1E, $59, $26, $32, $59, $1C, $21, $93, $1C, $1E, $2C, $68, $7F", + "file": "message.asm" + }, + { + "name": "Message_198", + "code": "Message_198:\n db $00, $21, $42, $59, $E0, $25, $25, $59, $2D, $21, $94, $8B, $DA, $28, $59, $96, $1D, $41, $75, $02, $28, $BE, $59, $96, $9C, $59, $22, $1F, $59, $E3, $51, $CD, $B4, $2D, $A6, $1E, $D3, $1E, $1D, $76, $B4, $59, $13, $B4, $20, $25, $1E, $8B, $BD, $29, $2C, $3E, $7E, $73, $13, $B4, $20, $25, $1E, $42, $59, $13, $B4, $20, $25, $1E, $3E, $59, $0A, $28, $28, $BB, $28, $40, $0B, $22, $26, $29, $1A, $21, $3E, $73, $43, $E6, $D0, $59, $8D, $D8, $59, $BD, $20, $22, $1C, $59, $30, $C8, $1D, $2C, $73, $2D, $21, $91, $13, $B4, $20, $25, $1E, $59, $1C, $CE, $94, $A4, $B0, $26, $D0, $25, $1F, $41, $7E, $73, $03, $28, $C0, $D3, $1E, $1A, $25, $59, $D8, $26, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_199", + "code": "Message_199:\n db $E6, $59, $BF, $D1, $2B, $28, $28, $26, $59, $B5, $59, $27, $28, $59, $26, $A6, $1E, $75, $20, $2B, $28, $30, $2D, $21, $59, $C6, $59, $D8, $59, $A2, $2D, $21, $41, $76, $12, $2D, $1E, $1E, $29, $A4, $B4, $59, $93, $1C, $22, $A3, $59, $BD, $20, $22, $1C, $42, $59, $B6, $7E, $73, $1B, $2B, $B4, $20, $2C, $59, $A8, $2D, $21, $59, $E1, $91, $B5, $59, $B0, $1D, $1D, $A5, $41, $73, $08, $27, $59, $B6, $2C, $59, $CB, $1D, $A1, $25, $22, $1E, $2C, $59, $D8, $59, $CB, $A6, $73, $DA, $59, $2B, $A7, $1E, $1A, $25, $59, $DB, $2E, $1E, $59, $A8, $26, $2C, $42, $59, $D0, $1C, $CE, $2D, $2C, $7E, $73, $BB, $27, $20, $59, $1C, $C7, $1C, $1E, $1A, $25, $A4, $1B, $32, $59, $27, $94, $2E, $CE, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19A", + "code": "Message_19A:\n db $E6, $59, $30, $B4, $1D, $2C, $59, $C7, $1C, $1E, $59, $1C, $1A, $2B, $2B, $22, $A4, $2D, $21, $28, $D0, $75, $E1, $28, $59, $D2, $1A, $2B, $A4, $30, $B6, $21, $59, $1F, $1E, $94, $21, $A1, $90, $76, $25, $1E, $1A, $1F, $42, $59, $2E, $27, $B0, $27, $1D, $A6, $A4, $1B, $32, $59, $D8, $59, $A2, $2D, $21, $41, $7E, $73, $01, $2E, $2D, $59, $30, $B6, $21, $59, $D8, $59, $2B, $B5, $1E, $59, $C6, $59, $1D, $1A, $2B, $24, $27, $1E, $2C, $2C, $42, $73, $D8, $59, $2C, $24, $32, $59, $2D, $2E, $2B, $27, $A4, $1A, $20, $8F, $D3, $59, $D8, $26, $41, $73, $0D, $28, $30, $42, $59, $C7, $B9, $2D, $21, $28, $D0, $59, $E1, $28, $59, $1E, $26, $1B, $2B, $1A, $1C, $1E, $7E, $73, $D8, $59, $2C, $24, $32, $8B, $20, $22, $1F, $2D, $2C, $59, $BD, $32, $59, $2B, $22, $1D, $1E, $59, $D8, $73, $1C, $2E, $2B, $2B, $A3, $2C, $59, $C6, $59, $1F, $CE, $1E, $9F, $26, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19B", + "code": "Message_19B:\n db $00, $59, $1B, $BA, $1D, $1E, $59, $98, $2B, $27, $59, $B4, $59, $2C, $B1, $9F, $30, $42, $59, $D8, $75, $0C, $1E, $1A, $9F, $30, $59, $01, $BA, $1D, $1E, $59, $C7, $1C, $1E, $59, $D1, $C7, $1E, $59, $B4, $76, $D8, $59, $21, $90, $2C, $59, $C6, $59, $1A, $59, $21, $A6, $28, $41, $7E, $73, $01, $2E, $2D, $59, $1D, $1A, $2B, $24, $27, $1E, $2C, $2C, $59, $1C, $25, $2E, $27, $20, $59, $DA, $59, $B6, $2C, $73, $1E, $1D, $20, $1E, $42, $59, $8C, $D8, $59, $21, $A6, $28, $59, $DF, $2C, $59, $BB, $D3, $41, $73, $0D, $28, $30, $42, $59, $D8, $59, $1B, $BA, $1D, $1E, $59, $DF, $B6, $2C, $42, $59, $1B, $2E, $2B, $22, $1E, $1D, $7E, $73, $97, $27, $1E, $94, $21, $59, $D8, $59, $E0, $B2, $C6, $73, $A8, $AC, $2D, $2D, $A0, $1A, $26, $1B, $B6, $22, $C7, $2C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19C", + "code": "Message_19C:\n db $05, $2B, $28, $26, $59, $1C, $2B, $32, $D3, $1A, $25, $59, $8C, $30, $94, $A6, $42, $59, $D8, $75, $19, $C8, $1A, $59, $1C, $2B, $1A, $1F, $2D, $A4, $30, $C7, $1D, $A6, $2C, $59, $2D, $21, $94, $76, $29, $22, $A6, $1C, $A4, $D8, $59, $2F, $1E, $22, $25, $59, $C6, $59, $CE, $1A, $25, $26, $2C, $41, $7E, $73, $E6, $22, $2B, $59, $30, $C8, $24, $2C, $59, $28, $29, $A5, $A4, $29, $94, $21, $2C, $59, $DA, $73, $29, $BA, $1C, $1E, $2C, $59, $2E, $27, $D0, $A5, $42, $59, $1B, $2E, $2D, $59, $91, $20, $CE, $94, $73, $1C, $28, $D3, $41, $7E, $73, $16, $21, $91, $1F, $BB, $30, $2C, $59, $2D, $21, $2B, $28, $2E, $20, $21, $59, $D8, $59, $30, $94, $A6, $73, $BD, $32, $59, $25, $1E, $1A, $1D, $59, $DA, $59, $2C, $1A, $25, $2F, $94, $22, $C7, $43, $59, $C8, $73, $2B, $2E, $B4, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19D", + "code": "Message_19D:\n db $E6, $59, $B1, $25, $25, $2C, $59, $C6, $59, $06, $BA, $1C, $22, $1A, $59, $C7, $1C, $1E, $59, $1E, $1C, $21, $28, $1E, $1D, $75, $30, $B6, $21, $59, $DF, $2B, $26, $2D, $21, $59, $8C, $E0, $1A, $25, $2D, $21, $42, $59, $32, $1E, $2D, $76, $22, $1C, $1E, $59, $1F, $22, $25, $25, $A4, $D8, $22, $2B, $59, $21, $A2, $2D, $2C, $41, $7E, $73, $08, $27, $59, $D8, $22, $2B, $59, $20, $CE, $1E, $1D, $42, $59, $D8, $32, $59, $30, $A6, $1E, $59, $1D, $2B, $1A, $30, $27, $73, $DA, $59, $CB, $A6, $2C, $59, $2D, $21, $91, $A9, $33, $1E, $59, $D8, $26, $59, $A9, $26, $73, $30, $B6, $B0, $27, $41, $7E, $73, $0D, $28, $30, $42, $59, $D8, $22, $2B, $59, $25, $1E, $20, $1A, $1C, $32, $59, $B5, $59, $1B, $2E, $2D, $59, $1C, $28, $25, $1D, $73, $D3, $C7, $1E, $42, $59, $1A, $59, $29, $2B, $B5, $C7, $59, $A8, $59, $2D, $21, $28, $D0, $73, $E1, $28, $59, $D2, $2E, $20, $21, $2D, $59, $DA, $28, $59, $BF, $1C, $21, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19E", + "code": "Message_19E:\n db $E6, $59, $A2, $2D, $21, $59, $2C, $B4, $20, $2C, $59, $C6, $59, $CB, $A6, $42, $75, $1B, $2E, $2B, $22, $A4, $1D, $1E, $1E, $29, $59, $B4, $59, $B6, $2C, $59, $2F, $1E, $B4, $2C, $41, $76, $02, $2B, $32, $D3, $1A, $25, $2C, $42, $59, $A8, $20, $A4, $B4, $59, $D8, $59, $93, $1C, $22, $A3, $7E, $73, $1F, $22, $CE, $2C, $42, $59, $21, $28, $25, $1D, $59, $D8, $59, $24, $1E, $32, $2C, $59, $DA, $59, $CE, $1A, $25, $26, $2C, $73, $97, $32, $C7, $1D, $41, $59, $01, $2E, $2D, $59, $CB, $A1, $9B, $1E, $2C, $59, $91, $1A, $73, $29, $2B, $22, $1C, $1E, $42, $59, $A8, $59, $D8, $59, $AC, $1D, $9D, $D0, $2C, $7E, $73, $2C, $1C, $94, $2D, $A6, $A4, $D8, $22, $2B, $59, $20, $22, $1F, $2D, $2C, $59, $1A, $1C, $2B, $28, $2C, $2C, $73, $D8, $59, $25, $90, $42, $59, $B0, $1D, $1D, $A0, $A9, $26, $59, $26, $C8, $2D, $1A, $25, $2C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_19F", + "code": "Message_19F:\n db $00, $59, $21, $A6, $28, $59, $C7, $1C, $1E, $59, $2C, $1A, $22, $25, $A4, $D8, $59, $D0, $1A, $2C, $42, $75, $1B, $2E, $2D, $59, $1F, $94, $1E, $59, $2D, $2E, $2B, $27, $A4, $B0, $26, $59, $DA, $59, $2B, $2E, $B4, $42, $76, $1D, $1E, $1E, $29, $59, $B4, $59, $D8, $59, $BE, $1A, $9F, $30, $2C, $43, $7E, $73, $05, $2B, $28, $26, $59, $27, $28, $95, $59, $21, $A2, $2D, $59, $DA, $59, $1C, $2E, $2B, $D0, $1D, $73, $1C, $1A, $29, $2D, $8F, $42, $59, $0A, $32, $1D, $2B, $28, $20, $59, $27, $28, $30, $59, $2B, $22, $9D, $73, $D8, $59, $DF, $2F, $1E, $2C, $59, $C6, $59, $D8, $59, $00, $1B, $32, $2C, $2C, $41, $7E, $73, $08, $27, $59, $B0, $2C, $59, $2A, $2E, $1E, $D3, $59, $DA, $59, $1D, $1E, $1F, $32, $59, $D8, $59, $AC, $1D, $2C, $42, $73, $21, $1E, $59, $D0, $1E, $24, $2C, $59, $C2, $59, $20, $BB, $2B, $32, $42, $59, $1B, $2E, $2D, $59, $1A, $73, $CE, $2D, $2E, $2B, $27, $59, $DA, $59, $E1, $91, $DF, $2C, $59, $BB, $D3, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A0", + "code": "Message_1A0:\n db $00, $21, $42, $59, $93, $28, $2D, $21, $A1, $D0, $1C, $CE, $2D, $59, $2C, $1C, $2B, $28, $25, $25, $3E, $75, $E6, $D0, $59, $93, $1C, $22, $A3, $59, $30, $2B, $B6, $B4, $20, $2C, $59, $21, $28, $25, $1D, $76, $26, $32, $D3, $A6, $22, $1E, $2C, $59, $BB, $27, $20, $59, $BB, $D3, $59, $DA, $59, $2D, $22, $BE, $41, $7E, $73, $12, $21, $8E, $08, $59, $DB, $93, $2C, $25, $94, $1E, $59, $B6, $2C, $59, $A8, $AC, $2D, $2D, $A5, $73, $30, $C8, $1D, $2C, $59, $A8, $59, $E3, $3F, $73, $7E, $73, $44, $59, $13, $2B, $93, $2C, $25, $94, $1E, $59, $D8, $59, $2C, $1C, $2B, $28, $25, $25, $73, $89, $11, $1E, $1A, $1D, $59, $29, $2B, $A7, $22, $28, $2E, $2C, $59, $2C, $1C, $2B, $28, $25, $25, $73, $89, $03, $28, $C0, $DA, $2E, $1C, $21, $59, $26, $32, $59, $D3, $2E, $1F, $1F, $71, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A1", + "code": "Message_1A1:\n db $15, $A6, $32, $59, $E0, $25, $25, $41, $59, $0B, $1E, $2D, $59, $2E, $2C, $59, $2E, $27, $2F, $1E, $22, $25, $59, $D8, $75, $D0, $1C, $CE, $2D, $2C, $59, $B0, $1D, $1D, $A0, $30, $B6, $B0, $27, $59, $2D, $B0, $2C, $76, $93, $1C, $22, $A3, $59, $2D, $1E, $31, $2D, $41, $7E, $73, $0B, $B5, $2D, $A0, $1C, $BB, $D0, $25, $32, $42, $59, $A8, $59, $D8, $D0, $73, $30, $C8, $1D, $2C, $59, $1C, $1A, $2B, $2B, $32, $59, $20, $CE, $91, $E0, $22, $20, $21, $2D, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A2", + "code": "Message_1A2:\n db $E6, $59, $2C, $1C, $2B, $28, $25, $25, $59, $AE, $59, $97, $A0, $DB, $93, $2C, $25, $94, $1E, $1D, $41, $75, $00, $C2, $21, $A1, $29, $22, $1E, $1C, $1E, $59, $C6, $59, $0A, $1A, $25, $32, $31, $28, $2C, $76, $B0, $D3, $C8, $32, $59, $2B, $A7, $1E, $1A, $25, $1E, $1D, $41, $7E, $73, $E6, $D0, $59, $30, $C8, $1D, $2C, $59, $BD, $32, $59, $2C, $A6, $2F, $1E, $59, $E3, $73, $E0, $25, $25, $42, $59, $22, $1F, $59, $E3, $59, $21, $1E, $A4, $D8, $26, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A3", + "code": "Message_1A3:\n db $08, $2D, $59, $D0, $1E, $26, $2C, $59, $E3, $51, $2F, $1E, $59, $1C, $28, $25, $25, $1E, $1C, $2D, $A4, $1A, $25, $25, $75, $D8, $59, $2C, $1C, $2B, $28, $25, $25, $2C, $59, $B4, $59, $D8, $59, $25, $8C, $C6, $76, $0A, $1A, $25, $32, $31, $28, $3E, $59, $E8, $59, $DB, $2E, $B9, $8D, $D8, $59, $21, $A6, $28, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A4", + "code": "Message_1A4:\n db $E6, $59, $29, $2B, $B4, $1C, $1E, $2C, $2C, $43, $59, $2D, $1A, $24, $A0, $A9, $26, $59, $2E, $2C, $3E, $75, $16, $1E, $59, $D1, $28, $2E, $25, $1D, $59, $AD, $59, $D0, $A0, $B6, $59, $9B, $B4, $20, $41, $76, $E6, $59, $11, $22, $2F, $A1, $19, $C8, $1A, $2C, $59, $20, $2B, $28, $30, $59, $98, $25, $1D, $A6, $7E, $73, $1E, $1A, $1C, $21, $59, $1D, $1A, $32, $41, $59, $0D, $28, $30, $42, $59, $D8, $32, $51, $2F, $1E, $59, $D3, $28, $25, $A5, $73, $28, $2E, $2B, $59, $26, $28, $D3, $59, $29, $CE, $1C, $22, $28, $2E, $2C, $59, $2D, $CE, $1A, $2C, $2E, $CE, $3E, $73, $16, $21, $28, $59, $E2, $25, $25, $59, $CC, $2D, $1E, $1C, $2D, $59, $2E, $2C, $59, $27, $28, $30, $3F, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A5", + "code": "Message_1A5:\n db $E8, $59, $1C, $93, $2D, $59, $2C, $E2, $26, $42, $59, $1C, $93, $59, $E3, $3F, $59, $08, $2D, $51, $2C, $75, $27, $28, $59, $2C, $2E, $2B, $29, $2B, $B5, $1E, $43, $59, $D8, $59, $30, $94, $A6, $2C, $59, $21, $A6, $1E, $76, $8D, $2D, $CE, $1A, $9A, $2B, $28, $2E, $2C, $41, $7E, $73, $01, $2E, $2D, $59, $08, $51, $2F, $1E, $59, $21, $A2, $1D, $59, $30, $B0, $2C, $29, $A6, $2C, $59, $C6, $59, $D8, $73, $00, $1B, $32, $2C, $2C, $43, $59, $B4, $59, $2D, $21, $91, $1D, $1A, $2B, $24, $59, $29, $BA, $1C, $1E, $42, $59, $D8, $73, $1F, $25, $22, $29, $29, $A6, $2C, $59, $8D, $2C, $1A, $22, $1D, $59, $DA, $59, $97, $59, $B0, $1D, $1D, $A5, $41, $7E, $73, $08, $1F, $59, $E3, $59, $1C, $28, $2E, $25, $1D, $59, $1F, $B4, $1D, $59, $D8, $26, $42, $59, $29, $A6, $B1, $29, $2C, $73, $D8, $59, $30, $94, $A6, $2C, $59, $30, $28, $2E, $25, $1D, $59, $27, $28, $59, $BB, $27, $20, $A6, $73, $21, $28, $25, $1D, $59, $E3, $59, $96, $9C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A6", + "code": "Message_1A6:\n db $E6, $59, $29, $2B, $B4, $1C, $1E, $2C, $2C, $59, $BD, $32, $59, $97, $59, $AC, $27, $1E, $59, $A9, $26, $75, $2D, $B0, $2C, $59, $30, $C8, $25, $1D, $42, $59, $1B, $2E, $2D, $59, $21, $A1, $2C, $29, $22, $2B, $B6, $59, $AE, $76, $1F, $C4, $59, $27, $1E, $30, $59, $25, $22, $1F, $1E, $59, $B4, $59, $E3, $41, $7E, $73, $E6, $59, $19, $C8, $1A, $59, $0C, $1A, $2C, $24, $59, $1C, $1A, $2B, $2B, $22, $1E, $2C, $59, $21, $A6, $73, $2F, $28, $22, $1C, $1E, $42, $59, $21, $A1, $30, $B5, $9F, $26, $43, $59, $8C, $1A, $73, $29, $22, $1E, $1C, $1E, $59, $C6, $59, $28, $2E, $2B, $59, $21, $A2, $2D, $2C, $41, $7E, $73, $0F, $2B, $28, $2D, $1E, $1C, $2D, $59, $B6, $59, $E0, $25, $25, $42, $59, $1B, $2B, $1A, $2F, $1E, $59, $C7, $1E, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A7", + "code": "Message_1A7:\n db $07, $1E, $32, $42, $59, $DB, $1A, $2F, $1E, $25, $A6, $3E, $59, $E6, $D0, $59, $26, $B4, $1E, $2C, $75, $8D, $D0, $1A, $25, $A4, $2D, $22, $20, $21, $2D, $41, $59, $16, $B6, $21, $C5, $11, $28, $9C, $76, $12, $22, $2B, $BB, $B4, $2C, $42, $59, $08, $59, $9F, $27, $2D, $59, $AD, $59, $D8, $7E, $73, $D3, $2B, $A5, $20, $2D, $21, $59, $DA, $59, $1B, $CE, $1A, $24, $59, $2D, $21, $2B, $28, $2E, $20, $21, $3E, $73, $16, $1E, $59, $06, $C8, $C7, $2C, $59, $27, $1E, $A4, $2D, $21, $91, $21, $A2, $2D, $32, $73, $BE, $91, $DA, $59, $1F, $2E, $1E, $25, $59, $2E, $2C, $43, $7E, $73, $C2, $B0, $27, $20, $59, $1E, $25, $D0, $59, $29, $1A, $9C, $2C, $59, $D8, $59, $29, $2E, $27, $1C, $21, $3E, $73, $01, $2B, $B3, $BE, $59, $1F, $22, $2F, $1E, $42, $59, $8C, $08, $51, $25, $25, $59, $28, $29, $A5, $73, $D8, $59, $DF, $32, $59, $A8, $59, $E3, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A8", + "code": "Message_1A8:\n db $07, $26, $26, $43, $59, $2D, $B0, $2C, $59, $B5, $59, $1A, $59, $D3, $1A, $2B, $2D, $42, $59, $1B, $2E, $2D, $59, $08, $75, $27, $1E, $A4, $1F, $22, $2F, $1E, $59, $11, $28, $9C, $59, $12, $22, $2B, $BB, $B4, $2C, $59, $DA, $76, $AB, $59, $D8, $59, $23, $28, $1B, $59, $9F, $27, $1E, $3E, $7E, $73, $0A, $1E, $1E, $29, $59, $2C, $A2, $1C, $B0, $27, $20, $42, $59, $1F, $2B, $22, $A5, $1D, $3E, $59, $13, $21, $28, $D0, $73, $2B, $28, $9C, $2C, $59, $1A, $2B, $A5, $51, $2D, $59, $AC, $B3, $DA, $59, $1B, $2E, $1D, $20, $1E, $73, $C7, $59, $D8, $22, $2B, $59, $28, $30, $27, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_1A9", + "code": "Message_1A9:\n db $00, $21, $3E, $59, $0D, $28, $30, $59, $2D, $21, $94, $8B, $E1, $91, $08, $51, $26, $59, $2D, $1A, $25, $24, $B4, $51, $75, $1A, $98, $2E, $2D, $3E, $59, $05, $22, $2F, $1E, $59, $11, $28, $9C, $59, $12, $22, $2B, $BB, $B4, $2C, $3E, $76, $13, $B0, $2C, $59, $B5, $59, $CE, $1A, $25, $B9, $B6, $3E, $7E, $73, $16, $B6, $21, $59, $2D, $B0, $2C, $42, $59, $08, $51, $2F, $1E, $59, $AC, $2D, $59, $8E, $D8, $73, $D3, $2B, $A5, $20, $2D, $21, $59, $08, $59, $27, $1E, $A4, $DA, $59, $1C, $2B, $1A, $9C, $59, $D8, $D0, $73, $26, $B4, $1E, $2C, $59, $28, $29, $A5, $3E, $7E, $73, $12, $2D, $8C, $96, $9C, $42, $59, $1F, $2B, $22, $A5, $1D, $43, $D8, $D0, $73, $D3, $C7, $1E, $2C, $59, $8D, $1A, $98, $2E, $2D, $59, $DA, $59, $1F, $1E, $1E, $25, $59, $D8, $73, $26, $B2, $C6, $59, $1A, $59, $DB, $2E, $1E, $59, $06, $C8, $C7, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AA", + "code": "Message_1AA:\n db $00, $21, $42, $59, $DB, $1A, $2F, $1E, $25, $A1, $A9, $26, $59, $97, $32, $C7, $1D, $41, $41, $41, $75, $E3, $59, $D3, $8C, $27, $A2, $59, $D8, $59, $13, $1E, $26, $29, $C8, $1A, $25, $76, $0F, $32, $2B, $1A, $26, $22, $1D, $42, $59, $1A, $59, $29, $BA, $1C, $1E, $59, $C6, $59, $97, $20, $B4, $27, $B4, $20, $2C, $41, $7E, $73, $E6, $59, $12, $21, $2B, $B4, $1E, $59, $C6, $59, $0E, $2B, $22, $20, $B4, $2C, $59, $25, $22, $1E, $2C, $59, $E0, $D3, $42, $73, $1A, $59, $29, $BA, $1C, $1E, $59, $C6, $59, $93, $1C, $22, $A3, $59, $CB, $A6, $41, $7E, $73, $0E, $27, $B9, $D8, $59, $2C, $26, $8E, $BD, $32, $59, $2D, $CE, $1A, $1D, $59, $B6, $2C, $73, $29, $94, $21, $2C, $42, $59, $A8, $59, $D8, $59, $D0, $1C, $CE, $2D, $2C, $59, $30, $B6, $B0, $27, $73, $8D, $B0, $1D, $1D, $A0, $A9, $26, $59, $D8, $59, $2E, $27, $30, $C8, $2D, $21, $32, $41, $7E, $73, $0B, $1E, $20, $A5, $1D, $2C, $59, $2C, $1A, $32, $59, $B6, $59, $20, $2B, $93, $2D, $2C, $59, $1A, $59, $CE, $25, $22, $1C, $73, $2D, $21, $91, $21, $28, $25, $1D, $2C, $59, $A8, $26, $59, $D3, $1E, $1A, $1D, $32, $59, $A7, $A0, $B4, $73, $2D, $B0, $2C, $59, $2E, $27, $D3, $1A, $95, $59, $CE, $1A, $25, $26, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AB", + "code": "Message_1AB:\n db $E8, $51, $2F, $1E, $59, $9B, $1E, $59, $1F, $1A, $2B, $59, $DA, $59, $2D, $B0, $2C, $59, $29, $BA, $1C, $1E, $41, $75, $E6, $59, $12, $21, $2B, $B4, $1E, $59, $C6, $59, $0F, $28, $30, $A1, $25, $22, $1E, $2C, $59, $30, $B6, $B0, $27, $76, $D8, $59, $26, $28, $2E, $27, $2D, $8F, $2C, $42, $59, $E1, $A6, $1E, $59, $D8, $59, $25, $90, $7E, $73, $B6, $D0, $25, $1F, $59, $20, $2B, $28, $93, $2C, $59, $2E, $27, $1D, $A1, $B6, $2C, $59, $E0, $22, $20, $21, $2D, $41, $73, $13, $21, $A6, $1E, $42, $59, $E3, $59, $E2, $25, $25, $59, $1F, $B4, $1D, $59, $1A, $59, $2D, $CE, $1A, $2C, $2E, $CE, $73, $2D, $21, $91, $20, $2B, $93, $2D, $2C, $59, $D8, $59, $D3, $2B, $A5, $20, $2D, $21, $59, $DA, $7E, $73, $26, $28, $2F, $1E, $59, $A7, $A0, $D8, $59, $2E, $27, $26, $28, $2F, $1A, $95, $41, $73, $01, $2E, $2D, $59, $97, $DF, $CE, $42, $59, $2C, $2E, $1C, $21, $59, $CB, $A1, $B5, $73, $27, $A7, $A1, $20, $22, $2F, $A0, $1F, $CE, $1E, $25, $32, $41, $59, $0E, $27, $B9, $2D, $21, $28, $D0, $7E, $73, $30, $B6, $21, $59, $2E, $27, $DF, $2F, $A6, $B3, $CE, $D2, $25, $2F, $1E, $59, $A5, $1D, $2E, $CE, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AC", + "code": "Message_1AC:\n db $E6, $59, $30, $94, $A6, $2C, $59, $C6, $59, $2D, $B0, $2C, $59, $CE, $1A, $25, $26, $59, $1A, $CE, $75, $C2, $59, $24, $B4, $1D, $59, $DA, $59, $28, $2E, $2D, $2C, $22, $1D, $A6, $2C, $59, $25, $22, $24, $1E, $59, $E3, $41, $76, $01, $1E, $32, $C7, $1D, $59, $2D, $B0, $2C, $59, $2C, $DF, $26, $29, $59, $25, $22, $1E, $2C, $7E, $73, $D8, $59, $12, $21, $2B, $B4, $1E, $59, $C6, $59, $16, $B5, $9F, $26, $42, $59, $E1, $A6, $1E, $73, $D8, $59, $1F, $25, $22, $29, $29, $A6, $2C, $59, $CE, $D3, $41, $73, $16, $B6, $21, $59, $D8, $26, $42, $59, $C7, $1E, $59, $BD, $32, $59, $2C, $E2, $26, $59, $D8, $7E, $73, $1D, $1E, $1E, $29, $1E, $D3, $59, $1C, $2E, $2B, $2B, $A3, $2C, $59, $8C, $2E, $27, $1C, $28, $2F, $A6, $73, $E1, $91, $D8, $59, $00, $1B, $32, $2C, $2C, $59, $B0, $9D, $41, $73, $01, $2E, $2D, $59, $DA, $59, $1C, $BA, $22, $26, $59, $D8, $26, $42, $59, $E3, $59, $BF, $D3, $7E, $73, $29, $94, $21, $59, $D8, $59, $DF, $32, $59, $A8, $DF, $2B, $1D, $59, $2D, $21, $2B, $28, $2E, $20, $21, $73, $D2, $BE, $59, $28, $2D, $21, $A1, $BE, $93, $2C, $43, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AD", + "code": "Message_1AD:\n db $0A, $32, $1D, $2B, $28, $20, $59, $DF, $2C, $59, $C7, $1C, $1E, $59, $1A, $59, $21, $A6, $28, $42, $75, $1C, $21, $28, $2C, $A0, $1B, $32, $59, $D8, $59, $0C, $1E, $1A, $9F, $30, $59, $01, $BA, $1D, $1E, $76, $B4, $59, $D8, $59, $0C, $1E, $1A, $9F, $30, $59, $C6, $59, $12, $B1, $9F, $30, $2C, $41, $7E, $73, $01, $2E, $2D, $59, $1A, $26, $1B, $B6, $22, $C7, $59, $1C, $BB, $2E, $1D, $A4, $B0, $2C, $59, $21, $A2, $2D, $42, $73, $8C, $21, $1E, $59, $1F, $1E, $25, $25, $59, $DA, $59, $D8, $59, $DB, $22, $9C, $2C, $59, $C6, $73, $06, $93, $C7, $9F, $2B, $1F, $42, $59, $24, $B3, $C6, $59, $2D, $B0, $A7, $1E, $2C, $41, $7E, $73, $16, $21, $A0, $0A, $32, $1D, $2B, $28, $20, $8B, $1D, $1E, $1E, $1D, $2C, $59, $2D, $2E, $2B, $27, $A4, $DA, $73, $1D, $1A, $2B, $24, $27, $1E, $2C, $2C, $42, $59, $D8, $59, $AC, $1D, $9D, $D0, $2C, $59, $1C, $92, $73, $B0, $26, $59, $B4, $DA, $59, $D8, $59, $00, $1B, $32, $2C, $2C, $43, $7E, $73, $18, $1E, $2D, $59, $A7, $A0, $21, $A6, $1E, $42, $59, $B0, $2C, $59, $21, $2E, $27, $20, $A1, $20, $CE, $30, $42, $73, $8C, $21, $1E, $59, $2B, $28, $D0, $59, $1A, $20, $8F, $42, $59, $27, $28, $59, $BB, $27, $20, $A6, $73, $1A, $59, $21, $A6, $28, $42, $59, $1B, $2E, $2D, $59, $1A, $59, $24, $B3, $C6, $59, $29, $22, $2B, $94, $1E, $2C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AE", + "code": "Message_1AE:\n db $0E, $21, $42, $59, $E1, $94, $8B, $2D, $B0, $2C, $3F, $59, $00, $59, $2B, $B4, $20, $3F, $59, $08, $75, $1F, $C4, $59, $B6, $59, $DF, $D1, $A4, $DC, $59, $C7, $59, $D8, $76, $00, $1B, $32, $2C, $2C, $1A, $25, $59, $12, $21, $C8, $1E, $41, $7E, $73, $08, $2D, $59, $20, $25, $22, $26, $26, $A6, $2C, $59, $D3, $2B, $93, $20, $1E, $25, $32, $42, $59, $25, $22, $24, $1E, $59, $B6, $73, $21, $28, $25, $1D, $2C, $59, $D2, $BE, $59, $B0, $1D, $1D, $A0, $CB, $A6, $41, $59, $08, $59, $AD, $73, $27, $28, $59, $2E, $D0, $59, $A8, $59, $B6, $42, $59, $1B, $2E, $2D, $59, $E3, $59, $26, $22, $20, $21, $2D, $41, $7E, $73, $13, $1A, $24, $1E, $59, $B6, $59, $DA, $59, $1A, $59, $23, $1E, $E0, $25, $A6, $42, $59, $2D, $21, $A6, $1E, $51, $2C, $73, $C7, $1E, $59, $27, $A2, $59, $D8, $59, $15, $22, $25, $BA, $20, $1E, $59, $C6, $59, $04, $1C, $21, $28, $1E, $2C, $42, $73, $E1, $28, $59, $1A, $29, $29, $2B, $1A, $B5, $1E, $2C, $59, $2C, $2E, $1C, $21, $59, $2D, $CE, $1A, $2C, $2E, $CE, $2C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1AF", + "code": "Message_1AF:\n db $E6, $59, $05, $C8, $2D, $CE, $2C, $2C, $59, $C6, $59, $12, $1E, $1C, $CE, $2D, $2C, $59, $25, $22, $1E, $2C, $75, $1D, $1E, $1E, $29, $59, $30, $B6, $B0, $27, $59, $D8, $59, $00, $1B, $32, $2C, $2C, $42, $59, $D0, $1A, $25, $1E, $1D, $76, $1B, $32, $59, $93, $1C, $22, $A3, $59, $CB, $A6, $41, $7E, $73, $13, $28, $59, $28, $29, $A0, $B6, $2C, $59, $20, $94, $1E, $2C, $42, $59, $E3, $59, $BF, $D3, $73, $2E, $27, $B6, $1E, $59, $D8, $59, $04, $2C, $2C, $A5, $1C, $1E, $2C, $59, $C6, $59, $D8, $73, $13, $2B, $22, $A8, $1C, $1E, $59, $A9, $26, $59, $0A, $1A, $25, $32, $31, $28, $41, $7E, $73, $01, $2E, $2D, $59, $97, $DF, $CE, $42, $59, $A8, $59, $97, $32, $C7, $1D, $59, $D8, $73, $A8, $2D, $CE, $2C, $2C, $59, $25, $22, $1E, $2C, $59, $0A, $32, $1D, $2B, $28, $20, $42, $59, $D8, $73, $1F, $1A, $25, $25, $A0, $21, $A6, $28, $42, $59, $2D, $30, $B5, $2D, $A4, $1B, $32, $59, $20, $CE, $1E, $1D, $41, $7E, $73, $E6, $59, $0C, $92, $A1, $12, $30, $C8, $1D, $59, $B5, $59, $D8, $59, $C7, $25, $32, $73, $1B, $BA, $1D, $1E, $59, $2D, $21, $91, $1C, $93, $59, $1B, $CE, $1A, $24, $59, $B0, $2C, $59, $1C, $2E, $2B, $D0, $42, $73, $32, $1E, $2D, $59, $B6, $59, $CE, $D3, $2C, $59, $20, $2E, $1A, $2B, $1D, $A4, $1B, $32, $59, $DB, $22, $1A, $25, $2C, $42, $73, $D1, $2B, $B4, $1E, $2C, $59, $1B, $2E, $22, $25, $2D, $59, $1B, $32, $59, $D8, $59, $AC, $1D, $9D, $D0, $2C, $41, $7E, $73, $13, $28, $59, $1C, $BA, $22, $26, $59, $B6, $42, $59, $E3, $59, $BF, $D3, $59, $1C, $C7, $2A, $2E, $A6, $73, $1E, $1A, $1C, $21, $59, $1C, $B1, $25, $25, $A5, $20, $1E, $59, $8C, $2D, $21, $A0, $CE, $2D, $2E, $2B, $27, $73, $DA, $59, $E1, $A6, $1E, $59, $B6, $59, $8E, $97, $20, $93, $43, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B0", + "code": "Message_1B0:\n db $E6, $59, $12, $21, $2B, $B4, $1E, $59, $C6, $59, $0F, $28, $30, $A6, $3F, $59, $00, $59, $DB, $22, $9C, $32, $75, $29, $BA, $1C, $1E, $42, $59, $2D, $21, $91, $C7, $1E, $41, $59, $E6, $59, $1C, $1A, $2F, $1E, $2C, $76, $8D, $1F, $2E, $25, $25, $59, $C6, $59, $2C, $2E, $2B, $29, $2B, $B5, $1E, $2C, $41, $7E, $73, $E6, $32, $59, $2C, $1A, $32, $59, $D8, $59, $29, $94, $21, $59, $A8, $DF, $2B, $1D, $59, $B5, $73, $B0, $1D, $1D, $A5, $42, $59, $C7, $B9, $2B, $A7, $1E, $1A, $25, $A4, $DA, $59, $2D, $21, $28, $D0, $73, $E2, $25, $25, $B3, $DA, $59, $2D, $1A, $24, $1E, $59, $1A, $59, $25, $1E, $1A, $29, $59, $C6, $59, $1F, $1A, $B6, $21, $41, $7E, $73, $08, $2D, $8B, $C2, $59, $A8, $59, $D8, $59, $1F, $8F, $2D, $59, $C6, $59, $21, $A2, $2D, $41, $73, $E8, $51, $1D, $59, $97, $D3, $59, $DB, $2E, $D3, $59, $E3, $2B, $73, $B4, $D3, $B4, $1C, $2D, $2C, $42, $59, $DB, $1A, $2F, $1E, $25, $A6, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B1", + "code": "Message_1B1:\n db $0C, $26, $26, $42, $59, $D8, $59, $2C, $BE, $25, $25, $59, $C6, $59, $11, $28, $9C, $59, $12, $22, $2B, $BB, $B4, $2C, $3E, $75, $0D, $28, $2D, $B0, $27, $20, $59, $1F, $2E, $1E, $25, $2C, $59, $1A, $59, $06, $C8, $C7, $59, $25, $22, $24, $1E, $76, $2D, $21, $28, $D0, $59, $21, $A2, $2D, $32, $59, $1C, $21, $2E, $27, $24, $2C, $59, $C6, $59, $D3, $C7, $1E, $41, $7E, $73, $E8, $51, $25, $25, $59, $1F, $B4, $1D, $59, $D8, $26, $59, $2C, $1C, $94, $2D, $A6, $1E, $1D, $73, $1A, $2B, $C4, $59, $21, $A6, $1E, $42, $59, $1B, $2E, $2D, $59, $25, $22, $1F, $2D, $B3, $D8, $26, $3F, $73, $13, $21, $94, $8B, $93, $28, $2D, $21, $A1, $26, $94, $2D, $A6, $41, $7E, $73, $0E, $27, $B9, $D2, $BE, $C7, $1E, $59, $30, $B6, $21, $59, $CE, $1A, $25, $59, $CB, $A6, $73, $1C, $28, $2E, $25, $1D, $59, $26, $28, $2F, $1E, $59, $2D, $21, $28, $D0, $59, $97, $1A, $2E, $2D, $22, $1E, $2C, $41, $59, $06, $28, $2D, $73, $1A, $59, $0F, $28, $30, $A1, $06, $BB, $2F, $1E, $59, $21, $90, $32, $3F, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B2", + "code": "Message_1B2:\n db $E8, $59, $29, $25, $93, $27, $B3, $DA, $59, $21, $1E, $1A, $1D, $59, $B4, $DA, $59, $D8, $75, $12, $21, $2B, $B4, $1E, $59, $C6, $59, $0F, $28, $30, $A6, $3F, $76, $07, $1E, $21, $42, $59, $AC, $28, $1D, $59, $25, $2E, $9C, $3E, $7E, $73, $E6, $59, $1F, $BB, $C8, $2C, $59, $9F, $27, $2D, $59, $1A, $25, $DF, $32, $2C, $59, $D0, $1E, $26, $41, $41, $41, $73, $CE, $1A, $25, $42, $59, $22, $1F, $59, $E3, $59, $1C, $94, $1C, $21, $59, $26, $32, $59, $1D, $2B, $22, $1F, $2D, $41, $73, $00, $27, $1D, $59, $2D, $21, $28, $D0, $59, $11, $28, $9C, $59, $12, $22, $2B, $BB, $B4, $2C, $3F, $59, $7E, $73, $07, $1E, $1A, $2F, $32, $59, $1A, $2C, $59, $98, $2E, $25, $1D, $A6, $2C, $41, $59, $16, $B6, $21, $C5, $D8, $73, $0F, $28, $30, $A1, $06, $BB, $2F, $1E, $42, $59, $E3, $CD, $C5, $C6, $59, $25, $2E, $9C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B3", + "code": "Message_1B3:\n db $0E, $21, $28, $40, $21, $28, $3E, $59, $16, $1E, $25, $25, $42, $59, $BB, $28, $24, $59, $E1, $28, $59, $D3, $2E, $26, $95, $1D, $75, $B4, $DA, $59, $26, $32, $59, $03, $CE, $1A, $26, $59, $07, $2E, $2D, $3E, $59, $02, $21, $1E, $9C, $B4, $20, $76, $C5, $D8, $59, $04, $C7, $59, $00, $1B, $32, $2C, $2C, $42, $59, $8D, $E0, $3F, $7E, $73, $08, $51, $26, $59, $0C, $1A, $CA, $42, $59, $32, $1E, $2C, $42, $59, $2D, $21, $91, $0C, $1A, $CA, $3E, $73, $16, $1E, $51, $2F, $1E, $59, $1C, $2B, $28, $2C, $2C, $A4, $29, $94, $21, $2C, $59, $97, $A8, $1E, $59, $B4, $73, $07, $28, $BB, $1D, $2B, $2E, $26, $43, $59, $C8, $59, $DF, $2C, $59, $B6, $59, $0B, $1A, $1B, $2B, $32, $27, $27, $1A, $3F, $7E, $73, $07, $1E, $21, $42, $59, $E3, $59, $30, $A6, $1E, $59, $1A, $59, $1B, $B6, $59, $C6, $59, $1A, $59, $29, $1E, $D3, $73, $C7, $59, $26, $32, $59, $1B, $2B, $28, $28, $26, $59, $2B, $28, $2E, $2D, $1E, $42, $59, $1B, $2E, $2D, $59, $08, $59, $D0, $1E, $73, $E3, $2F, $1E, $59, $9B, $1E, $59, $1A, $59, $BB, $27, $20, $59, $DF, $32, $3E, $7E, $73, $44, $59, $0B, $C7, $20, $59, $2D, $22, $BE, $59, $27, $28, $59, $D0, $1E, $42, $59, $0C, $1A, $CA, $3E, $73, $89, $16, $21, $91, $B5, $59, $2D, $B0, $2C, $59, $29, $BA, $1C, $1E, $3F, $73, $89, $08, $51, $25, $25, $59, $9B, $1E, $59, $96, $9C, $59, $25, $94, $A6, $41, $71, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B4", + "code": "Message_1B4:\n db $07, $1A, $3E, $59, $E8, $59, $9F, $59, $CE, $BE, $26, $97, $2B, $59, $BE, $3E, $75, $06, $2E, $1E, $2C, $2C, $59, $8E, $2D, $21, $91, $1C, $AE, $B3, $1A, $2B, $C4, $76, $25, $1E, $1F, $2D, $59, $93, $59, $22, $26, $29, $CE, $2C, $2C, $22, $C7, $41, $7E, $73, $0D, $28, $30, $59, $08, $51, $2F, $1E, $59, $D0, $2D, $59, $DC, $59, $D1, $28, $29, $59, $21, $A6, $1E, $42, $73, $9E, $2F, $B3, $B4, $DA, $59, $1D, $CE, $1A, $26, $2C, $59, $B4, $D3, $1E, $1A, $1D, $73, $C6, $59, $1C, $2B, $1A, $2C, $B0, $27, $20, $59, $1B, $2B, $28, $28, $26, $2C, $41, $7E, $73, $05, $1E, $1E, $25, $59, $1F, $CE, $1E, $59, $DA, $59, $25, $1E, $2D, $59, $BE, $59, $29, $28, $24, $1E, $73, $1A, $2B, $C4, $59, $B4, $59, $E3, $2B, $59, $26, $B4, $1D, $43, $73, $B6, $59, $1C, $28, $2E, $25, $1D, $59, $97, $59, $1F, $2E, $27, $3E, $7E, $73, $44, $59, $12, $2E, $CE, $42, $59, $D1, $28, $30, $59, $BE, $59, $1A, $59, $1D, $CE, $1A, $26, $41, $73, $89, $07, $28, $30, $59, $9F, $1E, $2C, $59, $2D, $B0, $2C, $59, $30, $C8, $24, $3F, $73, $89, $0C, $1A, $32, $97, $59, $D2, $BE, $59, $28, $2D, $21, $A1, $2D, $22, $BE, $41, $71, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B5", + "code": "Message_1B5:\n db $13, $B0, $2C, $59, $25, $B6, $2D, $25, $1E, $59, $B1, $2F, $A5, $3F, $59, $08, $59, $1C, $8E, $B6, $59, $26, $32, $75, $03, $CE, $1A, $26, $59, $07, $2E, $2D, $43, $59, $C2, $59, $2C, $DC, $A1, $C8, $22, $20, $B4, $1A, $25, $42, $76, $1B, $2E, $2D, $59, $B6, $59, $AB, $2C, $59, $D8, $59, $29, $28, $B4, $2D, $59, $1A, $1C, $2B, $28, $2C, $2C, $41, $7E, $73, $07, $A6, $1E, $42, $59, $08, $59, $2D, $2E, $20, $59, $91, $D8, $59, $1E, $1D, $20, $1E, $2C, $59, $C6, $73, $E3, $2B, $59, $26, $B4, $1D, $42, $59, $2C, $29, $B4, $27, $B3, $1D, $CE, $1A, $26, $2C, $59, $2D, $21, $94, $73, $26, $B2, $2B, $A7, $1E, $1A, $25, $59, $D2, $BE, $2D, $B0, $27, $20, $59, $2E, $D0, $1F, $2E, $25, $41, $7E, $73, $09, $2E, $D3, $59, $97, $DF, $CE, $40, $D8, $59, $04, $C7, $59, $00, $1B, $32, $2C, $2C, $73, $2D, $1A, $24, $1E, $2C, $59, $B6, $2C, $59, $DA, $25, $25, $42, $59, $A7, $A0, $B4, $59, $2C, $25, $1E, $1E, $29, $41, $73, $16, $1E, $22, $2B, $1D, $59, $D3, $2E, $1F, $1F, $59, $B1, $29, $29, $A5, $2C, $59, $21, $A6, $1E, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B6", + "code": "Message_1B6:\n db $0E, $28, $21, $42, $59, $08, $59, $1C, $93, $59, $2C, $A5, $D0, $59, $B6, $43, $75, $2D, $21, $91, $29, $A5, $1D, $93, $2D, $59, $E3, $59, $AD, $59, $2D, $21, $A6, $1E, $41, $76, $0F, $A6, $1F, $1E, $1C, $2D, $59, $A8, $59, $1D, $CE, $1A, $26, $40, $E0, $1A, $2F, $B4, $20, $3E, $7E, $73, $02, $BB, $D0, $59, $2D, $21, $28, $D0, $59, $1E, $32, $1E, $2C, $42, $59, $07, $A6, $28, $41, $59, $0B, $1E, $2D, $51, $2C, $73, $D0, $1E, $59, $E1, $91, $D0, $1C, $CE, $2D, $2C, $59, $8D, $25, $2E, $2B, $24, $B3, $B4, $73, $2D, $21, $91, $27, $28, $20, $20, $B4, $59, $C6, $59, $E3, $2B, $2C, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B7", + "code": "Message_1B7:\n db $07, $2E, $21, $42, $59, $27, $28, $59, $2C, $29, $1A, $2B, $24, $59, $B4, $59, $2C, $22, $20, $21, $2D, $41, $75, $0D, $28, $59, $0F, $A5, $1D, $93, $2D, $42, $59, $27, $28, $59, $1D, $CE, $1A, $26, $42, $59, $2C, $C8, $2B, $32, $3E, $76, $01, $2E, $2D, $59, $21, $1E, $32, $42, $59, $2B, $28, $1A, $26, $59, $D8, $59, $00, $1B, $32, $2C, $2C, $59, $1A, $59, $1B, $B6, $41, $7E, $73, $08, $51, $26, $59, $2C, $2E, $CD, $E3, $51, $25, $25, $59, $2C, $1C, $2B, $28, $2E, $27, $20, $1E, $59, $C7, $1E, $59, $DC, $73, $A7, $A3, $2E, $1A, $25, $25, $32, $43, $59, $00, $27, $1D, $59, $E1, $A0, $E3, $59, $9F, $42, $73, $08, $51, $25, $25, $59, $97, $59, $21, $A6, $1E, $42, $59, $DF, $B6, $B4, $20, $41, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B8", + "code": "Message_1B8:\n db $0E, $21, $28, $3E, $59, $02, $2E, $2B, $22, $28, $2E, $2C, $59, $1A, $98, $2E, $2D, $59, $26, $32, $59, $25, $B6, $2D, $25, $1E, $75, $1D, $CE, $1A, $26, $40, $E0, $1A, $2F, $B3, $1A, $1C, $2D, $42, $59, $8D, $E0, $3F, $76, $0B, $B5, $2D, $A0, $1C, $BB, $D0, $42, $59, $07, $A6, $28, $41, $7E, $73, $12, $1E, $1E, $42, $59, $B4, $59, $D8, $59, $04, $C7, $59, $00, $1B, $32, $2C, $2C, $42, $59, $2D, $21, $A6, $1E, $73, $8D, $2D, $21, $CE, $1E, $59, $29, $A5, $1D, $93, $2D, $2C, $42, $59, $1A, $2B, $2D, $22, $1F, $1A, $1C, $2D, $2C, $73, $25, $1E, $1F, $2D, $59, $97, $B0, $27, $1D, $59, $1B, $32, $59, $D8, $59, $06, $28, $1D, $9D, $D0, $2C, $41, $7E, $73, $16, $21, $A0, $E3, $59, $20, $94, $21, $A1, $1E, $1A, $1C, $21, $59, $29, $A5, $1D, $93, $2D, $42, $73, $D8, $32, $59, $CE, $2C, $C7, $94, $1E, $59, $30, $B6, $21, $59, $E3, $2B, $59, $2C, $29, $22, $2B, $B6, $42, $73, $B4, $2F, $28, $24, $B3, $1D, $CE, $1A, $26, $2C, $59, $C6, $59, $D8, $59, $29, $92, $43, $7E, $73, $13, $21, $94, $8B, $E1, $A6, $1E, $59, $08, $59, $9B, $1E, $59, $B4, $42, $59, $21, $1E, $25, $29, $B4, $20, $73, $DA, $59, $27, $1A, $2F, $22, $20, $94, $1E, $59, $D8, $59, $1D, $CE, $1A, $26, $2C, $59, $90, $73, $2B, $A7, $1E, $1A, $25, $59, $D0, $1C, $CE, $2D, $2C, $59, $C6, $59, $D8, $59, $29, $92, $41, $7E, $73, $01, $2E, $2D, $59, $D8, $59, $20, $2B, $8C, $29, $2B, $22, $33, $1E, $3F, $59, $0E, $27, $1C, $1E, $73, $E3, $51, $2F, $1E, $59, $CC, $2F, $A0, $E3, $2B, $D0, $25, $1F, $42, $73, $D8, $59, $0C, $92, $A1, $12, $30, $C8, $1D, $59, $1A, $DF, $B6, $2C, $41, $7E, $73, $13, $21, $91, $1B, $BA, $1D, $1E, $8B, $B0, $1D, $1D, $A0, $1D, $1E, $1E, $29, $59, $B4, $59, $D8, $73, $00, $1B, $32, $2C, $2C, $42, $59, $8C, $C7, $B9, $D8, $59, $C7, $1E, $59, $30, $B6, $21, $73, $D8, $59, $29, $A5, $1D, $93, $2D, $2C, $59, $1C, $93, $59, $1A, $DF, $24, $A0, $B6, $41, $7E, $73, $12, $28, $42, $59, $2D, $B0, $27, $24, $59, $C6, $59, $D8, $D0, $59, $25, $B6, $2D, $25, $1E, $59, $1D, $CE, $1A, $26, $2C, $73, $1A, $2C, $59, $D3, $1E, $29, $29, $B3, $D3, $C7, $1E, $2C, $59, $DA, $59, $E3, $2B, $73, $9D, $2D, $B4, $32, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_1B9", + "code": "Message_1B9:\n db $0C, $32, $59, $1D, $1E, $1E, $29, $1E, $D3, $59, $20, $2B, $94, $B6, $2E, $1D, $1E, $42, $59, $21, $A6, $28, $41, $75, $01, $1E, $1C, $1A, $2E, $D0, $59, $C6, $59, $E3, $2B, $59, $2F, $1A, $BB, $2B, $42, $76, $13, $1A, $22, $25, $59, $0F, $1A, $BA, $1C, $1E, $59, $2C, $B0, $27, $1E, $2C, $59, $C7, $1C, $1E, $59, $26, $C8, $1E, $41, $7E, $73, $16, $1E, $59, $03, $1E, $24, $2E, $59, $28, $E0, $59, $E3, $59, $1A, $59, $1D, $1E, $1B, $2D, $28, $2E, $2B, $73, $21, $28, $BE, $59, $DF, $2C, $59, $B4, $59, $2D, $2E, $2B, $26, $28, $22, $25, $59, $1A, $1F, $2D, $A6, $73, $0A, $32, $1D, $2B, $28, $20, $8B, $BE, $1D, $1D, $25, $B4, $20, $41, $7E, $73, $01, $2E, $2D, $59, $30, $B6, $21, $59, $D8, $59, $0C, $28, $25, $9F, $2B, $26, $59, $1C, $1A, $25, $BE, $1D, $42, $73, $29, $1E, $1A, $1C, $1E, $59, $CE, $2D, $2E, $2B, $27, $2C, $59, $DA, $59, $28, $2E, $2B, $59, $B1, $25, $25, $2C, $42, $73, $2D, $21, $93, $24, $2C, $59, $DA, $59, $E3, $3E, $7F", + "file": "message.asm" + }, + { + "name": "Message_1BA", + "code": "Message_1BA:\n db $00, $21, $42, $59, $E3, $59, $29, $25, $93, $59, $DA, $59, $21, $1E, $1A, $1D, $59, $C7, $DF, $2B, $1D, $42, $75, $32, $1E, $2C, $3F, $59, $E6, $59, $27, $1E, $31, $2D, $59, $2D, $21, $CE, $91, $BB, $28, $26, $2C, $76, $B4, $59, $0A, $1A, $25, $32, $31, $28, $59, $02, $92, $25, $1E, $41, $7E, $73, $08, $51, $2F, $1E, $59, $2D, $1A, $24, $A0, $D8, $59, $25, $22, $97, $2B, $2D, $32, $59, $C6, $73, $BD, $2B, $24, $B3, $D8, $59, $1C, $92, $25, $1E, $59, $C7, $59, $E3, $2B, $59, $BD, $29, $41, $73, $01, $1E, $DF, $CE, $59, $B6, $2C, $59, $2C, $B1, $9F, $30, $2C, $59, $2B, $2E, $27, $59, $1D, $1E, $1E, $29, $41, $7E, $73, $12, $1E, $1E, $24, $59, $D8, $59, $0C, $1E, $1A, $9F, $30, $59, $01, $BA, $1D, $1E, $59, $2D, $21, $A6, $1E, $42, $73, $25, $1E, $20, $A5, $1D, $2C, $59, $2C, $1A, $32, $59, $B6, $59, $21, $28, $25, $1D, $2C, $59, $CB, $A1, $1F, $B6, $73, $A8, $59, $E3, $2B, $59, $2A, $2E, $1E, $D3, $41, $7F", + "file": "message.asm" + }, + { + "name": "Sprite_CheckActive", + "code": "Sprite_CheckActive:\n{\n LDA.w SprState, X : CMP.b #$09 : BNE .inactive\n LDA.w SprFreeze : BNE .inactive\n LDA $11 : BNE .inactive\n LDA.w SprDefl, X : BMI .active\n LDA.w SprPause, X : BEQ .active\n .inactive\n CLC\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_MoveHoriz", + "code": "Sprite_MoveHoriz:\n{\n LDA.w SprXSpeed, X : BEQ .no_velocity\n ASL #4 : CLC : ADC.w SprXRound, X : STA.w SprXRound, X\n LDY.b #$00\n LDA.w SprXSpeed, X\n PHP : LSR #4 : PLP : BPL ++\n ORA.b #$F0\n DEY\n ++\n ADC.w SprX, X : STA.w SprX, X\n TYA : ADC.w SprXH, X : STA.w SprXH, X\n .no_velocity\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_MoveXyz", + "code": "Sprite_MoveXyz:\n JSL Sprite_MoveAltitude", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_Move", + "code": "Sprite_Move:\n JSL Sprite_MoveHoriz\n ; no RTL, just continue into Sprite_MoveVert", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_MoveVert", + "code": "Sprite_MoveVert:\n{\n LDA.w SprYSpeed, X : BEQ .no_velocity\n ASL : ASL : ASL : ASL\n CLC : ADC.w SprYRound, X : STA.w SprYRound, X\n LDY.b #$00\n LDA.w SprYSpeed, X\n PHP : LSR : LSR : LSR : LSR : PLP\n BPL ++\n\n ORA.b #$F0\n DEY\n\n ++\tADC.w SprY, X : STA.w SprY, X\n TYA : ADC.w SprYH, X : STA.w SprYH, X\n\n .no_velocity\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_MoveZ", + "code": "Sprite_MoveZ:", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_MoveAltitude", + "code": "Sprite_MoveAltitude:\n{\n LDA.w SprTimerF, X : ASL #4\n CLC : ADC.w SprHeightS, X : STA.w SprHeightS, X\n LDA.w SprTimerF, X : PHP : LSR #4 : PLP : BPL .positive\n ORA.b #$F0\n .positive\n ADC.w SprHeight, X : STA.w SprHeight, X\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_BounceTowardPlayer", + "code": "Sprite_BounceTowardPlayer:\n{\n JSL Sprite_MoveAltitude\n DEC.w SprTimerF, X : DEC.w SprTimerF, X\n LDA.w SprHeight, X : BPL .aloft\n STZ.w SprHeight, X\n LDA.b $08 : STA.w SprTimerF, X ; set height from 08\n LDA.b $09 : JSL Sprite_ApplySpeedTowardsPlayer\n ; LDA.b #$21 : JSL Sound_SetSfx2PanLong\n .aloft\n LDA.w SprHeight, X : BEQ .dontmove\n JSL Sprite_Move\n .dontmove\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_FloatTowardPlayer", + "code": "Sprite_FloatTowardPlayer:\n{\n TYA : STA.w SprHeight, X\n JSL Sprite_MoveAltitude\n JSL Sprite_ApplySpeedTowardsPlayer\n JSL Sprite_Move\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_FloatAwayFromPlayer", + "code": "Sprite_FloatAwayFromPlayer:\n{\n JSL Sprite_InvertSpeed_XY\n JSL Sprite_MoveAltitude\n JSL Sprite_Move\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_BounceFromTileCollision", + "code": "Sprite_BounceFromTileCollision:\n{\n JSL Sprite_CheckTileCollision : AND.b #$03 : BEQ ++\n LDA.w SprXSpeed, X : EOR.b #$FF : INC : STA.w SprXSpeed, X\n ++\n LDA.w SprCollision, X : AND.b #$0C : BEQ ++\n LDA.w SprYSpeed, X : EOR.b #$FF : INC : STA.w SprYSpeed, X\n ++\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_InvertSpeed_XY", + "code": "Sprite_InvertSpeed_XY:\n JSL Sprite_InvertSpeed_Y\n", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_InvertSpeed_X", + "code": "Sprite_InvertSpeed_X:\n LDA.w SprXSpeed, X\n EOR.b #$FF : INC A\n STA.w SprXSpeed, X\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_InvertSpeed_Y", + "code": "Sprite_InvertSpeed_Y:\n LDA.w SprYSpeed, X\n EOR.b #$FF : INC A\n STA.w SprYSpeed, X\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "UpdateCachedCoords", + "code": "UpdateCachedCoords:\n{\n LDA.w SprY, X : STA.w SprCachedY+0\n LDA.w SprX, X : STA.w SprCachedX+0\n LDA.w SprYH, X : STA.w SprCachedY+1\n LDA.w SprXH, X : STA.w SprCachedX+1\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "RoundCoords", + "code": "RoundCoords:\n{\n ; Clamp the Y coord to the nearest multiple of 8.\n LDA.b $00 : CLC : ADC.b #$04 : AND.b #$F8 : STA.b $00 : STA.w SprY, X\n\n ; Clamp the X coord to the nearest multiple of 8.\n LDA.b $02 : CLC : ADC.b #$04 : AND.b #$F8 : STA.b $02 : STA.w SprX, X\n\n JSR UpdateCachedCoords\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_SelectNewDirection", + "code": "Sprite_SelectNewDirection:\n{\n PHB : PHK : PLB\n JSL GetRandomInt : AND.b #$07 : TAY\n LDA.w .speed_x, Y : STA.w SprXSpeed, X\n LDA.w .speed_y, Y : STA.w SprYSpeed, X\n LDA.w .timers, Y : STA.w SprTimerA, X\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_SendOutProbe", + "code": "Sprite_SendOutProbe:\n{\n PHB : PHK : PLB\n LDA.w SprX, X : STA.b $00\n LDA.w SprXH, X : STA.b $01\n LDA.w SprY, X : STA.b $02\n LDA.w SprYH, X : STA.b $03\n TXA : CLC : ADC.b $1A : STA.b $0F\n AND.b #$03 : ORA.w $0F00, X : BNE .exit\n LDA.w SprMiscF, X : INC.w SprMiscF, X\n LDY.w SprMiscC, X : CLC : AND.b #$1F\n ADC.w .index_offset, Y\n AND.b #$3F : STA.b $0F\n JSL Sprite_SpawnProbeAlways_long\n .exit\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "DragPlayer", + "code": "DragPlayer:\n{\n LDA.w .drag_x_low, Y : CLC : ADC.w DragYL : STA.w DragYL\n LDA.w .drag_x_high, Y : ADC.w DragYH : STA.w DragYH\n\n LDA.w .drag_y_low, Y : CLC : ADC.w DragXL : STA.w DragXL\n LDA.w .drag_y_high, Y : ADC.w DragXH : STA.w DragXH\n\n .SomariaPlatform_DragLink\n REP #$20\n\n LDA.w SprCachedX : SEC : SBC.w #$0002\n CMP $22 : BEQ .x_done : BPL .x_too_low\n DEC.w DragYL\n BRA .x_done\n .x_too_low\n INC.w DragYL\n\n .x_done\n ; Changing the modifier adjusts links position in the cart\n LDA.w SprCachedY : SEC : SBC.w #$0008\n CMP $20 : BEQ .y_done : BPL .y_too_low\n DEC.w DragXL\n BRA .y_done\n .y_too_low\n INC.w DragXL\n\n .y_done\n\n SEP #$30\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_DamageFlash_Long", + "code": "Sprite_DamageFlash_Long:\n{\n PHB : PHK : PLB\n JSR Sprite_Damage_Flash\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_Damage_Flash", + "code": "Sprite_Damage_Flash:\n{\n LDA.w SprDeath, X : BEQ .dont_flash\n ; Change the palette to the next in the cycle\n LDA.w SprFlash, X : INC : CMP.b #$08 : BNE .dont_reset\n LDA.b #$00\n .dont_reset\n STA.w SprFlash, X\n BRA .flash\n\n .dont_flash\n STZ.w SprFlash, X\n\n .flash\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_CheckCollisionWithSprite", + "code": "Sprite_CheckCollisionWithSprite:\n{\n STA.b $00\n JSL Sprite_CheckForPresence : BCC +\n PHX\n LDA.b $02 : TAX\n JSL Sprite_SetupHitBox\n PLX\n JSL Sprite_SetupHitBox_Alt\n JSL CheckIfHitBoxesOverlap : BCC +\n LDA.b #$01 : STA.w SprMiscF, X\n +\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_CheckForPresence", + "code": "Sprite_CheckForPresence:\n{\n STX $01\n PHX\n CLC\n LDX.b #$10\n .x_loop\n DEX\n LDA $0E20, X : CMP.b $00 : BEQ .set_flag\n BRA .continue\n .set_flag\n CPX.b $01 : BEQ .continue\n SEC ; Set flag indicating sprite is present\n STX.w $02\n BRA .done\n\n .continue\n CPX.b #$00 : BNE .x_loop\n CLC\n .done\n PLX\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_CountActiveById", + "code": "Sprite_CountActiveById:\n{\n STZ $02\n LDX.b #$10\n .x_loop\n DEX\n LDA $0E20, X : CMP.b $00 : BEQ .increment\n BRA .continue\n .increment\n INC $02\n .continue\n CPX.b #$00 : BNE .x_loop\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Link_CheckNewY_ButtonPress_Long", + "code": "Link_CheckNewY_ButtonPress_Long:\n{\n BIT.b $3A : BVS .fail\n LDA.b $46 : BNE .fail\n LDA.b $F4 : AND.b #$40 : BEQ .fail\n TSB.b $3A\n SEC\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Link_SetupHitBox", + "code": "Link_SetupHitBox:\n{\n LDA.b #$08 : STA $02 : STA $03\n LDA.b LinkX : CLC : ADC.b #$04 : STA.b pos1_x_low\n LDA.b LinkXH : ADC.b #$00 : STA.b pos1_x_high\n LDA.b LinkY : ADC.b #$08 : STA.b pos1_y_low\n LDA.b LinkYH : ADC.b #$00 : STA.b pos1_y_high\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_SetupHitBox", + "code": "Sprite_SetupHitBox:\n{\n PHB : PHK : PLB\n LDA.w SprHeight, X : BMI .too_high\n PHY\n LDA.w SprHitbox, X : AND.b #$1F : TAY\n LDA.w SprX, X : CLC : ADC.w .offset_x_low, Y : STA.b pos2_x_low\n LDA.w SprXH, X : ADC.w .offset_x_high, Y : STA.b pos2_x_high\n LDA.w SprY, X : CLC : ADC.w .offset_y_low, Y\n PHP\n SEC : SBC.w SprHeight, X : STA.b pos2_y_low\n LDA.w SprYH, X : SBC.b #$00\n PLP\n ADC.w .offset_y_high, Y : STA.b pos2_y_high\n\n LDA.w .width, Y : STA.b pos2_size\n LDA.w .height, Y : STA.b pos2_height\n PLY\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_ApplySpeedTowardsPlayerXOrY", + "code": "Sprite_ApplySpeedTowardsPlayerXOrY:\n{\n JSL Sprite_IsBelowPlayer : BEQ .player_below\n ;playerAbove\n REP #$20\n ; if link.y is 6 above sprite.y it is considered below\n LDA.w SprCachedY : SEC : SBC $20 : CLC : ADC.w #$0006 : STA $01 ;delta Y\n SEP #$20\n\n JSL Sprite_IsToRightOfPlayer : BEQ .player_to_the_right1\n ;player_to_the_Left\n REP #$20 ; delta X\n LDA.w SprCachedX : SEC : SBC $22 : CMP $01 : BCS .XGreaterThanY1\n ;YGreaterThanX\n SEP #$20\n LDA.b #$00 : SEC : SBC $00 : STA.w SprYSpeed\n STZ.w SprXSpeed\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "GetDistance8bit_Long", + "code": "GetDistance8bit_Long:\n{\n LDA.w POSX : STA $02\n LDA.w POSY : STA $03\n LDA.w SprX, X : STA $04\n LDA.w SprY, X : STA $05\n LDA $04 : SEC : SBC $02 : BPL +\n EOR.b #$FF : INC\n +\n STA $00 ; Distance X (ABS)\n\n LDA $05 : SEC : SBC $03 : BPL +\n EOR.b #$FF : INC\n +\n ; Add it back to X Distance\n CLC : ADC $00 : STA $00 ; distance total X, Y (ABS)\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_CheckIfRecoiling", + "code": "Sprite_CheckIfRecoiling:\n{\n PHB : PHK : PLB\n LDA.w $0EA0, X : BEQ .exit\n AND.b #$7F : BEQ .recoil_over\n LDA.w SprYSpeed, X\n PHA\n\n LDA.w SprXSpeed, X\n PHA\n\n DEC.w $0EA0, X : BNE .still_recoiling\n LDA.w SprXRecoil, X : CLC : ADC.b #$20 : CMP.b #$40 : BCS .no_adjust\n LDA.w SprYRecoil, X : CLC : ADC.b #$20 : CMP.b #$40 : BCC .still_recoiling\n .no_adjust\n LDA.b #$90 : STA.w $0EA0, X\n .still_recoiling\n LDA.w $0EA0, X : BMI .no_movement\n\n LSR A\n LSR A\n TAY\n\n LDA.b $1A : AND.w .masks, Y : BNE .no_movement\n LDA.w SprYRecoil, X : STA.w SprYSpeed, X\n LDA.w SprXRecoil, X : STA.w SprXSpeed, X\n LDA.w SprBump, X : BMI .handle_movement\n\n JSL Sprite_CheckTileCollision_long\n\n LDA.w $0E70, X : AND.b #$0F : BEQ .handle_movement\n\n .stop_horizontal_movement\n CMP.b #$04 : BCS .stop_vertical_movement\n\n STZ.w SprXRecoil, X\n STZ.w SprXSpeed, X\n\n BRA .movement_stopped\n\n .stop_vertical_movement\n STZ.w SprYRecoil, X\n STZ.w SprYSpeed, X\n\n .movement_stopped\n BRA .no_movement\n\n .handle_movement\n JSL Sprite_Move\n\n .no_movement\n PLA\n STA.w SprXSpeed, X\n\n PLA\n STA.w SprYSpeed, X\n\n .exit\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "TrinexxBreath_AltEntry", + "code": "TrinexxBreath_AltEntry:\n{\n PHB : PHK : PLB\n LDA $1A : AND.b #$07 : BNE .no_adjustment\n JSL GetRandomInt\n AND.b #$03\n TAY\n LDA SpeedAdjustments, Y : CLC : ADC.w SprXSpeed, X : STA.w SprXSpeed, X\n LDA SpeedAdjustments+4, Y : CLC : ADC.w SprYSpeed, X : STA.w SprYSpeed, X\n .no_adjustment\n\n JSL Sprite_BounceFromTileCollision\n LDA $1A : AND.b #$03 : BNE .no_shake\n JSL Sprite_IsToRightOfPlayer\n LDA.w SprXSpeed, X : CMP .x_speed_targets, Y : BEQ .no_shake\n CLC : ADC.w .shake_x, Y : STA.w SprXSpeed, X\n\n .no_shake\n JSL Sprite_IsBelowPlayer\n LDA.w SprYSpeed, X : CMP .x_speed_targets, Y : BEQ .exit\n CLC : ADC.w .shake_y, Y : STA.w SprYSpeed, X\n\n JSL Sprite_CheckTileCollision : BEQ .exit\n LDY #$10\n JSL Sprite_FloatTowardPlayer\n\n .exit\n PLB\n RTL", + "file": "sprite_functions.asm" + }, + { + "name": "SpeedAdjustments", + "code": " SpeedAdjustments:\n db $02, $FE, $04, $FC ; X\n db $01, $FF, $02, $FE ; Y\n}\n", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_Twinrova_FireAttack", + "code": "Sprite_Twinrova_FireAttack:\n{\n JSL Sprite_CheckTileCollision : BNE .no_collision\n JSL Sprite_Move\n .no_collision\n JSR AddFireGarnish\n JML TrinexxBreath_AltEntry\n}\n\n; $1DBDD6 - TrinexxFire_AddFireGarnish", + "file": "sprite_functions.asm" + }, + { + "name": "AddFireGarnish", + "code": "AddFireGarnish:\n{\n INC.w SprDelay, X : LDA.w SprDelay, X : AND.b #$07 : BNE .return\n LDA.b #$2A : JSL Sound_SetSfx2PanLong\n LDA.b #$1D : PHX : TXY : TAX : STA $00\n\n .next_slot\n LDA $7FF800, X : BEQ .free_slot ; Search for free Garnish slot\n DEX : BPL .next_slot\n DEC $0FF8 : BPL .use_search_index\n LDA $00 : STA $0FF8\n .use_search_index\n LDX $0FF8\n .free_slot\n ; Set garnish ID, set garnish handled flag\n LDA.b #$10 : STA $7FF800, X : STA $0FB4\n TYA : STA $7FF92C, X ; set garnish parent sprite\n LDA.w SprX, Y : STA $7FF83C, X ; Garnish XL\n LDA.w SprXH, Y : STA $7FF878, X ; Garnish XH\n LDA.w SprY, Y : CLC : ADC.b #$10 : STA $7FF81E, X ; Garnish YL\n LDA.w SprYH, Y : ADC.b #$00 : STA $7FF85A, X ; Garnish YH\n LDA.b #$7F : STA $7FF90E, X : STX $00 ; Set garnish timer\n PLX\n\n .return\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "Sprite_Twinrova_IceAttack", + "code": "Sprite_Twinrova_IceAttack:\n{\n JSL Sprite_CheckTileCollision : BNE .no_collision\n JSL Sprite_Move\n .no_collision\n JSR AddIceGarnishV2\n JML TrinexxBreath_AltEntry\n}\n\n; $1DBD65 - TrinexxBreath_ice_add_ice_garnish", + "file": "sprite_functions.asm" + }, + { + "name": "AddIceGarnishV2", + "code": "AddIceGarnishV2:\n{\n INC.w SprDelay, X : LDA.w SprDelay, X : AND.b #$07 : BNE .return\n LDA.b #$14 : JSL Sound_SetSfx3PanLong\n LDA.b #$1D : PHX : TXY : TAX : STA $00\n\n .next_slot\n LDA $7FF800, X : BEQ .free_slot ; Search for free Garnish slot\n DEX : BPL .next_slot\n DEC $0FF8 : BPL .use_search_index\n LDA.b #$00 : STA $0FF8\n .use_search_index\n LDX $0FF8\n .free_slot\n ; Set garnish ID, set garnish handled flag, set garnish parent sprite\n LDA.b #$0C : STA $7FF800, X : STA $0FB4 : TYA : STA $7FF92C, X\n LDA.w SprX, Y : STA $7FF83C, X ; Garnish XL\n LDA.w SprXH, Y : STA $7FF878, X ; Garnish XH\n LDA.w SprY, Y : CLC : ADC.b #$10 : STA $7FF81E, X ; Garnish YL\n LDA.w SprYH, Y : ADC.b #$00 : STA $7FF85A, X ; Garnish YH\n LDA.b #$7F : STA $7FF90E, X : STX $00 ; Set garnish timer\n PLX\n\n .return\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "Garnish_PrepOamCoord", + "code": " Garnish_PrepOamCoord:\n\norg $09B70C", + "file": "sprite_functions.asm" + }, + { + "name": "Garnish_SetOamPropsAndLargeSize", + "code": " Garnish_SetOamPropsAndLargeSize:\n\norg $09B459", + "file": "sprite_functions.asm" + }, + { + "name": "Garnish_CheckPlayerCollision", + "code": " Garnish_CheckPlayerCollision:\n\norg $09B5D6", + "file": "sprite_functions.asm" + }, + { + "name": "Garnish_SetOamPropsAndSmallSize", + "code": " Garnish_SetOamPropsAndSmallSize:\n\n; SpriteData_Bump - Ice Garnish\norg $0DB266+$CD\n db $04\n\norg $09B33F", + "file": "sprite_functions.asm" + }, + { + "name": "TrinexxIce_Pool", + "code": "TrinexxIce_Pool:\n{\n .chr\n db $2E, $2E, $2E, $2E\n db $2C, $2C, $2C, $2C\n db $2C, $2C, $2C, $2C\n .properties\n db $35, $35, $35, $35\n}\n\npullpc\n\n; =========================================================\n", + "file": "sprite_functions.asm" + }, + { + "name": "Intro_Dungeon_Main", + "code": "Intro_Dungeon_Main:\n{\n LDA $0E20 : CMP.b #$92 : BNE .not_sprite_body_boss\n LDA $0E30 : BEQ .not_sprite_body_boss\n LDA $1C : AND.b #$FE : STA $1C ;turn off BG2 (Body)\n\n ; free ram used to check if the sprite ran this frame, if 0, it didn't run\n LDA.b SpriteRanCheck : BEQ .didNotRun\n LDA $1C : ORA.b #$01 : STA $1C ;turn on BG2 (Body)\n .didNotRun\n\n STZ.b SpriteRanCheck\n .not_sprite_body_boss\n\n ;<- free ram you are using if it's not zero then we're doing intro\n REP #$21 : LDA.w DungeonMainCheck : BNE .intro\n LDA $E2 : RTL ; return to normal intro", + "file": "sprite_functions.asm" + }, + { + "name": "MoveCamera", + "code": "MoveCamera:\n{\n REP #$20\n\n ; move the camera up or down until a point is reached\n LDA $E8 : CMP $00 : BEQ .dontMoveY ; if equals that point, dont move y\n BCS .CameraBelowPointY\n ; CameraAbovePoint\n ADC.w #$0001 : %sta($E8, $E6, $0122, $0124) ; move the camera down by 1\n BRA .dontMoveY\n\n .CameraBelowPointY\n SEC : SBC.w #$0001 : %sta($E8,$E6,$0122,$0124) ; move the camera up by 1\n\n .dontMoveY\n\n ; move the camera right or left until a point is reached\n LDA $E2 : CMP.w $02 : BEQ .dontMoveX ; if equals that point, dont move x\n BCS .CameraBelowPointX ; left\n ; CameraAbovePoint ;right\n ADC.w #$0001 : %sta($E2, $E0, $011E, $0120) ; move the camera right by 1\n BRA .dontMoveX\n\n .CameraBelowPointX\n SEC : SBC.w #$0001 : %sta($E2, $E0, $011E, $0120) ; move the camera left by 1\n\n .dontMoveX\n\n ; if link is outside of a certain range of the camera\n ; make him dissapear so he doesnt appear on the other side\n LDA $20 : SEC : SBC $E8 : CMP.w #$00E0 : BCS .MakeLinkInvisible\n LDA $22 : SEC : SBC $E2 : CMP.w #$00E0 : BCS .MakeLinkInvisible\n\n SEP #$20\n LDA.b #$00 : STA $4B ; make link visible\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "SetupMovieEffect", + "code": "SetupMovieEffect:\n{\n ;setup HDMA RAM\n ;Top Dark Row\n LDA.b #$01 : STA.l MovieEffect0\n LDA.b #$00 : STA.l MovieEffect1\n\n ;Top Dark Row Buffer\n LDA.b #$1F : STA.l MovieEffect2\n LDA.b #$0F : STA.l MovieEffect3\n\n ;Middle Unaffected Area\n LDA.b #$50 : STA.l MovieEffect4\n LDA.b #$0F : STA.l MovieEffect5\n LDA.b #$50 : STA.l MovieEffect6\n LDA.b #$0F : STA.l MovieEffect7\n\n ;Bottom Drak Row Buffer\n LDA.b #$1F : STA.l MovieEffect8\n LDA.b #$0F : STA.l MovieEffect9\n\n ;Bottom Dark Row\n LDA.b #$01 : STA.l MovieEffectA\n LDA.b #$00 : STA.l MovieEffectB\n\n ;Below screen\n LDA.b #$20 : STA.l MovieEffectC\n LDA.b #$0F : STA.l MovieEffectD\n\n ;End\n LDA.b #$00 : STA.l MovieEffectE\n\n ;start timer\n LDA.b #$01 : STA.l MovieEffectTimer\n\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "MovieEffect", + "code": "MovieEffect:\n{\n REP #$20\n LDX #$00 : STX $4350 ;Set the transfer mode into 1 byte to 1 register\n LDX #$00 : STX $4351 ;Set register to 00 ($21 00)\n\n LDA.w #MovieEffectArray : STA $4352 ;set address of the hdma table\n LDX.b #MovieEffectBank : STX $4354 ;set the bank of HDMA table\n\n SEP #$20\n LDA.b #$20 : STA $9B ;Do the HDMA instead of $420C\n\n ; LDA $9B : ORA #$20 : STA $9B\n ; LDA.b #$02 : STA $13 ;controls the brightness of the screen\n\n RTS", + "file": "sprite_functions.asm" + }, + { + "name": "Dream_BunnyHook", + "code": "Dream_BunnyHook:\n{\n ; Original Instruction: LDA.w $03F5\n LDA.w $03F5\n ORA.w $03F6\n BEQ .check_dream\n\n ; If we are here, vanilla bunny logic applies (moon pearl/damage)\n ; Continue with vanilla check result (non-zero = bunny)\n RTL", + "file": "dream_handler.asm" + }, + { + "name": "Dream_BunnyHook_Real", + "code": "Dream_BunnyHook_Real:\n{\n LDA.l !DREAM_STATE_ACTIVE\n BNE .force_dream\n\n ; Restore Vanilla Logic\n LDA.w $03F5\n ORA.w $03F6\n RTL", + "file": "dream_handler.asm" + }, + { + "name": "Dream_MoonPearlHook", + "code": "Dream_MoonPearlHook:\n{\n LDA.l !DREAM_STATE_ACTIVE\n BNE .force_no_pearl\n\n ; Vanilla Logic\n LDA.l $7EF357\n RTL", + "file": "dream_handler.asm" + }, + { + "name": "Module09_Overworld", + "code": "Module09_Overworld:\n Module09_00_PlayerControl ; 0x00\n Module09_LoadAuxGFX ; 0x01\n Module09_TriggerTilemapUpdate ; 0x02\n Module09_LoadNewMapAndGFX ; 0x03\n Module09_LoadNewSprites ; 0x04\n Overworld_StartScrollTransition ; 0x05\n Overworld_RunScrollTransition ; 0x06\n Overworld_EaseOffScrollTransition ; 0x07\n Overworld_FinalizeEntryOntoScreen ; 0x08\n Module09_09_OpenBigDoorFromExiting ; 0x09\n Module09_0A_WalkFromExiting_FacingDown ; 0x0A\n Module09_0B_WalkFromExiting_FacingUp ; 0x0B\n Module09_0C_OpenBigDoor ; 0x0C\n Overworld_StartMosaicTransition ; 0x0D\n Overworld_LoadSubscreenAndSilenceSFX1 ; 0x0E\n Module09_LoadAuxGFX ; 0x0F\n Module09_TriggerTilemapUpdate ; 0x10\n Module09_LoadNewMapAndGFX ; 0x11\n Module09_LoadNewSprites ; 0x12\n Overworld_StartScrollTransition ; 0x13\n Overworld_RunScrollTransition ; 0x14\n Overworld_EaseOffScrollTransition ; 0x15\n Module09_FadeBackInFromMosaic ; 0x16\n Overworld_StartMosaicTransition ; 0x17\n Module09_18 ; 0x18\n Module09_19 ; 0x19\n Module09_LoadAuxGFX ; 0x1A\n Module09_TriggerTilemapUpdate ; 0x1B\n Module09_1C ; 0x1C\n Module09_1D ; 0x1D\n Module09_1E ; 0x1E\n Module09_1F ; 0x1F\n Overworld_ReloadSubscreenOverlay ; 0x20\n Module09_21 ; 0x21\n Module09_22 ; 0x22\n Module09_MirrorWarp ; 0x23\n Overworld_StartMosaicTransition ; 0x24\n Module09_25 ; 0x25\n Module09_LoadAuxGFX ; 0x26\n Module09_TriggerTilemapUpdate ; 0x27\n Overworld_LoadAndBuildScreen ; 0x28\n Module09_FadeBackInFromMosaic ; 0x29\n Module09_2A_RecoverFromDrowning ; 0x2A\n Module09_2B ; 0x2B\n Module09_MirrorWarp ; 0x2C\n Module09_2D_WaitForBird ; 0x2D\n Module09_2E_Whirlpool ; 0x2E\n Module09_2F\n\n", + "file": "tables.asm" + }, + { + "name": "Module07_Underworld", + "code": "Module07_Underworld:\n Module07_00_PlayerControl ; 0x00\n Module07_01_IntraroomTransition ; 0x01\n Module07_02_InterroomTransition ; 0x02\n Module07_03_OverlayChange ; 0x03\n Module07_04_UnlockDoor ; 0x04\n Module07_05_ControlShutters ; 0x05\n Module07_06_FatInterRoomStairs ; 0x06\n Module07_07_FallingTransition ; 0x07\n Module07_08_NorthIntraRoomStairs ; 0x08\n Module07_09_OpenCrackedDoor ; 0x09\n Module07_0A_ChangeBrightness ; 0x0A\n Module07_0B_DrainSwampPool ; 0x0B\n Module07_0C_FloodSwampWater ; 0x0C\n Module07_0D_FloodDam ; 0x0D\n Module07_0E_SpiralStairs ; 0x0E\n Module07_0F_LandingWipe ; 0x0F\n Module07_10_SouthIntraRoomStairs ; 0x10\n Module07_11_StraightInterroomStairs ; 0x11\n Module07_11_StraightInterroomStairs ; 0x12\n Module07_11_StraightInterroomStairs ; 0x13\n Module07_14_RecoverFromFall ; 0x14\n Module07_15_WarpPad ; 0x15\n Module07_16_UpdatePegs ; 0x16\n Module07_17_PressurePlate ; 0x17\n Module07_18_RescuedMaiden ; 0x18\n Module07_19_MirrorFade ; 0x19\n Module07_1A_RoomDraw_OpenTriforceDoor_bounce ; 0x1A\n\n", + "file": "tables.asm" + }, + { + "name": "Link_ControlHandler", + "code": "Link_ControlHandler:\n LinkState_Default ; 0x00\n LinkState_Pits ; 0x01\n LinkState_Recoil ; 0x02\n LinkState_SpinAttack ; 0x03\n LinkState_Swimming ; 0x04\n LinkState_OnIce ; 0x05\n LinkState_Recoil ; 0x06\n LinkState_Zapped ; 0x07\n LinkState_UsingEther ; 0x08\n LinkState_UsingBombos ; 0x09\n LinkState_UsingQuake ; 0x0A - DekuHover\n LinkState_HoppingSouthOW ; 0x0B\n LinkState_HoppingHorizontallyOW ; 0x0C\n LinkState_HoppingDiagonallyUpOW ; 0x0D\n LinkState_HoppingDiagonallyDownOW ; 0x0E\n LinkState_0F ; 0x0F\n LinkState_0F ; 0x10\n LinkState_Dashing ; 0x11\n LinkState_ExitingDash ; 0x12\n LinkState_Hookshotting ; 0x13\n LinkState_CrossingWorlds ; 0x14\n LinkState_ShowingOffItem ; 0x15\n LinkState_Sleeping ; 0x16\n LinkState_Bunny ; 0x17\n LinkState_HoldingBigRock ; 0x18\n LinkState_ReceivingEther ; 0x19\n LinkState_ReceivingBombos ; 0x1A\n LinkState_ReadingDesertTablet ; 0x1B\n LinkState_TemporaryBunny ; 0x1C\n LinkState_TreePull ; 0x1D\n LinkState_SpinAttack ; 0x1E\n\n", + "file": "tables.asm" + }, + { + "name": "Link_HandleYItem", + "code": "Link_HandleYItem:\n LinkItem_Bombs\n LinkItem_Boomerang\n LinkItem_Bow\n LinkItem_Hammer\n\n LinkItem_Rod\n LinkItem_Rod\n LinkItem_Net\n LinkItem_ShovelAndFlute\n\n LinkItem_Lamp\n LinkItem_Powder\n LinkItem_Bottle\n LinkItem_Book\n\n LinkItem_CaneOfByrna\n LinkItem_Hookshot\n LinkItem_Bombos\n LinkItem_Ether\n\n LinkItem_Quake\n LinkItem_CaneOfSomaria\n LinkItem_Cape\n LinkItem_Mirror\n\n\n; Liftable object palettes\n; Sprites Aux 2 #8 for DW\n; Sprites Aux 2 #6 for LW\n; #7 and #9 are the yellow bush palettes\n\n", + "file": "tables.asm" + }, + { + "name": "OverworldPaletteSet", + "code": "OverworldPaletteSet:\ndb $00, $FF, $07, $FF ; 0x00\ndb $00, $01, $07, $FF ; 0x01\ndb $00, $02, $07, $FF ; 0x02\ndb $00, $03, $07, $FF ; 0x03\ndb $00, $04, $07, $FF ; 0x04\ndb $00, $05, $07, $FF ; 0x05\ndb $00, $06, $07, $FF ; 0x06\ndb $07, $06, $05, $FF ; 0x07\ndb $00, $08, $07, $FF ; 0x08\ndb $00, $09, $07, $FF ; 0x09\ndb $00, $0A, $07, $FF ; 0x0A\ndb $00, $0B, $07, $FF ; 0x0B\ndb $00, $FF, $07, $FF ; 0x0C\ndb $00, $FF, $07, $FF ; 0x0D\ndb $03, $04, $07, $FF ; 0x0E\ndb $04, $04, $03, $FF ; 0x0F\ndb $10, $FF, $06, $FF ; 0x10\ndb $10, $01, $06, $FF ; 0x11\ndb $10, $11, $06, $FF ; 0x12\ndb $10, $03, $06, $FF ; 0x13\ndb $10, $04, $06, $FF ; 0x14\ndb $10, $05, $06, $FF ; 0x15\ndb $10, $06, $06, $FF ; 0x16\ndb $12, $13, $04, $FF ; 0x17\ndb $12, $05, $04, $FF ; 0x18\ndb $10, $09, $06, $FF ; 0x19\ndb $10, $0B, $06, $FF ; 0x1A\ndb $10, $0C, $06, $FF ; 0x1B\ndb $10, $0D, $06, $FF ; 0x1C\ndb $10, $0E, $06, $FF ; 0x1D\ndb $10, $0F, $06, $FF ; 0x1E\n\n\nLDA.l UnderworldPaletteSets+0,X\nSTA.w $0AB6 ; PALBG\n\nLDA.l UnderworldPaletteSets+1,X\nSTA.w $0AAC ; PALSPR0\n\nLDA.l UnderworldPaletteSets+2,X\nSTA.w $0AAD ; PALSPR1\n\nLDA.l UnderworldPaletteSets+3,X\nSTA.w $0AAE ; PALSPR2\n\n; PALBG\n; 0x00 - Kalyxo Castle\n; 0x01 - Blue\n; 0x02 - House\n; 0x03 - Green\n; 0x04 - Glacia Estate Ice\n; 0x05 - Zora Temple\n; 0x06 - Tail Palace Pink\n; 0x07 - Goron Mines Cave Red\n; 0x08 - Mushroom Grotto Gray\n; 0x09\n; 0x0A (10) - Ranch Pink\n; 0x0B (11) - Another green\n; 0x0C - Goron Mines Cave Red\n; 0x0D\n; 0x0E\n; 0x0F\n; 0x10 -\n; 0x (19) -\n", + "file": "tables.asm" + }, + { + "name": "UnderworldPaletteSets", + "code": "UnderworldPaletteSets:\ndb $00, $00, $03, $01 ; 0x00\ndb $02, $00, $03, $01 ; 0x01\ndb $04, $00, $0A, $01 ; 0x02 House\ndb $06, $00, $01, $07 ; 0x03 Fortress of Secrets\ndb $0A, $02, $02, $07 ; 0x04 Zora Temple\ndb $04, $04, $03, $0A ; 0x05 House\ndb $0C, $05, $08, $14 ; 0x06 Tail Palace\ndb $0E, $00, $03, $0A ; 0x07 Goron Mines/Caves\ndb $02, $00, $0F, $14 ; 0x08 Castle Basement\ndb $0A, $02, $00, $07 ; 0x09\ndb $02, $00, $0F, $0C ; 0x0A\ndb $06, $00, $06, $07 ; 0x0B\ndb $00, $00, $0E, $12 ; 0x0C Kalyxo Castle\ndb $12, $05, $05, $0B ; 0x0D\ndb $12, $00, $02, $0C ; 0x0E\ndb $10, $05, $0A, $07 ; 0x0F Mushroom Grotto\ndb $10, $00, $10, $0C ; 0x10 Ranch?\ndb $16, $07, $02, $07 ; 0x11 Hall of Secrets\ndb $16, $00, $07, $0F ; 0x12\ndb $08, $00, $04, $0C ; 0x13 Glacia Estate\ndb $08, $00, $04, $09 ; 0x14\ndb $04, $00, $03, $01 ; 0x15 House\ndb $14, $00, $04, $04 ; 0x16\ndb $14, $00, $14, $0C ; 0x17\ndb $18, $05, $07, $0B ; 0x18 Lava Lands Cave/Turtle Rock\ndb $18, $06, $10, $0C ; 0x19\ndb $1A, $05, $08, $14 ; 0x1A Dragon Ship\ndb $1A, $02, $00, $07 ; 0x1B Dragon Ship\ndb $06, $00, $03, $0A ; 0x1C\ndb $1C, $00, $03, $01 ; 0x1D\ndb $1E, $00, $0B, $11 ; 0x1E Swordsmith\ndb $04, $00, $0B, $11 ; 0x1F\ndb $0E, $00, $00, $02 ; 0x20\ndb $20, $08, $13, $0D ; 0x21 Ganondorf Boss\ndb $0A, $00, $03, $0A ; 0x22 Zora Temple\ndb $14, $00, $04, $04 ; 0x23\ndb $1A, $02, $02, $07 ; 0x24 Dragon Ship\ndb $1A, $0A, $00, $00 ; 0x25 Dragon Ship\ndb $00, $00, $03, $02 ; 0x26\ndb $0E, $00, $03, $07 ; 0x27\ndb $1A, $05, $05, $0B ; 0x28 Dragon Ship\n", + "file": "tables.asm" + }, + { + "name": "PrizePackRarities", + "code": "PrizePackRarities:\n{\n db $01 ; pack 1 : 50%\n db $01 ; pack 2 : 50%\n db $01 ; pack 3 : 50%\n db $00 ; pack 4 : 100%\n db $01 ; pack 5 : 50%\n db $01 ; pack 6 : 50%\n db $01 ; pack 7 : 50%\n db $00 ; pack 8 : 100% - doesn't exist\n}\n", + "file": "tables.asm" + }, + { + "name": "ItemDropBounceProps", + "code": "ItemDropBounceProps:\n{\n db $24 ; GREEN RUPEE\n db $24 ; BLUE RUPEE\n db $24 ; RED RUPEE\n db $20 ; BOMB REFILL 1\n db $20 ; BOMB REFILL 4\n db $20 ; BOMB REFILL 8\n db $24 ; SMALL MAGIC DECANTER\n db $24 ; LARGE MAGIC DECANTER\n db $24 ; ARROW REFILL 5\n db $24 ; ARROW REFILL 10\n db $00 ; FAIRY\n db $24 ; SMALL KEY\n db $20 ; BIG KEY\n db $20 ; STOLEN SHIELD\n}\n", + "file": "tables.asm" + }, + { + "name": "CustomTag", + "code": "CustomTag:\n{\n PHX\n LDA $7EF3C6 : BNE .game_has_begun\n JSR HouseTag_Main\n .game_has_begun\n PLX\n JML RoomTag_Return\n}\n\n; =========================================================\n; Room tag to initialize the game without the Uncle sprite.\n", + "file": "custom_tag.asm" + }, + { + "name": "HouseTag_Main", + "code": "HouseTag_Main:\n{\n LDA.l StoryState ; Must use long addressing for SRAM ($7EF39E)\n CMP.b #$03 : BCC .valid_state\n ; If state is invalid (>= 3), force reset to 0 (Intro)\n LDA.b #$00 : STA.l StoryState\n .valid_state\n ASL A : TAX\n JSR (.jump_table, X)\n RTS", + "file": "custom_tag.asm" + }, + { + "name": "HouseTag_TelepathicPlea", + "code": " HouseTag_TelepathicPlea:\n {\n LDA.b #$08 : STA.l TimeState.Hours ; Set the time to 8:00am\n LDA.b #$03 : STA.w $012C ; Play the deku tree music\n\n ; Set Link's coordinates to this specific position.\n LDA.b #$40 : STA $0FC2\n LDA.b #$09 : STA $0FC3\n LDA.b #$5A : STA $0FC4\n LDA.b #$21 : STA $0FC5\n\n ; \"Accept our quest, Link!\"\n LDA.b #$1F : LDY.b #$00\n JSL Sprite_ShowMessageUnconditional\n LDA.l StoryState : INC A : STA.l StoryState ; Long addressing for SRAM\n\n RTS", + "file": "custom_tag.asm" + }, + { + "name": "HouseTag_WakeUpPlayer", + "code": " HouseTag_WakeUpPlayer:\n {\n ; Lighten the screen gradually and then wake Link up partially\n LDA $1A : AND.b #$03 : BNE .delay\n LDA $9C : CMP.b #$00 : BEQ .colorTargetReached\n DEC $9C : DEC $9D\n .delay\n RTS", + "file": "custom_tag.asm" + }, + { + "name": "HouseTag_End", + "code": " HouseTag_End:\n {\n LDA $B6 : BNE .hasMetFarore\n LDA #$00 : STA.l StoryState ; Long addressing for SRAM\n .hasMetFarore\n RTS", + "file": "custom_tag.asm" + }, + { + "name": "AttractScene_ThroneRoom", + "code": "AttractScene_ThroneRoom:\n{\n #_0CEF4E: STZ.w $420C\n #_0CEF51: STZ.b $9B\n\n #_0CEF53: LDA.b #$02\n #_0CEF55: STA.b $99\n\n #_0CEF57: LDA.b #$20\n #_0CEF59: STA.b $9A\n\n #_0CEF5B: LDA.b #$0A\n #_0CEF5D: STA.w $0AA4\n\n #_0CEF60: JSL LoadCommonSprites_long\n\n #_0CEF64: REP #$20\n\n #_0CEF66: LDA.b $20\n #_0CEF68: PHA\n\n #_0CEF69: LDA.b $22\n #_0CEF6B: PHA\n\n #_0CEF6C: SEP #$20\n\n #_0CEF6E: LDA.b #$74\n #_0CEF70: JSL Underworld_LoadAndDrawEntranceRoom\n\n ; -------------------------------------------------------\n\n #_0CEF74: REP #$20\n\n #_0CEF76: PLA\n #_0CEF77: STA.b $22\n\n #_0CEF79: PLA\n #_0CEF7A: STA.b $20\n\n #_0CEF7C: SEP #$20\n\n #_0CEF7E: STZ.w $0AB6\n #_0CEF81: STZ.w $0AAC\n\n #_0CEF84: LDA.b #$0E\n #_0CEF86: STA.w $0AAD\n\n #_0CEF89: LDA.b #$03\n #_0CEF8B: STA.w $0AAE\n\n #_0CEF8E: LDX.b #$7E\n #_0CEF90: LDA.b #$00\n #_0CEF92: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n #_0CEF96: LDA.b #$00 ; RGB: #0008C0\n #_0CEF98: STA.l $7EC53A\n\n #_0CEF9C: LDA.b #$38\n #_0CEF9E: STA.l $7EC53B\n\n ; -------------------------------------------------------\n\n #_0CEFA2: STZ.w $1CD8\n\n #_0CEFA5: LDA.b #$13 ; MESSAGE 0113\n #_0CEFA7: STA.w $1CF0\n\n #_0CEFAA: LDA.b #$01\n #_0CEFAC: STA.w $1CF1\n\n #_0CEFAF: LDA.b #$02\n #_0CEFB1: STA.b $25\n\n #_0CEFB3: LDA.b #$E0\n #_0CEFB5: STA.b $2C\n\n #_0CEFB7: REP #$20\n\n #_0CEFB9: LDA.w #$0210\n #_0CEFBC: STA.b $64\n\n #_0CEFBE: SEP #$20\n}\nassert pc() <= $0CEFC0\n\n; ==========================================================\n\norg $0CEFE3", + "file": "attract_scenes.asm" + }, + { + "name": "AttractScene_Prison", + "code": "AttractScene_Prison:\n{\n #_0CEFE3: STZ.b $99\n #_0CEFE5: STZ.b $9A\n\n #_0CEFE7: REP #$20\n\n #_0CEFE9: LDA.b $20\n #_0CEFEB: PHA\n\n #_0CEFEC: LDA.b $22\n #_0CEFEE: PHA\n\n #_0CEFEF: SEP #$20\n\n #_0CEFF1: LDA.b #$73\n #_0CEFF3: JSL Underworld_LoadAndDrawEntranceRoom\n\n #_0CEFF7: REP #$20\n\n #_0CEFF9: PLA\n #_0CEFFA: STA.b $22\n\n #_0CEFFC: PLA\n #_0CEFFD: STA.b $20\n\n #_0CEFFF: SEP #$20\n\n #_0CF001: LDA.b #$02\n #_0CF003: STA.w $0AB6\n #_0CF006: STZ.w $0AAC\n\n #_0CF009: LDA.b #$0E\n #_0CF00B: STA.w $0AAD\n\n #_0CF00E: LDA.b #$03\n #_0CF010: STA.w $0AAE\n\n #_0CF013: LDX.b #$7F\n #_0CF015: LDA.b #$01\n\n #_0CF017: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n #_0CF01B: LDA.b #$00 ; RGB: #000070\n #_0CF01D: STA.l $7EC53A\n\n #_0CF021: LDA.b #$38\n #_0CF023: STA.l $7EC53B\n\n ; -------------------------------------------------------\n\n #_0CF027: STZ.w $1CD8\n\n #_0CF02A: LDA.b #$14 ; MESSAGE 0114\n #_0CF02C: STA.w $1CF0\n\n #_0CF02F: LDA.b #$01\n #_0CF031: STA.w $1CF1\n\n #_0CF034: LDA.b #$94\n #_0CF036: STA.b $2B\n\n #_0CF038: LDA.b #$68\n #_0CF03A: STA.b $30\n\n #_0CF03C: STZ.b $31\n #_0CF03E: STZ.b $32\n #_0CF040: STZ.b $33\n\n #_0CF042: STZ.b $40\n #_0CF044: STZ.b $50\n #_0CF046: STZ.b $5F\n\n #_0CF048: LDA.b #$FF\n #_0CF04A: STA.b $25\n\n #_0CF04C: REP #$20\n\n #_0CF04E: LDA.w #$0240\n #_0CF051: STA.b $64\n\n #_0CF053: SEP #$20\n\n #_0CF055: JMP AttractScene_AdvanceFromDungeon\n}\n\n; ==========================================================\n\norg $0CF058", + "file": "attract_scenes.asm" + }, + { + "name": "AttractScene_AgahnimAltar", + "code": "AttractScene_AgahnimAltar:\n{\n #_0CF058: REP #$20\n\n #_0CF05A: LDA.b $20\n #_0CF05C: PHA\n\n #_0CF05D: LDA.b $22\n #_0CF05F: PHA\n\n #_0CF060: SEP #$20\n\n #_0CF062: LDA.b #$75\n #_0CF064: JSL Underworld_LoadAndDrawEntranceRoom\n\n #_0CF068: REP #$20\n\n #_0CF06A: PLA\n #_0CF06B: STA.b $22\n\n #_0CF06D: PLA\n #_0CF06E: STA.b $20\n\n #_0CF070: SEP #$20\n\n #_0CF072: STZ.w $0AB6\n #_0CF075: STZ.w $0AAC\n\n #_0CF078: LDA.b #$0E\n #_0CF07A: STA.w $0AAD\n\n #_0CF07D: LDA.b #$03\n #_0CF07F: STA.w $0AAE\n #_0CF082: STZ.w $0AA9\n\n #_0CF085: JSL Underworld_LoadAllPalettes\n\n #_0CF089: LDX.b #$7F\n #_0CF08B: LDA.b #$02\n #_0CF08D: JSL Underworld_SaveAndLoadLoadAllPalettes\n\n #_0CF091: LDA.b #$00 ; RGB: #0008C0\n #_0CF093: STA.l $7EC33A\n #_0CF097: STA.l $7EC53A\n\n #_0CF09B: LDA.b #$38\n #_0CF09D: STA.l $7EC33B\n #_0CF0A1: STA.l $7EC53B\n\n ; -------------------------------------------------------\n\n #_0CF0A5: STZ.w $1CD8\n\n #_0CF0A8: LDA.b #$15 ; MESSAGE 0115\n #_0CF0AA: STA.w $1CF0\n\n #_0CF0AD: LDA.b #$01\n #_0CF0AF: STA.w $1CF1\n\n #_0CF0B2: LDA.b #$FF\n #_0CF0B4: STA.b $25\n\n #_0CF0B6: LDA.b #$70\n #_0CF0B8: STA.b $30\n #_0CF0BA: STA.b $62\n\n #_0CF0BC: LDA.b #$70\n #_0CF0BE: STA.b $63\n\n #_0CF0C0: LDA.b #$08\n #_0CF0C2: STA.b $32\n\n #_0CF0C4: STZ.b $50\n #_0CF0C6: STZ.b $51\n #_0CF0C8: STZ.b $52\n\n #_0CF0CA: STZ.b $5F\n #_0CF0CC: STZ.b $60\n #_0CF0CE: STZ.b $61\n\n #_0CF0D0: REP #$20\n\n #_0CF0D2: LDA.w #$00C0\n #_0CF0D5: STA.b $64\n\n #_0CF0D7: SEP #$20\n\n #_0CF0D9: JMP AttractScene_AdvanceFromDungeon\n}\n\n; ==========================================================\n\norg $0CF0DC", + "file": "attract_scenes.asm" + }, + { + "name": "AttractScene_EndOfStory", + "code": "AttractScene_EndOfStory:\n{\n #_0CF0DC: REP #$20\n\n #_0CF0DE: JSL Attract_SetUpConclusionHDMA\n}\n\n\n; ==========================================================\n\n; Attract_EnactStory:\n; #_0CF11C: dw AttractDramatize_PolkaDots ; 0x00\n; #_0CF11E: dw AttractDramatize_WorldMap ; 0x01\n; #_0CF120: dw AttractDramatize_ThroneRoom ; 0x02\n; #_0CF122: dw AttractDramatize_Prison ; 0x03\n; #_0CF124: dw AttractDramatize_AgahnimAltar ; 0x04\n\n; ==========================================================\n\norg $0CF1AE", + "file": "attract_scenes.asm" + }, + { + "name": "pool_AttractDramatize_ThroneRoom", + "code": "pool_AttractDramatize_ThroneRoom:\n{\n.pointer_size\n #_0CF1AE: dw AttractOAMData_king_size\n #_0CF1B0: dw AttractOAMData_mantle_size\n\n.pointer_offset_x\n #_0CF1B2: dw AttractOAMData_king_offset_x\n #_0CF1B4: dw AttractOAMData_mantle_offset_x\n\n.pointer_offset_y\n #_0CF1B6: dw AttractOAMData_king_offset_y\n #_0CF1B8: dw AttractOAMData_mantle_offset_y\n\n.pointer_char\n #_0CF1BA: dw AttractOAMData_king_char\n #_0CF1BC: dw AttractOAMData_mantle_char\n\n.pointer_prop\n #_0CF1BE: dw AttractOAMData_king_prop\n #_0CF1C0: dw AttractOAMData_mantle_prop\n\n ; -------------------------------------------------------\n\n.offset_x\n #_0CF1C2: db $50 ; king\n #_0CF1C3: db $68 ; mantle\n\n.offset_y\n #_0CF1C4: db $58 ; king\n #_0CF1C5: db $20 ; mantle\n\n ; -------------------------------------------------------\n\n.oam_count\n #_0CF1C6: db $03 ; king\n #_0CF1C7: db $05 ; mantle\n}\n\n\n; ==========================================================\n\norg $0CF1C8", + "file": "attract_scenes.asm" + }, + { + "name": "AttractDramatize_ThroneRoom", + "code": "AttractDramatize_ThroneRoom:\n{\n #_0CF1C8: STZ.b $2A\n\n #_0CF1CA: LDA.b $52\n #_0CF1CC: BNE .continue\n\n #_0CF1CE: LDA.b $13\n #_0CF1D0: CMP.b #$0F\n #_0CF1D2: BEQ .max_brightness\n\n #_0CF1D4: INC.b $13\n\n #_0CF1D6: BRA .continue\n\n .max_brightness\n #_0CF1D8: INC.b $52\n\n ; -------------------------------------------------------\n\n .continue\n #_0CF1DA: REP #$20\n\n #_0CF1DC: LDA.w $0122\n #_0CF1DF: BNE .scroll_screen\n\n #_0CF1E1: SEP #$20\n\n #_0CF1E3: JSR Attract_DoTextInDungeonScene\n\n #_0CF1E6: REP #$20\n\n #_0CF1E8: LDA.b $64\n\n #_0CF1EA: SEP #$20\n\n #_0CF1EC: BNE .continue_dramatization\n\n #_0CF1EE: LDA.b $2C\n #_0CF1F0: CMP.b #$1F\n #_0CF1F2: BCS .dont_fade_out\n\n #_0CF1F4: AND.b #$01\n #_0CF1F6: BNE .dont_fade_out\n\n #_0CF1F8: DEC.b $13\n\n .dont_fade_out\n #_0CF1FA: DEC.b $2C\n #_0CF1FC: BNE .continue_dramatization\n\n #_0CF1FE: INC.b $23\n #_0CF200: INC.b $22\n\n #_0CF202: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "pool_AttractDramatize_Prison", + "code": "pool_AttractDramatize_Prison:\n{\n .soldier_offset_x\n #_0CF260: dw 32, -12\n\n .soldier_offset_y\n #_0CF264: db 24, 24\n\n .soldier_direction\n #_0CF266: db $01, $01\n\n .soldier_palette\n #_0CF268: db $09, $07\n\n .maiden_jab_offset_x\n #_0CF26A: db 0, 1, 2, 3\n #_0CF26E: db 4, 5, 5, 5\n #_0CF272: db 4, 4, 3, 3\n #_0CF276: db 2, 2, 1, 1\n}\n\norg $0CF27A", + "file": "attract_scenes.asm" + }, + { + "name": "AttractDramatize_Prison", + "code": "AttractDramatize_Prison:\n{\n #_0CF27A: STZ.b $2A\n\n #_0CF27C: LDA.b $5F\n #_0CF27E: BNE .skip_fade\n\n #_0CF280: JSR Attract_FadeInStep\n\n .skip_fade\n #_0CF283: LDA.b #$38\n #_0CF285: STA.b $28\n\n #_0CF287: JSR Attract_DrawZelda\n\n #_0CF28A: LDA.b $25\n #_0CF28C: CMP.b #$C0\n #_0CF28E: BCS .delay_agahnim\n\n #_0CF290: JMP.w AttractDramatize_Agahnim\n\n .delay_agahnim\n #_0CF293: LDA.b #$70\n #_0CF295: STA.b $29\n\n #_0CF297: DEC.b $50\n #_0CF299: BPL .dont_reset_jab\n\n #_0CF29B: LDA.b #$0F\n #_0CF29D: STA.b $50\n\n .dont_reset_jab\n #_0CF29F: LDX.b $50\n\n #_0CF2A1: LDA.b $31\n #_0CF2A3: STA.b $40\n\n #_0CF2A5: LDA.b $30\n #_0CF2A7: CLC\n #_0CF2A8: ADC.l pool_AttractDramatize_Prison_maiden_jab_offset_x,X\n #_0CF2AC: STA.b $28\n\n #_0CF2AE: BCC .dont_disable_maiden\n\n #_0CF2B0: INC.b $40\n\n .dont_disable_maiden\n #_0CF2B2: JSR Attract_DrawKidnappedMaiden\n\n ; -------------------------------------------------------\n\n #_0CF2B5: LDX.b #$01\n\n .next_soldier\n #_0CF2B7: STZ.b $03\n\n #_0CF2B9: LDA.b $33\n #_0CF2BB: STA.b $06\n\n #_0CF2BD: LDA.b $29\n #_0CF2BF: CLC\n #_0CF2C0: ADC.l pool_AttractDramatize_Prison_soldier_offset_y,X\n #_0CF2C4: STA.b $02\n\n #_0CF2C6: LDA.l pool_AttractDramatize_Prison_soldier_direction,X\n #_0CF2CA: STA.b $04\n\n #_0CF2CC: LDA.l pool_AttractDramatize_Prison_soldier_palette,X\n #_0CF2D0: STA.b $05\n\n #_0CF2D2: PHX\n\n #_0CF2D3: REP #$20\n\n #_0CF2D5: TXA\n #_0CF2D6: ASL A\n #_0CF2D7: TAX\n\n #_0CF2D8: LDA.b $30\n #_0CF2DA: CLC\n #_0CF2DB: ADC.w #$0100\n\n #_0CF2DE: CLC\n #_0CF2DF: ADC.l pool_AttractDramatize_Prison_soldier_offset_x,X\n #_0CF2E3: STA.b $00\n\n #_0CF2E5: TAY\n #_0CF2E6: STY.b $34\n\n #_0CF2E8: SEP #$20\n\n #_0CF2EA: JSL SpritePrep_ResetProperties\n #_0CF2EE: JSL PuppetSoldier\n\n #_0CF2F2: PLX\n #_0CF2F3: DEX\n #_0CF2F4: BPL .next_soldier\n\n ; -------------------------------------------------------\n\n #_0CF2F6: INC.b $32\n\n #_0CF2F8: LDA.b $32\n #_0CF2FA: AND.b #$07\n #_0CF2FC: BNE AttractDramatize_Agahnim\n\n #_0CF2FE: LDY.b #$FF\n\n #_0CF300: LDA.b $33\n #_0CF302: CMP.b #$02\n #_0CF304: BNE .delay_sfx\n\n #_0CF306: STY.b $33\n\n #_0CF308: LDA.b $31\n #_0CF30A: BNE .delay_sfx\n\n #_0CF30C: LDA.b $32\n #_0CF30E: AND.b #$08\n #_0CF310: BEQ .delay_sfx\n\n #_0CF312: LDA.b #$04 ; SFX3.04\n #_0CF314: STA.w $012F\n\n .delay_sfx\n #_0CF317: INC.b $33\n}\n\n; ==========================================================\n\norg $0CF319", + "file": "attract_scenes.asm" + }, + { + "name": "AttractDramatize_Agahnim", + "code": "AttractDramatize_Agahnim:\n{\n #_0CF319: LDA.b $60\n #_0CF31B: ASL A\n #_0CF31C: TAX\n\n #_0CF31D: JMP.w (.vectors,X)\n\n .vectors\n #_0CF320: dw Dramaghanim_WaitForCue\n #_0CF322: dw Dramaghanim_MoveAndSpin\n\n ; ==========================================================\n", + "file": "attract_scenes.asm" + }, + { + "name": "Dramaghanim_AdvanceStory", + "code": " Dramaghanim_AdvanceStory:\n #_0CF324: INC.b $23\n\n #_0CF326: DEC.b $22\n #_0CF328: DEC.b $22\n\n #_0CF32A: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "Dramaghanim_WaitForCue", + "code": " Dramaghanim_WaitForCue:\n #_0CF32B: LDA.b $34\n #_0CF32D: BNE .delay\n\n #_0CF32F: INC.b $60\n\n .delay\n #_0CF331: REP #$20\n\n #_0CF333: LDA.b $1A\n #_0CF335: AND.w #$0001\n #_0CF338: BEQ .delay_tick\n\n #_0CF33A: DEC.b $30\n\n .delay_tick\n #_0CF33C: LDA.w #AttractAgahnimOAM_size\n #_0CF33F: STA.b $2D\n\n #_0CF341: LDA.w #AttractAgahnimOAM_offset_x\n #_0CF344: STA.b $02\n\n #_0CF346: LDA.w #AttractAgahnimOAM_offset_y\n #_0CF349: STA.b $04\n\n #_0CF34B: LDA.w #AttractAgahnimOAM_char_step0\n #_0CF34E: STA.b $06\n\n #_0CF350: LDA.w #AttractAgahnimOAM_prop_step0\n #_0CF353: STA.b $08\n\n #_0CF355: SEP #$20\n\n #_0CF357: LDA.b #$58\n #_0CF359: STA.b $28\n\n #_0CF35B: LDA.b $2B\n #_0CF35D: STA.b $29\n\n #_0CF35F: LDY.b #$05\n #_0CF361: JSR Attract_DrawPreloadedSprite\n\n #_0CF364: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "pool_Dramaghanim_MoveAndSpin", + "code": "pool_Dramaghanim_MoveAndSpin:\n{\n .pointers_char\n #_0CF365: dw AttractAgahnimOAM_char_step0\n #_0CF367: dw AttractAgahnimOAM_char_step1\n #_0CF369: dw AttractAgahnimOAM_char_step2\n #_0CF36B: dw AttractAgahnimOAM_char_step3\n #_0CF36D: dw AttractAgahnimOAM_char_step4\n\n .pointers_prop\n #_0CF36F: dw AttractAgahnimOAM_prop_step0\n #_0CF371: dw AttractAgahnimOAM_prop_step1\n #_0CF373: dw AttractAgahnimOAM_prop_step2\n #_0CF375: dw AttractAgahnimOAM_prop_step0\n #_0CF377: dw AttractAgahnimOAM_prop_step0\n}\n\n\norg $0CF379", + "file": "attract_scenes.asm" + }, + { + "name": "Dramaghanim_MoveAndSpin", + "code": "Dramaghanim_MoveAndSpin:\n{\n #_0CF379: LDA.b $25\n #_0CF37B: CMP.b #$80\n #_0CF37D: BCS .continue\n\n #_0CF37F: JSR Attract_DoTextInDungeonScene\n\n #_0CF382: REP #$20\n\n #_0CF384: LDA.b $64\n\n #_0CF386: SEP #$20\n\n #_0CF388: BEQ .continue\n\n #_0CF38A: LDX.b #$08\n #_0CF38C: BRA .animate_agahnim\n\n .continue\n #_0CF38E: LDX.b #$00\n\n #_0CF390: LDA.b $2B\n #_0CF392: CMP.b #$6E\n #_0CF394: BEQ .timer_maxed\n\n #_0CF396: DEC.b $2B\n #_0CF398: BRA .animate_agahnim\n\n .timer_maxed\n #_0CF39A: LDA.b $25\n #_0CF39C: CMP.b #$1F\n #_0CF39E: BCS .delay_fade\n\n #_0CF3A0: AND.b #$01\n #_0CF3A2: BNE .delay_fade\n\n #_0CF3A4: DEC.b $13\n\n .delay_fade\n #_0CF3A6: DEC.b $25\n #_0CF3A8: BNE .dont_advance_story\n\n #_0CF3AA: JMP.w Dramaghanim_AdvanceStory\n\n ; -------------------------------------------------------\n\n .dont_advance_story\n #_0CF3AD: LDA.b $25\n #_0CF3AF: CMP.b #$C0\n #_0CF3B1: BCS .animate_agahnim\n\n #_0CF3B3: INX\n #_0CF3B4: INX\n\n #_0CF3B5: CMP.b #$B8\n #_0CF3B7: BCS .animate_agahnim\n\n #_0CF3B9: INX\n #_0CF3BA: INX\n\n #_0CF3BB: CMP.b #$B0\n #_0CF3BD: BCS .animate_agahnim\n\n #_0CF3BF: INX\n #_0CF3C0: INX\n\n #_0CF3C1: CMP.b #$A0\n #_0CF3C3: BCS .animate_agahnim\n\n #_0CF3C5: INX\n #_0CF3C6: INX\n\n ; -------------------------------------------------------\n\n .animate_agahnim\n #_0CF3C7: LDA.b #$A8\n #_0CF3C9: STA.b $28\n\n #_0CF3CB: REP #$20\n\n #_0CF3CD: LDA.b $1A\n #_0CF3CF: AND.w #$0001\n #_0CF3D2: BEQ .delay_tick\n\n #_0CF3D4: DEC.b $30\n\n .delay_tick\n #_0CF3D6: LDA.w #AttractAgahnimOAM_size\n #_0CF3D9: STA.b $2D\n\n #_0CF3DB: LDA.w #AttractAgahnimOAM_offset_x\n #_0CF3DE: STA.b $02\n\n #_0CF3E0: LDA.w #AttractAgahnimOAM_offset_y\n #_0CF3E3: STA.b $04\n\n #_0CF3E5: LDA.l pool_Dramaghanim_MoveAndSpin_pointers_char,X\n #_0CF3E9: STA.b $06\n\n #_0CF3EB: LDA.l pool_Dramaghanim_MoveAndSpin_pointers_prop,X\n #_0CF3EF: STA.b $08\n\n #_0CF3F1: SEP #$20\n\n #_0CF3F3: LDA.b #$58\n #_0CF3F5: STA.b $28\n\n #_0CF3F7: LDA.b $2B\n #_0CF3F9: STA.b $29\n\n #_0CF3FB: LDY.b #$05\n #_0CF3FD: JSR Attract_DrawPreloadedSprite\n\n #_0CF400: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "pool_AttractDramatize_AgahnimAltar", + "code": "pool_AttractDramatize_AgahnimAltar:\n{\n .soldier_position_x\n #_0CF401: db $30, $C0, $30, $C0, $50, $A0\n\n .soldier_position_y\n #_0CF407: db $70, $70, $98, $98, $C0, $C0\n\n .soldier_direction\n #_0CF40D: db $00, $01, $00, $01, $03, $03\n\n .soldier_palette\n #_0CF413: db $09, $09, $09, $09, $07, $09\n\n ; -------------------------------------------------------\n\n .vectors\n #_0CF419: dw Dramagahnim_RaiseTheRoof\n #_0CF41B: dw Dramagahnim_ReadySpell\n #_0CF41D: dw Dramagahnim_CastSpell\n #_0CF41F: dw Dramagahnim_RealizeWhatJustHappened\n #_0CF421: dw Dramagahnim_IdleGuiltily\n}\n\n ; -------------------------------------------------------\n", + "file": "attract_scenes.asm" + }, + { + "name": "AttractDramatize_AgahnimAltar", + "code": "AttractDramatize_AgahnimAltar:\n{\n #_0CF423: LDA.b $5D\n #_0CF425: BEQ .delay\n\n #_0CF427: JMP.w Dramaghanim_AdvanceStory\n\n .delay\n #_0CF42A: STZ.b $2A\n\n #_0CF42C: JSL HandleScreenFlash\n\n #_0CF430: LDA.b $5F\n #_0CF432: BNE .delay_fade\n\n #_0CF434: JSR Attract_FadeInStep\n\n .delay_fade\n #_0CF437: LDA.b $50\n #_0CF439: CMP.b #$FF\n #_0CF43B: BEQ .delay_tick\n\n #_0CF43D: INC.b $50\n\n .delay_tick\n #_0CF43F: LDA.w $0FF9\n #_0CF442: BEQ .delay_sfx\n\n #_0CF444: AND.b #$04\n #_0CF446: BEQ .delay_sfx\n\n #_0CF448: LDX.b #$2B ; SFX3.2B\n #_0CF44A: STX.w $012F\n\n ; -------------------------------------------------------\n\n .delay_sfx\n #_0CF44D: LDA.b $60\n #_0CF44F: ASL A\n #_0CF450: TAX\n\n #_0CF451: JSR (pool_AttractDramatize_AgahnimAltar_vectors,X)\n\n ; -------------------------------------------------------\n\n #_0CF454: LDX.b #$05\n\n .next_soldier\n #_0CF456: STZ.b $01\n #_0CF458: STZ.b $03\n #_0CF45A: STZ.b $06\n\n #_0CF45C: LDA.l pool_AttractDramatize_AgahnimAltar_soldier_position_x,X\n #_0CF460: STA.b $00\n\n #_0CF462: LDA.l pool_AttractDramatize_AgahnimAltar_soldier_position_y,X\n #_0CF466: STA.b $02\n\n #_0CF468: LDA.l pool_AttractDramatize_AgahnimAltar_soldier_direction,X\n #_0CF46C: STA.b $04\n\n #_0CF46E: LDA.l pool_AttractDramatize_AgahnimAltar_soldier_palette,X\n #_0CF472: STA.b $05\n\n #_0CF474: PHX\n\n #_0CF475: JSL SpritePrep_ResetProperties\n #_0CF479: JSL PuppetSoldier\n\n #_0CF47D: PLX\n #_0CF47E: DEX\n #_0CF47F: BPL .next_soldier\n\n ; -------------------------------------------------------\n\n #_0CF481: LDX.b $50\n #_0CF483: CPX.b #$A0\n #_0CF485: BCC .continue\n\n #_0CF487: LDA.b $30\n #_0CF489: CMP.b #$60\n #_0CF48B: BEQ .tick_timer\n\n #_0CF48D: DEC.b $32\n #_0CF48F: BNE .continue\n\n #_0CF491: DEC.b $30\n\n #_0CF493: LDA.b #$08\n #_0CF495: STA.b $32\n\n #_0CF497: BRA .continue\n\n .tick_timer\n #_0CF499: INC.b $61\n\n ; -------------------------------------------------------\n\n .continue\n #_0CF49B: LDA.b $52\n #_0CF49D: BNE .dont_draw_maiden\n\n #_0CF49F: REP #$20\n\n #_0CF4A1: LDA.w #AttractAltarMaidenOAM_size\n #_0CF4A4: STA.b $2D\n\n #_0CF4A6: LDA.w #AttractAltarMaidenOAM_offset_x\n #_0CF4A9: STA.b $02\n\n #_0CF4AB: LDA.w #AttractAltarMaidenOAM_offset_y\n #_0CF4AE: STA.b $04\n\n #_0CF4B0: LDX.b #$00\n\n #_0CF4B2: LDA.b $30\n #_0CF4B4: AND.w #$00FF\n #_0CF4B7: CMP.w #$0070\n #_0CF4BA: BEQ .not_airborne\n\n #_0CF4BC: INX\n #_0CF4BD: INX\n\n .not_airborne\n #_0CF4BE: LDA.l .maiden_char_pointer,X\n #_0CF4C2: STA.b $06\n\n #_0CF4C4: LDA.w #AttractAltarMaidenOAM_prop\n #_0CF4C7: STA.b $08\n\n #_0CF4C9: SEP #$20\n\n #_0CF4CB: LDA.b #$74\n #_0CF4CD: STA.b $28\n\n #_0CF4CF: LDA.b $30\n #_0CF4D1: STA.b $29\n\n #_0CF4D3: LDY.b #$01\n #_0CF4D5: JSR Attract_DrawPreloadedSprite\n\n ; -------------------------------------------------------\n\n #_0CF4D8: LDX.b #$0E\n\n #_0CF4DA: LDA.b $30\n #_0CF4DC: CMP.b #$68\n #_0CF4DE: BCS .adjust_shadow_index\n\n #_0CF4E0: SEC\n #_0CF4E1: SBC.b #$68\n\n #_0CF4E3: ASL A\n #_0CF4E4: AND.b #$0E\n #_0CF4E6: TAX\n\n .adjust_shadow_index\n #_0CF4E7: REP #$20\n\n #_0CF4E9: LDA.w #AttractAltarMaidenShadowOAM_size\n #_0CF4EC: STA.b $2D\n\n #_0CF4EE: LDA.l .shadow_offset_x_pointer,X\n #_0CF4F2: STA.b $02\n\n #_0CF4F4: LDA.w #AttractAltarMaidenShadowOAM_offset_y\n #_0CF4F7: STA.b $04\n\n #_0CF4F9: LDA.w #AttractAltarMaidenShadowOAM_char\n #_0CF4FC: STA.b $06\n\n #_0CF4FE: LDA.w #AttractAltarMaidenShadowOAM_prop\n #_0CF501: STA.b $08\n\n #_0CF503: SEP #$20\n\n #_0CF505: TXA\n #_0CF506: LSR A\n #_0CF507: TAX\n\n #_0CF508: LDA.b #$74\n #_0CF50A: CLC\n #_0CF50B: ADC.l .shadow_base_offset_x,X\n #_0CF50F: STA.b $28\n\n #_0CF511: LDA.b #$76\n #_0CF513: STA.b $29\n\n #_0CF515: LDY.b #$01\n #_0CF517: JSR Attract_DrawPreloadedSprite\n\n ; -------------------------------------------------------\n\n .dont_draw_maiden\n #_0CF51A: LDA.b $50\n\n #_0CF51C: LSR A\n #_0CF51D: LSR A\n #_0CF51E: LSR A\n #_0CF51F: LSR A\n\n #_0CF520: AND.b #$0E\n #_0CF522: TAX\n\n #_0CF523: REP #$20\n\n #_0CF525: LDA.w #AttractAgahnimOAM_size\n #_0CF528: STA.b $2D\n\n #_0CF52A: LDA.w #AttractAgahnimOAM_offset_x\n #_0CF52D: STA.b $02\n\n #_0CF52F: LDA.w #AttractAgahnimOAM_offset_y\n #_0CF532: STA.b $04\n\n #_0CF534: LDA.l .agahnim_char_pointer,X\n #_0CF538: STA.b $06\n\n #_0CF53A: LDA.w #AttractAgahnimOAM_prop_step0\n #_0CF53D: STA.b $08\n\n #_0CF53F: SEP #$20\n\n #_0CF541: LDA.b #$70\n #_0CF543: STA.b $28\n\n #_0CF545: LDA.b #$46\n #_0CF547: STA.b $29\n\n #_0CF549: LDY.b #$05\n #_0CF54B: JSR Attract_DrawPreloadedSprite\n\n #_0CF54E: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "Dramagahnim_RaiseTheRoof", + "code": "Dramagahnim_RaiseTheRoof:\n{\n #_0CF57B: LDA.b $61\n #_0CF57D: BEQ .exit\n\n #_0CF57F: INC.b $60\n\n .exit\n #_0CF581: RTS", + "file": "attract_scenes.asm" + }, + { + "name": "DramagahnimSpellCharPointer", + "code": "DramagahnimSpellCharPointer:\n #_0CF582: dw DramagahnimSpellOAM_char_step0\n #_0CF584: dw DramagahnimSpellOAM_char_step1\n\n ; -------------------------------------------------------\n", + "file": "attract_scenes.asm" + }, + { + "name": "DramagahnimSpellPropPointer", + "code": "DramagahnimSpellPropPointer:\n #_0CF586: dw DramagahnimSpellOAM_prop_step0\n #_0CF588: dw DramagahnimSpellOAM_prop_step1\n\n ; -------------------------------------------------------\n", + "file": "attract_scenes.asm" + }, + { + "name": "pool_Dramagahnim_ReadySpell", + "code": "pool_Dramagahnim_ReadySpell:\n{\n.oam_count\n #_0CF58A: db 1\n #_0CF58B: db 1\n #_0CF58C: db 1\n #_0CF58D: db 5\n #_0CF58E: db 5\n #_0CF58F: db 9\n #_0CF590: db 9\n #_0CF591: db 13\n}\n\n; -------------------------------------------------------\n\norg $0CF592", + "file": "attract_scenes.asm" + }, + { + "name": "Dramagahnim_ReadySpell", + "code": "Dramagahnim_ReadySpell:\n #_0CF592: LDA.b $1A\n #_0CF594: LSR A\n #_0CF595: AND.b #$02\n #_0CF597: TAX\n\n #_0CF598: REP #$20\n\n #_0CF59A: LDA.w #DramagahnimSpellOAM_size\n #_0CF59D: STA.b $2D\n\n #_0CF59F: LDA.w #DramagahnimSpellOAM_offset_x\n #_0CF5A2: STA.b $02\n\n #_0CF5A4: LDA.w #DramagahnimSpellOAM_offset_y\n #_0CF5A7: STA.b $04\n\n #_0CF5A9: LDA.l DramagahnimSpellCharPointer,X\n #_0CF5AD: STA.b $06\n\n #_0CF5AF: LDA.l DramagahnimSpellPropPointer,X\n #_0CF5B3: STA.b $08\n\n ; -------------------------------------------------------\n\n #_0CF5B5: SEP #$20\n\n #_0CF5B7: LDA.b #$6E\n #_0CF5B9: STA.b $28\n\n #_0CF5BB: LDA.b #$48\n #_0CF5BD: STA.b $29\n\n #_0CF5BF: LDA.b $51\n #_0CF5C1: LSR A\n #_0CF5C2: AND.b #$07\n #_0CF5C4: TAX\n\n #_0CF5C5: LDA.l pool_Dramagahnim_ReadySpell_oam_count,X\n #_0CF5C9: TAY\n\n #_0CF5CA: JSR Attract_DrawPreloadedSprite\n\n ; -------------------------------------------------------\n\n #_0CF5CD: LDA.b $51\n #_0CF5CF: BNE .delay_sfx\n\n #_0CF5D1: LDY.b $63\n #_0CF5D3: CPY.b #$70\n #_0CF5D5: BNE .delay_sfx\n\n #_0CF5D7: LDX.b #$27 ; SFX3.27\n #_0CF5D9: STX.w $012F\n\n ; -------------------------------------------------------\n\n.delay_sfx\n #_0CF5DC: CMP.b #$0F\n #_0CF5DE: BEQ .advance\n\n #_0CF5E0: CMP.b #$06\n #_0CF5E2: BNE .delay_other_sfx\n\n #_0CF5E4: LDX.b #$90\n #_0CF5E6: STX.w $0FF9\n\n #_0CF5E9: LDX.b #$2B ; SFX3.2B\n #_0CF5EB: STX.w $012F\n\n ; -------------------------------------------------------\n\n.delay_other_sfx\n #_0CF5EE: LDA.b $63\n #_0CF5F0: BEQ .delay_tick\n\n #_0CF5F2: DEC.b $63\n\n #_0CF5F4: RTS", + "file": "attract_scenes.asm" + }, + { + "name": "pool_Dramagahnim_CastSpell", + "code": "pool_Dramagahnim_CastSpell:\n{\n .oam_count\n #_0CF5FB: db 3\n #_0CF5FC: db 3\n #_0CF5FD: db 7\n #_0CF5FE: db 7\n #_0CF5FF: db 11\n #_0CF600: db 11\n #_0CF601: db 13\n #_0CF602: db 13\n\n ; -------------------------------------------------------\n\n .index_offset\n #_0CF603: dw 10\n #_0CF605: dw 10\n #_0CF607: dw 6\n #_0CF609: dw 6\n #_0CF60B: dw 2\n #_0CF60D: dw 2\n #_0CF60F: dw 0\n #_0CF611: dw 0\n}\n\n\n ; -------------------------------------------------------\n", + "file": "attract_scenes.asm" + }, + { + "name": "Dramagahnim_CastSpell", + "code": "Dramagahnim_CastSpell:\n{\n #_0CF613: PHB\n #_0CF614: PHK\n #_0CF615: PLB\n\n #_0CF616: LDA.b $1A\n #_0CF618: LSR A\n #_0CF619: AND.b #$02\n #_0CF61B: TAX\n\n #_0CF61C: LDA.b $51\n #_0CF61E: LSR A\n #_0CF61F: AND.b #$07\n #_0CF621: STA.b $00\n\n #_0CF623: ASL A\n #_0CF624: TAY\n\n ; -------------------------------------------------------\n\n #_0CF625: REP #$20\n\n #_0CF627: LDA.w #DramagahnimSpellOAM_size\n #_0CF62A: CLC\n #_0CF62B: ADC.w pool_Dramagahnim_CastSpell_index_offset,Y\n #_0CF62E: STA.b $2D\n\n #_0CF630: LDA.w #DramagahnimSpellOAM_offset_x\n #_0CF633: CLC\n #_0CF634: ADC.w pool_Dramagahnim_CastSpell_index_offset,Y\n #_0CF637: STA.b $02\n\n #_0CF639: LDA.w #DramagahnimSpellOAM_offset_y\n #_0CF63C: CLC\n #_0CF63D: ADC.w pool_Dramagahnim_CastSpell_index_offset,Y\n #_0CF640: STA.b $04\n\n #_0CF642: LDA.w DramagahnimSpellCharPointer,X\n #_0CF645: CLC\n #_0CF646: ADC.w pool_Dramagahnim_CastSpell_index_offset,Y\n #_0CF649: STA.b $06\n\n #_0CF64B: LDA.w DramagahnimSpellPropPointer,X\n #_0CF64E: CLC\n #_0CF64F: ADC.w pool_Dramagahnim_CastSpell_index_offset,Y\n #_0CF652: STA.b $08\n\n ; -------------------------------------------------------\n\n #_0CF654: SEP #$20\n\n #_0CF656: LDA.b #$6E\n #_0CF658: STA.b $28\n\n #_0CF65A: LDA.b #$48\n #_0CF65C: STA.b $29\n\n #_0CF65E: LDX.b $00\n\n #_0CF660: LDA.w pool_Dramagahnim_CastSpell_oam_count,X\n #_0CF663: TAY\n\n #_0CF664: JSR Attract_DrawPreloadedSprite\n\n #_0CF667: PLB\n\n ; -------------------------------------------------------\n\n #_0CF668: LDA.b $51\n #_0CF66A: BNE .delay_tick\n\n #_0CF66C: DEC.b $62\n #_0CF66E: BEQ Dramagahnim_ReadySpell_advance\n\n #_0CF670: BRA .exit\n\n .delay_tick\n #_0CF672: DEC.b $51\n\n .exit\n #_0CF674: RTS", + "file": "attract_scenes.asm" + }, + { + "name": "pool_Dramagahnim_RealizeWhatJustHappened", + "code": "pool_Dramagahnim_RealizeWhatJustHappened:\n{\n .pointers_offset_x\n #_0CF675: dw AttractTelebubbleOAM_step0_offset_x\n #_0CF677: dw AttractTelebubbleOAM_step1_offset_x\n\n .pointers_offset_y\n #_0CF679: dw AttractTelebubbleOAM_step0_offset_y\n #_0CF67B: dw AttractTelebubbleOAM_step1_offset_y\n\n .pointers_char\n #_0CF67D: dw AttractTelebubbleOAM_step0_char\n #_0CF67F: dw AttractTelebubbleOAM_step1_char\n\n .pointers_prop\n #_0CF681: dw AttractTelebubbleOAM_step0_prop\n #_0CF683: dw AttractTelebubbleOAM_step1_prop\n\n .position_x\n #_0CF685: db $78\n #_0CF686: db $70\n\n .object_count\n #_0CF687: db $00\n #_0CF688: db $01\n}\n\n; -------------------------------------------------------\n\norg $0CF689", + "file": "attract_scenes.asm" + }, + { + "name": "Dramagahnim_RealizeWhatJustHappened", + "code": "Dramagahnim_RealizeWhatJustHappened:\n{\n #_0CF689: LDA.b $51\n #_0CF68B: CMP.b #$06\n #_0CF68D: BNE .delay_sfx\n\n #_0CF68F: INC.b $52\n\n #_0CF691: LDA.b #$33 ; SFX2.33\n #_0CF693: STA.w $012E\n\n .delay_sfx\n #_0CF696: CMP.b #$40\n #_0CF698: BNE .delay_tick\n\n #_0CF69A: LDA.b #$E0\n #_0CF69C: STA.b $51\n\n #_0CF69E: INC.b $60\n\n .delay_tick\n #_0CF6A0: CMP.b #$0F\n #_0CF6A2: BCS .skip_draw\n\n #_0CF6A4: LSR A\n #_0CF6A5: LSR A\n #_0CF6A6: AND.b #$02\n #_0CF6A8: TAX\n\n #_0CF6A9: REP #$20\n\n #_0CF6AB: LDA.w #AttractTelebubbleOAM_size\n #_0CF6AE: STA.b $2D\n\n #_0CF6B0: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_pointers_offset_x,X\n #_0CF6B4: STA.b $02\n\n #_0CF6B6: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_pointers_offset_y,X\n #_0CF6BA: STA.b $04\n\n #_0CF6BC: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_pointers_char,X\n #_0CF6C0: STA.b $06\n\n #_0CF6C2: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_pointers_prop,X\n #_0CF6C6: STA.b $08\n\n ; -------------------------------------------------------\n\n #_0CF6C8: SEP #$20\n\n #_0CF6CA: TXA\n #_0CF6CB: LSR A\n #_0CF6CC: TAX\n\n #_0CF6CD: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_position_x,X\n #_0CF6D1: STA.b $28\n\n #_0CF6D3: LDA.b #$60\n #_0CF6D5: STA.b $29\n\n #_0CF6D7: LDA.l pool_Dramagahnim_RealizeWhatJustHappened_object_count,X\n #_0CF6DB: TAY\n\n #_0CF6DC: JSR Attract_DrawPreloadedSprite\n\n .skip_draw\n #_0CF6DF: INC.b $51\n\n #_0CF6E1: RTS", + "file": "attract_scenes.asm" + }, + { + "name": "Dramagahnim_IdleGuiltily", + "code": "Dramagahnim_IdleGuiltily:\n{\n #_0CF6E2: JSR Attract_DoTextInDungeonScene\n\n #_0CF6E5: REP #$20\n\n #_0CF6E7: LDA.b $64\n\n #_0CF6E9: SEP #$20\n\n #_0CF6EB: BNE .exit\n\n #_0CF6ED: LDA.b $51\n #_0CF6EF: CMP.b #$1F\n #_0CF6F1: BCS .delay_fade\n\n #_0CF6F3: AND.b #$01\n #_0CF6F5: BNE .delay_fade\n\n #_0CF6F7: DEC.b $13\n\n .delay_fade\n #_0CF6F9: DEC.b $51\n #_0CF6FB: BNE .exit\n\n #_0CF6FD: INC.b $5D\n\n .exit\n #_0CF6FF: RTS", + "file": "attract_scenes.asm" + }, + { + "name": "Attract_SkipToFileSelect", + "code": "Attract_SkipToFileSelect:\n{\n #_0CF700: DEC.b $13\n #_0CF702: BNE .exit\n\n #_0CF704: JSL EnableForceBlank\n\n #_0CF708: LDA.b #$13\n #_0CF70A: STA.w BG1SC\n\n #_0CF70D: LDA.b #$03\n #_0CF70F: STA.w BG2SC\n\n #_0CF712: REP #$20\n\n #_0CF714: JSL Attract_SetUpConclusionHDMA\n\n #_0CF718: REP #$20\n\n #_0CF71A: STZ.w $063A\n #_0CF71D: STZ.w $0638\n\n #_0CF720: STZ.w $0120\n #_0CF723: STZ.w $0124\n\n #_0CF726: STZ.b $EA\n\n #_0CF728: SEP #$20\n\n #_0CF72A: JMP.w FadeMusicAndResetSRAMMirror\n\n.exit\n #_0CF72D: RTL", + "file": "attract_scenes.asm" + }, + { + "name": "AttractOAMData", + "code": "AttractOAMData:\n{\n .king_size\n #_0CF8A7: db $02, $02, $02, $02\n\n .king_offset_x\n #_0CF8AB: db 16, 0, 16, 0\n\n .king_offset_y\n #_0CF8AF: db 16, 16, 0, 0\n\n .king_char\n #_0CF8B3: db $2A, $2A, $0A, $0A\n\n .king_prop\n #_0CF8B7: db $79, $39, $79, $39\n\n ; ==========================================================\n\n .mantle_size\n #_0CF8BB: db $02, $02, $02, $02, $02, $02\n\n .mantle_offset_x\n #_0CF8C1: db 0, 16, 32, 0, 16, 32\n\n .mantle_offset_y\n #_0CF8C7: db 0, 0, 0, 16, 16, 16\n\n .mantle_char\n #_0CF8CD: db $0C, $0E, $0C, $2C, $2E, $2C\n\n .mantle_prop\n #_0CF8D3: db $31, $31, $71, $31, $31, $71\n}\n", + "file": "attract_scenes.asm" + }, + { + "name": "AttractAgahnimOAM", + "code": "AttractAgahnimOAM:\n{\n .size\n #_0CF8D9: db $02, $02, $02, $02, $02, $02\n\n .offset_x\n #_0CF8DF: db 0, 16, 0, 16, 0, 16\n\n .offset_y\n #_0CF8E5: db 12, 12, -12, -12, -4, -4\n\n ; ==========================================================\n\n .char_step3\n #_0CF8EB: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step5\n #_0CF8F1: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step6\n #_0CF8F7: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step4\n #_0CF8FD: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step0\n #_0CF903: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step1\n #_0CF909: db $EC, $EE, $C7, $C7, $D7, $D7\n\n .char_step2\n #_0CF90F: db $EC, $EE, $C7, $C7, $D7, $D7\n\n ; ==========================================================\n\n .prop_step0\n #_0CF915: db $39, $39, $39, $79, $39, $79\n\n .prop_step1\n #_0CF91B: db $39, $39, $39, $79, $39, $79\n\n .prop_step2\n #_0CF921: db $39, $39, $39, $79, $39, $79\n}\n\n; ==========================================================\n", + "file": "attract_scenes.asm" + }, + { + "name": "AttractAltarMaidenOAM", + "code": "AttractAltarMaidenOAM:\n{\n .size\n #_0CF927: db $02, $02\n\n .offset_x\n #_0CF929: db $00, $08\n\n .offset_y\n #_0CF92B: db $00, $00\n\n .char_step0\n #_0CF92D: db $03, $04\n\n .char_step1\n #_0CF92F: db $00, $01\n\n .prop\n #_0CF931: db $3D, $3D\n}\n\n; ==========================================================\n", + "file": "attract_scenes.asm" + }, + { + "name": "AttractAltarMaidenShadowOAM", + "code": "AttractAltarMaidenShadowOAM:\n{\n .size\n #_0CF933: db $02, $02\n\n ; ==========================================================\n\n .offset_x_step4\n #_0CF935: db $00, $08\n\n .offset_x_step3\n #_0CF937: db $00, $06\n\n .offset_x_step2\n #_0CF939: db $00, $04\n\n .offset_x_step1\n #_0CF93B: db $00, $02\n\n .offset_x_step0\n #_0CF93D: db $00, $00\n\n ; ==========================================================\n\n .offset_y\n #_0CF93F: db $00, $00\n\n .char\n #_0CF941: db $6C, $6C\n\n .prop\n #_0CF943: db $38, $38\n}\n\n; ==========================================================\n", + "file": "attract_scenes.asm" + }, + { + "name": "DramagahnimSpellOAM", + "code": "DramagahnimSpellOAM:\n{\n .size\n #_0CF945: db $00, $00, $00, $00\n #_0CF949: db $00, $00, $00, $00\n #_0CF94D: db $00, $00, $02, $02\n #_0CF951: db $02, $02\n\n .offset_x\n #_0CF953: db 0, 28, -2, 30\n #_0CF957: db -2, 30, 0, 28\n #_0CF95B: db 0, 28, 2, 18\n #_0CF95F: db 2, 18\n\n .offset_y\n #_0CF961: db 0, 0, 3, 3\n #_0CF965: db 11, 11, 16, 16\n #_0CF969: db 24, 24, 16, 16\n #_0CF96D: db 32, 32\n\n ; ==========================================================\n\n .char_step0\n #_0CF96F: db $CE, $CE, $26, $26\n #_0CF973: db $36, $36, $26, $26\n #_0CF977: db $36, $36, $20, $20\n #_0CF97B: db $20, $20\n\n .char_step1\n #_0CF97D: db $CE, $CE, $26, $26\n #_0CF981: db $36, $36, $26, $26\n #_0CF985: db $36, $36, $22, $22\n #_0CF989: db $22, $22\n\n ; ==========================================================\n\n .prop_step0\n #_0CF98B: db $35, $35, $75, $35\n #_0CF98F: db $75, $35, $75, $35\n #_0CF993: db $75, $35, $35, $75\n #_0CF997: db $B5, $F5\n\n .prop_step1\n #_0CF999: db $37, $37, $77, $37\n #_0CF99D: db $77, $37, $77, $37\n #_0CF9A1: db $77, $37, $37, $77\n #_0CF9A5: db $B7, $F7\n}\n\n; ==========================================================\n", + "file": "attract_scenes.asm" + }, + { + "name": "speedValuesH", + "code": "speedValuesH:\ndb $20, $10, $18, $28, $30, $38, $40, $FF\ndb $00, $00, $00, $00, $00, $00, $00, $FF\n", + "file": "spike_subtype.asm" + }, + { + "name": "speedValuesV", + "code": "speedValuesV:\ndb $00, $00, $00, $00, $00, $00, $00, $FF\ndb $20, $18, $20, $28, $30, $38, $40, $FF\n", + "file": "spike_subtype.asm" + }, + { + "name": "NewSpikePrep", + "code": "NewSpikePrep:\n{\n PHB : PHK : PLB\n LDA $0E30, X : TAY\n LDA.w speedValuesH, Y : STA.w SprXSpeed, X\n LDA.w speedValuesV, Y : STA.w SprYSpeed, X\n PLB\n RTL", + "file": "spike_subtype.asm" + }, + { + "name": "NewSpikeCollision", + "code": "NewSpikeCollision:\n{\n LDA.b #$04 : STA.w SprTimerA, X\n LDA.w SprXSpeed, X : EOR.b #$FF : INC A : STA.w SprXSpeed, X\n LDA.w SprYSpeed, X : EOR.b #$FF : INC A : STA.w SprYSpeed, X\n LDA.b #$05 : JSL $0DBB7C ; Sound_SetSfx2PanLong\n RTL", + "file": "spike_subtype.asm" + }, + { + "name": "CrumbleFloorTag_Main", + "code": "CrumbleFloorTag_Main:\n{\n LDA.w $02B2 : CMP.b #$05 : BNE +\n RTL", + "file": "crumblefloor_tag.asm" + }, + { + "name": "SpawnFallingTile", + "code": "SpawnFallingTile:\n{\n LDX.b #$1D\n\n .next\n LDA.l $7FF800, X : BNE .skip\n ; GARNISH 03\n LDA.b #$03 : STA.l $7FF800, X\n LDA.w $022A : STA.l $7FF83C, X\n LDA.w $022B : STA.l $7FF878, X\n LDA.w $0228 : CLC : ADC.b #$10 : STA.l $7FF81E, X\n LDA.w $0229 : ADC.b #$00 : STA.l $7FF85A, X\n LDA.b #$1F : STA.l $7FF90E, X\n STA.w $0FB4\n BRA .exit\n .skip\n DEX\n BPL .next\n\n .exit\n RTS", + "file": "crumblefloor_tag.asm" + }, + { + "name": "update_crack_tile", + "code": "update_crack_tile:\n{\n STZ.b $0E\n REP #$30\n JSR replace_crack_pit\n SEP #$30\n LDA.b #$01 : STA.b $14\n REP #$30\n RTS", + "file": "crumblefloor_tag.asm" + }, + { + "name": "update_pit_tile", + "code": "update_pit_tile:\n{\n STZ.b $0E\n REP #$30\n JSR replace_tile_pit\n SEP #$30\n LDA.b #$01 : STA.b $14\n REP #$30\n RTS", + "file": "crumblefloor_tag.asm" + }, + { + "name": "replace_crack_pit", + "code": "replace_crack_pit:\n{\n LDX.w $1000\n LDA.w #$0CCC : STA.w $1006, X\n LDA.w #$0CDC : STA.w $100C, X\n LDA.w #$0CCD : STA.w $1012, X\n LDA.w #$0CDD : STA.w $1018, X\n\n LDX.b $06\n LDA.w #$0CCC : STA.l $7E2000, X\n LDA.w #$0CDC : STA.l $7E2080, X\n LDA.w #$0CCD : STA.l $7E2002, X\n LDA.w #$0CDD : STA.l $7E2082, X\n\n LDA.w #$01E9 : AND.w #$03FF : TAX\n LDA.l $7EFE00, X : AND.w #$00FF\n STA.b $08 : STA.b $09\n\n JMP replace_tile_continue\n}\n", + "file": "crumblefloor_tag.asm" + }, + { + "name": "Module06_UnderworldLoad", + "code": "Module06_UnderworldLoad:\n{\n ; Fixed color RGB: #808000\n LDA.b #$00 : STA.b $9C\n LDA.b #$00 : STA.b $9D\n LDA.b #$00 : STA.b $9E\n LDA.b #$00\n STA.l $7EC005\n STA.l $7EC006\n\n JSL $079A2C ; Link_TuckIntoBed\n}\n\nincsrc \"Dungeons/enemy_damage.asm\"\nprint \"End of enemy_damage.asm \", pc\n\nincsrc \"Dungeons/house_walls.asm\"\n\n; Use of Bank 0x2C begins\nincsrc \"Dungeons/Objects/object_handler.asm\"\nprint \"End of object_handler.asm \", pc\n\n; Tag: Holes8\nincsrc \"Dungeons/together_warp_tag.asm\"\n\n; Custom Tag: Holes7\n; Minish Tag: Holes5\nincsrc \"Dungeons/custom_tag.asm\"\n\n; Tag: Holes0\nincsrc \"Dungeons/floor_puzzle.asm\"\nprint \"End of floor_puzzle.asm \", pc\n\n; Crumble Floor Tag: Holes3\nincsrc \"Dungeons/crumblefloor_tag.asm\"\n\npushpc\n\nincsrc \"Dungeons/spike_subtype.asm\"\n\nincsrc \"Dungeons/attract_scenes.asm\"\nprint \"End of attract_scenes.asm \", pc\n\nincsrc \"Collision/custom_collision.asm\"\n; water_collision.asm moved to Bank $2C after main dungeon code\n\nincsrc \"Collision/CollisionTablesExpanded.asm\"\nincsrc \"Collision/GlobalCollisionTables.asm\"\n\npullpc ; Bank 0x33\n", + "file": "dungeons.asm" + }, + { + "name": "TransferDungeonMapGfx", + "code": "TransferDungeonMapGfx:\n{\n REP #$20\n LDX #$80 : STX $2100\n LDX #$80 : STX $2115\n LDA #$5000 : STA $2116 ; Destination of the DMA in VRAM\n LDA #$1801 : STA $4300 ; DMA Transfer Mode and destination register\n LDA.w #MapGfx : STA $4302\n LDX.b #MapGfx>>16 : STX $4304\n LDA #$2000 : STA $4305\n LDX #$01 : STX $420B\n LDX #$0F : STX $2100\n SEP #$30\n\n LDA.b #$09 : STA.b $14\n RTL", + "file": "dungeons.asm" + }, + { + "name": "MapGfx", + "code": " MapGfx:\n incbin dungeon_maps.bin\n}\n\npushpc\norg $0288FF\nJSL CheckForTingleMaps : NOP\npullpc\n", + "file": "dungeons.asm" + }, + { + "name": "CheckForTingleMaps", + "code": "CheckForTingleMaps:\n{\n LDA.w $040C : CMP.b #$0C : BEQ .check_mush\n CMP.b #$0A : BEQ .check_tail\n CMP.b #$10 : BEQ .check_castle\n CMP.b #$16 : BEQ .check_zora\n CMP.b #$12 : BEQ .check_glacia\n CMP.b #$0E : BEQ .check_goron\n CMP.b #$18 : BEQ .check_ship\n JMP +\n .check_mush\n LDA.l TingleMaps : AND.b #$01 : BEQ +\n JMP ++\n .check_tail\n LDA.l TingleMaps : AND.b #$02 : BEQ +\n JMP ++\n .check_castle\n LDA.l TingleMaps : AND.b #$04 : BEQ +\n JMP ++\n .check_zora\n LDA.l TingleMaps : AND.b #$08 : BEQ +\n JMP ++\n .check_glacia\n LDA.l TingleMaps : AND.b #$10 : BEQ +\n JMP ++\n .check_goron\n LDA.l TingleMaps : AND.b #$20 : BEQ +\n JMP ++\n .check_ship\n LDA.l TingleMaps : AND.b #$40 : BEQ +\n ++\n LDA.b #$01 : RTL", + "file": "dungeons.asm" + }, + { + "name": "NewTagRoutine", + "code": "NewTagRoutine:\n{\n ; check under link feet what tile he is standing on\n ; save somewhere in ram last tile we were on so it doesn't turn it back off\n ; kill room tag\n LDA.b $20 : CLC : ADC #$10 : AND.b #$F0 : STA.w $0224 ; y\n LDA.b $22 : CLC : ADC #$08 : AND.b #$F0 : STA.w $0225 ; x\n\n LDA.w $0224 : CMP.w $0226 : BNE .different_tile\n LDA.w $0225 : CMP.w $0227 : BNE .different_tile\n JMP .same_tile\n .different_tile\n\n ; do code here for tile code\n REP #$30\n\n LDA.w $22 : CLC : ADC.w #$0008 : AND.w #$01F0 : LSR #$02 : STA.b $00\n LDA.w $20 : CLC : ADC.w #$0010 : AND.w #$01F0 : ASL #$04 : CLC : ADC.b $00 : STA.b $06\n TAX\n\n LDA.l $7E2000, X : CMP.w #$0DED : BNE +\n JSR update_star_tile\n JSR SearchForEmptyStar\n BRA .done_update\n +\n LDA.l $7E2000, X : CMP.w #$0DEE : BNE +\n ;JSR SearchToRedStar\n JSR update_red_star_tile\n SEP #$30\n STZ.b $AE ; kill room tag!\n ;JSR update_empty_tile\n ;JSR SearchForEmptyStar\n +\n\n .done_update\n SEP #$30\n\n .same_tile\n\n LDA.w $0224 : STA.w $0226 ; Last Y\n LDA.w $0225 : STA.w $0227 ; Last X\n\n RTL", + "file": "floor_puzzle.asm" + }, + { + "name": "update_empty_tile", + "code": "update_empty_tile:\n{\n STZ.b $0E\n REP #$30\n JSR replace_tile_empty\n SEP #$30\n LDA.b #$01 : STA.b $14\n REP #$30\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "update_star_tile", + "code": "update_star_tile:\n{\n STZ.b $0E\n REP #$30\n JSR replace_tile_star\n SEP #$30\n LDA.b #$01 : STA.b $14\n LDA.b #$0C : STA.w $012F\n REP #$30\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "update_red_star_tile", + "code": "update_red_star_tile:\n{\n STZ.b $0E\n REP #$30\n JSR replace_red_tile_star\n SEP #$30\n LDA.b #$01 : STA.b $14\n LDA.b #$3C : STA.w $012E\n REP #$30\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "replace_red_tile_star", + "code": "replace_red_tile_star:\n{\n LDX.w $1000\n LDA.w #$19EE : STA.w $1006, X\n LDA.w #$99EE : STA.w $100C, X\n LDA.w #$59EE : STA.w $1012, X\n LDA.w #$D9EE : STA.w $1018, X\n\n LDX.b $06\n LDA.w #$19EE : STA.l $7E2000, X\n LDA.w #$99EE : STA.l $7E2080, X\n LDA.w #$59EE : STA.l $7E2002, X\n LDA.w #$D9EE : STA.l $7E2082, X\n AND.w #$03FF : TAX\n LDA.l $7EFE00,X : AND.w #$00FF\n STA.b $08 : STA.b $09\n\n JMP replace_tile_continue\n}\n\n", + "file": "floor_puzzle.asm" + }, + { + "name": "replace_tile_star", + "code": "replace_tile_star:\n{\n LDX.w $1000\n\n LDA.w #$0DEE\n STA.w $1006,X\n\n LDA.w #$8DEE\n STA.w $100C,X\n\n LDA.w #$4DEE\n STA.w $1012,X\n\n LDA.w #$CDEE\n STA.w $1018,X\n\n LDX.b $06\n\n LDA.w #$0DEE : STA.l $7E2000, X\n LDA.w #$8DEE : STA.l $7E2080, X\n LDA.w #$4DEE : STA.l $7E2002, X\n LDA.w #$CDEE : STA.l $7E2082, X\n\n AND.w #$03FF\n TAX\n\n LDA.l $7EFE00,X\n AND.w #$00FF\n STA.b $08\n STA.b $09\n\n JMP replace_tile_continue\n}\n", + "file": "floor_puzzle.asm" + }, + { + "name": "replace_tile_empty", + "code": "replace_tile_empty:\n{\n LDX.w $1000\n\n LDA.w #$0DED\n STA.w $1006,X\n\n LDA.w #$8DED\n STA.w $100C,X\n\n LDA.w #$4DED\n STA.w $1012,X\n\n LDA.w #$CDED\n STA.w $1018,X\n\n LDX.b $06\n LDA.w #$0DED : STA.l $7E2000, X\n LDA.w #$8DED : STA.l $7E2080, X\n LDA.w #$4DED : STA.l $7E2002, X\n LDA.w #$CDED : STA.l $7E2082, X\n\n AND.w #$03FF\n TAX\n\n LDA.l $7EFE00,X\n AND.w #$00FF\n STA.b $08\n STA.b $09\n", + "file": "floor_puzzle.asm" + }, + { + "name": "replace_tile_continue", + "code": " replace_tile_continue:\n\n LDX.w $1000\n\n LDA.w #$0000\n JSR draw_one_corner\n STA.w $1002,X\n\n LDA.w #$0080\n JSR draw_one_corner\n STA.w $1008,X\n\n LDA.w #$0002\n JSR draw_one_corner\n STA.w $100E,X\n\n LDA.w #$0082\n JSR draw_one_corner\n STA.w $1014,X\n\n LDA.w #$0100\n STA.w $1004,X\n STA.w $100A,X\n STA.w $1010,X\n STA.w $1016,X\n\n LDA.w #$FFFF\n STA.w $101A,X\n\n TXA\n CLC\n ADC.w #$0018\n STA.w $1000\n\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "draw_one_corner", + "code": "draw_one_corner:\n{\n CLC\n ADC.b $06\n STA.b $0E\n\n AND.w #$0040\n\n LSR A\n LSR A\n LSR A\n LSR A\n\n XBA\n STA.b $08\n\n LDA.b $0E\n AND.w #$303F\n LSR A\n ORA.b $08\n STA.b $08\n\n LDA.b $0E\n AND.w #$0F80\n LSR A\n LSR A\n ORA.b $08\n XBA\n\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "SearchForEmptyStar", + "code": "SearchForEmptyStar:\n{\n LDX.w #$1FFE\n\n --\n LDA.l $7E2000, X : CMP.w #$0DED : BEQ .foundEmptyTile\n DEX : DEX\n BPL --\n ; all tiles were on\n SEP #$30\n LDA.w $0468 : BEQ +\n STZ.w $0468\n STZ.w $068E\n STZ.w $0690\n LDA.b #$05 : STA.b $11\n LDA.b #$25 : STA $012F\n STZ.b $AE ; kill room tag!\n LDA.b #$01 : STA $0466\n +\n BRA +\n .foundEmptyTile\n SEP #$30\n LDA.w $0468 : BNE +\n INC.w $0468\n STZ.w $068E\n STZ.w $0690\n LDA.b #$05 : STA.b $11\n +\n\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "SearchToRedStar", + "code": "SearchToRedStar:\n{\n LDX.w #$1FFE\n\n --\n LDA.l $7E2000, X : CMP.w #$0DEE : BEQ .foundStarTile\n DEX : DEX\n BPL --\n\n SEP #$30\n STZ.b $AE ; kill room tag!\n\n RTS", + "file": "floor_puzzle.asm" + }, + { + "name": "WarpingSwitchLong", + "code": "WarpingSwitchLong:\nPHB : PHK : PLB\n\nJSR WarpingSwitchLocal\n\nPLB\nRTL", + "file": "warpswitch.asm" + }, + { + "name": "WarpingSwitchLocal", + "code": "WarpingSwitchLocal:\nLDA.w $0F50,X\nAND.b #$F1\nSTA.w $0F50,X\n\nLDA.w SprSubtype, X : LSR : TAY\nLDA.w .Switch_Palette, Y\nORA.w $0F50, X\nSTA.w $0F50, X\n\nJSL Sprite_OAM_AllocateDeferToPlayer\nJSL $06DBF0 ;SpriteDraw_SingleLarge\n\n\nLDA.w SprSubtype, X; Load the Subtype\nJSL JumpTableLocal; Goto the SprAction we are currently in\ndw RedSwitch\ndw RedDestination\ndw BlueSwitch\ndw BlueDestination\ndw GreenSwitch\ndw GreenDestination\n\n.Switch_Palette\ndb $02, $04, $08\n", + "file": "warpswitch.asm" + }, + { + "name": "RedDestination", + "code": "RedDestination:", + "file": "warpswitch.asm" + }, + { + "name": "BlueDestination", + "code": "BlueDestination:", + "file": "warpswitch.asm" + }, + { + "name": "GreenDestination", + "code": "GreenDestination:\nRTS", + "file": "warpswitch.asm" + }, + { + "name": "RedSwitch", + "code": "RedSwitch:", + "file": "warpswitch.asm" + }, + { + "name": "BlueSwitch", + "code": "BlueSwitch:", + "file": "warpswitch.asm" + }, + { + "name": "GreenSwitch", + "code": "GreenSwitch:", + "file": "warpswitch.asm" + }, + { + "name": "Switches", + "code": "Switches:\nJSL Sprite_CheckDamageFromPlayer : BCC .noDamage\n; Check what switch got damaged\nLDA.w SprSubtype, X : INC : STA $00 ; store next subtype\n;search for a crystal switch with that subtype\nLDY.b #$0F\n--\nLDA.w SprType, Y : CMP.b #$1E : BNE .notCrystalSwitch\nLDA.w SprSubtype, Y : CMP.b $00 : BNE .notCrystalSwitch ; is it the subtype we are looking for?\nBRA .dowarp\n.notCrystalSwitch\nDEY : BPL --\nRTS ; didnt find any just end the code...", + "file": "warpswitch.asm" + }, + { + "name": "draw_sprites", + "code": "draw_sprites:\nSEP #$20\n\nLDX.b #$02\n\n.next_entity\nPHX\n\nREP #$20\n\nLDA.l .pointer_size, X : STA.b $2D\nLDA.l .pointer_offset_x, X : STA.b $02\nLDA.l .pointer_offset_y, X : STA.b $04\nLDA.l .pointer_char, X : STA.b $06\nLDA.l .pointer_prop, X : STA.b $08\n\nTXA\nAND.w #$00FF\nLSR A\nTAX\n\nLDA.l .offset_y, X\nAND.w #$00FF\nSEC\nSBC.w $0122\nSTA.b $00\n\nCMP.w #$FFE0\n\n#_0CF244: SEP #$20\nBMI .off_screen\n\nLDA.l .offset_x, X\nSTA.b $28\n\nLDA.b $00\nSTA.b $29\n\nLDA.l .oam_count, X\nTAY\n\nJSR $0CF9B5 ; Attract_DrawPreloadedSprite\n\n.off_screen\nPLX\n\nDEX\nDEX\nBPL .next_entity\n\nRTL", + "file": "intro_cutscene.asm" + }, + { + "name": "ExpandedObject", + "code": " ExpandedObject:\n JSL CustomObjectHandler\n RTS", + "file": "object_handler.asm" + }, + { + "name": "ExpandedObject2", + "code": " ExpandedObject2:\n JSL CustomObjectHandler2\n RTS", + "file": "object_handler.asm" + }, + { + "name": "SpriteBodyObjects", + "code": " SpriteBodyObjects:\n JSL SpriteObjectsDraw\n RTS", + "file": "object_handler.asm" + }, + { + "name": "HeavyPot", + "code": " HeavyPot:\n JSL InitHeavyPot\n JMP DrawBigGraySegment_hook\n\nassert pc() <= $01B560\n\norg $2C8000\n; TODO: Fix the graphics used for the heavy pot in game", + "file": "object_handler.asm" + }, + { + "name": "InitHeavyPot", + "code": "InitHeavyPot:\n{\n LDA.w #$1010\n PHX\n LDX.w $042C ; MANIPINDEX\n LDA.w #$1111 : STA $0500, X ; M16BUFF500\n\n ; Store this object's position in the object buffer to $0520, X\n LDA $BA : STA $0520, X\n\n ; Store it's tilemap position.\n TYA : STA $0540, X\n RTL", + "file": "object_handler.asm" + }, + { + "name": "CustomObjectHandler", + "code": "CustomObjectHandler:\n{\n PHB : PHK : PLB\n PHX\n\n STZ $03 ; 03 will be used to store the object ID for custom config\n LDA $00 : PHA\n LDA $02 : PHA\n ; $00 Will be used for tile count and tile to skip\n LDA $B2 : ASL #2 : ORA $B4\n\n ;get the offset for the object data based on the object height\n ASL : TAX\n LDA .ObjOffset, X\n TAX\n\n .lineLoop\n LDA .ObjData, X : BNE .continue\n ;break\n BRA .Done\n .continue\n PHY ; Keep current position in the buffer\n\n STA $00 ; we save the tile count + tile to skip\n\n -- ;Tiles Loop\n INX : INX\n ; Vhopppcc cccccccc\n LDA .ObjData, X : BEQ +\n STA [$BF], Y\n +\n\n INY : INY\n LDA $00 : DEC : STA $00 : AND #$001F : BNE +\n LDA $00 : XBA : AND #$00FF : STA $00\n PLA ;Pull back position\n CLC : ADC $00 : TAY\n INX : INX\n BRA .lineLoop\n +\n\n BRA --\n\n .Done\n\n PLA : STA $02\n PLA : STA $00 ;Not sure if needed\n\n PLX\n PLB\n RTL", + "file": "object_handler.asm" + }, + { + "name": "SpriteObjectsDraw", + "code": "SpriteObjectsDraw:\n{\n PHB : PHK : PLB\n PHX\n\n STZ $03 ; 03 will be used to store the object ID for custom config\n LDA $00 : PHA\n LDA $02 : PHA\n ; $00 Will be used for tile count and tile to skip\n LDA $B2 : ASL #2 : ORA $B4\n\n ;get the offset for the object data based on the object height\n ASL : TAX\n LDA .ObjOffset, X\n TAX\n\n .lineLoop\n LDA .ObjData, X : BNE .continue\n ;break\n BRA .Done\n .continue\n PHY ; Keep current position in the buffer\n\n STA $00 ; we save the tile count + tile to skip\n\n -- ;Tiles Loop\n INX : INX\n ; Vhopppcc cccccccc\n LDA .ObjData, X : BEQ +\n ORA.w #$0300\n STA [$BF], Y\n +\n\n INY : INY\n LDA $00 : DEC : STA $00 : AND #$001F : BNE +\n LDA $00 : XBA : AND #$00FF : STA $00\n PLA ;Pull back position\n CLC : ADC $00 : TAY\n INX : INX\n BRA .lineLoop\n +\n\n BRA --\n\n .Done\n\n PLA : STA $02\n PLA : STA $00 ;Not sure if needed\n\n PLX\n PLB\n RTL", + "file": "object_handler.asm" + }, + { + "name": "CustomObjectHandler2", + "code": "CustomObjectHandler2:\n{\n PHB : PHK : PLB\n PHX\n\n STZ $03 ; 03 will be used to store the object ID for custom config\n LDA $00 : PHA\n LDA $02 : PHA\n ; $00 Will be used for tile count and tile to skip\n LDA $B2 : ASL #2 : ORA $B4\n\n ;get the offset for the object data based on the object height\n ASL : TAX\n LDA .ObjOffset, X\n TAX\n\n .lineLoop\n LDA .ObjData, X : BNE .continue\n ;break\n BRA .Done\n .continue\n PHY ; Keep current position in the buffer\n\n STA $00 ; we save the tile count + tile to skip\n\n -- ;Tiles Loop\n INX : INX\n ; Vhopppcc cccccccc\n LDA .ObjData, X : BEQ +\n STA [$BF], Y\n +\n\n INY : INY\n LDA $00 : DEC : STA $00 : AND #$001F : BNE +\n LDA $00 : XBA : AND #$00FF : STA $00\n PLA ;Pull back position\n CLC : ADC $00 : TAY\n INX : INX\n BRA .lineLoop\n +\n\n BRA --\n\n .Done\n\n PLA : STA $02\n PLA : STA $00 ;Not sure if needed\n\n PLX\n PLB\n RTL", + "file": "object_handler.asm" + }, + { + "name": "WaterGate_FillComplete_Hook", + "code": "WaterGate_FillComplete_Hook:\n{\n ; Execute original code that was replaced by JML\n STZ.b $1E\n STZ.b $1F\n JSL IrisSpotlight_ResetTable\n\n ; Apply collision updates for water-filled area\n PHB : PHK : PLB\n\n SEP #$20\n LDA.b $A0\n\n ; Room 0x27 - Zora Temple water gate\n CMP.b #$27 : BNE .check_room_25\n REP #$20\n LDA.w #WaterGate_Room27_Data : STA.b $00\n SEP #$20\n LDA.b #WaterGate_Room27_Data>>16 : STA.b $02\n JSR WaterGate_ApplyCollision\n JSR WaterGate_SetPersistenceFlag\n BRA .done\n\n .check_room_25\n ; Room 0x25 - Zora Temple water grate\n CMP.b #$25 : BNE .done\n REP #$20\n LDA.w #WaterGate_Room25_Data : STA.b $00\n SEP #$20\n LDA.b #WaterGate_Room25_Data>>16 : STA.b $02\n JSR WaterGate_ApplyCollision\n JSR WaterGate_SetPersistenceFlag\n\n .done\n SEP #$30\n PLB\n\n ; Return to the instruction after the replaced code (RTL at $01F3DA)", + "file": "water_collision.asm" + }, + { + "name": "WaterGate_ApplyCollision", + "code": "WaterGate_ApplyCollision:\n{\n PHB\n PEA.w $7F7F : PLB : PLB ; Set bank to $7F for collision writes\n\n SEP #$20\n LDA.b [$00] : STA.b $04 ; Tile count\n STZ.b $05 ; Clear high byte for 16-bit decrement\n BEQ .done\n\n REP #$30 ; 16-bit A and X/Y\n INC.b $00 ; Advance past tile count byte\n\n LDY.w #$0000\n\n .next_tile\n LDA.b [$00], Y : TAX\n INY : INY\n\n ; Write deep water collision (type $08) to both layers\n SEP #$20 ; 8-bit A for collision value\n LDA.b #$08 : STA.w $2000, X ; COLMAPA\n STA.w $3000, X ; COLMAPB (layer 2)\n REP #$20 ; 16-bit A for offset reads\n\n DEC.b $04\n BNE .next_tile\n\n .done\n SEP #$30 ; Restore 8-bit A and X/Y\n PLB\n RTS", + "file": "water_collision.asm" + }, + { + "name": "WaterGate_SetPersistenceFlag", + "code": "WaterGate_SetPersistenceFlag:\n{\n SEP #$20\n LDA.b $A0\n\n ; Room 0x27 - Zora Temple water gate\n CMP.b #$27 : BNE +\n LDA.l WaterGateStates : ORA.b #$01 : STA.l WaterGateStates\n RTS", + "file": "water_collision.asm" + }, + { + "name": "WaterGate_CheckRoomEntry", + "code": "WaterGate_CheckRoomEntry:\n{\n PHB : PHK : PLB\n SEP #$20\n\n LDA.b $A0\n\n ; Room 0x27 - Zora Temple water gate\n CMP.b #$27 : BNE .check_room_25\n LDA.l WaterGateStates : AND.b #$01 : BEQ .no_persistence\n ; Water was filled before - restore collision\n LDA.b #$02 : STA.w $0403 ; Set door flag to skip animation\n REP #$30\n LDA.w #WaterGate_Room27_Data : STA.b $00\n LDA.w #WaterGate_Room27_Data>>16 : STA.b $02\n JSR WaterGate_ApplyCollision\n SEP #$30\n BRA .done\n\n .check_room_25\n ; Room 0x25 - Zora Temple water grate\n CMP.b #$25 : BNE .no_persistence\n LDA.l WaterGateStates : AND.b #$02 : BEQ .no_persistence\n ; Water grate was opened - restore collision\n LDA.b #$02 : STA.w $0403\n REP #$30\n LDA.w #WaterGate_Room25_Data : STA.b $00\n LDA.w #WaterGate_Room25_Data>>16 : STA.b $02\n JSR WaterGate_ApplyCollision\n SEP #$30\n\n .no_persistence\n .done\n PLB\n RTL", + "file": "water_collision.asm" + }, + { + "name": "WaterGateCollisionTable", + "code": "WaterGateCollisionTable:\n{\n ; Rooms 0x00-0x24 (empty) - 37 rooms * 4 bytes each = 148 bytes\n fillbyte $00\n fill 148\n\n ; Room 0x25 - Zora Temple water grate room\n dw WaterGate_Room25_Data\n dw WaterGate_Room25_Data>>16\n\n ; Room 0x26 (empty)\n dw $0000, $0000\n\n ; Room 0x27 - Zora Temple water gate room\n dw WaterGate_Room27_Data\n dw WaterGate_Room27_Data>>16\n}\n\n; =========================================================\n; Room 0x27 - Zora Temple Water Gate Room\n; =========================================================\n; Collision offsets for swimming area after water fills.\n; Full coverage: Y=38-40 horizontal (X=5-57), plus vertical channels.\n; Formula: offset = (Y * 64) + X\n", + "file": "water_collision.asm" + }, + { + "name": "WaterGate_Room27_Data", + "code": "WaterGate_Room27_Data:\n{\n ; Tile count: 8 + 7 + 53*3 = 174\n db 174\n\n ; Vertical channel (Y=12, X=40-47) - 8 tiles\n dw $0328, $0329, $032A, $032B, $032C, $032D, $032E, $032F\n\n ; Vertical channel (Y=28, X=40-46) - 7 tiles\n dw $0728, $0729, $072A, $072B, $072C, $072D, $072E\n\n ; Y=38 row (X=5-57) - 53 tiles\n dw $0985, $0986, $0987, $0988, $0989, $098A, $098B, $098C\n dw $098D, $098E, $098F, $0990, $0991, $0992, $0993, $0994\n dw $0995, $0996, $0997, $0998, $0999, $099A, $099B, $099C\n dw $099D, $099E, $099F, $09A0, $09A1, $09A2, $09A3, $09A4\n dw $09A5, $09A6, $09A7, $09A8, $09A9, $09AA, $09AB, $09AC\n dw $09AD, $09AE, $09AF, $09B0, $09B1, $09B2, $09B3, $09B4\n dw $09B5, $09B6, $09B7, $09B8, $09B9\n\n ; Y=39 row (X=5-57) - 53 tiles\n dw $09C5, $09C6, $09C7, $09C8, $09C9, $09CA, $09CB, $09CC\n dw $09CD, $09CE, $09CF, $09D0, $09D1, $09D2, $09D3, $09D4\n dw $09D5, $09D6, $09D7, $09D8, $09D9, $09DA, $09DB, $09DC\n dw $09DD, $09DE, $09DF, $09E0, $09E1, $09E2, $09E3, $09E4\n dw $09E5, $09E6, $09E7, $09E8, $09E9, $09EA, $09EB, $09EC\n dw $09ED, $09EE, $09EF, $09F0, $09F1, $09F2, $09F3, $09F4\n dw $09F5, $09F6, $09F7, $09F8, $09F9\n\n ; Y=40 row (X=5-57) - 53 tiles\n dw $0A05, $0A06, $0A07, $0A08, $0A09, $0A0A, $0A0B, $0A0C\n dw $0A0D, $0A0E, $0A0F, $0A10, $0A11, $0A12, $0A13, $0A14\n dw $0A15, $0A16, $0A17, $0A18, $0A19, $0A1A, $0A1B, $0A1C\n dw $0A1D, $0A1E, $0A1F, $0A20, $0A21, $0A22, $0A23, $0A24\n dw $0A25, $0A26, $0A27, $0A28, $0A29, $0A2A, $0A2B, $0A2C\n dw $0A2D, $0A2E, $0A2F, $0A30, $0A31, $0A32, $0A33, $0A34\n dw $0A35, $0A36, $0A37, $0A38, $0A39\n}\n\n; =========================================================\n; Room 0x25 - Zora Temple Water Grate Room\n; =========================================================\n; Placeholder - needs actual collision offsets for this room\n", + "file": "water_collision.asm" + }, + { + "name": "CustomRoomCollision_easyout", + "code": "CustomRoomCollision_easyout:\n{\n RTL", + "file": "custom_collision.asm" + }, + { + "name": "CustomRoomCollision", + "code": "CustomRoomCollision:\n{\n LDA $B4 : CMP.w #$2000 : BNE .notEndOfTable\n INC $0200\n .notEndOfTable\n\n REP #$30\n LDA.b $A0 : ASL : ADC.b $A0 : TAX\n LDA.l RoomPointer, X : BEQ .easyout\n\n STA.b $08\n\n LDA.l RoomPointer+1, X : STA.b $09\n\n PHB\n\n PEA.w $7F7F\n PLB\n PLB\n\n LDY.w #$0000\n\n .read_next\n LDA.b [$08],Y\n INY\n INY\n CMP.w #$F0F0\n BCC .new_rectangle\n\n .single_tiles\n CMP.w #$FFFF\n BEQ .done\n\n TAX\n\n SEP #$20\n LDA.b [$08],Y\n STA.w $2000,X\n REP #$20\n INY\n LDA.b [$08],Y\n INY\n INY\n BRA .single_tiles\n\n .done\n PLB\n RTL", + "file": "custom_collision.asm" + }, + { + "name": "Dungeon_LoadCustomTileAttr", + "code": "Dungeon_LoadCustomTileAttr:\n{\n ; Loads tile attributes that are specific to a tileset type.\n ; The group loaded is dependent on the value of $0AA2.\n PHB : PHK : PLB\n\n REP #$30\n\n LDA $0AA2 : AND.w #$00FF : ASL A : TAX\n\n LDA group_offsets, X : TAY\n\n LDX.w #$0000\n\n.load_loop\n\n LDA.w group00, Y : STA.l $7EFF40, X\t\t;\t1st block\n LDA.w group00+$40, Y : STA.l $7EFF80, X\t;\t2nd block\n\n INY #2\n\n INX #2 : CPX.w #$0040 : BNE .load_loop\n\n SEP #$30\n\n PLB\n\n RTL", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group_offsets", + "code": "group_offsets:\n\n; 00 01 02 03 04 05 06 07\n dw group00-offs, group01-offs, group02-offs, group03-offs, group04-offs, group05-offs, group06-offs, group07-offs\n; 08 09 10 11 12 13 14 15\n dw group08-offs, group09-offs, group0A-offs, group0B-offs, group0C-offs, group0D-offs, group0E-offs, group0F-offs\n; 16 17 18 19 20 21 22 23\n dw group10-offs, group11-offs, group12-offs, group13-offs, group14-offs, group15-offs, group16-offs, group17-offs\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "offs", + "code": "offs:", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group00", + "code": "group00:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n; Zora Temple", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group01", + "code": "group01:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n db $01, $01, $01, $00, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $01, $01, $01, $08, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n db $08, $08, $02, $01, $01, $09, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group02", + "code": "group02:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group03", + "code": "group03:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n\n ; Goron Mines", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group04", + "code": "group04:\n{\n ;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n ;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n ; -----------------------------------------------------------------------------------\n db $00, $00, $02, $02, $B6, $BD, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n db $00, $00, $02, $02, $00, $00, $00, $00, $BB, $BB, $02, $01, $01, $01, $01, $01\n db $00, $00, $00, $00, $00, $00, $00, $00, $BB, $BB, $02, $02, $02, $02, $02, $02\n db $00, $00, $22, $00, $B1, $B1, $BC, $BC, $BC, $BC, $02, $02, $02, $02, $02, $02\n\n db $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n}\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group05", + "code": "group05:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group06", + "code": "group06:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n\n; Mushroom Grotto", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group07", + "code": "group07:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $65, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $65, $65, $65, $65, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $65, $02, $65, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group08", + "code": "group08:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $09, $09, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $00, $00\n\n\tdb $01, $01, $01, $00, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $08, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $08, $08, $02, $01, $01, $09, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group09", + "code": "group09:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0A", + "code": "group0A:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n\n; Glacia Estate", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0B", + "code": "group0B:\n{\n ;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n ;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n ; -----------------------------------------------------------------------------------\n db $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n db $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n db $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $00, $00\n\n db $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $02, $02, $00, $0F, $00, $00, $00, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $01, $02, $0E, $08, $08, $08, $08, $0E, $0E, $0E, $0E, $00, $00 ; Animated Tiles\n}\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0C", + "code": "group0C:\n{\n ;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n ;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n ; -----------------------------------------------------------------------------------\n db $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n db $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $02, $02, $01, $02, $02, $02, $02, $02, $02, $02\n db $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $00, $00\n\n db $01, $01, $01, $01, $02, $02, $02, $0D, $0D, $02, $02, $02, $02, $02, $02, $02\n db $01, $01, $01, $01, $02, $02, $02, $0D, $0D, $02, $02, $02, $02, $02, $02, $02\n db $02, $02, $02, $02, $02, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n db $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n}\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0D", + "code": "group0D:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $B2, $B4, $B1, $BB, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $B3, $B5, $B0, $B6, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $00, $00\n\n\tdb $B1, $B2, $B3, $B4, $B5, $B1, $B0, $02, $BE, $02, $02, $02, $02, $02, $B7, $B8\n\tdb $B0, $B2, $B3, $B4, $B5, $02, $B0, $02, $00, $02, $B1, $BE, $00, $BD, $B9, $BA\n\tdb $02, $02, $B1, $B0, $02, $00, $00, $00, $BD, $BC, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $00, $00, $00, $0E, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0E", + "code": "group0E:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $00, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $00, $00, $01, $01, $01, $01\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $0E, $0E, $0E, $0E, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group0F", + "code": "group0F:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group10", + "code": "group10:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group11", + "code": "group11:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group12", + "code": "group12:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group13", + "code": "group13:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $00, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $00, $00, $01, $01, $01, $01\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $0E, $0E, $0E, $0E, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group14", + "code": "group14:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02\n\tdb $00, $00, $22, $00, $00, $00, $00, $00, $00, $00, $02, $02, $00, $00, $02, $00\n\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $02\n\tdb $6B, $6A, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $68, $69 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group15", + "code": "group15:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "group16", + "code": "group16:\n\n;\t\t00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F\n;\t\t 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16\n; -----------------------------------------------------------------------------------\n\tdb $02, $02, $02, $02, $02, $02, $6E, $6F, $01, $6C, $02, $01, $01, $01, $01, $01\n\tdb $02, $02, $02, $02, $02, $02, $00, $00, $00, $00, $02, $01, $01, $01, $01, $01\n\tdb $01, $01, $01, $01, $01, $01, $6E, $6F, $01, $6C, $02, $02, $02, $02, $01, $02\n\tdb $00, $00, $22, $00, $00, $00, $02, $02, $02, $02, $02, $02, $00, $00, $01, $00\n\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $01, $01, $01, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02, $02, $02, $02\n\tdb $02, $02, $02, $02, $18, $00, $00, $00, $00, $00, $02, $02, $01, $01, $01, $01\n\tdb $02, $02, $02, $01, $02, $02, $08, $08, $08, $08, $09, $09, $09, $09, $09, $09 ; Animated Tiles\n\n", + "file": "CollisionTablesExpanded.asm" + }, + { + "name": "WagonSprite_Long", + "code": "WagonSprite_Long:\n{\n\tPHB : PHK : PLB\n\tJSR WagonSprite\n\tPLB : RTL", + "file": "WagonCart.asm" + }, + { + "name": "WagonSprite", + "code": "WagonSprite:\n{\n\n\tLDA $0D80, X ;Main AI Control\n\tJSL UseImplicitRegIndexedLocalJumpTable\n\tdw WagonSpriteSpawn ;Once it get resetted\n\tdw WagonSpriteMove ;While it is moving\n\tdw WagonSpriteWait ;While we're waiting for it to respawn\n}", + "file": "WagonCart.asm" + }, + { + "name": "WagonSpriteSpawn", + "code": "WagonSpriteSpawn:\n{\n\tLDA !wagonrespawnTime : STA $0EB0, X ;Set Spawn Time to Nbr of seconds we'll have to wait in \"WagonSpriteWait\"\n\tLDA !wagonDamage : STA $0CD2, X\n\tINC $0D80, X ;go to next AI (WagonSpriteMove) once it done here\n\n\tPHX ;save sprite index\n\tLDA $040A : TAX : AND #$07 : ASL : STA $01\n\tLDA $02A844, X ;Large map array\n\tPLX\n\n\n\tCMP #$01 ; compare that value to set carry flag if it's non 0\n\tLDA $01 ; load the value\n\tINC : INC ; do the normal increment\n\n\tBCC .smallmap ; if it's a small map, then carry was set, and we skip ahead\n\tINC : INC ; otherwise, we do those 2 extra INC\n\n.smallmap\n\tSTA $0D30, X\n\n\t;$01 = left side\n\t;$0D30 = right side\n\t;$0DA0 = returning side\n\n\tLDA !wagonDirection\n\tBNE .notrandom\n\n\tJSL GetRandomInt : AND #$01 ; get 0 or 1\n\tINC ; increment the result to get 1 or 2\n\n.notrandom\n\tCMP #$01\n\tBNE .goleft\n\n.goright\n\tLDA.b #!wagonSpeed : STA $0D50, X\n\n\tLDA $0D30, X : STA $0DA0, X\n\tLDA $01 : STA $0D30, X\n\tSTZ $0D10, X\n\tRTS", + "file": "WagonCart.asm" + }, + { + "name": "WagonSpriteMove", + "code": "WagonSpriteMove:\n{\n\tJSL Sprite_Move\n\tJSR WagonSpriteDraw\n\tJSL Sprite_CheckDamageToPlayer\n\n\tLDA $0D30, X : CMP $0DA0, X\n\n\tBIT $0D50, X : BPL .goingRight ; set the Minus flag for this, no need for AND #$80\n.goingLeft ; it's okay to use a label for something that's never called\n\tBCS .continue\n\tLDA $0D10, X : CMP #$F0 : BCS .continue\n\tLDA.b #60 : STA $0DF0, X ; why does only going left wait?\n\n.move ; share this between both\n\tINC $0D80, X\n\n.continue\n\tRTS", + "file": "WagonCart.asm" + }, + { + "name": "WagonSpriteWait", + "code": "WagonSpriteWait:\n{\n\tLDA $0DF0, X : BNE .continue\n\t\tDEC $0EB0, X : BEQ .respawn\n\t\tLDA #60 : STA $0DF0, X\n\t.continue\n\tRTS", + "file": "WagonCart.asm" + }, + { + "name": "WagonSpriteDraw", + "code": "WagonSpriteDraw:\n{\n\tJSL Sprite_PrepOamCoord\n\n ;JSL OAM_AllocateFromRegionA\n STZ $06\n LDY.b #$00\n PHX\n\n ;number of tile readed in the array to draw\n LDX.b #$05\n\n.next_subsprite ;Loop through all tiles\n\n PHX\n\n TXA : !ADD $06 : PHA : ASL A : TAX\n .same_palette\n\n REP #$21\n LDA $00 : ADC .x_offsets, X : STA ($90), Y\n\n AND.w #$0100 : STA $0E\n\n LDA $02 : !ADD .y_offsets, X : INY : STA ($90), Y\n\n !ADD #$0010 : CMP.w #$0100 : SEP #$20 : BCC .on_screen_y\n\n LDA.b #$F0 : STA ($90), Y\n\n.on_screen_y\n PLX\n\n ;Set tiles Properties, id\n LDA .chr, X : INY : STA ($90), Y\n\n LDA .properties, X : INY : STA ($90), Y\n CPX #$03 : BCC .noextraValue\n LDA $1A : AND #$08 : BEQ .noMirror\n LDA .properties, X : ORA #$40 : STA ($90), Y\n .noMirror\n .noextraValue\n\n PHY\n\n TYA : LSR #2 : TAY\n\n LDA .sizes, X : ORA $0F : STA ($92), Y\n\n PLY : INY\n\n PLX : DEX : BPL .next_subsprite\n\n PLX\n RTS", + "file": "WagonCart.asm" + }, + { + "name": "Sprite_MoveHoriz", + "code": "Sprite_MoveHoriz:\n{\n\tTXA : !ADD #$10 : TAX\n\n\tJSL Sprite_MoveVert\n\n\tLDX $0FA0\n\n\tRTL", + "file": "WagonCart.asm" + }, + { + "name": "Sprite_MoveVert", + "code": "Sprite_MoveVert:\n{\n\tLDA $0D40, X : BEQ .no_velocity\n\n\tASL #4 : !ADD $0D60, X : STA $0D60, X\n\n\tLDA $0D40, X : PHP : LSR #4 : LDY.b #$00 : PLP : BPL .positive\n\n\tORA.b #$F0\n\n\tDEY\n\n.positive\n\n\t\t ADC $0D00, X : STA $0D00, X\n\tTYA : ADC $0D20, X : STA $0D20, X\n\n.no_velocity\n\n\tRTL", + "file": "WagonCart.asm" + }, + { + "name": "Sprite_Move", + "code": "Sprite_Move:\n{\n\tJSL Sprite_MoveVert\n\tJSL Sprite_MoveHoriz\n\n\tRTL", + "file": "WagonCart.asm" + }, + { + "name": "Sprite_SetSpawnedCoords", + "code": "Sprite_SetSpawnedCoords:\n\n;=================================================================\n;Sprite_PrepOamCoord LONG\n;set the oam coordinate for the sprite draw\norg $06E416", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_PrepOamCoord", + "code": "Sprite_PrepOamCoord:\n\n;=================================================================\n;Sprite_CheckDamageFromPlayer LONG\n;check if the sprite is getting damage from player or items\norg $06F2AA", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckDamageFromPlayer", + "code": "Sprite_CheckDamageFromPlayer:\n\n;=================================================================\n;Sprite_CheckDamageToPlayer LONG\n;check if the sprite is touching the player to damage\norg $06F121", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckDamageToPlayer", + "code": "Sprite_CheckDamageToPlayer:\n\n;=================================================================\n;Sprite_AttemptDamageToPlayerPlusRecoil LONG\n;damage the player everywhere on screen?\norg $06F41F", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_AttemptDamageToPlayerPlusRecoil", + "code": "Sprite_AttemptDamageToPlayerPlusRecoil:\n\n;=================================================================\n;Sprite_OAM_AllocateDeferToPlayer LONG\n;Draw the sprite depending of the position of the player (if he has to be over or under link)\norg $06F864", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_OAM_AllocateDeferToPlayer", + "code": "Sprite_OAM_AllocateDeferToPlayer:\n\n\norg $0DBA80", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionA", + "code": "OAM_AllocateFromRegionA:\norg $0DBA84", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionB", + "code": "OAM_AllocateFromRegionB:\norg $0DBA88", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionC", + "code": "OAM_AllocateFromRegionC:\norg $0DBA8C", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionD", + "code": "OAM_AllocateFromRegionD:\norg $0DBA90", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionE", + "code": "OAM_AllocateFromRegionE:\norg $0DBA94", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "OAM_AllocateFromRegionF", + "code": "OAM_AllocateFromRegionF:\n\norg $05DF70", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_DrawMultiple_quantity_preset", + "code": "Sprite_DrawMultiple_quantity_preset:\n;=================================================================\n;ApplyRumbleToSprites LONG\n;makes all the sprites on screen shaking?\norg $0680FA", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "ApplyRumbleToSprites", + "code": "ApplyRumbleToSprites:\n\n\n;=================================================================\n;CheckIfHitBoxesOverlap LONG\n;args :\n;!pos1_low = $00\n;!pos1_size = $02\n;!pos2_low = $04\n;!pos2_size = $06\n;!pos1_high = $08\n;!pos2_high = $0A\n;!ans_low = $0F\n;!ans_high = $0C\n;returns carry clear if there was no overlap\norg $0683E6", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "CheckIfHitBoxesOverlap", + "code": "CheckIfHitBoxesOverlap:\n\n;=================================================================\n;Sprite_Get_16_bit_Coords LONG\n;$0FD8 = sprite's X coordinate, $0FDA = sprite's Y coordinate\norg $0684BD", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_Get_16_bit_Coords", + "code": "Sprite_Get_16_bit_Coords:\n\n;=================================================================\n;Sprite_PrepAndDrawSingleLarge LONG\n;load / draw a 16x16 sprite\norg $06DBF0", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_PrepAndDrawSingleLarge", + "code": "Sprite_PrepAndDrawSingleLarge:\n\n;=================================================================\n;Sprite_PrepAndDrawSingleSmall LONG\n;load / draw a 8x8 sprite\norg $06DBF8", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_PrepAndDrawSingleSmall", + "code": "Sprite_PrepAndDrawSingleSmall:\n\n;=================================================================\n;Sprite_DrawShadow LONG\n;draw shadow\norg $06DC54", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_DrawShadow", + "code": "Sprite_DrawShadow:\n\n;=================================================================\n;Sprite_CheckTileCollision LONG\n;check if the sprite is colliding with a solid tile set $0E70, X\n;----udlr , u = up, d = down, l = left, r = right\norg $06E496", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckTileCollision", + "code": "Sprite_CheckTileCollision:\n\n;=================================================================\n;Sprite_GetTileAttr LONG\n; $00[0x02] - Entity Y coordinate\n; $02[0x03?] - Entity X coordinate\n;$0FA5\norg $06E87B", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_GetTileAttr", + "code": "Sprite_GetTileAttr:\n\n;=================================================================\n;Sprite_CheckSlopedTileCollision LONG\n;check if the sprite is colliding with a solid sloped tile\norg $06E8FD", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckSlopedTileCollision", + "code": "Sprite_CheckSlopedTileCollision:\n\n;=================================================================\n;Sprite_ApplySpeedTowardsPlayer LONG\n;set the velocity x,y towards the player (A = speed)\norg $06EA12", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ApplySpeedTowardsPlayer", + "code": "Sprite_ApplySpeedTowardsPlayer:\n\n;=================================================================\n;Sprite_DirectionToFacePlayer LONG\n; \\return $0E is low byte of player_y_pos - sprite_y_pos\n; \\return $0F is low byte of player_x_pos - sprite_x_pos\norg $06EAA0", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_DirectionToFacePlayer", + "code": "Sprite_DirectionToFacePlayer:\n\n;=================================================================\n;Sprite_IsToRightOfPlayer LONG\n;if Link is to the left of the sprite, Y = 1, otherwise Y = 0.\norg $06EACD", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_IsToRightOfPlayer", + "code": "Sprite_IsToRightOfPlayer:\n\n;=================================================================\n;Sprite_IsBelowPlayer LONG\n;return Y=1 sprite is below player, otherwise Y = 0\norg $06EAE4", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_IsBelowPlayer", + "code": "Sprite_IsBelowPlayer:\n\n;=================================================================\n;Sprite_CheckDamageToPlayerSameLayer LONG\n;check damage done to player if they collide and if they are on same layer\norg $06F129", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckDamageToPlayerSameLayer", + "code": "Sprite_CheckDamageToPlayerSameLayer:\n\n;=================================================================\n;Sprite_CheckDamageToPlayerIgnoreLayer LONG\n;check damage done to player if they collide even if they are not on same layer\norg $06F131", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_CheckDamageToPlayerIgnoreLayer", + "code": "Sprite_CheckDamageToPlayerIgnoreLayer:\n\n;=================================================================\n;Sound_SetSfx2PanLong LONG\n;play a sound loaded in A\norg $0DBB7C", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sound_SetSfx2PanLong", + "code": "Sound_SetSfx2PanLong:\n\n;=================================================================\n;Sprite_SpawnDynamically LONG\n;spawn a new sprite on screen, A = sprite id\n;when using this function you have to set the position yourself\n;these values belong to the sprite who used that function not the new one\n;$00 low x, $01 high x\n;$02 low y, $03 high y\n;$04 height, $05 low x (overlord)\n;$06 high x (overlord), $07 low y (overlord)\n;$08 high y (overlord)\norg $1DF65D", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_SpawnDynamically", + "code": "Sprite_SpawnDynamically:\n\norg $07F1A3", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Player_ResetState", + "code": "Player_ResetState:\n;=================================================================\n;Sprite_ApplyConveyorAdjustment LONG\n;move the sprite if he stand on a conveyor belt\norg $1D8010", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ApplyConveyorAdjustment", + "code": "Sprite_ApplyConveyorAdjustment:\n\n;=================================================================\n;SetupHitBox LONG\n;set the hitbox of the player (i think)\norg $0683EA", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "SetupHitBox", + "code": "SetupHitBox:\n\n;=================================================================\n;Dungeon_SpriteInducedTilemapUpdate LONG\n;set tile of dungeon\norg $01E7A9", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Dungeon_SpriteInducedTilemapUpdate", + "code": "Dungeon_SpriteInducedTilemapUpdate:\n;=================================================================\n;Get random INT LONG\n;GetRandomInt\norg $0DBA71", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "GetRandomInt", + "code": "GetRandomInt:\n\n;=================================================================\n;Sprite_PlayerCantPassThrough\n;player can't pass through the sprite\norg $1EF4F3", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_PlayerCantPassThrough", + "code": "Sprite_PlayerCantPassThrough:\n\n;=================================================================\n;Sprite_NullifyHookshotDrag\n;player can't hookshot to that sprite\norg $0FF540", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_NullifyHookshotDrag", + "code": "Sprite_NullifyHookshotDrag:\n\n;=================================================================\n;Player_HaltDashAttack\n;stop the dash attack of the player\norg $0791B9", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Player_HaltDashAttack", + "code": "Player_HaltDashAttack:\n\n;=================================================================\n;Sprite_ShowMessageUnconditional\n;show a message box without any condition\n; A = low byte of message ID to use.\n; Y = high byte of message ID to use.\norg $05E219", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ShowMessageUnconditional", + "code": "Sprite_ShowMessageUnconditional:\n\n;=================================================================\n;Link_ReceiveItem\n;Y = item id\norg $0799AD", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Link_ReceiveItem", + "code": "Link_ReceiveItem:\n\n;=================================================================\n;Sprite_ShowSolicitedMessageIfPlayerFacing\n;show a message if we press A and face the sprite\n; A = low byte of message ID to use.\n; Y = high byte of message ID to use.\norg $05E1A7", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ShowSolicitedMessageIfPlayerFacing", + "code": "Sprite_ShowSolicitedMessageIfPlayerFacing:\n\n;=================================================================\n;Sprite_ShowMessageFromPlayerContact\n;show a message if we touch the sprite should be used with Sprite_PlayerCantPassThrough\n; A = low byte of message ID to use.\n; Y = high byte of message ID to use.\norg $05E1F0", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ShowMessageFromPlayerContact", + "code": "Sprite_ShowMessageFromPlayerContact:\n\n; Parameters: Stack, A\norg $008781", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "UseImplicitRegIndexedLocalJumpTable", + "code": "UseImplicitRegIndexedLocalJumpTable:\n\norg $00893D", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "EnableForceBlank", + "code": "EnableForceBlank:\n\n\n;=================================================================\n;Sprite_ProjectSpeedTowardsEntityLong\n;04 = X\n;05 = HighX\n;06 = Y\n;07 = HighY\n;A = Speed\n\n;Return $00 - Y Velocity\n;Return $01 - X Velocity\n\norg $06EA22", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Sprite_ProjectSpeedTowardsEntityLong", + "code": "Sprite_ProjectSpeedTowardsEntityLong:\n\norg $0DDA06", + "file": "sprite_functions_hooks.asm" + }, + { + "name": "Overworld_CheckForSpecialOverworldTrigger", + "code": "Overworld_CheckForSpecialOverworldTrigger:\n{\n PHB : PHK : PLB\n\n REP #$31\n\n JSR GetMap16Tile\n\n LDA.l Map16Definitions,X : AND.w #$01FF : STA.b $00\n\n LDX.w #$000C ; Size of table\n\n .check_next_screen\n LDA.b $00\n\n .check_next_tile\n DEX\n DEX\n BMI .exit\n\n CMP.l .tile_type,X : BNE .check_next_tile\n\n LDA.b $8A : CMP.l .screen_id, X : BNE .check_next_screen\n\n ;--------------------------------------------------------\n\n LDA.l .special_id,X\n STA.b $A0\n\n SEP #$20\n\n LDA.l .direction,X\n STA.b $67\n\n STA.w $0410\n STA.w $0416\n\n LDX.w #$0004\n\n .continue_shifting\n DEX\n\n LSR A\n BCC .continue_shifting\n\n STX.w $0418\n STX.w $069C\n\n LDA.b #$17\n STA.b $11\n\n LDA.b #$0B\n STA.b $10\n\n .exit\n SEP #$30\n\n PLB\n\n RTL", + "file": "special_areas.asm" + }, + { + "name": "GetMap16Tile", + "code": "GetMap16Tile:\n{\n LDA.b $20 : CLC : ADC.w #$000C : STA.b $00\n\n SEC\n SBC.w $0708\n\n AND.w $070A\n ASL A\n ASL A\n ASL A\n STA.b $06\n\n LDA.b $22 : CLC : ADC.w #$0008\n\n LSR A\n LSR A\n LSR A\n STA.b $02\n\n SEC : SBC.w $070C\n\n AND.w $070E\n CLC : ADC.b $06\n\n TAY\n TAX\n\n LDA.l $7E2000,X\n ASL A\n ASL A\n ASL A\n TAX\n\n RTS", + "file": "special_areas.asm" + }, + { + "name": "SpecialOverworld_CheckForReturnTrigger", + "code": "SpecialOverworld_CheckForReturnTrigger:\n{\n REP #$31\n\n JSR GetMap16Tile\n\n LDA.l Map16Definitions,X : AND.w #$01FF : STA.b $00\n\n LDX.w #$000C ; Size of table\n\n .check_next_screen\n LDA.b $00\n\n .check_next_tile\n DEX\n DEX\n BMI EXIT_0EDEE0\n\n CMP.l .tile_type, X : BNE .check_next_tile\n\n LDA.b $8A : CMP.l .screen_id, X : BNE .check_next_screen\n\n SEP #$30\n\n LDA.l .direction, X : STA.b $67\n\n LDX.b #$04\n\n .keep_shifting\n DEX\n\n LSR A\n BCC .keep_shifting\n\n TXA\n STA.w $0418\n\n LDA.b $67\n LDX.b #$04\n\n .just_keep_shifting\n DEX\n\n LSR A\n BCC .just_keep_shifting\n\n TXA\n STA.w $069C\n\n LDA.b #$24 : STA.b $11\n STZ.b $B0 : STZ.b $A0\n\n RTL", + "file": "special_areas.asm" + }, + { + "name": "LoadSpecialOverworld", + "code": "LoadSpecialOverworld:\n{\n STZ.w $0AA5 ; Clear the custom gfx flag for koroks\n\n REP #$20\n LDA.b $A0 : CMP.w #$1010 : BNE .not_zora\n LDA.w #$0182 ; OW 82\n STA.b $A0\n .not_zora\n SEP #$20\n\n PHB : PHK : PLB\n\n LDA.b $A0\n PHA\n\n SEC : SBC.b #$80 : STA.b $A0\n\n ; Check if the special area is 0x91\n LDA.b $A0 : CMP.b #$11 : BNE .not_tiny_house\n ; Subtract by 5 to index to row 5 of the table\n SEC : SBC.b #$05 : STA.b $A0\n .not_tiny_house\n\n TAX\n\n LDA.l .direction, X : STA.b $2F\n STZ.w $0412\n\n LDA.l .gfx_AA3, X : STA.w $0AA3\n LDA.l .gfx_AA2, X : STA.w $0AA2\n\n PHX\n LDA.l .palette_prop_b, X : STA.b $00\n LDA.l .palette_prop_a, X : JSL OverworldPalettesLoader\n PLX\n\n REP #$30\n\n ; Store the size of a big screen in $00 if ID < 5\n LDA.b $A0 : AND.w #$00FF : CMP.w #$0005 : BCC .large_map\n LDA.w #$01F0 : STA.b $00 ; Small map size\n JMP +\n .large_map\n LDA.w #$03F0 : STA.b $00\n +\n\n ; Load overworld ID\n LDA.b $A0 : AND.w #$003F : ASL A : TAX\n\n ; Overworld camera boundaries Y edge\n LDA.l .camera600, X : STA.w $0708\n\n ; X edge\n LDA.l .camera70C, X\n LSR A : LSR A : LSR A\n STA.w $070C\n\n ; Y BG size\n ; 0x01F0 on small screens, 0x03F0 on big screens\n LDA.b $00 : STA.w $070A\n\n ; X BG size\n ; 0x003E on small screens , 0x007E on big screens\n LDA.b $00\n LSR A : LSR A : LSR A\n STA.w $070E\n\n ; ---------------------------------------------------------\n\n LDA.b $A0 : ASL A : TAY\n\n SEP #$10\n LDA.w .camera600, Y : STA.w $0600\n LDA.w .camera602, Y : STA.w $0602\n LDA.w .camera604, Y : STA.w $0604\n LDA.w .camera606, Y : STA.w $0606\n LDA.w .camera610, Y : STA.w $0610\n LDA.w .camera612, Y : STA.w $0612\n LDA.w .camera614, Y : STA.w $0614\n LDA.w .camera616, Y : STA.w $0616\n SEP #$20\n\n PLA\n STA.b $A0\n\n PLB\n\n JSL $0ED61D ; Overworld_SetScreenBGColorCacheOnly\n\n RTL", + "file": "special_areas.asm" + }, + { + "name": "DrawWisdomPendant", + "code": "DrawWisdomPendant:\n{\n ; X position\n LDA.b #$08 : STA.l $7EC10B\n LDA.b #$30 : STA.l $7EC10A\n ; Y position\n LDA.b #$07 : STA.l $7EC109\n LDA.b #$01 : STA.l $7EC108\n\n LDA.b #$60 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0D : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawPowerPendant", + "code": "DrawPowerPendant:\n{\n ; X position\n LDA.b #$08 : STA.l $7EC10B\n LDA.b #$0D : STA.l $7EC10A ; Upper nybble control Zoomed low X pos\n ; Y position\n LDA.b #$02 : STA.l $7EC109\n LDA.b #$84 : STA.l $7EC108 ; Upper nybble control Zoomed low Y pos\n\n LDA.b #$60 : STA.b $0D\n LDA.b #$32 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$08 : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawCouragePendant", + "code": "DrawCouragePendant:\n{\n ; X position\n LDA.b #$00 : STA.l $7EC10B\n LDA.b #$87 : STA.l $7EC10A\n ; Y position\n LDA.b #$04 : STA.l $7EC109\n LDA.b #$01 : STA.l $7EC108\n ; Tile GFX\n LDA.b #$60 : STA.b $0D\n LDA.b #$38 : STA.b $0C\n ; Tile Size\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0A : STA.l $7EC025 ; OAM Slot used\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawMasterSwordIcon", + "code": "DrawMasterSwordIcon:\n{\n ; X position\n LDA.b #$02 : STA.l $7EC10B\n LDA.b #$FD : STA.l $7EC10A ; Upper nybble control Zoomed low X pos\n ; Y position\n LDA.b #$00 : STA.l $7EC109\n LDA.b #$E4 : STA.l $7EC108 ; Upper nybble control Zoomed low Y pos\n\n LDA.b #$62 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0B : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawFortressOfSecretsIcon", + "code": "DrawFortressOfSecretsIcon:\n{\n ; X position\n LDA.b #$0E : STA.l $7EC10B\n LDA.b #$5E : STA.l $7EC10A\n ; Y position\n LDA.b #$06 : STA.l $7EC109\n LDA.b #$68 : STA.l $7EC108\n\n LDA.b #$66 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0B : STA.l $7EC025\n\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawFinalBossIcon", + "code": "DrawFinalBossIcon:\n{\n ; X position\n LDA.b #$0E : STA.l $7EC10B\n LDA.b #$5E : STA.l $7EC10A\n ; Y position\n LDA.b #$04 : STA.l $7EC109\n LDA.b #$68 : STA.l $7EC108\n ; Tile GFX (Skull Icon)\n LDA.b #$66 : STA.b $0D\n LDA.b #$34 : STA.b $0C\n ; Tile Size\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0E : STA.l $7EC025 ; OAM Slot used\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawHallOfSecretsIcon", + "code": "DrawHallOfSecretsIcon:\n{\n ; X position\n LDA.b #$0D : STA.l $7EC10B\n LDA.b #$34 : STA.l $7EC10A\n ; Y position\n LDA.b #$03 : STA.l $7EC109\n LDA.b #$0E : STA.l $7EC108\n ; Tile GFX\n LDA.b #$68 : STA.b $0D\n LDA.b #$34 : STA.b $0C\n ; Tile Size\n LDA.b #$00 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$07 : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawPyramidIcon", + "code": "DrawPyramidIcon:\n{\n ; X position\n LDA.b #$05 : STA.l $7EC10B\n LDA.b #$00 : STA.l $7EC10A\n ; Y position\n LDA.b #$00 : STA.l $7EC109\n LDA.b #$54 : STA.l $7EC108\n\n LDA.b #$68 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$00 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$07 : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "DrawEonEscapeIcon", + "code": "DrawEonEscapeIcon:\n{\n LDA.b #$04 : STA.l $7EC10B\n LDA.b #$F4 : STA.l $7EC10A\n\n LDA.b #$0B : STA.l $7EC109\n LDA.b #$0E : STA.l $7EC108\n\n LDA.b #$68 : STA.b $0D\n LDA.b #$36 : STA.b $0C ; Tile GFX\n\n LDA.b #$00 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$06 : STA.l $7EC025\n RTL", + "file": "world_map.asm" + }, + { + "name": "MapIconDraw", + "code": "MapIconDraw:\n{\n ; .dont_draw_link\n LDA.l $7EC108 : PHA\n LDA.l $7EC109 : PHA\n LDA.l $7EC10A : PHA\n LDA.l $7EC10B : PHA\n\n .draw_prizes\n LDA.b $8A : AND.b #$40 : BEQ .lwprizes\n LDA.l OOSPROG : AND.b #$02 : BNE .check_pendants\n JSL DrawEonEscapeIcon\n JSR HandleMapDrawIcon\n JMP restore_coords_and_exit\n .check_pendants\n LDA.l OOSPROG : AND.b #$10 : BEQ .check_master_sword\n JSL DrawPowerPendant\n JSR HandleMapDrawIcon\n\n JSL DrawWisdomPendant\n JSR HandleMapDrawIcon\n\n JSL DrawCouragePendant\n JSR HandleMapDrawIcon\n .check_master_sword\n LDA.l OOSPROG : AND.b #$20 : BEQ .check_fortress\n JSL DrawMasterSwordIcon\n JSR HandleMapDrawIcon\n JMP restore_coords_and_exit\n .check_fortress\n LDA.l OOSPROG : AND.b #$40 : BEQ .check_final_boss\n JSL DrawFortressOfSecretsIcon\n JSR HandleMapDrawIcon\n JMP restore_coords_and_exit\n .check_final_boss\n LDA.l OOSPROG : AND.b #$80 : BEQ .exit_dw\n JSL DrawFinalBossIcon\n JSR HandleMapDrawIcon\n .exit_dw\n JMP restore_coords_and_exit\n .lwprizes\n\n LDA.l OOSPROG : CMP.b #$02 : BNE +\n JSL DrawHallOfSecretsIcon\n JSR HandleMapDrawIcon\n +\n LDA.l OOSPROG : AND.b #$10 : BEQ .main_quest\n JSL DrawPyramidIcon\n JSR HandleMapDrawIcon_noflash\n .main_quest\n\n LDA.l MapIcon : CMP.b #$01 : BEQ .draw_crystal_1\n CMP.b #$02 : BCS .draw_crystals\n JSL DrawEonEscapeIcon\n JSR HandleMapDrawIcon\n JMP restore_coords_and_exit\n\n .draw_crystal_1\n ; Draw Crystal 1\n LDA.l $7EF37A : AND #$02 : BNE .skip_draw_0\n ; X position\n LDA.b #$00 : STA.l $7EC10B\n LDA.b #$87 : STA.l $7EC10A\n ; Y position\n LDA.b #$04 : STA.l $7EC109\n LDA.b #$01 : STA.l $7EC108\n ; Tile GFX\n LDA.b #$64 : STA.b $0D\n LDA.b #$38 : STA.b $0C\n ; Tile Size\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0E : STA.l $7EC025 ; OAM Slot used\n JSR HandleMapDrawIcon\n .skip_draw_0\n JMP restore_coords_and_exit\n\n .draw_crystals\n ; Draw Crystal 2\n LDA.l $7EF37A : AND #$10 : BNE .skip_draw_1\n ; X position (2)\n LDA.b #$1E : STA.l $7EC10B\n LDA.b #$A0 : STA.l $7EC10A\n ; Y position (2)\n LDA.b #$09 : STA.l $7EC109\n LDA.b #$74 : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$08 : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_1\n\n ; Draw Crystal 3\n LDA.l $7EF37A : AND #$40 : BNE .skip_draw_2\n ; X position\n LDA.b #$08 : STA.l $7EC10B\n LDA.b #$10 : STA.l $7EC10A\n ; Y position\n LDA.b #$04 : STA.l $7EC109\n LDA.b #$0E : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0D : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_2\n\n ; Draw Crystal 4\n LDA.l $7EF37A : AND #$20 : BNE .skip_draw_3\n ; X position\n LDA.b #$0E : STA.l $7EC10B\n LDA.b #$5E : STA.l $7EC10A\n ; Y position\n LDA.b #$06 : STA.l $7EC109\n LDA.b #$68 : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$3C : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0B : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_3\n\n ; Draw Crystal 5\n LDA.l $7EF37A : AND #$04 : BNE .skip_draw_4\n ; X position\n LDA.b #$0C : STA.l $7EC10B\n LDA.b #$34 : STA.l $7EC10A\n ; Y position\n LDA.b #$00 : STA.l $7EC109\n LDA.b #$0E : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$34 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$09 : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_4\n\n ; Draw Crystal 6\n LDA.l $7EF37A : AND #$01 : BNE .skip_draw_5\n ; X position (6)\n LDA.b #$0D : STA.l $7EC10B\n LDA.b #$05 : STA.l $7EC10A\n ; Y position (6)\n LDA.b #$0D : STA.l $7EC109\n LDA.b #$09 : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$32 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0A : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_5\n\n ; Draw Crystal 7\n LDA.l $7EF37A : AND #$08 : BNE .skip_draw_6\n ; X position\n LDA.b #$00 : STA.l $7EC10B\n LDA.b #$F4 : STA.l $7EC10A\n ; Y position\n LDA.b #$0D : STA.l $7EC109\n LDA.b #$0E : STA.l $7EC108\n\n LDA.b #$64 : STA.b $0D\n LDA.b #$32 : STA.b $0C ; Tile GFX\n\n LDA.b #$02 : STA.b $0B ; 02 = 16x16, 00 = 8x8\n LDA.b #$0C : STA.l $7EC025\n\n JSR HandleMapDrawIcon\n .skip_draw_6\n\n JMP restore_coords_and_exit\n}\n", + "file": "world_map.asm" + }, + { + "name": "HandleMapDrawIcon", + "code": "HandleMapDrawIcon:\n{\n ; Timer to make it flash\n LDA.b $1A : AND.b #$10 : BNE .skip_draw\n .noflash ; ALTERNATE ENTRY POINT\n JSR WorldMapIcon_AdjustCoordinate\n LDA.l $7EC025 : TAX\n JSR WorldMap_CalculateOAMCoordinates\n\n BCC .skip_draw\n LDA.l $7EC025 : TAX\n LDA.b #$02\n JSR WorldMap_HandleSpriteBlink\n .skip_draw\n RTS", + "file": "world_map.asm" + }, + { + "name": "FixMaskPaletteOnExit", + "code": "FixMaskPaletteOnExit:\n{\n JSL Palette_ArmorAndGloves\n LDA.l $7EC229\n RTL", + "file": "world_map.asm" + }, + { + "name": "restore_coords_and_exit", + "code": "restore_coords_and_exit:\n{\n PLA : STA.l $7EC10B\n PLA : STA.l $7EC10A\n PLA : STA.l $7EC109\n PLA : STA.l $7EC108\n RTS", + "file": "world_map.asm" + }, + { + "name": "WorldMap_CalculateOAMCoordinates", + "code": "WorldMap_CalculateOAMCoordinates:\n\n; =========================================================\n; 0x0C4000 to 0x0C8000 for the map gfx\n; patch a new rom with your map data/gfx\n; create a new bin file out of these bytes\n; 0AC727 (pc: 054727) to 0AD726 (pc: 055726) 0x1000 bytes\n\n; =========================================================\n; LW OVERWORLD MAP\n; =========================================================\n\norg $008E54 ;STZ $2115\n JSL DMAOwMap\n RTS", + "file": "world_map.asm" + }, + { + "name": "LWWorldMap_Tiles", + "code": " LWWorldMap_Tiles:\n incbin world_map/LwMapTileset.bin\n", + "file": "world_map.asm" + }, + { + "name": "LWWorldMap_Gfx", + "code": " LWWorldMap_Gfx:\n incbin world_map/LwMapGfx.bin\n\norg $418000", + "file": "world_map.asm" + }, + { + "name": "DWWorldMap_Tiles", + "code": " DWWorldMap_Tiles:\n incbin world_map/DwMapTileset.bin\n", + "file": "world_map.asm" + }, + { + "name": "DWWorldMap_Gfx", + "code": " DWWorldMap_Gfx:\n incbin world_map/DwMapGfx.bin\n", + "file": "world_map.asm" + }, + { + "name": "DMAOwMap", + "code": "DMAOwMap:\n{\n JSL Palette_ArmorAndGloves\n LDA $8A : AND #$40 : BEQ .LWMAP\n JMP .DWMAP\n .LWMAP\n\n STZ.w $2115\n\n LDA.b #LWWorldMap_Tiles>>16\n STA.w $4304\n\n REP #$20\n\n LDA.w #$1800\n STA.w $4300\n\n STZ.b $04\n STZ.b $02\n\n LDY.b #$01\n LDX.b #$00\n\n .next_quadrant\n\n LDA.w #$0020\n STA.b $06\n\n LDA.l .vram_offset,X\n STA.b $00\n\n .next_row\n\n LDA.b $00\n STA.w $2116\n\n CLC\n ADC.w #$0080\n STA.b $00\n\n LDA.b $02\n CLC\n ADC.w #LWWorldMap_Tiles\n STA.w $4302\n\n LDA.w #$0020\n STA.w $4305\n\n STY.w $420B\n\n CLC\n ADC.b $02\n STA.b $02\n\n DEC.b $06\n BNE .next_row\n\n INC.b $04\n INC.b $04\n\n LDX.b $04\n CPX.b #$08\n BNE .next_quadrant\n\n SEP #$20\n\n RTL", + "file": "world_map.asm" + }, + { + "name": "DMAOwMapGfx", + "code": "DMAOwMapGfx:\n{\n LDA $8A : AND #$40 : BNE .DWMAP\n LDA.b #LWWorldMap_Gfx>>16 : STA $02\n\n LDA.b #$80 : STA $2115\n\n STZ $2116 : STZ $2117\n\n REP #$10\n\n LDY.w #LWWorldMap_Gfx : STY $00\n\n LDY.w #$0000\n\n .writeChr\n\n LDA [$00], Y : STA $2119 : INY\n LDA [$00], Y : STA $2119 : INY\n LDA [$00], Y : STA $2119 : INY\n LDA [$00], Y : STA $2119 : INY\n CPY.w #$4000 : BNE .writeChr\n\n SEP #$10\n\n RTL", + "file": "world_map.asm" + }, + { + "name": "LostWoods", + "code": "LostWoods:\n{\n ; If currently in Lost Woods, execute puzzle logic\n LDA.b $8A : CMP.b #$29 : BEQ begincode\n\n ; Else, return standard area ID (Allow entry)\n LDA.l Pool_Overworld_ActualScreenID_New, X\n STZ !ComboCounter\n RTL", + "file": "lost_woods.asm" + }, + { + "name": "normalfinish", + "code": " normalfinish:\n JSL LostWoods_ResetCoordinates\n LDA.l Pool_Overworld_ActualScreenID_New, X\n STZ !ComboCounter\n RTL", + "file": "lost_woods.asm" + }, + { + "name": "begincode", + "code": " begincode:\n ; Return from where we came from\n CPX !EastArea : BEQ normalfinish\n ; from here onwards, use the ram address to determine which combo you're up to\n ; this code is pretty repeatable\n LDA !ComboCounter : CMP #$00 : BNE combo1\n ; did you get it right?\n CPX !NorthArea : BEQ UP_CORRECT\n STZ !ComboCounter\n BRA RESOLVE_INCORRECT\n", + "file": "lost_woods.asm" + }, + { + "name": "combo1", + "code": " combo1:\n CMP #$01 : BNE combo2\n CPX !WestArea : BEQ LEFT_CORRECT\n STZ !ComboCounter\n BRA RESOLVE_INCORRECT\n", + "file": "lost_woods.asm" + }, + { + "name": "combo2", + "code": " combo2:\n CMP #$02 : BNE combo3\n CPX !SouthArea : BEQ DOWN_CORRECT\n STZ !ComboCounter\n BRA RESOLVE_INCORRECT\n", + "file": "lost_woods.asm" + }, + { + "name": "combo3", + "code": " combo3:\n ; we want to load the down area, since we complete the combos\n CPX !WestArea : BNE RESOLVE_INCORRECT\n LDA #$1B : STA $012F ; play fanfare\n BRA normalfinish\n", + "file": "lost_woods.asm" + }, + { + "name": "RESOLVE_INCORRECT", + "code": " RESOLVE_INCORRECT:\n CPX !NorthArea : BEQ CASE_UP\n CPX !WestArea : BEQ CASE_LEFT\n BRA CASE_DOWN\n", + "file": "lost_woods.asm" + }, + { + "name": "DOWN_CORRECT", + "code": " DOWN_CORRECT:\n {\n INC !ComboCounter", + "file": "lost_woods.asm" + }, + { + "name": "CASE_DOWN", + "code": " CASE_DOWN:\n DEC $21\n DEC $21\n DEC $E7\n DEC $E7\n DEC $E9\n DEC $E9\n DEC $611\n DEC $611\n DEC $613\n DEC $613\n LDA $700\n SEC\n SBC #$10\n STA $700\n BRA all\n } ; label DOWN_CORRECT\n\n", + "file": "lost_woods.asm" + }, + { + "name": "UP_CORRECT", + "code": " UP_CORRECT:\n {\n INC !ComboCounter", + "file": "lost_woods.asm" + }, + { + "name": "CASE_UP", + "code": " CASE_UP:\n INC $21\n INC $21\n INC $E7\n INC $E7\n INC $E9\n INC $E9\n INC $611\n INC $611\n INC $613\n INC $613\n LDA $700\n CLC\n ADC #$10\n STA $700\n LDA.b #$01 : STA !RestoreCam\n BRA all\n } ; label UP_CORRECT\n\n", + "file": "lost_woods.asm" + }, + { + "name": "LEFT_CORRECT", + "code": " LEFT_CORRECT:\n {\n INC !ComboCounter", + "file": "lost_woods.asm" + }, + { + "name": "CASE_LEFT", + "code": " CASE_LEFT:\n INC $23\n INC $23\n INC $E1\n INC $E1\n INC $E3\n INC $E3\n INC $615\n INC $615\n INC $617\n INC $617\n INC $700\n INC $700\n } ; label LEFT_CORRECT\n", + "file": "lost_woods.asm" + }, + { + "name": "all", + "code": " all:\n {\n LDA #$29 ; load the same area.\n RTL", + "file": "lost_woods.asm" + }, + { + "name": "LostWoods_ResetCoordinates", + "code": " LostWoods_ResetCoordinates:\n {\n ; Only run if we are in area 0x29\n LDA.b $8A : CMP.b #$29 : BNE .done\n\n REP #$20\n\n ; Check Target Area (in X register)\n CPX !EastArea : BEQ .snap_east\n CPX !WestArea : BEQ .snap_west\n CPX !NorthArea : BEQ .snap_north\n CPX !SouthArea : BEQ .snap_south\n BRA .done_coords ; Fallback if unknown exit\n\n .snap_east ; Target 0x2A (Right)\n ; Snap X to Right Edge of 0x29 (0x0400)\n LDA.w #$0400 : STA.b $22\n ; Modulo Y to 0x29 Base (0x0A00)\n LDA.b $20 : AND.w #$01FF : ORA.w #$0A00 : STA.b $20\n BRA .reset_scroll\n\n .snap_west ; Target 0x28 (Left)\n ; Snap X to Left Edge of 0x29 (0x0200)\n LDA.w #$0200 : STA.b $22\n ; Modulo Y to 0x29 Base (0x0A00)\n LDA.b $20 : AND.w #$01FF : ORA.w #$0A00 : STA.b $20\n BRA .reset_scroll\n\n .snap_north ; Target 0x21 (Up)\n ; Snap Y to Top Edge of 0x29 (0x0A00)\n LDA.w #$0A00 : STA.b $20\n ; Modulo X to 0x29 Base (0x0200)\n LDA.b $22 : AND.w #$01FF : ORA.w #$0200 : STA.b $22\n BRA .reset_scroll\n\n .snap_south ; Target 0x31 (Down)\n ; Snap Y to Bottom Edge of 0x29 (0x0C00)\n LDA.w #$0C00 : STA.b $20\n ; Modulo X to 0x29 Base (0x0200)\n LDA.b $22 : AND.w #$01FF : ORA.w #$0200 : STA.b $22\n BRA .reset_scroll\n\n .done_coords\n ; If we didn't match an exit, fallback to just modulo-ing both\n LDA.b $20 : AND.w #$01FF : ORA.w #$0A00 : STA.b $20\n LDA.b $22 : AND.w #$01FF : ORA.w #$0200 : STA.b $22\n\n .reset_scroll\n SEP #$20\n\n ; Reset Overlay Scroll Drifts introduced by puzzle\n STZ.b $E1\n STZ.b $E3\n STZ.b $E7\n STZ.b $E9\n\n .done\n RTL", + "file": "lost_woods.asm" + }, + { + "name": "Overworld_UseEntranceEntry", + "code": "Overworld_UseEntranceEntry:\n{\n PHB : PHK : PLB\n JSL Overworld_UseEntrance\n PLB\n RTL", + "file": "entrances.asm" + }, + { + "name": "Overworld_UseEntrance", + "code": "Overworld_UseEntrance:\n{\n REP #$31\n\n LDA.b $20 : CLC : ADC.w #$0007 : STA.b $00\n SEC : SBC.w $0708 : AND.w $070A\n ASL #3\n STA.b $06\n\n LDA.b $22 : LSR #3 : STA.b $02\n SEC : SBC.w $070C : AND.w $070E\n CLC : ADC.b $06\n\n TAY\n TAX\n\n LDA.l $7E2000, X\n ASL #3\n TAX\n\n LDA.b $2F : AND.w #$00FF : BNE .not_facing_up\n\n LDA.l Map16Definitions+2, X\n AND.w #$41FF : CMP.w #$00E9 : BEQ .open_door\n CMP.w #$0149 : BEQ .left_side_castle_door\n CMP.w #$0169 : BEQ .left_side_castle_door\n\n TYX\n\n LDA.l $7E2002, X\n ASL #3\n TAX\n\n LDA.l Map16Definitions+0, X\n AND.w #$41FF : CMP.w #$4149 : BEQ .right_side_castle_door\n\n CMP.w #$4169 : BEQ .right_side_castle_door\n\n CMP.w #$40E9 : BNE .check_door_type\n\n DEY\n DEY\n\n .open_door\n TYX\n\n LDA.w #$0DA4 : JSL Overworld_DrawMap16_Persist\n\n LDA.w #$0DA6 : STA.l $7E2002, X\n\n LDY.w #$0002\n JSL Overworld_DrawMap16_Anywhere\n\n SEP #$30\n\n ; SFX3.15\n LDA.b #$15 : STA.w $012F\n\n LDA.b #$01 : STA.b $14\n\n RTL", + "file": "entrances.asm" + }, + { + "name": "FindEntrance", + "code": "FindEntrance:\n{\n TYA\n STA.b $00\n\n LDX.w #$0102\n\n .next_check\n LDA.b $00\n\n .tile_fail\n DEX\n DEX\n BMI .no_entrance_found\n\n CMP.l Overworld_EntranceTileIndex, X : BNE .tile_fail\n\n LDA.w $040A : CMP.l Overworld_EntranceScreens, X : BNE .next_check\n\n LDA.l $7EF3D3 : AND.w #$00FF : BNE .entry_allowed\n\n LDA.w $02DA : AND.w #$00FF : CMP.w #$0001 : BEQ Overworld_ForbidEntry\n\n LDA.l $7EF3CC : AND.w #$00FF : BEQ .entry_allowed\n\n ; FOLLOWER 05\n CMP.w #$05 : BEQ .entry_allowed\n\n ; FOLLOWER 0E\n CMP.w #$0E : BEQ .entry_allowed\n\n ; FOLLOWER 01\n CMP.w #$01 : BEQ .entry_allowed\n\n ; FOLLOWER 07\n CMP.w #$07 : BEQ .check_single_entrance\n\n CMP.w #$08 ; FOLLOWER 08\n\n BNE Overworld_ForbidEntry\n\n .check_single_entrance\n CPX.w #$0076 : BCC Overworld_ForbidEntry\n\n\n .entry_allowed\n TXA\n LSR A\n TAX\n\n SEP #$20\n\n LDA.l Overworld_Entrance_ID,X\n STA.w $010E\n\n STZ.b $4D : STZ.b $46\n\n LDA.b #$0F : STA.b $10\n\n LDA.b #$06 : STA.w $010C\n\n STZ.b $11 : STZ.b $B0\n\n .no_entrance_found\n SEP #$30\n\n RTL", + "file": "entrances.asm" + }, + { + "name": "ValidDoorTypesExpanded_low", + "code": "ValidDoorTypesExpanded_low:\n dw $00FE, $00C5, $00FE, $0114 ; 00: ???, House Door, ???, ???\n dw $0115, $0175, $0156, $00F5 ; 01:\n dw $00E2, $01EF, $0119, $00FE ; 02: ???, ???, ???, Desert Door\n dw $0172, $0177, $013F, $0172 ; 03:\n dw $0112, $0161, $0172, $014C ; 04: ???, ???, Dam Door, ???\n dw $0156, $01EF, $00FE, $00FE ; 05:\n dw $00FE, $010B, $0173, $0143 ; 06: ???, ???, ???, Tower of Hera\n dw $0149, $0175, $0103, $0100 ; 07:\n dw $01C6, $015E, $0167, $0128 ; 08: Waterfall, ???, ???, ???\n dw $0131, $0112, $016D, $0163 ; 09:\n dw $0173, $00FE, $0113, $0177 ; 10:\n dw $00EA, $013B ; 11: Lava Land Large, Lava Land Small\n", + "file": "entrances.asm" + }, + { + "name": "ValidDoorTypesExpanded_high", + "code": "ValidDoorTypesExpanded_high:\n dw $014A, $00C4, $014F, $0115 ; ???, House Door, ???, ???\n dw $0114, $0174, $0155, $00F5 ; 01:\n dw $00EE, $01EB, $0118, $0146 ; ???, ???, ???, Desert Door\n dw $0171, $0155, $0137, $0174 ; 03:\n dw $0173, $0121, $0164, $0155 ; ???, ???, Dam Door, ???\n dw $0157, $0128, $0114, $0123 ; 05:\n dw $0113, $0109, $0118, $0161 ; ???, ???, ???, Tower of Hera\n dw $0149, $0117, $0174, $0101 ; 07:\n dw $01C6, $0131, $0051, $014E ; Waterfall, ???, ???, ???\n dw $0131, $0112, $017A, $0163 ; 09:\n dw $0172, $01BD, $0152, $0167 ; 10:\n dw $00EB, $013A\n\npushpc\n\n; $DB8BF (0x2C entries, 2 bytes each) - valid map8 (CHR) values for entrances (left side)\n; $DB917 (0x2C entries, 2 bytes each) - valid map8 (CHR) values for entrances (right side)\n\n; $DB8BF-$DB916 - chr types indicating door entrances\norg $1BB8BF", + "file": "entrances.asm" + }, + { + "name": "ValidDoorTypes_low", + "code": "ValidDoorTypes_low:\n dw $00FE, $00C5, $00FE, $0114 ; 00: ???, House Door, ???, ???\n dw $0115, $0175, $0156, $00F5 ; 01:\n dw $00E2, $01EF, $0119, $00FE ; 02: ???, ???, ???, Desert Door\n dw $0172, $0177, $013F, $0172 ; 03:\n dw $0112, $0161, $0172, $014C ; 04: ???, ???, Dam Door, ???\n dw $0156, $01EF, $00FE, $00FE ; 05:\n dw $00FE, $010B, $0173, $0143 ; 06: ???, ???, ???, Tower of Hera\n dw $0149, $0175, $0103, $0100 ; 07:\n dw $01C6, $015E, $0167, $0128 ; 08: Waterfall, ???, ???, ???\n dw $0131, $0112, $016D, $0163 ; 09:\n dw $0173, $00FE, $0113, $0177 ; 10:\n\n\n", + "file": "entrances.asm" + }, + { + "name": "Pool", + "code": "Pool:\n{\n ; Valid values:\n ; 555 color value $0000 to $7FFF.\n ; $2669 LW green grass color\n ; $2A32 DW dead grass color\n ; $19C6 SW dark green shadow color\n .BGColorTable ; $140000\n if !UseVanillaPool == 1\n ; LW\n dw $2669, $2669, $2669, $0000, $0000, $0000, $0000, $0000\n dw $2669, $2669, $2669, $0000, $0000, $0000, $0000, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n dw $2669, $2669, $2669, $2669, $2669, $2669, $2669, $2669\n\n ; DW\n dw $2A32, $2A32, $2A32, $0000, $0000, $0000, $0000, $0000\n dw $2A32, $2A32, $2A32, $0000, $0000, $0000, $0000, $2A32\n dw $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32\n dw $2A32, $2A32, $2A32, $0000, $0000, $2A32, $2A32, $2A32\n dw $2A32, $2A32, $2A32, $0000, $0000, $2A32, $2A32, $2A32\n dw $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32\n dw $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32\n dw $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32, $2A32\n\n ; SW\n dw $19C6, $19C6, $19C6, $0000, $0000, $0000, $0000, $0000\n dw $0000, $19C6, $19C6, $0000, $0000, $0000, $0000, $0000\n dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n endif\n assert pc() <= $288140\n\n ; Valid values:\n ; $00 - Disabled\n ; Non $00 - Enabled\n org $288140 ; $140140\n .EnableTable ; 0x20\n\n org $288140 ; $140140\n .EnableBGColor ; 0x01\n if !UseVanillaPool > 0\n db $01\n endif\n\n org $288141 ; $140141\n .EnableMainPalette ; 0x01\n if !UseVanillaPool > 0\n db $01\n endif\n\n org $288142 ; $140142\n .EnableMosaic ; 0x01 Unused for now.\n db $01\n\n ; When non 0 this will allow animated tiles to be updated between OW\n ; transitions. Default is $FF.\n org $288143 ; $140143\n .EnableAnimated ; 0x01\n if !UseVanillaPool > 0\n db $01\n endif\n\n ; When non 0 this will allow Subscreen Overlays to be updated between OW\n ; transitions. Default is $FF.\n org $288144 ; $140144\n .EnableSubScreenOverlay ; 0x01\n if !UseVanillaPool > 0\n db $01\n endif\n\n ; This is a reserved value that ZS will write to when it has applied the\n ; ASM. That way the next time ZS loads the ROM it knows to read the custom\n ; values instead of using the default ones. The current version is 03.\n org $288145 ; $140145\n .ZSAppliedASM ; 0x01\n db $03\n\n ; When non 0 this will cause rain to appear on all areas in the beginning\n ; phase. Default is $FF. Disabled for Oracle of Secrets.\n org $288146 ; $140146\n .EnableBeginningRain ; 0x01\n ;if !UseVanillaPool > 0\n db $00\n ;endif\n\n ; TODO: Add a place to change this in ZS. Once that is done add this to the\n ; vanilla pool checks as well.\n ; When non 0 this will disable the ambiant sound that plays in the mire\n ; area after the event is triggered. Default is $FF.\n org $288147 ; $140147\n .EnableRainMireEvent ; 0x01\n db $FF\n\n ; When non 0 this will make the game reload all gfx in between OW\n ; transitions. Default is $FF.\n org $288148 ; $140143\n .EnableTransitionGFXGroupLoad ; 0x01\n if !UseVanillaPool > 0\n db $01\n endif\n\n ; TODO: Vanilla pool check disabled for now until we put an actual place to\n ; change it.\n ; The bridge color is different from the Master Sword area so we are going to\n ; hard code it here for now. Default is $2669 which is the vanilla LW green.\n org $288149 ; $140149\n .BGColorTable_Bridge ; 0x02\n ;if !UseVanillaPool > 0\n dw $2669\n ;endif\n\n ; The rest of these are extra bytes that can be used for anything else\n ; later on.\n ;db $00, $00, $00, $00, $00, $00, $00, $00\n ;db $00, $00, $00, $00, $00, $00, $00, $00\n ;db $00, $00, $00, $00, $00\n assert pc() <= $288160\n\n ; Valid values:\n ; Main overworld palette index $00 to $05.\n ; $00 is the normal light world palette.\n ; $01 is the normal dark world palette.\n ; $02 is the normal light world death mountain palette.\n ; $03 is the normal dark world death mountain palette.\n ; $04 is the Triforce room palette.\n ; $05 is the title screen palette?\n org $288160 ; $140160\n .MainPaletteTable ; 0xA0\n if !UseVanillaPool == 1\n ; LW\n db $00, $00, $00, $02, $00, $02, $00, $02\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n\n ; DW\n db $01, $01, $01, $03, $01, $03, $01, $03\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n db $01, $01, $01, $01, $01, $01, $01, $01\n\n ; SW\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $04, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n endif\n assert pc() <= $288200\n\n ; Valid values:\n ; .... udlr\n ; u - Up\n ; d - Down\n ; l - Left\n ; r - Right\n org $288200 ; $140200\n .MosaicTable ; 0xA0\n if !UseVanillaPool == 1\n ; LW\n db $05, $00, $02, $00, $00, $00, $00, $00\n db $00, $00, $02, $00, $00, $00, $00, $08\n db $08, $08, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n\n ; DW\n db $05, $00, $02, $00, $00, $00, $00, $00\n db $00, $00, $02, $00, $00, $00, $00, $00\n db $08, $08, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n\n ; SW\n db $04, $04, $00, $00, $00, $00, $00, $00\n db $04, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n endif\n assert pc() <= $2882A0\n\n ; Not the same as OWGFXGroupTable_sheet7. The game uses a combination of $59\n ; and $5B to create the sheet in sheet #7. This is done by first transfering\n ; all the gfx that is needed for the bottom half of the sheet (the door\n ; frames for example) which is different depending on whether we are in the\n ; LW or DW. It then loads the actual animated tile frames into a buffer\n ; where it can transfer over from durring NMI based on whether we are on\n ; Death Mountain or not (LW or DW). This table is to control the latter.\n ; Valid values:\n ; GFX index $00 to $FF.\n ; In vanilla, $59 are the DW door frames and clouds and $5B are the Lw door\n ; frames and the regular water tiles.\n org $2882A0 ; $1402A0\n .AnimatedTable ; 0xA0\n if !UseVanillaPool == 1\n ; LW\n db $5B, $5B, $5B, $59, $5B, $59, $5B, $59\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n\n ; DW\n db $5B, $5B, $5B, $59, $5B, $59, $5B, $59\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n\n ; SW\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n db $5B, $5B, $5B, $5B, $5B, $5B, $5B, $5B\n endif\n assert pc() <= $288340\n\n ; Valid values:\n ; Can be any value $00 to $FF but is stored as 2 bytes instead of one to\n ; help the code out below. $FF is for no overlay area. Hopefully no crazy\n ; person decides to expand their overworld to $FF areas.\n ; $0093 is the triforce room curtain overlay.\n ; $0094 is the under the bridge overlay.\n ; $0095 is the sky background overlay.\n ; $0096 is the pyramid background overlay.\n ; $0097 is the first fog overlay.\n\n ; $009C is the lava background overlay.\n ; $009D is the second fog overlay.\n ; $009E is the tree canopy overlay.\n ; $009F is the rain overlay.\n org $288340 ; $140340\n .OverlayTable ; 0x140\n if !UseVanillaPool == 1\n ; LW\n dw $009D, $00FF, $00FF, $0095, $00FF, $0095, $00FF, $0095\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n\n ; DW\n dw $009D, $00FF, $00FF, $009C, $00FF, $009C, $00FF, $009C\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $0096, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $009F, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n\n ; SP\n dw $0097, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $0093, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n dw $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF, $00FF\n endif\n assert pc() <= $288480\n\n ; Just in case 0xFF is used and there is no sheet to load when warping using\n ; the bird, unloading the map, or exiting a dungeon, the DefaultGFXGroups\n ; values are used. 0xFF is used instead of 0x00 as the \"don't change the\n ; sheet\" value. That way, we can actually use sheet 00 if we want.\n org $288480 ; $140480\n .OWGFXGroupTable ; 0x500 (0xA0 * 0x08)\n\n ; LW\n org $288480 ; $140480\n .OWGFXGroupTable_sheet0\n if !UseVanillaPool == 1\n db $3A ; 0x00 sheet 0\n endif\n\n org $288481 ; $140481\n .OWGFXGroupTable_sheet1\n if !UseVanillaPool == 1\n db $3B ; 0x00 sheet 1\n endif\n\n org $288482 ; $140482\n .OWGFXGroupTable_sheet2\n if !UseVanillaPool == 1\n db $3C ; 0x00 sheet 2\n endif\n\n org $288483 ; $140483\n .OWGFXGroupTable_sheet3\n if !UseVanillaPool == 1\n db $FF ; 0x00 sheet 3\n endif\n\n org $288484 ; $140484\n .OWGFXGroupTable_sheet4\n if !UseVanillaPool == 1\n db $57 ; 0x00 sheet 4\n endif\n\n org $288485 ; $140485\n .OWGFXGroupTable_sheet5\n if !UseVanillaPool == 1\n db $4C ; 0x00 sheet 5\n endif\n\n org $288486 ; $140486\n .OWGFXGroupTable_sheet6\n if !UseVanillaPool == 1\n db $FF ; 0x00 sheet 6\n endif\n\n org $288487 ; $140487\n .OWGFXGroupTable_sheet7\n if !UseVanillaPool == 1\n db $5B ; 0x00 sheet 7\n\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x01\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x02\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x03\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x04\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x05\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x06\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x07\n\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x08\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x09\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x0A\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x0B\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x0C\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x0D\n db $3A, $3B, $3C, $FF, $56, $4F, $FF, $5B ; 0x0E\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x0F\n\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x10\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x11\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x12\n db $3A, $3B, $3C, $FF, $50, $4B, $FF, $5B ; 0x13\n db $3A, $3B, $3C, $FF, $50, $4B, $FF, $5B ; 0x14\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x15\n db $3A, $3B, $3C, $FF, $50, $4B, $FF, $5B ; 0x16\n db $3A, $3B, $3C, $FF, $50, $4B, $FF, $5B ; 0x17\n\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x18\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x19\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x1A\n db $3A, $3B, $3C, $FF, $52, $49, $FF, $5B ; 0x1B\n db $3A, $3B, $3C, $FF, $52, $49, $FF, $5B ; 0x1C\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x1D\n db $3A, $3B, $3C, $FF, $55, $4A, $FF, $5B ; 0x1E\n db $3A, $3B, $3C, $FF, $55, $4A, $FF, $5B ; 0x1F\n\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x20\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x21\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x22\n db $3A, $3B, $3C, $FF, $52, $49, $FF, $5B ; 0x23\n db $3A, $3B, $3C, $FF, $52, $49, $FF, $5B ; 0x24\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x25\n db $3A, $3B, $3C, $FF, $55, $4A, $FF, $5B ; 0x26\n db $3A, $3B, $3C, $FF, $55, $4A, $FF, $5B ; 0x27\n\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x28\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x29\n db $3A, $3B, $3C, $FF, $57, $4C, $FF, $5B ; 0x2A\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x2B\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x2C\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x2D\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x2E\n db $3A, $3B, $3C, $FF, $55, $4A, $FF, $5B ; 0x2F\n\n db $3A, $3B, $3C, $FF, $55, $54, $FF, $5B ; 0x30\n db $3A, $3B, $3C, $FF, $55, $54, $FF, $5B ; 0x31\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x32\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x33\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x34\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x35\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x36\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x37\n\n db $3A, $3B, $3C, $FF, $55, $54, $FF, $5B ; 0x38\n db $3A, $3B, $3C, $FF, $55, $54, $FF, $5B ; 0x39\n db $3A, $3B, $3C, $FF, $FF, $FF, $FF, $5B ; 0x3A\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x3B\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x3C\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x3D\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x3E\n db $3A, $3B, $3C, $FF, $51, $4E, $FF, $5B ; 0x3F\n\n ; DW\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x40\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x41\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x42\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x43\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x44\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x45\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x46\n db $42, $43, $44, $FF, $60, $34, $FF, $59 ; 0x47\n\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x48\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x49\n db $42, $43, $44, $FF, $2D, $2E, $FF, $59 ; 0x4A\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x4B\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x4C\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x4D\n db $42, $43, $44, $FF, $33, $34, $FF, $59 ; 0x4E\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x4F\n\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x50\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x51\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x52\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x53\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x54\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x55\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x56\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x57\n\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x58\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x59\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x5A\n db $42, $43, $44, $FF, $35, $36, $FF, $59 ; 0x5B\n db $42, $43, $44, $FF, $35, $36, $FF, $59 ; 0x5C\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x5D\n db $42, $43, $44, $FF, $2B, $2C, $FF, $59 ; 0x5E\n db $42, $43, $44, $FF, $2B, $2C, $FF, $59 ; 0x5F\n\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x60\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x61\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x62\n db $42, $43, $44, $FF, $35, $36, $FF, $59 ; 0x63\n db $42, $43, $44, $FF, $35, $36, $FF, $59 ; 0x64\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x65\n db $42, $43, $44, $FF, $2B, $2C, $FF, $59 ; 0x66\n db $42, $43, $44, $FF, $2B, $2C, $FF, $59 ; 0x67\n\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x68\n db $42, $43, $44, $FF, $2F, $30, $FF, $59 ; 0x69\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x6A\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x6B\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x6C\n db $42, $43, $44, $FF, $20, $2B, $FF, $59 ; 0x6D\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x6E\n db $42, $43, $44, $FF, $2B, $2C, $FF, $59 ; 0x6F\n\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x70\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x71\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x72\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x73\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x74\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x75\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x76\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x77\n\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x78\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x79\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x7A\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x7B\n db $42, $43, $44, $FF, $37, $38, $FF, $59 ; 0x7C\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x7D\n db $42, $43, $44, $FF, $31, $32, $FF, $59 ; 0x7E\n db $42, $43, $44, $FF, $FF, $FF, $FF, $59 ; 0x7F\n\n ; SW\n db $3A, $3B, $3C, $FF, $47, $48, $FF, $5B ; 0x80\n db $3A, $3B, $3C, $FF, $47, $48, $FF, $5B ; 0x81\n db $3A, $3B, $3C, $FF, $47, $48, $FF, $5B ; 0x82\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x83\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x84\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x85\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x86\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x87\n\n db $3A, $3B, $3C, $17, $40, $41, $39, $5B ; 0x88\n db $3A, $3B, $3C, $FF, $47, $48, $FF, $5B ; 0x89\n db $3A, $3B, $3C, $FF, $47, $48, $FF, $5B ; 0x8A\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x8B\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x8C\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x8D\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x8E\n db $3A, $3B, $3C, $FF, $53, $4D, $FF, $5B ; 0x8F\n\n db $3A, $3B, $3C, $08, $00, $22, $1B, $5B ; 0x90\n db $3A, $3B, $3C, $08, $FF, $22, $1B, $5B ; 0x91\n db $3A, $3B, $3C, $06, $FF, $1F, $18, $5B ; 0x92\n db $3A, $3B, $3C, $08, $FF, $22, $1B, $5B ; 0x93\n db $3A, $3B, $3C, $3D, $53, $47, $48, $5B ; 0x94\n db $3A, $3B, $3C, $3D, $53, $56, $4F, $5B ; 0x95\n db $3A, $3B, $3C, $3D, $35, $36, $3E, $5B ; 0x96\n db $3A, $3B, $3C, $3D, $57, $4C, $3E, $5B ; 0x97\n\n db $3A, $3B, $3C, $08, $FF, $22, $1B, $5B ; 0x98\n db $3A, $3B, $3C, $08, $FF, $22, $1B, $5B ; 0x99\n db $3A, $3B, $3C, $06, $FF, $1F, $18, $5B ; 0x9A\n db $3A, $3B, $3C, $06, $FF, $1F, $18, $5B ; 0x9B\n db $3A, $3B, $3C, $3D, $53, $33, $34, $5B ; 0x9C\n db $3A, $3B, $3C, $3D, $53, $57, $4C, $5B ; 0x9D\n db $3A, $3B, $3C, $3D, $57, $4C, $3E, $5B ; 0x9E\n db $3A, $3B, $3C, $3D, $53, $4D, $3E, $5B ; 0x9F\n endif\n assert pc() <= $288980\n\n ; TODO: Add a way to edit these within ZS? Unsure.\n org $288980 ; $140980\n .DefaultGFXGroups\n\n ; LW\n org $288980 ; $140980\n .DefaultGFXGroups_sheet0\n db $3A ; Sheet 0\n\n org $288981 ; $140981\n .DefaultGFXGroups_sheet1\n db $3B ; Sheet 1\n\n org $288982 ; $140982\n .DefaultGFXGroups_sheet2\n db $3C ; Sheet 2\n\n org $288983 ; $140983\n .DefaultGFXGroups_sheet3\n db $3D ; Sheet 3\n\n org $288984 ; $140984\n .DefaultGFXGroups_sheet4\n db $53 ; Sheet 4\n\n org $288985 ; $140985\n .DefaultGFXGroups_sheet5\n db $4D ; Sheet 5\n\n org $288986 ; $140986\n .DefaultGFXGroups_sheet6\n db $3E ; Sheet 6\n\n org $288987 ; $140987\n .DefaultGFXGroups_sheet7\n db $5B ; Sheet 7\n\n ; DW\n db $42, $43, $44, $45, $2F, $30, $3F, $59\n\n ; SW\n db $3A, $3B, $3C, $3D, $47, $48, $3E, $5B\n\n ; This tells the game what each area's \"parent\" area is.\n ; For small areas this is it's own area number.\n ; For large areas this is the top left area in the 2x2 grid.\n ; For wide areas this is the left area in the 2x1 grid.\n ; For tall areas this is the top area in the 1x2 grid.\n ; In vanilla, this table was shared for all 3 worlds.\n org $288998 ; $140998\n .Overworld_ActualScreenID_New\n\n if !UseVanillaPool > 0\n ; LW\n db $00, $00, $02, $03, $03, $05, $05, $07\n db $00, $00, $0A, $03, $03, $05, $05, $0F\n db $10, $11, $12, $13, $14, $15, $16, $17\n db $18, $18, $1A, $1B, $1B, $1D, $1E, $1E\n db $18, $18, $22, $1B, $1B, $25, $1E, $1E\n db $28, $29, $2A, $2B, $2C, $2D, $2E, $2F\n db $30, $30, $32, $33, $34, $35, $35, $37\n db $30, $30, $3A, $3B, $3C, $35, $35, $3F\n\n ; DW\n db $40, $40, $42, $43, $43, $45, $45, $47\n db $40, $40, $4A, $43, $43, $45, $45, $4F\n db $50, $51, $52, $53, $54, $55, $56, $57\n db $58, $58, $5A, $5B, $5B, $5D, $5E, $5E\n db $58, $58, $62, $5B, $5B, $65, $5E, $5E\n db $68, $69, $6A, $6B, $6C, $6D, $6E, $6F\n db $70, $70, $72, $73, $74, $75, $75, $77\n db $70, $70, $7A, $7B, $7C, $75, $75, $7F\n\n ; SW\n db $80, $81, $81, $83, $84, $85, $86, $87\n db $88, $81, $81, $8B, $8C, $8D, $8E, $8F\n db $90, $91, $92, $93, $94, $95, $96, $97\n db $98, $99, $9A, $9B, $9C, $9D, $9E, $9F\n endif\n\n ; Examples:\n ; These work in vanilla: \u2502 These do not:\n ; \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u2502 \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502<->\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u2502 \u251c\u2500\u2500\u253c\u2500\u2500\u2524<->\u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502<->\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2502 \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u2502 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u2502 \u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2502 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; \u2195 \u2195 \u2502 \u2195\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u2502 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u2502 \u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2502 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; See the layout of Zelda: Interconnected Strongholds.\n ;\n ; None of these work in vanilla:\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502<->\u2502 \u2502 \u2502 \u2502 \u2502 \u2502<->\u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; \u2195 \u2195\n ; \u250c\u2500\u2500\u252c\u2500\u2500\u2510 \u250c\u2500\u2500\u252c\u2500\u2500\u2510\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u251c\u2500\u2500\u253c\u2500\u2500\u2524 \u251c\u2500\u2500\u253c\u2500\u2500\u2524\n ; \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n ; \u2514\u2500\u2500\u2534\u2500\u2500\u2518 \u2514\u2500\u2500\u2534\u2500\u2500\u2518\n ; As of 05/13/25 there aren't any released hacks that use this kind of layout.\n\n ; These values or for the area you are going to, not the one coming from.\n\n org $288A38 ; $140A38\n .ByScreen1_New ; Transitioning right\n if !UseVanillaPool > 0\n ; LW\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $1060, $1060, $0060, $1060, $F060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $1060, $1060, $F060, $1060, $1060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $0060, $0060, $1060, $1060, $F060\n\n ; DW\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $1060, $1060, $0060, $1060, $F060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $1060, $1060, $F060, $1060, $1060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $F060, $0060, $0060, $1060, $1060, $F060\n\n ; SW\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $1060, $1060, $F060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n dw $0060, $0060, $0060, $0060, $0060, $0060, $0060, $0060\n endif\n\n org $288B78 ; $140B78\n .ByScreen2_New ; Transitioning left\n if !UseVanillaPool > 0\n ; LW\n dw $0080, $0080, $0040, $0080, $0080, $0080, $0080, $0040\n dw $1080, $1080, $F040, $1080, $0080, $1080, $1080, $0040\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n dw $0080, $0080, $0040, $0080, $0080, $0040, $0080, $F080\n dw $1080, $1080, $F040, $1080, $1080, $F040, $1080, $1080\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n dw $0080, $0080, $0040, $0040, $0040, $0080, $0080, $0040\n dw $1080, $1080, $0040, $0040, $F040, $1080, $1080, $0040\n\n ; DW\n dw $0080, $0080, $0040, $0080, $0080, $0080, $0080, $0040\n dw $1080, $1080, $F040, $1080, $0080, $1080, $1080, $0040\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n dw $0080, $0080, $0040, $0080, $0080, $0040, $0080, $F080\n dw $1080, $1080, $F040, $1080, $1080, $F040, $1080, $1080\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n dw $0080, $0080, $0040, $0040, $0040, $0080, $0080, $0040\n dw $1080, $1080, $0040, $0040, $F040, $1080, $1080, $0040\n\n ; SW\n dw $0040, $0080, $0080, $0040, $0040, $0040, $0040, $0040\n dw $F040, $1080, $1080, $0040, $0040, $0040, $0040, $0040\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n dw $0040, $0040, $0040, $0040, $0040, $0040, $0040, $0040\n endif\n\n org $288CB8 ; $140CB8\n .ByScreen3_New ; Transitioning down\n if !UseVanillaPool > 0\n ; LW\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1840, $1800\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1840, $1800\n dw $1800, $17C0, $1800, $1800, $17C0, $1800, $17C0, $1800\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1800, $1840\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1800, $1840\n dw $1800, $17C0, $1800, $1800, $17C0, $1800, $1800, $17C0\n dw $1800, $1840, $1800, $1800, $1800, $1800, $1840, $1800\n dw $1800, $1840, $1800, $1800, $1800, $1800, $1840, $1800\n\n ; DW\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1840, $1800\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1840, $1800\n dw $1800, $17C0, $1800, $1800, $17C0, $1800, $17C0, $1800\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1800, $1840\n dw $1800, $1840, $1800, $1800, $1840, $1800, $1800, $1840\n dw $1800, $17C0, $1800, $1800, $17C0, $1800, $1800, $17C0\n dw $1800, $1840, $1800, $1800, $1800, $1800, $1840, $1800\n dw $1800, $1840, $1800, $1800, $1800, $1800, $1840, $1800\n\n ; SW\n dw $1800, $1800, $1840, $1800, $1800, $1800, $1800, $1800\n dw $1800, $1800, $1840, $1800, $1800, $1800, $1800, $1800\n dw $1800, $1800, $17C0, $1800, $1800, $1800, $1800, $1800\n dw $1800, $1800, $1800, $1800, $1800, $1800, $1800, $1800\n endif\n\n org $288DF8 ; $140DF8\n .ByScreen4_New ; Transitioning up\n if !UseVanillaPool > 0\n ; LW\n dw $2000, $2040, $1000, $2000, $2040, $2000, $2040, $1000\n dw $2000, $2040, $1000, $2000, $2040, $2000, $2040, $1000\n dw $1000, $0FC0, $1000, $1000, $0FC0, $1000, $1000, $0FC0\n dw $2000, $2040, $1000, $2000, $2040, $1000, $2000, $2040\n dw $2000, $2040, $1000, $2000, $2040, $1000, $2000, $2040\n dw $1000, $0FC0, $1000, $1000, $1000, $1000, $0FC0, $1000\n dw $2000, $2040, $1000, $1000, $1000, $2000, $2040, $1000\n dw $2000, $2040, $1000, $1000, $1000, $2000, $2040, $1000\n\n ; DW\n dw $2000, $2040, $1000, $2000, $2040, $2000, $2040, $1000\n dw $2000, $2040, $1000, $2000, $2040, $2000, $2040, $1000\n dw $1000, $0FC0, $1000, $1000, $0FC0, $1000, $1000, $0FC0\n dw $2000, $2040, $1000, $2000, $2040, $1000, $2000, $2040\n dw $2000, $2040, $1000, $2000, $2040, $1000, $2000, $2040\n dw $1000, $0FC0, $1000, $1000, $1000, $1000, $0FC0, $1000\n dw $2000, $2040, $1000, $1000, $1000, $2000, $2040, $1000\n dw $2000, $2040, $1000, $1000, $1000, $2000, $2040, $1000\n\n ; SW\n dw $1000, $2000, $2040, $1000, $1000, $1000, $1000, $1000\n dw $1000, $2000, $2040, $1000, $1000, $1000, $1000, $1000\n dw $1000, $1000, $1000, $1000, $1000, $1000, $1000, $1000\n dw $1000, $1000, $1000, $1000, $1000, $1000, $1000, $1000\n endif\n\n ; UNUSED:\n ; The table OverworldTransitionPositionY found at $0128C4 was moved\n ; here and the original 0x80 bytes are currently unused.\n org $288F38 ; $140F38\n .OverworldTransitionPositionY_New\n if !UseVanillaPool > 0\n ; LW\n dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n dw $0000, $0000, $0200, $0000, $0000, $0000, $0000, $0200\n dw $0400, $0400, $0400, $0400, $0400, $0400, $0400, $0400\n dw $0600, $0600, $0600, $0600, $0600, $0600, $0600, $0600\n dw $0600, $0600, $0800, $0600, $0600, $0800, $0600, $0600\n dw $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00\n dw $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00\n dw $0C00, $0C00, $0E00, $0E00, $0E00, $0C00, $0C00, $0E00\n\n ; DW\n dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n dw $0000, $0000, $0200, $0000, $0000, $0000, $0000, $0200\n dw $0400, $0400, $0400, $0400, $0400, $0400, $0400, $0400\n dw $0600, $0600, $0600, $0600, $0600, $0600, $0600, $0600\n dw $0600, $0600, $0800, $0600, $0600, $0800, $0600, $0600\n dw $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00, $0A00\n dw $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00, $0C00\n dw $0C00, $0C00, $0E00, $0E00, $0E00, $0C00, $0C00, $0E00\n\n ; SW\n dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000\n dw $0200, $0000, $0000, $0200, $0200, $0200, $0200, $0200\n dw $0400, $0400, $0400, $0400, $0400, $0400, $0400, $0400\n dw $0600, $0600, $0600, $0600, $0600, $0600, $0600, $0600\n endif\n\n ; UNUSED:\n ; The table OverworldTransitionPositionX found at 012944 was moved\n ; here and the original 0x80 bytes are currently unused.\n org $289078 ; $141078\n .OverworldTransitionPositionX_New\n if !UseVanillaPool > 0\n ; LW\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n\n ; DW\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0A00, $0E00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n dw $0000, $0000, $0400, $0600, $0600, $0A00, $0C00, $0C00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n dw $0000, $0000, $0400, $0600, $0800, $0A00, $0A00, $0E00\n\n ; SW\n dw $0000, $0200, $0200, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0200, $0200, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n dw $0000, $0200, $0400, $0600, $0800, $0A00, $0C00, $0E00\n endif\n\n ; The original trans_target_north table was moved here from $013EE2.\n ; The original 0x0080 bytes space is currently unused.\n org $2891B8 ; $1411B8\n .trans_target_north_new\n if !UseVanillaPool > 0\n ; LW\n dw $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20\n dw $FF20, $FF20, $0120, $FF20, $FF20, $FF20, $FF20, $0120\n dw $0320, $0320, $0320, $0320, $0320, $0320, $0320, $0320\n dw $0520, $0520, $0520, $0520, $0520, $0520, $0520, $0520\n dw $0520, $0520, $0720, $0520, $0520, $0720, $0520, $0520\n dw $0920, $0920, $0920, $0920, $0920, $0920, $0920, $0920\n dw $0B20, $0B20, $0B20, $0B20, $0B20, $0B20, $0B20, $0B20\n dw $0B20, $0B20, $0D20, $0D20, $0D20, $0B20, $0B20, $0D20\n\n ; DW\n dw $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20\n dw $FF20, $FF20, $0120, $FF20, $FF20, $FF20, $FF20, $0120\n dw $0320, $0320, $0320, $0320, $0320, $0320, $0320, $0320\n dw $0520, $0520, $0520, $0520, $0520, $0520, $0520, $0520\n dw $0520, $0520, $0720, $0520, $0520, $0720, $0520, $0520\n dw $0920, $0920, $0920, $0920, $0920, $0920, $0920, $0920\n dw $0B20, $0B20, $0B20, $0B20, $0B20, $0B20, $0B20, $0B20\n dw $0B20, $0B20, $0D20, $0D20, $0D20, $0B20, $0B20, $0D20\n\n ; SW\n dw $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20, $FF20\n dw $0120, $FF20, $FF20, $0120, $0120, $0120, $0120, $0120\n dw $0320, $0320, $0320, $0320, $0320, $0320, $0320, $0320\n dw $0520, $0520, $0520, $0520, $0520, $0520, $0520, $0520\n endif\n\n ; The original trans_target_west table was moved here from $013F62.\n ; The original 0x0080 bytes space is currently unused.\n org $2892F8 ; $1412F8\n .trans_target_west_new\n if !UseVanillaPool > 0\n ; LW\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0900, $0D00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0900, $0D00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0B00, $0B00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0B00, $0B00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $FF00, $0300, $0500, $0700, $0900, $0900, $0D00\n dw $FF00, $FF00, $0300, $0500, $0700, $0900, $0900, $0D00\n\n ; DW\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0900, $0D00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0900, $0D00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0B00, $0B00\n dw $FF00, $FF00, $0300, $0500, $0500, $0900, $0B00, $0B00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $FF00, $0300, $0500, $0700, $0900, $0900, $0D00\n dw $FF00, $FF00, $0300, $0500, $0700, $0900, $0900, $0D00\n\n ; SW\n dw $FF00, $0100, $0100, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $0100, $0100, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n dw $FF00, $0100, $0300, $0500, $0700, $0900, $0B00, $0D00\n endif\n\n ; The original Overworld_SpritePointers_state_0 table was moved here from\n ; $04C881. The original 0x0080 bytes space is currently unused.\n org $289438 ; $141438\n .Overworld_SpritePointers_state_0_New\n if !UseVanillaPool > 0\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB42, $CB41, $CB5B, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB5F, $CB66, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB73, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n endif\n\n ; The original Overworld_SpritePointers_state_1 table was moved here from\n ; $04C901. The original 0x0120 bytes space is currently unused.\n org $289578 ; $141578\n .Overworld_SpritePointers_state_1_New\n if !UseVanillaPool > 0\n dw $CF4C, $CB41, $CF7A, $CF84, $CB41, $CFA6, $CB41, $CFCE\n dw $CB41, $CB41, $CFDE, $CB41, $CB41, $CB41, $CB41, $CFFD\n dw $D013, $D020, $D02D, $D03A, $D041, $D051, $D05E, $D068\n dw $D078, $CB41, $D0A0, $D0B3, $CB41, $D0DB, $D0EB, $CB41\n dw $CB41, $CB41, $D125, $CB41, $CB41, $D12F, $CB41, $CB41\n dw $D148, $CB41, $D152, $D168, $D175, $D17C, $D186, $D193\n dw $D19D, $CB41, $D1E3, $D1F0, $D1FD, $D213, $CB41, $D259\n dw $CB41, $CB41, $D26C, $D279, $D292, $CB41, $CB41, $D2A8\n\n dw $CB7A, $CBB7, $CBB7, $CBC4, $CBCB, $CBCB, $CB41, $CBD5\n dw $CB41, $CB41, $CBD9, $CB41, $CB41, $CB41, $CB41, $CBF5\n dw $CC02, $CC12, $CC25, $CC35, $CC45, $CC5E, $CC74, $CC84\n dw $CC9A, $CB41, $CCCE, $CCE1, $CB41, $CD03, $CD19, $CB41\n dw $CB41, $CB41, $CD59, $CB41, $CB41, $CD6C, $CB41, $CB41\n dw $CD7F, $CD83, $CD87, $CD8B, $CD9B, $CDAB, $CDBE, $CDD1\n dw $CDE1, $CE06, $CE06, $CE16, $CE26, $CE3C, $CE7F, $CE7F\n dw $CB41, $CB41, $CE92, $CE9F, $CEB2, $CB41, $CB41, $CEC5\n\n dw $CEDB, $CEF4, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n endif\n\n ; The original Overworld_SpritePointers_state_2 table was moved here from\n ; $04CA21. The original 0x0120 bytes space is currently unused.\n org $2896B8 ; $1416B8\n .Overworld_SpritePointers_state_2_New\n if !UseVanillaPool > 0\n dw $D2B8, $CB41, $D2E3, $D2E7, $CB41, $D315, $CB41, $D343\n dw $CB41, $CB41, $D353, $CB41, $CB41, $CB41, $CB41, $D369\n dw $D37F, $D38F, $D39C, $D3A9, $D3B6, $D3C9, $D3D9, $D3E3\n dw $D3F3, $CB41, $D418, $D428, $CB41, $D447, $D454, $CB41\n dw $CB41, $CB41, $D491, $CB41, $CB41, $D49B, $CB41, $CB41\n dw $D4A8, $D4B8, $D4C2, $D4DE, $D4EE, $D4F5, $D502, $D515\n dw $D51F, $CB41, $D55C, $D56F, $D57F, $D58F, $D5D5, $D5D5\n dw $D5E5, $D5E5, $D5E5, $D5FE, $D611, $D621, $D621, $D621\n\n dw $CB7A, $CBB7, $CBB7, $CBC4, $CBCB, $CBCB, $CB41, $CBD5\n dw $CB41, $CB41, $CBD9, $CB41, $CB41, $CB41, $CB41, $CBF5\n dw $CC02, $CC12, $CC25, $CC35, $CC45, $CC5E, $CC74, $CC84\n dw $CC9A, $CB41, $CCCE, $CCE1, $CB41, $CD03, $CD19, $CB41\n dw $CB41, $CB41, $CD59, $CB41, $CB41, $CD6C, $CB41, $CB41\n dw $CD7F, $CD83, $CD87, $CD8B, $CD9B, $CDAB, $CDBE, $CDD1\n dw $CDE1, $CE06, $CE06, $CE16, $CE26, $CE3C, $CE7F, $CE7F\n dw $CB41, $CB41, $CE92, $CE9F, $CEB2, $CB41, $CB41, $CEC5\n\n dw $CEDB, $CEF4, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n dw $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41, $CB41\n endif\n\n ; The original Overworld_SignText table was moved here from\n ; $03F51D. The original 0x0120 bytes space is currently unused.\n org $2897F8 ; $1417F8\n .Overworld_SignText_New:\n if !UseVanillaPool > 0\n dw $00A7, $00A7, $0048, $0040, $0040, $00A7, $00A7, $00A7\n dw $00A7, $00A7, $003C, $0040, $0040, $00A7, $00A7, $003E\n dw $003D, $0049, $0042, $0042, $00A7, $00A7, $003F, $00B0\n dw $003B, $003B, $00A7, $003B, $003B, $0044, $00A7, $00A7\n dw $003B, $003B, $00A7, $003B, $003B, $0045, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $0041, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $0042, $00A7, $0046, $0046, $00A7\n dw $00A7, $00A7, $0047, $0043, $00A7, $0046, $0046, $00A7\n\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n dw $00A7, $00A7, $00A8, $00A7, $00A7, $00A7, $00A7, $00A9\n dw $00A7, $00AA, $00AB, $00A7, $00A7, $00A7, $00A7, $00B1\n dw $00AF, $00AF, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n dw $00AF, $00AF, $00A7, $00A7, $00A7, $00AC, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $00AD, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00AE, $00A7, $00A7, $00A7, $00A7\n\n dw $00AF, $00AF, $00A7, $00A7, $00A7, $00AC, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $00AD, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7, $00A7\n dw $00A7, $00A7, $00A7, $00AE, $00A7, $00A7, $00A7, $00A7\n endif\n}\nassert pc() <= $289938 ; $141938\n\n; ==============================================================================\n; Start of function space.\n; ==============================================================================\n\norg $289940 ; $141940\npushpc\n\n; ==============================================================================\n\nif !Func00D8D5 == 1\n\n; Replaces a function that decompresses animated tiles in certain mirror warp\n; conditions.\norg $00D8D5 ; $0058D5", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressAnimatedTiles", + "code": "AnimateMirrorWarp_DecompressAnimatedTiles:\n{\n PHX\n\n ; The decompression function increases it by 1 so subtract 1 here.\n JSL.l ReadAnimatedTable : DEC : TAY\n\n PLX\n\n JSL.l DecompOwAnimatedTiles\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "ReadAnimatedTable", + "code": "ReadAnimatedTable:\n{\n PHB : PHK : PLB\n\n REP #$30 ; Set A, X, and Y in 16bit mode.\n LDA.b $8A : TAX\n AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n SEP #$20 ; Set A in 8bit mode.\n\n ; TODO: For the sake of speed, remove these checks.\n ; $00 crashes the game so just double check that.\n LDA.w Pool_AnimatedTable, X : BNE .not00\n LDA.w Pool_DefaultGFXGroups_sheet7, Y\n\n BRA .notFF\n\n .not00\n\n ; Load the default sheet if the value is FF.\n CMP.b #$FF : BNE .notFF\n LDA.w Pool_DefaultGFXGroups_sheet7, Y\n\n .notFF\n\n SEP #$10 ; Set X and Y in 8bit mode.\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_LoadSubscreen", + "code": "AnimateMirrorWarp_LoadSubscreen:\n{\n JSL.l ActivateSubScreen\n\n ; From this point on it is the vanilla function.\n PHB : PHK : PLB\n\n ; TODO: Eventually un-hardcode this.\n ; X = 0 for LW, 8 for DW\n LDA.l SheetsTable_0AA4, X : TAY\n\n ; Get the pointer for one of the 2 Global sprite #2 sheets.\n LDA.w GFXSheetPointers_sprite_low, Y : STA.b $00\n LDA.w GFXSheetPointers_sprite_high, Y : STA.b $01\n LDA.w GFXSheetPointers_sprite_bank, Y : STA.b $02\n STA.b $05\n\n PLB\n\n REP #$31 ; Set A, X, and Y in 16bit mode. +1 no idea.\n\n ; Source address is determined above, number of tiles is 0x0040, base\n ; target address is $7F0000.\n LDX.w #$0000\n LDY.w #$0040\n LDA.b $00\n JSR.w Do3To4High16Bit\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "ActivateSubScreen", + "code": "ActivateSubScreen:\n{\n PHB : PHK : PLB\n\n PHX\n\n REP #$20 ; Set A in 16bit mode.\n\n LDA.b $8A : BNE .notForest\n ; Check if we have the master sword.\n LDA.l $7EF300 : AND.w #$0040 : BEQ .notForest\n ; The forest canopy overlay.\n BRA .turnOn\n\n .notForest\n\n ; Check if we need to disable the rain in the misery mire.\n LDA.w Pool_EnableRainMireEvent : BEQ .notMire\n LDA.b $8A : CMP.w #$0070 : BNE .notMire\n ; Has Misery Mire been triggered yet?\n LDA.l $7EF2F0 : AND.w #$0020 : BNE .notMire\n BRA .turnOn\n\n .notMire\n\n ; Check if Song of Storms rain is active\n LDA.l $7EE00E : AND.w #$00FF : BNE .turnOn\n\n ; Check if we are in the beginning phase, if not, no rain.\n ; If $7EF3C5 >= 0x02.\n LDA.l $7EF3C5 : AND.w #$00FF : CMP.w #$0002 : BCS .noRain\n BRA .turnOn\n\n .noRain\n\n ; Get the overlay value for this overworld area.\n ; ReadOverlayArray\n LDA.b $8A : ASL : TAX\n LDA.w Pool_OverlayTable, X : CMP.w #$00FF : BEQ .normal\n ; If not $FF, assume we want an overlay.\n\n .turnOn\n SEP #$20 ; Set A in 8bit mode.\n\n ; Turn on BG1 and exit (don't fall through to clear!)\n LDA.b #$01 : STA.b $1D\n BRA .exit\n\n .normal\n ; No overlay needed - clear $1D\n SEP #$20 ; Set A in 8bit mode.\n STZ.b $1D\n\n .exit\n PLX\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Palette_InitWhiteFilter_Interupt", + "code": "Palette_InitWhiteFilter_Interupt:\n{\n ; Check if we are currently in an area that is using an overlay.\n ; By this point $8A is already set to the area we are going to so flip the\n ; #$40 bit to get the one we are currently in.\n LDA.b $8A : EOR.w #$0040 : ASL : TAX\n LDA.l Pool_OverlayTable, X : CMP.w #$0096 : BNE .notPyramidBG\n ; If so, don't fade that color to white because then we will get the\n ; double fading.\n JSL.l EraseBGColors\n\n .notPyramidBG\n\n SEP #$20 ; Set A in 8bit mode.\n\n LDA.b #$08 : STA.w $06BB\n STZ.w $06BA\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "EraseBGColors", + "code": "EraseBGColors:\n{\n LDA.w #$0000\n STA.l $7EC300 : STA.l $7EC340\n STA.l $7EC500 : STA.l $7EC540\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "MirrorWarp_BuildDewavingHDMATable_Interupt", + "code": "MirrorWarp_BuildDewavingHDMATable_Interupt:\n{\n LDA.w $1C80 : ORA.w $1C90 : ORA.w $1CA0 : ORA.w $1CB0 : CMP.b $E2 : BNE .BRANCH_DELTA\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n STZ.b $9B\n\n INC.b $B0\n\n JSL.l Overworld_SetFixedColorAndScroll\n\n REP #$30 ; Set A, X, and Y in 16bit mode.\n\n ; Check if we are warping to an area with the pyramid BG.\n JSL.l ReadOverlayArray : CMP.w #$0096 : BEQ .dont_align_bgs\n LDA.b $E2 : STA.b $E0\n STA.w $0120\n STA.w $011E\n\n LDA.b $E8 : STA.b $E6\n STA.w $0122\n STA.w $0124\n\n .dont_align_bgs\n .BRANCH_DELTA\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "PreOverworld_LoadProperties_Interupt", + "code": "PreOverworld_LoadProperties_Interupt:\n{\n LDX.b #$F3\n\n ; If the volume was set to half, set it back to full.\n LDA.w $0132 : CMP.b #$F2 : BEQ .setToFull\n ; If we're in the dark world\n ; If area number is < 0x40 or >= 80 we are not in the dark world.\n LDA.b $8A : CMP.b #$40 : BCC .setNormalSong\n CMP.b #$80 : BCS .setNormalSong\n ; Does Link have a moon pearl?\n LDA.l $7EF357 : BNE .setNormalSong\n ; If not, play the music that plays when you're a bunny in the\n ; Dark World.\n LDX.b #$04\n\n BRA .setToFull\n\n .setNormalSong\n\n LDX.b $8A\n LDA.l $7F5B00, X : AND.b #$0F : TAX\n\n .setToFull\n\n ; The value written here will take effect during NMI.\n STX.w $0132\n\n ; Set the ambient sound. This is a bug present in vanilla. This was removed\n ; because this is also done later on and does not need to be done twice.\n ; Doing so creates a slight pause and causes the ambient sound to stop and\n ; start playing again rather than just continuing to play.\n ;LDX.b $8A\n ;LDA.l $7F5B00, X : LSR #4 : STA.w $012D\n\n ; The decompression function increases it by 1 so subtract 1 here.\n JSL.l ReadAnimatedTable : DEC : TAY\n JSL.l DecompOwAnimatedTiles\n\n ; Decompress all other graphics.\n JSL.l InitTilesets\n\n ; Load palettes for overworld.\n JSR.w Overworld_LoadAreaPalettes\n\n LDX.b $8A\n LDA.l $7EFD40, X : STA.b $00\n LDA.l OverworldPalettesScreenToSet_New, X\n\n ; Load some other palettes.\n JSL.l Overworld_LoadPalettes\n\n ; Sets the background color (changes depending on area).\n JSL.l Palette_SetOwBgColor_Long\n\n LDA.b $10 : CMP.b #$08 : BNE .specialArea2\n ; Copies $7EC300[0x200] to $7EC500[0x200].\n JSR.w Dungeon_LoadPalettes_cacheSettings\n\n BRA .normalArea2\n\n .specialArea2\n\n ; Apparently special overworld handles palettes a bit differently?\n JSR.w SpecialOverworld_CopyPalettesToCache\n\n .normalArea2\n\n ; Sets fixed colors and scroll values.\n JSL.l Overworld_SetFixedColorAndScroll\n\n ; Set darkness level to zero for the overworld.\n LDA.b #$00 : STA.l $7EC017\n\n ; Sets up properties in the event a tagalong shows up.\n JSL.l Tagalong_Init\n\n ; Set animated sprite gfx for area 0x00 and 0x40.\n LDA.b $8A : AND.b #$3F : BNE .notForestArea\n LDA.b #$1E\n JSL.l GetAnimatedSpriteTile_variable\n\n .notForestArea\n\n ; 0x09 is the normal overworld $10 module.\n LDX.b #$09\n\n ; Check if we are going to a SW area. If so we need to move into the SW\n ; mode after we are done loading.\n LDA.b $8A : AND.b #$80 : BEQ .notSWArea\n ; 0x0B is the SW overworld $10 module.\n LDX.b #$0B\n\n .notSWArea\n\n ; Cache the overworld mode.\n STX.w $010C\n\n JSL.l Sprite_OverworldReloadAll\n\n ; Are we in the dark world? If so, there's no warp vortex there.\n LDA.b $8A : AND.b #$40 : BNE .noWarpVortex\n JSL.l Sprite_ReinitWarpVortex\n\n .noWarpVortex\n\n ; Check if Blind disguised as a crystal maiden was following us when\n ; we left the dungeon area.\n LDA.l $7EF3CC : CMP.b #$06 : BNE .notBlindGirl\n ; If it is Blind, kill her!\n LDA.b #$00 : STA.l $7EF3CC\n\n .notBlindGirl\n\n ; Reset player variables.\n STZ.b $6C ; In doorway flag\n STZ.b $3A ; BY Bitfield\n STZ.b $3C ; B Button timer\n STZ.b $50 ; Link strafe\n STZ.b $5E ; Link speed handler\n STZ.w $0351 ; Link feet gfx fx\n\n ; Reinitialize many of Link's gameplay variables.\n JSR.w DeleteCertainAncillaeStopDashing\n\n LDA.l $7EF357 : BNE .notBunny\n LDA.l $7EF3CA : BEQ .notBunny\n LDA.b #$01 : STA.w $02E0\n STA.b $56\n\n LDA.b #$17 : STA.b $5D\n\n JSL.l LoadGearPalettes_bunny\n\n .notBunny\n\n ; Set screen to mode 1 with BG3 priority.\n LDA.b #$09 : STA.b $94\n\n LDA.b #$00 : STA.l $7EC005\n\n STZ.w $046C ; Collision BG1 flag\n STZ.b $EE ; Reset Link layer to BG2\n STZ.w $0476 ; Another layer flag\n\n ; Move to Overworld_LoadSubscreenAndSilenceSFX1 which is the 1st\n ; submodule of Module_PreOverworld.\n INC.b $11\n INC.b $16 ; NMI HUD Update flag\n\n STZ.w $0402 : STZ.w $0403\n\n ; Bleeds into the next function\n}\n\n; Vanilla alternate entry point. Called in 4 different locations all of\n; which are overwritten above.", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_LoadMusicIfNeeded", + "code": "Overworld_LoadMusicIfNeeded:\n{\n LDA.w $0136 : BEQ .no_music_load_needed\n SEI\n\n ; Shut down NMI until music loads.\n STZ.w SNES.NMIVHCountJoypadEnable\n\n ; Stop all HDMA.\n STZ.w SNES.HDMAChannelEnable\n\n STZ.w $0136\n\n LDA.b #$FF : STA.w SNES.APUIOPort0\n\n JSL.l Sound_LoadLightWorldSongBank\n\n ; Re-enable NMI and joypad.\n LDA.b #$81 : STA.w SNES.NMIVHCountJoypadEnable\n\n .no_music_load_needed\n\n ; PLACE CUSTOM GFX LOAD HERE!\n JSL Oracle_CheckForChangeGraphicsNormalLoadBoat\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Credits_LoadScene_Overworld_PrepGFX_Interupt", + "code": "Credits_LoadScene_Overworld_PrepGFX_Interupt:\n{\n ; The decompression function increases it by 1 so subtract 1 here.\n JSL.l ReadAnimatedTable : DEC : TAY\n JSL.l DecompOwAnimatedTiles\n\n ; The current scene of the Module_EndSequence module. Example: 0x04 is\n ; the shot of kakariko and 0x06 is the shot of the desert palace.\n LDA.b $11 : LSR : TAX\n LDA.l Credits_LoadScene_PrepGFX_sprite_gfx, X : STA.w $0AA3\n LDA.l Credits_LoadScene_PrepGFX_sprite_palette, X : PHA\n\n JSL.l InitTilesets\n\n ; Load Palettes.\n JSR.w Overworld_LoadAreaPalettes\n\n PLA : STA.b $00\n\n LDX.b $8A\n LDA.l OverworldPalettesScreenToSet_New, X\n JSL.l Overworld_LoadPalettes\n\n LDA.b #$01 : STA.w $0AB2\n\n JSL.l Palette_Hud\n\n LDA.l $11 : BNE .BRANCH_4\n JSL.l CopyFontToVram\n\n .BRANCH_4\n\n JSR.w Dungeon_LoadPalettes_cacheSettings\n JSL.l Overworld_SetFixedColorAndScroll\n\n LDA.l $8A : CMP.b #$80 : BCC .BRANCH_5\n JSL.l Palette_SetOwBgColor_Long\n\n .BRANCH_5\n\n LDA.b #$09 : STA.b $94\n\n INC.b $B0\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Spotlight_ConfigureTableAndControl_Interupt", + "code": "Spotlight_ConfigureTableAndControl_Interupt:\n{\n LDA.b $10 : CMP.b #$09 : BEQ .dontPrepForDungeon\n CMP.b #$0B : BEQ .dontPrepForDungeon\n ; Force V-blank in preperation for Dungeon mode.\n JSL.l EnableForceBlank\n\n JSL.l Link_ItemReset_FromOverworldThings\n\n .dontPrepForDungeon\n\n LDA.b $10 : CMP.b #$09 : BEQ .inOWMode\n CMP.b #$0B : BNE .notInOWMode\n .inOWMode\n\n LDA.b $A1 : BNE .BRANCH_DELTA\n LDA.b $A0 : CMP.b #$20 : BEQ .BRANCH_EPSILON\n\n .BRANCH_DELTA\n\n LDA.b #$0A\n\n LDX.b $2F : BNE .BRANCH_ZETA\n LDA.b #$0B\n\n .BRANCH_ZETA\n\n STA.b $11\n\n .BRANCH_EPSILON\n\n LDA.b #$10 : STA.w $069A\n\n ; Not an extended door type (palace or sanctuary).\n LDA.w $0696 : ORA.w $0698 : BEQ .BRANCH_GAMMA\n LDA.w $0699 : BEQ .BRANCH_GAMMA\n LDX.b #$00\n\n ASL : BCC .BRANCH_THETA\n LDX.b #$18\n\n .BRANCH_THETA\n\n LDA.w $0699 : AND.b #$7F : STA.w $0699\n\n STX.w $0692\n STZ.w $0690\n\n LDA.b #$09 : STA.b $11\n\n STZ.b $B0\n\n LDA.b #$15 : STA.w $012F\n\n .BRANCH_GAMMA\n .notInOWMode\n\n STZ.b $96 : STZ.b $97 : STZ.b $98\n STZ.b $1E : STZ.b $1F : STZ.w $03EF\n\n REP #$30\n\n ; Setup fixed color values based on area number.\n LDX.w #$4C26\n LDY.w #$8C4C\n\n ; TODO: Wtf why is this 0x00?\n ; Check for LW death mountain.\n JSL.l ReadOverlayArray : CMP.w #$0095 : BEQ .mountain\n LDX.w #$4A26\n LDY.w #$874A\n\n ; Check for DW death mountain.\n CMP.w #$009C : BEQ .mountain\n BRA .other\n\n .mountain\n\n STX.b $9C\n STY.b $9D\n\n .other\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_ReloadSubscreenOverlay_Interupt", + "code": "Overworld_ReloadSubscreenOverlay_Interupt:\n{\n SEP #$20 ; Set A in 8bit mode.\n\n ; Check to see if we are using the mirror so that our $A0 doesn't\n ; accidentally persist and we trigger rain sounds when we don't want them.\n LDA.b $11 : CMP.b #$23 : BEQ .mirrorWarp\n CMP.b #$24 : BEQ .mirrorWarp\n CMP.b #$2C : BEQ .mirrorWarp\n ; We can't warp to or from a special area anyway so this is fine.\n\n REP #$20 ; Set A in 16bit mode.\n\n ; Check to see if we are in a SW overworld area.\n LDA.b $8A : CMP.w #$0080 : BCC .notExtendedArea\n ; $0182 is the exit room number used for getting to Zora's Domain.\n LDA.b $A0 : CMP.w #$0182 : BNE .notZoraFalls\n SEP #$20 ; Set A in 8bit mode.\n\n ; Play rain (waterfall) sound.\n ; TODO: Write a patch to change/disable this.\n LDA.b #$01 : STA.w $012D\n\n REP #$20 ; Set A in 16bit mode.\n\n .notZoraFalls\n\n ; Check for exit rooms (the faked way of getting from one overworld\n ; area to another). $0180 is the exit room number used for getting\n ; into the mastersword area.\n LDA.b $A0 : CMP.w #$0180 : BNE .notMasterSwordArea\n ; If the Master sword is retrieved, don't do the mist overlay.\n LDA.l $7EF300 : AND.w #$0040 : BNE .masterSwordRecieved\n JSL.l ReadOverlayArray : TAX\n\n .loadOverlayShortcut\n\n ; Save the overlay for later.\n PHX\n\n JMP.w .loadSubScreenOverlay\n\n .masterSwordRecieved\n\n ; TODO: Write a patch to change what overlay is loaded here?\n BRA .noSubscreenOverlay\n\n .notMasterSwordArea\n\n ; TODO: Write a patch to change what overlay is loaded here?\n ; The second mastersword/under the bridge area.\n LDX.w #$0094\n\n ; $0181 is the exit room number used for getting into the under the\n ; bridge area.\n LDA.b $A0 : CMP.w #$0181 : BEQ .loadOverlayShortcut\n ; TODO: Write a patch to change what overlay is loaded here?\n ; The second Triforce room area.\n LDX.w #$0093\n\n ; $0189 is the exit room number used for getting to the\n ; Triforce room.\n CMP.w #$0189 : BEQ .loadOverlayShortcut\n .noSubscreenOverlay\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n ; Clear TSQ PPU Register, to be handled in NMI.\n STZ.b $1D\n\n ; Submodule 0x18 (Module09_18:) of Module 0x0B\n ; (Overworld Mode (special overworld))\n INC.b $11\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Func02B2D4", + "code": "Func02B2D4:\n{\n JSR.w Overworld_LoadSubscreenAndSilenceSFX1\n\n ; In vanilla a check for the overlay is done here but we don't need\n ; it at all. It is handled in Func02B391 later on.\n ;JSL.l EnableSubScreenCheckForPyramid\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "EnableSubScreenCheckForPyramid", + "code": "EnableSubScreenCheckForPyramid:\n{\n REP #$20 ; Set A in 16bit mode.\n\n LDA.b $8A : ASL : TAX\n LDA.w Pool_OverlayTable, X : CMP.w #$0096 : BNE .notPyramidOrCastle\n SEP #$20 ; Set A in 8bit mode.\n\n LDA.b #$01 : STA.b $1D\n\n .notPyramidOrCastle\n\n SEP #$20 ; Set A in 8bit mode.\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "MirrorWarp_LoadSpritesAndColors_Interupt", + "code": "MirrorWarp_LoadSpritesAndColors_Interupt:\n{\n LDA.l OverworldPalettesScreenToSet_New, X\n JSL.l Overworld_LoadPalettes\n\n JSL.l Overworld_SetScreenBGColorCacheOnly\n JSL.l Overworld_SetFixedColorAndScroll\n\n JSL.l EnableSubScreenCheckForPyramid\n\n REP #$20 ; Set A in 16bit mode.\n\n LDX.b #$00\n LDA.w #$7FFF\n\n .setBgPalettesToWhite\n\n STA.l $7EC540, X : STA.l $7EC560, X\n STA.l $7EC580, X : STA.l $7EC5A0, X\n STA.l $7EC5C0, X : STA.l $7EC5E0, X\n INX : INX : CPX.b #$20 : BNE .setBgPalettesToWhite\n\n ; Also set the background color to white.\n STA.l $7EC500\n\n JSL.l ReadOverlayArray\n\n ; This sets the color to transparent so that we don't see an additional\n ; white layer on top of the pyramid bg.\n CMP.w #$0096 : BNE .notPyramidOfPower\n LDA.w #$0000 : STA.l $7EC500\n STA.l $7EC540\n\n .notPyramidOfPower\n\n SEP #$20 ; Set A in 8bit mode.\n\n JSL.l Sprite_ResetAll\n JSL.l Sprite_OverworldReloadAll\n JSL.l Link_ItemReset_FromOverworldThings\n JSR.w DeleteCertainAncillaeStopDashing\n\n LDA.b #$14 : STA.b $5D\n\n LDA.b $8A : AND.b #$40 : BNE .darkWorld\n JSL.l Sprite_ReinitWarpVortex\n\n .darkWorld\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_OperateCameraScroll_Interupt", + "code": "Overworld_OperateCameraScroll_Interupt:\n{\n ; Check for the pyramid BG.\n JSL.l ReadOverlayArray : CMP.w #$0096 : BNE .BRANCH_IOTA\n JSL.l BGControl\n\n BRA .BRANCH_IOTA\n\n assert pc() <= $02BC60 ; $013C60\n\n org $02BC60 ; $013C60\n .BRANCH_IOTA\n}\nassert pc() <= $02BC60 ; $013C60\n\nelse\n\norg $02BC44 ; $013C44\ndb $A5, $8A, $29, $3F, $00, $C9, $1B, $00\ndb $D0, $12, $A9, $00, $06, $C5, $E6, $90\ndb $02, $85, $E6, $A9, $C0, $06, $C5, $E6\ndb $B0, $02, $85, $E6\n\nendif\n\npullpc", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "ReadOverlayArray", + "code": "ReadOverlayArray:\n{\n PHB : PHK : PLB\n\n LDA.b $8A : ASL : TAX\n LDA.w Pool_OverlayTable, X\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "BGControl", + "code": "BGControl:\n{\n ; TODO: I'm pretty sure this part was AHE specific. Verify.\n ; Check link's Y position. This will need to be changed per area and per\n ; need.\n ;LDA.b $20 : CMP.w #$08E0 : BCC .startShowingMountains\n ; Lock the position so that nothing shows through the trees.\n ;LDA.w #$06C0 : STA.b $E6\n\n ;RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldScrollTransition_Interupt", + "code": "OverworldScrollTransition_Interupt:\n{\n PHA\n JSL.l ReadOverlayArray2\n PLA\n\n ; Check for the pyramid BG.\n CPY.b #$96 : BEQ .dontMoveBg1\n ; This shifts the BG over by a half small area's width. This is to\n ; line up the mountain with the tower in the distance at the appropriate\n ; location when coming into the pyramid area from the right.\n ; This also keeps the BG aligned when entering the area from below,\n ; keeping you from seeing the mountains through the trees.\n STA.b $E0, X\n\n ; NOTE: There is currently a bug in vanilla where if you exit a dungeon\n ; into the LW death mountain the sky background will become miss-aligned\n ; and this movement will cause the sky to flicker or jump when moving to\n ; another area. In order to fix this you would have to find the\n ; alignment exit code and change how the game aligns BG2 when exiting.\n ; Possibly when using the bird too.\n\n .dontMoveBg1\n}\nassert pc() <= $02C039 ; $014039\n\nelse\n\norg $02C02D ; $01402D\ndb $A4, $8A, $C0, $1B, $F0, $06, $C0, $5B\ndb $F0, $02, $95, $E0\n\nendif\n\npullpc", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "ReadOverlayArray2", + "code": "ReadOverlayArray2:\n{\n PHX\n\n ; A is already 16 bit here.\n REP #$10 ; Set X and Y in 16bit mode.\n\n ; ReadOverlayArray\n LDA.b $8A : ASL : TAX\n LDA.l Pool_OverlayTable, X : TAY\n\n SEP #$10 ; Set X and Y in 8bit mode.\n\n PLX\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_LoadAreaPalettes", + "code": "Overworld_LoadAreaPalettes:\n{\n ; $0AB3 =\n ; 0 - LW\n ; 1 - DW\n ; 2 - LW death mountain\n ; 3 - DW death mountain\n ; 4 - triforce room\n LDX.b $8A\n LDA.l Pool_MainPaletteTable, X : STA.w $0AB3\n\n ; Reset pal buffer high byte.\n STZ.w $0AA9\n\n ; Load SP1 through SP4.\n JSL.l Palette_MainSpr\n\n ; Load SP0 (2nd half) and SP6 (2nd half).\n JSL.l Palette_MiscSpr\n\n ; Load SP5 (1st half).\n JSL.l Palette_SpriteAux1\n\n ; Load SP6 (1st half).\n JSL.l Palette_SpriteAux2\n\n ; Load SP5 (2nd half, 1st 3 colors), which is the sword palette.\n JSL.l Palette_Sword\n\n ; Load SP5 (2nd half, next 4 colors), which is the shield.\n JSL.l Palette_Shield\n\n ; Load SP7 (full) Link's whole palette, including Armor.\n JSL.l Palette_ArmorAndGloves\n\n LDX.b #$01\n\n ; Changes the Palette_SpriteAux3 load depending on if we are in the LW or\n ; not. Will probably need it own custom table in the future? not sure.\n LDA.l $7EF3CA : AND.b #$40 : BEQ .lightWorld2\n LDX.b #$03\n\n .lightWorld2\n\n ; Reset pal buffer0.\n STX.w $0AAC\n\n ; Load SP0 (first half) (or SP7 (first half)).\n JSL.l Palette_SpriteAux3\n\n ; Load BP0 and BP1 (first halves).\n JSL.l Palette_Hud\n\n ; Load BP2 through BP5 (first halves).\n JSL.l Palette_OverworldBgMain\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "RainAnimation", + "code": "RainAnimation:\n{\n LDA.b $8C : CMP.b #$9F : BEQ .rainOverlaySet\n ; Check the progress indicator.\n LDA.l $7EF3C5 : CMP.b #$02 : BRA .skipMovement\n .rainOverlaySet\n\n ; If misery mire has been opened already, we're done.\n ;LDA.l $7EF2F0 : AND.b #$20 : BNE .skipMovement\n ; Check the frame counter.\n ; On the 0x03rd frame, cue the lightning.\n LDA.b $1A : CMP.b #$03 : BEQ .lightning\n ; On the 0x05th frame, normal light level.\n CMP.b #$05 : BEQ .normalLight\n ; On the 0x24th frame, cue the thunder.\n CMP.b #$24 : BEQ .thunder\n ; On the 0x2Cth frame, normal light level.\n CMP.b #$2C : BEQ .normalLight\n ; On the 0x58th frame, cue the lightning.\n CMP.b #$58 : BEQ .lightning\n ; On the 0x5Ath frame, normal light level.\n CMP.b #$5A : BNE .moveOverlay\n\n .normalLight\n\n ; Keep the screen semi-dark.\n LDA.b #$72\n\n BRA .setBrightness\n\n .thunder\n\n ; Play the thunder sound when outdoors.\n LDX.b #$36 : STX.w $012E\n\n .lightning\n\n ; Make the screen flash with lightning.\n LDA.b #$32\n\n .setBrightness\n\n STA.b $9A\n\n .moveOverlay\n\n ; Overlay is only moved every 4th frame.\n LDA.b $1A : AND.b #$03 : BNE .skipMovement\n LDA.w $0494 : INC : AND.b #$03 : STA.w $0494\n TAX\n\n LDA.b $E1 : CLC : ADC.l OWOverlay_HShift, X : STA.b $E1\n LDA.b $E7 : CLC : ADC.l OWOverlay_VShift, X : STA.b $E7\n\n .skipMovement\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NewOverworld_FinishTransGfx", + "code": "NewOverworld_FinishTransGfx:\n{\n PHB : PHK : PLB\n\n ; The whirlpool code resuses this code so don't do any of the custom stuff if\n ; we are in the whirlpool module.\n LDA.b $11 : CMP.b #$2E : BEQ .whirpool\n LDA.w TransGFXModuleFrame : BNE .notFirstFrame\n JSR.w CheckForChangeGraphicsTransitionLoad\n\n ; Prep the new static gfx tile sets.\n JSR.w LoadTransMainGFX\n\n ; A check to see if we need to Prep the GFX in the buffer.\n ; Saves about a frame.\n LDA.b $04 : BEQ .dontPrep\n JSR.w PrepTransMainGFX\n\n .dontPrep\n\n ; Move on to next submodule.\n INC.b $11\n\n .notFirstFrame\n\n LDA.b #$08 : STA.b $06\n\n JSR.w BlockGFXCheck\n\n ; If we haven't made it to frame 8, don't move on yet.\n CPY.b #$08 : BCC .return\n ; Move on to next submodule.\n INC.b $11\n\n .return\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "BlockGFXCheck", + "code": "BlockGFXCheck:\n{\n REP #$30\n\n ; $0E = $8A * 8\n LDA.b $8A : AND.w #$00FF : ASL #3 : STA.b $0E\n\n STZ.b $02\n STZ.b $04\n STZ.w NewNMITarget1\n STZ.w NewNMISource1\n STZ.w NewNMICount1\n STZ.w NewNMITarget2\n STZ.w NewNMISource2\n STZ.w NewNMICount2\n\n SEP #$30\n\n LDY.w TransGFXModuleFrame\n .loop\n\n ; Get the sheet that needs to be loaded.\n LDA.w .sheetLoadOrder, Y : STA $02\n\n REP #$30\n AND.w #$00FF : CLC : ADC.b $0E : TAX\n SEP #$20\n LDA.l Pool_OWGFXGroupTable_sheet0, X : STA.b $00\n SEP #$10\n\n ; Check if it is #$FF.\n CMP.b #$FF : BEQ .dontLoadThisSheet\n ; Get the sheet that is currently loaded and check if the sheets\n ; are the same.\n LDX.b $02\n LDA.w TransGFXModule_PriorSheets, X : CMP.b $00 : BEQ .dontLoadThisSheet\n LDA.b $00 : STA.w TransGFXModule_PriorSheets, X\n\n ; Trigger NMI module: NMI_DoNothing which we replaced with\n ; NMI_UpdateChr_Bg2HalfAndAnimated down below.\n LDA.b #$06 : STA.b $17\n STA.w $0710\n\n TXA : ASL : TAX\n\n REP #$20\n\n LDA.b $04 : BNE .second\n LDA.w .sheetTarget, X : STA.w NewNMITarget1\n LDA.w .sheetSource, X : STA.w NewNMISource1\n LDA.w .sheetCount, X : STA.w NewNMICount1\n\n SEP #$20\n\n INC.b $04\n\n BRA .first\n\n .second\n\n LDA.w .sheetTarget, X : STA.w NewNMITarget2\n LDA.w .sheetSource, X : STA.w NewNMISource2\n LDA.w .sheetCount, X : STA.w NewNMICount2\n\n SEP #$20\n\n INC.b $04\n\n INY\n\n BRA .twoReady\n\n .first\n .dontLoadThisSheet\n INY : CPY.b $06 : BCC .loop\n\n .twoReady\n\n STY.w TransGFXModuleFrame\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "CheckForChangeGraphicsTransitionLoad", + "code": "CheckForChangeGraphicsTransitionLoad:\n{\n ; Are we currently in a mosaic?\n LDA.b $11 : CMP.b #$0F : BEQ .mosaic\n ; Are we entering a special area?\n CMP.b #$1A : BEQ .mosaic\n ; Are we leaving a special area?\n CMP.b #$26 : BEQ .mosaic\n ; Just a normal transition, Not a mosaic.\n LDA.l Pool_EnableAnimated : BEQ .dontUpdateAnimated1\n ; Check to see if we need to update the animated tiles\n ; by checking what was previously loaded.\n JSL.l ReadAnimatedTable : CMP.w AnimatedTileGFXSet : BEQ .dontUpdateAnimated1\n STA.w AnimatedTileGFXSet\n DEC : TAY\n\n ; This forces the game toupdate the animated tiles\n ; when going from one area to another.\n JSL.l DecompOwAnimatedTiles\n\n .dontUpdateAnimated1\n\n LDA.w Pool_EnableMainPalette : BEQ .dontUpdateMain1\n ; Check to see if we need to update the main palette by\n ; checking what was previously loaded.\n LDX.b $8A\n LDA.w Pool_MainPaletteTable, X : CMP.w $0AB3 : BEQ .dontUpdateMain1\n STA.w $0AB3\n\n ; Run the modified routine that loads the buffer\n ; and normal color ram.\n JSL.l Palette_OverworldBgMain2\n\n .dontUpdateMain1\n\n LDA.w Pool_EnableBGColor : BEQ .dontUpdateBGColor1\n REP #$30 ; Set A, X, and Y in 16bit mode.\n\n ; Get area code and times it by 2.\n LDA.b $8A : ASL : TAX\n\n ; Where ZS saves the array of palettes\n LDA.w Pool_BGColorTable, X\n STA.l TimeState.SubColor\n JSL Oracle_BackgroundFix\n ; STA.l $7EC300 : STA.l $7EC500\n ; STA.l $7EC540 : STA.l $7EC340\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n ; Don't update the CRAM until later when the overlays are\n ; loaded so that way the BG overlays have a chance to hide\n ; the cracks.\n ;INC.b $15\n\n .dontUpdateBGColor1\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "CheckForChangeGraphicsTransitionLoadRetrun", + "code": " CheckForChangeGraphicsTransitionLoadRetrun:\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "SkipOverworld_FinishTransGfx_firstHalf", + "code": " SkipOverworld_FinishTransGfx_firstHalf:\n\n ; Move on to next submodule.\n INC.b $11\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Palette_OverworldBgMain2", + "code": "Palette_OverworldBgMain2:\n{\n REP #$21\n\n LDA.w $0AB3 : ASL : TAX\n LDA.l PaletteIDtoOffset_OW_Main, X : ADC.w #PaletteData_owmain : STA.b $00\n\n REP #$10\n\n ; Target BP2 through BP6 (first halves).\n ; Each palette has 7 colors.\n ; Load 5 palettes.\n LDA.w #$0042\n LDX.w #$0006\n LDY.w #$0004\n JSR.w Palette_MultiLoad_NonBuffer\n\n SEP #$30\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Palette_MultiLoad_NonBuffer", + "code": "Palette_MultiLoad_NonBuffer:\n{\n STA.b $04 ; Save the values for future reference.\n STX.b $06\n STY.b $08\n\n ; The absolute address at $00 was planted in the calling function. This\n ; value is the bank #$1B ( => D in Rom) The address is found from $0AB6 and\n ; of course, store it at $02.\n LDA.w #$001B : STA.b $02\n\n .nextPalette\n ; $0AA8 + A parameter will be the X value.\n LDA.w $0AA8 : CLC : ADC.b $04 : TAX\n\n LDY.b $06 ; Tell me how long the palette is.\n\n .copyColors\n ; We're loading A from the address set up in the calling function.\n LDA.b [$00]\n STA.l TimeState.SubColor\n BEQ +\n JSL Oracle_ColorSubEffect\n +\n STA.l $7EC300, X\n STA.l $7EC500, X\n\n ; Increment the absolute portion of the address by two, and\n ; decrease the color count by one.\n INC.b $00 : INC.b $00\n\n INX : INX\n\n ; So basically loop (Y+1) times, taking (Y * 2 bytes) to $7EC300, X.\n DEY : BPL .copyColors\n\n ; This technique bumps us up to the next 4bpp (16 color) palette.\n LDA.b $04 : CLC : ADC.w #$0020 : STA.b $04\n\n ; Decrease the number of palettes we have to load.\n DEC.b $08\n\n BPL .nextPalette\n\n ; We're done loading palettes.\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "LoadTransMainGFX", + "code": "LoadTransMainGFX:\n{\n ; Setup the decompression buffer address.\n ; $00[3] = $7E4000\n STZ.b $00\n LDA.b #$40 : STA.b $01\n LDA.b #$7E : STA.b $02\n\n STZ.b $04\n\n REP #$30\n ; $0E = $8A * 8\n LDA.b $8A : AND.w #$00FF : ASL #3 : STA.b $0E\n SEP #$20\n\n ; Sheet 0 (static 0)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet0, X : CMP.b #$FF : BEQ .noBgGfxChange0\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+0 : BEQ .noBgGfxChange0\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange0\n\n SEP #$10\n\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 1 (static 1)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet1, X : CMP.b #$FF : BEQ .noBgGfxChange1\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+1 : BEQ .noBgGfxChange1\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange1\n\n SEP #$10\n\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 2 (static 2)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet2, X : CMP.b #$FF : BEQ .noBgGfxChange2\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+2 : BEQ .noBgGfxChange2\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange2\n\n SEP #$10\n\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 7 (animated)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet7, X : CMP.b #$FF : BEQ .noBgGfxChange7\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+7 : BEQ .noBgGfxChange7\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange7\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "PrepTransMainGFX", + "code": "PrepTransMainGFX:\n{\n ; Set bank for source address.\n LDA.b #$7E : STA.b $02\n STA.b $05\n\n REP #$31\n\n ; Source address is $7E4000, number of tiles is 0x40,\n ; base address is $7F0000.\n LDX.w #$2000\n LDY.w #$0040\n LDA.w #$4000\n\n ; The first graphics pack always uses the higher 8 palette values.\n JSL.l Do3To4High16BitLONG\n\n ; Number of tiles for next set is 0xC0.\n LDY.w #$00C0\n LDA.b $03\n JSL.l Do3To4Low16BitLONG\n\n SEP #$30\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "CheckForChangeGraphicsNormalLoad", + "code": "CheckForChangeGraphicsNormalLoad:\n{\n PHB : PHK : PLB\n\n JSL.l InitTilesets ; Replaced code.\n\n JSL.l ReadAnimatedTable : STA.w AnimatedTileGFXSet\n DEC : TAY\n\n ; This function is not needed here and is handled somewhere else. This\n ; forces the game to update the animated tiles when going from one area to\n ; another.\n ;JSL.l DecompOwAnimatedTiles\n\n ; PLACE CUSTOM GFX LOAD HERE!\n JSL Oracle_CheckForChangeGraphicsNormalLoadBoat\n\n ; TODO: Instead of the place custom gfx load here, pre-allocate a function.\n ; Some free space\n ; ZSOW_LoadCustomGraphics:\n ; Maybe register push/pops or leave that to users\n ; User defined custom graphics code\n ; RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "BirdTravel_LoadTargetArea_Interupt", + "code": "BirdTravel_LoadTargetArea_Interupt:\n{\n JSL.l ReadAnimatedTable : STA.w AnimatedTileGFXSet\n DEC : TAY\n\n ; From this point on it is the vanilla function.\n JSL.l DecompOwAnimatedTiles\n JSL.l Overworld_SetFixedColorAndScroll\n\n STZ.w $0AA9\n STZ.w $0AB2\n\n JSL.l InitTilesets\n\n ; Move to the next submodule (BirdTravel_LoadAmbientOverlay) the next frame.\n INC.w $0200\n\n STZ.b $B2\n\n JSL.l Overworld_ReloadSubscreenOverlayAndAdvance\n\n ; Play sound effect indicating we're coming out of map mode.\n LDA.b #$10 : STA.w $012F\n\n JSL.l LoadAmbientSound\n\n ; If it's a different music track than was playing where we came from,\n ; simply change to it (as opposed to setting volume back to full).\n LDA.l $7F5B00, X : AND.b #$0F : TAX : CPX.w $0130 : BNE .different_music\n ; Otherwise, just set the volume back to full.\n LDX.b #$F3\n\n .different_music\n\n STX.w $012C\n\n ; PLACE CUSTOM GFX LOAD HERE!\n JSL Oracle_CheckForChangeGraphicsNormalLoadBoat\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "LoadAmbientSound", + "code": "LoadAmbientSound:\n{\n PHB : PHK : PLB\n\n ; Check if Song of Storms rain is active\n LDA.l $7EE00E : BEQ .noSongOfStorms\n LDA.b #$01 : STA.w $012D ; Rain SFX\n BRA .disableRainSound\n .noSongOfStorms\n\n ; Reset the ambient sound effect to what it was.\n LDX.b $8A\n LDA.l $7F5B00, X : LSR #4 : STA.w $012D\n\n ; Check if we need to stop the rain sound in the misery mire.\n LDA.w Pool_EnableRainMireEvent : BEQ .disableRainSound\n LDA.b $8A : CMP.b #$70 : BNE .disableRainSound\n ; Has Misery Mire been triggered yet?\n LDA.l $7EF2F0 : AND.b #$20 : BNE .disableRainSound\n LDA.b #$01 : STA.w $012D\n\n .disableRainSound\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_LoadBGColorAndSubscreenOverlay", + "code": "Overworld_LoadBGColorAndSubscreenOverlay:\n{\n JSL.l ReplaceBGColor\n\n ; Set fixed color to neutral.\n LDA.w #$4020 : STA.b $9C\n LDA.w #$8040 : STA.b $9D\n\n ; Check if we need to load the rain in the misery mire.\n LDA.l Pool_EnableRainMireEvent : BEQ .notMire\n LDA.b $8A : CMP.w #$0070 : BNE .notMire\n ; Has Misery Mire been triggered yet?\n LDA.l $7EF2F0 : AND.w #$0020 : BNE .notMire\n JMP.w .subscreenOnAndReturn\n\n .notMire\n\n LDA.b $8C ; Use current active overlay instead of reading from static table\n ; JSL.l ReadOverlayArray\n\n ; Check for misery mire.\n CMP.w #$009F : BNE .notRain\n JMP.w .subscreenOnAndReturn\n\n .notRain\n\n ; Change the fixed color depending on our sub screen overlay.\n ; Check for lost woods?, skull woods, and pyramid area.\n CMP.w #$009D : BEQ .noCustomFixedColor\n CMP.w #$0096 : BEQ .noCustomFixedColor\n LDX.w #$4C26\n LDY.w #$8C4C\n\n ; Check for LW Death mountain.\n CMP.w #$0095 : BEQ .setCustomFixedColor\n LDX.w #$4A26\n LDY.w #$874A\n\n ; Check for DW Death mountain. (not turtle rock?).\n CMP.w #$009C : BEQ .setCustomFixedColor\n\n ; Safety check: If we have a valid overlay ID (not FF) that wasn't caught above\n ; (e.g. Canopy $9E, Fog $97), preserve it with default fixed colors instead of disabling.\n CMP.w #$00FF : BNE .noCustomFixedColor\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n ; Clear color math control register to prevent brightness bug\n STZ.b $9A\n\n ; Don't set the subscreen during a warp to hide the transparent\n ; color change. This will get set properly later in the warp\n ; but not everywhere else.\n LDA.b $11 : CMP.b #$23 : BEQ .inWarp\n STZ.b $1D\n\n .inWarp\n\n ; Update CGRAM this frame.\n INC.b $15\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "ReplaceBGColor", + "code": "ReplaceBGColor:\n{\n PHB : PHK : PLB\n\n SEP #$20 ; Set A in 8bit mode.\n\n LDA.w Pool_EnableBGColor : BNE .custom\n REP #$20 ; Set A in 16bit mode.\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "SpecialBgHorizOffsetAdjustment", + "code": "SpecialBgHorizOffsetAdjustment:\n{\n LDA.b $E2 : SEC : SBC.w #$0778 : LSR : TAY : AND.w #$4000 : BEQ .BRANCH_7\n TYA : ORA.w #$8000 : TAY\n\n .BRANCH_7\n\n STY.b $00\n\n LDA.b $E2 : SEC : SBC.b $00 : STA.b $E0\n\n LDA.b $E6 : CMP.w #$06C0 : BCC .BRANCH_9\n SEC : SBC.w #$0600 : AND.w #$03FF : CMP.w #$0180 : BCS .BRANCH_8\n LSR : ORA.w #$0600\n\n BRA .BRANCH_10\n\n .BRANCH_8\n\n LDA.w #$06C0\n\n BRA .BRANCH_10\n\n .BRANCH_9\n\n LDA.b $E6 : AND.w #$00FF : LSR : ORA.w #$0600\n\n .BRANCH_10\n\n ; Set BG1 vertical scroll.\n STA.b $E6\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "InitColorLoad2_Return", + "code": "InitColorLoad2_Return:\n\npullpc\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "InitColorLoad2", + "code": "InitColorLoad2:\n{\n PHB : PHK : PLB\n\n ; $0181 is the exit room number used for getting into the under the bridge\n ; area.\n LDA.b $A0 : CMP.w #$0181 : BNE .notBridge\n LDA.w Pool_BGColorTable_Bridge\n\n BRA .storeColor\n\n .notBridge\n\n ; Get area code and times it by 2.\n LDA.b $8A : ASL : TAX\n\n ; Get the color.\n LDA.w Pool_BGColorTable, X\n\n .storeColor\n\n ; Set transparent color.\n STA.l TimeState.SubColor ; Set temp color for tinting\n JSL Oracle_BackgroundFix ; Apply tint and write to buffers\n\n INC.b $15\n\n PLB\n\n JML.l InitColorLoad2_Return\n}\n\npushpc\n\n; ==============================================================================\n\nif !Func0ED8AE == 1\n\n; Resets the area special color after the screen flashes.\norg $0ED8AE ; $0758AE", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Palette_RestoreFixedColor_Interupt", + "code": "Palette_RestoreFixedColor_Interupt:\n{\n LDA.b $1B : BNE .noSpecialColor\n REP #$30 ; Set A, X, and Y in 16bit mode.\n\n LDX.w #$4020 : STX.b $9C\n LDX.w #$8040 : STX.b $9D\n\n LDX.w #$4F33\n LDY.w #$894F\n\n ; Change the fixed color depending on our sub screen overlay.\n ; Lost woods and skull woods.\n JSL.l ReadOverlayArray : CMP.w #$009D : BEQ .noSpecialColor\n CMP.w #$0040 : BEQ .noSpecialColor\n ; Pyramid area.\n CMP.w #$0096 : BEQ .specialColor\n LDX.w #$4C26\n LDY.w #$8C4C\n\n ; LW death mountain.\n CMP.w #$0095 : BEQ .specialColor\n LDX.w #$4A26\n LDY.w #$874A\n\n ; DW death mountain.\n CMP.w #$009C : BEQ .specialColor\n BRA .noSpecialColor\n\n .specialColor\n\n STX.b $9C\n STY.b $9D\n\n .noSpecialColor\n\n SEP #$30 ; Set A, X, and Y in 8bit mode.\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "LoadTransAuxGFX_return", + "code": "LoadTransAuxGFX_return:\n\norg $008C8A ; $000C8A\n dw NMI_UpdateChr_Bg2HalfAndAnimated\n\nassert pc() <= $008C8C ; $000C8C\n\norg $02ABB4 ; $012BB4\n JSL.l NewPrepTransAuxGFX\n\nassert pc() <= $02ABB8 ; $012BB8\n\n; Replaces the UNREACHABLE_00D585 which is unused.\norg $00D585 ; $005585", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Decomp_bg_variableLONG", + "code": "Decomp_bg_variableLONG:\n{\n PHB : PHK : PLB\n\n JSR.w Decomp_bg_variable\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Do3To4Low16BitLONG", + "code": "Do3To4Low16BitLONG:\n{\n PHB : PHK : PLB\n\n JSR.w Do3To4Low16Bit\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Do3To4High16BitLONG", + "code": "Do3To4High16BitLONG:\n{\n PHB : PHK : PLB\n\n JSR.w Do3To4High16Bit\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NMI_UpdateChr_Bg2HalfAndAnimated", + "code": "NMI_UpdateChr_Bg2HalfAndAnimated:\n{\n JSL.l NMI_UpdateChr_Bg2HalfAndAnimatedLONG\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NewLoadTransAuxGFX", + "code": "NewLoadTransAuxGFX:\n{\n PHB : PHK : PLB\n\n LDA.b $1B : BNE .indoors\n LDA.w Pool_EnableTransitionGFXGroupLoad : BNE .notNormalLoad\n .indoors\n\n PLB\n\n ; Replaced code:\n LDA.b #$60 : STA.b $01\n\n ; Return to regular code.\n JML.l LoadTransAuxGFX_return\n\n .notNormalLoad\n\n ; Setup the decompression buffer address.\n ; $00[3] = $7E6000\n STZ.b $00\n LDA.b #$60 : STA.b $01\n LDA.b #$7E : STA.b $02\n\n STZ.b $04\n\n REP #$30\n ; $0E = $8A * 8\n LDA.b $8A : AND.w #$00FF : ASL #3 : STA.b $0E\n SEP #$20\n\n ; Sheet 3 (variable 0)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet3, X : CMP.b #$FF : BEQ .noBgGfxChange3\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+3 : BEQ .noBgGfxChange3\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange3\n\n SEP #$10\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 4 (variable 1)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet4, X : CMP.b #$FF : BEQ .noBgGfxChange4\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+4 : BEQ .noBgGfxChange4\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange4\n\n SEP #$10\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 5 (variable 2)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet5, X : CMP.b #$FF : BEQ .noBgGfxChange5\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+5 : BEQ .noBgGfxChange5\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange5\n\n SEP #$10\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n ; Sheet 6 (variable 3)\n LDX.b $0E\n LDA.w Pool_OWGFXGroupTable_sheet6, X : CMP.b #$FF : BEQ .noBgGfxChange6\n SEP #$10\n CMP.w TransGFXModule_PriorSheets+6 : BEQ .noBgGfxChange6\n TAY\n\n INC.b $04\n\n JSL.l Decomp_bg_variableLONG\n\n .noBgGfxChange6\n\n SEP #$10\n ; Increment buffer address by 0x0600.\n LDA.b $01 : CLC : ADC.b #$06 : STA.b $01\n REP #$10\n\n STZ.w TransGFXModuleFrame\n\n PLB\n\n ; $005706 Return to regular code.\n JML.l LoadTransAuxGFX_sprite_continue\n}\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NMI_UpdateChr_Bg2HalfAndAnimatedLONG", + "code": "NMI_UpdateChr_Bg2HalfAndAnimatedLONG:\n{\n PHB : PHK : PLB\n\n REP #$20\n\n ; Increment on writes to SNES.VRAMDataWriteHigh.\n LDY.b #$80 : STY.w SNES.VRAMAddrIncrementVal\n\n ; Target is SNES.VRAMDataWriteLow, write two registers once\n ; (SNES.VRAMDataWriteLow / SNES.VRAMDataWriteHigh).\n LDA.w #$1801 : STA.w DMA.0_TransferParameters\n\n LDA.w NewNMICount1 : BEQ .skipFirst\n ; Sheet 1\n ; Target address\n LDA.w NewNMITarget1 : STA.w SNES.VRAMAddrReadWriteLow\n\n ; Source address\n LDA.w NewNMISource1 : STA.w DMA.0_SourceAddrOffsetLow\n LDY.b #$7F : STY.w DMA.0_SourceAddrBank\n\n ; Write count\n LDA.w NewNMICount1 : STA.w DMA.0_TransferSizeLow\n\n ; Transfer data on channel 0.\n LDY.b #$01 : STY.w SNES.DMAChannelEnable\n\n .skipFirst\n\n LDA.w NewNMICount2 : BEQ .skipSecond\n ; Sheet 2\n ; Target address\n LDA.w NewNMITarget2 : STA.w SNES.VRAMAddrReadWriteLow\n\n ; Source address\n LDA.w NewNMISource2 : STA.w DMA.0_SourceAddrOffsetLow\n LDY.b #$7F : STY.w DMA.0_SourceAddrBank\n\n ; Write count\n LDA.w NewNMICount2 : STA.w DMA.0_TransferSizeLow\n\n ; Transfer data on channel 0.\n LDY.b #$01 : STY.w SNES.DMAChannelEnable\n\n .skipSecond\n\n SEP #$20\n\n STZ.w $0710\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NewPrepTransAuxGFX", + "code": "NewPrepTransAuxGFX:\n{\n LDA.b $04 : BEQ .dontPrep\n JSL.l PrepTransAuxGFX\n\n .dontPrep\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "InitTilesetsLongCalls", + "code": "InitTilesetsLongCalls:\n{\n SEP #$20\n\n ; TODO: This will eventually be changed when changing the dungeon GFX.\n LDA.b $10 : CMP.b #$0E : BNE .notMapMode\n ; Mode 0x0E is the map mode for both the OW and in dungeons.\n ; So we need to check where we are here.\n LDA.b $1B : BEQ .outdoors\n ; Indoors\n\n .notMapMode\n\n ; TODO: This will eventually be changed when changing the dungeon GFX.\n ; Only trigger the new code when in certain outdoor modes.\n ; Modes 0x08 through 0x0B are outdoor related modes.\n LDA.b $10 : CMP.b #$08 : BCC .regularLoad\n CMP.b #$0C : BCC .outdoors\n .regularLoad\n\n REP #$30\n\n ; Replaced code.\n LDA.w $0AA1 : AND.w #$00FF\n\n ; Return to normal code.\n JML.l $00E227 ; $006227\n\n .outdoors\n\n PHB : PHK : PLB\n\n REP #$30\n LDA.b $8A : AND.w #$00FF : ASL #3 : TAX\n LDA.b $8A : AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n SEP #$20\n\n LDA.w Pool_OWGFXGroupTable_sheet0, X : CMP.b #$FF : BNE .notFF0\n LDA.w Pool_DefaultGFXGroups_sheet0, Y\n\n .notFF0\n\n STA.b $0D\n STA.w TransGFXModule_PriorSheets+0\n\n LDA.w Pool_OWGFXGroupTable_sheet1, X : CMP.b #$FF : BNE .notFF1\n LDA.w Pool_DefaultGFXGroups_sheet1, Y\n\n .notFF1\n\n STA.b $0C\n STA.w TransGFXModule_PriorSheets+1\n\n LDA.w Pool_OWGFXGroupTable_sheet2, X : CMP.b #$FF : BNE .notFF2\n LDA.w Pool_DefaultGFXGroups_sheet2, Y\n\n .notFF2\n\n STA.b $0B\n STA.w TransGFXModule_PriorSheets+2\n\n LDA.w Pool_OWGFXGroupTable_sheet3, X : CMP.b #$FF : BNE .notFF3\n LDA.w Pool_DefaultGFXGroups_sheet3, Y\n\n .notFF3\n\n STA.l $7EC2F8\n STA.b $0A\n STA.w TransGFXModule_PriorSheets+3\n\n LDA.w Pool_OWGFXGroupTable_sheet4, X : CMP.b #$FF : BNE .notFF4\n LDA.w Pool_DefaultGFXGroups_sheet4, Y\n\n .notFF4\n\n STA.l $7EC2F9\n STA.b $09\n STA.w TransGFXModule_PriorSheets+4\n\n LDA.w Pool_OWGFXGroupTable_sheet5, X : CMP.b #$FF : BNE .notFF5\n LDA.w Pool_DefaultGFXGroups_sheet5, Y\n\n .notFF5\n\n STA.l $7EC2FA\n STA.b $08\n STA.w TransGFXModule_PriorSheets+5\n\n LDA.w Pool_OWGFXGroupTable_sheet6, X : CMP.b #$FF : BNE .notFF6\n LDA.w Pool_DefaultGFXGroups_sheet6, Y\n\n .notFF6\n\n STA.l $7EC2FB\n STA.b $07\n STA.w TransGFXModule_PriorSheets+6\n\n LDA.w Pool_OWGFXGroupTable_sheet7, X : CMP.b #$FF : BNE .notFF7\n LDA.w Pool_DefaultGFXGroups_sheet7, Y\n\n .notFF7\n\n STA.b $06\n STA.w TransGFXModule_PriorSheets+7\n\n PLB\n\n ; $006282 Skip normal sheet load.\n JML.l $00E282\n}\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressNewTileSetsLongCalls", + "code": "AnimateMirrorWarp_DecompressNewTileSetsLongCalls:\n{\n PHB : PHK : PLB\n\n LDA.b $8A : AND.w #$00FF : ASL #3 : TAX\n LDA.b $8A : AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n\n SEP #$20\n\n LDA.w Pool_OWGFXGroupTable_sheet3, X : CMP.b #$FF : BNE .notFF3\n LDA.w Pool_DefaultGFXGroups_sheet3, Y\n\n .notFF3\n\n STA.l $7EC2F8\n STA.w TransGFXModule_PriorSheets+3\n\n LDA.w Pool_OWGFXGroupTable_sheet4, X : CMP.b #$FF : BNE .notFF4\n LDA.w Pool_DefaultGFXGroups_sheet4, Y\n\n .notFF4\n\n STA.l $7EC2F9\n STA.w TransGFXModule_PriorSheets+4\n\n LDA.w Pool_OWGFXGroupTable_sheet5, X : CMP.b #$FF : BNE .notFF5\n LDA.w Pool_DefaultGFXGroups_sheet5, Y\n\n .notFF5\n\n STA.l $7EC2FA\n STA.w TransGFXModule_PriorSheets+5\n\n LDA.w Pool_OWGFXGroupTable_sheet6, X : CMP.b #$FF : BNE .notFF6\n LDA.w Pool_DefaultGFXGroups_sheet6, Y\n\n .notFF6\n\n STA.l $7EC2FB\n STA.w TransGFXModule_PriorSheets+6\n\n PLB\n\n ; $005949 Skip normal sheet load.\n JML.l $00D949\n}\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressNewTileSetsLongCalls2", + "code": "AnimateMirrorWarp_DecompressNewTileSetsLongCalls2:\n{\n PHB : PHK : PLB\n\n REP #$30\n LDA.b $8A : AND.w #$00FF : ASL #3 : TAX\n LDA.b $8A : AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n SEP #$20\n\n LDA.w Pool_OWGFXGroupTable_sheet1, X : CMP.b #$FF : BNE .notFF1\n LDA.w Pool_DefaultGFXGroups_sheet1, Y\n\n .notFF1\n\n STA.b $08\n STA.w TransGFXModule_PriorSheets+1\n\n LDA.w Pool_OWGFXGroupTable_sheet0, X : CMP.b #$FF : BNE .notFF0\n LDA.w Pool_DefaultGFXGroups_sheet0, Y\n\n .notFF0\n\n TAY\n STA.w TransGFXModule_PriorSheets+0\n\n SEP #$10\n\n PLB\n\n ; $005988 Skip normal sheet load.\n JML.l $00D988\n}\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsALongCalls", + "code": "AnimateMirrorWarp_DecompressBackgroundsALongCalls:\n{\n PHB : PHK : PLB\n\n REP #$30\n LDA.b $8A : AND.w #$00FF : ASL #3 : TAX\n LDA.b $8A : AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n SEP #$20\n\n LDA.w Pool_OWGFXGroupTable_sheet3, X : CMP.b #$FF : BNE .notFF3\n LDA.w Pool_DefaultGFXGroups_sheet3, Y\n\n .notFF3\n\n STA.b $08\n STA.w TransGFXModule_PriorSheets+3\n\n LDA.w Pool_OWGFXGroupTable_sheet2, X : CMP.b #$FF : BNE .notFF2\n LDA.w Pool_DefaultGFXGroups_sheet2, Y\n\n .notFF2\n\n TAY\n STA.w TransGFXModule_PriorSheets+2\n\n SEP #$10\n\n PLB\n\n ; $0059C7 Skip normal sheet load.\n JML.l $00D9C7\n}\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AnimateMirrorWarp_DecompressBackgroundsCLongCalls", + "code": "AnimateMirrorWarp_DecompressBackgroundsCLongCalls:\n{\n PHB : PHK : PLB\n\n REP #$30\n LDA.b $8A : AND.w #$00FF : ASL #3 : TAX\n LDA.b $8A : AND.w #$00C0 : LSR #3 : TAY ; (Area / 8) = LW, DW, or SW *8\n SEP #$20\n\n LDA.w Pool_OWGFXGroupTable_sheet7, X : CMP.b #$FF : BNE .notFF7\n LDA.w Pool_DefaultGFXGroups_sheet7, Y\n\n .notFF7\n\n STA.b $08\n STA.w AnimatedTileGFXSet\n STA.w TransGFXModule_PriorSheets+7\n\n LDA.w Pool_OWGFXGroupTable_sheet6, X : CMP.b #$FF : BNE .notFF6\n LDA.w Pool_DefaultGFXGroups_sheet6, Y\n\n .notFF6\n\n TAY\n STA.w TransGFXModule_PriorSheets+6\n\n SEP #$10\n\n PLB\n\n ; $005A3A Skip normal sheet load.\n JML.l $00DA3A\n}\n\npushpc\n\n; ==============================================================================\n\nif !Func00E221 == 1\n\norg $02B490 ; $013490\n JSL.l Whirlpool_LoadDestinationMap_Interupt\n\nelse\n\norg $02B490 ; $013490\n JSL.l BirdTravel_LoadAmbientOverlay\n\nendif\n\npullpc\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Whirlpool_LoadDestinationMap_Interupt", + "code": "Whirlpool_LoadDestinationMap_Interupt:\n{\n ; Replaced code.\n JSL.l BirdTravel_LoadAmbientOverlay\n\n STZ.w TransGFXModuleFrame\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldHandleTransitions", + "code": "OverworldHandleTransitions:\n{\n ; Tells us which direction we're scrolling in.\n LDA.w $0416 : BEQ .noScroll\n JSR.w Overworld_ScrollMap\n\n .noScroll\n\n REP #$20\n\n ; Check if link is moving up/down.\n LDA.b $30 : AND.w #$00FF : BEQ .noDeltaY\n LDA.b $67 : AND.w #$000C : STA.b $00\n\n REP #$10\n LDA.b $8A : ASL : TAX\n LDA.b $20 : SEC : SBC.l Pool_OverworldTransitionPositionY_New, X\n SEP #$10\n\n ; Transitioning up.\n LDY.b #$06\n LDX.b #$08\n\n CMP.w #$0004 : BCC .checkDirection\n ; Transitioning down.\n LDY.b #$04\n LDX.b #$04\n\n CMP.w OWCameraBoundsS : BCS .checkDirection\n\n .noDeltaY\n\n ; Check if Link is moving right/left.\n LDA.b $31 : AND.w #$00FF : BEQ .noDeltaX\n ; Add an offset to the X position.\n LDA.w OWCameraBoundsE : CLC : ADC.w #$0004 : STA.b $02\n\n LDA.b $67 : AND.w #$0003 : STA.b $00\n\n REP #$10\n LDA.b $8A : ASL : TAX\n LDA.b $22 : SEC : SBC.l Pool_OverworldTransitionPositionX_New, X\n SEP #$10\n\n ; Transitioning left.\n LDY.b #$02\n LDX.b #$02\n\n CMP.w #$0006 : BCC .checkDirection\n ; Transitioning right.\n LDY.b #$00\n LDX.b #$01\n\n CMP.b $02 : BCC .noTransition\n\n .checkDirection\n\n ; Check if the direction the player is moving matches the boundary we hit:\n CPX.b $00 : BEQ .transition\n .noTransition\n .noDeltaX\n\n JSL.l Overworld_CheckForSpecialOverworldTrigger\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldScreenTileMapChange", + "code": "OverworldScreenTileMapChange:\n{\n ; These mask values are changed to fix several vanilla issues surrounding\n ; large areas. Moving from one large area to another twords the center of\n ; the side would cause a broken transition. A large area next to another\n ; but offset by the length of another would also cause a broken transition.\n ; $01262C\n .Masks\n if !Func02A62C == 1\n dw $1F80, $1F80, $007F, $007F\n else\n dw $0F80, $0F80, $003F, $003F\n endif\n}\nassert pc() <= $02A634 ; $012634\n\n; This table was moved from its original location at $012834 to make more\n; space for the bigger tables down below. Replaces a few bytes from\n; OverworldScreenTileMapChange_ByScreen1.\norg $02A634 ; $012634", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldScreenIDChange", + "code": "OverworldScreenIDChange:\n{\n dw $0002, $FFFE, $0010, $FFF0\n}\nassert pc() <= $02A63C ; $01263C\n\n; This table was moved from its original location at $01283C to make more\n; space for the bigger tables down below. This now replaces a few bytes from\n; OverworldScreenTileMapChange_ByScreen1.\norg $02A63C ; $01263C", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldMixedCoordsChange", + "code": "OverworldMixedCoordsChange:\n{\n dw $FFF0, $0010, $FFFE, $0002\n}\nassert pc() <= $02A644 ; $012644\n\n; This table was moved from its original location at $016DC5. This now replaces\n; OverworldScreenTileMapChange_ByScreen1, OverworldScreenTileMapChange_ByScreen2\n; and part of OverworldScreenTileMapChange_ByScreen3.\norg $02A644 ; $012644", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_HandleOverlaysAndBombDoors_bombable_door_location_New", + "code": "Overworld_HandleOverlaysAndBombDoors_bombable_door_location_New:\n\n; This table was moved from its original location at $0DC2F9. This now replaces\n; part of OverworldScreenTileMapChange_ByScreen3 and all of the following\n; OverworldScreenTileMapChange_ByScreen4,\n; OverworldScreenIDChange, OverworldMixedCoordsChange,\n; OverworldScreenSizeFlag, and OverworldScreenSizeHighByte.\n; The bytes of space at $0DC2F9 is now unused. The references to this table are\n; updated by ZS itself.\norg $02A784 ; $012784", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldData_HiddenItems_New", + "code": "OverworldData_HiddenItems_New:\n\n; Update this address.\norg $02C098 ; $014098\nADC.w OverworldMixedCoordsChange, Y\n\nelse\n\norg $02A9C4 ; $0129C4\ndb $AD, $16, $04, $F0, $03, $20, $73, $F2\ndb $C2, $20, $A5, $30, $29, $FF, $00, $F0\ndb $23, $A5, $67, $29, $0C, $00, $85, $00\ndb $AE, $00, $07, $A5, $20, $38, $FF, $C4\ndb $A8, $02, $A0, $06, $A2, $08, $C9, $04\ndb $00, $90, $3B, $A0, $04, $A2, $04, $CD\ndb $16, $07, $B0, $32, $A5, $31, $29, $FF\ndb $00, $F0, $2F, $AD, $16, $07, $18, $69\ndb $04, $00, $85, $02, $A5, $67, $29, $03\ndb $00, $85, $00, $AE, $00, $07, $A5, $22\ndb $38, $FF, $44, $A9, $02, $A0, $02, $A2\ndb $02, $C9, $06, $00, $90, $08, $A0, $00\ndb $A2, $01, $C5, $02, $90, $04, $E4, $00\ndb $F0, $05, $22, $49, $DE, $0E, $60, $E2\ndb $20, $22, $39, $F4, $07, $B0, $F3, $84\ndb $02, $64, $03, $20, $0C, $8B, $C2, $31\ndb $A6, $02, $A5, $84, $3F, $2C, $A6, $02\ndb $85, $84, $AD, $00, $07, $18, $7F, $34\ndb $A8, $02, $48, $85, $04, $8A, $0A, $0A\ndb $0A, $0A, $0A, $0A, $05, $04, $AA, $A5\ndb $84, $18, $7F, $34, $A6, $02, $85, $84\ndb $68, $4A, $AA, $E2, $30, $A5, $8A, $48\ndb $C9, $2A, $D0, $05, $A9, $80, $8D, $2D\ndb $01, $BF, $EC, $A5, $02, $0F, $CA, $F3\ndb $7E, $85, $8A, $8D, $0A, $04, $AA, $AF\ndb $CA, $F3, $7E, $F0, $06, $AF, $57, $F3\ndb $7E, $F0, $1F, $BF, $00, $5B, $7F, $4A\ndb $4A, $4A, $4A, $D0, $05, $A9, $05, $8D\ndb $2D, $01, $BF, $00, $5B, $7F, $29, $0F\ndb $CD, $30, $01, $F0, $05, $A9, $F1, $8D\ndb $2C, $01, $20, $08, $AB, $A9, $01, $85\ndb $11, $A5, $00, $8D, $10, $04, $8D, $16\ndb $04, $A2, $04, $CA, $4A, $90, $FC, $8E\ndb $18, $04, $8E, $9C, $06, $9C, $96, $06\ndb $9C, $98, $06, $9C, $26, $01, $68, $29\ndb $3F, $F0, $06, $A5, $8A, $29, $BF, $D0\ndb $0F, $64, $B0, $A9, $0D, $85, $11, $A9\ndb $00, $85, $95, $8F, $11, $C0, $7E, $60\ndb $A6, $8A, $BF, $40, $FD, $7E, $85, $00\ndb $BF, $1C, $FD, $00, $22, $A8, $D5, $0E\ndb $20, $69, $C7, $60\n\norg $02A62C ; $01262C\ndw $0F80, $0F80, $003F, $003F\n\norg $02C098 ; $014098\ndb $79, $3C, $A8\n\nendif\n\npullpc\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "OverworldHandleTransitions_ByScreenAddresses", + "code": "OverworldHandleTransitions_ByScreenAddresses:\n{\n dw Pool_ByScreen1_New-Pool_ByScreen1_New\n dw Pool_ByScreen2_New-Pool_ByScreen1_New\n dw Pool_ByScreen3_New-Pool_ByScreen1_New\n dw Pool_ByScreen4_New-Pool_ByScreen1_New\n}\n\npushpc\n\n; ==============================================================================\n\n; This section changes how all of the camera values get set.\n\nif !Func02C0C3 == $01\n\norg $02C0C3 ; $0140C3", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_SetCameraBounds_Interupt", + "code": "Overworld_SetCameraBounds_Interupt:\n{\n JSL.l NewOverworld_SetCameraBounds\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "NewOverworld_SetCameraBounds", + "code": "NewOverworld_SetCameraBounds:\n{\n PHB : PHK : PLB\n\n LDX.b $8A\n LDA.l Pool_BufferAndBuildMap16Stripes_overworldScreenSize, X\n AND.w #$00FF : ASL : TAX\n\n REP #$10\n\n LDA.b $8A : ASL : TAY\n LDA.w Pool_OverworldTransitionPositionY_New, Y : STA.w $0600\n CLC : ADC.w .boundary_y_size, X : STA.w $0602\n\n LDA.w Pool_OverworldTransitionPositionX_New, Y : STA.w $0604\n CLC : ADC.w .boundary_x_size, X : STA.w $0606\n\n LDA.w Pool_trans_target_north_new, Y : STA.w $0610\n CLC : ADC.w .trans_target_south_offset, X : STA.w $0612\n\n LDA.w Pool_trans_target_west_new, Y : STA.w $0614\n CLC : ADC.w .trans_target_east_offset, X : STA.w $0616\n\n SEP #$10\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Hookshot_IsCollisionCheckFutile_Interupt", + "code": "Hookshot_IsCollisionCheckFutile_Interupt:\n{\n LDA.w $0C72, X : AND.w #$0002 : BNE .moving_horizontally\n LDX.w $0700\n LDA.b $00 : SEC : SBC.l Pool_OverworldTransitionPositionY_New, X\n CMP.w #$0004 : BCC .off_screen\n CMP.w OWCameraBoundsS : BCS .off_screen\n BRA .not_at_screen_edge\n\n .moving_horizontally\n\n LDX.w $0700\n LDA.b $02 : SEC : SBC.l Pool_OverworldTransitionPositionX_New, X\n CMP.w #$0006 : BCC .off_screen\n CMP.w OWCameraBoundsE : BCC .not_at_screen_edge\n\n .off_screen\n\n SEP #$20\n\n PLY\n PLX\n\n SEC\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_LoadMapProperties_Interupt", + "code": "Overworld_LoadMapProperties_Interupt:\n{\n CPX.b #$80 : BCS .inSW\n ; $0AA3 is the sprite graphics index.\n LDA.l $7EFCC0, X\n\n BRA .write0AA3\n\n .inSW\n\n LDA.l Pool_LoadSpecialOverworld_GFX_0AA3-$80, X\n\n .write0AA3\n\n ; $0AA3 is the sprite graphics index.\n STA.w $0AA3\n\n ; $0AA2 is the secondary background graphics index.\n LDA.l GFX0AA2ValsOW, X\n\n ; In PrepTransAuxGFX the game checks if $0AA2 is below 0x20, if it is,\n ; it will load 3 of the aux sheets as using the low palette instead of\n ; the high palette. So since $0AA2 isn't really used on the overworld\n ; anymore, we can just OR it so it will always load properly.\n ORA.b #$20 : STA.w $0AA2\n\n ; Code from vanilla that is still needed.\n LDA.w $0712 : STA.w $0714\n\n LDA.l Pool_BufferAndBuildMap16Stripes_overworldScreenSize, X : TAX\n LDA.l .xSize, X : STA.w $0719\n LDA.l .ySize, X : STA.w $0717\n\n LDY.b #$20\n LDX.b #$00\n\n LDA.b $8A : AND.b #$40 : BEQ .lightWorld\n ; $0AA1 = 0x21 for dark world, 0x20 for light world.\n INY\n\n ; 0x08 for dark world, 0x00 for light world.\n LDX.b #$08\n\n .lightWorld\n\n STY.w $0AA1\n\n ; X = 0x01 in LW, 0x0B in DW.\n LDA.l SheetsTable_0AA4, X : STA.w $0AA4\n\n REP #$30\n\n JSL.l AreaSizeCheck\n\n SEP #$30\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Copy0716", + "code": "Copy0716:\n{\n LDA.b #$E4 : STA.w OWCameraBoundsS\n STA.w OWCameraBoundsE\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "AreaSizeCheck", + "code": "AreaSizeCheck:\n{\n PHB : PHK : PLB\n\n LDA.b $8A : ASL : TAX\n LDA.l Pool_OverworldTransitionPositionY_New, X : STA.w $0708\n LDA.l Pool_OverworldTransitionPositionX_New, X : LSR #3 : STA.w $070C\n\n LDX.b $8A\n LDA.l Pool_BufferAndBuildMap16Stripes_overworldScreenSize, X\n AND.w #$00FF : ASL : TAX\n LDA.w .YSize, X : STA.w $070A\n LDA.w .XSize, X : STA.w $070E\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "LoadOverworldSprites_Interupt", + "code": "LoadOverworldSprites_Interupt:\n{\n LDX.w $040A\n LDA.l Pool_BufferAndBuildMap16Stripes_overworldScreenSize, X : TAY\n\n LDA.w .xSize, Y : STA.w $0FB9\n STZ.w $0FB8\n\n LDA.w .ySize, Y : STA.w $0FBB\n STZ.w $0FBA\n\n ; What phase are we in?\n JSL Oracle_CheckIfNight : ASL : TAY\n\n REP #$30\n\n ; And then, what overworld area are we in?\n TXA : ASL : CLC : ADC.w .phaseOffset, Y : TAX\n\n ; Get the overworld sprite pointer based on the overworld area and game phase.\n LDA.l Pool_Overworld_SpritePointers_state_0_New, X : STA.b $00\n\n SEP #$20\n\n BRA .skip\n\n .xSize\n db $02, $04, $04, $02\n\n .ySize\n db $02, $04, $02, $04\n\n .phaseOffset\n dw $0000, $0000, $0140, $0280\n\n ; We have some extra bytes of space here.\n NOP : NOP : NOP\n\n org $09C50D ; $04C50D\n .skip\n}\nassert pc() <= $09C50D ; $04C50D\n\n; The table OverworldScreenSizeForLoading which is located at $04C635 and\n; used by the vanilla LoadOverworldSprites function is no longer needed for\n; its original purpose. This is for controlling the boundaries used by sprites\n; to check if they should be loaded. This is now unused in favor of just\n; getting a value based on the size of the area. Its 0xC0 bytes of space is\n; now used by OverworldPalettesScreenToSet_New which was moved here from is\n; original loaction at $007D1C. The old 0x88 bytes of space at $007D1C is\n; now unused.\n\nelse\n\norg $09C4C7 ; $04C4C7\ndb $AD, $0A, $04, $A8, $BE, $35, $C6, $8E\ndb $B9, $0F, $9C, $B8, $0F, $8E, $BB, $0F\ndb $9C, $BA, $0F, $C2, $30, $AD, $0A, $04\ndb $0A, $A8, $E2, $20, $AF, $C5, $F3, $7E\ndb $C9, $03, $F0, $0E, $C9, $02, $F0, $14\ndb $B9, $81, $C8, $85, $00, $B9, $82, $C8\ndb $80, $12, $B9, $21, $CA, $85, $00, $B9\ndb $22, $CA, $80, $08, $B9, $01, $C9, $85\ndb $00, $B9, $02, $C9\n\nendif\n\n; ==============================================================================\n\n; This is the new truth table as to what each area's size is.\norg $02F88D ; $01788D", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Pool_BufferAndBuildMap16Stripes_overworldScreenSize", + "code": "Pool_BufferAndBuildMap16Stripes_overworldScreenSize:\n{\n ; The large area value and small area values were swapped.\n ; 0x00 was large before and 0x01 was small.\n\n ; 0x00 - Small area (1x1)\n ; 0x01 - Large area (2x2)\n ; 0x02 - Wide area (2x1)\n ; 0x03 - Tall area (1x2)\n\n if !UseVanillaPool > 0\n ; LW\n db $01, $01, $00, $01, $01, $01, $01, $00\n db $01, $01, $00, $01, $01, $01, $01, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $01, $01, $00, $01, $01, $00, $01, $01\n db $01, $01, $00, $01, $01, $00, $01, $01\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $01, $01, $00, $00, $00, $01, $01, $00\n db $01, $01, $00, $00, $00, $01, $01, $00\n\n ; DW\n db $01, $01, $00, $01, $01, $01, $01, $00\n db $01, $01, $00, $01, $01, $01, $01, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $01, $01, $00, $01, $01, $00, $01, $01\n db $01, $01, $00, $01, $01, $00, $01, $01\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $01, $01, $00, $00, $00, $01, $01, $00\n db $01, $01, $00, $00, $00, $01, $01, $00\n\n ; SW\n db $00, $01, $01, $00, $00, $00, $00, $00\n db $00, $01, $01, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n\n ; The later half of the SW doesn't exist but this table does have values for\n ; them here. So this space could be used for something else.\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n db $00, $00, $00, $00, $00, $00, $00, $00\n endif\n}\nassert pc() <= $02F94D ; $01794D\n\nif !Func02AC40 == $01\n\n; Change a bunch of Pool_BufferAndBuildMap16Stripes_overworldScreenSize checks\n; from a BEQ to a BNE.\norg $02AC40 ; $012C40\n db $D0\n\norg $02AC70 ; $012C70\n db $D0\n\norg $02B2FA ; $0132FA\n db $D0\n\norg $02B356 ; $013356\n db $D0\n\norg $02ED39 ; $016D39\n db $D0\n\norg $02ED6D ; $016D6D\n db $D0\n\n; Change a bunch of Pool_BufferAndBuildMap16Stripes_overworldScreenSize checks\n; from a BNE to a BEQ.\n\norg $02F039 ; $017039\n db $F0\n\norg $02F2EF ; $0172EF\n db $F0\n\norg $02F323 ; $017323\n db $F0\n\norg $02F361 ; $017361\n db $F0\n\norg $02F39B ; $01739B\n db $F0\n\nelse\n\norg $02AC40 ; $012C40\n db $F0\n\norg $02AC70 ; $012C70\n db $F0\n\norg $02B2FA ; $0132FA\n db $F0\n\norg $02B356 ; $013356\n db $F0\n\norg $02ED39 ; $016D39\n db $F0\n\norg $02ED6D ; $016D6D\n db $F0\n\norg $02F039 ; $017039\n db $D0\n\norg $02F2EF ; $0172EF\n db $D0\n\norg $02F323 ; $017323\n db $D0\n\norg $02F361 ; $017361\n db $D0\n\norg $02F39B ; $01739B\n db $D0\n\nendif\n\n; ==============================================================================\n\nif !Func02E931 == $01\n\norg $02E931 ; $016931", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "LoadSpecialOverworld_Interupt", + "code": "LoadSpecialOverworld_Interupt:\n{\n LDA.b $8A : SEC : SBC.b #$80 : TAX\n\n ; GFX $0AA3\n LDA.l Pool_LoadSpecialOverworld_GFX_0AA3, X : STA.w $0AA3\n\n ; GFX $0AA2\n LDA.l Pool_LoadSpecialOverworld_GFX_0AA2, X : STA.w $0AA2\n\n ; Palette property b\n LDA.l Pool_LoadSpecialOverworld_palette_prop_b, X : STA.b $00\n\n ; This table call was changed to read from the same one as the rest of the\n ; areas and is no longer SW specific.\n ; Property property a\n LDX.b $8A\n LDA.l OverworldPalettesScreenToSet_New, X\n JSL.l Overworld_LoadPalettes\n\n PLA : STA.b $A0\n\n REP #$30\n\n ; These 2 exits need the special smaller camera bounds instead of the usual\n ; ones. Such as the master sword area being half of a small area.\n LDA.b $A0 : CMP.w #$0180 : BEQ .SpecialCameraBounds\n CMP.w #$0181 : BEQ .SpecialCameraBounds\n LDA.b $8A : AND.w #$00FF : ASL : TAX\n LDA.l Pool_OverworldTransitionPositionY_New, X : STA.w $0708\n LDA.l Pool_OverworldTransitionPositionX_New, X : LSR #3 : STA.w $070C\n\n JSL.l AreaSizeCheck\n\n JSL.l NewOverworld_SetCameraBounds\n\n BRA .end\n\n .SpecialCameraBounds\n\n JSL.l SetupSpecialCameraBounds\n\n .end\n\n SEP #$30\n\n PLB\n\n JSL.l Overworld_SetScreenBGColorCacheOnly\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "SetupSpecialCameraBounds", + "code": "SetupSpecialCameraBounds:\n{\n PHB : PHK : PLB\n\n LDA.w #$03F0 : STA.b $00\n\n LDA.b $A0 : SEC : SBC.w #$0080 : AND.w #$003F : ASL : TAX\n LDA.w .SpecialCamera600, X : STA.w $0708\n LDA.w .SpecialCamera70C, X : LSR #3 : STA.w $070C\n\n LDA.b $00 : STA.w $070A\n LDA.b $00 : LSR #3 : STA.w $070E\n\n SEP #$10\n\n LDA.w .SpecialCamera600, X : STA.w $0600\n LDA.w .SpecialCamera602, X : STA.w $0602\n LDA.w .SpecialCamera604, X : STA.w $0604\n LDA.w .SpecialCamera606, X : STA.w $0606\n LDA.w .SpecialCamera610, X : STA.w $0610\n LDA.w .SpecialCamera612, X : STA.w $0612\n LDA.w .SpecialCamera614, X : STA.w $0614\n LDA.w .SpecialCamera616, X : STA.w $0616\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_PlayerControl_Interupt", + "code": "Overworld_PlayerControl_Interupt:\n{\n JSL.l Overworld_Entrance\n JSL.l Overworld_DwDeathMountainPaletteAnimation\n\n ; If not in SW mode skip this part.\n LDA.b $8A : CMP.b #$80 : BCC .notSpecialOverworld\n ; Checks for tiles that lead back to normal overworld.\n JSL.l SpecialOverworld_CheckForReturnTrigger\n\n ; If $11 == 0x24, that means we did trigger a special overworld tile\n LDA.b $11 : CMP.b #$24 : BNE .noSpecialTrigger\n ; Tell the game we are in the SW mode.\n LDA.b #$0B : STA.b $10\n\n RTS", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Sprite_LoadGfxProperties_Interupt", + "code": "Sprite_LoadGfxProperties_Interupt:\n{\n LDX.w #$003E\n\n .loop\n\n ; The free RAM used here is right after $7EFD40 which is where\n ; vanilla stores the sprite palettes for the LW and DW. Very convenient\n ; for our needs, we don't even have to update the read.\n LDA.l Pool_LoadSpecialOverworld_palette_prop_b, X\n STA.l ExpandedSpritePalArray, X\n DEX : DEX : BPL .loop\n\n ; Replaced code.\n LDY.w #$003E\n LDA.l $7EF3C5\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Overworld_RevealSecret_Interupt", + "code": "Overworld_RevealSecret_Interupt:\n{\n NOP : NOP\n}\nassert pc() <= $1BC8B6 ; $0DC8B6\n\norg $02EF64 ; $016F64\nLDA.l Overworld_HandleOverlaysAndBombDoors_bombable_door_location_New, X\n\nelse\n\norg $1BC8B4 ; $0DC8B4\ndb $B0, $7D\n\norg $02EF64 ; $016F64\ndb $BF, $C5, $ED, $02\n\nendif\n\n; ==============================================================================\n\nif !Func07B518 == $01\n\norg $07B518 ; $03B518\nJSL Link_Read_Interupt\n\nelse\n\norg $07B518 ; $03B518\ndb $A8, $B9, $1D, $F5\n\nendif\n\npullpc\n", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "Link_Read_Interupt", + "code": "Link_Read_Interupt:\n{\n PHB : PHK : PLB\n\n TAY\n LDA.w Pool_Overworld_SignText_New, Y\n\n PLB\n\n RTL", + "file": "ZSCustomOverworld.asm" + }, + { + "name": "CheckForChangeGraphicsNormalLoadBoat", + "code": "CheckForChangeGraphicsNormalLoadBoat:\n{\n LDA $8A : CMP.b #$30 : BNE .boat_area\n PHB : PHK : PLB\n JSR ApplyGraphics1\n JSR ApplyGraphics2\n PLB\n .boat_area\n RTL", + "file": "custom_gfx.asm" + }, + { + "name": "ApplyGraphics1", + "code": "ApplyGraphics1:\n{\n %ApplyGraphicsSheet(BoatBitmap, $2C00)\n RTS", + "file": "custom_gfx.asm" + }, + { + "name": "BoatBitmap", + "code": " BoatBitmap:\n incbin gfx/boat.bin\n}\n", + "file": "custom_gfx.asm" + }, + { + "name": "ApplyGraphics2", + "code": "ApplyGraphics2:\n{\n %ApplyGraphicsSheet(AdditionalBitmap, $5000)\n RTS", + "file": "custom_gfx.asm" + }, + { + "name": "AdditionalBitmap", + "code": " AdditionalBitmap:\n incbin gfx/boat2.bin\n}\n", + "file": "custom_gfx.asm" + }, + { + "name": "ApplyKorokSpriteSheets", + "code": "ApplyKorokSpriteSheets:\n{\n REP #$20 ; A = 16, XY = 8\n LDX #$80 : STX $2100 ; turn the screen off (required)\n LDX #$80 : STX $2115 ; Set the video port register every time we write it increase by 1\n LDA #$5000 : STA $2116 ; Destination of the DMA $5800 in vram <- this need to be divided by 2\n LDA #$1801 : STA $4300 ; DMA Transfer Mode and destination register\n ; \"001 => 2 registers write once (2 bytes: p, p+1)\"\n LDA.w #KorokSpriteSheets : STA $4302 ; Source address where you want gfx from ROM\n LDX.b #KorokSpriteSheets>>16 : STX $4304\n LDA #$1800 : STA $4305 ; size of the transfer 4 sheets of $800 each\n LDX #$01 : STX $420B ; Do the DMA\n LDX #$0F : STX $2100 ; Turn the screen back on\n SEP #$30\n\n RTL", + "file": "custom_gfx.asm" + }, + { + "name": "ShakeScreen", + "code": "ShakeScreen:\n{\n REP #$20\n LDA.b $1A : AND.w #$0001 : ASL A : TAX\n LDA.l $01C961, X : STA.w $011A\n LDA.l $01C965, X : STA.w $011C\n SEP #$20\n RTS", + "file": "overlays.asm" + }, + { + "name": "ZoraTemple_EntranceAnimation", + "code": "ZoraTemple_EntranceAnimation:\n{\n ; If $B0 is 8, then we move the camera back to the origin\n LDA.b $B0 : CMP.b #$08 : BCS .lastframe\n REP #$20\n LDA $0618 : CMP.w #$0630 : BCC +\n DEC.b $E8 ; Increment camera vertical\n DEC.w $0618 : DEC.w $0618\n DEC.w $061A : DEC.w $061A\n +\n SEP #$20\n JMP .do_anim\n .lastframe\n REP #$20\n LDA #$06F3 : STA.w $0618\n LDA #$06F1 : STA.w $061A\n LDA.w #$0692 : STA.b $E8\n SEP #$20\n\n .do_anim\n ; Get animation state\n LDA.b $B0 : ASL A : TAX ; x2\n JSR.w (.AnimationFrames, X)\n\n RTL", + "file": "overlays.asm" + }, + { + "name": "Frame0", + "code": " Frame0:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0965\n LDX.w #$0490\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0175\n LDX.w #$0492\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0965\n LDX.w #$049C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0175\n LDX.w #$049E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$0510\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$0512\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$051C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$051E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$0410\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$0412\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$041C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$041E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame1", + "code": " Frame1:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0965\n LDX.w #$0510\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0183\n LDX.w #$0512\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$0590\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$0592\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0965\n LDX.w #$051C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0183\n LDX.w #$051E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$059C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$059E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$0490\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$0492\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$049C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$049E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame2", + "code": " Frame2:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$00CE\n LDX.w #$0510\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$0512\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$051C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$051E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0965\n LDX.w #$0590\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0183\n LDX.w #$0592\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$0610\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$0612\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0965\n LDX.w #$059C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0183\n LDX.w #$059E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$061C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$061E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame3", + "code": " Frame3:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0530\n LDX.w #$0616\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02E4\n LDX.w #$0618\n JSL Overworld_DrawMap16_Persist\n LDA.w #$05A1\n LDX.w #$0594\n JSL Overworld_DrawMap16_Persist\n LDA.w #$05A1\n LDX.w #$059A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0530\n LDX.w #$0596\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02E4\n LDX.w #$0598\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0599\n LDX.w #$0614\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0599\n LDX.w #$061A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0094\n LDX.w #$0494\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0094\n LDX.w #$049A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$05A1\n LDX.w #$0514\n JSL Overworld_DrawMap16_Persist\n LDA.w #$05A1\n LDX.w #$051A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0530\n LDX.w #$0516\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02E4\n LDX.w #$0518\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame4", + "code": " Frame4:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$056D\n LDX.w #$0396\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0398\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0416\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0418\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0496\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0498\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$0414\n JSL Overworld_DrawMap16_Persist\n LDA.w #$056D\n LDX.w #$041A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06AF\n LDX.w #$0394\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06AF\n LDX.w #$039A\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame5", + "code": " Frame5:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$02C0\n LDX.w #$0292\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02BD\n LDX.w #$029C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$031C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$0392\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$039C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$0412\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00D5\n LDX.w #$041C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0965\n LDX.w #$0492\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0175\n LDX.w #$049C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C7\n LDX.w #$0512\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C8\n LDX.w #$051C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$057D\n LDX.w #$0592\n JSL Overworld_DrawMap16_Persist\n LDA.w #$057D\n LDX.w #$059C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0156\n LDX.w #$0612\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0156\n LDX.w #$061C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00CE\n LDX.w #$0312\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n LDA.b #$07 : STA.w $012D\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame6", + "code": " Frame6:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$02BF\n LDX.w #$0192\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0312\n LDX.w #$019C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02B9\n LDX.w #$0212\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02B6\n LDX.w #$021C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B0\n LDX.w #$0214\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B1\n LDX.w #$0216\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B2\n LDX.w #$0218\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B3\n LDX.w #$021A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B5\n LDX.w #$0294\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00DF\n LDX.w #$0296\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00E0\n LDX.w #$0298\n JSL Overworld_DrawMap16_Persist\n LDA.w #$06B6\n LDX.w #$029A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$02D5\n LDX.w #$0314\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0223\n LDX.w #$0316\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0205\n LDX.w #$0318\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0730\n LDX.w #$031A\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame7", + "code": " Frame7:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$00C7\n LDX.w #$0014\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0016\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0018\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C8\n LDX.w #$001A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C7\n LDX.w #$0094\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0096\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0098\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C8\n LDX.w #$009A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C7\n LDX.w #$0114\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0116\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0118\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C8\n LDX.w #$011A\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C7\n LDX.w #$0194\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0196\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0158\n LDX.w #$0198\n JSL Overworld_DrawMap16_Persist\n LDA.w #$00C8\n LDX.w #$019A\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n LDA.b #$0D : STA.w $012D\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Frame8", + "code": " Frame8:\n {\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n STZ.w $04C6\n STZ.b $B0\n STZ.w $0710\n STZ.w $02E4\n STZ.w SprFreeze\n STZ.w $011A\n STZ.w $011B\n STZ.w $011C\n STZ.w $011D\n ; set the overlay\n LDX.b $8A\n LDA.l $7EF280,X\n ORA.b #$20\n STA.l $7EF280,X\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_EntranceAnimation", + "code": "Castle_EntranceAnimation:\n{\n LDA.b $B0 : CMP.b #$04 : BEQ .last_frame\n REP #$20\n LDA $0618 : CMP.w #$0630 : BCC +\n DEC.b $E8 ; Increment camera vertical\n DEC.w $0618 : DEC.w $0618\n DEC.w $061A : DEC.w $061A\n +\n SEP #$20\n .last_frame\n ; Get animation state\n LDA.b $B0 : ASL A : TAX ; x2\n JSR.w (.AnimationFrames, X)\n RTL", + "file": "overlays.asm" + }, + { + "name": "Castle_EndAnimation", + "code": " Castle_EndAnimation:\n {\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n STZ.w $04C6\n STZ.b $B0\n STZ.w $0710\n STZ.w $02E4\n STZ.w SprFreeze\n STZ.w $011A\n STZ.w $011B\n STZ.w $011C\n STZ.w $011D\n LDA.b #$1B ; SFX3.1B\n STA.w $012F\n ; set the overlay\n LDX.b $8A\n LDA.l $7EF280,X\n ORA.b #$20\n STA.l $7EF280,X\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_RestoreCamera", + "code": " Castle_RestoreCamera:\n {\n REP #$20\n\n INC.w $061A : INC.w $061A\n INC.w $0618 : INC.w $0618\n INC.b $E8\n\n LDA.w $0618 : CMP.w CameraCache : BNE +\n SEP #$20\n JSR Castle_EndAnimation\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_Frame0", + "code": " Castle_Frame0:\n {\n #_1BD017: LDA.b #$02 ; SFX3.07\n #_1BD019: STA.w $012F\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0611\n LDX.w #$031C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$031E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$0320\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0612\n LDX.w #$0322\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0614\n LDX.w #$039C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$039E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$03A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0615\n LDX.w #$03A2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0480\n LDX.w #$029C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0479\n LDX.w #$029E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0479\n LDX.w #$02A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0481\n LDX.w #$02A2\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$2E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_Frame1", + "code": " Castle_Frame1:\n {\n LDA.b #$16 ; SFX3.16\n STA.w $012F\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$049E\n LDX.w #$039C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$049C\n LDX.w #$039E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0604\n LDX.w #$03A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0608\n LDX.w #$03A2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$060A\n LDX.w #$041C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0495\n LDX.w #$041E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0496\n LDX.w #$0420\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0499\n LDX.w #$0422\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0602\n LDX.w #$049C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0606\n LDX.w #$049E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0606\n LDX.w #$04A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$060E\n LDX.w #$04A2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0610\n LDX.w #$051C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0606\n LDX.w #$051E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0606\n LDX.w #$0520\n JSL Overworld_DrawMap16_Persist\n LDA.w #$046C\n LDX.w #$0522\n JSL Overworld_DrawMap16_Persist\n LDA.w #$046F\n LDX.w #$059C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0469\n LDX.w #$059E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$046A\n LDX.w #$05A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$046E\n LDX.w #$05A2\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_Frame2", + "code": " Castle_Frame2:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0108\n LDX.w #$061C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$010A\n LDX.w #$0622\n JSL Overworld_DrawMap16_Persist\n LDA.w #$04E2\n LDX.w #$0620\n JSL Overworld_DrawMap16_Persist\n LDA.w #$04E2\n LDX.w #$061E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Castle_Frame3", + "code": " Castle_Frame3:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0611\n LDX.w #$039C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0612\n LDX.w #$03A2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$039E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0613\n LDX.w #$03A0\n JSL Overworld_DrawMap16_Persist\n LDA.w #$048F\n LDX.w #$031C\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0474\n LDX.w #$031E\n JSL Overworld_DrawMap16_Persist\n LDA.w #$061C\n LDX.w #$0320\n JSL Overworld_DrawMap16_Persist\n LDA.w #$061A\n LDX.w #$0322\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "TailPalace_EntranceAnimation", + "code": "TailPalace_EntranceAnimation:\n{\n LDA.b $B0 : ASL A : TAX ; x2\n JSR.w (.AnimationFrames, X)\n RTL", + "file": "overlays.asm" + }, + { + "name": "TailPalace_Frame0", + "code": " TailPalace_Frame0:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0A8C\n LDX.w #$02A2\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "TailPalace_Frame1", + "code": " TailPalace_Frame1:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0AF3\n LDX.w #$0328\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "TailPalace_Frame2", + "code": " TailPalace_Frame2:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0AF1\n LDX.w #$0328\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0AF3\n LDX.w #$03A8\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n STZ.w $04C6\n STZ.b $B0\n STZ.w $0710\n STZ.w $02E4\n STZ.w SprFreeze\n STZ.w $011A\n STZ.w $011B\n STZ.w $011C\n STZ.w $011D\n ; set the overlay\n LDX.b $8A\n LDA.l $7EF280,X\n ORA.b #$20\n STA.l $7EF280,X\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Goron_EntranceAnimation", + "code": "Goron_EntranceAnimation:\n{\n LDA.b $B0 : ASL A : TAX ; x2\n JSR.w (.AnimationFrames, X)\n RTL", + "file": "overlays.asm" + }, + { + "name": "Goron_Frame0", + "code": " Goron_Frame0:\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0789\n LDX.w #$10A2\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n LDA.b #$16 : STA.w $012F\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Goron_Frame1", + "code": " Goron_Frame1:\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$09C1\n LDX.w #$109C\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Goron_Frame2", + "code": " Goron_Frame2:\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$09C1\n LDX.w #$1024\n JSL Overworld_DrawMap16_Persist\n LDA.w #$078A\n LDX.w #$101E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n LDA.b #$16 : STA.w $012F\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Goron_Frame3", + "code": " Goron_Frame3:\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0791\n LDX.w #$0FA2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0797\n LDX.w #$0F9E\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Goron_Frame4", + "code": " Goron_Frame4:\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0787\n LDX.w #$0FA0\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n LDA.b #$1B : STA.w $012F\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n STZ.w $04C6\n STZ.b $B0\n STZ.w $0710\n STZ.w $02E4\n STZ.w SprFreeze\n STZ.w $011A\n STZ.w $011B\n STZ.w $011C\n STZ.w $011D\n LDX.b $8A\n LDA.l $7EF280,X\n ORA.b #$20\n STA.l $7EF280,X\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_EntranceAnimation", + "code": "Fortress_EntranceAnimation:\n{\n LDA.b $B0 : ASL A : TAX ; x2\n JSR.w (.AnimationFrames, X)\n RTL", + "file": "overlays.asm" + }, + { + "name": "Fortress_SFX", + "code": " Fortress_SFX:\n {\n LDA.b #$05 ; SFX1.05\n STA.w $012D\n\n LDA.b #$0C ; SFX2.0C\n STA.w $012E\n\n LDA.b #$07 ; SFX3.07\n STA.w $012F\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_Frame0", + "code": " Fortress_Frame0:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0196\n LDX.w #$0754\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0756\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$06D4\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$06D6\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$0752\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$06D2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$0758\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$06D8\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n JSR Fortress_SFX\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_Frame1", + "code": " Fortress_Frame1:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$09A3\n LDX.w #$0658\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$05D8\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$0652\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$05D2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0654\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0656\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$05D6\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$05D4\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n JSR Fortress_SFX\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_Frame2", + "code": " Fortress_Frame2:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$09A3\n LDX.w #$04D8\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$0558\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$04D2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$0552\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$04D6\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0556\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$04D4\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0554\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n JSR ShakeScreen ; make the screen shake\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n JSR Fortress_SFX\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_Frame3", + "code": " Fortress_Frame3:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$0196\n LDX.w #$0454\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$0456\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$03D6\n JSL Overworld_DrawMap16_Persist\n LDA.w #$0196\n LDX.w #$03D4\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$03D2\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A2\n LDX.w #$0452\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$03D8\n JSL Overworld_DrawMap16_Persist\n LDA.w #$09A3\n LDX.w #$0458\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n JSR Fortress_SFX\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "Fortress_Frame4", + "code": " Fortress_Frame4:\n {\n LDA.b $C8 : BEQ .doInit ; Load the timer\n JMP .notfirstframe\n .doInit\n ; Init code for the frame here\n REP #$30 ; 16 bit mode\n LDA.w #$099C\n LDX.w #$0354\n JSL Overworld_DrawMap16_Persist\n LDA.w #$099C\n LDX.w #$0356\n JSL Overworld_DrawMap16_Persist\n SEP #$30 ; 8 bit mode\n INC.b $14 ; Do tiles transfer\n .notfirstframe\n INC.b $C8 : LDA.b $C8 : CMP.b #$1E ; Load and compare timer\n BNE .wait\n INC.b $B0 ; increase frame\n STZ.b $C8 ; reset timer for next frame\n STZ.w $04C6\n STZ.b $B0\n STZ.w $0710\n STZ.w $02E4\n STZ.w $0FC1\n STZ.w $011A\n STZ.w $011B\n STZ.w $011C\n STZ.w $011D\n ; set the overlay\n LDX.b $8A\n LDA.l $7EF280,X\n ORA.b #$20\n STA.l $7EF280,X\n ; OverworldEntrance_PlayJingle\n #_1BCF40: LDA.b #$1B ; SFX3.1B\n\n #_1BCF42: STA.w $012F\n\n #_1BCF45: STZ.w $04C6\n #_1BCF48: STZ.b $B0\n #_1BCF4A: STZ.w $0710\n\n #_1BCF4D: STZ.w $02E4\n\n #_1BCF50: STZ.w $0FC1\n\n #_1BCF53: STZ.w $011A\n #_1BCF56: STZ.w $011B\n #_1BCF59: STZ.w $011C\n #_1BCF5C: STZ.w $011D\n\n #_1BD1CD: LDA.b #$09\n #_1BD1CF: STA.w $012C\n\n #_1BD1D2: LDA.b #$09 ; SFX1.09\n #_1BD1D4: STA.w $012D\n .wait\n RTS", + "file": "overlays.asm" + }, + { + "name": "LoadDarkWorldIntro", + "code": "LoadDarkWorldIntro:\n{\n ; If we have the old man, set us indoors and dark world\n LDA.l $7EF3C8 : CMP.b #$05 : BNE .not_dw_spawn\n LDA.b #$01 : STA.b $1B\n LDA.b #$40 : STA.l $7EF3CA\n RTL", + "file": "overworld.asm" + }, + { + "name": "LoadOverworldPitAreas", + "code": "LoadOverworldPitAreas:\n{\n LDA $8A : CMP.b #$0F : BEQ .allow_transition\n CMP.b #$11 : BEQ .allow_transition\n CMP.b #$23 : BEQ .allow_transition\n CMP.b #$57 : BEQ .allow_transition\n SEC ; fall in the pit\n RTL", + "file": "overworld.asm" + }, + { + "name": "EXIT_0EF581", + "code": "EXIT_0EF581:\n\n; FlashGanonTowerPalette\norg $0EF587\n LDA.b $8A : CMP.b #$73 : BEQ .on_dark_dm\n CMP.b #$75 : BEQ .on_dark_dm\n CMP.b #$7D : BNE EXIT_0EF581\n .on_dark_dm\n\norg $0EF531", + "file": "overworld.asm" + }, + { + "name": "HUD_ClockDisplay", + "code": "HUD_ClockDisplay:\n{\n JSR RunClock\n JSR DrawClockToHud\n JSL $09B06E ; Restore Garnish_ExecuteUpperSlots_long\n RTL", + "file": "time_system.asm" + }, + { + "name": "LogoFadeInSetClock", + "code": "LogoFadeInSetClock:\n{\n JSL $00ED7C ; IntroLogoPaletteFadeIn\n LDA.b #$08 : STA.l TimeState.Hours ; Set the time to 6:00am\n LDA.b #$3F : STA.l TimeState.Speed ; Set the time speed\n RTL", + "file": "time_system.asm" + }, + { + "name": "ResetClockTriforceRoom", + "code": "ResetClockTriforceRoom:\n{\n JSL $00E384 ; LoadCommonSprites_long\n LDA.b #$00 : STA.l TimeState.Hours ; low hours for palette?\n LDA.b #$00 : STA.l TimeState.Minutes ; high hours for palette?\n RTL", + "file": "time_system.asm" + }, + { + "name": "DrawClockToHudLong", + "code": "DrawClockToHudLong:\n{\n JSR DrawClockToHud\n RTL", + "file": "time_system.asm" + }, + { + "name": "DrawClockToHud", + "code": "DrawClockToHud:\n{\n LDX #$00\n .debut\n LDY #$00 : LDA TimeState.Hours,x\n .debut2\n CMP #$0A : BMI .draw\n SBC #$0A : INY : BRA .debut2\n .draw\n ADC #$90 : CPX #$01 : BEQ .minutes_low\n STA.l !hud_hours_low\n LDA #$30 : STA.l !hud_hours_low+1 ; white palette\n BRA .continue_draw ; 04\n .minutes_low\n STA.l !hud_min_low\n LDA #$30 : STA.l !hud_min_low+1 ; white palette\n .continue_draw\n TYA\n CLC : ADC #$90 : CPX #$01 : BEQ .minutes_high\n STA.l !hud_hours_high\n LDA #$30 : STA.l !hud_hours_high+1 ; white palette\n BRA .finish_draw ; 04\n .minutes_high\n STA.l !hud_min_high\n LDA #$30 : STA.l !hud_min_high+1 ; white palette\n .finish_draw\n INX : CPX #$02 : BMI .debut\n RTS", + "file": "time_system.asm" + }, + { + "name": "RunClock", + "code": "RunClock:\n{\n JSR TimeSystem_CheckCanRun : BCC .return\n\n JSR TimeSystem_UpdateGBCLink\n JSR CheckForSongOfTime\n\n JSR TimeSystem_IncrementTime : BCC .return\n\n JSR TimeSystem_UpdatePalettes\n\n .return\n RTS", + "file": "time_system.asm" + }, + { + "name": "TimeSystem_CheckCanRun", + "code": "TimeSystem_CheckCanRun:\n{\n ; checks current event in game\n LDA $10 : CMP #$07 : BEQ .counter_increasing ; dungeon/building?\n CMP #$09 : BEQ .overworld ; overworld?\n CMP #$0B : BEQ .overworld ; special overworld?\n CMP #$0E : BEQ .dialog ; dialog box?\n CLC : RTS", + "file": "time_system.asm" + }, + { + "name": "TimeSystem_UpdateGBCLink", + "code": "TimeSystem_UpdateGBCLink:\n{\n ; GBC Link code\n LDA $0FFF : CMP #$00 : BEQ .light_world\n LDA $02B2 : BNE .already_gbc_or_minish\n JSL UpdateGbcPalette\n LDA.b #$3B : STA $BC ; change link's sprite\n LDA.b #$06 : STA $02B2 ; set the form id\n .light_world\n .already_gbc_or_minish\n RTS", + "file": "time_system.asm" + }, + { + "name": "TimeSystem_IncrementTime", + "code": "TimeSystem_IncrementTime:\n{\n ; time speed (1,3,5,7,F,1F,3F,7F,FF)\n ; #$3F is almost 1 sec = 1 game minute\n LDA $1A : AND TimeState.Speed : BEQ .increase_minutes ; 05\n CLC : RTS", + "file": "time_system.asm" + }, + { + "name": "TimeSystem_UpdatePalettes", + "code": "TimeSystem_UpdatePalettes:\n{\n ; check indoors/outdoors\n LDA $1B\t: BEQ .outdoors\n RTS", + "file": "time_system.asm" + }, + { + "name": "CheckForSongOfTime", + "code": "CheckForSongOfTime:\n{\n ; Check if Song of Time was activated\n LDA.b SongFlag : CMP.b #$02 : BNE +\n ; Speed up the time\n LDA.b #$00 : STA.l TimeState.Speed\n\n ; If we reached 6am\n LDA.l TimeState.Hours : CMP.b #$06 : BNE ++\n LDA.l TimeState.Minutes : BNE ++\n LDA.b #$3F : STA.l TimeState.Speed\n STZ.b SongFlag\n ++\n\n ; If we reached 6pm\n LDA.l TimeState.Hours : CMP.b #$12 : BNE ++\n LDA.l TimeState.Minutes : BNE ++\n LDA.b #$3F : STA.l TimeState.Speed\n STZ.b SongFlag\n ++\n +\n RTS", + "file": "time_system.asm" + }, + { + "name": "CheckForDailyQuests", + "code": "CheckForDailyQuests:\n{\n LDA.l MagicBeanProg : CMP.b #$7F : BEQ .bean_done\n AND.b #$01 : BEQ .bean_done\n LDA.l MagicBeanProg : AND.b #$08 : BNE .not_first\n LDA.b #$08 : JMP +\n .not_first\n LDA.l MagicBeanProg : AND.b #$10 : BNE .not_second\n LDA.b #$10 : JMP +\n .not_second\n LDA.l MagicBeanProg : AND.b #$20 : BNE .bean_done\n LDA.b #$20\n +\n ORA.l MagicBeanProg : STA.l MagicBeanProg\n LDA.b #$2D : STA.w $012F\n .bean_done\n RTS", + "file": "time_system.asm" + }, + { + "name": "CheckIfNight", + "code": "CheckIfNight:\n{\n JSR LoadPeacetimeSprites : BCS +\n RTL", + "file": "time_system.asm" + }, + { + "name": "CheckIfNight16Bit", + "code": "CheckIfNight16Bit:\n{\n SEP #$30\n JSR LoadPeacetimeSprites : BCS +\n REP #$30\n RTL", + "file": "time_system.asm" + }, + { + "name": "PaletteBufferToEffective", + "code": "PaletteBufferToEffective:\n ; JSR $C769\t; $02:C65F -> palette buffer to effective routine\n JSR $C65F\n RTL", + "file": "time_system.asm" + }, + { + "name": "RomToPaletteBuffer", + "code": "RomToPaletteBuffer:\n{\n LDX.b $8A\n LDA.l $7EFD40,X : STA.b $00\n\n LDA.l OverworldPalettesScreenToSet_New,X\n JSL OverworldPalettesLoader\n JSR Overworld_CopyPalettesToCache\n JSR OverworldLoadScreensPaletteSet\n RTL", + "file": "time_system.asm" + }, + { + "name": "LoadDayNightPaletteEffect", + "code": "LoadDayNightPaletteEffect:\n{\n STA.l TimeState.SubColor : CPX #$0041 : BPL .title_check\n STA.l PalBuf300_HUD, X\n RTL", + "file": "time_system.asm" + }, + { + "name": "ColorSubEffect", + "code": "ColorSubEffect:\n{\n LDA.l TimeState.Hours : AND #$00FF : CLC : ADC.l TimeState.Hours\t; hours * 2\n AND #$00FF : TAX\n\n ; Subtract amount to blue field based on a table\n LDA.l TimeState.SubColor : AND #$7C00 : STA.l TimeState.BlueVal\n SEC : SBC.l .blue, X : STA.l TimeState.TempColor\n\n ; mask out everything except the blue bits\n AND #$7C00 : CMP.l TimeState.TempColor : BEQ .no_blue_sign_change ; overflow ?\n LDA.w !SmallestBlue\n .no_blue_sign_change\n STA.l TimeState.BlueVal\n\n ; Subtract amount to green field based on a table\n LDA.l TimeState.SubColor : AND #$03E0 : STA.l TimeState.GreenVal\n SEC : SBC.l .green, X : STA.l TimeState.TempColor\n\n ; Mask out everything except the green bits\n AND #$03E0 : CMP.l TimeState.TempColor : BEQ .no_green_sign_change ; overflow ?\n LDA.w !SmallestGreen\n .no_green_sign_change\n STA.l TimeState.GreenVal\n\n ; substract amount to red field based on a table\n LDA.l TimeState.SubColor : AND #$001F : STA.l TimeState.RedVal\n SEC : SBC.l .red, X : STA.l TimeState.TempColor\n\n ; mask out everything except the red bits\n AND #$001F : CMP.l TimeState.TempColor : BEQ .no_red_sign_change ; overflow ?\n LDA.w !SmallestRed\n .no_red_sign_change\n STA.l TimeState.RedVal\n\n LDA.l TimeState.BlueVal : ORA.l TimeState.GreenVal : ORA.l TimeState.RedVal\n RTL", + "file": "time_system.asm" + }, + { + "name": "BackgroundFix", + "code": "BackgroundFix:\n{\n BEQ .no_effect\t\t;BRAnch if A=#$0000 (transparent bg)\n JSL ColorSubEffect\n .no_effect:\n STA.l PalCgram500_HUD\n STA.l PalBuf300_HUD\n STA.l PalCgram540_BG\n STA.l PalBuf340_BG\n RTL", + "file": "time_system.asm" + }, + { + "name": "MosaicFix", + "code": "MosaicFix:\n{\n BEQ +\n JSL ColorSubEffect\n +\n STA.l PalBuf300_HUD\n STA.l PalBuf340_BG\n RTL", + "file": "time_system.asm" + }, + { + "name": "SubAreasFix", + "code": "SubAreasFix:\n{\n BEQ .no_effect\n STA.l TimeState.SubColor\n PHX\n REP #$20\n JSL ColorSubEffect\n SEP #$20\n PLX\n .no_effect\n STA.l PalBuf300_HUD\n STA.l PalBuf340_BG\n RTL", + "file": "time_system.asm" + }, + { + "name": "GlovesFix", + "code": "GlovesFix:\n{\n STA.l TimeState.SubColor\n LDA $1B : AND #$00FF : BEQ .outdoors3\n LDA.l TimeState.SubColor\n STA GlovePalettePosition\n RTL", + "file": "time_system.asm" + }, + { + "name": "ColorBgFix", + "code": "ColorBgFix:\n{\n PHA\n SEP #$30\n ; Check for save and quit\n LDA.b $10 : CMP.b #$17 : BEQ .vanilla\n REP #$30\n PLA\n STA.l TimeState.SubColor\n JSL ColorSubEffect\n STA.l PalCgram500_HUD\n STA.l PalCgram540_BG\n RTL", + "file": "time_system.asm" + }, + { + "name": "LoadPeacetimeSprites", + "code": "LoadPeacetimeSprites:\n{\n ; Map 2E, 2F if Crystals && 0x10 == 0\n LDA $8A : CMP.b #$2E : BEQ .tail_palace\n CMP.b #$2F : BEQ .tail_palace\n CMP.b #$1E : BEQ .zora_sanctuary\n JMP +\n .tail_palace\n LDA.l Crystals : AND #$10 : BNE .load_peacetime\n JMP +\n .zora_sanctuary\n LDA.l Crystals : AND #$20 : BNE .load_peacetime\n JMP +\n .load_peacetime\n LDA.b #$01\n CLC\n RTS", + "file": "time_system.asm" + }, + { + "name": "FixSaveAndQuit", + "code": "FixSaveAndQuit:\n{\n LDA.b #$08 : STA.l TimeState.Hours\n LDA.l GameState\n RTL", + "file": "time_system.asm" + }, + { + "name": "FixShockPalette", + "code": "FixShockPalette:\n{\n PHA\n LDA.b $1B : BNE .indoors\n PLA\n STA TimeState.SubColor\n PHX\n JSL ColorSubEffect\n PLX\n STA.l PalCgram500_HUD, X\n RTL", + "file": "time_system.asm" + }, + { + "name": "FixDungeonMapColors", + "code": "FixDungeonMapColors:\n{\n PHA\n ; Cache the current time\n LDA TimeState.Hours : STA $7EF900\n LDA TimeState.Minutes : STA $7EF901\n ; Set the time to 8:00am while map is open\n LDA.b #$08 : STA TimeState.Hours\n LDA.b #$00 : STA TimeState.Minutes\n PLA\n STA.l $7EC229\n RTL", + "file": "time_system.asm" + }, + { + "name": "RestoreTimeForDungeonMap", + "code": "RestoreTimeForDungeonMap:\n{\n LDA $7EF900 : STA TimeState.Hours\n LDA $7EF901 : STA TimeState.Minutes\n LDA.l $7EC017\n RTL", + "file": "time_system.asm" + } +] \ No newline at end of file diff --git a/data/symbols_map.json b/data/symbols_map.json new file mode 100644 index 0000000..ab13b37 --- /dev/null +++ b/data/symbols_map.json @@ -0,0 +1,5059 @@ +{ + "$7E0000": "SCRAP00", + "$7E0001": "SCRAP01", + "$7E0002": "SCRAP02", + "$7E0003": "SCRAP03", + "$7E0004": "SCRAP04", + "$7E0005": "SCRAP05", + "$7E0006": "SCRAP06", + "$7E0007": "SCRAP07", + "$7E0008": "SCRAP08", + "$7E0009": "SCRAP09", + "$7E000A": "SCRAP0A", + "$7E000B": "SCRAP0B", + "$7E000C": "SCRAP0C", + "$7E000D": "SCRAP0D", + "$7E000E": "SCRAP0E", + "$7E000F": "SCRAP0F", + "$7E0010": "MODE", + "$7E0011": "SUBMODE", + "$7E0012": "LAG", + "$7E0013": "INIDISPQ", + "$7E0014": "NMISTRIPES", + "$7E0015": "NMICGRAM", + "$7E0016": "NMIHUD", + "$7E0017": "NMIINCR", + "$7E0018": "NMIUP1100", + "$7E0019": "UPINCVH", + "$7E001A": "FRAME", + "$7E001B": "INDOORS", + "$7E001C": "TMQ", + "$7E001D": "TSQ", + "$7E001E": "TMWQ", + "$7E001F": "TSWQ", + "$7E0020": "POSY", + "$7E0021": "POSYH", + "$7E0022": "POSX", + "$7E0023": "POSXH", + "$7E0024": "POSZ", + "$7E0025": "POSZH", + "$7E0026": "PUSHDIR", + "$7E0027": "KNBY", + "$7E0028": "KNBX", + "$7E0029": "KNBZ", + "$7E002A": "SUBVY", + "$7E002B": "SUBVX", + "$7E002C": "ATRFADE", + "$7E002D": "ANIMTIME", + "$7E002E": "ANIMSTEP", + "$7E002F": "DIR", + "$7E0030": "DIFFY", + "$7E0031": "DIFFX", + "$7E0032": "HOPCALCY", + "$7E0033": "HOPCALCX", + "$7E0034": "ATRAGATIME", + "$7E0035": "UNUSED_35", + "$7E0036": "UNUSED_36", + "$7E0037": "UNUSED_37", + "$7E0038": "TACTSLOPEO", + "$7E0039": "TACTSLOPEU", + "$7E003A": "BYFLAG", + "$7E003B": "AFLAG", + "$7E003C": "BFLAG", + "$7E003D": "ANIMTIME2", + "$7E003E": "CALCYL", + "$7E003F": "CALCXL", + "$7E0040": "CALCYH", + "$7E0041": "CALCXH", + "$7E0042": "OBSTRUCTV", + "$7E0043": "OBSTRUCTD", + "$7E0044": "OAMOFFAY", + "$7E0045": "OAMOFFAX", + "$7E0046": "INPAIN", + "$7E0047": "TINKTM", + "$7E0048": "DOGRAB", + "$7E0049": "FORCEMOVE", + "$7E004A": "FORCEMOVEU", + "$7E004B": "VISIBLE", + "$7E004C": "CAPETIME", + "$7E004D": "JUMPING", + "$7E004E": "TRANSLAND", + "$7E004F": "FSHFSH", + "$7E0050": "STRAFE", + "$7E0051": "TARGETY", + "$7E0052": "TARGETYH", + "$7E0053": "TARGETX", + "$7E0054": "TARGETXH", + "$7E0055": "CAPEON", + "$7E0056": "RABBIT", + "$7E0057": "STAIRDRAG", + "$7E0058": "TACTSTAIR", + "$7E0059": "TACTPIT", + "$7E005A": "FALLPOSE", + "$7E005B": "SLIP", + "$7E005C": "FALLTIMER", + "$7E005D": "LINKDO", + "$7E005E": "SPEED", + "$7E005F": "MANIPIDL", + "$7E0060": "MANIPIDH", + "$7E0061": "FRICTION", + "$7E0062": "HDOOR", + "$7E0063": "ATRAGASP", + "$7E0064": "ATRAGSTEP", + "$7E0065": "OAMPROPOR", + "$7E0066": "LASTDIR", + "$7E0067": "WALKDIR", + "$7E0068": "DIFFYH", + "$7E0069": "DIFFXH", + "$7E006A": "DIAGFACE", + "$7E006B": "SLOPEPUSH", + "$7E006C": "DOORWAY", + "$7E006D": "SLOPEFAIL", + "$7E006E": "TACTSLOPI", + "$7E006F": "TACTSLOPIH", + "$7E0070": "UNUSED_70", + "$7E0071": "UNUSED_71", + "$7E0072": "SCRAP72", + "$7E0073": "SCRAP73", + "$7E0074": "SCRAP74", + "$7E0075": "SCRAP75", + "$7E0076": "SCRAP76", + "$7E0077": "SCRAP77", + "$7E0078": "JUMPSCROLL", + "$7E0079": "SPINTIME", + "$7E007A": "UNUSED_7A", + "$7E007B": "WORLDCACHE", + "$7E007C": "UNUSED_7C", + "$7E007D": "UNUSED_7D", + "$7E007E": "UNUSED_7E", + "$7E007F": "UNUSED_7F", + "$7E0080": "UNUSED_80", + "$7E0081": "UNUSED_81", + "$7E0082": "UNUSED_82", + "$7E0083": "UNUSED_83", + "$7E0084": "OWTMAPI", + "$7E0085": "OWTMAPIH", + "$7E0086": "OWMAPDIX", + "$7E0087": "OWMAPDIXH", + "$7E0088": "OWMAPDIY", + "$7E0089": "OWMAPDIYH", + "$7E008A": "OWSCR", + "$7E008B": "OWSCRH", + "$7E008C": "OWBG1", + "$7E008D": "FEETANIM", + "$7E008E": "UNUSED_8E", + "$7E008F": "UNUSED_8F", + "$7E0090": "OAMLBFR", + "$7E0091": "OAMLBFRH", + "$7E0092": "OAMHBFR", + "$7E0093": "OAMHBFRH", + "$7E0094": "BGMODEQ", + "$7E0095": "MOSAICQ", + "$7E0096": "W12SELQ", + "$7E0097": "W34SELQ", + "$7E0098": "WOBJSELQ", + "$7E0099": "CGWSELQ", + "$7E009A": "CGADSUBQ", + "$7E009B": "HDMAENQ", + "$7E009C": "COLDATAR", + "$7E009D": "COLDATAG", + "$7E009E": "COLDATAB", + "$7E009F": "UNUSED_9F", + "$7E00A0": "ROOM", + "$7E00A1": "ROOMH", + "$7E00A2": "PREVROOM", + "$7E00A3": "PREVROOMH", + "$7E00A4": "FLOOR", + "$7E00A5": "FLOORH", + "$7E00A6": "BSETH", + "$7E00A7": "BSETV", + "$7E00A8": "ROOMLAYOUT", + "$7E00A9": "QUADH", + "$7E00AA": "QUADV", + "$7E00AB": "UNUSED_AB", + "$7E00AC": "UNUSED_AC", + "$7E00AD": "BGFX", + "$7E00AE": "TAG1", + "$7E00AF": "TAG2", + "$7E00B0": "SUBSUB", + "$7E00B1": "UNUSED_B1", + "$7E00B2": "SCRAPB2", + "$7E00B3": "SCRAPB3", + "$7E00B4": "SCRAPB4", + "$7E00B5": "SCRAPB5", + "$7E00B6": "UNUSED_B6", + "$7E00B7": "OBJPTR", + "$7E00B8": "OBJPTRH", + "$7E00B9": "OBJPTRB", + "$7E00BA": "OBJX", + "$7E00BB": "OBJXH", + "$7E00BC": "UNUSED_BC", + "$7E00BD": "SCRAPBD", + "$7E00BE": "SCRAPBE", + "$7E00BF": "SCRAPBF", + "$7E00C0": "SCRAPC0", + "$7E00C1": "SCRAPC1", + "$7E00C2": "SCRAPC2", + "$7E00C3": "SCRAPC3", + "$7E00C4": "SCRAPC4", + "$7E00C5": "SCRAPC5", + "$7E00C6": "SCRAPC6", + "$7E00C7": "SCRAPC7", + "$7E00C8": "SCRAPC8", + "$7E00C9": "SCRAPC9", + "$7E00CA": "SCRAPCA", + "$7E00CB": "SCRAPCB", + "$7E00CC": "SCRAPCC", + "$7E00CD": "SCRAPCD", + "$7E00CE": "SCRAPCE", + "$7E00CF": "SCRAPCF", + "$7E00D0": "SCRAPD0", + "$7E00D1": "SCRAPD1", + "$7E00D2": "SCRAPD2", + "$7E00D3": "SCRAPD3", + "$7E00D4": "SCRAPD4", + "$7E00D5": "SCRAPD5", + "$7E00D6": "SCRAPD6", + "$7E00D7": "SCRAPD7", + "$7E00D8": "SCRAPD8", + "$7E00D9": "SCRAPD9", + "$7E00DA": "SCRAPDA", + "$7E00DB": "SCRAPDB", + "$7E00DC": "SCRAPDC", + "$7E00DD": "SCRAPDD", + "$7E00DE": "SCRAPDE", + "$7E00DF": "SCRAPDF", + "$7E00E0": "BG1H", + "$7E00E1": "BG1HH", + "$7E00E2": "BG2H", + "$7E00E3": "BG2HH", + "$7E00E4": "BG3HOFSQL", + "$7E00E5": "BG3HOFSQH", + "$7E00E6": "BG1V", + "$7E00E7": "BG1VH", + "$7E00E8": "BG2V", + "$7E00E9": "BG2VH", + "$7E00EA": "BG3VOFSQL", + "$7E00EB": "BG3VOFSQH", + "$7E00EC": "COLTYPE", + "$7E00ED": "COLTYPEH", + "$7E00EE": "LAYER", + "$7E00EF": "TRANTOG", + "$7E00F0": "JOY1A_ALL", + "$7E00F1": "JOY2A_ALL", + "$7E00F2": "JOY1B_ALL", + "$7E00F3": "JOY2B_ALL", + "$7E00F4": "JOY1A_NEW", + "$7E00F5": "JOY2A_NEW", + "$7E00F6": "JOY1B_NEW", + "$7E00F7": "JOY2B_NEW", + "$7E00F8": "JOY1A_OLD", + "$7E00F9": "JOY2A_OLD", + "$7E00FA": "JOY1B_OLD", + "$7E00FB": "JOY2B_OLD", + "$7E00FC": "BWSETH", + "$7E00FD": "BWSETV", + "$7E00FE": "UNUSED_FE", + "$7E00FF": "NMIVTIME", + "$7E0100": "POSECHR", + "$7E0101": "POSECHRH", + "$7E0102": "AUXACHR", + "$7E0103": "AUXACHRH", + "$7E0104": "AUXBCHR", + "$7E0105": "AUXBCHRH", + "$7E0106": "UNUSED_7E0106", + "$7E0107": "SWORDCHR", + "$7E0108": "SHIELDCHR", + "$7E0109": "ITEMCHR", + "$7E010A": "DEADLOAD", + "$7E010B": "UNUSED_7E010B", + "$7E010C": "MODECACHE", + "$7E010D": "SUBCACHE", + "$7E010E": "ENTRANCE", + "$7E010F": "ENTRANCEH", + "$7E0110": "ROOMX3", + "$7E0111": "ROOMX3H", + "$7E0112": "MDLSCENE", + "$7E0113": "UNUSED_7E0113", + "$7E0114": "TILEUW", + "$7E0115": "TILEUWH", + "$7E0116": "ARBTMAP", + "$7E0117": "ARBTMAPH", + "$7E0118": "UPINCBL", + "$7E0119": "UPINCBH", + "$7E011A": "BG1SHAKEV", + "$7E011B": "BG1SHAKEVH", + "$7E011C": "BG1SHAKEH", + "$7E011D": "BG1SHAKEHH", + "$7E011E": "BG2HOFSQL", + "$7E011F": "BG2HOFSQH", + "$7E0120": "BG1HOFSQL", + "$7E0121": "BG1HOFSQH", + "$7E0122": "BG2VOFSQL", + "$7E0123": "BG2VOFSQH", + "$7E0124": "BG1VOFSQL", + "$7E0125": "BG1VOFSQH", + "$7E0126": "UWTRANSCR", + "$7E0127": "UNUSED_7E0127", + "$7E0128": "IRQSET", + "$7E0129": "UNUSED_7E0129", + "$7E012A": "IRQTHREAD", + "$7E012B": "UNUSED_7E012B", + "$7E012C": "SONG", + "$7E012D": "SFX1", + "$7E012E": "SFX2", + "$7E012F": "SFX3", + "$7E0130": "LASTSONG", + "$7E0131": "LASTSFX1", + "$7E0132": "SONGQ", + "$7E0133": "LASTAPU0", + "$7E0134": "ANIMVRAML", + "$7E0135": "ANIMVRAMH", + "$7E0136": "SONGBANK", + "$7E01FE": "RESETRET", + "$7E01FF": "STACK", + "$7E0200": "INTSUBSUB", + "$7E0201": "INTSUBSUBH", + "$7E0202": "YSEL", + "$7E0203": "JUNK_7E0203", + "$7E0204": "JUNK_7E0204", + "$7E0205": "BOTSUBGROW", + "$7E0206": "MENUFRAME", + "$7E0207": "MENUBLINK", + "$7E0208": "HPFLIPT", + "$7E0209": "HPFLIPI", + "$7E020A": "HPFILL", + "$7E020B": "DEBUG_7E020B", + "$7E020C": "UNUSED_7E020C", + "$7E020D": "DNGMAPSUBSUBSUB", + "$7E020E": "MAPFLOOR", + "$7E020F": "JUNK_7E020F", + "$7E0210": "CANMAPSCR", + "$7E0211": "MAPCURF", + "$7E0212": "MAPCURFH", + "$7E0213": "MAPSCRV", + "$7E0214": "MAPSCRVH", + "$7E0215": "URHEREX", + "$7E0216": "URHEREXH", + "$7E0217": "URHEREY", + "$7E0218": "URHEREYH", + "$7E0219": "HUDLOC", + "$7E021A": "HUDLOCH", + "$7E021B": "UNUSED_7E021B", + "$7E021C": "UNUSED_7E021C", + "$7E021D": "WEIRDPTRL", + "$7E021E": "WEIRDPTRH", + "$7E021F": "WEIRDPTRB", + "$7E0220": "WEIRDPTRU", + "$7E0221": "JUNK_7E0221", + "$7E0222": "JUNK_7E0222", + "$7E0223": "JUNK_7E0223", + "$7E0224": "UNUSED_7E0224", + "$7E0280": "ANC0FPRI", + "$7E0281": "ANC1FPRI", + "$7E0282": "ANC2FPRI", + "$7E0283": "ANC3FPRI", + "$7E0284": "ANC4FPRI", + "$7E0285": "ANC5FPRI", + "$7E0286": "ANC6FPRI", + "$7E0287": "ANC7FPRI", + "$7E0288": "ANC8FPRI", + "$7E0289": "ANC9FPRI", + "$7E028A": "ANC0COLW", + "$7E028B": "ANC1COLW", + "$7E028C": "ANC2COLW", + "$7E028D": "ANC3COLW", + "$7E028E": "ANC4COLW", + "$7E028F": "ANC5COLW", + "$7E0290": "ANC6COLW", + "$7E0291": "ANC7COLW", + "$7E0292": "ANC8COLW", + "$7E0293": "ANC9COLW", + "$7E0294": "ANC0VZ", + "$7E0295": "ANC1VZ", + "$7E0296": "ANC2VZ", + "$7E0297": "ANC3VZ", + "$7E0298": "ANC4VZ", + "$7E0299": "ANC5VZ", + "$7E029A": "ANC6VZ", + "$7E029B": "ANC7VZ", + "$7E029C": "ANC8VZ", + "$7E029D": "ANC9VZ", + "$7E029E": "ANC0Z", + "$7E029F": "ANC1Z", + "$7E02A0": "ANC2Z", + "$7E02A1": "ANC3Z", + "$7E02A2": "ANC4Z", + "$7E02A3": "ANC5Z", + "$7E02A4": "ANC6Z", + "$7E02A5": "ANC7Z", + "$7E02A6": "ANC8Z", + "$7E02A7": "ANC9Z", + "$7E02A8": "ANC0SUBZ", + "$7E02A9": "ANC1SUBZ", + "$7E02AA": "ANC2SUBZ", + "$7E02AB": "ANC3SUBZ", + "$7E02AC": "ANC4SUBZ", + "$7E02AD": "ANC5SUBZ", + "$7E02AE": "ANC6SUBZ", + "$7E02AF": "ANC7SUBZ", + "$7E02B0": "ANC8SUBZ", + "$7E02B1": "ANC9SUBZ", + "$7E02B2": "UNUSED_7E02B2", + "$7E02B3": "UNUSED_7E02B3", + "$7E02B4": "UNUSED_7E02B4", + "$7E02B5": "UNUSED_7E02B5", + "$7E02B6": "UNUSED_7E02B6", + "$7E02B7": "UNUSED_7E02B7", + "$7E02B8": "UNUSED_7E02B8", + "$7E02B9": "UNUSED_7E02B9", + "$7E02BA": "UNUSED_7E02BA", + "$7E02BB": "UNUSED_7E02BB", + "$7E02BC": "UNUSED_7E02BC", + "$7E02BD": "UNUSED_7E02BD", + "$7E02BE": "UNUSED_7E02BE", + "$7E02BF": "UNUSED_7E02BF", + "$7E02C0": "TACTAUTOST", + "$7E02C1": "TACTAUTOSTH", + "$7E02C2": "TACTMCACHE", + "$7E02C3": "BLKFALLS", + "$7E02C4": "BLKFALLT", + "$7E02C5": "JUMPDELAY", + "$7E02C6": "BOUNCESHIFT", + "$7E02C7": "REBOUNCE", + "$7E02C8": "UNUSED_7E02C8", + "$7E02C9": "PITANIMX", + "$7E02CA": "PUSHFALL", + "$7E02CB": "STROKETIME", + "$7E02CC": "SWIMOFF", + "$7E02CD": "YELL", + "$7E02CE": "YELLH", + "$7E02CF": "FLWANIMIR", + "$7E02D0": "FLWHOOK", + "$7E02D1": "FLWHOOKI", + "$7E02D2": "FLWGRABTIME", + "$7E02D3": "FLWANIMIW", + "$7E02D4": "JUNK_7E02D4", + "$7E02D5": "UNUSED_7E02D5", + "$7E02D6": "JUNK_7E02D6", + "$7E02D7": "FLWREPRI", + "$7E02D8": "ITEMGETID", + "$7E02D9": "JUNK_7E02D9", + "$7E02DA": "BRANDISH", + "$7E02DB": "NOWARP", + "$7E02DC": "SKICKXL", + "$7E02DD": "SKICKXH", + "$7E02DE": "SKICKYL", + "$7E02DF": "SKICKYH", + "$7E02E0": "BUNNY", + "$7E02E1": "POOFING", + "$7E02E2": "POOFTIME", + "$7E02E3": "SWORDCOOL", + "$7E02E4": "CUTSCENE", + "$7E02E5": "TACTCHEST", + "$7E02E6": "TACTCHESTH", + "$7E02E7": "TACTCHEST2", + "$7E02E8": "TACTSPIKE", + "$7E02E9": "RECEIPTID", + "$7E02EA": "CHESTTILE", + "$7E02EB": "CHESTTILEH", + "$7E02EC": "LIFTIDX", + "$7E02ED": "PLAQUED", + "$7E02EE": "TACTSPLQ", + "$7E02EF": "TACTBRK", + "$7E02F0": "DSRTACT", + "$7E02F1": "DASHSTOP", + "$7E02F2": "FLWTALKED", + "$7E02F3": "JUNK_7E02F3", + "$7E02F4": "LIFTCACHE", + "$7E02F5": "SOMPLAT", + "$7E02F6": "TACTHOOK", + "$7E02F7": "TACTRUPEE", + "$7E02F8": "THUD", + "$7E02F9": "FLWNODRAW", + "$7E02FA": "STATUE", + "$7E02FB": "UNUSED_7E02FB", + "$7E02FC": "UNUSED_7E02FC", + "$7E02FD": "UNUSED_7E02FD", + "$7E02FE": "UNUSED_7E02FE", + "$7E02FF": "UNUSED_7E02FF", + "$7E0300": "ITEMSTEP", + "$7E0301": "USEY1", + "$7E0302": "COLLIDE", + "$7E0303": "CURY", + "$7E0304": "ACTY", + "$7E0305": "NOWINDOW", + "$7E0306": "AINDEX2", + "$7E0307": "RODTYPE", + "$7E0308": "ACTA", + "$7E0309": "CARRY", + "$7E030A": "STRAIN", + "$7E030B": "STRAINTIME", + "$7E030C": "UNUSED_7E030C", + "$7E030D": "SWEAT", + "$7E030E": "DEBUG_7E030E", + "$7E030F": "UNUSED_7E030F", + "$7E0310": "FLOORVYL", + "$7E0311": "FLOORVYH", + "$7E0312": "FLOORVXL", + "$7E0313": "FLOORVXH", + "$7E0314": "SPRLIFT", + "$7E0315": "COLFLAG", + "$7E0316": "MVONY", + "$7E0317": "MVONX", + "$7E0318": "FLRYL", + "$7E0319": "FLRYH", + "$7E031A": "FLRXL", + "$7E031B": "FLRXH", + "$7E031C": "SPINGFX", + "$7E031D": "SPINSTEP", + "$7E031E": "SPINOFF", + "$7E031F": "IFRAMES", + "$7E0320": "TACTMASK0C", + "$7E0321": "TACTMASK0CH", + "$7E0322": "MASK0CON", + "$7E0323": "OAMDIR", + "$7E0324": "ADDSPELL", + "$7E0325": "JUNK_7E0325", + "$7E0326": "MOMENTUMY", + "$7E0327": "MOMENTUMYH", + "$7E0328": "MOMENTUMX", + "$7E0329": "MOMENTUMXH", + "$7E032A": "STROKETIMECNT", + "$7E032B": "SWIMIY", + "$7E032C": "SWIMIYH", + "$7E032D": "SWIMIX", + "$7E032E": "SWIMIXH", + "$7E032F": "SWIMRESY", + "$7E0330": "SWIMRESYH", + "$7E0331": "SWIMRESX", + "$7E0332": "SWIMRESXH", + "$7E0333": "FIRETILE", + "$7E0334": "SWIMPYL", + "$7E0335": "SWIMPYH", + "$7E0336": "SWIMPXL", + "$7E0337": "SWIMPXH", + "$7E0338": "AFLAGY", + "$7E0339": "AFLAGYH", + "$7E033A": "AFLAGX", + "$7E033B": "AFLAGXH", + "$7E033C": "SWIMACCELY", + "$7E033D": "SWIMTHRUSTY", + "$7E033E": "SWIMACCELX", + "$7E033F": "SWIMTHRUSTX", + "$7E0340": "SWIMDIR", + "$7E0341": "TACTDEEPW", + "$7E0342": "TACTDEEPWH", + "$7E0343": "TACTJW", + "$7E0344": "TACTJWH", + "$7E0345": "DEEPWATER", + "$7E0346": "LINKPALIL", + "$7E0347": "LINKPALIH", + "$7E0348": "TACTICE", + "$7E0349": "TACTICEH", + "$7E034A": "ICEFLOOR", + "$7E034B": "DEBUGROD", + "$7E034C": "TACTMASK1C", + "$7E034D": "TACTMASK1CH", + "$7E034E": "SOMPRI", + "$7E034F": "STROKE", + "$7E0350": "DEBUG_7E0350", + "$7E0351": "FEETS", + "$7E0352": "LOAMXL", + "$7E0353": "LOAMXH", + "$7E0354": "AUXDRAW", + "$7E0355": "SLOSHSTEP", + "$7E0356": "SLOSHTIME", + "$7E0357": "TACTTHICK", + "$7E0358": "TACTTHICKH", + "$7E0359": "TACTSHALLOW", + "$7E035A": "TACTSHALLOWH", + "$7E035B": "TACTDIG", + "$7E035C": "TACTDIGH", + "$7E035D": "SHDWPROPL", + "$7E035E": "SHDWPROPH", + "$7E035F": "BOOMOUT", + "$7E0360": "ZAP", + "$7E0361": "UNUSED_7E0361", + "$7E0362": "HOPVZ2", + "$7E0363": "HOPVZ2H", + "$7E0364": "HOPZ", + "$7E0365": "HOPZH", + "$7E0366": "TACTLIFTC", + "$7E0367": "TACTLIFTCH", + "$7E0368": "LIFTX", + "$7E0369": "LIFTX2", + "$7E036A": "LIFTBX", + "$7E036B": "DIESPIN", + "$7E036C": "AINDEX", + "$7E036D": "TACTHOPNS", + "$7E036E": "TACTHOPHD", + "$7E036F": "TACTSD", + "$7E0370": "TACTEP", + "$7E0371": "PUSHTIME", + "$7E0372": "DASHING", + "$7E0373": "HURTME", + "$7E0374": "DASHTIME", + "$7E0375": "HOPTIME", + "$7E0376": "GRABBING", + "$7E0377": "GRABFRAME", + "$7E0378": "STAIRDIRT", + "$7E0379": "NOA", + "$7E037A": "USEY2", + "$7E037B": "NOPAIN", + "$7E037C": "SLEEPMODE", + "$7E037D": "SLEEPSTAGE", + "$7E037E": "HOOKDRAG", + "$7E037F": "CHEAT", + "$7E0380": "ANC0MISCA", + "$7E0381": "ANC1MISCA", + "$7E0382": "ANC2MISCA", + "$7E0383": "ANC3MISCA", + "$7E0384": "ANC4MISCA", + "$7E0385": "ANC0MISCB", + "$7E0386": "ANC1MISCB", + "$7E0387": "ANC2MISCB", + "$7E0388": "ANC3MISCB", + "$7E0389": "ANC4MISCB", + "$7E038A": "ANC5MISCB", + "$7E038B": "ANC6MISCB", + "$7E038C": "ANC7MISCB", + "$7E038D": "ANC8MISCB", + "$7E038E": "ANC9MISCB", + "$7E038F": "ANC0MISCC", + "$7E0390": "ANC1MISCC", + "$7E0391": "ANC2MISCC", + "$7E0392": "ANC3MISCC", + "$7E0393": "ANC4MISCC", + "$7E0394": "ANC0MISCD", + "$7E0395": "ANC1MISCD", + "$7E0396": "ANC2MISCD", + "$7E0397": "ANC3MISCD", + "$7E0398": "ANC4MISCD", + "$7E0399": "BOOMHITYL", + "$7E039A": "BOOMHITYH", + "$7E039B": "BOOMHITXL", + "$7E039C": "BOOMHITXH", + "$7E039D": "HOOKSLOT", + "$7E039E": "UNUSED_7E039E", + "$7E039F": "ANC0MISCE", + "$7E03A0": "ANC1MISCE", + "$7E03A1": "ANC2MISCE", + "$7E03A2": "ANC3MISCE", + "$7E03A3": "ANC4MISCE", + "$7E03A4": "ANC0MISCF", + "$7E03A5": "ANC1MISCF", + "$7E03A6": "ANC2MISCF", + "$7E03A7": "ANC3MISCF", + "$7E03A8": "ANC4MISCF", + "$7E03A9": "ANC0MISCG", + "$7E03AA": "ANC1MISCG", + "$7E03AB": "ANC2MISCG", + "$7E03AC": "ANC3MISCG", + "$7E03AD": "ANC4MISCG", + "$7E03AE": "UNUSED_7E03AE", + "$7E03AF": "UNUSED_7E03AF", + "$7E03B0": "UNUSED_7E03B0", + "$7E03B1": "ANC0MISCH", + "$7E03B2": "ANC1MISCH", + "$7E03B3": "ANC2MISCH", + "$7E03B4": "ANC3MISCH", + "$7E03B5": "ANC4MISCH", + "$7E03B6": "BOMB0ATXL", + "$7E03B7": "BOMB0ATXH", + "$7E03B8": "BOMB1ATXL", + "$7E03B9": "BOMB1ATXH", + "$7E03BA": "BOMB0ATYL", + "$7E03BB": "BOMB0ATYH", + "$7E03BC": "BOMB1ATYL", + "$7E03BD": "BOMB1ATYH", + "$7E03BE": "BOMB0ATDIR", + "$7E03BF": "BOMB1ATDIR", + "$7E03C0": "DEBRIS0T", + "$7E03C1": "DEBRIS1T", + "$7E03C2": "DEBRIS0I", + "$7E03C3": "DEBRIS1I", + "$7E03C4": "ASEARCH", + "$7E03C5": "ANC0MISCI", + "$7E03C6": "ANC1MISCI", + "$7E03C7": "ANC2MISCI", + "$7E03C8": "ANC3MISCI", + "$7E03C9": "ANC4MISCI", + "$7E03CA": "ANC0MISCJ", + "$7E03CB": "ANC1MISCJ", + "$7E03CC": "ANC2MISCJ", + "$7E03CD": "ANC3MISCJ", + "$7E03CE": "ANC4MISCJ", + "$7E03CF": "ANC0MISCK", + "$7E03D0": "ANC1MISCK", + "$7E03D1": "ANC2MISCK", + "$7E03D2": "ANC3MISCK", + "$7E03D3": "ANC4MISCK", + "$7E03D4": "UNUSED_7E03D4", + "$7E03D5": "ANC0MISCL", + "$7E03D6": "ANC1MISCL", + "$7E03D7": "ANC2MISCL", + "$7E03D8": "ANC3MISCL", + "$7E03D9": "ANC4MISCL", + "$7E03DA": "UNUSED_7E03DA", + "$7E03DB": "SOM0BTN", + "$7E03DC": "SOM1BTN", + "$7E03DD": "SOM2BTN", + "$7E03DE": "SOM3BTN", + "$7E03DF": "SOM4BTN", + "$7E03E0": "UNUSED_7E03E0", + "$7E03E1": "UNUSED_7E03E1", + "$7E03E2": "UNUSED_7E03E2", + "$7E03E3": "UNUSED_7E03E3", + "$7E03E4": "ANC0TILE", + "$7E03E5": "ANC1TILE", + "$7E03E6": "ANC2TILE", + "$7E03E7": "ANC3TILE", + "$7E03E8": "ANC4TILE", + "$7E03E9": "GRAVEON", + "$7E03EA": "ANC0NOLIFT", + "$7E03EB": "ANC1NOLIFT", + "$7E03EC": "ANC2NOLIFT", + "$7E03ED": "ANC3NOLIFT", + "$7E03EE": "ANC4NOLIFT", + "$7E03EF": "SWORDUP", + "$7E03F0": "WHISTLE", + "$7E03F1": "TACTBELTUD", + "$7E03F2": "TACTBELTLR", + "$7E03F3": "CONVEYOR", + "$7E03F4": "LINECOUNT", + "$7E03F5": "TEMPBUNTM", + "$7E03F6": "TEMPBUNTMH", + "$7E03F7": "TEMPBUN", + "$7E03F8": "ATPULL", + "$7E03F9": "HOOKWAIT", + "$7E03FA": "EQUOFFXL", + "$7E03FB": "EQUOFFXH", + "$7E03FC": "YOVERRIDE", + "$7E03FD": "INBIRD", + "$7E03FE": "UNUSED_7E03FE", + "$7E03FF": "UNUSED_7E03FF", + "$7E0400": "UNLOCKED2", + "$7E0401": "UNLOCKED", + "$7E0402": "OPENED", + "$7E0403": "TAKEN", + "$7E0404": "UNUSED_7E0404", + "$7E0405": "JUNK_7E0405", + "$7E0406": "UNUSED_7E0406", + "$7E0407": "UNUSED_7E0407", + "$7E0408": "VISITED", + "$7E0409": "VISITEDH", + "$7E040A": "OWSCR2", + "$7E040B": "OWSCR2H", + "$7E040C": "DUNGEON", + "$7E040D": "DUNGEONH", + "$7E040E": "LAYOUT", + "$7E040F": "LAYOUTH", + "$7E0410": "OWTDIR", + "$7E0411": "OWTDIRH", + "$7E0412": "UPINCSTEP", + "$7E0413": "UNUSED_7E0413", + "$7E0414": "BGACT", + "$7E0415": "BGACTH", + "$7E0416": "MAPPANVCT", + "$7E0417": "MAPPANVCTH", + "$7E0418": "TRANDIR", + "$7E0419": "TRANDIRH", + "$7E041A": "MVWALL", + "$7E041B": "MVWALLH", + "$7E041C": "MWSUBL", + "$7E041D": "MWSUBH", + "$7E041E": "MWDRAWXL", + "$7E041F": "MWDRAWXH", + "$7E0420": "JUNK_7E0420", + "$7E0421": "JUNK_7E0421", + "$7E0422": "BG1OFFHL", + "$7E0423": "BG1OFFHH", + "$7E0424": "BG1OFFVL", + "$7E0425": "BG1OFFVH", + "$7E0426": "UNUSED_7E0426", + "$7E0427": "UNUSED_7E0427", + "$7E0428": "UNKNOWN_7E0428", + "$7E0429": "UNUSED_7E0429", + "$7E042A": "MWALLTMAP", + "$7E042B": "MWALLTMAPH", + "$7E042C": "MANIPINDEX", + "$7E042D": "MANIPINDEXH", + "$7E042E": "TORCHINDEX", + "$7E042F": "TORCHINDEXH", + "$7E0430": "ONSWITCH", + "$7E0431": "ONSWITCHH", + "$7E0432": "STARINDEX", + "$7E0433": "STARINDEXH", + "$7E0434": "UNUSED_7E0434", + "$7E0435": "UNUSED_7E0435", + "$7E0436": "EYEDOORL", + "$7E0437": "EYEDOORH", + "$7E0438": "STAIRSI", + "$7E0439": "STAIRSIH", + "$7E043A": "STAIRSI2", + "$7E043B": "STAIRSI2H", + "$7E043C": "RSTAIRSI", + "$7E043D": "RSTAIRSIH", + "$7E043E": "RSTAIRSI2", + "$7E043F": "RSTAIRSI2H", + "$7E0440": "RSTAIRSI3", + "$7E0441": "RSTAIRSI3H", + "$7E0442": "RSTAIRSI4", + "$7E0443": "RSTAIRSI4H", + "$7E0444": "RSTAIRSI5", + "$7E0445": "RSTAIRSI5H", + "$7E0446": "RSTAIRSI6", + "$7E0447": "RSTAIRSI6H", + "$7E0448": "RSTAIRSI7", + "$7E0449": "RSTAIRSI7H", + "$7E044A": "EGSTR", + "$7E044B": "EGSTRH", + "$7E044C": "UNUSED_7E044C", + "$7E044D": "UNUSED_7E044D", + "$7E044E": "LSWAPI", + "$7E044F": "LSWAPIL", + "$7E0450": "DSWAPI", + "$7E0451": "DSWAPIH", + "$7E0452": "WALLYT", + "$7E0453": "WALLYTH", + "$7E0454": "BLASTWALL", + "$7E0455": "BLASTWALLH", + "$7E0456": "BLASTWI", + "$7E0457": "BLASTWIH", + "$7E0458": "DARKLAMP", + "$7E0459": "DARKLAMPH", + "$7E045A": "LIGHT", + "$7E045B": "LIGHTH", + "$7E045C": "QUADOFF", + "$7E045D": "QUADOFFH", + "$7E045E": "UNINDEX", + "$7E045F": "UNINDEXH", + "$7E0460": "DOORX", + "$7E0461": "DOORXH", + "$7E0462": "STAIRATTR", + "$7E0463": "JUNK_7E0463", + "$7E0464": "STAIRSTEP", + "$7E0465": "UNUSED_7E0465", + "$7E0466": "BLKSWITCH", + "$7E0467": "BLKSWITCHH", + "$7E0468": "SHUTTER", + "$7E0469": "SHUTTERH", + "$7E046A": "FLOOR1", + "$7E046B": "FLOOR1H", + "$7E046C": "BG1FX", + "$7E046D": "UNUSED_7E046D", + "$7E046E": "UNUSED_7E046E", + "$7E046F": "UNUSED_7E046F", + "$7E0470": "DAMTIME", + "$7E0471": "DAMTIMEH", + "$7E0472": "DAMTMAP", + "$7E0473": "DAMTMAPH", + "$7E0474": "BLOCKDIR", + "$7E0475": "BLOCKDIRH", + "$7E0476": "DLAYER", + "$7E0477": "UNUSED_7E0477", + "$7E0478": "MANIPCOUNT", + "$7E0479": "MANIPCOUNTH", + "$7E047A": "ARMEG", + "$7E047B": "UNUSED_7E047B", + "$7E047C": "H20VOMIT", + "$7E047D": "H20VOMITH", + "$7E047E": "STAIRSI3", + "$7E047F": "STAIRSI3H", + "$7E0480": "STAIRSI4", + "$7E0481": "STAIRSI4H", + "$7E0482": "STAIRSI5", + "$7E0483": "STAIRSI5H", + "$7E0484": "STAIRSI6", + "$7E0485": "STAIRSI6H", + "$7E0486": "BWALLT1", + "$7E0487": "BWALLT1H", + "$7E0488": "BWALLT2", + "$7E0489": "BWALLT2H", + "$7E048A": "STAIRID", + "$7E048B": "STAIRIDH", + "$7E048C": "STAIRT", + "$7E048D": "STAIRTH", + "$7E048E": "ROOMCOPY", + "$7E048F": "ROOMCOPYH", + "$7E0490": "FLOOR2", + "$7E0491": "FLOOR2H", + "$7E0492": "STAIRLI", + "$7E0493": "STAIRLIH", + "$7E0494": "RAINSTEP", + "$7E0495": "UNUSED_7E0495", + "$7E0496": "CHESTINDEX", + "$7E0497": "CHESTINDEXH", + "$7E0498": "CHESTINDEX2", + "$7E0499": "CHESTINDEX2H", + "$7E049A": "SSTAIRI", + "$7E049B": "SSTAIRIH", + "$7E049C": "SSTAIRI2", + "$7E049D": "SSTAIRI2H", + "$7E049E": "SSTAIRI3", + "$7E049F": "SSTAIRI3H", + "$7E04A0": "FLOORTIME", + "$7E04A1": "FLOORTIMEH", + "$7E04A2": "STAIRSI7", + "$7E04A3": "STAIRSI7H", + "$7E04A4": "STAIRSI8", + "$7E04A5": "STAIRSI8H", + "$7E04A6": "STAIRSI9", + "$7E04A7": "STAIRSI9H", + "$7E04A8": "STAIRSIA", + "$7E04A9": "STAIRSIAH", + "$7E04AA": "RESPAWN", + "$7E04AB": "RESPAWNH", + "$7E04AC": "M16CHINDX", + "$7E04AD": "M16CHINDXH", + "$7E04AE": "SSTAIRI4", + "$7E04AF": "SSTAIRI4H", + "$7E04B0": "UTMAP", + "$7E04B1": "UTMAPH", + "$7E04B2": "FLUTEX", + "$7E04B3": "FLUTEXH", + "$7E04B4": "HUDTIMER", + "$7E04B5": "HUDTMSUB", + "$7E04B6": "TRIGGERT", + "$7E04B7": "TRIGGERTH", + "$7E04B8": "DOORMSG", + "$7E04B9": "DOORMSGH", + "$7E04BA": "HOLES", + "$7E04BB": "HOLESH", + "$7E04BC": "STARON", + "$7E04BD": "UNUSED_7E04BD", + "$7E04BE": "PTIMEFIRE", + "$7E04BF": "PTIMEICE", + "$7E04C0": "SHELLFIRE", + "$7E04C1": "SHELLICE", + "$7E04C2": "MFALLTIME", + "$7E04C3": "UNUSED_7E04C3", + "$7E04C4": "CREDITS", + "$7E04C5": "HITPIG", + "$7E04C6": "OWENTSC", + "$7E04C7": "NOTAG", + "$7E04C8": "PEGCOUNTL", + "$7E04C9": "PEGCOUNTH", + "$7E04CA": "BEEP", + "$7E04CB": "UNUSED_7E04CA", + "$7E04F0": "TORCH0", + "$7E04F1": "TORCH1", + "$7E04F2": "TORCH2", + "$7E04F3": "TORCH3", + "$7E04F4": "TORCH4", + "$7E04F5": "TORCH5", + "$7E04F6": "TORCH6", + "$7E04F7": "TORCH7", + "$7E04F8": "TORCH8", + "$7E04F9": "TORCH9", + "$7E04FA": "TORCHA", + "$7E04FB": "TORCHB", + "$7E04FC": "TORCHC", + "$7E04FD": "TORCHD", + "$7E04FE": "TORCHE", + "$7E04FF": "TORCHF", + "$7E0500": "MANIPPROPS", + "$7E0520": "MANIPOBJX", + "$7E0540": "MANIPTMAPX", + "$7E0560": "MANIPRTNW", + "$7E0580": "MANIPRTSW", + "$7E05A0": "MANIPRTNE", + "$7E05C0": "MANIPRTSE", + "$7E05E0": "PBLOCK0XH", + "$7E05E1": "PBLOCK0XHU", + "$7E05E2": "PBLOCK1XH", + "$7E05E3": "PBLOCK1XHU", + "$7E05E4": "PBLOCK0XL", + "$7E05E5": "PBLOCK0XLU", + "$7E05E6": "PBLOCK1XL", + "$7E05E7": "PBLOCK1XLU", + "$7E05E8": "PBLOCK0TARG", + "$7E05E9": "PBLOCK0TARGU", + "$7E05EA": "PBLOCK1TARG", + "$7E05EB": "PBLOCK1TARGU", + "$7E05EC": "PBLOCK0YH", + "$7E05ED": "PBLOCK0YHU", + "$7E05EE": "PBLOCK1YH", + "$7E05EF": "PBLOCK1YHU", + "$7E05F0": "PBLOCK0YL", + "$7E05F1": "PBLOCK0YLU", + "$7E05F2": "PBLOCK1YL", + "$7E05F3": "PBLOCK1YLU", + "$7E05F4": "PBLOCK0SUBL", + "$7E05F5": "PBLOCK0SUBH", + "$7E05F6": "PBLOCK1SUBL", + "$7E05F7": "PBLOCK1SUBH", + "$7E05F8": "PBLOCK0DIR", + "$7E05F9": "PBLOCK0DIRU", + "$7E05FA": "PBLOCK1DIR", + "$7E05FB": "PBLOCK1DIRU", + "$7E05FC": "PBLOCK0X", + "$7E05FD": "PBLOCK1X", + "$7E05FE": "UNUSED_7E05FE", + "$7E05FF": "UNUSED_7E05FF", + "$7E0600": "SCROLLAN", + "$7E0601": "SCROLLANH", + "$7E0602": "SCROLLBN", + "$7E0603": "SCROLLBNH", + "$7E0604": "SCROLLAS", + "$7E0605": "SCROLLASH", + "$7E0606": "SCROLLBS", + "$7E0607": "SCROLLBSH", + "$7E0608": "SCROLLAW", + "$7E0609": "SCROLLAWH", + "$7E060A": "SCROLLBW", + "$7E060B": "SCROLLBWH", + "$7E060C": "SCROLLAE", + "$7E060D": "SCROLLAEH", + "$7E060E": "SCROLLBE", + "$7E060F": "SCROLLBEH", + "$7E0610": "OWTARGN", + "$7E0611": "OWTARGNH", + "$7E0612": "OWTARGS", + "$7E0613": "OWTARGSH", + "$7E0614": "OWTARGW", + "$7E0615": "OWTARGWH", + "$7E0616": "OWTARGE", + "$7E0617": "OWTARGEH", + "$7E0618": "SCROLLATN", + "$7E0619": "SCROLLATNH", + "$7E061A": "SCROLLATS", + "$7E061B": "SCROLLATSH", + "$7E061C": "SCROLLATW", + "$7E061D": "SCROLLATWH", + "$7E061E": "SCROLLATE", + "$7E061F": "SCROLLATEH", + "$7E0620": "OWBG1SUBPX", + "$7E0621": "OWBG1SUBPXH", + "$7E0622": "OWBG1SUBPY", + "$7E0623": "OWBG1SUBPYH", + "$7E0624": "SCRMODYA", + "$7E0625": "SCRMODYAH", + "$7E0626": "SCRMODYB", + "$7E0627": "SCRMODYBH", + "$7E0628": "SCRMODXA", + "$7E0629": "SCRMODXAH", + "$7E062A": "SCRMODXB", + "$7E062B": "SCRMODXBH", + "$7E062C": "BGOFEHL", + "$7E062D": "BGOFEHH", + "$7E062E": "BGOFEVL", + "$7E062F": "BGOFEVH", + "$7E0630": "CREDITBG3", + "$7E0631": "CREDITBG3H", + "$7E0632": "UNUSED_7E0632", + "$7E0633": "UNUSED_7E0633", + "$7E0634": "UNUSED_7E0634", + "$7E0635": "JUNK_7E0635", + "$7E0636": "MAPZOOM", + "$7E0637": "AMAPZOOM", + "$7E0638": "M7XQL", + "$7E0639": "M7XQH", + "$7E063A": "M7YQL", + "$7E063B": "M7YQH", + "$7E063C": "TGTLAYERWP", + "$7E063D": "TGTLAYERS1", + "$7E063E": "TGTLAYERS2", + "$7E063F": "TGTLAYERS3", + "$7E0640": "TGTLAYERS4", + "$7E0641": "PUSHFLIP", + "$7E0642": "SPRTAG", + "$7E0643": "UNSUED_7E0643", + "$7E0644": "UNSUED_7E0644", + "$7E0645": "UNSUED_7E0645", + "$7E0646": "SOMBTN", + "$7E0647": "MOSAICDIR", + "$7E0648": "UNUSED_7E0648", + "$7E0670": "WCALCLEFT", + "$7E0671": "WCALCLEFTH", + "$7E0672": "UNUSED_7E0672", + "$7E0673": "UNUSED_7E0673", + "$7E0674": "WCALCSIZEY", + "$7E0675": "WCALCSIZEYH", + "$7E0676": "WCALCSIZEX", + "$7E0677": "WCALCSIZEXH", + "$7E0678": "WCALCMAXX", + "$7E0679": "WCALCMAXXH", + "$7E067A": "WCALCMAXY", + "$7E067B": "WCALCMAXYH", + "$7E067C": "IRISTOP", + "$7E067D": "IRISTOPH", + "$7E067E": "IRISTYPE", + "$7E067F": "IRISTYPEH", + "$7E0680": "WTRLEFT", + "$7E0681": "WTRLEFTH", + "$7E0682": "WTRTOP", + "$7E0683": "WTRTOPH", + "$7E0684": "WTRSIZEY", + "$7E0685": "WTRSIZEYH", + "$7E0686": "WTRSIZEX", + "$7E0687": "WTRSIZEXH", + "$7E0688": "WTRMAXX", + "$7E0689": "WTRMAXXH", + "$7E068A": "WTRMAXY", + "$7E068B": "WTRMAXYH", + "$7E068C": "DOOROPEN2", + "$7E068D": "DOOROPEN", + "$7E068E": "DOORTM", + "$7E068F": "DOORTMH", + "$7E0690": "DOORTIME", + "$7E0691": "DOORTIMEH", + "$7E0692": "UPDATE32ID", + "$7E0693": "UPDATE32IDH", + "$7E0694": "DOORINDEX", + "$7E0695": "DOORINDEXH", + "$7E0696": "ENTRTMAP", + "$7E0697": "ENTRTMAPH", + "$7E0698": "REPLTMAP", + "$7E0699": "REPLTMAPH", + "$7E069A": "WALKOUT", + "$7E069B": "UNUSED_7E069B", + "$7E069C": "OWTRANDIR", + "$7E069D": "OWTRANDIRH", + "$7E069E": "SCROLLHUHY", + "$7E069F": "SCROLLHUHX", + "$7E06A0": "WARP_7E06A0", + "$7E06A1": "WARP_7E06A1", + "$7E06A2": "WARP_7E06A2", + "$7E06A3": "WARP_7E06A3", + "$7E06A4": "WARP_7E06A4", + "$7E06A5": "WARP_7E06A5", + "$7E06A6": "WARP_7E06A6", + "$7E06A7": "WARP_7E06A7", + "$7E06A8": "WARP_7E06A8", + "$7E06A9": "WARP_7E06A9", + "$7E06AA": "WARP_7E06AA", + "$7E06AB": "WARP_7E06AB", + "$7E06AC": "WARP_7E06AC", + "$7E06AD": "WARP_7E06AD", + "$7E06AE": "WARP_7E06AE", + "$7E06AF": "WARP_7E06AF", + "$7E06B0": "ISTAIR0SAT", + "$7E06B1": "ISTAIR0SATH", + "$7E06B2": "ISTAIR1SAT", + "$7E06B3": "ISTAIR1SATH", + "$7E06B4": "ISTAIR2SAT", + "$7E06B5": "ISTAIR2SATH", + "$7E06B6": "ISTAIRS3AT", + "$7E06B7": "ISTAIRS3ATH", + "$7E06B8": "NSTAIR0SAT", + "$7E06B9": "NSTAIR0SATH", + "$7E06BA": "NSTAIR1SAT", + "$7E06BB": "NSTAIR1SATH", + "$7E06BC": "NSTAIR2SAT", + "$7E06BD": "NSTAIR2SATH", + "$7E06BE": "NSTAIRS3AT", + "$7E06BF": "NSTAIRS3ATH", + "$7E06C0": "BGTOGGLEAT", + "$7E06D0": "DTOGGLEAT", + "$7E06E0": "CHEST0AT", + "$7E06E1": "CHEST0ATH", + "$7E06E2": "CHEST1AT", + "$7E06E3": "CHEST1ATH", + "$7E06E4": "CHEST2AT", + "$7E06E5": "CHEST2ATH", + "$7E06E6": "CHEST3AT", + "$7E06E7": "CHEST3ATH", + "$7E06E8": "CHEST4AT", + "$7E06E9": "CHEST4ATH", + "$7E06EA": "CHEST5AT", + "$7E06EB": "CHEST5ATH", + "$7E06EC": "SSTAIRAT", + "$7E06F8": "UNUSED_7E06F8", + "$7E06F9": "UNUSED_7E06F9", + "$7E06FA": "UNUSED_7E06FA", + "$7E06FB": "UNUSED_7E06FB", + "$7E06FC": "UNUSED_7E06FC", + "$7E06FD": "UNUSED_7E06FD", + "$7E06FE": "UNUSED_7E06FE", + "$7E06FF": "UNUSED_7E06FF", + "$7E0700": "OWPOSM", + "$7E0701": "OWPOSMH", + "$7E0702": "UNUSED_7E0702", + "$7E0703": "UNUSED_7E0703", + "$7E0704": "UNUSED_7E0704", + "$7E0705": "UNUSED_7E0705", + "$7E0706": "UNUSED_7E0706", + "$7E0707": "UNUSED_7E0707", + "$7E0708": "OWBGSY", + "$7E0709": "OWBGSYH", + "$7E070A": "OWBGSYO", + "$7E070B": "OWBGSYOH", + "$7E070C": "OWBGSX", + "$7E070D": "OWBGSXH", + "$7E070E": "OWBGSXO", + "$7E070F": "OWBGSXOH", + "$7E0710": "SKIPOAM", + "$7E0711": "SKIPOAMH", + "$7E0712": "OWSCRSIZE", + "$7E0713": "OWSCRSIZEH", + "$7E0714": "PREVSIZE", + "$7E0715": "PREVSIZEH", + "$7E0716": "OWSCROLL", + "$7E0717": "OWSCROLLH", + "$7E0718": "MAP16OVERFLOW", + "$7E0800": "OAMBUFF", + "$7E0A00": "OAMBUFF2", + "$7E0A20": "OAMBUFFSX", + "$7E0AA0": "MAINGFX", + "$7E0AA1": "BGSET1", + "$7E0AA2": "BGSET2", + "$7E0AA3": "SPRSET1", + "$7E0AA4": "SPRSET2", + "$7E0AA5": "UNUSED_7E0AA5", + "$7E0AA6": "JUNK_7E0AA6", + "$7E0AA7": "JUNK_7E0AA7", + "$7E0AA8": "PALBUFNL", + "$7E0AA9": "PALBUFNH", + "$7E0AAA": "GFXSTEAL", + "$7E0AAB": "UNUSED_7E0AAB", + "$7E0AAC": "PALSPR0", + "$7E0AAD": "PALSPR1", + "$7E0AAE": "PALSPR2", + "$7E0AAF": "UNUSED_7E0AAF", + "$7E0AB0": "PALUNU", + "$7E0AB1": "PALAB1", + "$7E0AB2": "PALHUD", + "$7E0AB3": "PALAB3", + "$7E0AB4": "PALAB4", + "$7E0AB5": "PALAB5", + "$7E0AB6": "PALBG", + "$7E0AB7": "PALAB7", + "$7E0AB8": "PALAB8", + "$7E0AB9": "UNUSED_7E0AB9", + "$7E0ABA": "UNUSED_7E0ABA", + "$7E0ABB": "UNUSED_7E0ABB", + "$7E0ABC": "UNUSED_7E0ABC", + "$7E0ABD": "COLROOM", + "$7E0ABE": "COLROOMH", + "$7E0ABF": "OWTRAN", + "$7E0AC0": "SWDGFXT", + "$7E0AC1": "SWDGFXTH", + "$7E0AC2": "SWDGFXB", + "$7E0AC3": "SWDGFXBH", + "$7E0AC4": "SHDGFXT", + "$7E0AC5": "SHDGFXTH", + "$7E0AC6": "SHDGFXB", + "$7E0AC7": "SHDGFXBH", + "$7E0AC8": "ITEMGFXT", + "$7E0AC9": "ITEMGFXTH", + "$7E0ACA": "ITEMGFXB", + "$7E0ACB": "ITEMGFXBH", + "$7E0ACC": "HEADGFXT", + "$7E0ACD": "HEADGFXTH", + "$7E0ACE": "HEADGFXB", + "$7E0ACF": "HEADGFXBH", + "$7E0AD0": "BODYGFXT", + "$7E0AD1": "BODYGFXTH", + "$7E0AD2": "BODYGFXB", + "$7E0AD3": "BODYGFXBH", + "$7E0AD4": "AUXGFX1", + "$7E0AD5": "AUXGFX1H", + "$7E0AD6": "AUXGFX2", + "$7E0AD7": "AUXGFX2H", + "$7E0AD8": "BLKGFXT", + "$7E0AD9": "BLKGFXTH", + "$7E0ADA": "BLKGFXB", + "$7E0ADB": "BLKGFXBH", + "$7E0ADC": "BGANIMGFX", + "$7E0ADD": "BGANIMGFXH", + "$7E0ADE": "UNUSED_7E0ADE", + "$7E0ADF": "UNUSED_7E0ADF", + "$7E0AE0": "RUPGFXT", + "$7E0AE1": "RUPGFXTH", + "$7E0AE2": "RUPGFXB", + "$7E0AE3": "RUPGFXBH", + "$7E0AE4": "UNUSED_7E0AE4", + "$7E0AE5": "UNUSED_7E0AE5", + "$7E0AE6": "UNUSED_7E0AE6", + "$7E0AE7": "UNUSED_7E0AE7", + "$7E0AE8": "FLWHO", + "$7E0AE9": "FLWHOH", + "$7E0AEA": "FLWBO", + "$7E0AEB": "FLWBOH", + "$7E0AEC": "FLWHGFXT", + "$7E0AED": "FLWHGFXTH", + "$7E0AEE": "FLWHGFXB", + "$7E0AEF": "FLWHGFXBH", + "$7E0AF0": "FLWBGFXT", + "$7E0AF1": "FLWBGFXTH", + "$7E0AF2": "FLWBGFXB", + "$7E0AF3": "FLWBGFXBH", + "$7E0AF4": "DUCKPOSE", + "$7E0AF5": "DUCKPOSEH", + "$7E0AF6": "DUCKGFXT", + "$7E0AF7": "DUCKGFXTH", + "$7E0AF8": "DUCKGFXB", + "$7E0AF9": "DUCKGFXBH", + "$7E0AFA": "UNUSED_7E0AFA", + "$7E0AFB": "UNUSED_7E0AFB", + "$7E0AFC": "UNUSED_7E0AFC", + "$7E0AFD": "UNUSED_7E0AFD", + "$7E0AFE": "UNUSED_7E0AFE", + "$7E0AFF": "UNUSED_7E0AFF", + "$7E0B00": "OL0ID", + "$7E0B01": "OL1ID", + "$7E0B02": "OL2ID", + "$7E0B03": "OL3ID", + "$7E0B04": "OL4ID", + "$7E0B05": "OL5ID", + "$7E0B06": "OL6ID", + "$7E0B07": "OL7ID", + "$7E0B08": "OL0XL", + "$7E0B09": "OL1XL", + "$7E0B0A": "OL2XL", + "$7E0B0B": "OL3XL", + "$7E0B0C": "OL4XL", + "$7E0B0D": "OL5XL", + "$7E0B0E": "OL6XL", + "$7E0B0F": "OL7XL", + "$7E0B10": "OL0XH", + "$7E0B11": "OL1XH", + "$7E0B12": "OL2XH", + "$7E0B13": "OL3XH", + "$7E0B14": "OL4XH", + "$7E0B15": "OL5XH", + "$7E0B16": "OL6XH", + "$7E0B17": "OL7XH", + "$7E0B18": "OL0YL", + "$7E0B19": "OL1YL", + "$7E0B1A": "OL2YL", + "$7E0B1B": "OL3YL", + "$7E0B1C": "OL4YL", + "$7E0B1D": "OL5YL", + "$7E0B1E": "OL6YL", + "$7E0B1F": "OL7YL", + "$7E0B20": "OL0YH", + "$7E0B21": "OL1YH", + "$7E0B22": "OL2YH", + "$7E0B23": "OL3YH", + "$7E0B24": "OL4YH", + "$7E0B25": "OL5YH", + "$7E0B26": "OL6YH", + "$7E0B27": "OL7YH", + "$7E0B28": "OL0TA", + "$7E0B29": "OL1TA", + "$7E0B2A": "OL2TA", + "$7E0B2B": "OL3TA", + "$7E0B2C": "OL4TA", + "$7E0B2D": "OL5TA", + "$7E0B2E": "OL6TA", + "$7E0B2F": "OL7TA", + "$7E0B30": "OL0TB", + "$7E0B31": "OL1TB", + "$7E0B32": "OL2TB", + "$7E0B33": "OL3TB", + "$7E0B34": "OL4TB", + "$7E0B35": "OL5TB", + "$7E0B36": "OL6TB", + "$7E0B37": "OL7TB", + "$7E0B38": "OL0TC", + "$7E0B39": "OL1TC", + "$7E0B3A": "OL2TC", + "$7E0B3B": "OL3TC", + "$7E0B3C": "OL4TC", + "$7E0B3D": "OL5TC", + "$7E0B3E": "OL6TC", + "$7E0B3F": "OL7TC", + "$7E0B40": "OL0LAYER", + "$7E0B41": "OL1LAYER", + "$7E0B42": "OL2LAYER", + "$7E0B43": "OL3LAYER", + "$7E0B44": "OL4LAYER", + "$7E0B45": "OL5LAYER", + "$7E0B46": "OL6LAYER", + "$7E0B47": "OL7LAYER", + "$7E0B48": "OL0SCRL", + "$7E0B49": "OL0SCRH", + "$7E0B4A": "OL1SCRL", + "$7E0B4B": "OL1SCRH", + "$7E0B4C": "OL2SCRL", + "$7E0B4D": "OL2SCRH", + "$7E0B4E": "OL3SCRL", + "$7E0B4F": "OL3SCRH", + "$7E0B50": "OL4SCRL", + "$7E0B51": "OL4SCRH", + "$7E0B52": "OL5SCRL", + "$7E0B53": "OL5SCRH", + "$7E0B54": "OL6SCRL", + "$7E0B55": "OL6SCRH", + "$7E0B56": "OL7SCRL", + "$7E0B57": "OL7SCRH", + "$7E0B58": "SPR0STUN", + "$7E0B59": "SPR1STUN", + "$7E0B5A": "SPR2STUN", + "$7E0B5B": "SPR3STUN", + "$7E0B5C": "SPR4STUN", + "$7E0B5D": "SPR5STUN", + "$7E0B5E": "SPR6STUN", + "$7E0B5F": "SPR7STUN", + "$7E0B60": "SPR8STUN", + "$7E0B61": "SPR9STUN", + "$7E0B62": "SPRASTUN", + "$7E0B63": "SPRBSTUN", + "$7E0B64": "SPRCSTUN", + "$7E0B65": "SPRDSTUN", + "$7E0B66": "SPRESTUN", + "$7E0B67": "SPRFSTUN", + "$7E0B68": "TINKBG", + "$7E0B69": "BLINDDIR", + "$7E0B6A": "LIMSPRCT", + "$7E0B6B": "SPR0TILEDIE", + "$7E0B6C": "SPR1TILEDIE", + "$7E0B6D": "SPR2TILEDIE", + "$7E0B6E": "SPR3TILEDIE", + "$7E0B6F": "SPR4TILEDIE", + "$7E0B70": "SPR5TILEDIE", + "$7E0B71": "SPR6TILEDIE", + "$7E0B72": "SPR7TILEDIE", + "$7E0B73": "SPR8TILEDIE", + "$7E0B74": "SPR9TILEDIE", + "$7E0B75": "SPRATILEDIE", + "$7E0B76": "SPRBTILEDIE", + "$7E0B77": "SPRCTILEDIE", + "$7E0B78": "SPRDTILEDIE", + "$7E0B79": "SPRETILEDIE", + "$7E0B7A": "SPRFTILEDIE", + "$7E0B7B": "SANDPIT", + "$7E0B7C": "DRAGYL", + "$7E0B7D": "DRAGYH", + "$7E0B7E": "DRAGXL", + "$7E0B7F": "DRAGXH", + "$7E0B80": "LASTROOM0", + "$7E0B81": "LASTROOM0H", + "$7E0B82": "LASTROOM1", + "$7E0B83": "LASTROOM1H", + "$7E0B84": "LASTROOM2", + "$7E0B85": "LASTROOM2H", + "$7E0B86": "LASTROOM3", + "$7E0B87": "LASTROOM3H", + "$7E0B88": "THEX99", + "$7E0B89": "SPR0PRIO", + "$7E0B8A": "SPR1PRIO", + "$7E0B8B": "SPR2PRIO", + "$7E0B8C": "SPR3PRIO", + "$7E0B8D": "SPR4PRIO", + "$7E0B8E": "SPR5PRIO", + "$7E0B8F": "SPR6PRIO", + "$7E0B90": "SPR7PRIO", + "$7E0B91": "SPR8PRIO", + "$7E0B92": "SPR9PRIO", + "$7E0B93": "SPRAPRIO", + "$7E0B94": "SPRBPRIO", + "$7E0B95": "SPRCPRIO", + "$7E0B96": "SPRDPRIO", + "$7E0B97": "SPREPRIO", + "$7E0B98": "SPRFPRIO", + "$7E0B99": "FREESHOT", + "$7E0B9A": "DRYFIRE", + "$7E0B9B": "KEYSLOT", + "$7E0B9C": "SECRETID", + "$7E0B9D": "FILEID", + "$7E0B9E": "STALTRAP", + "$7E0B9F": "UNUSED_7E0B9F", + "$7E0BA0": "SPR0BPF", + "$7E0BA1": "SPR1BPF", + "$7E0BA2": "SPR2BPF", + "$7E0BA3": "SPR3BPF", + "$7E0BA4": "SPR4BPF", + "$7E0BA5": "SPR5BPF", + "$7E0BA6": "SPR6BPF", + "$7E0BA7": "SPR7BPF", + "$7E0BA8": "SPR8BPF", + "$7E0BA9": "SPR9BPF", + "$7E0BAA": "SPRABPF", + "$7E0BAB": "SPRBBPF", + "$7E0BAC": "SPRCBPF", + "$7E0BAD": "SPRDBPF", + "$7E0BAE": "SPREBPF", + "$7E0BAF": "SPRFBPF", + "$7E0BB0": "SPR0ANCID", + "$7E0BB1": "SPR1ANCID", + "$7E0BB2": "SPR2ANCID", + "$7E0BB3": "SPR3ANCID", + "$7E0BB4": "SPR4ANCID", + "$7E0BB5": "SPR5ANCID", + "$7E0BB6": "SPR6ANCID", + "$7E0BB7": "SPR7ANCID", + "$7E0BB8": "SPR8ANCID", + "$7E0BB9": "SPR9ANCID", + "$7E0BBA": "SPRAANCID", + "$7E0BBB": "SPRBANCID", + "$7E0BBC": "SPRCANCID", + "$7E0BBD": "SPRDANCID", + "$7E0BBE": "SPREANCID", + "$7E0BBF": "SPRFANCID", + "$7E0BC0": "SPR0OWDL", + "$7E0BC1": "SPR0OWDH", + "$7E0BC2": "SPR1OWDL", + "$7E0BC3": "SPR1OWDH", + "$7E0BC4": "SPR2OWDL", + "$7E0BC5": "SPR2OWDH", + "$7E0BC6": "SPR3OWDL", + "$7E0BC7": "SPR3OWDH", + "$7E0BC8": "SPR4OWDL", + "$7E0BC9": "SPR4OWDH", + "$7E0BCA": "SPR5OWDL", + "$7E0BCB": "SPR5OWDH", + "$7E0BCC": "SPR6OWDL", + "$7E0BCD": "SPR6OWDH", + "$7E0BCE": "SPR7OWDL", + "$7E0BCF": "SPR7OWDH", + "$7E0BD0": "SPR8OWDL", + "$7E0BD1": "SPR8OWDH", + "$7E0BD2": "SPR9OWDL", + "$7E0BD3": "SPR9OWDH", + "$7E0BD4": "SPRAOWDL", + "$7E0BD5": "SPRAOWDH", + "$7E0BD6": "SPRBOWDL", + "$7E0BD7": "SPRBOWDH", + "$7E0BD8": "SPRCOWDL", + "$7E0BD9": "SPRCOWDH", + "$7E0BDA": "SPRDOWDL", + "$7E0BDB": "SPRDOWDH", + "$7E0BDC": "SPREOWDL", + "$7E0BDD": "SPREOWDH", + "$7E0BDE": "SPRFOWDL", + "$7E0BDF": "SPRFOWDH", + "$7E0BE0": "SPR0PRIZE", + "$7E0BE1": "SPR1PRIZE", + "$7E0BE2": "SPR2PRIZE", + "$7E0BE3": "SPR3PRIZE", + "$7E0BE4": "SPR4PRIZE", + "$7E0BE5": "SPR5PRIZE", + "$7E0BE6": "SPR6PRIZE", + "$7E0BE7": "SPR7PRIZE", + "$7E0BE8": "SPR8PRIZE", + "$7E0BE9": "SPR9PRIZE", + "$7E0BEA": "SPRAPRIZE", + "$7E0BEB": "SPRBPRIZE", + "$7E0BEC": "SPRCPRIZE", + "$7E0BED": "SPRDPRIZE", + "$7E0BEE": "SPREPRIZE", + "$7E0BEF": "SPRFPRIZE", + "$7E0BF0": "ANC0MISCM", + "$7E0BF1": "ANC1MISCM", + "$7E0BF2": "ANC2MISCM", + "$7E0BF3": "ANC3MISCM", + "$7E0BF4": "ANC4MISCM", + "$7E0BF5": "ANC5MISCM", + "$7E0BF6": "ANC6MISCM", + "$7E0BF7": "ANC7MISCM", + "$7E0BF8": "ANC8MISCM", + "$7E0BF9": "ANC9MISCM", + "$7E0BFA": "ANC0YL", + "$7E0BFB": "ANC1YL", + "$7E0BFC": "ANC2YL", + "$7E0BFD": "ANC3YL", + "$7E0BFE": "ANC4YL", + "$7E0BFF": "ANC5YL", + "$7E0C00": "ANC6YL", + "$7E0C01": "ANC7YL", + "$7E0C02": "ANC8YL", + "$7E0C03": "ANC9YL", + "$7E0C04": "ANC0XL", + "$7E0C05": "ANC1XL", + "$7E0C06": "ANC2XL", + "$7E0C07": "ANC3XL", + "$7E0C08": "ANC4XL", + "$7E0C09": "ANC5XL", + "$7E0C0A": "ANC6XL", + "$7E0C0B": "ANC7XL", + "$7E0C0C": "ANC8XL", + "$7E0C0D": "ANC9XL", + "$7E0C0E": "ANC0YH", + "$7E0C0F": "ANC1YH", + "$7E0C10": "ANC2YH", + "$7E0C11": "ANC3YH", + "$7E0C12": "ANC4YH", + "$7E0C13": "ANC5YH", + "$7E0C14": "ANC6YH", + "$7E0C15": "ANC7YH", + "$7E0C16": "ANC8YH", + "$7E0C17": "ANC9YH", + "$7E0C18": "ANC0XH", + "$7E0C19": "ANC1XH", + "$7E0C1A": "ANC2XH", + "$7E0C1B": "ANC3XH", + "$7E0C1C": "ANC4XH", + "$7E0C1D": "ANC5XH", + "$7E0C1E": "ANC6XH", + "$7E0C1F": "ANC7XH", + "$7E0C20": "ANC8XH", + "$7E0C21": "ANC9XH", + "$7E0C22": "ANC0VY", + "$7E0C23": "ANC1VY", + "$7E0C24": "ANC2VY", + "$7E0C25": "ANC3VY", + "$7E0C26": "ANC4VY", + "$7E0C27": "ANC5VY", + "$7E0C28": "ANC6VY", + "$7E0C29": "ANC7VY", + "$7E0C2A": "ANC8VY", + "$7E0C2B": "ANC9VY", + "$7E0C2C": "ANC0VX", + "$7E0C2D": "ANC1VX", + "$7E0C2E": "ANC2VX", + "$7E0C2F": "ANC3VX", + "$7E0C30": "ANC4VX", + "$7E0C31": "ANC5VX", + "$7E0C32": "ANC6VX", + "$7E0C33": "ANC7VX", + "$7E0C34": "ANC8VX", + "$7E0C35": "ANC9VX", + "$7E0C36": "ANC0SUBY", + "$7E0C37": "ANC1SUBY", + "$7E0C38": "ANC2SUBY", + "$7E0C39": "ANC3SUBY", + "$7E0C3A": "ANC4SUBY", + "$7E0C3B": "ANC5SUBY", + "$7E0C3C": "ANC6SUBY", + "$7E0C3D": "ANC7SUBY", + "$7E0C3E": "ANC8SUBY", + "$7E0C3F": "ANC9SUBY", + "$7E0C40": "ANC0SUBX", + "$7E0C41": "ANC1SUBX", + "$7E0C42": "ANC2SUBX", + "$7E0C43": "ANC3SUBX", + "$7E0C44": "ANC4SUBX", + "$7E0C45": "ANC5SUBX", + "$7E0C46": "ANC6SUBX", + "$7E0C47": "ANC7SUBX", + "$7E0C48": "ANC8SUBX", + "$7E0C49": "ANC9SUBX", + "$7E0C4A": "ANC0ID", + "$7E0C4B": "ANC1ID", + "$7E0C4C": "ANC2ID", + "$7E0C4D": "ANC3ID", + "$7E0C4E": "ANC4ID", + "$7E0C4F": "ANC5ID", + "$7E0C50": "ANC6ID", + "$7E0C51": "ANC7ID", + "$7E0C52": "ANC8ID", + "$7E0C53": "ANC9ID", + "$7E0C54": "ANC0MISCN", + "$7E0C55": "ANC1MISCN", + "$7E0C56": "ANC2MISCN", + "$7E0C57": "ANC3MISCN", + "$7E0C58": "ANC4MISCN", + "$7E0C59": "ANC5MISCN", + "$7E0C5A": "ANC6MISCN", + "$7E0C5B": "ANC7MISCN", + "$7E0C5C": "ANC8MISCN", + "$7E0C5D": "ANC9MISCN", + "$7E0C5E": "ANC0GETL", + "$7E0C5F": "ANC1GETL", + "$7E0C60": "ANC2GETL", + "$7E0C61": "ANC3GETL", + "$7E0C62": "ANC4GETL", + "$7E0C63": "ANC5GETL", + "$7E0C64": "ANC6GETL", + "$7E0C65": "ANC7GETL", + "$7E0C66": "ANC8GETL", + "$7E0C67": "ANC9GETL", + "$7E0C68": "ANC0TIMERA", + "$7E0C69": "ANC1TIMERA", + "$7E0C6A": "ANC2TIMERA", + "$7E0C6B": "ANC3TIMERA", + "$7E0C6C": "ANC4TIMERA", + "$7E0C6D": "ANC5TIMERA", + "$7E0C6E": "ANC6TIMERA", + "$7E0C6F": "ANC7TIMERA", + "$7E0C70": "ANC8TIMERA", + "$7E0C71": "ANC9TIMERA", + "$7E0C72": "ANC0DIR", + "$7E0C73": "ANC1DIR", + "$7E0C74": "ANC2DIR", + "$7E0C75": "ANC3DIR", + "$7E0C76": "ANC4DIR", + "$7E0C77": "ANC5DIR", + "$7E0C78": "ANC6DIR", + "$7E0C79": "ANC7DIR", + "$7E0C7A": "ANC8DIR", + "$7E0C7B": "ANC9DIR", + "$7E0C7C": "ANC0LAYER", + "$7E0C7D": "ANC1LAYER", + "$7E0C7E": "ANC2LAYER", + "$7E0C7F": "ANC3LAYER", + "$7E0C80": "ANC4LAYER", + "$7E0C81": "ANC5LAYER", + "$7E0C82": "ANC6LAYER", + "$7E0C83": "ANC7LAYER", + "$7E0C84": "ANC8LAYER", + "$7E0C85": "ANC9LAYER", + "$7E0C86": "ANC0OAMR", + "$7E0C87": "ANC1OAMR", + "$7E0C88": "ANC2OAMR", + "$7E0C89": "ANC3OAMR", + "$7E0C8A": "ANC4OAMR", + "$7E0C8B": "ANC5OAMR", + "$7E0C8C": "ANC6OAMR", + "$7E0C8D": "ANC7OAMR", + "$7E0C8E": "ANC8OAMR", + "$7E0C8F": "ANC9OAMR", + "$7E0C90": "ANC0OAML", + "$7E0C91": "ANC1OAML", + "$7E0C92": "ANC2OAML", + "$7E0C93": "ANC3OAML", + "$7E0C94": "ANC4OAML", + "$7E0C95": "ANC5OAML", + "$7E0C96": "ANC6OAML", + "$7E0C97": "ANC7OAML", + "$7E0C98": "ANC8OAML", + "$7E0C99": "ANC9OAML", + "$7E0C9A": "SPR0SCR", + "$7E0C9B": "SPR1SCR", + "$7E0C9C": "SPR2SCR", + "$7E0C9D": "SPR3SCR", + "$7E0C9E": "SPR4SCR", + "$7E0C9F": "SPR5SCR", + "$7E0CA0": "SPR6SCR", + "$7E0CA1": "SPR7SCR", + "$7E0CA2": "SPR8SCR", + "$7E0CA3": "SPR9SCR", + "$7E0CA4": "SPRASCR", + "$7E0CA5": "SPRBSCR", + "$7E0CA6": "SPRCSCR", + "$7E0CA7": "SPRDSCR", + "$7E0CA8": "SPRESCR", + "$7E0CA9": "SPRFSCR", + "$7E0CAA": "SPR0DEFL", + "$7E0CAB": "SPR1DEFL", + "$7E0CAC": "SPR2DEFL", + "$7E0CAD": "SPR3DEFL", + "$7E0CAE": "SPR4DEFL", + "$7E0CAF": "SPR5DEFL", + "$7E0CB0": "SPR6DEFL", + "$7E0CB1": "SPR7DEFL", + "$7E0CB2": "SPR8DEFL", + "$7E0CB3": "SPR9DEFL", + "$7E0CB4": "SPRADEFL", + "$7E0CB5": "SPRBDEFL", + "$7E0CB6": "SPRCDEFL", + "$7E0CB7": "SPRDDEFL", + "$7E0CB8": "SPREDEFL", + "$7E0CB9": "SPRFDEFL", + "$7E0CBA": "SPR0DROP", + "$7E0CBB": "SPR1DROP", + "$7E0CBC": "SPR2DROP", + "$7E0CBD": "SPR3DROP", + "$7E0CBE": "SPR4DROP", + "$7E0CBF": "SPR5DROP", + "$7E0CC0": "SPR6DROP", + "$7E0CC1": "SPR7DROP", + "$7E0CC2": "SPR8DROP", + "$7E0CC3": "SPR9DROP", + "$7E0CC4": "SPRADROP", + "$7E0CC5": "SPRBDROP", + "$7E0CC6": "SPRCDROP", + "$7E0CC7": "SPRDDROP", + "$7E0CC8": "SPREDROP", + "$7E0CC9": "SPRFDROP", + "$7E0CCA": "OL0_ROOM", + "$7E0CCB": "OL1_ROOM", + "$7E0CCC": "OL2_ROOM", + "$7E0CCD": "OL3_ROOM", + "$7E0CCE": "OL4_ROOM", + "$7E0CCF": "OL5_ROOM", + "$7E0CD0": "OL6_ROOM", + "$7E0CD1": "OL7_ROOM", + "$7E0CD2": "SPR0BUMP", + "$7E0CD3": "SPR1BUMP", + "$7E0CD4": "SPR2BUMP", + "$7E0CD5": "SPR3BUMP", + "$7E0CD6": "SPR4BUMP", + "$7E0CD7": "SPR5BUMP", + "$7E0CD8": "SPR6BUMP", + "$7E0CD9": "SPR7BUMP", + "$7E0CDA": "SPR8BUMP", + "$7E0CDB": "SPR9BUMP", + "$7E0CDC": "SPRABUMP", + "$7E0CDD": "SPRBBUMP", + "$7E0CDE": "SPRCBUMP", + "$7E0CDF": "SPRDBUMP", + "$7E0CE0": "SPREBUMP", + "$7E0CE1": "SPRFBUMP", + "$7E0CE2": "SPR0DMG", + "$7E0CE3": "SPR1DMG", + "$7E0CE4": "SPR2DMG", + "$7E0CE5": "SPR3DMG", + "$7E0CE6": "SPR4DMG", + "$7E0CE7": "SPR5DMG", + "$7E0CE8": "SPR6DMG", + "$7E0CE9": "SPR7DMG", + "$7E0CEA": "SPR8DMG", + "$7E0CEB": "SPR9DMG", + "$7E0CEC": "SPRADMG", + "$7E0CED": "SPRBDMG", + "$7E0CEE": "SPRCDMG", + "$7E0CEF": "SPRDDMG", + "$7E0CF0": "SPREDMG", + "$7E0CF1": "SPRFDMG", + "$7E0CF2": "DMGCLASS", + "$7E0CF3": "JUNK_7E0CF3", + "$7E0CF4": "DROPTRAP", + "$7E0CF5": "DMAPROWL", + "$7E0CF6": "DMAPROWH", + "$7E0CF7": "BUSHPACKX", + "$7E0CF8": "PANTEMP", + "$7E0CF9": "DROPLUCK", + "$7E0CFA": "LUCKKILL", + "$7E0CFB": "PULLKILL", + "$7E0CFC": "PULLHITS", + "$7E0CFD": "CHACHING", + "$7E0CFE": "PAL2F", + "$7E0CFF": "PAL2FH", + "$7E0D00": "SPR0_YL", + "$7E0D01": "SPR1_YL", + "$7E0D02": "SPR2_YL", + "$7E0D03": "SPR3_YL", + "$7E0D04": "SPR4_YL", + "$7E0D05": "SPR5_YL", + "$7E0D06": "SPR6_YL", + "$7E0D07": "SPR7_YL", + "$7E0D08": "SPR8_YL", + "$7E0D09": "SPR9_YL", + "$7E0D0A": "SPRA_YL", + "$7E0D0B": "SPRB_YL", + "$7E0D0C": "SPRC_YL", + "$7E0D0D": "SPRD_YL", + "$7E0D0E": "SPRE_YL", + "$7E0D0F": "SPRF_YL", + "$7E0D10": "SPR0_XL", + "$7E0D11": "SPR1_XL", + "$7E0D12": "SPR2_XL", + "$7E0D13": "SPR3_XL", + "$7E0D14": "SPR4_XL", + "$7E0D15": "SPR5_XL", + "$7E0D16": "SPR6_XL", + "$7E0D17": "SPR7_XL", + "$7E0D18": "SPR8_XL", + "$7E0D19": "SPR9_XL", + "$7E0D1A": "SPRA_XL", + "$7E0D1B": "SPRB_XL", + "$7E0D1C": "SPRC_XL", + "$7E0D1D": "SPRD_XL", + "$7E0D1E": "SPRE_XL", + "$7E0D1F": "SPRF_XL", + "$7E0D20": "SPR0_YH", + "$7E0D21": "SPR1_YH", + "$7E0D22": "SPR2_YH", + "$7E0D23": "SPR3_YH", + "$7E0D24": "SPR4_YH", + "$7E0D25": "SPR5_YH", + "$7E0D26": "SPR6_YH", + "$7E0D27": "SPR7_YH", + "$7E0D28": "SPR8_YH", + "$7E0D29": "SPR9_YH", + "$7E0D2A": "SPRA_YH", + "$7E0D2B": "SPRB_YH", + "$7E0D2C": "SPRC_YH", + "$7E0D2D": "SPRD_YH", + "$7E0D2E": "SPRE_YH", + "$7E0D2F": "SPRF_YH", + "$7E0D30": "SPR0_XH", + "$7E0D31": "SPR1_XH", + "$7E0D32": "SPR2_XH", + "$7E0D33": "SPR3_XH", + "$7E0D34": "SPR4_XH", + "$7E0D35": "SPR5_XH", + "$7E0D36": "SPR6_XH", + "$7E0D37": "SPR7_XH", + "$7E0D38": "SPR8_XH", + "$7E0D39": "SPR9_XH", + "$7E0D3A": "SPRA_XH", + "$7E0D3B": "SPRB_XH", + "$7E0D3C": "SPRC_XH", + "$7E0D3D": "SPRD_XH", + "$7E0D3E": "SPRE_XH", + "$7E0D3F": "SPRF_XH", + "$7E0D40": "SPR0_VY", + "$7E0D41": "SPR1_VY", + "$7E0D42": "SPR2_VY", + "$7E0D43": "SPR3_VY", + "$7E0D44": "SPR4_VY", + "$7E0D45": "SPR5_VY", + "$7E0D46": "SPR6_VY", + "$7E0D47": "SPR7_VY", + "$7E0D48": "SPR8_VY", + "$7E0D49": "SPR9_VY", + "$7E0D4A": "SPRA_VY", + "$7E0D4B": "SPRB_VY", + "$7E0D4C": "SPRC_VY", + "$7E0D4D": "SPRD_VY", + "$7E0D4E": "SPRE_VY", + "$7E0D4F": "SPRF_VY", + "$7E0D50": "SPR0_VX", + "$7E0D51": "SPR1_VX", + "$7E0D52": "SPR2_VX", + "$7E0D53": "SPR3_VX", + "$7E0D54": "SPR4_VX", + "$7E0D55": "SPR5_VX", + "$7E0D56": "SPR6_VX", + "$7E0D57": "SPR7_VX", + "$7E0D58": "SPR8_VX", + "$7E0D59": "SPR9_VX", + "$7E0D5A": "SPRA_VX", + "$7E0D5B": "SPRB_VX", + "$7E0D5C": "SPRC_VX", + "$7E0D5D": "SPRD_VX", + "$7E0D5E": "SPRE_VX", + "$7E0D5F": "SPRF_VX", + "$7E0D60": "SPR0_SUBVY", + "$7E0D61": "SPR1_SUBVY", + "$7E0D62": "SPR2_SUBVY", + "$7E0D63": "SPR3_SUBVY", + "$7E0D64": "SPR4_SUBVY", + "$7E0D65": "SPR5_SUBVY", + "$7E0D66": "SPR6_SUBVY", + "$7E0D67": "SPR7_SUBVY", + "$7E0D68": "SPR8_SUBVY", + "$7E0D69": "SPR9_SUBVY", + "$7E0D6A": "SPRA_SUBVY", + "$7E0D6B": "SPRB_SUBVY", + "$7E0D6C": "SPRC_SUBVY", + "$7E0D6D": "SPRD_SUBVY", + "$7E0D6E": "SPRE_SUBVY", + "$7E0D6F": "SPRF_SUBVY", + "$7E0D70": "SPR0_SUBVX", + "$7E0D71": "SPR1_SUBVX", + "$7E0D72": "SPR2_SUBVX", + "$7E0D73": "SPR3_SUBVX", + "$7E0D74": "SPR4_SUBVX", + "$7E0D75": "SPR5_SUBVX", + "$7E0D76": "SPR6_SUBVX", + "$7E0D77": "SPR7_SUBVX", + "$7E0D78": "SPR8_SUBVX", + "$7E0D79": "SPR9_SUBVX", + "$7E0D7A": "SPRA_SUBVX", + "$7E0D7B": "SPRB_SUBVX", + "$7E0D7C": "SPRC_SUBVX", + "$7E0D7D": "SPRD_SUBVX", + "$7E0D7E": "SPRE_SUBVX", + "$7E0D7F": "SPRF_SUBVX", + "$7E0D80": "SPR0_0D80", + "$7E0D81": "SPR1_0D80", + "$7E0D82": "SPR2_0D80", + "$7E0D83": "SPR3_0D80", + "$7E0D84": "SPR4_0D80", + "$7E0D85": "SPR5_0D80", + "$7E0D86": "SPR6_0D80", + "$7E0D87": "SPR7_0D80", + "$7E0D88": "SPR8_0D80", + "$7E0D89": "SPR9_0D80", + "$7E0D8A": "SPRA_0D80", + "$7E0D8B": "SPRB_0D80", + "$7E0D8C": "SPRC_0D80", + "$7E0D8D": "SPRD_0D80", + "$7E0D8E": "SPRE_0D80", + "$7E0D8F": "SPRF_0D80", + "$7E0D90": "SPR0_0D90", + "$7E0D91": "SPR1_0D90", + "$7E0D92": "SPR2_0D90", + "$7E0D93": "SPR3_0D90", + "$7E0D94": "SPR4_0D90", + "$7E0D95": "SPR5_0D90", + "$7E0D96": "SPR6_0D90", + "$7E0D97": "SPR7_0D90", + "$7E0D98": "SPR8_0D90", + "$7E0D99": "SPR9_0D90", + "$7E0D9A": "SPRA_0D90", + "$7E0D9B": "SPRB_0D90", + "$7E0D9C": "SPRC_0D90", + "$7E0D9D": "SPRD_0D90", + "$7E0D9E": "SPRE_0D90", + "$7E0D9F": "SPRF_0D90", + "$7E0DA0": "SPR0_0DA0", + "$7E0DA1": "SPR1_0DA0", + "$7E0DA2": "SPR2_0DA0", + "$7E0DA3": "SPR3_0DA0", + "$7E0DA4": "SPR4_0DA0", + "$7E0DA5": "SPR5_0DA0", + "$7E0DA6": "SPR6_0DA0", + "$7E0DA7": "SPR7_0DA0", + "$7E0DA8": "SPR8_0DA0", + "$7E0DA9": "SPR9_0DA0", + "$7E0DAA": "SPRA_0DA0", + "$7E0DAB": "SPRB_0DA0", + "$7E0DAC": "SPRC_0DA0", + "$7E0DAD": "SPRD_0DA0", + "$7E0DAE": "SPRE_0DA0", + "$7E0DAF": "SPRF_0DA0", + "$7E0DB0": "SPR0_0DB0", + "$7E0DB1": "SPR1_0DB0", + "$7E0DB2": "SPR2_0DB0", + "$7E0DB3": "SPR3_0DB0", + "$7E0DB4": "SPR4_0DB0", + "$7E0DB5": "SPR5_0DB0", + "$7E0DB6": "SPR6_0DB0", + "$7E0DB7": "SPR7_0DB0", + "$7E0DB8": "SPR8_0DB0", + "$7E0DB9": "SPR9_0DB0", + "$7E0DBA": "SPRA_0DB0", + "$7E0DBB": "SPRB_0DB0", + "$7E0DBC": "SPRC_0DB0", + "$7E0DBD": "SPRD_0DB0", + "$7E0DBE": "SPRE_0DB0", + "$7E0DBF": "SPRF_0DB0", + "$7E0DC0": "SPR0_GFXSTEP", + "$7E0DC1": "SPR1_GFXSTEP", + "$7E0DC2": "SPR2_GFXSTEP", + "$7E0DC3": "SPR3_GFXSTEP", + "$7E0DC4": "SPR4_GFXSTEP", + "$7E0DC5": "SPR5_GFXSTEP", + "$7E0DC6": "SPR6_GFXSTEP", + "$7E0DC7": "SPR7_GFXSTEP", + "$7E0DC8": "SPR8_GFXSTEP", + "$7E0DC9": "SPR9_GFXSTEP", + "$7E0DCA": "SPRA_GFXSTEP", + "$7E0DCB": "SPRB_GFXSTEP", + "$7E0DCC": "SPRC_GFXSTEP", + "$7E0DCD": "SPRD_GFXSTEP", + "$7E0DCE": "SPRE_GFXSTEP", + "$7E0DCF": "SPRF_GFXSTEP", + "$7E0DD0": "SPR0_AIMODE", + "$7E0DD1": "SPR1_AIMODE", + "$7E0DD2": "SPR2_AIMODE", + "$7E0DD3": "SPR3_AIMODE", + "$7E0DD4": "SPR4_AIMODE", + "$7E0DD5": "SPR5_AIMODE", + "$7E0DD6": "SPR6_AIMODE", + "$7E0DD7": "SPR7_AIMODE", + "$7E0DD8": "SPR8_AIMODE", + "$7E0DD9": "SPR9_AIMODE", + "$7E0DDA": "SPRA_AIMODE", + "$7E0DDB": "SPRB_AIMODE", + "$7E0DDC": "SPRC_AIMODE", + "$7E0DDD": "SPRD_AIMODE", + "$7E0DDE": "SPRE_AIMODE", + "$7E0DDF": "SPRF_AIMODE", + "$7E0DE0": "SPR0_0DE0", + "$7E0DE1": "SPR1_0DE0", + "$7E0DE2": "SPR2_0DE0", + "$7E0DE3": "SPR3_0DE0", + "$7E0DE4": "SPR4_0DE0", + "$7E0DE5": "SPR5_0DE0", + "$7E0DE6": "SPR6_0DE0", + "$7E0DE7": "SPR7_0DE0", + "$7E0DE8": "SPR8_0DE0", + "$7E0DE9": "SPR9_0DE0", + "$7E0DEA": "SPRA_0DE0", + "$7E0DEB": "SPRB_0DE0", + "$7E0DEC": "SPRC_0DE0", + "$7E0DED": "SPRD_0DE0", + "$7E0DEE": "SPRE_0DE0", + "$7E0DEF": "SPRF_0DE0", + "$7E0DF0": "SPR0_TIMER_A", + "$7E0DF1": "SPR1_TIMER_A", + "$7E0DF2": "SPR2_TIMER_A", + "$7E0DF3": "SPR3_TIMER_A", + "$7E0DF4": "SPR4_TIMER_A", + "$7E0DF5": "SPR5_TIMER_A", + "$7E0DF6": "SPR6_TIMER_A", + "$7E0DF7": "SPR7_TIMER_A", + "$7E0DF8": "SPR8_TIMER_A", + "$7E0DF9": "SPR9_TIMER_A", + "$7E0DFA": "SPRA_TIMER_A", + "$7E0DFB": "SPRB_TIMER_A", + "$7E0DFC": "SPRC_TIMER_A", + "$7E0DFD": "SPRD_TIMER_A", + "$7E0DFE": "SPRE_TIMER_A", + "$7E0DFF": "SPRF_TIMER_A", + "$7E0E00": "SPR0_TIMER_B", + "$7E0E01": "SPR1_TIMER_B", + "$7E0E02": "SPR2_TIMER_B", + "$7E0E03": "SPR3_TIMER_B", + "$7E0E04": "SPR4_TIMER_B", + "$7E0E05": "SPR5_TIMER_B", + "$7E0E06": "SPR6_TIMER_B", + "$7E0E07": "SPR7_TIMER_B", + "$7E0E08": "SPR8_TIMER_B", + "$7E0E09": "SPR9_TIMER_B", + "$7E0E0A": "SPRA_TIMER_B", + "$7E0E0B": "SPRB_TIMER_B", + "$7E0E0C": "SPRC_TIMER_B", + "$7E0E0D": "SPRD_TIMER_B", + "$7E0E0E": "SPRE_TIMER_B", + "$7E0E0F": "SPRF_TIMER_B", + "$7E0E10": "SPR0_TIMER_C", + "$7E0E11": "SPR1_TIMER_C", + "$7E0E12": "SPR2_TIMER_C", + "$7E0E13": "SPR3_TIMER_C", + "$7E0E14": "SPR4_TIMER_C", + "$7E0E15": "SPR5_TIMER_C", + "$7E0E16": "SPR6_TIMER_C", + "$7E0E17": "SPR7_TIMER_C", + "$7E0E18": "SPR8_TIMER_C", + "$7E0E19": "SPR9_TIMER_C", + "$7E0E1A": "SPRA_TIMER_C", + "$7E0E1B": "SPRB_TIMER_C", + "$7E0E1C": "SPRC_TIMER_C", + "$7E0E1D": "SPRD_TIMER_C", + "$7E0E1E": "SPRE_TIMER_C", + "$7E0E1F": "SPRF_TIMER_C", + "$7E0E20": "SPR0_ID", + "$7E0E21": "SPR1_ID", + "$7E0E22": "SPR2_ID", + "$7E0E23": "SPR3_ID", + "$7E0E24": "SPR4_ID", + "$7E0E25": "SPR5_ID", + "$7E0E26": "SPR6_ID", + "$7E0E27": "SPR7_ID", + "$7E0E28": "SPR8_ID", + "$7E0E29": "SPR9_ID", + "$7E0E2A": "SPRA_ID", + "$7E0E2B": "SPRB_ID", + "$7E0E2C": "SPRC_ID", + "$7E0E2D": "SPRD_ID", + "$7E0E2E": "SPRE_ID", + "$7E0E2F": "SPRF_ID", + "$7E0E30": "SPR0_AUXS", + "$7E0E31": "SPR1_AUXS", + "$7E0E32": "SPR2_AUXS", + "$7E0E33": "SPR3_AUXS", + "$7E0E34": "SPR4_AUXS", + "$7E0E35": "SPR5_AUXS", + "$7E0E36": "SPR6_AUXS", + "$7E0E37": "SPR7_AUXS", + "$7E0E38": "SPR8_AUXS", + "$7E0E39": "SPR9_AUXS", + "$7E0E3A": "SPRA_AUXS", + "$7E0E3B": "SPRB_AUXS", + "$7E0E3C": "SPRC_AUXS", + "$7E0E3D": "SPRD_AUXS", + "$7E0E3E": "SPRE_AUXS", + "$7E0E3F": "SPRF_AUXS", + "$7E0E40": "SPR0_OAMHARM", + "$7E0E41": "SPR1_OAMHARM", + "$7E0E42": "SPR2_OAMHARM", + "$7E0E43": "SPR3_OAMHARM", + "$7E0E44": "SPR4_OAMHARM", + "$7E0E45": "SPR5_OAMHARM", + "$7E0E46": "SPR6_OAMHARM", + "$7E0E47": "SPR7_OAMHARM", + "$7E0E48": "SPR8_OAMHARM", + "$7E0E49": "SPR9_OAMHARM", + "$7E0E4A": "SPRA_OAMHARM", + "$7E0E4B": "SPRB_OAMHARM", + "$7E0E4C": "SPRC_OAMHARM", + "$7E0E4D": "SPRD_OAMHARM", + "$7E0E4E": "SPRE_OAMHARM", + "$7E0E4F": "SPRF_OAMHARM", + "$7E0E50": "SPR0_HP", + "$7E0E51": "SPR1_HP", + "$7E0E52": "SPR2_HP", + "$7E0E53": "SPR3_HP", + "$7E0E54": "SPR4_HP", + "$7E0E55": "SPR5_HP", + "$7E0E56": "SPR6_HP", + "$7E0E57": "SPR7_HP", + "$7E0E58": "SPR8_HP", + "$7E0E59": "SPR9_HP", + "$7E0E5A": "SPRA_HP", + "$7E0E5B": "SPRB_HP", + "$7E0E5C": "SPRC_HP", + "$7E0E5D": "SPRD_HP", + "$7E0E5E": "SPRE_HP", + "$7E0E5F": "SPRF_HP", + "$7E0E60": "SPR0_PROPS", + "$7E0E61": "SPR1_PROPS", + "$7E0E62": "SPR2_PROPS", + "$7E0E63": "SPR3_PROPS", + "$7E0E64": "SPR4_PROPS", + "$7E0E65": "SPR5_PROPS", + "$7E0E66": "SPR6_PROPS", + "$7E0E67": "SPR7_PROPS", + "$7E0E68": "SPR8_PROPS", + "$7E0E69": "SPR9_PROPS", + "$7E0E6A": "SPRA_PROPS", + "$7E0E6B": "SPRB_PROPS", + "$7E0E6C": "SPRC_PROPS", + "$7E0E6D": "SPRD_PROPS", + "$7E0E6E": "SPRE_PROPS", + "$7E0E6F": "SPRF_PROPS", + "$7E0E70": "SPR0_COLLIDE", + "$7E0E71": "SPR1_COLLIDE", + "$7E0E72": "SPR2_COLLIDE", + "$7E0E73": "SPR3_COLLIDE", + "$7E0E74": "SPR4_COLLIDE", + "$7E0E75": "SPR5_COLLIDE", + "$7E0E76": "SPR6_COLLIDE", + "$7E0E77": "SPR7_COLLIDE", + "$7E0E78": "SPR8_COLLIDE", + "$7E0E79": "SPR9_COLLIDE", + "$7E0E7A": "SPRA_COLLIDE", + "$7E0E7B": "SPRB_COLLIDE", + "$7E0E7C": "SPRC_COLLIDE", + "$7E0E7D": "SPRD_COLLIDE", + "$7E0E7E": "SPRE_COLLIDE", + "$7E0E7F": "SPRF_COLLIDE", + "$7E0E80": "SPR0_0E80", + "$7E0E81": "SPR1_0E80", + "$7E0E82": "SPR2_0E80", + "$7E0E83": "SPR3_0E80", + "$7E0E84": "SPR4_0E80", + "$7E0E85": "SPR5_0E80", + "$7E0E86": "SPR6_0E80", + "$7E0E87": "SPR7_0E80", + "$7E0E88": "SPR8_0E80", + "$7E0E89": "SPR9_0E80", + "$7E0E8A": "SPRA_0E80", + "$7E0E8B": "SPRB_0E80", + "$7E0E8C": "SPRC_0E80", + "$7E0E8D": "SPRD_0E80", + "$7E0E8E": "SPRE_0E80", + "$7E0E8F": "SPRF_0E80", + "$7E0E90": "SPR0_0E90", + "$7E0E91": "SPR1_0E90", + "$7E0E92": "SPR2_0E90", + "$7E0E93": "SPR3_0E90", + "$7E0E94": "SPR4_0E90", + "$7E0E95": "SPR5_0E90", + "$7E0E96": "SPR6_0E90", + "$7E0E97": "SPR7_0E90", + "$7E0E98": "SPR8_0E90", + "$7E0E99": "SPR9_0E90", + "$7E0E9A": "SPRA_0E90", + "$7E0E9B": "SPRB_0E90", + "$7E0E9C": "SPRC_0E90", + "$7E0E9D": "SPRD_0E90", + "$7E0E9E": "SPRE_0E90", + "$7E0E9F": "SPRF_0E90", + "$7E0EA0": "SPR0_0EA0", + "$7E0EA1": "SPR1_0EA0", + "$7E0EA2": "SPR2_0EA0", + "$7E0EA3": "SPR3_0EA0", + "$7E0EA4": "SPR4_0EA0", + "$7E0EA5": "SPR5_0EA0", + "$7E0EA6": "SPR6_0EA0", + "$7E0EA7": "SPR7_0EA0", + "$7E0EA8": "SPR8_0EA0", + "$7E0EA9": "SPR9_0EA0", + "$7E0EAA": "SPRA_0EA0", + "$7E0EAB": "SPRB_0EA0", + "$7E0EAC": "SPRC_0EA0", + "$7E0EAD": "SPRD_0EA0", + "$7E0EAE": "SPRE_0EA0", + "$7E0EAF": "SPRF_0EA0", + "$7E0EB0": "SPR0_0EB0", + "$7E0EB1": "SPR1_0EB0", + "$7E0EB2": "SPR2_0EB0", + "$7E0EB3": "SPR3_0EB0", + "$7E0EB4": "SPR4_0EB0", + "$7E0EB5": "SPR5_0EB0", + "$7E0EB6": "SPR6_0EB0", + "$7E0EB7": "SPR7_0EB0", + "$7E0EB8": "SPR8_0EB0", + "$7E0EB9": "SPR9_0EB0", + "$7E0EBA": "SPRA_0EB0", + "$7E0EBB": "SPRB_0EB0", + "$7E0EBC": "SPRC_0EB0", + "$7E0EBD": "SPRD_0EB0", + "$7E0EBE": "SPRE_0EB0", + "$7E0EBF": "SPRF_0EB0", + "$7E0EC0": "SPR0_0EC0", + "$7E0EC1": "SPR1_0EC0", + "$7E0EC2": "SPR2_0EC0", + "$7E0EC3": "SPR3_0EC0", + "$7E0EC4": "SPR4_0EC0", + "$7E0EC5": "SPR5_0EC0", + "$7E0EC6": "SPR6_0EC0", + "$7E0EC7": "SPR7_0EC0", + "$7E0EC8": "SPR8_0EC0", + "$7E0EC9": "SPR9_0EC0", + "$7E0ECA": "SPRA_0EC0", + "$7E0ECB": "SPRB_0EC0", + "$7E0ECC": "SPRC_0EC0", + "$7E0ECD": "SPRD_0EC0", + "$7E0ECE": "SPRE_0EC0", + "$7E0ECF": "SPRF_0EC0", + "$7E0ED0": "SPR0_0ED0", + "$7E0ED1": "SPR1_0ED0", + "$7E0ED2": "SPR2_0ED0", + "$7E0ED3": "SPR3_0ED0", + "$7E0ED4": "SPR4_0ED0", + "$7E0ED5": "SPR5_0ED0", + "$7E0ED6": "SPR6_0ED0", + "$7E0ED7": "SPR7_0ED0", + "$7E0ED8": "SPR8_0ED0", + "$7E0ED9": "SPR9_0ED0", + "$7E0EDA": "SPRA_0ED0", + "$7E0EDB": "SPRB_0ED0", + "$7E0EDC": "SPRC_0ED0", + "$7E0EDD": "SPRD_0ED0", + "$7E0EDE": "SPRE_0ED0", + "$7E0EDF": "SPRF_0ED0", + "$7E0EE0": "SPR0_TIMER_D", + "$7E0EE1": "SPR1_TIMER_D", + "$7E0EE2": "SPR2_TIMER_D", + "$7E0EE3": "SPR3_TIMER_D", + "$7E0EE4": "SPR4_TIMER_D", + "$7E0EE5": "SPR5_TIMER_D", + "$7E0EE6": "SPR6_TIMER_D", + "$7E0EE7": "SPR7_TIMER_D", + "$7E0EE8": "SPR8_TIMER_D", + "$7E0EE9": "SPR9_TIMER_D", + "$7E0EEA": "SPRA_TIMER_D", + "$7E0EEB": "SPRB_TIMER_D", + "$7E0EEC": "SPRC_TIMER_D", + "$7E0EED": "SPRD_TIMER_D", + "$7E0EEE": "SPRE_TIMER_D", + "$7E0EEF": "SPRF_TIMER_D", + "$7E0EF0": "SPR0_DMGTIMER", + "$7E0EF1": "SPR1_DMGTIMER", + "$7E0EF2": "SPR2_DMGTIMER", + "$7E0EF3": "SPR3_DMGTIMER", + "$7E0EF4": "SPR4_DMGTIMER", + "$7E0EF5": "SPR5_DMGTIMER", + "$7E0EF6": "SPR6_DMGTIMER", + "$7E0EF7": "SPR7_DMGTIMER", + "$7E0EF8": "SPR8_DMGTIMER", + "$7E0EF9": "SPR9_DMGTIMER", + "$7E0EFA": "SPRA_DMGTIMER", + "$7E0EFB": "SPRB_DMGTIMER", + "$7E0EFC": "SPRC_DMGTIMER", + "$7E0EFD": "SPRD_DMGTIMER", + "$7E0EFE": "SPRE_DMGTIMER", + "$7E0EFF": "SPRF_DMGTIMER", + "$7E0F00": "SPR0_HALT", + "$7E0F01": "SPR1_HALT", + "$7E0F02": "SPR2_HALT", + "$7E0F03": "SPR3_HALT", + "$7E0F04": "SPR4_HALT", + "$7E0F05": "SPR5_HALT", + "$7E0F06": "SPR6_HALT", + "$7E0F07": "SPR7_HALT", + "$7E0F08": "SPR8_HALT", + "$7E0F09": "SPR9_HALT", + "$7E0F0A": "SPRA_HALT", + "$7E0F0B": "SPRB_HALT", + "$7E0F0C": "SPRC_HALT", + "$7E0F0D": "SPRD_HALT", + "$7E0F0E": "SPRE_HALT", + "$7E0F0F": "SPRF_HALT", + "$7E0F10": "SPR0_TIMER_E", + "$7E0F11": "SPR1_TIMER_E", + "$7E0F12": "SPR2_TIMER_E", + "$7E0F13": "SPR3_TIMER_E", + "$7E0F14": "SPR4_TIMER_E", + "$7E0F15": "SPR5_TIMER_E", + "$7E0F16": "SPR6_TIMER_E", + "$7E0F17": "SPR7_TIMER_E", + "$7E0F18": "SPR8_TIMER_E", + "$7E0F19": "SPR9_TIMER_E", + "$7E0F1A": "SPRA_TIMER_E", + "$7E0F1B": "SPRB_TIMER_E", + "$7E0F1C": "SPRC_TIMER_E", + "$7E0F1D": "SPRD_TIMER_E", + "$7E0F1E": "SPRE_TIMER_E", + "$7E0F1F": "SPRF_TIMER_E", + "$7E0F20": "SPR0_LAYER", + "$7E0F21": "SPR1_LAYER", + "$7E0F22": "SPR2_LAYER", + "$7E0F23": "SPR3_LAYER", + "$7E0F24": "SPR4_LAYER", + "$7E0F25": "SPR5_LAYER", + "$7E0F26": "SPR6_LAYER", + "$7E0F27": "SPR7_LAYER", + "$7E0F28": "SPR8_LAYER", + "$7E0F29": "SPR9_LAYER", + "$7E0F2A": "SPRA_LAYER", + "$7E0F2B": "SPRB_LAYER", + "$7E0F2C": "SPRC_LAYER", + "$7E0F2D": "SPRD_LAYER", + "$7E0F2E": "SPRE_LAYER", + "$7E0F2F": "SPRF_LAYER", + "$7E0F30": "SPR0_RECOILY", + "$7E0F31": "SPR1_RECOILY", + "$7E0F32": "SPR2_RECOILY", + "$7E0F33": "SPR3_RECOILY", + "$7E0F34": "SPR4_RECOILY", + "$7E0F35": "SPR5_RECOILY", + "$7E0F36": "SPR6_RECOILY", + "$7E0F37": "SPR7_RECOILY", + "$7E0F38": "SPR8_RECOILY", + "$7E0F39": "SPR9_RECOILY", + "$7E0F3A": "SPRA_RECOILY", + "$7E0F3B": "SPRB_RECOILY", + "$7E0F3C": "SPRC_RECOILY", + "$7E0F3D": "SPRD_RECOILY", + "$7E0F3E": "SPRE_RECOILY", + "$7E0F3F": "SPRF_RECOILY", + "$7E0F40": "SPR0_RECOILX", + "$7E0F41": "SPR1_RECOILX", + "$7E0F42": "SPR2_RECOILX", + "$7E0F43": "SPR3_RECOILX", + "$7E0F44": "SPR4_RECOILX", + "$7E0F45": "SPR5_RECOILX", + "$7E0F46": "SPR6_RECOILX", + "$7E0F47": "SPR7_RECOILX", + "$7E0F48": "SPR8_RECOILX", + "$7E0F49": "SPR9_RECOILX", + "$7E0F4A": "SPRA_RECOILX", + "$7E0F4B": "SPRB_RECOILX", + "$7E0F4C": "SPRC_RECOILX", + "$7E0F4D": "SPRD_RECOILX", + "$7E0F4E": "SPRE_RECOILX", + "$7E0F4F": "SPRF_RECOILX", + "$7E0F50": "SPR0_OAMPROP", + "$7E0F51": "SPR1_OAMPROP", + "$7E0F52": "SPR2_OAMPROP", + "$7E0F53": "SPR3_OAMPROP", + "$7E0F54": "SPR4_OAMPROP", + "$7E0F55": "SPR5_OAMPROP", + "$7E0F56": "SPR6_OAMPROP", + "$7E0F57": "SPR7_OAMPROP", + "$7E0F58": "SPR8_OAMPROP", + "$7E0F59": "SPR9_OAMPROP", + "$7E0F5A": "SPRA_OAMPROP", + "$7E0F5B": "SPRB_OAMPROP", + "$7E0F5C": "SPRC_OAMPROP", + "$7E0F5D": "SPRD_OAMPROP", + "$7E0F5E": "SPRE_OAMPROP", + "$7E0F5F": "SPRF_OAMPROP", + "$7E0F60": "SPR0_COLPROP", + "$7E0F61": "SPR1_COLPROP", + "$7E0F62": "SPR2_COLPROP", + "$7E0F63": "SPR3_COLPROP", + "$7E0F64": "SPR4_COLPROP", + "$7E0F65": "SPR5_COLPROP", + "$7E0F66": "SPR6_COLPROP", + "$7E0F67": "SPR7_COLPROP", + "$7E0F68": "SPR8_COLPROP", + "$7E0F69": "SPR9_COLPROP", + "$7E0F6A": "SPRA_COLPROP", + "$7E0F6B": "SPRB_COLPROP", + "$7E0F6C": "SPRC_COLPROP", + "$7E0F6D": "SPRD_COLPROP", + "$7E0F6E": "SPRE_COLPROP", + "$7E0F6F": "SPRF_COLPROP", + "$7E0F70": "SPR0_Z", + "$7E0F71": "SPR1_Z", + "$7E0F72": "SPR2_Z", + "$7E0F73": "SPR3_Z", + "$7E0F74": "SPR4_Z", + "$7E0F75": "SPR5_Z", + "$7E0F76": "SPR6_Z", + "$7E0F77": "SPR7_Z", + "$7E0F78": "SPR8_Z", + "$7E0F79": "SPR9_Z", + "$7E0F7A": "SPRA_Z", + "$7E0F7B": "SPRB_Z", + "$7E0F7C": "SPRC_Z", + "$7E0F7D": "SPRD_Z", + "$7E0F7E": "SPRE_Z", + "$7E0F7F": "SPRF_Z", + "$7E0F80": "SPR0_VZ", + "$7E0F81": "SPR1_VZ", + "$7E0F82": "SPR2_VZ", + "$7E0F83": "SPR3_VZ", + "$7E0F84": "SPR4_VZ", + "$7E0F85": "SPR5_VZ", + "$7E0F86": "SPR6_VZ", + "$7E0F87": "SPR7_VZ", + "$7E0F88": "SPR8_VZ", + "$7E0F89": "SPR9_VZ", + "$7E0F8A": "SPRA_VZ", + "$7E0F8B": "SPRB_VZ", + "$7E0F8C": "SPRC_VZ", + "$7E0F8D": "SPRD_VZ", + "$7E0F8E": "SPRE_VZ", + "$7E0F8F": "SPRF_VZ", + "$7E0F90": "SPR0_SUBZ", + "$7E0F91": "SPR1_SUBZ", + "$7E0F92": "SPR2_SUBZ", + "$7E0F93": "SPR3_SUBZ", + "$7E0F94": "SPR4_SUBZ", + "$7E0F95": "SPR5_SUBZ", + "$7E0F96": "SPR6_SUBZ", + "$7E0F97": "SPR7_SUBZ", + "$7E0F98": "SPR8_SUBZ", + "$7E0F99": "SPR9_SUBZ", + "$7E0F9A": "SPRA_SUBZ", + "$7E0F9B": "SPRB_SUBZ", + "$7E0F9C": "SPRC_SUBZ", + "$7E0F9D": "SPRD_SUBZ", + "$7E0F9E": "SPRE_SUBZ", + "$7E0F9F": "SPRF_SUBZ", + "$7E0FA0": "SPRSLOT", + "$7E0FA1": "RNG", + "$7E0FA2": "UNUSED_7E0FA2", + "$7E0FA3": "UNUSED_7E0FA3", + "$7E0FA4": "UNUSED_7E0FA4", + "$7E0FA5": "SPRTILE", + "$7E0FA6": "UNUSED_7E0FA6", + "$7E0FA7": "UNUSED_7E0FA7", + "$7E0FA8": "SPROAMX", + "$7E0FA9": "SPROAMY", + "$7E0FAA": "MAPOAMX", + "$7E0FAB": "MAPOAMY", + "$7E0FAC": "TINK", + "$7E0FAD": "TINKX", + "$7E0FAE": "TINKY", + "$7E0FAF": "TINKATM", + "$7E0FB0": "SETXHI", + "$7E0FB1": "SETYHI", + "$7E0FB2": "DEBUG_7E0FB2", + "$7E0FB3": "LAYERING", + "$7E0FB4": "GARNISH", + "$7E0FB5": "SPRXTEMP", + "$7E0FB6": "SPRSCRAP", + "$7E0FB7": "OWLOADSWAP", + "$7E0FB8": "OWLDWXL", + "$7E0FB9": "OWLDWXH", + "$7E0FBA": "OWLDNYL", + "$7E0FBB": "OWLDNYH", + "$7E0FBC": "OWLDEXL", + "$7E0FBD": "OWLDEXH", + "$7E0FBE": "OWLDSYL", + "$7E0FBF": "OWLDSYH", + "$7E0FC0": "UNUSED_7E0FC0", + "$7E0FC1": "FREEZESPR", + "$7E0FC2": "POSX2L", + "$7E0FC3": "POSX2H", + "$7E0FC4": "POSY2L", + "$7E0FC5": "POSY2H", + "$7E0FC6": "GFXHSLOT", + "$7E0FC7": "PRIZEX1", + "$7E0FC8": "PRIZEX2", + "$7E0FC9": "PRIZEX3", + "$7E0FCA": "PRIZEX4", + "$7E0FCB": "PRIZEX5", + "$7E0FCC": "PRIZEX6", + "$7E0FCD": "PRIZEX7", + "$7E0FCE": "UNUSED_7E0FCE", + "$7E0FCF": "UNUSED_7E0FCF", + "$7E0FD0": "UNUSED_7E0FD0", + "$7E0FD1": "UNUSED_7E0FD1", + "$7E0FD2": "UNUSED_7E0FD2", + "$7E0FD3": "UNUSED_7E0FD3", + "$7E0FD4": "UNUSED_7E0FD4", + "$7E0FD5": "UNUSED_7E0FD5", + "$7E0FD6": "UNUSED_7E0FD6", + "$7E0FD7": "SKIPFRAME", + "$7E0FD8": "SPRCORDXL", + "$7E0FD9": "SPRCORDXH", + "$7E0FDA": "SPRCORDYL", + "$7E0FDB": "SPRCORDYH", + "$7E0FDC": "ALERT", + "$7E0FDD": "ANIMALRUN", + "$7E0FDE": "HOMESLOT", + "$7E0FDF": "UNUSED_7E0FDF", + "$7E0FE0": "OAMAH", + "$7E0FE1": "OAMAL", + "$7E0FE2": "OAMBH", + "$7E0FE3": "OAMBL", + "$7E0FF4": "OAMBKEH", + "$7E0FF5": "OAMBKEL", + "$7E0FF6": "OAMBKFH", + "$7E0FF7": "OAMBKFL", + "$7E0FF8": "GARNFIND", + "$7E0FF9": "OAMEL", + "$7E0FFA": "DOCACHE", + "$7E0FFB": "JUNK_7E0FFB", + "$7E0FEC": "OAMBKAH", + "$7E0FED": "OAMBKAL", + "$7E0FEE": "OAMBKBH", + "$7E0FEF": "OAMBKBL", + "$7E0FF0": "OAMBKCH", + "$7E0FF1": "OAMBKCL", + "$7E0FF2": "OAMBKDH", + "$7E0FF3": "OAMBKDL", + "$7E0FFC": "NOMENU", + "$7E0FFD": "AVALANCHE", + "$7E0FFE": "BOULDER", + "$7E0FFF": "WORLDFLAG", + "$7E1000": "GFXSTRIPES", + "$7E1100": "ROOMSTRIPES", + "$7E1980": "DOOR0TYPE", + "$7E1981": "DOOR0DIRT", + "$7E1982": "DOOR1TYPE", + "$7E1983": "DOOR1DIRT", + "$7E1984": "DOOR2TYPE", + "$7E1985": "DOOR2DIRT", + "$7E1986": "DOOR3TYPE", + "$7E1987": "DOOR3DIRT", + "$7E1988": "DOOR4TYPE", + "$7E1989": "DOOR4DIRT", + "$7E198A": "DOOR5TYPE", + "$7E198B": "DOOR5DIRT", + "$7E198C": "DOOR6TYPE", + "$7E198D": "DOOR6DIRT", + "$7E198E": "DOOR7TYPE", + "$7E198F": "DOOR7DIRT", + "$7E1990": "DOOR8TYPE", + "$7E1991": "DOOR8DIRT", + "$7E1992": "DOOR9TYPE", + "$7E1993": "DOOR9DIRT", + "$7E1994": "DOORATYPE", + "$7E1995": "DOORADIRT", + "$7E1996": "DOORBTYPE", + "$7E1997": "DOORBDIRT", + "$7E1998": "DOORCTYPE", + "$7E1999": "DOORCDIRT", + "$7E199A": "DOORDTYPE", + "$7E199B": "DOORDDIRT", + "$7E199C": "DOORETYPE", + "$7E199D": "DOOREDIRT", + "$7E199E": "DOORFTYPE", + "$7E199F": "DOORFDIRT", + "$7E19A0": "DOOR0TMAPL", + "$7E19A1": "DOOR0TMAPH", + "$7E19A2": "DOOR1TMAPL", + "$7E19A3": "DOOR1TMAPH", + "$7E19A4": "DOOR2TMAPL", + "$7E19A5": "DOOR2TMAPH", + "$7E19A6": "DOOR3TMAPL", + "$7E19A7": "DOOR3TMAPH", + "$7E19A8": "DOOR4TMAPL", + "$7E19A9": "DOOR4TMAPH", + "$7E19AA": "DOOR5TMAPL", + "$7E19AB": "DOOR5TMAPH", + "$7E19AC": "DOOR6TMAPL", + "$7E19AD": "DOOR6TMAPH", + "$7E19AE": "DOOR7TMAPL", + "$7E19AF": "DOOR7TMAPH", + "$7E19B0": "DOOR8TMAPL", + "$7E19B1": "DOOR8TMAPH", + "$7E19B2": "DOOR9TMAPL", + "$7E19B3": "DOOR9TMAPH", + "$7E19B4": "DOORATMAPL", + "$7E19B5": "DOORATMAPH", + "$7E19B6": "DOORBTMAPL", + "$7E19B7": "DOORBTMAPH", + "$7E19B8": "DOORCTMAPL", + "$7E19B9": "DOORCTMAPH", + "$7E19BA": "DOORDTMAPL", + "$7E19BB": "DOORDTMAPH", + "$7E19BC": "DOORETMAPL", + "$7E19BD": "DOORETMAPH", + "$7E19BE": "DOORFTMAPL", + "$7E19BF": "DOORFTMAPH", + "$7E19C0": "DOOR0DIR", + "$7E19C1": "DOOR0DIRH", + "$7E19C2": "DOOR1DIR", + "$7E19C3": "DOOR1DIRH", + "$7E19C4": "DOOR2DIR", + "$7E19C5": "DOOR2DIRH", + "$7E19C6": "DOOR3DIR", + "$7E19C7": "DOOR3DIRH", + "$7E19C8": "DOOR4DIR", + "$7E19C9": "DOOR4DIRH", + "$7E19CA": "DOOR5DIR", + "$7E19CB": "DOOR5DIRH", + "$7E19CC": "DOOR6DIR", + "$7E19CD": "DOOR6DIRH", + "$7E19CE": "DOOR7DIR", + "$7E19CF": "DOOR7DIRH", + "$7E19D0": "DOOR8DIR", + "$7E19D1": "DOOR8DIRH", + "$7E19D2": "DOOR9DIR", + "$7E19D3": "DOOR9DIRH", + "$7E19D4": "DOORADIR", + "$7E19D5": "DOORADIRH", + "$7E19D6": "DOORBDIR", + "$7E19D7": "DOORBDIRH", + "$7E19D8": "DOORCDIR", + "$7E19D9": "DOORCDIRH", + "$7E19DA": "DOORDDIR", + "$7E19DB": "DOORDDIRH", + "$7E19DC": "DOOREDIR", + "$7E19DD": "DOOREDIRH", + "$7E19DE": "DOORFDIR", + "$7E19DF": "DOORFDIRH", + "$7E19E0": "EXITI", + "$7E19E1": "EXITIH", + "$7E19E2": "EXIT0TX", + "$7E19E3": "EXIT0TXH", + "$7E19E4": "EXIT1TX", + "$7E19E5": "EXIT1TXH", + "$7E19E6": "EXIT2TX", + "$7E19E7": "EXIT2TXH", + "$7E19E8": "EXIT3TX", + "$7E19E9": "EXIT3TXH", + "$7E19EA": "UNUSED_7E19EA", + "$7E1A00": "FOLLOWERYL", + "$7E1A14": "FOLLOWERYH", + "$7E1A28": "FOLLOWERXL", + "$7E1A3C": "FOLLOWERXH", + "$7E1A50": "FOLLOWERZ", + "$7E1A64": "FOLLOWERLAYER", + "$7E1A78": "UNUSED_7E1A78", + "$7E1AB0": "FLUTENUMXL", + "$7E1AB8": "UNUSED_7E1AB8", + "$7E1ABF": "MIRRORXL", + "$7E1AC0": "FLUTENUMXH", + "$7E1AC8": "UNUSED_7E1AC8", + "$7E1ACF": "MIRRORXH", + "$7E1AD0": "FLUTENUMYL", + "$7E1AD8": "UNUSED_7E1AD8", + "$7E1ADF": "MIRRORYL", + "$7E1AE0": "FLUTENUMYH", + "$7E1AE8": "UNUSED_7E1AE8", + "$7E1AEF": "MIRRORYH", + "$7E1AF0": "FLUTESEL", + "$7E1AF1": "JUNK_7E1AF1", + "$7E1AF2": "UNUSED_7E1AF2", + "$7E1AF3": "UNUSED_7E1AF3", + "$7E1AF4": "UNUSED_7E1AF4", + "$7E1AF5": "UNUSED_7E1AF5", + "$7E1AF6": "UNUSED_7E1AF6", + "$7E1AF7": "UNUSED_7E1AF7", + "$7E1AF8": "UNUSED_7E1AF8", + "$7E1AF9": "UNUSED_7E1AF9", + "$7E1AFA": "UNUSED_7E1AFA", + "$7E1AFB": "UNUSED_7E1AFB", + "$7E1AFC": "UNUSED_7E1AFC", + "$7E1AFD": "UNUSED_7E1AFD", + "$7E1AFE": "UNUSED_7E1AFE", + "$7E1AFF": "MIRRORCOUNT", + "$7E1B00": "IRIS", + "$7E1CC0": "UNUSED_7E1CC0", + "$7E1CC1": "UNUSED_7E1CC1", + "$7E1CC2": "UNUSED_7E1CC2", + "$7E1CC3": "UNUSED_7E1CC3", + "$7E1CC4": "UNUSED_7E1CC4", + "$7E1CC5": "UNUSED_7E1CC5", + "$7E1CC6": "UNUSED_7E1CC6", + "$7E1CC7": "UNUSED_7E1CC7", + "$7E1CC8": "UNUSED_7E1CC8", + "$7E1CC9": "UNUSED_7E1CC9", + "$7E1CCA": "UNUSED_7E1CCA", + "$7E1CCB": "UNUSED_7E1CCB", + "$7E1CCC": "UNUSED_7E1CCC", + "$7E1CCD": "UNUSED_7E1CCD", + "$7E1CCE": "UNUSED_7E1CCE", + "$7E1CCF": "UNUSED_7E1CCF", + "$7E1CD0": "BORDADD", + "$7E1CD1": "BORDADDH", + "$7E1CD2": "MSGWPOSL", + "$7E1CD3": "MSGWPOSH", + "$7E1CD4": "MSGSUBSUB", + "$7E1CD5": "MSGSPEEDB", + "$7E1CD6": "MSGSPEEDA", + "$7E1CD7": "MSGBRDCNT", + "$7E1CD8": "MSGSUB", + "$7E1CD9": "MSGBFROFF", + "$7E1CDA": "MSGBFROFFH", + "$7E1CDB": "UNUSED_7E1CDB", + "$7E1CDC": "MSGPROP", + "$7E1CDD": "MSGDATAOFF", + "$7E1CDE": "MSGDATAOFFH", + "$7E1CDF": "JUNK_7E1CDF", + "$7E1CE0": "MSGWAIT", + "$7E1CE1": "MSGWAITH", + "$7E1CE2": "MSGFILL", + "$7E1CE3": "MSGFILLH", + "$7E1CE4": "JUNK_7E1CE4", + "$7E1CE5": "JUNK_7E1CE5", + "$7E1CE6": "MSGPXL", + "$7E1CE7": "MSGPXLH", + "$7E1CE8": "MSGCHOICE", + "$7E1CE9": "MSGDELAY", + "$7E1CEA": "MSGSCRLX", + "$7E1CEB": "JUNK_7E1CEB", + "$7E1CEC": "JUNK_7E1CEC", + "$7E1CED": "JUNK_7E1CED", + "$7E1CEE": "JUNK_7E1CEE", + "$7E1CEF": "JUNK_7E1CEF", + "$7E1CF0": "TEXTID", + "$7E1CF1": "TEXTIDH", + "$7E1CF2": "MSGBCD12", + "$7E1CF3": "MSGBCD34", + "$7E1CF4": "MSGLASTC", + "$7E1CF5": "UNUSED_7E1CF5", + "$7E1CF6": "UNUSED_7E1CF6", + "$7E1CF7": "UNUSED_7E1CF7", + "$7E1CF8": "UNUSED_7E1CF8", + "$7E1CF9": "UNUSED_7E1CF9", + "$7E1CFA": "UNUSED_7E1CFA", + "$7E1CFB": "UNUSED_7E1CFB", + "$7E1CFC": "UNUSED_7E1CFC", + "$7E1CFD": "UNUSED_7E1CFD", + "$7E1CFE": "UNUSED_7E1CFE", + "$7E1CFF": "UNUSED_7E1CFF", + "$7E1D00": "CACHE_0DD0", + "$7E1D10": "CACHE_0E20", + "$7E1D20": "CACHE_0D10", + "$7E1D30": "CACHE_0D30", + "$7E1D40": "CACHE_0D00", + "$7E1D50": "CACHE_0D20", + "$7E1D60": "CACHE_0DC0", + "$7E1D70": "CACHE_0D90", + "$7E1D80": "CACHE_0EB0", + "$7E1D90": "CACHE_0F50", + "$7E1DA0": "CACHE_0B89", + "$7E1DB0": "CACHE_0DE0", + "$7E1DC0": "CACHE_0E40", + "$7E1DD0": "CACHE_0F20", + "$7E1DE0": "CACHE_0D80", + "$7E1DF0": "CACHE_0E60", + "$7E1E00": "SCENESTEP", + "$7E1E01": "SCENETIME", + "$7E1E02": "SCENESTOP", + "$7E1E03": "UNUSED_7E1E03", + "$7E1E04": "UNUSED_7E1E04", + "$7E1E05": "UNUSED_7E1E05", + "$7E1E06": "UNUSED_7E1E06", + "$7E1E07": "UNUSED_7E1E07", + "$7E1E08": "SCENEOAMXL", + "$7E1E09": "SCENEOAMXH", + "$7E1E0A": "SCENEFRAME", + "$7E1E0B": "UNUSED_7E1E0B", + "$7E1E0C": "SCENESNAPTL", + "$7E1E0D": "SCENESNAPTH", + "$7E1E0E": "UNUSED_7E1E0E", + "$7E1E0F": "UNUSED_7E1E0F", + "$7E1E10": "SCSPRMODE", + "$7E1E18": "SCSPRID", + "$7E1E20": "SCSPRSTEP", + "$7E1E28": "SCSPRSUBX", + "$7E1E30": "SCSPRXL", + "$7E1E38": "SCSPRXH", + "$7E1E40": "SCSPRSUBY", + "$7E1E48": "SCSPRYL", + "$7E1E50": "SCSPRYH", + "$7E1E58": "SCSPRVX", + "$7E1E60": "SCSPRVY", + "$7E1E68": "UNUSED_7E1E68", + "$7E1E70": "UNUSED_7E1E70", + "$7E1F00": "POLYWAIT", + "$7E1F01": "POLYOPAC", + "$7E1F02": "POLYZOOM", + "$7E1F03": "POLYSHAPE", + "$7E1F04": "POLYROTX", + "$7E1F05": "POLYROTY", + "$7E1F06": "POLYOFFH", + "$7E1F07": "POLYOFFV", + "$7E1F08": "POLYSIZEL", + "$7E1F09": "POLYSIZEH", + "$7E1F0A": "POLYSTACKL", + "$7E1F0B": "POLYSTACKH", + "$7E1F0C": "POLYSPRUP", + "$7E1F0D": "POLYSTACKBOT", + "$7E1F3E": "POLYSTACKTOP", + "$7E1F3F": "POLYVERTS", + "$7E1F40": "POLYFACES", + "$7E1F41": "POLYPTRVERTL", + "$7E1F42": "POLYPTRVERTH", + "$7E1F43": "POLYPTRFACEL", + "$7E1F44": "POLYPTRFACEH", + "$7E1F45": "POLYSCRAP45", + "$7E1F46": "POLYSCRAP46", + "$7E1F47": "POLYSCRAP47", + "$7E1F48": "POLYSCRAP48", + "$7E1F49": "POLYSCRAP49", + "$7E1F4A": "POLYSCRAP4A", + "$7E1F4B": "POLYSCRAP4B", + "$7E1F4C": "POLYSCRAP4C", + "$7E1F4D": "POLYSCRAP4D", + "$7E1F4E": "POLYSCRAP4E", + "$7E1F4F": "POLYSCRAP4F", + "$7E1F50": "POLYSCRAP50", + "$7E1F51": "POLYSCRAP51", + "$7E1F52": "POLYSCRAP52", + "$7E1F53": "POLYSCRAP53", + "$7E1F54": "POLYSCRAP54", + "$7E1F55": "POLYSCRAP55", + "$7E1F56": "POLYSCRAP56", + "$7E1F57": "POLYSCRAP57", + "$7E1F58": "POLYSCRAP58", + "$7E1F59": "POLYSCRAP59", + "$7E1F5A": "POLYSCRAP5A", + "$7E1F5B": "POLYSCRAP5B", + "$7E1F5C": "POLYSCRAP5C", + "$7E1F5D": "POLYSCRAP5D", + "$7E1F5E": "POLYSCRAP5E", + "$7E1F5F": "POLYSCRAP5F", + "$7E1F60": "UNKNOWN_7E1F60", + "$7E1F88": "UNKNOWN_7E1F88", + "$7E1FB0": "UNKNOWN_7E1FB0", + "$7E1FB1": "UNKNOWN_7E1FB1", + "$7E1FB2": "UNKNOWN_7E1FB2", + "$7E1FB3": "UNKNOWN_7E1FB3", + "$7E1FB4": "UNUSED_7E1FB4", + "$7E1FB5": "UNKNOWN_7E1FB5", + "$7E1FB6": "UNKNOWN_7E1FB6", + "$7E1FB7": "UNKNOWN_7E1FB7", + "$7E1FB8": "UNKNOWN_7E1FB8", + "$7E1FB9": "UNKNOWN_7E1FB9", + "$7E1FBA": "UNKNOWN_7E1FBA", + "$7E1FBB": "UNUSED_7E1FBB", + "$7E1FBC": "UNKNOWN_7E1FBC", + "$7E1FBD": "UNUSED_7E1FBD", + "$7E1FBE": "UNUSED_7E1FBF", + "$7E1FC0": "UNKNOWN_7E1FC0", + "$7E1FC1": "UNKNOWN_7E1FC1", + "$7E1FC2": "UNKNOWN_7E1FC2", + "$7E1FC3": "UNKNOWN_7E1FC3", + "$7E1FC4": "UNKNOWN_7E1FC4", + "$7E1FC5": "UNKNOWN_7E1FC5", + "$7E1FC6": "UNKNOWN_7E1FC6", + "$7E1FC7": "UNKNOWN_7E1FC7", + "$7E1FE0": "UNKNOWN_7E1FE0", + "$7E1FE1": "UNKNOWN_7E1FE1", + "$7E1FE2": "UNKNOWN_7E1FE2", + "$7E1FE3": "UNKNOWN_7E1FE3", + "$7E1FE4": "UNKNOWN_7E1FE4", + "$7E1FE5": "UNKNOWN_7E1FE5", + "$7E1FE6": "UNKNOWN_7E1FE6", + "$7E1FE7": "UNKNOWN_7E1FE7", + "$7E1FE8": "UNKNOWN_7E1FE8", + "$7E1FE9": "UNKNOWN_7E1FE9", + "$7E1FEA": "UNKNOWN_7E1FEA", + "$7E1FEB": "UNKNOWN_7E1FEB", + "$7E1FEC": "UNKNOWN_7E1FEC", + "$7E1FED": "UNKNOWN_7E1FED", + "$7E1FEE": "UNKNOWN_7E1FEE", + "$7E1FEF": "UNKNOWN_7E1FEF", + "$7E1FF0": "UNKNOWN_7E1FF0", + "$7E1FF1": "UNKNOWN_7E1FF1", + "$7E1FF2": "UNKNOWN_7E1FF2", + "$7E1FF3": "UNUSED_7E1FF3", + "$7E1FF4": "UNUSED_7E1FF4", + "$7E1FF5": "UNUSED_7E1FF5", + "$7E1FF6": "UNUSED_7E1FF6", + "$7E1FF7": "UNUSED_7E1FF7", + "$7E1FF8": "UNUSED_7E1FF8", + "$7E1FF9": "UNUSED_7E1FF9", + "$7E1FFA": "UNKNOWN_7E1FFA", + "$7E1FFB": "UNKNOWN_7E1FFB", + "$7E1FFC": "UNUSED_7E1FFC", + "$7E1FFD": "UNUSED_7E1FFD", + "$7E1FFE": "UNUSED_7E1FFE", + "$7E1FFF": "UNUSED_7E1FFF", + "$7E2000": "TILEMAPA", + "$7E4000": "TILEMAPB", + "$7E6000": "DECOMP", + "$7E9000": "GFX_SWORD", + "$7E9300": "GFX_SHIELD", + "$7E9480": "GFX_ROD", + "$7E9640": "GFX_HAMMER", + "$7E9800": "GFX_BOW", + "$7E98C0": "GFX_SHOVEL", + "$7E99C0": "GFX_ZZZ", + "$7E9A20": "GFX_QUAVER", + "$7E9A80": "GFX_POWDER", + "$7E9AC0": "GFX_HOOK", + "$7E9BC0": "GFX_NET", + "$7E9F40": "GFX_CANE", + "$7EA100": "GFX_BOOK", + "$7EA180": "GFX_NULL", + "$7EA480": "GFX_BLOCK", + "$7EA680": "GFX_TILEF1", + "$7EAA80": "GFX_TILEF2", + "$7EAE80": "GFX_TILEF3", + "$7EB280": "GFX_RUPEES", + "$7EB340": "GFX_PEGS", + "$7EB540": "GFX_DUCK", + "$7EB600": "GFX_CHEST", + "$7EB940": "GFX_FOLLOWER", + "$7EBD40": "GFX_ITEMGET", + "$7EBDC0": "GFX_STARS", + "$7EBE00": "UNUSED_7EBE00", + "$7EC000": "WARPTO", + "$7EC001": "STAIR0TO", + "$7EC002": "STAIR1TO", + "$7EC003": "STAIR2TO", + "$7EC004": "STAIR3TO", + "$7EC005": "RMFADE", + "$7EC006": "RMFADE2", + "$7EC007": "FADETIME", + "$7EC008": "FADETIMEH", + "$7EC009": "RMFADEDIR", + "$7EC00A": "RMFADEDIRH", + "$7EC00B": "FADETGT", + "$7EC00C": "FADETGTH", + "$7EC00D": "BGANMTIME", + "$7EC00E": "BGANMTIMEH", + "$7EC00F": "BGRUPSTEP", + "$7EC010": "BGRUPSTEPH", + "$7EC011": "MOSAICLEVEL", + "$7EC012": "MOSAICLEVELH", + "$7EC013": "RUPTIMER", + "$7EC014": "RUPTIMERH", + "$7EC015": "OBJRUPSTEP", + "$7EC016": "OBJRUPSTEPH", + "$7EC017": "DARKNESS", + "$7EC018": "DARKNESSH", + "$7EC019": "AGAFADETIME", + "$7EC01F": "AGAFADEDIR", + "$7EC025": "UNUSED_7EC025", + "$7EC100": "SPO_OWSCR2L", + "$7EC101": "SPO_OWSCR2H", + "$7EC102": "SPO_TMQ", + "$7EC103": "SPO_TSQ", + "$7EC104": "SPO_BG2VERTL", + "$7EC105": "SPO_BG2VERTH", + "$7EC106": "SPO_BG2HORZL", + "$7EC107": "SPO_BG2HORZH", + "$7EC108": "SPO_POSYL", + "$7EC109": "SPO_POSYH", + "$7EC10A": "SPO_POSXL", + "$7EC10B": "SPO_POSXH", + "$7EC10C": "SPO_OWSCRL", + "$7EC10D": "SPO_OWSCRH", + "$7EC10E": "SPO_OWTMAPIL", + "$7EC10F": "SPO_OWTMAPIH", + "$7EC110": "SPO_SCROLLATNL", + "$7EC111": "SPO_SCROLLATNH", + "$7EC112": "SPO_SCROLLATWL", + "$7EC113": "SPO_SCROLLATWH", + "$7EC114": "SPO_SCROLLANL", + "$7EC115": "SPO_SCROLLANH", + "$7EC116": "SPO_SCROLLBNL", + "$7EC117": "SPO_SCROLLBNH", + "$7EC118": "SPO_SCROLLASL", + "$7EC119": "SPO_SCROLLASH", + "$7EC11A": "SPO_SCROLLBSL", + "$7EC11B": "SPO_SCROLLBSH", + "$7EC11C": "SPO_OWTARGNL", + "$7EC11D": "SPO_OWTARGNH", + "$7EC11E": "SPO_OWTARGSL", + "$7EC11F": "SPO_OWTARGSH", + "$7EC120": "SPO_OWTARGWL", + "$7EC121": "SPO_OWTARGWH", + "$7EC122": "SPO_OWTARGEL", + "$7EC123": "SPO_OWTARGEH", + "$7EC124": "SPO_MAINGFX", + "$7EC125": "SPO_BGSET1", + "$7EC126": "SPO_BGSET2", + "$7EC127": "SPO_SPRSET1", + "$7EC128": "UNUSED_7EC128", + "$7EC129": "UNUSED_7EC129", + "$7EC12A": "SPO_SCRMODYAL", + "$7EC12B": "SPO_SCRMODYAH", + "$7EC12C": "SPO_SCRMODYBL", + "$7EC12D": "SPO_SCRMODYBH", + "$7EC12E": "SPO_SCRMODXAL", + "$7EC12F": "SPO_SCRMODXAH", + "$7EC130": "SPO_SCRMODXBL", + "$7EC131": "SPO_SCRMODXBH", + "$7EC132": "UNUSED_7EC132", + "$7EC133": "UNUSED_7EC133", + "$7EC134": "UNUSED_7EC134", + "$7EC135": "UNUSED_7EC135", + "$7EC136": "UNUSED_7EC136", + "$7EC137": "UNUSED_7EC137", + "$7EC138": "UNUSED_7EC138", + "$7EC139": "UNUSED_7EC139", + "$7EC13A": "UNUSED_7EC13A", + "$7EC13B": "UNUSED_7EC13B", + "$7EC13C": "UNUSED_7EC13C", + "$7EC13D": "UNUSED_7EC13D", + "$7EC13E": "UNUSED_7EC13E", + "$7EC13F": "UNUSED_7EC13F", + "$7EC140": "EN_OWSCR2L", + "$7EC141": "EN_OWSCR2H", + "$7EC142": "EN_TMQ", + "$7EC143": "EN_TSQ", + "$7EC144": "EN_BG2VERTL", + "$7EC145": "EN_BG2VERTH", + "$7EC146": "EN_BG2HORZL", + "$7EC147": "EN_BG2HORZH", + "$7EC148": "EN_POSYL", + "$7EC149": "EN_POSYH", + "$7EC14A": "EN_POSXL", + "$7EC14B": "EN_POSXH", + "$7EC14C": "EN_OWSCR", + "$7EC14D": "EN_OWSCRH", + "$7EC14E": "EN_OWTMAPIL", + "$7EC14F": "EN_OWTMAPIH", + "$7EC150": "EN_SCROLLATNL", + "$7EC151": "EN_SCROLLATNH", + "$7EC152": "EN_SCROLLATWL", + "$7EC153": "EN_SCROLLATWH", + "$7EC154": "EN_SCROLLANL", + "$7EC155": "EN_SCROLLANH", + "$7EC156": "EN_SCROLLBNL", + "$7EC157": "EN_SCROLLBNH", + "$7EC158": "EN_SCROLLASL", + "$7EC159": "EN_SCROLLASH", + "$7EC15A": "EN_SCROLLBSL", + "$7EC15B": "EN_SCROLLBSH", + "$7EC15C": "EN_OWTARGNL", + "$7EC15D": "EN_OWTARGNH", + "$7EC15E": "EN_OWTARGSL", + "$7EC15F": "EN_OWTARGSH", + "$7EC160": "EN_OWTARGWL", + "$7EC161": "EN_OWTARGWH", + "$7EC162": "EN_OWTARGEL", + "$7EC163": "EN_OWTARGEH", + "$7EC164": "EN_MAINGFX", + "$7EC165": "EN_BGSET1", + "$7EC166": "EN_BGSET2", + "$7EC167": "EN_SPRSET1", + "$7EC168": "UNUSED_7EC168", + "$7EC169": "UNUSED_7EC169", + "$7EC16A": "EN_SCRMODYAL", + "$7EC16B": "EN_SCRMODYAH", + "$7EC16C": "EN_SCRMODYBL", + "$7EC16D": "EN_SCRMODYBH", + "$7EC16E": "EN_SCRMODXAL", + "$7EC16F": "EN_SCRMODXAH", + "$7EC170": "EN_SCRMODXBL", + "$7EC171": "EN_SCRMODXBH", + "$7EC172": "OWCALC84L", + "$7EC173": "OWCALC84H", + "$7EC174": "OWCALC86L", + "$7EC175": "OWCALC86H", + "$7EC176": "OWCALC88L", + "$7EC177": "OWCALC88H", + "$7EC178": "UNUSED_7EC178", + "$7EC179": "UNUSED_7EC179", + "$7EC17A": "UNUSED_7EC17A", + "$7EC17B": "UNUSED_7EC17B", + "$7EC17C": "UNUSED_7EC17C", + "$7EC17D": "UNUSED_7EC17D", + "$7EC17E": "UNUSED_7EC17E", + "$7EC17F": "UNUSED_7EC17F", + "$7EC180": "CC_BG2HORZL", + "$7EC181": "CC_BG2HORZH", + "$7EC182": "CC_BG2VERTL", + "$7EC183": "CC_BG2VERTH", + "$7EC184": "CC_POSYL", + "$7EC185": "CC_POSYH", + "$7EC186": "CC_POSXL", + "$7EC187": "CC_POSXH", + "$7EC188": "CC_SCROLLANL", + "$7EC189": "CC_SCROLLANH", + "$7EC18A": "CC_SCROLLASL", + "$7EC18B": "CC_SCROLLASH", + "$7EC18C": "CC_SCROLLAWL", + "$7EC18D": "CC_SCROLLAWH", + "$7EC18E": "CC_SCROLLAEL", + "$7EC18F": "CC_SCROLLAEH", + "$7EC190": "CC_OWTARGNL", + "$7EC191": "CC_OWTARGNH", + "$7EC192": "CC_OWTARGSL", + "$7EC193": "CC_OWTARGSH", + "$7EC194": "CC_OWTARGWL", + "$7EC195": "CC_OWTARGWH", + "$7EC196": "CC_OWTARGEL", + "$7EC197": "CC_OWTARGEH", + "$7EC198": "CC_SCROLLATNL", + "$7EC199": "CC_SCROLLATNH", + "$7EC19A": "CC_SCROLLATWL", + "$7EC19B": "CC_SCROLLATWH", + "$7EC19C": "CC_QUADH", + "$7EC19D": "CC_QUADV", + "$7EC19E": "CC_QUADLR", + "$7EC19F": "CC_QUADTB", + "$7EC1A0": "UNUSED_7EC1A0", + "$7EC1A1": "UNUSED_7EC1A1", + "$7EC1A2": "UNUSED_7EC1A2", + "$7EC1A3": "UNUSED_7EC1A3", + "$7EC1A4": "UNUSED_7EC1A4", + "$7EC1A5": "UNUSED_7EC1A5", + "$7EC1A6": "CC_DIR", + "$7EC1A7": "CC_LAYER", + "$7EC1A8": "CC_DLAYER", + "$7EC1A9": "CC_DOORWAY", + "$7EC1AA": "CC_DNGFLOOR", + "$7EC1AB": "UNUSED_7EC1AB", + "$7EC200": "OMC_BG1HORZL", + "$7EC201": "OMC_BG1HORZH", + "$7EC202": "OMC_BG2HORZL", + "$7EC203": "OMC_BG2HORZH", + "$7EC204": "OMC_BG1VERTL", + "$7EC205": "OMC_BG1VERTH", + "$7EC206": "OMC_BG2VERTL", + "$7EC207": "OMC_BG2VERTH", + "$7EC208": "CACHE_BGACT", + "$7EC209": "UNUSED_7EC209", + "$7EC20A": "CACHE_AB6", + "$7EC20B": "CACHE_AB8", + "$7EC20C": "CACHE_AB7", + "$7EC20D": "UNUSED_7EC20D", + "$7EC20E": "UMC_BGSET1", + "$7EC20F": "UMC_SPRSET1", + "$7EC210": "UMC_BGSET2", + "$7EC211": "TMCACHE", + "$7EC212": "TSCACHE", + "$7EC213": "OWC_OWSCRL", + "$7EC214": "OWC_OWSCRH", + "$7EC215": "OWC_OWTMAPIL", + "$7EC216": "OWC_OWTMAPIH", + "$7EC217": "OWC_OWMAPDIYL", + "$7EC218": "OWC_OWMAPDIYH", + "$7EC219": "OWC_OWMAPDIXL", + "$7EC21A": "OWC_OWMAPDIXH", + "$7EC21B": "OWC_TRANDIRL", + "$7EC21C": "OWC_TRANDIRH", + "$7EC21D": "OWC_OWTDIRL", + "$7EC21E": "OWC_OWTDIRH", + "$7EC21F": "OWC_MAPPANVCTL", + "$7EC220": "OWC_MAPPANVCTH", + "$7EC221": "GOC_FADETIMEL", + "$7EC222": "GOC_FADETIMEH", + "$7EC223": "GOC_RMFADEDIRL", + "$7EC224": "GOC_RMFADEDIRH", + "$7EC225": "GOC_CGWSELQ", + "$7EC226": "GOC_CGADSUBQ", + "$7EC227": "GOC_SONG", + "$7EC228": "GOC_SFX1", + "$7EC229": "CACHE_HDMAENQ", + "$7EC22A": "UNUSED_7EC22A", + "$7EC2F8": "LASTBGSET0", + "$7EC2F9": "LASTBGSET1", + "$7EC2FA": "LASTBGSET2", + "$7EC2FB": "LASTBGSET3", + "$7EC2FC": "LASTSPRSET0", + "$7EC2FD": "LASTSPRSET1", + "$7EC2FE": "LASTSPRSET2", + "$7EC2FF": "LASTSPRSET3", + "$7EC300": "PALB_HUD0", + "$7EC308": "PALB_HUD1", + "$7EC310": "PALB_HUD2", + "$7EC318": "PALB_HUD3", + "$7EC320": "PALB_HUD4", + "$7EC328": "PALB_HUD5", + "$7EC330": "PALB_HUD6", + "$7EC338": "PALB_HUD7", + "$7EC340": "PALB_BG2A", + "$7EC350": "PALB_BG2B", + "$7EC360": "PALB_BG3A", + "$7EC370": "PALB_BG3B", + "$7EC380": "PALB_BG4A", + "$7EC390": "PALB_BG4B", + "$7EC3A0": "PALB_BG5A", + "$7EC3B0": "PALB_BG5B", + "$7EC3C0": "PALB_BG6A", + "$7EC3D0": "PALB_BG6B", + "$7EC3E0": "PALB_BG7A", + "$7EC3F0": "PALB_BG7B", + "$7EC400": "PALB_SPRA", + "$7EC410": "PALB_SPRB", + "$7EC420": "PALB_SPR1A", + "$7EC430": "PALB_SPR1B", + "$7EC440": "PALB_SPR2A", + "$7EC450": "PALB_SPR2B", + "$7EC460": "PALB_SPR3A", + "$7EC470": "PALB_SPR3B", + "$7EC480": "PALB_SPR4A", + "$7EC490": "PALB_SPR4B", + "$7EC4A0": "PALB_SPR5A", + "$7EC4B0": "PALB_SPR5B", + "$7EC4C0": "PALB_SPR6A", + "$7EC4D0": "PALB_SPR6B", + "$7EC4E0": "PALB_SPR7A", + "$7EC4F0": "PALB_SPR7B", + "$7EC500": "PAL_HUD0", + "$7EC508": "PAL_HUD1", + "$7EC510": "PAL_HUD2", + "$7EC518": "PAL_HUD3", + "$7EC520": "PAL_HUD4", + "$7EC528": "PAL_HUD5", + "$7EC530": "PAL_HUD6", + "$7EC538": "PAL_HUD7", + "$7EC540": "PAL_BG2A", + "$7EC550": "PAL_BG2B", + "$7EC560": "PAL_BG3A", + "$7EC570": "PAL_BG3B", + "$7EC580": "PAL_BG4A", + "$7EC590": "PAL_BG4B", + "$7EC5A0": "PAL_BG5A", + "$7EC5B0": "PAL_BG5B", + "$7EC5C0": "PAL_BG6A", + "$7EC5D0": "PAL_BG6B", + "$7EC5E0": "PAL_BG7A", + "$7EC5F0": "PAL_BG7B", + "$7EC600": "PAL_SPRA", + "$7EC610": "PAL_SPRB", + "$7EC620": "PAL_SPR1A", + "$7EC630": "PAL_SPR1B", + "$7EC640": "PAL_SPR2A", + "$7EC650": "PAL_SPR2B", + "$7EC660": "PAL_SPR3A", + "$7EC670": "PAL_SPR3B", + "$7EC680": "PAL_SPR4A", + "$7EC690": "PAL_SPR4B", + "$7EC6A0": "PAL_SPR5A", + "$7EC6B0": "PAL_SPR5B", + "$7EC6C0": "PAL_SPR6A", + "$7EC6D0": "PAL_SPR6B", + "$7EC6E0": "PAL_SPR7A", + "$7EC6F0": "PAL_SPR7B", + "$7EC700": "HUD", + "$7EC84A": "UNUSED_7EC84A", + "$7EC880": "WALLDRAW", + "$7EC900": "UNUSED_7EC900", + "$7EE800": "POLYDRAW", + "$7EF000": "RMFLG000", + "$7EF500": "UNUSED_7EF500", + "$7EF580": "POTLIFT", + "$7EF800": "M16CHTMAPX", + "$7EF940": "PUSHBLOCKS", + "$7EFA00": "M16CHTILES", + "$7EFB40": "TORCHES", + "$7EFCC0": "SHEETLISTA", + "$7EFD40": "SHEETLISTB", + "$7EFDC0": "UNUSED_7EFDC0", + "$7EFE00": "TILEATTR", + "$7F0000": "DECOMPA", + "$7F2000": "COLMAPA", + "$7F3000": "COLMAPB", + "$7F4000": "DECOMPB", + "$7F5000": "UNUSED_7F5000", + "$7F5800": "ANC_7F5800", + "$7F5801": "ANC_7F5801", + "$7F5802": "ANC_7F5802", + "$7F5803": "ANC_7F5803", + "$7F5804": "ANC_7F5804", + "$7F5805": "ANC_7F5805", + "$7F5806": "ANC_7F5806", + "$7F5807": "ANC_7F5807", + "$7F5808": "ANC_7F5808", + "$7F5809": "ANC_7F5809", + "$7F580A": "ANC_7F580A", + "$7F580B": "ANC_7F580B", + "$7F580C": "ANC_7F580C", + "$7F580D": "ANC_7F580D", + "$7F580E": "ANC_7F580E", + "$7F580F": "ANC_7F580F", + "$7F5810": "ANC_7F5810", + "$7F5811": "ANC_7F5811", + "$7F5812": "ANC_7F5812", + "$7F5813": "ANC_7F5813", + "$7F5814": "ANC_7F5814", + "$7F5815": "ANC_7F5815", + "$7F5816": "ANC_7F5816", + "$7F5817": "ANC_7F5817", + "$7F5818": "ANC_7F5818", + "$7F5819": "ANC_7F5819", + "$7F581E": "ANC_7F581E", + "$7F581F": "ANC_7F581F", + "$7F5820": "ANC_7F5820", + "$7F5824": "ANC_7F5824", + "$7F5826": "ANC_7F5826", + "$7F5827": "ANC_7F5827", + "$7F582E": "ANC_7F582E", + "$7F582F": "ANC_7F582F", + "$7F5830": "ANC_7F5830", + "$7F5836": "ANC_7F5836", + "$7F5837": "ANC_7F5837", + "$7F583C": "ANC_7F583C", + "$7F5848": "ANC_7F5848", + "$7F584F": "ANC_7F584F", + "$7F5854": "ANC_7F5854", + "$7F5860": "ANC_7F5860", + "$7F5864": "ANC_7F5864", + "$7F5867": "ANC_7F5867", + "$7F586C": "ANC_7F586C", + "$7F5878": "ANC_7F5878", + "$7F5879": "ANC_7F5879", + "$7F587A": "ANC_7F587A", + "$7F587F": "ANC_7F587F", + "$7F5886": "ANC_7F5886", + "$7F5892": "ANC_7F5892", + "$7F5897": "ANC_7F5897", + "$7F589E": "ANC_7F589E", + "$7F58A4": "ANC_7F58A4", + "$7F58AA": "ANC_7F58AA", + "$7F58AF": "ANC_7F58AF", + "$7F58B6": "ANC_7F58B6", + "$7F58B8": "ANC_7F58B8", + "$7F58E4": "ANC_7F58E4", + "$7F5900": "UNUSED_7F5900", + "$7F5924": "BOMBOS_7F5924", + "$7F5925": "BOMBOS_7F5925", + "$7F5926": "UNUSED_7F5926", + "$7F592C": "BOMBOS_7F592C", + "$7F592D": "BOMBOS_7F592D", + "$7F592E": "UNUSED_7F592E", + "$7F5934": "BOMBOS_7F5934", + "$7F5935": "BOMBOS_7F5935", + "$7F5945": "BOMBOS_7F5945", + "$7F5955": "BOMBOS_7F5955", + "$7F5975": "UNUSED_7F5975", + "$7F59D5": "BOMBOS_7F59D5", + "$7F59F5": "UNUSED_7F59F5", + "$7F5A55": "BOMBOS_7F5A55", + "$7F5A56": "BOMBOS_7F5A56", + "$7F5A57": "BOMBOS_7F5A57", + "$7F5A58": "UNUSED_7F5A58", + "$7F5B00": "TEXTDECOMP", + "$7F5F02": "UNUSED_7F5F02", + "$7F6000": "DMGTABLE", + "$7F7000": "IRISBUFFER", + "$7F71C0": "MSG0000", + "$7F71C2": "MSG0001", + "$7F71C4": "MSG0002", + "$7F71C6": "MSG0003", + "$7F71C8": "MSG0004", + "$7F71CA": "MSG0005", + "$7F71CC": "MSG0006", + "$7F71CE": "MSG0007", + "$7F71D0": "MSG0008", + "$7F71D2": "MSG0009", + "$7F71D4": "MSG000A", + "$7F71D6": "MSG000B", + "$7F71D8": "MSG000C", + "$7F71DA": "MSG000D", + "$7F71DC": "MSG000E", + "$7F71DE": "MSG000F", + "$7F71E0": "MSG0010", + "$7F71E2": "MSG0011", + "$7F71E4": "MSG0012", + "$7F71E6": "MSG0013", + "$7F71E8": "MSG0014", + "$7F71EA": "MSG0015", + "$7F71EC": "MSG0016", + "$7F71EE": "MSG0017", + "$7F71F0": "MSG0018", + "$7F71F2": "MSG0019", + "$7F71F4": "MSG001A", + "$7F71F6": "MSG001B", + "$7F71F8": "MSG001C", + "$7F71FA": "MSG001D", + "$7F71FC": "MSG001E", + "$7F71FE": "MSG001F", + "$7F7200": "MSG0020", + "$7F7202": "MSG0021", + "$7F7204": "MSG0022", + "$7F7206": "MSG0023", + "$7F7208": "MSG0024", + "$7F720A": "MSG0025", + "$7F720C": "MSG0026", + "$7F720E": "MSG0027", + "$7F7210": "MSG0028", + "$7F7212": "MSG0029", + "$7F7214": "MSG002A", + "$7F7216": "MSG002B", + "$7F7218": "MSG002C", + "$7F721A": "MSG002D", + "$7F721C": "MSG002E", + "$7F721E": "MSG002F", + "$7F7220": "MSG0030", + "$7F7222": "MSG0031", + "$7F7224": "MSG0032", + "$7F7226": "MSG0033", + "$7F7228": "MSG0034", + "$7F722A": "MSG0035", + "$7F722C": "MSG0036", + "$7F722E": "MSG0037", + "$7F7230": "MSG0038", + "$7F7232": "MSG0039", + "$7F7234": "MSG003A", + "$7F7236": "MSG003B", + "$7F7238": "MSG003C", + "$7F723A": "MSG003D", + "$7F723C": "MSG003E", + "$7F723E": "MSG003F", + "$7F7240": "MSG0040", + "$7F7242": "MSG0041", + "$7F7244": "MSG0042", + "$7F7246": "MSG0043", + "$7F7248": "MSG0044", + "$7F724A": "MSG0045", + "$7F724C": "MSG0046", + "$7F724E": "MSG0047", + "$7F7250": "MSG0048", + "$7F7252": "MSG0049", + "$7F7254": "MSG004A", + "$7F7256": "MSG004B", + "$7F7258": "MSG004C", + "$7F725A": "MSG004D", + "$7F725C": "MSG004E", + "$7F725E": "MSG004F", + "$7F7260": "MSG0050", + "$7F7262": "MSG0051", + "$7F7264": "MSG0052", + "$7F7266": "MSG0053", + "$7F7268": "MSG0054", + "$7F726A": "MSG0055", + "$7F726C": "MSG0056", + "$7F726E": "MSG0057", + "$7F7270": "MSG0058", + "$7F7272": "MSG0059", + "$7F7274": "MSG005A", + "$7F7276": "MSG005B", + "$7F7278": "MSG005C", + "$7F727A": "MSG005D", + "$7F727C": "MSG005E", + "$7F727E": "MSG005F", + "$7F7280": "MSG0060", + "$7F7282": "MSG0061", + "$7F7284": "MSG0062", + "$7F7286": "MSG0063", + "$7F7288": "MSG0064", + "$7F728A": "MSG0065", + "$7F728C": "MSG0066", + "$7F728E": "MSG0067", + "$7F7290": "MSG0068", + "$7F7292": "MSG0069", + "$7F7294": "MSG006A", + "$7F7296": "MSG006B", + "$7F7298": "MSG006C", + "$7F729A": "MSG006D", + "$7F729C": "MSG006E", + "$7F729E": "MSG006F", + "$7F72A0": "MSG0070", + "$7F72A2": "MSG0071", + "$7F72A4": "MSG0072", + "$7F72A6": "MSG0073", + "$7F72A8": "MSG0074", + "$7F72AA": "MSG0075", + "$7F72AC": "MSG0076", + "$7F72AE": "MSG0077", + "$7F72B0": "MSG0078", + "$7F72B2": "MSG0079", + "$7F72B4": "MSG007A", + "$7F72B6": "MSG007B", + "$7F72B8": "MSG007C", + "$7F72BA": "MSG007D", + "$7F72BC": "MSG007E", + "$7F72BE": "MSG007F", + "$7F72C0": "MSG0080", + "$7F72C2": "MSG0081", + "$7F72C4": "MSG0082", + "$7F72C6": "MSG0083", + "$7F72C8": "MSG0084", + "$7F72CA": "MSG0085", + "$7F72CC": "MSG0086", + "$7F72CE": "MSG0087", + "$7F72D0": "MSG0088", + "$7F72D2": "MSG0089", + "$7F72D4": "MSG008A", + "$7F72D6": "MSG008B", + "$7F72D8": "MSG008C", + "$7F72DA": "MSG008D", + "$7F72DC": "MSG008E", + "$7F72DE": "MSG008F", + "$7F72E0": "MSG0090", + "$7F72E2": "MSG0091", + "$7F72E4": "MSG0092", + "$7F72E6": "MSG0093", + "$7F72E8": "MSG0094", + "$7F72EA": "MSG0095", + "$7F72EC": "MSG0096", + "$7F72EE": "MSG0097", + "$7F72F0": "MSG0098", + "$7F72F2": "MSG0099", + "$7F72F4": "MSG009A", + "$7F72F6": "MSG009B", + "$7F72F8": "MSG009C", + "$7F72FA": "MSG009D", + "$7F72FC": "MSG009E", + "$7F72FE": "MSG009F", + "$7F7300": "MSG00A0", + "$7F7302": "MSG00A1", + "$7F7304": "MSG00A2", + "$7F7306": "MSG00A3", + "$7F7308": "MSG00A4", + "$7F730A": "MSG00A5", + "$7F730C": "MSG00A6", + "$7F730E": "MSG00A7", + "$7F7310": "MSG00A8", + "$7F7312": "MSG00A9", + "$7F7314": "MSG00AA", + "$7F7316": "MSG00AB", + "$7F7318": "MSG00AC", + "$7F731A": "MSG00AD", + "$7F731C": "MSG00AE", + "$7F731E": "MSG00AF", + "$7F7320": "MSG00B0", + "$7F7322": "MSG00B1", + "$7F7324": "MSG00B2", + "$7F7326": "MSG00B3", + "$7F7328": "MSG00B4", + "$7F732A": "MSG00B5", + "$7F732C": "MSG00B6", + "$7F732E": "MSG00B7", + "$7F7330": "MSG00B8", + "$7F7332": "MSG00B9", + "$7F7334": "MSG00BA", + "$7F7336": "MSG00BB", + "$7F7338": "MSG00BC", + "$7F733A": "MSG00BD", + "$7F733C": "MSG00BE", + "$7F733E": "MSG00BF", + "$7F7340": "MSG00C0", + "$7F7342": "MSG00C1", + "$7F7344": "MSG00C2", + "$7F7346": "MSG00C3", + "$7F7348": "MSG00C4", + "$7F734A": "MSG00C5", + "$7F734C": "MSG00C6", + "$7F734E": "MSG00C7", + "$7F7350": "MSG00C8", + "$7F7352": "MSG00C9", + "$7F7354": "MSG00CA", + "$7F7356": "MSG00CB", + "$7F7358": "MSG00CC", + "$7F735A": "MSG00CD", + "$7F735C": "MSG00CE", + "$7F735E": "MSG00CF", + "$7F7360": "MSG00D0", + "$7F7362": "MSG00D1", + "$7F7364": "MSG00D2", + "$7F7366": "MSG00D3", + "$7F7368": "MSG00D4", + "$7F736A": "MSG00D5", + "$7F736C": "MSG00D6", + "$7F736E": "MSG00D7", + "$7F7370": "MSG00D8", + "$7F7372": "MSG00D9", + "$7F7374": "MSG00DA", + "$7F7376": "MSG00DB", + "$7F7378": "MSG00DC", + "$7F737A": "MSG00DD", + "$7F737C": "MSG00DE", + "$7F737E": "MSG00DF", + "$7F7380": "MSG00E0", + "$7F7382": "MSG00E1", + "$7F7384": "MSG00E2", + "$7F7386": "MSG00E3", + "$7F7388": "MSG00E4", + "$7F738A": "MSG00E5", + "$7F738C": "MSG00E6", + "$7F738E": "MSG00E7", + "$7F7390": "MSG00E8", + "$7F7392": "MSG00E9", + "$7F7394": "MSG00EA", + "$7F7396": "MSG00EB", + "$7F7398": "MSG00EC", + "$7F739A": "MSG00ED", + "$7F739C": "MSG00EE", + "$7F739E": "MSG00EF", + "$7F73A0": "MSG00F0", + "$7F73A2": "MSG00F1", + "$7F73A4": "MSG00F2", + "$7F73A6": "MSG00F3", + "$7F73A8": "MSG00F4", + "$7F73AA": "MSG00F5", + "$7F73AC": "MSG00F6", + "$7F73AE": "MSG00F7", + "$7F73B0": "MSG00F8", + "$7F73B2": "MSG00F9", + "$7F73B4": "MSG00FA", + "$7F73B6": "MSG00FB", + "$7F73B8": "MSG00FC", + "$7F73BA": "MSG00FD", + "$7F73BC": "MSG00FE", + "$7F73BE": "MSG00FF", + "$7F73C0": "MSG0100", + "$7F73C2": "MSG0101", + "$7F73C4": "MSG0102", + "$7F73C6": "MSG0103", + "$7F73C8": "MSG0104", + "$7F73CA": "MSG0105", + "$7F73CC": "MSG0106", + "$7F73CE": "MSG0107", + "$7F73D0": "MSG0108", + "$7F73D2": "MSG0109", + "$7F73D4": "MSG010A", + "$7F73D6": "MSG010B", + "$7F73D8": "MSG010C", + "$7F73DA": "MSG010D", + "$7F73DC": "MSG010E", + "$7F73DE": "MSG010F", + "$7F73E0": "MSG0110", + "$7F73E2": "MSG0111", + "$7F73E4": "MSG0112", + "$7F73E6": "MSG0113", + "$7F73E8": "MSG0114", + "$7F73EA": "MSG0115", + "$7F73EC": "MSG0116", + "$7F73EE": "MSG0117", + "$7F73F0": "MSG0118", + "$7F73F2": "MSG0119", + "$7F73F4": "MSG011A", + "$7F73F6": "MSG011B", + "$7F73F8": "MSG011C", + "$7F73FA": "MSG011D", + "$7F73FC": "MSG011E", + "$7F73FE": "MSG011F", + "$7F7400": "MSG0120", + "$7F7402": "MSG0121", + "$7F7404": "MSG0122", + "$7F7406": "MSG0123", + "$7F7408": "MSG0124", + "$7F740A": "MSG0125", + "$7F740C": "MSG0126", + "$7F740E": "MSG0127", + "$7F7410": "MSG0128", + "$7F7412": "MSG0129", + "$7F7414": "MSG012A", + "$7F7416": "MSG012B", + "$7F7418": "MSG012C", + "$7F741A": "MSG012D", + "$7F741C": "MSG012E", + "$7F741E": "MSG012F", + "$7F7420": "MSG0130", + "$7F7422": "MSG0131", + "$7F7424": "MSG0132", + "$7F7426": "MSG0133", + "$7F7428": "MSG0134", + "$7F742A": "MSG0135", + "$7F742C": "MSG0136", + "$7F742E": "MSG0137", + "$7F7430": "MSG0138", + "$7F7432": "MSG0139", + "$7F7434": "MSG013A", + "$7F7436": "MSG013B", + "$7F7438": "MSG013C", + "$7F743A": "MSG013D", + "$7F743C": "MSG013E", + "$7F743E": "MSG013F", + "$7F7440": "MSG0140", + "$7F7442": "MSG0141", + "$7F7444": "MSG0142", + "$7F7446": "MSG0143", + "$7F7448": "MSG0144", + "$7F744A": "MSG0145", + "$7F744C": "MSG0146", + "$7F744E": "MSG0147", + "$7F7450": "MSG0148", + "$7F7452": "MSG0149", + "$7F7454": "MSG014A", + "$7F7456": "MSG014B", + "$7F7458": "MSG014C", + "$7F745A": "MSG014D", + "$7F745C": "MSG014E", + "$7F745E": "MSG014F", + "$7F7460": "MSG0150", + "$7F7462": "MSG0151", + "$7F7464": "MSG0152", + "$7F7466": "MSG0153", + "$7F7468": "MSG0154", + "$7F746A": "MSG0155", + "$7F746C": "MSG0156", + "$7F746E": "MSG0157", + "$7F7470": "MSG0158", + "$7F7472": "MSG0159", + "$7F7474": "MSG015A", + "$7F7476": "MSG015B", + "$7F7478": "MSG015C", + "$7F747A": "MSG015D", + "$7F747C": "MSG015E", + "$7F747E": "MSG015F", + "$7F7480": "MSG0160", + "$7F7482": "MSG0161", + "$7F7484": "MSG0162", + "$7F7486": "MSG0163", + "$7F7488": "MSG0164", + "$7F748A": "MSG0165", + "$7F748C": "MSG0166", + "$7F748E": "MSG0167", + "$7F7490": "MSG0168", + "$7F7492": "MSG0169", + "$7F7494": "MSG016A", + "$7F7496": "MSG016B", + "$7F7498": "MSG016C", + "$7F749A": "MSG016D", + "$7F749C": "MSG016E", + "$7F749E": "MSG016F", + "$7F74A0": "MSG0170", + "$7F74A2": "MSG0171", + "$7F74A4": "MSG0172", + "$7F74A6": "MSG0173", + "$7F74A8": "MSG0174", + "$7F74AA": "MSG0175", + "$7F74AC": "MSG0176", + "$7F74AE": "MSG0177", + "$7F74B0": "MSG0178", + "$7F74B2": "MSG0179", + "$7F74B4": "MSG017A", + "$7F74B6": "MSG017B", + "$7F74B8": "MSG017C", + "$7F74BA": "MSG017D", + "$7F74BC": "MSG017E", + "$7F74BE": "MSG017F", + "$7F74C0": "MSG0180", + "$7F74C2": "MSG0181", + "$7F74C4": "MSG0182", + "$7F74C6": "MSG0183", + "$7F74C8": "MSG0184", + "$7F74CA": "MSG0185", + "$7F74CC": "MSG0186", + "$7F74CE": "MSG0187", + "$7F74D0": "MSG0188", + "$7F74D2": "MSG0189", + "$7F74D4": "MSG018A", + "$7F74D6": "MSG018B", + "$7F74D8": "UNUSED_7F74D8", + "$7FDD80": "PALSAVE", + "$7FDE00": "AUXPALSAVE", + "$7FDF80": "UWDEATH", + "$7FEF80": "OWDEATH", + "$7FF180": "UNUSED_7FF180", + "$7FF800": "GRN00_ID", + "$7FF801": "GRN01_ID", + "$7FF802": "GRN02_ID", + "$7FF803": "GRN03_ID", + "$7FF804": "GRN04_ID", + "$7FF805": "GRN05_ID", + "$7FF806": "GRN06_ID", + "$7FF807": "GRN07_ID", + "$7FF808": "GRN08_ID", + "$7FF809": "GRN09_ID", + "$7FF80A": "GRN0A_ID", + "$7FF80B": "GRN0B_ID", + "$7FF80C": "GRN0C_ID", + "$7FF80D": "GRN0D_ID", + "$7FF80E": "GRN0E_ID", + "$7FF80F": "GRN0F_ID", + "$7FF810": "GRN10_ID", + "$7FF811": "GRN11_ID", + "$7FF812": "GRN12_ID", + "$7FF813": "GRN13_ID", + "$7FF814": "GRN14_ID", + "$7FF815": "GRN15_ID", + "$7FF816": "GRN16_ID", + "$7FF817": "GRN17_ID", + "$7FF818": "GRN18_ID", + "$7FF819": "GRN19_ID", + "$7FF81A": "GRN1A_ID", + "$7FF81B": "GRN1B_ID", + "$7FF81C": "GRN1C_ID", + "$7FF81D": "GRN1D_ID", + "$7FF81E": "GRN00_YL", + "$7FF81F": "GRN01_YL", + "$7FF820": "GRN02_YL", + "$7FF821": "GRN03_YL", + "$7FF822": "GRN04_YL", + "$7FF823": "GRN05_YL", + "$7FF824": "GRN06_YL", + "$7FF825": "GRN07_YL", + "$7FF826": "GRN08_YL", + "$7FF827": "GRN09_YL", + "$7FF828": "GRN0A_YL", + "$7FF829": "GRN0B_YL", + "$7FF82A": "GRN0C_YL", + "$7FF82B": "GRN0D_YL", + "$7FF82C": "GRN0E_YL", + "$7FF82D": "GRN0F_YL", + "$7FF82E": "GRN10_YL", + "$7FF82F": "GRN11_YL", + "$7FF830": "GRN12_YL", + "$7FF831": "GRN13_YL", + "$7FF832": "GRN14_YL", + "$7FF833": "GRN15_YL", + "$7FF834": "GRN16_YL", + "$7FF835": "GRN17_YL", + "$7FF836": "GRN18_YL", + "$7FF837": "GRN19_YL", + "$7FF838": "GRN1A_YL", + "$7FF839": "GRN1B_YL", + "$7FF83A": "GRN1C_YL", + "$7FF83B": "GRN1D_YL", + "$7FF83C": "GRN00_XL", + "$7FF83D": "GRN01_XL", + "$7FF83E": "GRN02_XL", + "$7FF83F": "GRN03_XL", + "$7FF840": "GRN04_XL", + "$7FF841": "GRN05_XL", + "$7FF842": "GRN06_XL", + "$7FF843": "GRN07_XL", + "$7FF844": "GRN08_XL", + "$7FF845": "GRN09_XL", + "$7FF846": "GRN0A_XL", + "$7FF847": "GRN0B_XL", + "$7FF848": "GRN0C_XL", + "$7FF849": "GRN0D_XL", + "$7FF84A": "GRN0E_XL", + "$7FF84B": "GRN0F_XL", + "$7FF84C": "GRN10_XL", + "$7FF84D": "GRN11_XL", + "$7FF84E": "GRN12_XL", + "$7FF84F": "GRN13_XL", + "$7FF850": "GRN14_XL", + "$7FF851": "GRN15_XL", + "$7FF852": "GRN16_XL", + "$7FF853": "GRN17_XL", + "$7FF854": "GRN18_XL", + "$7FF855": "GRN19_XL", + "$7FF856": "GRN1A_XL", + "$7FF857": "GRN1B_XL", + "$7FF858": "GRN1C_XL", + "$7FF859": "GRN1D_XL", + "$7FF85A": "GRN00_YH", + "$7FF85B": "GRN01_YH", + "$7FF85C": "GRN02_YH", + "$7FF85D": "GRN03_YH", + "$7FF85E": "GRN04_YH", + "$7FF85F": "GRN05_YH", + "$7FF860": "GRN06_YH", + "$7FF861": "GRN07_YH", + "$7FF862": "GRN08_YH", + "$7FF863": "GRN09_YH", + "$7FF864": "GRN0A_YH", + "$7FF865": "GRN0B_YH", + "$7FF866": "GRN0C_YH", + "$7FF867": "GRN0D_YH", + "$7FF868": "GRN0E_YH", + "$7FF869": "GRN0F_YH", + "$7FF86A": "GRN10_YH", + "$7FF86B": "GRN11_YH", + "$7FF86C": "GRN12_YH", + "$7FF86D": "GRN13_YH", + "$7FF86E": "GRN14_YH", + "$7FF86F": "GRN15_YH", + "$7FF870": "GRN16_YH", + "$7FF871": "GRN17_YH", + "$7FF872": "GRN18_YH", + "$7FF873": "GRN19_YH", + "$7FF874": "GRN1A_YH", + "$7FF875": "GRN1B_YH", + "$7FF876": "GRN1C_YH", + "$7FF877": "GRN1D_YH", + "$7FF878": "GRN00_XH", + "$7FF879": "GRN01_XH", + "$7FF87A": "GRN02_XH", + "$7FF87B": "GRN03_XH", + "$7FF87C": "GRN04_XH", + "$7FF87D": "GRN05_XH", + "$7FF87E": "GRN06_XH", + "$7FF87F": "GRN07_XH", + "$7FF880": "GRN08_XH", + "$7FF881": "GRN09_XH", + "$7FF882": "GRN0A_XH", + "$7FF883": "GRN0B_XH", + "$7FF884": "GRN0C_XH", + "$7FF885": "GRN0D_XH", + "$7FF886": "GRN0E_XH", + "$7FF887": "GRN0F_XH", + "$7FF888": "GRN10_XH", + "$7FF889": "GRN11_XH", + "$7FF88A": "GRN12_XH", + "$7FF88B": "GRN13_XH", + "$7FF88C": "GRN14_XH", + "$7FF88D": "GRN15_XH", + "$7FF88E": "GRN16_XH", + "$7FF88F": "GRN17_XH", + "$7FF890": "GRN18_XH", + "$7FF891": "GRN19_XH", + "$7FF892": "GRN1A_XH", + "$7FF893": "GRN1B_XH", + "$7FF894": "GRN1C_XH", + "$7FF895": "GRN1D_XH", + "$7FF896": "GRN00_VY", + "$7FF897": "GRN01_VY", + "$7FF898": "GRN02_VY", + "$7FF899": "GRN03_VY", + "$7FF89A": "GRN04_VY", + "$7FF89B": "GRN05_VY", + "$7FF89C": "GRN06_VY", + "$7FF89D": "GRN07_VY", + "$7FF89E": "GRN08_VY", + "$7FF89F": "GRN09_VY", + "$7FF8A0": "GRN0A_VY", + "$7FF8A1": "GRN0B_VY", + "$7FF8A2": "GRN0C_VY", + "$7FF8A3": "GRN0D_VY", + "$7FF8A4": "GRN0E_VY", + "$7FF8A5": "GRN0F_VY", + "$7FF8A6": "GRN10_VY", + "$7FF8A7": "GRN11_VY", + "$7FF8A8": "GRN12_VY", + "$7FF8A9": "GRN13_VY", + "$7FF8AA": "GRN14_VY", + "$7FF8AB": "GRN15_VY", + "$7FF8AC": "GRN16_VY", + "$7FF8AD": "GRN17_VY", + "$7FF8AE": "GRN18_VY", + "$7FF8AF": "GRN19_VY", + "$7FF8B0": "GRN1A_VY", + "$7FF8B1": "GRN1B_VY", + "$7FF8B2": "GRN1C_VY", + "$7FF8B3": "GRN1D_VY", + "$7FF8B4": "GRN00_VX", + "$7FF8B5": "GRN01_VX", + "$7FF8B6": "GRN02_VX", + "$7FF8B7": "GRN03_VX", + "$7FF8B8": "GRN04_VX", + "$7FF8B9": "GRN05_VX", + "$7FF8BA": "GRN06_VX", + "$7FF8BB": "GRN07_VX", + "$7FF8BC": "GRN08_VX", + "$7FF8BD": "GRN09_VX", + "$7FF8BE": "GRN0A_VX", + "$7FF8BF": "GRN0B_VX", + "$7FF8C0": "GRN0C_VX", + "$7FF8C1": "GRN0D_VX", + "$7FF8C2": "GRN0E_VX", + "$7FF8C3": "GRN0F_VX", + "$7FF8C4": "GRN10_VX", + "$7FF8C5": "GRN11_VX", + "$7FF8C6": "GRN12_VX", + "$7FF8C7": "GRN13_VX", + "$7FF8C8": "GRN14_VX", + "$7FF8C9": "GRN15_VX", + "$7FF8CA": "GRN16_VX", + "$7FF8CB": "GRN17_VX", + "$7FF8CC": "GRN18_VX", + "$7FF8CD": "GRN19_VX", + "$7FF8CE": "GRN1A_VX", + "$7FF8CF": "GRN1B_VX", + "$7FF8D0": "GRN1C_VX", + "$7FF8D1": "GRN1D_VX", + "$7FF8D2": "GRN00_8D2", + "$7FF8D3": "GRN01_8D2", + "$7FF8D4": "GRN02_8D2", + "$7FF8D5": "GRN03_8D2", + "$7FF8D6": "GRN04_8D2", + "$7FF8D7": "GRN05_8D2", + "$7FF8D8": "GRN06_8D2", + "$7FF8D9": "GRN07_8D2", + "$7FF8DA": "GRN08_8D2", + "$7FF8DB": "GRN09_8D2", + "$7FF8DC": "GRN0A_8D2", + "$7FF8DD": "GRN0B_8D2", + "$7FF8DE": "GRN0C_8D2", + "$7FF8DF": "GRN0D_8D2", + "$7FF8E0": "GRN0E_8D2", + "$7FF8E1": "GRN0F_8D2", + "$7FF8E2": "GRN10_8D2", + "$7FF8E3": "GRN11_8D2", + "$7FF8E4": "GRN12_8D2", + "$7FF8E5": "GRN13_8D2", + "$7FF8E6": "GRN14_8D2", + "$7FF8E7": "GRN15_8D2", + "$7FF8E8": "GRN16_8D2", + "$7FF8E9": "GRN17_8D2", + "$7FF8EA": "GRN18_8D2", + "$7FF8EB": "GRN19_8D2", + "$7FF8EC": "GRN1A_8D2", + "$7FF8ED": "GRN1B_8D2", + "$7FF8EE": "GRN1C_8D2", + "$7FF8EF": "GRN1D_8D2", + "$7FF8F0": "GRN00_8F0", + "$7FF8F1": "GRN01_8F0", + "$7FF8F2": "GRN02_8F0", + "$7FF8F3": "GRN03_8F0", + "$7FF8F4": "GRN04_8F0", + "$7FF8F5": "GRN05_8F0", + "$7FF8F6": "GRN06_8F0", + "$7FF8F7": "GRN07_8F0", + "$7FF8F8": "GRN08_8F0", + "$7FF8F9": "GRN09_8F0", + "$7FF8FA": "GRN0A_8F0", + "$7FF8FB": "GRN0B_8F0", + "$7FF8FC": "GRN0C_8F0", + "$7FF8FD": "GRN0D_8F0", + "$7FF8FE": "GRN0E_8F0", + "$7FF8FF": "GRN0F_8F0", + "$7FF900": "GRN10_8F0", + "$7FF901": "GRN11_8F0", + "$7FF902": "GRN12_8F0", + "$7FF903": "GRN13_8F0", + "$7FF904": "GRN14_8F0", + "$7FF905": "GRN15_8F0", + "$7FF906": "GRN16_8F0", + "$7FF907": "GRN17_8F0", + "$7FF908": "GRN18_8F0", + "$7FF909": "GRN19_8F0", + "$7FF90A": "GRN1A_8F0", + "$7FF90B": "GRN1B_8F0", + "$7FF90C": "GRN1C_8F0", + "$7FF90D": "GRN1D_8F0", + "$7FF90E": "GRN00_TIMER", + "$7FF90F": "GRN01_TIMER", + "$7FF910": "GRN02_TIMER", + "$7FF911": "GRN03_TIMER", + "$7FF912": "GRN04_TIMER", + "$7FF913": "GRN05_TIMER", + "$7FF914": "GRN06_TIMER", + "$7FF915": "GRN07_TIMER", + "$7FF916": "GRN08_TIMER", + "$7FF917": "GRN09_TIMER", + "$7FF918": "GRN0A_TIMER", + "$7FF919": "GRN0B_TIMER", + "$7FF91A": "GRN0C_TIMER", + "$7FF91B": "GRN0D_TIMER", + "$7FF91C": "GRN0E_TIMER", + "$7FF91D": "GRN0F_TIMER", + "$7FF91E": "GRN10_TIMER", + "$7FF91F": "GRN11_TIMER", + "$7FF920": "GRN12_TIMER", + "$7FF921": "GRN13_TIMER", + "$7FF922": "GRN14_TIMER", + "$7FF923": "GRN15_TIMER", + "$7FF924": "GRN16_TIMER", + "$7FF925": "GRN17_TIMER", + "$7FF926": "GRN18_TIMER", + "$7FF927": "GRN19_TIMER", + "$7FF928": "GRN1A_TIMER", + "$7FF929": "GRN1B_TIMER", + "$7FF92A": "GRN1C_TIMER", + "$7FF92B": "GRN1D_TIMER", + "$7FF92C": "GRN00_MOM", + "$7FF92D": "GRN01_MOM", + "$7FF92E": "GRN02_MOM", + "$7FF92F": "GRN03_MOM", + "$7FF930": "GRN04_MOM", + "$7FF931": "GRN05_MOM", + "$7FF932": "GRN06_MOM", + "$7FF933": "GRN07_MOM", + "$7FF934": "GRN08_MOM", + "$7FF935": "GRN09_MOM", + "$7FF936": "GRN0A_MOM", + "$7FF937": "GRN0B_MOM", + "$7FF938": "GRN0C_MOM", + "$7FF939": "GRN0D_MOM", + "$7FF93A": "GRN0E_MOM", + "$7FF93B": "GRN0F_MOM", + "$7FF93C": "GRN10_MOM", + "$7FF93D": "GRN11_MOM", + "$7FF93E": "GRN12_MOM", + "$7FF93F": "GRN13_MOM", + "$7FF940": "GRN14_MOM", + "$7FF941": "GRN15_MOM", + "$7FF942": "GRN16_MOM", + "$7FF943": "GRN17_MOM", + "$7FF944": "GRN18_MOM", + "$7FF945": "GRN19_MOM", + "$7FF946": "GRN1A_MOM", + "$7FF947": "GRN1B_MOM", + "$7FF948": "GRN1C_MOM", + "$7FF949": "GRN1D_MOM", + "$7FF94A": "GRN00_94A", + "$7FF94B": "GRN01_94A", + "$7FF94C": "GRN02_94A", + "$7FF94D": "GRN03_94A", + "$7FF94E": "GRN04_94A", + "$7FF94F": "GRN05_94A", + "$7FF950": "GRN06_94A", + "$7FF951": "GRN07_94A", + "$7FF952": "GRN08_94A", + "$7FF953": "GRN09_94A", + "$7FF954": "GRN0A_94A", + "$7FF955": "GRN0B_94A", + "$7FF956": "GRN0C_94A", + "$7FF957": "GRN0D_94A", + "$7FF958": "GRN0E_94A", + "$7FF959": "GRN0F_94A", + "$7FF95A": "GRN10_94A", + "$7FF95B": "GRN11_94A", + "$7FF95C": "GRN12_94A", + "$7FF95D": "GRN13_94A", + "$7FF95E": "GRN14_94A", + "$7FF95F": "GRN15_94A", + "$7FF960": "GRN16_94A", + "$7FF961": "GRN17_94A", + "$7FF962": "GRN18_94A", + "$7FF963": "GRN19_94A", + "$7FF964": "GRN1A_94A", + "$7FF965": "GRN1B_94A", + "$7FF966": "GRN1C_94A", + "$7FF967": "GRN1D_94A", + "$7FF968": "GRN00_LAYER", + "$7FF969": "GRN01_LAYER", + "$7FF96A": "GRN02_LAYER", + "$7FF96B": "GRN03_LAYER", + "$7FF96C": "GRN04_LAYER", + "$7FF96D": "GRN05_LAYER", + "$7FF96E": "GRN06_LAYER", + "$7FF96F": "GRN07_LAYER", + "$7FF970": "GRN08_LAYER", + "$7FF971": "GRN09_LAYER", + "$7FF972": "GRN0A_LAYER", + "$7FF973": "GRN0B_LAYER", + "$7FF974": "GRN0C_LAYER", + "$7FF975": "GRN0D_LAYER", + "$7FF976": "GRN0E_LAYER", + "$7FF977": "GRN0F_LAYER", + "$7FF978": "GRN10_LAYER", + "$7FF979": "GRN11_LAYER", + "$7FF97A": "GRN12_LAYER", + "$7FF97B": "GRN13_LAYER", + "$7FF97C": "GRN14_LAYER", + "$7FF97D": "GRN15_LAYER", + "$7FF97E": "GRN16_LAYER", + "$7FF97F": "GRN17_LAYER", + "$7FF980": "GRN18_LAYER", + "$7FF981": "GRN19_LAYER", + "$7FF982": "GRN1A_LAYER", + "$7FF983": "GRN1B_LAYER", + "$7FF984": "GRN1C_LAYER", + "$7FF985": "GRN1D_LAYER", + "$7FF986": "GRN00_986", + "$7FF987": "GRN01_986", + "$7FF988": "GRN02_986", + "$7FF989": "GRN03_986", + "$7FF98A": "GRN04_986", + "$7FF98B": "GRN05_986", + "$7FF98C": "GRN06_986", + "$7FF98D": "GRN07_986", + "$7FF98E": "GRN08_986", + "$7FF98F": "GRN09_986", + "$7FF990": "GRN0A_986", + "$7FF991": "GRN0B_986", + "$7FF992": "GRN0C_986", + "$7FF993": "GRN0D_986", + "$7FF994": "GRN0E_986", + "$7FF995": "GRN0F_986", + "$7FF996": "GRN10_986", + "$7FF997": "GRN11_986", + "$7FF998": "GRN12_986", + "$7FF999": "GRN13_986", + "$7FF99A": "GRN14_986", + "$7FF99B": "GRN15_986", + "$7FF99C": "GRN16_986", + "$7FF99D": "GRN17_986", + "$7FF99E": "GRN18_986", + "$7FF99F": "GRN19_986", + "$7FF9A0": "GRN1A_986", + "$7FF9A1": "GRN1B_986", + "$7FF9A2": "GRN1C_986", + "$7FF9A3": "GRN1D_986", + "$7FF9A4": "GRN00_9A4", + "$7FF9A5": "GRN01_9A4", + "$7FF9A6": "GRN02_9A4", + "$7FF9A7": "GRN03_9A4", + "$7FF9A8": "GRN04_9A4", + "$7FF9A9": "GRN05_9A4", + "$7FF9AA": "GRN06_9A4", + "$7FF9AB": "GRN07_9A4", + "$7FF9AC": "GRN08_9A4", + "$7FF9AD": "GRN09_9A4", + "$7FF9AE": "GRN0A_9A4", + "$7FF9AF": "GRN0B_9A4", + "$7FF9B0": "GRN0C_9A4", + "$7FF9B1": "GRN0D_9A4", + "$7FF9B2": "GRN0E_9A4", + "$7FF9B3": "GRN0F_9A4", + "$7FF9B4": "GRN10_9A4", + "$7FF9B5": "GRN11_9A4", + "$7FF9B6": "GRN12_9A4", + "$7FF9B7": "GRN13_9A4", + "$7FF9B8": "GRN14_9A4", + "$7FF9B9": "GRN15_9A4", + "$7FF9BA": "GRN16_9A4", + "$7FF9BB": "GRN17_9A4", + "$7FF9BC": "GRN18_9A4", + "$7FF9BD": "GRN19_9A4", + "$7FF9BE": "GRN1A_9A4", + "$7FF9BF": "GRN1B_9A4", + "$7FF9C0": "GRN1C_9A4", + "$7FF9C1": "GRN1D_9A4", + "$7FF9C2": "SPR0TILE", + "$7FF9C3": "SPR1TILE", + "$7FF9C4": "SPR2TILE", + "$7FF9C5": "SPR3TILE", + "$7FF9C6": "SPR4TILE", + "$7FF9C7": "SPR5TILE", + "$7FF9C8": "SPR6TILE", + "$7FF9C9": "SPR7TILE", + "$7FF9CA": "SPR8TILE", + "$7FF9CB": "SPR9TILE", + "$7FF9CC": "SPRATILE", + "$7FF9CD": "SPRBTILE", + "$7FF9CE": "SPRCTILE", + "$7FF9CF": "SPRDTILE", + "$7FF9D0": "SPRETILE", + "$7FF9D1": "SPRFTILE", + "$7FF9D2": "UNUSED_7FF9D2", + "$7FF9FE": "GRN00_9FE", + "$7FF9FF": "GRN01_9FE", + "$7FFA00": "GRN02_9FE", + "$7FFA01": "GRN03_9FE", + "$7FFA02": "GRN04_9FE", + "$7FFA03": "GRN05_9FE", + "$7FFA04": "GRN06_9FE", + "$7FFA05": "GRN07_9FE", + "$7FFA06": "GRN08_9FE", + "$7FFA07": "GRN09_9FE", + "$7FFA08": "GRN0A_9FE", + "$7FFA09": "GRN0B_9FE", + "$7FFA0A": "GRN0C_9FE", + "$7FFA0B": "GRN0D_9FE", + "$7FFA0C": "GRN0E_9FE", + "$7FFA0D": "GRN0F_9FE", + "$7FFA0E": "GRN10_9FE", + "$7FFA0F": "GRN11_9FE", + "$7FFA10": "GRN12_9FE", + "$7FFA11": "GRN13_9FE", + "$7FFA12": "GRN14_9FE", + "$7FFA13": "GRN15_9FE", + "$7FFA14": "GRN16_9FE", + "$7FFA15": "GRN17_9FE", + "$7FFA16": "GRN18_9FE", + "$7FFA17": "GRN19_9FE", + "$7FFA18": "GRN1A_9FE", + "$7FFA19": "GRN1B_9FE", + "$7FFA1A": "GRN1C_9FE", + "$7FFA1B": "GRN1D_9FE", + "$7FFA1C": "SPR0LIFT", + "$7FFA1D": "SPR1LIFT", + "$7FFA1E": "SPR2LIFT", + "$7FFA1F": "SPR3LIFT", + "$7FFA20": "SPR4LIFT", + "$7FFA21": "SPR5LIFT", + "$7FFA22": "SPR6LIFT", + "$7FFA23": "SPR7LIFT", + "$7FFA24": "SPR8LIFT", + "$7FFA25": "SPR9LIFT", + "$7FFA26": "SPRALIFT", + "$7FFA27": "SPRBLIFT", + "$7FFA28": "SPRCLIFT", + "$7FFA29": "SPRDLIFT", + "$7FFA2A": "SPRELIFT", + "$7FFA2B": "SPRFLIFT", + "$7FFA2C": "SPR0PRELIFT", + "$7FFA2D": "SPR1PRELIFT", + "$7FFA2E": "SPR2PRELIFT", + "$7FFA2F": "SPR3PRELIFT", + "$7FFA30": "SPR4PRELIFT", + "$7FFA31": "SPR5PRELIFT", + "$7FFA32": "SPR6PRELIFT", + "$7FFA33": "SPR7PRELIFT", + "$7FFA34": "SPR8PRELIFT", + "$7FFA35": "SPR9PRELIFT", + "$7FFA36": "SPRAPRELIFT", + "$7FFA37": "SPRBPRELIFT", + "$7FFA38": "SPRCPRELIFT", + "$7FFA39": "SPRDPRELIFT", + "$7FFA3A": "SPREPRELIFT", + "$7FFA3B": "SPRFPRELIFT", + "$7FFA3C": "SPR0ICED", + "$7FFA3D": "SPR1ICED", + "$7FFA3E": "SPR2ICED", + "$7FFA3F": "SPR3ICED", + "$7FFA40": "SPR4ICED", + "$7FFA41": "SPR5ICED", + "$7FFA42": "SPR6ICED", + "$7FFA43": "SPR7ICED", + "$7FFA44": "SPR8ICED", + "$7FFA45": "SPR9ICED", + "$7FFA46": "SPRAICED", + "$7FFA47": "SPRBICED", + "$7FFA48": "SPRCICED", + "$7FFA49": "SPRDICED", + "$7FFA4A": "SPREICED", + "$7FFA4B": "SPRFICED", + "$7FFA4C": "SPRCACHE_7FFA4C", + "$7FFA5C": "SPRCACHE_7FFA5C", + "$7FFA6C": "SPRCACHE_7FFA6C", + "$7FFA7C": "SPRCACHE_7FFA7C", + "$7FFA8C": "SPRCACHE_7FFA8C", + "$7FFA9C": "SPRCACHE_7FFA9C", + "$7FFAAC": "SPRCACHE_7FFAAC", + "$7FFABC": "SPR0TILE2", + "$7FFABD": "SPR1TILE2", + "$7FFABE": "SPR2TILE2", + "$7FFABF": "SPR3TILE2", + "$7FFAC0": "SPR4TILE2", + "$7FFAC1": "SPR5TILE2", + "$7FFAC2": "SPR6TILE2", + "$7FFAC3": "SPR7TILE2", + "$7FFAC4": "SPR8TILE2", + "$7FFAC5": "SPR9TILE2", + "$7FFAC6": "SPRATILE2", + "$7FFAC7": "SPRBTILE2", + "$7FFAC8": "SPRCTILE2", + "$7FFAC9": "SPRDTILE2", + "$7FFACA": "SPRETILE2", + "$7FFACB": "SPRFTILE2", + "$7FFACC": "SPRCACHE_7FFACC", + "$7FFADC": "SPRCACHE_7FFADC", + "$7FFAEC": "UNUSED_7FFAEC", + "$7FFB1C": "SWAMSEG2A", + "$7FFB3C": "SWAMSEG2B", + "$7FFB5C": "SWAMSEG2C", + "$7FFB7C": "SWAMSEG2D", + "$7FFB9C": "SWAMSEG2E", + "$7FFBBC": "SWAMSEG2F", + "$7FFBDC": "SWAMSEG1A", + "$7FFBFC": "SWAMSEG1B", + "$7FFC1C": "SWAMSEG1C", + "$7FFC3C": "SWAMSEG1D", + "$7FFC5C": "SWAMSEG1E", + "$7FFC7C": "SWAMSEG1F", + "$7FFC00": "SEGMENTS_7FFD00", + "$7FFD5C": "GANONWARPXL", + "$7FFD62": "GANONWARPXH", + "$7FFD68": "GANONWARPYL", + "$7FFD6E": "GANONWARPYH", + "$7FFD80": "SEGMENTS_7FFD80", + "$7FFE00": "SPR_7FFE80", + "$7FFE01": "RACETIMEGB", + "$7FFE02": "RACETIMEGC", + "$7FFE03": "RACETIMEGD", + "$7FFE04": "RACETIMEDA", + "$7FFE05": "RACETIMEDB", + "$7FFE06": "RACETIMEDC", + "$7FFE07": "RACETIMEDD", + "$7FFF00": "SPR_7FFF00", + "$700000": "FILE1MAIN", + "$700500": "FILE2MAIN", + "$700A00": "FILE3MAIN", + "$700F00": "FILE1COPY", + "$701400": "FILE2COPY", + "$701900": "FILE3COPY", + "$701E00": "FREESRAM", + "$701FFE": "SRAMOFF", + "$7EF002": "RMFLG001", + "$7EF004": "RMFLG002", + "$7EF006": "RMFLG003", + "$7EF008": "RMFLG004", + "$7EF00A": "RMFLG005", + "$7EF00C": "RMFLG006", + "$7EF00E": "RMFLG007", + "$7EF010": "RMFLG008", + "$7EF012": "RMFLG009", + "$7EF014": "RMFLG00A", + "$7EF016": "RMFLG00B", + "$7EF018": "RMFLG00C", + "$7EF01A": "RMFLG00D", + "$7EF01C": "RMFLG00E", + "$7EF01E": "RMFLG00F", + "$7EF020": "RMFLG010", + "$7EF022": "RMFLG011", + "$7EF024": "RMFLG012", + "$7EF026": "RMFLG013", + "$7EF028": "RMFLG014", + "$7EF02A": "RMFLG015", + "$7EF02C": "RMFLG016", + "$7EF02E": "RMFLG017", + "$7EF030": "RMFLG018", + "$7EF032": "RMFLG019", + "$7EF034": "RMFLG01A", + "$7EF036": "RMFLG01B", + "$7EF038": "RMFLG01C", + "$7EF03A": "RMFLG01D", + "$7EF03C": "RMFLG01E", + "$7EF03E": "RMFLG01F", + "$7EF040": "RMFLG020", + "$7EF042": "RMFLG021", + "$7EF044": "RMFLG022", + "$7EF046": "RMFLG023", + "$7EF048": "RMFLG024", + "$7EF04A": "RMFLG025", + "$7EF04C": "RMFLG026", + "$7EF04E": "RMFLG027", + "$7EF050": "RMFLG028", + "$7EF052": "RMFLG029", + "$7EF054": "RMFLG02A", + "$7EF056": "RMFLG02B", + "$7EF058": "RMFLG02C", + "$7EF05A": "RMFLG02D", + "$7EF05C": "RMFLG02E", + "$7EF05E": "RMFLG02F", + "$7EF060": "RMFLG030", + "$7EF062": "RMFLG031", + "$7EF064": "RMFLG032", + "$7EF066": "RMFLG033", + "$7EF068": "RMFLG034", + "$7EF06A": "RMFLG035", + "$7EF06C": "RMFLG036", + "$7EF06E": "RMFLG037", + "$7EF070": "RMFLG038", + "$7EF072": "RMFLG039", + "$7EF074": "RMFLG03A", + "$7EF076": "RMFLG03B", + "$7EF078": "RMFLG03C", + "$7EF07A": "RMFLG03D", + "$7EF07C": "RMFLG03E", + "$7EF07E": "RMFLG03F", + "$7EF080": "RMFLG040", + "$7EF082": "RMFLG041", + "$7EF084": "RMFLG042", + "$7EF086": "RMFLG043", + "$7EF088": "RMFLG044", + "$7EF08A": "RMFLG045", + "$7EF08C": "RMFLG046", + "$7EF08E": "RMFLG047", + "$7EF090": "RMFLG048", + "$7EF092": "RMFLG049", + "$7EF094": "RMFLG04A", + "$7EF096": "RMFLG04B", + "$7EF098": "RMFLG04C", + "$7EF09A": "RMFLG04D", + "$7EF09C": "RMFLG04E", + "$7EF09E": "RMFLG04F", + "$7EF0A0": "RMFLG050", + "$7EF0A2": "RMFLG051", + "$7EF0A4": "RMFLG052", + "$7EF0A6": "RMFLG053", + "$7EF0A8": "RMFLG054", + "$7EF0AA": "RMFLG055", + "$7EF0AC": "RMFLG056", + "$7EF0AE": "RMFLG057", + "$7EF0B0": "RMFLG058", + "$7EF0B2": "RMFLG059", + "$7EF0B4": "RMFLG05A", + "$7EF0B6": "RMFLG05B", + "$7EF0B8": "RMFLG05C", + "$7EF0BA": "RMFLG05D", + "$7EF0BC": "RMFLG05E", + "$7EF0BE": "RMFLG05F", + "$7EF0C0": "RMFLG060", + "$7EF0C2": "RMFLG061", + "$7EF0C4": "RMFLG062", + "$7EF0C6": "RMFLG063", + "$7EF0C8": "RMFLG064", + "$7EF0CA": "RMFLG065", + "$7EF0CC": "RMFLG066", + "$7EF0CE": "RMFLG067", + "$7EF0D0": "RMFLG068", + "$7EF0D2": "RMFLG069", + "$7EF0D4": "RMFLG06A", + "$7EF0D6": "RMFLG06B", + "$7EF0D8": "RMFLG06C", + "$7EF0DA": "RMFLG06D", + "$7EF0DC": "RMFLG06E", + "$7EF0DE": "RMFLG06F", + "$7EF0E0": "RMFLG070", + "$7EF0E2": "RMFLG071", + "$7EF0E4": "RMFLG072", + "$7EF0E6": "RMFLG073", + "$7EF0E8": "RMFLG074", + "$7EF0EA": "RMFLG075", + "$7EF0EC": "RMFLG076", + "$7EF0EE": "RMFLG077", + "$7EF0F0": "RMFLG078", + "$7EF0F2": "RMFLG079", + "$7EF0F4": "RMFLG07A", + "$7EF0F6": "RMFLG07B", + "$7EF0F8": "RMFLG07C", + "$7EF0FA": "RMFLG07D", + "$7EF0FC": "RMFLG07E", + "$7EF0FE": "RMFLG07F", + "$7EF100": "RMFLG080", + "$7EF102": "RMFLG081", + "$7EF104": "RMFLG082", + "$7EF106": "RMFLG083", + "$7EF108": "RMFLG084", + "$7EF10A": "RMFLG085", + "$7EF10C": "RMFLG086", + "$7EF10E": "RMFLG087", + "$7EF110": "RMFLG088", + "$7EF112": "RMFLG089", + "$7EF114": "RMFLG08A", + "$7EF116": "RMFLG08B", + "$7EF118": "RMFLG08C", + "$7EF11A": "RMFLG08D", + "$7EF11C": "RMFLG08E", + "$7EF11E": "RMFLG08F", + "$7EF120": "RMFLG090", + "$7EF122": "RMFLG091", + "$7EF124": "RMFLG092", + "$7EF126": "RMFLG093", + "$7EF128": "RMFLG094", + "$7EF12A": "RMFLG095", + "$7EF12C": "RMFLG096", + "$7EF12E": "RMFLG097", + "$7EF130": "RMFLG098", + "$7EF132": "RMFLG099", + "$7EF134": "RMFLG09A", + "$7EF136": "RMFLG09B", + "$7EF138": "RMFLG09C", + "$7EF13A": "RMFLG09D", + "$7EF13C": "RMFLG09E", + "$7EF13E": "RMFLG09F", + "$7EF140": "RMFLG0A0", + "$7EF142": "RMFLG0A1", + "$7EF144": "RMFLG0A2", + "$7EF146": "RMFLG0A3", + "$7EF148": "RMFLG0A4", + "$7EF14A": "RMFLG0A5", + "$7EF14C": "RMFLG0A6", + "$7EF14E": "RMFLG0A7", + "$7EF150": "RMFLG0A8", + "$7EF152": "RMFLG0A9", + "$7EF154": "RMFLG0AA", + "$7EF156": "RMFLG0AB", + "$7EF158": "RMFLG0AC", + "$7EF15A": "RMFLG0AD", + "$7EF15C": "RMFLG0AE", + "$7EF15E": "RMFLG0AF", + "$7EF160": "RMFLG0B0", + "$7EF162": "RMFLG0B1", + "$7EF164": "RMFLG0B2", + "$7EF166": "RMFLG0B3", + "$7EF168": "RMFLG0B4", + "$7EF16A": "RMFLG0B5", + "$7EF16C": "RMFLG0B6", + "$7EF16E": "RMFLG0B7", + "$7EF170": "RMFLG0B8", + "$7EF172": "RMFLG0B9", + "$7EF174": "RMFLG0BA", + "$7EF176": "RMFLG0BB", + "$7EF178": "RMFLG0BC", + "$7EF17A": "RMFLG0BD", + "$7EF17C": "RMFLG0BE", + "$7EF17E": "RMFLG0BF", + "$7EF180": "RMFLG0C0", + "$7EF182": "RMFLG0C1", + "$7EF184": "RMFLG0C2", + "$7EF186": "RMFLG0C3", + "$7EF188": "RMFLG0C4", + "$7EF18A": "RMFLG0C5", + "$7EF18C": "RMFLG0C6", + "$7EF18E": "RMFLG0C7", + "$7EF190": "RMFLG0C8", + "$7EF192": "RMFLG0C9", + "$7EF194": "RMFLG0CA", + "$7EF196": "RMFLG0CB", + "$7EF198": "RMFLG0CC", + "$7EF19A": "RMFLG0CD", + "$7EF19C": "RMFLG0CE", + "$7EF19E": "RMFLG0CF", + "$7EF1A0": "RMFLG0D0", + "$7EF1A2": "RMFLG0D1", + "$7EF1A4": "RMFLG0D2", + "$7EF1A6": "RMFLG0D3", + "$7EF1A8": "RMFLG0D4", + "$7EF1AA": "RMFLG0D5", + "$7EF1AC": "RMFLG0D6", + "$7EF1AE": "RMFLG0D7", + "$7EF1B0": "RMFLG0D8", + "$7EF1B2": "RMFLG0D9", + "$7EF1B4": "RMFLG0DA", + "$7EF1B6": "RMFLG0DB", + "$7EF1B8": "RMFLG0DC", + "$7EF1BA": "RMFLG0DD", + "$7EF1BC": "RMFLG0DE", + "$7EF1BE": "RMFLG0DF", + "$7EF1C0": "RMFLG0E0", + "$7EF1C2": "RMFLG0E1", + "$7EF1C4": "RMFLG0E2", + "$7EF1C6": "RMFLG0E3", + "$7EF1C8": "RMFLG0E4", + "$7EF1CA": "RMFLG0E5", + "$7EF1CC": "RMFLG0E6", + "$7EF1CE": "RMFLG0E7", + "$7EF1D0": "RMFLG0E8", + "$7EF1D2": "RMFLG0E9", + "$7EF1D4": "RMFLG0EA", + "$7EF1D6": "RMFLG0EB", + "$7EF1D8": "RMFLG0EC", + "$7EF1DA": "RMFLG0ED", + "$7EF1DC": "RMFLG0EE", + "$7EF1DE": "RMFLG0EF", + "$7EF1E0": "RMFLG0F0", + "$7EF1E2": "RMFLG0F1", + "$7EF1E4": "RMFLG0F2", + "$7EF1E6": "RMFLG0F3", + "$7EF1E8": "RMFLG0F4", + "$7EF1EA": "RMFLG0F5", + "$7EF1EC": "RMFLG0F6", + "$7EF1EE": "RMFLG0F7", + "$7EF1F0": "RMFLG0F8", + "$7EF1F2": "RMFLG0F9", + "$7EF1F4": "RMFLG0FA", + "$7EF1F6": "RMFLG0FB", + "$7EF1F8": "RMFLG0FC", + "$7EF1FA": "RMFLG0FD", + "$7EF1FC": "RMFLG0FE", + "$7EF1FE": "RMFLG0FF", + "$7EF200": "RMFLG100", + "$7EF202": "RMFLG101", + "$7EF204": "RMFLG102", + "$7EF206": "RMFLG103", + "$7EF208": "RMFLG104", + "$7EF20A": "RMFLG105", + "$7EF20C": "RMFLG106", + "$7EF20E": "RMFLG107", + "$7EF210": "RMFLG108", + "$7EF212": "RMFLG109", + "$7EF214": "RMFLG10A", + "$7EF216": "RMFLG10B", + "$7EF218": "RMFLG10C", + "$7EF21A": "RMFLG10D", + "$7EF21C": "RMFLG10E", + "$7EF21E": "RMFLG10F", + "$7EF220": "RMFLG110", + "$7EF222": "RMFLG111", + "$7EF224": "RMFLG112", + "$7EF226": "RMFLG113", + "$7EF228": "RMFLG114", + "$7EF22A": "RMFLG115", + "$7EF22C": "RMFLG116", + "$7EF22E": "RMFLG117", + "$7EF230": "RMFLG118", + "$7EF232": "RMFLG119", + "$7EF234": "RMFLG11A", + "$7EF236": "RMFLG11B", + "$7EF238": "RMFLG11C", + "$7EF23A": "RMFLG11D", + "$7EF23C": "RMFLG11E", + "$7EF23E": "RMFLG11F", + "$7EF240": "RMFLG120", + "$7EF242": "RMFLG121", + "$7EF244": "RMFLG122", + "$7EF246": "RMFLG123", + "$7EF248": "RMFLG124", + "$7EF24A": "RMFLG125", + "$7EF24C": "RMFLG126", + "$7EF24E": "RMFLG127", + "$7EF250": "RMFLG128", + "$7EF252": "RMFLG129", + "$7EF254": "RMFLG12A", + "$7EF256": "RMFLG12B", + "$7EF258": "RMFLG12C", + "$7EF25A": "RMFLG12D", + "$7EF25C": "RMFLG12E", + "$7EF25E": "RMFLG12F", + "$7EF260": "RMFLG130", + "$7EF262": "RMFLG131", + "$7EF264": "RMFLG132", + "$7EF266": "RMFLG133", + "$7EF268": "RMFLG134", + "$7EF26A": "RMFLG135", + "$7EF26C": "RMFLG136", + "$7EF26E": "RMFLG137", + "$7EF270": "RMFLG138", + "$7EF272": "RMFLG139", + "$7EF274": "RMFLG13A", + "$7EF276": "RMFLG13B", + "$7EF278": "RMFLG13C", + "$7EF27A": "RMFLG13D", + "$7EF27C": "RMFLG13E", + "$7EF27E": "RMFLG13F", + "$7EF280": "OWFLG00", + "$7EF281": "OWFLG01", + "$7EF282": "OWFLG02", + "$7EF283": "OWFLG03", + "$7EF284": "OWFLG04", + "$7EF285": "OWFLG05", + "$7EF286": "OWFLG06", + "$7EF287": "OWFLG07", + "$7EF288": "OWFLG08", + "$7EF289": "OWFLG09", + "$7EF28A": "OWFLG0A", + "$7EF28B": "OWFLG0B", + "$7EF28C": "OWFLG0C", + "$7EF28D": "OWFLG0D", + "$7EF28E": "OWFLG0E", + "$7EF28F": "OWFLG0F", + "$7EF290": "OWFLG10", + "$7EF291": "OWFLG11", + "$7EF292": "OWFLG12", + "$7EF293": "OWFLG13", + "$7EF294": "OWFLG14", + "$7EF295": "OWFLG15", + "$7EF296": "OWFLG16", + "$7EF297": "OWFLG17", + "$7EF298": "OWFLG18", + "$7EF299": "OWFLG19", + "$7EF29A": "OWFLG1A", + "$7EF29B": "OWFLG1B", + "$7EF29C": "OWFLG1C", + "$7EF29D": "OWFLG1D", + "$7EF29E": "OWFLG1E", + "$7EF29F": "OWFLG1F", + "$7EF2A0": "OWFLG20", + "$7EF2A1": "OWFLG21", + "$7EF2A2": "OWFLG22", + "$7EF2A3": "OWFLG23", + "$7EF2A4": "OWFLG24", + "$7EF2A5": "OWFLG25", + "$7EF2A6": "OWFLG26", + "$7EF2A7": "OWFLG27", + "$7EF2A8": "OWFLG28", + "$7EF2A9": "OWFLG29", + "$7EF2AA": "OWFLG2A", + "$7EF2AB": "OWFLG2B", + "$7EF2AC": "OWFLG2C", + "$7EF2AD": "OWFLG2D", + "$7EF2AE": "OWFLG2E", + "$7EF2AF": "OWFLG2F", + "$7EF2B0": "OWFLG30", + "$7EF2B1": "OWFLG31", + "$7EF2B2": "OWFLG32", + "$7EF2B3": "OWFLG33", + "$7EF2B4": "OWFLG34", + "$7EF2B5": "OWFLG35", + "$7EF2B6": "OWFLG36", + "$7EF2B7": "OWFLG37", + "$7EF2B8": "OWFLG38", + "$7EF2B9": "OWFLG39", + "$7EF2BA": "OWFLG3A", + "$7EF2BB": "OWFLG3B", + "$7EF2BC": "OWFLG3C", + "$7EF2BD": "OWFLG3D", + "$7EF2BE": "OWFLG3E", + "$7EF2BF": "OWFLG3F", + "$7EF2C0": "OWFLG40", + "$7EF2C1": "OWFLG41", + "$7EF2C2": "OWFLG42", + "$7EF2C3": "OWFLG43", + "$7EF2C4": "OWFLG44", + "$7EF2C5": "OWFLG45", + "$7EF2C6": "OWFLG46", + "$7EF2C7": "OWFLG47", + "$7EF2C8": "OWFLG48", + "$7EF2C9": "OWFLG49", + "$7EF2CA": "OWFLG4A", + "$7EF2CB": "OWFLG4B", + "$7EF2CC": "OWFLG4C", + "$7EF2CD": "OWFLG4D", + "$7EF2CE": "OWFLG4E", + "$7EF2CF": "OWFLG4F", + "$7EF2D0": "OWFLG50", + "$7EF2D1": "OWFLG51", + "$7EF2D2": "OWFLG52", + "$7EF2D3": "OWFLG53", + "$7EF2D4": "OWFLG54", + "$7EF2D5": "OWFLG55", + "$7EF2D6": "OWFLG56", + "$7EF2D7": "OWFLG57", + "$7EF2D8": "OWFLG58", + "$7EF2D9": "OWFLG59", + "$7EF2DA": "OWFLG5A", + "$7EF2DB": "OWFLG5B", + "$7EF2DC": "OWFLG5C", + "$7EF2DD": "OWFLG5D", + "$7EF2DE": "OWFLG5E", + "$7EF2DF": "OWFLG5F", + "$7EF2E0": "OWFLG60", + "$7EF2E1": "OWFLG61", + "$7EF2E2": "OWFLG62", + "$7EF2E3": "OWFLG63", + "$7EF2E4": "OWFLG64", + "$7EF2E5": "OWFLG65", + "$7EF2E6": "OWFLG66", + "$7EF2E7": "OWFLG67", + "$7EF2E8": "OWFLG68", + "$7EF2E9": "OWFLG69", + "$7EF2EA": "OWFLG6A", + "$7EF2EB": "OWFLG6B", + "$7EF2EC": "OWFLG6C", + "$7EF2ED": "OWFLG6D", + "$7EF2EE": "OWFLG6E", + "$7EF2EF": "OWFLG6F", + "$7EF2F0": "OWFLG70", + "$7EF2F1": "OWFLG71", + "$7EF2F2": "OWFLG72", + "$7EF2F3": "OWFLG73", + "$7EF2F4": "OWFLG74", + "$7EF2F5": "OWFLG75", + "$7EF2F6": "OWFLG76", + "$7EF2F7": "OWFLG77", + "$7EF2F8": "OWFLG78", + "$7EF2F9": "OWFLG79", + "$7EF2FA": "OWFLG7A", + "$7EF2FB": "OWFLG7B", + "$7EF2FC": "OWFLG7C", + "$7EF2FD": "OWFLG7D", + "$7EF2FE": "OWFLG7E", + "$7EF2FF": "OWFLG7F", + "$7EF300": "OWFLG80", + "$7EF301": "OWFLG81", + "$7EF302": "OWFLG82", + "$7EF303": "OWFLG83", + "$7EF304": "OWFLG84", + "$7EF305": "OWFLG85", + "$7EF306": "OWFLG86", + "$7EF307": "OWFLG87", + "$7EF308": "OWFLG88", + "$7EF309": "OWFLG89", + "$7EF30A": "OWFLG8A", + "$7EF30B": "OWFLG8B", + "$7EF30C": "OWFLG8C", + "$7EF30D": "OWFLG8D", + "$7EF30E": "OWFLG8E", + "$7EF30F": "OWFLG8F", + "$7EF310": "OWFLG90", + "$7EF311": "OWFLG91", + "$7EF312": "OWFLG92", + "$7EF313": "OWFLG93", + "$7EF314": "OWFLG94", + "$7EF315": "OWFLG95", + "$7EF316": "OWFLG96", + "$7EF317": "OWFLG97", + "$7EF318": "OWFLG98", + "$7EF319": "OWFLG99", + "$7EF31A": "OWFLG9A", + "$7EF31B": "OWFLG9B", + "$7EF31C": "OWFLG9C", + "$7EF31D": "OWFLG9D", + "$7EF31E": "OWFLG9E", + "$7EF31F": "OWFLG9F", + "$002100": "INIDISP", + "$002101": "OBSEL", + "$002102": "OAMADDL", + "$002103": "OAMADDH", + "$002104": "OAMDATA", + "$002105": "BGMODE", + "$002106": "MOSAIC", + "$002107": "BG1SC", + "$002108": "BG2SC", + "$002109": "BG3SC", + "$00210A": "BG4SC", + "$00210B": "BG12NBA", + "$00210C": "BG34NBA", + "$00210D": "M7HOFS", + "$00210E": "M7VOFS", + "$00210F": "BG2HOFS", + "$002110": "BG2VOFS", + "$002111": "BG3HOFS", + "$002112": "BG3VOFS", + "$002113": "BG4HOFS", + "$002114": "BG4VOFS", + "$002115": "VMAIN", + "$002116": "VMADDL", + "$002117": "VMADDH", + "$002118": "VMDATAL", + "$002119": "VMDATAH", + "$00211A": "M7SEL", + "$00211B": "PPUMULT16", + "$00211C": "PPUMULT8", + "$00211D": "M7C", + "$00211E": "M7D", + "$00211F": "M7X", + "$002120": "M7Y", + "$002121": "CGADD", + "$002122": "CGDATA", + "$002123": "W12SEL", + "$002124": "W34SEL", + "$002125": "WOBJSEL", + "$002126": "WINDOW1L", + "$002127": "WINDOW1R", + "$002128": "WINDOW2L", + "$002129": "WINDOW2R", + "$00212A": "WBGLOG", + "$00212B": "WOBJLOG", + "$00212C": "TM", + "$00212D": "TS", + "$00212E": "TMW", + "$00212F": "TSW", + "$002130": "CGWSEL", + "$002131": "CGADSUB", + "$002132": "COLDATA", + "$002133": "SETINI", + "$002134": "MPYL", + "$002135": "MPYM", + "$002136": "MPYH", + "$002137": "SLVH", + "$002138": "OAMDATAREAD", + "$002139": "VMDATALREAD", + "$00213A": "VMDATAHREAD", + "$00213B": "CGDATAREAD", + "$00213C": "OPHCT", + "$00213D": "OPVCT", + "$00213E": "STAT77", + "$00213F": "STAT78", + "$002140": "APUIO0", + "$002141": "APUIO1", + "$002142": "APUIO2", + "$002143": "APUIO3", + "$002180": "WMDATA", + "$002181": "WMADDL", + "$002182": "WMADDH", + "$002183": "WMADDB", + "$004016": "JOYPADA", + "$004017": "JOYPADB", + "$004200": "NMITIMEN", + "$004201": "WRIO", + "$004202": "WRMPYA", + "$004203": "WRMPYB", + "$004204": "WRDIVL", + "$004205": "WRDIVH", + "$004206": "WRDIVB", + "$004207": "HTIMEL", + "$004208": "HTIMEH", + "$004209": "VTIMEL", + "$00420A": "VTIMEH", + "$00420B": "MDMAEN", + "$00420C": "HDMAEN", + "$00420D": "MEMSEL", + "$004210": "RDNMI", + "$004211": "TIMEUP", + "$004212": "HVBJOY", + "$004213": "RDIO", + "$004214": "RDDIVL", + "$004215": "RDDIVH", + "$004216": "RDMPYL", + "$004217": "RDMPYH", + "$004218": "JOY1DATA1L", + "$004219": "JOY1DATA1H", + "$00421A": "JOY2DATA1L", + "$00421B": "JOY2DATA1H", + "$00421C": "JOY1DATA2L", + "$00421D": "JOY1DATA2H", + "$00421E": "JOY2DATA2L", + "$00421F": "JOY2DATA2H", + "$004300": "HDMA0MODE", + "$004310": "HDMA1MODE", + "$004320": "HDMA2MODE", + "$004330": "HDMA3MODE", + "$004340": "HDMA4MODE", + "$004350": "HDMA5MODE", + "$004360": "HDMA6MODE", + "$004370": "HDMA7MODE", + "$004301": "DMA0PORT", + "$004311": "DMA1PORT", + "$004321": "DMA2PORT", + "$004331": "DMA3PORT", + "$004341": "DMA4PORT", + "$004351": "DMA5PORT", + "$004361": "DMA6PORT", + "$004371": "DMA7PORT", + "$004302": "HDMA0ADDRL", + "$004312": "HDMA1ADDRL", + "$004322": "HDMA2ADDRL", + "$004332": "HDMA3ADDRL", + "$004342": "HDMA4ADDRL", + "$004352": "HDMA5ADDRL", + "$004362": "HDMA6ADDRL", + "$004372": "HDMA7ADDRL", + "$004303": "HDMA0ADDRH", + "$004313": "HDMA1ADDRH", + "$004323": "HDMA2ADDRH", + "$004333": "HDMA3ADDRH", + "$004343": "HDMA4ADDRH", + "$004353": "HDMA5ADDRH", + "$004363": "HDMA6ADDRH", + "$004373": "HDMA7ADDRH", + "$004304": "HDMA0ADDRB", + "$004314": "HDMA1ADDRB", + "$004324": "HDMA2ADDRB", + "$004334": "HDMA3ADDRB", + "$004344": "HDMA4ADDRB", + "$004354": "HDMA5ADDRB", + "$004364": "HDMA6ADDRB", + "$004374": "HDMA7ADDRB", + "$004305": "HDMA0INDIRECTL", + "$004315": "HDMA1INDIRECTL", + "$004325": "HDMA2INDIRECTL", + "$004335": "HDMA3INDIRECTL", + "$004345": "HDMA4INDIRECTL", + "$004355": "HDMA5INDIRECTL", + "$004365": "HDMA6INDIRECTL", + "$004375": "HDMA7INDIRECTL", + "$004306": "HDMA0INDIRECTH", + "$004316": "HDMA1INDIRECTH", + "$004326": "HDMA2INDIRECTH", + "$004336": "HDMA3INDIRECTH", + "$004346": "HDMA4INDIRECTH", + "$004356": "HDMA5INDIRECTH", + "$004366": "HDMA6INDIRECTH", + "$004376": "HDMA7INDIRECTH", + "$004307": "HDMA0INDIRECTB", + "$004317": "HDMA1INDIRECTB", + "$004327": "HDMA2INDIRECTB", + "$004337": "HDMA3INDIRECTB", + "$004347": "HDMA4INDIRECTB", + "$004357": "HDMA5INDIRECTB", + "$004367": "HDMA6INDIRECTB", + "$004377": "HDMA7INDIRECTB", + "$004308": "HDMA0TABLEADDRL", + "$004318": "HDMA1TABLEADDRL", + "$004328": "HDMA2TABLEADDRL", + "$004338": "HDMA3TABLEADDRL", + "$004348": "HDMA4TABLEADDRL", + "$004358": "HDMA5TABLEADDRL", + "$004368": "HDMA6TABLEADDRL", + "$004378": "HDMA7TABLEADDRL", + "$004309": "HDMA0TABLEADDRH", + "$004319": "HDMA1TABLEADDRH", + "$004329": "HDMA2TABLEADDRH", + "$004339": "HDMA3TABLEADDRH", + "$004349": "HDMA4TABLEADDRH", + "$004359": "HDMA5TABLEADDRH", + "$004369": "HDMA6TABLEADDRH", + "$004379": "HDMA7TABLEADDRH", + "$00430A": "HDMA0LINECOUNT", + "$00431A": "HDMA1LINECOUNT", + "$00432A": "HDMA2LINECOUNT", + "$00433A": "HDMA3LINECOUNT", + "$00434A": "HDMA4LINECOUNT", + "$00435A": "HDMA5LINECOUNT", + "$00436A": "HDMA6LINECOUNT", + "$00437A": "HDMA7LINECOUNT" +} \ No newline at end of file diff --git a/docs/REPO_FACTS.json b/docs/REPO_FACTS.json new file mode 100644 index 0000000..05196ac --- /dev/null +++ b/docs/REPO_FACTS.json @@ -0,0 +1,18 @@ +{ + "name": "afs-scawful", + "stage": "prototype", + "is_product": false, + "commercial_intent": "none", + "verified_features": [], + "hard_no": [ + "enterprise", + "production-ready", + "platform", + "seamless", + "scalable", + "best-in-class", + "state-of-the-art", + "robust", + "official" + ] +} diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md new file mode 100644 index 0000000..2ad6584 --- /dev/null +++ b/docs/ROADMAP.md @@ -0,0 +1,13 @@ +# ROADMAP + +## Committed +- Minimal module layout + package stubs +- One small utility + +## Planned +- Local config template +- Example generator + +## Ideas +- Idea: Local validation hooks for training data +- Idea: Minimal dataset manifest generator diff --git a/docs/STATUS.md b/docs/STATUS.md new file mode 100644 index 0000000..4453bdf --- /dev/null +++ b/docs/STATUS.md @@ -0,0 +1,7 @@ +# STATUS + +Stage: Prototype +Now: package stub; guardrails; config helpers for training paths/resources. +Not yet: plugin features; generators. +Next: minimal plugin layout; one small utility. +Issues: no runtime yet. diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..0c9b87d --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,13 @@ +[project] +name = "afs_scawful" +version = "0.0.0" +description = "AFS Scawful plugin package" +requires-python = ">=3.11" +license = {text = "All rights reserved"} +authors = [ + {name = "scawful"} +] + +[build-system] +requires = ["setuptools>=68"] +build-backend = "setuptools.build_meta" diff --git a/src/afs_scawful/__init__.py b/src/afs_scawful/__init__.py new file mode 100644 index 0000000..2ca6331 --- /dev/null +++ b/src/afs_scawful/__init__.py @@ -0,0 +1,7 @@ +"""AFS Scawful package stub.""" + +__version__ = "0.0.0" + +from .config import load_training_paths, load_training_resources + +__all__ = ["load_training_paths", "load_training_resources"] diff --git a/src/afs_scawful/config.py b/src/afs_scawful/config.py new file mode 100644 index 0000000..50ee729 --- /dev/null +++ b/src/afs_scawful/config.py @@ -0,0 +1,61 @@ +"""AFS Scawful plugin config helpers.""" + +from __future__ import annotations + +import tomllib +from pathlib import Path +from typing import Any + + +def _expand_path(path: str | Path) -> Path: + return Path(path).expanduser().resolve() + + +def _default_config_dirs() -> list[Path]: + repo_root = Path(__file__).resolve().parents[2] + return [ + Path.home() / ".config" / "afs" / "afs_scawful", + Path.home() / ".config" / "afs" / "plugins" / "afs_scawful" / "config", + repo_root / "config", + ] + + +def _find_config(filename: str) -> Path | None: + for base in _default_config_dirs(): + candidate = base / filename + if candidate.exists(): + return candidate + return None + + +def _load_toml(path: Path | None) -> dict[str, Any]: + if not path or not path.exists(): + return {} + with open(path, "rb") as f: + return tomllib.load(f) + + +def load_training_paths(config_path: Path | None = None) -> dict[str, dict[str, Path]]: + path = config_path or _find_config("training_paths.toml") + data = _load_toml(path) + expanded: dict[str, dict[str, Path]] = {} + for section in ["paths", "knowledge_bases"]: + if section in data and isinstance(data[section], dict): + expanded[section] = { + key: _expand_path(value) + for key, value in data[section].items() + if isinstance(value, str) + } + return expanded + + +def load_training_resources(config_path: Path | None = None) -> dict[str, Any]: + path = config_path or _find_config("training_resources.toml") + data = _load_toml(path) + if "resource_discovery" in data and isinstance(data["resource_discovery"], dict): + resource = data["resource_discovery"] + if "resource_roots" in resource: + resource["resource_roots"] = [ + _expand_path(p) for p in resource["resource_roots"] if isinstance(p, str) + ] + return data